tnp-helpers 16.0.10 → 16.0.12

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 (123) hide show
  1. package/assets/shared/shared_folder_info.txt +1 -1
  2. package/browser/README.md +24 -24
  3. package/browser/esm2022/lib/base-project.mjs +1 -1
  4. package/browser/esm2022/lib/for-browser/angular.helper.mjs +1 -1
  5. package/browser/esm2022/lib/for-browser/helpers-browser.mjs +1 -1
  6. package/browser/esm2022/lib/helpers-array-obj.mjs +1 -1
  7. package/browser/esm2022/lib/helpers-numbers.mjs +1 -1
  8. package/browser/esm2022/lib/helpers-strings-regexes.mjs +1 -1
  9. package/browser/esm2022/lib/helpers-strings.mjs +1 -1
  10. package/browser/esm2022/lib/helpers.mjs +4 -7
  11. package/browser/esm2022/lib/index.mjs +1 -1
  12. package/browser/esm2022/lib/models.mjs +1 -1
  13. package/browser/esm2022/lib/project.mjs +5 -34
  14. package/browser/esm2022/lib/validators/validators-git.mjs +1 -1
  15. package/browser/esm2022/lib/validators/validators-network.mjs +1 -1
  16. package/browser/esm2022/lib/validators/validators.mjs +1 -1
  17. package/browser/fesm2022/tnp-helpers.mjs +7 -131
  18. package/browser/fesm2022/tnp-helpers.mjs.map +1 -1
  19. package/browser/lib/helpers.d.ts +0 -2
  20. package/browser/lib/project.d.ts +0 -12
  21. package/client/README.md +24 -24
  22. package/client/esm2022/lib/base-project.mjs +1 -1
  23. package/client/esm2022/lib/for-browser/angular.helper.mjs +1 -1
  24. package/client/esm2022/lib/for-browser/helpers-browser.mjs +1 -1
  25. package/client/esm2022/lib/helpers-array-obj.mjs +1 -1
  26. package/client/esm2022/lib/helpers-numbers.mjs +1 -1
  27. package/client/esm2022/lib/helpers-strings-regexes.mjs +1 -1
  28. package/client/esm2022/lib/helpers-strings.mjs +1 -1
  29. package/client/esm2022/lib/helpers.mjs +4 -7
  30. package/client/esm2022/lib/index.mjs +1 -1
  31. package/client/esm2022/lib/models.mjs +1 -1
  32. package/client/esm2022/lib/project.mjs +5 -34
  33. package/client/esm2022/lib/validators/validators-git.mjs +1 -1
  34. package/client/esm2022/lib/validators/validators-network.mjs +1 -1
  35. package/client/esm2022/lib/validators/validators.mjs +1 -1
  36. package/client/fesm2022/tnp-helpers.mjs +7 -131
  37. package/client/fesm2022/tnp-helpers.mjs.map +1 -1
  38. package/client/lib/helpers.d.ts +0 -2
  39. package/client/lib/project.d.ts +0 -12
  40. package/client/package.json +40 -31
  41. package/index.js.map +1 -1
  42. package/lib/base-project.js +1 -1
  43. package/lib/base-project.js.map +1 -1
  44. package/lib/for-backend/helpers-cli-tool.backend.d.ts +1 -1
  45. package/lib/for-backend/helpers-cli-tool.backend.js +1 -1
  46. package/lib/for-backend/helpers-cli-tool.backend.js.map +1 -1
  47. package/lib/for-backend/helpers-console-gui.js.map +1 -1
  48. package/lib/for-backend/helpers-dependencies.backend.js.map +1 -1
  49. package/lib/for-backend/helpers-file-folders.backend.js.map +1 -1
  50. package/lib/for-backend/helpers-git.backend.d.ts +16 -0
  51. package/lib/for-backend/helpers-git.backend.js +96 -9
  52. package/lib/for-backend/helpers-git.backend.js.map +1 -1
  53. package/lib/for-backend/helpers-network.backend.js.map +1 -1
  54. package/lib/for-backend/helpers-npm.backend.js.map +1 -1
  55. package/lib/for-backend/helpers-path.backend.js.map +1 -1
  56. package/lib/for-backend/helpers-process.backend.js.map +1 -1
  57. package/lib/for-backend/helpers-system-terminal.backend.js.map +1 -1
  58. package/lib/for-backend/helpers-vscode.backend.js.map +1 -1
  59. package/lib/for-backend/ts-code/index.js.map +1 -1
  60. package/lib/for-backend/ts-code/ts-code-extractor.js.map +1 -1
  61. package/lib/for-backend/ts-code/ts-code-modifier.backend.js.map +1 -1
  62. package/lib/for-browser/angular.helper.js +3 -3
  63. package/lib/for-browser/angular.helper.js.map +1 -1
  64. package/lib/for-browser/helpers-browser.js.map +1 -1
  65. package/lib/git-project.d.ts +3 -0
  66. package/lib/git-project.js +13 -0
  67. package/lib/git-project.js.map +1 -1
  68. package/lib/helpers-array-obj.js.map +1 -1
  69. package/lib/helpers-json5.backend.js.map +1 -1
  70. package/lib/helpers-numbers.js.map +1 -1
  71. package/lib/helpers-strings-regexes.js.map +1 -1
  72. package/lib/helpers-strings.js.map +1 -1
  73. package/lib/helpers.d.ts +0 -2
  74. package/lib/helpers.js +3 -7
  75. package/lib/helpers.js.map +1 -1
  76. package/lib/index.js.map +1 -1
  77. package/lib/models.js.map +1 -1
  78. package/lib/old/base-component.js +3 -3
  79. package/lib/old/base-component.js.map +1 -1
  80. package/lib/old/base-formly-component.js +3 -3
  81. package/lib/old/base-formly-component.js.map +1 -1
  82. package/lib/old/condition-wait.js.map +1 -1
  83. package/lib/old/dual-component-ctrl.js +3 -3
  84. package/lib/old/dual-component-ctrl.js.map +1 -1
  85. package/lib/project.d.ts +0 -12
  86. package/lib/project.js +8 -36
  87. package/lib/project.js.map +1 -1
  88. package/lib/validators/validators-firedev.js.map +1 -1
  89. package/lib/validators/validators-git.js.map +1 -1
  90. package/lib/validators/validators-network.js.map +1 -1
  91. package/lib/validators/validators.js.map +1 -1
  92. package/package.json +4 -6
  93. package/package.json_devDependencies.json +222 -222
  94. package/package.json_tnp.json5 +48 -49
  95. package/tmp-environment.json +46 -39
  96. package/websql/README.md +24 -24
  97. package/websql/esm2022/lib/base-project.mjs +13 -13
  98. package/websql/esm2022/lib/for-browser/angular.helper.mjs +1 -1
  99. package/websql/esm2022/lib/for-browser/helpers-browser.mjs +1 -1
  100. package/websql/esm2022/lib/helpers-array-obj.mjs +1 -1
  101. package/websql/esm2022/lib/helpers-numbers.mjs +1 -1
  102. package/websql/esm2022/lib/helpers-strings-regexes.mjs +1 -1
  103. package/websql/esm2022/lib/helpers-strings.mjs +1 -1
  104. package/websql/esm2022/lib/helpers.mjs +4 -7
  105. package/websql/esm2022/lib/index.mjs +1 -1
  106. package/websql/esm2022/lib/models.mjs +1 -1
  107. package/websql/esm2022/lib/project.mjs +5 -34
  108. package/websql/esm2022/lib/validators/validators-git.mjs +1 -1
  109. package/websql/esm2022/lib/validators/validators-network.mjs +1 -1
  110. package/websql/esm2022/lib/validators/validators.mjs +1 -1
  111. package/websql/fesm2022/tnp-helpers.mjs +19 -143
  112. package/websql/fesm2022/tnp-helpers.mjs.map +1 -1
  113. package/websql/lib/helpers.d.ts +0 -2
  114. package/websql/lib/project.d.ts +0 -12
  115. package/browser/esm2022/lib/helpers-binary.mjs +0 -93
  116. package/browser/lib/helpers-binary.d.ts +0 -27
  117. package/client/esm2022/lib/helpers-binary.mjs +0 -93
  118. package/client/lib/helpers-binary.d.ts +0 -27
  119. package/lib/helpers-binary.d.ts +0 -28
  120. package/lib/helpers-binary.js +0 -127
  121. package/lib/helpers-binary.js.map +0 -1
  122. package/websql/esm2022/lib/helpers-binary.mjs +0 -93
  123. package/websql/lib/helpers-binary.d.ts +0 -27
@@ -1,9 +1,7 @@
1
1
  import { _, CoreHelpers } from 'tnp-core/browser';
2
2
  import { Subject } from 'rxjs';
3
3
  import * as fuzzy from 'fuzzy';
4
- import axios from 'axios';
5
4
  import { CLASS } from 'typescript-class-helpers/browser';
6
- import { Morphi } from 'morphi/browser';
7
5
 
8
6
  var ValidatorsGit;
