@dangl/angular-ava 1.5.2-beta0089 → 1.5.2-beta0091

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.
@@ -39,12 +39,12 @@ var ModeViewType;
39
39
 
40
40
  // This file is automatically generated as part of the build process
41
41
  const version = {
42
- version: "1.5.2-beta0089",
43
- commitInfo: "Branch.develop.Sha.a1f18fa71bc47fe821b914da3979dd38b246e5d9",
44
- commitDate: "2026-04-26",
45
- commitHash: "a1f18fa71bc47fe821b914da3979dd38b246e5d9",
46
- informationalVersion: "1.5.2-beta.89+Branch.develop.Sha.a1f18fa71bc47fe821b914da3979dd38b246e5d9",
47
- buildDateUtc: new Date(Date.UTC(2026, 3, 26, 19, 59, 42))
42
+ version: "1.5.2-beta0091",
43
+ commitInfo: "Branch.develop.Sha.de818959c8fa299a47755891fa014ab5a7977edf",
44
+ commitDate: "2026-04-27",
45
+ commitHash: "de818959c8fa299a47755891fa014ab5a7977edf",
46
+ informationalVersion: "1.5.2-beta.91+Branch.develop.Sha.de818959c8fa299a47755891fa014ab5a7977edf",
47
+ buildDateUtc: new Date(Date.UTC(2026, 3, 27, 19, 59, 56))
48
48
  };
49
49
 
