ato-water-lib 0.0.89 → 0.0.90

Sign up to get free protection for your applications and to get access to all the features.
Files changed (44) hide show
  1. package/{esm2020 → esm2022}/lib/ato-water-lib.component.mjs +5 -5
  2. package/{esm2020 → esm2022}/lib/ato-water-lib.module.mjs +15 -15
  3. package/{esm2020 → esm2022}/lib/ato-water-lib.service.mjs +5 -5
  4. package/esm2022/lib/components/asset-flow/asset-flow.component.mjs +174 -0
  5. package/{esm2020 → esm2022}/lib/components/asset-params-view/asset-params-view.component.mjs +7 -9
  6. package/esm2022/lib/components/flow-diagram-lib/flow-diagram-lib.component.mjs +55 -0
  7. package/esm2022/lib/directive/ato-loading.directive.mjs +59 -0
  8. package/esm2022/lib/directive/ng-var.directive.mjs +33 -0
  9. package/esm2022/lib/models/default-gojs-editor.model.mjs +3582 -0
  10. package/esm2022/lib/models/gojs-data.model.mjs +10 -0
  11. package/esm2022/lib/models/gojs-editor.model.mjs +1799 -0
  12. package/esm2022/lib/services/utils/utils.service.mjs +133 -0
  13. package/{fesm2020 → fesm2022}/ato-water-lib.mjs +193 -168
  14. package/fesm2022/ato-water-lib.mjs.map +1 -0
  15. package/lib/components/asset-flow/asset-flow.component.d.ts +1 -1
  16. package/lib/components/asset-params-view/asset-params-view.component.d.ts +1 -1
  17. package/lib/components/flow-diagram-lib/flow-diagram-lib.component.d.ts +1 -1
  18. package/lib/constants/components-group-const.d.ts +1 -1
  19. package/lib/directive/ato-loading.directive.d.ts +1 -1
  20. package/lib/directive/ng-var.directive.d.ts +1 -1
  21. package/lib/models/default-gojs-editor.model.d.ts +2 -2
  22. package/lib/models/gojs-editor.model.d.ts +4 -4
  23. package/package.json +7 -13
  24. package/esm2020/lib/components/asset-flow/asset-flow.component.mjs +0 -165
  25. package/esm2020/lib/components/flow-diagram-lib/flow-diagram-lib.component.mjs +0 -54
  26. package/esm2020/lib/directive/ato-loading.directive.mjs +0 -55
  27. package/esm2020/lib/directive/ng-var.directive.mjs +0 -31
  28. package/esm2020/lib/models/default-gojs-editor.model.mjs +0 -3573
  29. package/esm2020/lib/models/gojs-data.model.mjs +0 -6
  30. package/esm2020/lib/models/gojs-editor.model.mjs +0 -1797
  31. package/esm2020/lib/services/utils/utils.service.mjs +0 -133
  32. package/fesm2015/ato-water-lib.mjs +0 -9055
  33. package/fesm2015/ato-water-lib.mjs.map +0 -1
  34. package/fesm2020/ato-water-lib.mjs.map +0 -1
  35. /package/{esm2020 → esm2022}/ato-water-lib.mjs +0 -0
  36. /package/{esm2020 → esm2022}/lib/constants/applicable-prefixes-const.mjs +0 -0
  37. /package/{esm2020 → esm2022}/lib/constants/base64.const.mjs +0 -0
  38. /package/{esm2020 → esm2022}/lib/constants/components-group-const.mjs +0 -0
  39. /package/{esm2020 → esm2022}/lib/constants/icon-base64.const.mjs +0 -0
  40. /package/{esm2020 → esm2022}/lib/constants/key.const.mjs +0 -0
  41. /package/{esm2020 → esm2022}/lib/constants/plant.constant.mjs +0 -0
  42. /package/{esm2020 → esm2022}/lib/constants/value.const.mjs +0 -0
  43. /package/{esm2020 → esm2022}/lib/models/ato-asset-flow.model.mjs +0 -0
  44. /package/{esm2020 → esm2022}/public-api.mjs +0 -0
@@ -1,14 +1,14 @@
1
1
  import { Component } from '@angular/core';
2
2
  import * as i0 from "@angular/core";
3
3
  export class AtoWaterLibComponent {
4
- }
5
- AtoWaterLibComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: AtoWaterLibComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
6
- AtoWaterLibComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: AtoWaterLibComponent, selector: "lib-ato-water-lib", ngImport: i0, template: `
4
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: AtoWaterLibComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
5
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.7", type: AtoWaterLibComponent, selector: "lib-ato-water-lib", ngImport: i0, template: `
7
6
  <p>
8
7
  ato-water-lib works!
9
8
  </p>
10
9
  `, isInline: true });
11
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: AtoWaterLibComponent, decorators: [{
10
+ }
11
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: AtoWaterLibComponent, decorators: [{
12
12
  type: Component,
13
13
  args: [{ selector: 'lib-ato-water-lib', template: `
14
14
  <p>
@@ -16,4 +16,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
16
16
  </p>
