@itwin/components-react 3.6.0-dev.7 → 4.0.0-dev.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +26 -1
- package/LICENSE.md +1 -1
- package/lib/cjs/components-react/breadcrumb/Breadcrumb.d.ts +5 -5
- package/lib/cjs/components-react/breadcrumb/Breadcrumb.js +3 -3
- package/lib/cjs/components-react/breadcrumb/Breadcrumb.js.map +1 -1
- package/lib/cjs/components-react/breadcrumb/BreadcrumbDetails.d.ts +2 -2
- package/lib/cjs/components-react/breadcrumb/BreadcrumbDetails.js +1 -1
- package/lib/cjs/components-react/breadcrumb/BreadcrumbDetails.js.map +1 -1
- package/lib/cjs/components-react/breadcrumb/BreadcrumbPath.d.ts +3 -3
- package/lib/cjs/components-react/breadcrumb/BreadcrumbPath.js +2 -2
- package/lib/cjs/components-react/breadcrumb/BreadcrumbPath.js.map +1 -1
- package/lib/cjs/components-react/breadcrumb/BreadcrumbTreeUtils.d.ts +1 -1
- package/lib/cjs/components-react/breadcrumb/BreadcrumbTreeUtils.js +1 -1
- package/lib/cjs/components-react/breadcrumb/BreadcrumbTreeUtils.js.map +1 -1
- package/lib/cjs/components-react/common/UseDebouncedAsyncValue.d.ts +4 -1
- package/lib/cjs/components-react/common/UseDebouncedAsyncValue.d.ts.map +1 -1
- package/lib/cjs/components-react/common/UseDebouncedAsyncValue.js +4 -1
- package/lib/cjs/components-react/common/UseDebouncedAsyncValue.js.map +1 -1
- package/lib/cjs/components-react/common/showhide/ShowHideDialog.d.ts +2 -2
- package/lib/cjs/components-react/common/showhide/ShowHideDialog.js +1 -1
- package/lib/cjs/components-react/common/showhide/ShowHideDialog.js.map +1 -1
- package/lib/cjs/components-react/common/showhide/ShowHideItem.d.ts +2 -2
- package/lib/cjs/components-react/common/showhide/ShowHideItem.js.map +1 -1
- package/lib/cjs/components-react/common/showhide/ShowHideMenu.d.ts +2 -2
- package/lib/cjs/components-react/common/showhide/ShowHideMenu.js +1 -1
- package/lib/cjs/components-react/common/showhide/ShowHideMenu.js.map +1 -1
- package/lib/cjs/components-react/converters/TypeConverterManager.d.ts.map +1 -1
- package/lib/cjs/components-react/converters/TypeConverterManager.js +3 -4
- package/lib/cjs/components-react/converters/TypeConverterManager.js.map +1 -1
- package/lib/cjs/components-react/editors/ThemedEnumEditor.d.ts +3 -3
- package/lib/cjs/components-react/editors/ThemedEnumEditor.js +2 -2
- package/lib/cjs/components-react/editors/ThemedEnumEditor.js.map +1 -1
- package/lib/cjs/components-react/filter-builder/FilterBuilder.d.ts +22 -24
- package/lib/cjs/components-react/filter-builder/FilterBuilder.d.ts.map +1 -1
- package/lib/cjs/components-react/filter-builder/FilterBuilder.js +24 -83
- package/lib/cjs/components-react/filter-builder/FilterBuilder.js.map +1 -1
- package/lib/cjs/components-react/filter-builder/FilterBuilderContext.d.ts +80 -0
- package/lib/cjs/components-react/filter-builder/FilterBuilderContext.d.ts.map +1 -0
- package/lib/cjs/components-react/filter-builder/FilterBuilderContext.js +83 -0
- package/lib/cjs/components-react/filter-builder/FilterBuilderContext.js.map +1 -0
- package/lib/cjs/components-react/filter-builder/FilterBuilderRule.d.ts +14 -3
- package/lib/cjs/components-react/filter-builder/FilterBuilderRule.d.ts.map +1 -1
- package/lib/cjs/components-react/filter-builder/FilterBuilderRule.js +22 -12
- package/lib/cjs/components-react/filter-builder/FilterBuilderRule.js.map +1 -1
- package/lib/cjs/components-react/filter-builder/FilterBuilderRule.scss +4 -0
- package/lib/cjs/components-react/filter-builder/FilterBuilderRuleGroup.d.ts +25 -16
- package/lib/cjs/components-react/filter-builder/FilterBuilderRuleGroup.d.ts.map +1 -1
- package/lib/cjs/components-react/filter-builder/FilterBuilderRuleGroup.js +22 -14
- package/lib/cjs/components-react/filter-builder/FilterBuilderRuleGroup.js.map +1 -1
- package/lib/cjs/components-react/filter-builder/FilterBuilderRuleOperator.d.ts +14 -2
- package/lib/cjs/components-react/filter-builder/FilterBuilderRuleOperator.d.ts.map +1 -1
- package/lib/cjs/components-react/filter-builder/FilterBuilderRuleOperator.js +11 -5
- package/lib/cjs/components-react/filter-builder/FilterBuilderRuleOperator.js.map +1 -1
- package/lib/cjs/components-react/filter-builder/FilterBuilderRuleProperty.d.ts +16 -2
- package/lib/cjs/components-react/filter-builder/FilterBuilderRuleProperty.d.ts.map +1 -1
- package/lib/cjs/components-react/filter-builder/FilterBuilderRuleProperty.js +11 -5
- package/lib/cjs/components-react/filter-builder/FilterBuilderRuleProperty.js.map +1 -1
- package/lib/cjs/components-react/filter-builder/FilterBuilderRuleValue.d.ts +14 -2
- package/lib/cjs/components-react/filter-builder/FilterBuilderRuleValue.d.ts.map +1 -1
- package/lib/cjs/components-react/filter-builder/FilterBuilderRuleValue.js +11 -5
- package/lib/cjs/components-react/filter-builder/FilterBuilderRuleValue.js.map +1 -1
- package/lib/cjs/components-react/filter-builder/FilterBuilderState.d.ts +52 -8
- package/lib/cjs/components-react/filter-builder/FilterBuilderState.d.ts.map +1 -1
- package/lib/cjs/components-react/filter-builder/FilterBuilderState.js +102 -12
- package/lib/cjs/components-react/filter-builder/FilterBuilderState.js.map +1 -1
- package/lib/cjs/components-react/filter-builder/Operators.d.ts +23 -5
- package/lib/cjs/components-react/filter-builder/Operators.d.ts.map +1 -1
- package/lib/cjs/components-react/filter-builder/Operators.js +25 -7
- package/lib/cjs/components-react/filter-builder/Operators.js.map +1 -1
- package/lib/cjs/components-react/filter-builder/Types.d.ts +24 -4
- package/lib/cjs/components-react/filter-builder/Types.d.ts.map +1 -1
- package/lib/cjs/components-react/filter-builder/Types.js +11 -1
- package/lib/cjs/components-react/filter-builder/Types.js.map +1 -1
- package/lib/cjs/components-react/filtering/FilteringInput.js +1 -1
- package/lib/cjs/components-react/filtering/FilteringInput.js.map +1 -1
- package/lib/cjs/components-react/iconpicker/IconPickerButton.d.ts +2 -2
- package/lib/cjs/components-react/iconpicker/IconPickerButton.js +2 -2
- package/lib/cjs/components-react/iconpicker/IconPickerButton.js.map +1 -1
- package/lib/cjs/components-react/properties/LinkHandler.d.ts +2 -2
- package/lib/cjs/components-react/properties/LinkHandler.js +1 -1
- package/lib/cjs/components-react/properties/LinkHandler.js.map +1 -1
- package/lib/cjs/components-react/propertygrid/PropertyCategoryRendererManager.d.ts +3 -3
- package/lib/cjs/components-react/propertygrid/PropertyCategoryRendererManager.js +1 -1
- package/lib/cjs/components-react/propertygrid/PropertyCategoryRendererManager.js.map +1 -1
- package/lib/cjs/components-react/propertygrid/PropertyDataProvider.d.ts +2 -2
- package/lib/cjs/components-react/propertygrid/PropertyDataProvider.js.map +1 -1
- package/lib/cjs/components-react/propertygrid/component/PropertyGrid.d.ts +3 -1
- package/lib/cjs/components-react/propertygrid/component/PropertyGrid.d.ts.map +1 -1
- package/lib/cjs/components-react/propertygrid/component/PropertyGrid.js +1 -0
- package/lib/cjs/components-react/propertygrid/component/PropertyGrid.js.map +1 -1
- package/lib/cjs/components-react/propertygrid/component/PropertyGridCommons.d.ts +5 -10
- package/lib/cjs/components-react/propertygrid/component/PropertyGridCommons.d.ts.map +1 -1
- package/lib/cjs/components-react/propertygrid/component/PropertyGridCommons.js.map +1 -1
- package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGrid.d.ts +3 -3
- package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGrid.js +1 -1
- package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGrid.js.map +1 -1
- package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGrid.scss +11 -0
- package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.d.ts +2 -2
- package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.js +1 -1
- package/lib/cjs/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.js.map +1 -1
- package/lib/cjs/components-react/propertygrid/internal/PropertyGridEventHandler.d.ts +2 -2
- package/lib/cjs/components-react/propertygrid/internal/PropertyGridEventHandler.js +1 -1
- package/lib/cjs/components-react/propertygrid/internal/PropertyGridEventHandler.js.map +1 -1
- package/lib/cjs/components-react/propertygrid/internal/PropertyGridHooks.d.ts +3 -3
- package/lib/cjs/components-react/propertygrid/internal/PropertyGridHooks.js +3 -3
- package/lib/cjs/components-react/propertygrid/internal/PropertyGridHooks.js.map +1 -1
- package/lib/cjs/components-react/propertygrid/internal/PropertyGridModel.d.ts +3 -3
- package/lib/cjs/components-react/propertygrid/internal/PropertyGridModel.js +1 -1
- package/lib/cjs/components-react/propertygrid/internal/PropertyGridModel.js.map +1 -1
- package/lib/cjs/components-react/propertygrid/internal/PropertyGridModelChangeEvent.d.ts +2 -2
- package/lib/cjs/components-react/propertygrid/internal/PropertyGridModelChangeEvent.js +1 -1
- package/lib/cjs/components-react/propertygrid/internal/PropertyGridModelChangeEvent.js.map +1 -1
- package/lib/cjs/components-react/propertygrid/internal/PropertyGridModelSource.d.ts +2 -2
- package/lib/cjs/components-react/propertygrid/internal/PropertyGridModelSource.d.ts.map +1 -1
- package/lib/cjs/components-react/propertygrid/internal/PropertyGridModelSource.js +1 -1
- package/lib/cjs/components-react/propertygrid/internal/PropertyGridModelSource.js.map +1 -1
- package/lib/cjs/components-react/propertygrid/internal/flat-items/FlatGridItem.d.ts +6 -6
- package/lib/cjs/components-react/propertygrid/internal/flat-items/FlatGridItem.d.ts.map +1 -1
- package/lib/cjs/components-react/propertygrid/internal/flat-items/FlatGridItem.js.map +1 -1
- package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedArrayProperty.d.ts +1 -1
- package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedArrayProperty.js +1 -1
- package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedArrayProperty.js.map +1 -1
- package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedPrimitiveProperty.d.ts +1 -1
- package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedPrimitiveProperty.js +1 -1
- package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedPrimitiveProperty.js.map +1 -1
- package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedStructProperty.d.ts +1 -1
- package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedStructProperty.js +1 -1
- package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableCategorizedStructProperty.js.map +1 -1
- package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.d.ts +10 -10
- package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.js +3 -3
- package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.js.map +1 -1
- package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableGridCategory.d.ts +2 -2
- package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableGridCategory.js +1 -1
- package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableGridCategory.js.map +1 -1
- package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableGridItemFactory.d.ts +2 -2
- package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableGridItemFactory.js +1 -1
- package/lib/cjs/components-react/propertygrid/internal/flat-items/MutableGridItemFactory.js.map +1 -1
- package/lib/cjs/components-react/propertygrid/internal/flat-properties/FlatPropertyRenderer.d.ts +3 -6
- package/lib/cjs/components-react/propertygrid/internal/flat-properties/FlatPropertyRenderer.d.ts.map +1 -1
- package/lib/cjs/components-react/propertygrid/internal/flat-properties/FlatPropertyRenderer.js.map +1 -1
- package/lib/cjs/components-react/table/SimpleTableDataProvider.d.ts +1 -1
- package/lib/cjs/components-react/table/SimpleTableDataProvider.js +1 -1
- package/lib/cjs/components-react/table/SimpleTableDataProvider.js.map +1 -1
- package/lib/cjs/components-react/table/TableDataProvider.d.ts +8 -8
- package/lib/cjs/components-react/table/TableDataProvider.js +2 -2
- package/lib/cjs/components-react/table/TableDataProvider.js.map +1 -1
- package/lib/cjs/components-react/table/columnfiltering/ColumnFiltering.d.ts +16 -16
- package/lib/cjs/components-react/table/columnfiltering/ColumnFiltering.js +6 -6
- package/lib/cjs/components-react/table/columnfiltering/ColumnFiltering.js.map +1 -1
- package/lib/cjs/components-react/table/component/ColumnDragLayer.d.ts +1 -1
- package/lib/cjs/components-react/table/component/ColumnDragLayer.js +1 -1
- package/lib/cjs/components-react/table/component/ColumnDragLayer.js.map +1 -1
- package/lib/cjs/components-react/table/component/Table.d.ts +9 -9
- package/lib/cjs/components-react/table/component/Table.d.ts.map +1 -1
- package/lib/cjs/components-react/table/component/Table.js +2 -2
- package/lib/cjs/components-react/table/component/Table.js.map +1 -1
- package/lib/cjs/components-react/table/component/TableCell.d.ts +6 -6
- package/lib/cjs/components-react/table/component/TableCell.js +3 -3
- package/lib/cjs/components-react/table/component/TableCell.js.map +1 -1
- package/lib/cjs/components-react/table/component/TableColumn.d.ts +1 -1
- package/lib/cjs/components-react/table/component/TableColumn.js.map +1 -1
- package/lib/cjs/components-react/table/component/dragdrop/BeDragDropContext.d.ts +1 -1
- package/lib/cjs/components-react/table/component/dragdrop/BeDragDropContext.js +1 -1
- package/lib/cjs/components-react/table/component/dragdrop/BeDragDropContext.js.map +1 -1
- package/lib/cjs/components-react/table/component/dragdrop/DragDropDef.d.ts +8 -8
- package/lib/cjs/components-react/table/component/dragdrop/DragDropDef.js +2 -2
- package/lib/cjs/components-react/table/component/dragdrop/DragDropDef.js.map +1 -1
- package/lib/cjs/components-react/table/component/dragdrop/withDragSource.d.ts +2 -2
- package/lib/cjs/components-react/table/component/dragdrop/withDragSource.js +1 -1
- package/lib/cjs/components-react/table/component/dragdrop/withDragSource.js.map +1 -1
- package/lib/cjs/components-react/table/component/dragdrop/withDropTarget.d.ts +2 -2
- package/lib/cjs/components-react/table/component/dragdrop/withDropTarget.js +1 -1
- package/lib/cjs/components-react/table/component/dragdrop/withDropTarget.js.map +1 -1
- package/lib/cjs/components-react/toolbar/Toolbar.d.ts +1 -1
- package/lib/cjs/components-react/toolbar/Toolbar.d.ts.map +1 -1
- package/lib/cjs/components-react/toolbar/Toolbar.js.map +1 -1
- package/lib/cjs/components-react/toolbar/ToolbarWithOverflow.d.ts +2 -2
- package/lib/cjs/components-react/toolbar/ToolbarWithOverflow.d.ts.map +1 -1
- package/lib/cjs/components-react/toolbar/ToolbarWithOverflow.js.map +1 -1
- package/lib/cjs/components-react/tree/TreeDataProvider.d.ts +2 -2
- package/lib/cjs/components-react/tree/TreeDataProvider.d.ts.map +1 -1
- package/lib/cjs/components-react/tree/TreeDataProvider.js.map +1 -1
- package/lib/cjs/components-react/tree/controlled/component/ControlledTree.d.ts +1 -4
- package/lib/cjs/components-react/tree/controlled/component/ControlledTree.d.ts.map +1 -1
- package/lib/cjs/components-react/tree/controlled/component/ControlledTree.js.map +1 -1
- package/lib/cjs/components-react/tree/controlled/component/TreeRenderer.d.ts +2 -5
- package/lib/cjs/components-react/tree/controlled/component/TreeRenderer.d.ts.map +1 -1
- package/lib/cjs/components-react/tree/controlled/component/TreeRenderer.js.map +1 -1
- package/lib/cjs/components-react.d.ts +4 -6
- package/lib/cjs/components-react.d.ts.map +1 -1
- package/lib/cjs/components-react.js +4 -6
- package/lib/cjs/components-react.js.map +1 -1
- package/lib/esm/components-react/breadcrumb/Breadcrumb.d.ts +5 -5
- package/lib/esm/components-react/breadcrumb/Breadcrumb.js +3 -3
- package/lib/esm/components-react/breadcrumb/Breadcrumb.js.map +1 -1
- package/lib/esm/components-react/breadcrumb/BreadcrumbDetails.d.ts +2 -2
- package/lib/esm/components-react/breadcrumb/BreadcrumbDetails.js +1 -1
- package/lib/esm/components-react/breadcrumb/BreadcrumbDetails.js.map +1 -1
- package/lib/esm/components-react/breadcrumb/BreadcrumbPath.d.ts +3 -3
- package/lib/esm/components-react/breadcrumb/BreadcrumbPath.js +2 -2
- package/lib/esm/components-react/breadcrumb/BreadcrumbPath.js.map +1 -1
- package/lib/esm/components-react/breadcrumb/BreadcrumbTreeUtils.d.ts +1 -1
- package/lib/esm/components-react/breadcrumb/BreadcrumbTreeUtils.js +1 -1
- package/lib/esm/components-react/breadcrumb/BreadcrumbTreeUtils.js.map +1 -1
- package/lib/esm/components-react/common/UseDebouncedAsyncValue.d.ts +4 -1
- package/lib/esm/components-react/common/UseDebouncedAsyncValue.d.ts.map +1 -1
- package/lib/esm/components-react/common/UseDebouncedAsyncValue.js +4 -1
- package/lib/esm/components-react/common/UseDebouncedAsyncValue.js.map +1 -1
- package/lib/esm/components-react/common/showhide/ShowHideDialog.d.ts +2 -2
- package/lib/esm/components-react/common/showhide/ShowHideDialog.js +1 -1
- package/lib/esm/components-react/common/showhide/ShowHideDialog.js.map +1 -1
- package/lib/esm/components-react/common/showhide/ShowHideItem.d.ts +2 -2
- package/lib/esm/components-react/common/showhide/ShowHideItem.js.map +1 -1
- package/lib/esm/components-react/common/showhide/ShowHideMenu.d.ts +2 -2
- package/lib/esm/components-react/common/showhide/ShowHideMenu.js +1 -1
- package/lib/esm/components-react/common/showhide/ShowHideMenu.js.map +1 -1
- package/lib/esm/components-react/converters/TypeConverterManager.d.ts.map +1 -1
- package/lib/esm/components-react/converters/TypeConverterManager.js +3 -4
- package/lib/esm/components-react/converters/TypeConverterManager.js.map +1 -1
- package/lib/esm/components-react/editors/ThemedEnumEditor.d.ts +3 -3
- package/lib/esm/components-react/editors/ThemedEnumEditor.js +2 -2
- package/lib/esm/components-react/editors/ThemedEnumEditor.js.map +1 -1
- package/lib/esm/components-react/filter-builder/FilterBuilder.d.ts +22 -24
- package/lib/esm/components-react/filter-builder/FilterBuilder.d.ts.map +1 -1
- package/lib/esm/components-react/filter-builder/FilterBuilder.js +17 -75
- package/lib/esm/components-react/filter-builder/FilterBuilder.js.map +1 -1
- package/lib/esm/components-react/filter-builder/FilterBuilderContext.d.ts +80 -0
- package/lib/esm/components-react/filter-builder/FilterBuilderContext.d.ts.map +1 -0
- package/lib/esm/components-react/filter-builder/FilterBuilderContext.js +60 -0
- package/lib/esm/components-react/filter-builder/FilterBuilderContext.js.map +1 -0
- package/lib/esm/components-react/filter-builder/FilterBuilderRule.d.ts +14 -3
- package/lib/esm/components-react/filter-builder/FilterBuilderRule.d.ts.map +1 -1
- package/lib/esm/components-react/filter-builder/FilterBuilderRule.js +17 -7
- package/lib/esm/components-react/filter-builder/FilterBuilderRule.js.map +1 -1
- package/lib/esm/components-react/filter-builder/FilterBuilderRule.scss +4 -0
- package/lib/esm/components-react/filter-builder/FilterBuilderRuleGroup.d.ts +25 -16
- package/lib/esm/components-react/filter-builder/FilterBuilderRuleGroup.d.ts.map +1 -1
- package/lib/esm/components-react/filter-builder/FilterBuilderRuleGroup.js +15 -7
- package/lib/esm/components-react/filter-builder/FilterBuilderRuleGroup.js.map +1 -1
- package/lib/esm/components-react/filter-builder/FilterBuilderRuleOperator.d.ts +14 -2
- package/lib/esm/components-react/filter-builder/FilterBuilderRuleOperator.d.ts.map +1 -1
- package/lib/esm/components-react/filter-builder/FilterBuilderRuleOperator.js +7 -1
- package/lib/esm/components-react/filter-builder/FilterBuilderRuleOperator.js.map +1 -1
- package/lib/esm/components-react/filter-builder/FilterBuilderRuleProperty.d.ts +16 -2
- package/lib/esm/components-react/filter-builder/FilterBuilderRuleProperty.d.ts.map +1 -1
- package/lib/esm/components-react/filter-builder/FilterBuilderRuleProperty.js +7 -1
- package/lib/esm/components-react/filter-builder/FilterBuilderRuleProperty.js.map +1 -1
- package/lib/esm/components-react/filter-builder/FilterBuilderRuleValue.d.ts +14 -2
- package/lib/esm/components-react/filter-builder/FilterBuilderRuleValue.d.ts.map +1 -1
- package/lib/esm/components-react/filter-builder/FilterBuilderRuleValue.js +7 -1
- package/lib/esm/components-react/filter-builder/FilterBuilderRuleValue.js.map +1 -1
- package/lib/esm/components-react/filter-builder/FilterBuilderState.d.ts +52 -8
- package/lib/esm/components-react/filter-builder/FilterBuilderState.d.ts.map +1 -1
- package/lib/esm/components-react/filter-builder/FilterBuilderState.js +96 -7
- package/lib/esm/components-react/filter-builder/FilterBuilderState.js.map +1 -1
- package/lib/esm/components-react/filter-builder/Operators.d.ts +23 -5
- package/lib/esm/components-react/filter-builder/Operators.d.ts.map +1 -1
- package/lib/esm/components-react/filter-builder/Operators.js +23 -5
- package/lib/esm/components-react/filter-builder/Operators.js.map +1 -1
- package/lib/esm/components-react/filter-builder/Types.d.ts +24 -4
- package/lib/esm/components-react/filter-builder/Types.d.ts.map +1 -1
- package/lib/esm/components-react/filter-builder/Types.js +11 -1
- package/lib/esm/components-react/filter-builder/Types.js.map +1 -1
- package/lib/esm/components-react/filtering/FilteringInput.js +1 -1
- package/lib/esm/components-react/filtering/FilteringInput.js.map +1 -1
- package/lib/esm/components-react/iconpicker/IconPickerButton.d.ts +2 -2
- package/lib/esm/components-react/iconpicker/IconPickerButton.js +2 -2
- package/lib/esm/components-react/iconpicker/IconPickerButton.js.map +1 -1
- package/lib/esm/components-react/properties/LinkHandler.d.ts +2 -2
- package/lib/esm/components-react/properties/LinkHandler.js +1 -1
- package/lib/esm/components-react/properties/LinkHandler.js.map +1 -1
- package/lib/esm/components-react/propertygrid/PropertyCategoryRendererManager.d.ts +3 -3
- package/lib/esm/components-react/propertygrid/PropertyCategoryRendererManager.js +1 -1
- package/lib/esm/components-react/propertygrid/PropertyCategoryRendererManager.js.map +1 -1
- package/lib/esm/components-react/propertygrid/PropertyDataProvider.d.ts +2 -2
- package/lib/esm/components-react/propertygrid/PropertyDataProvider.js.map +1 -1
- package/lib/esm/components-react/propertygrid/component/PropertyGrid.d.ts +3 -1
- package/lib/esm/components-react/propertygrid/component/PropertyGrid.d.ts.map +1 -1
- package/lib/esm/components-react/propertygrid/component/PropertyGrid.js +1 -0
- package/lib/esm/components-react/propertygrid/component/PropertyGrid.js.map +1 -1
- package/lib/esm/components-react/propertygrid/component/PropertyGridCommons.d.ts +5 -10
- package/lib/esm/components-react/propertygrid/component/PropertyGridCommons.d.ts.map +1 -1
- package/lib/esm/components-react/propertygrid/component/PropertyGridCommons.js.map +1 -1
- package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGrid.d.ts +3 -3
- package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGrid.js +1 -1
- package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGrid.js.map +1 -1
- package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGrid.scss +11 -0
- package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.d.ts +2 -2
- package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.js +1 -1
- package/lib/esm/components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider.js.map +1 -1
- package/lib/esm/components-react/propertygrid/internal/PropertyGridEventHandler.d.ts +2 -2
- package/lib/esm/components-react/propertygrid/internal/PropertyGridEventHandler.js +1 -1
- package/lib/esm/components-react/propertygrid/internal/PropertyGridEventHandler.js.map +1 -1
- package/lib/esm/components-react/propertygrid/internal/PropertyGridHooks.d.ts +3 -3
- package/lib/esm/components-react/propertygrid/internal/PropertyGridHooks.js +3 -3
- package/lib/esm/components-react/propertygrid/internal/PropertyGridHooks.js.map +1 -1
- package/lib/esm/components-react/propertygrid/internal/PropertyGridModel.d.ts +3 -3
- package/lib/esm/components-react/propertygrid/internal/PropertyGridModel.js +1 -1
- package/lib/esm/components-react/propertygrid/internal/PropertyGridModel.js.map +1 -1
- package/lib/esm/components-react/propertygrid/internal/PropertyGridModelChangeEvent.d.ts +2 -2
- package/lib/esm/components-react/propertygrid/internal/PropertyGridModelChangeEvent.js +1 -1
- package/lib/esm/components-react/propertygrid/internal/PropertyGridModelChangeEvent.js.map +1 -1
- package/lib/esm/components-react/propertygrid/internal/PropertyGridModelSource.d.ts +2 -2
- package/lib/esm/components-react/propertygrid/internal/PropertyGridModelSource.d.ts.map +1 -1
- package/lib/esm/components-react/propertygrid/internal/PropertyGridModelSource.js +1 -1
- package/lib/esm/components-react/propertygrid/internal/PropertyGridModelSource.js.map +1 -1
- package/lib/esm/components-react/propertygrid/internal/flat-items/FlatGridItem.d.ts +6 -6
- package/lib/esm/components-react/propertygrid/internal/flat-items/FlatGridItem.d.ts.map +1 -1
- package/lib/esm/components-react/propertygrid/internal/flat-items/FlatGridItem.js.map +1 -1
- package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedArrayProperty.d.ts +1 -1
- package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedArrayProperty.js +1 -1
- package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedArrayProperty.js.map +1 -1
- package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedPrimitiveProperty.d.ts +1 -1
- package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedPrimitiveProperty.js +1 -1
- package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedPrimitiveProperty.js.map +1 -1
- package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedStructProperty.d.ts +1 -1
- package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedStructProperty.js +1 -1
- package/lib/esm/components-react/propertygrid/internal/flat-items/MutableCategorizedStructProperty.js.map +1 -1
- package/lib/esm/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.d.ts +10 -10
- package/lib/esm/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.js +3 -3
- package/lib/esm/components-react/propertygrid/internal/flat-items/MutableFlatGridItem.js.map +1 -1
- package/lib/esm/components-react/propertygrid/internal/flat-items/MutableGridCategory.d.ts +2 -2
- package/lib/esm/components-react/propertygrid/internal/flat-items/MutableGridCategory.js +1 -1
- package/lib/esm/components-react/propertygrid/internal/flat-items/MutableGridCategory.js.map +1 -1
- package/lib/esm/components-react/propertygrid/internal/flat-items/MutableGridItemFactory.d.ts +2 -2
- package/lib/esm/components-react/propertygrid/internal/flat-items/MutableGridItemFactory.js +1 -1
- package/lib/esm/components-react/propertygrid/internal/flat-items/MutableGridItemFactory.js.map +1 -1
- package/lib/esm/components-react/propertygrid/internal/flat-properties/FlatPropertyRenderer.d.ts +3 -6
- package/lib/esm/components-react/propertygrid/internal/flat-properties/FlatPropertyRenderer.d.ts.map +1 -1
- package/lib/esm/components-react/propertygrid/internal/flat-properties/FlatPropertyRenderer.js.map +1 -1
- package/lib/esm/components-react/table/SimpleTableDataProvider.d.ts +1 -1
- package/lib/esm/components-react/table/SimpleTableDataProvider.js +1 -1
- package/lib/esm/components-react/table/SimpleTableDataProvider.js.map +1 -1
- package/lib/esm/components-react/table/TableDataProvider.d.ts +8 -8
- package/lib/esm/components-react/table/TableDataProvider.js +2 -2
- package/lib/esm/components-react/table/TableDataProvider.js.map +1 -1
- package/lib/esm/components-react/table/columnfiltering/ColumnFiltering.d.ts +16 -16
- package/lib/esm/components-react/table/columnfiltering/ColumnFiltering.js +6 -6
- package/lib/esm/components-react/table/columnfiltering/ColumnFiltering.js.map +1 -1
- package/lib/esm/components-react/table/component/ColumnDragLayer.d.ts +1 -1
- package/lib/esm/components-react/table/component/ColumnDragLayer.js +1 -1
- package/lib/esm/components-react/table/component/ColumnDragLayer.js.map +1 -1
- package/lib/esm/components-react/table/component/Table.d.ts +9 -9
- package/lib/esm/components-react/table/component/Table.d.ts.map +1 -1
- package/lib/esm/components-react/table/component/Table.js +2 -2
- package/lib/esm/components-react/table/component/Table.js.map +1 -1
- package/lib/esm/components-react/table/component/TableCell.d.ts +6 -6
- package/lib/esm/components-react/table/component/TableCell.js +3 -3
- package/lib/esm/components-react/table/component/TableCell.js.map +1 -1
- package/lib/esm/components-react/table/component/TableColumn.d.ts +1 -1
- package/lib/esm/components-react/table/component/TableColumn.js.map +1 -1
- package/lib/esm/components-react/table/component/dragdrop/BeDragDropContext.d.ts +1 -1
- package/lib/esm/components-react/table/component/dragdrop/BeDragDropContext.js +1 -1
- package/lib/esm/components-react/table/component/dragdrop/BeDragDropContext.js.map +1 -1
- package/lib/esm/components-react/table/component/dragdrop/DragDropDef.d.ts +8 -8
- package/lib/esm/components-react/table/component/dragdrop/DragDropDef.js +2 -2
- package/lib/esm/components-react/table/component/dragdrop/DragDropDef.js.map +1 -1
- package/lib/esm/components-react/table/component/dragdrop/withDragSource.d.ts +2 -2
- package/lib/esm/components-react/table/component/dragdrop/withDragSource.js +1 -1
- package/lib/esm/components-react/table/component/dragdrop/withDragSource.js.map +1 -1
- package/lib/esm/components-react/table/component/dragdrop/withDropTarget.d.ts +2 -2
- package/lib/esm/components-react/table/component/dragdrop/withDropTarget.js +1 -1
- package/lib/esm/components-react/table/component/dragdrop/withDropTarget.js.map +1 -1
- package/lib/esm/components-react/toolbar/Toolbar.d.ts +1 -1
- package/lib/esm/components-react/toolbar/Toolbar.d.ts.map +1 -1
- package/lib/esm/components-react/toolbar/Toolbar.js.map +1 -1
- package/lib/esm/components-react/toolbar/ToolbarWithOverflow.d.ts +2 -2
- package/lib/esm/components-react/toolbar/ToolbarWithOverflow.d.ts.map +1 -1
- package/lib/esm/components-react/toolbar/ToolbarWithOverflow.js.map +1 -1
- package/lib/esm/components-react/tree/TreeDataProvider.d.ts +2 -2
- package/lib/esm/components-react/tree/TreeDataProvider.d.ts.map +1 -1
- package/lib/esm/components-react/tree/TreeDataProvider.js.map +1 -1
- package/lib/esm/components-react/tree/controlled/component/ControlledTree.d.ts +1 -4
- package/lib/esm/components-react/tree/controlled/component/ControlledTree.d.ts.map +1 -1
- package/lib/esm/components-react/tree/controlled/component/ControlledTree.js.map +1 -1
- package/lib/esm/components-react/tree/controlled/component/TreeRenderer.d.ts +2 -5
- package/lib/esm/components-react/tree/controlled/component/TreeRenderer.d.ts.map +1 -1
- package/lib/esm/components-react/tree/controlled/component/TreeRenderer.js.map +1 -1
- package/lib/esm/components-react.d.ts +4 -6
- package/lib/esm/components-react.d.ts.map +1 -1
- package/lib/esm/components-react.js +4 -6
- package/lib/esm/components-react.js.map +1 -1
- package/package.json +22 -12
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"components-react.d.ts","sourceRoot":"","sources":["../../src/components-react.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAE/D,cAAc,0CAA0C,CAAC;AACzD,cAAc,8CAA8C,CAAC;AAC7D,cAAc,mDAAmD,CAAC;AAClE,cAAc,iDAAiD,CAAC;AAEhE,cAAc,iCAAiC,CAAC;AAChD,cAAc,uCAAuC,CAAC;AACtD,cAAc,oDAAoD,CAAC;AACnE,cAAc,sDAAsD,CAAC;AACrE,cAAc,2CAA2C,CAAC;AAC1D,cAAc,wCAAwC,CAAC;AACvD,cAAc,sDAAsD,CAAC;AACrE,cAAc,mDAAmD,CAAC;AAClE,cAAc,iDAAiD,CAAC;AAChE,cAAc,iDAAiD,CAAC;AAChE,cAAc,yCAAyC,CAAC;AACxD,cAAc,kDAAkD,CAAC;AACjE,cAAc,qCAAqC,CAAC;AAEpD,cAAc,6CAA6C,CAAC;AAC5D,cAAc,oDAAoD,CAAC;AACnE,cAAc,oDAAoD,CAAC;AACnE,cAAc,qDAAqD,CAAC;AACpE,cAAc,iDAAiD,CAAC;AAChE,cAAc,wDAAwD,CAAC;AACvE,cAAc,+DAA+D,CAAC;AAC9E,cAAc,oDAAoD,CAAC;AACnE,cAAc,kDAAkD,CAAC;AACjE,cAAc,mDAAmD,CAAC;AAClE,cAAc,sDAAsD,CAAC;AAErE,cAAc,yDAAyD,CAAC;AAExE,cAAc,yCAAyC,CAAC;AACxD,cAAc,0CAA0C,CAAC;AACzD,cAAc,qDAAqD,CAAC;AACpE,cAAc,6CAA6C,CAAC;AAC5D,cAAc,yCAAyC,CAAC;AAExD,cAAc,0CAA0C,CAAC;AACzD,cAAc,+CAA+C,CAAC;AAC9D,cAAc,2CAA2C,CAAC;AAC1D,cAAc,4CAA4C,CAAC;AAC3D,cAAc,kDAAkD,CAAC;AACjE,cAAc,uCAAuC,CAAC;AACtD,cAAc,uCAAuC,CAAC;AACtD,cAAc,gDAAgD,CAAC;AAC/D,cAAc,+CAA+C,CAAC;AAC9D,cAAc,kDAAkD,CAAC;AACjE,cAAc,yCAAyC,CAAC;AACxD,cAAc,uCAAuC,CAAC;AACtD,cAAc,2CAA2C,CAAC;AAC1D,cAAc,6CAA6C,CAAC;AAC5D,cAAc,yCAAyC,CAAC;AAExD,cAAc,wDAAwD,CAAC;AACvE,cAAc,kDAAkD,CAAC;AAEjE,cAAc,6CAA6C,CAAC;AAC5D,cAAc,6CAA6C,CAAC;AAE5D,cAAc,gDAAgD,CAAC;AAE/D,cAAc,uCAAuC,CAAC;AAEtD,cAAc,2CAA2C,CAAC;AAC1D,cAAc,oDAAoD,CAAC;AACnE,cAAc,sEAAsE,CAAC;AACrF,cAAc,mEAAmE,CAAC;AAClF,cAAc,0DAA0D,CAAC;AACzE,cAAc,sDAAsD,CAAC;AACrE,cAAc,0DAA0D,CAAC;AACzE,cAAc,8DAA8D,CAAC;AAC7E,cAAc,2EAA2E,CAAC;AAC1F,cAAc,kFAAkF,CAAC;AACjG,cAAc,wEAAwE,CAAC;AACvF,cAAc,gEAAgE,CAAC;AAE/E,cAAc,iDAAiD,CAAC;AAChE,cAAc,
|
|
1
|
+
{"version":3,"file":"components-react.d.ts","sourceRoot":"","sources":["../../src/components-react.ts"],"names":[],"mappings":"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"}
|
|
@@ -86,12 +86,6 @@ __exportStar(require("./components-react/properties/renderers/value/MultilineTex
|
|
|
86
86
|
__exportStar(require("./components-react/properties/renderers/value/UrlPropertyValueRenderer"), exports);
|
|
87
87
|
__exportStar(require("./components-react/properties/renderers/value/WithContextStyle"), exports);
|
|
88
88
|
__exportStar(require("./components-react/filter-builder/FilterBuilder"), exports);
|
|
89
|
-
__exportStar(require("./components-react/filter-builder/FilterBuilderRule"), exports);
|
|
90
|
-
__exportStar(require("./components-react/filter-builder/FilterBuilderRuleGroup"), exports);
|
|
91
|
-
__exportStar(require("./components-react/filter-builder/FilterBuilderRuleOperator"), exports);
|
|
92
|
-
__exportStar(require("./components-react/filter-builder/FilterBuilderRuleProperty"), exports);
|
|
93
|
-
__exportStar(require("./components-react/filter-builder/FilterBuilderRuleValue"), exports);
|
|
94
|
-
__exportStar(require("./components-react/filter-builder/FilterBuilderState"), exports);
|
|
95
89
|
__exportStar(require("./components-react/filter-builder/Operators"), exports);
|
|
96
90
|
__exportStar(require("./components-react/filter-builder/Types"), exports);
|
|
97
91
|
__exportStar(require("./components-react/properties/renderers/label/NonPrimitivePropertyLabelRenderer"), exports);
|
|
@@ -232,4 +226,8 @@ __exportStar(require("./components-react/tree/controlled/internal/SparseTree"),
|
|
|
232
226
|
* @docs-group-description TypeConverters
|
|
233
227
|
* Classes for working with Type Converters.
|
|
234
228
|
*/
|
|
229
|
+
/**
|
|
230
|
+
* @docs-group-description PropertyFilterBuilder
|
|
231
|
+
* Classes and components for working with PropertyFilterBuilder.
|
|
232
|
+
*/
|
|
235
233
|
//# sourceMappingURL=components-react.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"components-react.js","sourceRoot":"","sources":["../../src/components-react.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;;;;;;;;;;;;;AAE/F,qEAAqE;AAErE,gEAA+D;AAAtD,4GAAA,YAAY,OAAA;AAErB,2EAAyD;AACzD,+EAA6D;AAC7D,oFAAkE;AAClE,kFAAgE;AAEhE,kEAAgD;AAChD,wEAAsD;AACtD,qFAAmE;AACnE,uFAAqE;AACrE,4EAA0D;AAC1D,yEAAuD;AACvD,uFAAqE;AACrE,oFAAkE;AAClE,kFAAgE;AAChE,kFAAgE;AAChE,0EAAwD;AACxD,mFAAiE;AACjE,sEAAoD;AAEpD,8EAA4D;AAC5D,qFAAmE;AACnE,qFAAmE;AACnE,sFAAoE;AACpE,kFAAgE;AAChE,yFAAuE;AACvE,gGAA8E;AAC9E,qFAAmE;AACnE,mFAAiE;AACjE,oFAAkE;AAClE,uFAAqE;AAErE,0FAAwE;AAExE,0EAAwD;AACxD,2EAAyD;AACzD,sFAAoE;AACpE,8EAA4D;AAC5D,0EAAwD;AAExD,2EAAyD;AACzD,gFAA8D;AAC9D,4EAA0D;AAC1D,6EAA2D;AAC3D,mFAAiE;AACjE,wEAAsD;AACtD,wEAAsD;AACtD,iFAA+D;AAC/D,gFAA8D;AAC9D,mFAAiE;AACjE,0EAAwD;AACxD,wEAAsD;AACtD,4EAA0D;AAC1D,8EAA4D;AAC5D,0EAAwD;AAExD,yFAAuE;AACvE,mFAAiE;AAEjE,8EAA4D;AAC5D,8EAA4D;AAE5D,iFAA+D;AAE/D,wEAAsD;AAEtD,4EAA0D;AAC1D,qFAAmE;AACnE,uGAAqF;AACrF,oGAAkF;AAClF,2FAAyE;AACzE,uFAAqE;AACrE,2FAAyE;AACzE,+FAA6E;AAC7E,4GAA0F;AAC1F,mHAAiG;AACjG,yGAAuF;AACvF,iGAA+E;AAE/E,kFAAgE;AAChE,sFAAoE;AACpE,2FAAyE;AACzE,8FAA4E;AAC5E,8FAA4E;AAC5E,2FAAyE;AACzE,uFAAqE;AACrE,8EAA4D;AAC5D,0EAAwD;AAExD,kHAAgG;AAChG,+GAA6F;AAC7F,sGAAoF;AAEpF,+GAA6F;AAC7F,2GAAyF;AACzF,4GAA0F;AAC1F,4GAA0F;AAC1F,gHAA8F;AAC9F,yGAAuF;AACvF,0GAAwF;AACxF,gHAA8F;AAC9F,0EAAwD;AAExD,kGAAgF;AAChF,uFAAqE;AACrE,6FAA2E;AAC3E,yFAAuE;AACvE,oGAAkF;AAClF,oHAAkG;AAClG,kGAAgF;AAChF,mHAAiG;AACjG,gGAA8E;AAC9E,yFAAuE;AACvE,mGAAiF;AACjF,sHAAoG;AACpG,0HAAwG;AACxG,uHAAqG;AACrG,0GAAwF;AACxF,0GAAwF;AACxF,6GAA2F;AAC3F,oGAAkF;AAClF,6FAA2E;AAC3E,6FAA2E;AAC3E,wGAAsF;AACtF,mGAAiF;AACjF,sGAAoF;AACpF,wHAAsG;AACtG,wHAAsG;AACtG,2HAAyG;AACzG,oHAAkG;AAClG,mHAAiG;AAEjG,0FAAwE;AAExE,6EAA2D;AAC3D,mFAAiE;AACjE,2FAAyE;AACzE,2GAAyF;AACzF,2EAAyD;AACzD,+EAA6D;AAC7D,iFAA+D;AAC/D,gGAA8E;AAE9E,qEAAmD;AACnD,iFAA+D;AAC/D,uEAAqD;AACrD,+EAA6D;AAC7D,kEAAgD;AAChD,iFAA+D;AAE/D,2EAAyD;AACzD,iFAA+D;AAC/D,6EAA2D;AAC3D,sEAAoD;AACpD,iFAA+D;AAC/D,yFAAuE;AACvE,sFAAoE;AACpE,gFAA8D;AAC9D,+EAA6D;AAC7D,qFAAmE;AACnE,oFAAkE;AAClE,gFAA8D;AAC9D,+EAA6D;AAC7D,8FAA4E;AAC5E,8FAA4E;AAC5E,gGAA8E;AAC9E,4FAA0E;AAC1E,yFAAuE;AAEvE;;;GAGG;AACH;;;GAGG;AACH;;;;GAIG;AACH;;;GAGG;AACH;;;GAGG;AACH;;;GAGG;AACH;;;GAGG;AACH;;;GAGG;AACH;;;GAGG;AACH;;;GAGG;AACH;;;GAGG;AACH;;;GAGG;AACH;;;GAGG;AACH;;;GAGG;AACH;;;GAGG;AACH;;;GAGG","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n\r\n// cSpell:ignore iconpicker lineweight hocs datepicker quantityformat\r\n\r\nexport { UiComponents } from \"./components-react/UiComponents\";\r\n\r\nexport * from \"./components-react/breadcrumb/Breadcrumb\";\r\nexport * from \"./components-react/breadcrumb/BreadcrumbPath\";\r\nexport * from \"./components-react/breadcrumb/BreadcrumbTreeUtils\";\r\nexport * from \"./components-react/breadcrumb/BreadcrumbDetails\";\r\n\r\nexport * from \"./components-react/common/Links\";\r\nexport * from \"./components-react/common/PageOptions\";\r\nexport * from \"./components-react/common/selection/SelectionModes\";\r\nexport * from \"./components-react/common/HighlightingComponentProps\";\r\nexport * from \"./components-react/common/HighlightedText\";\r\nexport * from \"./components-react/common/IImageLoader\";\r\nexport * from \"./components-react/common/selection/SelectionHandler\";\r\nexport * from \"./components-react/common/showhide/ShowHideDialog\";\r\nexport * from \"./components-react/common/showhide/ShowHideItem\";\r\nexport * from \"./components-react/common/showhide/ShowHideMenu\";\r\nexport * from \"./components-react/common/UseAsyncValue\";\r\nexport * from \"./components-react/common/UseDebouncedAsyncValue\";\r\nexport * from \"./components-react/common/DateUtils\";\r\n\r\nexport * from \"./components-react/converters/TypeConverter\";\r\nexport * from \"./components-react/converters/TypeConverterManager\";\r\nexport * from \"./components-react/converters/BooleanTypeConverter\";\r\nexport * from \"./components-react/converters/DateTimeTypeConverter\";\r\nexport * from \"./components-react/converters/EnumTypeConverter\";\r\nexport * from \"./components-react/converters/HexadecimalTypeConverter\";\r\nexport * from \"./components-react/converters/NavigationPropertyTypeConverter\";\r\nexport * from \"./components-react/converters/NumericTypeConverter\";\r\nexport * from \"./components-react/converters/PointTypeConverter\";\r\nexport * from \"./components-react/converters/StringTypeConverter\";\r\nexport * from \"./components-react/converters/CompositeTypeConverter\";\r\n\r\nexport * from \"./components-react/converters/valuetypes/ConvertedTypes\";\r\n\r\nexport * from \"./components-react/datepicker/DateField\";\r\nexport * from \"./components-react/datepicker/DatePicker\";\r\nexport * from \"./components-react/datepicker/DatePickerPopupButton\";\r\nexport * from \"./components-react/datepicker/IntlFormatter\";\r\nexport * from \"./components-react/datepicker/TimeField\";\r\n\r\nexport * from \"./components-react/editors/BooleanEditor\";\r\nexport * from \"./components-react/editors/CustomNumberEditor\";\r\nexport * from \"./components-react/editors/DateTimeEditor\";\r\nexport * from \"./components-react/editors/EditorContainer\";\r\nexport * from \"./components-react/editors/EnumButtonGroupEditor\";\r\nexport * from \"./components-react/editors/EnumEditor\";\r\nexport * from \"./components-react/editors/IconEditor\";\r\nexport * from \"./components-react/editors/ImageCheckBoxEditor\";\r\nexport * from \"./components-react/editors/NumericInputEditor\";\r\nexport * from \"./components-react/editors/PropertyEditorManager\";\r\nexport * from \"./components-react/editors/SliderEditor\";\r\nexport * from \"./components-react/editors/TextEditor\";\r\nexport * from \"./components-react/editors/TextareaEditor\";\r\nexport * from \"./components-react/editors/ThemedEnumEditor\";\r\nexport * from \"./components-react/editors/ToggleEditor\";\r\n\r\nexport * from \"./components-react/favorite/FavoritePropertiesRenderer\";\r\nexport * from \"./components-react/favorite/FavoritePropertyList\";\r\n\r\nexport * from \"./components-react/filtering/FilteringInput\";\r\nexport * from \"./components-react/filtering/ResultSelector\";\r\n\r\nexport * from \"./components-react/iconpicker/IconPickerButton\";\r\n\r\nexport * from \"./components-react/inputs/ParsedInput\";\r\n\r\nexport * from \"./components-react/properties/LinkHandler\";\r\nexport * from \"./components-react/properties/ValueRendererManager\";\r\nexport * from \"./components-react/properties/renderers/NonPrimitivePropertyRenderer\";\r\nexport * from \"./components-react/properties/renderers/PrimitivePropertyRenderer\";\r\nexport * from \"./components-react/properties/renderers/PropertyRenderer\";\r\nexport * from \"./components-react/properties/renderers/PropertyView\";\r\nexport * from \"./components-react/properties/renderers/ActionButtonList\";\r\nexport * from \"./components-react/properties/renderers/ActionButtonRenderer\";\r\nexport * from \"./components-react/properties/renderers/value/MergedPropertyValueRenderer\";\r\nexport * from \"./components-react/properties/renderers/value/MultilineTextPropertyValueRenderer\";\r\nexport * from \"./components-react/properties/renderers/value/UrlPropertyValueRenderer\";\r\nexport * from \"./components-react/properties/renderers/value/WithContextStyle\";\r\n\r\nexport * from \"./components-react/filter-builder/FilterBuilder\";\r\nexport * from \"./components-react/filter-builder/FilterBuilderRule\";\r\nexport * from \"./components-react/filter-builder/FilterBuilderRuleGroup\";\r\nexport * from \"./components-react/filter-builder/FilterBuilderRuleOperator\";\r\nexport * from \"./components-react/filter-builder/FilterBuilderRuleProperty\";\r\nexport * from \"./components-react/filter-builder/FilterBuilderRuleValue\";\r\nexport * from \"./components-react/filter-builder/FilterBuilderState\";\r\nexport * from \"./components-react/filter-builder/Operators\";\r\nexport * from \"./components-react/filter-builder/Types\";\r\n\r\nexport * from \"./components-react/properties/renderers/label/NonPrimitivePropertyLabelRenderer\";\r\nexport * from \"./components-react/properties/renderers/label/PrimitivePropertyLabelRenderer\";\r\nexport * from \"./components-react/properties/renderers/label/PropertyLabelRenderer\";\r\n\r\nexport * from \"./components-react/properties/renderers/value/PrimitivePropertyValueRenderer\";\r\nexport * from \"./components-react/properties/renderers/value/ArrayPropertyValueRenderer\";\r\nexport * from \"./components-react/properties/renderers/value/StructPropertyValueRenderer\";\r\nexport * from \"./components-react/properties/renderers/value/DoublePropertyValueRenderer\";\r\nexport * from \"./components-react/properties/renderers/value/NavigationPropertyValueRenderer\";\r\nexport * from \"./components-react/properties/renderers/value/table/ArrayValueRenderer\";\r\nexport * from \"./components-react/properties/renderers/value/table/StructValueRenderer\";\r\nexport * from \"./components-react/properties/renderers/value/table/NonPrimitiveValueRenderer\";\r\nexport * from \"./components-react/properties/ItemStyle\";\r\n\r\nexport * from \"./components-react/propertygrid/PropertyCategoryRendererManager\";\r\nexport * from \"./components-react/propertygrid/PropertyDataProvider\";\r\nexport * from \"./components-react/propertygrid/SimplePropertyDataProvider\";\r\nexport * from \"./components-react/propertygrid/component/PropertyGrid\";\r\nexport * from \"./components-react/propertygrid/component/VirtualizedPropertyGrid\";\r\nexport * from \"./components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider\";\r\nexport * from \"./components-react/propertygrid/component/PropertyCategoryBlock\";\r\nexport * from \"./components-react/propertygrid/component/PropertyGridEventsRelatedPropsSupplier\";\r\nexport * from \"./components-react/propertygrid/component/PropertyGridCommons\";\r\nexport * from \"./components-react/propertygrid/component/PropertyList\";\r\nexport * from \"./components-react/propertygrid/internal/flat-items/FlatGridItem\";\r\nexport * from \"./components-react/propertygrid/internal/flat-items/MutableCategorizedArrayProperty\";\r\nexport * from \"./components-react/propertygrid/internal/flat-items/MutableCategorizedPrimitiveProperty\";\r\nexport * from \"./components-react/propertygrid/internal/flat-items/MutableCategorizedStructProperty\";\r\nexport * from \"./components-react/propertygrid/internal/flat-items/MutableFlatGridItem\";\r\nexport * from \"./components-react/propertygrid/internal/flat-items/MutableGridCategory\";\r\nexport * from \"./components-react/propertygrid/internal/flat-items/MutableGridItemFactory\";\r\nexport * from \"./components-react/propertygrid/internal/PropertyGridEventHandler\";\r\nexport * from \"./components-react/propertygrid/internal/PropertyGridHooks\";\r\nexport * from \"./components-react/propertygrid/internal/PropertyGridModel\";\r\nexport * from \"./components-react/propertygrid/internal/PropertyGridModelChangeEvent\";\r\nexport * from \"./components-react/propertygrid/internal/PropertyGridModelSource\";\r\nexport * from \"./components-react/propertygrid/dataproviders/FilteringDataProvider\";\r\nexport * from \"./components-react/propertygrid/dataproviders/filterers/PropertyCategoryLabelFilterer\";\r\nexport * from \"./components-react/propertygrid/dataproviders/filterers/CompositePropertyDataFilterer\";\r\nexport * from \"./components-react/propertygrid/dataproviders/filterers/DisplayValuePropertyDataFilterer\";\r\nexport * from \"./components-react/propertygrid/dataproviders/filterers/LabelPropertyDataFilterer\";\r\nexport * from \"./components-react/propertygrid/dataproviders/filterers/PropertyDataFiltererBase\";\r\n\r\nexport * from \"./components-react/selectable-content/SelectableContent\";\r\n\r\nexport * from \"./components-react/table/TableDataProvider\";\r\nexport * from \"./components-react/table/SimpleTableDataProvider\";\r\nexport * from \"./components-react/table/columnfiltering/ColumnFiltering\";\r\nexport * from \"./components-react/table/columnfiltering/TableFilterDescriptorCollection\";\r\nexport * from \"./components-react/table/component/Table\";\r\nexport * from \"./components-react/table/component/TableCell\";\r\nexport * from \"./components-react/table/component/TableColumn\";\r\nexport * from \"./components-react/table/component/dragdrop/BeDragDropContext\";\r\n\r\nexport * from \"./components-react/toolbar/Toolbar\";\r\nexport * from \"./components-react/toolbar/ToolbarWithOverflow\";\r\nexport * from \"./components-react/toolbar/PopupItem\";\r\nexport * from \"./components-react/toolbar/PopupItemWithDrag\";\r\nexport * from \"./components-react/toolbar/Item\";\r\nexport * from \"./components-react/toolbar/utilities/Direction\";\r\n\r\nexport * from \"./components-react/tree/TreeDataProvider\";\r\nexport * from \"./components-react/tree/SimpleTreeDataProvider\";\r\nexport * from \"./components-react/tree/HighlightingEngine\";\r\nexport * from \"./components-react/tree/ImageLoader\";\r\nexport * from \"./components-react/tree/controlled/TreeActions\";\r\nexport * from \"./components-react/tree/controlled/TreeEventDispatcher\";\r\nexport * from \"./components-react/tree/controlled/TreeEventHandler\";\r\nexport * from \"./components-react/tree/controlled/TreeEvents\";\r\nexport * from \"./components-react/tree/controlled/TreeModel\";\r\nexport * from \"./components-react/tree/controlled/TreeModelSource\";\r\nexport * from \"./components-react/tree/controlled/TreeNodeLoader\";\r\nexport * from \"./components-react/tree/controlled/Observable\";\r\nexport * from \"./components-react/tree/controlled/TreeHooks\";\r\nexport * from \"./components-react/tree/controlled/component/ControlledTree\";\r\nexport * from \"./components-react/tree/controlled/component/TreeNodeEditor\";\r\nexport * from \"./components-react/tree/controlled/component/TreeNodeRenderer\";\r\nexport * from \"./components-react/tree/controlled/component/TreeRenderer\";\r\nexport * from \"./components-react/tree/controlled/internal/SparseTree\";\r\n\r\n/** @docs-package-description\r\n * The components-react package contains React components that are data-oriented, such as PropertyGrid, Table and Tree.\r\n * For more information, see [learning about components-react]($docs/learning/ui/components/index.md).\r\n */\r\n/**\r\n * @docs-group-description Common\r\n * Common classes used across various UI components.\r\n */\r\n/**\r\n * @docs-group-description Breadcrumb\r\n * Classes and components for working with a Breadcrumb.\r\n * As of version 3.0, the Breadcrumb is deprecated.\r\n */\r\n/**\r\n * @docs-group-description Date\r\n * Classes, interfaces, and components for showing and setting date and time.\r\n */\r\n/**\r\n * @docs-group-description DragDrop\r\n * Classes and Higher Order Components for working with the DragDrop API.\r\n */\r\n/**\r\n * @docs-group-description Favorite\r\n * Classes and components for displaying favorite properties.\r\n */\r\n/**\r\n * @docs-group-description Filtering\r\n * Classes and components for working with filtering.\r\n */\r\n/**\r\n * @docs-group-description Inputs\r\n * Input Components that format and parse input.\r\n */\r\n/**\r\n * @docs-group-description SelectableContent\r\n * Classes and components for working with SelectableContent component.\r\n */\r\n/**\r\n * @docs-group-description Properties\r\n * Classes and components for working with Properties.\r\n */\r\n/**\r\n * @docs-group-description PropertyEditors\r\n * Classes and components for working with Property Editors.\r\n */\r\n/**\r\n * @docs-group-description PropertyGrid\r\n * Classes and components for working with a PropertyGrid.\r\n */\r\n/**\r\n * @docs-group-description Table\r\n * Classes and components for working with a Table.\r\n */\r\n/**\r\n * @docs-group-description Toolbar\r\n * Functions and components that provide a Toolbar.\r\n */\r\n/**\r\n * @docs-group-description Tree\r\n * Classes and components for working with a Tree.\r\n */\r\n/**\r\n * @docs-group-description TypeConverters\r\n * Classes for working with Type Converters.\r\n */\r\n"]}
|
|
1
|
+
{"version":3,"file":"components-react.js","sourceRoot":"","sources":["../../src/components-react.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;;;;;;;;;;;;;AAE/F,qEAAqE;AAErE,gEAA+D;AAAtD,4GAAA,YAAY,OAAA;AAErB,2EAAyD;AACzD,+EAA6D;AAC7D,oFAAkE;AAClE,kFAAgE;AAEhE,kEAAgD;AAChD,wEAAsD;AACtD,qFAAmE;AACnE,uFAAqE;AACrE,4EAA0D;AAC1D,yEAAuD;AACvD,uFAAqE;AACrE,oFAAkE;AAClE,kFAAgE;AAChE,kFAAgE;AAChE,0EAAwD;AACxD,mFAAiE;AACjE,sEAAoD;AAEpD,8EAA4D;AAC5D,qFAAmE;AACnE,qFAAmE;AACnE,sFAAoE;AACpE,kFAAgE;AAChE,yFAAuE;AACvE,gGAA8E;AAC9E,qFAAmE;AACnE,mFAAiE;AACjE,oFAAkE;AAClE,uFAAqE;AAErE,0FAAwE;AAExE,0EAAwD;AACxD,2EAAyD;AACzD,sFAAoE;AACpE,8EAA4D;AAC5D,0EAAwD;AAExD,2EAAyD;AACzD,gFAA8D;AAC9D,4EAA0D;AAC1D,6EAA2D;AAC3D,mFAAiE;AACjE,wEAAsD;AACtD,wEAAsD;AACtD,iFAA+D;AAC/D,gFAA8D;AAC9D,mFAAiE;AACjE,0EAAwD;AACxD,wEAAsD;AACtD,4EAA0D;AAC1D,8EAA4D;AAC5D,0EAAwD;AAExD,yFAAuE;AACvE,mFAAiE;AAEjE,8EAA4D;AAC5D,8EAA4D;AAE5D,iFAA+D;AAE/D,wEAAsD;AAEtD,4EAA0D;AAC1D,qFAAmE;AACnE,uGAAqF;AACrF,oGAAkF;AAClF,2FAAyE;AACzE,uFAAqE;AACrE,2FAAyE;AACzE,+FAA6E;AAC7E,4GAA0F;AAC1F,mHAAiG;AACjG,yGAAuF;AACvF,iGAA+E;AAE/E,kFAAgE;AAChE,8EAA4D;AAC5D,0EAAwD;AAExD,kHAAgG;AAChG,+GAA6F;AAC7F,sGAAoF;AAEpF,+GAA6F;AAC7F,2GAAyF;AACzF,4GAA0F;AAC1F,4GAA0F;AAC1F,gHAA8F;AAC9F,yGAAuF;AACvF,0GAAwF;AACxF,gHAA8F;AAC9F,0EAAwD;AAExD,kGAAgF;AAChF,uFAAqE;AACrE,6FAA2E;AAC3E,yFAAuE;AACvE,oGAAkF;AAClF,oHAAkG;AAClG,kGAAgF;AAChF,mHAAiG;AACjG,gGAA8E;AAC9E,yFAAuE;AACvE,mGAAiF;AACjF,sHAAoG;AACpG,0HAAwG;AACxG,uHAAqG;AACrG,0GAAwF;AACxF,0GAAwF;AACxF,6GAA2F;AAC3F,oGAAkF;AAClF,6FAA2E;AAC3E,6FAA2E;AAC3E,wGAAsF;AACtF,mGAAiF;AACjF,sGAAoF;AACpF,wHAAsG;AACtG,wHAAsG;AACtG,2HAAyG;AACzG,oHAAkG;AAClG,mHAAiG;AAEjG,0FAAwE;AAExE,6EAA2D;AAC3D,mFAAiE;AACjE,2FAAyE;AACzE,2GAAyF;AACzF,2EAAyD;AACzD,+EAA6D;AAC7D,iFAA+D;AAC/D,gGAA8E;AAE9E,qEAAmD;AACnD,iFAA+D;AAC/D,uEAAqD;AACrD,+EAA6D;AAC7D,kEAAgD;AAChD,iFAA+D;AAE/D,2EAAyD;AACzD,iFAA+D;AAC/D,6EAA2D;AAC3D,sEAAoD;AACpD,iFAA+D;AAC/D,yFAAuE;AACvE,sFAAoE;AACpE,gFAA8D;AAC9D,+EAA6D;AAC7D,qFAAmE;AACnE,oFAAkE;AAClE,gFAA8D;AAC9D,+EAA6D;AAC7D,8FAA4E;AAC5E,8FAA4E;AAC5E,gGAA8E;AAC9E,4FAA0E;AAC1E,yFAAuE;AAEvE;;;GAGG;AACH;;;GAGG;AACH;;;;GAIG;AACH;;;GAGG;AACH;;;GAGG;AACH;;;GAGG;AACH;;;GAGG;AACH;;;GAGG;AACH;;;GAGG;AACH;;;GAGG;AACH;;;GAGG;AACH;;;GAGG;AACH;;;GAGG;AACH;;;GAGG;AACH;;;GAGG;AACH;;;GAGG;AACH;;;GAGG","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n\r\n// cSpell:ignore iconpicker lineweight hocs datepicker quantityformat\r\n\r\nexport { UiComponents } from \"./components-react/UiComponents\";\r\n\r\nexport * from \"./components-react/breadcrumb/Breadcrumb\";\r\nexport * from \"./components-react/breadcrumb/BreadcrumbPath\";\r\nexport * from \"./components-react/breadcrumb/BreadcrumbTreeUtils\";\r\nexport * from \"./components-react/breadcrumb/BreadcrumbDetails\";\r\n\r\nexport * from \"./components-react/common/Links\";\r\nexport * from \"./components-react/common/PageOptions\";\r\nexport * from \"./components-react/common/selection/SelectionModes\";\r\nexport * from \"./components-react/common/HighlightingComponentProps\";\r\nexport * from \"./components-react/common/HighlightedText\";\r\nexport * from \"./components-react/common/IImageLoader\";\r\nexport * from \"./components-react/common/selection/SelectionHandler\";\r\nexport * from \"./components-react/common/showhide/ShowHideDialog\";\r\nexport * from \"./components-react/common/showhide/ShowHideItem\";\r\nexport * from \"./components-react/common/showhide/ShowHideMenu\";\r\nexport * from \"./components-react/common/UseAsyncValue\";\r\nexport * from \"./components-react/common/UseDebouncedAsyncValue\";\r\nexport * from \"./components-react/common/DateUtils\";\r\n\r\nexport * from \"./components-react/converters/TypeConverter\";\r\nexport * from \"./components-react/converters/TypeConverterManager\";\r\nexport * from \"./components-react/converters/BooleanTypeConverter\";\r\nexport * from \"./components-react/converters/DateTimeTypeConverter\";\r\nexport * from \"./components-react/converters/EnumTypeConverter\";\r\nexport * from \"./components-react/converters/HexadecimalTypeConverter\";\r\nexport * from \"./components-react/converters/NavigationPropertyTypeConverter\";\r\nexport * from \"./components-react/converters/NumericTypeConverter\";\r\nexport * from \"./components-react/converters/PointTypeConverter\";\r\nexport * from \"./components-react/converters/StringTypeConverter\";\r\nexport * from \"./components-react/converters/CompositeTypeConverter\";\r\n\r\nexport * from \"./components-react/converters/valuetypes/ConvertedTypes\";\r\n\r\nexport * from \"./components-react/datepicker/DateField\";\r\nexport * from \"./components-react/datepicker/DatePicker\";\r\nexport * from \"./components-react/datepicker/DatePickerPopupButton\";\r\nexport * from \"./components-react/datepicker/IntlFormatter\";\r\nexport * from \"./components-react/datepicker/TimeField\";\r\n\r\nexport * from \"./components-react/editors/BooleanEditor\";\r\nexport * from \"./components-react/editors/CustomNumberEditor\";\r\nexport * from \"./components-react/editors/DateTimeEditor\";\r\nexport * from \"./components-react/editors/EditorContainer\";\r\nexport * from \"./components-react/editors/EnumButtonGroupEditor\";\r\nexport * from \"./components-react/editors/EnumEditor\";\r\nexport * from \"./components-react/editors/IconEditor\";\r\nexport * from \"./components-react/editors/ImageCheckBoxEditor\";\r\nexport * from \"./components-react/editors/NumericInputEditor\";\r\nexport * from \"./components-react/editors/PropertyEditorManager\";\r\nexport * from \"./components-react/editors/SliderEditor\";\r\nexport * from \"./components-react/editors/TextEditor\";\r\nexport * from \"./components-react/editors/TextareaEditor\";\r\nexport * from \"./components-react/editors/ThemedEnumEditor\";\r\nexport * from \"./components-react/editors/ToggleEditor\";\r\n\r\nexport * from \"./components-react/favorite/FavoritePropertiesRenderer\";\r\nexport * from \"./components-react/favorite/FavoritePropertyList\";\r\n\r\nexport * from \"./components-react/filtering/FilteringInput\";\r\nexport * from \"./components-react/filtering/ResultSelector\";\r\n\r\nexport * from \"./components-react/iconpicker/IconPickerButton\";\r\n\r\nexport * from \"./components-react/inputs/ParsedInput\";\r\n\r\nexport * from \"./components-react/properties/LinkHandler\";\r\nexport * from \"./components-react/properties/ValueRendererManager\";\r\nexport * from \"./components-react/properties/renderers/NonPrimitivePropertyRenderer\";\r\nexport * from \"./components-react/properties/renderers/PrimitivePropertyRenderer\";\r\nexport * from \"./components-react/properties/renderers/PropertyRenderer\";\r\nexport * from \"./components-react/properties/renderers/PropertyView\";\r\nexport * from \"./components-react/properties/renderers/ActionButtonList\";\r\nexport * from \"./components-react/properties/renderers/ActionButtonRenderer\";\r\nexport * from \"./components-react/properties/renderers/value/MergedPropertyValueRenderer\";\r\nexport * from \"./components-react/properties/renderers/value/MultilineTextPropertyValueRenderer\";\r\nexport * from \"./components-react/properties/renderers/value/UrlPropertyValueRenderer\";\r\nexport * from \"./components-react/properties/renderers/value/WithContextStyle\";\r\n\r\nexport * from \"./components-react/filter-builder/FilterBuilder\";\r\nexport * from \"./components-react/filter-builder/Operators\";\r\nexport * from \"./components-react/filter-builder/Types\";\r\n\r\nexport * from \"./components-react/properties/renderers/label/NonPrimitivePropertyLabelRenderer\";\r\nexport * from \"./components-react/properties/renderers/label/PrimitivePropertyLabelRenderer\";\r\nexport * from \"./components-react/properties/renderers/label/PropertyLabelRenderer\";\r\n\r\nexport * from \"./components-react/properties/renderers/value/PrimitivePropertyValueRenderer\";\r\nexport * from \"./components-react/properties/renderers/value/ArrayPropertyValueRenderer\";\r\nexport * from \"./components-react/properties/renderers/value/StructPropertyValueRenderer\";\r\nexport * from \"./components-react/properties/renderers/value/DoublePropertyValueRenderer\";\r\nexport * from \"./components-react/properties/renderers/value/NavigationPropertyValueRenderer\";\r\nexport * from \"./components-react/properties/renderers/value/table/ArrayValueRenderer\";\r\nexport * from \"./components-react/properties/renderers/value/table/StructValueRenderer\";\r\nexport * from \"./components-react/properties/renderers/value/table/NonPrimitiveValueRenderer\";\r\nexport * from \"./components-react/properties/ItemStyle\";\r\n\r\nexport * from \"./components-react/propertygrid/PropertyCategoryRendererManager\";\r\nexport * from \"./components-react/propertygrid/PropertyDataProvider\";\r\nexport * from \"./components-react/propertygrid/SimplePropertyDataProvider\";\r\nexport * from \"./components-react/propertygrid/component/PropertyGrid\";\r\nexport * from \"./components-react/propertygrid/component/VirtualizedPropertyGrid\";\r\nexport * from \"./components-react/propertygrid/component/VirtualizedPropertyGridWithDataProvider\";\r\nexport * from \"./components-react/propertygrid/component/PropertyCategoryBlock\";\r\nexport * from \"./components-react/propertygrid/component/PropertyGridEventsRelatedPropsSupplier\";\r\nexport * from \"./components-react/propertygrid/component/PropertyGridCommons\";\r\nexport * from \"./components-react/propertygrid/component/PropertyList\";\r\nexport * from \"./components-react/propertygrid/internal/flat-items/FlatGridItem\";\r\nexport * from \"./components-react/propertygrid/internal/flat-items/MutableCategorizedArrayProperty\";\r\nexport * from \"./components-react/propertygrid/internal/flat-items/MutableCategorizedPrimitiveProperty\";\r\nexport * from \"./components-react/propertygrid/internal/flat-items/MutableCategorizedStructProperty\";\r\nexport * from \"./components-react/propertygrid/internal/flat-items/MutableFlatGridItem\";\r\nexport * from \"./components-react/propertygrid/internal/flat-items/MutableGridCategory\";\r\nexport * from \"./components-react/propertygrid/internal/flat-items/MutableGridItemFactory\";\r\nexport * from \"./components-react/propertygrid/internal/PropertyGridEventHandler\";\r\nexport * from \"./components-react/propertygrid/internal/PropertyGridHooks\";\r\nexport * from \"./components-react/propertygrid/internal/PropertyGridModel\";\r\nexport * from \"./components-react/propertygrid/internal/PropertyGridModelChangeEvent\";\r\nexport * from \"./components-react/propertygrid/internal/PropertyGridModelSource\";\r\nexport * from \"./components-react/propertygrid/dataproviders/FilteringDataProvider\";\r\nexport * from \"./components-react/propertygrid/dataproviders/filterers/PropertyCategoryLabelFilterer\";\r\nexport * from \"./components-react/propertygrid/dataproviders/filterers/CompositePropertyDataFilterer\";\r\nexport * from \"./components-react/propertygrid/dataproviders/filterers/DisplayValuePropertyDataFilterer\";\r\nexport * from \"./components-react/propertygrid/dataproviders/filterers/LabelPropertyDataFilterer\";\r\nexport * from \"./components-react/propertygrid/dataproviders/filterers/PropertyDataFiltererBase\";\r\n\r\nexport * from \"./components-react/selectable-content/SelectableContent\";\r\n\r\nexport * from \"./components-react/table/TableDataProvider\";\r\nexport * from \"./components-react/table/SimpleTableDataProvider\";\r\nexport * from \"./components-react/table/columnfiltering/ColumnFiltering\";\r\nexport * from \"./components-react/table/columnfiltering/TableFilterDescriptorCollection\";\r\nexport * from \"./components-react/table/component/Table\";\r\nexport * from \"./components-react/table/component/TableCell\";\r\nexport * from \"./components-react/table/component/TableColumn\";\r\nexport * from \"./components-react/table/component/dragdrop/BeDragDropContext\";\r\n\r\nexport * from \"./components-react/toolbar/Toolbar\";\r\nexport * from \"./components-react/toolbar/ToolbarWithOverflow\";\r\nexport * from \"./components-react/toolbar/PopupItem\";\r\nexport * from \"./components-react/toolbar/PopupItemWithDrag\";\r\nexport * from \"./components-react/toolbar/Item\";\r\nexport * from \"./components-react/toolbar/utilities/Direction\";\r\n\r\nexport * from \"./components-react/tree/TreeDataProvider\";\r\nexport * from \"./components-react/tree/SimpleTreeDataProvider\";\r\nexport * from \"./components-react/tree/HighlightingEngine\";\r\nexport * from \"./components-react/tree/ImageLoader\";\r\nexport * from \"./components-react/tree/controlled/TreeActions\";\r\nexport * from \"./components-react/tree/controlled/TreeEventDispatcher\";\r\nexport * from \"./components-react/tree/controlled/TreeEventHandler\";\r\nexport * from \"./components-react/tree/controlled/TreeEvents\";\r\nexport * from \"./components-react/tree/controlled/TreeModel\";\r\nexport * from \"./components-react/tree/controlled/TreeModelSource\";\r\nexport * from \"./components-react/tree/controlled/TreeNodeLoader\";\r\nexport * from \"./components-react/tree/controlled/Observable\";\r\nexport * from \"./components-react/tree/controlled/TreeHooks\";\r\nexport * from \"./components-react/tree/controlled/component/ControlledTree\";\r\nexport * from \"./components-react/tree/controlled/component/TreeNodeEditor\";\r\nexport * from \"./components-react/tree/controlled/component/TreeNodeRenderer\";\r\nexport * from \"./components-react/tree/controlled/component/TreeRenderer\";\r\nexport * from \"./components-react/tree/controlled/internal/SparseTree\";\r\n\r\n/** @docs-package-description\r\n * The components-react package contains React components that are data-oriented, such as PropertyGrid, Table and Tree.\r\n * For more information, see [learning about components-react]($docs/learning/ui/components/index.md).\r\n */\r\n/**\r\n * @docs-group-description Common\r\n * Common classes used across various UI components.\r\n */\r\n/**\r\n * @docs-group-description Breadcrumb\r\n * Classes and components for working with a Breadcrumb.\r\n * As of version 3.0, the Breadcrumb is deprecated.\r\n */\r\n/**\r\n * @docs-group-description Date\r\n * Classes, interfaces, and components for showing and setting date and time.\r\n */\r\n/**\r\n * @docs-group-description DragDrop\r\n * Classes and Higher Order Components for working with the DragDrop API.\r\n */\r\n/**\r\n * @docs-group-description Favorite\r\n * Classes and components for displaying favorite properties.\r\n */\r\n/**\r\n * @docs-group-description Filtering\r\n * Classes and components for working with filtering.\r\n */\r\n/**\r\n * @docs-group-description Inputs\r\n * Input Components that format and parse input.\r\n */\r\n/**\r\n * @docs-group-description SelectableContent\r\n * Classes and components for working with SelectableContent component.\r\n */\r\n/**\r\n * @docs-group-description Properties\r\n * Classes and components for working with Properties.\r\n */\r\n/**\r\n * @docs-group-description PropertyEditors\r\n * Classes and components for working with Property Editors.\r\n */\r\n/**\r\n * @docs-group-description PropertyGrid\r\n * Classes and components for working with a PropertyGrid.\r\n */\r\n/**\r\n * @docs-group-description Table\r\n * Classes and components for working with a Table.\r\n */\r\n/**\r\n * @docs-group-description Toolbar\r\n * Functions and components that provide a Toolbar.\r\n */\r\n/**\r\n * @docs-group-description Tree\r\n * Classes and components for working with a Tree.\r\n */\r\n/**\r\n * @docs-group-description TypeConverters\r\n * Classes for working with Type Converters.\r\n */\r\n/**\r\n * @docs-group-description PropertyFilterBuilder\r\n * Classes and components for working with PropertyFilterBuilder.\r\n */\r\n"]}
|
|
@@ -12,7 +12,7 @@ import { BreadcrumbPath } from "./BreadcrumbPath";
|
|
|
12
12
|
export declare type BreadcrumbNodeRenderer = (props: BreadcrumbNodeProps, node?: TreeNodeItem, parent?: TreeNodeItem) => React.ReactNode;
|
|
13
13
|
/** Properties for [[Breadcrumb]] component
|
|
14
14
|
* @beta
|
|
15
|
-
* @deprecated
|
|
15
|
+
* @deprecated in 3.0.
|
|
16
16
|
*/
|
|
17
17
|
export interface BreadcrumbProps extends CommonProps {
|
|
18
18
|
/** Manager to coordinate state between Breadcrumb element and BreadcrumbDetails element. */
|
|
@@ -50,7 +50,7 @@ export interface BreadcrumbProps extends CommonProps {
|
|
|
50
50
|
}
|
|
51
51
|
/** Enum for Breadcrumb Mode
|
|
52
52
|
* @beta
|
|
53
|
-
* @deprecated
|
|
53
|
+
* @deprecated in 3.0.
|
|
54
54
|
*/
|
|
55
55
|
export declare enum BreadcrumbMode {
|
|
56
56
|
Dropdown = "dropdown",
|
|
@@ -74,7 +74,7 @@ interface BreadcrumbState {
|
|
|
74
74
|
* Text mode includes autocomplete suggestions.
|
|
75
75
|
* Both dropdown and text mode support arrow and tab navigation.
|
|
76
76
|
* @beta
|
|
77
|
-
* @deprecated Use Breadcrumbs from itwinui-react instead
|
|
77
|
+
* @deprecated in 3.0. Use Breadcrumbs from itwinui-react instead
|
|
78
78
|
*/
|
|
79
79
|
export declare class Breadcrumb extends React.Component<BreadcrumbProps, BreadcrumbState> {
|
|
80
80
|
private _mounted;
|
|
@@ -174,7 +174,7 @@ export declare class BreadcrumbInput extends React.Component<BreadcrumbInputProp
|
|
|
174
174
|
}
|
|
175
175
|
/** Properties for [[BreadcrumbNode]] component
|
|
176
176
|
* @beta
|
|
177
|
-
* @deprecated
|
|
177
|
+
* @deprecated in 3.0.
|
|
178
178
|
*/
|
|
179
179
|
export interface BreadcrumbNodeProps {
|
|
180
180
|
/** Icon class string */
|
|
@@ -186,7 +186,7 @@ export interface BreadcrumbNodeProps {
|
|
|
186
186
|
}
|
|
187
187
|
/** Default BreadcrumbNode component
|
|
188
188
|
* @beta
|
|
189
|
-
* @deprecated
|
|
189
|
+
* @deprecated in 3.0.
|
|
190
190
|
*/
|
|
191
191
|
export declare class BreadcrumbNode extends React.Component<BreadcrumbNodeProps> {
|
|
192
192
|
constructor(props: BreadcrumbNodeProps);
|
|
@@ -18,7 +18,7 @@ import { BeInspireTree, BeInspireTreeEvent, toNodes, } from "./BeInspireTree";
|
|
|
18
18
|
import { getPropertyRecordAsString } from "./BreadcrumbTreeUtils";
|
|
19
19
|
/** Enum for Breadcrumb Mode
|
|
20
20
|
* @beta
|
|
21
|
-
* @deprecated
|
|
21
|
+
* @deprecated in 3.0.
|
|
22
22
|
*/
|
|
23
23
|
export var BreadcrumbMode;
|
|
24
24
|
(function (BreadcrumbMode) {
|
|
@@ -30,7 +30,7 @@ export var BreadcrumbMode;
|
|
|
30
30
|
* Text mode includes autocomplete suggestions.
|
|
31
31
|
* Both dropdown and text mode support arrow and tab navigation.
|
|
32
32
|
* @beta
|
|
33
|
-
* @deprecated Use Breadcrumbs from itwinui-react instead
|
|
33
|
+
* @deprecated in 3.0. Use Breadcrumbs from itwinui-react instead
|
|
34
34
|
*/
|
|
35
35
|
export class Breadcrumb extends React.Component {
|
|
36
36
|
/** @internal */
|
|
@@ -597,7 +597,7 @@ class BreadcrumbDropdownNode extends React.Component {
|
|
|
597
597
|
}
|
|
598
598
|
/** Default BreadcrumbNode component
|
|
599
599
|
* @beta
|
|
600
|
-
* @deprecated
|
|
600
|
+
* @deprecated in 3.0.
|
|
601
601
|
*/
|
|
602
602
|
export class BreadcrumbNode extends React.Component {
|
|
603
603
|
constructor(props) {
|
|
@@ -1 +1 @@
|
|
|
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"]}
|
|
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 in 3.0.\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 in 3.0.\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 in 3.0. 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 in 3.0.\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 in 3.0.\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"]}
|
|
@@ -9,7 +9,7 @@ import { TreeNodeItem } from "../tree/TreeDataProvider";
|
|
|
9
9
|
import { BreadcrumbPath } from "./BreadcrumbPath";
|
|
10
10
|
/** Properties for the [[BreadcrumbDetails]] component
|
|
11
11
|
* @beta
|
|
12
|
-
* @deprecated
|
|
12
|
+
* @deprecated in 3.0.
|
|
13
13
|
*/
|
|
14
14
|
export interface BreadcrumbDetailsProps extends CommonProps {
|
|
15
15
|
/** Path data object shared by Breadcrumb component */
|
|
@@ -33,7 +33,7 @@ interface BreadcrumbDetailsState {
|
|
|
33
33
|
* A Table containing all children of tree node specified in path.
|
|
34
34
|
* Used in conjunction with [[Breadcrumb]] to see children of current path.
|
|
35
35
|
* @beta
|
|
36
|
-
* @deprecated
|
|
36
|
+
* @deprecated in 3.0.
|
|
37
37
|
*/
|
|
38
38
|
export declare class BreadcrumbDetails extends React.Component<BreadcrumbDetailsProps, BreadcrumbDetailsState> {
|
|
39
39
|
private _tree;
|
|
@@ -17,7 +17,7 @@ import { BreadcrumbTreeUtils, getPropertyRecordAsString } from "./BreadcrumbTree
|
|
|
17
17
|
* A Table containing all children of tree node specified in path.
|
|
18
18
|
* Used in conjunction with [[Breadcrumb]] to see children of current path.
|
|
19
19
|
* @beta
|
|
20
|
-
* @deprecated
|
|
20
|
+
* @deprecated in 3.0.
|
|
21
21
|
*/
|
|
22
22
|
export class BreadcrumbDetails extends React.Component {
|
|
23
23
|
/** @internal */
|