tnp-helpers 13.1.16 → 13.1.17

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 (173) hide show
  1. package/app.js +3 -3
  2. package/browser/README.md +24 -24
  3. package/browser/esm2020/lib/angular.helper.mjs +87 -87
  4. package/browser/esm2020/lib/base-component.mjs +49 -49
  5. package/browser/esm2020/lib/base-formly-component.mjs +112 -112
  6. package/browser/esm2020/lib/condition-wait.mjs +45 -45
  7. package/browser/esm2020/lib/constants.mjs +7 -7
  8. package/browser/esm2020/lib/dual-component-ctrl.mjs +118 -118
  9. package/browser/esm2020/lib/firedev-models.mjs +3 -3
  10. package/browser/esm2020/lib/helpers-array-obj.mjs +82 -82
  11. package/browser/esm2020/lib/helpers-browser.mjs +46 -46
  12. package/browser/esm2020/lib/helpers-environment.mjs +32 -32
  13. package/browser/esm2020/lib/helpers-numbers.mjs +7 -7
  14. package/browser/esm2020/lib/helpers-strings-regexes.mjs +50 -50
  15. package/browser/esm2020/lib/helpers-strings.mjs +252 -252
  16. package/browser/esm2020/lib/helpers.mjs +283 -283
  17. package/browser/esm2020/lib/index.mjs +15 -15
  18. package/browser/esm2020/lib/long-press.directive.mjs +112 -112
  19. package/browser/esm2020/lib/project.mjs +429 -429
  20. package/browser/esm2020/lib/resize-service.mjs +21 -21
  21. package/browser/esm2020/public-api.mjs +1 -1
  22. package/browser/esm2020/tnp-helpers.mjs +4 -4
  23. package/browser/fesm2015/tnp-helpers.mjs +1676 -1676
  24. package/browser/fesm2020/tnp-helpers.mjs +1666 -1666
  25. package/browser/lib/angular.helper.d.ts +35 -35
  26. package/browser/lib/base-component.d.ts +16 -16
  27. package/browser/lib/base-formly-component.d.ts +30 -30
  28. package/browser/lib/condition-wait.d.ts +7 -7
  29. package/browser/lib/constants.d.ts +5 -5
  30. package/browser/lib/dual-component-ctrl.d.ts +24 -24
  31. package/browser/lib/firedev-models.d.ts +12 -12
  32. package/browser/lib/helpers-array-obj.d.ts +14 -14
  33. package/browser/lib/helpers-browser.d.ts +10 -10
  34. package/browser/lib/helpers-environment.d.ts +4 -4
  35. package/browser/lib/helpers-numbers.d.ts +2 -2
  36. package/browser/lib/helpers-strings-regexes.d.ts +27 -27
  37. package/browser/lib/helpers-strings.d.ts +49 -49
  38. package/browser/lib/helpers.d.ts +31 -31
  39. package/browser/lib/index.d.ts +11 -11
  40. package/browser/lib/long-press.directive.d.ts +24 -24
  41. package/browser/lib/project.d.ts +94 -94
  42. package/browser/lib/resize-service.d.ts +8 -8
  43. package/browser/tnp-helpers.d.ts +4 -4
  44. package/client/README.md +24 -24
  45. package/client/esm2020/lib/angular.helper.mjs +87 -87
  46. package/client/esm2020/lib/base-component.mjs +49 -49
  47. package/client/esm2020/lib/base-formly-component.mjs +112 -112
  48. package/client/esm2020/lib/condition-wait.mjs +45 -45
  49. package/client/esm2020/lib/constants.mjs +7 -7
  50. package/client/esm2020/lib/dual-component-ctrl.mjs +118 -118
  51. package/client/esm2020/lib/firedev-models.mjs +3 -3
  52. package/client/esm2020/lib/helpers-array-obj.mjs +82 -82
  53. package/client/esm2020/lib/helpers-browser.mjs +46 -46
  54. package/client/esm2020/lib/helpers-environment.mjs +32 -32
  55. package/client/esm2020/lib/helpers-numbers.mjs +7 -7
  56. package/client/esm2020/lib/helpers-strings-regexes.mjs +50 -50
  57. package/client/esm2020/lib/helpers-strings.mjs +252 -252
  58. package/client/esm2020/lib/helpers.mjs +283 -283
  59. package/client/esm2020/lib/index.mjs +15 -15
  60. package/client/esm2020/lib/long-press.directive.mjs +112 -112
  61. package/client/esm2020/lib/project.mjs +429 -429
  62. package/client/esm2020/lib/resize-service.mjs +21 -21
  63. package/client/esm2020/public-api.mjs +1 -1
  64. package/client/esm2020/tnp-helpers.mjs +4 -4
  65. package/client/fesm2015/tnp-helpers.mjs +1676 -1676
  66. package/client/fesm2020/tnp-helpers.mjs +1666 -1666
  67. package/client/lib/angular.helper.d.ts +35 -35
  68. package/client/lib/base-component.d.ts +16 -16
  69. package/client/lib/base-formly-component.d.ts +30 -30
  70. package/client/lib/condition-wait.d.ts +7 -7
  71. package/client/lib/constants.d.ts +5 -5
  72. package/client/lib/dual-component-ctrl.d.ts +24 -24
  73. package/client/lib/firedev-models.d.ts +12 -12
  74. package/client/lib/helpers-array-obj.d.ts +14 -14
  75. package/client/lib/helpers-browser.d.ts +10 -10
  76. package/client/lib/helpers-environment.d.ts +4 -4
  77. package/client/lib/helpers-numbers.d.ts +2 -2
  78. package/client/lib/helpers-strings-regexes.d.ts +27 -27
  79. package/client/lib/helpers-strings.d.ts +49 -49
  80. package/client/lib/helpers.d.ts +31 -31
  81. package/client/lib/index.d.ts +11 -11
  82. package/client/lib/long-press.directive.d.ts +24 -24
  83. package/client/lib/project.d.ts +94 -94
  84. package/client/lib/resize-service.d.ts +8 -8
  85. package/client/tnp-helpers.d.ts +4 -4
  86. package/index.d.ts +1 -1
  87. package/lib/angular.helper.d.ts +35 -35
  88. package/lib/angular.helper.js +3 -3
  89. package/lib/base-component.d.ts +13 -13
  90. package/lib/base-component.js +3 -3
  91. package/lib/base-formly-component.d.ts +27 -27
  92. package/lib/base-formly-component.js +3 -3
  93. package/lib/condition-wait.d.ts +8 -8
  94. package/lib/constants.d.ts +6 -6
  95. package/lib/dual-component-ctrl.d.ts +24 -24
  96. package/lib/dual-component-ctrl.js +3 -3
  97. package/lib/firedev-models.d.ts +13 -13
  98. package/lib/git-project.d.ts +45 -45
  99. package/lib/helpers-array-obj.d.ts +15 -15
  100. package/lib/helpers-browser.d.ts +11 -11
  101. package/lib/helpers-cli-tool.backend.d.ts +55 -55
  102. package/lib/helpers-cli-tool.backend.js +1 -1
  103. package/lib/helpers-dependencies.backend.d.ts +11 -11
  104. package/lib/helpers-environment.d.ts +5 -5
  105. package/lib/helpers-file-folders.backend.d.ts +83 -83
  106. package/lib/helpers-file-folders.backend.js +6 -6
  107. package/lib/helpers-git.backend.d.ts +43 -43
  108. package/lib/helpers-json5.backend.d.ts +16 -16
  109. package/lib/helpers-morphi-framework.backend.d.ts +4 -4
  110. package/lib/helpers-network.backend.d.ts +8 -8
  111. package/lib/helpers-npm.backend.d.ts +3 -3
  112. package/lib/helpers-numbers.d.ts +3 -3
  113. package/lib/helpers-path.backend.d.ts +7 -7
  114. package/lib/helpers-process.backend.d.ts +54 -54
  115. package/lib/helpers-strings-regexes.d.ts +28 -28
  116. package/lib/helpers-strings.d.ts +50 -50
  117. package/lib/helpers-system-terminal.backend.d.ts +5 -5
  118. package/lib/helpers-vscode.backend.d.ts +5 -5
  119. package/lib/helpers.d.ts +72 -72
  120. package/lib/index.d.ts +12 -12
  121. package/lib/long-press.directive.d.ts +22 -22
  122. package/lib/merge-helpers.backend.d.ts +23 -23
  123. package/lib/project.d.ts +97 -97
  124. package/lib/resize-service.d.ts +6 -6
  125. package/lib/ts-code/index.d.ts +1 -1
  126. package/lib/ts-code/ts-code-extractor.d.ts +14 -14
  127. package/lib/ts-code/ts-code-modifier.backend.d.ts +12 -12
  128. package/package.json +3 -3
  129. package/package.json_devDependencies.json +222 -222
  130. package/package.json_tnp.json5 +44 -44
  131. package/tmp-environment.json +12 -12
  132. package/websql/README.md +24 -24
  133. package/websql/esm2020/lib/angular.helper.mjs +87 -87
  134. package/websql/esm2020/lib/base-component.mjs +49 -49
  135. package/websql/esm2020/lib/base-formly-component.mjs +112 -112
  136. package/websql/esm2020/lib/condition-wait.mjs +45 -45
  137. package/websql/esm2020/lib/constants.mjs +7 -7
  138. package/websql/esm2020/lib/dual-component-ctrl.mjs +118 -118
  139. package/websql/esm2020/lib/firedev-models.mjs +3 -3
  140. package/websql/esm2020/lib/helpers-array-obj.mjs +82 -82
  141. package/websql/esm2020/lib/helpers-browser.mjs +46 -46
  142. package/websql/esm2020/lib/helpers-environment.mjs +32 -32
  143. package/websql/esm2020/lib/helpers-numbers.mjs +7 -7
  144. package/websql/esm2020/lib/helpers-strings-regexes.mjs +50 -50
  145. package/websql/esm2020/lib/helpers-strings.mjs +252 -252
  146. package/websql/esm2020/lib/helpers.mjs +283 -283
  147. package/websql/esm2020/lib/index.mjs +15 -15
  148. package/websql/esm2020/lib/long-press.directive.mjs +112 -112
  149. package/websql/esm2020/lib/project.mjs +429 -429
  150. package/websql/esm2020/lib/resize-service.mjs +21 -21
  151. package/websql/esm2020/public-api.mjs +1 -1
  152. package/websql/esm2020/tnp-helpers.mjs +4 -4
  153. package/websql/fesm2015/tnp-helpers.mjs +1676 -1676
  154. package/websql/fesm2020/tnp-helpers.mjs +1666 -1666
  155. package/websql/lib/angular.helper.d.ts +35 -35
  156. package/websql/lib/base-component.d.ts +16 -16
  157. package/websql/lib/base-formly-component.d.ts +30 -30
  158. package/websql/lib/condition-wait.d.ts +7 -7
  159. package/websql/lib/constants.d.ts +5 -5
  160. package/websql/lib/dual-component-ctrl.d.ts +24 -24
  161. package/websql/lib/firedev-models.d.ts +12 -12
  162. package/websql/lib/helpers-array-obj.d.ts +14 -14
  163. package/websql/lib/helpers-browser.d.ts +10 -10
  164. package/websql/lib/helpers-environment.d.ts +4 -4
  165. package/websql/lib/helpers-numbers.d.ts +2 -2
  166. package/websql/lib/helpers-strings-regexes.d.ts +27 -27
  167. package/websql/lib/helpers-strings.d.ts +49 -49
  168. package/websql/lib/helpers.d.ts +31 -31
  169. package/websql/lib/index.d.ts +11 -11
  170. package/websql/lib/long-press.directive.d.ts +24 -24
  171. package/websql/lib/project.d.ts +94 -94
  172. package/websql/lib/resize-service.d.ts +8 -8
  173. package/websql/tnp-helpers.d.ts +4 -4
