@shigen/eslint-plugin 0.13.0 → 0.14.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/index.d.ts CHANGED
@@ -1,11 +1,11 @@
1
1
  export declare const rules: {
2
- 'group-imports': import("./tools/rule.js").RuleModule<import("./rules/group-imports.js").GroupConfiguration[]>;
3
- 'sort-imports': import("./tools/rule.js").RuleModule<[(Partial<import("./rules/sort-imports.js").Configuration> | undefined)?]>;
2
+ "group-imports": import("./tools/rule.ts").RuleModule<import("./rules/group-imports.ts").GroupConfiguration[]>;
3
+ "sort-imports": import("./tools/rule.ts").RuleModule<[Partial<import("./rules/sort-imports.ts").Configuration>?]>;
4
4
  };
5
5
  declare const plugin: {
6
6
  rules: {
7
- 'group-imports': import("./tools/rule.js").RuleModule<import("./rules/group-imports.js").GroupConfiguration[]>;
8
- 'sort-imports': import("./tools/rule.js").RuleModule<[(Partial<import("./rules/sort-imports.js").Configuration> | undefined)?]>;
7
+ "group-imports": import("./tools/rule.ts").RuleModule<import("./rules/group-imports.ts").GroupConfiguration[]>;
8
+ "sort-imports": import("./tools/rule.ts").RuleModule<[Partial<import("./rules/sort-imports.ts").Configuration>?]>;
9
9
  };
10
10
  };
11
11
  export default plugin;
