Skip to content

Commit 1f9cae3

Browse files
committed
feat(eslint): support the shorter syntax with verboseFileRoutes: false
1 parent ef74fc6 commit 1f9cae3

File tree

2 files changed

+28
-0
lines changed

2 files changed

+28
-0
lines changed

packages/eslint-plugin-router/src/__tests__/create-route-property-order.rule.test.ts

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -193,6 +193,27 @@ const invalidTestCases = invalidTestMatrix.map(
193193
}),
194194
)
195195

196+
validTestCases.push({
197+
name: 'verboseFileRoutes: false, createFileRoute valid order',
198+
code: `export const Route = createFileRoute({
199+
loaderDeps: () => null,
200+
loader: () => null,
201+
})`,
202+
})
203+
204+
invalidTestCases.push({
205+
name: 'verboseFileRoutes: false, createFileRoute invalid order',
206+
code: `export const Route = createFileRoute({
207+
loader: () => null,
208+
loaderDeps: () => null,
209+
})`,
210+
errors: [{ messageId: 'invalidOrder' }],
211+
output: `export const Route = createFileRoute({
212+
loaderDeps: () => null,
213+
loader: () => null,
214+
})`,
215+
})
216+
196217
ruleTester.run(name, rule, {
197218
valid: validTestCases,
198219
invalid: invalidTestCases,

packages/eslint-plugin-router/src/rules/create-route-property-order/create-route-property-order.rule.ts

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,14 @@ export const rule = createRule({
5151
let args = node.arguments
5252
if (createRouteFunctionsIndirect.includes(createRouteFunction as any)) {
5353
if (node.parent.type === AST_NODE_TYPES.CallExpression) {
54+
// Default verboseFileRoutes curried usage: createFileRoute('/path')({ ... })
5455
args = node.parent.arguments
56+
} else if (
57+
// verboseFileRoutes: false syntax: createFileRoute({ ... })
58+
args[0] &&
59+
args[0].type === AST_NODE_TYPES.ObjectExpression
60+
) {
61+
// use args as-is
5562
} else {
5663
return
5764
}

0 commit comments

Comments
 (0)