tnp-helpers 13.1.17 → 13.1.18

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 (215) hide show
  1. package/app.js +3 -3
  2. package/app.js.map +1 -0
  3. package/browser/README.md +24 -24
  4. package/browser/esm2020/lib/angular.helper.mjs +87 -87
  5. package/browser/esm2020/lib/base-component.mjs +49 -49
  6. package/browser/esm2020/lib/base-formly-component.mjs +112 -112
  7. package/browser/esm2020/lib/condition-wait.mjs +45 -45
  8. package/browser/esm2020/lib/constants.mjs +7 -7
  9. package/browser/esm2020/lib/dual-component-ctrl.mjs +118 -118
  10. package/browser/esm2020/lib/firedev-models.mjs +3 -3
  11. package/browser/esm2020/lib/helpers-array-obj.mjs +82 -82
  12. package/browser/esm2020/lib/helpers-browser.mjs +46 -46
  13. package/browser/esm2020/lib/helpers-environment.mjs +32 -32
  14. package/browser/esm2020/lib/helpers-numbers.mjs +7 -7
  15. package/browser/esm2020/lib/helpers-strings-regexes.mjs +50 -50
  16. package/browser/esm2020/lib/helpers-strings.mjs +252 -252
  17. package/browser/esm2020/lib/helpers.mjs +283 -283
  18. package/browser/esm2020/lib/index.mjs +15 -15
  19. package/browser/esm2020/lib/long-press.directive.mjs +112 -112
  20. package/browser/esm2020/lib/project.mjs +429 -429
  21. package/browser/esm2020/lib/resize-service.mjs +21 -21
  22. package/browser/esm2020/public-api.mjs +1 -1
  23. package/browser/esm2020/tnp-helpers.mjs +4 -4
  24. package/browser/fesm2015/tnp-helpers.mjs +1676 -1676
  25. package/browser/fesm2015/tnp-helpers.mjs.map +1 -0
  26. package/browser/fesm2020/tnp-helpers.mjs +1666 -1666
  27. package/browser/fesm2020/tnp-helpers.mjs.map +1 -0
  28. package/browser/lib/angular.helper.d.ts +35 -35
  29. package/browser/lib/base-component.d.ts +16 -16
  30. package/browser/lib/base-formly-component.d.ts +30 -30
  31. package/browser/lib/condition-wait.d.ts +7 -7
  32. package/browser/lib/constants.d.ts +5 -5
  33. package/browser/lib/dual-component-ctrl.d.ts +24 -24
  34. package/browser/lib/firedev-models.d.ts +12 -12
  35. package/browser/lib/helpers-array-obj.d.ts +14 -14
  36. package/browser/lib/helpers-browser.d.ts +10 -10
  37. package/browser/lib/helpers-environment.d.ts +4 -4
  38. package/browser/lib/helpers-numbers.d.ts +2 -2
  39. package/browser/lib/helpers-strings-regexes.d.ts +27 -27
  40. package/browser/lib/helpers-strings.d.ts +49 -49
  41. package/browser/lib/helpers.d.ts +31 -31
  42. package/browser/lib/index.d.ts +11 -11
  43. package/browser/lib/long-press.directive.d.ts +24 -24
  44. package/browser/lib/project.d.ts +94 -94
  45. package/browser/lib/resize-service.d.ts +8 -8
  46. package/browser/tnp-helpers.d.ts +4 -4
  47. package/client/README.md +24 -24
  48. package/client/esm2020/lib/angular.helper.mjs +87 -87
  49. package/client/esm2020/lib/base-component.mjs +49 -49
  50. package/client/esm2020/lib/base-formly-component.mjs +112 -112
  51. package/client/esm2020/lib/condition-wait.mjs +45 -45
  52. package/client/esm2020/lib/constants.mjs +7 -7
  53. package/client/esm2020/lib/dual-component-ctrl.mjs +118 -118
  54. package/client/esm2020/lib/firedev-models.mjs +3 -3
  55. package/client/esm2020/lib/helpers-array-obj.mjs +82 -82
  56. package/client/esm2020/lib/helpers-browser.mjs +46 -46
  57. package/client/esm2020/lib/helpers-environment.mjs +32 -32
  58. package/client/esm2020/lib/helpers-numbers.mjs +7 -7
  59. package/client/esm2020/lib/helpers-strings-regexes.mjs +50 -50
  60. package/client/esm2020/lib/helpers-strings.mjs +252 -252
  61. package/client/esm2020/lib/helpers.mjs +283 -283
  62. package/client/esm2020/lib/index.mjs +15 -15
  63. package/client/esm2020/lib/long-press.directive.mjs +112 -112
  64. package/client/esm2020/lib/project.mjs +429 -429
  65. package/client/esm2020/lib/resize-service.mjs +21 -21
  66. package/client/esm2020/public-api.mjs +1 -1
  67. package/client/esm2020/tnp-helpers.mjs +4 -4
  68. package/client/fesm2015/tnp-helpers.mjs +1676 -1676
  69. package/client/fesm2015/tnp-helpers.mjs.map +1 -0
  70. package/client/fesm2020/tnp-helpers.mjs +1666 -1666
  71. package/client/fesm2020/tnp-helpers.mjs.map +1 -0
  72. package/client/lib/angular.helper.d.ts +35 -35
  73. package/client/lib/base-component.d.ts +16 -16
  74. package/client/lib/base-formly-component.d.ts +30 -30
  75. package/client/lib/condition-wait.d.ts +7 -7
  76. package/client/lib/constants.d.ts +5 -5
  77. package/client/lib/dual-component-ctrl.d.ts +24 -24
  78. package/client/lib/firedev-models.d.ts +12 -12
  79. package/client/lib/helpers-array-obj.d.ts +14 -14
  80. package/client/lib/helpers-browser.d.ts +10 -10
  81. package/client/lib/helpers-environment.d.ts +4 -4
  82. package/client/lib/helpers-numbers.d.ts +2 -2
  83. package/client/lib/helpers-strings-regexes.d.ts +27 -27
  84. package/client/lib/helpers-strings.d.ts +49 -49
  85. package/client/lib/helpers.d.ts +31 -31
  86. package/client/lib/index.d.ts +11 -11
  87. package/client/lib/long-press.directive.d.ts +24 -24
  88. package/client/lib/project.d.ts +94 -94
  89. package/client/lib/resize-service.d.ts +8 -8
  90. package/client/tnp-helpers.d.ts +4 -4
  91. package/index.d.ts +1 -1
  92. package/index.js.map +1 -0
  93. package/lib/angular.helper.d.ts +35 -35
  94. package/lib/angular.helper.js +3 -3
  95. package/lib/angular.helper.js.map +1 -0
  96. package/lib/base-component.d.ts +13 -13
  97. package/lib/base-component.js +3 -3
  98. package/lib/base-component.js.map +1 -0
  99. package/lib/base-formly-component.d.ts +27 -27
  100. package/lib/base-formly-component.js +3 -3
  101. package/lib/base-formly-component.js.map +1 -0
  102. package/lib/condition-wait.d.ts +8 -8
  103. package/lib/condition-wait.js.map +1 -0
  104. package/lib/constants.d.ts +6 -6
  105. package/lib/constants.js.map +1 -0
  106. package/lib/dual-component-ctrl.d.ts +24 -24
  107. package/lib/dual-component-ctrl.js +3 -3
  108. package/lib/dual-component-ctrl.js.map +1 -0
  109. package/lib/firedev-models.d.ts +13 -13
  110. package/lib/firedev-models.js.map +1 -0
  111. package/lib/git-project.d.ts +45 -45
  112. package/lib/git-project.js.map +1 -0
  113. package/lib/helpers-array-obj.d.ts +15 -15
  114. package/lib/helpers-array-obj.js.map +1 -0
  115. package/lib/helpers-browser.d.ts +11 -11
  116. package/lib/helpers-browser.js.map +1 -0
  117. package/lib/helpers-cli-tool.backend.d.ts +55 -55
  118. package/lib/helpers-cli-tool.backend.js.map +1 -0
  119. package/lib/helpers-dependencies.backend.d.ts +11 -11
  120. package/lib/helpers-dependencies.backend.js.map +1 -0
  121. package/lib/helpers-environment.d.ts +5 -5
  122. package/lib/helpers-environment.js.map +1 -0
  123. package/lib/helpers-file-folders.backend.d.ts +84 -83
  124. package/lib/helpers-file-folders.backend.js +9 -0
  125. package/lib/helpers-file-folders.backend.js.map +1 -0
  126. package/lib/helpers-git.backend.d.ts +43 -43
  127. package/lib/helpers-git.backend.js.map +1 -0
  128. package/lib/helpers-json5.backend.d.ts +16 -16
  129. package/lib/helpers-json5.backend.js.map +1 -0
  130. package/lib/helpers-morphi-framework.backend.d.ts +4 -4
  131. package/lib/helpers-morphi-framework.backend.js.map +1 -0
  132. package/lib/helpers-network.backend.d.ts +8 -8
  133. package/lib/helpers-network.backend.js.map +1 -0
  134. package/lib/helpers-npm.backend.d.ts +3 -3
  135. package/lib/helpers-npm.backend.js.map +1 -0
  136. package/lib/helpers-numbers.d.ts +3 -3
  137. package/lib/helpers-numbers.js.map +1 -0
  138. package/lib/helpers-path.backend.d.ts +7 -7
  139. package/lib/helpers-path.backend.js.map +1 -0
  140. package/lib/helpers-process.backend.d.ts +54 -54
  141. package/lib/helpers-process.backend.js.map +1 -0
  142. package/lib/helpers-strings-regexes.d.ts +28 -28
  143. package/lib/helpers-strings-regexes.js.map +1 -0
  144. package/lib/helpers-strings.d.ts +50 -50
  145. package/lib/helpers-strings.js.map +1 -0
  146. package/lib/helpers-system-terminal.backend.d.ts +5 -5
  147. package/lib/helpers-system-terminal.backend.js.map +1 -0
  148. package/lib/helpers-vscode.backend.d.ts +5 -5
  149. package/lib/helpers-vscode.backend.js.map +1 -0
  150. package/lib/helpers.d.ts +72 -72
  151. package/lib/helpers.js.map +1 -0
  152. package/lib/index.d.ts +12 -12
  153. package/lib/index.js.map +1 -0
  154. package/lib/long-press.directive.d.ts +22 -22
  155. package/lib/long-press.directive.js.map +1 -0
  156. package/lib/merge-helpers.backend.d.ts +23 -23
  157. package/lib/merge-helpers.backend.js.map +1 -0
  158. package/lib/project.d.ts +97 -97
  159. package/lib/project.js.map +1 -0
  160. package/lib/resize-service.d.ts +6 -6
  161. package/lib/resize-service.js.map +1 -0
  162. package/lib/ts-code/index.d.ts +1 -1
  163. package/lib/ts-code/index.js.map +1 -0
  164. package/lib/ts-code/ts-code-extractor.d.ts +14 -14
  165. package/lib/ts-code/ts-code-extractor.js.map +1 -0
  166. package/lib/ts-code/ts-code-modifier.backend.d.ts +12 -12
  167. package/lib/ts-code/ts-code-modifier.backend.js.map +1 -0
  168. package/package.json +5 -5
  169. package/package.json_devDependencies.json +222 -222
  170. package/package.json_tnp.json5 +44 -44
  171. package/tmp-environment.json +21 -21
  172. package/websql/README.md +24 -24
  173. package/websql/esm2020/lib/angular.helper.mjs +87 -87
  174. package/websql/esm2020/lib/base-component.mjs +49 -49
  175. package/websql/esm2020/lib/base-formly-component.mjs +112 -112
  176. package/websql/esm2020/lib/condition-wait.mjs +45 -45
  177. package/websql/esm2020/lib/constants.mjs +7 -7
  178. package/websql/esm2020/lib/dual-component-ctrl.mjs +118 -118
  179. package/websql/esm2020/lib/firedev-models.mjs +3 -3
  180. package/websql/esm2020/lib/helpers-array-obj.mjs +82 -82
  181. package/websql/esm2020/lib/helpers-browser.mjs +46 -46
  182. package/websql/esm2020/lib/helpers-environment.mjs +32 -32
  183. package/websql/esm2020/lib/helpers-numbers.mjs +7 -7
  184. package/websql/esm2020/lib/helpers-strings-regexes.mjs +50 -50
  185. package/websql/esm2020/lib/helpers-strings.mjs +252 -252
  186. package/websql/esm2020/lib/helpers.mjs +283 -283
  187. package/websql/esm2020/lib/index.mjs +15 -15
  188. package/websql/esm2020/lib/long-press.directive.mjs +112 -112
  189. package/websql/esm2020/lib/project.mjs +429 -429
  190. package/websql/esm2020/lib/resize-service.mjs +21 -21
  191. package/websql/esm2020/public-api.mjs +1 -1
  192. package/websql/esm2020/tnp-helpers.mjs +4 -4
  193. package/websql/fesm2015/tnp-helpers.mjs +1676 -1676
  194. package/websql/fesm2015/tnp-helpers.mjs.map +1 -0
  195. package/websql/fesm2020/tnp-helpers.mjs +1666 -1666
  196. package/websql/fesm2020/tnp-helpers.mjs.map +1 -0
  197. package/websql/lib/angular.helper.d.ts +35 -35
  198. package/websql/lib/base-component.d.ts +16 -16
  199. package/websql/lib/base-formly-component.d.ts +30 -30
  200. package/websql/lib/condition-wait.d.ts +7 -7
  201. package/websql/lib/constants.d.ts +5 -5
  202. package/websql/lib/dual-component-ctrl.d.ts +24 -24
  203. package/websql/lib/firedev-models.d.ts +12 -12
  204. package/websql/lib/helpers-array-obj.d.ts +14 -14
  205. package/websql/lib/helpers-browser.d.ts +10 -10
  206. package/websql/lib/helpers-environment.d.ts +4 -4
  207. package/websql/lib/helpers-numbers.d.ts +2 -2
  208. package/websql/lib/helpers-strings-regexes.d.ts +27 -27
  209. package/websql/lib/helpers-strings.d.ts +49 -49
  210. package/websql/lib/helpers.d.ts +31 -31
  211. package/websql/lib/index.d.ts +11 -11
  212. package/websql/lib/long-press.directive.d.ts +24 -24
  213. package/websql/lib/project.d.ts +94 -94
  214. package/websql/lib/resize-service.d.ts +8 -8
  215. package/websql/tnp-helpers.d.ts +4 -4
