@css-modules-kit/core 0.6.0 → 0.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/checker.d.ts +9 -2
- package/dist/checker.d.ts.map +1 -1
- package/dist/checker.js +16 -14
- package/dist/checker.js.map +1 -1
- package/dist/config.d.ts +6 -32
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +60 -59
- package/dist/config.js.map +1 -1
- package/dist/diagnostic.d.ts.map +1 -1
- package/dist/diagnostic.js +8 -18
- package/dist/diagnostic.js.map +1 -1
- package/dist/{dts-creator.d.ts → dts-generator.d.ts} +6 -10
- package/dist/dts-generator.d.ts.map +1 -0
- package/dist/{dts-creator.js → dts-generator.js} +63 -25
- package/dist/dts-generator.js.map +1 -0
- package/dist/error.js +2 -7
- package/dist/error.js.map +1 -1
- package/dist/export-builder.js +1 -4
- package/dist/export-builder.js.map +1 -1
- package/dist/file.js +17 -30
- package/dist/file.js.map +1 -1
- package/dist/index.d.ts +5 -5
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +12 -44
- package/dist/index.js.map +1 -1
- package/dist/parser/at-import-parser.js +3 -9
- package/dist/parser/at-import-parser.js.map +1 -1
- package/dist/parser/at-value-parser.js +1 -4
- package/dist/parser/at-value-parser.js.map +1 -1
- package/dist/parser/css-module-parser.d.ts +8 -7
- package/dist/parser/css-module-parser.d.ts.map +1 -1
- package/dist/parser/css-module-parser.js +41 -39
- package/dist/parser/css-module-parser.js.map +1 -1
- package/dist/parser/key-frame-parser.js +1 -4
- package/dist/parser/key-frame-parser.js.map +1 -1
- package/dist/parser/rule-parser.js +7 -13
- package/dist/parser/rule-parser.js.map +1 -1
- package/dist/path.d.ts +0 -1
- package/dist/path.d.ts.map +1 -1
- package/dist/path.js +16 -31
- package/dist/path.js.map +1 -1
- package/dist/resolver.d.ts.map +1 -1
- package/dist/resolver.js +12 -38
- package/dist/resolver.js.map +1 -1
- package/dist/type.d.ts +2 -0
- package/dist/type.d.ts.map +1 -1
- package/dist/type.js +1 -2
- package/dist/util.d.ts +1 -0
- package/dist/util.d.ts.map +1 -1
- package/dist/util.js +6 -8
- package/dist/util.js.map +1 -1
- package/package.json +2 -2
- package/src/checker.ts +20 -16
- package/src/config.ts +58 -47
- package/src/diagnostic.ts +2 -4
- package/src/{dts-creator.ts → dts-generator.ts} +65 -27
- package/src/index.ts +5 -4
- package/src/parser/css-module-parser.ts +32 -30
- package/src/path.ts +0 -3
- package/src/resolver.ts +5 -26
- package/src/type.ts +2 -0
- package/src/util.ts +4 -0
- package/dist/dts-creator.d.ts.map +0 -1
- package/dist/dts-creator.js.map +0 -1
package/dist/checker.d.ts
CHANGED
|
@@ -1,4 +1,11 @@
|
|
|
1
1
|
import type { CMKConfig } from './config.js';
|
|
2
|
-
import type { CSSModule, Diagnostic,
|
|
3
|
-
export
|
|
2
|
+
import type { CSSModule, Diagnostic, ExportRecord, MatchesPattern, Resolver } from './type.js';
|
|
3
|
+
export interface CheckerArgs {
|
|
4
|
+
config: CMKConfig;
|
|
5
|
+
getExportRecord: (cssModule: CSSModule) => ExportRecord;
|
|
6
|
+
matchesPattern: MatchesPattern;
|
|
7
|
+
resolver: Resolver;
|
|
8
|
+
getCSSModule: (path: string) => CSSModule | undefined;
|
|
9
|
+
}
|
|
10
|
+
export declare function checkCSSModule(cssModule: CSSModule, args: CheckerArgs): Diagnostic[];
|
|
4
11
|
//# sourceMappingURL=checker.d.ts.map
|
package/dist/checker.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"checker.d.ts","sourceRoot":"","sources":["../src/checker.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,KAAK,EAGV,SAAS,EACT,UAAU,EACV,
|
|
1
|
+
{"version":3,"file":"checker.d.ts","sourceRoot":"","sources":["../src/checker.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,KAAK,EAGV,SAAS,EACT,UAAU,EACV,YAAY,EAEZ,cAAc,EACd,QAAQ,EAET,MAAM,WAAW,CAAC;AAGnB,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,SAAS,CAAC;IAClB,eAAe,EAAE,CAAC,SAAS,EAAE,SAAS,KAAK,YAAY,CAAC;IACxD,cAAc,EAAE,cAAc,CAAC;IAC/B,QAAQ,EAAE,QAAQ,CAAC;IACnB,YAAY,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,SAAS,GAAG,SAAS,CAAC;CACvD;AAGD,wBAAgB,cAAc,CAAC,SAAS,EAAE,SAAS,EAAE,IAAI,EAAE,WAAW,GAAG,UAAU,EAAE,CA0DpF"}
|
package/dist/checker.js
CHANGED
|
@@ -1,13 +1,11 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
const
|
|
5
|
-
// eslint-disable-next-line max-params, complexity
|
|
6
|
-
function checkCSSModule(cssModule, config, exportBuilder, matchesPattern, resolver, getCSSModule) {
|
|
1
|
+
import { isURLSpecifier, isValidAsJSIdentifier } from './util.js';
|
|
2
|
+
// eslint-disable-next-line complexity
|
|
3
|
+
export function checkCSSModule(cssModule, args) {
|
|
4
|
+
const { config } = args;
|
|
7
5
|
const diagnostics = [];
|
|
8
6
|
for (const token of cssModule.localTokens) {
|
|
9
7
|
// Reject special names as they may break .d.ts files
|
|
10
|
-
if (!
|
|
8
|
+
if (!isValidAsJSIdentifier(token.name)) {
|
|
11
9
|
diagnostics.push(createInvalidNameAsJSIdentifiersDiagnostic(cssModule, token.loc));
|
|
12
10
|
}
|
|
13
11
|
if (token.name === '__proto__') {
|
|
@@ -18,24 +16,28 @@ function checkCSSModule(cssModule, config, exportBuilder, matchesPattern, resolv
|
|
|
18
16
|
}
|
|
19
17
|
}
|
|
20
18
|
for (const tokenImporter of cssModule.tokenImporters) {
|
|
21
|
-
|
|
22
|
-
if (!from || !matchesPattern(from))
|
|
19
|
+
if (isURLSpecifier(tokenImporter.from))
|
|
23
20
|
continue;
|
|
24
|
-
const
|
|
25
|
-
if (!
|
|
21
|
+
const from = args.resolver(tokenImporter.from, { request: cssModule.fileName });
|
|
22
|
+
if (!from) {
|
|
26
23
|
diagnostics.push(createCannotImportModuleDiagnostic(cssModule, tokenImporter));
|
|
27
24
|
continue;
|
|
28
25
|
}
|
|
26
|
+
if (!args.matchesPattern(from))
|
|
27
|
+
continue;
|
|
28
|
+
const imported = args.getCSSModule(from);
|
|
29
|
+
if (!imported)
|
|
30
|
+
throw new Error('unreachable: `imported` is undefined');
|
|
29
31
|
if (tokenImporter.type === 'value') {
|
|
30
|
-
const exportRecord =
|
|
32
|
+
const exportRecord = args.getExportRecord(imported);
|
|
31
33
|
for (const value of tokenImporter.values) {
|
|
32
34
|
if (!exportRecord.allTokens.includes(value.name)) {
|
|
33
35
|
diagnostics.push(createModuleHasNoExportedTokenDiagnostic(cssModule, tokenImporter, value));
|
|
34
36
|
}
|
|
35
|
-
if (!
|
|
37
|
+
if (!isValidAsJSIdentifier(value.name)) {
|
|
36
38
|
diagnostics.push(createInvalidNameAsJSIdentifiersDiagnostic(cssModule, value.loc));
|
|
37
39
|
}
|
|
38
|
-
if (value.localName && !
|
|
40
|
+
if (value.localName && !isValidAsJSIdentifier(value.localName)) {
|
|
39
41
|
diagnostics.push(createInvalidNameAsJSIdentifiersDiagnostic(cssModule, value.localLoc));
|
|
40
42
|
}
|
|
41
43
|
if (value.name === '__proto__') {
|
package/dist/checker.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"checker.js","sourceRoot":"","sources":["../src/checker.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"checker.js","sourceRoot":"","sources":["../src/checker.ts"],"names":[],"mappings":"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"}
|
package/dist/config.d.ts
CHANGED
|
@@ -7,6 +7,7 @@ import type { Diagnostic } from './type.js';
|
|
|
7
7
|
export interface CMKConfig {
|
|
8
8
|
includes: string[];
|
|
9
9
|
excludes: string[];
|
|
10
|
+
enabled: boolean | undefined;
|
|
10
11
|
dtsOutDir: string;
|
|
11
12
|
arbitraryExtensions: boolean;
|
|
12
13
|
namedExports: boolean;
|
|
@@ -52,41 +53,14 @@ export interface CMKConfig {
|
|
|
52
53
|
basePath: string;
|
|
53
54
|
configFileName: string;
|
|
54
55
|
compilerOptions: ts.CompilerOptions;
|
|
56
|
+
/** The directories to watch when watch mode is enabled. */
|
|
57
|
+
wildcardDirectories: {
|
|
58
|
+
fileName: string;
|
|
59
|
+
recursive: boolean;
|
|
60
|
+
}[];
|
|
55
61
|
/** The diagnostics that occurred while reading the config file. */
|
|
56
62
|
diagnostics: Diagnostic[];
|
|
57
63
|
}
|
|
58
|
-
/**
|
|
59
|
-
* The config loaded from `ts.ParsedCommandLine['raw']`.
|
|
60
|
-
* This is unnormalized. Paths are relative, and some options may be omitted.
|
|
61
|
-
*/
|
|
62
|
-
interface UnnormalizedRawConfig {
|
|
63
|
-
includes?: string[];
|
|
64
|
-
excludes?: string[];
|
|
65
|
-
dtsOutDir?: string;
|
|
66
|
-
arbitraryExtensions?: boolean;
|
|
67
|
-
namedExports?: boolean;
|
|
68
|
-
prioritizeNamedImports?: boolean;
|
|
69
|
-
keyframes?: boolean;
|
|
70
|
-
}
|
|
71
|
-
/**
|
|
72
|
-
* The validated data of `ts.ParsedCommandLine['raw']`.
|
|
73
|
-
*/
|
|
74
|
-
interface ParsedRawData {
|
|
75
|
-
config: UnnormalizedRawConfig;
|
|
76
|
-
diagnostics: Diagnostic[];
|
|
77
|
-
}
|
|
78
|
-
export declare function findTsConfigFile(project: string): string | undefined;
|
|
79
|
-
declare function parseRawData(raw: unknown, tsConfigSourceFile: ts.TsConfigSourceFile): ParsedRawData;
|
|
80
|
-
export { parseRawData as parseRawDataForTest };
|
|
81
|
-
/**
|
|
82
|
-
* @throws {TsConfigFileNotFoundError}
|
|
83
|
-
*/
|
|
84
|
-
export declare function readTsConfigFile(project: string): {
|
|
85
|
-
configFileName: string;
|
|
86
|
-
config: UnnormalizedRawConfig;
|
|
87
|
-
compilerOptions: ts.CompilerOptions;
|
|
88
|
-
diagnostics: Diagnostic[];
|
|
89
|
-
};
|
|
90
64
|
/**
|
|
91
65
|
* Reads the `tsconfig.json` file and returns the normalized config.
|
|
92
66
|
* Even if the `tsconfig.json` file contains syntax or semantic errors,
|
package/dist/config.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,YAAY,CAAC;AAG5B,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAK5C;;;GAGG;AACH,MAAM,WAAW,SAAS;IACxB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,mBAAmB,EAAE,OAAO,CAAC;IAC7B,YAAY,EAAE,OAAO,CAAC;IACtB,sBAAsB,EAAE,OAAO,CAAC;IAChC,SAAS,EAAE,OAAO,CAAC;IACnB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAoCG;IACH,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc,EAAE,MAAM,CAAC;IACvB,eAAe,EAAE,EAAE,CAAC,eAAe,CAAC;IACpC,
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,YAAY,CAAC;AAG5B,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAK5C;;;GAGG;AACH,MAAM,WAAW,SAAS;IACxB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,OAAO,EAAE,OAAO,GAAG,SAAS,CAAC;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,mBAAmB,EAAE,OAAO,CAAC;IAC7B,YAAY,EAAE,OAAO,CAAC;IACtB,sBAAsB,EAAE,OAAO,CAAC;IAChC,SAAS,EAAE,OAAO,CAAC;IACnB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAoCG;IACH,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc,EAAE,MAAM,CAAC;IACvB,eAAe,EAAE,EAAE,CAAC,eAAe,CAAC;IACpC,2DAA2D;IAC3D,mBAAmB,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,OAAO,CAAA;KAAE,EAAE,CAAC;IAChE,mEAAmE;IACnE,WAAW,EAAE,UAAU,EAAE,CAAC;CAC3B;AAwKD;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,CAoCzD"}
|
package/dist/config.js
CHANGED
|
@@ -1,25 +1,20 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.findTsConfigFile = findTsConfigFile;
|
|
7
|
-
exports.parseRawDataForTest = parseRawData;
|
|
8
|
-
exports.readTsConfigFile = readTsConfigFile;
|
|
9
|
-
exports.readConfigFile = readConfigFile;
|
|
10
|
-
const typescript_1 = __importDefault(require("typescript"));
|
|
11
|
-
const error_js_1 = require("./error.js");
|
|
12
|
-
const path_js_1 = require("./path.js");
|
|
1
|
+
import ts from 'typescript';
|
|
2
|
+
import { TsConfigFileNotFoundError } from './error.js';
|
|
3
|
+
import { basename, dirname, join, resolve } from './path.js';
|
|
13
4
|
// https://github.com/microsoft/TypeScript/blob/caf1aee269d1660b4d2a8b555c2d602c97cb28d7/src/compiler/commandLineParser.ts#L3006
|
|
14
5
|
const DEFAULT_INCLUDE_SPEC = '**/*';
|
|
15
6
|
function findTsConfigFile(project) {
|
|
16
|
-
const configFile =
|
|
17
|
-
|
|
18
|
-
:
|
|
7
|
+
const configFile = ts.sys.directoryExists(project) ?
|
|
8
|
+
ts.findConfigFile(project, ts.sys.fileExists.bind(ts.sys), 'tsconfig.json')
|
|
9
|
+
: ts.findConfigFile(dirname(project), ts.sys.fileExists.bind(ts.sys), basename(project));
|
|
19
10
|
if (!configFile)
|
|
20
11
|
return undefined;
|
|
21
|
-
return
|
|
12
|
+
return resolve(configFile);
|
|
22
13
|
}
|
|
14
|
+
function isTsConfigFileExists(fileName) {
|
|
15
|
+
return ts.findConfigFile(dirname(fileName), ts.sys.fileExists.bind(ts.sys), basename(fileName)) !== undefined;
|
|
16
|
+
}
|
|
17
|
+
// eslint-disable-next-line complexity
|
|
23
18
|
function parseRawData(raw, tsConfigSourceFile) {
|
|
24
19
|
const result = {
|
|
25
20
|
config: {},
|
|
@@ -44,6 +39,17 @@ function parseRawData(raw, tsConfigSourceFile) {
|
|
|
44
39
|
// MEMO: The errors for this option are reported by `tsc` or `tsserver`, so we don't need to report.
|
|
45
40
|
}
|
|
46
41
|
if ('cmkOptions' in raw && typeof raw.cmkOptions === 'object' && raw.cmkOptions !== null) {
|
|
42
|
+
if ('enabled' in raw.cmkOptions) {
|
|
43
|
+
if (typeof raw.cmkOptions.enabled === 'boolean') {
|
|
44
|
+
result.config.enabled = raw.cmkOptions.enabled;
|
|
45
|
+
}
|
|
46
|
+
else {
|
|
47
|
+
result.diagnostics.push({
|
|
48
|
+
category: 'error',
|
|
49
|
+
text: `\`enabled\` in ${tsConfigSourceFile.fileName} must be a boolean.`,
|
|
50
|
+
});
|
|
51
|
+
}
|
|
52
|
+
}
|
|
47
53
|
if ('dtsOutDir' in raw.cmkOptions) {
|
|
48
54
|
if (typeof raw.cmkOptions.dtsOutDir === 'string') {
|
|
49
55
|
result.config.dtsOutDir = raw.cmkOptions.dtsOutDir;
|
|
@@ -106,49 +112,28 @@ function parseRawData(raw, tsConfigSourceFile) {
|
|
|
106
112
|
}
|
|
107
113
|
return result;
|
|
108
114
|
}
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
*/
|
|
112
|
-
function readTsConfigFile(project) {
|
|
113
|
-
const configFileName = findTsConfigFile(project);
|
|
114
|
-
if (!configFileName)
|
|
115
|
-
throw new error_js_1.TsConfigFileNotFoundError();
|
|
116
|
-
const tsConfigSourceFile = typescript_1.default.readJsonConfigFile(configFileName, typescript_1.default.sys.readFile.bind(typescript_1.default.sys));
|
|
115
|
+
function parseTsConfigFile(fileName) {
|
|
116
|
+
const tsConfigSourceFile = ts.readJsonConfigFile(fileName, ts.sys.readFile.bind(ts.sys));
|
|
117
117
|
// MEMO: `tsConfigSourceFile.parseDiagnostics` (Internal API) contains a syntax error for `tsconfig.json`.
|
|
118
118
|
// However, it is ignored so that ts-plugin will work even if `tsconfig.json` is somewhat broken.
|
|
119
119
|
// Also, this error is reported to the user by `tsc` or `tsserver`.
|
|
120
120
|
// We discard it since there is no need to report it from css-modules-kit.
|
|
121
|
-
const parsedCommandLine =
|
|
121
|
+
const parsedCommandLine = ts.parseJsonSourceFileConfigFileContent(tsConfigSourceFile, ts.sys, dirname(fileName), undefined, fileName, undefined, [
|
|
122
122
|
{
|
|
123
123
|
extension: 'css',
|
|
124
124
|
isMixedContent: false,
|
|
125
|
-
scriptKind:
|
|
125
|
+
scriptKind: ts.ScriptKind.Deferred,
|
|
126
126
|
},
|
|
127
127
|
]);
|
|
128
128
|
// Read options from `parsedCommandLine.raw`
|
|
129
|
-
|
|
130
|
-
// The options read from `parsedCommandLine.raw` do not inherit values from the file specified in `extends`.
|
|
131
|
-
// So here we read the options from those files and merge them into `parsedRawData`.
|
|
132
|
-
if (tsConfigSourceFile.extendedSourceFiles) {
|
|
133
|
-
for (const extendedSourceFile of tsConfigSourceFile.extendedSourceFiles) {
|
|
134
|
-
let base;
|
|
135
|
-
try {
|
|
136
|
-
base = readTsConfigFile(extendedSourceFile);
|
|
137
|
-
}
|
|
138
|
-
catch (error) {
|
|
139
|
-
if (error instanceof error_js_1.TsConfigFileNotFoundError)
|
|
140
|
-
continue;
|
|
141
|
-
throw error;
|
|
142
|
-
}
|
|
143
|
-
parsedRawData = {
|
|
144
|
-
config: { ...base.config, ...parsedRawData.config },
|
|
145
|
-
diagnostics: [...base.diagnostics, ...parsedRawData.diagnostics],
|
|
146
|
-
};
|
|
147
|
-
}
|
|
148
|
-
}
|
|
129
|
+
const parsedRawData = parseRawData(parsedCommandLine.raw, tsConfigSourceFile);
|
|
149
130
|
return {
|
|
150
|
-
|
|
131
|
+
extendedSourceFiles: tsConfigSourceFile.extendedSourceFiles,
|
|
151
132
|
compilerOptions: parsedCommandLine.options,
|
|
133
|
+
wildcardDirectories: Object.entries(parsedCommandLine.wildcardDirectories ?? {}).map(([fileName, flags]) => ({
|
|
134
|
+
fileName,
|
|
135
|
+
recursive: (flags & ts.WatchDirectoryFlags.Recursive) !== 0,
|
|
136
|
+
})),
|
|
152
137
|
...parsedRawData,
|
|
153
138
|
};
|
|
154
139
|
}
|
|
@@ -160,23 +145,39 @@ function readTsConfigFile(project) {
|
|
|
160
145
|
* @param project The absolute path to the project directory or the path to `tsconfig.json`.
|
|
161
146
|
* @throws {TsConfigFileNotFoundError}
|
|
162
147
|
*/
|
|
163
|
-
function readConfigFile(project) {
|
|
164
|
-
const
|
|
165
|
-
|
|
148
|
+
export function readConfigFile(project) {
|
|
149
|
+
const configFileName = findTsConfigFile(project);
|
|
150
|
+
if (!configFileName)
|
|
151
|
+
throw new TsConfigFileNotFoundError();
|
|
152
|
+
const parsedTsConfig = parseTsConfigFile(configFileName);
|
|
153
|
+
// The options read from `parsedCommandLine.raw` do not inherit values from the file specified in `extends`.
|
|
154
|
+
// So here we read the options from those files and merge them into `parsedRawData`.
|
|
155
|
+
if (parsedTsConfig.extendedSourceFiles) {
|
|
156
|
+
for (const extendedSourceFile of parsedTsConfig.extendedSourceFiles) {
|
|
157
|
+
if (isTsConfigFileExists(extendedSourceFile)) {
|
|
158
|
+
const base = parseTsConfigFile(extendedSourceFile);
|
|
159
|
+
parsedTsConfig.config = { ...base.config, ...parsedTsConfig.config };
|
|
160
|
+
parsedTsConfig.diagnostics = [...base.diagnostics, ...parsedTsConfig.diagnostics];
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
}
|
|
164
|
+
const basePath = dirname(configFileName);
|
|
166
165
|
return {
|
|
167
166
|
// If `include` is not specified, fallback to the default include spec。
|
|
168
167
|
// ref: https://github.com/microsoft/TypeScript/blob/caf1aee269d1660b4d2a8b555c2d602c97cb28d7/src/compiler/commandLineParser.ts#L3102
|
|
169
|
-
includes: (config.includes ?? [DEFAULT_INCLUDE_SPEC]).map((i) =>
|
|
170
|
-
excludes: (config.excludes ?? []).map((e) =>
|
|
171
|
-
dtsOutDir:
|
|
172
|
-
arbitraryExtensions: config.arbitraryExtensions ?? false,
|
|
173
|
-
namedExports: config.namedExports ?? false,
|
|
174
|
-
prioritizeNamedImports: config.prioritizeNamedImports ?? false,
|
|
175
|
-
keyframes: config.keyframes ?? true,
|
|
168
|
+
includes: (parsedTsConfig.config.includes ?? [DEFAULT_INCLUDE_SPEC]).map((i) => join(basePath, i)),
|
|
169
|
+
excludes: (parsedTsConfig.config.excludes ?? []).map((e) => join(basePath, e)),
|
|
170
|
+
dtsOutDir: join(basePath, parsedTsConfig.config.dtsOutDir ?? 'generated'),
|
|
171
|
+
arbitraryExtensions: parsedTsConfig.config.arbitraryExtensions ?? false,
|
|
172
|
+
namedExports: parsedTsConfig.config.namedExports ?? false,
|
|
173
|
+
prioritizeNamedImports: parsedTsConfig.config.prioritizeNamedImports ?? false,
|
|
174
|
+
keyframes: parsedTsConfig.config.keyframes ?? true,
|
|
175
|
+
enabled: parsedTsConfig.config.enabled,
|
|
176
176
|
basePath,
|
|
177
177
|
configFileName,
|
|
178
|
-
compilerOptions,
|
|
179
|
-
|
|
178
|
+
compilerOptions: parsedTsConfig.compilerOptions,
|
|
179
|
+
wildcardDirectories: parsedTsConfig.wildcardDirectories,
|
|
180
|
+
diagnostics: parsedTsConfig.diagnostics,
|
|
180
181
|
};
|
|
181
182
|
}
|
|
182
183
|
//# sourceMappingURL=config.js.map
|
package/dist/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
|
package/dist/diagnostic.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"diagnostic.d.ts","sourceRoot":"","sources":["../src/diagnostic.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,YAAY,CAAC;AAC5B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,KAAK,EAAE,UAAU,
|
|
1
|
+
{"version":3,"file":"diagnostic.d.ts","sourceRoot":"","sources":["../src/diagnostic.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,YAAY,CAAC;AAC5B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,KAAK,EAAE,UAAU,EAAsB,oBAAoB,EAAE,sBAAsB,EAAE,MAAM,WAAW,CAAC;AAkB9G,wBAAgB,iBAAiB,CAC/B,UAAU,EAAE,UAAU,EACtB,aAAa,EAAE,CAAC,IAAI,EAAE,oBAAoB,KAAK,EAAE,CAAC,UAAU,GAC3D,EAAE,CAAC,UAAU,CAcf;AAED,wBAAgB,6BAA6B,CAC3C,UAAU,EAAE,sBAAsB,EAClC,aAAa,EAAE,CAAC,IAAI,EAAE,oBAAoB,KAAK,EAAE,CAAC,UAAU,GAC3D,EAAE,CAAC,sBAAsB,CAY3B;AAED,wBAAgB,kBAAkB,CAAC,WAAW,EAAE,WAAW,GAAG,EAAE,CAAC,UAAU,CAkB1E"}
|
package/dist/diagnostic.js
CHANGED
|
@@ -1,28 +1,18 @@
|
|
|
1
|
-
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.convertDiagnostic = convertDiagnostic;
|
|
7
|
-
exports.convertDiagnosticWithLocation = convertDiagnosticWithLocation;
|
|
8
|
-
exports.convertSystemError = convertSystemError;
|
|
9
|
-
const typescript_1 = __importDefault(require("typescript"));
|
|
1
|
+
import ts from 'typescript';
|
|
10
2
|
/** The error code used by tsserver to display the css-modules-kit error in the editor. */
|
|
11
3
|
const TS_ERROR_CODE = 0;
|
|
12
4
|
const TS_ERROR_SOURCE = 'css-modules-kit';
|
|
13
5
|
function convertErrorCategory(category) {
|
|
14
6
|
switch (category) {
|
|
15
7
|
case 'error':
|
|
16
|
-
return
|
|
8
|
+
return ts.DiagnosticCategory.Error;
|
|
17
9
|
case 'warning':
|
|
18
|
-
return
|
|
19
|
-
case 'suggestion':
|
|
20
|
-
return typescript_1.default.DiagnosticCategory.Suggestion;
|
|
10
|
+
return ts.DiagnosticCategory.Warning;
|
|
21
11
|
default:
|
|
22
12
|
throw new Error(`Unknown category: ${String(category)}`);
|
|
23
13
|
}
|
|
24
14
|
}
|
|
25
|
-
function convertDiagnostic(diagnostic, getSourceFile) {
|
|
15
|
+
export function convertDiagnostic(diagnostic, getSourceFile) {
|
|
26
16
|
if ('file' in diagnostic) {
|
|
27
17
|
return convertDiagnosticWithLocation(diagnostic, getSourceFile);
|
|
28
18
|
}
|
|
@@ -38,9 +28,9 @@ function convertDiagnostic(diagnostic, getSourceFile) {
|
|
|
38
28
|
};
|
|
39
29
|
}
|
|
40
30
|
}
|
|
41
|
-
function convertDiagnosticWithLocation(diagnostic, getSourceFile) {
|
|
31
|
+
export function convertDiagnosticWithLocation(diagnostic, getSourceFile) {
|
|
42
32
|
const sourceFile = getSourceFile(diagnostic.file);
|
|
43
|
-
const start =
|
|
33
|
+
const start = ts.getPositionOfLineAndCharacter(sourceFile, diagnostic.start.line - 1, diagnostic.start.column - 1);
|
|
44
34
|
return {
|
|
45
35
|
file: sourceFile,
|
|
46
36
|
start,
|
|
@@ -51,7 +41,7 @@ function convertDiagnosticWithLocation(diagnostic, getSourceFile) {
|
|
|
51
41
|
source: TS_ERROR_SOURCE,
|
|
52
42
|
};
|
|
53
43
|
}
|
|
54
|
-
function convertSystemError(systemError) {
|
|
44
|
+
export function convertSystemError(systemError) {
|
|
55
45
|
let messageText = systemError.message;
|
|
56
46
|
if (systemError.cause) {
|
|
57
47
|
if (systemError.cause instanceof Error) {
|
|
@@ -65,7 +55,7 @@ function convertSystemError(systemError) {
|
|
|
65
55
|
file: undefined,
|
|
66
56
|
start: undefined,
|
|
67
57
|
length: undefined,
|
|
68
|
-
category:
|
|
58
|
+
category: ts.DiagnosticCategory.Error,
|
|
69
59
|
messageText,
|
|
70
60
|
code: TS_ERROR_CODE,
|
|
71
61
|
source: TS_ERROR_SOURCE,
|
package/dist/diagnostic.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"diagnostic.js","sourceRoot":"","sources":["../src/diagnostic.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"diagnostic.js","sourceRoot":"","sources":["../src/diagnostic.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,YAAY,CAAC;AAI5B,0FAA0F;AAC1F,MAAM,aAAa,GAAG,CAAC,CAAC;AAExB,MAAM,eAAe,GAAG,iBAAiB,CAAC;AAE1C,SAAS,oBAAoB,CAAC,QAA4B;IACxD,QAAQ,QAAQ,EAAE,CAAC;QACjB,KAAK,OAAO;YACV,OAAO,EAAE,CAAC,kBAAkB,CAAC,KAAK,CAAC;QACrC,KAAK,SAAS;YACZ,OAAO,EAAE,CAAC,kBAAkB,CAAC,OAAO,CAAC;QACvC;YACE,MAAM,IAAI,KAAK,CAAC,qBAAqB,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IAC7D,CAAC;AACH,CAAC;AAED,MAAM,UAAU,iBAAiB,CAC/B,UAAsB,EACtB,aAA4D;IAE5D,IAAI,MAAM,IAAI,UAAU,EAAE,CAAC;QACzB,OAAO,6BAA6B,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC;IAClE,CAAC;SAAM,CAAC;QACN,OAAO;YACL,IAAI,EAAE,SAAS;YACf,KAAK,EAAE,SAAS;YAChB,MAAM,EAAE,SAAS;YACjB,QAAQ,EAAE,oBAAoB,CAAC,UAAU,CAAC,QAAQ,CAAC;YACnD,WAAW,EAAE,UAAU,CAAC,IAAI;YAC5B,IAAI,EAAE,aAAa;YACnB,MAAM,EAAE,eAAe;SACxB,CAAC;IACJ,CAAC;AACH,CAAC;AAED,MAAM,UAAU,6BAA6B,CAC3C,UAAkC,EAClC,aAA4D;IAE5D,MAAM,UAAU,GAAG,aAAa,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IAClD,MAAM,KAAK,GAAG,EAAE,CAAC,6BAA6B,CAAC,UAAU,EAAE,UAAU,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,EAAE,UAAU,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IACnH,OAAO;QACL,IAAI,EAAE,UAAU;QAChB,KAAK;QACL,MAAM,EAAE,UAAU,CAAC,MAAM;QACzB,QAAQ,EAAE,oBAAoB,CAAC,UAAU,CAAC,QAAQ,CAAC;QACnD,WAAW,EAAE,UAAU,CAAC,IAAI;QAC5B,IAAI,EAAE,aAAa;QACnB,MAAM,EAAE,eAAe;KACxB,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,WAAwB;IACzD,IAAI,WAAW,GAAG,WAAW,CAAC,OAAO,CAAC;IACtC,IAAI,WAAW,CAAC,KAAK,EAAE,CAAC;QACtB,IAAI,WAAW,CAAC,KAAK,YAAY,KAAK,EAAE,CAAC;YACvC,WAAW,IAAI,KAAK,WAAW,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;QAClD,CAAC;aAAM,CAAC;YACN,WAAW,IAAI,KAAK,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1D,CAAC;IACH,CAAC;IACD,OAAO;QACL,IAAI,EAAE,SAAS;QACf,KAAK,EAAE,SAAS;QAChB,MAAM,EAAE,SAAS;QACjB,QAAQ,EAAE,EAAE,CAAC,kBAAkB,CAAC,KAAK;QACrC,WAAW;QACX,IAAI,EAAE,aAAa;QACnB,MAAM,EAAE,eAAe;KACxB,CAAC;AACJ,CAAC"}
|
|
@@ -1,10 +1,6 @@
|
|
|
1
|
-
import type { CSSModule
|
|
1
|
+
import type { CSSModule } from './type.js';
|
|
2
2
|
export declare const STYLES_EXPORT_NAME = "styles";
|
|
3
|
-
export interface
|
|
4
|
-
resolver: Resolver;
|
|
5
|
-
matchesPattern: MatchesPattern;
|
|
6
|
-
}
|
|
7
|
-
export interface CreateDtsOptions {
|
|
3
|
+
export interface GenerateDtsOptions {
|
|
8
4
|
namedExports: boolean;
|
|
9
5
|
prioritizeNamedImports: boolean;
|
|
10
6
|
/** Generate .d.ts for ts-plugin */
|
|
@@ -29,14 +25,14 @@ interface LinkedCodeMapping extends CodeMapping {
|
|
|
29
25
|
/** The length of the second code to be linked. */
|
|
30
26
|
generatedLengths: number[];
|
|
31
27
|
}
|
|
32
|
-
interface
|
|
28
|
+
interface GenerateDtsResult {
|
|
33
29
|
text: string;
|
|
34
30
|
mapping: CodeMapping;
|
|
35
31
|
linkedCodeMapping: LinkedCodeMapping;
|
|
36
32
|
}
|
|
37
33
|
/**
|
|
38
|
-
*
|
|
34
|
+
* Generate .d.ts from `CSSModule`.
|
|
39
35
|
*/
|
|
40
|
-
export declare function
|
|
36
|
+
export declare function generateDts(cssModule: CSSModule, options: GenerateDtsOptions): GenerateDtsResult;
|
|
41
37
|
export {};
|
|
42
|
-
//# sourceMappingURL=dts-
|
|
38
|
+
//# sourceMappingURL=dts-generator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dts-generator.d.ts","sourceRoot":"","sources":["../src/dts-generator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAwB,MAAM,WAAW,CAAC;AAGjE,eAAO,MAAM,kBAAkB,WAAW,CAAC;AAE3C,MAAM,WAAW,kBAAkB;IACjC,YAAY,EAAE,OAAO,CAAC;IACtB,sBAAsB,EAAE,OAAO,CAAC;IAChC,mCAAmC;IACnC,WAAW,EAAE,OAAO,CAAC;CACtB;AAED,UAAU,WAAW;IACnB,iEAAiE;IACjE,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,0DAA0D;IAC1D,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,8DAA8D;IAC9D,gBAAgB,EAAE,MAAM,EAAE,CAAC;CAC5B;AAED,8CAA8C;AAE9C,UAAU,iBAAkB,SAAQ,WAAW;IAC7C,iDAAiD;IACjD,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,iDAAiD;IACjD,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,kDAAkD;IAClD,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAC3B,kDAAkD;IAClD,gBAAgB,EAAE,MAAM,EAAE,CAAC;CAC5B;AAED,UAAU,iBAAiB;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,WAAW,CAAC;IACrB,iBAAiB,EAAE,iBAAiB,CAAC;CACtC;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,SAAS,EAAE,SAAS,EAAE,OAAO,EAAE,kBAAkB,GAAG,iBAAiB,CA+DhG"}
|