@teambit/workspace 0.0.881 → 0.0.883

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 (108) hide show
  1. package/dist/bit-map.js +10 -51
  2. package/dist/bit-map.js.map +1 -1
  3. package/dist/build-graph-from-fs.js +1 -53
  4. package/dist/build-graph-from-fs.js.map +1 -1
  5. package/dist/capsule.cmd.js +2 -34
  6. package/dist/capsule.cmd.js.map +1 -1
  7. package/dist/component-config-file/component-config-file.js +2 -60
  8. package/dist/component-config-file/component-config-file.js.map +1 -1
  9. package/dist/component-config-file/exceptions/already-exists.js +0 -6
  10. package/dist/component-config-file/exceptions/already-exists.js.map +1 -1
  11. package/dist/component-config-file/exceptions/index.js +0 -3
  12. package/dist/component-config-file/exceptions/index.js.map +1 -1
  13. package/dist/component-config-file/index.js +0 -6
  14. package/dist/component-config-file/index.js.map +1 -1
  15. package/dist/component-tree.widget.js +0 -18
  16. package/dist/component-tree.widget.js.map +1 -1
  17. package/dist/constants.js.map +1 -1
  18. package/dist/eject-conf.cmd.js +0 -23
  19. package/dist/eject-conf.cmd.js.map +1 -1
  20. package/dist/envs-subcommands/envs-replace.cmd.js +0 -13
  21. package/dist/envs-subcommands/envs-replace.cmd.js.map +1 -1
  22. package/dist/envs-subcommands/envs-set.cmd.js +0 -16
  23. package/dist/envs-subcommands/envs-set.cmd.js.map +1 -1
  24. package/dist/envs-subcommands/envs-unset.cmd.js +0 -18
  25. package/dist/envs-subcommands/envs-unset.cmd.js.map +1 -1
  26. package/dist/events/index.js +0 -6
  27. package/dist/events/index.js.map +1 -1
  28. package/dist/events/on-component-add-event.js +1 -12
  29. package/dist/events/on-component-add-event.js.map +1 -1
  30. package/dist/events/on-component-change-event.js +1 -12
  31. package/dist/events/on-component-change-event.js.map +1 -1
  32. package/dist/events/on-component-removed-event.js +1 -12
  33. package/dist/events/on-component-removed-event.js.map +1 -1
  34. package/dist/exceptions/incorrect-env-aspect.js +0 -6
  35. package/dist/exceptions/incorrect-env-aspect.js.map +1 -1
  36. package/dist/index.js +0 -19
  37. package/dist/index.js.map +1 -1
  38. package/dist/list.cmd.js +2 -15
  39. package/dist/list.cmd.js.map +1 -1
  40. package/dist/pattern.cmd.js +0 -16
  41. package/dist/pattern.cmd.js.map +1 -1
  42. package/dist/scope-subcommands/scope-set.cmd.js +0 -17
  43. package/dist/scope-subcommands/scope-set.cmd.js.map +1 -1
  44. package/dist/ui/index.js +0 -3
  45. package/dist/ui/index.js.map +1 -1
  46. package/dist/ui/workspace/default-component.js.map +1 -1
  47. package/dist/ui/workspace/index.js +0 -2
  48. package/dist/ui/workspace/index.js.map +1 -1
  49. package/dist/ui/workspace/use-workspace.js +14 -49
  50. package/dist/ui/workspace/use-workspace.js.map +1 -1
  51. package/dist/ui/workspace/workspace-context.js +0 -7
  52. package/dist/ui/workspace/workspace-context.js.map +1 -1
  53. package/dist/ui/workspace/workspace-model.js +2 -14
  54. package/dist/ui/workspace/workspace-model.js.map +1 -1
  55. package/dist/ui/workspace/workspace-overview/index.js +0 -3
  56. package/dist/ui/workspace/workspace-overview/index.js.map +1 -1
  57. package/dist/ui/workspace/workspace-overview/workspace-overview.js +0 -23
  58. package/dist/ui/workspace/workspace-overview/workspace-overview.js.map +1 -1
  59. package/dist/ui/workspace/workspace-provider.js +0 -8
  60. package/dist/ui/workspace/workspace-provider.js.map +1 -1
  61. package/dist/ui/workspace/workspace.js +2 -52
  62. package/dist/ui/workspace/workspace.js.map +1 -1
  63. package/dist/use.cmd.js +0 -13
  64. package/dist/use.cmd.js.map +1 -1
  65. package/dist/watch/check-types.js +0 -1
  66. package/dist/watch/check-types.js.map +1 -1
  67. package/dist/watch/output-formatter.js +1 -12
  68. package/dist/watch/output-formatter.js.map +1 -1
  69. package/dist/watch/watch-queue.js +0 -13
  70. package/dist/watch/watch-queue.js.map +1 -1
  71. package/dist/watch/watch.cmd.js +6 -41
  72. package/dist/watch/watch.cmd.js.map +1 -1
  73. package/dist/watch/watcher.js +13 -133
  74. package/dist/watch/watcher.js.map +1 -1
  75. package/dist/workspace-component/component-status.js +0 -4
  76. package/dist/workspace-component/component-status.js.map +1 -1
  77. package/dist/workspace-component/index.js +0 -6
  78. package/dist/workspace-component/index.js.map +1 -1
  79. package/dist/workspace-component/workspace-component-loader.js +31 -116
  80. package/dist/workspace-component/workspace-component-loader.js.map +1 -1
  81. package/dist/workspace-component/workspace-component.js +1 -11
  82. package/dist/workspace-component/workspace-component.js.map +1 -1
  83. package/dist/workspace-section.js +2 -0
  84. package/dist/workspace-section.js.map +1 -1
  85. package/dist/workspace.aspect.js +0 -5
  86. package/dist/workspace.aspect.js.map +1 -1
  87. package/dist/workspace.composition.js +0 -6
  88. package/dist/workspace.composition.js.map +1 -1
  89. package/dist/workspace.d.ts +1 -0
  90. package/dist/workspace.graphql.js +0 -12
  91. package/dist/workspace.graphql.js.map +1 -1
  92. package/dist/workspace.js +141 -545
  93. package/dist/workspace.js.map +1 -1
  94. package/dist/workspace.main.runtime.js +0 -55
  95. package/dist/workspace.main.runtime.js.map +1 -1
  96. package/dist/workspace.provider.js +8 -77
  97. package/dist/workspace.provider.js.map +1 -1
  98. package/dist/workspace.ui-root.js +3 -17
  99. package/dist/workspace.ui-root.js.map +1 -1
  100. package/dist/workspace.ui.drawer.js +2 -24
  101. package/dist/workspace.ui.drawer.js.map +1 -1
  102. package/dist/workspace.ui.runtime.js +0 -75
  103. package/dist/workspace.ui.runtime.js.map +1 -1
  104. package/package-tar/teambit-workspace-0.0.883.tgz +0 -0
  105. package/package.json +18 -18
  106. package/{preview-1666409808293.js → preview-1666582798766.js} +2 -2
  107. package/workspace-component/workspace-component-loader.ts +13 -3
  108. package/package-tar/teambit-workspace-0.0.881.tgz +0 -0