9
7
  (function (ValidatorsGit) {
@@ -516,98 +514,6 @@ class HelpersStrings {
516
514
  ;
517
515
  ({}); // @--end-of-file-for-module=tnp-helpers lib/helpers-strings.ts
518
516
 
519
- /* */
520
- /* */
521
- /* */
522
- /**
523
- * Blob -> in file transmission storage
524
- * base64(Blob) -> in file transmission storage (slow)
525
- * File -> on browser side for easy manipulation, download link
526
- */
527
- class HelpersBinary {
528
- arrayBufferToBlob(buffer, contentType) {
529
- return new Blob([buffer], { type: contentType });
530
- }
531
- blobToArrayBuffer(blob) {
532
- return new Promise((resolve, reject) => {
533
- const reader = new FileReader();
534
- reader.addEventListener('loadend', () => {
535
- resolve(reader.result);
536
- });
537
- reader.addEventListener('error', reject); // @ts-ignore
538
- reader.readAsArrayBuffer(blob);
539
- });
540
- }
541
- /**
542
- * it is revers to base64toBlob
543
- * @param blob
544
- * @returns
545
- */
546
- blobToBase64(blob) {
547
- return new Promise((resolve, _) => {
548
- const reader = new FileReader();
549
- reader.onloadend = () => resolve(reader.result); // @ts-ignore
550
- reader.readAsDataURL(blob);
551
- });
552
- }
553
- /**
554
- * it is revers to blobToBase64()
555
- * @param base64Data
556
- * @returns
557
- */
558
- base64toBlob(base64Data, contentTypeOverride) {
559
- if (!contentTypeOverride) {
560
- const m = /^data:(.+?);base64,(.+)$/.exec(base64Data);
561
- if (!m) {
562
- throw new Error(`[firedev-framework][base64toBlob] Not a base64 blob [${base64Data}]`);
563
- }
564
- var [__, content_type, file_base64] = m;
565
- }
566
- content_type = (contentTypeOverride ? contentTypeOverride : content_type || '');
567
- base64Data = contentTypeOverride ? base64Data : file_base64;
568
- const sliceSize = 1024;
569
- const byteCharacters = atob(base64Data);
570
- const bytesLength = byteCharacters.length;
571
- const slicesCount = Math.ceil(bytesLength / sliceSize);
572
- const byteArrays = new Array(slicesCount);
573
- for (let sliceIndex = 0; sliceIndex < slicesCount; ++sliceIndex) {
574
- const begin = sliceIndex * sliceSize;
575
- const end = Math.min(begin + sliceSize, bytesLength);
576
- const bytes = new Array(end - begin);
577
- for (let offset = begin, i = 0; offset < end; ++i, ++offset) {
578
- bytes[i] = byteCharacters[offset].charCodeAt(0);
579
- }
580
- byteArrays[sliceIndex] = new Uint8Array(bytes);
581
- }
582
- return new Blob(byteArrays, { type: content_type });
583
- }
584
- async fileToBlob(file) {
585
- return new Blob([new Uint8Array(await file.arrayBuffer())], { type: file.type });
586
- }
587
- ;
588
- async blobToFile(blob, nameForFile = 'my-file-name') {
589
- if (!nameForFile) {
590
- nameForFile = nameForFile + (new Date()).getTime();
591
- // @ts-ignore
592
- return new File([blob], nameForFile);
593
- }
594
- ;
595
- }
596
- async getBlobFrom(url) {
597
- const response = await axios({
598
- url,
599
- method: 'get',
600
- responseType: 'blob'
601
- });
602
- return response.data;
603
- }
604
- numValue(pixelsCss) {
605
- return parseInt(pixelsCss.replace('px', ''));
606
- }
607
- }
608
- ;
609
- ({}); // @--end-of-file-for-module=tnp-helpers lib/helpers-binary.ts
610
-
611
517
  class HelpersNumber {
612
518
  constructor() {
613
519
  /**
@@ -710,12 +616,11 @@ class HelpersFiredev extends CoreHelpers {
710
616
  /* */
711
617
  /* */
712
618
  /* */
713
- arrays = new HelpersArrayObj(), strings = new HelpersStrings(), numbers = new HelpersNumber(), binary = new HelpersBinary(), browser = HelpersBrowser.instance, ng = HelpersAngular) {
619
+ arrays = new HelpersArrayObj(), strings = new HelpersStrings(), numbers = new HelpersNumber(), browser = HelpersBrowser.instance, ng = HelpersAngular) {
714
620
  super();
715
621
  this.arrays = arrays;
716
622
  this.strings = strings;
717
623
  this.numbers = numbers;
718
- this.binary = binary;
719
624
  this.browser = browser;
720
625
  this.ng = ng;
721
626
  /* */
@@ -877,7 +782,7 @@ class HelpersFiredev extends CoreHelpers {
877
782
  await Helpers.runSyncOrAsync(functionToExecute, ...functionArguments);
878
783
  //@ts-ignore
879
784
  var end = new Date() - start;
880
- if (Morphi.IsBrowser) {
785
+ if (Helpers.isBrowser) {
881
786
  Helpers.info(`Execution time: ${end.toString()}ms for "${description}"`);
882
787
  }
883
788
  /* */
@@ -889,7 +794,7 @@ class HelpersFiredev extends CoreHelpers {
889
794
  functionToExecute();
890
795
  //@ts-ignore
891
796
  var end = new Date() - start;
892
- if (Morphi.IsBrowser) {
797
+ if (Helpers.isBrowser) {
893
798
  Helpers.log(`Execution time: ${end.toString()}ms for "${description}"`);
894
799
  }
895
800
  /* */
@@ -1097,21 +1002,6 @@ class Project {
1097
1002
  /* */
1098
1003
  /* */
1099
1004
  /* */
1100
- /* */
1101
- /* */
1102
- /* */
1103
- /* */
1104
- /* */
1105
- /* */
1106
- /* */
1107
- /* */
1108
- /* */
1109
- /* */
1110
- /* */
1111
- /* */
1112
- /* */
1113
- /* */
1114
- /* */
1115
1005
  return (void 0);
1116
1006
  }
1117
1007
  static nearestTo(absoluteLocation, options) {
@@ -1201,21 +1091,6 @@ class Project {
1201
1091
  return (void 0);
1202
1092
  }
1203
1093
  static DefaultPortByType(type) {
1204
- if (type === 'workspace') {
1205
- return 5000;
1206
- }
1207
- if (type === 'angular-client') {
1208
- return 4300;
1209
- }
1210
- if (type === 'angular-lib') {
1211
- return 4250;
1212
- }
1213
- if (type === 'electron-client') {
1214
- return 4350;
1215
- }
1216
- if (type === 'ionic-client') {
1217
- return 8080;
1218
- }
1219
1094
  if (type === 'docker') {
1220
1095
  return 5000;
1221
1096
  }
@@ -1288,9 +1163,6 @@ class Project {
1288
1163
  /* */
1289
1164
  /* */
1290
1165
  /* */
1291
- /* */
1292
- /* */
1293
- /* */
1294
1166
  return (void 0);
1295
1167
  }
1296
1168
  defineProperty(variableName, classFn) {
@@ -1318,6 +1190,10 @@ class Project {
1318
1190
  /* */
1319
1191
  /* */
1320
1192
  /* */
1193
+ /* */
1194
+ /* */
1195
+ /* */
1196
+ /* */
1321
1197
  return (void 0);
1322
1198
  }
1323
1199
  setType(type) {
@@ -1 +1 @@
1
- {"version":3,"file":"tnp-helpers.mjs","sources":["../../../tmp-libs-for-bundle/tnp-helpers/projects/tnp-helpers/src/lib/validators/validators-git.ts","../../../tmp-libs-for-bundle/tnp-helpers/projects/tnp-helpers/src/lib/validators/validators-network.ts","../../../tmp-libs-for-bundle/tnp-helpers/projects/tnp-helpers/src/lib/validators/validators.ts","../../../tmp-libs-for-bundle/tnp-helpers/projects/tnp-helpers/src/lib/for-browser/angular.helper.ts","../../../tmp-libs-for-bundle/tnp-helpers/projects/tnp-helpers/src/lib/helpers-array-obj.ts","../../../tmp-libs-for-bundle/tnp-helpers/projects/tnp-helpers/src/lib/helpers-strings-regexes.ts","../../../tmp-libs-for-bundle/tnp-helpers/projects/tnp-helpers/src/lib/helpers-strings.ts","../../../tmp-libs-for-bundle/tnp-helpers/projects/tnp-helpers/src/lib/helpers-binary.ts","../../../tmp-libs-for-bundle/tnp-helpers/projects/tnp-helpers/src/lib/helpers-numbers.ts","../../../tmp-libs-for-bundle/tnp-helpers/projects/tnp-helpers/src/lib/for-browser/helpers-browser.ts","../../../tmp-libs-for-bundle/tnp-helpers/projects/tnp-helpers/src/lib/helpers.ts","../../../tmp-libs-for-bundle/tnp-helpers/projects/tnp-helpers/src/lib/project.ts","../../../tmp-libs-for-bundle/tnp-helpers/projects/tnp-helpers/src/lib/base-project.ts","../../../tmp-libs-for-bundle/tnp-helpers/projects/tnp-helpers/src/lib/models.ts","../../../tmp-libs-for-bundle/tnp-helpers/projects/tnp-helpers/src/lib/index.ts","../../../tmp-libs-for-bundle/tnp-helpers/projects/tnp-helpers/src/tnp-helpers.ts"],"sourcesContent":["\nexport namespace ValidatorsGit {\n\n export function isValidRepoUrl(url: string) {\n const regex = /^([A-Za-z0-9]+@|http(|s)\\:\\/\\/)([A-Za-z0-9.]+(:\\d+)?)(?::|\\/)([\\d\\/\\w.-]+?)(\\.git)?$/;\n const res = regex.test(url);\n return res;\n }\n\n}\n\n ;({}); // @--end-of-file-for-module=tnp-helpers lib/validators/validators-git.ts","import { _ } from 'tnp-core/browser';\n\nexport namespace ValidatorsNetwork {\n export function isValidIp(ip: string) {\n if (!_.isString(ip)) {\n return false;\n }\n ip = ip.trim();\n if (ip === 'localhost') {\n return true;\n }\n 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)\n }\n}\n\n ;({}); // @--end-of-file-for-module=tnp-helpers lib/validators/validators-network.ts","import { ValidatorsGit } from \"./validators-git\";\nimport { ValidatorsNetwork } from \"./validators-network\";\n\nexport namespace Validators {\n export import git = ValidatorsGit;\n export import network = ValidatorsNetwork;\n}\n\n\n ;({}); // @--end-of-file-for-module=tnp-helpers lib/validators/validators.ts","\nimport { Observable, Subject } from \"rxjs\";\n\nconst componentContextSymbol = Symbol();\nconst componentsDestroy$Subjects = {};\n\n\nexport namespace HelpersAngular {\n\n export class SerializedSubject<T> {\n constructor(\n public id: string\n ) { }\n }\n\n\n function subjectId(destroySubject: Subject<any>): SerializedSubject<any> {\n const id = Math.random().toString(36).substring(2);\n if (!destroySubject[componentContextSymbol]) {\n destroySubject[componentContextSymbol] = new SerializedSubject(id);\n componentsDestroy$Subjects[id] = destroySubject;\n }\n return destroySubject[componentContextSymbol];\n }\n\n /**\n * if you are using this.. please call Helpers.ng.unsubscribe(this.$destroy) in ngOnDestroy();\n */\n export function serialize(destroy$: Subject<any>): SerializedSubject<any> {\n return subjectId(destroy$);\n }\n\n /**\n * if you are using this.. please call Helpers.ng.unsubscribe(this.$destroy) in ngOnDestroy();\n */\n export function deserialize(destroy$: SerializedSubject<any>): Subject<any> {\n if (destroy$?.id) {\n const realDestroySubject = componentsDestroy$Subjects[destroy$.id];\n return realDestroySubject;\n }\n return new Subject();\n }\n\n export function unsubscribe(destroy$: Subject<any>) {\n const destroySubject = subjectId(destroy$);\n if (destroySubject?.id) {\n delete componentsDestroy$Subjects[destroySubject.id];\n delete destroySubject[componentContextSymbol];\n }\n }\n\n\n\n /**\n get properties from scss file\n\n\n import styles from './tasks-ngrx-data.component.scss';\n\n export class ExampleComponent {\n sassFile = sassFile(styles);\n\n async ngOnInit() {\n this.tasksService.getAll();\n console.log(this.sassFile.stringValue('--max-container-size'))\n console.log(this.sassFile.numberValue('--max-container-size'))\n }\n }\n */\n export function sassFile(styles: string) {\n const lines = (styles.split('\\n'));\n return {\n stringValue: (name: string) => {\n for (let index = 0; index < lines.length; index++) {\n const l = lines[index];\n const [varName, value] = l.trim().split(':');\n if (varName === name) {\n return value.replace(';', '');\n }\n }\n },\n numberValue: (name: string): number => {\n for (let index = 0; index < lines.length; index++) {\n const l = lines[index];\n const [varName, value] = l.trim().split(':');\n if (varName === name) {\n return Number(value.replace('px', '').replace(';', ''));\n }\n }\n }\n }\n }\n}\n\n\n\n ;({}); // @--end-of-file-for-module=tnp-helpers lib/for-browser/angular.helper.ts","import { _ } from 'tnp-core/browser';\nimport * as fuzzy from 'fuzzy';\n\n\nexport class HelpersArrayObj {\n\n from(s: string | string[]): string[] {\n if (_.isArray(s)) {\n return s;\n }\n if (_.isString(s)) {\n return s.split(' ')\n }\n }\n\n second(arr) {\n if (!Array.isArray(arr) || arr.length < 2) {\n return void 0;\n }\n return arr[1];\n }\n\n arrayMoveElementBefore<T = any>(arr: any[], a: any, b: any, prop?: keyof T) {\n let indexA = prop ? arr.findIndex(elem => elem[prop] === a[prop]) : arr.indexOf(a);\n _.pullAt(arr, indexA);\n let indexB = prop ? arr.findIndex(elem => elem[prop] === b[prop]) : arr.indexOf(b);\n if (indexB === 0) {\n arr.unshift(a);\n } else {\n arr.splice(indexB - 1, 0, a);\n }\n return arr;\n }\n arrayMoveElementAfterB<T = any>(arr: any[], a: any, b: any, prop?: keyof T) {\n let indexA = prop ? arr.findIndex(elem => elem[prop] === a[prop]) : arr.indexOf(a);\n _.pullAt(arr, indexA);\n let indexB = prop ? arr.findIndex(elem => elem[prop] === b[prop]) : arr.indexOf(b);\n if (indexB === arr.length - 1) {\n arr.push(a);\n } else {\n arr.splice(indexB + 1, 0, a);\n }\n return arr;\n }\n\n uniqArray<T = any>(array: any[], uniqueProperty?: (keyof T)) {\n var seen = {};\n return array\n .filter(f => !!f)\n .filter(function (item) {\n return seen.hasOwnProperty(uniqueProperty ? item[uniqueProperty] : item) ? false\n : (seen[uniqueProperty ? item[uniqueProperty] : item] = true);\n }) as T[];\n }\n\n sortKeys(obj) {\n if (_.isArray(obj)) {\n return obj.map(this.sortKeys);\n }\n if (_.isObject(obj)) {\n return _.fromPairs(_.keys(obj).sort().map(key => [key, this.sortKeys(obj[key])]));\n }\n return obj;\n };\n\n /**\n * Fuzzy search\n */\n fuzzy<T = any>(query: string, list: T[], valueFn?: (modelFromList: T) => string) {\n const resultsFuzzy = fuzzy.filter(\n query,\n list.map(k => valueFn ? valueFn(k) : k),\n )\n const resultsFuzzyKebab = fuzzy.filter(\n _.kebabCase(query),\n list.map(k => _.kebabCase((valueFn ? valueFn(k) : k) as any)),\n )\n const matches = resultsFuzzy.map((el) => el.string);\n const matchesKebab = resultsFuzzyKebab.map((el) => el.string);\n\n const results = (resultsFuzzy.length === 0) ? [] : list.filter(k => {\n return matches.includes((valueFn ? valueFn(k) : k) as any);\n })\n\n if (matches.length === 0 && matchesKebab.length > 0) {\n const m = list.find(k => _.kebabCase((valueFn ? valueFn(k) : k) as any) === _.first(matchesKebab));\n results.push(m);\n matches.push((valueFn ? valueFn(m) : m) as any);\n }\n\n return { matches, results };\n }\n\n}\n\n ;({}); // @--end-of-file-for-module=tnp-helpers lib/helpers-array-obj.ts","import { _ } from 'tnp-core/browser';\nexport class HelpersStringsRegexes {\n\n\n\n escapeStringForRegEx(s: string) {\n return s.replace(/[-\\/\\\\^$*+?.()|[\\]{}]/g, '\\\\$&');\n }\n\n matchExactOnce(s: string, regex: RegExp): string {\n if (!_.isString(s) || !_.isRegExp(regex)) {\n return void 0;\n }\n const result = s.match(regex);\n if (_.isNil(result)) {\n return void 0;\n }\n return result.length >= 1 ? _.first(result) : void 0;\n }\n\n get regex() {\n return {\n /**\n * mathes\n * xxx.xxx.xxx.xxx\n * xxx.xxx.xxx.xxx:port\n * http://xxx.xxx.xxx.xxx:port\n * http://xxx.xxx.xxx.xxx\n * https://xxx.xxx.xxx.xxx:port\n * https://xxx.xxx.xxx.xxx *\n */\n get forStringWithIpHost() {\n const regex = /(http(s)?\\:\\/\\/)?(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)(\\:[0-9]+)?/;\n return regex;\n },\n /**\n * mathes\n * http://domain.com:port\n * http://domain.com\n * http://domain:port\n * http://domain\n * https://domain.com:port\n * https://domain.com\n * https://domain:port\n * https://domain\n */\n get forStringWithDomainHost() {\n const regex = /(((http(s)?\\:\\/\\/)?[a-zA-Z0-9][a-zA-Z0-9-]{1,61}[a-zA-Z0-9](?:\\.[a-zA-Z]{2,})+(\\:[0-9]+)?)|((http(s)?\\:\\/\\/)[a-zA-Z0-9-]{1,61}))/;\n return regex;\n }\n }\n }\n}\n\n ;({}); // @--end-of-file-for-module=tnp-helpers lib/helpers-strings-regexes.ts","import { _ } from 'tnp-core/browser';\nimport { Helpers } from './index';\n\nexport class HelpersStrings {\n\n /**\n * Example:\n *\n * const result = interpolateString(\"I'm {age} years old!\")\n * .withParameters({ age: 29 });\n *\n * const result = interpolateString(\"The {a} says {n}, {n}, {n}!\")\n * .withParameters({ a: 'cow', n: 'moo' });\n *\n *\n * @param value string to interpolate\n * @param parameters object with parametes\n */\n interpolateString<T = any>(value: string) {\n if (typeof value !== 'string') {\n Helpers.warn('[firedev-heleprs] Value for interpolation is not string: ', value);\n return value;\n }\n\n return {\n withParameters(parameters: T) {\n if (typeof parameters !== 'object') {\n Helpers.log(parameters as any);\n Helpers.warn('[firedev-heleprs] Parameters are not a object: ');\n return value;\n }\n return value.replace(/{([^{}]*)}/g, function (a, b) {\n var r = parameters[b];\n return typeof r === 'string' || typeof r === 'number' ? r : a;\n } as any);\n }\n }\n\n }\n\n /**\n *\n * @param pixelsCss exmaple: 100px\n * @returns number value\n */\n numValue(pixelsCss: string) {\n\n return parseInt(pixelsCss.replace('px', ''));\n }\n\n /**\n * examples:\n * 'aa bb bb' => ['aa','bb','cc'],\n * 'aa' => ['aa']\n * ['aa'] => ['aa']\n */\n splitIfNeed(stringOrArr: string | string[]): string[] {\n let res = [];\n if (_.isArray(stringOrArr)) {\n res = stringOrArr.map(s => {\n return s.trim();\n })\n }\n if (_.isString(stringOrArr)) {\n res = stringOrArr.split(/\\s*[\\s,]\\s*/);\n }\n return res.filter(f => !!f && (f.trim() !== ''));\n }\n\n removeDoubleOrMoreEmptyLines(s: string) {\n s = s?.split('\\n').map(f => f.trimRight()).join('\\n');\n return s?.replace(/(\\r\\n|\\r|\\n){2,}/g, '$1\\n');\n }\n\n /**\n *\n * https://stackoverflow.com/a/57129703/1345101\n *\n * Returns the plural of an English word.\n *\n * @export\n * @param {string} word\n * @param {number} [amount]\n * @returns {string}\n */\n plural(word: string, amount?: number): string {\n if (amount !== undefined && amount === 1) {\n return word\n }\n const plural: { [key: string]: string } = {\n '(quiz)$': \"$1zes\",\n '^(ox)$': \"$1en\",\n '([m|l])ouse$': \"$1ice\",\n '(matr|vert|ind)ix|ex$': \"$1ices\",\n '(x|ch|ss|sh)$': \"$1es\",\n '([^aeiouy]|qu)y$': \"$1ies\",\n '(hive)$': \"$1s\",\n '(?:([^f])fe|([lr])f)$': \"$1$2ves\",\n '(shea|lea|loa|thie)f$': \"$1ves\",\n 'sis$': \"ses\",\n '([ti])um$': \"$1a\",\n '(tomat|potat|ech|her|vet)o$': \"$1oes\",\n '(bu)s$': \"$1ses\",\n '(alias)$': \"$1es\",\n '(octop)us$': \"$1i\",\n '(ax|test)is$': \"$1es\",\n '(us)$': \"$1es\",\n '([^s]+)$': \"$1s\"\n }\n const irregular: { [key: string]: string } = {\n 'move': 'moves',\n 'foot': 'feet',\n 'goose': 'geese',\n 'sex': 'sexes',\n 'child': 'children',\n 'man': 'men',\n 'tooth': 'teeth',\n 'person': 'people'\n }\n const uncountable: string[] = [\n 'sheep',\n 'fish',\n 'deer',\n 'moose',\n 'series',\n 'species',\n 'money',\n 'rice',\n 'information',\n 'equipment',\n 'bison',\n 'cod',\n 'offspring',\n 'pike',\n 'salmon',\n 'shrimp',\n 'swine',\n 'trout',\n 'aircraft',\n 'hovercraft',\n 'spacecraft',\n 'sugar',\n 'tuna',\n 'you',\n 'wood'\n ]\n\n if (uncountable.indexOf(word.toLowerCase()) >= 0) {\n return word\n }\n\n for (const w in irregular) {\n const pattern = new RegExp(`${w}$`, 'i')\n const replace = irregular[w]\n if (pattern.test(word)) {\n return word.replace(pattern, replace)\n }\n }\n\n for (const reg in plural) {\n const pattern = new RegExp(reg, 'i')\n if (pattern.test(word)) {\n return word.replace(pattern, plural[reg])\n }\n }\n return word\n }\n\n\n /**\n * https://stackoverflow.com/a/57129703/1345101\n *\n * Returns the singular of an English word.\n *\n * @export\n * @param {string} word\n * @param {number} [amount]\n * @returns {string}\n */\n singular(word: string, amount?: number): string {\n if (amount !== undefined && amount !== 1) {\n return word\n }\n const singular: { [key: string]: string } = {\n '(quiz)zes$': \"$1\",\n '(matr)ices$': \"$1ix\",\n '(vert|ind)ices$': \"$1ex\",\n '^(ox)en$': \"$1\",\n '(alias)es$': \"$1\",\n '(octop|vir)i$': \"$1us\",\n '(cris|ax|test)es$': \"$1is\",\n '(shoe)s$': \"$1\",\n '(o)es$': \"$1\",\n '(bus)es$': \"$1\",\n '([m|l])ice$': \"$1ouse\",\n '(x|ch|ss|sh)es$': \"$1\",\n '(m)ovies$': \"$1ovie\",\n '(s)eries$': \"$1eries\",\n '([^aeiouy]|qu)ies$': \"$1y\",\n '([lr])ves$': \"$1f\",\n '(tive)s$': \"$1\",\n '(hive)s$': \"$1\",\n '(li|wi|kni)ves$': \"$1fe\",\n '(shea|loa|lea|thie)ves$': \"$1f\",\n '(^analy)ses$': \"$1sis\",\n '((a)naly|(b)a|(d)iagno|(p)arenthe|(p)rogno|(s)ynop|(t)he)ses$': \"$1$2sis\",\n '([ti])a$': \"$1um\",\n '(n)ews$': \"$1ews\",\n '(h|bl)ouses$': \"$1ouse\",\n '(corpse)s$': \"$1\",\n '(us)es$': \"$1\",\n 's$': \"\"\n }\n const irregular: { [key: string]: string } = {\n 'move': 'moves',\n 'foot': 'feet',\n 'goose': 'geese',\n 'sex': 'sexes',\n 'child': 'children',\n 'man': 'men',\n 'tooth': 'teeth',\n 'person': 'people'\n }\n const uncountable: string[] = [\n 'sheep',\n 'fish',\n 'deer',\n 'moose',\n 'series',\n 'species',\n 'money',\n 'rice',\n 'information',\n 'equipment',\n 'bison',\n 'cod',\n 'offspring',\n 'pike',\n 'salmon',\n 'shrimp',\n 'swine',\n 'trout',\n 'aircraft',\n 'hovercraft',\n 'spacecraft',\n 'sugar',\n 'tuna',\n 'you',\n 'wood'\n ]\n\n if (uncountable.indexOf(word.toLowerCase()) >= 0) {\n return word\n }\n\n for (const w in irregular) {\n const pattern = new RegExp(`${irregular[w]}$`, 'i')\n const replace = w\n if (pattern.test(word)) {\n return word.replace(pattern, replace)\n }\n }\n\n for (const reg in singular) {\n const pattern = new RegExp(reg, 'i')\n if (pattern.test(word)) {\n return word.replace(pattern, singular[reg])\n }\n }\n return word\n }\n\n}\n\n\n ;({}); // @--end-of-file-for-module=tnp-helpers lib/helpers-strings.ts","/* */\n/* */\n/* */\n \nimport axios, { AxiosResponse } from 'axios';\nimport { Morphi as Firedev } from 'morphi/browser';\n\n/**\n * Blob -> in file transmission storage\n * base64(Blob) -> in file transmission storage (slow)\n * File -> on browser side for easy manipulation, download link\n */\nexport class HelpersBinary {\n\n arrayBufferToBlob(buffer, contentType: Firedev.Http.ContentType) {\n return new Blob([buffer], { type: contentType });\n }\n\n blobToArrayBuffer(blob: Blob) {\n return new Promise((resolve, reject) => {\n const reader = new FileReader();\n reader.addEventListener('loadend', () => {\n resolve(reader.result);\n });\n reader.addEventListener('error', reject); // @ts-ignore\n reader.readAsArrayBuffer(blob);\n });\n }\n\n /**\n * it is revers to base64toBlob\n * @param blob\n * @returns\n */\n blobToBase64(blob: Blob) {\n return new Promise<any>((resolve, _) => {\n const reader = new FileReader();\n reader.onloadend = () => resolve(reader.result); // @ts-ignore\n reader.readAsDataURL(blob);\n });\n }\n\n /**\n * it is revers to blobToBase64()\n * @param base64Data\n * @returns\n */\n base64toBlob(base64Data: string, contentTypeOverride?: Firedev.Http.ContentType) {\n if (!contentTypeOverride) {\n const m = /^data:(.+?);base64,(.+)$/.exec(base64Data);\n if (!m) {\n throw new Error(`[firedev-framework][base64toBlob] Not a base64 blob [${base64Data}]`)\n }\n\n var [__, content_type, file_base64] = m;\n }\n content_type = (contentTypeOverride ? contentTypeOverride : content_type || '') as any;\n base64Data = contentTypeOverride ? base64Data : file_base64;\n const sliceSize = 1024;\n const byteCharacters = atob(base64Data);\n const bytesLength = byteCharacters.length;\n const slicesCount = Math.ceil(bytesLength / sliceSize);\n const byteArrays = new Array(slicesCount);\n\n for (let sliceIndex = 0; sliceIndex < slicesCount; ++sliceIndex) {\n const begin = sliceIndex * sliceSize;\n const end = Math.min(begin + sliceSize, bytesLength);\n\n const bytes = new Array(end - begin);\n\n for (let offset = begin, i = 0; offset < end; ++i, ++offset) {\n bytes[i] = byteCharacters[offset].charCodeAt(0);\n }\n byteArrays[sliceIndex] = new Uint8Array(bytes);\n }\n return new Blob(byteArrays, { type: content_type });\n }\n\n async fileToBlob(file: File) {\n return new Blob([new Uint8Array(await file.arrayBuffer())], { type: file.type })\n };\n\n async blobToFile(blob: Blob, nameForFile = 'my-file-name') {\n if (!nameForFile) {\n nameForFile = nameForFile + (new Date()).getTime();\n // @ts-ignore\n return new File([blob], nameForFile)\n };\n }\n\n async getBlobFrom(url): Promise<Blob> {\n const response: AxiosResponse<Blob> = await axios({\n url,\n method: 'get',\n responseType: 'blob'\n });\n return response.data;\n }\n\n numValue(pixelsCss: string) {\n\n return parseInt(pixelsCss.replace('px', ''));\n }\n\n}\n\n ;({}); // @--end-of-file-for-module=tnp-helpers lib/helpers-binary.ts","\nexport class HelpersNumber {\n /**\n * @deprecated\n * use _.random()\n */\n randomInteger = (max, min) => Math.round(Math.random() * (max - min)) + min;\n\n\n}\n\n ;({}); // @--end-of-file-for-module=tnp-helpers lib/helpers-numbers.ts","\n\n\nconst key = Symbol('[firedev-helpers] helper browser key')\n\nexport class HelpersBrowser {\n\n private static callbacks = [];\n static onInit(callback: (ins: HelpersBrowser) => any) {\n this.callbacks.push(callback);\n }\n\n get win() {\n let win = window;\n return win;\n }\n\n private get tabIdSessionStorage() {\n return Number(this.win.sessionStorage?.tabId) || 0;\n }\n\n readonly tabId: number;\n\n private static inst: HelpersBrowser;\n init = (() => {\n const win = this.win;\n\n if (!win[key]) {\n win[key] = new HelpersBrowser(win);\n }\n HelpersBrowser.inst = win[key];\n })();\n\n private constructor(win: Window) {\n\n win.addEventListener(\"beforeunload\", (e) => {\n win.sessionStorage.tabId = this.tabId;\n return null;\n });\n\n setTimeout(() => {\n\n if (win.sessionStorage?.tabId) {\n // @ts-ignore\n this.tabId = Number(win.sessionStorage.tabId);\n win.sessionStorage.removeItem(\"tabId\");\n }\n else {\n // @ts-ignore\n this.tabId = Math.floor(Math.random() * 1000000) + (new Date()).getTime();\n }\n HelpersBrowser.callbacks.forEach((c) => {\n c(this);\n });\n })\n\n\n }\n\n\n static get instance() {\n return HelpersBrowser.inst;\n }\n\n}\n\n\n\n\n\n\n ;({}); // @--end-of-file-for-module=tnp-helpers lib/for-browser/helpers-browser.ts","import { _ } from 'tnp-core/browser';\nimport { HelpersArrayObj } from './helpers-array-obj';\nimport { HelpersStringsRegexes } from './helpers-strings-regexes';\nimport { HelpersStrings } from './helpers-strings';\nimport { HelpersBinary} from './helpers-binary';\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n \nimport { config, ConfigModels } from 'tnp-config/browser';\nimport { Helpers, Validators } from './index';\nimport { CLASS } from 'typescript-class-helpers/browser';\nimport { Morphi } from 'morphi/browser';\nimport { CoreHelpers } from 'tnp-core/browser';\nimport { HelpersNumber } from './helpers-numbers';\n\nimport { HelpersBrowser } from './for-browser/helpers-browser';\nimport { HelpersAngular } from './for-browser/angular.helper';\n\n\n/**\n * Mixing for multiclass inheritance\n *\n * How to use It:\n *\n * class Wolverine {}\n * class Jean {}\n * export class Child {}\n * export interface MyChild implements Wolverine, Jean {}\n * applyMixing(Child,[Wolverine, Jean]);\n *\n * @param derivedCtor Target Class\n * @param baseCtors Base Classes\n */\nexport function applyMixins(derivedCtor: any, baseCtors: any[]) {\n baseCtors.forEach(baseCtor => {\n Object.getOwnPropertyNames(baseCtor.prototype).forEach(name => {\n Object.defineProperty(derivedCtor.prototype, name, Object.getOwnPropertyDescriptor(baseCtor.prototype, name));\n });\n });\n}\n\n// @ts-ignore\nexport class HelpersFiredev extends CoreHelpers {\n\n private static _instance: HelpersFiredev & CoreHelpers;\n public static get Instance() {\n if (!HelpersFiredev._instance) {\n HelpersFiredev._instance = new HelpersFiredev();\n }\n return HelpersFiredev._instance;\n }\n\n private constructor(\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n \n public arrays = new HelpersArrayObj(),\n public strings = new HelpersStrings(),\n public numbers = new HelpersNumber(),\n public binary = new HelpersBinary(),\n\n public browser = HelpersBrowser.instance,\n public ng = HelpersAngular\n\n ) {\n super();\n }\n\n CLIWRAP(f: Function, name: string) {\n CLASS.setName(f, name);\n return f;\n }\n\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n \n\n/* */\n/* */\n/* */\n/* */\n \n\n async isElevated() {\n/* */\n/* */\n/* */\n/* */\n \n }\n\n/* */\n/* */\n/* */\n/* */\n \n\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n \n\n\n\n async mesureExectionInMs(\n description: string,\n functionToExecute: Function,\n ...functionArguments: any[]): Promise<number> {\n var start = new Date()\n await Helpers.runSyncOrAsync(functionToExecute, ...functionArguments);\n //@ts-ignore\n var end = new Date() - start\n if (Morphi.IsBrowser) {\n Helpers.info(`Execution time: ${end.toString()}ms for \"${description}\"`);\n }\n/* */\n/* */\n \n return end;\n }\n\n mesureExectionInMsSync(\n description: string,\n functionToExecute: () => void): number {\n var start = new Date()\n functionToExecute();\n //@ts-ignore\n var end = new Date() - start\n if (Morphi.IsBrowser) {\n Helpers.log(`Execution time: ${end.toString()}ms for \"${description}\"`);\n }\n/* */\n/* */\n \n return end;\n }\n\n waitForCondition(conditionFn: (any) => boolean, howOfftenCheckInMs = 1000) {\n return new Promise(async (resolve, reject) => {\n\n const result = await Helpers.runSyncOrAsync(conditionFn);\n if (result) {\n resolve(void 0)\n } else {\n setTimeout(() => {\n Helpers.waitForCondition(conditionFn, howOfftenCheckInMs).then(() => {\n resolve(void 0);\n })\n }, howOfftenCheckInMs);\n }\n })\n }\n\n getBrowserVerPath(moduleName?: string, websql: boolean = false) {\n/* */\n/* */\n/* */\n/* */\n/* */\n \n }\n\n getMethodName(obj, method): string {\n var methodName = null;\n Object.getOwnPropertyNames(obj).forEach(prop => {\n if (obj[prop] === method) {\n methodName = prop;\n }\n });\n\n if (methodName !== null) {\n return methodName;\n }\n\n var proto = Object.getPrototypeOf(obj);\n if (proto) {\n return Helpers.getMethodName(proto, method);\n }\n return null;\n }\n\n fixWebpackEnv(env: Object) {\n _.forIn(env, (v, k) => {\n const value: string = v as any;\n if (value === 'true') env[k] = true;\n if (value === 'false') env[k] = false;\n })\n }\n\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n \n\n/* */\n/* */\n \n public applyMixins = applyMixins;\n\n isValidIp = Validators.network.isValidIp;\n isValidGitRepuUrl = Validators.git.isValidRepoUrl;\n}\n\n// @ts-ignore\nexport interface HelpersFiredev extends\n HelpersStringsRegexes\n/* */\n/* */\n/* */\n/* */\n \n{ }\n\napplyMixins(HelpersFiredev, [\n HelpersStringsRegexes,\n/* */\n/* */\n/* */\n \n]);\n\n ;({}); // @--end-of-file-for-module=tnp-helpers lib/helpers.ts","\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n \ndeclare const global: any;\nimport { config, LibTypeArr, ConfigModels } from 'tnp-config/browser';\nimport { _, CoreConfig } from 'tnp-core/browser';\nimport { CLASS } from 'typescript-class-helpers/browser';\nimport { Models } from 'tnp-models/browser';\nimport { Morphi } from 'morphi/browser';\nimport { HelpersFiredev } from './helpers';\nimport { EmptyProjectStructure } from './models';\nconst Helpers = HelpersFiredev.Instance;\n\n\n/**\n * @deprecated\n *\n * use BaseProject instead\n */\nexport class Project<T extends Project<any> = any>\n/* */\n/* */\n \n{\n\n public static projects: Project<any>[] = [];\n /**\n * To speed up checking folder I am keeping pathes for alterdy checked folder\n * This may break things that are creating new projects\n */\n public static emptyLocations: string[] = [];\n\n static typeFrom(location: string): ConfigModels.LibType {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n public static unload(project: Project) {\n Project.projects = Project.projects.filter(f => f !== project);\n }\n\n public static From<T = Project<any>>(locationOfProj: string | string[]): T {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n public static nearestTo<T = Project>(\n absoluteLocation: string,\n options?: { type?: ConfigModels.LibType; findGitRoot?: boolean; onlyOutSideNodeModules?: boolean }): T {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n public static allProjectFrom<T = Project>(absoluteLocation: string, stopOnCwd: string = '/') {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n public static DefaultPortByType(type: ConfigModels.LibType): number {\n if (type === 'workspace') { return 5000; }\n if (type === 'angular-client') { return 4300; }\n if (type === 'angular-lib') { return 4250; }\n if (type === 'electron-client') { return 4350; }\n if (type === 'ionic-client') { return 8080; }\n if (type === 'docker') { return 5000; }\n if (type === 'isomorphic-lib') { return 4000; }\n if (type === 'container' || type === 'unknow-npm-project') {\n return;\n }\n }\n\n public static get isBundleMode() {\n if (Helpers.isBrowser) {\n return true;\n }\n/* */\n/* */\n \n }\n\n static get Current(): Project<any> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n\n /**\n * @deprecated\n */\n static get Tnp(): Project<any> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n public static by<T = Project>(\n libraryType: ConfigModels.NewFactoryType,\n version: ConfigModels.FrameworkVersion\n/* */\n/* */\n \n ): T {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n\n\n protected cache = {};\n\n /**\n * Do use this variable for comparatios\n * ONLY FOR VIEWING\n */\n public readonly _type: ConfigModels.LibType;\n public browser: Pick<Project<any>, 'location' | 'name'> = {} as any;\n public location: string;\n public name: string;\n public genericName: string;\n public isWorkspace: boolean;\n public isVscodeExtension: boolean;\n public isDocker: boolean;\n public isSite: boolean;\n public isSiteInStrictMode?: boolean;\n public isSiteInDependencyMode?: boolean;\n public isCoreProject: boolean;\n public isCommandLineToolOnly: boolean;\n public isGenerated: boolean;\n public isGeneratedForRelease: boolean;\n public isWorkspaceChildProject: boolean;\n public isBasedOnOtherProject: boolean;\n public isForRecreation: boolean;\n public isContainer: boolean;\n public isSmartContainer: boolean;\n public isSmartContainerChild: boolean;\n public isContainerWithLinkedProjects: boolean;\n public isContainerChild: boolean;\n public isContainerCoreProject: boolean;\n public isStandaloneProject: boolean;\n public isMonorepo: boolean;\n public isUnknowNpmProject: boolean;\n public isNaviCli: boolean;\n public useFramework: boolean;\n public defaultPort?: number;\n public version: string;\n public lastNpmVersion?: string;\n public _routerTargetHttp?: string;\n public customizableFilesAndFolders: string[];\n public type: ConfigModels.LibType;\n public backupName: string;\n public resources: string[];\n public env?: any;\n public allowedEnvironments: ConfigModels.EnvironmentName[];\n\n public children: T[];\n public smartContainerBuildTarget: T;\n public grandpa: T;\n\n public distribution: T;\n\n public childrenThatAreLibs?: T[];\n\n public childrenThatAreClients?: T[];\n\n public childrenThatAreThirdPartyInNodeModules?: T[];\n\n public parent: T;\n\n public preview: T;\n\n public baseline: T;\n\n\n\n defineProperty<T>(variableName: keyof T, classFn: Function) {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n public setType(this: Project, type: ConfigModels.LibType) {\n // @ts-ignore\n this._type = type;\n }\n public typeIs(this: Project, ...types: ConfigModels.LibType[]) {\n return this._type && types.includes(this._type);\n }\n\n public typeIsNot(this: Project, ...types: ConfigModels.LibType[]) {\n return !this.typeIs(...types);\n }\n\n forEmptyStructure(): EmptyProjectStructure[] {\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n\n}\n\n\n\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n \n\n ;({}); // @--end-of-file-for-module=tnp-helpers lib/project.ts","\n/* */\n/* */\n/* */\n/* */\n/* */\n \nimport { CLI } from 'tnp-cli/browser';\nimport { path, crossPlatformPath } from 'tnp-core/browser';\nimport { config } from 'tnp-config/browser';\nimport { _ } from 'tnp-core/browser';\nimport { HelpersFiredev } from './helpers';\nimport { Models } from 'tnp-models/browser';\n\nconst Helpers = HelpersFiredev.Instance;\n\n\nconst takenPorts = [];\n\nexport class BaseProjectResolver<T> {\n\n protected readonly NPM_PROJECT_KEY = 'npm';\n protected projects: (T & BaseProject)[] = [];\n protected emptyLocations: string[] = [];\n constructor(protected classFn: any) { }\n get allowedTypes(): string[] {\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n get Current(): T {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n /**\n * override this\n */\n typeFrom<T>(location: string): string {\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n\n From(locationOfProject: string | string[]): T {\n\n\n\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n nearestTo(\n absoluteLocation: string,\n options?: { type?: (string | string[]); findGitRoot?: boolean; onlyOutSideNodeModules?: boolean }): T {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n\n unload(project: T) {\n this.projects = this.projects.filter(f => f !== project);\n }\n\n\n allProjectFrom(absoluteLocation: string, stopOnCwd: string = '/') {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n\n}\n\n\nexport class BaseProject<T = any>\n/* */\n/* */\n \n{\n static ins = new BaseProjectResolver<BaseProject>(BaseProject);\n readonly ins: BaseProjectResolver<T>;\n /**\n * it do not need to be realt path\n */\n readonly location: string;\n readonly basename: string;\n get name() {\n return this.packageJSON?.name;\n }\n readonly type: string;\n get version() {\n return this.packageJSON?.version;\n }\n protected readonly packageJSON: Models.npm.IPackageJSON;\n /**\n * only available after executing *this.assignFreePort()*\n */\n readonly port: string;\n\n\n get parent(): T {\n/* */\n/* */\n return (void 0);\n }\n\n get genericName() {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n /**\n * try run but continue when it fails\n * @param command\n * @param options\n * @returns\n */\n tryRunSync(command: string\n/* */\n/* */\n \n ): void {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n pathFor(relativePath: string) {\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n writeJson(relativePath: string, json: object) {\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n\n run(command: string\n/* */\n/* */\n \n ) {\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n outputFrom(command: string\n/* */\n/* */\n \n ) {\n/* */\n/* */\n return (void 0);\n }\n\n remove(relativePath: string, exactPath = true) {\n/* */\n/* */\n return (void 0);\n }\n\n async assignFreePort(startFrom: number = 4200): Promise<Number> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n\n}\n\n\n ;({}); // @--end-of-file-for-module=tnp-helpers lib/base-project.ts","import type { Project } from \"./project\";\n\nexport type EmptyProjectStructure = {\n includeContent?: boolean;\n relativePath: string;\n relativeLinkFrom?: string;\n};\n\nexport type ProjectBuild = { project: Project; appBuild: boolean; };\n\n ;({}); // @--end-of-file-for-module=tnp-helpers lib/models.ts","export * from './validators/validators';\n\nexport { HelpersAngular } from './for-browser/angular.helper';\n\n\nimport { HelpersFiredev as Base } from './helpers';\n\n/**\n * Firedev helpers\n */\nexport const Helpers = Base.Instance;\nexport * from './project';\nexport * from './base-project';\nexport * from './models';\n\n\n ;({}); // @--end-of-file-for-module=tnp-helpers lib/index.ts","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["Helpers","Base"],"mappings":"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"}
1
+ {"version":3,"file":"tnp-helpers.mjs","sources":["../../../tmp-libs-for-bundle/tnp-helpers/projects/tnp-helpers/src/lib/validators/validators-git.ts","../../../tmp-libs-for-bundle/tnp-helpers/projects/tnp-helpers/src/lib/validators/validators-network.ts","../../../tmp-libs-for-bundle/tnp-helpers/projects/tnp-helpers/src/lib/validators/validators.ts","../../../tmp-libs-for-bundle/tnp-helpers/projects/tnp-helpers/src/lib/for-browser/angular.helper.ts","../../../tmp-libs-for-bundle/tnp-helpers/projects/tnp-helpers/src/lib/helpers-array-obj.ts","../../../tmp-libs-for-bundle/tnp-helpers/projects/tnp-helpers/src/lib/helpers-strings-regexes.ts","../../../tmp-libs-for-bundle/tnp-helpers/projects/tnp-helpers/src/lib/helpers-strings.ts","../../../tmp-libs-for-bundle/tnp-helpers/projects/tnp-helpers/src/lib/helpers-numbers.ts","../../../tmp-libs-for-bundle/tnp-helpers/projects/tnp-helpers/src/lib/for-browser/helpers-browser.ts","../../../tmp-libs-for-bundle/tnp-helpers/projects/tnp-helpers/src/lib/helpers.ts","../../../tmp-libs-for-bundle/tnp-helpers/projects/tnp-helpers/src/lib/project.ts","../../../tmp-libs-for-bundle/tnp-helpers/projects/tnp-helpers/src/lib/base-project.ts","../../../tmp-libs-for-bundle/tnp-helpers/projects/tnp-helpers/src/lib/models.ts","../../../tmp-libs-for-bundle/tnp-helpers/projects/tnp-helpers/src/lib/index.ts","../../../tmp-libs-for-bundle/tnp-helpers/projects/tnp-helpers/src/tnp-helpers.ts"],"sourcesContent":["\n\n\nexport namespace ValidatorsGit {\n\n export function isValidRepoUrl(url: string) {\n const regex = /^([A-Za-z0-9]+@|http(|s)\\:\\/\\/)([A-Za-z0-9.]+(:\\d+)?)(?::|\\/)([\\d\\/\\w.-]+?)(\\.git)?$/;\n const res = regex.test(url);\n return res;\n }\n\n}\n\n ;({}); // @--end-of-file-for-module=tnp-helpers lib/validators/validators-git.ts","\n\nimport { _ } from 'tnp-core/browser';\n\nexport namespace ValidatorsNetwork {\n export function isValidIp(ip: string) {\n if (!_.isString(ip)) {\n return false;\n }\n ip = ip.trim();\n if (ip === 'localhost') {\n return true;\n }\n 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)\n }\n}\n\n ;({}); // @--end-of-file-for-module=tnp-helpers lib/validators/validators-network.ts","\n\nimport { ValidatorsGit } from \"./validators-git\";\nimport { ValidatorsNetwork } from \"./validators-network\";\n\nexport namespace Validators {\n export import git = ValidatorsGit;\n export import network = ValidatorsNetwork;\n}\n\n\n ;({}); // @--end-of-file-for-module=tnp-helpers lib/validators/validators.ts","\n\n\nimport { Observable, Subject } from \"rxjs\";\n\nconst componentContextSymbol = Symbol();\nconst componentsDestroy$Subjects = {};\n\n\nexport namespace HelpersAngular {\n\n export class SerializedSubject<T> {\n constructor(\n public id: string\n ) { }\n }\n\n\n function subjectId(destroySubject: Subject<any>): SerializedSubject<any> {\n const id = Math.random().toString(36).substring(2);\n if (!destroySubject[componentContextSymbol]) {\n destroySubject[componentContextSymbol] = new SerializedSubject(id);\n componentsDestroy$Subjects[id] = destroySubject;\n }\n return destroySubject[componentContextSymbol];\n }\n\n /**\n * if you are using this.. please call Helpers.ng.unsubscribe(this.$destroy) in ngOnDestroy();\n */\n export function serialize(destroy$: Subject<any>): SerializedSubject<any> {\n return subjectId(destroy$);\n }\n\n /**\n * if you are using this.. please call Helpers.ng.unsubscribe(this.$destroy) in ngOnDestroy();\n */\n export function deserialize(destroy$: SerializedSubject<any>): Subject<any> {\n if (destroy$?.id) {\n const realDestroySubject = componentsDestroy$Subjects[destroy$.id];\n return realDestroySubject;\n }\n return new Subject();\n }\n\n export function unsubscribe(destroy$: Subject<any>) {\n const destroySubject = subjectId(destroy$);\n if (destroySubject?.id) {\n delete componentsDestroy$Subjects[destroySubject.id];\n delete destroySubject[componentContextSymbol];\n }\n }\n\n\n\n /**\n get properties from scss file\n\n\n import styles from './tasks-ngrx-data.component.scss';\n\n export class ExampleComponent {\n sassFile = sassFile(styles);\n\n async ngOnInit() {\n this.tasksService.getAll();\n console.log(this.sassFile.stringValue('--max-container-size'))\n console.log(this.sassFile.numberValue('--max-container-size'))\n }\n }\n */\n export function sassFile(styles: string) {\n const lines = (styles.split('\\n'));\n return {\n stringValue: (name: string) => {\n for (let index = 0; index < lines.length; index++) {\n const l = lines[index];\n const [varName, value] = l.trim().split(':');\n if (varName === name) {\n return value.replace(';', '');\n }\n }\n },\n numberValue: (name: string): number => {\n for (let index = 0; index < lines.length; index++) {\n const l = lines[index];\n const [varName, value] = l.trim().split(':');\n if (varName === name) {\n return Number(value.replace('px', '').replace(';', ''));\n }\n }\n }\n }\n }\n}\n\n\n\n ;({}); // @--end-of-file-for-module=tnp-helpers lib/for-browser/angular.helper.ts","\n\nimport { _ } from 'tnp-core/browser';\nimport * as fuzzy from 'fuzzy';\n\n\nexport class HelpersArrayObj {\n\n from(s: string | string[]): string[] {\n if (_.isArray(s)) {\n return s;\n }\n if (_.isString(s)) {\n return s.split(' ')\n }\n }\n\n second(arr) {\n if (!Array.isArray(arr) || arr.length < 2) {\n return void 0;\n }\n return arr[1];\n }\n\n arrayMoveElementBefore<T = any>(arr: any[], a: any, b: any, prop?: keyof T) {\n let indexA = prop ? arr.findIndex(elem => elem[prop] === a[prop]) : arr.indexOf(a);\n _.pullAt(arr, indexA);\n let indexB = prop ? arr.findIndex(elem => elem[prop] === b[prop]) : arr.indexOf(b);\n if (indexB === 0) {\n arr.unshift(a);\n } else {\n arr.splice(indexB - 1, 0, a);\n }\n return arr;\n }\n arrayMoveElementAfterB<T = any>(arr: any[], a: any, b: any, prop?: keyof T) {\n let indexA = prop ? arr.findIndex(elem => elem[prop] === a[prop]) : arr.indexOf(a);\n _.pullAt(arr, indexA);\n let indexB = prop ? arr.findIndex(elem => elem[prop] === b[prop]) : arr.indexOf(b);\n if (indexB === arr.length - 1) {\n arr.push(a);\n } else {\n arr.splice(indexB + 1, 0, a);\n }\n return arr;\n }\n\n uniqArray<T = any>(array: any[], uniqueProperty?: (keyof T)) {\n var seen = {};\n return array\n .filter(f => !!f)\n .filter(function (item) {\n return seen.hasOwnProperty(uniqueProperty ? item[uniqueProperty] : item) ? false\n : (seen[uniqueProperty ? item[uniqueProperty] : item] = true);\n }) as T[];\n }\n\n sortKeys(obj) {\n if (_.isArray(obj)) {\n return obj.map(this.sortKeys);\n }\n if (_.isObject(obj)) {\n return _.fromPairs(_.keys(obj).sort().map(key => [key, this.sortKeys(obj[key])]));\n }\n return obj;\n };\n\n /**\n * Fuzzy search\n */\n fuzzy<T = any>(query: string, list: T[], valueFn?: (modelFromList: T) => string) {\n const resultsFuzzy = fuzzy.filter(\n query,\n list.map(k => valueFn ? valueFn(k) : k),\n )\n const resultsFuzzyKebab = fuzzy.filter(\n _.kebabCase(query),\n list.map(k => _.kebabCase((valueFn ? valueFn(k) : k) as any)),\n )\n const matches = resultsFuzzy.map((el) => el.string);\n const matchesKebab = resultsFuzzyKebab.map((el) => el.string);\n\n const results = (resultsFuzzy.length === 0) ? [] : list.filter(k => {\n return matches.includes((valueFn ? valueFn(k) : k) as any);\n })\n\n if (matches.length === 0 && matchesKebab.length > 0) {\n const m = list.find(k => _.kebabCase((valueFn ? valueFn(k) : k) as any) === _.first(matchesKebab));\n results.push(m);\n matches.push((valueFn ? valueFn(m) : m) as any);\n }\n\n return { matches, results };\n }\n\n}\n\n ;({}); // @--end-of-file-for-module=tnp-helpers lib/helpers-array-obj.ts","\n\nimport { _ } from 'tnp-core/browser';\nexport class HelpersStringsRegexes {\n\n\n\n escapeStringForRegEx(s: string) {\n return s.replace(/[-\\/\\\\^$*+?.()|[\\]{}]/g, '\\\\$&');\n }\n\n matchExactOnce(s: string, regex: RegExp): string {\n if (!_.isString(s) || !_.isRegExp(regex)) {\n return void 0;\n }\n const result = s.match(regex);\n if (_.isNil(result)) {\n return void 0;\n }\n return result.length >= 1 ? _.first(result) : void 0;\n }\n\n get regex() {\n return {\n /**\n * mathes\n * xxx.xxx.xxx.xxx\n * xxx.xxx.xxx.xxx:port\n * http://xxx.xxx.xxx.xxx:port\n * http://xxx.xxx.xxx.xxx\n * https://xxx.xxx.xxx.xxx:port\n * https://xxx.xxx.xxx.xxx *\n */\n get forStringWithIpHost() {\n const regex = /(http(s)?\\:\\/\\/)?(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)(\\:[0-9]+)?/;\n return regex;\n },\n /**\n * mathes\n * http://domain.com:port\n * http://domain.com\n * http://domain:port\n * http://domain\n * https://domain.com:port\n * https://domain.com\n * https://domain:port\n * https://domain\n */\n get forStringWithDomainHost() {\n const regex = /(((http(s)?\\:\\/\\/)?[a-zA-Z0-9][a-zA-Z0-9-]{1,61}[a-zA-Z0-9](?:\\.[a-zA-Z]{2,})+(\\:[0-9]+)?)|((http(s)?\\:\\/\\/)[a-zA-Z0-9-]{1,61}))/;\n return regex;\n }\n }\n }\n}\n\n ;({}); // @--end-of-file-for-module=tnp-helpers lib/helpers-strings-regexes.ts","\n\nimport { _ } from 'tnp-core/browser';\nimport { Helpers } from './index';\n\nexport class HelpersStrings {\n\n /**\n * Example:\n *\n * const result = interpolateString(\"I'm {age} years old!\")\n * .withParameters({ age: 29 });\n *\n * const result = interpolateString(\"The {a} says {n}, {n}, {n}!\")\n * .withParameters({ a: 'cow', n: 'moo' });\n *\n *\n * @param value string to interpolate\n * @param parameters object with parametes\n */\n interpolateString<T = any>(value: string) {\n if (typeof value !== 'string') {\n Helpers.warn('[firedev-heleprs] Value for interpolation is not string: ', value);\n return value;\n }\n\n return {\n withParameters(parameters: T) {\n if (typeof parameters !== 'object') {\n Helpers.log(parameters as any);\n Helpers.warn('[firedev-heleprs] Parameters are not a object: ');\n return value;\n }\n return value.replace(/{([^{}]*)}/g, function (a, b) {\n var r = parameters[b];\n return typeof r === 'string' || typeof r === 'number' ? r : a;\n } as any);\n }\n }\n\n }\n\n /**\n *\n * @param pixelsCss exmaple: 100px\n * @returns number value\n */\n numValue(pixelsCss: string) {\n\n return parseInt(pixelsCss.replace('px', ''));\n }\n\n /**\n * examples:\n * 'aa bb bb' => ['aa','bb','cc'],\n * 'aa' => ['aa']\n * ['aa'] => ['aa']\n */\n splitIfNeed(stringOrArr: string | string[]): string[] {\n let res = [];\n if (_.isArray(stringOrArr)) {\n res = stringOrArr.map(s => {\n return s.trim();\n })\n }\n if (_.isString(stringOrArr)) {\n res = stringOrArr.split(/\\s*[\\s,]\\s*/);\n }\n return res.filter(f => !!f && (f.trim() !== ''));\n }\n\n removeDoubleOrMoreEmptyLines(s: string) {\n s = s?.split('\\n').map(f => f.trimRight()).join('\\n');\n return s?.replace(/(\\r\\n|\\r|\\n){2,}/g, '$1\\n');\n }\n\n /**\n *\n * https://stackoverflow.com/a/57129703/1345101\n *\n * Returns the plural of an English word.\n *\n * @export\n * @param {string} word\n * @param {number} [amount]\n * @returns {string}\n */\n plural(word: string, amount?: number): string {\n if (amount !== undefined && amount === 1) {\n return word\n }\n const plural: { [key: string]: string } = {\n '(quiz)$': \"$1zes\",\n '^(ox)$': \"$1en\",\n '([m|l])ouse$': \"$1ice\",\n '(matr|vert|ind)ix|ex$': \"$1ices\",\n '(x|ch|ss|sh)$': \"$1es\",\n '([^aeiouy]|qu)y$': \"$1ies\",\n '(hive)$': \"$1s\",\n '(?:([^f])fe|([lr])f)$': \"$1$2ves\",\n '(shea|lea|loa|thie)f$': \"$1ves\",\n 'sis$': \"ses\",\n '([ti])um$': \"$1a\",\n '(tomat|potat|ech|her|vet)o$': \"$1oes\",\n '(bu)s$': \"$1ses\",\n '(alias)$': \"$1es\",\n '(octop)us$': \"$1i\",\n '(ax|test)is$': \"$1es\",\n '(us)$': \"$1es\",\n '([^s]+)$': \"$1s\"\n }\n const irregular: { [key: string]: string } = {\n 'move': 'moves',\n 'foot': 'feet',\n 'goose': 'geese',\n 'sex': 'sexes',\n 'child': 'children',\n 'man': 'men',\n 'tooth': 'teeth',\n 'person': 'people'\n }\n const uncountable: string[] = [\n 'sheep',\n 'fish',\n 'deer',\n 'moose',\n 'series',\n 'species',\n 'money',\n 'rice',\n 'information',\n 'equipment',\n 'bison',\n 'cod',\n 'offspring',\n 'pike',\n 'salmon',\n 'shrimp',\n 'swine',\n 'trout',\n 'aircraft',\n 'hovercraft',\n 'spacecraft',\n 'sugar',\n 'tuna',\n 'you',\n 'wood'\n ]\n\n if (uncountable.indexOf(word.toLowerCase()) >= 0) {\n return word\n }\n\n for (const w in irregular) {\n const pattern = new RegExp(`${w}$`, 'i')\n const replace = irregular[w]\n if (pattern.test(word)) {\n return word.replace(pattern, replace)\n }\n }\n\n for (const reg in plural) {\n const pattern = new RegExp(reg, 'i')\n if (pattern.test(word)) {\n return word.replace(pattern, plural[reg])\n }\n }\n return word\n }\n\n\n /**\n * https://stackoverflow.com/a/57129703/1345101\n *\n * Returns the singular of an English word.\n *\n * @export\n * @param {string} word\n * @param {number} [amount]\n * @returns {string}\n */\n singular(word: string, amount?: number): string {\n if (amount !== undefined && amount !== 1) {\n return word\n }\n const singular: { [key: string]: string } = {\n '(quiz)zes$': \"$1\",\n '(matr)ices$': \"$1ix\",\n '(vert|ind)ices$': \"$1ex\",\n '^(ox)en$': \"$1\",\n '(alias)es$': \"$1\",\n '(octop|vir)i$': \"$1us\",\n '(cris|ax|test)es$': \"$1is\",\n '(shoe)s$': \"$1\",\n '(o)es$': \"$1\",\n '(bus)es$': \"$1\",\n '([m|l])ice$': \"$1ouse\",\n '(x|ch|ss|sh)es$': \"$1\",\n '(m)ovies$': \"$1ovie\",\n '(s)eries$': \"$1eries\",\n '([^aeiouy]|qu)ies$': \"$1y\",\n '([lr])ves$': \"$1f\",\n '(tive)s$': \"$1\",\n '(hive)s$': \"$1\",\n '(li|wi|kni)ves$': \"$1fe\",\n '(shea|loa|lea|thie)ves$': \"$1f\",\n '(^analy)ses$': \"$1sis\",\n '((a)naly|(b)a|(d)iagno|(p)arenthe|(p)rogno|(s)ynop|(t)he)ses$': \"$1$2sis\",\n '([ti])a$': \"$1um\",\n '(n)ews$': \"$1ews\",\n '(h|bl)ouses$': \"$1ouse\",\n '(corpse)s$': \"$1\",\n '(us)es$': \"$1\",\n 's$': \"\"\n }\n const irregular: { [key: string]: string } = {\n 'move': 'moves',\n 'foot': 'feet',\n 'goose': 'geese',\n 'sex': 'sexes',\n 'child': 'children',\n 'man': 'men',\n 'tooth': 'teeth',\n 'person': 'people'\n }\n const uncountable: string[] = [\n 'sheep',\n 'fish',\n 'deer',\n 'moose',\n 'series',\n 'species',\n 'money',\n 'rice',\n 'information',\n 'equipment',\n 'bison',\n 'cod',\n 'offspring',\n 'pike',\n 'salmon',\n 'shrimp',\n 'swine',\n 'trout',\n 'aircraft',\n 'hovercraft',\n 'spacecraft',\n 'sugar',\n 'tuna',\n 'you',\n 'wood'\n ]\n\n if (uncountable.indexOf(word.toLowerCase()) >= 0) {\n return word\n }\n\n for (const w in irregular) {\n const pattern = new RegExp(`${irregular[w]}$`, 'i')\n const replace = w\n if (pattern.test(word)) {\n return word.replace(pattern, replace)\n }\n }\n\n for (const reg in singular) {\n const pattern = new RegExp(reg, 'i')\n if (pattern.test(word)) {\n return word.replace(pattern, singular[reg])\n }\n }\n return word\n }\n\n}\n\n\n ;({}); // @--end-of-file-for-module=tnp-helpers lib/helpers-strings.ts","\n\n\nexport class HelpersNumber {\n /**\n * @deprecated\n * use _.random()\n */\n randomInteger = (max, min) => Math.round(Math.random() * (max - min)) + min;\n\n\n}\n\n ;({}); // @--end-of-file-for-module=tnp-helpers lib/helpers-numbers.ts","\n\n\n\n\nconst key = Symbol('[firedev-helpers] helper browser key')\n\nexport class HelpersBrowser {\n\n private static callbacks = [];\n static onInit(callback: (ins: HelpersBrowser) => any) {\n this.callbacks.push(callback);\n }\n\n get win() {\n let win = window;\n return win;\n }\n\n private get tabIdSessionStorage() {\n return Number(this.win.sessionStorage?.tabId) || 0;\n }\n\n readonly tabId: number;\n\n private static inst: HelpersBrowser;\n init = (() => {\n const win = this.win;\n\n if (!win[key]) {\n win[key] = new HelpersBrowser(win);\n }\n HelpersBrowser.inst = win[key];\n })();\n\n private constructor(win: Window) {\n\n win.addEventListener(\"beforeunload\", (e) => {\n win.sessionStorage.tabId = this.tabId;\n return null;\n });\n\n setTimeout(() => {\n\n if (win.sessionStorage?.tabId) {\n // @ts-ignore\n this.tabId = Number(win.sessionStorage.tabId);\n win.sessionStorage.removeItem(\"tabId\");\n }\n else {\n // @ts-ignore\n this.tabId = Math.floor(Math.random() * 1000000) + (new Date()).getTime();\n }\n HelpersBrowser.callbacks.forEach((c) => {\n c(this);\n });\n })\n\n\n }\n\n\n static get instance() {\n return HelpersBrowser.inst;\n }\n\n}\n\n\n\n\n\n\n ;({}); // @--end-of-file-for-module=tnp-helpers lib/for-browser/helpers-browser.ts","\n\nimport { _ } from 'tnp-core/browser';\nimport { HelpersArrayObj } from './helpers-array-obj';\nimport { HelpersStringsRegexes } from './helpers-strings-regexes';\nimport { HelpersStrings } from './helpers-strings';\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n \nimport { config, ConfigModels } from 'tnp-config/browser';\nimport { Helpers, Validators } from './index';\nimport { CLASS } from 'typescript-class-helpers/browser';\nimport { CoreHelpers } from 'tnp-core/browser';\nimport { HelpersNumber } from './helpers-numbers';\n\nimport { HelpersBrowser } from './for-browser/helpers-browser';\nimport { HelpersAngular } from './for-browser/angular.helper';\n\n\n/**\n * Mixing for multiclass inheritance\n *\n * How to use It:\n *\n * class Wolverine {}\n * class Jean {}\n * export class Child {}\n * export interface MyChild implements Wolverine, Jean {}\n * applyMixing(Child,[Wolverine, Jean]);\n *\n * @param derivedCtor Target Class\n * @param baseCtors Base Classes\n */\nexport function applyMixins(derivedCtor: any, baseCtors: any[]) {\n baseCtors.forEach(baseCtor => {\n Object.getOwnPropertyNames(baseCtor.prototype).forEach(name => {\n Object.defineProperty(derivedCtor.prototype, name, Object.getOwnPropertyDescriptor(baseCtor.prototype, name));\n });\n });\n}\n\n// @ts-ignore\nexport class HelpersFiredev extends CoreHelpers {\n\n private static _instance: HelpersFiredev & CoreHelpers;\n public static get Instance() {\n if (!HelpersFiredev._instance) {\n HelpersFiredev._instance = new HelpersFiredev();\n }\n return HelpersFiredev._instance;\n }\n\n private constructor(\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n \n public arrays = new HelpersArrayObj(),\n public strings = new HelpersStrings(),\n public numbers = new HelpersNumber(),\n\n public browser = HelpersBrowser.instance,\n public ng = HelpersAngular\n\n ) {\n super();\n }\n\n CLIWRAP(f: Function, name: string) {\n CLASS.setName(f, name);\n return f;\n }\n\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n \n\n/* */\n/* */\n/* */\n/* */\n \n\n async isElevated() {\n/* */\n/* */\n/* */\n/* */\n \n }\n\n/* */\n/* */\n/* */\n/* */\n \n\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n \n\n\n\n async mesureExectionInMs(\n description: string,\n functionToExecute: Function,\n ...functionArguments: any[]): Promise<number> {\n var start = new Date()\n await Helpers.runSyncOrAsync(functionToExecute, ...functionArguments);\n //@ts-ignore\n var end = new Date() - start\n if (Helpers.isBrowser) {\n Helpers.info(`Execution time: ${end.toString()}ms for \"${description}\"`);\n }\n/* */\n/* */\n \n return end;\n }\n\n mesureExectionInMsSync(\n description: string,\n functionToExecute: () => void): number {\n var start = new Date()\n functionToExecute();\n //@ts-ignore\n var end = new Date() - start\n if (Helpers.isBrowser) {\n Helpers.log(`Execution time: ${end.toString()}ms for \"${description}\"`);\n }\n/* */\n/* */\n \n return end;\n }\n\n waitForCondition(conditionFn: (any) => boolean, howOfftenCheckInMs = 1000) {\n return new Promise(async (resolve, reject) => {\n\n const result = await Helpers.runSyncOrAsync(conditionFn);\n if (result) {\n resolve(void 0)\n } else {\n setTimeout(() => {\n Helpers.waitForCondition(conditionFn, howOfftenCheckInMs).then(() => {\n resolve(void 0);\n })\n }, howOfftenCheckInMs);\n }\n })\n }\n\n getBrowserVerPath(moduleName?: string, websql: boolean = false) {\n/* */\n/* */\n/* */\n/* */\n/* */\n \n }\n\n getMethodName(obj, method): string {\n var methodName = null;\n Object.getOwnPropertyNames(obj).forEach(prop => {\n if (obj[prop] === method) {\n methodName = prop;\n }\n });\n\n if (methodName !== null) {\n return methodName;\n }\n\n var proto = Object.getPrototypeOf(obj);\n if (proto) {\n return Helpers.getMethodName(proto, method);\n }\n return null;\n }\n\n fixWebpackEnv(env: Object) {\n _.forIn(env, (v, k) => {\n const value: string = v as any;\n if (value === 'true') env[k] = true;\n if (value === 'false') env[k] = false;\n })\n }\n\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n \n\n/* */\n/* */\n \n public applyMixins = applyMixins;\n\n isValidIp = Validators.network.isValidIp;\n isValidGitRepuUrl = Validators.git.isValidRepoUrl;\n}\n\n// @ts-ignore\nexport interface HelpersFiredev extends\n HelpersStringsRegexes\n/* */\n/* */\n/* */\n/* */\n \n{ }\n\napplyMixins(HelpersFiredev, [\n HelpersStringsRegexes,\n/* */\n/* */\n/* */\n \n]);\n\n ;({}); // @--end-of-file-for-module=tnp-helpers lib/helpers.ts","\n\n\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n \ndeclare const global: any;\nimport { config, LibTypeArr, ConfigModels } from 'tnp-config/browser';\nimport { _, CoreConfig } from 'tnp-core/browser';\nimport { CLASS } from 'typescript-class-helpers/browser';\nimport { HelpersFiredev } from './helpers';\nimport { EmptyProjectStructure } from './models';\nconst Helpers = HelpersFiredev.Instance;\n\n\n/**\n * @deprecated\n *\n * use BaseProject instead\n */\nexport class Project<T extends Project<any> = any>\n/* */\n/* */\n \n{\n\n public static projects: Project<any>[] = [];\n /**\n * To speed up checking folder I am keeping pathes for alterdy checked folder\n * This may break things that are creating new projects\n */\n public static emptyLocations: string[] = [];\n\n static typeFrom(location: string): ConfigModels.LibType {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n public static unload(project: Project) {\n Project.projects = Project.projects.filter(f => f !== project);\n }\n\n public static From<T = Project<any>>(locationOfProj: string | string[]): T {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n public static nearestTo<T = Project>(\n absoluteLocation: string,\n options?: { type?: ConfigModels.LibType; findGitRoot?: boolean; onlyOutSideNodeModules?: boolean }): T {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n public static allProjectFrom<T = Project>(absoluteLocation: string, stopOnCwd: string = '/') {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n public static DefaultPortByType(type: ConfigModels.LibType): number {\n if (type === 'docker') { return 5000; }\n if (type === 'isomorphic-lib') { return 4000; }\n if (type === 'container' || type === 'unknow-npm-project') {\n return;\n }\n }\n\n public static get isBundleMode() {\n if (Helpers.isBrowser) {\n return true;\n }\n/* */\n/* */\n \n }\n\n static get Current(): Project<any> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n\n /**\n * @deprecated\n */\n static get Tnp(): Project<any> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n public static by<T = Project>(\n libraryType: ConfigModels.NewFactoryType,\n version: ConfigModels.FrameworkVersion\n/* */\n/* */\n \n ): T {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n\n\n protected cache = {};\n\n /**\n * Do use this variable for comparatios\n * ONLY FOR VIEWING\n */\n public readonly _type: ConfigModels.LibType;\n public browser: Pick<Project<any>, 'location' | 'name'> = {} as any;\n public location: string;\n public name: string;\n public genericName: string;\n public isVscodeExtension: boolean;\n public isDocker: boolean;\n public isCoreProject: boolean;\n public isCommandLineToolOnly: boolean;\n public isGeneratedForRelease: boolean;\n public isForRecreation: boolean;\n public isContainer: boolean;\n public isSmartContainer: boolean;\n public isSmartContainerChild: boolean;\n public isContainerWithLinkedProjects: boolean;\n public isContainerChild: boolean;\n public isContainerCoreProject: boolean;\n public isStandaloneProject: boolean;\n public isMonorepo: boolean;\n public isUnknowNpmProject: boolean;\n public isNaviCli: boolean;\n public useFramework: boolean;\n public defaultPort?: number;\n public version: string;\n public lastNpmVersion?: string;\n public type: ConfigModels.LibType;\n public backupName: string;\n public resources: string[];\n public env?: any;\n public allowedEnvironments: ConfigModels.EnvironmentName[];\n\n public children: T[];\n public smartContainerBuildTarget: T;\n public grandpa: T;\n\n public distribution: T;\n\n public childrenThatAreLibs?: T[];\n\n public childrenThatAreThirdPartyInNodeModules?: T[];\n\n public parent: T;\n\n\n\n\n defineProperty<T>(variableName: keyof T, classFn: Function) {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n public setType(this: Project, type: ConfigModels.LibType) {\n // @ts-ignore\n this._type = type;\n }\n public typeIs(this: Project, ...types: ConfigModels.LibType[]) {\n return this._type && types.includes(this._type);\n }\n\n public typeIsNot(this: Project, ...types: ConfigModels.LibType[]) {\n return !this.typeIs(...types);\n }\n\n forEmptyStructure(): EmptyProjectStructure[] {\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n\n}\n\n\n\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n \n\n ;({}); // @--end-of-file-for-module=tnp-helpers lib/project.ts","\n\n\n/* */\n/* */\n/* */\n/* */\n/* */\n \nimport { CLI } from 'tnp-cli/browser';\nimport { path, crossPlatformPath } from 'tnp-core/browser';\nimport { config } from 'tnp-config/browser';\nimport { _ } from 'tnp-core/browser';\nimport { HelpersFiredev } from './helpers';\nimport { Models } from 'tnp-models/browser';\n\nconst Helpers = HelpersFiredev.Instance;\n\n\nconst takenPorts = [];\n\nexport class BaseProjectResolver<T> {\n\n protected readonly NPM_PROJECT_KEY = 'npm';\n protected projects: (T & BaseProject)[] = [];\n protected emptyLocations: string[] = [];\n constructor(protected classFn: any) { }\n get allowedTypes(): string[] {\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n get Current(): T {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n /**\n * override this\n */\n typeFrom<T>(location: string): string {\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n\n From(locationOfProject: string | string[]): T {\n\n\n\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n nearestTo(\n absoluteLocation: string,\n options?: { type?: (string | string[]); findGitRoot?: boolean; onlyOutSideNodeModules?: boolean }): T {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n\n unload(project: T) {\n this.projects = this.projects.filter(f => f !== project);\n }\n\n\n allProjectFrom(absoluteLocation: string, stopOnCwd: string = '/') {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n\n}\n\n\nexport class BaseProject<T = any>\n/* */\n/* */\n \n{\n static ins = new BaseProjectResolver<BaseProject>(BaseProject);\n readonly ins: BaseProjectResolver<T>;\n /**\n * it do not need to be realt path\n */\n readonly location: string;\n readonly basename: string;\n get name() {\n return this.packageJSON?.name;\n }\n readonly type: string;\n get version() {\n return this.packageJSON?.version;\n }\n protected readonly packageJSON: Models.npm.IPackageJSON;\n /**\n * only available after executing *this.assignFreePort()*\n */\n readonly port: string;\n\n\n get parent(): T {\n/* */\n/* */\n return (void 0);\n }\n\n get genericName() {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n /**\n * try run but continue when it fails\n * @param command\n * @param options\n * @returns\n */\n tryRunSync(command: string\n/* */\n/* */\n \n ): void {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n pathFor(relativePath: string) {\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n writeJson(relativePath: string, json: object) {\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n\n run(command: string\n/* */\n/* */\n \n ) {\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n outputFrom(command: string\n/* */\n/* */\n \n ) {\n/* */\n/* */\n return (void 0);\n }\n\n remove(relativePath: string, exactPath = true) {\n/* */\n/* */\n return (void 0);\n }\n\n async assignFreePort(startFrom: number = 4200): Promise<Number> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n\n}\n\n\n ;({}); // @--end-of-file-for-module=tnp-helpers lib/base-project.ts","\n\nimport type { Project } from \"./project\";\n\nexport type EmptyProjectStructure = {\n includeContent?: boolean;\n relativePath: string;\n relativeLinkFrom?: string;\n};\n\nexport type ProjectBuild = { project: Project; appBuild: boolean; };\n\n ;({}); // @--end-of-file-for-module=tnp-helpers lib/models.ts","\n\nexport * from './validators/validators';\n\nexport { HelpersAngular } from './for-browser/angular.helper';\n\n\nimport { HelpersFiredev as Base } from './helpers';\n\n/**\n * Firedev helpers\n */\nexport const Helpers = Base.Instance;\nexport * from './project';\nexport * from './base-project';\nexport * from './models';\n\n\n ;({}); // @--end-of-file-for-module=tnp-helpers lib/index.ts","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["Helpers","Base"],"mappings":"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"}
@@ -2,7 +2,6 @@
2
2
  import { HelpersArrayObj } from './helpers-array-obj';
3
3
  import { HelpersStringsRegexes } from './helpers-strings-regexes';
4
4
  import { HelpersStrings } from './helpers-strings';
5
- import { HelpersBinary } from './helpers-binary';
6
5
  import { Validators } from './index';
7
6
  import { CoreHelpers } from 'tnp-core/browser';
8
7
  import { HelpersNumber } from './helpers-numbers';
@@ -27,7 +26,6 @@ export declare class HelpersFiredev extends CoreHelpers {
27
26
  arrays: HelpersArrayObj;
28
27
  strings: HelpersStrings;
29
28
  numbers: HelpersNumber;
30
- binary: HelpersBinary;
31
29
  browser: HelpersBrowser;
32
30
  ng: typeof HelpersAngular;
33
31
  private static _instance;
@@ -40,18 +40,11 @@ export declare class Project<T extends Project<any> = any> {
40
40
  location: string;
41
41
  name: string;
42
42
  genericName: string;
43
- isWorkspace: boolean;
44
43
  isVscodeExtension: boolean;
45
44
  isDocker: boolean;
46
- isSite: boolean;
47
- isSiteInStrictMode?: boolean;
48
- isSiteInDependencyMode?: boolean;
49
45
  isCoreProject: boolean;
50
46
  isCommandLineToolOnly: boolean;
51
- isGenerated: boolean;
52
47
  isGeneratedForRelease: boolean;
53
- isWorkspaceChildProject: boolean;
54
- isBasedOnOtherProject: boolean;
55
48
  isForRecreation: boolean;
56
49
  isContainer: boolean;
57
50
  isSmartContainer: boolean;
@@ -67,8 +60,6 @@ export declare class Project<T extends Project<any> = any> {
67
60
  defaultPort?: number;
68
61
  version: string;
69
62
  lastNpmVersion?: string;
70
- _routerTargetHttp?: string;
71
- customizableFilesAndFolders: string[];
72
63
  type: ConfigModels.LibType;
73
64
  backupName: string;
74
65
  resources: string[];
@@ -79,11 +70,8 @@ export declare class Project<T extends Project<any> = any> {
79
70
  grandpa: T;
80
71
  distribution: T;
81
72
  childrenThatAreLibs?: T[];
82
- childrenThatAreClients?: T[];
83
73
  childrenThatAreThirdPartyInNodeModules?: T[];
84
74
  parent: T;
85
- preview: T;
86
- baseline: T;
87
75
  defineProperty<T>(variableName: keyof T, classFn: Function): any;
88
76
  setType(this: Project, type: ConfigModels.LibType): void;
89
77
  typeIs(this: Project, ...types: ConfigModels.LibType[]): boolean;