@contentful/experience-design-system-cli 2.37.1-dev-build-979aba4b.0 → 2.37.1-dev-build-200af99b.0
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/dist/app.js +19 -24
- package/dist/index.js +19 -25
- package/dist/package.json +1 -1
- package/dist/src/tui/home/home.theme.d.ts +1 -2
- package/legacy/dist/src/analyze/select/tui/components/ScrollablePanel.d.ts +2 -2
- package/legacy/dist/src/analyze/select/tui/theme.d.ts +1 -1
- package/legacy/dist/src/index.js +378 -389
- package/legacy/package.json +1 -1
- package/package.json +2 -2
package/dist/app.js
CHANGED
|
@@ -12,14 +12,11 @@ var BRAND = {
|
|
|
12
12
|
orange: "#E44F20",
|
|
13
13
|
yellow: "#FFDA00",
|
|
14
14
|
white: "#FFFFFF",
|
|
15
|
-
slate: "#
|
|
16
|
-
steel: "#C4D1DE"
|
|
17
|
-
mist: "#DDE5EC",
|
|
18
|
-
fog: "#EFF2F6"
|
|
15
|
+
slate: "#8B8D91",
|
|
16
|
+
steel: "#C4D1DE"
|
|
19
17
|
};
|
|
20
18
|
var PALETTE = {
|
|
21
19
|
accent: BRAND.blue,
|
|
22
|
-
heading: BRAND.white,
|
|
23
20
|
success: BRAND.green,
|
|
24
21
|
error: BRAND.orange,
|
|
25
22
|
warning: BRAND.yellow,
|
|
@@ -121,7 +118,7 @@ function useTerminalWidth() {
|
|
|
121
118
|
import { Text } from "ink";
|
|
122
119
|
import { jsx } from "react/jsx-runtime";
|
|
123
120
|
function ControlHints({ hints }) {
|
|
124
|
-
return /* @__PURE__ */ jsx(Text, {
|
|
121
|
+
return /* @__PURE__ */ jsx(Text, { children: hints.map((hint) => `[${hint.keys}] ${hint.label}`).join(" \xB7 ") });
|
|
125
122
|
}
|
|
126
123
|
|
|
127
124
|
// packages/experience-design-system-cli/src/tui/home/home.tsx
|
|
@@ -184,7 +181,7 @@ function HomeScreen({ onNavigate }) {
|
|
|
184
181
|
}
|
|
185
182
|
return /* @__PURE__ */ jsxs(Box, { flexDirection: "column", paddingX: 2, paddingY: 1, children: [
|
|
186
183
|
/* @__PURE__ */ jsxs(Box, { flexDirection: "column", alignItems: "center", children: [
|
|
187
|
-
/* @__PURE__ */ jsx2(Text2, { bold: true,
|
|
184
|
+
/* @__PURE__ */ jsx2(Text2, { bold: true, children: HEADING }),
|
|
188
185
|
/* @__PURE__ */ jsx2(Text2, { children: brandBar(HEADING.length).map((segment, i) => /* @__PURE__ */ jsx2(Text2, { color: segment.color, children: segment.text }, i)) }),
|
|
189
186
|
/* @__PURE__ */ jsx2(Text2, { color: PALETTE.muted, children: SUBTITLE }),
|
|
190
187
|
/* @__PURE__ */ jsxs(Text2, { color: PALETTE.muted, children: [
|
|
@@ -201,8 +198,7 @@ function HomeScreen({ onNavigate }) {
|
|
|
201
198
|
Text2,
|
|
202
199
|
{
|
|
203
200
|
bold: focused && !dimmed,
|
|
204
|
-
|
|
205
|
-
color: focused && !dimmed ? PALETTE.accent : display.color,
|
|
201
|
+
color: dimmed ? PALETTE.muted : focused ? PALETTE.accent : display.color,
|
|
206
202
|
children: [
|
|
207
203
|
focused ? `${FOCUS_MARKER} ` : " ",
|
|
208
204
|
display.label
|
|
@@ -235,14 +231,13 @@ function ImportScreen({ exitCode, onDone }) {
|
|
|
235
231
|
});
|
|
236
232
|
const isSuccess = exitCode === 0;
|
|
237
233
|
return /* @__PURE__ */ jsxs2(Box2, { flexDirection: "column", paddingX: 2, paddingY: 1, children: [
|
|
238
|
-
/* @__PURE__ */ jsx3(Text3, { bold: true, children: "Import" }),
|
|
239
234
|
/* @__PURE__ */ jsx3(Text3, { children: " " }),
|
|
240
235
|
isSuccess ? /* @__PURE__ */ jsx3(Text3, { color: PALETTE.success, children: "\u2713 Import complete" }) : /* @__PURE__ */ jsxs2(Text3, { color: PALETTE.error, children: [
|
|
241
236
|
"\u2717 Import failed: process exited with code ",
|
|
242
237
|
exitCode ?? "unknown"
|
|
243
238
|
] }),
|
|
244
239
|
/* @__PURE__ */ jsx3(Text3, { children: " " }),
|
|
245
|
-
/* @__PURE__ */ jsx3(Text3, {
|
|
240
|
+
/* @__PURE__ */ jsx3(Text3, { children: "[Enter] Back to Start" })
|
|
246
241
|
] });
|
|
247
242
|
}
|
|
248
243
|
|
|
@@ -293,16 +288,16 @@ function WelcomeScreen({ onContinue, onQuit, initialPath = "" }) {
|
|
|
293
288
|
};
|
|
294
289
|
return /* @__PURE__ */ jsxs3(Box3, { flexDirection: "column", gap: 1, paddingX: 2, paddingY: 1, children: [
|
|
295
290
|
/* @__PURE__ */ jsx4(Text4, { bold: true, color: PALETTE.success, children: "\u{1F44B} Hey! Let's import your design system into Contentful." }),
|
|
296
|
-
/* @__PURE__ */ jsx4(Text4, {
|
|
297
|
-
/* @__PURE__ */ jsxs3(Box3, { flexDirection: "column",
|
|
291
|
+
/* @__PURE__ */ jsx4(Text4, { color: PALETTE.muted, children: "I'll walk you through 5 steps to get your components into Contentful ExO." }),
|
|
292
|
+
/* @__PURE__ */ jsxs3(Box3, { flexDirection: "column", children: [
|
|
298
293
|
/* @__PURE__ */ jsx4(Text4, { dimColor: true, children: RULE }),
|
|
299
294
|
OVERVIEW.map((item) => /* @__PURE__ */ jsxs3(Box3, { gap: 1, children: [
|
|
300
295
|
/* @__PURE__ */ jsx4(Text4, { bold: true, children: item.label }),
|
|
301
|
-
/* @__PURE__ */ jsx4(Text4, {
|
|
296
|
+
/* @__PURE__ */ jsx4(Text4, { color: PALETTE.muted, children: item.description })
|
|
302
297
|
] }, item.label)),
|
|
303
298
|
/* @__PURE__ */ jsx4(Text4, { dimColor: true, children: RULE })
|
|
304
299
|
] }),
|
|
305
|
-
/* @__PURE__ */ jsxs3(Box3, { flexDirection: "column",
|
|
300
|
+
/* @__PURE__ */ jsxs3(Box3, { flexDirection: "column", gap: 1, children: [
|
|
306
301
|
/* @__PURE__ */ jsx4(Text4, { children: "Where is your component library?" }),
|
|
307
302
|
/* @__PURE__ */ jsxs3(Box3, { gap: 1, children: [
|
|
308
303
|
/* @__PURE__ */ jsx4(Text4, { color: PALETTE.accent, children: "?" }),
|
|
@@ -310,7 +305,7 @@ function WelcomeScreen({ onContinue, onQuit, initialPath = "" }) {
|
|
|
310
305
|
/* @__PURE__ */ jsx4(TextInput, { value: projectPath, onChange: setProjectPath, onSubmit: submit })
|
|
311
306
|
] })
|
|
312
307
|
] }),
|
|
313
|
-
/* @__PURE__ */ jsx4(Box3, {
|
|
308
|
+
/* @__PURE__ */ jsx4(Box3, { gap: 3, children: WELCOME_CONTROLS.map((control) => /* @__PURE__ */ jsxs3(Text4, { children: [
|
|
314
309
|
"[",
|
|
315
310
|
control.keys,
|
|
316
311
|
"] ",
|
|
@@ -408,7 +403,7 @@ function TokenInputScreen({ onConfirm, onBack, initialPath = "" }) {
|
|
|
408
403
|
};
|
|
409
404
|
return /* @__PURE__ */ jsxs4(Box4, { flexDirection: "column", gap: 1, paddingX: 2, paddingY: 1, children: [
|
|
410
405
|
/* @__PURE__ */ jsx5(Text5, { bold: true, children: "Design tokens" }),
|
|
411
|
-
/* @__PURE__ */ jsx5(Text5, {
|
|
406
|
+
/* @__PURE__ */ jsx5(Text5, { color: PALETTE.muted, children: "Point me to your raw token file (e.g. ~/design-tokens/tokens.json). You can use ~, relative, or absolute paths. Claude will map it to Design Token Group Format (DTCG)." }),
|
|
412
407
|
/* @__PURE__ */ jsxs4(Box4, { flexDirection: "column", children: [
|
|
413
408
|
/* @__PURE__ */ jsxs4(Box4, { gap: 1, children: [
|
|
414
409
|
/* @__PURE__ */ jsx5(Text5, { color: PALETTE.accent, children: "?" }),
|
|
@@ -420,13 +415,13 @@ function TokenInputScreen({ onConfirm, onBack, initialPath = "" }) {
|
|
|
420
415
|
"\u2717 ",
|
|
421
416
|
failure.error
|
|
422
417
|
] }),
|
|
423
|
-
failure.resolvedPath && /* @__PURE__ */ jsxs4(Text5, {
|
|
418
|
+
failure.resolvedPath && /* @__PURE__ */ jsxs4(Text5, { color: PALETTE.muted, children: [
|
|
424
419
|
" Resolved to: ",
|
|
425
420
|
failure.resolvedPath
|
|
426
421
|
] })
|
|
427
422
|
] })
|
|
428
423
|
] }),
|
|
429
|
-
/* @__PURE__ */ jsx5(Box4, { marginTop: 1, gap: 3, children: TOKEN_INPUT_CONTROLS.map((control) => /* @__PURE__ */ jsxs4(Text5, {
|
|
424
|
+
/* @__PURE__ */ jsx5(Box4, { marginTop: 1, gap: 3, children: TOKEN_INPUT_CONTROLS.map((control) => /* @__PURE__ */ jsxs4(Text5, { children: [
|
|
430
425
|
"[",
|
|
431
426
|
control.keys,
|
|
432
427
|
"] ",
|
|
@@ -1202,7 +1197,7 @@ function Section({ title, rows }) {
|
|
|
1202
1197
|
return /* @__PURE__ */ jsxs7(Box7, { flexDirection: "column", children: [
|
|
1203
1198
|
/* @__PURE__ */ jsx8(Text8, { bold: true, color: PALETTE.accent, children: title }),
|
|
1204
1199
|
rows.map((row) => /* @__PURE__ */ jsxs7(Box7, { gap: 1, children: [
|
|
1205
|
-
/* @__PURE__ */ jsx8(Box7, { width: 14, flexShrink: 0, children: /* @__PURE__ */ jsx8(Text8, {
|
|
1200
|
+
/* @__PURE__ */ jsx8(Box7, { width: 14, flexShrink: 0, children: /* @__PURE__ */ jsx8(Text8, { color: PALETTE.muted, children: row.label }) }),
|
|
1206
1201
|
/* @__PURE__ */ jsx8(Text8, { children: row.value })
|
|
1207
1202
|
] }, row.label))
|
|
1208
1203
|
] });
|
|
@@ -1232,7 +1227,7 @@ function HelpScreen({ onDone }) {
|
|
|
1232
1227
|
info ? /* @__PURE__ */ jsxs7(Fragment2, { children: [
|
|
1233
1228
|
/* @__PURE__ */ jsx8(Section, { title: "Where things are stored", rows: info.storage }),
|
|
1234
1229
|
/* @__PURE__ */ jsx8(Section, { title: "Troubleshooting", rows: info.troubleshooting }),
|
|
1235
|
-
/* @__PURE__ */ jsx8(Text8, {
|
|
1230
|
+
/* @__PURE__ */ jsx8(Text8, { color: PALETTE.muted, children: "Hit a problem? Turn on Debug Mode in Settings, reproduce it, then share the session folder above. The CMA token is redacted from those logs." })
|
|
1236
1231
|
] }) : /* @__PURE__ */ jsx8(Text8, { color: PALETTE.accent, children: "Loading..." }),
|
|
1237
1232
|
/* @__PURE__ */ jsx8(
|
|
1238
1233
|
ControlHints,
|
|
@@ -1474,7 +1469,7 @@ function ConfigurationScreen({ onDone }) {
|
|
|
1474
1469
|
onSubmit: () => setEditing(false),
|
|
1475
1470
|
mask: field === "cmaToken" ? "\u2022" : void 0
|
|
1476
1471
|
}
|
|
1477
|
-
) : /* @__PURE__ */ jsx10(Text10, { children: display || /* @__PURE__ */ jsx10(Text10, {
|
|
1472
|
+
) : /* @__PURE__ */ jsx10(Text10, { children: display || /* @__PURE__ */ jsx10(Text10, { color: PALETTE.muted, children: "(empty)" }) })
|
|
1478
1473
|
] }, field);
|
|
1479
1474
|
}) }),
|
|
1480
1475
|
notice && /* @__PURE__ */ jsxs9(Fragment3, { children: [
|
|
@@ -1567,8 +1562,8 @@ function OptInAnalyticsScreen({ onDone }) {
|
|
|
1567
1562
|
/* @__PURE__ */ jsx11(Text11, { bold: true, color: enabled ? PALETTE.success : PALETTE.muted, children: enabled ? "On" : "Off" })
|
|
1568
1563
|
] }),
|
|
1569
1564
|
/* @__PURE__ */ jsx11(Text11, { children: " " }),
|
|
1570
|
-
/* @__PURE__ */ jsx11(Text11, {
|
|
1571
|
-
/* @__PURE__ */ jsx11(Text11, {
|
|
1565
|
+
/* @__PURE__ */ jsx11(Text11, { color: PALETTE.muted, children: "Shares which CLI commands are used and where imports succeed or fail." }),
|
|
1566
|
+
/* @__PURE__ */ jsx11(Text11, { color: PALETTE.muted, children: "Never includes source code, file paths, credentials, or authored content." })
|
|
1572
1567
|
] }),
|
|
1573
1568
|
/* @__PURE__ */ jsx11(Text11, { children: " " }),
|
|
1574
1569
|
/* @__PURE__ */ jsx11(
|
package/dist/index.js
CHANGED
|
@@ -77,14 +77,11 @@ var init_home_theme = __esm({
|
|
|
77
77
|
orange: "#E44F20",
|
|
78
78
|
yellow: "#FFDA00",
|
|
79
79
|
white: "#FFFFFF",
|
|
80
|
-
slate: "#
|
|
81
|
-
steel: "#C4D1DE"
|
|
82
|
-
mist: "#DDE5EC",
|
|
83
|
-
fog: "#EFF2F6"
|
|
80
|
+
slate: "#8B8D91",
|
|
81
|
+
steel: "#C4D1DE"
|
|
84
82
|
};
|
|
85
83
|
PALETTE = {
|
|
86
84
|
accent: BRAND.blue,
|
|
87
|
-
heading: BRAND.white,
|
|
88
85
|
success: BRAND.green,
|
|
89
86
|
error: BRAND.orange,
|
|
90
87
|
warning: BRAND.yellow,
|
|
@@ -171,12 +168,11 @@ var init_use_terminal_width = __esm({
|
|
|
171
168
|
import { Text } from "ink";
|
|
172
169
|
import { jsx } from "react/jsx-runtime";
|
|
173
170
|
function ControlHints({ hints }) {
|
|
174
|
-
return /* @__PURE__ */ jsx(Text, {
|
|
171
|
+
return /* @__PURE__ */ jsx(Text, { children: hints.map((hint) => `[${hint.keys}] ${hint.label}`).join(" \xB7 ") });
|
|
175
172
|
}
|
|
176
173
|
var init_control_hints = __esm({
|
|
177
174
|
"packages/experience-design-system-cli/src/tui/control-hints.tsx"() {
|
|
178
175
|
"use strict";
|
|
179
|
-
init_home_theme();
|
|
180
176
|
}
|
|
181
177
|
});
|
|
182
178
|
|
|
@@ -232,7 +228,7 @@ function HomeScreen({ onNavigate }) {
|
|
|
232
228
|
}
|
|
233
229
|
return /* @__PURE__ */ jsxs(Box, { flexDirection: "column", paddingX: 2, paddingY: 1, children: [
|
|
234
230
|
/* @__PURE__ */ jsxs(Box, { flexDirection: "column", alignItems: "center", children: [
|
|
235
|
-
/* @__PURE__ */ jsx2(Text2, { bold: true,
|
|
231
|
+
/* @__PURE__ */ jsx2(Text2, { bold: true, children: HEADING }),
|
|
236
232
|
/* @__PURE__ */ jsx2(Text2, { children: brandBar(HEADING.length).map((segment, i) => /* @__PURE__ */ jsx2(Text2, { color: segment.color, children: segment.text }, i)) }),
|
|
237
233
|
/* @__PURE__ */ jsx2(Text2, { color: PALETTE.muted, children: SUBTITLE }),
|
|
238
234
|
/* @__PURE__ */ jsxs(Text2, { color: PALETTE.muted, children: [
|
|
@@ -249,8 +245,7 @@ function HomeScreen({ onNavigate }) {
|
|
|
249
245
|
Text2,
|
|
250
246
|
{
|
|
251
247
|
bold: focused && !dimmed,
|
|
252
|
-
|
|
253
|
-
color: focused && !dimmed ? PALETTE.accent : display.color,
|
|
248
|
+
color: dimmed ? PALETTE.muted : focused ? PALETTE.accent : display.color,
|
|
254
249
|
children: [
|
|
255
250
|
focused ? `${FOCUS_MARKER} ` : " ",
|
|
256
251
|
display.label
|
|
@@ -303,14 +298,13 @@ function ImportScreen({ exitCode, onDone }) {
|
|
|
303
298
|
});
|
|
304
299
|
const isSuccess = exitCode === 0;
|
|
305
300
|
return /* @__PURE__ */ jsxs2(Box2, { flexDirection: "column", paddingX: 2, paddingY: 1, children: [
|
|
306
|
-
/* @__PURE__ */ jsx3(Text3, { bold: true, children: "Import" }),
|
|
307
301
|
/* @__PURE__ */ jsx3(Text3, { children: " " }),
|
|
308
302
|
isSuccess ? /* @__PURE__ */ jsx3(Text3, { color: PALETTE.success, children: "\u2713 Import complete" }) : /* @__PURE__ */ jsxs2(Text3, { color: PALETTE.error, children: [
|
|
309
303
|
"\u2717 Import failed: process exited with code ",
|
|
310
304
|
exitCode ?? "unknown"
|
|
311
305
|
] }),
|
|
312
306
|
/* @__PURE__ */ jsx3(Text3, { children: " " }),
|
|
313
|
-
/* @__PURE__ */ jsx3(Text3, {
|
|
307
|
+
/* @__PURE__ */ jsx3(Text3, { children: "[Enter] Back to Start" })
|
|
314
308
|
] });
|
|
315
309
|
}
|
|
316
310
|
var init_PageContainer = __esm({
|
|
@@ -367,16 +361,16 @@ function WelcomeScreen({ onContinue, onQuit, initialPath = "" }) {
|
|
|
367
361
|
};
|
|
368
362
|
return /* @__PURE__ */ jsxs3(Box3, { flexDirection: "column", gap: 1, paddingX: 2, paddingY: 1, children: [
|
|
369
363
|
/* @__PURE__ */ jsx4(Text4, { bold: true, color: PALETTE.success, children: "\u{1F44B} Hey! Let's import your design system into Contentful." }),
|
|
370
|
-
/* @__PURE__ */ jsx4(Text4, {
|
|
371
|
-
/* @__PURE__ */ jsxs3(Box3, { flexDirection: "column",
|
|
364
|
+
/* @__PURE__ */ jsx4(Text4, { color: PALETTE.muted, children: "I'll walk you through 5 steps to get your components into Contentful ExO." }),
|
|
365
|
+
/* @__PURE__ */ jsxs3(Box3, { flexDirection: "column", children: [
|
|
372
366
|
/* @__PURE__ */ jsx4(Text4, { dimColor: true, children: RULE }),
|
|
373
367
|
OVERVIEW.map((item) => /* @__PURE__ */ jsxs3(Box3, { gap: 1, children: [
|
|
374
368
|
/* @__PURE__ */ jsx4(Text4, { bold: true, children: item.label }),
|
|
375
|
-
/* @__PURE__ */ jsx4(Text4, {
|
|
369
|
+
/* @__PURE__ */ jsx4(Text4, { color: PALETTE.muted, children: item.description })
|
|
376
370
|
] }, item.label)),
|
|
377
371
|
/* @__PURE__ */ jsx4(Text4, { dimColor: true, children: RULE })
|
|
378
372
|
] }),
|
|
379
|
-
/* @__PURE__ */ jsxs3(Box3, { flexDirection: "column",
|
|
373
|
+
/* @__PURE__ */ jsxs3(Box3, { flexDirection: "column", gap: 1, children: [
|
|
380
374
|
/* @__PURE__ */ jsx4(Text4, { children: "Where is your component library?" }),
|
|
381
375
|
/* @__PURE__ */ jsxs3(Box3, { gap: 1, children: [
|
|
382
376
|
/* @__PURE__ */ jsx4(Text4, { color: PALETTE.accent, children: "?" }),
|
|
@@ -384,7 +378,7 @@ function WelcomeScreen({ onContinue, onQuit, initialPath = "" }) {
|
|
|
384
378
|
/* @__PURE__ */ jsx4(TextInput, { value: projectPath, onChange: setProjectPath, onSubmit: submit })
|
|
385
379
|
] })
|
|
386
380
|
] }),
|
|
387
|
-
/* @__PURE__ */ jsx4(Box3, {
|
|
381
|
+
/* @__PURE__ */ jsx4(Box3, { gap: 3, children: WELCOME_CONTROLS.map((control) => /* @__PURE__ */ jsxs3(Text4, { children: [
|
|
388
382
|
"[",
|
|
389
383
|
control.keys,
|
|
390
384
|
"] ",
|
|
@@ -516,7 +510,7 @@ function TokenInputScreen({ onConfirm, onBack, initialPath = "" }) {
|
|
|
516
510
|
};
|
|
517
511
|
return /* @__PURE__ */ jsxs4(Box4, { flexDirection: "column", gap: 1, paddingX: 2, paddingY: 1, children: [
|
|
518
512
|
/* @__PURE__ */ jsx5(Text5, { bold: true, children: "Design tokens" }),
|
|
519
|
-
/* @__PURE__ */ jsx5(Text5, {
|
|
513
|
+
/* @__PURE__ */ jsx5(Text5, { color: PALETTE.muted, children: "Point me to your raw token file (e.g. ~/design-tokens/tokens.json). You can use ~, relative, or absolute paths. Claude will map it to Design Token Group Format (DTCG)." }),
|
|
520
514
|
/* @__PURE__ */ jsxs4(Box4, { flexDirection: "column", children: [
|
|
521
515
|
/* @__PURE__ */ jsxs4(Box4, { gap: 1, children: [
|
|
522
516
|
/* @__PURE__ */ jsx5(Text5, { color: PALETTE.accent, children: "?" }),
|
|
@@ -528,13 +522,13 @@ function TokenInputScreen({ onConfirm, onBack, initialPath = "" }) {
|
|
|
528
522
|
"\u2717 ",
|
|
529
523
|
failure.error
|
|
530
524
|
] }),
|
|
531
|
-
failure.resolvedPath && /* @__PURE__ */ jsxs4(Text5, {
|
|
525
|
+
failure.resolvedPath && /* @__PURE__ */ jsxs4(Text5, { color: PALETTE.muted, children: [
|
|
532
526
|
" Resolved to: ",
|
|
533
527
|
failure.resolvedPath
|
|
534
528
|
] })
|
|
535
529
|
] })
|
|
536
530
|
] }),
|
|
537
|
-
/* @__PURE__ */ jsx5(Box4, { marginTop: 1, gap: 3, children: TOKEN_INPUT_CONTROLS.map((control) => /* @__PURE__ */ jsxs4(Text5, {
|
|
531
|
+
/* @__PURE__ */ jsx5(Box4, { marginTop: 1, gap: 3, children: TOKEN_INPUT_CONTROLS.map((control) => /* @__PURE__ */ jsxs4(Text5, { children: [
|
|
538
532
|
"[",
|
|
539
533
|
control.keys,
|
|
540
534
|
"] ",
|
|
@@ -1400,7 +1394,7 @@ function Section({ title, rows }) {
|
|
|
1400
1394
|
return /* @__PURE__ */ jsxs7(Box7, { flexDirection: "column", children: [
|
|
1401
1395
|
/* @__PURE__ */ jsx8(Text8, { bold: true, color: PALETTE.accent, children: title }),
|
|
1402
1396
|
rows.map((row) => /* @__PURE__ */ jsxs7(Box7, { gap: 1, children: [
|
|
1403
|
-
/* @__PURE__ */ jsx8(Box7, { width: 14, flexShrink: 0, children: /* @__PURE__ */ jsx8(Text8, {
|
|
1397
|
+
/* @__PURE__ */ jsx8(Box7, { width: 14, flexShrink: 0, children: /* @__PURE__ */ jsx8(Text8, { color: PALETTE.muted, children: row.label }) }),
|
|
1404
1398
|
/* @__PURE__ */ jsx8(Text8, { children: row.value })
|
|
1405
1399
|
] }, row.label))
|
|
1406
1400
|
] });
|
|
@@ -1430,7 +1424,7 @@ function HelpScreen({ onDone }) {
|
|
|
1430
1424
|
info ? /* @__PURE__ */ jsxs7(Fragment2, { children: [
|
|
1431
1425
|
/* @__PURE__ */ jsx8(Section, { title: "Where things are stored", rows: info.storage }),
|
|
1432
1426
|
/* @__PURE__ */ jsx8(Section, { title: "Troubleshooting", rows: info.troubleshooting }),
|
|
1433
|
-
/* @__PURE__ */ jsx8(Text8, {
|
|
1427
|
+
/* @__PURE__ */ jsx8(Text8, { color: PALETTE.muted, children: "Hit a problem? Turn on Debug Mode in Settings, reproduce it, then share the session folder above. The CMA token is redacted from those logs." })
|
|
1434
1428
|
] }) : /* @__PURE__ */ jsx8(Text8, { color: PALETTE.accent, children: "Loading..." }),
|
|
1435
1429
|
/* @__PURE__ */ jsx8(
|
|
1436
1430
|
ControlHints,
|
|
@@ -1682,7 +1676,7 @@ function ConfigurationScreen({ onDone }) {
|
|
|
1682
1676
|
onSubmit: () => setEditing(false),
|
|
1683
1677
|
mask: field === "cmaToken" ? "\u2022" : void 0
|
|
1684
1678
|
}
|
|
1685
|
-
) : /* @__PURE__ */ jsx10(Text10, { children: display || /* @__PURE__ */ jsx10(Text10, {
|
|
1679
|
+
) : /* @__PURE__ */ jsx10(Text10, { children: display || /* @__PURE__ */ jsx10(Text10, { color: PALETTE.muted, children: "(empty)" }) })
|
|
1686
1680
|
] }, field);
|
|
1687
1681
|
}) }),
|
|
1688
1682
|
notice && /* @__PURE__ */ jsxs9(Fragment3, { children: [
|
|
@@ -1805,8 +1799,8 @@ function OptInAnalyticsScreen({ onDone }) {
|
|
|
1805
1799
|
/* @__PURE__ */ jsx11(Text11, { bold: true, color: enabled ? PALETTE.success : PALETTE.muted, children: enabled ? "On" : "Off" })
|
|
1806
1800
|
] }),
|
|
1807
1801
|
/* @__PURE__ */ jsx11(Text11, { children: " " }),
|
|
1808
|
-
/* @__PURE__ */ jsx11(Text11, {
|
|
1809
|
-
/* @__PURE__ */ jsx11(Text11, {
|
|
1802
|
+
/* @__PURE__ */ jsx11(Text11, { color: PALETTE.muted, children: "Shares which CLI commands are used and where imports succeed or fail." }),
|
|
1803
|
+
/* @__PURE__ */ jsx11(Text11, { color: PALETTE.muted, children: "Never includes source code, file paths, credentials, or authored content." })
|
|
1810
1804
|
] }),
|
|
1811
1805
|
/* @__PURE__ */ jsx11(Text11, { children: " " }),
|
|
1812
1806
|
/* @__PURE__ */ jsx11(
|
package/dist/package.json
CHANGED
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
export declare const PALETTE: {
|
|
2
2
|
readonly accent: "#1773EB";
|
|
3
|
-
readonly heading: "#FFFFFF";
|
|
4
3
|
readonly success: "#00C459";
|
|
5
4
|
readonly error: "#E44F20";
|
|
6
5
|
readonly warning: "#FFDA00";
|
|
7
|
-
readonly muted: "#
|
|
6
|
+
readonly muted: "#8B8D91";
|
|
8
7
|
readonly border: "#C4D1DE";
|
|
9
8
|
};
|
|
10
9
|
export declare function brandBar(width: number, ramp?: readonly string[]): {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
type ScrollablePanelProps = {
|
|
3
|
-
|
|
3
|
+
title: string;
|
|
4
4
|
width: number;
|
|
5
5
|
height: number;
|
|
6
6
|
active: boolean;
|
|
@@ -10,5 +10,5 @@ type ScrollablePanelProps = {
|
|
|
10
10
|
borderColor?: string;
|
|
11
11
|
children: React.ReactNode;
|
|
12
12
|
};
|
|
13
|
-
export declare function ScrollablePanel({
|
|
13
|
+
export declare function ScrollablePanel({ title, width, height, active, totalLines, visibleStart, visibleEnd, borderColor, children, }: ScrollablePanelProps): React.ReactElement;
|
|
14
14
|
export {};
|
|
@@ -7,7 +7,7 @@ export declare const PALETTE: {
|
|
|
7
7
|
readonly warning: "#FFDA00";
|
|
8
8
|
readonly fg: "#000000";
|
|
9
9
|
readonly inverse: "#FFFFFF";
|
|
10
|
-
readonly muted: "#
|
|
10
|
+
readonly muted: "#8B8D91";
|
|
11
11
|
readonly border: "#C4D1DE";
|
|
12
12
|
readonly subtle: "#DDE5EC";
|
|
13
13
|
readonly bg: "#EFF2F6";
|