|
1 | 1 | # @css-modules-kit/core |
2 | 2 |
|
| 3 | +## 1.4.0 |
| 4 | + |
| 5 | +### Minor Changes |
| 6 | + |
| 7 | +- [#420](https://github.com/mizdra/css-modules-kit/pull/420) [`eaafd2c`](https://github.com/mizdra/css-modules-kit/commit/eaafd2c9b1f57b4778f18b99e2a171a6ae809acd) - feat(core, ts-plugin, codegen, vscode): support `<dashed-ident>` tokens via the `dashedIdents` option |
| 8 | + |
| 9 | +- [#430](https://github.com/mizdra/css-modules-kit/pull/430) [`5f24d86`](https://github.com/mizdra/css-modules-kit/commit/5f24d863845c2d88a2a2e27987893b8fdad764c6) - feat(core, ts-plugin, codegen, vscode): deprecate `cmkOptions.keyframes` in favor of `cmkOptions.animation` |
| 10 | + |
| 11 | +### Patch Changes |
| 12 | + |
| 13 | +- [#427](https://github.com/mizdra/css-modules-kit/pull/427) [`fb19123`](https://github.com/mizdra/css-modules-kit/commit/fb19123a8887f91f8fdd2d693726b74ab14ca418) - fix(core): match `@import` / `@value` / `@keyframes` at-rule names case-insensitively |
| 14 | + |
| 15 | +- [#426](https://github.com/mizdra/css-modules-kit/pull/426) [`85196f9`](https://github.com/mizdra/css-modules-kit/commit/85196f9c8c5ee50768db91b4a8f02cc85813aaaa) - fix(core): match `from` / `global` / `as` keywords case-insensitively in `composes` and `@value` |
| 16 | + |
| 17 | +- [#429](https://github.com/mizdra/css-modules-kit/pull/429) [`eb850ed`](https://github.com/mizdra/css-modules-kit/commit/eb850ed498b5ba5f4af6681d375727684abdc1c4) - fix(core, ts-plugin, codegen): exclude TypeScript 7 from supported peerDependencies range |
| 18 | + |
| 19 | +- [#428](https://github.com/mizdra/css-modules-kit/pull/428) [`4a8630f`](https://github.com/mizdra/css-modules-kit/commit/4a8630ffbe8ea46693c09363be9b0924ea58dac6) - fix(core): honor the `from` clause of `var()` inside `@container style()` query values |
| 20 | + |
3 | 21 | ## 1.3.0 |
4 | 22 |
|
5 | 23 | ### Minor Changes |
|
11 | 29 | The `@value` parser is reimplemented on top of postcss-value-parser. Behavior for syntax supported by css-loader is unchanged. |
12 | 30 |
|
13 | 31 | For syntax that css-loader does not support (where css-modules-kit does not guarantee a specific behavior), the result changed: |
| 32 | + |
14 | 33 | - `@value \\c: #000;` and `@value \'d: #000;` are now parsed as a token declaration instead of reporting an error. |
15 | 34 | - `@value \31 e: #000;` is now read as the token name `\31` instead of `e`. |
16 | 35 |
|
|
19 | 38 | Class names referenced via `composes: foo from './other.module.css';` are now linked to the `.foo {...}` declaration in the referenced file. Go to Definition jumps from the reference to the declaration, Find All References lists reference sites across files, and Rename updates the declaration and every reference together. |
20 | 39 |
|
21 | 40 | Two diagnostics are also emitted in the check phase: |
| 41 | + |
22 | 42 | - `Cannot import module '<specifier>'` when the specifier cannot be resolved. |
23 | 43 | - `Module '<specifier>' has no exported token '<name>'.` when the referenced file does not export the token. |
24 | 44 |
|
|
27 | 47 | Class names referenced via `composes: foo;` are now linked back to the `.foo {...}` declaration. Go to Definition jumps from a reference to the declaration, Find All References lists every reference site, and Rename updates the declaration and every reference together. Space-separated names (`composes: foo bar;`), comma-separated names (`composes: foo, bar;`), and mixes of both are supported. `composes: global(foo);`, `composes: foo from global;`, and `composes: foo from '<specifier>';` do not produce references (support for `from '<specifier>'` is planned). |
28 | 48 |
|
29 | 49 | Two diagnostics are also emitted for invalid usage: |
| 50 | + |
30 | 51 | - Parse phase: a `from` clause not followed by a quoted specifier or the `global` keyword is reported. |
31 | 52 | - Check phase: references that resolve to neither a locally defined token nor an imported token are reported as `Cannot find token '<name>'.`. |
32 | 53 |
|
|
45 | 66 | `animation-name: foo;` is now linked back to the `@keyframes foo {...}` declaration. Go to Definition jumps from a reference to the declaration, Find All References lists every reference site, and Rename updates the declaration and every reference together. Comma-separated names (`animation-name: foo, bar;`), `local()` / `global()` notation, and vendor prefixes (`-webkit-animation-name`) are all supported. References to `@keyframes` defined in another file via `@import` are resolved as well. |
46 | 67 |
|
47 | 68 | Two diagnostics are also emitted for invalid usage: |
| 69 | + |
48 | 70 | - Parse phase: malformed `local(...)` calls (empty, multiple identifiers, or non-identifier nodes such as a nested function) are reported. |
49 | 71 | - Check phase: token references that resolve to neither a locally defined token nor an imported token are reported as `Cannot find token '<name>'.`. |
50 | 72 |
|
|
73 | 95 | Rename the public types so they describe the abstract shape of the import |
74 | 96 | (matching ESTree's `ExportAllDeclaration` / `ExportNamedDeclaration`) |
75 | 97 | rather than the CSS syntax that produced them: |
| 98 | + |
76 | 99 | - `AtImportTokenImporter` → `AllTokenImporter` (`type: 'all'`) |
77 | 100 | - `AtValueTokenImporter` → `NamedTokenImporter` (`type: 'named'`) |
78 | 101 | - `AtValueTokenImporterValue` → `NamedTokenImporterEntry` |
|
0 commit comments