@theguild/federation-composition 0.0.0-alpha-20230916192321-bb37b43
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/LICENSE +18 -0
- package/cjs/compose.js +85 -0
- package/cjs/graphql/helpers.js +32 -0
- package/cjs/graphql/printer.js +248 -0
- package/cjs/graphql/type-node-info.js +142 -0
- package/cjs/index.js +22 -0
- package/cjs/package.json +1 -0
- package/cjs/specifications/federation.js +211 -0
- package/cjs/specifications/inaccessible.js +10 -0
- package/cjs/specifications/join.js +35 -0
- package/cjs/specifications/link.js +222 -0
- package/cjs/specifications/tag.js +12 -0
- package/cjs/subgraph/helpers.js +255 -0
- package/cjs/subgraph/state.js +1154 -0
- package/cjs/subgraph/validation/rules/elements/compose-directive.js +41 -0
- package/cjs/subgraph/validation/rules/elements/extends.js +34 -0
- package/cjs/subgraph/validation/rules/elements/external.js +57 -0
- package/cjs/subgraph/validation/rules/elements/field-set.js +37 -0
- package/cjs/subgraph/validation/rules/elements/inaccessible.js +112 -0
- package/cjs/subgraph/validation/rules/elements/key.js +148 -0
- package/cjs/subgraph/validation/rules/elements/override.js +56 -0
- package/cjs/subgraph/validation/rules/elements/provides.js +173 -0
- package/cjs/subgraph/validation/rules/elements/requires.js +119 -0
- package/cjs/subgraph/validation/rules/elements/shareable.js +43 -0
- package/cjs/subgraph/validation/rules/elements/tag.js +120 -0
- package/cjs/subgraph/validation/rules/known-argument-names-on-directives-rule.js +34 -0
- package/cjs/subgraph/validation/rules/known-directives-rule.js +105 -0
- package/cjs/subgraph/validation/rules/known-federation-directive-rule.js +34 -0
- package/cjs/subgraph/validation/rules/known-root-type-rule.js +25 -0
- package/cjs/subgraph/validation/rules/known-type-names-rule.js +34 -0
- package/cjs/subgraph/validation/rules/lone-schema-definition-rule.js +20 -0
- package/cjs/subgraph/validation/rules/provided-arguments-on-directives-rule.js +104 -0
- package/cjs/subgraph/validation/rules/provided-required-arguments-on-directives-rule.js +46 -0
- package/cjs/subgraph/validation/rules/query-root-type-inaccessible-rule.js +33 -0
- package/cjs/subgraph/validation/rules/reserved-subgraph-name-rule.js +15 -0
- package/cjs/subgraph/validation/rules/root-type-used-rule.js +59 -0
- package/cjs/subgraph/validation/rules/unique-argument-definition-names-rule.js +42 -0
- package/cjs/subgraph/validation/rules/unique-argument-names-rule.js +27 -0
- package/cjs/subgraph/validation/rules/unique-directive-names-rule.js +24 -0
- package/cjs/subgraph/validation/rules/unique-directives-per-location-rule.js +52 -0
- package/cjs/subgraph/validation/rules/unique-enum-value-names-rule.js +33 -0
- package/cjs/subgraph/validation/rules/unique-field-definition-names-rule.js +37 -0
- package/cjs/subgraph/validation/rules/unique-input-field-names-rule.js +37 -0
- package/cjs/subgraph/validation/rules/unique-operation-types-rule.js +29 -0
- package/cjs/subgraph/validation/rules/unique-type-names-rule.js +29 -0
- package/cjs/subgraph/validation/validate-state.js +476 -0
- package/cjs/subgraph/validation/validate-subgraph.js +329 -0
- package/cjs/subgraph/validation/validation-context.js +267 -0
- package/cjs/supergraph/composition/ast.js +779 -0
- package/cjs/supergraph/composition/common.js +7 -0
- package/cjs/supergraph/composition/directive.js +93 -0
- package/cjs/supergraph/composition/enum-type.js +132 -0
- package/cjs/supergraph/composition/input-object-type.js +119 -0
- package/cjs/supergraph/composition/interface-type.js +226 -0
- package/cjs/supergraph/composition/object-type.js +380 -0
- package/cjs/supergraph/composition/scalar-type.js +63 -0
- package/cjs/supergraph/composition/union-type.js +64 -0
- package/cjs/supergraph/composition/visitor.js +62 -0
- package/cjs/supergraph/state.js +249 -0
- package/cjs/supergraph/validation/rules/default-value-uses-inaccessible-rule.js +35 -0
- package/cjs/supergraph/validation/rules/directive-composition-rule.js +98 -0
- package/cjs/supergraph/validation/rules/enum-values-rule.js +59 -0
- package/cjs/supergraph/validation/rules/extension-with-base.js +31 -0
- package/cjs/supergraph/validation/rules/external-argument-missing-rule.js +32 -0
- package/cjs/supergraph/validation/rules/external-missing-on-base-rule.js +48 -0
- package/cjs/supergraph/validation/rules/external-type-mismatch-rule.js +52 -0
- package/cjs/supergraph/validation/rules/field-argument-default-mismatch-rule.js +40 -0
- package/cjs/supergraph/validation/rules/field-arguments-of-the-same-type-rule.js +49 -0
- package/cjs/supergraph/validation/rules/fields-of-the-same-type-rule.js +89 -0
- package/cjs/supergraph/validation/rules/input-field-default-mismatch-rule.js +40 -0
- package/cjs/supergraph/validation/rules/input-object-values-rule.js +25 -0
- package/cjs/supergraph/validation/rules/interface-key-missing-implementation-type.js +46 -0
- package/cjs/supergraph/validation/rules/invalid-field-sharing-rule.js +45 -0
- package/cjs/supergraph/validation/rules/only-inaccessible-children-rule.js +40 -0
- package/cjs/supergraph/validation/rules/override-source-has-override.js +36 -0
- package/cjs/supergraph/validation/rules/referenced-inaccessible-rule.js +44 -0
- package/cjs/supergraph/validation/rules/required-argument-missing-in-some-subgraph-rule.js +32 -0
- package/cjs/supergraph/validation/rules/required-input-field-missing-in-some-subgraph-rule.js +32 -0
- package/cjs/supergraph/validation/rules/required-query-rule.js +14 -0
- package/cjs/supergraph/validation/rules/satisfiablity-rule.js +866 -0
- package/cjs/supergraph/validation/rules/subgraph-name-rule.js +18 -0
- package/cjs/supergraph/validation/rules/types-of-the-same-kind-rule.js +54 -0
- package/cjs/supergraph/validation/validate-supergraph.js +77 -0
- package/cjs/supergraph/validation/validation-context.js +25 -0
- package/cjs/types.js +0 -0
- package/cjs/utils/dependency-graph.js +227 -0
- package/cjs/utils/format.js +27 -0
- package/cjs/utils/helpers.js +7 -0
- package/cjs/utils/state.js +23 -0
- package/cjs/validate.js +117 -0
- package/esm/compose.js +78 -0
- package/esm/graphql/helpers.js +27 -0
- package/esm/graphql/printer.js +244 -0
- package/esm/graphql/type-node-info.js +137 -0
- package/esm/index.js +4 -0
- package/esm/specifications/federation.js +204 -0
- package/esm/specifications/inaccessible.js +7 -0
- package/esm/specifications/join.js +32 -0
- package/esm/specifications/link.js +210 -0
- package/esm/specifications/tag.js +9 -0
- package/esm/subgraph/helpers.js +245 -0
- package/esm/subgraph/state.js +1148 -0
- package/esm/subgraph/validation/rules/elements/compose-directive.js +37 -0
- package/esm/subgraph/validation/rules/elements/extends.js +30 -0
- package/esm/subgraph/validation/rules/elements/external.js +53 -0
- package/esm/subgraph/validation/rules/elements/field-set.js +33 -0
- package/esm/subgraph/validation/rules/elements/inaccessible.js +108 -0
- package/esm/subgraph/validation/rules/elements/key.js +144 -0
- package/esm/subgraph/validation/rules/elements/override.js +52 -0
- package/esm/subgraph/validation/rules/elements/provides.js +169 -0
- package/esm/subgraph/validation/rules/elements/requires.js +115 -0
- package/esm/subgraph/validation/rules/elements/shareable.js +39 -0
- package/esm/subgraph/validation/rules/elements/tag.js +116 -0
- package/esm/subgraph/validation/rules/known-argument-names-on-directives-rule.js +30 -0
- package/esm/subgraph/validation/rules/known-directives-rule.js +101 -0
- package/esm/subgraph/validation/rules/known-federation-directive-rule.js +30 -0
- package/esm/subgraph/validation/rules/known-root-type-rule.js +21 -0
- package/esm/subgraph/validation/rules/known-type-names-rule.js +30 -0
- package/esm/subgraph/validation/rules/lone-schema-definition-rule.js +16 -0
- package/esm/subgraph/validation/rules/provided-arguments-on-directives-rule.js +100 -0
- package/esm/subgraph/validation/rules/provided-required-arguments-on-directives-rule.js +42 -0
- package/esm/subgraph/validation/rules/query-root-type-inaccessible-rule.js +29 -0
- package/esm/subgraph/validation/rules/reserved-subgraph-name-rule.js +11 -0
- package/esm/subgraph/validation/rules/root-type-used-rule.js +55 -0
- package/esm/subgraph/validation/rules/unique-argument-definition-names-rule.js +38 -0
- package/esm/subgraph/validation/rules/unique-argument-names-rule.js +23 -0
- package/esm/subgraph/validation/rules/unique-directive-names-rule.js +20 -0
- package/esm/subgraph/validation/rules/unique-directives-per-location-rule.js +48 -0
- package/esm/subgraph/validation/rules/unique-enum-value-names-rule.js +29 -0
- package/esm/subgraph/validation/rules/unique-field-definition-names-rule.js +33 -0
- package/esm/subgraph/validation/rules/unique-input-field-names-rule.js +33 -0
- package/esm/subgraph/validation/rules/unique-operation-types-rule.js +25 -0
- package/esm/subgraph/validation/rules/unique-type-names-rule.js +25 -0
- package/esm/subgraph/validation/validate-state.js +463 -0
- package/esm/subgraph/validation/validate-subgraph.js +323 -0
- package/esm/subgraph/validation/validation-context.js +262 -0
- package/esm/supergraph/composition/ast.js +765 -0
- package/esm/supergraph/composition/common.js +3 -0
- package/esm/supergraph/composition/directive.js +89 -0
- package/esm/supergraph/composition/enum-type.js +128 -0
- package/esm/supergraph/composition/input-object-type.js +115 -0
- package/esm/supergraph/composition/interface-type.js +222 -0
- package/esm/supergraph/composition/object-type.js +375 -0
- package/esm/supergraph/composition/scalar-type.js +59 -0
- package/esm/supergraph/composition/union-type.js +60 -0
- package/esm/supergraph/composition/visitor.js +58 -0
- package/esm/supergraph/state.js +245 -0
- package/esm/supergraph/validation/rules/default-value-uses-inaccessible-rule.js +31 -0
- package/esm/supergraph/validation/rules/directive-composition-rule.js +94 -0
- package/esm/supergraph/validation/rules/enum-values-rule.js +55 -0
- package/esm/supergraph/validation/rules/extension-with-base.js +27 -0
- package/esm/supergraph/validation/rules/external-argument-missing-rule.js +28 -0
- package/esm/supergraph/validation/rules/external-missing-on-base-rule.js +44 -0
- package/esm/supergraph/validation/rules/external-type-mismatch-rule.js +48 -0
- package/esm/supergraph/validation/rules/field-argument-default-mismatch-rule.js +36 -0
- package/esm/supergraph/validation/rules/field-arguments-of-the-same-type-rule.js +45 -0
- package/esm/supergraph/validation/rules/fields-of-the-same-type-rule.js +85 -0
- package/esm/supergraph/validation/rules/input-field-default-mismatch-rule.js +36 -0
- package/esm/supergraph/validation/rules/input-object-values-rule.js +21 -0
- package/esm/supergraph/validation/rules/interface-key-missing-implementation-type.js +42 -0
- package/esm/supergraph/validation/rules/invalid-field-sharing-rule.js +41 -0
- package/esm/supergraph/validation/rules/only-inaccessible-children-rule.js +36 -0
- package/esm/supergraph/validation/rules/override-source-has-override.js +32 -0
- package/esm/supergraph/validation/rules/referenced-inaccessible-rule.js +40 -0
- package/esm/supergraph/validation/rules/required-argument-missing-in-some-subgraph-rule.js +28 -0
- package/esm/supergraph/validation/rules/required-input-field-missing-in-some-subgraph-rule.js +28 -0
- package/esm/supergraph/validation/rules/required-query-rule.js +10 -0
- package/esm/supergraph/validation/rules/satisfiablity-rule.js +862 -0
- package/esm/supergraph/validation/rules/subgraph-name-rule.js +14 -0
- package/esm/supergraph/validation/rules/types-of-the-same-kind-rule.js +50 -0
- package/esm/supergraph/validation/validate-supergraph.js +73 -0
- package/esm/supergraph/validation/validation-context.js +21 -0
- package/esm/types.js +0 -0
- package/esm/utils/dependency-graph.js +222 -0
- package/esm/utils/format.js +23 -0
- package/esm/utils/helpers.js +3 -0
- package/esm/utils/state.js +15 -0
- package/esm/validate.js +113 -0
- package/package.json +46 -0
- package/typings/compose.d.cts +16 -0
- package/typings/compose.d.ts +16 -0
- package/typings/graphql/helpers.d.cts +4 -0
- package/typings/graphql/helpers.d.ts +4 -0
- package/typings/graphql/printer.d.cts +3 -0
- package/typings/graphql/printer.d.ts +3 -0
- package/typings/graphql/type-node-info.d.cts +19 -0
- package/typings/graphql/type-node-info.d.ts +19 -0
- package/typings/index.d.cts +5 -0
- package/typings/index.d.ts +5 -0
- package/typings/specifications/federation.d.cts +45 -0
- package/typings/specifications/federation.d.ts +45 -0
- package/typings/specifications/inaccessible.d.cts +4 -0
- package/typings/specifications/inaccessible.d.ts +4 -0
- package/typings/specifications/join.d.cts +2 -0
- package/typings/specifications/join.d.ts +2 -0
- package/typings/specifications/link.d.cts +61 -0
- package/typings/specifications/link.d.ts +61 -0
- package/typings/specifications/tag.d.cts +4 -0
- package/typings/specifications/tag.d.ts +4 -0
- package/typings/subgraph/helpers.d.cts +44 -0
- package/typings/subgraph/helpers.d.ts +44 -0
- package/typings/subgraph/state.d.cts +322 -0
- package/typings/subgraph/state.d.ts +322 -0
- package/typings/subgraph/validation/rules/elements/compose-directive.d.cts +4 -0
- package/typings/subgraph/validation/rules/elements/compose-directive.d.ts +4 -0
- package/typings/subgraph/validation/rules/elements/extends.d.cts +4 -0
- package/typings/subgraph/validation/rules/elements/extends.d.ts +4 -0
- package/typings/subgraph/validation/rules/elements/external.d.cts +4 -0
- package/typings/subgraph/validation/rules/elements/external.d.ts +4 -0
- package/typings/subgraph/validation/rules/elements/field-set.d.cts +4 -0
- package/typings/subgraph/validation/rules/elements/field-set.d.ts +4 -0
- package/typings/subgraph/validation/rules/elements/inaccessible.d.cts +4 -0
- package/typings/subgraph/validation/rules/elements/inaccessible.d.ts +4 -0
- package/typings/subgraph/validation/rules/elements/key.d.cts +4 -0
- package/typings/subgraph/validation/rules/elements/key.d.ts +4 -0
- package/typings/subgraph/validation/rules/elements/override.d.cts +4 -0
- package/typings/subgraph/validation/rules/elements/override.d.ts +4 -0
- package/typings/subgraph/validation/rules/elements/provides.d.cts +4 -0
- package/typings/subgraph/validation/rules/elements/provides.d.ts +4 -0
- package/typings/subgraph/validation/rules/elements/requires.d.cts +4 -0
- package/typings/subgraph/validation/rules/elements/requires.d.ts +4 -0
- package/typings/subgraph/validation/rules/elements/shareable.d.cts +4 -0
- package/typings/subgraph/validation/rules/elements/shareable.d.ts +4 -0
- package/typings/subgraph/validation/rules/elements/tag.d.cts +4 -0
- package/typings/subgraph/validation/rules/elements/tag.d.ts +4 -0
- package/typings/subgraph/validation/rules/known-argument-names-on-directives-rule.d.cts +6 -0
- package/typings/subgraph/validation/rules/known-argument-names-on-directives-rule.d.ts +6 -0
- package/typings/subgraph/validation/rules/known-directives-rule.d.cts +6 -0
- package/typings/subgraph/validation/rules/known-directives-rule.d.ts +6 -0
- package/typings/subgraph/validation/rules/known-federation-directive-rule.d.cts +4 -0
- package/typings/subgraph/validation/rules/known-federation-directive-rule.d.ts +4 -0
- package/typings/subgraph/validation/rules/known-root-type-rule.d.cts +4 -0
- package/typings/subgraph/validation/rules/known-root-type-rule.d.ts +4 -0
- package/typings/subgraph/validation/rules/known-type-names-rule.d.cts +4 -0
- package/typings/subgraph/validation/rules/known-type-names-rule.d.ts +4 -0
- package/typings/subgraph/validation/rules/lone-schema-definition-rule.d.cts +5 -0
- package/typings/subgraph/validation/rules/lone-schema-definition-rule.d.ts +5 -0
- package/typings/subgraph/validation/rules/provided-arguments-on-directives-rule.d.cts +4 -0
- package/typings/subgraph/validation/rules/provided-arguments-on-directives-rule.d.ts +4 -0
- package/typings/subgraph/validation/rules/provided-required-arguments-on-directives-rule.d.cts +4 -0
- package/typings/subgraph/validation/rules/provided-required-arguments-on-directives-rule.d.ts +4 -0
- package/typings/subgraph/validation/rules/query-root-type-inaccessible-rule.d.cts +4 -0
- package/typings/subgraph/validation/rules/query-root-type-inaccessible-rule.d.ts +4 -0
- package/typings/subgraph/validation/rules/reserved-subgraph-name-rule.d.cts +4 -0
- package/typings/subgraph/validation/rules/reserved-subgraph-name-rule.d.ts +4 -0
- package/typings/subgraph/validation/rules/root-type-used-rule.d.cts +4 -0
- package/typings/subgraph/validation/rules/root-type-used-rule.d.ts +4 -0
- package/typings/subgraph/validation/rules/unique-argument-definition-names-rule.d.cts +5 -0
- package/typings/subgraph/validation/rules/unique-argument-definition-names-rule.d.ts +5 -0
- package/typings/subgraph/validation/rules/unique-argument-names-rule.d.cts +5 -0
- package/typings/subgraph/validation/rules/unique-argument-names-rule.d.ts +5 -0
- package/typings/subgraph/validation/rules/unique-directive-names-rule.d.cts +5 -0
- package/typings/subgraph/validation/rules/unique-directive-names-rule.d.ts +5 -0
- package/typings/subgraph/validation/rules/unique-directives-per-location-rule.d.cts +6 -0
- package/typings/subgraph/validation/rules/unique-directives-per-location-rule.d.ts +6 -0
- package/typings/subgraph/validation/rules/unique-enum-value-names-rule.d.cts +5 -0
- package/typings/subgraph/validation/rules/unique-enum-value-names-rule.d.ts +5 -0
- package/typings/subgraph/validation/rules/unique-field-definition-names-rule.d.cts +5 -0
- package/typings/subgraph/validation/rules/unique-field-definition-names-rule.d.ts +5 -0
- package/typings/subgraph/validation/rules/unique-input-field-names-rule.d.cts +5 -0
- package/typings/subgraph/validation/rules/unique-input-field-names-rule.d.ts +5 -0
- package/typings/subgraph/validation/rules/unique-operation-types-rule.d.cts +5 -0
- package/typings/subgraph/validation/rules/unique-operation-types-rule.d.ts +5 -0
- package/typings/subgraph/validation/rules/unique-type-names-rule.d.cts +5 -0
- package/typings/subgraph/validation/rules/unique-type-names-rule.d.ts +5 -0
- package/typings/subgraph/validation/validate-state.d.cts +13 -0
- package/typings/subgraph/validation/validate-state.d.ts +13 -0
- package/typings/subgraph/validation/validate-subgraph.d.cts +43 -0
- package/typings/subgraph/validation/validate-subgraph.d.ts +43 -0
- package/typings/subgraph/validation/validation-context.d.cts +182 -0
- package/typings/subgraph/validation/validation-context.d.ts +182 -0
- package/typings/supergraph/composition/ast.d.cts +216 -0
- package/typings/supergraph/composition/ast.d.ts +216 -0
- package/typings/supergraph/composition/common.d.cts +19 -0
- package/typings/supergraph/composition/common.d.ts +19 -0
- package/typings/supergraph/composition/directive.d.cts +32 -0
- package/typings/supergraph/composition/directive.d.ts +32 -0
- package/typings/supergraph/composition/enum-type.d.cts +32 -0
- package/typings/supergraph/composition/enum-type.d.ts +32 -0
- package/typings/supergraph/composition/input-object-type.d.cts +32 -0
- package/typings/supergraph/composition/input-object-type.d.ts +32 -0
- package/typings/supergraph/composition/interface-type.d.cts +61 -0
- package/typings/supergraph/composition/interface-type.d.ts +61 -0
- package/typings/supergraph/composition/object-type.d.cts +79 -0
- package/typings/supergraph/composition/object-type.d.ts +79 -0
- package/typings/supergraph/composition/scalar-type.d.cts +20 -0
- package/typings/supergraph/composition/scalar-type.d.ts +20 -0
- package/typings/supergraph/composition/union-type.d.cts +17 -0
- package/typings/supergraph/composition/union-type.d.ts +17 -0
- package/typings/supergraph/composition/visitor.d.cts +18 -0
- package/typings/supergraph/composition/visitor.d.ts +18 -0
- package/typings/supergraph/state.d.cts +51 -0
- package/typings/supergraph/state.d.ts +51 -0
- package/typings/supergraph/validation/rules/default-value-uses-inaccessible-rule.d.cts +5 -0
- package/typings/supergraph/validation/rules/default-value-uses-inaccessible-rule.d.ts +5 -0
- package/typings/supergraph/validation/rules/directive-composition-rule.d.cts +5 -0
- package/typings/supergraph/validation/rules/directive-composition-rule.d.ts +5 -0
- package/typings/supergraph/validation/rules/enum-values-rule.d.cts +4 -0
- package/typings/supergraph/validation/rules/enum-values-rule.d.ts +4 -0
- package/typings/supergraph/validation/rules/extension-with-base.d.cts +4 -0
- package/typings/supergraph/validation/rules/extension-with-base.d.ts +4 -0
- package/typings/supergraph/validation/rules/external-argument-missing-rule.d.cts +4 -0
- package/typings/supergraph/validation/rules/external-argument-missing-rule.d.ts +4 -0
- package/typings/supergraph/validation/rules/external-missing-on-base-rule.d.cts +4 -0
- package/typings/supergraph/validation/rules/external-missing-on-base-rule.d.ts +4 -0
- package/typings/supergraph/validation/rules/external-type-mismatch-rule.d.cts +4 -0
- package/typings/supergraph/validation/rules/external-type-mismatch-rule.d.ts +4 -0
- package/typings/supergraph/validation/rules/field-argument-default-mismatch-rule.d.cts +4 -0
- package/typings/supergraph/validation/rules/field-argument-default-mismatch-rule.d.ts +4 -0
- package/typings/supergraph/validation/rules/field-arguments-of-the-same-type-rule.d.cts +4 -0
- package/typings/supergraph/validation/rules/field-arguments-of-the-same-type-rule.d.ts +4 -0
- package/typings/supergraph/validation/rules/fields-of-the-same-type-rule.d.cts +4 -0
- package/typings/supergraph/validation/rules/fields-of-the-same-type-rule.d.ts +4 -0
- package/typings/supergraph/validation/rules/input-field-default-mismatch-rule.d.cts +4 -0
- package/typings/supergraph/validation/rules/input-field-default-mismatch-rule.d.ts +4 -0
- package/typings/supergraph/validation/rules/input-object-values-rule.d.cts +4 -0
- package/typings/supergraph/validation/rules/input-object-values-rule.d.ts +4 -0
- package/typings/supergraph/validation/rules/interface-key-missing-implementation-type.d.cts +4 -0
- package/typings/supergraph/validation/rules/interface-key-missing-implementation-type.d.ts +4 -0
- package/typings/supergraph/validation/rules/invalid-field-sharing-rule.d.cts +4 -0
- package/typings/supergraph/validation/rules/invalid-field-sharing-rule.d.ts +4 -0
- package/typings/supergraph/validation/rules/only-inaccessible-children-rule.d.cts +4 -0
- package/typings/supergraph/validation/rules/only-inaccessible-children-rule.d.ts +4 -0
- package/typings/supergraph/validation/rules/override-source-has-override.d.cts +4 -0
- package/typings/supergraph/validation/rules/override-source-has-override.d.ts +4 -0
- package/typings/supergraph/validation/rules/referenced-inaccessible-rule.d.cts +5 -0
- package/typings/supergraph/validation/rules/referenced-inaccessible-rule.d.ts +5 -0
- package/typings/supergraph/validation/rules/required-argument-missing-in-some-subgraph-rule.d.cts +4 -0
- package/typings/supergraph/validation/rules/required-argument-missing-in-some-subgraph-rule.d.ts +4 -0
- package/typings/supergraph/validation/rules/required-input-field-missing-in-some-subgraph-rule.d.cts +4 -0
- package/typings/supergraph/validation/rules/required-input-field-missing-in-some-subgraph-rule.d.ts +4 -0
- package/typings/supergraph/validation/rules/required-query-rule.d.cts +3 -0
- package/typings/supergraph/validation/rules/required-query-rule.d.ts +3 -0
- package/typings/supergraph/validation/rules/satisfiablity-rule.d.cts +5 -0
- package/typings/supergraph/validation/rules/satisfiablity-rule.d.ts +5 -0
- package/typings/supergraph/validation/rules/subgraph-name-rule.d.cts +3 -0
- package/typings/supergraph/validation/rules/subgraph-name-rule.d.ts +3 -0
- package/typings/supergraph/validation/rules/types-of-the-same-kind-rule.d.cts +3 -0
- package/typings/supergraph/validation/rules/types-of-the-same-kind-rule.d.ts +3 -0
- package/typings/supergraph/validation/validate-supergraph.d.cts +6 -0
- package/typings/supergraph/validation/validate-supergraph.d.ts +6 -0
- package/typings/supergraph/validation/validation-context.d.cts +10 -0
- package/typings/supergraph/validation/validation-context.d.ts +10 -0
- package/typings/types.d.cts +7 -0
- package/typings/types.d.ts +7 -0
- package/typings/utils/dependency-graph.d.cts +31 -0
- package/typings/utils/dependency-graph.d.ts +31 -0
- package/typings/utils/format.d.cts +2 -0
- package/typings/utils/format.d.ts +2 -0
- package/typings/utils/helpers.d.cts +2 -0
- package/typings/utils/helpers.d.ts +2 -0
- package/typings/utils/state.d.cts +6 -0
- package/typings/utils/state.d.ts +6 -0
- package/typings/validate.d.cts +37 -0
- package/typings/validate.d.ts +37 -0
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { ASTNode, ASTVisitor, DirectiveDefinitionNode, EnumValueDefinitionNode, FieldDefinitionNode, InputValueDefinitionNode, TypeDefinitionNode, TypeExtensionNode } from 'graphql';
|
|
2
|
+
type Maybe<T> = T | null | undefined;
|
|
3
|
+
export declare class TypeNodeInfo {
|
|
4
|
+
private _type;
|
|
5
|
+
private _field;
|
|
6
|
+
private _arg;
|
|
7
|
+
private _value;
|
|
8
|
+
constructor();
|
|
9
|
+
get [Symbol.toStringTag](): string;
|
|
10
|
+
getTypeDef(): Maybe<DirectiveDefinitionNode | TypeDefinitionNode | TypeExtensionNode>;
|
|
11
|
+
getFieldDef(): Maybe<FieldDefinitionNode | InputValueDefinitionNode>;
|
|
12
|
+
getArgumentDef(): Maybe<InputValueDefinitionNode>;
|
|
13
|
+
getValueDef(): Maybe<EnumValueDefinitionNode>;
|
|
14
|
+
enter(node: ASTNode): void;
|
|
15
|
+
leave(node: ASTNode): void;
|
|
16
|
+
}
|
|
17
|
+
export declare function visitWithTypeNodeInfo(typeInfo: TypeNodeInfo, visitor: ASTVisitor): ASTVisitor;
|
|
18
|
+
export {};
|
|
19
|
+
//# sourceMappingURL=type-node-info.d.ts.map
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { DirectiveDefinitionNode, DocumentNode, TypeDefinitionNode } from 'graphql';
|
|
2
|
+
import { Link, LinkImport } from './link.cjs';
|
|
3
|
+
export type FederationVersion = keyof typeof federationSpecFactory;
|
|
4
|
+
export declare function isFederationVersion(version: string): version is FederationVersion;
|
|
5
|
+
export declare function createSpecSchema<T extends FederationVersion & string>(version: T, imports?: readonly LinkImport[]): {
|
|
6
|
+
directives: DirectiveDefinitionNode[];
|
|
7
|
+
types: TypeDefinitionNode[];
|
|
8
|
+
};
|
|
9
|
+
declare const federationSpecFactory: {
|
|
10
|
+
'v1.0': (prefix: string) => {
|
|
11
|
+
directives: DirectiveDefinitionNode[];
|
|
12
|
+
types: TypeDefinitionNode[];
|
|
13
|
+
};
|
|
14
|
+
'v2.0': (prefix: string, imports?: readonly LinkImport[]) => {
|
|
15
|
+
directives: DirectiveDefinitionNode[];
|
|
16
|
+
types: TypeDefinitionNode[];
|
|
17
|
+
};
|
|
18
|
+
'v2.1': (prefix: string, imports?: readonly LinkImport[]) => {
|
|
19
|
+
directives: DirectiveDefinitionNode[];
|
|
20
|
+
types: TypeDefinitionNode[];
|
|
21
|
+
};
|
|
22
|
+
'v2.2': (prefix: string, imports?: readonly LinkImport[]) => {
|
|
23
|
+
directives: DirectiveDefinitionNode[];
|
|
24
|
+
types: TypeDefinitionNode[];
|
|
25
|
+
};
|
|
26
|
+
'v2.3': (prefix: string, imports?: readonly LinkImport[]) => {
|
|
27
|
+
directives: DirectiveDefinitionNode[];
|
|
28
|
+
types: TypeDefinitionNode[];
|
|
29
|
+
};
|
|
30
|
+
};
|
|
31
|
+
export declare function isFederationLink(link: Link): boolean;
|
|
32
|
+
export declare function detectFederationVersion(typeDefs: DocumentNode): {
|
|
33
|
+
version: "v1.0" | "v2.0" | "v2.1" | "v2.2" | "v2.3";
|
|
34
|
+
imports: ({
|
|
35
|
+
readonly kind: "type" | "directive";
|
|
36
|
+
readonly name: string;
|
|
37
|
+
readonly alias?: undefined;
|
|
38
|
+
} | {
|
|
39
|
+
readonly kind: "type" | "directive";
|
|
40
|
+
readonly name: string;
|
|
41
|
+
readonly alias: string;
|
|
42
|
+
})[];
|
|
43
|
+
};
|
|
44
|
+
export {};
|
|
45
|
+
//# sourceMappingURL=federation.d.ts.map
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { DirectiveDefinitionNode, DocumentNode, TypeDefinitionNode } from 'graphql';
|
|
2
|
+
import { Link, LinkImport } from './link.js';
|
|
3
|
+
export type FederationVersion = keyof typeof federationSpecFactory;
|
|
4
|
+
export declare function isFederationVersion(version: string): version is FederationVersion;
|
|
5
|
+
export declare function createSpecSchema<T extends FederationVersion & string>(version: T, imports?: readonly LinkImport[]): {
|
|
6
|
+
directives: DirectiveDefinitionNode[];
|
|
7
|
+
types: TypeDefinitionNode[];
|
|
8
|
+
};
|
|
9
|
+
declare const federationSpecFactory: {
|
|
10
|
+
'v1.0': (prefix: string) => {
|
|
11
|
+
directives: DirectiveDefinitionNode[];
|
|
12
|
+
types: TypeDefinitionNode[];
|
|
13
|
+
};
|
|
14
|
+
'v2.0': (prefix: string, imports?: readonly LinkImport[]) => {
|
|
15
|
+
directives: DirectiveDefinitionNode[];
|
|
16
|
+
types: TypeDefinitionNode[];
|
|
17
|
+
};
|
|
18
|
+
'v2.1': (prefix: string, imports?: readonly LinkImport[]) => {
|
|
19
|
+
directives: DirectiveDefinitionNode[];
|
|
20
|
+
types: TypeDefinitionNode[];
|
|
21
|
+
};
|
|
22
|
+
'v2.2': (prefix: string, imports?: readonly LinkImport[]) => {
|
|
23
|
+
directives: DirectiveDefinitionNode[];
|
|
24
|
+
types: TypeDefinitionNode[];
|
|
25
|
+
};
|
|
26
|
+
'v2.3': (prefix: string, imports?: readonly LinkImport[]) => {
|
|
27
|
+
directives: DirectiveDefinitionNode[];
|
|
28
|
+
types: TypeDefinitionNode[];
|
|
29
|
+
};
|
|
30
|
+
};
|
|
31
|
+
export declare function isFederationLink(link: Link): boolean;
|
|
32
|
+
export declare function detectFederationVersion(typeDefs: DocumentNode): {
|
|
33
|
+
version: "v1.0" | "v2.0" | "v2.1" | "v2.2" | "v2.3";
|
|
34
|
+
imports: ({
|
|
35
|
+
readonly kind: "type" | "directive";
|
|
36
|
+
readonly name: string;
|
|
37
|
+
readonly alias?: undefined;
|
|
38
|
+
} | {
|
|
39
|
+
readonly kind: "type" | "directive";
|
|
40
|
+
readonly name: string;
|
|
41
|
+
readonly alias: string;
|
|
42
|
+
})[];
|
|
43
|
+
};
|
|
44
|
+
export {};
|
|
45
|
+
//# sourceMappingURL=federation.d.ts.map
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export declare const sdl = "\n directive @inaccessible on FIELD_DEFINITION | OBJECT | INTERFACE | UNION | ENUM | ENUM_VALUE | SCALAR | INPUT_OBJECT | INPUT_FIELD_DEFINITION | ARGUMENT_DEFINITION\n";
|
|
2
|
+
export declare const typeDefs: import("graphql").DocumentNode;
|
|
3
|
+
export declare const directive: import("graphql").DirectiveDefinitionNode;
|
|
4
|
+
//# sourceMappingURL=inaccessible.d.ts.map
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export declare const sdl = "\n directive @inaccessible on FIELD_DEFINITION | OBJECT | INTERFACE | UNION | ENUM | ENUM_VALUE | SCALAR | INPUT_OBJECT | INPUT_FIELD_DEFINITION | ARGUMENT_DEFINITION\n";
|
|
2
|
+
export declare const typeDefs: import("graphql").DocumentNode;
|
|
3
|
+
export declare const directive: import("graphql").DirectiveDefinitionNode;
|
|
4
|
+
//# sourceMappingURL=inaccessible.d.ts.map
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export declare const sdl = "\n directive @join__enumValue(graph: join__Graph!) repeatable on ENUM_VALUE\n\n directive @join__field(\n graph: join__Graph\n requires: join__FieldSet\n provides: join__FieldSet\n type: String\n external: Boolean\n override: String\n usedOverridden: Boolean\n ) repeatable on FIELD_DEFINITION | INPUT_FIELD_DEFINITION\n\n directive @join__graph(name: String!, url: String!) on ENUM_VALUE\n\n directive @join__implements(\n graph: join__Graph!\n interface: String!\n ) repeatable on OBJECT | INTERFACE\n\n directive @join__type(\n graph: join__Graph!\n key: join__FieldSet\n extension: Boolean! = false\n resolvable: Boolean! = true\n isInterfaceObject: Boolean! = false\n ) repeatable on OBJECT | INTERFACE | UNION | ENUM | INPUT_OBJECT | SCALAR\n\n directive @join__unionMember(graph: join__Graph!, member: String!) repeatable on UNION\n\n scalar join__FieldSet\n";
|
|
2
|
+
//# sourceMappingURL=join.d.ts.map
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export declare const sdl = "\n directive @join__enumValue(graph: join__Graph!) repeatable on ENUM_VALUE\n\n directive @join__field(\n graph: join__Graph\n requires: join__FieldSet\n provides: join__FieldSet\n type: String\n external: Boolean\n override: String\n usedOverridden: Boolean\n ) repeatable on FIELD_DEFINITION | INPUT_FIELD_DEFINITION\n\n directive @join__graph(name: String!, url: String!) on ENUM_VALUE\n\n directive @join__implements(\n graph: join__Graph!\n interface: String!\n ) repeatable on OBJECT | INTERFACE\n\n directive @join__type(\n graph: join__Graph!\n key: join__FieldSet\n extension: Boolean! = false\n resolvable: Boolean! = true\n isInterfaceObject: Boolean! = false\n ) repeatable on OBJECT | INTERFACE | UNION | ENUM | INPUT_OBJECT | SCALAR\n\n directive @join__unionMember(graph: join__Graph!, member: String!) repeatable on UNION\n\n scalar join__FieldSet\n";
|
|
2
|
+
//# sourceMappingURL=join.d.ts.map
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import { ConstDirectiveNode } from 'graphql';
|
|
2
|
+
export type Link = ReturnType<typeof parseLink>;
|
|
3
|
+
export type LinkImport = ReturnType<typeof parseLink>['imports'][number];
|
|
4
|
+
export declare function printLink(link: Link): string;
|
|
5
|
+
export declare function parseLinkUrl(urlString: string): {
|
|
6
|
+
name: null;
|
|
7
|
+
version: null;
|
|
8
|
+
identity: string;
|
|
9
|
+
} | {
|
|
10
|
+
name: string;
|
|
11
|
+
version: string;
|
|
12
|
+
identity: string;
|
|
13
|
+
} | {
|
|
14
|
+
name: null;
|
|
15
|
+
version: string;
|
|
16
|
+
identity: string;
|
|
17
|
+
} | {
|
|
18
|
+
name: string;
|
|
19
|
+
version: null;
|
|
20
|
+
identity: string;
|
|
21
|
+
};
|
|
22
|
+
export declare function parseLinkImport(importString: string): ({
|
|
23
|
+
readonly kind: "type" | "directive";
|
|
24
|
+
readonly name: string;
|
|
25
|
+
readonly alias?: undefined;
|
|
26
|
+
} | {
|
|
27
|
+
readonly kind: "type" | "directive";
|
|
28
|
+
readonly name: string;
|
|
29
|
+
readonly alias: string;
|
|
30
|
+
})[];
|
|
31
|
+
export declare function mergeLinks(links: readonly Link[]): readonly Link[];
|
|
32
|
+
export declare function parseLink(urlString: string, importString: string): {
|
|
33
|
+
name: string | null;
|
|
34
|
+
version: string | null;
|
|
35
|
+
identity: string;
|
|
36
|
+
imports: ({
|
|
37
|
+
readonly kind: "type" | "directive";
|
|
38
|
+
readonly name: string;
|
|
39
|
+
readonly alias?: undefined;
|
|
40
|
+
} | {
|
|
41
|
+
readonly kind: "type" | "directive";
|
|
42
|
+
readonly name: string;
|
|
43
|
+
readonly alias: string;
|
|
44
|
+
})[];
|
|
45
|
+
};
|
|
46
|
+
export declare function parseLinkDirective(directive: ConstDirectiveNode): {
|
|
47
|
+
name: string | null;
|
|
48
|
+
version: string | null;
|
|
49
|
+
identity: string;
|
|
50
|
+
imports: ({
|
|
51
|
+
readonly kind: "type" | "directive";
|
|
52
|
+
readonly name: string;
|
|
53
|
+
readonly alias?: undefined;
|
|
54
|
+
} | {
|
|
55
|
+
readonly kind: "type" | "directive";
|
|
56
|
+
readonly name: string;
|
|
57
|
+
readonly alias: string;
|
|
58
|
+
})[];
|
|
59
|
+
} | null;
|
|
60
|
+
export declare const sdl = "\n directive @link(\n url: String\n as: String\n for: link__Purpose\n import: [link__Import]\n ) repeatable on SCHEMA\n\n scalar link__Import\n\n enum link__Purpose {\n \"\"\"\n `SECURITY` features provide metadata necessary to securely resolve fields.\n \"\"\"\n SECURITY\n\n \"\"\"\n `EXECUTION` features provide metadata necessary for operation execution.\n \"\"\"\n EXECUTION\n }\n";
|
|
61
|
+
//# sourceMappingURL=link.d.ts.map
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import { ConstDirectiveNode } from 'graphql';
|
|
2
|
+
export type Link = ReturnType<typeof parseLink>;
|
|
3
|
+
export type LinkImport = ReturnType<typeof parseLink>['imports'][number];
|
|
4
|
+
export declare function printLink(link: Link): string;
|
|
5
|
+
export declare function parseLinkUrl(urlString: string): {
|
|
6
|
+
name: null;
|
|
7
|
+
version: null;
|
|
8
|
+
identity: string;
|
|
9
|
+
} | {
|
|
10
|
+
name: string;
|
|
11
|
+
version: string;
|
|
12
|
+
identity: string;
|
|
13
|
+
} | {
|
|
14
|
+
name: null;
|
|
15
|
+
version: string;
|
|
16
|
+
identity: string;
|
|
17
|
+
} | {
|
|
18
|
+
name: string;
|
|
19
|
+
version: null;
|
|
20
|
+
identity: string;
|
|
21
|
+
};
|
|
22
|
+
export declare function parseLinkImport(importString: string): ({
|
|
23
|
+
readonly kind: "type" | "directive";
|
|
24
|
+
readonly name: string;
|
|
25
|
+
readonly alias?: undefined;
|
|
26
|
+
} | {
|
|
27
|
+
readonly kind: "type" | "directive";
|
|
28
|
+
readonly name: string;
|
|
29
|
+
readonly alias: string;
|
|
30
|
+
})[];
|
|
31
|
+
export declare function mergeLinks(links: readonly Link[]): readonly Link[];
|
|
32
|
+
export declare function parseLink(urlString: string, importString: string): {
|
|
33
|
+
name: string | null;
|
|
34
|
+
version: string | null;
|
|
35
|
+
identity: string;
|
|
36
|
+
imports: ({
|
|
37
|
+
readonly kind: "type" | "directive";
|
|
38
|
+
readonly name: string;
|
|
39
|
+
readonly alias?: undefined;
|
|
40
|
+
} | {
|
|
41
|
+
readonly kind: "type" | "directive";
|
|
42
|
+
readonly name: string;
|
|
43
|
+
readonly alias: string;
|
|
44
|
+
})[];
|
|
45
|
+
};
|
|
46
|
+
export declare function parseLinkDirective(directive: ConstDirectiveNode): {
|
|
47
|
+
name: string | null;
|
|
48
|
+
version: string | null;
|
|
49
|
+
identity: string;
|
|
50
|
+
imports: ({
|
|
51
|
+
readonly kind: "type" | "directive";
|
|
52
|
+
readonly name: string;
|
|
53
|
+
readonly alias?: undefined;
|
|
54
|
+
} | {
|
|
55
|
+
readonly kind: "type" | "directive";
|
|
56
|
+
readonly name: string;
|
|
57
|
+
readonly alias: string;
|
|
58
|
+
})[];
|
|
59
|
+
} | null;
|
|
60
|
+
export declare const sdl = "\n directive @link(\n url: String\n as: String\n for: link__Purpose\n import: [link__Import]\n ) repeatable on SCHEMA\n\n scalar link__Import\n\n enum link__Purpose {\n \"\"\"\n `SECURITY` features provide metadata necessary to securely resolve fields.\n \"\"\"\n SECURITY\n\n \"\"\"\n `EXECUTION` features provide metadata necessary for operation execution.\n \"\"\"\n EXECUTION\n }\n";
|
|
61
|
+
//# sourceMappingURL=link.d.ts.map
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export declare const sdl = "\n directive @tag(\n name: String!\n ) repeatable on FIELD_DEFINITION | OBJECT | INTERFACE | UNION | ARGUMENT_DEFINITION | SCALAR | ENUM | ENUM_VALUE | INPUT_OBJECT | INPUT_FIELD_DEFINITION | SCHEMA\n";
|
|
2
|
+
export declare const typeDefs: import("graphql").DocumentNode;
|
|
3
|
+
export declare const directive: import("graphql").DirectiveDefinitionNode;
|
|
4
|
+
//# sourceMappingURL=tag.d.ts.map
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export declare const sdl = "\n directive @tag(\n name: String!\n ) repeatable on FIELD_DEFINITION | OBJECT | INTERFACE | UNION | ARGUMENT_DEFINITION | SCALAR | ENUM | ENUM_VALUE | INPUT_OBJECT | INPUT_FIELD_DEFINITION | SCHEMA\n";
|
|
2
|
+
export declare const typeDefs: import("graphql").DocumentNode;
|
|
3
|
+
export declare const directive: import("graphql").DirectiveDefinitionNode;
|
|
4
|
+
//# sourceMappingURL=tag.d.ts.map
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { DirectiveDefinitionNode, DirectiveNode, InterfaceTypeDefinitionNode, InterfaceTypeExtensionNode, NamedTypeNode, ObjectTypeDefinitionNode, ObjectTypeExtensionNode, SelectionSetNode, TypeNode } from 'graphql';
|
|
2
|
+
import { SubgraphValidationContext } from './validation/validation-context.cjs';
|
|
3
|
+
export declare function validateDirectiveAgainstOriginal(providedDirectiveNode: DirectiveDefinitionNode, directiveName: string, context: SubgraphValidationContext): void;
|
|
4
|
+
type ObjectOrInterface = ObjectTypeDefinitionNode | ObjectTypeExtensionNode | InterfaceTypeDefinitionNode | InterfaceTypeExtensionNode;
|
|
5
|
+
export declare function visitFields({ context, selectionSet, typeDefinition, interceptField, interceptArguments, interceptUnknownField, interceptDirective, interceptInterfaceType, interceptExternalField, interceptNonExternalField, }: {
|
|
6
|
+
context: SubgraphValidationContext;
|
|
7
|
+
selectionSet: SelectionSetNode;
|
|
8
|
+
typeDefinition: ObjectOrInterface;
|
|
9
|
+
interceptField?(info: {
|
|
10
|
+
typeDefinition: ObjectOrInterface;
|
|
11
|
+
fieldName: string;
|
|
12
|
+
}): void;
|
|
13
|
+
interceptArguments?(info: {
|
|
14
|
+
typeDefinition: ObjectOrInterface;
|
|
15
|
+
fieldName: string;
|
|
16
|
+
}): void;
|
|
17
|
+
interceptUnknownField?(info: {
|
|
18
|
+
typeDefinition: ObjectOrInterface;
|
|
19
|
+
fieldName: string;
|
|
20
|
+
}): void;
|
|
21
|
+
interceptDirective?(info: {
|
|
22
|
+
directiveName: string;
|
|
23
|
+
isKnown: boolean;
|
|
24
|
+
}): void;
|
|
25
|
+
interceptInterfaceType?(info: {
|
|
26
|
+
typeDefinition: ObjectOrInterface;
|
|
27
|
+
fieldName: string;
|
|
28
|
+
}): void;
|
|
29
|
+
interceptExternalField?(info: {
|
|
30
|
+
typeDefinition: ObjectOrInterface;
|
|
31
|
+
fieldName: string;
|
|
32
|
+
}): void;
|
|
33
|
+
interceptNonExternalField?(info: {
|
|
34
|
+
typeDefinition: ObjectOrInterface;
|
|
35
|
+
fieldName: string;
|
|
36
|
+
}): void;
|
|
37
|
+
}): void;
|
|
38
|
+
export declare function getFieldsArgument(directiveNode: DirectiveNode): import("graphql").ArgumentNode | undefined;
|
|
39
|
+
export declare function parseFields(fields: string): SelectionSetNode | undefined;
|
|
40
|
+
export declare function namedTypeFromTypeNode(type: TypeNode): NamedTypeNode;
|
|
41
|
+
export declare function isDirectiveDefinitionNode(node: any): node is DirectiveDefinitionNode;
|
|
42
|
+
export declare function printOutputType(type: TypeNode): string;
|
|
43
|
+
export {};
|
|
44
|
+
//# sourceMappingURL=helpers.d.ts.map
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { DirectiveDefinitionNode, DirectiveNode, InterfaceTypeDefinitionNode, InterfaceTypeExtensionNode, NamedTypeNode, ObjectTypeDefinitionNode, ObjectTypeExtensionNode, SelectionSetNode, TypeNode } from 'graphql';
|
|
2
|
+
import { SubgraphValidationContext } from './validation/validation-context.js';
|
|
3
|
+
export declare function validateDirectiveAgainstOriginal(providedDirectiveNode: DirectiveDefinitionNode, directiveName: string, context: SubgraphValidationContext): void;
|
|
4
|
+
type ObjectOrInterface = ObjectTypeDefinitionNode | ObjectTypeExtensionNode | InterfaceTypeDefinitionNode | InterfaceTypeExtensionNode;
|
|
5
|
+
export declare function visitFields({ context, selectionSet, typeDefinition, interceptField, interceptArguments, interceptUnknownField, interceptDirective, interceptInterfaceType, interceptExternalField, interceptNonExternalField, }: {
|
|
6
|
+
context: SubgraphValidationContext;
|
|
7
|
+
selectionSet: SelectionSetNode;
|
|
8
|
+
typeDefinition: ObjectOrInterface;
|
|
9
|
+
interceptField?(info: {
|
|
10
|
+
typeDefinition: ObjectOrInterface;
|
|
11
|
+
fieldName: string;
|
|
12
|
+
}): void;
|
|
13
|
+
interceptArguments?(info: {
|
|
14
|
+
typeDefinition: ObjectOrInterface;
|
|
15
|
+
fieldName: string;
|
|
16
|
+
}): void;
|
|
17
|
+
interceptUnknownField?(info: {
|
|
18
|
+
typeDefinition: ObjectOrInterface;
|
|
19
|
+
fieldName: string;
|
|
20
|
+
}): void;
|
|
21
|
+
interceptDirective?(info: {
|
|
22
|
+
directiveName: string;
|
|
23
|
+
isKnown: boolean;
|
|
24
|
+
}): void;
|
|
25
|
+
interceptInterfaceType?(info: {
|
|
26
|
+
typeDefinition: ObjectOrInterface;
|
|
27
|
+
fieldName: string;
|
|
28
|
+
}): void;
|
|
29
|
+
interceptExternalField?(info: {
|
|
30
|
+
typeDefinition: ObjectOrInterface;
|
|
31
|
+
fieldName: string;
|
|
32
|
+
}): void;
|
|
33
|
+
interceptNonExternalField?(info: {
|
|
34
|
+
typeDefinition: ObjectOrInterface;
|
|
35
|
+
fieldName: string;
|
|
36
|
+
}): void;
|
|
37
|
+
}): void;
|
|
38
|
+
export declare function getFieldsArgument(directiveNode: DirectiveNode): import("graphql").ArgumentNode | undefined;
|
|
39
|
+
export declare function parseFields(fields: string): SelectionSetNode | undefined;
|
|
40
|
+
export declare function namedTypeFromTypeNode(type: TypeNode): NamedTypeNode;
|
|
41
|
+
export declare function isDirectiveDefinitionNode(node: any): node is DirectiveDefinitionNode;
|
|
42
|
+
export declare function printOutputType(type: TypeNode): string;
|
|
43
|
+
export {};
|
|
44
|
+
//# sourceMappingURL=helpers.d.ts.map
|