tnp-helpers 16.5.1 → 16.5.3

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 (40) hide show
  1. package/assets/shared/shared_folder_info.txt +1 -1
  2. package/browser/esm2022/lib/base-project.mjs +6 -1
  3. package/browser/esm2022/lib/for-browser/helpers-browser.mjs +3 -1
  4. package/browser/esm2022/lib/helpers-strings.mjs +8 -1
  5. package/browser/esm2022/lib/project.mjs +25 -1
  6. package/browser/fesm2022/tnp-helpers.mjs +38 -0
  7. package/browser/fesm2022/tnp-helpers.mjs.map +1 -1
  8. package/browser/lib/project.d.ts +1 -0
  9. package/client/esm2022/lib/base-project.mjs +6 -1
  10. package/client/esm2022/lib/for-browser/helpers-browser.mjs +3 -1
  11. package/client/esm2022/lib/helpers-strings.mjs +8 -1
  12. package/client/esm2022/lib/project.mjs +25 -1
  13. package/client/fesm2022/tnp-helpers.mjs +38 -0
  14. package/client/fesm2022/tnp-helpers.mjs.map +1 -1
  15. package/client/lib/project.d.ts +1 -0
  16. package/client/package.json +32 -32
  17. package/lib/base-project.js +1 -0
  18. package/lib/base-project.js.map +1 -1
  19. package/lib/for-backend/helpers-file-folders.backend.js +1 -1
  20. package/lib/for-backend/helpers-file-folders.backend.js.map +1 -1
  21. package/lib/for-backend/helpers-process.backend.d.ts +3 -1
  22. package/lib/for-backend/helpers-process.backend.js +6 -5
  23. package/lib/for-backend/helpers-process.backend.js.map +1 -1
  24. package/lib/for-browser/angular.helper.js +3 -3
  25. package/lib/old/base-component.js +3 -3
  26. package/lib/old/base-formly-component.js +3 -3
  27. package/lib/old/dual-component-ctrl.js +3 -3
  28. package/lib/project.d.ts +1 -0
  29. package/lib/project.js +40 -0
  30. package/lib/project.js.map +1 -1
  31. package/package.json +4 -4
  32. package/src.d.ts +6 -0
  33. package/tmp-environment.json +36 -37
  34. package/websql/esm2022/lib/base-project.mjs +7 -1
  35. package/websql/esm2022/lib/for-browser/helpers-browser.mjs +3 -1
  36. package/websql/esm2022/lib/helpers-strings.mjs +8 -1
  37. package/websql/esm2022/lib/project.mjs +25 -1
  38. package/websql/fesm2022/tnp-helpers.mjs +39 -0
  39. package/websql/fesm2022/tnp-helpers.mjs.map +1 -1
  40. package/websql/lib/project.d.ts +1 -0
