From 3c79f4543f3f884322c10af4a2855a194bdf566d Mon Sep 17 00:00:00 2001 From: rgehbt Date: Mon, 3 Nov 2025 23:23:41 +0800 Subject: [PATCH 1/4] chore(vscode): add tsconfig schema --- packages/vscode/package.json | 12 ++++++- packages/vscode/schemas/tsconfig.schema.json | 37 ++++++++++++++++++++ 2 files changed, 48 insertions(+), 1 deletion(-) create mode 100644 packages/vscode/schemas/tsconfig.schema.json diff --git a/packages/vscode/package.json b/packages/vscode/package.json index ecd5f1e2..72b1e828 100644 --- a/packages/vscode/package.json +++ b/packages/vscode/package.json @@ -45,6 +45,16 @@ ] } ], + "jsonValidation": [ + { + "fileMatch": "jsconfig*.json", + "url": "./schemas/tsconfig.schema.json" + }, + { + "fileMatch": "tsconfig*.json", + "url": "./schemas/tsconfig.schema.json" + } + ], "menus": { "commandPalette": [ { @@ -61,4 +71,4 @@ "dependencies": { "@css-modules-kit/ts-plugin": "^0.6.0" } -} +} \ No newline at end of file diff --git a/packages/vscode/schemas/tsconfig.schema.json b/packages/vscode/schemas/tsconfig.schema.json new file mode 100644 index 00000000..d71c6823 --- /dev/null +++ b/packages/vscode/schemas/tsconfig.schema.json @@ -0,0 +1,37 @@ +{ + "$schema": "http://json-schema.org/draft-07/schema#", + "properties": { + "cmkOptions": { + "type": "object", + "markdownDescription": "Config options for css-modules-kit.", + "properties": { + "dtsOutDir": { + "type": "string", + "default": "generated", + "markdownDescription": "Specifies the directory where `*.d.ts` files are output." + }, + "arbitraryExtensions": { + "type": "boolean", + "default": false, + "markdownDescription": "Determines whether to generate `*.module.d.css.ts` instead of `*.module.css.d.ts`." + }, + "namedExports": { + "type": "boolean", + "default": false, + "markdownDescription": "Determines whether to generate named exports in the d.ts file instead of a default export." + }, + "prioritizeNamedImports": { + "type": "boolean", + "default": false, + "markdownDescription": "Whether to prioritize named imports over namespace imports when adding import statements. This option only takes effect when `cmkOptions.namedExports` is `true`.\n\nWhen this option is `true`, `import { button } from '...'` will be added. When this option is `false`, `import button from '...'` will be added." + }, + "keyframes": { + "type": "boolean", + "default": true, + "title": "keyframes", + "markdownDescription": "Determines whether to generate the [token](https://github.com/mizdra/css-modules-kit/blob/main/docs/glossary.md#token) of keyframes in the d.ts file." + } + } + } + } +} From d85477b0d6e16cee811198a2ba7f979aeae67623 Mon Sep 17 00:00:00 2001 From: mizdra Date: Sun, 21 Dec 2025 01:16:46 +0900 Subject: [PATCH 2/4] chore(vscode): update tsconfig schema config --- packages/vscode/package.json | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/packages/vscode/package.json b/packages/vscode/package.json index 72b1e828..866d3377 100644 --- a/packages/vscode/package.json +++ b/packages/vscode/package.json @@ -47,11 +47,23 @@ ], "jsonValidation": [ { - "fileMatch": "jsconfig*.json", + "fileMatch": "tsconfig.json", "url": "./schemas/tsconfig.schema.json" }, { - "fileMatch": "tsconfig*.json", + "fileMatch": "tsconfig.*.json", + "url": "./schemas/tsconfig.schema.json" + }, + { + "fileMatch": "tsconfig-*.json", + "url": "./schemas/tsconfig.schema.json" + }, + { + "fileMatch": "jsconfig.json", + "url": "./schemas/tsconfig.schema.json" + }, + { + "fileMatch": "jsconfig.*.json", "url": "./schemas/tsconfig.schema.json" } ], From b5d5fecfe15cddac7eb74c7430c1d6a9278704d0 Mon Sep 17 00:00:00 2001 From: mizdra Date: Sun, 21 Dec 2025 01:18:44 +0900 Subject: [PATCH 3/4] chore: add changelog --- .changeset/fresh-dancers-pay.md | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 .changeset/fresh-dancers-pay.md diff --git a/.changeset/fresh-dancers-pay.md b/.changeset/fresh-dancers-pay.md new file mode 100644 index 00000000..7e6b028b --- /dev/null +++ b/.changeset/fresh-dancers-pay.md @@ -0,0 +1,5 @@ +--- +'css-modules-kit-vscode': minor +--- + +feat: enable cmkOptions completion in tsconfig.json From 6a1f8f5f20a15b0e5bf1444530f421594e65292d Mon Sep 17 00:00:00 2001 From: mizdra Date: Sun, 21 Dec 2025 01:19:22 +0900 Subject: [PATCH 4/4] format --- packages/vscode/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/vscode/package.json b/packages/vscode/package.json index 866d3377..50d5eb8d 100644 --- a/packages/vscode/package.json +++ b/packages/vscode/package.json @@ -83,4 +83,4 @@ "dependencies": { "@css-modules-kit/ts-plugin": "^0.6.0" } -} \ No newline at end of file +}