@weavelogic/knowledge-graph-agent 0.4.0 → 0.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +339 -679
- package/dist/_virtual/ExpiringCache.js +5 -0
- package/dist/_virtual/ExpiringCache.js.map +1 -0
- package/dist/_virtual/___vite-browser-external.js +7 -0
- package/dist/_virtual/___vite-browser-external.js.map +1 -0
- package/dist/_virtual/__vite-browser-external.js +5 -0
- package/dist/_virtual/__vite-browser-external.js.map +1 -0
- package/dist/_virtual/_commonjs-dynamic-modules.js +7 -0
- package/dist/_virtual/_commonjs-dynamic-modules.js.map +1 -0
- package/dist/_virtual/_commonjsHelpers.js +27 -0
- package/dist/_virtual/_commonjsHelpers.js.map +1 -1
- package/dist/_virtual/assert-valid-pattern.js +5 -0
- package/dist/_virtual/assert-valid-pattern.js.map +1 -0
- package/dist/_virtual/ast-converter.js +5 -0
- package/dist/_virtual/ast-converter.js.map +1 -0
- package/dist/_virtual/ast-spec.js +5 -0
- package/dist/_virtual/ast-spec.js.map +1 -0
- package/dist/_virtual/ast.js +5 -0
- package/dist/_virtual/ast.js.map +1 -0
- package/dist/_virtual/brace-expressions.js +5 -0
- package/dist/_virtual/brace-expressions.js.map +1 -0
- package/dist/_virtual/browser.js +6 -0
- package/dist/_virtual/browser.js.map +1 -0
- package/dist/_virtual/browser2.js +5 -0
- package/dist/_virtual/browser2.js.map +1 -0
- package/dist/_virtual/candidateTSConfigRootDirs.js +5 -0
- package/dist/_virtual/candidateTSConfigRootDirs.js.map +1 -0
- package/dist/_virtual/check-modifiers.js +5 -0
- package/dist/_virtual/check-modifiers.js.map +1 -0
- package/dist/_virtual/clear-caches.js +5 -0
- package/dist/_virtual/clear-caches.js.map +1 -0
- package/dist/_virtual/compilerOptions.js +5 -0
- package/dist/_virtual/compilerOptions.js.map +1 -0
- package/dist/_virtual/convert-comments.js +5 -0
- package/dist/_virtual/convert-comments.js.map +1 -0
- package/dist/_virtual/convert.js +5 -0
- package/dist/_virtual/convert.js.map +1 -0
- package/dist/_virtual/createIsolatedProgram.js +5 -0
- package/dist/_virtual/createIsolatedProgram.js.map +1 -0
- package/dist/_virtual/createParseSettings.js +5 -0
- package/dist/_virtual/createParseSettings.js.map +1 -0
- package/dist/_virtual/createParserServices.js +5 -0
- package/dist/_virtual/createParserServices.js.map +1 -0
- package/dist/_virtual/createProjectProgram.js +5 -0
- package/dist/_virtual/createProjectProgram.js.map +1 -0
- package/dist/_virtual/createProjectProgramError.js +5 -0
- package/dist/_virtual/createProjectProgramError.js.map +1 -0
- package/dist/_virtual/createProjectService.js +5 -0
- package/dist/_virtual/createProjectService.js.map +1 -0
- package/dist/_virtual/createSourceFile.js +5 -0
- package/dist/_virtual/createSourceFile.js.map +1 -0
- package/dist/_virtual/describeFilePath.js +5 -0
- package/dist/_virtual/describeFilePath.js.map +1 -0
- package/dist/_virtual/escape.js +5 -0
- package/dist/_virtual/escape.js.map +1 -0
- package/dist/_virtual/eslint-visitor-keys.js +5 -0
- package/dist/_virtual/eslint-visitor-keys.js.map +1 -0
- package/dist/_virtual/estree-to-ts-node-types.js +5 -0
- package/dist/_virtual/estree-to-ts-node-types.js.map +1 -0
- package/dist/_virtual/get-keys.js +5 -0
- package/dist/_virtual/get-keys.js.map +1 -0
- package/dist/_virtual/getModifiers.js +5 -0
- package/dist/_virtual/getModifiers.js.map +1 -0
- package/dist/_virtual/getParsedConfigFile.js +5 -0
- package/dist/_virtual/getParsedConfigFile.js.map +1 -0
- package/dist/_virtual/getParsedConfigFileFromTSServer.js +5 -0
- package/dist/_virtual/getParsedConfigFileFromTSServer.js.map +1 -0
- package/dist/_virtual/getProjectConfigFiles.js +5 -0
- package/dist/_virtual/getProjectConfigFiles.js.map +1 -0
- package/dist/_virtual/getScriptKind.js +5 -0
- package/dist/_virtual/getScriptKind.js.map +1 -0
- package/dist/_virtual/getWatchProgramsForProjects.js +5 -0
- package/dist/_virtual/getWatchProgramsForProjects.js.map +1 -0
- package/dist/_virtual/global-ponyfill.js +9 -0
- package/dist/_virtual/global-ponyfill.js.map +1 -0
- package/dist/_virtual/global-ponyfill2.js +5 -0
- package/dist/_virtual/global-ponyfill2.js.map +1 -0
- package/dist/_virtual/index.js +2 -4
- package/dist/_virtual/index.js.map +1 -1
- package/dist/_virtual/index10.js +2 -2
- package/dist/_virtual/index11.js +2 -2
- package/dist/_virtual/index2.js +2 -2
- package/dist/_virtual/index3.js +2 -2
- package/dist/_virtual/index4.js +2 -2
- package/dist/_virtual/index5.js +2 -2
- package/dist/_virtual/index6.js +2 -2
- package/dist/_virtual/index7.js +2 -2
- package/dist/_virtual/index8.js +2 -2
- package/dist/_virtual/index9.js +2 -2
- package/dist/_virtual/inferSingleRun.js +5 -0
- package/dist/_virtual/inferSingleRun.js.map +1 -0
- package/dist/_virtual/lib.js +5 -0
- package/dist/_virtual/lib.js.map +1 -0
- package/dist/_virtual/node-utils.js +5 -0
- package/dist/_virtual/node-utils.js.map +1 -0
- package/dist/_virtual/parser-options.js +5 -0
- package/dist/_virtual/parser-options.js.map +1 -0
- package/dist/_virtual/parser.js +5 -0
- package/dist/_virtual/parser.js.map +1 -0
- package/dist/_virtual/re.js +5 -0
- package/dist/_virtual/re.js.map +1 -0
- package/dist/_virtual/resolveProjectList.js +5 -0
- package/dist/_virtual/resolveProjectList.js.map +1 -0
- package/dist/_virtual/semantic-or-syntactic-errors.js +5 -0
- package/dist/_virtual/semantic-or-syntactic-errors.js.map +1 -0
- package/dist/_virtual/shared.js +5 -0
- package/dist/_virtual/shared.js.map +1 -0
- package/dist/_virtual/simple-traverse.js +5 -0
- package/dist/_virtual/simple-traverse.js.map +1 -0
- package/dist/_virtual/source-files.js +5 -0
- package/dist/_virtual/source-files.js.map +1 -0
- package/dist/_virtual/ts-estree.js +5 -0
- package/dist/_virtual/ts-estree.js.map +1 -0
- package/dist/_virtual/ts-nodes.js +5 -0
- package/dist/_virtual/ts-nodes.js.map +1 -0
- package/dist/_virtual/tsserverlibrary.js +5 -0
- package/dist/_virtual/tsserverlibrary.js.map +1 -0
- package/dist/_virtual/typescript.js +5 -0
- package/dist/_virtual/typescript.js.map +1 -0
- package/dist/_virtual/unescape.js +5 -0
- package/dist/_virtual/unescape.js.map +1 -0
- package/dist/_virtual/useProgramFromProjectService.js +5 -0
- package/dist/_virtual/useProgramFromProjectService.js.map +1 -0
- package/dist/_virtual/useProvidedPrograms.js +5 -0
- package/dist/_virtual/useProvidedPrograms.js.map +1 -0
- package/dist/_virtual/utils.js +5 -0
- package/dist/_virtual/utils.js.map +1 -0
- package/dist/_virtual/validateDefaultProjectForFilesGlob.js +5 -0
- package/dist/_virtual/validateDefaultProjectForFilesGlob.js.map +1 -0
- package/dist/_virtual/version-check.js +5 -0
- package/dist/_virtual/version-check.js.map +1 -0
- package/dist/_virtual/version.js +5 -0
- package/dist/_virtual/version.js.map +1 -0
- package/dist/_virtual/visitor-keys.js +5 -0
- package/dist/_virtual/visitor-keys.js.map +1 -0
- package/dist/_virtual/warnAboutTSVersion.js +5 -0
- package/dist/_virtual/warnAboutTSVersion.js.map +1 -0
- package/dist/_virtual/withoutProjectParserOptions.js +5 -0
- package/dist/_virtual/withoutProjectParserOptions.js.map +1 -0
- package/dist/_virtual/xhtml-entities.js +5 -0
- package/dist/_virtual/xhtml-entities.js.map +1 -0
- package/dist/cli/commands/dashboard.d.ts +14 -0
- package/dist/cli/commands/dashboard.d.ts.map +1 -0
- package/dist/cli/commands/dashboard.js +271 -0
- package/dist/cli/commands/dashboard.js.map +1 -0
- package/dist/cli/commands/plugin.d.ts +14 -0
- package/dist/cli/commands/plugin.d.ts.map +1 -0
- package/dist/cli/commands/plugin.js +784 -0
- package/dist/cli/commands/plugin.js.map +1 -0
- package/dist/cli/commands/serve.d.ts +15 -0
- package/dist/cli/commands/serve.d.ts.map +1 -0
- package/dist/cli/commands/serve.js +252 -0
- package/dist/cli/commands/serve.js.map +1 -0
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +28 -1
- package/dist/cli/index.js.map +1 -1
- package/dist/config/manager.js +325 -0
- package/dist/config/manager.js.map +1 -0
- package/dist/dashboard-server/index.d.ts +31 -0
- package/dist/dashboard-server/index.d.ts.map +1 -0
- package/dist/dashboard-server/server.d.ts +205 -0
- package/dist/dashboard-server/server.d.ts.map +1 -0
- package/dist/dashboard-server/server.js +651 -0
- package/dist/dashboard-server/server.js.map +1 -0
- package/dist/graphql/context.d.ts +154 -0
- package/dist/graphql/context.d.ts.map +1 -0
- package/dist/graphql/context.js +168 -0
- package/dist/graphql/context.js.map +1 -0
- package/dist/graphql/index.d.ts +12 -0
- package/dist/graphql/index.d.ts.map +1 -0
- package/dist/graphql/pubsub.d.ts +282 -0
- package/dist/graphql/pubsub.d.ts.map +1 -0
- package/dist/graphql/resolvers/index.d.ts +519 -0
- package/dist/graphql/resolvers/index.d.ts.map +1 -0
- package/dist/graphql/resolvers/mutations.d.ts +255 -0
- package/dist/graphql/resolvers/mutations.d.ts.map +1 -0
- package/dist/graphql/resolvers/queries.d.ts +451 -0
- package/dist/graphql/resolvers/queries.d.ts.map +1 -0
- package/dist/graphql/resolvers/subscriptions.d.ts +399 -0
- package/dist/graphql/resolvers/subscriptions.d.ts.map +1 -0
- package/dist/graphql/scalars.d.ts +89 -0
- package/dist/graphql/scalars.d.ts.map +1 -0
- package/dist/graphql/scalars.js +242 -0
- package/dist/graphql/scalars.js.map +1 -0
- package/dist/graphql/server.d.ts +122 -0
- package/dist/graphql/server.d.ts.map +1 -0
- package/dist/graphql/server.js +368 -0
- package/dist/graphql/server.js.map +1 -0
- package/dist/index.d.ts +5 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +106 -0
- package/dist/index.js.map +1 -1
- package/dist/mcp-server/handlers/index.js +1 -1
- package/dist/mcp-server/server.js +2 -2
- package/dist/node_modules/@envelop/core/esm/create.js +31 -0
- package/dist/node_modules/@envelop/core/esm/create.js.map +1 -0
- package/dist/node_modules/@envelop/core/esm/document-string-map.js +5 -0
- package/dist/node_modules/@envelop/core/esm/document-string-map.js.map +1 -0
- package/dist/node_modules/@envelop/core/esm/orchestrator.js +407 -0
- package/dist/node_modules/@envelop/core/esm/orchestrator.js.map +1 -0
- package/dist/node_modules/@envelop/core/esm/plugins/use-engine.js +29 -0
- package/dist/node_modules/@envelop/core/esm/plugins/use-engine.js.map +1 -0
- package/dist/node_modules/@envelop/core/esm/plugins/use-extend-context.js +10 -0
- package/dist/node_modules/@envelop/core/esm/plugins/use-extend-context.js.map +1 -0
- package/dist/node_modules/@envelop/core/esm/plugins/use-masked-errors.js +86 -0
- package/dist/node_modules/@envelop/core/esm/plugins/use-masked-errors.js.map +1 -0
- package/dist/node_modules/@envelop/core/esm/utils.js +129 -0
- package/dist/node_modules/@envelop/core/esm/utils.js.map +1 -0
- package/dist/node_modules/@envelop/instrumentation/esm/instrumentation.js +51 -0
- package/dist/node_modules/@envelop/instrumentation/esm/instrumentation.js.map +1 -0
- package/dist/node_modules/@graphql-tools/executor/esm/execution/coerceError.js +26 -0
- package/dist/node_modules/@graphql-tools/executor/esm/execution/coerceError.js.map +1 -0
- package/dist/node_modules/@graphql-tools/executor/esm/execution/execute.js +1101 -0
- package/dist/node_modules/@graphql-tools/executor/esm/execution/execute.js.map +1 -0
- package/dist/node_modules/@graphql-tools/executor/esm/execution/flattenAsyncIterable.js +72 -0
- package/dist/node_modules/@graphql-tools/executor/esm/execution/flattenAsyncIterable.js.map +1 -0
- package/dist/node_modules/@graphql-tools/executor/esm/execution/invariant.js +9 -0
- package/dist/node_modules/@graphql-tools/executor/esm/execution/invariant.js.map +1 -0
- package/dist/node_modules/@graphql-tools/executor/esm/execution/normalizedExecutor.js +22 -0
- package/dist/node_modules/@graphql-tools/executor/esm/execution/normalizedExecutor.js.map +1 -0
- package/dist/node_modules/@graphql-tools/executor/esm/execution/promiseForObject.js +26 -0
- package/dist/node_modules/@graphql-tools/executor/esm/execution/promiseForObject.js.map +1 -0
- package/dist/node_modules/@graphql-tools/executor/esm/execution/values.js +73 -0
- package/dist/node_modules/@graphql-tools/executor/esm/execution/values.js.map +1 -0
- package/dist/node_modules/@graphql-tools/merge/esm/extensions.js +46 -0
- package/dist/node_modules/@graphql-tools/merge/esm/extensions.js.map +1 -0
- package/dist/node_modules/@graphql-tools/merge/esm/links.js +142 -0
- package/dist/node_modules/@graphql-tools/merge/esm/links.js.map +1 -0
- package/dist/node_modules/@graphql-tools/merge/esm/merge-resolvers.js +27 -0
- package/dist/node_modules/@graphql-tools/merge/esm/merge-resolvers.js.map +1 -0
- package/dist/node_modules/@graphql-tools/merge/esm/typedefs-mergers/arguments.js +23 -0
- package/dist/node_modules/@graphql-tools/merge/esm/typedefs-mergers/arguments.js.map +1 -0
- package/dist/node_modules/@graphql-tools/merge/esm/typedefs-mergers/directives.js +113 -0
- package/dist/node_modules/@graphql-tools/merge/esm/typedefs-mergers/directives.js.map +1 -0
- package/dist/node_modules/@graphql-tools/merge/esm/typedefs-mergers/enum-values.js +39 -0
- package/dist/node_modules/@graphql-tools/merge/esm/typedefs-mergers/enum-values.js.map +1 -0
- package/dist/node_modules/@graphql-tools/merge/esm/typedefs-mergers/enum.js +23 -0
- package/dist/node_modules/@graphql-tools/merge/esm/typedefs-mergers/enum.js.map +1 -0
- package/dist/node_modules/@graphql-tools/merge/esm/typedefs-mergers/fields.js +74 -0
- package/dist/node_modules/@graphql-tools/merge/esm/typedefs-mergers/fields.js.map +1 -0
- package/dist/node_modules/@graphql-tools/merge/esm/typedefs-mergers/input-type.js +27 -0
- package/dist/node_modules/@graphql-tools/merge/esm/typedefs-mergers/input-type.js.map +1 -0
- package/dist/node_modules/@graphql-tools/merge/esm/typedefs-mergers/interface.js +29 -0
- package/dist/node_modules/@graphql-tools/merge/esm/typedefs-mergers/interface.js.map +1 -0
- package/dist/node_modules/@graphql-tools/merge/esm/typedefs-mergers/merge-named-type-array.js +15 -0
- package/dist/node_modules/@graphql-tools/merge/esm/typedefs-mergers/merge-named-type-array.js.map +1 -0
- package/dist/node_modules/@graphql-tools/merge/esm/typedefs-mergers/merge-nodes.js +81 -0
- package/dist/node_modules/@graphql-tools/merge/esm/typedefs-mergers/merge-nodes.js.map +1 -0
- package/dist/node_modules/@graphql-tools/merge/esm/typedefs-mergers/merge-typedefs.js +142 -0
- package/dist/node_modules/@graphql-tools/merge/esm/typedefs-mergers/merge-typedefs.js.map +1 -0
- package/dist/node_modules/@graphql-tools/merge/esm/typedefs-mergers/scalar.js +21 -0
- package/dist/node_modules/@graphql-tools/merge/esm/typedefs-mergers/scalar.js.map +1 -0
- package/dist/node_modules/@graphql-tools/merge/esm/typedefs-mergers/schema-def.js +36 -0
- package/dist/node_modules/@graphql-tools/merge/esm/typedefs-mergers/schema-def.js.map +1 -0
- package/dist/node_modules/@graphql-tools/merge/esm/typedefs-mergers/type.js +29 -0
- package/dist/node_modules/@graphql-tools/merge/esm/typedefs-mergers/type.js.map +1 -0
- package/dist/node_modules/@graphql-tools/merge/esm/typedefs-mergers/union.js +24 -0
- package/dist/node_modules/@graphql-tools/merge/esm/typedefs-mergers/union.js.map +1 -0
- package/dist/node_modules/@graphql-tools/merge/esm/typedefs-mergers/utils.js +67 -0
- package/dist/node_modules/@graphql-tools/merge/esm/typedefs-mergers/utils.js.map +1 -0
- package/dist/node_modules/@graphql-tools/schema/esm/addResolversToSchema.js +287 -0
- package/dist/node_modules/@graphql-tools/schema/esm/addResolversToSchema.js.map +1 -0
- package/dist/node_modules/@graphql-tools/schema/esm/assertResolversPresent.js +42 -0
- package/dist/node_modules/@graphql-tools/schema/esm/assertResolversPresent.js.map +1 -0
- package/dist/node_modules/@graphql-tools/schema/esm/checkForResolveTypeResolver.js +22 -0
- package/dist/node_modules/@graphql-tools/schema/esm/checkForResolveTypeResolver.js.map +1 -0
- package/dist/node_modules/@graphql-tools/schema/esm/extendResolversFromInterfaces.js +34 -0
- package/dist/node_modules/@graphql-tools/schema/esm/extendResolversFromInterfaces.js.map +1 -0
- package/dist/node_modules/@graphql-tools/schema/esm/makeExecutableSchema.js +50 -0
- package/dist/node_modules/@graphql-tools/schema/esm/makeExecutableSchema.js.map +1 -0
- package/dist/node_modules/@graphql-tools/utils/esm/AccumulatorMap.js +17 -0
- package/dist/node_modules/@graphql-tools/utils/esm/AccumulatorMap.js.map +1 -0
- package/dist/node_modules/@graphql-tools/utils/esm/Interfaces.js +32 -0
- package/dist/node_modules/@graphql-tools/utils/esm/Interfaces.js.map +1 -0
- package/dist/node_modules/@graphql-tools/utils/esm/Path.js +21 -0
- package/dist/node_modules/@graphql-tools/utils/esm/Path.js.map +1 -0
- package/dist/node_modules/@graphql-tools/utils/esm/astFromType.js +31 -0
- package/dist/node_modules/@graphql-tools/utils/esm/astFromType.js.map +1 -0
- package/dist/node_modules/@graphql-tools/utils/esm/astFromValue.js +70 -0
- package/dist/node_modules/@graphql-tools/utils/esm/astFromValue.js.map +1 -0
- package/dist/node_modules/@graphql-tools/utils/esm/astFromValueUntyped.js +56 -0
- package/dist/node_modules/@graphql-tools/utils/esm/astFromValueUntyped.js.map +1 -0
- package/dist/node_modules/@graphql-tools/utils/esm/collectFields.js +137 -0
- package/dist/node_modules/@graphql-tools/utils/esm/collectFields.js.map +1 -0
- package/dist/node_modules/@graphql-tools/utils/esm/comments.js +337 -0
- package/dist/node_modules/@graphql-tools/utils/esm/comments.js.map +1 -0
- package/dist/node_modules/@graphql-tools/utils/esm/descriptionFromObject.js +20 -0
- package/dist/node_modules/@graphql-tools/utils/esm/descriptionFromObject.js.map +1 -0
- package/dist/node_modules/@graphql-tools/utils/esm/directives.js +46 -0
- package/dist/node_modules/@graphql-tools/utils/esm/directives.js.map +1 -0
- package/dist/node_modules/@graphql-tools/utils/esm/errors.js +52 -0
- package/dist/node_modules/@graphql-tools/utils/esm/errors.js.map +1 -0
- package/dist/node_modules/@graphql-tools/utils/esm/forEachDefaultValue.js +28 -0
- package/dist/node_modules/@graphql-tools/utils/esm/forEachDefaultValue.js.map +1 -0
- package/dist/node_modules/@graphql-tools/utils/esm/forEachField.js +18 -0
- package/dist/node_modules/@graphql-tools/utils/esm/forEachField.js.map +1 -0
- package/dist/node_modules/@graphql-tools/utils/esm/get-directives.js +12 -0
- package/dist/node_modules/@graphql-tools/utils/esm/get-directives.js.map +1 -0
- package/dist/node_modules/@graphql-tools/utils/esm/getArgumentValues.js +61 -0
- package/dist/node_modules/@graphql-tools/utils/esm/getArgumentValues.js.map +1 -0
- package/dist/node_modules/@graphql-tools/utils/esm/getDirectiveExtensions.js +76 -0
- package/dist/node_modules/@graphql-tools/utils/esm/getDirectiveExtensions.js.map +1 -0
- package/dist/node_modules/@graphql-tools/utils/esm/getObjectTypeFromTypeMap.js +13 -0
- package/dist/node_modules/@graphql-tools/utils/esm/getObjectTypeFromTypeMap.js.map +1 -0
- package/dist/node_modules/@graphql-tools/utils/esm/heal.js +120 -0
- package/dist/node_modules/@graphql-tools/utils/esm/heal.js.map +1 -0
- package/dist/node_modules/@graphql-tools/utils/esm/helpers.js +42 -0
- package/dist/node_modules/@graphql-tools/utils/esm/helpers.js.map +1 -0
- package/dist/node_modules/@graphql-tools/utils/esm/isAsyncIterable.js +7 -0
- package/dist/node_modules/@graphql-tools/utils/esm/isAsyncIterable.js.map +1 -0
- package/dist/node_modules/@graphql-tools/utils/esm/isDocumentNode.js +8 -0
- package/dist/node_modules/@graphql-tools/utils/esm/isDocumentNode.js.map +1 -0
- package/dist/node_modules/@graphql-tools/utils/esm/jsutils.js +26 -0
- package/dist/node_modules/@graphql-tools/utils/esm/jsutils.js.map +1 -0
- package/dist/node_modules/@graphql-tools/utils/esm/mapSchema.js +439 -0
- package/dist/node_modules/@graphql-tools/utils/esm/mapSchema.js.map +1 -0
- package/dist/node_modules/@graphql-tools/utils/esm/memoize.js +104 -0
- package/dist/node_modules/@graphql-tools/utils/esm/memoize.js.map +1 -0
- package/dist/node_modules/@graphql-tools/utils/esm/mergeDeep.js +86 -0
- package/dist/node_modules/@graphql-tools/utils/esm/mergeDeep.js.map +1 -0
- package/dist/node_modules/@graphql-tools/utils/esm/print-schema-with-directives.js +370 -0
- package/dist/node_modules/@graphql-tools/utils/esm/print-schema-with-directives.js.map +1 -0
- package/dist/node_modules/@graphql-tools/utils/esm/rewire.js +155 -0
- package/dist/node_modules/@graphql-tools/utils/esm/rewire.js.map +1 -0
- package/dist/node_modules/@graphql-tools/utils/esm/rootTypes.js +33 -0
- package/dist/node_modules/@graphql-tools/utils/esm/rootTypes.js.map +1 -0
- package/dist/node_modules/@graphql-tools/utils/esm/stub.js +32 -0
- package/dist/node_modules/@graphql-tools/utils/esm/stub.js.map +1 -0
- package/dist/node_modules/@graphql-tools/utils/esm/transformInputValue.js +47 -0
- package/dist/node_modules/@graphql-tools/utils/esm/transformInputValue.js.map +1 -0
- package/dist/node_modules/@graphql-yoga/logger/esm/index.js +42 -0
- package/dist/node_modules/@graphql-yoga/logger/esm/index.js.map +1 -0
- package/dist/node_modules/@typescript-eslint/project-service/dist/createProjectService.js +126 -0
- package/dist/node_modules/@typescript-eslint/project-service/dist/createProjectService.js.map +1 -0
- package/dist/node_modules/@typescript-eslint/project-service/dist/getParsedConfigFileFromTSServer.js +25 -0
- package/dist/node_modules/@typescript-eslint/project-service/dist/getParsedConfigFileFromTSServer.js.map +1 -0
- package/dist/node_modules/@typescript-eslint/project-service/dist/index.js +32 -0
- package/dist/node_modules/@typescript-eslint/project-service/dist/index.js.map +1 -0
- package/dist/node_modules/@typescript-eslint/tsconfig-utils/dist/compilerOptions.js +20 -0
- package/dist/node_modules/@typescript-eslint/tsconfig-utils/dist/compilerOptions.js.map +1 -0
- package/dist/node_modules/@typescript-eslint/tsconfig-utils/dist/getParsedConfigFile.js +87 -0
- package/dist/node_modules/@typescript-eslint/tsconfig-utils/dist/getParsedConfigFile.js.map +1 -0
- package/dist/node_modules/@typescript-eslint/tsconfig-utils/dist/index.js +34 -0
- package/dist/node_modules/@typescript-eslint/tsconfig-utils/dist/index.js.map +1 -0
- package/dist/node_modules/@typescript-eslint/types/dist/generated/ast-spec.js +201 -0
- package/dist/node_modules/@typescript-eslint/types/dist/generated/ast-spec.js.map +1 -0
- package/dist/node_modules/@typescript-eslint/types/dist/index.js +45 -0
- package/dist/node_modules/@typescript-eslint/types/dist/index.js.map +1 -0
- package/dist/node_modules/@typescript-eslint/types/dist/lib.js +12 -0
- package/dist/node_modules/@typescript-eslint/types/dist/lib.js.map +1 -0
- package/dist/node_modules/@typescript-eslint/types/dist/parser-options.js +12 -0
- package/dist/node_modules/@typescript-eslint/types/dist/parser-options.js.map +1 -0
- package/dist/node_modules/@typescript-eslint/types/dist/ts-estree.js +52 -0
- package/dist/node_modules/@typescript-eslint/types/dist/ts-estree.js.map +1 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/dist/ast-converter.js +54 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/dist/ast-converter.js.map +1 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/dist/check-modifiers.js +207 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/dist/check-modifiers.js.map +1 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/dist/clear-caches.js +34 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/dist/clear-caches.js.map +1 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/dist/convert-comments.js +81 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/dist/convert-comments.js.map +1 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/dist/convert.js +2438 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/dist/convert.js.map +1 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createIsolatedProgram.js +117 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createIsolatedProgram.js.map +1 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createProjectProgram.js +33 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createProjectProgram.js.map +1 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createProjectProgramError.js +82 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createProjectProgramError.js.map +1 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createSourceFile.js +84 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createSourceFile.js.map +1 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/dist/create-program/describeFilePath.js +31 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/dist/create-program/describeFilePath.js.map +1 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/dist/create-program/getScriptKind.js +90 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/dist/create-program/getScriptKind.js.map +1 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/dist/create-program/getWatchProgramsForProjects.js +292 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/dist/create-program/getWatchProgramsForProjects.js.map +1 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/dist/create-program/shared.js +134 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/dist/create-program/shared.js.map +1 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/dist/create-program/useProvidedPrograms.js +91 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/dist/create-program/useProvidedPrograms.js.map +1 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/dist/create-program/validateDefaultProjectForFilesGlob.js +35 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/dist/create-program/validateDefaultProjectForFilesGlob.js.map +1 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/dist/createParserServices.js +39 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/dist/createParserServices.js.map +1 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/dist/getModifiers.js +88 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/dist/getModifiers.js.map +1 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/dist/index.js +90 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/dist/index.js.map +1 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/dist/jsx/xhtml-entities.js +268 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/dist/jsx/xhtml-entities.js.map +1 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/dist/node-utils.js +533 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/dist/node-utils.js.map +1 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/dist/parseSettings/ExpiringCache.js +50 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/dist/parseSettings/ExpiringCache.js.map +1 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/dist/parseSettings/candidateTSConfigRootDirs.js +38 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/dist/parseSettings/candidateTSConfigRootDirs.js.map +1 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/dist/parseSettings/createParseSettings.js +216 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/dist/parseSettings/createParseSettings.js.map +1 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/dist/parseSettings/getProjectConfigFiles.js +87 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/dist/parseSettings/getProjectConfigFiles.js.map +1 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/dist/parseSettings/inferSingleRun.js +53 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/dist/parseSettings/inferSingleRun.js.map +1 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/dist/parseSettings/resolveProjectList.js +89 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/dist/parseSettings/resolveProjectList.js.map +1 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/dist/parseSettings/warnAboutTSVersion.js +92 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/dist/parseSettings/warnAboutTSVersion.js.map +1 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/dist/parser.js +132 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/dist/parser.js.map +1 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/dist/semantic-or-syntactic-errors.js +124 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/dist/semantic-or-syntactic-errors.js.map +1 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/dist/simple-traverse.js +64 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/dist/simple-traverse.js.map +1 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/dist/source-files.js +63 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/dist/source-files.js.map +1 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/estree-to-ts-node-types.js +12 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/estree-to-ts-node-types.js.map +1 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/index.js +46 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/index.js.map +1 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/ts-nodes.js +12 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/ts-nodes.js.map +1 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/dist/useProgramFromProjectService.js +205 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/dist/useProgramFromProjectService.js.map +1 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/dist/version-check.js +75 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/dist/version-check.js.map +1 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/dist/version.js +15 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/dist/version.js.map +1 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/dist/withoutProjectParserOptions.js +17 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/dist/withoutProjectParserOptions.js.map +1 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/node_modules/minimatch/dist/commonjs/assert-valid-pattern.js +23 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/node_modules/minimatch/dist/commonjs/assert-valid-pattern.js.map +1 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/node_modules/minimatch/dist/commonjs/ast.js +495 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/node_modules/minimatch/dist/commonjs/ast.js.map +1 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/node_modules/minimatch/dist/commonjs/brace-expressions.js +121 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/node_modules/minimatch/dist/commonjs/brace-expressions.js.map +1 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/node_modules/minimatch/dist/commonjs/escape.js +17 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/node_modules/minimatch/dist/commonjs/escape.js.map +1 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/node_modules/minimatch/dist/commonjs/index.js +763 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/node_modules/minimatch/dist/commonjs/index.js.map +1 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/node_modules/minimatch/dist/commonjs/unescape.js +17 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/node_modules/minimatch/dist/commonjs/unescape.js.map +1 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/package.json.js +9 -0
- package/dist/node_modules/@typescript-eslint/typescript-estree/package.json.js.map +1 -0
- package/dist/node_modules/@typescript-eslint/visitor-keys/dist/get-keys.js +16 -0
- package/dist/node_modules/@typescript-eslint/visitor-keys/dist/get-keys.js.map +1 -0
- package/dist/node_modules/@typescript-eslint/visitor-keys/dist/index.js +25 -0
- package/dist/node_modules/@typescript-eslint/visitor-keys/dist/index.js.map +1 -0
- package/dist/node_modules/@typescript-eslint/visitor-keys/dist/visitor-keys.js +187 -0
- package/dist/node_modules/@typescript-eslint/visitor-keys/dist/visitor-keys.js.map +1 -0
- package/dist/node_modules/@whatwg-node/disposablestack/esm/AsyncDisposableStack.js +72 -0
- package/dist/node_modules/@whatwg-node/disposablestack/esm/AsyncDisposableStack.js.map +1 -0
- package/dist/node_modules/@whatwg-node/disposablestack/esm/SupressedError.js +16 -0
- package/dist/node_modules/@whatwg-node/disposablestack/esm/SupressedError.js.map +1 -0
- package/dist/node_modules/@whatwg-node/disposablestack/esm/index.js +6 -0
- package/dist/node_modules/@whatwg-node/disposablestack/esm/index.js.map +1 -0
- package/dist/node_modules/@whatwg-node/disposablestack/esm/symbols.js +12 -0
- package/dist/node_modules/@whatwg-node/disposablestack/esm/symbols.js.map +1 -0
- package/dist/node_modules/@whatwg-node/disposablestack/esm/utils.js +12 -0
- package/dist/node_modules/@whatwg-node/disposablestack/esm/utils.js.map +1 -0
- package/dist/node_modules/@whatwg-node/fetch/dist/global-ponyfill.js +33 -0
- package/dist/node_modules/@whatwg-node/fetch/dist/global-ponyfill.js.map +1 -0
- package/dist/node_modules/@whatwg-node/promise-helpers/esm/index.js +241 -0
- package/dist/node_modules/@whatwg-node/promise-helpers/esm/index.js.map +1 -0
- package/dist/node_modules/@whatwg-node/server/esm/createServerAdapter.js +333 -0
- package/dist/node_modules/@whatwg-node/server/esm/createServerAdapter.js.map +1 -0
- package/dist/node_modules/@whatwg-node/server/esm/plugins/useCors.js +106 -0
- package/dist/node_modules/@whatwg-node/server/esm/plugins/useCors.js.map +1 -0
- package/dist/node_modules/@whatwg-node/server/esm/utils.js +476 -0
- package/dist/node_modules/@whatwg-node/server/esm/utils.js.map +1 -0
- package/dist/node_modules/@whatwg-node/server/esm/uwebsockets.js +232 -0
- package/dist/node_modules/@whatwg-node/server/esm/uwebsockets.js.map +1 -0
- package/dist/node_modules/balanced-match/index.js +62 -0
- package/dist/node_modules/balanced-match/index.js.map +1 -0
- package/dist/node_modules/brace-expansion/index.js +156 -0
- package/dist/node_modules/brace-expansion/index.js.map +1 -0
- package/dist/node_modules/cross-inspect/esm/index.js +89 -0
- package/dist/node_modules/cross-inspect/esm/index.js.map +1 -0
- package/dist/node_modules/debug/src/browser.js +178 -0
- package/dist/node_modules/debug/src/browser.js.map +1 -0
- package/dist/node_modules/debug/src/common.js +183 -0
- package/dist/node_modules/debug/src/common.js.map +1 -0
- package/dist/node_modules/eslint-visitor-keys/dist/eslint-visitor-keys.js +353 -0
- package/dist/node_modules/eslint-visitor-keys/dist/eslint-visitor-keys.js.map +1 -0
- package/dist/node_modules/fdir/dist/index.js +540 -0
- package/dist/node_modules/fdir/dist/index.js.map +1 -0
- package/dist/node_modules/graphql/error/GraphQLError.js +154 -0
- package/dist/node_modules/graphql/error/GraphQLError.js.map +1 -0
- package/dist/node_modules/graphql/error/locatedError.js +23 -0
- package/dist/node_modules/graphql/error/locatedError.js.map +1 -0
- package/dist/node_modules/graphql/error/syntaxError.js +11 -0
- package/dist/node_modules/graphql/error/syntaxError.js.map +1 -0
- package/dist/node_modules/graphql/execution/collectFields.js +128 -0
- package/dist/node_modules/graphql/execution/collectFields.js.map +1 -0
- package/dist/node_modules/graphql/execution/execute.js +606 -0
- package/dist/node_modules/graphql/execution/execute.js.map +1 -0
- package/dist/node_modules/graphql/execution/mapAsyncIterator.js +46 -0
- package/dist/node_modules/graphql/execution/mapAsyncIterator.js.map +1 -0
- package/dist/node_modules/graphql/execution/subscribe.js +121 -0
- package/dist/node_modules/graphql/execution/subscribe.js.map +1 -0
- package/dist/node_modules/graphql/execution/values.js +184 -0
- package/dist/node_modules/graphql/execution/values.js.map +1 -0
- package/dist/node_modules/graphql/jsutils/Path.js +21 -0
- package/dist/node_modules/graphql/jsutils/Path.js.map +1 -0
- package/dist/node_modules/graphql/jsutils/devAssert.js +10 -0
- package/dist/node_modules/graphql/jsutils/devAssert.js.map +1 -0
- package/dist/node_modules/graphql/jsutils/didYouMean.js +24 -0
- package/dist/node_modules/graphql/jsutils/didYouMean.js.map +1 -0
- package/dist/node_modules/graphql/jsutils/groupBy.js +17 -0
- package/dist/node_modules/graphql/jsutils/groupBy.js.map +1 -0
- package/dist/node_modules/graphql/jsutils/identityFunc.js +7 -0
- package/dist/node_modules/graphql/jsutils/identityFunc.js.map +1 -0
- package/dist/node_modules/graphql/jsutils/inspect.js +85 -0
- package/dist/node_modules/graphql/jsutils/inspect.js.map +1 -0
- package/dist/node_modules/graphql/jsutils/instanceOf.js +42 -0
- package/dist/node_modules/graphql/jsutils/instanceOf.js.map +1 -0
- package/dist/node_modules/graphql/jsutils/invariant.js +12 -0
- package/dist/node_modules/graphql/jsutils/invariant.js.map +1 -0
- package/dist/node_modules/graphql/jsutils/isAsyncIterable.js +7 -0
- package/dist/node_modules/graphql/jsutils/isAsyncIterable.js.map +1 -0
- package/dist/node_modules/graphql/jsutils/isIterableObject.js +7 -0
- package/dist/node_modules/graphql/jsutils/isIterableObject.js.map +1 -0
- package/dist/node_modules/graphql/jsutils/isObjectLike.js +7 -0
- package/dist/node_modules/graphql/jsutils/isObjectLike.js.map +1 -0
- package/dist/node_modules/graphql/jsutils/isPromise.js +7 -0
- package/dist/node_modules/graphql/jsutils/isPromise.js.map +1 -0
- package/dist/node_modules/graphql/jsutils/keyMap.js +11 -0
- package/dist/node_modules/graphql/jsutils/keyMap.js.map +1 -0
- package/dist/node_modules/graphql/jsutils/keyValMap.js +11 -0
- package/dist/node_modules/graphql/jsutils/keyValMap.js.map +1 -0
- package/dist/node_modules/graphql/jsutils/mapValue.js +11 -0
- package/dist/node_modules/graphql/jsutils/mapValue.js.map +1 -0
- package/dist/node_modules/graphql/jsutils/memoize3.js +28 -0
- package/dist/node_modules/graphql/jsutils/memoize3.js.map +1 -0
- package/dist/node_modules/graphql/jsutils/naturalCompare.js +47 -0
- package/dist/node_modules/graphql/jsutils/naturalCompare.js.map +1 -0
- package/dist/node_modules/graphql/jsutils/printPathArray.js +9 -0
- package/dist/node_modules/graphql/jsutils/printPathArray.js.map +1 -0
- package/dist/node_modules/graphql/jsutils/promiseForObject.js +13 -0
- package/dist/node_modules/graphql/jsutils/promiseForObject.js.map +1 -0
- package/dist/node_modules/graphql/jsutils/promiseReduce.js +12 -0
- package/dist/node_modules/graphql/jsutils/promiseReduce.js.map +1 -0
- package/dist/node_modules/graphql/jsutils/suggestionList.js +94 -0
- package/dist/node_modules/graphql/jsutils/suggestionList.js.map +1 -0
- package/dist/node_modules/graphql/jsutils/toError.js +15 -0
- package/dist/node_modules/graphql/jsutils/toError.js.map +1 -0
- package/dist/node_modules/graphql/jsutils/toObjMap.js +17 -0
- package/dist/node_modules/graphql/jsutils/toObjMap.js.map +1 -0
- package/dist/node_modules/graphql/language/ast.js +189 -0
- package/dist/node_modules/graphql/language/ast.js.map +1 -0
- package/dist/node_modules/graphql/language/blockString.js +60 -0
- package/dist/node_modules/graphql/language/blockString.js.map +1 -0
- package/dist/node_modules/graphql/language/characterClasses.js +24 -0
- package/dist/node_modules/graphql/language/characterClasses.js.map +1 -0
- package/dist/node_modules/graphql/language/directiveLocation.js +26 -0
- package/dist/node_modules/graphql/language/directiveLocation.js.map +1 -0
- package/dist/node_modules/graphql/language/kinds.js +55 -0
- package/dist/node_modules/graphql/language/kinds.js.map +1 -0
- package/dist/node_modules/graphql/language/lexer.js +543 -0
- package/dist/node_modules/graphql/language/lexer.js.map +1 -0
- package/dist/node_modules/graphql/language/location.js +22 -0
- package/dist/node_modules/graphql/language/location.js.map +1 -0
- package/dist/node_modules/graphql/language/parser.js +1343 -0
- package/dist/node_modules/graphql/language/parser.js.map +1 -0
- package/dist/node_modules/graphql/language/predicates.js +28 -0
- package/dist/node_modules/graphql/language/predicates.js.map +1 -0
- package/dist/node_modules/graphql/language/printLocation.js +51 -0
- package/dist/node_modules/graphql/language/printLocation.js.map +1 -0
- package/dist/node_modules/graphql/language/printString.js +178 -0
- package/dist/node_modules/graphql/language/printString.js.map +1 -0
- package/dist/node_modules/graphql/language/printer.js +269 -0
- package/dist/node_modules/graphql/language/printer.js.map +1 -0
- package/dist/node_modules/graphql/language/source.js +33 -0
- package/dist/node_modules/graphql/language/source.js.map +1 -0
- package/dist/node_modules/graphql/language/tokenKind.js +30 -0
- package/dist/node_modules/graphql/language/tokenKind.js.map +1 -0
- package/dist/node_modules/graphql/language/visitor.js +192 -0
- package/dist/node_modules/graphql/language/visitor.js.map +1 -0
- package/dist/node_modules/graphql/type/assertName.js +34 -0
- package/dist/node_modules/graphql/type/assertName.js.map +1 -0
- package/dist/node_modules/graphql/type/definition.js +648 -0
- package/dist/node_modules/graphql/type/definition.js.map +1 -0
- package/dist/node_modules/graphql/type/directives.js +137 -0
- package/dist/node_modules/graphql/type/directives.js.map +1 -0
- package/dist/node_modules/graphql/type/introspection.js +506 -0
- package/dist/node_modules/graphql/type/introspection.js.map +1 -0
- package/dist/node_modules/graphql/type/scalars.js +248 -0
- package/dist/node_modules/graphql/type/scalars.js.map +1 -0
- package/dist/node_modules/graphql/type/schema.js +223 -0
- package/dist/node_modules/graphql/type/schema.js.map +1 -0
- package/dist/node_modules/graphql/type/validate.js +461 -0
- package/dist/node_modules/graphql/type/validate.js.map +1 -0
- package/dist/node_modules/graphql/utilities/TypeInfo.js +257 -0
- package/dist/node_modules/graphql/utilities/TypeInfo.js.map +1 -0
- package/dist/node_modules/graphql/utilities/astFromValue.js +111 -0
- package/dist/node_modules/graphql/utilities/astFromValue.js.map +1 -0
- package/dist/node_modules/graphql/utilities/buildASTSchema.js +65 -0
- package/dist/node_modules/graphql/utilities/buildASTSchema.js.map +1 -0
- package/dist/node_modules/graphql/utilities/coerceInputValue.js +154 -0
- package/dist/node_modules/graphql/utilities/coerceInputValue.js.map +1 -0
- package/dist/node_modules/graphql/utilities/extendSchema.js +456 -0
- package/dist/node_modules/graphql/utilities/extendSchema.js.map +1 -0
- package/dist/node_modules/graphql/utilities/getOperationAST.js +22 -0
- package/dist/node_modules/graphql/utilities/getOperationAST.js.map +1 -0
- package/dist/node_modules/graphql/utilities/sortValueNode.js +30 -0
- package/dist/node_modules/graphql/utilities/sortValueNode.js.map +1 -0
- package/dist/node_modules/graphql/utilities/typeComparators.js +58 -0
- package/dist/node_modules/graphql/utilities/typeComparators.js.map +1 -0
- package/dist/node_modules/graphql/utilities/typeFromAST.js +20 -0
- package/dist/node_modules/graphql/utilities/typeFromAST.js.map +1 -0
- package/dist/node_modules/graphql/utilities/valueFromAST.js +109 -0
- package/dist/node_modules/graphql/utilities/valueFromAST.js.map +1 -0
- package/dist/node_modules/graphql/utilities/valueFromASTUntyped.js +32 -0
- package/dist/node_modules/graphql/utilities/valueFromASTUntyped.js.map +1 -0
- package/dist/node_modules/graphql/validation/ValidationContext.js +171 -0
- package/dist/node_modules/graphql/validation/ValidationContext.js.map +1 -0
- package/dist/node_modules/graphql/validation/rules/ExecutableDefinitionsRule.js +24 -0
- package/dist/node_modules/graphql/validation/rules/ExecutableDefinitionsRule.js.map +1 -0
- package/dist/node_modules/graphql/validation/rules/FieldsOnCorrectTypeRule.js +80 -0
- package/dist/node_modules/graphql/validation/rules/FieldsOnCorrectTypeRule.js.map +1 -0
- package/dist/node_modules/graphql/validation/rules/FragmentsOnCompositeTypesRule.js +43 -0
- package/dist/node_modules/graphql/validation/rules/FragmentsOnCompositeTypesRule.js.map +1 -0
- package/dist/node_modules/graphql/validation/rules/KnownArgumentNamesRule.js +73 -0
- package/dist/node_modules/graphql/validation/rules/KnownArgumentNamesRule.js.map +1 -0
- package/dist/node_modules/graphql/validation/rules/KnownDirectivesRule.js +112 -0
- package/dist/node_modules/graphql/validation/rules/KnownDirectivesRule.js.map +1 -0
- package/dist/node_modules/graphql/validation/rules/KnownFragmentNamesRule.js +20 -0
- package/dist/node_modules/graphql/validation/rules/KnownFragmentNamesRule.js.map +1 -0
- package/dist/node_modules/graphql/validation/rules/KnownTypeNamesRule.js +55 -0
- package/dist/node_modules/graphql/validation/rules/KnownTypeNamesRule.js.map +1 -0
- package/dist/node_modules/graphql/validation/rules/LoneAnonymousOperationRule.js +28 -0
- package/dist/node_modules/graphql/validation/rules/LoneAnonymousOperationRule.js.map +1 -0
- package/dist/node_modules/graphql/validation/rules/LoneSchemaDefinitionRule.js +34 -0
- package/dist/node_modules/graphql/validation/rules/LoneSchemaDefinitionRule.js.map +1 -0
- package/dist/node_modules/graphql/validation/rules/MaxIntrospectionDepthRule.js +56 -0
- package/dist/node_modules/graphql/validation/rules/MaxIntrospectionDepthRule.js.map +1 -0
- package/dist/node_modules/graphql/validation/rules/NoFragmentCyclesRule.js +53 -0
- package/dist/node_modules/graphql/validation/rules/NoFragmentCyclesRule.js.map +1 -0
- package/dist/node_modules/graphql/validation/rules/NoUndefinedVariablesRule.js +34 -0
- package/dist/node_modules/graphql/validation/rules/NoUndefinedVariablesRule.js.map +1 -0
- package/dist/node_modules/graphql/validation/rules/NoUnusedFragmentsRule.js +41 -0
- package/dist/node_modules/graphql/validation/rules/NoUnusedFragmentsRule.js.map +1 -0
- package/dist/node_modules/graphql/validation/rules/NoUnusedVariablesRule.js +38 -0
- package/dist/node_modules/graphql/validation/rules/NoUnusedVariablesRule.js.map +1 -0
- package/dist/node_modules/graphql/validation/rules/OverlappingFieldsCanBeMergedRule.js +519 -0
- package/dist/node_modules/graphql/validation/rules/OverlappingFieldsCanBeMergedRule.js.map +1 -0
- package/dist/node_modules/graphql/validation/rules/PossibleFragmentSpreadsRule.js +55 -0
- package/dist/node_modules/graphql/validation/rules/PossibleFragmentSpreadsRule.js.map +1 -0
- package/dist/node_modules/graphql/validation/rules/PossibleTypeExtensionsRule.js +113 -0
- package/dist/node_modules/graphql/validation/rules/PossibleTypeExtensionsRule.js.map +1 -0
- package/dist/node_modules/graphql/validation/rules/ProvidedRequiredArgumentsRule.js +99 -0
- package/dist/node_modules/graphql/validation/rules/ProvidedRequiredArgumentsRule.js.map +1 -0
- package/dist/node_modules/graphql/validation/rules/ScalarLeafsRule.js +53 -0
- package/dist/node_modules/graphql/validation/rules/ScalarLeafsRule.js.map +1 -0
- package/dist/node_modules/graphql/validation/rules/SingleFieldSubscriptionsRule.js +62 -0
- package/dist/node_modules/graphql/validation/rules/SingleFieldSubscriptionsRule.js.map +1 -0
- package/dist/node_modules/graphql/validation/rules/UniqueArgumentDefinitionNamesRule.js +47 -0
- package/dist/node_modules/graphql/validation/rules/UniqueArgumentDefinitionNamesRule.js.map +1 -0
- package/dist/node_modules/graphql/validation/rules/UniqueArgumentNamesRule.js +29 -0
- package/dist/node_modules/graphql/validation/rules/UniqueArgumentNamesRule.js.map +1 -0
- package/dist/node_modules/graphql/validation/rules/UniqueDirectiveNamesRule.js +38 -0
- package/dist/node_modules/graphql/validation/rules/UniqueDirectiveNamesRule.js.map +1 -0
- package/dist/node_modules/graphql/validation/rules/UniqueDirectivesPerLocationRule.js +63 -0
- package/dist/node_modules/graphql/validation/rules/UniqueDirectivesPerLocationRule.js.map +1 -0
- package/dist/node_modules/graphql/validation/rules/UniqueEnumValueNamesRule.js +50 -0
- package/dist/node_modules/graphql/validation/rules/UniqueEnumValueNamesRule.js.map +1 -0
- package/dist/node_modules/graphql/validation/rules/UniqueFieldDefinitionNamesRule.js +59 -0
- package/dist/node_modules/graphql/validation/rules/UniqueFieldDefinitionNamesRule.js.map +1 -0
- package/dist/node_modules/graphql/validation/rules/UniqueFragmentNamesRule.js +27 -0
- package/dist/node_modules/graphql/validation/rules/UniqueFragmentNamesRule.js.map +1 -0
- package/dist/node_modules/graphql/validation/rules/UniqueInputFieldNamesRule.js +38 -0
- package/dist/node_modules/graphql/validation/rules/UniqueInputFieldNamesRule.js.map +1 -0
- package/dist/node_modules/graphql/validation/rules/UniqueOperationNamesRule.js +32 -0
- package/dist/node_modules/graphql/validation/rules/UniqueOperationNamesRule.js.map +1 -0
- package/dist/node_modules/graphql/validation/rules/UniqueOperationTypesRule.js +48 -0
- package/dist/node_modules/graphql/validation/rules/UniqueOperationTypesRule.js.map +1 -0
- package/dist/node_modules/graphql/validation/rules/UniqueTypeNamesRule.js +41 -0
- package/dist/node_modules/graphql/validation/rules/UniqueTypeNamesRule.js.map +1 -0
- package/dist/node_modules/graphql/validation/rules/UniqueVariableNamesRule.js +30 -0
- package/dist/node_modules/graphql/validation/rules/UniqueVariableNamesRule.js.map +1 -0
- package/dist/node_modules/graphql/validation/rules/ValuesOfCorrectTypeRule.js +170 -0
- package/dist/node_modules/graphql/validation/rules/ValuesOfCorrectTypeRule.js.map +1 -0
- package/dist/node_modules/graphql/validation/rules/VariablesAreInputTypesRule.js +27 -0
- package/dist/node_modules/graphql/validation/rules/VariablesAreInputTypesRule.js.map +1 -0
- package/dist/node_modules/graphql/validation/rules/VariablesInAllowedPositionRule.js +74 -0
- package/dist/node_modules/graphql/validation/rules/VariablesInAllowedPositionRule.js.map +1 -0
- package/dist/node_modules/graphql/validation/specifiedRules.js +88 -0
- package/dist/node_modules/graphql/validation/specifiedRules.js.map +1 -0
- package/dist/node_modules/graphql/validation/validate.js +65 -0
- package/dist/node_modules/graphql/validation/validate.js.map +1 -0
- package/dist/node_modules/graphql/version.js +10 -0
- package/dist/node_modules/graphql/version.js.map +1 -0
- package/dist/node_modules/graphql-ws/lib/common.js +127 -0
- package/dist/node_modules/graphql-ws/lib/common.js.map +1 -0
- package/dist/node_modules/graphql-ws/lib/server.js +257 -0
- package/dist/node_modules/graphql-ws/lib/server.js.map +1 -0
- package/dist/node_modules/graphql-ws/lib/use/ws.js +83 -0
- package/dist/node_modules/graphql-ws/lib/use/ws.js.map +1 -0
- package/dist/node_modules/graphql-ws/lib/utils.js +35 -0
- package/dist/node_modules/graphql-ws/lib/utils.js.map +1 -0
- package/dist/node_modules/graphql-yoga/esm/error.js +127 -0
- package/dist/node_modules/graphql-yoga/esm/error.js.map +1 -0
- package/dist/node_modules/graphql-yoga/esm/graphiql-html.js +5 -0
- package/dist/node_modules/graphql-yoga/esm/graphiql-html.js.map +1 -0
- package/dist/node_modules/graphql-yoga/esm/landing-page-html.js +21 -0
- package/dist/node_modules/graphql-yoga/esm/landing-page-html.js.map +1 -0
- package/dist/node_modules/graphql-yoga/esm/plugins/allowed-headers.js +26 -0
- package/dist/node_modules/graphql-yoga/esm/plugins/allowed-headers.js.map +1 -0
- package/dist/node_modules/graphql-yoga/esm/plugins/request-parser/get.js +15 -0
- package/dist/node_modules/graphql-yoga/esm/plugins/request-parser/get.js.map +1 -0
- package/dist/node_modules/graphql-yoga/esm/plugins/request-parser/post-form-url-encoded.js +12 -0
- package/dist/node_modules/graphql-yoga/esm/plugins/request-parser/post-form-url-encoded.js.map +1 -0
- package/dist/node_modules/graphql-yoga/esm/plugins/request-parser/post-graphql-string.js +12 -0
- package/dist/node_modules/graphql-yoga/esm/plugins/request-parser/post-graphql-string.js.map +1 -0
- package/dist/node_modules/graphql-yoga/esm/plugins/request-parser/post-json.js +58 -0
- package/dist/node_modules/graphql-yoga/esm/plugins/request-parser/post-json.js.map +1 -0
- package/dist/node_modules/graphql-yoga/esm/plugins/request-parser/post-multipart.js +78 -0
- package/dist/node_modules/graphql-yoga/esm/plugins/request-parser/post-multipart.js.map +1 -0
- package/dist/node_modules/graphql-yoga/esm/plugins/request-parser/utils.js +28 -0
- package/dist/node_modules/graphql-yoga/esm/plugins/request-parser/utils.js.map +1 -0
- package/dist/node_modules/graphql-yoga/esm/plugins/request-validation/use-check-graphql-query-params.js +131 -0
- package/dist/node_modules/graphql-yoga/esm/plugins/request-validation/use-check-graphql-query-params.js.map +1 -0
- package/dist/node_modules/graphql-yoga/esm/plugins/request-validation/use-check-method-for-graphql.js +28 -0
- package/dist/node_modules/graphql-yoga/esm/plugins/request-validation/use-check-method-for-graphql.js.map +1 -0
- package/dist/node_modules/graphql-yoga/esm/plugins/request-validation/use-http-validation-error.js +21 -0
- package/dist/node_modules/graphql-yoga/esm/plugins/request-validation/use-http-validation-error.js.map +1 -0
- package/dist/node_modules/graphql-yoga/esm/plugins/request-validation/use-limit-batching.js +37 -0
- package/dist/node_modules/graphql-yoga/esm/plugins/request-validation/use-limit-batching.js.map +1 -0
- package/dist/node_modules/graphql-yoga/esm/plugins/request-validation/use-prevent-mutation-via-get.js +61 -0
- package/dist/node_modules/graphql-yoga/esm/plugins/request-validation/use-prevent-mutation-via-get.js.map +1 -0
- package/dist/node_modules/graphql-yoga/esm/plugins/result-processor/accept.js +28 -0
- package/dist/node_modules/graphql-yoga/esm/plugins/result-processor/accept.js.map +1 -0
- package/dist/node_modules/graphql-yoga/esm/plugins/result-processor/multipart.js +68 -0
- package/dist/node_modules/graphql-yoga/esm/plugins/result-processor/multipart.js.map +1 -0
- package/dist/node_modules/graphql-yoga/esm/plugins/result-processor/regular.js +29 -0
- package/dist/node_modules/graphql-yoga/esm/plugins/result-processor/regular.js.map +1 -0
- package/dist/node_modules/graphql-yoga/esm/plugins/result-processor/sse.js +83 -0
- package/dist/node_modules/graphql-yoga/esm/plugins/result-processor/sse.js.map +1 -0
- package/dist/node_modules/graphql-yoga/esm/plugins/result-processor/stringify.js +47 -0
- package/dist/node_modules/graphql-yoga/esm/plugins/result-processor/stringify.js.map +1 -0
- package/dist/node_modules/graphql-yoga/esm/plugins/use-graphiql.js +55 -0
- package/dist/node_modules/graphql-yoga/esm/plugins/use-graphiql.js.map +1 -0
- package/dist/node_modules/graphql-yoga/esm/plugins/use-health-check.js +20 -0
- package/dist/node_modules/graphql-yoga/esm/plugins/use-health-check.js.map +1 -0
- package/dist/node_modules/graphql-yoga/esm/plugins/use-parser-and-validation-cache.js +63 -0
- package/dist/node_modules/graphql-yoga/esm/plugins/use-parser-and-validation-cache.js.map +1 -0
- package/dist/node_modules/graphql-yoga/esm/plugins/use-request-parser.js +15 -0
- package/dist/node_modules/graphql-yoga/esm/plugins/use-request-parser.js.map +1 -0
- package/dist/node_modules/graphql-yoga/esm/plugins/use-result-processor.js +58 -0
- package/dist/node_modules/graphql-yoga/esm/plugins/use-result-processor.js.map +1 -0
- package/dist/node_modules/graphql-yoga/esm/plugins/use-schema.js +76 -0
- package/dist/node_modules/graphql-yoga/esm/plugins/use-schema.js.map +1 -0
- package/dist/node_modules/graphql-yoga/esm/plugins/use-unhandled-route.js +52 -0
- package/dist/node_modules/graphql-yoga/esm/plugins/use-unhandled-route.js.map +1 -0
- package/dist/node_modules/graphql-yoga/esm/process-request.js +56 -0
- package/dist/node_modules/graphql-yoga/esm/process-request.js.map +1 -0
- package/dist/node_modules/graphql-yoga/esm/server.js +374 -0
- package/dist/node_modules/graphql-yoga/esm/server.js.map +1 -0
- package/dist/node_modules/graphql-yoga/esm/utils/create-lru-cache.js +10 -0
- package/dist/node_modules/graphql-yoga/esm/utils/create-lru-cache.js.map +1 -0
- package/dist/node_modules/graphql-yoga/esm/utils/mask-error.js +47 -0
- package/dist/node_modules/graphql-yoga/esm/utils/mask-error.js.map +1 -0
- package/dist/node_modules/graphql-yoga/node_modules/lru-cache/dist/esm/index.js +1370 -0
- package/dist/node_modules/graphql-yoga/node_modules/lru-cache/dist/esm/index.js.map +1 -0
- package/dist/node_modules/ms/index.js +121 -0
- package/dist/node_modules/ms/index.js.map +1 -0
- package/dist/node_modules/picomatch/index.js +23 -0
- package/dist/node_modules/picomatch/index.js.map +1 -0
- package/dist/node_modules/picomatch/lib/constants.js +203 -0
- package/dist/node_modules/picomatch/lib/constants.js.map +1 -0
- package/dist/node_modules/picomatch/lib/parse.js +774 -0
- package/dist/node_modules/picomatch/lib/parse.js.map +1 -0
- package/dist/node_modules/picomatch/lib/picomatch.js +148 -0
- package/dist/node_modules/picomatch/lib/picomatch.js.map +1 -0
- package/dist/node_modules/picomatch/lib/scan.js +336 -0
- package/dist/node_modules/picomatch/lib/scan.js.map +1 -0
- package/dist/node_modules/picomatch/lib/utils.js +71 -0
- package/dist/node_modules/picomatch/lib/utils.js.map +1 -0
- package/dist/node_modules/semver/classes/comparator.js +123 -0
- package/dist/node_modules/semver/classes/comparator.js.map +1 -0
- package/dist/node_modules/semver/classes/range.js +388 -0
- package/dist/node_modules/semver/classes/range.js.map +1 -0
- package/dist/node_modules/semver/classes/semver.js +288 -0
- package/dist/node_modules/semver/classes/semver.js.map +1 -0
- package/dist/node_modules/semver/functions/clean.js +18 -0
- package/dist/node_modules/semver/functions/clean.js.map +1 -0
- package/dist/node_modules/semver/functions/cmp.js +60 -0
- package/dist/node_modules/semver/functions/cmp.js.map +1 -0
- package/dist/node_modules/semver/functions/coerce.js +53 -0
- package/dist/node_modules/semver/functions/coerce.js.map +1 -0
- package/dist/node_modules/semver/functions/compare-build.js +19 -0
- package/dist/node_modules/semver/functions/compare-build.js.map +1 -0
- package/dist/node_modules/semver/functions/compare-loose.js +15 -0
- package/dist/node_modules/semver/functions/compare-loose.js.map +1 -0
- package/dist/node_modules/semver/functions/compare.js +15 -0
- package/dist/node_modules/semver/functions/compare.js.map +1 -0
- package/dist/node_modules/semver/functions/diff.js +49 -0
- package/dist/node_modules/semver/functions/diff.js.map +1 -0
- package/dist/node_modules/semver/functions/eq.js +15 -0
- package/dist/node_modules/semver/functions/eq.js.map +1 -0
- package/dist/node_modules/semver/functions/gt.js +15 -0
- package/dist/node_modules/semver/functions/gt.js.map +1 -0
- package/dist/node_modules/semver/functions/gte.js +15 -0
- package/dist/node_modules/semver/functions/gte.js.map +1 -0
- package/dist/node_modules/semver/functions/inc.js +29 -0
- package/dist/node_modules/semver/functions/inc.js.map +1 -0
- package/dist/node_modules/semver/functions/lt.js +15 -0
- package/dist/node_modules/semver/functions/lt.js.map +1 -0
- package/dist/node_modules/semver/functions/lte.js +15 -0
- package/dist/node_modules/semver/functions/lte.js.map +1 -0
- package/dist/node_modules/semver/functions/major.js +15 -0
- package/dist/node_modules/semver/functions/major.js.map +1 -0
- package/dist/node_modules/semver/functions/minor.js +15 -0
- package/dist/node_modules/semver/functions/minor.js.map +1 -0
- package/dist/node_modules/semver/functions/neq.js +15 -0
- package/dist/node_modules/semver/functions/neq.js.map +1 -0
- package/dist/node_modules/semver/functions/parse.js +27 -0
- package/dist/node_modules/semver/functions/parse.js.map +1 -0
- package/dist/node_modules/semver/functions/patch.js +15 -0
- package/dist/node_modules/semver/functions/patch.js.map +1 -0
- package/dist/node_modules/semver/functions/prerelease.js +18 -0
- package/dist/node_modules/semver/functions/prerelease.js.map +1 -0
- package/dist/node_modules/semver/functions/rcompare.js +15 -0
- package/dist/node_modules/semver/functions/rcompare.js.map +1 -0
- package/dist/node_modules/semver/functions/rsort.js +15 -0
- package/dist/node_modules/semver/functions/rsort.js.map +1 -0
- package/dist/node_modules/semver/functions/satisfies.js +22 -0
- package/dist/node_modules/semver/functions/satisfies.js.map +1 -0
- package/dist/node_modules/semver/functions/sort.js +15 -0
- package/dist/node_modules/semver/functions/sort.js.map +1 -0
- package/dist/node_modules/semver/functions/valid.js +18 -0
- package/dist/node_modules/semver/functions/valid.js.map +1 -0
- package/dist/node_modules/semver/index.js +140 -0
- package/dist/node_modules/semver/index.js.map +1 -0
- package/dist/node_modules/semver/internal/constants.js +36 -0
- package/dist/node_modules/semver/internal/constants.js.map +1 -0
- package/dist/node_modules/semver/internal/debug.js +14 -0
- package/dist/node_modules/semver/internal/debug.js.map +1 -0
- package/dist/node_modules/semver/internal/identifiers.js +29 -0
- package/dist/node_modules/semver/internal/identifiers.js.map +1 -0
- package/dist/node_modules/semver/internal/lrucache.js +42 -0
- package/dist/node_modules/semver/internal/lrucache.js.map +1 -0
- package/dist/node_modules/semver/internal/parse-options.js +23 -0
- package/dist/node_modules/semver/internal/parse-options.js.map +1 -0
- package/dist/node_modules/semver/internal/re.js +96 -0
- package/dist/node_modules/semver/internal/re.js.map +1 -0
- package/dist/node_modules/semver/ranges/gtr.js +15 -0
- package/dist/node_modules/semver/ranges/gtr.js.map +1 -0
- package/dist/node_modules/semver/ranges/intersects.js +19 -0
- package/dist/node_modules/semver/ranges/intersects.js.map +1 -0
- package/dist/node_modules/semver/ranges/ltr.js +15 -0
- package/dist/node_modules/semver/ranges/ltr.js.map +1 -0
- package/dist/node_modules/semver/ranges/max-satisfying.js +35 -0
- package/dist/node_modules/semver/ranges/max-satisfying.js.map +1 -0
- package/dist/node_modules/semver/ranges/min-satisfying.js +35 -0
- package/dist/node_modules/semver/ranges/min-satisfying.js.map +1 -0
- package/dist/node_modules/semver/ranges/min-version.js +66 -0
- package/dist/node_modules/semver/ranges/min-version.js.map +1 -0
- package/dist/node_modules/semver/ranges/outside.js +81 -0
- package/dist/node_modules/semver/ranges/outside.js.map +1 -0
- package/dist/node_modules/semver/ranges/simplify.js +56 -0
- package/dist/node_modules/semver/ranges/simplify.js.map +1 -0
- package/dist/node_modules/semver/ranges/subset.js +170 -0
- package/dist/node_modules/semver/ranges/subset.js.map +1 -0
- package/dist/node_modules/semver/ranges/to-comparators.js +15 -0
- package/dist/node_modules/semver/ranges/to-comparators.js.map +1 -0
- package/dist/node_modules/semver/ranges/valid.js +21 -0
- package/dist/node_modules/semver/ranges/valid.js.map +1 -0
- package/dist/node_modules/tinyglobby/dist/index.js +332 -0
- package/dist/node_modules/tinyglobby/dist/index.js.map +1 -0
- package/dist/node_modules/ts-api-utils/lib/index.js +2361 -0
- package/dist/node_modules/ts-api-utils/lib/index.js.map +1 -0
- package/dist/node_modules/typescript/lib/tsserverlibrary.js +33 -0
- package/dist/node_modules/typescript/lib/tsserverlibrary.js.map +1 -0
- package/dist/node_modules/typescript/lib/typescript.js +210602 -0
- package/dist/node_modules/typescript/lib/typescript.js.map +1 -0
- package/dist/node_modules/ws/browser.js +16 -0
- package/dist/node_modules/ws/browser.js.map +1 -0
- package/dist/plugins/analyzers/code-complexity/analyzer.d.ts +105 -0
- package/dist/plugins/analyzers/code-complexity/analyzer.d.ts.map +1 -0
- package/dist/plugins/analyzers/code-complexity/analyzer.js +507 -0
- package/dist/plugins/analyzers/code-complexity/analyzer.js.map +1 -0
- package/dist/plugins/analyzers/code-complexity/graph-generator.d.ts +70 -0
- package/dist/plugins/analyzers/code-complexity/graph-generator.d.ts.map +1 -0
- package/dist/plugins/analyzers/code-complexity/graph-generator.js +405 -0
- package/dist/plugins/analyzers/code-complexity/graph-generator.js.map +1 -0
- package/dist/plugins/analyzers/code-complexity/index.d.ts +191 -0
- package/dist/plugins/analyzers/code-complexity/index.d.ts.map +1 -0
- package/dist/plugins/analyzers/code-complexity/index.js +276 -0
- package/dist/plugins/analyzers/code-complexity/index.js.map +1 -0
- package/dist/plugins/analyzers/code-complexity/metrics.d.ts +77 -0
- package/dist/plugins/analyzers/code-complexity/metrics.d.ts.map +1 -0
- package/dist/plugins/analyzers/code-complexity/metrics.js +514 -0
- package/dist/plugins/analyzers/code-complexity/metrics.js.map +1 -0
- package/dist/plugins/analyzers/code-complexity/plugin.d.ts +161 -0
- package/dist/plugins/analyzers/code-complexity/plugin.d.ts.map +1 -0
- package/dist/plugins/analyzers/code-complexity/plugin.js +661 -0
- package/dist/plugins/analyzers/code-complexity/plugin.js.map +1 -0
- package/dist/plugins/analyzers/code-complexity/types.d.ts +360 -0
- package/dist/plugins/analyzers/code-complexity/types.d.ts.map +1 -0
- package/dist/plugins/analyzers/code-complexity/types.js +27 -0
- package/dist/plugins/analyzers/code-complexity/types.js.map +1 -0
- package/dist/plugins/analyzers/dependency-health/analyzer.d.ts +56 -0
- package/dist/plugins/analyzers/dependency-health/analyzer.d.ts.map +1 -0
- package/dist/plugins/analyzers/dependency-health/analyzer.js +387 -0
- package/dist/plugins/analyzers/dependency-health/analyzer.js.map +1 -0
- package/dist/plugins/analyzers/dependency-health/graph-generator.d.ts +60 -0
- package/dist/plugins/analyzers/dependency-health/graph-generator.d.ts.map +1 -0
- package/dist/plugins/analyzers/dependency-health/graph-generator.js +295 -0
- package/dist/plugins/analyzers/dependency-health/graph-generator.js.map +1 -0
- package/dist/plugins/analyzers/dependency-health/index.d.ts +201 -0
- package/dist/plugins/analyzers/dependency-health/index.d.ts.map +1 -0
- package/dist/plugins/analyzers/dependency-health/index.js +857 -0
- package/dist/plugins/analyzers/dependency-health/index.js.map +1 -0
- package/dist/plugins/analyzers/dependency-health/npm-client.d.ts +68 -0
- package/dist/plugins/analyzers/dependency-health/npm-client.d.ts.map +1 -0
- package/dist/plugins/analyzers/dependency-health/npm-client.js +226 -0
- package/dist/plugins/analyzers/dependency-health/npm-client.js.map +1 -0
- package/dist/plugins/analyzers/dependency-health/types.d.ts +462 -0
- package/dist/plugins/analyzers/dependency-health/types.d.ts.map +1 -0
- package/dist/plugins/analyzers/dependency-health/vulnerability.d.ts +80 -0
- package/dist/plugins/analyzers/dependency-health/vulnerability.d.ts.map +1 -0
- package/dist/plugins/analyzers/dependency-health/vulnerability.js +215 -0
- package/dist/plugins/analyzers/dependency-health/vulnerability.js.map +1 -0
- package/dist/plugins/analyzers/index.d.ts +12 -0
- package/dist/plugins/analyzers/index.d.ts.map +1 -0
- package/dist/plugins/index.d.ts +13 -0
- package/dist/plugins/index.d.ts.map +1 -0
- package/dist/plugins/loader.d.ts +158 -0
- package/dist/plugins/loader.d.ts.map +1 -0
- package/dist/plugins/loader.js +554 -0
- package/dist/plugins/loader.js.map +1 -0
- package/dist/plugins/manager.d.ts +183 -0
- package/dist/plugins/manager.d.ts.map +1 -0
- package/dist/plugins/manager.js +876 -0
- package/dist/plugins/manager.js.map +1 -0
- package/dist/plugins/registry.d.ts +163 -0
- package/dist/plugins/registry.d.ts.map +1 -0
- package/dist/plugins/registry.js +448 -0
- package/dist/plugins/registry.js.map +1 -0
- package/dist/plugins/types.d.ts +930 -0
- package/dist/plugins/types.d.ts.map +1 -0
- package/dist/plugins/types.js +43 -0
- package/dist/plugins/types.js.map +1 -0
- package/dist/server/container.d.ts +263 -0
- package/dist/server/container.d.ts.map +1 -0
- package/dist/server/container.js +605 -0
- package/dist/server/container.js.map +1 -0
- package/dist/server/event-bus.d.ts +418 -0
- package/dist/server/event-bus.d.ts.map +1 -0
- package/dist/server/event-bus.js +442 -0
- package/dist/server/event-bus.js.map +1 -0
- package/dist/server/index.d.ts +37 -0
- package/dist/server/index.d.ts.map +1 -0
- package/dist/server/manager.d.ts +123 -0
- package/dist/server/manager.d.ts.map +1 -0
- package/dist/server/manager.js +742 -0
- package/dist/server/manager.js.map +1 -0
- package/dist/server/shared-services.d.ts +130 -0
- package/dist/server/shared-services.d.ts.map +1 -0
- package/dist/server/shared-services.js +476 -0
- package/dist/server/shared-services.js.map +1 -0
- package/dist/server/types.d.ts +320 -0
- package/dist/server/types.d.ts.map +1 -0
- package/dist/server/types.js +13 -0
- package/dist/server/types.js.map +1 -0
- package/dist/services/manager.js +328 -0
- package/dist/services/manager.js.map +1 -0
- package/package.json +29 -3
- package/dist/_virtual/additionalItems.js +0 -5
- package/dist/_virtual/additionalItems.js.map +0 -1
- package/dist/_virtual/additionalProperties.js +0 -5
- package/dist/_virtual/additionalProperties.js.map +0 -1
- package/dist/_virtual/ajv.js +0 -6
- package/dist/_virtual/ajv.js.map +0 -1
- package/dist/_virtual/ajv2.js +0 -5
- package/dist/_virtual/ajv2.js.map +0 -1
- package/dist/_virtual/allOf.js +0 -5
- package/dist/_virtual/allOf.js.map +0 -1
- package/dist/_virtual/anyOf.js +0 -5
- package/dist/_virtual/anyOf.js.map +0 -1
- package/dist/_virtual/applicability.js +0 -5
- package/dist/_virtual/applicability.js.map +0 -1
- package/dist/_virtual/boolSchema.js +0 -5
- package/dist/_virtual/boolSchema.js.map +0 -1
- package/dist/_virtual/code.js +0 -5
- package/dist/_virtual/code.js.map +0 -1
- package/dist/_virtual/code2.js +0 -5
- package/dist/_virtual/code2.js.map +0 -1
- package/dist/_virtual/const.js +0 -5
- package/dist/_virtual/const.js.map +0 -1
- package/dist/_virtual/contains.js +0 -5
- package/dist/_virtual/contains.js.map +0 -1
- package/dist/_virtual/core.js +0 -5
- package/dist/_virtual/core.js.map +0 -1
- package/dist/_virtual/dataType.js +0 -5
- package/dist/_virtual/dataType.js.map +0 -1
- package/dist/_virtual/defaults.js +0 -5
- package/dist/_virtual/defaults.js.map +0 -1
- package/dist/_virtual/dependencies.js +0 -5
- package/dist/_virtual/dependencies.js.map +0 -1
- package/dist/_virtual/draft7.js +0 -5
- package/dist/_virtual/draft7.js.map +0 -1
- package/dist/_virtual/enum.js +0 -5
- package/dist/_virtual/enum.js.map +0 -1
- package/dist/_virtual/equal.js +0 -5
- package/dist/_virtual/equal.js.map +0 -1
- package/dist/_virtual/errors.js +0 -5
- package/dist/_virtual/errors.js.map +0 -1
- package/dist/_virtual/format.js +0 -5
- package/dist/_virtual/format.js.map +0 -1
- package/dist/_virtual/formats.js +0 -5
- package/dist/_virtual/formats.js.map +0 -1
- package/dist/_virtual/id.js +0 -5
- package/dist/_virtual/id.js.map +0 -1
- package/dist/_virtual/if.js +0 -5
- package/dist/_virtual/if.js.map +0 -1
- package/dist/_virtual/index12.js +0 -5
- package/dist/_virtual/index12.js.map +0 -1
- package/dist/_virtual/items.js +0 -5
- package/dist/_virtual/items.js.map +0 -1
- package/dist/_virtual/items2020.js +0 -5
- package/dist/_virtual/items2020.js.map +0 -1
- package/dist/_virtual/keyword.js +0 -5
- package/dist/_virtual/keyword.js.map +0 -1
- package/dist/_virtual/limit.js +0 -5
- package/dist/_virtual/limit.js.map +0 -1
- package/dist/_virtual/limitItems.js +0 -5
- package/dist/_virtual/limitItems.js.map +0 -1
- package/dist/_virtual/limitLength.js +0 -5
- package/dist/_virtual/limitLength.js.map +0 -1
- package/dist/_virtual/limitNumber.js +0 -5
- package/dist/_virtual/limitNumber.js.map +0 -1
- package/dist/_virtual/limitProperties.js +0 -5
- package/dist/_virtual/limitProperties.js.map +0 -1
- package/dist/_virtual/metadata.js +0 -5
- package/dist/_virtual/metadata.js.map +0 -1
- package/dist/_virtual/multipleOf.js +0 -5
- package/dist/_virtual/multipleOf.js.map +0 -1
- package/dist/_virtual/names.js +0 -5
- package/dist/_virtual/names.js.map +0 -1
- package/dist/_virtual/not.js +0 -5
- package/dist/_virtual/not.js.map +0 -1
- package/dist/_virtual/oneOf.js +0 -5
- package/dist/_virtual/oneOf.js.map +0 -1
- package/dist/_virtual/pattern.js +0 -5
- package/dist/_virtual/pattern.js.map +0 -1
- package/dist/_virtual/patternProperties.js +0 -5
- package/dist/_virtual/patternProperties.js.map +0 -1
- package/dist/_virtual/prefixItems.js +0 -5
- package/dist/_virtual/prefixItems.js.map +0 -1
- package/dist/_virtual/properties.js +0 -5
- package/dist/_virtual/properties.js.map +0 -1
- package/dist/_virtual/propertyNames.js +0 -5
- package/dist/_virtual/propertyNames.js.map +0 -1
- package/dist/_virtual/ref.js +0 -5
- package/dist/_virtual/ref.js.map +0 -1
- package/dist/_virtual/ref_error.js +0 -5
- package/dist/_virtual/ref_error.js.map +0 -1
- package/dist/_virtual/required.js +0 -5
- package/dist/_virtual/required.js.map +0 -1
- package/dist/_virtual/resolve.js +0 -5
- package/dist/_virtual/resolve.js.map +0 -1
- package/dist/_virtual/rules.js +0 -5
- package/dist/_virtual/rules.js.map +0 -1
- package/dist/_virtual/scope.js +0 -5
- package/dist/_virtual/scope.js.map +0 -1
- package/dist/_virtual/subschema.js +0 -5
- package/dist/_virtual/subschema.js.map +0 -1
- package/dist/_virtual/thenElse.js +0 -5
- package/dist/_virtual/thenElse.js.map +0 -1
- package/dist/_virtual/types.js +0 -5
- package/dist/_virtual/types.js.map +0 -1
- package/dist/_virtual/ucs2length.js +0 -5
- package/dist/_virtual/ucs2length.js.map +0 -1
- package/dist/_virtual/uniqueItems.js +0 -5
- package/dist/_virtual/uniqueItems.js.map +0 -1
- package/dist/_virtual/uri.js +0 -5
- package/dist/_virtual/uri.js.map +0 -1
- package/dist/_virtual/util.js +0 -5
- package/dist/_virtual/util.js.map +0 -1
- package/dist/_virtual/validation_error.js +0 -5
- package/dist/_virtual/validation_error.js.map +0 -1
- package/dist/node_modules/@modelcontextprotocol/sdk/dist/esm/server/index.js +0 -296
- package/dist/node_modules/@modelcontextprotocol/sdk/dist/esm/server/index.js.map +0 -1
- package/dist/node_modules/@modelcontextprotocol/sdk/dist/esm/server/zod-compat.js +0 -71
- package/dist/node_modules/@modelcontextprotocol/sdk/dist/esm/server/zod-compat.js.map +0 -1
- package/dist/node_modules/@modelcontextprotocol/sdk/dist/esm/server/zod-json-schema-compat.js +0 -26
- package/dist/node_modules/@modelcontextprotocol/sdk/dist/esm/server/zod-json-schema-compat.js.map +0 -1
- package/dist/node_modules/@modelcontextprotocol/sdk/dist/esm/shared/protocol.js +0 -407
- package/dist/node_modules/@modelcontextprotocol/sdk/dist/esm/shared/protocol.js.map +0 -1
- package/dist/node_modules/@modelcontextprotocol/sdk/dist/esm/types.js +0 -1332
- package/dist/node_modules/@modelcontextprotocol/sdk/dist/esm/types.js.map +0 -1
- package/dist/node_modules/@modelcontextprotocol/sdk/dist/esm/validation/ajv-provider.js +0 -71
- package/dist/node_modules/@modelcontextprotocol/sdk/dist/esm/validation/ajv-provider.js.map +0 -1
- package/dist/node_modules/ajv/dist/ajv.js +0 -84
- package/dist/node_modules/ajv/dist/ajv.js.map +0 -1
- package/dist/node_modules/ajv/dist/compile/codegen/code.js +0 -160
- package/dist/node_modules/ajv/dist/compile/codegen/code.js.map +0 -1
- package/dist/node_modules/ajv/dist/compile/codegen/index.js +0 -728
- package/dist/node_modules/ajv/dist/compile/codegen/index.js.map +0 -1
- package/dist/node_modules/ajv/dist/compile/codegen/scope.js +0 -152
- package/dist/node_modules/ajv/dist/compile/codegen/scope.js.map +0 -1
- package/dist/node_modules/ajv/dist/compile/errors.js +0 -131
- package/dist/node_modules/ajv/dist/compile/errors.js.map +0 -1
- package/dist/node_modules/ajv/dist/compile/index.js +0 -234
- package/dist/node_modules/ajv/dist/compile/index.js.map +0 -1
- package/dist/node_modules/ajv/dist/compile/names.js +0 -44
- package/dist/node_modules/ajv/dist/compile/names.js.map +0 -1
- package/dist/node_modules/ajv/dist/compile/ref_error.js +0 -22
- package/dist/node_modules/ajv/dist/compile/ref_error.js.map +0 -1
- package/dist/node_modules/ajv/dist/compile/resolve.js +0 -163
- package/dist/node_modules/ajv/dist/compile/resolve.js.map +0 -1
- package/dist/node_modules/ajv/dist/compile/rules.js +0 -35
- package/dist/node_modules/ajv/dist/compile/rules.js.map +0 -1
- package/dist/node_modules/ajv/dist/compile/util.js +0 -173
- package/dist/node_modules/ajv/dist/compile/util.js.map +0 -1
- package/dist/node_modules/ajv/dist/compile/validate/applicability.js +0 -27
- package/dist/node_modules/ajv/dist/compile/validate/applicability.js.map +0 -1
- package/dist/node_modules/ajv/dist/compile/validate/boolSchema.js +0 -58
- package/dist/node_modules/ajv/dist/compile/validate/boolSchema.js.map +0 -1
- package/dist/node_modules/ajv/dist/compile/validate/dataType.js +0 -193
- package/dist/node_modules/ajv/dist/compile/validate/dataType.js.map +0 -1
- package/dist/node_modules/ajv/dist/compile/validate/defaults.js +0 -43
- package/dist/node_modules/ajv/dist/compile/validate/defaults.js.map +0 -1
- package/dist/node_modules/ajv/dist/compile/validate/index.js +0 -522
- package/dist/node_modules/ajv/dist/compile/validate/index.js.map +0 -1
- package/dist/node_modules/ajv/dist/compile/validate/keyword.js +0 -126
- package/dist/node_modules/ajv/dist/compile/validate/keyword.js.map +0 -1
- package/dist/node_modules/ajv/dist/compile/validate/subschema.js +0 -89
- package/dist/node_modules/ajv/dist/compile/validate/subschema.js.map +0 -1
- package/dist/node_modules/ajv/dist/core.js +0 -628
- package/dist/node_modules/ajv/dist/core.js.map +0 -1
- package/dist/node_modules/ajv/dist/refs/data.json.js +0 -24
- package/dist/node_modules/ajv/dist/refs/data.json.js.map +0 -1
- package/dist/node_modules/ajv/dist/refs/json-schema-draft-07.json.js +0 -25
- package/dist/node_modules/ajv/dist/refs/json-schema-draft-07.json.js.map +0 -1
- package/dist/node_modules/ajv/dist/runtime/equal.js +0 -16
- package/dist/node_modules/ajv/dist/runtime/equal.js.map +0 -1
- package/dist/node_modules/ajv/dist/runtime/ucs2length.js +0 -30
- package/dist/node_modules/ajv/dist/runtime/ucs2length.js.map +0 -1
- package/dist/node_modules/ajv/dist/runtime/uri.js +0 -16
- package/dist/node_modules/ajv/dist/runtime/uri.js.map +0 -1
- package/dist/node_modules/ajv/dist/runtime/validation_error.js +0 -20
- package/dist/node_modules/ajv/dist/runtime/validation_error.js.map +0 -1
- package/dist/node_modules/ajv/dist/vocabularies/applicator/additionalItems.js +0 -59
- package/dist/node_modules/ajv/dist/vocabularies/applicator/additionalItems.js.map +0 -1
- package/dist/node_modules/ajv/dist/vocabularies/applicator/additionalProperties.js +0 -114
- package/dist/node_modules/ajv/dist/vocabularies/applicator/additionalProperties.js.map +0 -1
- package/dist/node_modules/ajv/dist/vocabularies/applicator/allOf.js +0 -32
- package/dist/node_modules/ajv/dist/vocabularies/applicator/allOf.js.map +0 -1
- package/dist/node_modules/ajv/dist/vocabularies/applicator/anyOf.js +0 -22
- package/dist/node_modules/ajv/dist/vocabularies/applicator/anyOf.js.map +0 -1
- package/dist/node_modules/ajv/dist/vocabularies/applicator/contains.js +0 -100
- package/dist/node_modules/ajv/dist/vocabularies/applicator/contains.js.map +0 -1
- package/dist/node_modules/ajv/dist/vocabularies/applicator/dependencies.js +0 -103
- package/dist/node_modules/ajv/dist/vocabularies/applicator/dependencies.js.map +0 -1
- package/dist/node_modules/ajv/dist/vocabularies/applicator/if.js +0 -75
- package/dist/node_modules/ajv/dist/vocabularies/applicator/if.js.map +0 -1
- package/dist/node_modules/ajv/dist/vocabularies/applicator/index.js +0 -68
- package/dist/node_modules/ajv/dist/vocabularies/applicator/index.js.map +0 -1
- package/dist/node_modules/ajv/dist/vocabularies/applicator/items.js +0 -64
- package/dist/node_modules/ajv/dist/vocabularies/applicator/items.js.map +0 -1
- package/dist/node_modules/ajv/dist/vocabularies/applicator/items2020.js +0 -43
- package/dist/node_modules/ajv/dist/vocabularies/applicator/items2020.js.map +0 -1
- package/dist/node_modules/ajv/dist/vocabularies/applicator/not.js +0 -36
- package/dist/node_modules/ajv/dist/vocabularies/applicator/not.js.map +0 -1
- package/dist/node_modules/ajv/dist/vocabularies/applicator/oneOf.js +0 -64
- package/dist/node_modules/ajv/dist/vocabularies/applicator/oneOf.js.map +0 -1
- package/dist/node_modules/ajv/dist/vocabularies/applicator/patternProperties.js +0 -81
- package/dist/node_modules/ajv/dist/vocabularies/applicator/patternProperties.js.map +0 -1
- package/dist/node_modules/ajv/dist/vocabularies/applicator/prefixItems.js +0 -22
- package/dist/node_modules/ajv/dist/vocabularies/applicator/prefixItems.js.map +0 -1
- package/dist/node_modules/ajv/dist/vocabularies/applicator/properties.js +0 -66
- package/dist/node_modules/ajv/dist/vocabularies/applicator/properties.js.map +0 -1
- package/dist/node_modules/ajv/dist/vocabularies/applicator/propertyNames.js +0 -49
- package/dist/node_modules/ajv/dist/vocabularies/applicator/propertyNames.js.map +0 -1
- package/dist/node_modules/ajv/dist/vocabularies/applicator/thenElse.js +0 -23
- package/dist/node_modules/ajv/dist/vocabularies/applicator/thenElse.js.map +0 -1
- package/dist/node_modules/ajv/dist/vocabularies/code.js +0 -140
- package/dist/node_modules/ajv/dist/vocabularies/code.js.map +0 -1
- package/dist/node_modules/ajv/dist/vocabularies/core/id.js +0 -19
- package/dist/node_modules/ajv/dist/vocabularies/core/id.js.map +0 -1
- package/dist/node_modules/ajv/dist/vocabularies/core/index.js +0 -27
- package/dist/node_modules/ajv/dist/vocabularies/core/index.js.map +0 -1
- package/dist/node_modules/ajv/dist/vocabularies/core/ref.js +0 -132
- package/dist/node_modules/ajv/dist/vocabularies/core/ref.js.map +0 -1
- package/dist/node_modules/ajv/dist/vocabularies/discriminator/index.js +0 -114
- package/dist/node_modules/ajv/dist/vocabularies/discriminator/index.js.map +0 -1
- package/dist/node_modules/ajv/dist/vocabularies/discriminator/types.js +0 -18
- package/dist/node_modules/ajv/dist/vocabularies/discriminator/types.js.map +0 -1
- package/dist/node_modules/ajv/dist/vocabularies/draft7.js +0 -31
- package/dist/node_modules/ajv/dist/vocabularies/draft7.js.map +0 -1
- package/dist/node_modules/ajv/dist/vocabularies/format/format.js +0 -95
- package/dist/node_modules/ajv/dist/vocabularies/format/format.js.map +0 -1
- package/dist/node_modules/ajv/dist/vocabularies/format/index.js +0 -16
- package/dist/node_modules/ajv/dist/vocabularies/format/index.js.map +0 -1
- package/dist/node_modules/ajv/dist/vocabularies/metadata.js +0 -27
- package/dist/node_modules/ajv/dist/vocabularies/metadata.js.map +0 -1
- package/dist/node_modules/ajv/dist/vocabularies/validation/const.js +0 -36
- package/dist/node_modules/ajv/dist/vocabularies/validation/const.js.map +0 -1
- package/dist/node_modules/ajv/dist/vocabularies/validation/enum.js +0 -56
- package/dist/node_modules/ajv/dist/vocabularies/validation/enum.js.map +0 -1
- package/dist/node_modules/ajv/dist/vocabularies/validation/index.js +0 -52
- package/dist/node_modules/ajv/dist/vocabularies/validation/index.js.map +0 -1
- package/dist/node_modules/ajv/dist/vocabularies/validation/limitItems.js +0 -34
- package/dist/node_modules/ajv/dist/vocabularies/validation/limitItems.js.map +0 -1
- package/dist/node_modules/ajv/dist/vocabularies/validation/limitLength.js +0 -39
- package/dist/node_modules/ajv/dist/vocabularies/validation/limitLength.js.map +0 -1
- package/dist/node_modules/ajv/dist/vocabularies/validation/limitNumber.js +0 -37
- package/dist/node_modules/ajv/dist/vocabularies/validation/limitNumber.js.map +0 -1
- package/dist/node_modules/ajv/dist/vocabularies/validation/limitProperties.js +0 -34
- package/dist/node_modules/ajv/dist/vocabularies/validation/limitProperties.js.map +0 -1
- package/dist/node_modules/ajv/dist/vocabularies/validation/multipleOf.js +0 -33
- package/dist/node_modules/ajv/dist/vocabularies/validation/multipleOf.js.map +0 -1
- package/dist/node_modules/ajv/dist/vocabularies/validation/pattern.js +0 -34
- package/dist/node_modules/ajv/dist/vocabularies/validation/pattern.js.map +0 -1
- package/dist/node_modules/ajv/dist/vocabularies/validation/required.js +0 -89
- package/dist/node_modules/ajv/dist/vocabularies/validation/required.js.map +0 -1
- package/dist/node_modules/ajv/dist/vocabularies/validation/uniqueItems.js +0 -75
- package/dist/node_modules/ajv/dist/vocabularies/validation/uniqueItems.js.map +0 -1
- package/dist/node_modules/ajv-formats/dist/formats.js +0 -209
- package/dist/node_modules/ajv-formats/dist/formats.js.map +0 -1
- package/dist/node_modules/ajv-formats/dist/index.js +0 -51
- package/dist/node_modules/ajv-formats/dist/index.js.map +0 -1
- package/dist/node_modules/ajv-formats/dist/limit.js +0 -80
- package/dist/node_modules/ajv-formats/dist/limit.js.map +0 -1
- package/dist/node_modules/fast-deep-equal/index.js +0 -39
- package/dist/node_modules/fast-deep-equal/index.js.map +0 -1
- package/dist/node_modules/fast-uri/index.js +0 -261
- package/dist/node_modules/fast-uri/index.js.map +0 -1
- package/dist/node_modules/fast-uri/lib/schemes.js +0 -215
- package/dist/node_modules/fast-uri/lib/schemes.js.map +0 -1
- package/dist/node_modules/fast-uri/lib/utils.js +0 -261
- package/dist/node_modules/fast-uri/lib/utils.js.map +0 -1
- package/dist/node_modules/json-schema-traverse/index.js +0 -92
- package/dist/node_modules/json-schema-traverse/index.js.map +0 -1
- package/dist/node_modules/zod/v4/classic/errors.js +0 -37
- package/dist/node_modules/zod/v4/classic/errors.js.map +0 -1
- package/dist/node_modules/zod/v4/classic/iso.js +0 -43
- package/dist/node_modules/zod/v4/classic/iso.js.map +0 -1
- package/dist/node_modules/zod/v4/classic/parse.js +0 -13
- package/dist/node_modules/zod/v4/classic/parse.js.map +0 -1
- package/dist/node_modules/zod/v4/classic/schemas.js +0 -688
- package/dist/node_modules/zod/v4/classic/schemas.js.map +0 -1
- package/dist/node_modules/zod/v4/core/api.js +0 -492
- package/dist/node_modules/zod/v4/core/api.js.map +0 -1
- package/dist/node_modules/zod/v4/core/checks.js +0 -405
- package/dist/node_modules/zod/v4/core/checks.js.map +0 -1
- package/dist/node_modules/zod/v4/core/core.js +0 -58
- package/dist/node_modules/zod/v4/core/core.js.map +0 -1
- package/dist/node_modules/zod/v4/core/doc.js +0 -38
- package/dist/node_modules/zod/v4/core/doc.js.map +0 -1
- package/dist/node_modules/zod/v4/core/errors.js +0 -82
- package/dist/node_modules/zod/v4/core/errors.js.map +0 -1
- package/dist/node_modules/zod/v4/core/parse.js +0 -60
- package/dist/node_modules/zod/v4/core/parse.js.map +0 -1
- package/dist/node_modules/zod/v4/core/regexes.js +0 -87
- package/dist/node_modules/zod/v4/core/regexes.js.map +0 -1
- package/dist/node_modules/zod/v4/core/registries.js +0 -52
- package/dist/node_modules/zod/v4/core/registries.js.map +0 -1
- package/dist/node_modules/zod/v4/core/schemas.js +0 -1283
- package/dist/node_modules/zod/v4/core/schemas.js.map +0 -1
- package/dist/node_modules/zod/v4/core/util.js +0 -341
- package/dist/node_modules/zod/v4/core/util.js.map +0 -1
- package/dist/node_modules/zod/v4/core/versions.js +0 -9
- package/dist/node_modules/zod/v4/core/versions.js.map +0 -1
- package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/string.js +0 -2
- package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/string.js.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"server.js","sources":["../../src/dashboard-server/server.ts"],"sourcesContent":["/**\n * Dashboard Server\n *\n * Server integration for the Knowledge Graph Dashboard.\n * Supports running Next.js in development and production modes,\n * with programmatic control and concurrent server support.\n *\n * @module dashboard/server\n */\n\nimport { EventEmitter } from 'events';\nimport { spawn, ChildProcess, exec } from 'child_process';\nimport { createServer, Server as HTTPServer, IncomingMessage, ServerResponse } from 'http';\nimport { join, dirname } from 'path';\nimport { existsSync, readFileSync, statSync } from 'fs';\nimport { fileURLToPath } from 'url';\nimport { createLogger } from '../utils/index.js';\nimport {\n DEFAULT_DASHBOARD_PORT,\n DEFAULT_GRAPHQL_PORT,\n} from '../server/types.js';\n\n/**\n * Execute a command asynchronously\n */\nfunction execAsync(command: string, options?: { cwd?: string; env?: NodeJS.ProcessEnv }): Promise<{ stdout: string; stderr: string }> {\n return new Promise((resolve, reject) => {\n exec(command, options, (error, stdout, stderr) => {\n if (error) {\n reject(error);\n } else {\n resolve({ stdout: stdout.toString(), stderr: stderr.toString() });\n }\n });\n });\n}\nconst logger = createLogger('dashboard-server');\n\n// ============================================================================\n// Types\n// ============================================================================\n\n/**\n * Dashboard server mode\n */\nexport type DashboardMode = 'development' | 'production';\n\n/**\n * Dashboard server configuration\n */\nexport interface DashboardConfig {\n /** Project root directory */\n projectRoot: string;\n /** Port to listen on */\n port: number;\n /** GraphQL server endpoint URL */\n graphqlEndpoint: string;\n /** Server mode (development or production) */\n mode: DashboardMode;\n /** Output directory for production build */\n outputDir?: string;\n /** Enable verbose logging */\n verbose?: boolean;\n /** Path to dashboard source (defaults to dashboard/ in project) */\n dashboardPath?: string;\n}\n\n/**\n * Dashboard server status\n */\nexport type DashboardStatus = 'stopped' | 'starting' | 'running' | 'stopping' | 'error';\n\n/**\n * Dashboard server state\n */\nexport interface DashboardState {\n /** Current status */\n status: DashboardStatus;\n /** Port the server is listening on */\n port?: number;\n /** GraphQL endpoint being used */\n graphqlEndpoint?: string;\n /** When the server started */\n startedAt?: Date;\n /** Error message if status is 'error' */\n error?: string;\n /** Server mode */\n mode?: DashboardMode;\n /** Whether GraphQL connection is established */\n graphqlConnected?: boolean;\n}\n\n/**\n * Dashboard server event types\n */\nexport type DashboardEventType =\n | 'starting'\n | 'started'\n | 'stopping'\n | 'stopped'\n | 'error'\n | 'build:started'\n | 'build:completed'\n | 'build:failed'\n | 'graphql:connected'\n | 'graphql:disconnected';\n\n/**\n * Dashboard server interface\n */\nexport interface IDashboardServer {\n /** Start the dashboard server */\n start(): Promise<void>;\n /** Stop the dashboard server */\n stop(): Promise<void>;\n /** Build the dashboard for production */\n build(): Promise<void>;\n /** Get current server state */\n getState(): DashboardState;\n /** Check GraphQL connection */\n checkGraphQLConnection(): Promise<boolean>;\n /** Wait for the server to shutdown (blocks until stopped) */\n waitForShutdown(): Promise<void>;\n /** Subscribe to events */\n on(event: DashboardEventType, listener: (...args: unknown[]) => void): void;\n /** Unsubscribe from events */\n off(event: DashboardEventType, listener: (...args: unknown[]) => void): void;\n}\n\n// ============================================================================\n// Constants\n// ============================================================================\n\nconst STARTUP_TIMEOUT = 30000; // 30 seconds\nconst SHUTDOWN_TIMEOUT = 10000; // 10 seconds\nconst GRAPHQL_CHECK_INTERVAL = 5000; // 5 seconds\nconst RECONNECT_DELAY = 3000; // 3 seconds\n\n// MIME types for static file serving\nconst MIME_TYPES: Record<string, string> = {\n '.html': 'text/html',\n '.js': 'application/javascript',\n '.css': 'text/css',\n '.json': 'application/json',\n '.png': 'image/png',\n '.jpg': 'image/jpeg',\n '.jpeg': 'image/jpeg',\n '.gif': 'image/gif',\n '.svg': 'image/svg+xml',\n '.ico': 'image/x-icon',\n '.woff': 'font/woff',\n '.woff2': 'font/woff2',\n '.ttf': 'font/ttf',\n '.eot': 'application/vnd.ms-fontobject',\n};\n\n// ============================================================================\n// Dashboard Server Implementation\n// ============================================================================\n\n/**\n * DashboardServer\n *\n * Manages the Knowledge Graph Dashboard web interface.\n * Supports both development (with hot reload) and production modes.\n *\n * @example\n * ```typescript\n * const server = new DashboardServer({\n * projectRoot: process.cwd(),\n * port: 3000,\n * graphqlEndpoint: 'http://localhost:4000/graphql',\n * mode: 'development',\n * });\n *\n * await server.start();\n *\n * // Later...\n * await server.stop();\n * ```\n */\nexport class DashboardServer implements IDashboardServer {\n private config: DashboardConfig;\n private state: DashboardState;\n private eventEmitter: EventEmitter;\n private childProcess: ChildProcess | null = null;\n private httpServer: HTTPServer | null = null;\n private graphqlCheckInterval: NodeJS.Timeout | null = null;\n private shutdownPromise: Promise<void> | null = null;\n private shutdownResolve: (() => void) | null = null;\n\n constructor(config: DashboardConfig) {\n this.config = {\n ...config,\n dashboardPath: config.dashboardPath ?? this.detectDashboardPath(config.projectRoot),\n };\n\n this.state = {\n status: 'stopped',\n };\n\n this.eventEmitter = new EventEmitter();\n this.eventEmitter.setMaxListeners(50);\n\n logger.debug('DashboardServer created', {\n port: config.port,\n mode: config.mode,\n graphqlEndpoint: config.graphqlEndpoint,\n });\n }\n\n // ============================================================================\n // Path Detection\n // ============================================================================\n\n /**\n * Detect the dashboard path\n */\n private detectDashboardPath(projectRoot: string): string {\n // Check common locations\n const candidates = [\n join(projectRoot, 'dashboard'),\n join(projectRoot, 'src', 'dashboard'),\n join(projectRoot, 'packages', 'dashboard'),\n join(projectRoot, '..', 'dashboard'),\n ];\n\n for (const candidate of candidates) {\n if (existsSync(join(candidate, 'package.json'))) {\n logger.debug('Found dashboard at', { path: candidate });\n return candidate;\n }\n }\n\n // Default to projectRoot/dashboard (will be created if needed)\n return join(projectRoot, 'dashboard');\n }\n\n /**\n * Check if dashboard is installed\n */\n private isDashboardInstalled(): boolean {\n const dashboardPath = this.config.dashboardPath!;\n return existsSync(join(dashboardPath, 'package.json'));\n }\n\n // ============================================================================\n // Server Lifecycle\n // ============================================================================\n\n /**\n * Start the dashboard server\n */\n async start(): Promise<void> {\n if (this.state.status === 'running') {\n logger.warn('Dashboard server already running');\n return;\n }\n\n this.state.status = 'starting';\n this.emit('starting');\n\n try {\n if (this.config.mode === 'development') {\n await this.startDevelopmentServer();\n } else {\n await this.startProductionServer();\n }\n\n this.state.status = 'running';\n this.state.port = this.config.port;\n this.state.graphqlEndpoint = this.config.graphqlEndpoint;\n this.state.mode = this.config.mode;\n this.state.startedAt = new Date();\n\n this.emit('started');\n\n // Start GraphQL connection monitoring\n this.startGraphQLMonitoring();\n\n // Setup shutdown promise\n this.shutdownPromise = new Promise((resolve) => {\n this.shutdownResolve = resolve;\n });\n\n logger.info('Dashboard server started', {\n port: this.config.port,\n mode: this.config.mode,\n });\n } catch (error) {\n this.state.status = 'error';\n this.state.error = error instanceof Error ? error.message : String(error);\n this.emit('error', error);\n throw error;\n }\n }\n\n /**\n * Start the development server (Next.js dev)\n */\n private async startDevelopmentServer(): Promise<void> {\n const dashboardPath = this.config.dashboardPath!;\n\n // Check if dashboard is installed\n if (!this.isDashboardInstalled()) {\n // For now, we'll use a fallback static server\n logger.warn('Dashboard not installed, using fallback static server');\n await this.startFallbackServer();\n return;\n }\n\n // Set environment variables for the dashboard\n const env = {\n ...process.env,\n PORT: String(this.config.port),\n NEXT_PUBLIC_GRAPHQL_ENDPOINT: this.config.graphqlEndpoint,\n NEXT_PUBLIC_API_URL: this.config.graphqlEndpoint.replace('/graphql', ''),\n };\n\n // Start Next.js dev server\n return new Promise((resolve, reject) => {\n const timeout = setTimeout(() => {\n reject(new Error(`Dashboard startup timed out after ${STARTUP_TIMEOUT}ms`));\n }, STARTUP_TIMEOUT);\n\n this.childProcess = spawn('npm', ['run', 'dev'], {\n cwd: dashboardPath,\n env,\n stdio: this.config.verbose ? 'inherit' : 'pipe',\n shell: true,\n });\n\n this.childProcess.on('error', (error) => {\n clearTimeout(timeout);\n reject(error);\n });\n\n this.childProcess.on('exit', (code) => {\n if (code !== 0 && this.state.status === 'starting') {\n clearTimeout(timeout);\n reject(new Error(`Dashboard process exited with code ${code}`));\n }\n });\n\n if (this.childProcess.stdout && !this.config.verbose) {\n this.childProcess.stdout.on('data', (data: Buffer) => {\n const output = data.toString();\n if (output.includes('Ready') || output.includes('started')) {\n clearTimeout(timeout);\n resolve();\n }\n if (this.config.verbose) {\n process.stdout.write(data);\n }\n });\n }\n\n // For verbose mode or fallback, resolve after a delay\n if (this.config.verbose || !this.childProcess.stdout) {\n setTimeout(() => {\n clearTimeout(timeout);\n resolve();\n }, 3000);\n }\n });\n }\n\n /**\n * Start the production server (Next.js start or static file server)\n */\n private async startProductionServer(): Promise<void> {\n const dashboardPath = this.config.dashboardPath!;\n const buildPath = join(dashboardPath, '.next');\n\n // Check if production build exists\n if (!existsSync(buildPath)) {\n logger.warn('Production build not found, using fallback server');\n await this.startFallbackServer();\n return;\n }\n\n // Set environment variables\n const env = {\n ...process.env,\n PORT: String(this.config.port),\n NEXT_PUBLIC_GRAPHQL_ENDPOINT: this.config.graphqlEndpoint,\n NODE_ENV: 'production',\n };\n\n // Start Next.js production server\n return new Promise((resolve, reject) => {\n const timeout = setTimeout(() => {\n reject(new Error(`Dashboard startup timed out after ${STARTUP_TIMEOUT}ms`));\n }, STARTUP_TIMEOUT);\n\n this.childProcess = spawn('npm', ['run', 'start'], {\n cwd: dashboardPath,\n env,\n stdio: this.config.verbose ? 'inherit' : 'pipe',\n shell: true,\n });\n\n this.childProcess.on('error', (error) => {\n clearTimeout(timeout);\n reject(error);\n });\n\n if (this.childProcess.stdout && !this.config.verbose) {\n this.childProcess.stdout.on('data', (data: Buffer) => {\n const output = data.toString();\n if (output.includes('Ready') || output.includes('started')) {\n clearTimeout(timeout);\n resolve();\n }\n });\n }\n\n // Fallback resolve after delay\n setTimeout(() => {\n clearTimeout(timeout);\n resolve();\n }, 3000);\n });\n }\n\n /**\n * Start a fallback static server when dashboard is not installed\n */\n private async startFallbackServer(): Promise<void> {\n return new Promise((resolve, reject) => {\n this.httpServer = createServer((req: IncomingMessage, res: ServerResponse) => {\n this.handleFallbackRequest(req, res);\n });\n\n this.httpServer.on('error', (error: NodeJS.ErrnoException) => {\n if (error.code === 'EADDRINUSE') {\n reject(new Error(`Port ${this.config.port} is already in use`));\n } else {\n reject(error);\n }\n });\n\n this.httpServer.listen(this.config.port, () => {\n logger.info('Fallback dashboard server started', { port: this.config.port });\n resolve();\n });\n });\n }\n\n /**\n * Handle requests to the fallback server\n */\n private handleFallbackRequest(req: IncomingMessage, res: ServerResponse): void {\n const url = req.url ?? '/';\n\n // API endpoints\n if (url === '/api/health') {\n res.writeHead(200, { 'Content-Type': 'application/json' });\n res.end(JSON.stringify({\n status: 'ok',\n server: 'dashboard',\n mode: this.config.mode,\n graphqlEndpoint: this.config.graphqlEndpoint,\n graphqlConnected: this.state.graphqlConnected ?? false,\n }));\n return;\n }\n\n if (url === '/api/status') {\n res.writeHead(200, { 'Content-Type': 'application/json' });\n res.end(JSON.stringify(this.getState()));\n return;\n }\n\n if (url === '/api/config') {\n res.writeHead(200, { 'Content-Type': 'application/json' });\n res.end(JSON.stringify({\n graphqlEndpoint: this.config.graphqlEndpoint,\n port: this.config.port,\n mode: this.config.mode,\n }));\n return;\n }\n\n // Serve fallback HTML page\n res.writeHead(200, { 'Content-Type': 'text/html' });\n res.end(this.getFallbackHTML());\n }\n\n /**\n * Get fallback HTML when dashboard is not fully installed\n */\n private getFallbackHTML(): string {\n const graphqlEndpoint = this.config.graphqlEndpoint;\n const mode = this.config.mode;\n\n return `<!DOCTYPE html>\n<html lang=\"en\">\n<head>\n <meta charset=\"UTF-8\">\n <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\n <title>Knowledge Graph Dashboard</title>\n <style>\n * { margin: 0; padding: 0; box-sizing: border-box; }\n body {\n font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;\n background: linear-gradient(135deg, #1a1a2e 0%, #16213e 100%);\n color: #e0e0e0;\n min-height: 100vh;\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n }\n .container { text-align: center; padding: 2rem; max-width: 600px; }\n h1 { font-size: 2.5rem; margin-bottom: 1rem; color: #00d4ff; }\n p { font-size: 1.1rem; margin-bottom: 1.5rem; opacity: 0.8; line-height: 1.6; }\n .status {\n display: flex;\n gap: 1.5rem;\n justify-content: center;\n flex-wrap: wrap;\n margin: 2rem 0;\n }\n .card {\n background: rgba(255,255,255,0.05);\n border: 1px solid rgba(255,255,255,0.1);\n border-radius: 12px;\n padding: 1.5rem;\n min-width: 180px;\n transition: transform 0.2s, border-color 0.2s;\n }\n .card:hover {\n transform: translateY(-2px);\n border-color: rgba(0, 212, 255, 0.3);\n }\n .card h3 { color: #00d4ff; font-size: 0.85rem; text-transform: uppercase; letter-spacing: 0.05em; margin-bottom: 0.75rem; }\n .card .value { font-size: 1.4rem; font-weight: 600; }\n .connected { color: #00ff88; }\n .disconnected { color: #ff6b6b; }\n .mode-dev { color: #ffcc00; }\n .mode-prod { color: #00d4ff; }\n .indicator {\n display: inline-block;\n width: 10px;\n height: 10px;\n border-radius: 50%;\n margin-right: 8px;\n animation: pulse 2s infinite;\n }\n .indicator.connected { background: #00ff88; }\n .indicator.disconnected { background: #ff6b6b; }\n @keyframes pulse {\n 0%, 100% { opacity: 1; }\n 50% { opacity: 0.5; }\n }\n .actions {\n margin-top: 2rem;\n padding-top: 2rem;\n border-top: 1px solid rgba(255,255,255,0.1);\n }\n .actions a {\n display: inline-block;\n padding: 0.75rem 1.5rem;\n background: linear-gradient(135deg, #00d4ff 0%, #0066ff 100%);\n color: white;\n text-decoration: none;\n border-radius: 8px;\n font-weight: 500;\n margin: 0.5rem;\n transition: transform 0.2s, box-shadow 0.2s;\n }\n .actions a:hover {\n transform: translateY(-2px);\n box-shadow: 0 4px 20px rgba(0, 212, 255, 0.3);\n }\n .info {\n margin-top: 2rem;\n font-size: 0.9rem;\n opacity: 0.6;\n }\n code {\n background: rgba(255,255,255,0.1);\n padding: 0.2rem 0.5rem;\n border-radius: 4px;\n font-size: 0.85em;\n }\n </style>\n</head>\n<body>\n <div class=\"container\">\n <h1>Knowledge Graph Dashboard</h1>\n <p>The dashboard server is running. Connect to explore your knowledge graph visually.</p>\n\n <div class=\"status\" id=\"status\">\n <div class=\"card\">\n <h3>GraphQL Server</h3>\n <div class=\"value\" id=\"graphql-status\">\n <span class=\"indicator disconnected\" id=\"graphql-indicator\"></span>\n <span id=\"graphql-text\">Checking...</span>\n </div>\n </div>\n <div class=\"card\">\n <h3>Dashboard Mode</h3>\n <div class=\"value ${mode === 'development' ? 'mode-dev' : 'mode-prod'}\">${mode}</div>\n </div>\n <div class=\"card\">\n <h3>Endpoint</h3>\n <div class=\"value\" style=\"font-size: 0.9rem; word-break: break-all;\">${graphqlEndpoint}</div>\n </div>\n </div>\n\n <div class=\"actions\">\n <a href=\"${graphqlEndpoint.replace('/graphql', '/graphql')}\" target=\"_blank\">GraphQL Playground</a>\n <a href=\"/api/health\">Health Check</a>\n </div>\n\n <div class=\"info\">\n <p>For the full dashboard experience, install the dashboard package:</p>\n <p><code>npm run dashboard:install</code></p>\n </div>\n </div>\n\n <script>\n async function checkGraphQL() {\n const indicator = document.getElementById('graphql-indicator');\n const text = document.getElementById('graphql-text');\n\n try {\n const res = await fetch('${graphqlEndpoint}', {\n method: 'POST',\n headers: { 'Content-Type': 'application/json' },\n body: JSON.stringify({ query: '{ __typename }' }),\n });\n\n if (res.ok) {\n indicator.className = 'indicator connected';\n text.textContent = 'Connected';\n text.className = 'connected';\n } else {\n throw new Error('Not OK');\n }\n } catch (e) {\n indicator.className = 'indicator disconnected';\n text.textContent = 'Disconnected';\n text.className = 'disconnected';\n }\n }\n\n // Initial check\n checkGraphQL();\n\n // Check every 5 seconds\n setInterval(checkGraphQL, 5000);\n </script>\n</body>\n</html>`;\n }\n\n /**\n * Stop the dashboard server\n */\n async stop(): Promise<void> {\n if (this.state.status === 'stopped') {\n logger.debug('Dashboard server already stopped');\n return;\n }\n\n this.state.status = 'stopping';\n this.emit('stopping');\n\n try {\n // Stop GraphQL monitoring\n this.stopGraphQLMonitoring();\n\n // Stop child process (Next.js server)\n if (this.childProcess) {\n await this.killChildProcess();\n this.childProcess = null;\n }\n\n // Stop HTTP server (fallback server)\n if (this.httpServer) {\n await this.closeHttpServer();\n this.httpServer = null;\n }\n\n this.state.status = 'stopped';\n this.state.port = undefined;\n this.state.startedAt = undefined;\n this.state.graphqlConnected = undefined;\n\n this.emit('stopped');\n\n // Resolve shutdown promise\n if (this.shutdownResolve) {\n this.shutdownResolve();\n this.shutdownResolve = null;\n this.shutdownPromise = null;\n }\n\n logger.info('Dashboard server stopped');\n } catch (error) {\n this.state.status = 'error';\n this.state.error = error instanceof Error ? error.message : String(error);\n this.emit('error', error);\n throw error;\n }\n }\n\n /**\n * Kill the child process\n */\n private async killChildProcess(): Promise<void> {\n if (!this.childProcess) return;\n\n return new Promise((resolve) => {\n const timeout = setTimeout(() => {\n // Force kill if graceful shutdown fails\n this.childProcess?.kill('SIGKILL');\n resolve();\n }, SHUTDOWN_TIMEOUT);\n\n this.childProcess?.on('exit', () => {\n clearTimeout(timeout);\n resolve();\n });\n\n // Send SIGTERM for graceful shutdown\n this.childProcess?.kill('SIGTERM');\n });\n }\n\n /**\n * Close the HTTP server\n */\n private async closeHttpServer(): Promise<void> {\n if (!this.httpServer) return;\n\n return new Promise((resolve, reject) => {\n this.httpServer!.close((err) => {\n if (err) {\n reject(err);\n } else {\n resolve();\n }\n });\n });\n }\n\n // ============================================================================\n // Build\n // ============================================================================\n\n /**\n * Build the dashboard for production\n */\n async build(): Promise<void> {\n const dashboardPath = this.config.dashboardPath!;\n\n if (!this.isDashboardInstalled()) {\n throw new Error('Dashboard not installed. Run npm run dashboard:install first.');\n }\n\n this.emit('build:started');\n\n try {\n // Set environment variables\n const env = {\n ...process.env,\n NEXT_PUBLIC_GRAPHQL_ENDPOINT: this.config.graphqlEndpoint,\n NODE_ENV: 'production',\n };\n\n // Run build command\n await execAsync('npm run build', {\n cwd: dashboardPath,\n env,\n });\n\n this.emit('build:completed');\n logger.info('Dashboard build completed');\n } catch (error) {\n this.emit('build:failed', error);\n throw error;\n }\n }\n\n // ============================================================================\n // GraphQL Connection Monitoring\n // ============================================================================\n\n /**\n * Start GraphQL connection monitoring\n */\n private startGraphQLMonitoring(): void {\n // Initial check\n this.checkGraphQLConnection().then((connected) => {\n this.state.graphqlConnected = connected;\n if (connected) {\n this.emit('graphql:connected');\n } else {\n this.emit('graphql:disconnected');\n }\n });\n\n // Periodic checks\n this.graphqlCheckInterval = setInterval(async () => {\n const wasConnected = this.state.graphqlConnected;\n const isConnected = await this.checkGraphQLConnection();\n\n if (wasConnected !== isConnected) {\n this.state.graphqlConnected = isConnected;\n if (isConnected) {\n this.emit('graphql:connected');\n logger.info('GraphQL connection established');\n } else {\n this.emit('graphql:disconnected');\n logger.warn('GraphQL connection lost');\n }\n }\n }, GRAPHQL_CHECK_INTERVAL);\n }\n\n /**\n * Stop GraphQL connection monitoring\n */\n private stopGraphQLMonitoring(): void {\n if (this.graphqlCheckInterval) {\n clearInterval(this.graphqlCheckInterval);\n this.graphqlCheckInterval = null;\n }\n }\n\n /**\n * Check if GraphQL connection is available\n */\n async checkGraphQLConnection(): Promise<boolean> {\n try {\n const controller = new AbortController();\n const timeout = setTimeout(() => controller.abort(), 3000);\n\n const response = await fetch(this.config.graphqlEndpoint, {\n method: 'POST',\n headers: { 'Content-Type': 'application/json' },\n body: JSON.stringify({ query: '{ __typename }' }),\n signal: controller.signal,\n });\n\n clearTimeout(timeout);\n return response.ok;\n } catch {\n return false;\n }\n }\n\n // ============================================================================\n // State & Events\n // ============================================================================\n\n /**\n * Get current server state\n */\n getState(): DashboardState {\n return { ...this.state };\n }\n\n /**\n * Wait for the server to shutdown\n */\n async waitForShutdown(): Promise<void> {\n if (this.shutdownPromise) {\n return this.shutdownPromise;\n }\n\n // If not running, resolve immediately\n if (this.state.status === 'stopped') {\n return Promise.resolve();\n }\n\n // Create new promise if somehow missing\n return new Promise((resolve) => {\n this.shutdownResolve = resolve;\n });\n }\n\n /**\n * Emit an event\n */\n private emit(event: DashboardEventType, data?: unknown): void {\n this.eventEmitter.emit(event, data);\n }\n\n /**\n * Subscribe to events\n */\n on(event: DashboardEventType, listener: (...args: unknown[]) => void): void {\n this.eventEmitter.on(event, listener);\n }\n\n /**\n * Unsubscribe from events\n */\n off(event: DashboardEventType, listener: (...args: unknown[]) => void): void {\n this.eventEmitter.off(event, listener);\n }\n\n /**\n * Subscribe to an event once\n */\n once(event: DashboardEventType, listener: (...args: unknown[]) => void): void {\n this.eventEmitter.once(event, listener);\n }\n}\n\n// ============================================================================\n// Factory Functions\n// ============================================================================\n\n/**\n * Create a new dashboard server instance\n */\nexport function createDashboardServer(config: DashboardConfig): DashboardServer {\n return new DashboardServer(config);\n}\n\n/**\n * Create dashboard configuration with defaults\n */\nexport function createDashboardConfig(\n projectRoot: string,\n overrides?: Partial<DashboardConfig>\n): DashboardConfig {\n return {\n projectRoot,\n port: DEFAULT_DASHBOARD_PORT,\n graphqlEndpoint: `http://localhost:${DEFAULT_GRAPHQL_PORT}/graphql`,\n mode: process.env.NODE_ENV === 'production' ? 'production' : 'development',\n ...overrides,\n };\n}\n"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* GraphQL Request Context
|
|
3
|
+
*
|
|
4
|
+
* Provides request-scoped context for GraphQL resolvers including
|
|
5
|
+
* database access, caching, service management, and authentication.
|
|
6
|
+
*
|
|
7
|
+
* @module graphql/context
|
|
8
|
+
*/
|
|
9
|
+
import type { KnowledgeGraphDatabase } from '../core/database.js';
|
|
10
|
+
import type { AdvancedCache } from '../caching/lru-cache.js';
|
|
11
|
+
import type { ServiceManager } from '../services/index.js';
|
|
12
|
+
/**
|
|
13
|
+
* Authentication result from API key validation
|
|
14
|
+
*/
|
|
15
|
+
export interface AuthResult {
|
|
16
|
+
/** Whether authentication succeeded */
|
|
17
|
+
authenticated: boolean;
|
|
18
|
+
/** User or service identifier */
|
|
19
|
+
userId?: string;
|
|
20
|
+
/** Permission scopes granted */
|
|
21
|
+
scopes: string[];
|
|
22
|
+
/** Error message if authentication failed */
|
|
23
|
+
error?: string;
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Request metadata extracted from HTTP request
|
|
27
|
+
*/
|
|
28
|
+
export interface RequestMeta {
|
|
29
|
+
/** Request ID for tracing */
|
|
30
|
+
requestId: string;
|
|
31
|
+
/** Request start timestamp */
|
|
32
|
+
startTime: number;
|
|
33
|
+
/** Client IP address */
|
|
34
|
+
clientIp: string;
|
|
35
|
+
/** User agent string */
|
|
36
|
+
userAgent: string;
|
|
37
|
+
/** Request path */
|
|
38
|
+
path: string;
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Request-scoped utilities
|
|
42
|
+
*/
|
|
43
|
+
export interface RequestUtils {
|
|
44
|
+
/**
|
|
45
|
+
* Generate a unique ID
|
|
46
|
+
*/
|
|
47
|
+
generateId(): string;
|
|
48
|
+
/**
|
|
49
|
+
* Log with request context
|
|
50
|
+
*/
|
|
51
|
+
log(level: 'debug' | 'info' | 'warn' | 'error', message: string, data?: Record<string, unknown>): void;
|
|
52
|
+
/**
|
|
53
|
+
* Get elapsed time since request start
|
|
54
|
+
*/
|
|
55
|
+
getElapsedMs(): number;
|
|
56
|
+
/**
|
|
57
|
+
* Create a cache key with request-scoped prefix
|
|
58
|
+
*/
|
|
59
|
+
cacheKey(key: string): string;
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* Service layer interfaces for resolvers
|
|
63
|
+
*/
|
|
64
|
+
export interface Services {
|
|
65
|
+
/** Knowledge graph database */
|
|
66
|
+
database: KnowledgeGraphDatabase;
|
|
67
|
+
/** Request-scoped cache */
|
|
68
|
+
cache: AdvancedCache<unknown>;
|
|
69
|
+
/** Service manager for background services */
|
|
70
|
+
serviceManager: ServiceManager;
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* GraphQL request context provided to all resolvers
|
|
74
|
+
*/
|
|
75
|
+
export interface GraphQLContext {
|
|
76
|
+
/** Authentication result */
|
|
77
|
+
auth: AuthResult;
|
|
78
|
+
/** Request metadata */
|
|
79
|
+
request: RequestMeta;
|
|
80
|
+
/** Service layer */
|
|
81
|
+
services: Services;
|
|
82
|
+
/** Request-scoped utilities */
|
|
83
|
+
utils: RequestUtils;
|
|
84
|
+
}
|
|
85
|
+
/**
|
|
86
|
+
* Configuration for context factory
|
|
87
|
+
*/
|
|
88
|
+
export interface ContextFactoryConfig {
|
|
89
|
+
/** Knowledge graph database instance */
|
|
90
|
+
database: KnowledgeGraphDatabase;
|
|
91
|
+
/** Cache instance */
|
|
92
|
+
cache: AdvancedCache<unknown>;
|
|
93
|
+
/** Service manager instance */
|
|
94
|
+
serviceManager: ServiceManager;
|
|
95
|
+
/** API key for authentication (optional) */
|
|
96
|
+
apiKey?: string;
|
|
97
|
+
/** Whether to require authentication */
|
|
98
|
+
requireAuth?: boolean;
|
|
99
|
+
/** Custom authentication function */
|
|
100
|
+
authenticate?: (token: string | undefined) => AuthResult | Promise<AuthResult>;
|
|
101
|
+
}
|
|
102
|
+
/**
|
|
103
|
+
* Create a context factory function for graphql-yoga
|
|
104
|
+
*
|
|
105
|
+
* @param config - Context factory configuration
|
|
106
|
+
* @returns Function that creates request-scoped context
|
|
107
|
+
*
|
|
108
|
+
* @example
|
|
109
|
+
* ```typescript
|
|
110
|
+
* const contextFactory = createContextFactory({
|
|
111
|
+
* database,
|
|
112
|
+
* cache,
|
|
113
|
+
* serviceManager,
|
|
114
|
+
* apiKey: process.env.API_KEY,
|
|
115
|
+
* requireAuth: true,
|
|
116
|
+
* });
|
|
117
|
+
*
|
|
118
|
+
* const yoga = createYoga({
|
|
119
|
+
* context: contextFactory,
|
|
120
|
+
* // ... other config
|
|
121
|
+
* });
|
|
122
|
+
* ```
|
|
123
|
+
*/
|
|
124
|
+
export declare function createContextFactory(config: ContextFactoryConfig): (request: {
|
|
125
|
+
request: Request;
|
|
126
|
+
}) => Promise<GraphQLContext>;
|
|
127
|
+
/**
|
|
128
|
+
* Check if context has a specific permission scope
|
|
129
|
+
*
|
|
130
|
+
* @param context - GraphQL context
|
|
131
|
+
* @param scope - Required permission scope
|
|
132
|
+
* @returns True if scope is present
|
|
133
|
+
*/
|
|
134
|
+
export declare function hasScope(context: GraphQLContext, scope: string): boolean;
|
|
135
|
+
/**
|
|
136
|
+
* Require authentication, throwing if not authenticated
|
|
137
|
+
*
|
|
138
|
+
* @param context - GraphQL context
|
|
139
|
+
* @throws Error if not authenticated
|
|
140
|
+
*/
|
|
141
|
+
export declare function requireAuth(context: GraphQLContext): void;
|
|
142
|
+
/**
|
|
143
|
+
* Require a specific permission scope, throwing if not present
|
|
144
|
+
*
|
|
145
|
+
* @param context - GraphQL context
|
|
146
|
+
* @param scope - Required permission scope
|
|
147
|
+
* @throws Error if scope is not present
|
|
148
|
+
*/
|
|
149
|
+
export declare function requireScope(context: GraphQLContext, scope: string): void;
|
|
150
|
+
/**
|
|
151
|
+
* Type guard to check if value is a valid GraphQL context
|
|
152
|
+
*/
|
|
153
|
+
export declare function isGraphQLContext(value: unknown): value is GraphQLContext;
|
|
154
|
+
//# sourceMappingURL=context.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/graphql/context.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,168 @@
|
|
|
1
|
+
import { createLogger } from "../utils/logger.js";
|
|
2
|
+
const logger = createLogger("graphql-context");
|
|
3
|
+
function createContextFactory(config) {
|
|
4
|
+
const {
|
|
5
|
+
database,
|
|
6
|
+
cache,
|
|
7
|
+
serviceManager,
|
|
8
|
+
apiKey,
|
|
9
|
+
requireAuth: requireAuth2 = false,
|
|
10
|
+
authenticate
|
|
11
|
+
} = config;
|
|
12
|
+
return async ({ request }) => {
|
|
13
|
+
const startTime = Date.now();
|
|
14
|
+
const requestId = generateRequestId();
|
|
15
|
+
const requestMeta = {
|
|
16
|
+
requestId,
|
|
17
|
+
startTime,
|
|
18
|
+
clientIp: extractClientIp(request),
|
|
19
|
+
userAgent: request.headers.get("user-agent") ?? "unknown",
|
|
20
|
+
path: new URL(request.url).pathname
|
|
21
|
+
};
|
|
22
|
+
const authHeader = request.headers.get("authorization");
|
|
23
|
+
const token = extractBearerToken(authHeader);
|
|
24
|
+
let auth;
|
|
25
|
+
if (authenticate) {
|
|
26
|
+
auth = await authenticate(token);
|
|
27
|
+
} else if (apiKey) {
|
|
28
|
+
auth = validateApiKey(token, apiKey);
|
|
29
|
+
} else {
|
|
30
|
+
auth = {
|
|
31
|
+
authenticated: true,
|
|
32
|
+
scopes: ["read", "write"]
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
if (requireAuth2 && !auth.authenticated) {
|
|
36
|
+
logger.warn("Unauthenticated request rejected", {
|
|
37
|
+
requestId,
|
|
38
|
+
path: requestMeta.path,
|
|
39
|
+
error: auth.error
|
|
40
|
+
});
|
|
41
|
+
}
|
|
42
|
+
const utils = {
|
|
43
|
+
generateId: () => generateRequestId(),
|
|
44
|
+
log: (level, message, data) => {
|
|
45
|
+
const logData = { ...data, requestId };
|
|
46
|
+
switch (level) {
|
|
47
|
+
case "debug":
|
|
48
|
+
logger.debug(message, logData);
|
|
49
|
+
break;
|
|
50
|
+
case "info":
|
|
51
|
+
logger.info(message, logData);
|
|
52
|
+
break;
|
|
53
|
+
case "warn":
|
|
54
|
+
logger.warn(message, logData);
|
|
55
|
+
break;
|
|
56
|
+
case "error":
|
|
57
|
+
logger.error(message, void 0, logData);
|
|
58
|
+
break;
|
|
59
|
+
}
|
|
60
|
+
},
|
|
61
|
+
getElapsedMs: () => Date.now() - startTime,
|
|
62
|
+
cacheKey: (key) => `req:${requestId}:${key}`
|
|
63
|
+
};
|
|
64
|
+
const services = {
|
|
65
|
+
database,
|
|
66
|
+
cache,
|
|
67
|
+
serviceManager
|
|
68
|
+
};
|
|
69
|
+
logger.debug("GraphQL context created", {
|
|
70
|
+
requestId,
|
|
71
|
+
authenticated: auth.authenticated,
|
|
72
|
+
scopes: auth.scopes
|
|
73
|
+
});
|
|
74
|
+
return {
|
|
75
|
+
auth,
|
|
76
|
+
request: requestMeta,
|
|
77
|
+
services,
|
|
78
|
+
utils
|
|
79
|
+
};
|
|
80
|
+
};
|
|
81
|
+
}
|
|
82
|
+
function extractBearerToken(header) {
|
|
83
|
+
if (!header) {
|
|
84
|
+
return void 0;
|
|
85
|
+
}
|
|
86
|
+
const parts = header.split(" ");
|
|
87
|
+
if (parts.length !== 2 || parts[0].toLowerCase() !== "bearer") {
|
|
88
|
+
return void 0;
|
|
89
|
+
}
|
|
90
|
+
return parts[1];
|
|
91
|
+
}
|
|
92
|
+
function validateApiKey(token, apiKey) {
|
|
93
|
+
if (!token) {
|
|
94
|
+
return {
|
|
95
|
+
authenticated: false,
|
|
96
|
+
scopes: [],
|
|
97
|
+
error: "No authentication token provided"
|
|
98
|
+
};
|
|
99
|
+
}
|
|
100
|
+
if (!constantTimeEqual(token, apiKey)) {
|
|
101
|
+
return {
|
|
102
|
+
authenticated: false,
|
|
103
|
+
scopes: [],
|
|
104
|
+
error: "Invalid API key"
|
|
105
|
+
};
|
|
106
|
+
}
|
|
107
|
+
return {
|
|
108
|
+
authenticated: true,
|
|
109
|
+
userId: "api-key-user",
|
|
110
|
+
scopes: ["read", "write", "admin"]
|
|
111
|
+
};
|
|
112
|
+
}
|
|
113
|
+
function constantTimeEqual(a, b) {
|
|
114
|
+
if (a.length !== b.length) {
|
|
115
|
+
return false;
|
|
116
|
+
}
|
|
117
|
+
let result = 0;
|
|
118
|
+
for (let i = 0; i < a.length; i++) {
|
|
119
|
+
result |= a.charCodeAt(i) ^ b.charCodeAt(i);
|
|
120
|
+
}
|
|
121
|
+
return result === 0;
|
|
122
|
+
}
|
|
123
|
+
function generateRequestId() {
|
|
124
|
+
const timestamp = Date.now().toString(36);
|
|
125
|
+
const random = Math.random().toString(36).substring(2, 10);
|
|
126
|
+
return `${timestamp}-${random}`;
|
|
127
|
+
}
|
|
128
|
+
function extractClientIp(request) {
|
|
129
|
+
const forwarded = request.headers.get("x-forwarded-for");
|
|
130
|
+
if (forwarded) {
|
|
131
|
+
const ips = forwarded.split(",").map((ip) => ip.trim());
|
|
132
|
+
return ips[0] || "unknown";
|
|
133
|
+
}
|
|
134
|
+
const realIp = request.headers.get("x-real-ip");
|
|
135
|
+
if (realIp) {
|
|
136
|
+
return realIp;
|
|
137
|
+
}
|
|
138
|
+
return "unknown";
|
|
139
|
+
}
|
|
140
|
+
function hasScope(context, scope) {
|
|
141
|
+
return context.auth.scopes.includes(scope);
|
|
142
|
+
}
|
|
143
|
+
function requireAuth(context) {
|
|
144
|
+
if (!context.auth.authenticated) {
|
|
145
|
+
throw new Error(context.auth.error ?? "Authentication required");
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
function requireScope(context, scope) {
|
|
149
|
+
requireAuth(context);
|
|
150
|
+
if (!hasScope(context, scope)) {
|
|
151
|
+
throw new Error(`Permission denied: requires '${scope}' scope`);
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
function isGraphQLContext(value) {
|
|
155
|
+
if (typeof value !== "object" || value === null) {
|
|
156
|
+
return false;
|
|
157
|
+
}
|
|
158
|
+
const obj = value;
|
|
159
|
+
return typeof obj.auth === "object" && typeof obj.request === "object" && typeof obj.services === "object" && typeof obj.utils === "object";
|
|
160
|
+
}
|
|
161
|
+
export {
|
|
162
|
+
createContextFactory,
|
|
163
|
+
hasScope,
|
|
164
|
+
isGraphQLContext,
|
|
165
|
+
requireAuth,
|
|
166
|
+
requireScope
|
|
167
|
+
};
|
|
168
|
+
//# sourceMappingURL=context.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context.js","sources":["../../src/graphql/context.ts"],"sourcesContent":["/**\n * GraphQL Request Context\n *\n * Provides request-scoped context for GraphQL resolvers including\n * database access, caching, service management, and authentication.\n *\n * @module graphql/context\n */\n\nimport type { IncomingMessage } from 'http';\nimport type { KnowledgeGraphDatabase } from '../core/database.js';\nimport type { AdvancedCache } from '../caching/lru-cache.js';\nimport type { ServiceManager } from '../services/index.js';\nimport { createLogger } from '../utils/index.js';\n\nconst logger = createLogger('graphql-context');\n\n// ============================================================================\n// Types\n// ============================================================================\n\n/**\n * Authentication result from API key validation\n */\nexport interface AuthResult {\n /** Whether authentication succeeded */\n authenticated: boolean;\n /** User or service identifier */\n userId?: string;\n /** Permission scopes granted */\n scopes: string[];\n /** Error message if authentication failed */\n error?: string;\n}\n\n/**\n * Request metadata extracted from HTTP request\n */\nexport interface RequestMeta {\n /** Request ID for tracing */\n requestId: string;\n /** Request start timestamp */\n startTime: number;\n /** Client IP address */\n clientIp: string;\n /** User agent string */\n userAgent: string;\n /** Request path */\n path: string;\n}\n\n/**\n * Request-scoped utilities\n */\nexport interface RequestUtils {\n /**\n * Generate a unique ID\n */\n generateId(): string;\n\n /**\n * Log with request context\n */\n log(level: 'debug' | 'info' | 'warn' | 'error', message: string, data?: Record<string, unknown>): void;\n\n /**\n * Get elapsed time since request start\n */\n getElapsedMs(): number;\n\n /**\n * Create a cache key with request-scoped prefix\n */\n cacheKey(key: string): string;\n}\n\n/**\n * Service layer interfaces for resolvers\n */\nexport interface Services {\n /** Knowledge graph database */\n database: KnowledgeGraphDatabase;\n /** Request-scoped cache */\n cache: AdvancedCache<unknown>;\n /** Service manager for background services */\n serviceManager: ServiceManager;\n}\n\n/**\n * GraphQL request context provided to all resolvers\n */\nexport interface GraphQLContext {\n /** Authentication result */\n auth: AuthResult;\n /** Request metadata */\n request: RequestMeta;\n /** Service layer */\n services: Services;\n /** Request-scoped utilities */\n utils: RequestUtils;\n}\n\n// ============================================================================\n// Context Factory Configuration\n// ============================================================================\n\n/**\n * Configuration for context factory\n */\nexport interface ContextFactoryConfig {\n /** Knowledge graph database instance */\n database: KnowledgeGraphDatabase;\n /** Cache instance */\n cache: AdvancedCache<unknown>;\n /** Service manager instance */\n serviceManager: ServiceManager;\n /** API key for authentication (optional) */\n apiKey?: string;\n /** Whether to require authentication */\n requireAuth?: boolean;\n /** Custom authentication function */\n authenticate?: (token: string | undefined) => AuthResult | Promise<AuthResult>;\n}\n\n// ============================================================================\n// Context Factory\n// ============================================================================\n\n/**\n * Create a context factory function for graphql-yoga\n *\n * @param config - Context factory configuration\n * @returns Function that creates request-scoped context\n *\n * @example\n * ```typescript\n * const contextFactory = createContextFactory({\n * database,\n * cache,\n * serviceManager,\n * apiKey: process.env.API_KEY,\n * requireAuth: true,\n * });\n *\n * const yoga = createYoga({\n * context: contextFactory,\n * // ... other config\n * });\n * ```\n */\nexport function createContextFactory(\n config: ContextFactoryConfig\n): (request: { request: Request }) => Promise<GraphQLContext> {\n const {\n database,\n cache,\n serviceManager,\n apiKey,\n requireAuth = false,\n authenticate,\n } = config;\n\n return async ({ request }: { request: Request }): Promise<GraphQLContext> => {\n const startTime = Date.now();\n const requestId = generateRequestId();\n\n // Extract request metadata\n const requestMeta: RequestMeta = {\n requestId,\n startTime,\n clientIp: extractClientIp(request),\n userAgent: request.headers.get('user-agent') ?? 'unknown',\n path: new URL(request.url).pathname,\n };\n\n // Authenticate request\n const authHeader = request.headers.get('authorization');\n const token = extractBearerToken(authHeader);\n\n let auth: AuthResult;\n\n if (authenticate) {\n // Use custom authentication function\n auth = await authenticate(token);\n } else if (apiKey) {\n // Use simple API key authentication\n auth = validateApiKey(token, apiKey);\n } else {\n // No authentication configured\n auth = {\n authenticated: true,\n scopes: ['read', 'write'],\n };\n }\n\n // Check if authentication is required\n if (requireAuth && !auth.authenticated) {\n logger.warn('Unauthenticated request rejected', {\n requestId,\n path: requestMeta.path,\n error: auth.error,\n });\n }\n\n // Create request-scoped utilities\n const utils: RequestUtils = {\n generateId: () => generateRequestId(),\n log: (level, message, data) => {\n const logData = { ...data, requestId };\n switch (level) {\n case 'debug':\n logger.debug(message, logData);\n break;\n case 'info':\n logger.info(message, logData);\n break;\n case 'warn':\n logger.warn(message, logData);\n break;\n case 'error':\n logger.error(message, undefined, logData);\n break;\n }\n },\n getElapsedMs: () => Date.now() - startTime,\n cacheKey: (key) => `req:${requestId}:${key}`,\n };\n\n // Create services reference\n const services: Services = {\n database,\n cache,\n serviceManager,\n };\n\n logger.debug('GraphQL context created', {\n requestId,\n authenticated: auth.authenticated,\n scopes: auth.scopes,\n });\n\n return {\n auth,\n request: requestMeta,\n services,\n utils,\n };\n };\n}\n\n// ============================================================================\n// Authentication Helpers\n// ============================================================================\n\n/**\n * Extract Bearer token from Authorization header\n */\nfunction extractBearerToken(header: string | null): string | undefined {\n if (!header) {\n return undefined;\n }\n\n const parts = header.split(' ');\n if (parts.length !== 2 || parts[0].toLowerCase() !== 'bearer') {\n return undefined;\n }\n\n return parts[1];\n}\n\n/**\n * Validate API key (simple comparison)\n */\nfunction validateApiKey(token: string | undefined, apiKey: string): AuthResult {\n if (!token) {\n return {\n authenticated: false,\n scopes: [],\n error: 'No authentication token provided',\n };\n }\n\n // Constant-time comparison to prevent timing attacks\n if (!constantTimeEqual(token, apiKey)) {\n return {\n authenticated: false,\n scopes: [],\n error: 'Invalid API key',\n };\n }\n\n return {\n authenticated: true,\n userId: 'api-key-user',\n scopes: ['read', 'write', 'admin'],\n };\n}\n\n/**\n * Constant-time string comparison to prevent timing attacks\n */\nfunction constantTimeEqual(a: string, b: string): boolean {\n if (a.length !== b.length) {\n return false;\n }\n\n let result = 0;\n for (let i = 0; i < a.length; i++) {\n result |= a.charCodeAt(i) ^ b.charCodeAt(i);\n }\n\n return result === 0;\n}\n\n// ============================================================================\n// Request Utilities\n// ============================================================================\n\n/**\n * Generate a unique request ID\n */\nfunction generateRequestId(): string {\n const timestamp = Date.now().toString(36);\n const random = Math.random().toString(36).substring(2, 10);\n return `${timestamp}-${random}`;\n}\n\n/**\n * Extract client IP from request headers\n */\nfunction extractClientIp(request: Request): string {\n // Check forwarded headers (reverse proxy)\n const forwarded = request.headers.get('x-forwarded-for');\n if (forwarded) {\n const ips = forwarded.split(',').map((ip) => ip.trim());\n return ips[0] || 'unknown';\n }\n\n const realIp = request.headers.get('x-real-ip');\n if (realIp) {\n return realIp;\n }\n\n return 'unknown';\n}\n\n// ============================================================================\n// Authorization Helpers\n// ============================================================================\n\n/**\n * Check if context has a specific permission scope\n *\n * @param context - GraphQL context\n * @param scope - Required permission scope\n * @returns True if scope is present\n */\nexport function hasScope(context: GraphQLContext, scope: string): boolean {\n return context.auth.scopes.includes(scope);\n}\n\n/**\n * Require authentication, throwing if not authenticated\n *\n * @param context - GraphQL context\n * @throws Error if not authenticated\n */\nexport function requireAuth(context: GraphQLContext): void {\n if (!context.auth.authenticated) {\n throw new Error(context.auth.error ?? 'Authentication required');\n }\n}\n\n/**\n * Require a specific permission scope, throwing if not present\n *\n * @param context - GraphQL context\n * @param scope - Required permission scope\n * @throws Error if scope is not present\n */\nexport function requireScope(context: GraphQLContext, scope: string): void {\n requireAuth(context);\n if (!hasScope(context, scope)) {\n throw new Error(`Permission denied: requires '${scope}' scope`);\n }\n}\n\n// ============================================================================\n// Type Guards\n// ============================================================================\n\n/**\n * Type guard to check if value is a valid GraphQL context\n */\nexport function isGraphQLContext(value: unknown): value is GraphQLContext {\n if (typeof value !== 'object' || value === null) {\n return false;\n }\n\n const obj = value as Record<string, unknown>;\n return (\n typeof obj.auth === 'object' &&\n typeof obj.request === 'object' &&\n typeof obj.services === 'object' &&\n typeof obj.utils === 'object'\n );\n}\n"],"names":["requireAuth"],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* GraphQL Module
|
|
3
|
+
*
|
|
4
|
+
* Exports GraphQL server setup, context, and custom scalars for the
|
|
5
|
+
* Knowledge Graph Agent API.
|
|
6
|
+
*
|
|
7
|
+
* @module graphql
|
|
8
|
+
*/
|
|
9
|
+
export { createGraphQLServer, type GraphQLServerConfig, type GraphQLServerInstance, type CorsConfig, type HealthCheckResponse, } from './server.js';
|
|
10
|
+
export { createContextFactory, hasScope, requireAuth, requireScope, isGraphQLContext, type GraphQLContext, type AuthResult, type RequestMeta, type RequestUtils, type Services, type ContextFactoryConfig, } from './context.js';
|
|
11
|
+
export { DateTimeScalar, JSONScalar, UUIDScalar, FilePathScalar, customScalars, scalarTypeDefs, } from './scalars.js';
|
|
12
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/graphql/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAMH,OAAO,EACL,mBAAmB,EACnB,KAAK,mBAAmB,EACxB,KAAK,qBAAqB,EAC1B,KAAK,UAAU,EACf,KAAK,mBAAmB,GACzB,MAAM,aAAa,CAAC;AAMrB,OAAO,EACL,oBAAoB,EACpB,QAAQ,EACR,WAAW,EACX,YAAY,EACZ,gBAAgB,EAChB,KAAK,cAAc,EACnB,KAAK,UAAU,EACf,KAAK,WAAW,EAChB,KAAK,YAAY,EACjB,KAAK,QAAQ,EACb,KAAK,oBAAoB,GAC1B,MAAM,cAAc,CAAC;AAMtB,OAAO,EACL,cAAc,EACd,UAAU,EACV,UAAU,EACV,cAAc,EACd,aAAa,EACb,cAAc,GACf,MAAM,cAAc,CAAC"}
|