create-atelier-ui-workspace 0.0.11 → 0.0.12
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/bin/index.d.ts +1 -1
- package/bin/index.js +77 -16
- package/bin/index.js.map +1 -1
- package/package.json +3 -3
package/bin/index.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
export
|
|
2
|
+
export declare function main(): Promise<void>;
|
package/bin/index.js
CHANGED
|
@@ -1,13 +1,50 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
"use strict";
|
|
3
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.main = main;
|
|
4
5
|
const tslib_1 = require("tslib");
|
|
5
6
|
const create_nx_workspace_1 = require("create-nx-workspace");
|
|
6
|
-
// eslint-disable-next-line @typescript-eslint/no-var-requires
|
|
7
7
|
const enquirer = require('enquirer');
|
|
8
|
+
const VALID_FRAMEWORKS = ['angular', 'react', 'vue'];
|
|
9
|
+
const FIGMA_SETUP_URL = 'https://atelier.pieper.io/figma-token';
|
|
10
|
+
function parseFlag(args, name) {
|
|
11
|
+
const eqPrefix = `--${name}=`;
|
|
12
|
+
const withEq = args.find((a) => a.startsWith(eqPrefix));
|
|
13
|
+
if (withEq)
|
|
14
|
+
return withEq.slice(eqPrefix.length);
|
|
15
|
+
const idx = args.indexOf(`--${name}`);
|
|
16
|
+
if (idx >= 0) {
|
|
17
|
+
const next = args[idx + 1];
|
|
18
|
+
if (next && !next.startsWith('-'))
|
|
19
|
+
return next;
|
|
20
|
+
}
|
|
21
|
+
return undefined;
|
|
22
|
+
}
|
|
23
|
+
function parseBooleanFlag(args, name) {
|
|
24
|
+
// --name / --name=true / --name true → true
|
|
25
|
+
// --no-name / --name=false / --name false → false
|
|
26
|
+
if (args.includes(`--no-${name}`))
|
|
27
|
+
return false;
|
|
28
|
+
const raw = parseFlag(args, name);
|
|
29
|
+
if (raw === undefined) {
|
|
30
|
+
return args.includes(`--${name}`) ? true : undefined;
|
|
31
|
+
}
|
|
32
|
+
if (raw === 'true')
|
|
33
|
+
return true;
|
|
34
|
+
if (raw === 'false')
|
|
35
|
+
return false;
|
|
36
|
+
throw new Error(`Invalid --${name} value: "${raw}". Must be "true" or "false".`);
|
|
37
|
+
}
|
|
8
38
|
function main() {
|
|
9
39
|
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
10
|
-
|
|
40
|
+
var _a;
|
|
41
|
+
const argv = process.argv.slice(2);
|
|
42
|
+
let name = argv.find((arg) => !arg.startsWith('-'));
|
|
43
|
+
let framework = parseFlag(argv, 'framework');
|
|
44
|
+
let figmaMcp = parseBooleanFlag(argv, 'figma');
|
|
45
|
+
if (framework && !VALID_FRAMEWORKS.includes(framework)) {
|
|
46
|
+
throw new Error(`Invalid --framework value: "${framework}". Must be one of: ${VALID_FRAMEWORKS.join(', ')}.`);
|
|
47
|
+
}
|
|
11
48
|
if (!name) {
|
|
12
49
|
const res = yield enquirer.prompt({
|
|
13
50
|
type: 'input',
|
|
@@ -20,32 +57,56 @@ function main() {
|
|
|
20
57
|
if (!name) {
|
|
21
58
|
throw new Error('Please provide a name for the workspace');
|
|
22
59
|
}
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
60
|
+
if (!framework) {
|
|
61
|
+
const res = yield enquirer.prompt({
|
|
62
|
+
type: 'select',
|
|
63
|
+
name: 'framework',
|
|
64
|
+
message: 'Which framework do you want to use?',
|
|
65
|
+
choices: [
|
|
66
|
+
{ name: 'angular', message: 'Angular' },
|
|
67
|
+
{ name: 'react', message: 'React' },
|
|
68
|
+
{ name: 'vue', message: 'Vue' },
|
|
69
|
+
],
|
|
70
|
+
});
|
|
71
|
+
framework = res.framework;
|
|
72
|
+
}
|
|
73
|
+
if (figmaMcp === undefined) {
|
|
74
|
+
const res = yield enquirer.prompt({
|
|
75
|
+
type: 'confirm',
|
|
76
|
+
name: 'figma',
|
|
77
|
+
message: `Add the Figma Desktop Bridge MCP (figma-console-mcp)?\n Setup guide: ${FIGMA_SETUP_URL}`,
|
|
78
|
+
initial: true,
|
|
79
|
+
});
|
|
80
|
+
figmaMcp = res.figma;
|
|
81
|
+
}
|
|
33
82
|
console.log(`\nScaffolding Atelier UI workshop: ${name} (${framework})\n`);
|
|
34
|
-
// eslint-disable-next-line @typescript-eslint/no-var-requires
|
|
35
83
|
const presetVersion = require('../package.json').version;
|
|
36
|
-
|
|
84
|
+
// ATELIER_PRESET_SPEC overrides the published preset — used by the e2e test
|
|
85
|
+
// to install the locally-packed tarball instead of fetching from npm.
|
|
86
|
+
const presetSpec = (_a = process.env.ATELIER_PRESET_SPEC) !== null && _a !== void 0 ? _a : `@atelier-ui/create-workspace@${presetVersion}`;
|
|
87
|
+
const { directory } = yield (0, create_nx_workspace_1.createWorkspace)(presetSpec, {
|
|
37
88
|
name,
|
|
38
89
|
nxCloud: 'skip',
|
|
39
90
|
packageManager: 'npm',
|
|
40
91
|
frameworks: framework,
|
|
92
|
+
figmaMcp,
|
|
41
93
|
});
|
|
42
94
|
const appName = `workshop-${framework}`;
|
|
43
95
|
console.log(`\n✓ Workspace created at: ${directory}`);
|
|
44
96
|
console.log(`\nGet started:\n`);
|
|
45
97
|
console.log(` cd ${directory}`);
|
|
46
98
|
console.log(` npx nx serve ${appName}`);
|
|
47
|
-
console.log(`\nApp scaffolded: ${appName}
|
|
99
|
+
console.log(`\nApp scaffolded: ${appName}`);
|
|
100
|
+
if (figmaMcp) {
|
|
101
|
+
console.log(`\nFigma MCP enabled — install the Desktop Bridge plugin:`);
|
|
102
|
+
console.log(` ${FIGMA_SETUP_URL}\n`);
|
|
103
|
+
}
|
|
104
|
+
else {
|
|
105
|
+
console.log('');
|
|
106
|
+
}
|
|
48
107
|
});
|
|
49
108
|
}
|
|
50
|
-
main
|
|
109
|
+
if (require.main === module) {
|
|
110
|
+
main();
|
|
111
|
+
}
|
|
51
112
|
//# sourceMappingURL=index.js.map
|
package/bin/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../libs/create-atelier-ui-workspace/bin/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../libs/create-atelier-ui-workspace/bin/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "create-atelier-ui-workspace",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.12",
|
|
4
4
|
"description": "Create an Atelier UI Angular workshop workspace in one command",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"nx",
|
|
@@ -19,7 +19,7 @@
|
|
|
19
19
|
"type": "commonjs",
|
|
20
20
|
"main": "./bin/index.js",
|
|
21
21
|
"dependencies": {
|
|
22
|
-
"create-nx-workspace": "22.6.
|
|
22
|
+
"create-nx-workspace": "22.6.5",
|
|
23
23
|
"enquirer": "^2.3.6",
|
|
24
24
|
"tslib": "^2.3.0"
|
|
25
25
|
},
|
|
@@ -27,4 +27,4 @@
|
|
|
27
27
|
"create-atelier-ui-workspace": "./bin/index.js"
|
|
28
28
|
},
|
|
29
29
|
"types": "./bin/index.d.ts"
|
|
30
|
-
}
|
|
30
|
+
}
|