@@ -1,8 +1,8 @@
1
- export class HelpersNumber {
2
- constructor() {
3
- this.randomInteger = (max, min) => Math.round(Math.random() * (max - min)) + min;
4
- }
5
- }
6
- ;
7
- ({}); // @--end-of-file-for-module=tnp-helpers lib/helpers-numbers.ts
1
+ export class HelpersNumber {
2
+ constructor() {
3
+ this.randomInteger = (max, min) => Math.round(Math.random() * (max - min)) + min;
4
+ }
5
+ }
6
+ ;
7
+ ({}); // @--end-of-file-for-module=tnp-helpers lib/helpers-numbers.ts
8
8
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVscGVycy1udW1iZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vdG1wLWxpYnMtZm9yLWJ1bmRsZS90bnAtaGVscGVycy9wcm9qZWN0cy90bnAtaGVscGVycy9zcmMvbGliL2hlbHBlcnMtbnVtYmVycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLE9BQU8sYUFBYTtJQUExQjtRQUNFLGtCQUFhLEdBQUcsQ0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsR0FBRyxDQUFDLEdBQUcsR0FBRyxHQUFHLENBQUMsQ0FBQyxHQUFHLEdBQUcsQ0FBQztJQUc5RSxDQUFDO0NBQUE7QUFFQSxDQUFDO0FBQUEsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLCtEQUErRCIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjbGFzcyBIZWxwZXJzTnVtYmVyIHtcbiAgcmFuZG9tSW50ZWdlciA9IChtYXgsIG1pbikgPT4gTWF0aC5yb3VuZChNYXRoLnJhbmRvbSgpICogKG1heCAtIG1pbikpICsgbWluO1xuXG5cbn1cblxuIDsoe30pOyAvLyBALS1lbmQtb2YtZmlsZS1mb3ItbW9kdWxlPXRucC1oZWxwZXJzIGxpYi9oZWxwZXJzLW51bWJlcnMudHMiXX0=
@@ -1,51 +1,51 @@
1
- import { _ } from 'tnp-core/browser';
2
- export class HelpersStringsRegexes {
3
- escapeStringForRegEx(s) {
4
- return s.replace(/[-\/\\^$*+?.()|[\]{}]/g, '\\$&');
5
- }
6
- matchExactOnce(s, regex) {
7
- if (!_.isString(s) || !_.isRegExp(regex)) {
8
- return void 0;
9
- }
10
- const result = s.match(regex);
11
- if (_.isNil(result)) {
12
- return void 0;
13
- }
14
- return result.length >= 1 ? _.first(result) : void 0;
15
- }
16
- get regex() {
17
- return {
18
- /**
19
- * mathes
20
- * xxx.xxx.xxx.xxx
21
- * xxx.xxx.xxx.xxx:port
22
- * http://xxx.xxx.xxx.xxx:port
23
- * http://xxx.xxx.xxx.xxx
24
- * https://xxx.xxx.xxx.xxx:port
25
- * https://xxx.xxx.xxx.xxx *
26
- */
27
- get forStringWithIpHost() {
28
- const regex = /(http(s)?\:\/\/)?(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)(\:[0-9]+)?/;
29
- return regex;
30
- },
31
- /**
32
- * mathes
33
- * http://domain.com:port
34
- * http://domain.com
35
- * http://domain:port
36
- * http://domain
37
- * https://domain.com:port
38
- * https://domain.com
39
- * https://domain:port
40
- * https://domain
41
- */
42
- get forStringWithDomainHost() {
43
- const regex = /(((http(s)?\:\/\/)?[a-zA-Z0-9][a-zA-Z0-9-]{1,61}[a-zA-Z0-9](?:\.[a-zA-Z]{2,})+(\:[0-9]+)?)|((http(s)?\:\/\/)[a-zA-Z0-9-]{1,61}))/;
44
- return regex;
45
- }
46
- };
47
- }
48
- }
49
- ;
50
- ({}); // @--end-of-file-for-module=tnp-helpers lib/helpers-strings-regexes.ts
1
+ import { _ } from 'tnp-core/browser';
2
+ export class HelpersStringsRegexes {
3
+ escapeStringForRegEx(s) {
4
+ return s.replace(/[-\/\\^$*+?.()|[\]{}]/g, '\\$&');
5
+ }
6
+ matchExactOnce(s, regex) {
7
+ if (!_.isString(s) || !_.isRegExp(regex)) {
8
+ return void 0;
9
+ }
10
+ const result = s.match(regex);
11
+ if (_.isNil(result)) {
12
+ return void 0;
13
+ }
14
+ return result.length >= 1 ? _.first(result) : void 0;
15
+ }
16
+ get regex() {
17
+ return {
18
+ /**
19
+ * mathes
20
+ * xxx.xxx.xxx.xxx
21
+ * xxx.xxx.xxx.xxx:port
22
+ * http://xxx.xxx.xxx.xxx:port
23
+ * http://xxx.xxx.xxx.xxx
24
+ * https://xxx.xxx.xxx.xxx:port
25
+ * https://xxx.xxx.xxx.xxx *
26
+ */
27
+ get forStringWithIpHost() {
28
+ const regex = /(http(s)?\:\/\/)?(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)(\:[0-9]+)?/;
29
+ return regex;
30
+ },
31
+ /**
32
+ * mathes
33
+ * http://domain.com:port
34
+ * http://domain.com
35
+ * http://domain:port
36
+ * http://domain
37
+ * https://domain.com:port
38
+ * https://domain.com
39
+ * https://domain:port
40
+ * https://domain
41
+ */
42
+ get forStringWithDomainHost() {
43
+ const regex = /(((http(s)?\:\/\/)?[a-zA-Z0-9][a-zA-Z0-9-]{1,61}[a-zA-Z0-9](?:\.[a-zA-Z]{2,})+(\:[0-9]+)?)|((http(s)?\:\/\/)[a-zA-Z0-9-]{1,61}))/;
44
+ return regex;
45
+ }
46
+ };
47
+ }
48
+ }
49
+ ;
50
+ ({}); // @--end-of-file-for-module=tnp-helpers lib/helpers-strings-regexes.ts
51
51
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVscGVycy1zdHJpbmdzLXJlZ2V4ZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi90bXAtbGlicy1mb3ItYnVuZGxlL3RucC1oZWxwZXJzL3Byb2plY3RzL3RucC1oZWxwZXJzL3NyYy9saWIvaGVscGVycy1zdHJpbmdzLXJlZ2V4ZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLENBQUMsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ3JDLE1BQU0sT0FBTyxxQkFBcUI7SUFJaEMsb0JBQW9CLENBQUMsQ0FBUztRQUM1QixPQUFPLENBQUMsQ0FBQyxPQUFPLENBQUMsd0JBQXdCLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDckQsQ0FBQztJQUVELGNBQWMsQ0FBQyxDQUFTLEVBQUUsS0FBYTtRQUNyQyxJQUFJLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDeEMsT0FBTyxLQUFLLENBQUMsQ0FBQztTQUNmO1FBQ0QsTUFBTSxNQUFNLEdBQUcsQ0FBQyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUM5QixJQUFJLENBQUMsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLEVBQUU7WUFDbkIsT0FBTyxLQUFLLENBQUMsQ0FBQztTQUNmO1FBQ0QsT0FBTyxNQUFNLENBQUMsTUFBTSxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDdkQsQ0FBQztJQUVELElBQUksS0FBSztRQUNQLE9BQU87WUFDTDs7Ozs7Ozs7YUFRQztZQUNELElBQUksbUJBQW1CO2dCQUNyQixNQUFNLEtBQUssR0FBRyw0TEFBNEwsQ0FBQztnQkFDM00sT0FBTyxLQUFLLENBQUM7WUFDZixDQUFDO1lBQ0Q7Ozs7Ozs7Ozs7WUFVQTtZQUNBLElBQUksdUJBQXVCO2dCQUN6QixNQUFNLEtBQUssR0FBRyxrSUFBa0ksQ0FBQztnQkFDakosT0FBTyxLQUFLLENBQUM7WUFDZixDQUFDO1NBQ0YsQ0FBQTtJQUNILENBQUM7Q0FDRjtBQUVBLENBQUM7QUFBQSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsdUVBQXVFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgXyB9IGZyb20gJ3RucC1jb3JlL2Jyb3dzZXInO1xuZXhwb3J0IGNsYXNzIEhlbHBlcnNTdHJpbmdzUmVnZXhlcyB7XG5cblxuXG4gIGVzY2FwZVN0cmluZ0ZvclJlZ0V4KHM6IHN0cmluZykge1xuICAgIHJldHVybiBzLnJlcGxhY2UoL1stXFwvXFxcXF4kKis/LigpfFtcXF17fV0vZywgJ1xcXFwkJicpO1xuICB9XG5cbiAgbWF0Y2hFeGFjdE9uY2Uoczogc3RyaW5nLCByZWdleDogUmVnRXhwKTogc3RyaW5nIHtcbiAgICBpZiAoIV8uaXNTdHJpbmcocykgfHwgIV8uaXNSZWdFeHAocmVnZXgpKSB7XG4gICAgICByZXR1cm4gdm9pZCAwO1xuICAgIH1cbiAgICBjb25zdCByZXN1bHQgPSBzLm1hdGNoKHJlZ2V4KTtcbiAgICBpZiAoXy5pc05pbChyZXN1bHQpKSB7XG4gICAgICByZXR1cm4gdm9pZCAwO1xuICAgIH1cbiAgICByZXR1cm4gcmVzdWx0Lmxlbmd0aCA+PSAxID8gXy5maXJzdChyZXN1bHQpIDogdm9pZCAwO1xuICB9XG5cbiAgZ2V0IHJlZ2V4KCkge1xuICAgIHJldHVybiB7XG4gICAgICAvKipcbiAgICAgKiBtYXRoZXNcbiAgICAgKiB4eHgueHh4Lnh4eC54eHhcbiAgICAgKiB4eHgueHh4Lnh4eC54eHg6cG9ydFxuICAgICAqIGh0dHA6Ly94eHgueHh4Lnh4eC54eHg6cG9ydFxuICAgICAqIGh0dHA6Ly94eHgueHh4Lnh4eC54eHhcbiAgICAgKiBodHRwczovL3h4eC54eHgueHh4Lnh4eDpwb3J0XG4gICAgICogaHR0cHM6Ly94eHgueHh4Lnh4eC54eHggICAqXG4gICAgICovXG4gICAgICBnZXQgZm9yU3RyaW5nV2l0aElwSG9zdCgpIHtcbiAgICAgICAgY29uc3QgcmVnZXggPSAvKGh0dHAocyk/XFw6XFwvXFwvKT8oMjVbMC01XXwyWzAtNF1bMC05XXxbMDFdP1swLTldWzAtOV0/KVxcLigyNVswLTVdfDJbMC00XVswLTldfFswMV0/WzAtOV1bMC05XT8pXFwuKDI1WzAtNV18MlswLTRdWzAtOV18WzAxXT9bMC05XVswLTldPylcXC4oMjVbMC01XXwyWzAtNF1bMC05XXxbMDFdP1swLTldWzAtOV0/KShcXDpbMC05XSspPy87XG4gICAgICAgIHJldHVybiByZWdleDtcbiAgICAgIH0sXG4gICAgICAvKipcbiAgICAqIG1hdGhlc1xuICAgICogaHR0cDovL2RvbWFpbi5jb206cG9ydFxuICAgICogaHR0cDovL2RvbWFpbi5jb21cbiAgICAqIGh0dHA6Ly9kb21haW46cG9ydFxuICAgICogaHR0cDovL2RvbWFpblxuICAgICogaHR0cHM6Ly9kb21haW4uY29tOnBvcnRcbiAgICAqIGh0dHBzOi8vZG9tYWluLmNvbVxuICAgICogaHR0cHM6Ly9kb21haW46cG9ydFxuICAgICogaHR0cHM6Ly9kb21haW5cbiAgICAqL1xuICAgICAgZ2V0IGZvclN0cmluZ1dpdGhEb21haW5Ib3N0KCkge1xuICAgICAgICBjb25zdCByZWdleCA9IC8oKChodHRwKHMpP1xcOlxcL1xcLyk/W2EtekEtWjAtOV1bYS16QS1aMC05LV17MSw2MX1bYS16QS1aMC05XSg/OlxcLlthLXpBLVpdezIsfSkrKFxcOlswLTldKyk/KXwoKGh0dHAocyk/XFw6XFwvXFwvKVthLXpBLVowLTktXXsxLDYxfSkpLztcbiAgICAgICAgcmV0dXJuIHJlZ2V4O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4gOyh7fSk7IC8vIEAtLWVuZC1vZi1maWxlLWZvci1tb2R1bGU9dG5wLWhlbHBlcnMgbGliL2hlbHBlcnMtc3RyaW5ncy1yZWdleGVzLnRzIl19