ato-water-lib 0.0.34 → 0.0.37

Sign up to get free protection for your applications and to get access to all the features.
Files changed (82) hide show
  1. package/esm2020/ato-water-lib.mjs +5 -0
  2. package/esm2020/lib/ato-water-lib.component.mjs +19 -0
  3. package/esm2020/lib/ato-water-lib.module.mjs +49 -0
  4. package/esm2020/lib/ato-water-lib.service.mjs +14 -0
  5. package/esm2020/lib/components/asset-flow/asset-flow.component.mjs +123 -0
  6. package/esm2020/lib/components/asset-params-view/asset-params-view.component.mjs +26 -0
  7. package/esm2020/lib/components/flow-diagram-lib/flow-diagram-lib.component.mjs +54 -0
  8. package/esm2020/lib/constants/applicable-prefixes-const.mjs +441 -0
  9. package/esm2020/lib/constants/base64.const.mjs +5 -0
  10. package/esm2020/lib/constants/components-group-const.mjs +1629 -0
  11. package/esm2020/lib/constants/icon-base64.const.mjs +4 -0
  12. package/esm2020/lib/constants/key.const.mjs +4 -0
  13. package/esm2020/lib/constants/plant.constant.mjs +51 -0
  14. package/esm2020/lib/constants/value.const.mjs +782 -0
  15. package/esm2020/lib/directive/ato-loading.directive.mjs +55 -0
  16. package/esm2020/lib/directive/ng-var.directive.mjs +31 -0
  17. package/esm2020/lib/models/ato-asset-flow.model.mjs +2 -0
  18. package/esm2020/lib/models/default-gojs-editor.model.mjs +3227 -0
  19. package/esm2020/lib/models/gojs-data.model.mjs +6 -0
  20. package/esm2020/lib/models/gojs-editor.model.mjs +1754 -0
  21. package/esm2020/lib/services/utils/utils.service.mjs +133 -0
  22. package/esm2020/public-api.mjs +15 -0
  23. package/fesm2015/ato-water-lib.mjs +8208 -0
  24. package/fesm2015/ato-water-lib.mjs.map +1 -0
  25. package/fesm2020/ato-water-lib.mjs +8360 -0
  26. package/fesm2020/ato-water-lib.mjs.map +1 -0
  27. package/index.d.ts +5 -0
  28. package/lib/ato-water-lib.component.d.ts +5 -0
  29. package/lib/ato-water-lib.module.d.ts +13 -0
  30. package/lib/ato-water-lib.service.d.ts +6 -0
  31. package/lib/components/asset-flow/asset-flow.component.d.ts +35 -0
  32. package/lib/components/asset-params-view/asset-params-view.component.d.ts +10 -0
  33. package/lib/components/flow-diagram-lib/flow-diagram-lib.component.d.ts +16 -0
  34. package/lib/constants/applicable-prefixes-const.d.ts +162 -0
  35. package/lib/constants/base64.const.d.ts +3 -0
  36. package/lib/constants/components-group-const.d.ts +1264 -0
  37. package/lib/constants/icon-base64.const.d.ts +3 -0
  38. package/lib/constants/key.const.d.ts +1 -0
  39. package/lib/constants/plant.constant.d.ts +7 -0
  40. package/lib/constants/value.const.d.ts +71 -0
  41. package/lib/directive/ato-loading.directive.d.ts +14 -0
  42. package/lib/directive/ng-var.directive.d.ts +12 -0
  43. package/lib/models/ato-asset-flow.model.d.ts +5 -0
  44. package/lib/models/default-gojs-editor.model.d.ts +197 -0
  45. package/{src/lib/models/gojs-data.model.ts → lib/models/gojs-data.model.d.ts} +3 -3
  46. package/lib/models/gojs-editor.model.d.ts +436 -0
  47. package/lib/services/utils/utils.service.d.ts +24 -0
  48. package/package.json +22 -3
  49. package/{src/public-api.ts → public-api.d.ts} +0 -10
  50. package/ng-package.json +0 -11
  51. package/src/lib/ato-water-lib.component.spec.ts +0 -23
  52. package/src/lib/ato-water-lib.component.ts +0 -15
  53. package/src/lib/ato-water-lib.module.ts +0 -31
  54. package/src/lib/ato-water-lib.service.spec.ts +0 -16
  55. package/src/lib/ato-water-lib.service.ts +0 -9
  56. package/src/lib/components/asset-flow/asset-flow.component.html +0 -21
  57. package/src/lib/components/asset-flow/asset-flow.component.scss +0 -4
  58. package/src/lib/components/asset-flow/asset-flow.component.spec.ts +0 -23
  59. package/src/lib/components/asset-flow/asset-flow.component.ts +0 -137
  60. package/src/lib/components/asset-params-view/asset-params-view.component.html +0 -85
  61. package/src/lib/components/asset-params-view/asset-params-view.component.scss +0 -37
  62. package/src/lib/components/asset-params-view/asset-params-view.component.spec.ts +0 -23
  63. package/src/lib/components/asset-params-view/asset-params-view.component.ts +0 -16
  64. package/src/lib/components/flow-diagram-lib/flow-diagram-lib.component.css +0 -0
  65. package/src/lib/components/flow-diagram-lib/flow-diagram-lib.component.html +0 -25
  66. package/src/lib/components/flow-diagram-lib/flow-diagram-lib.component.ts +0 -69
  67. package/src/lib/constants/applicable-prefixes-const.ts +0 -452
  68. package/src/lib/constants/base64.const.ts +0 -5
  69. package/src/lib/constants/components-group-const.ts +0 -1637
  70. package/src/lib/constants/icon-base64.const.ts +0 -3
  71. package/src/lib/constants/icon-svg.const.ts +0 -8
  72. package/src/lib/constants/key.const.ts +0 -5
  73. package/src/lib/constants/plant.constant.ts +0 -52
  74. package/src/lib/constants/value.const.ts +0 -822
  75. package/src/lib/directive/ato-loading.directive.ts +0 -55
  76. package/src/lib/directive/ng-var.directive.ts +0 -28
  77. package/src/lib/models/default-gojs-editor.model.ts +0 -4906
  78. package/src/lib/models/gojs-editor.model.ts +0 -1901
  79. package/src/lib/services/utils/utils.service.ts +0 -141
  80. package/tsconfig.lib.json +0 -14
  81. package/tsconfig.lib.prod.json +0 -10
  82. package/tsconfig.spec.json +0 -14
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './public-api';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXRvLXdhdGVyLWxpYi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2F0by13YXRlci1saWIvc3JjL2F0by13YXRlci1saWIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9wdWJsaWMtYXBpJztcbiJdfQ==
@@ -0,0 +1,19 @@
1
+ import { Component } from '@angular/core';
2
+ import * as i0 from "@angular/core";
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: `
7
+ <p>
8
+ ato-water-lib works!
9
+ </p>
10
+ `, isInline: true });
11
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: AtoWaterLibComponent, decorators: [{
12
+ type: Component,
13
+ args: [{ selector: 'lib-ato-water-lib', template: `
14
+ <p>
15
+ ato-water-lib works!
16
+ </p>
17
+ ` }]
18
+ }] });
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXRvLXdhdGVyLWxpYi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9hdG8td2F0ZXItbGliL3NyYy9saWIvYXRvLXdhdGVyLWxpYi5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFZMUMsTUFBTSxPQUFPLG9CQUFvQjs7a0hBQXBCLG9CQUFvQjtzR0FBcEIsb0JBQW9CLHlEQVJyQjs7OztHQUlUOzRGQUlVLG9CQUFvQjtrQkFWaEMsU0FBUzsrQkFDRSxtQkFBbUIsWUFDbkI7Ozs7R0FJVCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdsaWItYXRvLXdhdGVyLWxpYicsXG4gIHRlbXBsYXRlOiBgXG4gICAgPHA+XG4gICAgICBhdG8td2F0ZXItbGliIHdvcmtzIVxuICAgIDwvcD5cbiAgYCxcbiAgc3R5bGVzOiBbXG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgQXRvV2F0ZXJMaWJDb21wb25lbnQge1xuXG59XG4iXX0=
@@ -0,0 +1,49 @@
1
+ import { NgModule } from '@angular/core';
2
+ import { AtoWaterLibComponent } from './ato-water-lib.component';
3
+ import { AtoFlowDiagramLibComponent } from './components/flow-diagram-lib/flow-diagram-lib.component';
4
+ import { AssetFlowComponent } from './components/asset-flow/asset-flow.component';
5
+ import { CommonModule } from '@angular/common';
6
+ import { AtoLoadingDirective } from './directive/ato-loading.directive';
7
+ import { AtoAssetParamsViewComponent } from './components/asset-params-view/asset-params-view.component';
8
+ import { AtoNgVarDirective } from './directive/ng-var.directive';
9
+ import * as i0 from "@angular/core";
10
+ export class AtoWaterLibModule {
11
+ }
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: [{
26
+ type: NgModule,
27
+ args: [{
28
+ declarations: [
29
+ AtoWaterLibComponent,
30
+ AtoFlowDiagramLibComponent,
31
+ AssetFlowComponent,
32
+ AtoLoadingDirective,
33
+ AtoAssetParamsViewComponent,
34
+ AtoNgVarDirective,
35
+ ],
36
+ imports: [
37
+ CommonModule,
38
+ ],
39
+ exports: [
40
+ AtoWaterLibComponent,
41
+ AtoFlowDiagramLibComponent,
42
+ AssetFlowComponent,
43
+ AtoLoadingDirective,
44
+ AtoAssetParamsViewComponent,
45
+ AtoNgVarDirective,
46
+ ]
47
+ }]
48
+ }] });
49
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXRvLXdhdGVyLWxpYi5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9hdG8td2F0ZXItbGliL3NyYy9saWIvYXRvLXdhdGVyLWxpYi5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNqRSxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSwwREFBMEQsQ0FBQztBQUN0RyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQztBQUNsRixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDeEUsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sNERBQTRELENBQUM7QUFDekcsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sOEJBQThCLENBQUM7O0FBdUJqRSxNQUFNLE9BQU8saUJBQWlCOzsrR0FBakIsaUJBQWlCO2dIQUFqQixpQkFBaUIsaUJBbkIxQixvQkFBb0I7UUFDcEIsMEJBQTBCO1FBQzFCLGtCQUFrQjtRQUNsQixtQkFBbUI7UUFDbkIsMkJBQTJCO1FBQzNCLGlCQUFpQixhQUdqQixZQUFZLGFBR1osb0JBQW9CO1FBQ3BCLDBCQUEwQjtRQUMxQixrQkFBa0I7UUFDbEIsbUJBQW1CO1FBQ25CLDJCQUEyQjtRQUMzQixpQkFBaUI7Z0hBR1IsaUJBQWlCLFlBWDFCLFlBQVk7NEZBV0gsaUJBQWlCO2tCQXJCN0IsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUU7d0JBQ1osb0JBQW9CO3dCQUNwQiwwQkFBMEI7d0JBQzFCLGtCQUFrQjt3QkFDbEIsbUJBQW1CO3dCQUNuQiwyQkFBMkI7d0JBQzNCLGlCQUFpQjtxQkFDbEI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLFlBQVk7cUJBQ2I7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLG9CQUFvQjt3QkFDcEIsMEJBQTBCO3dCQUMxQixrQkFBa0I7d0JBQ2xCLG1CQUFtQjt3QkFDbkIsMkJBQTJCO3dCQUMzQixpQkFBaUI7cUJBQ2xCO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEF0b1dhdGVyTGliQ29tcG9uZW50IH0gZnJvbSAnLi9hdG8td2F0ZXItbGliLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBBdG9GbG93RGlhZ3JhbUxpYkNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9mbG93LWRpYWdyYW0tbGliL2Zsb3ctZGlhZ3JhbS1saWIuY29tcG9uZW50JztcbmltcG9ydCB7IEFzc2V0Rmxvd0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9hc3NldC1mbG93L2Fzc2V0LWZsb3cuY29tcG9uZW50JztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBBdG9Mb2FkaW5nRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmUvYXRvLWxvYWRpbmcuZGlyZWN0aXZlJztcbmltcG9ydCB7IEF0b0Fzc2V0UGFyYW1zVmlld0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9hc3NldC1wYXJhbXMtdmlldy9hc3NldC1wYXJhbXMtdmlldy5jb21wb25lbnQnO1xuaW1wb3J0IHsgQXRvTmdWYXJEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZS9uZy12YXIuZGlyZWN0aXZlJztcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbXG4gICAgQXRvV2F0ZXJMaWJDb21wb25lbnQsXG4gICAgQXRvRmxvd0RpYWdyYW1MaWJDb21wb25lbnQsXG4gICAgQXNzZXRGbG93Q29tcG9uZW50LFxuICAgIEF0b0xvYWRpbmdEaXJlY3RpdmUsXG4gICAgQXRvQXNzZXRQYXJhbXNWaWV3Q29tcG9uZW50LFxuICAgIEF0b05nVmFyRGlyZWN0aXZlLFxuICBdLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICBdLFxuICBleHBvcnRzOiBbXG4gICAgQXRvV2F0ZXJMaWJDb21wb25lbnQsXG4gICAgQXRvRmxvd0RpYWdyYW1MaWJDb21wb25lbnQsXG4gICAgQXNzZXRGbG93Q29tcG9uZW50LFxuICAgIEF0b0xvYWRpbmdEaXJlY3RpdmUsXG4gICAgQXRvQXNzZXRQYXJhbXNWaWV3Q29tcG9uZW50LFxuICAgIEF0b05nVmFyRGlyZWN0aXZlLFxuICBdXG59KVxuZXhwb3J0IGNsYXNzIEF0b1dhdGVyTGliTW9kdWxlIHsgfVxuIl19
@@ -0,0 +1,14 @@
1
+ import { Injectable } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class AtoWaterLibService {
4
+ constructor() { }
5
+ }
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: [{
9
+ type: Injectable,
10
+ args: [{
11
+ providedIn: 'root'
12
+ }]
13
+ }], ctorParameters: function () { return []; } });
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXRvLXdhdGVyLWxpYi5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvYXRvLXdhdGVyLWxpYi9zcmMvbGliL2F0by13YXRlci1saWIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUszQyxNQUFNLE9BQU8sa0JBQWtCO0lBRTdCLGdCQUFnQixDQUFDOztnSEFGTixrQkFBa0I7b0hBQWxCLGtCQUFrQixjQUZqQixNQUFNOzRGQUVQLGtCQUFrQjtrQkFIOUIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIEF0b1dhdGVyTGliU2VydmljZSB7XG5cbiAgY29uc3RydWN0b3IoKSB7IH1cbn1cbiJdfQ==
@@ -0,0 +1,123 @@
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_ASSET_LAYERS, 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
+ constructor() {
16
+ this.onClickParamOfTableEvent = new EventEmitter();
17
+ this.isUseBase64 = false;
18
+ this.$ = go.GraphObject.make;
19
+ this.options = {
20
+ layout: this.$(go.LayeredDigraphLayout, {
21
+ // direction: 0,
22
+ }),
23
+ // isReadOnly: true,
24
+ };
25
+ this.flowData = {};
26
+ this.isResponsiveView = false;
27
+ }
28
+ onResize(event) {
29
+ // Now only Support Cooling Tower Responsive
30
+ if (this.timeoutResizeWindow) {
31
+ clearTimeout(this.timeoutResizeWindow);
32
+ }
33
+ this.timeoutResizeWindow = setTimeout(() => {
34
+ this.checkResponsiveView();
35
+ this.updateLocationReponsive();
36
+ }, 1000);
37
+ }
38
+ checkResponsiveView() {
39
+ if (this?.systemType ===
40
+ AtoGojsEditorModel.ENUM_TYPES.COOLING_TOWER) {
41
+ this.isResponsiveView = window.innerWidth < 1024;
42
+ }
43
+ else {
44
+ this.isResponsiveView = false;
45
+ }
46
+ }
47
+ updateLocationReponsive() {
48
+ if (!this.flowData?.nodeDataArray) {
49
+ this.flowData = AssetFlowComponent.getDefaultFlowData({
50
+ systemType: this.systemType,
51
+ isUseBase64: this.isUseBase64,
52
+ assetLayer: this.assetLayer
53
+ });
54
+ }
55
+ _.forEach(this.flowData?.nodeDataArray, (node) => {
56
+ node = _.merge(node, node[`extendedData${this.isResponsiveView ? 'Responsive' : ''}`]);
57
+ });
58
+ this.setFlowData(_.cloneDeep(this.flowData));
59
+ }
60
+ ngOnInit() {
61
+ this.checkResponsiveView();
62
+ this.updateLocationReponsive();
63
+ }
64
+ onClickParamOfTable($event) {
65
+ this.onClickParamOfTableEvent.emit($event);
66
+ }
67
+ static getDefaultFlowData(defaultData) {
68
+ const flowData = {
69
+ ..._.cloneDeep(ATO_COMPONENTS_GROUP_DATA)[defaultData?.systemType],
70
+ linkFromPortIdProperty: 'fromPort',
71
+ linkToPortIdProperty: 'toPort',
72
+ };
73
+ // assetLayer
74
+ flowData.nodeDataArray = _.filter(flowData.nodeDataArray, x => !x?.assetLayers || (x?.assetLayers && x?.assetLayers === (defaultData?.assetLayer ?? ATO_ASSET_LAYERS.FLOW)));
75
+ if (defaultData?.isUseBase64) {
76
+ const itemImageTemp = flowData?.nodeDataArray?.find((x) => x?.type === 'Image Template');
77
+ if (itemImageTemp) {
78
+ itemImageTemp.source = AtoGoJSBase64[defaultData?.systemType];
79
+ }
80
+ }
81
+ return flowData;
82
+ }
83
+ setFlowData(data) {
84
+ this.flowData = { ...data };
85
+ this.dataTableAssetParams = _.forEach(this.flowData?.nodeDataArray?.filter((e) => e?.type === AtoGojsEditorModel.ENUM_TEMPLATES.PARAM_TABLE && e?.assetLayers?.includes(this?.assetLayer ?? ATO_ASSET_LAYERS.FLOW)), x => {
86
+ if (!data?.isRefresh) {
87
+ x.isCollapsed = this.assetParamsViewTemp?.data?.find(y => y?.key === x?.key)?.isCollapsed;
88
+ }
89
+ });
90
+ }
91
+ }
92
+ AssetFlowComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: AssetFlowComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
93
+ AssetFlowComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: AssetFlowComponent, selector: "ato-asset-flow", inputs: { assetLayer: "assetLayer", selectedComponent: "selectedComponent", systemType: "systemType", isUseBase64: "isUseBase64", flowData: "flowData", isResponsiveView: "isResponsiveView", 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"] }] });
94
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: AssetFlowComponent, decorators: [{
95
+ type: Component,
96
+ 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"] }]
97
+ }], propDecorators: { assetLayer: [{
98
+ type: Input
99
+ }], gjFlowDiagramTemp: [{
100
+ type: ViewChild,
101
+ args: [AtoFlowDiagramLibComponent]
102
+ }], assetParamsViewTemp: [{
103
+ type: ViewChild,
104
+ args: [AtoAssetParamsViewComponent]
105
+ }], selectedComponent: [{
106
+ type: Input
107
+ }], systemType: [{
108
+ type: Input
109
+ }], onClickParamOfTableEvent: [{
110
+ type: Output
111
+ }], isUseBase64: [{
112
+ type: Input
113
+ }], flowData: [{
114
+ type: Input
115
+ }], isResponsiveView: [{
116
+ type: Input
117
+ }], getFlowDataCallBack: [{
118
+ type: Input
119
+ }], onResize: [{
120
+ type: HostListener,
121
+ args: ['window:resize', ['$event']]
122
+ }] } });
123
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNzZXQtZmxvdy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hdG8td2F0ZXItbGliL3NyYy9saWIvY29tcG9uZW50cy9hc3NldC1mbG93L2Fzc2V0LWZsb3cuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYXRvLXdhdGVyLWxpYi9zcmMvbGliL2NvbXBvbmVudHMvYXNzZXQtZmxvdy9hc3NldC1mbG93LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsWUFBWSxFQUNaLFlBQVksRUFDWixLQUFLLEVBRUwsTUFBTSxFQUNOLFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEtBQUssRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMzQixPQUFPLENBQUMsTUFBTSxRQUFRLENBQUM7QUFDdkIsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQzdELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSx5QkFBeUIsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBR3JHLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3BFLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQy9GLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLGdEQUFnRCxDQUFDOzs7Ozs7QUFPNUYsTUFBTSxPQUFPLGtCQUFrQjtJQUwvQjtRQWFZLDZCQUF3QixHQUNoQyxJQUFJLFlBQVksRUFBTyxDQUFDO1FBQ2pCLGdCQUFXLEdBQUcsS0FBSyxDQUFDO1FBQzdCLE1BQUMsR0FBRyxFQUFFLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQztRQUN4QixZQUFPLEdBQUc7WUFDUixNQUFNLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsb0JBQW9CLEVB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QkFHckMsbUJBQW1CO3NCQURsQixTQUFTO3VCQUFDLDJCQUEyQjtnQkFFN0IsaUJBQWlCO3NCQUF6QixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0ksd0JBQXdCO3NCQUFqQyxNQUFNO2dCQUVFLFdBQVc7c0JBQW5CLEtBQUs7Z0JBUUcsUUFBUTtzQkFBaEIsS0FBSztnQkFJRyxnQkFBZ0I7c0JBQXhCLEtBQUs7Z0JBQ0csbUJBQW1CO3NCQUEzQixLQUFLO2dCQUlOLFFBQVE7c0JBRFAsWUFBWTt1QkFBQyxlQUFlLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb21wb25lbnQsXG4gIEV2ZW50RW1pdHRlcixcbiAgSG9zdExpc3RlbmVyLFxuICBJbnB1dCxcbiAgT25Jbml0LFxuICBPdXRwdXQsXG4gIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgKiBhcyBnbyBmcm9tICdnb2pzJztcbmltcG9ydCBfIGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQgeyBBdG9Hb0pTQmFzZTY0IH0gZnJvbSAnLi4vLi4vY29uc3RhbnRzL2Jhc2U2NC5jb25zdCc7XG5pbXBvcnQgeyBBVE9fQVNTRVRfTEFZRVJTLCBBVE9fQ09NUE9ORU5UU19HUk9VUF9EQVRBIH0gZnJvbSAnLi4vLi4vY29uc3RhbnRzL2NvbXBvbmVudHMtZ3JvdXAtY29uc3QnO1xuaW1wb3J0IHsgQXRvRGVmYXVsdEZsb3dEYXRhIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2F0by1hc3NldC1mbG93Lm1vZGVsJztcbmltcG9ydCB7IEF0b0dvSlNEYXRhIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2dvanMtZGF0YS5tb2RlbCc7XG5pbXBvcnQgeyBBdG9Hb2pzRWRpdG9yTW9kZWwgfSBmcm9tICcuLi8uLi9tb2RlbHMvZ29qcy1lZGl0b3IubW9kZWwnO1xuaW1wb3J0IHsgQXRvQXNzZXRQYXJhbXNWaWV3Q29tcG9uZW50IH0gZnJvbSAnLi4vYXNzZXQtcGFyYW1zLXZpZXcvYXNzZXQtcGFyYW1zLXZpZXcuY29tcG9uZW50JztcbmltcG9ydCB7IEF0b0Zsb3dEaWFncmFtTGliQ29tcG9uZW50IH0gZnJvbSAnLi4vZmxvdy1kaWFncmFtLWxpYi9mbG93LWRpYWdyYW0tbGliLmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2F0by1hc3NldC1mbG93JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2Fzc2V0LWZsb3cuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9hc3NldC1mbG93LmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIEFzc2V0Rmxvd0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIEBJbnB1dCgpIGFzc2V0TGF5ZXI6IHN0cmluZztcbiAgQFZpZXdDaGlsZChBdG9GbG93RGlhZ3JhbUxpYkNvbXBvbmVudClcbiAgZ2pGbG93RGlhZ3JhbVRlbXA6IEF0b0Zsb3dEaWFncmFtTGliQ29tcG9uZW50O1xuICBAVmlld0NoaWxkKEF0b0Fzc2V0UGFyYW1zVmlld0NvbXBvbmVudClcbiAgYXNzZXRQYXJhbXNWaWV3VGVtcDogQXRvQXNzZXRQYXJhbXNWaWV3Q29tcG9uZW50O1xuICBASW5wdXQoKSBzZWxlY3RlZENvbXBvbmVudDogYW55O1xuICBASW5wdXQoKSBzeXN0ZW1UeXBlOiBBdG9Hb2pzRWRpdG9yTW9kZWwuRU5VTV9UWVBFUztcbiAgQE91dHB1dCgpIG9uQ2xpY2tQYXJhbU9mVGFibGVFdmVudDogRXZlbnRFbWl0dGVyPGFueT4gPVxuICAgIG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuICBASW5wdXQoKSBpc1VzZUJhc2U2NCA9IGZhbHNlO1xuICAkID0gZ28uR3JhcGhPYmplY3QubWFrZTtcbiAgb3B0aW9ucyA9IHtcbiAgICBsYXlvdXQ6IHRoaXMuJChnby5MYXllcmVkRGlncmFwaExheW91dCwge1xuICAgICAgLy8gZGlyZWN0aW9uOiAwLFxuICAgIH0pLFxuICAgIC8vIGlzUmVhZE9ubHk6IHRydWUsXG4gIH07XG4gIEBJbnB1dCgpIGZsb3dEYXRhOiBBdG9Hb0pTRGF0YSA9IHt9IGFzIEF0b0dvSlNEYXRhO1xuXG4gIC8vIFJlcG9uc2l2ZVxuICBkYXRhVGFibGVBc3NldFBhcmFtczogYW55W107XG4gIEBJbnB1dCgpIGlzUmVzcG9uc2l2ZVZpZXcgPSBmYWxzZTtcbiAgQElucHV0KCkgZ2V0Rmxvd0RhdGFDYWxsQmFjazogRnVuY3Rpb247XG5cbiAgdGltZW91dFJlc2l6ZVdpbmRvdztcbiAgQEhvc3RMaXN0ZW5lcignd2luZG93OnJlc2l6ZScsIFsnJGV2ZW50J10pXG4gIG9uUmVzaXplKGV2ZW50OiBFdmVudCk6IHZvaWQge1xuICAgIC8vIE5vdyBvbmx5IFN1cHBvcnQgQ29vbGluZyBUb3dlciBSZXNwb25zaXZlXG4gICAgaWYgKHRoaXMudGltZW91dFJlc2l6ZVdpbmRvdykge1xuICAgICAgY2xlYXJUaW1lb3V0KHRoaXMudGltZW91dFJlc2l6ZVdpbmRvdyk7XG4gICAgfVxuICAgIHRoaXMudGltZW91dFJlc2l6ZVdpbmRvdyA9IHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgdGhpcy5jaGVja1Jlc3BvbnNpdmVWaWV3KCk7XG4gICAgICB0aGlzLnVwZGF0ZUxvY2F0aW9uUmVwb25zaXZlKCk7XG4gICAgfSwgMTAwMCk7XG4gIH1cblxuICBjaGVja1Jlc3BvbnNpdmVWaWV3KCkge1xuICAgIGlmIChcbiAgICAgIHRoaXM/LnN5c3RlbVR5cGUgPT09XG4gICAgICBBdG9Hb2pzRWRpdG9yTW9kZWwuRU5VTV9UWVBFUy5DT09MSU5HX1RPV0VSXG4gICAgKSB7XG4gICAgICB0aGlzLmlzUmVzcG9uc2l2ZVZpZXcgPSB3aW5kb3cuaW5uZXJXaWR0aCA8IDEwMjQ7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuaXNSZXNwb25zaXZlVmlldyA9IGZhbHNlO1xuICAgIH1cbiAgfVxuXG4gIHVwZGF0ZUxvY2F0aW9uUmVwb25zaXZlKCkge1xuICAgIGlmICghdGhpcy5mbG93RGF0YT8ubm9kZURhdGFBcnJheSkge1xuICAgICAgdGhpcy5mbG93RGF0YSA9IEFzc2V0Rmxvd0NvbXBvbmVudC5nZXREZWZhdWx0Rmxvd0RhdGEoe1xuICAgICAgICBzeXN0ZW1UeXBlOiB0aGlzLnN5c3RlbVR5cGUsIFxuICAgICAgICBpc1VzZUJhc2U2NDogdGhpcy5pc1VzZUJhc2U2NCxcbiAgICAgICAgYXNzZXRMYXllcjogdGhpcy5hc3NldExheWVyXG4gICAgICB9KTtcbiAgICB9XG4gICAgXy5mb3JFYWNoKFxuICAgICAgdGhpcy5mbG93RGF0YT8ubm9kZURhdGFBcnJheSxcbiAgICAgIChub2RlOiBhbnkpID0+IHtcbiAgICAgICAgbm9kZSA9IF8ubWVyZ2Uobm9kZSwgbm9kZVtgZXh0ZW5kZWREYXRhJHt0aGlzLmlzUmVzcG9uc2l2ZVZpZXcgPyAnUmVzcG9uc2l2ZScgOiAnJ31gXSk7XG4gICAgICB9XG4gICAgKTtcbiAgICB0aGlzLnNldEZsb3dEYXRhKF8uY2xvbmVEZWVwKHRoaXMuZmxvd0RhdGEpKTtcbiAgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMuY2hlY2tSZXNwb25zaXZlVmlldygpO1xuICAgIHRoaXMudXBkYXRlTG9jYXRpb25SZXBvbnNpdmUoKTtcbiAgfVxuICBvbkNsaWNrUGFyYW1PZlRhYmxlKCRldmVudDogYW55KSB7XG4gICAgdGhpcy5vbkNsaWNrUGFyYW1PZlRhYmxlRXZlbnQuZW1pdCgkZXZlbnQpO1xuICB9XG5cbiAgc3RhdGljIGdldERlZmF1bHRGbG93RGF0YShkZWZhdWx0RGF0YTogQXRvRGVmYXVsdEZsb3dEYXRhKSB7XG4gICAgY29uc3QgZmxvd0RhdGEgPSB7XG4gICAgICAuLi5fLmNsb25lRGVlcChBVE9fQ09NUE9ORU5UU19HUk9VUF9EQVRBKVtcbiAgICAgICAgZGVmYXVsdERhdGE/LnN5c3RlbVR5cGVcbiAgICAgIF0sXG4gICAgICBsaW5rRnJvbVBvcnRJZFByb3BlcnR5OiAnZnJvbVBvcnQnLFxuICAgICAgbGlua1RvUG9ydElkUHJvcGVydHk6ICd0b1BvcnQnLFxuICAgIH07XG4gICAgLy8gYXNzZXRMYXllclxuICAgIGZsb3dEYXRhLm5vZGVEYXRhQXJyYXkgPSBfLmZpbHRlcihmbG93RGF0YS5ub2RlRGF0YUFycmF5LCB4ID0+ICF4Py5hc3NldExheWVycyB8fCAoeD8uYXNzZXRMYXllcnMgJiYgeD8uYXNzZXRMYXllcnMgPT09IChkZWZhdWx0RGF0YT8uYXNzZXRMYXllciA/PyBBVE9fQVNTRVRfTEFZRVJTLkZMT1cpKSlcbiAgICBpZiAoZGVmYXVsdERhdGE/LmlzVXNlQmFzZTY0KSB7XG4gICAgICBjb25zdCBpdGVtSW1hZ2VUZW1wID0gKGZsb3dEYXRhIGFzIEF0b0dvSlNEYXRhKT8ubm9kZURhdGFBcnJheT8uZmluZChcbiAgICAgICAgKHgpID0+IHg/LnR5cGUgPT09ICdJbWFnZSBUZW1wbGF0ZSdcbiAgICAgICk7XG4gICAgICBpZiAoaXRlbUltYWdlVGVtcCkge1xuICAgICAgICBpdGVtSW1hZ2VUZW1wLnNvdXJjZSA9IEF0b0dvSlNCYXNlNjRbZGVmYXVsdERhdGE/LnN5c3RlbVR5cGVdO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gZmxvd0RhdGE7XG4gIH1cblxuICBzZXRGbG93RGF0YShkYXRhOiBBdG9Hb0pTRGF0YSkge1xuICAgIHRoaXMuZmxvd0RhdGEgPSB7IC4uLmRhdGEgfTtcbiAgICB0aGlzLmRhdGFUYWJsZUFzc2V0UGFyYW1zID0gXy5mb3JFYWNoKFxuICAgICAgdGhpcy5mbG93RGF0YT8ubm9kZURhdGFBcnJheT8uZmlsdGVyKFxuICAgICAgICAoZSkgPT4gZT8udHlwZSA9PT0gQXRvR29qc0VkaXRvck1vZGVsLkVOVU1fVEVNUExBVEVTLlBBUkFNX1RBQkxFICYmIGU/LmFzc2V0TGF5ZXJzPy5pbmNsdWRlcyh0aGlzPy5hc3NldExheWVyID8/IEFUT19BU1NFVF9MQVlFUlMuRkxPVylcbiAgICAgICksIHggPT4ge1xuICAgICAgICBpZiAoIWRhdGE/LmlzUmVmcmVzaCkge1xuICAgICAgICAgIHguaXNDb2xsYXBzZWQgPSB0aGlzLmFzc2V0UGFyYW1zVmlld1RlbXA/LmRhdGE/LmZpbmQoeSA9PiB5Py5rZXkgPT09IHg/LmtleSk/LmlzQ29sbGFwc2VkO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgKTtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImgtMTAwIGQtZmxleCBmbGV4LWNvbHVtbiBmbGV4LWdhcC0zIGZsZXgtZ3Jvdy0xIG92ZXJmbG93LWF1dG8gcHgtMyBwYi0zXCI+XG4gIDxkaXYgY2xhc3M9XCJoLTEwMCBkLWZsZXggZmxleC1jb2x1bW5cIiBhdG9Mb2FkaW5nIFthcHBMb2FkaW5nXT1cImZsb3dEYXRhID09PSBudWxsXCI+XG4gICAgPGF0by1mbG93LWRpYWdyYW0tbGliXG4gICAgICAqbmdJZj1cImZsb3dEYXRhICE9PSBudWxsXCJcbiAgICAgICNnakZsb3dEaWFncmFtVGVtcFxuICAgICAgW2RhdGFdPVwiZmxvd0RhdGFcIlxuICAgICAgW2luaXRpYWxPcHRpb25zXT1cIm9wdGlvbnNcIlxuICAgICAgKG9uQ2xpa1BhcmFtT2ZUYWJsZSk9XCJvbkNsaWNrUGFyYW1PZlRhYmxlKCRldmVudClcIlxuICAgICAgW2NsYXNzXT1cIiEhaXNSZXNwb25zaXZlVmlldyA/ICdkaWFncmFtLXJlc3BvbnNpdmUtdmlldycgOiAnZmxleC1ncm93LTEnXCJcbiAgICA+PC9hdG8tZmxvdy1kaWFncmFtLWxpYj5cbiAgICA8ZGl2IGNsYXNzPVwibXQtMlwiICpuZ0lmPVwiaXNSZXNwb25zaXZlVmlld1wiPlxuICAgICAgPGF0by1hc3NldC1wYXJhbXMtdmlld1xuICAgICAgICAjYXNzZXRQYXJhbXNWaWV3VGVtcFxuICAgICAgICBbZGF0YV09XCJkYXRhVGFibGVBc3NldFBhcmFtc1wiXG4gICAgICAgIFtpc0VkaXRWaWV3XT1cInRydWVcIlxuICAgICAgICAoY2xpY2tQYXJhbVRhYmxlUm93KT1cIm9uQ2xpY2tQYXJhbU9mVGFibGUoJGV2ZW50KVwiXG4gICAgICA+PC9hdG8tYXNzZXQtcGFyYW1zLXZpZXc+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9kaXY+XG5cbiJdfQ==
@@ -0,0 +1,26 @@
1
+ import { Component, EventEmitter, Input, Output } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "@angular/common";
4
+ export class AtoAssetParamsViewComponent {
5
+ constructor() {
6
+ this.isEditView = false;
7
+ this.data = [];
8
+ this.clickParamTableRow = new EventEmitter();
9
+ }
10
+ onClickRowParam(itemTable) {
11
+ this.clickParamTableRow.emit(itemTable);
12
+ }
13
+ }
14
+ AtoAssetParamsViewComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: AtoAssetParamsViewComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
15
+ 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\">\n <div\n class=\"mr-auto font-size-13px text-truncate flex-grow-1\"\n [style.color]=\"itemTable?.color\"\n >\n {{ itemTable?.value }}\n </div>\n <svg *ngIf=\"isEditView\" 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}.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"] }] });
16
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: AtoAssetParamsViewComponent, decorators: [{
17
+ type: Component,
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\">\n <div\n class=\"mr-auto font-size-13px text-truncate flex-grow-1\"\n [style.color]=\"itemTable?.color\"\n >\n {{ itemTable?.value }}\n </div>\n <svg *ngIf=\"isEditView\" 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}.color-white{color:#fff}.flex-gap-2{gap:.5rem}.svg-15px{width:15px;height:15px;flex:0 0 15px}\n"] }]
19
+ }], propDecorators: { isEditView: [{
20
+ type: Input
21
+ }], data: [{
22
+ type: Input
23
+ }], clickParamTableRow: [{
24
+ type: Output
25
+ }] } });
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNzZXQtcGFyYW1zLXZpZXcuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYXRvLXdhdGVyLWxpYi9zcmMvbGliL2NvbXBvbmVudHMvYXNzZXQtcGFyYW1zLXZpZXcvYXNzZXQtcGFyYW1zLXZpZXcuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYXRvLXdhdGVyLWxpYi9zcmMvbGliL2NvbXBvbmVudHMvYXNzZXQtcGFyYW1zLXZpZXcvYXNzZXQtcGFyYW1zLXZpZXcuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQzs7O0FBT3ZFLE1BQU0sT0FBTywyQkFBMkI7SUFMeEM7UUFNVyxlQUFVLEdBQUcsS0FBSyxDQUFDO1FBQ25CLFNBQUksR0FBVSxFQUFFLENBQUM7UUFDaEIsdUJBQWtCLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztLQUtuRDtJQUhDLGVBQWUsQ0FBQyxTQUFTO1FBQ3JCLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDNUMsQ0FBQzs7eUhBUFUsMkJBQTJCOzZHQUEzQiwyQkFBMkIsd0tDUHhDLDZsSEFxRkE7NEZEOUVhLDJCQUEyQjtrQkFMdkMsU0FBUzsrQkFDRSx1QkFBdUI7OEJBS3hCLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNJLGtCQUFrQjtzQkFBM0IsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2F0by1hc3NldC1wYXJhbXMtdmlldycsXG4gIHRlbXBsYXRlVXJsOiAnLi9hc3NldC1wYXJhbXMtdmlldy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2Fzc2V0LXBhcmFtcy12aWV3LmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgQXRvQXNzZXRQYXJhbXNWaWV3Q29tcG9uZW50IHtcbiAgQElucHV0KCkgaXNFZGl0VmlldyA9IGZhbHNlO1xuICBASW5wdXQoKSBkYXRhOiBhbnlbXSA9IFtdO1xuICBAT3V0cHV0KCkgY2xpY2tQYXJhbVRhYmxlUm93ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIG9uQ2xpY2tSb3dQYXJhbShpdGVtVGFibGUpIHtcbiAgICAgIHRoaXMuY2xpY2tQYXJhbVRhYmxlUm93LmVtaXQoaXRlbVRhYmxlKTtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImQtZmxleCBmbGV4LWNvbHVtbiBmbGV4LWdhcC0yXCI+XG4gIDxkaXYgY2xhc3M9XCJcIiAqbmdGb3I9XCJsZXQgdGFibGVQYXJhbSBvZiBkYXRhXCI+XG4gICAgPG5nLXRlbXBsYXRlXG4gICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCJ0YWJsZVBhcmFtVGVtcGxhdGVcIlxuICAgICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cIntcbiAgICAgICAgZGF0YTogdGFibGVQYXJhbVxuICAgICAgfVwiXG4gICAgPjwvbmctdGVtcGxhdGU+XG4gIDwvZGl2PlxuPC9kaXY+XG5cbjxuZy10ZW1wbGF0ZSAjdGFibGVQYXJhbVRlbXBsYXRlIGxldC1kYXRhPVwiZGF0YVwiPlxuICA8ZGl2XG4gICAgY2xhc3M9XCJkLWZsZXggZmxleC1jb2x1bW4gYXNzZXQtcGFyYW0taXRlbSB3LTEwMFwiXG4gICAgW3N0eWxlLmJhY2tncm91bmRDb2xvcl09XCJkYXRhPy5jb2xvclwiXG4gID5cbiAgICA8ZGl2XG4gICAgICBjbGFzcz1cImQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIganVzdGlmeS1jb250ZW50LWJldHdlZW4gcHktMSBwbC0xIHByLTIgY3Vyc29yLXBvaW50ZXJcIlxuICAgICAgKGNsaWNrKT1cImRhdGEuaXNDb2xsYXBzZWQgPSAhZGF0YS5pc0NvbGxhcHNlZFwiXG4gICAgPlxuICAgICAgPGRpdiBjbGFzcz1cImZvbnQtc2l6ZS0xNHB4IGZsZXgtZ3Jvdy0xIHRleHQtdHJ1bmNhdGUgY29sb3Itd2hpdGVcIj5cbiAgICAgICAge3sgZGF0YT8udGl0bGUgfX1cbiAgICAgIDwvZGl2PlxuICAgICAgPHN2Z1xuICAgICAgICAqbmdJZj1cImRhdGEuaXNDb2xsYXBzZWRcIlxuICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgICAgICAgdmlld0JveD1cIjAgMCAzMjAgNTEyXCJcbiAgICAgICAgZmlsbD1cIiNGRkZGXCJcbiAgICAgICAgY2xhc3M9XCJmYS1zb2xpZCBmb250LXNpemUtMTRweCBjb2xvci13aGl0ZSBzdmctMTVweFwiXG4gICAgICA+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgZD1cIk0yNzguNiAyMzMuNGMxMi41IDEyLjUgMTIuNSAzMi44IDAgNDUuM2wtMTYwIDE2MGMtMTIuNSAxMi41LTMyLjggMTIuNS00NS4zIDBzLTEyLjUtMzIuOCAwLTQ1LjNMMjEwLjcgMjU2IDczLjQgMTE4LjZjLTEyLjUtMTIuNS0xMi41LTMyLjggMC00NS4zczMyLjgtMTIuNSA0NS4zIDBsMTYwIDE2MHpcIlxuICAgICAgICAvPlxuICAgICAgPC9zdmc+XG4gICAgICA8c3ZnXG4gICAgICAgICpuZ0lmPVwiIWRhdGEuaXNDb2xsYXBzZWRcIlxuICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgICAgICAgdmlld0JveD1cIjAgMCA0NDggNTEyXCJcbiAgICAgICAgZmlsbD1cIiNGRkZGXCJcbiAgICAgICAgY2xhc3M9XCJmYS1zb2xpZCBmb250LXNpemUtMTRweCBjb2xvci13aGl0ZSBzdmctMTVweFwiXG4gICAgICA+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgZD1cIk0yMDEuNCAzNzQuNmMxMi41IDEyLjUgMzIuOCAxMi41IDQ1LjMgMGwxNjAtMTYwYzEyLjUtMTIuNSAxMi41LTMyLjggMC00NS4zcy0zMi44LTEyLjUtNDUuMyAwTDIyNCAzMDYuNyA4Ni42IDE2OS40Yy0xMi41LTEyLjUtMzIuOC0xMi41LTQ1LjMgMHMtMTIuNSAzMi44IDAgNDUuM2wxNjAgMTYwelwiXG4gICAgICAgIC8+XG4gICAgICA8L3N2Zz5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwicHgtMSBwYi0xXCIgKm5nSWY9XCIhZGF0YS5pc0NvbGxhcHNlZFwiPlxuICAgICAgPGRpdlxuICAgICAgICBjbGFzcz1cInRhYmxlLWFzc2V0LXBhcmFtLXdyYXBwZXJcIlxuICAgICAgICBbc3R5bGUuYmFja2dyb3VuZENvbG9yXT1cImRhdGE/LmJnQ29sb3JcIlxuICAgICAgPlxuICAgICAgICA8dGFibGU+XG4gICAgICAgICAgPHRib2R5PlxuICAgICAgICAgICAgPHRyXG4gICAgICAgICAgICAgICpuZ0Zvcj1cImxldCBpdGVtVGFibGUgb2YgZGF0YT8uZGF0YVRhYmxlXCJcbiAgICAgICAgICAgICAgKGNsaWNrKT1cIm9uQ2xpY2tSb3dQYXJhbShpdGVtVGFibGUpXCJcbiAgICAgICAgICAgICAgY2xhc3M9XCJjdXJzb3ItcG9pbnRlclwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDx0ZFxuICAgICAgICAgICAgICAgIGNsYXNzPVwiZm9udC1zaXplLTEzcHhcIlxuICAgICAgICAgICAgICAgIFtzdHlsZS5ib3JkZXJDb2xvcl09XCJkYXRhPy5ib3JkZXJUYWJsZVwiXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICB7eyBpdGVtVGFibGU/Lm5hbWUgfX1cbiAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgICAgPHRkXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJmb250LXNpemUtMTNweFwiXG4gICAgICAgICAgICAgICAgW3N0eWxlLmJvcmRlckNvbG9yXT1cImRhdGE/LmJvcmRlclRhYmxlXCJcbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyXCI+XG4gICAgICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwibXItYXV0byBmb250LXNpemUtMTNweCB0ZXh0LXRydW5jYXRlIGZsZXgtZ3Jvdy0xXCJcbiAgICAgICAgICAgICAgICAgICAgW3N0eWxlLmNvbG9yXT1cIml0ZW1UYWJsZT8uY29sb3JcIlxuICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICB7eyBpdGVtVGFibGU/LnZhbHVlIH19XG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgIDxzdmcgKm5nSWY9XCJpc0VkaXRWaWV3XCIgY2xhc3M9XCJzdmctMTVweFwiIGZpbGw9XCIjMzMzMzMzXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgNTEyIDUxMlwiPjxwYXRoIGQ9XCJNNDQxIDU4LjlMNDUzLjEgNzFjOS40IDkuNCA5LjQgMjQuNiAwIDMzLjlMNDI0IDEzNC4xIDM3Ny45IDg4IDQwNyA1OC45YzkuNC05LjQgMjQuNi05LjQgMzMuOSAwek0yMDkuOCAyNTYuMkwzNDQgMTIxLjkgMzkwLjEgMTY4IDI1NS44IDMwMi4yYy0yLjkgMi45LTYuNSA1LTEwLjQgNi4xbC01OC41IDE2LjcgMTYuNy01OC41YzEuMS0zLjkgMy4yLTcuNSA2LjEtMTAuNHpNMzczLjEgMjVMMTc1LjggMjIyLjJjLTguNyA4LjctMTUgMTkuNC0xOC4zIDMxLjFsLTI4LjYgMTAwYy0yLjQgOC40LS4xIDE3LjQgNi4xIDIzLjZzMTUuMiA4LjUgMjMuNiA2LjFsMTAwLTI4LjZjMTEuOC0zLjQgMjIuNS05LjcgMzEuMS0xOC4zTDQ4NyAxMzguOWMyOC4xLTI4LjEgMjguMS03My43IDAtMTAxLjhMNDc0LjkgMjVDNDQ2LjgtMy4xIDQwMS4yLTMuMSAzNzMuMSAyNXpNODggNjRDMzkuNCA2NCAwIDEwMy40IDAgMTUyVjQyNGMwIDQ4LjYgMzkuNCA4OCA4OCA4OEgzNjBjNDguNiAwIDg4LTM5LjQgODgtODhWMzEyYzAtMTMuMy0xMC43LTI0LTI0LTI0cy0yNCAxMC43LTI0IDI0VjQyNGMwIDIyLjEtMTcuOSA0MC00MCA0MEg4OGMtMjIuMSAwLTQwLTE3LjktNDAtNDBWMTUyYzAtMjIuMSAxNy45LTQwIDQwLTQwSDIwMGMxMy4zIDAgMjQtMTAuNyAyNC0yNHMtMTAuNy0yNC0yNC0yNEg4OHpcIi8+PC9zdmc+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICA8L3RyPlxuICAgICAgICAgIDwvdGJvZHk+XG4gICAgICAgIDwvdGFibGU+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L25nLXRlbXBsYXRlPlxuIl19
@@ -0,0 +1,54 @@
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
+ set data(v) {
9
+ this._data = v;
10
+ this.loadDiagram();
11
+ }
12
+ get data() {
13
+ return this._data;
14
+ }
15
+ constructor(_elRef) {
16
+ super(_elRef);
17
+ this._data = null;
18
+ this.isLoading = false;
19
+ this.actions = [
20
+ AtoDefaultGojsEditor.ACTIONS[AtoDefaultGojsEditor.ENUM_ACTIONS.DETAILS],
21
+ AtoDefaultGojsEditor.ACTIONS[AtoDefaultGojsEditor.ENUM_ACTIONS.DELETE],
22
+ ];
23
+ this.unsubscribeAll();
24
+ }
25
+ ngOnInit() {
26
+ this.addSubscribes(this.committedTransactionSubject?.subscribe((e) => {
27
+ this.onModelChangeListenerEvent.emit(e);
28
+ }));
29
+ }
30
+ loadDiagram() {
31
+ this.editor = new AtoGojsEditorModel({
32
+ class: 'go.GraphLinksModel',
33
+ nodeCategoryProperty: 'type',
34
+ ...this.data,
35
+ });
36
+ }
37
+ findNodeForKey(key) {
38
+ this.myDiagram.select(this.myDiagram.findNodeForKey(key));
39
+ }
40
+ }
41
+ AtoFlowDiagramLibComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: AtoFlowDiagramLibComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
42
+ AtoFlowDiagramLibComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", 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 [id]=\"myDiagramDiv\" class=\"flex-grow-1\"></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
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: AtoFlowDiagramLibComponent, decorators: [{
44
+ type: Component,
45
+ 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 [id]=\"myDiagramDiv\" class=\"flex-grow-1\"></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" }]
46
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { myDiagramDivTemp: [{
47
+ type: ViewChild,
48
+ args: ['myDiagramDivTemp']
49
+ }], data: [{
50
+ type: Input
51
+ }], isLoading: [{
52
+ type: Input
53
+ }] } });
54
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmxvdy1kaWFncmFtLWxpYi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hdG8td2F0ZXItbGliL3NyYy9saWIvY29tcG9uZW50cy9mbG93LWRpYWdyYW0tbGliL2Zsb3ctZGlhZ3JhbS1saWIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYXRvLXdhdGVyLWxpYi9zcmMvbGliL2NvbXBvbmVudHMvZmxvdy1kaWFncmFtLWxpYi9mbG93LWRpYWdyYW0tbGliLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQWMsS0FBSyxFQUFVLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUdoRixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUM5RSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQzs7OztBQU9wRSxNQUFNLE9BQU8sMEJBQTJCLFNBQVEsb0JBQW9CO0lBR2xFLElBQWEsSUFBSSxDQUFDLENBQUM7UUFDZixJQUFJLENBQUMsS0FBSyxHQUFHLENBQUMsQ0FBQztRQUNmLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUN2QixDQUFDO0lBSUQsSUFBSSxJQUFJO1FBQ0osT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3RCLENBQUM7SUFFRCxZQUNFLE1BQWtCO1FBRWhCLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQztRQWZsQixVQUFLLEdBQVEsSUFBSSxDQUFDO1FBTVQsY0FBUyxHQUFHLEtBQUssQ0FBQztRQVV2QixJQUFJLENBQUMsT0FBTyxHQUFHO1lBQ2Isb0JBQW9CLENBQUMsT0FBTyxDQUFDLG9CQUFvQixDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUM7WUFDdkUsb0JBQW9CLENBQUMsT0FBTyxDQUFDLG9CQUFvQixDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUM7U0FDdkUsQ0FBQztRQUNGLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztJQUMxQixDQUFDO0lBSUQsUUFBUTtRQUNKLElBQUksQ0FBQyxhQUFhLENBQ2QsSUFBSSxDQUFDLDJCQUEyQixFQUFFLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFO1lBQzlDLElBQUksQ0FBQywwQkFBMEIsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDNUMsQ0FBQyxDQUFDLENBT0wsQ0FBQztJQUNOLENBQUM7SUFFRCxXQUFXO1FBQ1AsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLGtCQUFrQixDQUFDO1lBQ2pDLEtBQUssRUFBRSxvQkFBb0I7WUFDM0Isb0JBQW9CLEVBQUUsTUFBTTtZQUM1QixHQUFHLElBQUksQ0FBQyxJQUFJO1NBQ2YsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVELGNBQWMsQ0FBQyxHQUFvQjtRQUMvQixJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQzlELENBQUM7O3dIQW5EVSwwQkFBMEI7NEdBQTFCLDBCQUEwQiwyUENYdkMsd2pDQXlCQTs0RkRkYSwwQkFBMEI7a0JBTHRDLFNBQVM7K0JBQ0Usc0JBQXNCO2lHQUtGLGdCQUFnQjtzQkFBOUMsU0FBUzt1QkFBQyxrQkFBa0I7Z0JBRWYsSUFBSTtzQkFBaEIsS0FBSztnQkFLRyxTQUFTO3NCQUFqQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBJbnB1dCwgT25Jbml0LCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCBfIGZyb20gJ2xvZGFzaCc7XG5cbmltcG9ydCB7IEF0b0RlZmF1bHRHb2pzRWRpdG9yIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2RlZmF1bHQtZ29qcy1lZGl0b3IubW9kZWwnO1xuaW1wb3J0IHsgQXRvR29qc0VkaXRvck1vZGVsIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2dvanMtZWRpdG9yLm1vZGVsJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXRvLWZsb3ctZGlhZ3JhbS1saWInLFxuICB0ZW1wbGF0ZVVybDogJy4vZmxvdy1kaWFncmFtLWxpYi5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2Zsb3ctZGlhZ3JhbS1saWIuY29tcG9uZW50LmNzcyddXG59KVxuZXhwb3J0IGNsYXNzIEF0b0Zsb3dEaWFncmFtTGliQ29tcG9uZW50IGV4dGVuZHMgQXRvRGVmYXVsdEdvanNFZGl0b3IgaW1wbGVtZW50cyBPbkluaXQgIHtcbiBAVmlld0NoaWxkKCdteURpYWdyYW1EaXZUZW1wJykgbXlEaWFncmFtRGl2VGVtcDogYW55O1xuICBfZGF0YTogYW55ID0gbnVsbDtcbiAgQElucHV0KCkgc2V0IGRhdGEodikge1xuICAgICAgdGhpcy5fZGF0YSA9IHY7XG4gICAgICB0aGlzLmxvYWREaWFncmFtKCk7XG4gIH1cblxuICBASW5wdXQoKSBpc0xvYWRpbmcgPSBmYWxzZTtcblxuICBnZXQgZGF0YSgpIHtcbiAgICAgIHJldHVybiB0aGlzLl9kYXRhO1xuICB9XG5cbiAgY29uc3RydWN0b3IoXG4gICAgX2VsUmVmOiBFbGVtZW50UmVmLFxuICApIHtcbiAgICAgIHN1cGVyKF9lbFJlZik7XG4gICAgICB0aGlzLmFjdGlvbnMgPSBbXG4gICAgICAgIEF0b0RlZmF1bHRHb2pzRWRpdG9yLkFDVElPTlNbQXRvRGVmYXVsdEdvanNFZGl0b3IuRU5VTV9BQ1RJT05TLkRFVEFJTFNdLFxuICAgICAgICBBdG9EZWZhdWx0R29qc0VkaXRvci5BQ1RJT05TW0F0b0RlZmF1bHRHb2pzRWRpdG9yLkVOVU1fQUNUSU9OUy5ERUxFVEVdLFxuICAgICAgXTtcbiAgICAgIHRoaXMudW5zdWJzY3JpYmVBbGwoKTtcbiAgfVxuXG5cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgIHRoaXMuYWRkU3Vic2NyaWJlcyhcbiAgICAgICAgICB0aGlzLmNvbW1pdHRlZFRyYW5zYWN0aW9uU3ViamVjdD8uc3Vic2NyaWJlKChlKSA9PiB7XG4gICAgICAgICAgICAgIHRoaXMub25Nb2RlbENoYW5nZUxpc3RlbmVyRXZlbnQuZW1pdChlKTtcbiAgICAgICAgICB9KSxcbiAgICAgICAgICAvLyB0aGlzLl9HalV0aWxzU2VydmljZT8udXBkYXRlTmFtZURhdGFCb3gkPy5zdWJzY3JpYmUoKHJzKSA9PiB7XG4gICAgICAgICAgLy8gICAgIGlmIChycyAmJiBycz8ua2V5KSB7XG4gICAgICAgICAgLy8gICAgICAgICBjb25zdCBub2RlID0gdGhpcy5teURpYWdyYW0uZmluZE5vZGVGb3JLZXkocnM/LmtleSk7XG4gICAgICAgICAgLy8gICAgICAgICB0aGlzLm15RGlhZ3JhbS5tb2RlbC5zZXREYXRhUHJvcGVydHkobm9kZT8uZGF0YSwgJ25hbWUnLCBycz8ubmFtZSk7XG4gICAgICAgICAgLy8gICAgIH1cbiAgICAgICAgICAvLyB9KSxcbiAgICAgICk7XG4gIH1cblxuICBsb2FkRGlhZ3JhbSgpIHtcbiAgICAgIHRoaXMuZWRpdG9yID0gbmV3IEF0b0dvanNFZGl0b3JNb2RlbCh7XG4gICAgICAgICAgY2xhc3M6ICdnby5HcmFwaExpbmtzTW9kZWwnLFxuICAgICAgICAgIG5vZGVDYXRlZ29yeVByb3BlcnR5OiAndHlwZScsXG4gICAgICAgICAgLi4udGhpcy5kYXRhLFxuICAgICAgfSk7XG4gIH1cblxuICBmaW5kTm9kZUZvcktleShrZXk6IG51bWJlciB8IHN0cmluZykge1xuICAgICAgdGhpcy5teURpYWdyYW0uc2VsZWN0KHRoaXMubXlEaWFncmFtLmZpbmROb2RlRm9yS2V5KGtleSkpO1xuICB9XG59XG5cblxuXG5cblxuIiwiPGRpdiBjbGFzcz1cInctMTAwIGgtMTAwIGdqLWZsb3ctZGlhZ3JhbS13cmFwcGVyXCIgYXRvTG9hZGluZyBbYXBwTG9hZGluZ109XCJkYXRhID09PSBudWxsIHx8ICEhaXNMb2FkaW5nXCI+XG4gICAgPGRpdiBjbGFzcz1cInctMTAwIGgtMTAwIGQtZmxleFwiPlxuICAgICAgICA8IS0tIDxidXR0b25cbiAgICAgICAgICAgIGlkPVwiYWN0aW9uTWVudUlkXCJcbiAgICAgICAgICAgIGNsYXNzPVwiaW52aXNpYmxlLWJ0blwiXG4gICAgICAgICAgICBtYXQtYnV0dG9uXG4gICAgICAgICAgICBbbWF0TWVudVRyaWdnZXJGb3JdPVwibWVudVwiXG4gICAgICAgICAgICAjbWVudVRyaWdnZXI9XCJtYXRNZW51VHJpZ2dlclwiXG4gICAgICAgID48L2J1dHRvbj5cbiAgICAgICAgPG1hdC1tZW51ICNtZW51PVwibWF0TWVudVwiPlxuICAgICAgICAgICAgPGJ1dHRvbiBtYXQtbWVudS1pdGVtICpuZ0Zvcj1cImxldCBpdGVtIG9mIGFjdGlvbnNcIiAoY2xpY2spPVwiaXRlbT8ub25DbGljaygkZXZlbnQpXCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBmbGV4LWdhcC0yXCI+XG4gICAgICAgICAgICAgICAgICAgIDxkaXY+PGkgY2xhc3M9XCJ7eyBpdGVtPy5pY29uQ2xhc3NOYW1lIH19XCI+PC9pPjwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8ZGl2Pnt7IGl0ZW0/Lm5hbWUgfX08L2Rpdj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICA8L21hdC1tZW51PiAtLT5cblxuICAgICAgICA8ZGl2ICNteURpYWdyYW1EaXZUZW1wIFtpZF09XCJteURpYWdyYW1EaXZcIiBjbGFzcz1cImZsZXgtZ3Jvdy0xXCI+PC9kaXY+XG4gICAgICAgIDxkaXYgKm5nSWY9XCJpbml0aWFsT3B0aW9ucz8uaXNSZWFkT25seSAmJiAhZGF0YT8ubm9kZURhdGFBcnJheT8ubGVuZ3RoXCIgY2xhc3M9XCJlbXB0eS1kYXRhXCI+XG4gICAgICAgICAgICA8IS0tIDxuei1lbXB0eSBuek5vdEZvdW5kSW1hZ2U9XCJzaW1wbGVcIj48L256LWVtcHR5PiAtLT5cbiAgICAgICAgICAgIE5vIERhdGFcbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==