@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/legacy/dist/src/index.js
CHANGED
|
@@ -1560,6 +1560,39 @@ var init_agent_output = __esm({
|
|
|
1560
1560
|
}
|
|
1561
1561
|
});
|
|
1562
1562
|
|
|
1563
|
+
// packages/experience-design-system-cli-legacy/src/analyze/select/tui/theme.ts
|
|
1564
|
+
import { extendTheme, defaultTheme } from "@inkjs/ui";
|
|
1565
|
+
var PALETTE, INK_UI_THEME;
|
|
1566
|
+
var init_theme = __esm({
|
|
1567
|
+
"packages/experience-design-system-cli-legacy/src/analyze/select/tui/theme.ts"() {
|
|
1568
|
+
"use strict";
|
|
1569
|
+
PALETTE = {
|
|
1570
|
+
info: "#1773EB",
|
|
1571
|
+
link: "#58A6FF",
|
|
1572
|
+
success: "#00C459",
|
|
1573
|
+
error: "#E44F20",
|
|
1574
|
+
warning: "#FFDA00",
|
|
1575
|
+
fg: "#000000",
|
|
1576
|
+
inverse: "#FFFFFF",
|
|
1577
|
+
muted: "#8B8D91",
|
|
1578
|
+
border: "#C4D1DE",
|
|
1579
|
+
subtle: "#DDE5EC",
|
|
1580
|
+
bg: "#EFF2F6"
|
|
1581
|
+
};
|
|
1582
|
+
INK_UI_THEME = extendTheme(defaultTheme, {
|
|
1583
|
+
components: {
|
|
1584
|
+
ProgressBar: {
|
|
1585
|
+
styles: {
|
|
1586
|
+
completed: () => ({
|
|
1587
|
+
color: "blue"
|
|
1588
|
+
})
|
|
1589
|
+
}
|
|
1590
|
+
}
|
|
1591
|
+
}
|
|
1592
|
+
});
|
|
1593
|
+
}
|
|
1594
|
+
});
|
|
1595
|
+
|
|
1563
1596
|
// packages/experience-design-system-cli-legacy/src/tui/CommandCompletionView.tsx
|
|
1564
1597
|
import { Box, Text as Text2 } from "ink";
|
|
1565
1598
|
import { jsx as jsx2, jsxs } from "react/jsx-runtime";
|
|
@@ -1576,16 +1609,16 @@ function CommandCompletionView({
|
|
|
1576
1609
|
" complete"
|
|
1577
1610
|
] }),
|
|
1578
1611
|
/* @__PURE__ */ jsx2(Box, { flexDirection: "column", marginTop: 1, children: rows.map((row) => /* @__PURE__ */ jsxs(Text2, { children: [
|
|
1579
|
-
/* @__PURE__ */ jsxs(Text2, {
|
|
1612
|
+
/* @__PURE__ */ jsxs(Text2, { color: PALETTE.muted, children: [
|
|
1580
1613
|
row.label,
|
|
1581
1614
|
" "
|
|
1582
1615
|
] }),
|
|
1583
1616
|
/* @__PURE__ */ jsx2(Text2, { children: row.value })
|
|
1584
1617
|
] }, row.label)) }),
|
|
1585
1618
|
/* @__PURE__ */ jsxs(Box, { marginTop: 1, children: [
|
|
1586
|
-
/* @__PURE__ */ jsx2(Text2, {
|
|
1619
|
+
/* @__PURE__ */ jsx2(Text2, { color: PALETTE.muted, children: "Run " }),
|
|
1587
1620
|
/* @__PURE__ */ jsx2(Text2, { children: command }),
|
|
1588
|
-
/* @__PURE__ */ jsxs(Text2, {
|
|
1621
|
+
/* @__PURE__ */ jsxs(Text2, { color: PALETTE.muted, children: [
|
|
1589
1622
|
" ",
|
|
1590
1623
|
instruction
|
|
1591
1624
|
] })
|
|
@@ -1595,6 +1628,7 @@ function CommandCompletionView({
|
|
|
1595
1628
|
var init_CommandCompletionView = __esm({
|
|
1596
1629
|
"packages/experience-design-system-cli-legacy/src/tui/CommandCompletionView.tsx"() {
|
|
1597
1630
|
"use strict";
|
|
1631
|
+
init_theme();
|
|
1598
1632
|
}
|
|
1599
1633
|
});
|
|
1600
1634
|
|
|
@@ -7490,7 +7524,7 @@ function ServerPreviewView({ preview, spaceId, environmentId }) {
|
|
|
7490
7524
|
components.removed.length,
|
|
7491
7525
|
" components to skip"
|
|
7492
7526
|
] }),
|
|
7493
|
-
/* @__PURE__ */ jsxs2(Text3, {
|
|
7527
|
+
/* @__PURE__ */ jsxs2(Text3, { color: PALETTE.muted, children: [
|
|
7494
7528
|
" \xB7 ",
|
|
7495
7529
|
components.unchanged.length,
|
|
7496
7530
|
" components unchanged"
|
|
@@ -7528,7 +7562,7 @@ function ServerPreviewView({ preview, spaceId, environmentId }) {
|
|
|
7528
7562
|
tokens.removed.length,
|
|
7529
7563
|
" to skip"
|
|
7530
7564
|
] }),
|
|
7531
|
-
/* @__PURE__ */ jsxs2(Text3, {
|
|
7565
|
+
/* @__PURE__ */ jsxs2(Text3, { color: PALETTE.muted, children: [
|
|
7532
7566
|
" \xB7 ",
|
|
7533
7567
|
tokens.unchanged.length,
|
|
7534
7568
|
" unchanged"
|
|
@@ -7542,12 +7576,13 @@ function ServerPreviewView({ preview, spaceId, environmentId }) {
|
|
|
7542
7576
|
] }, i)),
|
|
7543
7577
|
/* @__PURE__ */ jsx4(Text3, { children: " " })
|
|
7544
7578
|
] }),
|
|
7545
|
-
/* @__PURE__ */ jsx4(Text3, {
|
|
7579
|
+
/* @__PURE__ */ jsx4(Text3, { color: PALETTE.muted, children: " Press Q to exit." })
|
|
7546
7580
|
] });
|
|
7547
7581
|
}
|
|
7548
7582
|
var init_ServerPreviewView = __esm({
|
|
7549
7583
|
"packages/experience-design-system-cli-legacy/src/apply/tui/ServerPreviewView.tsx"() {
|
|
7550
7584
|
"use strict";
|
|
7585
|
+
init_theme();
|
|
7551
7586
|
}
|
|
7552
7587
|
});
|
|
7553
7588
|
|
|
@@ -7632,7 +7667,7 @@ function ServerApplyProgress({
|
|
|
7632
7667
|
error
|
|
7633
7668
|
] }),
|
|
7634
7669
|
/* @__PURE__ */ jsx5(Text4, { children: " " }),
|
|
7635
|
-
/* @__PURE__ */ jsx5(Text4, {
|
|
7670
|
+
/* @__PURE__ */ jsx5(Text4, { color: PALETTE.muted, children: " Press Q to exit." })
|
|
7636
7671
|
] })
|
|
7637
7672
|
] });
|
|
7638
7673
|
}
|
|
@@ -7661,7 +7696,7 @@ function ServerApplyDone({ operation, spaceId, environmentId, host }) {
|
|
|
7661
7696
|
operation.summary.failed,
|
|
7662
7697
|
" failed"
|
|
7663
7698
|
] }),
|
|
7664
|
-
operation.summary.failed === 0 && /* @__PURE__ */ jsx5(Text4, {
|
|
7699
|
+
operation.summary.failed === 0 && /* @__PURE__ */ jsx5(Text4, { color: PALETTE.muted, children: " All entities imported successfully." }),
|
|
7665
7700
|
failures.length > 0 && /* @__PURE__ */ jsxs3(Box3, { flexDirection: "column", children: [
|
|
7666
7701
|
/* @__PURE__ */ jsx5(Text4, { children: " " }),
|
|
7667
7702
|
/* @__PURE__ */ jsx5(Text4, { bold: true, children: " Failures:" }),
|
|
@@ -7673,7 +7708,7 @@ function ServerApplyDone({ operation, spaceId, environmentId, host }) {
|
|
|
7673
7708
|
": ",
|
|
7674
7709
|
item.id
|
|
7675
7710
|
] }),
|
|
7676
|
-
item.error && /* @__PURE__ */ jsxs3(Text4, {
|
|
7711
|
+
item.error && /* @__PURE__ */ jsxs3(Text4, { color: PALETTE.muted, children: [
|
|
7677
7712
|
" ",
|
|
7678
7713
|
formatItemError(item.error)
|
|
7679
7714
|
] })
|
|
@@ -7681,19 +7716,19 @@ function ServerApplyDone({ operation, spaceId, environmentId, host }) {
|
|
|
7681
7716
|
] }),
|
|
7682
7717
|
operation.sys.status === "succeeded" && operation.summary.succeeded > 0 && /* @__PURE__ */ jsxs3(Box3, { flexDirection: "column", children: [
|
|
7683
7718
|
/* @__PURE__ */ jsx5(Text4, { children: " " }),
|
|
7684
|
-
/* @__PURE__ */ jsx5(Text4, {
|
|
7719
|
+
/* @__PURE__ */ jsx5(Text4, { color: PALETTE.muted, children: " View your design system:" }),
|
|
7685
7720
|
/* @__PURE__ */ jsxs3(Text4, { color: "cyan", children: [
|
|
7686
7721
|
" ",
|
|
7687
7722
|
buildPostPushUrl({ host: host ?? "api.contentful.com", spaceId, environmentId })
|
|
7688
7723
|
] }),
|
|
7689
|
-
/* @__PURE__ */ jsx5(Text4, {
|
|
7724
|
+
/* @__PURE__ */ jsx5(Text4, { color: PALETTE.muted, children: " View your design tokens:" }),
|
|
7690
7725
|
/* @__PURE__ */ jsxs3(Text4, { color: "cyan", children: [
|
|
7691
7726
|
" ",
|
|
7692
7727
|
buildPostPushUrl({ host: host ?? "api.contentful.com", spaceId, environmentId, view: "design_tokens" })
|
|
7693
7728
|
] })
|
|
7694
7729
|
] }),
|
|
7695
7730
|
/* @__PURE__ */ jsx5(Text4, { children: " " }),
|
|
7696
|
-
/* @__PURE__ */ jsx5(Text4, {
|
|
7731
|
+
/* @__PURE__ */ jsx5(Text4, { color: PALETTE.muted, children: " Press Q to exit." })
|
|
7697
7732
|
] });
|
|
7698
7733
|
}
|
|
7699
7734
|
function formatItemError(error) {
|
|
@@ -7705,6 +7740,7 @@ var init_ServerApplyView = __esm({
|
|
|
7705
7740
|
init_ServerPreviewView();
|
|
7706
7741
|
init_contentful_urls();
|
|
7707
7742
|
init_error_parser();
|
|
7743
|
+
init_theme();
|
|
7708
7744
|
}
|
|
7709
7745
|
});
|
|
7710
7746
|
|
|
@@ -8423,7 +8459,7 @@ import { jsx as jsx6, jsxs as jsxs4 } from "react/jsx-runtime";
|
|
|
8423
8459
|
function TopBar({ subcommand, hints }) {
|
|
8424
8460
|
return /* @__PURE__ */ jsxs4(Box4, { justifyContent: "space-between", children: [
|
|
8425
8461
|
/* @__PURE__ */ jsx6(Text5, { bold: true, children: "experience-design-system-cli " + subcommand }),
|
|
8426
|
-
/* @__PURE__ */ jsxs4(Text5, {
|
|
8462
|
+
/* @__PURE__ */ jsxs4(Text5, { color: PALETTE.muted, children: [
|
|
8427
8463
|
hints.map((h) => `[${h.key}] ${h.label}`).join(" "),
|
|
8428
8464
|
" v" + VERSION
|
|
8429
8465
|
] })
|
|
@@ -8434,6 +8470,7 @@ var init_TopBar = __esm({
|
|
|
8434
8470
|
"packages/experience-design-system-cli-legacy/src/analyze/select/tui/components/TopBar.tsx"() {
|
|
8435
8471
|
"use strict";
|
|
8436
8472
|
init_cli_path();
|
|
8473
|
+
init_theme();
|
|
8437
8474
|
VERSION = JSON.parse(readFileSync4(join8(findPkgRoot(), "package.json"), "utf8")).version;
|
|
8438
8475
|
}
|
|
8439
8476
|
});
|
|
@@ -8579,7 +8616,7 @@ function ValidateView({ results, onExit }) {
|
|
|
8579
8616
|
return /* @__PURE__ */ jsxs5(Box5, { children: [
|
|
8580
8617
|
/* @__PURE__ */ jsx7(Text6, { color: r.valid ? "green" : "red", children: r.valid ? "\u2713" : "\u2717" }),
|
|
8581
8618
|
/* @__PURE__ */ jsx7(Text6, { children: " " + r.filePath.split("/").pop() }),
|
|
8582
|
-
/* @__PURE__ */ jsx7(Text6, {
|
|
8619
|
+
/* @__PURE__ */ jsx7(Text6, { color: PALETTE.muted, children: " " + r.format + " " }),
|
|
8583
8620
|
/* @__PURE__ */ jsx7(Text6, { color: r.valid ? "green" : "red", children: summaryText })
|
|
8584
8621
|
] }, r.filePath);
|
|
8585
8622
|
}),
|
|
@@ -8593,8 +8630,8 @@ function ValidateView({ results, onExit }) {
|
|
|
8593
8630
|
] }, r.filePath)) })
|
|
8594
8631
|
] }),
|
|
8595
8632
|
/* @__PURE__ */ jsxs5(Box5, { borderStyle: "single", paddingX: 1, justifyContent: "space-between", children: [
|
|
8596
|
-
/* @__PURE__ */ jsx7(Text6, {
|
|
8597
|
-
/* @__PURE__ */ jsx7(Text6, {
|
|
8633
|
+
/* @__PURE__ */ jsx7(Text6, { color: PALETTE.muted, children: allValid ? "All files valid" : invalidResults.length + " file" + (invalidResults.length === 1 ? "" : "s") + " invalid" }),
|
|
8634
|
+
/* @__PURE__ */ jsx7(Text6, { children: allValid ? "[q]" : "scroll \u2191\u2193 [q]" })
|
|
8598
8635
|
] })
|
|
8599
8636
|
] });
|
|
8600
8637
|
}
|
|
@@ -8604,6 +8641,7 @@ var init_ValidateView = __esm({
|
|
|
8604
8641
|
init_TopBar();
|
|
8605
8642
|
init_useImmediateInput();
|
|
8606
8643
|
init_list_scroll_input();
|
|
8644
|
+
init_theme();
|
|
8607
8645
|
}
|
|
8608
8646
|
});
|
|
8609
8647
|
|
|
@@ -9363,39 +9401,6 @@ var init_composition_options = __esm({
|
|
|
9363
9401
|
}
|
|
9364
9402
|
});
|
|
9365
9403
|
|
|
9366
|
-
// packages/experience-design-system-cli-legacy/src/analyze/select/tui/theme.ts
|
|
9367
|
-
import { extendTheme, defaultTheme } from "@inkjs/ui";
|
|
9368
|
-
var PALETTE, INK_UI_THEME;
|
|
9369
|
-
var init_theme = __esm({
|
|
9370
|
-
"packages/experience-design-system-cli-legacy/src/analyze/select/tui/theme.ts"() {
|
|
9371
|
-
"use strict";
|
|
9372
|
-
PALETTE = {
|
|
9373
|
-
info: "#1773EB",
|
|
9374
|
-
link: "#58A6FF",
|
|
9375
|
-
success: "#00C459",
|
|
9376
|
-
error: "#E44F20",
|
|
9377
|
-
warning: "#FFDA00",
|
|
9378
|
-
fg: "#000000",
|
|
9379
|
-
inverse: "#FFFFFF",
|
|
9380
|
-
muted: "#A6B5C7",
|
|
9381
|
-
border: "#C4D1DE",
|
|
9382
|
-
subtle: "#DDE5EC",
|
|
9383
|
-
bg: "#EFF2F6"
|
|
9384
|
-
};
|
|
9385
|
-
INK_UI_THEME = extendTheme(defaultTheme, {
|
|
9386
|
-
components: {
|
|
9387
|
-
ProgressBar: {
|
|
9388
|
-
styles: {
|
|
9389
|
-
completed: () => ({
|
|
9390
|
-
color: "blue"
|
|
9391
|
-
})
|
|
9392
|
-
}
|
|
9393
|
-
}
|
|
9394
|
-
}
|
|
9395
|
-
});
|
|
9396
|
-
}
|
|
9397
|
-
});
|
|
9398
|
-
|
|
9399
9404
|
// packages/experience-design-system-cli-legacy/src/import/tui/run-teaser.ts
|
|
9400
9405
|
function buildRunTeaserLine(runId) {
|
|
9401
9406
|
if (!runId) return "";
|
|
@@ -9492,13 +9497,13 @@ function PathPrompt({
|
|
|
9492
9497
|
label,
|
|
9493
9498
|
":"
|
|
9494
9499
|
] }),
|
|
9495
|
-
/* @__PURE__ */ jsx9(Text7, {
|
|
9500
|
+
/* @__PURE__ */ jsx9(Text7, { color: isPlaceholder ? PALETTE.muted : void 0, children: shown }),
|
|
9496
9501
|
/* @__PURE__ */ jsx9(Text7, { children: cursor })
|
|
9497
9502
|
] }),
|
|
9498
9503
|
/* @__PURE__ */ jsxs6(Box6, { gap: 3, children: [
|
|
9499
|
-
/* @__PURE__ */ jsx9(Text7, {
|
|
9500
|
-
/* @__PURE__ */ jsx9(Text7, {
|
|
9501
|
-
/* @__PURE__ */ jsx9(Text7, {
|
|
9504
|
+
/* @__PURE__ */ jsx9(Text7, { children: "[Enter] Confirm" }),
|
|
9505
|
+
/* @__PURE__ */ jsx9(Text7, { children: "[Tab] Autocomplete" }),
|
|
9506
|
+
/* @__PURE__ */ jsx9(Text7, { children: "[Esc] Cancel" })
|
|
9502
9507
|
] })
|
|
9503
9508
|
] });
|
|
9504
9509
|
}
|
|
@@ -9508,6 +9513,7 @@ var init_path_prompt = __esm({
|
|
|
9508
9513
|
init_useImmediateInput();
|
|
9509
9514
|
init_path_utils();
|
|
9510
9515
|
init_use_blinking_cursor();
|
|
9516
|
+
init_theme();
|
|
9511
9517
|
}
|
|
9512
9518
|
});
|
|
9513
9519
|
|
|
@@ -9712,7 +9718,7 @@ function CustomPromptBanner({ generatePromptPath }) {
|
|
|
9712
9718
|
"components: ",
|
|
9713
9719
|
generatePromptPath
|
|
9714
9720
|
] }) : null,
|
|
9715
|
-
/* @__PURE__ */ jsx10(Text8, { color: PALETTE.warning,
|
|
9721
|
+
/* @__PURE__ */ jsx10(Text8, { color: PALETTE.warning, children: "Bundled invariants (utility-wrapper rejection, description content rules) do NOT apply." })
|
|
9716
9722
|
] });
|
|
9717
9723
|
}
|
|
9718
9724
|
var init_CustomPromptBanner = __esm({
|
|
@@ -9801,44 +9807,44 @@ function RunningStep({
|
|
|
9801
9807
|
/* @__PURE__ */ jsx13(Box9, { gap: 1, marginTop: 1, flexDirection: "column", children: detailProgress ? /* @__PURE__ */ jsxs9(Fragment3, { children: [
|
|
9802
9808
|
/* @__PURE__ */ jsxs9(Box9, { gap: 2, children: [
|
|
9803
9809
|
/* @__PURE__ */ jsx13(Box9, { width: 40, children: /* @__PURE__ */ jsx13(ThemeProvider, { theme: INK_UI_THEME, children: /* @__PURE__ */ jsx13(ProgressBar, { value: Math.round(detailProgress.done / detailProgress.total * 100) }) }) }),
|
|
9804
|
-
/* @__PURE__ */ jsxs9(Text10, {
|
|
9810
|
+
/* @__PURE__ */ jsxs9(Text10, { color: PALETTE.muted, children: [
|
|
9805
9811
|
detailProgress.done,
|
|
9806
9812
|
"/",
|
|
9807
9813
|
detailProgress.total
|
|
9808
9814
|
] })
|
|
9809
9815
|
] }),
|
|
9810
|
-
/* @__PURE__ */ jsx13(Text10, {
|
|
9816
|
+
/* @__PURE__ */ jsx13(Text10, { color: PALETTE.muted, children: detail ?? "Running..." })
|
|
9811
9817
|
] }) : /* @__PURE__ */ jsxs9(Box9, { gap: 1, children: [
|
|
9812
9818
|
detailComplete ? /* @__PURE__ */ jsx13(Text10, { color: PALETTE.success, children: "\u2713" }) : spinner,
|
|
9813
|
-
/* @__PURE__ */ jsx13(Text10, {
|
|
9819
|
+
/* @__PURE__ */ jsx13(Text10, { color: PALETTE.muted, children: detail ?? "Running..." })
|
|
9814
9820
|
] }) }),
|
|
9815
9821
|
secondaryDetail !== void 0 && /* @__PURE__ */ jsx13(Box9, { gap: 1, flexDirection: "column", children: secondaryProgress ? /* @__PURE__ */ jsxs9(Fragment3, { children: [
|
|
9816
9822
|
/* @__PURE__ */ jsxs9(Box9, { gap: 2, children: [
|
|
9817
9823
|
/* @__PURE__ */ jsx13(Box9, { width: 40, children: /* @__PURE__ */ jsx13(ThemeProvider, { theme: INK_UI_THEME, children: /* @__PURE__ */ jsx13(ProgressBar, { value: Math.round(secondaryProgress.done / secondaryProgress.total * 100) }) }) }),
|
|
9818
|
-
/* @__PURE__ */ jsxs9(Text10, {
|
|
9824
|
+
/* @__PURE__ */ jsxs9(Text10, { color: PALETTE.muted, children: [
|
|
9819
9825
|
secondaryProgress.done,
|
|
9820
9826
|
"/",
|
|
9821
9827
|
secondaryProgress.total
|
|
9822
9828
|
] })
|
|
9823
9829
|
] }),
|
|
9824
|
-
/* @__PURE__ */ jsx13(Text10, {
|
|
9830
|
+
/* @__PURE__ */ jsx13(Text10, { color: PALETTE.muted, children: secondaryDetail })
|
|
9825
9831
|
] }) : /* @__PURE__ */ jsxs9(Box9, { gap: 1, children: [
|
|
9826
9832
|
secondaryComplete ? /* @__PURE__ */ jsx13(Text10, { color: PALETTE.success, children: "\u2713" }) : spinner,
|
|
9827
|
-
/* @__PURE__ */ jsx13(Text10, {
|
|
9833
|
+
/* @__PURE__ */ jsx13(Text10, { color: PALETTE.muted, children: secondaryDetail })
|
|
9828
9834
|
] }) }),
|
|
9829
9835
|
tertiaryDetail !== void 0 && /* @__PURE__ */ jsxs9(Box9, { gap: 1, children: [
|
|
9830
9836
|
tertiaryComplete ? /* @__PURE__ */ jsx13(Text10, { color: PALETTE.success, children: "\u2713" }) : spinner,
|
|
9831
|
-
/* @__PURE__ */ jsx13(Text10, {
|
|
9837
|
+
/* @__PURE__ */ jsx13(Text10, { color: PALETTE.muted, children: tertiaryDetail })
|
|
9832
9838
|
] }),
|
|
9833
9839
|
quaternaryDetail !== void 0 && /* @__PURE__ */ jsxs9(Box9, { gap: 1, children: [
|
|
9834
9840
|
quaternaryComplete ? /* @__PURE__ */ jsx13(Text10, { color: PALETTE.success, children: "\u2713" }) : spinner,
|
|
9835
|
-
/* @__PURE__ */ jsx13(Text10, {
|
|
9841
|
+
/* @__PURE__ */ jsx13(Text10, { color: PALETTE.muted, children: quaternaryDetail })
|
|
9836
9842
|
] }),
|
|
9837
9843
|
quinaryDetail !== void 0 && /* @__PURE__ */ jsxs9(Box9, { gap: 1, children: [
|
|
9838
9844
|
quinaryComplete ? /* @__PURE__ */ jsx13(Text10, { color: PALETTE.success, children: "\u2713" }) : spinner,
|
|
9839
|
-
/* @__PURE__ */ jsx13(Text10, {
|
|
9845
|
+
/* @__PURE__ */ jsx13(Text10, { color: PALETTE.muted, children: quinaryDetail })
|
|
9840
9846
|
] }),
|
|
9841
|
-
/* @__PURE__ */ jsx13(Box9, { marginTop: 1, children: /* @__PURE__ */ jsxs9(Text10, {
|
|
9847
|
+
/* @__PURE__ */ jsx13(Box9, { marginTop: 1, children: /* @__PURE__ */ jsxs9(Text10, { color: PALETTE.muted, children: [
|
|
9842
9848
|
"Elapsed: ",
|
|
9843
9849
|
elapsed
|
|
9844
9850
|
] }) })
|
|
@@ -9890,18 +9896,18 @@ function GateStep({
|
|
|
9890
9896
|
" ",
|
|
9891
9897
|
successMessage
|
|
9892
9898
|
] }),
|
|
9893
|
-
summary && /* @__PURE__ */ jsx14(Text11, {
|
|
9899
|
+
summary && /* @__PURE__ */ jsx14(Text11, { color: PALETTE.muted, children: summary }),
|
|
9894
9900
|
context && /* @__PURE__ */ jsx14(Box10, { marginTop: 1, children: /* @__PURE__ */ jsx14(Text11, { children: context }) }),
|
|
9895
9901
|
/* @__PURE__ */ jsxs10(Box10, { gap: 3, marginTop: 1, children: [
|
|
9896
|
-
/* @__PURE__ */ jsxs10(Text11, {
|
|
9902
|
+
/* @__PURE__ */ jsxs10(Text11, { children: [
|
|
9897
9903
|
"[Enter] ",
|
|
9898
9904
|
continueLabel
|
|
9899
9905
|
] }),
|
|
9900
|
-
showSkip && onSkip && /* @__PURE__ */ jsxs10(Text11, {
|
|
9906
|
+
showSkip && onSkip && /* @__PURE__ */ jsxs10(Text11, { children: [
|
|
9901
9907
|
"[a] ",
|
|
9902
9908
|
skipLabel
|
|
9903
9909
|
] }),
|
|
9904
|
-
/* @__PURE__ */ jsx14(Text11, {
|
|
9910
|
+
/* @__PURE__ */ jsx14(Text11, { children: "[q] Quit" })
|
|
9905
9911
|
] })
|
|
9906
9912
|
] });
|
|
9907
9913
|
}
|
|
@@ -9909,6 +9915,7 @@ var init_GateStep = __esm({
|
|
|
9909
9915
|
"packages/experience-design-system-cli-legacy/src/import/tui/steps/GateStep.tsx"() {
|
|
9910
9916
|
"use strict";
|
|
9911
9917
|
init_useImmediateInput();
|
|
9918
|
+
init_theme();
|
|
9912
9919
|
}
|
|
9913
9920
|
});
|
|
9914
9921
|
|
|
@@ -10110,16 +10117,17 @@ import { Box as Box11, Text as Text12 } from "ink";
|
|
|
10110
10117
|
import { jsx as jsx15, jsxs as jsxs11 } from "react/jsx-runtime";
|
|
10111
10118
|
function SpaceEnvironment({ spaceId, environmentId }) {
|
|
10112
10119
|
return /* @__PURE__ */ jsxs11(Box11, { gap: 1, marginTop: 1, children: [
|
|
10113
|
-
/* @__PURE__ */ jsx15(Text12, {
|
|
10120
|
+
/* @__PURE__ */ jsx15(Text12, { color: PALETTE.muted, children: "Space:" }),
|
|
10114
10121
|
/* @__PURE__ */ jsx15(Text12, { children: spaceId }),
|
|
10115
|
-
/* @__PURE__ */ jsx15(Text12, {
|
|
10116
|
-
/* @__PURE__ */ jsx15(Text12, {
|
|
10122
|
+
/* @__PURE__ */ jsx15(Text12, { color: PALETTE.muted, children: "/" }),
|
|
10123
|
+
/* @__PURE__ */ jsx15(Text12, { color: PALETTE.muted, children: "Environment:" }),
|
|
10117
10124
|
/* @__PURE__ */ jsx15(Text12, { children: environmentId })
|
|
10118
10125
|
] });
|
|
10119
10126
|
}
|
|
10120
10127
|
var init_SpaceEnvironment = __esm({
|
|
10121
10128
|
"packages/experience-design-system-cli-legacy/src/import/tui/components/SpaceEnvironment.tsx"() {
|
|
10122
10129
|
"use strict";
|
|
10130
|
+
init_theme();
|
|
10123
10131
|
}
|
|
10124
10132
|
});
|
|
10125
10133
|
|
|
@@ -10211,7 +10219,7 @@ function formatWindowIndicator(direction, count) {
|
|
|
10211
10219
|
return `${direction === "up" ? "\u2191" : "\u2193"} ${count} more`;
|
|
10212
10220
|
}
|
|
10213
10221
|
function WindowIndicator({ direction, count }) {
|
|
10214
|
-
return /* @__PURE__ */ jsx16(Text13, {
|
|
10222
|
+
return /* @__PURE__ */ jsx16(Text13, { color: PALETTE.muted, children: formatWindowIndicator(direction, count) });
|
|
10215
10223
|
}
|
|
10216
10224
|
var MIN_TERMINAL_PANEL_HEIGHT;
|
|
10217
10225
|
var init_windowed_panel = __esm({
|
|
@@ -10491,33 +10499,24 @@ function WizardPreviewStep({
|
|
|
10491
10499
|
title: diffExpanded ? `Diff (${diffLines.length} lines)` : "",
|
|
10492
10500
|
focused: false,
|
|
10493
10501
|
children: [
|
|
10494
|
-
activeLines.slice(boundedScrollOffset, boundedScrollOffset + viewportHeight).map((line) => /* @__PURE__ */ jsx17(
|
|
10495
|
-
|
|
10496
|
-
{
|
|
10497
|
-
color: line.color === "gray" ? void 0 : line.color,
|
|
10498
|
-
dimColor: line.color === "gray",
|
|
10499
|
-
wrap: "truncate-end",
|
|
10500
|
-
children: line.text
|
|
10501
|
-
},
|
|
10502
|
-
line.key
|
|
10503
|
-
)),
|
|
10504
|
-
/* @__PURE__ */ jsx17(Text14, { dimColor: true, wrap: "truncate-end", children: formatPreviewScrollIndicator(activeLines.length, boundedScrollOffset, viewportHeight) })
|
|
10502
|
+
activeLines.slice(boundedScrollOffset, boundedScrollOffset + viewportHeight).map((line) => /* @__PURE__ */ jsx17(Text14, { color: line.color === "gray" ? PALETTE.muted : line.color, wrap: "truncate-end", children: line.text }, line.key)),
|
|
10503
|
+
/* @__PURE__ */ jsx17(Text14, { color: PALETTE.muted, wrap: "truncate-end", children: formatPreviewScrollIndicator(activeLines.length, boundedScrollOffset, viewportHeight) })
|
|
10505
10504
|
]
|
|
10506
10505
|
}
|
|
10507
10506
|
)
|
|
10508
|
-
] }) : /* @__PURE__ */ jsx17(Text14, {
|
|
10507
|
+
] }) : /* @__PURE__ */ jsx17(Text14, { color: PALETTE.muted, children: "Nothing to push \u2014 everything is already up to date." }),
|
|
10509
10508
|
breakingWithImpact && /* @__PURE__ */ jsx17(Box13, { marginTop: 1, children: /* @__PURE__ */ jsx17(Text14, { color: PALETTE.error, bold: true, children: "\u26A0 Breaking changes will affect downstream entities. Press Enter to acknowledge and apply." }) }),
|
|
10510
10509
|
/* @__PURE__ */ jsx17(SpaceEnvironment, { spaceId, environmentId }),
|
|
10511
10510
|
/* @__PURE__ */ jsxs13(Box13, { gap: 3, marginTop: 1, children: [
|
|
10512
|
-
/* @__PURE__ */ jsx17(Text14, {
|
|
10513
|
-
/* @__PURE__ */ jsxs13(Text14, {
|
|
10511
|
+
/* @__PURE__ */ jsx17(Text14, { children: "[Enter] Push to Contentful" }),
|
|
10512
|
+
/* @__PURE__ */ jsxs13(Text14, { children: [
|
|
10514
10513
|
"[d] ",
|
|
10515
10514
|
diffExpanded ? "Hide" : "Show",
|
|
10516
10515
|
" diff"
|
|
10517
10516
|
] }),
|
|
10518
|
-
diffExpanded && /* @__PURE__ */ jsx17(Text14, {
|
|
10519
|
-
onEdit && /* @__PURE__ */ jsx17(Text14, {
|
|
10520
|
-
/* @__PURE__ */ jsx17(Text14, {
|
|
10517
|
+
diffExpanded && /* @__PURE__ */ jsx17(Text14, { children: "[\u2191\u2193] Scroll [f/b] Page" }),
|
|
10518
|
+
onEdit && /* @__PURE__ */ jsx17(Text14, { children: "[e] Edit definitions" }),
|
|
10519
|
+
/* @__PURE__ */ jsx17(Text14, { children: "[q] Cancel" })
|
|
10521
10520
|
] })
|
|
10522
10521
|
] });
|
|
10523
10522
|
}
|
|
@@ -10558,7 +10557,7 @@ function EntityRows({ entity, label }) {
|
|
|
10558
10557
|
}
|
|
10559
10558
|
function LinkRow({ title, url }) {
|
|
10560
10559
|
return /* @__PURE__ */ jsxs14(Box14, { flexDirection: "column", children: [
|
|
10561
|
-
/* @__PURE__ */ jsx18(Text15, {
|
|
10560
|
+
/* @__PURE__ */ jsx18(Text15, { color: PALETTE.muted, children: title }),
|
|
10562
10561
|
/* @__PURE__ */ jsx18(Text15, { color: PALETTE.link, children: url })
|
|
10563
10562
|
] });
|
|
10564
10563
|
}
|
|
@@ -10583,10 +10582,10 @@ function DoneStep({
|
|
|
10583
10582
|
const urlArgs = { host: host ?? "api.contentful.com", spaceId, environmentId };
|
|
10584
10583
|
return /* @__PURE__ */ jsxs14(Box14, { flexDirection: "column", gap: 1, paddingX: 2, paddingY: 1, children: [
|
|
10585
10584
|
success ? /* @__PURE__ */ jsx18(Text15, { bold: true, color: PALETTE.success, children: "Done!" }) : /* @__PURE__ */ jsx18(Text15, { bold: true, color: PALETTE.warning, children: "\u26A0 Finished with errors" }),
|
|
10586
|
-
totalPushed === 0 && totalFailed === 0 && !summary ? /* @__PURE__ */ jsx18(Text15, {
|
|
10585
|
+
totalPushed === 0 && totalFailed === 0 && !summary ? /* @__PURE__ */ jsx18(Text15, { color: PALETTE.muted, children: "Nothing was pushed \u2014 everything was already up to date." }) : /* @__PURE__ */ jsxs14(Box14, { flexDirection: "column", children: [
|
|
10587
10586
|
/* @__PURE__ */ jsx18(EntityRows, { entity: componentTypes, label: "Component Type" }),
|
|
10588
10587
|
/* @__PURE__ */ jsx18(EntityRows, { entity: designTokens, label: "Design Token" }),
|
|
10589
|
-
summary && /* @__PURE__ */ jsx18(Box14, { marginTop: 1, children: /* @__PURE__ */ jsxs14(Text15, {
|
|
10588
|
+
summary && /* @__PURE__ */ jsx18(Box14, { marginTop: 1, children: /* @__PURE__ */ jsxs14(Text15, { color: PALETTE.muted, children: [
|
|
10590
10589
|
"Push result: ",
|
|
10591
10590
|
summary.succeeded,
|
|
10592
10591
|
"/",
|
|
@@ -10621,7 +10620,7 @@ function DoneStep({
|
|
|
10621
10620
|
}
|
|
10622
10621
|
)
|
|
10623
10622
|
] }),
|
|
10624
|
-
/* @__PURE__ */ jsx18(Text15, {
|
|
10623
|
+
/* @__PURE__ */ jsx18(Text15, { children: "[Enter / q] Exit" })
|
|
10625
10624
|
] });
|
|
10626
10625
|
}
|
|
10627
10626
|
var ACTIONS;
|
|
@@ -10668,10 +10667,10 @@ function ErrorStep({
|
|
|
10668
10667
|
/* @__PURE__ */ jsx19(Text16, { color: PALETTE.error, children: message }),
|
|
10669
10668
|
/* @__PURE__ */ jsxs15(Box15, { gap: 3, marginTop: 1, children: [
|
|
10670
10669
|
onAcknowledgeBreakingChanges ? /* @__PURE__ */ jsxs15(Fragment6, { children: [
|
|
10671
|
-
/* @__PURE__ */ jsx19(Text16, {
|
|
10672
|
-
/* @__PURE__ */ jsx19(Text16, {
|
|
10673
|
-
] }) : /* @__PURE__ */ jsx19(Text16, {
|
|
10674
|
-
onRetryCredentials && /* @__PURE__ */ jsx19(Text16, {
|
|
10670
|
+
/* @__PURE__ */ jsx19(Text16, { children: "[Enter] Acknowledge and apply" }),
|
|
10671
|
+
/* @__PURE__ */ jsx19(Text16, { children: "[Esc / q] Exit" })
|
|
10672
|
+
] }) : /* @__PURE__ */ jsx19(Text16, { children: "[Enter / q] Exit" }),
|
|
10673
|
+
onRetryCredentials && /* @__PURE__ */ jsx19(Text16, { children: "[r] Re-enter credentials" })
|
|
10675
10674
|
] })
|
|
10676
10675
|
] });
|
|
10677
10676
|
}
|
|
@@ -10744,12 +10743,12 @@ function PushingStep({ stepNumber, totalSteps, progress }) {
|
|
|
10744
10743
|
/* @__PURE__ */ jsx21(StepHeader, { stepNumber, totalSteps, title: "Push to Contentful" }),
|
|
10745
10744
|
/* @__PURE__ */ jsx21(Text17, { children: "Writing component types and design tokens to your Contentful space..." }),
|
|
10746
10745
|
operationId && /* @__PURE__ */ jsxs16(Box16, { gap: 1, children: [
|
|
10747
|
-
/* @__PURE__ */ jsx21(Text17, {
|
|
10746
|
+
/* @__PURE__ */ jsx21(Text17, { color: PALETTE.muted, children: "Operation:" }),
|
|
10748
10747
|
/* @__PURE__ */ jsx21(Text17, { children: operationId })
|
|
10749
10748
|
] }),
|
|
10750
10749
|
showGlobal && progress && progress.kind === "progress" && /* @__PURE__ */ jsx21(Box16, { gap: 1, flexDirection: "column", children: /* @__PURE__ */ jsxs16(Box16, { gap: 2, children: [
|
|
10751
10750
|
/* @__PURE__ */ jsx21(Box16, { width: 40, children: /* @__PURE__ */ jsx21(ThemeProvider2, { theme: INK_UI_THEME, children: /* @__PURE__ */ jsx21(ProgressBar2, { value: Math.round(progress.processed / progress.total * 100) }) }) }),
|
|
10752
|
-
/* @__PURE__ */ jsxs16(Text17, {
|
|
10751
|
+
/* @__PURE__ */ jsxs16(Text17, { color: PALETTE.muted, children: [
|
|
10753
10752
|
progress.processed,
|
|
10754
10753
|
"/",
|
|
10755
10754
|
progress.total,
|
|
@@ -10757,10 +10756,10 @@ function PushingStep({ stepNumber, totalSteps, progress }) {
|
|
|
10757
10756
|
] })
|
|
10758
10757
|
] }) }),
|
|
10759
10758
|
showCurrent && /* @__PURE__ */ jsxs16(Box16, { gap: 1, children: [
|
|
10760
|
-
/* @__PURE__ */ jsx21(Text17, {
|
|
10759
|
+
/* @__PURE__ */ jsx21(Text17, { color: PALETTE.muted, children: "Now processing:" }),
|
|
10761
10760
|
/* @__PURE__ */ jsx21(Text17, { children: showCurrent })
|
|
10762
10761
|
] }),
|
|
10763
|
-
/* @__PURE__ */ jsx21(Box16, { marginTop: 1, children: /* @__PURE__ */ jsxs16(Text17, {
|
|
10762
|
+
/* @__PURE__ */ jsx21(Box16, { marginTop: 1, children: /* @__PURE__ */ jsxs16(Text17, { color: PALETTE.muted, children: [
|
|
10764
10763
|
"Elapsed: ",
|
|
10765
10764
|
elapsed
|
|
10766
10765
|
] }) })
|
|
@@ -10772,6 +10771,7 @@ var init_PushingStep = __esm({
|
|
|
10772
10771
|
init_StepHeader();
|
|
10773
10772
|
init_use_timed_spinner();
|
|
10774
10773
|
init_theme();
|
|
10774
|
+
init_theme();
|
|
10775
10775
|
}
|
|
10776
10776
|
});
|
|
10777
10777
|
|
|
@@ -19378,7 +19378,7 @@ function PreviewBadge({
|
|
|
19378
19378
|
badge,
|
|
19379
19379
|
highlighted = false
|
|
19380
19380
|
}) {
|
|
19381
|
-
return badge ? /* @__PURE__ */ jsx22(Text18, { color: badge.
|
|
19381
|
+
return badge ? /* @__PURE__ */ jsx22(Text18, { color: !highlighted && badge.dim ? PALETTE.muted : badge.color, bold: badge.bold, children: badge.char }) : /* @__PURE__ */ jsx22(Text18, { children: " " });
|
|
19382
19382
|
}
|
|
19383
19383
|
var init_Sidebar = __esm({
|
|
19384
19384
|
"packages/experience-design-system-cli-legacy/src/analyze/select/tui/components/Sidebar.tsx"() {
|
|
@@ -19845,16 +19845,15 @@ function GroupedSidebar(props) {
|
|
|
19845
19845
|
return /* @__PURE__ */ jsxs18(Box18, { children: [
|
|
19846
19846
|
isCursor ? /* @__PURE__ */ jsx23(Text19, { color: PALETTE.info, bold: true, children: figures.pointer }) : /* @__PURE__ */ jsx23(Text19, { children: " " }),
|
|
19847
19847
|
/* @__PURE__ */ jsx23(PreviewBadge, { badge, highlighted: isSelected }),
|
|
19848
|
-
selectionStateByKey !== void 0 && (selGlyph && !isSynthetic ? /* @__PURE__ */ jsx23(Text19, { color:
|
|
19848
|
+
selectionStateByKey !== void 0 && (selGlyph && !isSynthetic ? /* @__PURE__ */ jsx23(Text19, { color: !isSelected && selDim ? PALETTE.muted : selColor, bold: selBold, children: " " + selGlyph }) : /* @__PURE__ */ jsx23(Text19, { children: " " })),
|
|
19849
19849
|
aiFlaggedByKey !== void 0 && (aiFlagged ? /* @__PURE__ */ jsx23(Text19, { color: PALETTE.warning, bold: true, children: " [\xD7]" }) : /* @__PURE__ */ jsx23(Text19, { children: " " })),
|
|
19850
19850
|
/* @__PURE__ */ jsxs18(
|
|
19851
19851
|
Text19,
|
|
19852
19852
|
{
|
|
19853
|
-
color: isSelected ? PALETTE.info : labelStyle.color,
|
|
19853
|
+
color: isSelected ? PALETTE.info : labelStyle.dim ? PALETTE.muted : labelStyle.color,
|
|
19854
19854
|
bold: isSelected || labelStyle.bold,
|
|
19855
19855
|
inverse: false,
|
|
19856
19856
|
underline: isSelected && !focused,
|
|
19857
|
-
dimColor: isSelected ? false : labelStyle.dim,
|
|
19858
19857
|
wrap: wrapLabels ? "wrap" : "truncate",
|
|
19859
19858
|
children: [
|
|
19860
19859
|
" ",
|
|
@@ -19862,7 +19861,7 @@ function GroupedSidebar(props) {
|
|
|
19862
19861
|
]
|
|
19863
19862
|
}
|
|
19864
19863
|
),
|
|
19865
|
-
inheritanceStyle.glyph && /* @__PURE__ */ jsx23(Text19, { color: inheritanceStyle.
|
|
19864
|
+
inheritanceStyle.glyph && /* @__PURE__ */ jsx23(Text19, { color: inheritanceStyle.dim ? PALETTE.muted : inheritanceStyle.color, bold: inheritanceStyle.bold, children: " " + inheritanceStyle.glyph })
|
|
19866
19865
|
] }, row.key);
|
|
19867
19866
|
}),
|
|
19868
19867
|
windowed && /* @__PURE__ */ jsx23(WindowIndicator, { direction: "down", count: allRows.length - end })
|
|
@@ -20144,12 +20143,12 @@ function SearchMatchSummary({
|
|
|
20144
20143
|
/* @__PURE__ */ jsxs19(Text20, { children: [
|
|
20145
20144
|
`/${query}`,
|
|
20146
20145
|
/* @__PURE__ */ jsx24(Text20, { color: PALETTE.info, children: "\u258E" }),
|
|
20147
|
-
query && /* @__PURE__ */ jsx24(Text20, {
|
|
20148
|
-
/* @__PURE__ */ jsx24(Text20, {
|
|
20146
|
+
query && /* @__PURE__ */ jsx24(Text20, { color: PALETTE.muted, children: formatSearchMatchSummary(matches, total) }),
|
|
20147
|
+
/* @__PURE__ */ jsx24(Text20, { children: " \xB7 [Esc] leave" })
|
|
20149
20148
|
] }),
|
|
20150
|
-
autocompleteCandidates.length > 1 && /* @__PURE__ */ jsx24(Text20, {
|
|
20149
|
+
autocompleteCandidates.length > 1 && /* @__PURE__ */ jsx24(Text20, { color: PALETTE.muted, children: ` possibilities: ${autocompleteCandidates.join(" \xB7 ").slice(0, 120)}` })
|
|
20151
20150
|
] }),
|
|
20152
|
-
!open && query && /* @__PURE__ */ jsx24(Box19, { marginTop, children: /* @__PURE__ */ jsx24(Text20, {
|
|
20151
|
+
!open && query && /* @__PURE__ */ jsx24(Box19, { marginTop, children: /* @__PURE__ */ jsx24(Text20, { children: `/${query}${formatSearchMatchSummary(matches, total)} \xB7 [Esc] clear` }) })
|
|
20153
20152
|
] });
|
|
20154
20153
|
}
|
|
20155
20154
|
var init_SearchMatchSummary = __esm({
|
|
@@ -20281,13 +20280,13 @@ function GotoBanner({
|
|
|
20281
20280
|
flexShrink: 0,
|
|
20282
20281
|
children: [
|
|
20283
20282
|
/* @__PURE__ */ jsx25(Text21, { bold: true, children: title }),
|
|
20284
|
-
moreAbove > 0 && /* @__PURE__ */ jsx25(Text21, {
|
|
20283
|
+
moreAbove > 0 && /* @__PURE__ */ jsx25(Text21, { color: PALETTE.muted, children: ` \u25B2 ${moreAbove} more` }),
|
|
20285
20284
|
visible.map((row, vi) => {
|
|
20286
20285
|
const i = start + vi;
|
|
20287
20286
|
return renderRow(row, i, i === highlightIndex);
|
|
20288
20287
|
}),
|
|
20289
|
-
moreBelow > 0 && /* @__PURE__ */ jsx25(Text21, {
|
|
20290
|
-
footerHint !== void 0 && /* @__PURE__ */ jsx25(Text21, {
|
|
20288
|
+
moreBelow > 0 && /* @__PURE__ */ jsx25(Text21, { color: PALETTE.muted, children: ` \u25BC ${moreBelow} more` }),
|
|
20289
|
+
footerHint !== void 0 && /* @__PURE__ */ jsx25(Text21, { color: PALETTE.muted, children: footerHint })
|
|
20291
20290
|
]
|
|
20292
20291
|
}
|
|
20293
20292
|
);
|
|
@@ -20390,7 +20389,7 @@ import { jsx as jsx27, jsxs as jsxs22 } from "react/jsx-runtime";
|
|
|
20390
20389
|
function legendEntry(keyBracket, label, active = false) {
|
|
20391
20390
|
return /* @__PURE__ */ jsxs22(Text23, { children: [
|
|
20392
20391
|
/* @__PURE__ */ jsx27(Text23, { color: active ? PALETTE.warning : PALETTE.info, inverse: active, children: keyBracket }),
|
|
20393
|
-
/* @__PURE__ */ jsx27(Text23, { color: active ? PALETTE.warning : void 0, inverse: active,
|
|
20392
|
+
/* @__PURE__ */ jsx27(Text23, { color: active ? PALETTE.warning : void 0, inverse: active, children: " " + label })
|
|
20394
20393
|
] }, keyBracket + label);
|
|
20395
20394
|
}
|
|
20396
20395
|
var init_LegendEntry = __esm({
|
|
@@ -20404,7 +20403,7 @@ var init_LegendEntry = __esm({
|
|
|
20404
20403
|
import { Box as Box22 } from "ink";
|
|
20405
20404
|
import { jsxs as jsxs23 } from "react/jsx-runtime";
|
|
20406
20405
|
function CompactControlBar({ hasGroupRoots, searchActive }) {
|
|
20407
|
-
return /* @__PURE__ */ jsxs23(Box22, { borderStyle: "single", borderColor: PALETTE.border, paddingX: 1,
|
|
20406
|
+
return /* @__PURE__ */ jsxs23(Box22, { borderStyle: "single", borderColor: PALETTE.border, paddingX: 1, flexWrap: "wrap", columnGap: 2, children: [
|
|
20408
20407
|
legendEntry("[\u2191/\u2193]", "move"),
|
|
20409
20408
|
legendEntry("[a/r]", "accept/reject"),
|
|
20410
20409
|
legendEntry("[f]", "continue/finalize"),
|
|
@@ -20433,29 +20432,30 @@ function CounterStrip(props) {
|
|
|
20433
20432
|
const labelUnd = condensed ? "Und" : "Undecided";
|
|
20434
20433
|
const sep = condensed ? " | " : " ";
|
|
20435
20434
|
return /* @__PURE__ */ jsx28(Box23, { children: /* @__PURE__ */ jsxs24(Text24, { children: [
|
|
20436
|
-
/* @__PURE__ */ jsxs24(Text24, {
|
|
20435
|
+
/* @__PURE__ */ jsxs24(Text24, { color: PALETTE.muted, children: [
|
|
20437
20436
|
labelGrp,
|
|
20438
20437
|
" "
|
|
20439
20438
|
] }),
|
|
20440
20439
|
/* @__PURE__ */ jsx28(Text24, { bold: true, children: counters.groups }),
|
|
20441
|
-
/* @__PURE__ */ jsx28(Text24, {
|
|
20442
|
-
/* @__PURE__ */ jsxs24(Text24, {
|
|
20440
|
+
/* @__PURE__ */ jsx28(Text24, { color: PALETTE.muted, children: sep }),
|
|
20441
|
+
/* @__PURE__ */ jsxs24(Text24, { color: PALETTE.muted, children: [
|
|
20443
20442
|
labelRej,
|
|
20444
20443
|
" "
|
|
20445
20444
|
] }),
|
|
20446
20445
|
/* @__PURE__ */ jsx28(Text24, { bold: true, children: counters.rejected }),
|
|
20447
|
-
/* @__PURE__ */ jsx28(Text24, {
|
|
20448
|
-
/* @__PURE__ */ jsxs24(Text24, {
|
|
20446
|
+
/* @__PURE__ */ jsx28(Text24, { color: PALETTE.muted, children: sep }),
|
|
20447
|
+
/* @__PURE__ */ jsxs24(Text24, { color: PALETTE.muted, children: [
|
|
20449
20448
|
labelUnd,
|
|
20450
20449
|
" "
|
|
20451
20450
|
] }),
|
|
20452
20451
|
/* @__PURE__ */ jsx28(Text24, { bold: true, children: counters.undecided }),
|
|
20453
|
-
/* @__PURE__ */ jsx28(Text24, {
|
|
20452
|
+
/* @__PURE__ */ jsx28(Text24, { color: PALETTE.muted, children: sep })
|
|
20454
20453
|
] }) });
|
|
20455
20454
|
}
|
|
20456
20455
|
var init_CounterStrip = __esm({
|
|
20457
20456
|
"packages/experience-design-system-cli-legacy/src/import/tui/components/CounterStrip.tsx"() {
|
|
20458
20457
|
"use strict";
|
|
20458
|
+
init_theme();
|
|
20459
20459
|
}
|
|
20460
20460
|
});
|
|
20461
20461
|
|
|
@@ -21408,12 +21408,14 @@ function ScopeGateStepView({
|
|
|
21408
21408
|
return /* @__PURE__ */ jsx29(HelpOverlay, { sections: HELP_SECTIONS, handleInput: false, onClose: () => setShowHelp(false) });
|
|
21409
21409
|
}
|
|
21410
21410
|
return /* @__PURE__ */ jsxs25(Box24, { flexDirection: "column", paddingX: 2, children: [
|
|
21411
|
-
/* @__PURE__ */
|
|
21412
|
-
|
|
21413
|
-
|
|
21414
|
-
|
|
21411
|
+
/* @__PURE__ */ jsxs25(Box24, { flexDirection: "row", flexWrap: "wrap", children: [
|
|
21412
|
+
/* @__PURE__ */ jsx29(CounterStrip, { counters, totalWidth }),
|
|
21413
|
+
hasAnyAi && /* @__PURE__ */ jsxs25(Text25, { color: PALETTE.muted, children: [
|
|
21414
|
+
`${aiExcludedCount} component${aiExcludedCount === 1 ? "" : "s"} flagged by AI`,
|
|
21415
|
+
aiRows.length > 0 && /* @__PURE__ */ jsx29(Text25, { color: PALETTE.info, children: " \u2014 press [x] to see why" })
|
|
21416
|
+
] })
|
|
21415
21417
|
] }),
|
|
21416
|
-
hasCycles && /* @__PURE__ */ jsx29(Box24, { marginTop: 1, children: /* @__PURE__ */ jsx29(Text25, {
|
|
21418
|
+
hasCycles && /* @__PURE__ */ jsx29(Box24, { marginTop: 1, children: /* @__PURE__ */ jsx29(Text25, { color: PALETTE.muted, children: "If you must have components with cycles, select them together into the generate step and then use the editor to fix them." }) }),
|
|
21417
21419
|
/* @__PURE__ */ jsxs25(Box24, { flexDirection: "row", alignItems: "stretch", children: [
|
|
21418
21420
|
aiRationalePanel.isOpen ? /* @__PURE__ */ jsx29(
|
|
21419
21421
|
GotoBanner,
|
|
@@ -21486,13 +21488,13 @@ function ScopeGateStepView({
|
|
|
21486
21488
|
/* @__PURE__ */ jsx29(Text25, { color: PALETTE.warning, inverse: isCursor, children: " " + label })
|
|
21487
21489
|
] }, i);
|
|
21488
21490
|
}),
|
|
21489
|
-
/* @__PURE__ */ jsx29(Text25, {
|
|
21491
|
+
/* @__PURE__ */ jsx29(Text25, { children: "[\u2191/\u2193] move \xB7 [Enter] jump \xB7 [c/Esc] close" })
|
|
21490
21492
|
] }),
|
|
21491
21493
|
pendingRejectCascade && /* @__PURE__ */ jsxs25(Box24, { flexDirection: "column", borderStyle: "single", borderColor: PALETTE.warning, paddingX: 1, marginTop: 1, children: [
|
|
21492
21494
|
/* @__PURE__ */ jsx29(Text25, { bold: true, color: PALETTE.warning, children: `Rejecting ${pendingRejectCascade.target} will:` }),
|
|
21493
21495
|
pendingRejectCascade.ancestors.length > 0 && /* @__PURE__ */ jsx29(Text25, { children: `- Reject ancestors: ${pendingRejectCascade.ancestors.join(", ")}` }),
|
|
21494
21496
|
pendingRejectCascade.descendants.length > 0 && /* @__PURE__ */ jsx29(Text25, { children: `- Deselect descendants: ${pendingRejectCascade.descendants.join(", ")}` }),
|
|
21495
|
-
/* @__PURE__ */ jsx29(Text25, {
|
|
21497
|
+
/* @__PURE__ */ jsx29(Text25, { children: "[y] confirm \xB7 [n]/[Esc] cancel" })
|
|
21496
21498
|
] }),
|
|
21497
21499
|
/* @__PURE__ */ jsx29(
|
|
21498
21500
|
SearchMatchSummary,
|
|
@@ -21561,7 +21563,7 @@ function AddedColumn(props) {
|
|
|
21561
21563
|
const window = computeColumnWindow(entries.length, cursor, Math.max(1, visibleCount));
|
|
21562
21564
|
return /* @__PURE__ */ jsxs25(WindowedPanel, { width, height, title, focused, children: [
|
|
21563
21565
|
/* @__PURE__ */ jsx29(WindowIndicator, { direction: "up", count: window.above }),
|
|
21564
|
-
entries.length === 0 ? /* @__PURE__ */ jsx29(Text25, {
|
|
21566
|
+
entries.length === 0 ? /* @__PURE__ */ jsx29(Text25, { color: PALETTE.muted, children: "(none)" }) : entries.slice(window.start, window.end).map((entry, vi) => {
|
|
21565
21567
|
const i = window.start + vi;
|
|
21566
21568
|
const isSelected = i === cursor;
|
|
21567
21569
|
const isCursor = focused && isSelected;
|
|
@@ -22178,7 +22180,7 @@ function serializeState(state, originalJson) {
|
|
|
22178
22180
|
function Picker({ value, active }) {
|
|
22179
22181
|
return /* @__PURE__ */ jsxs26(Box25, { children: [
|
|
22180
22182
|
active && /* @__PURE__ */ jsx30(Text26, { color: PALETTE.warning, children: "\u2039" }),
|
|
22181
|
-
/* @__PURE__ */ jsx30(Text26, { color: active ? PALETTE.warning :
|
|
22183
|
+
/* @__PURE__ */ jsx30(Text26, { color: active ? PALETTE.warning : void 0, bold: active, children: value }),
|
|
22182
22184
|
active && /* @__PURE__ */ jsx30(Text26, { color: PALETTE.warning, children: "\u203A" })
|
|
22183
22185
|
] });
|
|
22184
22186
|
}
|
|
@@ -22193,7 +22195,7 @@ function InlinePropField({
|
|
|
22193
22195
|
width
|
|
22194
22196
|
}) {
|
|
22195
22197
|
return /* @__PURE__ */ jsxs26(Box25, { width, gap: 1, flexShrink: flexible ? 1 : 0, flexGrow: flexible ? 1 : 0, flexWrap: "wrap", children: [
|
|
22196
|
-
/* @__PURE__ */ jsxs26(Text26, { color: focused ? PALETTE.warning :
|
|
22198
|
+
/* @__PURE__ */ jsxs26(Text26, { color: focused ? PALETTE.warning : PALETTE.muted, bold: focused, wrap: "truncate-end", children: [
|
|
22197
22199
|
focused ? "\u203A " : " ",
|
|
22198
22200
|
label
|
|
22199
22201
|
] }),
|
|
@@ -22214,11 +22216,11 @@ function DefaultValueRow({
|
|
|
22214
22216
|
focused
|
|
22215
22217
|
}) {
|
|
22216
22218
|
return /* @__PURE__ */ jsxs26(Box25, { gap: 1, flexWrap: "wrap", flexShrink: 0, children: [
|
|
22217
|
-
/* @__PURE__ */ jsxs26(Text26, { color: focused ? PALETTE.warning :
|
|
22219
|
+
/* @__PURE__ */ jsxs26(Text26, { color: focused ? PALETTE.warning : PALETTE.muted, bold: focused, children: [
|
|
22218
22220
|
focused ? "\u203A " : " ",
|
|
22219
22221
|
"default:"
|
|
22220
22222
|
] }),
|
|
22221
|
-
active ? /* @__PURE__ */ jsx30(Picker, { value: display, active: true }) : /* @__PURE__ */ jsx30(Text26, {
|
|
22223
|
+
active ? /* @__PURE__ */ jsx30(Picker, { value: display, active: true }) : /* @__PURE__ */ jsx30(Text26, { wrap: "wrap", children: display })
|
|
22222
22224
|
] });
|
|
22223
22225
|
}
|
|
22224
22226
|
function RowLabel({
|
|
@@ -22264,7 +22266,7 @@ function EditableListItem({
|
|
|
22264
22266
|
if (isBeingEdited) {
|
|
22265
22267
|
return /* @__PURE__ */ jsx30(ValueInputRow, { mode: "edit", valueText, cursorVisible });
|
|
22266
22268
|
}
|
|
22267
|
-
return /* @__PURE__ */ jsx30(Box25, { gap: 1, paddingLeft: 2, children: /* @__PURE__ */ jsx30(Text26, { color: active ? PALETTE.info :
|
|
22269
|
+
return /* @__PURE__ */ jsx30(Box25, { gap: 1, paddingLeft: 2, children: /* @__PURE__ */ jsx30(Text26, { color: active ? PALETTE.info : void 0, children: active ? `${figures4.pointer} ${value}` : ` ${value}` }) });
|
|
22268
22270
|
}
|
|
22269
22271
|
function EditableValueList({
|
|
22270
22272
|
values,
|
|
@@ -22278,7 +22280,7 @@ function EditableValueList({
|
|
|
22278
22280
|
showAddInput
|
|
22279
22281
|
}) {
|
|
22280
22282
|
return /* @__PURE__ */ jsxs26(Fragment10, { children: [
|
|
22281
|
-
values.length === 0 && !editingValue && (emptyPaddingLeft === void 0 ? /* @__PURE__ */ jsx30(Text26, {
|
|
22283
|
+
values.length === 0 && !editingValue && (emptyPaddingLeft === void 0 ? /* @__PURE__ */ jsx30(Text26, { color: PALETTE.muted, children: emptyMessage }) : /* @__PURE__ */ jsx30(Box25, { paddingLeft: emptyPaddingLeft, children: /* @__PURE__ */ jsx30(Text26, { color: PALETTE.muted, children: emptyMessage }) })),
|
|
22282
22284
|
values.map((value, index) => /* @__PURE__ */ jsx30(
|
|
22283
22285
|
EditableListItem,
|
|
22284
22286
|
{
|
|
@@ -22304,11 +22306,11 @@ function DefaultSubRow({
|
|
|
22304
22306
|
const cursor = cursorVisible ? "\u2588" : " ";
|
|
22305
22307
|
if (prop.type === "richtext" || prop.type === "media" || prop.type === "link") {
|
|
22306
22308
|
return /* @__PURE__ */ jsxs26(Box25, { gap: 1, flexShrink: 0, children: [
|
|
22307
|
-
/* @__PURE__ */ jsxs26(Text26, { color: focused ? PALETTE.warning :
|
|
22309
|
+
/* @__PURE__ */ jsxs26(Text26, { color: focused ? PALETTE.warning : PALETTE.muted, bold: focused, children: [
|
|
22308
22310
|
focused ? "\u203A " : " ",
|
|
22309
22311
|
"default:"
|
|
22310
22312
|
] }),
|
|
22311
|
-
/* @__PURE__ */ jsx30(Text26, {
|
|
22313
|
+
/* @__PURE__ */ jsx30(Text26, { color: focused ? void 0 : PALETTE.muted, children: "(not applicable)" })
|
|
22312
22314
|
] });
|
|
22313
22315
|
}
|
|
22314
22316
|
if (prop.type === "boolean") {
|
|
@@ -22318,11 +22320,11 @@ function DefaultSubRow({
|
|
|
22318
22320
|
if (prop.type === "enum") {
|
|
22319
22321
|
if (prop.values.length === 0) {
|
|
22320
22322
|
return /* @__PURE__ */ jsxs26(Box25, { gap: 1, flexShrink: 0, children: [
|
|
22321
|
-
/* @__PURE__ */ jsxs26(Text26, { color: focused ? PALETTE.warning :
|
|
22323
|
+
/* @__PURE__ */ jsxs26(Text26, { color: focused ? PALETTE.warning : PALETTE.muted, bold: focused, children: [
|
|
22322
22324
|
focused ? "\u203A " : " ",
|
|
22323
22325
|
"default:"
|
|
22324
22326
|
] }),
|
|
22325
|
-
/* @__PURE__ */ jsx30(Text26, {
|
|
22327
|
+
/* @__PURE__ */ jsx30(Text26, { color: focused ? void 0 : PALETTE.muted, children: "(no values defined)" })
|
|
22326
22328
|
] });
|
|
22327
22329
|
}
|
|
22328
22330
|
const display = typeof prop.default === "string" && prop.default !== "" ? prop.default : "(unset)";
|
|
@@ -22331,7 +22333,7 @@ function DefaultSubRow({
|
|
|
22331
22333
|
const value = typeof prop.default === "string" ? prop.default : "";
|
|
22332
22334
|
if (active) {
|
|
22333
22335
|
return /* @__PURE__ */ jsxs26(Box25, { flexDirection: "row", flexShrink: 0, children: [
|
|
22334
|
-
/* @__PURE__ */ jsxs26(Text26, { color: focused ? PALETTE.warning :
|
|
22336
|
+
/* @__PURE__ */ jsxs26(Text26, { color: focused ? PALETTE.warning : PALETTE.muted, bold: focused, children: [
|
|
22335
22337
|
focused ? "\u203A " : " ",
|
|
22336
22338
|
"default:"
|
|
22337
22339
|
] }),
|
|
@@ -22343,11 +22345,11 @@ function DefaultSubRow({
|
|
|
22343
22345
|
] });
|
|
22344
22346
|
}
|
|
22345
22347
|
return /* @__PURE__ */ jsxs26(Box25, { gap: 1, flexShrink: 0, children: [
|
|
22346
|
-
/* @__PURE__ */ jsxs26(Text26, { color: focused ? PALETTE.warning :
|
|
22348
|
+
/* @__PURE__ */ jsxs26(Text26, { color: focused ? PALETTE.warning : PALETTE.muted, bold: focused, children: [
|
|
22347
22349
|
focused ? "\u203A " : " ",
|
|
22348
22350
|
"default:"
|
|
22349
22351
|
] }),
|
|
22350
|
-
/* @__PURE__ */ jsx30(Text26, { color: focused
|
|
22352
|
+
/* @__PURE__ */ jsx30(Text26, { color: focused || value ? void 0 : PALETTE.muted, children: value || "(none)" })
|
|
22351
22353
|
] });
|
|
22352
22354
|
}
|
|
22353
22355
|
function DescriptionField({
|
|
@@ -22363,15 +22365,15 @@ function DescriptionField({
|
|
|
22363
22365
|
}) {
|
|
22364
22366
|
if (compact) {
|
|
22365
22367
|
return /* @__PURE__ */ jsxs26(Box25, { gap: 1, flexWrap: "wrap", width, flexShrink: 0, children: [
|
|
22366
|
-
/* @__PURE__ */ jsxs26(Text26, { color: focused ? PALETTE.warning :
|
|
22368
|
+
/* @__PURE__ */ jsxs26(Text26, { color: focused ? PALETTE.warning : PALETTE.muted, bold: focused, children: [
|
|
22367
22369
|
focused ? "\u203A " : " ",
|
|
22368
22370
|
label
|
|
22369
22371
|
] }),
|
|
22370
|
-
/* @__PURE__ */ jsx30(Text26, { wrap: "truncate-end",
|
|
22372
|
+
/* @__PURE__ */ jsx30(Text26, { wrap: "truncate-end", color: value ? void 0 : PALETTE.muted, children: value || "\u2014" })
|
|
22371
22373
|
] });
|
|
22372
22374
|
}
|
|
22373
22375
|
return /* @__PURE__ */ jsxs26(Box25, { paddingLeft, flexDirection: "column", width, flexShrink: 0, children: [
|
|
22374
|
-
/* @__PURE__ */ jsxs26(Text26, { color: focused ? PALETTE.warning :
|
|
22376
|
+
/* @__PURE__ */ jsxs26(Text26, { color: focused ? PALETTE.warning : PALETTE.muted, bold: focused, children: [
|
|
22375
22377
|
focused ? "\u203A " : " ",
|
|
22376
22378
|
label
|
|
22377
22379
|
] }),
|
|
@@ -22431,23 +22433,15 @@ function PropRow({
|
|
|
22431
22433
|
activeField
|
|
22432
22434
|
}
|
|
22433
22435
|
),
|
|
22434
|
-
/* @__PURE__ */ jsx30(InlinePropField, { label: "type:", focused: activeField === "type", children: editingField && activeField === "type" ? /* @__PURE__ */ jsx30(Picker, { value: prop.type, active: true }) : /* @__PURE__ */ jsx30(Text26, {
|
|
22436
|
+
/* @__PURE__ */ jsx30(InlinePropField, { label: "type:", focused: activeField === "type", children: editingField && activeField === "type" ? /* @__PURE__ */ jsx30(Picker, { value: prop.type, active: true }) : /* @__PURE__ */ jsx30(Text26, { children: prop.type }) })
|
|
22435
22437
|
] }),
|
|
22436
|
-
prop.type === "token" && /* @__PURE__ */ jsx30(InlinePropField, { label: "kind:", focused: activeField === "tokenKind", width, children: editingField && activeField === "tokenKind" ? /* @__PURE__ */ jsx30(Picker, { value: prop.tokenKind || DESIGN_TOKEN_TYPES2[0], active: true }) : /* @__PURE__ */ jsx30(Text26, {
|
|
22438
|
+
prop.type === "token" && /* @__PURE__ */ jsx30(InlinePropField, { label: "kind:", focused: activeField === "tokenKind", width, children: editingField && activeField === "tokenKind" ? /* @__PURE__ */ jsx30(Picker, { value: prop.tokenKind || DESIGN_TOKEN_TYPES2[0], active: true }) : /* @__PURE__ */ jsx30(Text26, { wrap: "wrap", children: prop.tokenKind || "\u2014" }) }),
|
|
22437
22439
|
prop.type === "enum" && /* @__PURE__ */ jsxs26(Box25, { gap: 1, flexWrap: "wrap", width, flexShrink: 0, children: [
|
|
22438
|
-
/* @__PURE__ */ jsxs26(
|
|
22439
|
-
|
|
22440
|
-
|
|
22441
|
-
|
|
22442
|
-
|
|
22443
|
-
dimColor: activeField !== "values",
|
|
22444
|
-
children: [
|
|
22445
|
-
activeField === "values" ? "\u203A " : " ",
|
|
22446
|
-
"values:"
|
|
22447
|
-
]
|
|
22448
|
-
}
|
|
22449
|
-
),
|
|
22450
|
-
/* @__PURE__ */ jsxs26(Text26, { color: activeField === "values" ? PALETTE.inverse : selected ? PALETTE.inverse : void 0, wrap: "wrap", children: [
|
|
22440
|
+
/* @__PURE__ */ jsxs26(Text26, { color: activeField === "values" ? PALETTE.warning : PALETTE.muted, bold: activeField === "values", children: [
|
|
22441
|
+
activeField === "values" ? "\u203A " : " ",
|
|
22442
|
+
"values:"
|
|
22443
|
+
] }),
|
|
22444
|
+
/* @__PURE__ */ jsxs26(Text26, { wrap: "wrap", children: [
|
|
22451
22445
|
"[",
|
|
22452
22446
|
prop.values.join(", "),
|
|
22453
22447
|
"]"
|
|
@@ -22464,37 +22458,28 @@ function PropRow({
|
|
|
22464
22458
|
}
|
|
22465
22459
|
),
|
|
22466
22460
|
prop.type === "token" && prop.category === "design" && /* @__PURE__ */ jsxs26(Box25, { gap: 1, flexWrap: "wrap", width, flexShrink: 0, children: [
|
|
22467
|
-
/* @__PURE__ */ jsxs26(
|
|
22468
|
-
|
|
22469
|
-
|
|
22470
|
-
|
|
22471
|
-
|
|
22472
|
-
dimColor: activeField !== "allowed",
|
|
22473
|
-
children: [
|
|
22474
|
-
activeField === "allowed" ? "\u203A " : " ",
|
|
22475
|
-
"allowed:"
|
|
22476
|
-
]
|
|
22477
|
-
}
|
|
22478
|
-
),
|
|
22479
|
-
editingField && activeField === "allowed" ? /* @__PURE__ */ jsx30(Box25, { width: Math.max(1, width - 4), borderStyle: "round", borderColor: PALETTE.warning, paddingX: 1, children: /* @__PURE__ */ jsx30(Text26, { dimColor: true, children: "press [t] to edit allowed tokens" }) }) : /* @__PURE__ */ jsx30(
|
|
22461
|
+
/* @__PURE__ */ jsxs26(Text26, { color: activeField === "allowed" ? PALETTE.warning : PALETTE.muted, bold: activeField === "allowed", children: [
|
|
22462
|
+
activeField === "allowed" ? "\u203A " : " ",
|
|
22463
|
+
"allowed:"
|
|
22464
|
+
] }),
|
|
22465
|
+
editingField && activeField === "allowed" ? /* @__PURE__ */ jsx30(Box25, { width: Math.max(1, width - 4), borderStyle: "round", borderColor: PALETTE.warning, paddingX: 1, children: /* @__PURE__ */ jsx30(Text26, { children: "press [t] to edit allowed tokens" }) }) : /* @__PURE__ */ jsx30(
|
|
22480
22466
|
Text26,
|
|
22481
22467
|
{
|
|
22482
|
-
color: activeField
|
|
22483
|
-
dimColor: prop.allowed.length === 0 && activeField !== "allowed",
|
|
22468
|
+
color: activeField !== "allowed" && prop.allowed.length === 0 ? PALETTE.muted : void 0,
|
|
22484
22469
|
wrap: "wrap",
|
|
22485
22470
|
children: prop.allowed.length > 0 ? prop.allowed.join(", ") : "(any)"
|
|
22486
22471
|
}
|
|
22487
22472
|
)
|
|
22488
22473
|
] }),
|
|
22489
|
-
selected && showRationale && rationale && rationale.trim().length > 0 && /* @__PURE__ */ jsx30(Box25, { paddingLeft: 2, children: /* @__PURE__ */ jsx30(Text26, {
|
|
22474
|
+
selected && showRationale && rationale && rationale.trim().length > 0 && /* @__PURE__ */ jsx30(Box25, { paddingLeft: 2, children: /* @__PURE__ */ jsx30(Text26, { color: PALETTE.muted, children: (() => {
|
|
22490
22475
|
const max = Math.max(8, width - 8);
|
|
22491
22476
|
const text = `~ ${rationale}`;
|
|
22492
22477
|
return text.length > max ? text.slice(0, max - 1) + "\u2026" : text;
|
|
22493
22478
|
})() }) }, rowKey ? `rationale-${rowKey}` : void 0),
|
|
22494
22479
|
selected && prop.type === "enum" && activeField === "values" && /* @__PURE__ */ jsxs26(Box25, { paddingLeft: 2, flexDirection: "column", children: [
|
|
22495
22480
|
/* @__PURE__ */ jsxs26(Box25, { children: [
|
|
22496
|
-
/* @__PURE__ */ jsx30(Text26, {
|
|
22497
|
-
activeField === "values" && /* @__PURE__ */ jsx30(Text26, {
|
|
22481
|
+
/* @__PURE__ */ jsx30(Text26, { color: PALETTE.muted, children: "values:" }),
|
|
22482
|
+
activeField === "values" && /* @__PURE__ */ jsx30(Text26, { children: " [a] add [e] edit [r] remove [\u2191\u2193] navigate [K/J] reorder" })
|
|
22498
22483
|
] }),
|
|
22499
22484
|
/* @__PURE__ */ jsx30(
|
|
22500
22485
|
EditableValueList,
|
|
@@ -22554,32 +22539,30 @@ function SlotRow({
|
|
|
22554
22539
|
/* @__PURE__ */ jsxs26(
|
|
22555
22540
|
Text26,
|
|
22556
22541
|
{
|
|
22557
|
-
color: activeField === "allowedComponents" ? PALETTE.warning :
|
|
22542
|
+
color: activeField === "allowedComponents" ? PALETTE.warning : PALETTE.muted,
|
|
22558
22543
|
bold: activeField === "allowedComponents",
|
|
22559
|
-
dimColor: activeField !== "allowedComponents",
|
|
22560
22544
|
children: [
|
|
22561
22545
|
activeField === "allowedComponents" ? "\u203A " : " ",
|
|
22562
22546
|
"allowed:"
|
|
22563
22547
|
]
|
|
22564
22548
|
}
|
|
22565
22549
|
),
|
|
22566
|
-
slot.allowedComponents.length === 0 ? /* @__PURE__ */ jsx30(Text26, {
|
|
22550
|
+
slot.allowedComponents.length === 0 ? /* @__PURE__ */ jsx30(Text26, { color: PALETTE.muted, children: "(any)" }) : /* @__PURE__ */ jsx30(Text26, { wrap: "wrap", children: slot.allowedComponents.join(", ") })
|
|
22567
22551
|
] }),
|
|
22568
22552
|
selected && editingField && activeField === "allowedComponents" && /* @__PURE__ */ jsxs26(Box25, { flexDirection: "column", children: [
|
|
22569
22553
|
/* @__PURE__ */ jsxs26(Box25, { children: [
|
|
22570
22554
|
/* @__PURE__ */ jsxs26(
|
|
22571
22555
|
Text26,
|
|
22572
22556
|
{
|
|
22573
|
-
color: activeField === "allowedComponents" ? PALETTE.warning :
|
|
22557
|
+
color: activeField === "allowedComponents" ? PALETTE.warning : PALETTE.muted,
|
|
22574
22558
|
bold: activeField === "allowedComponents",
|
|
22575
|
-
dimColor: activeField !== "allowedComponents",
|
|
22576
22559
|
children: [
|
|
22577
22560
|
activeField === "allowedComponents" ? "\u203A " : " ",
|
|
22578
22561
|
"allowed:"
|
|
22579
22562
|
]
|
|
22580
22563
|
}
|
|
22581
22564
|
),
|
|
22582
|
-
editingField && activeField === "allowedComponents" && /* @__PURE__ */ jsx30(Text26, {
|
|
22565
|
+
editingField && activeField === "allowedComponents" && /* @__PURE__ */ jsx30(Text26, { color: PALETTE.muted, children: slot.allowedComponents.length > 0 ? " [a] add [e] edit [r] remove [\u2190\u2192] cycle [\u2191\u2193] navigate [K/J] reorder" : " [a] add [e] edit [r] remove [\u2191\u2193] navigate [K/J] reorder" })
|
|
22583
22566
|
] }),
|
|
22584
22567
|
/* @__PURE__ */ jsx30(
|
|
22585
22568
|
EditableValueList,
|
|
@@ -22595,21 +22578,21 @@ function SlotRow({
|
|
|
22595
22578
|
showAddInput: editingField && activeField === "allowedComponents"
|
|
22596
22579
|
}
|
|
22597
22580
|
),
|
|
22598
|
-
editingField && editingValue?.mode === "add" && activeField === "allowedComponents" && pickerCandidates !== null && /* @__PURE__ */ jsx30(Box25, { paddingLeft: 2, flexDirection: "column", children: pickerCandidates.length === 0 ? /* @__PURE__ */ jsx30(Text26, {
|
|
22581
|
+
editingField && editingValue?.mode === "add" && activeField === "allowedComponents" && pickerCandidates !== null && /* @__PURE__ */ jsx30(Box25, { paddingLeft: 2, flexDirection: "column", children: pickerCandidates.length === 0 ? /* @__PURE__ */ jsx30(Text26, { color: PALETTE.muted, children: "(no valid components to add \u2014 all remaining candidates would create cycles)" }) : (() => {
|
|
22599
22582
|
const filtered = valueText.length === 0 ? pickerCandidates : pickerCandidates.filter((n) => n.toLowerCase().includes(valueText.toLowerCase()));
|
|
22600
22583
|
if (filtered.length === 0) {
|
|
22601
|
-
return /* @__PURE__ */ jsx30(Text26, {
|
|
22584
|
+
return /* @__PURE__ */ jsx30(Text26, { color: PALETTE.muted, children: "(no candidates match \u2014 Enter to add as free text)" });
|
|
22602
22585
|
}
|
|
22603
22586
|
const cursor = pickerCursor % filtered.length;
|
|
22604
22587
|
const MAX_VISIBLE = 5;
|
|
22605
22588
|
const start = Math.max(0, Math.min(filtered.length - MAX_VISIBLE, cursor - 2));
|
|
22606
22589
|
const slice = filtered.slice(start, start + MAX_VISIBLE);
|
|
22607
22590
|
return /* @__PURE__ */ jsxs26(Box25, { flexDirection: "column", children: [
|
|
22608
|
-
/* @__PURE__ */ jsx30(Text26, {
|
|
22591
|
+
/* @__PURE__ */ jsx30(Text26, { color: PALETTE.muted, children: " candidates (\u2191\u2193 cycle, Enter to add):" }),
|
|
22609
22592
|
slice.map((name, i) => {
|
|
22610
22593
|
const absIdx = start + i;
|
|
22611
22594
|
const isCursor = absIdx === cursor;
|
|
22612
|
-
return /* @__PURE__ */ jsx30(Text26, { color: isCursor ? PALETTE.info :
|
|
22595
|
+
return /* @__PURE__ */ jsx30(Text26, { color: isCursor ? PALETTE.info : PALETTE.muted, children: isCursor ? ` ${figures4.pointer} ${name}` : ` ${name}` }, name);
|
|
22613
22596
|
})
|
|
22614
22597
|
] });
|
|
22615
22598
|
})() })
|
|
@@ -23440,15 +23423,15 @@ function FieldEditor({
|
|
|
23440
23423
|
return /* @__PURE__ */ jsxs26(Box25, { flexDirection: "column", width, borderStyle: "single", borderColor: PALETTE.error, children: [
|
|
23441
23424
|
/* @__PURE__ */ jsx30(Text26, { bold: true, color: PALETTE.error, children: "FIELD EDITOR \u2014 parse error" }),
|
|
23442
23425
|
/* @__PURE__ */ jsx30(Text26, { color: PALETTE.error, children: parseErr }),
|
|
23443
|
-
/* @__PURE__ */ jsx30(Text26, {
|
|
23426
|
+
/* @__PURE__ */ jsx30(Text26, { color: PALETTE.muted, children: "Cannot display structured editor. Fix the JSON first." })
|
|
23444
23427
|
] });
|
|
23445
23428
|
}
|
|
23446
23429
|
if (props.length === 0 && slots.length === 0) {
|
|
23447
23430
|
return /* @__PURE__ */ jsxs26(Box25, { flexDirection: "column", width, borderStyle: "single", borderColor: PALETTE.warning, children: [
|
|
23448
23431
|
/* @__PURE__ */ jsx30(Text26, { bold: true, color: PALETTE.warning, children: "FIELD EDITOR \u2014 no fields" }),
|
|
23449
23432
|
/* @__PURE__ */ jsx30(Text26, { color: PALETTE.warning, children: "\u26A0 No properties classified for this component. The LLM didn't find anything to classify." }),
|
|
23450
|
-
/* @__PURE__ */ jsx30(Text26, {
|
|
23451
|
-
/* @__PURE__ */ jsx30(Text26, {
|
|
23433
|
+
/* @__PURE__ */ jsx30(Text26, { color: PALETTE.muted, children: "You can add fields manually below or reject this component." }),
|
|
23434
|
+
/* @__PURE__ */ jsx30(Text26, { color: PALETTE.muted, children: "Enter to save \xB7 Esc to discard" })
|
|
23452
23435
|
] });
|
|
23453
23436
|
}
|
|
23454
23437
|
const hasEmptyProperties = props.length === 0 && slots.length === 0;
|
|
@@ -23722,16 +23705,16 @@ function FieldEditor({
|
|
|
23722
23705
|
const headerPath = path ?? "<unknown source path>";
|
|
23723
23706
|
if (!start || !end2 || !src) {
|
|
23724
23707
|
return /* @__PURE__ */ jsxs26(Box25, { flexDirection: "column", borderStyle: "single", borderColor: "gray", paddingX: 1, children: [
|
|
23725
|
-
/* @__PURE__ */ jsx30(Text26, {
|
|
23726
|
-
/* @__PURE__ */ jsx30(Text26, {
|
|
23727
|
-
/* @__PURE__ */ jsx30(Text26, {
|
|
23708
|
+
/* @__PURE__ */ jsx30(Text26, { color: PALETTE.muted, bold: true, children: `source: ${headerPath}` }),
|
|
23709
|
+
/* @__PURE__ */ jsx30(Text26, { color: PALETTE.muted, children: "(no source location captured for this prop)" }),
|
|
23710
|
+
/* @__PURE__ */ jsx30(Text26, { children: "[s] close" })
|
|
23728
23711
|
] });
|
|
23729
23712
|
}
|
|
23730
23713
|
const lines = src.split("\n").slice(Math.max(0, start - 1), end2);
|
|
23731
23714
|
return /* @__PURE__ */ jsxs26(Box25, { flexDirection: "column", borderStyle: "single", borderColor: "gray", paddingX: 1, children: [
|
|
23732
|
-
/* @__PURE__ */ jsx30(Text26, {
|
|
23733
|
-
lines.map((ln, i) => /* @__PURE__ */ jsx30(Text26, {
|
|
23734
|
-
/* @__PURE__ */ jsx30(Text26, {
|
|
23715
|
+
/* @__PURE__ */ jsx30(Text26, { color: PALETTE.muted, bold: true, children: `${headerPath}: lines ${start}\u2013${end2}` }),
|
|
23716
|
+
lines.map((ln, i) => /* @__PURE__ */ jsx30(Text26, { color: PALETTE.muted, children: ln }, `source-line-${i}`)),
|
|
23717
|
+
/* @__PURE__ */ jsx30(Text26, { children: "[s] close \xB7 [Esc] close" })
|
|
23735
23718
|
] });
|
|
23736
23719
|
})(),
|
|
23737
23720
|
showHelp && /* @__PURE__ */ jsxs26(Box25, { flexDirection: "column", borderStyle: "round", borderColor: PALETTE.info, paddingX: 1, children: [
|
|
@@ -23760,10 +23743,10 @@ function FieldEditor({
|
|
|
23760
23743
|
/* @__PURE__ */ jsx30(Text26, { children: " " + componentRationaleKey.padEnd(16) + " toggle component rationale panel" }),
|
|
23761
23744
|
/* @__PURE__ */ jsx30(Text26, { children: " ? toggle this overlay" }),
|
|
23762
23745
|
/* @__PURE__ */ jsx30(Text26, { children: " " }),
|
|
23763
|
-
/* @__PURE__ */ jsx30(Text26, {
|
|
23746
|
+
/* @__PURE__ */ jsx30(Text26, { color: PALETTE.muted, children: "press ? or Esc to close" })
|
|
23764
23747
|
] }),
|
|
23765
23748
|
validationError && /* @__PURE__ */ jsx30(Text26, { color: PALETTE.error, children: "\u2717 " + validationError }),
|
|
23766
|
-
/* @__PURE__ */ jsx30(Box25, { paddingTop: 1, children: /* @__PURE__ */ jsx30(Text26, {
|
|
23749
|
+
/* @__PURE__ */ jsx30(Box25, { paddingTop: 1, children: /* @__PURE__ */ jsx30(Text26, { color: PALETTE.muted, children: modeLabel }) })
|
|
23767
23750
|
]
|
|
23768
23751
|
}
|
|
23769
23752
|
);
|
|
@@ -23826,16 +23809,16 @@ function RationaleLine({ line, active }) {
|
|
|
23826
23809
|
return /* @__PURE__ */ jsx31(Box26, { children: /* @__PURE__ */ jsx31(Text27, { children: " " }) });
|
|
23827
23810
|
}
|
|
23828
23811
|
if (line.kind === "heading") {
|
|
23829
|
-
return /* @__PURE__ */ jsx31(Box26, { children: /* @__PURE__ */ jsx31(Text27, { bold: true, color: PALETTE.info
|
|
23812
|
+
return /* @__PURE__ */ jsx31(Box26, { children: /* @__PURE__ */ jsx31(Text27, { bold: true, color: active ? PALETTE.info : PALETTE.muted, children: line.text }) });
|
|
23830
23813
|
}
|
|
23831
23814
|
if (line.kind === "label") {
|
|
23832
23815
|
return /* @__PURE__ */ jsxs27(Box26, { children: [
|
|
23833
23816
|
line.prefix && /* @__PURE__ */ jsx31(Text27, { children: line.prefix }),
|
|
23834
|
-
/* @__PURE__ */ jsx31(Text27, { bold: true, color: line.color
|
|
23835
|
-
line.suffix && /* @__PURE__ */ jsx31(Text27, {
|
|
23817
|
+
/* @__PURE__ */ jsx31(Text27, { bold: true, color: active ? line.color : PALETTE.muted, children: line.text }),
|
|
23818
|
+
line.suffix && /* @__PURE__ */ jsx31(Text27, { color: PALETTE.muted, children: line.suffix })
|
|
23836
23819
|
] });
|
|
23837
23820
|
}
|
|
23838
|
-
return /* @__PURE__ */ jsx31(Box26, { children: /* @__PURE__ */ jsx31(Text27, {
|
|
23821
|
+
return /* @__PURE__ */ jsx31(Box26, { children: /* @__PURE__ */ jsx31(Text27, { color: !active || line.dim ? PALETTE.muted : void 0, children: line.text }) });
|
|
23839
23822
|
}
|
|
23840
23823
|
var init_RationaleLine = __esm({
|
|
23841
23824
|
"packages/experience-design-system-cli-legacy/src/analyze/select/tui/components/RationaleLine.tsx"() {
|
|
@@ -23922,9 +23905,9 @@ function ComponentRationalePanel({
|
|
|
23922
23905
|
borderStyle: "single",
|
|
23923
23906
|
borderColor: active ? PALETTE.inverse : void 0,
|
|
23924
23907
|
children: [
|
|
23925
|
-
/* @__PURE__ */ jsx32(Box27, { children: /* @__PURE__ */ jsx32(Text28, { bold: true,
|
|
23908
|
+
/* @__PURE__ */ jsx32(Box27, { children: /* @__PURE__ */ jsx32(Text28, { bold: true, color: active ? void 0 : PALETTE.muted, children: `Component rationale: ${data.name}` }) }),
|
|
23926
23909
|
visible.map((line, i) => /* @__PURE__ */ jsx32(RationaleLine, { line, active }, i)),
|
|
23927
|
-
/* @__PURE__ */ jsx32(Box27, { children: overflowed ? /* @__PURE__ */ jsx32(Text28, {
|
|
23910
|
+
/* @__PURE__ */ jsx32(Box27, { children: overflowed ? /* @__PURE__ */ jsx32(Text28, { children: `${visibleStart}-${visibleEnd}/${totalLines} [\u2191\u2193] scroll [I/Esc] close` }) : /* @__PURE__ */ jsx32(Text28, { children: "[I/Esc] close" }) })
|
|
23928
23911
|
]
|
|
23929
23912
|
}
|
|
23930
23913
|
);
|
|
@@ -23944,11 +23927,12 @@ var init_ComponentRationalePanel = __esm({
|
|
|
23944
23927
|
import { Text as Text29 } from "ink";
|
|
23945
23928
|
import { Fragment as Fragment11, jsx as jsx33 } from "react/jsx-runtime";
|
|
23946
23929
|
function HighlightedLine({ parts }) {
|
|
23947
|
-
return /* @__PURE__ */ jsx33(Fragment11, { children: parts.map((part, i) => /* @__PURE__ */ jsx33(Text29, { color: part.
|
|
23930
|
+
return /* @__PURE__ */ jsx33(Fragment11, { children: parts.map((part, i) => /* @__PURE__ */ jsx33(Text29, { color: part.dim ? PALETTE.muted : part.color, children: part.text }, i)) });
|
|
23948
23931
|
}
|
|
23949
23932
|
var init_HighlightedLine = __esm({
|
|
23950
23933
|
"packages/experience-design-system-cli-legacy/src/analyze/select/tui/components/HighlightedLine.tsx"() {
|
|
23951
23934
|
"use strict";
|
|
23935
|
+
init_theme();
|
|
23952
23936
|
}
|
|
23953
23937
|
});
|
|
23954
23938
|
|
|
@@ -23956,7 +23940,7 @@ var init_HighlightedLine = __esm({
|
|
|
23956
23940
|
import { Box as Box28, Text as Text30 } from "ink";
|
|
23957
23941
|
import { Fragment as Fragment12, jsx as jsx34, jsxs as jsxs29 } from "react/jsx-runtime";
|
|
23958
23942
|
function ScrollablePanel({
|
|
23959
|
-
|
|
23943
|
+
title,
|
|
23960
23944
|
width,
|
|
23961
23945
|
height,
|
|
23962
23946
|
active,
|
|
@@ -23969,10 +23953,10 @@ function ScrollablePanel({
|
|
|
23969
23953
|
const overflowed = totalLines > height;
|
|
23970
23954
|
return /* @__PURE__ */ jsxs29(Box28, { flexDirection: "column", width, height: height + 2, borderStyle: "single", borderColor, children: [
|
|
23971
23955
|
/* @__PURE__ */ jsxs29(Box28, { children: [
|
|
23972
|
-
|
|
23956
|
+
/* @__PURE__ */ jsx34(Text30, { bold: true, color: active ? void 0 : PALETTE.muted, children: title }),
|
|
23973
23957
|
overflowed && /* @__PURE__ */ jsxs29(Fragment12, { children: [
|
|
23974
23958
|
/* @__PURE__ */ jsx34(Box28, { flexGrow: 1 }),
|
|
23975
|
-
/* @__PURE__ */ jsx34(Text30, {
|
|
23959
|
+
/* @__PURE__ */ jsx34(Text30, { color: active ? void 0 : PALETTE.muted, children: `\u2195 ${visibleStart}-${visibleEnd}/${totalLines}` })
|
|
23976
23960
|
] })
|
|
23977
23961
|
] }),
|
|
23978
23962
|
children
|
|
@@ -23981,11 +23965,12 @@ function ScrollablePanel({
|
|
|
23981
23965
|
var init_ScrollablePanel = __esm({
|
|
23982
23966
|
"packages/experience-design-system-cli-legacy/src/analyze/select/tui/components/ScrollablePanel.tsx"() {
|
|
23983
23967
|
"use strict";
|
|
23968
|
+
init_theme();
|
|
23984
23969
|
}
|
|
23985
23970
|
});
|
|
23986
23971
|
|
|
23987
23972
|
// packages/experience-design-system-cli-legacy/src/analyze/select/tui/components/JsonPanel.tsx
|
|
23988
|
-
import { Box as Box29
|
|
23973
|
+
import { Box as Box29 } from "ink";
|
|
23989
23974
|
import { jsx as jsx35 } from "react/jsx-runtime";
|
|
23990
23975
|
function highlightJson(line) {
|
|
23991
23976
|
const parts = [];
|
|
@@ -24040,7 +24025,7 @@ function JsonPanel({ label, value, scrollOffset, width, height, active }) {
|
|
|
24040
24025
|
return /* @__PURE__ */ jsx35(
|
|
24041
24026
|
ScrollablePanel,
|
|
24042
24027
|
{
|
|
24043
|
-
|
|
24028
|
+
title: label,
|
|
24044
24029
|
width,
|
|
24045
24030
|
height,
|
|
24046
24031
|
active,
|
|
@@ -24064,7 +24049,6 @@ var init_JsonPanel = __esm({
|
|
|
24064
24049
|
});
|
|
24065
24050
|
|
|
24066
24051
|
// packages/experience-design-system-cli-legacy/src/analyze/select/tui/components/RationalePanel.tsx
|
|
24067
|
-
import { Text as Text32 } from "ink";
|
|
24068
24052
|
import { jsx as jsx36 } from "react/jsx-runtime";
|
|
24069
24053
|
function renderRationaleLines(rows, innerWidth) {
|
|
24070
24054
|
const out = [];
|
|
@@ -24101,7 +24085,7 @@ function RationalePanel({
|
|
|
24101
24085
|
return /* @__PURE__ */ jsx36(
|
|
24102
24086
|
ScrollablePanel,
|
|
24103
24087
|
{
|
|
24104
|
-
|
|
24088
|
+
title: `RATIONALE \u2014 ${componentName}`,
|
|
24105
24089
|
width,
|
|
24106
24090
|
height,
|
|
24107
24091
|
active,
|
|
@@ -24125,7 +24109,7 @@ var init_RationalePanel = __esm({
|
|
|
24125
24109
|
|
|
24126
24110
|
// packages/experience-design-system-cli-legacy/src/analyze/select/tui/components/TokenReviewPanel.tsx
|
|
24127
24111
|
import figures5 from "figures";
|
|
24128
|
-
import { Box as Box30, Text as
|
|
24112
|
+
import { Box as Box30, Text as Text31 } from "ink";
|
|
24129
24113
|
import { jsx as jsx37, jsxs as jsxs30 } from "react/jsx-runtime";
|
|
24130
24114
|
function collectTokenSuggestions(entry, availableTokens = []) {
|
|
24131
24115
|
return Object.entries(entry.$properties).filter(([, def]) => {
|
|
@@ -24169,19 +24153,19 @@ function TokenReviewPanel({
|
|
|
24169
24153
|
borderStyle: "single",
|
|
24170
24154
|
borderColor: active ? PALETTE.inverse : void 0,
|
|
24171
24155
|
children: [
|
|
24172
|
-
/* @__PURE__ */ jsx37(
|
|
24173
|
-
/* @__PURE__ */ jsx37(
|
|
24174
|
-
/* @__PURE__ */ jsx37(
|
|
24175
|
-
current.paths.length === 0 && /* @__PURE__ */ jsx37(
|
|
24156
|
+
/* @__PURE__ */ jsx37(Text31, { bold: true, color: active ? void 0 : PALETTE.muted, wrap: "truncate", children: `TOKEN REVIEW \u2014 ${componentName} \xB7 ${current.propName} (edit allowed)` }),
|
|
24157
|
+
/* @__PURE__ */ jsx37(Text31, { color: PALETTE.muted, wrap: "truncate", children: `select which tokens are allowed (${rangeLabel})` }),
|
|
24158
|
+
/* @__PURE__ */ jsx37(Text31, { children: " " }),
|
|
24159
|
+
current.paths.length === 0 && /* @__PURE__ */ jsx37(Text31, { color: PALETTE.muted, children: "(no compatible tokens found for this token kind)" }),
|
|
24176
24160
|
visiblePaths.map((path, i) => {
|
|
24177
24161
|
const pathIndex = scrollStart + i;
|
|
24178
24162
|
const checked = editSelection.has(path);
|
|
24179
24163
|
const focused = pathIndex === editCursor;
|
|
24180
|
-
return /* @__PURE__ */ jsx37(Box30, { children: /* @__PURE__ */ jsx37(
|
|
24164
|
+
return /* @__PURE__ */ jsx37(Box30, { children: /* @__PURE__ */ jsx37(Text31, { color: focused ? PALETTE.info : active ? void 0 : PALETTE.muted, bold: focused, wrap: "truncate", children: ` [${checked ? "x" : " "}] ${path}` }) }, path);
|
|
24181
24165
|
}),
|
|
24182
|
-
/* @__PURE__ */ jsx37(
|
|
24183
|
-
/* @__PURE__ */ jsx37(
|
|
24184
|
-
/* @__PURE__ */ jsx37(
|
|
24166
|
+
/* @__PURE__ */ jsx37(Text31, { children: " " }),
|
|
24167
|
+
/* @__PURE__ */ jsx37(Text31, { color: PALETTE.muted, wrap: "truncate", children: "[\u2191/\u2193] move [Space] toggle" }),
|
|
24168
|
+
/* @__PURE__ */ jsx37(Text31, { color: PALETTE.muted, wrap: "truncate", children: "[Ctrl+S] save [Esc] cancel" })
|
|
24185
24169
|
]
|
|
24186
24170
|
}
|
|
24187
24171
|
);
|
|
@@ -24195,18 +24179,18 @@ function TokenReviewPanel({
|
|
|
24195
24179
|
borderStyle: "single",
|
|
24196
24180
|
borderColor: active ? PALETTE.inverse : void 0,
|
|
24197
24181
|
children: [
|
|
24198
|
-
/* @__PURE__ */ jsx37(
|
|
24199
|
-
suggestions.length === 0 && /* @__PURE__ */ jsx37(
|
|
24182
|
+
/* @__PURE__ */ jsx37(Text31, { bold: true, color: active ? void 0 : PALETTE.muted, children: `TOKEN REVIEW \u2014 ${componentName}` }),
|
|
24183
|
+
suggestions.length === 0 && /* @__PURE__ */ jsx37(Text31, { color: PALETTE.muted, children: "(no token suggestions for this component)" }),
|
|
24200
24184
|
suggestions.map((s, i) => {
|
|
24201
24185
|
const focused = i === selectedRow;
|
|
24202
24186
|
return /* @__PURE__ */ jsxs30(Box30, { flexDirection: "column", children: [
|
|
24203
|
-
/* @__PURE__ */ jsx37(Box30, { children: /* @__PURE__ */ jsx37(
|
|
24204
|
-
/* @__PURE__ */ jsx37(
|
|
24205
|
-
/* @__PURE__ */ jsx37(
|
|
24187
|
+
/* @__PURE__ */ jsx37(Box30, { children: /* @__PURE__ */ jsx37(Text31, { color: focused ? PALETTE.info : active ? void 0 : PALETTE.muted, bold: focused, children: `${focused ? figures5.pointer : " "} ${s.propName}` }) }),
|
|
24188
|
+
/* @__PURE__ */ jsx37(Text31, { color: PALETTE.muted, children: ` suggested: ${s.suggested.join(", ")}` }),
|
|
24189
|
+
/* @__PURE__ */ jsx37(Text31, { color: PALETTE.muted, children: ` allowed: ${s.allowed.join(", ")}` })
|
|
24206
24190
|
] }, s.propName);
|
|
24207
24191
|
}),
|
|
24208
|
-
/* @__PURE__ */ jsx37(
|
|
24209
|
-
/* @__PURE__ */ jsx37(
|
|
24192
|
+
/* @__PURE__ */ jsx37(Text31, { children: " " }),
|
|
24193
|
+
/* @__PURE__ */ jsx37(Text31, { children: "[\u2191/\u2193] move [Enter] edit allowed [Esc] close" })
|
|
24210
24194
|
]
|
|
24211
24195
|
}
|
|
24212
24196
|
);
|
|
@@ -24219,7 +24203,7 @@ var init_TokenReviewPanel = __esm({
|
|
|
24219
24203
|
});
|
|
24220
24204
|
|
|
24221
24205
|
// packages/experience-design-system-cli-legacy/src/import/tui/steps/review-details-panel.tsx
|
|
24222
|
-
import { Text as
|
|
24206
|
+
import { Text as Text32 } from "ink";
|
|
24223
24207
|
import { Fragment as Fragment13, jsx as jsx38, jsxs as jsxs31 } from "react/jsx-runtime";
|
|
24224
24208
|
function ReviewDetailsPanel({
|
|
24225
24209
|
selectedKey,
|
|
@@ -24294,9 +24278,9 @@ function ReviewDetailsPanel({
|
|
|
24294
24278
|
const sourceLineCount = Math.max(1, height - 4);
|
|
24295
24279
|
const lines = source ? source.split("\n").slice(panelScrollOffset, panelScrollOffset + sourceLineCount) : [];
|
|
24296
24280
|
return /* @__PURE__ */ jsxs31(FixedPanel, { width, height, borderStyle: "single", borderColor: sourceBorderColor, paddingLeft: 1, children: [
|
|
24297
|
-
/* @__PURE__ */ jsx38(
|
|
24298
|
-
source ? lines.map((line, index) => /* @__PURE__ */ jsx38(
|
|
24299
|
-
/* @__PURE__ */ jsx38(
|
|
24281
|
+
/* @__PURE__ */ jsx38(Text32, { color: PALETTE.muted, bold: true, wrap: "truncate-end", children: `source: ${headerPath}` }),
|
|
24282
|
+
source ? lines.map((line, index) => /* @__PURE__ */ jsx38(Text32, { color: PALETTE.muted, wrap: "truncate-end", children: line }, `source-line-${index}`)) : /* @__PURE__ */ jsx38(Text32, { color: PALETTE.muted, children: "(no source captured)" }),
|
|
24283
|
+
/* @__PURE__ */ jsx38(Text32, { color: PALETTE.muted, wrap: "truncate-end", children: "[s/Esc] close" })
|
|
24300
24284
|
] });
|
|
24301
24285
|
}
|
|
24302
24286
|
if (panelOpen === "token-review") {
|
|
@@ -24338,6 +24322,7 @@ var init_review_details_panel = __esm({
|
|
|
24338
24322
|
init_RationalePanel();
|
|
24339
24323
|
init_TokenReviewPanel();
|
|
24340
24324
|
init_windowed_panel();
|
|
24325
|
+
init_theme();
|
|
24341
24326
|
}
|
|
24342
24327
|
});
|
|
24343
24328
|
|
|
@@ -24423,7 +24408,7 @@ var init_ReviewDetailsEditor = __esm({
|
|
|
24423
24408
|
});
|
|
24424
24409
|
|
|
24425
24410
|
// packages/experience-design-system-cli-legacy/src/import/tui/components/ReviewComponentPanel.tsx
|
|
24426
|
-
import { Box as Box31, Text as
|
|
24411
|
+
import { Box as Box31, Text as Text33 } from "ink";
|
|
24427
24412
|
import { Fragment as Fragment14, jsx as jsx40, jsxs as jsxs32 } from "react/jsx-runtime";
|
|
24428
24413
|
function buildReviewFieldEditor(reviewEditor, selectedJson, onExit, overrides = {}) {
|
|
24429
24414
|
return {
|
|
@@ -24464,17 +24449,17 @@ function ReviewEmptyComponentsWarning({
|
|
|
24464
24449
|
hidden
|
|
24465
24450
|
}) {
|
|
24466
24451
|
if (hidden || count === 0) return null;
|
|
24467
|
-
return /* @__PURE__ */ jsx40(
|
|
24452
|
+
return /* @__PURE__ */ jsx40(Text33, { color: PALETTE.warning, children: `\u26A0 ${count} component${count === 1 ? "" : "s"} had no classifiable props \u2014 review with care` });
|
|
24468
24453
|
}
|
|
24469
24454
|
function ReviewNoSelection() {
|
|
24470
|
-
return /* @__PURE__ */ jsx40(Box31, { flexGrow: 1, paddingLeft: 1, flexDirection: "column", children: /* @__PURE__ */ jsx40(
|
|
24455
|
+
return /* @__PURE__ */ jsx40(Box31, { flexGrow: 1, paddingLeft: 1, flexDirection: "column", children: /* @__PURE__ */ jsx40(Text33, { color: PALETTE.muted, children: "No component selected" }) });
|
|
24471
24456
|
}
|
|
24472
24457
|
function ReviewFinalizeError({
|
|
24473
24458
|
message,
|
|
24474
24459
|
hidden
|
|
24475
24460
|
}) {
|
|
24476
24461
|
if (hidden || !message) return null;
|
|
24477
|
-
return /* @__PURE__ */ jsx40(
|
|
24462
|
+
return /* @__PURE__ */ jsx40(Text33, { color: PALETTE.error, children: `\u26A0 ${message}` });
|
|
24478
24463
|
}
|
|
24479
24464
|
function ReviewPanelFooter({
|
|
24480
24465
|
reviewEditor,
|
|
@@ -24485,8 +24470,8 @@ function ReviewPanelFooter({
|
|
|
24485
24470
|
}) {
|
|
24486
24471
|
return /* @__PURE__ */ jsxs32(Fragment14, { children: [
|
|
24487
24472
|
reviewEditor.panelOpen === "token-review" ? " [\u2191/\u2193] move [Enter] edit allowed [Esc] close" : sidebarFocused ? sidebarFooter : reviewEditor.showJson ? " [\u2191\u2193] scroll [Ctrl+u/d] half-page [gg/G] top/bottom [Tab] focus list" : " [Tab] focus list (edit fields)" + (reviewEditor.currentTokenSuggestions().length > 0 ? " [t] token review" : ""),
|
|
24488
|
-
livePreview.status === "running" && /* @__PURE__ */ jsx40(
|
|
24489
|
-
livePreview.disabled && /* @__PURE__ */ jsx40(
|
|
24473
|
+
livePreview.status === "running" && /* @__PURE__ */ jsx40(Text33, { children: ` ${livePreviewSpinner} live preview` }),
|
|
24474
|
+
livePreview.disabled && /* @__PURE__ */ jsx40(Text33, { children: " \xB7 live preview disabled" })
|
|
24490
24475
|
] });
|
|
24491
24476
|
}
|
|
24492
24477
|
function ReviewComponentTitle({
|
|
@@ -24496,9 +24481,9 @@ function ReviewComponentTitle({
|
|
|
24496
24481
|
sidebarFocused
|
|
24497
24482
|
}) {
|
|
24498
24483
|
return /* @__PURE__ */ jsxs32(Box31, { paddingLeft: 2, paddingBottom: 1, children: [
|
|
24499
|
-
/* @__PURE__ */ jsx40(
|
|
24484
|
+
/* @__PURE__ */ jsx40(Text33, { bold: true, wrap: "truncate-end", children: selectedKey }),
|
|
24500
24485
|
/* @__PURE__ */ jsx40(Box31, { flexGrow: 1 }),
|
|
24501
|
-
/* @__PURE__ */ jsxs32(
|
|
24486
|
+
/* @__PURE__ */ jsxs32(Text33, { color: PALETTE.muted, wrap: "truncate-end", children: [
|
|
24502
24487
|
propCount,
|
|
24503
24488
|
" prop",
|
|
24504
24489
|
propCount !== 1 ? "s" : "",
|
|
@@ -24554,8 +24539,8 @@ function ReviewComponentPanel({
|
|
|
24554
24539
|
)
|
|
24555
24540
|
}
|
|
24556
24541
|
) }),
|
|
24557
|
-
/* @__PURE__ */ jsx40(Box31, { width: contentWidth, height: 1, flexShrink: 0, children: /* @__PURE__ */ jsx40(
|
|
24558
|
-
/* @__PURE__ */ jsx40(Box31, { width: contentWidth, height: 1, flexShrink: 0, children: /* @__PURE__ */ jsx40(
|
|
24542
|
+
/* @__PURE__ */ jsx40(Box31, { width: contentWidth, height: 1, flexShrink: 0, children: /* @__PURE__ */ jsx40(Text33, { color: saveError ? PALETTE.error : void 0, wrap: "truncate-end", children: saveError ? "\u2717 " + saveError : " " }) }),
|
|
24543
|
+
/* @__PURE__ */ jsx40(Box31, { width: contentWidth, height: 1, flexShrink: 0, children: /* @__PURE__ */ jsx40(Text33, { color: PALETTE.muted, wrap: "truncate-end", children: /* @__PURE__ */ jsx40(
|
|
24559
24544
|
ReviewPanelFooter,
|
|
24560
24545
|
{
|
|
24561
24546
|
reviewEditor,
|
|
@@ -24578,7 +24563,7 @@ var init_ReviewComponentPanel = __esm({
|
|
|
24578
24563
|
});
|
|
24579
24564
|
|
|
24580
24565
|
// packages/experience-design-system-cli-legacy/src/import/tui/components/ReviewStatus.tsx
|
|
24581
|
-
import { Box as Box32, Text as
|
|
24566
|
+
import { Box as Box32, Text as Text34 } from "ink";
|
|
24582
24567
|
import { jsx as jsx41, jsxs as jsxs33 } from "react/jsx-runtime";
|
|
24583
24568
|
function countReviewStatuses(entries) {
|
|
24584
24569
|
return entries.reduce(
|
|
@@ -24592,13 +24577,13 @@ function countReviewStatuses(entries) {
|
|
|
24592
24577
|
);
|
|
24593
24578
|
}
|
|
24594
24579
|
function ReviewLoadingState() {
|
|
24595
|
-
return /* @__PURE__ */ jsx41(Box32, { paddingX: 2, paddingY: 1, children: /* @__PURE__ */ jsx41(
|
|
24580
|
+
return /* @__PURE__ */ jsx41(Box32, { paddingX: 2, paddingY: 1, children: /* @__PURE__ */ jsx41(Text34, { color: PALETTE.muted, children: "Loading generated definitions..." }) });
|
|
24596
24581
|
}
|
|
24597
24582
|
function ReviewLoadError({ message }) {
|
|
24598
24583
|
return /* @__PURE__ */ jsxs33(Box32, { flexDirection: "column", paddingX: 2, paddingY: 1, children: [
|
|
24599
|
-
/* @__PURE__ */ jsx41(
|
|
24600
|
-
/* @__PURE__ */ jsx41(
|
|
24601
|
-
/* @__PURE__ */ jsx41(
|
|
24584
|
+
/* @__PURE__ */ jsx41(Text34, { color: PALETTE.error, children: message }),
|
|
24585
|
+
/* @__PURE__ */ jsx41(Text34, { children: " " }),
|
|
24586
|
+
/* @__PURE__ */ jsx41(Text34, { children: "[q / Enter / Esc] Quit" })
|
|
24602
24587
|
] });
|
|
24603
24588
|
}
|
|
24604
24589
|
var init_ReviewStatus = __esm({
|
|
@@ -24732,7 +24717,7 @@ var init_runLivePreview = __esm({
|
|
|
24732
24717
|
});
|
|
24733
24718
|
|
|
24734
24719
|
// packages/experience-design-system-cli-legacy/src/analyze/select/tui/components/FinalizeDialog.tsx
|
|
24735
|
-
import { Box as Box33, Text as
|
|
24720
|
+
import { Box as Box33, Text as Text35 } from "ink";
|
|
24736
24721
|
import { Fragment as Fragment15, jsx as jsx42, jsxs as jsxs34 } from "react/jsx-runtime";
|
|
24737
24722
|
function FinalizeDialog({
|
|
24738
24723
|
accepted,
|
|
@@ -24762,50 +24747,50 @@ function FinalizeDialog({
|
|
|
24762
24747
|
const hasMoreBelow = offset + FINALIZE_REMOVED_WINDOW < removed.length;
|
|
24763
24748
|
const hasMoreAbove = offset > 0;
|
|
24764
24749
|
return /* @__PURE__ */ jsx42(Box33, { width: "100%", justifyContent: "center", children: /* @__PURE__ */ jsxs34(Box33, { flexDirection: "column", alignItems: "center", borderStyle: "round", padding: 1, width: 58, children: [
|
|
24765
|
-
/* @__PURE__ */ jsx42(
|
|
24766
|
-
/* @__PURE__ */ jsx42(
|
|
24767
|
-
/* @__PURE__ */ jsxs34(
|
|
24768
|
-
/* @__PURE__ */ jsxs34(
|
|
24750
|
+
/* @__PURE__ */ jsx42(Text35, { bold: true, children: "\u2500".repeat(22) + " Finalize " + "\u2500".repeat(22) }),
|
|
24751
|
+
/* @__PURE__ */ jsx42(Text35, { children: " " }),
|
|
24752
|
+
/* @__PURE__ */ jsxs34(Text35, { children: [
|
|
24753
|
+
/* @__PURE__ */ jsxs34(Text35, { color: PALETTE.success, children: [
|
|
24769
24754
|
accepted,
|
|
24770
24755
|
" accepted"
|
|
24771
24756
|
] }),
|
|
24772
|
-
/* @__PURE__ */ jsx42(
|
|
24773
|
-
/* @__PURE__ */ jsxs34(
|
|
24757
|
+
/* @__PURE__ */ jsx42(Text35, { children: " \xB7 " }),
|
|
24758
|
+
/* @__PURE__ */ jsxs34(Text35, { color: PALETTE.error, children: [
|
|
24774
24759
|
rejected,
|
|
24775
24760
|
" rejected"
|
|
24776
24761
|
] }),
|
|
24777
|
-
/* @__PURE__ */ jsx42(
|
|
24778
|
-
/* @__PURE__ */ jsxs34(
|
|
24762
|
+
/* @__PURE__ */ jsx42(Text35, { children: " \xB7 " }),
|
|
24763
|
+
/* @__PURE__ */ jsxs34(Text35, { color: PALETTE.muted, children: [
|
|
24779
24764
|
needsReview,
|
|
24780
24765
|
" unresolved"
|
|
24781
24766
|
] })
|
|
24782
24767
|
] }),
|
|
24783
|
-
/* @__PURE__ */ jsx42(
|
|
24768
|
+
/* @__PURE__ */ jsx42(Text35, { children: " " }),
|
|
24784
24769
|
noneAccepted && /* @__PURE__ */ jsxs34(Fragment15, { children: [
|
|
24785
|
-
/* @__PURE__ */ jsx42(
|
|
24786
|
-
/* @__PURE__ */ jsx42(
|
|
24787
|
-
/* @__PURE__ */ jsx42(
|
|
24770
|
+
/* @__PURE__ */ jsx42(Text35, { bold: true, color: PALETTE.warning, children: "\u26A0 No components are accepted \u2014 nothing will be pushed." }),
|
|
24771
|
+
/* @__PURE__ */ jsx42(Text35, { color: PALETTE.warning, children: "Accept at least one component ([a] a row, [A] accept all) to push." }),
|
|
24772
|
+
/* @__PURE__ */ jsx42(Text35, { children: " " })
|
|
24788
24773
|
] }),
|
|
24789
24774
|
!allResolved && /* @__PURE__ */ jsxs34(Fragment15, { children: [
|
|
24790
|
-
/* @__PURE__ */ jsx42(
|
|
24791
|
-
/* @__PURE__ */ jsx42(
|
|
24792
|
-
/* @__PURE__ */ jsx42(
|
|
24775
|
+
/* @__PURE__ */ jsx42(Text35, { color: PALETTE.warning, children: "\u26A0 " + needsReview + " unresolved component" + (needsReview === 1 ? "" : "s") + " will not be pushed." }),
|
|
24776
|
+
/* @__PURE__ */ jsx42(Text35, { color: PALETTE.warning, children: "Only explicitly accepted components ship." }),
|
|
24777
|
+
/* @__PURE__ */ jsx42(Text35, { children: " " })
|
|
24793
24778
|
] }),
|
|
24794
24779
|
/* @__PURE__ */ jsxs34(Box33, { flexDirection: "column", height: 2, children: [
|
|
24795
|
-
previewStatus === "running" ? /* @__PURE__ */ jsx42(
|
|
24796
|
-
/* @__PURE__ */ jsx42(
|
|
24780
|
+
previewStatus === "running" ? /* @__PURE__ */ jsx42(Text35, { color: PALETTE.muted, children: "Previewing deletions against the target space\u2026" }) : previewStatus === "error" ? /* @__PURE__ */ jsx42(Text35, { color: PALETTE.warning, children: "\u26A0 Could not preview deletions (the push will still proceed)." }) : /* @__PURE__ */ jsx42(Text35, { children: " " }),
|
|
24781
|
+
/* @__PURE__ */ jsx42(Text35, { children: " " })
|
|
24797
24782
|
] }),
|
|
24798
24783
|
previewStatus === "done" && removed.length > 0 && /* @__PURE__ */ jsxs34(Fragment15, { children: [
|
|
24799
|
-
/* @__PURE__ */ jsx42(
|
|
24800
|
-
hasMoreAbove && /* @__PURE__ */ jsx42(
|
|
24801
|
-
windowed.map((rc) => /* @__PURE__ */ jsx42(
|
|
24802
|
-
hasMoreBelow && /* @__PURE__ */ jsx42(
|
|
24803
|
-
removed.length > FINALIZE_REMOVED_WINDOW && /* @__PURE__ */ jsx42(
|
|
24804
|
-
/* @__PURE__ */ jsx42(
|
|
24784
|
+
/* @__PURE__ */ jsx42(Text35, { bold: true, color: PALETTE.error, children: removedComponentsHeader(removed.length, false) }),
|
|
24785
|
+
hasMoreAbove && /* @__PURE__ */ jsx42(Text35, { color: PALETTE.muted, children: "\u2191 more above" }),
|
|
24786
|
+
windowed.map((rc) => /* @__PURE__ */ jsx42(Text35, { color: PALETTE.error, children: removedComponentLine(rc) }, rc.id)),
|
|
24787
|
+
hasMoreBelow && /* @__PURE__ */ jsx42(Text35, { color: PALETTE.muted, children: "\u2193 more below" }),
|
|
24788
|
+
removed.length > FINALIZE_REMOVED_WINDOW && /* @__PURE__ */ jsx42(Text35, { children: "[\u2191\u2193] scroll deletions" }),
|
|
24789
|
+
/* @__PURE__ */ jsx42(Text35, { children: " " })
|
|
24805
24790
|
] }),
|
|
24806
|
-
/* @__PURE__ */ jsx42(
|
|
24807
|
-
/* @__PURE__ */ jsx42(
|
|
24808
|
-
/* @__PURE__ */ jsx42(
|
|
24791
|
+
/* @__PURE__ */ jsx42(Text35, { children: noneAccepted ? "Confirm exit with nothing accepted?" : allResolved ? "Save decisions and exit? All components resolved." : "Save decisions and exit?" }),
|
|
24792
|
+
/* @__PURE__ */ jsx42(Text35, { children: " " }),
|
|
24793
|
+
/* @__PURE__ */ jsx42(Text35, { children: "[y / Enter] Confirm [n / Esc] Cancel" })
|
|
24809
24794
|
] }) });
|
|
24810
24795
|
}
|
|
24811
24796
|
var FINALIZE_REMOVED_WINDOW;
|
|
@@ -25311,7 +25296,7 @@ var init_useReviewSurfaceState = __esm({
|
|
|
25311
25296
|
});
|
|
25312
25297
|
|
|
25313
25298
|
// packages/experience-design-system-cli-legacy/src/analyze/select/tui/components/QuitDialog.tsx
|
|
25314
|
-
import { Box as Box34, Text as
|
|
25299
|
+
import { Box as Box34, Text as Text36 } from "ink";
|
|
25315
25300
|
import { Fragment as Fragment16, jsx as jsx43, jsxs as jsxs35 } from "react/jsx-runtime";
|
|
25316
25301
|
function QuitDialog({ hasUnsavedDrafts, onConfirm, onCancel }) {
|
|
25317
25302
|
useImmediateInput((input, key) => {
|
|
@@ -25322,15 +25307,15 @@ function QuitDialog({ hasUnsavedDrafts, onConfirm, onCancel }) {
|
|
|
25322
25307
|
}
|
|
25323
25308
|
});
|
|
25324
25309
|
return /* @__PURE__ */ jsxs35(Box34, { flexDirection: "column", borderStyle: "round", padding: 1, width: 50, children: [
|
|
25325
|
-
/* @__PURE__ */ jsx43(
|
|
25326
|
-
/* @__PURE__ */ jsx43(
|
|
25310
|
+
/* @__PURE__ */ jsx43(Text36, { bold: true, children: "\u2500".repeat(19) + " Quit " + "\u2500".repeat(19) }),
|
|
25311
|
+
/* @__PURE__ */ jsx43(Text36, { children: " " }),
|
|
25327
25312
|
hasUnsavedDrafts ? /* @__PURE__ */ jsxs35(Fragment16, { children: [
|
|
25328
|
-
/* @__PURE__ */ jsx43(
|
|
25329
|
-
/* @__PURE__ */ jsx43(
|
|
25330
|
-
/* @__PURE__ */ jsx43(
|
|
25331
|
-
] }) : /* @__PURE__ */ jsx43(
|
|
25332
|
-
/* @__PURE__ */ jsx43(
|
|
25333
|
-
/* @__PURE__ */ jsx43(
|
|
25313
|
+
/* @__PURE__ */ jsx43(Text36, { children: "You have unsaved draft edits." }),
|
|
25314
|
+
/* @__PURE__ */ jsx43(Text36, { children: "Session state is preserved \u2014 you can resume" }),
|
|
25315
|
+
/* @__PURE__ */ jsx43(Text36, { children: "by running the same review command again." })
|
|
25316
|
+
] }) : /* @__PURE__ */ jsx43(Text36, { children: "Session is saved. Quit without finalizing?" }),
|
|
25317
|
+
/* @__PURE__ */ jsx43(Text36, { children: " " }),
|
|
25318
|
+
/* @__PURE__ */ jsx43(Text36, { children: " [y / Enter] Quit [n / Esc] Stay" })
|
|
25334
25319
|
] });
|
|
25335
25320
|
}
|
|
25336
25321
|
var init_QuitDialog = __esm({
|
|
@@ -25341,7 +25326,7 @@ var init_QuitDialog = __esm({
|
|
|
25341
25326
|
});
|
|
25342
25327
|
|
|
25343
25328
|
// packages/experience-design-system-cli-legacy/src/import/tui/components/ReviewDialogs.tsx
|
|
25344
|
-
import { Box as Box35, Text as
|
|
25329
|
+
import { Box as Box35, Text as Text37 } from "ink";
|
|
25345
25330
|
import { Fragment as Fragment17, jsx as jsx44, jsxs as jsxs36 } from "react/jsx-runtime";
|
|
25346
25331
|
function ReviewFinalizeDialogs({
|
|
25347
25332
|
showFinalize,
|
|
@@ -25399,11 +25384,11 @@ function ReviewStepDialogs({
|
|
|
25399
25384
|
function ReviewReloadDialog({ open }) {
|
|
25400
25385
|
if (!open) return null;
|
|
25401
25386
|
return /* @__PURE__ */ jsxs36(Box35, { flexDirection: "column", borderStyle: "round", borderColor: PALETTE.warning, paddingX: 1, children: [
|
|
25402
|
-
/* @__PURE__ */ jsx44(
|
|
25403
|
-
/* @__PURE__ */ jsx44(
|
|
25404
|
-
/* @__PURE__ */ jsx44(
|
|
25405
|
-
/* @__PURE__ */ jsx44(
|
|
25406
|
-
/* @__PURE__ */ jsx44(
|
|
25387
|
+
/* @__PURE__ */ jsx44(Text37, { bold: true, color: PALETTE.warning, children: "Reload from saved state?" }),
|
|
25388
|
+
/* @__PURE__ */ jsx44(Text37, { children: "Unsaved in-memory changes will be lost." }),
|
|
25389
|
+
/* @__PURE__ */ jsx44(Text37, { children: " " }),
|
|
25390
|
+
/* @__PURE__ */ jsx44(Text37, { children: " [Enter] Confirm" }),
|
|
25391
|
+
/* @__PURE__ */ jsx44(Text37, { children: " [Esc] Cancel" })
|
|
25407
25392
|
] });
|
|
25408
25393
|
}
|
|
25409
25394
|
var init_ReviewDialogs = __esm({
|
|
@@ -25805,7 +25790,7 @@ var init_useReviewPreview = __esm({
|
|
|
25805
25790
|
});
|
|
25806
25791
|
|
|
25807
25792
|
// packages/experience-design-system-cli-legacy/src/import/tui/components/LivePreviewSummary.tsx
|
|
25808
|
-
import { Box as Box36, Text as
|
|
25793
|
+
import { Box as Box36, Text as Text38 } from "ink";
|
|
25809
25794
|
import { jsx as jsx45, jsxs as jsxs37 } from "react/jsx-runtime";
|
|
25810
25795
|
function LivePreviewSummary({
|
|
25811
25796
|
enabled,
|
|
@@ -25820,19 +25805,19 @@ function LivePreviewSummary({
|
|
|
25820
25805
|
const counts = { new: 0, changed: 0, removed: 0, breaking: 0 };
|
|
25821
25806
|
for (const annotation of previewAnnotations.values()) counts[annotation] += 1;
|
|
25822
25807
|
const hasCounts = counts.new + counts.changed + counts.removed + counts.breaking > 0;
|
|
25823
|
-
if (disabled) return /* @__PURE__ */ jsx45(
|
|
25824
|
-
if (status === "running" && !hasCounts) return /* @__PURE__ */ jsx45(
|
|
25808
|
+
if (disabled) return /* @__PURE__ */ jsx45(Text38, { color: PALETTE.muted, children: "Preview: disabled (creds rejected)" });
|
|
25809
|
+
if (status === "running" && !hasCounts) return /* @__PURE__ */ jsx45(Text38, { color: PALETTE.muted, children: `Preview: ${spinner} running...` });
|
|
25825
25810
|
if (!hasCounts) return null;
|
|
25826
25811
|
return /* @__PURE__ */ jsxs37(Box36, { children: [
|
|
25827
|
-
/* @__PURE__ */ jsx45(
|
|
25828
|
-
/* @__PURE__ */ jsx45(
|
|
25829
|
-
/* @__PURE__ */ jsx45(
|
|
25830
|
-
/* @__PURE__ */ jsx45(
|
|
25831
|
-
/* @__PURE__ */ jsx45(
|
|
25832
|
-
/* @__PURE__ */ jsx45(
|
|
25833
|
-
showRemovedListHint && removedCount > 0 && /* @__PURE__ */ jsx45(
|
|
25834
|
-
/* @__PURE__ */ jsx45(
|
|
25835
|
-
/* @__PURE__ */ jsx45(
|
|
25812
|
+
/* @__PURE__ */ jsx45(Text38, { children: "Preview: " }),
|
|
25813
|
+
/* @__PURE__ */ jsx45(Text38, { color: PALETTE.success, children: `${counts.new} new` }),
|
|
25814
|
+
/* @__PURE__ */ jsx45(Text38, { children: " \xB7 " }),
|
|
25815
|
+
/* @__PURE__ */ jsx45(Text38, { color: PALETTE.warning, children: `${counts.changed} changed` }),
|
|
25816
|
+
/* @__PURE__ */ jsx45(Text38, { children: " \xB7 " }),
|
|
25817
|
+
/* @__PURE__ */ jsx45(Text38, { color: PALETTE.muted, children: `${counts.removed} removed` }),
|
|
25818
|
+
showRemovedListHint && removedCount > 0 && /* @__PURE__ */ jsx45(Text38, { children: " ([d] removed list)" }),
|
|
25819
|
+
/* @__PURE__ */ jsx45(Text38, { children: " \xB7 " }),
|
|
25820
|
+
/* @__PURE__ */ jsx45(Text38, { color: PALETTE.error, bold: true, children: `${counts.breaking} breaking` })
|
|
25836
25821
|
] });
|
|
25837
25822
|
}
|
|
25838
25823
|
var init_LivePreviewSummary = __esm({
|
|
@@ -25845,7 +25830,7 @@ var init_LivePreviewSummary = __esm({
|
|
|
25845
25830
|
// packages/experience-design-system-cli-legacy/src/import/tui/steps/GenerateReviewStep.tsx
|
|
25846
25831
|
import { useCallback as useCallback7, useEffect as useEffect13, useMemo as useMemo3, useRef as useRef8, useState as useState18 } from "react";
|
|
25847
25832
|
import figures6 from "figures";
|
|
25848
|
-
import { Box as Box37, Text as
|
|
25833
|
+
import { Box as Box37, Text as Text39 } from "ink";
|
|
25849
25834
|
import { Fragment as Fragment18, jsx as jsx46, jsxs as jsxs38 } from "react/jsx-runtime";
|
|
25850
25835
|
function sortComponentsForSidebar(components, cycleParticipants) {
|
|
25851
25836
|
const isEmpty2 = (entry) => Object.keys(entry.$properties ?? {}).length === 0 && Object.keys(entry.$slots ?? {}).length === 0;
|
|
@@ -25887,10 +25872,10 @@ function CyclePathLine({
|
|
|
25887
25872
|
highlightComponents = false,
|
|
25888
25873
|
highlightLine = false
|
|
25889
25874
|
}) {
|
|
25890
|
-
return /* @__PURE__ */ jsxs38(
|
|
25875
|
+
return /* @__PURE__ */ jsxs38(Text39, { color: highlightLine ? PALETTE.warning : void 0, children: [
|
|
25891
25876
|
prefix,
|
|
25892
25877
|
segments.map(
|
|
25893
|
-
(segment, index) => segment.kind === "slot" ? /* @__PURE__ */ jsx46(
|
|
25878
|
+
(segment, index) => segment.kind === "slot" ? /* @__PURE__ */ jsx46(Text39, { color: PALETTE.info, children: segment.text }, index) : segment.kind === "arrow" ? /* @__PURE__ */ jsx46(Text39, { color: PALETTE.muted, children: segment.text }, index) : /* @__PURE__ */ jsx46(Text39, { color: highlightComponents ? PALETTE.warning : void 0, children: segment.text }, index)
|
|
25894
25879
|
)
|
|
25895
25880
|
] });
|
|
25896
25881
|
}
|
|
@@ -25902,31 +25887,31 @@ function CycleDetailPanel({
|
|
|
25902
25887
|
height
|
|
25903
25888
|
}) {
|
|
25904
25889
|
const lines = [
|
|
25905
|
-
/* @__PURE__ */ jsx46(
|
|
25906
|
-
/* @__PURE__ */ jsx46(
|
|
25907
|
-
/* @__PURE__ */ jsx46(
|
|
25908
|
-
/* @__PURE__ */ jsx46(
|
|
25890
|
+
/* @__PURE__ */ jsx46(Text39, { bold: true, color: PALETTE.warning, children: `SLOT DEPENDENCY CYCLES (${cycles.length})` }, "cyc-title"),
|
|
25891
|
+
/* @__PURE__ */ jsx46(Text39, { color: PALETTE.muted, children: "push will fail until these are resolved" }, "cyc-sub"),
|
|
25892
|
+
/* @__PURE__ */ jsx46(Text39, { color: PALETTE.muted, children: "Reject a cycle member or remove a slot edge to break the cycle." }, "cyc-guidance"),
|
|
25893
|
+
/* @__PURE__ */ jsx46(Text39, { children: " " }, "cyc-space")
|
|
25909
25894
|
];
|
|
25910
25895
|
cycles.forEach((cycle, index) => {
|
|
25911
25896
|
const nodeCount = new Set(cycle.path).size;
|
|
25912
25897
|
const isCursor = index === cursor;
|
|
25913
25898
|
lines.push(
|
|
25914
|
-
/* @__PURE__ */ jsx46(
|
|
25899
|
+
/* @__PURE__ */ jsx46(Text39, { bold: true, inverse: isCursor, children: `${isCursor ? figures6.pointer : " "} Cycle ${index + 1} (${nodeCount} component${nodeCount === 1 ? "" : "s"}):` }, `cyc-h-${index}`),
|
|
25915
25900
|
/* @__PURE__ */ jsx46(CyclePathLine, { segments: formatCyclePathSegments(cycle, 16), prefix: " " }, `cyc-p-${index}`)
|
|
25916
25901
|
);
|
|
25917
25902
|
if (cycle.suggestedBreak) {
|
|
25918
25903
|
lines.push(
|
|
25919
|
-
/* @__PURE__ */ jsx46(
|
|
25904
|
+
/* @__PURE__ */ jsx46(Text39, { color: PALETTE.muted, children: ` Suggested fix: remove [${cycle.suggestedBreak.slotName}] from ${cycle.suggestedBreak.fromComponent}` }, `cyc-fix-${index}`)
|
|
25920
25905
|
);
|
|
25921
25906
|
}
|
|
25922
|
-
lines.push(/* @__PURE__ */ jsx46(
|
|
25907
|
+
lines.push(/* @__PURE__ */ jsx46(Text39, { children: " " }, `cyc-s-${index}`));
|
|
25923
25908
|
});
|
|
25924
25909
|
const footer = "[\u2191\u2193] move [Enter] fix cycle [c/q/Esc] close";
|
|
25925
25910
|
const viewportHeight = Math.max(1, height - 3);
|
|
25926
25911
|
const visible = lines.slice(scrollOffset, scrollOffset + viewportHeight - 1);
|
|
25927
25912
|
return /* @__PURE__ */ jsxs38(FixedPanel, { width, height, borderStyle: "round", borderColor: PALETTE.warning, paddingLeft: 1, children: [
|
|
25928
25913
|
visible,
|
|
25929
|
-
/* @__PURE__ */ jsx46(
|
|
25914
|
+
/* @__PURE__ */ jsx46(Text39, { color: PALETTE.muted, children: footer })
|
|
25930
25915
|
] });
|
|
25931
25916
|
}
|
|
25932
25917
|
function BreakCyclePanel({
|
|
@@ -25938,13 +25923,13 @@ function BreakCyclePanel({
|
|
|
25938
25923
|
height
|
|
25939
25924
|
}) {
|
|
25940
25925
|
return /* @__PURE__ */ jsxs38(FixedPanel, { width, height, borderStyle: "round", borderColor: PALETTE.warning, paddingLeft: 1, children: [
|
|
25941
|
-
/* @__PURE__ */ jsx46(
|
|
25926
|
+
/* @__PURE__ */ jsx46(Text39, { bold: true, color: PALETTE.warning, children: "BREAK CYCLE \u2014 remove a slot edge" }),
|
|
25942
25927
|
cycle && /* @__PURE__ */ jsx46(CyclePathLine, { segments: formatCyclePathSegments(cycle), prefix: " ", highlightComponents: true }),
|
|
25943
|
-
/* @__PURE__ */ jsx46(
|
|
25944
|
-
/* @__PURE__ */ jsx46(
|
|
25945
|
-
edges.length > 0 && /* @__PURE__ */ jsx46(
|
|
25946
|
-
edges.map((edge, index) => /* @__PURE__ */ jsx46(
|
|
25947
|
-
confirming ? /* @__PURE__ */ jsx46(
|
|
25928
|
+
/* @__PURE__ */ jsx46(Text39, { color: PALETTE.muted, children: cycle ? "Deleting an edge removes it from $allowedComponents (undo with Ctrl+Z)." : "No cycle highlighted." }),
|
|
25929
|
+
/* @__PURE__ */ jsx46(Text39, { children: " " }),
|
|
25930
|
+
edges.length > 0 && /* @__PURE__ */ jsx46(Text39, { color: PALETTE.muted, children: "remove slot edge:" }),
|
|
25931
|
+
edges.map((edge, index) => /* @__PURE__ */ jsx46(Text39, { inverse: index === cursor, children: `${index === cursor ? figures6.pointer : " "} remove '${edge.toComponent}' from ${edge.fromComponent}.$slots.${edge.slotName}.$allowedComponents` }, `${edge.fromComponent}-${edge.slotName}-${edge.toComponent}`)),
|
|
25932
|
+
confirming ? /* @__PURE__ */ jsx46(Text39, { bold: true, color: PALETTE.warning, children: "Delete this slot edge? [y] confirm [n] cancel" }) : /* @__PURE__ */ jsx46(Text39, { children: "[\u2191\u2193] move [Enter] delete [x/Esc] close" })
|
|
25948
25933
|
] });
|
|
25949
25934
|
}
|
|
25950
25935
|
function buildBreakingRows(breakingChanges) {
|
|
@@ -25990,7 +25975,7 @@ function deriveBreakingChanges(response) {
|
|
|
25990
25975
|
}
|
|
25991
25976
|
function GenerateReviewStep(props) {
|
|
25992
25977
|
if (!props.extractSessionId) {
|
|
25993
|
-
return /* @__PURE__ */ jsx46(Box37, { paddingX: 2, paddingY: 1, children: /* @__PURE__ */ jsx46(
|
|
25978
|
+
return /* @__PURE__ */ jsx46(Box37, { paddingX: 2, paddingY: 1, children: /* @__PURE__ */ jsx46(Text39, { color: PALETTE.error, children: "Error: no session ID \u2014 cannot load generated definitions." }) });
|
|
25994
25979
|
}
|
|
25995
25980
|
return /* @__PURE__ */ jsx46(GenerateReviewStepView, { ...props, extractSessionId: props.extractSessionId });
|
|
25996
25981
|
}
|
|
@@ -26908,14 +26893,14 @@ function GenerateReviewStepView({
|
|
|
26908
26893
|
),
|
|
26909
26894
|
/* @__PURE__ */ jsx46(ReviewReloadDialog, { open: showReloadDialog && !dialogOpen }),
|
|
26910
26895
|
removedComponents.length > 0 && !dialogOpen && /* @__PURE__ */ jsxs38(Box37, { flexDirection: "column", borderStyle: "round", borderColor: PALETTE.error, paddingX: 1, children: [
|
|
26911
|
-
/* @__PURE__ */ jsx46(
|
|
26896
|
+
/* @__PURE__ */ jsx46(Text39, { bold: true, color: PALETTE.error, children: removedComponentsHeader(removedComponents.length, true) }),
|
|
26912
26897
|
!removedBannerCollapsed && /* @__PURE__ */ jsxs38(Fragment18, { children: [
|
|
26913
|
-
/* @__PURE__ */ jsx46(
|
|
26914
|
-
removedComponents.map((rc) => /* @__PURE__ */ jsx46(
|
|
26898
|
+
/* @__PURE__ */ jsx46(Text39, { children: " " }),
|
|
26899
|
+
removedComponents.map((rc) => /* @__PURE__ */ jsx46(Text39, { children: removedComponentLine(rc) }, rc.id))
|
|
26915
26900
|
] })
|
|
26916
26901
|
] }),
|
|
26917
26902
|
breakingChanges.length > 0 && !dialogOpen && /* @__PURE__ */ jsx46(Box37, { paddingX: 1, children: /* @__PURE__ */ jsx46(
|
|
26918
|
-
|
|
26903
|
+
Text39,
|
|
26919
26904
|
{
|
|
26920
26905
|
color: PALETTE.warning,
|
|
26921
26906
|
children: `[b] ${breakingChanges.length} breaking change${breakingChanges.length === 1 ? "" : "s"}`
|
|
@@ -26926,10 +26911,10 @@ function GenerateReviewStepView({
|
|
|
26926
26911
|
const comp = row ? breakingChanges.find((b) => b.componentName === row.componentName) : void 0;
|
|
26927
26912
|
if (!comp) return null;
|
|
26928
26913
|
return /* @__PURE__ */ jsxs38(Box37, { flexDirection: "column", borderStyle: "round", borderColor: PALETTE.warning, paddingX: 1, children: [
|
|
26929
|
-
/* @__PURE__ */ jsx46(
|
|
26930
|
-
comp.impact && /* @__PURE__ */ jsx46(
|
|
26931
|
-
comp.changes.length === 0 ? /* @__PURE__ */ jsx46(
|
|
26932
|
-
/* @__PURE__ */ jsx46(
|
|
26914
|
+
/* @__PURE__ */ jsx46(Text39, { bold: true, color: PALETTE.warning, children: `Breaking changes \u2014 ${comp.componentName}` }),
|
|
26915
|
+
comp.impact && /* @__PURE__ */ jsx46(Text39, { color: PALETTE.muted, children: ` affects ${comp.impact.affectedExperiences} experience${comp.impact.affectedExperiences === 1 ? "" : "s"}, ${comp.impact.affectedFragments} fragment${comp.impact.affectedFragments === 1 ? "" : "s"}` }),
|
|
26916
|
+
comp.changes.length === 0 ? /* @__PURE__ */ jsx46(Text39, { color: PALETTE.muted, children: " (no enumerated changes)" }) : comp.changes.map((change, ci) => /* @__PURE__ */ jsx46(Text39, { children: ` \u2022 ${formatBreakingChange(change, comp.current)}` }, `bd-detail-${ci}`)),
|
|
26917
|
+
/* @__PURE__ */ jsx46(Text39, { children: "[D/Esc] close detail" })
|
|
26933
26918
|
] });
|
|
26934
26919
|
})(),
|
|
26935
26920
|
!dialogOpen && /* @__PURE__ */ jsx46(
|
|
@@ -26952,10 +26937,10 @@ function GenerateReviewStepView({
|
|
|
26952
26937
|
const members = stillRejected.filter((n) => participantSet.has(n)).sort();
|
|
26953
26938
|
const ancestors = stillRejected.filter((n) => !participantSet.has(n)).sort();
|
|
26954
26939
|
return /* @__PURE__ */ jsxs38(Box37, { flexDirection: "column", borderStyle: "single", borderColor: PALETTE.error, paddingX: 1, children: [
|
|
26955
|
-
/* @__PURE__ */ jsx46(
|
|
26956
|
-
members.length > 0 && /* @__PURE__ */ jsx46(
|
|
26957
|
-
ancestors.length > 0 && /* @__PURE__ */ jsx46(
|
|
26958
|
-
/* @__PURE__ */ jsx46(
|
|
26940
|
+
/* @__PURE__ */ jsx46(Text39, { color: PALETTE.error, bold: true, children: `Cyclic component graph \u2014 auto-rejected ${stillRejected.length} component${stillRejected.length === 1 ? "" : "s"}:` }),
|
|
26941
|
+
members.length > 0 && /* @__PURE__ */ jsx46(Text39, { color: PALETTE.error, children: ` Cycle members: ${members.join(", ")}` }),
|
|
26942
|
+
ancestors.length > 0 && /* @__PURE__ */ jsx46(Text39, { color: PALETTE.error, children: ` Ancestors: ${ancestors.join(", ")}` }),
|
|
26943
|
+
/* @__PURE__ */ jsx46(Text39, { color: PALETTE.muted, children: undoSnapshot ? " [Ctrl+Z] undo \xB7 [r]/[a] manually toggle \xB7 [F] continue" : " [r]/[a] manually toggle \xB7 [F] continue" })
|
|
26959
26944
|
] });
|
|
26960
26945
|
})(),
|
|
26961
26946
|
/* @__PURE__ */ jsx46(ReviewEmptyComponentsWarning, { count: emptyCount, hidden: dialogOpen }),
|
|
@@ -27070,7 +27055,7 @@ function GenerateReviewStepView({
|
|
|
27070
27055
|
) : /* @__PURE__ */ jsx46(ReviewNoSelection, {})
|
|
27071
27056
|
] }),
|
|
27072
27057
|
!dialogOpen && cycleRows.length > 0 && !cyclePanel.isOpen && !breakPanel.isOpen && /* @__PURE__ */ jsxs38(Box37, { flexDirection: "column", children: [
|
|
27073
|
-
/* @__PURE__ */ jsx46(
|
|
27058
|
+
/* @__PURE__ */ jsx46(Text39, { color: PALETTE.warning, children: `\u26A0 ${cycleRows.length} slot dependency cycle${cycleRows.length === 1 ? "" : "s"} detected \u2014 push will fail` }),
|
|
27074
27059
|
cycleRows.slice(0, 3).map((cycle, idx) => {
|
|
27075
27060
|
return /* @__PURE__ */ jsx46(
|
|
27076
27061
|
CyclePathLine,
|
|
@@ -27083,8 +27068,8 @@ function GenerateReviewStepView({
|
|
|
27083
27068
|
`cyc-banner-${idx}`
|
|
27084
27069
|
);
|
|
27085
27070
|
}),
|
|
27086
|
-
cycleRows.length > 3 && /* @__PURE__ */ jsx46(
|
|
27087
|
-
/* @__PURE__ */ jsx46(
|
|
27071
|
+
cycleRows.length > 3 && /* @__PURE__ */ jsx46(Text39, { color: PALETTE.warning, children: ` \u2026${cycleRows.length - 3} more` }),
|
|
27072
|
+
/* @__PURE__ */ jsx46(Text39, { children: " press [c] for detail" })
|
|
27088
27073
|
] }),
|
|
27089
27074
|
/* @__PURE__ */ jsx46(
|
|
27090
27075
|
SearchMatchSummary,
|
|
@@ -27487,7 +27472,7 @@ __export(WizardApp_exports, {
|
|
|
27487
27472
|
shouldRunMapTokens: () => shouldRunMapTokens
|
|
27488
27473
|
});
|
|
27489
27474
|
import { useEffect as useEffect14, useRef as useRef9, useState as useState19 } from "react";
|
|
27490
|
-
import { Box as Box38, Text as
|
|
27475
|
+
import { Box as Box38, Text as Text40 } from "ink";
|
|
27491
27476
|
import { join as join20, resolve as resolve18 } from "node:path";
|
|
27492
27477
|
import { appendFileSync as appendFileSync2, writeFileSync } from "node:fs";
|
|
27493
27478
|
import { access as access7, stat as stat5, writeFile as writeFile5 } from "node:fs/promises";
|
|
@@ -29061,7 +29046,7 @@ Tokens Path: ${state.tokensPath}`,
|
|
|
29061
29046
|
}
|
|
29062
29047
|
case "scope-gate": {
|
|
29063
29048
|
if (!state.extractSessionId) {
|
|
29064
|
-
return /* @__PURE__ */ jsx47(Box38, { paddingX: 2, paddingY: 1, children: /* @__PURE__ */ jsx47(
|
|
29049
|
+
return /* @__PURE__ */ jsx47(Box38, { paddingX: 2, paddingY: 1, children: /* @__PURE__ */ jsx47(Text40, { color: PALETTE.error, children: "Error: extract session ID missing \u2014 please re-run." }) });
|
|
29065
29050
|
}
|
|
29066
29051
|
const sessionId2 = state.extractSessionId;
|
|
29067
29052
|
const db = openPipelineDb();
|
|
@@ -29936,7 +29921,7 @@ var init_command7 = __esm({
|
|
|
29936
29921
|
|
|
29937
29922
|
// packages/experience-design-system-cli-legacy/src/setup/SetupStepper.tsx
|
|
29938
29923
|
import React13 from "react";
|
|
29939
|
-
import { Box as Box39, Text as
|
|
29924
|
+
import { Box as Box39, Text as Text41 } from "ink";
|
|
29940
29925
|
import { jsx as jsx48, jsxs as jsxs40 } from "react/jsx-runtime";
|
|
29941
29926
|
function stepLabel(step, title, state, wide) {
|
|
29942
29927
|
if (state === "complete") return wide ? `\u2713 ${title}` : "\u2713";
|
|
@@ -29954,8 +29939,8 @@ function SetupStepper({ activeStep, columns }) {
|
|
|
29954
29939
|
const step = index + 1;
|
|
29955
29940
|
const state = step < activeStep ? "complete" : step === activeStep ? "active" : "pending";
|
|
29956
29941
|
return /* @__PURE__ */ jsxs40(React13.Fragment, { children: [
|
|
29957
|
-
wide && index > 0 && /* @__PURE__ */ jsx48(
|
|
29958
|
-
/* @__PURE__ */ jsx48(
|
|
29942
|
+
wide && index > 0 && /* @__PURE__ */ jsx48(Text41, { color: PALETTE.muted, children: WIDE_SEPARATOR }),
|
|
29943
|
+
/* @__PURE__ */ jsx48(Text41, { bold: state === "active", color: state === "pending" ? PALETTE.muted : stepColor(state), children: stepLabel(step, title, state, wide) })
|
|
29959
29944
|
] }, step);
|
|
29960
29945
|
}) });
|
|
29961
29946
|
}
|
|
@@ -29974,23 +29959,23 @@ var init_SetupStepper = __esm({
|
|
|
29974
29959
|
});
|
|
29975
29960
|
|
|
29976
29961
|
// packages/experience-design-system-cli-legacy/src/setup/steps/StepLayout.tsx
|
|
29977
|
-
import { Box as Box40, Text as
|
|
29962
|
+
import { Box as Box40, Text as Text42 } from "ink";
|
|
29978
29963
|
import { jsx as jsx49, jsxs as jsxs41 } from "react/jsx-runtime";
|
|
29979
29964
|
function StepLayout({ helpText, children, prompt }) {
|
|
29980
29965
|
return /* @__PURE__ */ jsxs41(Box40, { flexDirection: "column", children: [
|
|
29981
29966
|
children,
|
|
29982
29967
|
prompt && /* @__PURE__ */ jsx49(Box40, { marginTop: 1, children: prompt }),
|
|
29983
|
-
helpText && /* @__PURE__ */ jsx49(Box40, { marginTop: 1, children: /* @__PURE__ */ jsx49(
|
|
29968
|
+
helpText && /* @__PURE__ */ jsx49(Box40, { marginTop: 1, children: /* @__PURE__ */ jsx49(Text42, { color: PALETTE.muted, children: helpText }) })
|
|
29984
29969
|
] });
|
|
29985
29970
|
}
|
|
29986
29971
|
function StepSuccess({ children }) {
|
|
29987
|
-
return /* @__PURE__ */ jsxs41(
|
|
29972
|
+
return /* @__PURE__ */ jsxs41(Text42, { color: PALETTE.success, children: [
|
|
29988
29973
|
"\u2713 ",
|
|
29989
29974
|
children
|
|
29990
29975
|
] });
|
|
29991
29976
|
}
|
|
29992
29977
|
function StepWarning({ children }) {
|
|
29993
|
-
return /* @__PURE__ */ jsxs41(
|
|
29978
|
+
return /* @__PURE__ */ jsxs41(Text42, { color: PALETTE.warning, children: [
|
|
29994
29979
|
"\u26A0 ",
|
|
29995
29980
|
children
|
|
29996
29981
|
] });
|
|
@@ -29998,9 +29983,9 @@ function StepWarning({ children }) {
|
|
|
29998
29983
|
function StepValue({ label, value }) {
|
|
29999
29984
|
const color = value ? void 0 : PALETTE.warning;
|
|
30000
29985
|
return /* @__PURE__ */ jsxs41(Box40, { children: [
|
|
30001
|
-
/* @__PURE__ */ jsx49(Box40, { width: 2, children: /* @__PURE__ */ jsx49(
|
|
30002
|
-
/* @__PURE__ */ jsx49(Box40, { width: 20, flexShrink: 0, children: /* @__PURE__ */ jsx49(
|
|
30003
|
-
/* @__PURE__ */ jsx49(
|
|
29986
|
+
/* @__PURE__ */ jsx49(Box40, { width: 2, children: /* @__PURE__ */ jsx49(Text42, { color, children: value ? "" : "\u26A0" }) }),
|
|
29987
|
+
/* @__PURE__ */ jsx49(Box40, { width: 20, flexShrink: 0, children: /* @__PURE__ */ jsx49(Text42, { color, children: label }) }),
|
|
29988
|
+
/* @__PURE__ */ jsx49(Text42, { color, children: value || "(not set)" })
|
|
30004
29989
|
] });
|
|
30005
29990
|
}
|
|
30006
29991
|
var init_StepLayout = __esm({
|
|
@@ -30012,7 +29997,7 @@ var init_StepLayout = __esm({
|
|
|
30012
29997
|
|
|
30013
29998
|
// packages/experience-design-system-cli-legacy/src/setup/steps/CodingAgentScreen.tsx
|
|
30014
29999
|
import { useEffect as useEffect15, useRef as useRef10, useState as useState20 } from "react";
|
|
30015
|
-
import { Box as Box41, Text as
|
|
30000
|
+
import { Box as Box41, Text as Text43 } from "ink";
|
|
30016
30001
|
import { Select, TextInput } from "@inkjs/ui";
|
|
30017
30002
|
import { jsx as jsx50, jsxs as jsxs42 } from "react/jsx-runtime";
|
|
30018
30003
|
async function detectAgents(exists = binaryExists) {
|
|
@@ -30071,7 +30056,7 @@ function CodingAgentScreen({ onDone, deps }) {
|
|
|
30071
30056
|
afterSelection(agent);
|
|
30072
30057
|
};
|
|
30073
30058
|
const chooser = (question, options, describe, onPick) => /* @__PURE__ */ jsxs42(Box41, { flexDirection: "column", children: [
|
|
30074
|
-
/* @__PURE__ */ jsx50(
|
|
30059
|
+
/* @__PURE__ */ jsx50(Text43, { children: question }),
|
|
30075
30060
|
/* @__PURE__ */ jsx50(Box41, { marginTop: 1, children: /* @__PURE__ */ jsx50(
|
|
30076
30061
|
Select,
|
|
30077
30062
|
{
|
|
@@ -30119,7 +30104,7 @@ function CodingAgentScreen({ onDone, deps }) {
|
|
|
30119
30104
|
{
|
|
30120
30105
|
helpText: AGENT_HELP,
|
|
30121
30106
|
prompt: /* @__PURE__ */ jsxs42(Box41, { children: [
|
|
30122
|
-
/* @__PURE__ */ jsx50(
|
|
30107
|
+
/* @__PURE__ */ jsx50(Text43, { children: "Model name (optional - press Enter for Codex default): " }),
|
|
30123
30108
|
/* @__PURE__ */ jsx50(
|
|
30124
30109
|
TextInput,
|
|
30125
30110
|
{
|
|
@@ -30131,18 +30116,18 @@ function CodingAgentScreen({ onDone, deps }) {
|
|
|
30131
30116
|
children: [
|
|
30132
30117
|
...notes,
|
|
30133
30118
|
/* @__PURE__ */ jsx50(StepWarning, { children: "No OPENAI_API_KEY \u2014 using ChatGPT account authentication." }, "no-key"),
|
|
30134
|
-
/* @__PURE__ */ jsx50(
|
|
30119
|
+
/* @__PURE__ */ jsx50(Text43, { color: PALETTE.muted, children: "Tip: run codex then type /model to browse all available models." }, "tip")
|
|
30135
30120
|
]
|
|
30136
30121
|
}
|
|
30137
30122
|
);
|
|
30138
30123
|
}
|
|
30139
30124
|
if (phase.kind === "installing") {
|
|
30140
|
-
return /* @__PURE__ */ jsx50(StepLayout, { helpText: AGENT_HELP, children: [...notes, /* @__PURE__ */ jsx50(
|
|
30125
|
+
return /* @__PURE__ */ jsx50(StepLayout, { helpText: AGENT_HELP, children: [...notes, /* @__PURE__ */ jsx50(Text43, { children: `Installing ${phase.agent.name}\u2026` }, "installing")] });
|
|
30141
30126
|
}
|
|
30142
30127
|
if (phase.kind === "failed") {
|
|
30143
|
-
return /* @__PURE__ */ jsx50(StepLayout, { helpText: AGENT_HELP, children: [...notes, /* @__PURE__ */ jsx50(
|
|
30128
|
+
return /* @__PURE__ */ jsx50(StepLayout, { helpText: AGENT_HELP, children: [...notes, /* @__PURE__ */ jsx50(Text43, { children: `\u2717 ${phase.message}` }, "failed")] });
|
|
30144
30129
|
}
|
|
30145
|
-
return /* @__PURE__ */ jsx50(
|
|
30130
|
+
return /* @__PURE__ */ jsx50(Text43, { color: PALETTE.muted, children: "Looking for a coding agent\u2026" });
|
|
30146
30131
|
}
|
|
30147
30132
|
var AGENT_HELP, SKIP_VALUE;
|
|
30148
30133
|
var init_CodingAgentScreen = __esm({
|
|
@@ -30152,6 +30137,7 @@ var init_CodingAgentScreen = __esm({
|
|
|
30152
30137
|
init_credentials_store();
|
|
30153
30138
|
init_shell();
|
|
30154
30139
|
init_StepLayout();
|
|
30140
|
+
init_theme();
|
|
30155
30141
|
AGENT_HELP = "Experiences import requires a coding agent to generate component definitions.";
|
|
30156
30142
|
SKIP_VALUE = "\0skip";
|
|
30157
30143
|
}
|
|
@@ -30159,7 +30145,7 @@ var init_CodingAgentScreen = __esm({
|
|
|
30159
30145
|
|
|
30160
30146
|
// packages/experience-design-system-cli-legacy/src/setup/steps/ContentfulCredentialsScreen.tsx
|
|
30161
30147
|
import { useEffect as useEffect16, useRef as useRef11, useState as useState21 } from "react";
|
|
30162
|
-
import { Box as Box42, Text as
|
|
30148
|
+
import { Box as Box42, Text as Text44 } from "ink";
|
|
30163
30149
|
import { PasswordInput, Select as Select2, TextInput as TextInput2 } from "@inkjs/ui";
|
|
30164
30150
|
import { Fragment as Fragment19, jsx as jsx51, jsxs as jsxs43 } from "react/jsx-runtime";
|
|
30165
30151
|
function envShadowingWarning(env) {
|
|
@@ -30178,7 +30164,7 @@ function ContentfulCredentialsScreen({ onDone }) {
|
|
|
30178
30164
|
useEffect16(() => {
|
|
30179
30165
|
void readExperiencesCredentials().then(setStored);
|
|
30180
30166
|
}, []);
|
|
30181
|
-
if (!stored) return /* @__PURE__ */ jsx51(
|
|
30167
|
+
if (!stored) return /* @__PURE__ */ jsx51(Text44, { color: PALETTE.muted, children: "Reading saved credentials\u2026" });
|
|
30182
30168
|
const currentHost = stored.host ?? DEFAULT_CONFIGURED_HOST;
|
|
30183
30169
|
const hasAny = Boolean(stored.spaceId || stored.environmentId || stored.cmaToken);
|
|
30184
30170
|
const allSet = Boolean(stored.spaceId && stored.environmentId && stored.cmaToken);
|
|
@@ -30186,7 +30172,7 @@ function ContentfulCredentialsScreen({ onDone }) {
|
|
|
30186
30172
|
const summary = /* @__PURE__ */ jsxs43(Fragment19, { children: [
|
|
30187
30173
|
shadowing && /* @__PURE__ */ jsx51(StepWarning, { children: shadowing }),
|
|
30188
30174
|
hasAny && /* @__PURE__ */ jsxs43(Box42, { flexDirection: "column", marginTop: shadowing ? 1 : 0, children: [
|
|
30189
|
-
/* @__PURE__ */ jsx51(
|
|
30175
|
+
/* @__PURE__ */ jsx51(Text44, { children: "Current values:" }),
|
|
30190
30176
|
/* @__PURE__ */ jsx51(StepValue, { label: "Space ID", value: stored.spaceId }),
|
|
30191
30177
|
/* @__PURE__ */ jsx51(StepValue, { label: "Environment ID", value: stored.environmentId }),
|
|
30192
30178
|
/* @__PURE__ */ jsx51(StepValue, { label: "CMA Token", value: stored.cmaToken ? maskToken(stored.cmaToken) : void 0 }),
|
|
@@ -30205,7 +30191,7 @@ function ContentfulCredentialsScreen({ onDone }) {
|
|
|
30205
30191
|
{
|
|
30206
30192
|
helpText,
|
|
30207
30193
|
prompt: /* @__PURE__ */ jsxs43(Box42, { flexDirection: "column", children: [
|
|
30208
|
-
/* @__PURE__ */ jsx51(
|
|
30194
|
+
/* @__PURE__ */ jsx51(Text44, { children: "Contentful credentials" }),
|
|
30209
30195
|
/* @__PURE__ */ jsx51(Box42, { marginTop: 1, children: /* @__PURE__ */ jsx51(
|
|
30210
30196
|
Select2,
|
|
30211
30197
|
{
|
|
@@ -30248,19 +30234,19 @@ function ContentfulCredentialsScreen({ onDone }) {
|
|
|
30248
30234
|
};
|
|
30249
30235
|
const prompts = {
|
|
30250
30236
|
spaceId: /* @__PURE__ */ jsxs43(Box42, { children: [
|
|
30251
|
-
/* @__PURE__ */ jsx51(
|
|
30237
|
+
/* @__PURE__ */ jsx51(Text44, { children: `Space ID${stored.spaceId ? ` [${stored.spaceId}]` : ""}: ` }),
|
|
30252
30238
|
/* @__PURE__ */ jsx51(TextInput2, { onSubmit: (v) => advance("spaceId", v) }, "spaceId")
|
|
30253
30239
|
] }),
|
|
30254
30240
|
environmentId: /* @__PURE__ */ jsxs43(Box42, { children: [
|
|
30255
|
-
/* @__PURE__ */ jsx51(
|
|
30241
|
+
/* @__PURE__ */ jsx51(Text44, { children: `Environment ID [${stored.environmentId || "master"}]: ` }),
|
|
30256
30242
|
/* @__PURE__ */ jsx51(TextInput2, { onSubmit: (v) => advance("environmentId", v) }, "environmentId")
|
|
30257
30243
|
] }),
|
|
30258
30244
|
cmaToken: /* @__PURE__ */ jsxs43(Box42, { children: [
|
|
30259
|
-
/* @__PURE__ */ jsx51(
|
|
30245
|
+
/* @__PURE__ */ jsx51(Text44, { children: `CMA token${stored.cmaToken ? " [press Enter to keep existing]" : " (paste here)"}: ` }),
|
|
30260
30246
|
/* @__PURE__ */ jsx51(PasswordInput, { onSubmit: (v) => advance("cmaToken", v) }, "cmaToken")
|
|
30261
30247
|
] }),
|
|
30262
30248
|
host: /* @__PURE__ */ jsxs43(Box42, { children: [
|
|
30263
|
-
/* @__PURE__ */ jsx51(
|
|
30249
|
+
/* @__PURE__ */ jsx51(Text44, { children: `API host [${currentHost}]: ` }),
|
|
30264
30250
|
/* @__PURE__ */ jsx51(TextInput2, { onSubmit: (v) => advance("host", v) }, "host")
|
|
30265
30251
|
] })
|
|
30266
30252
|
};
|
|
@@ -30273,6 +30259,7 @@ var init_ContentfulCredentialsScreen = __esm({
|
|
|
30273
30259
|
init_credentials_store();
|
|
30274
30260
|
init_host_utils();
|
|
30275
30261
|
init_StepLayout();
|
|
30262
|
+
init_theme();
|
|
30276
30263
|
ENV_KEYS = ["CONTENTFUL_SPACE_ID", "CONTENTFUL_ENVIRONMENT_ID", "CONTENTFUL_MANAGEMENT_TOKEN", "EDS_HOST"];
|
|
30277
30264
|
ENTER = "enter";
|
|
30278
30265
|
KEEP = "keep";
|
|
@@ -30282,7 +30269,7 @@ var init_ContentfulCredentialsScreen = __esm({
|
|
|
30282
30269
|
|
|
30283
30270
|
// packages/experience-design-system-cli-legacy/src/setup/steps/preferences/BooleanInput.tsx
|
|
30284
30271
|
import { useEffect as useEffect17, useState as useState22 } from "react";
|
|
30285
|
-
import { Box as Box43, Text as
|
|
30272
|
+
import { Box as Box43, Text as Text45 } from "ink";
|
|
30286
30273
|
import { Select as Select3 } from "@inkjs/ui";
|
|
30287
30274
|
import { jsx as jsx52, jsxs as jsxs44 } from "react/jsx-runtime";
|
|
30288
30275
|
function tick(labels, forOn, current) {
|
|
@@ -30302,7 +30289,7 @@ function BooleanInput({
|
|
|
30302
30289
|
useEffect17(() => {
|
|
30303
30290
|
void readExperiencesCredentials().then(setStored);
|
|
30304
30291
|
}, []);
|
|
30305
|
-
if (!stored) return /* @__PURE__ */ jsx52(
|
|
30292
|
+
if (!stored) return /* @__PURE__ */ jsx52(Text45, { color: PALETTE.muted, children: "Reading saved preferences\u2026" });
|
|
30306
30293
|
const current = read(stored) ?? fallback;
|
|
30307
30294
|
const submit = (value) => {
|
|
30308
30295
|
if (value === current) {
|
|
@@ -30316,7 +30303,7 @@ function BooleanInput({
|
|
|
30316
30303
|
{
|
|
30317
30304
|
helpText,
|
|
30318
30305
|
prompt: /* @__PURE__ */ jsxs44(Box43, { flexDirection: "column", children: [
|
|
30319
|
-
/* @__PURE__ */ jsx52(
|
|
30306
|
+
/* @__PURE__ */ jsx52(Text45, { children: question }),
|
|
30320
30307
|
/* @__PURE__ */ jsx52(Box43, { marginTop: 1, children: /* @__PURE__ */ jsx52(
|
|
30321
30308
|
Select3,
|
|
30322
30309
|
{
|
|
@@ -30338,6 +30325,7 @@ var init_BooleanInput = __esm({
|
|
|
30338
30325
|
"use strict";
|
|
30339
30326
|
init_credentials_store();
|
|
30340
30327
|
init_StepLayout();
|
|
30328
|
+
init_theme();
|
|
30341
30329
|
}
|
|
30342
30330
|
});
|
|
30343
30331
|
|
|
@@ -30389,7 +30377,7 @@ var init_ColorPreferenceScreen = __esm({
|
|
|
30389
30377
|
|
|
30390
30378
|
// packages/experience-design-system-cli-legacy/src/setup/steps/preferences/CustomPromptScreen.tsx
|
|
30391
30379
|
import { useEffect as useEffect18, useState as useState23 } from "react";
|
|
30392
|
-
import { Box as Box44, Text as
|
|
30380
|
+
import { Box as Box44, Text as Text46 } from "ink";
|
|
30393
30381
|
import { ConfirmInput, TextInput as TextInput3 } from "@inkjs/ui";
|
|
30394
30382
|
import { jsx as jsx55, jsxs as jsxs45 } from "react/jsx-runtime";
|
|
30395
30383
|
function parseCustomSkillPath(answer) {
|
|
@@ -30413,7 +30401,7 @@ function CustomPromptsScreen({ onDone }) {
|
|
|
30413
30401
|
useEffect18(() => {
|
|
30414
30402
|
void readExperiencesCredentials().then(setStored);
|
|
30415
30403
|
}, []);
|
|
30416
|
-
if (!stored) return /* @__PURE__ */ jsx55(
|
|
30404
|
+
if (!stored) return /* @__PURE__ */ jsx55(Text46, { color: PALETTE.muted, children: "Reading saved prompt paths\u2026" });
|
|
30417
30405
|
const submit = (answer) => {
|
|
30418
30406
|
const next = applyCustomSkillPath(stored, parseCustomSkillPath(answer));
|
|
30419
30407
|
void writeExperiencesCredentials(next).then(() => onDone("completed"));
|
|
@@ -30424,7 +30412,7 @@ function CustomPromptsScreen({ onDone }) {
|
|
|
30424
30412
|
{
|
|
30425
30413
|
helpText: CUSTOM_PROMPTS_HELP,
|
|
30426
30414
|
prompt: /* @__PURE__ */ jsxs45(Box44, { children: [
|
|
30427
|
-
/* @__PURE__ */ jsx55(
|
|
30415
|
+
/* @__PURE__ */ jsx55(Text46, { children: "Use your own prompt file instead of the built-in one? " }),
|
|
30428
30416
|
/* @__PURE__ */ jsx55(
|
|
30429
30417
|
ConfirmInput,
|
|
30430
30418
|
{
|
|
@@ -30442,7 +30430,7 @@ function CustomPromptsScreen({ onDone }) {
|
|
|
30442
30430
|
{
|
|
30443
30431
|
helpText: CUSTOM_PROMPTS_HELP,
|
|
30444
30432
|
prompt: /* @__PURE__ */ jsxs45(Box44, { children: [
|
|
30445
|
-
/* @__PURE__ */ jsx55(
|
|
30433
|
+
/* @__PURE__ */ jsx55(Text46, { children: customSkillPathQuestion(stored.generatePromptPath) }),
|
|
30446
30434
|
/* @__PURE__ */ jsx55(TextInput3, { onSubmit: submit })
|
|
30447
30435
|
] })
|
|
30448
30436
|
}
|
|
@@ -30454,6 +30442,7 @@ var init_CustomPromptScreen = __esm({
|
|
|
30454
30442
|
"use strict";
|
|
30455
30443
|
init_credentials_store();
|
|
30456
30444
|
init_StepLayout();
|
|
30445
|
+
init_theme();
|
|
30457
30446
|
CUSTOM_PROMPTS_HELP = "Replaces the built-in instructions the coding agent follows when it generates components.";
|
|
30458
30447
|
}
|
|
30459
30448
|
});
|
|
@@ -30483,7 +30472,7 @@ var init_DebugLogsScreen = __esm({
|
|
|
30483
30472
|
|
|
30484
30473
|
// packages/experience-design-system-cli-legacy/src/setup/steps/preferences/PreferencesMenu.tsx
|
|
30485
30474
|
import { useState as useState24 } from "react";
|
|
30486
|
-
import { Box as Box45, Text as
|
|
30475
|
+
import { Box as Box45, Text as Text47 } from "ink";
|
|
30487
30476
|
import { Select as Select4 } from "@inkjs/ui";
|
|
30488
30477
|
import { jsx as jsx57, jsxs as jsxs46 } from "react/jsx-runtime";
|
|
30489
30478
|
function PreferencesMenu({ onDone }) {
|
|
@@ -30514,7 +30503,7 @@ function PreferenceList({ changed, onOpen, onDone }) {
|
|
|
30514
30503
|
{
|
|
30515
30504
|
helpText: PREFERENCES_MENU_HELP,
|
|
30516
30505
|
prompt: /* @__PURE__ */ jsxs46(Box45, { flexDirection: "column", children: [
|
|
30517
|
-
/* @__PURE__ */ jsx57(
|
|
30506
|
+
/* @__PURE__ */ jsx57(Text47, { children: "Preferences" }),
|
|
30518
30507
|
/* @__PURE__ */ jsx57(Box45, { marginTop: 1, children: /* @__PURE__ */ jsx57(
|
|
30519
30508
|
Select4,
|
|
30520
30509
|
{
|
|
@@ -30779,23 +30768,23 @@ var init_prerequisites = __esm({
|
|
|
30779
30768
|
|
|
30780
30769
|
// packages/experience-design-system-cli-legacy/src/setup/steps/prerequisites/PrerequisitesScreen.tsx
|
|
30781
30770
|
import { useEffect as useEffect19, useRef as useRef12, useState as useState25 } from "react";
|
|
30782
|
-
import { Box as Box46, Text as
|
|
30771
|
+
import { Box as Box46, Text as Text48 } from "ink";
|
|
30783
30772
|
import { ConfirmInput as ConfirmInput2 } from "@inkjs/ui";
|
|
30784
30773
|
import { jsx as jsx58, jsxs as jsxs47 } from "react/jsx-runtime";
|
|
30785
30774
|
function EventLine({ event }) {
|
|
30786
|
-
if (event.kind === "success") return /* @__PURE__ */ jsxs47(
|
|
30775
|
+
if (event.kind === "success") return /* @__PURE__ */ jsxs47(Text48, { color: PALETTE.success, children: [
|
|
30787
30776
|
"\u2713 ",
|
|
30788
30777
|
event.message
|
|
30789
30778
|
] });
|
|
30790
|
-
if (event.kind === "failure") return /* @__PURE__ */ jsxs47(
|
|
30779
|
+
if (event.kind === "failure") return /* @__PURE__ */ jsxs47(Text48, { color: PALETTE.error, children: [
|
|
30791
30780
|
"\u2717 ",
|
|
30792
30781
|
event.message
|
|
30793
30782
|
] });
|
|
30794
|
-
if (event.kind === "warning") return /* @__PURE__ */ jsxs47(
|
|
30783
|
+
if (event.kind === "warning") return /* @__PURE__ */ jsxs47(Text48, { color: PALETTE.warning, children: [
|
|
30795
30784
|
"\u26A0 ",
|
|
30796
30785
|
event.message
|
|
30797
30786
|
] });
|
|
30798
|
-
return /* @__PURE__ */ jsx58(
|
|
30787
|
+
return /* @__PURE__ */ jsx58(Text48, { children: event.message });
|
|
30799
30788
|
}
|
|
30800
30789
|
function PrerequisitesScreen({
|
|
30801
30790
|
repoRoot,
|
|
@@ -30838,7 +30827,7 @@ function PrerequisitesScreen({
|
|
|
30838
30827
|
StepLayout,
|
|
30839
30828
|
{
|
|
30840
30829
|
prompt: confirm ? /* @__PURE__ */ jsxs47(Box46, { children: [
|
|
30841
|
-
/* @__PURE__ */ jsxs47(
|
|
30830
|
+
/* @__PURE__ */ jsxs47(Text48, { children: [
|
|
30842
30831
|
confirm.question,
|
|
30843
30832
|
" "
|
|
30844
30833
|
] }),
|
|
@@ -30851,7 +30840,7 @@ function PrerequisitesScreen({
|
|
|
30851
30840
|
},
|
|
30852
30841
|
confirm.question
|
|
30853
30842
|
)
|
|
30854
|
-
] }) : /* @__PURE__ */ jsx58(
|
|
30843
|
+
] }) : /* @__PURE__ */ jsx58(Text48, { color: PALETTE.info, children: "\u27F3 Checking prerequisites\u2026" }),
|
|
30855
30844
|
children: /* @__PURE__ */ jsx58(Box46, { flexDirection: "column", children: events.map((event, index) => /* @__PURE__ */ jsx58(EventLine, { event }, `${index}-${event.message}`)) })
|
|
30856
30845
|
}
|
|
30857
30846
|
);
|
|
@@ -30873,7 +30862,7 @@ __export(SetupScreen_exports, {
|
|
|
30873
30862
|
formatSetupCompletionMessage: () => formatSetupCompletionMessage
|
|
30874
30863
|
});
|
|
30875
30864
|
import { useEffect as useEffect20, useRef as useRef13, useState as useState26 } from "react";
|
|
30876
|
-
import { Box as Box47, Text as
|
|
30865
|
+
import { Box as Box47, Text as Text49 } from "ink";
|
|
30877
30866
|
import { jsx as jsx59, jsxs as jsxs48 } from "react/jsx-runtime";
|
|
30878
30867
|
function countRequiredFailures(results) {
|
|
30879
30868
|
return results.filter((result) => result.required && result.status === "failed").length;
|
|
@@ -30964,8 +30953,8 @@ function SetupScreen({
|
|
|
30964
30953
|
}, []);
|
|
30965
30954
|
return /* @__PURE__ */ jsxs48(Box47, { flexDirection: "column", paddingX: 1, children: [
|
|
30966
30955
|
/* @__PURE__ */ jsxs48(Box47, { justifyContent: "space-between", columnGap: 1, ...columns !== void 0 ? { width: columns - 2 } : {}, children: [
|
|
30967
|
-
/* @__PURE__ */ jsx59(Box47, { flexShrink: 0, children: /* @__PURE__ */ jsx59(
|
|
30968
|
-
/* @__PURE__ */ jsx59(Box47, { flexShrink: 0, children: /* @__PURE__ */ jsxs48(
|
|
30956
|
+
/* @__PURE__ */ jsx59(Box47, { flexShrink: 0, children: /* @__PURE__ */ jsx59(Text49, { bold: true, children: "experiences setup" }) }),
|
|
30957
|
+
/* @__PURE__ */ jsx59(Box47, { flexShrink: 0, children: /* @__PURE__ */ jsxs48(Text49, { color: PALETTE.muted, children: [
|
|
30969
30958
|
"v",
|
|
30970
30959
|
version
|
|
30971
30960
|
] }) })
|
|
@@ -30977,22 +30966,22 @@ function SetupScreen({
|
|
|
30977
30966
|
function SetupSummary({ outcome, notice }) {
|
|
30978
30967
|
const requiredFailed = countRequiredFailures(outcome.results);
|
|
30979
30968
|
return /* @__PURE__ */ jsxs48(Box47, { flexDirection: "column", marginTop: 1, children: [
|
|
30980
|
-
/* @__PURE__ */ jsx59(
|
|
30969
|
+
/* @__PURE__ */ jsx59(Text49, { bold: true, children: "Summary" }),
|
|
30981
30970
|
outcome.results.map((result) => {
|
|
30982
30971
|
if (result.status === "completed") {
|
|
30983
|
-
return /* @__PURE__ */ jsxs48(
|
|
30972
|
+
return /* @__PURE__ */ jsxs48(Text49, { color: PALETTE.success, children: [
|
|
30984
30973
|
"\u2713 ",
|
|
30985
30974
|
result.name
|
|
30986
30975
|
] }, result.name);
|
|
30987
30976
|
}
|
|
30988
30977
|
if (result.status === "skipped") {
|
|
30989
|
-
return /* @__PURE__ */ jsxs48(
|
|
30978
|
+
return /* @__PURE__ */ jsxs48(Text49, { color: PALETTE.muted, children: [
|
|
30990
30979
|
"\u2013 ",
|
|
30991
30980
|
result.name,
|
|
30992
30981
|
" \u2014 skipped"
|
|
30993
30982
|
] }, result.name);
|
|
30994
30983
|
}
|
|
30995
|
-
return /* @__PURE__ */ jsxs48(
|
|
30984
|
+
return /* @__PURE__ */ jsxs48(Text49, { color: result.required ? PALETTE.error : PALETTE.warning, children: [
|
|
30996
30985
|
result.required ? "\u2717" : "\u26A0",
|
|
30997
30986
|
" ",
|
|
30998
30987
|
result.name,
|
|
@@ -31000,10 +30989,10 @@ function SetupSummary({ outcome, notice }) {
|
|
|
31000
30989
|
result.required ? "required" : "optional"
|
|
31001
30990
|
] }, result.name);
|
|
31002
30991
|
}),
|
|
31003
|
-
notice && /* @__PURE__ */ jsx59(Box47, { marginTop: 1, children: /* @__PURE__ */ jsx59(
|
|
31004
|
-
/* @__PURE__ */ jsx59(Box47, { marginTop: 1, children: /* @__PURE__ */ jsx59(
|
|
31005
|
-
requiredFailed > 0 && /* @__PURE__ */ jsx59(
|
|
31006
|
-
/* @__PURE__ */ jsx59(
|
|
30992
|
+
notice && /* @__PURE__ */ jsx59(Box47, { marginTop: 1, children: /* @__PURE__ */ jsx59(Text49, { color: PALETTE.warning, children: notice }) }),
|
|
30993
|
+
/* @__PURE__ */ jsx59(Box47, { marginTop: 1, children: /* @__PURE__ */ jsx59(Text49, { bold: true, color: requiredFailed === 0 ? PALETTE.success : PALETTE.warning, children: formatSetupCompletionMessage(outcome.results) }) }),
|
|
30994
|
+
requiredFailed > 0 && /* @__PURE__ */ jsx59(Text49, { color: PALETTE.muted, children: "Complete the steps above, then re-run experiences setup." }),
|
|
30995
|
+
/* @__PURE__ */ jsx59(Text49, { color: PALETTE.muted, children: "Run experiences doctor any time to re-check." })
|
|
31007
30996
|
] });
|
|
31008
30997
|
}
|
|
31009
30998
|
var init_SetupScreen = __esm({
|