@mschauer5/spfx-toolkit 1.0.25 → 1.0.27
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/lib/commands/index.js +5 -3
- package/lib/commands/index.js.map +1 -1
- package/lib/commands/open.command.js +55 -0
- package/lib/commands/open.command.js.map +1 -0
- package/lib/commands/projects.command.js +46 -0
- package/lib/commands/projects.command.js.map +1 -0
- package/lib/commands/repo.command.js +8 -19
- package/lib/commands/repo.command.js.map +1 -1
- package/lib/common/util.js +40 -7
- package/lib/common/util.js.map +1 -1
- package/lib/index.js +36 -9
- package/lib/index.js.map +1 -1
- package/package.json +7 -2
- package/src/commands/index.ts +4 -2
- package/src/commands/open.command.ts +51 -0
- package/src/commands/projects.command.ts +37 -0
- package/src/commands/repo.command.ts +2 -14
- package/src/common/util.ts +45 -7
- package/src/index.ts +40 -9
- package/src/commands/open-solution.command.ts +0 -25
package/lib/commands/index.js
CHANGED
|
@@ -33,7 +33,7 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
33
33
|
};
|
|
34
34
|
})();
|
|
35
35
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
-
exports.repo = exports.envCommands = exports.nvmrc = exports.installer = exports.
|
|
36
|
+
exports.projects = exports.repo = exports.envCommands = exports.nvmrc = exports.installer = exports.open = exports.scripts = exports.version = exports.env = exports.alias = void 0;
|
|
37
37
|
const alias = __importStar(require("./alias.command"));
|
|
38
38
|
exports.alias = alias;
|
|
39
39
|
const eslint = __importStar(require("./eslint.command"));
|
|
@@ -42,8 +42,8 @@ const version = __importStar(require("./version.command"));
|
|
|
42
42
|
exports.version = version;
|
|
43
43
|
const scripts = __importStar(require("./scripts.command"));
|
|
44
44
|
exports.scripts = scripts;
|
|
45
|
-
const
|
|
46
|
-
|
|
45
|
+
const open = __importStar(require("./open.command"));
|
|
46
|
+
exports.open = open;
|
|
47
47
|
const installer = __importStar(require("./installer.command"));
|
|
48
48
|
exports.installer = installer;
|
|
49
49
|
const nvmrc = __importStar(require("./nvmrc.command"));
|
|
@@ -52,4 +52,6 @@ const envCommands = __importStar(require("./env.commands"));
|
|
|
52
52
|
exports.envCommands = envCommands;
|
|
53
53
|
const repo = __importStar(require("./repo.command"));
|
|
54
54
|
exports.repo = repo;
|
|
55
|
+
const projects = __importStar(require("./projects.command"));
|
|
56
|
+
exports.projects = projects;
|
|
55
57
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/commands/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,uDAAyC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/commands/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,uDAAyC;AAWhC,sBAAK;AAVd,yDAA2C;AAUjB,qBAAG;AAT7B,2DAA6C;AASd,0BAAO;AARtC,2DAA6C;AAQL,0BAAO;AAP/C,qDAAuC;AAOU,oBAAI;AANrD,+DAAiD;AAMM,8BAAS;AALhE,uDAAyC;AAKyB,sBAAK;AAJvE,4DAA8C;AAI2B,kCAAW;AAHpF,qDAAuC;AAG+C,oBAAI;AAF1F,6DAA+C;AAE6C,4BAAQ"}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.vs = exports.directory = exports.solution = void 0;
|
|
7
|
+
const path_1 = __importDefault(require("path"));
|
|
8
|
+
const child_process_1 = __importDefault(require("child_process"));
|
|
9
|
+
const common_1 = require("../common");
|
|
10
|
+
const solution = () => {
|
|
11
|
+
let solutionPath = path_1.default.resolve(common_1.constants.WORKING_DIRECTORY, 'sharepoint', 'solution');
|
|
12
|
+
var cmd = ``;
|
|
13
|
+
switch (require(`os`).platform().toLowerCase().replace(/[0-9]/g, ``).replace(`darwin`, `macos`)) {
|
|
14
|
+
case `win`:
|
|
15
|
+
solutionPath = solutionPath || '=';
|
|
16
|
+
cmd = `explorer`;
|
|
17
|
+
break;
|
|
18
|
+
case `linux`:
|
|
19
|
+
solutionPath = solutionPath || '/';
|
|
20
|
+
cmd = `xdg-open`;
|
|
21
|
+
break;
|
|
22
|
+
case `macos`:
|
|
23
|
+
solutionPath = solutionPath || '/';
|
|
24
|
+
cmd = `open`;
|
|
25
|
+
break;
|
|
26
|
+
}
|
|
27
|
+
child_process_1.default.spawn(cmd, [solutionPath]);
|
|
28
|
+
};
|
|
29
|
+
exports.solution = solution;
|
|
30
|
+
const directory = () => {
|
|
31
|
+
let path = process.cwd();
|
|
32
|
+
var cmd = ``;
|
|
33
|
+
switch (require(`os`).platform().toLowerCase().replace(/[0-9]/g, ``).replace(`darwin`, `macos`)) {
|
|
34
|
+
case `win`:
|
|
35
|
+
path = path || '=';
|
|
36
|
+
cmd = `explorer`;
|
|
37
|
+
break;
|
|
38
|
+
case `linux`:
|
|
39
|
+
path = path || '/';
|
|
40
|
+
cmd = `xdg-open`;
|
|
41
|
+
break;
|
|
42
|
+
case `macos`:
|
|
43
|
+
path = path || '/';
|
|
44
|
+
cmd = `open`;
|
|
45
|
+
break;
|
|
46
|
+
}
|
|
47
|
+
child_process_1.default.spawn(cmd, [path]);
|
|
48
|
+
};
|
|
49
|
+
exports.directory = directory;
|
|
50
|
+
const vs = () => {
|
|
51
|
+
let path = process.cwd();
|
|
52
|
+
common_1.util.openVSCodeInDirectory(path);
|
|
53
|
+
};
|
|
54
|
+
exports.vs = vs;
|
|
55
|
+
//# sourceMappingURL=open.command.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"open.command.js","sourceRoot":"","sources":["../../src/commands/open.command.ts"],"names":[],"mappings":";;;;;;AAAA,gDAAwB;AACxB,kEAAuC;AACvC,sCAA4C;AAErC,MAAM,QAAQ,GAAG,GAAG,EAAE;IAC3B,IAAI,YAAY,GAAG,cAAI,CAAC,OAAO,CAAC,kBAAS,CAAC,iBAAiB,EAAE,YAAY,EAAE,UAAU,CAAC,CAAC;IAEvF,IAAI,GAAG,GAAG,EAAE,CAAC;IACb,QAAQ,OAAO,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,EAAE,CAAC;QAChG,KAAK,KAAK;YACR,YAAY,GAAG,YAAY,IAAI,GAAG,CAAC;YACnC,GAAG,GAAG,UAAU,CAAC;YACjB,MAAM;QACR,KAAK,OAAO;YACV,YAAY,GAAG,YAAY,IAAI,GAAG,CAAC;YACnC,GAAG,GAAG,UAAU,CAAC;YACjB,MAAM;QACR,KAAK,OAAO;YACV,YAAY,GAAG,YAAY,IAAI,GAAG,CAAC;YACnC,GAAG,GAAG,MAAM,CAAC;YACb,MAAM;IACV,CAAC;IAED,uBAAU,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC;AACxC,CAAC,CAAC;AApBW,QAAA,QAAQ,YAoBnB;AAEK,MAAM,SAAS,GAAG,GAAG,EAAE;IAC5B,IAAI,IAAI,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IACzB,IAAI,GAAG,GAAG,EAAE,CAAC;IACb,QAAQ,OAAO,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,EAAE,CAAC;QAChG,KAAK,KAAK;YACR,IAAI,GAAG,IAAI,IAAI,GAAG,CAAC;YACnB,GAAG,GAAG,UAAU,CAAC;YACjB,MAAM;QACR,KAAK,OAAO;YACV,IAAI,GAAG,IAAI,IAAI,GAAG,CAAC;YACnB,GAAG,GAAG,UAAU,CAAC;YACjB,MAAM;QACR,KAAK,OAAO;YACV,IAAI,GAAG,IAAI,IAAI,GAAG,CAAC;YACnB,GAAG,GAAG,MAAM,CAAC;YACb,MAAM;IACV,CAAC;IAED,uBAAU,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;AAChC,CAAC,CAAC;AAnBW,QAAA,SAAS,aAmBpB;AAEK,MAAM,EAAE,GAAG,GAAG,EAAE;IACrB,IAAI,IAAI,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IACzB,aAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC;AACnC,CAAC,CAAC;AAHW,QAAA,EAAE,MAGb"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.openProject = exports.addProject = void 0;
|
|
13
|
+
const logger_1 = require("../common/logger");
|
|
14
|
+
const fs_1 = require("fs");
|
|
15
|
+
const util_1 = require("../common/util");
|
|
16
|
+
const util_2 = require("../common/util");
|
|
17
|
+
const addProject = (name) => __awaiter(void 0, void 0, void 0, function* () {
|
|
18
|
+
const path = process.cwd();
|
|
19
|
+
if (!name) {
|
|
20
|
+
name = path.split('\\').pop();
|
|
21
|
+
}
|
|
22
|
+
yield (0, util_1.ensureGlobalPackageJsonExists)();
|
|
23
|
+
const { configPath } = (0, util_1.getGlobalConfigPaths)();
|
|
24
|
+
const packageJsonContent = yield fs_1.promises.readFile(configPath, 'utf-8');
|
|
25
|
+
const packageJson = JSON.parse(packageJsonContent);
|
|
26
|
+
if (!packageJson.projects) {
|
|
27
|
+
packageJson.projects = {};
|
|
28
|
+
}
|
|
29
|
+
packageJson.projects[name] = path;
|
|
30
|
+
yield fs_1.promises.writeFile(configPath, JSON.stringify(packageJson, null, 2), 'utf-8');
|
|
31
|
+
logger_1.logger.success(`Project '${name}' added for path: ${path}`);
|
|
32
|
+
});
|
|
33
|
+
exports.addProject = addProject;
|
|
34
|
+
const openProject = (name) => __awaiter(void 0, void 0, void 0, function* () {
|
|
35
|
+
const { configPath } = (0, util_1.getGlobalConfigPaths)();
|
|
36
|
+
const packageJsonContent = yield fs_1.promises.readFile(configPath, 'utf-8');
|
|
37
|
+
const packageJson = JSON.parse(packageJsonContent);
|
|
38
|
+
if (!packageJson.projects || !packageJson.projects[name]) {
|
|
39
|
+
logger_1.logger.error(`Project name '${name}' not found in global package.json!`);
|
|
40
|
+
return;
|
|
41
|
+
}
|
|
42
|
+
const projectPath = packageJson.projects[name];
|
|
43
|
+
(0, util_2.openVSCodeInDirectory)(projectPath);
|
|
44
|
+
});
|
|
45
|
+
exports.openProject = openProject;
|
|
46
|
+
//# sourceMappingURL=projects.command.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"projects.command.js","sourceRoot":"","sources":["../../src/commands/projects.command.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6CAA0C;AAC1C,2BAA4C;AAC5C,yCAAqF;AACrF,yCAAuD;AAEhD,MAAM,UAAU,GAAG,CAAO,IAAY,EAAE,EAAE;IAC/C,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAC3B,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,CAAC;IAChC,CAAC;IACD,MAAM,IAAA,oCAA6B,GAAE,CAAC;IAEtC,MAAM,EAAE,UAAU,EAAE,GAAG,IAAA,2BAAoB,GAAE,CAAC;IAC9C,MAAM,kBAAkB,GAAG,MAAM,aAAU,CAAC,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IAC1E,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;IACnD,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC;QAC1B,WAAW,CAAC,QAAQ,GAAG,EAAE,CAAC;IAC5B,CAAC;IAED,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IAElC,MAAM,aAAU,CAAC,SAAS,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;IAEtF,eAAM,CAAC,OAAO,CAAC,YAAY,IAAI,qBAAqB,IAAI,EAAE,CAAC,CAAC;AAC9D,CAAC,CAAA,CAAC;AAnBW,QAAA,UAAU,cAmBrB;AAEK,MAAM,WAAW,GAAG,CAAO,IAAY,EAAE,EAAE;IAChD,MAAM,EAAE,UAAU,EAAE,GAAG,IAAA,2BAAoB,GAAE,CAAC;IAC9C,MAAM,kBAAkB,GAAG,MAAM,aAAU,CAAC,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IAC1E,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;IACnD,IAAI,CAAC,WAAW,CAAC,QAAQ,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QACzD,eAAM,CAAC,KAAK,CAAC,iBAAiB,IAAI,qCAAqC,CAAC,CAAC;QACzE,OAAO;IACT,CAAC;IACD,MAAM,WAAW,GAAG,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC/C,IAAA,4BAAqB,EAAC,WAAW,CAAC,CAAC;AACrC,CAAC,CAAA,CAAC;AAVW,QAAA,WAAW,eAUtB"}
|
|
@@ -12,29 +12,22 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
12
12
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
13
|
};
|
|
14
14
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
-
exports.goToRepo = exports.
|
|
15
|
+
exports.goToRepo = exports.SetRepo = exports.getRepo = void 0;
|
|
16
16
|
const logger_1 = require("../common/logger");
|
|
17
17
|
const common_1 = require("../common");
|
|
18
18
|
const fs_1 = require("fs");
|
|
19
19
|
const path_1 = __importDefault(require("path"));
|
|
20
20
|
const readline_1 = __importDefault(require("readline"));
|
|
21
21
|
const chalk_1 = __importDefault(require("chalk"));
|
|
22
|
+
const util_1 = require("../common/util");
|
|
22
23
|
const codeEmoji = '</>';
|
|
23
24
|
const dirEmpoji = '📁 ';
|
|
24
|
-
const openVSCodeInDirectory = (directory) => {
|
|
25
|
-
const spawn = require('child_process').spawn;
|
|
26
|
-
// Open the selected directory in VS Code
|
|
27
|
-
spawn(process.platform === 'win32' ? 'code.cmd' : 'code', [directory], {
|
|
28
|
-
stdio: 'inherit',
|
|
29
|
-
shell: true
|
|
30
|
-
});
|
|
31
|
-
};
|
|
32
25
|
const displayOptions = (location) => {
|
|
33
26
|
const fs = require('fs');
|
|
34
27
|
const rootPackageJsonPath = path_1.default.join(location, 'package.json');
|
|
35
28
|
const hasPackageJson = fs.existsSync(rootPackageJsonPath);
|
|
36
29
|
if (hasPackageJson) {
|
|
37
|
-
openVSCodeInDirectory(location);
|
|
30
|
+
(0, util_1.openVSCodeInDirectory)(location);
|
|
38
31
|
return;
|
|
39
32
|
}
|
|
40
33
|
const childDirs = fs.readdirSync(location).filter((file) => {
|
|
@@ -63,7 +56,7 @@ const displayOptions = (location) => {
|
|
|
63
56
|
const newPath = options[idx].path;
|
|
64
57
|
if (options[idx].hasPackageJson || vsFlag) {
|
|
65
58
|
// Valid selection or forced VS Code open
|
|
66
|
-
openVSCodeInDirectory(newPath);
|
|
59
|
+
(0, util_1.openVSCodeInDirectory)(newPath);
|
|
67
60
|
rl.close();
|
|
68
61
|
return;
|
|
69
62
|
}
|
|
@@ -76,7 +69,7 @@ const displayOptions = (location) => {
|
|
|
76
69
|
}
|
|
77
70
|
else if (numPart === '0') {
|
|
78
71
|
if (vsFlag) {
|
|
79
|
-
openVSCodeInDirectory(location);
|
|
72
|
+
(0, util_1.openVSCodeInDirectory)(location);
|
|
80
73
|
}
|
|
81
74
|
rl.close();
|
|
82
75
|
return;
|
|
@@ -130,7 +123,7 @@ const findDirectory = (location, chars) => {
|
|
|
130
123
|
const idx = parseInt(numPart, 10) - 1;
|
|
131
124
|
if (idx >= 0 && idx < options.length) {
|
|
132
125
|
if (vsFlag) {
|
|
133
|
-
openVSCodeInDirectory(options[idx].path);
|
|
126
|
+
(0, util_1.openVSCodeInDirectory)(options[idx].path);
|
|
134
127
|
rl.close();
|
|
135
128
|
resolve('***');
|
|
136
129
|
return;
|
|
@@ -141,7 +134,7 @@ const findDirectory = (location, chars) => {
|
|
|
141
134
|
}
|
|
142
135
|
else if (numPart === '0') {
|
|
143
136
|
if (vsFlag) {
|
|
144
|
-
openVSCodeInDirectory(location);
|
|
137
|
+
(0, util_1.openVSCodeInDirectory)(location);
|
|
145
138
|
rl.close();
|
|
146
139
|
resolve('***');
|
|
147
140
|
return;
|
|
@@ -182,7 +175,7 @@ const SetRepo = () => __awaiter(void 0, void 0, void 0, function* () {
|
|
|
182
175
|
const globalPath = common_1.util.getGlobalConfigPaths();
|
|
183
176
|
const fileExists = yield common_1.util.checkIfFileExistsAsync(globalPath.configPath, true);
|
|
184
177
|
if (!fileExists) {
|
|
185
|
-
|
|
178
|
+
yield common_1.util.initGlobalPackageJsonWithDefaults(true);
|
|
186
179
|
}
|
|
187
180
|
const local = path_1.default.join(process.cwd());
|
|
188
181
|
logger_1.logger.info(`Setting repository to: ${local}`);
|
|
@@ -192,10 +185,6 @@ const SetRepo = () => __awaiter(void 0, void 0, void 0, function* () {
|
|
|
192
185
|
yield fs_1.promises.writeFile(globalPath.configPath, JSON.stringify(packageJson, null, 2), 'utf-8');
|
|
193
186
|
});
|
|
194
187
|
exports.SetRepo = SetRepo;
|
|
195
|
-
const goToRepoFromProject = (args) => __awaiter(void 0, void 0, void 0, function* () {
|
|
196
|
-
logger_1.logger.info('Looking for repository from global package.json based on project shortcut...');
|
|
197
|
-
});
|
|
198
|
-
exports.goToRepoFromProject = goToRepoFromProject;
|
|
199
188
|
const goToRepo = (args) => __awaiter(void 0, void 0, void 0, function* () {
|
|
200
189
|
const repo = yield (0, exports.getRepo)();
|
|
201
190
|
if (repo === undefined) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"repo.command.js","sourceRoot":"","sources":["../../src/commands/repo.command.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,6CAA0C;AAC1C,sCAAiC;AACjC,2BAA4C;AAC5C,gDAAwB;AACxB,wDAAgC;AAChC,kDAA0B;
|
|
1
|
+
{"version":3,"file":"repo.command.js","sourceRoot":"","sources":["../../src/commands/repo.command.ts"],"names":[],"mappings":"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"}
|
package/lib/common/util.js
CHANGED
|
@@ -12,26 +12,27 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
12
12
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
13
|
};
|
|
14
14
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
exports.openVSCodeInDirectory = void 0;
|
|
15
16
|
exports.checkIfFileExistsAsync = checkIfFileExistsAsync;
|
|
16
17
|
exports.getGlobalConfigPaths = getGlobalConfigPaths;
|
|
17
18
|
exports.isUsingGulp = isUsingGulp;
|
|
19
|
+
exports.ensureGlobalPackageJsonExists = ensureGlobalPackageJsonExists;
|
|
18
20
|
exports.openGlobalPackageJsonInEditor = openGlobalPackageJsonInEditor;
|
|
19
21
|
exports.initGlobalPackageJsonWithDefaults = initGlobalPackageJsonWithDefaults;
|
|
20
22
|
const fs_1 = require("fs");
|
|
23
|
+
const fs_2 = __importDefault(require("fs"));
|
|
21
24
|
const os_1 = __importDefault(require("os"));
|
|
22
25
|
const path_1 = __importDefault(require("path"));
|
|
26
|
+
const logger_1 = require("./logger");
|
|
23
27
|
function checkIfFileExistsAsync(filename_1) {
|
|
24
28
|
return __awaiter(this, arguments, void 0, function* (filename, includeError = true) {
|
|
25
|
-
|
|
26
|
-
yield fs_1.promises.readFile(filename, 'utf-8');
|
|
27
|
-
return true;
|
|
28
|
-
}
|
|
29
|
-
catch (err) {
|
|
29
|
+
if (!fs_2.default.existsSync(filename)) {
|
|
30
30
|
if (includeError) {
|
|
31
|
-
|
|
31
|
+
logger_1.logger.error(`No ${filename} found!`);
|
|
32
32
|
}
|
|
33
|
-
return
|
|
33
|
+
return false;
|
|
34
34
|
}
|
|
35
|
+
return true;
|
|
35
36
|
});
|
|
36
37
|
}
|
|
37
38
|
function getGlobalConfigPaths() {
|
|
@@ -50,6 +51,7 @@ function ensureGlobalPackageJsonExists() {
|
|
|
50
51
|
const { configDir, configPath } = getGlobalConfigPaths();
|
|
51
52
|
const exists = yield checkIfFileExistsAsync(configPath, false);
|
|
52
53
|
if (!exists) {
|
|
54
|
+
// Create the directory if it doesn't exist and then create an empty package.json
|
|
53
55
|
yield fs_1.promises.mkdir(configDir, { recursive: true });
|
|
54
56
|
yield fs_1.promises.writeFile(configPath, JSON.stringify({ scripts: {} }, null, 2), 'utf-8');
|
|
55
57
|
}
|
|
@@ -79,6 +81,20 @@ function initGlobalPackageJsonWithDefaults(force) {
|
|
|
79
81
|
'serve:heft': 'heft build-watch --serve',
|
|
80
82
|
'serve:gulp': 'gulp serve'
|
|
81
83
|
};
|
|
84
|
+
const defaultPackages = {
|
|
85
|
+
pnp: {
|
|
86
|
+
dependencies: ['@pnp/graph', '@pnp/core', '@pnp/odata', '@pnp/queryable', '@pnp/sp']
|
|
87
|
+
},
|
|
88
|
+
'react-query': {
|
|
89
|
+
dependencies: [
|
|
90
|
+
'@tanstack/react-query@4',
|
|
91
|
+
'@tanstack/query-async-storage-persister@4',
|
|
92
|
+
'@tanstack/query-persist-client-core@4',
|
|
93
|
+
'@tanstack/query-sync-storage-persister@5'
|
|
94
|
+
],
|
|
95
|
+
devDependencies: ['@tanstack/react-query-devtools@4']
|
|
96
|
+
}
|
|
97
|
+
};
|
|
82
98
|
const packageJsonContent = yield fs_1.promises.readFile(configPath, 'utf-8');
|
|
83
99
|
const packageJson = JSON.parse(packageJsonContent);
|
|
84
100
|
// Only add/overwrite scripts if force is true, otherwise do not overwrite existing matching scripts
|
|
@@ -88,7 +104,24 @@ function initGlobalPackageJsonWithDefaults(force) {
|
|
|
88
104
|
packageJson.scripts[key] = value;
|
|
89
105
|
}
|
|
90
106
|
}
|
|
107
|
+
// packageJson.packages
|
|
108
|
+
packageJson.packages = packageJson.packages || {};
|
|
109
|
+
for (const [key, value] of Object.entries(defaultPackages)) {
|
|
110
|
+
if (force || !(key in packageJson.packages)) {
|
|
111
|
+
packageJson.packages[key] = value;
|
|
112
|
+
}
|
|
113
|
+
}
|
|
91
114
|
yield fs_1.promises.writeFile(configPath, JSON.stringify(packageJson, null, 2), 'utf-8');
|
|
115
|
+
logger_1.logger.success(`Global package.json initialized at ${configPath}`);
|
|
92
116
|
});
|
|
93
117
|
}
|
|
118
|
+
const openVSCodeInDirectory = (directory) => {
|
|
119
|
+
const spawn = require('child_process').spawn;
|
|
120
|
+
// Open the selected directory in VS Code
|
|
121
|
+
spawn(process.platform === 'win32' ? 'code.cmd' : 'code', [directory], {
|
|
122
|
+
stdio: 'inherit',
|
|
123
|
+
shell: true
|
|
124
|
+
});
|
|
125
|
+
};
|
|
126
|
+
exports.openVSCodeInDirectory = openVSCodeInDirectory;
|
|
94
127
|
//# sourceMappingURL=util.js.map
|
package/lib/common/util.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"util.js","sourceRoot":"","sources":["../../src/common/util.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"util.js","sourceRoot":"","sources":["../../src/common/util.ts"],"names":[],"mappings":"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"}
|
package/lib/index.js
CHANGED
|
@@ -48,7 +48,7 @@ program
|
|
|
48
48
|
.name('Matt Schauer SPFx Toolkit')
|
|
49
49
|
.description('CLI to help with SPFx development')
|
|
50
50
|
.addHelpText('beforeAll', chalk_1.default.blueBright('Developed by Matt Schauer'))
|
|
51
|
-
.version('1.0.
|
|
51
|
+
.version('1.0.27');
|
|
52
52
|
program
|
|
53
53
|
.command('add-alias')
|
|
54
54
|
.description('add alias')
|
|
@@ -56,6 +56,25 @@ program
|
|
|
56
56
|
.action((name) => {
|
|
57
57
|
commands.alias.addAlias(name, defaultToolkitName);
|
|
58
58
|
});
|
|
59
|
+
program
|
|
60
|
+
.command('add-project')
|
|
61
|
+
.description('add project shortcut')
|
|
62
|
+
.addArgument(new commander.Argument('[name]', 'give the project a name or default to folder name'))
|
|
63
|
+
.action((name) => {
|
|
64
|
+
commands.projects.addProject(name);
|
|
65
|
+
});
|
|
66
|
+
program
|
|
67
|
+
.command('open-project')
|
|
68
|
+
.alias('op')
|
|
69
|
+
.description('open project')
|
|
70
|
+
.addArgument(new commander.Argument('[name]', 'project name to open'))
|
|
71
|
+
.action((name) => {
|
|
72
|
+
if (!name) {
|
|
73
|
+
common_1.logger.error('Project name is required.');
|
|
74
|
+
return;
|
|
75
|
+
}
|
|
76
|
+
commands.projects.openProject(name);
|
|
77
|
+
});
|
|
59
78
|
program
|
|
60
79
|
.command('clear-alias')
|
|
61
80
|
.description('remove any alias for spfx-toolkit')
|
|
@@ -71,13 +90,7 @@ program
|
|
|
71
90
|
program
|
|
72
91
|
.command('repo [args...]')
|
|
73
92
|
.description('Go to repository location')
|
|
74
|
-
.
|
|
75
|
-
.action((args, options) => {
|
|
76
|
-
console.log('options:', options);
|
|
77
|
-
if (options.project) {
|
|
78
|
-
commands.repo.goToRepoFromProject(Array.isArray(args) ? args : []);
|
|
79
|
-
return;
|
|
80
|
-
}
|
|
93
|
+
.action((args) => {
|
|
81
94
|
commands.repo.goToRepo(Array.isArray(args) ? args : []);
|
|
82
95
|
});
|
|
83
96
|
program
|
|
@@ -191,7 +204,21 @@ program
|
|
|
191
204
|
.alias('os')
|
|
192
205
|
.description('Open solution folder')
|
|
193
206
|
.action(() => {
|
|
194
|
-
commands.
|
|
207
|
+
commands.open.solution();
|
|
208
|
+
});
|
|
209
|
+
program
|
|
210
|
+
.command('open-directory')
|
|
211
|
+
.alias('od')
|
|
212
|
+
.description('Open directory folder')
|
|
213
|
+
.action(() => {
|
|
214
|
+
commands.open.directory();
|
|
215
|
+
});
|
|
216
|
+
program
|
|
217
|
+
.command('open-vs')
|
|
218
|
+
.alias('vs')
|
|
219
|
+
.description('Open current directory in VS Code')
|
|
220
|
+
.action(() => {
|
|
221
|
+
commands.open.vs();
|
|
195
222
|
});
|
|
196
223
|
program
|
|
197
224
|
.command('eslint')
|
package/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,kDAA0B;AAC1B,qDAAuC;AACvC,yCAAoC;AACpC,qDAAuC;AACvC,qCAAwC;AACxC,MAAM,OAAO,GAAG,IAAI,mBAAO,EAAE,CAAC;AAE9B,MAAM,kBAAkB,GAAG,cAAc,CAAC;AAE1C,OAAO;KACJ,IAAI,CAAC,2BAA2B,CAAC;KACjC,WAAW,CAAC,mCAAmC,CAAC;KAChD,WAAW,CAAC,WAAW,EAAE,eAAK,CAAC,UAAU,CAAC,2BAA2B,CAAC,CAAC;KACvE,OAAO,CAAC,QAAQ,CAAC,CAAC;AAErB,OAAO;KACJ,OAAO,CAAC,WAAW,CAAC;KACpB,WAAW,CAAC,WAAW,CAAC;KACxB,WAAW,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAE,oCAAoC,CAAC,CAAC;KACnF,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE;IACf,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,EAAE,kBAAkB,CAAC,CAAC;AACpD,CAAC,CAAC,CAAC;AAEL,OAAO;KACJ,OAAO,CAAC,aAAa,CAAC;KACtB,WAAW,CAAC,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mschauer5/spfx-toolkit",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.27",
|
|
4
4
|
"description": "Toolkit for SPFx projects",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"bin": {
|
|
@@ -13,9 +13,14 @@
|
|
|
13
13
|
"test:clear-alias": "npm run build && node lib/index.js clear-alias",
|
|
14
14
|
"test:serve": "npm run build && node lib/index.js serve",
|
|
15
15
|
"test:build": "npm run build && node lib/index.js build",
|
|
16
|
+
"test:configInit": "npm run build && node lib/index.js ogci",
|
|
17
|
+
"test:addProject": "npm run build && node lib/index.js add-project",
|
|
18
|
+
"test:openProject": "npm run build && node lib/index.js open-project admin-links",
|
|
19
|
+
"test:od": "npm run build && node lib/index.js od",
|
|
20
|
+
"test:vs": "npm run build && node lib/index.js vs",
|
|
16
21
|
"push": "npm run build && npm publish --access public",
|
|
17
22
|
"test:env": "npm run build && node lib/index.js set-env",
|
|
18
|
-
"prepublish": "npm run build && npm uninstall .\\mschauer5-spfx-toolkit-1.0.
|
|
23
|
+
"prepublish": "npm run build && npm uninstall .\\mschauer5-spfx-toolkit-1.0.27.tgz -g && npm pack . && npm install .\\mschauer5-spfx-toolkit-1.0.27.tgz -g"
|
|
19
24
|
},
|
|
20
25
|
"repository": {
|
|
21
26
|
"type": "git",
|
package/src/commands/index.ts
CHANGED
|
@@ -2,9 +2,11 @@ import * as alias from './alias.command';
|
|
|
2
2
|
import * as eslint from './eslint.command';
|
|
3
3
|
import * as version from './version.command';
|
|
4
4
|
import * as scripts from './scripts.command';
|
|
5
|
-
import
|
|
5
|
+
import * as open from './open.command';
|
|
6
6
|
import * as installer from './installer.command';
|
|
7
7
|
import * as nvmrc from './nvmrc.command';
|
|
8
8
|
import * as envCommands from './env.commands';
|
|
9
9
|
import * as repo from './repo.command';
|
|
10
|
-
|
|
10
|
+
import * as projects from './projects.command';
|
|
11
|
+
|
|
12
|
+
export { alias, eslint as env, version, scripts, open, installer, nvmrc, envCommands, repo, projects };
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import path from 'path';
|
|
2
|
+
import subProcess from 'child_process';
|
|
3
|
+
import { constants, util } from '../common';
|
|
4
|
+
|
|
5
|
+
export const solution = () => {
|
|
6
|
+
let solutionPath = path.resolve(constants.WORKING_DIRECTORY, 'sharepoint', 'solution');
|
|
7
|
+
|
|
8
|
+
var cmd = ``;
|
|
9
|
+
switch (require(`os`).platform().toLowerCase().replace(/[0-9]/g, ``).replace(`darwin`, `macos`)) {
|
|
10
|
+
case `win`:
|
|
11
|
+
solutionPath = solutionPath || '=';
|
|
12
|
+
cmd = `explorer`;
|
|
13
|
+
break;
|
|
14
|
+
case `linux`:
|
|
15
|
+
solutionPath = solutionPath || '/';
|
|
16
|
+
cmd = `xdg-open`;
|
|
17
|
+
break;
|
|
18
|
+
case `macos`:
|
|
19
|
+
solutionPath = solutionPath || '/';
|
|
20
|
+
cmd = `open`;
|
|
21
|
+
break;
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
subProcess.spawn(cmd, [solutionPath]);
|
|
25
|
+
};
|
|
26
|
+
|
|
27
|
+
export const directory = () => {
|
|
28
|
+
let path = process.cwd();
|
|
29
|
+
var cmd = ``;
|
|
30
|
+
switch (require(`os`).platform().toLowerCase().replace(/[0-9]/g, ``).replace(`darwin`, `macos`)) {
|
|
31
|
+
case `win`:
|
|
32
|
+
path = path || '=';
|
|
33
|
+
cmd = `explorer`;
|
|
34
|
+
break;
|
|
35
|
+
case `linux`:
|
|
36
|
+
path = path || '/';
|
|
37
|
+
cmd = `xdg-open`;
|
|
38
|
+
break;
|
|
39
|
+
case `macos`:
|
|
40
|
+
path = path || '/';
|
|
41
|
+
cmd = `open`;
|
|
42
|
+
break;
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
subProcess.spawn(cmd, [path]);
|
|
46
|
+
};
|
|
47
|
+
|
|
48
|
+
export const vs = () => {
|
|
49
|
+
let path = process.cwd();
|
|
50
|
+
util.openVSCodeInDirectory(path);
|
|
51
|
+
};
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { logger } from '../common/logger';
|
|
2
|
+
import { promises as fsPromises } from 'fs';
|
|
3
|
+
import { ensureGlobalPackageJsonExists, getGlobalConfigPaths } from '../common/util';
|
|
4
|
+
import { openVSCodeInDirectory } from '../common/util';
|
|
5
|
+
|
|
6
|
+
export const addProject = async (name: string) => {
|
|
7
|
+
const path = process.cwd();
|
|
8
|
+
if (!name) {
|
|
9
|
+
name = path.split('\\').pop();
|
|
10
|
+
}
|
|
11
|
+
await ensureGlobalPackageJsonExists();
|
|
12
|
+
|
|
13
|
+
const { configPath } = getGlobalConfigPaths();
|
|
14
|
+
const packageJsonContent = await fsPromises.readFile(configPath, 'utf-8');
|
|
15
|
+
const packageJson = JSON.parse(packageJsonContent);
|
|
16
|
+
if (!packageJson.projects) {
|
|
17
|
+
packageJson.projects = {};
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
packageJson.projects[name] = path;
|
|
21
|
+
|
|
22
|
+
await fsPromises.writeFile(configPath, JSON.stringify(packageJson, null, 2), 'utf-8');
|
|
23
|
+
|
|
24
|
+
logger.success(`Project '${name}' added for path: ${path}`);
|
|
25
|
+
};
|
|
26
|
+
|
|
27
|
+
export const openProject = async (name: string) => {
|
|
28
|
+
const { configPath } = getGlobalConfigPaths();
|
|
29
|
+
const packageJsonContent = await fsPromises.readFile(configPath, 'utf-8');
|
|
30
|
+
const packageJson = JSON.parse(packageJsonContent);
|
|
31
|
+
if (!packageJson.projects || !packageJson.projects[name]) {
|
|
32
|
+
logger.error(`Project name '${name}' not found in global package.json!`);
|
|
33
|
+
return;
|
|
34
|
+
}
|
|
35
|
+
const projectPath = packageJson.projects[name];
|
|
36
|
+
openVSCodeInDirectory(projectPath);
|
|
37
|
+
};
|
|
@@ -4,19 +4,11 @@ import { promises as fsPromises } from 'fs';
|
|
|
4
4
|
import path from 'path';
|
|
5
5
|
import readline from 'readline';
|
|
6
6
|
import chalk from 'chalk';
|
|
7
|
+
import { openVSCodeInDirectory } from '../common/util';
|
|
7
8
|
|
|
8
9
|
const codeEmoji = '</>';
|
|
9
10
|
const dirEmpoji = '📁 ';
|
|
10
11
|
|
|
11
|
-
const openVSCodeInDirectory = (directory: string) => {
|
|
12
|
-
const spawn = require('child_process').spawn;
|
|
13
|
-
// Open the selected directory in VS Code
|
|
14
|
-
spawn(process.platform === 'win32' ? 'code.cmd' : 'code', [directory], {
|
|
15
|
-
stdio: 'inherit',
|
|
16
|
-
shell: true
|
|
17
|
-
});
|
|
18
|
-
};
|
|
19
|
-
|
|
20
12
|
const displayOptions = (location: string) => {
|
|
21
13
|
const fs = require('fs');
|
|
22
14
|
const rootPackageJsonPath = path.join(location, 'package.json');
|
|
@@ -172,7 +164,7 @@ export const SetRepo = async () => {
|
|
|
172
164
|
const globalPath = util.getGlobalConfigPaths();
|
|
173
165
|
const fileExists = await util.checkIfFileExistsAsync(globalPath.configPath, true);
|
|
174
166
|
if (!fileExists) {
|
|
175
|
-
|
|
167
|
+
await util.initGlobalPackageJsonWithDefaults(true);
|
|
176
168
|
}
|
|
177
169
|
|
|
178
170
|
const local = path.join(process.cwd());
|
|
@@ -185,10 +177,6 @@ export const SetRepo = async () => {
|
|
|
185
177
|
await fsPromises.writeFile(globalPath.configPath, JSON.stringify(packageJson, null, 2), 'utf-8');
|
|
186
178
|
};
|
|
187
179
|
|
|
188
|
-
export const goToRepoFromProject = async (args?: string[]) => {
|
|
189
|
-
logger.info('Looking for repository from global package.json based on project shortcut...');
|
|
190
|
-
};
|
|
191
|
-
|
|
192
180
|
export const goToRepo = async (args?: string[]) => {
|
|
193
181
|
const repo = await getRepo();
|
|
194
182
|
|
package/src/common/util.ts
CHANGED
|
@@ -1,23 +1,24 @@
|
|
|
1
1
|
import { promises as fsPromises } from 'fs';
|
|
2
|
+
import fs from 'fs';
|
|
2
3
|
import os from 'os';
|
|
3
4
|
import path from 'path';
|
|
4
5
|
import { logger } from './logger';
|
|
5
6
|
|
|
6
7
|
export async function checkIfFileExistsAsync(filename, includeError = true) {
|
|
7
|
-
|
|
8
|
-
await fsPromises.readFile(filename, 'utf-8');
|
|
9
|
-
return true;
|
|
10
|
-
} catch (err) {
|
|
8
|
+
if (!fs.existsSync(filename)) {
|
|
11
9
|
if (includeError) {
|
|
12
|
-
|
|
10
|
+
logger.error(`No ${filename} found!`);
|
|
13
11
|
}
|
|
14
|
-
return
|
|
12
|
+
return false;
|
|
15
13
|
}
|
|
14
|
+
|
|
15
|
+
return true;
|
|
16
16
|
}
|
|
17
17
|
|
|
18
18
|
export function getGlobalConfigPaths() {
|
|
19
19
|
const configDir = path.join(os.homedir(), '.spfx-toolkit');
|
|
20
20
|
const configPath = path.join(configDir, 'package.json');
|
|
21
|
+
|
|
21
22
|
return { configDir, configPath };
|
|
22
23
|
}
|
|
23
24
|
|
|
@@ -26,11 +27,15 @@ export async function isUsingGulp(): Promise<boolean> {
|
|
|
26
27
|
return await checkIfFileExistsAsync(gulpFile, false);
|
|
27
28
|
}
|
|
28
29
|
|
|
29
|
-
async function ensureGlobalPackageJsonExists() {
|
|
30
|
+
export async function ensureGlobalPackageJsonExists() {
|
|
30
31
|
const { configDir, configPath } = getGlobalConfigPaths();
|
|
31
32
|
const exists = await checkIfFileExistsAsync(configPath, false);
|
|
33
|
+
|
|
32
34
|
if (!exists) {
|
|
35
|
+
// Create the directory if it doesn't exist and then create an empty package.json
|
|
36
|
+
|
|
33
37
|
await fsPromises.mkdir(configDir, { recursive: true });
|
|
38
|
+
|
|
34
39
|
await fsPromises.writeFile(configPath, JSON.stringify({ scripts: {} }, null, 2), 'utf-8');
|
|
35
40
|
}
|
|
36
41
|
}
|
|
@@ -60,6 +65,21 @@ export async function initGlobalPackageJsonWithDefaults(force?: boolean) {
|
|
|
60
65
|
'serve:gulp': 'gulp serve'
|
|
61
66
|
};
|
|
62
67
|
|
|
68
|
+
const defaultPackages = {
|
|
69
|
+
pnp: {
|
|
70
|
+
dependencies: ['@pnp/graph', '@pnp/core', '@pnp/odata', '@pnp/queryable', '@pnp/sp']
|
|
71
|
+
},
|
|
72
|
+
'react-query': {
|
|
73
|
+
dependencies: [
|
|
74
|
+
'@tanstack/react-query@4',
|
|
75
|
+
'@tanstack/query-async-storage-persister@4',
|
|
76
|
+
'@tanstack/query-persist-client-core@4',
|
|
77
|
+
'@tanstack/query-sync-storage-persister@5'
|
|
78
|
+
],
|
|
79
|
+
devDependencies: ['@tanstack/react-query-devtools@4']
|
|
80
|
+
}
|
|
81
|
+
};
|
|
82
|
+
|
|
63
83
|
const packageJsonContent = await fsPromises.readFile(configPath, 'utf-8');
|
|
64
84
|
const packageJson = JSON.parse(packageJsonContent);
|
|
65
85
|
|
|
@@ -71,5 +91,23 @@ export async function initGlobalPackageJsonWithDefaults(force?: boolean) {
|
|
|
71
91
|
}
|
|
72
92
|
}
|
|
73
93
|
|
|
94
|
+
// packageJson.packages
|
|
95
|
+
packageJson.packages = packageJson.packages || {};
|
|
96
|
+
for (const [key, value] of Object.entries(defaultPackages)) {
|
|
97
|
+
if (force || !(key in packageJson.packages)) {
|
|
98
|
+
packageJson.packages[key] = value;
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
|
|
74
102
|
await fsPromises.writeFile(configPath, JSON.stringify(packageJson, null, 2), 'utf-8');
|
|
103
|
+
logger.success(`Global package.json initialized at ${configPath}`);
|
|
75
104
|
}
|
|
105
|
+
|
|
106
|
+
export const openVSCodeInDirectory = (directory: string) => {
|
|
107
|
+
const spawn = require('child_process').spawn;
|
|
108
|
+
// Open the selected directory in VS Code
|
|
109
|
+
spawn(process.platform === 'win32' ? 'code.cmd' : 'code', [directory], {
|
|
110
|
+
stdio: 'inherit',
|
|
111
|
+
shell: true
|
|
112
|
+
});
|
|
113
|
+
};
|
package/src/index.ts
CHANGED
|
@@ -12,7 +12,7 @@ program
|
|
|
12
12
|
.name('Matt Schauer SPFx Toolkit')
|
|
13
13
|
.description('CLI to help with SPFx development')
|
|
14
14
|
.addHelpText('beforeAll', chalk.blueBright('Developed by Matt Schauer'))
|
|
15
|
-
.version('1.0.
|
|
15
|
+
.version('1.0.27');
|
|
16
16
|
|
|
17
17
|
program
|
|
18
18
|
.command('add-alias')
|
|
@@ -22,6 +22,27 @@ program
|
|
|
22
22
|
commands.alias.addAlias(name, defaultToolkitName);
|
|
23
23
|
});
|
|
24
24
|
|
|
25
|
+
program
|
|
26
|
+
.command('add-project')
|
|
27
|
+
.description('add project shortcut')
|
|
28
|
+
.addArgument(new commander.Argument('[name]', 'give the project a name or default to folder name'))
|
|
29
|
+
.action((name) => {
|
|
30
|
+
commands.projects.addProject(name);
|
|
31
|
+
});
|
|
32
|
+
|
|
33
|
+
program
|
|
34
|
+
.command('open-project')
|
|
35
|
+
.alias('op')
|
|
36
|
+
.description('open project')
|
|
37
|
+
.addArgument(new commander.Argument('[name]', 'project name to open'))
|
|
38
|
+
.action((name) => {
|
|
39
|
+
if (!name) {
|
|
40
|
+
logger.error('Project name is required.');
|
|
41
|
+
return;
|
|
42
|
+
}
|
|
43
|
+
commands.projects.openProject(name);
|
|
44
|
+
});
|
|
45
|
+
|
|
25
46
|
program
|
|
26
47
|
.command('clear-alias')
|
|
27
48
|
.description('remove any alias for spfx-toolkit')
|
|
@@ -39,13 +60,7 @@ program
|
|
|
39
60
|
program
|
|
40
61
|
.command('repo [args...]')
|
|
41
62
|
.description('Go to repository location')
|
|
42
|
-
.
|
|
43
|
-
.action((args, options) => {
|
|
44
|
-
console.log('options:', options);
|
|
45
|
-
if (options.project) {
|
|
46
|
-
commands.repo.goToRepoFromProject(Array.isArray(args) ? args : []);
|
|
47
|
-
return;
|
|
48
|
-
}
|
|
63
|
+
.action((args) => {
|
|
49
64
|
commands.repo.goToRepo(Array.isArray(args) ? args : []);
|
|
50
65
|
});
|
|
51
66
|
|
|
@@ -174,7 +189,23 @@ program
|
|
|
174
189
|
.alias('os')
|
|
175
190
|
.description('Open solution folder')
|
|
176
191
|
.action(() => {
|
|
177
|
-
commands.
|
|
192
|
+
commands.open.solution();
|
|
193
|
+
});
|
|
194
|
+
|
|
195
|
+
program
|
|
196
|
+
.command('open-directory')
|
|
197
|
+
.alias('od')
|
|
198
|
+
.description('Open directory folder')
|
|
199
|
+
.action(() => {
|
|
200
|
+
commands.open.directory();
|
|
201
|
+
});
|
|
202
|
+
|
|
203
|
+
program
|
|
204
|
+
.command('open-vs')
|
|
205
|
+
.alias('vs')
|
|
206
|
+
.description('Open current directory in VS Code')
|
|
207
|
+
.action(() => {
|
|
208
|
+
commands.open.vs();
|
|
178
209
|
});
|
|
179
210
|
|
|
180
211
|
program
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import path from 'path';
|
|
2
|
-
import subProcess from 'child_process';
|
|
3
|
-
import { constants } from '../common';
|
|
4
|
-
|
|
5
|
-
export const openSolution = () => {
|
|
6
|
-
let solutionPath = path.resolve(constants.WORKING_DIRECTORY, 'sharepoint', 'solution');
|
|
7
|
-
|
|
8
|
-
var cmd = ``;
|
|
9
|
-
switch (require(`os`).platform().toLowerCase().replace(/[0-9]/g, ``).replace(`darwin`, `macos`)) {
|
|
10
|
-
case `win`:
|
|
11
|
-
solutionPath = solutionPath || '=';
|
|
12
|
-
cmd = `explorer`;
|
|
13
|
-
break;
|
|
14
|
-
case `linux`:
|
|
15
|
-
solutionPath = solutionPath || '/';
|
|
16
|
-
cmd = `xdg-open`;
|
|
17
|
-
break;
|
|
18
|
-
case `macos`:
|
|
19
|
-
solutionPath = solutionPath || '/';
|
|
20
|
-
cmd = `open`;
|
|
21
|
-
break;
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
subProcess.spawn(cmd, [solutionPath]);
|
|
25
|
-
};
|