@graphql-eslint/eslint-plugin 4.0.0-alpha.1 → 4.0.0-alpha.11

Sign up to get free protection for your applications and to get access to all the features.
Files changed (266) hide show
  1. package/README.md +2 -0
  2. package/{esm/cache.d.mts → cjs/cache.d.cts} +1 -1
  3. package/cjs/cache.js +8 -36
  4. package/cjs/chunk-UIAXBAMD.js +8 -0
  5. package/cjs/configs/index.d.cts +24 -0
  6. package/cjs/configs/index.js +35 -38
  7. package/cjs/configs/operations-all.js +33 -26
  8. package/cjs/configs/operations-recommended.js +59 -52
  9. package/cjs/configs/schema-all.js +29 -22
  10. package/cjs/configs/schema-recommended.js +73 -66
  11. package/cjs/configs/schema-relay.js +17 -10
  12. package/cjs/documents.js +18 -38
  13. package/{esm/estree-converter/converter.d.mts → cjs/estree-converter/converter.d.cts} +1 -1
  14. package/cjs/estree-converter/converter.js +16 -30
  15. package/cjs/estree-converter/index.d.cts +8 -0
  16. package/cjs/estree-converter/index.js +3 -23
  17. package/cjs/estree-converter/types.js +1 -14
  18. package/{esm/estree-converter/utils.d.mts → cjs/estree-converter/utils.d.cts} +3 -3
  19. package/cjs/estree-converter/utils.js +22 -40
  20. package/{esm/graphql-config.d.mts → cjs/graphql-config.d.cts} +3 -3
  21. package/cjs/graphql-config.js +16 -42
  22. package/cjs/index.d.cts +186 -0
  23. package/cjs/index.js +24 -41
  24. package/cjs/meta.d.cts +3 -0
  25. package/cjs/meta.js +5 -0
  26. package/cjs/package.json +1 -0
  27. package/{esm/parser.d.mts → cjs/parser.d.cts} +11 -4
  28. package/cjs/parser.js +35 -46
  29. package/{esm/processor.d.mts → cjs/processor.d.cts} +4 -0
  30. package/cjs/processor.js +25 -34
  31. package/{esm/rules/alphabetize.d.mts → cjs/rules/alphabetize/index.d.cts} +4 -4
  32. package/cjs/rules/{alphabetize.js → alphabetize/index.js} +69 -77
  33. package/{esm/rules/description-style.d.mts → cjs/rules/description-style/index.d.cts} +3 -3
  34. package/cjs/rules/{description-style.js → description-style/index.js} +7 -27
  35. package/{esm/rules/graphql-js-validation.d.mts → cjs/rules/graphql-js-validation.d.cts} +3 -3
  36. package/cjs/rules/graphql-js-validation.js +93 -70
  37. package/cjs/rules/{index.d.ts → index.d.cts} +17 -15
  38. package/cjs/rules/index.js +74 -60
  39. package/cjs/rules/{input-name.d.ts → input-name/index.d.cts} +6 -4
  40. package/cjs/rules/{input-name.js → input-name/index.js} +10 -28
  41. package/cjs/rules/{lone-executable-definition.d.ts → lone-executable-definition/index.d.cts} +3 -3
  42. package/cjs/rules/{lone-executable-definition.js → lone-executable-definition/index.js} +13 -32
  43. package/cjs/rules/{match-document-filename.d.ts → match-document-filename/index.d.cts} +4 -4
  44. package/cjs/rules/{match-document-filename.js → match-document-filename/index.js} +21 -35
  45. package/{esm/rules/naming-convention.d.mts → cjs/rules/naming-convention/index.d.cts} +6 -4
  46. package/cjs/rules/{naming-convention.js → naming-convention/index.js} +41 -54
  47. package/cjs/rules/no-anonymous-operations/index.d.cts +13 -0
  48. package/cjs/rules/{no-anonymous-operations.js → no-anonymous-operations/index.js} +9 -28
  49. package/{esm/rules/no-deprecated.d.mts → cjs/rules/no-deprecated/index.d.cts} +3 -3
  50. package/cjs/rules/{no-deprecated.js → no-deprecated/index.js} +11 -30
  51. package/cjs/rules/no-duplicate-fields/index.d.cts +13 -0
  52. package/cjs/rules/{no-duplicate-fields.js → no-duplicate-fields/index.js} +8 -28
  53. package/cjs/rules/{no-hashtag-description.d.ts → no-hashtag-description/index.d.cts} +3 -3
  54. package/cjs/rules/{no-hashtag-description.js → no-hashtag-description/index.js} +11 -31
  55. package/cjs/rules/no-one-place-fragments/index.d.cts +13 -0
  56. package/cjs/rules/{no-one-place-fragments.js → no-one-place-fragments/index.js} +11 -29
  57. package/cjs/rules/{no-root-type.d.ts → no-root-type/index.d.cts} +3 -3
  58. package/cjs/rules/{no-root-type.js → no-root-type/index.js} +9 -29
  59. package/cjs/rules/no-scalar-result-type-on-mutation/index.d.cts +13 -0
  60. package/cjs/rules/no-scalar-result-type-on-mutation/index.js +69 -0
  61. package/cjs/rules/no-typename-prefix/index.d.cts +13 -0
  62. package/cjs/rules/{no-typename-prefix.js → no-typename-prefix/index.js} +5 -25
  63. package/cjs/rules/no-unreachable-types/index.d.cts +13 -0
  64. package/cjs/rules/no-unreachable-types/index.js +155 -0
  65. package/cjs/rules/no-unused-fields/index.d.cts +34 -0
  66. package/cjs/rules/no-unused-fields/index.js +224 -0
  67. package/{esm/rules/relay-arguments.d.mts → cjs/rules/relay-arguments/index.d.cts} +3 -3
  68. package/cjs/rules/{relay-arguments.js → relay-arguments/index.js} +11 -30
  69. package/{esm/rules/relay-connection-types.d.mts → cjs/rules/relay-connection-types/index.d.cts} +3 -3
  70. package/cjs/rules/{relay-connection-types.js → relay-connection-types/index.js} +19 -40
  71. package/cjs/rules/{relay-edge-types.d.ts → relay-edge-types/index.d.cts} +6 -4
  72. package/cjs/rules/{relay-edge-types.js → relay-edge-types/index.js} +31 -44
  73. package/cjs/rules/relay-page-info/index.d.cts +13 -0
  74. package/cjs/rules/{relay-page-info.js → relay-page-info/index.js} +13 -31
  75. package/{esm/rules/require-deprecation-date.d.mts → cjs/rules/require-deprecation-date/index.d.cts} +3 -3
  76. package/cjs/rules/{require-deprecation-date.js → require-deprecation-date/index.js} +13 -32
  77. package/cjs/rules/require-deprecation-reason/index.d.cts +13 -0
  78. package/cjs/rules/require-deprecation-reason/index.js +66 -0
  79. package/{esm/rules/require-description.d.mts → cjs/rules/require-description/index.d.cts} +3 -3
  80. package/cjs/rules/{require-description.js → require-description/index.js} +30 -44
  81. package/cjs/rules/require-field-of-type-query-in-mutation-result/index.d.cts +13 -0
  82. package/cjs/rules/{require-field-of-type-query-in-mutation-result.js → require-field-of-type-query-in-mutation-result/index.js} +10 -29
  83. package/cjs/rules/require-import-fragment/index.d.cts +13 -0
  84. package/cjs/rules/{require-import-fragment.js → require-import-fragment/index.js} +16 -38
  85. package/cjs/rules/require-nullable-fields-with-oneof/index.d.cts +13 -0
  86. package/cjs/rules/require-nullable-fields-with-oneof/index.js +62 -0
  87. package/cjs/rules/require-nullable-result-in-root/index.d.cts +13 -0
  88. package/cjs/rules/{require-nullable-result-in-root.js → require-nullable-result-in-root/index.js} +12 -31
  89. package/{esm/rules/require-selections.d.mts → cjs/rules/require-selections/index.d.cts} +3 -3
  90. package/cjs/rules/{require-selections.js → require-selections/index.js} +47 -45
  91. package/cjs/rules/require-type-pattern-with-oneof/index.d.cts +13 -0
  92. package/cjs/rules/require-type-pattern-with-oneof/index.js +63 -0
  93. package/{esm/rules/selection-set-depth.d.mts → cjs/rules/selection-set-depth/index.d.cts} +3 -3
  94. package/cjs/rules/{selection-set-depth.js → selection-set-depth/index.js} +16 -42
  95. package/cjs/rules/{strict-id-in-types.d.ts → strict-id-in-types/index.d.cts} +6 -4
  96. package/cjs/rules/{strict-id-in-types.js → strict-id-in-types/index.js} +26 -39
  97. package/cjs/rules/unique-enum-value-names/index.d.cts +13 -0
  98. package/cjs/rules/{unique-enum-value-names.js → unique-enum-value-names/index.js} +10 -29
  99. package/{esm/rules/unique-fragment-name.d.mts → cjs/rules/unique-fragment-name/index.d.cts} +3 -3
  100. package/cjs/rules/unique-fragment-name/index.js +87 -0
  101. package/cjs/rules/unique-operation-name/index.d.cts +13 -0
  102. package/cjs/rules/{unique-operation-name.js → unique-operation-name/index.js} +7 -27
  103. package/{esm/schema.d.mts → cjs/schema.d.cts} +3 -3
  104. package/cjs/schema.js +11 -36
  105. package/cjs/siblings.js +17 -33
  106. package/{esm/types.d.mts → cjs/types.d.cts} +2 -2
  107. package/cjs/types.js +1 -14
  108. package/{esm/utils.d.mts → cjs/utils.d.cts} +5 -5
  109. package/cjs/utils.js +94 -115
  110. package/{cjs → esm}/cache.d.ts +1 -1
  111. package/esm/configs/index.d.ts +24 -0
  112. package/esm/configs/index.js +22 -1
  113. package/esm/configs/operations-all.js +1 -1
  114. package/esm/documents.js +8 -3
  115. package/{cjs → esm}/estree-converter/index.d.ts +2 -2
  116. package/{cjs → esm}/estree-converter/utils.d.ts +3 -3
  117. package/esm/graphql-config.js +1 -1
  118. package/esm/index.d.ts +186 -0
  119. package/esm/index.js +10 -4
  120. package/esm/meta.d.ts +3 -0
  121. package/esm/meta.js +5 -0
  122. package/{cjs → esm}/parser.d.ts +8 -1
  123. package/esm/parser.js +10 -1
  124. package/{cjs → esm}/processor.d.ts +4 -0
  125. package/esm/processor.js +5 -0
  126. package/{cjs/rules/alphabetize.d.ts → esm/rules/alphabetize/index.d.ts} +5 -5
  127. package/esm/rules/{alphabetize.js → alphabetize/index.js} +26 -10
  128. package/{cjs/rules/description-style.d.ts → esm/rules/description-style/index.d.ts} +3 -3
  129. package/esm/rules/{description-style.js → description-style/index.js} +2 -2
  130. package/esm/rules/{index.d.mts → index.d.ts} +11 -9
  131. package/esm/rules/index.js +34 -34
  132. package/esm/rules/{input-name.d.mts → input-name/index.d.ts} +6 -4
  133. package/esm/rules/{input-name.js → input-name/index.js} +1 -1
  134. package/esm/rules/{lone-executable-definition.d.mts → lone-executable-definition/index.d.ts} +3 -3
  135. package/esm/rules/{lone-executable-definition.js → lone-executable-definition/index.js} +2 -2
  136. package/esm/rules/{match-document-filename.d.mts → match-document-filename/index.d.ts} +4 -4
  137. package/esm/rules/{match-document-filename.js → match-document-filename/index.js} +4 -4
  138. package/{cjs/rules/naming-convention.d.ts → esm/rules/naming-convention/index.d.ts} +6 -4
  139. package/esm/rules/{naming-convention.js → naming-convention/index.js} +2 -2
  140. package/{cjs/rules/no-one-place-fragments.d.ts → esm/rules/no-anonymous-operations/index.d.ts} +3 -3
  141. package/esm/rules/{no-anonymous-operations.js → no-anonymous-operations/index.js} +2 -2
  142. package/{cjs/rules/no-deprecated.d.ts → esm/rules/no-deprecated/index.d.ts} +3 -3
  143. package/esm/rules/{no-deprecated.js → no-deprecated/index.js} +2 -2
  144. package/{cjs/rules/no-scalar-result-type-on-mutation.d.ts → esm/rules/no-duplicate-fields/index.d.ts} +3 -3
  145. package/esm/rules/{no-duplicate-fields.js → no-duplicate-fields/index.js} +1 -1
  146. package/esm/rules/{no-hashtag-description.d.mts → no-hashtag-description/index.d.ts} +3 -3
  147. package/esm/rules/{no-hashtag-description.js → no-hashtag-description/index.js} +2 -2
  148. package/{cjs/rules/no-anonymous-operations.d.ts → esm/rules/no-one-place-fragments/index.d.ts} +3 -3
  149. package/esm/rules/{no-one-place-fragments.js → no-one-place-fragments/index.js} +2 -2
  150. package/esm/rules/{no-root-type.d.mts → no-root-type/index.d.ts} +3 -3
  151. package/esm/rules/{no-root-type.js → no-root-type/index.js} +2 -2
  152. package/{cjs/rules/no-duplicate-fields.d.ts → esm/rules/no-scalar-result-type-on-mutation/index.d.ts} +3 -3
  153. package/esm/rules/{no-scalar-result-type-on-mutation.js → no-scalar-result-type-on-mutation/index.js} +2 -2
  154. package/esm/rules/no-typename-prefix/index.d.ts +13 -0
  155. package/esm/rules/{no-typename-prefix.js → no-typename-prefix/index.js} +1 -1
  156. package/esm/rules/no-unreachable-types/index.d.ts +13 -0
  157. package/esm/rules/{no-unreachable-types.js → no-unreachable-types/index.js} +8 -8
  158. package/esm/rules/no-unused-fields/index.d.ts +34 -0
  159. package/esm/rules/no-unused-fields/index.js +224 -0
  160. package/{cjs/rules/relay-arguments.d.ts → esm/rules/relay-arguments/index.d.ts} +3 -3
  161. package/esm/rules/{relay-arguments.js → relay-arguments/index.js} +2 -2
  162. package/{cjs/rules/relay-connection-types.d.ts → esm/rules/relay-connection-types/index.d.ts} +3 -3
  163. package/esm/rules/{relay-connection-types.js → relay-connection-types/index.js} +1 -1
  164. package/esm/rules/{relay-edge-types.d.mts → relay-edge-types/index.d.ts} +6 -4
  165. package/esm/rules/{relay-edge-types.js → relay-edge-types/index.js} +3 -3
  166. package/esm/rules/relay-page-info/index.d.ts +13 -0
  167. package/esm/rules/{relay-page-info.js → relay-page-info/index.js} +4 -4
  168. package/{cjs/rules/require-deprecation-date.d.ts → esm/rules/require-deprecation-date/index.d.ts} +3 -3
  169. package/esm/rules/{require-deprecation-date.js → require-deprecation-date/index.js} +3 -3
  170. package/esm/rules/require-deprecation-reason/index.d.ts +13 -0
  171. package/esm/rules/{require-deprecation-reason.js → require-deprecation-reason/index.js} +3 -3
  172. package/{cjs/rules/require-description.d.ts → esm/rules/require-description/index.d.ts} +3 -3
  173. package/esm/rules/{require-description.js → require-description/index.js} +2 -2
  174. package/esm/rules/require-field-of-type-query-in-mutation-result/index.d.ts +13 -0
  175. package/esm/rules/{require-field-of-type-query-in-mutation-result.js → require-field-of-type-query-in-mutation-result/index.js} +2 -2
  176. package/esm/rules/require-import-fragment/index.d.ts +13 -0
  177. package/esm/rules/{require-import-fragment.js → require-import-fragment/index.js} +9 -4
  178. package/esm/rules/require-nullable-fields-with-oneof/index.d.ts +13 -0
  179. package/esm/rules/{require-nullable-fields-with-oneof.js → require-nullable-fields-with-oneof/index.js} +2 -2
  180. package/esm/rules/require-nullable-result-in-root/index.d.ts +13 -0
  181. package/esm/rules/{require-nullable-result-in-root.js → require-nullable-result-in-root/index.js} +2 -2
  182. package/{cjs/rules/require-selections.d.ts → esm/rules/require-selections/index.d.ts} +3 -3
  183. package/esm/rules/{require-selections.js → require-selections/index.js} +13 -7
  184. package/esm/rules/require-type-pattern-with-oneof/index.d.ts +13 -0
  185. package/esm/rules/{require-type-pattern-with-oneof.js → require-type-pattern-with-oneof/index.js} +2 -2
  186. package/{cjs/rules/selection-set-depth.d.ts → esm/rules/selection-set-depth/index.d.ts} +3 -3
  187. package/esm/rules/{selection-set-depth.js → selection-set-depth/index.js} +3 -3
  188. package/esm/rules/{strict-id-in-types.d.mts → strict-id-in-types/index.d.ts} +6 -4
  189. package/esm/rules/{strict-id-in-types.js → strict-id-in-types/index.js} +2 -2
  190. package/esm/rules/unique-enum-value-names/index.d.ts +13 -0
  191. package/esm/rules/{unique-enum-value-names.js → unique-enum-value-names/index.js} +2 -2
  192. package/{cjs/rules/unique-fragment-name.d.ts → esm/rules/unique-fragment-name/index.d.ts} +3 -3
  193. package/esm/rules/{unique-fragment-name.js → unique-fragment-name/index.js} +3 -3
  194. package/esm/rules/unique-operation-name/index.d.ts +13 -0
  195. package/esm/rules/{unique-operation-name.js → unique-operation-name/index.js} +2 -2
  196. package/{cjs → esm}/utils.d.ts +2 -2
  197. package/esm/utils.js +39 -16
  198. package/{index.browser.mjs → index.browser.js} +352 -181
  199. package/package.json +7 -11
  200. package/cjs/configs/index.d.ts +0 -174
  201. package/cjs/flat-configs.d.ts +0 -307
  202. package/cjs/flat-configs.js +0 -55
  203. package/cjs/index.d.ts +0 -26
  204. package/cjs/rules/no-scalar-result-type-on-mutation.js +0 -88
  205. package/cjs/rules/no-typename-prefix.d.ts +0 -13
  206. package/cjs/rules/no-unreachable-types.d.ts +0 -13
  207. package/cjs/rules/no-unreachable-types.js +0 -176
  208. package/cjs/rules/no-unused-fields.d.ts +0 -13
  209. package/cjs/rules/no-unused-fields.js +0 -132
  210. package/cjs/rules/relay-page-info.d.ts +0 -13
  211. package/cjs/rules/require-deprecation-reason.d.ts +0 -13
  212. package/cjs/rules/require-deprecation-reason.js +0 -85
  213. package/cjs/rules/require-field-of-type-query-in-mutation-result.d.ts +0 -13
  214. package/cjs/rules/require-import-fragment.d.ts +0 -13
  215. package/cjs/rules/require-nullable-fields-with-oneof.d.ts +0 -13
  216. package/cjs/rules/require-nullable-fields-with-oneof.js +0 -81
  217. package/cjs/rules/require-nullable-result-in-root.d.ts +0 -13
  218. package/cjs/rules/require-type-pattern-with-oneof.d.ts +0 -13
  219. package/cjs/rules/require-type-pattern-with-oneof.js +0 -83
  220. package/cjs/rules/unique-enum-value-names.d.ts +0 -13
  221. package/cjs/rules/unique-fragment-name.js +0 -106
  222. package/cjs/rules/unique-operation-name.d.ts +0 -13
  223. package/esm/configs/index.d.mts +0 -174
  224. package/esm/estree-converter/index.d.mts +0 -8
  225. package/esm/flat-configs.d.mts +0 -307
  226. package/esm/flat-configs.js +0 -36
  227. package/esm/index.d.mts +0 -26
  228. package/esm/package.json +0 -1
  229. package/esm/rules/no-anonymous-operations.d.mts +0 -13
  230. package/esm/rules/no-duplicate-fields.d.mts +0 -13
  231. package/esm/rules/no-one-place-fragments.d.mts +0 -13
  232. package/esm/rules/no-scalar-result-type-on-mutation.d.mts +0 -13
  233. package/esm/rules/no-typename-prefix.d.mts +0 -13
  234. package/esm/rules/no-unreachable-types.d.mts +0 -13
  235. package/esm/rules/no-unused-fields.d.mts +0 -13
  236. package/esm/rules/no-unused-fields.js +0 -113
  237. package/esm/rules/relay-page-info.d.mts +0 -13
  238. package/esm/rules/require-deprecation-reason.d.mts +0 -13
  239. package/esm/rules/require-field-of-type-query-in-mutation-result.d.mts +0 -13
  240. package/esm/rules/require-import-fragment.d.mts +0 -13
  241. package/esm/rules/require-nullable-fields-with-oneof.d.mts +0 -13
  242. package/esm/rules/require-nullable-result-in-root.d.mts +0 -13
  243. package/esm/rules/require-type-pattern-with-oneof.d.mts +0 -13
  244. package/esm/rules/unique-enum-value-names.d.mts +0 -13
  245. package/esm/rules/unique-operation-name.d.mts +0 -13
  246. /package/cjs/configs/{operations-all.d.ts → operations-all.d.cts} +0 -0
  247. /package/cjs/configs/{operations-recommended.d.ts → operations-recommended.d.cts} +0 -0
  248. /package/cjs/configs/{schema-all.d.ts → schema-all.d.cts} +0 -0
  249. /package/cjs/configs/{schema-recommended.d.ts → schema-recommended.d.cts} +0 -0
  250. /package/cjs/configs/{schema-relay.d.ts → schema-relay.d.cts} +0 -0
  251. /package/cjs/{documents.d.ts → documents.d.cts} +0 -0
  252. /package/cjs/estree-converter/{types.d.ts → types.d.cts} +0 -0
  253. /package/cjs/{siblings.d.ts → siblings.d.cts} +0 -0
  254. /package/esm/configs/{operations-all.d.mts → operations-all.d.ts} +0 -0
  255. /package/esm/configs/{operations-recommended.d.mts → operations-recommended.d.ts} +0 -0
  256. /package/esm/configs/{schema-all.d.mts → schema-all.d.ts} +0 -0
  257. /package/esm/configs/{schema-recommended.d.mts → schema-recommended.d.ts} +0 -0
  258. /package/esm/configs/{schema-relay.d.mts → schema-relay.d.ts} +0 -0
  259. /package/esm/{documents.d.mts → documents.d.ts} +0 -0
  260. /package/{cjs → esm}/estree-converter/converter.d.ts +0 -0
  261. /package/esm/estree-converter/{types.d.mts → types.d.ts} +0 -0
  262. /package/{cjs → esm}/graphql-config.d.ts +0 -0
  263. /package/{cjs → esm}/rules/graphql-js-validation.d.ts +0 -0
  264. /package/{cjs → esm}/schema.d.ts +0 -0
  265. /package/esm/{siblings.d.mts → siblings.d.ts} +0 -0
  266. /package/{cjs → esm}/types.d.ts +0 -0
