From d0bd4027bb64ee37791d8e36e180a97d5402ba57 Mon Sep 17 00:00:00 2001 From: Juergen Kunz Date: Wed, 31 Dec 2025 14:01:42 +0000 Subject: [PATCH] feat(terminal): add dynamic bright/dark theming for terminal components and terminal preview --- .../dees-workspace-bright-theme.png | Bin 0 -> 91057 bytes .playwright-mcp/dees-workspace-dark-theme.png | Bin 0 -> 90845 bytes changelog.md | 10 +++ ts_web/00_commitinfo_data.ts | 2 +- .../dees-simple-appdash.ts | 1 - .../dees-workspace-terminal-preview.ts | 68 +++++++++++++----- .../dees-workspace-terminal.ts | 61 ++++++++++++---- 7 files changed, 109 insertions(+), 33 deletions(-) create mode 100644 .playwright-mcp/dees-workspace-bright-theme.png create mode 100644 .playwright-mcp/dees-workspace-dark-theme.png diff --git a/.playwright-mcp/dees-workspace-bright-theme.png b/.playwright-mcp/dees-workspace-bright-theme.png new file mode 100644 index 0000000000000000000000000000000000000000..03dd27a6107d679e6662e529a51e3da12c9358cc GIT binary patch literal 91057 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 literal 0 HcmV?d00001 diff --git a/.playwright-mcp/dees-workspace-dark-theme.png b/.playwright-mcp/dees-workspace-dark-theme.png new file mode 100644 index 0000000000000000000000000000000000000000..82b70614d996230ecbb2f4d26326588fa13e0deb GIT binary patch literal 90845 zcmc$`cT|&K*EWbB<4gx~xJ@kN$4k8`t(n1SJNhpDURO!8j z5PBy_F99;~dFPw&mFJnY-dVHO%=ssGPEOtD-1}Vn+WREzjhZ6q9ojoYL`0;oUja0U zh{y?#w_R>uC44YW8?z8TuDEL|z9cH`d%Q+O^bgT%zzc2fw9RQh;}Osle#f5d?msO* zf4028k@6;ZDw}Gia4nd=>XTs?Jav?pp4u_VAqfVqaYSu3_~7hK80g9qs;JN@3FaH- zTAi`FfUd&NRBhKDe!Rlm?2VSetC@u!odD}YO;ET#*qH^oIlU9UKHUc>sePW<$04{ z9k`T5RDbh|&E-7PPeekO^UA(&S@e&Oi~jSEZ1HH(=whzxN7R<5czSPduP36R(eF}U zO;jssS8UA8Ftf975oo7sloW$H#xqDcNhxp04)*is�)Vcb5k^(9!qkJ=yKsKTum_ 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 literal 0 HcmV?d00001 diff --git a/changelog.md b/changelog.md index 83c9d56..a69d543 100644 --- a/changelog.md +++ b/changelog.md @@ -1,5 +1,15 @@ # Changelog +## 2025-12-31 - 3.21.0 - feat(terminal) +add dynamic bright/dark theming for terminal components and terminal preview + +- Add bright/dark theme PNG assets under .playwright-mcp for previews. +- Replace hardcoded terminal background/colors with cssManager.bdTheme in workspace terminal and preview styles. +- Introduce getTerminalTheme helper to compute xterm theme for bright/dark modes. +- Subscribe to themeManager.themeObservable and apply updates to xterm (terminal.options.theme) so terminals update live on theme change. +- Remove hardcoded background property/CSS var and unused background accessor from workspace terminal. +- Ensure proper cleanup: unsubscribe theme subscriptions and dispose terminals in disconnectedCallback. + ## 2025-12-31 - 3.20.1 - fix(dees-workspace) fix demo wrapper and workspace layout; always render terminal preview diff --git a/ts_web/00_commitinfo_data.ts b/ts_web/00_commitinfo_data.ts index d728226..9c2bd38 100644 --- a/ts_web/00_commitinfo_data.ts +++ b/ts_web/00_commitinfo_data.ts @@ -3,6 +3,6 @@ */ export const commitinfo = { name: '@design.estate/dees-catalog', - version: '3.20.1', + version: '3.21.0', description: 'A comprehensive library that provides dynamic web components for building sophisticated and modern web applications using JavaScript and TypeScript.' } diff --git a/ts_web/elements/00group-simple/dees-simple-appdash/dees-simple-appdash.ts b/ts_web/elements/00group-simple/dees-simple-appdash/dees-simple-appdash.ts index d57955d..6c76418 100644 --- a/ts_web/elements/00group-simple/dees-simple-appdash/dees-simple-appdash.ts +++ b/ts_web/elements/00group-simple/dees-simple-appdash/dees-simple-appdash.ts @@ -417,7 +417,6 @@ export class DeesSimpleAppDash extends DeesElement { terminal.style.opacity = '0'; terminal.style.transform = 'translateY(8px) scale(0.99)'; terminal.style.transition = 'all 0.25s cubic-bezier(0.4, 0, 0.2, 1)'; - terminal.background = 'hsl(220 13% 8%)'; terminal.style.boxShadow = '0 25px 50px -12px rgb(0 0 0 / 0.5), 0 0 0 1px rgb(255 255 255 / 0.05)'; terminal.style.maxWidth = `calc(${maincontainer.clientWidth}px -240px)`; terminal.style.maxHeight = `calc(${maincontainer.clientHeight}px - 24px)`; diff --git a/ts_web/elements/00group-workspace/dees-workspace-terminal-preview/dees-workspace-terminal-preview.ts b/ts_web/elements/00group-workspace/dees-workspace-terminal-preview/dees-workspace-terminal-preview.ts index 5933e86..d6cf62d 100644 --- a/ts_web/elements/00group-workspace/dees-workspace-terminal-preview/dees-workspace-terminal-preview.ts +++ b/ts_web/elements/00group-workspace/dees-workspace-terminal-preview/dees-workspace-terminal-preview.ts @@ -55,6 +55,7 @@ export class DeesWorkspaceTerminalPreview extends DeesElement { private fitAddon: FitAddon | null = null; private lastLineCount: number = 0; private resizeObserver: ResizeObserver | null = null; + private terminalThemeSubscription: any = null; public static styles = [ themeDefaultStyles, @@ -69,8 +70,8 @@ export class DeesWorkspaceTerminalPreview extends DeesElement { height: 100%; border-radius: 8px; overflow: hidden; - background: #000000; - border: 1px solid hsl(0 0% 20%); + background: ${cssManager.bdTheme('#ffffff', '#000000')}; + border: 1px solid ${cssManager.bdTheme('hsl(0 0% 85%)', 'hsl(0 0% 20%)')}; display: flex; flex-direction: column; } @@ -80,20 +81,20 @@ export class DeesWorkspaceTerminalPreview extends DeesElement { align-items: center; gap: 8px; padding: 8px 12px; - background: hsl(0 0% 10%); + background: ${cssManager.bdTheme('hsl(0 0% 96%)', 'hsl(0 0% 10%)')}; font-size: 12px; font-family: 'SF Mono', 'Monaco', 'Inconsolata', 'Fira Code', monospace; - color: hsl(0 0% 60%); - border-bottom: 1px solid hsl(0 0% 20%); + color: ${cssManager.bdTheme('hsl(0 0% 40%)', 'hsl(0 0% 60%)')}; + border-bottom: 1px solid ${cssManager.bdTheme('hsl(0 0% 85%)', 'hsl(0 0% 20%)')}; flex-shrink: 0; } .terminal-header-icon { - color: hsl(0 0% 50%); + color: ${cssManager.bdTheme('hsl(0 0% 50%)', 'hsl(0 0% 50%)')}; } .terminal-header-command { - color: hsl(0 0% 80%); + color: ${cssManager.bdTheme('hsl(0 0% 20%)', 'hsl(0 0% 80%)')}; font-weight: 500; } @@ -148,8 +149,8 @@ export class DeesWorkspaceTerminalPreview extends DeesElement { } .xterm .composition-view { - background: #000000; - color: #fff; + background: ${cssManager.bdTheme('#ffffff', '#000000')}; + color: ${cssManager.bdTheme('#333333', '#ffffff')}; display: none; position: absolute; white-space: nowrap; @@ -161,7 +162,7 @@ export class DeesWorkspaceTerminalPreview extends DeesElement { } .xterm .xterm-viewport { - background-color: #000000; + background-color: ${cssManager.bdTheme('#ffffff', '#000000')}; overflow-y: scroll; cursor: default; position: absolute; @@ -243,16 +244,16 @@ export class DeesWorkspaceTerminalPreview extends DeesElement { } .xterm .xterm-viewport::-webkit-scrollbar-track { - background: hsl(0 0% 8%); + background: ${cssManager.bdTheme('hsl(0 0% 96%)', 'hsl(0 0% 8%)')}; } .xterm .xterm-viewport::-webkit-scrollbar-thumb { - background: hsl(0 0% 25%); + background: ${cssManager.bdTheme('hsl(0 0% 80%)', 'hsl(0 0% 25%)')}; border-radius: 4px; } .xterm .xterm-viewport::-webkit-scrollbar-thumb:hover { - background: hsl(0 0% 35%); + background: ${cssManager.bdTheme('hsl(0 0% 70%)', 'hsl(0 0% 35%)')}; } `, ]; @@ -271,6 +272,27 @@ export class DeesWorkspaceTerminalPreview extends DeesElement { `; } + /** + * Get terminal theme colors based on bright/dark mode + */ + private getTerminalTheme(isBright: boolean) { + return isBright + ? { + background: '#ffffff', + foreground: '#333333', + cursor: '#333333', + cursorAccent: '#ffffff', + selectionBackground: 'rgba(0, 0, 0, 0.2)', + } + : { + background: '#000000', + foreground: '#cccccc', + cursor: '#cccccc', + cursorAccent: '#000000', + selectionBackground: 'rgba(255, 255, 255, 0.2)', + }; + } + public async firstUpdated( _changedProperties: Map ): Promise { @@ -279,6 +301,10 @@ export class DeesWorkspaceTerminalPreview extends DeesElement { const container = this.shadowRoot?.getElementById('xterm-container'); if (!container) return; + // Get current theme from domtools + const domtoolsInstance = await this.domtoolsPromise; + const isBright = domtoolsInstance.themeManager.goBrightBoolean; + // Create xterm terminal in read-only mode this.terminal = new Terminal({ convertEol: true, @@ -286,13 +312,17 @@ export class DeesWorkspaceTerminalPreview extends DeesElement { disableStdin: true, fontSize: 12, fontFamily: "'SF Mono', 'Monaco', 'Inconsolata', 'Fira Code', monospace", - theme: { - background: '#000000', - foreground: '#cccccc', - }, + theme: this.getTerminalTheme(isBright), scrollback: 1000, }); + // Subscribe to theme changes + this.terminalThemeSubscription = domtoolsInstance.themeManager.themeObservable.subscribe((goBright: boolean) => { + if (this.terminal) { + this.terminal.options.theme = this.getTerminalTheme(goBright); + } + }); + this.fitAddon = new FitAddon(); this.terminal.loadAddon(this.fitAddon); this.terminal.open(container); @@ -334,6 +364,10 @@ export class DeesWorkspaceTerminalPreview extends DeesElement { this.resizeObserver.disconnect(); this.resizeObserver = null; } + if (this.terminalThemeSubscription) { + this.terminalThemeSubscription.unsubscribe(); + this.terminalThemeSubscription = null; + } if (this.terminal) { this.terminal.dispose(); this.terminal = null; diff --git a/ts_web/elements/00group-workspace/dees-workspace-terminal/dees-workspace-terminal.ts b/ts_web/elements/00group-workspace/dees-workspace-terminal/dees-workspace-terminal.ts index 79b25f4..89a07d1 100644 --- a/ts_web/elements/00group-workspace/dees-workspace-terminal/dees-workspace-terminal.ts +++ b/ts_web/elements/00group-workspace/dees-workspace-terminal/dees-workspace-terminal.ts @@ -47,9 +47,6 @@ export class DeesWorkspaceTerminal extends DeesElement { @property() accessor environmentVariables: { [key: string]: string } = {}; - @property() - accessor background: string = '#000000'; - /** * Promise that resolves when the environment is ready. * @deprecated Use executionEnvironment directly @@ -57,6 +54,9 @@ export class DeesWorkspaceTerminal extends DeesElement { private environmentDeferred = new domtools.plugins.smartpromise.Deferred(); public environmentPromise = this.environmentDeferred.promise; + // Theme subscription for dynamic theme updates + private terminalThemeSubscription: any = null; + constructor() { super(); this.resizeObserver = new ResizeObserver((entries) => { @@ -72,10 +72,9 @@ export class DeesWorkspaceTerminal extends DeesElement { themeDefaultStyles, cssManager.defaultStyles, css` - /* TODO: Migrate hardcoded values to --dees-* CSS variables */ :host { padding: 20px; - background: var(--dees-terminal-background, #000000); + background: ${cssManager.bdTheme('#ffffff', '#000000')}; position: absolute; height: 100%; width: 100%; @@ -170,8 +169,8 @@ export class DeesWorkspaceTerminal extends DeesElement { .xterm .composition-view { /* TODO: Composition position got messed up somewhere */ - background: var(--dees-terminal-background, #000000); - color: #fff; + background: ${cssManager.bdTheme('#ffffff', '#000000')}; + color: ${cssManager.bdTheme('#333333', '#ffffff')}; display: none; position: absolute; white-space: nowrap; @@ -184,7 +183,7 @@ export class DeesWorkspaceTerminal extends DeesElement { .xterm .xterm-viewport { /* On OS X this is required in order for the scroll bar to appear fully opaque */ - background-color: var(--dees-terminal-background, #000000); + background-color: ${cssManager.bdTheme('#ffffff', '#000000')}; overflow-y: scroll; cursor: default; position: absolute; @@ -275,25 +274,51 @@ export class DeesWorkspaceTerminal extends DeesElement { private fitAddon: FitAddon; private terminal: Terminal | null = null; + /** + * Get terminal theme colors based on bright/dark mode + */ + private getTerminalTheme(isBright: boolean) { + return isBright + ? { + background: '#ffffff', + foreground: '#333333', + cursor: '#333333', + cursorAccent: '#ffffff', + selectionBackground: 'rgba(0, 0, 0, 0.2)', + } + : { + background: '#000000', + foreground: '#cccccc', + cursor: '#cccccc', + cursorAccent: '#000000', + selectionBackground: 'rgba(255, 255, 255, 0.2)', + }; + } + public async firstUpdated( _changedProperties: Map ): Promise { - const domtools = await this.domtoolsPromise; + const domtoolsInstance = await this.domtoolsPromise; super.firstUpdated(_changedProperties); - // Sync CSS variable with background property - this.style.setProperty('--dees-terminal-background', this.background); + // Get current theme + const isBright = domtoolsInstance.themeManager.goBrightBoolean; const container = this.shadowRoot.getElementById('container'); const term = new Terminal({ convertEol: true, cursorBlink: true, - theme: { - background: this.background, - }, + theme: this.getTerminalTheme(isBright), }); this.terminal = term; + + // Subscribe to theme changes + this.terminalThemeSubscription = domtoolsInstance.themeManager.themeObservable.subscribe((goBright: boolean) => { + if (this.terminal) { + this.terminal.options.theme = this.getTerminalTheme(goBright); + } + }); this.fitAddon = new FitAddon(); term.loadAddon(this.fitAddon); @@ -383,6 +408,14 @@ export class DeesWorkspaceTerminal extends DeesElement { async disconnectedCallback(): Promise { this.resizeObserver.unobserve(this); + if (this.terminalThemeSubscription) { + this.terminalThemeSubscription.unsubscribe(); + this.terminalThemeSubscription = null; + } + if (this.terminal) { + this.terminal.dispose(); + this.terminal = null; + } await super.disconnectedCallback(); }