@@ -1,46 +1,46 @@
1
- import { _ } from 'tnp-core/browser';
2
- import { Helpers } from './index';
3
- export async function conditionWait(conditionAndTimeout) {
4
- await waitFor(conditionAndTimeout);
5
- }
6
- function waitFor(arr, messageToShow = void 0) {
7
- return new Promise(async (resolve, reject) => {
8
- if (arr.length === 0) {
9
- resolve(void 0);
10
- }
11
- else {
12
- const check = arr.shift();
13
- if (_.isUndefined(check.timeoutCheck)) {
14
- check.timeoutCheck = 2000;
15
- }
16
- if (_.isUndefined(check.timeoutNext)) {
17
- check.timeoutNext = 4000;
18
- }
19
- const { timeoutCheck, timeoutNext, name } = check;
20
- const resultTrue = await Helpers.runSyncOrAsync(check.callback, check);
21
- if (resultTrue) {
22
- setTimeout(async () => {
23
- await waitFor(arr).then(() => {
24
- resolve(void 0);
25
- });
26
- }, timeoutNext);
27
- }
28
- else {
29
- arr.unshift(check);
30
- if (!messageToShow || check.errorMessage !== messageToShow) {
31
- Helpers.info(check.errorMessage);
32
- }
33
- else {
34
- }
35
- setTimeout(async () => {
36
- await waitFor(arr, check.errorMessage).then(() => {
37
- resolve(void 0);
38
- });
39
- }, timeoutCheck);
40
- }
41
- }
42
- });
43
- }
44
- ;
45
- ({}); // @--end-of-file-for-module=tnp-helpers lib/condition-wait.ts
1
+ import { _ } from 'tnp-core/browser';
2
+ import { Helpers } from './index';
3
+ export async function conditionWait(conditionAndTimeout) {
4
+ await waitFor(conditionAndTimeout);
5
+ }
6
+ function waitFor(arr, messageToShow = void 0) {
7
+ return new Promise(async (resolve, reject) => {
8
+ if (arr.length === 0) {
9
+ resolve(void 0);
10
+ }
11
+ else {
12
+ const check = arr.shift();
13
+ if (_.isUndefined(check.timeoutCheck)) {
14
+ check.timeoutCheck = 2000;
15
+ }
16
+ if (_.isUndefined(check.timeoutNext)) {
17
+ check.timeoutNext = 4000;
18
+ }
19
+ const { timeoutCheck, timeoutNext, name } = check;
20
+ const resultTrue = await Helpers.runSyncOrAsync(check.callback, check);
21
+ if (resultTrue) {
22
+ setTimeout(async () => {
23
+ await waitFor(arr).then(() => {
24
+ resolve(void 0);
25
+ });
26
+ }, timeoutNext);
27
+ }
28
+ else {
29
+ arr.unshift(check);
30
+ if (!messageToShow || check.errorMessage !== messageToShow) {
31
+ Helpers.info(check.errorMessage);
32
+ }
33
+ else {
34
+ }
35
+ setTimeout(async () => {
36
+ await waitFor(arr, check.errorMessage).then(() => {
37
+ resolve(void 0);
38
+ });
39
+ }, timeoutCheck);
40
+ }
41
+ }
42
+ });
43
+ }
44
+ ;
45
+ ({}); // @--end-of-file-for-module=tnp-helpers lib/condition-wait.ts
46
46
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZGl0aW9uLXdhaXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi90bXAtbGlicy1mb3ItYnVuZGxlL3RucC1oZWxwZXJzL3Byb2plY3RzL3RucC1oZWxwZXJzL3NyYy9saWIvY29uZGl0aW9uLXdhaXQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLENBQUMsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ3JDLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFVbEMsTUFBTSxDQUFDLEtBQUssVUFBVSxhQUFhLENBQUMsbUJBQWdDO0lBQ2xFLE1BQU0sT0FBTyxDQUFDLG1CQUFtQixDQUFDLENBQUM7QUFDckMsQ0FBQztBQUVELFNBQVMsT0FBTyxDQUFDLEdBQWdCLEVBQUUsZ0JBQXdCLEtBQUssQ0FBQztJQUMvRCxPQUFPLElBQUksT0FBTyxDQUFDLEtBQUssRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFLEVBQUU7UUFDM0MsSUFBSSxHQUFHLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRTtZQUNwQixPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQTtTQUNoQjthQUFNO1lBRUwsTUFBTSxLQUFLLEdBQUcsR0FBRyxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQzFCLElBQUksQ0FBQyxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFDLEVBQUU7Z0JBQ3JDLEtBQUssQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDO2FBQzNCO1lBQ0QsSUFBSSxDQUFDLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsRUFBRTtnQkFDcEMsS0FBSyxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUM7YUFDMUI7WUFDRCxNQUFNLEVBQUUsWUFBWSxFQUFFLFdBQVcsRUFBRSxJQUFJLEVBQUUsR0FBRyxLQUFLLENBQUM7WUFJbEQsTUFBTSxVQUFVLEdBQUcsTUFBTSxPQUFPLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsS0FBSyxDQUFDLENBQUM7WUFFdkUsSUFBSSxVQUFVLEVBQUU7Z0JBRWQsVUFBVSxDQUFDLEtBQUssSUFBSSxFQUFFO29CQUVwQixNQUFNLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFO3dCQUMzQixPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztvQkFDbEIsQ0FBQyxDQUFDLENBQUM7Z0JBQ0wsQ0FBQyxFQUFFLFdBQVcsQ0FBQyxDQUFDO2FBQ2pCO2lCQUFNO2dCQUVMLEdBQUcsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBQ25CLElBQUksQ0FBQyxhQUFhLElBQUksS0FBSyxDQUFDLFlBQVksS0FBSyxhQUFhLEVBQUU7b0JBQzFELE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFlBQVksQ0FBQyxDQUFDO2lCQUNsQztxQkFBTTtpQkFFTjtnQkFFRCxVQUFVLENBQUMsS0FBSyxJQUFJLEVBQUU7b0JBRXBCLE1BQU0sT0FBTyxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsWUFBWSxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRTt3QkFDL0MsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7b0JBQ2xCLENBQUMsQ0FBQyxDQUFDO2dCQUNMLENBQUMsRUFBRSxZQUFZLENBQUMsQ0FBQzthQUNsQjtTQUNGO0lBQ0gsQ0FBQyxDQUFDLENBQUE7QUFDSixDQUFDO0FBRUEsQ0FBQztBQUFBLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyw4REFBOEQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBfIH0gZnJvbSAndG5wLWNvcmUvYnJvd3Nlcic7XG5pbXBvcnQgeyBIZWxwZXJzIH0gZnJvbSAnLi9pbmRleCc7XG5cbmV4cG9ydCB0eXBlIENvbmRpdGlvbiA9IHtcbiAgbmFtZT86IHN0cmluZztcbiAgdGltZW91dENoZWNrPzogbnVtYmVyO1xuICB0aW1lb3V0TmV4dD86IG51bWJlcjtcbiAgY2FsbGJhY2s6IChjOiBDb25kaXRpb24pID0+IGJvb2xlYW4gfCBQcm9taXNlPGJvb2xlYW4+O1xuICBlcnJvck1lc3NhZ2U6IHN0cmluZztcbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGNvbmRpdGlvbldhaXQoY29uZGl0aW9uQW5kVGltZW91dDogQ29uZGl0aW9uW10pIHtcbiAgYXdhaXQgd2FpdEZvcihjb25kaXRpb25BbmRUaW1lb3V0KTtcbn1cblxuZnVuY3Rpb24gd2FpdEZvcihhcnI6IENvbmRpdGlvbltdLCBtZXNzYWdlVG9TaG93OiBzdHJpbmcgPSB2b2lkIDApIHtcbiAgcmV0dXJuIG5ldyBQcm9taXNlKGFzeW5jIChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICBpZiAoYXJyLmxlbmd0aCA9PT0gMCkge1xuICAgICAgcmVzb2x2ZSh2b2lkIDApXG4gICAgfSBlbHNlIHtcblxuICAgICAgY29uc3QgY2hlY2sgPSBhcnIuc2hpZnQoKTtcbiAgICAgIGlmIChfLmlzVW5kZWZpbmVkKGNoZWNrLnRpbWVvdXRDaGVjaykpIHtcbiAgICAgICAgY2hlY2sudGltZW91dENoZWNrID0gMjAwMDtcbiAgICAgIH1cbiAgICAgIGlmIChfLmlzVW5kZWZpbmVkKGNoZWNrLnRpbWVvdXROZXh0KSkge1xuICAgICAgICBjaGVjay50aW1lb3V0TmV4dCA9IDQwMDA7XG4gICAgICB9XG4gICAgICBjb25zdCB7IHRpbWVvdXRDaGVjaywgdGltZW91dE5leHQsIG5hbWUgfSA9IGNoZWNrO1xuXG5cblxuICAgICAgY29uc3QgcmVzdWx0VHJ1ZSA9IGF3YWl0IEhlbHBlcnMucnVuU3luY09yQXN5bmMoY2hlY2suY2FsbGJhY2ssIGNoZWNrKTtcblxuICAgICAgaWYgKHJlc3VsdFRydWUpIHtcblxuICAgICAgICBzZXRUaW1lb3V0KGFzeW5jICgpID0+IHtcblxuICAgICAgICAgIGF3YWl0IHdhaXRGb3IoYXJyKS50aGVuKCgpID0+IHtcbiAgICAgICAgICAgIHJlc29sdmUodm9pZCAwKTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgfSwgdGltZW91dE5leHQpO1xuICAgICAgfSBlbHNlIHtcblxuICAgICAgICBhcnIudW5zaGlmdChjaGVjayk7XG4gICAgICAgIGlmICghbWVzc2FnZVRvU2hvdyB8fCBjaGVjay5lcnJvck1lc3NhZ2UgIT09IG1lc3NhZ2VUb1Nob3cpIHtcbiAgICAgICAgICBIZWxwZXJzLmluZm8oY2hlY2suZXJyb3JNZXNzYWdlKTtcbiAgICAgICAgfSBlbHNlIHtcblxuICAgICAgICB9XG5cbiAgICAgICAgc2V0VGltZW91dChhc3luYyAoKSA9PiB7XG5cbiAgICAgICAgICBhd2FpdCB3YWl0Rm9yKGFyciwgY2hlY2suZXJyb3JNZXNzYWdlKS50aGVuKCgpID0+IHtcbiAgICAgICAgICAgIHJlc29sdmUodm9pZCAwKTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgfSwgdGltZW91dENoZWNrKTtcbiAgICAgIH1cbiAgICB9XG4gIH0pXG59XG5cbiA7KHt9KTsgLy8gQC0tZW5kLW9mLWZpbGUtZm9yLW1vZHVsZT10bnAtaGVscGVycyBsaWIvY29uZGl0aW9uLXdhaXQudHMiXX0=
@@ -1,8 +1,8 @@
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
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
8
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vdG1wLWxpYnMtZm9yLWJ1bmRsZS90bnAtaGVscGVycy9wcm9qZWN0cy90bnAtaGVscGVycy9zcmMvbGliL2NvbnN0YW50cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQUMsTUFBTSxzQkFBc0IsR0FBRyxJQUFJLENBQUM7QUFFM0MsTUFBTSxDQUFDLE1BQU0sUUFBUSxHQUFHO0lBQ3RCLFFBQVEsRUFBRSxzQkFBc0I7SUFDaEMsT0FBTyxFQUFFLGlCQUFpQjtJQUMxQixRQUFRLEVBQUUsa0JBQWtCO0NBQzdCLENBRUM7QUFBQSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMseURBQXlEIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IEJhc2VsaW5lU2l0ZUpvaW5wcmVmaXggPSAnX18nO1xuXG5leHBvcnQgY29uc3QgUFJFRklYRVMgPSB7XG4gIEJBU0VMSU5FOiBCYXNlbGluZVNpdGVKb2lucHJlZml4LFxuICBERUxFVEVEOiAnX19fX0RFTEVURURfX19fJyxcbiAgT1JJR0lOQUw6ICdfX19fT1JJR0lOQUxfX19fJyxcbn1cblxuIDsoe30pOyAvLyBALS1lbmQtb2YtZmlsZS1mb3ItbW9kdWxlPXRucC1oZWxwZXJzIGxpYi9jb25zdGFudHMudHMiXX0=
@@ -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