@proteinjs/build 1.0.8 → 1.0.10

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.
package/CHANGELOG.md CHANGED
@@ -3,6 +3,22 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ ## [1.0.10](https://github.com/proteinjs/build/compare/@proteinjs/build@1.0.9...@proteinjs/build@1.0.10) (2024-04-17)
7
+
8
+ **Note:** Version bump only for package @proteinjs/build
9
+
10
+
11
+
12
+
13
+
14
+ ## [1.0.9](https://github.com/proteinjs/build/compare/@proteinjs/build@1.0.8...@proteinjs/build@1.0.9) (2024-04-17)
15
+
16
+ **Note:** Version bump only for package @proteinjs/build
17
+
18
+
19
+
20
+
21
+
6
22
  ## [1.0.8](https://github.com/proteinjs/build/compare/@proteinjs/build@1.0.7...@proteinjs/build@1.0.8) (2024-04-17)
7
23
 
8
24
  **Note:** Version bump only for package @proteinjs/build
@@ -88,25 +88,27 @@ function buildWorkspace(workspaceMetadata) {
88
88
  _i = 0, filteredPackageNames_1 = filteredPackageNames;
89
89
  _c.label = 4;
90
90
  case 4:
91
- if (!(_i < filteredPackageNames_1.length)) return [3 /*break*/, 8];
91
+ if (!(_i < filteredPackageNames_1.length)) return [3 /*break*/, 9];
92
92
  packageName = filteredPackageNames_1[_i];
93
93
  localPackage = packageMap[packageName];
94
94
  packageDir = path.dirname(localPackage.filePath);
95
95
  return [4 /*yield*/, (0, util_node_1.cmd)('npm', ['install'], { cwd: packageDir })];
96
96
  case 5:
97
97
  _c.sent();
98
- // await PackageUtil.symlinkDependencies(localPackage, packageMap, logger);
98
+ return [4 /*yield*/, util_node_1.PackageUtil.symlinkDependencies(localPackage, packageMap, logger)];
99
+ case 6:
100
+ _c.sent();
99
101
  logger.info("Installed ".concat(packageName, " (").concat(packageDir, ")"));
100
- if (!(packageName != 'typescript-parser')) return [3 /*break*/, 7];
102
+ if (!(packageName != 'typescript-parser')) return [3 /*break*/, 8];
101
103
  return [4 /*yield*/, (0, util_node_1.cmd)('npm', ['run', 'build'], { cwd: packageDir })];
102
- case 6:
104
+ case 7:
103
105
  _c.sent();
104
106
  logger.info("Built ".concat(packageName, " (").concat(packageDir, ")"));
105
- _c.label = 7;
106
- case 7:
107
+ _c.label = 8;
108
+ case 8:
107
109
  _i++;
108
110
  return [3 /*break*/, 4];
109
- case 8:
111
+ case 9:
110
112
  logger.info("> Built workspace (".concat(workspacePath, ")"));
111
113
  return [2 /*return*/];
112
114
  }
