@slicemachine/init 1.0.2-alpha.2 → 1.0.2-alpha.8
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/README.md +0 -1
- package/build/index.js +3 -4
- package/build/steps/configure-project.js +1 -1
- package/build/steps/create-repo.js +1 -1
- package/build/steps/detect-framework.js +5 -5
- package/build/steps/install-required-dependencies.js +25 -14
- package/package.json +3 -3
- package/src/index.ts +2 -3
- package/src/steps/configure-project.ts +2 -1
- package/src/steps/create-repo.ts +4 -3
- package/src/steps/detect-framework.ts +9 -8
- package/src/steps/install-required-dependencies.ts +37 -19
package/README.md
CHANGED
package/build/index.js
CHANGED
|
@@ -6,12 +6,11 @@ const steps_1 = require("./steps");
|
|
|
6
6
|
const utils_1 = require("./utils");
|
|
7
7
|
async function init() {
|
|
8
8
|
const cwd = (0, utils_1.findArgument)(process.argv, "cwd") || process.cwd();
|
|
9
|
-
const base = (
|
|
10
|
-
core_1.Utils.CONSTS.DEFAULT_BASE);
|
|
9
|
+
const base = (0, utils_1.findArgument)(process.argv, "base") || core_1.Utils.CONSTS.DEFAULT_BASE;
|
|
11
10
|
console.log(core_1.Utils.purple("You're about to configure Slicemachine... Press ctrl + C to cancel"));
|
|
12
11
|
(0, steps_1.validatePkg)(cwd);
|
|
13
12
|
await (0, steps_1.loginOrBypass)(base);
|
|
14
|
-
const config = core_1.FileSystem.
|
|
13
|
+
const config = core_1.FileSystem.PrismicSharedConfigManager.get();
|
|
15
14
|
const frameworkResult = await (0, steps_1.detectFramework)(cwd);
|
|
16
15
|
const { existing, name } = await (0, steps_1.maybeExistingRepo)(config.cookies, cwd, config.base);
|
|
17
16
|
if (!existing) {
|
|
@@ -30,4 +29,4 @@ catch (error) {
|
|
|
30
29
|
else
|
|
31
30
|
console.error(error);
|
|
32
31
|
}
|
|
33
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
32
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBRUEsNkNBQXVEO0FBQ3ZELG1DQVNpQjtBQUNqQixtQ0FBdUM7QUFFdkMsS0FBSyxVQUFVLElBQUk7SUFDakIsTUFBTSxHQUFHLEdBQUcsSUFBQSxvQkFBWSxFQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLElBQUksT0FBTyxDQUFDLEdBQUcsRUFBRSxDQUFDO0lBQy9ELE1BQU0sSUFBSSxHQUFHLElBQUEsb0JBQVksRUFBQyxPQUFPLENBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBQyxJQUFJLFlBQUssQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDO0lBRTdFLE9BQU8sQ0FBQyxHQUFHLENBQ1QsWUFBSyxDQUFDLE1BQU0sQ0FDVixvRUFBb0UsQ0FDckUsQ0FDRixDQUFDO0lBR0YsSUFBQSxtQkFBVyxFQUFDLEdBQUcsQ0FBQyxDQUFDO0lBR2pCLE1BQU0sSUFBQSxxQkFBYSxFQUFDLElBQUksQ0FBQyxDQUFDO0lBRzFCLE1BQU0sTUFBTSxHQUFHLGlCQUFVLENBQUMsMEJBQTBCLENBQUMsR0FBRyxFQUFFLENBQUM7SUFHM0QsTUFBTSxlQUFlLEdBQUcsTUFBTSxJQUFBLHVCQUFlLEVBQUMsR0FBRyxDQUFDLENBQUM7SUFHbkQsTUFBTSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsR0FBRyxNQUFNLElBQUEseUJBQWlCLEVBQ2hELE1BQU0sQ0FBQyxPQUFPLEVBQ2QsR0FBRyxFQUNILE1BQU0sQ0FBQyxJQUFJLENBQ1osQ0FBQztJQUVGLElBQUksQ0FBQyxRQUFRLEVBQUU7UUFDYixNQUFNLElBQUEsd0JBQWdCLEVBQUMsSUFBSSxFQUFFLGVBQWUsQ0FBQyxLQUFLLEVBQUUsTUFBTSxDQUFDLENBQUM7S0FDN0Q7SUFHRCxNQUFNLElBQUEsbUNBQTJCLEVBQUMsR0FBRyxFQUFFLGVBQWUsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUc5RCxJQUFBLHdCQUFnQixFQUFDLEdBQUcsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLGVBQWUsQ0FBQyxDQUFDO0lBR25ELElBQUEsMkJBQW1CLEVBQUMsR0FBRyxDQUFDLENBQUM7QUFDM0IsQ0FBQztBQUVELElBQUk7SUFDRixLQUFLLElBQUksRUFBRSxDQUFDO0NBQ2I7QUFBQyxPQUFPLEtBQUssRUFBRTtJQUNkLElBQUksS0FBSyxZQUFZLEtBQUs7UUFBRSxZQUFLLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQzs7UUFDdkQsT0FBTyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztDQUMzQiJ9
|
|
@@ -26,4 +26,4 @@ function configureProject(cwd, base, repository, framework) {
|
|
|
26
26
|
}
|
|
27
27
|
}
|
|
28
28
|
exports.configureProject = configureProject;
|
|
29
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
29
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlndXJlLXByb2plY3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc3RlcHMvY29uZmlndXJlLXByb2plY3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsNkNBQXVEO0FBTXZELFNBQWdCLGdCQUFnQixDQUM5QixHQUFXLEVBQ1gsSUFBVSxFQUNWLFVBQWtCLEVBQ2xCLFNBQTBCO0lBRTFCLE1BQU0sT0FBTyxHQUFHLFlBQUssQ0FBQyxPQUFPLENBQzNCLG9CQUFvQixTQUFTLENBQUMsS0FBSyx1QkFBdUIsQ0FDM0QsQ0FBQztJQUNGLE9BQU8sQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUVoQixJQUFJO1FBQ0YsTUFBTSxRQUFRLEdBQUcsaUJBQVUsQ0FBQyxnQkFBZ0IsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUVsRCxNQUFNLGVBQWUsR0FBb0I7WUFDdkMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxNQUFNLElBQUksUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1lBQ2hFLFdBQVcsRUFBRSxZQUFLLENBQUMsU0FBUyxDQUFDLHVCQUF1QixDQUFDLElBQUksRUFBRSxVQUFVLENBQUM7WUFDdEUsU0FBUyxFQUFFLENBQUMsVUFBVSxDQUFDO1lBQ3ZCLEdBQUcsQ0FBQyxTQUFTLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxFQUFFLFNBQVMsRUFBRSxTQUFTLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztTQUNuRSxDQUFDO1FBRUYsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNO1lBQUUsaUJBQVUsQ0FBQyxjQUFjLENBQUMsR0FBRyxFQUFFLGVBQWUsQ0FBQyxDQUFDOztZQUNqRSxpQkFBVSxDQUFDLGFBQWEsQ0FBQyxHQUFHLEVBQUUsZUFBZSxDQUFDLENBQUM7UUFFcEQsaUJBQVUsQ0FBQyxzQkFBc0IsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUV2QyxPQUFPLENBQUMsT0FBTyxDQUFDLG9DQUFvQyxDQUFDLENBQUM7S0FDdkQ7SUFBQyxNQUFNO1FBQ04sT0FBTyxDQUFDLElBQUksQ0FBQyxnREFBZ0QsQ0FBQyxDQUFDO1FBQy9ELE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztLQUNsQjtBQUNILENBQUM7QUEvQkQsNENBK0JDIn0=
|
|
@@ -23,4 +23,4 @@ function createRepository(domain, framework, config) {
|
|
|
23
23
|
});
|
|
24
24
|
}
|
|
25
25
|
exports.createRepository = createRepository;
|
|
26
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
26
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLXJlcG8uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc3RlcHMvY3JlYXRlLXJlcG8udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsNkNBQTBEO0FBRzFELFNBQWdCLGdCQUFnQixDQUM5QixNQUFjLEVBQ2QsU0FBNEIsRUFDNUIsTUFBa0M7SUFFbEMsTUFBTSxPQUFPLEdBQUcsWUFBSyxDQUFDLE9BQU8sQ0FBQyw2QkFBNkIsQ0FBQyxDQUFDO0lBQzdELE9BQU8sQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUVoQixPQUFPLG9CQUFhLENBQUMsZ0JBQWdCLENBQ25DLE1BQU0sRUFDTixNQUFNLENBQUMsT0FBTyxFQUNkLFNBQVMsRUFDVCxNQUFNLENBQUMsSUFBSSxDQUNaO1NBQ0UsSUFBSSxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUU7UUFDWixNQUFNLFVBQVUsR0FBRyxJQUFJLEdBQUcsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDeEMsVUFBVSxDQUFDLFFBQVEsR0FBRyxHQUFHLEdBQUcsQ0FBQyxJQUFJLENBQUMsTUFBTSxJQUFJLE1BQU0sSUFDaEQsVUFBVSxDQUFDLFFBQ2IsRUFBRSxDQUFDO1FBQ0gsTUFBTSxPQUFPLEdBQUcsVUFBVSxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ3RDLE9BQU8sQ0FBQyxPQUFPLENBQUMsa0NBQWtDLE9BQU8sRUFBRSxDQUFDLENBQUM7SUFDL0QsQ0FBQyxDQUFDO1NBQ0QsS0FBSyxDQUFDLENBQUMsS0FBWSxFQUFFLEVBQUU7UUFDdEIsT0FBTyxDQUFDLElBQUksQ0FBQyw2QkFBNkIsTUFBTSxFQUFFLENBQUMsQ0FBQztRQUNwRCxJQUFJLEtBQUssQ0FBQyxPQUFPLEVBQUU7WUFDakIsWUFBSyxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7U0FDakM7UUFDRCxZQUFLLENBQUMsVUFBVSxDQUFDLGdEQUFnRCxDQUFDLENBQUM7UUFDbkUsT0FBTyxDQUFDLEdBQUcsQ0FBQyxPQUFPLFlBQUssQ0FBQyxJQUFJLENBQUMsdUJBQXVCLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDakUsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ25CLENBQUMsQ0FBQyxDQUFDO0FBQ1AsQ0FBQztBQS9CRCw0Q0ErQkMifQ==
|
|
@@ -21,9 +21,10 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
|
21
21
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
22
22
|
exports.detectFramework = exports.promptForFramework = void 0;
|
|
23
23
|
const core_1 = require("@slicemachine/core");
|
|
24
|
+
const core_2 = require("@slicemachine/core");
|
|
24
25
|
const inquirer = __importStar(require("inquirer"));
|
|
25
26
|
async function promptForFramework() {
|
|
26
|
-
const choices =
|
|
27
|
+
const choices = core_2.Models.SupportedFrameworks.map((framework) => {
|
|
27
28
|
return {
|
|
28
29
|
name: core_1.Utils.Framework.fancyName(framework),
|
|
29
30
|
value: framework,
|
|
@@ -52,10 +53,9 @@ async function detectFramework(cwd) {
|
|
|
52
53
|
const spinner = core_1.Utils.spinner("Detecting framework to install correct dependencies");
|
|
53
54
|
spinner.start();
|
|
54
55
|
try {
|
|
55
|
-
const maybeFramework = core_1.Utils.Framework.detectFramework(cwd);
|
|
56
|
+
const maybeFramework = core_1.Utils.Framework.detectFramework(cwd, Object.values(core_2.Models.Frameworks));
|
|
56
57
|
spinner.stop();
|
|
57
|
-
if (!maybeFramework ||
|
|
58
|
-
maybeFramework === core_1.Utils.Framework.FrameworkEnum.vanillajs) {
|
|
58
|
+
if (!maybeFramework || maybeFramework === core_2.Models.Frameworks.vanillajs) {
|
|
59
59
|
core_1.Utils.writeError("Framework not detected");
|
|
60
60
|
return await promptForFramework();
|
|
61
61
|
}
|
|
@@ -83,4 +83,4 @@ async function detectFramework(cwd) {
|
|
|
83
83
|
}
|
|
84
84
|
}
|
|
85
85
|
exports.detectFramework = detectFramework;
|
|
86
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
86
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGV0ZWN0LWZyYW1ld29yay5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zdGVwcy9kZXRlY3QtZnJhbWV3b3JrLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSw2Q0FBMkM7QUFDM0MsNkNBQTRDO0FBQzVDLG1EQUFxQztBQU85QixLQUFLLFVBQVUsa0JBQWtCO0lBQ3RDLE1BQU0sT0FBTyxHQUFHLGFBQU0sQ0FBQyxtQkFBbUIsQ0FBQyxHQUFHLENBQUMsQ0FBQyxTQUFTLEVBQUUsRUFBRTtRQUMzRCxPQUFPO1lBQ0wsSUFBSSxFQUFFLFlBQUssQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQztZQUMxQyxLQUFLLEVBQUUsU0FBUztTQUNqQixDQUFDO0lBQ0osQ0FBQyxDQUFDLENBQUM7SUFFSCxPQUFPLFFBQVE7U0FDWixNQUFNLENBQW1DO1FBQ3hDO1lBQ0UsSUFBSSxFQUFFLFdBQVc7WUFDakIsSUFBSSxFQUFFLE1BQU07WUFDWixPQUFPLEVBQUUsMkJBQTJCO1lBQ3BDLFFBQVEsRUFBRSxJQUFJO1lBQ2QsT0FBTztTQUNSO0tBQ0YsQ0FBQztTQUNELElBQUksQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFO1FBQ1osT0FBTztZQUNMLEtBQUssRUFBRSxHQUFHLENBQUMsU0FBUztZQUNwQixhQUFhLEVBQUUsSUFBSTtTQUNwQixDQUFDO0lBQ0osQ0FBQyxDQUFDLENBQUM7QUFDUCxDQUFDO0FBeEJELGdEQXdCQztBQUVNLEtBQUssVUFBVSxlQUFlLENBQUMsR0FBVztJQUMvQyxNQUFNLFdBQVcsR0FBRyxjQUFjLFlBQUssQ0FBQyxJQUFJLENBQzFDLHVCQUF1QixDQUN4QiwrQkFBK0IsQ0FBQztJQUVqQyxNQUFNLE9BQU8sR0FBRyxZQUFLLENBQUMsT0FBTyxDQUMzQixxREFBcUQsQ0FDdEQsQ0FBQztJQUVGLE9BQU8sQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUVoQixJQUFJO1FBQ0YsTUFBTSxjQUFjLEdBQUcsWUFBSyxDQUFDLFNBQVMsQ0FBQyxlQUFlLENBQ3BELEdBQUcsRUFDSCxNQUFNLENBQUMsTUFBTSxDQUFDLGFBQU0sQ0FBQyxVQUFVLENBQUMsQ0FDakMsQ0FBQztRQUNGLE9BQU8sQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUVmLElBQUksQ0FBQyxjQUFjLElBQUksY0FBYyxLQUFLLGFBQU0sQ0FBQyxVQUFVLENBQUMsU0FBUyxFQUFFO1lBQ3JFLFlBQUssQ0FBQyxVQUFVLENBQUMsd0JBQXdCLENBQUMsQ0FBQztZQUMzQyxPQUFPLE1BQU0sa0JBQWtCLEVBQUUsQ0FBQztTQUNuQztRQUVELE1BQU0sV0FBVyxHQUFHLFlBQUssQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBRTlELElBQUksWUFBSyxDQUFDLFNBQVMsQ0FBQyxhQUFhLENBQUMsY0FBYyxDQUFDLEVBQUU7WUFDakQsWUFBSyxDQUFDLFVBQVUsQ0FBQyxHQUFHLFdBQVcsNkJBQTZCLENBQUMsQ0FBQztZQUM5RCxPQUFPLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1lBQ3pCLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7U0FDakI7UUFFRCxZQUFLLENBQUMsVUFBVSxDQUFDLEdBQUcsV0FBVyxXQUFXLENBQUMsQ0FBQztRQUU1QyxPQUFPO1lBQ0wsS0FBSyxFQUFFLGNBQWM7WUFDckIsYUFBYSxFQUFFLEtBQUs7U0FDckIsQ0FBQztLQUNIO0lBQUMsT0FBTyxLQUFLLEVBQUU7UUFDZCxPQUFPLENBQUMsSUFBSSxDQUFDLHdCQUF3QixDQUFDLENBQUM7UUFFdkMsSUFBSSxLQUFLLFlBQVksS0FBSyxJQUFJLEtBQUssQ0FBQyxPQUFPLEVBQUU7WUFDM0MsWUFBSyxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7U0FDakM7YUFBTTtZQUNMLE9BQU8sQ0FBQyxHQUFHLENBQUMsV0FBVyxDQUFDLENBQUM7U0FDMUI7UUFFRCxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO0tBQ2pCO0FBQ0gsQ0FBQztBQWhERCwwQ0FnREMifQ==
|
|
@@ -7,32 +7,43 @@ exports.installRequiredDependencies = void 0;
|
|
|
7
7
|
const path_1 = __importDefault(require("path"));
|
|
8
8
|
const utils_1 = require("../utils");
|
|
9
9
|
const core_1 = require("@slicemachine/core");
|
|
10
|
+
const { PRISMIC_CLIENT, PRISMIC_DOM_PACKAGE_NAME, PRISMIC_REACT_PACKAGE_NAME, NEXT_SLICEZONE, SM_PACKAGE_NAME, NUXT_PRISMIC, NUXT_SM, VUE_SLICEZONE, PRISMIC_VUE, } = core_1.Utils.CONSTS;
|
|
11
|
+
function depsForFramework(framework) {
|
|
12
|
+
switch (framework) {
|
|
13
|
+
case core_1.Models.Frameworks.react:
|
|
14
|
+
return `${PRISMIC_REACT_PACKAGE_NAME} ${PRISMIC_CLIENT}`;
|
|
15
|
+
case core_1.Models.Frameworks.next:
|
|
16
|
+
return `${PRISMIC_REACT_PACKAGE_NAME} ${PRISMIC_CLIENT} ${NEXT_SLICEZONE}`;
|
|
17
|
+
case core_1.Models.Frameworks.svelte:
|
|
18
|
+
return `${PRISMIC_DOM_PACKAGE_NAME} ${PRISMIC_CLIENT}`;
|
|
19
|
+
case core_1.Models.Frameworks.nuxt:
|
|
20
|
+
return `${NUXT_PRISMIC} ${NUXT_SM} ${VUE_SLICEZONE}`;
|
|
21
|
+
case core_1.Models.Frameworks.vue:
|
|
22
|
+
return `${PRISMIC_VUE} ${PRISMIC_CLIENT} ${PRISMIC_DOM_PACKAGE_NAME} ${VUE_SLICEZONE}`;
|
|
23
|
+
default:
|
|
24
|
+
return "";
|
|
25
|
+
}
|
|
26
|
+
}
|
|
10
27
|
async function installRequiredDependencies(cwd, framework) {
|
|
11
28
|
const yarnLock = core_1.Utils.Files.exists(core_1.FileSystem.YarnLockPath(cwd));
|
|
12
29
|
const installDevDependencyCommand = yarnLock
|
|
13
30
|
? "yarn add -D"
|
|
14
31
|
: "npm install --save-dev";
|
|
15
|
-
const installDependencyCommand = yarnLock ? "yarn add" : "npm install";
|
|
32
|
+
const installDependencyCommand = yarnLock ? "yarn add" : "npm install --save";
|
|
16
33
|
const spinner = core_1.Utils.spinner("Downloading Prismic Visual Builder");
|
|
17
34
|
spinner.start();
|
|
18
|
-
const { stderr } = await (0, utils_1.execCommand)(`${installDevDependencyCommand} ${
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
break;
|
|
24
|
-
case core_1.Utils.Framework.FrameworkEnum.svelte:
|
|
25
|
-
await (0, utils_1.execCommand)(`${installDependencyCommand} ${core_1.Utils.CONSTS.PRISMIC_DOM_PACKAGE_NAME}`);
|
|
26
|
-
break;
|
|
27
|
-
}
|
|
28
|
-
const pathToPkg = path_1.default.join(core_1.FileSystem.PackagePaths(cwd).value(), core_1.Utils.CONSTS.SM_PACKAGE_NAME);
|
|
35
|
+
const { stderr } = await (0, utils_1.execCommand)(`${installDevDependencyCommand} ${SM_PACKAGE_NAME}`);
|
|
36
|
+
const deps = depsForFramework(framework);
|
|
37
|
+
if (deps)
|
|
38
|
+
await (0, utils_1.execCommand)(`${installDependencyCommand} ${deps}`);
|
|
39
|
+
const pathToPkg = path_1.default.join(core_1.FileSystem.PackagePaths(cwd).value(), SM_PACKAGE_NAME);
|
|
29
40
|
const isPackageInstalled = core_1.Utils.Files.exists(pathToPkg);
|
|
30
41
|
if (isPackageInstalled || !stderr.length) {
|
|
31
42
|
spinner.succeed("The Prismic Visual Builder was installed successfully");
|
|
32
43
|
return;
|
|
33
44
|
}
|
|
34
45
|
spinner.fail();
|
|
35
|
-
core_1.Utils.writeWarning(`could not install ${
|
|
46
|
+
core_1.Utils.writeWarning(`could not install ${SM_PACKAGE_NAME}. Please do it manually!`);
|
|
36
47
|
}
|
|
37
48
|
exports.installRequiredDependencies = installRequiredDependencies;
|
|
38
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
49
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5zdGFsbC1yZXF1aXJlZC1kZXBlbmRlbmNpZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc3RlcHMvaW5zdGFsbC1yZXF1aXJlZC1kZXBlbmRlbmNpZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsZ0RBQXdCO0FBQ3hCLG9DQUF1QztBQUN2Qyw2Q0FBK0Q7QUFFL0QsTUFBTSxFQUNKLGNBQWMsRUFDZCx3QkFBd0IsRUFDeEIsMEJBQTBCLEVBQzFCLGNBQWMsRUFDZCxlQUFlLEVBQ2YsWUFBWSxFQUNaLE9BQU8sRUFDUCxhQUFhLEVBQ2IsV0FBVyxHQUNaLEdBQUcsWUFBSyxDQUFDLE1BQU0sQ0FBQztBQUVqQixTQUFTLGdCQUFnQixDQUFDLFNBQTRCO0lBQ3BELFFBQVEsU0FBUyxFQUFFO1FBQ2pCLEtBQUssYUFBTSxDQUFDLFVBQVUsQ0FBQyxLQUFLO1lBQzFCLE9BQU8sR0FBRywwQkFBMEIsSUFBSSxjQUFjLEVBQUUsQ0FBQztRQUMzRCxLQUFLLGFBQU0sQ0FBQyxVQUFVLENBQUMsSUFBSTtZQUN6QixPQUFPLEdBQUcsMEJBQTBCLElBQUksY0FBYyxJQUFJLGNBQWMsRUFBRSxDQUFDO1FBQzdFLEtBQUssYUFBTSxDQUFDLFVBQVUsQ0FBQyxNQUFNO1lBQzNCLE9BQU8sR0FBRyx3QkFBd0IsSUFBSSxjQUFjLEVBQUUsQ0FBQztRQUN6RCxLQUFLLGFBQU0sQ0FBQyxVQUFVLENBQUMsSUFBSTtZQUN6QixPQUFPLEdBQUcsWUFBWSxJQUFJLE9BQU8sSUFBSSxhQUFhLEVBQUUsQ0FBQztRQUN2RCxLQUFLLGFBQU0sQ0FBQyxVQUFVLENBQUMsR0FBRztZQUN4QixPQUFPLEdBQUcsV0FBVyxJQUFJLGNBQWMsSUFBSSx3QkFBd0IsSUFBSSxhQUFhLEVBQUUsQ0FBQztRQUN6RjtZQUNFLE9BQU8sRUFBRSxDQUFDO0tBQ2I7QUFDSCxDQUFDO0FBRU0sS0FBSyxVQUFVLDJCQUEyQixDQUMvQyxHQUFXLEVBQ1gsU0FBNEI7SUFFNUIsTUFBTSxRQUFRLEdBQUcsWUFBSyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsaUJBQVUsQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztJQUNsRSxNQUFNLDJCQUEyQixHQUFHLFFBQVE7UUFDMUMsQ0FBQyxDQUFDLGFBQWE7UUFDZixDQUFDLENBQUMsd0JBQXdCLENBQUM7SUFDN0IsTUFBTSx3QkFBd0IsR0FBRyxRQUFRLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsb0JBQW9CLENBQUM7SUFFOUUsTUFBTSxPQUFPLEdBQUcsWUFBSyxDQUFDLE9BQU8sQ0FBQyxvQ0FBb0MsQ0FBQyxDQUFDO0lBQ3BFLE9BQU8sQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUVoQixNQUFNLEVBQUUsTUFBTSxFQUFFLEdBQUcsTUFBTSxJQUFBLG1CQUFXLEVBQ2xDLEdBQUcsMkJBQTJCLElBQUksZUFBZSxFQUFFLENBQ3BELENBQUM7SUFFRixNQUFNLElBQUksR0FBRyxnQkFBZ0IsQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUN6QyxJQUFJLElBQUk7UUFBRSxNQUFNLElBQUEsbUJBQVcsRUFBQyxHQUFHLHdCQUF3QixJQUFJLElBQUksRUFBRSxDQUFDLENBQUM7SUFFbkUsTUFBTSxTQUFTLEdBQUcsY0FBSSxDQUFDLElBQUksQ0FDekIsaUJBQVUsQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQ3BDLGVBQWUsQ0FDaEIsQ0FBQztJQUNGLE1BQU0sa0JBQWtCLEdBQUcsWUFBSyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7SUFFekQsSUFBSSxrQkFBa0IsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUU7UUFDeEMsT0FBTyxDQUFDLE9BQU8sQ0FBQyx1REFBdUQsQ0FBQyxDQUFDO1FBQ3pFLE9BQU87S0FDUjtJQUVELE9BQU8sQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNmLFlBQUssQ0FBQyxZQUFZLENBQ2hCLHFCQUFxQixlQUFlLDBCQUEwQixDQUMvRCxDQUFDO0FBQ0osQ0FBQztBQW5DRCxrRUFtQ0MifQ==
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@slicemachine/init",
|
|
3
|
-
"version": "1.0.2-alpha.
|
|
3
|
+
"version": "1.0.2-alpha.8",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"description": "The easiest way to add Slice Machine to your project",
|
|
6
6
|
"bin": {
|
|
@@ -42,10 +42,10 @@
|
|
|
42
42
|
"typescript": "^4.4.3"
|
|
43
43
|
},
|
|
44
44
|
"dependencies": {
|
|
45
|
-
"@slicemachine/core": "1.0.2-alpha.
|
|
45
|
+
"@slicemachine/core": "1.0.2-alpha.8",
|
|
46
46
|
"fp-ts": "^2.11.5",
|
|
47
47
|
"inquirer": "^8.2.0",
|
|
48
48
|
"io-ts": "^2.2.16"
|
|
49
49
|
},
|
|
50
|
-
"gitHead": "
|
|
50
|
+
"gitHead": "7652fcdcd9d03006b8a3730b9d01958e8650f85e"
|
|
51
51
|
}
|
package/src/index.ts
CHANGED
|
@@ -15,8 +15,7 @@ import { findArgument } from "./utils";
|
|
|
15
15
|
|
|
16
16
|
async function init() {
|
|
17
17
|
const cwd = findArgument(process.argv, "cwd") || process.cwd();
|
|
18
|
-
const base =
|
|
19
|
-
Utils.CONSTS.DEFAULT_BASE) as Utils.Endpoints.Base;
|
|
18
|
+
const base = findArgument(process.argv, "base") || Utils.CONSTS.DEFAULT_BASE;
|
|
20
19
|
|
|
21
20
|
console.log(
|
|
22
21
|
Utils.purple(
|
|
@@ -31,7 +30,7 @@ async function init() {
|
|
|
31
30
|
await loginOrBypass(base);
|
|
32
31
|
|
|
33
32
|
// retrieve tokens for api calls
|
|
34
|
-
const config = FileSystem.
|
|
33
|
+
const config = FileSystem.PrismicSharedConfigManager.get();
|
|
35
34
|
|
|
36
35
|
// detect the framework used by the project
|
|
37
36
|
const frameworkResult = await detectFramework(cwd);
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { FileSystem, Utils } from "@slicemachine/core";
|
|
2
|
+
import type { Models } from "@slicemachine/core";
|
|
2
3
|
import { FrameworkResult } from "./detect-framework";
|
|
3
4
|
|
|
4
5
|
type Base = Utils.Endpoints.Base;
|
|
@@ -17,7 +18,7 @@ export function configureProject(
|
|
|
17
18
|
try {
|
|
18
19
|
const manifest = FileSystem.retrieveManifest(cwd);
|
|
19
20
|
|
|
20
|
-
const manifestUpdated:
|
|
21
|
+
const manifestUpdated: Models.Manifest = {
|
|
21
22
|
...(manifest.exists && manifest.content ? manifest.content : {}),
|
|
22
23
|
apiEndpoint: Utils.Endpoints.buildRepositoryEndpoint(base, repository),
|
|
23
24
|
libraries: ["@/slices"],
|
package/src/steps/create-repo.ts
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
|
-
import { Communication, Utils
|
|
1
|
+
import { Communication, Utils } from "@slicemachine/core";
|
|
2
|
+
import type { Models } from "@slicemachine/core";
|
|
2
3
|
|
|
3
4
|
export function createRepository(
|
|
4
5
|
domain: string,
|
|
5
|
-
framework:
|
|
6
|
-
config:
|
|
6
|
+
framework: Models.Frameworks,
|
|
7
|
+
config: Models.PrismicSharedConfig
|
|
7
8
|
): Promise<void> {
|
|
8
9
|
const spinner = Utils.spinner("Creating Prismic Repository");
|
|
9
10
|
spinner.start();
|
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
import { Utils } from "@slicemachine/core";
|
|
2
|
+
import { Models } from "@slicemachine/core";
|
|
2
3
|
import * as inquirer from "inquirer";
|
|
3
4
|
|
|
4
5
|
export type FrameworkResult = {
|
|
5
|
-
value:
|
|
6
|
+
value: Models.Frameworks;
|
|
6
7
|
manuallyAdded: boolean;
|
|
7
8
|
};
|
|
8
9
|
|
|
9
10
|
export async function promptForFramework(): Promise<FrameworkResult> {
|
|
10
|
-
const choices =
|
|
11
|
+
const choices = Models.SupportedFrameworks.map((framework) => {
|
|
11
12
|
return {
|
|
12
13
|
name: Utils.Framework.fancyName(framework),
|
|
13
14
|
value: framework,
|
|
@@ -15,7 +16,7 @@ export async function promptForFramework(): Promise<FrameworkResult> {
|
|
|
15
16
|
});
|
|
16
17
|
|
|
17
18
|
return inquirer
|
|
18
|
-
.prompt<{ framework:
|
|
19
|
+
.prompt<{ framework: Models.Frameworks }>([
|
|
19
20
|
{
|
|
20
21
|
name: "framework",
|
|
21
22
|
type: "list",
|
|
@@ -44,13 +45,13 @@ export async function detectFramework(cwd: string): Promise<FrameworkResult> {
|
|
|
44
45
|
spinner.start();
|
|
45
46
|
|
|
46
47
|
try {
|
|
47
|
-
const maybeFramework = Utils.Framework.detectFramework(
|
|
48
|
+
const maybeFramework = Utils.Framework.detectFramework(
|
|
49
|
+
cwd,
|
|
50
|
+
Object.values(Models.Frameworks)
|
|
51
|
+
);
|
|
48
52
|
spinner.stop();
|
|
49
53
|
|
|
50
|
-
if (
|
|
51
|
-
!maybeFramework ||
|
|
52
|
-
maybeFramework === Utils.Framework.FrameworkEnum.vanillajs
|
|
53
|
-
) {
|
|
54
|
+
if (!maybeFramework || maybeFramework === Models.Frameworks.vanillajs) {
|
|
54
55
|
Utils.writeError("Framework not detected");
|
|
55
56
|
return await promptForFramework();
|
|
56
57
|
}
|
|
@@ -1,41 +1,59 @@
|
|
|
1
1
|
import path from "path";
|
|
2
2
|
import { execCommand } from "../utils";
|
|
3
|
-
import { Utils, FileSystem } from "@slicemachine/core";
|
|
3
|
+
import { Utils, FileSystem, Models } from "@slicemachine/core";
|
|
4
|
+
|
|
5
|
+
const {
|
|
6
|
+
PRISMIC_CLIENT,
|
|
7
|
+
PRISMIC_DOM_PACKAGE_NAME,
|
|
8
|
+
PRISMIC_REACT_PACKAGE_NAME,
|
|
9
|
+
NEXT_SLICEZONE,
|
|
10
|
+
SM_PACKAGE_NAME,
|
|
11
|
+
NUXT_PRISMIC,
|
|
12
|
+
NUXT_SM,
|
|
13
|
+
VUE_SLICEZONE,
|
|
14
|
+
PRISMIC_VUE,
|
|
15
|
+
} = Utils.CONSTS;
|
|
16
|
+
|
|
17
|
+
function depsForFramework(framework: Models.Frameworks): string {
|
|
18
|
+
switch (framework) {
|
|
19
|
+
case Models.Frameworks.react:
|
|
20
|
+
return `${PRISMIC_REACT_PACKAGE_NAME} ${PRISMIC_CLIENT}`;
|
|
21
|
+
case Models.Frameworks.next:
|
|
22
|
+
return `${PRISMIC_REACT_PACKAGE_NAME} ${PRISMIC_CLIENT} ${NEXT_SLICEZONE}`;
|
|
23
|
+
case Models.Frameworks.svelte:
|
|
24
|
+
return `${PRISMIC_DOM_PACKAGE_NAME} ${PRISMIC_CLIENT}`;
|
|
25
|
+
case Models.Frameworks.nuxt:
|
|
26
|
+
return `${NUXT_PRISMIC} ${NUXT_SM} ${VUE_SLICEZONE}`;
|
|
27
|
+
case Models.Frameworks.vue:
|
|
28
|
+
return `${PRISMIC_VUE} ${PRISMIC_CLIENT} ${PRISMIC_DOM_PACKAGE_NAME} ${VUE_SLICEZONE}`;
|
|
29
|
+
default:
|
|
30
|
+
return "";
|
|
31
|
+
}
|
|
32
|
+
}
|
|
4
33
|
|
|
5
34
|
export async function installRequiredDependencies(
|
|
6
35
|
cwd: string,
|
|
7
|
-
framework:
|
|
36
|
+
framework: Models.Frameworks
|
|
8
37
|
): Promise<void> {
|
|
9
38
|
const yarnLock = Utils.Files.exists(FileSystem.YarnLockPath(cwd));
|
|
10
39
|
const installDevDependencyCommand = yarnLock
|
|
11
40
|
? "yarn add -D"
|
|
12
41
|
: "npm install --save-dev";
|
|
13
|
-
const installDependencyCommand = yarnLock ? "yarn add" : "npm install";
|
|
42
|
+
const installDependencyCommand = yarnLock ? "yarn add" : "npm install --save";
|
|
14
43
|
|
|
15
44
|
const spinner = Utils.spinner("Downloading Prismic Visual Builder");
|
|
16
45
|
spinner.start();
|
|
17
46
|
|
|
18
47
|
const { stderr } = await execCommand(
|
|
19
|
-
`${installDevDependencyCommand} ${
|
|
48
|
+
`${installDevDependencyCommand} ${SM_PACKAGE_NAME}`
|
|
20
49
|
);
|
|
21
50
|
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
case Utils.Framework.FrameworkEnum.next:
|
|
25
|
-
await execCommand(
|
|
26
|
-
`${installDependencyCommand} ${Utils.CONSTS.PRISMIC_REACT_PACKAGE_NAME}`
|
|
27
|
-
);
|
|
28
|
-
break;
|
|
29
|
-
case Utils.Framework.FrameworkEnum.svelte:
|
|
30
|
-
await execCommand(
|
|
31
|
-
`${installDependencyCommand} ${Utils.CONSTS.PRISMIC_DOM_PACKAGE_NAME}`
|
|
32
|
-
);
|
|
33
|
-
break;
|
|
34
|
-
}
|
|
51
|
+
const deps = depsForFramework(framework);
|
|
52
|
+
if (deps) await execCommand(`${installDependencyCommand} ${deps}`);
|
|
35
53
|
|
|
36
54
|
const pathToPkg = path.join(
|
|
37
55
|
FileSystem.PackagePaths(cwd).value(),
|
|
38
|
-
|
|
56
|
+
SM_PACKAGE_NAME
|
|
39
57
|
);
|
|
40
58
|
const isPackageInstalled = Utils.Files.exists(pathToPkg);
|
|
41
59
|
|
|
@@ -46,6 +64,6 @@ export async function installRequiredDependencies(
|
|
|
46
64
|
|
|
47
65
|
spinner.fail();
|
|
48
66
|
Utils.writeWarning(
|
|
49
|
-
`could not install ${
|
|
67
|
+
`could not install ${SM_PACKAGE_NAME}. Please do it manually!`
|
|
50
68
|
);
|
|
51
69
|
}
|