tnp-helpers 18.0.15 → 18.0.16

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 (178) hide show
  1. package/assets/shared/shared_folder_info.txt +1 -1
  2. package/browser/README.md +24 -24
  3. package/browser/esm2022/lib/base/base-cli-worker-config.mjs +18 -11
  4. package/browser/esm2022/lib/base/base-cli-worker-controller.mjs +42 -4
  5. package/browser/esm2022/lib/base/base-cli-worker.mjs +192 -44
  6. package/browser/esm2022/lib/base/base-compiler-for-project.mjs +14 -1
  7. package/browser/esm2022/lib/base/base-debounce-compiler-for-project.mjs +6 -2
  8. package/browser/esm2022/lib/base/base-git.mjs +9 -4
  9. package/browser/esm2022/lib/base/base-github-pages.mjs +110 -0
  10. package/browser/esm2022/lib/base/base-linked-projects.mjs +22 -3
  11. package/browser/esm2022/lib/base/base-project-resolver.mjs +2 -2
  12. package/browser/esm2022/lib/base/base-project.mjs +33 -1
  13. package/browser/esm2022/lib/base/base-vscode.mjs +27 -1
  14. package/browser/esm2022/lib/base/index.mjs +4 -1
  15. package/browser/esm2022/lib/base/linked-project.mjs +18 -1
  16. package/browser/esm2022/lib/base/ports-worker.mjs +60 -5
  17. package/browser/esm2022/lib/helpers/helpers.mjs +1 -3
  18. package/browser/esm2022/lib/utils.mjs +119 -1
  19. package/browser/fesm2022/tnp-helpers.mjs +544 -68
  20. package/browser/fesm2022/tnp-helpers.mjs.map +1 -1
  21. package/browser/lib/base/base-cli-worker-config.d.ts +5 -1
  22. package/browser/lib/base/base-cli-worker-controller.d.ts +4 -2
  23. package/browser/lib/base/base-cli-worker.d.ts +44 -8
  24. package/browser/lib/base/base-compiler-for-project.d.ts +2 -0
  25. package/browser/lib/base/base-debounce-compiler-for-project.d.ts +4 -0
  26. package/browser/lib/base/base-git.d.ts +3 -3
  27. package/browser/lib/base/base-github-pages.d.ts +15 -0
  28. package/browser/lib/base/base-linked-projects.d.ts +2 -1
  29. package/browser/lib/base/base-project-resolver.d.ts +2 -2
  30. package/browser/lib/base/base-project.d.ts +11 -0
  31. package/browser/lib/base/index.d.ts +3 -0
  32. package/browser/lib/base/linked-project.d.ts +1 -0
  33. package/browser/lib/base/ports-worker.d.ts +26 -4
  34. package/browser/lib/utils.d.ts +12 -0
  35. package/client/README.md +24 -24
  36. package/client/esm2022/lib/base/base-cli-worker-config.mjs +18 -11
  37. package/client/esm2022/lib/base/base-cli-worker-controller.mjs +42 -4
  38. package/client/esm2022/lib/base/base-cli-worker.mjs +192 -44
  39. package/client/esm2022/lib/base/base-compiler-for-project.mjs +14 -1
  40. package/client/esm2022/lib/base/base-debounce-compiler-for-project.mjs +6 -2
  41. package/client/esm2022/lib/base/base-git.mjs +9 -4
  42. package/client/esm2022/lib/base/base-github-pages.mjs +110 -0
  43. package/client/esm2022/lib/base/base-linked-projects.mjs +22 -3
  44. package/client/esm2022/lib/base/base-project-resolver.mjs +2 -2
  45. package/client/esm2022/lib/base/base-project.mjs +33 -1
  46. package/client/esm2022/lib/base/base-vscode.mjs +27 -1
  47. package/client/esm2022/lib/base/index.mjs +4 -1
  48. package/client/esm2022/lib/base/linked-project.mjs +18 -1
  49. package/client/esm2022/lib/base/ports-worker.mjs +60 -5
  50. package/client/esm2022/lib/helpers/helpers.mjs +1 -3
  51. package/client/esm2022/lib/utils.mjs +119 -1
  52. package/client/fesm2022/tnp-helpers.mjs +544 -68
  53. package/client/fesm2022/tnp-helpers.mjs.map +1 -1
  54. package/client/lib/base/base-cli-worker-config.d.ts +5 -1
  55. package/client/lib/base/base-cli-worker-controller.d.ts +4 -2
  56. package/client/lib/base/base-cli-worker.d.ts +44 -8
  57. package/client/lib/base/base-compiler-for-project.d.ts +2 -0
  58. package/client/lib/base/base-debounce-compiler-for-project.d.ts +4 -0
  59. package/client/lib/base/base-git.d.ts +3 -3
  60. package/client/lib/base/base-github-pages.d.ts +15 -0
  61. package/client/lib/base/base-linked-projects.d.ts +2 -1
  62. package/client/lib/base/base-project-resolver.d.ts +2 -2
  63. package/client/lib/base/base-project.d.ts +11 -0
  64. package/client/lib/base/index.d.ts +3 -0
  65. package/client/lib/base/linked-project.d.ts +1 -0
  66. package/client/lib/base/ports-worker.d.ts +26 -4
  67. package/client/lib/utils.d.ts +12 -0
  68. package/lib/base/base-cli-worker-config.d.ts +5 -1
  69. package/lib/base/base-cli-worker-config.js +19 -11
  70. package/lib/base/base-cli-worker-config.js.map +1 -1
  71. package/lib/base/base-cli-worker-controller.d.ts +4 -2
  72. package/lib/base/base-cli-worker-controller.js +48 -8
  73. package/lib/base/base-cli-worker-controller.js.map +1 -1
  74. package/lib/base/base-cli-worker.d.ts +44 -8
  75. package/lib/base/base-cli-worker.js +262 -45
  76. package/lib/base/base-cli-worker.js.map +1 -1
  77. package/lib/base/base-command-line.backend.d.ts +1 -0
  78. package/lib/base/base-command-line.backend.js +26 -24
  79. package/lib/base/base-command-line.backend.js.map +1 -1
  80. package/lib/base/base-compiler-for-project.js +2 -1
  81. package/lib/base/base-compiler-for-project.js.map +1 -1
  82. package/lib/base/base-debounce-compiler-for-project.d.ts +4 -0
  83. package/lib/base/base-debounce-compiler-for-project.js +5 -1
  84. package/lib/base/base-debounce-compiler-for-project.js.map +1 -1
  85. package/lib/base/base-git.d.ts +3 -3
  86. package/lib/base/base-git.js +16 -16
  87. package/lib/base/base-git.js.map +1 -1
  88. package/lib/base/base-github-pages.d.ts +14 -0
  89. package/lib/base/base-github-pages.js +173 -0
  90. package/lib/base/base-github-pages.js.map +1 -0
  91. package/lib/base/base-linked-projects.d.ts +2 -1
  92. package/lib/base/base-linked-projects.js +29 -21
  93. package/lib/base/base-linked-projects.js.map +1 -1
  94. package/lib/base/base-project-resolver.d.ts +2 -2
  95. package/lib/base/base-project-resolver.js +1 -1
  96. package/lib/base/base-project-resolver.js.map +1 -1
  97. package/lib/base/base-project.d.ts +11 -0
  98. package/lib/base/base-project.js +37 -1
  99. package/lib/base/base-project.js.map +1 -1
  100. package/lib/base/base-vscode.js +19 -5
  101. package/lib/base/base-vscode.js.map +1 -1
  102. package/lib/base/gh-temp-code.d.ts +3 -0
  103. package/lib/base/gh-temp-code.js +4 -2
  104. package/lib/base/gh-temp-code.js.map +1 -1
  105. package/lib/base/index.d.ts +3 -0
  106. package/lib/base/index.js +3 -0
  107. package/lib/base/index.js.map +1 -1
  108. package/lib/base/linked-project.d.ts +1 -0
  109. package/lib/base/linked-project.js +18 -0
  110. package/lib/base/linked-project.js.map +1 -1
  111. package/lib/base/ports-worker.d.ts +25 -3
  112. package/lib/base/ports-worker.js +93 -34
  113. package/lib/base/ports-worker.js.map +1 -1
  114. package/lib/helpers/for-backend/helpers-console-gui.d.ts +1 -1
  115. package/lib/helpers/for-backend/helpers-process.backend.d.ts +4 -1
  116. package/lib/helpers/for-backend/helpers-process.backend.js +9 -26
  117. package/lib/helpers/for-backend/helpers-process.backend.js.map +1 -1
  118. package/lib/helpers/for-backend/ts-code/index.d.ts +0 -2
  119. package/lib/helpers/for-backend/ts-code/index.js +0 -2
  120. package/lib/helpers/for-backend/ts-code/index.js.map +1 -1
  121. package/lib/helpers/for-browser/angular.helper.js +2 -2
  122. package/lib/helpers/helpers.d.ts +0 -4
  123. package/lib/helpers/helpers.js +1 -7
  124. package/lib/helpers/helpers.js.map +1 -1
  125. package/lib/old/base-component.js +2 -2
  126. package/lib/old/base-formly-component.js +2 -2
  127. package/lib/old/dual-component-ctrl.js +2 -2
  128. package/lib/utils.d.ts +12 -0
  129. package/lib/utils.js +123 -0
  130. package/lib/utils.js.map +1 -1
  131. package/migrations/index.d.ts +1 -0
  132. package/migrations/index.js +6 -0
  133. package/migrations/index.js.map +1 -0
  134. package/migrations/migrations_index._auto-generated_.d.ts +0 -0
  135. package/migrations/migrations_index._auto-generated_.js +4 -0
  136. package/migrations/migrations_index._auto-generated_.js.map +1 -0
  137. package/package.json +5 -5
  138. package/taon.jsonc +49 -49
  139. package/tmp-environment.json +32 -29
  140. package/websql/README.md +24 -24
  141. package/websql/esm2022/lib/base/base-cli-worker-config.mjs +18 -11
  142. package/websql/esm2022/lib/base/base-cli-worker-controller.mjs +42 -4
  143. package/websql/esm2022/lib/base/base-cli-worker.mjs +192 -44
  144. package/websql/esm2022/lib/base/base-compiler-for-project.mjs +14 -1
  145. package/websql/esm2022/lib/base/base-debounce-compiler-for-project.mjs +6 -2
  146. package/websql/esm2022/lib/base/base-git.mjs +9 -4
  147. package/websql/esm2022/lib/base/base-github-pages.mjs +110 -0
  148. package/websql/esm2022/lib/base/base-linked-projects.mjs +22 -3
  149. package/websql/esm2022/lib/base/base-project-resolver.mjs +2 -2
  150. package/websql/esm2022/lib/base/base-project.mjs +33 -1
  151. package/websql/esm2022/lib/base/base-vscode.mjs +27 -1
  152. package/websql/esm2022/lib/base/index.mjs +4 -1
  153. package/websql/esm2022/lib/base/linked-project.mjs +18 -1
  154. package/websql/esm2022/lib/base/ports-worker.mjs +70 -19
  155. package/websql/esm2022/lib/helpers/helpers.mjs +1 -3
  156. package/websql/esm2022/lib/utils.mjs +119 -1
  157. package/websql/fesm2022/tnp-helpers.mjs +554 -82
  158. package/websql/fesm2022/tnp-helpers.mjs.map +1 -1
  159. package/websql/lib/base/base-cli-worker-config.d.ts +5 -1
  160. package/websql/lib/base/base-cli-worker-controller.d.ts +4 -2
  161. package/websql/lib/base/base-cli-worker.d.ts +44 -8
  162. package/websql/lib/base/base-compiler-for-project.d.ts +2 -0
  163. package/websql/lib/base/base-debounce-compiler-for-project.d.ts +4 -0
  164. package/websql/lib/base/base-git.d.ts +3 -3
  165. package/websql/lib/base/base-github-pages.d.ts +15 -0
  166. package/websql/lib/base/base-linked-projects.d.ts +2 -1
  167. package/websql/lib/base/base-project-resolver.d.ts +2 -2
  168. package/websql/lib/base/base-project.d.ts +11 -0
  169. package/websql/lib/base/index.d.ts +3 -0
  170. package/websql/lib/base/linked-project.d.ts +1 -0
  171. package/websql/lib/base/ports-worker.d.ts +26 -4
  172. package/websql/lib/utils.d.ts +12 -0
  173. package/lib/helpers/for-backend/ts-code/ts-code-extractor.d.ts +0 -26
  174. package/lib/helpers/for-backend/ts-code/ts-code-extractor.js +0 -62
  175. package/lib/helpers/for-backend/ts-code/ts-code-extractor.js.map +0 -1
  176. package/lib/helpers/for-backend/ts-code/ts-code-modifier.backend.d.ts +0 -19
  177. package/lib/helpers/for-backend/ts-code/ts-code-modifier.backend.js +0 -81
  178. package/lib/helpers/for-backend/ts-code/ts-code-modifier.backend.js.map +0 -1
