@graphql-eslint/eslint-plugin 4.0.0-alpha.1 → 4.0.0-alpha.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -0
- package/{esm/cache.d.mts → cjs/cache.d.cts} +1 -1
- package/cjs/cache.js +8 -36
- package/cjs/chunk-UIAXBAMD.js +8 -0
- package/cjs/configs/index.d.cts +24 -0
- package/cjs/configs/index.js +35 -38
- package/cjs/configs/operations-all.js +33 -26
- package/cjs/configs/operations-recommended.js +59 -52
- package/cjs/configs/schema-all.js +29 -22
- package/cjs/configs/schema-recommended.js +73 -66
- package/cjs/configs/schema-relay.js +17 -10
- package/cjs/documents.js +18 -38
- package/{esm/estree-converter/converter.d.mts → cjs/estree-converter/converter.d.cts} +1 -1
- package/cjs/estree-converter/converter.js +16 -30
- package/cjs/estree-converter/index.d.cts +8 -0
- package/cjs/estree-converter/index.js +3 -23
- package/cjs/estree-converter/types.js +1 -14
- package/{esm/estree-converter/utils.d.mts → cjs/estree-converter/utils.d.cts} +3 -3
- package/cjs/estree-converter/utils.js +22 -40
- package/{esm/graphql-config.d.mts → cjs/graphql-config.d.cts} +3 -3
- package/cjs/graphql-config.js +16 -42
- package/cjs/index.d.cts +184 -0
- package/cjs/index.js +24 -41
- package/cjs/meta.d.cts +3 -0
- package/cjs/meta.js +5 -0
- package/cjs/package.json +1 -0
- package/{esm/parser.d.mts → cjs/parser.d.cts} +11 -4
- package/cjs/parser.js +35 -46
- package/{esm/processor.d.mts → cjs/processor.d.cts} +4 -0
- package/cjs/processor.js +25 -34
- package/{esm/rules/alphabetize.d.mts → cjs/rules/alphabetize/index.d.cts} +4 -4
- package/cjs/rules/{alphabetize.js → alphabetize/index.js} +69 -77
- package/{esm/rules/description-style.d.mts → cjs/rules/description-style/index.d.cts} +3 -3
- package/cjs/rules/{description-style.js → description-style/index.js} +7 -27
- package/{esm/rules/graphql-js-validation.d.mts → cjs/rules/graphql-js-validation.d.cts} +3 -3
- package/cjs/rules/graphql-js-validation.js +93 -70
- package/{esm/rules/index.d.mts → cjs/rules/index.d.cts} +8 -8
- package/cjs/rules/index.js +74 -60
- package/cjs/rules/{input-name.d.ts → input-name/index.d.cts} +6 -4
- package/cjs/rules/{input-name.js → input-name/index.js} +10 -28
- package/cjs/rules/{lone-executable-definition.d.ts → lone-executable-definition/index.d.cts} +3 -3
- package/cjs/rules/{lone-executable-definition.js → lone-executable-definition/index.js} +13 -32
- package/cjs/rules/{match-document-filename.d.ts → match-document-filename/index.d.cts} +4 -4
- package/cjs/rules/{match-document-filename.js → match-document-filename/index.js} +21 -35
- package/{esm/rules/naming-convention.d.mts → cjs/rules/naming-convention/index.d.cts} +6 -4
- package/cjs/rules/{naming-convention.js → naming-convention/index.js} +41 -54
- package/cjs/rules/no-anonymous-operations/index.d.cts +13 -0
- package/cjs/rules/{no-anonymous-operations.js → no-anonymous-operations/index.js} +9 -28
- package/{esm/rules/no-deprecated.d.mts → cjs/rules/no-deprecated/index.d.cts} +3 -3
- package/cjs/rules/{no-deprecated.js → no-deprecated/index.js} +11 -30
- package/cjs/rules/no-duplicate-fields/index.d.cts +13 -0
- package/cjs/rules/{no-duplicate-fields.js → no-duplicate-fields/index.js} +8 -28
- package/cjs/rules/{no-hashtag-description.d.ts → no-hashtag-description/index.d.cts} +3 -3
- package/cjs/rules/{no-hashtag-description.js → no-hashtag-description/index.js} +11 -31
- package/cjs/rules/no-one-place-fragments/index.d.cts +13 -0
- package/cjs/rules/{no-one-place-fragments.js → no-one-place-fragments/index.js} +11 -29
- package/cjs/rules/{no-root-type.d.ts → no-root-type/index.d.cts} +3 -3
- package/cjs/rules/{no-root-type.js → no-root-type/index.js} +9 -29
- package/cjs/rules/no-scalar-result-type-on-mutation/index.d.cts +13 -0
- package/cjs/rules/no-scalar-result-type-on-mutation/index.js +69 -0
- package/cjs/rules/no-typename-prefix/index.d.cts +13 -0
- package/cjs/rules/{no-typename-prefix.js → no-typename-prefix/index.js} +5 -25
- package/cjs/rules/no-unreachable-types/index.d.cts +13 -0
- package/cjs/rules/no-unreachable-types/index.js +155 -0
- package/cjs/rules/no-unused-fields/index.d.cts +13 -0
- package/cjs/rules/{no-unused-fields.js → no-unused-fields/index.js} +16 -34
- package/{esm/rules/relay-arguments.d.mts → cjs/rules/relay-arguments/index.d.cts} +3 -3
- package/cjs/rules/{relay-arguments.js → relay-arguments/index.js} +11 -30
- package/{esm/rules/relay-connection-types.d.mts → cjs/rules/relay-connection-types/index.d.cts} +3 -3
- package/cjs/rules/{relay-connection-types.js → relay-connection-types/index.js} +19 -40
- package/cjs/rules/{relay-edge-types.d.ts → relay-edge-types/index.d.cts} +6 -4
- package/cjs/rules/{relay-edge-types.js → relay-edge-types/index.js} +31 -44
- package/cjs/rules/relay-page-info/index.d.cts +13 -0
- package/cjs/rules/{relay-page-info.js → relay-page-info/index.js} +13 -31
- package/{esm/rules/require-deprecation-date.d.mts → cjs/rules/require-deprecation-date/index.d.cts} +3 -3
- package/cjs/rules/{require-deprecation-date.js → require-deprecation-date/index.js} +13 -32
- package/cjs/rules/require-deprecation-reason/index.d.cts +13 -0
- package/cjs/rules/require-deprecation-reason/index.js +66 -0
- package/{esm/rules/require-description.d.mts → cjs/rules/require-description/index.d.cts} +3 -3
- package/cjs/rules/{require-description.js → require-description/index.js} +30 -44
- package/cjs/rules/require-field-of-type-query-in-mutation-result/index.d.cts +13 -0
- package/cjs/rules/{require-field-of-type-query-in-mutation-result.js → require-field-of-type-query-in-mutation-result/index.js} +10 -29
- package/cjs/rules/require-import-fragment/index.d.cts +13 -0
- package/cjs/rules/{require-import-fragment.js → require-import-fragment/index.js} +16 -38
- package/cjs/rules/require-nullable-fields-with-oneof/index.d.cts +13 -0
- package/cjs/rules/require-nullable-fields-with-oneof/index.js +62 -0
- package/cjs/rules/require-nullable-result-in-root/index.d.cts +13 -0
- package/cjs/rules/{require-nullable-result-in-root.js → require-nullable-result-in-root/index.js} +12 -31
- package/{esm/rules/require-selections.d.mts → cjs/rules/require-selections/index.d.cts} +3 -3
- package/cjs/rules/{require-selections.js → require-selections/index.js} +47 -45
- package/cjs/rules/require-type-pattern-with-oneof/index.d.cts +13 -0
- package/cjs/rules/require-type-pattern-with-oneof/index.js +63 -0
- package/{esm/rules/selection-set-depth.d.mts → cjs/rules/selection-set-depth/index.d.cts} +3 -3
- package/cjs/rules/{selection-set-depth.js → selection-set-depth/index.js} +16 -42
- package/cjs/rules/{strict-id-in-types.d.ts → strict-id-in-types/index.d.cts} +6 -4
- package/cjs/rules/{strict-id-in-types.js → strict-id-in-types/index.js} +26 -39
- package/cjs/rules/unique-enum-value-names/index.d.cts +13 -0
- package/cjs/rules/{unique-enum-value-names.js → unique-enum-value-names/index.js} +10 -29
- package/{esm/rules/unique-fragment-name.d.mts → cjs/rules/unique-fragment-name/index.d.cts} +3 -3
- package/cjs/rules/unique-fragment-name/index.js +87 -0
- package/cjs/rules/unique-operation-name/index.d.cts +13 -0
- package/cjs/rules/{unique-operation-name.js → unique-operation-name/index.js} +7 -27
- package/{esm/schema.d.mts → cjs/schema.d.cts} +3 -3
- package/cjs/schema.js +11 -36
- package/cjs/siblings.js +17 -33
- package/{esm/types.d.mts → cjs/types.d.cts} +2 -2
- package/cjs/types.js +1 -14
- package/{esm/utils.d.mts → cjs/utils.d.cts} +5 -5
- package/cjs/utils.js +94 -115
- package/{cjs → esm}/cache.d.ts +1 -1
- package/esm/configs/index.d.ts +24 -0
- package/esm/configs/index.js +22 -1
- package/esm/configs/operations-all.js +1 -1
- package/esm/documents.js +8 -3
- package/{cjs → esm}/estree-converter/index.d.ts +2 -2
- package/{cjs → esm}/estree-converter/utils.d.ts +3 -3
- package/esm/graphql-config.js +1 -1
- package/esm/index.d.ts +184 -0
- package/esm/index.js +10 -4
- package/esm/meta.d.ts +3 -0
- package/esm/meta.js +5 -0
- package/{cjs → esm}/parser.d.ts +8 -1
- package/esm/parser.js +10 -1
- package/{cjs → esm}/processor.d.ts +4 -0
- package/esm/processor.js +5 -0
- package/{cjs/rules/alphabetize.d.ts → esm/rules/alphabetize/index.d.ts} +5 -5
- package/esm/rules/{alphabetize.js → alphabetize/index.js} +26 -10
- package/{cjs/rules/description-style.d.ts → esm/rules/description-style/index.d.ts} +3 -3
- package/esm/rules/{description-style.js → description-style/index.js} +2 -2
- package/{cjs → esm}/rules/index.d.ts +10 -10
- package/esm/rules/index.js +34 -34
- package/esm/rules/{input-name.d.mts → input-name/index.d.ts} +6 -4
- package/esm/rules/{input-name.js → input-name/index.js} +1 -1
- package/esm/rules/{lone-executable-definition.d.mts → lone-executable-definition/index.d.ts} +3 -3
- package/esm/rules/{lone-executable-definition.js → lone-executable-definition/index.js} +2 -2
- package/esm/rules/{match-document-filename.d.mts → match-document-filename/index.d.ts} +4 -4
- package/esm/rules/{match-document-filename.js → match-document-filename/index.js} +4 -4
- package/{cjs/rules/naming-convention.d.ts → esm/rules/naming-convention/index.d.ts} +6 -4
- package/esm/rules/{naming-convention.js → naming-convention/index.js} +2 -2
- package/{cjs/rules/no-one-place-fragments.d.ts → esm/rules/no-anonymous-operations/index.d.ts} +3 -3
- package/esm/rules/{no-anonymous-operations.js → no-anonymous-operations/index.js} +2 -2
- package/{cjs/rules/no-deprecated.d.ts → esm/rules/no-deprecated/index.d.ts} +3 -3
- package/esm/rules/{no-deprecated.js → no-deprecated/index.js} +2 -2
- package/{cjs/rules/no-scalar-result-type-on-mutation.d.ts → esm/rules/no-duplicate-fields/index.d.ts} +3 -3
- package/esm/rules/{no-duplicate-fields.js → no-duplicate-fields/index.js} +1 -1
- package/esm/rules/{no-hashtag-description.d.mts → no-hashtag-description/index.d.ts} +3 -3
- package/esm/rules/{no-hashtag-description.js → no-hashtag-description/index.js} +2 -2
- package/{cjs/rules/no-anonymous-operations.d.ts → esm/rules/no-one-place-fragments/index.d.ts} +3 -3
- package/esm/rules/{no-one-place-fragments.js → no-one-place-fragments/index.js} +2 -2
- package/esm/rules/{no-root-type.d.mts → no-root-type/index.d.ts} +3 -3
- package/esm/rules/{no-root-type.js → no-root-type/index.js} +2 -2
- package/{cjs/rules/no-duplicate-fields.d.ts → esm/rules/no-scalar-result-type-on-mutation/index.d.ts} +3 -3
- package/esm/rules/{no-scalar-result-type-on-mutation.js → no-scalar-result-type-on-mutation/index.js} +2 -2
- package/esm/rules/no-typename-prefix/index.d.ts +13 -0
- package/esm/rules/{no-typename-prefix.js → no-typename-prefix/index.js} +1 -1
- package/esm/rules/no-unreachable-types/index.d.ts +13 -0
- package/esm/rules/{no-unreachable-types.js → no-unreachable-types/index.js} +8 -8
- package/esm/rules/no-unused-fields/index.d.ts +13 -0
- package/esm/rules/{no-unused-fields.js → no-unused-fields/index.js} +8 -7
- package/{cjs/rules/relay-arguments.d.ts → esm/rules/relay-arguments/index.d.ts} +3 -3
- package/esm/rules/{relay-arguments.js → relay-arguments/index.js} +2 -2
- package/{cjs/rules/relay-connection-types.d.ts → esm/rules/relay-connection-types/index.d.ts} +3 -3
- package/esm/rules/{relay-connection-types.js → relay-connection-types/index.js} +1 -1
- package/esm/rules/{relay-edge-types.d.mts → relay-edge-types/index.d.ts} +6 -4
- package/esm/rules/{relay-edge-types.js → relay-edge-types/index.js} +3 -3
- package/esm/rules/relay-page-info/index.d.ts +13 -0
- package/esm/rules/{relay-page-info.js → relay-page-info/index.js} +4 -4
- package/{cjs/rules/require-deprecation-date.d.ts → esm/rules/require-deprecation-date/index.d.ts} +3 -3
- package/esm/rules/{require-deprecation-date.js → require-deprecation-date/index.js} +3 -3
- package/esm/rules/require-deprecation-reason/index.d.ts +13 -0
- package/esm/rules/{require-deprecation-reason.js → require-deprecation-reason/index.js} +3 -3
- package/{cjs/rules/require-description.d.ts → esm/rules/require-description/index.d.ts} +3 -3
- package/esm/rules/{require-description.js → require-description/index.js} +2 -2
- package/esm/rules/require-field-of-type-query-in-mutation-result/index.d.ts +13 -0
- package/esm/rules/{require-field-of-type-query-in-mutation-result.js → require-field-of-type-query-in-mutation-result/index.js} +2 -2
- package/esm/rules/require-import-fragment/index.d.ts +13 -0
- package/esm/rules/{require-import-fragment.js → require-import-fragment/index.js} +9 -4
- package/esm/rules/require-nullable-fields-with-oneof/index.d.ts +13 -0
- package/esm/rules/{require-nullable-fields-with-oneof.js → require-nullable-fields-with-oneof/index.js} +2 -2
- package/esm/rules/require-nullable-result-in-root/index.d.ts +13 -0
- package/esm/rules/{require-nullable-result-in-root.js → require-nullable-result-in-root/index.js} +2 -2
- package/{cjs/rules/require-selections.d.ts → esm/rules/require-selections/index.d.ts} +3 -3
- package/esm/rules/{require-selections.js → require-selections/index.js} +13 -7
- package/esm/rules/require-type-pattern-with-oneof/index.d.ts +13 -0
- package/esm/rules/{require-type-pattern-with-oneof.js → require-type-pattern-with-oneof/index.js} +2 -2
- package/{cjs/rules/selection-set-depth.d.ts → esm/rules/selection-set-depth/index.d.ts} +3 -3
- package/esm/rules/{selection-set-depth.js → selection-set-depth/index.js} +3 -3
- package/esm/rules/{strict-id-in-types.d.mts → strict-id-in-types/index.d.ts} +6 -4
- package/esm/rules/{strict-id-in-types.js → strict-id-in-types/index.js} +2 -2
- package/esm/rules/unique-enum-value-names/index.d.ts +13 -0
- package/esm/rules/{unique-enum-value-names.js → unique-enum-value-names/index.js} +2 -2
- package/{cjs/rules/unique-fragment-name.d.ts → esm/rules/unique-fragment-name/index.d.ts} +3 -3
- package/esm/rules/{unique-fragment-name.js → unique-fragment-name/index.js} +3 -3
- package/esm/rules/unique-operation-name/index.d.ts +13 -0
- package/esm/rules/{unique-operation-name.js → unique-operation-name/index.js} +2 -2
- package/{cjs → esm}/utils.d.ts +2 -2
- package/esm/utils.js +39 -16
- package/{index.browser.mjs → index.browser.js} +171 -110
- package/package.json +7 -11
- package/cjs/configs/index.d.ts +0 -174
- package/cjs/flat-configs.d.ts +0 -307
- package/cjs/flat-configs.js +0 -55
- package/cjs/index.d.ts +0 -26
- package/cjs/rules/no-scalar-result-type-on-mutation.js +0 -88
- package/cjs/rules/no-typename-prefix.d.ts +0 -13
- package/cjs/rules/no-unreachable-types.d.ts +0 -13
- package/cjs/rules/no-unreachable-types.js +0 -176
- package/cjs/rules/no-unused-fields.d.ts +0 -13
- package/cjs/rules/relay-page-info.d.ts +0 -13
- package/cjs/rules/require-deprecation-reason.d.ts +0 -13
- package/cjs/rules/require-deprecation-reason.js +0 -85
- package/cjs/rules/require-field-of-type-query-in-mutation-result.d.ts +0 -13
- package/cjs/rules/require-import-fragment.d.ts +0 -13
- package/cjs/rules/require-nullable-fields-with-oneof.d.ts +0 -13
- package/cjs/rules/require-nullable-fields-with-oneof.js +0 -81
- package/cjs/rules/require-nullable-result-in-root.d.ts +0 -13
- package/cjs/rules/require-type-pattern-with-oneof.d.ts +0 -13
- package/cjs/rules/require-type-pattern-with-oneof.js +0 -83
- package/cjs/rules/unique-enum-value-names.d.ts +0 -13
- package/cjs/rules/unique-fragment-name.js +0 -106
- package/cjs/rules/unique-operation-name.d.ts +0 -13
- package/esm/configs/index.d.mts +0 -174
- package/esm/estree-converter/index.d.mts +0 -8
- package/esm/flat-configs.d.mts +0 -307
- package/esm/flat-configs.js +0 -36
- package/esm/index.d.mts +0 -26
- package/esm/package.json +0 -1
- package/esm/rules/no-anonymous-operations.d.mts +0 -13
- package/esm/rules/no-duplicate-fields.d.mts +0 -13
- package/esm/rules/no-one-place-fragments.d.mts +0 -13
- package/esm/rules/no-scalar-result-type-on-mutation.d.mts +0 -13
- package/esm/rules/no-typename-prefix.d.mts +0 -13
- package/esm/rules/no-unreachable-types.d.mts +0 -13
- package/esm/rules/no-unused-fields.d.mts +0 -13
- package/esm/rules/relay-page-info.d.mts +0 -13
- package/esm/rules/require-deprecation-reason.d.mts +0 -13
- package/esm/rules/require-field-of-type-query-in-mutation-result.d.mts +0 -13
- package/esm/rules/require-import-fragment.d.mts +0 -13
- package/esm/rules/require-nullable-fields-with-oneof.d.mts +0 -13
- package/esm/rules/require-nullable-result-in-root.d.mts +0 -13
- package/esm/rules/require-type-pattern-with-oneof.d.mts +0 -13
- package/esm/rules/unique-enum-value-names.d.mts +0 -13
- package/esm/rules/unique-operation-name.d.mts +0 -13
- /package/cjs/configs/{operations-all.d.ts → operations-all.d.cts} +0 -0
- /package/cjs/configs/{operations-recommended.d.ts → operations-recommended.d.cts} +0 -0
- /package/cjs/configs/{schema-all.d.ts → schema-all.d.cts} +0 -0
- /package/cjs/configs/{schema-recommended.d.ts → schema-recommended.d.cts} +0 -0
- /package/cjs/configs/{schema-relay.d.ts → schema-relay.d.cts} +0 -0
- /package/cjs/{documents.d.ts → documents.d.cts} +0 -0
- /package/cjs/estree-converter/{types.d.ts → types.d.cts} +0 -0
- /package/cjs/{siblings.d.ts → siblings.d.cts} +0 -0
- /package/esm/configs/{operations-all.d.mts → operations-all.d.ts} +0 -0
- /package/esm/configs/{operations-recommended.d.mts → operations-recommended.d.ts} +0 -0
- /package/esm/configs/{schema-all.d.mts → schema-all.d.ts} +0 -0
- /package/esm/configs/{schema-recommended.d.mts → schema-recommended.d.ts} +0 -0
- /package/esm/configs/{schema-relay.d.mts → schema-relay.d.ts} +0 -0
- /package/esm/{documents.d.mts → documents.d.ts} +0 -0
- /package/{cjs → esm}/estree-converter/converter.d.ts +0 -0
- /package/esm/estree-converter/{types.d.mts → types.d.ts} +0 -0
- /package/{cjs → esm}/graphql-config.d.ts +0 -0
- /package/{cjs → esm}/rules/graphql-js-validation.d.ts +0 -0
- /package/{cjs → esm}/schema.d.ts +0 -0
- /package/esm/{siblings.d.mts → siblings.d.ts} +0 -0
- /package/{cjs → esm}/types.d.ts +0 -0
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { FromSchema } from 'json-schema-to-ts';
|
|
2
|
-
import { GraphQLESLintRule } from '
|
|
2
|
+
import { GraphQLESLintRule } from '../../types.cjs';
|
|
3
3
|
import 'eslint';
|
|
4
4
|
import 'estree';
|
|
5
5
|
import 'graphql';
|
|
6
6
|
import 'graphql-config';
|
|
7
|
-
import '
|
|
8
|
-
import '
|
|
7
|
+
import '../../estree-converter/types.cjs';
|
|
8
|
+
import '../../siblings.cjs';
|
|
9
9
|
import '@graphql-tools/utils';
|
|
10
10
|
|
|
11
11
|
declare const schema: {
|
|
@@ -60,7 +60,9 @@ declare const schema: {
|
|
|
60
60
|
};
|
|
61
61
|
};
|
|
62
62
|
};
|
|
63
|
-
type RuleOptions = FromSchema<typeof schema
|
|
63
|
+
type RuleOptions = FromSchema<typeof schema, {
|
|
64
|
+
keepDefaultedPropertiesOptional: true;
|
|
65
|
+
}>;
|
|
64
66
|
declare const rule: GraphQLESLintRule<RuleOptions>;
|
|
65
67
|
|
|
66
68
|
export { type RuleOptions, rule };
|
|
@@ -1,24 +1,12 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
if (from && typeof from == "object" || typeof from == "function")
|
|
11
|
-
for (let key of __getOwnPropNames(from))
|
|
12
|
-
!__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
13
|
-
return to;
|
|
14
|
-
};
|
|
15
|
-
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: !0 }), mod);
|
|
16
|
-
var strict_id_in_types_exports = {};
|
|
17
|
-
__export(strict_id_in_types_exports, {
|
|
18
|
-
rule: () => rule
|
|
19
|
-
});
|
|
20
|
-
module.exports = __toCommonJS(strict_id_in_types_exports);
|
|
21
|
-
var import_graphql = require("graphql"), import_utils = require("../utils.js");
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }require('../../chunk-UIAXBAMD.js');
|
|
2
|
+
var _graphql = require('graphql');
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
var _utilsjs = require('../../utils.js');
|
|
22
10
|
const RULE_ID = "strict-id-in-types", schema = {
|
|
23
11
|
type: "array",
|
|
24
12
|
maxItems: 1,
|
|
@@ -27,11 +15,11 @@ const RULE_ID = "strict-id-in-types", schema = {
|
|
|
27
15
|
additionalProperties: !1,
|
|
28
16
|
properties: {
|
|
29
17
|
acceptedIdNames: {
|
|
30
|
-
...
|
|
18
|
+
..._utilsjs.ARRAY_DEFAULT_OPTIONS,
|
|
31
19
|
default: ["id"]
|
|
32
20
|
},
|
|
33
21
|
acceptedIdTypes: {
|
|
34
|
-
...
|
|
22
|
+
..._utilsjs.ARRAY_DEFAULT_OPTIONS,
|
|
35
23
|
default: ["ID"]
|
|
36
24
|
},
|
|
37
25
|
exceptions: {
|
|
@@ -39,18 +27,18 @@ const RULE_ID = "strict-id-in-types", schema = {
|
|
|
39
27
|
additionalProperties: !1,
|
|
40
28
|
properties: {
|
|
41
29
|
types: {
|
|
42
|
-
...
|
|
30
|
+
..._utilsjs.ARRAY_DEFAULT_OPTIONS,
|
|
43
31
|
description: "This is used to exclude types with names that match one of the specified values."
|
|
44
32
|
},
|
|
45
33
|
suffixes: {
|
|
46
|
-
...
|
|
34
|
+
..._utilsjs.ARRAY_DEFAULT_OPTIONS,
|
|
47
35
|
description: "This is used to exclude types with names with suffixes that match one of the specified values."
|
|
48
36
|
}
|
|
49
37
|
}
|
|
50
38
|
}
|
|
51
39
|
}
|
|
52
40
|
}
|
|
53
|
-
}, rule = {
|
|
41
|
+
}, rule = exports.rule = {
|
|
54
42
|
meta: {
|
|
55
43
|
type: "suggestion",
|
|
56
44
|
docs: {
|
|
@@ -135,34 +123,33 @@ const RULE_ID = "strict-id-in-types", schema = {
|
|
|
135
123
|
acceptedIdTypes: ["ID"],
|
|
136
124
|
exceptions: {},
|
|
137
125
|
...context.options[0]
|
|
138
|
-
}, schema2 = (0,
|
|
126
|
+
}, schema2 = _utilsjs.requireGraphQLSchemaFromContext.call(void 0, RULE_ID, context);
|
|
139
127
|
return {
|
|
140
128
|
[`ObjectTypeDefinition[name.value!=/^(${[
|
|
141
129
|
schema2.getQueryType(),
|
|
142
130
|
schema2.getMutationType(),
|
|
143
131
|
schema2.getSubscriptionType()
|
|
144
|
-
].filter(
|
|
132
|
+
].filter(_utilsjs.truthy).map((type) => type.name).join("|")})$/]`](node) {
|
|
145
133
|
const typeName = node.name.value;
|
|
146
|
-
if (options.exceptions.types
|
|
134
|
+
if (_optionalChain([options, 'access', _ => _.exceptions, 'access', _2 => _2.types, 'optionalAccess', _3 => _3.includes, 'call', _4 => _4(typeName)]) || _optionalChain([options, 'access', _5 => _5.exceptions, 'access', _6 => _6.suffixes, 'optionalAccess', _7 => _7.some, 'call', _8 => _8((suffix) => typeName.endsWith(suffix))]))
|
|
147
135
|
return;
|
|
148
|
-
if (node.fields
|
|
136
|
+
if (_optionalChain([node, 'access', _9 => _9.fields, 'optionalAccess', _10 => _10.filter, 'call', _11 => _11((field) => {
|
|
149
137
|
const fieldNode = field.rawNode(), isValidIdName = options.acceptedIdNames.includes(fieldNode.name.value);
|
|
150
138
|
let isValidIdType = !1;
|
|
151
|
-
return fieldNode.type.kind ===
|
|
152
|
-
})
|
|
139
|
+
return fieldNode.type.kind === _graphql.Kind.NON_NULL_TYPE && fieldNode.type.type.kind === _graphql.Kind.NAMED_TYPE && (isValidIdType = options.acceptedIdTypes.includes(fieldNode.type.type.name.value)), isValidIdName && isValidIdType;
|
|
140
|
+
}), 'optionalAccess', _12 => _12.length]) !== 1) {
|
|
153
141
|
const pluralNamesSuffix = options.acceptedIdNames.length > 1 ? "s" : "", pluralTypesSuffix = options.acceptedIdTypes.length > 1 ? "s" : "";
|
|
154
142
|
context.report({
|
|
155
143
|
node: node.name,
|
|
156
|
-
message: `${(0,
|
|
157
|
-
Accepted name${pluralNamesSuffix}: ${(0,
|
|
158
|
-
Accepted type${pluralTypesSuffix}: ${(0,
|
|
144
|
+
message: `${_utilsjs.displayNodeName.call(void 0, node)} must have exactly one non-nullable unique identifier.
|
|
145
|
+
Accepted name${pluralNamesSuffix}: ${_utilsjs.englishJoinWords.call(void 0, options.acceptedIdNames)}.
|
|
146
|
+
Accepted type${pluralTypesSuffix}: ${_utilsjs.englishJoinWords.call(void 0, options.acceptedIdTypes)}.`
|
|
159
147
|
});
|
|
160
148
|
}
|
|
161
149
|
}
|
|
162
150
|
};
|
|
163
151
|
}
|
|
164
152
|
};
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
});
|
|
153
|
+
|
|
154
|
+
|
|
155
|
+
exports.rule = rule;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { GraphQLESLintRule } from '../../types.cjs';
|
|
2
|
+
import 'eslint';
|
|
3
|
+
import 'estree';
|
|
4
|
+
import 'graphql';
|
|
5
|
+
import 'graphql-config';
|
|
6
|
+
import 'json-schema-to-ts';
|
|
7
|
+
import '../../estree-converter/types.cjs';
|
|
8
|
+
import '../../siblings.cjs';
|
|
9
|
+
import '@graphql-tools/utils';
|
|
10
|
+
|
|
11
|
+
declare const rule: GraphQLESLintRule;
|
|
12
|
+
|
|
13
|
+
export { rule };
|
|
@@ -1,24 +1,6 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var
|
|
3
|
-
var
|
|
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: !0 });
|
|
9
|
-
}, __copyProps = (to, from, except, desc) => {
|
|
10
|
-
if (from && typeof from == "object" || typeof from == "function")
|
|
11
|
-
for (let key of __getOwnPropNames(from))
|
|
12
|
-
!__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
13
|
-
return to;
|
|
14
|
-
};
|
|
15
|
-
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: !0 }), mod);
|
|
16
|
-
var unique_enum_value_names_exports = {};
|
|
17
|
-
__export(unique_enum_value_names_exports, {
|
|
18
|
-
rule: () => rule
|
|
19
|
-
});
|
|
20
|
-
module.exports = __toCommonJS(unique_enum_value_names_exports);
|
|
21
|
-
var import_graphql = require("graphql"), import_utils = require("../utils.js");
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }require('../../chunk-UIAXBAMD.js');
|
|
2
|
+
var _graphql = require('graphql');
|
|
3
|
+
var _utilsjs = require('../../utils.js');
|
|
22
4
|
const rule = {
|
|
23
5
|
meta: {
|
|
24
6
|
type: "suggestion",
|
|
@@ -62,15 +44,15 @@ const rule = {
|
|
|
62
44
|
},
|
|
63
45
|
create(context) {
|
|
64
46
|
return {
|
|
65
|
-
[[
|
|
66
|
-
const duplicates = node.values
|
|
47
|
+
[[_graphql.Kind.ENUM_TYPE_DEFINITION, _graphql.Kind.ENUM_TYPE_EXTENSION].join(",")](node) {
|
|
48
|
+
const duplicates = _optionalChain([node, 'access', _ => _.values, 'optionalAccess', _2 => _2.filter, 'call', _3 => _3(
|
|
67
49
|
(item, index, array) => array.findIndex((v) => v.name.value.toLowerCase() === item.name.value.toLowerCase()) !== index
|
|
68
|
-
);
|
|
50
|
+
)]);
|
|
69
51
|
for (const duplicate of duplicates || []) {
|
|
70
52
|
const enumName = duplicate.name.value;
|
|
71
53
|
context.report({
|
|
72
54
|
node: duplicate.name,
|
|
73
|
-
message: `Unexpected case-insensitive enum values duplicates for ${(0,
|
|
55
|
+
message: `Unexpected case-insensitive enum values duplicates for ${_utilsjs.getNodeName.call(void 0,
|
|
74
56
|
duplicate
|
|
75
57
|
)}`,
|
|
76
58
|
suggest: [
|
|
@@ -85,7 +67,6 @@ const rule = {
|
|
|
85
67
|
};
|
|
86
68
|
}
|
|
87
69
|
};
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
});
|
|
70
|
+
|
|
71
|
+
|
|
72
|
+
exports.rule = rule;
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { ExecutableDefinitionNode } from 'graphql';
|
|
2
|
-
import { GraphQLESTreeNode } from '
|
|
3
|
-
import { GraphQLESLintRuleContext, GraphQLESLintRule } from '
|
|
2
|
+
import { GraphQLESTreeNode } from '../../estree-converter/types.cjs';
|
|
3
|
+
import { GraphQLESLintRuleContext, GraphQLESLintRule } from '../../types.cjs';
|
|
4
4
|
import 'eslint';
|
|
5
5
|
import 'estree';
|
|
6
6
|
import 'graphql-config';
|
|
7
7
|
import 'json-schema-to-ts';
|
|
8
|
-
import '
|
|
8
|
+
import '../../siblings.cjs';
|
|
9
9
|
import '@graphql-tools/utils';
|
|
10
10
|
|
|
11
11
|
declare const checkNode: (context: GraphQLESLintRuleContext, node: GraphQLESTreeNode<ExecutableDefinitionNode>, ruleId: string) => void;
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }require('../../chunk-UIAXBAMD.js');
|
|
2
|
+
var _nodepath = require('node:path');
|
|
3
|
+
var _graphql = require('graphql');
|
|
4
|
+
var _utilsjs = require('../../utils.js');
|
|
5
|
+
const RULE_ID = "unique-fragment-name", checkNode = exports.checkNode = (context, node, ruleId) => {
|
|
6
|
+
const documentName = node.name.value, siblings = _utilsjs.requireSiblingsOperations.call(void 0, ruleId, context), siblingDocuments = node.kind === _graphql.Kind.FRAGMENT_DEFINITION ? siblings.getFragment(documentName) : siblings.getOperation(documentName), filepath = context.filename, conflictingDocuments = siblingDocuments.filter((f) => {
|
|
7
|
+
const isSameName = _optionalChain([f, 'access', _ => _.document, 'access', _2 => _2.name, 'optionalAccess', _3 => _3.value]) === documentName, isSamePath = _utilsjs.slash.call(void 0, f.filePath) === _utilsjs.slash.call(void 0, filepath);
|
|
8
|
+
return isSameName && !isSamePath;
|
|
9
|
+
});
|
|
10
|
+
conflictingDocuments.length > 0 && context.report({
|
|
11
|
+
messageId: ruleId,
|
|
12
|
+
data: {
|
|
13
|
+
documentName,
|
|
14
|
+
summary: conflictingDocuments.map((f) => ` ${_nodepath.relative.call(void 0, _utilsjs.CWD, f.filePath.replace(_utilsjs.VIRTUAL_DOCUMENT_REGEX, ""))}`).join(`
|
|
15
|
+
`)
|
|
16
|
+
},
|
|
17
|
+
// @ts-expect-error name will exist
|
|
18
|
+
node: node.name
|
|
19
|
+
});
|
|
20
|
+
}, rule = exports.rule = {
|
|
21
|
+
meta: {
|
|
22
|
+
type: "suggestion",
|
|
23
|
+
docs: {
|
|
24
|
+
category: "Operations",
|
|
25
|
+
description: "Enforce unique fragment names across your project.",
|
|
26
|
+
url: `https://the-guild.dev/graphql/eslint/rules/${RULE_ID}`,
|
|
27
|
+
requiresSiblings: !0,
|
|
28
|
+
recommended: !0,
|
|
29
|
+
examples: [
|
|
30
|
+
{
|
|
31
|
+
title: "Incorrect",
|
|
32
|
+
code: (
|
|
33
|
+
/* GraphQL */
|
|
34
|
+
`
|
|
35
|
+
# user.fragment.graphql
|
|
36
|
+
fragment UserFields on User {
|
|
37
|
+
id
|
|
38
|
+
name
|
|
39
|
+
fullName
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
# user-fields.graphql
|
|
43
|
+
fragment UserFields on User {
|
|
44
|
+
id
|
|
45
|
+
}
|
|
46
|
+
`
|
|
47
|
+
)
|
|
48
|
+
},
|
|
49
|
+
{
|
|
50
|
+
title: "Correct",
|
|
51
|
+
code: (
|
|
52
|
+
/* GraphQL */
|
|
53
|
+
`
|
|
54
|
+
# user.fragment.graphql
|
|
55
|
+
fragment AllUserFields on User {
|
|
56
|
+
id
|
|
57
|
+
name
|
|
58
|
+
fullName
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
# user-fields.graphql
|
|
62
|
+
fragment UserFields on User {
|
|
63
|
+
id
|
|
64
|
+
}
|
|
65
|
+
`
|
|
66
|
+
)
|
|
67
|
+
}
|
|
68
|
+
]
|
|
69
|
+
},
|
|
70
|
+
messages: {
|
|
71
|
+
[RULE_ID]: `Fragment named "{{ documentName }}" already defined in:
|
|
72
|
+
{{ summary }}`
|
|
73
|
+
},
|
|
74
|
+
schema: []
|
|
75
|
+
},
|
|
76
|
+
create(context) {
|
|
77
|
+
return {
|
|
78
|
+
FragmentDefinition(node) {
|
|
79
|
+
checkNode(context, node, RULE_ID);
|
|
80
|
+
}
|
|
81
|
+
};
|
|
82
|
+
}
|
|
83
|
+
};
|
|
84
|
+
|
|
85
|
+
|
|
86
|
+
|
|
87
|
+
exports.checkNode = checkNode; exports.rule = rule;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { GraphQLESLintRule } from '../../types.cjs';
|
|
2
|
+
import 'eslint';
|
|
3
|
+
import 'estree';
|
|
4
|
+
import 'graphql';
|
|
5
|
+
import 'graphql-config';
|
|
6
|
+
import 'json-schema-to-ts';
|
|
7
|
+
import '../../estree-converter/types.cjs';
|
|
8
|
+
import '../../siblings.cjs';
|
|
9
|
+
import '@graphql-tools/utils';
|
|
10
|
+
|
|
11
|
+
declare const rule: GraphQLESLintRule;
|
|
12
|
+
|
|
13
|
+
export { rule };
|
|
@@ -1,25 +1,6 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var
|
|
3
|
-
|
|
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: !0 });
|
|
9
|
-
}, __copyProps = (to, from, except, desc) => {
|
|
10
|
-
if (from && typeof from == "object" || typeof from == "function")
|
|
11
|
-
for (let key of __getOwnPropNames(from))
|
|
12
|
-
!__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
13
|
-
return to;
|
|
14
|
-
};
|
|
15
|
-
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: !0 }), mod);
|
|
16
|
-
var unique_operation_name_exports = {};
|
|
17
|
-
__export(unique_operation_name_exports, {
|
|
18
|
-
rule: () => rule
|
|
19
|
-
});
|
|
20
|
-
module.exports = __toCommonJS(unique_operation_name_exports);
|
|
21
|
-
var import_unique_fragment_name = require("./unique-fragment-name.js");
|
|
22
|
-
const RULE_ID = "unique-operation-name", rule = {
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});require('../../chunk-UIAXBAMD.js');
|
|
2
|
+
var _indexjs = require('../unique-fragment-name/index.js');
|
|
3
|
+
const RULE_ID = "unique-operation-name", rule = exports.rule = {
|
|
23
4
|
meta: {
|
|
24
5
|
type: "suggestion",
|
|
25
6
|
docs: {
|
|
@@ -82,12 +63,11 @@ const RULE_ID = "unique-operation-name", rule = {
|
|
|
82
63
|
create(context) {
|
|
83
64
|
return {
|
|
84
65
|
"OperationDefinition[name!=undefined]"(node) {
|
|
85
|
-
(0,
|
|
66
|
+
_indexjs.checkNode.call(void 0, context, node, RULE_ID);
|
|
86
67
|
}
|
|
87
68
|
};
|
|
88
69
|
}
|
|
89
70
|
};
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
});
|
|
71
|
+
|
|
72
|
+
|
|
73
|
+
exports.rule = rule;
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { GraphQLProjectConfig } from 'graphql-config';
|
|
2
|
-
import { Schema } from './types.
|
|
2
|
+
import { Schema } from './types.cjs';
|
|
3
3
|
import 'eslint';
|
|
4
4
|
import 'estree';
|
|
5
5
|
import 'graphql';
|
|
6
6
|
import 'json-schema-to-ts';
|
|
7
|
-
import './estree-converter/types.
|
|
8
|
-
import './siblings.
|
|
7
|
+
import './estree-converter/types.cjs';
|
|
8
|
+
import './siblings.cjs';
|
|
9
9
|
import '@graphql-tools/utils';
|
|
10
10
|
|
|
11
11
|
declare function getSchema(project: GraphQLProjectConfig): Schema;
|
package/cjs/schema.js
CHANGED
|
@@ -1,33 +1,9 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var
|
|
3
|
-
var
|
|
4
|
-
var
|
|
5
|
-
var
|
|
6
|
-
|
|
7
|
-
var __export = (target, all) => {
|
|
8
|
-
for (var name in all)
|
|
9
|
-
__defProp(target, name, { get: all[name], enumerable: !0 });
|
|
10
|
-
}, __copyProps = (to, from, except, desc) => {
|
|
11
|
-
if (from && typeof from == "object" || typeof from == "function")
|
|
12
|
-
for (let key of __getOwnPropNames(from))
|
|
13
|
-
!__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
14
|
-
return to;
|
|
15
|
-
};
|
|
16
|
-
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
17
|
-
// If the importer is in node compatibility mode or this is not an ESM
|
|
18
|
-
// file that has been converted to a CommonJS file using a Babel-
|
|
19
|
-
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
20
|
-
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
21
|
-
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: !0 }) : target,
|
|
22
|
-
mod
|
|
23
|
-
)), __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: !0 }), mod);
|
|
24
|
-
var schema_exports = {};
|
|
25
|
-
__export(schema_exports, {
|
|
26
|
-
getSchema: () => getSchema
|
|
27
|
-
});
|
|
28
|
-
module.exports = __toCommonJS(schema_exports);
|
|
29
|
-
var import_debug = __toESM(require("debug")), import_fast_glob = __toESM(require("fast-glob")), import_graphql = require("graphql"), import_cache = require("./cache.js");
|
|
30
|
-
const schemaCache = new import_cache.ModuleCache(), debug = (0, import_debug.default)("graphql-eslint:schema");
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }require('./chunk-UIAXBAMD.js');
|
|
2
|
+
var _debug = require('debug'); var _debug2 = _interopRequireDefault(_debug);
|
|
3
|
+
var _fastglob = require('fast-glob'); var _fastglob2 = _interopRequireDefault(_fastglob);
|
|
4
|
+
var _graphql = require('graphql');
|
|
5
|
+
var _cachejs = require('./cache.js');
|
|
6
|
+
const schemaCache = new (0, _cachejs.ModuleCache)(), debug = _debug2.default.call(void 0, "graphql-eslint:schema");
|
|
31
7
|
function getSchema(project) {
|
|
32
8
|
const schemaKey = project.schema;
|
|
33
9
|
if (!schemaKey)
|
|
@@ -40,13 +16,12 @@ function getSchema(project) {
|
|
|
40
16
|
pluckConfig: project.extensions.pluckConfig
|
|
41
17
|
});
|
|
42
18
|
if (debug.enabled) {
|
|
43
|
-
debug("Schema loaded: %o", schema instanceof
|
|
44
|
-
const schemaPaths =
|
|
19
|
+
debug("Schema loaded: %o", schema instanceof _graphql.GraphQLSchema);
|
|
20
|
+
const schemaPaths = _fastglob2.default.sync(project.schema, { absolute: !0 });
|
|
45
21
|
debug("Schema pointers %O", schemaPaths);
|
|
46
22
|
}
|
|
47
23
|
return schemaCache.set(schemaKey, schema), schema;
|
|
48
24
|
}
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
});
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
exports.getSchema = getSchema;
|
package/cjs/siblings.js
CHANGED
|
@@ -1,29 +1,14 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
var
|
|
6
|
-
var
|
|
7
|
-
for (var name in all)
|
|
8
|
-
__defProp(target, name, { get: all[name], enumerable: !0 });
|
|
9
|
-
}, __copyProps = (to, from, except, desc) => {
|
|
10
|
-
if (from && typeof from == "object" || typeof from == "function")
|
|
11
|
-
for (let key of __getOwnPropNames(from))
|
|
12
|
-
!__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
13
|
-
return to;
|
|
14
|
-
};
|
|
15
|
-
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: !0 }), mod);
|
|
16
|
-
var siblings_exports = {};
|
|
17
|
-
__export(siblings_exports, {
|
|
18
|
-
getSiblings: () => getSiblings
|
|
19
|
-
});
|
|
20
|
-
module.exports = __toCommonJS(siblings_exports);
|
|
21
|
-
var import_graphql = require("graphql"), import_utils2 = require("./utils.js");
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }require('./chunk-UIAXBAMD.js');
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
var _graphql = require('graphql');
|
|
6
|
+
var _utilsjs = require('./utils.js');
|
|
22
7
|
const siblingOperationsCache = /* @__PURE__ */ new Map();
|
|
23
8
|
function getSiblings(documents) {
|
|
24
9
|
if (documents.length === 0) {
|
|
25
10
|
let printed = !1;
|
|
26
|
-
const noopWarn = () => (printed || (
|
|
11
|
+
const noopWarn = () => (printed || (_utilsjs.logger.warn(
|
|
27
12
|
"getSiblingOperations was called without any operations. Make sure to set graphql-config `documents` field to make this feature available! See https://the-guild.dev/graphql/config/docs/user/documents for more info"
|
|
28
13
|
), printed = !0), []);
|
|
29
14
|
return {
|
|
@@ -45,8 +30,8 @@ function getSiblings(documents) {
|
|
|
45
30
|
if (fragmentsCache === null) {
|
|
46
31
|
const result = [];
|
|
47
32
|
for (const source of documents)
|
|
48
|
-
for (const definition of source.document
|
|
49
|
-
definition.kind ===
|
|
33
|
+
for (const definition of _optionalChain([source, 'access', _ => _.document, 'optionalAccess', _2 => _2.definitions]) || [])
|
|
34
|
+
definition.kind === _graphql.Kind.FRAGMENT_DEFINITION && result.push({
|
|
50
35
|
filePath: source.location,
|
|
51
36
|
document: definition
|
|
52
37
|
});
|
|
@@ -59,19 +44,19 @@ function getSiblings(documents) {
|
|
|
59
44
|
if (cachedOperations === null) {
|
|
60
45
|
const result = [];
|
|
61
46
|
for (const source of documents)
|
|
62
|
-
for (const definition of source.document
|
|
63
|
-
definition.kind ===
|
|
47
|
+
for (const definition of _optionalChain([source, 'access', _3 => _3.document, 'optionalAccess', _4 => _4.definitions]) || [])
|
|
48
|
+
definition.kind === _graphql.Kind.OPERATION_DEFINITION && result.push({
|
|
64
49
|
filePath: source.location,
|
|
65
50
|
document: definition
|
|
66
51
|
});
|
|
67
52
|
cachedOperations = result;
|
|
68
53
|
}
|
|
69
54
|
return cachedOperations;
|
|
70
|
-
}, getFragment = (name) => getFragments().filter((f) => f.document.name.value === name), collectFragments = (selectable, recursive, collected = /* @__PURE__ */ new Map()) => ((0,
|
|
55
|
+
}, getFragment = (name) => getFragments().filter((f) => f.document.name.value === name), collectFragments = (selectable, recursive, collected = /* @__PURE__ */ new Map()) => (_graphql.visit.call(void 0, selectable, {
|
|
71
56
|
FragmentSpread(spread) {
|
|
72
57
|
const fragmentName = spread.name.value, [fragment] = getFragment(fragmentName);
|
|
73
58
|
if (!fragment) {
|
|
74
|
-
|
|
59
|
+
_utilsjs.logger.warn(
|
|
75
60
|
`Unable to locate fragment named "${fragmentName}", please make sure it's loaded using "parserOptions.operations"`
|
|
76
61
|
);
|
|
77
62
|
return;
|
|
@@ -84,13 +69,12 @@ function getSiblings(documents) {
|
|
|
84
69
|
getFragments,
|
|
85
70
|
getFragmentByType: (typeName) => getFragments().filter((f) => f.document.typeCondition.name.value === typeName),
|
|
86
71
|
getFragmentsInUse: (selectable, recursive = !0) => Array.from(collectFragments(selectable, recursive).values()),
|
|
87
|
-
getOperation: (name) => getOperations().filter((o) => o.document.name
|
|
72
|
+
getOperation: (name) => getOperations().filter((o) => _optionalChain([o, 'access', _5 => _5.document, 'access', _6 => _6.name, 'optionalAccess', _7 => _7.value]) === name),
|
|
88
73
|
getOperations,
|
|
89
74
|
getOperationByType: (type) => getOperations().filter((o) => o.document.operation === type)
|
|
90
75
|
};
|
|
91
76
|
return siblingOperationsCache.set(documents, siblingOperations), siblingOperations;
|
|
92
77
|
}
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
});
|
|
78
|
+
|
|
79
|
+
|
|
80
|
+
exports.getSiblings = getSiblings;
|
|
@@ -3,8 +3,8 @@ import * as ESTree from 'estree';
|
|
|
3
3
|
import { GraphQLSchema, ASTKindToNode } from 'graphql';
|
|
4
4
|
import { IGraphQLConfig } from 'graphql-config';
|
|
5
5
|
import { JSONSchema } from 'json-schema-to-ts';
|
|
6
|
-
import { GraphQLESTreeNode } from './estree-converter/types.
|
|
7
|
-
import { SiblingOperations } from './siblings.
|
|
6
|
+
import { GraphQLESTreeNode } from './estree-converter/types.cjs';
|
|
7
|
+
import { SiblingOperations } from './siblings.cjs';
|
|
8
8
|
import '@graphql-tools/utils';
|
|
9
9
|
|
|
10
10
|
type Schema = GraphQLSchema | null;
|
package/cjs/types.js
CHANGED
|
@@ -1,14 +1 @@
|
|
|
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
|
-
!__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
10
|
-
return to;
|
|
11
|
-
};
|
|
12
|
-
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: !0 }), mod);
|
|
13
|
-
var types_exports = {};
|
|
14
|
-
module.exports = __toCommonJS(types_exports);
|
|
1
|
+
"use strict";
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { AST } from 'eslint';
|
|
2
2
|
import { Position } from 'estree';
|
|
3
3
|
import { GraphQLSchema, ASTNode, Kind } from 'graphql';
|
|
4
|
-
import { GraphQLESTreeNode } from './estree-converter/types.
|
|
5
|
-
import { SiblingOperations } from './siblings.
|
|
6
|
-
import { GraphQLESLintRuleContext } from './types.
|
|
4
|
+
import { GraphQLESTreeNode } from './estree-converter/types.cjs';
|
|
5
|
+
import { SiblingOperations } from './siblings.cjs';
|
|
6
|
+
import { GraphQLESLintRuleContext } from './types.cjs';
|
|
7
7
|
import '@graphql-tools/utils';
|
|
8
8
|
import 'graphql-config';
|
|
9
9
|
import 'json-schema-to-ts';
|
|
@@ -14,7 +14,7 @@ declare const logger: {
|
|
|
14
14
|
error: (...args: unknown[]) => void;
|
|
15
15
|
warn: (...args: unknown[]) => void;
|
|
16
16
|
};
|
|
17
|
-
declare const
|
|
17
|
+
declare const slash: (path: string) => string;
|
|
18
18
|
declare const VIRTUAL_DOCUMENT_REGEX: RegExp;
|
|
19
19
|
declare const CWD: string;
|
|
20
20
|
declare const getTypeName: (node: ASTNode) => string;
|
|
@@ -42,4 +42,4 @@ declare function truthy<T>(value: T): value is Truthy<T>;
|
|
|
42
42
|
declare function displayNodeName(node: GraphQLESTreeNode<ASTNode>): string;
|
|
43
43
|
declare function getNodeName(node: GraphQLESTreeNode<ASTNode>): string;
|
|
44
44
|
|
|
45
|
-
export { ARRAY_DEFAULT_OPTIONS, CWD, type CaseStyle, REPORT_ON_FIRST_CHARACTER, TYPES_KINDS, VIRTUAL_DOCUMENT_REGEX, camelCase, convertCase, displayNodeName, englishJoinWords, getLocation, getNodeName, getTypeName, logger,
|
|
45
|
+
export { ARRAY_DEFAULT_OPTIONS, CWD, type CaseStyle, REPORT_ON_FIRST_CHARACTER, TYPES_KINDS, VIRTUAL_DOCUMENT_REGEX, camelCase, convertCase, displayNodeName, englishJoinWords, getLocation, getNodeName, getTypeName, logger, pascalCase, requireGraphQLSchemaFromContext, requireSiblingsOperations, slash, truthy };
|