@digital-science-dsl/dimensions-analytics-mcp 0.5.3
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/CHANGELOG.md +61 -0
- package/README.md +152 -0
- package/bin/dimensions-analytics-mcp-http.js +2 -0
- package/bin/dimensions-analytics-mcp.js +2 -0
- package/dist/client/auth/config-loaders.d.ts +22 -0
- package/dist/client/auth/config-loaders.d.ts.map +1 -0
- package/dist/client/auth/config-loaders.js +68 -0
- package/dist/client/auth/config-loaders.js.map +1 -0
- package/dist/client/auth/decorators/index.d.ts +7 -0
- package/dist/client/auth/decorators/index.d.ts.map +1 -0
- package/dist/client/auth/decorators/index.js +6 -0
- package/dist/client/auth/decorators/index.js.map +1 -0
- package/dist/client/auth/decorators/with-caching.d.ts +81 -0
- package/dist/client/auth/decorators/with-caching.d.ts.map +1 -0
- package/dist/client/auth/decorators/with-caching.js +168 -0
- package/dist/client/auth/decorators/with-caching.js.map +1 -0
- package/dist/client/auth/factory.d.ts +13 -0
- package/dist/client/auth/factory.d.ts.map +1 -0
- package/dist/client/auth/factory.js +29 -0
- package/dist/client/auth/factory.js.map +1 -0
- package/dist/client/auth/index.d.ts +7 -0
- package/dist/client/auth/index.d.ts.map +1 -0
- package/dist/client/auth/index.js +6 -0
- package/dist/client/auth/index.js.map +1 -0
- package/dist/client/auth/jwt-utils.d.ts +17 -0
- package/dist/client/auth/jwt-utils.d.ts.map +1 -0
- package/dist/client/auth/jwt-utils.js +33 -0
- package/dist/client/auth/jwt-utils.js.map +1 -0
- package/dist/client/auth/node.d.ts +16 -0
- package/dist/client/auth/node.d.ts.map +1 -0
- package/dist/client/auth/node.js +15 -0
- package/dist/client/auth/node.js.map +1 -0
- package/dist/client/auth/providers/index.d.ts +2 -0
- package/dist/client/auth/providers/index.d.ts.map +1 -0
- package/dist/client/auth/providers/index.js +2 -0
- package/dist/client/auth/providers/index.js.map +1 -0
- package/dist/client/auth/providers/jwt-auth-provider.d.ts +70 -0
- package/dist/client/auth/providers/jwt-auth-provider.d.ts.map +1 -0
- package/dist/client/auth/providers/jwt-auth-provider.js +134 -0
- package/dist/client/auth/providers/jwt-auth-provider.js.map +1 -0
- package/dist/client/auth/schemas.d.ts +19 -0
- package/dist/client/auth/schemas.d.ts.map +1 -0
- package/dist/client/auth/schemas.js +23 -0
- package/dist/client/auth/schemas.js.map +1 -0
- package/dist/client/auth/types.d.ts +25 -0
- package/dist/client/auth/types.d.ts.map +1 -0
- package/dist/client/auth/types.js +9 -0
- package/dist/client/auth/types.js.map +1 -0
- package/dist/client/command.d.ts +44 -0
- package/dist/client/command.d.ts.map +1 -0
- package/dist/client/command.js +23 -0
- package/dist/client/command.js.map +1 -0
- package/dist/client/config/index.d.ts +11 -0
- package/dist/client/config/index.d.ts.map +1 -0
- package/dist/client/config/index.js +8 -0
- package/dist/client/config/index.js.map +1 -0
- package/dist/client/config/loader.d.ts +27 -0
- package/dist/client/config/loader.d.ts.map +1 -0
- package/dist/client/config/loader.js +128 -0
- package/dist/client/config/loader.js.map +1 -0
- package/dist/client/config/node.d.ts +18 -0
- package/dist/client/config/node.d.ts.map +1 -0
- package/dist/client/config/node.js +17 -0
- package/dist/client/config/node.js.map +1 -0
- package/dist/client/config/schemas.d.ts +23 -0
- package/dist/client/config/schemas.d.ts.map +1 -0
- package/dist/client/config/schemas.js +24 -0
- package/dist/client/config/schemas.js.map +1 -0
- package/dist/client/config/types.d.ts +37 -0
- package/dist/client/config/types.d.ts.map +1 -0
- package/dist/client/config/types.js +6 -0
- package/dist/client/config/types.js.map +1 -0
- package/dist/client/config/unified-loader.d.ts +41 -0
- package/dist/client/config/unified-loader.d.ts.map +1 -0
- package/dist/client/config/unified-loader.js +86 -0
- package/dist/client/config/unified-loader.js.map +1 -0
- package/dist/client/config.d.ts +43 -0
- package/dist/client/config.d.ts.map +1 -0
- package/dist/client/config.js +56 -0
- package/dist/client/config.js.map +1 -0
- package/dist/client/deployment-config.d.ts +36 -0
- package/dist/client/deployment-config.d.ts.map +1 -0
- package/dist/client/deployment-config.js +79 -0
- package/dist/client/deployment-config.js.map +1 -0
- package/dist/client/errors.d.ts +180 -0
- package/dist/client/errors.d.ts.map +1 -0
- package/dist/client/errors.js +253 -0
- package/dist/client/errors.js.map +1 -0
- package/dist/client/http-client.d.ts +215 -0
- package/dist/client/http-client.d.ts.map +1 -0
- package/dist/client/http-client.js +419 -0
- package/dist/client/http-client.js.map +1 -0
- package/dist/client/index.d.ts +28 -0
- package/dist/client/index.d.ts.map +1 -0
- package/dist/client/index.js +18 -0
- package/dist/client/index.js.map +1 -0
- package/dist/client/internal-dsl-client.d.ts +30 -0
- package/dist/client/internal-dsl-client.d.ts.map +1 -0
- package/dist/client/internal-dsl-client.js +101 -0
- package/dist/client/internal-dsl-client.js.map +1 -0
- package/dist/client/rate-limiter.d.ts +79 -0
- package/dist/client/rate-limiter.d.ts.map +1 -0
- package/dist/client/rate-limiter.js +118 -0
- package/dist/client/rate-limiter.js.map +1 -0
- package/dist/client/resolve-api-key-user.d.ts +24 -0
- package/dist/client/resolve-api-key-user.d.ts.map +1 -0
- package/dist/client/resolve-api-key-user.js +80 -0
- package/dist/client/resolve-api-key-user.js.map +1 -0
- package/dist/client/types.d.ts +44 -0
- package/dist/client/types.d.ts.map +1 -0
- package/dist/client/types.js +10 -0
- package/dist/client/types.js.map +1 -0
- package/dist/dsl/client.d.ts +330 -0
- package/dist/dsl/client.d.ts.map +1 -0
- package/dist/dsl/client.js +433 -0
- package/dist/dsl/client.js.map +1 -0
- package/dist/dsl/commands/apply-filters.d.ts +15 -0
- package/dist/dsl/commands/apply-filters.d.ts.map +1 -0
- package/dist/dsl/commands/apply-filters.js +29 -0
- package/dist/dsl/commands/apply-filters.js.map +1 -0
- package/dist/dsl/commands/facet/index.d.ts +6 -0
- package/dist/dsl/commands/facet/index.d.ts.map +1 -0
- package/dist/dsl/commands/facet/index.js +6 -0
- package/dist/dsl/commands/facet/index.js.map +1 -0
- package/dist/dsl/commands/facet/schemas.d.ts +71 -0
- package/dist/dsl/commands/facet/schemas.d.ts.map +1 -0
- package/dist/dsl/commands/facet/schemas.js +84 -0
- package/dist/dsl/commands/facet/schemas.js.map +1 -0
- package/dist/dsl/commands/functions/ClassifyCommand.d.ts +96 -0
- package/dist/dsl/commands/functions/ClassifyCommand.d.ts.map +1 -0
- package/dist/dsl/commands/functions/ClassifyCommand.js +95 -0
- package/dist/dsl/commands/functions/ClassifyCommand.js.map +1 -0
- package/dist/dsl/commands/functions/ExtractAffiliationsCommand.d.ts +86 -0
- package/dist/dsl/commands/functions/ExtractAffiliationsCommand.d.ts.map +1 -0
- package/dist/dsl/commands/functions/ExtractAffiliationsCommand.js +131 -0
- package/dist/dsl/commands/functions/ExtractAffiliationsCommand.js.map +1 -0
- package/dist/dsl/commands/functions/ExtractConceptsCommand.d.ts +73 -0
- package/dist/dsl/commands/functions/ExtractConceptsCommand.d.ts.map +1 -0
- package/dist/dsl/commands/functions/ExtractConceptsCommand.js +110 -0
- package/dist/dsl/commands/functions/ExtractConceptsCommand.js.map +1 -0
- package/dist/dsl/commands/functions/ExtractGrantsCommand.d.ts +66 -0
- package/dist/dsl/commands/functions/ExtractGrantsCommand.d.ts.map +1 -0
- package/dist/dsl/commands/functions/ExtractGrantsCommand.js +87 -0
- package/dist/dsl/commands/functions/ExtractGrantsCommand.js.map +1 -0
- package/dist/dsl/commands/functions/index.d.ts +10 -0
- package/dist/dsl/commands/functions/index.d.ts.map +1 -0
- package/dist/dsl/commands/functions/index.js +10 -0
- package/dist/dsl/commands/functions/index.js.map +1 -0
- package/dist/dsl/commands/index.d.ts +8 -0
- package/dist/dsl/commands/index.d.ts.map +1 -0
- package/dist/dsl/commands/index.js +7 -0
- package/dist/dsl/commands/index.js.map +1 -0
- package/dist/dsl/commands/validate-input.d.ts +18 -0
- package/dist/dsl/commands/validate-input.d.ts.map +1 -0
- package/dist/dsl/commands/validate-input.js +27 -0
- package/dist/dsl/commands/validate-input.js.map +1 -0
- package/dist/dsl/create-client.d.ts +32 -0
- package/dist/dsl/create-client.d.ts.map +1 -0
- package/dist/dsl/create-client.js +58 -0
- package/dist/dsl/create-client.js.map +1 -0
- package/dist/dsl/fluent-query-builder.d.ts +439 -0
- package/dist/dsl/fluent-query-builder.d.ts.map +1 -0
- package/dist/dsl/fluent-query-builder.js +534 -0
- package/dist/dsl/fluent-query-builder.js.map +1 -0
- package/dist/dsl/index.d.ts +32 -0
- package/dist/dsl/index.d.ts.map +1 -0
- package/dist/dsl/index.js +31 -0
- package/dist/dsl/index.js.map +1 -0
- package/dist/dsl/pagination.d.ts +82 -0
- package/dist/dsl/pagination.d.ts.map +1 -0
- package/dist/dsl/pagination.js +135 -0
- package/dist/dsl/pagination.js.map +1 -0
- package/dist/dsl/query-builder.d.ts +456 -0
- package/dist/dsl/query-builder.d.ts.map +1 -0
- package/dist/dsl/query-builder.js +994 -0
- package/dist/dsl/query-builder.js.map +1 -0
- package/dist/dsl/response-parser.d.ts +111 -0
- package/dist/dsl/response-parser.d.ts.map +1 -0
- package/dist/dsl/response-parser.js +210 -0
- package/dist/dsl/response-parser.js.map +1 -0
- package/dist/dsl/schema/cache.d.ts +52 -0
- package/dist/dsl/schema/cache.d.ts.map +1 -0
- package/dist/dsl/schema/cache.js +97 -0
- package/dist/dsl/schema/cache.js.map +1 -0
- package/dist/dsl/schema/extract.d.ts +18 -0
- package/dist/dsl/schema/extract.d.ts.map +1 -0
- package/dist/dsl/schema/extract.js +41 -0
- package/dist/dsl/schema/extract.js.map +1 -0
- package/dist/dsl/schema/index.d.ts +13 -0
- package/dist/dsl/schema/index.d.ts.map +1 -0
- package/dist/dsl/schema/index.js +12 -0
- package/dist/dsl/schema/index.js.map +1 -0
- package/dist/dsl/schema/load.d.ts +41 -0
- package/dist/dsl/schema/load.d.ts.map +1 -0
- package/dist/dsl/schema/load.js +119 -0
- package/dist/dsl/schema/load.js.map +1 -0
- package/dist/dsl/schema/store.d.ts +137 -0
- package/dist/dsl/schema/store.d.ts.map +1 -0
- package/dist/dsl/schema/store.js +204 -0
- package/dist/dsl/schema/store.js.map +1 -0
- package/dist/dsl/schema/structured-entities.d.ts +21 -0
- package/dist/dsl/schema/structured-entities.d.ts.map +1 -0
- package/dist/dsl/schema/structured-entities.js +39 -0
- package/dist/dsl/schema/structured-entities.js.map +1 -0
- package/dist/dsl/schema/summary.d.ts +51 -0
- package/dist/dsl/schema/summary.d.ts.map +1 -0
- package/dist/dsl/schema/summary.js +61 -0
- package/dist/dsl/schema/summary.js.map +1 -0
- package/dist/dsl/schema/types.d.ts +36 -0
- package/dist/dsl/schema/types.d.ts.map +1 -0
- package/dist/dsl/schema/types.js +6 -0
- package/dist/dsl/schema/types.js.map +1 -0
- package/dist/dsl/schema/validation.d.ts +21 -0
- package/dist/dsl/schema/validation.d.ts.map +1 -0
- package/dist/dsl/schema/validation.js +44 -0
- package/dist/dsl/schema/validation.js.map +1 -0
- package/dist/dsl/types/buckets.d.ts +18 -0
- package/dist/dsl/types/buckets.d.ts.map +1 -0
- package/dist/dsl/types/buckets.js +6 -0
- package/dist/dsl/types/buckets.js.map +1 -0
- package/dist/dsl/types/common.d.ts +91 -0
- package/dist/dsl/types/common.d.ts.map +1 -0
- package/dist/dsl/types/common.js +6 -0
- package/dist/dsl/types/common.js.map +1 -0
- package/dist/dsl/types/entities.d.ts +35 -0
- package/dist/dsl/types/entities.d.ts.map +1 -0
- package/dist/dsl/types/entities.js +11 -0
- package/dist/dsl/types/entities.js.map +1 -0
- package/dist/dsl/types/index.d.ts +12 -0
- package/dist/dsl/types/index.d.ts.map +1 -0
- package/dist/dsl/types/index.js +7 -0
- package/dist/dsl/types/index.js.map +1 -0
- package/dist/dsl/types/return-clauses.d.ts +107 -0
- package/dist/dsl/types/return-clauses.d.ts.map +1 -0
- package/dist/dsl/types/return-clauses.js +22 -0
- package/dist/dsl/types/return-clauses.js.map +1 -0
- package/dist/dsl/types/special-functions.d.ts +175 -0
- package/dist/dsl/types/special-functions.d.ts.map +1 -0
- package/dist/dsl/types/special-functions.js +25 -0
- package/dist/dsl/types/special-functions.js.map +1 -0
- package/dist/dsl/types/vocabulary.d.ts +21 -0
- package/dist/dsl/types/vocabulary.d.ts.map +1 -0
- package/dist/dsl/types/vocabulary.js +44 -0
- package/dist/dsl/types/vocabulary.js.map +1 -0
- package/dist/dsl/usage-policy.d.ts +87 -0
- package/dist/dsl/usage-policy.d.ts.map +1 -0
- package/dist/dsl/usage-policy.js +133 -0
- package/dist/dsl/usage-policy.js.map +1 -0
- package/dist/dsl/utils/escape.d.ts +24 -0
- package/dist/dsl/utils/escape.d.ts.map +1 -0
- package/dist/dsl/utils/escape.js +124 -0
- package/dist/dsl/utils/escape.js.map +1 -0
- package/dist/dsl/utils/sanitize.d.ts +13 -0
- package/dist/dsl/utils/sanitize.d.ts.map +1 -0
- package/dist/dsl/utils/sanitize.js +19 -0
- package/dist/dsl/utils/sanitize.js.map +1 -0
- package/dist/dsl/utils/string-utils.d.ts +35 -0
- package/dist/dsl/utils/string-utils.d.ts.map +1 -0
- package/dist/dsl/utils/string-utils.js +145 -0
- package/dist/dsl/utils/string-utils.js.map +1 -0
- package/dist/dsl/utils/validate-field-name.d.ts +11 -0
- package/dist/dsl/utils/validate-field-name.d.ts.map +1 -0
- package/dist/dsl/utils/validate-field-name.js +18 -0
- package/dist/dsl/utils/validate-field-name.js.map +1 -0
- package/dist/examples/dsl-examples.d.ts +11 -0
- package/dist/examples/dsl-examples.d.ts.map +1 -0
- package/dist/examples/dsl-examples.js +49 -0
- package/dist/examples/dsl-examples.js.map +1 -0
- package/dist/examples/usage-scenarios.d.ts +22 -0
- package/dist/examples/usage-scenarios.d.ts.map +1 -0
- package/dist/examples/usage-scenarios.js +173 -0
- package/dist/examples/usage-scenarios.js.map +1 -0
- package/dist/funder-org-names.d.ts +12 -0
- package/dist/funder-org-names.d.ts.map +1 -0
- package/dist/funder-org-names.js +30 -0
- package/dist/funder-org-names.js.map +1 -0
- package/dist/http-main.d.ts +7 -0
- package/dist/http-main.d.ts.map +1 -0
- package/dist/http-main.js +36 -0
- package/dist/http-main.js.map +1 -0
- package/dist/http.d.ts +29 -0
- package/dist/http.d.ts.map +1 -0
- package/dist/http.js +173 -0
- package/dist/http.js.map +1 -0
- package/dist/index.d.ts +9 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +7 -0
- package/dist/index.js.map +1 -0
- package/dist/kwq/build-query.d.ts +26 -0
- package/dist/kwq/build-query.d.ts.map +1 -0
- package/dist/kwq/build-query.js +37 -0
- package/dist/kwq/build-query.js.map +1 -0
- package/dist/kwq/concept-groups.d.ts +49 -0
- package/dist/kwq/concept-groups.d.ts.map +1 -0
- package/dist/kwq/concept-groups.js +55 -0
- package/dist/kwq/concept-groups.js.map +1 -0
- package/dist/kwq/dsl-assembler.d.ts +28 -0
- package/dist/kwq/dsl-assembler.d.ts.map +1 -0
- package/dist/kwq/dsl-assembler.js +124 -0
- package/dist/kwq/dsl-assembler.js.map +1 -0
- package/dist/kwq/ensemble.d.ts +38 -0
- package/dist/kwq/ensemble.d.ts.map +1 -0
- package/dist/kwq/ensemble.js +107 -0
- package/dist/kwq/ensemble.js.map +1 -0
- package/dist/kwq/index.d.ts +16 -0
- package/dist/kwq/index.d.ts.map +1 -0
- package/dist/kwq/index.js +14 -0
- package/dist/kwq/index.js.map +1 -0
- package/dist/kwq/types.d.ts +120 -0
- package/dist/kwq/types.d.ts.map +1 -0
- package/dist/kwq/types.js +11 -0
- package/dist/kwq/types.js.map +1 -0
- package/dist/lambda.d.ts +10 -0
- package/dist/lambda.d.ts.map +1 -0
- package/dist/lambda.js +4 -0
- package/dist/lambda.js.map +1 -0
- package/dist/main.d.ts +8 -0
- package/dist/main.d.ts.map +1 -0
- package/dist/main.js +33 -0
- package/dist/main.js.map +1 -0
- package/dist/mcp/batch-fetch.d.ts +89 -0
- package/dist/mcp/batch-fetch.d.ts.map +1 -0
- package/dist/mcp/batch-fetch.js +178 -0
- package/dist/mcp/batch-fetch.js.map +1 -0
- package/dist/mcp/examples/dsl-examples.d.ts +21 -0
- package/dist/mcp/examples/dsl-examples.d.ts.map +1 -0
- package/dist/mcp/examples/dsl-examples.js +61 -0
- package/dist/mcp/examples/dsl-examples.js.map +1 -0
- package/dist/mcp/examples/usage-scenarios.d.ts +20 -0
- package/dist/mcp/examples/usage-scenarios.d.ts.map +1 -0
- package/dist/mcp/examples/usage-scenarios.js +169 -0
- package/dist/mcp/examples/usage-scenarios.js.map +1 -0
- package/dist/mcp/export-format.d.ts +43 -0
- package/dist/mcp/export-format.d.ts.map +1 -0
- package/dist/mcp/export-format.js +92 -0
- package/dist/mcp/export-format.js.map +1 -0
- package/dist/mcp/funder-org-names.d.ts +12 -0
- package/dist/mcp/funder-org-names.d.ts.map +1 -0
- package/dist/mcp/funder-org-names.js +30 -0
- package/dist/mcp/funder-org-names.js.map +1 -0
- package/dist/mcp/http-server.d.ts +20 -0
- package/dist/mcp/http-server.d.ts.map +1 -0
- package/dist/mcp/http-server.js +118 -0
- package/dist/mcp/http-server.js.map +1 -0
- package/dist/mcp/middleware/field-aliases.d.ts +97 -0
- package/dist/mcp/middleware/field-aliases.d.ts.map +1 -0
- package/dist/mcp/middleware/field-aliases.js +208 -0
- package/dist/mcp/middleware/field-aliases.js.map +1 -0
- package/dist/mcp/resources/schema.d.ts +13 -0
- package/dist/mcp/resources/schema.d.ts.map +1 -0
- package/dist/mcp/resources/schema.js +262 -0
- package/dist/mcp/resources/schema.js.map +1 -0
- package/dist/mcp/schema/context.d.ts +10 -0
- package/dist/mcp/schema/context.d.ts.map +1 -0
- package/dist/mcp/schema/context.js +6 -0
- package/dist/mcp/schema/context.js.map +1 -0
- package/dist/mcp/schema/index.d.ts +8 -0
- package/dist/mcp/schema/index.d.ts.map +1 -0
- package/dist/mcp/schema/index.js +6 -0
- package/dist/mcp/schema/index.js.map +1 -0
- package/dist/mcp/server.d.ts +56 -0
- package/dist/mcp/server.d.ts.map +1 -0
- package/dist/mcp/server.js +168 -0
- package/dist/mcp/server.js.map +1 -0
- package/dist/mcp/shared-schema.d.ts +13 -0
- package/dist/mcp/shared-schema.d.ts.map +1 -0
- package/dist/mcp/shared-schema.js +28 -0
- package/dist/mcp/shared-schema.js.map +1 -0
- package/dist/mcp/tools/analytics-filters.d.ts +18 -0
- package/dist/mcp/tools/analytics-filters.d.ts.map +1 -0
- package/dist/mcp/tools/analytics-filters.js +35 -0
- package/dist/mcp/tools/analytics-filters.js.map +1 -0
- package/dist/mcp/tools/analytics.d.ts +16 -0
- package/dist/mcp/tools/analytics.d.ts.map +1 -0
- package/dist/mcp/tools/analytics.js +381 -0
- package/dist/mcp/tools/analytics.js.map +1 -0
- package/dist/mcp/tools/concept-profile.d.ts +14 -0
- package/dist/mcp/tools/concept-profile.d.ts.map +1 -0
- package/dist/mcp/tools/concept-profile.js +130 -0
- package/dist/mcp/tools/concept-profile.js.map +1 -0
- package/dist/mcp/tools/dataset-profile.d.ts +15 -0
- package/dist/mcp/tools/dataset-profile.d.ts.map +1 -0
- package/dist/mcp/tools/dataset-profile.js +194 -0
- package/dist/mcp/tools/dataset-profile.js.map +1 -0
- package/dist/mcp/tools/fetch-search-pages.d.ts +15 -0
- package/dist/mcp/tools/fetch-search-pages.d.ts.map +1 -0
- package/dist/mcp/tools/fetch-search-pages.js +237 -0
- package/dist/mcp/tools/fetch-search-pages.js.map +1 -0
- package/dist/mcp/tools/functions.d.ts +14 -0
- package/dist/mcp/tools/functions.d.ts.map +1 -0
- package/dist/mcp/tools/functions.js +87 -0
- package/dist/mcp/tools/functions.js.map +1 -0
- package/dist/mcp/tools/impact-chain.d.ts +15 -0
- package/dist/mcp/tools/impact-chain.d.ts.map +1 -0
- package/dist/mcp/tools/impact-chain.js +96 -0
- package/dist/mcp/tools/impact-chain.js.map +1 -0
- package/dist/mcp/tools/kwq.d.ts +19 -0
- package/dist/mcp/tools/kwq.d.ts.map +1 -0
- package/dist/mcp/tools/kwq.js +156 -0
- package/dist/mcp/tools/kwq.js.map +1 -0
- package/dist/mcp/tools/lookup.d.ts +14 -0
- package/dist/mcp/tools/lookup.d.ts.map +1 -0
- package/dist/mcp/tools/lookup.js +146 -0
- package/dist/mcp/tools/lookup.js.map +1 -0
- package/dist/mcp/tools/policy-profile.d.ts +15 -0
- package/dist/mcp/tools/policy-profile.d.ts.map +1 -0
- package/dist/mcp/tools/policy-profile.js +174 -0
- package/dist/mcp/tools/policy-profile.js.map +1 -0
- package/dist/mcp/tools/profile.d.ts +14 -0
- package/dist/mcp/tools/profile.d.ts.map +1 -0
- package/dist/mcp/tools/profile.js +349 -0
- package/dist/mcp/tools/profile.js.map +1 -0
- package/dist/mcp/tools/query.d.ts +16 -0
- package/dist/mcp/tools/query.d.ts.map +1 -0
- package/dist/mcp/tools/query.js +75 -0
- package/dist/mcp/tools/query.js.map +1 -0
- package/dist/mcp/tools/schema.d.ts +23 -0
- package/dist/mcp/tools/schema.d.ts.map +1 -0
- package/dist/mcp/tools/schema.js +124 -0
- package/dist/mcp/tools/schema.js.map +1 -0
- package/dist/mcp/tools/search-entity-metadata.d.ts +18 -0
- package/dist/mcp/tools/search-entity-metadata.d.ts.map +1 -0
- package/dist/mcp/tools/search-entity-metadata.js +221 -0
- package/dist/mcp/tools/search-entity-metadata.js.map +1 -0
- package/dist/mcp/tools/search-input.d.ts +58 -0
- package/dist/mcp/tools/search-input.d.ts.map +1 -0
- package/dist/mcp/tools/search-input.js +76 -0
- package/dist/mcp/tools/search-input.js.map +1 -0
- package/dist/mcp/tools/search.d.ts +24 -0
- package/dist/mcp/tools/search.d.ts.map +1 -0
- package/dist/mcp/tools/search.js +115 -0
- package/dist/mcp/tools/search.js.map +1 -0
- package/dist/mcp/utils.d.ts +82 -0
- package/dist/mcp/utils.d.ts.map +1 -0
- package/dist/mcp/utils.js +126 -0
- package/dist/mcp/utils.js.map +1 -0
- package/dist/middleware/field-aliases.d.ts +97 -0
- package/dist/middleware/field-aliases.d.ts.map +1 -0
- package/dist/middleware/field-aliases.js +208 -0
- package/dist/middleware/field-aliases.js.map +1 -0
- package/dist/resources/schema.d.ts +13 -0
- package/dist/resources/schema.d.ts.map +1 -0
- package/dist/resources/schema.js +204 -0
- package/dist/resources/schema.js.map +1 -0
- package/dist/schema/context.d.ts +10 -0
- package/dist/schema/context.d.ts.map +1 -0
- package/dist/schema/context.js +6 -0
- package/dist/schema/context.js.map +1 -0
- package/dist/schema/index.d.ts +9 -0
- package/dist/schema/index.d.ts.map +1 -0
- package/dist/schema/index.js +6 -0
- package/dist/schema/index.js.map +1 -0
- package/dist/schema/load.d.ts +43 -0
- package/dist/schema/load.d.ts.map +1 -0
- package/dist/schema/load.js +139 -0
- package/dist/schema/load.js.map +1 -0
- package/dist/schema/store.d.ts +112 -0
- package/dist/schema/store.d.ts.map +1 -0
- package/dist/schema/store.js +173 -0
- package/dist/schema/store.js.map +1 -0
- package/dist/schema/structured-entities.d.ts +21 -0
- package/dist/schema/structured-entities.d.ts.map +1 -0
- package/dist/schema/structured-entities.js +39 -0
- package/dist/schema/structured-entities.js.map +1 -0
- package/dist/schema/types.d.ts +36 -0
- package/dist/schema/types.d.ts.map +1 -0
- package/dist/schema/types.js +6 -0
- package/dist/schema/types.js.map +1 -0
- package/dist/server.d.ts +57 -0
- package/dist/server.d.ts.map +1 -0
- package/dist/server.js +144 -0
- package/dist/server.js.map +1 -0
- package/dist/telemetry.d.ts +172 -0
- package/dist/telemetry.d.ts.map +1 -0
- package/dist/telemetry.js +233 -0
- package/dist/telemetry.js.map +1 -0
- package/dist/tools/analytics-filters.d.ts +18 -0
- package/dist/tools/analytics-filters.d.ts.map +1 -0
- package/dist/tools/analytics-filters.js +35 -0
- package/dist/tools/analytics-filters.js.map +1 -0
- package/dist/tools/analytics.d.ts +16 -0
- package/dist/tools/analytics.d.ts.map +1 -0
- package/dist/tools/analytics.js +381 -0
- package/dist/tools/analytics.js.map +1 -0
- package/dist/tools/concept-profile.d.ts +14 -0
- package/dist/tools/concept-profile.d.ts.map +1 -0
- package/dist/tools/concept-profile.js +130 -0
- package/dist/tools/concept-profile.js.map +1 -0
- package/dist/tools/dataset-profile.d.ts +15 -0
- package/dist/tools/dataset-profile.d.ts.map +1 -0
- package/dist/tools/dataset-profile.js +194 -0
- package/dist/tools/dataset-profile.js.map +1 -0
- package/dist/tools/functions.d.ts +14 -0
- package/dist/tools/functions.d.ts.map +1 -0
- package/dist/tools/functions.js +294 -0
- package/dist/tools/functions.js.map +1 -0
- package/dist/tools/impact-chain.d.ts +15 -0
- package/dist/tools/impact-chain.d.ts.map +1 -0
- package/dist/tools/impact-chain.js +96 -0
- package/dist/tools/impact-chain.js.map +1 -0
- package/dist/tools/kwq.d.ts +19 -0
- package/dist/tools/kwq.d.ts.map +1 -0
- package/dist/tools/kwq.js +156 -0
- package/dist/tools/kwq.js.map +1 -0
- package/dist/tools/lookup.d.ts +14 -0
- package/dist/tools/lookup.d.ts.map +1 -0
- package/dist/tools/lookup.js +213 -0
- package/dist/tools/lookup.js.map +1 -0
- package/dist/tools/policy-profile.d.ts +15 -0
- package/dist/tools/policy-profile.d.ts.map +1 -0
- package/dist/tools/policy-profile.js +174 -0
- package/dist/tools/policy-profile.js.map +1 -0
- package/dist/tools/profile.d.ts +14 -0
- package/dist/tools/profile.d.ts.map +1 -0
- package/dist/tools/profile.js +349 -0
- package/dist/tools/profile.js.map +1 -0
- package/dist/tools/query.d.ts +16 -0
- package/dist/tools/query.d.ts.map +1 -0
- package/dist/tools/query.js +53 -0
- package/dist/tools/query.js.map +1 -0
- package/dist/tools/schema.d.ts +23 -0
- package/dist/tools/schema.d.ts.map +1 -0
- package/dist/tools/schema.js +124 -0
- package/dist/tools/schema.js.map +1 -0
- package/dist/tools/search-entity-metadata.d.ts +18 -0
- package/dist/tools/search-entity-metadata.d.ts.map +1 -0
- package/dist/tools/search-entity-metadata.js +221 -0
- package/dist/tools/search-entity-metadata.js.map +1 -0
- package/dist/tools/search.d.ts +23 -0
- package/dist/tools/search.d.ts.map +1 -0
- package/dist/tools/search.js +110 -0
- package/dist/tools/search.js.map +1 -0
- package/dist/tools/solr-fields.d.ts +39 -0
- package/dist/tools/solr-fields.d.ts.map +1 -0
- package/dist/tools/solr-fields.js +40 -0
- package/dist/tools/solr-fields.js.map +1 -0
- package/dist/utils.d.ts +70 -0
- package/dist/utils.d.ts.map +1 -0
- package/dist/utils.js +104 -0
- package/dist/utils.js.map +1 -0
- package/package.json +41 -0
- package/src/client/auth/config-loaders.ts +81 -0
- package/src/client/auth/decorators/index.ts +7 -0
- package/src/client/auth/decorators/with-caching.ts +237 -0
- package/src/client/auth/factory.ts +34 -0
- package/src/client/auth/index.ts +6 -0
- package/src/client/auth/jwt-utils.ts +36 -0
- package/src/client/auth/node.ts +16 -0
- package/src/client/auth/providers/index.ts +1 -0
- package/src/client/auth/providers/jwt-auth-provider.ts +153 -0
- package/src/client/auth/schemas.ts +25 -0
- package/src/client/auth/types.ts +30 -0
- package/src/client/command.ts +54 -0
- package/src/client/config/index.ts +15 -0
- package/src/client/config/loader.ts +155 -0
- package/src/client/config/node.ts +22 -0
- package/src/client/config/schemas.ts +28 -0
- package/src/client/config/types.ts +39 -0
- package/src/client/config/unified-loader.ts +118 -0
- package/src/client/config.ts +69 -0
- package/src/client/deployment-config.ts +98 -0
- package/src/client/errors.ts +295 -0
- package/src/client/http-client.ts +577 -0
- package/src/client/index.ts +68 -0
- package/src/client/internal-dsl-client.ts +128 -0
- package/src/client/rate-limiter.ts +139 -0
- package/src/client/resolve-api-key-user.ts +99 -0
- package/src/client/types.ts +44 -0
- package/src/dsl/client.ts +538 -0
- package/src/dsl/commands/apply-filters.ts +35 -0
- package/src/dsl/commands/facet/index.ts +12 -0
- package/src/dsl/commands/facet/schemas.ts +101 -0
- package/src/dsl/commands/functions/ClassifyCommand.ts +129 -0
- package/src/dsl/commands/functions/ExtractAffiliationsCommand.ts +163 -0
- package/src/dsl/commands/functions/ExtractConceptsCommand.ts +141 -0
- package/src/dsl/commands/functions/ExtractGrantsCommand.ts +112 -0
- package/src/dsl/commands/functions/index.ts +31 -0
- package/src/dsl/commands/index.ts +29 -0
- package/src/dsl/commands/validate-input.ts +29 -0
- package/src/dsl/create-client.ts +80 -0
- package/src/dsl/fluent-query-builder.ts +684 -0
- package/src/dsl/index.ts +206 -0
- package/src/dsl/pagination.ts +202 -0
- package/src/dsl/query-builder.ts +1120 -0
- package/src/dsl/response-parser.ts +299 -0
- package/src/dsl/schema/cache.ts +124 -0
- package/src/dsl/schema/extract.ts +44 -0
- package/src/dsl/schema/index.ts +50 -0
- package/src/dsl/schema/load.ts +160 -0
- package/src/dsl/schema/store.ts +253 -0
- package/src/dsl/schema/structured-entities.ts +44 -0
- package/src/dsl/schema/summary.ts +94 -0
- package/src/dsl/schema/types.ts +40 -0
- package/src/dsl/schema/validation.ts +56 -0
- package/src/dsl/types/buckets.ts +22 -0
- package/src/dsl/types/common.ts +99 -0
- package/src/dsl/types/entities.ts +43 -0
- package/src/dsl/types/index.ts +63 -0
- package/src/dsl/types/return-clauses.ts +147 -0
- package/src/dsl/types/special-functions.ts +220 -0
- package/src/dsl/types/vocabulary.ts +82 -0
- package/src/dsl/usage-policy.ts +219 -0
- package/src/dsl/utils/escape.ts +123 -0
- package/src/dsl/utils/sanitize.ts +21 -0
- package/src/dsl/utils/string-utils.ts +147 -0
- package/src/dsl/utils/validate-field-name.ts +19 -0
- package/src/http-main.ts +41 -0
- package/src/index.ts +14 -0
- package/src/main.ts +40 -0
- package/src/mcp/batch-fetch.ts +255 -0
- package/src/mcp/examples/dsl-examples.ts +66 -0
- package/src/mcp/examples/usage-scenarios.ts +185 -0
- package/src/mcp/export-format.ts +113 -0
- package/src/mcp/funder-org-names.ts +30 -0
- package/src/mcp/http-server.ts +148 -0
- package/src/mcp/middleware/field-aliases.ts +274 -0
- package/src/mcp/resources/schema.ts +364 -0
- package/src/mcp/schema/context.ts +11 -0
- package/src/mcp/schema/index.ts +38 -0
- package/src/mcp/server.ts +247 -0
- package/src/mcp/shared-schema.ts +34 -0
- package/src/mcp/tools/analytics-filters.ts +46 -0
- package/src/mcp/tools/analytics.ts +453 -0
- package/src/mcp/tools/fetch-search-pages.ts +329 -0
- package/src/mcp/tools/functions.ts +105 -0
- package/src/mcp/tools/lookup.ts +182 -0
- package/src/mcp/tools/query.ts +91 -0
- package/src/mcp/tools/schema.ts +147 -0
- package/src/mcp/tools/search-entity-metadata.ts +253 -0
- package/src/mcp/tools/search-input.ts +87 -0
- package/src/mcp/tools/search.ts +168 -0
- package/src/mcp/utils.ts +199 -0
- package/test/client/auth/config-loaders.test.ts +92 -0
- package/test/client/auth/decorators/with-caching.test.ts +482 -0
- package/test/client/auth/factory.test.ts +68 -0
- package/test/client/auth/providers/jwt-auth-provider.test.ts +398 -0
- package/test/client/auth/types.test.ts +18 -0
- package/test/client/command.test.ts +163 -0
- package/test/client/config/loader.test.ts +377 -0
- package/test/client/config/unified-loader.test.ts +136 -0
- package/test/client/deployment-config.test.ts +69 -0
- package/test/client/errors/index.test.ts +408 -0
- package/test/client/helpers/mock-fetch.ts +42 -0
- package/test/client/http-client.test.ts +1148 -0
- package/test/client/integration/auth-providers.integration.test.ts +186 -0
- package/test/client/internal-dsl-client.test.ts +76 -0
- package/test/client/rate-limiter.test.ts +204 -0
- package/test/client/resolve-api-key-user.test.ts +87 -0
- package/test/dsl/client.special-functions.test.ts +387 -0
- package/test/dsl/client.test.ts +457 -0
- package/test/dsl/commands/apply-filters.test.ts +147 -0
- package/test/dsl/commands/functions/ClassifyCommand.test.ts +170 -0
- package/test/dsl/commands/functions/ExtractAffiliationsCommand.test.ts +306 -0
- package/test/dsl/commands/functions/ExtractConceptsCommand.test.ts +136 -0
- package/test/dsl/commands/functions/ExtractGrantsCommand.test.ts +202 -0
- package/test/dsl/commands/search/filters.test.ts +42 -0
- package/test/dsl/fluent-query-builder.test.ts +865 -0
- package/test/dsl/integration/client.integration.test.ts +294 -0
- package/test/dsl/integration/facet-api.integration.test.ts +276 -0
- package/test/dsl/integration/field-existence.integration.test.ts +148 -0
- package/test/dsl/integration/fluent-api-docs-examples.integration.test.ts +988 -0
- package/test/dsl/integration/fluent-api.integration.test.ts +615 -0
- package/test/dsl/integration/search-helpers.ts +27 -0
- package/test/dsl/integration/special-functions.integration.test.ts +224 -0
- package/test/dsl/integration/test-config.ts +52 -0
- package/test/dsl/pagination.test.ts +86 -0
- package/test/dsl/query-builder.test.ts +1775 -0
- package/test/dsl/response-parser.test.ts +520 -0
- package/test/dsl/schema/cache.test.ts +53 -0
- package/test/dsl/schema/load.test.ts +165 -0
- package/test/dsl/schema/summary.test.ts +61 -0
- package/test/dsl/schema/validation.test.ts +46 -0
- package/test/dsl/time-series.test.ts +135 -0
- package/test/dsl/unnest.test.ts +151 -0
- package/test/dsl/usage-policy.test.ts +100 -0
- package/test/dsl/utils/escape.property.test.ts +109 -0
- package/test/dsl/utils/escape.test.ts +140 -0
- package/test/dsl/utils/validate-field-name.property.test.ts +99 -0
- package/test/dsl/utils/validate-field-name.test.ts +55 -0
- package/test/examples/dsl-examples.test.ts +29 -0
- package/test/examples/usage-scenarios.test.ts +90 -0
- package/test/fixtures/describe-schema.json +4000 -0
- package/test/funder-org-names.test.ts +20 -0
- package/test/helpers/schema-fixture.ts +18 -0
- package/test/helpers/tool-test-harness.ts +114 -0
- package/test/integration/assertions.ts +263 -0
- package/test/integration/env.ts +108 -0
- package/test/integration/harness.ts +307 -0
- package/test/integration/hosted-client.ts +56 -0
- package/test/integration/hosted-mocks.ts +81 -0
- package/test/integration/hosted-run.ts +86 -0
- package/test/integration/hosted.e2e.test.ts +101 -0
- package/test/integration/reporter.ts +100 -0
- package/test/integration/run.ts +74 -0
- package/test/integration/suites/analytics.integration.ts +72 -0
- package/test/integration/suites/functions.integration.ts +37 -0
- package/test/integration/suites/hosted-smoke.integration.ts +38 -0
- package/test/integration/suites/index.ts +22 -0
- package/test/integration/suites/lookup.integration.ts +57 -0
- package/test/integration/suites/query.integration.ts +49 -0
- package/test/integration/suites/resources.integration.ts +68 -0
- package/test/integration/suites/search.integration.ts +80 -0
- package/test/integration/types.ts +92 -0
- package/test/integration/verify-usage-scenarios.ts +162 -0
- package/test/mcp/export-format.test.ts +67 -0
- package/test/mcp/http-server.test.ts +80 -0
- package/test/middleware/field-aliases.test.ts +287 -0
- package/test/resources/schema.test.ts +28 -0
- package/test/schema/describe-contract.test.ts +24 -0
- package/test/schema/store.test.ts +45 -0
- package/test/server.test.ts +170 -0
- package/test/tools/analytics-filters.test.ts +35 -0
- package/test/tools/analytics.test.ts +419 -0
- package/test/tools/fetch-search-pages.test.ts +200 -0
- package/test/tools/functions.test.ts +153 -0
- package/test/tools/lookup.test.ts +296 -0
- package/test/tools/query.test.ts +100 -0
- package/test/tools/schema.test.ts +37 -0
- package/test/tools/search.test.ts +415 -0
- package/test/utils.test.ts +45 -0
- package/tsconfig.json +9 -0
- package/tsconfig.tsbuildinfo +1 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"deployment-config.js","sourceRoot":"","sources":["../../src/client/deployment-config.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,180 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Base error class for all Dimensions API errors.
|
|
3
|
+
* Provides consistent error structure with optional status codes and JSON serialization.
|
|
4
|
+
*/
|
|
5
|
+
export declare class DimensionsError extends Error {
|
|
6
|
+
/** HTTP status code associated with this error, if applicable */
|
|
7
|
+
readonly statusCode?: number;
|
|
8
|
+
/**
|
|
9
|
+
* Creates a new DimensionsError.
|
|
10
|
+
* @param message - Human-readable error description
|
|
11
|
+
* @param statusCode - Optional HTTP status code
|
|
12
|
+
*/
|
|
13
|
+
constructor(message: string, statusCode?: number);
|
|
14
|
+
/**
|
|
15
|
+
* Serializes the error to a plain object for logging or API responses.
|
|
16
|
+
* @returns Plain object representation of the error
|
|
17
|
+
*/
|
|
18
|
+
toJSON(): Record<string, unknown>;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Thrown when authentication fails (invalid API key, expired token, etc.).
|
|
22
|
+
* HTTP Status: 401 Unauthorized
|
|
23
|
+
*/
|
|
24
|
+
export declare class AuthenticationError extends DimensionsError {
|
|
25
|
+
/**
|
|
26
|
+
* Creates a new AuthenticationError.
|
|
27
|
+
* @param message - Error description (defaults to "Authentication failed")
|
|
28
|
+
*/
|
|
29
|
+
constructor(message?: string);
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Client-side rate-limit state surfaced on 429 errors.
|
|
33
|
+
* Dimensions does not send rate-limit response headers; this reflects local throttling.
|
|
34
|
+
*/
|
|
35
|
+
export interface ClientRateLimitInfo {
|
|
36
|
+
/** Requests remaining in the client sliding window */
|
|
37
|
+
readonly remaining: number;
|
|
38
|
+
/** Suggested wait before retrying, in milliseconds */
|
|
39
|
+
readonly retryAfterMs: number;
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Thrown when the API rate limit is exceeded.
|
|
43
|
+
* HTTP Status: 429 Too Many Requests
|
|
44
|
+
*/
|
|
45
|
+
export declare class RateLimitError extends DimensionsError {
|
|
46
|
+
/** Suggested seconds to wait before retrying (from client-side throttling) */
|
|
47
|
+
readonly retryAfter?: number;
|
|
48
|
+
/** Client-side rate-limit state when a rate limiter is configured */
|
|
49
|
+
readonly clientRateLimit?: ClientRateLimitInfo;
|
|
50
|
+
/**
|
|
51
|
+
* Creates a new RateLimitError.
|
|
52
|
+
* @param message - Error description (defaults to "Rate limit exceeded")
|
|
53
|
+
* @param retryAfterSeconds - Suggested seconds to wait before retrying
|
|
54
|
+
* @param clientRateLimit - Optional client-side rate-limit snapshot
|
|
55
|
+
*/
|
|
56
|
+
constructor(message?: string, retryAfterSeconds?: number, clientRateLimit?: ClientRateLimitInfo);
|
|
57
|
+
toJSON(): Record<string, unknown>;
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* Thrown when input validation fails (invalid parameters, missing required fields, etc.).
|
|
61
|
+
* HTTP Status: 400 Bad Request
|
|
62
|
+
*/
|
|
63
|
+
export declare class ValidationError extends DimensionsError {
|
|
64
|
+
/** Additional details about what failed validation */
|
|
65
|
+
readonly details?: Record<string, unknown>;
|
|
66
|
+
/**
|
|
67
|
+
* Creates a new ValidationError.
|
|
68
|
+
* @param message - Error description
|
|
69
|
+
* @param details - Optional object with validation failure details
|
|
70
|
+
*/
|
|
71
|
+
constructor(message: string, details?: Record<string, unknown>);
|
|
72
|
+
toJSON(): Record<string, unknown>;
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* Thrown when the DSL query syntax is invalid.
|
|
76
|
+
* HTTP Status: 400 Bad Request
|
|
77
|
+
*/
|
|
78
|
+
export declare class QuerySyntaxError extends DimensionsError {
|
|
79
|
+
/**
|
|
80
|
+
* Creates a new QuerySyntaxError.
|
|
81
|
+
* @param message - Description of the syntax error
|
|
82
|
+
*/
|
|
83
|
+
constructor(message: string);
|
|
84
|
+
}
|
|
85
|
+
/**
|
|
86
|
+
* Thrown when a network-level error occurs (connection refused, DNS failure, etc.).
|
|
87
|
+
* No HTTP status code as the request never completed.
|
|
88
|
+
*/
|
|
89
|
+
export declare class NetworkError extends DimensionsError {
|
|
90
|
+
/**
|
|
91
|
+
* Creates a new NetworkError.
|
|
92
|
+
* @param message - Error description (defaults to "Network error")
|
|
93
|
+
*/
|
|
94
|
+
constructor(message?: string);
|
|
95
|
+
}
|
|
96
|
+
/**
|
|
97
|
+
* Thrown when a request times out before receiving a response.
|
|
98
|
+
* No HTTP status code as the request never completed.
|
|
99
|
+
*/
|
|
100
|
+
export declare class TimeoutError extends DimensionsError {
|
|
101
|
+
/**
|
|
102
|
+
* Creates a new TimeoutError.
|
|
103
|
+
* @param message - Error description (defaults to "Request timeout")
|
|
104
|
+
*/
|
|
105
|
+
constructor(message?: string);
|
|
106
|
+
}
|
|
107
|
+
/**
|
|
108
|
+
* Thrown when the server returns a 5xx error.
|
|
109
|
+
* HTTP Status: 500-599 (configurable, defaults to 500)
|
|
110
|
+
*/
|
|
111
|
+
export declare class ServerError extends DimensionsError {
|
|
112
|
+
/**
|
|
113
|
+
* Creates a new ServerError.
|
|
114
|
+
* @param message - Error description (defaults to "Server error")
|
|
115
|
+
* @param statusCode - HTTP status code in range 500-599 (defaults to 500)
|
|
116
|
+
* @throws {TypeError} If statusCode is not an integer in range 500-599
|
|
117
|
+
*/
|
|
118
|
+
constructor(message?: string, statusCode?: number);
|
|
119
|
+
}
|
|
120
|
+
/**
|
|
121
|
+
* Thrown when a requested resource is not found.
|
|
122
|
+
* HTTP Status: 404 Not Found
|
|
123
|
+
*/
|
|
124
|
+
export declare class NotFoundError extends DimensionsError {
|
|
125
|
+
/**
|
|
126
|
+
* Creates a new NotFoundError.
|
|
127
|
+
* @param message - Error description (defaults to "Resource not found")
|
|
128
|
+
*/
|
|
129
|
+
constructor(message?: string);
|
|
130
|
+
}
|
|
131
|
+
/**
|
|
132
|
+
* Thrown when the request is syntactically valid but contains invalid data.
|
|
133
|
+
* HTTP Status: 422 Unprocessable Entity
|
|
134
|
+
*/
|
|
135
|
+
export declare class UnprocessableEntityError extends DimensionsError {
|
|
136
|
+
/** Additional details about what failed processing */
|
|
137
|
+
readonly details?: Record<string, unknown>;
|
|
138
|
+
/**
|
|
139
|
+
* Creates a new UnprocessableEntityError.
|
|
140
|
+
* @param message - Error description
|
|
141
|
+
* @param details - Optional object with processing failure details
|
|
142
|
+
*/
|
|
143
|
+
constructor(message: string, details?: Record<string, unknown>);
|
|
144
|
+
toJSON(): Record<string, unknown>;
|
|
145
|
+
}
|
|
146
|
+
/**
|
|
147
|
+
* Checks if an error is a DimensionsError instance.
|
|
148
|
+
* @param error - Value to check
|
|
149
|
+
* @returns True if error is a DimensionsError
|
|
150
|
+
*/
|
|
151
|
+
export declare function isDimensionsError(error: unknown): error is DimensionsError;
|
|
152
|
+
/**
|
|
153
|
+
* Checks if an error is a NotFoundError instance.
|
|
154
|
+
* @param error - Value to check
|
|
155
|
+
* @returns True if error is a NotFoundError
|
|
156
|
+
*/
|
|
157
|
+
export declare function isNotFoundError(error: unknown): error is NotFoundError;
|
|
158
|
+
/**
|
|
159
|
+
* Checks if an error is an UnprocessableEntityError instance.
|
|
160
|
+
* @param error - Value to check
|
|
161
|
+
* @returns True if error is an UnprocessableEntityError
|
|
162
|
+
*/
|
|
163
|
+
export declare function isUnprocessableEntityError(error: unknown): error is UnprocessableEntityError;
|
|
164
|
+
/**
|
|
165
|
+
* Exhaustiveness check for discriminated unions.
|
|
166
|
+
* Local copy to keep `core` free of `dimensions-dsl` dependency.
|
|
167
|
+
* @param value - Should be `never` at compile time
|
|
168
|
+
* @param message - Optional error message
|
|
169
|
+
*/
|
|
170
|
+
export declare function assertNever(value: never, message?: string): never;
|
|
171
|
+
/**
|
|
172
|
+
* Extracts a safe error message from an unknown error value.
|
|
173
|
+
* Uses `.message` for Error instances (never `.toString()` which includes the stack).
|
|
174
|
+
* Returns `"Unknown error"` for non-Error values.
|
|
175
|
+
* Redacts credentials that may appear in error messages.
|
|
176
|
+
* @param error - The caught error value
|
|
177
|
+
* @returns A sanitized error message safe for logging or re-throwing
|
|
178
|
+
*/
|
|
179
|
+
export declare function sanitizeErrorMessage(error: unknown): string;
|
|
180
|
+
//# sourceMappingURL=errors.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/client/errors.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,253 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Base error class for all Dimensions API errors.
|
|
3
|
+
* Provides consistent error structure with optional status codes and JSON serialization.
|
|
4
|
+
*/
|
|
5
|
+
export class DimensionsError extends Error {
|
|
6
|
+
/** HTTP status code associated with this error, if applicable */
|
|
7
|
+
statusCode;
|
|
8
|
+
/**
|
|
9
|
+
* Creates a new DimensionsError.
|
|
10
|
+
* @param message - Human-readable error description
|
|
11
|
+
* @param statusCode - Optional HTTP status code
|
|
12
|
+
*/
|
|
13
|
+
constructor(message, statusCode) {
|
|
14
|
+
super(message);
|
|
15
|
+
this.name = "DimensionsError";
|
|
16
|
+
this.statusCode = statusCode;
|
|
17
|
+
Object.setPrototypeOf(this, new.target.prototype);
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Serializes the error to a plain object for logging or API responses.
|
|
21
|
+
* @returns Plain object representation of the error
|
|
22
|
+
*/
|
|
23
|
+
toJSON() {
|
|
24
|
+
return {
|
|
25
|
+
name: this.name,
|
|
26
|
+
message: this.message,
|
|
27
|
+
statusCode: this.statusCode,
|
|
28
|
+
};
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Thrown when authentication fails (invalid API key, expired token, etc.).
|
|
33
|
+
* HTTP Status: 401 Unauthorized
|
|
34
|
+
*/
|
|
35
|
+
export class AuthenticationError extends DimensionsError {
|
|
36
|
+
/**
|
|
37
|
+
* Creates a new AuthenticationError.
|
|
38
|
+
* @param message - Error description (defaults to "Authentication failed")
|
|
39
|
+
*/
|
|
40
|
+
constructor(message = "Authentication failed") {
|
|
41
|
+
super(message, 401);
|
|
42
|
+
this.name = "AuthenticationError";
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Thrown when the API rate limit is exceeded.
|
|
47
|
+
* HTTP Status: 429 Too Many Requests
|
|
48
|
+
*/
|
|
49
|
+
export class RateLimitError extends DimensionsError {
|
|
50
|
+
/** Suggested seconds to wait before retrying (from client-side throttling) */
|
|
51
|
+
retryAfter;
|
|
52
|
+
/** Client-side rate-limit state when a rate limiter is configured */
|
|
53
|
+
clientRateLimit;
|
|
54
|
+
/**
|
|
55
|
+
* Creates a new RateLimitError.
|
|
56
|
+
* @param message - Error description (defaults to "Rate limit exceeded")
|
|
57
|
+
* @param retryAfterSeconds - Suggested seconds to wait before retrying
|
|
58
|
+
* @param clientRateLimit - Optional client-side rate-limit snapshot
|
|
59
|
+
*/
|
|
60
|
+
constructor(message = "Rate limit exceeded", retryAfterSeconds, clientRateLimit) {
|
|
61
|
+
super(message, 429);
|
|
62
|
+
this.name = "RateLimitError";
|
|
63
|
+
this.clientRateLimit = clientRateLimit;
|
|
64
|
+
this.retryAfter =
|
|
65
|
+
retryAfterSeconds ??
|
|
66
|
+
(clientRateLimit != null ? Math.ceil(clientRateLimit.retryAfterMs / 1000) : undefined);
|
|
67
|
+
}
|
|
68
|
+
toJSON() {
|
|
69
|
+
return {
|
|
70
|
+
...super.toJSON(),
|
|
71
|
+
retryAfter: this.retryAfter,
|
|
72
|
+
clientRateLimit: this.clientRateLimit,
|
|
73
|
+
};
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
/**
|
|
77
|
+
* Thrown when input validation fails (invalid parameters, missing required fields, etc.).
|
|
78
|
+
* HTTP Status: 400 Bad Request
|
|
79
|
+
*/
|
|
80
|
+
export class ValidationError extends DimensionsError {
|
|
81
|
+
/** Additional details about what failed validation */
|
|
82
|
+
details;
|
|
83
|
+
/**
|
|
84
|
+
* Creates a new ValidationError.
|
|
85
|
+
* @param message - Error description
|
|
86
|
+
* @param details - Optional object with validation failure details
|
|
87
|
+
*/
|
|
88
|
+
constructor(message, details) {
|
|
89
|
+
super(message, 400);
|
|
90
|
+
this.name = "ValidationError";
|
|
91
|
+
this.details = details;
|
|
92
|
+
}
|
|
93
|
+
toJSON() {
|
|
94
|
+
return {
|
|
95
|
+
...super.toJSON(),
|
|
96
|
+
details: this.details,
|
|
97
|
+
};
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
/**
|
|
101
|
+
* Thrown when the DSL query syntax is invalid.
|
|
102
|
+
* HTTP Status: 400 Bad Request
|
|
103
|
+
*/
|
|
104
|
+
export class QuerySyntaxError extends DimensionsError {
|
|
105
|
+
/**
|
|
106
|
+
* Creates a new QuerySyntaxError.
|
|
107
|
+
* @param message - Description of the syntax error
|
|
108
|
+
*/
|
|
109
|
+
constructor(message) {
|
|
110
|
+
super(message, 400);
|
|
111
|
+
this.name = "QuerySyntaxError";
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
/**
|
|
115
|
+
* Thrown when a network-level error occurs (connection refused, DNS failure, etc.).
|
|
116
|
+
* No HTTP status code as the request never completed.
|
|
117
|
+
*/
|
|
118
|
+
export class NetworkError extends DimensionsError {
|
|
119
|
+
/**
|
|
120
|
+
* Creates a new NetworkError.
|
|
121
|
+
* @param message - Error description (defaults to "Network error")
|
|
122
|
+
*/
|
|
123
|
+
constructor(message = "Network error") {
|
|
124
|
+
super(message);
|
|
125
|
+
this.name = "NetworkError";
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
/**
|
|
129
|
+
* Thrown when a request times out before receiving a response.
|
|
130
|
+
* No HTTP status code as the request never completed.
|
|
131
|
+
*/
|
|
132
|
+
export class TimeoutError extends DimensionsError {
|
|
133
|
+
/**
|
|
134
|
+
* Creates a new TimeoutError.
|
|
135
|
+
* @param message - Error description (defaults to "Request timeout")
|
|
136
|
+
*/
|
|
137
|
+
constructor(message = "Request timeout") {
|
|
138
|
+
super(message);
|
|
139
|
+
this.name = "TimeoutError";
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
/**
|
|
143
|
+
* Thrown when the server returns a 5xx error.
|
|
144
|
+
* HTTP Status: 500-599 (configurable, defaults to 500)
|
|
145
|
+
*/
|
|
146
|
+
export class ServerError extends DimensionsError {
|
|
147
|
+
/**
|
|
148
|
+
* Creates a new ServerError.
|
|
149
|
+
* @param message - Error description (defaults to "Server error")
|
|
150
|
+
* @param statusCode - HTTP status code in range 500-599 (defaults to 500)
|
|
151
|
+
* @throws {TypeError} If statusCode is not an integer in range 500-599
|
|
152
|
+
*/
|
|
153
|
+
constructor(message = "Server error", statusCode = 500) {
|
|
154
|
+
if (!Number.isInteger(statusCode) || statusCode < 500 || statusCode > 599) {
|
|
155
|
+
throw new TypeError(`ServerError statusCode must be an integer in range 500-599, got ${statusCode}`);
|
|
156
|
+
}
|
|
157
|
+
super(message, statusCode);
|
|
158
|
+
this.name = "ServerError";
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
/**
|
|
162
|
+
* Thrown when a requested resource is not found.
|
|
163
|
+
* HTTP Status: 404 Not Found
|
|
164
|
+
*/
|
|
165
|
+
export class NotFoundError extends DimensionsError {
|
|
166
|
+
/**
|
|
167
|
+
* Creates a new NotFoundError.
|
|
168
|
+
* @param message - Error description (defaults to "Resource not found")
|
|
169
|
+
*/
|
|
170
|
+
constructor(message = "Resource not found") {
|
|
171
|
+
super(message, 404);
|
|
172
|
+
this.name = "NotFoundError";
|
|
173
|
+
}
|
|
174
|
+
}
|
|
175
|
+
/**
|
|
176
|
+
* Thrown when the request is syntactically valid but contains invalid data.
|
|
177
|
+
* HTTP Status: 422 Unprocessable Entity
|
|
178
|
+
*/
|
|
179
|
+
export class UnprocessableEntityError extends DimensionsError {
|
|
180
|
+
/** Additional details about what failed processing */
|
|
181
|
+
details;
|
|
182
|
+
/**
|
|
183
|
+
* Creates a new UnprocessableEntityError.
|
|
184
|
+
* @param message - Error description
|
|
185
|
+
* @param details - Optional object with processing failure details
|
|
186
|
+
*/
|
|
187
|
+
constructor(message, details) {
|
|
188
|
+
super(message, 422);
|
|
189
|
+
this.name = "UnprocessableEntityError";
|
|
190
|
+
this.details = details;
|
|
191
|
+
}
|
|
192
|
+
toJSON() {
|
|
193
|
+
return {
|
|
194
|
+
...super.toJSON(),
|
|
195
|
+
details: this.details,
|
|
196
|
+
};
|
|
197
|
+
}
|
|
198
|
+
}
|
|
199
|
+
/**
|
|
200
|
+
* Checks if an error is a DimensionsError instance.
|
|
201
|
+
* @param error - Value to check
|
|
202
|
+
* @returns True if error is a DimensionsError
|
|
203
|
+
*/
|
|
204
|
+
export function isDimensionsError(error) {
|
|
205
|
+
return error instanceof DimensionsError;
|
|
206
|
+
}
|
|
207
|
+
/**
|
|
208
|
+
* Checks if an error is a NotFoundError instance.
|
|
209
|
+
* @param error - Value to check
|
|
210
|
+
* @returns True if error is a NotFoundError
|
|
211
|
+
*/
|
|
212
|
+
export function isNotFoundError(error) {
|
|
213
|
+
return error instanceof NotFoundError;
|
|
214
|
+
}
|
|
215
|
+
/**
|
|
216
|
+
* Checks if an error is an UnprocessableEntityError instance.
|
|
217
|
+
* @param error - Value to check
|
|
218
|
+
* @returns True if error is an UnprocessableEntityError
|
|
219
|
+
*/
|
|
220
|
+
export function isUnprocessableEntityError(error) {
|
|
221
|
+
return error instanceof UnprocessableEntityError;
|
|
222
|
+
}
|
|
223
|
+
/**
|
|
224
|
+
* Exhaustiveness check for discriminated unions.
|
|
225
|
+
* Local copy to keep `core` free of `dimensions-dsl` dependency.
|
|
226
|
+
* @param value - Should be `never` at compile time
|
|
227
|
+
* @param message - Optional error message
|
|
228
|
+
*/
|
|
229
|
+
export function assertNever(value, message) {
|
|
230
|
+
throw new Error(message ?? `Unexpected value: ${JSON.stringify(value)}`);
|
|
231
|
+
}
|
|
232
|
+
/** Patterns that match credentials in error messages, paired with their replacements */
|
|
233
|
+
const CREDENTIAL_PATTERNS = [
|
|
234
|
+
[/:\/\/([^:]+):([^@]+)@/g, "://[redacted]@"],
|
|
235
|
+
[/Bearer\s+\S+/gi, "Bearer [redacted]"],
|
|
236
|
+
[/password\s*[=:]\s*\S+/gi, "[redacted]"],
|
|
237
|
+
[/api_?key\s*[=:]\s*\S+/gi, "[redacted]"],
|
|
238
|
+
[/token\s*[=:]\s*\S+/gi, "[redacted]"],
|
|
239
|
+
[/secret\s*[=:]\s*\S+/gi, "[redacted]"],
|
|
240
|
+
];
|
|
241
|
+
/**
|
|
242
|
+
* Extracts a safe error message from an unknown error value.
|
|
243
|
+
* Uses `.message` for Error instances (never `.toString()` which includes the stack).
|
|
244
|
+
* Returns `"Unknown error"` for non-Error values.
|
|
245
|
+
* Redacts credentials that may appear in error messages.
|
|
246
|
+
* @param error - The caught error value
|
|
247
|
+
* @returns A sanitized error message safe for logging or re-throwing
|
|
248
|
+
*/
|
|
249
|
+
export function sanitizeErrorMessage(error) {
|
|
250
|
+
const raw = error instanceof Error ? error.message : "Unknown error";
|
|
251
|
+
return CREDENTIAL_PATTERNS.reduce((msg, [pattern, replacement]) => msg.replace(pattern, replacement), raw);
|
|
252
|
+
}
|
|
253
|
+
//# sourceMappingURL=errors.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/client/errors.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,215 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* HTTP client for Dimensions API requests.
|
|
3
|
+
* Handles retry logic, timeout, and error mapping.
|
|
4
|
+
* @module core/http-client
|
|
5
|
+
*/
|
|
6
|
+
import type { AuthProvider } from "./auth/types.js";
|
|
7
|
+
import type { RateLimiter } from "./rate-limiter.js";
|
|
8
|
+
/**
|
|
9
|
+
* Configuration options for the HTTP client.
|
|
10
|
+
*/
|
|
11
|
+
export interface HttpClientConfig {
|
|
12
|
+
/** Base URL for API requests */
|
|
13
|
+
readonly baseUrl: string;
|
|
14
|
+
/** Authentication provider for generating request headers */
|
|
15
|
+
readonly authProvider: AuthProvider;
|
|
16
|
+
/** Request timeout in milliseconds (default: 30000) */
|
|
17
|
+
readonly timeout?: number;
|
|
18
|
+
/** Maximum number of retry attempts (default: 3) */
|
|
19
|
+
readonly maxRetries?: number;
|
|
20
|
+
/** Delay between retries in milliseconds (default: 1000) */
|
|
21
|
+
readonly retryDelay?: number;
|
|
22
|
+
/** Optional rate limiter for client-side request throttling */
|
|
23
|
+
readonly rateLimiter?: RateLimiter;
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Base options for all request types.
|
|
27
|
+
*/
|
|
28
|
+
export interface RequestOptions {
|
|
29
|
+
/** Additional headers to include */
|
|
30
|
+
readonly headers?: Record<string, string>;
|
|
31
|
+
/** Request timeout override */
|
|
32
|
+
readonly timeout?: number;
|
|
33
|
+
/** AbortSignal for cancellation */
|
|
34
|
+
readonly signal?: AbortSignal;
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Options for GET requests.
|
|
38
|
+
*/
|
|
39
|
+
export interface GetOptions extends RequestOptions {
|
|
40
|
+
/** Query parameters to append to URL */
|
|
41
|
+
readonly params?: Record<string, string | number | boolean | string[] | number[]>;
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Options for POST requests with JSON body.
|
|
45
|
+
*/
|
|
46
|
+
export interface PostJsonOptions extends RequestOptions {
|
|
47
|
+
/** JSON body (will be serialized) */
|
|
48
|
+
readonly json: unknown;
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Options for POST requests with form-urlencoded body.
|
|
52
|
+
*/
|
|
53
|
+
export interface PostFormOptions extends RequestOptions {
|
|
54
|
+
/** Form data (will be URL-encoded) */
|
|
55
|
+
readonly form: Record<string, string>;
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* Generic response structure from Dimensions API.
|
|
59
|
+
*/
|
|
60
|
+
export interface DimensionsResponse {
|
|
61
|
+
/** Statistics about the query result */
|
|
62
|
+
_stats?: {
|
|
63
|
+
total_count: number;
|
|
64
|
+
};
|
|
65
|
+
/** Additional response fields (dynamic based on query) */
|
|
66
|
+
[key: string]: unknown;
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* HTTP client for making requests to the Dimensions API.
|
|
70
|
+
* Implements retry logic with client-side throttling and exponential backoff for transient errors.
|
|
71
|
+
*/
|
|
72
|
+
export declare class HttpClient {
|
|
73
|
+
private readonly baseUrl;
|
|
74
|
+
private readonly authProvider;
|
|
75
|
+
private readonly timeout;
|
|
76
|
+
private readonly maxRetries;
|
|
77
|
+
private readonly retryDelay;
|
|
78
|
+
private readonly rateLimiter;
|
|
79
|
+
/**
|
|
80
|
+
* Creates a new HttpClient instance.
|
|
81
|
+
* @param config - HTTP client configuration
|
|
82
|
+
*/
|
|
83
|
+
constructor(config: HttpClientConfig);
|
|
84
|
+
/**
|
|
85
|
+
* Executes a DSL query against the Dimensions API.
|
|
86
|
+
* @param dsl - The DSL query string
|
|
87
|
+
* @param endpoint - API endpoint (default: /api/dsl/v2)
|
|
88
|
+
* @param options - Optional request overrides (timeout, signal)
|
|
89
|
+
* @returns The API response
|
|
90
|
+
* @throws {QuerySyntaxError} If the query syntax is invalid
|
|
91
|
+
* @throws {RateLimitError} If rate limit is exceeded after retries
|
|
92
|
+
* @throws {ServerError} If server error persists after retries
|
|
93
|
+
* @throws {NetworkError} If network error occurs after retries
|
|
94
|
+
* @throws {TimeoutError} If request times out
|
|
95
|
+
* @throws {AuthenticationError} If authentication fails
|
|
96
|
+
*/
|
|
97
|
+
query(dsl: string, endpoint?: string, options?: RequestOptions): Promise<DimensionsResponse>;
|
|
98
|
+
/**
|
|
99
|
+
* Executes a single DSL request with raw body.
|
|
100
|
+
* @param url - Full request URL
|
|
101
|
+
* @param dsl - DSL query string (sent as raw body)
|
|
102
|
+
* @returns Parsed response
|
|
103
|
+
*/
|
|
104
|
+
private executeDslRequest;
|
|
105
|
+
/**
|
|
106
|
+
* Maps HTTP response status to appropriate error type.
|
|
107
|
+
* @param response - HTTP response
|
|
108
|
+
* @returns Appropriate error instance
|
|
109
|
+
*/
|
|
110
|
+
private mapHttpError;
|
|
111
|
+
/**
|
|
112
|
+
* Executes a fetch request with timeout management and unified error mapping.
|
|
113
|
+
* @param options - Request configuration
|
|
114
|
+
* @returns Parsed JSON response
|
|
115
|
+
* @throws {TimeoutError} If the request times out or the external signal fires
|
|
116
|
+
* @throws {NetworkError} If a network-level error occurs
|
|
117
|
+
* @throws {DimensionsError} If the HTTP response indicates an error
|
|
118
|
+
*/
|
|
119
|
+
private wrapFetch;
|
|
120
|
+
/**
|
|
121
|
+
* Determines if an error is retryable.
|
|
122
|
+
* @param error - Error to check
|
|
123
|
+
* @returns True if the error should be retried
|
|
124
|
+
*/
|
|
125
|
+
private isRetryable;
|
|
126
|
+
/**
|
|
127
|
+
* Delays execution for the specified time.
|
|
128
|
+
* @param ms - Delay in milliseconds
|
|
129
|
+
*/
|
|
130
|
+
private delay;
|
|
131
|
+
/**
|
|
132
|
+
* Sends a GET request with optional query parameters.
|
|
133
|
+
* @param path - URL path (appended to baseUrl)
|
|
134
|
+
* @param options - Request options including params
|
|
135
|
+
* @returns Parsed JSON response
|
|
136
|
+
*/
|
|
137
|
+
get<T = unknown>(path: string, options?: GetOptions): Promise<T>;
|
|
138
|
+
/**
|
|
139
|
+
* Builds URL with query parameters.
|
|
140
|
+
* @param path - URL path
|
|
141
|
+
* @param params - Query parameters
|
|
142
|
+
* @returns Full URL with query string
|
|
143
|
+
*/
|
|
144
|
+
private buildUrl;
|
|
145
|
+
/**
|
|
146
|
+
* Executes a single GET request.
|
|
147
|
+
* @param url - Full request URL
|
|
148
|
+
* @param options - Request options
|
|
149
|
+
* @returns Parsed response
|
|
150
|
+
*/
|
|
151
|
+
private executeGetRequest;
|
|
152
|
+
/**
|
|
153
|
+
* Calculates the delay before the next retry attempt.
|
|
154
|
+
* For rate-limit errors, uses the client rate limiter's slot timing.
|
|
155
|
+
* For other transient errors, uses exponential backoff with jitter.
|
|
156
|
+
* The result is capped at 60 seconds.
|
|
157
|
+
* @param error - The error that triggered the retry
|
|
158
|
+
* @param attempt - The current attempt number (0-based)
|
|
159
|
+
* @returns Delay in milliseconds
|
|
160
|
+
*/
|
|
161
|
+
private calculateRetryDelay;
|
|
162
|
+
/**
|
|
163
|
+
* Executes a request with retry logic.
|
|
164
|
+
* Uses client-side throttling before each attempt and exponential backoff for transient errors.
|
|
165
|
+
* @param requestFn - Function that executes the request
|
|
166
|
+
* @returns Response from successful request
|
|
167
|
+
*/
|
|
168
|
+
private executeWithRetry;
|
|
169
|
+
/**
|
|
170
|
+
* Sends a POST request with JSON body.
|
|
171
|
+
* @param path - URL path (appended to baseUrl)
|
|
172
|
+
* @param options - Request options with JSON body
|
|
173
|
+
* @returns Parsed JSON response
|
|
174
|
+
*/
|
|
175
|
+
postJson<T = unknown>(path: string, options: PostJsonOptions): Promise<T>;
|
|
176
|
+
/**
|
|
177
|
+
* Executes a single POST JSON request.
|
|
178
|
+
* @param url - Full request URL
|
|
179
|
+
* @param options - Request options with JSON body
|
|
180
|
+
* @returns Parsed response
|
|
181
|
+
*/
|
|
182
|
+
private executePostJsonRequest;
|
|
183
|
+
/**
|
|
184
|
+
* Sends a POST request with JSON body and returns the raw `Response`.
|
|
185
|
+
* The caller owns the response body and must consume or close it.
|
|
186
|
+
* Auth, timeout, retry, and error-status handling are applied identically
|
|
187
|
+
* to {@link postJson}, but the body is **not** read or parsed.
|
|
188
|
+
* @param path - URL path (appended to baseUrl)
|
|
189
|
+
* @param options - Request options with JSON body
|
|
190
|
+
* @returns The raw fetch Response (body unconsumed)
|
|
191
|
+
*/
|
|
192
|
+
postJsonRaw(path: string, options: PostJsonOptions): Promise<Response>;
|
|
193
|
+
/**
|
|
194
|
+
* Executes a single POST JSON request and returns the raw Response.
|
|
195
|
+
* @param url - Full request URL
|
|
196
|
+
* @param options - Request options with JSON body
|
|
197
|
+
* @returns Raw Response with unconsumed body
|
|
198
|
+
*/
|
|
199
|
+
private executePostJsonRawRequest;
|
|
200
|
+
/**
|
|
201
|
+
* Sends a POST request with form-urlencoded body.
|
|
202
|
+
* @param path - URL path (appended to baseUrl)
|
|
203
|
+
* @param options - Request options with form data
|
|
204
|
+
* @returns Parsed JSON response
|
|
205
|
+
*/
|
|
206
|
+
postForm<T = unknown>(path: string, options: PostFormOptions): Promise<T>;
|
|
207
|
+
/**
|
|
208
|
+
* Executes a single POST form-urlencoded request.
|
|
209
|
+
* @param url - Full request URL
|
|
210
|
+
* @param options - Request options with form data
|
|
211
|
+
* @returns Parsed response
|
|
212
|
+
*/
|
|
213
|
+
private executePostFormRequest;
|
|
214
|
+
}
|
|
215
|
+
//# sourceMappingURL=http-client.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"http-client.d.ts","sourceRoot":"","sources":["../../src/client/http-client.ts"],"names":[],"mappings":"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"}
|