@itwin/components-react 3.0.0-dev.82 → 3.0.0-dev.86

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 (528) hide show
  1. package/CHANGELOG.md +1362 -1362
  2. package/README.md +11 -11
  3. package/lib/cjs/components-react/UiComponents.js.map +1 -1
  4. package/lib/cjs/components-react/_target.scss +9 -9
  5. package/lib/cjs/components-react/breadcrumb/BeInspireTree.js.map +1 -1
  6. package/lib/cjs/components-react/breadcrumb/Breadcrumb.js.map +1 -1
  7. package/lib/cjs/components-react/breadcrumb/Breadcrumb.scss +196 -196
  8. package/lib/cjs/components-react/breadcrumb/BreadcrumbDetails.js.map +1 -1
  9. package/lib/cjs/components-react/breadcrumb/BreadcrumbPath.js.map +1 -1
  10. package/lib/cjs/components-react/breadcrumb/BreadcrumbTreeUtils.js.map +1 -1
  11. package/lib/cjs/components-react/common/DateUtils.js.map +1 -1
  12. package/lib/cjs/components-react/common/DelayedSpinner.js.map +1 -1
  13. package/lib/cjs/components-react/common/HighlightedText.js.map +1 -1
  14. package/lib/cjs/components-react/common/HighlightingComponentProps.js.map +1 -1
  15. package/lib/cjs/components-react/common/IImageLoader.js.map +1 -1
  16. package/lib/cjs/components-react/common/ImageRenderer.js.map +1 -1
  17. package/lib/cjs/components-react/common/Links.js.map +1 -1
  18. package/lib/cjs/components-react/common/PageOptions.js.map +1 -1
  19. package/lib/cjs/components-react/common/SubscriptionScheduler.js.map +1 -1
  20. package/lib/cjs/components-react/common/UseAsyncValue.js.map +1 -1
  21. package/lib/cjs/components-react/common/UseContextWithMandatoryProvider.js.map +1 -1
  22. package/lib/cjs/components-react/common/UseDebouncedAsyncValue.js.map +1 -1
  23. package/lib/cjs/components-react/common/UseRerender.js.map +1 -1
  24. package/lib/cjs/components-react/common/countMatchesInString.js.map +1 -1
  25. package/lib/cjs/components-react/common/selection/SelectionHandler.js.map +1 -1
  26. package/lib/cjs/components-react/common/selection/SelectionModes.js.map +1 -1
  27. package/lib/cjs/components-react/common/showhide/ShowHideDialog.js.map +1 -1
  28. package/lib/cjs/components-react/common/showhide/ShowHideItem.js.map +1 -1
  29. package/lib/cjs/components-react/common/showhide/ShowHideMenu.js.map +1 -1
  30. package/lib/cjs/components-react/converters/BooleanTypeConverter.js.map +1 -1
  31. package/lib/cjs/components-react/converters/CompositeTypeConverter.js.map +1 -1
  32. package/lib/cjs/components-react/converters/DateTimeTypeConverter.js.map +1 -1
  33. package/lib/cjs/components-react/converters/EnumTypeConverter.js.map +1 -1
  34. package/lib/cjs/components-react/converters/HexadecimalTypeConverter.js.map +1 -1
  35. package/lib/cjs/components-react/converters/NavigationPropertyTypeConverter.js.map +1 -1
  36. package/lib/cjs/components-react/converters/NumericTypeConverter.js.map +1 -1
  37. package/lib/cjs/components-react/converters/PointTypeConverter.js.map +1 -1
  38. package/lib/cjs/components-react/converters/StringTypeConverter.js.map +1 -1
  39. package/lib/cjs/components-react/converters/TypeConverter.js.map +1 -1
  40. package/lib/cjs/components-react/converters/TypeConverterManager.js.map +1 -1
  41. package/lib/cjs/components-react/converters/valuetypes/ConvertedTypes.js.map +1 -1
  42. package/lib/cjs/components-react/datepicker/DateField.js.map +1 -1
  43. package/lib/cjs/components-react/datepicker/DateField.scss +22 -22
  44. package/lib/cjs/components-react/datepicker/DatePicker.js.map +1 -1
  45. package/lib/cjs/components-react/datepicker/DatePicker.scss +170 -170
  46. package/lib/cjs/components-react/datepicker/DatePickerPopupButton.js.map +1 -1
  47. package/lib/cjs/components-react/datepicker/DatePickerPopupButton.scss +57 -57
  48. package/lib/cjs/components-react/datepicker/IntlFormatter.js.map +1 -1
  49. package/lib/cjs/components-react/datepicker/TimeField.js.map +1 -1
  50. package/lib/cjs/components-react/datepicker/TimeField.scss +73 -73
  51. package/lib/cjs/components-react/editors/BooleanEditor.js.map +1 -1
  52. package/lib/cjs/components-react/editors/BooleanEditor.scss +24 -24
  53. package/lib/cjs/components-react/editors/CustomNumberEditor.js.map +1 -1
  54. package/lib/cjs/components-react/editors/CustomNumberEditor.scss +21 -21
  55. package/lib/cjs/components-react/editors/DateTimeEditor.js.map +1 -1
  56. package/lib/cjs/components-react/editors/DateTimeEditor.scss +9 -9
  57. package/lib/cjs/components-react/editors/EditorContainer.js.map +1 -1
  58. package/lib/cjs/components-react/editors/EditorContainer.scss +6 -6
  59. package/lib/cjs/components-react/editors/EnumButtonGroupEditor.js.map +1 -1
  60. package/lib/cjs/components-react/editors/EnumButtonGroupEditor.scss +182 -182
  61. package/lib/cjs/components-react/editors/EnumEditor.js.map +1 -1
  62. package/lib/cjs/components-react/editors/EnumEditor.scss +22 -22
  63. package/lib/cjs/components-react/editors/IconEditor.js.map +1 -1
  64. package/lib/cjs/components-react/editors/IconEditor.scss +16 -16
  65. package/lib/cjs/components-react/editors/ImageCheckBoxEditor.js.map +1 -1
  66. package/lib/cjs/components-react/editors/ImageCheckBoxEditor.scss +23 -23
  67. package/lib/cjs/components-react/editors/NumericInputEditor.js.map +1 -1
  68. package/lib/cjs/components-react/editors/NumericInputEditor.scss +17 -17
  69. package/lib/cjs/components-react/editors/PopupButton.js.map +1 -1
  70. package/lib/cjs/components-react/editors/PopupButton.scss +119 -119
  71. package/lib/cjs/components-react/editors/PropertyEditorManager.js.map +1 -1
  72. package/lib/cjs/components-react/editors/SliderEditor.js.map +1 -1
  73. package/lib/cjs/components-react/editors/SliderEditor.scss +13 -13
  74. package/lib/cjs/components-react/editors/TextEditor.js.map +1 -1
  75. package/lib/cjs/components-react/editors/TextEditor.scss +21 -21
  76. package/lib/cjs/components-react/editors/TextareaEditor.js.map +1 -1
  77. package/lib/cjs/components-react/editors/TextareaEditor.scss +14 -14
  78. package/lib/cjs/components-react/editors/ThemedEnumEditor.js.map +1 -1
  79. package/lib/cjs/components-react/editors/ThemedEnumEditor.scss +82 -82
  80. package/lib/cjs/components-react/editors/ToggleEditor.js.map +1 -1
  81. package/lib/cjs/components-react/editors/ToggleEditor.scss +25 -25
  82. package/lib/cjs/components-react/editors/variables.scss +6 -6
  83. package/lib/cjs/components-react/favorite/FavoritePropertiesRenderer.js.map +1 -1
  84. package/lib/cjs/components-react/favorite/FavoritePropertyList.js.map +1 -1
  85. package/lib/cjs/components-react/filtering/FilteringInput.js.map +1 -1
  86. package/lib/cjs/components-react/filtering/FilteringInput.scss +68 -68
  87. package/lib/cjs/components-react/filtering/ResultSelector.js.map +1 -1
  88. package/lib/cjs/components-react/filtering/ResultSelector.scss +72 -72
  89. package/lib/cjs/components-react/iconpicker/IconPickerButton.js.map +1 -1
  90. package/lib/cjs/components-react/iconpicker/IconPickerButton.scss +74 -74
  91. package/lib/cjs/components-react/inputs/ParsedInput.js.map +1 -1
  92. package/lib/cjs/components-react/inputs/ParsedInput.scss +23 -23
  93. package/lib/cjs/components-react/properties/ItemStyle.js.map +1 -1
  94. package/lib/cjs/components-react/properties/LinkHandler.js.map +1 -1
  95. package/lib/cjs/components-react/properties/ValueRendererManager.js.map +1 -1
  96. package/lib/cjs/components-react/properties/renderers/ActionButtonList.js.map +1 -1
  97. package/lib/cjs/components-react/properties/renderers/ActionButtonList.scss +25 -25
  98. package/lib/cjs/components-react/properties/renderers/ActionButtonRenderer.js.map +1 -1
  99. package/lib/cjs/components-react/properties/renderers/CommonPropertyRenderer.js.map +1 -1
  100. package/lib/cjs/components-react/properties/renderers/NonPrimitivePropertyRenderer.js.map +1 -1
  101. package/lib/cjs/components-react/properties/renderers/NonPrimitivePropertyRenderer.scss +16 -16
  102. package/lib/cjs/components-react/properties/renderers/PrimitivePropertyRenderer.js.map +1 -1
  103. package/lib/cjs/components-react/properties/renderers/PropertyGridColumns.js.map +1 -1
  104. package/lib/cjs/components-react/properties/renderers/PropertyRenderer.js.map +1 -1
  105. package/lib/cjs/components-react/properties/renderers/PropertyView.js.map +1 -1
  106. package/lib/cjs/components-react/properties/renderers/PropertyView.scss +106 -106
  107. package/lib/cjs/components-react/properties/renderers/label/NonPrimitivePropertyLabelRenderer.js.map +1 -1
  108. package/lib/cjs/components-react/properties/renderers/label/PrimitivePropertyLabelRenderer.js.map +1 -1
  109. package/lib/cjs/components-react/properties/renderers/label/PropertyLabelRenderer.js.map +1 -1
  110. package/lib/cjs/components-react/properties/renderers/label/PropertyLabelRenderer.scss +87 -87
  111. package/lib/cjs/components-react/properties/renderers/value/ArrayPropertyValueRenderer.js.map +1 -1
  112. package/lib/cjs/components-react/properties/renderers/value/DoublePropertyValueRenderer.js.map +1 -1
  113. package/lib/cjs/components-react/properties/renderers/value/MergedPropertyValueRenderer.js.map +1 -1
  114. package/lib/cjs/components-react/properties/renderers/value/MultilineTextPropertyValueRenderer.js.map +1 -1
  115. package/lib/cjs/components-react/properties/renderers/value/NavigationPropertyValueRenderer.js.map +1 -1
  116. package/lib/cjs/components-react/properties/renderers/value/PrimitivePropertyValueRenderer.js.map +1 -1
  117. package/lib/cjs/components-react/properties/renderers/value/StructPropertyValueRenderer.js.map +1 -1
  118. package/lib/cjs/components-react/properties/renderers/value/UrlPropertyValueRenderer.js.map +1 -1
  119. package/lib/cjs/components-react/properties/renderers/value/WithContextStyle.js.map +1 -1
  120. package/lib/cjs/components-react/properties/renderers/value/table/ArrayValueRenderer.js.map +1 -1
  121. package/lib/cjs/components-react/properties/renderers/value/table/NonPrimitiveValueRenderer.js.map +1 -1
  122. package/lib/cjs/components-react/properties/renderers/value/table/NonPrimitiveValueRenderer.scss +10 -10
  123. package/lib/cjs/components-react/properties/renderers/value/table/StructValueRenderer.js.map +1 -1
  124. package/lib/cjs/components-react/propertygrid/PropertyCategoryRendererManager.js.map +1 -1
  125. package/lib/cjs/components-react/propertygrid/PropertyDataProvider.js.map +1 -1
  126. package/lib/cjs/components-react/propertygrid/SimplePropertyDataProvider.js.map +1 -1
  127. package/lib/cjs/components-react/propertygrid/component/ColumnResizingPropertyListPropsSupplier.js.map +1 -1
  128. package/lib/cjs/components-react/propertygrid/component/FlatItemNestedBorderWrapper.js.map +1 -1
  129. package/lib/cjs/components-react/propertygrid/component/PropertyCategoryBlock.js.map +1 -1
  130. package/lib/cjs/components-react/propertygrid/component/PropertyGrid.js.map +1 -1
  131. package/lib/cjs/components-react/propertygrid/component/PropertyGrid.scss +75 -75
  132. package/lib/cjs/components-react/propertygrid/component/PropertyGridCommons.js.map +1 -1
  133. package/lib/cjs/components-react/propertygrid/component/PropertyGridEventsRelatedPropsSupplier.js.map +1 -1
  134. package/lib/cjs/components-react/propertygrid/component/PropertyList.js.map +1 -1
  135. package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGrid.js.map +1 -1
  136. package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGrid.scss +94 -94
  137. package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.js.map +1 -1
  138. package/lib/cjs/components-react/propertygrid/dataproviders/FilteringDataProvider.js.map +1 -1
  139. package/lib/cjs/components-react/propertygrid/dataproviders/filterers/CompositePropertyDataFilterer.js.map +1 -1
  140. package/lib/cjs/components-react/propertygrid/dataproviders/filterers/DisplayValuePropertyDataFilterer.js.map +1 -1
  141. package/lib/cjs/components-react/propertygrid/dataproviders/filterers/LabelPropertyDataFilterer.js.map +1 -1
  142. package/lib/cjs/components-react/propertygrid/dataproviders/filterers/PropertyCategoryLabelFilterer.js.map +1 -1
  143. package/lib/cjs/components-react/propertygrid/dataproviders/filterers/PropertyDataFiltererBase.js.map +1 -1
  144. package/lib/cjs/components-react/propertygrid/internal/PropertyGridEventHandler.js.map +1 -1
  145. package/lib/cjs/components-react/propertygrid/internal/PropertyGridHooks.js.map +1 -1
  146. package/lib/cjs/components-react/propertygrid/internal/PropertyGridModel.js.map +1 -1
  147. package/lib/cjs/components-react/propertygrid/internal/PropertyGridModelChangeEvent.js.map +1 -1
  148. package/lib/cjs/components-react/propertygrid/internal/PropertyGridModelSource.js.map +1 -1
  149. package/lib/cjs/components-react/propertygrid/internal/flat-items/FlatGridItem.js.map +1 -1
  150. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedArrayProperty.js.map +1 -1
  151. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedPrimitiveProperty.js.map +1 -1
  152. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedStructProperty.js.map +1 -1
  153. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCustomGridCategory.js.map +1 -1
  154. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.js.map +1 -1
  155. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableGridCategory.js.map +1 -1
  156. package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableGridItemFactory.js.map +1 -1
  157. package/lib/cjs/components-react/propertygrid/internal/flat-properties/FlatNonPrimitivePropertyRenderer.js.map +1 -1
  158. package/lib/cjs/components-react/propertygrid/internal/flat-properties/FlatPropertyRenderer.js.map +1 -1
  159. package/lib/cjs/components-react/selectable-content/SelectableContent.js.map +1 -1
  160. package/lib/cjs/components-react/selectable-content/SelectableContent.scss +19 -19
  161. package/lib/cjs/components-react/table/SimpleTableDataProvider.js.map +1 -1
  162. package/lib/cjs/components-react/table/TableDataProvider.js.map +1 -1
  163. package/lib/cjs/components-react/table/columnfiltering/ColumnFiltering.js.map +1 -1
  164. package/lib/cjs/components-react/table/columnfiltering/ColumnFiltering.scss +78 -78
  165. package/lib/cjs/components-react/table/columnfiltering/ColumnFilteringUtilities.js.map +1 -1
  166. package/lib/cjs/components-react/table/columnfiltering/DataGridFilterParser.d.ts.map +1 -1
  167. package/lib/cjs/components-react/table/columnfiltering/DataGridFilterParser.js +1 -0
  168. package/lib/cjs/components-react/table/columnfiltering/DataGridFilterParser.js.map +1 -1
  169. package/lib/cjs/components-react/table/columnfiltering/FilterableColumnBase.js.map +1 -1
  170. package/lib/cjs/components-react/table/columnfiltering/TableColumnFilterDescriptor.js.map +1 -1
  171. package/lib/cjs/components-react/table/columnfiltering/TableFilterDescriptor.js.map +1 -1
  172. package/lib/cjs/components-react/table/columnfiltering/TableFilterDescriptorCollection.js.map +1 -1
  173. package/lib/cjs/components-react/table/columnfiltering/data-grid-addons/AutoCompleteFilter.js.map +1 -1
  174. package/lib/cjs/components-react/table/columnfiltering/data-grid-addons/MultiSelectFilter.js.map +1 -1
  175. package/lib/cjs/components-react/table/columnfiltering/data-grid-addons/NumericFilter.d.ts.map +1 -1
  176. package/lib/cjs/components-react/table/columnfiltering/data-grid-addons/NumericFilter.js +1 -0
  177. package/lib/cjs/components-react/table/columnfiltering/data-grid-addons/NumericFilter.js.map +1 -1
  178. package/lib/cjs/components-react/table/columnfiltering/data-grid-addons/SingleSelectFilter.js.map +1 -1
  179. package/lib/cjs/components-react/table/columnfiltering/multi-value-filter/MultiValueFilter.d.ts.map +1 -1
  180. package/lib/cjs/components-react/table/columnfiltering/multi-value-filter/MultiValueFilter.js +1 -0
  181. package/lib/cjs/components-react/table/columnfiltering/multi-value-filter/MultiValueFilter.js.map +1 -1
  182. package/lib/cjs/components-react/table/columnfiltering/multi-value-filter/MultiValueFilter.scss +35 -35
  183. package/lib/cjs/components-react/table/component/ColumnDragLayer.js.map +1 -1
  184. package/lib/cjs/components-react/table/component/DragDropHeaderCell.js.map +1 -1
  185. package/lib/cjs/components-react/table/component/Table.d.ts +8 -8
  186. package/lib/cjs/components-react/table/component/Table.d.ts.map +1 -1
  187. package/lib/cjs/components-react/table/component/Table.js +3 -2
  188. package/lib/cjs/components-react/table/component/Table.js.map +1 -1
  189. package/lib/cjs/components-react/table/component/Table.scss +200 -200
  190. package/lib/cjs/components-react/table/component/TableCell.d.ts +5 -5
  191. package/lib/cjs/components-react/table/component/TableCell.d.ts.map +1 -1
  192. package/lib/cjs/components-react/table/component/TableCell.js +3 -2
  193. package/lib/cjs/components-react/table/component/TableCell.js.map +1 -1
  194. package/lib/cjs/components-react/table/component/TableCell.scss +48 -48
  195. package/lib/cjs/components-react/table/component/TableColumn.d.ts +1 -1
  196. package/lib/cjs/components-react/table/component/TableColumn.d.ts.map +1 -1
  197. package/lib/cjs/components-react/table/component/TableColumn.js +1 -0
  198. package/lib/cjs/components-react/table/component/TableColumn.js.map +1 -1
  199. package/lib/cjs/components-react/table/component/dragdrop/BeDragDropContext.js.map +1 -1
  200. package/lib/cjs/components-react/table/component/dragdrop/DragDropDef.js.map +1 -1
  201. package/lib/cjs/components-react/table/component/dragdrop/withDragSource.js.map +1 -1
  202. package/lib/cjs/components-react/table/component/dragdrop/withDropTarget.js.map +1 -1
  203. package/lib/cjs/components-react/toolbar/Item.js.map +1 -1
  204. package/lib/cjs/components-react/toolbar/Item.scss +122 -122
  205. package/lib/cjs/components-react/toolbar/ItemWrapper.js.map +1 -1
  206. package/lib/cjs/components-react/toolbar/ItemWrapper.scss +10 -10
  207. package/lib/cjs/components-react/toolbar/Items.js.map +1 -1
  208. package/lib/cjs/components-react/toolbar/Items.scss +94 -94
  209. package/lib/cjs/components-react/toolbar/Overflow.js.map +1 -1
  210. package/lib/cjs/components-react/toolbar/Overflow.scss +48 -48
  211. package/lib/cjs/components-react/toolbar/OverflowPanel.js.map +1 -1
  212. package/lib/cjs/components-react/toolbar/OverflowPanel.scss +37 -37
  213. package/lib/cjs/components-react/toolbar/PopupItem.js.map +1 -1
  214. package/lib/cjs/components-react/toolbar/PopupItem.scss +75 -75
  215. package/lib/cjs/components-react/toolbar/PopupItemWithDrag.js.map +1 -1
  216. package/lib/cjs/components-react/toolbar/PopupItemsPanel.js.map +1 -1
  217. package/lib/cjs/components-react/toolbar/Toolbar.js.map +1 -1
  218. package/lib/cjs/components-react/toolbar/Toolbar.scss +18 -18
  219. package/lib/cjs/components-react/toolbar/ToolbarWithOverflow.js.map +1 -1
  220. package/lib/cjs/components-react/toolbar/_variables.scss +34 -34
  221. package/lib/cjs/components-react/toolbar/groupPanel/BackArrow.js.map +1 -1
  222. package/lib/cjs/components-react/toolbar/groupPanel/BackArrow.scss +44 -44
  223. package/lib/cjs/components-react/toolbar/groupPanel/Column.js.map +1 -1
  224. package/lib/cjs/components-react/toolbar/groupPanel/Column.scss +9 -9
  225. package/lib/cjs/components-react/toolbar/groupPanel/Columns.js.map +1 -1
  226. package/lib/cjs/components-react/toolbar/groupPanel/Columns.scss +10 -10
  227. package/lib/cjs/components-react/toolbar/groupPanel/Panel.js.map +1 -1
  228. package/lib/cjs/components-react/toolbar/groupPanel/Panel.scss +17 -17
  229. package/lib/cjs/components-react/toolbar/groupPanel/Title.js.map +1 -1
  230. package/lib/cjs/components-react/toolbar/groupPanel/Title.scss +34 -34
  231. package/lib/cjs/components-react/toolbar/groupPanel/_variables.scss +16 -16
  232. package/lib/cjs/components-react/toolbar/groupPanel/tool/Expander.js.map +1 -1
  233. package/lib/cjs/components-react/toolbar/groupPanel/tool/Expander.scss +29 -29
  234. package/lib/cjs/components-react/toolbar/groupPanel/tool/Tool.js.map +1 -1
  235. package/lib/cjs/components-react/toolbar/groupPanel/tool/Tool.scss +146 -146
  236. package/lib/cjs/components-react/toolbar/groupPanel/tool/_variables.scss +12 -12
  237. package/lib/cjs/components-react/toolbar/useDragInteraction.js.map +1 -1
  238. package/lib/cjs/components-react/toolbar/utilities/Direction.js.map +1 -1
  239. package/lib/cjs/components-react/tree/HighlightingEngine.js.map +1 -1
  240. package/lib/cjs/components-react/tree/HighlightingEngine.scss +7 -7
  241. package/lib/cjs/components-react/tree/ImageLoader.js.map +1 -1
  242. package/lib/cjs/components-react/tree/SimpleTreeDataProvider.js.map +1 -1
  243. package/lib/cjs/components-react/tree/TreeComponentTestId.js.map +1 -1
  244. package/lib/cjs/components-react/tree/TreeDataProvider.js.map +1 -1
  245. package/lib/cjs/components-react/tree/controlled/Observable.js.map +1 -1
  246. package/lib/cjs/components-react/tree/controlled/TreeActions.js.map +1 -1
  247. package/lib/cjs/components-react/tree/controlled/TreeEventDispatcher.js.map +1 -1
  248. package/lib/cjs/components-react/tree/controlled/TreeEventHandler.js.map +1 -1
  249. package/lib/cjs/components-react/tree/controlled/TreeEvents.js.map +1 -1
  250. package/lib/cjs/components-react/tree/controlled/TreeHooks.js.map +1 -1
  251. package/lib/cjs/components-react/tree/controlled/TreeModel.js.map +1 -1
  252. package/lib/cjs/components-react/tree/controlled/TreeModelSource.js.map +1 -1
  253. package/lib/cjs/components-react/tree/controlled/TreeNodeLoader.js.map +1 -1
  254. package/lib/cjs/components-react/tree/controlled/component/ControlledTree.js.map +1 -1
  255. package/lib/cjs/components-react/tree/controlled/component/ControlledTree.scss +102 -102
  256. package/lib/cjs/components-react/tree/controlled/component/NodeContent.js.map +1 -1
  257. package/lib/cjs/components-react/tree/controlled/component/NodeContent.scss +28 -28
  258. package/lib/cjs/components-react/tree/controlled/component/TreeNodeEditor.js.map +1 -1
  259. package/lib/cjs/components-react/tree/controlled/component/TreeNodeRenderer.js.map +1 -1
  260. package/lib/cjs/components-react/tree/controlled/component/TreeRenderer.js.map +1 -1
  261. package/lib/cjs/components-react/tree/controlled/internal/SparseTree.js.map +1 -1
  262. package/lib/cjs/components-react/tree/controlled/internal/TreeModelMutator.js.map +1 -1
  263. package/lib/cjs/components-react/tree/controlled/internal/TreeSelectionManager.js.map +1 -1
  264. package/lib/cjs/components-react.js.map +1 -1
  265. package/lib/esm/components-react/UiComponents.js.map +1 -1
  266. package/lib/esm/components-react/_target.scss +9 -9
  267. package/lib/esm/components-react/breadcrumb/BeInspireTree.js.map +1 -1
  268. package/lib/esm/components-react/breadcrumb/Breadcrumb.js.map +1 -1
  269. package/lib/esm/components-react/breadcrumb/Breadcrumb.scss +196 -196
  270. package/lib/esm/components-react/breadcrumb/BreadcrumbDetails.js.map +1 -1
  271. package/lib/esm/components-react/breadcrumb/BreadcrumbPath.js.map +1 -1
  272. package/lib/esm/components-react/breadcrumb/BreadcrumbTreeUtils.js.map +1 -1
  273. package/lib/esm/components-react/common/DateUtils.js.map +1 -1
  274. package/lib/esm/components-react/common/DelayedSpinner.js.map +1 -1
  275. package/lib/esm/components-react/common/HighlightedText.js.map +1 -1
  276. package/lib/esm/components-react/common/HighlightingComponentProps.js.map +1 -1
  277. package/lib/esm/components-react/common/IImageLoader.js.map +1 -1
  278. package/lib/esm/components-react/common/ImageRenderer.js.map +1 -1
  279. package/lib/esm/components-react/common/Links.js.map +1 -1
  280. package/lib/esm/components-react/common/PageOptions.js.map +1 -1
  281. package/lib/esm/components-react/common/SubscriptionScheduler.js.map +1 -1
  282. package/lib/esm/components-react/common/UseAsyncValue.js.map +1 -1
  283. package/lib/esm/components-react/common/UseContextWithMandatoryProvider.js.map +1 -1
  284. package/lib/esm/components-react/common/UseDebouncedAsyncValue.js.map +1 -1
  285. package/lib/esm/components-react/common/UseRerender.js.map +1 -1
  286. package/lib/esm/components-react/common/countMatchesInString.js.map +1 -1
  287. package/lib/esm/components-react/common/selection/SelectionHandler.js.map +1 -1
  288. package/lib/esm/components-react/common/selection/SelectionModes.js.map +1 -1
  289. package/lib/esm/components-react/common/showhide/ShowHideDialog.js.map +1 -1
  290. package/lib/esm/components-react/common/showhide/ShowHideItem.js.map +1 -1
  291. package/lib/esm/components-react/common/showhide/ShowHideMenu.js.map +1 -1
  292. package/lib/esm/components-react/converters/BooleanTypeConverter.js.map +1 -1
  293. package/lib/esm/components-react/converters/CompositeTypeConverter.js.map +1 -1
  294. package/lib/esm/components-react/converters/DateTimeTypeConverter.js.map +1 -1
  295. package/lib/esm/components-react/converters/EnumTypeConverter.js.map +1 -1
  296. package/lib/esm/components-react/converters/HexadecimalTypeConverter.js.map +1 -1
  297. package/lib/esm/components-react/converters/NavigationPropertyTypeConverter.js.map +1 -1
  298. package/lib/esm/components-react/converters/NumericTypeConverter.js.map +1 -1
  299. package/lib/esm/components-react/converters/PointTypeConverter.js.map +1 -1
  300. package/lib/esm/components-react/converters/StringTypeConverter.js.map +1 -1
  301. package/lib/esm/components-react/converters/TypeConverter.js.map +1 -1
  302. package/lib/esm/components-react/converters/TypeConverterManager.js.map +1 -1
  303. package/lib/esm/components-react/converters/valuetypes/ConvertedTypes.js.map +1 -1
  304. package/lib/esm/components-react/datepicker/DateField.js.map +1 -1
  305. package/lib/esm/components-react/datepicker/DateField.scss +22 -22
  306. package/lib/esm/components-react/datepicker/DatePicker.js.map +1 -1
  307. package/lib/esm/components-react/datepicker/DatePicker.scss +170 -170
  308. package/lib/esm/components-react/datepicker/DatePickerPopupButton.js.map +1 -1
  309. package/lib/esm/components-react/datepicker/DatePickerPopupButton.scss +57 -57
  310. package/lib/esm/components-react/datepicker/IntlFormatter.js.map +1 -1
  311. package/lib/esm/components-react/datepicker/TimeField.js.map +1 -1
  312. package/lib/esm/components-react/datepicker/TimeField.scss +73 -73
  313. package/lib/esm/components-react/editors/BooleanEditor.js.map +1 -1
  314. package/lib/esm/components-react/editors/BooleanEditor.scss +24 -24
  315. package/lib/esm/components-react/editors/CustomNumberEditor.js.map +1 -1
  316. package/lib/esm/components-react/editors/CustomNumberEditor.scss +21 -21
  317. package/lib/esm/components-react/editors/DateTimeEditor.js.map +1 -1
  318. package/lib/esm/components-react/editors/DateTimeEditor.scss +9 -9
  319. package/lib/esm/components-react/editors/EditorContainer.js.map +1 -1
  320. package/lib/esm/components-react/editors/EditorContainer.scss +6 -6
  321. package/lib/esm/components-react/editors/EnumButtonGroupEditor.js.map +1 -1
  322. package/lib/esm/components-react/editors/EnumButtonGroupEditor.scss +182 -182
  323. package/lib/esm/components-react/editors/EnumEditor.js.map +1 -1
  324. package/lib/esm/components-react/editors/EnumEditor.scss +22 -22
  325. package/lib/esm/components-react/editors/IconEditor.js.map +1 -1
  326. package/lib/esm/components-react/editors/IconEditor.scss +16 -16
  327. package/lib/esm/components-react/editors/ImageCheckBoxEditor.js.map +1 -1
  328. package/lib/esm/components-react/editors/ImageCheckBoxEditor.scss +23 -23
  329. package/lib/esm/components-react/editors/NumericInputEditor.js.map +1 -1
  330. package/lib/esm/components-react/editors/NumericInputEditor.scss +17 -17
  331. package/lib/esm/components-react/editors/PopupButton.js.map +1 -1
  332. package/lib/esm/components-react/editors/PopupButton.scss +119 -119
  333. package/lib/esm/components-react/editors/PropertyEditorManager.js.map +1 -1
  334. package/lib/esm/components-react/editors/SliderEditor.js.map +1 -1
  335. package/lib/esm/components-react/editors/SliderEditor.scss +13 -13
  336. package/lib/esm/components-react/editors/TextEditor.js.map +1 -1
  337. package/lib/esm/components-react/editors/TextEditor.scss +21 -21
  338. package/lib/esm/components-react/editors/TextareaEditor.js.map +1 -1
  339. package/lib/esm/components-react/editors/TextareaEditor.scss +14 -14
  340. package/lib/esm/components-react/editors/ThemedEnumEditor.js.map +1 -1
  341. package/lib/esm/components-react/editors/ThemedEnumEditor.scss +82 -82
  342. package/lib/esm/components-react/editors/ToggleEditor.js.map +1 -1
  343. package/lib/esm/components-react/editors/ToggleEditor.scss +25 -25
  344. package/lib/esm/components-react/editors/variables.scss +6 -6
  345. package/lib/esm/components-react/favorite/FavoritePropertiesRenderer.js.map +1 -1
  346. package/lib/esm/components-react/favorite/FavoritePropertyList.js.map +1 -1
  347. package/lib/esm/components-react/filtering/FilteringInput.js.map +1 -1
  348. package/lib/esm/components-react/filtering/FilteringInput.scss +68 -68
  349. package/lib/esm/components-react/filtering/ResultSelector.js.map +1 -1
  350. package/lib/esm/components-react/filtering/ResultSelector.scss +72 -72
  351. package/lib/esm/components-react/iconpicker/IconPickerButton.js.map +1 -1
  352. package/lib/esm/components-react/iconpicker/IconPickerButton.scss +74 -74
  353. package/lib/esm/components-react/inputs/ParsedInput.js.map +1 -1
  354. package/lib/esm/components-react/inputs/ParsedInput.scss +23 -23
  355. package/lib/esm/components-react/properties/ItemStyle.js.map +1 -1
  356. package/lib/esm/components-react/properties/LinkHandler.js.map +1 -1
  357. package/lib/esm/components-react/properties/ValueRendererManager.js.map +1 -1
  358. package/lib/esm/components-react/properties/renderers/ActionButtonList.js.map +1 -1
  359. package/lib/esm/components-react/properties/renderers/ActionButtonList.scss +25 -25
  360. package/lib/esm/components-react/properties/renderers/ActionButtonRenderer.js.map +1 -1
  361. package/lib/esm/components-react/properties/renderers/CommonPropertyRenderer.js.map +1 -1
  362. package/lib/esm/components-react/properties/renderers/NonPrimitivePropertyRenderer.js.map +1 -1
  363. package/lib/esm/components-react/properties/renderers/NonPrimitivePropertyRenderer.scss +16 -16
  364. package/lib/esm/components-react/properties/renderers/PrimitivePropertyRenderer.js.map +1 -1
  365. package/lib/esm/components-react/properties/renderers/PropertyGridColumns.js.map +1 -1
  366. package/lib/esm/components-react/properties/renderers/PropertyRenderer.js.map +1 -1
  367. package/lib/esm/components-react/properties/renderers/PropertyView.js.map +1 -1
  368. package/lib/esm/components-react/properties/renderers/PropertyView.scss +106 -106
  369. package/lib/esm/components-react/properties/renderers/label/NonPrimitivePropertyLabelRenderer.js.map +1 -1
  370. package/lib/esm/components-react/properties/renderers/label/PrimitivePropertyLabelRenderer.js.map +1 -1
  371. package/lib/esm/components-react/properties/renderers/label/PropertyLabelRenderer.js.map +1 -1
  372. package/lib/esm/components-react/properties/renderers/label/PropertyLabelRenderer.scss +87 -87
  373. package/lib/esm/components-react/properties/renderers/value/ArrayPropertyValueRenderer.js.map +1 -1
  374. package/lib/esm/components-react/properties/renderers/value/DoublePropertyValueRenderer.js.map +1 -1
  375. package/lib/esm/components-react/properties/renderers/value/MergedPropertyValueRenderer.js.map +1 -1
  376. package/lib/esm/components-react/properties/renderers/value/MultilineTextPropertyValueRenderer.js.map +1 -1
  377. package/lib/esm/components-react/properties/renderers/value/NavigationPropertyValueRenderer.js.map +1 -1
  378. package/lib/esm/components-react/properties/renderers/value/PrimitivePropertyValueRenderer.js.map +1 -1
  379. package/lib/esm/components-react/properties/renderers/value/StructPropertyValueRenderer.js.map +1 -1
  380. package/lib/esm/components-react/properties/renderers/value/UrlPropertyValueRenderer.js.map +1 -1
  381. package/lib/esm/components-react/properties/renderers/value/WithContextStyle.js.map +1 -1
  382. package/lib/esm/components-react/properties/renderers/value/table/ArrayValueRenderer.js.map +1 -1
  383. package/lib/esm/components-react/properties/renderers/value/table/NonPrimitiveValueRenderer.js.map +1 -1
  384. package/lib/esm/components-react/properties/renderers/value/table/NonPrimitiveValueRenderer.scss +10 -10
  385. package/lib/esm/components-react/properties/renderers/value/table/StructValueRenderer.js.map +1 -1
  386. package/lib/esm/components-react/propertygrid/PropertyCategoryRendererManager.js.map +1 -1
  387. package/lib/esm/components-react/propertygrid/PropertyDataProvider.js.map +1 -1
  388. package/lib/esm/components-react/propertygrid/SimplePropertyDataProvider.js.map +1 -1
  389. package/lib/esm/components-react/propertygrid/component/ColumnResizingPropertyListPropsSupplier.js.map +1 -1
  390. package/lib/esm/components-react/propertygrid/component/FlatItemNestedBorderWrapper.js.map +1 -1
  391. package/lib/esm/components-react/propertygrid/component/PropertyCategoryBlock.js.map +1 -1
  392. package/lib/esm/components-react/propertygrid/component/PropertyGrid.js.map +1 -1
  393. package/lib/esm/components-react/propertygrid/component/PropertyGrid.scss +75 -75
  394. package/lib/esm/components-react/propertygrid/component/PropertyGridCommons.js.map +1 -1
  395. package/lib/esm/components-react/propertygrid/component/PropertyGridEventsRelatedPropsSupplier.js.map +1 -1
  396. package/lib/esm/components-react/propertygrid/component/PropertyList.js.map +1 -1
  397. package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGrid.js.map +1 -1
  398. package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGrid.scss +94 -94
  399. package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.js.map +1 -1
  400. package/lib/esm/components-react/propertygrid/dataproviders/FilteringDataProvider.js.map +1 -1
  401. package/lib/esm/components-react/propertygrid/dataproviders/filterers/CompositePropertyDataFilterer.js.map +1 -1
  402. package/lib/esm/components-react/propertygrid/dataproviders/filterers/DisplayValuePropertyDataFilterer.js.map +1 -1
  403. package/lib/esm/components-react/propertygrid/dataproviders/filterers/LabelPropertyDataFilterer.js.map +1 -1
  404. package/lib/esm/components-react/propertygrid/dataproviders/filterers/PropertyCategoryLabelFilterer.js.map +1 -1
  405. package/lib/esm/components-react/propertygrid/dataproviders/filterers/PropertyDataFiltererBase.js.map +1 -1
  406. package/lib/esm/components-react/propertygrid/internal/PropertyGridEventHandler.js.map +1 -1
  407. package/lib/esm/components-react/propertygrid/internal/PropertyGridHooks.js.map +1 -1
  408. package/lib/esm/components-react/propertygrid/internal/PropertyGridModel.js.map +1 -1
  409. package/lib/esm/components-react/propertygrid/internal/PropertyGridModelChangeEvent.js.map +1 -1
  410. package/lib/esm/components-react/propertygrid/internal/PropertyGridModelSource.js.map +1 -1
  411. package/lib/esm/components-react/propertygrid/internal/flat-items/FlatGridItem.js.map +1 -1
  412. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedArrayProperty.js.map +1 -1
  413. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedPrimitiveProperty.js.map +1 -1
  414. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedStructProperty.js.map +1 -1
  415. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCustomGridCategory.js.map +1 -1
  416. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.js.map +1 -1
  417. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableGridCategory.js.map +1 -1
  418. package/lib/esm/components-react/propertygrid/internal/flat-items/MutableGridItemFactory.js.map +1 -1
  419. package/lib/esm/components-react/propertygrid/internal/flat-properties/FlatNonPrimitivePropertyRenderer.js.map +1 -1
  420. package/lib/esm/components-react/propertygrid/internal/flat-properties/FlatPropertyRenderer.js.map +1 -1
  421. package/lib/esm/components-react/selectable-content/SelectableContent.js.map +1 -1
  422. package/lib/esm/components-react/selectable-content/SelectableContent.scss +19 -19
  423. package/lib/esm/components-react/table/SimpleTableDataProvider.js.map +1 -1
  424. package/lib/esm/components-react/table/TableDataProvider.js.map +1 -1
  425. package/lib/esm/components-react/table/columnfiltering/ColumnFiltering.js.map +1 -1
  426. package/lib/esm/components-react/table/columnfiltering/ColumnFiltering.scss +78 -78
  427. package/lib/esm/components-react/table/columnfiltering/ColumnFilteringUtilities.js.map +1 -1
  428. package/lib/esm/components-react/table/columnfiltering/DataGridFilterParser.d.ts.map +1 -1
  429. package/lib/esm/components-react/table/columnfiltering/DataGridFilterParser.js +1 -0
  430. package/lib/esm/components-react/table/columnfiltering/DataGridFilterParser.js.map +1 -1
  431. package/lib/esm/components-react/table/columnfiltering/FilterableColumnBase.js.map +1 -1
  432. package/lib/esm/components-react/table/columnfiltering/TableColumnFilterDescriptor.js.map +1 -1
  433. package/lib/esm/components-react/table/columnfiltering/TableFilterDescriptor.js.map +1 -1
  434. package/lib/esm/components-react/table/columnfiltering/TableFilterDescriptorCollection.js.map +1 -1
  435. package/lib/esm/components-react/table/columnfiltering/data-grid-addons/AutoCompleteFilter.js.map +1 -1
  436. package/lib/esm/components-react/table/columnfiltering/data-grid-addons/MultiSelectFilter.js.map +1 -1
  437. package/lib/esm/components-react/table/columnfiltering/data-grid-addons/NumericFilter.d.ts.map +1 -1
  438. package/lib/esm/components-react/table/columnfiltering/data-grid-addons/NumericFilter.js +1 -0
  439. package/lib/esm/components-react/table/columnfiltering/data-grid-addons/NumericFilter.js.map +1 -1
  440. package/lib/esm/components-react/table/columnfiltering/data-grid-addons/SingleSelectFilter.js.map +1 -1
  441. package/lib/esm/components-react/table/columnfiltering/multi-value-filter/MultiValueFilter.d.ts.map +1 -1
  442. package/lib/esm/components-react/table/columnfiltering/multi-value-filter/MultiValueFilter.js +1 -0
  443. package/lib/esm/components-react/table/columnfiltering/multi-value-filter/MultiValueFilter.js.map +1 -1
  444. package/lib/esm/components-react/table/columnfiltering/multi-value-filter/MultiValueFilter.scss +35 -35
  445. package/lib/esm/components-react/table/component/ColumnDragLayer.js.map +1 -1
  446. package/lib/esm/components-react/table/component/DragDropHeaderCell.js.map +1 -1
  447. package/lib/esm/components-react/table/component/Table.d.ts +8 -8
  448. package/lib/esm/components-react/table/component/Table.d.ts.map +1 -1
  449. package/lib/esm/components-react/table/component/Table.js +3 -2
  450. package/lib/esm/components-react/table/component/Table.js.map +1 -1
  451. package/lib/esm/components-react/table/component/Table.scss +200 -200
  452. package/lib/esm/components-react/table/component/TableCell.d.ts +5 -5
  453. package/lib/esm/components-react/table/component/TableCell.d.ts.map +1 -1
  454. package/lib/esm/components-react/table/component/TableCell.js +3 -2
  455. package/lib/esm/components-react/table/component/TableCell.js.map +1 -1
  456. package/lib/esm/components-react/table/component/TableCell.scss +48 -48
  457. package/lib/esm/components-react/table/component/TableColumn.d.ts +1 -1
  458. package/lib/esm/components-react/table/component/TableColumn.d.ts.map +1 -1
  459. package/lib/esm/components-react/table/component/TableColumn.js +1 -0
  460. package/lib/esm/components-react/table/component/TableColumn.js.map +1 -1
  461. package/lib/esm/components-react/table/component/dragdrop/BeDragDropContext.js.map +1 -1
  462. package/lib/esm/components-react/table/component/dragdrop/DragDropDef.js.map +1 -1
  463. package/lib/esm/components-react/table/component/dragdrop/withDragSource.js.map +1 -1
  464. package/lib/esm/components-react/table/component/dragdrop/withDropTarget.js.map +1 -1
  465. package/lib/esm/components-react/toolbar/Item.js.map +1 -1
  466. package/lib/esm/components-react/toolbar/Item.scss +122 -122
  467. package/lib/esm/components-react/toolbar/ItemWrapper.js.map +1 -1
  468. package/lib/esm/components-react/toolbar/ItemWrapper.scss +10 -10
  469. package/lib/esm/components-react/toolbar/Items.js.map +1 -1
  470. package/lib/esm/components-react/toolbar/Items.scss +94 -94
  471. package/lib/esm/components-react/toolbar/Overflow.js.map +1 -1
  472. package/lib/esm/components-react/toolbar/Overflow.scss +48 -48
  473. package/lib/esm/components-react/toolbar/OverflowPanel.js.map +1 -1
  474. package/lib/esm/components-react/toolbar/OverflowPanel.scss +37 -37
  475. package/lib/esm/components-react/toolbar/PopupItem.js.map +1 -1
  476. package/lib/esm/components-react/toolbar/PopupItem.scss +75 -75
  477. package/lib/esm/components-react/toolbar/PopupItemWithDrag.js.map +1 -1
  478. package/lib/esm/components-react/toolbar/PopupItemsPanel.js.map +1 -1
  479. package/lib/esm/components-react/toolbar/Toolbar.js.map +1 -1
  480. package/lib/esm/components-react/toolbar/Toolbar.scss +18 -18
  481. package/lib/esm/components-react/toolbar/ToolbarWithOverflow.js.map +1 -1
  482. package/lib/esm/components-react/toolbar/_variables.scss +34 -34
  483. package/lib/esm/components-react/toolbar/groupPanel/BackArrow.js.map +1 -1
  484. package/lib/esm/components-react/toolbar/groupPanel/BackArrow.scss +44 -44
  485. package/lib/esm/components-react/toolbar/groupPanel/Column.js.map +1 -1
  486. package/lib/esm/components-react/toolbar/groupPanel/Column.scss +9 -9
  487. package/lib/esm/components-react/toolbar/groupPanel/Columns.js.map +1 -1
  488. package/lib/esm/components-react/toolbar/groupPanel/Columns.scss +10 -10
  489. package/lib/esm/components-react/toolbar/groupPanel/Panel.js.map +1 -1
  490. package/lib/esm/components-react/toolbar/groupPanel/Panel.scss +17 -17
  491. package/lib/esm/components-react/toolbar/groupPanel/Title.js.map +1 -1
  492. package/lib/esm/components-react/toolbar/groupPanel/Title.scss +34 -34
  493. package/lib/esm/components-react/toolbar/groupPanel/_variables.scss +16 -16
  494. package/lib/esm/components-react/toolbar/groupPanel/tool/Expander.js.map +1 -1
  495. package/lib/esm/components-react/toolbar/groupPanel/tool/Expander.scss +29 -29
  496. package/lib/esm/components-react/toolbar/groupPanel/tool/Tool.js.map +1 -1
  497. package/lib/esm/components-react/toolbar/groupPanel/tool/Tool.scss +146 -146
  498. package/lib/esm/components-react/toolbar/groupPanel/tool/_variables.scss +12 -12
  499. package/lib/esm/components-react/toolbar/useDragInteraction.js.map +1 -1
  500. package/lib/esm/components-react/toolbar/utilities/Direction.js.map +1 -1
  501. package/lib/esm/components-react/tree/HighlightingEngine.js.map +1 -1
  502. package/lib/esm/components-react/tree/HighlightingEngine.scss +7 -7
  503. package/lib/esm/components-react/tree/ImageLoader.js.map +1 -1
  504. package/lib/esm/components-react/tree/SimpleTreeDataProvider.js.map +1 -1
  505. package/lib/esm/components-react/tree/TreeComponentTestId.js.map +1 -1
  506. package/lib/esm/components-react/tree/TreeDataProvider.js.map +1 -1
  507. package/lib/esm/components-react/tree/controlled/Observable.js.map +1 -1
  508. package/lib/esm/components-react/tree/controlled/TreeActions.js.map +1 -1
  509. package/lib/esm/components-react/tree/controlled/TreeEventDispatcher.js.map +1 -1
  510. package/lib/esm/components-react/tree/controlled/TreeEventHandler.js.map +1 -1
  511. package/lib/esm/components-react/tree/controlled/TreeEvents.js.map +1 -1
  512. package/lib/esm/components-react/tree/controlled/TreeHooks.js.map +1 -1
  513. package/lib/esm/components-react/tree/controlled/TreeModel.js.map +1 -1
  514. package/lib/esm/components-react/tree/controlled/TreeModelSource.js.map +1 -1
  515. package/lib/esm/components-react/tree/controlled/TreeNodeLoader.js.map +1 -1
  516. package/lib/esm/components-react/tree/controlled/component/ControlledTree.js.map +1 -1
  517. package/lib/esm/components-react/tree/controlled/component/ControlledTree.scss +102 -102
  518. package/lib/esm/components-react/tree/controlled/component/NodeContent.js.map +1 -1
  519. package/lib/esm/components-react/tree/controlled/component/NodeContent.scss +28 -28
  520. package/lib/esm/components-react/tree/controlled/component/TreeNodeEditor.js.map +1 -1
  521. package/lib/esm/components-react/tree/controlled/component/TreeNodeRenderer.js.map +1 -1
  522. package/lib/esm/components-react/tree/controlled/component/TreeRenderer.js.map +1 -1
  523. package/lib/esm/components-react/tree/controlled/internal/SparseTree.js.map +1 -1
  524. package/lib/esm/components-react/tree/controlled/internal/TreeModelMutator.js.map +1 -1
  525. package/lib/esm/components-react/tree/controlled/internal/TreeSelectionManager.js.map +1 -1
  526. package/lib/esm/components-react.js.map +1 -1
  527. package/lib/public/locales/en/UiComponents.json +123 -123
  528. package/package.json +12 -12
