@graphql-eslint/eslint-plugin 3.19.3-alpha-20230702093957-98f7783 → 3.20.0-alpha-20230703154330-0d51273

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 (302) hide show
  1. package/{typings → cjs}/cache.d.ts +3 -1
  2. package/cjs/cache.js +57 -26
  3. package/{typings → cjs}/configs/index.d.ts +3 -1
  4. package/cjs/configs/index.js +47 -14
  5. package/{typings → cjs}/configs/operations-all.d.ts +2 -1
  6. package/cjs/configs/operations-all.js +47 -30
  7. package/{typings → cjs}/configs/operations-recommended.d.ts +2 -1
  8. package/cjs/configs/operations-recommended.js +72 -55
  9. package/{typings → cjs}/configs/relay.d.ts +2 -1
  10. package/cjs/configs/relay.js +31 -11
  11. package/{typings → cjs}/configs/schema-all.d.ts +2 -1
  12. package/cjs/configs/schema-all.js +41 -24
  13. package/{typings → cjs}/configs/schema-recommended.d.ts +2 -1
  14. package/cjs/configs/schema-recommended.js +68 -51
  15. package/{typings → cjs}/documents.d.ts +4 -1
  16. package/cjs/documents.js +74 -43
  17. package/cjs/estree-converter/converter.d.ts +8 -0
  18. package/cjs/estree-converter/converter.js +80 -59
  19. package/cjs/estree-converter/index.d.ts +8 -0
  20. package/cjs/estree-converter/index.js +25 -5
  21. package/{typings → cjs}/estree-converter/types.d.ts +7 -5
  22. package/cjs/estree-converter/types.js +16 -0
  23. package/cjs/estree-converter/utils.d.ts +18 -0
  24. package/cjs/estree-converter/utils.js +119 -95
  25. package/{typings → cjs}/flat-configs.d.ts +12 -1
  26. package/cjs/flat-configs.js +56 -32
  27. package/cjs/graphql-config.d.ts +13 -0
  28. package/cjs/graphql-config.js +78 -47
  29. package/cjs/index.d.ts +22 -0
  30. package/cjs/index.js +50 -18
  31. package/cjs/parser.d.ts +12 -0
  32. package/cjs/parser.js +96 -76
  33. package/cjs/processor.d.ts +9 -0
  34. package/cjs/processor.js +119 -88
  35. package/{typings → cjs}/rules/alphabetize.d.ts +12 -4
  36. package/cjs/rules/alphabetize.js +337 -295
  37. package/{typings → cjs}/rules/description-style.d.ts +12 -4
  38. package/cjs/rules/description-style.js +96 -66
  39. package/cjs/rules/graphql-js-validation.d.ts +12 -0
  40. package/cjs/rules/graphql-js-validation.js +595 -433
  41. package/cjs/rules/index.d.ts +125 -0
  42. package/cjs/rules/index.js +97 -76
  43. package/{typings → cjs}/rules/input-name.d.ts +12 -4
  44. package/cjs/rules/input-name.js +153 -123
  45. package/{typings → cjs}/rules/lone-executable-definition.d.ts +12 -4
  46. package/cjs/rules/lone-executable-definition.js +101 -72
  47. package/{typings → cjs}/rules/match-document-filename.d.ts +14 -6
  48. package/cjs/rules/match-document-filename.js +229 -182
  49. package/{typings → cjs}/rules/naming-convention.d.ts +12 -4
  50. package/cjs/rules/naming-convention.js +380 -316
  51. package/cjs/rules/no-anonymous-operations.d.ts +12 -0
  52. package/cjs/rules/no-anonymous-operations.js +88 -57
  53. package/cjs/rules/no-case-insensitive-enum-values-duplicates.d.ts +12 -0
  54. package/cjs/rules/no-case-insensitive-enum-values-duplicates.js +82 -50
  55. package/cjs/rules/no-deprecated.d.ts +12 -0
  56. package/cjs/rules/no-deprecated.js +106 -75
  57. package/cjs/rules/no-duplicate-fields.d.ts +12 -0
  58. package/cjs/rules/no-duplicate-fields.js +116 -82
  59. package/cjs/rules/no-hashtag-description.d.ts +13 -0
  60. package/cjs/rules/no-hashtag-description.js +119 -82
  61. package/cjs/rules/no-one-place-fragments.d.ts +12 -0
  62. package/cjs/rules/no-one-place-fragments.js +88 -58
  63. package/{typings → cjs}/rules/no-root-type.d.ts +12 -4
  64. package/cjs/rules/no-root-type.js +101 -74
  65. package/cjs/rules/no-scalar-result-type-on-mutation.d.ts +12 -0
  66. package/cjs/rules/no-scalar-result-type-on-mutation.js +90 -60
  67. package/cjs/rules/no-typename-prefix.d.ts +12 -0
  68. package/cjs/rules/no-typename-prefix.js +88 -55
  69. package/cjs/rules/no-unreachable-types.d.ts +12 -0
  70. package/cjs/rules/no-unreachable-types.js +169 -134
  71. package/cjs/rules/no-unused-fields.d.ts +12 -0
  72. package/cjs/rules/no-unused-fields.js +117 -92
  73. package/{typings → cjs}/rules/relay-arguments.d.ts +12 -4
  74. package/cjs/rules/relay-arguments.js +136 -110
  75. package/cjs/rules/relay-connection-types.d.ts +13 -0
  76. package/cjs/rules/relay-connection-types.js +123 -94
  77. package/{typings → cjs}/rules/relay-edge-types.d.ts +12 -4
  78. package/cjs/rules/relay-edge-types.js +196 -179
  79. package/cjs/rules/relay-page-info.d.ts +12 -0
  80. package/cjs/rules/relay-page-info.js +108 -89
  81. package/{typings → cjs}/rules/require-deprecation-date.d.ts +12 -4
  82. package/cjs/rules/require-deprecation-date.js +143 -112
  83. package/cjs/rules/require-deprecation-reason.d.ts +12 -0
  84. package/cjs/rules/require-deprecation-reason.js +80 -46
  85. package/{typings → cjs}/rules/require-description.d.ts +13 -5
  86. package/cjs/rules/require-description.js +170 -132
  87. package/cjs/rules/require-field-of-type-query-in-mutation-result.d.ts +12 -0
  88. package/cjs/rules/require-field-of-type-query-in-mutation-result.js +81 -51
  89. package/{typings → cjs}/rules/require-id-when-available.d.ts +12 -4
  90. package/cjs/rules/require-id-when-available.js +196 -173
  91. package/cjs/rules/require-import-fragment.d.ts +12 -0
  92. package/cjs/rules/require-import-fragment.js +138 -88
  93. package/cjs/rules/require-nullable-fields-with-oneof.d.ts +12 -0
  94. package/cjs/rules/require-nullable-fields-with-oneof.js +80 -50
  95. package/cjs/rules/require-nullable-result-in-root.d.ts +12 -0
  96. package/cjs/rules/require-nullable-result-in-root.js +97 -68
  97. package/cjs/rules/require-type-pattern-with-oneof.d.ts +12 -0
  98. package/cjs/rules/require-type-pattern-with-oneof.js +70 -42
  99. package/{typings → cjs}/rules/selection-set-depth.d.ts +12 -4
  100. package/cjs/rules/selection-set-depth.js +147 -107
  101. package/{typings → cjs}/rules/strict-id-in-types.d.ts +12 -4
  102. package/cjs/rules/strict-id-in-types.js +143 -122
  103. package/cjs/rules/unique-fragment-name.d.ts +13 -0
  104. package/cjs/rules/unique-fragment-name.js +88 -62
  105. package/cjs/rules/unique-operation-name.d.ts +12 -0
  106. package/cjs/rules/unique-operation-name.js +65 -35
  107. package/cjs/schema.d.ts +12 -0
  108. package/cjs/schema.js +62 -30
  109. package/cjs/siblings.d.ts +8 -0
  110. package/cjs/siblings.js +124 -106
  111. package/cjs/testkit.d.ts +8 -0
  112. package/cjs/testkit.js +165 -144
  113. package/cjs/types-e3367e3c.d.ts +129 -0
  114. package/cjs/types.d.ts +8 -0
  115. package/cjs/types.js +16 -0
  116. package/cjs/utils.d.ts +44 -0
  117. package/cjs/utils.js +181 -124
  118. package/{typings/cache.d.cts → esm/cache.d.mts} +3 -1
  119. package/esm/cache.js +25 -23
  120. package/{typings/configs/index.d.cts → esm/configs/index.d.mts} +3 -1
  121. package/esm/configs/index.js +14 -11
  122. package/{typings/configs/operations-all.d.cts → esm/configs/operations-all.d.mts} +2 -1
  123. package/esm/configs/operations-all.js +28 -28
  124. package/{typings/configs/operations-recommended.d.cts → esm/configs/operations-recommended.d.mts} +2 -1
  125. package/esm/configs/operations-recommended.js +53 -53
  126. package/{typings/configs/relay.d.cts → esm/configs/relay.d.mts} +2 -1
  127. package/esm/configs/relay.js +12 -9
  128. package/{typings/configs/schema-all.d.cts → esm/configs/schema-all.d.mts} +2 -1
  129. package/esm/configs/schema-all.js +22 -22
  130. package/{typings/configs/schema-recommended.d.cts → esm/configs/schema-recommended.d.mts} +2 -1
  131. package/esm/configs/schema-recommended.js +49 -49
  132. package/{typings/documents.d.cts → esm/documents.d.mts} +4 -1
  133. package/esm/documents.js +41 -39
  134. package/esm/estree-converter/converter.d.mts +8 -0
  135. package/esm/estree-converter/converter.js +63 -57
  136. package/esm/estree-converter/index.d.mts +8 -0
  137. package/esm/estree-converter/index.js +3 -3
  138. package/{typings/estree-converter/types.d.cts → esm/estree-converter/types.d.mts} +7 -5
  139. package/esm/estree-converter/utils.d.mts +18 -0
  140. package/esm/estree-converter/utils.js +102 -93
  141. package/{typings/flat-configs.d.cts → esm/flat-configs.d.mts} +13 -2
  142. package/esm/flat-configs.js +33 -30
  143. package/esm/graphql-config.d.mts +13 -0
  144. package/esm/graphql-config.js +49 -44
  145. package/esm/index.d.mts +22 -0
  146. package/esm/index.js +18 -9
  147. package/esm/package.json +1 -1
  148. package/esm/parser.d.mts +12 -0
  149. package/esm/parser.js +64 -73
  150. package/esm/processor.d.mts +9 -0
  151. package/esm/processor.js +98 -86
  152. package/{typings/rules/alphabetize.d.cts → esm/rules/alphabetize.d.mts} +12 -4
  153. package/esm/rules/alphabetize.js +304 -290
  154. package/{typings/rules/description-style.d.cts → esm/rules/description-style.d.mts} +12 -4
  155. package/esm/rules/description-style.js +73 -64
  156. package/esm/rules/graphql-js-validation.d.mts +12 -0
  157. package/esm/rules/graphql-js-validation.js +580 -429
  158. package/esm/rules/index.d.mts +125 -0
  159. package/esm/rules/index.js +74 -74
  160. package/{typings/rules/input-name.d.cts → esm/rules/input-name.d.mts} +12 -4
  161. package/esm/rules/input-name.js +132 -121
  162. package/{typings/rules/lone-executable-definition.d.cts → esm/rules/lone-executable-definition.d.mts} +12 -4
  163. package/esm/rules/lone-executable-definition.js +78 -70
  164. package/{typings/rules/match-document-filename.d.cts → esm/rules/match-document-filename.d.mts} +14 -6
  165. package/esm/rules/match-document-filename.js +210 -180
  166. package/{typings/rules/naming-convention.d.cts → esm/rules/naming-convention.d.mts} +12 -4
  167. package/esm/rules/naming-convention.js +363 -314
  168. package/esm/rules/no-anonymous-operations.d.mts +12 -0
  169. package/esm/rules/no-anonymous-operations.js +65 -55
  170. package/esm/rules/no-case-insensitive-enum-values-duplicates.d.mts +12 -0
  171. package/esm/rules/no-case-insensitive-enum-values-duplicates.js +59 -48
  172. package/esm/rules/no-deprecated.d.mts +12 -0
  173. package/esm/rules/no-deprecated.js +83 -73
  174. package/esm/rules/no-duplicate-fields.d.mts +12 -0
  175. package/esm/rules/no-duplicate-fields.js +93 -80
  176. package/esm/rules/no-hashtag-description.d.mts +13 -0
  177. package/esm/rules/no-hashtag-description.js +95 -80
  178. package/esm/rules/no-one-place-fragments.d.mts +12 -0
  179. package/esm/rules/no-one-place-fragments.js +65 -56
  180. package/{typings/rules/no-root-type.d.cts → esm/rules/no-root-type.d.mts} +12 -4
  181. package/esm/rules/no-root-type.js +78 -72
  182. package/esm/rules/no-scalar-result-type-on-mutation.d.mts +12 -0
  183. package/esm/rules/no-scalar-result-type-on-mutation.js +67 -58
  184. package/esm/rules/no-typename-prefix.d.mts +12 -0
  185. package/esm/rules/no-typename-prefix.js +65 -53
  186. package/esm/rules/no-unreachable-types.d.mts +12 -0
  187. package/esm/rules/no-unreachable-types.js +141 -131
  188. package/esm/rules/no-unused-fields.d.mts +12 -0
  189. package/esm/rules/no-unused-fields.js +94 -90
  190. package/{typings/rules/relay-arguments.d.cts → esm/rules/relay-arguments.d.mts} +12 -4
  191. package/esm/rules/relay-arguments.js +113 -108
  192. package/esm/rules/relay-connection-types.d.mts +13 -0
  193. package/esm/rules/relay-connection-types.js +98 -91
  194. package/{typings/rules/relay-edge-types.d.cts → esm/rules/relay-edge-types.d.mts} +12 -4
  195. package/esm/rules/relay-edge-types.js +178 -177
  196. package/esm/rules/relay-page-info.d.mts +12 -0
  197. package/esm/rules/relay-page-info.js +84 -86
  198. package/{typings/rules/require-deprecation-date.d.cts → esm/rules/require-deprecation-date.d.mts} +12 -4
  199. package/esm/rules/require-deprecation-date.js +120 -110
  200. package/esm/rules/require-deprecation-reason.d.mts +12 -0
  201. package/esm/rules/require-deprecation-reason.js +57 -44
  202. package/{typings/rules/require-description.d.cts → esm/rules/require-description.d.mts} +13 -5
  203. package/esm/rules/require-description.js +151 -130
  204. package/esm/rules/require-field-of-type-query-in-mutation-result.d.mts +12 -0
  205. package/esm/rules/require-field-of-type-query-in-mutation-result.js +58 -49
  206. package/{typings/rules/require-id-when-available.d.cts → esm/rules/require-id-when-available.d.mts} +12 -4
  207. package/esm/rules/require-id-when-available.js +186 -171
  208. package/esm/rules/require-import-fragment.d.mts +12 -0
  209. package/esm/rules/require-import-fragment.js +105 -85
  210. package/esm/rules/require-nullable-fields-with-oneof.d.mts +12 -0
  211. package/esm/rules/require-nullable-fields-with-oneof.js +57 -48
  212. package/esm/rules/require-nullable-result-in-root.d.mts +12 -0
  213. package/esm/rules/require-nullable-result-in-root.js +74 -66
  214. package/esm/rules/require-type-pattern-with-oneof.d.mts +12 -0
  215. package/esm/rules/require-type-pattern-with-oneof.js +47 -40
  216. package/{typings/rules/selection-set-depth.d.cts → esm/rules/selection-set-depth.d.mts} +12 -4
  217. package/esm/rules/selection-set-depth.js +114 -104
  218. package/{typings/rules/strict-id-in-types.d.cts → esm/rules/strict-id-in-types.d.mts} +12 -4
  219. package/esm/rules/strict-id-in-types.js +125 -119
  220. package/esm/rules/unique-fragment-name.d.mts +13 -0
  221. package/esm/rules/unique-fragment-name.js +65 -60
  222. package/esm/rules/unique-operation-name.d.mts +12 -0
  223. package/esm/rules/unique-operation-name.js +42 -33
  224. package/esm/schema.d.mts +12 -0
  225. package/esm/schema.js +29 -26
  226. package/esm/siblings.d.mts +8 -0
  227. package/esm/siblings.js +105 -104
  228. package/esm/testkit.d.mts +8 -0
  229. package/esm/testkit.js +132 -141
  230. package/esm/types-2e1afd7c.d.ts +129 -0
  231. package/esm/types.d.mts +8 -0
  232. package/esm/utils.d.mts +44 -0
  233. package/esm/utils.js +138 -116
  234. package/package.json +40 -30
  235. package/typings/estree-converter/converter.d.cts +0 -3
  236. package/typings/estree-converter/converter.d.ts +0 -3
  237. package/typings/estree-converter/index.d.cts +0 -3
  238. package/typings/estree-converter/index.d.ts +0 -3
  239. package/typings/estree-converter/utils.d.cts +0 -13
  240. package/typings/estree-converter/utils.d.ts +0 -13
  241. package/typings/graphql-config.d.cts +0 -4
  242. package/typings/graphql-config.d.ts +0 -4
  243. package/typings/index.d.cts +0 -10
  244. package/typings/index.d.ts +0 -10
  245. package/typings/parser.d.cts +0 -2
  246. package/typings/parser.d.ts +0 -2
  247. package/typings/processor.d.cts +0 -6
  248. package/typings/processor.d.ts +0 -6
  249. package/typings/rules/graphql-js-validation.d.cts +0 -2
  250. package/typings/rules/graphql-js-validation.d.ts +0 -2
  251. package/typings/rules/index.d.cts +0 -111
  252. package/typings/rules/index.d.ts +0 -111
  253. package/typings/rules/no-anonymous-operations.d.cts +0 -2
  254. package/typings/rules/no-anonymous-operations.d.ts +0 -2
  255. package/typings/rules/no-case-insensitive-enum-values-duplicates.d.cts +0 -2
  256. package/typings/rules/no-case-insensitive-enum-values-duplicates.d.ts +0 -2
  257. package/typings/rules/no-deprecated.d.cts +0 -2
  258. package/typings/rules/no-deprecated.d.ts +0 -2
  259. package/typings/rules/no-duplicate-fields.d.cts +0 -2
  260. package/typings/rules/no-duplicate-fields.d.ts +0 -2
  261. package/typings/rules/no-hashtag-description.d.cts +0 -3
  262. package/typings/rules/no-hashtag-description.d.ts +0 -3
  263. package/typings/rules/no-one-place-fragments.d.cts +0 -2
  264. package/typings/rules/no-one-place-fragments.d.ts +0 -2
  265. package/typings/rules/no-scalar-result-type-on-mutation.d.cts +0 -2
  266. package/typings/rules/no-scalar-result-type-on-mutation.d.ts +0 -2
  267. package/typings/rules/no-typename-prefix.d.cts +0 -2
  268. package/typings/rules/no-typename-prefix.d.ts +0 -2
  269. package/typings/rules/no-unreachable-types.d.cts +0 -2
  270. package/typings/rules/no-unreachable-types.d.ts +0 -2
  271. package/typings/rules/no-unused-fields.d.cts +0 -2
  272. package/typings/rules/no-unused-fields.d.ts +0 -2
  273. package/typings/rules/relay-connection-types.d.cts +0 -4
  274. package/typings/rules/relay-connection-types.d.ts +0 -4
  275. package/typings/rules/relay-page-info.d.cts +0 -2
  276. package/typings/rules/relay-page-info.d.ts +0 -2
  277. package/typings/rules/require-deprecation-reason.d.cts +0 -2
  278. package/typings/rules/require-deprecation-reason.d.ts +0 -2
  279. package/typings/rules/require-field-of-type-query-in-mutation-result.d.cts +0 -2
  280. package/typings/rules/require-field-of-type-query-in-mutation-result.d.ts +0 -2
  281. package/typings/rules/require-import-fragment.d.cts +0 -2
  282. package/typings/rules/require-import-fragment.d.ts +0 -2
  283. package/typings/rules/require-nullable-fields-with-oneof.d.cts +0 -2
  284. package/typings/rules/require-nullable-fields-with-oneof.d.ts +0 -2
  285. package/typings/rules/require-nullable-result-in-root.d.cts +0 -2
  286. package/typings/rules/require-nullable-result-in-root.d.ts +0 -2
  287. package/typings/rules/require-type-pattern-with-oneof.d.cts +0 -2
  288. package/typings/rules/require-type-pattern-with-oneof.d.ts +0 -2
  289. package/typings/rules/unique-fragment-name.d.cts +0 -5
  290. package/typings/rules/unique-fragment-name.d.ts +0 -5
  291. package/typings/rules/unique-operation-name.d.cts +0 -2
  292. package/typings/rules/unique-operation-name.d.ts +0 -2
  293. package/typings/schema.d.cts +0 -3
  294. package/typings/schema.d.ts +0 -3
  295. package/typings/siblings.d.cts +0 -22
  296. package/typings/siblings.d.ts +0 -22
  297. package/typings/testkit.d.cts +0 -29
  298. package/typings/testkit.d.ts +0 -29
  299. package/typings/types.d.cts +0 -83
  300. package/typings/types.d.ts +0 -83
  301. package/typings/utils.d.cts +0 -40
  302. package/typings/utils.d.ts +0 -40
