tnp-helpers 13.1.17 → 13.1.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 (217) 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 +9 -8
  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 +8 -8
  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 +1677 -1676
  25. package/browser/fesm2015/tnp-helpers.mjs.map +1 -0
  26. package/browser/fesm2020/tnp-helpers.mjs +1667 -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 +6 -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 +9 -8
  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 +8 -8
  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 +1677 -1676
  69. package/client/fesm2015/tnp-helpers.mjs.map +1 -0
  70. package/client/fesm2020/tnp-helpers.mjs +1667 -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 +6 -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 +7 -6
  105. package/lib/constants.js +1 -0
  106. package/lib/constants.js.map +1 -0
  107. package/lib/dual-component-ctrl.d.ts +24 -24
  108. package/lib/dual-component-ctrl.js +3 -3
  109. package/lib/dual-component-ctrl.js.map +1 -0
  110. package/lib/firedev-models.d.ts +13 -13
  111. package/lib/firedev-models.js.map +1 -0
  112. package/lib/git-project.d.ts +45 -45
  113. package/lib/git-project.js.map +1 -0
  114. package/lib/helpers-array-obj.d.ts +15 -15
  115. package/lib/helpers-array-obj.js.map +1 -0
  116. package/lib/helpers-browser.d.ts +11 -11
  117. package/lib/helpers-browser.js.map +1 -0
  118. package/lib/helpers-cli-tool.backend.d.ts +55 -55
  119. package/lib/helpers-cli-tool.backend.js.map +1 -0
  120. package/lib/helpers-dependencies.backend.d.ts +11 -11
  121. package/lib/helpers-dependencies.backend.js.map +1 -0
  122. package/lib/helpers-environment.d.ts +5 -5
  123. package/lib/helpers-environment.js.map +1 -0
  124. package/lib/helpers-file-folders.backend.d.ts +84 -83
  125. package/lib/helpers-file-folders.backend.js +10 -1
  126. package/lib/helpers-file-folders.backend.js.map +1 -0
  127. package/lib/helpers-git.backend.d.ts +43 -43
  128. package/lib/helpers-git.backend.js.map +1 -0
  129. package/lib/helpers-json5.backend.d.ts +16 -16
  130. package/lib/helpers-json5.backend.js.map +1 -0
  131. package/lib/helpers-morphi-framework.backend.d.ts +4 -4
  132. package/lib/helpers-morphi-framework.backend.js.map +1 -0
  133. package/lib/helpers-network.backend.d.ts +8 -8
  134. package/lib/helpers-network.backend.js.map +1 -0
  135. package/lib/helpers-npm.backend.d.ts +3 -3
  136. package/lib/helpers-npm.backend.js.map +1 -0
  137. package/lib/helpers-numbers.d.ts +3 -3
  138. package/lib/helpers-numbers.js.map +1 -0
  139. package/lib/helpers-path.backend.d.ts +7 -7
  140. package/lib/helpers-path.backend.js.map +1 -0
  141. package/lib/helpers-process.backend.d.ts +58 -54
  142. package/lib/helpers-process.backend.js +20 -0
  143. package/lib/helpers-process.backend.js.map +1 -0
  144. package/lib/helpers-strings-regexes.d.ts +28 -28
  145. package/lib/helpers-strings-regexes.js.map +1 -0
  146. package/lib/helpers-strings.d.ts +50 -50
  147. package/lib/helpers-strings.js.map +1 -0
  148. package/lib/helpers-system-terminal.backend.d.ts +5 -5
  149. package/lib/helpers-system-terminal.backend.js.map +1 -0
  150. package/lib/helpers-vscode.backend.d.ts +5 -5
  151. package/lib/helpers-vscode.backend.js.map +1 -0
  152. package/lib/helpers.d.ts +72 -72
  153. package/lib/helpers.js.map +1 -0
  154. package/lib/index.d.ts +12 -12
  155. package/lib/index.js.map +1 -0
  156. package/lib/long-press.directive.d.ts +22 -22
  157. package/lib/long-press.directive.js.map +1 -0
  158. package/lib/merge-helpers.backend.d.ts +23 -23
  159. package/lib/merge-helpers.backend.js.map +1 -0
  160. package/lib/project.d.ts +97 -97
  161. package/lib/project.js.map +1 -0
  162. package/lib/resize-service.d.ts +6 -6
  163. package/lib/resize-service.js.map +1 -0
  164. package/lib/ts-code/index.d.ts +1 -1
  165. package/lib/ts-code/index.js.map +1 -0
  166. package/lib/ts-code/ts-code-extractor.d.ts +14 -14
  167. package/lib/ts-code/ts-code-extractor.js.map +1 -0
  168. package/lib/ts-code/ts-code-modifier.backend.d.ts +12 -12
  169. package/lib/ts-code/ts-code-modifier.backend.js.map +1 -0
  170. package/package.json +5 -5
  171. package/package.json_devDependencies.json +222 -222
  172. package/package.json_tnp.json5 +44 -44
  173. package/tmp-environment.json +30 -29
  174. package/websql/README.md +24 -24
  175. package/websql/esm2020/lib/angular.helper.mjs +87 -87
  176. package/websql/esm2020/lib/base-component.mjs +49 -49
  177. package/websql/esm2020/lib/base-formly-component.mjs +112 -112
  178. package/websql/esm2020/lib/condition-wait.mjs +45 -45
  179. package/websql/esm2020/lib/constants.mjs +9 -8
  180. package/websql/esm2020/lib/dual-component-ctrl.mjs +118 -118
  181. package/websql/esm2020/lib/firedev-models.mjs +3 -3
  182. package/websql/esm2020/lib/helpers-array-obj.mjs +82 -82
  183. package/websql/esm2020/lib/helpers-browser.mjs +46 -46
  184. package/websql/esm2020/lib/helpers-environment.mjs +32 -32
  185. package/websql/esm2020/lib/helpers-numbers.mjs +8 -8
  186. package/websql/esm2020/lib/helpers-strings-regexes.mjs +50 -50
  187. package/websql/esm2020/lib/helpers-strings.mjs +252 -252
  188. package/websql/esm2020/lib/helpers.mjs +283 -283
  189. package/websql/esm2020/lib/index.mjs +15 -15
  190. package/websql/esm2020/lib/long-press.directive.mjs +112 -112
  191. package/websql/esm2020/lib/project.mjs +429 -429
  192. package/websql/esm2020/lib/resize-service.mjs +21 -21
  193. package/websql/esm2020/public-api.mjs +1 -1
  194. package/websql/esm2020/tnp-helpers.mjs +4 -4
  195. package/websql/fesm2015/tnp-helpers.mjs +1677 -1676
  196. package/websql/fesm2015/tnp-helpers.mjs.map +1 -0
  197. package/websql/fesm2020/tnp-helpers.mjs +1667 -1666
  198. package/websql/fesm2020/tnp-helpers.mjs.map +1 -0
  199. package/websql/lib/angular.helper.d.ts +35 -35
  200. package/websql/lib/base-component.d.ts +16 -16
  201. package/websql/lib/base-formly-component.d.ts +30 -30
  202. package/websql/lib/condition-wait.d.ts +7 -7
  203. package/websql/lib/constants.d.ts +6 -5
  204. package/websql/lib/dual-component-ctrl.d.ts +24 -24
  205. package/websql/lib/firedev-models.d.ts +12 -12
  206. package/websql/lib/helpers-array-obj.d.ts +14 -14
  207. package/websql/lib/helpers-browser.d.ts +10 -10
  208. package/websql/lib/helpers-environment.d.ts +4 -4
  209. package/websql/lib/helpers-numbers.d.ts +2 -2
  210. package/websql/lib/helpers-strings-regexes.d.ts +27 -27
  211. package/websql/lib/helpers-strings.d.ts +49 -49
  212. package/websql/lib/helpers.d.ts +31 -31
  213. package/websql/lib/index.d.ts +11 -11
  214. package/websql/lib/long-press.directive.d.ts +24 -24
  215. package/websql/lib/project.d.ts +94 -94
  216. package/websql/lib/resize-service.d.ts +8 -8
  217. package/websql/tnp-helpers.d.ts +4 -4