@@ -1,56 +1,45 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
7
  exports.formatCompileResults = formatCompileResults;
9
8
  exports.formatWatchPathsSortByComponent = void 0;
10
-
11
9
  function _chalk() {
12
10
  const data = _interopRequireDefault(require("chalk"));
13
-
14
11
  _chalk = function () {
15
12
  return data;
16
13
  };
17
-
18
14
  return data;
19
15
  }
20
-
21
16
  const verboseComponentFilesArrayToString = componentFiles => {
22
17
  return componentFiles.reduce((outputString, filePath) => `${outputString} \t - ${filePath}\n`, ``);
23
18
  };
24
-
25
19
  const resultsForExtensionArrayToString = (resultsForExtension, verbose) => {
26
20
  return resultsForExtension.reduce((outputString, resultForExtension) => `${outputString}${_chalk().default.green('√')}SUCCESS\t${resultForExtension.component}\n
27
21
  ${verbose ? resultForExtension.componentFilesAsString : ''}\n`, '');
28
22
  };
29
-
30
23
  const formatWatchPathsSortByComponent = trackDirs => {
31
24
  return Object.keys(trackDirs).reduce((outputString, watchPath) => `${outputString}
32
25
  ${_chalk().default.green('√')} SUCCESS\t${trackDirs[watchPath]}\n
33
26
  \t - ${watchPath}\n\n`, ` ${_chalk().default.underline('STATUS\t\tCOMPONENT ID')}\n`);
34
27
  };
28
+
35
29
  /**
36
30
  * todo: this was implemented incorrectly.
37
31
  * the original idea of `SerializableResults` was to have each one of the aspects registered to the slot, the
38
32
  * ability to have their own formatting to their results, and then `toString()` method to print them.
39
33
  * Here, the printing is specifically to the Compiler aspect. It should move to where it belongs.
40
34
  */
41
-
42
-
43
35
  exports.formatWatchPathsSortByComponent = formatWatchPathsSortByComponent;
