Skip to content

Commit 84de1d4

Browse files
authoredNov 19, 2024··
fix(sort-modules): disable sorting for export decorated classes
1 parent 191902a commit 84de1d4

File tree

2 files changed

+58
-0
lines changed

2 files changed

+58
-0
lines changed
 

‎rules/sort-modules.ts

+9
Original file line numberDiff line numberDiff line change
@@ -325,6 +325,15 @@ let analyzeModule = ({
325325
continue
326326
}
327327

328+
if (
329+
selector === 'class' &&
330+
modifiers.includes('export') &&
331+
modifiers.includes('decorated')
332+
) {
333+
// Not always handled correctly at the moment
334+
continue
335+
}
336+
328337
let { defineGroup, getGroup } = useGroups(options)
329338
for (let officialGroup of generatePredefinedGroups({
330339
cache: cachedGroupsByModifiersAndSelectors,

‎test/sort-modules.test.ts

+49
Original file line numberDiff line numberDiff line change
@@ -959,6 +959,7 @@ describe(ruleName, () => {
959959
},
960960
)
961961

962+
/* Currently not handled correctly
962963
ruleTester.run(
963964
`${ruleName}(${type}): prioritize default over decorated`,
964965
rule,
@@ -1036,6 +1037,7 @@ describe(ruleName, () => {
10361037
valid: [],
10371038
},
10381039
)
1040+
*/
10391041
})
10401042

10411043
describe(`${ruleName}(${type}): function modifiers priority`, () => {
@@ -2375,6 +2377,53 @@ describe(ruleName, () => {
23752377
},
23762378
)
23772379
})
2380+
2381+
ruleTester.run(
2382+
`${ruleName}(${type}): ignores exported decorated classes`,
2383+
rule,
2384+
{
2385+
invalid: [
2386+
{
2387+
errors: [
2388+
{
2389+
data: {
2390+
right: 'B',
2391+
left: 'C',
2392+
},
2393+
messageId: 'unexpectedModulesOrder',
2394+
},
2395+
],
2396+
output: dedent`
2397+
@B
2398+
class B {}
2399+
2400+
@A
2401+
export class A {}
2402+
2403+
@C
2404+
class C {}
2405+
`,
2406+
code: dedent`
2407+
@C
2408+
class C {}
2409+
2410+
@A
2411+
export class A {}
2412+
2413+
@B
2414+
class B {}
2415+
`,
2416+
options: [
2417+
{
2418+
...options,
2419+
groups: ['unknown'],
2420+
},
2421+
],
2422+
},
2423+
],
2424+
valid: [],
2425+
},
2426+
)
23782427
})
23792428

23802429
describe(`${ruleName}: sorting by natural order`, () => {

0 commit comments

Comments
 (0)
Please sign in to comment.