swc
swc copied to clipboard
[css/modules] composes chain is broken due to order of class names
Describe the bug
After merging https://github.com/swc-project/swc/pull/8218, allows out-of-order class names for composes. However composes chain is still affected by order of class names.
Input code
.root-class {
composes: chain1;
}
.chain1 {
composes: chain2;
}
.chain2 {
}
Config
No response
Playground link (or link to the minimal reproduction)
https://github.com/thiry1/swc/commit/0f027ca3e2355ffb31c58bc5f94ce3c4f949655e
SWC Info output
No response
Expected behavior
{
"chain1": [
{
"name": "__local__chain1",
"type": "local"
},
{
"name": "__local__chain2",
"type": "local"
}
],
"chain2": [
{
"name": "__local__chain2",
"type": "local"
}
],
"root-class": [
{
"name": "__local__root-class",
"type": "local"
},
{
"name": "__local__chain1",
"type": "local"
},
+ {
+ "name": "__local__chain2",
+ "type": "local"
+ }
]
}
Actual behavior
{
"chain1": [
{
"name": "__local__chain1",
"type": "local"
},
{
"name": "__local__chain2",
"type": "local"
}
],
"chain2": [
{
"name": "__local__chain2",
"type": "local"
}
],
"root-class": [
{
"name": "__local__root-class",
"type": "local"
},
{
"name": "__local__chain1",
"type": "local"
},
- {
- "name": "__local__chain2",
- "type": "local"
- }
]
}
Version
1.3.96
Additional context
No response