@mediusinc/mng-commons 0.2.16 → 0.2.19

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (100) hide show
  1. package/assets/i18n/en.json +4 -2
  2. package/assets/i18n/sl.json +19 -17
  3. package/esm2020/lib/api/models/filter-param.model.mjs +1 -1
  4. package/esm2020/lib/api/models/query-param.model.mjs +1 -1
  5. package/esm2020/lib/api/services/crud-api.abstract.service.mjs +17 -12
  6. package/esm2020/lib/components/action/action.component.mjs +32 -18
  7. package/esm2020/lib/components/action/editor/action-editor.component.mjs +182 -0
  8. package/esm2020/lib/components/action/index.mjs +2 -2
  9. package/esm2020/lib/components/action/models/action-execution.model.mjs +3 -3
  10. package/esm2020/lib/components/action/route/action-route.component.mjs +17 -12
  11. package/esm2020/lib/components/form/autocomplete/autocomplete.component.mjs +13 -11
  12. package/esm2020/lib/components/form/dropdown/dropdown.component.mjs +5 -7
  13. package/esm2020/lib/components/form/editor/form-editor.component.mjs +56 -4
  14. package/esm2020/lib/components/form/formly/fields/formly-field-autocomplete/formly-field-autocomplete.component.mjs +3 -3
  15. package/esm2020/lib/components/form/formly/fields/formly-field-dropdown/formly-field-dropdown.component.mjs +3 -3
  16. package/esm2020/lib/components/form/formly/fields/formly-field-input/formly-field-input.component.mjs +3 -3
  17. package/esm2020/lib/components/form/formly/fields/formly-field-lookup-dialog/formly-field-lookup-dialog.component.mjs +179 -0
  18. package/esm2020/lib/components/form/formly/fields/formly-field-table-dialog-form/formly-field-table-dialog-form.component.mjs +28 -9
  19. package/esm2020/lib/components/form/formly/fields/formly-field-table-dialog-multiselect/formly-field-table-dialog-multiselect.component.mjs +14 -10
  20. package/esm2020/lib/components/form/formly/fields/index.mjs +2 -1
  21. package/esm2020/lib/components/form/formly/wrappers/formly-field-wrapper/formly-field-wrapper.component.mjs +3 -3
  22. package/esm2020/lib/components/form/formly/wrappers/formly-table-wrapper/formly-table-wrapper.component.mjs +4 -3
  23. package/esm2020/lib/components/form/models/form-editor.event.mjs +28 -1
  24. package/esm2020/lib/components/layout/main-layout.component.mjs +1 -1
  25. package/esm2020/lib/components/layout/topbar.component.mjs +2 -4
  26. package/esm2020/lib/components/tableview/table/table.component.mjs +43 -20
  27. package/esm2020/lib/components/tableview/tableview.component.mjs +22 -15
  28. package/esm2020/lib/config/formly.config.mjs +7 -2
  29. package/esm2020/lib/data-providers/table.data-provider.mjs +17 -2
  30. package/esm2020/lib/descriptors/action.descriptor.mjs +112 -1
  31. package/esm2020/lib/descriptors/editor.descriptor.interface.mjs +2 -0
  32. package/esm2020/lib/descriptors/editor.descriptor.mjs +129 -28
  33. package/esm2020/lib/directives/component.directive.mjs +8 -3
  34. package/esm2020/lib/mng-commons.module.mjs +18 -11
  35. package/esm2020/lib/models/index.mjs +2 -1
  36. package/esm2020/lib/models/view-container.model.mjs +2 -0
  37. package/esm2020/lib/router/models/router.model.mjs +1 -1
  38. package/esm2020/lib/router/route-builder.mjs +75 -11
  39. package/esm2020/lib/services/action-executor.service.mjs +291 -0
  40. package/esm2020/lib/services/configuration.service.mjs +3 -3
  41. package/esm2020/lib/services/index.mjs +2 -2
  42. package/esm2020/lib/services/mng-view-container-component.service.mjs +35 -0
  43. package/esm2020/lib/services/tokens/default-setting.token.mjs +3 -0
  44. package/esm2020/lib/services/tokens/index.mjs +2 -1
  45. package/esm2020/lib/utils/editor-formly.util.mjs +14 -3
  46. package/esm2020/lib/utils/toast.util.mjs +15 -7
  47. package/esm2020/public-api.mjs +1 -2
  48. package/fesm2015/mediusinc-mng-commons.mjs +1738 -1012
  49. package/fesm2015/mediusinc-mng-commons.mjs.map +1 -1
  50. package/fesm2020/mediusinc-mng-commons.mjs +1578 -878
  51. package/fesm2020/mediusinc-mng-commons.mjs.map +1 -1
  52. package/lib/api/models/filter-param.model.d.ts +1 -1
  53. package/lib/api/models/query-param.model.d.ts +1 -1
  54. package/lib/api/services/crud-api.abstract.service.d.ts +9 -8
  55. package/lib/components/action/action.component.d.ts +12 -7
  56. package/lib/components/action/{dialog/action-dialog.component.d.ts → editor/action-editor.component.d.ts} +18 -12
  57. package/lib/components/action/index.d.ts +1 -1
  58. package/lib/components/action/models/action-execution.model.d.ts +3 -3
  59. package/lib/components/action/route/action-route.component.d.ts +6 -6
  60. package/lib/components/form/autocomplete/autocomplete.component.d.ts +3 -2
  61. package/lib/components/form/dropdown/dropdown.component.d.ts +4 -4
  62. package/lib/components/form/editor/form-editor.component.d.ts +7 -2
  63. package/lib/components/form/formly/fields/formly-field-lookup-dialog/formly-field-lookup-dialog.component.d.ts +45 -0
  64. package/lib/components/form/formly/fields/formly-field-table-dialog-form/formly-field-table-dialog-form.component.d.ts +2 -0
  65. package/lib/components/form/formly/fields/formly-field-table-dialog-multiselect/formly-field-table-dialog-multiselect.component.d.ts +1 -0
  66. package/lib/components/form/formly/fields/index.d.ts +1 -0
  67. package/lib/components/form/models/form-editor.event.d.ts +32 -0
  68. package/lib/components/layout/topbar.component.d.ts +2 -3
  69. package/lib/components/tableview/table/table.component.d.ts +14 -6
  70. package/lib/components/tableview/tableview.component.d.ts +10 -7
  71. package/lib/data-providers/table.data-provider.d.ts +9 -1
  72. package/lib/descriptors/action.descriptor.d.ts +41 -5
  73. package/lib/descriptors/editor.descriptor.d.ts +62 -19
  74. package/lib/descriptors/editor.descriptor.interface.d.ts +9 -0
  75. package/lib/directives/component.directive.d.ts +5 -4
  76. package/lib/mng-commons.module.d.ts +55 -54
  77. package/lib/models/index.d.ts +1 -0
  78. package/lib/models/view-container.model.d.ts +6 -0
  79. package/lib/router/models/router.model.d.ts +2 -2
  80. package/lib/router/route-builder.d.ts +18 -4
  81. package/lib/services/{action.service.d.ts → action-executor.service.d.ts} +19 -18
  82. package/lib/services/index.d.ts +1 -1
  83. package/lib/services/mng-view-container-component.service.d.ts +22 -0
  84. package/lib/services/tokens/default-setting.token.d.ts +2 -0
  85. package/lib/services/tokens/index.d.ts +1 -0
  86. package/lib/utils/toast.util.d.ts +5 -4
  87. package/package.json +1 -1
  88. package/public-api.d.ts +0 -1
  89. package/scss/mng-overrides/_layout_forms.scss +2 -0
  90. package/scss/mng-overrides/_mixins.scss +7 -0
  91. package/scss/mng-overrides/_theme_button.scss +58 -0
  92. package/scss/mng-overrides/_theme_dropdown.scss +17 -0
  93. package/scss/mng-overrides/_theme_styles.scss +1 -0
  94. package/scss/mng-overrides/_variables.scss +2 -0
  95. package/esm2020/lib/components/action/dialog/action-dialog.component.mjs +0 -151
  96. package/esm2020/lib/components/tableview/services/index.mjs +0 -2
  97. package/esm2020/lib/components/tableview/services/tableview.component.service.mjs +0 -21
  98. package/esm2020/lib/services/action.service.mjs +0 -273
  99. package/lib/components/tableview/services/index.d.ts +0 -1
  100. package/lib/components/tableview/services/tableview.component.service.d.ts +0 -14
@@ -19,8 +19,10 @@
19
19
  "success": "Success",
20
20
  "successMessage": "Operation successful.",
21
21
  "error": "Error",
22
- "errorMessage": "Unknown error{{errorMessage}}",
23
- "general": "General"
22
+ "errorMessage": "Unknown error {{errorMessage}}",
23
+ "general": "General",
24
+ "search": "Search {{item}}",
25
+ "select": "Select"
24
26
  },
25
27
  "languages": {
26
28
  "en": "English",
@@ -10,7 +10,7 @@
10
10
  "cancel": "Prekliči",
11
11
  "close": "Zapri",
12
12
  "add": "Dodaj",
13
- "addItem": "Dodaj {{item}}",
13
+ "addItem": "{{item}} - dodaj",
14
14
  "edit": "Uredi",
15
15
  "delete": "Izbriši",
16
16
  "export": "Izvozi",
@@ -19,8 +19,10 @@
19
19
  "success": "Uspešno",
20
20
  "successMessage": "Operacija uspešna.",
21
21
  "error": "Napaka",
22
- "errorMessage": "Neznana napaka{{errorMessage}}",
23
- "general": "Splošno"
22
+ "errorMessage": "Neznana napaka {{errorMessage}}",
23
+ "general": "Splošno",
24
+ "search": "Išči {{item}}",
25
+ "select": "Izberi"
24
26
  },
25
27
  "languages": {
26
28
  "en": "English",
@@ -43,11 +45,11 @@
43
45
  "invalidFormToastTitle": "Napaka v formi",
44
46
  "invalidFormToastMessage": "Forma ni veljavna, prosimo preverite vnesene informacije in jih popravite.",
45
47
  "validation": {
46
- "required": "{{field}} je zahtevano.",
47
- "minlength": "{{field}} mora biti vsaj {{min}} znakov dolgo.",
48
- "maxlength": "{{field}} mora biti največ {{max}} znakov dolgo.",
49
- "pattern": "{{field}} mora imeti obliko {{pattern}}.",
50
- "email": "{{field}} ni veljaven e-naslov."
48
+ "required": "{{field}} - vnos je obvezen.",
49
+ "minlength": "{{field}} - vons mora biti dolg vsaj {{min}} znakov.",
50
+ "maxlength": "{{field}} - vnos je lahko dolg največ {{max}} znakov.",
51
+ "pattern": "{{field}} - vnos mora imeti obliko {{pattern}}.",
52
+ "email": "{{field}} - vnos ni veljaven e-naslov."
51
53
  }
52
54
  },
53
55
  "mngAutocomplete": {
@@ -68,7 +70,7 @@
68
70
  },
69
71
  "details": {
70
72
  "dialog": {
71
- "title": "{{modelName}}: {{itemTitle}}"
73
+ "title": "{{modelName}} - podrobnosti: {{itemTitle}}"
72
74
  }
73
75
  },
74
76
  "add": {
@@ -82,33 +84,33 @@
82
84
  },
83
85
  "error": {
84
86
  "title": "Napaka",
85
- "message": "Napaka med dodajanjem {{itemTitle}}{{errorMessage}}"
87
+ "message": "Napaka pri shranjevanju '{{itemTitle}}'{{errorMessage}}"
86
88
  }
87
89
  },
88
90
  "edit": {
89
91
  "dialog": {
90
- "title": "Uredi {{modelName}}: {{itemTitle}}"
92
+ "title": "{{modelName}} - urejanje: {{itemTitle}}"
91
93
  },
92
94
  "success": {
93
- "title": "Uredil {{modelName}}",
94
- "message": "Spremembe {{itemTitle}} so uspešno shranjene."
95
+ "title": "Shranjeno",
96
+ "message": "Spremembe v '{{itemTitle}}' so uspešno shranjene."
95
97
  },
96
98
  "error": {
97
99
  "title": "Napaka",
98
- "message": "Napaka pri dodajanju {{functionTitle}}{{errorMessage}}"
100
+ "message": "Napaka pri shranjevanju '{{itemTitle}}'{{errorMessage}}"
99
101
  }
100
102
  },
101
103
  "delete": {
102
104
  "confirm": {
103
- "message": "Ali ste prepričani, da želite izbrisati {{itemTitle}}?"
105
+ "message": "Ali ste prepričani, da želite izbrisati '{{itemTitle}}'?"
104
106
  },
105
107
  "success": {
106
108
  "title": "Izbrisano",
107
- "message": "{{itemTitle}} je bil uspešno izbrisan."
109
+ "message": "'{{itemTitle}}' je bil uspešno izbrisan."
108
110
  },
109
111
  "error": {
110
112
  "title": "Napaka",
111
- "message": "Napaka med brisanjem {{itemTitle}}{{errorMessage}}"
113
+ "message": "Napaka pri brisanju '{{itemTitle}}'{{errorMessage}}"
112
114
  }
113
115
  },
114
116
  "mngPrime": {
@@ -31,4 +31,4 @@ MediusFilterParam.attributeTypeMap = [
31
31
  type: 'boolean'
32
32
  }
33
33
  ];
