@alexlit/lint-kit 117.3.1 → 117.4.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.
Files changed (159) hide show
  1. package/package.json +1 -1
  2. package/packages/config-eslint/package.json +5 -9
  3. package/packages/config-eslint/plugins/no-await-in-promise.js +1 -1
  4. package/packages/config-eslint/utils/create-config.js +3 -3
  5. package/scripts/.config.sh +1 -1
  6. package/packages/config-eslint/node_modules/@eslint/eslintrc/LICENSE +0 -19
  7. package/packages/config-eslint/node_modules/@eslint/eslintrc/README.md +0 -126
  8. package/packages/config-eslint/node_modules/@eslint/eslintrc/conf/config-schema.js +0 -79
  9. package/packages/config-eslint/node_modules/@eslint/eslintrc/conf/environments.js +0 -215
  10. package/packages/config-eslint/node_modules/@eslint/eslintrc/dist/eslintrc-universal.cjs +0 -1143
  11. package/packages/config-eslint/node_modules/@eslint/eslintrc/dist/eslintrc-universal.cjs.map +0 -1
  12. package/packages/config-eslint/node_modules/@eslint/eslintrc/dist/eslintrc.cjs +0 -4371
  13. package/packages/config-eslint/node_modules/@eslint/eslintrc/dist/eslintrc.cjs.map +0 -1
  14. package/packages/config-eslint/node_modules/@eslint/eslintrc/lib/cascading-config-array-factory.js +0 -532
  15. package/packages/config-eslint/node_modules/@eslint/eslintrc/lib/config-array/config-array.js +0 -510
  16. package/packages/config-eslint/node_modules/@eslint/eslintrc/lib/config-array/config-dependency.js +0 -124
  17. package/packages/config-eslint/node_modules/@eslint/eslintrc/lib/config-array/extracted-config.js +0 -145
  18. package/packages/config-eslint/node_modules/@eslint/eslintrc/lib/config-array/ignore-pattern.js +0 -238
  19. package/packages/config-eslint/node_modules/@eslint/eslintrc/lib/config-array/index.js +0 -19
  20. package/packages/config-eslint/node_modules/@eslint/eslintrc/lib/config-array/override-tester.js +0 -225
  21. package/packages/config-eslint/node_modules/@eslint/eslintrc/lib/config-array-factory.js +0 -1155
  22. package/packages/config-eslint/node_modules/@eslint/eslintrc/lib/flat-compat.js +0 -318
  23. package/packages/config-eslint/node_modules/@eslint/eslintrc/lib/index-universal.js +0 -29
  24. package/packages/config-eslint/node_modules/@eslint/eslintrc/lib/index.js +0 -58
  25. package/packages/config-eslint/node_modules/@eslint/eslintrc/lib/shared/ajv.js +0 -191
  26. package/packages/config-eslint/node_modules/@eslint/eslintrc/lib/shared/config-ops.js +0 -135
  27. package/packages/config-eslint/node_modules/@eslint/eslintrc/lib/shared/config-validator.js +0 -370
  28. package/packages/config-eslint/node_modules/@eslint/eslintrc/lib/shared/deprecation-warnings.js +0 -63
  29. package/packages/config-eslint/node_modules/@eslint/eslintrc/lib/shared/naming.js +0 -96
  30. package/packages/config-eslint/node_modules/@eslint/eslintrc/lib/shared/relative-module-resolver.js +0 -42
  31. package/packages/config-eslint/node_modules/@eslint/eslintrc/lib/shared/types.js +0 -149
  32. package/packages/config-eslint/node_modules/@eslint/eslintrc/package.json +0 -82
  33. package/packages/config-eslint/node_modules/@eslint/eslintrc/universal.js +0 -9
  34. package/packages/config-eslint/node_modules/ajv/.tonic_example.js +0 -20
  35. package/packages/config-eslint/node_modules/ajv/LICENSE +0 -22
  36. package/packages/config-eslint/node_modules/ajv/README.md +0 -1497
  37. package/packages/config-eslint/node_modules/ajv/dist/ajv.bundle.js +0 -7189
  38. package/packages/config-eslint/node_modules/ajv/dist/ajv.min.js +0 -3
  39. package/packages/config-eslint/node_modules/ajv/dist/ajv.min.js.map +0 -1
  40. package/packages/config-eslint/node_modules/ajv/lib/ajv.d.ts +0 -397
  41. package/packages/config-eslint/node_modules/ajv/lib/ajv.js +0 -506
  42. package/packages/config-eslint/node_modules/ajv/lib/cache.js +0 -26
  43. package/packages/config-eslint/node_modules/ajv/lib/compile/async.js +0 -90
  44. package/packages/config-eslint/node_modules/ajv/lib/compile/equal.js +0 -5
  45. package/packages/config-eslint/node_modules/ajv/lib/compile/error_classes.js +0 -34
  46. package/packages/config-eslint/node_modules/ajv/lib/compile/formats.js +0 -142
  47. package/packages/config-eslint/node_modules/ajv/lib/compile/index.js +0 -387
  48. package/packages/config-eslint/node_modules/ajv/lib/compile/resolve.js +0 -270
  49. package/packages/config-eslint/node_modules/ajv/lib/compile/rules.js +0 -66
  50. package/packages/config-eslint/node_modules/ajv/lib/compile/schema_obj.js +0 -9
  51. package/packages/config-eslint/node_modules/ajv/lib/compile/ucs2length.js +0 -20
  52. package/packages/config-eslint/node_modules/ajv/lib/compile/util.js +0 -239
  53. package/packages/config-eslint/node_modules/ajv/lib/data.js +0 -49
  54. package/packages/config-eslint/node_modules/ajv/lib/definition_schema.js +0 -37
  55. package/packages/config-eslint/node_modules/ajv/lib/dot/_limit.jst +0 -113
  56. package/packages/config-eslint/node_modules/ajv/lib/dot/_limitItems.jst +0 -12
  57. package/packages/config-eslint/node_modules/ajv/lib/dot/_limitLength.jst +0 -12
  58. package/packages/config-eslint/node_modules/ajv/lib/dot/_limitProperties.jst +0 -12
  59. package/packages/config-eslint/node_modules/ajv/lib/dot/allOf.jst +0 -32
  60. package/packages/config-eslint/node_modules/ajv/lib/dot/anyOf.jst +0 -46
  61. package/packages/config-eslint/node_modules/ajv/lib/dot/coerce.def +0 -51
  62. package/packages/config-eslint/node_modules/ajv/lib/dot/comment.jst +0 -9
  63. package/packages/config-eslint/node_modules/ajv/lib/dot/const.jst +0 -11
  64. package/packages/config-eslint/node_modules/ajv/lib/dot/contains.jst +0 -55
  65. package/packages/config-eslint/node_modules/ajv/lib/dot/custom.jst +0 -191
  66. package/packages/config-eslint/node_modules/ajv/lib/dot/defaults.def +0 -47
  67. package/packages/config-eslint/node_modules/ajv/lib/dot/definitions.def +0 -203
  68. package/packages/config-eslint/node_modules/ajv/lib/dot/dependencies.jst +0 -79
  69. package/packages/config-eslint/node_modules/ajv/lib/dot/enum.jst +0 -30
  70. package/packages/config-eslint/node_modules/ajv/lib/dot/errors.def +0 -194
  71. package/packages/config-eslint/node_modules/ajv/lib/dot/format.jst +0 -106
  72. package/packages/config-eslint/node_modules/ajv/lib/dot/if.jst +0 -73
  73. package/packages/config-eslint/node_modules/ajv/lib/dot/items.jst +0 -98
  74. package/packages/config-eslint/node_modules/ajv/lib/dot/missing.def +0 -39
  75. package/packages/config-eslint/node_modules/ajv/lib/dot/multipleOf.jst +0 -22
  76. package/packages/config-eslint/node_modules/ajv/lib/dot/not.jst +0 -43
  77. package/packages/config-eslint/node_modules/ajv/lib/dot/oneOf.jst +0 -54
  78. package/packages/config-eslint/node_modules/ajv/lib/dot/pattern.jst +0 -14
  79. package/packages/config-eslint/node_modules/ajv/lib/dot/properties.jst +0 -245
  80. package/packages/config-eslint/node_modules/ajv/lib/dot/propertyNames.jst +0 -52
  81. package/packages/config-eslint/node_modules/ajv/lib/dot/ref.jst +0 -85
  82. package/packages/config-eslint/node_modules/ajv/lib/dot/required.jst +0 -108
  83. package/packages/config-eslint/node_modules/ajv/lib/dot/uniqueItems.jst +0 -62
  84. package/packages/config-eslint/node_modules/ajv/lib/dot/validate.jst +0 -276
  85. package/packages/config-eslint/node_modules/ajv/lib/dotjs/README.md +0 -3
  86. package/packages/config-eslint/node_modules/ajv/lib/dotjs/_limit.js +0 -163
  87. package/packages/config-eslint/node_modules/ajv/lib/dotjs/_limitItems.js +0 -80
  88. package/packages/config-eslint/node_modules/ajv/lib/dotjs/_limitLength.js +0 -85
  89. package/packages/config-eslint/node_modules/ajv/lib/dotjs/_limitProperties.js +0 -80
  90. package/packages/config-eslint/node_modules/ajv/lib/dotjs/allOf.js +0 -42
  91. package/packages/config-eslint/node_modules/ajv/lib/dotjs/anyOf.js +0 -73
  92. package/packages/config-eslint/node_modules/ajv/lib/dotjs/comment.js +0 -14
  93. package/packages/config-eslint/node_modules/ajv/lib/dotjs/const.js +0 -56
  94. package/packages/config-eslint/node_modules/ajv/lib/dotjs/contains.js +0 -81
  95. package/packages/config-eslint/node_modules/ajv/lib/dotjs/custom.js +0 -228
  96. package/packages/config-eslint/node_modules/ajv/lib/dotjs/dependencies.js +0 -168
  97. package/packages/config-eslint/node_modules/ajv/lib/dotjs/enum.js +0 -66
  98. package/packages/config-eslint/node_modules/ajv/lib/dotjs/format.js +0 -150
  99. package/packages/config-eslint/node_modules/ajv/lib/dotjs/if.js +0 -103
  100. package/packages/config-eslint/node_modules/ajv/lib/dotjs/index.js +0 -33
  101. package/packages/config-eslint/node_modules/ajv/lib/dotjs/items.js +0 -140
  102. package/packages/config-eslint/node_modules/ajv/lib/dotjs/multipleOf.js +0 -80
  103. package/packages/config-eslint/node_modules/ajv/lib/dotjs/not.js +0 -84
  104. package/packages/config-eslint/node_modules/ajv/lib/dotjs/oneOf.js +0 -73
  105. package/packages/config-eslint/node_modules/ajv/lib/dotjs/pattern.js +0 -75
  106. package/packages/config-eslint/node_modules/ajv/lib/dotjs/properties.js +0 -335
  107. package/packages/config-eslint/node_modules/ajv/lib/dotjs/propertyNames.js +0 -81
  108. package/packages/config-eslint/node_modules/ajv/lib/dotjs/ref.js +0 -124
  109. package/packages/config-eslint/node_modules/ajv/lib/dotjs/required.js +0 -270
  110. package/packages/config-eslint/node_modules/ajv/lib/dotjs/uniqueItems.js +0 -86
  111. package/packages/config-eslint/node_modules/ajv/lib/dotjs/validate.js +0 -482
  112. package/packages/config-eslint/node_modules/ajv/lib/keyword.js +0 -146
  113. package/packages/config-eslint/node_modules/ajv/lib/refs/data.json +0 -17
  114. package/packages/config-eslint/node_modules/ajv/lib/refs/json-schema-draft-04.json +0 -149
  115. package/packages/config-eslint/node_modules/ajv/lib/refs/json-schema-draft-06.json +0 -154
  116. package/packages/config-eslint/node_modules/ajv/lib/refs/json-schema-draft-07.json +0 -168
  117. package/packages/config-eslint/node_modules/ajv/lib/refs/json-schema-secure.json +0 -94
  118. package/packages/config-eslint/node_modules/ajv/package.json +0 -106
  119. package/packages/config-eslint/node_modules/ajv/scripts/.eslintrc.yml +0 -3
  120. package/packages/config-eslint/node_modules/ajv/scripts/bundle.js +0 -61
  121. package/packages/config-eslint/node_modules/ajv/scripts/compile-dots.js +0 -73
  122. package/packages/config-eslint/node_modules/ajv/scripts/info +0 -10
  123. package/packages/config-eslint/node_modules/ajv/scripts/prepare-tests +0 -12
  124. package/packages/config-eslint/node_modules/ajv/scripts/publish-built-version +0 -32
  125. package/packages/config-eslint/node_modules/ajv/scripts/travis-gh-pages +0 -23
  126. package/packages/config-eslint/node_modules/eslint-visitor-keys/LICENSE +0 -201
  127. package/packages/config-eslint/node_modules/eslint-visitor-keys/README.md +0 -105
  128. package/packages/config-eslint/node_modules/eslint-visitor-keys/dist/eslint-visitor-keys.cjs +0 -384
  129. package/packages/config-eslint/node_modules/eslint-visitor-keys/dist/eslint-visitor-keys.d.cts +0 -27
  130. package/packages/config-eslint/node_modules/eslint-visitor-keys/dist/index.d.ts +0 -16
  131. package/packages/config-eslint/node_modules/eslint-visitor-keys/dist/visitor-keys.d.ts +0 -12
  132. package/packages/config-eslint/node_modules/eslint-visitor-keys/lib/index.js +0 -65
  133. package/packages/config-eslint/node_modules/eslint-visitor-keys/lib/visitor-keys.js +0 -315
  134. package/packages/config-eslint/node_modules/eslint-visitor-keys/package.json +0 -74
  135. package/packages/config-eslint/node_modules/espree/LICENSE +0 -25
  136. package/packages/config-eslint/node_modules/espree/README.md +0 -244
  137. package/packages/config-eslint/node_modules/espree/dist/espree.cjs +0 -883
  138. package/packages/config-eslint/node_modules/espree/espree.js +0 -177
  139. package/packages/config-eslint/node_modules/espree/lib/espree.js +0 -349
  140. package/packages/config-eslint/node_modules/espree/lib/features.js +0 -27
  141. package/packages/config-eslint/node_modules/espree/lib/options.js +0 -123
  142. package/packages/config-eslint/node_modules/espree/lib/token-translator.js +0 -263
  143. package/packages/config-eslint/node_modules/espree/lib/version.js +0 -3
  144. package/packages/config-eslint/node_modules/espree/package.json +0 -86
  145. package/packages/config-eslint/node_modules/globals/globals.json +0 -1998
  146. package/packages/config-eslint/node_modules/globals/index.d.ts +0 -2077
  147. package/packages/config-eslint/node_modules/globals/index.js +0 -2
  148. package/packages/config-eslint/node_modules/globals/license +0 -9
  149. package/packages/config-eslint/node_modules/globals/package.json +0 -58
  150. package/packages/config-eslint/node_modules/globals/readme.md +0 -44
  151. package/packages/config-eslint/node_modules/json-schema-traverse/.eslintrc.yml +0 -27
  152. package/packages/config-eslint/node_modules/json-schema-traverse/.travis.yml +0 -8
  153. package/packages/config-eslint/node_modules/json-schema-traverse/LICENSE +0 -21
  154. package/packages/config-eslint/node_modules/json-schema-traverse/README.md +0 -83
  155. package/packages/config-eslint/node_modules/json-schema-traverse/index.js +0 -89
  156. package/packages/config-eslint/node_modules/json-schema-traverse/package.json +0 -43
  157. package/packages/config-eslint/node_modules/json-schema-traverse/spec/.eslintrc.yml +0 -6
  158. package/packages/config-eslint/node_modules/json-schema-traverse/spec/fixtures/schema.js +0 -125
  159. package/packages/config-eslint/node_modules/json-schema-traverse/spec/index.spec.js +0 -171
