From ef009e319f0b3cd2e834c12eaa282dd3a46f1b8a Mon Sep 17 00:00:00 2001 From: Jordan Pittman Date: Fri, 22 Nov 2024 09:47:28 -0500 Subject: [PATCH 1/3] Reload variants when editing the theme in v4 --- packages/tailwindcss-language-server/src/projects.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/tailwindcss-language-server/src/projects.ts b/packages/tailwindcss-language-server/src/projects.ts index 3e53d7df..4761aea9 100644 --- a/packages/tailwindcss-language-server/src/projects.ts +++ b/packages/tailwindcss-language-server/src/projects.ts @@ -1026,6 +1026,7 @@ export async function createProjectService( state.designSystem = designSystem state.classList = classList as any + state.variants = getVariants(state) console.log('---- RELOADED ----') }, From bd6eb6b4c385e84dd3c901b1fc4a289f45f36930 Mon Sep 17 00:00:00 2001 From: Jordan Pittman Date: Fri, 22 Nov 2024 09:50:58 -0500 Subject: [PATCH 2/3] Remove `as any` --- packages/tailwindcss-language-server/src/projects.ts | 5 +++-- packages/tailwindcss-language-service/src/util/state.ts | 9 ++++++++- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/packages/tailwindcss-language-server/src/projects.ts b/packages/tailwindcss-language-server/src/projects.ts index 4761aea9..3a1df51d 100644 --- a/packages/tailwindcss-language-server/src/projects.ts +++ b/packages/tailwindcss-language-server/src/projects.ts @@ -45,6 +45,7 @@ import type { Settings, ClassNames, Variant, + ClassEntry, } from '@tailwindcss/language-service/src/util/state' import { provideDiagnostics } from './lsp/diagnosticsProvider' import { doCodeActions } from '@tailwindcss/language-service/src/codeActions/codeActionProvider' @@ -1014,7 +1015,7 @@ export async function createProjectService( }, }) - let classList = designSystem.getClassList().map((className) => { + let classList: ClassEntry[] = designSystem.getClassList().map((className) => { return [ className[0], { @@ -1025,7 +1026,7 @@ export async function createProjectService( }) state.designSystem = designSystem - state.classList = classList as any + state.classList = classList state.variants = getVariants(state) console.log('---- RELOADED ----') diff --git a/packages/tailwindcss-language-service/src/util/state.ts b/packages/tailwindcss-language-service/src/util/state.ts index dd1966ce..d16ca186 100644 --- a/packages/tailwindcss-language-service/src/util/state.ts +++ b/packages/tailwindcss-language-service/src/util/state.ts @@ -89,6 +89,13 @@ export interface Variant { selectors: (params?: { value?: string; label?: string }) => string[] } +export interface ClassMetadata { + color: culori.Color | KeywordColor | null + modifiers?: string[] +} + +export type ClassEntry = [string, ClassMetadata] + export interface State { enabled: boolean isCssConfig?: boolean @@ -127,7 +134,7 @@ export interface State { editor?: EditorState jit?: boolean jitContext?: any - classList?: Array<[string, { color: culori.Color | KeywordColor | null; modifiers?: string[] }]> + classList?: ClassEntry[] classListContainsMetadata?: boolean pluginVersions?: string completionItemData?: Record From 1667b22041dc79dab31ce4b39d89c9a89cd83479 Mon Sep 17 00:00:00 2001 From: Jordan Pittman Date: Fri, 22 Nov 2024 09:59:19 -0500 Subject: [PATCH 3/3] Update changelog --- packages/vscode-tailwindcss/CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/vscode-tailwindcss/CHANGELOG.md b/packages/vscode-tailwindcss/CHANGELOG.md index 334caf09..f0c28083 100644 --- a/packages/vscode-tailwindcss/CHANGELOG.md +++ b/packages/vscode-tailwindcss/CHANGELOG.md @@ -2,7 +2,7 @@ ## Prerelease -- Nothing yet! +- Reload variants when editing the theme in v4 ([#1094](https://github.com/tailwindlabs/tailwindcss-intellisense/pull/1094)) ## 0.12.14