@@ -1,53 +1,70 @@
1
1
  "use strict";
2
- /*
3
- * 🚨 IMPORTANT! Do not manually modify this file. Run: `yarn generate-configs`
4
- */
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.default = {
7
- parser: '@graphql-eslint/eslint-plugin',
8
- plugins: ['@graphql-eslint'],
9
- rules: {
10
- '@graphql-eslint/description-style': 'error',
11
- '@graphql-eslint/known-argument-names': 'error',
12
- '@graphql-eslint/known-directives': 'error',
13
- '@graphql-eslint/known-type-names': 'error',
14
- '@graphql-eslint/lone-schema-definition': 'error',
15
- '@graphql-eslint/naming-convention': [
16
- 'error',
17
- {
18
- types: 'PascalCase',
19
- FieldDefinition: 'camelCase',
20
- InputValueDefinition: 'camelCase',
21
- Argument: 'camelCase',
22
- DirectiveDefinition: 'camelCase',
23
- EnumValueDefinition: 'UPPER_CASE',
24
- 'FieldDefinition[parent.name.value=Query]': {
25
- forbiddenPrefixes: ['query', 'get'],
26
- forbiddenSuffixes: ['Query'],
27
- },
28
- 'FieldDefinition[parent.name.value=Mutation]': {
29
- forbiddenPrefixes: ['mutation'],
30
- forbiddenSuffixes: ['Mutation'],
31
- },
32
- 'FieldDefinition[parent.name.value=Subscription]': {
33
- forbiddenPrefixes: ['subscription'],
34
- forbiddenSuffixes: ['Subscription'],
35
- },
36
- },
37
- ],
38
- '@graphql-eslint/no-case-insensitive-enum-values-duplicates': 'error',
39
- '@graphql-eslint/no-hashtag-description': 'error',
40
- '@graphql-eslint/no-typename-prefix': 'error',
41
- '@graphql-eslint/no-unreachable-types': 'error',
42
- '@graphql-eslint/provided-required-arguments': 'error',
43
- '@graphql-eslint/require-deprecation-reason': 'error',
44
- '@graphql-eslint/require-description': ['error', { types: true, DirectiveDefinition: true }],
45
- '@graphql-eslint/strict-id-in-types': 'error',
46
- '@graphql-eslint/unique-directive-names': 'error',
47
- '@graphql-eslint/unique-directive-names-per-location': 'error',
48
- '@graphql-eslint/unique-field-definition-names': 'error',
49
- '@graphql-eslint/unique-operation-types': 'error',
50
- '@graphql-eslint/unique-type-names': 'error',
51
- },
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var schema_recommended_exports = {};
20
+ __export(schema_recommended_exports, {
21
+ default: () => schema_recommended_default
22
+ });
23
+ module.exports = __toCommonJS(schema_recommended_exports);
24
+ var schema_recommended_default = {
25
+ parser: "@graphql-eslint/eslint-plugin",
26
+ plugins: ["@graphql-eslint"],
27
+ rules: {
28
+ "@graphql-eslint/description-style": "error",
29
+ "@graphql-eslint/known-argument-names": "error",
30
+ "@graphql-eslint/known-directives": "error",
31
+ "@graphql-eslint/known-type-names": "error",
32
+ "@graphql-eslint/lone-schema-definition": "error",
33
+ "@graphql-eslint/naming-convention": [
34
+ "error",
35
+ {
36
+ types: "PascalCase",
37
+ FieldDefinition: "camelCase",
38
+ InputValueDefinition: "camelCase",
39
+ Argument: "camelCase",
40
+ DirectiveDefinition: "camelCase",
41
+ EnumValueDefinition: "UPPER_CASE",
42
+ "FieldDefinition[parent.name.value=Query]": {
43
+ forbiddenPrefixes: ["query", "get"],
44
+ forbiddenSuffixes: ["Query"]
45
+ },
46
+ "FieldDefinition[parent.name.value=Mutation]": {
47
+ forbiddenPrefixes: ["mutation"],
48
+ forbiddenSuffixes: ["Mutation"]
49
+ },
50
+ "FieldDefinition[parent.name.value=Subscription]": {
51
+ forbiddenPrefixes: ["subscription"],
52
+ forbiddenSuffixes: ["Subscription"]
53
+ }
54
+ }
55
+ ],
56
+ "@graphql-eslint/no-case-insensitive-enum-values-duplicates": "error",
57
+ "@graphql-eslint/no-hashtag-description": "error",
58
+ "@graphql-eslint/no-typename-prefix": "error",
59
+ "@graphql-eslint/no-unreachable-types": "error",
60
+ "@graphql-eslint/provided-required-arguments": "error",
61
+ "@graphql-eslint/require-deprecation-reason": "error",
62
+ "@graphql-eslint/require-description": ["error", { types: true, DirectiveDefinition: true }],
63
+ "@graphql-eslint/strict-id-in-types": "error",
64
+ "@graphql-eslint/unique-directive-names": "error",
65
+ "@graphql-eslint/unique-directive-names-per-location": "error",
66
+ "@graphql-eslint/unique-field-definition-names": "error",
67
+ "@graphql-eslint/unique-operation-types": "error",
68
+ "@graphql-eslint/unique-type-names": "error"
69
+ }
52
70
  };
53
- module.exports = exports.default;
@@ -1,3 +1,6 @@
1
1
  import { Source } from '@graphql-tools/utils';
2
2
  import { GraphQLProjectConfig } from 'graphql-config';
3
- export declare const getDocuments: (project: GraphQLProjectConfig) => Source[];
3
+
4
+ declare const getDocuments: (project: GraphQLProjectConfig) => Source[];
5
+
6
+ export { getDocuments };
package/cjs/documents.js CHANGED
@@ -1,49 +1,80 @@
1
1
  "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getDocuments = void 0;
4
- const tslib_1 = require("tslib");
5
- const path_1 = require("path");
6
- const debug_1 = tslib_1.__importDefault(require("debug"));
7
- const fast_glob_1 = tslib_1.__importDefault(require("fast-glob"));
8
- const cache_js_1 = require("./cache.js");
9
- const debug = (0, debug_1.default)('graphql-eslint:operations');
10
- const operationsCache = new cache_js_1.ModuleCache();
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
+ }
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
+ mod
27
+ ));
28
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+ var documents_exports = {};
30
+ __export(documents_exports, {
31
+ getDocuments: () => getDocuments
32
+ });
33
+ module.exports = __toCommonJS(documents_exports);
34
+ var import_path = require("path");
35
+ var import_debug = __toESM(require("debug"));
36
+ var import_fast_glob = __toESM(require("fast-glob"));
37
+ var import_cache = require("./cache.js");
38
+ const debug = (0, import_debug.default)("graphql-eslint:operations");
39
+ const operationsCache = new import_cache.ModuleCache();
11
40
  const handleVirtualPath = (documents) => {
12
- const filepathMap = Object.create(null);
13
- return documents.map(source => {
14
- var _a;
15
- const location = source.location;
16
- if (['.gql', '.graphql'].some(extension => location.endsWith(extension))) {
17
- return source;
18
- }
19
- (_a = filepathMap[location]) !== null && _a !== void 0 ? _a : (filepathMap[location] = -1);
20
- const index = (filepathMap[location] += 1);
21
- return {
22
- ...source,
23
- location: (0, path_1.resolve)(location, `${index}_document.graphql`),
24
- };
25
- });
41
+ const filepathMap = /* @__PURE__ */ Object.create(null);
42
+ return documents.map((source) => {
43
+ const location = source.location;
44
+ if ([".gql", ".graphql"].some((extension) => location.endsWith(extension))) {
45
+ return source;
46
+ }
47
+ filepathMap[location] ??= -1;
48
+ const index = filepathMap[location] += 1;
49
+ return {
50
+ ...source,
51
+ location: (0, import_path.resolve)(location, `${index}_document.graphql`)
52
+ };
53
+ });
26
54
  };
