From aaf97df5f1825f6b296385aa1fca279a9a24e4f7 Mon Sep 17 00:00:00 2001 From: abalmush Date: Thu, 22 Jan 2026 13:28:20 +0200 Subject: [PATCH] fix: add override keyword to Lit component lifecycle methods Add the TypeScript `override` keyword to all Lit component methods that override parent class methods. This is required for Google's internal repository compilation. Methods updated: - render() - connectedCallback() - disconnectedCallback() - firstUpdated() - willUpdate() Fixes #463 --- samples/client/lit/contact/ui/snackbar.ts | 2 +- samples/client/lit/shell/ui/snackbar.ts | 2 +- samples/personalized_learning/src/flashcard.ts | 2 +- samples/personalized_learning/src/quiz-card.ts | 2 +- tools/editor/ui/drawable-canvas.ts | 6 +++--- tools/editor/ui/item-select.ts | 4 ++-- tools/editor/ui/splitter.ts | 10 +++++----- tools/inspector/ui/snackbar.ts | 2 +- tools/inspector/ui/splitter.ts | 10 +++++----- 9 files changed, 20 insertions(+), 20 deletions(-) diff --git a/samples/client/lit/contact/ui/snackbar.ts b/samples/client/lit/contact/ui/snackbar.ts index 91f2f036d..bb1ffdbb2 100644 --- a/samples/client/lit/contact/ui/snackbar.ts +++ b/samples/client/lit/contact/ui/snackbar.ts @@ -215,7 +215,7 @@ export class Snackbar extends LitElement { }); } - render() { + override render() { let rotate = false; let icon = ""; for (let i = this.#messages.length - 1; i >= 0; i--) { diff --git a/samples/client/lit/shell/ui/snackbar.ts b/samples/client/lit/shell/ui/snackbar.ts index 91f2f036d..bb1ffdbb2 100644 --- a/samples/client/lit/shell/ui/snackbar.ts +++ b/samples/client/lit/shell/ui/snackbar.ts @@ -215,7 +215,7 @@ export class Snackbar extends LitElement { }); } - render() { + override render() { let rotate = false; let icon = ""; for (let i = this.#messages.length - 1; i >= 0; i--) { diff --git a/samples/personalized_learning/src/flashcard.ts b/samples/personalized_learning/src/flashcard.ts index 28a5d85d9..38eff06c5 100644 --- a/samples/personalized_learning/src/flashcard.ts +++ b/samples/personalized_learning/src/flashcard.ts @@ -222,7 +222,7 @@ export class Flashcard extends LitElement { this._flipped = !this._flipped; } - render() { + override render() { const frontText = this.resolveStringValue(this.front); const backText = this.resolveStringValue(this.back); const categoryText = this.resolveStringValue(this.category); diff --git a/samples/personalized_learning/src/quiz-card.ts b/samples/personalized_learning/src/quiz-card.ts index ee9025247..eff5f7fa8 100644 --- a/samples/personalized_learning/src/quiz-card.ts +++ b/samples/personalized_learning/src/quiz-card.ts @@ -269,7 +269,7 @@ export class QuizCard extends LitElement { return selected?.isCorrect ?? false; } - render() { + override render() { const questionText = this.resolveStringValue(this.question); const categoryText = this.resolveStringValue(this.category); const explanationText = this.resolveStringValue(this.explanation); diff --git a/tools/editor/ui/drawable-canvas.ts b/tools/editor/ui/drawable-canvas.ts index 8cd6c3f3b..42ea6b781 100644 --- a/tools/editor/ui/drawable-canvas.ts +++ b/tools/editor/ui/drawable-canvas.ts @@ -200,12 +200,12 @@ export class DrawableCanvas extends LitElement { (localStorage.getItem("drawable-mode") as RenderMode) ?? "free"; } - connectedCallback(): void { + override connectedCallback(): void { super.connectedCallback(); this.#resizeObserver.observe(this); } - disconnectedCallback(): void { + override disconnectedCallback(): void { super.disconnectedCallback(); this.#resizeObserver.disconnect(); } @@ -347,7 +347,7 @@ export class DrawableCanvas extends LitElement { } } - render() { + override render() { return html`${svg` | Map @@ -349,7 +349,7 @@ export class Splitter extends LitElement { this.#updateStyles(); } - render() { + override render() { return html`${this.split.map((_, idx) => { const handle = idx < this.split.length - 1 diff --git a/tools/inspector/ui/snackbar.ts b/tools/inspector/ui/snackbar.ts index de6fcf0d2..cb862254b 100644 --- a/tools/inspector/ui/snackbar.ts +++ b/tools/inspector/ui/snackbar.ts @@ -216,7 +216,7 @@ export class Snackbar extends LitElement { }); } - render() { + override render() { let rotate = false; let icon = ""; for (let i = this.#messages.length - 1; i >= 0; i--) { diff --git a/tools/inspector/ui/splitter.ts b/tools/inspector/ui/splitter.ts index 38341de69..081977e97 100644 --- a/tools/inspector/ui/splitter.ts +++ b/tools/inspector/ui/splitter.ts @@ -118,13 +118,13 @@ export class Splitter extends LitElement { this.#setAndStore(); }); - connectedCallback(): void { + override connectedCallback(): void { super.connectedCallback(); this.#resizeObserver.observe(this); } - disconnectedCallback(): void { + override disconnectedCallback(): void { super.disconnectedCallback(); this.#resizeObserver.disconnect(); @@ -238,7 +238,7 @@ export class Splitter extends LitElement { return value; } - firstUpdated() { + override firstUpdated() { if (!this.name) { console.warn("Splitter has no name; it won't have any values stored."); return; @@ -337,7 +337,7 @@ export class Splitter extends LitElement { } } - protected willUpdate( + protected override willUpdate( changedProperties: | PropertyValueMap<{ direction: Direction }> | Map @@ -349,7 +349,7 @@ export class Splitter extends LitElement { this.#updateStyles(); } - render() { + override render() { return html`${this.split.map((_, idx) => { const handle = idx < this.split.length - 1