34
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLXBhcmFtLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9hcGkvbW9kZWxzL2ZpbHRlci1wYXJhbS5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxxSEFBcUg7QUFnQnJILE1BQU0sT0FBTyxpQkFBaUI7SUFxQ25CLE1BQU0sQ0FBQyxtQkFBbUI7UUFDN0IsT0FBTyxpQkFBaUIsQ0FBQyxnQkFBZ0IsQ0FBQztJQUM5QyxDQUFDOztBQTlCYSxrQ0FBZ0IsR0FBd0I7SUFDbEQ7UUFDSSxJQUFJLEVBQUUsVUFBVTtRQUNoQixRQUFRLEVBQUUsVUFBVTtRQUNwQixJQUFJLEVBQUUsUUFBUTtLQUNqQjtJQUNEO1FBQ0ksSUFBSSxFQUFFLGFBQWE7UUFDbkIsUUFBUSxFQUFFLGNBQWM7UUFDeEIsSUFBSSxFQUFFLFFBQVE7S0FDakI7SUFDRDtRQUNJLElBQUksRUFBRSxlQUFlO1FBQ3JCLFFBQVEsRUFBRSxpQkFBaUI7UUFDM0IsSUFBSSxFQUFFLFFBQVE7S0FDakI7SUFDRDtRQUNJLElBQUksRUFBRSxpQkFBaUI7UUFDdkIsUUFBUSxFQUFFLG1CQUFtQjtRQUM3QixJQUFJLEVBQUUsaUJBQWlCO0tBQzFCO0lBQ0Q7UUFDSSxJQUFJLEVBQUUsMEJBQTBCO1FBQ2hDLFFBQVEsRUFBRSw2QkFBNkI7UUFDdkMsSUFBSSxFQUFFLFNBQVM7S0FDbEI7Q0FDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyogdHNsaW50OmRpc2FibGU6bm8tYW5nbGUtYnJhY2tldC10eXBlLWFzc2VydGlvbiBuby10cmFpbGluZy13aGl0ZXNwYWNlIG1lbWJlci1vcmRlcmluZyBvYmplY3QtbGl0ZXJhbC1rZXktcXVvdGVzICovXG5cbi8qKlxuICogR2VuZXJhdGVkIEFQSVxuICogTm8gZGVzY3JpcHRpb24gcHJvdmlkZWQgKGdlbmVyYXRlZCBieSBPcGVuYXBpIEdlbmVyYXRvciBodHRwczovL2dpdGh1Yi5jb20vb3BlbmFwaXRvb2xzL29wZW5hcGktZ2VuZXJhdG9yKVxuICpcbiAqIFRoZSB2ZXJzaW9uIG9mIHRoZSBPcGVuQVBJIGRvY3VtZW50OiAxLjBcbiAqXG4gKlxuICogTk9URTogVGhpcyBjbGFzcyBpcyBhdXRvIGdlbmVyYXRlZCBieSBPcGVuQVBJIEdlbmVyYXRvciAoaHR0cHM6Ly9vcGVuYXBpLWdlbmVyYXRvci50ZWNoKS5cbiAqIGh0dHBzOi8vb3BlbmFwaS1nZW5lcmF0b3IudGVjaFxuICogRG8gbm90IGVkaXQgdGhlIGNsYXNzIG1hbnVhbGx5LlxuICovXG5pbXBvcnQge0F0dHJpYnV0ZURlZn0gZnJvbSAnLi9zZXJpYWxpemF0aW9uLm1vZGVsJztcbmltcG9ydCB7TWVkaXVzRmlsdGVyTWF0Y2hUeXBlfSBmcm9tICcuL2ZpbHRlci1tYXRjaC10eXBlLm1vZGVsJztcblxuZXhwb3J0IGNsYXNzIE1lZGl1c0ZpbHRlclBhcmFtIHtcbiAgICBwcm9wZXJ0eT86IHN0cmluZztcbiAgICBmaWx0ZXJWYWx1ZT86IG9iamVjdDtcbiAgICBmaWx0ZXJWYWx1ZVRvPzogb2JqZWN0O1xuICAgIGZpbHRlck1hdGNoVHlwZT86IE1lZGl1c0ZpbHRlck1hdGNoVHlwZTtcbiAgICBmaWx0ZXJNYXRjaENhc2VTZW5zaXRpdmU/OiBib29sZWFuO1xuXG4gICAgcHVibGljIHN0YXRpYyBkaXNjcmltaW5hdG9yPzogc3RyaW5nO1xuXG4gICAgcHVibGljIHN0YXRpYyBhdHRyaWJ1dGVUeXBlTWFwOiBBcnJheTxBdHRyaWJ1dGVEZWY+ID0gW1xuICAgICAgICB7XG4gICAgICAgICAgICBuYW1lOiAncHJvcGVydHknLFxuICAgICAgICAgICAgYmFzZU5hbWU6ICdwcm9wZXJ0eScsXG4gICAgICAgICAgICB0eXBlOiAnc3RyaW5nJ1xuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgICBuYW1lOiAnZmlsdGVyVmFsdWUnLFxuICAgICAgICAgICAgYmFzZU5hbWU6ICdmaWx0ZXJfdmFsdWUnLFxuICAgICAgICAgICAgdHlwZTogJ29iamVjdCdcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgICAgbmFtZTogJ2ZpbHRlclZhbHVlVG8nLFxuICAgICAgICAgICAgYmFzZU5hbWU6ICdmaWx0ZXJfdmFsdWVfdG8nLFxuICAgICAgICAgICAgdHlwZTogJ29iamVjdCdcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgICAgbmFtZTogJ2ZpbHRlck1hdGNoVHlwZScsXG4gICAgICAgICAgICBiYXNlTmFtZTogJ2ZpbHRlcl9tYXRjaF90eXBlJyxcbiAgICAgICAgICAgIHR5cGU6ICdGaWx0ZXJNYXRjaFR5cGUnXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICAgIG5hbWU6ICdmaWx0ZXJNYXRjaENhc2VTZW5zaXRpdmUnLFxuICAgICAgICAgICAgYmFzZU5hbWU6ICdmaWx0ZXJfbWF0Y2hfY2FzZV9zZW5zaXRpdmUnLFxuICAgICAgICAgICAgdHlwZTogJ2Jvb2xlYW4nXG4gICAgICAgIH1cbiAgICBdO1xuXG4gICAgcHVibGljIHN0YXRpYyBnZXRBdHRyaWJ1dGVUeXBlTWFwKCkge1xuICAgICAgICByZXR1cm4gTWVkaXVzRmlsdGVyUGFyYW0uYXR0cmlidXRlVHlwZU1hcDtcbiAgICB9XG59XG4iXX0=
34
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLXBhcmFtLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9hcGkvbW9kZWxzL2ZpbHRlci1wYXJhbS5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxxSEFBcUg7QUFnQnJILE1BQU0sT0FBTyxpQkFBaUI7SUFxQ25CLE1BQU0sQ0FBQyxtQkFBbUI7UUFDN0IsT0FBTyxpQkFBaUIsQ0FBQyxnQkFBZ0IsQ0FBQztJQUM5QyxDQUFDOztBQTlCYSxrQ0FBZ0IsR0FBd0I7SUFDbEQ7UUFDSSxJQUFJLEVBQUUsVUFBVTtRQUNoQixRQUFRLEVBQUUsVUFBVTtRQUNwQixJQUFJLEVBQUUsUUFBUTtLQUNqQjtJQUNEO1FBQ0ksSUFBSSxFQUFFLGFBQWE7UUFDbkIsUUFBUSxFQUFFLGNBQWM7UUFDeEIsSUFBSSxFQUFFLFFBQVE7S0FDakI7SUFDRDtRQUNJLElBQUksRUFBRSxlQUFlO1FBQ3JCLFFBQVEsRUFBRSxpQkFBaUI7UUFDM0IsSUFBSSxFQUFFLFFBQVE7S0FDakI7SUFDRDtRQUNJLElBQUksRUFBRSxpQkFBaUI7UUFDdkIsUUFBUSxFQUFFLG1CQUFtQjtRQUM3QixJQUFJLEVBQUUsaUJBQWlCO0tBQzFCO0lBQ0Q7UUFDSSxJQUFJLEVBQUUsMEJBQTBCO1FBQ2hDLFFBQVEsRUFBRSw2QkFBNkI7UUFDdkMsSUFBSSxFQUFFLFNBQVM7S0FDbEI7Q0FDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyogdHNsaW50OmRpc2FibGU6bm8tYW5nbGUtYnJhY2tldC10eXBlLWFzc2VydGlvbiBuby10cmFpbGluZy13aGl0ZXNwYWNlIG1lbWJlci1vcmRlcmluZyBvYmplY3QtbGl0ZXJhbC1rZXktcXVvdGVzICovXG5cbi8qKlxuICogR2VuZXJhdGVkIEFQSVxuICogTm8gZGVzY3JpcHRpb24gcHJvdmlkZWQgKGdlbmVyYXRlZCBieSBPcGVuYXBpIEdlbmVyYXRvciBodHRwczovL2dpdGh1Yi5jb20vb3BlbmFwaXRvb2xzL29wZW5hcGktZ2VuZXJhdG9yKVxuICpcbiAqIFRoZSB2ZXJzaW9uIG9mIHRoZSBPcGVuQVBJIGRvY3VtZW50OiAxLjBcbiAqXG4gKlxuICogTk9URTogVGhpcyBjbGFzcyBpcyBhdXRvIGdlbmVyYXRlZCBieSBPcGVuQVBJIEdlbmVyYXRvciAoaHR0cHM6Ly9vcGVuYXBpLWdlbmVyYXRvci50ZWNoKS5cbiAqIGh0dHBzOi8vb3BlbmFwaS1nZW5lcmF0b3IudGVjaFxuICogRG8gbm90IGVkaXQgdGhlIGNsYXNzIG1hbnVhbGx5LlxuICovXG5pbXBvcnQge01lZGl1c0ZpbHRlck1hdGNoVHlwZX0gZnJvbSAnLi9maWx0ZXItbWF0Y2gtdHlwZS5tb2RlbCc7XG5pbXBvcnQge0F0dHJpYnV0ZURlZn0gZnJvbSAnLi9zZXJpYWxpemF0aW9uLm1vZGVsJztcblxuZXhwb3J0IGNsYXNzIE1lZGl1c0ZpbHRlclBhcmFtIHtcbiAgICBwcm9wZXJ0eT86IHN0cmluZztcbiAgICBmaWx0ZXJWYWx1ZT86IG9iamVjdDtcbiAgICBmaWx0ZXJWYWx1ZVRvPzogb2JqZWN0O1xuICAgIGZpbHRlck1hdGNoVHlwZT86IE1lZGl1c0ZpbHRlck1hdGNoVHlwZTtcbiAgICBmaWx0ZXJNYXRjaENhc2VTZW5zaXRpdmU/OiBib29sZWFuO1xuXG4gICAgcHVibGljIHN0YXRpYyBkaXNjcmltaW5hdG9yPzogc3RyaW5nO1xuXG4gICAgcHVibGljIHN0YXRpYyBhdHRyaWJ1dGVUeXBlTWFwOiBBcnJheTxBdHRyaWJ1dGVEZWY+ID0gW1xuICAgICAgICB7XG4gICAgICAgICAgICBuYW1lOiAncHJvcGVydHknLFxuICAgICAgICAgICAgYmFzZU5hbWU6ICdwcm9wZXJ0eScsXG4gICAgICAgICAgICB0eXBlOiAnc3RyaW5nJ1xuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgICBuYW1lOiAnZmlsdGVyVmFsdWUnLFxuICAgICAgICAgICAgYmFzZU5hbWU6ICdmaWx0ZXJfdmFsdWUnLFxuICAgICAgICAgICAgdHlwZTogJ29iamVjdCdcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgICAgbmFtZTogJ2ZpbHRlclZhbHVlVG8nLFxuICAgICAgICAgICAgYmFzZU5hbWU6ICdmaWx0ZXJfdmFsdWVfdG8nLFxuICAgICAgICAgICAgdHlwZTogJ29iamVjdCdcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgICAgbmFtZTogJ2ZpbHRlck1hdGNoVHlwZScsXG4gICAgICAgICAgICBiYXNlTmFtZTogJ2ZpbHRlcl9tYXRjaF90eXBlJyxcbiAgICAgICAgICAgIHR5cGU6ICdGaWx0ZXJNYXRjaFR5cGUnXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICAgIG5hbWU6ICdmaWx0ZXJNYXRjaENhc2VTZW5zaXRpdmUnLFxuICAgICAgICAgICAgYmFzZU5hbWU6ICdmaWx0ZXJfbWF0Y2hfY2FzZV9zZW5zaXRpdmUnLFxuICAgICAgICAgICAgdHlwZTogJ2Jvb2xlYW4nXG4gICAgICAgIH1cbiAgICBdO1xuXG4gICAgcHVibGljIHN0YXRpYyBnZXRBdHRyaWJ1dGVUeXBlTWFwKCkge1xuICAgICAgICByZXR1cm4gTWVkaXVzRmlsdGVyUGFyYW0uYXR0cmlidXRlVHlwZU1hcDtcbiAgICB9XG59XG4iXX0=
@@ -66,4 +66,4 @@ MediusQueryParam.attributeTypeMap = [
66
66
  type: 'MediusQueryMode'
67
67
  }
68
68
  ];