@@ -1,318 +0,0 @@
1
- /**
2
- * @fileoverview Compatibility class for flat config.
3
- * @author Nicholas C. Zakas
4
- */
5
-
6
- //-----------------------------------------------------------------------------
7
- // Requirements
8
- //-----------------------------------------------------------------------------
9
-
10
- import createDebug from "debug";
11
- import path from "path";
12
-
13
- import environments from "../conf/environments.js";
14
- import { ConfigArrayFactory } from "./config-array-factory.js";
15
-
16
- //-----------------------------------------------------------------------------
17
- // Helpers
18
- //-----------------------------------------------------------------------------
19
-
20
- /** @typedef {import("../../shared/types").Environment} Environment */
21
- /** @typedef {import("../../shared/types").Processor} Processor */
22
-
23
- const debug = createDebug("eslintrc:flat-compat");
24
- const cafactory = Symbol("cafactory");
25
-
26
- /**
27
- * Translates an ESLintRC-style config object into a flag-config-style config
28
- * object.
29
- * @param {Object} eslintrcConfig An ESLintRC-style config object.
30
- * @param {Object} options Options to help translate the config.
31
- * @param {string} options.resolveConfigRelativeTo To the directory to resolve
32
- * configs from.
33
- * @param {string} options.resolvePluginsRelativeTo The directory to resolve
34
- * plugins from.
35
- * @param {ReadOnlyMap<string,Environment>} options.pluginEnvironments A map of plugin environment
36
- * names to objects.
37
- * @param {ReadOnlyMap<string,Processor>} options.pluginProcessors A map of plugin processor
38
- * names to objects.
39
- * @returns {Object} A flag-config-style config object.
40
- */
41
- function translateESLintRC(eslintrcConfig, {
42
- resolveConfigRelativeTo,
43
- resolvePluginsRelativeTo,
44
- pluginEnvironments,
45
- pluginProcessors
46
- }) {
47
-
48
- const flatConfig = {};
49
- const configs = [];
50
- const languageOptions = {};
51
- const linterOptions = {};
52
- const keysToCopy = ["settings", "rules", "processor"];
53
- const languageOptionsKeysToCopy = ["globals", "parser", "parserOptions"];
54
- const linterOptionsKeysToCopy = ["noInlineConfig", "reportUnusedDisableDirectives"];
55
-
56
- // copy over simple translations
57
- for (const key of keysToCopy) {
58
- if (key in eslintrcConfig && typeof eslintrcConfig[key] !== "undefined") {
59
- flatConfig[key] = eslintrcConfig[key];
60
- }
61
- }
62
-
63
- // copy over languageOptions
64
- for (const key of languageOptionsKeysToCopy) {
65
- if (key in eslintrcConfig && typeof eslintrcConfig[key] !== "undefined") {
66
-
67
- // create the languageOptions key in the flat config
68
- flatConfig.languageOptions = languageOptions;
69
-
70
- if (key === "parser") {
71
- debug(`Resolving parser '${languageOptions[key]}' relative to ${resolveConfigRelativeTo}`);
72
-
73
- if (eslintrcConfig[key].error) {
74
- throw eslintrcConfig[key].error;
75
- }
76
-
77
- languageOptions[key] = eslintrcConfig[key].definition;
78
- continue;
79
- }
80
-
81
- // clone any object values that are in the eslintrc config
82
- if (eslintrcConfig[key] && typeof eslintrcConfig[key] === "object") {
83
- languageOptions[key] = {
84
- ...eslintrcConfig[key]
85
- };
86
- } else {
87
- languageOptions[key] = eslintrcConfig[key];
88
- }
89
- }
90
- }
91
-
92
- // copy over linterOptions
93
- for (const key of linterOptionsKeysToCopy) {
94
- if (key in eslintrcConfig && typeof eslintrcConfig[key] !== "undefined") {
95
- flatConfig.linterOptions = linterOptions;
96
- linterOptions[key] = eslintrcConfig[key];
97
- }
98
- }
99
-
100
- // move ecmaVersion a level up
101
- if (languageOptions.parserOptions) {
102
-
103
- if ("ecmaVersion" in languageOptions.parserOptions) {
104
- languageOptions.ecmaVersion = languageOptions.parserOptions.ecmaVersion;
105
- delete languageOptions.parserOptions.ecmaVersion;
106
- }
107
-
108
- if ("sourceType" in languageOptions.parserOptions) {
109
- languageOptions.sourceType = languageOptions.parserOptions.sourceType;
110
- delete languageOptions.parserOptions.sourceType;
111
- }
112
-
113
- // check to see if we even need parserOptions anymore and remove it if not
114
- if (Object.keys(languageOptions.parserOptions).length === 0) {
115
- delete languageOptions.parserOptions;
116
- }
117
- }
118
-
119
- // overrides
120
- if (eslintrcConfig.criteria) {
121
- flatConfig.files = [absoluteFilePath => eslintrcConfig.criteria.test(absoluteFilePath)];
122
- }
123
-
124
- // translate plugins
125
- if (eslintrcConfig.plugins && typeof eslintrcConfig.plugins === "object") {
126
- debug(`Translating plugins: ${eslintrcConfig.plugins}`);
127
-
128
- flatConfig.plugins = {};
129
-
130
- for (const pluginName of Object.keys(eslintrcConfig.plugins)) {
131
-
132
- debug(`Translating plugin: ${pluginName}`);
133
- debug(`Resolving plugin '${pluginName} relative to ${resolvePluginsRelativeTo}`);
134
-
135
- const { original: plugin, error } = eslintrcConfig.plugins[pluginName];
136
-
137
- if (error) {
138
- throw error;
139
- }
140
-
141
- flatConfig.plugins[pluginName] = plugin;
142
-
143
- // create a config for any processors
144
- if (plugin.processors) {
145
- for (const processorName of Object.keys(plugin.processors)) {
146
- if (processorName.startsWith(".")) {
147
- debug(`Assigning processor: ${pluginName}/${processorName}`);
148
-
149
- configs.unshift({
150
- files: [`**/*${processorName}`],
151
- processor: pluginProcessors.get(`${pluginName}/${processorName}`)
152
- });
153
- }
154
-
155
- }
156
- }
157
- }
158
- }
159
-
160
- // translate env - must come after plugins
161
- if (eslintrcConfig.env && typeof eslintrcConfig.env === "object") {
162
- for (const envName of Object.keys(eslintrcConfig.env)) {
163
-
164
- // only add environments that are true
165
- if (eslintrcConfig.env[envName]) {
166
- debug(`Translating environment: ${envName}`);
167
-
168
- if (environments.has(envName)) {
169
-
170
- // built-in environments should be defined first
171
- configs.unshift(...translateESLintRC({
172
- criteria: eslintrcConfig.criteria,
173
- ...environments.get(envName)
174
- }, {
175
- resolveConfigRelativeTo,
176
- resolvePluginsRelativeTo
177
- }));
178
- } else if (pluginEnvironments.has(envName)) {
179
-
180
- // if the environment comes from a plugin, it should come after the plugin config
181
- configs.push(...translateESLintRC({
182
- criteria: eslintrcConfig.criteria,
183
- ...pluginEnvironments.get(envName)
184
- }, {
185
- resolveConfigRelativeTo,
186
- resolvePluginsRelativeTo
187
- }));
188
- }
189
- }
190
- }
191
- }
192
-
193
- // only add if there are actually keys in the config
194
- if (Object.keys(flatConfig).length > 0) {
195
- configs.push(flatConfig);
196
- }
197
-
198
- return configs;
199
- }
200
-
201
-
202
- //-----------------------------------------------------------------------------
203
- // Exports
204
- //-----------------------------------------------------------------------------
205
-
206
- /**
207
- * A compatibility class for working with configs.
208
- */
209
- class FlatCompat {
210
-
211
- constructor({
212
- baseDirectory = process.cwd(),
213
- resolvePluginsRelativeTo = baseDirectory,
214
- recommendedConfig,
215
- allConfig
216
- } = {}) {
217
- this.baseDirectory = baseDirectory;
218
- this.resolvePluginsRelativeTo = resolvePluginsRelativeTo;
219
- this[cafactory] = new ConfigArrayFactory({
220
- cwd: baseDirectory,
221
- resolvePluginsRelativeTo,
222
- getEslintAllConfig: () => {
223
-
224
- if (!allConfig) {
225
- throw new TypeError("Missing parameter 'allConfig' in FlatCompat constructor.");
226
- }
227
-
228
- return allConfig;
229
- },
230
- getEslintRecommendedConfig: () => {
231
-
232
- if (!recommendedConfig) {
233
- throw new TypeError("Missing parameter 'recommendedConfig' in FlatCompat constructor.");
234
- }
235
-
236
- return recommendedConfig;
237
- }
238
- });
239
- }
240
-
241
- /**
242
- * Translates an ESLintRC-style config into a flag-config-style config.
243
- * @param {Object} eslintrcConfig The ESLintRC-style config object.
244
- * @returns {Object} A flag-config-style config object.
245
- */
246
- config(eslintrcConfig) {
247
- const eslintrcArray = this[cafactory].create(eslintrcConfig, {
248
- basePath: this.baseDirectory
249
- });
250
-
251
- const flatArray = [];
252
- let hasIgnorePatterns = false;
253
-
254
- eslintrcArray.forEach(configData => {
255
- if (configData.type === "config") {
256
- hasIgnorePatterns = hasIgnorePatterns || configData.ignorePattern;
257
- flatArray.push(...translateESLintRC(configData, {
258
- resolveConfigRelativeTo: path.join(this.baseDirectory, "__placeholder.js"),
259
- resolvePluginsRelativeTo: path.join(this.resolvePluginsRelativeTo, "__placeholder.js"),
260
- pluginEnvironments: eslintrcArray.pluginEnvironments,
261
- pluginProcessors: eslintrcArray.pluginProcessors
262
- }));
263
- }
264
- });
265
-
266
- // combine ignorePatterns to emulate ESLintRC behavior better
267
- if (hasIgnorePatterns) {
268
- flatArray.unshift({
269
- ignores: [filePath => {
270
-
271
- // Compute the final config for this file.
272
- // This filters config array elements by `files`/`excludedFiles` then merges the elements.
273
- const finalConfig = eslintrcArray.extractConfig(filePath);
274
-
275
- // Test the `ignorePattern` properties of the final config.
276
- return Boolean(finalConfig.ignores) && finalConfig.ignores(filePath);
277
- }]
278
- });
279
- }
280
-
281
- return flatArray;
282
- }
283
-
284
- /**
285
- * Translates the `env` section of an ESLintRC-style config.
286
- * @param {Object} envConfig The `env` section of an ESLintRC config.
287
- * @returns {Object[]} An array of flag-config objects representing the environments.
288
- */
289
- env(envConfig) {
290
- return this.config({
291
- env: envConfig
292
- });
293
- }
294
-
295
- /**
296
- * Translates the `extends` section of an ESLintRC-style config.
297
- * @param {...string} configsToExtend The names of the configs to load.
298
- * @returns {Object[]} An array of flag-config objects representing the config.
299
- */
300
- extends(...configsToExtend) {
301
- return this.config({
302
- extends: configsToExtend
303
- });
304
- }
305
-
306
- /**
307
- * Translates the `plugins` section of an ESLintRC-style config.
308
- * @param {...string} plugins The names of the plugins to load.
309
- * @returns {Object[]} An array of flag-config objects representing the plugins.
310
- */
311
- plugins(...plugins) {
312
- return this.config({
313
- plugins
314
- });
315
- }
316
- }
317
-
318
- export { FlatCompat };
@@ -1,29 +0,0 @@
1
- /**
2
- * @fileoverview Package exports for @eslint/eslintrc
3
- * @author Nicholas C. Zakas
4
- */
5
- //------------------------------------------------------------------------------
6
- // Requirements
7
- //------------------------------------------------------------------------------
8
-
9
- import * as ConfigOps from "./shared/config-ops.js";
10
- import ConfigValidator from "./shared/config-validator.js";
11
- import * as naming from "./shared/naming.js";
12
- import environments from "../conf/environments.js";
13
-
14
- //-----------------------------------------------------------------------------
15
- // Exports
16
- //-----------------------------------------------------------------------------
17
-
18
- const Legacy = {
19
- environments,
20
-
21
- // shared
22
- ConfigOps,
23
- ConfigValidator,
24
- naming
25
- };
26
-
27
- export {
28
- Legacy
29
- };
@@ -1,58 +0,0 @@
1
- /**
2
- * @fileoverview Package exports for @eslint/eslintrc
3
- * @author Nicholas C. Zakas
4
- */
5
- //------------------------------------------------------------------------------
6
- // Requirements
7
- //------------------------------------------------------------------------------
8
-
9
- import {
10
- ConfigArrayFactory,
11
- createContext as createConfigArrayFactoryContext,
12
- loadConfigFile
13
- } from "./config-array-factory.js";
14
-
15
- import { CascadingConfigArrayFactory } from "./cascading-config-array-factory.js";
16
- import * as ModuleResolver from "./shared/relative-module-resolver.js";
17
- import { ConfigArray, getUsedExtractedConfigs } from "./config-array/index.js";
18
- import { ConfigDependency } from "./config-array/config-dependency.js";
19
- import { ExtractedConfig } from "./config-array/extracted-config.js";
20
- import { IgnorePattern } from "./config-array/ignore-pattern.js";
21
- import { OverrideTester } from "./config-array/override-tester.js";
22
- import * as ConfigOps from "./shared/config-ops.js";
23
- import ConfigValidator from "./shared/config-validator.js";
24
- import * as naming from "./shared/naming.js";
25
- import { FlatCompat } from "./flat-compat.js";
26
- import environments from "../conf/environments.js";
27
-
28
- //-----------------------------------------------------------------------------
29
- // Exports
30
- //-----------------------------------------------------------------------------
31
-
32
- const Legacy = {
33
- ConfigArray,
34
- createConfigArrayFactoryContext,
35
- CascadingConfigArrayFactory,
36
- ConfigArrayFactory,
37
- ConfigDependency,
38
- ExtractedConfig,
39
- IgnorePattern,
40
- OverrideTester,
41
- getUsedExtractedConfigs,
42
- environments,
43
- loadConfigFile,
44
-
45
- // shared
46
- ConfigOps,
47
- ConfigValidator,
48
- ModuleResolver,
49
- naming
50
- };
51
-
52
- export {
53
-
54
- Legacy,
55
-
56
- FlatCompat
57
-
58
- };
@@ -1,191 +0,0 @@
1
- /**
2
- * @fileoverview The instance of Ajv validator.
3
- * @author Evgeny Poberezkin
4
- */
5
-
6
- //------------------------------------------------------------------------------
7
- // Requirements
8
- //------------------------------------------------------------------------------
9
-
10
- import Ajv from "ajv";
11
-
12
- //-----------------------------------------------------------------------------
13
- // Helpers
14
- //-----------------------------------------------------------------------------
15
-
16
- /*
17
- * Copied from ajv/lib/refs/json-schema-draft-04.json
18
- * The MIT License (MIT)
19
- * Copyright (c) 2015-2017 Evgeny Poberezkin
20
- */
21
- const metaSchema = {
22
- id: "http://json-schema.org/draft-04/schema#",
23
- $schema: "http://json-schema.org/draft-04/schema#",
24
- description: "Core schema meta-schema",
25
- definitions: {
26
- schemaArray: {
27
- type: "array",
28
- minItems: 1,
29
- items: { $ref: "#" }
30
- },
31
- positiveInteger: {
32
- type: "integer",
33
- minimum: 0
34
- },
35
- positiveIntegerDefault0: {
36
- allOf: [{ $ref: "#/definitions/positiveInteger" }, { default: 0 }]
37
- },
38
- simpleTypes: {
39
- enum: ["array", "boolean", "integer", "null", "number", "object", "string"]
40
- },
41
- stringArray: {
42
- type: "array",
43
- items: { type: "string" },
44
- minItems: 1,
45
- uniqueItems: true
46
- }
47
- },
48
- type: "object",
49
- properties: {
50
- id: {
51
- type: "string"
52
- },
53
- $schema: {
54
- type: "string"
55
- },
56
- title: {
57
- type: "string"
58
- },
59
- description: {
60
- type: "string"
61
- },
62
- default: { },
63
- multipleOf: {
64
- type: "number",
65
- minimum: 0,
66
- exclusiveMinimum: true
67
- },
68
- maximum: {
69
- type: "number"
70
- },
71
- exclusiveMaximum: {
72
- type: "boolean",
73
- default: false
74
- },
75
- minimum: {
76
- type: "number"
77
- },
78
- exclusiveMinimum: {
79
- type: "boolean",
80
- default: false
81
- },
82
- maxLength: { $ref: "#/definitions/positiveInteger" },
83
- minLength: { $ref: "#/definitions/positiveIntegerDefault0" },
84
- pattern: {
85
- type: "string",
86
- format: "regex"
87
- },
88
- additionalItems: {
89
- anyOf: [
90
- { type: "boolean" },
91
- { $ref: "#" }
92
- ],
93
- default: { }
94
- },
95
- items: {
96
- anyOf: [
97
- { $ref: "#" },
98
- { $ref: "#/definitions/schemaArray" }
99
- ],
100
- default: { }
101
- },
102
- maxItems: { $ref: "#/definitions/positiveInteger" },
103
- minItems: { $ref: "#/definitions/positiveIntegerDefault0" },
104
- uniqueItems: {
105
- type: "boolean",
106
- default: false
107
- },
108
- maxProperties: { $ref: "#/definitions/positiveInteger" },
109
- minProperties: { $ref: "#/definitions/positiveIntegerDefault0" },
110
- required: { $ref: "#/definitions/stringArray" },
111
- additionalProperties: {
112
- anyOf: [
113
- { type: "boolean" },
114
- { $ref: "#" }
115
- ],
116
- default: { }
117
- },
118
- definitions: {
119
- type: "object",
120
- additionalProperties: { $ref: "#" },
121
- default: { }
122
- },
123
- properties: {
124
- type: "object",
125
- additionalProperties: { $ref: "#" },
126
- default: { }
127
- },
128
- patternProperties: {
129
- type: "object",
130
- additionalProperties: { $ref: "#" },
131
- default: { }
132
- },
133
- dependencies: {
134
- type: "object",
135
- additionalProperties: {
136
- anyOf: [
137
- { $ref: "#" },
138
- { $ref: "#/definitions/stringArray" }
139
- ]
140
- }
141
- },
142
- enum: {
143
- type: "array",
144
- minItems: 1,
145
- uniqueItems: true
146
- },
147
- type: {
148
- anyOf: [
149
- { $ref: "#/definitions/simpleTypes" },
150
- {
151
- type: "array",
152
- items: { $ref: "#/definitions/simpleTypes" },
153
- minItems: 1,
154
- uniqueItems: true
155
- }
156
- ]
157
- },
158
- format: { type: "string" },
159
- allOf: { $ref: "#/definitions/schemaArray" },
160
- anyOf: { $ref: "#/definitions/schemaArray" },
161
- oneOf: { $ref: "#/definitions/schemaArray" },
162
- not: { $ref: "#" }
163
- },
164
- dependencies: {
165
- exclusiveMaximum: ["maximum"],
166
- exclusiveMinimum: ["minimum"]
167
- },
168
- default: { }
169
- };
170
-
171
- //------------------------------------------------------------------------------
172
- // Public Interface
173
- //------------------------------------------------------------------------------
174
-
175
- export default (additionalOptions = {}) => {
176
- const ajv = new Ajv({
177
- meta: false,
178
- useDefaults: true,
179
- validateSchema: false,
180
- missingRefs: "ignore",
181
- verbose: true,
182
- schemaId: "auto",
183
- ...additionalOptions
184
- });
185
-
186
- ajv.addMetaSchema(metaSchema);
187
- // eslint-disable-next-line no-underscore-dangle
188
- ajv._opts.defaultMeta = metaSchema.id;
189
-
190
- return ajv;
191
- };