27
55
  const getDocuments = (project) => {
28
- const documentsKey = project.documents;
29
- if (!documentsKey) {
30
- return [];
31
- }
32
- let siblings = operationsCache.get(documentsKey);
33
- if (!siblings) {
34
- debug('Loading operations from %o', project.documents);
35
- const documents = project.loadDocumentsSync(project.documents, {
36
- skipGraphQLImport: true,
37
- pluckConfig: project.extensions.pluckConfig,
38
- });
39
- if (debug.enabled) {
40
- debug('Loaded %d operations', documents.length);
41
- const operationsPaths = fast_glob_1.default.sync(project.documents, { absolute: true });
42
- debug('Operations pointers %O', operationsPaths);
43
- }
44
- siblings = handleVirtualPath(documents);
45
- operationsCache.set(documentsKey, siblings);
56
+ const documentsKey = project.documents;
57
+ if (!documentsKey) {
58
+ return [];
59
+ }
60
+ let siblings = operationsCache.get(documentsKey);
61
+ if (!siblings) {
62
+ debug("Loading operations from %o", project.documents);
63
+ const documents = project.loadDocumentsSync(project.documents, {
64
+ skipGraphQLImport: true,
65
+ pluckConfig: project.extensions.pluckConfig
66
+ });
67
+ if (debug.enabled) {
68
+ debug("Loaded %d operations", documents.length);
69
+ const operationsPaths = import_fast_glob.default.sync(project.documents, { absolute: true });
70
+ debug("Operations pointers %O", operationsPaths);
46
71
  }
47
- return siblings;
72
+ siblings = handleVirtualPath(documents);
73
+ operationsCache.set(documentsKey, siblings);
74
+ }
75
+ return siblings;
48
76
  };
49
- exports.getDocuments = getDocuments;
77
+ // Annotate the CommonJS export names for ESM import in node:
78
+ 0 && (module.exports = {
79
+ getDocuments
80
+ });
@@ -0,0 +1,8 @@
1
+ import { DocumentNode, GraphQLSchema } from 'graphql';
2
+ import { GraphQLESTreeNode } from './types.js';
3
+ import 'eslint';
4
+ import 'estree';
5
+
6
+ declare function convertToESTree<T extends DocumentNode>(node: T, schema?: GraphQLSchema | null): GraphQLESTreeNode<T>;
7
+
8
+ export { convertToESTree };
@@ -1,62 +1,83 @@
1
1
  "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.convertToESTree = void 0;
4
- const graphql_1 = require("graphql");
5
- const utils_js_1 = require("./utils.js");
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var converter_exports = {};
20
+ __export(converter_exports, {
21
+ convertToESTree: () => convertToESTree
22
+ });
23
+ module.exports = __toCommonJS(converter_exports);
24
+ var import_graphql = require("graphql");
25
+ var import_utils = require("./utils.js");
6
26
  function convertToESTree(node, schema) {
7
- const typeInfo = schema && new graphql_1.TypeInfo(schema);
8
- const visitor = {
9
- leave(node, key, parent) {
10
- const leadingComments = 'description' in node && node.description
11
- ? [
12
- {
13
- type: node.description.block ? 'Block' : 'Line',
14
- value: node.description.value,
15
- },
16
- ]
17
- : [];
18
- const calculatedTypeInfo = typeInfo
19
- ? {
20
- argument: typeInfo.getArgument(),
21
- defaultValue: typeInfo.getDefaultValue(),
22
- directive: typeInfo.getDirective(),
23
- enumValue: typeInfo.getEnumValue(),
24
- fieldDef: typeInfo.getFieldDef(),
25
- inputType: typeInfo.getInputType(),
26
- parentInputType: typeInfo.getParentInputType(),
27
- parentType: typeInfo.getParentType(),
28
- gqlType: typeInfo.getType(),
29
- }
30
- : {};
31
- const rawNode = () => {
32
- if (parent && key !== undefined) {
33
- return parent[key];
34
- }
35
- return node.kind === graphql_1.Kind.DOCUMENT
36
- ? {
37
- ...node,
38
- definitions: node.definitions.map(definition => definition.rawNode()),
39
- }
40
- : node;
41
- };
42
- const commonFields = {
43
- ...node,
44
- type: node.kind,
45
- loc: (0, utils_js_1.convertLocation)(node.loc),
46
- range: [node.loc.start, node.loc.end],
47
- leadingComments,
48
- // Use function to prevent RangeError: Maximum call stack size exceeded
49
- typeInfo: () => calculatedTypeInfo,
50
- rawNode,
51
- };
52
- return 'type' in node
53
- ? {
54
- ...commonFields,
55
- gqlType: node.type,
56
- }
57
- : commonFields;
58
- },
59
- };
60
- return (0, graphql_1.visit)(node, typeInfo ? (0, graphql_1.visitWithTypeInfo)(typeInfo, visitor) : visitor);
27
+ const typeInfo = schema && new import_graphql.TypeInfo(schema);
28
+ const visitor = {
29
+ leave(node2, key, parent) {
30
+ const leadingComments = "description" in node2 && node2.description ? [
31
+ {
32
+ type: node2.description.block ? "Block" : "Line",
33
+ value: node2.description.value
34
+ }
35
+ ] : [];
36
+ const calculatedTypeInfo = typeInfo ? {
37
+ argument: typeInfo.getArgument(),
38
+ defaultValue: typeInfo.getDefaultValue(),
39
+ directive: typeInfo.getDirective(),
40
+ enumValue: typeInfo.getEnumValue(),
41
+ fieldDef: typeInfo.getFieldDef(),
42
+ inputType: typeInfo.getInputType(),
43
+ parentInputType: typeInfo.getParentInputType(),
44
+ parentType: typeInfo.getParentType(),
45
+ gqlType: typeInfo.getType()
46
+ } : {};
47
+ const rawNode = () => {
48
+ if (parent && key !== void 0) {
49
+ return parent[key];
50
+ }
51
+ return node2.kind === import_graphql.Kind.DOCUMENT ? {
52
+ ...node2,
53
+ definitions: node2.definitions.map(
54
+ (definition) => definition.rawNode()
55
+ )
56
+ } : node2;
57
+ };
58
+ const commonFields = {
59
+ ...node2,
60
+ type: node2.kind,
61
+ loc: (0, import_utils.convertLocation)(node2.loc),
62
+ range: [node2.loc.start, node2.loc.end],
63
+ leadingComments,
64
+ // Use function to prevent RangeError: Maximum call stack size exceeded
65
+ typeInfo: () => calculatedTypeInfo,
66
+ // Don't know if can fix error
67
+ rawNode
68
+ };
69
+ return "type" in node2 ? {
70
+ ...commonFields,
71
+ gqlType: node2.type
72
+ } : commonFields;
73
+ }
74
+ };
75
+ return (0, import_graphql.visit)(
76
+ node,
77
+ typeInfo ? (0, import_graphql.visitWithTypeInfo)(typeInfo, visitor) : visitor
78
+ );
61
79
  }
62
- exports.convertToESTree = convertToESTree;
80
+ // Annotate the CommonJS export names for ESM import in node:
81
+ 0 && (module.exports = {
82
+ convertToESTree
83
+ });
@@ -0,0 +1,8 @@
1
+ export { convertToESTree } from './converter.js';
2
+ export { GraphQLESTreeNode, TypeInformation } from './types.js';
3
+ export { convertLocation, convertToken, extractComments, extractTokens, getBaseType, valueFromNode } from './utils.js';
4
+ import 'graphql';
5
+ import 'eslint';
6
+ import 'estree';
7
+ import 'graphql/jsutils/Maybe';
8
+ import 'graphql/jsutils/ObjMap';
@@ -1,6 +1,26 @@
1
1
  "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const tslib_1 = require("tslib");
4
- tslib_1.__exportStar(require("./converter.js"), exports);
5
- tslib_1.__exportStar(require("./types.js"), exports);
6
- tslib_1.__exportStar(require("./utils.js"), exports);
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __copyProps = (to, from, except, desc) => {
7
+ if (from && typeof from === "object" || typeof from === "function") {
8
+ for (let key of __getOwnPropNames(from))
9
+ if (!__hasOwnProp.call(to, key) && key !== except)
10
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
11
+ }
12
+ return to;
13
+ };
14
+ var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
15
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
16
+ var estree_converter_exports = {};
17
+ module.exports = __toCommonJS(estree_converter_exports);
18
+ __reExport(estree_converter_exports, require("./converter.js"), module.exports);
19
+ __reExport(estree_converter_exports, require("./types.js"), module.exports);
20
+ __reExport(estree_converter_exports, require("./utils.js"), module.exports);
21
+ // Annotate the CommonJS export names for ESM import in node:
22
+ 0 && (module.exports = {
23
+ ...require("./converter.js"),
24
+ ...require("./types.js"),
25
+ ...require("./utils.js")
26
+ });
@@ -1,6 +1,7 @@
1
1
  import { AST } from 'eslint';
2
- import { Comment, SourceLocation } from 'estree';
3
- import { ArgumentNode, ASTNode, DefinitionNode, DirectiveDefinitionNode, DirectiveNode, DocumentNode, EnumTypeDefinitionNode, EnumTypeExtensionNode, EnumValueDefinitionNode, ExecutableDefinitionNode, FieldDefinitionNode, FieldNode, FragmentSpreadNode, InlineFragmentNode, InputObjectTypeDefinitionNode, InputObjectTypeExtensionNode, InputValueDefinitionNode, InterfaceTypeDefinitionNode, InterfaceTypeExtensionNode, ListTypeNode, NamedTypeNode, NameNode, NonNullTypeNode, ObjectTypeDefinitionNode, ObjectTypeExtensionNode, OperationTypeDefinitionNode, SelectionNode, SelectionSetNode, TypeDefinitionNode, TypeExtensionNode, TypeInfo, TypeNode, VariableDefinitionNode, VariableNode } from 'graphql';
2
+ import { SourceLocation, Comment } from 'estree';
3
+ import { TypeInfo, ASTNode, TypeNode, DocumentNode, DefinitionNode, EnumValueDefinitionNode, EnumTypeDefinitionNode, EnumTypeExtensionNode, InputValueDefinitionNode, DirectiveDefinitionNode, FieldDefinitionNode, InputObjectTypeDefinitionNode, InputObjectTypeExtensionNode, InterfaceTypeDefinitionNode, InterfaceTypeExtensionNode, ObjectTypeDefinitionNode, ObjectTypeExtensionNode, SelectionSetNode, ExecutableDefinitionNode, FieldNode, InlineFragmentNode, SelectionNode, NameNode, DirectiveNode, VariableNode, VariableDefinitionNode, ArgumentNode, FragmentSpreadNode, NamedTypeNode, TypeDefinitionNode, TypeExtensionNode, ListTypeNode, NonNullTypeNode, OperationTypeDefinitionNode } from 'graphql';
4
+
4
5
  type SafeGraphQLType<T extends ASTNode> = T extends {
5
6
  type: TypeNode;
6
7
  } ? Omit<T, 'loc' | 'type'> & {
@@ -9,7 +10,7 @@ type SafeGraphQLType<T extends ASTNode> = T extends {
9
10
  type Writeable<T> = {
10
11
  -readonly [K in keyof T]: T[K];
11
12
  };
12
- export type TypeInformation = {
13
+ type TypeInformation = {
13
14
  argument: ReturnType<TypeInfo['getArgument']>;
14
15
  defaultValue: ReturnType<TypeInfo['getDefaultValue']>;
15
16
  directive: ReturnType<TypeInfo['getDirective']>;
@@ -32,9 +33,10 @@ type Node<T extends ASTNode, WithTypeInfo extends boolean> = Writeable<SafeGraph
32
33
  rawNode: () => T;
33
34
  parent: GraphQLESTreeNode<ParentNode<T>>;
34
35
  };
35
- export type GraphQLESTreeNode<T, W extends boolean = false> = T extends ASTNode ? {
36
+ type GraphQLESTreeNode<T, W extends boolean = false> = T extends ASTNode ? {
36
37
  [K in keyof Node<T, W>]: Node<T, W>[K] extends ReadonlyArray<infer ArrayItem> | undefined ? GraphQLESTreeNode<ArrayItem, W>[] : GraphQLESTreeNode<Node<T, W>[K], W>;
37
38
  } : T extends AST.Program ? T & {
38
39
  parent: null;
39
40
  } : T;
40
- export {};
41
+
42
+ export { GraphQLESTreeNode, TypeInformation };
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __copyProps = (to, from, except, desc) => {
7
+ if (from && typeof from === "object" || typeof from === "function") {
8
+ for (let key of __getOwnPropNames(from))
9
+ if (!__hasOwnProp.call(to, key) && key !== except)
10
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
11
+ }
12
+ return to;
13
+ };
14
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
15
+ var types_exports = {};
16
+ module.exports = __toCommonJS(types_exports);
@@ -0,0 +1,18 @@
1
+ import * as graphql_jsutils_Maybe from 'graphql/jsutils/Maybe';
2
+ import * as graphql_jsutils_ObjMap from 'graphql/jsutils/ObjMap';
3
+ import * as graphql from 'graphql';
4
+ import { GraphQLOutputType, GraphQLNamedType, Token, Location } from 'graphql';
5
+ import { AST } from 'eslint';
6
+ import { Comment, SourceLocation } from 'estree';
7
+
8
+ declare const valueFromNode: (valueNode: graphql.ValueNode, variables?: graphql_jsutils_Maybe.Maybe<graphql_jsutils_ObjMap.ObjMap<unknown>>) => any;
9
+ declare function getBaseType(type: GraphQLOutputType): GraphQLNamedType;
10
+ type TokenKindValue = ':' | '!' | '...' | '(' | ')' | '[' | ']' | '{' | '}' | '@' | '&' | '<SOF>' | '=' | '|' | '$' | 'BlockString' | 'Comment' | 'Float' | 'Int' | 'Name' | 'String';
11
+ declare function convertToken<T extends TokenKindValue | 'Block' | 'Line'>(token: Token, type: T): Omit<AST.Token, 'type'> & {
12
+ type: T;
13
+ };
14
+ declare function extractTokens(filePath: string, code: string): AST.Token[];
15
+ declare function extractComments(loc?: Location): Comment[];
16
+ declare function convertLocation(location: Location): SourceLocation;
17
+
18
+ export { convertLocation, convertToken, extractComments, extractTokens, getBaseType, valueFromNode };