69
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlcnktcGFyYW0ubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL2FwaS9tb2RlbHMvcXVlcnktcGFyYW0ubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEscUhBQXFIO0FBa0JySCxNQUFNLE9BQU8sZ0JBQWdCO0lBK0VsQixNQUFNLENBQUMsbUJBQW1CO1FBQzdCLE9BQU8sZ0JBQWdCLENBQUMsZ0JBQWdCLENBQUM7SUFDN0MsQ0FBQzs7QUFqRWEsaUNBQWdCLEdBQXdCO0lBQ2xEO1FBQ0ksSUFBSSxFQUFFLGNBQWM7UUFDcEIsUUFBUSxFQUFFLGVBQWU7UUFDekIsSUFBSSxFQUFFLGVBQWU7S0FDeEI7SUFDRDtRQUNJLElBQUksRUFBRSxTQUFTO1FBQ2YsUUFBUSxFQUFFLFVBQVU7UUFDcEIsSUFBSSxFQUFFLGdCQUFnQjtLQUN6QjtJQUNEO1FBQ0ksSUFBSSxFQUFFLGFBQWE7UUFDbkIsUUFBUSxFQUFFLGNBQWM7UUFDeEIsSUFBSSxFQUFFLFFBQVE7S0FDakI7SUFDRDtRQUNJLElBQUksRUFBRSxjQUFjO1FBQ3BCLFFBQVEsRUFBRSxnQkFBZ0I7UUFDMUIsSUFBSSxFQUFFLFFBQVE7S0FDakI7SUFDRDtRQUNJLElBQUksRUFBRSxjQUFjO1FBQ3BCLFFBQVEsRUFBRSxlQUFlO1FBQ3pCLElBQUksRUFBRSwwQkFBMEI7S0FDbkM7SUFDRDtRQUNJLElBQUksRUFBRSxnQkFBZ0I7UUFDdEIsUUFBUSxFQUFFLGtCQUFrQjtRQUM1QixJQUFJLEVBQUUsUUFBUTtLQUNqQjtJQUNEO1FBQ0ksSUFBSSxFQUFFLHFCQUFxQjtRQUMzQixRQUFRLEVBQUUsdUJBQXVCO1FBQ2pDLElBQUksRUFBRSxlQUFlO0tBQ3hCO0lBQ0Q7UUFDSSxJQUFJLEVBQUUsb0JBQW9CO1FBQzFCLFFBQVEsRUFBRSxxQkFBcUI7UUFDL0IsSUFBSSxFQUFFLGVBQWU7S0FDeEI7SUFDRDtRQUNJLElBQUksRUFBRSxrQkFBa0I7UUFDeEIsUUFBUSxFQUFFLHFCQUFxQjtRQUMvQixJQUFJLEVBQUUsU0FBUztLQUNsQjtJQUNEO1FBQ0ksSUFBSSxFQUFFLG1CQUFtQjtRQUN6QixRQUFRLEVBQUUsc0JBQXNCO1FBQ2hDLElBQUksRUFBRSxTQUFTO0tBQ2xCO0lBQ0Q7UUFDSSxJQUFJLEVBQUUsbUJBQW1CO1FBQ3pCLFFBQVEsRUFBRSxxQkFBcUI7UUFDL0IsSUFBSSxFQUFFLGVBQWU7S0FDeEI7SUFDRDtRQUNJLElBQUksRUFBRSxXQUFXO1FBQ2pCLFFBQVEsRUFBRSxZQUFZO1FBQ3RCLElBQUksRUFBRSxpQkFBaUI7S0FDMUI7Q0FDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyogdHNsaW50OmRpc2FibGU6bm8tYW5nbGUtYnJhY2tldC10eXBlLWFzc2VydGlvbiBuby10cmFpbGluZy13aGl0ZXNwYWNlIG1lbWJlci1vcmRlcmluZyBvYmplY3QtbGl0ZXJhbC1rZXktcXVvdGVzICovXG5cbi8qKlxuICogR2VuZXJhdGVkIEFQSVxuICogTm8gZGVzY3JpcHRpb24gcHJvdmlkZWQgKGdlbmVyYXRlZCBieSBPcGVuYXBpIEdlbmVyYXRvciBodHRwczovL2dpdGh1Yi5jb20vb3BlbmFwaXRvb2xzL29wZW5hcGktZ2VuZXJhdG9yKVxuICpcbiAqIFRoZSB2ZXJzaW9uIG9mIHRoZSBPcGVuQVBJIGRvY3VtZW50OiAxLjBcbiAqXG4gKlxuICogTk9URTogVGhpcyBjbGFzcyBpcyBhdXRvIGdlbmVyYXRlZCBieSBPcGVuQVBJIEdlbmVyYXRvciAoaHR0cHM6Ly9vcGVuYXBpLWdlbmVyYXRvci50ZWNoKS5cbiAqIGh0dHBzOi8vb3BlbmFwaS1nZW5lcmF0b3IudGVjaFxuICogRG8gbm90IGVkaXQgdGhlIGNsYXNzIG1hbnVhbGx5LlxuICovXG5cbmltcG9ydCB7QXR0cmlidXRlRGVmfSBmcm9tICcuL3NlcmlhbGl6YXRpb24ubW9kZWwnO1xuaW1wb3J0IHtNZWRpdXNGaWx0ZXJQYXJhbX0gZnJvbSAnLi9maWx0ZXItcGFyYW0ubW9kZWwnO1xuaW1wb3J0IHtNZWRpdXNRdWVyeU1vZGV9IGZyb20gJy4vcXVlcnktbW9kZS5tb2RlbCc7XG5cbmV4cG9ydCBjbGFzcyBNZWRpdXNRdWVyeVBhcmFtIHtcbiAgICBzb3J0UHJvcGVydHk/OiBBcnJheTxzdHJpbmc+O1xuICAgIHNvcnRBc2M/OiBBcnJheTxib29sZWFuPjtcbiAgICBpdGVtc09mZnNldD86IG51bWJlcjtcbiAgICBpdGVtc1BlclBhZ2U/OiBudW1iZXI7XG4gICAgZmlsdGVyUGFyYW1zPzogQXJyYXk8TWVkaXVzRmlsdGVyUGFyYW0+O1xuICAgIGZpbHRlckFsbFBhcmFtPzogc3RyaW5nO1xuICAgIGZpbHRlckFsbFByb3BlcnRpZXM/OiBBcnJheTxzdHJpbmc+O1xuICAgIHZhbGlkYXRlUHJvcGVydGllcz86IEFycmF5PHN0cmluZz47XG4gICAgc2VsZWN0SW5Ud29TdGVwcz86IGJvb2xlYW47XG4gICAgc29ydEVudW1CeU9yZGluYWw/OiBib29sZWFuO1xuICAgIGdyb3VwQnlQcm9wZXJ0aWVzPzogQXJyYXk8c3RyaW5nPjtcbiAgICBxdWVyeU1vZGU/OiBNZWRpdXNRdWVyeU1vZGU7XG5cbiAgICBwdWJsaWMgc3RhdGljIGRpc2NyaW1pbmF0b3I/OiBzdHJpbmc7XG5cbiAgICBwdWJsaWMgc3RhdGljIGF0dHJpYnV0ZVR5cGVNYXA6IEFycmF5PEF0dHJpYnV0ZURlZj4gPSBbXG4gICAgICAgIHtcbiAgICAgICAgICAgIG5hbWU6ICdzb3J0UHJvcGVydHknLFxuICAgICAgICAgICAgYmFzZU5hbWU6ICdzb3J0X3Byb3BlcnR5JyxcbiAgICAgICAgICAgIHR5cGU6ICdBcnJheTxzdHJpbmc+J1xuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgICBuYW1lOiAnc29ydEFzYycsXG4gICAgICAgICAgICBiYXNlTmFtZTogJ3NvcnRfYXNjJyxcbiAgICAgICAgICAgIHR5cGU6ICdBcnJheTxib29sZWFuPidcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgICAgbmFtZTogJ2l0ZW1zT2Zmc2V0JyxcbiAgICAgICAgICAgIGJhc2VOYW1lOiAnaXRlbXNfb2Zmc2V0JyxcbiAgICAgICAgICAgIHR5cGU6ICdudW1iZXInXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICAgIG5hbWU6ICdpdGVtc1BlclBhZ2UnLFxuICAgICAgICAgICAgYmFzZU5hbWU6ICdpdGVtc19wZXJfcGFnZScsXG4gICAgICAgICAgICB0eXBlOiAnbnVtYmVyJ1xuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgICBuYW1lOiAnZmlsdGVyUGFyYW1zJyxcbiAgICAgICAgICAgIGJhc2VOYW1lOiAnZmlsdGVyX3BhcmFtcycsXG4gICAgICAgICAgICB0eXBlOiAnQXJyYXk8TWVkaXVzRmlsdGVyUGFyYW0+J1xuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgICBuYW1lOiAnZmlsdGVyQWxsUGFyYW0nLFxuICAgICAgICAgICAgYmFzZU5hbWU6ICdmaWx0ZXJfYWxsX3BhcmFtJyxcbiAgICAgICAgICAgIHR5cGU6ICdzdHJpbmcnXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICAgIG5hbWU6ICdmaWx0ZXJBbGxQcm9wZXJ0aWVzJyxcbiAgICAgICAgICAgIGJhc2VOYW1lOiAnZmlsdGVyX2FsbF9wcm9wZXJ0aWVzJyxcbiAgICAgICAgICAgIHR5cGU6ICdBcnJheTxzdHJpbmc+J1xuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgICBuYW1lOiAndmFsaWRhdGVQcm9wZXJ0aWVzJyxcbiAgICAgICAgICAgIGJhc2VOYW1lOiAndmFsaWRhdGVfcHJvcGVydGllcycsXG4gICAgICAgICAgICB0eXBlOiAnQXJyYXk8c3RyaW5nPidcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgICAgbmFtZTogJ3NlbGVjdEluVHdvU3RlcHMnLFxuICAgICAgICAgICAgYmFzZU5hbWU6ICdzZWxlY3RfaW5fdHdvX3N0ZXBzJyxcbiAgICAgICAgICAgIHR5cGU6ICdib29sZWFuJ1xuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgICBuYW1lOiAnc29ydEVudW1CeU9yZGluYWwnLFxuICAgICAgICAgICAgYmFzZU5hbWU6ICdzb3J0X2VudW1fYnlfb3JkaW5hbCcsXG4gICAgICAgICAgICB0eXBlOiAnYm9vbGVhbidcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgICAgbmFtZTogJ2dyb3VwQnlQcm9wZXJ0aWVzJyxcbiAgICAgICAgICAgIGJhc2VOYW1lOiAnZ3JvdXBfYnlfcHJvcGVydGllcycsXG4gICAgICAgICAgICB0eXBlOiAnQXJyYXk8c3RyaW5nPidcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgICAgbmFtZTogJ3F1ZXJ5TW9kZScsXG4gICAgICAgICAgICBiYXNlTmFtZTogJ3F1ZXJ5X21vZGUnLFxuICAgICAgICAgICAgdHlwZTogJ01lZGl1c1F1ZXJ5TW9kZSdcbiAgICAgICAgfVxuICAgIF07XG5cbiAgICBwdWJsaWMgc3RhdGljIGdldEF0dHJpYnV0ZVR5cGVNYXAoKSB7XG4gICAgICAgIHJldHVybiBNZWRpdXNRdWVyeVBhcmFtLmF0dHJpYnV0ZVR5cGVNYXA7XG4gICAgfVxufVxuIl19
69
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlcnktcGFyYW0ubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL2FwaS9tb2RlbHMvcXVlcnktcGFyYW0ubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEscUhBQXFIO0FBaUJySCxNQUFNLE9BQU8sZ0JBQWdCO0lBK0VsQixNQUFNLENBQUMsbUJBQW1CO1FBQzdCLE9BQU8sZ0JBQWdCLENBQUMsZ0JBQWdCLENBQUM7SUFDN0MsQ0FBQzs7QUFqRWEsaUNBQWdCLEdBQXdCO0lBQ2xEO1FBQ0ksSUFBSSxFQUFFLGNBQWM7UUFDcEIsUUFBUSxFQUFFLGVBQWU7UUFDekIsSUFBSSxFQUFFLGVBQWU7S0FDeEI7SUFDRDtRQUNJLElBQUksRUFBRSxTQUFTO1FBQ2YsUUFBUSxFQUFFLFVBQVU7UUFDcEIsSUFBSSxFQUFFLGdCQUFnQjtLQUN6QjtJQUNEO1FBQ0ksSUFBSSxFQUFFLGFBQWE7UUFDbkIsUUFBUSxFQUFFLGNBQWM7UUFDeEIsSUFBSSxFQUFFLFFBQVE7S0FDakI7SUFDRDtRQUNJLElBQUksRUFBRSxjQUFjO1FBQ3BCLFFBQVEsRUFBRSxnQkFBZ0I7UUFDMUIsSUFBSSxFQUFFLFFBQVE7S0FDakI7SUFDRDtRQUNJLElBQUksRUFBRSxjQUFjO1FBQ3BCLFFBQVEsRUFBRSxlQUFlO1FBQ3pCLElBQUksRUFBRSwwQkFBMEI7S0FDbkM7SUFDRDtRQUNJLElBQUksRUFBRSxnQkFBZ0I7UUFDdEIsUUFBUSxFQUFFLGtCQUFrQjtRQUM1QixJQUFJLEVBQUUsUUFBUTtLQUNqQjtJQUNEO1FBQ0ksSUFBSSxFQUFFLHFCQUFxQjtRQUMzQixRQUFRLEVBQUUsdUJBQXVCO1FBQ2pDLElBQUksRUFBRSxlQUFlO0tBQ3hCO0lBQ0Q7UUFDSSxJQUFJLEVBQUUsb0JBQW9CO1FBQzFCLFFBQVEsRUFBRSxxQkFBcUI7UUFDL0IsSUFBSSxFQUFFLGVBQWU7S0FDeEI7SUFDRDtRQUNJLElBQUksRUFBRSxrQkFBa0I7UUFDeEIsUUFBUSxFQUFFLHFCQUFxQjtRQUMvQixJQUFJLEVBQUUsU0FBUztLQUNsQjtJQUNEO1FBQ0ksSUFBSSxFQUFFLG1CQUFtQjtRQUN6QixRQUFRLEVBQUUsc0JBQXNCO1FBQ2hDLElBQUksRUFBRSxTQUFTO0tBQ2xCO0lBQ0Q7UUFDSSxJQUFJLEVBQUUsbUJBQW1CO1FBQ3pCLFFBQVEsRUFBRSxxQkFBcUI7UUFDL0IsSUFBSSxFQUFFLGVBQWU7S0FDeEI7SUFDRDtRQUNJLElBQUksRUFBRSxXQUFXO1FBQ2pCLFFBQVEsRUFBRSxZQUFZO1FBQ3RCLElBQUksRUFBRSxpQkFBaUI7S0FDMUI7Q0FDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyogdHNsaW50OmRpc2FibGU6bm8tYW5nbGUtYnJhY2tldC10eXBlLWFzc2VydGlvbiBuby10cmFpbGluZy13aGl0ZXNwYWNlIG1lbWJlci1vcmRlcmluZyBvYmplY3QtbGl0ZXJhbC1rZXktcXVvdGVzICovXG5cbi8qKlxuICogR2VuZXJhdGVkIEFQSVxuICogTm8gZGVzY3JpcHRpb24gcHJvdmlkZWQgKGdlbmVyYXRlZCBieSBPcGVuYXBpIEdlbmVyYXRvciBodHRwczovL2dpdGh1Yi5jb20vb3BlbmFwaXRvb2xzL29wZW5hcGktZ2VuZXJhdG9yKVxuICpcbiAqIFRoZSB2ZXJzaW9uIG9mIHRoZSBPcGVuQVBJIGRvY3VtZW50OiAxLjBcbiAqXG4gKlxuICogTk9URTogVGhpcyBjbGFzcyBpcyBhdXRvIGdlbmVyYXRlZCBieSBPcGVuQVBJIEdlbmVyYXRvciAoaHR0cHM6Ly9vcGVuYXBpLWdlbmVyYXRvci50ZWNoKS5cbiAqIGh0dHBzOi8vb3BlbmFwaS1nZW5lcmF0b3IudGVjaFxuICogRG8gbm90IGVkaXQgdGhlIGNsYXNzIG1hbnVhbGx5LlxuICovXG5pbXBvcnQge01lZGl1c0ZpbHRlclBhcmFtfSBmcm9tICcuL2ZpbHRlci1wYXJhbS5tb2RlbCc7XG5pbXBvcnQge01lZGl1c1F1ZXJ5TW9kZX0gZnJvbSAnLi9xdWVyeS1tb2RlLm1vZGVsJztcbmltcG9ydCB7QXR0cmlidXRlRGVmfSBmcm9tICcuL3NlcmlhbGl6YXRpb24ubW9kZWwnO1xuXG5leHBvcnQgY2xhc3MgTWVkaXVzUXVlcnlQYXJhbSB7XG4gICAgc29ydFByb3BlcnR5PzogQXJyYXk8c3RyaW5nPjtcbiAgICBzb3J0QXNjPzogQXJyYXk8Ym9vbGVhbj47XG4gICAgaXRlbXNPZmZzZXQ/OiBudW1iZXI7XG4gICAgaXRlbXNQZXJQYWdlPzogbnVtYmVyO1xuICAgIGZpbHRlclBhcmFtcz86IEFycmF5PE1lZGl1c0ZpbHRlclBhcmFtPjtcbiAgICBmaWx0ZXJBbGxQYXJhbT86IHN0cmluZztcbiAgICBmaWx0ZXJBbGxQcm9wZXJ0aWVzPzogQXJyYXk8c3RyaW5nPjtcbiAgICB2YWxpZGF0ZVByb3BlcnRpZXM/OiBBcnJheTxzdHJpbmc+O1xuICAgIHNlbGVjdEluVHdvU3RlcHM/OiBib29sZWFuO1xuICAgIHNvcnRFbnVtQnlPcmRpbmFsPzogYm9vbGVhbjtcbiAgICBncm91cEJ5UHJvcGVydGllcz86IEFycmF5PHN0cmluZz47XG4gICAgcXVlcnlNb2RlPzogTWVkaXVzUXVlcnlNb2RlO1xuXG4gICAgcHVibGljIHN0YXRpYyBkaXNjcmltaW5hdG9yPzogc3RyaW5nO1xuXG4gICAgcHVibGljIHN0YXRpYyBhdHRyaWJ1dGVUeXBlTWFwOiBBcnJheTxBdHRyaWJ1dGVEZWY+ID0gW1xuICAgICAgICB7XG4gICAgICAgICAgICBuYW1lOiAnc29ydFByb3BlcnR5JyxcbiAgICAgICAgICAgIGJhc2VOYW1lOiAnc29ydF9wcm9wZXJ0eScsXG4gICAgICAgICAgICB0eXBlOiAnQXJyYXk8c3RyaW5nPidcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgICAgbmFtZTogJ3NvcnRBc2MnLFxuICAgICAgICAgICAgYmFzZU5hbWU6ICdzb3J0X2FzYycsXG4gICAgICAgICAgICB0eXBlOiAnQXJyYXk8Ym9vbGVhbj4nXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICAgIG5hbWU6ICdpdGVtc09mZnNldCcsXG4gICAgICAgICAgICBiYXNlTmFtZTogJ2l0ZW1zX29mZnNldCcsXG4gICAgICAgICAgICB0eXBlOiAnbnVtYmVyJ1xuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgICBuYW1lOiAnaXRlbXNQZXJQYWdlJyxcbiAgICAgICAgICAgIGJhc2VOYW1lOiAnaXRlbXNfcGVyX3BhZ2UnLFxuICAgICAgICAgICAgdHlwZTogJ251bWJlcidcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgICAgbmFtZTogJ2ZpbHRlclBhcmFtcycsXG4gICAgICAgICAgICBiYXNlTmFtZTogJ2ZpbHRlcl9wYXJhbXMnLFxuICAgICAgICAgICAgdHlwZTogJ0FycmF5PE1lZGl1c0ZpbHRlclBhcmFtPidcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgICAgbmFtZTogJ2ZpbHRlckFsbFBhcmFtJyxcbiAgICAgICAgICAgIGJhc2VOYW1lOiAnZmlsdGVyX2FsbF9wYXJhbScsXG4gICAgICAgICAgICB0eXBlOiAnc3RyaW5nJ1xuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgICBuYW1lOiAnZmlsdGVyQWxsUHJvcGVydGllcycsXG4gICAgICAgICAgICBiYXNlTmFtZTogJ2ZpbHRlcl9hbGxfcHJvcGVydGllcycsXG4gICAgICAgICAgICB0eXBlOiAnQXJyYXk8c3RyaW5nPidcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgICAgbmFtZTogJ3ZhbGlkYXRlUHJvcGVydGllcycsXG4gICAgICAgICAgICBiYXNlTmFtZTogJ3ZhbGlkYXRlX3Byb3BlcnRpZXMnLFxuICAgICAgICAgICAgdHlwZTogJ0FycmF5PHN0cmluZz4nXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICAgIG5hbWU6ICdzZWxlY3RJblR3b1N0ZXBzJyxcbiAgICAgICAgICAgIGJhc2VOYW1lOiAnc2VsZWN0X2luX3R3b19zdGVwcycsXG4gICAgICAgICAgICB0eXBlOiAnYm9vbGVhbidcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgICAgbmFtZTogJ3NvcnRFbnVtQnlPcmRpbmFsJyxcbiAgICAgICAgICAgIGJhc2VOYW1lOiAnc29ydF9lbnVtX2J5X29yZGluYWwnLFxuICAgICAgICAgICAgdHlwZTogJ2Jvb2xlYW4nXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICAgIG5hbWU6ICdncm91cEJ5UHJvcGVydGllcycsXG4gICAgICAgICAgICBiYXNlTmFtZTogJ2dyb3VwX2J5X3Byb3BlcnRpZXMnLFxuICAgICAgICAgICAgdHlwZTogJ0FycmF5PHN0cmluZz4nXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICAgIG5hbWU6ICdxdWVyeU1vZGUnLFxuICAgICAgICAgICAgYmFzZU5hbWU6ICdxdWVyeV9tb2RlJyxcbiAgICAgICAgICAgIHR5cGU6ICdNZWRpdXNRdWVyeU1vZGUnXG4gICAgICAgIH1cbiAgICBdO1xuXG4gICAgcHVibGljIHN0YXRpYyBnZXRBdHRyaWJ1dGVUeXBlTWFwKCkge1xuICAgICAgICByZXR1cm4gTWVkaXVzUXVlcnlQYXJhbS5hdHRyaWJ1dGVUeXBlTWFwO1xuICAgIH1cbn1cbiJdfQ==
@@ -7,54 +7,59 @@ export class AMngCrudApiService {
7
7
  this.http = http;
8
8
  this.objectSerializer = ObjectSerializer.get();
9
9
  }