@@ -1,8 +1,9 @@
1
- export const BaselineSiteJoinprefix = '__';
2
- export const PREFIXES = {
3
- BASELINE: BaselineSiteJoinprefix,
4
- DELETED: '____DELETED____',
5
- ORIGINAL: '____ORIGINAL____',
6
- };
7
- ({}); // @--end-of-file-for-module=tnp-helpers lib/constants.ts
8
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vdG1wLWxpYnMtZm9yLWJ1bmRsZS90bnAtaGVscGVycy9wcm9qZWN0cy90bnAtaGVscGVycy9zcmMvbGliL2NvbnN0YW50cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQUMsTUFBTSxzQkFBc0IsR0FBRyxJQUFJLENBQUM7QUFFM0MsTUFBTSxDQUFDLE1BQU0sUUFBUSxHQUFHO0lBQ3RCLFFBQVEsRUFBRSxzQkFBc0I7SUFDaEMsT0FBTyxFQUFFLGlCQUFpQjtJQUMxQixRQUFRLEVBQUUsa0JBQWtCO0NBQzdCLENBRUM7QUFBQSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMseURBQXlEIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IEJhc2VsaW5lU2l0ZUpvaW5wcmVmaXggPSAnX18nO1xuXG5leHBvcnQgY29uc3QgUFJFRklYRVMgPSB7XG4gIEJBU0VMSU5FOiBCYXNlbGluZVNpdGVKb2lucHJlZml4LFxuICBERUxFVEVEOiAnX19fX0RFTEVURURfX19fJyxcbiAgT1JJR0lOQUw6ICdfX19fT1JJR0lOQUxfX19fJyxcbn1cblxuIDsoe30pOyAvLyBALS1lbmQtb2YtZmlsZS1mb3ItbW9kdWxlPXRucC1oZWxwZXJzIGxpYi9jb25zdGFudHMudHMiXX0=
1
+ export const BaselineSiteJoinprefix = '__';
2
+ export const PREFIXES = {
3
+ BASELINE: BaselineSiteJoinprefix,
4
+ DELETED: '____DELETED____',
5
+ ORIGINAL: '____ORIGINAL____',
6
+ RESTORE_NPM: '____',
7
+ };
8
+ ({}); // @--end-of-file-for-module=tnp-helpers lib/constants.ts
9
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vdG1wLWxpYnMtZm9yLWJ1bmRsZS90bnAtaGVscGVycy9wcm9qZWN0cy90bnAtaGVscGVycy9zcmMvbGliL2NvbnN0YW50cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQUMsTUFBTSxzQkFBc0IsR0FBRyxJQUFJLENBQUM7QUFFM0MsTUFBTSxDQUFDLE1BQU0sUUFBUSxHQUFHO0lBQ3RCLFFBQVEsRUFBRSxzQkFBc0I7SUFDaEMsT0FBTyxFQUFFLGlCQUFpQjtJQUMxQixRQUFRLEVBQUUsa0JBQWtCO0lBQzVCLFdBQVcsRUFBRSxNQUFNO0NBQ3BCLENBRUM7QUFBQSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMseURBQXlEIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IEJhc2VsaW5lU2l0ZUpvaW5wcmVmaXggPSAnX18nO1xuXG5leHBvcnQgY29uc3QgUFJFRklYRVMgPSB7XG4gIEJBU0VMSU5FOiBCYXNlbGluZVNpdGVKb2lucHJlZml4LFxuICBERUxFVEVEOiAnX19fX0RFTEVURURfX19fJyxcbiAgT1JJR0lOQUw6ICdfX19fT1JJR0lOQUxfX19fJyxcbiAgUkVTVE9SRV9OUE06ICdfX19fJyxcbn1cblxuIDsoe30pOyAvLyBALS1lbmQtb2YtZmlsZS1mb3ItbW9kdWxlPXRucC1oZWxwZXJzIGxpYi9jb25zdGFudHMudHMiXX0=
@@ -1,119 +1,119 @@
1
- import { _ } from 'tnp-core/browser';
2
- import { CLASS } from 'typescript-class-helpers/browser';
3
- /* */
4
- /* */
5
- import { Log } from 'ng2-logger/browser';
6
- const log = Log.create(`DualComponentController`);
7
- export class DualComponentController {
8
- constructor(cmp, isFormlyMode = false) {
9
- this.cmp = cmp;
10
- this.isFormlyMode = isFormlyMode;
11
- }
12
- getValTemplateOptions(propertyName) {
13
- if (this.isFormlyMode) {
14
- const res = this.cmp.field?.templateOptions[propertyName];
15
- if (res === void 0 && this.cmp[propertyName]) {
16
- return this.cmp[propertyName];
17
- }
18
- return res;
19
- }
20
- return this.cmp[propertyName];
21
- }
22
- getValContext(propertyName) {
23
- if (this.isFormlyMode) {
24
- const res = this.cmp?.field[propertyName];
25
- if (res === void 0 && this.cmp[propertyName]) {
26
- return this.cmp[propertyName];
27
- }
28
- return res;
29
- }
30
- return this.cmp[propertyName];
31
- }
32
- get disabled() {
33
- return this.getValTemplateOptions('disabled');
34
- }
35
- get required() {
36
- return this.getValTemplateOptions('required');
37
- }
38
- get type() {
39
- if (!this.isFormlyMode) {
40
- return CLASS.getNameFromObject(this.cmp);
41
- }
42
- return this.getValContext('type');
43
- }
44
- get label() {
45
- return this.getValTemplateOptions('label');
46
- }
47
- get placeholder() {
48
- return this.getValTemplateOptions('placeholder');
49
- }
50
- get defaultValue() {
51
- return this.getValContext('defaultValue');
52
- }
53
- get formControl() {
54
- return this.getValContext('formControl');
55
- }
56
- get key() {
57
- return this.getValContext('key');
58
- }
59
- get path() {
60
- return this.getValContext('path');
61
- }
62
- get model() {
63
- if (this.isFormlyMode) {
64
- return this.getValContext('model');
65
- }
66
- else {
67
- return this.__model;
68
- }
69
- }
70
- set model(v) {
71
- if (this.isFormlyMode) {
72
- log.w(`[DualComponentController] You can't set model in formly component mode`);
73
- }
74
- else {
75
- this.__model = v;
76
- }
77
- }
78
- get mode() {
79
- if (this.isFormlyMode) {
80
- return this.getValContext('mode');
81
- }
82
- else {
83
- return this.__mode;
84
- }
85
- }
86
- set mode(v) {
87
- if (this.isFormlyMode) {
88
- }
89
- else {
90
- this.__mode = v;
91
- }
92
- }
93
- get value() {
94
- if (this.isFormlyMode) {
95
- return this.cmp.field.formControl.value;
96
- }
97
- if (_.isString(this.path)) {
98
- return _.get(this.cmp.model, this.path);
99
- }
100
- return this.cmp.model;
101
- }
102
- set value(v) {
103
- if (this.isFormlyMode) {
104
- this.cmp.field.formControl.setValue(v);
105
- // @ts-ignore
106
- this.cmp.change.next(v);
107
- return;
108
- }
109
- if (_.isString(this.path)) {
110
- _.set(this.cmp.model, this.path, v);
111
- }
112
- else {
113
- this.cmp.model = v;
114
- }
115
- }
116
- }
117
- ;
118
- ({}); // @--end-of-file-for-module=tnp-helpers lib/dual-component-ctrl.ts
1
+ import { _ } from 'tnp-core/browser';
2
+ import { CLASS } from 'typescript-class-helpers/browser';
3
+ /* */
4
+ /* */
5
+ import { Log } from 'ng2-logger/browser';
6
+ const log = Log.create(`DualComponentController`);
7
+ export class DualComponentController {
8
+ constructor(cmp, isFormlyMode = false) {
9
+ this.cmp = cmp;
10
+ this.isFormlyMode = isFormlyMode;
11
+ }
12
+ getValTemplateOptions(propertyName) {
13
+ if (this.isFormlyMode) {
14
+ const res = this.cmp.field?.templateOptions[propertyName];
15
+ if (res === void 0 && this.cmp[propertyName]) {
16
+ return this.cmp[propertyName];
17
+ }
18
+ return res;
19
+ }
20
+ return this.cmp[propertyName];
21
+ }
22
+ getValContext(propertyName) {
23
+ if (this.isFormlyMode) {
24
+ const res = this.cmp?.field[propertyName];
25
+ if (res === void 0 && this.cmp[propertyName]) {
26
+ return this.cmp[propertyName];
27
+ }
28
+ return res;
29
+ }
30
+ return this.cmp[propertyName];
31
+ }
32
+ get disabled() {
33
+ return this.getValTemplateOptions('disabled');
34
+ }
35
+ get required() {
36
+ return this.getValTemplateOptions('required');
37
+ }
38
+ get type() {
39
+ if (!this.isFormlyMode) {
40
+ return CLASS.getNameFromObject(this.cmp);
41
+ }
42
+ return this.getValContext('type');
43
+ }
44
+ get label() {
45
+ return this.getValTemplateOptions('label');
46
+ }
47
+ get placeholder() {
48
+ return this.getValTemplateOptions('placeholder');
49
+ }
50
+ get defaultValue() {
51
+ return this.getValContext('defaultValue');
52
+ }
53
+ get formControl() {
54
+ return this.getValContext('formControl');
55
+ }
56
+ get key() {
57
+ return this.getValContext('key');
58
+ }
59
+ get path() {
60
+ return this.getValContext('path');
61
+ }
62
+ get model() {
63
+ if (this.isFormlyMode) {
64
+ return this.getValContext('model');
65
+ }
66
+ else {
67
+ return this.__model;
68
+ }
69
+ }
70
+ set model(v) {
71
+ if (this.isFormlyMode) {
72
+ log.w(`[DualComponentController] You can't set model in formly component mode`);
73
+ }
74
+ else {
75
+ this.__model = v;
76
+ }
77
+ }
78
+ get mode() {
79
+ if (this.isFormlyMode) {
80
+ return this.getValContext('mode');
81
+ }
82
+ else {
83
+ return this.__mode;
84
+ }
85
+ }
86
+ set mode(v) {
87
+ if (this.isFormlyMode) {
88
+ }
89
+ else {
90
+ this.__mode = v;
91
+ }
92
+ }
93
+ get value() {
94
+ if (this.isFormlyMode) {
95
+ return this.cmp.field.formControl.value;
96
+ }
97
+ if (_.isString(this.path)) {
98
+ return _.get(this.cmp.model, this.path);
99
+ }
100
+ return this.cmp.model;
101
+ }
102
+ set value(v) {
103
+ if (this.isFormlyMode) {
104
+ this.cmp.field.formControl.setValue(v);
105
+ // @ts-ignore
106
+ this.cmp.change.next(v);
107
+ return;
108
+ }
109
+ if (_.isString(this.path)) {
110
+ _.set(this.cmp.model, this.path, v);
111
+ }
112
+ else {
113
+ this.cmp.model = v;
114
+ }
115
+ }
116
+ }
117
+ ;
118
+ ({}); // @--end-of-file-for-module=tnp-helpers lib/dual-component-ctrl.ts
119
119
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHVhbC1jb21wb25lbnQtY3RybC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3RtcC1saWJzLWZvci1idW5kbGUvdG5wLWhlbHBlcnMvcHJvamVjdHMvdG5wLWhlbHBlcnMvc3JjL2xpYi9kdWFsLWNvbXBvbmVudC1jdHJsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxDQUFDLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUVyQyxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFLekQsS0FBSztBQUNMLEtBQUs7QUFFTCxPQUFPLEVBQUUsR0FBRyxFQUFTLE1BQU0sb0JBQW9CLENBQUM7QUFDaEQsTUFBTSxHQUFHLEdBQUcsR0FBRyxDQUFDLE1BQU0sQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO0FBRWxELE1BQU0sT0FBZ0IsdUJBQXVCO0lBRTNDLFlBQXNCLEdBQXdCLEVBQVMsZUFBZSxLQUFLO1FBQXJELFFBQUcsR0FBSCxHQUFHLENBQXFCO1FBQVMsaUJBQVksR0FBWixZQUFZLENBQVE7SUFFM0UsQ0FBQztJQUVTLHFCQUFxQixDQUFDLFlBQW9CO1FBQ2xELElBQUksSUFBSSxDQUFDLFlBQVksRUFBRTtZQUNyQixNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssRUFBRSxlQUFlLENBQUMsWUFBWSxDQUFDLENBQUE7WUFDekQsSUFBSSxHQUFHLEtBQUssS0FBSyxDQUFDLElBQUksSUFBSSxDQUFDLEdBQUcsQ0FBQyxZQUFZLENBQUMsRUFBRTtnQkFDNUMsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLFlBQVksQ0FBQyxDQUFDO2FBQy9CO1lBQ0QsT0FBTyxHQUFHLENBQUM7U0FDWjtRQUNELE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxZQUFZLENBQUMsQ0FBQTtJQUMvQixDQUFDO0lBRVMsYUFBYSxDQUFDLFlBQW9CO1FBQzFDLElBQUksSUFBSSxDQUFDLFlB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LENBQUMsR0FBRyxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDekM7UUFDRCxPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDO0lBQ3hCLENBQUM7SUFFRCxJQUFJLEtBQUssQ0FBQyxDQUFDO1FBQ1QsSUFBSSxJQUFJLENBQUMsWUFBWSxFQUFFO1lBQ3JCLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDdkMsYUFBYTtZQUNiLElBQUksQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUN4QixPQUFPO1NBQ1I7UUFDRCxJQUFJLENBQUMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ3pCLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQztTQUNyQzthQUFNO1lBQ0wsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFDO1NBQ3BCO0lBQ0gsQ0FBQztDQUdGO0FBR0EsQ0FBQztBQUFBLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxtRUFBbUUiLCJzb3VyY2VzQ29udGVudCI6WyJcbmltcG9ydCB7IF8gfSBmcm9tICd0bnAtY29yZS9icm93c2VyJztcbmltcG9ydCB7IEJhc2VGb3JtbHlDb21wb25lbnQgfSBmcm9tICcuL2Jhc2UtZm9ybWx5LWNvbXBvbmVudCc7XG5pbXBvcnQgeyBDTEFTUyB9IGZyb20gJ3R5cGVzY3JpcHQtY2xhc3MtaGVscGVycy9icm93c2VyJztcbmltcG9ydCB7ICAgQ29tcG9uZW50LCBPbkluaXQsIElucHV0LCBPdXRwdXQsIEFmdGVyVmlld0luaXQsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7LyogKi9cbi8qICovXG5cbmltcG9ydCB7ICAgRm9ybUNvbnRyb2wsICAgRm9ybUdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnLyogKi9cbi8qICovXG4vKiAqL1xuXG5pbXBvcnQgeyBMb2csIExldmVsIH0gZnJvbSAnbmcyLWxvZ2dlci9icm93c2VyJztcbmNvbnN0IGxvZyA9IExvZy5jcmVhdGUoYER1YWxDb21wb25lbnRDb250cm9sbGVyYCk7XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBEdWFsQ29tcG9uZW50Q29udHJvbGxlcjxUID0gYW55PiB7XG5cbiAgY29uc3RydWN0b3IocHJvdGVjdGVkIGNtcDogQmFzZUZvcm1seUNvbXBvbmVudCwgcHVibGljIGlzRm9ybWx5TW9kZSA9IGZhbHNlKSB7XG5cbiAgfVxuXG4gIHByb3RlY3RlZCBnZXRWYWxUZW1wbGF0ZU9wdGlvbnMocHJvcGVydHlOYW1lOiBzdHJpbmcpIHtcbiAgICBpZiAodGhpcy5pc0Zvcm1seU1vZGUpIHtcbiAgICAgIGNvbnN0IHJlcyA9IHRoaXMuY21wLmZpZWxkPy50ZW1wbGF0ZU9wdGlvbnNbcHJvcGVydHlOYW1lXVxuICAgICAgaWYgKHJlcyA9PT0gdm9pZCAwICYmIHRoaXMuY21wW3Byb3BlcnR5TmFtZV0pIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY21wW3Byb3BlcnR5TmFtZV07XG4gICAgICB9XG4gICAgICByZXR1cm4gcmVzO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy5jbXBbcHJvcGVydHlOYW1lXVxuICB9XG5cbiAgcHJvdGVjdGVkIGdldFZhbENvbnRleHQocHJvcGVydHlOYW1lOiBzdHJpbmcpIHtcbiAgICBpZiAodGhpcy5pc0Zvcm1seU1vZGUpIHtcbiAgICAgIGNvbnN0IHJlcyA9IHRoaXMuY21wPy5maWVsZFtwcm9wZXJ0eU5hbWVdXG4gICAgICBpZiAocmVzID09PSB2b2lkIDAgJiYgdGhpcy5jbXBbcHJvcGVydHlOYW1lXSkge1xuICAgICAgICByZXR1cm4gdGhpcy5jbXBbcHJvcGVydHlOYW1lXTtcbiAgICAgIH1cbiAgICAgIHJldHVybiByZXM7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLmNtcFtwcm9wZXJ0eU5hbWVdXG4gIH1cblxuICBnZXQgZGlzYWJsZWQoKSB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0VmFsVGVtcGxhdGVPcHRpb25zKCdkaXNhYmxlZCcpIGFzIGJvb2xlYW47XG4gIH1cblxuICBnZXQgcmVxdWlyZWQoKSB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0VmFsVGVtcGxhdGVPcHRpb25zKCdyZXF1aXJlZCcpIGFzIGJvb2xlYW47XG4gIH1cblxuICBnZXQgdHlwZSgpIHtcbiAgICBpZiAoIXRoaXMuaXNGb3JtbHlNb2RlKSB7XG4gICAgICByZXR1cm4gQ0xBU1MuZ2V0TmFtZUZyb21PYmplY3QodGhpcy5jbXApXG4gICAgfVxuICAgIHJldHVybiB0aGlzLmdldFZhbENvbnRleHQoJ3R5cGUnKSBhcyBib29sZWFuO1xuICB9XG5cbiAgZ2V0IGxhYmVsKCkge1xuICAgIHJldHVybiB0aGlzLmdldFZhbFRlbXBsYXRlT3B0aW9ucygnbGFiZWwnKSBhcyBzdHJpbmc7XG4gIH1cblxuICBnZXQgcGxhY2Vob2xkZXIoKSB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0VmFsVGVtcGxhdGVPcHRpb25zKCdwbGFjZWhvbGRlcicpIGFzIHN0cmluZztcbiAgfVxuXG4gIGdldCBkZWZhdWx0VmFsdWUoKTogVCB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0VmFsQ29udGV4dCgnZGVmYXVsdFZhbHVlJykgYXMgYW55O1xuICB9XG5cbiAgZ2V0IGZvcm1Db250cm9sKCk6IGFueSB7Ly8gRm9ybUNvbnRyb2wgeyAvLyBUT0RPIFFVSUNLX0ZJWFxuICAgIHJldHVybiB0aGlzLmdldFZhbENvbnRleHQoJ2Zvcm1Db250cm9sJykgYXMgYW55O1xuICB9XG5cbiAgZ2V0IGtleSgpIHtcbiAgICByZXR1cm4gdGhpcy5nZXRWYWxDb250ZXh0KCdrZXknKSBhcyBzdHJpbmc7XG4gIH1cblxuICBnZXQgcGF0aCgpIHtcbiAgICByZXR1cm4gdGhpcy5nZXRWYWxDb250ZXh0KCdwYXRoJykgYXMgc3RyaW5nO1xuICB9XG5cbiAgX19tb2RlbDogYW55O1xuICBnZXQgbW9kZWwoKTogYW55IHtcbiAgICBpZiAodGhpcy5pc0Zvcm1seU1vZGUpIHtcbiAgICAgIHJldHVybiB0aGlzLmdldFZhbENvbnRleHQoJ21vZGVsJykgYXMgc3RyaW5nO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gdGhpcy5fX21vZGVsO1xuICAgIH1cbiAgfVxuXG4gIHNldCBtb2RlbCh2KSB7XG4gICAgaWYgKHRoaXMuaXNGb3JtbHlNb2RlKSB7XG4gICAgICBsb2cudyhgW0R1YWxDb21wb25lbnRDb250cm9sbGVyXSBZb3UgY2FuJ3Qgc2V0IG1vZGVsIGluIGZvcm1seSBjb21wb25lbnQgbW9kZWApO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLl9fbW9kZWwgPSB2O1xuICAgIH1cbiAgfVxuXG4gIF9fbW9kZTogYW55O1xuICBnZXQgbW9kZSgpOiBhbnkge1xuICAgIGlmICh0aGlzLmlzRm9ybWx5TW9kZSkge1xuICAgICAgcmV0dXJuIHRoaXMuZ2V0VmFsQ29udGV4dCgnbW9kZScpIGFzIHN0cmluZztcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIHRoaXMuX19tb2RlO1xuICAgIH1cbiAgfVxuXG4gIHNldCBtb2RlKHYpIHtcbiAgICBpZiAodGhpcy5pc0Zvcm1seU1vZGUpIHtcblxuXG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuX19tb2RlID0gdjtcbiAgICB9XG4gIH1cblxuXG4gIGdldCB2YWx1ZSgpOiBUIHtcbiAgICBpZiAodGhpcy5pc0Zvcm1seU1vZGUpIHtcbiAgICAgIHJldHVybiB0aGlzLmNtcC5maWVsZC5mb3JtQ29udHJvbC52YWx1ZTtcbiAgICB9XG4gICAgaWYgKF8uaXNTdHJpbmcodGhpcy5wYXRoKSkge1xuICAgICAgcmV0dXJuIF8uZ2V0KHRoaXMuY21wLm1vZGVsLCB0aGlzLnBhdGgpO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy5jbXAubW9kZWw7XG4gIH1cblxuICBzZXQgdmFsdWUodikge1xuICAgIGlmICh0aGlzLmlzRm9ybWx5TW9kZSkge1xuICAgICAgdGhpcy5jbXAuZmllbGQuZm9ybUNvbnRyb2wuc2V0VmFsdWUodik7XG4gICAgICAvLyBAdHMtaWdub3JlXG4gICAgICB0aGlzLmNtcC5jaGFuZ2UubmV4dCh2KTtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgaWYgKF8uaXNTdHJpbmcodGhpcy5wYXRoKSkge1xuICAgICAgXy5zZXQodGhpcy5jbXAubW9kZWwsIHRoaXMucGF0aCwgdik7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuY21wLm1vZGVsID0gdjtcbiAgICB9XG4gIH1cblxuXG59XG5cblxuIDsoe30pOyAvLyBALS1lbmQtb2YtZmlsZS1mb3ItbW9kdWxlPXRucC1oZWxwZXJzIGxpYi9kdWFsLWNvbXBvbmVudC1jdHJsLnRzIl19
@@ -1,4 +1,4 @@
1
- ;
2
- ({}); // @--end-of-file-for-module=tnp-helpers lib/firedev-models.ts
3
- export {};
1
+ ;
2
+ ({}); // @--end-of-file-for-module=tnp-helpers lib/firedev-models.ts
3
+ export {};
4
4
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlyZWRldi1tb2RlbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi90bXAtbGlicy1mb3ItYnVuZGxlL3RucC1oZWxwZXJzL3Byb2plY3RzL3RucC1oZWxwZXJzL3NyYy9saWIvZmlyZWRldi1tb2RlbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBZUMsQ0FBQztBQUFBLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyw4REFBOEQiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgbmFtZXNwYWNlIEZpcmVkZXZNb2RlbHMge1xuXG4gIGV4cG9ydCBpbnRlcmZhY2UgVlNDb2RlU2V0dGluZ3Mge1xuICAgICdmaWxlcy5leGNsdWRlJzogeyBbZmlsZXM6IHN0cmluZ106IGJvb2xlYW47IH07XG4gICAgJ3dvcmtiZW5jaC5jb2xvclRoZW1lJzogJ0RlZmF1bHQgTGlnaHQrJyB8ICdLaW1iaWUgRGFyaycsXG4gICAgJ3dvcmtiZW5jaC5jb2xvckN1c3RvbWl6YXRpb25zJzoge1xuICAgICAgJ2FjdGl2aXR5QmFyLmJhY2tncm91bmQnPzogc3RyaW5nO1xuICAgICAgJ2FjdGl2aXR5QmFyLmZvcmVncm91bmQnPzogc3RyaW5nO1xuICAgICAgJ3N0YXR1c0Jhci5iYWNrZ3JvdW5kJz86IHN0cmluZztcbiAgICB9XG4gIH1cblxuXG59XG5cbiA7KHt9KTsgLy8gQC0tZW5kLW9mLWZpbGUtZm9yLW1vZHVsZT10bnAtaGVscGVycyBsaWIvZmlyZWRldi1tb2RlbHMudHMiXX0=
@@ -1,83 +1,83 @@
1
- import { _ } from 'tnp-core/browser';
2
- import * as fuzzy from 'fuzzy';
3
- import { Helpers } from './index';
4
- export class HelpersArrayObj {
5
- from(s) {
6
- if (_.isArray(s)) {
7
- return s;
8
- }
9
- if (_.isString(s)) {
10
- return s.split(' ');
11
- }
12
- }
13
- second(arr) {
14
- if (!Array.isArray(arr) || arr.length < 2) {
15
- return void 0;
16
- }
17
- return arr[1];
18
- }
19
- arrayMoveElementBefore(arr, a, b, prop) {
20
- let indexA = prop ? arr.findIndex(elem => elem[prop] === a[prop]) : arr.indexOf(a);
21
- _.pullAt(arr, indexA);
22
- let indexB = prop ? arr.findIndex(elem => elem[prop] === b[prop]) : arr.indexOf(b);
23
- if (indexB === 0) {
24
- arr.unshift(a);
25
- }
26
- else {
27
- arr.splice(indexB - 1, 0, a);
28
- }
29
- return arr;
30
- }
31
- arrayMoveElementAfterB(arr, a, b, prop) {
32
- let indexA = prop ? arr.findIndex(elem => elem[prop] === a[prop]) : arr.indexOf(a);
33
- _.pullAt(arr, indexA);
34
- let indexB = prop ? arr.findIndex(elem => elem[prop] === b[prop]) : arr.indexOf(b);
35
- if (indexB === arr.length - 1) {
36
- arr.push(a);
37
- }
38
- else {
39
- arr.splice(indexB + 1, 0, a);
40
- }
41
- return arr;
42
- }
43
- uniqArray(array, uniqueProperty) {
44
- var seen = {};
45
- return array
46
- .filter(f => !!f)
47
- .filter(function (item) {
48
- return seen.hasOwnProperty(uniqueProperty ? item[uniqueProperty] : item) ? false
49
- : (seen[uniqueProperty ? item[uniqueProperty] : item] = true);
50
- });
51
- }
52
- sortKeys(obj) {
53
- if (_.isArray(obj)) {
54
- return obj.map(Helpers.arrays.sortKeys);
55
- }
56
- if (_.isObject(obj)) {
57
- return _.fromPairs(_.keys(obj).sort().map(key => [key, Helpers.arrays.sortKeys(obj[key])]));
58
- }
59
- return obj;
60
- }
61
- ;
62
- /**
63
- * Fuzzy search
64
- */
65
- fuzzy(query, list, valueFn) {
66
- const resultsFuzzy = fuzzy.filter(query, list.map(k => valueFn ? valueFn(k) : k));
67
- const resultsFuzzyKebab = fuzzy.filter(_.kebabCase(query), list.map(k => _.kebabCase((valueFn ? valueFn(k) : k))));
68
- const matches = resultsFuzzy.map((el) => el.string);
69
- const matchesKebab = resultsFuzzyKebab.map((el) => el.string);
70
- const results = (resultsFuzzy.length === 0) ? [] : list.filter(k => {
71
- return matches.includes((valueFn ? valueFn(k) : k));
72
- });
73
- if (matches.length === 0 && matchesKebab.length > 0) {
74
- const m = list.find(k => _.kebabCase((valueFn ? valueFn(k) : k)) === _.first(matchesKebab));
75
- results.push(m);
76
- matches.push((valueFn ? valueFn(m) : m));
77
- }
78
- return { matches, results };
79
- }
80
- }
81
- ;
82
- ({}); // @--end-of-file-for-module=tnp-helpers lib/helpers-array-obj.ts
1
+ import { _ } from 'tnp-core/browser';
2
+ import * as fuzzy from 'fuzzy';
3
+ import { Helpers } from './index';
4
+ export class HelpersArrayObj {
5
+ from(s) {
6
+ if (_.isArray(s)) {
7
+ return s;
8
+ }
9
+ if (_.isString(s)) {
10
+ return s.split(' ');
11
+ }
12
+ }
13
+ second(arr) {
14
+ if (!Array.isArray(arr) || arr.length < 2) {
15
+ return void 0;
16
+ }
17
+ return arr[1];
18
+ }
19
+ arrayMoveElementBefore(arr, a, b, prop) {
20
+ let indexA = prop ? arr.findIndex(elem => elem[prop] === a[prop]) : arr.indexOf(a);
21
+ _.pullAt(arr, indexA);
22
+ let indexB = prop ? arr.findIndex(elem => elem[prop] === b[prop]) : arr.indexOf(b);
23
+ if (indexB === 0) {
24
+ arr.unshift(a);
25
+ }
26
+ else {
27
+ arr.splice(indexB - 1, 0, a);
28
+ }
29
+ return arr;
30
+ }
31
+ arrayMoveElementAfterB(arr, a, b, prop) {
32
+ let indexA = prop ? arr.findIndex(elem => elem[prop] === a[prop]) : arr.indexOf(a);
33
+ _.pullAt(arr, indexA);
34
+ let indexB = prop ? arr.findIndex(elem => elem[prop] === b[prop]) : arr.indexOf(b);
35
+ if (indexB === arr.length - 1) {
36
+ arr.push(a);
37
+ }
38
+ else {
39
+ arr.splice(indexB + 1, 0, a);
40
+ }
41
+ return arr;
42
+ }
43
+ uniqArray(array, uniqueProperty) {
44
+ var seen = {};
45
+ return array
46
+ .filter(f => !!f)
47
+ .filter(function (item) {
48
+ return seen.hasOwnProperty(uniqueProperty ? item[uniqueProperty] : item) ? false
49
+ : (seen[uniqueProperty ? item[uniqueProperty] : item] = true);
50
+ });
51
+ }
52
+ sortKeys(obj) {
53
+ if (_.isArray(obj)) {
54
+ return obj.map(Helpers.arrays.sortKeys);
55
+ }
56
+ if (_.isObject(obj)) {
57
+ return _.fromPairs(_.keys(obj).sort().map(key => [key, Helpers.arrays.sortKeys(obj[key])]));
58
+ }
59
+ return obj;
60
+ }
61
+ ;
62
+ /**
63
+ * Fuzzy search
64
+ */
65
+ fuzzy(query, list, valueFn) {
66
+ const resultsFuzzy = fuzzy.filter(query, list.map(k => valueFn ? valueFn(k) : k));
67
+ const resultsFuzzyKebab = fuzzy.filter(_.kebabCase(query), list.map(k => _.kebabCase((valueFn ? valueFn(k) : k))));
68
+ const matches = resultsFuzzy.map((el) => el.string);
69
+ const matchesKebab = resultsFuzzyKebab.map((el) => el.string);
70
+ const results = (resultsFuzzy.length === 0) ? [] : list.filter(k => {
71
+ return matches.includes((valueFn ? valueFn(k) : k));
72
+ });
73
+ if (matches.length === 0 && matchesKebab.length > 0) {
74
+ const m = list.find(k => _.kebabCase((valueFn ? valueFn(k) : k)) === _.first(matchesKebab));
75
+ results.push(m);
76
+ matches.push((valueFn ? valueFn(m) : m));
77
+ }
78
+ return { matches, results };
79
+ }
80
+ }
81
+ ;
82
+ ({}); // @--end-of-file-for-module=tnp-helpers lib/helpers-array-obj.ts
83
83
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVscGVycy1hcnJheS1vYmouanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi90bXAtbGlicy1mb3ItYnVuZGxlL3RucC1oZWxwZXJzL3Byb2plY3RzL3RucC1oZWxwZXJzL3NyYy9saWIvaGVscGVycy1hcnJheS1vYmoudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLENBQUMsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ3JDLE9BQU8sS0FBSyxLQUFLLE1BQU0sT0FBTyxDQUFDO0FBQy9CLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFFbEMsTUFBTSxPQUFPLGVBQWU7SUFFMUIsSUFBSSxDQUFDLENBQW9CO1FBQ3ZCLElBQUksQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRTtZQUNoQixPQUFPLENBQUMsQ0FBQztTQUNWO1FBQ0QsSUFBSSxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxFQUFFO1lBQ2pCLE9BQU8sQ0FBQyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQTtTQUNwQjtJQUNILENBQUM7SUFFRCxNQUFNLENBQUMsR0FBRztRQUNSLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO1lBQ3pDLE9BQU8sS0FBSyxDQUFDLENBQUM7U0FDZjtRQUNELE9BQVEsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ2pCLENBQUM7SUFFRCxzQkFBc0IsQ0FBVSxHQUFVLEVBQUUsQ0FBTSxFQUFFLENBQU0sRUFBRSxJQUFjO1FBQ3hFLElBQUksTUFBTSxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFD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Q0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUU7WUFDakUsT0FBTyxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBUSxDQUFDLENBQUM7UUFDN0QsQ0FBQyxDQUFDLENBQUE7UUFFRixJQUFJLE9BQU8sQ0FBQyxNQUFNLEtBQUssQ0FBQyxJQUFJLFlBQVksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO1lBQ25ELE1BQU0sQ0FBQyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDO1lBQ25HLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDaEIsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQVEsQ0FBQyxDQUFDO1NBQ2pEO1FBRUQsT0FBTyxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsQ0FBQztJQUM5QixDQUFDO0NBRUY7QUFFQSxDQUFDO0FBQUEsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLGlFQUFpRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IF8gfSBmcm9tICd0bnAtY29yZS9icm93c2VyJztcbmltcG9ydCAqIGFzIGZ1enp5IGZyb20gJ2Z1enp5JztcbmltcG9ydCB7IEhlbHBlcnMgfSBmcm9tICcuL2luZGV4JztcblxuZXhwb3J0IGNsYXNzIEhlbHBlcnNBcnJheU9iaiB7XG5cbiAgZnJvbShzOiBzdHJpbmcgfCBzdHJpbmdbXSk6IHN0cmluZ1tdIHtcbiAgICBpZiAoXy5pc0FycmF5KHMpKSB7XG4gICAgICByZXR1cm4gcztcbiAgICB9XG4gICAgaWYgKF8uaXNTdHJpbmcocykpIHtcbiAgICAgIHJldHVybiBzLnNwbGl0KCcgJylcbiAgICB9XG4gIH1cblxuICBzZWNvbmQoYXJyKSB7XG4gICAgaWYgKCFBcnJheS5pc0FycmF5KGFycikgfHwgYXJyLmxlbmd0aCA8IDIpIHtcbiAgICAgIHJldHVybiB2b2lkIDA7XG4gICAgfVxuICAgIHJldHVybiAgYXJyWzFdO1xuICB9XG5cbiAgYXJyYXlNb3ZlRWxlbWVudEJlZm9yZTxUID0gYW55PihhcnI6IGFueVtdLCBhOiBhbnksIGI6IGFueSwgcHJvcD86IGtleW9mIFQpIHtcbiAgICBsZXQgaW5kZXhBID0gcHJvcCA/IGFyci5maW5kSW5kZXgoZWxlbSA9PiBlbGVtW3Byb3BdID09PSBhW3Byb3BdKSA6IGFyci5pbmRleE9mKGEpO1xuICAgIF8ucHVsbEF0KGFyciwgaW5kZXhBKTtcbiAgICBsZXQgaW5kZXhCID0gcHJvcCA/IGFyci5maW5kSW5kZXgoZWxlbSA9PiBlbGVtW3Byb3BdID09PSBiW3Byb3BdKSA6IGFyci5pbmRleE9mKGIpO1xuICAgIGlmIChpbmRleEIgPT09IDApIHtcbiAgICAgIGFyci51bnNoaWZ0KGEpO1xuICAgIH0gZWxzZSB7XG4gICAgICBhcnIuc3BsaWNlKGluZGV4QiAtIDEsIDAsIGEpO1xuICAgIH1cbiAgICByZXR1cm4gYXJyO1xuICB9XG4gIGFycmF5TW92ZUVsZW1lbnRBZnRlckI8VCA9IGFueT4oYXJyOiBhbnlbXSwgYTogYW55LCBiOiBhbnksIHByb3A/OiBrZXlvZiBUKSB7XG4gICAgbGV0IGluZGV4QSA9IHByb3AgPyBhcnIuZmluZEluZGV4KGVsZW0gPT4gZWxlbVtwcm9wXSA9PT0gYVtwcm9wXSkgOiBhcnIuaW5kZXhPZihhKTtcbiAgICBfLnB1bGxBdChhcnIsIGluZGV4QSk7XG4gICAgbGV0IGluZGV4QiA9IHByb3AgPyBhcnIuZmluZEluZGV4KGVsZW0gPT4gZWxlbVtwcm9wXSA9PT0gYltwcm9wXSkgOiBhcnIuaW5kZXhPZihiKTtcbiAgICBpZiAoaW5kZXhCID09PSBhcnIubGVuZ3RoIC0gMSkge1xuICAgICAgYXJyLnB1c2goYSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGFyci5zcGxpY2UoaW5kZXhCICsgMSwgMCwgYSk7XG4gICAgfVxuICAgIHJldHVybiBhcnI7XG4gIH1cblxuICB1bmlxQXJyYXk8VCA9IGFueT4oYXJyYXk6IGFueVtdLCB1bmlxdWVQcm9wZXJ0eT86IChrZXlvZiBUKSkge1xuICAgIHZhciBzZWVuID0ge307XG4gICAgcmV0dXJuIGFycmF5XG4gICAgICAuZmlsdGVyKGYgPT4gISFmKVxuICAgICAgLmZpbHRlcihmdW5jdGlvbiAoaXRlbSkge1xuICAgICAgICByZXR1cm4gc2Vlbi5oYXNPd25Qcm9wZXJ0eSh1bmlxdWVQcm9wZXJ0eSA/IGl0ZW1bdW5pcXVlUHJvcGVydHldIDogaXRlbSkgPyBmYWxzZVxuICAgICAgICAgIDogKHNlZW5bdW5pcXVlUHJvcGVydHkgPyBpdGVtW3VuaXF1ZVByb3BlcnR5XSA6IGl0ZW1dID0gdHJ1ZSk7XG4gICAgICB9KSBhcyBUW107XG4gIH1cblxuICBzb3J0S2V5cyhvYmopIHtcbiAgICBpZiAoXy5pc0FycmF5KG9iaikpIHtcbiAgICAgIHJldHVybiBvYmoubWFwKEhlbHBlcnMuYXJyYXlzLnNvcnRLZXlzKTtcbiAgICB9XG4gICAgaWYgKF8uaXNPYmplY3Qob2JqKSkge1xuICAgICAgcmV0dXJuIF8uZnJvbVBhaXJzKF8ua2V5cyhvYmopLnNvcnQoKS5tYXAoa2V5ID0+IFtrZXksIEhlbHBlcnMuYXJyYXlzLnNvcnRLZXlzKG9ialtrZXldKV0pKTtcbiAgICB9XG4gICAgcmV0dXJuIG9iajtcbiAgfTtcblxuICAvKipcbiAgICogRnV6enkgc2VhcmNoXG4gICAqL1xuICBmdXp6eTxUID0gYW55PihxdWVyeTogc3RyaW5nLCBsaXN0OiBUW10sIHZhbHVlRm4/OiAobW9kZWxGcm9tTGlzdDogVCkgPT4gc3RyaW5nKSB7XG4gICAgY29uc3QgcmVzdWx0c0Z1enp5ID0gZnV6enkuZmlsdGVyKFxuICAgICAgcXVlcnksXG4gICAgICBsaXN0Lm1hcChrID0+IHZhbHVlRm4gPyB2YWx1ZUZuKGspIDogayksXG4gICAgKVxuICAgIGNvbnN0IHJlc3VsdHNGdXp6eUtlYmFiID0gZnV6enkuZmlsdGVyKFxuICAgICAgXy5rZWJhYkNhc2UocXVlcnkpLFxuICAgICAgbGlzdC5tYXAoayA9PiBfLmtlYmFiQ2FzZSgodmFsdWVGbiA/IHZhbHVlRm4oaykgOiBrKSBhcyBhbnkpKSxcbiAgICApXG4gICAgY29uc3QgbWF0Y2hlcyA9IHJlc3VsdHNGdXp6eS5tYXAoKGVsKSA9PiBlbC5zdHJpbmcpO1xuICAgIGNvbnN0IG1hdGNoZXNLZWJhYiA9IHJlc3VsdHNGdXp6eUtlYmFiLm1hcCgoZWwpID0+IGVsLnN0cmluZyk7XG5cbiAgICBjb25zdCByZXN1bHRzID0gKHJlc3VsdHNGdXp6eS5sZW5ndGggPT09IDApID8gW10gOiBsaXN0LmZpbHRlcihrID0+IHtcbiAgICAgIHJldHVybiBtYXRjaGVzLmluY2x1ZGVzKCh2YWx1ZUZuID8gdmFsdWVGbihrKSA6IGspIGFzIGFueSk7XG4gICAgfSlcblxuICAgIGlmIChtYXRjaGVzLmxlbmd0aCA9PT0gMCAmJiBtYXRjaGVzS2ViYWIubGVuZ3RoID4gMCkge1xuICAgICAgY29uc3QgbSA9IGxpc3QuZmluZChrID0+IF8ua2ViYWJDYXNlKCh2YWx1ZUZuID8gdmFsdWVGbihrKSA6IGspIGFzIGFueSkgPT09IF8uZmlyc3QobWF0Y2hlc0tlYmFiKSk7XG4gICAgICByZXN1bHRzLnB1c2gobSk7XG4gICAgICBtYXRjaGVzLnB1c2goKHZhbHVlRm4gPyB2YWx1ZUZuKG0pIDogbSkgYXMgYW55KTtcbiAgICB9XG5cbiAgICByZXR1cm4geyBtYXRjaGVzLCByZXN1bHRzIH07XG4gIH1cblxufVxuXG4gOyh7fSk7IC8vIEAtLWVuZC1vZi1maWxlLWZvci1tb2R1bGU9dG5wLWhlbHBlcnMgbGliL2hlbHBlcnMtYXJyYXktb2JqLnRzIl19
@@ -1,47 +1,47 @@
1
- const key = Symbol('[firedev-helpers] helper browser key');
2
- export class HelpersBrowaser {
3
- constructor(win) {
4
- this.init = (() => {
5
- const win = this.win;
6
- if (!win[key]) {
7
- win[key] = new HelpersBrowaser(win);
8
- }
9
- HelpersBrowaser.inst = win[key];
10
- })();
11
- win.addEventListener("beforeunload", (e) => {
12
- win.sessionStorage.tabId = this.tabId;
13
- return null;
14
- });
15
- setTimeout(() => {
16
- if (win.sessionStorage?.tabId) {
17
- // @ts-ignore
18
- this.tabId = Number(win.sessionStorage.tabId);
19
- win.sessionStorage.removeItem("tabId");
20
- }
21
- else {
22
- // @ts-ignore
23
- this.tabId = Math.floor(Math.random() * 1000000) + (new Date()).getTime();
24
- }
25
- HelpersBrowaser.callbacks.forEach((c) => {
26
- c(this);
27
- });
28
- });
29
- }
30
- static onInit(callback) {
31
- this.callbacks.push(callback);
32
- }
33
- get win() {
34
- let win = window;
35
- return win;
36
- }
37
- get tabIdSessionStorage() {
38
- return Number(this.win.sessionStorage?.tabId) || 0;
39
- }
40
- static get instance() {
41
- return HelpersBrowaser.inst;
42
- }
43
- }
44
- HelpersBrowaser.callbacks = [];
45
- ;
46
- ({}); // @--end-of-file-for-module=tnp-helpers lib/helpers-browser.ts
1
+ const key = Symbol('[firedev-helpers] helper browser key');
2
+ export class HelpersBrowaser {
3
+ constructor(win) {
4
+ this.init = (() => {
5
+ const win = this.win;
6
+ if (!win[key]) {
7
+ win[key] = new HelpersBrowaser(win);
8
+ }
9
+ HelpersBrowaser.inst = win[key];
10
+ })();
11
+ win.addEventListener("beforeunload", (e) => {
12
+ win.sessionStorage.tabId = this.tabId;
13
+ return null;
14
+ });
15
+ setTimeout(() => {
16
+ if (win.sessionStorage?.tabId) {
17
+ // @ts-ignore
18
+ this.tabId = Number(win.sessionStorage.tabId);
19
+ win.sessionStorage.removeItem("tabId");
20
+ }
21
+ else {
22
+ // @ts-ignore
23
+ this.tabId = Math.floor(Math.random() * 1000000) + (new Date()).getTime();
24
+ }
25
+ HelpersBrowaser.callbacks.forEach((c) => {
26
+ c(this);
27
+ });
28
+ });
29
+ }
30
+ static onInit(callback) {
31
+ this.callbacks.push(callback);
32
+ }
33
+ get win() {
34
+ let win = window;
35
+ return win;
36
+ }
37
+ get tabIdSessionStorage() {
38
+ return Number(this.win.sessionStorage?.tabId) || 0;
39
+ }
40
+ static get instance() {
41
+ return HelpersBrowaser.inst;
42
+ }
43
+ }
44
+ HelpersBrowaser.callbacks = [];
45
+ ;
46
+ ({}); // @--end-of-file-for-module=tnp-helpers lib/helpers-browser.ts
47
47
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVscGVycy1icm93c2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vdG1wLWxpYnMtZm9yLWJ1bmRsZS90bnAtaGVscGVycy9wcm9qZWN0cy90bnAtaGVscGVycy9zcmMvbGliL2hlbHBlcnMtYnJvd3Nlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFHQSxNQUFNLEdBQUcsR0FBRyxNQUFNLENBQUMsc0NBQXNDLENBQUMsQ0FBQTtBQUUxRCxNQUFNLE9BQU8sZUFBZTtJQTRCMUIsWUFBb0IsR0FBVztRQVQvQixTQUFJLEdBQUcsQ0FBQyxHQUFHLEVBQUU7WUFDWCxNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDO1lBRXJCLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEVBQUU7Z0JBQ2IsR0FBRyxDQUFDLEdBQUcsQ0FBQyxHQUFHLElBQUksZUFBZSxDQUFDLEdBQUcsQ0FBQyxDQUFDO2FBQ3JDO1lBQ0QsZUFBZSxDQUFDLElBQUksR0FBRyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDbEMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztRQUlILEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQyxjQUFjLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRTtZQUN6QyxHQUFHLENBQUMsY0FBYyxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDO1lBQ3RDLE9BQU8sSUFBSSxDQUFDO1FBQ2QsQ0FBQyxDQUFDLENBQUM7UUFFSCxVQUFVLENBQUMsR0FBRyxFQUFFO1lBRWQsSUFBSSxHQUFHLENBQUMsY0FBYyxFQUFFLEtBQUssRUFBRTtnQkFDN0IsYUFBYTtnQkFDYixJQUFJLENBQUMsS0FBSyxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQyxDQUFDO2dCQUM5QyxHQUFHLENBQUMsY0FBYyxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsQ0FBQzthQUN4QztpQkFDSTtnQkFDSCxhQUFhO2dCQUNiLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLEdBQUcsT0FBTyxDQUFDLEdBQUcsQ0FBQyxJQUFJLElBQUksRUFBRSxDQUFDLENBQUMsT0FBTyxFQUFFLENBQUM7YUFDM0U7WUFDRCxlQUFlLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFO2dCQUN0QyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDVixDQUFDLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFBO0lBR0osQ0FBQztJQWpERCxNQUFNLENBQUMsTUFBTSxDQUFDLFFBQXVDO1FBQ25ELElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ2hDLENBQUM7SUFFRCxJQUFJLEdBQUc7UUFDTCxJQUFJLEdBQUcsR0FBRyxNQUFNLENBQUM7UUFDakIsT0FBTyxHQUFHLENBQUM7SUFDYixDQUFDO0lBRUQsSUFBWSxtQkFBbUI7UUFDN0IsT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxjQUFjLEVBQUUsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3JELENBQUM7SUF5Q0QsTUFBTSxLQUFLLFFBQVE7UUFDakIsT0FBTyxlQUFlLENBQUMsSUFBSSxDQUFDO0lBQzlCLENBQUM7O0FBdkRjLHlCQUFTLEdBQUcsRUFBRSxDQUFDO0FBZ0UvQixDQUFDO0FBQUEsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLCtEQUErRCIsInNvdXJjZXNDb250ZW50IjpbIlxuXG5cbmNvbnN0IGtleSA9IFN5bWJvbCgnW2ZpcmVkZXYtaGVscGVyc10gaGVscGVyIGJyb3dzZXIga2V5JylcblxuZXhwb3J0IGNsYXNzIEhlbHBlcnNCcm93YXNlciB7XG5cbiAgcHJpdmF0ZSBzdGF0aWMgY2FsbGJhY2tzID0gW107XG4gIHN0YXRpYyBvbkluaXQoY2FsbGJhY2s6IChpbnM6IEhlbHBlcnNCcm93YXNlcikgPT4gYW55KSB7XG4gICAgdGhpcy5jYWxsYmFja3MucHVzaChjYWxsYmFjayk7XG4gIH1cblxuICBnZXQgd2luKCkge1xuICAgIGxldCB3aW4gPSB3aW5kb3c7XG4gICAgcmV0dXJuIHdpbjtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0IHRhYklkU2Vzc2lvblN0b3JhZ2UoKSB7XG4gICAgcmV0dXJuIE51bWJlcih0aGlzLndpbi5zZXNzaW9uU3RvcmFnZT8udGFiSWQpIHx8IDA7XG4gIH1cblxuICByZWFkb25seSB0YWJJZDogbnVtYmVyO1xuXG4gIHByaXZhdGUgc3RhdGljIGluc3Q6IEhlbHBlcnNCcm93YXNlcjtcbiAgaW5pdCA9ICgoKSA9PiB7XG4gICAgY29uc3Qgd2luID0gdGhpcy53aW47XG5cbiAgICBpZiAoIXdpbltrZXldKSB7XG4gICAgICB3aW5ba2V5XSA9IG5ldyBIZWxwZXJzQnJvd2FzZXIod2luKTtcbiAgICB9XG4gICAgSGVscGVyc0Jyb3dhc2VyLmluc3QgPSB3aW5ba2V5XTtcbiAgfSkoKTtcblxuICBwcml2YXRlIGNvbnN0cnVjdG9yKHdpbjogV2luZG93KSB7XG5cbiAgICB3aW4uYWRkRXZlbnRMaXN0ZW5lcihcImJlZm9yZXVubG9hZFwiLCAoZSkgPT4ge1xuICAgICAgd2luLnNlc3Npb25TdG9yYWdlLnRhYklkID0gdGhpcy50YWJJZDtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH0pO1xuXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG5cbiAgICAgIGlmICh3aW4uc2Vzc2lvblN0b3JhZ2U/LnRhYklkKSB7XG4gICAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgICAgdGhpcy50YWJJZCA9IE51bWJlcih3aW4uc2Vzc2lvblN0b3JhZ2UudGFiSWQpO1xuICAgICAgICB3aW4uc2Vzc2lvblN0b3JhZ2UucmVtb3ZlSXRlbShcInRhYklkXCIpO1xuICAgICAgfVxuICAgICAgZWxzZSB7XG4gICAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgICAgdGhpcy50YWJJZCA9IE1hdGguZmxvb3IoTWF0aC5yYW5kb20oKSAqIDEwMDAwMDApICsgKG5ldyBEYXRlKCkpLmdldFRpbWUoKTtcbiAgICAgIH1cbiAgICAgIEhlbHBlcnNCcm93YXNlci5jYWxsYmFja3MuZm9yRWFjaCgoYykgPT4ge1xuICAgICAgICBjKHRoaXMpO1xuICAgICAgfSk7XG4gICAgfSlcblxuXG4gIH1cblxuXG4gIHN0YXRpYyBnZXQgaW5zdGFuY2UoKSB7XG4gICAgcmV0dXJuIEhlbHBlcnNCcm93YXNlci5pbnN0O1xuICB9XG5cbn1cblxuXG5cblxuXG5cbiA7KHt9KTsgLy8gQC0tZW5kLW9mLWZpbGUtZm9yLW1vZHVsZT10bnAtaGVscGVycyBsaWIvaGVscGVycy1icm93c2VyLnRzIl19
@@ -1,33 +1,33 @@
1
- import { _, /* */ /* */ } from 'tnp-core/browser'; /* */
2
- /* */
3
- /* */
4
- /* */
5
- /* */
6
- export class HelpersEnvironment {
7
- environmentName(filename, local_env_name) {
8
- /* */
9
- /* */
10
- /* */
11
- /* */
12
- /* */
13
- /* */
14
- }
15
- isValidGitRepuUrl(url) {
16
- const regex = /^([A-Za-z0-9]+@|http(|s)\:\/\/)([A-Za-z0-9.]+(:\d+)?)(?::|\/)([\d\/\w.-]+?)(\.git)?$/;
17
- const res = regex.test(url);
18
- return res;
19
- }
20
- isValidIp(ip) {
21
- if (!_.isString(ip)) {
22
- return false;
23
- }
24
- ip = ip.trim();
25
- if (ip === 'localhost') {
26
- return true;
27
- }
28
- return /^(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]?)$/.test(ip);
29
- }
30
- }
31
- ;
32
- ({}); // @--end-of-file-for-module=tnp-helpers lib/helpers-environment.ts
1
+ import { _, /* */ /* */ } from 'tnp-core/browser'; /* */
2
+ /* */
3
+ /* */
4
+ /* */
5
+ /* */
6
+ export class HelpersEnvironment {
7
+ environmentName(filename, local_env_name) {
8
+ /* */
9
+ /* */
10
+ /* */
11
+ /* */
12
+ /* */
13
+ /* */
14
+ }
15
+ isValidGitRepuUrl(url) {
16
+ const regex = /^([A-Za-z0-9]+@|http(|s)\:\/\/)([A-Za-z0-9.]+(:\d+)?)(?::|\/)([\d\/\w.-]+?)(\.git)?$/;
17
+ const res = regex.test(url);
18
+ return res;
19
+ }
20
+ isValidIp(ip) {
21
+ if (!_.isString(ip)) {
22
+ return false;
23
+ }
24
+ ip = ip.trim();
25
+ if (ip === 'localhost') {
26
+ return true;
27
+ }
28
+ return /^(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]?)$/.test(ip);
29
+ }
30
+ }
31
+ ;
32
+ ({}); // @--end-of-file-for-module=tnp-helpers lib/helpers-environment.ts
33
33
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVscGVycy1lbnZpcm9ubWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3RtcC1saWJzLWZvci1idW5kbGUvdG5wLWhlbHBlcnMvcHJvamVjdHMvdG5wLWhlbHBlcnMvc3JjL2xpYi9oZWxwZXJzLWVudmlyb25tZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBSSxDQUFDLEVBQUUsS0FBSyxDQUFDLEtBQUssRUFBSyxNQUFNLGtCQUFrQixDQUFDLENBQUEsS0FBSztBQUM1RCxLQUFLO0FBQ0wsS0FBSztBQUNMLEtBQUs7QUFDTCxLQUFLO0FBR0wsTUFBTSxPQUFPLGtCQUFrQjtJQUU3QixlQUFlLENBQUMsUUFBUSxFQUFFLGNBQWM7UUFDMUMsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO0lBRUgsQ0FBQztJQUVELGlCQUFpQixDQUFDLEdBQVc7UUFDM0IsTUFBTSxLQUFLLEdBQUcsc0ZBQXNGLENBQUM7UUFDckcsTUFBTSxHQUFHLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUM1QixPQUFPLEdBQUcsQ0FBQztJQUNiLENBQUM7SUFFRCxTQUFTLENBQUMsRUFBVTtRQUNsQixJQUFJLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsRUFBRTtZQUNuQixPQUFPLEtBQUssQ0FBQztTQUNkO1FBQ0QsRUFBRSxHQUFHLEVBQUUsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNmLElBQUksRUFBRSxLQUFLLFdBQVcsRUFBRTtZQUN0QixPQUFPLElBQUksQ0FBQztTQUNiO1FBQ0QsT0FBTyxrS0FBa0ssQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUE7SUFDcEwsQ0FBQztDQUVGO0FBRUEsQ0FBQztBQUFBLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxtRUFBbUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyAgIF8sIC8qICovIC8qICovICAgIH0gZnJvbSAndG5wLWNvcmUvYnJvd3Nlcic7LyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG5cblxuZXhwb3J0IGNsYXNzIEhlbHBlcnNFbnZpcm9ubWVudCB7XG5cbiAgZW52aXJvbm1lbnROYW1lKGZpbGVuYW1lLCBsb2NhbF9lbnZfbmFtZSkge1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuICBcbiAgfVxuXG4gIGlzVmFsaWRHaXRSZXB1VXJsKHVybDogc3RyaW5nKSB7XG4gICAgY29uc3QgcmVnZXggPSAvXihbQS1aYS16MC05XStAfGh0dHAofHMpXFw6XFwvXFwvKShbQS1aYS16MC05Ll0rKDpcXGQrKT8pKD86OnxcXC8pKFtcXGRcXC9cXHcuLV0rPykoXFwuZ2l0KT8kLztcbiAgICBjb25zdCByZXMgPSByZWdleC50ZXN0KHVybCk7XG4gICAgcmV0dXJuIHJlcztcbiAgfVxuXG4gIGlzVmFsaWRJcChpcDogc3RyaW5nKSB7XG4gICAgaWYgKCFfLmlzU3RyaW5nKGlwKSkge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgICBpcCA9IGlwLnRyaW0oKTtcbiAgICBpZiAoaXAgPT09ICdsb2NhbGhvc3QnKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gICAgcmV0dXJuIC9eKDI1WzAtNV18MlswLTRdWzAtOV18WzAxXT9bMC05XVswLTldPylcXC4oMjVbMC01XXwyWzAtNF1bMC05XXxbMDFdP1swLTldWzAtOV0/KVxcLigyNVswLTVdfDJbMC00XVswLTldfFswMV0/WzAtOV1bMC05XT8pXFwuKDI1WzAtNV18MlswLTRdWzAtOV18WzAxXT9bMC05XVswLTldPykkLy50ZXN0KGlwKVxuICB9XG5cbn1cblxuIDsoe30pOyAvLyBALS1lbmQtb2YtZmlsZS1mb3ItbW9kdWxlPXRucC1oZWxwZXJzIGxpYi9oZWxwZXJzLWVudmlyb25tZW50LnRzIl19