@@ -1,6 +1,6 @@
1
1
  THIS FILE IS GENERATED. THIS FILE IS GENERATED. THIS FILE IS GENERATED.
2
2
 
3
- Assets from this folder are being shipped with this npm package (tnp-helpers@18.0.15)
3
+ Assets from this folder are being shipped with this npm package (tnp-helpers@18.0.16)
4
4
  created from this project.
5
5
 
6
6
  THIS FILE IS GENERATED.THIS FILE IS GENERATED. THIS FILE IS GENERATED.
package/browser/README.md CHANGED
@@ -1,24 +1,24 @@
1
- # MyLib
2
-
3
- This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 13.2.0.
4
-
5
- ## Code scaffolding
6
-
7
- Run `ng generate component component-name --project my-lib` to generate a new component. You can also use `ng generate directive|pipe|service|class|guard|interface|enum|module --project my-lib`.
8
- > Note: Don't forget to add `--project my-lib` or else it will be added to the default project in your `angular.json` file.
9
-
10
- ## Build
11
-
12
- Run `ng build my-lib` to build the project. The build artifacts will be stored in the `dist/` directory.
13
-
14
- ## Publishing
15
-
16
- After building your library with `ng build my-lib`, go to the dist folder `cd dist/my-lib` and run `npm publish`.
17
-
18
- ## Running unit tests
19
-
20
- Run `ng test my-lib` to execute the unit tests via [Karma](https://karma-runner.github.io).
21
-
22
- ## Further help
23
-
24
- To get more help on the Angular CLI use `ng help` or go check out the [Angular CLI Overview and Command Reference](https://angular.io/cli) page.
1
+ # MyLib
2
+
3
+ This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 13.2.0.
4
+
5
+ ## Code scaffolding
6
+
7
+ Run `ng generate component component-name --project my-lib` to generate a new component. You can also use `ng generate directive|pipe|service|class|guard|interface|enum|module --project my-lib`.
8
+ > Note: Don't forget to add `--project my-lib` or else it will be added to the default project in your `angular.json` file.
9
+
10
+ ## Build
11
+
12
+ Run `ng build my-lib` to build the project. The build artifacts will be stored in the `dist/` directory.
13
+
14
+ ## Publishing
15
+
16
+ After building your library with `ng build my-lib`, go to the dist folder `cd dist/my-lib` and run `npm publish`.
17
+
18
+ ## Running unit tests
19
+
20
+ Run `ng test my-lib` to execute the unit tests via [Karma](https://karma-runner.github.io).
21
+
22
+ ## Further help
23
+
24
+ To get more help on the Angular CLI use `ng help` or go check out the [Angular CLI Overview and Command Reference](https://angular.io/cli) page.
@@ -1,10 +1,27 @@
1
1
  import { _ } from 'tnp-core/browser';
2
2
  /* */
3
3
  /* */
4
+ /* */
4
5
  export class BaseCliWorkerConfig {
5
6
  static from(opt) {
6
7
  return _.merge(new BaseCliWorkerConfig(), opt);
7
8
  }
9
+ hasBiggerOrEqualWorkerVersionThan(other) {
10
+ /* */
11
+ /* */
12
+ /* */
13
+ /* */
14
+ /* */
15
+ /* */
16
+ /* */
17
+ /* */
18
+ /* */
19
+ /* */
20
+ /* */
21
+ /* */
22
+ /* */
23
+ return (void 0);
24
+ }
8
25
  isEquals(other) {
9
26
  other = BaseCliWorkerConfig.from(other);
10
27
  return (!!this.serviceID &&
@@ -17,17 +34,7 @@ export class BaseCliWorkerConfig {
17
34
  get isEmpty() {
18
35
  return !this.serviceID && !this.port && !this.pid;
19
36
  }
20
- toString() {
21
- /* */
22
- /* */
23
- /* */
24
- /* */
25
- /* */
26
- /* */
27
- /* */
28
- return (void 0);
29
- }
30
37
  }
31
38
  ;
32
39
  ({}); // @--end-of-file-for-module=tnp-helpers lib/base/base-cli-worker-config.ts
33
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1jbGktd29ya2VyLWNvbmZpZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3RtcC1saWJzLWZvci1kaXN0L3RucC1oZWxwZXJzL3Byb2plY3RzL3RucC1oZWxwZXJzL3NyYy9saWIvYmFzZS9iYXNlLWNsaS13b3JrZXItY29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBRSxDQUFDLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNyQyxLQUFLO0FBQ0wsS0FBSztBQUlMLE1BQU0sT0FBTyxtQkFBbUI7SUFDOUIsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFpQztRQUMzQyxPQUFPLENBQUMsQ0FBQyxLQUFLLENBQUMsSUFBSSxtQkFBbUIsRUFBRSxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBQ2pELENBQUM7SUFtQkQsUUFBUSxDQUFDLEtBQTBCO1FBQ2pDLEtBQUssR0FBRyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDeEMsT0FBTyxDQUNMLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUztZQUNoQixDQUFDLENBQUMsSUFBSSxDQUFDLElBQUk7WUFDWCxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUc7WUFDVixJQUFJLENBQUMsU0FBUyxLQUFLLEtBQUssQ0FBQyxTQUFTO1lBQ2xDLElBQUksQ0FBQyxJQUFJLEtBQUssS0FBSyxDQUFDLElBQUk7WUFDeEIsSUFBSSxDQUFDLEdBQUcsS0FBSyxLQUFLLENBQUMsR0FBRyxDQUN2QixDQUFDO0lBQ0osQ0FBQztJQUVELElBQUksT0FBTztRQUNULE9BQU8sQ0FBQyxJQUFJLENBQUMsU0FBUyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUM7SUFDcEQsQ0FBQztJQUVELFFBQVE7UUFDVixLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0QsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDbEIsQ0FBQztDQUNGO0FBR0EsQ0FBQztBQUFBLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQywyRUFBMkUiLCJzb3VyY2VzQ29udGVudCI6WyJcblxuaW1wb3J0IHsgXyB9IGZyb20gJ3RucC1jb3JlL2Jyb3dzZXInO1xuLyogKi9cbi8qICovXG4gIFxuXG5cbmV4cG9ydCBjbGFzcyBCYXNlQ2xpV29ya2VyQ29uZmlnIHtcbiAgc3RhdGljIGZyb20ob3B0OiBQYXJ0aWFsPEJhc2VDbGlXb3JrZXJDb25maWc+KSB7XG4gICAgcmV0dXJuIF8ubWVyZ2UobmV3IEJhc2VDbGlXb3JrZXJDb25maWcoKSwgb3B0KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBwb3J0IHRha2VuIGJ5IHNlcnZpY2VcbiAgICovXG4gIHBvcnQ6IG51bWJlcjtcbiAgLyoqXG4gICAqIHVuaXF1ZSBpbiB3aG9sZSBzeXN0ZW0gaWQgb2Ygc2VydmljZVxuICAgKi9cbiAgc2VydmljZUlEOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBwaWQgb2Ygc2VydmljZSBwcm9jZXNzXG4gICAqL1xuICBwaWQ6IG51bWJlcjtcbiAgLyoqXG4gICAqIHRpbWVzdGFtcCB3aGVuIHNlcnZpY2Ugd2FzIHN0YXJ0ZWRcbiAgICogKGluIG90aGVyIGNhc2VzID0gbnVsbClcbiAgICovXG4gIHN0YXJ0VGltZXN0YW1wOiBudW1iZXI7XG4gIGlzRXF1YWxzKG90aGVyOiBCYXNlQ2xpV29ya2VyQ29uZmlnKSB7XG4gICAgb3RoZXIgPSBCYXNlQ2xpV29ya2VyQ29uZmlnLmZyb20ob3RoZXIpO1xuICAgIHJldHVybiAoXG4gICAgICAhIXRoaXMuc2VydmljZUlEICYmXG4gICAgICAhIXRoaXMucG9ydCAmJlxuICAgICAgISF0aGlzLnBpZCAmJlxuICAgICAgdGhpcy5zZXJ2aWNlSUQgPT09IG90aGVyLnNlcnZpY2VJRCAmJlxuICAgICAgdGhpcy5wb3J0ID09PSBvdGhlci5wb3J0ICYmXG4gICAgICB0aGlzLnBpZCA9PT0gb3RoZXIucGlkXG4gICAgKTtcbiAgfVxuXG4gIGdldCBpc0VtcHR5KCkge1xuICAgIHJldHVybiAhdGhpcy5zZXJ2aWNlSUQgJiYgIXRoaXMucG9ydCAmJiAhdGhpcy5waWQ7XG4gIH1cblxuICB0b1N0cmluZygpIHtcbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4gICAgcmV0dXJuICh2b2lkIDApO1xuICB9XG59XG5cblxuIDsoe30pOyAvLyBALS1lbmQtb2YtZmlsZS1mb3ItbW9kdWxlPXRucC1oZWxwZXJzIGxpYi9iYXNlL2Jhc2UtY2xpLXdvcmtlci1jb25maWcudHMiXX0=
40
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1jbGktd29ya2VyLWNvbmZpZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3RtcC1saWJzLWZvci1kaXN0L3RucC1oZWxwZXJzL3Byb2plY3RzL3RucC1oZWxwZXJzL3NyYy9saWIvYmFzZS9iYXNlLWNsaS13b3JrZXItY29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBRSxDQUFDLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNyQyxLQUFLO0FBQ0wsS0FBSztBQUNMLEtBQUs7QUFJTCxNQUFNLE9BQU8sbUJBQW1CO0lBQzlCLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBaUM7UUFDM0MsT0FBTyxDQUFDLENBQUMsS0FBSyxDQUFDLElBQUksbUJBQW1CLEVBQUUsRUFBRSxHQUFHLENBQUMsQ0FBQztJQUNqRCxDQUFDO0lBd0JELGlDQUFpQyxDQUFDLEtBQTBCO1FBQzlELEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDRCxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUNsQixDQUFDO0lBRUQsUUFBUSxDQUFDLEtBQTBCO1FBQ2pDLEtBQUssR0FBRyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDeEMsT0FBTyxDQUNMLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUztZQUNoQixDQUFDLENBQUMsSUFBSSxDQUFDLElBQUk7WUFDWCxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUc7WUFDVixJQUFJLENBQUMsU0FBUyxLQUFLLEtBQUssQ0FBQyxTQUFTO1lBQ2xDLElBQUksQ0FBQyxJQUFJLEtBQUssS0FBSyxDQUFDLElBQUk7WUFDeEIsSUFBSSxDQUFDLEdBQUcsS0FBSyxLQUFLLENBQUMsR0FBRyxDQUN2QixDQUFDO0lBQ0osQ0FBQztJQUVELElBQUksT0FBTztRQUNULE9BQU8sQ0FBQyxJQUFJLENBQUMsU0FBUyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUM7SUFDcEQsQ0FBQztDQUNGO0FBR0EsQ0FBQztBQUFBLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQywyRUFBMkUiLCJzb3VyY2VzQ29udGVudCI6WyJcblxuaW1wb3J0IHsgXyB9IGZyb20gJ3RucC1jb3JlL2Jyb3dzZXInO1xuLyogKi9cbi8qICovXG4vKiAqL1xuICBcblxuXG5leHBvcnQgY2xhc3MgQmFzZUNsaVdvcmtlckNvbmZpZyB7XG4gIHN0YXRpYyBmcm9tKG9wdDogUGFydGlhbDxCYXNlQ2xpV29ya2VyQ29uZmlnPikge1xuICAgIHJldHVybiBfLm1lcmdlKG5ldyBCYXNlQ2xpV29ya2VyQ29uZmlnKCksIG9wdCk7XG4gIH1cblxuICAvKipcbiAgICogcG9ydCB0YWtlbiBieSBzZXJ2aWNlXG4gICAqL1xuICBwb3J0OiBudW1iZXI7XG4gIC8qKlxuICAgKiB1bmlxdWUgaW4gd2hvbGUgc3lzdGVtIGlkIG9mIHNlcnZpY2VcbiAgICovXG4gIHNlcnZpY2VJRDogc3RyaW5nO1xuICAvKipcbiAgICogcGlkIG9mIHNlcnZpY2UgcHJvY2Vzc1xuICAgKi9cbiAgcGlkOiBudW1iZXI7XG4gIC8qKlxuICAgKiB0aW1lc3RhbXAgd2hlbiBzZXJ2aWNlIHdhcyBzdGFydGVkXG4gICAqIChpbiBvdGhlciBjYXNlcyA9IG51bGwpXG4gICAqL1xuICBzdGFydFRpbWVzdGFtcDogbnVtYmVyO1xuICAvKipcbiAgICogdmVyc2lvblxuICAgKi9cbiAgdmVyc2lvbjogc3RyaW5nO1xuXG4gIGhhc0JpZ2dlck9yRXF1YWxXb3JrZXJWZXJzaW9uVGhhbihvdGhlcjogQmFzZUNsaVdvcmtlckNvbmZpZykge1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbiAgICByZXR1cm4gKHZvaWQgMCk7XG4gIH1cblxuICBpc0VxdWFscyhvdGhlcjogQmFzZUNsaVdvcmtlckNvbmZpZykge1xuICAgIG90aGVyID0gQmFzZUNsaVdvcmtlckNvbmZpZy5mcm9tKG90aGVyKTtcbiAgICByZXR1cm4gKFxuICAgICAgISF0aGlzLnNlcnZpY2VJRCAmJlxuICAgICAgISF0aGlzLnBvcnQgJiZcbiAgICAgICEhdGhpcy5waWQgJiZcbiAgICAgIHRoaXMuc2VydmljZUlEID09PSBvdGhlci5zZXJ2aWNlSUQgJiZcbiAgICAgIHRoaXMucG9ydCA9PT0gb3RoZXIucG9ydCAmJlxuICAgICAgdGhpcy5waWQgPT09IG90aGVyLnBpZFxuICAgICk7XG4gIH1cblxuICBnZXQgaXNFbXB0eSgpIHtcbiAgICByZXR1cm4gIXRoaXMuc2VydmljZUlEICYmICF0aGlzLnBvcnQgJiYgIXRoaXMucGlkO1xuICB9XG59XG5cblxuIDsoe30pOyAvLyBALS1lbmQtb2YtZmlsZS1mb3ItbW9kdWxlPXRucC1oZWxwZXJzIGxpYi9iYXNlL2Jhc2UtY2xpLXdvcmtlci1jb25maWcudHMiXX0=
@@ -9,8 +9,10 @@ let BaseCliWorkerController = class BaseCliWorkerController extends Taon.Base
9
9
  * service id
10
10
  */
11
11
  this.cliWorkerServiceId = null;
12
+ this.cliWorkerServiceVersion = null;
12
13
  }
13
- baseCLiWorkerCommand_initializeMetadata(serviceId) {
14
+ baseCLiWorkerCommand_initializeMetadata(serviceId, serviceVersion) {
15
+ /* */
14
16
  /* */
15
17
  /* */
16
18
  /* */
@@ -25,16 +27,44 @@ let BaseCliWorkerController = class BaseCliWorkerController extends Taon.Base
25
27
  /* */
26
28
  /* */
27
29
  /* */
30
+ /* */
28
31
  return (void 0);
29
32
  }
30
33
  info() {
34
+ /* */
35
+ /* */
36
+ /* */
37
+ /* */
38
+ /* */
39
+ /* */
40
+ /* */
41
+ /* */
42
+ /* */
43
+ /* */
44
+ return (void 0);
45
+ }
46
+ baseCLiWorkerCommand_isHealthy(checkingProcessConfig) {
47
+ /* */
48
+ /* */
49
+ /* */
50
+ /* */
51
+ /* */
52
+ /* */
53
+ /* */
54
+ /* */
55
+ /* */
31
56
  /* */
32
57
  /* */
33
58
  /* */
34
59
  /* */
35
60
  return (void 0);
36
61
  }
37
- baseCLiWorkerCommand_isHealthy(configWorker) {
62
+ baseCLiWorkerCommand_hasUpToDateVersion(checkingProcessConfig) {
63
+ /* */
64
+ /* */
65
+ /* */
66
+ /* */
67
+ /* */
38
68
  /* */
39
69
  /* */
40
70
  /* */
@@ -51,8 +81,9 @@ let BaseCliWorkerController = class BaseCliWorkerController extends Taon.Base
51
81
  __decorate([
52
82
  Taon.Http.PUT(),
53
83
  __param(0, Taon.Http.Param.Body('serviceId')),
84
+ __param(1, Taon.Http.Param.Body('serviceVersion')),
54
85
  __metadata("design:type", Function),
55
- __metadata("design:paramtypes", [String]),
86
+ __metadata("design:paramtypes", [String, String]),
56
87
  __metadata("design:returntype", Object)
57
88
  ], BaseCliWorkerController.prototype, "baseCLiWorkerCommand_initializeMetadata", null);
58
89
  __decorate([
@@ -76,6 +107,13 @@ __decorate([
76
107
  __metadata("design:paramtypes", [BaseCliWorkerConfig]),
77
108
  __metadata("design:returntype", Object)
78
109
  ], BaseCliWorkerController.prototype, "baseCLiWorkerCommand_isHealthy", null);
110
+ __decorate([
111
+ Taon.Http.POST(),
112
+ __param(0, Taon.Http.Param.Body()),
113
+ __metadata("design:type", Function),
114
+ __metadata("design:paramtypes", [BaseCliWorkerConfig]),
115
+ __metadata("design:returntype", Object)
116
+ ], BaseCliWorkerController.prototype, "baseCLiWorkerCommand_hasUpToDateVersion", null);
79
117
  BaseCliWorkerController = __decorate([
80
118
  Taon.Controller({
81
119
  className: 'BaseCliWorkerController',
@@ -84,4 +122,4 @@ BaseCliWorkerController = __decorate([
84
122
  export { BaseCliWorkerController };
85
123
  ;
86
124
  ({}); // @--end-of-file-for-module=tnp-helpers lib/base/base-cli-worker-controller.ts
87
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1jbGktd29ya2VyLWNvbnRyb2xsZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi90bXAtbGlicy1mb3ItZGlzdC90bnAtaGVscGVycy9wcm9qZWN0cy90bnAtaGVscGVycy9zcmMvbGliL2Jhc2UvYmFzZS1jbGktd29ya2VyLWNvbnRyb2xsZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUVBLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDcEMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFLeEQsSUFBZSx1QkFBdUIsR0FBdEMsTUFBZSx1QkFBZ0MsU0FBUSxJQUFJLENBQUMsSUFBSTtLQUNwRSxjQUFzQjtJQURsQjs7UUFFTDs7V0FFRztRQUNLLHVCQUFrQixHQUFXLElBQUksQ0FBQztJQTRENUMsQ0FBQztJQXhEQyx1Q0FBdUMsQ0FDRixTQUFpQjtRQUV4RCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0QsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDbEIsQ0FBQztJQUtELHlCQUF5QjtRQUMzQixLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0QsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDbEIsQ0FBQztJQU9ELElBQUk7UUFDTixLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0QsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDbEIsQ0FBQztJQUtELDhCQUE4QixDQUNKLFlBQWlDO1FBRTdELEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDRCxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUNsQixDQUFDO0NBRUYsQ0FBQTtBQXhEQztJQURDLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFO0lBRWIsV0FBQSxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUE7Ozs7c0ZBT25DO0FBS0Q7SUFEQyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRTs7Ozt3RUFVZjtBQU9EO0lBSEMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUM7UUFDYixZQUFZLEVBQUUsSUFBSTtLQUNuQixDQUFDOzs7O21EQU9EO0FBS0Q7SUFEQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRTtJQUVkLFdBQUEsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUE7O3FDQUFlLG1CQUFtQjs7NkVBYTFEO0FBL0RtQix1QkFBdUI7SUFINUMsSUFBSSxDQUFDLFVBQVUsQ0FBQztRQUNmLFNBQVMsRUFBRSx5QkFBeUI7S0FDckMsQ0FBQztHQUNvQix1QkFBdUIsQ0FpRTVDOztBQUVBLENBQUM7QUFBQSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsK0VBQStFIiwic291cmNlc0NvbnRlbnQiOlsiXG5cbmltcG9ydCB7IFRhb24gfSBmcm9tICd0YW9uL2Jyb3dzZXInO1xuaW1wb3J0IHsgQmFzZUNsaVdvcmtlckNvbmZpZyB9IGZyb20gJy4vYmFzZS1jbGktd29ya2VyLWNvbmZpZyc7XG5cbkBUYW9uLkNvbnRyb2xsZXIoe1xuICBjbGFzc05hbWU6ICdCYXNlQ2xpV29ya2VyQ29udHJvbGxlcicsXG59KVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEJhc2VDbGlXb3JrZXJDb250cm9sbGVyPEVOVElUWT4gZXh0ZW5kcyBUYW9uLkJhc2VcbiAgLkNydWRDb250cm9sbGVyPEVOVElUWT4ge1xuICAvKipcbiAgICogc2VydmljZSBpZFxuICAgKi9cbiAgcHJpdmF0ZSBjbGlXb3JrZXJTZXJ2aWNlSWQ6IHN0cmluZyA9IG51bGw7XG5cblxuICBAVGFvbi5IdHRwLlBVVCgpXG4gIGJhc2VDTGlXb3JrZXJDb21tYW5kX2luaXRpYWxpemVNZXRhZGF0YShcbiAgICBAVGFvbi5IdHRwLlBhcmFtLkJvZHkoJ3NlcnZpY2VJZCcpIHNlcnZpY2VJZDogc3RyaW5nLFxuICApOiBUYW9uLlJlc3BvbnNlPHZvaWQ+IHtcbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4gICAgcmV0dXJuICh2b2lkIDApO1xuICB9XG5cblxuXG4gIEBUYW9uLkh0dHAuR0VUKClcbiAgYmFzZUNMaVdvcmtlckNvbW1hbmRfa2lsbCgpOiBUYW9uLlJlc3BvbnNlPHZvaWQ+IHtcbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4gICAgcmV0dXJuICh2b2lkIDApO1xuICB9XG5cblxuXG4gIEBUYW9uLkh0dHAuR0VUKHtcbiAgICBwYXRoSXNHbG9iYWw6IHRydWUsXG4gIH0pXG4gIGluZm8oKTogVGFvbi5SZXNwb25zZTxzdHJpbmc+IHtcbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4gICAgcmV0dXJuICh2b2lkIDApO1xuICB9XG5cblxuXG4gIEBUYW9uLkh0dHAuUE9TVCgpXG4gIGJhc2VDTGlXb3JrZXJDb21tYW5kX2lzSGVhbHRoeShcbiAgICBAVGFvbi5IdHRwLlBhcmFtLkJvZHkoKSBjb25maWdXb3JrZXI6IEJhc2VDbGlXb3JrZXJDb25maWcsXG4gICk6IFRhb24uUmVzcG9uc2U8Ym9vbGVhbj4ge1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbiAgICByZXR1cm4gKHZvaWQgMCk7XG4gIH1cblxufVxuXG4gOyh7fSk7IC8vIEAtLWVuZC1vZi1maWxlLWZvci1tb2R1bGU9dG5wLWhlbHBlcnMgbGliL2Jhc2UvYmFzZS1jbGktd29ya2VyLWNvbnRyb2xsZXIudHMiXX0=
125
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1jbGktd29ya2VyLWNvbnRyb2xsZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi90bXAtbGlicy1mb3ItZGlzdC90bnAtaGVscGVycy9wcm9qZWN0cy90bnAtaGVscGVycy9zcmMvbGliL2Jhc2UvYmFzZS1jbGktd29ya2VyLWNvbnRyb2xsZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUVBLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDcEMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFNeEQsSUFBZSx1QkFBdUIsR0FBdEMsTUFBZSx1QkFBZ0MsU0FBUSxJQUFJLENBQUMsSUFBSTtLQUNwRSxjQUFzQjtJQURsQjs7UUFFTDs7V0FFRztRQUNLLHVCQUFrQixHQUFXLElBQUksQ0FBQztRQUNsQyw0QkFBdUIsR0FBVyxJQUFJLENBQUM7SUFrR2pELENBQUM7SUE5RkMsdUNBQXVDLENBQ0YsU0FBaUIsRUFDWixjQUFzQjtRQUVsRSxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNELE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ2xCLENBQUM7SUFLRCx5QkFBeUI7UUFDM0IsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDRCxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUNsQixDQUFDO0lBU0QsSUFBSTtRQUNOLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDRCxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUNsQixDQUFDO0lBS0QsOEJBQThCLENBQ0oscUJBQTBDO1FBRXRFLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDRCxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUNsQixDQUFDO0lBS0QsdUNBQXVDLENBQ2IscUJBQTBDO1FBRXRFLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNELE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ2xCLENBQUM7Q0FFRixDQUFBO0FBOUZDO0lBREMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUU7SUFFYixXQUFBLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQTtJQUNqQyxXQUFBLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFBOzs7O3NGQVF4QztBQUtEO0lBREMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUU7Ozs7d0VBV2Y7QUFTRDtJQUxDLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDO1FBQ2IsWUFBWSxFQUFFLElBQUk7S0FHbkIsQ0FBQzs7OzttREFhRDtBQUtEO0lBREMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUU7SUFFZCxXQUFBLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxDQUFBOztxQ0FBd0IsbUJBQW1COzs2RUFnQm5FO0FBS0Q7SUFEQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRTtJQUVkLFdBQUEsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUE7O3FDQUF3QixtQkFBbUI7O3NGQWtCbkU7QUF0R21CLHVCQUF1QjtJQUg1QyxJQUFJLENBQUMsVUFBVSxDQUFDO1FBQ2YsU0FBUyxFQUFFLHlCQUF5QjtLQUNyQyxDQUFDO0dBQ29CLHVCQUF1QixDQXdHNUM7O0FBRUEsQ0FBQztBQUFBLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQywrRUFBK0UiLCJzb3VyY2VzQ29udGVudCI6WyJcblxuaW1wb3J0IHsgVGFvbiB9IGZyb20gJ3Rhb24vYnJvd3Nlcic7XG5pbXBvcnQgeyBCYXNlQ2xpV29ya2VyQ29uZmlnIH0gZnJvbSAnLi9iYXNlLWNsaS13b3JrZXItY29uZmlnJztcbmltcG9ydCB7IEhlbHBlcnMgfSBmcm9tICd0bnAtY29yZS9icm93c2VyJztcblxuQFRhb24uQ29udHJvbGxlcih7XG4gIGNsYXNzTmFtZTogJ0Jhc2VDbGlXb3JrZXJDb250cm9sbGVyJyxcbn0pXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQmFzZUNsaVdvcmtlckNvbnRyb2xsZXI8RU5USVRZPiBleHRlbmRzIFRhb24uQmFzZVxuICAuQ3J1ZENvbnRyb2xsZXI8RU5USVRZPiB7XG4gIC8qKlxuICAgKiBzZXJ2aWNlIGlkXG4gICAqL1xuICBwcml2YXRlIGNsaVdvcmtlclNlcnZpY2VJZDogc3RyaW5nID0gbnVsbDtcbiAgcHJpdmF0ZSBjbGlXb3JrZXJTZXJ2aWNlVmVyc2lvbjogc3RyaW5nID0gbnVsbDtcblxuXG4gIEBUYW9uLkh0dHAuUFVUKClcbiAgYmFzZUNMaVdvcmtlckNvbW1hbmRfaW5pdGlhbGl6ZU1ldGFkYXRhKFxuICAgIEBUYW9uLkh0dHAuUGFyYW0uQm9keSgnc2VydmljZUlkJykgc2VydmljZUlkOiBzdHJpbmcsXG4gICAgQFRhb24uSHR0cC5QYXJhbS5Cb2R5KCdzZXJ2aWNlVmVyc2lvbicpIHNlcnZpY2VWZXJzaW9uOiBzdHJpbmcsXG4gICk6IFRhb24uUmVzcG9uc2U8dm9pZD4ge1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4gICAgcmV0dXJuICh2b2lkIDApO1xuICB9XG5cblxuXG4gIEBUYW9uLkh0dHAuR0VUKClcbiAgYmFzZUNMaVdvcmtlckNvbW1hbmRfa2lsbCgpOiBUYW9uLlJlc3BvbnNlPHZvaWQ+IHtcbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuICAgIHJldHVybiAodm9pZCAwKTtcbiAgfVxuXG5cblxuICBAVGFvbi5IdHRwLkdFVCh7XG4gICAgcGF0aElzR2xvYmFsOiB0cnVlLFxuXG5cbiAgfSlcbiAgaW5mbygpOiBUYW9uLlJlc3BvbnNlPHN0cmluZz4ge1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbiAgICByZXR1cm4gKHZvaWQgMCk7XG4gIH1cblxuXG5cbiAgQFRhb24uSHR0cC5QT1NUKClcbiAgYmFzZUNMaVdvcmtlckNvbW1hbmRfaXNIZWFsdGh5KFxuICAgIEBUYW9uLkh0dHAuUGFyYW0uQm9keSgpIGNoZWNraW5nUHJvY2Vzc0NvbmZpZzogQmFzZUNsaVdvcmtlckNvbmZpZyxcbiAgKTogVGFvbi5SZXNwb25zZTxib29sZWFuPiB7XG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuICAgIHJldHVybiAodm9pZCAwKTtcbiAgfVxuXG5cblxuICBAVGFvbi5IdHRwLlBPU1QoKVxuICBiYXNlQ0xpV29ya2VyQ29tbWFuZF9oYXNVcFRvRGF0ZVZlcnNpb24oXG4gICAgQFRhb24uSHR0cC5QYXJhbS5Cb2R5KCkgY2hlY2tpbmdQcm9jZXNzQ29uZmlnOiBCYXNlQ2xpV29ya2VyQ29uZmlnLFxuICApOiBUYW9uLlJlc3BvbnNlPGJvb2xlYW4+IHtcbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbiAgICByZXR1cm4gKHZvaWQgMCk7XG4gIH1cblxufVxuXG4gOyh7fSk7IC8vIEAtLWVuZC1vZi1maWxlLWZvci1tb2R1bGU9dG5wLWhlbHBlcnMgbGliL2Jhc2UvYmFzZS1jbGktd29ya2VyLWNvbnRyb2xsZXIudHMiXX0=
@@ -1,6 +1,6 @@
1
- import { chalk, } from 'tnp-core/browser'; /* */
1
+ import { _, /* */ /* */ /* */ /* */ /* */ } from 'tnp-core/browser'; /* */
2
2
  import { Helpers, UtilsTerminal } from '../index';
3
- const WORKER_INIT_START_TIME_LIMIT = 15; // 15 seconds max to start worker
3
+ const WORKER_INIT_START_TIME_LIMIT = 25; // 15 seconds max to start worker
4
4
  const START_PORT_FOR_SERVICES = 3600;
5
5
  export class BaseCliWorker {
6
6
  constructor(
@@ -11,9 +11,14 @@ export class BaseCliWorker {
11
11
  /**
12
12
  * external command that will start service
13
13
  */
14
- startCommand) {
14
+ startCommand,
15
+ /**
16
+ * unique id for service
17
+ */
18
+ serviceVersion) {
15
19
  this.serviceID = serviceID;
16
20
  this.startCommand = startCommand;
21
+ this.serviceVersion = serviceVersion;
17
22
  }
18
23
  get pathToProcessLocalInfoJson() {
19
24
  /* */
@@ -50,35 +55,141 @@ export class BaseCliWorker {
50
55
  /* */
51
56
  /* */
52
57
  /* */
58
+ /* */
59
+ /* */
53
60
  return (void 0);
54
61
  }
55
62
  /**
56
63
  * stop if started
57
64
  */
58
- async kill() {
59
- Helpers.log(`Killing service "${this.serviceID}"...`);
60
- if (this.processLocalInfoObj.isEmpty) {
61
- Helpers.log(`Service "${this.serviceID}" not started - nothing to kill...`);
62
- return;
63
- }
64
- const ctrl = await this.getControllerForRemoteConnection();
65
- try {
66
- Helpers.removeFileIfExists(this.pathToProcessLocalInfoJson);
67
- await ctrl.baseCLiWorkerCommand_kill().received;
68
- Helpers.log(`Service "${this.serviceID}" killed...`);
69
- }
70
- catch (error) {
71
- Helpers.log(error);
72
- Helpers.log(`Service "${this.serviceID}" not killed... `);
73
- }
65
+ async kill(options) {
66
+ /* */
67
+ /* */
68
+ /* */
69
+ /* */
70
+ /* */
71
+ /* */
72
+ /* */
73
+ /* */
74
+ /* */
75
+ /* */
76
+ /* */
77
+ /* */
78
+ /* */
79
+ /* */
80
+ /* */
81
+ /* */
82
+ /* */
83
+ /* */
84
+ /* */
85
+ /* */
86
+ return (void 0);
74
87
  }
75
88
  /**
76
89
  * kill detached process and start again
90
+ * @param options.detached - default true
77
91
  */
78
- async restart() {
92
+ async restart(options) {
93
+ options = options || {};
94
+ options.detached = _.isUndefined(options.detached) ? true : false;
79
95
  await this.kill();
80
- await this.startDetached();
96
+ //longer because os is disposing process previous process
97
+ if (options.detached) {
98
+ Helpers.info(`Restarting service "${this.serviceID}" in detached mode...`);
99
+ await this.startDetached();
100
+ }
101
+ else {
102
+ Helpers.info(`Restarting service "${this.serviceID}" in current process...`);
103
+ await this.startNormallyInCurrentProcess();
104
+ }
105
+ }
106
+ /**
107
+ * only for cli start
108
+ * @param cliParams on from cli
109
+ */
110
+ async cliStartProcedure(cliParams) {
111
+ const instance = this;
112
+ const detached = !!cliParams['detached'] || !!cliParams['detach'];
113
+ /* */
114
+ /* */
115
+ /* */
116
+ /* */
117
+ /* */
118
+ /* */
119
+ /* */
120
+ /* */
121
+ /* */
122
+ /* */
123
+ /* */
124
+ /* */
125
+ /* */
126
+ /* */
127
+ /* */
128
+ /* */
129
+ /* */
130
+ /* */
131
+ /* */
132
+ return (void 0);
133
+ }
134
+ preventExternalConfigChange() {
135
+ /* */
136
+ /* */
137
+ /* */
138
+ /* */
139
+ /* */
140
+ /* */
141
+ /* */
142
+ /* */
143
+ /* */
144
+ /* */
145
+ /* */
146
+ /* */
147
+ /* */
148
+ return (void 0);
149
+ }
150
+ async preventStartIfAlreadyStarted() {
151
+ /* */
152
+ /* */
153
+ /* */
154
+ /* */
155
+ /* */
156
+ /* */
157
+ /* */
158
+ /* */
159
+ /* */
160
+ /* */
161
+ /* */
162
+ /* */
163
+ /* */
164
+ return (void 0);
81
165
  }
166
+ async killWorkerWithLowerVersion() {
167
+ /* */
168
+ /* */
169
+ /* */
170
+ /* */
171
+ /* */
172
+ /* */
173
+ /* */
174
+ /* */
175
+ /* */
176
+ /* */
177
+ /* */
178
+ /* */
179
+ /* */
180
+ /* */
181
+ /* */
182
+ /* */
183
+ /* */
184
+ /* */
185
+ /* */
186
+ return (void 0);
187
+ }
188
+ /**
189
+ * This has 2 purposes:
190
+ * - infinite check when when detached process finished starting
191
+ * - quick check if service is healthy / already started
192
+ */
82
193
  async isServiceHealthy(options) {
83
194
  /* */
84
195
  /* */
@@ -142,6 +253,13 @@ export class BaseCliWorker {
142
253
  /* */
143
254
  /* */
144
255
  /* */
256
+ /* */
257
+ /* */
258
+ /* */
259
+ /* */
260
+ /* */
261
+ /* */
262
+ /* */
145
263
  return (void 0);
146
264
  }
147
265
  /**
@@ -149,6 +267,39 @@ export class BaseCliWorker {
149
267
  */
150
268
  async startDetached() {
151
269
  /* */
270
+ /* */
271
+ /* */
272
+ /* */
273
+ /* */
274
+ /* */
275
+ /* */
276
+ /* */
277
+ /* */
278
+ /* */
279
+ /* */
280
+ /* */
281
+ /* */
282
+ /* */
283
+ /* */
284
+ /* */
285
+ /* */
286
+ /* */
287
+ /* */
288
+ return (void 0);
289
+ }
290
+ async headerText() {
291
+ return _.startCase(this.serviceID);
292
+ }
293
+ textHeaderStyle() {
294
+ return 'block';
295
+ }
296
+ headerTextAlign() {
297
+ return 'left';
298
+ }
299
+ /**
300
+ * override whole terminal header
301
+ */
302
+ async header() {
152
303
  /* */
153
304
  /* */
154
305
  /* */
@@ -168,31 +319,26 @@ export class BaseCliWorker {
168
319
  /* */
169
320
  return (void 0);
170
321
  }
322
+ async infoMessageBelowHeader() {
323
+ /* */
324
+ /* */
325
+ /* */
326
+ /* */
327
+ /* */
328
+ /* */
329
+ /* */
330
+ /* */
331
+ /* */
332
+ /* */
333
+ /* */
334
+ /* */
335
+ return (void 0);
336
+ }
171
337
  async _infoScreen() {
172
338
  while (true) {
173
339
  Helpers.clearConsole();
174
- const cfonts = require('cfonts');
175
- const output = cfonts.render(`TAON.DEV`, {
176
- font: 'block',
177
- align: 'left',
178
- colors: ['system'],
179
- background: 'transparent',
180
- letterSpacing: 1,
181
- lineHeight: 1,
182
- space: true,
183
- maxLength: '0',
184
- gradient: false,
185
- independentGradient: false,
186
- transitionGradient: false,
187
- env: 'node',
188
- });
189
- console.log(output.string);
190
- Helpers.info(`
191
-
192
- Service ${chalk.bold.red(this.serviceID)} started..
193
- Check info here http://localhost:${chalk.bold(this.processLocalInfoObj?.port?.toString())}/${'info'}
194
-
195
- `);
340
+ await this.header();
341
+ await this.infoMessageBelowHeader();
196
342
  const choices = {
197
343
  openBrowser: {
198
344
  name: 'Open browser with service info',
@@ -255,6 +401,7 @@ export class BaseCliWorker {
255
401
  /* */
256
402
  /* */
257
403
  /* */
404
+ /* */
258
405
  return (void 0);
259
406
  }
260
407
  async waitForProcessPortSavedToDisk() {
@@ -295,9 +442,10 @@ export class BaseCliWorker {
295
442
  /* */
296
443
  /* */
297
444
  /* */
445
+ /* */
298
446
  return (void 0);
299
447
  }
300
448
  }
301
449
  ;
302
450
  ({}); // @--end-of-file-for-module=tnp-helpers lib/base/base-cli-worker.ts
303
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1jbGktd29ya2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vdG1wLWxpYnMtZm9yLWRpc3QvdG5wLWhlbHBlcnMvcHJvamVjdHMvdG5wLWhlbHBlcnMvc3JjL2xpYi9iYXNlL2Jhc2UtY2xpLXdvcmtlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFHQSxPQUFPLEVBQUksS0FBSyxHQUF3RCxNQUFNLGtCQUFrQixDQUFDLENBQUEsS0FBSztBQVd0RyxPQUFPLEVBQUUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQU1sRCxNQUFNLDRCQUE0QixHQUFHLEVBQUUsQ0FBQyxDQUFDLGlDQUFpQztBQUMxRSxNQUFNLHVCQUF1QixHQUFHLElBQUksQ0FBQztBQUdyQyxNQUFNLE9BQWdCLGFBQWE7SUFFakM7SUFDRTs7T0FFRztJQUNnQixTQUFpQjtJQUNwQzs7T0FFRztJQUNnQixZQUFvQjtRQUpwQixjQUFTLEdBQVQsU0FBUyxDQUFRO1FBSWpCLGlCQUFZLEdBQVosWUFBWSxDQUFRO0lBQ3RDLENBQUM7SUFhSixJQUFZLDBCQUEwQjtRQUN4QyxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNELE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ2xCLENBQUM7SUFJRCxJQUFjLG1CQUFtQjtRQUNuQyxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDRCxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUNsQixDQUFDO0lBUU0sS0FBSyxDQUFDLCtCQUErQjtRQUM5QyxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNELE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ2xCLENBQUM7SUFJRDs7T0FFRztJQUNILEtBQUssQ0FBQyxJQUFJO1FBQ1IsT0FBTyxDQUFDLEdBQUcsQ0FBQyxvQkFBb0IsSUFBSSxDQUFDLFNBQVMsTUFBTSxDQUFDLENBQUM7UUFDdEQsSUFBSSxJQUFJLENBQUMsbUJBQW1CLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDckMsT0FBTyxDQUFDLEdBQUcsQ0FDVCxZQUFZLElBQUksQ0FBQyxTQUFTLG9DQUFvQyxDQUMvRCxDQUFDO1lBQ0YsT0FBTztRQUNULENBQUM7UUFDRCxNQUFNLElBQUksR0FBRyxNQUFNLElBQUksQ0FBQyxnQ0FBZ0MsRUFBRSxDQUFDO1FBQzNELElBQUksQ0FBQztZQUNILE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsMEJBQTBCLENBQUMsQ0FBQztZQUM1RCxNQUFNLElBQUksQ0FBQyx5QkFBeUIsRUFBRSxDQUFDLFFBQVEsQ0FBQztZQUNoRCxPQUFPLENBQUMsR0FBRyxDQUFDLFlBQVksSUFBSSxDQUFDLFNBQVMsYUFBYSxDQUFDLENBQUM7UUFDdkQsQ0FBQztRQUFDLE9BQU8sS0FBSyxFQUFFLENBQUM7WUFDZixPQUFPLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ25CLE9BQU8sQ0FBQyxHQUFHLENBQUMsWUFBWSxJQUFJLENBQUMsU0FBUyxvQkFBb0IsQ0FBQyxDQUFDO1FBQzlELENBQUM7SUFDSCxDQUFDO0lBSUQ7O09BRUc7SUFDSCxLQUFLLENBQUMsT0FBTztRQUNYLE1BQU0sSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ2xCLE1BQU0sSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQzdCLENBQUM7SUFRUyxLQUFLLENBQUMsZ0JBQWdCLENBQUMsT0FFaEM7UUFDSCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNELE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ2xCLENBQUM7SUFJRDs7T0FFRztJQUNPLEtBQUssQ0FBQyxhQUFhO1FBQy9CLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNELE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ2xCLENBQUM7SUFJUyxLQUFLLENBQUMsV0FBVztRQUN6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SztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNELE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ2xCLENBQUM7SUFJRCxLQUFLLENBQUMsY0FBYztRQUN0QixLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDRCxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUNsQixDQUFDO0NBSUY7QUFFQSxDQUFDO0FBQUEsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLG9FQUFvRSIsInNvdXJjZXNDb250ZW50IjpbIlxuXG5cbmltcG9ydCB7ICAgY2hhbGssICAgY3Jvc3NQbGF0Zm9ybVBhdGgsICAgXywgLyogKi8gLyogKi8gLyogKi8gLyogKi8gICAgfSBmcm9tICd0bnAtY29yZS9icm93c2VyJzsvKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG5cbmltcG9ydCB7IGNvbmZpZyB9IGZyb20gJ3RucC1jb25maWcvYnJvd3Nlcic7XG5pbXBvcnQgeyBIZWxwZXJzLCBVdGlsc1Rlcm1pbmFsIH0gZnJvbSAnLi4vaW5kZXgnO1xuaW1wb3J0IHR5cGUgeyBCYXNlQ2xpV29ya2VyQ29udHJvbGxlciB9IGZyb20gJy4vYmFzZS1jbGktd29ya2VyLWNvbnRyb2xsZXInO1xuaW1wb3J0IHsgQmFzZUNsaVdvcmtlckNvbmZpZyB9IGZyb20gJy4vYmFzZS1jbGktd29ya2VyLWNvbmZpZyc7XG5cblxuXG5jb25zdCBXT1JLRVJfSU5JVF9TVEFSVF9USU1FX0xJTUlUID0gMTU7IC8vIDE1IHNlY29uZHMgbWF4IHRvIHN0YXJ0IHdvcmtlclxuY29uc3QgU1RBUlRfUE9SVF9GT1JfU0VSVklDRVMgPSAzNjAwO1xuXG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBCYXNlQ2xpV29ya2VyIHtcblxuICBjb25zdHJ1Y3RvcihcbiAgICAvKipcbiAgICAgKiB1bmlxdWUgaWQgZm9yIHNlcnZpY2VcbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgc2VydmljZUlEOiBzdHJpbmcsXG4gICAgLyoqXG4gICAgICogZXh0ZXJuYWwgY29tbWFuZCB0aGF0IHdpbGwgc3RhcnQgc2VydmljZVxuICAgICAqL1xuICAgIHByb3RlY3RlZCByZWFkb25seSBzdGFydENvbW1hbmQ6IHN0cmluZyxcbiAgKSB7fVxuXG5cblxuICBwcm90ZWN0ZWQgYWJzdHJhY3Qgc3RhcnROb3JtYWxseUluQ3VycmVudFByb2Nlc3MoKTtcbiAgcHJvdGVjdGVkIGFic3RyYWN0IGdldENvbnRyb2xsZXJGb3JSZW1vdGVDb25uZWN0aW9uKCk6IFByb21pc2U8XG4gICAgQmFzZUNsaVdvcmtlckNvbnRyb2xsZXI8YW55PlxuICA+O1xuXG5cblxuXG5cbiAgcHJpdmF0ZSBnZXQgcGF0aFRvUHJvY2Vzc0xvY2FsSW5mb0pzb24oKTogc3RyaW5nIHtcbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuICAgIHJldHVybiAodm9pZCAwKTtcbiAgfVxuXG5cblxuICBwcm90ZWN0ZWQgZ2V0IHByb2Nlc3NMb2NhbEluZm9PYmooKTogQmFzZUNsaVdvcmtlckNvbmZpZyB7XG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4gICAgcmV0dXJuICh2b2lkIDApO1xuICB9XG5cblxuXG5cblxuXG5cbiAgcHVibGljIGFzeW5jIHN0YXJ0RGV0YWNoZWRJZk5lZWRzVG9CZVN0YXJ0ZWQoKSB7XG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbiAgICByZXR1cm4gKHZvaWQgMCk7XG4gIH1cblxuXG5cbiAgLyoqXG4gICAqIHN0b3AgaWYgc3RhcnRlZFxuICAgKi9cbiAgYXN5bmMga2lsbCgpIHtcbiAgICBIZWxwZXJzLmxvZyhgS2lsbGluZyBzZXJ2aWNlIFwiJHt0aGlzLnNlcnZpY2VJRH1cIi4uLmApO1xuICAgIGlmICh0aGlzLnByb2Nlc3NMb2NhbEluZm9PYmouaXNFbXB0eSkge1xuICAgICAgSGVscGVycy5sb2coXG4gICAgICAgIGBTZXJ2aWNlIFwiJHt0aGlzLnNlcnZpY2VJRH1cIiBub3Qgc3RhcnRlZCAtIG5vdGhpbmcgdG8ga2lsbC4uLmAsXG4gICAgICApO1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBjb25zdCBjdHJsID0gYXdhaXQgdGhpcy5nZXRDb250cm9sbGVyRm9yUmVtb3RlQ29ubmVjdGlvbigpO1xuICAgIHRyeSB7XG4gICAgICBIZWxwZXJzLnJlbW92ZUZpbGVJZkV4aXN0cyh0aGlzLnBhdGhUb1Byb2Nlc3NMb2NhbEluZm9Kc29uKTtcbiAgICAgIGF3YWl0IGN0cmwuYmFzZUNMaVdvcmtlckNvbW1hbmRfa2lsbCgpLnJlY2VpdmVkO1xuICAgICAgSGVscGVycy5sb2coYFNlcnZpY2UgXCIke3RoaXMuc2VydmljZUlEfVwiIGtpbGxlZC4uLmApO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICBIZWxwZXJzLmxvZyhlcnJvcik7XG4gICAgICBIZWxwZXJzLmxvZyhgU2VydmljZSBcIiR7dGhpcy5zZXJ2aWNlSUR9XCIgbm90IGtpbGxlZC4uLiAgIGApO1xuICAgIH1cbiAgfVxuXG5cblxuICAvKipcbiAgICoga2lsbCBkZXRhY2hlZCBwcm9jZXNzIGFuZCBzdGFydCBhZ2FpblxuICAgKi9cbiAgYXN5bmMgcmVzdGFydCgpIHtcbiAgICBhd2FpdCB0aGlzLmtpbGwoKTtcbiAgICBhd2FpdCB0aGlzLnN0YXJ0RGV0YWNoZWQoKTtcbiAgfVxuXG5cblxuXG5cblxuXG4gIHByb3RlY3RlZCBhc3luYyBpc1NlcnZpY2VIZWFsdGh5KG9wdGlvbnM/OiB7XG4gICAgaGVhbHRoQ2hlY2tSZXF1ZXN0VHJ5cz86IG51bWJlcjtcbiAgfSk6IFByb21pc2U8Ym9vbGVhbj4ge1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4gICAgcmV0dXJuICh2b2lkIDApO1xuICB9XG5cblxuXG4gIC8qKlxuICAgKiBzdGFydCBpZiBub3Qgc3RhcnRlZCBkZXRhY2hlZCBwcm9jZXNzXG4gICAqL1xuICBwcm90ZWN0ZWQgYXN5bmMgc3RhcnREZXRhY2hlZCgpIHtcbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbiAgICByZXR1cm4gKHZvaWQgMCk7XG4gIH1cblxuXG5cbiAgcHJvdGVjdGVkIGFzeW5jIF9pbmZvU2NyZWVuKCkge1xuICAgIHdoaWxlICh0cnVlKSB7XG4gICAgICBIZWxwZXJzLmNsZWFyQ29uc29sZSgpO1xuICAgICAgY29uc3QgY2ZvbnRzID0gcmVxdWlyZSgnY2ZvbnRzJyk7XG4gICAgICBjb25zdCBvdXRwdXQgPSBjZm9udHMucmVuZGVyKGBUQU9OLkRFVmAsIHtcbiAgICAgICAgZm9udDogJ2Jsb2NrJyxcbiAgICAgICAgYWxpZ246ICdsZWZ0JyxcbiAgICAgICAgY29sb3JzOiBbJ3N5c3RlbSddLFxuICAgICAgICBiYWNrZ3JvdW5kOiAndHJhbnNwYXJlbnQnLFxuICAgICAgICBsZXR0ZXJTcGFjaW5nOiAxLFxuICAgICAgICBsaW5lSGVpZ2h0OiAxLFxuICAgICAgICBzcGFjZTogdHJ1ZSxcbiAgICAgICAgbWF4TGVuZ3RoOiAnMCcsXG4gICAgICAgIGdyYWRpZW50OiBmYWxzZSxcbiAgICAgICAgaW5kZXBlbmRlbnRHcmFkaWVudDogZmFsc2UsXG4gICAgICAgIHRyYW5zaXRpb25HcmFkaWVudDogZmFsc2UsXG4gICAgICAgIGVudjogJ25vZGUnLFxuICAgICAgfSk7XG4gICAgICBjb25zb2xlLmxvZyhvdXRwdXQuc3RyaW5nKTtcblxuICAgICAgSGVscGVycy5pbmZvKGBcblxuICAgICAgICBTZXJ2aWNlICR7Y2hhbGsuYm9sZC5yZWQodGhpcy5zZXJ2aWNlSUQpfSBzdGFydGVkLi5cbiAgICAgICAgQ2hlY2sgaW5mbyBoZXJlIGh0dHA6Ly9sb2NhbGhvc3Q6JHtjaGFsay5ib2xkKFxuICAgICAgICAgIHRoaXMucHJvY2Vzc0xvY2FsSW5mb09iaj8ucG9ydD8udG9TdHJpbmcoKSxcbiAgICAgICAgKX0vJHsnaW5mbycgYXMga2V5b2YgQmFzZUNsaVdvcmtlckNvbnRyb2xsZXI8YW55Pn1cblxuICAgICAgICAgIGApO1xuICAgICAgY29uc3QgY2hvaWNlcyA9IHtcbiAgICAgICAgb3BlbkJyb3dzZXI6IHtcbiAgICAgICAgICBuYW1lOiAnT3BlbiBicm93c2VyIHdpdGggc2VydmljZSBpbmZvJyxcbiAgICAgICAgfSxcblxuXG5cblxuXG5cbiAgICAgICAgZXhpdDoge1xuICAgICAgICAgIG5hbWU6IGBTaHV0IGRvd24gc2VydmljZWAsXG4gICAgICAgIH0sXG4gICAgICB9O1xuICAgICAgY29uc3QgY2hvaWNlID0gYXdhaXQgVXRpbHNUZXJtaW5hbC5zZWxlY3Q8a2V5b2YgdHlwZW9mIGNob2ljZXM+KHtcbiAgICAgICAgY2hvaWNlcyxcbiAgICAgICAgcXVlc3Rpb246ICdDaG9vc2UgYWN0aW9uJyxcbiAgICAgIH0pO1xuICAgICAgaWYgKGNob2ljZSA9PT0gJ29wZW5Ccm93c2VyJykge1xuICAgICAgICBjb25zdCBvcGVuSW5Ccm93c2VyID0gcmVxdWlyZSgnb3BlbicpO1xuICAgICAgICBvcGVuSW5Ccm93c2VyKGBodHRwOi8vbG9jYWxob3N0OiR7dGhpcy5wcm9jZXNzTG9jYWxJbmZvT2JqLnBvcnR9L2luZm9gKTtcbiAgICAgIH1cbiAgICAgIGlmIChjaG9pY2UgPT09ICdleGl0Jykge1xuICAgICAgICBwcm9jZXNzLmV4aXQoMCk7XG4gICAgICB9XG4gICAgICBzd2l0Y2ggKGNob2ljZSkge1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG5cblxuICBwcml2YXRlIHNhdmVQcm9jZXNzSW5mbyhwcm9jZXNzQ29uZmlnOiBQYXJ0aWFsPEJhc2VDbGlXb3JrZXJDb25maWc+KSB7XG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4gICAgcmV0dXJuICh2b2lkIDApO1xuICB9XG5cblxuXG4gIHByb3RlY3RlZCBhc3luYyBpbml0aWFsaXplV29ya2VyTWV0YWRhdGEoKSB7XG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbiAgICByZXR1cm4gKHZvaWQgMCk7XG4gIH1cblxuXG5cbiAgcHJvdGVjdGVkIGFzeW5jIHdhaXRGb3JQcm9jZXNzUG9ydFNhdmVkVG9EaXNrKCk6IFByb21pc2U8dm9pZD4ge1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbiAgICByZXR1cm4gKHZvaWQgMCk7XG4gIH1cblxuXG5cbiAgYXN5bmMgZ2V0U2VydmljZVBvcnQoKTogUHJvbWlzZTxudW1iZXI+IHtcbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbiAgICByZXR1cm4gKHZvaWQgMCk7XG4gIH1cblxuXG5cbn1cblxuIDsoe30pOyAvLyBALS1lbmQtb2YtZmlsZS1mb3ItbW9kdWxlPXRucC1oZWxwZXJzIGxpYi9iYXNlL2Jhc2UtY2xpLXdvcmtlci50cyJdfQ==
451
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1jbGktd29ya2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vdG1wLWxpYnMtZm9yLWRpc3QvdG5wLWhlbHBlcnMvcHJvamVjdHMvdG5wLWhlbHBlcnMvc3JjL2xpYi9iYXNlL2Jhc2UtY2xpLXdvcmtlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFHQSxPQUFPLEVBQWtDLENBQUMsRUFBRSxLQUFLLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsS0FBSyxFQUFLLE1BQU0sa0JBQWtCLENBQUMsQ0FBQSxLQUFLO0FBWTVHLE9BQU8sRUFBRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBTWxELE1BQU0sNEJBQTRCLEdBQUcsRUFBRSxDQUFDLENBQUMsaUNBQWlDO0FBQzFFLE1BQU0sdUJBQXVCLEdBQUcsSUFBSSxDQUFDO0FBcUJyQyxNQUFNLE9BQWdCLGFBQWE7SUFLakM7SUFDRTs7T0FFRztJQUNnQixTQUFpQjtJQUNwQzs7T0FFRztJQUNnQixZQUFvQjtJQUN2Qzs7T0FFRztJQUNnQixjQUFzQjtRQVJ0QixjQUFTLEdBQVQsU0FBUyxDQUFRO1FBSWpCLGlCQUFZLEdBQVosWUFBWSxDQUFRO1FBSXBCLG1CQUFjLEdBQWQsY0FBYyxDQUFRO0lBQ3hDLENBQUM7SUFZSixJQUFjLDBCQUEwQjtRQUMxQyxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNELE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ2xCLENBQUM7SUFJRCxJQUFjLG1CQUFtQjtRQUNuQyxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDRCxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUNsQixDQUFDO0lBUU0sS0FBSyxDQUFDLCtC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QztJQUNsQixDQUFDO0lBSVMsS0FBSyxDQUFDLDBCQUEwQjtRQUM1QyxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0QsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDbEIsQ0FBQztJQUlEOzs7O09BSUc7SUFDTyxLQUFLLENBQUMsZ0JBQWdCLENBQUMsT0FFaEM7UUFDSCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FB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QUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0QsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDbEIsQ0FBQztJQUlTLEtBQUssQ0FBQyx3QkFBd0I7UUFDMUMsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0QsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDbEIsQ0FBQztJQUlTLEtBQUssQ0FBQyw2QkFBNkI7UUFDL0MsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNELE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ2xCLENBQUM7SUFJRCxLQUFLLENBQUMsY0FBYztRQUN0QixLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0QsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDbEIsQ0FBQztDQUlGO0FBRUEsQ0FBQztBQUFBLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxvRUFBb0UiLCJzb3VyY2VzQ29udGVudCI6WyJcblxuXG5pbXBvcnQgeyAgIGNoYWxrLCAgIGNyb3NzUGxhdGZvcm1QYXRoLCAgIF8sIC8qICovIC8qICovIC8qICovIC8qICovIC8qICovICAgIH0gZnJvbSAndG5wLWNvcmUvYnJvd3Nlcic7LyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cblxuaW1wb3J0IHsgY29uZmlnIH0gZnJvbSAndG5wLWNvbmZpZy9icm93c2VyJztcbmltcG9ydCB7IEhlbHBlcnMsIFV0aWxzVGVybWluYWwgfSBmcm9tICcuLi9pbmRleCc7XG5pbXBvcnQgdHlwZSB7IEJhc2VDbGlXb3JrZXJDb250cm9sbGVyIH0gZnJvbSAnLi9iYXNlLWNsaS13b3JrZXItY29udHJvbGxlcic7XG5pbXBvcnQgeyBCYXNlQ2xpV29ya2VyQ29uZmlnIH0gZnJvbSAnLi9iYXNlLWNsaS13b3JrZXItY29uZmlnJztcblxuXG5cbmNvbnN0IFdPUktFUl9JTklUX1NUQVJUX1RJTUVfTElNSVQgPSAyNTsgLy8gMTUgc2Vjb25kcyBtYXggdG8gc3RhcnQgd29ya2VyXG5jb25zdCBTVEFSVF9QT1JUX0ZPUl9TRVJWSUNFUyA9IDM2MDA7XG5cblxuXG5leHBvcnQgdHlwZSBDZm9udFN0eWxlID1cbiAgfCAnYmxvY2snXG4gIHwgJ3NsaWNrJ1xuICB8ICd0aW55J1xuICB8ICdncmlkJ1xuICB8ICdwYWxsZXQnXG4gIHwgJ3NoYWRlJ1xuICB8ICdjaHJvbWUnXG4gIHwgJ3NpbXBsZSdcbiAgfCAnc2ltcGxlQmxvY2snXG4gIHwgJzNkJ1xuICB8ICdzaW1wbGUzZCdcbiAgfCAnaHVnZSc7XG5cbmV4cG9ydCB0eXBlIENmb250QWxpZ24gPSAnbGVmdCcgfCAnY2VudGVyJyB8ICdyaWdodCcgfCAnYmxvY2snO1xuXG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBCYXNlQ2xpV29ya2VyPFxuICBSRU1PVEVfQ1RSTCBleHRlbmRzXG4gICAgQmFzZUNsaVdvcmtlckNvbnRyb2xsZXI8YW55PiA9IEJhc2VDbGlXb3JrZXJDb250cm9sbGVyPGFueT4sXG4+IHtcblxuICBjb25zdHJ1Y3RvcihcbiAgICAvKipcbiAgICAgKiB1bmlxdWUgaWQgZm9yIHNlcnZpY2VcbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgc2VydmljZUlEOiBzdHJpbmcsXG4gICAgLyoqXG4gICAgICogZXh0ZXJuYWwgY29tbWFuZCB0aGF0IHdpbGwgc3RhcnQgc2VydmljZVxuICAgICAqL1xuICAgIHByb3RlY3RlZCByZWFkb25seSBzdGFydENvbW1hbmQ6IHN0cmluZyxcbiAgICAvKipcbiAgICAgKiB1bmlxdWUgaWQgZm9yIHNlcnZpY2VcbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgc2VydmljZVZlcnNpb246IHN0cmluZyxcbiAgKSB7fVxuXG5cblxuICBwcm90ZWN0ZWQgYWJzdHJhY3Qgc3RhcnROb3JtYWxseUluQ3VycmVudFByb2Nlc3Mob3B0aW9ucz86IHt9KTtcblxuICBwdWJsaWMgYWJzdHJhY3QgZ2V0Q29udHJvbGxlckZvclJlbW90ZUNvbm5lY3Rpb24oKTogUHJvbWlzZTxSRU1PVEVfQ1RSTD47XG5cblxuXG5cblxuICBwcm90ZWN0ZWQgZ2V0IHBhdGhUb1Byb2Nlc3NMb2NhbEluZm9Kc29uKCk6IHN0cmluZyB7XG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbiAgICByZXR1cm4gKHZvaWQgMCk7XG4gIH1cblxuXG5cbiAgcHJvdGVjdGVkIGdldCBwcm9jZXNzTG9jYWxJbmZvT2JqKCk6IEJhc2VDbGlXb3JrZXJDb25maWcge1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuICAgIHJldHVybiAodm9pZCAwKTtcbiAgfVxuXG5cblxuXG5cblxuXG4gIHB1YmxpYyBhc3luYyBzdGFydERldGFjaGVkSWZOZWVkc1RvQmVTdGFydGVkKCkge1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbiAgICByZXR1cm4gKHZvaWQgMCk7XG4gIH1cblxuXG5cbiAgLyoqXG4gICAqIHN0b3AgaWYgc3RhcnRlZFxuICAgKi9cbiAgYXN5bmMga2lsbChvcHRpb25zPzogeyBkb250UmVtb3ZlQ29uZmlnRmlsZT86IGJvb2xlYW4gfSkge1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4gICAgcmV0dXJuICh2b2lkIDApO1xuICB9XG5cblxuXG4gIC8qKlxuICAgKiBraWxsIGRldGFjaGVkIHByb2Nlc3MgYW5kIHN0YXJ0IGFnYWluXG4gICAqIEBwYXJhbSBvcHRpb25zLmRldGFjaGVkIC0gZGVmYXVsdCB0cnVlXG4gICAqL1xuICBhc3luYyByZXN0YXJ0KG9wdGlvbnM/OiB7IGRldGFjaGVkPzogYm9vbGVhbiB9KSB7XG4gICAgb3B0aW9ucyA9IG9wdGlvbnMgfHwge307XG4gICAgb3B0aW9ucy5kZXRhY2hlZCA9IF8uaXNVbmRlZmluZWQob3B0aW9ucy5kZXRhY2hlZCkgPyB0cnVlIDogZmFsc2U7XG4gICAgYXdhaXQgdGhpcy5raWxsKCk7XG4gICAgLy9sb25nZXIgYmVjYXVzZSBvcyBpcyBkaXNwb3NpbmcgcHJvY2VzcyBwcmV2aW91cyBwcm9jZXNzXG5cbiAgICBpZiAob3B0aW9ucy5kZXRhY2hlZCkge1xuICAgICAgSGVscGVycy5pbmZvKFxuICAgICAgICBgUmVzdGFydGluZyBzZXJ2aWNlIFwiJHt0aGlzLnNlcnZpY2VJRH1cIiBpbiBkZXRhY2hlZCBtb2RlLi4uYCxcbiAgICAgICk7XG4gICAgICBhd2FpdCB0aGlzLnN0YXJ0RGV0YWNoZWQoKTtcbiAgICB9IGVsc2Uge1xuICAgICAgSGVscGVycy5pbmZvKFxuICAgICAgICBgUmVzdGFydGluZyBzZXJ2aWNlIFwiJHt0aGlzLnNlcnZpY2VJRH1cIiBpbiBjdXJyZW50IHByb2Nlc3MuLi5gLFxuICAgICAgKTtcbiAgICAgIGF3YWl0IHRoaXMuc3RhcnROb3JtYWxseUluQ3VycmVudFByb2Nlc3MoKTtcbiAgICB9XG4gIH1cblxuXG5cbiAgLyoqXG4gICAqIG9ubHkgZm9yIGNsaSBzdGFydFxuICAgKiBAcGFyYW0gY2xpUGFyYW1zIG9uIGZyb20gY2xpXG4gICAqL1xuICBhc3luYyBjbGlTdGFydFByb2NlZHVyZShjbGlQYXJhbXM6IGFueSkge1xuICAgIGNvbnN0IGluc3RhbmNlOiBCYXNlQ2xpV29ya2VyID0gdGhpcztcbiAgICBjb25zdCBkZXRhY2hlZCA9ICEhY2xpUGFyYW1zWydkZXRhY2hlZCddIHx8ICEhY2xpUGFyYW1zWydkZXRhY2gnXTtcbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4gICAgICByZXR1cm4gKHZvaWQgMCk7XG4gIH1cblxuXG5cblxuXG5cblxuICBwcm90ZWN0ZWQgcHJldmVudEV4dGVybmFsQ29uZmlnQ2hhbmdlKCkge1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbiAgICByZXR1cm4gKHZvaWQgMCk7XG4gIH1cblxuXG5cbiAgcHJvdGVjdGVkIGFzeW5jIHByZXZlbnRTdGFydElmQWxyZWFkeVN0YXJ0ZWQoKSB7XG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuICAgIHJldHVybiAodm9pZCAwKTtcbiAgfVxuXG5cblxuICBwcm90ZWN0ZWQgYXN5bmMga2lsbFdvcmtlcldpdGhMb3dlclZlcnNpb24oKSB7XG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuICAgIHJldHVybiAodm9pZCAwKTtcbiAgfVxuXG5cblxuICAvKipcbiAgICogVGhpcyBoYXMgMiBwdXJwb3NlczpcbiAgICogLSBpbmZpbml0ZSBjaGVjayB3aGVuIHdoZW4gZGV0YWNoZWQgcHJvY2VzcyBmaW5pc2hlZCBzdGFydGluZ1xuICAgKiAtIHF1aWNrIGNoZWNrIGlmIHNlcnZpY2UgaXMgaGVhbHRoeSAvIGFscmVhZHkgc3RhcnRlZFxuICAgKi9cbiAgcHJvdGVjdGVkIGFzeW5jIGlzU2VydmljZUhlYWx0aHkob3B0aW9uczoge1xuICAgIGhlYWx0aENoZWNrUmVxdWVzdFRyeXM/OiBudW1iZXI7XG4gIH0pOiBQcm9taXNlPGJvb2xlYW4+IHtcbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbiAgICByZXR1cm4gKHZvaWQgMCk7XG4gIH1cblxuXG5cbiAgLyoqXG4gICAqIHN0YXJ0IGlmIG5vdCBzdGFydGVkIGRldGFjaGVkIHByb2Nlc3NcbiAgICovXG4gIHByb3RlY3RlZCBhc3luYyBzdGFydERldGFjaGVkKCkge1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbiAgICByZXR1cm4gKHZvaWQgMCk7XG4gIH1cblxuXG5cbiAgcHJvdGVjdGVkIGFzeW5jIGhlYWRlclRleHQoKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgICByZXR1cm4gXy5zdGFydENhc2UodGhpcy5zZXJ2aWNlSUQpO1xuICB9XG5cblxuXG4gIHByb3RlY3RlZCB0ZXh0SGVhZGVyU3R5bGUoKTogQ2ZvbnRTdHlsZSB7XG4gICAgcmV0dXJuICdibG9jayc7XG4gIH1cblxuXG5cbiAgcHJvdGVjdGVkIGhlYWRlclRleHRBbGlnbigpOiBDZm9udEFsaWduIHtcbiAgICByZXR1cm4gJ2xlZnQnO1xuICB9XG5cblxuXG4gIC8qKlxuICAgKiBvdmVycmlkZSB3aG9sZSB0ZXJtaW5hbCBoZWFkZXJcbiAgICovXG4gIHByb3RlY3RlZCBhc3luYyBoZWFkZXIoKTogUHJvbWlzZTx2b2lkPiB7XG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbiAgICByZXR1cm4gKHZvaWQgMCk7XG4gIH1cblxuXG5cbiAgYXN5bmMgaW5mb01lc3NhZ2VCZWxvd0hlYWRlcigpOiBQcm9taXNlPHZvaWQ+IHtcbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbiAgICByZXR1cm4gKHZvaWQgMCk7XG4gIH1cblxuXG5cbiAgcHJvdGVjdGVkIGFzeW5jIF9pbmZvU2NyZWVuKCkge1xuICAgIHdoaWxlICh0cnVlKSB7XG4gICAgICBIZWxwZXJzLmNsZWFyQ29uc29sZSgpO1xuXG4gICAgICBhd2FpdCB0aGlzLmhlYWRlcigpO1xuXG4gICAgICBhd2FpdCB0aGlzLmluZm9NZXNzYWdlQmVsb3dIZWFkZXIoKTtcbiAgICAgIGNvbnN0IGNob2ljZXMgPSB7XG4gICAgICAgIG9wZW5Ccm93c2VyOiB7XG4gICAgICAgICAgbmFtZTogJ09wZW4gYnJvd3NlciB3aXRoIHNlcnZpY2UgaW5mbycsXG4gICAgICAgIH0sXG5cblxuXG5cblxuXG4gICAgICAgIGV4aXQ6IHtcbiAgICAgICAgICBuYW1lOiBgU2h1dCBkb3duIHNlcnZpY2VgLFxuICAgICAgICB9LFxuICAgICAgfTtcbiAgICAgIGNvbnN0IGNob2ljZSA9IGF3YWl0IFV0aWxzVGVybWluYWwuc2VsZWN0PGtleW9mIHR5cGVvZiBjaG9pY2VzPih7XG4gICAgICAgIGNob2ljZXMsXG4gICAgICAgIHF1ZXN0aW9uOiAnQ2hvb3NlIGFjdGlvbicsXG4gICAgICB9KTtcbiAgICAgIGlmIChjaG9pY2UgPT09ICdvcGVuQnJvd3NlcicpIHtcbiAgICAgICAgY29uc3Qgb3BlbkluQnJvd3NlciA9IHJlcXVpcmUoJ29wZW4nKTtcbiAgICAgICAgb3BlbkluQnJvd3NlcihgaHR0cDovL2xvY2FsaG9zdDoke3RoaXMucHJvY2Vzc0xvY2FsSW5mb09iai5wb3J0fS9pbmZvYCk7XG4gICAgICB9XG4gICAgICBpZiAoY2hvaWNlID09PSAnZXhpdCcpIHtcbiAgICAgICAgcHJvY2Vzcy5leGl0KDApO1xuICAgICAgfVxuICAgICAgc3dpdGNoIChjaG9pY2UpIHtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuXG5cbiAgcHJpdmF0ZSBzYXZlUHJvY2Vzc0luZm8ocHJvY2Vzc0NvbmZpZzogUGFydGlhbDxCYXNlQ2xpV29ya2VyQ29uZmlnPikge1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuICAgIHJldHVybiAodm9pZCAwKTtcbiAgfVxuXG5cblxuICBwcm90ZWN0ZWQgYXN5bmMgaW5pdGlhbGl6ZVdvcmtlck1ldGFkYXRhKCkge1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuICAgIHJldHVybiAodm9pZCAwKTtcbiAgfVxuXG5cblxuICBwcm90ZWN0ZWQgYXN5bmMgd2FpdEZvclByb2Nlc3NQb3J0U2F2ZWRUb0Rpc2soKTogUHJvbWlzZTx2b2lkPiB7XG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuICAgIHJldHVybiAodm9pZCAwKTtcbiAgfVxuXG5cblxuICBhc3luYyBnZXRTZXJ2aWNlUG9ydCgpOiBQcm9taXNlPG51bWJlcj4ge1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbiAgICByZXR1cm4gKHZvaWQgMCk7XG4gIH1cblxuXG5cbn1cblxuIDsoe30pOyAvLyBALS1lbmQtb2YtZmlsZS1mb3ItbW9kdWxlPXRucC1oZWxwZXJzIGxpYi9iYXNlL2Jhc2UtY2xpLXdvcmtlci50cyJdfQ==
@@ -42,7 +42,20 @@ export class BaseCompilerForProject extends IncCompiler.Base {
42
42
  /* */
43
43
  return (void 0);
44
44
  }
45
+ constructor(project, options, allowFolderOutSideProject = false) {
46
+ super();
47
+ this.project = project;
48
+ /* */
49
+ /* */
50
+ /* */
51
+ /* */
52
+ /* */
53
+ /* */
54
+ /* */
55
+ /* */
56
+ /* */
57
+ }
45
58
  }
46
59
  ;
47
60
  ({}); // @--end-of-file-for-module=tnp-helpers lib/base/base-compiler-for-project.ts
48
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1jb21waWxlci1mb3ItcHJvamVjdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3RtcC1saWJzLWZvci1kaXN0L3RucC1oZWxwZXJzL3Byb2plY3RzL3RucC1oZWxwZXJzL3NyYy9saWIvYmFzZS9iYXNlLWNvbXBpbGVyLWZvci1wcm9qZWN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLEtBQUs7QUFDTCxLQUFLO0FBRUwsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBTzNELE1BQU0sT0FBZ0Isc0JBR3BCLFNBQVEsV0FBVyxDQUFDLElBQXFCO0lBRS9CLG1CQUFtQixDQUMzQixPQUFnQixFQUNoQixPQUFxRCxFQUNyRCxTQUFTLEdBQUcsS0FBSztRQUVyQixLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0QsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDbEIsQ0FBQztDQXNCRjtBQUVBLENBQUM7QUFBQSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsOEVBQThFIiwic291cmNlc0NvbnRlbnQiOlsiXG5cblxuLyogKi9cbi8qICovXG4gIFxuaW1wb3J0IHsgSW5jQ29tcGlsZXIgfSBmcm9tICdpbmNyZW1lbnRhbC1jb21waWxlci9icm93c2VyJztcbmltcG9ydCB7IF8gfSBmcm9tICd0bnAtY29yZS9icm93c2VyJztcbmltcG9ydCB7IEJhc2VQcm9qZWN0IH0gZnJvbSAnLi9iYXNlLXByb2plY3QnOyAvLyBAdHMtaWdub3JlXG5pbXBvcnQgeyBIZWxwZXJzIH0gZnJvbSAnLi4vLi4vbGliJztcbmltcG9ydCB7IGNvbmZpZyB9IGZyb20gJ3RucC1jb25maWcvYnJvd3Nlcic7XG5cblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEJhc2VDb21waWxlckZvclByb2plY3Q8XG4gIEFERElUSU9OQUxfREFUQSA9IGFueSxcbiAgUFJPSkVDVCBleHRlbmRzIEJhc2VQcm9qZWN0ID0gQmFzZVByb2plY3QsXG4+IGV4dGVuZHMgSW5jQ29tcGlsZXIuQmFzZTxBRERJVElPTkFMX0RBVEE+IHtcblxuICBwcm90ZWN0ZWQgY2hlY2tGb2xkZXJDb21waWxlcihcbiAgICBwcm9qZWN0OiBQUk9KRUNULFxuICAgIG9wdGlvbnM6IEluY0NvbXBpbGVyLk1vZGVscy5CYXNlQ2xpZW50Q29tcGlsZXJPcHRpb25zLFxuICAgIGRvbnRDaGVjayA9IGZhbHNlLFxuICApIHtcbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4gICAgcmV0dXJuICh2b2lkIDApO1xuICB9XG5cblxuXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuICBcblxufVxuXG4gOyh7fSk7IC8vIEAtLWVuZC1vZi1maWxlLWZvci1tb2R1bGU9dG5wLWhlbHBlcnMgbGliL2Jhc2UvYmFzZS1jb21waWxlci1mb3ItcHJvamVjdC50cyJdfQ==
61
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1jb21waWxlci1mb3ItcHJvamVjdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3RtcC1saWJzLWZvci1kaXN0L3RucC1oZWxwZXJzL3Byb2plY3RzL3RucC1oZWxwZXJzL3NyYy9saWIvYmFzZS9iYXNlLWNvbXBpbGVyLWZvci1wcm9qZWN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLEtBQUs7QUFDTCxLQUFLO0FBRUwsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBTzNELE1BQU0sT0FBZ0Isc0JBR3BCLFNBQVEsV0FBVyxDQUFDLElBQXFCO0lBRS9CLG1CQUFtQixDQUMzQixPQUFnQixFQUNoQixPQUFxRCxFQUNyRCxTQUFTLEdBQUcsS0FBSztRQUVyQixLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0QsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDbEIsQ0FBQztJQUtELFlBQ1MsT0FBZ0IsRUFDdkIsT0FBc0QsRUFDdEQseUJBQXlCLEdBQUcsS0FBSztRQUVqQyxLQUFLLEVBQUUsQ0FBQztRQUpELFlBQU8sR0FBUCxPQUFPLENBQVM7UUFLM0IsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO0lBRUgsQ0FBQztDQUdGO0FBRUEsQ0FBQztBQUFBLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyw4RUFBOEUiLCJzb3VyY2VzQ29udGVudCI6WyJcblxuXG4vKiAqL1xuLyogKi9cbiAgXG5pbXBvcnQgeyBJbmNDb21waWxlciB9IGZyb20gJ2luY3JlbWVudGFsLWNvbXBpbGVyL2Jyb3dzZXInO1xuaW1wb3J0IHsgXyB9IGZyb20gJ3RucC1jb3JlL2Jyb3dzZXInO1xuaW1wb3J0IHsgQmFzZVByb2plY3QgfSBmcm9tICcuL2Jhc2UtcHJvamVjdCc7IC8vIEB0cy1pZ25vcmVcbmltcG9ydCB7IEhlbHBlcnMgfSBmcm9tICcuLi8uLi9saWInO1xuaW1wb3J0IHsgY29uZmlnIH0gZnJvbSAndG5wLWNvbmZpZy9icm93c2VyJztcblxuXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQmFzZUNvbXBpbGVyRm9yUHJvamVjdDxcbiAgQURESVRJT05BTF9EQVRBID0gYW55LFxuICBQUk9KRUNUIGV4dGVuZHMgQmFzZVByb2plY3QgPSBCYXNlUHJvamVjdCxcbj4gZXh0ZW5kcyBJbmNDb21waWxlci5CYXNlPEFERElUSU9OQUxfREFUQT4ge1xuXG4gIHByb3RlY3RlZCBjaGVja0ZvbGRlckNvbXBpbGVyKFxuICAgIHByb2plY3Q6IFBST0pFQ1QsXG4gICAgb3B0aW9uczogSW5jQ29tcGlsZXIuTW9kZWxzLkJhc2VDbGllbnRDb21waWxlck9wdGlvbnMsXG4gICAgZG9udENoZWNrID0gZmFsc2UsXG4gICkge1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbiAgICByZXR1cm4gKHZvaWQgMCk7XG4gIH1cblxuXG5cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgcHJvamVjdDogUFJPSkVDVCxcbiAgICBvcHRpb25zPzogSW5jQ29tcGlsZXIuTW9kZWxzLkJhc2VDbGllbnRDb21waWxlck9wdGlvbnMsXG4gICAgYWxsb3dGb2xkZXJPdXRTaWRlUHJvamVjdCA9IGZhbHNlLFxuICApIHtcbiAgICBzdXBlcigpO1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuICBcbiAgfVxuXG5cbn1cblxuIDsoe30pOyAvLyBALS1lbmQtb2YtZmlsZS1mb3ItbW9kdWxlPXRucC1oZWxwZXJzIGxpYi9iYXNlL2Jhc2UtY29tcGlsZXItZm9yLXByb2plY3QudHMiXX0=