10
- createPost(item) {
10
+ createPost(item, params) {
11
11
  const url = `${this.getBasePath()}/${this.getServiceBasePath()}${this.getCreatePostPath()}`;
12
12
  return this.http
13
13
  .post(url, this.objectSerializer.serializeClass(item, this.type), {
14
14
  withCredentials: true,
15
15
  observe: 'body',
16
- reportProgress: false
16
+ reportProgress: false,
17
+ params: params
17
18
  })
18
19
  .pipe(map(res => this.objectSerializer.deserializeClass(res, this.type)));
19
20
  }
20
- getAllPost(queryParam) {
21
+ getAllPost(queryParamBody, params) {
21
22
  const url = `${this.getBasePath()}/${this.getServiceBasePath()}${this.getGetAllPostPath()}`;
22
23
  return this.http
23
- .post(url, this.objectSerializer.serialize(queryParam, 'QueryParam'), {
24
+ .post(url, this.objectSerializer.serialize(queryParamBody, 'QueryParam'), {
24
25
  withCredentials: true,
25
26
  observe: 'body',
26
- reportProgress: false
27
+ reportProgress: false,
28
+ params: params
27
29
  })
28
30
  .pipe(map(res => this.objectSerializer.deserializeClass(res, this.queryResultType)));
29
31
  }
30
- getByIdGet(id) {
32
+ getByIdGet(id, params) {
31
33
  const url = `${this.getBasePath()}/${this.getServiceBasePath()}${this.getGetByIdGetPath(id)}`;
32
34
  return this.http
33
35
  .get(url, {
34
36
  withCredentials: true,
35
37
  observe: 'body',
36
- reportProgress: false
38
+ reportProgress: false,
39
+ params: params
37
40
  })
38
41
  .pipe(map(res => this.objectSerializer.deserializeClass(res, this.type)));
39
42
  }
40
- updatePut(id, item) {
43
+ updatePut(id, item, params) {
41
44
  const url = `${this.getBasePath()}/${this.getServiceBasePath()}${this.getUpdatePutPath(id, item)}`;
42
45
  return this.http
43
46
  .put(url, this.objectSerializer.serializeClass(item, this.type), {
44
47
  withCredentials: true,
45
48
  observe: 'body',
46
- reportProgress: false
49
+ reportProgress: false,
50
+ params: params
47
51
  })
48
52
  .pipe(map(res => this.objectSerializer.deserializeClass(res, this.type)));
49
53
  }
50
- removeDelete(id, item) {
54
+ removeDelete(id, item, params) {
51
55
  const url = `${this.getBasePath()}/${this.getServiceBasePath()}${this.getRemoveDeletePath(id, item)}`;
52
56
  return this.http
53
57
  .request('delete', url, {
54
58
  withCredentials: true,
55
59
  observe: 'body',
56
60
  reportProgress: false,
57
- body: this.objectSerializer.serializeClass(item, this.type)
61
+ body: item ? this.objectSerializer.serializeClass(item, this.type) : undefined,
62
+ params: params
58
63
  })
59
64
  .pipe(map(res => this.objectSerializer.deserializeClass(res, this.type)));
60
65
  }
@@ -76,4 +81,4 @@ export class AMngCrudApiService {
76
81
  return `/${id}`;
77
82
  }
78
83
  }
79
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3J1ZC1hcGkuYWJzdHJhY3Quc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvYXBpL3NlcnZpY2VzL2NydWQtYXBpLmFic3RyYWN0LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0EsT0FBTyxFQUFDLEdBQUcsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBSW5DLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLFVBQVUsQ0FBQztBQUUxQyxNQUFNLE9BQWdCLGtCQUFrQjtJQUdwQyxZQUFnQyxJQUFrQixFQUFZLGVBQStCLEVBQVksSUFBZ0I7UUFBekYsU0FBSSxHQUFKLElBQUksQ0FBYztRQUFZLG9CQUFlLEdBQWYsZUFBZSxDQUFnQjtRQUFZLFNBQUksR0FBSixJQUFJLENBQVk7UUFGeEcscUJBQWdCLEdBQXFCLGdCQUFnQixDQUFDLEdBQUcsRUFBRSxDQUFDO0lBRStDLENBQUM7SUFFdEgsVUFBVSxDQUFDLElBQU87UUFDckIsTUFBTSxHQUFHLEdBQUcsR0FBRyxJQUFJLENBQUMsV0FBVyxFQUFFLElBQUksSUFBSSxDQUFDLGtCQUFrQixFQUFFLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixFQUFFLEVBQUUsQ0FBQztRQUM1RixPQUFPLElBQUksQ0FBQyxJQUFJO2FBQ1gsSUFBSSxDQUFJLEdBQUcsRUFBRSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsY0FBYyxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDakUsZUFBZSxFQUFFLElBQUk7WUFDckIsT0FBTyxFQUFFLE1BQU07WUFDZixjQUFjLEVBQUUsS0FBSztTQUN4QixDQUFDO2FBQ0QsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxnQkFBZ0IsQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztJ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RSxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ2xGLENBQUM7SUFNUyxpQkFBaUI7UUFDdkIsT0FBTyxVQUFVLENBQUM7SUFDdEIsQ0FBQztJQUVTLGlCQUFpQjtRQUN2QixPQUFPLEVBQUUsQ0FBQztJQUNkLENBQUM7SUFFRCw2REFBNkQ7SUFDbkQsZ0JBQWdCLENBQUMsRUFBTyxFQUFFLElBQU87UUFDdkMsT0FBTyxJQUFJLEVBQUUsRUFBRSxDQUFDO0lBQ3BCLENBQUM7SUFFUyxpQkFBaUIsQ0FBQyxFQUFPO1FBQy9CLE9BQU8sSUFBSSxFQUFFLEVBQUUsQ0FBQztJQUNwQixDQUFDO0lBRUQsNkRBQTZEO0lBQ25ELG1CQUFtQixDQUFDLEVBQU8sRUFBRSxJQUFPO1FBQzFDLE9BQU8sSUFBSSxFQUFFLEVBQUUsQ0FBQztJQUNwQixDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0h0dHBDbGllbnR9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcblxuaW1wb3J0IHtPYnNlcnZhYmxlfSBmcm9tICdyeGpzJztcbmltcG9ydCB7bWFwfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7Q2xhc3NUeXBlfSBmcm9tICcuLi8uLi90eXBlcyc7XG5pbXBvcnQge01lZGl1c1F1ZXJ5UGFyYW0sIE1lZGl1c1F1ZXJ5UmVzdWx0fSBmcm9tICcuLi9tb2RlbHMnO1xuaW1wb3J0IHtPYmplY3RTZXJpYWxpemVyfSBmcm9tICcuLi91dGlscyc7XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBBTW5nQ3J1ZEFwaVNlcnZpY2U8VCwgUVJUIGV4dGVuZHMgTWVkaXVzUXVlcnlSZXN1bHQ8VD4+IHtcbiAgICBwcml2YXRlIHJlYWRvbmx5IG9iamVjdFNlcmlhbGl6ZXI6IE9iamVjdFNlcmlhbGl6ZXIgPSBPYmplY3RTZXJpYWxpemVyLmdldCgpO1xuXG4gICAgcHJvdGVjdGVkIGNvbnN0cnVjdG9yKHByb3RlY3RlZCB0eXBlOiBDbGFzc1R5cGU8VD4sIHByb3RlY3RlZCBxdWVyeVJlc3VsdFR5cGU6IENsYXNzVHlwZTxRUlQ+LCBwcm90ZWN0ZWQgaHR0cDogSHR0cENsaWVudCkge31cblxuICAgIHB1YmxpYyBjcmVhdGVQb3N0KGl0ZW06IFQpOiBPYnNlcnZhYmxlPFQ+IHtcbiAgICAgICAgY29uc3QgdXJsID0gYCR7dGhpcy5nZXRCYXNlUGF0aCgpfS8ke3RoaXMuZ2V0U2VydmljZUJhc2VQYXRoKCl9JHt0aGlzLmdldENyZWF0ZVBvc3RQYXRoKCl9YDtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cFxuICAgICAgICAgICAgLnBvc3Q8VD4odXJsLCB0aGlzLm9iamVjdFNlcmlhbGl6ZXIuc2VyaWFsaXplQ2xhc3MoaXRlbSwgdGhpcy50eXBlKSwge1xuICAgICAgICAgICAgICAgIHdpdGhDcmVkZW50aWFsczogdHJ1ZSxcbiAgICAgICAgICAgICAgICBvYnNlcnZlOiAnYm9keScsXG4gICAgICAgICAgICAgICAgcmVwb3J0UHJvZ3Jlc3M6IGZhbHNlXG4gICAgICAgICAgICB9KVxuICAgICAgICAgICAgLnBpcGUobWFwKHJlcyA9PiB0aGlzLm9iamVjdFNlcmlhbGl6ZXIuZGVzZXJpYWxpemVDbGFzcyhyZXMsIHRoaXMudHlwZSkpKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0QWxsUG9zdChxdWVyeVBhcmFtPzogTWVkaXVzUXVlcnlQYXJhbSk6IE9ic2VydmFibGU8UVJUPiB7XG4gICAgICAgIGNvbnN0IHVybCA9IGAke3RoaXMuZ2V0QmFzZVBhdGgoKX0vJHt0aGlzLmdldFNlcnZpY2VCYXNlUGF0aCgpfSR7dGhpcy5nZXRHZXRBbGxQb3N0UGF0aCgpfWA7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHBcbiAgICAgICAgICAgIC5wb3N0PFFSVD4odXJsLCB0aGlzLm9iamVjdFNlcmlhbGl6ZXIuc2VyaWFsaXplKHF1ZXJ5UGFyYW0sICdRdWVyeVBhcmFtJyksIHtcbiAgICAgICAgICAgICAgICB3aXRoQ3JlZGVudGlhbHM6IHRydWUsXG4gICAgICAgICAgICAgICAgb2JzZXJ2ZTogJ2JvZHknLFxuICAgICAgICAgICAgICAgIHJlcG9ydFByb2dyZXNzOiBmYWxzZVxuICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIC5waXBlKG1hcChyZXMgPT4gdGhpcy5vYmplY3RTZXJpYWxpemVyLmRlc2VyaWFsaXplQ2xhc3MocmVzLCB0aGlzLnF1ZXJ5UmVzdWx0VHlwZSkpKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0QnlJZEdldChpZDogYW55KTogT2JzZXJ2YWJsZTxUPiB7XG4gICAgICAgIGNvbnN0IHVybCA9IGAke3RoaXMuZ2V0QmFzZVBhdGgoKX0vJHt0aGlzLmdldFNlcnZpY2VCYXNlUGF0aCgpfSR7dGhpcy5nZXRHZXRCeUlkR2V0UGF0aChpZCl9YDtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cFxuICAgICAgICAgICAgLmdldDxUPih1cmwsIHtcbiAgICAgICAgICAgICAgICB3aXRoQ3JlZGVudGlhbHM6IHRydWUsXG4gICAgICAgICAgICAgICAgb2JzZXJ2ZTogJ2JvZHknLFxuICAgICAgICAgICAgICAgIHJlcG9ydFByb2dyZXNzOiBmYWxzZVxuICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIC5waXBlKG1hcChyZXMgPT4gdGhpcy5vYmplY3RTZXJpYWxpemVyLmRlc2VyaWFsaXplQ2xhc3MocmVzLCB0aGlzLnR5cGUpKSk7XG4gICAgfVxuXG4gICAgcHVibGljIHVwZGF0ZVB1dChpZDogYW55LCBpdGVtOiBUKTogT2JzZXJ2YWJsZTxUPiB7XG4gICAgICAgIGNvbnN0IHVybCA9IGAke3RoaXMuZ2V0QmFzZVBhdGgoKX0vJHt0aGlzLmdldFNlcnZpY2VCYXNlUGF0aCgpfSR7dGhpcy5nZXRVcGRhdGVQdXRQYXRoKGlkLCBpdGVtKX1gO1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwXG4gICAgICAgICAgICAucHV0PFQ+KHVybCwgdGhpcy5vYmplY3RTZXJpYWxpemVyLnNlcmlhbGl6ZUNsYXNzKGl0ZW0sIHRoaXMudHlwZSksIHtcbiAgICAgICAgICAgICAgICB3aXRoQ3JlZGVudGlhbHM6IHRydWUsXG4gICAgICAgICAgICAgICAgb2JzZXJ2ZTogJ2JvZHknLFxuICAgICAgICAgICAgICAgIHJlcG9ydFByb2dyZXNzOiBmYWxzZVxuICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIC5waXBlKG1hcChyZXMgPT4gdGhpcy5vYmplY3RTZXJpYWxpemVyLmRlc2VyaWFsaXplQ2xhc3MocmVzLCB0aGlzLnR5cGUpKSk7XG4gICAgfVxuXG4gICAgcHVibGljIHJlbW92ZURlbGV0ZShpZDogYW55LCBpdGVtOiBUKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICAgICAgY29uc3QgdXJsID0gYCR7dGhpcy5nZXRCYXNlUGF0aCgpfS8ke3RoaXMuZ2V0U2VydmljZUJhc2VQYXRoKCl9JHt0aGlzLmdldFJlbW92ZURlbGV0ZVBhdGgoaWQsIGl0ZW0pfWA7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHBcbiAgICAgICAgICAgIC5yZXF1ZXN0PGFueT4oJ2RlbGV0ZScsIHVybCwge1xuICAgICAgICAgICAgICAgIHdpdGhDcmVkZW50aWFsczogdHJ1ZSxcbiAgICAgICAgICAgICAgICBvYnNlcnZlOiAnYm9keScsXG4gICAgICAgICAgICAgICAgcmVwb3J0UHJvZ3Jlc3M6IGZhbHNlLFxuICAgICAgICAgICAgICAgIGJvZHk6IHRoaXMub2JqZWN0U2VyaWFsaXplci5zZXJpYWxpemVDbGFzcyhpdGVtLCB0aGlzLnR5cGUpXG4gICAgICAgICAgICB9KVxuICAgICAgICAgICAgLnBpcGUobWFwKHJlcyA9PiB0aGlzLm9iamVjdFNlcmlhbGl6ZXIuZGVzZXJpYWxpemVDbGFzcyhyZXMsIHRoaXMudHlwZSkpKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgYWJzdHJhY3QgZ2V0QmFzZVBhdGgoKTogc3RyaW5nO1xuXG4gICAgcHJvdGVjdGVkIGFic3RyYWN0IGdldFNlcnZpY2VCYXNlUGF0aCgpOiBzdHJpbmc7XG5cbiAgICBwcm90ZWN0ZWQgZ2V0R2V0QWxsUG9zdFBhdGgoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuICcvZ2V0LWFsbCc7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGdldENyZWF0ZVBvc3RQYXRoKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiAnJztcbiAgICB9XG5cbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVudXNlZC12YXJzXG4gICAgcHJvdGVjdGVkIGdldFVwZGF0ZVB1dFBhdGgoaWQ6IGFueSwgaXRlbTogVCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBgLyR7aWR9YDtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgZ2V0R2V0QnlJZEdldFBhdGgoaWQ6IGFueSk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBgLyR7aWR9YDtcbiAgICB9XG5cbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVudXNlZC12YXJzXG4gICAgcHJvdGVjdGVkIGdldFJlbW92ZURlbGV0ZVBhdGgoaWQ6IGFueSwgaXRlbTogVCkge1xuICAgICAgICByZXR1cm4gYC8ke2lkfWA7XG4gICAgfVxufVxuIl19
84
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3J1ZC1hcGkuYWJzdHJhY3Quc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvYXBpL3NlcnZpY2VzL2NydWQtYXBpLmFic3RyYWN0LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0EsT0FBTyxFQUFDLEdBQUcsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBSW5DLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLFVBQVUsQ0FBQztBQUUxQyxNQUFNLE9BQWdCLGtCQUFrQjtJQUdwQyxZQUFnQyxJQUFrQixFQUFZLGVBQStCLEVBQVksSUFBZ0I7UUFBekYsU0FBSSxHQUFKLElBQUksQ0FBYztRQUFZLG9CQUFlLEdBQWYsZUFBZSxDQUFnQjtRQUFZLFNBQUksR0FBSixJQUFJLENBQVk7UUFGdEcscUJBQWdCLEdBQXFCLGdCQUFnQixDQUFDLEdBQUcsRUFBRSxDQUFDO0lBRTZDLENBQUM7SUFFdEgsVUFBVSxDQUFDLElBQU8sRUFBRSxNQUFtQjtRQUMxQyxNQUFNLEdBQUcsR0FBRyxHQUFHLElBQUksQ0FBQyxXQUFXLEVBQUUsSUFBSSxJQUFJLENBQUMsa0JBQWtCLEVBQUUsR0FBRyxJQUFJLENBQUMsaUJBQWlCLEVBQUUsRUFBRSxDQUFDO1FBQzVGLE9BQU8sSUFBSSxDQUFDLElBQUk7YUFDWCxJQUFJLENBQUksR0FBRyxFQUFFLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxjQUFjLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUNqRSxlQUFlLEVBQUUsSUFBSTtZQUNyQixPQUFPLEVBQUUsTUFBTTtZQUNmLGNBQWMsRUFBRSxLQUFLO1lBQ3JCLE1BQU0sRUFBRSxNQUFNO1NBQ2pCLENBQUM7YUFDRCxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLGdCQUFnQixDQUFDLEdBQUcsRUFBRSxJQUFJ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QUFJLENBQUMsZ0JBQWdCLENBQUMsY0FBYyxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVM7WUFDOUUsTUFBTSxFQUFFLE1BQU07U0FDakIsQ0FBQzthQUNELElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsZ0JBQWdCLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDbEYsQ0FBQztJQU1TLGlCQUFpQjtRQUN2QixPQUFPLFVBQVUsQ0FBQztJQUN0QixDQUFDO0lBRVMsaUJBQWlCO1FBQ3ZCLE9BQU8sRUFBRSxDQUFDO0lBQ2QsQ0FBQztJQUVELDZEQUE2RDtJQUNuRCxnQkFBZ0IsQ0FBQyxFQUFPLEVBQUUsSUFBTztRQUN2QyxPQUFPLElBQUksRUFBRSxFQUFFLENBQUM7SUFDcEIsQ0FBQztJQUVTLGlCQUFpQixDQUFDLEVBQU87UUFDL0IsT0FBTyxJQUFJLEVBQUUsRUFBRSxDQUFDO0lBQ3BCLENBQUM7SUFFRCw2REFBNkQ7SUFDbkQsbUJBQW1CLENBQUMsRUFBTyxFQUFFLElBQVE7UUFDM0MsT0FBTyxJQUFJLEVBQUUsRUFBRSxDQUFDO0lBQ3BCLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SHR0cENsaWVudCwgSHR0cFBhcmFtc30gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuXG5pbXBvcnQge09ic2VydmFibGV9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHttYXB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHtDbGFzc1R5cGV9IGZyb20gJy4uLy4uL3R5cGVzJztcbmltcG9ydCB7TWVkaXVzUXVlcnlQYXJhbSwgTWVkaXVzUXVlcnlSZXN1bHR9IGZyb20gJy4uL21vZGVscyc7XG5pbXBvcnQge09iamVjdFNlcmlhbGl6ZXJ9IGZyb20gJy4uL3V0aWxzJztcblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEFNbmdDcnVkQXBpU2VydmljZTxULCBRUlQgZXh0ZW5kcyBNZWRpdXNRdWVyeVJlc3VsdDxUPj4ge1xuICAgIHByb3RlY3RlZCByZWFkb25seSBvYmplY3RTZXJpYWxpemVyOiBPYmplY3RTZXJpYWxpemVyID0gT2JqZWN0U2VyaWFsaXplci5nZXQoKTtcblxuICAgIHByb3RlY3RlZCBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgdHlwZTogQ2xhc3NUeXBlPFQ+LCBwcm90ZWN0ZWQgcXVlcnlSZXN1bHRUeXBlOiBDbGFzc1R5cGU8UVJUPiwgcHJvdGVjdGVkIGh0dHA6IEh0dHBDbGllbnQpIHt9XG5cbiAgICBwdWJsaWMgY3JlYXRlUG9zdChpdGVtOiBULCBwYXJhbXM/OiBIdHRwUGFyYW1zKTogT2JzZXJ2YWJsZTxUPiB7XG4gICAgICAgIGNvbnN0IHVybCA9IGAke3RoaXMuZ2V0QmFzZVBhdGgoKX0vJHt0aGlzLmdldFNlcnZpY2VCYXNlUGF0aCgpfSR7dGhpcy5nZXRDcmVhdGVQb3N0UGF0aCgpfWA7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHBcbiAgICAgICAgICAgIC5wb3N0PFQ+KHVybCwgdGhpcy5vYmplY3RTZXJpYWxpemVyLnNlcmlhbGl6ZUNsYXNzKGl0ZW0sIHRoaXMudHlwZSksIHtcbiAgICAgICAgICAgICAgICB3aXRoQ3JlZGVudGlhbHM6IHRydWUsXG4gICAgICAgICAgICAgICAgb2JzZXJ2ZTogJ2JvZHknLFxuICAgICAgICAgICAgICAgIHJlcG9ydFByb2dyZXNzOiBmYWxzZSxcbiAgICAgICAgICAgICAgICBwYXJhbXM6IHBhcmFtc1xuICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIC5waXBlKG1hcChyZXMgPT4gdGhpcy5vYmplY3RTZXJpYWxpemVyLmRlc2VyaWFsaXplQ2xhc3MocmVzLCB0aGlzLnR5cGUpKSk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldEFsbFBvc3QocXVlcnlQYXJhbUJvZHk/OiBNZWRpdXNRdWVyeVBhcmFtLCBwYXJhbXM/OiBIdHRwUGFyYW1zKTogT2JzZXJ2YWJsZTxRUlQ+IHtcbiAgICAgICAgY29uc3QgdXJsID0gYCR7dGhpcy5nZXRCYXNlUGF0aCgpfS8ke3RoaXMuZ2V0U2VydmljZUJhc2VQYXRoKCl9JHt0aGlzLmdldEdldEFsbFBvc3RQYXRoKCl9YDtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cFxuICAgICAgICAgICAgLnBvc3Q8UVJUPih1cmwsIHRoaXMub2JqZWN0U2VyaWFsaXplci5zZXJpYWxpemUocXVlcnlQYXJhbUJvZHksICdRdWVyeVBhcmFtJyksIHtcbiAgICAgICAgICAgICAgICB3aXRoQ3JlZGVudGlhbHM6IHRydWUsXG4gICAgICAgICAgICAgICAgb2JzZXJ2ZTogJ2JvZHknLFxuICAgICAgICAgICAgICAgIHJlcG9ydFByb2dyZXNzOiBmYWxzZSxcbiAgICAgICAgICAgICAgICBwYXJhbXM6IHBhcmFtc1xuICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIC5waXBlKG1hcChyZXMgPT4gdGhpcy5vYmplY3RTZXJpYWxpemVyLmRlc2VyaWFsaXplQ2xhc3MocmVzLCB0aGlzLnF1ZXJ5UmVzdWx0VHlwZSkpKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0QnlJZEdldChpZDogYW55LCBwYXJhbXM/OiBIdHRwUGFyYW1zKTogT2JzZXJ2YWJsZTxUPiB7XG4gICAgICAgIGNvbnN0IHVybCA9IGAke3RoaXMuZ2V0QmFzZVBhdGgoKX0vJHt0aGlzLmdldFNlcnZpY2VCYXNlUGF0aCgpfSR7dGhpcy5nZXRHZXRCeUlkR2V0UGF0aChpZCl9YDtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cFxuICAgICAgICAgICAgLmdldDxUPih1cmwsIHtcbiAgICAgICAgICAgICAgICB3aXRoQ3JlZGVudGlhbHM6IHRydWUsXG4gICAgICAgICAgICAgICAgb2JzZXJ2ZTogJ2JvZHknLFxuICAgICAgICAgICAgICAgIHJlcG9ydFByb2dyZXNzOiBmYWxzZSxcbiAgICAgICAgICAgICAgICBwYXJhbXM6IHBhcmFtc1xuICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIC5waXBlKG1hcChyZXMgPT4gdGhpcy5vYmplY3RTZXJpYWxpemVyLmRlc2VyaWFsaXplQ2xhc3MocmVzLCB0aGlzLnR5cGUpKSk7XG4gICAgfVxuXG4gICAgcHVibGljIHVwZGF0ZVB1dChpZDogYW55LCBpdGVtOiBULCBwYXJhbXM/OiBIdHRwUGFyYW1zKTogT2JzZXJ2YWJsZTxUPiB7XG4gICAgICAgIGNvbnN0IHVybCA9IGAke3RoaXMuZ2V0QmFzZVBhdGgoKX0vJHt0aGlzLmdldFNlcnZpY2VCYXNlUGF0aCgpfSR7dGhpcy5nZXRVcGRhdGVQdXRQYXRoKGlkLCBpdGVtKX1gO1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwXG4gICAgICAgICAgICAucHV0PFQ+KHVybCwgdGhpcy5vYmplY3RTZXJpYWxpemVyLnNlcmlhbGl6ZUNsYXNzKGl0ZW0sIHRoaXMudHlwZSksIHtcbiAgICAgICAgICAgICAgICB3aXRoQ3JlZGVudGlhbHM6IHRydWUsXG4gICAgICAgICAgICAgICAgb2JzZXJ2ZTogJ2JvZHknLFxuICAgICAgICAgICAgICAgIHJlcG9ydFByb2dyZXNzOiBmYWxzZSxcbiAgICAgICAgICAgICAgICBwYXJhbXM6IHBhcmFtc1xuICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIC5waXBlKG1hcChyZXMgPT4gdGhpcy5vYmplY3RTZXJpYWxpemVyLmRlc2VyaWFsaXplQ2xhc3MocmVzLCB0aGlzLnR5cGUpKSk7XG4gICAgfVxuXG4gICAgcHVibGljIHJlbW92ZURlbGV0ZShpZDogYW55LCBpdGVtPzogVCwgcGFyYW1zPzogSHR0cFBhcmFtcyk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgICAgIGNvbnN0IHVybCA9IGAke3RoaXMuZ2V0QmFzZVBhdGgoKX0vJHt0aGlzLmdldFNlcnZpY2VCYXNlUGF0aCgpfSR7dGhpcy5nZXRSZW1vdmVEZWxldGVQYXRoKGlkLCBpdGVtKX1gO1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwXG4gICAgICAgICAgICAucmVxdWVzdDxhbnk+KCdkZWxldGUnLCB1cmwsIHtcbiAgICAgICAgICAgICAgICB3aXRoQ3JlZGVudGlhbHM6IHRydWUsXG4gICAgICAgICAgICAgICAgb2JzZXJ2ZTogJ2JvZHknLFxuICAgICAgICAgICAgICAgIHJlcG9ydFByb2dyZXNzOiBmYWxzZSxcbiAgICAgICAgICAgICAgICBib2R5OiBpdGVtID8gdGhpcy5vYmplY3RTZXJpYWxpemVyLnNlcmlhbGl6ZUNsYXNzKGl0ZW0sIHRoaXMudHlwZSkgOiB1bmRlZmluZWQsXG4gICAgICAgICAgICAgICAgcGFyYW1zOiBwYXJhbXNcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAucGlwZShtYXAocmVzID0+IHRoaXMub2JqZWN0U2VyaWFsaXplci5kZXNlcmlhbGl6ZUNsYXNzKHJlcywgdGhpcy50eXBlKSkpO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBhYnN0cmFjdCBnZXRCYXNlUGF0aCgpOiBzdHJpbmc7XG5cbiAgICBwcm90ZWN0ZWQgYWJzdHJhY3QgZ2V0U2VydmljZUJhc2VQYXRoKCk6IHN0cmluZztcblxuICAgIHByb3RlY3RlZCBnZXRHZXRBbGxQb3N0UGF0aCgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gJy9nZXQtYWxsJztcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgZ2V0Q3JlYXRlUG9zdFBhdGgoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuICcnO1xuICAgIH1cblxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW51c2VkLXZhcnNcbiAgICBwcm90ZWN0ZWQgZ2V0VXBkYXRlUHV0UGF0aChpZDogYW55LCBpdGVtOiBUKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIGAvJHtpZH1gO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBnZXRHZXRCeUlkR2V0UGF0aChpZDogYW55KTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIGAvJHtpZH1gO1xuICAgIH1cblxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW51c2VkLXZhcnNcbiAgICBwcm90ZWN0ZWQgZ2V0UmVtb3ZlRGVsZXRlUGF0aChpZDogYW55LCBpdGVtPzogVCkge1xuICAgICAgICByZXR1cm4gYC8ke2lkfWA7XG4gICAgfVxufVxuIl19
@@ -1,33 +1,34 @@
1
- import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
2
- import { ConfirmationService, MessageService } from 'primeng/api';
1
+ import { ChangeDetectionStrategy, Component, Input, Optional } from '@angular/core';
2
+ import { ConfirmationService } from 'primeng/api';
3
3
  import { ReplaySubject, of } from 'rxjs';
4
- import { finalize, first } from 'rxjs/operators';
4
+ import { first } from 'rxjs/operators';
5
5
  import { I18nUtil } from '../../utils';
6
6
  import * as i0 from "@angular/core";
7
7
  import * as i1 from "@angular/router";
8
8
  import * as i2 from "@ngx-translate/core";
9
9
  import * as i3 from "../../services";
10
10
  import * as i4 from "primeng/api";
11
- import * as i5 from "../tableview/services";
11
+ import * as i5 from "../../services/mng-view-container-component.service";
12
12
  import * as i6 from "primeng/confirmdialog";
13
13
  import * as i7 from "@angular/common";
14
14
  import * as i8 from "primeng/button";
15
15
  import * as i9 from "primeng/ripple";
16
16
  import * as i10 from "primeng/tooltip";
17
17
  export class MngActionComponent {
18
- constructor(route, translate, actionService, confirmationService, tableviewService) {
18
+ constructor(route, translate, actionExecutor, confirmationService, viewContainerService) {
19
19
  this.route = route;
20
20
  this.translate = translate;
21
- this.actionService = actionService;
21
+ this.actionExecutor = actionExecutor;
22
22
  this.confirmationService = confirmationService;
23
- this.tableviewService = tableviewService;
23
+ this.viewContainerService = viewContainerService;
24
24
  this.loadingSubject = new ReplaySubject(1);
25
25
  this.$loading = this.loadingSubject.asObservable();
26
26
  this.cmpId = Math.random().toString(36).substring(2);
27
27
  this.loadingSubject.next(false);
28
28
  }
29
29
  ngOnInit() {
30
- const context = this.actionService.getActionExecContext(this.action, this.itemId, this.item, this.tableviewService?.dataProvider ?? undefined, this.tableviewService, this, this.actionData);
30
+ this.viewContainer = this.viewContainerInit ?? this.viewContainerService ?? undefined;
31
+ const context = this.actionExecutor.prepareActionExecContext(this.action, this.itemId, this.item, this.dataProvider, this.viewContainer ?? undefined, this, this.actionData);
31
32
  this.$isVisible = typeof this.action.isVisibleFunction === 'function' ? this.action.isVisibleFunction(context) : of(true);
32
33
  this.$isEnabled = typeof this.action.isEnabledFunction === 'function' ? this.action.isEnabledFunction(context) : of(true);
33
34
  this.$label = I18nUtil.streamActionTranslation(this.translate, this.action, 'title', this.action?.title ?? undefined, this.item);
@@ -38,11 +39,17 @@ export class MngActionComponent {
38
39
  this.loadingSubject.next(true);
39
40
  const actionData = this.actionData ? this.actionData : {};
40
41
  actionData['cmpId'] = this.cmpId;
41
- this.actionService
42
- .triggerAction(this.action, this.itemId, this.item, actionData, this.route, this.tableviewService, this)
43
- .pipe(first(), finalize(() => this.loadingSubject.next(false)))
44
- // eslint-disable-next-line @typescript-eslint/no-empty-function
45
- .subscribe(() => { });
42
+ this.actionExecutor
43
+ .triggerAction(this.action, this.itemId, this.item, actionData, this.route, this.viewContainer, this)
44
+ .pipe(first())
45
+ .subscribe({
46
+ next: () => {
47
+ this.loadingSubject.next(false);
48
+ },
49
+ error: err => {
50
+ console.error(`Error occurred while executing action ${this.action.actionName}.`, err);
51
+ }
52
+ });
46
53
  }
47
54
  getConfirmationService() {
48
55
  return this.confirmationService;
@@ -51,12 +58,14 @@ export class MngActionComponent {
51
58
  return `${action.actionName}_${this.cmpId}`;
52
59
  }
53
60
  }
54
- MngActionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: MngActionComponent, deps: [{ token: i1.ActivatedRoute }, { token: i2.TranslateService }, { token: i3.MngActionService }, { token: i4.ConfirmationService }, { token: i5.TableviewComponentService }], target: i0.ɵɵFactoryTarget.Component });
55
- MngActionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: MngActionComponent, selector: "mng-action", inputs: { action: "action", item: "item", itemId: "itemId", actionData: "actionData" }, providers: [MessageService, ConfirmationService], ngImport: i0, template: "<ng-container *ngIf=\"$isVisible | async\">\n <button\n *ngIf=\"action.icon && action.title === null; else noIcon\"\n type=\"button\"\n pButton\n pRipple\n [icon]=\"action.icon\"\n [loading]=\"($loading | async) ?? false\"\n [disabled]=\"($isEnabled | async) === false\"\n [pTooltip]=\"$any($tooltip | async)\"\n (click)=\"triggerAction($event)\"\n class=\"mng-action-button mng-action-button-icon p-button-rounded\"\n [class.p-button-primary]=\"action.level === 1\"\n [class.p-button-success]=\"action.level === 5\"\n [class.p-button-danger]=\"action.level === 7\"></button>\n <ng-template #noIcon>\n <button\n type=\"button\"\n pButton\n pRipple\n [icon]=\"$any(action.icon)\"\n [label]=\"($label | async) ?? ''\"\n [loading]=\"($loading | async) ?? false\"\n [disabled]=\"($isEnabled | async) === false\"\n [pTooltip]=\"$any($tooltip | async)\"\n (click)=\"triggerAction($event)\"\n class=\"mng-action-button p-button-text\"\n [class.p-button-primary]=\"action.level === 1\"\n [class.p-button-success]=\"action.level === 5\"\n [class.p-button-danger]=\"action.level === 7\"></button>\n </ng-template>\n <p-confirmDialog *ngIf=\"action.hasRunConfirmation\" [key]=\"action.actionName + '_' + cmpId\" [baseZIndex]=\"50\" appendTo=\"body\"></p-confirmDialog>\n</ng-container>\n", components: [{ type: i6.ConfirmDialog, selector: "p-confirmDialog", inputs: ["header", "icon", "message", "style", "styleClass", "maskStyleClass", "acceptIcon", "acceptLabel", "acceptAriaLabel", "acceptVisible", "rejectIcon", "rejectLabel", "rejectAriaLabel", "rejectVisible", "acceptButtonStyleClass", "rejectButtonStyleClass", "closeOnEscape", "dismissableMask", "blockScroll", "rtl", "closable", "appendTo", "key", "autoZIndex", "baseZIndex", "transitionOptions", "focusTrap", "defaultFocus", "breakpoints", "visible", "position"], outputs: ["onHide"] }], directives: [{ type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i8.ButtonDirective, selector: "[pButton]", inputs: ["iconPos", "loadingIcon", "label", "icon", "loading"] }, { type: i9.Ripple, selector: "[pRipple]" }, { type: i10.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "appendTo", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "pTooltip", "tooltipDisabled", "tooltipOptions"] }], pipes: { "async": i7.AsyncPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
61
+ MngActionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: MngActionComponent, deps: [{ token: i1.ActivatedRoute }, { token: i2.TranslateService }, { token: i3.MngActionExecutorService }, { token: i4.ConfirmationService }, { token: i5.MngViewContainerComponentService, optional: true }], target: i0.ɵɵFactoryTarget.Component });
62
+ MngActionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: MngActionComponent, selector: "mng-action", inputs: { action: "action", item: "item", itemId: "itemId", actionData: "actionData", dataProvider: "dataProvider", viewContainerInit: ["viewContainer", "viewContainerInit"] }, providers: [ConfirmationService], ngImport: i0, template: "<ng-container *ngIf=\"$isVisible | async\">\n <button\n *ngIf=\"action.icon && action.title === null; else noIcon\"\n type=\"button\"\n pButton\n pRipple\n [icon]=\"action.icon\"\n [loading]=\"($loading | async) ?? false\"\n [disabled]=\"($isEnabled | async) === false\"\n [pTooltip]=\"$any($tooltip | async)\"\n (click)=\"triggerAction($event)\"\n class=\"mng-action-button mng-action-button-icon p-button-rounded\"\n [class.mng-button-xs]=\"action.isSizeExtraSmall\"\n [class.mng-button-sm]=\"action.isSizeSmall\"\n [class.mng-button-lg]=\"action.isSizeLarge\"\n [class.mng-button-xl]=\"action.isSizeExtraLarge\"\n [class.p-button-primary]=\"action.level === 1\"\n [class.p-button-success]=\"action.level === 5\"\n [class.p-button-danger]=\"action.level === 7\"></button>\n <ng-template #noIcon>\n <button\n type=\"button\"\n pButton\n pRipple\n [icon]=\"$any(action.icon)\"\n [label]=\"($label | async) ?? ''\"\n [loading]=\"($loading | async) ?? false\"\n [disabled]=\"($isEnabled | async) === false\"\n [pTooltip]=\"$any($tooltip | async)\"\n (click)=\"triggerAction($event)\"\n class=\"mng-action-button p-button-text\"\n [class.p-button-sm]=\"action.isSizeSmall\"\n [class.p-button-lg]=\"action.isSizeLarge\"\n [class.p-button-primary]=\"action.level === 1\"\n [class.p-button-success]=\"action.level === 5\"\n [class.p-button-danger]=\"action.level === 7\"></button>\n </ng-template>\n <p-confirmDialog *ngIf=\"action.hasRunConfirmation\" [key]=\"action.actionName + '_' + cmpId\" [baseZIndex]=\"50\" appendTo=\"body\"></p-confirmDialog>\n</ng-container>\n", components: [{ type: i6.ConfirmDialog, selector: "p-confirmDialog", inputs: ["header", "icon", "message", "style", "styleClass", "maskStyleClass", "acceptIcon", "acceptLabel", "acceptAriaLabel", "acceptVisible", "rejectIcon", "rejectLabel", "rejectAriaLabel", "rejectVisible", "acceptButtonStyleClass", "rejectButtonStyleClass", "closeOnEscape", "dismissableMask", "blockScroll", "rtl", "closable", "appendTo", "key", "autoZIndex", "baseZIndex", "transitionOptions", "focusTrap", "defaultFocus", "breakpoints", "visible", "position"], outputs: ["onHide"] }], directives: [{ type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i8.ButtonDirective, selector: "[pButton]", inputs: ["iconPos", "loadingIcon", "label", "icon", "loading"] }, { type: i9.Ripple, selector: "[pRipple]" }, { type: i10.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "appendTo", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "pTooltip", "tooltipDisabled", "tooltipOptions"] }], pipes: { "async": i7.AsyncPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
56
63
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: MngActionComponent, decorators: [{
57
64
  type: Component,
58
- args: [{ selector: 'mng-action', changeDetection: ChangeDetectionStrategy.OnPush, providers: [MessageService, ConfirmationService], template: "<ng-container *ngIf=\"$isVisible | async\">\n <button\n *ngIf=\"action.icon && action.title === null; else noIcon\"\n type=\"button\"\n pButton\n pRipple\n [icon]=\"action.icon\"\n [loading]=\"($loading | async) ?? false\"\n [disabled]=\"($isEnabled | async) === false\"\n [pTooltip]=\"$any($tooltip | async)\"\n (click)=\"triggerAction($event)\"\n class=\"mng-action-button mng-action-button-icon p-button-rounded\"\n [class.p-button-primary]=\"action.level === 1\"\n [class.p-button-success]=\"action.level === 5\"\n [class.p-button-danger]=\"action.level === 7\"></button>\n <ng-template #noIcon>\n <button\n type=\"button\"\n pButton\n pRipple\n [icon]=\"$any(action.icon)\"\n [label]=\"($label | async) ?? ''\"\n [loading]=\"($loading | async) ?? false\"\n [disabled]=\"($isEnabled | async) === false\"\n [pTooltip]=\"$any($tooltip | async)\"\n (click)=\"triggerAction($event)\"\n class=\"mng-action-button p-button-text\"\n [class.p-button-primary]=\"action.level === 1\"\n [class.p-button-success]=\"action.level === 5\"\n [class.p-button-danger]=\"action.level === 7\"></button>\n </ng-template>\n <p-confirmDialog *ngIf=\"action.hasRunConfirmation\" [key]=\"action.actionName + '_' + cmpId\" [baseZIndex]=\"50\" appendTo=\"body\"></p-confirmDialog>\n</ng-container>\n" }]
59
- }], ctorParameters: function () { return [{ type: i1.ActivatedRoute }, { type: i2.TranslateService }, { type: i3.MngActionService }, { type: i4.ConfirmationService }, { type: i5.TableviewComponentService }]; }, propDecorators: { action: [{
65
+ args: [{ selector: 'mng-action', changeDetection: ChangeDetectionStrategy.OnPush, providers: [ConfirmationService], template: "<ng-container *ngIf=\"$isVisible | async\">\n <button\n *ngIf=\"action.icon && action.title === null; else noIcon\"\n type=\"button\"\n pButton\n pRipple\n [icon]=\"action.icon\"\n [loading]=\"($loading | async) ?? false\"\n [disabled]=\"($isEnabled | async) === false\"\n [pTooltip]=\"$any($tooltip | async)\"\n (click)=\"triggerAction($event)\"\n class=\"mng-action-button mng-action-button-icon p-button-rounded\"\n [class.mng-button-xs]=\"action.isSizeExtraSmall\"\n [class.mng-button-sm]=\"action.isSizeSmall\"\n [class.mng-button-lg]=\"action.isSizeLarge\"\n [class.mng-button-xl]=\"action.isSizeExtraLarge\"\n [class.p-button-primary]=\"action.level === 1\"\n [class.p-button-success]=\"action.level === 5\"\n [class.p-button-danger]=\"action.level === 7\"></button>\n <ng-template #noIcon>\n <button\n type=\"button\"\n pButton\n pRipple\n [icon]=\"$any(action.icon)\"\n [label]=\"($label | async) ?? ''\"\n [loading]=\"($loading | async) ?? false\"\n [disabled]=\"($isEnabled | async) === false\"\n [pTooltip]=\"$any($tooltip | async)\"\n (click)=\"triggerAction($event)\"\n class=\"mng-action-button p-button-text\"\n [class.p-button-sm]=\"action.isSizeSmall\"\n [class.p-button-lg]=\"action.isSizeLarge\"\n [class.p-button-primary]=\"action.level === 1\"\n [class.p-button-success]=\"action.level === 5\"\n [class.p-button-danger]=\"action.level === 7\"></button>\n </ng-template>\n <p-confirmDialog *ngIf=\"action.hasRunConfirmation\" [key]=\"action.actionName + '_' + cmpId\" [baseZIndex]=\"50\" appendTo=\"body\"></p-confirmDialog>\n</ng-container>\n" }]
66
+ }], ctorParameters: function () { return [{ type: i1.ActivatedRoute }, { type: i2.TranslateService }, { type: i3.MngActionExecutorService }, { type: i4.ConfirmationService }, { type: i5.MngViewContainerComponentService, decorators: [{
67
+ type: Optional
68
+ }] }]; }, propDecorators: { action: [{
60
69
  type: Input
61
70
  }], item: [{
62
71
  type: Input
@@ -64,5 +73,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImpor
64
73
  type: Input
65
74
  }], actionData: [{
66
75
  type: Input
76
+ }], dataProvider: [{
77
+ type: Input
78
+ }], viewContainerInit: [{
79
+ type: Input,
80
+ args: ['viewContainer']
67
81
  }] } });
68
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9hY3Rpb24vYWN0aW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9hY3Rpb24vYWN0aW9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFTLE1BQU0sZUFBZSxDQUFDO0FBSWhGLE9BQU8sRUFBQyxtQkFBbUIsRUFBRSxjQUFjLEVBQUMsTUFBTSxhQUFhLENBQUM7QUFDaEUsT0FBTyxFQUFhLGFBQWEsRUFBRSxFQUFFLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFDbkQsT0FBTyxFQUFDLFFBQVEsRUFBRSxLQUFLLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUsvQyxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sYUFBYSxDQUFDOzs7Ozs7Ozs7Ozs7QUFVckMsTUFBTSxPQUFPLGtCQUFrQjtJQWdCM0IsWUFDWSxLQUFxQixFQUNyQixTQUEyQixFQUMzQixhQUErQixFQUMvQixtQkFBd0MsRUFDeEMsZ0JBQWlEO1FBSmpELFVBQUssR0FBTCxLQUFLLENBQWdCO1FBQ3JCLGNBQVMsR0FBVCxTQUFTLENBQWtCO1FBQzNCLGtCQUFhLEdBQWIsYUFBYSxDQUFrQjtRQUMvQix3QkFBbUIsR0FBbkIsbUJBQW1CLENBQXFCO1FBQ3hDLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBaUM7UUFkckQsbUJBQWMsR0FBRyxJQUFJLGFBQWEsQ0FBVSxDQUFDLENBQUMsQ0FBQztRQUNoRCxhQUFRLEdBQXdCLElBQUksQ0FBQyxjQUFjLENBQUMsWUFBWSxFQUFFLENBQUM7UUFFbkUsVUFBSyxHQUFXLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUMsU0FBUyxD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QUVMLHVCQUF1QixDQUFDLE1BQU0sYUFDcEMsQ0FBQyxjQUFjLEVBQUUsbUJBQW1CLENBQUM7Nk9BSWhDLE1BQU07c0JBQXJCLEtBQUs7Z0JBQ1UsSUFBSTtzQkFBbkIsS0FBSztnQkFDVSxNQUFNO3NCQUFyQixLQUFLO2dCQUNVLFVBQVU7c0JBQXpCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIElucHV0LCBPbkluaXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtBY3RpdmF0ZWRSb3V0ZX0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcblxuaW1wb3J0IHtUcmFuc2xhdGVTZXJ2aWNlfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7Q29uZmlybWF0aW9uU2VydmljZSwgTWVzc2FnZVNlcnZpY2V9IGZyb20gJ3ByaW1lbmcvYXBpJztcbmltcG9ydCB7T2JzZXJ2YWJsZSwgUmVwbGF5U3ViamVjdCwgb2Z9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtmaW5hbGl6ZSwgZmlyc3R9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHtBY3Rpb25EZXNjcmlwdG9yfSBmcm9tICcuLi8uLi9kZXNjcmlwdG9ycyc7XG5pbXBvcnQge01uZ0FjdGlvblNlcnZpY2V9IGZyb20gJy4uLy4uL3NlcnZpY2VzJztcbmltcG9ydCB7SWRUeXBlfSBmcm9tICcuLi8uLi90eXBlcyc7XG5pbXBvcnQge0kxOG5VdGlsfSBmcm9tICcuLi8uLi91dGlscyc7XG5pbXBvcnQge1RhYmxldmlld0NvbXBvbmVudFNlcnZpY2V9IGZyb20gJy4uL3RhYmxldmlldy9zZXJ2aWNlcyc7XG5pbXBvcnQge0FjdGlvbkRhdGEsIElBY3Rpb25Db25maXJtYXRpb25TZXJ2aWNlfSBmcm9tICcuL21vZGVscyc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnbW5nLWFjdGlvbicsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2FjdGlvbi5jb21wb25lbnQuaHRtbCcsXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgcHJvdmlkZXJzOiBbTWVzc2FnZVNlcnZpY2UsIENvbmZpcm1hdGlvblNlcnZpY2VdXG59KVxuZXhwb3J0IGNsYXNzIE1uZ0FjdGlvbkNvbXBvbmVudDxULCBTPiBpbXBsZW1lbnRzIE9uSW5pdCwgSUFjdGlvbkNvbmZpcm1hdGlvblNlcnZpY2Uge1xuICAgIC8vIG1ldGFkYXRhIGFuZCBlZGl0b3IgbW9kZSBpbnB1dFxuICAgIEBJbnB1dCgpIHB1YmxpYyBhY3Rpb24hOiBBY3Rpb25EZXNjcmlwdG9yPFQ+O1xuICAgIEBJbnB1dCgpIHB1YmxpYyBpdGVtPzogVDtcbiAgICBASW5wdXQoKSBwdWJsaWMgaXRlbUlkPzogSWRUeXBlO1xuICAgIEBJbnB1dCgpIHB1YmxpYyBhY3Rpb25EYXRhPzogQWN0aW9uRGF0YTtcblxuICAgIHByaXZhdGUgbG9hZGluZ1N1YmplY3QgPSBuZXcgUmVwbGF5U3ViamVjdDxib29sZWFuPigxKTtcbiAgICBwdWJsaWMgJGxvYWRpbmc6IE9ic2VydmFibGU8Ym9vbGVhbj4gPSB0aGlzLmxvYWRpbmdTdWJqZWN0LmFzT2JzZXJ2YWJsZSgpO1xuXG4gICAgcHVibGljIGNtcElkOiBzdHJpbmcgPSBNYXRoLnJhbmRvbSgpLnRvU3RyaW5nKDM2KS5zdWJzdHJpbmcoMik7XG4gICAgcHVibGljICRpc1Zpc2libGUhOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuICAgIHB1YmxpYyAkaXNFbmFibGVkITogT2JzZXJ2YWJsZTxib29sZWFuPjtcbiAgICBwdWJsaWMgJGxhYmVsITogT2JzZXJ2YWJsZTxzdHJpbmcgfCBudWxsPjtcbiAgICBwdWJsaWMgJHRvb2x0aXAhOiBPYnNlcnZhYmxlPHN0cmluZyB8IG51bGw+O1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgcm91dGU6IEFjdGl2YXRlZFJvdXRlLFxuICAgICAgICBwcml2YXRlIHRyYW5zbGF0ZTogVHJhbnNsYXRlU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBhY3Rpb25TZXJ2aWNlOiBNbmdBY3Rpb25TZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIGNvbmZpcm1hdGlvblNlcnZpY2U6IENvbmZpcm1hdGlvblNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgdGFibGV2aWV3U2VydmljZTogVGFibGV2aWV3Q29tcG9uZW50U2VydmljZTxULCBTPlxuICAgICkge1xuICAgICAgICB0aGlzLmxvYWRpbmdTdWJqZWN0Lm5leHQoZmFsc2UpO1xuICAgIH1cblxuICAgIHB1YmxpYyBuZ09uSW5pdCgpIHtcbiAgICAgICAgY29uc3QgY29udGV4dCA9IHRoaXMuYWN0aW9uU2VydmljZS5nZXRBY3Rpb25FeGVjQ29udGV4dChcbiAgICAgICAgICAgIHRoaXMuYWN0aW9uLFxuICAgICAgICAgICAgdGhpcy5pdGVtSWQsXG4gICAgICAgICAgICB0aGlzLml0ZW0sXG4gICAgICAgICAgICB0aGlzLnRhYmxldmlld1NlcnZpY2U/LmRhdGFQcm92aWRlciA/PyB1bmRlZmluZWQsXG4gICAgICAgICAgICB0aGlzLnRhYmxldmlld1NlcnZpY2UsXG4gICAgICAgICAgICB0aGlzLFxuICAgICAgICAgICAgdGhpcy5hY3Rpb25EYXRhXG4gICAgICAgICk7XG4gICAgICAgIHRoaXMuJGlzVmlzaWJsZSA9IHR5cGVvZiB0aGlzLmFjdGlvbi5pc1Zpc2libGVGdW5jdGlvbiA9PT0gJ2Z1bmN0aW9uJyA/IHRoaXMuYWN0aW9uLmlzVmlzaWJsZUZ1bmN0aW9uKGNvbnRleHQpIDogb2YodHJ1ZSk7XG4gICAgICAgIHRoaXMuJGlzRW5hYmxlZCA9IHR5cGVvZiB0aGlzLmFjdGlvbi5pc0VuYWJsZWRGdW5jdGlvbiA9PT0gJ2Z1bmN0aW9uJyA/IHRoaXMuYWN0aW9uLmlzRW5hYmxlZEZ1bmN0aW9uKGNvbnRleHQpIDogb2YodHJ1ZSk7XG4gICAgICAgIHRoaXMuJGxhYmVsID0gSTE4blV0aWwuc3RyZWFtQWN0aW9uVHJhbnNsYXRpb24odGhpcy50cmFuc2xhdGUsIHRoaXMuYWN0aW9uLCAndGl0bGUnLCB0aGlzLmFjdGlvbj8udGl0bGUgPz8gdW5kZWZpbmVkLCB0aGlzLml0ZW0pO1xuICAgICAgICB0aGlzLiR0b29sdGlwID0gSTE4blV0aWwuc3RyZWFtQWN0aW9uVHJhbnNsYXRpb24odGhpcy50cmFuc2xhdGUsIHRoaXMuYWN0aW9uLCAndG9vbHRpcCcsIHRoaXMuYWN0aW9uPy50b29sdGlwID8/IHVuZGVmaW5lZCwgdGhpcy5pdGVtKTtcbiAgICB9XG5cbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVudXNlZC12YXJzXG4gICAgcHVibGljIHRyaWdnZXJBY3Rpb24oZXZlbnQ6IEV2ZW50KSB7XG4gICAgICAgIHRoaXMubG9hZGluZ1N1YmplY3QubmV4dCh0cnVlKTtcbiAgICAgICAgY29uc3QgYWN0aW9uRGF0YSA9IHRoaXMuYWN0aW9uRGF0YSA/IHRoaXMuYWN0aW9uRGF0YSA6IHt9O1xuICAgICAgICBhY3Rpb25EYXRhWydjbXBJZCddID0gdGhpcy5jbXBJZDtcbiAgICAgICAgdGhpcy5hY3Rpb25TZXJ2aWNlXG4gICAgICAgICAgICAudHJpZ2dlckFjdGlvbih0aGlzLmFjdGlvbiwgdGhpcy5pdGVtSWQsIHRoaXMuaXRlbSwgYWN0aW9uRGF0YSwgdGhpcy5yb3V0ZSwgdGhpcy50YWJsZXZpZXdTZXJ2aWNlLCB0aGlzKVxuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgZmlyc3QoKSxcbiAgICAgICAgICAgICAgICBmaW5hbGl6ZSgoKSA9PiB0aGlzLmxvYWRpbmdTdWJqZWN0Lm5leHQoZmFsc2UpKVxuICAgICAgICAgICAgKVxuICAgICAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1lbXB0eS1mdW5jdGlvblxuICAgICAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB7fSk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldENvbmZpcm1hdGlvblNlcnZpY2UoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmNvbmZpcm1hdGlvblNlcnZpY2U7XG4gICAgfVxuXG4gICAgcHVibGljIGdldENvbmZpcm1hdGlvblNlcnZpY2VJbnN0YW5jZUtleShhY3Rpb246IEFjdGlvbkRlc2NyaXB0b3I8YW55Pikge1xuICAgICAgICByZXR1cm4gYCR7YWN0aW9uLmFjdGlvbk5hbWV9XyR7dGhpcy5jbXBJZH1gO1xuICAgIH1cbn1cbiIsIjxuZy1jb250YWluZXIgKm5nSWY9XCIkaXNWaXNpYmxlIHwgYXN5bmNcIj5cbiAgICA8YnV0dG9uXG4gICAgICAgICpuZ0lmPVwiYWN0aW9uLmljb24gJiYgYWN0aW9uLnRpdGxlID09PSBudWxsOyBlbHNlIG5vSWNvblwiXG4gICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICBwQnV0dG9uXG4gICAgICAgIHBSaXBwbGVcbiAgICAgICAgW2ljb25dPVwiYWN0aW9uLmljb25cIlxuICAgICAgICBbbG9hZGluZ109XCIoJGxvYWRpbmcgfCBhc3luYykgPz8gZmFsc2VcIlxuICAgICAgICBbZGlzYWJsZWRdPVwiKCRpc0VuYWJsZWQgfCBhc3luYykgPT09IGZhbHNlXCJcbiAgICAgICAgW3BUb29sdGlwXT1cIiRhbnkoJHRvb2x0aXAgfCBhc3luYylcIlxuICAgICAgICAoY2xpY2spPVwidHJpZ2dlckFjdGlvbigkZXZlbnQpXCJcbiAgICAgICAgY2xhc3M9XCJtbmctYWN0aW9uLWJ1dHRvbiBtbmctYWN0aW9uLWJ1dHRvbi1pY29uIHAtYnV0dG9uLXJvdW5kZWRcIlxuICAgICAgICBbY2xhc3MucC1idXR0b24tcHJpbWFyeV09XCJhY3Rpb24ubGV2ZWwgPT09IDFcIlxuICAgICAgICBbY2xhc3MucC1idXR0b24tc3VjY2Vzc109XCJhY3Rpb24ubGV2ZWwgPT09IDVcIlxuICAgICAgICBbY2xhc3MucC1idXR0b24tZGFuZ2VyXT1cImFjdGlvbi5sZXZlbCA9PT0gN1wiPjwvYnV0dG9uPlxuICAgIDxuZy10ZW1wbGF0ZSAjbm9JY29uPlxuICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgIHBCdXR0b25cbiAgICAgICAgICAgIHBSaXBwbGVcbiAgICAgICAgICAgIFtpY29uXT1cIiRhbnkoYWN0aW9uLmljb24pXCJcbiAgICAgICAgICAgIFtsYWJlbF09XCIoJGxhYmVsIHwgYXN5bmMpID8/ICcnXCJcbiAgICAgICAgICAgIFtsb2FkaW5nXT1cIigkbG9hZGluZyB8IGFzeW5jKSA/PyBmYWxzZVwiXG4gICAgICAgICAgICBbZGlzYWJsZWRdPVwiKCRpc0VuYWJsZWQgfCBhc3luYykgPT09IGZhbHNlXCJcbiAgICAgICAgICAgIFtwVG9vbHRpcF09XCIkYW55KCR0b29sdGlwIHwgYXN5bmMpXCJcbiAgICAgICAgICAgIChjbGljayk9XCJ0cmlnZ2VyQWN0aW9uKCRldmVudClcIlxuICAgICAgICAgICAgY2xhc3M9XCJtbmctYWN0aW9uLWJ1dHRvbiBwLWJ1dHRvbi10ZXh0XCJcbiAgICAgICAgICAgIFtjbGFzcy5wLWJ1dHRvbi1wcmltYXJ5XT1cImFjdGlvbi5sZXZlbCA9PT0gMVwiXG4gICAgICAgICAgICBbY2xhc3MucC1idXR0b24tc3VjY2Vzc109XCJhY3Rpb24ubGV2ZWwgPT09IDVcIlxuICAgICAgICAgICAgW2NsYXNzLnAtYnV0dG9uLWRhbmdlcl09XCJhY3Rpb24ubGV2ZWwgPT09IDdcIj48L2J1dHRvbj5cbiAgICA8L25nLXRlbXBsYXRlPlxuICAgIDxwLWNvbmZpcm1EaWFsb2cgKm5nSWY9XCJhY3Rpb24uaGFzUnVuQ29uZmlybWF0aW9uXCIgW2tleV09XCJhY3Rpb24uYWN0aW9uTmFtZSArICdfJyArIGNtcElkXCIgW2Jhc2VaSW5kZXhdPVwiNTBcIiBhcHBlbmRUbz1cImJvZHlcIj48L3AtY29uZmlybURpYWxvZz5cbjwvbmctY29udGFpbmVyPlxuIl19
82
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9hY3Rpb24vYWN0aW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9hY3Rpb24vYWN0aW9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFVLFFBQVEsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUkxRixPQUFPLEVBQUMsbUJBQW1CLEVBQUMsTUFBTSxhQUFhLENBQUM7QUFDaEQsT0FBTyxFQUFhLGFBQWEsRUFBRSxFQUFFLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFDbkQsT0FBTyxFQUFDLEtBQUssRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBUXJDLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxhQUFhLENBQUM7Ozs7Ozs7Ozs7OztBQVNyQyxNQUFNLE9BQU8sa0JBQWtCO0lBcUIzQixZQUNZLEtBQXFCLEVBQ3JCLFNBQTJCLEVBQzNCLGNBQXdDLEVBQ3hDLG1CQUF3QyxFQUM1QixvQkFBbUU7UUFKL0UsVUFBSyxHQUFMLEtBQUssQ0FBZ0I7UUFDckIsY0FBUyxHQUFULFNBQVMsQ0FBa0I7UUFDM0IsbUJBQWMsR0FBZCxjQUFjLENBQTBCO1FBQ3hDLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBcUI7UUFDNUIseUJBQW9CLEdBQXBCLG9CQUFvQixDQUErQztRQWhCbkYsbUJBQWMsR0FBRyxJQUFJLGFBQWEsQ0FBVSxDQUFDLENBQUMsQ0FBQztRQUNoRCxhQUFRLEdBQXdCLElBQUksQ0FBQyxjQUFjLENBQUMsWUFBWSxFQUFFLENBQUM7UUFFbkUsVUFBSyxHQUFXLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBZTNELElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3BDLENBQUM7SUFFTSxRQUFRO1FBQ1gsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsaUJBQWlCLElBQUksSUFBSSxDQUFDLG9CQUFvQixJQUFJLFNBQVMsQ0FBQztRQUN0RixNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLHdCQUF3QixDQUN4RCxJQUFJLENBQUMsTUFBTSxFQUNYLElBQUksQ0FBQyxNQUFNLEVBQ1gsSUFBSSxDQUFDLElBQUksRUFDVCxJQUFJLENBQUMsWUFBWSxFQUNqQixJQUFJLENBQUMsYUFBYSxJQUFJLFNBQVMsRUFDL0IsSUFBSSxFQUNKLElBQUksQ0FBQyxVQUFVLENBQ2xCLENBQUM7UUFDRixJQUFJLENBQUMsVUFBVSxHQUFHLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxpQkFBaUIsS0FBSyxVQUFVLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsaUJBQWlCLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUMxSCxJQUFJLENBQUMsVUFBVSxHQUFHLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxpQkFBaUIsS0FBSyxVQUFVLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsaUJBQWlCLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUMxSCxJQUFJLENBQUMsTUFBTSxHQUFHLFFBQVEsQ0FBQyx1QkFBdUIsQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxNQUFNLEVBQUUsT0FBTyxFQUFFLElBQUksQ0FBQyxNQUFNLEVBQUUsS0FBSyxJQUFJLFNBQVMsRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDakksSUFBSSxDQUFDLFFBQVEsR0FBRyxRQUFRLENBQUMsdUJBQXVCLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsTUFBTSxFQUFFLFNBQVMsRUFBRSxJQUFJLENBQUMsTUFBTSxFQUFFLE9BQU8sSUFBSSxTQUFTLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzNJLENBQUM7SUFFRCw2REFBNkQ7SUFDdEQsYUFBYSxDQUFDLEtBQVk7UUFDN0IsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFL0IsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1FBQzFELFVBQVUsQ0FBQyxPQUFPLENBQUMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDO1FBRWpDLElBQUksQ0FBQyxjQUFjO2FBQ2QsYUFBYSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsSUFBSSxFQUFFLFVBQVUsRUFBRSxJQUFJLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxhQUFhLEVBQUUsSUFBSSxDQUFDO2FBQ3BHLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQzthQUNiLFNBQVMsQ0FBQztZQUNQLElBQUksRUFBRSxHQUFHLEVBQUU7Z0JBQ1AsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDcEMsQ0FBQztZQUNELEtBQUssRUFBRSxHQUFHLENBQUMsRUFBRTtnQkFDVCxPQUFPLENBQUMsS0FBSyxDQUFDLHlDQUF5QyxJQUFJLENBQUMsTUFBTSxDQUFDLFVBQVUsR0FBRyxFQUFFLEdBQUcsQ0FBQyxDQUFDO1lBQzNGLENBQUM7U0FDSixDQUFDLENBQUM7SUFDWCxDQUFDO0lBRU0sc0JBQXNCO1FBQ3pCLE9BQU8sSUFBSSxDQUFDLG1CQUFtQixDQUFDO0lBQ3BDLENBQUM7SUFFTSxpQ0FBaUMsQ0FBQyxNQUE2QjtRQUNsRSxPQUFPLEdBQUcsTUFBTSxDQUFDLFVBQVUsSUFBSSxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDaEQsQ0FBQzs7K0dBMUVRLGtCQUFrQjttR0FBbEIsa0JBQWtCLHNOQUZoQixDQUFDLG1CQUFtQixDQUFDLDBCQ3JCcEMsNjBEQXVDQTsyRkRoQmEsa0JBQWtCO2tCQU45QixTQUFTOytCQUNJLFlBQVksbUJBRUwsdUJBQXVCLENBQUMsTUFBTSxhQUNwQyxDQUFDLG1CQUFtQixDQUFDOzswQkE0QjNCLFFBQVE7NENBeEJHLE1BQU07c0JBQXJCLEtBQUs7Z0JBQ1UsSUFBSTtzQkFBbkIsS0FBSztnQkFDVSxNQUFNO3NCQUFyQixLQUFLO2dCQUNVLFVBQVU7c0JBQXpCLEtBQUs7Z0JBQ1UsWUFBWTtzQkFBM0IsS0FBSztnQkFFeUIsaUJBQWlCO3NCQUEvQyxLQUFLO3VCQUFDLGVBQWUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIElucHV0LCBPbkluaXQsIE9wdGlvbmFsfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7QWN0aXZhdGVkUm91dGV9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5cbmltcG9ydCB7VHJhbnNsYXRlU2VydmljZX0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5pbXBvcnQge0NvbmZpcm1hdGlvblNlcnZpY2V9IGZyb20gJ3ByaW1lbmcvYXBpJztcbmltcG9ydCB7T2JzZXJ2YWJsZSwgUmVwbGF5U3ViamVjdCwgb2Z9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtmaXJzdH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQge0RhdGFQcm92aWRlcn0gZnJvbSAnLi4vLi4vZGF0YS1wcm92aWRlcnMnO1xuaW1wb3J0IHtBY3Rpb25EZXNjcmlwdG9yfSBmcm9tICcuLi8uLi9kZXNjcmlwdG9ycyc7XG5pbXBvcnQge0lWaWV3Q29udGFpbmVyfSBmcm9tICcuLi8uLi9tb2RlbHMnO1xuaW1wb3J0IHtNbmdBY3Rpb25FeGVjdXRvclNlcnZpY2V9IGZyb20gJy4uLy4uL3NlcnZpY2VzJztcbmltcG9ydCB7TW5nVmlld0NvbnRhaW5lckNvbXBvbmVudFNlcnZpY2V9IGZyb20gJy4uLy4uL3NlcnZpY2VzL21uZy12aWV3LWNvbnRhaW5lci1jb21wb25lbnQuc2VydmljZSc7XG5pbXBvcnQge0lkVHlwZX0gZnJvbSAnLi4vLi4vdHlwZXMnO1xuaW1wb3J0IHtJMThuVXRpbH0gZnJvbSAnLi4vLi4vdXRpbHMnO1xuaW1wb3J0IHtBY3Rpb25EYXRhLCBJQWN0aW9uQ29uZmlybWF0aW9uU2VydmljZX0gZnJvbSAnLi9tb2RlbHMnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ21uZy1hY3Rpb24nLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9hY3Rpb24uY29tcG9uZW50Lmh0bWwnLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIHByb3ZpZGVyczogW0NvbmZpcm1hdGlvblNlcnZpY2VdXG59KVxuZXhwb3J0IGNsYXNzIE1uZ0FjdGlvbkNvbXBvbmVudDxULCBTPiBpbXBsZW1lbnRzIE9uSW5pdCwgSUFjdGlvbkNvbmZpcm1hdGlvblNlcnZpY2Uge1xuICAgIC8vIG1ldGFkYXRhIGFuZCBlZGl0b3IgbW9kZSBpbnB1dFxuICAgIEBJbnB1dCgpIHB1YmxpYyBhY3Rpb24hOiBBY3Rpb25EZXNjcmlwdG9yPFQ+O1xuICAgIEBJbnB1dCgpIHB1YmxpYyBpdGVtPzogVDtcbiAgICBASW5wdXQoKSBwdWJsaWMgaXRlbUlkPzogSWRUeXBlO1xuICAgIEBJbnB1dCgpIHB1YmxpYyBhY3Rpb25EYXRhPzogQWN0aW9uRGF0YTtcbiAgICBASW5wdXQoKSBwdWJsaWMgZGF0YVByb3ZpZGVyPzogRGF0YVByb3ZpZGVyPFQsIFM+O1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXQtcmVuYW1lXG4gICAgQElucHV0KCd2aWV3Q29udGFpbmVyJykgcHVibGljIHZpZXdDb250YWluZXJJbml0PzogSVZpZXdDb250YWluZXI8VCwgUz47XG5cbiAgICBwcml2YXRlIGxvYWRpbmdTdWJqZWN0ID0gbmV3IFJlcGxheVN1YmplY3Q8Ym9vbGVhbj4oMSk7XG4gICAgcHVibGljICRsb2FkaW5nOiBPYnNlcnZhYmxlPGJvb2xlYW4+ID0gdGhpcy5sb2FkaW5nU3ViamVjdC5hc09ic2VydmFibGUoKTtcblxuICAgIHB1YmxpYyBjbXBJZDogc3RyaW5nID0gTWF0aC5yYW5kb20oKS50b1N0cmluZygzNikuc3Vic3RyaW5nKDIpO1xuICAgIHB1YmxpYyAkaXNWaXNpYmxlITogT2JzZXJ2YWJsZTxib29sZWFuPjtcbiAgICBwdWJsaWMgJGlzRW5hYmxlZCE6IE9ic2VydmFibGU8Ym9vbGVhbj47XG4gICAgcHVibGljICRsYWJlbCE6IE9ic2VydmFibGU8c3RyaW5nIHwgbnVsbD47XG4gICAgcHVibGljICR0b29sdGlwITogT2JzZXJ2YWJsZTxzdHJpbmcgfCBudWxsPjtcblxuICAgIHByaXZhdGUgdmlld0NvbnRhaW5lcj86IElWaWV3Q29udGFpbmVyPFQsIFM+O1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgcm91dGU6IEFjdGl2YXRlZFJvdXRlLFxuICAgICAgICBwcml2YXRlIHRyYW5zbGF0ZTogVHJhbnNsYXRlU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBhY3Rpb25FeGVjdXRvcjogTW5nQWN0aW9uRXhlY3V0b3JTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIGNvbmZpcm1hdGlvblNlcnZpY2U6IENvbmZpcm1hdGlvblNlcnZpY2UsXG4gICAgICAgIEBPcHRpb25hbCgpIHByaXZhdGUgdmlld0NvbnRhaW5lclNlcnZpY2U6IE1uZ1ZpZXdDb250YWluZXJDb21wb25lbnRTZXJ2aWNlPFQsIFM+IHwgbnVsbFxuICAgICkge1xuICAgICAgICB0aGlzLmxvYWRpbmdTdWJqZWN0Lm5leHQoZmFsc2UpO1xuICAgIH1cblxuICAgIHB1YmxpYyBuZ09uSW5pdCgpIHtcbiAgICAgICAgdGhpcy52aWV3Q29udGFpbmVyID0gdGhpcy52aWV3Q29udGFpbmVySW5pdCA/PyB0aGlzLnZpZXdDb250YWluZXJTZXJ2aWNlID8/IHVuZGVmaW5lZDtcbiAgICAgICAgY29uc3QgY29udGV4dCA9IHRoaXMuYWN0aW9uRXhlY3V0b3IucHJlcGFyZUFjdGlvbkV4ZWNDb250ZXh0KFxuICAgICAgICAgICAgdGhpcy5hY3Rpb24sXG4gICAgICAgICAgICB0aGlzLml0ZW1JZCxcbiAgICAgICAgICAgIHRoaXMuaXRlbSxcbiAgICAgICAgICAgIHRoaXMuZGF0YVByb3ZpZGVyLFxuICAgICAgICAgICAgdGhpcy52aWV3Q29udGFpbmVyID8/IHVuZGVmaW5lZCxcbiAgICAgICAgICAgIHRoaXMsXG4gICAgICAgICAgICB0aGlzLmFjdGlvbkRhdGFcbiAgICAgICAgKTtcbiAgICAgICAgdGhpcy4kaXNWaXNpYmxlID0gdHlwZW9mIHRoaXMuYWN0aW9uLmlzVmlzaWJsZUZ1bmN0aW9uID09PSAnZnVuY3Rpb24nID8gdGhpcy5hY3Rpb24uaXNWaXNpYmxlRnVuY3Rpb24oY29udGV4dCkgOiBvZih0cnVlKTtcbiAgICAgICAgdGhpcy4kaXNFbmFibGVkID0gdHlwZW9mIHRoaXMuYWN0aW9uLmlzRW5hYmxlZEZ1bmN0aW9uID09PSAnZnVuY3Rpb24nID8gdGhpcy5hY3Rpb24uaXNFbmFibGVkRnVuY3Rpb24oY29udGV4dCkgOiBvZih0cnVlKTtcbiAgICAgICAgdGhpcy4kbGFiZWwgPSBJMThuVXRpbC5zdHJlYW1BY3Rpb25UcmFuc2xhdGlvbih0aGlzLnRyYW5zbGF0ZSwgdGhpcy5hY3Rpb24sICd0aXRsZScsIHRoaXMuYWN0aW9uPy50aXRsZSA/PyB1bmRlZmluZWQsIHRoaXMuaXRlbSk7XG4gICAgICAgIHRoaXMuJHRvb2x0aXAgPSBJMThuVXRpbC5zdHJlYW1BY3Rpb25UcmFuc2xhdGlvbih0aGlzLnRyYW5zbGF0ZSwgdGhpcy5hY3Rpb24sICd0b29sdGlwJywgdGhpcy5hY3Rpb24/LnRvb2x0aXAgPz8gdW5kZWZpbmVkLCB0aGlzLml0ZW0pO1xuICAgIH1cblxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW51c2VkLXZhcnNcbiAgICBwdWJsaWMgdHJpZ2dlckFjdGlvbihldmVudDogRXZlbnQpIHtcbiAgICAgICAgdGhpcy5sb2FkaW5nU3ViamVjdC5uZXh0KHRydWUpO1xuXG4gICAgICAgIGNvbnN0IGFjdGlvbkRhdGEgPSB0aGlzLmFjdGlvbkRhdGEgPyB0aGlzLmFjdGlvbkRhdGEgOiB7fTtcbiAgICAgICAgYWN0aW9uRGF0YVsnY21wSWQnXSA9IHRoaXMuY21wSWQ7XG5cbiAgICAgICAgdGhpcy5hY3Rpb25FeGVjdXRvclxuICAgICAgICAgICAgLnRyaWdnZXJBY3Rpb24odGhpcy5hY3Rpb24sIHRoaXMuaXRlbUlkLCB0aGlzLml0ZW0sIGFjdGlvbkRhdGEsIHRoaXMucm91dGUsIHRoaXMudmlld0NvbnRhaW5lciwgdGhpcylcbiAgICAgICAgICAgIC5waXBlKGZpcnN0KCkpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKHtcbiAgICAgICAgICAgICAgICBuZXh0OiAoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMubG9hZGluZ1N1YmplY3QubmV4dChmYWxzZSk7XG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICBlcnJvcjogZXJyID0+IHtcbiAgICAgICAgICAgICAgICAgICAgY29uc29sZS5lcnJvcihgRXJyb3Igb2NjdXJyZWQgd2hpbGUgZXhlY3V0aW5nIGFjdGlvbiAke3RoaXMuYWN0aW9uLmFjdGlvbk5hbWV9LmAsIGVycik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldENvbmZpcm1hdGlvblNlcnZpY2UoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmNvbmZpcm1hdGlvblNlcnZpY2U7XG4gICAgfVxuXG4gICAgcHVibGljIGdldENvbmZpcm1hdGlvblNlcnZpY2VJbnN0YW5jZUtleShhY3Rpb246IEFjdGlvbkRlc2NyaXB0b3I8YW55Pikge1xuICAgICAgICByZXR1cm4gYCR7YWN0aW9uLmFjdGlvbk5hbWV9XyR7dGhpcy5jbXBJZH1gO1xuICAgIH1cbn1cbiIsIjxuZy1jb250YWluZXIgKm5nSWY9XCIkaXNWaXNpYmxlIHwgYXN5bmNcIj5cbiAgICA8YnV0dG9uXG4gICAgICAgICpuZ0lmPVwiYWN0aW9uLmljb24gJiYgYWN0aW9uLnRpdGxlID09PSBudWxsOyBlbHNlIG5vSWNvblwiXG4gICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICBwQnV0dG9uXG4gICAgICAgIHBSaXBwbGVcbiAgICAgICAgW2ljb25dPVwiYWN0aW9uLmljb25cIlxuICAgICAgICBbbG9hZGluZ109XCIoJGxvYWRpbmcgfCBhc3luYykgPz8gZmFsc2VcIlxuICAgICAgICBbZGlzYWJsZWRdPVwiKCRpc0VuYWJsZWQgfCBhc3luYykgPT09IGZhbHNlXCJcbiAgICAgICAgW3BUb29sdGlwXT1cIiRhbnkoJHRvb2x0aXAgfCBhc3luYylcIlxuICAgICAgICAoY2xpY2spPVwidHJpZ2dlckFjdGlvbigkZXZlbnQpXCJcbiAgICAgICAgY2xhc3M9XCJtbmctYWN0aW9uLWJ1dHRvbiBtbmctYWN0aW9uLWJ1dHRvbi1pY29uIHAtYnV0dG9uLXJvdW5kZWRcIlxuICAgICAgICBbY2xhc3MubW5nLWJ1dHRvbi14c109XCJhY3Rpb24uaXNTaXplRXh0cmFTbWFsbFwiXG4gICAgICAgIFtjbGFzcy5tbmctYnV0dG9uLXNtXT1cImFjdGlvbi5pc1NpemVTbWFsbFwiXG4gICAgICAgIFtjbGFzcy5tbmctYnV0dG9uLWxnXT1cImFjdGlvbi5pc1NpemVMYXJnZVwiXG4gICAgICAgIFtjbGFzcy5tbmctYnV0dG9uLXhsXT1cImFjdGlvbi5pc1NpemVFeHRyYUxhcmdlXCJcbiAgICAgICAgW2NsYXNzLnAtYnV0dG9uLXByaW1hcnldPVwiYWN0aW9uLmxldmVsID09PSAxXCJcbiAgICAgICAgW2NsYXNzLnAtYnV0dG9uLXN1Y2Nlc3NdPVwiYWN0aW9uLmxldmVsID09PSA1XCJcbiAgICAgICAgW2NsYXNzLnAtYnV0dG9uLWRhbmdlcl09XCJhY3Rpb24ubGV2ZWwgPT09IDdcIj48L2J1dHRvbj5cbiAgICA8bmctdGVtcGxhdGUgI25vSWNvbj5cbiAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICBwQnV0dG9uXG4gICAgICAgICAgICBwUmlwcGxlXG4gICAgICAgICAgICBbaWNvbl09XCIkYW55KGFjdGlvbi5pY29uKVwiXG4gICAgICAgICAgICBbbGFiZWxdPVwiKCRsYWJlbCB8IGFzeW5jKSA/PyAnJ1wiXG4gICAgICAgICAgICBbbG9hZGluZ109XCIoJGxvYWRpbmcgfCBhc3luYykgPz8gZmFsc2VcIlxuICAgICAgICAgICAgW2Rpc2FibGVkXT1cIigkaXNFbmFibGVkIHwgYXN5bmMpID09PSBmYWxzZVwiXG4gICAgICAgICAgICBbcFRvb2x0aXBdPVwiJGFueSgkdG9vbHRpcCB8IGFzeW5jKVwiXG4gICAgICAgICAgICAoY2xpY2spPVwidHJpZ2dlckFjdGlvbigkZXZlbnQpXCJcbiAgICAgICAgICAgIGNsYXNzPVwibW5nLWFjdGlvbi1idXR0b24gcC1idXR0b24tdGV4dFwiXG4gICAgICAgICAgICBbY2xhc3MucC1idXR0b24tc21dPVwiYWN0aW9uLmlzU2l6ZVNtYWxsXCJcbiAgICAgICAgICAgIFtjbGFzcy5wLWJ1dHRvbi1sZ109XCJhY3Rpb24uaXNTaXplTGFyZ2VcIlxuICAgICAgICAgICAgW2NsYXNzLnAtYnV0dG9uLXByaW1hcnldPVwiYWN0aW9uLmxldmVsID09PSAxXCJcbiAgICAgICAgICAgIFtjbGFzcy5wLWJ1dHRvbi1zdWNjZXNzXT1cImFjdGlvbi5sZXZlbCA9PT0gNVwiXG4gICAgICAgICAgICBbY2xhc3MucC1idXR0b24tZGFuZ2VyXT1cImFjdGlvbi5sZXZlbCA9PT0gN1wiPjwvYnV0dG9uPlxuICAgIDwvbmctdGVtcGxhdGU+XG4gICAgPHAtY29uZmlybURpYWxvZyAqbmdJZj1cImFjdGlvbi5oYXNSdW5Db25maXJtYXRpb25cIiBba2V5XT1cImFjdGlvbi5hY3Rpb25OYW1lICsgJ18nICsgY21wSWRcIiBbYmFzZVpJbmRleF09XCI1MFwiIGFwcGVuZFRvPVwiYm9keVwiPjwvcC1jb25maXJtRGlhbG9nPlxuPC9uZy1jb250YWluZXI+XG4iXX0=