create-atelier-ui-workspace 0.4.1 → 0.4.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +22 -0
- package/bin/index.js +62 -8
- package/bin/index.js.map +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,25 @@
|
|
|
1
|
+
## 0.4.3 (2026-10-12)
|
|
2
|
+
|
|
3
|
+
### 🩹 Fixes
|
|
4
|
+
|
|
5
|
+
- **create-atelier-ui-workspace:** never exit 0 without a workspace (R-186) ([80dae6b6](https://github.com/DominikPieper/atelier-ui/commit/80dae6b6))
|
|
6
|
+
|
|
7
|
+
### ❤️ Thank You
|
|
8
|
+
|
|
9
|
+
- Claude Opus 5.5
|
|
10
|
+
- Dominik Pieper @DominikPieper
|
|
11
|
+
|
|
12
|
+
## 0.4.2 (2026-10-10)
|
|
13
|
+
|
|
14
|
+
### 🚀 Features
|
|
15
|
+
|
|
16
|
+
- **create-workspace:** ship uianatomy-mcp and figma-workspace-architect skills (ADR-0167) ([b6ef45d2](https://github.com/DominikPieper/atelier-ui/commit/b6ef45d2))
|
|
17
|
+
|
|
18
|
+
### ❤️ Thank You
|
|
19
|
+
|
|
20
|
+
- Claude Opus 5.5
|
|
21
|
+
- Dominik Pieper @DominikPieper
|
|
22
|
+
|
|
1
23
|
## 0.4.1 (2026-10-09)
|
|
2
24
|
|
|
3
25
|
### 🚀 Features
|
package/bin/index.js
CHANGED
|
@@ -80,11 +80,41 @@ function extractFigmaFileKey(raw) {
|
|
|
80
80
|
`segment in a Figma URL after /design/, e.g. ` +
|
|
81
81
|
`figma.com/design/<key>/Some-File) or a full Figma URL containing one.`);
|
|
82
82
|
}
|
|
83
|
+
const USAGE = `Usage: create-atelier-ui-workspace [name] [options]
|
|
84
|
+
|
|
85
|
+
name Workspace directory name (prompted when omitted)
|
|
86
|
+
|
|
87
|
+
Options:
|
|
88
|
+
--framework <fw> angular | react | vue (prompted when omitted)
|
|
89
|
+
--figma, --no-figma Add / skip the Figma Desktop Bridge MCP (prompted when omitted)
|
|
90
|
+
--figma-file <key> Your Figma file key or full Figma URL (optional; only used with --figma)
|
|
91
|
+
--skills, --no-skills Install the Storybook agent skills (default: on)
|
|
92
|
+
-h, --help Show this help
|
|
93
|
+
|
|
94
|
+
Without a TTY (CI, closed stdin) nothing can be prompted: name, --framework and
|
|
95
|
+
--figma / --no-figma must all be given, otherwise the command exits with code 1.
|
|
96
|
+
`;
|
|
97
|
+
// enquirer rejects with an empty string on Ctrl-C; normalise that into a real
|
|
98
|
+
// Error so the top-level handler reports it and exits non-zero.
|
|
99
|
+
function ask(question) {
|
|
100
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
101
|
+
try {
|
|
102
|
+
return yield enquirer.prompt(question);
|
|
103
|
+
}
|
|
104
|
+
catch (err) {
|
|
105
|
+
throw new Error(err instanceof Error && err.message ? err.message : 'Prompt cancelled.');
|
|
106
|
+
}
|
|
107
|
+
});
|
|
108
|
+
}
|
|
83
109
|
function main() {
|
|
84
110
|
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
85
111
|
var _a, _b;
|
|
86
|
-
banner();
|
|
87
112
|
const argv = process.argv.slice(2);
|
|
113
|
+
if (argv.includes('--help') || argv.includes('-h')) {
|
|
114
|
+
console.log(USAGE);
|
|
115
|
+
return;
|
|
116
|
+
}
|
|
117
|
+
banner();
|
|
88
118
|
let name = argv.find((arg) => !arg.startsWith('-'));
|
|
89
119
|
let framework = parseFlag(argv, 'framework');
|
|
90
120
|
let figmaMcp = parseBooleanFlag(argv, 'figma');
|
|
@@ -103,8 +133,21 @@ function main() {
|
|
|
103
133
|
if (framework && !VALID_FRAMEWORKS.includes(framework)) {
|
|
104
134
|
throw new Error(`Invalid --framework value: "${framework}". Must be one of: ${VALID_FRAMEWORKS.join(', ')}.`);
|
|
105
135
|
}
|
|
136
|
+
// enquirer cannot read a non-TTY stdin: its prompt promise never settles, the
|
|
137
|
+
// event loop drains and node exits 0 with nothing created. Fail up front,
|
|
138
|
+
// naming every value that would have needed a prompt.
|
|
139
|
+
if (!process.stdin.isTTY) {
|
|
140
|
+
const missing = [
|
|
141
|
+
!name && '<name>',
|
|
142
|
+
!framework && '--framework <angular|react|vue>',
|
|
143
|
+
figmaMcp === undefined && '--figma or --no-figma',
|
|
144
|
+
].filter(Boolean);
|
|
145
|
+
if (missing.length) {
|
|
146
|
+
throw new Error(`Cannot prompt without a TTY. Missing: ${missing.join(', ')}. Run with --help for usage.`);
|
|
147
|
+
}
|
|
148
|
+
}
|
|
106
149
|
if (!name) {
|
|
107
|
-
const res = yield
|
|
150
|
+
const res = yield ask({
|
|
108
151
|
type: 'input',
|
|
109
152
|
name: 'name',
|
|
110
153
|
message: 'Workspace name:',
|
|
@@ -127,7 +170,7 @@ function main() {
|
|
|
127
170
|
}
|
|
128
171
|
}
|
|
129
172
|
if (!framework) {
|
|
130
|
-
const res = yield
|
|
173
|
+
const res = yield ask({
|
|
131
174
|
type: 'select',
|
|
132
175
|
name: 'framework',
|
|
133
176
|
message: 'Which framework do you want to use?',
|
|
@@ -140,7 +183,7 @@ function main() {
|
|
|
140
183
|
framework = res.framework;
|
|
141
184
|
}
|
|
142
185
|
if (figmaMcp === undefined) {
|
|
143
|
-
const res = yield
|
|
186
|
+
const res = yield ask({
|
|
144
187
|
type: 'confirm',
|
|
145
188
|
name: 'figma',
|
|
146
189
|
message: `Add the Figma Desktop Bridge MCP (figma-console-mcp)?\n Setup guide: ${FIGMA_SETUP_URL}`,
|
|
@@ -152,9 +195,9 @@ function main() {
|
|
|
152
195
|
// must not produce a question about a Figma file key at all. Skippable:
|
|
153
196
|
// an attendee who hasn't duplicated the file yet presses enter and gets
|
|
154
197
|
// today's <YOUR_FIGMA_FILE_KEY> placeholder behaviour, same as if this
|
|
155
|
-
// prompt didn't exist.
|
|
156
|
-
if (figmaMcp && figmaFile === undefined) {
|
|
157
|
-
const res = yield
|
|
198
|
+
// prompt didn't exist. Without a TTY it is skipped the same way.
|
|
199
|
+
if (figmaMcp && figmaFile === undefined && process.stdin.isTTY) {
|
|
200
|
+
const res = yield ask({
|
|
158
201
|
type: 'input',
|
|
159
202
|
name: 'figmaFile',
|
|
160
203
|
message: `Figma file key (optional) — the segment in a Figma URL after /design/,\n` +
|
|
@@ -197,7 +240,18 @@ function main() {
|
|
|
197
240
|
});
|
|
198
241
|
}
|
|
199
242
|
if (require.main === module) {
|
|
200
|
-
main()
|
|
243
|
+
// Safety net: if the event loop drains while main() is still pending (a
|
|
244
|
+
// prompt that never settles), that is a failure, not a success.
|
|
245
|
+
let finished = false;
|
|
246
|
+
process.on('exit', () => {
|
|
247
|
+
if (!finished)
|
|
248
|
+
process.exitCode = 1;
|
|
249
|
+
});
|
|
250
|
+
main()
|
|
251
|
+
.then(() => {
|
|
252
|
+
finished = true;
|
|
253
|
+
})
|
|
254
|
+
.catch((err) => {
|
|
201
255
|
const msg = err instanceof Error ? err.message : String(err);
|
|
202
256
|
console.error(`\n${c.red('✖')} ${msg}\n`);
|
|
203
257
|
process.exit(1);
|
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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"}
|