17
17
  ` }]
18
18
  }] });
19
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXRvLXdhdGVyLWxpYi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9hdG8td2F0ZXItbGliL3NyYy9saWIvYXRvLXdhdGVyLWxpYi5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFZMUMsTUFBTSxPQUFPLG9CQUFvQjs7a0hBQXBCLG9CQUFvQjtzR0FBcEIsb0JBQW9CLHlEQVJyQjs7OztHQUlUOzRGQUlVLG9CQUFvQjtrQkFWaEMsU0FBUzsrQkFDRSxtQkFBbUIsWUFDbkI7Ozs7R0FJVCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdsaWItYXRvLXdhdGVyLWxpYicsXG4gIHRlbXBsYXRlOiBgXG4gICAgPHA+XG4gICAgICBhdG8td2F0ZXItbGliIHdvcmtzIVxuICAgIDwvcD5cbiAgYCxcbiAgc3R5bGVzOiBbXG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgQXRvV2F0ZXJMaWJDb21wb25lbnQge1xuXG59XG4iXX0=
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXRvLXdhdGVyLWxpYi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9hdG8td2F0ZXItbGliL3NyYy9saWIvYXRvLXdhdGVyLWxpYi5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFZMUMsTUFBTSxPQUFPLG9CQUFvQjt1R0FBcEIsb0JBQW9COzJGQUFwQixvQkFBb0IseURBUnJCOzs7O0dBSVQ7OzJGQUlVLG9CQUFvQjtrQkFWaEMsU0FBUzsrQkFDRSxtQkFBbUIsWUFDbkI7Ozs7R0FJVCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdsaWItYXRvLXdhdGVyLWxpYicsXG4gIHRlbXBsYXRlOiBgXG4gICAgPHA+XG4gICAgICBhdG8td2F0ZXItbGliIHdvcmtzIVxuICAgIDwvcD5cbiAgYCxcbiAgc3R5bGVzOiBbXG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgQXRvV2F0ZXJMaWJDb21wb25lbnQge1xuXG59XG4iXX0=
@@ -8,21 +8,21 @@ import { AtoAssetParamsViewComponent } from './components/asset-params-view/asse
8
8
  import { AtoNgVarDirective } from './directive/ng-var.directive';
9
9
  import * as i0 from "@angular/core";
10
10
  export class AtoWaterLibModule {
11
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: AtoWaterLibModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
12
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.7", ngImport: i0, type: AtoWaterLibModule, declarations: [AtoWaterLibComponent,
13
+ AtoFlowDiagramLibComponent,
14
+ AssetFlowComponent,
15
+ AtoLoadingDirective,
16
+ AtoAssetParamsViewComponent,
17
+ AtoNgVarDirective], imports: [CommonModule], exports: [AtoWaterLibComponent,
18
+ AtoFlowDiagramLibComponent,
19
+ AssetFlowComponent,
20
+ AtoLoadingDirective,
21
+ AtoAssetParamsViewComponent,
22
+ AtoNgVarDirective] });
23
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: AtoWaterLibModule, imports: [CommonModule] });
11
24
  }
12
- AtoWaterLibModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: AtoWaterLibModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
13
- AtoWaterLibModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.10", ngImport: i0, type: AtoWaterLibModule, declarations: [AtoWaterLibComponent,
14
- AtoFlowDiagramLibComponent,
15
- AssetFlowComponent,
16
- AtoLoadingDirective,
17
- AtoAssetParamsViewComponent,
18
- AtoNgVarDirective], imports: [CommonModule], exports: [AtoWaterLibComponent,
19
- AtoFlowDiagramLibComponent,
20
- AssetFlowComponent,
21
- AtoLoadingDirective,
22
- AtoAssetParamsViewComponent,
23
- AtoNgVarDirective] });
24
- AtoWaterLibModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: AtoWaterLibModule, imports: [CommonModule] });
25
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: AtoWaterLibModule, decorators: [{
25
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: AtoWaterLibModule, decorators: [{
26
26
  type: NgModule,
27
27
  args: [{
28
28
  declarations: [
@@ -46,4 +46,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
46
46
  ]
47
47
  }]
48
48
  }] });
49
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXRvLXdhdGVyLWxpYi5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9hdG8td2F0ZXItbGliL3NyYy9saWIvYXRvLXdhdGVyLWxpYi5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNqRSxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSwwREFBMEQsQ0FBQztBQUN0RyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQztBQUNsRixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDeEUsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sNERBQTRELENBQUM7QUFDekcsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sOEJBQThCLENBQUM7O0FBdUJqRSxNQUFNLE9BQU8saUJBQWlCOzsrR0FBakIsaUJBQWlCO2dIQUFqQixpQkFBaUIsaUJBbkIxQixvQkFBb0I7UUFDcEIsMEJBQTBCO1FBQzFCLGtCQUFrQjtRQUNsQixtQkFBbUI7UUFDbkIsMkJBQTJCO1FBQzNCLGlCQUFpQixhQUdqQixZQUFZLGFBR1osb0JBQW9CO1FBQ3BCLDBCQUEwQjtRQUMxQixrQkFBa0I7UUFDbEIsbUJBQW1CO1FBQ25CLDJCQUEyQjtRQUMzQixpQkFBaUI7Z0hBR1IsaUJBQWlCLFlBWDFCLFlBQVk7NEZBV0gsaUJBQWlCO2tCQXJCN0IsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUU7d0JBQ1osb0JBQW9CO3dCQUNwQiwwQkFBMEI7d0JBQzFCLGtCQUFrQjt3QkFDbEIsbUJBQW1CO3dCQUNuQiwyQkFBMkI7d0JBQzNCLGlCQUFpQjtxQkFDbEI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLFlBQVk7cUJBQ2I7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLG9CQUFvQjt3QkFDcEIsMEJBQTBCO3dCQUMxQixrQkFBa0I7d0JBQ2xCLG1CQUFtQjt3QkFDbkIsMkJBQTJCO3dCQUMzQixpQkFBaUI7cUJBQ2xCO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEF0b1dhdGVyTGliQ29tcG9uZW50IH0gZnJvbSAnLi9hdG8td2F0ZXItbGliLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBBdG9GbG93RGlhZ3JhbUxpYkNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9mbG93LWRpYWdyYW0tbGliL2Zsb3ctZGlhZ3JhbS1saWIuY29tcG9uZW50JztcbmltcG9ydCB7IEFzc2V0Rmxvd0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9hc3NldC1mbG93L2Fzc2V0LWZsb3cuY29tcG9uZW50JztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBBdG9Mb2FkaW5nRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmUvYXRvLWxvYWRpbmcuZGlyZWN0aXZlJztcbmltcG9ydCB7IEF0b0Fzc2V0UGFyYW1zVmlld0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9hc3NldC1wYXJhbXMtdmlldy9hc3NldC1wYXJhbXMtdmlldy5jb21wb25lbnQnO1xuaW1wb3J0IHsgQXRvTmdWYXJEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZS9uZy12YXIuZGlyZWN0aXZlJztcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbXG4gICAgQXRvV2F0ZXJMaWJDb21wb25lbnQsXG4gICAgQXRvRmxvd0RpYWdyYW1MaWJDb21wb25lbnQsXG4gICAgQXNzZXRGbG93Q29tcG9uZW50LFxuICAgIEF0b0xvYWRpbmdEaXJlY3RpdmUsXG4gICAgQXRvQXNzZXRQYXJhbXNWaWV3Q29tcG9uZW50LFxuICAgIEF0b05nVmFyRGlyZWN0aXZlLFxuICBdLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICBdLFxuICBleHBvcnRzOiBbXG4gICAgQXRvV2F0ZXJMaWJDb21wb25lbnQsXG4gICAgQXRvRmxvd0RpYWdyYW1MaWJDb21wb25lbnQsXG4gICAgQXNzZXRGbG93Q29tcG9uZW50LFxuICAgIEF0b0xvYWRpbmdEaXJlY3RpdmUsXG4gICAgQXRvQXNzZXRQYXJhbXNWaWV3Q29tcG9uZW50LFxuICAgIEF0b05nVmFyRGlyZWN0aXZlLFxuICBdXG59KVxuZXhwb3J0IGNsYXNzIEF0b1dhdGVyTGliTW9kdWxlIHsgfVxuIl19
49
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXRvLXdhdGVyLWxpYi5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9hdG8td2F0ZXItbGliL3NyYy9saWIvYXRvLXdhdGVyLWxpYi5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNqRSxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSwwREFBMEQsQ0FBQztBQUN0RyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQztBQUNsRixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDeEUsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sNERBQTRELENBQUM7QUFDekcsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sOEJBQThCLENBQUM7O0FBdUJqRSxNQUFNLE9BQU8saUJBQWlCO3VHQUFqQixpQkFBaUI7d0dBQWpCLGlCQUFpQixpQkFuQjFCLG9CQUFvQjtZQUNwQiwwQkFBMEI7WUFDMUIsa0JBQWtCO1lBQ2xCLG1CQUFtQjtZQUNuQiwyQkFBMkI7WUFDM0IsaUJBQWlCLGFBR2pCLFlBQVksYUFHWixvQkFBb0I7WUFDcEIsMEJBQTBCO1lBQzFCLGtCQUFrQjtZQUNsQixtQkFBbUI7WUFDbkIsMkJBQTJCO1lBQzNCLGlCQUFpQjt3R0FHUixpQkFBaUIsWUFYMUIsWUFBWTs7MkZBV0gsaUJBQWlCO2tCQXJCN0IsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUU7d0JBQ1osb0JBQW9CO3dCQUNwQiwwQkFBMEI7d0JBQzFCLGtCQUFrQjt3QkFDbEIsbUJBQW1CO3dCQUNuQiwyQkFBMkI7d0JBQzNCLGlCQUFpQjtxQkFDbEI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLFlBQVk7cUJBQ2I7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLG9CQUFvQjt3QkFDcEIsMEJBQTBCO3dCQUMxQixrQkFBa0I7d0JBQ2xCLG1CQUFtQjt3QkFDbkIsMkJBQTJCO3dCQUMzQixpQkFBaUI7cUJBQ2xCO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEF0b1dhdGVyTGliQ29tcG9uZW50IH0gZnJvbSAnLi9hdG8td2F0ZXItbGliLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBBdG9GbG93RGlhZ3JhbUxpYkNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9mbG93LWRpYWdyYW0tbGliL2Zsb3ctZGlhZ3JhbS1saWIuY29tcG9uZW50JztcbmltcG9ydCB7IEFzc2V0Rmxvd0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9hc3NldC1mbG93L2Fzc2V0LWZsb3cuY29tcG9uZW50JztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBBdG9Mb2FkaW5nRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmUvYXRvLWxvYWRpbmcuZGlyZWN0aXZlJztcbmltcG9ydCB7IEF0b0Fzc2V0UGFyYW1zVmlld0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9hc3NldC1wYXJhbXMtdmlldy9hc3NldC1wYXJhbXMtdmlldy5jb21wb25lbnQnO1xuaW1wb3J0IHsgQXRvTmdWYXJEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZS9uZy12YXIuZGlyZWN0aXZlJztcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbXG4gICAgQXRvV2F0ZXJMaWJDb21wb25lbnQsXG4gICAgQXRvRmxvd0RpYWdyYW1MaWJDb21wb25lbnQsXG4gICAgQXNzZXRGbG93Q29tcG9uZW50LFxuICAgIEF0b0xvYWRpbmdEaXJlY3RpdmUsXG4gICAgQXRvQXNzZXRQYXJhbXNWaWV3Q29tcG9uZW50LFxuICAgIEF0b05nVmFyRGlyZWN0aXZlLFxuICBdLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICBdLFxuICBleHBvcnRzOiBbXG4gICAgQXRvV2F0ZXJMaWJDb21wb25lbnQsXG4gICAgQXRvRmxvd0RpYWdyYW1MaWJDb21wb25lbnQsXG4gICAgQXNzZXRGbG93Q29tcG9uZW50LFxuICAgIEF0b0xvYWRpbmdEaXJlY3RpdmUsXG4gICAgQXRvQXNzZXRQYXJhbXNWaWV3Q29tcG9uZW50LFxuICAgIEF0b05nVmFyRGlyZWN0aXZlLFxuICBdXG59KVxuZXhwb3J0IGNsYXNzIEF0b1dhdGVyTGliTW9kdWxlIHsgfVxuIl19
@@ -2,13 +2,13 @@ import { Injectable } from '@angular/core';
2
2
  import * as i0 from "@angular/core";
3
3
  export class AtoWaterLibService {
4
4
  constructor() { }
5
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: AtoWaterLibService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
6
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: AtoWaterLibService, providedIn: 'root' });
5
7
  }
6
- AtoWaterLibService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: AtoWaterLibService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
7
- AtoWaterLibService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: AtoWaterLibService, providedIn: 'root' });
8
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: AtoWaterLibService, decorators: [{
8
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: AtoWaterLibService, decorators: [{
9
9
  type: Injectable,
10
10
  args: [{
11
11
  providedIn: 'root'
12
12
  }]
13
- }], ctorParameters: function () { return []; } });
14
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXRvLXdhdGVyLWxpYi5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvYXRvLXdhdGVyLWxpYi9zcmMvbGliL2F0by13YXRlci1saWIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUszQyxNQUFNLE9BQU8sa0JBQWtCO0lBRTdCLGdCQUFnQixDQUFDOztnSEFGTixrQkFBa0I7b0hBQWxCLGtCQUFrQixjQUZqQixNQUFNOzRGQUVQLGtCQUFrQjtrQkFIOUIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIEF0b1dhdGVyTGliU2VydmljZSB7XG5cbiAgY29uc3RydWN0b3IoKSB7IH1cbn1cbiJdfQ==
13
+ }], ctorParameters: () => [] });
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXRvLXdhdGVyLWxpYi5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvYXRvLXdhdGVyLWxpYi9zcmMvbGliL2F0by13YXRlci1saWIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUszQyxNQUFNLE9BQU8sa0JBQWtCO0lBRTdCLGdCQUFnQixDQUFDO3VHQUZOLGtCQUFrQjsyR0FBbEIsa0JBQWtCLGNBRmpCLE1BQU07OzJGQUVQLGtCQUFrQjtrQkFIOUIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIEF0b1dhdGVyTGliU2VydmljZSB7XG5cbiAgY29uc3RydWN0b3IoKSB7IH1cbn1cbiJdfQ==
@@ -0,0 +1,174 @@
1
+ import { Component, EventEmitter, HostListener, Input, Output, ViewChild, } from '@angular/core';
2
+ import * as go from 'gojs';
3
+ import _ from 'lodash';
4
+ import { AtoGoJSBase64 } from '../../constants/base64.const';
5
+ import { ATO_COMPONENTS_GROUP_DATA, } from '../../constants/components-group-const';
6
+ import { AtoGojsEditorModel } from '../../models/gojs-editor.model';
7
+ import { AtoAssetParamsViewComponent } from '../asset-params-view/asset-params-view.component';
8
+ import { AtoFlowDiagramLibComponent } from '../flow-diagram-lib/flow-diagram-lib.component';
9
+ import * as i0 from "@angular/core";
10
+ import * as i1 from "@angular/common";
11
+ import * as i2 from "../flow-diagram-lib/flow-diagram-lib.component";
12
+ import * as i3 from "../../directive/ato-loading.directive";
13
+ import * as i4 from "../asset-params-view/asset-params-view.component";
14
+ export class AssetFlowComponent {
15
+ assetLayer;
16
+ gjFlowDiagramTemp;
17
+ assetParamsViewTemp;
18
+ selectedComponent;
19
+ systemType;
20
+ onClickParamOfTableEvent = new EventEmitter();
21
+ isUseBase64 = false;
22
+ isFrom;
23
+ $ = go.GraphObject.make;
24
+ options = {
25
+ layout: this.$(go.LayeredDigraphLayout, {
26
+ // direction: 0,
27
+ }),
28
+ // isReadOnly: true,
29
+ };
30
+ _flowData;
31
+ set flowData(v) {
32
+ this._flowData = v;
33
+ this.updateDataTableAssetParams({ ...v, assetLayer: this.assetLayer });
34
+ }
35
+ get flowData() {
36
+ return this._flowData;
37
+ }
38
+ // Reponsive
39
+ dataTableAssetParams;
40
+ // @Input() isResponsiveView = false;
41
+ get isResponsiveView() {
42
+ return window.innerWidth < 1024;
43
+ }
44
+ getFlowDataCallBack;
45
+ timeoutResizeWindow;
46
+ onResize(event) {
47
+ // Now only Support Cooling Tower Responsive
48
+ if (this.timeoutResizeWindow) {
49
+ clearTimeout(this.timeoutResizeWindow);
50
+ }
51
+ this.timeoutResizeWindow = setTimeout(() => {
52
+ this.updateLocationReponsive();
53
+ }, 1000);
54
+ }
55
+ updateLocationReponsive() {
56
+ if (!this.flowData?.nodeDataArray) {
57
+ this.flowData = AssetFlowComponent.getDefaultFlowData({
58
+ systemType: this.systemType,
59
+ isUseBase64: this.isUseBase64,
60
+ assetLayer: this.assetLayer,
61
+ });
62
+ }
63
+ _.forEach(this.flowData?.nodeDataArray, (node) => {
64
+ node = _.merge(node, node[`extendedData${this.isResponsiveView ? 'Responsive' : ''}`]);
65
+ });
66
+ this.setFlowData(_.cloneDeep(this.flowData));
67
+ }
68
+ ngOnInit() {
69
+ this.updateLocationReponsive();
70
+ }
71
+ onClickParamOfTable($event) {
72
+ this.onClickParamOfTableEvent.emit($event);
73
+ }
74
+ static getDefaultFlowData(defaultData) {
75
+ const flowData = {
76
+ ...defaultData,
77
+ ..._.cloneDeep(ATO_COMPONENTS_GROUP_DATA)[defaultData?.systemType],
78
+ linkFromPortIdProperty: 'fromPort',
79
+ linkToPortIdProperty: 'toPort',
80
+ };
81
+ const isResponsiveView = window.innerWidth < 1024;
82
+ // Reponsive
83
+ _.forEach(flowData?.nodeDataArray, (node) => {
84
+ const propertyNameExtend = `extendedData${defaultData.isFrom && node?.isFrom ? `isFrom${defaultData.isFrom}` : ''}${isResponsiveView ? 'Responsive' : ''}`;
85
+ node = _.merge(node, node[propertyNameExtend]);
86
+ if (node?.assetLayers) {
87
+ node.visible =
88
+ node?.assetLayers === defaultData?.assetLayer &&
89
+ node[propertyNameExtend]?.visible;
90
+ }
91
+ if (defaultData.isFrom && node?.dataTable) {
92
+ _.forEach(node?.dataTable, item => {
93
+ if (item?.isFrom) {
94
+ item.visible = item?.isFrom === defaultData.isFrom;
95
+ }
96
+ item = _.merge(item, item[`extendedDataIsFrom${defaultData.isFrom}`]);
97
+ });
98
+ }
99
+ });
100
+ // assetLayer
101
+ // flowData.nodeDataArray = _.filter(flowData.nodeDataArray, x => !x?.assetLayers || (x?.assetLayers && x?.assetLayers === (defaultData?.assetLayer ?? ATO_ASSET_LAYERS.FLOW)))
102
+ if (defaultData?.isUseBase64) {
103
+ const itemImageTemp = flowData?.nodeDataArray?.find((x) => x?.type === 'Image Template');
104
+ if (itemImageTemp) {
105
+ itemImageTemp.source = AtoGoJSBase64[defaultData?.systemType];
106
+ }
107
+ }
108
+ return flowData;
109
+ }
110
+ setFlowData(data) {
111
+ _.forEach(data.nodeDataArray, (node) => {
112
+ const propertyNameExtend = `extendedData${data.isFrom && node?.isFrom ? `isFrom${data.isFrom}` : ''}${this.isResponsiveView ? 'Responsive' : ''}`;
113
+ node = _.merge(node, node[propertyNameExtend]);
114
+ if (node?.assetLayers) {
115
+ node.visible =
116
+ node?.assetLayers === data.assetLayer &&
117
+ node[propertyNameExtend]
118
+ ?.visible;
119
+ }
120
+ if (data.isFrom && node?.dataTable) {
121
+ _.forEach(node?.dataTable, item => {
122
+ if (item?.isFrom) {
123
+ item.visible = item?.isFrom === data.isFrom;
124
+ }
125
+ item = _.merge(item, item[`extendedDataIsFrom${data.isFrom}`]);
126
+ });
127
+ }
128
+ });
129
+ this.flowData = {
130
+ ...data,
131
+ };
132
+ this.updateDataTableAssetParams(data);
133
+ }
134
+ updateDataTableAssetParams(data) {
135
+ this.dataTableAssetParams = _.forEach(this.flowData?.nodeDataArray?.filter((e) => e?.type === AtoGojsEditorModel.ENUM_TEMPLATES.PARAM_TABLE &&
136
+ (data?.assetLayer ? (e?.assetLayers === data?.assetLayer) : true)), (x) => {
137
+ if (!data?.isRefresh) {
138
+ x.isCollapsed = this.assetParamsViewTemp?.data?.find((y) => y?.key === x?.key)?.isCollapsed;
139
+ }
140
+ });
141
+ }
142
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: AssetFlowComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
143
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.7", type: AssetFlowComponent, selector: "ato-asset-flow", inputs: { assetLayer: "assetLayer", selectedComponent: "selectedComponent", systemType: "systemType", isUseBase64: "isUseBase64", isFrom: "isFrom", flowData: "flowData", getFlowDataCallBack: "getFlowDataCallBack" }, outputs: { onClickParamOfTableEvent: "onClickParamOfTableEvent" }, host: { listeners: { "window:resize": "onResize($event)" } }, viewQueries: [{ propertyName: "gjFlowDiagramTemp", first: true, predicate: AtoFlowDiagramLibComponent, descendants: true }, { propertyName: "assetParamsViewTemp", first: true, predicate: AtoAssetParamsViewComponent, descendants: true }], ngImport: i0, template: "<div class=\"h-100 d-flex flex-column flex-gap-3 flex-grow-1 overflow-auto px-3 pb-3\">\n <div class=\"h-100 d-flex flex-column\" atoLoading [appLoading]=\"flowData === null\">\n <ato-flow-diagram-lib\n *ngIf=\"flowData !== null\"\n #gjFlowDiagramTemp\n [data]=\"flowData\"\n [initialOptions]=\"options\"\n (onClikParamOfTable)=\"onClickParamOfTable($event)\"\n [class]=\"!!isResponsiveView ? 'diagram-responsive-view' : 'flex-grow-1'\"\n ></ato-flow-diagram-lib>\n <div class=\"mt-2\" *ngIf=\"isResponsiveView\">\n <ato-asset-params-view\n #assetParamsViewTemp\n [data]=\"dataTableAssetParams\"\n [isEditView]=\"true\"\n (clickParamTableRow)=\"onClickParamOfTable($event)\"\n ></ato-asset-params-view>\n </div>\n </div>\n</div>\n\n", styles: [".diagram-responsive-view{height:30vh;min-height:30vh}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.AtoFlowDiagramLibComponent, selector: "ato-flow-diagram-lib", inputs: ["data", "isLoading"] }, { kind: "directive", type: i3.AtoLoadingDirective, selector: "[atoLoading]", inputs: ["appLoading"] }, { kind: "component", type: i4.AtoAssetParamsViewComponent, selector: "ato-asset-params-view", inputs: ["isEditView", "data"], outputs: ["clickParamTableRow"] }] });
144
+ }
145
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: AssetFlowComponent, decorators: [{
146
+ type: Component,
147
+ args: [{ selector: 'ato-asset-flow', template: "<div class=\"h-100 d-flex flex-column flex-gap-3 flex-grow-1 overflow-auto px-3 pb-3\">\n <div class=\"h-100 d-flex flex-column\" atoLoading [appLoading]=\"flowData === null\">\n <ato-flow-diagram-lib\n *ngIf=\"flowData !== null\"\n #gjFlowDiagramTemp\n [data]=\"flowData\"\n [initialOptions]=\"options\"\n (onClikParamOfTable)=\"onClickParamOfTable($event)\"\n [class]=\"!!isResponsiveView ? 'diagram-responsive-view' : 'flex-grow-1'\"\n ></ato-flow-diagram-lib>\n <div class=\"mt-2\" *ngIf=\"isResponsiveView\">\n <ato-asset-params-view\n #assetParamsViewTemp\n [data]=\"dataTableAssetParams\"\n [isEditView]=\"true\"\n (clickParamTableRow)=\"onClickParamOfTable($event)\"\n ></ato-asset-params-view>\n </div>\n </div>\n</div>\n\n", styles: [".diagram-responsive-view{height:30vh;min-height:30vh}\n"] }]
148
+ }], propDecorators: { assetLayer: [{
149
+ type: Input
150
+ }], gjFlowDiagramTemp: [{
151
+ type: ViewChild,
152
+ args: [AtoFlowDiagramLibComponent]
153
+ }], assetParamsViewTemp: [{
154
+ type: ViewChild,
155
+ args: [AtoAssetParamsViewComponent]
156
+ }], selectedComponent: [{
157
+ type: Input
158
+ }], systemType: [{
159
+ type: Input
160
+ }], onClickParamOfTableEvent: [{
161
+ type: Output
162
+ }], isUseBase64: [{
163
+ type: Input
164
+ }], isFrom: [{
165
+ type: Input
166
+ }], flowData: [{
167
+ type: Input
168
+ }], getFlowDataCallBack: [{
169
+ type: Input
170
+ }], onResize: [{
171
+ type: HostListener,
172
+ args: ['window:resize', ['$event']]
173
+ }] } });
174
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNzZXQtZmxvdy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hdG8td2F0ZXItbGliL3NyYy9saWIvY29tcG9uZW50cy9hc3NldC1mbG93L2Fzc2V0LWZsb3cuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYXRvLXdhdGVyLWxpYi9zcmMvbGliL2NvbXBvbmVudHMvYXNzZXQtZmxvdy9hc3NldC1mbG93LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsWUFBWSxFQUNaLFlBQVksRUFDWixLQUFLLEVBRUwsTUFBTSxFQUNOLFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEtBQUssRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMzQixPQUFPLENBQUMsTUFBTSxRQUFRLENBQUM7QUFDdkIsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQzdELE9BQU8sRUFFTCx5QkFBeUIsR0FDMUIsTUFBTSx3Q0FBd0MsQ0FBQztBQUdoRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNwRSxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxrREFBa0QsQ0FBQztBQUMvRixPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQzs7Ozs7O0FBTzVGLE1BQU0sT0FBTyxrQkFBa0I7SUFDcEIsVUFBVSxDQUFtQjtJQUV0QyxpQkFBaUIsQ0FBNkI7SUFFOUMsbUJBQW1CLENBQThCO0lBQ3hDLGlCQUFpQixDQUFNO0lBQ3ZCLFVBQVUsQ0FBZ0M7SUFDekMsd0JBQXdCLEdBQ2hDLElBQUksWUFBWSxFQUFPLENBQUM7SUFDakIsV0FBVyxHQUFHLEtBQUssQ0FBQztJQUNwQixNQUFNLENBQVM7SUFDeEIsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxX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RkFFMUIsMkJBQTJCLGdEQy9CeEMsZ3pCQXFCQTs7MkZETWEsa0JBQWtCO2tCQUw5QixTQUFTOytCQUNFLGdCQUFnQjs4QkFLakIsVUFBVTtzQkFBbEIsS0FBSztnQkFFTixpQkFBaUI7c0JBRGhCLFNBQVM7dUJBQUMsMEJBQTBCO2dCQUdyQyxtQkFBbUI7c0JBRGxCLFNBQVM7dUJBQUMsMkJBQTJCO2dCQUU3QixpQkFBaUI7c0JBQXpCLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFDSSx3QkFBd0I7c0JBQWpDLE1BQU07Z0JBRUUsV0FBVztzQkFBbkIsS0FBSztnQkFDRyxNQUFNO3NCQUFkLEtBQUs7Z0JBVU8sUUFBUTtzQkFBcEIsS0FBSztnQkFjRyxtQkFBbUI7c0JBQTNCLEtBQUs7Z0JBSU4sUUFBUTtzQkFEUCxZQUFZO3VCQUFDLGVBQWUsRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgRXZlbnRFbWl0dGVyLFxuICBIb3N0TGlzdGVuZXIsXG4gIElucHV0LFxuICBPbkluaXQsXG4gIE91dHB1dCxcbiAgVmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCAqIGFzIGdvIGZyb20gJ2dvanMnO1xuaW1wb3J0IF8gZnJvbSAnbG9kYXNoJztcbmltcG9ydCB7IEF0b0dvSlNCYXNlNjQgfSBmcm9tICcuLi8uLi9jb25zdGFudHMvYmFzZTY0LmNvbnN0JztcbmltcG9ydCB7XG4gIEFUT19BU1NFVF9MQVlFUlMsXG4gIEFUT19DT01QT05FTlRTX0dST1VQX0RBVEEsXG59IGZyb20gJy4uLy4uL2NvbnN0YW50cy9jb21wb25lbnRzLWdyb3VwLWNvbnN0JztcbmltcG9ydCB7IEF0b0RlZmF1bHRGbG93RGF0YSB9IGZyb20gJy4uLy4uL21vZGVscy9hdG8tYXNzZXQtZmxvdy5tb2RlbCc7XG5pbXBvcnQgeyBBdG9Hb0pTRGF0YSB9IGZyb20gJy4uLy4uL21vZGVscy9nb2pzLWRhdGEubW9kZWwnO1xuaW1wb3J0IHsgQXRvR29qc0VkaXRvck1vZGVsIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2dvanMtZWRpdG9yLm1vZGVsJztcbmltcG9ydCB7IEF0b0Fzc2V0UGFyYW1zVmlld0NvbXBvbmVudCB9IGZyb20gJy4uL2Fzc2V0LXBhcmFtcy12aWV3L2Fzc2V0LXBhcmFtcy12aWV3LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBBdG9GbG93RGlhZ3JhbUxpYkNvbXBvbmVudCB9IGZyb20gJy4uL2Zsb3ctZGlhZ3JhbS1saWIvZmxvdy1kaWFncmFtLWxpYi5jb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhdG8tYXNzZXQtZmxvdycsXG4gIHRlbXBsYXRlVXJsOiAnLi9hc3NldC1mbG93LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vYXNzZXQtZmxvdy5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBBc3NldEZsb3dDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBASW5wdXQoKSBhc3NldExheWVyOiBBVE9fQVNTRVRfTEFZRVJTO1xuICBAVmlld0NoaWxkKEF0b0Zsb3dEaWFncmFtTGliQ29tcG9uZW50KVxuICBnakZsb3dEaWFncmFtVGVtcDogQXRvRmxvd0RpYWdyYW1MaWJDb21wb25lbnQ7XG4gIEBWaWV3Q2hpbGQoQXRvQXNzZXRQYXJhbXNWaWV3Q29tcG9uZW50KVxuICBhc3NldFBhcmFtc1ZpZXdUZW1wOiBBdG9Bc3NldFBhcmFtc1ZpZXdDb21wb25lbnQ7XG4gIEBJbnB1dCgpIHNlbGVjdGVkQ29tcG9uZW50OiBhbnk7XG4gIEBJbnB1dCgpIHN5c3RlbVR5cGU6IEF0b0dvanNFZGl0b3JNb2RlbC5FTlVNX1RZUEVTO1xuICBAT3V0cHV0KCkgb25DbGlja1BhcmFtT2ZUYWJsZUV2ZW50OiBFdmVudEVtaXR0ZXI8YW55PiA9XG4gICAgbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG4gIEBJbnB1dCgpIGlzVXNlQmFzZTY0ID0gZmFsc2U7XG4gIEBJbnB1dCgpIGlzRnJvbTogc3RyaW5nO1xuICAkID0gZ28uR3JhcGhPYmplY3QubWFrZTtcbiAgb3B0aW9ucyA9IHtcbiAgICBsYXlvdXQ6IHRoaXMuJChnby5MYXllcmVkRGlncmFwaExheW91dCwge1xuICAgICAgLy8gZGlyZWN0aW9uOiAwLFxuICAgIH0pLFxuICAgIC8vIGlzUmVhZE9ubHk6IHRydWUsXG4gIH07XG5cbiAgcHJpdmF0ZSBfZmxvd0RhdGE6IGFueTtcbiAgQElucHV0KCkgc2V0IGZsb3dEYXRhKHY6IEF0b0dvSlNEYXRhKSB7XG4gICAgdGhpcy5fZmxvd0RhdGEgPSB2O1xuICAgIHRoaXMudXBkYXRlRGF0YVRhYmxlQXNzZXRQYXJhbXMoeyAuLi52LCBhc3NldExheWVyOiB0aGlzLmFzc2V0TGF5ZXIgfSk7XG4gIH1cbiAgZ2V0IGZsb3dEYXRhKCk6IEF0b0dvSlNEYXRhIHtcbiAgICByZXR1cm4gdGhpcy5fZmxvd0RhdGE7XG4gIH1cblxuICAvLyBSZXBvbnNpdmVcbiAgZGF0YVRhYmxlQXNzZXRQYXJhbXM6IGFueVtdO1xuICAvLyBASW5wdXQoKSBpc1Jlc3BvbnNpdmVWaWV3ID0gZmFsc2U7XG4gIGdldCBpc1Jlc3BvbnNpdmVWaWV3KCkge1xuICAgIHJldHVybiB3aW5kb3cuaW5uZXJXaWR0aCA8IDEwMjQ7XG4gIH1cbiAgQElucHV0KCkgZ2V0Rmxvd0RhdGFDYWxsQmFjazogRnVuY3Rpb247XG5cbiAgdGltZW91dFJlc2l6ZVdpbmRvdztcbiAgQEhvc3RMaXN0ZW5lcignd2luZG93OnJlc2l6ZScsIFsnJGV2ZW50J10pXG4gIG9uUmVzaXplKGV2ZW50OiBFdmVudCk6IHZvaWQge1xuICAgIC8vIE5vdyBvbmx5IFN1cHBvcnQgQ29vbGluZyBUb3dlciBSZXNwb25zaXZlXG4gICAgaWYgKHRoaXMudGltZW91dFJlc2l6ZVdpbmRvdykge1xuICAgICAgY2xlYXJUaW1lb3V0KHRoaXMudGltZW91dFJlc2l6ZVdpbmRvdyk7XG4gICAgfVxuICAgIHRoaXMudGltZW91dFJlc2l6ZVdpbmRvdyA9IHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgdGhpcy51cGRhdGVMb2NhdGlvblJlcG9uc2l2ZSgpO1xuICAgIH0sIDEwMDApO1xuICB9XG5cbiAgdXBkYXRlTG9jYXRpb25SZXBvbnNpdmUoKSB7XG4gICAgaWYgKCF0aGlzLmZsb3dEYXRhPy5ub2RlRGF0YUFycmF5KSB7XG4gICAgICB0aGlzLmZsb3dEYXRhID0gQXNzZXRGbG93Q29tcG9uZW50LmdldERlZmF1bHRGbG93RGF0YSh7XG4gICAgICAgIHN5c3RlbVR5cGU6IHRoaXMuc3lzdGVtVHlwZSxcbiAgICAgICAgaXNVc2VCYXNlNjQ6IHRoaXMuaXNVc2VCYXNlNjQsXG4gICAgICAgIGFzc2V0TGF5ZXI6IHRoaXMuYXNzZXRMYXllcixcbiAgICAgIH0pO1xuICAgIH1cbiAgICBfLmZvckVhY2godGhpcy5mbG93RGF0YT8ubm9kZURhdGFBcnJheSwgKG5vZGU6IGFueSkgPT4ge1xuICAgICAgbm9kZSA9IF8ubWVyZ2UoXG4gICAgICAgIG5vZGUsXG4gICAgICAgIG5vZGVbYGV4dGVuZGVkRGF0YSR7dGhpcy5pc1Jlc3BvbnNpdmVWaWV3ID8gJ1Jlc3BvbnNpdmUnIDogJyd9YF1cbiAgICAgICk7XG4gICAgfSk7XG4gICAgdGhpcy5zZXRGbG93RGF0YShfLmNsb25lRGVlcCh0aGlzLmZsb3dEYXRhKSk7XG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLnVwZGF0ZUxvY2F0aW9uUmVwb25zaXZlKCk7XG4gIH1cbiAgb25DbGlja1BhcmFtT2ZUYWJsZSgkZXZlbnQ6IGFueSkge1xuICAgIHRoaXMub25DbGlja1BhcmFtT2ZUYWJsZUV2ZW50LmVtaXQoJGV2ZW50KTtcbiAgfVxuXG4gIHN0YXRpYyBnZXREZWZhdWx0Rmxvd0RhdGEoZGVmYXVsdERhdGE6IEF0b0RlZmF1bHRGbG93RGF0YSkge1xuICAgIGNvbnN0IGZsb3dEYXRhID0ge1xuICAgICAgLi4uZGVmYXVsdERhdGEsXG4gICAgICAuLi5fLmNsb25lRGVlcChBVE9fQ09NUE9ORU5UU19HUk9VUF9EQVRBKVtkZWZhdWx0RGF0YT8uc3lzdGVtVHlwZV0sXG4gICAgICBsaW5rRnJvbVBvcnRJZFByb3BlcnR5OiAnZnJvbVBvcnQnLFxuICAgICAgbGlua1RvUG9ydElkUHJvcGVydHk6ICd0b1BvcnQnLFxuICAgIH07XG4gICAgY29uc3QgaXNSZXNwb25zaXZlVmlldyA9IHdpbmRvdy5pbm5lcldpZHRoIDwgMTAyNDtcbiAgICAvLyBSZXBvbnNpdmVcbiAgICBfLmZvckVhY2goZmxvd0RhdGE/Lm5vZGVEYXRhQXJyYXksIChub2RlOiBhbnkpID0+IHtcbiAgICAgIGNvbnN0IHByb3BlcnR5TmFtZUV4dGVuZCA9ICBgZXh0ZW5kZWREYXRhJHtkZWZhdWx0RGF0YS5pc0Zyb20gJiYgbm9kZT8uaXNGcm9tID8gYGlzRnJvbSR7ZGVmYXVsdERhdGEuaXNGcm9tfWAgOiAnJ30ke2lzUmVzcG9uc2l2ZVZpZXcgPyAnUmVzcG9uc2l2ZScgOiAnJ31gO1xuICAgICAgbm9kZSA9IF8ubWVyZ2UoXG4gICAgICAgIG5vZGUsXG4gICAgICAgIG5vZGVbcHJvcGVydHlOYW1lRXh0ZW5kXVxuICAgICAgKTtcbiAgICAgIGlmIChub2RlPy5hc3NldExheWVycykge1xuICAgICAgICBub2RlLnZpc2libGUgPVxuICAgICAgICAgIG5vZGU/LmFzc2V0TGF5ZXJzID09PSBkZWZhdWx0RGF0YT8uYXNzZXRMYXllciAmJlxuICAgICAgICAgIG5vZGVbcHJvcGVydHlOYW1lRXh0ZW5kXT8udmlzaWJsZTtcbiAgICAgIH1cbiAgICAgIGlmIChkZWZhdWx0RGF0YS5pc0Zyb20gJiYgbm9kZT8uZGF0YVRhYmxlKSB7XG4gICAgICAgIF8uZm9yRWFjaChub2RlPy5kYXRhVGFibGUsIGl0ZW0gPT4ge1xuICAgICAgICAgIGlmIChpdGVtPy5pc0Zyb20pIHtcbiAgICAgICAgICAgIGl0ZW0udmlzaWJsZSA9IGl0ZW0/LmlzRnJvbSA9PT0gZGVmYXVsdERhdGEuaXNGcm9tO1xuICAgICAgICAgIH1cbiAgICAgICAgICBpdGVtID0gXy5tZXJnZShcbiAgICAgICAgICAgIGl0ZW0sXG4gICAgICAgICAgICBpdGVtW2BleHRlbmRlZERhdGFJc0Zyb20ke2RlZmF1bHREYXRhLmlzRnJvbX1gXVxuICAgICAgICAgICk7XG4gICAgICAgIH0pXG4gICAgICB9XG4gICAgfSk7XG4gICAgLy8gYXNzZXRMYXllclxuICAgIC8vIGZsb3dEYXRhLm5vZGVEYXRhQXJyYXkgPSBfLmZpbHRlcihmbG93RGF0YS5ub2RlRGF0YUFycmF5LCB4ID0+ICF4Py5hc3NldExheWVycyB8fCAoeD8uYXNzZXRMYXllcnMgJiYgeD8uYXNzZXRMYXllcnMgPT09IChkZWZhdWx0RGF0YT8uYXNzZXRMYXllciA/PyBBVE9fQVNTRVRfTEFZRVJTLkZMT1cpKSlcbiAgICBpZiAoZGVmYXVsdERhdGE/LmlzVXNlQmFzZTY0KSB7XG4gICAgICBjb25zdCBpdGVtSW1hZ2VUZW1wID0gKGZsb3dEYXRhIGFzIEF0b0dvSlNEYXRhKT8ubm9kZURhdGFBcnJheT8uZmluZChcbiAgICAgICAgKHgpID0+IHg/LnR5cGUgPT09ICdJbWFnZSBUZW1wbGF0ZSdcbiAgICAgICk7XG4gICAgICBpZiAoaXRlbUltYWdlVGVtcCkge1xuICAgICAgICBpdGVtSW1hZ2VUZW1wLnNvdXJjZSA9IEF0b0dvSlNCYXNlNjRbZGVmYXVsdERhdGE/LnN5c3RlbVR5cGVdO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gZmxvd0RhdGE7XG4gIH1cblxuICBzZXRGbG93RGF0YShkYXRhOiBBdG9Hb0pTRGF0YSkge1xuICAgIF8uZm9yRWFjaChkYXRhLm5vZGVEYXRhQXJyYXksIChub2RlKSA9PiB7XG4gICAgICBjb25zdCBwcm9wZXJ0eU5hbWVFeHRlbmQgPSAgYGV4dGVuZGVkRGF0YSR7ZGF0YS5pc0Zyb20gJiYgbm9kZT8uaXNGcm9tID8gYGlzRnJvbSR7ZGF0YS5pc0Zyb219YCA6ICcnfSR7dGhpcy5pc1Jlc3BvbnNpdmVWaWV3ID8gJ1Jlc3BvbnNpdmUnIDogJyd9YDtcbiAgICAgIG5vZGUgPSBfLm1lcmdlKFxuICAgICAgICBub2RlLFxuICAgICAgICBub2RlW3Byb3BlcnR5TmFtZUV4dGVuZF0sXG4gICAgICApO1xuICAgICAgaWYgKG5vZGU/LmFzc2V0TGF5ZXJzKSB7XG4gICAgICAgIG5vZGUudmlzaWJsZSA9XG4gICAgICAgICAgbm9kZT8uYXNzZXRMYXllcnMgPT09IGRhdGEuYXNzZXRMYXllciAmJlxuICAgICAgICAgIG5vZGVbcHJvcGVydHlOYW1lRXh0ZW5kXVxuICAgICAgICAgICAgPy52aXNpYmxlO1xuICAgICAgfVxuICAgICAgaWYgKGRhdGEuaXNGcm9tICYmIG5vZGU/LmRhdGFUYWJsZSkge1xuICAgICAgICBfLmZvckVhY2gobm9kZT8uZGF0YVRhYmxlLCBpdGVtID0+IHtcbiAgICAgICAgICBpZiAoaXRlbT8uaXNGcm9tKSB7XG4gICAgICAgICAgICBpdGVtLnZpc2libGUgPSBpdGVtPy5pc0Zyb20gPT09IGRhdGEuaXNGcm9tO1xuICAgICAgICAgIH1cbiAgICAgICAgICBpdGVtID0gXy5tZXJnZShcbiAgICAgICAgICAgIGl0ZW0sXG4gICAgICAgICAgICBpdGVtW2BleHRlbmRlZERhdGFJc0Zyb20ke2RhdGEuaXNGcm9tfWBdXG4gICAgICAgICAgKTtcbiAgICAgICAgfSlcbiAgICAgIH1cbiAgICB9KTtcbiAgICB0aGlzLmZsb3dEYXRhID0ge1xuICAgICAgLi4uZGF0YSxcbiAgICB9O1xuICAgIHRoaXMudXBkYXRlRGF0YVRhYmxlQXNzZXRQYXJhbXMoZGF0YSk7XG4gIH1cblxuICB1cGRhdGVEYXRhVGFibGVBc3NldFBhcmFtcyhkYXRhOiBBdG9Hb0pTRGF0YSkge1xuICAgIHRoaXMuZGF0YVRhYmxlQXNzZXRQYXJhbXMgPSBfLmZvckVhY2goXG4gICAgICB0aGlzLmZsb3dEYXRhPy5ub2RlRGF0YUFycmF5Py5maWx0ZXIoXG4gICAgICAgIChlKSA9PlxuICAgICAgICAgIGU/LnR5cGUgPT09IEF0b0dvanNFZGl0b3JNb2RlbC5FTlVNX1RFTVBMQVRFUy5QQVJBTV9UQUJMRSAmJlxuICAgICAgICAgIChkYXRhPy5hc3NldExheWVyID8gKGU/LmFzc2V0TGF5ZXJzID09PSBkYXRhPy5hc3NldExheWVyKSA6IHRydWUpXG4gICAgICApLFxuICAgICAgKHgpID0+IHtcbiAgICAgICAgaWYgKCFkYXRhPy5pc1JlZnJlc2gpIHtcbiAgICAgICAgICB4LmlzQ29sbGFwc2VkID0gdGhpcy5hc3NldFBhcmFtc1ZpZXdUZW1wPy5kYXRhPy5maW5kKFxuICAgICAgICAgICAgKHkpID0+IHk/LmtleSA9PT0geD8ua2V5XG4gICAgICAgICAgKT8uaXNDb2xsYXBzZWQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICApO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiaC0xMDAgZC1mbGV4IGZsZXgtY29sdW1uIGZsZXgtZ2FwLTMgZmxleC1ncm93LTEgb3ZlcmZsb3ctYXV0byBweC0zIHBiLTNcIj5cbiAgPGRpdiBjbGFzcz1cImgtMTAwIGQtZmxleCBmbGV4LWNvbHVtblwiIGF0b0xvYWRpbmcgW2FwcExvYWRpbmddPVwiZmxvd0RhdGEgPT09IG51bGxcIj5cbiAgICA8YXRvLWZsb3ctZGlhZ3JhbS1saWJcbiAgICAgICpuZ0lmPVwiZmxvd0RhdGEgIT09IG51bGxcIlxuICAgICAgI2dqRmxvd0RpYWdyYW1UZW1wXG4gICAgICBbZGF0YV09XCJmbG93RGF0YVwiXG4gICAgICBbaW5pdGlhbE9wdGlvbnNdPVwib3B0aW9uc1wiXG4gICAgICAob25DbGlrUGFyYW1PZlRhYmxlKT1cIm9uQ2xpY2tQYXJhbU9mVGFibGUoJGV2ZW50KVwiXG4gICAgICBbY2xhc3NdPVwiISFpc1Jlc3BvbnNpdmVWaWV3ID8gJ2RpYWdyYW0tcmVzcG9uc2l2ZS12aWV3JyA6ICdmbGV4LWdyb3ctMSdcIlxuICAgID48L2F0by1mbG93LWRpYWdyYW0tbGliPlxuICAgIDxkaXYgY2xhc3M9XCJtdC0yXCIgKm5nSWY9XCJpc1Jlc3BvbnNpdmVWaWV3XCI+XG4gICAgICA8YXRvLWFzc2V0LXBhcmFtcy12aWV3XG4gICAgICAgICNhc3NldFBhcmFtc1ZpZXdUZW1wXG4gICAgICAgIFtkYXRhXT1cImRhdGFUYWJsZUFzc2V0UGFyYW1zXCJcbiAgICAgICAgW2lzRWRpdFZpZXddPVwidHJ1ZVwiXG4gICAgICAgIChjbGlja1BhcmFtVGFibGVSb3cpPVwib25DbGlja1BhcmFtT2ZUYWJsZSgkZXZlbnQpXCJcbiAgICAgID48L2F0by1hc3NldC1wYXJhbXMtdmlldz5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L2Rpdj5cblxuIl19
@@ -2,20 +2,18 @@ import { Component, EventEmitter, Input, Output } from '@angular/core';
2
2
  import * as i0 from "@angular/core";
3
3
  import * as i1 from "@angular/common";
4
4
  export class AtoAssetParamsViewComponent {
5
- constructor() {
6
- this.isEditView = false;
7
- this.data = [];
8
- this.clickParamTableRow = new EventEmitter();
9
- }
5
+ isEditView = false;
6
+ data = [];
7
+ clickParamTableRow = new EventEmitter();
10
8
  onClickRowParam(itemTable) {
11
9
  if (this.isEditView && itemTable?.isEditable) {
12
10
  this.clickParamTableRow.emit(itemTable);
13
11
  }
14
12
  }
13
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: AtoAssetParamsViewComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
14
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.7", type: AtoAssetParamsViewComponent, selector: "ato-asset-params-view", inputs: { isEditView: "isEditView", data: "data" }, outputs: { clickParamTableRow: "clickParamTableRow" }, ngImport: i0, template: "<div class=\"d-flex flex-column flex-gap-2\">\n <div class=\"\" *ngFor=\"let tableParam of data\">\n <ng-template\n [ngTemplateOutlet]=\"tableParamTemplate\"\n [ngTemplateOutletContext]=\"{\n data: tableParam\n }\"\n ></ng-template>\n </div>\n</div>\n\n<ng-template #tableParamTemplate let-data=\"data\">\n <div\n class=\"d-flex flex-column asset-param-item w-100\"\n [style.backgroundColor]=\"data?.color\"\n >\n <div\n class=\"d-flex align-items-center justify-content-between py-1 pl-1 pr-2 cursor-pointer\"\n (click)=\"data.isCollapsed = !data.isCollapsed\"\n >\n <div class=\"font-size-14px flex-grow-1 text-truncate color-white\">\n {{ data?.title }}\n </div>\n <svg\n *ngIf=\"data.isCollapsed\"\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 320 512\"\n fill=\"#FFFF\"\n class=\"fa-solid font-size-14px color-white svg-15px\"\n >\n <path\n d=\"M278.6 233.4c12.5 12.5 12.5 32.8 0 45.3l-160 160c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3L210.7 256 73.4 118.6c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0l160 160z\"\n />\n </svg>\n <svg\n *ngIf=\"!data.isCollapsed\"\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 448 512\"\n fill=\"#FFFF\"\n class=\"fa-solid font-size-14px color-white svg-15px\"\n >\n <path\n d=\"M201.4 374.6c12.5 12.5 32.8 12.5 45.3 0l160-160c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L224 306.7 86.6 169.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l160 160z\"\n />\n </svg>\n </div>\n <div class=\"px-1 pb-1\" *ngIf=\"!data.isCollapsed\">\n <div\n class=\"table-asset-param-wrapper\"\n [style.backgroundColor]=\"data?.bgColor\"\n >\n <table>\n <tbody>\n <tr\n *ngFor=\"let itemTable of data?.dataTable\"\n (click)=\"onClickRowParam(itemTable)\"\n class=\"cursor-pointer\"\n >\n <td\n class=\"font-size-13px\"\n [style.borderColor]=\"data?.borderTable\"\n >\n {{ itemTable?.name }}\n </td>\n <td\n class=\"font-size-13px\"\n [style.borderColor]=\"data?.borderTable\"\n >\n <div class=\"d-flex align-items-center flex-gap-2\">\n <div\n class=\"mr-auto font-size-13px flex-grow-1\"\n [style.color]=\"itemTable?.color\"\n >\n {{ itemTable?.value }}\n </div>\n <svg *ngIf=\"isEditView && itemTable?.isEditable\" class=\"svg-15px\" fill=\"#333333\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\"><path d=\"M441 58.9L453.1 71c9.4 9.4 9.4 24.6 0 33.9L424 134.1 377.9 88 407 58.9c9.4-9.4 24.6-9.4 33.9 0zM209.8 256.2L344 121.9 390.1 168 255.8 302.2c-2.9 2.9-6.5 5-10.4 6.1l-58.5 16.7 16.7-58.5c1.1-3.9 3.2-7.5 6.1-10.4zM373.1 25L175.8 222.2c-8.7 8.7-15 19.4-18.3 31.1l-28.6 100c-2.4 8.4-.1 17.4 6.1 23.6s15.2 8.5 23.6 6.1l100-28.6c11.8-3.4 22.5-9.7 31.1-18.3L487 138.9c28.1-28.1 28.1-73.7 0-101.8L474.9 25C446.8-3.1 401.2-3.1 373.1 25zM88 64C39.4 64 0 103.4 0 152V424c0 48.6 39.4 88 88 88H360c48.6 0 88-39.4 88-88V312c0-13.3-10.7-24-24-24s-24 10.7-24 24V424c0 22.1-17.9 40-40 40H88c-22.1 0-40-17.9-40-40V152c0-22.1 17.9-40 40-40H200c13.3 0 24-10.7 24-24s-10.7-24-24-24H88z\"/></svg>\n </div>\n </td>\n </tr>\n </tbody>\n </table>\n </div>\n </div>\n </div>\n</ng-template>\n", styles: [".asset-param-item{border-radius:5px}.asset-param-item .table-asset-param-wrapper{border-radius:5px;background-color:#f0f8ff}.asset-param-item .table-asset-param-wrapper table{border-collapse:collapse;width:100%}.asset-param-item .table-asset-param-wrapper table tbody tr td{border:1px solid red;height:30px;padding:4px}.asset-param-item .table-asset-param-wrapper table tbody tr td:first-child{width:30%}.asset-param-item .table-asset-param-wrapper table tbody tr td:last-child{width:70%}.color-white{color:#fff}.flex-gap-2{gap:.5rem}.svg-15px{width:15px;height:15px;flex:0 0 15px}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }] });
15
15
  }
16
- AtoAssetParamsViewComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: AtoAssetParamsViewComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
17
- AtoAssetParamsViewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: AtoAssetParamsViewComponent, selector: "ato-asset-params-view", inputs: { isEditView: "isEditView", data: "data" }, outputs: { clickParamTableRow: "clickParamTableRow" }, ngImport: i0, template: "<div class=\"d-flex flex-column flex-gap-2\">\n <div class=\"\" *ngFor=\"let tableParam of data\">\n <ng-template\n [ngTemplateOutlet]=\"tableParamTemplate\"\n [ngTemplateOutletContext]=\"{\n data: tableParam\n }\"\n ></ng-template>\n </div>\n</div>\n\n<ng-template #tableParamTemplate let-data=\"data\">\n <div\n class=\"d-flex flex-column asset-param-item w-100\"\n [style.backgroundColor]=\"data?.color\"\n >\n <div\n class=\"d-flex align-items-center justify-content-between py-1 pl-1 pr-2 cursor-pointer\"\n (click)=\"data.isCollapsed = !data.isCollapsed\"\n >\n <div class=\"font-size-14px flex-grow-1 text-truncate color-white\">\n {{ data?.title }}\n </div>\n <svg\n *ngIf=\"data.isCollapsed\"\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 320 512\"\n fill=\"#FFFF\"\n class=\"fa-solid font-size-14px color-white svg-15px\"\n >\n <path\n d=\"M278.6 233.4c12.5 12.5 12.5 32.8 0 45.3l-160 160c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3L210.7 256 73.4 118.6c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0l160 160z\"\n />\n </svg>\n <svg\n *ngIf=\"!data.isCollapsed\"\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 448 512\"\n fill=\"#FFFF\"\n class=\"fa-solid font-size-14px color-white svg-15px\"\n >\n <path\n d=\"M201.4 374.6c12.5 12.5 32.8 12.5 45.3 0l160-160c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L224 306.7 86.6 169.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l160 160z\"\n />\n </svg>\n </div>\n <div class=\"px-1 pb-1\" *ngIf=\"!data.isCollapsed\">\n <div\n class=\"table-asset-param-wrapper\"\n [style.backgroundColor]=\"data?.bgColor\"\n >\n <table>\n <tbody>\n <tr\n *ngFor=\"let itemTable of data?.dataTable\"\n (click)=\"onClickRowParam(itemTable)\"\n class=\"cursor-pointer\"\n >\n <td\n class=\"font-size-13px\"\n [style.borderColor]=\"data?.borderTable\"\n >\n {{ itemTable?.name }}\n </td>\n <td\n class=\"font-size-13px\"\n [style.borderColor]=\"data?.borderTable\"\n >\n <div class=\"d-flex align-items-center flex-gap-2\">\n <div\n class=\"mr-auto font-size-13px flex-grow-1\"\n [style.color]=\"itemTable?.color\"\n >\n {{ itemTable?.value }}\n </div>\n <svg *ngIf=\"isEditView && itemTable?.isEditable\" class=\"svg-15px\" fill=\"#333333\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\"><path d=\"M441 58.9L453.1 71c9.4 9.4 9.4 24.6 0 33.9L424 134.1 377.9 88 407 58.9c9.4-9.4 24.6-9.4 33.9 0zM209.8 256.2L344 121.9 390.1 168 255.8 302.2c-2.9 2.9-6.5 5-10.4 6.1l-58.5 16.7 16.7-58.5c1.1-3.9 3.2-7.5 6.1-10.4zM373.1 25L175.8 222.2c-8.7 8.7-15 19.4-18.3 31.1l-28.6 100c-2.4 8.4-.1 17.4 6.1 23.6s15.2 8.5 23.6 6.1l100-28.6c11.8-3.4 22.5-9.7 31.1-18.3L487 138.9c28.1-28.1 28.1-73.7 0-101.8L474.9 25C446.8-3.1 401.2-3.1 373.1 25zM88 64C39.4 64 0 103.4 0 152V424c0 48.6 39.4 88 88 88H360c48.6 0 88-39.4 88-88V312c0-13.3-10.7-24-24-24s-24 10.7-24 24V424c0 22.1-17.9 40-40 40H88c-22.1 0-40-17.9-40-40V152c0-22.1 17.9-40 40-40H200c13.3 0 24-10.7 24-24s-10.7-24-24-24H88z\"/></svg>\n </div>\n </td>\n </tr>\n </tbody>\n </table>\n </div>\n </div>\n </div>\n</ng-template>\n", styles: [".asset-param-item{border-radius:5px}.asset-param-item .table-asset-param-wrapper{border-radius:5px;background-color:#f0f8ff}.asset-param-item .table-asset-param-wrapper table{border-collapse:collapse;width:100%}.asset-param-item .table-asset-param-wrapper table tbody tr td{border:1px solid red;height:30px;padding:4px}.asset-param-item .table-asset-param-wrapper table tbody tr td:first-child{width:30%}.asset-param-item .table-asset-param-wrapper table tbody tr td:last-child{width:70%}.color-white{color:#fff}.flex-gap-2{gap:.5rem}.svg-15px{width:15px;height:15px;flex:0 0 15px}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }] });
18
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: AtoAssetParamsViewComponent, decorators: [{
16
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: AtoAssetParamsViewComponent, decorators: [{
19
17
  type: Component,
20
18
  args: [{ selector: 'ato-asset-params-view', template: "<div class=\"d-flex flex-column flex-gap-2\">\n <div class=\"\" *ngFor=\"let tableParam of data\">\n <ng-template\n [ngTemplateOutlet]=\"tableParamTemplate\"\n [ngTemplateOutletContext]=\"{\n data: tableParam\n }\"\n ></ng-template>\n </div>\n</div>\n\n<ng-template #tableParamTemplate let-data=\"data\">\n <div\n class=\"d-flex flex-column asset-param-item w-100\"\n [style.backgroundColor]=\"data?.color\"\n >\n <div\n class=\"d-flex align-items-center justify-content-between py-1 pl-1 pr-2 cursor-pointer\"\n (click)=\"data.isCollapsed = !data.isCollapsed\"\n >\n <div class=\"font-size-14px flex-grow-1 text-truncate color-white\">\n {{ data?.title }}\n </div>\n <svg\n *ngIf=\"data.isCollapsed\"\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 320 512\"\n fill=\"#FFFF\"\n class=\"fa-solid font-size-14px color-white svg-15px\"\n >\n <path\n d=\"M278.6 233.4c12.5 12.5 12.5 32.8 0 45.3l-160 160c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3L210.7 256 73.4 118.6c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0l160 160z\"\n />\n </svg>\n <svg\n *ngIf=\"!data.isCollapsed\"\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 448 512\"\n fill=\"#FFFF\"\n class=\"fa-solid font-size-14px color-white svg-15px\"\n >\n <path\n d=\"M201.4 374.6c12.5 12.5 32.8 12.5 45.3 0l160-160c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L224 306.7 86.6 169.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l160 160z\"\n />\n </svg>\n </div>\n <div class=\"px-1 pb-1\" *ngIf=\"!data.isCollapsed\">\n <div\n class=\"table-asset-param-wrapper\"\n [style.backgroundColor]=\"data?.bgColor\"\n >\n <table>\n <tbody>\n <tr\n *ngFor=\"let itemTable of data?.dataTable\"\n (click)=\"onClickRowParam(itemTable)\"\n class=\"cursor-pointer\"\n >\n <td\n class=\"font-size-13px\"\n [style.borderColor]=\"data?.borderTable\"\n >\n {{ itemTable?.name }}\n </td>\n <td\n class=\"font-size-13px\"\n [style.borderColor]=\"data?.borderTable\"\n >\n <div class=\"d-flex align-items-center flex-gap-2\">\n <div\n class=\"mr-auto font-size-13px flex-grow-1\"\n [style.color]=\"itemTable?.color\"\n >\n {{ itemTable?.value }}\n </div>\n <svg *ngIf=\"isEditView && itemTable?.isEditable\" class=\"svg-15px\" fill=\"#333333\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\"><path d=\"M441 58.9L453.1 71c9.4 9.4 9.4 24.6 0 33.9L424 134.1 377.9 88 407 58.9c9.4-9.4 24.6-9.4 33.9 0zM209.8 256.2L344 121.9 390.1 168 255.8 302.2c-2.9 2.9-6.5 5-10.4 6.1l-58.5 16.7 16.7-58.5c1.1-3.9 3.2-7.5 6.1-10.4zM373.1 25L175.8 222.2c-8.7 8.7-15 19.4-18.3 31.1l-28.6 100c-2.4 8.4-.1 17.4 6.1 23.6s15.2 8.5 23.6 6.1l100-28.6c11.8-3.4 22.5-9.7 31.1-18.3L487 138.9c28.1-28.1 28.1-73.7 0-101.8L474.9 25C446.8-3.1 401.2-3.1 373.1 25zM88 64C39.4 64 0 103.4 0 152V424c0 48.6 39.4 88 88 88H360c48.6 0 88-39.4 88-88V312c0-13.3-10.7-24-24-24s-24 10.7-24 24V424c0 22.1-17.9 40-40 40H88c-22.1 0-40-17.9-40-40V152c0-22.1 17.9-40 40-40H200c13.3 0 24-10.7 24-24s-10.7-24-24-24H88z\"/></svg>\n </div>\n </td>\n </tr>\n </tbody>\n </table>\n </div>\n </div>\n </div>\n</ng-template>\n", styles: [".asset-param-item{border-radius:5px}.asset-param-item .table-asset-param-wrapper{border-radius:5px;background-color:#f0f8ff}.asset-param-item .table-asset-param-wrapper table{border-collapse:collapse;width:100%}.asset-param-item .table-asset-param-wrapper table tbody tr td{border:1px solid red;height:30px;padding:4px}.asset-param-item .table-asset-param-wrapper table tbody tr td:first-child{width:30%}.asset-param-item .table-asset-param-wrapper table tbody tr td:last-child{width:70%}.color-white{color:#fff}.flex-gap-2{gap:.5rem}.svg-15px{width:15px;height:15px;flex:0 0 15px}\n"] }]
21
19
  }], propDecorators: { isEditView: [{
@@ -25,4 +23,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
25
23
  }], clickParamTableRow: [{
26
24
  type: Output
27
25
  }] } });
28
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNzZXQtcGFyYW1zLXZpZXcuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYXRvLXdhdGVyLWxpYi9zcmMvbGliL2NvbXBvbmVudHMvYXNzZXQtcGFyYW1zLXZpZXcvYXNzZXQtcGFyYW1zLXZpZXcuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYXRvLXdhdGVyLWxpYi9zcmMvbGliL2NvbXBvbmVudHMvYXNzZXQtcGFyYW1zLXZpZXcvYXNzZXQtcGFyYW1zLXZpZXcuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQzs7O0FBT3ZFLE1BQU0sT0FBTywyQkFBMkI7SUFMeEM7UUFNVyxlQUFVLEdBQUcsS0FBSyxDQUFDO1FBQ25CLFNBQUksR0FBVSxFQUFFLENBQUM7UUFDaEIsdUJBQWtCLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztLQU9uRDtJQUxDLGVBQWUsQ0FBQyxTQUFTO1FBQ3ZCLElBQUksSUFBSSxDQUFDLFVBQVUsSUFBSSxTQUFTLEVBQUUsVUFBVSxFQUFFO1lBQzVDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7U0FDekM7SUFDSCxDQUFDOzt5SEFUVSwyQkFBMkI7NkdBQTNCLDJCQUEyQix3S0NQeEMsbW5IQXFGQTs0RkQ5RWEsMkJBQTJCO2tCQUx2QyxTQUFTOytCQUNFLHVCQUF1Qjs4QkFLeEIsVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0ksa0JBQWtCO3NCQUEzQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXRvLWFzc2V0LXBhcmFtcy12aWV3JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2Fzc2V0LXBhcmFtcy12aWV3LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vYXNzZXQtcGFyYW1zLXZpZXcuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBBdG9Bc3NldFBhcmFtc1ZpZXdDb21wb25lbnQge1xuICBASW5wdXQoKSBpc0VkaXRWaWV3ID0gZmFsc2U7XG4gIEBJbnB1dCgpIGRhdGE6IGFueVtdID0gW107XG4gIEBPdXRwdXQoKSBjbGlja1BhcmFtVGFibGVSb3cgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgb25DbGlja1Jvd1BhcmFtKGl0ZW1UYWJsZSkge1xuICAgIGlmICh0aGlzLmlzRWRpdFZpZXcgJiYgaXRlbVRhYmxlPy5pc0VkaXRhYmxlKSB7XG4gICAgICB0aGlzLmNsaWNrUGFyYW1UYWJsZVJvdy5lbWl0KGl0ZW1UYWJsZSk7XG4gICAgfVxuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiZC1mbGV4IGZsZXgtY29sdW1uIGZsZXgtZ2FwLTJcIj5cbiAgPGRpdiBjbGFzcz1cIlwiICpuZ0Zvcj1cImxldCB0YWJsZVBhcmFtIG9mIGRhdGFcIj5cbiAgICA8bmctdGVtcGxhdGVcbiAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cInRhYmxlUGFyYW1UZW1wbGF0ZVwiXG4gICAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwie1xuICAgICAgICBkYXRhOiB0YWJsZVBhcmFtXG4gICAgICB9XCJcbiAgICA+PC9uZy10ZW1wbGF0ZT5cbiAgPC9kaXY+XG48L2Rpdj5cblxuPG5nLXRlbXBsYXRlICN0YWJsZVBhcmFtVGVtcGxhdGUgbGV0LWRhdGE9XCJkYXRhXCI+XG4gIDxkaXZcbiAgICBjbGFzcz1cImQtZmxleCBmbGV4LWNvbHVtbiBhc3NldC1wYXJhbS1pdGVtIHctMTAwXCJcbiAgICBbc3R5bGUuYmFja2dyb3VuZENvbG9yXT1cImRhdGE/LmNvbG9yXCJcbiAgPlxuICAgIDxkaXZcbiAgICAgIGNsYXNzPVwiZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlbiBweS0xIHBsLTEgcHItMiBjdXJzb3ItcG9pbnRlclwiXG4gICAgICAoY2xpY2spPVwiZGF0YS5pc0NvbGxhcHNlZCA9ICFkYXRhLmlzQ29sbGFwc2VkXCJcbiAgICA+XG4gICAgICA8ZGl2IGNsYXNzPVwiZm9udC1zaXplLTE0cHggZmxleC1ncm93LTEgdGV4dC10cnVuY2F0ZSBjb2xvci13aGl0ZVwiPlxuICAgICAgICB7eyBkYXRhPy50aXRsZSB9fVxuICAgICAgPC9kaXY+XG4gICAgICA8c3ZnXG4gICAgICAgICpuZ0lmPVwiZGF0YS5pc0NvbGxhcHNlZFwiXG4gICAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICAgICAgICB2aWV3Qm94PVwiMCAwIDMyMCA1MTJcIlxuICAgICAgICBmaWxsPVwiI0ZGRkZcIlxuICAgICAgICBjbGFzcz1cImZhLXNvbGlkIGZvbnQtc2l6ZS0xNHB4IGNvbG9yLXdoaXRlIHN2Zy0xNXB4XCJcbiAgICAgID5cbiAgICAgICAgPHBhdGhcbiAgICAgICAgICBkPVwiTTI3OC42IDIzMy40YzEyLjUgMTIuNSAxMi41IDMyLjggMCA0NS4zbC0xNjAgMTYwYy0xMi41IDEyLjUtMzIuOCAxMi41LTQ1LjMgMHMtMTIuNS0zMi44IDAtNDUuM0wyMTAuNyAyNTYgNzMuNCAxMTguNmMtMTIuNS0xMi41LTEyLjUtMzIuOCAwLTQ1LjNzMzIuOC0xMi41IDQ1LjMgMGwxNjAgMTYwelwiXG4gICAgICAgIC8+XG4gICAgICA8L3N2Zz5cbiAgICAgIDxzdmdcbiAgICAgICAgKm5nSWY9XCIhZGF0YS5pc0NvbGxhcHNlZFwiXG4gICAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICAgICAgICB2aWV3Qm94PVwiMCAwIDQ0OCA1MTJcIlxuICAgICAgICBmaWxsPVwiI0ZGRkZcIlxuICAgICAgICBjbGFzcz1cImZhLXNvbGlkIGZvbnQtc2l6ZS0xNHB4IGNvbG9yLXdoaXRlIHN2Zy0xNXB4XCJcbiAgICAgID5cbiAgICAgICAgPHBhdGhcbiAgICAgICAgICBkPVwiTTIwMS40IDM3NC42YzEyLjUgMTIuNSAzMi44IDEyLjUgNDUuMyAwbDE2MC0xNjBjMTIuNS0xMi41IDEyLjUtMzIuOCAwLTQ1LjNzLTMyLjgtMTIuNS00NS4zIDBMMjI0IDMwNi43IDg2LjYgMTY5LjRjLTEyLjUtMTIuNS0zMi44LTEyLjUtNDUuMyAwcy0xMi41IDMyLjggMCA0NS4zbDE2MCAxNjB6XCJcbiAgICAgICAgLz5cbiAgICAgIDwvc3ZnPlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJweC0xIHBiLTFcIiAqbmdJZj1cIiFkYXRhLmlzQ29sbGFwc2VkXCI+XG4gICAgICA8ZGl2XG4gICAgICAgIGNsYXNzPVwidGFibGUtYXNzZXQtcGFyYW0td3JhcHBlclwiXG4gICAgICAgIFtzdHlsZS5iYWNrZ3JvdW5kQ29sb3JdPVwiZGF0YT8uYmdDb2xvclwiXG4gICAgICA+XG4gICAgICAgIDx0YWJsZT5cbiAgICAgICAgICA8dGJvZHk+XG4gICAgICAgICAgICA8dHJcbiAgICAgICAgICAgICAgKm5nRm9yPVwibGV0IGl0ZW1UYWJsZSBvZiBkYXRhPy5kYXRhVGFibGVcIlxuICAgICAgICAgICAgICAoY2xpY2spPVwib25DbGlja1Jvd1BhcmFtKGl0ZW1UYWJsZSlcIlxuICAgICAgICAgICAgICBjbGFzcz1cImN1cnNvci1wb2ludGVyXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPHRkXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJmb250LXNpemUtMTNweFwiXG4gICAgICAgICAgICAgICAgW3N0eWxlLmJvcmRlckNvbG9yXT1cImRhdGE/LmJvcmRlclRhYmxlXCJcbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIHt7IGl0ZW1UYWJsZT8ubmFtZSB9fVxuICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgICA8dGRcbiAgICAgICAgICAgICAgICBjbGFzcz1cImZvbnQtc2l6ZS0xM3B4XCJcbiAgICAgICAgICAgICAgICBbc3R5bGUuYm9yZGVyQ29sb3JdPVwiZGF0YT8uYm9yZGVyVGFibGVcIlxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIgZmxleC1nYXAtMlwiPlxuICAgICAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cIm1yLWF1dG8gZm9udC1zaXplLTEzcHggZmxleC1ncm93LTFcIlxuICAgICAgICAgICAgICAgICAgICBbc3R5bGUuY29sb3JdPVwiaXRlbVRhYmxlPy5jb2xvclwiXG4gICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIHt7IGl0ZW1UYWJsZT8udmFsdWUgfX1cbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgPHN2ZyAqbmdJZj1cImlzRWRpdFZpZXcgJiYgaXRlbVRhYmxlPy5pc0VkaXRhYmxlXCIgY2xhc3M9XCJzdmctMTVweFwiIGZpbGw9XCIjMzMzMzMzXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgNTEyIDUxMlwiPjxwYXRoIGQ9XCJNNDQxIDU4LjlMNDUzLjEgNzFjOS40IDkuNCA5LjQgMjQuNiAwIDMzLjlMNDI0IDEzNC4xIDM3Ny45IDg4IDQwNyA1OC45YzkuNC05LjQgMjQuNi05LjQgMzMuOSAwek0yMDkuOCAyNTYuMkwzNDQgMTIxLjkgMzkwLjEgMTY4IDI1NS44IDMwMi4yYy0yLjkgMi45LTYuNSA1LTEwLjQgNi4xbC01OC41IDE2LjcgMTYuNy01OC41YzEuMS0zLjkgMy4yLTcuNSA2LjEtMTAuNHpNMzczLjEgMjVMMTc1LjggMjIyLjJjLTguNyA4LjctMTUgMTkuNC0xOC4zIDMxLjFsLTI4LjYgMTAwYy0yLjQgOC40LS4xIDE3LjQgNi4xIDIzLjZzMTUuMiA4LjUgMjMuNiA2LjFsMTAwLTI4LjZjMTEuOC0zLjQgMjIuNS05LjcgMzEuMS0xOC4zTDQ4NyAxMzguOWMyOC4xLTI4LjEgMjguMS03My43IDAtMTAxLjhMNDc0LjkgMjVDNDQ2LjgtMy4xIDQwMS4yLTMuMSAzNzMuMSAyNXpNODggNjRDMzkuNCA2NCAwIDEwMy40IDAgMTUyVjQyNGMwIDQ4LjYgMzkuNCA4OCA4OCA4OEgzNjBjNDguNiAwIDg4LTM5LjQgODgtODhWMzEyYzAtMTMuMy0xMC43LTI0LTI0LTI0cy0yNCAxMC43LTI0IDI0VjQyNGMwIDIyLjEtMTcuOSA0MC00MCA0MEg4OGMtMjIuMSAwLTQwLTE3LjktNDAtNDBWMTUyYzAtMjIuMSAxNy45LTQwIDQwLTQwSDIwMGMxMy4zIDAgMjQtMTAuNyAyNC0yNHMtMTAuNy0yNC0yNC0yNEg4OHpcIi8+PC9zdmc+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICA8L3RyPlxuICAgICAgICAgIDwvdGJvZHk+XG4gICAgICAgIDwvdGFibGU+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L25nLXRlbXBsYXRlPlxuIl19
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNzZXQtcGFyYW1zLXZpZXcuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYXRvLXdhdGVyLWxpYi9zcmMvbGliL2NvbXBvbmVudHMvYXNzZXQtcGFyYW1zLXZpZXcvYXNzZXQtcGFyYW1zLXZpZXcuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYXRvLXdhdGVyLWxpYi9zcmMvbGliL2NvbXBvbmVudHMvYXNzZXQtcGFyYW1zLXZpZXcvYXNzZXQtcGFyYW1zLXZpZXcuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQzs7O0FBT3ZFLE1BQU0sT0FBTywyQkFBMkI7SUFDN0IsVUFBVSxHQUFHLEtBQUssQ0FBQztJQUNuQixJQUFJLEdBQVUsRUFBRSxDQUFDO0lBQ2hCLGtCQUFrQixHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7SUFFbEQsZUFBZSxDQUFDLFNBQVM7UUFDdkIsSUFBSSxJQUFJLENBQUMsVUFBVSxJQUFJLFNBQVMsRUFBRSxVQUFVLEVBQUUsQ0FBQztZQUM3QyxJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQzFDLENBQUM7SUFDSCxDQUFDO3VHQVRVLDJCQUEyQjsyRkFBM0IsMkJBQTJCLHdLQ1B4QyxtbkhBcUZBOzsyRkQ5RWEsMkJBQTJCO2tCQUx2QyxTQUFTOytCQUNFLHVCQUF1Qjs4QkFLeEIsVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0ksa0JBQWtCO3NCQUEzQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXRvLWFzc2V0LXBhcmFtcy12aWV3JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2Fzc2V0LXBhcmFtcy12aWV3LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vYXNzZXQtcGFyYW1zLXZpZXcuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBBdG9Bc3NldFBhcmFtc1ZpZXdDb21wb25lbnQge1xuICBASW5wdXQoKSBpc0VkaXRWaWV3ID0gZmFsc2U7XG4gIEBJbnB1dCgpIGRhdGE6IGFueVtdID0gW107XG4gIEBPdXRwdXQoKSBjbGlja1BhcmFtVGFibGVSb3cgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgb25DbGlja1Jvd1BhcmFtKGl0ZW1UYWJsZSkge1xuICAgIGlmICh0aGlzLmlzRWRpdFZpZXcgJiYgaXRlbVRhYmxlPy5pc0VkaXRhYmxlKSB7XG4gICAgICB0aGlzLmNsaWNrUGFyYW1UYWJsZVJvdy5lbWl0KGl0ZW1UYWJsZSk7XG4gICAgfVxuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiZC1mbGV4IGZsZXgtY29sdW1uIGZsZXgtZ2FwLTJcIj5cbiAgPGRpdiBjbGFzcz1cIlwiICpuZ0Zvcj1cImxldCB0YWJsZVBhcmFtIG9mIGRhdGFcIj5cbiAgICA8bmctdGVtcGxhdGVcbiAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cInRhYmxlUGFyYW1UZW1wbGF0ZVwiXG4gICAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwie1xuICAgICAgICBkYXRhOiB0YWJsZVBhcmFtXG4gICAgICB9XCJcbiAgICA+PC9uZy10ZW1wbGF0ZT5cbiAgPC9kaXY+XG48L2Rpdj5cblxuPG5nLXRlbXBsYXRlICN0YWJsZVBhcmFtVGVtcGxhdGUgbGV0LWRhdGE9XCJkYXRhXCI+XG4gIDxkaXZcbiAgICBjbGFzcz1cImQtZmxleCBmbGV4LWNvbHVtbiBhc3NldC1wYXJhbS1pdGVtIHctMTAwXCJcbiAgICBbc3R5bGUuYmFja2dyb3VuZENvbG9yXT1cImRhdGE/LmNvbG9yXCJcbiAgPlxuICAgIDxkaXZcbiAgICAgIGNsYXNzPVwiZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlbiBweS0xIHBsLTEgcHItMiBjdXJzb3ItcG9pbnRlclwiXG4gICAgICAoY2xpY2spPVwiZGF0YS5pc0NvbGxhcHNlZCA9ICFkYXRhLmlzQ29sbGFwc2VkXCJcbiAgICA+XG4gICAgICA8ZGl2IGNsYXNzPVwiZm9udC1zaXplLTE0cHggZmxleC1ncm93LTEgdGV4dC10cnVuY2F0ZSBjb2xvci13aGl0ZVwiPlxuICAgICAgICB7eyBkYXRhPy50aXRsZSB9fVxuICAgICAgPC9kaXY+XG4gICAgICA8c3ZnXG4gICAgICAgICpuZ0lmPVwiZGF0YS5pc0NvbGxhcHNlZFwiXG4gICAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICAgICAgICB2aWV3Qm94PVwiMCAwIDMyMCA1MTJcIlxuICAgICAgICBmaWxsPVwiI0ZGRkZcIlxuICAgICAgICBjbGFzcz1cImZhLXNvbGlkIGZvbnQtc2l6ZS0xNHB4IGNvbG9yLXdoaXRlIHN2Zy0xNXB4XCJcbiAgICAgID5cbiAgICAgICAgPHBhdGhcbiAgICAgICAgICBkPVwiTTI3OC42IDIzMy40YzEyLjUgMTIuNSAxMi41IDMyLjggMCA0NS4zbC0xNjAgMTYwYy0xMi41IDEyLjUtMzIuOCAxMi41LTQ1LjMgMHMtMTIuNS0zMi44IDAtNDUuM0wyMTAuNyAyNTYgNzMuNCAxMTguNmMtMTIuNS0xMi41LTEyLjUtMzIuOCAwLTQ1LjNzMzIuOC0xMi41IDQ1LjMgMGwxNjAgMTYwelwiXG4gICAgICAgIC8+XG4gICAgICA8L3N2Zz5cbiAgICAgIDxzdmdcbiAgICAgICAgKm5nSWY9XCIhZGF0YS5pc0NvbGxhcHNlZFwiXG4gICAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICAgICAgICB2aWV3Qm94PVwiMCAwIDQ0OCA1MTJcIlxuICAgICAgICBmaWxsPVwiI0ZGRkZcIlxuICAgICAgICBjbGFzcz1cImZhLXNvbGlkIGZvbnQtc2l6ZS0xNHB4IGNvbG9yLXdoaXRlIHN2Zy0xNXB4XCJcbiAgICAgID5cbiAgICAgICAgPHBhdGhcbiAgICAgICAgICBkPVwiTTIwMS40IDM3NC42YzEyLjUgMTIuNSAzMi44IDEyLjUgNDUuMyAwbDE2MC0xNjBjMTIuNS0xMi41IDEyLjUtMzIuOCAwLTQ1LjNzLTMyLjgtMTIuNS00NS4zIDBMMjI0IDMwNi43IDg2LjYgMTY5LjRjLTEyLjUtMTIuNS0zMi44LTEyLjUtNDUuMyAwcy0xMi41IDMyLjggMCA0NS4zbDE2MCAxNjB6XCJcbiAgICAgICAgLz5cbiAgICAgIDwvc3ZnPlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJweC0xIHBiLTFcIiAqbmdJZj1cIiFkYXRhLmlzQ29sbGFwc2VkXCI+XG4gICAgICA8ZGl2XG4gICAgICAgIGNsYXNzPVwidGFibGUtYXNzZXQtcGFyYW0td3JhcHBlclwiXG4gICAgICAgIFtzdHlsZS5iYWNrZ3JvdW5kQ29sb3JdPVwiZGF0YT8uYmdDb2xvclwiXG4gICAgICA+XG4gICAgICAgIDx0YWJsZT5cbiAgICAgICAgICA8dGJvZHk+XG4gICAgICAgICAgICA8dHJcbiAgICAgICAgICAgICAgKm5nRm9yPVwibGV0IGl0ZW1UYWJsZSBvZiBkYXRhPy5kYXRhVGFibGVcIlxuICAgICAgICAgICAgICAoY2xpY2spPVwib25DbGlja1Jvd1BhcmFtKGl0ZW1UYWJsZSlcIlxuICAgICAgICAgICAgICBjbGFzcz1cImN1cnNvci1wb2ludGVyXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPHRkXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJmb250LXNpemUtMTNweFwiXG4gICAgICAgICAgICAgICAgW3N0eWxlLmJvcmRlckNvbG9yXT1cImRhdGE/LmJvcmRlclRhYmxlXCJcbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIHt7IGl0ZW1UYWJsZT8ubmFtZSB9fVxuICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgICA8dGRcbiAgICAgICAgICAgICAgICBjbGFzcz1cImZvbnQtc2l6ZS0xM3B4XCJcbiAgICAgICAgICAgICAgICBbc3R5bGUuYm9yZGVyQ29sb3JdPVwiZGF0YT8uYm9yZGVyVGFibGVcIlxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIgZmxleC1nYXAtMlwiPlxuICAgICAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cIm1yLWF1dG8gZm9udC1zaXplLTEzcHggZmxleC1ncm93LTFcIlxuICAgICAgICAgICAgICAgICAgICBbc3R5bGUuY29sb3JdPVwiaXRlbVRhYmxlPy5jb2xvclwiXG4gICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIHt7IGl0ZW1UYWJsZT8udmFsdWUgfX1cbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgPHN2ZyAqbmdJZj1cImlzRWRpdFZpZXcgJiYgaXRlbVRhYmxlPy5pc0VkaXRhYmxlXCIgY2xhc3M9XCJzdmctMTVweFwiIGZpbGw9XCIjMzMzMzMzXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgNTEyIDUxMlwiPjxwYXRoIGQ9XCJNNDQxIDU4LjlMNDUzLjEgNzFjOS40IDkuNCA5LjQgMjQuNiAwIDMzLjlMNDI0IDEzNC4xIDM3Ny45IDg4IDQwNyA1OC45YzkuNC05LjQgMjQuNi05LjQgMzMuOSAwek0yMDkuOCAyNTYuMkwzNDQgMTIxLjkgMzkwLjEgMTY4IDI1NS44IDMwMi4yYy0yLjkgMi45LTYuNSA1LTEwLjQgNi4xbC01OC41IDE2LjcgMTYuNy01OC41YzEuMS0zLjkgMy4yLTcuNSA2LjEtMTAuNHpNMzczLjEgMjVMMTc1LjggMjIyLjJjLTguNyA4LjctMTUgMTkuNC0xOC4zIDMxLjFsLTI4LjYgMTAwYy0yLjQgOC40LS4xIDE3LjQgNi4xIDIzLjZzMTUuMiA4LjUgMjMuNiA2LjFsMTAwLTI4LjZjMTEuOC0zLjQgMjIuNS05LjcgMzEuMS0xOC4zTDQ4NyAxMzguOWMyOC4xLTI4LjEgMjguMS03My43IDAtMTAxLjhMNDc0LjkgMjVDNDQ2LjgtMy4xIDQwMS4yLTMuMSAzNzMuMSAyNXpNODggNjRDMzkuNCA2NCAwIDEwMy40IDAgMTUyVjQyNGMwIDQ4LjYgMzkuNCA4OCA4OCA4OEgzNjBjNDguNiAwIDg4LTM5LjQgODgtODhWMzEyYzAtMTMuMy0xMC43LTI0LTI0LTI0cy0yNCAxMC43LTI0IDI0VjQyNGMwIDIyLjEtMTcuOSA0MC00MCA0MEg4OGMtMjIuMSAwLTQwLTE3LjktNDAtNDBWMTUyYzAtMjIuMSAxNy45LTQwIDQwLTQwSDIwMGMxMy4zIDAgMjQtMTAuNyAyNC0yNHMtMTAuNy0yNC0yNC0yNEg4OHpcIi8+PC9zdmc+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICA8L3RyPlxuICAgICAgICAgIDwvdGJvZHk+XG4gICAgICAgIDwvdGFibGU+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L25nLXRlbXBsYXRlPlxuIl19
@@ -0,0 +1,55 @@
1
+ import { Component, Input, ViewChild } from '@angular/core';
2
+ import { AtoDefaultGojsEditor } from '../../models/default-gojs-editor.model';
3
+ import { AtoGojsEditorModel } from '../../models/gojs-editor.model';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "@angular/common";
6
+ import * as i2 from "../../directive/ato-loading.directive";
7
+ export class AtoFlowDiagramLibComponent extends AtoDefaultGojsEditor {
8
+ myDiagramDivTemp;
9
+ _data = null;
10
+ set data(v) {
11
+ this._data = v;
12
+ this.loadDiagram();
13
+ }
14
+ isLoading = false;
15
+ get data() {
16
+ return this._data;
17
+ }
18
+ constructor(_elRef) {
19
+ super(_elRef);
20
+ this.actions = [
21
+ AtoDefaultGojsEditor.ACTIONS[AtoDefaultGojsEditor.ENUM_ACTIONS.DETAILS],
22
+ AtoDefaultGojsEditor.ACTIONS[AtoDefaultGojsEditor.ENUM_ACTIONS.DELETE],
23
+ ];
24
+ this.unsubscribeAll();
25
+ }
26
+ ngOnInit() {
27
+ this.addSubscribes(this.committedTransactionSubject?.subscribe((e) => {
28
+ this.onModelChangeListenerEvent.emit(e);
29
+ }));
30
+ }
31
+ loadDiagram() {
32
+ this.editor = new AtoGojsEditorModel({
33
+ class: 'go.GraphLinksModel',
34
+ nodeCategoryProperty: 'type',
35
+ ...this.data,
36
+ });
37
+ }
38
+ findNodeForKey(key) {
39
+ this.myDiagram.select(this.myDiagram.findNodeForKey(key));
40
+ }
41
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: AtoFlowDiagramLibComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
42
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.7", type: AtoFlowDiagramLibComponent, selector: "ato-flow-diagram-lib", inputs: { data: "data", isLoading: "isLoading" }, viewQueries: [{ propertyName: "myDiagramDivTemp", first: true, predicate: ["myDiagramDivTemp"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"w-100 h-100 gj-flow-diagram-wrapper\" atoLoading [appLoading]=\"data === null || !!isLoading\">\n <div class=\"w-100 h-100 d-flex\">\n <!-- <button\n id=\"actionMenuId\"\n class=\"invisible-btn\"\n mat-button\n [matMenuTriggerFor]=\"menu\"\n #menuTrigger=\"matMenuTrigger\"\n ></button>\n <mat-menu #menu=\"matMenu\">\n <button mat-menu-item *ngFor=\"let item of actions\" (click)=\"item?.onClick($event)\">\n <div class=\"d-flex flex-gap-2\">\n <div><i class=\"{{ item?.iconClassName }}\"></i></div>\n <div>{{ item?.name }}</div>\n </div>\n </button>\n </mat-menu> -->\n\n <div #myDiagramDivTemp class=\"flex-grow-1 {{myDiagramDiv}}\"></div>\n <div *ngIf=\"initialOptions?.isReadOnly && !data?.nodeDataArray?.length\" class=\"empty-data\">\n <!-- <nz-empty nzNotFoundImage=\"simple\"></nz-empty> -->\n No Data\n </div>\n </div>\n</div>\n", styles: [""], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.AtoLoadingDirective, selector: "[atoLoading]", inputs: ["appLoading"] }] });
43
+ }
44
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: AtoFlowDiagramLibComponent, decorators: [{
45
+ type: Component,
46
+ args: [{ selector: 'ato-flow-diagram-lib', template: "<div class=\"w-100 h-100 gj-flow-diagram-wrapper\" atoLoading [appLoading]=\"data === null || !!isLoading\">\n <div class=\"w-100 h-100 d-flex\">\n <!-- <button\n id=\"actionMenuId\"\n class=\"invisible-btn\"\n mat-button\n [matMenuTriggerFor]=\"menu\"\n #menuTrigger=\"matMenuTrigger\"\n ></button>\n <mat-menu #menu=\"matMenu\">\n <button mat-menu-item *ngFor=\"let item of actions\" (click)=\"item?.onClick($event)\">\n <div class=\"d-flex flex-gap-2\">\n <div><i class=\"{{ item?.iconClassName }}\"></i></div>\n <div>{{ item?.name }}</div>\n </div>\n </button>\n </mat-menu> -->\n\n <div #myDiagramDivTemp class=\"flex-grow-1 {{myDiagramDiv}}\"></div>\n <div *ngIf=\"initialOptions?.isReadOnly && !data?.nodeDataArray?.length\" class=\"empty-data\">\n <!-- <nz-empty nzNotFoundImage=\"simple\"></nz-empty> -->\n No Data\n </div>\n </div>\n</div>\n" }]
47
+ }], ctorParameters: () => [{ type: i0.ElementRef }], propDecorators: { myDiagramDivTemp: [{
48
+ type: ViewChild,
49
+ args: ['myDiagramDivTemp']
50
+ }], data: [{
51
+ type: Input
52
+ }], isLoading: [{
53
+ type: Input
54
+ }] } });
55
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmxvdy1kaWFncmFtLWxpYi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hdG8td2F0ZXItbGliL3NyYy9saWIvY29tcG9uZW50cy9mbG93LWRpYWdyYW0tbGliL2Zsb3ctZGlhZ3JhbS1saWIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYXRvLXdhdGVyLWxpYi9zcmMvbGliL2NvbXBvbmVudHMvZmxvdy1kaWFncmFtLWxpYi9mbG93LWRpYWdyYW0tbGliLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQWMsS0FBSyxFQUFVLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUdoRixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUM5RSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQzs7OztBQU9wRSxNQUFNLE9BQU8sMEJBQTJCLFNBQVEsb0JBQW9CO0lBQ3BDLGdCQUFnQixDQUFNO0lBQ3BELEtBQUssR0FBUSxJQUFJLENBQUM7SUFDbEIsSUFBYSxJQUFJLENBQUMsQ0FBQztRQUNmLElBQUksQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFDO1FBQ2YsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ3ZCLENBQUM7SUFFUSxTQUFTLEdBQUcsS0FBSyxDQUFDO0lBRTNCLElBQUksSUFBSTtRQUNKLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQztJQUN0QixDQUFDO0lBRUQsWUFDRSxNQUFrQjtRQUVoQixLQUFLLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDZCxJQUFJLENBQUMsT0FBTyxHQUFHO1lBQ2Isb0JBQW9CLENBQUMsT0FBTyxDQUFDLG9CQUFvQixDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUM7WUFDdkUsb0JBQW9CLENBQUMsT0FBTyxDQUFDLG9CQUFvQixDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUM7U0FDdkUsQ0FBQztRQUNGLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztJQUMxQixDQUFDO0lBSUQsUUFBUTtRQUNKLElBQUksQ0FBQyxhQUFhLENBQ2QsSUFBSSxDQUFDLDJCQUEyQixFQUFFLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFO1lBQzlDLElBQUksQ0FBQywwQkFBMEIsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDNUMsQ0FBQyxDQUFDLENBT0wsQ0FBQztJQUNOLENBQUM7SUFFRCxXQUFXO1FBQ1AsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLGtCQUFrQixDQUFDO1lBQ2pDLEtBQUssRUFBRSxvQkFBb0I7WUFDM0Isb0JBQW9CLEVBQUUsTUFBTTtZQUM1QixHQUFHLElBQUksQ0FBQyxJQUFJO1NBQ2YsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVELGNBQWMsQ0FBQyxHQUFvQjtRQUMvQixJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQzlELENBQUM7dUdBbkRVLDBCQUEwQjsyRkFBMUIsMEJBQTBCLDJQQ1h2QyxtakNBeUJBOzsyRkRkYSwwQkFBMEI7a0JBTHRDLFNBQVM7K0JBQ0Usc0JBQXNCOytFQUtGLGdCQUFnQjtzQkFBOUMsU0FBUzt1QkFBQyxrQkFBa0I7Z0JBRWYsSUFBSTtzQkFBaEIsS0FBSztnQkFLRyxTQUFTO3NCQUFqQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBJbnB1dCwgT25Jbml0LCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCBfIGZyb20gJ2xvZGFzaCc7XG5cbmltcG9ydCB7IEF0b0RlZmF1bHRHb2pzRWRpdG9yIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2RlZmF1bHQtZ29qcy1lZGl0b3IubW9kZWwnO1xuaW1wb3J0IHsgQXRvR29qc0VkaXRvck1vZGVsIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2dvanMtZWRpdG9yLm1vZGVsJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXRvLWZsb3ctZGlhZ3JhbS1saWInLFxuICB0ZW1wbGF0ZVVybDogJy4vZmxvdy1kaWFncmFtLWxpYi5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2Zsb3ctZGlhZ3JhbS1saWIuY29tcG9uZW50LmNzcyddXG59KVxuZXhwb3J0IGNsYXNzIEF0b0Zsb3dEaWFncmFtTGliQ29tcG9uZW50IGV4dGVuZHMgQXRvRGVmYXVsdEdvanNFZGl0b3IgaW1wbGVtZW50cyBPbkluaXQgIHtcbiBAVmlld0NoaWxkKCdteURpYWdyYW1EaXZUZW1wJykgbXlEaWFncmFtRGl2VGVtcDogYW55O1xuICBfZGF0YTogYW55ID0gbnVsbDtcbiAgQElucHV0KCkgc2V0IGRhdGEodikge1xuICAgICAgdGhpcy5fZGF0YSA9IHY7XG4gICAgICB0aGlzLmxvYWREaWFncmFtKCk7XG4gIH1cblxuICBASW5wdXQoKSBpc0xvYWRpbmcgPSBmYWxzZTtcblxuICBnZXQgZGF0YSgpIHtcbiAgICAgIHJldHVybiB0aGlzLl9kYXRhO1xuICB9XG5cbiAgY29uc3RydWN0b3IoXG4gICAgX2VsUmVmOiBFbGVtZW50UmVmLFxuICApIHtcbiAgICAgIHN1cGVyKF9lbFJlZik7XG4gICAgICB0aGlzLmFjdGlvbnMgPSBbXG4gICAgICAgIEF0b0RlZmF1bHRHb2pzRWRpdG9yLkFDVElPTlNbQXRvRGVmYXVsdEdvanNFZGl0b3IuRU5VTV9BQ1RJT05TLkRFVEFJTFNdLFxuICAgICAgICBBdG9EZWZhdWx0R29qc0VkaXRvci5BQ1RJT05TW0F0b0RlZmF1bHRHb2pzRWRpdG9yLkVOVU1fQUNUSU9OUy5ERUxFVEVdLFxuICAgICAgXTtcbiAgICAgIHRoaXMudW5zdWJzY3JpYmVBbGwoKTtcbiAgfVxuXG5cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgIHRoaXMuYWRkU3Vic2NyaWJlcyhcbiAgICAgICAgICB0aGlzLmNvbW1pdHRlZFRyYW5zYWN0aW9uU3ViamVjdD8uc3Vic2NyaWJlKChlKSA9PiB7XG4gICAgICAgICAgICAgIHRoaXMub25Nb2RlbENoYW5nZUxpc3RlbmVyRXZlbnQuZW1pdChlKTtcbiAgICAgICAgICB9KSxcbiAgICAgICAgICAvLyB0aGlzLl9HalV0aWxzU2VydmljZT8udXBkYXRlTmFtZURhdGFCb3gkPy5zdWJzY3JpYmUoKHJzKSA9PiB7XG4gICAgICAgICAgLy8gICAgIGlmIChycyAmJiBycz8ua2V5KSB7XG4gICAgICAgICAgLy8gICAgICAgICBjb25zdCBub2RlID0gdGhpcy5teURpYWdyYW0uZmluZE5vZGVGb3JLZXkocnM/LmtleSk7XG4gICAgICAgICAgLy8gICAgICAgICB0aGlzLm15RGlhZ3JhbS5tb2RlbC5zZXREYXRhUHJvcGVydHkobm9kZT8uZGF0YSwgJ25hbWUnLCBycz8ubmFtZSk7XG4gICAgICAgICAgLy8gICAgIH1cbiAgICAgICAgICAvLyB9KSxcbiAgICAgICk7XG4gIH1cblxuICBsb2FkRGlhZ3JhbSgpIHtcbiAgICAgIHRoaXMuZWRpdG9yID0gbmV3IEF0b0dvanNFZGl0b3JNb2RlbCh7XG4gICAgICAgICAgY2xhc3M6ICdnby5HcmFwaExpbmtzTW9kZWwnLFxuICAgICAgICAgIG5vZGVDYXRlZ29yeVByb3BlcnR5OiAndHlwZScsXG4gICAgICAgICAgLi4udGhpcy5kYXRhLFxuICAgICAgfSk7XG4gIH1cblxuICBmaW5kTm9kZUZvcktleShrZXk6IG51bWJlciB8IHN0cmluZykge1xuICAgICAgdGhpcy5teURpYWdyYW0uc2VsZWN0KHRoaXMubXlEaWFncmFtLmZpbmROb2RlRm9yS2V5KGtleSkpO1xuICB9XG59XG5cblxuXG5cblxuIiwiPGRpdiBjbGFzcz1cInctMTAwIGgtMTAwIGdqLWZsb3ctZGlhZ3JhbS13cmFwcGVyXCIgYXRvTG9hZGluZyBbYXBwTG9hZGluZ109XCJkYXRhID09PSBudWxsIHx8ICEhaXNMb2FkaW5nXCI+XG4gICAgPGRpdiBjbGFzcz1cInctMTAwIGgtMTAwIGQtZmxleFwiPlxuICAgICAgICA8IS0tIDxidXR0b25cbiAgICAgICAgICAgIGlkPVwiYWN0aW9uTWVudUlkXCJcbiAgICAgICAgICAgIGNsYXNzPVwiaW52aXNpYmxlLWJ0blwiXG4gICAgICAgICAgICBtYXQtYnV0dG9uXG4gICAgICAgICAgICBbbWF0TWVudVRyaWdnZXJGb3JdPVwibWVudVwiXG4gICAgICAgICAgICAjbWVudVRyaWdnZXI9XCJtYXRNZW51VHJpZ2dlclwiXG4gICAgICAgID48L2J1dHRvbj5cbiAgICAgICAgPG1hdC1tZW51ICNtZW51PVwibWF0TWVudVwiPlxuICAgICAgICAgICAgPGJ1dHRvbiBtYXQtbWVudS1pdGVtICpuZ0Zvcj1cImxldCBpdGVtIG9mIGFjdGlvbnNcIiAoY2xpY2spPVwiaXRlbT8ub25DbGljaygkZXZlbnQpXCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBmbGV4LWdhcC0yXCI+XG4gICAgICAgICAgICAgICAgICAgIDxkaXY+PGkgY2xhc3M9XCJ7eyBpdGVtPy5pY29uQ2xhc3NOYW1lIH19XCI+PC9pPjwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8ZGl2Pnt7IGl0ZW0/Lm5hbWUgfX08L2Rpdj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICA8L21hdC1tZW51PiAtLT5cblxuICAgICAgICA8ZGl2ICNteURpYWdyYW1EaXZUZW1wIGNsYXNzPVwiZmxleC1ncm93LTEge3tteURpYWdyYW1EaXZ9fVwiPjwvZGl2PlxuICAgICAgICA8ZGl2ICpuZ0lmPVwiaW5pdGlhbE9wdGlvbnM/LmlzUmVhZE9ubHkgJiYgIWRhdGE/Lm5vZGVEYXRhQXJyYXk/Lmxlbmd0aFwiIGNsYXNzPVwiZW1wdHktZGF0YVwiPlxuICAgICAgICAgICAgPCEtLSA8bnotZW1wdHkgbnpOb3RGb3VuZEltYWdlPVwic2ltcGxlXCI+PC9uei1lbXB0eT4gLS0+XG4gICAgICAgICAgICBObyBEYXRhXG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuPC9kaXY+XG4iXX0=
@@ -0,0 +1,59 @@
1
+ import { Directive, Input } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class AtoLoadingDirective {
4
+ el;
5
+ renderer;
6
+ appLoading;
7
+ spinnerWrapper;
8
+ constructor(el, renderer) {
9
+ this.el = el;
10
+ this.renderer = renderer;
11
+ this.spinnerWrapper = this.renderer.createElement('div');
12
+ this.renderer.setStyle(this.spinnerWrapper, 'position', 'absolute');
13
+ this.renderer.setStyle(this.spinnerWrapper, 'top', '0');
14
+ this.renderer.setStyle(this.spinnerWrapper, 'left', '0');
15
+ this.renderer.setStyle(this.spinnerWrapper, 'width', '100%');
16
+ this.renderer.setStyle(this.spinnerWrapper, 'height', '100%');
17
+ this.renderer.setStyle(this.spinnerWrapper, 'display', 'flex');
18
+ this.renderer.setStyle(this.spinnerWrapper, 'align-items', 'center');
19
+ this.renderer.setStyle(this.spinnerWrapper, 'justify-content', 'center');
20
+ this.renderer.setStyle(this.spinnerWrapper, 'background', 'rgba(255, 255, 255, 0.7)');
21
+ this.renderer.setStyle(this.spinnerWrapper, 'z-index', '10');
22
+ const spinner = this.renderer.createElement('img');
23
+ this.renderer.setAttribute(spinner, 'src', 'data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiBzdHlsZT0ibWFyZ2luOiBhdXRvOyBiYWNrZ3JvdW5kOiByZ2IoMjU1LCAyNTUsIDI1NSk7IGRpc3BsYXk6IGJsb2NrOyBzaGFwZS1yZW5kZXJpbmc6IGF1dG87IGFuaW1hdGlvbi1wbGF5LXN0YXRlOiBydW5uaW5nOyBhbmltYXRpb24tZGVsYXk6IDBzOyIgd2lkdGg9Ijg4cHgiIGhlaWdodD0iODhweCIgdmlld0JveD0iMCAwIDEwMCAxMDAiIHByZXNlcnZlQXNwZWN0UmF0aW89InhNaWRZTWlkIj4KPGRlZnMgc3R5bGU9ImFuaW1hdGlvbi1wbGF5LXN0YXRlOiBydW5uaW5nOyBhbmltYXRpb24tZGVsYXk6IDBzOyI+CiAgPG1hc2sgaWQ9ImxkaW8tdmN5YjQ1YmFvdWstbWFzayIgc3R5bGU9ImFuaW1hdGlvbi1wbGF5LXN0YXRlOiBydW5uaW5nOyBhbmltYXRpb24tZGVsYXk6IDBzOyI+CiAgICA8cmVjdCB4PSIwIiB5PSIwIiB3aWR0aD0iMTAwIiBoZWlnaHQ9IjEwMCIgZmlsbD0id2hpdGUiIHN0eWxlPSJhbmltYXRpb24tcGxheS1zdGF0ZTogcnVubmluZzsgYW5pbWF0aW9uLWRlbGF5OiAwczsiPjwvcmVjdD4KICA8L21hc2s+CjwvZGVmcz4KPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEwMCIgaGVpZ2h0PSIxMDAiIGZpbGw9IiM1Y2FhZWEiIHN0eWxlPSJhbmltYXRpb24tcGxheS1zdGF0ZTogcnVubmluZzsgYW5pbWF0aW9uLWRlbGF5OiAwczsiPjwvcmVjdD4KPGcgbWFzaz0idXJsKCNsZGlvLXZjeWI0NWJhb3VrLW1hc2spIiBzdHlsZT0iYW5pbWF0aW9uLXBsYXktc3RhdGU6IHJ1bm5pbmc7IGFuaW1hdGlvbi1kZWxheTogMHM7Ij4KICA8cmVjdCB4PSItMTAwIiB5PSItMjUwIiB3aWR0aD0iMzAwIiBoZWlnaHQ9IjMwMCIgcng9IjkwIiByeT0iOTAiIGZpbGw9IiM4MmNlZmYiIG9wYWNpdHk9IjAuNCIgc3R5bGU9ImFuaW1hdGlvbi1wbGF5LXN0YXRlOiBydW5uaW5nOyBhbmltYXRpb24tZGVsYXk6IDBzOyI+CiAgICA8YW5pbWF0ZVRyYW5zZm9ybSBhdHRyaWJ1dGVOYW1lPSJ0cmFuc2Zvcm0iIHR5cGU9InJvdGF0ZSIgZHVyPSIxcyIgcmVwZWF0Q291bnQ9ImluZGVmaW5pdGUiIHZhbHVlcz0iMCA1MCAtMTAwOzkwIDUwIC0xMDAiIGtleVRpbWVzPSIwOzEiIHN0eWxlPSJhbmltYXRpb24tcGxheS1zdGF0ZTogcnVubmluZzsgYW5pbWF0aW9uLWRlbGF5OiAwczsiPjwvYW5pbWF0ZVRyYW5zZm9ybT4KICA8L3JlY3Q+CgogIDxyZWN0IHg9Ii0xMDAiIHk9Ii0yNjAiIHdpZHRoPSIzMDAiIGhlaWdodD0iMzAwIiByeD0iOTUiIHJ5PSI5NSIgZmlsbD0iI2E1ZGNmZiIgb3BhY2l0eT0iMC40IiBzdHlsZT0iYW5pbWF0aW9uLXBsYXktc3RhdGU6IHJ1bm5pbmc7IGFuaW1hdGlvbi1kZWxheTogMHM7Ij4KICAgIDxhbmltYXRlVHJhbnNmb3JtIGF0dHJpYnV0ZU5hbWU9InRyYW5zZm9ybSIgdHlwZT0icm90YXRlIiBkdXI9IjEuNTE1MTUxNTE1MTUxNTE1MXMiIHJlcGVhdENvdW50PSJpbmRlZmluaXRlIiB2YWx1ZXM9IjAgNTAgLTExMDs5MCA1MCAtMTEwIiBrZXlUaW1lcz0iMDsxIiBzdHlsZT0iYW5pbWF0aW9uLXBsYXktc3RhdGU6IHJ1bm5pbmc7IGFuaW1hdGlvbi1kZWxheTogMHM7Ij48L2FuaW1hdGVUcmFuc2Zvcm0+CiAgPC9yZWN0PgoKICA8cmVjdCB4PSItMTAwIiB5PSItMjcwIiB3aWR0aD0iMzAwIiBoZWlnaHQ9IjMwMCIgcng9IjEwMCIgcnk9IjEwMCIgZmlsbD0iI2ZmZmZmZiIgb3BhY2l0eT0iMC40IiBzdHlsZT0iYW5pbWF0aW9uLXBsYXktc3RhdGU6IHJ1bm5pbmc7IGFuaW1hdGlvbi1kZWxheTogMHM7Ij4KICAgIDxhbmltYXRlVHJhbnNmb3JtIGF0dHJpYnV0ZU5hbWU9InRyYW5zZm9ybSIgdHlwZT0icm90YXRlIiBkdXI9IjMuMDMwMzAzMDMwMzAzMDMwM3MiIHJlcGVhdENvdW50PSJpbmRlZmluaXRlIiB2YWx1ZXM9IjAgNTAgLTEyMDs5MCA1MCAtMTIwIiBrZXlUaW1lcz0iMDsxIiBzdHlsZT0iYW5pbWF0aW9uLXBsYXktc3RhdGU6IHJ1bm5pbmc7IGFuaW1hdGlvbi1kZWxheTogMHM7Ij48L2FuaW1hdGVUcmFuc2Zvcm0+CiAgPC9yZWN0PgoKPC9nPgo8IS0tIFtsZGlvXSBnZW5lcmF0ZWQgYnkgaHR0cHM6Ly9sb2FkaW5nLmlvLyAtLT48L3N2Zz4=');
24
+ this.renderer.setStyle(spinner, 'width', '30px');
25
+ this.renderer.setStyle(spinner, 'height', '30px');
26
+ this.renderer.setStyle(spinner, 'border-radius', '50%');
27
+ this.renderer.appendChild(this.spinnerWrapper, spinner);
28
+ }
29
+ ngOnChanges(changes) {
30
+ if (changes['appLoading']) {
31
+ if (this.appLoading) {
32
+ this.showSpinner();
33
+ }
34
+ else {
35
+ this.hideSpinner();
36
+ }
37
+ }
38
+ }
39
+ showSpinner() {
40
+ this.renderer.setStyle(this.el.nativeElement, 'position', 'relative');
41
+ this.renderer.appendChild(this.el.nativeElement, this.spinnerWrapper);
42
+ }
43
+ hideSpinner() {
44
+ if (this.el.nativeElement.contains(this.spinnerWrapper)) {
45
+ this.renderer.removeChild(this.el.nativeElement, this.spinnerWrapper);
46
+ }
47
+ }
48
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: AtoLoadingDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive });
49
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.7", type: AtoLoadingDirective, selector: "[atoLoading]", inputs: { appLoading: "appLoading" }, usesOnChanges: true, ngImport: i0 });
50
+ }
51
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: AtoLoadingDirective, decorators: [{
52
+ type: Directive,
53
+ args: [{
54
+ selector: '[atoLoading]'
55
+ }]
56
+ }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.Renderer2 }], propDecorators: { appLoading: [{
57
+ type: Input
58
+ }] } });
59
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXRvLWxvYWRpbmcuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYXRvLXdhdGVyLWxpYi9zcmMvbGliL2RpcmVjdGl2ZS9hdG8tbG9hZGluZy5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBeUIsS0FBSyxFQUE0QixNQUFNLGVBQWUsQ0FBQzs7QUFLbEcsTUFBTSxPQUFPLG1CQUFtQjtJQU1WO0lBQXdCO0lBSm5DLFVBQVUsQ0FBVTtJQUVyQixjQUFjLENBQWM7SUFFcEMsWUFBb0IsRUFBYyxFQUFVLFFBQW1CO1FBQTNDLE9BQUUsR0FBRixFQUFFLENBQVk7UUFBVSxhQUFRLEdBQVIsUUFBUSxDQUFXO1FBQzdELElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDekQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLGNBQWMsRUFBRSxVQUFVLEVBQUUsVUFBVSxDQUFDLENBQUM7UUFDcEUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLGNBQWMsRUFBRSxLQUFLLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFDeEQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLGNBQWMsRUFBRSxNQUFNLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFDekQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLGNBQWMsRUFBRSxPQUFPLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFDN0QsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLGNBQWMsRUFBRSxRQUFRLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFDOUQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLGNBQWMsRUFBRSxTQUFTLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFDL0QsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLGNBQWMsRUFBRSxhQUFhLEVBQUUsUUFBUSxDQUFDLENBQUM7UUFDckUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLGNBQWMsRUFBRSxpQkFBaUIsRUFBRSxRQUFRLENBQUMsQ0FBQztRQUN6RSxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsY0FBYyxFQUFFLFlBQVksRUFBRSwwQkFBMEIsQ0FBQyxDQUFDO1FBQ3RGLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxjQUFjLEVBQUUsU0FBUyxFQUFFLElBQUksQ0FBQyxDQUFDO1FBRTdELE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ25ELElBQUksQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFDLE9BQU8sRUFBRSxLQUFLLEVBQUUsdzBGQUF3MEYsQ0FBQyxDQUFDO1FBQ3IzRixJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQ2pELElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFDbEQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsT0FBTyxFQUFFLGVBQWUsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUV4RCxJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsY0FBYyxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQzFELENBQUM7SUFFRCxXQUFXLENBQUMsT0FBc0I7UUFDaEMsSUFBSSxPQUFPLENBQUMsWUFBWSxDQUFDLEVBQUUsQ0FBQztZQUMxQixJQUFJLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztnQkFDcEIsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ3JCLENBQUM7aUJBQU0sQ0FBQztnQkFDTixJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDckIsQ0FBQztRQUNILENBQUM7SUFDSCxDQUFDO0lBRU8sV0FBVztRQUNqQixJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsRUFBRSxVQUFVLEVBQUUsVUFBVSxDQUFDLENBQUM7UUFDdEUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLEVBQUUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO0lBQ3hFLENBQUM7SUFFTyxXQUFXO1FBQ2pCLElBQUksSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsRUFBRSxDQUFDO1lBQ3hELElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxFQUFFLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUN4RSxDQUFDO0lBQ0gsQ0FBQzt1R0EvQ1UsbUJBQW1COzJGQUFuQixtQkFBbUI7OzJGQUFuQixtQkFBbUI7a0JBSC9CLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGNBQWM7aUJBQ3pCO3VHQUdVLFVBQVU7c0JBQWxCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIFJlbmRlcmVyMiwgSW5wdXQsIE9uQ2hhbmdlcywgU2ltcGxlQ2hhbmdlcyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbYXRvTG9hZGluZ10nXG59KVxuZXhwb3J0IGNsYXNzIEF0b0xvYWRpbmdEaXJlY3RpdmUgaW1wbGVtZW50cyBPbkNoYW5nZXMge1xuXG4gIEBJbnB1dCgpIGFwcExvYWRpbmc6IGJvb2xlYW47XG5cbiAgcHJpdmF0ZSBzcGlubmVyV3JhcHBlcjogSFRNTEVsZW1lbnQ7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBlbDogRWxlbWVudFJlZiwgcHJpdmF0ZSByZW5kZXJlcjogUmVuZGVyZXIyKSB7XG4gICAgdGhpcy5zcGlubmVyV3JhcHBlciA9IHRoaXMucmVuZGVyZXIuY3JlYXRlRWxlbWVudCgnZGl2Jyk7XG4gICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZSh0aGlzLnNwaW5uZXJXcmFwcGVyLCAncG9zaXRpb24nLCAnYWJzb2x1dGUnKTtcbiAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKHRoaXMuc3Bpbm5lcldyYXBwZXIsICd0b3AnLCAnMCcpO1xuICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy5zcGlubmVyV3JhcHBlciwgJ2xlZnQnLCAnMCcpO1xuICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy5zcGlubmVyV3JhcHBlciwgJ3dpZHRoJywgJzEwMCUnKTtcbiAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKHRoaXMuc3Bpbm5lcldyYXBwZXIsICdoZWlnaHQnLCAnMTAwJScpO1xuICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy5zcGlubmVyV3JhcHBlciwgJ2Rpc3BsYXknLCAnZmxleCcpO1xuICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy5zcGlubmVyV3JhcHBlciwgJ2FsaWduLWl0ZW1zJywgJ2NlbnRlcicpO1xuICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy5zcGlubmVyV3JhcHBlciwgJ2p1c3RpZnktY29udGVudCcsICdjZW50ZXInKTtcbiAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKHRoaXMuc3Bpbm5lcldyYXBwZXIsICdiYWNrZ3JvdW5kJywgJ3JnYmEoMjU1LCAyNTUsIDI1NSwgMC43KScpO1xuICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy5zcGlubmVyV3JhcHBlciwgJ3otaW5kZXgnLCAnMTAnKTtcblxuICAgIGNvbnN0IHNwaW5uZXIgPSB0aGlzLnJlbmRlcmVyLmNyZWF0ZUVsZW1lbnQoJ2ltZycpO1xuICAgIHRoaXMucmVuZGVyZXIuc2V0QXR0cmlidXRlKHNwaW5uZXIsICdzcmMnLCAnZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQRDk0Yld3Z2RtVnljMmx2YmowaU1TNHdJaUJsYm1OdlpHbHVaejBpZFhSbUxUZ2lQejRLUEhOMlp5QjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaUlIaHRiRzV6T25oc2FXNXJQU0pvZEhSd09pOHZkM2QzTG5jekxtOXlaeTh4T1RrNUwzaHNhVzVySWlCemRIbHNaVDBpYldGeVoybHVPaUJoZFhSdk95QmlZV05yWjNKdmRXNWtPaUJ5WjJJb01qVTFMQ0F5TlRVc0lESTFOU2s3SUdScGMzQnNZWGs2SUdKc2IyTnJPeUJ6YUdGd1pTMXlaVzVrWlhKcGJtYzZJR0YxZEc4N0lHRnVhVzFoZEdsdmJpMXdiR0Y1TFhOMFlYUmxPaUJ5ZFc1dWFXNW5PeUJoYm1sdFlYUnBiMjR0WkdWc1lYazZJREJ6T3lJZ2QybGtkR2c5SWpnNGNIZ2lJR2hsYVdkb2REMGlPRGh3ZUNJZ2RtbGxkMEp2ZUQwaU1DQXdJREV3TUNBeE1EQWlJSEJ5WlhObGNuWmxRWE53WldOMFVtRjBhVzg5SW5oTmFXUlpUV2xrSWo0S1BHUmxabk1nYzNSNWJHVTlJbUZ1YVcxaGRHbHZiaTF3YkdGNUxYTjBZWFJsT2lCeWRXNXVhVzVuT3lCaGJtbHRZWFJwYjI0dFpHVnNZWGs2SURCek95SStDaUFnUEcxaGMyc2dhV1E5SW14a2FXOHRkbU41WWpRMVltRnZkV3N0YldGemF5SWdjM1I1YkdVOUltRnVhVzFoZEdsdmJpMXdiR0Y1TFhOMFlYUmxPaUJ5ZFc1dWFXNW5PeUJoYm1sdFlYUnBiMjR0WkdWc1lYazZJREJ6T3lJK0NpQWdJQ0E4Y21WamRDQjRQU0l3SWlCNVBTSXdJaUIzYVdSMGFEMGlNVEF3SWlCb1pXbG5hSFE5SWpFd01DSWdabWxzYkQwaWQyaHBkR1VpSUhOMGVXeGxQU0poYm1sdFlYUnBiMjR0Y0d4aGVTMXpkR0YwWlRvZ2NuVnVibWx1WnpzZ1lXNXBiV0YwYVc5dUxXUmxiR0Y1T2lBd2N6c2lQand2Y21WamRENEtJQ0E4TDIxaGMycytDand2WkdWbWN6NEtQSEpsWTNRZ2VEMGlNQ0lnZVQwaU1DSWdkMmxrZEdnOUlqRXdNQ0lnYUdWcFoyaDBQU0l4TURBaUlHWnBiR3c5SWlNMVkyRmhaV0VpSUhOMGVXeGxQU0poYm1sdFlYUnBiMjR0Y0d4aGVTMXpkR0YwWlRvZ2NuVnVibWx1WnpzZ1lXNXBiV0YwYVc5dUxXUmxiR0Y1T2lBd2N6c2lQand2Y21WamRENEtQR2NnYldGemF6MGlkWEpzS0NOc1pHbHZMWFpqZVdJME5XSmhiM1ZyTFcxaGMyc3BJaUJ6ZEhsc1pUMGlZVzVwYldGMGFXOXVMWEJzWVhrdGMzUmhkR1U2SUhKMWJtNXBibWM3SUdGdWFXMWhkR2x2Ymkxa1pXeGhlVG9nTUhNN0lqNEtJQ0E4Y21WamRDQjRQU0l0TVRBd0lpQjVQU0l0TWpVd0lpQjNhV1IwYUQwaU16QXdJaUJvWldsbmFIUTlJak13TUNJZ2NuZzlJamt3SWlCeWVUMGlPVEFpSUdacGJHdzlJaU00TW1ObFptWWlJRzl3WVdOcGRIazlJakF1TkNJZ2MzUjViR1U5SW1GdWFXMWhkR2x2Ymkxd2JHRjVMWE4wWVhSbE9pQnlkVzV1YVc1bk95QmhibWx0WVhScGIyNHRaR1ZzWVhrNklEQnpPeUkrQ2lBZ0lDQThZVzVwYldGMFpWUnlZVzV6Wm05eWJTQmhkSFJ5YVdKMWRHVk9ZVzFsUFNKMGNtRnVjMlp2Y20waUlIUjVjR1U5SW5KdmRHRjBaU0lnWkhWeVBTSXhjeUlnY21Wd1pXRjBRMjkxYm5ROUltbHVaR1ZtYVc1cGRHVWlJSFpoYkhWbGN6MGlNQ0ExTUNBdE1UQXdPemt3SURVd0lDMHhNREFpSUd0bGVWUnBiV1Z6UFNJd096RWlJSE4wZVd4bFBTSmhibWx0WVhScGIyNHRjR3hoZVMxemRHRjBaVG9nY25WdWJtbHVaenNnWVc1cGJXRjBhVzl1TFdSbGJHRjVPaUF3Y3pzaVBqd3ZZVzVwYldGMFpWUnlZVzV6Wm05eWJUNEtJQ0E4TDNKbFkzUStDZ29nSUR4eVpXTjBJSGc5SWkweE1EQWlJSGs5SWkweU5qQWlJSGRwWkhSb1BTSXpNREFpSUdobGFXZG9kRDBpTXpBd0lpQnllRDBpT1RVaUlISjVQU0k1TlNJZ1ptbHNiRDBpSTJFMVpHTm1aaUlnYjNCaFkybDBlVDBpTUM0MElpQnpkSGxzWlQwaVlXNXBiV0YwYVc5dUxYQnNZWGt0YzNSaGRHVTZJSEoxYm01cGJtYzdJR0Z1YVcxaGRHbHZiaTFrWld4aGVUb2dNSE03SWo0S0lDQWdJRHhoYm1sdFlYUmxWSEpoYm5ObWIzSnRJR0YwZEhKcFluVjBaVTVoYldVOUluUnlZVzV6Wm05eWJTSWdkSGx3WlQwaWNtOTBZWFJsSWlCa2RYSTlJakV1TlRFMU1UVXhOVEUxTVRVeE5URTFNWE1pSUhKbGNHVmhkRU52ZFc1MFBTSnBibVJsWm1sdWFYUmxJaUIyWVd4MVpYTTlJakFnTlRBZ0xURXhNRHM1TUNBMU1DQXRNVEV3SWlCclpYbFVhVzFsY3owaU1Ec3hJaUJ6ZEhsc1pUMGlZVzVwYldGMGFXOXVMWEJzWVhrdGMzUmhkR1U2SUhKMWJtNXBibWM3SUdGdWFXMWhkR2x2Ymkxa1pXeGhlVG9nTUhNN0lqNDhMMkZ1YVcxaGRHVlVjbUZ1YzJadmNtMCtDaUFnUEM5eVpXTjBQZ29LSUNBOGNtVmpkQ0I0UFNJdE1UQXdJaUI1UFNJdE1qY3dJaUIzYVdSMGFEMGlNekF3SWlCb1pXbG5hSFE5SWpNd01DSWdjbmc5SWpFd01DSWdjbms5SWpFd01DSWdabWxzYkQwaUkyWm1abVptWmlJZ2IzQmhZMmwwZVQwaU1DNDBJaUJ6ZEhsc1pUMGlZVzVwYldGMGFXOXVMWEJzWVhrdGMzUmhkR1U2SUhKMWJtNXBibWM3SUdGdWFXMWhkR2x2Ymkxa1pXeGhlVG9nTUhNN0lqNEtJQ0FnSUR4aGJtbHRZWFJsVkhKaGJuTm1iM0p0SUdGMGRISnBZblYwWlU1aGJXVTlJblJ5WVc1elptOXliU0lnZEhsd1pUMGljbTkwWVhSbElpQmtkWEk5SWpNdU1ETXdNekF6TURNd016QXpNRE13TTNNaUlISmxjR1ZoZEVOdmRXNTBQU0pwYm1SbFptbHVhWFJsSWlCMllXeDFaWE05SWpBZ05UQWdMVEV5TURzNU1DQTFNQ0F0TVRJd0lpQnJaWGxVYVcxbGN6MGlNRHN4SWlCemRIbHNaVDBpWVc1cGJXRjBhVzl1TFhCc1lYa3RjM1JoZEdVNklISjFibTVwYm1jN0lHRnVhVzFoZEdsdmJpMWtaV3hoZVRvZ01ITTdJajQ4TDJGdWFXMWhkR1ZVY21GdWMyWnZjbTArQ2lBZ1BDOXlaV04wUGdvS1BDOW5QZ284SVMwdElGdHNaR2x2WFNCblpXNWxjbUYwWldRZ1lua2dhSFIwY0hNNkx5OXNiMkZrYVc1bkxtbHZMeUF0TFQ0OEwzTjJaejQ9Jyk7XG4gICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZShzcGlubmVyLCAnd2lkdGgnLCAnMzBweCcpO1xuICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUoc3Bpbm5lciwgJ2hlaWdodCcsICczMHB4Jyk7XG4gICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZShzcGlubmVyLCAnYm9yZGVyLXJhZGl1cycsICc1MCUnKTtcblxuICAgIHRoaXMucmVuZGVyZXIuYXBwZW5kQ2hpbGQodGhpcy5zcGlubmVyV3JhcHBlciwgc3Bpbm5lcik7XG4gIH1cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgaWYgKGNoYW5nZXNbJ2FwcExvYWRpbmcnXSkge1xuICAgICAgaWYgKHRoaXMuYXBwTG9hZGluZykge1xuICAgICAgICB0aGlzLnNob3dTcGlubmVyKCk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLmhpZGVTcGlubmVyKCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBzaG93U3Bpbm5lcigpOiB2b2lkIHtcbiAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKHRoaXMuZWwubmF0aXZlRWxlbWVudCwgJ3Bvc2l0aW9uJywgJ3JlbGF0aXZlJyk7XG4gICAgdGhpcy5yZW5kZXJlci5hcHBlbmRDaGlsZCh0aGlzLmVsLm5hdGl2ZUVsZW1lbnQsIHRoaXMuc3Bpbm5lcldyYXBwZXIpO1xuICB9XG5cbiAgcHJpdmF0ZSBoaWRlU3Bpbm5lcigpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5lbC5uYXRpdmVFbGVtZW50LmNvbnRhaW5zKHRoaXMuc3Bpbm5lcldyYXBwZXIpKSB7XG4gICAgICB0aGlzLnJlbmRlcmVyLnJlbW92ZUNoaWxkKHRoaXMuZWwubmF0aXZlRWxlbWVudCwgdGhpcy5zcGlubmVyV3JhcHBlcik7XG4gICAgfVxuICB9XG5cbn1cbiJdfQ==
@@ -0,0 +1,33 @@
1
+ import { Directive, Input } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class AtoNgVarDirective {
4
+ templateRef;
5
+ vcRef;
6
+ set ngAtoVar(context) {
7
+ this.context.$implicit = this.context.ngAtoVar = context;
8
+ if (!this.hasView) {
9
+ this.vcRef.createEmbeddedView(this.templateRef, this.context);
10
+ this.hasView = true;
11
+ }
12
+ }
13
+ context = {
14
+ $implicit: null,
15
+ ngAtoVar: null,
16
+ };
17
+ hasView = false;
18
+ constructor(templateRef, vcRef) {
19
+ this.templateRef = templateRef;
20
+ this.vcRef = vcRef;
21
+ }
22
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: AtoNgVarDirective, deps: [{ token: i0.TemplateRef }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive });
23
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.7", type: AtoNgVarDirective, selector: "[ngAtoVar]", inputs: { ngAtoVar: "ngAtoVar" }, ngImport: i0 });
24
+ }
25
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: AtoNgVarDirective, decorators: [{
26
+ type: Directive,
27
+ args: [{
28
+ selector: '[ngAtoVar]',
29
+ }]
30
+ }], ctorParameters: () => [{ type: i0.TemplateRef }, { type: i0.ViewContainerRef }], propDecorators: { ngAtoVar: [{
31
+ type: Input
32
+ }] } });
33
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmctdmFyLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2F0by13YXRlci1saWIvc3JjL2xpYi9kaXJlY3RpdmUvbmctdmFyLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBaUMsTUFBTSxlQUFlLENBQUM7O0FBS2hGLE1BQU0sT0FBTyxpQkFBaUI7SUFxQlI7SUFBdUM7SUFwQjNELElBQ0ksUUFBUSxDQUFDLE9BQWdCO1FBQ3pCLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxHQUFHLE9BQU8sQ0FBQztRQUV6RCxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ2hCLElBQUksQ0FBQyxLQUFLLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDOUQsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUM7UUFDeEIsQ0FBQztJQUNMLENBQUM7SUFFTyxPQUFPLEdBR1g7UUFDQSxTQUFTLEVBQUUsSUFBSTtRQUNmLFFBQVEsRUFBRSxJQUFJO0tBQ2pCLENBQUM7SUFFTSxPQUFPLEdBQVksS0FBSyxDQUFDO0lBRWpDLFlBQW9CLFdBQTZCLEVBQVUsS0FBdUI7UUFBOUQsZ0JBQVcsR0FBWCxXQUFXLENBQWtCO1FBQVUsVUFBSyxHQUFMLEtBQUssQ0FBa0I7SUFBRyxDQUFDO3VHQXJCM0UsaUJBQWlCOzJGQUFqQixpQkFBaUI7OzJGQUFqQixpQkFBaUI7a0JBSDdCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLFlBQVk7aUJBQ3ZCOytHQUdLLFFBQVE7c0JBRFgsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgSW5wdXQsIFRlbXBsYXRlUmVmLCBWaWV3Q29udGFpbmVyUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tuZ0F0b1Zhcl0nLFxufSlcbmV4cG9ydCBjbGFzcyBBdG9OZ1ZhckRpcmVjdGl2ZSB7XG4gIEBJbnB1dCgpXG4gIHNldCBuZ0F0b1Zhcihjb250ZXh0OiB1bmtub3duKSB7XG4gICAgICB0aGlzLmNvbnRleHQuJGltcGxpY2l0ID0gdGhpcy5jb250ZXh0Lm5nQXRvVmFyID0gY29udGV4dDtcblxuICAgICAgaWYgKCF0aGlzLmhhc1ZpZXcpIHtcbiAgICAgICAgICB0aGlzLnZjUmVmLmNyZWF0ZUVtYmVkZGVkVmlldyh0aGlzLnRlbXBsYXRlUmVmLCB0aGlzLmNvbnRleHQpO1xuICAgICAgICAgIHRoaXMuaGFzVmlldyA9IHRydWU7XG4gICAgICB9XG4gIH1cblxuICBwcml2YXRlIGNvbnRleHQ6IHtcbiAgICAgICRpbXBsaWNpdDogdW5rbm93bjtcbiAgICAgIG5nQXRvVmFyOiB1bmtub3duO1xuICB9ID0ge1xuICAgICAgJGltcGxpY2l0OiBudWxsLFxuICAgICAgbmdBdG9WYXI6IG51bGwsXG4gIH07XG5cbiAgcHJpdmF0ZSBoYXNWaWV3OiBib29sZWFuID0gZmFsc2U7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSB0ZW1wbGF0ZVJlZjogVGVtcGxhdGVSZWY8YW55PiwgcHJpdmF0ZSB2Y1JlZjogVmlld0NvbnRhaW5lclJlZikge31cbn0iXX0=