@itwin/components-react 4.0.0-dev.8 → 4.0.0-dev.9

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 (556) hide show
  1. package/CHANGELOG.md +1 -99
  2. package/lib/cjs/components-react/UiComponents.d.ts +1 -1
  3. package/lib/cjs/components-react/UiComponents.js +1 -1
  4. package/lib/cjs/components-react/UiComponents.js.map +1 -1
  5. package/lib/cjs/components-react/common/ImageRenderer.d.ts.map +1 -1
  6. package/lib/cjs/components-react/common/ImageRenderer.js +1 -0
  7. package/lib/cjs/components-react/common/ImageRenderer.js.map +1 -1
  8. package/lib/cjs/components-react/common/selection/SelectionModes.d.ts +2 -2
  9. package/lib/cjs/components-react/common/selection/SelectionModes.js +2 -2
  10. package/lib/cjs/components-react/common/selection/SelectionModes.js.map +1 -1
  11. package/lib/cjs/components-react/converters/TypeConverterManager.d.ts.map +1 -1
  12. package/lib/cjs/components-react/converters/TypeConverterManager.js +4 -3
  13. package/lib/cjs/components-react/converters/TypeConverterManager.js.map +1 -1
  14. package/lib/cjs/components-react/datepicker/DatePicker.d.ts.map +1 -1
  15. package/lib/cjs/components-react/datepicker/DatePicker.js +7 -0
  16. package/lib/cjs/components-react/datepicker/DatePicker.js.map +1 -1
  17. package/lib/cjs/components-react/datepicker/DatePicker.scss +27 -21
  18. package/lib/cjs/components-react/datepicker/DatePickerPopupButton.scss +2 -3
  19. package/lib/cjs/components-react/datepicker/TimeField.scss +8 -6
  20. package/lib/cjs/components-react/editors/BooleanEditor.d.ts +1 -0
  21. package/lib/cjs/components-react/editors/BooleanEditor.d.ts.map +1 -1
  22. package/lib/cjs/components-react/editors/BooleanEditor.js +9 -14
  23. package/lib/cjs/components-react/editors/BooleanEditor.js.map +1 -1
  24. package/lib/cjs/components-react/editors/BooleanEditor.scss +5 -7
  25. package/lib/cjs/components-react/editors/EditorContainer.d.ts +1 -1
  26. package/lib/cjs/components-react/editors/EditorContainer.js +1 -1
  27. package/lib/cjs/components-react/editors/EditorContainer.js.map +1 -1
  28. package/lib/cjs/components-react/editors/EnumButtonGroupEditor.scss +17 -18
  29. package/lib/cjs/components-react/editors/IconEditor.scss +3 -4
  30. package/lib/cjs/components-react/editors/ImageCheckBoxEditor.d.ts.map +1 -1
  31. package/lib/cjs/components-react/editors/ImageCheckBoxEditor.js.map +1 -1
  32. package/lib/cjs/components-react/editors/ImageCheckBoxEditor.scss +6 -5
  33. package/lib/cjs/components-react/editors/PopupButton.scss +14 -18
  34. package/lib/cjs/components-react/editors/TextareaEditor.js +1 -1
  35. package/lib/cjs/components-react/editors/TextareaEditor.js.map +1 -1
  36. package/lib/cjs/components-react/editors/ToggleEditor.d.ts.map +1 -1
  37. package/lib/cjs/components-react/editors/ToggleEditor.js +1 -9
  38. package/lib/cjs/components-react/editors/ToggleEditor.js.map +1 -1
  39. package/lib/cjs/components-react/editors/ToggleEditor.scss +4 -6
  40. package/lib/cjs/components-react/favorite/FavoritePropertiesRenderer.d.ts +25 -1
  41. package/lib/cjs/components-react/favorite/FavoritePropertiesRenderer.d.ts.map +1 -1
  42. package/lib/cjs/components-react/favorite/FavoritePropertiesRenderer.js +24 -2
  43. package/lib/cjs/components-react/favorite/FavoritePropertiesRenderer.js.map +1 -1
  44. package/lib/cjs/components-react/filter-builder/FilterBuilderRule.scss +3 -4
  45. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleGroup.js.map +1 -1
  46. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleGroup.scss +9 -6
  47. package/lib/cjs/components-react/filter-builder/FilterBuilderRuleProperty.js.map +1 -1
  48. package/lib/cjs/components-react/filtering/ResultSelector.scss +1 -1
  49. package/lib/cjs/components-react/iconpicker/IconPickerButton.d.ts +2 -2
  50. package/lib/cjs/components-react/iconpicker/IconPickerButton.d.ts.map +1 -1
  51. package/lib/cjs/components-react/iconpicker/IconPickerButton.js +4 -4
  52. package/lib/cjs/components-react/iconpicker/IconPickerButton.js.map +1 -1
  53. package/lib/cjs/components-react/iconpicker/IconPickerButton.scss +5 -5
  54. package/lib/cjs/components-react/properties/ItemStyle.d.ts +2 -2
  55. package/lib/cjs/components-react/properties/ItemStyle.js +1 -1
  56. package/lib/cjs/components-react/properties/ItemStyle.js.map +1 -1
  57. package/lib/cjs/components-react/properties/renderers/NonPrimitivePropertyRenderer.js +1 -1
  58. package/lib/cjs/components-react/properties/renderers/NonPrimitivePropertyRenderer.js.map +1 -1
  59. package/lib/cjs/components-react/properties/renderers/NonPrimitivePropertyRenderer.scss +2 -2
  60. package/lib/cjs/components-react/properties/renderers/PrimitivePropertyRenderer.js +1 -1
  61. package/lib/cjs/components-react/properties/renderers/PrimitivePropertyRenderer.js.map +1 -1
  62. package/lib/cjs/components-react/properties/renderers/PropertyRenderer.js +1 -1
  63. package/lib/cjs/components-react/properties/renderers/PropertyRenderer.js.map +1 -1
  64. package/lib/cjs/components-react/properties/renderers/PropertyView.scss +4 -5
  65. package/lib/cjs/components-react/properties/renderers/label/PropertyLabelRenderer.scss +6 -6
  66. package/lib/cjs/components-react/properties/renderers/value/MultilineTextPropertyValueRenderer.d.ts +2 -0
  67. package/lib/cjs/components-react/properties/renderers/value/MultilineTextPropertyValueRenderer.d.ts.map +1 -1
  68. package/lib/cjs/components-react/properties/renderers/value/MultilineTextPropertyValueRenderer.js.map +1 -1
  69. package/lib/cjs/components-react/properties/renderers/value/table/NonPrimitiveValueRenderer.d.ts +0 -1
  70. package/lib/cjs/components-react/properties/renderers/value/table/NonPrimitiveValueRenderer.d.ts.map +1 -1
  71. package/lib/cjs/components-react/properties/renderers/value/table/NonPrimitiveValueRenderer.js +0 -1
  72. package/lib/cjs/components-react/properties/renderers/value/table/NonPrimitiveValueRenderer.js.map +1 -1
  73. package/lib/cjs/components-react/propertygrid/component/PropertyCategoryBlock.d.ts +2 -0
  74. package/lib/cjs/components-react/propertygrid/component/PropertyCategoryBlock.d.ts.map +1 -1
  75. package/lib/cjs/components-react/propertygrid/component/PropertyCategoryBlock.js.map +1 -1
  76. package/lib/cjs/components-react/propertygrid/component/PropertyGrid.d.ts +0 -9
  77. package/lib/cjs/components-react/propertygrid/component/PropertyGrid.d.ts.map +1 -1
  78. package/lib/cjs/components-react/propertygrid/component/PropertyGrid.js.map +1 -1
  79. package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGrid.scss +2 -2
  80. package/lib/cjs/components-react/propertygrid/internal/flat-items/FlatGridItem.d.ts +0 -4
  81. package/lib/cjs/components-react/propertygrid/internal/flat-items/FlatGridItem.d.ts.map +1 -1
  82. package/lib/cjs/components-react/propertygrid/internal/flat-items/FlatGridItem.js.map +1 -1
  83. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCustomGridCategory.d.ts +0 -2
  84. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCustomGridCategory.d.ts.map +1 -1
  85. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCustomGridCategory.js +0 -6
  86. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCustomGridCategory.js.map +1 -1
  87. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.d.ts +0 -8
  88. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.d.ts.map +1 -1
  89. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.js.map +1 -1
  90. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableGridCategory.d.ts +0 -6
  91. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableGridCategory.d.ts.map +1 -1
  92. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableGridCategory.js +2 -14
  93. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableGridCategory.js.map +1 -1
  94. package/lib/cjs/components-react/propertygrid/internal/flat-properties/FlatNonPrimitivePropertyRenderer.js +1 -1
  95. package/lib/cjs/components-react/propertygrid/internal/flat-properties/FlatNonPrimitivePropertyRenderer.js.map +1 -1
  96. package/lib/cjs/components-react/selectable-content/SelectableContent.scss +0 -1
  97. package/lib/cjs/components-react/table/TableDataProvider.d.ts +2 -158
  98. package/lib/cjs/components-react/table/TableDataProvider.d.ts.map +1 -1
  99. package/lib/cjs/components-react/table/TableDataProvider.js +2 -17
  100. package/lib/cjs/components-react/table/TableDataProvider.js.map +1 -1
  101. package/lib/cjs/components-react/toolbar/Items.scss +12 -10
  102. package/lib/cjs/components-react/toolbar/Overflow.scss +5 -5
  103. package/lib/cjs/components-react/toolbar/OverflowPanel.scss +5 -5
  104. package/lib/cjs/components-react/toolbar/PopupItem.scss +14 -12
  105. package/lib/cjs/components-react/toolbar/ToolbarWithOverflow.d.ts +0 -17
  106. package/lib/cjs/components-react/toolbar/ToolbarWithOverflow.d.ts.map +1 -1
  107. package/lib/cjs/components-react/toolbar/ToolbarWithOverflow.js +3 -13
  108. package/lib/cjs/components-react/toolbar/ToolbarWithOverflow.js.map +1 -1
  109. package/lib/cjs/components-react/toolbar/_variables.scss +2 -3
  110. package/lib/cjs/components-react/toolbar/groupPanel/Panel.scss +1 -1
  111. package/lib/cjs/components-react/toolbar/groupPanel/tool/Tool.scss +10 -11
  112. package/lib/cjs/components-react/tree/ImageLoader.d.ts +1 -1
  113. package/lib/cjs/components-react/tree/ImageLoader.d.ts.map +1 -1
  114. package/lib/cjs/components-react/tree/ImageLoader.js +1 -1
  115. package/lib/cjs/components-react/tree/ImageLoader.js.map +1 -1
  116. package/lib/cjs/components-react/tree/SimpleTreeDataProvider.d.ts +1 -3
  117. package/lib/cjs/components-react/tree/SimpleTreeDataProvider.d.ts.map +1 -1
  118. package/lib/cjs/components-react/tree/SimpleTreeDataProvider.js +0 -2
  119. package/lib/cjs/components-react/tree/SimpleTreeDataProvider.js.map +1 -1
  120. package/lib/cjs/components-react/tree/TreeDataProvider.d.ts +1 -22
  121. package/lib/cjs/components-react/tree/TreeDataProvider.d.ts.map +1 -1
  122. package/lib/cjs/components-react/tree/TreeDataProvider.js +1 -0
  123. package/lib/cjs/components-react/tree/TreeDataProvider.js.map +1 -1
  124. package/lib/cjs/components-react/tree/controlled/Observable.d.ts +12 -2
  125. package/lib/cjs/components-react/tree/controlled/Observable.d.ts.map +1 -1
  126. package/lib/cjs/components-react/tree/controlled/Observable.js.map +1 -1
  127. package/lib/cjs/components-react/tree/controlled/TreeHooks.d.ts.map +1 -1
  128. package/lib/cjs/components-react/tree/controlled/TreeHooks.js +2 -4
  129. package/lib/cjs/components-react/tree/controlled/TreeHooks.js.map +1 -1
  130. package/lib/cjs/components-react/tree/controlled/TreeModel.d.ts +1 -1
  131. package/lib/cjs/components-react/tree/controlled/TreeModel.js +1 -1
  132. package/lib/cjs/components-react/tree/controlled/TreeModel.js.map +1 -1
  133. package/lib/cjs/components-react/tree/controlled/TreeNodeLoader.d.ts +4 -12
  134. package/lib/cjs/components-react/tree/controlled/TreeNodeLoader.d.ts.map +1 -1
  135. package/lib/cjs/components-react/tree/controlled/TreeNodeLoader.js +0 -14
  136. package/lib/cjs/components-react/tree/controlled/TreeNodeLoader.js.map +1 -1
  137. package/lib/cjs/components-react/tree/controlled/component/ControlledTree.d.ts.map +1 -1
  138. package/lib/cjs/components-react/tree/controlled/component/ControlledTree.js +1 -2
  139. package/lib/cjs/components-react/tree/controlled/component/ControlledTree.js.map +1 -1
  140. package/lib/cjs/components-react/tree/controlled/component/NodeContent.d.ts.map +1 -1
  141. package/lib/cjs/components-react/tree/controlled/component/NodeContent.js +5 -4
  142. package/lib/cjs/components-react/tree/controlled/component/NodeContent.js.map +1 -1
  143. package/lib/cjs/components-react/tree/controlled/component/NodeContent.scss +3 -4
  144. package/lib/cjs/components-react.d.ts +5 -16
  145. package/lib/cjs/components-react.d.ts.map +1 -1
  146. package/lib/cjs/components-react.js +6 -16
  147. package/lib/cjs/components-react.js.map +1 -1
  148. package/lib/esm/components-react/UiComponents.d.ts +1 -1
  149. package/lib/esm/components-react/UiComponents.js +1 -1
  150. package/lib/esm/components-react/UiComponents.js.map +1 -1
  151. package/lib/esm/components-react/common/ImageRenderer.d.ts.map +1 -1
  152. package/lib/esm/components-react/common/ImageRenderer.js +1 -0
  153. package/lib/esm/components-react/common/ImageRenderer.js.map +1 -1
  154. package/lib/esm/components-react/common/selection/SelectionModes.d.ts +2 -2
  155. package/lib/esm/components-react/common/selection/SelectionModes.js +2 -2
  156. package/lib/esm/components-react/common/selection/SelectionModes.js.map +1 -1
  157. package/lib/esm/components-react/converters/TypeConverterManager.d.ts.map +1 -1
  158. package/lib/esm/components-react/converters/TypeConverterManager.js +4 -3
  159. package/lib/esm/components-react/converters/TypeConverterManager.js.map +1 -1
  160. package/lib/esm/components-react/datepicker/DatePicker.d.ts.map +1 -1
  161. package/lib/esm/components-react/datepicker/DatePicker.js +7 -0
  162. package/lib/esm/components-react/datepicker/DatePicker.js.map +1 -1
  163. package/lib/esm/components-react/datepicker/DatePicker.scss +27 -21
  164. package/lib/esm/components-react/datepicker/DatePickerPopupButton.scss +2 -3
  165. package/lib/esm/components-react/datepicker/TimeField.scss +8 -6
  166. package/lib/esm/components-react/editors/BooleanEditor.d.ts +1 -0
  167. package/lib/esm/components-react/editors/BooleanEditor.d.ts.map +1 -1
  168. package/lib/esm/components-react/editors/BooleanEditor.js +9 -14
  169. package/lib/esm/components-react/editors/BooleanEditor.js.map +1 -1
  170. package/lib/esm/components-react/editors/BooleanEditor.scss +5 -7
  171. package/lib/esm/components-react/editors/EditorContainer.d.ts +1 -1
  172. package/lib/esm/components-react/editors/EditorContainer.js +1 -1
  173. package/lib/esm/components-react/editors/EditorContainer.js.map +1 -1
  174. package/lib/esm/components-react/editors/EnumButtonGroupEditor.scss +17 -18
  175. package/lib/esm/components-react/editors/IconEditor.scss +3 -4
  176. package/lib/esm/components-react/editors/ImageCheckBoxEditor.d.ts.map +1 -1
  177. package/lib/esm/components-react/editors/ImageCheckBoxEditor.js.map +1 -1
  178. package/lib/esm/components-react/editors/ImageCheckBoxEditor.scss +6 -5
  179. package/lib/esm/components-react/editors/PopupButton.scss +14 -18
  180. package/lib/esm/components-react/editors/TextareaEditor.js +1 -1
  181. package/lib/esm/components-react/editors/TextareaEditor.js.map +1 -1
  182. package/lib/esm/components-react/editors/ToggleEditor.d.ts.map +1 -1
  183. package/lib/esm/components-react/editors/ToggleEditor.js +1 -9
  184. package/lib/esm/components-react/editors/ToggleEditor.js.map +1 -1
  185. package/lib/esm/components-react/editors/ToggleEditor.scss +4 -6
  186. package/lib/esm/components-react/favorite/FavoritePropertiesRenderer.d.ts +25 -1
  187. package/lib/esm/components-react/favorite/FavoritePropertiesRenderer.d.ts.map +1 -1
  188. package/lib/esm/components-react/favorite/FavoritePropertiesRenderer.js +24 -2
  189. package/lib/esm/components-react/favorite/FavoritePropertiesRenderer.js.map +1 -1
  190. package/lib/esm/components-react/filter-builder/FilterBuilderRule.scss +3 -4
  191. package/lib/esm/components-react/filter-builder/FilterBuilderRuleGroup.js.map +1 -1
  192. package/lib/esm/components-react/filter-builder/FilterBuilderRuleGroup.scss +9 -6
  193. package/lib/esm/components-react/filter-builder/FilterBuilderRuleProperty.js.map +1 -1
  194. package/lib/esm/components-react/filtering/ResultSelector.scss +1 -1
  195. package/lib/esm/components-react/iconpicker/IconPickerButton.d.ts +2 -2
  196. package/lib/esm/components-react/iconpicker/IconPickerButton.d.ts.map +1 -1
  197. package/lib/esm/components-react/iconpicker/IconPickerButton.js +5 -5
  198. package/lib/esm/components-react/iconpicker/IconPickerButton.js.map +1 -1
  199. package/lib/esm/components-react/iconpicker/IconPickerButton.scss +5 -5
  200. package/lib/esm/components-react/properties/ItemStyle.d.ts +2 -2
  201. package/lib/esm/components-react/properties/ItemStyle.js +1 -1
  202. package/lib/esm/components-react/properties/ItemStyle.js.map +1 -1
  203. package/lib/esm/components-react/properties/renderers/NonPrimitivePropertyRenderer.js +1 -1
  204. package/lib/esm/components-react/properties/renderers/NonPrimitivePropertyRenderer.js.map +1 -1
  205. package/lib/esm/components-react/properties/renderers/NonPrimitivePropertyRenderer.scss +2 -2
  206. package/lib/esm/components-react/properties/renderers/PrimitivePropertyRenderer.js +1 -1
  207. package/lib/esm/components-react/properties/renderers/PrimitivePropertyRenderer.js.map +1 -1
  208. package/lib/esm/components-react/properties/renderers/PropertyRenderer.js +1 -1
  209. package/lib/esm/components-react/properties/renderers/PropertyRenderer.js.map +1 -1
  210. package/lib/esm/components-react/properties/renderers/PropertyView.scss +4 -5
  211. package/lib/esm/components-react/properties/renderers/label/PropertyLabelRenderer.scss +6 -6
  212. package/lib/esm/components-react/properties/renderers/value/MultilineTextPropertyValueRenderer.d.ts +2 -0
  213. package/lib/esm/components-react/properties/renderers/value/MultilineTextPropertyValueRenderer.d.ts.map +1 -1
  214. package/lib/esm/components-react/properties/renderers/value/MultilineTextPropertyValueRenderer.js.map +1 -1
  215. package/lib/esm/components-react/properties/renderers/value/table/NonPrimitiveValueRenderer.d.ts +0 -1
  216. package/lib/esm/components-react/properties/renderers/value/table/NonPrimitiveValueRenderer.d.ts.map +1 -1
  217. package/lib/esm/components-react/properties/renderers/value/table/NonPrimitiveValueRenderer.js +0 -1
  218. package/lib/esm/components-react/properties/renderers/value/table/NonPrimitiveValueRenderer.js.map +1 -1
  219. package/lib/esm/components-react/propertygrid/component/PropertyCategoryBlock.d.ts +2 -0
  220. package/lib/esm/components-react/propertygrid/component/PropertyCategoryBlock.d.ts.map +1 -1
  221. package/lib/esm/components-react/propertygrid/component/PropertyCategoryBlock.js.map +1 -1
  222. package/lib/esm/components-react/propertygrid/component/PropertyGrid.d.ts +0 -9
  223. package/lib/esm/components-react/propertygrid/component/PropertyGrid.d.ts.map +1 -1
  224. package/lib/esm/components-react/propertygrid/component/PropertyGrid.js.map +1 -1
  225. package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGrid.scss +2 -2
  226. package/lib/esm/components-react/propertygrid/internal/flat-items/FlatGridItem.d.ts +0 -4
  227. package/lib/esm/components-react/propertygrid/internal/flat-items/FlatGridItem.d.ts.map +1 -1
  228. package/lib/esm/components-react/propertygrid/internal/flat-items/FlatGridItem.js.map +1 -1
  229. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCustomGridCategory.d.ts +0 -2
  230. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCustomGridCategory.d.ts.map +1 -1
  231. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCustomGridCategory.js +0 -6
  232. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCustomGridCategory.js.map +1 -1
  233. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.d.ts +0 -8
  234. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.d.ts.map +1 -1
  235. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.js.map +1 -1
  236. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableGridCategory.d.ts +0 -6
  237. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableGridCategory.d.ts.map +1 -1
  238. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableGridCategory.js +2 -14
  239. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableGridCategory.js.map +1 -1
  240. package/lib/esm/components-react/propertygrid/internal/flat-properties/FlatNonPrimitivePropertyRenderer.js +1 -1
  241. package/lib/esm/components-react/propertygrid/internal/flat-properties/FlatNonPrimitivePropertyRenderer.js.map +1 -1
  242. package/lib/esm/components-react/selectable-content/SelectableContent.scss +0 -1
  243. package/lib/esm/components-react/table/TableDataProvider.d.ts +2 -158
  244. package/lib/esm/components-react/table/TableDataProvider.d.ts.map +1 -1
  245. package/lib/esm/components-react/table/TableDataProvider.js +1 -16
  246. package/lib/esm/components-react/table/TableDataProvider.js.map +1 -1
  247. package/lib/esm/components-react/toolbar/Items.scss +12 -10
  248. package/lib/esm/components-react/toolbar/Overflow.scss +5 -5
  249. package/lib/esm/components-react/toolbar/OverflowPanel.scss +5 -5
  250. package/lib/esm/components-react/toolbar/PopupItem.scss +14 -12
  251. package/lib/esm/components-react/toolbar/ToolbarWithOverflow.d.ts +0 -17
  252. package/lib/esm/components-react/toolbar/ToolbarWithOverflow.d.ts.map +1 -1
  253. package/lib/esm/components-react/toolbar/ToolbarWithOverflow.js +5 -12
  254. package/lib/esm/components-react/toolbar/ToolbarWithOverflow.js.map +1 -1
  255. package/lib/esm/components-react/toolbar/_variables.scss +2 -3
  256. package/lib/esm/components-react/toolbar/groupPanel/Panel.scss +1 -1
  257. package/lib/esm/components-react/toolbar/groupPanel/tool/Tool.scss +10 -11
  258. package/lib/esm/components-react/tree/ImageLoader.d.ts +1 -1
  259. package/lib/esm/components-react/tree/ImageLoader.d.ts.map +1 -1
  260. package/lib/esm/components-react/tree/ImageLoader.js +1 -1
  261. package/lib/esm/components-react/tree/ImageLoader.js.map +1 -1
  262. package/lib/esm/components-react/tree/SimpleTreeDataProvider.d.ts +1 -3
  263. package/lib/esm/components-react/tree/SimpleTreeDataProvider.d.ts.map +1 -1
  264. package/lib/esm/components-react/tree/SimpleTreeDataProvider.js +0 -2
  265. package/lib/esm/components-react/tree/SimpleTreeDataProvider.js.map +1 -1
  266. package/lib/esm/components-react/tree/TreeDataProvider.d.ts +1 -22
  267. package/lib/esm/components-react/tree/TreeDataProvider.d.ts.map +1 -1
  268. package/lib/esm/components-react/tree/TreeDataProvider.js +1 -0
  269. package/lib/esm/components-react/tree/TreeDataProvider.js.map +1 -1
  270. package/lib/esm/components-react/tree/controlled/Observable.d.ts +12 -2
  271. package/lib/esm/components-react/tree/controlled/Observable.d.ts.map +1 -1
  272. package/lib/esm/components-react/tree/controlled/Observable.js.map +1 -1
  273. package/lib/esm/components-react/tree/controlled/TreeHooks.d.ts.map +1 -1
  274. package/lib/esm/components-react/tree/controlled/TreeHooks.js +2 -4
  275. package/lib/esm/components-react/tree/controlled/TreeHooks.js.map +1 -1
  276. package/lib/esm/components-react/tree/controlled/TreeModel.d.ts +1 -1
  277. package/lib/esm/components-react/tree/controlled/TreeModel.js +1 -1
  278. package/lib/esm/components-react/tree/controlled/TreeModel.js.map +1 -1
  279. package/lib/esm/components-react/tree/controlled/TreeNodeLoader.d.ts +4 -12
  280. package/lib/esm/components-react/tree/controlled/TreeNodeLoader.d.ts.map +1 -1
  281. package/lib/esm/components-react/tree/controlled/TreeNodeLoader.js +0 -14
  282. package/lib/esm/components-react/tree/controlled/TreeNodeLoader.js.map +1 -1
  283. package/lib/esm/components-react/tree/controlled/component/ControlledTree.d.ts.map +1 -1
  284. package/lib/esm/components-react/tree/controlled/component/ControlledTree.js +1 -2
  285. package/lib/esm/components-react/tree/controlled/component/ControlledTree.js.map +1 -1
  286. package/lib/esm/components-react/tree/controlled/component/NodeContent.d.ts.map +1 -1
  287. package/lib/esm/components-react/tree/controlled/component/NodeContent.js +5 -4
  288. package/lib/esm/components-react/tree/controlled/component/NodeContent.js.map +1 -1
  289. package/lib/esm/components-react/tree/controlled/component/NodeContent.scss +3 -4
  290. package/lib/esm/components-react.d.ts +5 -16
  291. package/lib/esm/components-react.d.ts.map +1 -1
  292. package/lib/esm/components-react.js +6 -16
  293. package/lib/esm/components-react.js.map +1 -1
  294. package/package.json +21 -36
  295. package/lib/cjs/components-react/breadcrumb/BeInspireTree.d.ts +0 -263
  296. package/lib/cjs/components-react/breadcrumb/BeInspireTree.d.ts.map +0 -1
  297. package/lib/cjs/components-react/breadcrumb/BeInspireTree.js +0 -902
  298. package/lib/cjs/components-react/breadcrumb/BeInspireTree.js.map +0 -1
  299. package/lib/cjs/components-react/breadcrumb/Breadcrumb.d.ts +0 -198
  300. package/lib/cjs/components-react/breadcrumb/Breadcrumb.d.ts.map +0 -1
  301. package/lib/cjs/components-react/breadcrumb/Breadcrumb.js +0 -652
  302. package/lib/cjs/components-react/breadcrumb/Breadcrumb.js.map +0 -1
  303. package/lib/cjs/components-react/breadcrumb/Breadcrumb.scss +0 -197
  304. package/lib/cjs/components-react/breadcrumb/BreadcrumbDetails.d.ts +0 -66
  305. package/lib/cjs/components-react/breadcrumb/BreadcrumbDetails.d.ts.map +0 -1
  306. package/lib/cjs/components-react/breadcrumb/BreadcrumbDetails.js +0 -232
  307. package/lib/cjs/components-react/breadcrumb/BreadcrumbDetails.js.map +0 -1
  308. package/lib/cjs/components-react/breadcrumb/BreadcrumbPath.d.ts +0 -36
  309. package/lib/cjs/components-react/breadcrumb/BreadcrumbPath.d.ts.map +0 -1
  310. package/lib/cjs/components-react/breadcrumb/BreadcrumbPath.js +0 -47
  311. package/lib/cjs/components-react/breadcrumb/BreadcrumbPath.js.map +0 -1
  312. package/lib/cjs/components-react/breadcrumb/BreadcrumbTreeUtils.d.ts +0 -30
  313. package/lib/cjs/components-react/breadcrumb/BreadcrumbTreeUtils.d.ts.map +0 -1
  314. package/lib/cjs/components-react/breadcrumb/BreadcrumbTreeUtils.js +0 -136
  315. package/lib/cjs/components-react/breadcrumb/BreadcrumbTreeUtils.js.map +0 -1
  316. package/lib/cjs/components-react/common/showhide/ShowHideDialog.d.ts +0 -39
  317. package/lib/cjs/components-react/common/showhide/ShowHideDialog.d.ts.map +0 -1
  318. package/lib/cjs/components-react/common/showhide/ShowHideDialog.js +0 -91
  319. package/lib/cjs/components-react/common/showhide/ShowHideDialog.js.map +0 -1
  320. package/lib/cjs/components-react/common/showhide/ShowHideItem.d.ts +0 -15
  321. package/lib/cjs/components-react/common/showhide/ShowHideItem.d.ts.map +0 -1
  322. package/lib/cjs/components-react/common/showhide/ShowHideItem.js +0 -10
  323. package/lib/cjs/components-react/common/showhide/ShowHideItem.js.map +0 -1
  324. package/lib/cjs/components-react/common/showhide/ShowHideMenu.d.ts +0 -54
  325. package/lib/cjs/components-react/common/showhide/ShowHideMenu.d.ts.map +0 -1
  326. package/lib/cjs/components-react/common/showhide/ShowHideMenu.js +0 -124
  327. package/lib/cjs/components-react/common/showhide/ShowHideMenu.js.map +0 -1
  328. package/lib/cjs/components-react/editors/ThemedEnumEditor.d.ts +0 -63
  329. package/lib/cjs/components-react/editors/ThemedEnumEditor.d.ts.map +0 -1
  330. package/lib/cjs/components-react/editors/ThemedEnumEditor.js +0 -207
  331. package/lib/cjs/components-react/editors/ThemedEnumEditor.js.map +0 -1
  332. package/lib/cjs/components-react/editors/ThemedEnumEditor.scss +0 -83
  333. package/lib/cjs/components-react/properties/renderers/value/table/NonPrimitiveValueRenderer.scss +0 -11
  334. package/lib/cjs/components-react/table/SimpleTableDataProvider.d.ts +0 -58
  335. package/lib/cjs/components-react/table/SimpleTableDataProvider.d.ts.map +0 -1
  336. package/lib/cjs/components-react/table/SimpleTableDataProvider.js +0 -255
  337. package/lib/cjs/components-react/table/SimpleTableDataProvider.js.map +0 -1
  338. package/lib/cjs/components-react/table/columnfiltering/ColumnFiltering.d.ts +0 -242
  339. package/lib/cjs/components-react/table/columnfiltering/ColumnFiltering.d.ts.map +0 -1
  340. package/lib/cjs/components-react/table/columnfiltering/ColumnFiltering.js +0 -115
  341. package/lib/cjs/components-react/table/columnfiltering/ColumnFiltering.js.map +0 -1
  342. package/lib/cjs/components-react/table/columnfiltering/ColumnFiltering.scss +0 -79
  343. package/lib/cjs/components-react/table/columnfiltering/ColumnFilteringUtilities.d.ts +0 -14
  344. package/lib/cjs/components-react/table/columnfiltering/ColumnFilteringUtilities.d.ts.map +0 -1
  345. package/lib/cjs/components-react/table/columnfiltering/ColumnFilteringUtilities.js +0 -37
  346. package/lib/cjs/components-react/table/columnfiltering/ColumnFilteringUtilities.js.map +0 -1
  347. package/lib/cjs/components-react/table/columnfiltering/DataGridFilterParser.d.ts +0 -88
  348. package/lib/cjs/components-react/table/columnfiltering/DataGridFilterParser.d.ts.map +0 -1
  349. package/lib/cjs/components-react/table/columnfiltering/DataGridFilterParser.js +0 -193
  350. package/lib/cjs/components-react/table/columnfiltering/DataGridFilterParser.js.map +0 -1
  351. package/lib/cjs/components-react/table/columnfiltering/FilterableColumnBase.d.ts +0 -58
  352. package/lib/cjs/components-react/table/columnfiltering/FilterableColumnBase.d.ts.map +0 -1
  353. package/lib/cjs/components-react/table/columnfiltering/FilterableColumnBase.js +0 -104
  354. package/lib/cjs/components-react/table/columnfiltering/FilterableColumnBase.js.map +0 -1
  355. package/lib/cjs/components-react/table/columnfiltering/TableColumnFilterDescriptor.d.ts +0 -57
  356. package/lib/cjs/components-react/table/columnfiltering/TableColumnFilterDescriptor.d.ts.map +0 -1
  357. package/lib/cjs/components-react/table/columnfiltering/TableColumnFilterDescriptor.js +0 -364
  358. package/lib/cjs/components-react/table/columnfiltering/TableColumnFilterDescriptor.js.map +0 -1
  359. package/lib/cjs/components-react/table/columnfiltering/TableFilterDescriptor.d.ts +0 -86
  360. package/lib/cjs/components-react/table/columnfiltering/TableFilterDescriptor.d.ts.map +0 -1
  361. package/lib/cjs/components-react/table/columnfiltering/TableFilterDescriptor.js +0 -404
  362. package/lib/cjs/components-react/table/columnfiltering/TableFilterDescriptor.js.map +0 -1
  363. package/lib/cjs/components-react/table/columnfiltering/TableFilterDescriptorCollection.d.ts +0 -29
  364. package/lib/cjs/components-react/table/columnfiltering/TableFilterDescriptorCollection.d.ts.map +0 -1
  365. package/lib/cjs/components-react/table/columnfiltering/TableFilterDescriptorCollection.js +0 -88
  366. package/lib/cjs/components-react/table/columnfiltering/TableFilterDescriptorCollection.js.map +0 -1
  367. package/lib/cjs/components-react/table/columnfiltering/data-grid-addons/AutoCompleteFilter.d.ts +0 -29
  368. package/lib/cjs/components-react/table/columnfiltering/data-grid-addons/AutoCompleteFilter.d.ts.map +0 -1
  369. package/lib/cjs/components-react/table/columnfiltering/data-grid-addons/AutoCompleteFilter.js +0 -75
  370. package/lib/cjs/components-react/table/columnfiltering/data-grid-addons/AutoCompleteFilter.js.map +0 -1
  371. package/lib/cjs/components-react/table/columnfiltering/data-grid-addons/MultiSelectFilter.d.ts +0 -5
  372. package/lib/cjs/components-react/table/columnfiltering/data-grid-addons/MultiSelectFilter.d.ts.map +0 -1
  373. package/lib/cjs/components-react/table/columnfiltering/data-grid-addons/MultiSelectFilter.js +0 -23
  374. package/lib/cjs/components-react/table/columnfiltering/data-grid-addons/MultiSelectFilter.js.map +0 -1
  375. package/lib/cjs/components-react/table/columnfiltering/data-grid-addons/NumericFilter.d.ts +0 -22
  376. package/lib/cjs/components-react/table/columnfiltering/data-grid-addons/NumericFilter.d.ts.map +0 -1
  377. package/lib/cjs/components-react/table/columnfiltering/data-grid-addons/NumericFilter.js +0 -88
  378. package/lib/cjs/components-react/table/columnfiltering/data-grid-addons/NumericFilter.js.map +0 -1
  379. package/lib/cjs/components-react/table/columnfiltering/data-grid-addons/SingleSelectFilter.d.ts +0 -5
  380. package/lib/cjs/components-react/table/columnfiltering/data-grid-addons/SingleSelectFilter.d.ts.map +0 -1
  381. package/lib/cjs/components-react/table/columnfiltering/data-grid-addons/SingleSelectFilter.js +0 -23
  382. package/lib/cjs/components-react/table/columnfiltering/data-grid-addons/SingleSelectFilter.js.map +0 -1
  383. package/lib/cjs/components-react/table/columnfiltering/multi-value-filter/MultiValueFilter.d.ts +0 -19
  384. package/lib/cjs/components-react/table/columnfiltering/multi-value-filter/MultiValueFilter.d.ts.map +0 -1
  385. package/lib/cjs/components-react/table/columnfiltering/multi-value-filter/MultiValueFilter.js +0 -184
  386. package/lib/cjs/components-react/table/columnfiltering/multi-value-filter/MultiValueFilter.js.map +0 -1
  387. package/lib/cjs/components-react/table/columnfiltering/multi-value-filter/MultiValueFilter.scss +0 -36
  388. package/lib/cjs/components-react/table/component/ColumnDragLayer.d.ts +0 -15
  389. package/lib/cjs/components-react/table/component/ColumnDragLayer.d.ts.map +0 -1
  390. package/lib/cjs/components-react/table/component/ColumnDragLayer.js +0 -66
  391. package/lib/cjs/components-react/table/component/ColumnDragLayer.js.map +0 -1
  392. package/lib/cjs/components-react/table/component/DragDropHeaderCell.d.ts +0 -27
  393. package/lib/cjs/components-react/table/component/DragDropHeaderCell.d.ts.map +0 -1
  394. package/lib/cjs/components-react/table/component/DragDropHeaderCell.js +0 -102
  395. package/lib/cjs/components-react/table/component/DragDropHeaderCell.js.map +0 -1
  396. package/lib/cjs/components-react/table/component/Table.d.ts +0 -308
  397. package/lib/cjs/components-react/table/component/Table.d.ts.map +0 -1
  398. package/lib/cjs/components-react/table/component/Table.js +0 -1335
  399. package/lib/cjs/components-react/table/component/Table.js.map +0 -1
  400. package/lib/cjs/components-react/table/component/Table.scss +0 -201
  401. package/lib/cjs/components-react/table/component/TableCell.d.ts +0 -101
  402. package/lib/cjs/components-react/table/component/TableCell.d.ts.map +0 -1
  403. package/lib/cjs/components-react/table/component/TableCell.js +0 -137
  404. package/lib/cjs/components-react/table/component/TableCell.js.map +0 -1
  405. package/lib/cjs/components-react/table/component/TableCell.scss +0 -49
  406. package/lib/cjs/components-react/table/component/TableColumn.d.ts +0 -31
  407. package/lib/cjs/components-react/table/component/TableColumn.d.ts.map +0 -1
  408. package/lib/cjs/components-react/table/component/TableColumn.js +0 -33
  409. package/lib/cjs/components-react/table/component/TableColumn.js.map +0 -1
  410. package/lib/cjs/components-react/table/component/dragdrop/BeDragDropContext.d.ts +0 -13
  411. package/lib/cjs/components-react/table/component/dragdrop/BeDragDropContext.d.ts.map +0 -1
  412. package/lib/cjs/components-react/table/component/dragdrop/BeDragDropContext.js +0 -42
  413. package/lib/cjs/components-react/table/component/dragdrop/BeDragDropContext.js.map +0 -1
  414. package/lib/cjs/components-react/table/component/dragdrop/DragDropDef.d.ts +0 -155
  415. package/lib/cjs/components-react/table/component/dragdrop/DragDropDef.d.ts.map +0 -1
  416. package/lib/cjs/components-react/table/component/dragdrop/DragDropDef.js +0 -33
  417. package/lib/cjs/components-react/table/component/dragdrop/DragDropDef.js.map +0 -1
  418. package/lib/cjs/components-react/table/component/dragdrop/withDragSource.d.ts +0 -42
  419. package/lib/cjs/components-react/table/component/dragdrop/withDragSource.d.ts.map +0 -1
  420. package/lib/cjs/components-react/table/component/dragdrop/withDragSource.js +0 -189
  421. package/lib/cjs/components-react/table/component/dragdrop/withDragSource.js.map +0 -1
  422. package/lib/cjs/components-react/table/component/dragdrop/withDropTarget.d.ts +0 -36
  423. package/lib/cjs/components-react/table/component/dragdrop/withDropTarget.d.ts.map +0 -1
  424. package/lib/cjs/components-react/table/component/dragdrop/withDropTarget.js +0 -150
  425. package/lib/cjs/components-react/table/component/dragdrop/withDropTarget.js.map +0 -1
  426. package/lib/esm/components-react/breadcrumb/BeInspireTree.d.ts +0 -263
  427. package/lib/esm/components-react/breadcrumb/BeInspireTree.d.ts.map +0 -1
  428. package/lib/esm/components-react/breadcrumb/BeInspireTree.js +0 -892
  429. package/lib/esm/components-react/breadcrumb/BeInspireTree.js.map +0 -1
  430. package/lib/esm/components-react/breadcrumb/Breadcrumb.d.ts +0 -198
  431. package/lib/esm/components-react/breadcrumb/Breadcrumb.d.ts.map +0 -1
  432. package/lib/esm/components-react/breadcrumb/Breadcrumb.js +0 -623
  433. package/lib/esm/components-react/breadcrumb/Breadcrumb.js.map +0 -1
  434. package/lib/esm/components-react/breadcrumb/Breadcrumb.scss +0 -197
  435. package/lib/esm/components-react/breadcrumb/BreadcrumbDetails.d.ts +0 -66
  436. package/lib/esm/components-react/breadcrumb/BreadcrumbDetails.d.ts.map +0 -1
  437. package/lib/esm/components-react/breadcrumb/BreadcrumbDetails.js +0 -206
  438. package/lib/esm/components-react/breadcrumb/BreadcrumbDetails.js.map +0 -1
  439. package/lib/esm/components-react/breadcrumb/BreadcrumbPath.d.ts +0 -36
  440. package/lib/esm/components-react/breadcrumb/BreadcrumbPath.d.ts.map +0 -1
  441. package/lib/esm/components-react/breadcrumb/BreadcrumbPath.js +0 -42
  442. package/lib/esm/components-react/breadcrumb/BreadcrumbPath.js.map +0 -1
  443. package/lib/esm/components-react/breadcrumb/BreadcrumbTreeUtils.d.ts +0 -30
  444. package/lib/esm/components-react/breadcrumb/BreadcrumbTreeUtils.d.ts.map +0 -1
  445. package/lib/esm/components-react/breadcrumb/BreadcrumbTreeUtils.js +0 -131
  446. package/lib/esm/components-react/breadcrumb/BreadcrumbTreeUtils.js.map +0 -1
  447. package/lib/esm/components-react/common/showhide/ShowHideDialog.d.ts +0 -39
  448. package/lib/esm/components-react/common/showhide/ShowHideDialog.d.ts.map +0 -1
  449. package/lib/esm/components-react/common/showhide/ShowHideDialog.js +0 -68
  450. package/lib/esm/components-react/common/showhide/ShowHideDialog.js.map +0 -1
  451. package/lib/esm/components-react/common/showhide/ShowHideItem.d.ts +0 -15
  452. package/lib/esm/components-react/common/showhide/ShowHideItem.d.ts.map +0 -1
  453. package/lib/esm/components-react/common/showhide/ShowHideItem.js +0 -9
  454. package/lib/esm/components-react/common/showhide/ShowHideItem.js.map +0 -1
  455. package/lib/esm/components-react/common/showhide/ShowHideMenu.d.ts +0 -54
  456. package/lib/esm/components-react/common/showhide/ShowHideMenu.d.ts.map +0 -1
  457. package/lib/esm/components-react/common/showhide/ShowHideMenu.js +0 -101
  458. package/lib/esm/components-react/common/showhide/ShowHideMenu.js.map +0 -1
  459. package/lib/esm/components-react/editors/ThemedEnumEditor.d.ts +0 -63
  460. package/lib/esm/components-react/editors/ThemedEnumEditor.d.ts.map +0 -1
  461. package/lib/esm/components-react/editors/ThemedEnumEditor.js +0 -180
  462. package/lib/esm/components-react/editors/ThemedEnumEditor.js.map +0 -1
  463. package/lib/esm/components-react/editors/ThemedEnumEditor.scss +0 -83
  464. package/lib/esm/components-react/properties/renderers/value/table/NonPrimitiveValueRenderer.scss +0 -11
  465. package/lib/esm/components-react/table/SimpleTableDataProvider.d.ts +0 -58
  466. package/lib/esm/components-react/table/SimpleTableDataProvider.d.ts.map +0 -1
  467. package/lib/esm/components-react/table/SimpleTableDataProvider.js +0 -251
  468. package/lib/esm/components-react/table/SimpleTableDataProvider.js.map +0 -1
  469. package/lib/esm/components-react/table/columnfiltering/ColumnFiltering.d.ts +0 -242
  470. package/lib/esm/components-react/table/columnfiltering/ColumnFiltering.d.ts.map +0 -1
  471. package/lib/esm/components-react/table/columnfiltering/ColumnFiltering.js +0 -108
  472. package/lib/esm/components-react/table/columnfiltering/ColumnFiltering.js.map +0 -1
  473. package/lib/esm/components-react/table/columnfiltering/ColumnFiltering.scss +0 -79
  474. package/lib/esm/components-react/table/columnfiltering/ColumnFilteringUtilities.d.ts +0 -14
  475. package/lib/esm/components-react/table/columnfiltering/ColumnFilteringUtilities.d.ts.map +0 -1
  476. package/lib/esm/components-react/table/columnfiltering/ColumnFilteringUtilities.js +0 -33
  477. package/lib/esm/components-react/table/columnfiltering/ColumnFilteringUtilities.js.map +0 -1
  478. package/lib/esm/components-react/table/columnfiltering/DataGridFilterParser.d.ts +0 -88
  479. package/lib/esm/components-react/table/columnfiltering/DataGridFilterParser.d.ts.map +0 -1
  480. package/lib/esm/components-react/table/columnfiltering/DataGridFilterParser.js +0 -189
  481. package/lib/esm/components-react/table/columnfiltering/DataGridFilterParser.js.map +0 -1
  482. package/lib/esm/components-react/table/columnfiltering/FilterableColumnBase.d.ts +0 -58
  483. package/lib/esm/components-react/table/columnfiltering/FilterableColumnBase.d.ts.map +0 -1
  484. package/lib/esm/components-react/table/columnfiltering/FilterableColumnBase.js +0 -100
  485. package/lib/esm/components-react/table/columnfiltering/FilterableColumnBase.js.map +0 -1
  486. package/lib/esm/components-react/table/columnfiltering/TableColumnFilterDescriptor.d.ts +0 -57
  487. package/lib/esm/components-react/table/columnfiltering/TableColumnFilterDescriptor.d.ts.map +0 -1
  488. package/lib/esm/components-react/table/columnfiltering/TableColumnFilterDescriptor.js +0 -360
  489. package/lib/esm/components-react/table/columnfiltering/TableColumnFilterDescriptor.js.map +0 -1
  490. package/lib/esm/components-react/table/columnfiltering/TableFilterDescriptor.d.ts +0 -86
  491. package/lib/esm/components-react/table/columnfiltering/TableFilterDescriptor.d.ts.map +0 -1
  492. package/lib/esm/components-react/table/columnfiltering/TableFilterDescriptor.js +0 -400
  493. package/lib/esm/components-react/table/columnfiltering/TableFilterDescriptor.js.map +0 -1
  494. package/lib/esm/components-react/table/columnfiltering/TableFilterDescriptorCollection.d.ts +0 -29
  495. package/lib/esm/components-react/table/columnfiltering/TableFilterDescriptorCollection.d.ts.map +0 -1
  496. package/lib/esm/components-react/table/columnfiltering/TableFilterDescriptorCollection.js +0 -84
  497. package/lib/esm/components-react/table/columnfiltering/TableFilterDescriptorCollection.js.map +0 -1
  498. package/lib/esm/components-react/table/columnfiltering/data-grid-addons/AutoCompleteFilter.d.ts +0 -29
  499. package/lib/esm/components-react/table/columnfiltering/data-grid-addons/AutoCompleteFilter.d.ts.map +0 -1
  500. package/lib/esm/components-react/table/columnfiltering/data-grid-addons/AutoCompleteFilter.js +0 -49
  501. package/lib/esm/components-react/table/columnfiltering/data-grid-addons/AutoCompleteFilter.js.map +0 -1
  502. package/lib/esm/components-react/table/columnfiltering/data-grid-addons/MultiSelectFilter.d.ts +0 -5
  503. package/lib/esm/components-react/table/columnfiltering/data-grid-addons/MultiSelectFilter.d.ts.map +0 -1
  504. package/lib/esm/components-react/table/columnfiltering/data-grid-addons/MultiSelectFilter.js +0 -16
  505. package/lib/esm/components-react/table/columnfiltering/data-grid-addons/MultiSelectFilter.js.map +0 -1
  506. package/lib/esm/components-react/table/columnfiltering/data-grid-addons/NumericFilter.d.ts +0 -22
  507. package/lib/esm/components-react/table/columnfiltering/data-grid-addons/NumericFilter.d.ts.map +0 -1
  508. package/lib/esm/components-react/table/columnfiltering/data-grid-addons/NumericFilter.js +0 -81
  509. package/lib/esm/components-react/table/columnfiltering/data-grid-addons/NumericFilter.js.map +0 -1
  510. package/lib/esm/components-react/table/columnfiltering/data-grid-addons/SingleSelectFilter.d.ts +0 -5
  511. package/lib/esm/components-react/table/columnfiltering/data-grid-addons/SingleSelectFilter.d.ts.map +0 -1
  512. package/lib/esm/components-react/table/columnfiltering/data-grid-addons/SingleSelectFilter.js +0 -16
  513. package/lib/esm/components-react/table/columnfiltering/data-grid-addons/SingleSelectFilter.js.map +0 -1
  514. package/lib/esm/components-react/table/columnfiltering/multi-value-filter/MultiValueFilter.d.ts +0 -19
  515. package/lib/esm/components-react/table/columnfiltering/multi-value-filter/MultiValueFilter.d.ts.map +0 -1
  516. package/lib/esm/components-react/table/columnfiltering/multi-value-filter/MultiValueFilter.js +0 -177
  517. package/lib/esm/components-react/table/columnfiltering/multi-value-filter/MultiValueFilter.js.map +0 -1
  518. package/lib/esm/components-react/table/columnfiltering/multi-value-filter/MultiValueFilter.scss +0 -36
  519. package/lib/esm/components-react/table/component/ColumnDragLayer.d.ts +0 -15
  520. package/lib/esm/components-react/table/component/ColumnDragLayer.d.ts.map +0 -1
  521. package/lib/esm/components-react/table/component/ColumnDragLayer.js +0 -40
  522. package/lib/esm/components-react/table/component/ColumnDragLayer.js.map +0 -1
  523. package/lib/esm/components-react/table/component/DragDropHeaderCell.d.ts +0 -27
  524. package/lib/esm/components-react/table/component/DragDropHeaderCell.d.ts.map +0 -1
  525. package/lib/esm/components-react/table/component/DragDropHeaderCell.js +0 -76
  526. package/lib/esm/components-react/table/component/DragDropHeaderCell.js.map +0 -1
  527. package/lib/esm/components-react/table/component/Table.d.ts +0 -308
  528. package/lib/esm/components-react/table/component/Table.d.ts.map +0 -1
  529. package/lib/esm/components-react/table/component/Table.js +0 -1308
  530. package/lib/esm/components-react/table/component/Table.js.map +0 -1
  531. package/lib/esm/components-react/table/component/Table.scss +0 -201
  532. package/lib/esm/components-react/table/component/TableCell.d.ts +0 -101
  533. package/lib/esm/components-react/table/component/TableCell.d.ts.map +0 -1
  534. package/lib/esm/components-react/table/component/TableCell.js +0 -109
  535. package/lib/esm/components-react/table/component/TableCell.js.map +0 -1
  536. package/lib/esm/components-react/table/component/TableCell.scss +0 -49
  537. package/lib/esm/components-react/table/component/TableColumn.d.ts +0 -31
  538. package/lib/esm/components-react/table/component/TableColumn.d.ts.map +0 -1
  539. package/lib/esm/components-react/table/component/TableColumn.js +0 -29
  540. package/lib/esm/components-react/table/component/TableColumn.js.map +0 -1
  541. package/lib/esm/components-react/table/component/dragdrop/BeDragDropContext.d.ts +0 -13
  542. package/lib/esm/components-react/table/component/dragdrop/BeDragDropContext.d.ts.map +0 -1
  543. package/lib/esm/components-react/table/component/dragdrop/BeDragDropContext.js +0 -19
  544. package/lib/esm/components-react/table/component/dragdrop/BeDragDropContext.js.map +0 -1
  545. package/lib/esm/components-react/table/component/dragdrop/DragDropDef.d.ts +0 -155
  546. package/lib/esm/components-react/table/component/dragdrop/DragDropDef.d.ts.map +0 -1
  547. package/lib/esm/components-react/table/component/dragdrop/DragDropDef.js +0 -30
  548. package/lib/esm/components-react/table/component/dragdrop/DragDropDef.js.map +0 -1
  549. package/lib/esm/components-react/table/component/dragdrop/withDragSource.d.ts +0 -42
  550. package/lib/esm/components-react/table/component/dragdrop/withDragSource.d.ts.map +0 -1
  551. package/lib/esm/components-react/table/component/dragdrop/withDragSource.js +0 -166
  552. package/lib/esm/components-react/table/component/dragdrop/withDragSource.js.map +0 -1
  553. package/lib/esm/components-react/table/component/dragdrop/withDropTarget.d.ts +0 -36
  554. package/lib/esm/components-react/table/component/dragdrop/withDropTarget.d.ts.map +0 -1
  555. package/lib/esm/components-react/table/component/dragdrop/withDropTarget.js +0 -127
  556. package/lib/esm/components-react/table/component/dragdrop/withDropTarget.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"BeInspireTree.js","sourceRoot":"","sources":["../../../../src/components-react/breadcrumb/BeInspireTree.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Tree\r\n */\r\n\r\nimport { CallableInstance } from \"callable-instance2/import\";\r\nimport InspireTree, * as Inspire from \"inspire-tree\";\r\nimport { isArrayLike } from \"lodash\";\r\nimport { IDisposable, using } from \"@itwin/core-bentley\";\r\nimport { UiError } from \"@itwin/appui-abstract\";\r\nimport { CheckBoxInfo, CheckBoxState, isPromiseLike } from \"@itwin/core-react\";\r\nimport { PageOptions } from \"../common/PageOptions\";\r\nimport { UiComponents } from \"../UiComponents\";\r\n\r\n// istanbul ignore file\r\n\r\n/**\r\n * Enum containing all events that may be emitted by [[BeInspireTree]]\r\n * @internal\r\n */\r\nexport enum BeInspireTreeEvent {\r\n ChangesApplied = \"changes.applied\",\r\n ChildrenLoaded = \"children.loaded\",\r\n DataLoaded = \"data.loaded\",\r\n DataLoadError = \"data.loaderror\",\r\n ModelLoaded = \"model.loaded\",\r\n NodeAdded = \"node.added\",\r\n NodeBlurred = \"node.blurred\",\r\n NodeChecked = \"node.checked\",\r\n NodeCollapsed = \"node.collapsed\",\r\n NodeDeselected = \"node.deselected\",\r\n NodeEdited = \"node.edited\",\r\n NodeExpanded = \"node.expanded\",\r\n NodeFocused = \"node.focused\",\r\n NodeHidden = \"node.hidden\",\r\n NodeMoved = \"node.moved\",\r\n NodePaginated = \"node.paginated\",\r\n NodeRemoved = \"node.removed\",\r\n NodeSelected = \"node.selected\",\r\n NodeShown = \"node.shown\",\r\n NodeUnchecked = \"node.unchecked\",\r\n}\r\n\r\n/** Be alias for Inspire.NodeConfig\r\n * @internal\r\n */\r\nexport interface BeInspireTreeNodeConfig {\r\n children?: BeInspireTreeNodeConfig[] | true;\r\n id?: string;\r\n text: string;\r\n itree?: BeInspireTreeNodeITree;\r\n}\r\n\r\n/** Be alias for Inspire.NodeConfig.ITree\r\n * @internal\r\n */\r\nexport interface BeInspireTreeNodeITree {\r\n icon?: string;\r\n checkboxTooltip?: string;\r\n dirtyTimestamp?: number;\r\n dirtyCounter?: number;\r\n state?: {\r\n checkboxVisible?: boolean;\r\n checkboxDisabled?: boolean;\r\n checked?: boolean;\r\n collapsed?: boolean;\r\n editable?: boolean;\r\n focused?: boolean;\r\n indeterminate?: boolean;\r\n loading?: boolean;\r\n selectable?: boolean;\r\n selected?: boolean;\r\n };\r\n}\r\n\r\n/** Data structure for [[BeInspireTreeNodeConfig]] with our injected props\r\n * @internal\r\n */\r\nexport interface BeInspireTreeNodePayloadConfig<TPayload> extends BeInspireTreeNodeConfig {\r\n /** Node's data. May be `undefined` if this is placeholder node. */\r\n payload?: TPayload;\r\n /** Index of the node at the parent level. Only set if this is a placeholder node. */\r\n placeholderIndex?: number;\r\n /** Reference to the tree */\r\n beInspireTree: BeInspireTree<TPayload>;\r\n}\r\n\r\n/** Type definition for all BeInspireTree nodes\r\n * @internal\r\n */\r\nexport interface BeInspireTreeNode<TPayload> extends Inspire.TreeNode, BeInspireTreeNodePayloadConfig<TPayload> {\r\n isDirty(): boolean;\r\n setDirty(value: boolean): void;\r\n /** @internal */\r\n resetBeInspireOverrides(): void;\r\n}\r\n\r\n/**\r\n * Definition of a list of [[BeInspireTreeNode]] with some additional filtering methods\r\n * @internal\r\n */\r\nexport interface BeInspireTreeNodes<TPayload> extends Array<BeInspireTreeNode<TPayload>> {\r\n node(id: string): BeInspireTreeNode<TPayload> | undefined;\r\n nodes(ids?: string[]): BeInspireTreeNodes<TPayload>;\r\n deepest(): BeInspireTreeNodes<TPayload>;\r\n flatten(): BeInspireTreeNodes<TPayload>;\r\n expanded(): BeInspireTreeNodes<TPayload>;\r\n collapsed(): BeInspireTreeNodes<TPayload>;\r\n selected(): BeInspireTreeNodes<TPayload>;\r\n visible(): BeInspireTreeNodes<TPayload>;\r\n}\r\n\r\n/** Array of tree node data elements\r\n * @internal\r\n */\r\nexport type BeInspireTreeDataProviderRaw<TPayload> = TPayload[];\r\n/** A Promise for DataProviderRaw\r\n * @internal\r\n */\r\nexport type BeInspireTreeDataProviderPromise<TPayload> = Promise<BeInspireTreeDataProviderRaw<TPayload>>;\r\n/** Signature for BeInspireTree data provider\r\n * @internal\r\n */\r\nexport type BeInspireTreeDataProviderMethod<TPayload> = (parent?: TPayload) => BeInspireTreeDataProviderPromise<TPayload>;\r\n/** Signature for BeInspireTree data provider\r\n * @internal\r\n */\r\nexport interface BeInspireTreeDataProviderInterface<TPayload> {\r\n getNodesCount(parent?: TPayload): Promise<number>;\r\n getNodes(parent?: TPayload, page?: PageOptions): BeInspireTreeDataProviderPromise<TPayload>;\r\n}\r\n/** Type definition for all BeInspireTree data providers\r\n * @internal\r\n */\r\nexport type BeInspireTreeDataProvider<TPayload> =\r\n BeInspireTreeDataProviderRaw<TPayload>\r\n | BeInspireTreeDataProviderPromise<TPayload>\r\n | BeInspireTreeDataProviderMethod<TPayload>\r\n | BeInspireTreeDataProviderInterface<TPayload>;\r\n\r\n/** Type definition for a BeInspireTree renderer\r\n * @internal\r\n */\r\nexport type BeInspireTreeRenderer<TPayload> = (rootNodes: Array<BeInspireTreeNode<TPayload>>) => void;\r\n\r\ntype BeInspireTreeDataFunc<TPayload> = (parent: BeInspireTreeNode<TPayload> | undefined,\r\n resolve: (nodes: Array<BeInspireTreeNodePayloadConfig<TPayload>>, totalCount: number) => any,\r\n reject: (err: Error) => any,\r\n pagination?: Inspire.Pagination,\r\n) => void;\r\ntype BeInspireTreeData<TPayload> =\r\n Array<BeInspireTreeNodePayloadConfig<TPayload>>\r\n | Promise<Array<BeInspireTreeNodePayloadConfig<TPayload>>>\r\n | BeInspireTreeDataFunc<TPayload>;\r\n\r\n/**\r\n * A context which keeps [[BeInspireTree]] events muted until\r\n * it gets disposed.\r\n * @internal\r\n */\r\nexport class EventsMuteContext implements IDisposable {\r\n\r\n private _triggeredEventsCount: number = 0;\r\n private _didMute = false;\r\n private _stopListening: (() => void) | undefined;\r\n\r\n public constructor(\r\n private _events: BeInspireTreeEvent[],\r\n private _mute: (events: BeInspireTreeEvent[]) => void,\r\n private _unmute: (events: BeInspireTreeEvent[]) => boolean,\r\n private _emit?: (events: BeInspireTreeEvent[]) => void,\r\n private _listen?: (events: BeInspireTreeEvent[], listener: (...values: any[]) => void) => (() => void),\r\n allowedEventTriggersBeforeMute: number = 0) {\r\n this.init(allowedEventTriggersBeforeMute);\r\n }\r\n\r\n private init(allowedEventTriggersBeforeMute: number) {\r\n if (0 === allowedEventTriggersBeforeMute || !this._listen) {\r\n this._mute(this._events);\r\n this._didMute = true;\r\n return;\r\n }\r\n const callback = () => {\r\n if (++this._triggeredEventsCount >= allowedEventTriggersBeforeMute) {\r\n this._mute(this._events);\r\n this._didMute = true;\r\n // istanbul ignore else\r\n if (this._stopListening) {\r\n this._stopListening();\r\n this._stopListening = undefined;\r\n }\r\n }\r\n };\r\n this._stopListening = this._listen(this._events, callback);\r\n }\r\n\r\n public dispose() {\r\n if (this._stopListening) {\r\n this._stopListening();\r\n this._stopListening = undefined;\r\n }\r\n\r\n if (!this._didMute)\r\n return;\r\n\r\n const didUnmute = this._unmute(this._events);\r\n if (didUnmute && this._emit)\r\n this._emit(this._events);\r\n }\r\n}\r\n\r\n/** Prototype for BeInspireTreeProps.mapPayloadToInspireNodeConfig\r\n * @internal\r\n */\r\nexport type MapPayloadToInspireNodeCallback<TPayload> = (payload: TPayload, remapper: MapPayloadToInspireNodeCallback<TPayload>) => BeInspireTreeNodeConfig;\r\n\r\ninterface DeferredLoadingHandler<TPayload> {\r\n requestNodeLoad(parent: BeInspireTreeNode<TPayload> | undefined, index: number): Promise<void>;\r\n disposeNodeCaches(parent?: BeInspireTreeNode<TPayload>): void;\r\n}\r\n\r\n/**\r\n * Configuration properties for [[BeInspireTree]]\r\n * @internal\r\n */\r\nexport interface BeInspireTreeProps<TNodePayload> {\r\n dataProvider: BeInspireTreeDataProvider<TNodePayload>;\r\n mapPayloadToInspireNodeConfig: MapPayloadToInspireNodeCallback<TNodePayload>;\r\n pageSize?: number;\r\n disposeChildrenOnCollapse?: boolean;\r\n}\r\n\r\n/**\r\n * Bentley wrapper for 'inspire-tree'\r\n * @internal\r\n */\r\nexport class BeInspireTree<TNodePayload> {\r\n\r\n private _tree: InspireTree;\r\n private _eventMutes: Map<BeInspireTreeEvent, number>;\r\n private _readyPromise!: Promise<void>;\r\n private _deferredLoadingHandler?: DeferredLoadingHandler<TNodePayload>;\r\n private _visibleCached?: BeInspireTreeNodes<TNodePayload>;\r\n private _suspendedRendering?: EventsMuteContext;\r\n public props: BeInspireTreeProps<TNodePayload>;\r\n\r\n constructor(props: BeInspireTreeProps<TNodePayload>) {\r\n this.props = props;\r\n this._eventMutes = new Map();\r\n\r\n const wrappedProvider = wrapDataProvider<TNodePayload>(this, props.dataProvider, props.mapPayloadToInspireNodeConfig);\r\n if (wrappedProvider instanceof WrappedInterfaceProvider)\r\n this._deferredLoadingHandler = wrappedProvider as WrappedInterfaceProvider<TNodePayload>;\r\n const config: Inspire.Config = {\r\n data: wrappedProvider as any, // note: invalid declaration for this callback\r\n selection: {\r\n multiple: true,\r\n autoDeselect: false,\r\n },\r\n };\r\n this._tree = new InspireTree(config);\r\n\r\n // make sure nodes are dirty when they're loaded\r\n this.on(BeInspireTreeEvent.ModelLoaded, (model: BeInspireTreeNodes<TNodePayload>) => {\r\n model.forEach((n) => n.markDirty());\r\n });\r\n this.on(BeInspireTreeEvent.ChildrenLoaded, (parent: BeInspireTreeNode<TNodePayload>) => {\r\n parent.getChildren().forEach((n) => n.markDirty());\r\n });\r\n\r\n // dispose `visible` cache when data is loaded or nodes are expanded or collapsed\r\n this.on([BeInspireTreeEvent.DataLoaded, BeInspireTreeEvent.NodeCollapsed, BeInspireTreeEvent.NodeExpanded], () => {\r\n this._visibleCached = undefined;\r\n });\r\n\r\n // we want to allow consumers of `BeInspireTree` to listen for `ModelLoaded`\r\n // and `ChildrenLoaded` events and do any kind of manipulation with them **before**\r\n // `ChangesApplied` event is emitted, so we have to suspend rendering when data is loaded\r\n // and resume it in `*Loaded` listener.\r\n this.on(BeInspireTreeEvent.DataLoaded, () => {\r\n this._suspendedRendering = this.pauseRendering();\r\n });\r\n this.on([BeInspireTreeEvent.ModelLoaded, BeInspireTreeEvent.ChildrenLoaded], () => {\r\n // NODES_LOADED_LAST_LISTENER: this listener must be executed last of all ModelLoaded and ChildrenLoaded\r\n // listeners to avoid excessive re-renders\r\n // istanbul ignore else\r\n if (this._suspendedRendering) {\r\n this._suspendedRendering.dispose();\r\n this._suspendedRendering = undefined;\r\n }\r\n });\r\n\r\n // override the `load` function to handle auto-expanding nodes\r\n // note: tree starts loading as soon as it gets created, so the first load\r\n // is not using this override - in that case auto-expansion is handled\r\n // in `onModelInvalidated` function\r\n const baseTreeLoad = this._tree.load;\r\n this._tree.load = async (loader): Promise<Inspire.TreeNodes> => {\r\n const result = await baseTreeLoad.call(this._tree, loader);\r\n await using(this.pauseRendering(), async (_r) => {\r\n await ensureNodesAutoExpanded(result);\r\n });\r\n return result;\r\n };\r\n\r\n // assign `disposeChildrenOnCollapse` handler if needed\r\n if (props.disposeChildrenOnCollapse) {\r\n if (!isDeferredDataProvider(props.dataProvider))\r\n throw new UiError(UiComponents.loggerCategory(this), `Property 'disposeChildrenOnCollapse' is only available on deferred data providers`);\r\n this.on(BeInspireTreeEvent.NodeCollapsed, (node: BeInspireTreeNode<TNodePayload>) => {\r\n if (this._deferredLoadingHandler)\r\n this._deferredLoadingHandler.disposeNodeCaches(node);\r\n node.children = true;\r\n });\r\n }\r\n\r\n // invalidate our `ready` promise\r\n this.onModelInvalidated();\r\n }\r\n\r\n private onModelInvalidated() {\r\n this._readyPromise = new Promise<void>((resolve) => {\r\n this._tree.once([BeInspireTreeEvent.ModelLoaded], resolve);\r\n }).then(async () => {\r\n // note: the following is only needed for the initial load of the tree\r\n // when our `load` override isn't assigned yet\r\n await using(this.pauseRendering(), async (_r) => {\r\n await ensureNodesAutoExpanded(this._tree.nodes());\r\n });\r\n });\r\n }\r\n\r\n public get ready(): Promise<void> { return this._readyPromise; }\r\n\r\n /**\r\n * Stop emitting the specified events until the returned\r\n * [[EventsMuteContext]] object is disposed\r\n */\r\n public mute(events: BeInspireTreeEvent[]): EventsMuteContext {\r\n return new EventsMuteContext(events, this.doMute, this.doUnmute);\r\n }\r\n\r\n // eslint-disable-next-line @typescript-eslint/naming-convention\r\n private doMute = (events: BeInspireTreeEvent[]) => {\r\n events.forEach((ev) => {\r\n if (!this._eventMutes.has(ev))\r\n this._eventMutes.set(ev, 1);\r\n else\r\n this._eventMutes.set(ev, this._eventMutes.get(ev)! + 1);\r\n });\r\n if (typeof this._tree.muted() !== \"boolean\")\r\n this._tree.mute(events.concat(this._tree.muted() as any));\r\n else\r\n this._tree.mute(events);\r\n };\r\n\r\n // eslint-disable-next-line @typescript-eslint/naming-convention\r\n private doUnmute = (events: BeInspireTreeEvent[]) => {\r\n const eventsToUnmute = events.filter((ev) => {\r\n let mutesCount = this._eventMutes.get(ev);\r\n if (mutesCount === undefined || mutesCount === 0)\r\n return false;\r\n this._eventMutes.set(ev, --mutesCount);\r\n return (mutesCount === 0);\r\n });\r\n this._tree.unmute(eventsToUnmute);\r\n return (eventsToUnmute.length > 0);\r\n };\r\n\r\n // eslint-disable-next-line @typescript-eslint/naming-convention\r\n private doEmit = (events: BeInspireTreeEvent[]) => {\r\n events.forEach((e) => this._tree.emit(e));\r\n };\r\n\r\n /**\r\n * Stop calling the renderer method until the returned\r\n * object is disposed. When that happens, the [[BeInspireTreeEvent.ChangesApplied]]\r\n * event is emitted if any changes in the hierarchy happened during the pause\r\n */\r\n public pauseRendering(allowedRendersBeforePause: number = 0): EventsMuteContext {\r\n const doEmit = (events: BeInspireTreeEvent[]) => {\r\n if (this.visible().some((n) => n.isDirty())) {\r\n this.doEmit(events);\r\n }\r\n };\r\n const doListen = (events: BeInspireTreeEvent[], listener: (...values: any[]) => void) => {\r\n this.on(events, listener);\r\n return () => this._tree.removeListener(events, listener);\r\n };\r\n return new EventsMuteContext([BeInspireTreeEvent.ChangesApplied], this.doMute, this.doUnmute,\r\n doEmit, doListen, allowedRendersBeforePause);\r\n }\r\n\r\n /**\r\n * Request a new render of current model.\r\n *\r\n * @internal\r\n */\r\n public applyChanges() {\r\n this.doEmit([BeInspireTreeEvent.ChangesApplied]);\r\n }\r\n\r\n /** Add a listener for specific event */\r\n public on(event: BeInspireTreeEvent | BeInspireTreeEvent[], listener: (...values: any[]) => void): this {\r\n const events = Array.isArray(event) ? event : [event];\r\n events.forEach((e) => {\r\n // note: we want our specific listener to be executed last, so have to make sure no other listeners\r\n // are appended to the listeners list (see NODES_LOADED_LAST_LISTENER)\r\n const shouldInsertBeforeLast = ((e === BeInspireTreeEvent.ModelLoaded && this._tree.listeners(e).length >= 2)\r\n || (e === BeInspireTreeEvent.ChildrenLoaded && this._tree.listeners(e).length >= 2));\r\n if (shouldInsertBeforeLast)\r\n this._tree.listeners(e).splice(this._tree.listeners(e).length - 1, 0, listener);\r\n else\r\n this._tree.on(e, listener);\r\n });\r\n return this;\r\n }\r\n\r\n /** Remove listener for specific event */\r\n public removeListener(event: BeInspireTreeEvent | BeInspireTreeEvent[], listener: (...values: any[]) => void): this {\r\n const events = Array.isArray(event) ? event : [event];\r\n events.forEach((e) => this._tree.removeListener(e, listener));\r\n return this;\r\n }\r\n\r\n /** Remove all listeners for specific event(s) */\r\n public removeAllListeners(event?: BeInspireTreeEvent | BeInspireTreeEvent[]) {\r\n if (!event) {\r\n this._tree.removeAllListeners(undefined);\r\n return;\r\n }\r\n const events = Array.isArray(event) ? event : /* istanbul ignore next */[event];\r\n events.forEach((e) => this._tree.removeAllListeners(e));\r\n }\r\n\r\n /** Get root node with the specified id */\r\n public node(id: string): BeInspireTreeNode<TNodePayload> | undefined {\r\n return toNode(this._tree.node(id));\r\n }\r\n\r\n /** Get root nodes with the specified ids */\r\n public nodes(ids?: string[]) {\r\n return toNodes<TNodePayload>(this._tree.nodes(ids));\r\n }\r\n\r\n /** Get flat list of all available nodes */\r\n public flatten() {\r\n return toNodes<TNodePayload>(this._tree.flatten(() => true));\r\n }\r\n\r\n /** Get a flat list of available leaf nodes */\r\n public deepest() {\r\n return toNodes<TNodePayload>(this._tree.deepest());\r\n }\r\n\r\n /** Get a flat list of expanded nodes */\r\n public expanded() {\r\n return toNodes<TNodePayload>(this._tree.expanded());\r\n }\r\n\r\n /** Get a flat list of collapsed nodes */\r\n public collapsed() {\r\n return toNodes<TNodePayload>(this._tree.collapsed());\r\n }\r\n\r\n /** Get a flat list of selected nodes */\r\n public selected() {\r\n return toNodes<TNodePayload>(this._tree.selected());\r\n }\r\n\r\n /** Get a flat list of visible nodes */\r\n public visible() {\r\n if (!this._visibleCached)\r\n this._visibleCached = toNodes<TNodePayload>(this._tree.visible());\r\n return this._visibleCached;\r\n }\r\n\r\n /** Reload the tree */\r\n public async reload() {\r\n if (this._deferredLoadingHandler)\r\n this._deferredLoadingHandler.disposeNodeCaches(undefined);\r\n await using(this.pauseRendering(), async (_r) => {\r\n const rootNodes = await this._tree.reload();\r\n rootNodes.forEach((n) => toNode(n).setDirty(true));\r\n });\r\n }\r\n\r\n /**\r\n * Deselects all nodes\r\n */\r\n public deselectAll(muteEvents = true) {\r\n using(this.mute((muteEvents) ? [BeInspireTreeEvent.NodeDeselected] : []), (_r) => {\r\n this._tree.deselectDeep();\r\n });\r\n }\r\n\r\n /**\r\n * Returns all visible nodes that are located between the two input nodes (inclusive).\r\n * Input nodes can be provided in any order.\r\n */\r\n public getVisibleNodesBetween(node1: BeInspireTreeNode<TNodePayload>, node2: BeInspireTreeNode<TNodePayload>): Array<BeInspireTreeNode<TNodePayload>> {\r\n let startIndex = -1;\r\n let endIndex = -1;\r\n for (let i = 0; i < this.visible().length; ++i) {\r\n const vn = this.visible()[i];\r\n if (vn.id === node1.id)\r\n startIndex = i;\r\n if (vn.id === node2.id)\r\n endIndex = i;\r\n if (startIndex !== -1 && endIndex !== -1)\r\n break;\r\n }\r\n\r\n if (startIndex > endIndex)\r\n [startIndex, endIndex] = [endIndex, startIndex];\r\n\r\n return this.visible().slice(startIndex, endIndex + 1);\r\n }\r\n\r\n /**\r\n * Selects all visible nodes that are located between the two input nodes (inclusive).\r\n * Input nodes can be provided in any order.\r\n */\r\n public selectBetween(node1: BeInspireTreeNode<TNodePayload>, node2: BeInspireTreeNode<TNodePayload>, muteEvents = true): Array<BeInspireTreeNode<TNodePayload>> {\r\n return using(this.mute((muteEvents) ? [BeInspireTreeEvent.NodeSelected] : []), (_r) => {\r\n const nodesBetween = this.getVisibleNodesBetween(node1, node2);\r\n nodesBetween.forEach((n) => n.select());\r\n return nodesBetween;\r\n });\r\n }\r\n\r\n private createSelectedNodePredicate(nodesToSelect?: string[] | ((payload: TNodePayload) => boolean)): Inspire.NodeIteratee | undefined {\r\n if (!nodesToSelect)\r\n return undefined;\r\n\r\n let predicate: Inspire.NodeIteratee;\r\n if (typeof nodesToSelect === \"function\") {\r\n predicate = (n: Inspire.TreeNode) => (toNode<TNodePayload>(n).payload && nodesToSelect(toNode<TNodePayload>(n).payload!));\r\n } else {\r\n predicate = (n: Inspire.TreeNode) => (-1 !== nodesToSelect.indexOf(toNode(n).id!));\r\n }\r\n return predicate;\r\n }\r\n\r\n private updateSelection(selectHandler: (predicate: Inspire.NodeIteratee) => void, nodesToSelect: string[] | ((payload: TNodePayload) => boolean) | undefined, muteEvents: boolean) {\r\n const predicate = this.createSelectedNodePredicate(nodesToSelect);\r\n if (!predicate)\r\n return;\r\n\r\n using(this.mute((muteEvents) ? [BeInspireTreeEvent.NodeSelected, BeInspireTreeEvent.NodeDeselected] : []), (_r) => {\r\n this._tree.disableDeselection();\r\n selectHandler(predicate);\r\n this._tree.enableDeselection();\r\n });\r\n }\r\n\r\n /**\r\n * Deselects everything and selects only nodes that meet the `nodesToSelect` criteria\r\n */\r\n public updateTreeSelection(nodesToSelect?: string[] | ((payload: TNodePayload) => boolean), muteEvents = true) {\r\n const selectFunc = (predicate: Inspire.NodeIteratee) => {\r\n this.flatten().forEach((n) => {\r\n const shouldSelect = predicate(n);\r\n if (shouldSelect && !n.selected())\r\n n.select();\r\n else if (!shouldSelect && n.selected())\r\n n.deselect();\r\n });\r\n };\r\n return this.updateSelection(selectFunc, nodesToSelect, muteEvents);\r\n }\r\n\r\n /**\r\n * Updates selection state of provided `nodes` based on `nodesToSelect` criteria\r\n */\r\n public updateNodesSelection(nodes: BeInspireTreeNodes<TNodePayload> | Inspire.TreeNodes, nodesToSelect?: string[] | ((payload: TNodePayload) => boolean), muteEvents = true) {\r\n const selectFunc = (predicate: Inspire.NodeIteratee) => {\r\n let filtered: Inspire.TreeNode[];\r\n if ((nodes as Inspire.TreeNodes).filterBy !== undefined)\r\n filtered = (nodes as Inspire.TreeNodes).filterBy(predicate).map((n) => n);\r\n else\r\n filtered = (nodes as BeInspireTreeNodes<TNodePayload>).filter(predicate);\r\n filtered.forEach((node) => node.select());\r\n };\r\n return this.updateSelection(selectFunc, nodesToSelect, muteEvents);\r\n }\r\n\r\n private updateNodeCheckboxInfo(node: BeInspireTreeNode<TNodePayload>, status: CheckBoxInfo) {\r\n let hasChanges = false;\r\n if (node.itree!.checkboxTooltip !== status.tooltip) {\r\n node.itree!.checkboxTooltip = status.tooltip;\r\n hasChanges = true;\r\n }\r\n if (node.itree!.state!.checkboxVisible !== status.isVisible) {\r\n node.itree!.state!.checkboxVisible = status.isVisible;\r\n hasChanges = true;\r\n }\r\n if (node.itree!.state!.checkboxDisabled !== status.isDisabled) {\r\n node.itree!.state!.checkboxDisabled = status.isDisabled;\r\n hasChanges = true;\r\n }\r\n if (status.state === CheckBoxState.On && !node.itree!.state!.checked) {\r\n node.check();\r\n hasChanges = true;\r\n } else if (status.state === CheckBoxState.Off && node.itree!.state!.checked) {\r\n node.uncheck();\r\n hasChanges = true;\r\n }\r\n if (hasChanges) {\r\n node.markDirty();\r\n this.applyChanges();\r\n }\r\n }\r\n\r\n /**\r\n * Updates checkbox states of the whole tree using the `checkboxInfo` callback function\r\n */\r\n public async updateTreeCheckboxes(checkboxInfo: ((payload: TNodePayload) => CheckBoxInfo | Promise<CheckBoxInfo>), muteEvents = true) {\r\n await this.updateNodesCheckboxes(this.flatten(), checkboxInfo, muteEvents);\r\n }\r\n\r\n /**\r\n * Updates checkbox states of provided `nodes` based on `checkboxInfo` callback function\r\n */\r\n public async updateNodesCheckboxes(nodes: BeInspireTreeNodes<TNodePayload>, checkboxInfo: ((payload: TNodePayload) => CheckBoxInfo | Promise<CheckBoxInfo>), muteEvents = true) {\r\n await using(this.pauseRendering(), async (_r1) => {\r\n await using(this.mute((muteEvents) ? [BeInspireTreeEvent.NodeChecked, BeInspireTreeEvent.NodeUnchecked] : []), async (_r2) => {\r\n const promises = new Array<Promise<void>>();\r\n nodes.forEach((n) => {\r\n if (!n.payload)\r\n return;\r\n\r\n const status = checkboxInfo(n.payload);\r\n if (isPromiseLike(status))\r\n promises.push(status.then((s) => this.updateNodeCheckboxInfo(n, s)));\r\n else\r\n this.updateNodeCheckboxInfo(n, status);\r\n });\r\n if (promises.length !== 0)\r\n await Promise.all(promises);\r\n });\r\n });\r\n }\r\n\r\n /** @internal */\r\n public createPlaceholderNode(index: number, parent?: BeInspireTreeNode<TNodePayload>): BeInspireTreeNode<TNodePayload> {\r\n const node = toNode<TNodePayload>(this._tree.createNode({\r\n id: `${parent ? parent.id : \"\"}-not_loaded[${index}]`,\r\n text: \"\",\r\n payload: undefined as any,\r\n beInspireTree: this,\r\n }));\r\n node.placeholderIndex = index;\r\n return node;\r\n }\r\n\r\n /**\r\n * Request a node at the specified index to be loaded for the given parent. Only\r\n * makes sense on a paginated tree, throws otherwise.\r\n */\r\n public async requestNodeLoad(parent: BeInspireTreeNode<TNodePayload> | undefined, index: number): Promise<void> {\r\n if (!this._deferredLoadingHandler)\r\n throw new UiError(UiComponents.loggerCategory(this), `requestNodeLoad should only be called when pagination is enabled`);\r\n return this._deferredLoadingHandler.requestNodeLoad(parent, index);\r\n }\r\n\r\n /** @internal */\r\n public async loadNodes(): Promise<void> {\r\n await this._tree.load((this._tree as any).config.data);\r\n }\r\n}\r\n\r\nasync function loadChildrenRecursive(n: Inspire.TreeNode, filterNodeIds: string[]): Promise<Inspire.TreeNodes> {\r\n const children = await n.loadChildren();\r\n await ensureChildrenLoaded(children, filterNodeIds);\r\n return children;\r\n}\r\n\r\nconst needsChildrenLoaded = (n: Inspire.TreeNode) => n.hasOrWillHaveChildren() && !(n as any).hasLoadedChildren();\r\n\r\nasync function ensureChildrenLoaded(branch: Inspire.TreeNodes | Inspire.TreeNode[], filterNodeIds: string[]): Promise<void> {\r\n const childNodes = branch.filter((n) => filterNodeIds.includes(toNode(n).id!));\r\n const allChildren = (await Promise.all(childNodes.map(async (n) => {\r\n if (needsChildrenLoaded(n))\r\n return loadChildrenRecursive(toNode(n), filterNodeIds);\r\n return n.getChildren();\r\n }))).reduce((children: Inspire.TreeNode[], curr: Inspire.TreeNodes) => {\r\n children.push(...curr);\r\n return children;\r\n }, []);\r\n await ensureNodesAutoExpanded(allChildren);\r\n}\r\n\r\nasync function ensureNodesAutoExpanded(branch: Inspire.TreeNodes | Inspire.TreeNode[]): Promise<void> {\r\n const idsToExpand = branch.filter((n) => n.expanded()).map((n) => toNode(n).id!);\r\n if (idsToExpand.length > 0)\r\n await ensureChildrenLoaded(branch, idsToExpand);\r\n}\r\n\r\n/** @internal */\r\nexport const toNode = <TPayload>(inspireNode: Inspire.TreeNode): BeInspireTreeNode<TPayload> => {\r\n // When inspire-tree loads child nodes, some existing nodes transfer their properties to freshly created objects.\r\n // Therefore, we cannot capture and use the `inspireNode` reference within methods we are about to assign to the node.\r\n\r\n const anyNode = inspireNode as any;\r\n if (!inspireNode) {\r\n // some inspire tree methods return `undefined` even when they say they don't - handle\r\n // the case by returning undefined as well\r\n return anyNode;\r\n }\r\n\r\n if (!anyNode._loadChildrenOverriden) {\r\n const loadChildrenBase = inspireNode.loadChildren;\r\n inspireNode.loadChildren = async function (): Promise<Inspire.TreeNodes> {\r\n const children = await loadChildrenBase.call(this);\r\n // note: inspire-tree calls BeInspireTreeEvent.ChildrenLoaded as part of\r\n // the above call, so listeners get called before we get a chance to auto-expand...\r\n await ensureNodesAutoExpanded(children);\r\n return children;\r\n };\r\n anyNode._loadChildrenOverriden = loadChildrenBase;\r\n }\r\n\r\n // note: default `check()` & `uncheck()` implementations fiddle with\r\n // parent node which we don't want\r\n if (!anyNode._checkOverriden) {\r\n const checkBase = inspireNode.check;\r\n anyNode.check = function (): Inspire.TreeNode {\r\n // istanbul ignore else\r\n if (!this.itree!.state!.checked) {\r\n this.itree!.state!.checked = true;\r\n this._tree.emit(BeInspireTreeEvent.NodeChecked, this);\r\n this.markDirty();\r\n this._tree.applyChanges();\r\n }\r\n return this;\r\n };\r\n anyNode._checkOverriden = checkBase;\r\n }\r\n if (!anyNode._uncheckOverriden) {\r\n const uncheckBase = inspireNode.uncheck;\r\n anyNode.uncheck = function (): Inspire.TreeNode {\r\n // istanbul ignore else\r\n if (this.itree!.state!.checked) {\r\n this.itree!.state!.checked = false;\r\n this._tree.emit(BeInspireTreeEvent.NodeUnchecked, this);\r\n this.markDirty();\r\n this._tree.applyChanges();\r\n }\r\n return this;\r\n };\r\n anyNode._uncheckOverriden = uncheckBase;\r\n }\r\n\r\n // inject a method to reset overrides\r\n anyNode.resetBeInspireOverrides = function () {\r\n this.loadChildren = this._loadChildrenOverriden;\r\n delete this._loadChildrenOverriden;\r\n this.check = this._checkOverriden;\r\n delete this._checkOverriden;\r\n this.uncheck = this._uncheckOverriden;\r\n delete this._uncheckOverriden;\r\n };\r\n\r\n // inject a couple of methods to handle dirtiness\r\n anyNode.isDirty = function () { return this.itree.dirty; };\r\n anyNode.setDirty = function (value: boolean) {\r\n if (value)\r\n this.markDirty();\r\n else\r\n this.itree.dirty = value;\r\n };\r\n if (!anyNode._markDirtyOverriden) {\r\n const markDirtyBase = inspireNode.markDirty;\r\n anyNode.markDirty = function () {\r\n const result = markDirtyBase.call(this);\r\n const currTimestamp = (new Date()).getTime();\r\n if (this.itree.dirtyTimestamp === currTimestamp) {\r\n ++this.itree.dirtyCounter;\r\n } else {\r\n this.itree.dirtyTimestamp = currTimestamp;\r\n this.itree.dirtyCounter = 0;\r\n }\r\n return result;\r\n };\r\n anyNode._markDirtyOverriden = markDirtyBase;\r\n }\r\n\r\n return anyNode;\r\n};\r\n\r\n/** @internal */\r\nexport const toNodes = <TPayload>(inspireNodes: Inspire.TreeNodes): BeInspireTreeNodes<TPayload> => {\r\n return Object.assign(inspireNodes.map((n) => toNode<TPayload>(n)), {\r\n node: (id: string) => toNode<TPayload>(inspireNodes.node(id)),\r\n nodes: (ids?: string[]) => toNodes<TPayload>(inspireNodes.nodes(ids)),\r\n deepest: () => toNodes<TPayload>(inspireNodes.deepest()),\r\n flatten: () => toNodes<TPayload>(inspireNodes.flatten(() => true)),\r\n expanded: () => toNodes<TPayload>(inspireNodes.expanded()),\r\n collapsed: () => toNodes<TPayload>(inspireNodes.collapsed()),\r\n selected: () => toNodes<TPayload>(inspireNodes.selected()),\r\n visible: () => toNodes<TPayload>(inspireNodes.visible()),\r\n });\r\n};\r\n\r\nconst isDataProviderInterface = (obj: unknown): obj is BeInspireTreeDataProviderInterface<any> => {\r\n return (typeof obj === \"object\")\r\n && ((obj as any).getNodesCount && (typeof (obj as any).getNodesCount) === \"function\")\r\n && ((obj as any).getNodes && (typeof (obj as any).getNodes) === \"function\");\r\n};\r\n\r\nconst isDeferredDataProvider = (provider: BeInspireTreeDataProvider<any>): boolean => {\r\n return (typeof provider === \"function\") || isDataProviderInterface(provider);\r\n};\r\n\r\nconst nodeToPayload = <TPayload>(node?: BeInspireTreeNodePayloadConfig<TPayload>) => (node ? node.payload : undefined);\r\n\r\nclass PayloadToNodeRemapper<TPayload> {\r\n constructor(\r\n private _tree: BeInspireTree<TPayload>,\r\n private _mapPayloadToInspireNodeConfig: MapPayloadToInspireNodeCallback<TPayload>) {\r\n }\r\n public remapOne = (payload: TPayload): BeInspireTreeNodePayloadConfig<TPayload> => ({\r\n ...this._mapPayloadToInspireNodeConfig(payload, this.remapOne),\r\n beInspireTree: this._tree,\r\n payload,\r\n });\r\n public remapMany = (payload: TPayload[]): Array<BeInspireTreeNodePayloadConfig<TPayload>> => {\r\n return payload.map(this.remapOne);\r\n };\r\n}\r\n\r\nfunction onNodesDelayLoaded<TPayload>(parent: BeInspireTreeNode<TPayload> | undefined, nodes: Array<BeInspireTreeNodePayloadConfig<TPayload>>) {\r\n if (parent) {\r\n // inspire-tree emits `data.loaded` event only when root nodes are loaded, but\r\n // we also need it to be emitted when children are loaded - we depend on it being called\r\n // after the children are loaded but before the `children.loaded` event is emitted.\r\n parent.tree().emit(BeInspireTreeEvent.DataLoaded, nodes);\r\n }\r\n}\r\n\r\nconst wrapDataProvider = <TPayload>(tree: BeInspireTree<TPayload>, provider: BeInspireTreeDataProvider<TPayload>, mapPayloadToInspireNodeConfig: MapPayloadToInspireNodeCallback<TPayload>): BeInspireTreeData<TPayload> => {\r\n const remapper = new PayloadToNodeRemapper(tree, mapPayloadToInspireNodeConfig);\r\n\r\n if (Array.isArray(provider)) {\r\n // array data provider\r\n return remapper.remapMany(provider);\r\n }\r\n\r\n if (typeof provider === \"function\") {\r\n // method data provider\r\n return ((parent: BeInspireTreeNode<TPayload> | undefined, resolve: (nodes: Array<BeInspireTreeNodePayloadConfig<TPayload>>, totalCount: number) => any, _reject: (err: Error) => any) => {\r\n const payload = nodeToPayload(parent);\r\n // eslint-disable-next-line @typescript-eslint/no-floating-promises\r\n provider(payload).then(remapper.remapMany).then((nodes) => {\r\n onNodesDelayLoaded(parent, nodes);\r\n resolve(nodes, nodes.length);\r\n });\r\n });\r\n }\r\n\r\n if (isDataProviderInterface(provider)) {\r\n // interface data provider\r\n return new WrappedInterfaceProvider({\r\n tree,\r\n provider,\r\n nodesRemapper: remapper,\r\n });\r\n }\r\n\r\n // promise data provider\r\n return provider.then(remapper.remapMany);\r\n};\r\n\r\ninterface NodesLoadResult<TPayload> {\r\n totalNodesCount: number;\r\n nodes: TPayload[];\r\n}\r\n\r\ninterface WrappedInterfaceProviderProps<TPayload> {\r\n tree: BeInspireTree<TPayload>;\r\n provider: BeInspireTreeDataProviderInterface<TPayload>;\r\n nodesRemapper: PayloadToNodeRemapper<TPayload>;\r\n}\r\nclass WrappedInterfaceProvider<TPayload> extends CallableInstance implements DeferredLoadingHandler<TPayload> {\r\n private _tree: BeInspireTree<TPayload>;\r\n private _provider: BeInspireTreeDataProviderInterface<TPayload>;\r\n private _paginationHelper?: PaginationHelper<NodesLoadResult<TPayload>>;\r\n private _nodesRemapper: PayloadToNodeRemapper<TPayload>;\r\n private _stashedPages = new Map<string | undefined, { total: number, pages: Array<{ start: number, nodes: TPayload[] }> }>();\r\n private _initialRequests = new Set<string | undefined>();\r\n\r\n public constructor(props: WrappedInterfaceProviderProps<TPayload>) {\r\n super(\"inspireLoad\");\r\n this._tree = props.tree;\r\n this._provider = props.provider;\r\n this._nodesRemapper = props.nodesRemapper;\r\n if (undefined !== this._tree.props.pageSize && 0 !== this._tree.props.pageSize)\r\n this._paginationHelper = new PaginationHelper(this._tree.props.pageSize, this._pagedLoad, this._onPageLoaded);\r\n }\r\n\r\n public requestNodeLoad = async (parent: BeInspireTreeNode<TPayload> | undefined, index: number): Promise<void> => {\r\n if (!this._paginationHelper)\r\n throw new UiError(UiComponents.loggerCategory(this), `requestNodeLoad should only be called when pagination is enabled`);\r\n await this._paginationHelper.request(parent ? parent.id : undefined, index);\r\n };\r\n\r\n public disposeNodeCaches(node?: BeInspireTreeNode<TPayload>) {\r\n if (!node) {\r\n this._stashedPages.clear();\r\n if (this._paginationHelper)\r\n this._paginationHelper.disposeCaches(undefined);\r\n } else {\r\n node.getChildren().forEach((c) => this.disposeNodeCaches(toNode(c)));\r\n this._stashedPages.delete(node.id);\r\n if (this._paginationHelper)\r\n this._paginationHelper.disposeCaches(node.id);\r\n }\r\n }\r\n\r\n /** Called by PaginationHelper to load a page */\r\n private _pagedLoad = async (parentId: string | undefined, pageStart: number): Promise<NodesLoadResult<TPayload>> => {\r\n const parentNode = parentId ? this._tree.node(parentId) : undefined;\r\n const parentPayload = parentNode ? parentNode.payload : undefined;\r\n\r\n const handleCollapsedParent = () => {\r\n if (this._tree.props.disposeChildrenOnCollapse && parentNode && parentNode.collapsed())\r\n throw new UiError(UiComponents.loggerCategory(this), `Parent node collapsed while children were being loaded`);\r\n };\r\n\r\n let totalNodesCount: number | undefined;\r\n if (parentNode && isArrayLike(parentNode.children)) {\r\n totalNodesCount = parentNode.getChildren().length;\r\n } else if (!parentNode) {\r\n let rootNodesCount = 0;\r\n try { rootNodesCount = this._tree.nodes().length; } catch (e) { }\r\n if (rootNodesCount > 0)\r\n totalNodesCount = rootNodesCount;\r\n }\r\n if (undefined === totalNodesCount) {\r\n totalNodesCount = await this._provider.getNodesCount(parentPayload);\r\n handleCollapsedParent();\r\n }\r\n\r\n const page: PageOptions = {\r\n start: pageStart,\r\n size: this._paginationHelper!.pageSize,\r\n };\r\n const nodes = await this._provider.getNodes(parentPayload, page);\r\n handleCollapsedParent();\r\n return {\r\n totalNodesCount,\r\n nodes,\r\n };\r\n };\r\n\r\n /** Called by PaginationHelper when a page is finished loading */\r\n private _onPageLoaded = async (parentId: string | undefined, pageStart: number, result: NodesLoadResult<TPayload>) => {\r\n // stash the result\r\n const stash = {\r\n total: result.totalNodesCount,\r\n pages: [{ start: pageStart, nodes: result.nodes }],\r\n };\r\n this._stashedPages.set(parentId, stash);\r\n\r\n if (!this._initialRequests.delete(parentId)) {\r\n // because the load is going to happen almost synchronously (just\r\n // merge current nodes with stash), there's no point to show the\r\n // `loading` state and then re-render with `completed` state + nodes.\r\n // instead, just pause rendering until we have the nodes\r\n await using(this._tree.pauseRendering(), async (_r) => {\r\n // request children for `parent` to reload - the load handler\r\n // will merge the current children with stash (see `inspireLoad`)\r\n if (parentId)\r\n await this._tree.node(parentId)!.loadChildren();\r\n else\r\n await this._tree.loadNodes();\r\n });\r\n }\r\n };\r\n\r\n private createPagedNodesResult(parent: BeInspireTreeNode<TPayload> | undefined): Array<BeInspireTreeNodePayloadConfig<TPayload>> {\r\n const parentId = parent ? parent.id : undefined;\r\n const currNodes = parent ? toNodes(parent.getChildren()) : this._tree.nodes();\r\n const stash = this._stashedPages.get(parentId);\r\n if (!stash) {\r\n // nothing in stash - return current nodes\r\n return currNodes as any;\r\n }\r\n this._stashedPages.delete(parentId);\r\n\r\n // merge current nodes with stash content, fill missing\r\n // pieces with placeholders\r\n const resolvedNodes = new Array(stash.total);\r\n stash.pages.forEach((page) => {\r\n page.nodes.forEach((n, index) => {\r\n resolvedNodes[page.start + index] = this._nodesRemapper.remapOne(n);\r\n });\r\n });\r\n for (let i = 0; i < stash.total; ++i) {\r\n if (resolvedNodes[i])\r\n continue;\r\n if (currNodes[i]) {\r\n currNodes[i].resetBeInspireOverrides();\r\n resolvedNodes[i] = currNodes[i];\r\n } else {\r\n resolvedNodes[i] = this._tree.createPlaceholderNode(i, parent);\r\n }\r\n }\r\n return resolvedNodes;\r\n }\r\n\r\n /** Called by inspire-tree through CallableInstance */\r\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\r\n private inspireLoad(parent: BeInspireTreeNode<TPayload> | undefined, resolve: (nodes: Array<BeInspireTreeNodePayloadConfig<TPayload>>, totalCount: number) => any) {\r\n if (!this._paginationHelper) {\r\n // pagination is disabled - just load all nodes for the parent\r\n const payload = parent ? parent.payload : undefined;\r\n // eslint-disable-next-line @typescript-eslint/no-floating-promises\r\n this._provider.getNodes(payload).then((payloads) => {\r\n const nodes = this._nodesRemapper.remapMany(payloads);\r\n onNodesDelayLoaded(parent, nodes);\r\n resolve(nodes, nodes.length);\r\n });\r\n return;\r\n }\r\n\r\n // paginated behavior\r\n const parentId = parent ? parent.id : undefined;\r\n const complete = () => {\r\n // note: the parent might be over-written due to other sibling page loads,\r\n // so we have to make sure we're using the right parent and not the stale one\r\n const actualParent = parent ? parent.beInspireTree.node(parent.id!) : undefined;\r\n const pagedNodes = this.createPagedNodesResult(actualParent);\r\n if (actualParent && isArrayLike(actualParent.children)) {\r\n // reset so concat doesn't duplicate nodes\r\n actualParent.children = true;\r\n }\r\n onNodesDelayLoaded(actualParent, pagedNodes);\r\n if (actualParent && actualParent !== parent) {\r\n // if the `parent` is indeed stale, then calling resolve won't add child nodes\r\n // to the tree - we have to additionally add them to the actual parent that's not stale\r\n // see VSTS#152885\r\n actualParent.addChildren(pagedNodes);\r\n }\r\n resolve(pagedNodes, pagedNodes.length);\r\n };\r\n if (!this._paginationHelper.hasOrWillHaveLoadedPages(parentId)) {\r\n // parent has no children yet - initiate a request and wait\r\n this._initialRequests.add(parentId);\r\n this.requestNodeLoad(parent, 0).then(complete); // eslint-disable-line @typescript-eslint/no-floating-promises\r\n } else {\r\n complete();\r\n }\r\n }\r\n}\r\ninterface WrappedInterfaceProvider<TPayload> {\r\n // eslint-disable-next-line @typescript-eslint/prefer-function-type\r\n (parent: BeInspireTreeNode<TPayload> | undefined, resolve: (nodes: Array<BeInspireTreeNodePayloadConfig<TPayload>>, totalCount: number) => any): void;\r\n}\r\n\r\ntype PagedLoadHandler<TLoadResult> = (parentId: string | undefined, pageStart: number) => Promise<TLoadResult>;\r\ntype PageLoadedCallback<TLoadResult> = (parentId: string | undefined, pageStart: number, result: TLoadResult) => Promise<void>;\r\nclass PaginationHelper<TPageLoadResult> {\r\n public readonly pageSize: number;\r\n private _loadedPages: Map<string | undefined, Set<number>>;\r\n private _requestedPages: Map<string | undefined, Map<number, Promise<void>>>;\r\n private _loadHandler: PagedLoadHandler<TPageLoadResult>;\r\n private _onPageLoaded: PageLoadedCallback<TPageLoadResult>;\r\n\r\n constructor(pageSize: number, loadHandler: PagedLoadHandler<TPageLoadResult>, onPageLoaded: PageLoadedCallback<TPageLoadResult>) {\r\n this.pageSize = pageSize;\r\n this._loadHandler = loadHandler;\r\n this._onPageLoaded = onPageLoaded;\r\n this._loadedPages = new Map();\r\n this._requestedPages = new Map();\r\n }\r\n\r\n private getPageStartIndex(nodeIndex: number) {\r\n return nodeIndex - nodeIndex % this.pageSize;\r\n }\r\n\r\n private async createRequest(parentId: string | undefined, pageStart: number): Promise<void> {\r\n return this._loadHandler(parentId, pageStart).then(async (result) => {\r\n await this.onRequestHandled(parentId, pageStart, result);\r\n }).catch(() => {\r\n this.onRequestRejected(parentId, pageStart);\r\n });\r\n }\r\n\r\n public hasOrWillHaveLoadedPages(parentId: string | undefined): boolean {\r\n return this._loadedPages.has(parentId) || this._requestedPages.has(parentId);\r\n }\r\n\r\n public disposeCaches(parentId: string | undefined) {\r\n if (!parentId) {\r\n this._loadedPages.clear();\r\n this._requestedPages.clear();\r\n } else {\r\n this._loadedPages.delete(parentId);\r\n this._requestedPages.delete(parentId);\r\n }\r\n }\r\n\r\n public async request(parentId: string | undefined, index: number): Promise<void> {\r\n const pageStart = this.getPageStartIndex(index);\r\n const loadedPages = this._loadedPages.get(parentId);\r\n if (loadedPages !== undefined && loadedPages.has(pageStart)) {\r\n // already loaded\r\n return;\r\n }\r\n let requestedPages = this._requestedPages.get(parentId);\r\n if (requestedPages === undefined) {\r\n requestedPages = new Map();\r\n this._requestedPages.set(parentId, requestedPages);\r\n }\r\n let request = requestedPages.get(pageStart);\r\n if (!request) {\r\n request = this.createRequest(parentId, pageStart);\r\n requestedPages.set(pageStart, request);\r\n }\r\n await request;\r\n }\r\n\r\n private async onRequestHandled(parentId: string | undefined, pageStart: number, result: TPageLoadResult) {\r\n // add the request to loaded list\r\n let loadedPages = this._loadedPages.get(parentId);\r\n if (!loadedPages) {\r\n loadedPages = new Set();\r\n this._loadedPages.set(parentId, loadedPages);\r\n }\r\n loadedPages.add(pageStart);\r\n\r\n // remove request from active requests list\r\n const requestedPages = this._requestedPages.get(parentId);\r\n if (requestedPages && requestedPages.delete(pageStart)) {\r\n // callback\r\n await this._onPageLoaded(parentId, pageStart, result);\r\n }\r\n }\r\n\r\n private onRequestRejected(parentId: string | undefined, pageStart: number) {\r\n // remove request from active requests list\r\n const requestedPages = this._requestedPages.get(parentId);\r\n // istanbul ignore next\r\n if (requestedPages)\r\n requestedPages.delete(pageStart);\r\n }\r\n}\r\n"]}