@@ -1 +1 @@
1
- {"version":3,"file":"Breadcrumb.js","sourceRoot":"","sources":["../../../../src/components-react/breadcrumb/Breadcrumb.tsx"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Breadcrumb\n */\n\nimport \"./Breadcrumb.scss\";\nimport classnames from \"classnames\";\nimport * as React from \"react\";\nimport { using } from \"@itwin/core-bentley\";\nimport { MessageSeverity, PropertyRecord, SpecialKey } from \"@itwin/appui-abstract\";\nimport { CommonProps, ContextMenu, ContextMenuItem, DialogButtonType, MessageBox, SplitButton, withOnOutsideClick } from \"@itwin/core-react\";\nimport { PropertyValueRendererManager } from \"../properties/ValueRendererManager\";\nimport {\n DelayLoadedTreeNodeItem, ImmediatelyLoadedTreeNodeItem, isTreeDataProviderInterface, TreeDataProvider, TreeNodeItem,\n} from \"../tree/TreeDataProvider\";\nimport { UiComponents } from \"../UiComponents\";\nimport {\n BeInspireTree, BeInspireTreeEvent, BeInspireTreeNode, BeInspireTreeNodeConfig, BeInspireTreeNodes, MapPayloadToInspireNodeCallback, toNodes,\n} from \"./BeInspireTree\";\nimport { BreadcrumbPath, BreadcrumbUpdateEventArgs } from \"./BreadcrumbPath\";\nimport { getPropertyRecordAsString } from \"./BreadcrumbTreeUtils\";\n\n/* eslint-disable deprecation/deprecation */\n// cspell:ignore itree autocompleting\n\n/** @internal */\nexport type BreadcrumbNodeRenderer = (props: BreadcrumbNodeProps, node?: TreeNodeItem, parent?: TreeNodeItem) => React.ReactNode;\n\n/** Properties for [[Breadcrumb]] component\n * @beta\n * @deprecated\n */\nexport interface BreadcrumbProps extends CommonProps {\n /** Manager to coordinate state between Breadcrumb element and BreadcrumbDetails element. */\n path?: BreadcrumbPath;\n /** Data provider for tree content */\n dataProvider: TreeDataProvider;\n /** Initial current node */\n initialCurrent?: TreeNodeItem;\n /** Character used to separate discrete tree nodes in Breadcrumb text mode. Default: \"\\\\\" */\n delimiter?: string;\n /** Width in pixels, if number, and in specified css units, if string. Default: \"15em\" */\n width?: number | string;\n /** Whether to show up-dir directory pop button on the left. Default: true */\n showUpDir?: boolean;\n /** Which BreadcrumbMode to initially start with. Default: BreadcrumbMode.Dropdown */\n initialBreadcrumbMode?: BreadcrumbMode;\n /** Whether to show white background and border. Default: true */\n background?: boolean;\n /** Static breadcrumb element. Default: false */\n staticOnly?: boolean;\n /** Disable plain-text input for the breadcrumb navigation. Default: false */\n dropdownOnly?: boolean;\n /** Whether to disallow navigation to leaf nodes (nodes with no children). Default: true */\n parentsOnly?: boolean;\n /** Callback triggered when child node is loaded with an asynchronous dataProvider. */\n onChildrenLoaded?: (parent: TreeNodeItem, children: TreeNodeItem[]) => void;\n /** Callback triggered when root nodes are loaded with an asynchronous dataProvider. */\n onRootNodesLoaded?: (nodes: TreeNodeItem[]) => void;\n\n /** @internal */\n renderNode?: BreadcrumbNodeRenderer;\n /** @internal */\n onRender?: () => void;\n /** @internal */\n expandedNodes?: boolean;\n}\n\n/** Enum for Breadcrumb Mode\n * @beta\n * @deprecated\n */\nexport enum BreadcrumbMode {\n Dropdown = \"dropdown\",\n Input = \"input\",\n}\n\n/** @internal */\ninterface BreadcrumbState {\n prev: {\n dataProvider: TreeDataProvider;\n modelReady: boolean;\n };\n model: BeInspireTree<TreeNodeItem>;\n modelReady: boolean;\n width: number | string;\n current?: TreeNodeItem;\n currentMode: BreadcrumbMode;\n pathString: string;\n}\n\n/**\n * Breadcrumb navigation component, with two discrete modes: text mode and dropdown mode.\n * Text mode includes autocomplete suggestions.\n * Both dropdown and text mode support arrow and tab navigation.\n * @beta\n * @deprecated Use Breadcrumbs from itwinui-react instead\n */\nexport class Breadcrumb extends React.Component<BreadcrumbProps, BreadcrumbState> {\n private _mounted: boolean = false;\n\n /** @internal */\n public static defaultProps: Partial<BreadcrumbProps> = {\n delimiter: \"\\\\\",\n background: true,\n initialBreadcrumbMode: BreadcrumbMode.Dropdown,\n showUpDir: true,\n parentsOnly: true,\n width: \"\",\n };\n\n /** @internal */\n public override readonly state: Readonly<BreadcrumbState>;\n\n /** @internal */\n constructor(props: BreadcrumbProps) {\n super(props);\n\n this.state = {\n prev: {\n dataProvider: props.dataProvider,\n modelReady: false,\n },\n model: Breadcrumb.createModel(props),\n modelReady: false,\n width: props.width!,\n currentMode: props.initialBreadcrumbMode!,\n current: props.initialCurrent,\n pathString: \"\",\n };\n }\n\n private static createModel(props: BreadcrumbProps) {\n return new BeInspireTree<TreeNodeItem>({\n dataProvider: props.dataProvider,\n mapPayloadToInspireNodeConfig: Breadcrumb.inspireNodeFromTreeNodeItem,\n });\n }\n\n /** @internal */\n public static getDerivedStateFromProps(props: BreadcrumbProps, state: BreadcrumbState): BreadcrumbState | null {\n const providerChanged = (props.dataProvider !== state.prev.dataProvider);\n\n // create derived state that just updates `prev` values\n const derivedState: BreadcrumbState = {\n ...state,\n prev: {\n ...state.prev,\n dataProvider: props.dataProvider,\n modelReady: state.modelReady,\n },\n };\n\n // in case provider changed, have to re-create `model` and reset `modelReady`\n if (providerChanged) {\n derivedState.model = Breadcrumb.createModel(props);\n derivedState.modelReady = false;\n }\n\n return derivedState;\n }\n\n /** @internal */\n public override componentDidMount() {\n this._mounted = true;\n this.assignModelListeners(this.state.model);\n this.assignDataProviderListeners(this.props.dataProvider);\n\n if (this.props.path) {\n this.props.path.setDataProvider(this.props.dataProvider);\n this.props.path.BreadcrumbUpdateEvent.addListener(this._handleUpdate);\n }\n\n /* istanbul ignore next */\n if (this.props.onRender)\n this.props.onRender();\n }\n\n /** @internal */\n public override componentWillUnmount() {\n if (this.props.path)\n this.props.path.BreadcrumbUpdateEvent.removeListener(this._handleUpdate);\n this.dropModelListeners(this.state.model);\n this.dropDataProviderListeners(this.props.dataProvider);\n this._mounted = false;\n }\n\n /** @internal */\n public override shouldComponentUpdate(nextProps: BreadcrumbProps, nextState: BreadcrumbState): boolean {\n if (this.state.modelReady !== nextState.modelReady || this.state.model !== nextState.model) {\n // always render when modelReady or model changes\n return true;\n }\n\n if (!nextState.modelReady) {\n // if we got here and model is not ready - don't render\n return false;\n }\n\n // otherwise, render when any of the following props / state change\n return this.props.renderNode !== nextProps.renderNode\n || this.props.dataProvider !== nextProps.dataProvider\n || this.props.background !== nextProps.background\n || this.props.dropdownOnly !== nextProps.dropdownOnly\n || this.props.parentsOnly !== nextProps.parentsOnly\n || this.props.showUpDir !== nextProps.showUpDir\n || this.state.current !== nextState.current\n || this.state.pathString !== nextState.pathString\n || this.state.currentMode !== nextState.currentMode\n || this.state.model.visible().some((n) => n.isDirty());\n }\n\n /** @internal */\n public override componentDidUpdate(prevProps: BreadcrumbProps, prevState: BreadcrumbState) {\n if (this.state.model !== prevState.model) {\n this.dropModelListeners(prevState.model);\n this.assignModelListeners(this.state.model);\n }\n\n if (this.props.dataProvider !== prevProps.dataProvider) {\n this.dropDataProviderListeners(prevProps.dataProvider);\n this.assignDataProviderListeners(this.props.dataProvider);\n }\n\n /* istanbul ignore next */\n if (this.props.onRender)\n this.props.onRender();\n }\n\n private assignModelListeners(model: BeInspireTree<TreeNodeItem>) {\n model.on(BeInspireTreeEvent.ChangesApplied, this._onModelChanged);\n model.on(BeInspireTreeEvent.ModelLoaded, this._onModelLoaded);\n model.on(BeInspireTreeEvent.ChildrenLoaded, this._onChildrenLoaded);\n // eslint-disable-next-line @typescript-eslint/no-floating-promises\n model.ready.then(() => {\n // istanbul ignore else\n if (model === this.state.model)\n this._onModelReady();\n });\n }\n\n private dropModelListeners(model: BeInspireTree<TreeNodeItem>) {\n model.removeAllListeners();\n }\n\n private assignDataProviderListeners(provider: TreeDataProvider) {\n if (isTreeDataProviderInterface(provider) && provider.onTreeNodeChanged) {\n provider.onTreeNodeChanged.addListener(this._onTreeNodeChanged);\n }\n }\n\n private dropDataProviderListeners(provider: TreeDataProvider) {\n if (isTreeDataProviderInterface(provider) && provider.onTreeNodeChanged) {\n provider.onTreeNodeChanged.removeListener(this._onTreeNodeChanged);\n }\n }\n\n private _handleUpdate = (args: BreadcrumbUpdateEventArgs) => {\n if (args.currentNode && this._mounted) {\n const current = this.state.model.node(args.currentNode.id);\n if (current) {\n const p = current.getTextualHierarchy().join(this.props.delimiter);\n this.setState({ current: args.currentNode, pathString: p });\n }\n } else {\n this.setState({ current: undefined, pathString: \"\" });\n }\n };\n\n private _onModelLoaded = (rootNodes: BeInspireTreeNodes<TreeNodeItem>) => {\n if (this.props.onRootNodesLoaded)\n this.props.onRootNodesLoaded(rootNodes.map((n) => n.payload!));\n const current = this.state.current ? this.state.model.node(this.state.current.id) : undefined;\n const p = current ? current.getTextualHierarchy().join(this.props.delimiter) : \"\";\n if (p !== this.state.pathString)\n this.setState({ pathString: p });\n };\n\n private _onChildrenLoaded = (parentNode: BeInspireTreeNode<TreeNodeItem>) => {\n const children = parentNode.getChildren();\n if (this.props.onChildrenLoaded)\n this.props.onChildrenLoaded(parentNode.payload!, toNodes<TreeNodeItem>(children).map((c) => c.payload!));\n const current = this.state.current ? this.state.model.node(this.state.current.id) : undefined;\n const p = current ? current.getTextualHierarchy().join(this.props.delimiter) : \"\";\n if (p !== this.state.pathString)\n this.setState({ pathString: p });\n };\n\n private _onModelChanged = () => {\n // just re-set the model to initiate update\n this.setState((prev) => ({ model: prev.model }));\n };\n\n private _onModelReady = () => {\n // istanbul ignore else\n if (this._mounted) {\n const current = this.state.current ? this.state.model.node(this.state.current.id) : undefined;\n this.setState((_prevState, props) => ({ modelReady: true, pathString: current ? current.getTextualHierarchy().join(props.delimiter) : \"\" }));\n }\n };\n\n private _onTreeNodeChanged = (_items: Array<TreeNodeItem | undefined>) => {\n using(this.state.model.pauseRendering(), async (_r) => { // eslint-disable-line @typescript-eslint/no-floating-promises\n await this.state.model.reload();\n });\n };\n\n private static inspireNodeFromTreeNodeItem(item: TreeNodeItem, remapper: MapPayloadToInspireNodeCallback<TreeNodeItem>): BeInspireTreeNodeConfig {\n const node: BeInspireTreeNodeConfig = {\n id: item.id,\n text: getPropertyRecordAsString(item.label),\n itree: {\n state: { collapsed: false },\n },\n };\n if (item.icon)\n node.itree!.icon = item.icon;\n if ((item as DelayLoadedTreeNodeItem).hasChildren)\n node.children = true;\n else if ((item as ImmediatelyLoadedTreeNodeItem).children)\n node.children = (item as ImmediatelyLoadedTreeNodeItem).children!.map((p) => remapper(p, remapper));\n return node;\n }\n\n /** @internal */\n public override render(): React.ReactNode {\n const classNames = classnames(\"components-breadcrumb\", this.props.background && \"background\", this.props.className);\n\n if (!this.state.modelReady) {\n return (\n <div className={classNames} style={this.props.style} />\n );\n }\n const node = this.state.current ? this.state.model.node(this.state.current.id) : undefined;\n return (\n <div\n className={classNames} style={this.props.style}>\n <div className=\"components-breadcrumb-head\"\n data-testid=\"components-breadcrumb-dropdown-input-parent\">\n {this.props.dropdownOnly || this.props.staticOnly ?\n <BreadcrumbDropdown\n tree={this.state.model}\n node={node}\n onNodeChange={this._handleNodeChange}\n onInputStart={this._setInput}\n renderNode={this.props.renderNode}\n staticOnly={this.props.staticOnly}\n showUpDir={this.props.showUpDir}\n parentsOnly={this.props.parentsOnly}\n width={this.props.width!}\n expandedNode={this.props.expandedNodes} /> :\n <InputSwitch\n tree={this.state.model}\n node={node}\n pathString={this.state.pathString}\n currentMode={this.state.currentMode}\n onInputStart={this._setInput}\n onInputCancel={this._setDropdown}\n onNodeChange={this._handleNodeChange}\n width={this.props.width!}\n showUpDir={this.props.showUpDir}\n parentsOnly={this.props.parentsOnly}\n delimiter={this.props.delimiter!}\n onOutsideClick={this._setDropdown}\n renderNode={this.props.renderNode}\n expandedNode={this.props.expandedNodes} />\n }\n </div>\n </div>\n );\n }\n\n private _setDropdown = () => this.setState({ currentMode: BreadcrumbMode.Dropdown });\n private _setInput = () => this.setState({ currentMode: BreadcrumbMode.Input });\n\n private _handleNodeChange = (node: TreeNodeItem | undefined) => {\n if (this.props.path)\n this.props.path.setCurrentNode(node);\n else {\n if (!node) {\n this.setState({ current: undefined, pathString: \"\" });\n } else {\n const current = this.state.current ? this.state.model.node(this.state.current.id) : undefined;\n const p = current ? current.getTextualHierarchy().join(this.props.delimiter) : \"\";\n this.setState({ current: node, pathString: p });\n }\n }\n if (this.state.currentMode !== BreadcrumbMode.Dropdown)\n this._setDropdown();\n };\n}\n\n/** @internal */\nexport interface InputSwitchProps {\n tree: BeInspireTree<TreeNodeItem>;\n node?: BeInspireTreeNode<TreeNodeItem>;\n pathString: string;\n currentMode: BreadcrumbMode;\n onInputStart?: () => void;\n onInputCancel: () => void;\n onNodeChange: (node?: TreeNodeItem) => void;\n showUpDir?: boolean;\n parentsOnly?: boolean;\n renderNode?: BreadcrumbNodeRenderer;\n width: number | string;\n delimiter: string;\n expandedNode?: boolean;\n}\n\n/** @internal */\nexport class InputSwitchComponent extends React.PureComponent<InputSwitchProps> {\n public override render(): React.ReactNode {\n const { currentMode, tree, node, onInputStart, onInputCancel, onNodeChange, renderNode, width, showUpDir, delimiter, expandedNode } = this.props;\n switch (currentMode) {\n case BreadcrumbMode.Dropdown:\n return <BreadcrumbDropdown tree={tree} node={node} onNodeChange={onNodeChange} renderNode={renderNode} onInputStart={onInputStart}\n parentsOnly={this.props.parentsOnly} showUpDir={showUpDir} width={width} expandedNode={expandedNode} />;\n case BreadcrumbMode.Input:\n return <BreadcrumbInput tree={tree} node={node} onNodeChange={onNodeChange} onCancel={onInputCancel}\n parentsOnly={this.props.parentsOnly} delimiter={delimiter} width={width} pathString={this.props.pathString} />;\n default:\n return <div data-testid=\"components-breadcrumb-error-unknown-mode\">{UiComponents.translate(\"breadcrumb.errorUnknownMode\")}</div>;\n }\n }\n}\n/** @internal */\nconst InputSwitch = withOnOutsideClick(InputSwitchComponent); // eslint-disable-line @typescript-eslint/naming-convention\n\n/** @internal */\nexport interface BreadcrumbInputProps {\n width: number | string;\n delimiter?: string;\n\n onCancel: () => void;\n onNodeChange: (node: TreeNodeItem | undefined) => void;\n parentsOnly?: boolean;\n\n tree: BeInspireTree<TreeNodeItem>;\n node?: BeInspireTreeNode<TreeNodeItem>;\n\n pathString: string;\n}\n\n/** @internal */\nexport interface BreadcrumbInputState {\n autocompleting: boolean;\n autocompleteList: string[];\n messageBoxOpened: boolean;\n}\n\n/** @internal */\nexport class BreadcrumbInput extends React.Component<BreadcrumbInputProps, BreadcrumbInputState> {\n private _inputElement: HTMLInputElement | null = null;\n private _autocomplete: ContextMenu | null = null;\n private _mounted: boolean = false;\n\n /** @internal */\n public override readonly state: Readonly<BreadcrumbInputState> = {\n autocompleting: false,\n autocompleteList: [],\n messageBoxOpened: false,\n };\n\n public override render(): JSX.Element {\n return (\n <div className=\"components-breadcrumb-input-root\" data-testid=\"components-breadcrumb-input-root\">\n <input\n className=\"components-breadcrumb-input\"\n data-testid=\"components-breadcrumb-input\"\n type=\"text\"\n ref={(e) => { this._inputElement = e; }}\n style={{ width: this.props.width }}\n onKeyDown={this._handleKeyDown} onKeyUp={this._handleKeyUp}\n onChange={this._handleChange} onPaste={this._handleChange} onCut={this._handleChange} onFocus={this._handleChange} onClick={this._handleChange}\n spellCheck={false}></input>\n {/* eslint-disable-next-line jsx-a11y/click-events-have-key-events */}\n <div className=\"components-breadcrumb-close icon icon-close\" data-testid=\"components-breadcrumb-input-close\" onClick={this._handleClose}\n role=\"button\" tabIndex={-1} />\n <ContextMenu\n ref={(el) => { this._autocomplete = el; }}\n style={{ width: \"100%\" }}\n opened={this.state.autocompleting}\n edgeLimit={false}\n selectedIndex={0} floating={false} autoflip={false}\n onEsc={() => {\n // istanbul ignore else\n if (this._inputElement)\n this._inputElement.focus();\n }}\n >\n {this.state.autocompleteList.map((listItem, index) => {\n let l = 0;\n // istanbul ignore else\n if (this._inputElement) {\n l = this._inputElement.value.length;\n }\n return (\n <ContextMenuItem\n key={index}\n onSelect={(event) => {\n // istanbul ignore else\n if (this._inputElement) {\n this._inputElement.value = listItem;\n this._inputElement.focus();\n this._inputElement.setSelectionRange(listItem.length, listItem.length);\n\n const autocompleteStr = this._inputElement.value.substring(0, this._inputElement.selectionEnd!);\n this._getAutocompleteList(autocompleteStr).then((list) => { // eslint-disable-line @typescript-eslint/no-floating-promises\n // istanbul ignore else\n if (this._mounted)\n this.setState({\n autocompleting: false,\n autocompleteList: list,\n });\n });\n event.stopPropagation();\n }\n }}>\n <span className=\"components-breadcrumb-selected\">{listItem.substr(0, l)}</span>{listItem.substr(l)}\n </ContextMenuItem>\n );\n })}\n </ContextMenu>\n <MessageBox opened={this.state.messageBoxOpened} modal={false} onClose={this._handleMessageBoxClose} severity={MessageSeverity.Warning} buttonCluster={[{ type: DialogButtonType.OK, onClick: this._handleMessageBoxClose }]}>\n {UiComponents.translate(\"breadcrumb.invalidBreadcrumbPath\")}\n </MessageBox>\n </div>\n );\n }\n\n private _handleMessageBoxClose = () => {\n this.setState({ messageBoxOpened: false });\n };\n\n /** @internal */\n public override componentDidMount() {\n this._mounted = true;\n // istanbul ignore else\n if (this._inputElement) {\n const activeWindow = this._inputElement.ownerDocument.defaultView;\n activeWindow && activeWindow.addEventListener(\"click\", this._handleClick);\n this._inputElement.value = this.props.pathString;\n this._inputElement.focus();\n }\n }\n\n /** @internal */\n public override componentWillUnmount() {\n // istanbul ignore else\n if (this._inputElement) {\n const activeWindow = this._inputElement.ownerDocument.defaultView;\n activeWindow && activeWindow.removeEventListener(\"click\", this._handleClick);\n }\n this._mounted = false;\n }\n\n private _handleClose = () => {\n this.props.onCancel();\n this.setState({ autocompleting: false });\n };\n\n private _getAutocompleteList = async (path: string) => {\n const node = await this._findChildParentPartial(path);\n if (node) {\n const baseString = node.getTextualHierarchy().join(this.props.delimiter);\n const children = node.getChildren();\n const parentChildren = this.props.parentsOnly ? children.filter((child) => child.hasOrWillHaveChildren()) : children;\n const strList = parentChildren.map((n) => baseString + this.props.delimiter! + n.toString());\n return strList.filter((e) => e.substr(0, path.length) === path);\n } else {\n const nodes = this.props.tree.nodes();\n const parentRoots = this.props.parentsOnly ? nodes.filter((child) => child.hasOrWillHaveChildren()) : nodes;\n const strList = parentRoots.map((n) => n.toString() + this.props.delimiter!);\n return strList.filter((e) => e.substr(0, path.length) === path);\n }\n };\n\n private _findChildUserInput = async (p: string): Promise<BeInspireTreeNode<TreeNodeItem> | undefined> => {\n const delimiter = this.props.delimiter!;\n if (p.endsWith(delimiter)) // strip last delimiter if at end\n p = p.substr(0, p.length - delimiter.length);\n const root = this.props.tree.nodes();\n for (const node of root) {\n const found = await this._find(node, p);\n if (found)\n return found;\n }\n return undefined;\n };\n private _findChildParentPartial = async (p: string): Promise<BeInspireTreeNode<TreeNodeItem> | undefined> => {\n const delimiter = this.props.delimiter!;\n const lastDel = p.lastIndexOf(delimiter);\n if (lastDel !== -1) // strip last delimiter and everything after\n p = p.substring(0, lastDel);\n else\n return undefined;\n const root = this.props.tree.nodes();\n for (const node of root) {\n const found = await this._find(node, p);\n if (found)\n return found;\n }\n return undefined;\n };\n private _find = async (node: BeInspireTreeNode<TreeNodeItem>, p: string): Promise<BeInspireTreeNode<TreeNodeItem> | undefined> => {\n const delimiter = this.props.delimiter!;\n // remove leading delimiter\n if (p.indexOf(delimiter) === 0)\n p = p.substr(delimiter.length);\n const { text } = node;\n if (text === p) {\n return node;\n }\n if (p.indexOf(text) === 0 && node.hasOrWillHaveChildren()) {\n const children = node.getChildren();\n for (const child of children) {\n const n = await this._find(child as BeInspireTreeNode<TreeNodeItem>, p.substr(text.length));\n if (n)\n return n;\n }\n }\n return undefined;\n };\n\n private _handleClick = (event: MouseEvent): void => {\n // istanbul ignore else\n if (this._autocomplete) {\n // istanbul ignore else\n if (this._inputElement && event.target === this._inputElement) {\n this.setState({ autocompleting: false });\n this._inputElement.focus();\n }\n }\n };\n\n private _handleKeyDown = (event: React.KeyboardEvent<HTMLInputElement>) => {\n switch (event.key) {\n case SpecialKey.ArrowUp:\n case SpecialKey.ArrowDown:\n event.preventDefault();\n }\n };\n private _handleKeyUp = async (event: React.KeyboardEvent<HTMLInputElement>) => {\n switch (event.key) {\n case SpecialKey.Escape:\n // istanbul ignore else\n if (this._mounted)\n this.setState({ autocompleting: false });\n break;\n case SpecialKey.ArrowUp:\n case SpecialKey.ArrowDown:\n event.preventDefault();\n // istanbul ignore else\n if (this._autocomplete && this.state.autocompleteList.length > 0) {\n this._autocomplete.focus();\n // istanbul ignore else\n if (this._mounted)\n this.setState({ autocompleting: true });\n }\n break;\n case SpecialKey.Enter:\n // istanbul ignore else\n if (this._inputElement) {\n const path = this._inputElement.value;\n if (path === \"\" || path === this.props.delimiter!) {\n this.props.onNodeChange(undefined);\n // istanbul ignore else\n if (this._mounted)\n this.setState({ autocompleting: false });\n } else {\n const node = await this._findChildUserInput(path);\n if (node === undefined)\n this.setState({ messageBoxOpened: true });\n else\n this.props.onNodeChange(node.payload);\n }\n }\n break;\n }\n };\n\n private _handleChange = (): void => {\n // istanbul ignore else\n if (this._inputElement) {\n const autocompleteStr = this._inputElement.value.substring(0, this._inputElement.selectionEnd!);\n this._getAutocompleteList(autocompleteStr).then((list) => { // eslint-disable-line @typescript-eslint/no-floating-promises\n if (this._mounted)\n this.setState({\n autocompleting: list.length > 0,\n autocompleteList: list,\n });\n });\n }\n };\n}\n\n/** @internal */\ninterface BreadcrumbDropdownProps {\n tree: BeInspireTree<TreeNodeItem>;\n node?: BeInspireTreeNode<TreeNodeItem>;\n onInputStart?: () => void;\n onNodeChange: (node: TreeNodeItem | undefined) => void;\n staticOnly?: boolean;\n parentsOnly?: boolean;\n delimiter?: string;\n width: number | string;\n showUpDir?: boolean;\n renderNode?: BreadcrumbNodeRenderer;\n expandedNode?: boolean;\n}\n\n/** @internal */\nclass BreadcrumbDropdown extends React.Component<BreadcrumbDropdownProps> {\n\n /** @internal */\n public override componentDidMount() {\n this.props.tree.on(BeInspireTreeEvent.ChildrenLoaded, this._onChildrenLoaded);\n this.props.tree.on(BeInspireTreeEvent.ModelLoaded, this._onModelLoaded);\n }\n\n /** @internal */\n public override componentWillUnmount() {\n this.props.tree.removeListener(BeInspireTreeEvent.ChildrenLoaded, this._onChildrenLoaded);\n this.props.tree.removeListener(BeInspireTreeEvent.ModelLoaded, this._onModelLoaded);\n }\n\n private _onModelLoaded = (_rootNodes: BeInspireTreeNodes<TreeNodeItem>) => {\n this.forceUpdate();\n };\n\n private _onChildrenLoaded = (_parentNode: BeInspireTreeNode<TreeNodeItem>) => {\n this.forceUpdate();\n };\n\n /** @internal */\n public override shouldComponentUpdate(nextProps: BreadcrumbDropdownProps) {\n return this.props.tree !== nextProps.tree ||\n this.props.node !== nextProps.node ||\n (nextProps.node && /* istanbul ignore next */ nextProps.node.isDirty()) ||\n this.props.onInputStart !== nextProps.onInputStart ||\n this.props.delimiter !== nextProps.delimiter ||\n this.props.width !== nextProps.width ||\n this.props.renderNode !== nextProps.renderNode;\n }\n\n public override render(): JSX.Element | null {\n const node = this.props.node;\n let nodes: BeInspireTreeNodes<TreeNodeItem> | undefined;\n if (node) {\n nodes = toNodes<TreeNodeItem>(node.getParents());\n nodes.reverse();\n nodes.push(node);\n }\n return (\n // eslint-disable-next-line jsx-a11y/click-events-have-key-events\n <div\n className=\"components-breadcrumb-dropdown\"\n data-testid=\"components-breadcrumb-dropdown-background\"\n style={{ width: this.props.width }}\n onClick={this._focusInput}\n role=\"button\" tabIndex={-1}\n >\n {!this.props.staticOnly && this.props.showUpDir ?\n // eslint-disable-next-line jsx-a11y/click-events-have-key-events\n <div data-testid=\"components-breadcrumb-up-dir\"\n className={classnames(\n \"components-breadcrumb-up-dir\",\n \"icon\", \"icon-sort-up\",\n { root: this.props.node === undefined })\n } onClick={this._handleUpClick} role=\"button\" tabIndex={-1} />\n : undefined\n }\n <div className=\"components-breadcrumb-crumb-list\"\n data-testid=\"components-breadcrumb-crumb-list\">\n <BreadcrumbDropdownNode\n key={-1}\n tree={this.props.tree}\n node={undefined}\n onNodeSelected={this.props.onNodeChange}\n staticOnly={this.props.staticOnly}\n parentsOnly={this.props.parentsOnly}\n last={!nodes || nodes.length === 0}\n renderNode={this.props.renderNode}\n expandedNode={this.props.expandedNode} />\n {nodes && nodes.map((n, i) => {\n return (\n <BreadcrumbDropdownNode\n key={i}\n tree={this.props.tree}\n node={n}\n onNodeSelected={this.props.onNodeChange}\n staticOnly={this.props.staticOnly}\n parentsOnly={this.props.parentsOnly}\n last={i === nodes!.length - 1}\n renderNode={this.props.renderNode}\n expandedNode={this.props.expandedNode} />\n );\n })}\n </div>\n </div>\n );\n }\n\n private _handleUpClick = () => {\n let parent: TreeNodeItem | undefined;\n if (this.props.node) {\n const p = (this.props.node.getParent()) as BeInspireTreeNode<TreeNodeItem>;\n if (p)\n parent = p.payload;\n }\n this.props.onNodeChange(parent);\n };\n\n private _focusInput = (event: React.MouseEvent) => {\n if (event.target === event.currentTarget && this.props.onInputStart) // check if click is direct, or bubbled\n this.props.onInputStart();\n };\n}\n\n/** @internal */\ninterface BreadcrumbDropdownNodeProps {\n tree: BeInspireTree<TreeNodeItem>;\n node?: BeInspireTreeNode<TreeNodeItem>;\n onNodeSelected: (node: TreeNodeItem | undefined) => void;\n staticOnly?: boolean;\n parentsOnly?: boolean;\n last?: boolean;\n renderNode?: BreadcrumbNodeRenderer;\n expandedNode?: boolean;\n}\n\n/** @internal */\nclass BreadcrumbDropdownNode extends React.Component<BreadcrumbDropdownNodeProps> {\n constructor(props: BreadcrumbDropdownNodeProps) {\n super(props);\n }\n\n public override render(): React.ReactNode {\n const { node } = this.props;\n let nodeChildren: Array<BeInspireTreeNode<TreeNodeItem>> = this.props.tree.nodes();\n if (node)\n nodeChildren = toNodes<TreeNodeItem>(node.getChildren());\n const n = node && node.payload;\n let parent: TreeNodeItem | undefined;\n if (node) {\n const p = node.getParent() as BeInspireTreeNode<TreeNodeItem>;\n if (p)\n parent = p.payload;\n }\n const label = n && n.label ? n.label : PropertyRecord.fromString(\"\");\n const icon = n && n.icon ? n.icon : \"icon-browse\";\n const renderNode = this.props.renderNode ? this.props.renderNode : this.renderNode;\n if (this.props.parentsOnly)\n nodeChildren = nodeChildren.filter((child) => child.hasOrWillHaveChildren());\n if (nodeChildren.length > 0) {\n if (this.props.staticOnly) {\n return <span data-testid=\"components-breadcrumb-static-button\" className=\"components-breadcrumb-split-button static\">\n {renderNode({ label, icon }, n, parent)}\n {!this.props.last ? <span className=\"static-arrow-icon icon icon-chevron-right\" /> : undefined}\n </span>;\n }\n return (\n <SplitButton\n className=\"components-breadcrumb-split-button\"\n onClick={(event) => {\n event.stopPropagation();\n this.props.onNodeSelected(n);\n }}\n label={renderNode({ label, icon }, n, parent)}\n initialExpanded={this.props.expandedNode}\n >\n {nodeChildren.map((child, d) => {\n return (\n <ContextMenuItem\n key={d}\n icon={child.payload!.icon}\n onSelect={(_event) => {\n this.props.onNodeSelected(child.payload);\n }}>\n {PropertyValueRendererManager.defaultManager.render(child.payload!.label)}\n </ContextMenuItem>\n );\n })}\n </SplitButton>\n );\n } else {\n return (\n <span className={classnames(\"components-breadcrumb-end-node\", { static: this.props.staticOnly })}>\n {renderNode({ label, icon }, n, parent)}\n </span>\n );\n }\n }\n\n // eslint-disable-next-line @typescript-eslint/naming-convention\n private renderNode = (props: BreadcrumbNodeProps, _node?: TreeNodeItem, _parent?: TreeNodeItem) => {\n return <BreadcrumbNode label={props.label} icon={props.icon} />;\n };\n}\n\n/** Properties for [[BreadcrumbNode]] component\n * @beta\n * @deprecated\n */\nexport interface BreadcrumbNodeProps {\n /** Icon class string */\n icon: string;\n /** Node label */\n label: PropertyRecord;\n /** @internal */\n onRender?: () => void;\n}\n\n/** Default BreadcrumbNode component\n * @beta\n * @deprecated\n */\nexport class BreadcrumbNode extends React.Component<BreadcrumbNodeProps> {\n constructor(props: BreadcrumbNodeProps) {\n super(props);\n }\n\n public override render(): React.ReactNode {\n const { icon, label } = this.props;\n return <span data-testid=\"components-breadcrumb-node\"><span className={classnames(\"icon\", icon)} />{PropertyValueRendererManager.defaultManager.render(label)}</span>;\n }\n\n public override componentDidMount() {\n // istanbul ignore next\n if (this.props.onRender)\n this.props.onRender();\n }\n\n public override componentDidUpdate() {\n // istanbul ignore next\n if (this.props.onRender)\n this.props.onRender();\n }\n}\n"]}
1
+ {"version":3,"file":"Breadcrumb.js","sourceRoot":"","sources":["../../../../src/components-react/breadcrumb/Breadcrumb.tsx"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAEH,OAAO,mBAAmB,CAAC;AAC3B,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACpF,OAAO,EAAe,WAAW,EAAE,eAAe,EAAE,gBAAgB,EAAE,UAAU,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAC7I,OAAO,EAAE,4BAA4B,EAAE,MAAM,oCAAoC,CAAC;AAClF,OAAO,EACmD,2BAA2B,GACpF,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EACL,aAAa,EAAE,kBAAkB,EAAmG,OAAO,GAC5I,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,yBAAyB,EAAE,MAAM,uBAAuB,CAAC;AAgDlE;;;GAGG;AACH,MAAM,CAAN,IAAY,cAGX;AAHD,WAAY,cAAc;IACxB,uCAAqB,CAAA;IACrB,iCAAe,CAAA;AACjB,CAAC,EAHW,cAAc,KAAd,cAAc,QAGzB;AAgBD;;;;;;GAMG;AACH,MAAM,OAAO,UAAW,SAAQ,KAAK,CAAC,SAA2C;IAgB/E,gBAAgB;IAChB,YAAY,KAAsB;QAChC,KAAK,CAAC,KAAK,CAAC,CAAC;QAjBP,aAAQ,GAAY,KAAK,CAAC;QA8J1B,kBAAa,GAAG,CAAC,IAA+B,EAAE,EAAE;YAC1D,IAAI,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,QAAQ,EAAE;gBACrC,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;gBAC3D,IAAI,OAAO,EAAE;oBACX,MAAM,CAAC,GAAG,OAAO,CAAC,mBAAmB,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;oBACnE,IAAI,CAAC,QAAQ,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,WAAW,EAAE,UAAU,EAAE,CAAC,EAAE,CAAC,CAAC;iBAC7D;aACF;iBAAM;gBACL,IAAI,CAAC,QAAQ,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC,CAAC;aACvD;QACH,CAAC,CAAC;QAEM,mBAAc,GAAG,CAAC,SAA2C,EAAE,EAAE;YACvE,IAAI,IAAI,CAAC,KAAK,CAAC,iBAAiB;gBAC9B,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAQ,CAAC,CAAC,CAAC;YACjE,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YAC9F,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,mBAAmB,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAClF,IAAI,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,UAAU;gBAC7B,IAAI,CAAC,QAAQ,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,CAAC,CAAC;QACrC,CAAC,CAAC;QAEM,sBAAiB,GAAG,CAAC,UAA2C,EAAE,EAAE;YAC1E,MAAM,QAAQ,GAAG,UAAU,CAAC,WAAW,EAAE,CAAC;YAC1C,IAAI,IAAI,CAAC,KAAK,CAAC,gBAAgB;gBAC7B,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,UAAU,CAAC,OAAQ,EAAE,OAAO,CAAe,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAQ,CAAC,CAAC,CAAC;YAC3G,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YAC9F,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,mBAAmB,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAClF,IAAI,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,UAAU;gBAC7B,IAAI,CAAC,QAAQ,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,CAAC,CAAC;QACrC,CAAC,CAAC;QAEM,oBAAe,GAAG,GAAG,EAAE;YAC7B,2CAA2C;YAC3C,IAAI,CAAC,QAAQ,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QACnD,CAAC,CAAC;QAEM,kBAAa,GAAG,GAAG,EAAE;YAC3B,uBAAuB;YACvB,IAAI,IAAI,CAAC,QAAQ,EAAE;gBACjB,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;gBAC9F,IAAI,CAAC,QAAQ,CAAC,CAAC,UAAU,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,mBAAmB,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;aAC9I;QACH,CAAC,CAAC;QAEM,uBAAkB,GAAG,CAAC,MAAuC,EAAE,EAAE;YACvE,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,cAAc,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE;gBACpD,MAAM,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;YAClC,CAAC,CAAC,CAAC;QACL,CAAC,CAAC;QAmEM,iBAAY,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,WAAW,EAAE,cAAc,CAAC,QAAQ,EAAE,CAAC,CAAC;QAC7E,cAAS,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,WAAW,EAAE,cAAc,CAAC,KAAK,EAAE,CAAC,CAAC;QAEvE,sBAAiB,GAAG,CAAC,IAA8B,EAAE,EAAE;YAC7D,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI;gBACjB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;iBAClC;gBACH,IAAI,CAAC,IAAI,EAAE;oBACT,IAAI,CAAC,QAAQ,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC,CAAC;iBACvD;qBAAM;oBACL,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;oBAC9F,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,mBAAmB,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;oBAClF,IAAI,CAAC,QAAQ,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,EAAE,CAAC,CAAC;iBACjD;aACF;YACD,IAAI,IAAI,CAAC,KAAK,CAAC,WAAW,KAAK,cAAc,CAAC,QAAQ;gBACpD,IAAI,CAAC,YAAY,EAAE,CAAC;QACxB,CAAC,CAAC;QA/QA,IAAI,CAAC,KAAK,GAAG;YACX,IAAI,EAAE;gBACJ,YAAY,EAAE,KAAK,CAAC,YAAY;gBAChC,UAAU,EAAE,KAAK;aAClB;YACD,KAAK,EAAE,UAAU,CAAC,WAAW,CAAC,KAAK,CAAC;YACpC,UAAU,EAAE,KAAK;YACjB,KAAK,EAAE,KAAK,CAAC,KAAM;YACnB,WAAW,EAAE,KAAK,CAAC,qBAAsB;YACzC,OAAO,EAAE,KAAK,CAAC,cAAc;YAC7B,UAAU,EAAE,EAAE;SACf,CAAC;IACJ,CAAC;IAEO,MAAM,CAAC,WAAW,CAAC,KAAsB;QAC/C,OAAO,IAAI,aAAa,CAAe;YACrC,YAAY,EAAE,KAAK,CAAC,YAAY;YAChC,6BAA6B,EAAE,UAAU,CAAC,2BAA2B;SACtE,CAAC,CAAC;IACL,CAAC;IAED,gBAAgB;IACT,MAAM,CAAC,wBAAwB,CAAC,KAAsB,EAAE,KAAsB;QACnF,MAAM,eAAe,GAAG,CAAC,KAAK,CAAC,YAAY,KAAK,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAEzE,uDAAuD;QACvD,MAAM,YAAY,GAAoB;YACpC,GAAG,KAAK;YACR,IAAI,EAAE;gBACJ,GAAG,KAAK,CAAC,IAAI;gBACb,YAAY,EAAE,KAAK,CAAC,YAAY;gBAChC,UAAU,EAAE,KAAK,CAAC,UAAU;aAC7B;SACF,CAAC;QAEF,6EAA6E;QAC7E,IAAI,eAAe,EAAE;YACnB,YAAY,CAAC,KAAK,GAAG,UAAU,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;YACnD,YAAY,CAAC,UAAU,GAAG,KAAK,CAAC;SACjC;QAED,OAAO,YAAY,CAAC;IACtB,CAAC;IAED,gBAAgB;IACA,iBAAiB;QAC/B,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QACrB,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC5C,IAAI,CAAC,2BAA2B,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;QAE1D,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE;YACnB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;YACzD,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,qBAAqB,CAAC,WAAW,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;SACvE;QAED,0BAA0B;QAC1B,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ;YACrB,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;IAC1B,CAAC;IAED,gBAAgB;IACA,oBAAoB;QAClC,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI;YACjB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,qBAAqB,CAAC,cAAc,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAC3E,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC1C,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;QACxD,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;IACxB,CAAC;IAED,gBAAgB;IACA,qBAAqB,CAAC,SAA0B,EAAE,SAA0B;QAC1F,IAAI,IAAI,CAAC,KAAK,CAAC,UAAU,KAAK,SAAS,CAAC,UAAU,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,KAAK,SAAS,CAAC,KAAK,EAAE;YAC1F,iDAAiD;YACjD,OAAO,IAAI,CAAC;SACb;QAED,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE;YACzB,uDAAuD;YACvD,OAAO,KAAK,CAAC;SACd;QAED,mEAAmE;QACnE,OAAO,IAAI,CAAC,KAAK,CAAC,UAAU,KAAK,SAAS,CAAC,UAAU;eAChD,IAAI,CAAC,KAAK,CAAC,YAAY,KAAK,SAAS,CAAC,YAAY;eAClD,IAAI,CAAC,KAAK,CAAC,UAAU,KAAK,SAAS,CAAC,UAAU;eAC9C,IAAI,CAAC,KAAK,CAAC,YAAY,KAAK,SAAS,CAAC,YAAY;eAClD,IAAI,CAAC,KAAK,CAAC,WAAW,KAAK,SAAS,CAAC,WAAW;eAChD,IAAI,CAAC,KAAK,CAAC,SAAS,KAAK,SAAS,CAAC,SAAS;eAC5C,IAAI,CAAC,KAAK,CAAC,OAAO,KAAK,SAAS,CAAC,OAAO;eACxC,IAAI,CAAC,KAAK,CAAC,UAAU,KAAK,SAAS,CAAC,UAAU;eAC9C,IAAI,CAAC,KAAK,CAAC,WAAW,KAAK,SAAS,CAAC,WAAW;eAChD,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;IAC3D,CAAC;IAED,gBAAgB;IACA,kBAAkB,CAAC,SAA0B,EAAE,SAA0B;QACvF,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,KAAK,SAAS,CAAC,KAAK,EAAE;YACxC,IAAI,CAAC,kBAAkB,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;YACzC,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;SAC7C;QAED,IAAI,IAAI,CAAC,KAAK,CAAC,YAAY,KAAK,SAAS,CAAC,YAAY,EAAE;YACtD,IAAI,CAAC,yBAAyB,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;YACvD,IAAI,CAAC,2BAA2B,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;SAC3D;QAED,0BAA0B;QAC1B,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ;YACrB,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;IAC1B,CAAC;IAEO,oBAAoB,CAAC,KAAkC;QAC7D,KAAK,CAAC,EAAE,CAAC,kBAAkB,CAAC,cAAc,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;QAClE,KAAK,CAAC,EAAE,CAAC,kBAAkB,CAAC,WAAW,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;QAC9D,KAAK,CAAC,EAAE,CAAC,kBAAkB,CAAC,cAAc,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC;QACpE,mEAAmE;QACnE,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE;YACpB,uBAAuB;YACvB,IAAI,KAAK,KAAK,IAAI,CAAC,KAAK,CAAC,KAAK;gBAC5B,IAAI,CAAC,aAAa,EAAE,CAAC;QACzB,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,kBAAkB,CAAC,KAAkC;QAC3D,KAAK,CAAC,kBAAkB,EAAE,CAAC;IAC7B,CAAC;IAEO,2BAA2B,CAAC,QAA0B;QAC5D,IAAI,2BAA2B,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,iBAAiB,EAAE;YACvE,QAAQ,CAAC,iBAAiB,CAAC,WAAW,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;SACjE;IACH,CAAC;IAEO,yBAAyB,CAAC,QAA0B;QAC1D,IAAI,2BAA2B,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,iBAAiB,EAAE;YACvE,QAAQ,CAAC,iBAAiB,CAAC,cAAc,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;SACpE;IACH,CAAC;IAoDO,MAAM,CAAC,2BAA2B,CAAC,IAAkB,EAAE,QAAuD;QACpH,MAAM,IAAI,GAA4B;YACpC,EAAE,EAAE,IAAI,CAAC,EAAE;YACX,IAAI,EAAE,yBAAyB,CAAC,IAAI,CAAC,KAAK,CAAC;YAC3C,KAAK,EAAE;gBACL,KAAK,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE;aAC5B;SACF,CAAC;QACF,IAAI,IAAI,CAAC,IAAI;YACX,IAAI,CAAC,KAAM,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QAC/B,IAAK,IAAgC,CAAC,WAAW;YAC/C,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;aAClB,IAAK,IAAsC,CAAC,QAAQ;YACvD,IAAI,CAAC,QAAQ,GAAI,IAAsC,CAAC,QAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC;QACtG,OAAO,IAAI,CAAC;IACd,CAAC;IAED,gBAAgB;IACA,MAAM;QACpB,MAAM,UAAU,GAAG,UAAU,CAAC,uBAAuB,EAAE,IAAI,CAAC,KAAK,CAAC,UAAU,IAAI,YAAY,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QAEpH,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE;YAC1B,OAAO,CACL,6BAAK,SAAS,EAAE,UAAU,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,GAAI,CACxD,CAAC;SACH;QACD,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAC3F,OAAO,CACL,6BACE,SAAS,EAAE,UAAU,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK;YAC9C,6BAAK,SAAS,EAAC,4BAA4B,iBAC7B,6CAA6C,IACxD,IAAI,CAAC,KAAK,CAAC,YAAY,IAAI,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;gBACjD,oBAAC,kBAAkB,IACjB,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,EACtB,IAAI,EAAE,IAAI,EACV,YAAY,EAAE,IAAI,CAAC,iBAAiB,EACpC,YAAY,EAAE,IAAI,CAAC,SAAS,EAC5B,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,UAAU,EACjC,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,UAAU,EACjC,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS,EAC/B,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,WAAW,EACnC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,KAAM,EACxB,YAAY,EAAE,IAAI,CAAC,KAAK,CAAC,aAAa,GAAI,CAAC,CAAC;gBAC9C,oBAAC,WAAW,IACV,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,EACtB,IAAI,EAAE,IAAI,EACV,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,UAAU,EACjC,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,WAAW,EACnC,YAAY,EAAE,IAAI,CAAC,SAAS,EAC5B,aAAa,EAAE,IAAI,CAAC,YAAY,EAChC,YAAY,EAAE,IAAI,CAAC,iBAAiB,EACpC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,KAAM,EACxB,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS,EAC/B,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,WAAW,EACnC,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,SAAU,EAChC,cAAc,EAAE,IAAI,CAAC,YAAY,EACjC,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,UAAU,EACjC,YAAY,EAAE,IAAI,CAAC,KAAK,CAAC,aAAa,GAAI,CAE1C,CACF,CACP,CAAC;IACJ,CAAC;;AA7QD,gBAAgB;AACF,uBAAY,GAA6B;IACrD,SAAS,EAAE,IAAI;IACf,UAAU,EAAE,IAAI;IAChB,qBAAqB,EAAE,cAAc,CAAC,QAAQ;IAC9C,SAAS,EAAE,IAAI;IACf,WAAW,EAAE,IAAI;IACjB,KAAK,EAAE,EAAE;CACV,CAAC;AA4SJ,gBAAgB;AAChB,MAAM,OAAO,oBAAqB,SAAQ,KAAK,CAAC,aAA+B;IAC7D,MAAM;QACpB,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,EAAE,YAAY,EAAE,aAAa,EAAE,YAAY,EAAE,UAAU,EAAE,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,YAAY,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC;QACjJ,QAAQ,WAAW,EAAE;YACnB,KAAK,cAAc,CAAC,QAAQ;gBAC1B,OAAO,oBAAC,kBAAkB,IAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,YAAY,EAAE,YAAY,EAAE,UAAU,EAAE,UAAU,EAAE,YAAY,EAAE,YAAY,EAC/H,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,YAAY,EAAE,YAAY,GAAI,CAAC;YAC5G,KAAK,cAAc,CAAC,KAAK;gBACvB,OAAO,oBAAC,eAAe,IAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,YAAY,EAAE,YAAY,EAAE,QAAQ,EAAE,aAAa,EACjG,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,UAAU,GAAI,CAAC;YACnH;gBACE,OAAO,4CAAiB,0CAA0C,IAAE,YAAY,CAAC,SAAS,CAAC,6BAA6B,CAAC,CAAO,CAAC;SACpI;IACH,CAAC;CACF;AACD,gBAAgB;AAChB,MAAM,WAAW,GAAG,kBAAkB,CAAC,oBAAoB,CAAC,CAAC,CAAC,2DAA2D;AAwBzH,gBAAgB;AAChB,MAAM,OAAO,eAAgB,SAAQ,KAAK,CAAC,SAAqD;IAAhG;;QACU,kBAAa,GAA4B,IAAI,CAAC;QAC9C,kBAAa,GAAuB,IAAI,CAAC;QACzC,aAAQ,GAAY,KAAK,CAAC;QAElC,gBAAgB;QACS,UAAK,GAAmC;YAC/D,cAAc,EAAE,KAAK;YACrB,gBAAgB,EAAE,EAAE;YACpB,gBAAgB,EAAE,KAAK;SACxB,CAAC;QAqEM,2BAAsB,GAAG,GAAG,EAAE;YACpC,IAAI,CAAC,QAAQ,CAAC,EAAE,gBAAgB,EAAE,KAAK,EAAE,CAAC,CAAC;QAC7C,CAAC,CAAC;QAwBM,iBAAY,GAAG,GAAG,EAAE;YAC1B,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;YACtB,IAAI,CAAC,QAAQ,CAAC,EAAE,cAAc,EAAE,KAAK,EAAE,CAAC,CAAC;QAC3C,CAAC,CAAC;QAEM,yBAAoB,GAAG,KAAK,EAAE,IAAY,EAAE,EAAE;YACpD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC;YACtD,IAAI,IAAI,EAAE;gBACR,MAAM,UAAU,GAAG,IAAI,CAAC,mBAAmB,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;gBACzE,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;gBACpC,MAAM,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,qBAAqB,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;gBACrH,MAAM,OAAO,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,SAAU,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;gBAC7F,OAAO,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK,IAAI,CAAC,CAAC;aACjE;iBAAM;gBACL,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;gBACtC,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,qBAAqB,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;gBAC5G,MAAM,OAAO,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,SAAU,CAAC,CAAC;gBAC7E,OAAO,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK,IAAI,CAAC,CAAC;aACjE;QACH,CAAC,CAAC;QAEM,wBAAmB,GAAG,KAAK,EAAE,CAAS,EAAwD,EAAE;YACtG,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,SAAU,CAAC;YACxC,IAAI,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,iCAAiC;gBAC1D,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC;YAC/C,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YACrC,KAAK,MAAM,IAAI,IAAI,IAAI,EAAE;gBACvB,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;gBACxC,IAAI,KAAK;oBACP,OAAO,KAAK,CAAC;aAChB;YACD,OAAO,SAAS,CAAC;QACnB,CAAC,CAAC;QACM,4BAAuB,GAAG,KAAK,EAAE,CAAS,EAAwD,EAAE;YAC1G,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,SAAU,CAAC;YACxC,MAAM,OAAO,GAAG,CAAC,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;YACzC,IAAI,OAAO,KAAK,CAAC,CAAC,EAAE,4CAA4C;gBAC9D,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;;gBAE5B,OAAO,SAAS,CAAC;YACnB,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YACrC,KAAK,MAAM,IAAI,IAAI,IAAI,EAAE;gBACvB,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;gBACxC,IAAI,KAAK;oBACP,OAAO,KAAK,CAAC;aAChB;YACD,OAAO,SAAS,CAAC;QACnB,CAAC,CAAC;QACM,UAAK,GAAG,KAAK,EAAE,IAAqC,EAAE,CAAS,EAAwD,EAAE;YAC/H,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,SAAU,CAAC;YACxC,2BAA2B;YAC3B,IAAI,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC;gBAC5B,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;YACjC,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC;YACtB,IAAI,IAAI,KAAK,CAAC,EAAE;gBACd,OAAO,IAAI,CAAC;aACb;YACD,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,qBAAqB,EAAE,EAAE;gBACzD,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;gBACpC,KAAK,MAAM,KAAK,IAAI,QAAQ,EAAE;oBAC5B,MAAM,CAAC,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,KAAwC,EAAE,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;oBAC5F,IAAI,CAAC;wBACH,OAAO,CAAC,CAAC;iBACZ;aACF;YACD,OAAO,SAAS,CAAC;QACnB,CAAC,CAAC;QAEM,iBAAY,GAAG,CAAC,KAAiB,EAAQ,EAAE;YACjD,uBAAuB;YACvB,IAAI,IAAI,CAAC,aAAa,EAAE;gBACtB,uBAAuB;gBACvB,IAAI,IAAI,CAAC,aAAa,IAAI,KAAK,CAAC,MAAM,KAAK,IAAI,CAAC,aAAa,EAAE;oBAC7D,IAAI,CAAC,QAAQ,CAAC,EAAE,cAAc,EAAE,KAAK,EAAE,CAAC,CAAC;oBACzC,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;iBAC5B;aACF;QACH,CAAC,CAAC;QAEM,mBAAc,GAAG,CAAC,KAA4C,EAAE,EAAE;YACxE,QAAQ,KAAK,CAAC,GAAG,EAAE;gBACjB,KAAK,UAAU,CAAC,OAAO,CAAC;gBACxB,KAAK,UAAU,CAAC,SAAS;oBACvB,KAAK,CAAC,cAAc,EAAE,CAAC;aAC1B;QACH,CAAC,CAAC;QACM,iBAAY,GAAG,KAAK,EAAE,KAA4C,EAAE,EAAE;YAC5E,QAAQ,KAAK,CAAC,GAAG,EAAE;gBACjB,KAAK,UAAU,CAAC,MAAM;oBACpB,uBAAuB;oBACvB,IAAI,IAAI,CAAC,QAAQ;wBACf,IAAI,CAAC,QAAQ,CAAC,EAAE,cAAc,EAAE,KAAK,EAAE,CAAC,CAAC;oBAC3C,MAAM;gBACR,KAAK,UAAU,CAAC,OAAO,CAAC;gBACxB,KAAK,UAAU,CAAC,SAAS;oBACvB,KAAK,CAAC,cAAc,EAAE,CAAC;oBACvB,uBAAuB;oBACvB,IAAI,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE;wBAChE,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;wBAC3B,uBAAuB;wBACvB,IAAI,IAAI,CAAC,QAAQ;4BACf,IAAI,CAAC,QAAQ,CAAC,EAAE,cAAc,EAAE,IAAI,EAAE,CAAC,CAAC;qBAC3C;oBACD,MAAM;gBACR,KAAK,UAAU,CAAC,KAAK;oBACnB,uBAAuB;oBACvB,IAAI,IAAI,CAAC,aAAa,EAAE;wBACtB,MAAM,IAAI,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC;wBACtC,IAAI,IAAI,KAAK,EAAE,IAAI,IAAI,KAAK,IAAI,CAAC,KAAK,CAAC,SAAU,EAAE;4BACjD,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;4BACnC,uBAAuB;4BACvB,IAAI,IAAI,CAAC,QAAQ;gCACf,IAAI,CAAC,QAAQ,CAAC,EAAE,cAAc,EAAE,KAAK,EAAE,CAAC,CAAC;yBAC5C;6BAAM;4BACL,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;4BAClD,IAAI,IAAI,KAAK,SAAS;gCACpB,IAAI,CAAC,QAAQ,CAAC,EAAE,gBAAgB,EAAE,IAAI,EAAE,CAAC,CAAC;;gCAE1C,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;yBACzC;qBACF;oBACD,MAAM;aACT;QACH,CAAC,CAAC;QAEM,kBAAa,GAAG,GAAS,EAAE;YACjC,uBAAuB;YACvB,IAAI,IAAI,CAAC,aAAa,EAAE;gBACtB,MAAM,eAAe,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,EAAE,IAAI,CAAC,aAAa,CAAC,YAAa,CAAC,CAAC;gBAChG,IAAI,CAAC,oBAAoB,CAAC,eAAe,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE;oBACvD,IAAI,IAAI,CAAC,QAAQ;wBACf,IAAI,CAAC,QAAQ,CAAC;4BACZ,cAAc,EAAE,IAAI,CAAC,MAAM,GAAG,CAAC;4BAC/B,gBAAgB,EAAE,IAAI;yBACvB,CAAC,CAAC;gBACP,CAAC,CAAC,CAAC;aACJ;QACH,CAAC,CAAC;IACJ,CAAC;IAvOiB,MAAM;QACpB,OAAO,CACL,6BAAK,SAAS,EAAC,kCAAkC,iBAAa,kCAAkC;YAC9F,+BACE,SAAS,EAAC,6BAA6B,iBAC3B,6BAA6B,EACzC,IAAI,EAAC,MAAM,EACX,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,GAAG,IAAI,CAAC,aAAa,GAAG,CAAC,CAAC,CAAC,CAAC,EACvC,KAAK,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,EAClC,SAAS,EAAE,IAAI,CAAC,cAAc,EAAE,OAAO,EAAE,IAAI,CAAC,YAAY,EAC1D,QAAQ,EAAE,IAAI,CAAC,aAAa,EAAE,OAAO,EAAE,IAAI,CAAC,aAAa,EAAE,KAAK,EAAE,IAAI,CAAC,aAAa,EAAE,OAAO,EAAE,IAAI,CAAC,aAAa,EAAE,OAAO,EAAE,IAAI,CAAC,aAAa,EAC9I,UAAU,EAAE,KAAK,GAAU;YAE7B,6BAAK,SAAS,EAAC,6CAA6C,iBAAa,mCAAmC,EAAC,OAAO,EAAE,IAAI,CAAC,YAAY,EACrI,IAAI,EAAC,QAAQ,EAAC,QAAQ,EAAE,CAAC,CAAC,GAAI;YAChC,oBAAC,WAAW,IACV,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,GAAG,IAAI,CAAC,aAAa,GAAG,EAAE,CAAC,CAAC,CAAC,EACzC,KAAK,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,EACxB,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,cAAc,EACjC,SAAS,EAAE,KAAK,EAChB,aAAa,EAAE,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAClD,KAAK,EAAE,GAAG,EAAE;oBACV,uBAAuB;oBACvB,IAAI,IAAI,CAAC,aAAa;wBACpB,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;gBAC/B,CAAC,IAEA,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,KAAK,EAAE,EAAE;gBACnD,IAAI,CAAC,GAAG,CAAC,CAAC;gBACV,uBAAuB;gBACvB,IAAI,IAAI,CAAC,aAAa,EAAE;oBACtB,CAAC,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,MAAM,CAAC;iBACrC;gBACD,OAAO,CACL,oBAAC,eAAe,IACd,GAAG,EAAE,KAAK,EACV,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE;wBAClB,uBAAuB;wBACvB,IAAI,IAAI,CAAC,aAAa,EAAE;4BACtB,IAAI,CAAC,aAAa,CAAC,KAAK,GAAG,QAAQ,CAAC;4BACpC,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;4BAC3B,IAAI,CAAC,aAAa,CAAC,iBAAiB,CAAC,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;4BAEvE,MAAM,eAAe,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,EAAE,IAAI,CAAC,aAAa,CAAC,YAAa,CAAC,CAAC;4BAChG,IAAI,CAAC,oBAAoB,CAAC,eAAe,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE;gCACvD,uBAAuB;gCACvB,IAAI,IAAI,CAAC,QAAQ;oCACf,IAAI,CAAC,QAAQ,CAAC;wCACZ,cAAc,EAAE,KAAK;wCACrB,gBAAgB,EAAE,IAAI;qCACvB,CAAC,CAAC;4BACP,CAAC,CAAC,CAAC;4BACH,KAAK,CAAC,eAAe,EAAE,CAAC;yBACzB;oBACH,CAAC;oBACD,8BAAM,SAAS,EAAC,gCAAgC,IAAE,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAQ;oBAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAClF,CACnB,CAAC;YACJ,CAAC,CAAC,CACU;YACd,oBAAC,UAAU,IAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,gBAAgB,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,CAAC,sBAAsB,EAAE,QAAQ,EAAE,eAAe,CAAC,OAAO,EAAE,aAAa,EAAE,CAAC,EAAE,IAAI,EAAE,gBAAgB,CAAC,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,sBAAsB,EAAE,CAAC,IACzN,YAAY,CAAC,SAAS,CAAC,kCAAkC,CAAC,CAChD,CACT,CACP,CAAC;IACJ,CAAC;IAMD,gBAAgB;IACA,iBAAiB;QAC/B,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QACrB,uBAAuB;QACvB,IAAI,IAAI,CAAC,aAAa,EAAE;YACtB,MAAM,YAAY,GAAG,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,WAAW,CAAC;YAClE,YAAY,IAAI,YAAY,CAAC,gBAAgB,CAAC,OAAO,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;YAC1E,IAAI,CAAC,aAAa,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC;YACjD,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;SAC5B;IACH,CAAC;IAED,gBAAgB;IACA,oBAAoB;QAClC,uBAAuB;QACvB,IAAI,IAAI,CAAC,aAAa,EAAE;YACtB,MAAM,YAAY,GAAG,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,WAAW,CAAC;YAClE,YAAY,IAAI,YAAY,CAAC,mBAAmB,CAAC,OAAO,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;SAC9E;QACD,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;IACxB,CAAC;CA4IF;AAiBD,gBAAgB;AAChB,MAAM,kBAAmB,SAAQ,KAAK,CAAC,SAAkC;IAAzE;;QAcU,mBAAc,GAAG,CAAC,UAA4C,EAAE,EAAE;YACxE,IAAI,CAAC,WAAW,EAAE,CAAC;QACrB,CAAC,CAAC;QAEM,sBAAiB,GAAG,CAAC,WAA4C,EAAE,EAAE;YAC3E,IAAI,CAAC,WAAW,EAAE,CAAC;QACrB,CAAC,CAAC;QAuEM,mBAAc,GAAG,GAAG,EAAE;YAC5B,IAAI,MAAgC,CAAC;YACrC,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE;gBACnB,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,EAAE,CAAoC,CAAC;gBAC3E,IAAI,CAAC;oBACH,MAAM,GAAG,CAAC,CAAC,OAAO,CAAC;aACtB;YACD,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;QAClC,CAAC,CAAC;QAEM,gBAAW,GAAG,CAAC,KAAuB,EAAE,EAAE;YAChD,IAAI,KAAK,CAAC,MAAM,KAAK,KAAK,CAAC,aAAa,IAAI,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,uCAAuC;gBAC1G,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC;QAC9B,CAAC,CAAC;IACJ,CAAC;IAvGC,gBAAgB;IACA,iBAAiB;QAC/B,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,kBAAkB,CAAC,cAAc,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC;QAC9E,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,kBAAkB,CAAC,WAAW,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;IAC1E,CAAC;IAED,gBAAgB;IACA,oBAAoB;QAClC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,kBAAkB,CAAC,cAAc,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC;QAC1F,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,kBAAkB,CAAC,WAAW,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;IACtF,CAAC;IAUD,gBAAgB;IACA,qBAAqB,CAAC,SAAkC;QACtE,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,SAAS,CAAC,IAAI;YACvC,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,SAAS,CAAC,IAAI;YAClC,CAAC,SAAS,CAAC,IAAI,IAAI,0BAA0B,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YACvE,IAAI,CAAC,KAAK,CAAC,YAAY,KAAK,SAAS,CAAC,YAAY;YAClD,IAAI,CAAC,KAAK,CAAC,SAAS,KAAK,SAAS,CAAC,SAAS;YAC5C,IAAI,CAAC,KAAK,CAAC,KAAK,KAAK,SAAS,CAAC,KAAK;YACpC,IAAI,CAAC,KAAK,CAAC,UAAU,KAAK,SAAS,CAAC,UAAU,CAAC;IACnD,CAAC;IAEe,MAAM;QACpB,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;QAC7B,IAAI,KAAmD,CAAC;QACxD,IAAI,IAAI,EAAE;YACR,KAAK,GAAG,OAAO,CAAe,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC;YACjD,KAAK,CAAC,OAAO,EAAE,CAAC;YAChB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;SAClB;QACD,OAAO;QACL,iEAAiE;QACjE,6BACE,SAAS,EAAC,gCAAgC,iBAC9B,2CAA2C,EACvD,KAAK,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,EAClC,OAAO,EAAE,IAAI,CAAC,WAAW,EACzB,IAAI,EAAC,QAAQ,EAAC,QAAQ,EAAE,CAAC,CAAC;YAEzB,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,IAAI,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;gBAC/C,iEAAiE;gBACjE,4CAAiB,8BAA8B,EAC7C,SAAS,EAAE,UAAU,CACnB,8BAA8B,EAC9B,MAAM,EAAE,cAAc,EACtB,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC,EACxC,OAAO,EAAE,IAAI,CAAC,cAAc,EAAE,IAAI,EAAC,QAAQ,EAAC,QAAQ,EAAE,CAAC,CAAC,GAAI;gBAChE,CAAC,CAAC,SAAS;YAEb,6BAAK,SAAS,EAAC,kCAAkC,iBACnC,kCAAkC;gBAC9C,oBAAC,sBAAsB,IACrB,GAAG,EAAE,CAAC,CAAC,EACP,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,EACrB,IAAI,EAAE,SAAS,EACf,cAAc,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY,EACvC,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,UAAU,EACjC,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,WAAW,EACnC,IAAI,EAAE,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAClC,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,UAAU,EACjC,YAAY,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY,GAAI;gBAC1C,KAAK,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;oBAC3B,OAAO,CACL,oBAAC,sBAAsB,IACrB,GAAG,EAAE,CAAC,EACN,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,EACrB,IAAI,EAAE,CAAC,EACP,cAAc,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY,EACvC,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,UAAU,EACjC,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,WAAW,EACnC,IAAI,EAAE,CAAC,KAAK,KAAM,CAAC,MAAM,GAAG,CAAC,EAC7B,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,UAAU,EACjC,YAAY,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY,GAAI,CAC5C,CAAC;gBACJ,CAAC,CAAC,CACE,CACF,CACP,CAAC;IACJ,CAAC;CAgBF;AAcD,gBAAgB;AAChB,MAAM,sBAAuB,SAAQ,KAAK,CAAC,SAAsC;IAC/E,YAAY,KAAkC;QAC5C,KAAK,CAAC,KAAK,CAAC,CAAC;QA4Df,gEAAgE;QACxD,eAAU,GAAG,CAAC,KAA0B,EAAE,KAAoB,EAAE,OAAsB,EAAE,EAAE;YAChG,OAAO,oBAAC,cAAc,IAAC,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,GAAI,CAAC;QAClE,CAAC,CAAC;IA9DF,CAAC;IAEe,MAAM;QACpB,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC;QAC5B,IAAI,YAAY,GAA2C,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;QACnF,IAAI,IAAI;YACN,YAAY,GAAG,OAAO,CAAe,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;QAC3D,MAAM,CAAC,GAAG,IAAI,IAAI,IAAI,CAAC,OAAO,CAAC;QAC/B,IAAI,MAAgC,CAAC;QACrC,IAAI,IAAI,EAAE;YACR,MAAM,CAAC,GAAG,IAAI,CAAC,SAAS,EAAqC,CAAC;YAC9D,IAAI,CAAC;gBACH,MAAM,GAAG,CAAC,CAAC,OAAO,CAAC;SACtB;QACD,MAAM,KAAK,GAAG,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,cAAc,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;QACrE,MAAM,IAAI,GAAG,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,aAAa,CAAC;QAClD,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC;QACnF,IAAI,IAAI,CAAC,KAAK,CAAC,WAAW;YACxB,YAAY,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,qBAAqB,EAAE,CAAC,CAAC;QAC/E,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE;YAC3B,IAAI,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE;gBACzB,OAAO,6CAAkB,qCAAqC,EAAC,SAAS,EAAC,2CAA2C;oBACjH,UAAU,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,EAAE,MAAM,CAAC;oBACtC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,8BAAM,SAAS,EAAC,2CAA2C,GAAG,CAAC,CAAC,CAAC,SAAS,CACzF,CAAC;aACT;YACD,OAAO,CACL,oBAAC,WAAW,IACV,SAAS,EAAC,oCAAoC,EAC9C,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;oBACjB,KAAK,CAAC,eAAe,EAAE,CAAC;oBACxB,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;gBAC/B,CAAC,EACD,KAAK,EAAE,UAAU,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,EAAE,MAAM,CAAC,EAC7C,eAAe,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY,IAEvC,YAAY,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE;gBAC7B,OAAO,CACL,oBAAC,eAAe,IACd,GAAG,EAAE,CAAC,EACN,IAAI,EAAE,KAAK,CAAC,OAAQ,CAAC,IAAI,EACzB,QAAQ,EAAE,CAAC,MAAM,EAAE,EAAE;wBACnB,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;oBAC3C,CAAC,IACA,4BAA4B,CAAC,cAAc,CAAC,MAAM,CAAC,KAAK,CAAC,OAAQ,CAAC,KAAK,CAAC,CACzD,CACnB,CAAC;YACJ,CAAC,CAAC,CACU,CACf,CAAC;SACH;aAAM;YACL,OAAO,CACL,8BAAM,SAAS,EAAE,UAAU,CAAC,gCAAgC,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC,IAC7F,UAAU,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,EAAE,MAAM,CAAC,CAClC,CACR,CAAC;SACH;IACH,CAAC;CAMF;AAeD;;;GAGG;AACH,MAAM,OAAO,cAAe,SAAQ,KAAK,CAAC,SAA8B;IACtE,YAAY,KAA0B;QACpC,KAAK,CAAC,KAAK,CAAC,CAAC;IACf,CAAC;IAEe,MAAM;QACpB,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC;QACnC,OAAO,6CAAkB,4BAA4B;YAAC,8BAAM,SAAS,EAAE,UAAU,CAAC,MAAM,EAAE,IAAI,CAAC,GAAI;YAAC,4BAA4B,CAAC,cAAc,CAAC,MAAM,CAAC,KAAK,CAAC,CAAQ,CAAC;IACxK,CAAC;IAEe,iBAAiB;QAC/B,uBAAuB;QACvB,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ;YACrB,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;IAC1B,CAAC;IAEe,kBAAkB;QAChC,uBAAuB;QACvB,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ;YACrB,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;IAC1B,CAAC;CACF","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 Breadcrumb\r\n */\r\n\r\nimport \"./Breadcrumb.scss\";\r\nimport classnames from \"classnames\";\r\nimport * as React from \"react\";\r\nimport { using } from \"@itwin/core-bentley\";\r\nimport { MessageSeverity, PropertyRecord, SpecialKey } from \"@itwin/appui-abstract\";\r\nimport { CommonProps, ContextMenu, ContextMenuItem, DialogButtonType, MessageBox, SplitButton, withOnOutsideClick } from \"@itwin/core-react\";\r\nimport { PropertyValueRendererManager } from \"../properties/ValueRendererManager\";\r\nimport {\r\n DelayLoadedTreeNodeItem, ImmediatelyLoadedTreeNodeItem, isTreeDataProviderInterface, TreeDataProvider, TreeNodeItem,\r\n} from \"../tree/TreeDataProvider\";\r\nimport { UiComponents } from \"../UiComponents\";\r\nimport {\r\n BeInspireTree, BeInspireTreeEvent, BeInspireTreeNode, BeInspireTreeNodeConfig, BeInspireTreeNodes, MapPayloadToInspireNodeCallback, toNodes,\r\n} from \"./BeInspireTree\";\r\nimport { BreadcrumbPath, BreadcrumbUpdateEventArgs } from \"./BreadcrumbPath\";\r\nimport { getPropertyRecordAsString } from \"./BreadcrumbTreeUtils\";\r\n\r\n/* eslint-disable deprecation/deprecation */\r\n// cspell:ignore itree autocompleting\r\n\r\n/** @internal */\r\nexport type BreadcrumbNodeRenderer = (props: BreadcrumbNodeProps, node?: TreeNodeItem, parent?: TreeNodeItem) => React.ReactNode;\r\n\r\n/** Properties for [[Breadcrumb]] component\r\n * @beta\r\n * @deprecated\r\n */\r\nexport interface BreadcrumbProps extends CommonProps {\r\n /** Manager to coordinate state between Breadcrumb element and BreadcrumbDetails element. */\r\n path?: BreadcrumbPath;\r\n /** Data provider for tree content */\r\n dataProvider: TreeDataProvider;\r\n /** Initial current node */\r\n initialCurrent?: TreeNodeItem;\r\n /** Character used to separate discrete tree nodes in Breadcrumb text mode. Default: \"\\\\\" */\r\n delimiter?: string;\r\n /** Width in pixels, if number, and in specified css units, if string. Default: \"15em\" */\r\n width?: number | string;\r\n /** Whether to show up-dir directory pop button on the left. Default: true */\r\n showUpDir?: boolean;\r\n /** Which BreadcrumbMode to initially start with. Default: BreadcrumbMode.Dropdown */\r\n initialBreadcrumbMode?: BreadcrumbMode;\r\n /** Whether to show white background and border. Default: true */\r\n background?: boolean;\r\n /** Static breadcrumb element. Default: false */\r\n staticOnly?: boolean;\r\n /** Disable plain-text input for the breadcrumb navigation. Default: false */\r\n dropdownOnly?: boolean;\r\n /** Whether to disallow navigation to leaf nodes (nodes with no children). Default: true */\r\n parentsOnly?: boolean;\r\n /** Callback triggered when child node is loaded with an asynchronous dataProvider. */\r\n onChildrenLoaded?: (parent: TreeNodeItem, children: TreeNodeItem[]) => void;\r\n /** Callback triggered when root nodes are loaded with an asynchronous dataProvider. */\r\n onRootNodesLoaded?: (nodes: TreeNodeItem[]) => void;\r\n\r\n /** @internal */\r\n renderNode?: BreadcrumbNodeRenderer;\r\n /** @internal */\r\n onRender?: () => void;\r\n /** @internal */\r\n expandedNodes?: boolean;\r\n}\r\n\r\n/** Enum for Breadcrumb Mode\r\n * @beta\r\n * @deprecated\r\n */\r\nexport enum BreadcrumbMode {\r\n Dropdown = \"dropdown\",\r\n Input = \"input\",\r\n}\r\n\r\n/** @internal */\r\ninterface BreadcrumbState {\r\n prev: {\r\n dataProvider: TreeDataProvider;\r\n modelReady: boolean;\r\n };\r\n model: BeInspireTree<TreeNodeItem>;\r\n modelReady: boolean;\r\n width: number | string;\r\n current?: TreeNodeItem;\r\n currentMode: BreadcrumbMode;\r\n pathString: string;\r\n}\r\n\r\n/**\r\n * Breadcrumb navigation component, with two discrete modes: text mode and dropdown mode.\r\n * Text mode includes autocomplete suggestions.\r\n * Both dropdown and text mode support arrow and tab navigation.\r\n * @beta\r\n * @deprecated Use Breadcrumbs from itwinui-react instead\r\n */\r\nexport class Breadcrumb extends React.Component<BreadcrumbProps, BreadcrumbState> {\r\n private _mounted: boolean = false;\r\n\r\n /** @internal */\r\n public static defaultProps: Partial<BreadcrumbProps> = {\r\n delimiter: \"\\\\\",\r\n background: true,\r\n initialBreadcrumbMode: BreadcrumbMode.Dropdown,\r\n showUpDir: true,\r\n parentsOnly: true,\r\n width: \"\",\r\n };\r\n\r\n /** @internal */\r\n public override readonly state: Readonly<BreadcrumbState>;\r\n\r\n /** @internal */\r\n constructor(props: BreadcrumbProps) {\r\n super(props);\r\n\r\n this.state = {\r\n prev: {\r\n dataProvider: props.dataProvider,\r\n modelReady: false,\r\n },\r\n model: Breadcrumb.createModel(props),\r\n modelReady: false,\r\n width: props.width!,\r\n currentMode: props.initialBreadcrumbMode!,\r\n current: props.initialCurrent,\r\n pathString: \"\",\r\n };\r\n }\r\n\r\n private static createModel(props: BreadcrumbProps) {\r\n return new BeInspireTree<TreeNodeItem>({\r\n dataProvider: props.dataProvider,\r\n mapPayloadToInspireNodeConfig: Breadcrumb.inspireNodeFromTreeNodeItem,\r\n });\r\n }\r\n\r\n /** @internal */\r\n public static getDerivedStateFromProps(props: BreadcrumbProps, state: BreadcrumbState): BreadcrumbState | null {\r\n const providerChanged = (props.dataProvider !== state.prev.dataProvider);\r\n\r\n // create derived state that just updates `prev` values\r\n const derivedState: BreadcrumbState = {\r\n ...state,\r\n prev: {\r\n ...state.prev,\r\n dataProvider: props.dataProvider,\r\n modelReady: state.modelReady,\r\n },\r\n };\r\n\r\n // in case provider changed, have to re-create `model` and reset `modelReady`\r\n if (providerChanged) {\r\n derivedState.model = Breadcrumb.createModel(props);\r\n derivedState.modelReady = false;\r\n }\r\n\r\n return derivedState;\r\n }\r\n\r\n /** @internal */\r\n public override componentDidMount() {\r\n this._mounted = true;\r\n this.assignModelListeners(this.state.model);\r\n this.assignDataProviderListeners(this.props.dataProvider);\r\n\r\n if (this.props.path) {\r\n this.props.path.setDataProvider(this.props.dataProvider);\r\n this.props.path.BreadcrumbUpdateEvent.addListener(this._handleUpdate);\r\n }\r\n\r\n /* istanbul ignore next */\r\n if (this.props.onRender)\r\n this.props.onRender();\r\n }\r\n\r\n /** @internal */\r\n public override componentWillUnmount() {\r\n if (this.props.path)\r\n this.props.path.BreadcrumbUpdateEvent.removeListener(this._handleUpdate);\r\n this.dropModelListeners(this.state.model);\r\n this.dropDataProviderListeners(this.props.dataProvider);\r\n this._mounted = false;\r\n }\r\n\r\n /** @internal */\r\n public override shouldComponentUpdate(nextProps: BreadcrumbProps, nextState: BreadcrumbState): boolean {\r\n if (this.state.modelReady !== nextState.modelReady || this.state.model !== nextState.model) {\r\n // always render when modelReady or model changes\r\n return true;\r\n }\r\n\r\n if (!nextState.modelReady) {\r\n // if we got here and model is not ready - don't render\r\n return false;\r\n }\r\n\r\n // otherwise, render when any of the following props / state change\r\n return this.props.renderNode !== nextProps.renderNode\r\n || this.props.dataProvider !== nextProps.dataProvider\r\n || this.props.background !== nextProps.background\r\n || this.props.dropdownOnly !== nextProps.dropdownOnly\r\n || this.props.parentsOnly !== nextProps.parentsOnly\r\n || this.props.showUpDir !== nextProps.showUpDir\r\n || this.state.current !== nextState.current\r\n || this.state.pathString !== nextState.pathString\r\n || this.state.currentMode !== nextState.currentMode\r\n || this.state.model.visible().some((n) => n.isDirty());\r\n }\r\n\r\n /** @internal */\r\n public override componentDidUpdate(prevProps: BreadcrumbProps, prevState: BreadcrumbState) {\r\n if (this.state.model !== prevState.model) {\r\n this.dropModelListeners(prevState.model);\r\n this.assignModelListeners(this.state.model);\r\n }\r\n\r\n if (this.props.dataProvider !== prevProps.dataProvider) {\r\n this.dropDataProviderListeners(prevProps.dataProvider);\r\n this.assignDataProviderListeners(this.props.dataProvider);\r\n }\r\n\r\n /* istanbul ignore next */\r\n if (this.props.onRender)\r\n this.props.onRender();\r\n }\r\n\r\n private assignModelListeners(model: BeInspireTree<TreeNodeItem>) {\r\n model.on(BeInspireTreeEvent.ChangesApplied, this._onModelChanged);\r\n model.on(BeInspireTreeEvent.ModelLoaded, this._onModelLoaded);\r\n model.on(BeInspireTreeEvent.ChildrenLoaded, this._onChildrenLoaded);\r\n // eslint-disable-next-line @typescript-eslint/no-floating-promises\r\n model.ready.then(() => {\r\n // istanbul ignore else\r\n if (model === this.state.model)\r\n this._onModelReady();\r\n });\r\n }\r\n\r\n private dropModelListeners(model: BeInspireTree<TreeNodeItem>) {\r\n model.removeAllListeners();\r\n }\r\n\r\n private assignDataProviderListeners(provider: TreeDataProvider) {\r\n if (isTreeDataProviderInterface(provider) && provider.onTreeNodeChanged) {\r\n provider.onTreeNodeChanged.addListener(this._onTreeNodeChanged);\r\n }\r\n }\r\n\r\n private dropDataProviderListeners(provider: TreeDataProvider) {\r\n if (isTreeDataProviderInterface(provider) && provider.onTreeNodeChanged) {\r\n provider.onTreeNodeChanged.removeListener(this._onTreeNodeChanged);\r\n }\r\n }\r\n\r\n private _handleUpdate = (args: BreadcrumbUpdateEventArgs) => {\r\n if (args.currentNode && this._mounted) {\r\n const current = this.state.model.node(args.currentNode.id);\r\n if (current) {\r\n const p = current.getTextualHierarchy().join(this.props.delimiter);\r\n this.setState({ current: args.currentNode, pathString: p });\r\n }\r\n } else {\r\n this.setState({ current: undefined, pathString: \"\" });\r\n }\r\n };\r\n\r\n private _onModelLoaded = (rootNodes: BeInspireTreeNodes<TreeNodeItem>) => {\r\n if (this.props.onRootNodesLoaded)\r\n this.props.onRootNodesLoaded(rootNodes.map((n) => n.payload!));\r\n const current = this.state.current ? this.state.model.node(this.state.current.id) : undefined;\r\n const p = current ? current.getTextualHierarchy().join(this.props.delimiter) : \"\";\r\n if (p !== this.state.pathString)\r\n this.setState({ pathString: p });\r\n };\r\n\r\n private _onChildrenLoaded = (parentNode: BeInspireTreeNode<TreeNodeItem>) => {\r\n const children = parentNode.getChildren();\r\n if (this.props.onChildrenLoaded)\r\n this.props.onChildrenLoaded(parentNode.payload!, toNodes<TreeNodeItem>(children).map((c) => c.payload!));\r\n const current = this.state.current ? this.state.model.node(this.state.current.id) : undefined;\r\n const p = current ? current.getTextualHierarchy().join(this.props.delimiter) : \"\";\r\n if (p !== this.state.pathString)\r\n this.setState({ pathString: p });\r\n };\r\n\r\n private _onModelChanged = () => {\r\n // just re-set the model to initiate update\r\n this.setState((prev) => ({ model: prev.model }));\r\n };\r\n\r\n private _onModelReady = () => {\r\n // istanbul ignore else\r\n if (this._mounted) {\r\n const current = this.state.current ? this.state.model.node(this.state.current.id) : undefined;\r\n this.setState((_prevState, props) => ({ modelReady: true, pathString: current ? current.getTextualHierarchy().join(props.delimiter) : \"\" }));\r\n }\r\n };\r\n\r\n private _onTreeNodeChanged = (_items: Array<TreeNodeItem | undefined>) => {\r\n using(this.state.model.pauseRendering(), async (_r) => { // eslint-disable-line @typescript-eslint/no-floating-promises\r\n await this.state.model.reload();\r\n });\r\n };\r\n\r\n private static inspireNodeFromTreeNodeItem(item: TreeNodeItem, remapper: MapPayloadToInspireNodeCallback<TreeNodeItem>): BeInspireTreeNodeConfig {\r\n const node: BeInspireTreeNodeConfig = {\r\n id: item.id,\r\n text: getPropertyRecordAsString(item.label),\r\n itree: {\r\n state: { collapsed: false },\r\n },\r\n };\r\n if (item.icon)\r\n node.itree!.icon = item.icon;\r\n if ((item as DelayLoadedTreeNodeItem).hasChildren)\r\n node.children = true;\r\n else if ((item as ImmediatelyLoadedTreeNodeItem).children)\r\n node.children = (item as ImmediatelyLoadedTreeNodeItem).children!.map((p) => remapper(p, remapper));\r\n return node;\r\n }\r\n\r\n /** @internal */\r\n public override render(): React.ReactNode {\r\n const classNames = classnames(\"components-breadcrumb\", this.props.background && \"background\", this.props.className);\r\n\r\n if (!this.state.modelReady) {\r\n return (\r\n <div className={classNames} style={this.props.style} />\r\n );\r\n }\r\n const node = this.state.current ? this.state.model.node(this.state.current.id) : undefined;\r\n return (\r\n <div\r\n className={classNames} style={this.props.style}>\r\n <div className=\"components-breadcrumb-head\"\r\n data-testid=\"components-breadcrumb-dropdown-input-parent\">\r\n {this.props.dropdownOnly || this.props.staticOnly ?\r\n <BreadcrumbDropdown\r\n tree={this.state.model}\r\n node={node}\r\n onNodeChange={this._handleNodeChange}\r\n onInputStart={this._setInput}\r\n renderNode={this.props.renderNode}\r\n staticOnly={this.props.staticOnly}\r\n showUpDir={this.props.showUpDir}\r\n parentsOnly={this.props.parentsOnly}\r\n width={this.props.width!}\r\n expandedNode={this.props.expandedNodes} /> :\r\n <InputSwitch\r\n tree={this.state.model}\r\n node={node}\r\n pathString={this.state.pathString}\r\n currentMode={this.state.currentMode}\r\n onInputStart={this._setInput}\r\n onInputCancel={this._setDropdown}\r\n onNodeChange={this._handleNodeChange}\r\n width={this.props.width!}\r\n showUpDir={this.props.showUpDir}\r\n parentsOnly={this.props.parentsOnly}\r\n delimiter={this.props.delimiter!}\r\n onOutsideClick={this._setDropdown}\r\n renderNode={this.props.renderNode}\r\n expandedNode={this.props.expandedNodes} />\r\n }\r\n </div>\r\n </div>\r\n );\r\n }\r\n\r\n private _setDropdown = () => this.setState({ currentMode: BreadcrumbMode.Dropdown });\r\n private _setInput = () => this.setState({ currentMode: BreadcrumbMode.Input });\r\n\r\n private _handleNodeChange = (node: TreeNodeItem | undefined) => {\r\n if (this.props.path)\r\n this.props.path.setCurrentNode(node);\r\n else {\r\n if (!node) {\r\n this.setState({ current: undefined, pathString: \"\" });\r\n } else {\r\n const current = this.state.current ? this.state.model.node(this.state.current.id) : undefined;\r\n const p = current ? current.getTextualHierarchy().join(this.props.delimiter) : \"\";\r\n this.setState({ current: node, pathString: p });\r\n }\r\n }\r\n if (this.state.currentMode !== BreadcrumbMode.Dropdown)\r\n this._setDropdown();\r\n };\r\n}\r\n\r\n/** @internal */\r\nexport interface InputSwitchProps {\r\n tree: BeInspireTree<TreeNodeItem>;\r\n node?: BeInspireTreeNode<TreeNodeItem>;\r\n pathString: string;\r\n currentMode: BreadcrumbMode;\r\n onInputStart?: () => void;\r\n onInputCancel: () => void;\r\n onNodeChange: (node?: TreeNodeItem) => void;\r\n showUpDir?: boolean;\r\n parentsOnly?: boolean;\r\n renderNode?: BreadcrumbNodeRenderer;\r\n width: number | string;\r\n delimiter: string;\r\n expandedNode?: boolean;\r\n}\r\n\r\n/** @internal */\r\nexport class InputSwitchComponent extends React.PureComponent<InputSwitchProps> {\r\n public override render(): React.ReactNode {\r\n const { currentMode, tree, node, onInputStart, onInputCancel, onNodeChange, renderNode, width, showUpDir, delimiter, expandedNode } = this.props;\r\n switch (currentMode) {\r\n case BreadcrumbMode.Dropdown:\r\n return <BreadcrumbDropdown tree={tree} node={node} onNodeChange={onNodeChange} renderNode={renderNode} onInputStart={onInputStart}\r\n parentsOnly={this.props.parentsOnly} showUpDir={showUpDir} width={width} expandedNode={expandedNode} />;\r\n case BreadcrumbMode.Input:\r\n return <BreadcrumbInput tree={tree} node={node} onNodeChange={onNodeChange} onCancel={onInputCancel}\r\n parentsOnly={this.props.parentsOnly} delimiter={delimiter} width={width} pathString={this.props.pathString} />;\r\n default:\r\n return <div data-testid=\"components-breadcrumb-error-unknown-mode\">{UiComponents.translate(\"breadcrumb.errorUnknownMode\")}</div>;\r\n }\r\n }\r\n}\r\n/** @internal */\r\nconst InputSwitch = withOnOutsideClick(InputSwitchComponent); // eslint-disable-line @typescript-eslint/naming-convention\r\n\r\n/** @internal */\r\nexport interface BreadcrumbInputProps {\r\n width: number | string;\r\n delimiter?: string;\r\n\r\n onCancel: () => void;\r\n onNodeChange: (node: TreeNodeItem | undefined) => void;\r\n parentsOnly?: boolean;\r\n\r\n tree: BeInspireTree<TreeNodeItem>;\r\n node?: BeInspireTreeNode<TreeNodeItem>;\r\n\r\n pathString: string;\r\n}\r\n\r\n/** @internal */\r\nexport interface BreadcrumbInputState {\r\n autocompleting: boolean;\r\n autocompleteList: string[];\r\n messageBoxOpened: boolean;\r\n}\r\n\r\n/** @internal */\r\nexport class BreadcrumbInput extends React.Component<BreadcrumbInputProps, BreadcrumbInputState> {\r\n private _inputElement: HTMLInputElement | null = null;\r\n private _autocomplete: ContextMenu | null = null;\r\n private _mounted: boolean = false;\r\n\r\n /** @internal */\r\n public override readonly state: Readonly<BreadcrumbInputState> = {\r\n autocompleting: false,\r\n autocompleteList: [],\r\n messageBoxOpened: false,\r\n };\r\n\r\n public override render(): JSX.Element {\r\n return (\r\n <div className=\"components-breadcrumb-input-root\" data-testid=\"components-breadcrumb-input-root\">\r\n <input\r\n className=\"components-breadcrumb-input\"\r\n data-testid=\"components-breadcrumb-input\"\r\n type=\"text\"\r\n ref={(e) => { this._inputElement = e; }}\r\n style={{ width: this.props.width }}\r\n onKeyDown={this._handleKeyDown} onKeyUp={this._handleKeyUp}\r\n onChange={this._handleChange} onPaste={this._handleChange} onCut={this._handleChange} onFocus={this._handleChange} onClick={this._handleChange}\r\n spellCheck={false}></input>\r\n {/* eslint-disable-next-line jsx-a11y/click-events-have-key-events */}\r\n <div className=\"components-breadcrumb-close icon icon-close\" data-testid=\"components-breadcrumb-input-close\" onClick={this._handleClose}\r\n role=\"button\" tabIndex={-1} />\r\n <ContextMenu\r\n ref={(el) => { this._autocomplete = el; }}\r\n style={{ width: \"100%\" }}\r\n opened={this.state.autocompleting}\r\n edgeLimit={false}\r\n selectedIndex={0} floating={false} autoflip={false}\r\n onEsc={() => {\r\n // istanbul ignore else\r\n if (this._inputElement)\r\n this._inputElement.focus();\r\n }}\r\n >\r\n {this.state.autocompleteList.map((listItem, index) => {\r\n let l = 0;\r\n // istanbul ignore else\r\n if (this._inputElement) {\r\n l = this._inputElement.value.length;\r\n }\r\n return (\r\n <ContextMenuItem\r\n key={index}\r\n onSelect={(event) => {\r\n // istanbul ignore else\r\n if (this._inputElement) {\r\n this._inputElement.value = listItem;\r\n this._inputElement.focus();\r\n this._inputElement.setSelectionRange(listItem.length, listItem.length);\r\n\r\n const autocompleteStr = this._inputElement.value.substring(0, this._inputElement.selectionEnd!);\r\n this._getAutocompleteList(autocompleteStr).then((list) => { // eslint-disable-line @typescript-eslint/no-floating-promises\r\n // istanbul ignore else\r\n if (this._mounted)\r\n this.setState({\r\n autocompleting: false,\r\n autocompleteList: list,\r\n });\r\n });\r\n event.stopPropagation();\r\n }\r\n }}>\r\n <span className=\"components-breadcrumb-selected\">{listItem.substr(0, l)}</span>{listItem.substr(l)}\r\n </ContextMenuItem>\r\n );\r\n })}\r\n </ContextMenu>\r\n <MessageBox opened={this.state.messageBoxOpened} modal={false} onClose={this._handleMessageBoxClose} severity={MessageSeverity.Warning} buttonCluster={[{ type: DialogButtonType.OK, onClick: this._handleMessageBoxClose }]}>\r\n {UiComponents.translate(\"breadcrumb.invalidBreadcrumbPath\")}\r\n </MessageBox>\r\n </div>\r\n );\r\n }\r\n\r\n private _handleMessageBoxClose = () => {\r\n this.setState({ messageBoxOpened: false });\r\n };\r\n\r\n /** @internal */\r\n public override componentDidMount() {\r\n this._mounted = true;\r\n // istanbul ignore else\r\n if (this._inputElement) {\r\n const activeWindow = this._inputElement.ownerDocument.defaultView;\r\n activeWindow && activeWindow.addEventListener(\"click\", this._handleClick);\r\n this._inputElement.value = this.props.pathString;\r\n this._inputElement.focus();\r\n }\r\n }\r\n\r\n /** @internal */\r\n public override componentWillUnmount() {\r\n // istanbul ignore else\r\n if (this._inputElement) {\r\n const activeWindow = this._inputElement.ownerDocument.defaultView;\r\n activeWindow && activeWindow.removeEventListener(\"click\", this._handleClick);\r\n }\r\n this._mounted = false;\r\n }\r\n\r\n private _handleClose = () => {\r\n this.props.onCancel();\r\n this.setState({ autocompleting: false });\r\n };\r\n\r\n private _getAutocompleteList = async (path: string) => {\r\n const node = await this._findChildParentPartial(path);\r\n if (node) {\r\n const baseString = node.getTextualHierarchy().join(this.props.delimiter);\r\n const children = node.getChildren();\r\n const parentChildren = this.props.parentsOnly ? children.filter((child) => child.hasOrWillHaveChildren()) : children;\r\n const strList = parentChildren.map((n) => baseString + this.props.delimiter! + n.toString());\r\n return strList.filter((e) => e.substr(0, path.length) === path);\r\n } else {\r\n const nodes = this.props.tree.nodes();\r\n const parentRoots = this.props.parentsOnly ? nodes.filter((child) => child.hasOrWillHaveChildren()) : nodes;\r\n const strList = parentRoots.map((n) => n.toString() + this.props.delimiter!);\r\n return strList.filter((e) => e.substr(0, path.length) === path);\r\n }\r\n };\r\n\r\n private _findChildUserInput = async (p: string): Promise<BeInspireTreeNode<TreeNodeItem> | undefined> => {\r\n const delimiter = this.props.delimiter!;\r\n if (p.endsWith(delimiter)) // strip last delimiter if at end\r\n p = p.substr(0, p.length - delimiter.length);\r\n const root = this.props.tree.nodes();\r\n for (const node of root) {\r\n const found = await this._find(node, p);\r\n if (found)\r\n return found;\r\n }\r\n return undefined;\r\n };\r\n private _findChildParentPartial = async (p: string): Promise<BeInspireTreeNode<TreeNodeItem> | undefined> => {\r\n const delimiter = this.props.delimiter!;\r\n const lastDel = p.lastIndexOf(delimiter);\r\n if (lastDel !== -1) // strip last delimiter and everything after\r\n p = p.substring(0, lastDel);\r\n else\r\n return undefined;\r\n const root = this.props.tree.nodes();\r\n for (const node of root) {\r\n const found = await this._find(node, p);\r\n if (found)\r\n return found;\r\n }\r\n return undefined;\r\n };\r\n private _find = async (node: BeInspireTreeNode<TreeNodeItem>, p: string): Promise<BeInspireTreeNode<TreeNodeItem> | undefined> => {\r\n const delimiter = this.props.delimiter!;\r\n // remove leading delimiter\r\n if (p.indexOf(delimiter) === 0)\r\n p = p.substr(delimiter.length);\r\n const { text } = node;\r\n if (text === p) {\r\n return node;\r\n }\r\n if (p.indexOf(text) === 0 && node.hasOrWillHaveChildren()) {\r\n const children = node.getChildren();\r\n for (const child of children) {\r\n const n = await this._find(child as BeInspireTreeNode<TreeNodeItem>, p.substr(text.length));\r\n if (n)\r\n return n;\r\n }\r\n }\r\n return undefined;\r\n };\r\n\r\n private _handleClick = (event: MouseEvent): void => {\r\n // istanbul ignore else\r\n if (this._autocomplete) {\r\n // istanbul ignore else\r\n if (this._inputElement && event.target === this._inputElement) {\r\n this.setState({ autocompleting: false });\r\n this._inputElement.focus();\r\n }\r\n }\r\n };\r\n\r\n private _handleKeyDown = (event: React.KeyboardEvent<HTMLInputElement>) => {\r\n switch (event.key) {\r\n case SpecialKey.ArrowUp:\r\n case SpecialKey.ArrowDown:\r\n event.preventDefault();\r\n }\r\n };\r\n private _handleKeyUp = async (event: React.KeyboardEvent<HTMLInputElement>) => {\r\n switch (event.key) {\r\n case SpecialKey.Escape:\r\n // istanbul ignore else\r\n if (this._mounted)\r\n this.setState({ autocompleting: false });\r\n break;\r\n case SpecialKey.ArrowUp:\r\n case SpecialKey.ArrowDown:\r\n event.preventDefault();\r\n // istanbul ignore else\r\n if (this._autocomplete && this.state.autocompleteList.length > 0) {\r\n this._autocomplete.focus();\r\n // istanbul ignore else\r\n if (this._mounted)\r\n this.setState({ autocompleting: true });\r\n }\r\n break;\r\n case SpecialKey.Enter:\r\n // istanbul ignore else\r\n if (this._inputElement) {\r\n const path = this._inputElement.value;\r\n if (path === \"\" || path === this.props.delimiter!) {\r\n this.props.onNodeChange(undefined);\r\n // istanbul ignore else\r\n if (this._mounted)\r\n this.setState({ autocompleting: false });\r\n } else {\r\n const node = await this._findChildUserInput(path);\r\n if (node === undefined)\r\n this.setState({ messageBoxOpened: true });\r\n else\r\n this.props.onNodeChange(node.payload);\r\n }\r\n }\r\n break;\r\n }\r\n };\r\n\r\n private _handleChange = (): void => {\r\n // istanbul ignore else\r\n if (this._inputElement) {\r\n const autocompleteStr = this._inputElement.value.substring(0, this._inputElement.selectionEnd!);\r\n this._getAutocompleteList(autocompleteStr).then((list) => { // eslint-disable-line @typescript-eslint/no-floating-promises\r\n if (this._mounted)\r\n this.setState({\r\n autocompleting: list.length > 0,\r\n autocompleteList: list,\r\n });\r\n });\r\n }\r\n };\r\n}\r\n\r\n/** @internal */\r\ninterface BreadcrumbDropdownProps {\r\n tree: BeInspireTree<TreeNodeItem>;\r\n node?: BeInspireTreeNode<TreeNodeItem>;\r\n onInputStart?: () => void;\r\n onNodeChange: (node: TreeNodeItem | undefined) => void;\r\n staticOnly?: boolean;\r\n parentsOnly?: boolean;\r\n delimiter?: string;\r\n width: number | string;\r\n showUpDir?: boolean;\r\n renderNode?: BreadcrumbNodeRenderer;\r\n expandedNode?: boolean;\r\n}\r\n\r\n/** @internal */\r\nclass BreadcrumbDropdown extends React.Component<BreadcrumbDropdownProps> {\r\n\r\n /** @internal */\r\n public override componentDidMount() {\r\n this.props.tree.on(BeInspireTreeEvent.ChildrenLoaded, this._onChildrenLoaded);\r\n this.props.tree.on(BeInspireTreeEvent.ModelLoaded, this._onModelLoaded);\r\n }\r\n\r\n /** @internal */\r\n public override componentWillUnmount() {\r\n this.props.tree.removeListener(BeInspireTreeEvent.ChildrenLoaded, this._onChildrenLoaded);\r\n this.props.tree.removeListener(BeInspireTreeEvent.ModelLoaded, this._onModelLoaded);\r\n }\r\n\r\n private _onModelLoaded = (_rootNodes: BeInspireTreeNodes<TreeNodeItem>) => {\r\n this.forceUpdate();\r\n };\r\n\r\n private _onChildrenLoaded = (_parentNode: BeInspireTreeNode<TreeNodeItem>) => {\r\n this.forceUpdate();\r\n };\r\n\r\n /** @internal */\r\n public override shouldComponentUpdate(nextProps: BreadcrumbDropdownProps) {\r\n return this.props.tree !== nextProps.tree ||\r\n this.props.node !== nextProps.node ||\r\n (nextProps.node && /* istanbul ignore next */ nextProps.node.isDirty()) ||\r\n this.props.onInputStart !== nextProps.onInputStart ||\r\n this.props.delimiter !== nextProps.delimiter ||\r\n this.props.width !== nextProps.width ||\r\n this.props.renderNode !== nextProps.renderNode;\r\n }\r\n\r\n public override render(): JSX.Element | null {\r\n const node = this.props.node;\r\n let nodes: BeInspireTreeNodes<TreeNodeItem> | undefined;\r\n if (node) {\r\n nodes = toNodes<TreeNodeItem>(node.getParents());\r\n nodes.reverse();\r\n nodes.push(node);\r\n }\r\n return (\r\n // eslint-disable-next-line jsx-a11y/click-events-have-key-events\r\n <div\r\n className=\"components-breadcrumb-dropdown\"\r\n data-testid=\"components-breadcrumb-dropdown-background\"\r\n style={{ width: this.props.width }}\r\n onClick={this._focusInput}\r\n role=\"button\" tabIndex={-1}\r\n >\r\n {!this.props.staticOnly && this.props.showUpDir ?\r\n // eslint-disable-next-line jsx-a11y/click-events-have-key-events\r\n <div data-testid=\"components-breadcrumb-up-dir\"\r\n className={classnames(\r\n \"components-breadcrumb-up-dir\",\r\n \"icon\", \"icon-sort-up\",\r\n { root: this.props.node === undefined })\r\n } onClick={this._handleUpClick} role=\"button\" tabIndex={-1} />\r\n : undefined\r\n }\r\n <div className=\"components-breadcrumb-crumb-list\"\r\n data-testid=\"components-breadcrumb-crumb-list\">\r\n <BreadcrumbDropdownNode\r\n key={-1}\r\n tree={this.props.tree}\r\n node={undefined}\r\n onNodeSelected={this.props.onNodeChange}\r\n staticOnly={this.props.staticOnly}\r\n parentsOnly={this.props.parentsOnly}\r\n last={!nodes || nodes.length === 0}\r\n renderNode={this.props.renderNode}\r\n expandedNode={this.props.expandedNode} />\r\n {nodes && nodes.map((n, i) => {\r\n return (\r\n <BreadcrumbDropdownNode\r\n key={i}\r\n tree={this.props.tree}\r\n node={n}\r\n onNodeSelected={this.props.onNodeChange}\r\n staticOnly={this.props.staticOnly}\r\n parentsOnly={this.props.parentsOnly}\r\n last={i === nodes!.length - 1}\r\n renderNode={this.props.renderNode}\r\n expandedNode={this.props.expandedNode} />\r\n );\r\n })}\r\n </div>\r\n </div>\r\n );\r\n }\r\n\r\n private _handleUpClick = () => {\r\n let parent: TreeNodeItem | undefined;\r\n if (this.props.node) {\r\n const p = (this.props.node.getParent()) as BeInspireTreeNode<TreeNodeItem>;\r\n if (p)\r\n parent = p.payload;\r\n }\r\n this.props.onNodeChange(parent);\r\n };\r\n\r\n private _focusInput = (event: React.MouseEvent) => {\r\n if (event.target === event.currentTarget && this.props.onInputStart) // check if click is direct, or bubbled\r\n this.props.onInputStart();\r\n };\r\n}\r\n\r\n/** @internal */\r\ninterface BreadcrumbDropdownNodeProps {\r\n tree: BeInspireTree<TreeNodeItem>;\r\n node?: BeInspireTreeNode<TreeNodeItem>;\r\n onNodeSelected: (node: TreeNodeItem | undefined) => void;\r\n staticOnly?: boolean;\r\n parentsOnly?: boolean;\r\n last?: boolean;\r\n renderNode?: BreadcrumbNodeRenderer;\r\n expandedNode?: boolean;\r\n}\r\n\r\n/** @internal */\r\nclass BreadcrumbDropdownNode extends React.Component<BreadcrumbDropdownNodeProps> {\r\n constructor(props: BreadcrumbDropdownNodeProps) {\r\n super(props);\r\n }\r\n\r\n public override render(): React.ReactNode {\r\n const { node } = this.props;\r\n let nodeChildren: Array<BeInspireTreeNode<TreeNodeItem>> = this.props.tree.nodes();\r\n if (node)\r\n nodeChildren = toNodes<TreeNodeItem>(node.getChildren());\r\n const n = node && node.payload;\r\n let parent: TreeNodeItem | undefined;\r\n if (node) {\r\n const p = node.getParent() as BeInspireTreeNode<TreeNodeItem>;\r\n if (p)\r\n parent = p.payload;\r\n }\r\n const label = n && n.label ? n.label : PropertyRecord.fromString(\"\");\r\n const icon = n && n.icon ? n.icon : \"icon-browse\";\r\n const renderNode = this.props.renderNode ? this.props.renderNode : this.renderNode;\r\n if (this.props.parentsOnly)\r\n nodeChildren = nodeChildren.filter((child) => child.hasOrWillHaveChildren());\r\n if (nodeChildren.length > 0) {\r\n if (this.props.staticOnly) {\r\n return <span data-testid=\"components-breadcrumb-static-button\" className=\"components-breadcrumb-split-button static\">\r\n {renderNode({ label, icon }, n, parent)}\r\n {!this.props.last ? <span className=\"static-arrow-icon icon icon-chevron-right\" /> : undefined}\r\n </span>;\r\n }\r\n return (\r\n <SplitButton\r\n className=\"components-breadcrumb-split-button\"\r\n onClick={(event) => {\r\n event.stopPropagation();\r\n this.props.onNodeSelected(n);\r\n }}\r\n label={renderNode({ label, icon }, n, parent)}\r\n initialExpanded={this.props.expandedNode}\r\n >\r\n {nodeChildren.map((child, d) => {\r\n return (\r\n <ContextMenuItem\r\n key={d}\r\n icon={child.payload!.icon}\r\n onSelect={(_event) => {\r\n this.props.onNodeSelected(child.payload);\r\n }}>\r\n {PropertyValueRendererManager.defaultManager.render(child.payload!.label)}\r\n </ContextMenuItem>\r\n );\r\n })}\r\n </SplitButton>\r\n );\r\n } else {\r\n return (\r\n <span className={classnames(\"components-breadcrumb-end-node\", { static: this.props.staticOnly })}>\r\n {renderNode({ label, icon }, n, parent)}\r\n </span>\r\n );\r\n }\r\n }\r\n\r\n // eslint-disable-next-line @typescript-eslint/naming-convention\r\n private renderNode = (props: BreadcrumbNodeProps, _node?: TreeNodeItem, _parent?: TreeNodeItem) => {\r\n return <BreadcrumbNode label={props.label} icon={props.icon} />;\r\n };\r\n}\r\n\r\n/** Properties for [[BreadcrumbNode]] component\r\n * @beta\r\n * @deprecated\r\n */\r\nexport interface BreadcrumbNodeProps {\r\n /** Icon class string */\r\n icon: string;\r\n /** Node label */\r\n label: PropertyRecord;\r\n /** @internal */\r\n onRender?: () => void;\r\n}\r\n\r\n/** Default BreadcrumbNode component\r\n * @beta\r\n * @deprecated\r\n */\r\nexport class BreadcrumbNode extends React.Component<BreadcrumbNodeProps> {\r\n constructor(props: BreadcrumbNodeProps) {\r\n super(props);\r\n }\r\n\r\n public override render(): React.ReactNode {\r\n const { icon, label } = this.props;\r\n return <span data-testid=\"components-breadcrumb-node\"><span className={classnames(\"icon\", icon)} />{PropertyValueRendererManager.defaultManager.render(label)}</span>;\r\n }\r\n\r\n public override componentDidMount() {\r\n // istanbul ignore next\r\n if (this.props.onRender)\r\n this.props.onRender();\r\n }\r\n\r\n public override componentDidUpdate() {\r\n // istanbul ignore next\r\n if (this.props.onRender)\r\n this.props.onRender();\r\n }\r\n}\r\n"]}