package/esm/index.d.ts ADDED
@@ -0,0 +1,186 @@
1
+ import { RuleOptions } from './rules/require-description/index.js';
2
+ import { CaseStyle } from './utils.js';
3
+ export { requireGraphQLSchemaFromContext, requireSiblingsOperations } from './utils.js';
4
+ import * as graphql from 'graphql';
5
+ import { GraphQLESLintRule } from './types.js';
6
+ export { CategoryType, ConfigName, GraphQLESLintParseResult, GraphQLESLintRuleContext, GraphQLESLintRuleListener, OmitRecursively, ParserOptions, ParserServices, Pointer, ReportDescriptor, RuleDocsInfo, Schema, ValueOf } from './types.js';
7
+ import * as eslint from 'eslint';
8
+ import { Block } from './processor.js';
9
+ export { configs } from './configs/index.js';
10
+ import { parseForESLint } from './parser.js';
11
+ export { parser } from './parser.js';
12
+ export { rules } from './rules/index.js';
13
+ export { GraphQLESTreeNode } from './estree-converter/types.js';
14
+ import 'estree';
15
+ import './siblings.js';
16
+ import '@graphql-tools/utils';
17
+ import 'graphql-config';
18
+ import 'json-schema-to-ts';
19
+
20
+ declare const processors: {
21
+ graphql: {
22
+ meta: {
23
+ name: string;
24
+ version: string | undefined;
25
+ };
26
+ supportsAutofix: true;
27
+ preprocess(code: string, filePath: string): (string | Block)[];
28
+ postprocess(messages: eslint.Linter.LintMessage[][], filePath: string): eslint.Linter.LintMessage[];
29
+ };
30
+ };
31
+
32
+ declare const _default: {
33
+ parser: {
34
+ parseForESLint: typeof parseForESLint;
35
+ meta: {
36
+ name: string;
37
+ version: string | undefined;
38
+ };
39
+ };
40
+ processor: {
41
+ meta: {
42
+ name: string;
43
+ version: string | undefined;
44
+ };
45
+ supportsAutofix: true;
46
+ preprocess(code: string, filePath: string): (string | Block)[];
47
+ postprocess(messages: eslint.Linter.LintMessage[][], filePath: string): eslint.Linter.LintMessage[];
48
+ };
49
+ rules: {
50
+ alphabetize: GraphQLESLintRule<{
51
+ definitions?: boolean | undefined;
52
+ selections?: ("OperationDefinition" | "FragmentDefinition")[] | undefined;
53
+ arguments?: ("Field" | "Directive" | "FieldDefinition" | "DirectiveDefinition")[] | undefined;
54
+ values?: boolean | undefined;
55
+ fields?: ("ObjectTypeDefinition" | "InterfaceTypeDefinition" | "InputObjectTypeDefinition")[] | undefined;
56
+ variables?: boolean | undefined;
57
+ groups?: string[] | undefined;
58
+ }[]>;
59
+ 'description-style': GraphQLESLintRule<{
60
+ style: "block" | "inline";
61
+ }[]>;
62
+ 'input-name': GraphQLESLintRule<{
63
+ checkInputType?: boolean | undefined;
64
+ caseSensitiveInputType?: boolean | undefined;
65
+ checkQueries?: boolean | undefined;
66
+ checkMutations?: boolean | undefined;
67
+ }[]>;
68
+ 'lone-executable-definition': GraphQLESLintRule<{
69
+ ignore?: (graphql.OperationTypeNode | "fragment")[] | undefined;
70
+ }[]>;
71
+ 'match-document-filename': GraphQLESLintRule<{
72
+ fragment?: (CaseStyle | "matchDocumentStyle") | {
73
+ style?: (CaseStyle | "matchDocumentStyle") | undefined;
74
+ suffix?: string | undefined;
75
+ prefix?: string | undefined;
76
+ } | undefined;
77
+ mutation?: (CaseStyle | "matchDocumentStyle") | {
78
+ style?: (CaseStyle | "matchDocumentStyle") | undefined;
79
+ suffix?: string | undefined;
80
+ prefix?: string | undefined;
81
+ } | undefined;
82
+ subscription?: (CaseStyle | "matchDocumentStyle") | {
83
+ style?: (CaseStyle | "matchDocumentStyle") | undefined;
84
+ suffix?: string | undefined;
85
+ prefix?: string | undefined;
86
+ } | undefined;
87
+ query?: (CaseStyle | "matchDocumentStyle") | {
88
+ style?: (CaseStyle | "matchDocumentStyle") | undefined;
89
+ suffix?: string | undefined;
90
+ prefix?: string | undefined;
91
+ } | undefined;
92
+ fileExtension?: ".gql" | ".graphql" | undefined;
93
+ }[]>;
94
+ 'naming-convention': GraphQLESLintRule<{
95
+ [x: string]: unknown;
96
+ types?: ("camelCase" | "PascalCase" | "snake_case" | "UPPER_CASE") | {
97
+ style?: ("camelCase" | "PascalCase" | "snake_case" | "UPPER_CASE") | undefined;
98
+ suffix?: string | undefined;
99
+ prefix?: string | undefined;
100
+ forbiddenPrefixes?: string[] | undefined;
101
+ forbiddenSuffixes?: string[] | undefined;
102
+ requiredPrefixes?: string[] | undefined;
103
+ requiredSuffixes?: string[] | undefined;
104
+ ignorePattern?: string | undefined;
105
+ } | undefined;
106
+ allowLeadingUnderscore?: boolean | undefined;
107
+ allowTrailingUnderscore?: boolean | undefined;
108
+ }[]>;
109
+ 'no-anonymous-operations': GraphQLESLintRule;
110
+ 'no-deprecated': GraphQLESLintRule<[], true>;
111
+ 'no-duplicate-fields': GraphQLESLintRule;
112
+ 'no-hashtag-description': GraphQLESLintRule;
113
+ 'no-one-place-fragments': GraphQLESLintRule;
114
+ 'no-root-type': GraphQLESLintRule<{
115
+ disallow: ("mutation" | "subscription")[];
116
+ }[]>;
117
+ 'no-scalar-result-type-on-mutation': GraphQLESLintRule;
118
+ 'no-typename-prefix': GraphQLESLintRule;
119
+ 'no-unreachable-types': GraphQLESLintRule;
120
+ 'no-unused-fields': GraphQLESLintRule<{
121
+ ignoredFieldSelectors?: string[] | undefined;
122
+ }[]>;
123
+ 'relay-arguments': GraphQLESLintRule<{
124
+ includeBoth: boolean;
125
+ }[], true>;
126
+ 'relay-connection-types': GraphQLESLintRule;
127
+ 'relay-edge-types': GraphQLESLintRule<{
128
+ withEdgeSuffix?: boolean | undefined;
129
+ shouldImplementNode?: boolean | undefined;
130
+ listTypeCanWrapOnlyEdgeType?: boolean | undefined;
131
+ }[], true>;
132
+ 'relay-page-info': GraphQLESLintRule;
133
+ 'require-deprecation-date': GraphQLESLintRule<{
134
+ argumentName?: string | undefined;
135
+ }[]>;
136
+ 'require-deprecation-reason': GraphQLESLintRule;
137
+ 'require-description': GraphQLESLintRule<RuleOptions>;
138
+ 'require-field-of-type-query-in-mutation-result': GraphQLESLintRule;
139
+ 'require-import-fragment': GraphQLESLintRule;
140
+ 'require-nullable-fields-with-oneof': GraphQLESLintRule;
141
+ 'require-nullable-result-in-root': GraphQLESLintRule;
142
+ 'require-selections': GraphQLESLintRule<{
143
+ fieldName: string | string[];
144
+ }[], true>;
145
+ 'require-type-pattern-with-oneof': GraphQLESLintRule;
146
+ 'selection-set-depth': GraphQLESLintRule<{
147
+ ignore?: string[] | undefined;
148
+ maxDepth: number;
149
+ }[]>;
150
+ 'strict-id-in-types': GraphQLESLintRule<{
151
+ acceptedIdNames?: string[] | undefined;
152
+ acceptedIdTypes?: string[] | undefined;
153
+ exceptions?: {
154
+ types?: string[] | undefined;
155
+ suffixes?: string[] | undefined;
156
+ } | undefined;
157
+ }[]>;
158
+ 'unique-enum-value-names': GraphQLESLintRule;
159
+ 'unique-fragment-name': GraphQLESLintRule;
160
+ 'unique-operation-name': GraphQLESLintRule;
161
+ };
162
+ configs: {
163
+ 'schema-recommended': any;
164
+ 'schema-all': any;
165
+ 'schema-relay': any;
166
+ 'operations-recommended': any;
167
+ 'operations-all': any;
168
+ 'flat/schema-recommended': {
169
+ rules: any;
170
+ };
171
+ 'flat/schema-all': {
172
+ rules: any;
173
+ };
174
+ 'flat/schema-relay': {
175
+ rules: any;
176
+ };
177
+ 'flat/operations-recommended': {
178
+ rules: any;
179
+ };
180
+ 'flat/operations-all': {
181
+ rules: any;
182
+ };
183
+ };
184
+ };
185
+
186
+ export { GraphQLESLintRule, _default as default, parseForESLint, processors };
package/esm/index.js CHANGED
@@ -1,16 +1,22 @@
1
1
  import "./chunk-UIAXBAMD.js";
