@slicemachine/init 1.0.2-slicecanvas.0 → 1.1.1-alpha.2
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/LICENSE +202 -0
- package/build/index.js +565 -27
- package/build/index.js.map +1 -0
- package/jest.config.js +1 -0
- package/package.json +33 -20
- package/siroc.config.js +19 -0
- package/src/index.ts +32 -4
- package/src/steps/configure-project.ts +15 -3
- package/src/steps/create-repo.ts +4 -3
- package/src/steps/detect-framework.ts +11 -9
- package/src/steps/index.ts +1 -0
- package/src/steps/install-lib.ts +115 -0
- package/src/steps/install-required-dependencies.ts +13 -11
- package/src/steps/loginOrBypass.ts +21 -5
- package/src/steps/maybe-existing-repo.ts +16 -19
- package/src/utils/PackageManager.ts +66 -0
- package/src/utils/communication.ts +76 -0
- package/src/utils/index.ts +4 -4
- package/src/utils/tracker.ts +57 -0
- package/build/steps/configure-project.js +0 -29
- package/build/steps/create-repo.js +0 -26
- package/build/steps/detect-framework.js +0 -86
- package/build/steps/display-final-message.js +0 -11
- package/build/steps/index.js +0 -20
- package/build/steps/install-required-dependencies.js +0 -49
- package/build/steps/loginOrBypass.js +0 -13
- package/build/steps/maybe-existing-repo.js +0 -145
- package/build/steps/validate-pkg.js +0 -17
- package/build/utils/index.js +0 -22
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
import * as inquirer from "inquirer";
|
|
2
2
|
import Separator from "inquirer/lib/objects/separator";
|
|
3
3
|
import { Communication, Utils, FileSystem } from "@slicemachine/core";
|
|
4
|
-
import {
|
|
4
|
+
import { Repositories } from "@slicemachine/core/src/models/Repositories";
|
|
5
|
+
import { Repository } from "@slicemachine/core/src/models/Repository";
|
|
6
|
+
import { parsePrismicAuthToken } from "@slicemachine/core/build/src/utils/cookie";
|
|
5
7
|
|
|
6
8
|
export const CREATE_REPO = "$_CREATE_REPO"; // not a valid domain name
|
|
7
9
|
const DEFAULT_BASE = Utils.CONSTS.DEFAULT_BASE;
|
|
@@ -28,7 +30,7 @@ export async function promptForRepoName(base: string): Promise<string> {
|
|
|
28
30
|
type: "input",
|
|
29
31
|
required: true,
|
|
30
32
|
transformer: (value) => prettyRepoName(address, String(value)),
|
|
31
|
-
async validate(name) {
|
|
33
|
+
async validate(name: string) {
|
|
32
34
|
const result = await Communication.validateRepositoryName(
|
|
33
35
|
name,
|
|
34
36
|
base,
|
|
@@ -48,30 +50,24 @@ export type PromptOrSeparator = RepoPrompt | Separator;
|
|
|
48
50
|
export type RepoPrompts = Array<PromptOrSeparator>;
|
|
49
51
|
|
|
50
52
|
export function makeReposPretty(base: string) {
|
|
51
|
-
return function (
|
|
52
|
-
arg: [
|
|
53
|
-
string,
|
|
54
|
-
{ role: Utils.roles.Roles | Record<string, Utils.roles.Roles> }
|
|
55
|
-
]
|
|
56
|
-
): RepoPrompt {
|
|
57
|
-
const [repoName, { role }] = arg;
|
|
53
|
+
return function ({ name, domain, role }: Repository): RepoPrompt {
|
|
58
54
|
const address = new URL(base);
|
|
59
|
-
address.hostname = `${
|
|
55
|
+
address.hostname = `${domain}.${address.hostname}`;
|
|
60
56
|
if (Utils.roles.canUpdateCustomTypes(role) === false) {
|
|
61
57
|
return {
|
|
62
58
|
name: `${Utils.purple.dim("Use")} ${Utils.bold.dim(
|
|
63
|
-
|
|
59
|
+
name
|
|
64
60
|
)} ${Utils.purple.dim(`"${address.hostname}"`)}`,
|
|
65
|
-
value:
|
|
61
|
+
value: domain,
|
|
66
62
|
disabled: "Unauthorized",
|
|
67
63
|
};
|
|
68
64
|
}
|
|
69
65
|
|
|
70
66
|
return {
|
|
71
|
-
name: `${Utils.purple("Use")} ${Utils.bold(
|
|
67
|
+
name: `${Utils.purple("Use")} ${Utils.bold(name)} ${Utils.purple(
|
|
72
68
|
`"${address.hostname}"`
|
|
73
69
|
)}`,
|
|
74
|
-
value:
|
|
70
|
+
value: name,
|
|
75
71
|
};
|
|
76
72
|
};
|
|
77
73
|
}
|
|
@@ -97,7 +93,7 @@ export function maybeStickTheRepoToTheTopOfTheList(repoName?: string | null) {
|
|
|
97
93
|
}
|
|
98
94
|
|
|
99
95
|
export function sortReposForPrompt(
|
|
100
|
-
repos:
|
|
96
|
+
repos: Repositories,
|
|
101
97
|
base: string,
|
|
102
98
|
cwd: string
|
|
103
99
|
): RepoPrompts {
|
|
@@ -110,7 +106,7 @@ export function sortReposForPrompt(
|
|
|
110
106
|
|
|
111
107
|
const maybeConfiguredRepoName = FileSystem.maybeRepoNameFromSMFile(cwd, base);
|
|
112
108
|
|
|
113
|
-
return
|
|
109
|
+
return repos
|
|
114
110
|
.reverse()
|
|
115
111
|
.map(makeReposPretty(base))
|
|
116
112
|
.reduce(maybeStickTheRepoToTheTopOfTheList(maybeConfiguredRepoName), [
|
|
@@ -120,13 +116,14 @@ export function sortReposForPrompt(
|
|
|
120
116
|
}
|
|
121
117
|
|
|
122
118
|
export async function maybeExistingRepo(
|
|
123
|
-
|
|
119
|
+
cookies: string,
|
|
124
120
|
cwd: string,
|
|
125
121
|
base = DEFAULT_BASE
|
|
126
122
|
): Promise<{ name: string; existing: boolean }> {
|
|
127
|
-
const
|
|
123
|
+
const token = parsePrismicAuthToken(cookies);
|
|
124
|
+
const repos = await Communication.listRepositories(token);
|
|
128
125
|
|
|
129
|
-
if (
|
|
126
|
+
if (repos.length === 0) {
|
|
130
127
|
const name = await promptForRepoName(base);
|
|
131
128
|
return { existing: false, name };
|
|
132
129
|
}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import { Utils, FileSystem } from "@slicemachine/core";
|
|
2
|
+
import { execCommand } from "../utils";
|
|
3
|
+
|
|
4
|
+
export type Dependency = string | { name: string; version: string };
|
|
5
|
+
export const Dependencies = {
|
|
6
|
+
fromPkgFormat(
|
|
7
|
+
pkgDeps: Record<string, string> | undefined
|
|
8
|
+
): ReadonlyArray<Dependency> | undefined {
|
|
9
|
+
if (!pkgDeps) return;
|
|
10
|
+
|
|
11
|
+
return Object.entries(pkgDeps).map(([name, version]) => ({
|
|
12
|
+
name,
|
|
13
|
+
version,
|
|
14
|
+
}));
|
|
15
|
+
},
|
|
16
|
+
};
|
|
17
|
+
function formatDeps(dependencies: ReadonlyArray<Dependency>): string {
|
|
18
|
+
return dependencies
|
|
19
|
+
.map((dep) => {
|
|
20
|
+
if (typeof dep === "string") return dep;
|
|
21
|
+
return `${dep.name}@${dep.version}`;
|
|
22
|
+
})
|
|
23
|
+
.join(" ");
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
export interface PackageManager {
|
|
27
|
+
install(dependencies: ReadonlyArray<Dependency>): Promise<{ stderr: string }>;
|
|
28
|
+
installDev(
|
|
29
|
+
dependencies: ReadonlyArray<Dependency>
|
|
30
|
+
): Promise<{ stderr: string }>;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
export const PackageManager = {
|
|
34
|
+
get(cwd: string): PackageManager {
|
|
35
|
+
if (Utils.Files.exists(FileSystem.YarnLockPath(cwd))) {
|
|
36
|
+
return Yarn;
|
|
37
|
+
}
|
|
38
|
+
return Npm;
|
|
39
|
+
},
|
|
40
|
+
};
|
|
41
|
+
|
|
42
|
+
export const Yarn: PackageManager = {
|
|
43
|
+
install(
|
|
44
|
+
dependencies: ReadonlyArray<Dependency>
|
|
45
|
+
): Promise<{ stderr: string }> {
|
|
46
|
+
return execCommand(`yarn add ${formatDeps(dependencies)}`);
|
|
47
|
+
},
|
|
48
|
+
installDev(
|
|
49
|
+
dependencies: ReadonlyArray<Dependency>
|
|
50
|
+
): Promise<{ stderr: string }> {
|
|
51
|
+
return execCommand(`yarn add --dev ${formatDeps(dependencies)}`);
|
|
52
|
+
},
|
|
53
|
+
};
|
|
54
|
+
|
|
55
|
+
export const Npm: PackageManager = {
|
|
56
|
+
install(
|
|
57
|
+
dependencies: ReadonlyArray<Dependency>
|
|
58
|
+
): Promise<{ stderr: string }> {
|
|
59
|
+
return execCommand(`npm i --save ${formatDeps(dependencies)}`);
|
|
60
|
+
},
|
|
61
|
+
installDev(
|
|
62
|
+
dependencies: ReadonlyArray<Dependency>
|
|
63
|
+
): Promise<{ stderr: string }> {
|
|
64
|
+
return execCommand(`npm i --save-dev ${formatDeps(dependencies)}`);
|
|
65
|
+
},
|
|
66
|
+
};
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
import axios from "axios";
|
|
2
|
+
import * as t from "io-ts";
|
|
3
|
+
import { pipe } from "fp-ts/function";
|
|
4
|
+
import { fold } from "fp-ts/Either";
|
|
5
|
+
import { Utils, Communication, FileSystem } from "@slicemachine/core";
|
|
6
|
+
|
|
7
|
+
const UserProfile = t.exact(
|
|
8
|
+
t.type({
|
|
9
|
+
userId: t.string,
|
|
10
|
+
shortId: t.string,
|
|
11
|
+
email: t.string,
|
|
12
|
+
firstName: t.string,
|
|
13
|
+
lastName: t.string,
|
|
14
|
+
})
|
|
15
|
+
);
|
|
16
|
+
|
|
17
|
+
export type UserProfile = t.TypeOf<typeof UserProfile>;
|
|
18
|
+
|
|
19
|
+
export async function getUserProfile(
|
|
20
|
+
cookies: string,
|
|
21
|
+
base = Utils.CONSTS.DEFAULT_BASE
|
|
22
|
+
): Promise<UserProfile> {
|
|
23
|
+
// note the auth server also provides a userId
|
|
24
|
+
|
|
25
|
+
const url = new URL(base);
|
|
26
|
+
url.hostname = `user.${url.hostname}`;
|
|
27
|
+
url.pathname = "profile";
|
|
28
|
+
|
|
29
|
+
const endpoint = url.toString();
|
|
30
|
+
const token = Utils.Cookie.parsePrismicAuthToken(cookies);
|
|
31
|
+
|
|
32
|
+
return axios
|
|
33
|
+
.get<UserProfile>(endpoint, {
|
|
34
|
+
headers: {
|
|
35
|
+
Authorization: `Bearer Token ${token}`,
|
|
36
|
+
},
|
|
37
|
+
})
|
|
38
|
+
.then((res) =>
|
|
39
|
+
pipe(
|
|
40
|
+
UserProfile.decode(res.data),
|
|
41
|
+
fold<t.Errors, UserProfile, UserProfile>(
|
|
42
|
+
() => {
|
|
43
|
+
throw new Error("Can't parse user profile");
|
|
44
|
+
},
|
|
45
|
+
(data: UserProfile) => data
|
|
46
|
+
)
|
|
47
|
+
)
|
|
48
|
+
);
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
export async function validateSessionAndGetProfile(
|
|
52
|
+
base = Utils.CONSTS.DEFAULT_BASE
|
|
53
|
+
): Promise<{
|
|
54
|
+
info: Communication.UserInfo;
|
|
55
|
+
profile: UserProfile | null;
|
|
56
|
+
} | null> {
|
|
57
|
+
const config = FileSystem.PrismicSharedConfigManager.get();
|
|
58
|
+
|
|
59
|
+
if (!config.cookies.length) return Promise.resolve(null); // default config, logged out.
|
|
60
|
+
if (base != config.base) return Promise.resolve(null); // not the same base so it doesn't
|
|
61
|
+
|
|
62
|
+
try {
|
|
63
|
+
const info = await Communication.validateSession(config.cookies, base);
|
|
64
|
+
const profile = await getUserProfile(config.cookies, base).catch(
|
|
65
|
+
() => null
|
|
66
|
+
);
|
|
67
|
+
if (profile?.shortId) {
|
|
68
|
+
FileSystem.PrismicSharedConfigManager.setProperties({
|
|
69
|
+
shortId: profile.shortId,
|
|
70
|
+
});
|
|
71
|
+
}
|
|
72
|
+
return { info, profile };
|
|
73
|
+
} catch {
|
|
74
|
+
return null;
|
|
75
|
+
}
|
|
76
|
+
}
|
package/src/utils/index.ts
CHANGED
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
import util from "util";
|
|
2
2
|
import { exec } from "child_process";
|
|
3
3
|
|
|
4
|
-
export function findArgument(args: string[], name: string): string |
|
|
4
|
+
export function findArgument(args: string[], name: string): string | undefined {
|
|
5
5
|
const flagIndex: number = args.indexOf(`--${name}`);
|
|
6
6
|
|
|
7
|
-
if (flagIndex === -1) return
|
|
8
|
-
if (args.length < flagIndex + 2) return
|
|
7
|
+
if (flagIndex === -1) return;
|
|
8
|
+
if (args.length < flagIndex + 2) return;
|
|
9
9
|
|
|
10
10
|
const flagValue = args[flagIndex + 1];
|
|
11
11
|
|
|
12
|
-
if (flagValue.startsWith("--")) return
|
|
12
|
+
if (flagValue.startsWith("--")) return;
|
|
13
13
|
return flagValue;
|
|
14
14
|
}
|
|
15
15
|
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* DUPLICATION
|
|
3
|
+
* this file is a duplication of ServerTracker in sm-ui
|
|
4
|
+
* this duplication has been done on purpose to simplify the merge if init becomes part of sm-ui
|
|
5
|
+
* or if we decide to share the tracker implementation from a lib, but it'll need some refactoring
|
|
6
|
+
* Duplication means no entanglement so don't merge this with the other implem and keep the structure.
|
|
7
|
+
*/
|
|
8
|
+
|
|
9
|
+
import ServerAnalytics from "analytics-node";
|
|
10
|
+
|
|
11
|
+
export enum EventType {
|
|
12
|
+
DownloadLibrary = "SliceMachine Download Library",
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
export class Tracker {
|
|
16
|
+
constructor(
|
|
17
|
+
readonly analytics: ServerAnalytics,
|
|
18
|
+
readonly repo: string,
|
|
19
|
+
readonly identifier: { userId: string } | { anonymousId: string },
|
|
20
|
+
readonly tracking = true
|
|
21
|
+
) {}
|
|
22
|
+
|
|
23
|
+
static build(
|
|
24
|
+
writeKey: string,
|
|
25
|
+
repo: string | undefined,
|
|
26
|
+
identifier: { userId: string } | { anonymousId: string },
|
|
27
|
+
tracking = true
|
|
28
|
+
): Tracker | undefined {
|
|
29
|
+
try {
|
|
30
|
+
if (!repo) return;
|
|
31
|
+
const analytics = new ServerAnalytics(writeKey);
|
|
32
|
+
return new Tracker(analytics, repo, identifier, tracking);
|
|
33
|
+
} catch (error) {
|
|
34
|
+
console.warn(error);
|
|
35
|
+
return;
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
private trackEvent(
|
|
40
|
+
eventType: EventType,
|
|
41
|
+
attributes: Record<string, unknown> = {}
|
|
42
|
+
): void {
|
|
43
|
+
this.tracking &&
|
|
44
|
+
this.analytics.track({
|
|
45
|
+
event: eventType,
|
|
46
|
+
...this.identifier,
|
|
47
|
+
properties: attributes,
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
Track = {
|
|
52
|
+
// not called, for demo only
|
|
53
|
+
downloadLibrary: (library: string): void => {
|
|
54
|
+
this.trackEvent(EventType.DownloadLibrary, { library });
|
|
55
|
+
},
|
|
56
|
+
};
|
|
57
|
+
}
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.configureProject = void 0;
|
|
4
|
-
const core_1 = require("@slicemachine/core");
|
|
5
|
-
function configureProject(cwd, base, repository, framework) {
|
|
6
|
-
const spinner = core_1.Utils.spinner(`Configuring your ${framework.value} & Prismic project...`);
|
|
7
|
-
spinner.start();
|
|
8
|
-
try {
|
|
9
|
-
const manifest = core_1.FileSystem.retrieveManifest(cwd);
|
|
10
|
-
const manifestUpdated = {
|
|
11
|
-
...(manifest.exists && manifest.content ? manifest.content : {}),
|
|
12
|
-
apiEndpoint: core_1.Utils.Endpoints.buildRepositoryEndpoint(base, repository),
|
|
13
|
-
libraries: ["@/slices"],
|
|
14
|
-
...(framework.manuallyAdded ? { framework: framework.value } : {}),
|
|
15
|
-
};
|
|
16
|
-
if (!manifest.exists)
|
|
17
|
-
core_1.FileSystem.createManifest(cwd, manifestUpdated);
|
|
18
|
-
else
|
|
19
|
-
core_1.FileSystem.patchManifest(cwd, manifestUpdated);
|
|
20
|
-
core_1.FileSystem.addJsonPackageSmScript(cwd);
|
|
21
|
-
spinner.succeed("Project configured! Ready to start");
|
|
22
|
-
}
|
|
23
|
-
catch {
|
|
24
|
-
spinner.fail("Failed to configure your Prismic Local Builder");
|
|
25
|
-
process.exit(-1);
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
|
-
exports.configureProject = configureProject;
|
|
29
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlndXJlLXByb2plY3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc3RlcHMvY29uZmlndXJlLXByb2plY3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsNkNBQXVEO0FBS3ZELFNBQWdCLGdCQUFnQixDQUM5QixHQUFXLEVBQ1gsSUFBVSxFQUNWLFVBQWtCLEVBQ2xCLFNBQTBCO0lBRTFCLE1BQU0sT0FBTyxHQUFHLFlBQUssQ0FBQyxPQUFPLENBQzNCLG9CQUFvQixTQUFTLENBQUMsS0FBSyx1QkFBdUIsQ0FDM0QsQ0FBQztJQUNGLE9BQU8sQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUVoQixJQUFJO1FBQ0YsTUFBTSxRQUFRLEdBQUcsaUJBQVUsQ0FBQyxnQkFBZ0IsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUVsRCxNQUFNLGVBQWUsR0FBd0I7WUFDM0MsR0FBRyxDQUFDLFFBQVEsQ0FBQyxNQUFNLElBQUksUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1lBQ2hFLFdBQVcsRUFBRSxZQUFLLENBQUMsU0FBUyxDQUFDLHVCQUF1QixDQUFDLElBQUksRUFBRSxVQUFVLENBQUM7WUFDdEUsU0FBUyxFQUFFLENBQUMsVUFBVSxDQUFDO1lBQ3ZCLEdBQUcsQ0FBQyxTQUFTLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxFQUFFLFNBQVMsRUFBRSxTQUFTLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztTQUNuRSxDQUFDO1FBRUYsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNO1lBQUUsaUJBQVUsQ0FBQyxjQUFjLENBQUMsR0FBRyxFQUFFLGVBQWUsQ0FBQyxDQUFDOztZQUNqRSxpQkFBVSxDQUFDLGFBQWEsQ0FBQyxHQUFHLEVBQUUsZUFBZSxDQUFDLENBQUM7UUFFcEQsaUJBQVUsQ0FBQyxzQkFBc0IsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUV2QyxPQUFPLENBQUMsT0FBTyxDQUFDLG9DQUFvQyxDQUFDLENBQUM7S0FDdkQ7SUFBQyxNQUFNO1FBQ04sT0FBTyxDQUFDLElBQUksQ0FBQyxnREFBZ0QsQ0FBQyxDQUFDO1FBQy9ELE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztLQUNsQjtBQUNILENBQUM7QUEvQkQsNENBK0JDIn0=
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.createRepository = void 0;
|
|
4
|
-
const core_1 = require("@slicemachine/core");
|
|
5
|
-
function createRepository(domain, framework, config) {
|
|
6
|
-
const spinner = core_1.Utils.spinner("Creating Prismic Repository");
|
|
7
|
-
spinner.start();
|
|
8
|
-
return core_1.Communication.createRepository(domain, config.cookies, framework, config.base)
|
|
9
|
-
.then((res) => {
|
|
10
|
-
const addressUrl = new URL(config.base);
|
|
11
|
-
addressUrl.hostname = `${res.data.domain || domain}.${addressUrl.hostname}`;
|
|
12
|
-
const address = addressUrl.toString();
|
|
13
|
-
spinner.succeed(`We created your new repository ${address}`);
|
|
14
|
-
})
|
|
15
|
-
.catch((error) => {
|
|
16
|
-
spinner.fail(`Error creating repository ${domain}`);
|
|
17
|
-
if (error.message) {
|
|
18
|
-
core_1.Utils.writeError(error.message);
|
|
19
|
-
}
|
|
20
|
-
core_1.Utils.writeError(`We failed to create you new prismic repository`);
|
|
21
|
-
console.log(`Run ${core_1.Utils.bold("npx slicemachine init")} again!`);
|
|
22
|
-
process.exit(-1);
|
|
23
|
-
});
|
|
24
|
-
}
|
|
25
|
-
exports.createRepository = createRepository;
|
|
26
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLXJlcG8uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc3RlcHMvY3JlYXRlLXJlcG8udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsNkNBQXNFO0FBRXRFLFNBQWdCLGdCQUFnQixDQUM5QixNQUFjLEVBQ2QsU0FBd0MsRUFDeEMsTUFBc0M7SUFFdEMsTUFBTSxPQUFPLEdBQUcsWUFBSyxDQUFDLE9BQU8sQ0FBQyw2QkFBNkIsQ0FBQyxDQUFDO0lBQzdELE9BQU8sQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUVoQixPQUFPLG9CQUFhLENBQUMsZ0JBQWdCLENBQ25DLE1BQU0sRUFDTixNQUFNLENBQUMsT0FBTyxFQUNkLFNBQVMsRUFDVCxNQUFNLENBQUMsSUFBSSxDQUNaO1NBQ0UsSUFBSSxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUU7UUFDWixNQUFNLFVBQVUsR0FBRyxJQUFJLEdBQUcsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDeEMsVUFBVSxDQUFDLFFBQVEsR0FBRyxHQUFHLEdBQUcsQ0FBQyxJQUFJLENBQUMsTUFBTSxJQUFJLE1BQU0sSUFDaEQsVUFBVSxDQUFDLFFBQ2IsRUFBRSxDQUFDO1FBQ0gsTUFBTSxPQUFPLEdBQUcsVUFBVSxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ3RDLE9BQU8sQ0FBQyxPQUFPLENBQUMsa0NBQWtDLE9BQU8sRUFBRSxDQUFDLENBQUM7SUFDL0QsQ0FBQyxDQUFDO1NBQ0QsS0FBSyxDQUFDLENBQUMsS0FBWSxFQUFFLEVBQUU7UUFDdEIsT0FBTyxDQUFDLElBQUksQ0FBQyw2QkFBNkIsTUFBTSxFQUFFLENBQUMsQ0FBQztRQUNwRCxJQUFJLEtBQUssQ0FBQyxPQUFPLEVBQUU7WUFDakIsWUFBSyxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7U0FDakM7UUFDRCxZQUFLLENBQUMsVUFBVSxDQUFDLGdEQUFnRCxDQUFDLENBQUM7UUFDbkUsT0FBTyxDQUFDLEdBQUcsQ0FBQyxPQUFPLFlBQUssQ0FBQyxJQUFJLENBQUMsdUJBQXVCLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDakUsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ25CLENBQUMsQ0FBQyxDQUFDO0FBQ1AsQ0FBQztBQS9CRCw0Q0ErQkMifQ==
|
|
@@ -1,86 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
|
|
5
|
-
}) : (function(o, m, k, k2) {
|
|
6
|
-
if (k2 === undefined) k2 = k;
|
|
7
|
-
o[k2] = m[k];
|
|
8
|
-
}));
|
|
9
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
10
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
11
|
-
}) : function(o, v) {
|
|
12
|
-
o["default"] = v;
|
|
13
|
-
});
|
|
14
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
15
|
-
if (mod && mod.__esModule) return mod;
|
|
16
|
-
var result = {};
|
|
17
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
18
|
-
__setModuleDefault(result, mod);
|
|
19
|
-
return result;
|
|
20
|
-
};
|
|
21
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
22
|
-
exports.detectFramework = exports.promptForFramework = void 0;
|
|
23
|
-
const core_1 = require("@slicemachine/core");
|
|
24
|
-
const inquirer = __importStar(require("inquirer"));
|
|
25
|
-
async function promptForFramework() {
|
|
26
|
-
const choices = core_1.Utils.Framework.SupportedFrameworks.map((framework) => {
|
|
27
|
-
return {
|
|
28
|
-
name: core_1.Utils.Framework.fancyName(framework),
|
|
29
|
-
value: framework,
|
|
30
|
-
};
|
|
31
|
-
});
|
|
32
|
-
return inquirer
|
|
33
|
-
.prompt([
|
|
34
|
-
{
|
|
35
|
-
name: "framework",
|
|
36
|
-
type: "list",
|
|
37
|
-
message: "Select a framework to use",
|
|
38
|
-
required: true,
|
|
39
|
-
choices,
|
|
40
|
-
},
|
|
41
|
-
])
|
|
42
|
-
.then((res) => {
|
|
43
|
-
return {
|
|
44
|
-
value: res.framework,
|
|
45
|
-
manuallyAdded: true,
|
|
46
|
-
};
|
|
47
|
-
});
|
|
48
|
-
}
|
|
49
|
-
exports.promptForFramework = promptForFramework;
|
|
50
|
-
async function detectFramework(cwd) {
|
|
51
|
-
const failMessage = `Please run ${core_1.Utils.bold("npx slicemachine init")} in a Nuxt or Next.js project`;
|
|
52
|
-
const spinner = core_1.Utils.spinner("Detecting framework to install correct dependencies");
|
|
53
|
-
spinner.start();
|
|
54
|
-
try {
|
|
55
|
-
const maybeFramework = core_1.Utils.Framework.detectFramework(cwd);
|
|
56
|
-
spinner.stop();
|
|
57
|
-
if (!maybeFramework ||
|
|
58
|
-
maybeFramework === core_1.Utils.Framework.FrameworkEnum.vanillajs) {
|
|
59
|
-
core_1.Utils.writeError("Framework not detected");
|
|
60
|
-
return await promptForFramework();
|
|
61
|
-
}
|
|
62
|
-
const nameToPrint = core_1.Utils.Framework.fancyName(maybeFramework);
|
|
63
|
-
if (core_1.Utils.Framework.isUnsupported(maybeFramework)) {
|
|
64
|
-
core_1.Utils.writeError(`${nameToPrint} is currently not supported`);
|
|
65
|
-
console.log(failMessage);
|
|
66
|
-
process.exit(1);
|
|
67
|
-
}
|
|
68
|
-
core_1.Utils.writeCheck(`${nameToPrint} detected`);
|
|
69
|
-
return {
|
|
70
|
-
value: maybeFramework,
|
|
71
|
-
manuallyAdded: false,
|
|
72
|
-
};
|
|
73
|
-
}
|
|
74
|
-
catch (error) {
|
|
75
|
-
spinner.fail("package.json not found");
|
|
76
|
-
if (error instanceof Error && error.message) {
|
|
77
|
-
core_1.Utils.writeError(error.message);
|
|
78
|
-
}
|
|
79
|
-
else {
|
|
80
|
-
console.log(failMessage);
|
|
81
|
-
}
|
|
82
|
-
process.exit(1);
|
|
83
|
-
}
|
|
84
|
-
}
|
|
85
|
-
exports.detectFramework = detectFramework;
|
|
86
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGV0ZWN0LWZyYW1ld29yay5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zdGVwcy9kZXRlY3QtZnJhbWV3b3JrLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSw2Q0FBMkM7QUFDM0MsbURBQXFDO0FBTzlCLEtBQUssVUFBVSxrQkFBa0I7SUFDdEMsTUFBTSxPQUFPLEdBQUcsWUFBSyxDQUFDLFNBQVMsQ0FBQyxtQkFBbUIsQ0FBQyxHQUFHLENBQUMsQ0FBQyxTQUFTLEVBQUUsRUFBRTtRQUNwRSxPQUFPO1lBQ0wsSUFBSSxFQUFFLFlBQUssQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQztZQUMxQyxLQUFLLEVBQUUsU0FBUztTQUNqQixDQUFDO0lBQ0osQ0FBQyxDQUFDLENBQUM7SUFFSCxPQUFPLFFBQVE7U0FDWixNQUFNLENBQStDO1FBQ3BEO1lBQ0UsSUFBSSxFQUFFLFdBQVc7WUFDakIsSUFBSSxFQUFFLE1BQU07WUFDWixPQUFPLEVBQUUsMkJBQTJCO1lBQ3BDLFFBQVEsRUFBRSxJQUFJO1lBQ2QsT0FBTztTQUNSO0tBQ0YsQ0FBQztTQUNELElBQUksQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFO1FBQ1osT0FBTztZQUNMLEtBQUssRUFBRSxHQUFHLENBQUMsU0FBUztZQUNwQixhQUFhLEVBQUUsSUFBSTtTQUNwQixDQUFDO0lBQ0osQ0FBQyxDQUFDLENBQUM7QUFDUCxDQUFDO0FBeEJELGdEQXdCQztBQUVNLEtBQUssVUFBVSxlQUFlLENBQUMsR0FBVztJQUMvQyxNQUFNLFdBQVcsR0FBRyxjQUFjLFlBQUssQ0FBQyxJQUFJLENBQzFDLHVCQUF1QixDQUN4QiwrQkFBK0IsQ0FBQztJQUVqQyxNQUFNLE9BQU8sR0FBRyxZQUFLLENBQUMsT0FBTyxDQUMzQixxREFBcUQsQ0FDdEQsQ0FBQztJQUVGLE9BQU8sQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUVoQixJQUFJO1FBQ0YsTUFBTSxjQUFjLEdBQUcsWUFBSyxDQUFDLFNBQVMsQ0FBQyxlQUFlLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDNUQsT0FBTyxDQUFDLElBQUksRUFBRSxDQUFDO1FBRWYsSUFDRSxDQUFDLGNBQWM7WUFDZixjQUFjLEtBQUssWUFBSyxDQUFDLFNBQVMsQ0FBQyxhQUFhLENBQUMsU0FBUyxFQUMxRDtZQUNBLFlBQUssQ0FBQyxVQUFVLENBQUMsd0JBQXdCLENBQUMsQ0FBQztZQUMzQyxPQUFPLE1BQU0sa0JBQWtCLEVBQUUsQ0FBQztTQUNuQztRQUVELE1BQU0sV0FBVyxHQUFHLFlBQUssQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBRTlELElBQUksWUFBSyxDQUFDLFNBQVMsQ0FBQyxhQUFhLENBQUMsY0FBYyxDQUFDLEVBQUU7WUFDakQsWUFBSyxDQUFDLFVBQVUsQ0FBQyxHQUFHLFdBQVcsNkJBQTZCLENBQUMsQ0FBQztZQUM5RCxPQUFPLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1lBQ3pCLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7U0FDakI7UUFFRCxZQUFLLENBQUMsVUFBVSxDQUFDLEdBQUcsV0FBVyxXQUFXLENBQUMsQ0FBQztRQUU1QyxPQUFPO1lBQ0wsS0FBSyxFQUFFLGNBQWM7WUFDckIsYUFBYSxFQUFFLEtBQUs7U0FDckIsQ0FBQztLQUNIO0lBQUMsT0FBTyxLQUFLLEVBQUU7UUFDZCxPQUFPLENBQUMsSUFBSSxDQUFDLHdCQUF3QixDQUFDLENBQUM7UUFFdkMsSUFBSSxLQUFLLFlBQVksS0FBSyxJQUFJLEtBQUssQ0FBQyxPQUFPLEVBQUU7WUFDM0MsWUFBSyxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7U0FDakM7YUFBTTtZQUNMLE9BQU8sQ0FBQyxHQUFHLENBQUMsV0FBVyxDQUFDLENBQUM7U0FDMUI7UUFFRCxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO0tBQ2pCO0FBQ0gsQ0FBQztBQWhERCwwQ0FnREMifQ==
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.displayFinalMessage = void 0;
|
|
4
|
-
const core_1 = require("@slicemachine/core");
|
|
5
|
-
function displayFinalMessage(cwd) {
|
|
6
|
-
const yarnLock = core_1.Utils.Files.exists(core_1.FileSystem.YarnLockPath(cwd));
|
|
7
|
-
const command = `${yarnLock ? "yarn" : "npm"} run ${core_1.Utils.CONSTS.SCRIPT_NAME}`;
|
|
8
|
-
console.log(`${core_1.Utils.white("■")} Run ${core_1.Utils.purple(command)} to now launch your Local Builder`);
|
|
9
|
-
}
|
|
10
|
-
exports.displayFinalMessage = displayFinalMessage;
|
|
11
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlzcGxheS1maW5hbC1tZXNzYWdlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3N0ZXBzL2Rpc3BsYXktZmluYWwtbWVzc2FnZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSw2Q0FBdUQ7QUFFdkQsU0FBZ0IsbUJBQW1CLENBQUMsR0FBVztJQUM3QyxNQUFNLFFBQVEsR0FBRyxZQUFLLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxpQkFBVSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQ2xFLE1BQU0sT0FBTyxHQUFHLEdBQUcsUUFBUSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEtBQUssUUFDMUMsWUFBSyxDQUFDLE1BQU0sQ0FBQyxXQUNmLEVBQUUsQ0FBQztJQUVILE9BQU8sQ0FBQyxHQUFHLENBQ1QsR0FBRyxZQUFLLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxRQUFRLFlBQUssQ0FBQyxNQUFNLENBQ3JDLE9BQU8sQ0FDUixtQ0FBbUMsQ0FDckMsQ0FBQztBQUNKLENBQUM7QUFYRCxrREFXQyJ9
|
package/build/steps/index.js
DELETED
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.displayFinalMessage = exports.configureProject = exports.loginOrBypass = exports.detectFramework = exports.createRepository = exports.maybeExistingRepo = exports.validatePkg = exports.installRequiredDependencies = void 0;
|
|
4
|
-
var install_required_dependencies_1 = require("./install-required-dependencies");
|
|
5
|
-
Object.defineProperty(exports, "installRequiredDependencies", { enumerable: true, get: function () { return install_required_dependencies_1.installRequiredDependencies; } });
|
|
6
|
-
var validate_pkg_1 = require("./validate-pkg");
|
|
7
|
-
Object.defineProperty(exports, "validatePkg", { enumerable: true, get: function () { return validate_pkg_1.validatePkg; } });
|
|
8
|
-
var maybe_existing_repo_1 = require("./maybe-existing-repo");
|
|
9
|
-
Object.defineProperty(exports, "maybeExistingRepo", { enumerable: true, get: function () { return maybe_existing_repo_1.maybeExistingRepo; } });
|
|
10
|
-
var create_repo_1 = require("./create-repo");
|
|
11
|
-
Object.defineProperty(exports, "createRepository", { enumerable: true, get: function () { return create_repo_1.createRepository; } });
|
|
12
|
-
var detect_framework_1 = require("./detect-framework");
|
|
13
|
-
Object.defineProperty(exports, "detectFramework", { enumerable: true, get: function () { return detect_framework_1.detectFramework; } });
|
|
14
|
-
var loginOrBypass_1 = require("./loginOrBypass");
|
|
15
|
-
Object.defineProperty(exports, "loginOrBypass", { enumerable: true, get: function () { return loginOrBypass_1.loginOrBypass; } });
|
|
16
|
-
var configure_project_1 = require("./configure-project");
|
|
17
|
-
Object.defineProperty(exports, "configureProject", { enumerable: true, get: function () { return configure_project_1.configureProject; } });
|
|
18
|
-
var display_final_message_1 = require("./display-final-message");
|
|
19
|
-
Object.defineProperty(exports, "displayFinalMessage", { enumerable: true, get: function () { return display_final_message_1.displayFinalMessage; } });
|
|
20
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc3RlcHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsaUZBQThFO0FBQXJFLDRJQUFBLDJCQUEyQixPQUFBO0FBQ3BDLCtDQUE2QztBQUFwQywyR0FBQSxXQUFXLE9BQUE7QUFDcEIsNkRBQTBEO0FBQWpELHdIQUFBLGlCQUFpQixPQUFBO0FBQzFCLDZDQUFpRDtBQUF4QywrR0FBQSxnQkFBZ0IsT0FBQTtBQUN6Qix1REFBcUQ7QUFBNUMsbUhBQUEsZUFBZSxPQUFBO0FBQ3hCLGlEQUFnRDtBQUF2Qyw4R0FBQSxhQUFhLE9BQUE7QUFDdEIseURBQXVEO0FBQTlDLHFIQUFBLGdCQUFnQixPQUFBO0FBQ3pCLGlFQUE4RDtBQUFyRCw0SEFBQSxtQkFBbUIsT0FBQSJ9
|
|
@@ -1,49 +0,0 @@
|
|
|
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.installRequiredDependencies = void 0;
|
|
7
|
-
const path_1 = __importDefault(require("path"));
|
|
8
|
-
const utils_1 = require("../utils");
|
|
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.Utils.Framework.FrameworkEnum.react:
|
|
14
|
-
return `${PRISMIC_REACT_PACKAGE_NAME} ${PRISMIC_CLIENT}`;
|
|
15
|
-
case core_1.Utils.Framework.FrameworkEnum.next:
|
|
16
|
-
return `${PRISMIC_REACT_PACKAGE_NAME} ${PRISMIC_CLIENT} ${NEXT_SLICEZONE}`;
|
|
17
|
-
case core_1.Utils.Framework.FrameworkEnum.svelte:
|
|
18
|
-
return `${PRISMIC_DOM_PACKAGE_NAME} ${PRISMIC_CLIENT}`;
|
|
19
|
-
case core_1.Utils.Framework.FrameworkEnum.nuxt:
|
|
20
|
-
return `${NUXT_PRISMIC} ${NUXT_SM} ${VUE_SLICEZONE}`;
|
|
21
|
-
case core_1.Utils.Framework.FrameworkEnum.vue:
|
|
22
|
-
return `${PRISMIC_VUE} ${PRISMIC_CLIENT} ${PRISMIC_DOM_PACKAGE_NAME} ${VUE_SLICEZONE}`;
|
|
23
|
-
default:
|
|
24
|
-
return "";
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
async function installRequiredDependencies(cwd, framework) {
|
|
28
|
-
const yarnLock = core_1.Utils.Files.exists(core_1.FileSystem.YarnLockPath(cwd));
|
|
29
|
-
const installDevDependencyCommand = yarnLock
|
|
30
|
-
? "yarn add -D"
|
|
31
|
-
: "npm install --save-dev";
|
|
32
|
-
const installDependencyCommand = yarnLock ? "yarn add" : "npm install --save";
|
|
33
|
-
const spinner = core_1.Utils.spinner("Downloading Prismic Visual Builder");
|
|
34
|
-
spinner.start();
|
|
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);
|
|
40
|
-
const isPackageInstalled = core_1.Utils.Files.exists(pathToPkg);
|
|
41
|
-
if (isPackageInstalled || !stderr.length) {
|
|
42
|
-
spinner.succeed("The Prismic Visual Builder was installed successfully");
|
|
43
|
-
return;
|
|
44
|
-
}
|
|
45
|
-
spinner.fail();
|
|
46
|
-
core_1.Utils.writeWarning(`could not install ${SM_PACKAGE_NAME}. Please do it manually!`);
|
|
47
|
-
}
|
|
48
|
-
exports.installRequiredDependencies = installRequiredDependencies;
|
|
49
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5zdGFsbC1yZXF1aXJlZC1kZXBlbmRlbmNpZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc3RlcHMvaW5zdGFsbC1yZXF1aXJlZC1kZXBlbmRlbmNpZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsZ0RBQXdCO0FBQ3hCLG9DQUF1QztBQUN2Qyw2Q0FBdUQ7QUFFdkQsTUFBTSxFQUNKLGNBQWMsRUFDZCx3QkFBd0IsRUFDeEIsMEJBQTBCLEVBQzFCLGNBQWMsRUFDZCxlQUFlLEVBQ2YsWUFBWSxFQUNaLE9BQU8sRUFDUCxhQUFhLEVBQ2IsV0FBVyxHQUNaLEdBQUcsWUFBSyxDQUFDLE1BQU0sQ0FBQztBQUVqQixTQUFTLGdCQUFnQixDQUFDLFNBQXdDO0lBQ2hFLFFBQVEsU0FBUyxFQUFFO1FBQ2pCLEtBQUssWUFBSyxDQUFDLFNBQVMsQ0FBQyxhQUFhLENBQUMsS0FBSztZQUN0QyxPQUFPLEdBQUcsMEJBQTBCLElBQUksY0FBYyxFQUFFLENBQUM7UUFDM0QsS0FBSyxZQUFLLENBQUMsU0FBUyxDQUFDLGFBQWEsQ0FBQyxJQUFJO1lBQ3JDLE9BQU8sR0FBRywwQkFBMEIsSUFBSSxjQUFjLElBQUksY0FBYyxFQUFFLENBQUM7UUFDN0UsS0FBSyxZQUFLLENBQUMsU0FBUyxDQUFDLGFBQWEsQ0FBQyxNQUFNO1lBQ3ZDLE9BQU8sR0FBRyx3QkFBd0IsSUFBSSxjQUFjLEVBQUUsQ0FBQztRQUN6RCxLQUFLLFlBQUssQ0FBQyxTQUFTLENBQUMsYUFBYSxDQUFDLElBQUk7WUFDckMsT0FBTyxHQUFHLFlBQVksSUFBSSxPQUFPLElBQUksYUFBYSxFQUFFLENBQUM7UUFDdkQsS0FBSyxZQUFLLENBQUMsU0FBUyxDQUFDLGFBQWEsQ0FBQyxHQUFHO1lBQ3BDLE9BQU8sR0FBRyxXQUFXLElBQUksY0FBYyxJQUFJLHdCQUF3QixJQUFJLGFBQWEsRUFBRSxDQUFDO1FBQ3pGO1lBQ0UsT0FBTyxFQUFFLENBQUM7S0FDYjtBQUNILENBQUM7QUFFTSxLQUFLLFVBQVUsMkJBQTJCLENBQy9DLEdBQVcsRUFDWCxTQUF3QztJQUV4QyxNQUFNLFFBQVEsR0FBRyxZQUFLLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxpQkFBVSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQ2xFLE1BQU0sMkJBQTJCLEdBQUcsUUFBUTtRQUMxQyxDQUFDLENBQUMsYUFBYTtRQUNmLENBQUMsQ0FBQyx3QkFBd0IsQ0FBQztJQUM3QixNQUFNLHdCQUF3QixHQUFHLFFBQVEsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxvQkFBb0IsQ0FBQztJQUU5RSxNQUFNLE9BQU8sR0FBRyxZQUFLLENBQUMsT0FBTyxDQUFDLG9DQUFvQyxDQUFDLENBQUM7SUFDcEUsT0FBTyxDQUFDLEtBQUssRUFBRSxDQUFDO0lBRWhCLE1BQU0sRUFBRSxNQUFNLEVBQUUsR0FBRyxNQUFNLElBQUEsbUJBQVcsRUFDbEMsR0FBRywyQkFBMkIsSUFBSSxlQUFlLEVBQUUsQ0FDcEQsQ0FBQztJQUVGLE1BQU0sSUFBSSxHQUFHLGdCQUFnQixDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ3pDLElBQUksSUFBSTtRQUFFLE1BQU0sSUFBQSxtQkFBVyxFQUFDLEdBQUcsd0JBQXdCLElBQUksSUFBSSxFQUFFLENBQUMsQ0FBQztJQUVuRSxNQUFNLFNBQVMsR0FBRyxjQUFJLENBQUMsSUFBSSxDQUN6QixpQkFBVSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFDcEMsZUFBZSxDQUNoQixDQUFDO0lBQ0YsTUFBTSxrQkFBa0IsR0FBRyxZQUFLLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUV6RCxJQUFJLGtCQUFrQixJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRTtRQUN4QyxPQUFPLENBQUMsT0FBTyxDQUFDLHVEQUF1RCxDQUFDLENBQUM7UUFDekUsT0FBTztLQUNSO0lBRUQsT0FBTyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ2YsWUFBSyxDQUFDLFlBQVksQ0FDaEIscUJBQXFCLGVBQWUsMEJBQTBCLENBQy9ELENBQUM7QUFDSixDQUFDO0FBbkNELGtFQW1DQyJ9
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.loginOrBypass = void 0;
|
|
4
|
-
const core_1 = require("@slicemachine/core");
|
|
5
|
-
async function loginOrBypass(base) {
|
|
6
|
-
const user = await core_1.Auth.validateSession(base);
|
|
7
|
-
if (user)
|
|
8
|
-
return core_1.Utils.writeCheck(`Logged in as ${core_1.Utils.bold(user.email)}`);
|
|
9
|
-
else
|
|
10
|
-
await core_1.Auth.login(base);
|
|
11
|
-
}
|
|
12
|
-
exports.loginOrBypass = loginOrBypass;
|
|
13
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9naW5PckJ5cGFzcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zdGVwcy9sb2dpbk9yQnlwYXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLDZDQUFpRDtBQUUxQyxLQUFLLFVBQVUsYUFBYSxDQUFDLElBQVk7SUFDOUMsTUFBTSxJQUFJLEdBQUcsTUFBTSxXQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzlDLElBQUksSUFBSTtRQUFFLE9BQU8sWUFBSyxDQUFDLFVBQVUsQ0FBQyxnQkFBZ0IsWUFBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDOztRQUN2RSxNQUFNLFdBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7QUFDOUIsQ0FBQztBQUpELHNDQUlDIn0=
|