@smartbit4all/ng-client 7.3.10 → 7.3.12
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.
|
@@ -24951,7 +24951,6 @@ class SmartFilterExpressionItemsComponent {
|
|
|
24951
24951
|
ngOnInit() {
|
|
24952
24952
|
this.service().modelChanged.subscribe(() => {
|
|
24953
24953
|
const service = this.service();
|
|
24954
|
-
console.log(service.model);
|
|
24955
24954
|
this.isSelected = service.model?.selectedField === null;
|
|
24956
24955
|
});
|
|
24957
24956
|
this.isSelected = this.service().model?.selectedField === null;
|
|
@@ -24974,7 +24973,7 @@ class SmartFilterExpressionItemsComponent {
|
|
|
24974
24973
|
}
|
|
24975
24974
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SmartFilterExpressionItemsComponent, decorators: [{
|
|
24976
24975
|
type: Component,
|
|
24977
|
-
args: [{ selector:
|
|
24976
|
+
args: [{ selector: "app-expression-items", imports: [
|
|
24978
24977
|
NgClass,
|
|
24979
24978
|
SmartFilterExpressionItemComponent,
|
|
24980
24979
|
AdvancedSmartFilterExpressionItemComponent,
|
|
@@ -25421,11 +25420,11 @@ class SmartFilterEditorContentComponent {
|
|
|
25421
25420
|
});
|
|
25422
25421
|
}
|
|
25423
25422
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SmartFilterEditorContentComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
25424
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.8", type: SmartFilterEditorContentComponent, isStandalone: true, selector: "smart-filter-expression-editor", inputs: { service: "service" }, viewQueries: [{ propertyName: "vcRef", first: true, predicate: ["form"], descendants: true, read: ViewContainerRef }, { propertyName: "simpleFilterVcRef", first: true, predicate: ["simpleFilterFromChild"], descendants: true, read: ViewContainerRef }], ngImport: i0, template: "<div class=\"smart-filter-editor-container\" *ngIf=\"service.model\">\r\n @if (service.model.model?.label) {\r\n <h3 class=\"smart-filter-editor-title\">{{ service.model.model?.label }}</h3>\r\n }\r\n\r\n <div *ngIf=\"service.model.type === type.SIMPLE; then simpleFilter; else complexFilter\"></div>\r\n\r\n <ng-template #simpleFilter>\r\n <div class=\"smart-filter-editor-expressionsContainer\">\r\n <ng-template #simpleFilterFromChild></ng-template>\r\n <!-- #simpleFilterFromChild [smartForm]=\"simpleFilterForm\"></smartform> -->\r\n </div>\r\n </ng-template>\r\n <ng-template #complexFilter>\r\n <div class=\"smart-filter-editor-uiActionsBar\" *ngIf=\"!service.model?.readOnly\">\r\n <smart-ui-action-toolbar\r\n [uiActionModels]=\"uiActionModels\"\r\n [executor]=\"service\"\r\n ></smart-ui-action-toolbar>\r\n </div>\r\n <div\r\n *ngIf=\"\r\n service.model?.model?.workplaceList?.filters?.length;\r\n then withParameters;\r\n else withoutParameters\r\n \"\r\n ></div>\r\n <ng-template #withoutParameters>\r\n <div class=\"smart-filter-editor-withoutParametersContainer\">\r\n <span class=\"mat-body\"> M\u00E9g nincs megadva param\u00E9ter </span>\r\n </div>\r\n </ng-template>\r\n <ng-template #withParameters>\r\n <div class=\"smart-filter-editor-withParametersContainer\">\r\n <div\r\n class=\"smart-filter-editor-expressionsContainer\"\r\n *ngIf=\"service.model?.model?.workplaceList?.filters?.length\"\r\n (click)=\"unSelectItems($event)\"\r\n >\r\n <app-expression-items\r\n [items]=\"(service.model?.model?.workplaceList)!.filters\"\r\n [service]=\"service\"\r\n ></app-expression-items>\r\n </div>\r\n <div\r\n *ngIf=\"\r\n !useAdvancedFilter ||\r\n service.model?.selectedField?.expressionData?.currentOperation === 'EXPRESSION'\r\n \"\r\n class=\"smart-filter-editor-expressionEditorContainer\"\r\n >\r\n <!-- <smartform #form [smartForm]=\"smartForm\"></smartform> -->\r\n <ng-template #form></ng-template>\r\n <div *ngIf=\"smartForm\">\r\n <button (click)=\"remove()\" mat-raised-button color=\"primary\">T\u00F6rl\u00E9s</button>\r\n </div>\r\n </div>\r\n </div>\r\n </ng-template>\r\n </ng-template>\r\n</div>\r\n", styles: [".smart-filter-editor-container{display:flex;flex-direction:column;overflow:auto;position:relative}.targetGroupContentContainer h3{margin:0;font-weight:600}.smart-filter-editor-uiActionsBar{padding:.5rem
|
|
25423
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.8", type: SmartFilterEditorContentComponent, isStandalone: true, selector: "smart-filter-expression-editor", inputs: { service: "service" }, viewQueries: [{ propertyName: "vcRef", first: true, predicate: ["form"], descendants: true, read: ViewContainerRef }, { propertyName: "simpleFilterVcRef", first: true, predicate: ["simpleFilterFromChild"], descendants: true, read: ViewContainerRef }], ngImport: i0, template: "<div class=\"smart-filter-editor-container\" *ngIf=\"service.model\">\r\n @if (service.model.model?.label) {\r\n <h3 class=\"smart-filter-editor-title\">{{ service.model.model?.label }}</h3>\r\n }\r\n\r\n <div *ngIf=\"service.model.type === type.SIMPLE; then simpleFilter; else complexFilter\"></div>\r\n\r\n <ng-template #simpleFilter>\r\n <div class=\"smart-filter-editor-expressionsContainer\">\r\n <ng-template #simpleFilterFromChild></ng-template>\r\n <!-- #simpleFilterFromChild [smartForm]=\"simpleFilterForm\"></smartform> -->\r\n </div>\r\n </ng-template>\r\n <ng-template #complexFilter>\r\n <div class=\"smart-filter-editor-uiActionsBar\" *ngIf=\"!service.model?.readOnly\">\r\n <smart-ui-action-toolbar\r\n [uiActionModels]=\"uiActionModels\"\r\n [executor]=\"service\"\r\n ></smart-ui-action-toolbar>\r\n </div>\r\n <div\r\n *ngIf=\"\r\n service.model?.model?.workplaceList?.filters?.length;\r\n then withParameters;\r\n else withoutParameters\r\n \"\r\n ></div>\r\n <ng-template #withoutParameters>\r\n <div class=\"smart-filter-editor-withoutParametersContainer\">\r\n <span class=\"mat-body\"> M\u00E9g nincs megadva param\u00E9ter </span>\r\n </div>\r\n </ng-template>\r\n <ng-template #withParameters>\r\n <div class=\"smart-filter-editor-withParametersContainer\">\r\n <div\r\n class=\"smart-filter-editor-expressionsContainer\"\r\n *ngIf=\"service.model?.model?.workplaceList?.filters?.length\"\r\n (click)=\"unSelectItems($event)\"\r\n >\r\n <app-expression-items\r\n [items]=\"(service.model?.model?.workplaceList)!.filters\"\r\n [service]=\"service\"\r\n ></app-expression-items>\r\n </div>\r\n <div\r\n *ngIf=\"\r\n !useAdvancedFilter ||\r\n service.model?.selectedField?.expressionData?.currentOperation === 'EXPRESSION'\r\n \"\r\n class=\"smart-filter-editor-expressionEditorContainer\"\r\n >\r\n <!-- <smartform #form [smartForm]=\"smartForm\"></smartform> -->\r\n <ng-template #form></ng-template>\r\n <div *ngIf=\"smartForm\">\r\n <button (click)=\"remove()\" mat-raised-button color=\"primary\">T\u00F6rl\u00E9s</button>\r\n </div>\r\n </div>\r\n </div>\r\n </ng-template>\r\n </ng-template>\r\n</div>\r\n", styles: [".smart-filter-editor-container{display:flex;flex-direction:column;overflow:auto;position:relative}.targetGroupContentContainer h3{margin:0;font-weight:600}.smart-filter-editor-uiActionsBar{padding:.5rem;border-radius:.25rem;background-color:var(--container-color);display:flex;flex-direction:row;gap:1rem}.smart-filter-editor-withoutParametersContainer{display:flex;flex-direction:column;background-color:var(--container-color)}.withoutParametersContainer .mat-body{font-weight:600;text-align:center}.smart-filter-editor-withParametersContainer{display:flex;flex-direction:column;background-color:var(--container-color)}.smart-filter-editor-expressionEditorContainer{display:flex;flex-direction:column;gap:.75rem}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: UiActionToolbarComponent, selector: "smart-ui-action-toolbar", inputs: ["uiActionModels", "uiActionDescriptorService", "id", "executor", "widgetId", "nodeId", "actionParams", "scrollOnWrap", "toolbarPropertes"], outputs: ["actionFired"] }, { kind: "component", type: SmartFilterExpressionItemsComponent, selector: "app-expression-items", inputs: ["items", "service"] }, { kind: "component", type: MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }] }); }
|
|
25425
25424
|
}
|
|
25426
25425
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SmartFilterEditorContentComponent, decorators: [{
|
|
25427
25426
|
type: Component,
|
|
25428
|
-
args: [{ selector: 'smart-filter-expression-editor', imports: [NgIf, UiActionToolbarComponent, SmartFilterExpressionItemsComponent, MatButton], template: "<div class=\"smart-filter-editor-container\" *ngIf=\"service.model\">\r\n @if (service.model.model?.label) {\r\n <h3 class=\"smart-filter-editor-title\">{{ service.model.model?.label }}</h3>\r\n }\r\n\r\n <div *ngIf=\"service.model.type === type.SIMPLE; then simpleFilter; else complexFilter\"></div>\r\n\r\n <ng-template #simpleFilter>\r\n <div class=\"smart-filter-editor-expressionsContainer\">\r\n <ng-template #simpleFilterFromChild></ng-template>\r\n <!-- #simpleFilterFromChild [smartForm]=\"simpleFilterForm\"></smartform> -->\r\n </div>\r\n </ng-template>\r\n <ng-template #complexFilter>\r\n <div class=\"smart-filter-editor-uiActionsBar\" *ngIf=\"!service.model?.readOnly\">\r\n <smart-ui-action-toolbar\r\n [uiActionModels]=\"uiActionModels\"\r\n [executor]=\"service\"\r\n ></smart-ui-action-toolbar>\r\n </div>\r\n <div\r\n *ngIf=\"\r\n service.model?.model?.workplaceList?.filters?.length;\r\n then withParameters;\r\n else withoutParameters\r\n \"\r\n ></div>\r\n <ng-template #withoutParameters>\r\n <div class=\"smart-filter-editor-withoutParametersContainer\">\r\n <span class=\"mat-body\"> M\u00E9g nincs megadva param\u00E9ter </span>\r\n </div>\r\n </ng-template>\r\n <ng-template #withParameters>\r\n <div class=\"smart-filter-editor-withParametersContainer\">\r\n <div\r\n class=\"smart-filter-editor-expressionsContainer\"\r\n *ngIf=\"service.model?.model?.workplaceList?.filters?.length\"\r\n (click)=\"unSelectItems($event)\"\r\n >\r\n <app-expression-items\r\n [items]=\"(service.model?.model?.workplaceList)!.filters\"\r\n [service]=\"service\"\r\n ></app-expression-items>\r\n </div>\r\n <div\r\n *ngIf=\"\r\n !useAdvancedFilter ||\r\n service.model?.selectedField?.expressionData?.currentOperation === 'EXPRESSION'\r\n \"\r\n class=\"smart-filter-editor-expressionEditorContainer\"\r\n >\r\n <!-- <smartform #form [smartForm]=\"smartForm\"></smartform> -->\r\n <ng-template #form></ng-template>\r\n <div *ngIf=\"smartForm\">\r\n <button (click)=\"remove()\" mat-raised-button color=\"primary\">T\u00F6rl\u00E9s</button>\r\n </div>\r\n </div>\r\n </div>\r\n </ng-template>\r\n </ng-template>\r\n</div>\r\n", styles: [".smart-filter-editor-container{display:flex;flex-direction:column;overflow:auto;position:relative}.targetGroupContentContainer h3{margin:0;font-weight:600}.smart-filter-editor-uiActionsBar{padding:.5rem
|
|
25427
|
+
args: [{ selector: 'smart-filter-expression-editor', imports: [NgIf, UiActionToolbarComponent, SmartFilterExpressionItemsComponent, MatButton], template: "<div class=\"smart-filter-editor-container\" *ngIf=\"service.model\">\r\n @if (service.model.model?.label) {\r\n <h3 class=\"smart-filter-editor-title\">{{ service.model.model?.label }}</h3>\r\n }\r\n\r\n <div *ngIf=\"service.model.type === type.SIMPLE; then simpleFilter; else complexFilter\"></div>\r\n\r\n <ng-template #simpleFilter>\r\n <div class=\"smart-filter-editor-expressionsContainer\">\r\n <ng-template #simpleFilterFromChild></ng-template>\r\n <!-- #simpleFilterFromChild [smartForm]=\"simpleFilterForm\"></smartform> -->\r\n </div>\r\n </ng-template>\r\n <ng-template #complexFilter>\r\n <div class=\"smart-filter-editor-uiActionsBar\" *ngIf=\"!service.model?.readOnly\">\r\n <smart-ui-action-toolbar\r\n [uiActionModels]=\"uiActionModels\"\r\n [executor]=\"service\"\r\n ></smart-ui-action-toolbar>\r\n </div>\r\n <div\r\n *ngIf=\"\r\n service.model?.model?.workplaceList?.filters?.length;\r\n then withParameters;\r\n else withoutParameters\r\n \"\r\n ></div>\r\n <ng-template #withoutParameters>\r\n <div class=\"smart-filter-editor-withoutParametersContainer\">\r\n <span class=\"mat-body\"> M\u00E9g nincs megadva param\u00E9ter </span>\r\n </div>\r\n </ng-template>\r\n <ng-template #withParameters>\r\n <div class=\"smart-filter-editor-withParametersContainer\">\r\n <div\r\n class=\"smart-filter-editor-expressionsContainer\"\r\n *ngIf=\"service.model?.model?.workplaceList?.filters?.length\"\r\n (click)=\"unSelectItems($event)\"\r\n >\r\n <app-expression-items\r\n [items]=\"(service.model?.model?.workplaceList)!.filters\"\r\n [service]=\"service\"\r\n ></app-expression-items>\r\n </div>\r\n <div\r\n *ngIf=\"\r\n !useAdvancedFilter ||\r\n service.model?.selectedField?.expressionData?.currentOperation === 'EXPRESSION'\r\n \"\r\n class=\"smart-filter-editor-expressionEditorContainer\"\r\n >\r\n <!-- <smartform #form [smartForm]=\"smartForm\"></smartform> -->\r\n <ng-template #form></ng-template>\r\n <div *ngIf=\"smartForm\">\r\n <button (click)=\"remove()\" mat-raised-button color=\"primary\">T\u00F6rl\u00E9s</button>\r\n </div>\r\n </div>\r\n </div>\r\n </ng-template>\r\n </ng-template>\r\n</div>\r\n", styles: [".smart-filter-editor-container{display:flex;flex-direction:column;overflow:auto;position:relative}.targetGroupContentContainer h3{margin:0;font-weight:600}.smart-filter-editor-uiActionsBar{padding:.5rem;border-radius:.25rem;background-color:var(--container-color);display:flex;flex-direction:row;gap:1rem}.smart-filter-editor-withoutParametersContainer{display:flex;flex-direction:column;background-color:var(--container-color)}.withoutParametersContainer .mat-body{font-weight:600;text-align:center}.smart-filter-editor-withParametersContainer{display:flex;flex-direction:column;background-color:var(--container-color)}.smart-filter-editor-expressionEditorContainer{display:flex;flex-direction:column;gap:.75rem}\n"] }]
|
|
25429
25428
|
}], ctorParameters: () => [], propDecorators: { service: [{
|
|
25430
25429
|
type: Input
|
|
25431
25430
|
}], vcRef: [{
|
|
@@ -25815,11 +25814,11 @@ class SmartComponentLayoutComponent {
|
|
|
25815
25814
|
}
|
|
25816
25815
|
}
|
|
25817
25816
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SmartComponentLayoutComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
25818
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.8", type: SmartComponentLayoutComponent, isStandalone: true, selector: "smart-component-layout", inputs: { smartComponentLayout: "smartComponentLayout", parentLayoutComponent: "parentLayoutComponent", gridRow: "gridRow" }, host: { properties: { "attr.data-testid": "this.testId", "class.horizontal": "this.isHorizontal", "class.vertical": "this.isVertical" } }, viewQueries: [{ propertyName: "embeddedSlotVcRefSetter", first: true, predicate: ["embeddedSlot"], descendants: true, read: ViewContainerRef }], usesOnChanges: true, ngImport: i0, template: "@if (smartComponentLayout?.expandable) {\r\n @if (expandableSection) {\r\n <smart-expandable-section\r\n [data]=\"expandableSection\"\r\n ></smart-expandable-section>\r\n }\r\n} @else {\r\n @if (smartComponentLayout?.type === type().CONTAINER) {\r\n <!--\r\n Tracked by position, not by identity: the backend hands back new layout objects on every\r\n model refresh, so `track layout` recreated the whole subtree each time (NG0956). Position\r\n is sound here because a child rebuilds from its input in `setUp()` regardless of which\r\n component instance lands on which definition, and its own `deepEqual` guard then decides\r\n whether anything actually changed. `identifier` is not usable as a key \u2014 the platform's\r\n LayoutBuilder sets it conditionally, so a sibling list is overwhelmingly all-`undefined`\r\n (NG0955). See A20 / ADR-0007 decision 5.\r\n -->\r\n @for (layout of smartComponentLayout?.components; track $index) {\r\n <smart-component-layout\r\n [parentLayoutComponent]=\"this\"\r\n [smartComponentLayout]=\"layout\"\r\n [gridRow]=\"gridRow\"\r\n ></smart-component-layout>\r\n }\r\n }\r\n @if (smartForm) {\r\n <smartform [smartForm]=\"smartForm\"></smartform>\r\n }\r\n @if (smartGrid) {\r\n <smart-grid\r\n [smartGrid]=\"smartGrid\"\r\n [uuid]=\"uuid!\"\r\n [parentLayoutComponent]=\"this\"\r\n ></smart-grid>\r\n }\r\n @if (!!uuid && !!mapId) {\r\n <smart-map [uuid]=\"uuid\" [identifier]=\"mapId\"></smart-map>\r\n }\r\n @if (!!uuid && !!smartDiagramId) {\r\n <smart-diagram [uuid]=\"uuid\" [identifier]=\"smartDiagramId\"></smart-diagram>\r\n }\r\n @if (!!uuid && !!filterId) {\r\n <smart-filter-widget [uuid]=\"uuid\" [identifier]=\"filterId\"></smart-filter-widget>\r\n }\r\n @if (treeService) {\r\n <smart-tree [treeService]=\"treeService!\"></smart-tree>\r\n }\r\n @if (!!toolbarId) {\r\n <smart-ui-action-toolbar\r\n [id]=\"toolbarId\"\r\n [toolbarPropertes]=\"toolbarPropertes\"\r\n ></smart-ui-action-toolbar>\r\n }\r\n @if (embeddedSlotActive) {\r\n <ng-container #embeddedSlot></ng-container>\r\n }\r\n}\r\n\r\n\r\n", styles: [":host(.horizontal){display:flex;flex-direction:row}:host(.vertical){display:flex;flex-direction:column}:host(.horizontal) smart-component-layout{display:flex}:host(.horizontal) smartform{flex:1;display:flex}:host(.sm-view-tabs){min-height:0}:host(.sm-nav-view){gap:.75rem;padding:.75rem 1rem}:host(.sm-nav-pane) ::ng-deep .sm-nav-view,:host(.sm-nav-slot) ::ng-deep .sm-nav-view{padding:0}:host(.sm-nav-caption) ::ng-deep .label{margin:0}:host(.sm-nav-caption) ::ng-deep .smart-form-widget-label{margin:0;font-size:1.35rem;font-weight:600;color:var(--color-text, #132033)}:host(.sm-nav-header){align-items:center;justify-content:space-between;gap:.5rem}:host(.sm-nav-section){gap:.5rem;flex:1 1 0;min-width:0;margin-top:.5rem}:host(.sm-nav-section-title) ::ng-deep .label{margin:0}:host(.sm-nav-section-title) ::ng-deep .smart-form-widget-label{margin:0;font-size:1.1rem;font-weight:600;color:var(--color-text, #132033)}:host(.sm-nav-list),:host(.sm-nav-pane){display:flex;flex-direction:column;flex:1 1 0;min-width:0}:host(.sm-nav-pane){margin-left:1rem;padding-left:1rem;border-left:1px solid var(--color-border, #e4eaf2)}:host(.sm-nav-pane.sm-slot-empty){flex:0 0 0;margin:0;padding:0;border:0}:host(.sm-nav-tree){flex:0 0 320px;align-self:stretch;min-height:60vh;min-width:0;padding:.5rem 0;background-color:var(--color-surface, #ffffff);border-right:1px solid var(--color-border, #e4eaf2)}:host(.sm-nav-slot){display:flex;flex-direction:column;flex:1 1 0;min-width:0;padding:.75rem 1rem}:host(.sm-nav-crumbs){padding-bottom:.25rem;border-bottom:1px solid var(--color-border, #e4eaf2)}\n"], dependencies: [{ kind: "component", type: SmartComponentLayoutComponent, selector: "smart-component-layout", inputs: ["smartComponentLayout", "parentLayoutComponent", "gridRow"] }, { kind: "component", type: ExpandableSectionComponent, selector: "smart-expandable-section", inputs: ["data", "index"] }, { kind: "component", type: SmartformComponent, selector: "smartform", inputs: ["smartForm"] }, { kind: "component", type: SmartGridComponent, selector: "smart-grid", inputs: ["smartGrid", "uuid", "parentLayoutComponent", "dev"] }, { kind: "component", type: SmartMapComponent, selector: "smart-map", inputs: ["uuid", "identifier"] }, { kind: "component", type: SmartDiagramComponent, selector: "smart-diagram", inputs: ["uuid", "identifier", "diagramModel", "options", "plugins"], outputs: ["elementSelect", "canvasClick", "dataClick"] }, { kind: "component", type: SmartFilterWidgetComponent, selector: "smart-filter-widget", inputs: ["identifier", "uuid"] }, { kind: "component", type: SmartTreeComponent, selector: "smart-tree", inputs: ["treeStyle", "treeService"] }, { kind: "component", type: UiActionToolbarComponent, selector: "smart-ui-action-toolbar", inputs: ["uiActionModels", "uiActionDescriptorService", "id", "executor", "widgetId", "nodeId", "actionParams", "scrollOnWrap", "toolbarPropertes"], outputs: ["actionFired"] }] }); }
|
|
25817
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.8", type: SmartComponentLayoutComponent, isStandalone: true, selector: "smart-component-layout", inputs: { smartComponentLayout: "smartComponentLayout", parentLayoutComponent: "parentLayoutComponent", gridRow: "gridRow" }, host: { properties: { "attr.data-testid": "this.testId", "class.horizontal": "this.isHorizontal", "class.vertical": "this.isVertical" } }, viewQueries: [{ propertyName: "embeddedSlotVcRefSetter", first: true, predicate: ["embeddedSlot"], descendants: true, read: ViewContainerRef }], usesOnChanges: true, ngImport: i0, template: "@if (smartComponentLayout?.expandable) {\r\n @if (expandableSection) {\r\n <smart-expandable-section\r\n [data]=\"expandableSection\"\r\n ></smart-expandable-section>\r\n }\r\n} @else {\r\n @if (smartComponentLayout?.type === type().CONTAINER) {\r\n <!--\r\n Tracked by position, not by identity: the backend hands back new layout objects on every\r\n model refresh, so `track layout` recreated the whole subtree each time (NG0956). Position\r\n is sound here because a child rebuilds from its input in `setUp()` regardless of which\r\n component instance lands on which definition, and its own `deepEqual` guard then decides\r\n whether anything actually changed. `identifier` is not usable as a key \u2014 the platform's\r\n LayoutBuilder sets it conditionally, so a sibling list is overwhelmingly all-`undefined`\r\n (NG0955). See A20 / ADR-0007 decision 5.\r\n -->\r\n @for (layout of smartComponentLayout?.components; track $index) {\r\n <smart-component-layout\r\n [parentLayoutComponent]=\"this\"\r\n [smartComponentLayout]=\"layout\"\r\n [gridRow]=\"gridRow\"\r\n ></smart-component-layout>\r\n }\r\n }\r\n @if (smartForm) {\r\n <smartform [smartForm]=\"smartForm\"></smartform>\r\n }\r\n @if (smartGrid) {\r\n <smart-grid\r\n [smartGrid]=\"smartGrid\"\r\n [uuid]=\"uuid!\"\r\n [parentLayoutComponent]=\"this\"\r\n ></smart-grid>\r\n }\r\n @if (!!uuid && !!mapId) {\r\n <smart-map [uuid]=\"uuid\" [identifier]=\"mapId\"></smart-map>\r\n }\r\n @if (!!uuid && !!smartDiagramId) {\r\n <smart-diagram [uuid]=\"uuid\" [identifier]=\"smartDiagramId\"></smart-diagram>\r\n }\r\n @if (!!uuid && !!filterId) {\r\n <smart-filter-widget [uuid]=\"uuid\" [identifier]=\"filterId\"></smart-filter-widget>\r\n }\r\n @if (treeService) {\r\n <smart-tree [treeService]=\"treeService!\"></smart-tree>\r\n }\r\n @if (!!toolbarId) {\r\n <smart-ui-action-toolbar\r\n [id]=\"toolbarId\"\r\n [toolbarPropertes]=\"toolbarPropertes\"\r\n ></smart-ui-action-toolbar>\r\n }\r\n @if (embeddedSlotActive) {\r\n <ng-container #embeddedSlot></ng-container>\r\n }\r\n}\r\n\r\n\r\n", styles: [":host(.horizontal){display:flex;flex-direction:row}:host(.vertical){display:flex;flex-direction:column}:host(.horizontal) smart-component-layout{display:flex}:host(.horizontal) smartform{flex:1;display:flex}:host(.sm-view-tabs){min-height:0}:host(.sm-nav-view){gap:.75rem;padding:.75rem 1rem}:host(.sm-nav-pane) ::ng-deep .sm-nav-view,:host(.sm-nav-slot) ::ng-deep .sm-nav-view{padding:0}:host(.sm-nav-caption) ::ng-deep .label{margin:0}:host(.sm-nav-caption) ::ng-deep .smart-form-widget-label{margin:0;font-size:1.35rem;font-weight:600;color:var(--color-text, #132033)}:host(.sm-nav-header){align-items:center;justify-content:space-between;gap:.5rem}:host(.sm-nav-section){gap:.5rem;flex:1 1 0;min-width:0;margin-top:.5rem}:host(.sm-nav-section-title) ::ng-deep .label{margin:0}:host(.sm-nav-section-title) ::ng-deep .smart-form-widget-label{margin:0;font-size:1.1rem;font-weight:600;color:var(--color-text, #132033)}:host(.sm-nav-frame){position:relative;margin-top:.75rem;padding:1.75rem 1rem 1rem;border:1px none var(--color-border, #e4eaf2);border-radius:.5rem}:host(.sm-nav-frame-solid){border-style:solid}:host(.sm-nav-caption-n),:host(.sm-nav-caption-s){align-self:center}:host(.sm-nav-caption-ne),:host(.sm-nav-caption-se){align-self:flex-end}:host(.sm-nav-caption-sw),:host(.sm-nav-caption-s),:host(.sm-nav-caption-se){order:1}:host(.sm-nav-caption-e),:host(.sm-nav-caption-w){position:absolute;top:0;writing-mode:vertical-rl}:host(.sm-nav-caption-e){right:0}:host(.sm-nav-caption-w){left:0;transform:rotate(180deg)}:host:has(>smart-component-layout.sm-nav-caption-e){position:relative;padding-right:2.25rem}:host:has(>smart-component-layout.sm-nav-caption-w){position:relative;padding-left:2.25rem}:host(.sm-nav-frame)>smart-component-layout.sm-nav-caption-nw,:host(.sm-nav-frame)>smart-component-layout.sm-nav-caption-n,:host(.sm-nav-frame)>smart-component-layout.sm-nav-caption-ne,:host(.sm-nav-frame)>smart-component-layout.sm-nav-caption-e,:host(.sm-nav-frame)>smart-component-layout.sm-nav-caption-se,:host(.sm-nav-frame)>smart-component-layout.sm-nav-caption-s,:host(.sm-nav-frame)>smart-component-layout.sm-nav-caption-sw,:host(.sm-nav-frame)>smart-component-layout.sm-nav-caption-w{position:absolute;padding:0 .5rem;background-color:var(--color-surface, #ffffff)}:host(.sm-nav-frame)>smart-component-layout.sm-nav-caption-nw,:host(.sm-nav-frame)>smart-component-layout.sm-nav-caption-ne{top:0;transform:translateY(-50%)}:host(.sm-nav-frame)>smart-component-layout.sm-nav-caption-sw,:host(.sm-nav-frame)>smart-component-layout.sm-nav-caption-se{bottom:0;transform:translateY(50%)}:host(.sm-nav-frame)>smart-component-layout.sm-nav-caption-nw,:host(.sm-nav-frame)>smart-component-layout.sm-nav-caption-sw{left:.75rem}:host(.sm-nav-frame)>smart-component-layout.sm-nav-caption-ne,:host(.sm-nav-frame)>smart-component-layout.sm-nav-caption-se{right:.75rem}:host(.sm-nav-frame)>smart-component-layout.sm-nav-caption-n{top:0;left:50%;transform:translate(-50%,-50%)}:host(.sm-nav-frame)>smart-component-layout.sm-nav-caption-s{bottom:0;left:50%;transform:translate(-50%,50%)}:host(.sm-nav-frame)>smart-component-layout.sm-nav-caption-e{top:.75rem;right:0;padding:.5rem 0;transform:translate(50%)}:host(.sm-nav-frame)>smart-component-layout.sm-nav-caption-w{top:.75rem;left:0;padding:.5rem 0;transform:translate(-50%) rotate(180deg)}:host(.sm-nav-frame):has(>smart-component-layout.sm-nav-caption-e){padding-right:2rem}:host(.sm-nav-frame):has(>smart-component-layout.sm-nav-caption-w){padding-left:2rem}:host(.sm-nav-frame):has(>smart-component-layout.sm-nav-caption-sw),:host(.sm-nav-frame):has(>smart-component-layout.sm-nav-caption-s),:host(.sm-nav-frame):has(>smart-component-layout.sm-nav-caption-se){padding:1rem 1rem 1.75rem;margin-bottom:.75rem}:host(.sm-nav-frame):not(:has(>smart-component-layout:is(.sm-nav-caption-nw,.sm-nav-caption-n,.sm-nav-caption-ne,.sm-nav-caption-e,.sm-nav-caption-se,.sm-nav-caption-s,.sm-nav-caption-sw,.sm-nav-caption-w))){padding:1rem}:host(.sm-nav-list),:host(.sm-nav-pane){display:flex;flex-direction:column;flex:1 1 0;min-width:0}:host(.sm-nav-pane){margin-left:1rem;padding-left:1rem;border-left:1px solid var(--color-border, #e4eaf2)}:host(.sm-nav-pane.sm-slot-empty){flex:0 0 0;margin:0;padding:0;border:0}:host(.sm-nav-tree){flex:0 0 320px;align-self:stretch;min-height:60vh;min-width:0;padding:.5rem 0;background-color:var(--color-surface, #ffffff);border-right:1px solid var(--color-border, #e4eaf2)}:host(.sm-nav-slot){display:flex;flex-direction:column;flex:1 1 0;min-width:0;padding:.75rem 1rem}:host(.sm-nav-crumbs){padding-bottom:.25rem;border-bottom:1px solid var(--color-border, #e4eaf2)}\n"], dependencies: [{ kind: "component", type: SmartComponentLayoutComponent, selector: "smart-component-layout", inputs: ["smartComponentLayout", "parentLayoutComponent", "gridRow"] }, { kind: "component", type: ExpandableSectionComponent, selector: "smart-expandable-section", inputs: ["data", "index"] }, { kind: "component", type: SmartformComponent, selector: "smartform", inputs: ["smartForm"] }, { kind: "component", type: SmartGridComponent, selector: "smart-grid", inputs: ["smartGrid", "uuid", "parentLayoutComponent", "dev"] }, { kind: "component", type: SmartMapComponent, selector: "smart-map", inputs: ["uuid", "identifier"] }, { kind: "component", type: SmartDiagramComponent, selector: "smart-diagram", inputs: ["uuid", "identifier", "diagramModel", "options", "plugins"], outputs: ["elementSelect", "canvasClick", "dataClick"] }, { kind: "component", type: SmartFilterWidgetComponent, selector: "smart-filter-widget", inputs: ["identifier", "uuid"] }, { kind: "component", type: SmartTreeComponent, selector: "smart-tree", inputs: ["treeStyle", "treeService"] }, { kind: "component", type: UiActionToolbarComponent, selector: "smart-ui-action-toolbar", inputs: ["uiActionModels", "uiActionDescriptorService", "id", "executor", "widgetId", "nodeId", "actionParams", "scrollOnWrap", "toolbarPropertes"], outputs: ["actionFired"] }] }); }
|
|
25819
25818
|
}
|
|
25820
25819
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SmartComponentLayoutComponent, decorators: [{
|
|
25821
25820
|
type: Component,
|
|
25822
|
-
args: [{ selector: 'smart-component-layout', imports: [ExpandableSectionComponent, SmartformComponent, SmartGridComponent, SmartMapComponent, SmartDiagramComponent, SmartFilterWidgetComponent, SmartTreeComponent, UiActionToolbarComponent], template: "@if (smartComponentLayout?.expandable) {\r\n @if (expandableSection) {\r\n <smart-expandable-section\r\n [data]=\"expandableSection\"\r\n ></smart-expandable-section>\r\n }\r\n} @else {\r\n @if (smartComponentLayout?.type === type().CONTAINER) {\r\n <!--\r\n Tracked by position, not by identity: the backend hands back new layout objects on every\r\n model refresh, so `track layout` recreated the whole subtree each time (NG0956). Position\r\n is sound here because a child rebuilds from its input in `setUp()` regardless of which\r\n component instance lands on which definition, and its own `deepEqual` guard then decides\r\n whether anything actually changed. `identifier` is not usable as a key \u2014 the platform's\r\n LayoutBuilder sets it conditionally, so a sibling list is overwhelmingly all-`undefined`\r\n (NG0955). See A20 / ADR-0007 decision 5.\r\n -->\r\n @for (layout of smartComponentLayout?.components; track $index) {\r\n <smart-component-layout\r\n [parentLayoutComponent]=\"this\"\r\n [smartComponentLayout]=\"layout\"\r\n [gridRow]=\"gridRow\"\r\n ></smart-component-layout>\r\n }\r\n }\r\n @if (smartForm) {\r\n <smartform [smartForm]=\"smartForm\"></smartform>\r\n }\r\n @if (smartGrid) {\r\n <smart-grid\r\n [smartGrid]=\"smartGrid\"\r\n [uuid]=\"uuid!\"\r\n [parentLayoutComponent]=\"this\"\r\n ></smart-grid>\r\n }\r\n @if (!!uuid && !!mapId) {\r\n <smart-map [uuid]=\"uuid\" [identifier]=\"mapId\"></smart-map>\r\n }\r\n @if (!!uuid && !!smartDiagramId) {\r\n <smart-diagram [uuid]=\"uuid\" [identifier]=\"smartDiagramId\"></smart-diagram>\r\n }\r\n @if (!!uuid && !!filterId) {\r\n <smart-filter-widget [uuid]=\"uuid\" [identifier]=\"filterId\"></smart-filter-widget>\r\n }\r\n @if (treeService) {\r\n <smart-tree [treeService]=\"treeService!\"></smart-tree>\r\n }\r\n @if (!!toolbarId) {\r\n <smart-ui-action-toolbar\r\n [id]=\"toolbarId\"\r\n [toolbarPropertes]=\"toolbarPropertes\"\r\n ></smart-ui-action-toolbar>\r\n }\r\n @if (embeddedSlotActive) {\r\n <ng-container #embeddedSlot></ng-container>\r\n }\r\n}\r\n\r\n\r\n", styles: [":host(.horizontal){display:flex;flex-direction:row}:host(.vertical){display:flex;flex-direction:column}:host(.horizontal) smart-component-layout{display:flex}:host(.horizontal) smartform{flex:1;display:flex}:host(.sm-view-tabs){min-height:0}:host(.sm-nav-view){gap:.75rem;padding:.75rem 1rem}:host(.sm-nav-pane) ::ng-deep .sm-nav-view,:host(.sm-nav-slot) ::ng-deep .sm-nav-view{padding:0}:host(.sm-nav-caption) ::ng-deep .label{margin:0}:host(.sm-nav-caption) ::ng-deep .smart-form-widget-label{margin:0;font-size:1.35rem;font-weight:600;color:var(--color-text, #132033)}:host(.sm-nav-header){align-items:center;justify-content:space-between;gap:.5rem}:host(.sm-nav-section){gap:.5rem;flex:1 1 0;min-width:0;margin-top:.5rem}:host(.sm-nav-section-title) ::ng-deep .label{margin:0}:host(.sm-nav-section-title) ::ng-deep .smart-form-widget-label{margin:0;font-size:1.1rem;font-weight:600;color:var(--color-text, #132033)}:host(.sm-nav-list),:host(.sm-nav-pane){display:flex;flex-direction:column;flex:1 1 0;min-width:0}:host(.sm-nav-pane){margin-left:1rem;padding-left:1rem;border-left:1px solid var(--color-border, #e4eaf2)}:host(.sm-nav-pane.sm-slot-empty){flex:0 0 0;margin:0;padding:0;border:0}:host(.sm-nav-tree){flex:0 0 320px;align-self:stretch;min-height:60vh;min-width:0;padding:.5rem 0;background-color:var(--color-surface, #ffffff);border-right:1px solid var(--color-border, #e4eaf2)}:host(.sm-nav-slot){display:flex;flex-direction:column;flex:1 1 0;min-width:0;padding:.75rem 1rem}:host(.sm-nav-crumbs){padding-bottom:.25rem;border-bottom:1px solid var(--color-border, #e4eaf2)}\n"] }]
|
|
25821
|
+
args: [{ selector: 'smart-component-layout', imports: [ExpandableSectionComponent, SmartformComponent, SmartGridComponent, SmartMapComponent, SmartDiagramComponent, SmartFilterWidgetComponent, SmartTreeComponent, UiActionToolbarComponent], template: "@if (smartComponentLayout?.expandable) {\r\n @if (expandableSection) {\r\n <smart-expandable-section\r\n [data]=\"expandableSection\"\r\n ></smart-expandable-section>\r\n }\r\n} @else {\r\n @if (smartComponentLayout?.type === type().CONTAINER) {\r\n <!--\r\n Tracked by position, not by identity: the backend hands back new layout objects on every\r\n model refresh, so `track layout` recreated the whole subtree each time (NG0956). Position\r\n is sound here because a child rebuilds from its input in `setUp()` regardless of which\r\n component instance lands on which definition, and its own `deepEqual` guard then decides\r\n whether anything actually changed. `identifier` is not usable as a key \u2014 the platform's\r\n LayoutBuilder sets it conditionally, so a sibling list is overwhelmingly all-`undefined`\r\n (NG0955). See A20 / ADR-0007 decision 5.\r\n -->\r\n @for (layout of smartComponentLayout?.components; track $index) {\r\n <smart-component-layout\r\n [parentLayoutComponent]=\"this\"\r\n [smartComponentLayout]=\"layout\"\r\n [gridRow]=\"gridRow\"\r\n ></smart-component-layout>\r\n }\r\n }\r\n @if (smartForm) {\r\n <smartform [smartForm]=\"smartForm\"></smartform>\r\n }\r\n @if (smartGrid) {\r\n <smart-grid\r\n [smartGrid]=\"smartGrid\"\r\n [uuid]=\"uuid!\"\r\n [parentLayoutComponent]=\"this\"\r\n ></smart-grid>\r\n }\r\n @if (!!uuid && !!mapId) {\r\n <smart-map [uuid]=\"uuid\" [identifier]=\"mapId\"></smart-map>\r\n }\r\n @if (!!uuid && !!smartDiagramId) {\r\n <smart-diagram [uuid]=\"uuid\" [identifier]=\"smartDiagramId\"></smart-diagram>\r\n }\r\n @if (!!uuid && !!filterId) {\r\n <smart-filter-widget [uuid]=\"uuid\" [identifier]=\"filterId\"></smart-filter-widget>\r\n }\r\n @if (treeService) {\r\n <smart-tree [treeService]=\"treeService!\"></smart-tree>\r\n }\r\n @if (!!toolbarId) {\r\n <smart-ui-action-toolbar\r\n [id]=\"toolbarId\"\r\n [toolbarPropertes]=\"toolbarPropertes\"\r\n ></smart-ui-action-toolbar>\r\n }\r\n @if (embeddedSlotActive) {\r\n <ng-container #embeddedSlot></ng-container>\r\n }\r\n}\r\n\r\n\r\n", styles: [":host(.horizontal){display:flex;flex-direction:row}:host(.vertical){display:flex;flex-direction:column}:host(.horizontal) smart-component-layout{display:flex}:host(.horizontal) smartform{flex:1;display:flex}:host(.sm-view-tabs){min-height:0}:host(.sm-nav-view){gap:.75rem;padding:.75rem 1rem}:host(.sm-nav-pane) ::ng-deep .sm-nav-view,:host(.sm-nav-slot) ::ng-deep .sm-nav-view{padding:0}:host(.sm-nav-caption) ::ng-deep .label{margin:0}:host(.sm-nav-caption) ::ng-deep .smart-form-widget-label{margin:0;font-size:1.35rem;font-weight:600;color:var(--color-text, #132033)}:host(.sm-nav-header){align-items:center;justify-content:space-between;gap:.5rem}:host(.sm-nav-section){gap:.5rem;flex:1 1 0;min-width:0;margin-top:.5rem}:host(.sm-nav-section-title) ::ng-deep .label{margin:0}:host(.sm-nav-section-title) ::ng-deep .smart-form-widget-label{margin:0;font-size:1.1rem;font-weight:600;color:var(--color-text, #132033)}:host(.sm-nav-frame){position:relative;margin-top:.75rem;padding:1.75rem 1rem 1rem;border:1px none var(--color-border, #e4eaf2);border-radius:.5rem}:host(.sm-nav-frame-solid){border-style:solid}:host(.sm-nav-caption-n),:host(.sm-nav-caption-s){align-self:center}:host(.sm-nav-caption-ne),:host(.sm-nav-caption-se){align-self:flex-end}:host(.sm-nav-caption-sw),:host(.sm-nav-caption-s),:host(.sm-nav-caption-se){order:1}:host(.sm-nav-caption-e),:host(.sm-nav-caption-w){position:absolute;top:0;writing-mode:vertical-rl}:host(.sm-nav-caption-e){right:0}:host(.sm-nav-caption-w){left:0;transform:rotate(180deg)}:host:has(>smart-component-layout.sm-nav-caption-e){position:relative;padding-right:2.25rem}:host:has(>smart-component-layout.sm-nav-caption-w){position:relative;padding-left:2.25rem}:host(.sm-nav-frame)>smart-component-layout.sm-nav-caption-nw,:host(.sm-nav-frame)>smart-component-layout.sm-nav-caption-n,:host(.sm-nav-frame)>smart-component-layout.sm-nav-caption-ne,:host(.sm-nav-frame)>smart-component-layout.sm-nav-caption-e,:host(.sm-nav-frame)>smart-component-layout.sm-nav-caption-se,:host(.sm-nav-frame)>smart-component-layout.sm-nav-caption-s,:host(.sm-nav-frame)>smart-component-layout.sm-nav-caption-sw,:host(.sm-nav-frame)>smart-component-layout.sm-nav-caption-w{position:absolute;padding:0 .5rem;background-color:var(--color-surface, #ffffff)}:host(.sm-nav-frame)>smart-component-layout.sm-nav-caption-nw,:host(.sm-nav-frame)>smart-component-layout.sm-nav-caption-ne{top:0;transform:translateY(-50%)}:host(.sm-nav-frame)>smart-component-layout.sm-nav-caption-sw,:host(.sm-nav-frame)>smart-component-layout.sm-nav-caption-se{bottom:0;transform:translateY(50%)}:host(.sm-nav-frame)>smart-component-layout.sm-nav-caption-nw,:host(.sm-nav-frame)>smart-component-layout.sm-nav-caption-sw{left:.75rem}:host(.sm-nav-frame)>smart-component-layout.sm-nav-caption-ne,:host(.sm-nav-frame)>smart-component-layout.sm-nav-caption-se{right:.75rem}:host(.sm-nav-frame)>smart-component-layout.sm-nav-caption-n{top:0;left:50%;transform:translate(-50%,-50%)}:host(.sm-nav-frame)>smart-component-layout.sm-nav-caption-s{bottom:0;left:50%;transform:translate(-50%,50%)}:host(.sm-nav-frame)>smart-component-layout.sm-nav-caption-e{top:.75rem;right:0;padding:.5rem 0;transform:translate(50%)}:host(.sm-nav-frame)>smart-component-layout.sm-nav-caption-w{top:.75rem;left:0;padding:.5rem 0;transform:translate(-50%) rotate(180deg)}:host(.sm-nav-frame):has(>smart-component-layout.sm-nav-caption-e){padding-right:2rem}:host(.sm-nav-frame):has(>smart-component-layout.sm-nav-caption-w){padding-left:2rem}:host(.sm-nav-frame):has(>smart-component-layout.sm-nav-caption-sw),:host(.sm-nav-frame):has(>smart-component-layout.sm-nav-caption-s),:host(.sm-nav-frame):has(>smart-component-layout.sm-nav-caption-se){padding:1rem 1rem 1.75rem;margin-bottom:.75rem}:host(.sm-nav-frame):not(:has(>smart-component-layout:is(.sm-nav-caption-nw,.sm-nav-caption-n,.sm-nav-caption-ne,.sm-nav-caption-e,.sm-nav-caption-se,.sm-nav-caption-s,.sm-nav-caption-sw,.sm-nav-caption-w))){padding:1rem}:host(.sm-nav-list),:host(.sm-nav-pane){display:flex;flex-direction:column;flex:1 1 0;min-width:0}:host(.sm-nav-pane){margin-left:1rem;padding-left:1rem;border-left:1px solid var(--color-border, #e4eaf2)}:host(.sm-nav-pane.sm-slot-empty){flex:0 0 0;margin:0;padding:0;border:0}:host(.sm-nav-tree){flex:0 0 320px;align-self:stretch;min-height:60vh;min-width:0;padding:.5rem 0;background-color:var(--color-surface, #ffffff);border-right:1px solid var(--color-border, #e4eaf2)}:host(.sm-nav-slot){display:flex;flex-direction:column;flex:1 1 0;min-width:0;padding:.75rem 1rem}:host(.sm-nav-crumbs){padding-bottom:.25rem;border-bottom:1px solid var(--color-border, #e4eaf2)}\n"] }]
|
|
25823
25822
|
}], propDecorators: { smartComponentLayout: [{
|
|
25824
25823
|
type: Input
|
|
25825
25824
|
}], parentLayoutComponent: [{
|