@weavelogic/knowledge-graph-agent 0.3.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 +374 -427
- 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/audit/config.d.ts +150 -0
- package/dist/audit/config.d.ts.map +1 -0
- package/dist/audit/config.js +111 -0
- package/dist/audit/config.js.map +1 -0
- package/dist/audit/index.d.ts +38 -0
- package/dist/audit/index.d.ts.map +1 -0
- package/dist/audit/services/audit-chain.d.ts +276 -0
- package/dist/audit/services/audit-chain.d.ts.map +1 -0
- package/dist/audit/services/audit-chain.js +502 -0
- package/dist/audit/services/audit-chain.js.map +1 -0
- package/dist/audit/services/index.d.ts +11 -0
- package/dist/audit/services/index.d.ts.map +1 -0
- package/dist/audit/services/syndication.d.ts +334 -0
- package/dist/audit/services/syndication.d.ts.map +1 -0
- package/dist/audit/services/syndication.js +589 -0
- package/dist/audit/services/syndication.js.map +1 -0
- package/dist/audit/types.d.ts +453 -0
- package/dist/audit/types.d.ts.map +1 -0
- package/dist/cli/commands/audit.d.ts +21 -0
- package/dist/cli/commands/audit.d.ts.map +1 -0
- package/dist/cli/commands/audit.js +621 -0
- package/dist/cli/commands/audit.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/commands/vector.d.ts +14 -0
- package/dist/cli/commands/vector.d.ts.map +1 -0
- package/dist/cli/commands/vector.js +429 -0
- package/dist/cli/commands/vector.js.map +1 -0
- package/dist/cli/commands/workflow.d.ts +12 -0
- package/dist/cli/commands/workflow.d.ts.map +1 -0
- package/dist/cli/commands/workflow.js +471 -0
- package/dist/cli/commands/workflow.js.map +1 -0
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +54 -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/database/schemas/index.d.ts +85 -0
- package/dist/database/schemas/index.d.ts.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 +7 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +115 -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/mcp-server/tools/audit/checkpoint.d.ts +58 -0
- package/dist/mcp-server/tools/audit/checkpoint.d.ts.map +1 -0
- package/dist/mcp-server/tools/audit/checkpoint.js +73 -0
- package/dist/mcp-server/tools/audit/checkpoint.js.map +1 -0
- package/dist/mcp-server/tools/audit/index.d.ts +53 -0
- package/dist/mcp-server/tools/audit/index.d.ts.map +1 -0
- package/dist/mcp-server/tools/audit/index.js +12 -0
- package/dist/mcp-server/tools/audit/index.js.map +1 -0
- package/dist/mcp-server/tools/audit/query.d.ts +58 -0
- package/dist/mcp-server/tools/audit/query.d.ts.map +1 -0
- package/dist/mcp-server/tools/audit/query.js +125 -0
- package/dist/mcp-server/tools/audit/query.js.map +1 -0
- package/dist/mcp-server/tools/audit/sync.d.ts +58 -0
- package/dist/mcp-server/tools/audit/sync.d.ts.map +1 -0
- package/dist/mcp-server/tools/audit/sync.js +126 -0
- package/dist/mcp-server/tools/audit/sync.js.map +1 -0
- package/dist/mcp-server/tools/index.d.ts +3 -0
- package/dist/mcp-server/tools/index.d.ts.map +1 -1
- package/dist/mcp-server/tools/registry.js +90 -0
- package/dist/mcp-server/tools/registry.js.map +1 -1
- package/dist/mcp-server/tools/vector/index.d.ts +12 -0
- package/dist/mcp-server/tools/vector/index.d.ts.map +1 -0
- package/dist/mcp-server/tools/vector/index.js +12 -0
- package/dist/mcp-server/tools/vector/index.js.map +1 -0
- package/dist/mcp-server/tools/vector/search.d.ts +41 -0
- package/dist/mcp-server/tools/vector/search.d.ts.map +1 -0
- package/dist/mcp-server/tools/vector/search.js +224 -0
- package/dist/mcp-server/tools/vector/search.js.map +1 -0
- package/dist/mcp-server/tools/vector/trajectory.d.ts +39 -0
- package/dist/mcp-server/tools/vector/trajectory.d.ts.map +1 -0
- package/dist/mcp-server/tools/vector/trajectory.js +170 -0
- package/dist/mcp-server/tools/vector/trajectory.js.map +1 -0
- package/dist/mcp-server/tools/vector/upsert.d.ts +44 -0
- package/dist/mcp-server/tools/vector/upsert.d.ts.map +1 -0
- package/dist/mcp-server/tools/vector/upsert.js +175 -0
- package/dist/mcp-server/tools/vector/upsert.js.map +1 -0
- package/dist/mcp-server/tools/workflow/index.d.ts +29 -0
- package/dist/mcp-server/tools/workflow/index.d.ts.map +1 -0
- package/dist/mcp-server/tools/workflow/index.js +12 -0
- package/dist/mcp-server/tools/workflow/index.js.map +1 -0
- package/dist/mcp-server/tools/workflow/list.d.ts +41 -0
- package/dist/mcp-server/tools/workflow/list.d.ts.map +1 -0
- package/dist/mcp-server/tools/workflow/list.js +195 -0
- package/dist/mcp-server/tools/workflow/list.js.map +1 -0
- package/dist/mcp-server/tools/workflow/start.d.ts +40 -0
- package/dist/mcp-server/tools/workflow/start.d.ts.map +1 -0
- package/dist/mcp-server/tools/workflow/start.js +165 -0
- package/dist/mcp-server/tools/workflow/start.js.map +1 -0
- package/dist/mcp-server/tools/workflow/status.d.ts +38 -0
- package/dist/mcp-server/tools/workflow/status.d.ts.map +1 -0
- package/dist/mcp-server/tools/workflow/status.js +97 -0
- package/dist/mcp-server/tools/workflow/status.js.map +1 -0
- 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/dist/vector/config.d.ts +300 -0
- package/dist/vector/config.d.ts.map +1 -0
- package/dist/vector/config.js +124 -0
- package/dist/vector/config.js.map +1 -0
- package/dist/vector/index.d.ts +50 -0
- package/dist/vector/index.d.ts.map +1 -0
- package/dist/vector/services/index.d.ts +13 -0
- package/dist/vector/services/index.d.ts.map +1 -0
- package/dist/vector/services/trajectory-tracker.d.ts +405 -0
- package/dist/vector/services/trajectory-tracker.d.ts.map +1 -0
- package/dist/vector/services/trajectory-tracker.js +445 -0
- package/dist/vector/services/trajectory-tracker.js.map +1 -0
- package/dist/vector/services/vector-store.d.ts +339 -0
- package/dist/vector/services/vector-store.d.ts.map +1 -0
- package/dist/vector/services/vector-store.js +748 -0
- package/dist/vector/services/vector-store.js.map +1 -0
- package/dist/vector/types.d.ts +677 -0
- package/dist/vector/types.d.ts.map +1 -0
- package/dist/workflow/adapters/goap-adapter.d.ts +196 -0
- package/dist/workflow/adapters/goap-adapter.d.ts.map +1 -0
- package/dist/workflow/adapters/goap-adapter.js +706 -0
- package/dist/workflow/adapters/goap-adapter.js.map +1 -0
- package/dist/workflow/adapters/index.d.ts +10 -0
- package/dist/workflow/adapters/index.d.ts.map +1 -0
- package/dist/workflow/config.d.ts +135 -0
- package/dist/workflow/config.d.ts.map +1 -0
- package/dist/workflow/config.js +92 -0
- package/dist/workflow/config.js.map +1 -0
- package/dist/workflow/handlers/index.d.ts +9 -0
- package/dist/workflow/handlers/index.d.ts.map +1 -0
- package/dist/workflow/handlers/webhook-handlers.d.ts +397 -0
- package/dist/workflow/handlers/webhook-handlers.d.ts.map +1 -0
- package/dist/workflow/handlers/webhook-handlers.js +454 -0
- package/dist/workflow/handlers/webhook-handlers.js.map +1 -0
- package/dist/workflow/index.d.ts +42 -0
- package/dist/workflow/index.d.ts.map +1 -0
- package/dist/workflow/services/index.d.ts +9 -0
- package/dist/workflow/services/index.d.ts.map +1 -0
- package/dist/workflow/services/workflow-service.d.ts +318 -0
- package/dist/workflow/services/workflow-service.d.ts.map +1 -0
- package/dist/workflow/services/workflow-service.js +577 -0
- package/dist/workflow/services/workflow-service.js.map +1 -0
- package/dist/workflow/types.d.ts +470 -0
- package/dist/workflow/types.d.ts.map +1 -0
- package/dist/workflow/workflows/realtime-collab.d.ts +245 -0
- package/dist/workflow/workflows/realtime-collab.d.ts.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,85 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Database Schemas
|
|
3
|
+
*
|
|
4
|
+
* Exports SQL schema definitions for PostgreSQL integration.
|
|
5
|
+
* Provides utilities for loading and managing RuVector and Exochain schemas.
|
|
6
|
+
*
|
|
7
|
+
* @module database/schemas
|
|
8
|
+
*/
|
|
9
|
+
/**
|
|
10
|
+
* Schema names supported by the system
|
|
11
|
+
*/
|
|
12
|
+
export type SchemaName = 'ruvector' | 'exochain';
|
|
13
|
+
/**
|
|
14
|
+
* Load a SQL schema file from disk
|
|
15
|
+
*
|
|
16
|
+
* @param name - The schema name to load ('ruvector' or 'exochain')
|
|
17
|
+
* @returns The SQL schema content as a string
|
|
18
|
+
* @throws Error if the schema file cannot be read
|
|
19
|
+
*
|
|
20
|
+
* @example
|
|
21
|
+
* ```typescript
|
|
22
|
+
* const ruvectorSchema = loadSchema('ruvector');
|
|
23
|
+
* await pgClient.query(ruvectorSchema);
|
|
24
|
+
* ```
|
|
25
|
+
*/
|
|
26
|
+
export declare function loadSchema(name: SchemaName): string;
|
|
27
|
+
/**
|
|
28
|
+
* Get all available schemas
|
|
29
|
+
*
|
|
30
|
+
* @returns A record mapping schema names to their SQL content
|
|
31
|
+
*
|
|
32
|
+
* @example
|
|
33
|
+
* ```typescript
|
|
34
|
+
* const schemas = getAllSchemas();
|
|
35
|
+
* for (const [name, sql] of Object.entries(schemas)) {
|
|
36
|
+
* console.log(`Loading schema: ${name}`);
|
|
37
|
+
* await pgClient.query(sql);
|
|
38
|
+
* }
|
|
39
|
+
* ```
|
|
40
|
+
*/
|
|
41
|
+
export declare function getAllSchemas(): Record<SchemaName, string>;
|
|
42
|
+
/**
|
|
43
|
+
* Check if a schema name is valid
|
|
44
|
+
*
|
|
45
|
+
* @param name - The schema name to validate
|
|
46
|
+
* @returns True if the schema name is valid
|
|
47
|
+
*
|
|
48
|
+
* @example
|
|
49
|
+
* ```typescript
|
|
50
|
+
* if (isValidSchemaName('ruvector')) {
|
|
51
|
+
* const schema = loadSchema('ruvector');
|
|
52
|
+
* }
|
|
53
|
+
* ```
|
|
54
|
+
*/
|
|
55
|
+
export declare function isValidSchemaName(name: string): name is SchemaName;
|
|
56
|
+
/**
|
|
57
|
+
* Get the list of available schema names
|
|
58
|
+
*
|
|
59
|
+
* @returns Array of available schema names
|
|
60
|
+
*
|
|
61
|
+
* @example
|
|
62
|
+
* ```typescript
|
|
63
|
+
* const names = getSchemaNames(); // ['ruvector', 'exochain']
|
|
64
|
+
* ```
|
|
65
|
+
*/
|
|
66
|
+
export declare function getSchemaNames(): SchemaName[];
|
|
67
|
+
/**
|
|
68
|
+
* RuVector schema SQL (inline for bundled distribution)
|
|
69
|
+
*
|
|
70
|
+
* This constant provides a minimal inline version of the RuVector schema
|
|
71
|
+
* for use cases where file system access is not available (e.g., bundled builds).
|
|
72
|
+
*
|
|
73
|
+
* For the full schema with all functions and triggers, use loadSchema('ruvector').
|
|
74
|
+
*/
|
|
75
|
+
export declare const RUVECTOR_SCHEMA = "\n-- Inline RuVector schema for bundled distribution\nCREATE SCHEMA IF NOT EXISTS ruvector;\n\nCREATE TABLE IF NOT EXISTS ruvector.embeddings (\n id TEXT PRIMARY KEY,\n node_type TEXT NOT NULL,\n embedding REAL[] NOT NULL,\n dimensions INTEGER NOT NULL,\n metadata JSONB DEFAULT '{}',\n created_at TIMESTAMPTZ DEFAULT NOW(),\n updated_at TIMESTAMPTZ DEFAULT NOW()\n);\n\nCREATE INDEX IF NOT EXISTS idx_embeddings_node_type\nON ruvector.embeddings(node_type);\n\nCREATE INDEX IF NOT EXISTS idx_embeddings_metadata\nON ruvector.embeddings USING GIN (metadata);\n\nCREATE TABLE IF NOT EXISTS ruvector.trajectories (\n id TEXT PRIMARY KEY,\n agent_id TEXT NOT NULL,\n workflow_id TEXT,\n steps JSONB DEFAULT '[]',\n started_at TIMESTAMPTZ NOT NULL,\n completed_at TIMESTAMPTZ,\n success BOOLEAN DEFAULT FALSE,\n total_duration INTEGER DEFAULT 0,\n metadata JSONB DEFAULT '{}'\n);\n\nCREATE INDEX IF NOT EXISTS idx_trajectories_agent_id\nON ruvector.trajectories(agent_id);\n\nCREATE INDEX IF NOT EXISTS idx_trajectories_workflow_id\nON ruvector.trajectories(workflow_id);\n\nCREATE INDEX IF NOT EXISTS idx_trajectories_success\nON ruvector.trajectories(success);\n\nCREATE TABLE IF NOT EXISTS ruvector.patterns (\n id TEXT PRIMARY KEY,\n pattern_type TEXT NOT NULL,\n actions TEXT[] NOT NULL,\n frequency INTEGER DEFAULT 1,\n avg_duration REAL DEFAULT 0,\n success_rate REAL DEFAULT 0,\n confidence REAL DEFAULT 0,\n metadata JSONB DEFAULT '{}',\n created_at TIMESTAMPTZ DEFAULT NOW(),\n updated_at TIMESTAMPTZ DEFAULT NOW()\n);\n\nCREATE INDEX IF NOT EXISTS idx_patterns_type\nON ruvector.patterns(pattern_type);\n\nCREATE INDEX IF NOT EXISTS idx_patterns_confidence\nON ruvector.patterns(confidence);\n\nCREATE TABLE IF NOT EXISTS ruvector.learning_records (\n id SERIAL PRIMARY KEY,\n trajectory_id TEXT NOT NULL REFERENCES ruvector.trajectories(id),\n pattern_id TEXT NOT NULL REFERENCES ruvector.patterns(id),\n pattern_type TEXT NOT NULL,\n confidence REAL NOT NULL,\n learned_at TIMESTAMPTZ DEFAULT NOW(),\n applied_count INTEGER DEFAULT 0\n);\n\nCREATE INDEX IF NOT EXISTS idx_learning_records_pattern\nON ruvector.learning_records(pattern_id);\n\nCREATE TABLE IF NOT EXISTS ruvector.graph_nodes (\n id TEXT PRIMARY KEY,\n node_type TEXT NOT NULL,\n properties JSONB DEFAULT '{}',\n embedding_id TEXT REFERENCES ruvector.embeddings(id),\n created_at TIMESTAMPTZ DEFAULT NOW(),\n updated_at TIMESTAMPTZ DEFAULT NOW()\n);\n\nCREATE INDEX IF NOT EXISTS idx_graph_nodes_type\nON ruvector.graph_nodes(node_type);\n\nCREATE INDEX IF NOT EXISTS idx_graph_nodes_properties\nON ruvector.graph_nodes USING GIN (properties);\n\nCREATE TABLE IF NOT EXISTS ruvector.graph_edges (\n id TEXT PRIMARY KEY,\n source_id TEXT NOT NULL REFERENCES ruvector.graph_nodes(id),\n target_id TEXT NOT NULL REFERENCES ruvector.graph_nodes(id),\n edge_type TEXT NOT NULL,\n properties JSONB DEFAULT '{}',\n created_at TIMESTAMPTZ DEFAULT NOW()\n);\n\nCREATE INDEX IF NOT EXISTS idx_graph_edges_source\nON ruvector.graph_edges(source_id);\n\nCREATE INDEX IF NOT EXISTS idx_graph_edges_target\nON ruvector.graph_edges(target_id);\n\nCREATE INDEX IF NOT EXISTS idx_graph_edges_type\nON ruvector.graph_edges(edge_type);\n";
|
|
76
|
+
/**
|
|
77
|
+
* Exochain schema SQL (inline for bundled distribution)
|
|
78
|
+
*
|
|
79
|
+
* This constant provides a minimal inline version of the Exochain schema
|
|
80
|
+
* for use cases where file system access is not available (e.g., bundled builds).
|
|
81
|
+
*
|
|
82
|
+
* For the full schema with all functions and triggers, use loadSchema('exochain').
|
|
83
|
+
*/
|
|
84
|
+
export declare const EXOCHAIN_SCHEMA = "\n-- Inline Exochain schema for bundled distribution\nCREATE SCHEMA IF NOT EXISTS exochain;\n\nCREATE TABLE IF NOT EXISTS exochain.events (\n id TEXT PRIMARY KEY,\n parents TEXT[] DEFAULT '{}',\n hlc_physical_ms BIGINT NOT NULL,\n hlc_logical INTEGER NOT NULL,\n author TEXT NOT NULL,\n payload_type TEXT NOT NULL,\n payload JSONB NOT NULL,\n signature TEXT NOT NULL,\n created_at TIMESTAMPTZ DEFAULT NOW()\n);\n\nCREATE INDEX IF NOT EXISTS idx_events_author\nON exochain.events(author);\n\nCREATE INDEX IF NOT EXISTS idx_events_payload_type\nON exochain.events(payload_type);\n\nCREATE INDEX IF NOT EXISTS idx_events_hlc\nON exochain.events(hlc_physical_ms, hlc_logical);\n\nCREATE INDEX IF NOT EXISTS idx_events_parents\nON exochain.events USING GIN (parents);\n\nCREATE TABLE IF NOT EXISTS exochain.checkpoints (\n height INTEGER PRIMARY KEY,\n event_root TEXT NOT NULL,\n state_root TEXT NOT NULL,\n timestamp TIMESTAMPTZ NOT NULL,\n created_at TIMESTAMPTZ DEFAULT NOW()\n);\n\nCREATE TABLE IF NOT EXISTS exochain.checkpoint_signatures (\n id SERIAL PRIMARY KEY,\n checkpoint_height INTEGER NOT NULL REFERENCES exochain.checkpoints(height),\n validator_did TEXT NOT NULL,\n signature TEXT NOT NULL,\n signed_at TIMESTAMPTZ DEFAULT NOW(),\n UNIQUE(checkpoint_height, validator_did)\n);\n\nCREATE INDEX IF NOT EXISTS idx_checkpoint_signatures_height\nON exochain.checkpoint_signatures(checkpoint_height);\n\nCREATE TABLE IF NOT EXISTS exochain.tips (\n event_id TEXT PRIMARY KEY REFERENCES exochain.events(id),\n added_at TIMESTAMPTZ DEFAULT NOW()\n);\n\nCREATE TABLE IF NOT EXISTS exochain.peers (\n id TEXT PRIMARY KEY,\n endpoint TEXT NOT NULL UNIQUE,\n did TEXT,\n status TEXT DEFAULT 'disconnected',\n last_sync_time TIMESTAMPTZ,\n last_checkpoint_height INTEGER,\n events_received INTEGER DEFAULT 0,\n events_sent INTEGER DEFAULT 0,\n errors INTEGER DEFAULT 0,\n created_at TIMESTAMPTZ DEFAULT NOW(),\n updated_at TIMESTAMPTZ DEFAULT NOW()\n);\n\nCREATE INDEX IF NOT EXISTS idx_peers_status\nON exochain.peers(status);\n\nCREATE TABLE IF NOT EXISTS exochain.sync_log (\n id SERIAL PRIMARY KEY,\n peer_id TEXT NOT NULL,\n direction TEXT NOT NULL,\n events_transferred INTEGER DEFAULT 0,\n duration_ms INTEGER,\n success BOOLEAN DEFAULT FALSE,\n error_message TEXT,\n started_at TIMESTAMPTZ NOT NULL,\n completed_at TIMESTAMPTZ\n);\n\nCREATE INDEX IF NOT EXISTS idx_sync_log_peer\nON exochain.sync_log(peer_id);\n\nCREATE INDEX IF NOT EXISTS idx_sync_log_started_at\nON exochain.sync_log(started_at);\n";
|
|
85
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/database/schemas/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAYH;;GAEG;AACH,MAAM,MAAM,UAAU,GAAG,UAAU,GAAG,UAAU,CAAC;AAUjD;;;;;;;;;;;;GAYG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,UAAU,GAAG,MAAM,CAenD;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,aAAa,IAAI,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,CAK1D;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,IAAI,UAAU,CAElE;AAED;;;;;;;;;GASG;AACH,wBAAgB,cAAc,IAAI,UAAU,EAAE,CAE7C;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,eAAe,0qGAyG3B,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,eAAe,2/EAuF3B,CAAC"}
|
|
@@ -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"}
|