50
50
  class TreeHoverTooltipService {
@@ -1794,7 +1794,7 @@ class ElementItemNumberPipe {
1794
1794
  constructor() {
1795
1795
  this.configurationTreeService = inject(ConfigurationTreeService);
1796
1796
  }
1797
- transform(element, depth = 0) {
1797
+ transform(element, depth = 0, _revision) {
1798
1798
  let itemNumber = '';
1799
1799
  switch (element.elementTypeDiscriminator) {
1800
1800
  case 'ServiceSpecificationGroupDto':
@@ -1992,7 +1992,7 @@ class TreeItemComponent {
1992
1992
  this.treeNodeSelectionService.changeSelecting(isSelected, element.id);
1993
1993
  }
1994
1994
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: TreeItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1995
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.8", type: TreeItemComponent, isStandalone: true, selector: "ava-tree-item", inputs: { _element: { classPropertyName: "_element", publicName: "element", isSignal: true, isRequired: false, transformFunction: null }, depth: { classPropertyName: "depth", publicName: "depth", isSignal: true, isRequired: false, transformFunction: null }, isSelect: { classPropertyName: "isSelect", publicName: "isSelect", isSignal: true, isRequired: false, transformFunction: null }, backgroundColor: { classPropertyName: "backgroundColor", publicName: "backgroundColor", isSignal: true, isRequired: false, transformFunction: null } }, viewQueries: [{ propertyName: "textElement", first: true, predicate: ["textItem"], descendants: true, isSignal: true }], ngImport: i0, template: "@if (element()) {\n <div\n (click)=\"select()\"\n (dblclick)=\"dblSelect()\"\n (contextmenu)=\"openContextMenu($event)\"\n class=\"ava-tree-item\"\n [id]=\"element().id\"\n >\n <mat-icon\n class=\"ava-tree-item__icon\"\n saveChangingView=\"icon\"\n [id]=\"element().id\"\n >{{ element() | elementIconName }}</mat-icon\n >\n @if (!isSelectionMode) {\n <div\n #textItem\n class=\"ava-tree-item__text\"\n [class.choose]=\"!isSelectionMode && element().id === preselectedElement?.id\"\n [id]=\"element().id\"\n saveChangingView=\"text\"\n [class.select]=\"isSelect()\"\n [style.backgroundColor]=\"backgroundColor()\"\n >\n <ng-container [ngTemplateOutlet]=\"text\"></ng-container>\n </div>\n }\n @if (isSelectionMode && checkedElements[element().id]) {\n <mat-checkbox\n class=\"ava-tree-item__checkbox\"\n color=\"primary\"\n [indeterminate]=\"checkedElements[element().id].indeterminate\"\n [(ngModel)]=\"checkedElements[element().id].checked\"\n (ngModelChange)=\"changeSelecting(element(), $event)\"\n (click)=\"$event.stopPropagation()\"\n >\n <div\n #textItem\n class=\"ava-tree-item__text\"\n saveChangingView=\"text\"\n [id]=\"element().id\"\n >\n <ng-container [ngTemplateOutlet]=\"text\"></ng-container>\n </div>\n </mat-checkbox>\n }\n </div>\n}\n\n<ng-template #text>\n @if (textWords$ | async; as textWords) {\n @if (element().elementTypeDiscriminator === 'ServiceSpecificationGroupDto' || element().elementTypeDiscriminator === 'PositionDto') {\n <ng-container>\n {{ element() | elementItemNumber: depth() }} - {{ element() | elementText: textWords : pipeRevision() }}\n </ng-container>\n } @else {\n <ng-container>{{ element() | elementText: textWords : pipeRevision() }}</ng-container>\n }\n }\n</ng-template>\n", styles: ["::ng-deep .ava-tree-item__checkbox .mdc-form-field .mdc-checkbox{padding:0;flex:0 0 16px;width:16px;height:16px}::ng-deep .ava-tree-item__checkbox .mdc-form-field .mdc-checkbox .mdc-checkbox__native-control{width:100%;height:100%}::ng-deep .ava-tree-item__checkbox .mdc-form-field .mdc-checkbox .mdc-checkbox__native-control:focus~.mdc-checkbox__ripple{opacity:0!important}::ng-deep .ava-tree-item__checkbox .mdc-form-field .mdc-checkbox .mdc-checkbox__background{top:0;left:0;width:100%;height:100%}::ng-deep .ava-tree-item__checkbox .mdc-form-field .mdc-checkbox .mdc-checkbox__background .mdc-checkbox__mixedmark{border-color:#fff!important}::ng-deep .ava-tree-item__checkbox .mdc-form-field>label{line-height:24px;padding-left:8px;-webkit-user-select:none;user-select:none}::ng-deep .ava-tree-item__checkbox .mat-mdc-checkbox-touch-target{width:16px!important;height:16px!important}.ava-tree-item{display:flex;align-items:center}.ava-tree-item__icon,.ava-tree-item__checkbox{flex-shrink:0}.ava-tree-item__text{flex-grow:1;-webkit-user-select:none;user-select:none;white-space:nowrap;display:flex;align-items:center;min-height:24px}.ava-tree-item__text.choose{color:red!important}.ava-tree-item__text{background-color:#fefefe}.select{background-color:var(--mat-form-field-filled-caret-color);color:#fff}\n"], dependencies: [{ kind: "directive", type: SaveChangingViewDirective, selector: "[saveChangingView]", inputs: ["saveChangingView"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "ngmodule", type: MatCheckboxModule }, { kind: "component", type: i1.MatCheckbox, selector: "mat-checkbox", inputs: ["aria-label", "aria-labelledby", "aria-describedby", "aria-expanded", "aria-controls", "aria-owns", "id", "required", "labelPosition", "name", "value", "disableRipple", "tabIndex", "color", "disabledInteractive", "checked", "disabled", "indeterminate"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: ElementItemNumberPipe, name: "elementItemNumber" }, { kind: "pipe", type: ElementTextPipe, name: "elementText" }, { kind: "pipe", type: ElementIconNamePipe, name: "elementIconName" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
1995
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.8", type: TreeItemComponent, isStandalone: true, selector: "ava-tree-item", inputs: { _element: { classPropertyName: "_element", publicName: "element", isSignal: true, isRequired: false, transformFunction: null }, depth: { classPropertyName: "depth", publicName: "depth", isSignal: true, isRequired: false, transformFunction: null }, isSelect: { classPropertyName: "isSelect", publicName: "isSelect", isSignal: true, isRequired: false, transformFunction: null }, backgroundColor: { classPropertyName: "backgroundColor", publicName: "backgroundColor", isSignal: true, isRequired: false, transformFunction: null } }, viewQueries: [{ propertyName: "textElement", first: true, predicate: ["textItem"], descendants: true, isSignal: true }], ngImport: i0, template: "@if (element()) {\n <div\n (click)=\"select()\"\n (dblclick)=\"dblSelect()\"\n (contextmenu)=\"openContextMenu($event)\"\n class=\"ava-tree-item\"\n [id]=\"element().id\"\n >\n <mat-icon\n class=\"ava-tree-item__icon\"\n saveChangingView=\"icon\"\n [id]=\"element().id\"\n >{{ element() | elementIconName }}</mat-icon\n >\n @if (!isSelectionMode) {\n <div\n #textItem\n class=\"ava-tree-item__text\"\n [class.choose]=\"!isSelectionMode && element().id === preselectedElement?.id\"\n [id]=\"element().id\"\n saveChangingView=\"text\"\n [class.select]=\"isSelect()\"\n [style.backgroundColor]=\"backgroundColor()\"\n >\n <ng-container [ngTemplateOutlet]=\"text\"></ng-container>\n </div>\n }\n @if (isSelectionMode && checkedElements[element().id]) {\n <mat-checkbox\n class=\"ava-tree-item__checkbox\"\n color=\"primary\"\n [indeterminate]=\"checkedElements[element().id].indeterminate\"\n [(ngModel)]=\"checkedElements[element().id].checked\"\n (ngModelChange)=\"changeSelecting(element(), $event)\"\n (click)=\"$event.stopPropagation()\"\n >\n <div\n #textItem\n class=\"ava-tree-item__text\"\n saveChangingView=\"text\"\n [id]=\"element().id\"\n >\n <ng-container [ngTemplateOutlet]=\"text\"></ng-container>\n </div>\n </mat-checkbox>\n }\n </div>\n}\n\n<ng-template #text>\n @if (textWords$ | async; as textWords) {\n @if (element().elementTypeDiscriminator === 'ServiceSpecificationGroupDto' || element().elementTypeDiscriminator === 'PositionDto') {\n <ng-container>\n {{ element() | elementItemNumber: depth() : pipeRevision() }} - {{ element() | elementText: textWords : pipeRevision() }}\n </ng-container>\n } @else {\n <ng-container>{{ element() | elementText: textWords : pipeRevision() }}</ng-container>\n }\n }\n</ng-template>\n", styles: ["::ng-deep .ava-tree-item__checkbox .mdc-form-field .mdc-checkbox{padding:0;flex:0 0 16px;width:16px;height:16px}::ng-deep .ava-tree-item__checkbox .mdc-form-field .mdc-checkbox .mdc-checkbox__native-control{width:100%;height:100%}::ng-deep .ava-tree-item__checkbox .mdc-form-field .mdc-checkbox .mdc-checkbox__native-control:focus~.mdc-checkbox__ripple{opacity:0!important}::ng-deep .ava-tree-item__checkbox .mdc-form-field .mdc-checkbox .mdc-checkbox__background{top:0;left:0;width:100%;height:100%}::ng-deep .ava-tree-item__checkbox .mdc-form-field .mdc-checkbox .mdc-checkbox__background .mdc-checkbox__mixedmark{border-color:#fff!important}::ng-deep .ava-tree-item__checkbox .mdc-form-field>label{line-height:24px;padding-left:8px;-webkit-user-select:none;user-select:none}::ng-deep .ava-tree-item__checkbox .mat-mdc-checkbox-touch-target{width:16px!important;height:16px!important}.ava-tree-item{display:flex;align-items:center}.ava-tree-item__icon,.ava-tree-item__checkbox{flex-shrink:0}.ava-tree-item__text{flex-grow:1;-webkit-user-select:none;user-select:none;white-space:nowrap;display:flex;align-items:center;min-height:24px}.ava-tree-item__text.choose{color:red!important}.ava-tree-item__text{background-color:#fefefe}.select{background-color:var(--mat-form-field-filled-caret-color);color:#fff}\n"], dependencies: [{ kind: "directive", type: SaveChangingViewDirective, selector: "[saveChangingView]", inputs: ["saveChangingView"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "ngmodule", type: MatCheckboxModule }, { kind: "component", type: i1.MatCheckbox, selector: "mat-checkbox", inputs: ["aria-label", "aria-labelledby", "aria-describedby", "aria-expanded", "aria-controls", "aria-owns", "id", "required", "labelPosition", "name", "value", "disableRipple", "tabIndex", "color", "disabledInteractive", "checked", "disabled", "indeterminate"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: ElementItemNumberPipe, name: "elementItemNumber" }, { kind: "pipe", type: ElementTextPipe, name: "elementText" }, { kind: "pipe", type: ElementIconNamePipe, name: "elementIconName" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
1996
1996
  }
1997
1997
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: TreeItemComponent, decorators: [{
1998
1998
  type: Component,
@@ -2006,7 +2006,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.8", ngImpor
2006
2006
  MatCheckboxModule,
2007
2007
  FormsModule,
2008
2008
  MatIconModule
2009
- ], changeDetection: ChangeDetectionStrategy.OnPush, template: "@if (element()) {\n <div\n (click)=\"select()\"\n (dblclick)=\"dblSelect()\"\n (contextmenu)=\"openContextMenu($event)\"\n class=\"ava-tree-item\"\n [id]=\"element().id\"\n >\n <mat-icon\n class=\"ava-tree-item__icon\"\n saveChangingView=\"icon\"\n [id]=\"element().id\"\n >{{ element() | elementIconName }}</mat-icon\n >\n @if (!isSelectionMode) {\n <div\n #textItem\n class=\"ava-tree-item__text\"\n [class.choose]=\"!isSelectionMode && element().id === preselectedElement?.id\"\n [id]=\"element().id\"\n saveChangingView=\"text\"\n [class.select]=\"isSelect()\"\n [style.backgroundColor]=\"backgroundColor()\"\n >\n <ng-container [ngTemplateOutlet]=\"text\"></ng-container>\n </div>\n }\n @if (isSelectionMode && checkedElements[element().id]) {\n <mat-checkbox\n class=\"ava-tree-item__checkbox\"\n color=\"primary\"\n [indeterminate]=\"checkedElements[element().id].indeterminate\"\n [(ngModel)]=\"checkedElements[element().id].checked\"\n (ngModelChange)=\"changeSelecting(element(), $event)\"\n (click)=\"$event.stopPropagation()\"\n >\n <div\n #textItem\n class=\"ava-tree-item__text\"\n saveChangingView=\"text\"\n [id]=\"element().id\"\n >\n <ng-container [ngTemplateOutlet]=\"text\"></ng-container>\n </div>\n </mat-checkbox>\n }\n </div>\n}\n\n<ng-template #text>\n @if (textWords$ | async; as textWords) {\n @if (element().elementTypeDiscriminator === 'ServiceSpecificationGroupDto' || element().elementTypeDiscriminator === 'PositionDto') {\n <ng-container>\n {{ element() | elementItemNumber: depth() }} - {{ element() | elementText: textWords : pipeRevision() }}\n </ng-container>\n } @else {\n <ng-container>{{ element() | elementText: textWords : pipeRevision() }}</ng-container>\n }\n }\n</ng-template>\n", styles: ["::ng-deep .ava-tree-item__checkbox .mdc-form-field .mdc-checkbox{padding:0;flex:0 0 16px;width:16px;height:16px}::ng-deep .ava-tree-item__checkbox .mdc-form-field .mdc-checkbox .mdc-checkbox__native-control{width:100%;height:100%}::ng-deep .ava-tree-item__checkbox .mdc-form-field .mdc-checkbox .mdc-checkbox__native-control:focus~.mdc-checkbox__ripple{opacity:0!important}::ng-deep .ava-tree-item__checkbox .mdc-form-field .mdc-checkbox .mdc-checkbox__background{top:0;left:0;width:100%;height:100%}::ng-deep .ava-tree-item__checkbox .mdc-form-field .mdc-checkbox .mdc-checkbox__background .mdc-checkbox__mixedmark{border-color:#fff!important}::ng-deep .ava-tree-item__checkbox .mdc-form-field>label{line-height:24px;padding-left:8px;-webkit-user-select:none;user-select:none}::ng-deep .ava-tree-item__checkbox .mat-mdc-checkbox-touch-target{width:16px!important;height:16px!important}.ava-tree-item{display:flex;align-items:center}.ava-tree-item__icon,.ava-tree-item__checkbox{flex-shrink:0}.ava-tree-item__text{flex-grow:1;-webkit-user-select:none;user-select:none;white-space:nowrap;display:flex;align-items:center;min-height:24px}.ava-tree-item__text.choose{color:red!important}.ava-tree-item__text{background-color:#fefefe}.select{background-color:var(--mat-form-field-filled-caret-color);color:#fff}\n"] }]
2009
+ ], changeDetection: ChangeDetectionStrategy.OnPush, template: "@if (element()) {\n <div\n (click)=\"select()\"\n (dblclick)=\"dblSelect()\"\n (contextmenu)=\"openContextMenu($event)\"\n class=\"ava-tree-item\"\n [id]=\"element().id\"\n >\n <mat-icon\n class=\"ava-tree-item__icon\"\n saveChangingView=\"icon\"\n [id]=\"element().id\"\n >{{ element() | elementIconName }}</mat-icon\n >\n @if (!isSelectionMode) {\n <div\n #textItem\n class=\"ava-tree-item__text\"\n [class.choose]=\"!isSelectionMode && element().id === preselectedElement?.id\"\n [id]=\"element().id\"\n saveChangingView=\"text\"\n [class.select]=\"isSelect()\"\n [style.backgroundColor]=\"backgroundColor()\"\n >\n <ng-container [ngTemplateOutlet]=\"text\"></ng-container>\n </div>\n }\n @if (isSelectionMode && checkedElements[element().id]) {\n <mat-checkbox\n class=\"ava-tree-item__checkbox\"\n color=\"primary\"\n [indeterminate]=\"checkedElements[element().id].indeterminate\"\n [(ngModel)]=\"checkedElements[element().id].checked\"\n (ngModelChange)=\"changeSelecting(element(), $event)\"\n (click)=\"$event.stopPropagation()\"\n >\n <div\n #textItem\n class=\"ava-tree-item__text\"\n saveChangingView=\"text\"\n [id]=\"element().id\"\n >\n <ng-container [ngTemplateOutlet]=\"text\"></ng-container>\n </div>\n </mat-checkbox>\n }\n </div>\n}\n\n<ng-template #text>\n @if (textWords$ | async; as textWords) {\n @if (element().elementTypeDiscriminator === 'ServiceSpecificationGroupDto' || element().elementTypeDiscriminator === 'PositionDto') {\n <ng-container>\n {{ element() | elementItemNumber: depth() : pipeRevision() }} - {{ element() | elementText: textWords : pipeRevision() }}\n </ng-container>\n } @else {\n <ng-container>{{ element() | elementText: textWords : pipeRevision() }}</ng-container>\n }\n }\n</ng-template>\n", styles: ["::ng-deep .ava-tree-item__checkbox .mdc-form-field .mdc-checkbox{padding:0;flex:0 0 16px;width:16px;height:16px}::ng-deep .ava-tree-item__checkbox .mdc-form-field .mdc-checkbox .mdc-checkbox__native-control{width:100%;height:100%}::ng-deep .ava-tree-item__checkbox .mdc-form-field .mdc-checkbox .mdc-checkbox__native-control:focus~.mdc-checkbox__ripple{opacity:0!important}::ng-deep .ava-tree-item__checkbox .mdc-form-field .mdc-checkbox .mdc-checkbox__background{top:0;left:0;width:100%;height:100%}::ng-deep .ava-tree-item__checkbox .mdc-form-field .mdc-checkbox .mdc-checkbox__background .mdc-checkbox__mixedmark{border-color:#fff!important}::ng-deep .ava-tree-item__checkbox .mdc-form-field>label{line-height:24px;padding-left:8px;-webkit-user-select:none;user-select:none}::ng-deep .ava-tree-item__checkbox .mat-mdc-checkbox-touch-target{width:16px!important;height:16px!important}.ava-tree-item{display:flex;align-items:center}.ava-tree-item__icon,.ava-tree-item__checkbox{flex-shrink:0}.ava-tree-item__text{flex-grow:1;-webkit-user-select:none;user-select:none;white-space:nowrap;display:flex;align-items:center;min-height:24px}.ava-tree-item__text.choose{color:red!important}.ava-tree-item__text{background-color:#fefefe}.select{background-color:var(--mat-form-field-filled-caret-color);color:#fff}\n"] }]
2010
2010
  }], propDecorators: { _element: [{ type: i0.Input, args: [{ isSignal: true, alias: "element", required: false }] }], depth: [{ type: i0.Input, args: [{ isSignal: true, alias: "depth", required: false }] }], isSelect: [{ type: i0.Input, args: [{ isSignal: true, alias: "isSelect", required: false }] }], backgroundColor: [{ type: i0.Input, args: [{ isSignal: true, alias: "backgroundColor", required: false }] }], textElement: [{ type: i0.ViewChild, args: ['textItem', { isSignal: true }] }] } });
2011
2011
 
2012
2012
  class ListStructureComponent {
@@ -2696,6 +2696,18 @@ class AvaTreeComponent {
2696
2696
  });
2697
2697
  }
2698
2698
  }
2699
+ /**
2700
+ * Programmatically select an element in the tree from outside the component.
2701
+ * You can pass either an IElementDto instance or a string id.
2702
+ */
2703
+ selectElement(elementOrId) {
2704
+ if (typeof elementOrId === 'string') {
2705
+ this.selectElementById(elementOrId);
2706
+ }
2707
+ else {
2708
+ this.selectElementService.setClickElement(elementOrId);
2709
+ }
2710
+ }
2699
2711
  selectElementById(id) {
2700
2712
  this.flatElementsService.getOneElementById(id).subscribe((e) => {
2701
2713
  if (e) {