@@ -1 +1 @@
1
- {"version":3,"file":"buildWorkspace.js","sourceRoot":"","sources":["../../src/buildWorkspace.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,yCAA4B;AAC5B,kDAA0E;AAC1E,wCAAwC;AAExC,SAAsB,cAAc,CAAC,iBAAqC;;;;;;oBAClE,MAAM,GAAG,IAAI,aAAM,CAAC,gBAAgB,CAAC,CAAC;oBACtC,aAAa,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;oBACpC,MAAM,CAAC,IAAI,CAAC,gCAAyB,aAAa,MAAG,CAAC,CAAC;yBACZ,iBAAiB,EAAjB,wBAAiB;oBAAG,KAAA,iBAAiB,CAAA;;wBAAG,qBAAM,uBAAW,CAAC,oBAAoB,CAAC,aAAa,CAAC,EAAA;;oBAArD,KAAA,SAAqD,CAAA;;;oBAAlI,OAAkI,EAAhI,UAAU,gBAAA,EAAE,kBAAkB,wBAAA;oBAChC,oBAAoB,GAAG,kBAAkB,CAAC,MAAM,CAAC,UAAA,WAAW,YAAI,OAAA,CAAC,CAAC,CAAA,MAAA,UAAU,CAAC,WAAW,CAAC,CAAC,WAAW,CAAC,OAAO,0CAAE,KAAK,CAAA,CAAA,EAAA,CAAC,CAAC;oBAC5H,MAAM,CAAC,KAAK,CAAC,uBAAgB,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC,CAAE,EAAE,IAAI,CAAC,CAAC;oBAC1E,MAAM,CAAC,KAAK,CAAC,iCAA0B,IAAI,CAAC,SAAS,CAAC,oBAAoB,EAAE,IAAI,EAAE,CAAC,CAAC,CAAE,EAAE,IAAI,CAAC,CAAC;oBAE9F,MAAM,CAAC,IAAI,CAAC,oCAA6B,oBAAoB,CAAC,MAAM,qBAAW,oBAAoB,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAE,CAAC,CAAC;0BAClF,EAApB,6CAAoB;;;yBAApB,CAAA,kCAAoB,CAAA;oBAAnC,WAAW;oBACZ,YAAY,GAAG,UAAU,CAAC,WAAW,CAAC,CAAC;oBACvC,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;oBACvD,qBAAM,IAAA,eAAG,EAAC,KAAK,EAAE,CAAC,SAAS,CAAC,EAAE,EAAE,GAAG,EAAE,UAAU,EAAE,CAAC,EAAA;;oBAAlD,SAAkD,CAAC;oBACnD,2EAA2E;oBAC3E,MAAM,CAAC,IAAI,CAAC,oBAAa,WAAW,eAAK,UAAU,MAAG,CAAC,CAAC;yBAEpD,CAAA,WAAW,IAAI,mBAAmB,CAAA,EAAlC,wBAAkC;oBACpC,qBAAM,IAAA,eAAG,EAAC,KAAK,EAAE,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,EAAE,GAAG,EAAE,UAAU,EAAE,CAAC,EAAA;;oBAAvD,SAAuD,CAAC;oBACxD,MAAM,CAAC,IAAI,CAAC,gBAAS,WAAW,eAAK,UAAU,MAAG,CAAC,CAAC;;;oBAThC,IAAoB,CAAA;;;oBAa5C,MAAM,CAAC,IAAI,CAAC,6BAAsB,aAAa,MAAG,CAAC,CAAC;;;;;CACrD;AAxBD,wCAwBC"}
1
+ {"version":3,"file":"buildWorkspace.js","sourceRoot":"","sources":["../../src/buildWorkspace.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,yCAA4B;AAC5B,kDAA0E;AAC1E,wCAAwC;AAExC,SAAsB,cAAc,CAAC,iBAAqC;;;;;;oBAClE,MAAM,GAAG,IAAI,aAAM,CAAC,gBAAgB,CAAC,CAAC;oBACtC,aAAa,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;oBACpC,MAAM,CAAC,IAAI,CAAC,gCAAyB,aAAa,MAAG,CAAC,CAAC;yBACZ,iBAAiB,EAAjB,wBAAiB;oBAAG,KAAA,iBAAiB,CAAA;;wBAAG,qBAAM,uBAAW,CAAC,oBAAoB,CAAC,aAAa,CAAC,EAAA;;oBAArD,KAAA,SAAqD,CAAA;;;oBAAlI,OAAkI,EAAhI,UAAU,gBAAA,EAAE,kBAAkB,wBAAA;oBAChC,oBAAoB,GAAG,kBAAkB,CAAC,MAAM,CAAC,UAAA,WAAW,YAAI,OAAA,CAAC,CAAC,CAAA,MAAA,UAAU,CAAC,WAAW,CAAC,CAAC,WAAW,CAAC,OAAO,0CAAE,KAAK,CAAA,CAAA,EAAA,CAAC,CAAC;oBAC5H,MAAM,CAAC,KAAK,CAAC,uBAAgB,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC,CAAE,EAAE,IAAI,CAAC,CAAC;oBAC1E,MAAM,CAAC,KAAK,CAAC,iCAA0B,IAAI,CAAC,SAAS,CAAC,oBAAoB,EAAE,IAAI,EAAE,CAAC,CAAC,CAAE,EAAE,IAAI,CAAC,CAAC;oBAE9F,MAAM,CAAC,IAAI,CAAC,oCAA6B,oBAAoB,CAAC,MAAM,qBAAW,oBAAoB,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAE,CAAC,CAAC;0BAClF,EAApB,6CAAoB;;;yBAApB,CAAA,kCAAoB,CAAA;oBAAnC,WAAW;oBACZ,YAAY,GAAG,UAAU,CAAC,WAAW,CAAC,CAAC;oBACvC,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;oBACvD,qBAAM,IAAA,eAAG,EAAC,KAAK,EAAE,CAAC,SAAS,CAAC,EAAE,EAAE,GAAG,EAAE,UAAU,EAAE,CAAC,EAAA;;oBAAlD,SAAkD,CAAC;oBACnD,qBAAM,uBAAW,CAAC,mBAAmB,CAAC,YAAY,EAAE,UAAU,EAAE,MAAM,CAAC,EAAA;;oBAAvE,SAAuE,CAAC;oBACxE,MAAM,CAAC,IAAI,CAAC,oBAAa,WAAW,eAAK,UAAU,MAAG,CAAC,CAAC;yBAEpD,CAAA,WAAW,IAAI,mBAAmB,CAAA,EAAlC,wBAAkC;oBACpC,qBAAM,IAAA,eAAG,EAAC,KAAK,EAAE,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,EAAE,GAAG,EAAE,UAAU,EAAE,CAAC,EAAA;;oBAAvD,SAAuD,CAAC;oBACxD,MAAM,CAAC,IAAI,CAAC,gBAAS,WAAW,eAAK,UAAU,MAAG,CAAC,CAAC;;;oBAThC,IAAoB,CAAA;;;oBAa5C,MAAM,CAAC,IAAI,CAAC,6BAAsB,aAAa,MAAG,CAAC,CAAC;;;;;CACrD;AAxBD,wCAwBC"}
@@ -0,0 +1,3 @@
1
+ import { WorkspaceMetadata } from '@proteinjs/util-node';
2
+ export declare const cleanWorkspace: (workspaceMetadata?: WorkspaceMetadata) => Promise<void>;
3
+ //# sourceMappingURL=cleanWorkspace.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cleanWorkspace.d.ts","sourceRoot":"","sources":["../../src/cleanWorkspace.ts"],"names":[],"mappings":"AACA,OAAO,EAAoB,iBAAiB,EAAE,MAAM,sBAAsB,CAAA;AAG1E,eAAO,MAAM,cAAc,uBAA8B,iBAAiB,kBAazE,CAAA"}
@@ -0,0 +1,105 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
26
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
27
+ return new (P || (P = Promise))(function (resolve, reject) {
28
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
29
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
30
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
31
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
32
+ });
33
+ };
34
+ var __generator = (this && this.__generator) || function (thisArg, body) {
35
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
36
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
37
+ function verb(n) { return function (v) { return step([n, v]); }; }
38
+ function step(op) {
39
+ if (f) throw new TypeError("Generator is already executing.");
40
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
41
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
42
+ if (y = 0, t) op = [op[0] & 2, t.value];
43
+ switch (op[0]) {
44
+ case 0: case 1: t = op; break;
45
+ case 4: _.label++; return { value: op[1], done: false };
46
+ case 5: _.label++; y = op[1]; op = [0]; continue;
47
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
48
+ default:
49
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
50
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
51
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
52
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
53
+ if (t[2]) _.ops.pop();
54
+ _.trys.pop(); continue;
55
+ }
56
+ op = body.call(thisArg, _);
57
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
58
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
59
+ }
60
+ };
61
+ Object.defineProperty(exports, "__esModule", { value: true });
62
+ exports.cleanWorkspace = void 0;
63
+ var path = __importStar(require("path"));
64
+ var util_node_1 = require("@proteinjs/util-node");
65
+ var util_1 = require("@proteinjs/util");
66
+ var cleanWorkspace = function (workspaceMetadata) { return __awaiter(void 0, void 0, void 0, function () {
67
+ var logger, workspacePath, _a, packageMap, sortedPackageNames, _b, filteredPackageNames, _i, filteredPackageNames_1, packageName, localPackage, packageDir;
68
+ return __generator(this, function (_c) {
69
+ switch (_c.label) {
70
+ case 0:
71
+ logger = new util_1.Logger('cleanWorkspace');
72
+ workspacePath = process.cwd();
73
+ if (!workspaceMetadata) return [3 /*break*/, 1];
74
+ _b = workspaceMetadata;
75
+ return [3 /*break*/, 3];
76
+ case 1: return [4 /*yield*/, util_node_1.PackageUtil.getWorkspaceMetadata(workspacePath)];
77
+ case 2:
78
+ _b = _c.sent();
79
+ _c.label = 3;
80
+ case 3:
81
+ _a = _b, packageMap = _a.packageMap, sortedPackageNames = _a.sortedPackageNames;
82
+ filteredPackageNames = sortedPackageNames.filter(function (packageName) { var _a; return !!((_a = packageMap[packageName].packageJson.scripts) === null || _a === void 0 ? void 0 : _a.clean) && packageName != 'typescript-parser'; });
83
+ logger.info("> Cleaning ".concat(filteredPackageNames.length, " package").concat(filteredPackageNames.length != 1 ? 's' : '', " in workspace (").concat(workspacePath, ")"));
84
+ _i = 0, filteredPackageNames_1 = filteredPackageNames;
85
+ _c.label = 4;
86
+ case 4:
87
+ if (!(_i < filteredPackageNames_1.length)) return [3 /*break*/, 7];
88
+ packageName = filteredPackageNames_1[_i];
89
+ localPackage = packageMap[packageName];
90
+ packageDir = path.dirname(localPackage.filePath);
91
+ return [4 /*yield*/, (0, util_node_1.cmd)('npm', ['run', 'clean'], { cwd: packageDir })];
92
+ case 5:
93
+ _c.sent();
94
+ _c.label = 6;
95
+ case 6:
96
+ _i++;
97
+ return [3 /*break*/, 4];
98
+ case 7:
99
+ logger.info("> Finished cleaning ".concat(filteredPackageNames.length, " package").concat(filteredPackageNames.length != 1 ? 's' : '', " in workspace (").concat(workspacePath, ")"));
100
+ return [2 /*return*/];
101
+ }
102
+ });
103
+ }); };
104
+ exports.cleanWorkspace = cleanWorkspace;
105
+ //# sourceMappingURL=cleanWorkspace.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cleanWorkspace.js","sourceRoot":"","sources":["../../src/cleanWorkspace.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,yCAA4B;AAC5B,kDAA0E;AAC1E,wCAAwC;AAEjC,IAAM,cAAc,GAAG,UAAO,iBAAqC;;;;;gBAClE,MAAM,GAAG,IAAI,aAAM,CAAC,gBAAgB,CAAC,CAAC;gBACtC,aAAa,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;qBACO,iBAAiB,EAAjB,wBAAiB;gBAAG,KAAA,iBAAiB,CAAA;;oBAAG,qBAAM,uBAAW,CAAC,oBAAoB,CAAC,aAAa,CAAC,EAAA;;gBAArD,KAAA,SAAqD,CAAA;;;gBAAlI,OAAkI,EAAhI,UAAU,gBAAA,EAAE,kBAAkB,wBAAA;gBAChC,oBAAoB,GAAG,kBAAkB,CAAC,MAAM,CAAC,UAAA,WAAW,YAAI,OAAA,CAAC,CAAC,CAAA,MAAA,UAAU,CAAC,WAAW,CAAC,CAAC,WAAW,CAAC,OAAO,0CAAE,KAAK,CAAA,IAAI,WAAW,IAAI,mBAAmB,CAAA,EAAA,CAAC,CAAC;gBAElK,MAAM,CAAC,IAAI,CAAC,qBAAc,oBAAoB,CAAC,MAAM,qBAAW,oBAAoB,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,4BAAkB,aAAa,MAAG,CAAC,CAAC;sBACnG,EAApB,6CAAoB;;;qBAApB,CAAA,kCAAoB,CAAA;gBAAnC,WAAW;gBACZ,YAAY,GAAG,UAAU,CAAC,WAAW,CAAC,CAAC;gBACvC,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;gBACvD,qBAAM,IAAA,eAAG,EAAC,KAAK,EAAE,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,EAAE,GAAG,EAAE,UAAU,EAAE,CAAC,EAAA;;gBAAvD,SAAuD,CAAC;;;gBAHlC,IAAoB,CAAA;;;gBAK5C,MAAM,CAAC,IAAI,CAAC,8BAAuB,oBAAoB,CAAC,MAAM,qBAAW,oBAAoB,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,4BAAkB,aAAa,MAAG,CAAC,CAAC;;;;KACzJ,CAAA;AAbY,QAAA,cAAc,kBAa1B"}
@@ -0,0 +1,3 @@
1
+ #!/usr/bin/env node
2
+ export {};
3
+ //# sourceMappingURL=runCleanWorkspace.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runCleanWorkspace.d.ts","sourceRoot":"","sources":["../../src/runCleanWorkspace.ts"],"names":[],"mappings":""}
@@ -0,0 +1,6 @@
1
+ #!/usr/bin/env node
2
+ "use strict";
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ var cleanWorkspace_1 = require("./cleanWorkspace");
5
+ (0, cleanWorkspace_1.cleanWorkspace)();
6
+ //# sourceMappingURL=runCleanWorkspace.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runCleanWorkspace.js","sourceRoot":"","sources":["../../src/runCleanWorkspace.ts"],"names":[],"mappings":";;;AAEA,mDAAiD;AAEjD,IAAA,+BAAc,GAAE,CAAC"}
package/package.json CHANGED
@@ -1,10 +1,11 @@
1
1
  {
2
2
  "name": "@proteinjs/build",
3
- "version": "1.0.8",
3
+ "version": "1.0.10",
4
4
  "description": "Workspace build tools",
5
5
  "main": "./dist/generated/index.js",
6
6
  "types": "./dist/generated/index.d.ts",
7
7
  "bin": {
8
+ "clean-workspace": "dist/src/runCleanWorkspace.js",
8
9
  "build-workspace": "dist/src/runBuildWorkspace.js",
9
10
  "test-workspace": "dist/src/runTestWorkspace.js",
10
11
  "watch-workspace": "dist/src/runWatchWorkspace.js"
@@ -44,5 +45,5 @@
44
45
  "webpack": "5.90.0",
45
46
  "webpack-cli": "5.1.4"
46
47
  },
47
- "gitHead": "9f1e19095ab228693d0a9e9e0a08b2f71621010a"
48
+ "gitHead": "ea9190703333d3138601fd6b18a170df84fc161a"
48
49
  }
@@ -16,7 +16,7 @@ export async function buildWorkspace(workspaceMetadata?: WorkspaceMetadata) {
16
16
  const localPackage = packageMap[packageName];
17
17
  const packageDir = path.dirname(localPackage.filePath);
18
18
  await cmd('npm', ['install'], { cwd: packageDir });
19
- // await PackageUtil.symlinkDependencies(localPackage, packageMap, logger);
19
+ await PackageUtil.symlinkDependencies(localPackage, packageMap, logger);
20
20
  logger.info(`Installed ${packageName} (${packageDir})`);
21
21
 
22
22
  if (packageName != 'typescript-parser') {
@@ -0,0 +1,18 @@
1
+ import * as path from 'path'
2
+ import { PackageUtil, cmd, WorkspaceMetadata } from '@proteinjs/util-node'
3
+ import { Logger } from '@proteinjs/util'
4
+
5
+ export const cleanWorkspace = async (workspaceMetadata?: WorkspaceMetadata) => {
6
+ const logger = new Logger('cleanWorkspace');
7
+ const workspacePath = process.cwd();
8
+ const { packageMap, sortedPackageNames } = workspaceMetadata ? workspaceMetadata : await PackageUtil.getWorkspaceMetadata(workspacePath);
9
+ const filteredPackageNames = sortedPackageNames.filter(packageName => !!packageMap[packageName].packageJson.scripts?.clean && packageName != 'typescript-parser');
10
+
11
+ logger.info(`> Cleaning ${filteredPackageNames.length} package${filteredPackageNames.length != 1 ? 's' : ''} in workspace (${workspacePath})`);
12
+ for (let packageName of filteredPackageNames) {
13
+ const localPackage = packageMap[packageName];
14
+ const packageDir = path.dirname(localPackage.filePath);
15
+ await cmd('npm', ['run', 'clean'], { cwd: packageDir });
16
+ }
17
+ logger.info(`> Finished cleaning ${filteredPackageNames.length} package${filteredPackageNames.length != 1 ? 's' : ''} in workspace (${workspacePath})`);
18
+ }
@@ -0,0 +1,5 @@
1
+ #!/usr/bin/env node
2
+
3
+ import { cleanWorkspace } from './cleanWorkspace'
4
+
5
+ cleanWorkspace();