2
+ import { configs } from "./configs/index.js";
3
+ import { parseForESLint, parser } from "./parser.js";
2
4
  import { processor } from "./processor.js";
3
- import { parseForESLint } from "./parser.js";
4
5
  import { rules } from "./rules/index.js";
5
6
  export * from "./types.js";
6
7
  import { requireGraphQLSchemaFromContext, requireSiblingsOperations } from "./utils.js";
7
8
  const processors = { graphql: processor };
8
- import { configs } from "./configs/index.js";
9
- import { flatConfigs } from "./flat-configs.js";
9
+ var src_default = {
10
+ parser,
11
+ processor,
12
+ rules,
13
+ configs
14
+ };
10
15
  export {
11
16
  configs,
12
- flatConfigs,
17
+ src_default as default,
13
18
  parseForESLint,
19
+ parser,
14
20
  processors,
15
21
  requireGraphQLSchemaFromContext,
16
22
  requireSiblingsOperations,
package/esm/meta.d.ts ADDED
@@ -0,0 +1,3 @@
1
+ declare const version: string | undefined;
2
+
3
+ export { version };
package/esm/meta.js ADDED
@@ -0,0 +1,5 @@
1
+ import "./chunk-UIAXBAMD.js";
2
+ const version = "4.0.0-alpha.11";
3
+ export {
4
+ version
5
+ };
@@ -9,5 +9,12 @@ import './siblings.js';
9
9
  import '@graphql-tools/utils';
10
10
 
11
11
  declare function parseForESLint(code: string, options: ParserOptions): GraphQLESLintParseResult;
12
+ declare const parser: {
13
+ parseForESLint: typeof parseForESLint;
14
+ meta: {
15
+ name: string;
16
+ version: string | undefined;
17
+ };
18
+ };
12
19
 
13
- export { parseForESLint };
20
+ export { parseForESLint, parser };
package/esm/parser.js CHANGED
@@ -5,6 +5,7 @@ import { parseGraphQLSDL } from "@graphql-tools/utils";
5
5
  import { getDocuments } from "./documents.js";
6
6
  import { convertToESTree, extractComments, extractTokens } from "./estree-converter/index.js";
7
7
  import { loadGraphQLConfig } from "./graphql-config.js";
8
+ import { version } from "./meta.js";
8
9
  import { getSchema } from "./schema.js";
9
10
  import { getSiblings } from "./siblings.js";
10
11
  import { CWD, VIRTUAL_DOCUMENT_REGEX } from "./utils.js";
@@ -71,6 +72,14 @@ function parseForESLint(code, options) {
71
72
  throw error;
72
73
  }
73
74
  }