@@ -297,6 +297,7 @@ class HelpersStrings {
297
297
  * @returns number value
298
298
  */
299
299
  numValue(pixelsCss) {
300
+ /* \/\/ tslint:disable\-next\-line:radix */
300
301
  return parseInt(pixelsCss.replace('px', ''));
301
302
  }
302
303
  /**
@@ -393,9 +394,11 @@ class HelpersStrings {
393
394
  'you',
394
395
  'wood'
395
396
  ];
397
+ /* \/\/ save some time in the case that singular and plural are the same */
396
398
  if (uncountable.indexOf(word.toLowerCase()) >= 0) {
397
399
  return word;
398
400
  }
401
+ /* \/\/ check for irregular forms */
399
402
  for (const w in irregular) {
400
403
  const pattern = new RegExp(`${w}$`, 'i');
401
404
  const replace = irregular[w];
@@ -403,6 +406,7 @@ class HelpersStrings {
403
406
  return word.replace(pattern, replace);
404
407
  }
405
408
  }
409
+ /* \/\/ check for matches using regular expressions */
406
410
  for (const reg in plural) {
407
411
  const pattern = new RegExp(reg, 'i');
408
412
  if (pattern.test(word)) {
@@ -492,9 +496,11 @@ class HelpersStrings {
492
496
  'you',
493
497
  'wood'
494
498
  ];
499
+ /* \/\/ save some time in the case that singular and plural are the same */
495
500
  if (uncountable.indexOf(word.toLowerCase()) >= 0) {
496
501
  return word;
497
502
  }
503
+ /* \/\/ check for irregular forms */
498
504
  for (const w in irregular) {
499
505
  const pattern = new RegExp(`${irregular[w]}$`, 'i');
500
506
  const replace = w;
@@ -502,6 +508,7 @@ class HelpersStrings {
502
508
  return word.replace(pattern, replace);
503
509
  }
504
510
  }
511
+ /* \/\/ check for matches using regular expressions */
505
512
  for (const reg in singular) {
506
513
  const pattern = new RegExp(reg, 'i');
507
514
  if (pattern.test(word)) {
@@ -526,6 +533,8 @@ class HelpersNumber {
526
533
  ;
527
534
  ({}); // @--end-of-file-for-module=tnp-helpers lib/helpers-numbers.ts
528
535
 
536
+ /* \/\/ session tab it */
537
+ /* \/\/ realtime session */
529
538
  const key = Symbol('[firedev-helpers] helper browser key');
530
539
  class HelpersBrowser {
531
540
  static { this.callbacks = []; }
@@ -865,6 +874,7 @@ applyMixins(HelpersFiredev, [
865
874
  /* */
866
875
  /* */
867
876
  const Helpers$2 = HelpersFiredev.Instance;
877
+ const takenPorts$1 = [];
868
878
  /**
869
879
  * @deprecated
870
880
  *
@@ -1206,6 +1216,29 @@ class Project {
1206
1216
  typeIsNot(...types) {
1207
1217
  return !this.typeIs(...types);
1208
1218
  }
1219
+ async assignFreePort(startFrom, howManyFreePortsAfterThatPort = 0) {
1220
+ /* */
1221
+ /* */
1222
+ /* */
1223
+ /* */
1224
+ /* */
1225
+ /* */
1226
+ /* */
1227
+ /* */
1228
+ /* */
1229
+ /* */
1230
+ /* */
1231
+ /* */
1232
+ /* */
1233
+ /* */
1234
+ /* */
1235
+ /* */
1236
+ /* */
1237
+ /* */
1238
+ /* */
1239
+ /* */
1240
+ return (void 0);
1241
+ }
1209
1242
  forEmptyStructure() {
1210
1243
  /* */
1211
1244
  /* */
@@ -1258,6 +1291,7 @@ class BaseProjectResolver {
1258
1291
  }
1259
1292
  get allowedTypes() {
1260
1293
  return [this.NPM_PROJECT_KEY];
1294
+ /* \/\/ throw `Please override this getter \[allowedTypes\] in your child class or \$\{CLI\.chalk\.bold\(config\.frameworkName\)\}`; */
1261
1295
  }
1262
1296
  get Current() {
1263
1297
  /* */
@@ -1285,6 +1319,9 @@ class BaseProjectResolver {
1285
1319
  return (void 0);
1286
1320
  }
1287
1321
  From(locationOfProject) {
1322
+ /* \/\/ console\.log\(\{ */
1323
+ /* \/\/ locationOfProj */
1324
+ /* \/\/ \}\) */
1288
1325
  if (Array.isArray(locationOfProject)) {
1289
1326
  locationOfProject = locationOfProject.join('/');
1290
1327
  }
@@ -1528,6 +1565,8 @@ class BaseProject {
1528
1565
  /* */
1529
1566
  /* */
1530
1567
  /* */
1568
+ /* */
1569
+ /* */
1531
1570
  return (void 0);
1532
1571
  }
1533
1572
  }
@@ -1 +1 @@
1
- {"version":3,"file":"tnp-helpers.mjs","sources":["../../../tmp-libs-for-bundle-websql/tnp-helpers/projects/tnp-helpers/src/lib/validators/validators-git.ts","../../../tmp-libs-for-bundle-websql/tnp-helpers/projects/tnp-helpers/src/lib/validators/validators-network.ts","../../../tmp-libs-for-bundle-websql/tnp-helpers/projects/tnp-helpers/src/lib/validators/validators.ts","../../../tmp-libs-for-bundle-websql/tnp-helpers/projects/tnp-helpers/src/lib/for-browser/angular.helper.ts","../../../tmp-libs-for-bundle-websql/tnp-helpers/projects/tnp-helpers/src/lib/helpers-array-obj.ts","../../../tmp-libs-for-bundle-websql/tnp-helpers/projects/tnp-helpers/src/lib/helpers-strings-regexes.ts","../../../tmp-libs-for-bundle-websql/tnp-helpers/projects/tnp-helpers/src/lib/helpers-strings.ts","../../../tmp-libs-for-bundle-websql/tnp-helpers/projects/tnp-helpers/src/lib/helpers-numbers.ts","../../../tmp-libs-for-bundle-websql/tnp-helpers/projects/tnp-helpers/src/lib/for-browser/helpers-browser.ts","../../../tmp-libs-for-bundle-websql/tnp-helpers/projects/tnp-helpers/src/lib/helpers.ts","../../../tmp-libs-for-bundle-websql/tnp-helpers/projects/tnp-helpers/src/lib/project.ts","../../../tmp-libs-for-bundle-websql/tnp-helpers/projects/tnp-helpers/src/lib/base-project.ts","../../../tmp-libs-for-bundle-websql/tnp-helpers/projects/tnp-helpers/src/lib/models.ts","../../../tmp-libs-for-bundle-websql/tnp-helpers/projects/tnp-helpers/src/lib/index.ts","../../../tmp-libs-for-bundle-websql/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/websql';\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/websql';\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/websql';\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/websql';\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/websql';\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/websql';\nimport { Helpers, Validators } from './index';\nimport { CLASS } from 'typescript-class-helpers/websql';\nimport { CoreHelpers } from 'tnp-core/websql';\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/websql';\nimport { _, CoreConfig } from 'tnp-core/websql';\nimport { CLASS } from 'typescript-class-helpers/websql';\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/websql';\nimport { path, crossPlatformPath } from 'tnp-core/websql';\nimport { config } from 'tnp-config/websql';\nimport { _ } from 'tnp-core/websql';\nimport { HelpersFiredev } from './helpers';\nimport { Models } from 'tnp-models/websql';\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 return [this.NPM_PROJECT_KEY];\n\n\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 if (Array.isArray(locationOfProject)) {\n locationOfProject = locationOfProject.join('/');\n }\n let location = crossPlatformPath(locationOfProject.replace(/\\/\\//g, '/'));\n\n if (!_.isString(location)) {\n Helpers.warn(`[project.from] location is not a string`)\n return;\n }\n if (path.basename(location) === 'dist') {\n location = path.dirname(location);\n }\n location = crossPlatformPath(path.resolve(location));\n\n const alreadyExist = this.projects.find(l => l.location.trim() === location.trim());\n if (alreadyExist) {\n return alreadyExist as any;\n }\n\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n \n\n\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 return this.ins.From(path.join(this.location, '..'));\n\n }\n\n get genericName() {\n\n let parent = this.parent as any as BaseProject;\n return [\n parent ? path.basename(path.dirname(parent.location)) : void 0,\n parent ? parent.basename : path.basename(this.location),\n this.basename,\n/* */\n/* */\n \n ]\n .filter(f => !!f)\n .join('/')\n\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":";;;;;AAGM,IAAW,aAAa,CAQ7B;AARD,CAAA,UAAiB,aAAa,EAAA;IAE5B,SAAgB,cAAc,CAAC,GAAW,EAAA;QACxC,MAAM,KAAK,GAAG,sFAAsF,CAAC;QACrG,MAAM,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC5B,QAAA,OAAO,GAAG,CAAC;KACZ;AAJe,IAAA,aAAA,CAAA,cAAc,iBAI7B,CAAA;AAEH,CAAC,EARgB,aAAa,KAAb,aAAa,GAQ7B,EAAA,CAAA,CAAA,CAAA;AAEA,CAAC;AAAA,CAAC,EAAE,EAAE;;ACTD,IAAW,iBAAiB,CAWjC;AAXD,CAAA,UAAiB,iBAAiB,EAAA;IAChC,SAAgB,SAAS,CAAC,EAAU,EAAA;AAClC,QAAA,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE;AACnB,YAAA,OAAO,KAAK,CAAC;AACd,SAAA;AACD,QAAA,EAAE,GAAG,EAAE,CAAC,IAAI,EAAE,CAAC;QACf,IAAI,EAAE,KAAK,WAAW,EAAE;AACtB,YAAA,OAAO,IAAI,CAAC;AACb,SAAA;AACD,QAAA,OAAO,kKAAkK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;KACnL;AATe,IAAA,iBAAA,CAAA,SAAS,YASxB,CAAA;AACH,CAAC,EAXgB,iBAAiB,KAAjB,iBAAiB,GAWjC,EAAA,CAAA,CAAA,CAAA;AAEA,CAAC;AAAA,CAAC,EAAE,EAAE;;ACZD,IAAW,WAGhB;AAHD,CAAA,UAAiB,UAAU,EAAA;IACX,UAAG,CAAA,GAAA,GAAG,aAAa,CAAC;IACpB,UAAO,CAAA,OAAA,GAAG,iBAAiB,CAAC;AAC5C,CAAC,EAHgB,UAAU,KAAV,UAAU,GAG1B,EAAA,CAAA,CAAA,CAAA;AAGA,CAAC;AAAA,CAAC,EAAE,EAAE;;ACNP,MAAM,sBAAsB,GAAG,MAAM,EAAE,CAAC;AACxC,MAAM,0BAA0B,GAAG,EAAE,CAAC;AAGhC,IAAW,eAqFhB;AArFD,CAAA,UAAiB,cAAc,EAAA;AAE7B,IAAA,MAAa,iBAAiB,CAAA;AAC5B,QAAA,WAAA,CACS,EAAU,EAAA;YAAV,IAAE,CAAA,EAAA,GAAF,EAAE,CAAQ;SACd;AACN,KAAA;AAJY,IAAA,cAAA,CAAA,iBAAiB,oBAI7B,CAAA;IAGD,SAAS,SAAS,CAAC,cAA4B,EAAA;AAC7C,QAAA,MAAM,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;AACnD,QAAA,IAAI,CAAC,cAAc,CAAC,sBAAsB,CAAC,EAAE;YAC3C,cAAc,CAAC,sBAAsB,CAAC,GAAG,IAAI,iBAAiB,CAAC,EAAE,CAAC,CAAC;AACnE,YAAA,0BAA0B,CAAC,EAAE,CAAC,GAAG,cAAc,CAAC;AACjD,SAAA;AACD,QAAA,OAAO,cAAc,CAAC,sBAAsB,CAAC,CAAC;KAC/C;AAED;;AAEG;IACH,SAAgB,SAAS,CAAC,QAAsB,EAAA;AAC9C,QAAA,OAAO,SAAS,CAAC,QAAQ,CAAC,CAAC;KAC5B;AAFe,IAAA,cAAA,CAAA,SAAS,YAExB,CAAA;AAED;;AAEG;IACH,SAAgB,WAAW,CAAC,QAAgC,EAAA;QAC1D,IAAI,QAAQ,EAAE,EAAE,EAAE;YAChB,MAAM,kBAAkB,GAAG,0BAA0B,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;AACnE,YAAA,OAAO,kBAAkB,CAAC;AAC3B,SAAA;QACD,OAAO,IAAI,OAAO,EAAE,CAAC;KACtB;AANe,IAAA,cAAA,CAAA,WAAW,cAM1B,CAAA;IAED,SAAgB,WAAW,CAAC,QAAsB,EAAA;AAChD,QAAA,MAAM,cAAc,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAC;QAC3C,IAAI,cAAc,EAAE,EAAE,EAAE;AACtB,YAAA,OAAO,0BAA0B,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC;AACrD,YAAA,OAAO,cAAc,CAAC,sBAAsB,CAAC,CAAC;AAC/C,SAAA;KACF;AANe,IAAA,cAAA,CAAA,WAAW,cAM1B,CAAA;AAID;;;;;;;;;;;;;;;AAeK;IACL,SAAgB,QAAQ,CAAC,MAAc,EAAA;QACrC,MAAM,KAAK,IAAI,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;QACnC,OAAO;AACL,YAAA,WAAW,EAAE,CAAC,IAAY,KAAI;AAC5B,gBAAA,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;AACjD,oBAAA,MAAM,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC;AACvB,oBAAA,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;oBAC7C,IAAI,OAAO,KAAK,IAAI,EAAE;wBACpB,OAAO,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;AAC/B,qBAAA;AACF,iBAAA;aACF;AACD,YAAA,WAAW,EAAE,CAAC,IAAY,KAAY;AACpC,gBAAA,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;AACjD,oBAAA,MAAM,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC;AACvB,oBAAA,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;oBAC7C,IAAI,OAAO,KAAK,IAAI,EAAE;AACpB,wBAAA,OAAO,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC;AACzD,qBAAA;AACF,iBAAA;aACF;SACF,CAAA;KACF;AAtBe,IAAA,cAAA,CAAA,QAAQ,WAsBvB,CAAA;AACH,CAAC,EArFgB,cAAc,KAAd,cAAc,GAqF9B,EAAA,CAAA,CAAA,CAAA;AAIA,CAAC;AAAA,CAAC,EAAE,EAAE;;MC5FM,eAAe,CAAA;AAE1B,IAAA,IAAI,CAAC,CAAoB,EAAA;AACvB,QAAA,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;AAChB,YAAA,OAAO,CAAC,CAAC;AACV,SAAA;AACD,QAAA,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE;AACjB,YAAA,OAAO,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;AACpB,SAAA;KACF;AAED,IAAA,MAAM,CAAC,GAAG,EAAA;AACR,QAAA,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE;YACzC,OAAO,KAAK,CAAC,CAAC;AACf,SAAA;AACD,QAAA,OAAQ,GAAG,CAAC,CAAC,CAAC,CAAC;KAChB;AAED,IAAA,sBAAsB,CAAU,GAAU,EAAE,CAAM,EAAE,CAAM,EAAE,IAAc,EAAA;AACxE,QAAA,IAAI,MAAM,GAAG,IAAI,GAAG,GAAG,CAAC,SAAS,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;AACnF,QAAA,CAAC,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;AACtB,QAAA,IAAI,MAAM,GAAG,IAAI,GAAG,GAAG,CAAC,SAAS,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QACnF,IAAI,MAAM,KAAK,CAAC,EAAE;AAChB,YAAA,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;AAChB,SAAA;AAAM,aAAA;YACL,GAAG,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AAC9B,SAAA;AACD,QAAA,OAAO,GAAG,CAAC;KACZ;AACD,IAAA,sBAAsB,CAAU,GAAU,EAAE,CAAM,EAAE,CAAM,EAAE,IAAc,EAAA;AACxE,QAAA,IAAI,MAAM,GAAG,IAAI,GAAG,GAAG,CAAC,SAAS,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;AACnF,QAAA,CAAC,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;AACtB,QAAA,IAAI,MAAM,GAAG,IAAI,GAAG,GAAG,CAAC,SAAS,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;AACnF,QAAA,IAAI,MAAM,KAAK,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE;AAC7B,YAAA,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACb,SAAA;AAAM,aAAA;YACL,GAAG,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AAC9B,SAAA;AACD,QAAA,OAAO,GAAG,CAAC;KACZ;IAED,SAAS,CAAU,KAAY,EAAE,cAA0B,EAAA;QACzD,IAAI,IAAI,GAAG,EAAE,CAAC;AACd,QAAA,OAAO,KAAK;aACT,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;aAChB,MAAM,CAAC,UAAU,IAAI,EAAA;YACpB,OAAO,IAAI,CAAC,cAAc,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,IAAI,CAAC,GAAG,KAAK;mBAC3E,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;AAClE,SAAC,CAAQ,CAAC;KACb;AAED,IAAA,QAAQ,CAAC,GAAG,EAAA;AACV,QAAA,IAAI,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;YAClB,OAAO,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;AAC/B,SAAA;AACD,QAAA,IAAI,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;AACnB,YAAA,OAAO,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACnF,SAAA;AACD,QAAA,OAAO,GAAG,CAAC;KACZ;;AAED;;AAEG;AACH,IAAA,KAAK,CAAU,KAAa,EAAE,IAAS,EAAE,OAAsC,EAAA;AAC7E,QAAA,MAAM,YAAY,GAAG,KAAK,CAAC,MAAM,CAC/B,KAAK,EACL,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CACxC,CAAA;AACD,QAAA,MAAM,iBAAiB,GAAG,KAAK,CAAC,MAAM,CACpC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,EAClB,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,EAAS,CAAC,CAC9D,CAAA;AACD,QAAA,MAAM,OAAO,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,MAAM,CAAC,CAAC;AACpD,QAAA,MAAM,YAAY,GAAG,iBAAiB,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,MAAM,CAAC,CAAC;QAE9D,MAAM,OAAO,GAAG,CAAC,YAAY,CAAC,MAAM,KAAK,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,IAAG;AACjE,YAAA,OAAO,OAAO,CAAC,QAAQ,EAAE,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,EAAS,CAAC;AAC7D,SAAC,CAAC,CAAA;QAEF,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE;AACnD,YAAA,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,EAAS,KAAK,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC;AACnG,YAAA,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAChB,YAAA,OAAO,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,EAAS,CAAC;AACjD,SAAA;AAED,QAAA,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC;KAC7B;AAEF,CAAA;AAEA,CAAC;AAAA,CAAC,EAAE,EAAE;;MC9FM,qBAAqB,CAAA;AAIhC,IAAA,oBAAoB,CAAC,CAAS,EAAA;QAC5B,OAAO,CAAC,CAAC,OAAO,CAAC,wBAAwB,EAAE,MAAM,CAAC,CAAC;KACpD;IAED,cAAc,CAAC,CAAS,EAAE,KAAa,EAAA;AACrC,QAAA,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;YACxC,OAAO,KAAK,CAAC,CAAC;AACf,SAAA;QACD,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;AAC9B,QAAA,IAAI,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE;YACnB,OAAO,KAAK,CAAC,CAAC;AACf,SAAA;AACD,QAAA,OAAO,MAAM,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC,CAAC;KACtD;AAED,IAAA,IAAI,KAAK,GAAA;QACP,OAAO;AACL;;;;;;;;AAQC;AACD,YAAA,IAAI,mBAAmB,GAAA;gBACrB,MAAM,KAAK,GAAG,4LAA4L,CAAC;AAC3M,gBAAA,OAAO,KAAK,CAAC;aACd;AACD;;;;;;;;;;AAUA;AACA,YAAA,IAAI,uBAAuB,GAAA;gBACzB,MAAM,KAAK,GAAG,kIAAkI,CAAC;AACjJ,gBAAA,OAAO,KAAK,CAAC;aACd;SACF,CAAA;KACF;AACF,CAAA;AAEA,CAAC;AAAA,CAAC,EAAE,EAAE;;MCnDM,cAAc,CAAA;AAEzB;;;;;;;;;;;;AAYG;AACH,IAAA,iBAAiB,CAAU,KAAa,EAAA;AACtC,QAAA,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;AAC7B,YAAA,OAAO,CAAC,IAAI,CAAC,2DAA2D,EAAE,KAAK,CAAC,CAAC;AACjF,YAAA,OAAO,KAAK,CAAC;AACd,SAAA;QAED,OAAO;AACL,YAAA,cAAc,CAAC,UAAa,EAAA;AAC1B,gBAAA,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE;AAClC,oBAAA,OAAO,CAAC,GAAG,CAAC,UAAiB,CAAC,CAAC;AAC/B,oBAAA,OAAO,CAAC,IAAI,CAAC,iDAAiD,CAAC,CAAC;AAChE,oBAAA,OAAO,KAAK,CAAC;AACd,iBAAA;gBACD,OAAO,KAAK,CAAC,OAAO,CAAC,aAAa,EAAE,UAAU,CAAC,EAAE,CAAC,EAAA;AAChD,oBAAA,IAAI,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;AACtB,oBAAA,OAAO,OAAO,CAAC,KAAK,QAAQ,IAAI,OAAO,CAAC,KAAK,QAAQ,GAAG,CAAC,GAAG,CAAC,CAAC;AAChE,iBAAQ,CAAC,CAAC;aACX;SACF,CAAA;KAEF;AAED;;;;AAIG;AACH,IAAA,QAAQ,CAAC,SAAiB,EAAA;QAExB,OAAO,QAAQ,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC;KAC9C;AAED;;;;;AAKG;AACH,IAAA,WAAW,CAAC,WAA8B,EAAA;QACxC,IAAI,GAAG,GAAG,EAAE,CAAC;AACb,QAAA,IAAI,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE;AAC1B,YAAA,GAAG,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,IAAG;AACxB,gBAAA,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC;AAClB,aAAC,CAAC,CAAA;AACH,SAAA;AACD,QAAA,IAAI,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE;AAC3B,YAAA,GAAG,GAAG,WAAW,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;AACxC,SAAA;QACD,OAAO,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;KAClD;AAED,IAAA,4BAA4B,CAAC,CAAS,EAAA;QACpC,CAAC,GAAG,CAAC,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACtD,OAAO,CAAC,EAAE,OAAO,CAAC,mBAAmB,EAAE,MAAM,CAAC,CAAC;KAChD;AAED;;;;;;;;;;AAUG;IACH,MAAM,CAAC,IAAY,EAAE,MAAe,EAAA;AAClC,QAAA,IAAI,MAAM,KAAK,SAAS,IAAI,MAAM,KAAK,CAAC,EAAE;AACxC,YAAA,OAAO,IAAI,CAAA;AACZ,SAAA;AACD,QAAA,MAAM,MAAM,GAA8B;AACxC,YAAA,SAAS,EAAE,OAAO;AAClB,YAAA,QAAQ,EAAE,MAAM;AAChB,YAAA,cAAc,EAAE,OAAO;AACvB,YAAA,uBAAuB,EAAE,QAAQ;AACjC,YAAA,eAAe,EAAE,MAAM;AACvB,YAAA,kBAAkB,EAAE,OAAO;AAC3B,YAAA,SAAS,EAAE,KAAK;AAChB,YAAA,uBAAuB,EAAE,SAAS;AAClC,YAAA,uBAAuB,EAAE,OAAO;AAChC,YAAA,MAAM,EAAE,KAAK;AACb,YAAA,WAAW,EAAE,KAAK;AAClB,YAAA,6BAA6B,EAAE,OAAO;AACtC,YAAA,QAAQ,EAAE,OAAO;AACjB,YAAA,UAAU,EAAE,MAAM;AAClB,YAAA,YAAY,EAAE,KAAK;AACnB,YAAA,cAAc,EAAE,MAAM;AACtB,YAAA,OAAO,EAAE,MAAM;AACf,YAAA,UAAU,EAAE,KAAK;SAClB,CAAA;AACD,QAAA,MAAM,SAAS,GAA8B;AAC3C,YAAA,MAAM,EAAE,OAAO;AACf,YAAA,MAAM,EAAE,MAAM;AACd,YAAA,OAAO,EAAE,OAAO;AAChB,YAAA,KAAK,EAAE,OAAO;AACd,YAAA,OAAO,EAAE,UAAU;AACnB,YAAA,KAAK,EAAE,KAAK;AACZ,YAAA,OAAO,EAAE,OAAO;AAChB,YAAA,QAAQ,EAAE,QAAQ;SACnB,CAAA;AACD,QAAA,MAAM,WAAW,GAAa;YAC5B,OAAO;YACP,MAAM;YACN,MAAM;YACN,OAAO;YACP,QAAQ;YACR,SAAS;YACT,OAAO;YACP,MAAM;YACN,aAAa;YACb,WAAW;YACX,OAAO;YACP,KAAK;YACL,WAAW;YACX,MAAM;YACN,QAAQ;YACR,QAAQ;YACR,OAAO;YACP,OAAO;YACP,UAAU;YACV,YAAY;YACZ,YAAY;YACZ,OAAO;YACP,MAAM;YACN,KAAK;YACL,MAAM;SACP,CAAA;QAED,IAAI,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,IAAI,CAAC,EAAE;AAChD,YAAA,OAAO,IAAI,CAAA;AACZ,SAAA;AAED,QAAA,KAAK,MAAM,CAAC,IAAI,SAAS,EAAE;YACzB,MAAM,OAAO,GAAG,IAAI,MAAM,CAAC,CAAG,EAAA,CAAC,CAAG,CAAA,CAAA,EAAE,GAAG,CAAC,CAAA;AACxC,YAAA,MAAM,OAAO,GAAG,SAAS,CAAC,CAAC,CAAC,CAAA;AAC5B,YAAA,IAAI,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;gBACtB,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;AACtC,aAAA;AACF,SAAA;AAED,QAAA,KAAK,MAAM,GAAG,IAAI,MAAM,EAAE;YACxB,MAAM,OAAO,GAAG,IAAI,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;AACpC,YAAA,IAAI,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;gBACtB,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAA;AAC1C,aAAA;AACF,SAAA;AACD,QAAA,OAAO,IAAI,CAAA;KACZ;AAGD;;;;;;;;;AASE;IACF,QAAQ,CAAC,IAAY,EAAE,MAAe,EAAA;AACpC,QAAA,IAAI,MAAM,KAAK,SAAS,IAAI,MAAM,KAAK,CAAC,EAAE;AACxC,YAAA,OAAO,IAAI,CAAA;AACZ,SAAA;AACD,QAAA,MAAM,QAAQ,GAA8B;AAC1C,YAAA,YAAY,EAAE,IAAI;AAClB,YAAA,aAAa,EAAE,MAAM;AACrB,YAAA,iBAAiB,EAAE,MAAM;AACzB,YAAA,UAAU,EAAE,IAAI;AAChB,YAAA,YAAY,EAAE,IAAI;AAClB,YAAA,eAAe,EAAE,MAAM;AACvB,YAAA,mBAAmB,EAAE,MAAM;AAC3B,YAAA,UAAU,EAAE,IAAI;AAChB,YAAA,QAAQ,EAAE,IAAI;AACd,YAAA,UAAU,EAAE,IAAI;AAChB,YAAA,aAAa,EAAE,QAAQ;AACvB,YAAA,iBAAiB,EAAE,IAAI;AACvB,YAAA,WAAW,EAAE,QAAQ;AACrB,YAAA,WAAW,EAAE,SAAS;AACtB,YAAA,oBAAoB,EAAE,KAAK;AAC3B,YAAA,YAAY,EAAE,KAAK;AACnB,YAAA,UAAU,EAAE,IAAI;AAChB,YAAA,UAAU,EAAE,IAAI;AAChB,YAAA,iBAAiB,EAAE,MAAM;AACzB,YAAA,yBAAyB,EAAE,KAAK;AAChC,YAAA,cAAc,EAAE,OAAO;AACvB,YAAA,+DAA+D,EAAE,SAAS;AAC1E,YAAA,UAAU,EAAE,MAAM;AAClB,YAAA,SAAS,EAAE,OAAO;AAClB,YAAA,cAAc,EAAE,QAAQ;AACxB,YAAA,YAAY,EAAE,IAAI;AAClB,YAAA,SAAS,EAAE,IAAI;AACf,YAAA,IAAI,EAAE,EAAE;SACT,CAAA;AACD,QAAA,MAAM,SAAS,GAA8B;AAC3C,YAAA,MAAM,EAAE,OAAO;AACf,YAAA,MAAM,EAAE,MAAM;AACd,YAAA,OAAO,EAAE,OAAO;AAChB,YAAA,KAAK,EAAE,OAAO;AACd,YAAA,OAAO,EAAE,UAAU;AACnB,YAAA,KAAK,EAAE,KAAK;AACZ,YAAA,OAAO,EAAE,OAAO;AAChB,YAAA,QAAQ,EAAE,QAAQ;SACnB,CAAA;AACD,QAAA,MAAM,WAAW,GAAa;YAC5B,OAAO;YACP,MAAM;YACN,MAAM;YACN,OAAO;YACP,QAAQ;YACR,SAAS;YACT,OAAO;YACP,MAAM;YACN,aAAa;YACb,WAAW;YACX,OAAO;YACP,KAAK;YACL,WAAW;YACX,MAAM;YACN,QAAQ;YACR,QAAQ;YACR,OAAO;YACP,OAAO;YACP,UAAU;YACV,YAAY;YACZ,YAAY;YACZ,OAAO;YACP,MAAM;YACN,KAAK;YACL,MAAM;SACP,CAAA;QAED,IAAI,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,IAAI,CAAC,EAAE;AAChD,YAAA,OAAO,IAAI,CAAA;AACZ,SAAA;AAED,QAAA,KAAK,MAAM,CAAC,IAAI,SAAS,EAAE;AACzB,YAAA,MAAM,OAAO,GAAG,IAAI,MAAM,CAAC,CAAG,EAAA,SAAS,CAAC,CAAC,CAAC,CAAA,CAAA,CAAG,EAAE,GAAG,CAAC,CAAA;YACnD,MAAM,OAAO,GAAG,CAAC,CAAA;AACjB,YAAA,IAAI,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;gBACtB,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;AACtC,aAAA;AACF,SAAA;AAED,QAAA,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE;YAC1B,MAAM,OAAO,GAAG,IAAI,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;AACpC,YAAA,IAAI,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;gBACtB,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAA;AAC5C,aAAA;AACF,SAAA;AACD,QAAA,OAAO,IAAI,CAAA;KACZ;AAEF,CAAA;AAGA,CAAC;AAAA,CAAC,EAAE,EAAE;;MClRM,aAAa,CAAA;AAA1B,IAAA,WAAA,GAAA;AACE;;;AAGG;QACH,IAAa,CAAA,aAAA,GAAG,CAAC,GAAG,EAAE,GAAG,KAAK,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,GAAG,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC;KAG7E;AAAA,CAAA;AAEA,CAAC;AAAA,CAAC,EAAE,EAAE;;ACRP,MAAM,GAAG,GAAG,MAAM,CAAC,sCAAsC,CAAC,CAAA;AAE1D,MAAa,cAAc,CAAA;aAEV,IAAS,CAAA,SAAA,GAAG,EAAH,CAAM,EAAA;IAC9B,OAAO,MAAM,CAAC,QAAsC,EAAA;AAClD,QAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;KAC/B;AAED,IAAA,IAAI,GAAG,GAAA;QACL,IAAI,GAAG,GAAG,MAAM,CAAC;AACjB,QAAA,OAAO,GAAG,CAAC;KACZ;AAED,IAAA,IAAY,mBAAmB,GAAA;AAC7B,QAAA,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;KACpD;AAcD,IAAA,WAAA,CAAoB,GAAW,EAAA;QAT/B,IAAI,CAAA,IAAA,GAAG,CAAC,MAAK;AACX,YAAA,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC;AAErB,YAAA,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;gBACb,GAAG,CAAC,GAAG,CAAC,GAAG,IAAI,cAAc,CAAC,GAAG,CAAC,CAAC;AACpC,aAAA;AACD,YAAA,cAAc,CAAC,IAAI,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC;SAChC,GAAG,CAAC;QAIH,GAAG,CAAC,gBAAgB,CAAC,cAAc,EAAE,CAAC,CAAC,KAAI;YACzC,GAAG,CAAC,cAAc,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;AACtC,YAAA,OAAO,IAAI,CAAC;AACd,SAAC,CAAC,CAAC;QAEH,UAAU,CAAC,MAAK;AAEd,YAAA,IAAI,GAAG,CAAC,cAAc,EAAE,KAAK,EAAE;;gBAE7B,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;AAC9C,gBAAA,GAAG,CAAC,cAAc,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;AACxC,aAAA;AACI,iBAAA;;gBAEH,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,EAAE,OAAO,EAAE,CAAC;AAC3E,aAAA;YACD,cAAc,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,KAAI;gBACrC,CAAC,CAAC,IAAI,CAAC,CAAC;AACV,aAAC,CAAC,CAAC;AACL,SAAC,CAAC,CAAA;KAGH;AAGD,IAAA,WAAW,QAAQ,GAAA;QACjB,OAAO,cAAc,CAAC,IAAI,CAAC;KAC5B;;AASF,CAAC;AAAA,CAAC,EAAE,EAAE;;ACpCP;;;;;;;;;;;;;AAaG;AACa,SAAA,WAAW,CAAC,WAAgB,EAAE,SAAgB,EAAA;AAC5D,IAAA,SAAS,CAAC,OAAO,CAAC,QAAQ,IAAG;AAC3B,QAAA,MAAM,CAAC,mBAAmB,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,IAAI,IAAG;YAC5D,MAAM,CAAC,cAAc,CAAC,WAAW,CAAC,SAAS,EAAE,IAAI,EAAE,MAAM,CAAC,wBAAwB,CAAC,QAAQ,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC;AAChH,SAAC,CAAC,CAAC;AACL,KAAC,CAAC,CAAC;AACL,CAAC;AAED;AACM,MAAO,cAAe,SAAQ,WAAW,CAAA;AAGtC,IAAA,WAAW,QAAQ,GAAA;AACxB,QAAA,IAAI,CAAC,cAAc,CAAC,SAAS,EAAE;AAC7B,YAAA,cAAc,CAAC,SAAS,GAAG,IAAI,cAAc,EAAE,CAAC;AACjD,SAAA;QACD,OAAO,cAAc,CAAC,SAAS,CAAC;KACjC;AAED,IAAA,WAAA;;;;;;;;;;;;;;IAeS,MAAS,GAAA,IAAI,eAAe,EAAE,EAC9B,UAAU,IAAI,cAAc,EAAE,EAC9B,OAAA,GAAU,IAAI,aAAa,EAAE,EAE7B,OAAU,GAAA,cAAc,CAAC,QAAQ,EACjC,KAAK,cAAc,EAAA;AAG1B,QAAA,KAAK,EAAE,CAAC;QARD,IAAM,CAAA,MAAA,GAAN,MAAM,CAAwB;QAC9B,IAAO,CAAA,OAAA,GAAP,OAAO,CAAuB;QAC9B,IAAO,CAAA,OAAA,GAAP,OAAO,CAAsB;QAE7B,IAAO,CAAA,OAAA,GAAP,OAAO,CAA0B;QACjC,IAAE,CAAA,EAAA,GAAF,EAAE,CAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAiQrB,IAAW,CAAA,WAAA,GAAG,WAAW,CAAC;AAEjC,QAAA,IAAA,CAAA,SAAS,GAAG,UAAU,CAAC,OAAO,CAAC,SAAS,CAAC;AACzC,QAAA,IAAA,CAAA,iBAAiB,GAAG,UAAU,CAAC,GAAG,CAAC,cAAc,CAAC;KAhQjD;IAED,OAAO,CAAC,CAAW,EAAE,IAAY,EAAA;AAC/B,QAAA,KAAK,CAAC,OAAO,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;AACvB,QAAA,OAAO,CAAC,CAAC;KACV;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA4CD,IAAA,MAAM,UAAU,GAAA;;;;;KAMf;;;;;;;;;;;;;;;;;;;;;;;;;IAgCD,MAAM,kBAAkB,CACtB,WAAmB,EACnB,iBAA2B,EAC3B,GAAG,iBAAwB,EAAA;AAC3B,QAAA,IAAI,KAAK,GAAG,IAAI,IAAI,EAAE,CAAA;QACtB,MAAM,OAAO,CAAC,cAAc,CAAC,iBAAiB,EAAE,GAAG,iBAAiB,CAAC,CAAC;;AAEtE,QAAA,IAAI,GAAG,GAAG,IAAI,IAAI,EAAE,GAAG,KAAK,CAAA;QAC5B,IAAI,OAAO,CAAC,SAAS,EAAE;AACrB,YAAA,OAAO,CAAC,IAAI,CAAC,CAAA,gBAAA,EAAmB,GAAG,CAAC,QAAQ,EAAE,CAAW,QAAA,EAAA,WAAW,CAAG,CAAA,CAAA,CAAC,CAAC;AAC1E,SAAA;;;AAID,QAAA,OAAO,GAAG,CAAC;KACZ;IAED,sBAAsB,CACpB,WAAmB,EACnB,iBAA6B,EAAA;AAC7B,QAAA,IAAI,KAAK,GAAG,IAAI,IAAI,EAAE,CAAA;AACtB,QAAA,iBAAiB,EAAE,CAAC;;AAEpB,QAAA,IAAI,GAAG,GAAG,IAAI,IAAI,EAAE,GAAG,KAAK,CAAA;QAC5B,IAAI,OAAO,CAAC,SAAS,EAAE;AACrB,YAAA,OAAO,CAAC,GAAG,CAAC,CAAA,gBAAA,EAAmB,GAAG,CAAC,QAAQ,EAAE,CAAW,QAAA,EAAA,WAAW,CAAG,CAAA,CAAA,CAAC,CAAC;AACzE,SAAA;;;AAID,QAAA,OAAO,GAAG,CAAC;KACZ;AAED,IAAA,gBAAgB,CAAC,WAA6B,EAAE,kBAAkB,GAAG,IAAI,EAAA;QACvE,OAAO,IAAI,OAAO,CAAC,OAAO,OAAO,EAAE,MAAM,KAAI;YAE3C,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;AACzD,YAAA,IAAI,MAAM,EAAE;AACV,gBAAA,OAAO,CAAC,KAAK,CAAC,CAAC,CAAA;AAChB,aAAA;AAAM,iBAAA;gBACL,UAAU,CAAC,MAAK;oBACd,OAAO,CAAC,gBAAgB,CAAC,WAAW,EAAE,kBAAkB,CAAC,CAAC,IAAI,CAAC,MAAK;AAClE,wBAAA,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;AAClB,qBAAC,CAAC,CAAA;iBACH,EAAE,kBAAkB,CAAC,CAAC;AACxB,aAAA;AACH,SAAC,CAAC,CAAA;KACH;AAED,IAAA,iBAAiB,CAAC,UAAmB,EAAE,MAAA,GAAkB,KAAK,EAAA;;;;;;KAO7D;IAED,aAAa,CAAC,GAAG,EAAE,MAAM,EAAA;QACvB,IAAI,UAAU,GAAG,IAAI,CAAC;QACtB,MAAM,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,IAAI,IAAG;AAC7C,YAAA,IAAI,GAAG,CAAC,IAAI,CAAC,KAAK,MAAM,EAAE;gBACxB,UAAU,GAAG,IAAI,CAAC;AACnB,aAAA;AACH,SAAC,CAAC,CAAC;QAEH,IAAI,UAAU,KAAK,IAAI,EAAE;AACvB,YAAA,OAAO,UAAU,CAAC;AACnB,SAAA;QAED,IAAI,KAAK,GAAG,MAAM,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;AACvC,QAAA,IAAI,KAAK,EAAE;YACT,OAAO,OAAO,CAAC,aAAa,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;AAC7C,SAAA;AACD,QAAA,OAAO,IAAI,CAAC;KACb;AAED,IAAA,aAAa,CAAC,GAAW,EAAA;QACvB,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,KAAI;YACpB,MAAM,KAAK,GAAW,CAAQ,CAAC;YAC/B,IAAI,KAAK,KAAK,MAAM;AAAE,gBAAA,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;YACpC,IAAI,KAAK,KAAK,OAAO;AAAE,gBAAA,GAAG,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC;AACxC,SAAC,CAAC,CAAA;KACH;AAuFF,CAAA;AAYD,WAAW,CAAC,cAAc,EAAE;IAC1B,qBAAqB;;;;AAKtB,CAAA,CAAC,CAAC;AAEF,CAAC;AAAA,CAAC,EAAE,EAAE;;AChXP;AACA;AACA;AACA;AACA;AACA;AAQA,MAAMA,SAAO,GAAG,cAAc,CAAC,QAAQ,CAAC;AAGxC;;;;AAIG;AACH,MAAa,OAAO,CAAA;AAApB,IAAA,WAAA,GAAA;QAwTY,IAAK,CAAA,KAAA,GAAG,EAAE,CAAC;QAOd,IAAO,CAAA,OAAA,GAA4C,EAAS,CAAC;KAmGrE;aA5Ze,IAAQ,CAAA,QAAA,GAAmB,EAAnB,CAAsB,EAAA;AAC5C;;;AAGG;aACW,IAAc,CAAA,cAAA,GAAa,EAAb,CAAgB,EAAA;IAE5C,OAAO,QAAQ,CAAC,QAAgB,EAAA;;;;;;;;;;;;;AAa9B,QAAA,QAAQ,KAAK,CAAC,EAAE;KACjB;IAEM,OAAO,MAAM,CAAC,OAAgB,EAAA;AACnC,QAAA,OAAO,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,OAAO,CAAC,CAAC;KAChE;IAEM,OAAO,IAAI,CAAmB,cAAiC,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAuGpE,QAAA,QAAQ,KAAK,CAAC,EAAE;KACjB;AAEM,IAAA,OAAO,SAAS,CACrB,gBAAwB,EACxB,OAAkG,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA2DhG,QAAA,QAAQ,KAAK,CAAC,EAAE;KACnB;AAEM,IAAA,OAAO,cAAc,CAAc,gBAAwB,EAAE,YAAoB,GAAG,EAAA;;;;;;;;;;;;;;;;;;;;;;;AAuBzF,QAAA,QAAQ,KAAK,CAAC,EAAE;KACjB;IAEM,OAAO,iBAAiB,CAAC,IAA0B,EAAA;QACxD,IAAI,IAAI,KAAK,QAAQ,EAAE;AAAE,YAAA,OAAO,IAAI,CAAC;AAAE,SAAA;QACvC,IAAI,IAAI,KAAK,gBAAgB,EAAE;AAAE,YAAA,OAAO,IAAI,CAAC;AAAE,SAAA;AAC/C,QAAA,IAAI,IAAI,KAAK,WAAW,IAAI,IAAI,KAAK,oBAAoB,EAAE;YACzD,OAAO;AACR,SAAA;KACF;AAEM,IAAA,WAAW,YAAY,GAAA;QAC5B,IAAIA,SAAO,CAAC,SAAS,EAAE;AACrB,YAAA,OAAO,IAAI,CAAC;AACb,SAAA;;;KAIF;AAED,IAAA,WAAW,OAAO,GAAA;;;;;;;;;;;;AAYhB,QAAA,QAAQ,KAAK,CAAC,EAAE;KACjB;AAGD;;AAEG;AACH,IAAA,WAAW,GAAG,GAAA;;;;;;;;AAQZ,QAAA,QAAQ,KAAK,CAAC,EAAE;KACjB;AAEM,IAAA,OAAO,EAAE,CACd,WAAwC,EACxC,OAAsC;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA6BtC,QAAA,QAAQ,KAAK,CAAC,EAAE;KACjB;IAwDD,cAAc,CAAI,YAAqB,EAAE,OAAiB,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA6BxD,QAAA,QAAQ,KAAK,CAAC,EAAE;KACjB;AAEM,IAAA,OAAO,CAAgB,IAA0B,EAAA;;AAEtD,QAAA,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;KACnB;IACM,MAAM,CAAgB,GAAG,KAA6B,EAAA;AAC3D,QAAA,OAAO,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KACjD;IAEM,SAAS,CAAgB,GAAG,KAA6B,EAAA;QAC9D,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC,CAAC;KAC/B;IAED,iBAAiB,GAAA;;;;;;AAMf,QAAA,QAAQ,KAAK,CAAC,EAAE;KACjB;;AAOH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAGC,CAAC;AAAA,CAAC,EAAE,EAAE;;ACrdP;AACA;AACA;AACA;AACA;AASA,MAAMA,SAAO,GAAG,cAAc,CAAC,QAAQ,CAAC;AAGxC,MAAM,UAAU,GAAG,EAAE,CAAC;MAET,mBAAmB,CAAA;AAK9B,IAAA,WAAA,CAAsB,OAAY,EAAA;QAAZ,IAAO,CAAA,OAAA,GAAP,OAAO,CAAK;QAHf,IAAe,CAAA,eAAA,GAAG,KAAK,CAAC;QACjC,IAAQ,CAAA,QAAA,GAAwB,EAAE,CAAC;QACnC,IAAc,CAAA,cAAA,GAAa,EAAE,CAAC;KACD;AACvC,IAAA,IAAI,YAAY,GAAA;AAEd,QAAA,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;KAG/B;AAED,IAAA,IAAI,OAAO,GAAA;;;;;;;;;;;;AAYT,QAAA,QAAQ,KAAK,CAAC,EAAE;KACjB;AAED;;AAEG;AACH,IAAA,QAAQ,CAAI,QAAgB,EAAA;;;;;;AAM1B,QAAA,QAAQ,KAAK,CAAC,EAAE;KACjB;AAGD,IAAA,IAAI,CAAC,iBAAoC,EAAA;AAKvC,QAAA,IAAI,KAAK,CAAC,OAAO,CAAC,iBAAiB,CAAC,EAAE;AACpC,YAAA,iBAAiB,GAAG,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACjD,SAAA;AACD,QAAA,IAAI,QAAQ,GAAG,iBAAiB,CAAC,iBAAiB,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC;AAE1E,QAAA,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE;AACzB,YAAAA,SAAO,CAAC,IAAI,CAAC,CAAA,uCAAA,CAAyC,CAAC,CAAA;YACvD,OAAO;AACR,SAAA;QACD,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,MAAM,EAAE;AACtC,YAAA,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;AACnC,SAAA;QACD,QAAQ,GAAG,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC;QAErD,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,IAAI,EAAE,KAAK,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;AACpF,QAAA,IAAI,YAAY,EAAE;AAChB,YAAA,OAAO,YAAmB,CAAC;AAC5B,SAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAgCF;IAED,SAAS,CACP,gBAAwB,EACxB,OAAiG,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA2D/F,QAAA,QAAQ,KAAK,CAAC,EAAE;KACnB;AAGD,IAAA,MAAM,CAAC,OAAU,EAAA;AACf,QAAA,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,OAAO,CAAC,CAAC;KAC1D;AAGD,IAAA,cAAc,CAAC,gBAAwB,EAAE,SAAA,GAAoB,GAAG,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;AA2B9D,QAAA,QAAQ,KAAK,CAAC,EAAE;KACjB;AAGF,CAAA;AAGD,MAAa,WAAW,CAAA;AAKf,IAAA,SAAA,IAAA,CAAA,GAAG,GAAG,IAAI,mBAAmB,CAAc,WAAW,CAAC,CAAC,EAAA;AAO/D,IAAA,IAAI,IAAI,GAAA;AACN,QAAA,OAAO,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC;KAC/B;AAED,IAAA,IAAI,OAAO,GAAA;AACT,QAAA,OAAO,IAAI,CAAC,WAAW,EAAE,OAAO,CAAC;KAClC;AAQD,IAAA,IAAI,MAAM,GAAA;AAER,QAAA,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC;KAEtD;AAED,IAAA,IAAI,WAAW,GAAA;AAEb,QAAA,IAAI,MAAM,GAAG,IAAI,CAAC,MAA4B,CAAC;QAC/C,OAAO;YACL,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,GAAG,KAAK,CAAC;AAC9D,YAAA,MAAM,GAAG,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC;AACvD,YAAA,IAAI,CAAC,QAAQ;;;AAId,SAAA;aACE,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;aAChB,IAAI,CAAC,GAAG,CAAC,CAAA;KAEb;AAED;;;;;AAKG;AACH,IAAA,UAAU,CAAC,OAAe;;;;;;;;;;AAWxB,QAAA,QAAQ,KAAK,CAAC,EAAE;KACjB;AAED,IAAA,OAAO,CAAC,YAAoB,EAAA;;;;;;AAM1B,QAAA,QAAQ,KAAK,CAAC,EAAE;KACjB;IAED,SAAS,CAAC,YAAoB,EAAE,IAAY,EAAA;;;;;;AAM1C,QAAA,QAAQ,KAAK,CAAC,EAAE;KACjB;AAGD,IAAA,GAAG,CAAC,OAAe;;;;;;;;;AAUjB,QAAA,QAAQ,KAAK,CAAC,EAAE;KACjB;AAED,IAAA,UAAU,CAAC,OAAe;;;;;;AAOxB,QAAA,QAAQ,KAAK,CAAC,EAAE;KACjB;AAED,IAAA,MAAM,CAAC,YAAoB,EAAE,SAAS,GAAG,IAAI,EAAA;;;AAG3C,QAAA,QAAQ,KAAK,CAAC,EAAE;KACjB;AAED,IAAA,MAAM,cAAc,CAAC,SAAA,GAAoB,IAAI,EAAA;;;;;;;;;;;;;;;;;;;;;;;;AAwB3C,QAAA,QAAQ,KAAK,CAAC,EAAE;KACjB;;AAMF,CAAC;AAAA,CAAC,EAAE,EAAE;;ACrWN,CAAC;AAAA,CAAC,EAAE,EAAE;;ACHP;;AAEG;AACU,MAAA,OAAO,GAAGC,cAAI,CAAC,SAAS;AAMpC,CAAC;AAAA,CAAC,EAAE,EAAE;;AClBP;;AAEG;;;;"}
1
+ {"version":3,"file":"tnp-helpers.mjs","sources":["../../../tmp-libs-for-bundle-websql/tnp-helpers/projects/tnp-helpers/src/lib/validators/validators-git.ts","../../../tmp-libs-for-bundle-websql/tnp-helpers/projects/tnp-helpers/src/lib/validators/validators-network.ts","../../../tmp-libs-for-bundle-websql/tnp-helpers/projects/tnp-helpers/src/lib/validators/validators.ts","../../../tmp-libs-for-bundle-websql/tnp-helpers/projects/tnp-helpers/src/lib/for-browser/angular.helper.ts","../../../tmp-libs-for-bundle-websql/tnp-helpers/projects/tnp-helpers/src/lib/helpers-array-obj.ts","../../../tmp-libs-for-bundle-websql/tnp-helpers/projects/tnp-helpers/src/lib/helpers-strings-regexes.ts","../../../tmp-libs-for-bundle-websql/tnp-helpers/projects/tnp-helpers/src/lib/helpers-strings.ts","../../../tmp-libs-for-bundle-websql/tnp-helpers/projects/tnp-helpers/src/lib/helpers-numbers.ts","../../../tmp-libs-for-bundle-websql/tnp-helpers/projects/tnp-helpers/src/lib/for-browser/helpers-browser.ts","../../../tmp-libs-for-bundle-websql/tnp-helpers/projects/tnp-helpers/src/lib/helpers.ts","../../../tmp-libs-for-bundle-websql/tnp-helpers/projects/tnp-helpers/src/lib/project.ts","../../../tmp-libs-for-bundle-websql/tnp-helpers/projects/tnp-helpers/src/lib/base-project.ts","../../../tmp-libs-for-bundle-websql/tnp-helpers/projects/tnp-helpers/src/lib/models.ts","../../../tmp-libs-for-bundle-websql/tnp-helpers/projects/tnp-helpers/src/lib/index.ts","../../../tmp-libs-for-bundle-websql/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/websql';\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/websql';\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/websql';\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/websql';\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/* \\/\\/ tslint:disable\\-next\\-line:radix */\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/* \\/\\/ save some time in the case that singular and plural are the same */\n if (uncountable.indexOf(word.toLowerCase()) >= 0) {\n return word\n }\n/* \\/\\/ check for irregular forms */\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/* \\/\\/ check for matches using regular expressions */\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/* \\/\\/ save some time in the case that singular and plural are the same */\n if (uncountable.indexOf(word.toLowerCase()) >= 0) {\n return word\n }\n/* \\/\\/ check for irregular forms */\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/* \\/\\/ check for matches using regular expressions */\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/* \\/\\/ session tab it */\n/* \\/\\/ realtime session */\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/websql';\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/websql';\nimport { Helpers, Validators } from './index';\nimport { CLASS } from 'typescript-class-helpers/websql';\nimport { CoreHelpers } from 'tnp-core/websql';\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/websql';\nimport { _, CoreConfig } from 'tnp-core/websql';\nimport { CLASS } from 'typescript-class-helpers/websql';\nimport { HelpersFiredev } from './helpers';\nimport { EmptyProjectStructure } from './models';\nconst Helpers = HelpersFiredev.Instance;\n\n\nconst takenPorts = [];\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 async assignFreePort(startFrom: number, howManyFreePortsAfterThatPort: number = 0): Promise<number> {\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 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/websql';\nimport { path, crossPlatformPath } from 'tnp-core/websql';\nimport { config } from 'tnp-config/websql';\nimport { _ } from 'tnp-core/websql';\nimport { HelpersFiredev } from './helpers';\nimport { Models } from 'tnp-models/websql';\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 return [this.NPM_PROJECT_KEY];\n/* \\/\\/ throw `Please override this getter \\[allowedTypes\\] in your child class or \\$\\{CLI\\.chalk\\.bold\\(config\\.frameworkName\\)\\}`; */\n\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/* \\/\\/ console\\.log\\(\\{ */\n/* \\/\\/ locationOfProj */\n/* \\/\\/ \\}\\) */\n\n if (Array.isArray(locationOfProject)) {\n locationOfProject = locationOfProject.join('/');\n }\n let location = crossPlatformPath(locationOfProject.replace(/\\/\\//g, '/'));\n\n if (!_.isString(location)) {\n Helpers.warn(`[project.from] location is not a string`)\n return;\n }\n if (path.basename(location) === 'dist') {\n location = path.dirname(location);\n }\n location = crossPlatformPath(path.resolve(location));\n\n const alreadyExist = this.projects.find(l => l.location.trim() === location.trim());\n if (alreadyExist) {\n return alreadyExist as any;\n }\n\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n \n\n\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 return this.ins.From(path.join(this.location, '..'));\n\n }\n\n get genericName() {\n\n let parent = this.parent as any as BaseProject;\n return [\n parent ? path.basename(path.dirname(parent.location)) : void 0,\n parent ? parent.basename : path.basename(this.location),\n this.basename,\n/* */\n/* */\n \n ]\n .filter(f => !!f)\n .join('/')\n\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/* */\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","takenPorts","Base"],"mappings":"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"}
@@ -76,5 +76,6 @@ export declare class Project<T extends Project<any> = any> {
76
76
  setType(this: Project, type: ConfigModels.LibType): void;
77
77
  typeIs(this: Project, ...types: ConfigModels.LibType[]): boolean;
78
78
  typeIsNot(this: Project, ...types: ConfigModels.LibType[]): boolean;
79
+ assignFreePort(startFrom: number, howManyFreePortsAfterThatPort?: number): Promise<number>;
79
80
  forEmptyStructure(): EmptyProjectStructure[];
80
81
  }