Skip to content

Commit 0f067a9

Browse files
author
DavidQ
committed
Match tool template header and body colors to Preview Generator V2 - PR_26126_067-tool-template-preview-generator-theme-match
1 parent 8ad84fa commit 0f067a9

3 files changed

Lines changed: 82 additions & 28 deletions

File tree

docs/dev/reports/playwright_v8_coverage_report.txt

Lines changed: 3 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -18,10 +18,7 @@ Exercised tool entry points detected:
1818
(0%) Workspace Manager - not exercised by this Playwright run
1919

2020
Changed runtime JS files covered:
21-
(67%) tools/templates/first-class-tool-starter/js/ToolStarterApp.js - executed lines 69/69; executed functions 8/12
22-
(92%) tools/templates/first-class-tool-starter/js/controls/ToolStarterShellControl.js - executed lines 111/111; executed functions 11/12
23-
(100%) tools/templates/first-class-tool-starter/js/bootstrap.js - executed lines 42/42; executed functions 4/4
24-
(100%) tools/templates/first-class-tool-starter/js/controls/AccordionSection.js - executed lines 27/27; executed functions 5/5
21+
(100%) none changed - no changed runtime JS files
2522

2623
Files with executed line/function counts where available:
2724
(2%) src/engine/input/ActionInputService.js - executed lines 397/397; executed functions 1/51
@@ -157,13 +154,7 @@ Files with executed line/function counts where available:
157154
(100%) tools/templates/first-class-tool-starter/js/services/ToolStateSerializer.js - executed lines 13/13; executed functions 3/3
158155

159156
Uncovered or low-coverage changed JS files:
160-
(100%) none - no low-coverage changed runtime JS files
157+
(100%) none changed - no changed runtime JS files
161158

162159
Changed JS files considered:
163-
(0%) tests/helpers/playwrightV8CoverageReporter.mjs - changed JS file not collected as browser runtime coverage
164-
(0%) tests/playwright/PreviewGeneratorV2Baseline.spec.mjs - changed JS file not collected as browser runtime coverage
165-
(0%) tools/templates/first-class-tool-starter/tests/playwright/FirstClassToolStarter.spec.mjs - changed JS file not collected as browser runtime coverage
166-
(67%) tools/templates/first-class-tool-starter/js/ToolStarterApp.js - changed JS file with browser V8 coverage
167-
(92%) tools/templates/first-class-tool-starter/js/controls/ToolStarterShellControl.js - changed JS file with browser V8 coverage
168-
(100%) tools/templates/first-class-tool-starter/js/bootstrap.js - changed JS file with browser V8 coverage
169-
(100%) tools/templates/first-class-tool-starter/js/controls/AccordionSection.js - changed JS file with browser V8 coverage
160+
(100%) none - no changed JS files
Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
PR_26126_067-tool-template-preview-generator-theme-match
2+
3+
Scope:
4+
- Updated tools/templates/first-class-tool-starter visual styling only.
5+
- No live tools, samples, schemas, roadmap, or tools/shared files were modified.
6+
7+
Changes:
8+
- Matched the template body/background color system to Preview Generator V2 using the shared purple gradient and translucent panel surfaces.
9+
- Matched the template header frame, header summary strip, title, subtitle, meta, and description colors to the Preview Generator V2/Palette Manager shell style.
10+
- Updated template control surfaces, accordion panels, inputs, preview area, output block, and status log to use the same translucent dark panel and muted text color family.
11+
- Preserved external CSS only; no inline style, inline script block, or inline event handler was added.
12+
- Kept src/engine/theme imports intact and kept tools/shared unused.
13+
14+
Validation:
15+
- git diff --check -- tools/templates/first-class-tool-starter/styles/toolStarter.css
16+
- rg check confirmed tools/templates/first-class-tool-starter/index.html has no inline style block, inline script block, or inline event handlers.
17+
- npm run test:workspace-v2
18+
19+
Playwright impacted: Yes
20+
- The PR changes visible template styling on a Playwright-covered tool template.
21+
- npm run test:workspace-v2 passed.
22+
23+
Manual test notes:
24+
- Template header lines now use the same purple gradient frame, dark summary strip, white title, and muted subtitle/meta/description color system as Preview Generator V2.
25+
- Body, menu, panels, accordions, controls, preview, output, and status surfaces now use the same translucent purple/dark color family.

tools/templates/first-class-tool-starter/styles/toolStarter.css