75
+ const parser = {
76
+ parseForESLint,
77
+ meta: {
78
+ name: "@graphql-eslint/parser",
79
+ version
80
+ }
81
+ };
74
82
  export {
75
- parseForESLint
83
+ parseForESLint,
84
+ parser
76
85
  };
@@ -5,6 +5,10 @@ type Block = Linter.ProcessorFile & {
5
5
  offset: number;
6
6
  };
7
7
  declare const processor: {
8
+ meta: {
9
+ name: string;
10
+ version: string | undefined;
11
+ };
8
12
  supportsAutofix: true;
9
13
  preprocess(code: string, filePath: string): (string | Block)[];
10
14
  postprocess(messages: Linter.LintMessage[][], filePath: string): Linter.LintMessage[];
package/esm/processor.js CHANGED
@@ -5,10 +5,15 @@ import {
5
5
  } from "@graphql-tools/graphql-tag-pluck";
6
6
  import { asArray } from "@graphql-tools/utils";
7
7
  import { loadOnDiskGraphQLConfig } from "./graphql-config.js";
8
+ import { version } from "./meta.js";
8
9
  import { CWD, REPORT_ON_FIRST_CHARACTER, truthy } from "./utils.js";
9
10
  const blocksMap = /* @__PURE__ */ new Map();
10
11
  let onDiskConfig, onDiskConfigLoaded = !1;
11
12
  const RELEVANT_KEYWORDS = ["gql", "graphql", "GraphQL"], processor = {
13
+ meta: {
14
+ name: "@graphql-eslint/processor",
15
+ version
16
+ },
12
17
  supportsAutofix: !0,
13
18
  preprocess(code, filePath) {
14
19
  onDiskConfigLoaded || (onDiskConfig = loadOnDiskGraphQLConfig(filePath), onDiskConfigLoaded = !0);
@@ -1,11 +1,11 @@
1
1
  import { FromSchema } from 'json-schema-to-ts';
2
- import { GraphQLESLintRule } from '../types.js';
2
+ import { GraphQLESLintRule } from '../../types.js';
3
3
  import 'eslint';
4
4
  import 'estree';
5
5
  import 'graphql';
6
6
  import 'graphql-config';
7
- import '../estree-converter/types.js';
8
- import '../siblings.js';
7
+ import '../../estree-converter/types.js';
8
+ import '../../siblings.js';
9
9
  import '@graphql-tools/utils';
10
10
 
11
11
  declare const schema: {
@@ -45,7 +45,7 @@ declare const schema: {
45
45
  };
46
46
  readonly arguments: {
47
47
  readonly items: {
48
- readonly enum: ("FieldDefinition" | "Field" | "DirectiveDefinition" | "Directive")[];
48
+ readonly enum: ("Field" | "Directive" | "FieldDefinition" | "DirectiveDefinition")[];
49
49
  };
50
50
  readonly description: "Arguments of fields and directives.";
51
51
  readonly type: "array";
@@ -58,7 +58,7 @@ declare const schema: {
58
58
  };
59
59
  readonly groups: {
60
60
  readonly minItems: 2;
61
- readonly description: "Custom order group. Example: `['id', '*', 'createdAt', 'updatedAt']` where `*` says for everything else.";
61
+ readonly description: string;
62
62
  readonly type: "array";
63
63
  readonly uniqueItems: true;
64
64
  readonly items: {
@@ -1,9 +1,9 @@
1
- import "../chunk-UIAXBAMD.js";
1
+ import "../../chunk-UIAXBAMD.js";
2
2
  import {
3
3
  Kind
4
4
  } from "graphql";
5
5
  import lowerCase from "lodash.lowercase";
6
- import { ARRAY_DEFAULT_OPTIONS, displayNodeName, truthy } from "../utils.js";
6
+ import { ARRAY_DEFAULT_OPTIONS, displayNodeName, truthy } from "../../utils.js";
7
7
  const RULE_ID = "alphabetize", fieldsEnum = [
8
8
  Kind.OBJECT_TYPE_DEFINITION,
9
9
  Kind.INTERFACE_TYPE_DEFINITION,
@@ -61,7 +61,14 @@ const RULE_ID = "alphabetize", fieldsEnum = [
61
61
  groups: {
62
62
  ...ARRAY_DEFAULT_OPTIONS,
63
63
  minItems: 2,
64
- description: "Custom order group. Example: `['id', '*', 'createdAt', 'updatedAt']` where `*` says for everything else."
64
+ description: [
65
+ "Order group. Example: `['...', 'id', '*', '{']` where:",
66
+ "- `...` stands for fragment spreads",
67
+ "- `id` stands for field with name `id`",
68
+ "- `*` stands for everything else",
69
+ "- `{` stands for fields `selection set`"
70
+ ].join(`
71
+ `)
65
72
  }
66
73
  }
67
74
  }
@@ -183,7 +190,7 @@ const RULE_ID = "alphabetize", fieldsEnum = [
183
190
  selections: selectionsEnum,
184
191
  variables: !0,
185
192
  arguments: [Kind.FIELD, Kind.DIRECTIVE],
186
- groups: ["id", "*", "createdAt", "updatedAt"]
193
+ groups: ["...", "id", "*", "{"]
187
194
  }
188
195
  ]
189
196
  }
@@ -221,20 +228,18 @@ const RULE_ID = "alphabetize", fieldsEnum = [
221
228
  }
222
229
  function checkNodes(nodes = []) {
223
230
  for (let i = 1; i < nodes.length; i += 1) {
224
- const currNode = nodes[i], currName = "alias" in currNode && currNode.alias?.value || "name" in currNode && currNode.name?.value;
231
+ const currNode = nodes[i], currName = getName(currNode);
225
232
  if (!currName)
226
233
  continue;
227
- const prevNode = nodes[i - 1], prevName = "alias" in prevNode && prevNode.alias?.value || "name" in prevNode && prevNode.name?.value;
234
+ const prevNode = nodes[i - 1], prevName = getName(prevNode);
228
235
  if (prevName) {
229
236
  const compareResult = prevName.localeCompare(currName), { groups } = opts;
230
237
  let shouldSortByGroup = !1;
231
238
  if (groups?.length) {
232
239
  if (!groups.includes("*"))
233
240
  throw new Error("`groups` option should contain `*` string.");
234
- let indexForPrev = groups.indexOf(prevName);
235
- indexForPrev === -1 && (indexForPrev = groups.indexOf("*"));
236
- let indexForCurr = groups.indexOf(currName);
237
- if (indexForCurr === -1 && (indexForCurr = groups.indexOf("*")), shouldSortByGroup = indexForPrev - indexForCurr > 0, indexForPrev < indexForCurr)
241
+ const indexForPrev = getIndex({ node: prevNode, groups }), indexForCurr = getIndex({ node: currNode, groups });
242
+ if (shouldSortByGroup = indexForPrev - indexForCurr > 0, indexForPrev < indexForCurr)
238
243
  continue;
239
244
  }
240
245
  if (!shouldSortByGroup && !(compareResult === 1) && (!(compareResult === 0) || !prevNode.kind.endsWith("Extension") || currNode.kind.endsWith("Extension")))
@@ -294,6 +299,17 @@ const RULE_ID = "alphabetize", fieldsEnum = [
294
299
  }), listeners;
295
300
  }
296
301
  };
302
+ function getIndex({
303
+ node,
304
+ groups
305
+ }) {
306
+ let index = groups.indexOf(getName(node));
307
+ return index === -1 && "selectionSet" in node && node.selectionSet && (index = groups.indexOf("{")), index === -1 && node.kind === Kind.FRAGMENT_SPREAD && (index = groups.indexOf("...")), index === -1 && (index = groups.indexOf("*")), index;
308
+ }
309
+ function getName(node) {
310
+ return "alias" in node && node.alias?.value || //
311
+ "name" in node && node.name?.value || "";
312
+ }
297
313
  export {
298
314
  rule
299
315
  };
@@ -1,11 +1,11 @@
1
1
  import { FromSchema } from 'json-schema-to-ts';
2
- import { GraphQLESLintRule } from '../types.js';
2
+ import { GraphQLESLintRule } from '../../types.js';
3
3
  import 'eslint';
4
4
  import 'estree';
5
5
  import 'graphql';
6
6
  import 'graphql-config';
7
- import '../estree-converter/types.js';
8
- import '../siblings.js';
7
+ import '../../estree-converter/types.js';
8
+ import '../../siblings.js';
9
9
  import '@graphql-tools/utils';
10
10
 
11
11
  declare const schema: {
@@ -1,5 +1,5 @@
1
- import "../chunk-UIAXBAMD.js";
2
- import { getNodeName } from "../utils.js";
1
+ import "../../chunk-UIAXBAMD.js";
2
+ import { getNodeName } from "../../utils.js";
3
3
  const schema = {
4
4
  type: "array",
5
5
  maxItems: 1,
@@ -1,11 +1,11 @@
1
- import { RuleOptions } from './require-description.mjs';
2
- import { CaseStyle } from '../utils.mjs';
1
+ import { RuleOptions } from './require-description/index.js';
2
+ import { CaseStyle } from '../utils.js';
3
3
  import * as graphql from 'graphql';
4
- import { GraphQLESLintRule } from '../types.mjs';
4
+ import { GraphQLESLintRule } from '../types.js';
5
5
  import 'eslint';
6
6
  import 'estree';
7
- import '../estree-converter/types.mjs';
8
- import '../siblings.mjs';
7
+ import '../estree-converter/types.js';
8
+ import '../siblings.js';
9
9
  import '@graphql-tools/utils';
10
10
  import 'graphql-config';
11
11
  import 'json-schema-to-ts';
@@ -21,7 +21,7 @@ declare const rules: {
21
21
  groups?: string[] | undefined;
22
22
  }[]>;
23
23
  'description-style': GraphQLESLintRule<{
24
- style?: "block" | "inline" | undefined;
24
+ style: "block" | "inline";
25
25
  }[]>;
26
26
  'input-name': GraphQLESLintRule<{
27
27
  checkInputType?: boolean | undefined;
@@ -81,9 +81,11 @@ declare const rules: {
81
81
  'no-scalar-result-type-on-mutation': GraphQLESLintRule;
82
82
  'no-typename-prefix': GraphQLESLintRule;
83
83
  'no-unreachable-types': GraphQLESLintRule;
84
- 'no-unused-fields': GraphQLESLintRule;
84
+ 'no-unused-fields': GraphQLESLintRule<{
85
+ ignoredFieldSelectors?: string[] | undefined;
86
+ }[]>;
85
87
  'relay-arguments': GraphQLESLintRule<{
86
- includeBoth?: boolean | undefined;
88
+ includeBoth: boolean;
87
89
  }[], true>;
88
90
  'relay-connection-types': GraphQLESLintRule;
89
91
  'relay-edge-types': GraphQLESLintRule<{
@@ -102,7 +104,7 @@ declare const rules: {
102
104
  'require-nullable-fields-with-oneof': GraphQLESLintRule;
103
105
  'require-nullable-result-in-root': GraphQLESLintRule;
104
106
  'require-selections': GraphQLESLintRule<{
105
- fieldName?: string | string[] | undefined;
107
+ fieldName: string | string[];
106
108
  }[], true>;
107
109
  'require-type-pattern-with-oneof': GraphQLESLintRule;
108
110
  'selection-set-depth': GraphQLESLintRule<{
@@ -1,39 +1,39 @@
1
1
  import "../chunk-UIAXBAMD.js";
2
- import { rule as alphabetize } from "./alphabetize.js";
3
- import { rule as descriptionStyle } from "./description-style.js";
2
+ import { rule as alphabetize } from "./alphabetize/index.js";
3
+ import { rule as descriptionStyle } from "./description-style/index.js";
4
4
  import { GRAPHQL_JS_VALIDATIONS } from "./graphql-js-validation.js";
5
- import { rule as inputName } from "./input-name.js";
6
- import { rule as loneExecutableDefinition } from "./lone-executable-definition.js";
7
- import { rule as matchDocumentFilename } from "./match-document-filename.js";
8
- import { rule as namingConvention } from "./naming-convention.js";
9
- import { rule as noAnonymousOperations } from "./no-anonymous-operations.js";
10
- import { rule as noDeprecated } from "./no-deprecated.js";
11
- import { rule as noDuplicateFields } from "./no-duplicate-fields.js";
12
- import { rule as noHashtagDescription } from "./no-hashtag-description.js";
13
- import { rule as noOnePlaceFragments } from "./no-one-place-fragments.js";
14
- import { rule as noRootType } from "./no-root-type.js";
15
- import { rule as noScalarResultTypeOnMutation } from "./no-scalar-result-type-on-mutation.js";
16
- import { rule as noTypenamePrefix } from "./no-typename-prefix.js";
17
- import { rule as noUnreachableTypes } from "./no-unreachable-types.js";
18
- import { rule as noUnusedFields } from "./no-unused-fields.js";
19
- import { rule as relayArguments } from "./relay-arguments.js";
20
- import { rule as relayConnectionTypes } from "./relay-connection-types.js";
21
- import { rule as relayEdgeTypes } from "./relay-edge-types.js";
22
- import { rule as relayPageInfo } from "./relay-page-info.js";
23
- import { rule as requireDeprecationDate } from "./require-deprecation-date.js";
24
- import { rule as requireDeprecationReason } from "./require-deprecation-reason.js";
25
- import { rule as requireDescription } from "./require-description.js";
26
- import { rule as requireFieldOfTypeQueryInMutationResult } from "./require-field-of-type-query-in-mutation-result.js";
27
- import { rule as requireImportFragment } from "./require-import-fragment.js";
28
- import { rule as requireNullableFieldsWithOneof } from "./require-nullable-fields-with-oneof.js";
29
- import { rule as requireNullableResultInRoot } from "./require-nullable-result-in-root.js";
30
- import { rule as requireSelections } from "./require-selections.js";
31
- import { rule as requireTypePatternWithOneof } from "./require-type-pattern-with-oneof.js";
32
- import { rule as selectionSetDepth } from "./selection-set-depth.js";
33
- import { rule as strictIdInTypes } from "./strict-id-in-types.js";
34
- import { rule as uniqueEnumValueNames } from "./unique-enum-value-names.js";
35
- import { rule as uniqueFragmentName } from "./unique-fragment-name.js";
36
- import { rule as uniqueOperationName } from "./unique-operation-name.js";
5
+ import { rule as inputName } from "./input-name/index.js";
6
+ import { rule as loneExecutableDefinition } from "./lone-executable-definition/index.js";
7
+ import { rule as matchDocumentFilename } from "./match-document-filename/index.js";
8
+ import { rule as namingConvention } from "./naming-convention/index.js";
9
+ import { rule as noAnonymousOperations } from "./no-anonymous-operations/index.js";
10
+ import { rule as noDeprecated } from "./no-deprecated/index.js";
11
+ import { rule as noDuplicateFields } from "./no-duplicate-fields/index.js";
12
+ import { rule as noHashtagDescription } from "./no-hashtag-description/index.js";
13
+ import { rule as noOnePlaceFragments } from "./no-one-place-fragments/index.js";
14
+ import { rule as noRootType } from "./no-root-type/index.js";
15
+ import { rule as noScalarResultTypeOnMutation } from "./no-scalar-result-type-on-mutation/index.js";
16
+ import { rule as noTypenamePrefix } from "./no-typename-prefix/index.js";
17
+ import { rule as noUnreachableTypes } from "./no-unreachable-types/index.js";
18
+ import { rule as noUnusedFields } from "./no-unused-fields/index.js";
19
+ import { rule as relayArguments } from "./relay-arguments/index.js";
20
+ import { rule as relayConnectionTypes } from "./relay-connection-types/index.js";
21
+ import { rule as relayEdgeTypes } from "./relay-edge-types/index.js";
22
+ import { rule as relayPageInfo } from "./relay-page-info/index.js";
23
+ import { rule as requireDeprecationDate } from "./require-deprecation-date/index.js";
24
+ import { rule as requireDeprecationReason } from "./require-deprecation-reason/index.js";
25
+ import { rule as requireDescription } from "./require-description/index.js";
26
+ import { rule as requireFieldOfTypeQueryInMutationResult } from "./require-field-of-type-query-in-mutation-result/index.js";
27
+ import { rule as requireImportFragment } from "./require-import-fragment/index.js";
28
+ import { rule as requireNullableFieldsWithOneof } from "./require-nullable-fields-with-oneof/index.js";
29
+ import { rule as requireNullableResultInRoot } from "./require-nullable-result-in-root/index.js";
30
+ import { rule as requireSelections } from "./require-selections/index.js";
31
+ import { rule as requireTypePatternWithOneof } from "./require-type-pattern-with-oneof/index.js";
32
+ import { rule as selectionSetDepth } from "./selection-set-depth/index.js";
33
+ import { rule as strictIdInTypes } from "./strict-id-in-types/index.js";
34
+ import { rule as uniqueEnumValueNames } from "./unique-enum-value-names/index.js";
35
+ import { rule as uniqueFragmentName } from "./unique-fragment-name/index.js";
36
+ import { rule as uniqueOperationName } from "./unique-operation-name/index.js";
37
37
  const rules = {
38
38
  ...GRAPHQL_JS_VALIDATIONS,
39
39
  alphabetize,
@@ -1,11 +1,11 @@
1
1
  import { FromSchema } from 'json-schema-to-ts';
2
- import { GraphQLESLintRule } from '../types.mjs';
2
+ import { GraphQLESLintRule } from '../../types.js';
3
3
  import 'eslint';
4
4
  import 'estree';
5
5
  import 'graphql';
6
6
  import 'graphql-config';
7
- import '../estree-converter/types.mjs';
8
- import '../siblings.mjs';
7
+ import '../../estree-converter/types.js';
8
+ import '../../siblings.js';
9
9
  import '@graphql-tools/utils';
10
10
 
11
11
  declare const schema: {
@@ -38,7 +38,9 @@ declare const schema: {
38
38
  };
39
39
  };
40
40
  };
41
- type RuleOptions = FromSchema<typeof schema>;
41
+ type RuleOptions = FromSchema<typeof schema, {
42
+ keepDefaultedPropertiesOptional: true;
43
+ }>;
42
44
  declare const rule: GraphQLESLintRule<RuleOptions>;
43
45
 
44
46
  export { type RuleOptions, rule };
@@ -1,4 +1,4 @@
1
- import "../chunk-UIAXBAMD.js";
1
+ import "../../chunk-UIAXBAMD.js";
2
2
  import {
3
3
  Kind
4
4
  } from "graphql";
@@ -1,11 +1,11 @@
1
1
  import { OperationTypeNode } from 'graphql';
2
2
  import { FromSchema } from 'json-schema-to-ts';
3
- import { GraphQLESLintRule } from '../types.mjs';
3
+ import { GraphQLESLintRule } from '../../types.js';
4
4
  import 'eslint';
5
5
  import 'estree';
6
6
  import 'graphql-config';
7
- import '../estree-converter/types.mjs';
8
- import '../siblings.mjs';
7
+ import '../../estree-converter/types.js';
8
+ import '../../siblings.js';
9
9
  import '@graphql-tools/utils';
10
10
 
11
11
  declare const schema: {
@@ -1,6 +1,6 @@
1
- import "../chunk-UIAXBAMD.js";
1
+ import "../../chunk-UIAXBAMD.js";
2
2
  import { OperationTypeNode } from "graphql";
3
- import { ARRAY_DEFAULT_OPTIONS, getLocation, pascalCase } from "../utils.js";
3
+ import { ARRAY_DEFAULT_OPTIONS, getLocation, pascalCase } from "../../utils.js";
4
4
  const RULE_ID = "lone-executable-definition", definitionTypes = ["fragment", ...Object.values(OperationTypeNode)], schema = {
5
5
  type: "array",
6
6
  maxItems: 1,
@@ -1,12 +1,12 @@
1
1
  import { FromSchema } from 'json-schema-to-ts';
2
- import { GraphQLESLintRule } from '../types.mjs';
3
- import { CaseStyle as CaseStyle$1 } from '../utils.mjs';
2
+ import { GraphQLESLintRule } from '../../types.js';
3
+ import { CaseStyle as CaseStyle$1 } from '../../utils.js';
4
4
  import 'eslint';
5
5
  import 'estree';
6
6
  import 'graphql';
7
7
  import 'graphql-config';
8
- import '../estree-converter/types.mjs';
9
- import '../siblings.mjs';
8
+ import '../../estree-converter/types.js';
9
+ import '../../siblings.js';
10
10
  import '@graphql-tools/utils';
11
11
 
12
12
  type CaseStyle = CaseStyle$1 | 'matchDocumentStyle';