@@ -1,198 +0,0 @@
1
- /** @packageDocumentation
2
- * @module Breadcrumb
3
- */
4
- import "./Breadcrumb.scss";
5
- import * as React from "react";
6
- import { PropertyRecord } from "@itwin/appui-abstract";
7
- import { CommonProps } from "@itwin/core-react";
8
- import { TreeDataProvider, TreeNodeItem } from "../tree/TreeDataProvider";
9
- import { BeInspireTree, BeInspireTreeNode } from "./BeInspireTree";
10
- import { BreadcrumbPath } from "./BreadcrumbPath";
11
- /** @internal */
12
- export declare type BreadcrumbNodeRenderer = (props: BreadcrumbNodeProps, node?: TreeNodeItem, parent?: TreeNodeItem) => React.ReactNode;
13
- /** Properties for [[Breadcrumb]] component
14
- * @beta
15
- * @deprecated in 3.0.
16
- */
17
- export interface BreadcrumbProps extends CommonProps {
18
- /** Manager to coordinate state between Breadcrumb element and BreadcrumbDetails element. */
19
- path?: BreadcrumbPath;
20
- /** Data provider for tree content */
21
- dataProvider: TreeDataProvider;
22
- /** Initial current node */
23
- initialCurrent?: TreeNodeItem;
24
- /** Character used to separate discrete tree nodes in Breadcrumb text mode. Default: "\\" */
25
- delimiter?: string;
26
- /** Width in pixels, if number, and in specified css units, if string. Default: "15em" */
27
- width?: number | string;
28
- /** Whether to show up-dir directory pop button on the left. Default: true */
29
- showUpDir?: boolean;
30
- /** Which BreadcrumbMode to initially start with. Default: BreadcrumbMode.Dropdown */
31
- initialBreadcrumbMode?: BreadcrumbMode;
32
- /** Whether to show white background and border. Default: true */
33
- background?: boolean;
34
- /** Static breadcrumb element. Default: false */
35
- staticOnly?: boolean;
36
- /** Disable plain-text input for the breadcrumb navigation. Default: false */
37
- dropdownOnly?: boolean;
38
- /** Whether to disallow navigation to leaf nodes (nodes with no children). Default: true */
39
- parentsOnly?: boolean;
40
- /** Callback triggered when child node is loaded with an asynchronous dataProvider. */
41
- onChildrenLoaded?: (parent: TreeNodeItem, children: TreeNodeItem[]) => void;
42
- /** Callback triggered when root nodes are loaded with an asynchronous dataProvider. */
43
- onRootNodesLoaded?: (nodes: TreeNodeItem[]) => void;
44
- /** @internal */
45
- renderNode?: BreadcrumbNodeRenderer;
46
- /** @internal */
47
- onRender?: () => void;
48
- /** @internal */
49
- expandedNodes?: boolean;
50
- }
51
- /** Enum for Breadcrumb Mode
52
- * @beta
53
- * @deprecated in 3.0.
54
- */
55
- export declare enum BreadcrumbMode {
56
- Dropdown = "dropdown",
57
- Input = "input"
58
- }
59
- /** @internal */
60
- interface BreadcrumbState {
61
- prev: {
62
- dataProvider: TreeDataProvider;
63
- modelReady: boolean;
64
- };
65
- model: BeInspireTree<TreeNodeItem>;
66
- modelReady: boolean;
67
- width: number | string;
68
- current?: TreeNodeItem;
69
- currentMode: BreadcrumbMode;
70
- pathString: string;
71
- }
72
- /**
73
- * Breadcrumb navigation component, with two discrete modes: text mode and dropdown mode.
74
- * Text mode includes autocomplete suggestions.
75
- * Both dropdown and text mode support arrow and tab navigation.
76
- * @beta
77
- * @deprecated in 3.0. Use Breadcrumbs from itwinui-react instead
78
- */
79
- export declare class Breadcrumb extends React.Component<BreadcrumbProps, BreadcrumbState> {
80
- private _mounted;
81
- /** @internal */
82
- static defaultProps: Partial<BreadcrumbProps>;
83
- /** @internal */
84
- readonly state: Readonly<BreadcrumbState>;
85
- /** @internal */
86
- constructor(props: BreadcrumbProps);
87
- private static createModel;
88
- /** @internal */
89
- static getDerivedStateFromProps(props: BreadcrumbProps, state: BreadcrumbState): BreadcrumbState | null;
90
- /** @internal */
91
- componentDidMount(): void;
92
- /** @internal */
93
- componentWillUnmount(): void;
94
- /** @internal */
95
- shouldComponentUpdate(nextProps: BreadcrumbProps, nextState: BreadcrumbState): boolean;
96
- /** @internal */
97
- componentDidUpdate(prevProps: BreadcrumbProps, prevState: BreadcrumbState): void;
98
- private assignModelListeners;
99
- private dropModelListeners;
100
- private assignDataProviderListeners;
101
- private dropDataProviderListeners;
102
- private _handleUpdate;
103
- private _onModelLoaded;
104
- private _onChildrenLoaded;
105
- private _onModelChanged;
106
- private _onModelReady;
107
- private _onTreeNodeChanged;
108
- private static inspireNodeFromTreeNodeItem;
109
- /** @internal */
110
- render(): React.ReactNode;
111
- private _setDropdown;
112
- private _setInput;
113
- private _handleNodeChange;
114
- }
115
- /** @internal */
116
- export interface InputSwitchProps {
117
- tree: BeInspireTree<TreeNodeItem>;
118
- node?: BeInspireTreeNode<TreeNodeItem>;
119
- pathString: string;
120
- currentMode: BreadcrumbMode;
121
- onInputStart?: () => void;
122
- onInputCancel: () => void;
123
- onNodeChange: (node?: TreeNodeItem) => void;
124
- showUpDir?: boolean;
125
- parentsOnly?: boolean;
126
- renderNode?: BreadcrumbNodeRenderer;
127
- width: number | string;
128
- delimiter: string;
129
- expandedNode?: boolean;
130
- }
131
- /** @internal */
132
- export declare class InputSwitchComponent extends React.PureComponent<InputSwitchProps> {
133
- render(): React.ReactNode;
134
- }
135
- /** @internal */
136
- export interface BreadcrumbInputProps {
137
- width: number | string;
138
- delimiter?: string;
139
- onCancel: () => void;
140
- onNodeChange: (node: TreeNodeItem | undefined) => void;
141
- parentsOnly?: boolean;
142
- tree: BeInspireTree<TreeNodeItem>;
143
- node?: BeInspireTreeNode<TreeNodeItem>;
144
- pathString: string;
145
- }
146
- /** @internal */
147
- export interface BreadcrumbInputState {
148
- autocompleting: boolean;
149
- autocompleteList: string[];
150
- messageBoxOpened: boolean;
151
- }
152
- /** @internal */
153
- export declare class BreadcrumbInput extends React.Component<BreadcrumbInputProps, BreadcrumbInputState> {
154
- private _inputElement;
155
- private _autocomplete;
156
- private _mounted;
157
- /** @internal */
158
- readonly state: Readonly<BreadcrumbInputState>;
159
- render(): JSX.Element;
160
- private _handleMessageBoxClose;
161
- /** @internal */
162
- componentDidMount(): void;
163
- /** @internal */
164
- componentWillUnmount(): void;
165
- private _handleClose;
166
- private _getAutocompleteList;
167
- private _findChildUserInput;
168
- private _findChildParentPartial;
169
- private _find;
170
- private _handleClick;
171
- private _handleKeyDown;
172
- private _handleKeyUp;
173
- private _handleChange;
174
- }
175
- /** Properties for [[BreadcrumbNode]] component
176
- * @beta
177
- * @deprecated in 3.0.
178
- */
179
- export interface BreadcrumbNodeProps {
180
- /** Icon class string */
181
- icon: string;
182
- /** Node label */
183
- label: PropertyRecord;
184
- /** @internal */
185
- onRender?: () => void;
186
- }
187
- /** Default BreadcrumbNode component
188
- * @beta
189
- * @deprecated in 3.0.
190
- */
191
- export declare class BreadcrumbNode extends React.Component<BreadcrumbNodeProps> {
192
- constructor(props: BreadcrumbNodeProps);
193
- render(): React.ReactNode;
194
- componentDidMount(): void;
195
- componentDidUpdate(): void;
196
- }
197
- export {};
198
- //# sourceMappingURL=Breadcrumb.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Breadcrumb.d.ts","sourceRoot":"","sources":["../../../../src/components-react/breadcrumb/Breadcrumb.tsx"],"names":[],"mappings":"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"}