package/dist/index.js CHANGED
@@ -1,14 +1,11 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.rules = void 0;
4
- const group_imports_js_1 = require("./rules/group-imports.js");
5
- const sort_imports_js_1 = require("./rules/sort-imports.js");
6
- exports.rules = {
7
- 'group-imports': group_imports_js_1.rule,
8
- 'sort-imports': sort_imports_js_1.rule,
1
+ import { rule as groupImports } from "./rules/group-imports.js";
2
+ import { rule as sortImports } from "./rules/sort-imports.js";
3
+ export const rules = {
4
+ "group-imports": groupImports,
5
+ "sort-imports": sortImports,
9
6
  };
10
7
  const plugin = {
11
- rules: exports.rules,
8
+ rules,
12
9
  };
13
- exports.default = plugin;
10
+ export default plugin;
14
11
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAEA,+DAAgE;AAChE,6DAA8D;AAEjD,QAAA,KAAK,GAAG;IACpB,eAAe,EAAE,uBAAY;IAC7B,cAAc,EAAE,sBAAW;CAC3B,CAAC;AAEF,MAAM,MAAM,GAAG;IACd,KAAK,EAAL,aAAK;CACmB,CAAC;AAE1B,kBAAe,MAAM,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,IAAI,IAAI,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,EAAE,IAAI,IAAI,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAE9D,MAAM,CAAC,MAAM,KAAK,GAAG;IACpB,eAAe,EAAE,YAAY;IAC7B,cAAc,EAAE,WAAW;CAC3B,CAAC;AAEF,MAAM,MAAM,GAAG;IACd,KAAK;CACmB,CAAC;AAE1B,eAAe,MAAM,CAAC"}
@@ -1,10 +1,10 @@
1
- import type { RuleModule } from '../tools/rule.js';
2
- export type ModuleClassOption = 'node' | 'external' | 'internal' | 'absolute' | 'relative';
3
- export type TypeImportOption = 'include' | 'exclude' | 'only';
1
+ import { type RuleModule } from "../tools/rule.ts";
2
+ export type ModuleClassOption = "node" | "external" | "internal" | "absolute" | "relative";
3
+ export type TypeImportOption = "include" | "exclude" | "only";
4
4
  declare const ModuleClass_base: import("@shigen/enum").EnumConstructor<{
5
5
  Key: ModuleClassOption;
6
6
  }, [fields: {
7
- readonly name?: string | undefined;
7
+ readonly name?: string;
8
8
  readonly key: ModuleClassOption;
9
9
  }]>;
10
10
  export declare class ModuleClass extends ModuleClass_base {
@@ -17,7 +17,7 @@ export declare class ModuleClass extends ModuleClass_base {
17
17
  declare const TypeImport_base: import("@shigen/enum").EnumConstructor<{
18
18
  Key: TypeImportOption;
19
19
  }, [fields: {
20
- readonly name?: string | undefined;
20
+ readonly name?: string;
21
21
  readonly key: TypeImportOption;
22
22
  }]>;
23
23
  export declare class TypeImport extends TypeImport_base {
@@ -1 +1 @@
1
- {"version":3,"file":"group-imports.d.ts","sourceRoot":"","sources":["../../src/rules/group-imports.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAe,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAKhE,MAAM,MAAM,iBAAiB,GAAG,MAAM,GAAG,UAAU,GAAG,UAAU,GAAG,UAAU,GAAG,UAAU,CAAC;AAC3F,MAAM,MAAM,gBAAgB,GAAG,SAAS,GAAG,SAAS,GAAG,MAAM,CAAC;;SAKjB,iBAAiB;;;;;AAA9D,qBAAa,WAAY,SAAQ,gBAA+C;IAC/E,MAAM,CAAC,QAAQ,CAAC,IAAI,cAAmD;IACvE,MAAM,CAAC,QAAQ,CAAC,QAAQ,cAAuD;IAC/E,MAAM,CAAC,QAAQ,CAAC,QAAQ,cAAuD;IAC/E,MAAM,CAAC,QAAQ,CAAC,QAAQ,cAAuD;IAC/E,MAAM,CAAC,QAAQ,CAAC,QAAQ,cAAuD;CAC/E;;SAE2C,gBAAgB;;;;;AAA5D,qBAAa,UAAW,SAAQ,eAA6C;IAC5E,MAAM,CAAC,QAAQ,CAAC,OAAO,aAAoD;IAC3E,MAAM,CAAC,QAAQ,CAAC,OAAO,aAAoD;IAC3E,MAAM,CAAC,QAAQ,CAAC,IAAI,aAAiD;CACrE;AAED,UAAU,wBAAwB;IACjC,KAAK,EAAE,iBAAiB,CAAC;IACzB,KAAK,CAAC,EAAE,gBAAgB,CAAC;CACzB;AAED,UAAU,uBAAuB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,gBAAgB,CAAC;CACzB;AAED,KAAK,mBAAmB,GAAG,MAAM,GAAG,uBAAuB,GAAG,wBAAwB,CAAC;AAEvF,MAAM,MAAM,kBAAkB,GAAG,mBAAmB,GAAG,mBAAmB,EAAE,CAAC;AAmL7E,eAAO,MAAM,IAAI,EAAE,UAAU,CAAC,kBAAkB,EAAE,CAuHjD,CAAC"}
1
+ {"version":3,"file":"group-imports.d.ts","sourceRoot":"","sources":["../../src/rules/group-imports.ts"],"names":[],"mappings":"AASA,OAAO,EAA8B,KAAK,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAG/E,MAAM,MAAM,iBAAiB,GAAG,MAAM,GAAG,UAAU,GAAG,UAAU,GAAG,UAAU,GAAG,UAAU,CAAC;AAC3F,MAAM,MAAM,gBAAgB,GAAG,SAAS,GAAG,SAAS,GAAG,MAAM,CAAC;;SAKjB,iBAAiB;;;;;AAA9D,qBAAa,WAAY,SAAQ,gBAAgD;IAChF,MAAM,CAAC,QAAQ,CAAC,IAAI,cAAoD;IACxE,MAAM,CAAC,QAAQ,CAAC,QAAQ,cAAwD;IAChF,MAAM,CAAC,QAAQ,CAAC,QAAQ,cAAwD;IAChF,MAAM,CAAC,QAAQ,CAAC,QAAQ,cAAwD;IAChF,MAAM,CAAC,QAAQ,CAAC,QAAQ,cAAwD;CAChF;;SAE2C,gBAAgB;;;;;AAA5D,qBAAa,UAAW,SAAQ,eAA8C;IAC7E,MAAM,CAAC,QAAQ,CAAC,OAAO,aAAqD;IAC5E,MAAM,CAAC,QAAQ,CAAC,OAAO,aAAqD;IAC5E,MAAM,CAAC,QAAQ,CAAC,IAAI,aAAkD;CACtE;AAED,UAAU,wBAAwB;IACjC,KAAK,EAAE,iBAAiB,CAAC;IACzB,KAAK,CAAC,EAAE,gBAAgB,CAAC;CACzB;AAED,UAAU,uBAAuB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,gBAAgB,CAAC;CACzB;AAED,KAAK,mBAAmB,GAAG,MAAM,GAAG,uBAAuB,GAAG,wBAAwB,CAAC;AAEvF,MAAM,MAAM,kBAAkB,GAAG,mBAAmB,GAAG,mBAAmB,EAAE,CAAC;AAmL7E,eAAO,MAAM,IAAI,EAAE,UAAU,CAAC,kBAAkB,EAAE,CAuHjD,CAAC"}
@@ -1,38 +1,33 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.rule = exports.TypeImport = exports.ModuleClass = void 0;
4
- const node_module_1 = require("node:module");
5
- const node_path_1 = require("node:path");
6
- const enum_1 = require("@shigen/enum");
7
- const minimatch_1 = require("minimatch");
8
- const ast_js_1 = require("../tools/ast.js");
9
- const rule_js_1 = require("../tools/rule.js");
10
- const sort_js_1 = require("../tools/sort.js");
1
+ import { isBuiltin } from "node:module";
2
+ import { isAbsolute } from "node:path";
3
+ import { Enum } from "@shigen/enum";
4
+ import { minimatch } from "minimatch";
5
+ import { assertLoc, assertRange, extrema, importModules, isComment, isTypeImportOrExport } from "../tools/ast.js";
6
+ import { fixRange } from "../tools/rule.js";
7
+ import { sortByPath } from "../tools/sort.js";
11
8
  const moduleClassId = Symbol();
12
9
  const typeImportId = Symbol();
13
- class ModuleClass extends (0, enum_1.Enum)(moduleClassId) {
14
- static Node = new ModuleClass(moduleClassId, { key: 'node' });
15
- static External = new ModuleClass(moduleClassId, { key: 'external' });
16
- static Internal = new ModuleClass(moduleClassId, { key: 'internal' });
17
- static Absolute = new ModuleClass(moduleClassId, { key: 'absolute' });
18
- static Relative = new ModuleClass(moduleClassId, { key: 'relative' });
10
+ export class ModuleClass extends Enum(moduleClassId) {
11
+ static Node = new ModuleClass(moduleClassId, { key: "node", });
12
+ static External = new ModuleClass(moduleClassId, { key: "external", });
13
+ static Internal = new ModuleClass(moduleClassId, { key: "internal", });
14
+ static Absolute = new ModuleClass(moduleClassId, { key: "absolute", });
15
+ static Relative = new ModuleClass(moduleClassId, { key: "relative", });
19
16
  }
20
- exports.ModuleClass = ModuleClass;
21
- class TypeImport extends (0, enum_1.Enum)(typeImportId) {
22
- static Include = new TypeImport(typeImportId, { key: 'include' });
23
- static Exclude = new TypeImport(typeImportId, { key: 'exclude' });
24
- static Only = new TypeImport(typeImportId, { key: 'only' });
17
+ export class TypeImport extends Enum(typeImportId) {
18
+ static Include = new TypeImport(typeImportId, { key: "include", });
19
+ static Exclude = new TypeImport(typeImportId, { key: "exclude", });
20
+ static Only = new TypeImport(typeImportId, { key: "only", });
25
21
  }
26
- exports.TypeImport = TypeImport;
27
22
  const defaultConfiguration = [
28
- { class: ModuleClass.Node.key },
29
- { class: ModuleClass.External.key },
30
- { class: ModuleClass.Absolute.key },
31
- { class: ModuleClass.Internal.key },
32
- { class: ModuleClass.Relative.key },
23
+ { class: ModuleClass.Node.key, },
24
+ { class: ModuleClass.External.key, },
25
+ { class: ModuleClass.Absolute.key, },
26
+ { class: ModuleClass.Internal.key, },
27
+ { class: ModuleClass.Relative.key, },
33
28
  ];
34
29
  function groupIndex(node, groups) {
35
- if (typeof node.source.value !== 'string') {
30
+ if (typeof node.source.value !== "string") {
36
31
  return groups.length;
37
32
  }
38
33
  const importPath = node.source.value;
@@ -42,39 +37,39 @@ function groupIndex(node, groups) {
42
37
  }
43
38
  return callback(group);
44
39
  });
45
- const isTypeImport = (0, ast_js_1.isTypeImportOrExport)(node);
40
+ const isTypeImport = isTypeImportOrExport(node);
46
41
  const hardCodedIndex = findIndex((group) => {
47
- if (typeof group === 'string') {
48
- return (0, minimatch_1.minimatch)(importPath, group, { matchBase: true });
42
+ if (typeof group === "string") {
43
+ return minimatch(importPath, group, { matchBase: true, });
49
44
  }
50
- if (!('path' in group)) {
45
+ if (!("path" in group)) {
51
46
  return false;
52
47
  }
53
48
  if (isTypeImport) {
54
- return (0, minimatch_1.minimatch)(importPath, group.path, { matchBase: true }) && group.types !== TypeImport.Exclude.key;
49
+ return minimatch(importPath, group.path, { matchBase: true, }) && group.types !== TypeImport.Exclude.key;
55
50
  }
56
- return (0, minimatch_1.minimatch)(importPath, group.path, { matchBase: true }) && group.types !== TypeImport.Only.key;
51
+ return minimatch(importPath, group.path, { matchBase: true, }) && group.types !== TypeImport.Only.key;
57
52
  });
58
53
  if (hardCodedIndex >= 0) {
59
54
  return hardCodedIndex;
60
55
  }
61
56
  // split path at / delimiter but keep first / for absolute paths
62
- const [moduleName] = importPath.split(/(?=^\/)|\//u);
57
+ const [moduleName,] = importPath.split(/(?=^\/)|\//u);
63
58
  if (!moduleName) {
64
59
  throw new Error(`group-imports: unexpected undefined module name for path '${importPath}'`);
65
60
  }
66
61
  let moduleClass = ModuleClass.External;
67
- if ((0, node_module_1.isBuiltin)(moduleName)) {
62
+ if (isBuiltin(moduleName)) {
68
63
  moduleClass = ModuleClass.Node;
69
64
  }
70
65
  else if (moduleName.startsWith("#")) {
71
66
  moduleClass = ModuleClass.Internal;
72
67
  }
73
68
  else if (/^(?:\/|\.)/u.exec(moduleName)) {
74
- moduleClass = (0, node_path_1.isAbsolute)(moduleName) ? ModuleClass.Absolute : ModuleClass.Relative;
69
+ moduleClass = isAbsolute(moduleName) ? ModuleClass.Absolute : ModuleClass.Relative;
75
70
  }
76
71
  const classIndex = findIndex((group) => {
77
- if (typeof group !== 'object' || !('class' in group)) {
72
+ if (typeof group !== "object" || !("class" in group)) {
78
73
  return false;
79
74
  }
80
75
  if (isTypeImport) {
@@ -88,14 +83,14 @@ function checkLines(context, previous, next, lineCount) {
88
83
  if (!previous || !next) {
89
84
  throw new Error(`group-imports: unexpected undefined node`);
90
85
  }
91
- const tokensBetween = context.sourceCode.getTokensBetween(previous, next, { includeComments: true });
92
- const relevantItems = [previous];
86
+ const tokensBetween = context.sourceCode.getTokensBetween(previous, next, { includeComments: true, });
87
+ const relevantItems = [previous,];
93
88
  for (const token of tokensBetween) {
94
- if (!(0, ast_js_1.isComment)(token)) {
89
+ if (!isComment(token)) {
95
90
  return context.report({
96
91
  loc: {
97
- start: (0, ast_js_1.assertLoc)(tokensBetween.find((t) => !(0, ast_js_1.isComment)(t))).start,
98
- end: (0, ast_js_1.assertLoc)(tokensBetween.findLast((t) => !(0, ast_js_1.isComment)(t))).end,
92
+ start: assertLoc(tokensBetween.find((t) => !isComment(t))).start,
93
+ end: assertLoc(tokensBetween.findLast((t) => !isComment(t))).end,
99
94
  },
100
95
  message: `Unexpected code between imports of group`,
101
96
  });
@@ -106,14 +101,14 @@ function checkLines(context, previous, next, lineCount) {
106
101
  for (let i = 0; i < relevantItems.length - 1; i++) {
107
102
  const a = relevantItems[i];
108
103
  const b = relevantItems[i + 1];
109
- const locA = (0, ast_js_1.assertLoc)(a);
110
- const locB = (0, ast_js_1.assertLoc)(b);
111
- const rangeA = (0, ast_js_1.assertRange)(a);
112
- const rangeB = (0, ast_js_1.assertRange)(b);
104
+ const locA = assertLoc(a);
105
+ const locB = assertLoc(b);
106
+ const rangeA = assertRange(a);
107
+ const rangeB = assertRange(b);
113
108
  const linesBetween = locB.start.line - locA.end.line - 1;
114
109
  if (lineCount === 0) {
115
110
  if (linesBetween > 0) {
116
- const range = [rangeA[1], rangeB[0] - locB.start.column];
111
+ const range = [rangeA[1], rangeB[0] - locB.start.column,];
117
112
  context.report({
118
113
  loc: {
119
114
  start: locA.end,
@@ -123,12 +118,12 @@ function checkLines(context, previous, next, lineCount) {
123
118
  },
124
119
  },
125
120
  message: `Unexpected white space between imports`,
126
- fix: (fixer) => fixer.replaceTextRange(range, '\n'),
121
+ fix: (fixer) => fixer.replaceTextRange(range, "\n"),
127
122
  });
128
123
  }
129
124
  }
130
125
  else {
131
- const columnOffset = (0, ast_js_1.isComment)(b) ? 0 : locB.start.column;
126
+ const columnOffset = isComment(b) ? 0 : locB.start.column;
132
127
  const reportLoc = {
133
128
  start: locA.end,
134
129
  end: {
@@ -136,8 +131,8 @@ function checkLines(context, previous, next, lineCount) {
136
131
  column: columnOffset,
137
132
  },
138
133
  };
139
- const fix = (fixer) => fixer.replaceTextRange([rangeA[1], rangeB[0] - columnOffset], '\n\n');
140
- if ((0, ast_js_1.isComment)(a) || (0, ast_js_1.isComment)(b)) {
134
+ const fix = (fixer) => fixer.replaceTextRange([rangeA[1], rangeB[0] - columnOffset,], "\n\n");
135
+ if (isComment(a) || isComment(b)) {
141
136
  if (linesBetween > 1) {
142
137
  context.report({
143
138
  loc: reportLoc,
@@ -160,62 +155,62 @@ function checkLines(context, previous, next, lineCount) {
160
155
  }
161
156
  function groupLabels(groups) {
162
157
  return groups.map((group) => {
163
- if (group instanceof Array || typeof group === 'string' || 'path' in group || 'pattern' in group) {
164
- return 'custom';
158
+ if (group instanceof Array || typeof group === "string" || "path" in group || "pattern" in group) {
159
+ return "custom";
165
160
  }
166
161
  return group.class.toUpperCase();
167
162
  });
168
163
  }
169
- exports.rule = {
164
+ export const rule = {
170
165
  meta: {
171
- fixable: 'code',
166
+ fixable: "code",
172
167
  schema: {
173
168
  definitions: {
174
169
  typeImportConfiguration: {
175
- enum: [...TypeImport.keys()],
170
+ enum: [...TypeImport.keys(),],
176
171
  },
177
172
  moduleConfiguration: {
178
173
  oneOf: [
179
- { type: 'string' },
174
+ { type: "string", },
180
175
  {
181
- type: 'object',
176
+ type: "object",
182
177
  properties: {
183
178
  class: {
184
- enum: [...ModuleClass.keys()],
179
+ enum: [...ModuleClass.keys(),],
185
180
  },
186
181
  types: {
187
- $ref: '#/definitions/typeImportConfiguration',
182
+ $ref: "#/definitions/typeImportConfiguration",
188
183
  },
189
184
  },
190
- required: ['class'],
185
+ required: ["class",],
191
186
  additionalProperties: false,
192
187
  },
193
188
  {
194
- type: 'object',
189
+ type: "object",
195
190
  properties: {
196
191
  path: {
197
- type: 'string',
192
+ type: "string",
198
193
  },
199
194
  types: {
200
- $ref: '#/definitions/typeImportConfiguration',
195
+ $ref: "#/definitions/typeImportConfiguration",
201
196
  },
202
197
  },
203
- required: ['path'],
198
+ required: ["path",],
204
199
  additionalProperties: false,
205
200
  },
206
201
  ],
207
202
  },
208
203
  },
209
- type: 'array',
204
+ type: "array",
210
205
  items: {
211
206
  anyOf: [
212
207
  {
213
- $ref: '#/definitions/moduleConfiguration',
208
+ $ref: "#/definitions/moduleConfiguration",
214
209
  },
215
210
  {
216
- type: 'array',
211
+ type: "array",
217
212
  items: {
218
- $ref: '#/definitions/moduleConfiguration',
213
+ $ref: "#/definitions/moduleConfiguration",
219
214
  },
220
215
  },
221
216
  ],
@@ -225,7 +220,7 @@ exports.rule = {
225
220
  create(context) {
226
221
  const groupConfigurations = context.options.length ? context.options : defaultConfiguration;
227
222
  const source = context.sourceCode;
228
- const imports = (0, ast_js_1.importModules)(source).map((node) => {
223
+ const imports = importModules(source).map((node) => {
229
224
  return {
230
225
  index: groupIndex(node, groupConfigurations),
231
226
  node,
@@ -234,7 +229,7 @@ exports.rule = {
234
229
  if (imports.length === 0) {
235
230
  return {};
236
231
  }
237
- const sorted = (0, sort_js_1.sortByPath)(imports, ['index']);
232
+ const sorted = sortByPath(imports, ["index",]);
238
233
  let previousIndex = sorted[0]?.index;
239
234
  const groups = sorted.reduce((result, value) => {
240
235
  const current = result.at(-1);
@@ -242,16 +237,16 @@ exports.rule = {
242
237
  current.push(value.node);
243
238
  }
244
239
  else {
245
- result.push([value.node]);
240
+ result.push([value.node,]);
246
241
  }
247
242
  previousIndex = value.index;
248
243
  return result;
249
- }, [[]]);
244
+ }, [[],]);
250
245
  if (sorted.some((node, i) => node !== imports[i])) {
251
- (0, rule_js_1.fixRange)(context, {
252
- range: (0, ast_js_1.extrema)(imports.map(({ node }) => node)),
253
- message: `Expected import groups: ${groupLabels(groupConfigurations).join(', ')}`,
254
- code: groups.map((nodes) => nodes.map((node) => source.getText(node)).join('\n')).join('\n\n'),
246
+ fixRange(context, {
247
+ range: extrema(imports.map(({ node, }) => node)),
248
+ message: `Expected import groups: ${groupLabels(groupConfigurations).join(", ")}`,
249
+ code: groups.map((nodes) => nodes.map((node) => source.getText(node)).join("\n")).join("\n\n"),
255
250
  });
256
251
  }
257
252
  else {
@@ -265,7 +260,7 @@ exports.rule = {
265
260
  return;
266
261
  }
267
262
  const previous = groups[i - 1]?.at(-1);
268
- const [current] = group;
263
+ const [current,] = group;
269
264
  checkLines(context, previous, current, 1);
270
265
  });
271
266
  }
@@ -1 +1 @@
1
- {"version":3,"file":"group-imports.js","sourceRoot":"","sources":["../../src/rules/group-imports.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"group-imports.js","sourceRoot":"","sources":["../../src/rules/group-imports.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,11 @@
1
- import type { RuleModule } from '../tools/rule.js';
2
- import type { SortOptions } from '../tools/sort.js';
3
- export type GroupPositionOption = 'ignore' | 'top' | 'bottom' | 'above-value' | 'below-value';
4
- export type InlinePositionOption = 'ignore' | 'start' | 'end';
1
+ import { type RuleModule } from "../tools/rule.ts";
2
+ import { type SortOptions } from "../tools/sort.ts";
3
+ export type GroupPositionOption = "ignore" | "top" | "bottom" | "above-value" | "below-value";
4
+ export type InlinePositionOption = "ignore" | "start" | "end";
5
5
  declare const TypeImportGroupPosition_base: import("@shigen/enum").EnumConstructor<{
6
6
  Key: GroupPositionOption;
7
7
  }, [fields: {
8
- readonly name?: string | undefined;
8
+ readonly name?: string;
9
9
  readonly key: GroupPositionOption;
10
10
  }]>;
11
11
  export declare class TypeImportGroupPosition extends TypeImportGroupPosition_base {
@@ -18,7 +18,7 @@ export declare class TypeImportGroupPosition extends TypeImportGroupPosition_bas
18
18
  declare const TypeImportInlinePosition_base: import("@shigen/enum").EnumConstructor<{
19
19
  Key: InlinePositionOption;
20
20
  }, [fields: {
21
- readonly name?: string | undefined;
21
+ readonly name?: string;
22
22
  readonly key: InlinePositionOption;
23
23
  }]>;
24
24
  export declare class TypeImportInlinePosition extends TypeImportInlinePosition_base {
@@ -27,7 +27,7 @@ export declare class TypeImportInlinePosition extends TypeImportInlinePosition_b
27
27
  static readonly End: TypeImportInlinePosition;
28
28
  }
29
29
  export interface Configuration extends SortOptions {
30
- specifier: 'source' | 'rename';
30
+ specifier: "source" | "rename";
31
31
  sortExports: boolean;
32
32
  typesInGroup: GroupPositionOption;
33
33
  inlineTypes: InlinePositionOption;
@@ -1 +1 @@
1
- {"version":3,"file":"sort-imports.d.ts","sourceRoot":"","sources":["../../src/rules/sort-imports.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAKpD,MAAM,MAAM,mBAAmB,GAAG,QAAQ,GAAG,KAAK,GAAG,QAAQ,GAAG,aAAa,GAAG,aAAa,CAAC;AAC9F,MAAM,MAAM,oBAAoB,GAAG,QAAQ,GAAG,OAAO,GAAG,KAAK,CAAC;;SAKL,mBAAmB;;;;;AAA5E,qBAAa,uBAAwB,SAAQ,4BAA6D;IACzG,MAAM,CAAC,QAAQ,CAAC,MAAM,0BAA6E;IACnG,MAAM,CAAC,QAAQ,CAAC,GAAG,0BAA0E;IAC7F,MAAM,CAAC,QAAQ,CAAC,MAAM,0BAA6E;IACnG,MAAM,CAAC,QAAQ,CAAC,UAAU,0BAAkF;IAC5G,MAAM,CAAC,QAAQ,CAAC,UAAU,0BAAkF;CAC5G;;SAEyD,oBAAoB;;;;;AAA9E,qBAAa,wBAAyB,SAAQ,6BAA+D;IAC5G,MAAM,CAAC,QAAQ,CAAC,MAAM,2BAA+E;IACrG,MAAM,CAAC,QAAQ,CAAC,KAAK,2BAA8E;IACnG,MAAM,CAAC,QAAQ,CAAC,GAAG,2BAA4E;CAC/F;AAED,MAAM,WAAW,aAAc,SAAQ,WAAW;IACjD,SAAS,EAAE,QAAQ,GAAG,QAAQ,CAAC;IAC/B,WAAW,EAAE,OAAO,CAAC;IACrB,YAAY,EAAE,mBAAmB,CAAC;IAClC,WAAW,EAAE,oBAAoB,CAAC;CAClC;AAYD,eAAO,MAAM,IAAI,EAAE,UAAU,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,CAgLtD,CAAC"}
1
+ {"version":3,"file":"sort-imports.d.ts","sourceRoot":"","sources":["../../src/rules/sort-imports.ts"],"names":[],"mappings":"AAeA,OAAO,EAAY,KAAK,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC7D,OAAO,EAAc,KAAK,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAEhE,MAAM,MAAM,mBAAmB,GAAG,QAAQ,GAAG,KAAK,GAAG,QAAQ,GAAG,aAAa,GAAG,aAAa,CAAC;AAC9F,MAAM,MAAM,oBAAoB,GAAG,QAAQ,GAAG,OAAO,GAAG,KAAK,CAAC;;SAKL,mBAAmB;;;;;AAA5E,qBAAa,uBAAwB,SAAQ,4BAA8D;IAC1G,MAAM,CAAC,QAAQ,CAAC,MAAM,0BAA8E;IACpG,MAAM,CAAC,QAAQ,CAAC,GAAG,0BAA2E;IAC9F,MAAM,CAAC,QAAQ,CAAC,MAAM,0BAA8E;IACpG,MAAM,CAAC,QAAQ,CAAC,UAAU,0BAAmF;IAC7G,MAAM,CAAC,QAAQ,CAAC,UAAU,0BAAmF;CAC7G;;SAEyD,oBAAoB;;;;;AAA9E,qBAAa,wBAAyB,SAAQ,6BAAgE;IAC7G,MAAM,CAAC,QAAQ,CAAC,MAAM,2BAAgF;IACtG,MAAM,CAAC,QAAQ,CAAC,KAAK,2BAA+E;IACpG,MAAM,CAAC,QAAQ,CAAC,GAAG,2BAA6E;CAChG;AAED,MAAM,WAAW,aAAc,SAAQ,WAAW;IACjD,SAAS,EAAE,QAAQ,GAAG,QAAQ,CAAC;IAC/B,WAAW,EAAE,OAAO,CAAC;IACrB,YAAY,EAAE,mBAAmB,CAAC;IAClC,WAAW,EAAE,oBAAoB,CAAC;CAClC;AAYD,eAAO,MAAM,IAAI,EAAE,UAAU,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,CA6KtD,CAAC"}
@@ -1,99 +1,93 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.rule = exports.TypeImportInlinePosition = exports.TypeImportGroupPosition = void 0;
4
- const enum_1 = require("@shigen/enum");
5
- const ast_js_1 = require("../tools/ast.js");
6
- const rule_js_1 = require("../tools/rule.js");
7
- const sort_js_1 = require("../tools/sort.js");
1
+ import { Enum } from "@shigen/enum";
2
+ import { exportModules, extrema, importModules, isTypeImportOrExport, linesBetween, } from "../tools/ast.js";
3
+ import { fixRange } from "../tools/rule.js";
4
+ import { sortByPath } from "../tools/sort.js";
8
5
  const typeImportGroupPositionId = Symbol();
9
6
  const typeImportInlinePositionId = Symbol();
10
- class TypeImportGroupPosition extends (0, enum_1.Enum)(typeImportGroupPositionId) {
11
- static Ignore = new TypeImportGroupPosition(typeImportGroupPositionId, { key: 'ignore' });
12
- static Top = new TypeImportGroupPosition(typeImportGroupPositionId, { key: 'top' });
13
- static Bottom = new TypeImportGroupPosition(typeImportGroupPositionId, { key: 'bottom' });
14
- static AboveValue = new TypeImportGroupPosition(typeImportGroupPositionId, { key: 'above-value' });
15
- static BelowValue = new TypeImportGroupPosition(typeImportGroupPositionId, { key: 'below-value' });
7
+ export class TypeImportGroupPosition extends Enum(typeImportGroupPositionId) {
8
+ static Ignore = new TypeImportGroupPosition(typeImportGroupPositionId, { key: "ignore", });
9
+ static Top = new TypeImportGroupPosition(typeImportGroupPositionId, { key: "top", });
10
+ static Bottom = new TypeImportGroupPosition(typeImportGroupPositionId, { key: "bottom", });
11
+ static AboveValue = new TypeImportGroupPosition(typeImportGroupPositionId, { key: "above-value", });
12
+ static BelowValue = new TypeImportGroupPosition(typeImportGroupPositionId, { key: "below-value", });
16
13
  }
17
- exports.TypeImportGroupPosition = TypeImportGroupPosition;
18
- class TypeImportInlinePosition extends (0, enum_1.Enum)(typeImportInlinePositionId) {
19
- static Ignore = new TypeImportInlinePosition(typeImportInlinePositionId, { key: 'ignore' });
20
- static Start = new TypeImportInlinePosition(typeImportInlinePositionId, { key: 'start' });
21
- static End = new TypeImportInlinePosition(typeImportInlinePositionId, { key: 'end' });
14
+ export class TypeImportInlinePosition extends Enum(typeImportInlinePositionId) {
15
+ static Ignore = new TypeImportInlinePosition(typeImportInlinePositionId, { key: "ignore", });
16
+ static Start = new TypeImportInlinePosition(typeImportInlinePositionId, { key: "start", });
17
+ static End = new TypeImportInlinePosition(typeImportInlinePositionId, { key: "end", });
22
18
  }
23
- exports.TypeImportInlinePosition = TypeImportInlinePosition;
24
19
  const defaultConfiguration = {
25
- specifier: 'source',
26
- locales: ['en-US'],
20
+ specifier: "source",
21
+ locales: ["en-US",],
27
22
  numeric: true,
28
- caseFirst: 'lower',
23
+ caseFirst: "lower",
29
24
  sortExports: true,
30
25
  typesInGroup: TypeImportGroupPosition.Ignore.key,
31
26
  inlineTypes: TypeImportInlinePosition.Ignore.key,
32
27
  };
33
- exports.rule = {
28
+ export const rule = {
34
29
  meta: {
35
- fixable: 'code',
30
+ fixable: "code",
36
31
  schema: [
37
32
  {
38
- type: 'object',
33
+ type: "object",
39
34
  properties: {
40
35
  locales: {
41
- type: 'array',
36
+ type: "array",
42
37
  items: {
43
- type: 'string',
38
+ type: "string",
44
39
  },
45
40
  },
46
41
  sensitivity: {
47
- enum: ['base', 'accent', 'case', 'variant'],
42
+ enum: ["base", "accent", "case", "variant",],
48
43
  },
49
44
  ignorePunctuation: {
50
- type: 'boolean',
45
+ type: "boolean",
51
46
  },
52
47
  numeric: {
53
- type: 'boolean',
48
+ type: "boolean",
54
49
  },
55
50
  caseFirst: {
56
- enum: ['upper', 'lower', 'false'],
51
+ enum: ["upper", "lower", "false",],
57
52
  },
58
53
  caseGroups: {
59
- type: 'boolean',
54
+ type: "boolean",
60
55
  },
61
56
  specifier: {
62
- enum: ['source', 'rename'],
57
+ enum: ["source", "rename",],
63
58
  },
64
59
  sortExports: {
65
- type: 'boolean',
60
+ type: "boolean",
66
61
  },
67
62
  typesInGroup: {
68
- enum: [...TypeImportGroupPosition.keys()],
63
+ enum: [...TypeImportGroupPosition.keys(),],
69
64
  },
70
65
  inlineTypes: {
71
- enum: [...TypeImportInlinePosition.keys()],
66
+ enum: [...TypeImportInlinePosition.keys(),],
72
67
  },
73
68
  },
74
69
  },
75
70
  ],
76
71
  },
77
72
  create(context) {
78
- const configuration = { ...defaultConfiguration, ...context.options[0] };
73
+ const configuration = { ...defaultConfiguration, ...context.options[0], };
79
74
  const source = context.sourceCode;
80
75
  const partition = (result, node, index, from) => {
81
- if (index > 0 && (0, ast_js_1.linesBetween)(from[index - 1], node) > 0) {
76
+ if (index > 0 && linesBetween(from[index - 1], node) > 0) {
82
77
  result.push([]);
83
78
  }
84
79
  result.at(-1)?.push(node);
85
80
  return result;
86
81
  };
87
82
  const sortModules = (group) => {
88
- const sorted = (0, sort_js_1.sortByPath)(group, ['source', 'value'], configuration);
83
+ const sorted = sortByPath(group, ["source", "value",], configuration);
89
84
  if (configuration.typesInGroup !== TypeImportGroupPosition.Ignore.key) {
90
85
  sorted.sort((a, b) => {
91
- const aIsType = (0, ast_js_1.isTypeImportOrExport)(a);
92
- const bIsType = (0, ast_js_1.isTypeImportOrExport)(b);
86
+ const aIsType = isTypeImportOrExport(a);
87
+ const bIsType = isTypeImportOrExport(b);
93
88
  if (aIsType === bIsType) {
94
89
  return 0;
95
90
  }
96
- // eslint-disable-next-line @typescript-eslint/switch-exhaustiveness-check
97
91
  switch (configuration.typesInGroup) {
98
92
  case TypeImportGroupPosition.Top.key:
99
93
  return aIsType ? -1 : 1;
@@ -101,7 +95,6 @@ exports.rule = {
101
95
  return aIsType ? 1 : -1;
102
96
  }
103
97
  if (a.source.value === b.source.value) {
104
- // eslint-disable-next-line @typescript-eslint/switch-exhaustiveness-check
105
98
  switch (configuration.typesInGroup) {
106
99
  case TypeImportGroupPosition.AboveValue.key:
107
100
  return aIsType ? -1 : 1;
@@ -113,40 +106,39 @@ exports.rule = {
113
106
  });
114
107
  }
115
108
  if (sorted.some((node, i) => node !== group[i])) {
116
- (0, rule_js_1.fixRange)(context, {
117
- range: (0, ast_js_1.extrema)(group),
118
- message: 'Expected modules in group to be sorted',
119
- code: sorted.map((node) => source.getText(node)).join('\n'),
109
+ fixRange(context, {
110
+ range: extrema(group),
111
+ message: "Expected modules in group to be sorted",
112
+ code: sorted.map((node) => source.getText(node)).join("\n"),
120
113
  });
121
114
  }
122
115
  };
123
116
  const specifiersText = (nodes) => {
124
117
  if (nodes[0]?.loc?.start.line !== nodes[1]?.loc?.start.line) {
125
- const indent = source.lines[nodes[0].loc.start.line - 1]?.match(/^\s+/g)?.[0] ?? '';
126
- return nodes.map((node, index) => `${index > 0 ? indent : ''}${source.getText(node)}`).join(',\n');
118
+ const indent = source.lines[nodes[0].loc.start.line - 1]?.match(/^\s+/g)?.[0] ?? "";
119
+ return nodes.map((node, index) => `${index > 0 ? indent : ""}${source.getText(node)}`).join(",\n");
127
120
  }
128
- return nodes.map((node) => source.getText(node)).join(', ');
121
+ return nodes.map((node) => source.getText(node)).join(", ");
129
122
  };
130
123
  const sortSpecifiers = (specifiers) => {
131
124
  if (!specifiers.length) {
132
125
  return;
133
126
  }
134
127
  const sorted = (() => {
135
- if (specifiers[0]?.type === 'ImportSpecifier') {
136
- const from = configuration.specifier === 'source' ? 'imported' : 'local';
137
- return (0, sort_js_1.sortByPath)(specifiers, [from, 'name'], configuration);
128
+ if (specifiers[0]?.type === "ImportSpecifier") {
129
+ const from = configuration.specifier === "source" ? "imported" : "local";
130
+ return sortByPath(specifiers, [from, "name",], configuration);
138
131
  }
139
- const from = configuration.specifier === 'source' ? 'local' : 'exported';
140
- return (0, sort_js_1.sortByPath)(specifiers, [from, 'name'], configuration);
132
+ const from = configuration.specifier === "source" ? "local" : "exported";
133
+ return sortByPath(specifiers, [from, "name",], configuration);
141
134
  })();
142
135
  if (configuration.inlineTypes !== TypeImportInlinePosition.Ignore.key) {
143
136
  sorted.sort((a, b) => {
144
- const aIsType = (0, ast_js_1.isTypeImportOrExport)(a);
145
- const bIsType = (0, ast_js_1.isTypeImportOrExport)(b);
137
+ const aIsType = isTypeImportOrExport(a);
138
+ const bIsType = isTypeImportOrExport(b);
146
139
  if (aIsType === bIsType) {
147
140
  return 0;
148
141
  }
149
- // eslint-disable-next-line @typescript-eslint/switch-exhaustiveness-check
150
142
  switch (configuration.inlineTypes) {
151
143
  case TypeImportInlinePosition.Start.key:
152
144
  return aIsType ? -1 : 1;
@@ -157,24 +149,24 @@ exports.rule = {
157
149
  });
158
150
  }
159
151
  if (sorted.some((node, i) => node !== specifiers[i])) {
160
- (0, rule_js_1.fixRange)(context, {
161
- range: (0, ast_js_1.extrema)(specifiers),
162
- message: 'Expected specifiers to be sorted',
152
+ fixRange(context, {
153
+ range: extrema(specifiers),
154
+ message: "Expected specifiers to be sorted",
163
155
  code: specifiersText(sorted),
164
156
  });
165
157
  }
166
158
  };
167
- (0, ast_js_1.importModules)(source)
168
- .reduce(partition, [[]])
159
+ importModules(source)
160
+ .reduce(partition, [[],])
169
161
  .forEach((group) => {
170
162
  sortModules(group);
171
163
  group.forEach((node) => {
172
- sortSpecifiers(node.specifiers.filter(($) => $.type === 'ImportSpecifier'));
164
+ sortSpecifiers(node.specifiers.filter(($) => $.type === "ImportSpecifier"));
173
165
  });
174
166
  });
175
167
  if (configuration.sortExports) {
176
- (0, ast_js_1.exportModules)(source)
177
- .reduce(partition, [[]])
168
+ exportModules(source)
169
+ .reduce(partition, [[],])
178
170
  .forEach((group) => {
179
171
  sortModules(group);
180
172
  group.forEach((node) => sortSpecifiers(node.specifiers ?? []));
@@ -1 +1 @@
1
- {"version":3,"file":"sort-imports.js","sourceRoot":"","sources":["../../src/rules/sort-imports.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sort-imports.js","sourceRoot":"","sources":["../../src/rules/sort-imports.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,11 @@
1
- import type { TSESTree } from '@typescript-eslint/types';
2
- import type { AST, SourceCode } from 'eslint';
3
- import type estree from 'estree';
4
- export type ImportModuleDeclaration = estree.ImportDeclaration & Partial<Pick<TSESTree.ImportDeclaration, 'importKind'>>;
5
- export type ExportModuleDeclaration = estree.ExportAllDeclaration & Partial<Pick<estree.ExportNamedDeclaration, 'specifiers'> & Pick<TSESTree.ExportAllDeclaration, 'exportKind'>>;
1
+ import type { TSESTree } from "@typescript-eslint/types";
2
+ import type { AST, SourceCode } from "eslint";
3
+ import type estree from "estree";
4
+ export type ImportModuleDeclaration = estree.ImportDeclaration & Partial<Pick<TSESTree.ImportDeclaration, "importKind">>;
5
+ export type ExportModuleDeclaration = estree.ExportAllDeclaration & Partial<Pick<estree.ExportNamedDeclaration, "specifiers"> & Pick<TSESTree.ExportAllDeclaration, "exportKind">>;
6
6
  export type ModuleDeclaration = ImportModuleDeclaration | ExportModuleDeclaration;
7
- export type ImportSpecifier = estree.ImportSpecifier & Partial<Pick<TSESTree.ImportSpecifier, 'importKind'>>;
8
- export type ExportSpecifier = estree.ExportSpecifier & Partial<Pick<TSESTree.ExportSpecifier, 'exportKind'>>;
7
+ export type ImportSpecifier = estree.ImportSpecifier & Partial<Pick<TSESTree.ImportSpecifier, "importKind">>;
8
+ export type ExportSpecifier = estree.ExportSpecifier & Partial<Pick<TSESTree.ExportSpecifier, "exportKind">>;
9
9
  export declare function importModules(source: SourceCode): ImportModuleDeclaration[];
10
10
  export declare function exportModules(source: SourceCode): ExportModuleDeclaration[];
11
11
  export declare function isTypeImportOrExport(node: ModuleDeclaration | ImportSpecifier | ExportSpecifier): boolean;
@@ -13,9 +13,9 @@ export declare function extrema<T extends estree.Node>(source: readonly T[]): [T
13
13
  export declare function linesBetween(a: estree.Node | undefined, b: estree.Node | undefined): number;
14
14
  export declare function isComment(value: AST.Token | estree.Comment | estree.Node): value is estree.Comment;
15
15
  export declare function assertLoc(value: {
16
- loc?: AST.SourceLocation | null;
16
+ loc?: AST.SourceLocation | null | undefined;
17
17
  } | undefined): AST.SourceLocation;
18
18
  export declare function assertRange(value: {
19
- range?: AST.Range | null;
19
+ range?: AST.Range | null | undefined;
20
20
  } | undefined): AST.Range;
21
21
  //# sourceMappingURL=ast.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ast.d.ts","sourceRoot":"","sources":["../../src/tools/ast.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,KAAK,EAAE,GAAG,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,KAAK,MAAM,MAAM,QAAQ,CAAC;AAEjC,MAAM,MAAM,uBAAuB,GAAG,MAAM,CAAC,iBAAiB,GAC7D,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,iBAAiB,EAAE,YAAY,CAAC,CAAC,CAAC;AAGzD,MAAM,MAAM,uBAAuB,GAAG,MAAM,CAAC,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,sBAAsB,EAAE,YAAY,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,oBAAoB,EAAE,YAAY,CAAC,CAAC,CAAC;AAEnL,MAAM,MAAM,iBAAiB,GAAG,uBAAuB,GAAG,uBAAuB,CAAC;AAElF,MAAM,MAAM,eAAe,GAAG,MAAM,CAAC,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,eAAe,EAAE,YAAY,CAAC,CAAC,CAAC;AAC7G,MAAM,MAAM,eAAe,GAAG,MAAM,CAAC,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,eAAe,EAAE,YAAY,CAAC,CAAC,CAAC;AAE7G,wBAAgB,aAAa,CAAC,MAAM,EAAE,UAAU,GAAG,uBAAuB,EAAE,CAE3E;AAED,wBAAgB,aAAa,CAAC,MAAM,EAAE,UAAU,GAAG,uBAAuB,EAAE,CAK3E;AAED,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,iBAAiB,GAAG,eAAe,GAAG,eAAe,GAAG,OAAO,CAEzG;AAED,wBAAgB,OAAO,CAAC,CAAC,SAAS,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAQ3E;AAED,wBAAgB,YAAY,CAAC,CAAC,EAAE,MAAM,CAAC,IAAI,GAAG,SAAS,EAAE,CAAC,EAAE,MAAM,CAAC,IAAI,GAAG,SAAS,GAAG,MAAM,CAM3F;AAED,wBAAgB,SAAS,CAAC,KAAK,EAAE,GAAG,CAAC,KAAK,GAAG,MAAM,CAAC,OAAO,GAAG,MAAM,CAAC,IAAI,GAAG,KAAK,IAAI,MAAM,CAAC,OAAO,CAElG;AAED,wBAAgB,SAAS,CAAC,KAAK,EAAE;IAAE,GAAG,CAAC,EAAE,GAAG,CAAC,cAAc,GAAG,IAAI,CAAA;CAAE,GAAG,SAAS,GAAG,GAAG,CAAC,cAAc,CAMpG;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE;IAAE,KAAK,CAAC,EAAE,GAAG,CAAC,KAAK,GAAG,IAAI,CAAA;CAAE,GAAG,SAAS,GAAG,GAAG,CAAC,KAAK,CAMtF"}
1
+ {"version":3,"file":"ast.d.ts","sourceRoot":"","sources":["../../src/tools/ast.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,KAAK,EAAE,GAAG,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,KAAK,MAAM,MAAM,QAAQ,CAAC;AAEjC,MAAM,MAAM,uBAAuB,GAAG,MAAM,CAAC,iBAAiB,GAC7D,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,iBAAiB,EAAE,YAAY,CAAC,CAAC,CAAC;AAGzD,MAAM,MAAM,uBAAuB,GAAG,MAAM,CAAC,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,sBAAsB,EAAE,YAAY,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,oBAAoB,EAAE,YAAY,CAAC,CAAC,CAAC;AAEnL,MAAM,MAAM,iBAAiB,GAAG,uBAAuB,GAAG,uBAAuB,CAAC;AAElF,MAAM,MAAM,eAAe,GAAG,MAAM,CAAC,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,eAAe,EAAE,YAAY,CAAC,CAAC,CAAC;AAC7G,MAAM,MAAM,eAAe,GAAG,MAAM,CAAC,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,eAAe,EAAE,YAAY,CAAC,CAAC,CAAC;AAE7G,wBAAgB,aAAa,CAAC,MAAM,EAAE,UAAU,GAAG,uBAAuB,EAAE,CAE3E;AAED,wBAAgB,aAAa,CAAC,MAAM,EAAE,UAAU,GAAG,uBAAuB,EAAE,CAK3E;AAED,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,iBAAiB,GAAG,eAAe,GAAG,eAAe,GAAG,OAAO,CAEzG;AAED,wBAAgB,OAAO,CAAC,CAAC,SAAS,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAQ3E;AAED,wBAAgB,YAAY,CAAC,CAAC,EAAE,MAAM,CAAC,IAAI,GAAG,SAAS,EAAE,CAAC,EAAE,MAAM,CAAC,IAAI,GAAG,SAAS,GAAG,MAAM,CAM3F;AAED,wBAAgB,SAAS,CAAC,KAAK,EAAE,GAAG,CAAC,KAAK,GAAG,MAAM,CAAC,OAAO,GAAG,MAAM,CAAC,IAAI,GAAG,KAAK,IAAI,MAAM,CAAC,OAAO,CAElG;AAED,wBAAgB,SAAS,CAAC,KAAK,EAAE;IAAE,GAAG,CAAC,EAAE,GAAG,CAAC,cAAc,GAAG,IAAI,GAAG,SAAS,CAAC;CAAE,GAAG,SAAS,GAAG,GAAG,CAAC,cAAc,CAMjH;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE;IAAE,KAAK,CAAC,EAAE,GAAG,CAAC,KAAK,GAAG,IAAI,GAAG,SAAS,CAAC;CAAE,GAAG,SAAS,GAAG,GAAG,CAAC,KAAK,CAMnG"}
package/dist/tools/ast.js CHANGED
@@ -1,49 +1,38 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.assertRange = exports.assertLoc = exports.isComment = exports.linesBetween = exports.extrema = exports.isTypeImportOrExport = exports.exportModules = exports.importModules = void 0;
4
- function importModules(source) {
5
- return source.ast.body.filter((node) => node.type === 'ImportDeclaration');
6
- }
7
- exports.importModules = importModules;
8
- function exportModules(source) {
9
- return source.ast.body.filter((node) => (node.type === 'ExportNamedDeclaration' || node.type === 'ExportAllDeclaration') && Boolean(node.source));
10
- }
11
- exports.exportModules = exportModules;
12
- function isTypeImportOrExport(node) {
13
- return ('importKind' in node && node.importKind === 'type') || ('exportKind' in node && node.exportKind === 'type');
14
- }
15
- exports.isTypeImportOrExport = isTypeImportOrExport;
16
- function extrema(source) {
17
- const [a, b] = [source.at(0), source.at(-1)];
1
+ export function importModules(source) {
2
+ return source.ast.body.filter((node) => node.type === "ImportDeclaration");
3
+ }
4
+ export function exportModules(source) {
5
+ return source.ast.body.filter((node) => (node.type === "ExportNamedDeclaration" || node.type === "ExportAllDeclaration") && Boolean(node.source));
6
+ }
7
+ export function isTypeImportOrExport(node) {
8
+ return ("importKind" in node && node.importKind === "type") || ("exportKind" in node && node.exportKind === "type");
9
+ }
10
+ export function extrema(source) {
11
+ const [a, b,] = [source.at(0), source.at(-1),];
18
12
  if (!a || !b) {
19
13
  throw new Error(`extrema: invalid input`);
20
14
  }
21
- return [a, b];
15
+ return [a, b,];
22
16
  }
23
- exports.extrema = extrema;
24
- function linesBetween(a, b) {
17
+ export function linesBetween(a, b) {
25
18
  if (!a?.loc || !b?.loc) {
26
19
  throw new Error(`error: AST was generated without node location information`);
27
20
  }
28
21
  return b.loc.start.line - a.loc.end.line - 1;
29
22
  }
30
- exports.linesBetween = linesBetween;
31
- function isComment(value) {
32
- return value.type === 'Block' || value.type === 'Line';
23
+ export function isComment(value) {
24
+ return value.type === "Block" || value.type === "Line";
33
25
  }
34
- exports.isComment = isComment;
35
- function assertLoc(value) {
26
+ export function assertLoc(value) {
36
27
  if (value?.loc) {
37
28
  return value.loc;
38
29
  }
39
30
  throw new Error(`error: AST was generated without node location information`);
40
31
  }
41
- exports.assertLoc = assertLoc;
42
- function assertRange(value) {
32
+ export function assertRange(value) {
43
33
  if (value?.range) {
44
34
  return value.range;
45
35
  }
46
36
  throw new Error();
47
37
  }
48
- exports.assertRange = assertRange;
49
38
  //# sourceMappingURL=ast.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ast.js","sourceRoot":"","sources":["../../src/tools/ast.ts"],"names":[],"mappings":";;;AAeA,SAAgB,aAAa,CAAC,MAAkB;IAC/C,OAAO,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,EAAmC,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,mBAAmB,CAAC,CAAC;AAC7G,CAAC;AAFD,sCAEC;AAED,SAAgB,aAAa,CAAC,MAAkB;IAC/C,OAAO,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAC5B,CAAC,IAAI,EAAmC,EAAE,CACzC,CAAC,IAAI,CAAC,IAAI,KAAK,wBAAwB,IAAI,IAAI,CAAC,IAAI,KAAK,sBAAsB,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CACzG,CAAC;AACH,CAAC;AALD,sCAKC;AAED,SAAgB,oBAAoB,CAAC,IAA2D;IAC/F,OAAO,CAAC,YAAY,IAAI,IAAI,IAAI,IAAI,CAAC,UAAU,KAAK,MAAM,CAAC,IAAI,CAAC,YAAY,IAAI,IAAI,IAAI,IAAI,CAAC,UAAU,KAAK,MAAM,CAAC,CAAC;AACrH,CAAC;AAFD,oDAEC;AAED,SAAgB,OAAO,CAAwB,MAAoB;IAClE,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAE7C,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;QACd,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;IAC3C,CAAC;IAED,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AACf,CAAC;AARD,0BAQC;AAED,SAAgB,YAAY,CAAC,CAA0B,EAAE,CAA0B;IAClF,IAAI,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC;QACxB,MAAM,IAAI,KAAK,CAAC,4DAA4D,CAAC,CAAC;IAC/E,CAAC;IAED,OAAO,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC;AAC9C,CAAC;AAND,oCAMC;AAED,SAAgB,SAAS,CAAC,KAA+C;IACxE,OAAO,KAAK,CAAC,IAAI,KAAK,OAAO,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,CAAC;AACxD,CAAC;AAFD,8BAEC;AAED,SAAgB,SAAS,CAAC,KAAsD;IAC/E,IAAI,KAAK,EAAE,GAAG,EAAE,CAAC;QAChB,OAAO,KAAK,CAAC,GAAG,CAAC;IAClB,CAAC;IAED,MAAM,IAAI,KAAK,CAAC,4DAA4D,CAAC,CAAC;AAC/E,CAAC;AAND,8BAMC;AAED,SAAgB,WAAW,CAAC,KAA+C;IAC1E,IAAI,KAAK,EAAE,KAAK,EAAE,CAAC;QAClB,OAAO,KAAK,CAAC,KAAK,CAAC;IACpB,CAAC;IAED,MAAM,IAAI,KAAK,EAAE,CAAC;AACnB,CAAC;AAND,kCAMC"}
1
+ {"version":3,"file":"ast.js","sourceRoot":"","sources":["../../src/tools/ast.ts"],"names":[],"mappings":"AAeA,MAAM,UAAU,aAAa,CAAC,MAAkB;IAC/C,OAAO,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,EAAmC,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,mBAAmB,CAAC,CAAC;AAC7G,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,MAAkB;IAC/C,OAAO,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAC5B,CAAC,IAAI,EAAmC,EAAE,CACzC,CAAC,IAAI,CAAC,IAAI,KAAK,wBAAwB,IAAI,IAAI,CAAC,IAAI,KAAK,sBAAsB,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CACzG,CAAC;AACH,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,IAA2D;IAC/F,OAAO,CAAC,YAAY,IAAI,IAAI,IAAI,IAAI,CAAC,UAAU,KAAK,MAAM,CAAC,IAAI,CAAC,YAAY,IAAI,IAAI,IAAI,IAAI,CAAC,UAAU,KAAK,MAAM,CAAC,CAAC;AACrH,CAAC;AAED,MAAM,UAAU,OAAO,CAAwB,MAAoB;IAClE,MAAM,CAAE,CAAC,EAAE,CAAC,EAAG,GAAG,CAAE,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAG,CAAC;IAEnD,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;QACd,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;IAC3C,CAAC;IAED,OAAO,CAAE,CAAC,EAAE,CAAC,EAAG,CAAC;AAClB,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,CAA0B,EAAE,CAA0B;IAClF,IAAI,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC;QACxB,MAAM,IAAI,KAAK,CAAC,4DAA4D,CAAC,CAAC;IAC/E,CAAC;IAED,OAAO,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC;AAC9C,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,KAA+C;IACxE,OAAO,KAAK,CAAC,IAAI,KAAK,OAAO,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,CAAC;AACxD,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,KAAmE;IAC5F,IAAI,KAAK,EAAE,GAAG,EAAE,CAAC;QAChB,OAAO,KAAK,CAAC,GAAG,CAAC;IAClB,CAAC;IAED,MAAM,IAAI,KAAK,CAAC,4DAA4D,CAAC,CAAC;AAC/E,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,KAA4D;IACvF,IAAI,KAAK,EAAE,KAAK,EAAE,CAAC;QAClB,OAAO,KAAK,CAAC,KAAK,CAAC;IACpB,CAAC;IAED,MAAM,IAAI,KAAK,EAAE,CAAC;AACnB,CAAC"}
@@ -1,5 +1,5 @@
1
- import type { Rule } from 'eslint';
2
- import type { Node } from 'estree';
1
+ import type { Rule } from "eslint";
2
+ import type { Node } from "estree";
3
3
  export interface RuleContext<Configuration extends unknown[]> extends Rule.RuleContext {
4
4
  options: Configuration;
5
5
  }
@@ -1,8 +1,5 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.fixRange = void 0;
4
- function fixRange(context, data) {
5
- const [first, last] = data.range;
1
+ export function fixRange(context, data) {
2
+ const [first, last,] = data.range;
6
3
  context.report({
7
4
  node: last,
8
5
  message: data.message,
@@ -10,9 +7,8 @@ function fixRange(context, data) {
10
7
  if (!first.range || !last.range) {
11
8
  return null;
12
9
  }
13
- return fixer.replaceTextRange([first.range[0], last.range[1]], data.code);
10
+ return fixer.replaceTextRange([first.range[0], last.range[1],], data.code);
14
11
  },
15
12
  });
16
13
  }
17
- exports.fixRange = fixRange;
18
14
  //# sourceMappingURL=rule.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"rule.js","sourceRoot":"","sources":["../../src/tools/rule.ts"],"names":[],"mappings":";;;AAWA,SAAgB,QAAQ,CACvB,OAAyB,EACzB,IAIC;IAED,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC;IAEjC,OAAO,CAAC,MAAM,CAAC;QACd,IAAI,EAAE,IAAI;QACV,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,GAAG,CAAC,KAAK;YACR,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;gBACjC,OAAO,IAAI,CAAC;YACb,CAAC;YAED,OAAO,KAAK,CAAC,gBAAgB,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;QAC3E,CAAC;KACD,CAAC,CAAC;AACJ,CAAC;AArBD,4BAqBC"}
1
+ {"version":3,"file":"rule.js","sourceRoot":"","sources":["../../src/tools/rule.ts"],"names":[],"mappings":"AAWA,MAAM,UAAU,QAAQ,CACvB,OAAyB,EACzB,IAIC;IAED,MAAM,CAAE,KAAK,EAAE,IAAI,EAAG,GAAG,IAAI,CAAC,KAAK,CAAC;IAEpC,OAAO,CAAC,MAAM,CAAC;QACd,IAAI,EAAE,IAAI;QACV,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,GAAG,CAAC,KAAK;YACR,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;gBACjC,OAAO,IAAI,CAAC;YACb,CAAC;YAED,OAAO,KAAK,CAAC,gBAAgB,CAAC,CAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAG,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;QAC9E,CAAC;KACD,CAAC,CAAC;AACJ,CAAC"}
@@ -1,4 +1,4 @@
1
- export type SortOptions = Pick<Intl.CollatorOptions, 'sensitivity' | 'ignorePunctuation' | 'numeric' | 'caseFirst'> & {
1
+ export type SortOptions = Pick<Intl.CollatorOptions, "sensitivity" | "ignorePunctuation" | "numeric" | "caseFirst"> & {
2
2
  locales?: string[];
3
3
  caseGroups?: boolean;
4
4
  };
@@ -1 +1 @@
1
- {"version":3,"file":"sort.d.ts","sourceRoot":"","sources":["../../src/tools/sort.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,aAAa,GAAG,mBAAmB,GAAG,SAAS,GAAG,WAAW,CAAC,GAAG;IACrH,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,UAAU,CAAC,EAAE,OAAO,CAAC;CACrB,CAAC;AAoDF,wBAAgB,UAAU,CAAC,CAAC,SAAS,MAAM,EAC1C,OAAO,EAAE,CAAC,EAAE,EACZ,IAAI,EAAE,aAAa,CAAC,MAAM,GAAG,MAAM,CAAC,EACpC,OAAO,CAAC,EAAE,WAAW,GACnB,CAAC,EAAE,CAwCL"}
1
+ {"version":3,"file":"sort.d.ts","sourceRoot":"","sources":["../../src/tools/sort.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,aAAa,GAAG,mBAAmB,GAAG,SAAS,GAAG,WAAW,CAAC,GAAG;IACrH,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,UAAU,CAAC,EAAE,OAAO,CAAC;CACrB,CAAC;AAmDF,wBAAgB,UAAU,CAAC,CAAC,SAAS,MAAM,EAC1C,OAAO,EAAE,CAAC,EAAE,EACZ,IAAI,EAAE,aAAa,CAAC,MAAM,GAAG,MAAM,CAAC,EACpC,OAAO,CAAC,EAAE,WAAW,GACnB,CAAC,EAAE,CAwCL"}
@@ -1,8 +1,5 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.sortByPath = void 0;
4
1
  function isIndexable(value) {
5
- return typeof value === 'object' && value !== null;
2
+ return typeof value === "object" && value !== null;
6
3
  }
7
4
  function readPath(from, path) {
8
5
  if (!isIndexable(from)) {
@@ -19,17 +16,16 @@ function readPath(from, path) {
19
16
  }
20
17
  function sort(options) {
21
18
  return (a, b) => {
22
- if (typeof a.sortValue === 'number' && typeof b.sortValue === 'number') {
19
+ if (typeof a.sortValue === "number" && typeof b.sortValue === "number") {
23
20
  return a.sortValue - b.sortValue;
24
21
  }
25
- if (typeof a.sortValue === 'string' && typeof b.sortValue === 'string') {
22
+ if (typeof a.sortValue === "string" && typeof b.sortValue === "string") {
26
23
  return a.sortValue.localeCompare(b.sortValue, options?.locales, options);
27
24
  }
28
25
  return 0;
29
26
  };
30
27
  }
31
- // eslint-disable-next-line @typescript-eslint/ban-types
32
- function sortByPath(sources, path, options) {
28
+ export function sortByPath(sources, path, options) {
33
29
  const caseGroups = sources.reduce((groups, source) => {
34
30
  const sortValue = readPath(source, path);
35
31
  const sortable = {
@@ -37,7 +33,7 @@ function sortByPath(sources, path, options) {
37
33
  sortValue,
38
34
  };
39
35
  let target = groups.lower;
40
- if (options?.caseGroups && typeof sortValue === 'string' && sortValue.length) {
36
+ if (options?.caseGroups && typeof sortValue === "string" && sortValue.length) {
41
37
  if (/^[@$_]/u.test(sortValue)) {
42
38
  target = groups.punctuation;
43
39
  }
@@ -56,10 +52,9 @@ function sortByPath(sources, path, options) {
56
52
  caseGroups.upper.sort(sort(options));
57
53
  caseGroups.lower.sort(sort(options));
58
54
  return [
59
- ...caseGroups.punctuation.map(({ source }) => source),
60
- ...(options?.caseFirst === 'upper' ? caseGroups.upper : caseGroups.lower).map(({ source }) => source),
61
- ...(options?.caseFirst === 'upper' ? caseGroups.lower : caseGroups.upper).map(({ source }) => source),
55
+ ...caseGroups.punctuation.map(({ source, }) => source),
56
+ ...(options?.caseFirst === "upper" ? caseGroups.upper : caseGroups.lower).map(({ source, }) => source),
57
+ ...(options?.caseFirst === "upper" ? caseGroups.lower : caseGroups.upper).map(({ source, }) => source),
62
58
  ];
63
59
  }
64
- exports.sortByPath = sortByPath;
65
60
  //# sourceMappingURL=sort.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sort.js","sourceRoot":"","sources":["../../src/tools/sort.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sort.js","sourceRoot":"","sources":["../../src/tools/sort.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@shigen/eslint-plugin",
3
- "version": "0.13.0",
3
+ "version": "0.14.0",
4
4
  "description": "General purpose plugin for ESLint",
5
5
  "keywords": [
6
6
  "eslint",
@@ -19,8 +19,10 @@
19
19
  "readme.md",
20
20
  "dist/**/*"
21
21
  ],
22
- "main": "dist/index.js",
23
- "types": "dist/index.d.ts",
22
+ "type": "module",
23
+ "exports": {
24
+ ".": "./dist/index.js"
25
+ },
24
26
  "wireit": {
25
27
  "prepublishOnly": {
26
28
  "dependencies": [
@@ -29,21 +31,21 @@
29
31
  ]
30
32
  },
31
33
  "test": {
32
- "command": "tsx --tsconfig tsconfig.test.json --test-reporter spec --test 'src/**/*.test.ts'",
34
+ "command": "node --test-reporter spec --test 'src/**/*.test.ts'",
33
35
  "files": [
34
36
  "src/**/*.ts"
35
37
  ],
36
38
  "output": []
37
39
  },
38
40
  "build": {
39
- "command": "tsc --build tsconfig.build.json",
41
+ "command": "tsc --build tsconfig.json",
40
42
  "clean": "if-file-deleted",
41
43
  "files": [
42
44
  "src/**/*.ts",
43
45
  "!src/**/*.test.ts",
44
46
  "!src/tools/test.ts",
45
47
  "../../tsconfig.base.json",
46
- "tsconfig.build.json"
48
+ "tsconfig.json"
47
49
  ],
48
50
  "output": [
49
51
  "dist/**",
@@ -56,22 +58,23 @@
56
58
  },
57
59
  "dependencies": {
58
60
  "@shigen/enum": "~0.5.0",
59
- "minimatch": "^10.0.1"
61
+ "minimatch": "^10.0.3"
60
62
  },
61
63
  "devDependencies": {
62
64
  "@types/eslint": "9.6.1",
63
- "@types/estree": "1.0.6",
64
- "typescript-eslint": "8.26.1",
65
+ "@types/estree": "1.0.8",
66
+ "@typescript-eslint/types": "8.42.0",
67
+ "typescript-eslint": "8.42.0",
65
68
  "ajv": "8.17.1",
66
- "eslint": "9.22.0",
67
- "dedent": "1.5.3"
69
+ "eslint": "9.35.0",
70
+ "dedent": "1.7.0"
68
71
  },
69
72
  "peerDependencies": {
70
- "@typescript-eslint/parser": "^8.0.0",
73
+ "typescript-eslint": "^8.0.0",
71
74
  "eslint": "^9.0.0"
72
75
  },
73
76
  "peerDependenciesMeta": {
74
- "@typescript-eslint/parser": {
77
+ "typescript-eslint": {
75
78
  "optional": true
76
79
  }
77
80
  },