44
-
45
36
  function formatCompileResults(compileResults, verbose) {
46
37
  if (!compileResults.length || !Array.isArray(compileResults)) return '';
47
38
  return compileResults.filter(compileResult => {
48
39
  var _compileResult$result, _compileResult$result2;
49
-
50
40
  return ((_compileResult$result = compileResult.results) === null || _compileResult$result === void 0 ? void 0 : _compileResult$result.results) && Array.isArray((_compileResult$result2 = compileResult.results) === null || _compileResult$result2 === void 0 ? void 0 : _compileResult$result2.results);
51
41
  }).map(compileResult => {
52
42
  var _compileResult$result3, _compileResult$result4;
53
-
54
43
  return {
55
44
  extensionId: compileResult.extensionId,
56
45
  resultsForExtension: (_compileResult$result3 = compileResult.results) === null || _compileResult$result3 === void 0 ? void 0 : (_compileResult$result4 = _compileResult$result3.results) === null || _compileResult$result4 === void 0 ? void 0 : _compileResult$result4.map(resultForExtension => ({
@@ -1 +1 @@
1
- {"version":3,"names":["verboseComponentFilesArrayToString","componentFiles","reduce","outputString","filePath","resultsForExtensionArrayToString","resultsForExtension","verbose","resultForExtension","chalk","green","component","componentFilesAsString","formatWatchPathsSortByComponent","trackDirs","Object","keys","watchPath","underline","formatCompileResults","compileResults","length","Array","isArray","filter","compileResult","results","map","extensionId","buildResults"],"sources":["output-formatter.ts"],"sourcesContent":["import chalk from 'chalk';\nimport { OnComponentEventResult } from '../on-component-events';\n\nconst verboseComponentFilesArrayToString = (componentFiles) => {\n return componentFiles.reduce((outputString, filePath) => `${outputString} \\t - ${filePath}\\n`, ``);\n};\n\nconst resultsForExtensionArrayToString = (resultsForExtension, verbose) => {\n return resultsForExtension.reduce(\n (outputString, resultForExtension) =>\n `${outputString}${chalk.green('√')}SUCCESS\\t${resultForExtension.component}\\n\n ${verbose ? resultForExtension.componentFilesAsString : ''}\\n`,\n ''\n );\n};\n\nexport const formatWatchPathsSortByComponent = (trackDirs) => {\n return Object.keys(trackDirs).reduce(\n (outputString, watchPath) =>\n `${outputString}\n ${chalk.green('√')} SUCCESS\\t${trackDirs[watchPath]}\\n\n \\t - ${watchPath}\\n\\n`,\n ` ${chalk.underline('STATUS\\t\\tCOMPONENT ID')}\\n`\n );\n};\n\n/**\n * todo: this was implemented incorrectly.\n * the original idea of `SerializableResults` was to have each one of the aspects registered to the slot, the\n * ability to have their own formatting to their results, and then `toString()` method to print them.\n * Here, the printing is specifically to the Compiler aspect. It should move to where it belongs.\n */\nexport function formatCompileResults(compileResults: OnComponentEventResult[], verbose: boolean) {\n if (!compileResults.length || !Array.isArray(compileResults)) return '';\n return compileResults\n .filter((compileResult) => compileResult.results?.results && Array.isArray(compileResult.results?.results))\n .map((compileResult) => ({\n extensionId: compileResult.extensionId,\n resultsForExtension: compileResult.results?.results?.map((resultForExtension) => ({\n component: resultForExtension.component,\n componentFilesAsString: verboseComponentFilesArrayToString(resultForExtension.buildResults),\n })),\n }))\n .reduce(\n (outputString, compileResult) =>\n `${outputString}\n ${resultsForExtensionArrayToString(compileResult.resultsForExtension, verbose)}`,\n ` ${chalk.underline('STATUS\\tCOMPONENT ID')}`\n );\n}\n"],"mappings":";;;;;;;;;;AAAA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AAGA,MAAMA,kCAAkC,GAAIC,cAAD,IAAoB;EAC7D,OAAOA,cAAc,CAACC,MAAf,CAAsB,CAACC,YAAD,EAAeC,QAAf,KAA6B,GAAED,YAAa,SAAQC,QAAS,IAAnF,EAAyF,EAAzF,CAAP;AACD,CAFD;;AAIA,MAAMC,gCAAgC,GAAG,CAACC,mBAAD,EAAsBC,OAAtB,KAAkC;EACzE,OAAOD,mBAAmB,CAACJ,MAApB,CACL,CAACC,YAAD,EAAeK,kBAAf,KACG,GAAEL,YAAa,GAAEM,gBAAA,CAAMC,KAAN,CAAY,GAAZ,CAAiB,YAAWF,kBAAkB,CAACG,SAAU;AACjF,OAAOJ,OAAO,GAAGC,kBAAkB,CAACI,sBAAtB,GAA+C,EAAG,IAHvD,EAIL,EAJK,CAAP;AAMD,CAPD;;AASO,MAAMC,+BAA+B,GAAIC,SAAD,IAAe;EAC5D,OAAOC,MAAM,CAACC,IAAP,CAAYF,SAAZ,EAAuBZ,MAAvB,CACL,CAACC,YAAD,EAAec,SAAf,KACG,GAAEd,YAAa;AACtB,MAAMM,gBAAA,CAAMC,KAAN,CAAY,GAAZ,CAAiB,aAAYI,SAAS,CAACG,SAAD,CAAY;AACxD,WAAWA,SAAU,MAJZ,EAKJ,IAAGR,gBAAA,CAAMS,SAAN,CAAgB,wBAAhB,CAA0C,IALzC,CAAP;AAOD,CARM;AAUP;AACA;AACA;AACA;AACA;AACA;;;;;AACO,SAASC,oBAAT,CAA8BC,cAA9B,EAAwEb,OAAxE,EAA0F;EAC/F,IAAI,CAACa,cAAc,CAACC,MAAhB,IAA0B,CAACC,KAAK,CAACC,OAAN,CAAcH,cAAd,CAA/B,EAA8D,OAAO,EAAP;EAC9D,OAAOA,cAAc,CAClBI,MADI,CACIC,aAAD;IAAA;;IAAA,OAAmB,0BAAAA,aAAa,CAACC,OAAd,gFAAuBA,OAAvB,KAAkCJ,KAAK,CAACC,OAAN,2BAAcE,aAAa,CAACC,OAA5B,2DAAc,uBAAuBA,OAArC,CAArD;EAAA,CADH,EAEJC,GAFI,CAECF,aAAD;IAAA;;IAAA,OAAoB;MACvBG,WAAW,EAAEH,aAAa,CAACG,WADJ;MAEvBtB,mBAAmB,4BAAEmB,aAAa,CAACC,OAAhB,qFAAE,uBAAuBA,OAAzB,2DAAE,uBAAgCC,GAAhC,CAAqCnB,kBAAD,KAAyB;QAChFG,SAAS,EAAEH,kBAAkB,CAACG,SADkD;QAEhFC,sBAAsB,EAAEZ,kCAAkC,CAACQ,kBAAkB,CAACqB,YAApB;MAFsB,CAAzB,CAApC;IAFE,CAApB;EAAA,CAFA,EASJ3B,MATI,CAUH,CAACC,YAAD,EAAesB,aAAf,KACG,GAAEtB,YAAa;AACxB,IAAIE,gCAAgC,CAACoB,aAAa,CAACnB,mBAAf,EAAoCC,OAApC,CAA6C,EAZxE,EAaF,IAAGE,gBAAA,CAAMS,SAAN,CAAgB,sBAAhB,CAAwC,EAbzC,CAAP;AAeD"}
1
+ {"version":3,"names":["verboseComponentFilesArrayToString","componentFiles","reduce","outputString","filePath","resultsForExtensionArrayToString","resultsForExtension","verbose","resultForExtension","chalk","green","component","componentFilesAsString","formatWatchPathsSortByComponent","trackDirs","Object","keys","watchPath","underline","formatCompileResults","compileResults","length","Array","isArray","filter","compileResult","results","map","extensionId","buildResults"],"sources":["output-formatter.ts"],"sourcesContent":["import chalk from 'chalk';\nimport { OnComponentEventResult } from '../on-component-events';\n\nconst verboseComponentFilesArrayToString = (componentFiles) => {\n return componentFiles.reduce((outputString, filePath) => `${outputString} \\t - ${filePath}\\n`, ``);\n};\n\nconst resultsForExtensionArrayToString = (resultsForExtension, verbose) => {\n return resultsForExtension.reduce(\n (outputString, resultForExtension) =>\n `${outputString}${chalk.green('√')}SUCCESS\\t${resultForExtension.component}\\n\n ${verbose ? resultForExtension.componentFilesAsString : ''}\\n`,\n ''\n );\n};\n\nexport const formatWatchPathsSortByComponent = (trackDirs) => {\n return Object.keys(trackDirs).reduce(\n (outputString, watchPath) =>\n `${outputString}\n ${chalk.green('√')} SUCCESS\\t${trackDirs[watchPath]}\\n\n \\t - ${watchPath}\\n\\n`,\n ` ${chalk.underline('STATUS\\t\\tCOMPONENT ID')}\\n`\n );\n};\n\n/**\n * todo: this was implemented incorrectly.\n * the original idea of `SerializableResults` was to have each one of the aspects registered to the slot, the\n * ability to have their own formatting to their results, and then `toString()` method to print them.\n * Here, the printing is specifically to the Compiler aspect. It should move to where it belongs.\n */\nexport function formatCompileResults(compileResults: OnComponentEventResult[], verbose: boolean) {\n if (!compileResults.length || !Array.isArray(compileResults)) return '';\n return compileResults\n .filter((compileResult) => compileResult.results?.results && Array.isArray(compileResult.results?.results))\n .map((compileResult) => ({\n extensionId: compileResult.extensionId,\n resultsForExtension: compileResult.results?.results?.map((resultForExtension) => ({\n component: resultForExtension.component,\n componentFilesAsString: verboseComponentFilesArrayToString(resultForExtension.buildResults),\n })),\n }))\n .reduce(\n (outputString, compileResult) =>\n `${outputString}\n ${resultsForExtensionArrayToString(compileResult.resultsForExtension, verbose)}`,\n ` ${chalk.underline('STATUS\\tCOMPONENT ID')}`\n );\n}\n"],"mappings":";;;;;;;;AAAA;EAAA;EAAA;IAAA;EAAA;EAAA;AAAA;AAGA,MAAMA,kCAAkC,GAAIC,cAAc,IAAK;EAC7D,OAAOA,cAAc,CAACC,MAAM,CAAC,CAACC,YAAY,EAAEC,QAAQ,KAAM,GAAED,YAAa,SAAQC,QAAS,IAAG,EAAG,EAAC,CAAC;AACpG,CAAC;AAED,MAAMC,gCAAgC,GAAG,CAACC,mBAAmB,EAAEC,OAAO,KAAK;EACzE,OAAOD,mBAAmB,CAACJ,MAAM,CAC/B,CAACC,YAAY,EAAEK,kBAAkB,KAC9B,GAAEL,YAAa,GAAEM,gBAAK,CAACC,KAAK,CAAC,GAAG,CAAE,YAAWF,kBAAkB,CAACG,SAAU;AACjF,OAAOJ,OAAO,GAAGC,kBAAkB,CAACI,sBAAsB,GAAG,EAAG,IAAG,EAC/D,EAAE,CACH;AACH,CAAC;AAEM,MAAMC,+BAA+B,GAAIC,SAAS,IAAK;EAC5D,OAAOC,MAAM,CAACC,IAAI,CAACF,SAAS,CAAC,CAACZ,MAAM,CAClC,CAACC,YAAY,EAAEc,SAAS,KACrB,GAAEd,YAAa;AACtB,MAAMM,gBAAK,CAACC,KAAK,CAAC,GAAG,CAAE,aAAYI,SAAS,CAACG,SAAS,CAAE;AACxD,WAAWA,SAAU,MAAK,EACrB,IAAGR,gBAAK,CAACS,SAAS,CAAC,wBAAwB,CAAE,IAAG,CAClD;AACH,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AALA;AAMO,SAASC,oBAAoB,CAACC,cAAwC,EAAEb,OAAgB,EAAE;EAC/F,IAAI,CAACa,cAAc,CAACC,MAAM,IAAI,CAACC,KAAK,CAACC,OAAO,CAACH,cAAc,CAAC,EAAE,OAAO,EAAE;EACvE,OAAOA,cAAc,CAClBI,MAAM,CAAEC,aAAa;IAAA;IAAA,OAAK,0BAAAA,aAAa,CAACC,OAAO,0DAArB,sBAAuBA,OAAO,KAAIJ,KAAK,CAACC,OAAO,2BAACE,aAAa,CAACC,OAAO,2DAArB,uBAAuBA,OAAO,CAAC;EAAA,EAAC,CAC1GC,GAAG,CAAEF,aAAa;IAAA;IAAA,OAAM;MACvBG,WAAW,EAAEH,aAAa,CAACG,WAAW;MACtCtB,mBAAmB,4BAAEmB,aAAa,CAACC,OAAO,qFAArB,uBAAuBA,OAAO,2DAA9B,uBAAgCC,GAAG,CAAEnB,kBAAkB,KAAM;QAChFG,SAAS,EAAEH,kBAAkB,CAACG,SAAS;QACvCC,sBAAsB,EAAEZ,kCAAkC,CAACQ,kBAAkB,CAACqB,YAAY;MAC5F,CAAC,CAAC;IACJ,CAAC;EAAA,CAAC,CAAC,CACF3B,MAAM,CACL,CAACC,YAAY,EAAEsB,aAAa,KACzB,GAAEtB,YAAa;AACxB,IAAIE,gCAAgC,CAACoB,aAAa,CAACnB,mBAAmB,EAAEC,OAAO,CAAE,EAAC,EAC3E,IAAGE,gBAAK,CAACS,SAAS,CAAC,sBAAsB,CAAE,EAAC,CAC9C;AACL"}
@@ -1,32 +1,24 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
7
  exports.WatchQueue = void 0;
9
-
10
8
  function _defineProperty2() {
11
9
  const data = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
12
-
13
10
  _defineProperty2 = function () {
14
11
  return data;
15
12
  };
16
-
17
13
  return data;
18
14
  }
19
-
20
15
  function _pQueue() {
21
16
  const data = _interopRequireDefault(require("p-queue"));
22
-
23
17
  _pQueue = function () {
24
18
  return data;
25
19
  };
26
-
27
20
  return data;
28
21
  }
29
-
30
22
  class WatchQueue {
31
23
  constructor(concurrency = 1) {
32
24
  (0, _defineProperty2().default)(this, "queue", void 0);
@@ -35,23 +27,18 @@ class WatchQueue {
35
27
  autoStart: true
36
28
  });
37
29
  }
38
-
39
30
  getQueue() {
40
31
  return this.queue;
41
32
  }
42
-
43
33
  add(fn, priority) {
44
34
  return this.queue.add(fn, {
45
35
  priority
46
36
  });
47
37
  }
48
-
49
38
  onIdle() {
50
39
  return this.queue.onIdle();
51
40
  }
52
-
53
41
  }
54
-
55
42
  exports.WatchQueue = WatchQueue;
56
43
 
57
44
  //# sourceMappingURL=watch-queue.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["WatchQueue","constructor","concurrency","queue","PQueue","autoStart","getQueue","add","fn","priority","onIdle"],"sources":["watch-queue.ts"],"sourcesContent":["import PQueue from 'p-queue';\n\nexport class WatchQueue {\n private queue: PQueue;\n constructor(concurrency = 1) {\n this.queue = new PQueue({ concurrency, autoStart: true });\n }\n getQueue() {\n return this.queue;\n }\n add<T>(fn: () => T, priority?: number): Promise<T> {\n return this.queue.add(fn, { priority });\n }\n onIdle(): Promise<void> {\n return this.queue.onIdle();\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AAEO,MAAMA,UAAN,CAAiB;EAEtBC,WAAW,CAACC,WAAW,GAAG,CAAf,EAAkB;IAAA;IAC3B,KAAKC,KAAL,GAAa,KAAIC,iBAAJ,EAAW;MAAEF,WAAF;MAAeG,SAAS,EAAE;IAA1B,CAAX,CAAb;EACD;;EACDC,QAAQ,GAAG;IACT,OAAO,KAAKH,KAAZ;EACD;;EACDI,GAAG,CAAIC,EAAJ,EAAiBC,QAAjB,EAAgD;IACjD,OAAO,KAAKN,KAAL,CAAWI,GAAX,CAAeC,EAAf,EAAmB;MAAEC;IAAF,CAAnB,CAAP;EACD;;EACDC,MAAM,GAAkB;IACtB,OAAO,KAAKP,KAAL,CAAWO,MAAX,EAAP;EACD;;AAbqB"}
1
+ {"version":3,"names":["WatchQueue","constructor","concurrency","queue","PQueue","autoStart","getQueue","add","fn","priority","onIdle"],"sources":["watch-queue.ts"],"sourcesContent":["import PQueue from 'p-queue';\n\nexport class WatchQueue {\n private queue: PQueue;\n constructor(concurrency = 1) {\n this.queue = new PQueue({ concurrency, autoStart: true });\n }\n getQueue() {\n return this.queue;\n }\n add<T>(fn: () => T, priority?: number): Promise<T> {\n return this.queue.add(fn, { priority });\n }\n onIdle(): Promise<void> {\n return this.queue.onIdle();\n }\n}\n"],"mappings":";;;;;;;;;;;;;;AAAA;EAAA;EAAA;IAAA;EAAA;EAAA;AAAA;AAEO,MAAMA,UAAU,CAAC;EAEtBC,WAAW,CAACC,WAAW,GAAG,CAAC,EAAE;IAAA;IAC3B,IAAI,CAACC,KAAK,GAAG,KAAIC,iBAAM,EAAC;MAAEF,WAAW;MAAEG,SAAS,EAAE;IAAK,CAAC,CAAC;EAC3D;EACAC,QAAQ,GAAG;IACT,OAAO,IAAI,CAACH,KAAK;EACnB;EACAI,GAAG,CAAIC,EAAW,EAAEC,QAAiB,EAAc;IACjD,OAAO,IAAI,CAACN,KAAK,CAACI,GAAG,CAACC,EAAE,EAAE;MAAEC;IAAS,CAAC,CAAC;EACzC;EACAC,MAAM,GAAkB;IACtB,OAAO,IAAI,CAACP,KAAK,CAACO,MAAM,EAAE;EAC5B;AACF;AAAC"}
@@ -1,75 +1,55 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
4
  require("core-js/modules/es.promise.js");
6
-
7
5
  Object.defineProperty(exports, "__esModule", {
8
6
  value: true
9
7
  });
10
8
  exports.WatchCommand = void 0;
11
-
12
9
  function _defineProperty2() {
13
10
  const data = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
14
-
15
11
  _defineProperty2 = function () {
16
12
  return data;
17
13
  };
18
-
19
14
  return data;
20
15
  }
21
-
22
16
  function _chalk() {
23
17
  const data = _interopRequireDefault(require("chalk"));
24
-
25
18
  _chalk = function () {
26
19
  return data;
27
20
  };
28
-
29
21
  return data;
30
22
  }
31
-
32
23
  function _moment() {
33
24
  const data = _interopRequireDefault(require("moment"));
34
-
35
25
  _moment = function () {
36
26
  return data;
37
27
  };
38
-
39
28
  return data;
40
29
  }
41
-
42
30
  function _compiler() {
43
31
  const data = require("@teambit/compiler");
44
-
45
32
  _compiler = function () {
46
33
  return data;
47
34
  };
48
-
49
35
  return data;
50
36
  }
51
-
52
37
  function _outputFormatter() {
53
38
  const data = require("./output-formatter");
54
-
55
39
  _outputFormatter = function () {
56
40
  return data;
57
41
  };
58
-
59
42
  return data;
60
43
  }
61
-
62
44
  function _checkTypes() {
63
45
  const data = require("./check-types");
64
-
65
46
  _checkTypes = function () {
66
47
  return data;
67
48
  };
68
-
69
49
  return data;
70
50
  }
71
-
72
51
  // import IDs and events
52
+
73
53
  class WatchCommand {
74
54
  constructor(
75
55
  /**
@@ -92,36 +72,32 @@ class WatchCommand {
92
72
  onStart: () => {},
93
73
  onReady: (workspace, watchPathsSortByComponent, verbose) => {
94
74
  clearOutdatedData();
95
-
96
75
  if (verbose) {
97
76
  this.logger.console((0, _outputFormatter().formatWatchPathsSortByComponent)(watchPathsSortByComponent));
98
77
  }
99
-
100
78
  this.logger.console(_chalk().default.yellow(`Watching for component changes in workspace ${workspace.config.name} (${(0, _moment().default)().format('HH:mm:ss')})...\n`));
101
79
  },
102
80
  onChange: (filePaths, buildResults, verbose, duration, failureMsg) => {
103
- const files = filePaths.join(', '); // clearOutdatedData();
104
-
81
+ const files = filePaths.join(', ');
82
+ // clearOutdatedData();
105
83
  if (!buildResults.length) {
106
84
  failureMsg = failureMsg || `The files ${files} have been changed, but nothing to compile`;
107
85
  this.logger.console(`${failureMsg}\n\n`);
108
86
  return;
109
87
  }
110
-
111
88
  this.logger.console(`The file(s) ${files} have been changed.\n\n`);
112
89
  this.logger.console((0, _outputFormatter().formatCompileResults)(buildResults, verbose));
113
90
  this.logger.console(`Finished. (${duration}ms)`);
114
91
  this.logger.console(_chalk().default.yellow(`Watching for component changes (${(0, _moment().default)().format('HH:mm:ss')})...`));
115
92
  },
116
93
  onAdd: (filePaths, buildResults, verbose, duration, failureMsg) => {
117
- const files = filePaths.join(', '); // clearOutdatedData();
118
-
94
+ const files = filePaths.join(', ');
95
+ // clearOutdatedData();
119
96
  if (!buildResults.length) {
120
97
  failureMsg = failureMsg || `The files ${files} have been added, but nothing to compile`;
121
98
  this.logger.console(`${failureMsg}\n\n`);
122
99
  return;
123
100
  }
124
-
125
101
  this.logger.console(`The file(s) ${filePaths} have been added.\n\n`);
126
102
  this.logger.console((0, _outputFormatter().formatCompileResults)(buildResults, verbose));
127
103
  this.logger.console(`Finished. (${duration}ms)`);
@@ -144,42 +120,34 @@ class WatchCommand {
144
120
  case _compiler().CompilerErrorEvent.TYPE:
145
121
  this.logger.console(`Watcher error ${event.data.error}, 'error'`);
146
122
  break;
147
-
148
123
  default:
149
124
  }
150
125
  });
151
126
  this.registerToEvents();
152
127
  }
153
-
154
128
  registerToEvents() {
155
129
  this.pubsub.sub(_compiler().CompilerAspect.id, this.eventsListener);
156
130
  }
157
-
158
131
  async report(cliArgs, watchCmdOpts) {
159
132
  const {
160
133
  verbose,
161
134
  checkTypes
162
135
  } = watchCmdOpts;
163
-
164
136
  const getCheckTypesEnum = () => {
165
137
  switch (checkTypes) {
166
138
  case undefined:
167
139
  case false:
168
140
  return _checkTypes().CheckTypes.None;
169
-
170
141
  case 'project':
171
142
  case true:
172
143
  // project is the default
173
144
  return _checkTypes().CheckTypes.EntireProject;
174
-
175
145
  case 'file':
176
146
  return _checkTypes().CheckTypes.ChangedFile;
177
-
178
147
  default:
179
148
  throw new Error(`check-types can be either "file" or "project". got "${checkTypes}"`);
180
149
  }
181
150
  };
182
-
183
151
  const watchOpts = {
184
152
  msgs: this.msgs,
185
153
  verbose,
@@ -191,15 +159,12 @@ class WatchCommand {
191
159
  await this.watcher.watchAll(watchOpts);
192
160
  return 'watcher terminated';
193
161
  }
194
-
195
162
  }
163
+
196
164
  /**
197
165
  * with console.clear() all history is deleted from the console. this function preserver the history.
198
166
  */
199
-
200
-
201
167
  exports.WatchCommand = WatchCommand;
202
-
203
168
  function clearOutdatedData() {
204
169
  process.stdout.write('\x1Bc');
205
170
  }
@@ -1 +1 @@
1
- {"version":3,"names":["WatchCommand","constructor","pubsub","logger","watcher","onAll","event","path","console","onStart","onReady","workspace","watchPathsSortByComponent","verbose","clearOutdatedData","formatWatchPathsSortByComponent","chalk","yellow","config","name","moment","format","onChange","filePaths","buildResults","duration","failureMsg","files","join","length","formatCompileResults","onAdd","onUnlink","p","onError","err","type","CompilerErrorEvent","TYPE","data","error","registerToEvents","sub","CompilerAspect","id","eventsListener","report","cliArgs","watchCmdOpts","checkTypes","getCheckTypesEnum","undefined","CheckTypes","None","EntireProject","ChangedFile","Error","watchOpts","msgs","preCompile","skipPreCompilation","spawnTSServer","Boolean","watchAll","process","stdout","write"],"sources":["watch.cmd.tsx"],"sourcesContent":["import chalk from 'chalk';\nimport moment from 'moment';\nimport { Command, CommandOptions } from '@teambit/cli';\nimport type { Logger } from '@teambit/logger';\nimport type { BitBaseEvent, PubsubMain } from '@teambit/pubsub';\n\n// import IDs and events\nimport { CompilerAspect, CompilerErrorEvent } from '@teambit/compiler';\n\nimport { Watcher, WatchOptions } from './watcher';\nimport { formatCompileResults, formatWatchPathsSortByComponent } from './output-formatter';\nimport { OnComponentEventResult } from '../on-component-events';\nimport { CheckTypes } from './check-types';\n\nexport type WatchCmdOpts = {\n verbose?: boolean;\n skipPreCompilation?: boolean;\n checkTypes?: string | boolean;\n};\n\nexport class WatchCommand implements Command {\n msgs = {\n onAll: (event: string, path: string) => this.logger.console(`Event: \"${event}\". Path: ${path}`),\n onStart: () => {},\n onReady: (workspace, watchPathsSortByComponent, verbose) => {\n clearOutdatedData();\n if (verbose) {\n this.logger.console(formatWatchPathsSortByComponent(watchPathsSortByComponent));\n }\n this.logger.console(\n chalk.yellow(\n `Watching for component changes in workspace ${workspace.config.name} (${moment().format('HH:mm:ss')})...\\n`\n )\n );\n },\n onChange: (\n filePaths: string[],\n buildResults: OnComponentEventResult[],\n verbose: boolean,\n duration,\n failureMsg?: string\n ) => {\n const files = filePaths.join(', ');\n // clearOutdatedData();\n if (!buildResults.length) {\n failureMsg = failureMsg || `The files ${files} have been changed, but nothing to compile`;\n this.logger.console(`${failureMsg}\\n\\n`);\n return;\n }\n this.logger.console(`The file(s) ${files} have been changed.\\n\\n`);\n this.logger.console(formatCompileResults(buildResults, verbose));\n this.logger.console(`Finished. (${duration}ms)`);\n this.logger.console(chalk.yellow(`Watching for component changes (${moment().format('HH:mm:ss')})...`));\n },\n onAdd: (\n filePaths: string[],\n buildResults: OnComponentEventResult[],\n verbose: boolean,\n duration,\n failureMsg?: string\n ) => {\n const files = filePaths.join(', ');\n // clearOutdatedData();\n if (!buildResults.length) {\n failureMsg = failureMsg || `The files ${files} have been added, but nothing to compile`;\n this.logger.console(`${failureMsg}\\n\\n`);\n return;\n }\n this.logger.console(`The file(s) ${filePaths} have been added.\\n\\n`);\n this.logger.console(formatCompileResults(buildResults, verbose));\n this.logger.console(`Finished. (${duration}ms)`);\n this.logger.console(chalk.yellow(`Watching for component changes (${moment().format('HH:mm:ss')})...`));\n },\n onUnlink: (p) => {\n this.logger.console(`file ${p} has been removed`);\n },\n onError: (err) => {\n this.logger.console(`Watcher error ${err}`);\n },\n };\n\n name = 'watch';\n description = 'automatically recompile modified components (on save)';\n alias = '';\n group = 'development';\n options = [\n ['v', 'verbose', 'show npm verbose output for inspection and print the stack trace'],\n ['', 'skip-pre-compilation', 'skip the compilation step before starting to watch'],\n [\n 't',\n 'check-types [string]',\n 'EXPERIMENTAL. show errors/warnings for types. options are [file, project] to investigate only changed file or entire project. defaults to project',\n ],\n ] as CommandOptions;\n\n constructor(\n /**\n * logger extension.\n */\n private pubsub: PubsubMain,\n\n /**\n * logger extension.\n */\n private logger: Logger,\n\n /**\n * watcher extension.\n */\n private watcher: Watcher\n ) {\n this.registerToEvents();\n }\n\n private registerToEvents() {\n this.pubsub.sub(CompilerAspect.id, this.eventsListener);\n }\n\n private eventsListener = (event: BitBaseEvent<any>) => {\n switch (event.type) {\n case CompilerErrorEvent.TYPE:\n this.logger.console(`Watcher error ${event.data.error}, 'error'`);\n break;\n default:\n }\n };\n\n async report(cliArgs: [], watchCmdOpts: WatchCmdOpts) {\n const { verbose, checkTypes } = watchCmdOpts;\n const getCheckTypesEnum = () => {\n switch (checkTypes) {\n case undefined:\n case false:\n return CheckTypes.None;\n case 'project':\n case true: // project is the default\n return CheckTypes.EntireProject;\n case 'file':\n return CheckTypes.ChangedFile;\n default:\n throw new Error(`check-types can be either \"file\" or \"project\". got \"${checkTypes}\"`);\n }\n };\n const watchOpts: WatchOptions = {\n msgs: this.msgs,\n verbose,\n preCompile: !watchCmdOpts.skipPreCompilation,\n spawnTSServer: Boolean(checkTypes), // if check-types is enabled, it must spawn the tsserver.\n checkTypes: getCheckTypesEnum(),\n };\n await this.watcher.watchAll(watchOpts);\n return 'watcher terminated';\n }\n}\n\n/**\n * with console.clear() all history is deleted from the console. this function preserver the history.\n */\nfunction clearOutdatedData() {\n process.stdout.write('\\x1Bc');\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["WatchCommand","constructor","pubsub","logger","watcher","onAll","event","path","console","onStart","onReady","workspace","watchPathsSortByComponent","verbose","clearOutdatedData","formatWatchPathsSortByComponent","chalk","yellow","config","name","moment","format","onChange","filePaths","buildResults","duration","failureMsg","files","join","length","formatCompileResults","onAdd","onUnlink","p","onError","err","type","CompilerErrorEvent","TYPE","data","error","registerToEvents","sub","CompilerAspect","id","eventsListener","report","cliArgs","watchCmdOpts","checkTypes","getCheckTypesEnum","undefined","CheckTypes","None","EntireProject","ChangedFile","Error","watchOpts","msgs","preCompile","skipPreCompilation","spawnTSServer","Boolean","watchAll","process","stdout","write"],"sources":["watch.cmd.tsx"],"sourcesContent":["import chalk from 'chalk';\nimport moment from 'moment';\nimport { Command, CommandOptions } from '@teambit/cli';\nimport type { Logger } from '@teambit/logger';\nimport type { BitBaseEvent, PubsubMain } from '@teambit/pubsub';\n\n// import IDs and events\nimport { CompilerAspect, CompilerErrorEvent } from '@teambit/compiler';\n\nimport { Watcher, WatchOptions } from './watcher';\nimport { formatCompileResults, formatWatchPathsSortByComponent } from './output-formatter';\nimport { OnComponentEventResult } from '../on-component-events';\nimport { CheckTypes } from './check-types';\n\nexport type WatchCmdOpts = {\n verbose?: boolean;\n skipPreCompilation?: boolean;\n checkTypes?: string | boolean;\n};\n\nexport class WatchCommand implements Command {\n msgs = {\n onAll: (event: string, path: string) => this.logger.console(`Event: \"${event}\". Path: ${path}`),\n onStart: () => {},\n onReady: (workspace, watchPathsSortByComponent, verbose) => {\n clearOutdatedData();\n if (verbose) {\n this.logger.console(formatWatchPathsSortByComponent(watchPathsSortByComponent));\n }\n this.logger.console(\n chalk.yellow(\n `Watching for component changes in workspace ${workspace.config.name} (${moment().format('HH:mm:ss')})...\\n`\n )\n );\n },\n onChange: (\n filePaths: string[],\n buildResults: OnComponentEventResult[],\n verbose: boolean,\n duration,\n failureMsg?: string\n ) => {\n const files = filePaths.join(', ');\n // clearOutdatedData();\n if (!buildResults.length) {\n failureMsg = failureMsg || `The files ${files} have been changed, but nothing to compile`;\n this.logger.console(`${failureMsg}\\n\\n`);\n return;\n }\n this.logger.console(`The file(s) ${files} have been changed.\\n\\n`);\n this.logger.console(formatCompileResults(buildResults, verbose));\n this.logger.console(`Finished. (${duration}ms)`);\n this.logger.console(chalk.yellow(`Watching for component changes (${moment().format('HH:mm:ss')})...`));\n },\n onAdd: (\n filePaths: string[],\n buildResults: OnComponentEventResult[],\n verbose: boolean,\n duration,\n failureMsg?: string\n ) => {\n const files = filePaths.join(', ');\n // clearOutdatedData();\n if (!buildResults.length) {\n failureMsg = failureMsg || `The files ${files} have been added, but nothing to compile`;\n this.logger.console(`${failureMsg}\\n\\n`);\n return;\n }\n this.logger.console(`The file(s) ${filePaths} have been added.\\n\\n`);\n this.logger.console(formatCompileResults(buildResults, verbose));\n this.logger.console(`Finished. (${duration}ms)`);\n this.logger.console(chalk.yellow(`Watching for component changes (${moment().format('HH:mm:ss')})...`));\n },\n onUnlink: (p) => {\n this.logger.console(`file ${p} has been removed`);\n },\n onError: (err) => {\n this.logger.console(`Watcher error ${err}`);\n },\n };\n\n name = 'watch';\n description = 'automatically recompile modified components (on save)';\n alias = '';\n group = 'development';\n options = [\n ['v', 'verbose', 'show npm verbose output for inspection and print the stack trace'],\n ['', 'skip-pre-compilation', 'skip the compilation step before starting to watch'],\n [\n 't',\n 'check-types [string]',\n 'EXPERIMENTAL. show errors/warnings for types. options are [file, project] to investigate only changed file or entire project. defaults to project',\n ],\n ] as CommandOptions;\n\n constructor(\n /**\n * logger extension.\n */\n private pubsub: PubsubMain,\n\n /**\n * logger extension.\n */\n private logger: Logger,\n\n /**\n * watcher extension.\n */\n private watcher: Watcher\n ) {\n this.registerToEvents();\n }\n\n private registerToEvents() {\n this.pubsub.sub(CompilerAspect.id, this.eventsListener);\n }\n\n private eventsListener = (event: BitBaseEvent<any>) => {\n switch (event.type) {\n case CompilerErrorEvent.TYPE:\n this.logger.console(`Watcher error ${event.data.error}, 'error'`);\n break;\n default:\n }\n };\n\n async report(cliArgs: [], watchCmdOpts: WatchCmdOpts) {\n const { verbose, checkTypes } = watchCmdOpts;\n const getCheckTypesEnum = () => {\n switch (checkTypes) {\n case undefined:\n case false:\n return CheckTypes.None;\n case 'project':\n case true: // project is the default\n return CheckTypes.EntireProject;\n case 'file':\n return CheckTypes.ChangedFile;\n default:\n throw new Error(`check-types can be either \"file\" or \"project\". got \"${checkTypes}\"`);\n }\n };\n const watchOpts: WatchOptions = {\n msgs: this.msgs,\n verbose,\n preCompile: !watchCmdOpts.skipPreCompilation,\n spawnTSServer: Boolean(checkTypes), // if check-types is enabled, it must spawn the tsserver.\n checkTypes: getCheckTypesEnum(),\n };\n await this.watcher.watchAll(watchOpts);\n return 'watcher terminated';\n }\n}\n\n/**\n * with console.clear() all history is deleted from the console. this function preserver the history.\n */\nfunction clearOutdatedData() {\n process.stdout.write('\\x1Bc');\n}\n"],"mappings":"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"}