eslint-plugin-complete 1.9.0 → 1.11.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/package.json +1 -1
- package/dist/src/configs/recommended.js +1 -1
- package/dist/src/configs/recommended.js.map +1 -1
- package/dist/src/index.d.ts +3 -3
- package/dist/src/index.js +1 -1
- package/dist/src/index.js.map +1 -1
- package/dist/src/rules/sort-objects.d.ts.map +1 -1
- package/dist/src/rules/sort-objects.js +104 -10
- package/dist/src/rules/sort-objects.js.map +1 -1
- package/package.json +3 -3
package/dist/package.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"recommended.js","sourceRoot":"","sources":["../../../../../src/configs/recommended.ts"],"names":[],"mappings":"AAAA,qEAAqE;AACrE,sDAAsD;AACtD,oBAAoB;AAIpB,MAAM,CAAC,MAAM,WAAW,GAAiC;IACvD;QACE,OAAO,EAAE,CAAC,WAAW,EAAE,YAAY,EAAE,qBAAqB,CAAC;QAC3D,OAAO,EAAE,EAAE;QACX,KAAK,EAAE;YACL,mCAAmC,EAAE,OAAO;YAC5C,2CAA2C,EAAE,OAAO;YACpD,iCAAiC,EAAE,OAAO;YAC1C,mCAAmC,EAAE,OAAO;YAC5C,qBAAqB,EAAE,OAAO;YAC9B,gCAAgC,EAAE,OAAO;YACzC,+BAA+B,EAAE,OAAO;YACxC,oCAAoC,EAAE,OAAO;YAC7C,sCAAsC,EAAE,OAAO;YAC/C,yBAAyB,EAAE,OAAO;YAClC,iCAAiC,EAAE,OAAO;YAC1C,kCAAkC,EAAE,OAAO;YAC3C,oCAAoC,EAAE,OAAO;YAC7C,oBAAoB,EAAE,OAAO;YAC7B,qBAAqB,EAAE,OAAO;YAC9B,4BAA4B,EAAE,OAAO;YACrC,0BAA0B,EAAE,OAAO;YACnC,wBAAwB,EAAE,OAAO;YACjC,yCAAyC,EAAE,OAAO;YAClD,qCAAqC,EAAE,OAAO;YAC9C,6BAA6B,EAAE,OAAO;YACtC,0CAA0C,EAAE,OAAO;YACnD,mCAAmC,EAAE,OAAO;YAC5C,oCAAoC,EAAE,OAAO;YAC7C,6BAA6B,EAAE,OAAO;YACtC,4BAA4B,EAAE,OAAO;YACrC,8BAA8B,EAAE,OAAO;YACvC,uBAAuB,EAAE,OAAO;YAChC,0BAA0B,EAAE,OAAO;YACnC,8BAA8B,EAAE,OAAO;YACvC,0BAA0B,EAAE,OAAO;YACnC,kCAAkC,EAAE,OAAO;YAC3C,0CAA0C,EAAE,OAAO;YACnD,0CAA0C,EAAE,OAAO;YACnD,wBAAwB,EAAE,OAAO;YACjC,wBAAwB,EAAE,OAAO;YACjC,2CAA2C,EAAE,OAAO;YACpD,oCAAoC,EAAE,OAAO;YAC7C,+CAA+C,EAAE,OAAO;YACxD,6CAA6C,EAAE,OAAO;YACtD,uCAAuC,EAAE,OAAO;YAChD,uBAAuB,EAAE,OAAO;YAChC,+BAA+B,EAAE,OAAO;YACxC,uBAAuB,EAAE,OAAO;YAChC,qCAAqC,EAAE,OAAO;YAC9C,gCAAgC,EAAE,OAAO;SAC1C;KACF;IACD;QACE,KAAK,EAAE;YACL,MAAM,EAAE,KAAK;YACb,
|
|
1
|
+
{"version":3,"file":"recommended.js","sourceRoot":"","sources":["../../../../../src/configs/recommended.ts"],"names":[],"mappings":"AAAA,qEAAqE;AACrE,sDAAsD;AACtD,oBAAoB;AAIpB,MAAM,CAAC,MAAM,WAAW,GAAiC;IACvD;QACE,OAAO,EAAE,CAAC,WAAW,EAAE,YAAY,EAAE,qBAAqB,CAAC;QAC3D,OAAO,EAAE,EAAE;QACX,KAAK,EAAE;YACL,mCAAmC,EAAE,OAAO;YAC5C,2CAA2C,EAAE,OAAO;YACpD,iCAAiC,EAAE,OAAO;YAC1C,mCAAmC,EAAE,OAAO;YAC5C,qBAAqB,EAAE,OAAO;YAC9B,gCAAgC,EAAE,OAAO;YACzC,+BAA+B,EAAE,OAAO;YACxC,oCAAoC,EAAE,OAAO;YAC7C,sCAAsC,EAAE,OAAO;YAC/C,yBAAyB,EAAE,OAAO;YAClC,iCAAiC,EAAE,OAAO;YAC1C,kCAAkC,EAAE,OAAO;YAC3C,oCAAoC,EAAE,OAAO;YAC7C,oBAAoB,EAAE,OAAO;YAC7B,qBAAqB,EAAE,OAAO;YAC9B,4BAA4B,EAAE,OAAO;YACrC,0BAA0B,EAAE,OAAO;YACnC,wBAAwB,EAAE,OAAO;YACjC,yCAAyC,EAAE,OAAO;YAClD,qCAAqC,EAAE,OAAO;YAC9C,6BAA6B,EAAE,OAAO;YACtC,0CAA0C,EAAE,OAAO;YACnD,mCAAmC,EAAE,OAAO;YAC5C,oCAAoC,EAAE,OAAO;YAC7C,6BAA6B,EAAE,OAAO;YACtC,4BAA4B,EAAE,OAAO;YACrC,8BAA8B,EAAE,OAAO;YACvC,uBAAuB,EAAE,OAAO;YAChC,0BAA0B,EAAE,OAAO;YACnC,8BAA8B,EAAE,OAAO;YACvC,0BAA0B,EAAE,OAAO;YACnC,kCAAkC,EAAE,OAAO;YAC3C,0CAA0C,EAAE,OAAO;YACnD,0CAA0C,EAAE,OAAO;YACnD,wBAAwB,EAAE,OAAO;YACjC,wBAAwB,EAAE,OAAO;YACjC,2CAA2C,EAAE,OAAO;YACpD,oCAAoC,EAAE,OAAO;YAC7C,+CAA+C,EAAE,OAAO;YACxD,6CAA6C,EAAE,OAAO;YACtD,uCAAuC,EAAE,OAAO;YAChD,uBAAuB,EAAE,OAAO;YAChC,+BAA+B,EAAE,OAAO;YACxC,uBAAuB,EAAE,OAAO;YAChC,qCAAqC,EAAE,OAAO;YAC9C,gCAAgC,EAAE,OAAO;SAC1C;KACF;IACD;QACE,KAAK,EAAE;YACL,MAAM,EAAE,KAAK;YACb,6BAA6B,EAAE,KAAK;YACpC,mBAAmB,EAAE,KAAK;YAC1B,cAAc,EAAE,KAAK;SACtB;KACF;IACD;QACE,KAAK,EAAE,CAAC,SAAS,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,CAAC;QACtD,KAAK,EAAE;YACL,qBAAqB,EAAE,KAAK;YAC5B,wBAAwB,EAAE,KAAK;YAC/B,2CAA2C,EAAE,KAAK;YAClD,oCAAoC,EAAE,KAAK;SAC5C;KACF;CACF,CAAC"}
|
package/dist/src/index.d.ts
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import type { TSESLint } from "@typescript-eslint/utils";
|
|
2
2
|
declare const plugin: {
|
|
3
|
+
configs: {
|
|
4
|
+
recommended: TSESLint.FlatConfig.Config[];
|
|
5
|
+
};
|
|
3
6
|
meta: {
|
|
4
7
|
name: string;
|
|
5
8
|
version: string;
|
|
6
9
|
};
|
|
7
|
-
configs: {
|
|
8
|
-
recommended: TSESLint.FlatConfig.Config[];
|
|
9
|
-
};
|
|
10
10
|
rules: {
|
|
11
11
|
"complete-sentences-jsdoc": TSESLint.RuleModule<import("./completeSentence.js").CompleteSentenceMessageIds, [], import("./interfaces/MyPluginDocs.js").MyPluginDocs, TSESLint.RuleListener> & {
|
|
12
12
|
name: string;
|
package/dist/src/index.js
CHANGED
|
@@ -3,11 +3,11 @@ import { configs } from "./configs.js";
|
|
|
3
3
|
import { rules } from "./rules.js";
|
|
4
4
|
const { name, version } = packageJSON;
|
|
5
5
|
const plugin = {
|
|
6
|
+
configs,
|
|
6
7
|
meta: {
|
|
7
8
|
name,
|
|
8
9
|
version,
|
|
9
10
|
},
|
|
10
|
-
configs,
|
|
11
11
|
rules,
|
|
12
12
|
};
|
|
13
13
|
// This is the intended way to build the plugin object in ESLint plugins.
|
package/dist/src/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/index.ts"],"names":[],"mappings":"AACA,OAAO,WAAW,MAAM,iBAAiB,CAAC,OAAO,IAAI,EAAE,MAAM,EAAE,CAAC;AAEhE,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAEnC,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,WAAW,CAAC;AAEtC,MAAM,MAAM,GAAG;IACb,IAAI,EAAE;QACJ,IAAI;QACJ,OAAO;KACR;IACD,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/index.ts"],"names":[],"mappings":"AACA,OAAO,WAAW,MAAM,iBAAiB,CAAC,OAAO,IAAI,EAAE,MAAM,EAAE,CAAC;AAEhE,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAEnC,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,WAAW,CAAC;AAEtC,MAAM,MAAM,GAAG;IACb,OAAO;IACP,IAAI,EAAE;QACJ,IAAI;QACJ,OAAO;KACR;IACD,KAAK;CACN,CAAC;AAEF,yEAAyE;AACzE,6DAA6D;AAC7D,kBAAkB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;AAElC,0DAA0D;AAC1D,2BAA2B;AAC3B,eAAe,MAAM,CAAC;AAEtB,4EAA4E;AAC5E,SAAS,kBAAkB,CACzB,eAAqE,EACrE,WAAmB;IAEnB,MAAM,gBAAgB,GAAG,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAChD,MAAM,UAAU,GAAG,gBAAgB,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3C,IAAI,UAAU,KAAK,SAAS,IAAI,UAAU,KAAK,EAAE,EAAE,CAAC;QAClD,MAAM,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAC;IAC5E,CAAC;IAED,KAAK,MAAM,WAAW,IAAI,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC,EAAE,CAAC;QACzD,KAAK,MAAM,MAAM,IAAI,WAAW,EAAE,CAAC;YACjC,IAAI,MAAM,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;gBACjC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;YAC1D,CAAC;QACH,CAAC;IACH,CAAC;AACH,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sort-objects.d.ts","sourceRoot":"","sources":["../../../src/rules/sort-objects.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAY,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"sort-objects.d.ts","sourceRoot":"","sources":["../../../src/rules/sort-objects.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAY,MAAM,0BAA0B,CAAC;AAgBnE,eAAO,MAAM,WAAW;;CA4EtB,CAAC"}
|
|
@@ -1,18 +1,20 @@
|
|
|
1
1
|
import { AST_NODE_TYPES, ESLintUtils } from "@typescript-eslint/utils";
|
|
2
|
+
import ts from "typescript";
|
|
3
|
+
import { isFlagSet, unionTypeParts } from "../typeUtils.js";
|
|
2
4
|
import { createRule } from "../utils.js";
|
|
3
5
|
export const sortObjects = createRule({
|
|
4
6
|
name: "sort-objects",
|
|
5
7
|
meta: {
|
|
6
8
|
type: "problem",
|
|
7
9
|
docs: {
|
|
8
|
-
description: "Requires object properties to match the declared type order",
|
|
10
|
+
description: "Requires object properties to match the declared type order or alphabetical order",
|
|
9
11
|
recommended: true,
|
|
10
12
|
requiresTypeChecking: true,
|
|
11
13
|
},
|
|
12
14
|
fixable: "code",
|
|
13
15
|
schema: [],
|
|
14
16
|
messages: {
|
|
15
|
-
incorrectOrder: "Object property `{{ earlierName }}` must be before `{{ laterName }}` to match the
|
|
17
|
+
incorrectOrder: "Object property `{{ earlierName }}` must be before `{{ laterName }}` to match the required order.",
|
|
16
18
|
},
|
|
17
19
|
},
|
|
18
20
|
defaultOptions: [],
|
|
@@ -23,11 +25,7 @@ export const sortObjects = createRule({
|
|
|
23
25
|
return {
|
|
24
26
|
ObjectExpression(node) {
|
|
25
27
|
const tsNode = parserServices.esTreeNodeToTSNodeMap.get(node);
|
|
26
|
-
const
|
|
27
|
-
const propertyOrder = getPropertyOrder(type);
|
|
28
|
-
if (propertyOrder.size === 0) {
|
|
29
|
-
return;
|
|
30
|
-
}
|
|
28
|
+
const propertyOrder = getPropertyOrder(checker, tsNode, node);
|
|
31
29
|
let highestSeenOrder = -1;
|
|
32
30
|
let highestSeenName;
|
|
33
31
|
for (const property of node.properties) {
|
|
@@ -126,14 +124,110 @@ function hasCommentInRange(sourceCode, range) {
|
|
|
126
124
|
.getAllComments()
|
|
127
125
|
.some((comment) => comment.range[0] >= range[0] && comment.range[1] <= range[1]);
|
|
128
126
|
}
|
|
129
|
-
function
|
|
130
|
-
|
|
127
|
+
function getPropertyOrder(checker, tsNode, node) {
|
|
128
|
+
const contextualType = checker.getContextualType(tsNode);
|
|
129
|
+
const declaredPropertyOrder = contextualType === undefined
|
|
130
|
+
? new Map()
|
|
131
|
+
: getDeclaredPropertyOrder(contextualType, node);
|
|
132
|
+
if (declaredPropertyOrder.size > 0) {
|
|
133
|
+
return declaredPropertyOrder;
|
|
134
|
+
}
|
|
135
|
+
return getAlphabeticalPropertyOrder(node);
|
|
131
136
|
}
|
|
132
|
-
function
|
|
137
|
+
function getDeclaredPropertyOrder(type, node) {
|
|
138
|
+
const typeWithDeclaredProperties = getTypeWithDeclaredProperties(type, node);
|
|
139
|
+
if (typeWithDeclaredProperties === undefined) {
|
|
140
|
+
return new Map();
|
|
141
|
+
}
|
|
142
|
+
return (getDeclarationPropertyOrder(typeWithDeclaredProperties, node)
|
|
143
|
+
?? getTypePropertyOrder(typeWithDeclaredProperties));
|
|
144
|
+
}
|
|
145
|
+
function getTypePropertyOrder(type) {
|
|
133
146
|
const propertyOrder = new Map();
|
|
134
147
|
for (const [i, property] of type.getProperties().entries()) {
|
|
135
148
|
propertyOrder.set(property.getName(), i);
|
|
136
149
|
}
|
|
137
150
|
return propertyOrder;
|
|
138
151
|
}
|
|
152
|
+
function getTypeWithDeclaredProperties(type, node) {
|
|
153
|
+
const objectTypes = unionTypeParts(type).filter(isObjectTypeWithProperties);
|
|
154
|
+
if (objectTypes.length === 1) {
|
|
155
|
+
return objectTypes[0];
|
|
156
|
+
}
|
|
157
|
+
const matchingObjectTypes = objectTypes.filter((objectType) => hasAllObjectExpressionProperties(objectType, node));
|
|
158
|
+
return matchingObjectTypes.length === 1 ? matchingObjectTypes[0] : undefined;
|
|
159
|
+
}
|
|
160
|
+
function isObjectTypeWithProperties(type) {
|
|
161
|
+
return (isFlagSet(type.flags, ts.TypeFlags.Object | ts.TypeFlags.Intersection)
|
|
162
|
+
&& type.getProperties().length > 0);
|
|
163
|
+
}
|
|
164
|
+
function hasAllObjectExpressionProperties(type, node) {
|
|
165
|
+
for (const property of node.properties) {
|
|
166
|
+
if (property.type === AST_NODE_TYPES.SpreadElement) {
|
|
167
|
+
continue;
|
|
168
|
+
}
|
|
169
|
+
const propertyName = getPropertyName(property);
|
|
170
|
+
if (propertyName === undefined) {
|
|
171
|
+
continue;
|
|
172
|
+
}
|
|
173
|
+
if (type.getProperty(propertyName) === undefined) {
|
|
174
|
+
return false;
|
|
175
|
+
}
|
|
176
|
+
}
|
|
177
|
+
return true;
|
|
178
|
+
}
|
|
179
|
+
function getDeclarationPropertyOrder(type, node) {
|
|
180
|
+
const propertyDeclarationPositions = [];
|
|
181
|
+
for (const propertyName of getObjectExpressionPropertyNames(node)) {
|
|
182
|
+
const property = type.getProperty(propertyName);
|
|
183
|
+
const declarationPosition = property === undefined
|
|
184
|
+
? undefined
|
|
185
|
+
: getPropertyDeclarationPosition(property);
|
|
186
|
+
if (declarationPosition === undefined) {
|
|
187
|
+
return undefined;
|
|
188
|
+
}
|
|
189
|
+
propertyDeclarationPositions.push({
|
|
190
|
+
declarationPosition,
|
|
191
|
+
propertyName,
|
|
192
|
+
});
|
|
193
|
+
}
|
|
194
|
+
const firstFileName = propertyDeclarationPositions.at(0)?.declarationPosition.fileName;
|
|
195
|
+
if (firstFileName === undefined
|
|
196
|
+
|| propertyDeclarationPositions.some(({ declarationPosition }) => declarationPosition.fileName !== firstFileName)) {
|
|
197
|
+
return undefined;
|
|
198
|
+
}
|
|
199
|
+
const propertyOrder = new Map();
|
|
200
|
+
const sortedPropertyDeclarationPositions = propertyDeclarationPositions.toSorted((a, b) => a.declarationPosition.start - b.declarationPosition.start);
|
|
201
|
+
for (const [i, { propertyName },] of sortedPropertyDeclarationPositions.entries()) {
|
|
202
|
+
propertyOrder.set(propertyName, i);
|
|
203
|
+
}
|
|
204
|
+
return propertyOrder;
|
|
205
|
+
}
|
|
206
|
+
function getPropertyDeclarationPosition(property) {
|
|
207
|
+
if (property.declarations?.length !== 1) {
|
|
208
|
+
return undefined;
|
|
209
|
+
}
|
|
210
|
+
const declaration = property.declarations[0];
|
|
211
|
+
if (declaration === undefined) {
|
|
212
|
+
return undefined;
|
|
213
|
+
}
|
|
214
|
+
return {
|
|
215
|
+
fileName: declaration.getSourceFile().fileName,
|
|
216
|
+
start: declaration.getStart(),
|
|
217
|
+
};
|
|
218
|
+
}
|
|
219
|
+
function getObjectExpressionPropertyNames(node) {
|
|
220
|
+
return node.properties
|
|
221
|
+
.filter((property) => property.type !== AST_NODE_TYPES.SpreadElement)
|
|
222
|
+
.map((property) => getPropertyName(property))
|
|
223
|
+
.filter((propertyName) => propertyName !== undefined);
|
|
224
|
+
}
|
|
225
|
+
function getAlphabeticalPropertyOrder(node) {
|
|
226
|
+
const propertyNames = getObjectExpressionPropertyNames(node).toSorted((a, b) => a.localeCompare(b));
|
|
227
|
+
const propertyOrder = new Map();
|
|
228
|
+
for (const [i, propertyName] of propertyNames.entries()) {
|
|
229
|
+
propertyOrder.set(propertyName, i);
|
|
230
|
+
}
|
|
231
|
+
return propertyOrder;
|
|
232
|
+
}
|
|
139
233
|
//# sourceMappingURL=sort-objects.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sort-objects.js","sourceRoot":"","sources":["../../../../../src/rules/sort-objects.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"sort-objects.js","sourceRoot":"","sources":["../../../../../src/rules/sort-objects.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "eslint-plugin-complete",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.11.0",
|
|
4
4
|
"description": "An ESLint plugin that contains useful rules.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"eslint",
|
|
@@ -50,11 +50,11 @@
|
|
|
50
50
|
"@babel/preset-env": "7.29.7",
|
|
51
51
|
"@babel/preset-typescript": "7.29.7",
|
|
52
52
|
"@types/jest": "30.0.0",
|
|
53
|
-
"@types/node": "
|
|
53
|
+
"@types/node": "26.0.0",
|
|
54
54
|
"@typescript-eslint/rule-tester": "8.61.1",
|
|
55
55
|
"@typescript-eslint/types": "8.61.1",
|
|
56
56
|
"complete-common": "2.29.0",
|
|
57
|
-
"complete-node": "
|
|
57
|
+
"complete-node": "18.0.0",
|
|
58
58
|
"eslint-doc-generator": "3.6.0",
|
|
59
59
|
"jest": "30.4.2",
|
|
60
60
|
"prettier": "3.8.4",
|