Lines changed: 54 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,14 @@
11
:root {
2-
--tool-starter-bg: #10131a;
3-
--tool-starter-panel: #181d28;
4-
--tool-starter-panel-strong: #202738;
5-
--tool-starter-line: #3a4356;
6-
--tool-starter-text: #eef2ff;
7-
--tool-starter-muted: #a9b4c7;
8-
--tool-starter-accent: #5ad7c7;
9-
--tool-starter-danger: #ff7a7a;
2+
--tool-starter-bg: var(--bg-gradient, linear-gradient(180deg, #c4b5fd 0%, #a78bfa 18%, #8b5cf6 36%, #7c3aed 54%, #6d28d9 74%, #5b21b6 88%, #4c1d95 100%));
3+
--tool-starter-panel: var(--pm-surface, rgba(40, 25, 84, 0.72));
4+
--tool-starter-panel-strong: var(--pm-surface-strong, rgba(0, 0, 0, 0.24));
5+
--tool-starter-line: var(--pm-line, rgba(221, 214, 254, 0.26));
6+
--tool-starter-text: var(--text, #f7f4ff);
7+
--tool-starter-muted: var(--pm-text-muted, #c4b5fd);
8+
--tool-starter-header-muted: var(--muted, #e9ddff);
9+
--tool-starter-accent: var(--accent, #ddd6fe);
10+
--tool-starter-danger: #ffb4b4;
11+
--tool-starter-shadow: 0 18px 36px rgba(0, 0, 0, 0.22);
1012
color-scheme: dark;
1113
font-family: Inter, Segoe UI, system-ui, sans-serif;
1214
}
@@ -17,9 +19,11 @@
1719

1820
body {
1921
min-height: 100vh;
22+
min-height: 100dvh;
2023
margin: 0;
2124
background: var(--tool-starter-bg);
2225
color: var(--tool-starter-text);
26+
overflow-x: hidden;
2327
}
2428

2529
button,
@@ -51,15 +55,15 @@ textarea:focus-visible {
5155

5256
.is-collapsible {
5357
border-bottom: 1px solid var(--tool-starter-line);
54-
background: #151a24;
58+
background: transparent;
5559
}
5660

5761
.is-collapsible__summary {
5862
min-height: 36px;
5963
display: flex;
6064
align-items: center;
6165
cursor: pointer;
62-
color: var(--tool-starter-muted);
66+
color: var(--tool-starter-header-muted);
6367
font-weight: 700;
6468
padding: 8px 18px;
6569
}
@@ -74,21 +78,54 @@ textarea:focus-visible {
7478
}
7579

7680
.tool-starter__header {
77-
background: #151a24;
81+
background: transparent;
82+
padding: 10px 16px;
7883
}
7984

8085
.tool-starter__local-shell-frame {
81-
--tools-platform-frame-surface: #151a24;
86+
--tools-platform-frame-surface: var(--tool-starter-panel);
8287
--tools-platform-frame-line: var(--tool-starter-line);
88+
border: 1px solid var(--tool-starter-line);
89+
border-radius: 18px;
90+
background: var(--tool-starter-bg);
91+
box-shadow: var(--tool-starter-shadow);
8392
color: var(--tool-starter-text);
8493
}
8594

95+
.tool-starter__local-shell-frame .tools-platform-frame__accordion-content {
96+
display: grid;
97+
gap: 10px;
98+
padding: 12px 14px;
99+
}
100+
101+
.tool-starter__local-shell-frame .tools-platform-frame__accordion-summary {
102+
display: flex;
103+
align-items: center;
104+
justify-content: space-between;
105+
gap: 12px;
106+
border-radius: 12px;
107+
background: #4c1d95;
108+
padding: 12px 14px;
109+
}
110+
111+
.tool-starter__local-shell-frame .tools-platform-frame__title {
112+
margin: 0;
113+
color: #ffffff;
114+
}
115+
116+
.tool-starter__local-shell-frame .tools-platform-frame__eyebrow,
117+
.tool-starter__local-shell-frame .tools-platform-frame__meta,
118+
.tool-starter__local-shell-frame .tools-platform-frame__description {
119+
margin: 0;
120+
color: var(--tool-starter-header-muted);
121+
}
122+
86123
.tool-starter__menu {
87124
display: flex;
88125
justify-content: center;
89126
gap: 10px;
90127
border-bottom: 1px solid var(--tool-starter-line);
91-
background: #111722;
128+
background: var(--tool-starter-panel);
92129
padding: 10px;
93130
}
94131

@@ -123,6 +160,7 @@ textarea:focus-visible {
123160
border: 1px solid var(--tool-starter-line);
124161
border-radius: 8px;
125162
background: var(--tool-starter-panel);
163+
box-shadow: 0 14px 30px rgba(0, 0, 0, 0.12);
126164
overflow: hidden;
127165
}
128166

@@ -195,7 +233,7 @@ textarea:focus-visible {
195233
min-width: 0;
196234
border: 1px solid var(--tool-starter-line);
197235
border-radius: 6px;
198-
background: #0d111a;
236+
background: var(--tool-starter-panel-strong);
199237
color: var(--tool-starter-text);
200238
padding: 8px 10px;
201239
}
@@ -217,7 +255,7 @@ textarea:focus-visible {
217255
place-items: center;
218256
border: 1px dashed var(--tool-starter-line);
219257
border-radius: 8px;
220-
background: #0d111a;
258+
background: var(--tool-starter-panel-strong);
221259
color: var(--tool-starter-muted);
222260
padding: 16px;
223261
text-align: center;
@@ -250,7 +288,7 @@ textarea:focus-visible {
250288
margin: 0;
251289
border: 1px solid var(--tool-starter-line);
252290
border-radius: 6px;
253-
background: #0d111a;
291+
background: var(--tool-starter-panel-strong);
254292
color: var(--tool-starter-text);
255293
overflow: auto;
256294
padding: 10px;

0 commit comments

Comments
 (0)