@1mcp/agent 0.40.0-beta.0 → 0.40.0-beta.2
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 +8 -0
- package/build/admin/assets/{admin-OAuthServicesWorkspace-Bu74Bzt5.js → admin-OAuthServicesWorkspace-Cdoty-OD.js} +1 -1
- package/build/admin/assets/admin-console-XzkKAJze.js +3 -0
- package/build/admin/index.html +1 -1
- package/build/auth/oauthDiagnostics.d.ts +4 -0
- package/build/auth/oauthDiagnostics.d.ts.map +1 -1
- package/build/auth/oauthDiagnostics.js +4 -0
- package/build/auth/oauthDiagnostics.js.map +1 -1
- package/build/auth/oauthEndpointFetch.d.ts +2 -1
- package/build/auth/oauthEndpointFetch.d.ts.map +1 -1
- package/build/auth/oauthEndpointFetch.js +17 -6
- package/build/auth/oauthEndpointFetch.js.map +1 -1
- package/build/auth/sessionTypes.d.ts +1 -1
- package/build/cli.d.ts.map +1 -1
- package/build/cli.js +9 -1
- package/build/cli.js.map +1 -1
- package/build/commands/app/backups.d.ts.map +1 -1
- package/build/commands/app/backups.js +2 -1
- package/build/commands/app/backups.js.map +1 -1
- package/build/commands/app/consolidate.d.ts.map +1 -1
- package/build/commands/app/consolidate.js +5 -4
- package/build/commands/app/consolidate.js.map +1 -1
- package/build/commands/app/discover.d.ts.map +1 -1
- package/build/commands/app/discover.js +2 -1
- package/build/commands/app/discover.js.map +1 -1
- package/build/commands/app/index.d.ts.map +1 -1
- package/build/commands/app/index.js +30 -15
- package/build/commands/app/index.js.map +1 -1
- package/build/commands/app/restore.d.ts.map +1 -1
- package/build/commands/app/restore.js +6 -5
- package/build/commands/app/restore.js.map +1 -1
- package/build/commands/app/status.d.ts.map +1 -1
- package/build/commands/app/status.js +2 -1
- package/build/commands/app/status.js.map +1 -1
- package/build/commands/bootstrap/bootstrap.d.ts +2 -2
- package/build/commands/bootstrap/bootstrap.d.ts.map +1 -1
- package/build/commands/bootstrap/bootstrap.js +54 -31
- package/build/commands/bootstrap/bootstrap.js.map +1 -1
- package/build/commands/bootstrap/bootstrapOwnership.d.ts.map +1 -1
- package/build/commands/bootstrap/bootstrapOwnership.js +74 -42
- package/build/commands/bootstrap/bootstrapOwnership.js.map +1 -1
- package/build/commands/bootstrap/index.d.ts.map +1 -1
- package/build/commands/bootstrap/index.js +5 -2
- package/build/commands/bootstrap/index.js.map +1 -1
- package/build/commands/cliSetup/index.d.ts.map +1 -1
- package/build/commands/cliSetup/index.js +14 -11
- package/build/commands/cliSetup/index.js.map +1 -1
- package/build/commands/inspect/index.js +1 -1
- package/build/commands/inspect/index.js.map +1 -1
- package/build/commands/inspect/inspect.d.ts.map +1 -1
- package/build/commands/inspect/inspect.js +4 -1
- package/build/commands/inspect/inspect.js.map +1 -1
- package/build/commands/inspect/inspectUtils.d.ts +1 -0
- package/build/commands/inspect/inspectUtils.d.ts.map +1 -1
- package/build/commands/inspect/inspectUtils.js +10 -2
- package/build/commands/inspect/inspectUtils.js.map +1 -1
- package/build/commands/mcp/add.d.ts.map +1 -1
- package/build/commands/mcp/add.js +2 -1
- package/build/commands/mcp/add.js.map +1 -1
- package/build/commands/mcp/enable.d.ts.map +1 -1
- package/build/commands/mcp/enable.js +2 -1
- package/build/commands/mcp/enable.js.map +1 -1
- package/build/commands/mcp/index.d.ts.map +1 -1
- package/build/commands/mcp/index.js +85 -56
- package/build/commands/mcp/index.js.map +1 -1
- package/build/commands/mcp/install.d.ts.map +1 -1
- package/build/commands/mcp/install.js +6 -5
- package/build/commands/mcp/install.js.map +1 -1
- package/build/commands/mcp/list.d.ts.map +1 -1
- package/build/commands/mcp/list.js +2 -1
- package/build/commands/mcp/list.js.map +1 -1
- package/build/commands/mcp/remove.d.ts.map +1 -1
- package/build/commands/mcp/remove.js +2 -1
- package/build/commands/mcp/remove.js.map +1 -1
- package/build/commands/mcp/status.d.ts.map +1 -1
- package/build/commands/mcp/status.js +2 -1
- package/build/commands/mcp/status.js.map +1 -1
- package/build/commands/mcp/tokens.d.ts.map +1 -1
- package/build/commands/mcp/tokens.js +5 -4
- package/build/commands/mcp/tokens.js.map +1 -1
- package/build/commands/mcp/tools.d.ts.map +1 -1
- package/build/commands/mcp/tools.js +17 -8
- package/build/commands/mcp/tools.js.map +1 -1
- package/build/commands/preset/delete.d.ts.map +1 -1
- package/build/commands/preset/delete.js +2 -1
- package/build/commands/preset/delete.js.map +1 -1
- package/build/commands/preset/edit.d.ts.map +1 -1
- package/build/commands/preset/edit.js +3 -2
- package/build/commands/preset/edit.js.map +1 -1
- package/build/commands/preset/index.d.ts.map +1 -1
- package/build/commands/preset/index.js +34 -17
- package/build/commands/preset/index.js.map +1 -1
- package/build/commands/preset/interactive.d.ts.map +1 -1
- package/build/commands/preset/interactive.js +2 -1
- package/build/commands/preset/interactive.js.map +1 -1
- package/build/commands/preset/list.d.ts.map +1 -1
- package/build/commands/preset/list.js +2 -1
- package/build/commands/preset/list.js.map +1 -1
- package/build/commands/preset/show.d.ts.map +1 -1
- package/build/commands/preset/show.js +2 -1
- package/build/commands/preset/show.js.map +1 -1
- package/build/commands/preset/test.d.ts.map +1 -1
- package/build/commands/preset/test.js +2 -1
- package/build/commands/preset/test.js.map +1 -1
- package/build/commands/preset/url.d.ts.map +1 -1
- package/build/commands/preset/url.js +2 -1
- package/build/commands/preset/url.js.map +1 -1
- package/build/commands/proxy/proxy.d.ts.map +1 -1
- package/build/commands/proxy/proxy.js +4 -0
- package/build/commands/proxy/proxy.js.map +1 -1
- package/build/commands/registry/index.d.ts.map +1 -1
- package/build/commands/registry/index.js +21 -10
- package/build/commands/registry/index.js.map +1 -1
- package/build/commands/registry/search.d.ts.map +1 -1
- package/build/commands/registry/search.js +2 -1
- package/build/commands/registry/search.js.map +1 -1
- package/build/commands/registry/show.d.ts.map +1 -1
- package/build/commands/registry/show.js +2 -1
- package/build/commands/registry/show.js.map +1 -1
- package/build/commands/registry/status.d.ts.map +1 -1
- package/build/commands/registry/status.js +2 -1
- package/build/commands/registry/status.js.map +1 -1
- package/build/commands/registry/versions.d.ts.map +1 -1
- package/build/commands/registry/versions.js +2 -1
- package/build/commands/registry/versions.js.map +1 -1
- package/build/commands/run/index.d.ts.map +1 -1
- package/build/commands/run/index.js +9 -1
- package/build/commands/run/index.js.map +1 -1
- package/build/commands/run/run.d.ts +2 -0
- package/build/commands/run/run.d.ts.map +1 -1
- package/build/commands/run/run.js +23 -5
- package/build/commands/run/run.js.map +1 -1
- package/build/commands/run/stdoutBudget.d.ts +10 -0
- package/build/commands/run/stdoutBudget.d.ts.map +1 -0
- package/build/commands/run/stdoutBudget.js +102 -0
- package/build/commands/run/stdoutBudget.js.map +1 -0
- package/build/commands/serve/cooperativeRuntime.d.ts.map +1 -1
- package/build/commands/serve/cooperativeRuntime.js +7 -0
- package/build/commands/serve/cooperativeRuntime.js.map +1 -1
- package/build/commands/serve/index.d.ts.map +1 -1
- package/build/commands/serve/index.js +5 -0
- package/build/commands/serve/index.js.map +1 -1
- package/build/commands/serve/serveBackground.d.ts.map +1 -1
- package/build/commands/serve/serveBackground.js +12 -0
- package/build/commands/serve/serveBackground.js.map +1 -1
- package/build/commands/shared/commandRunner.d.ts +2 -1
- package/build/commands/shared/commandRunner.d.ts.map +1 -1
- package/build/commands/shared/commandRunner.js +15 -3
- package/build/commands/shared/commandRunner.js.map +1 -1
- package/build/commands/shared/inspectApiSchemas.d.ts +8 -8
- package/build/commands/shared/productCommandFamily.d.ts +4 -0
- package/build/commands/shared/productCommandFamily.d.ts.map +1 -0
- package/build/commands/shared/productCommandFamily.js +27 -0
- package/build/commands/shared/productCommandFamily.js.map +1 -0
- package/build/commands/shared/projectOwnerStore.d.ts +22 -5
- package/build/commands/shared/projectOwnerStore.d.ts.map +1 -1
- package/build/commands/shared/projectOwnerStore.js +125 -29
- package/build/commands/shared/projectOwnerStore.js.map +1 -1
- package/build/commands/telemetry/index.d.ts +3 -0
- package/build/commands/telemetry/index.d.ts.map +1 -0
- package/build/commands/telemetry/index.js +47 -0
- package/build/commands/telemetry/index.js.map +1 -0
- package/build/config/configManager.d.ts.map +1 -1
- package/build/config/configManager.js +10 -0
- package/build/config/configManager.js.map +1 -1
- package/build/config/productTelemetryBootstrap.d.ts +12 -0
- package/build/config/productTelemetryBootstrap.d.ts.map +1 -0
- package/build/config/productTelemetryBootstrap.js +40 -0
- package/build/config/productTelemetryBootstrap.js.map +1 -0
- package/build/constants/mcp.d.ts +1 -1
- package/build/constants/mcp.js +1 -1
- package/build/core/capabilities/lazyLoadingOrchestrator.d.ts +2 -0
- package/build/core/capabilities/lazyLoadingOrchestrator.d.ts.map +1 -1
- package/build/core/capabilities/lazyLoadingOrchestrator.js +4 -0
- package/build/core/capabilities/lazyLoadingOrchestrator.js.map +1 -1
- package/build/core/capabilities/runtimeCapabilityCatalog.d.ts.map +1 -1
- package/build/core/capabilities/runtimeCapabilityCatalog.js +10 -0
- package/build/core/capabilities/runtimeCapabilityCatalog.js.map +1 -1
- package/build/core/server/runtimeLaunchIpc.d.ts +19 -13
- package/build/core/server/runtimeLaunchIpc.d.ts.map +1 -1
- package/build/core/server/runtimeReplacementConfig.d.ts +19 -13
- package/build/core/server/runtimeReplacementConfig.d.ts.map +1 -1
- package/build/core/tools/handlers/serverManagementHandler.d.ts +23 -9
- package/build/core/tools/handlers/serverManagementHandler.d.ts.map +1 -1
- package/build/core/tools/internal/adapters/helpers/configTransformers.d.ts +4 -2
- package/build/core/tools/internal/adapters/helpers/configTransformers.d.ts.map +1 -1
- package/build/core/tools/internal/schemas/discovery.d.ts +3 -3
- package/build/core/tools/internal/schemas/edit.d.ts +5 -6
- package/build/core/tools/internal/schemas/edit.d.ts.map +1 -1
- package/build/core/tools/internal/schemas/edit.js +2 -10
- package/build/core/tools/internal/schemas/edit.js.map +1 -1
- package/build/core/tools/internal/schemas/index.d.ts +18 -13
- package/build/core/tools/internal/schemas/index.d.ts.map +1 -1
- package/build/core/tools/internal/schemas/installation.d.ts +1 -1
- package/build/core/tools/internal/schemas/management.d.ts +9 -9
- package/build/core/types/transport.d.ts +36 -24
- package/build/core/types/transport.d.ts.map +1 -1
- package/build/core/types/transport.js +13 -0
- package/build/core/types/transport.js.map +1 -1
- package/build/domains/admin/adminConfiguredServerService.d.ts.map +1 -1
- package/build/domains/admin/adminConfiguredServerService.js +30 -14
- package/build/domains/admin/adminConfiguredServerService.js.map +1 -1
- package/build/domains/admin/adminOperationService.d.ts +1 -0
- package/build/domains/admin/adminOperationService.d.ts.map +1 -1
- package/build/domains/admin/adminOperationService.js +38 -0
- package/build/domains/admin/adminOperationService.js.map +1 -1
- package/build/domains/installation/serverInstallationSourceResolution.js +1 -0
- package/build/domains/installation/serverInstallationSourceResolution.js.map +1 -1
- package/build/domains/installation/serverInstallationTypes.d.ts +1 -0
- package/build/domains/installation/serverInstallationTypes.d.ts.map +1 -1
- package/build/domains/preset/services/presetErrorHandler.d.ts.map +1 -1
- package/build/domains/preset/services/presetErrorHandler.js +3 -2
- package/build/domains/preset/services/presetErrorHandler.js.map +1 -1
- package/build/gateway/adapters/legacy/legacyOutboundEraAdapter.d.ts.map +1 -1
- package/build/gateway/adapters/legacy/legacyOutboundEraAdapter.js +2 -2
- package/build/gateway/adapters/legacy/legacyOutboundEraAdapter.js.map +1 -1
- package/build/gateway/adapters/modern/modernOutboundEraAdapter.js +2 -2
- package/build/gateway/adapters/modern/modernOutboundEraAdapter.js.map +1 -1
- package/build/gateway/contracts/gatewayFailure.d.ts.map +1 -1
- package/build/gateway/contracts/gatewayFailure.js +5 -0
- package/build/gateway/contracts/gatewayFailure.js.map +1 -1
- package/build/gateway/core/gatewayDispatcher.d.ts.map +1 -1
- package/build/gateway/core/gatewayDispatcher.js +2 -3
- package/build/gateway/core/gatewayDispatcher.js.map +1 -1
- package/build/globalOptions.d.ts +24 -11
- package/build/globalOptions.d.ts.map +1 -1
- package/build/globalOptions.js +60 -1
- package/build/globalOptions.js.map +1 -1
- package/build/productTelemetry/commandScope.d.ts +8 -0
- package/build/productTelemetry/commandScope.d.ts.map +1 -0
- package/build/productTelemetry/commandScope.js +50 -0
- package/build/productTelemetry/commandScope.js.map +1 -0
- package/build/productTelemetry/contract.d.ts +136 -0
- package/build/productTelemetry/contract.d.ts.map +1 -0
- package/build/productTelemetry/contract.js +103 -0
- package/build/productTelemetry/contract.js.map +1 -0
- package/build/productTelemetry/coordinationScope.d.ts +3 -0
- package/build/productTelemetry/coordinationScope.d.ts.map +1 -0
- package/build/productTelemetry/coordinationScope.js +92 -0
- package/build/productTelemetry/coordinationScope.js.map +1 -0
- package/build/productTelemetry/delivery.d.ts +8 -0
- package/build/productTelemetry/delivery.d.ts.map +1 -0
- package/build/productTelemetry/delivery.js +142 -0
- package/build/productTelemetry/delivery.js.map +1 -0
- package/build/productTelemetry/index.d.ts +15 -0
- package/build/productTelemetry/index.d.ts.map +1 -0
- package/build/productTelemetry/index.js +118 -0
- package/build/productTelemetry/index.js.map +1 -0
- package/build/productTelemetry/installationStore.d.ts +118 -0
- package/build/productTelemetry/installationStore.d.ts.map +1 -0
- package/build/productTelemetry/installationStore.js +579 -0
- package/build/productTelemetry/installationStore.js.map +1 -0
- package/build/productTelemetry/notice.d.ts +3 -0
- package/build/productTelemetry/notice.d.ts.map +1 -0
- package/build/productTelemetry/notice.js +13 -0
- package/build/productTelemetry/notice.js.map +1 -0
- package/build/productTelemetry/operation.d.ts +9 -0
- package/build/productTelemetry/operation.d.ts.map +1 -0
- package/build/productTelemetry/operation.js +51 -0
- package/build/productTelemetry/operation.js.map +1 -0
- package/build/productTelemetry/permissions.d.ts +8 -0
- package/build/productTelemetry/permissions.d.ts.map +1 -0
- package/build/productTelemetry/permissions.js +10 -0
- package/build/productTelemetry/permissions.js.map +1 -0
- package/build/productTelemetry/policy.d.ts +12 -0
- package/build/productTelemetry/policy.d.ts.map +1 -0
- package/build/productTelemetry/policy.js +31 -0
- package/build/productTelemetry/policy.js.map +1 -0
- package/build/productTelemetry/producer.d.ts +51 -0
- package/build/productTelemetry/producer.d.ts.map +1 -0
- package/build/productTelemetry/producer.js +214 -0
- package/build/productTelemetry/producer.js.map +1 -0
- package/build/sdk/contracts/jsonValue.d.ts +2 -0
- package/build/sdk/contracts/jsonValue.d.ts.map +1 -1
- package/build/sdk/contracts/jsonValue.js +5 -0
- package/build/sdk/contracts/jsonValue.js.map +1 -1
- package/build/sdk/contracts/protocol.d.ts +3 -1
- package/build/sdk/contracts/protocol.d.ts.map +1 -1
- package/build/sdk/contracts/protocol.js +9 -1
- package/build/sdk/contracts/protocol.js.map +1 -1
- package/build/sdk/legacy/auth/sdkOAuthClientProvider.d.ts +2 -0
- package/build/sdk/legacy/auth/sdkOAuthClientProvider.d.ts.map +1 -1
- package/build/sdk/legacy/auth/sdkOAuthClientProvider.js +30 -8
- package/build/sdk/legacy/auth/sdkOAuthClientProvider.js.map +1 -1
- package/build/sdk/legacy/client/runtime/legacyGatewayClientAdapter.d.ts.map +1 -1
- package/build/sdk/legacy/client/runtime/legacyGatewayClientAdapter.js +2 -2
- package/build/sdk/legacy/client/runtime/legacyGatewayClientAdapter.js.map +1 -1
- package/build/sdk/legacy/client/runtime/legacySdkClientAdapter.d.ts.map +1 -1
- package/build/sdk/legacy/client/runtime/legacySdkClientAdapter.js +3 -0
- package/build/sdk/legacy/client/runtime/legacySdkClientAdapter.js.map +1 -1
- package/build/sdk/legacy/client/runtime/modernSdkClientAdapter.d.ts.map +1 -1
- package/build/sdk/legacy/client/runtime/modernSdkClientAdapter.js +5 -3
- package/build/sdk/legacy/client/runtime/modernSdkClientAdapter.js.map +1 -1
- package/build/sdk/legacy/commands/serve.d.ts +1 -0
- package/build/sdk/legacy/commands/serve.d.ts.map +1 -1
- package/build/sdk/legacy/commands/serve.js +30 -1
- package/build/sdk/legacy/commands/serve.js.map +1 -1
- package/build/sdk/legacy/server/runtime/connectionManager.d.ts.map +1 -1
- package/build/sdk/legacy/server/runtime/connectionManager.js +1 -1
- package/build/sdk/legacy/server/runtime/connectionManager.js.map +1 -1
- package/build/sdk/legacy/server/runtime/legacySdkServerAdapter.d.ts +3 -1
- package/build/sdk/legacy/server/runtime/legacySdkServerAdapter.d.ts.map +1 -1
- package/build/sdk/legacy/server/runtime/legacySdkServerAdapter.js +52 -2
- package/build/sdk/legacy/server/runtime/legacySdkServerAdapter.js.map +1 -1
- package/build/sdk/legacy/shared/capabilityListCapture.d.ts.map +1 -1
- package/build/sdk/legacy/shared/capabilityListCapture.js +5 -2
- package/build/sdk/legacy/shared/capabilityListCapture.js.map +1 -1
- package/build/sdk/legacy/shared/schemaProjection.d.ts.map +1 -1
- package/build/sdk/legacy/shared/schemaProjection.js +8 -4
- package/build/sdk/legacy/shared/schemaProjection.js.map +1 -1
- package/build/sdk/legacy/transport/http/server.d.ts +1 -1
- package/build/sdk/legacy/transport/http/server.d.ts.map +1 -1
- package/build/sdk/legacy/transport/http/server.js +5 -1
- package/build/sdk/legacy/transport/http/server.js.map +1 -1
- package/build/sdk/legacy/transport/transportFactory.d.ts.map +1 -1
- package/build/sdk/legacy/transport/transportFactory.js +2 -0
- package/build/sdk/legacy/transport/transportFactory.js.map +1 -1
- package/build/transport/http/routes/adminRoutes.d.ts.map +1 -1
- package/build/transport/http/routes/adminRoutes.js +2 -0
- package/build/transport/http/routes/adminRoutes.js.map +1 -1
- package/build/transport/http/routes/inspectRoutes.d.ts +2 -0
- package/build/transport/http/routes/inspectRoutes.d.ts.map +1 -1
- package/build/transport/http/routes/inspectRoutes.js +28 -4
- package/build/transport/http/routes/inspectRoutes.js.map +1 -1
- package/build/transport/http/routes/modernHttpRoutes.d.ts.map +1 -1
- package/build/transport/http/routes/modernHttpRoutes.js +6 -5
- package/build/transport/http/routes/modernHttpRoutes.js.map +1 -1
- package/build/transport/http/routes/modernProductTelemetry.d.ts +4 -0
- package/build/transport/http/routes/modernProductTelemetry.d.ts.map +1 -0
- package/build/transport/http/routes/modernProductTelemetry.js +65 -0
- package/build/transport/http/routes/modernProductTelemetry.js.map +1 -0
- package/build/transport/http/routes/modernSubscriptions.d.ts.map +1 -1
- package/build/transport/http/routes/modernSubscriptions.js +28 -12
- package/build/transport/http/routes/modernSubscriptions.js.map +1 -1
- package/build/transport/http/routes/preparationRoutes.d.ts +2 -2
- package/build/transport/http/routes/projectRoutes.d.ts +1 -1
- package/build/transport/http/routes/streamableHttpRoutes.d.ts.map +1 -1
- package/build/transport/http/routes/streamableHttpRoutes.js +6 -0
- package/build/transport/http/routes/streamableHttpRoutes.js.map +1 -1
- package/build/utils/core/errorHandling.js +2 -2
- package/build/utils/core/errorHandling.js.map +1 -1
- package/build/utils/security/privateFileSystem.d.ts +12 -0
- package/build/utils/security/privateFileSystem.d.ts.map +1 -0
- package/build/utils/security/privateFileSystem.js +114 -0
- package/build/utils/security/privateFileSystem.js.map +1 -0
- package/package.json +9 -7
- package/build/admin/assets/admin-console-DVuqABnE.js +0 -3
|
@@ -0,0 +1,142 @@
|
|
|
1
|
+
import { pathToFileURL } from 'node:url';
|
|
2
|
+
import { Worker } from 'node:worker_threads';
|
|
3
|
+
import { createRequire } from 'node:module';
|
|
4
|
+
const COLLECTOR = 'https://ingest.1mcp.app/v1/summaries';
|
|
5
|
+
const MAX_ACTIVE = 2;
|
|
6
|
+
const active = new Map();
|
|
7
|
+
// SEA embeds compatibility modules; npm runtimes resolve their installed dependencies.
|
|
8
|
+
const SEND_ONCE = `
|
|
9
|
+
const { workerData, parentPort } = require('node:worker_threads');
|
|
10
|
+
(async () => {
|
|
11
|
+
const url = new URL(workerData.endpoint);
|
|
12
|
+
if (url.protocol !== 'https:' && url.protocol !== 'http:') throw new Error('unsupported');
|
|
13
|
+
let address = url;
|
|
14
|
+
let transport = require(url.protocol === 'https:' ? 'node:https' : 'node:http');
|
|
15
|
+
const options = { method: 'POST', headers: { 'content-type': 'application/json' } };
|
|
16
|
+
let agent;
|
|
17
|
+
if (workerData.proxyModules) {
|
|
18
|
+
const { getProxyForUrl } = await import(workerData.proxyModules.environment);
|
|
19
|
+
const proxy = getProxyForUrl(url.href);
|
|
20
|
+
if (proxy) {
|
|
21
|
+
const parsed = new URL(proxy);
|
|
22
|
+
if (parsed.protocol !== 'http:' && parsed.protocol !== 'https:') throw new Error('unsupported_proxy');
|
|
23
|
+
if (url.protocol === 'https:') {
|
|
24
|
+
const { HttpsProxyAgent } = await import(workerData.proxyModules.https);
|
|
25
|
+
agent = new HttpsProxyAgent(parsed);
|
|
26
|
+
} else {
|
|
27
|
+
address = parsed;
|
|
28
|
+
transport = require(parsed.protocol === 'https:' ? 'node:https' : 'node:http');
|
|
29
|
+
options.path = url.href;
|
|
30
|
+
options.headers.host = url.host;
|
|
31
|
+
if (parsed.username || parsed.password) {
|
|
32
|
+
const credentials = decodeURIComponent(parsed.username) + ':' + decodeURIComponent(parsed.password);
|
|
33
|
+
options.headers['proxy-authorization'] = 'Basic ' + Buffer.from(credentials).toString('base64');
|
|
34
|
+
parsed.username = '';
|
|
35
|
+
parsed.password = '';
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
agent ??= new transport.Agent({ keepAlive: false });
|
|
40
|
+
} else {
|
|
41
|
+
agent = new transport.Agent({ keepAlive: false, proxyEnv: process.env });
|
|
42
|
+
}
|
|
43
|
+
const request = transport.request(address, { ...options, agent });
|
|
44
|
+
const close = () => { request.destroy(); agent.destroy(); parentPort.close(); };
|
|
45
|
+
request.on('error', close);
|
|
46
|
+
request.on('response', response => {
|
|
47
|
+
response.resume();
|
|
48
|
+
response.on('end', close);
|
|
49
|
+
response.on('error', close);
|
|
50
|
+
});
|
|
51
|
+
request.on('socket', socket => {
|
|
52
|
+
const ready = () => parentPort.postMessage('ready');
|
|
53
|
+
if (socket.encrypted && socket.secureConnecting) socket.once('secureConnect', ready);
|
|
54
|
+
else if (socket.connecting) socket.once('connect', ready);
|
|
55
|
+
else ready();
|
|
56
|
+
});
|
|
57
|
+
parentPort.once('message', body => {
|
|
58
|
+
request.setHeader('content-length', Buffer.byteLength(body));
|
|
59
|
+
request.end(body);
|
|
60
|
+
});
|
|
61
|
+
})().catch(() => { parentPort.close(); process.exitCode = 1; });
|
|
62
|
+
`;
|
|
63
|
+
/** Connect without a payload or a durable claim. Preparation cannot retain the foreground process. */
|
|
64
|
+
export function prepareProductDelivery(endpoint = COLLECTOR) {
|
|
65
|
+
if (active.size >= MAX_ACTIVE)
|
|
66
|
+
return Promise.resolve(undefined);
|
|
67
|
+
return new Promise((resolve) => {
|
|
68
|
+
const [major, minor] = process.versions.node.split('.').map(Number);
|
|
69
|
+
const nativeProxy = major >= 25 || (major === 24 && minor >= 5) || (major === 22 && minor >= 21);
|
|
70
|
+
let proxyModules;
|
|
71
|
+
if (!nativeProxy) {
|
|
72
|
+
const embedded = globalThis
|
|
73
|
+
.__1MCP_TELEMETRY_PROXY_MODULE__;
|
|
74
|
+
if (embedded) {
|
|
75
|
+
proxyModules = { environment: embedded, https: embedded };
|
|
76
|
+
}
|
|
77
|
+
else {
|
|
78
|
+
const resolver = createRequire(import.meta.url);
|
|
79
|
+
proxyModules = {
|
|
80
|
+
environment: pathToFileURL(resolver.resolve('proxy-from-env')).href,
|
|
81
|
+
https: pathToFileURL(resolver.resolve('https-proxy-agent')).href,
|
|
82
|
+
};
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
const worker = new Worker(SEND_ONCE, {
|
|
86
|
+
eval: true,
|
|
87
|
+
execArgv: [],
|
|
88
|
+
// Proxy libraries and native HTTP diagnostics must never print credentials or payloads.
|
|
89
|
+
env: { ...process.env, DEBUG: '', NODE_DEBUG: '', NODE_DEBUG_NATIVE: '' },
|
|
90
|
+
workerData: { endpoint, proxyModules },
|
|
91
|
+
name: 'product-usage-delivery',
|
|
92
|
+
});
|
|
93
|
+
let ready = false;
|
|
94
|
+
let cancelled = false;
|
|
95
|
+
const cancel = () => {
|
|
96
|
+
cancelled = true;
|
|
97
|
+
ready = false;
|
|
98
|
+
void worker.terminate().catch(() => { });
|
|
99
|
+
resolve(undefined);
|
|
100
|
+
};
|
|
101
|
+
active.set(worker, cancel);
|
|
102
|
+
const deadline = setTimeout(cancel, 10_000);
|
|
103
|
+
deadline.unref();
|
|
104
|
+
worker.on('error', cancel);
|
|
105
|
+
worker.once('message', (message) => {
|
|
106
|
+
if (message !== 'ready')
|
|
107
|
+
return;
|
|
108
|
+
if (cancelled)
|
|
109
|
+
return;
|
|
110
|
+
ready = true;
|
|
111
|
+
resolve({
|
|
112
|
+
isReady: () => ready,
|
|
113
|
+
cancel,
|
|
114
|
+
dispatch: (body) => {
|
|
115
|
+
if (!ready)
|
|
116
|
+
return;
|
|
117
|
+
ready = false;
|
|
118
|
+
worker.postMessage(body);
|
|
119
|
+
},
|
|
120
|
+
});
|
|
121
|
+
});
|
|
122
|
+
worker.once('exit', () => {
|
|
123
|
+
ready = false;
|
|
124
|
+
active.delete(worker);
|
|
125
|
+
clearTimeout(deadline);
|
|
126
|
+
resolve(undefined);
|
|
127
|
+
});
|
|
128
|
+
worker.unref();
|
|
129
|
+
});
|
|
130
|
+
}
|
|
131
|
+
/** Adapter for explicit serialized fixtures; live producers prepare before their final durable claim. */
|
|
132
|
+
export function dispatchProductBatch(body, endpoint = COLLECTOR) {
|
|
133
|
+
void prepareProductDelivery(endpoint)
|
|
134
|
+
.then((delivery) => delivery?.dispatch(body))
|
|
135
|
+
.catch(() => { });
|
|
136
|
+
}
|
|
137
|
+
/** Best effort: bytes already transmitted cannot be recalled. */
|
|
138
|
+
export function abortProductDelivery() {
|
|
139
|
+
for (const cancel of active.values())
|
|
140
|
+
cancel();
|
|
141
|
+
}
|
|
142
|
+
//# sourceMappingURL=delivery.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"delivery.js","sourceRoot":"","sources":["../../src/productTelemetry/delivery.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { InstallationStore } from './installationStore.js';
|
|
2
|
+
import { type CommandCompletion, type CommandName, type FeatureName, type OperationName } from './producer.js';
|
|
3
|
+
export { PRODUCT_NOTICE } from './notice.js';
|
|
4
|
+
export declare function localInstallationStore(background?: boolean): InstallationStore;
|
|
5
|
+
export declare function beginProductCommand(name: CommandName): CommandCompletion;
|
|
6
|
+
export declare function beginProductFeature(name: FeatureName): CommandCompletion;
|
|
7
|
+
export declare function recordProductFeature(name: FeatureName, outcome: 'success' | 'failure'): void;
|
|
8
|
+
export declare function beginProductOperation(name: OperationName, transport: 'none' | 'stdio' | 'http' | 'sse', client: 'none' | 'claude' | 'codex' | 'cursor' | 'vscode' | 'other'): CommandCompletion;
|
|
9
|
+
export declare function recordProductOperation(name: OperationName, outcome: 'success' | 'failure', transport: 'none' | 'stdio' | 'http' | 'sse', client: 'none' | 'claude' | 'codex' | 'cursor' | 'vscode' | 'other'): void;
|
|
10
|
+
export declare function observeProductRuntimeConfiguration(name: 'servers' | 'tools', count: number): void;
|
|
11
|
+
/** Snapshot only: attaches finite buckets to the next genuine activity. */
|
|
12
|
+
export declare function observeProductConfiguration(name: 'servers' | 'tools', count: number): void;
|
|
13
|
+
/** One invocation owns readiness/failure/cancellation; shutdown creates no outcome. */
|
|
14
|
+
export declare function beginProductStartup(name: 'serve' | 'proxy' | 'runtime_start'): CommandCompletion;
|
|
15
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/productTelemetry/index.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAE3D,OAAO,EACL,KAAK,iBAAiB,EACtB,KAAK,WAAW,EAChB,KAAK,WAAW,EAChB,KAAK,aAAa,EAEnB,MAAM,eAAe,CAAC;AAGvB,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAE7C,wBAAgB,sBAAsB,CAAC,UAAU,UAAQ,GAAG,iBAAiB,CAK5E;AA4BD,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,WAAW,GAAG,iBAAiB,CAExE;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,WAAW,GAAG,iBAAiB,CAExE;AAED,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,SAAS,GAAG,SAAS,GAAG,IAAI,CAE5F;AAED,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,aAAa,EACnB,SAAS,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,GAAG,KAAK,EAC5C,MAAM,EAAE,MAAM,GAAG,QAAQ,GAAG,OAAO,GAAG,QAAQ,GAAG,QAAQ,GAAG,OAAO,GAClE,iBAAiB,CAEnB;AAED,wBAAgB,sBAAsB,CACpC,IAAI,EAAE,aAAa,EACnB,OAAO,EAAE,SAAS,GAAG,SAAS,EAC9B,SAAS,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,GAAG,KAAK,EAC5C,MAAM,EAAE,MAAM,GAAG,QAAQ,GAAG,OAAO,GAAG,QAAQ,GAAG,QAAQ,GAAG,OAAO,GAClE,IAAI,CAEN;AAED,wBAAgB,kCAAkC,CAAC,IAAI,EAAE,SAAS,GAAG,OAAO,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAEjG;AAED,2EAA2E;AAC3E,wBAAgB,2BAA2B,CAAC,IAAI,EAAE,SAAS,GAAG,OAAO,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAE1F;AAED,uFAAuF;AACvF,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,GAAG,eAAe,GAAG,iBAAiB,CAyBhG"}
|
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
import path from 'node:path';
|
|
2
|
+
import { getProductCollectionPolicy, initializeProductTelemetry, productCollectionEnabled, } from '../config/productTelemetryBootstrap.js';
|
|
3
|
+
import { MCP_SERVER_VERSION } from '../constants.js';
|
|
4
|
+
import { getGlobalConfigDir } from '../constants/paths.js';
|
|
5
|
+
import { abortProductDelivery, dispatchProductBatch, prepareProductDelivery } from './delivery.js';
|
|
6
|
+
import { InstallationStore } from './installationStore.js';
|
|
7
|
+
import { writeProductNotice } from './notice.js';
|
|
8
|
+
import { ProductUsageProducer, } from './producer.js';
|
|
9
|
+
let producer;
|
|
10
|
+
export { PRODUCT_NOTICE } from './notice.js';
|
|
11
|
+
export function localInstallationStore(background = false) {
|
|
12
|
+
return new InstallationStore(path.join(getGlobalConfigDir(), 'product-telemetry'), {
|
|
13
|
+
background,
|
|
14
|
+
notice: writeProductNotice,
|
|
15
|
+
});
|
|
16
|
+
}
|
|
17
|
+
function collection() {
|
|
18
|
+
if (!productCollectionEnabled())
|
|
19
|
+
return;
|
|
20
|
+
try {
|
|
21
|
+
return initializeProductTelemetry(() => {
|
|
22
|
+
const policy = getProductCollectionPolicy();
|
|
23
|
+
producer ??= new ProductUsageProducer({
|
|
24
|
+
store: localInstallationStore(true),
|
|
25
|
+
now: Date.now,
|
|
26
|
+
dispatch: dispatchProductBatch,
|
|
27
|
+
prepareDelivery: prepareProductDelivery,
|
|
28
|
+
abortDelivery: abortProductDelivery,
|
|
29
|
+
dimensions: {
|
|
30
|
+
version: MCP_SERVER_VERSION,
|
|
31
|
+
os: platform(),
|
|
32
|
+
arch: architecture(),
|
|
33
|
+
node_major: Number(process.versions.node.split('.')[0]),
|
|
34
|
+
ci: policy.ci,
|
|
35
|
+
},
|
|
36
|
+
});
|
|
37
|
+
return producer;
|
|
38
|
+
});
|
|
39
|
+
}
|
|
40
|
+
catch {
|
|
41
|
+
return;
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
export function beginProductCommand(name) {
|
|
45
|
+
return collection()?.beginCommand(name) ?? { finish: () => { } };
|
|
46
|
+
}
|
|
47
|
+
export function beginProductFeature(name) {
|
|
48
|
+
return collection()?.beginFeature(name) ?? { finish: () => { } };
|
|
49
|
+
}
|
|
50
|
+
export function recordProductFeature(name, outcome) {
|
|
51
|
+
collection()?.recordFeature(name, outcome);
|
|
52
|
+
}
|
|
53
|
+
export function beginProductOperation(name, transport, client) {
|
|
54
|
+
return collection()?.beginOperation(name, transport, client) ?? { finish: () => { } };
|
|
55
|
+
}
|
|
56
|
+
export function recordProductOperation(name, outcome, transport, client) {
|
|
57
|
+
collection()?.recordOperation(name, outcome, transport, client);
|
|
58
|
+
}
|
|
59
|
+
export function observeProductRuntimeConfiguration(name, count) {
|
|
60
|
+
producer?.observeRuntimeConfiguration(name, count);
|
|
61
|
+
}
|
|
62
|
+
/** Snapshot only: attaches finite buckets to the next genuine activity. */
|
|
63
|
+
export function observeProductConfiguration(name, count) {
|
|
64
|
+
producer?.observeConfiguration(name, count);
|
|
65
|
+
}
|
|
66
|
+
/** One invocation owns readiness/failure/cancellation; shutdown creates no outcome. */
|
|
67
|
+
export function beginProductStartup(name) {
|
|
68
|
+
const runtime = collection();
|
|
69
|
+
if (!runtime)
|
|
70
|
+
return { finish: () => { } };
|
|
71
|
+
runtime.startRuntime();
|
|
72
|
+
const command = name === 'runtime_start' ? runtime.beginRuntimeStartup() : runtime.beginCommand(name);
|
|
73
|
+
let finished = false;
|
|
74
|
+
const signals = ['SIGINT', 'SIGTERM', 'SIGHUP'];
|
|
75
|
+
const handlers = signals.map((signal) => {
|
|
76
|
+
const handler = () => {
|
|
77
|
+
completion.finish('failure');
|
|
78
|
+
// Preserve the default signal action when no lifecycle owner installed a handler yet.
|
|
79
|
+
if (process.listenerCount(signal) === 0)
|
|
80
|
+
process.kill(process.pid, signal);
|
|
81
|
+
};
|
|
82
|
+
process.prependOnceListener(signal, handler);
|
|
83
|
+
return handler;
|
|
84
|
+
});
|
|
85
|
+
const completion = {
|
|
86
|
+
finish(outcome) {
|
|
87
|
+
if (finished)
|
|
88
|
+
return;
|
|
89
|
+
finished = true;
|
|
90
|
+
signals.forEach((signal, index) => process.removeListener(signal, handlers[index]));
|
|
91
|
+
command.finish(outcome);
|
|
92
|
+
},
|
|
93
|
+
};
|
|
94
|
+
return completion;
|
|
95
|
+
}
|
|
96
|
+
function platform() {
|
|
97
|
+
switch (process.platform) {
|
|
98
|
+
case 'linux':
|
|
99
|
+
case 'darwin':
|
|
100
|
+
case 'win32':
|
|
101
|
+
case 'freebsd':
|
|
102
|
+
return process.platform;
|
|
103
|
+
default:
|
|
104
|
+
return 'other';
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
function architecture() {
|
|
108
|
+
switch (process.arch) {
|
|
109
|
+
case 'x64':
|
|
110
|
+
case 'arm64':
|
|
111
|
+
case 'arm':
|
|
112
|
+
case 'ia32':
|
|
113
|
+
return process.arch;
|
|
114
|
+
default:
|
|
115
|
+
return 'other';
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/productTelemetry/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { type Summary } from './contract.js';
|
|
3
|
+
declare const stateSchema: z.ZodObject<{
|
|
4
|
+
format: z.ZodLiteral<1>;
|
|
5
|
+
epoch: z.ZodUUID;
|
|
6
|
+
generation: z.ZodNumber;
|
|
7
|
+
preference: z.ZodEnum<{
|
|
8
|
+
default: "default";
|
|
9
|
+
disabled: "disabled";
|
|
10
|
+
enabled: "enabled";
|
|
11
|
+
}>;
|
|
12
|
+
installationId: z.ZodOptional<z.ZodUUID>;
|
|
13
|
+
noticed: z.ZodBoolean;
|
|
14
|
+
queue: z.ZodArray<z.ZodObject<{
|
|
15
|
+
installation_id: z.ZodUUID;
|
|
16
|
+
occurred_at: z.ZodISODateTime;
|
|
17
|
+
version: z.ZodString;
|
|
18
|
+
os: z.ZodEnum<{
|
|
19
|
+
darwin: "darwin";
|
|
20
|
+
freebsd: "freebsd";
|
|
21
|
+
linux: "linux";
|
|
22
|
+
win32: "win32";
|
|
23
|
+
other: "other";
|
|
24
|
+
}>;
|
|
25
|
+
arch: z.ZodEnum<{
|
|
26
|
+
other: "other";
|
|
27
|
+
x64: "x64";
|
|
28
|
+
arm64: "arm64";
|
|
29
|
+
arm: "arm";
|
|
30
|
+
ia32: "ia32";
|
|
31
|
+
}>;
|
|
32
|
+
node_major: z.ZodNumber;
|
|
33
|
+
ci: z.ZodBoolean;
|
|
34
|
+
counters: z.ZodArray<z.ZodObject<{
|
|
35
|
+
kind: z.ZodEnum<{
|
|
36
|
+
command: "command";
|
|
37
|
+
configuration: "configuration";
|
|
38
|
+
feature: "feature";
|
|
39
|
+
operation: "operation";
|
|
40
|
+
}>;
|
|
41
|
+
name: z.ZodString;
|
|
42
|
+
outcome: z.ZodEnum<{
|
|
43
|
+
failure: "failure";
|
|
44
|
+
success: "success";
|
|
45
|
+
observation: "observation";
|
|
46
|
+
}>;
|
|
47
|
+
transport: z.ZodEnum<{
|
|
48
|
+
http: "http";
|
|
49
|
+
sse: "sse";
|
|
50
|
+
stdio: "stdio";
|
|
51
|
+
none: "none";
|
|
52
|
+
}>;
|
|
53
|
+
client: z.ZodEnum<{
|
|
54
|
+
other: "other";
|
|
55
|
+
none: "none";
|
|
56
|
+
claude: "claude";
|
|
57
|
+
codex: "codex";
|
|
58
|
+
cursor: "cursor";
|
|
59
|
+
vscode: "vscode";
|
|
60
|
+
}>;
|
|
61
|
+
bucket: z.ZodEnum<{
|
|
62
|
+
1: "1";
|
|
63
|
+
0: "0";
|
|
64
|
+
none: "none";
|
|
65
|
+
"2-5": "2-5";
|
|
66
|
+
"6-20": "6-20";
|
|
67
|
+
"21-100": "21-100";
|
|
68
|
+
"101+": "101+";
|
|
69
|
+
}>;
|
|
70
|
+
count: z.ZodNumber;
|
|
71
|
+
}, z.core.$strict>>;
|
|
72
|
+
}, z.core.$strict>>;
|
|
73
|
+
}, z.core.$strict>;
|
|
74
|
+
type State = z.infer<typeof stateSchema>;
|
|
75
|
+
export interface PreparedDelivery {
|
|
76
|
+
dispatch(body: string): void;
|
|
77
|
+
cancel(): void;
|
|
78
|
+
isReady(): boolean;
|
|
79
|
+
}
|
|
80
|
+
export type PrepareDelivery = () => Promise<PreparedDelivery | undefined>;
|
|
81
|
+
export interface AdmissionTicket {
|
|
82
|
+
readonly epoch: string;
|
|
83
|
+
readonly generation: number;
|
|
84
|
+
readonly installationId: string;
|
|
85
|
+
}
|
|
86
|
+
export interface InstallationStatus {
|
|
87
|
+
preference: State['preference'];
|
|
88
|
+
identityPresent: boolean;
|
|
89
|
+
queuedSummaries: number;
|
|
90
|
+
coordination: 'available' | 'busy-or-ambiguous';
|
|
91
|
+
recovery: 'not-needed' | 'wait' | 'automatic' | 'offline-required';
|
|
92
|
+
}
|
|
93
|
+
export declare class InstallationStore {
|
|
94
|
+
private readonly root;
|
|
95
|
+
private readonly options;
|
|
96
|
+
constructor(root: string, options: {
|
|
97
|
+
notice: () => void | Promise<void>;
|
|
98
|
+
now?: () => number;
|
|
99
|
+
background?: boolean;
|
|
100
|
+
});
|
|
101
|
+
status(): Promise<InstallationStatus>;
|
|
102
|
+
control(action: 'enable' | 'disable' | 'reset'): Promise<void>;
|
|
103
|
+
admit(): Promise<AdmissionTicket | undefined>;
|
|
104
|
+
/** Read-only live-control observation; never creates an identity or admits activity. */
|
|
105
|
+
isCurrent(ticket: AdmissionTicket): Promise<boolean>;
|
|
106
|
+
append(ticket: AdmissionTicket, facts: Omit<Summary, 'installation_id'>): Promise<boolean>;
|
|
107
|
+
/** A durable final claim precedes payload handoff, within the generation lock. Prepare outside that lock. */
|
|
108
|
+
attemptSend(ticket: AdmissionTicket, dispatch: (body: string) => void | Promise<void>, prepare?: PrepareDelivery): Promise<void>;
|
|
109
|
+
private now;
|
|
110
|
+
private checkRoot;
|
|
111
|
+
private read;
|
|
112
|
+
private commit;
|
|
113
|
+
private cleanOrphanedWrites;
|
|
114
|
+
/** Legacy producers still share this guard; only verified dead owners may be recovered. */
|
|
115
|
+
private transaction;
|
|
116
|
+
}
|
|
117
|
+
export {};
|
|
118
|
+
//# sourceMappingURL=installationStore.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"installationStore.d.ts","sourceRoot":"","sources":["../../src/productTelemetry/installationStore.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAiC,KAAK,OAAO,EAAiB,MAAM,eAAe,CAAC;AAK3F,QAAA,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAQf,CAAC;AACH,KAAK,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,WAAW,CAAC,CAAC;AACzC,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,MAAM,IAAI,IAAI,CAAC;IACf,OAAO,IAAI,OAAO,CAAC;CACpB;AACD,MAAM,MAAM,eAAe,GAAG,MAAM,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC,CAAC;AAE1E,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;CACjC;AACD,MAAM,WAAW,kBAAkB;IACjC,UAAU,EAAE,KAAK,CAAC,YAAY,CAAC,CAAC;IAChC,eAAe,EAAE,OAAO,CAAC;IACzB,eAAe,EAAE,MAAM,CAAC;IACxB,YAAY,EAAE,WAAW,GAAG,mBAAmB,CAAC;IAChD,QAAQ,EAAE,YAAY,GAAG,MAAM,GAAG,WAAW,GAAG,kBAAkB,CAAC;CACpE;AAUD,qBAAa,iBAAiB;IAE1B,OAAO,CAAC,QAAQ,CAAC,IAAI;IACrB,OAAO,CAAC,QAAQ,CAAC,OAAO;gBADP,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE;QAAE,MAAM,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;QAAC,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;QAAC,UAAU,CAAC,EAAE,OAAO,CAAA;KAAE;IAGtG,MAAM,IAAI,OAAO,CAAC,kBAAkB,CAAC;IAarC,OAAO,CAAC,MAAM,EAAE,QAAQ,GAAG,SAAS,GAAG,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAc9D,KAAK,IAAI,OAAO,CAAC,eAAe,GAAG,SAAS,CAAC;IAcnD,wFAAwF;IAClF,SAAS,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,OAAO,CAAC;IAKpD,MAAM,CAAC,MAAM,EAAE,eAAe,EAAE,KAAK,EAAE,IAAI,CAAC,OAAO,EAAE,iBAAiB,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC;IAyChG,6GAA6G;IACvG,WAAW,CACf,MAAM,EAAE,eAAe,EACvB,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,EAChD,OAAO,CAAC,EAAE,eAAe,GACxB,OAAO,CAAC,IAAI,CAAC;IAgDhB,OAAO,CAAC,GAAG;YAIG,SAAS;YAaT,IAAI;YAqBJ,MAAM;YA0BN,mBAAmB;IAWjC,2FAA2F;YAC7E,WAAW;CA+C1B"}
|