@adcp/sdk 12.0.0 → 12.0.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/dist/lib/adapters/content-standards-adapter.mjs +0 -6
- package/dist/lib/adapters/content-standards-adapter.mjs.map +1 -1
- package/dist/lib/adapters/derived-account-store.mjs +0 -6
- package/dist/lib/adapters/derived-account-store.mjs.map +1 -1
- package/dist/lib/adapters/governance-adapter.mjs +0 -6
- package/dist/lib/adapters/governance-adapter.mjs.map +1 -1
- package/dist/lib/adapters/implicit-account-store.mjs +0 -6
- package/dist/lib/adapters/implicit-account-store.mjs.map +1 -1
- package/dist/lib/adapters/index.mjs +0 -6
- package/dist/lib/adapters/index.mjs.map +1 -1
- package/dist/lib/adapters/legacy/v2-5/create_media_buy.mjs +0 -6
- package/dist/lib/adapters/legacy/v2-5/create_media_buy.mjs.map +1 -1
- package/dist/lib/adapters/legacy/v2-5/get_products.mjs +0 -6
- package/dist/lib/adapters/legacy/v2-5/get_products.mjs.map +1 -1
- package/dist/lib/adapters/legacy/v2-5/index.mjs +0 -6
- package/dist/lib/adapters/legacy/v2-5/index.mjs.map +1 -1
- package/dist/lib/adapters/legacy/v2-5/list_creative_formats.mjs +0 -6
- package/dist/lib/adapters/legacy/v2-5/list_creative_formats.mjs.map +1 -1
- package/dist/lib/adapters/legacy/v2-5/preview_creative.mjs +0 -6
- package/dist/lib/adapters/legacy/v2-5/preview_creative.mjs.map +1 -1
- package/dist/lib/adapters/legacy/v2-5/sync_creatives.mjs +0 -6
- package/dist/lib/adapters/legacy/v2-5/sync_creatives.mjs.map +1 -1
- package/dist/lib/adapters/legacy/v2-5/types.mjs +0 -6
- package/dist/lib/adapters/legacy/v2-5/update_media_buy.mjs +0 -6
- package/dist/lib/adapters/legacy/v2-5/update_media_buy.mjs.map +1 -1
- package/dist/lib/adapters/oauth-passthrough-resolver.mjs +0 -6
- package/dist/lib/adapters/oauth-passthrough-resolver.mjs.map +1 -1
- package/dist/lib/adapters/property-list-adapter.mjs +0 -6
- package/dist/lib/adapters/property-list-adapter.mjs.map +1 -1
- package/dist/lib/adapters/roster-account-store.mjs +0 -6
- package/dist/lib/adapters/roster-account-store.mjs.map +1 -1
- package/dist/lib/adapters/si-session-manager.mjs +0 -6
- package/dist/lib/adapters/si-session-manager.mjs.map +1 -1
- package/dist/lib/adapters/version/3.0/brand-fields.mjs +0 -6
- package/dist/lib/adapters/version/3.0/brand-fields.mjs.map +1 -1
- package/dist/lib/adapters/version/3.0/get-products.mjs +0 -6
- package/dist/lib/adapters/version/3.0/get-products.mjs.map +1 -1
- package/dist/lib/adapters/version/3.0/index.mjs +0 -6
- package/dist/lib/adapters/version/3.0/index.mjs.map +1 -1
- package/dist/lib/adapters/version/3.0/sync-accounts.mjs +0 -6
- package/dist/lib/adapters/version/3.0/sync-accounts.mjs.map +1 -1
- package/dist/lib/adapters/version/index.mjs +0 -6
- package/dist/lib/adapters/version/index.mjs.map +1 -1
- package/dist/lib/adapters/version/types.mjs +0 -6
- package/dist/lib/advanced.mjs +0 -6
- package/dist/lib/advanced.mjs.map +1 -1
- package/dist/lib/agents/index.generated.mjs +0 -6
- package/dist/lib/agents/index.generated.mjs.map +1 -1
- package/dist/lib/auth/index.mjs +0 -6
- package/dist/lib/auth/index.mjs.map +1 -1
- package/dist/lib/auth/oauth/CLIFlowHandler.mjs +0 -6
- package/dist/lib/auth/oauth/CLIFlowHandler.mjs.map +1 -1
- package/dist/lib/auth/oauth/ClientCredentialsFlow.mjs +0 -6
- package/dist/lib/auth/oauth/ClientCredentialsFlow.mjs.map +1 -1
- package/dist/lib/auth/oauth/MCPOAuthProvider.mjs +0 -6
- package/dist/lib/auth/oauth/MCPOAuthProvider.mjs.map +1 -1
- package/dist/lib/auth/oauth/NonInteractiveFlowHandler.mjs +0 -6
- package/dist/lib/auth/oauth/NonInteractiveFlowHandler.mjs.map +1 -1
- package/dist/lib/auth/oauth/authorization-required.mjs +0 -6
- package/dist/lib/auth/oauth/authorization-required.mjs.map +1 -1
- package/dist/lib/auth/oauth/diagnose.mjs +0 -6
- package/dist/lib/auth/oauth/diagnose.mjs.map +1 -1
- package/dist/lib/auth/oauth/diagnostics.mjs +0 -6
- package/dist/lib/auth/oauth/diagnostics.mjs.map +1 -1
- package/dist/lib/auth/oauth/discovery.mjs +0 -6
- package/dist/lib/auth/oauth/discovery.mjs.map +1 -1
- package/dist/lib/auth/oauth/file-storage.mjs +0 -6
- package/dist/lib/auth/oauth/file-storage.mjs.map +1 -1
- package/dist/lib/auth/oauth/index.mjs +0 -6
- package/dist/lib/auth/oauth/index.mjs.map +1 -1
- package/dist/lib/auth/oauth/secret-resolver.mjs +0 -6
- package/dist/lib/auth/oauth/secret-resolver.mjs.map +1 -1
- package/dist/lib/auth/oauth/storage-registry.mjs +0 -6
- package/dist/lib/auth/oauth/storage-registry.mjs.map +1 -1
- package/dist/lib/auth/oauth/types.mjs +0 -6
- package/dist/lib/auth/oauth/types.mjs.map +1 -1
- package/dist/lib/auth/oauth/web-flow.mjs +0 -6
- package/dist/lib/auth/oauth/web-flow.mjs.map +1 -1
- package/dist/lib/brand/index.mjs +0 -6
- package/dist/lib/brand/index.mjs.map +1 -1
- package/dist/lib/canonical-references/index.mjs +6 -7
- package/dist/lib/canonical-references/index.mjs.map +1 -1
- package/dist/lib/client/index.mjs +0 -6
- package/dist/lib/client/index.mjs.map +1 -1
- package/dist/lib/compliance/index.mjs +0 -6
- package/dist/lib/compliance/index.mjs.map +1 -1
- package/dist/lib/compliance-fixtures/index.mjs +0 -6
- package/dist/lib/compliance-fixtures/index.mjs.map +1 -1
- package/dist/lib/compliance-fixtures/test-authorization-server.mjs +0 -6
- package/dist/lib/compliance-fixtures/test-authorization-server.mjs.map +1 -1
- package/dist/lib/conformance/index.mjs +0 -6
- package/dist/lib/conformance/index.mjs.map +1 -1
- package/dist/lib/conformance/invariants/uniformError.mjs +0 -6
- package/dist/lib/conformance/invariants/uniformError.mjs.map +1 -1
- package/dist/lib/conformance/invariants/uniformErrorComparator.mjs +0 -6
- package/dist/lib/conformance/invariants/uniformErrorComparator.mjs.map +1 -1
- package/dist/lib/conformance/oracle.mjs +0 -6
- package/dist/lib/conformance/oracle.mjs.map +1 -1
- package/dist/lib/conformance/runConformance.mjs +0 -6
- package/dist/lib/conformance/runConformance.mjs.map +1 -1
- package/dist/lib/conformance/runners.mjs +0 -6
- package/dist/lib/conformance/runners.mjs.map +1 -1
- package/dist/lib/conformance/schemaArbitrary.mjs +0 -6
- package/dist/lib/conformance/schemaArbitrary.mjs.map +1 -1
- package/dist/lib/conformance/schemaLoader.mjs +5 -6
- package/dist/lib/conformance/schemaLoader.mjs.map +1 -1
- package/dist/lib/conformance/seeder.mjs +0 -6
- package/dist/lib/conformance/seeder.mjs.map +1 -1
- package/dist/lib/conformance/types.mjs +0 -6
- package/dist/lib/conformance/types.mjs.map +1 -1
- package/dist/lib/conformance/webhook.mjs +0 -6
- package/dist/lib/conformance/webhook.mjs.map +1 -1
- package/dist/lib/core/ADCPMultiAgentClient.mjs +0 -6
- package/dist/lib/core/ADCPMultiAgentClient.mjs.map +1 -1
- package/dist/lib/core/AgentClient.mjs +0 -6
- package/dist/lib/core/AgentClient.mjs.map +1 -1
- package/dist/lib/core/AsyncHandler.mjs +0 -6
- package/dist/lib/core/AsyncHandler.mjs.map +1 -1
- package/dist/lib/core/ConfigurationManager.mjs +0 -6
- package/dist/lib/core/ConfigurationManager.mjs.map +1 -1
- package/dist/lib/core/ConversationTypes.mjs +0 -6
- package/dist/lib/core/CreativeAgentClient.mjs +0 -6
- package/dist/lib/core/CreativeAgentClient.mjs.map +1 -1
- package/dist/lib/core/GovernanceMiddleware.mjs +0 -6
- package/dist/lib/core/GovernanceMiddleware.mjs.map +1 -1
- package/dist/lib/core/GovernanceTypes.mjs +0 -6
- package/dist/lib/core/GovernanceTypes.mjs.map +1 -1
- package/dist/lib/core/ProtocolResponseParser.mjs +0 -6
- package/dist/lib/core/ProtocolResponseParser.mjs.map +1 -1
- package/dist/lib/core/ResponseValidator.mjs +0 -6
- package/dist/lib/core/ResponseValidator.mjs.map +1 -1
- package/dist/lib/core/SingleAgentClient.mjs +0 -6
- package/dist/lib/core/SingleAgentClient.mjs.map +1 -1
- package/dist/lib/core/TaskEventTypes.mjs +0 -6
- package/dist/lib/core/TaskEventTypes.mjs.map +1 -1
- package/dist/lib/core/TaskExecutor.mjs +0 -6
- package/dist/lib/core/TaskExecutor.mjs.map +1 -1
- package/dist/lib/core/match.mjs +0 -6
- package/dist/lib/core/match.mjs.map +1 -1
- package/dist/lib/core/task-status.mjs +0 -6
- package/dist/lib/core/task-status.mjs.map +1 -1
- package/dist/lib/core/webhook-url.mjs +0 -6
- package/dist/lib/core/webhook-url.mjs.map +1 -1
- package/dist/lib/discovery/adagents-redirects.mjs +0 -6
- package/dist/lib/discovery/adagents-redirects.mjs.map +1 -1
- package/dist/lib/discovery/agent-directory.mjs +0 -6
- package/dist/lib/discovery/agent-directory.mjs.map +1 -1
- package/dist/lib/discovery/inline-publisher-properties.mjs +0 -6
- package/dist/lib/discovery/inline-publisher-properties.mjs.map +1 -1
- package/dist/lib/discovery/network-consistency-checker.mjs +0 -6
- package/dist/lib/discovery/network-consistency-checker.mjs.map +1 -1
- package/dist/lib/discovery/property-crawler.mjs +0 -6
- package/dist/lib/discovery/property-crawler.mjs.map +1 -1
- package/dist/lib/discovery/property-index.mjs +0 -6
- package/dist/lib/discovery/property-index.mjs.map +1 -1
- package/dist/lib/discovery/publisher-property-selector.mjs +0 -6
- package/dist/lib/discovery/publisher-property-selector.mjs.map +1 -1
- package/dist/lib/discovery/resolve-agent-properties.mjs +0 -6
- package/dist/lib/discovery/resolve-agent-properties.mjs.map +1 -1
- package/dist/lib/discovery/types.mjs +0 -6
- package/dist/lib/discovery/validate-adagents.mjs +0 -6
- package/dist/lib/discovery/validate-adagents.mjs.map +1 -1
- package/dist/lib/enums.mjs +0 -6
- package/dist/lib/enums.mjs.map +1 -1
- package/dist/lib/errors/index.mjs +0 -6
- package/dist/lib/errors/index.mjs.map +1 -1
- package/dist/lib/express-mcp/index.mjs +0 -6
- package/dist/lib/express-mcp/index.mjs.map +1 -1
- package/dist/lib/governance/index.mjs +0 -6
- package/dist/lib/governance/index.mjs.map +1 -1
- package/dist/lib/handlers/types.mjs +0 -6
- package/dist/lib/handlers/types.mjs.map +1 -1
- package/dist/lib/index.d.mts +1 -1
- package/dist/lib/index.d.ts +1 -1
- package/dist/lib/index.d.ts.map +1 -1
- package/dist/lib/index.js.map +1 -1
- package/dist/lib/index.mjs +0 -6
- package/dist/lib/index.mjs.map +1 -1
- package/dist/lib/media-buy/available-actions.mjs +0 -6
- package/dist/lib/media-buy/available-actions.mjs.map +1 -1
- package/dist/lib/media-buy/index.mjs +0 -6
- package/dist/lib/media-buy/index.mjs.map +1 -1
- package/dist/lib/media-buy/preflight.mjs +0 -6
- package/dist/lib/media-buy/preflight.mjs.map +1 -1
- package/dist/lib/media-buy/property-policy.mjs +0 -6
- package/dist/lib/media-buy/property-policy.mjs.map +1 -1
- package/dist/lib/media-buy/types.mjs +0 -6
- package/dist/lib/media-buy/types.mjs.map +1 -1
- package/dist/lib/media-buy/update-fields.generated.mjs +0 -6
- package/dist/lib/media-buy/update-fields.generated.mjs.map +1 -1
- package/dist/lib/mock-server/creative-ad-server/seed-data.mjs +0 -6
- package/dist/lib/mock-server/creative-ad-server/seed-data.mjs.map +1 -1
- package/dist/lib/mock-server/creative-ad-server/server.mjs +0 -6
- package/dist/lib/mock-server/creative-ad-server/server.mjs.map +1 -1
- package/dist/lib/mock-server/creative-template/seed-data.mjs +0 -6
- package/dist/lib/mock-server/creative-template/seed-data.mjs.map +1 -1
- package/dist/lib/mock-server/creative-template/server.mjs +0 -6
- package/dist/lib/mock-server/creative-template/server.mjs.map +1 -1
- package/dist/lib/mock-server/index.mjs +0 -6
- package/dist/lib/mock-server/index.mjs.map +1 -1
- package/dist/lib/mock-server/sales-guaranteed/recipe.mjs +0 -6
- package/dist/lib/mock-server/sales-guaranteed/recipe.mjs.map +1 -1
- package/dist/lib/mock-server/sales-guaranteed/seed-data.mjs +0 -6
- package/dist/lib/mock-server/sales-guaranteed/seed-data.mjs.map +1 -1
- package/dist/lib/mock-server/sales-guaranteed/server.mjs +0 -6
- package/dist/lib/mock-server/sales-guaranteed/server.mjs.map +1 -1
- package/dist/lib/mock-server/sales-non-guaranteed/recipe.mjs +0 -6
- package/dist/lib/mock-server/sales-non-guaranteed/recipe.mjs.map +1 -1
- package/dist/lib/mock-server/sales-non-guaranteed/seed-data.mjs +0 -6
- package/dist/lib/mock-server/sales-non-guaranteed/seed-data.mjs.map +1 -1
- package/dist/lib/mock-server/sales-non-guaranteed/server.mjs +0 -6
- package/dist/lib/mock-server/sales-non-guaranteed/server.mjs.map +1 -1
- package/dist/lib/mock-server/sales-social/seed-data.mjs +0 -6
- package/dist/lib/mock-server/sales-social/seed-data.mjs.map +1 -1
- package/dist/lib/mock-server/sales-social/server.mjs +0 -6
- package/dist/lib/mock-server/sales-social/server.mjs.map +1 -1
- package/dist/lib/mock-server/scenario.mjs +0 -6
- package/dist/lib/mock-server/scenario.mjs.map +1 -1
- package/dist/lib/mock-server/signal-marketplace/seed-data.mjs +0 -6
- package/dist/lib/mock-server/signal-marketplace/seed-data.mjs.map +1 -1
- package/dist/lib/mock-server/signal-marketplace/server.mjs +0 -6
- package/dist/lib/mock-server/signal-marketplace/server.mjs.map +1 -1
- package/dist/lib/mock-server/sponsored-intelligence/seed-data.mjs +0 -6
- package/dist/lib/mock-server/sponsored-intelligence/seed-data.mjs.map +1 -1
- package/dist/lib/mock-server/sponsored-intelligence/server.mjs +0 -6
- package/dist/lib/mock-server/sponsored-intelligence/server.mjs.map +1 -1
- package/dist/lib/net/address-guards.mjs +0 -6
- package/dist/lib/net/address-guards.mjs.map +1 -1
- package/dist/lib/net/index.mjs +0 -6
- package/dist/lib/net/index.mjs.map +1 -1
- package/dist/lib/net/ssrf-fetch.mjs +0 -6
- package/dist/lib/net/ssrf-fetch.mjs.map +1 -1
- package/dist/lib/observability/index.mjs +0 -6
- package/dist/lib/observability/index.mjs.map +1 -1
- package/dist/lib/observability/tracing.mjs +6 -7
- package/dist/lib/observability/tracing.mjs.map +1 -1
- package/dist/lib/protocols/a2a.mjs +0 -6
- package/dist/lib/protocols/a2a.mjs.map +1 -1
- package/dist/lib/protocols/abort.mjs +0 -6
- package/dist/lib/protocols/abort.mjs.map +1 -1
- package/dist/lib/protocols/index.mjs +0 -6
- package/dist/lib/protocols/index.mjs.map +1 -1
- package/dist/lib/protocols/mcp-modern.mjs +0 -6
- package/dist/lib/protocols/mcp-modern.mjs.map +1 -1
- package/dist/lib/protocols/mcp-tasks.mjs +0 -6
- package/dist/lib/protocols/mcp-tasks.mjs.map +1 -1
- package/dist/lib/protocols/mcp.mjs +0 -6
- package/dist/lib/protocols/mcp.mjs.map +1 -1
- package/dist/lib/protocols/rawResponseCapture.mjs +0 -6
- package/dist/lib/protocols/rawResponseCapture.mjs.map +1 -1
- package/dist/lib/protocols/responseSizeLimit.mjs +0 -6
- package/dist/lib/protocols/responseSizeLimit.mjs.map +1 -1
- package/dist/lib/protocols/transportDiagnostics.mjs +0 -6
- package/dist/lib/protocols/transportDiagnostics.mjs.map +1 -1
- package/dist/lib/registry/cursor-store.mjs +0 -6
- package/dist/lib/registry/cursor-store.mjs.map +1 -1
- package/dist/lib/registry/feed-stream.mjs +0 -6
- package/dist/lib/registry/feed-stream.mjs.map +1 -1
- package/dist/lib/registry/index.mjs +0 -6
- package/dist/lib/registry/index.mjs.map +1 -1
- package/dist/lib/registry/property-registry.mjs +0 -6
- package/dist/lib/registry/property-registry.mjs.map +1 -1
- package/dist/lib/registry/sync.mjs +0 -6
- package/dist/lib/registry/sync.mjs.map +1 -1
- package/dist/lib/registry/types.generated.mjs +0 -6
- package/dist/lib/registry/types.mjs +0 -6
- package/dist/lib/schemas/index.mjs +0 -6
- package/dist/lib/schemas/index.mjs.map +1 -1
- package/dist/lib/schemas-data/v2.5/_provenance.json +1 -1
- package/dist/lib/server/a2a-adapter.mjs +0 -6
- package/dist/lib/server/a2a-adapter.mjs.map +1 -1
- package/dist/lib/server/account-mode.mjs +0 -6
- package/dist/lib/server/account-mode.mjs.map +1 -1
- package/dist/lib/server/adcp-server.mjs +0 -6
- package/dist/lib/server/adcp-server.mjs.map +1 -1
- package/dist/lib/server/auth-introspection.mjs +0 -6
- package/dist/lib/server/auth-introspection.mjs.map +1 -1
- package/dist/lib/server/auth-signature.mjs +0 -6
- package/dist/lib/server/auth-signature.mjs.map +1 -1
- package/dist/lib/server/auth.mjs +0 -6
- package/dist/lib/server/auth.mjs.map +1 -1
- package/dist/lib/server/create-adcp-server.d.mts +13 -0
- package/dist/lib/server/create-adcp-server.d.ts +13 -0
- package/dist/lib/server/create-adcp-server.d.ts.map +1 -1
- package/dist/lib/server/create-adcp-server.js +3 -2
- package/dist/lib/server/create-adcp-server.js.map +1 -1
- package/dist/lib/server/create-adcp-server.mjs +3 -8
- package/dist/lib/server/create-adcp-server.mjs.map +1 -1
- package/dist/lib/server/credential-policy.mjs +0 -6
- package/dist/lib/server/credential-policy.mjs.map +1 -1
- package/dist/lib/server/ctx-metadata/backends/memory.mjs +0 -6
- package/dist/lib/server/ctx-metadata/backends/memory.mjs.map +1 -1
- package/dist/lib/server/ctx-metadata/backends/pg.mjs +0 -6
- package/dist/lib/server/ctx-metadata/backends/pg.mjs.map +1 -1
- package/dist/lib/server/ctx-metadata/backends/redis.mjs +0 -6
- package/dist/lib/server/ctx-metadata/backends/redis.mjs.map +1 -1
- package/dist/lib/server/ctx-metadata/index.mjs +0 -6
- package/dist/lib/server/ctx-metadata/index.mjs.map +1 -1
- package/dist/lib/server/ctx-metadata/store.mjs +0 -6
- package/dist/lib/server/ctx-metadata/store.mjs.map +1 -1
- package/dist/lib/server/ctx-metadata/wire-shape.mjs +0 -6
- package/dist/lib/server/ctx-metadata/wire-shape.mjs.map +1 -1
- package/dist/lib/server/decisioning/account.mjs +0 -6
- package/dist/lib/server/decisioning/account.mjs.map +1 -1
- package/dist/lib/server/decisioning/admin-router.mjs +0 -6
- package/dist/lib/server/decisioning/admin-router.mjs.map +1 -1
- package/dist/lib/server/decisioning/assembly-helpers.mjs +0 -6
- package/dist/lib/server/decisioning/assembly-helpers.mjs.map +1 -1
- package/dist/lib/server/decisioning/async-outcome.mjs +0 -6
- package/dist/lib/server/decisioning/async-outcome.mjs.map +1 -1
- package/dist/lib/server/decisioning/buyer-agent.mjs +0 -6
- package/dist/lib/server/decisioning/buyer-agent.mjs.map +1 -1
- package/dist/lib/server/decisioning/capabilities.mjs +0 -6
- package/dist/lib/server/decisioning/capabilities.mjs.map +1 -1
- package/dist/lib/server/decisioning/compose.mjs +0 -6
- package/dist/lib/server/decisioning/compose.mjs.map +1 -1
- package/dist/lib/server/decisioning/context.mjs +0 -6
- package/dist/lib/server/decisioning/errors-typed.mjs +0 -6
- package/dist/lib/server/decisioning/errors-typed.mjs.map +1 -1
- package/dist/lib/server/decisioning/helpers.mjs +0 -6
- package/dist/lib/server/decisioning/helpers.mjs.map +1 -1
- package/dist/lib/server/decisioning/index.mjs +0 -6
- package/dist/lib/server/decisioning/index.mjs.map +1 -1
- package/dist/lib/server/decisioning/list-helpers.mjs +0 -6
- package/dist/lib/server/decisioning/list-helpers.mjs.map +1 -1
- package/dist/lib/server/decisioning/manifest-helpers.mjs +0 -6
- package/dist/lib/server/decisioning/manifest-helpers.mjs.map +1 -1
- package/dist/lib/server/decisioning/pagination.mjs +0 -6
- package/dist/lib/server/decisioning/platform-helpers.mjs +0 -6
- package/dist/lib/server/decisioning/platform-helpers.mjs.map +1 -1
- package/dist/lib/server/decisioning/platform.mjs +0 -6
- package/dist/lib/server/decisioning/proposal/dispatch.mjs +0 -6
- package/dist/lib/server/decisioning/proposal/dispatch.mjs.map +1 -1
- package/dist/lib/server/decisioning/proposal/index.mjs +0 -6
- package/dist/lib/server/decisioning/proposal/index.mjs.map +1 -1
- package/dist/lib/server/decisioning/proposal/lifecycle.mjs +0 -6
- package/dist/lib/server/decisioning/proposal/lifecycle.mjs.map +1 -1
- package/dist/lib/server/decisioning/proposal/mock-manager.mjs +0 -6
- package/dist/lib/server/decisioning/proposal/mock-manager.mjs.map +1 -1
- package/dist/lib/server/decisioning/proposal/store.mjs +0 -6
- package/dist/lib/server/decisioning/proposal/store.mjs.map +1 -1
- package/dist/lib/server/decisioning/proposal/types.mjs +0 -6
- package/dist/lib/server/decisioning/proposal/types.mjs.map +1 -1
- package/dist/lib/server/decisioning/resolve-presets.mjs +0 -6
- package/dist/lib/server/decisioning/resolve-presets.mjs.map +1 -1
- package/dist/lib/server/decisioning/runtime/entity-hydration.generated.mjs +0 -6
- package/dist/lib/server/decisioning/runtime/entity-hydration.generated.mjs.map +1 -1
- package/dist/lib/server/decisioning/runtime/from-platform.mjs +0 -6
- package/dist/lib/server/decisioning/runtime/from-platform.mjs.map +1 -1
- package/dist/lib/server/decisioning/runtime/observed-modes.mjs +0 -6
- package/dist/lib/server/decisioning/runtime/observed-modes.mjs.map +1 -1
- package/dist/lib/server/decisioning/runtime/postgres-task-registry.mjs +0 -6
- package/dist/lib/server/decisioning/runtime/postgres-task-registry.mjs.map +1 -1
- package/dist/lib/server/decisioning/runtime/protocol-for-tool.mjs +0 -6
- package/dist/lib/server/decisioning/runtime/protocol-for-tool.mjs.map +1 -1
- package/dist/lib/server/decisioning/runtime/task-registry.mjs +0 -6
- package/dist/lib/server/decisioning/runtime/task-registry.mjs.map +1 -1
- package/dist/lib/server/decisioning/runtime/to-context.mjs +0 -6
- package/dist/lib/server/decisioning/runtime/to-context.mjs.map +1 -1
- package/dist/lib/server/decisioning/runtime/validate-platform.mjs +0 -6
- package/dist/lib/server/decisioning/runtime/validate-platform.mjs.map +1 -1
- package/dist/lib/server/decisioning/specialisms/audiences.mjs +0 -6
- package/dist/lib/server/decisioning/specialisms/brand-rights.mjs +0 -6
- package/dist/lib/server/decisioning/specialisms/campaign-governance.mjs +0 -6
- package/dist/lib/server/decisioning/specialisms/content-standards.mjs +0 -6
- package/dist/lib/server/decisioning/specialisms/creative-ad-server.mjs +0 -6
- package/dist/lib/server/decisioning/specialisms/creative.mjs +0 -6
- package/dist/lib/server/decisioning/specialisms/lists.mjs +0 -6
- package/dist/lib/server/decisioning/specialisms/sales.mjs +0 -6
- package/dist/lib/server/decisioning/specialisms/signals.mjs +0 -6
- package/dist/lib/server/decisioning/specialisms/sponsored-intelligence.mjs +0 -6
- package/dist/lib/server/decisioning/start-time.mjs +0 -6
- package/dist/lib/server/decisioning/start-time.mjs.map +1 -1
- package/dist/lib/server/decisioning/status-changes.mjs +0 -6
- package/dist/lib/server/decisioning/status-changes.mjs.map +1 -1
- package/dist/lib/server/decisioning/status-mappers.mjs +0 -6
- package/dist/lib/server/decisioning/status-mappers.mjs.map +1 -1
- package/dist/lib/server/decisioning/tenant-registry.mjs +0 -6
- package/dist/lib/server/decisioning/tenant-registry.mjs.map +1 -1
- package/dist/lib/server/decisioning/tenant-store.mjs +0 -6
- package/dist/lib/server/decisioning/tenant-store.mjs.map +1 -1
- package/dist/lib/server/decisioning/validate-specialisms.mjs +0 -6
- package/dist/lib/server/decisioning/validate-specialisms.mjs.map +1 -1
- package/dist/lib/server/dynamic-registry.mjs +0 -6
- package/dist/lib/server/dynamic-registry.mjs.map +1 -1
- package/dist/lib/server/envelope-allowlist.mjs +0 -6
- package/dist/lib/server/envelope-allowlist.mjs.map +1 -1
- package/dist/lib/server/error-arm-tools.mjs +5 -6
- package/dist/lib/server/error-arm-tools.mjs.map +1 -1
- package/dist/lib/server/errors.mjs +0 -6
- package/dist/lib/server/errors.mjs.map +1 -1
- package/dist/lib/server/example-tld-guard.mjs +0 -6
- package/dist/lib/server/example-tld-guard.mjs.map +1 -1
- package/dist/lib/server/express-adapter.mjs +0 -6
- package/dist/lib/server/express-adapter.mjs.map +1 -1
- package/dist/lib/server/governance.mjs +0 -6
- package/dist/lib/server/governance.mjs.map +1 -1
- package/dist/lib/server/idempotency/backends/lazy.mjs +0 -6
- package/dist/lib/server/idempotency/backends/lazy.mjs.map +1 -1
- package/dist/lib/server/idempotency/backends/memory.mjs +0 -6
- package/dist/lib/server/idempotency/backends/memory.mjs.map +1 -1
- package/dist/lib/server/idempotency/backends/pg.mjs +0 -6
- package/dist/lib/server/idempotency/backends/pg.mjs.map +1 -1
- package/dist/lib/server/idempotency/backends/redis.mjs +0 -6
- package/dist/lib/server/idempotency/backends/redis.mjs.map +1 -1
- package/dist/lib/server/idempotency/index.mjs +0 -6
- package/dist/lib/server/idempotency/index.mjs.map +1 -1
- package/dist/lib/server/idempotency/store.mjs +0 -6
- package/dist/lib/server/idempotency/store.mjs.map +1 -1
- package/dist/lib/server/index.d.mts +1 -1
- package/dist/lib/server/index.d.ts +1 -1
- package/dist/lib/server/index.d.ts.map +1 -1
- package/dist/lib/server/index.js.map +1 -1
- package/dist/lib/server/index.mjs +0 -6
- package/dist/lib/server/index.mjs.map +1 -1
- package/dist/lib/server/legacy/v5/index.d.mts +1 -1
- package/dist/lib/server/legacy/v5/index.d.ts +1 -1
- package/dist/lib/server/legacy/v5/index.d.ts.map +1 -1
- package/dist/lib/server/legacy/v5/index.js.map +1 -1
- package/dist/lib/server/legacy/v5/index.mjs +0 -6
- package/dist/lib/server/legacy/v5/index.mjs.map +1 -1
- package/dist/lib/server/mcp-modern-server.mjs +0 -6
- package/dist/lib/server/mcp-modern-server.mjs.map +1 -1
- package/dist/lib/server/media-buy-actions.mjs +0 -6
- package/dist/lib/server/media-buy-actions.mjs.map +1 -1
- package/dist/lib/server/media-buy-helpers.mjs +0 -6
- package/dist/lib/server/media-buy-helpers.mjs.map +1 -1
- package/dist/lib/server/media-buy-store.mjs +0 -6
- package/dist/lib/server/media-buy-store.mjs.map +1 -1
- package/dist/lib/server/normalize-errors.mjs +0 -6
- package/dist/lib/server/normalize-errors.mjs.map +1 -1
- package/dist/lib/server/operational-platform.mjs +0 -6
- package/dist/lib/server/operational-platform.mjs.map +1 -1
- package/dist/lib/server/pick-safe-details.mjs +0 -6
- package/dist/lib/server/pick-safe-details.mjs.map +1 -1
- package/dist/lib/server/pin-and-bind-fetch.mjs +0 -6
- package/dist/lib/server/pin-and-bind-fetch.mjs.map +1 -1
- package/dist/lib/server/postgres-state-store.mjs +0 -6
- package/dist/lib/server/postgres-state-store.mjs.map +1 -1
- package/dist/lib/server/postgres-task-store.mjs +0 -6
- package/dist/lib/server/postgres-task-store.mjs.map +1 -1
- package/dist/lib/server/product-defaults.mjs +0 -6
- package/dist/lib/server/product-defaults.mjs.map +1 -1
- package/dist/lib/server/redact.mjs +0 -6
- package/dist/lib/server/redact.mjs.map +1 -1
- package/dist/lib/server/responses.mjs +0 -6
- package/dist/lib/server/responses.mjs.map +1 -1
- package/dist/lib/server/serve.mjs +0 -6
- package/dist/lib/server/serve.mjs.map +1 -1
- package/dist/lib/server/socket-mode/conformance-client.mjs +0 -6
- package/dist/lib/server/socket-mode/conformance-client.mjs.map +1 -1
- package/dist/lib/server/socket-mode/index.mjs +0 -6
- package/dist/lib/server/socket-mode/index.mjs.map +1 -1
- package/dist/lib/server/socket-mode/ws-transport.mjs +0 -6
- package/dist/lib/server/socket-mode/ws-transport.mjs.map +1 -1
- package/dist/lib/server/state-machine.mjs +0 -6
- package/dist/lib/server/state-machine.mjs.map +1 -1
- package/dist/lib/server/state-store.mjs +0 -6
- package/dist/lib/server/state-store.mjs.map +1 -1
- package/dist/lib/server/structured-serialize.mjs +0 -6
- package/dist/lib/server/structured-serialize.mjs.map +1 -1
- package/dist/lib/server/targeting-helpers.mjs +0 -6
- package/dist/lib/server/targeting-helpers.mjs.map +1 -1
- package/dist/lib/server/tasks.mjs +0 -6
- package/dist/lib/server/tasks.mjs.map +1 -1
- package/dist/lib/server/test-controller-bridge.mjs +0 -6
- package/dist/lib/server/test-controller-bridge.mjs.map +1 -1
- package/dist/lib/server/test-controller.mjs +0 -6
- package/dist/lib/server/test-controller.mjs.map +1 -1
- package/dist/lib/server/upstream-helpers.mjs +0 -6
- package/dist/lib/server/upstream-helpers.mjs.map +1 -1
- package/dist/lib/server/webhook-emitter.mjs +0 -6
- package/dist/lib/server/webhook-emitter.mjs.map +1 -1
- package/dist/lib/server/wire-safe.mjs +0 -6
- package/dist/lib/server/wire-safe.mjs.map +1 -1
- package/dist/lib/server/wire-spec-fields.generated.mjs +0 -6
- package/dist/lib/server/wire-spec-fields.generated.mjs.map +1 -1
- package/dist/lib/server/wrap-envelope.mjs +0 -6
- package/dist/lib/server/wrap-envelope.mjs.map +1 -1
- package/dist/lib/signing/agent-context.mjs +0 -6
- package/dist/lib/signing/agent-context.mjs.map +1 -1
- package/dist/lib/signing/agent-fetch.mjs +0 -6
- package/dist/lib/signing/agent-fetch.mjs.map +1 -1
- package/dist/lib/signing/agent-resolver/canonicalize.mjs +0 -6
- package/dist/lib/signing/agent-resolver/canonicalize.mjs.map +1 -1
- package/dist/lib/signing/agent-resolver/capabilities-types.mjs +0 -6
- package/dist/lib/signing/agent-resolver/capabilities-types.mjs.map +1 -1
- package/dist/lib/signing/agent-resolver/consistency.mjs +0 -6
- package/dist/lib/signing/agent-resolver/consistency.mjs.map +1 -1
- package/dist/lib/signing/agent-resolver/errors.mjs +0 -6
- package/dist/lib/signing/agent-resolver/errors.mjs.map +1 -1
- package/dist/lib/signing/agent-resolver/etld.mjs +0 -6
- package/dist/lib/signing/agent-resolver/etld.mjs.map +1 -1
- package/dist/lib/signing/agent-resolver/fetch-helpers.mjs +0 -6
- package/dist/lib/signing/agent-resolver/fetch-helpers.mjs.map +1 -1
- package/dist/lib/signing/agent-resolver/index.mjs +0 -6
- package/dist/lib/signing/agent-resolver/index.mjs.map +1 -1
- package/dist/lib/signing/agent-resolver/jwks-set.mjs +0 -6
- package/dist/lib/signing/agent-resolver/jwks-set.mjs.map +1 -1
- package/dist/lib/signing/agent-resolver/resolve-agent.mjs +0 -6
- package/dist/lib/signing/agent-resolver/resolve-agent.mjs.map +1 -1
- package/dist/lib/signing/agent-resolver/select-agent.mjs +0 -6
- package/dist/lib/signing/agent-resolver/select-agent.mjs.map +1 -1
- package/dist/lib/signing/agent-resolver/strict-json.mjs +0 -6
- package/dist/lib/signing/agent-resolver/strict-json.mjs.map +1 -1
- package/dist/lib/signing/brand-jwks.mjs +0 -6
- package/dist/lib/signing/brand-jwks.mjs.map +1 -1
- package/dist/lib/signing/canonicalize.mjs +0 -6
- package/dist/lib/signing/canonicalize.mjs.map +1 -1
- package/dist/lib/signing/capability-cache.mjs +0 -6
- package/dist/lib/signing/capability-cache.mjs.map +1 -1
- package/dist/lib/signing/capability-priming.mjs +0 -6
- package/dist/lib/signing/capability-priming.mjs.map +1 -1
- package/dist/lib/signing/client.mjs +0 -6
- package/dist/lib/signing/client.mjs.map +1 -1
- package/dist/lib/signing/content-digest.mjs +0 -6
- package/dist/lib/signing/content-digest.mjs.map +1 -1
- package/dist/lib/signing/crypto.mjs +0 -6
- package/dist/lib/signing/crypto.mjs.map +1 -1
- package/dist/lib/signing/ecdsa-encoding.mjs +0 -6
- package/dist/lib/signing/ecdsa-encoding.mjs.map +1 -1
- package/dist/lib/signing/errors.mjs +0 -6
- package/dist/lib/signing/errors.mjs.map +1 -1
- package/dist/lib/signing/fetch-async.mjs +0 -6
- package/dist/lib/signing/fetch-async.mjs.map +1 -1
- package/dist/lib/signing/fetch.mjs +0 -6
- package/dist/lib/signing/fetch.mjs.map +1 -1
- package/dist/lib/signing/index.mjs +0 -6
- package/dist/lib/signing/index.mjs.map +1 -1
- package/dist/lib/signing/jwks-helpers.mjs +0 -6
- package/dist/lib/signing/jwks-helpers.mjs.map +1 -1
- package/dist/lib/signing/jwks-https.mjs +0 -6
- package/dist/lib/signing/jwks-https.mjs.map +1 -1
- package/dist/lib/signing/jwks.mjs +0 -6
- package/dist/lib/signing/jwks.mjs.map +1 -1
- package/dist/lib/signing/middleware.mjs +0 -6
- package/dist/lib/signing/middleware.mjs.map +1 -1
- package/dist/lib/signing/parser.mjs +0 -6
- package/dist/lib/signing/parser.mjs.map +1 -1
- package/dist/lib/signing/postgres-replay-store.mjs +0 -6
- package/dist/lib/signing/postgres-replay-store.mjs.map +1 -1
- package/dist/lib/signing/protocol-response.mjs +0 -6
- package/dist/lib/signing/protocol-response.mjs.map +1 -1
- package/dist/lib/signing/provider.mjs +0 -6
- package/dist/lib/signing/redis-replay-store.mjs +0 -6
- package/dist/lib/signing/redis-replay-store.mjs.map +1 -1
- package/dist/lib/signing/replay.mjs +0 -6
- package/dist/lib/signing/replay.mjs.map +1 -1
- package/dist/lib/signing/request-context.mjs +0 -6
- package/dist/lib/signing/request-context.mjs.map +1 -1
- package/dist/lib/signing/revocation-https.mjs +0 -6
- package/dist/lib/signing/revocation-https.mjs.map +1 -1
- package/dist/lib/signing/revocation.mjs +0 -6
- package/dist/lib/signing/revocation.mjs.map +1 -1
- package/dist/lib/signing/server.mjs +0 -6
- package/dist/lib/signing/server.mjs.map +1 -1
- package/dist/lib/signing/signer-async.mjs +0 -6
- package/dist/lib/signing/signer-async.mjs.map +1 -1
- package/dist/lib/signing/signer.mjs +0 -6
- package/dist/lib/signing/signer.mjs.map +1 -1
- package/dist/lib/signing/testing.mjs +0 -6
- package/dist/lib/signing/testing.mjs.map +1 -1
- package/dist/lib/signing/types.mjs +0 -6
- package/dist/lib/signing/types.mjs.map +1 -1
- package/dist/lib/signing/verifier.mjs +0 -6
- package/dist/lib/signing/verifier.mjs.map +1 -1
- package/dist/lib/signing/webhook-auth-detection.mjs +0 -6
- package/dist/lib/signing/webhook-auth-detection.mjs.map +1 -1
- package/dist/lib/signing/webhook-verifier.mjs +0 -6
- package/dist/lib/signing/webhook-verifier.mjs.map +1 -1
- package/dist/lib/storage/MemoryStorage.mjs +0 -6
- package/dist/lib/storage/MemoryStorage.mjs.map +1 -1
- package/dist/lib/storage/interfaces.mjs +0 -6
- package/dist/lib/substitution/encoder/SubstitutionEncoder.mjs +0 -6
- package/dist/lib/substitution/encoder/SubstitutionEncoder.mjs.map +1 -1
- package/dist/lib/substitution/encoder/index.mjs +0 -6
- package/dist/lib/substitution/encoder/index.mjs.map +1 -1
- package/dist/lib/substitution/index.mjs +0 -6
- package/dist/lib/substitution/index.mjs.map +1 -1
- package/dist/lib/substitution/observer/SubstitutionObserver.mjs +0 -6
- package/dist/lib/substitution/observer/SubstitutionObserver.mjs.map +1 -1
- package/dist/lib/substitution/observer/alignment.mjs +0 -6
- package/dist/lib/substitution/observer/alignment.mjs.map +1 -1
- package/dist/lib/substitution/observer/assertions.mjs +0 -6
- package/dist/lib/substitution/observer/assertions.mjs.map +1 -1
- package/dist/lib/substitution/observer/html-parser.mjs +0 -6
- package/dist/lib/substitution/observer/html-parser.mjs.map +1 -1
- package/dist/lib/substitution/observer/index.mjs +0 -6
- package/dist/lib/substitution/observer/index.mjs.map +1 -1
- package/dist/lib/substitution/observer/ssrf.mjs +0 -6
- package/dist/lib/substitution/observer/ssrf.mjs.map +1 -1
- package/dist/lib/substitution/rfc3986.mjs +0 -6
- package/dist/lib/substitution/rfc3986.mjs.map +1 -1
- package/dist/lib/substitution/translate.mjs +0 -6
- package/dist/lib/substitution/translate.mjs.map +1 -1
- package/dist/lib/substitution/types.mjs +0 -6
- package/dist/lib/substitution/vectors.mjs +0 -6
- package/dist/lib/substitution/vectors.mjs.map +1 -1
- package/dist/lib/testing/agent-tester.mjs +0 -6
- package/dist/lib/testing/agent-tester.mjs.map +1 -1
- package/dist/lib/testing/client.mjs +0 -6
- package/dist/lib/testing/client.mjs.map +1 -1
- package/dist/lib/testing/compliance/briefs.mjs +0 -6
- package/dist/lib/testing/compliance/briefs.mjs.map +1 -1
- package/dist/lib/testing/compliance/comply.mjs +0 -6
- package/dist/lib/testing/compliance/comply.mjs.map +1 -1
- package/dist/lib/testing/compliance/index.mjs +0 -6
- package/dist/lib/testing/compliance/index.mjs.map +1 -1
- package/dist/lib/testing/compliance/spec-conformance.mjs +0 -6
- package/dist/lib/testing/compliance/spec-conformance.mjs.map +1 -1
- package/dist/lib/testing/compliance/storyboard-tracks.mjs +0 -6
- package/dist/lib/testing/compliance/storyboard-tracks.mjs.map +1 -1
- package/dist/lib/testing/compliance/summary.mjs +0 -6
- package/dist/lib/testing/compliance/summary.mjs.map +1 -1
- package/dist/lib/testing/compliance/types.mjs +0 -6
- package/dist/lib/testing/comply-controller.mjs +0 -6
- package/dist/lib/testing/comply-controller.mjs.map +1 -1
- package/dist/lib/testing/controller-assertions.mjs +0 -6
- package/dist/lib/testing/controller-assertions.mjs.map +1 -1
- package/dist/lib/testing/formatter.mjs +0 -6
- package/dist/lib/testing/formatter.mjs.map +1 -1
- package/dist/lib/testing/index.mjs +0 -6
- package/dist/lib/testing/index.mjs.map +1 -1
- package/dist/lib/testing/local-agent-runner.mjs +0 -6
- package/dist/lib/testing/local-agent-runner.mjs.map +1 -1
- package/dist/lib/testing/orchestrator.mjs +0 -6
- package/dist/lib/testing/orchestrator.mjs.map +1 -1
- package/dist/lib/testing/personas/index.mjs +0 -6
- package/dist/lib/testing/personas/index.mjs.map +1 -1
- package/dist/lib/testing/scenarios/brand-rights.mjs +0 -6
- package/dist/lib/testing/scenarios/brand-rights.mjs.map +1 -1
- package/dist/lib/testing/scenarios/capabilities.mjs +0 -6
- package/dist/lib/testing/scenarios/capabilities.mjs.map +1 -1
- package/dist/lib/testing/scenarios/creative.mjs +0 -6
- package/dist/lib/testing/scenarios/creative.mjs.map +1 -1
- package/dist/lib/testing/scenarios/deterministic.mjs +0 -6
- package/dist/lib/testing/scenarios/deterministic.mjs.map +1 -1
- package/dist/lib/testing/scenarios/discovery.mjs +0 -6
- package/dist/lib/testing/scenarios/discovery.mjs.map +1 -1
- package/dist/lib/testing/scenarios/edge-cases.mjs +0 -6
- package/dist/lib/testing/scenarios/edge-cases.mjs.map +1 -1
- package/dist/lib/testing/scenarios/error-compliance.mjs +0 -6
- package/dist/lib/testing/scenarios/error-compliance.mjs.map +1 -1
- package/dist/lib/testing/scenarios/governance.mjs +0 -6
- package/dist/lib/testing/scenarios/governance.mjs.map +1 -1
- package/dist/lib/testing/scenarios/health.mjs +0 -6
- package/dist/lib/testing/scenarios/health.mjs.map +1 -1
- package/dist/lib/testing/scenarios/index.mjs +0 -6
- package/dist/lib/testing/scenarios/index.mjs.map +1 -1
- package/dist/lib/testing/scenarios/media-buy.mjs +0 -6
- package/dist/lib/testing/scenarios/media-buy.mjs.map +1 -1
- package/dist/lib/testing/scenarios/schema-compliance.mjs +0 -6
- package/dist/lib/testing/scenarios/schema-compliance.mjs.map +1 -1
- package/dist/lib/testing/scenarios/signals.mjs +0 -6
- package/dist/lib/testing/scenarios/signals.mjs.map +1 -1
- package/dist/lib/testing/scenarios/sponsored-intelligence.mjs +0 -6
- package/dist/lib/testing/scenarios/sponsored-intelligence.mjs.map +1 -1
- package/dist/lib/testing/scenarios/trusted-match.mjs +0 -6
- package/dist/lib/testing/scenarios/trusted-match.mjs.map +1 -1
- package/dist/lib/testing/seed-merge.mjs +0 -6
- package/dist/lib/testing/seed-merge.mjs.map +1 -1
- package/dist/lib/testing/storyboard/agent-routing.mjs +0 -6
- package/dist/lib/testing/storyboard/agent-routing.mjs.map +1 -1
- package/dist/lib/testing/storyboard/assertions.mjs +0 -6
- package/dist/lib/testing/storyboard/assertions.mjs.map +1 -1
- package/dist/lib/testing/storyboard/canonical-format-satisfaction.mjs +0 -6
- package/dist/lib/testing/storyboard/canonical-format-satisfaction.mjs.map +1 -1
- package/dist/lib/testing/storyboard/compliance.mjs +5 -6
- package/dist/lib/testing/storyboard/compliance.mjs.map +1 -1
- package/dist/lib/testing/storyboard/context.mjs +0 -6
- package/dist/lib/testing/storyboard/context.mjs.map +1 -1
- package/dist/lib/testing/storyboard/default-invariants.mjs +0 -6
- package/dist/lib/testing/storyboard/default-invariants.mjs.map +1 -1
- package/dist/lib/testing/storyboard/index.mjs +0 -6
- package/dist/lib/testing/storyboard/index.mjs.map +1 -1
- package/dist/lib/testing/storyboard/junit.mjs +0 -6
- package/dist/lib/testing/storyboard/junit.mjs.map +1 -1
- package/dist/lib/testing/storyboard/loader.mjs +0 -6
- package/dist/lib/testing/storyboard/loader.mjs.map +1 -1
- package/dist/lib/testing/storyboard/parallel-dispatch.mjs +0 -6
- package/dist/lib/testing/storyboard/parallel-dispatch.mjs.map +1 -1
- package/dist/lib/testing/storyboard/path.mjs +0 -6
- package/dist/lib/testing/storyboard/path.mjs.map +1 -1
- package/dist/lib/testing/storyboard/probes.mjs +0 -6
- package/dist/lib/testing/storyboard/probes.mjs.map +1 -1
- package/dist/lib/testing/storyboard/rate-limit-trip.mjs +0 -6
- package/dist/lib/testing/storyboard/rate-limit-trip.mjs.map +1 -1
- package/dist/lib/testing/storyboard/rejection-hints.mjs +0 -6
- package/dist/lib/testing/storyboard/rejection-hints.mjs.map +1 -1
- package/dist/lib/testing/storyboard/request-builder.mjs +0 -6
- package/dist/lib/testing/storyboard/request-builder.mjs.map +1 -1
- package/dist/lib/testing/storyboard/request-signing/builder.mjs +0 -6
- package/dist/lib/testing/storyboard/request-signing/builder.mjs.map +1 -1
- package/dist/lib/testing/storyboard/request-signing/grader.mjs +0 -6
- package/dist/lib/testing/storyboard/request-signing/grader.mjs.map +1 -1
- package/dist/lib/testing/storyboard/request-signing/index.mjs +0 -6
- package/dist/lib/testing/storyboard/request-signing/index.mjs.map +1 -1
- package/dist/lib/testing/storyboard/request-signing/probe-dispatch.mjs +0 -6
- package/dist/lib/testing/storyboard/request-signing/probe-dispatch.mjs.map +1 -1
- package/dist/lib/testing/storyboard/request-signing/probe.mjs +0 -6
- package/dist/lib/testing/storyboard/request-signing/probe.mjs.map +1 -1
- package/dist/lib/testing/storyboard/request-signing/synthesize.mjs +0 -6
- package/dist/lib/testing/storyboard/request-signing/synthesize.mjs.map +1 -1
- package/dist/lib/testing/storyboard/request-signing/test-kit.mjs +0 -6
- package/dist/lib/testing/storyboard/request-signing/test-kit.mjs.map +1 -1
- package/dist/lib/testing/storyboard/request-signing/types.mjs +0 -6
- package/dist/lib/testing/storyboard/request-signing/types.mjs.map +1 -1
- package/dist/lib/testing/storyboard/request-signing/vector-loader.mjs +0 -6
- package/dist/lib/testing/storyboard/request-signing/vector-loader.mjs.map +1 -1
- package/dist/lib/testing/storyboard/runner.mjs +0 -6
- package/dist/lib/testing/storyboard/runner.mjs.map +1 -1
- package/dist/lib/testing/storyboard/sandbox-entities.mjs +0 -6
- package/dist/lib/testing/storyboard/sandbox-entities.mjs.map +1 -1
- package/dist/lib/testing/storyboard/seeding.mjs +0 -6
- package/dist/lib/testing/storyboard/seeding.mjs.map +1 -1
- package/dist/lib/testing/storyboard/shape-drift-hints.mjs +0 -6
- package/dist/lib/testing/storyboard/shape-drift-hints.mjs.map +1 -1
- package/dist/lib/testing/storyboard/signer-grader/grader.mjs +0 -6
- package/dist/lib/testing/storyboard/signer-grader/grader.mjs.map +1 -1
- package/dist/lib/testing/storyboard/signer-grader/index.mjs +0 -6
- package/dist/lib/testing/storyboard/signer-grader/index.mjs.map +1 -1
- package/dist/lib/testing/storyboard/signer-grader/types.mjs +0 -6
- package/dist/lib/testing/storyboard/strict-validation-hints.mjs +0 -6
- package/dist/lib/testing/storyboard/strict-validation-hints.mjs.map +1 -1
- package/dist/lib/testing/storyboard/task-map.mjs +0 -6
- package/dist/lib/testing/storyboard/task-map.mjs.map +1 -1
- package/dist/lib/testing/storyboard/test-kit.mjs +0 -6
- package/dist/lib/testing/storyboard/test-kit.mjs.map +1 -1
- package/dist/lib/testing/storyboard/types.mjs +0 -6
- package/dist/lib/testing/storyboard/types.mjs.map +1 -1
- package/dist/lib/testing/storyboard/validations.mjs +0 -6
- package/dist/lib/testing/storyboard/validations.mjs.map +1 -1
- package/dist/lib/testing/storyboard/webhook-assertions.mjs +0 -6
- package/dist/lib/testing/storyboard/webhook-assertions.mjs.map +1 -1
- package/dist/lib/testing/storyboard/webhook-receiver.mjs +0 -6
- package/dist/lib/testing/storyboard/webhook-receiver.mjs.map +1 -1
- package/dist/lib/testing/stubs/governance-agent-stub.mjs +0 -6
- package/dist/lib/testing/stubs/governance-agent-stub.mjs.map +1 -1
- package/dist/lib/testing/stubs/index.mjs +0 -6
- package/dist/lib/testing/stubs/index.mjs.map +1 -1
- package/dist/lib/testing/test-controller.mjs +0 -6
- package/dist/lib/testing/test-controller.mjs.map +1 -1
- package/dist/lib/testing/test-helpers.mjs +0 -6
- package/dist/lib/testing/test-helpers.mjs.map +1 -1
- package/dist/lib/testing/types.mjs +0 -6
- package/dist/lib/types/adcp.mjs +0 -6
- package/dist/lib/types/adcp.mjs.map +1 -1
- package/dist/lib/types/asset-instances.mjs +0 -6
- package/dist/lib/types/compat.mjs +0 -6
- package/dist/lib/types/compat.mjs.map +1 -1
- package/dist/lib/types/core.generated.mjs +0 -6
- package/dist/lib/types/enums.generated.mjs +0 -6
- package/dist/lib/types/enums.generated.mjs.map +1 -1
- package/dist/lib/types/error-codes.mjs +0 -6
- package/dist/lib/types/error-codes.mjs.map +1 -1
- package/dist/lib/types/error-details.aliases.mjs +0 -6
- package/dist/lib/types/error-details.aliases.mjs.map +1 -1
- package/dist/lib/types/format-asset-slots.mjs +0 -6
- package/dist/lib/types/forward-compat-error-codes.mjs +0 -6
- package/dist/lib/types/forward-compat-error-codes.mjs.map +1 -1
- package/dist/lib/types/index.mjs +0 -6
- package/dist/lib/types/index.mjs.map +1 -1
- package/dist/lib/types/inline-enums.aliases.mjs +0 -6
- package/dist/lib/types/inline-enums.aliases.mjs.map +1 -1
- package/dist/lib/types/inline-enums.generated.mjs +0 -6
- package/dist/lib/types/inline-enums.generated.mjs.map +1 -1
- package/dist/lib/types/manifest.generated.mjs +0 -6
- package/dist/lib/types/manifest.generated.mjs.map +1 -1
- package/dist/lib/types/schemas.generated.mjs +0 -6
- package/dist/lib/types/schemas.generated.mjs.map +1 -1
- package/dist/lib/types/server-payload-aliases.mjs +0 -6
- package/dist/lib/types/server-payload.mjs +0 -6
- package/dist/lib/types/sync-rows.mjs +0 -6
- package/dist/lib/types/tools.generated.mjs +0 -6
- package/dist/lib/types/v2-5/index.mjs +0 -6
- package/dist/lib/types/v2-5/index.mjs.map +1 -1
- package/dist/lib/types/v2-5/tools.generated.mjs +0 -6
- package/dist/lib/types/v3-1-beta/index.mjs +0 -6
- package/dist/lib/types/v3-1-beta/index.mjs.map +1 -1
- package/dist/lib/types/v3-1-beta/tools.generated.mjs +0 -6
- package/dist/lib/types/wellknown-schemas.generated.mjs +0 -6
- package/dist/lib/types/wellknown-schemas.generated.mjs.map +1 -1
- package/dist/lib/upstream-recorder/constants.mjs +0 -6
- package/dist/lib/upstream-recorder/constants.mjs.map +1 -1
- package/dist/lib/upstream-recorder/index.mjs +0 -6
- package/dist/lib/upstream-recorder/index.mjs.map +1 -1
- package/dist/lib/upstream-recorder/recorder.mjs +0 -6
- package/dist/lib/upstream-recorder/recorder.mjs.map +1 -1
- package/dist/lib/upstream-recorder/types.mjs +0 -6
- package/dist/lib/upstream-recorder/types.mjs.map +1 -1
- package/dist/lib/utils/a2a-artifacts.mjs +0 -6
- package/dist/lib/utils/a2a-artifacts.mjs.map +1 -1
- package/dist/lib/utils/a2a-discovery.mjs +0 -6
- package/dist/lib/utils/a2a-discovery.mjs.map +1 -1
- package/dist/lib/utils/activation-key-builders.mjs +0 -6
- package/dist/lib/utils/activation-key-builders.mjs.map +1 -1
- package/dist/lib/utils/adcp-version-config.mjs +0 -6
- package/dist/lib/utils/adcp-version-config.mjs.map +1 -1
- package/dist/lib/utils/asset-builders.mjs +0 -6
- package/dist/lib/utils/asset-builders.mjs.map +1 -1
- package/dist/lib/utils/build-creative-return-builders.mjs +0 -6
- package/dist/lib/utils/build-creative-return-builders.mjs.map +1 -1
- package/dist/lib/utils/buyer-retry-policy.mjs +0 -6
- package/dist/lib/utils/buyer-retry-policy.mjs.map +1 -1
- package/dist/lib/utils/capabilities.mjs +0 -6
- package/dist/lib/utils/capabilities.mjs.map +1 -1
- package/dist/lib/utils/capability-rollups.mjs +0 -6
- package/dist/lib/utils/capability-rollups.mjs.map +1 -1
- package/dist/lib/utils/creative-adapter.mjs +0 -6
- package/dist/lib/utils/creative-adapter.mjs.map +1 -1
- package/dist/lib/utils/creative-delivery.mjs +0 -6
- package/dist/lib/utils/creative-delivery.mjs.map +1 -1
- package/dist/lib/utils/deprecation.mjs +0 -6
- package/dist/lib/utils/deprecation.mjs.map +1 -1
- package/dist/lib/utils/envelope-status-compat.mjs +0 -6
- package/dist/lib/utils/envelope-status-compat.mjs.map +1 -1
- package/dist/lib/utils/error-extraction.mjs +0 -6
- package/dist/lib/utils/error-extraction.mjs.map +1 -1
- package/dist/lib/utils/extract-result.mjs +0 -6
- package/dist/lib/utils/extract-result.mjs.map +1 -1
- package/dist/lib/utils/format-asset-slot-builders.mjs +0 -6
- package/dist/lib/utils/format-asset-slot-builders.mjs.map +1 -1
- package/dist/lib/utils/format-assets.mjs +0 -6
- package/dist/lib/utils/format-assets.mjs.map +1 -1
- package/dist/lib/utils/format-render-builders.mjs +0 -6
- package/dist/lib/utils/format-render-builders.mjs.map +1 -1
- package/dist/lib/utils/format-renders.mjs +0 -6
- package/dist/lib/utils/format-renders.mjs.map +1 -1
- package/dist/lib/utils/get-products-cache-scope.mjs +0 -6
- package/dist/lib/utils/get-products-cache-scope.mjs.map +1 -1
- package/dist/lib/utils/glob.mjs +0 -6
- package/dist/lib/utils/glob.mjs.map +1 -1
- package/dist/lib/utils/global-async-local-storage.mjs +0 -6
- package/dist/lib/utils/global-async-local-storage.mjs.map +1 -1
- package/dist/lib/utils/idempotency.mjs +0 -6
- package/dist/lib/utils/idempotency.mjs.map +1 -1
- package/dist/lib/utils/index.mjs +0 -6
- package/dist/lib/utils/index.mjs.map +1 -1
- package/dist/lib/utils/jcs.mjs +0 -6
- package/dist/lib/utils/jcs.mjs.map +1 -1
- package/dist/lib/utils/json-depth.mjs +0 -6
- package/dist/lib/utils/json-depth.mjs.map +1 -1
- package/dist/lib/utils/logger.mjs +0 -6
- package/dist/lib/utils/logger.mjs.map +1 -1
- package/dist/lib/utils/media-buy-delivery-notification-builders.mjs +0 -6
- package/dist/lib/utils/media-buy-delivery-notification-builders.mjs.map +1 -1
- package/dist/lib/utils/media-buy-status.mjs +0 -6
- package/dist/lib/utils/media-buy-status.mjs.map +1 -1
- package/dist/lib/utils/pagination.mjs +0 -6
- package/dist/lib/utils/pagination.mjs.map +1 -1
- package/dist/lib/utils/preview-creative-builders.mjs +0 -6
- package/dist/lib/utils/preview-creative-builders.mjs.map +1 -1
- package/dist/lib/utils/preview-normalizer.mjs +0 -6
- package/dist/lib/utils/preview-normalizer.mjs.map +1 -1
- package/dist/lib/utils/preview-utils.mjs +0 -6
- package/dist/lib/utils/preview-utils.mjs.map +1 -1
- package/dist/lib/utils/pricing-adapter.mjs +0 -6
- package/dist/lib/utils/pricing-adapter.mjs.map +1 -1
- package/dist/lib/utils/probe-policy.mjs +0 -6
- package/dist/lib/utils/probe-policy.mjs.map +1 -1
- package/dist/lib/utils/protocol-detection.mjs +0 -6
- package/dist/lib/utils/protocol-detection.mjs.map +1 -1
- package/dist/lib/utils/redact-secrets.mjs +0 -6
- package/dist/lib/utils/redact-secrets.mjs.map +1 -1
- package/dist/lib/utils/redis-default-prefix-warn.mjs +0 -6
- package/dist/lib/utils/redis-default-prefix-warn.mjs.map +1 -1
- package/dist/lib/utils/render-builders.mjs +0 -6
- package/dist/lib/utils/render-builders.mjs.map +1 -1
- package/dist/lib/utils/request-normalizer.mjs +0 -6
- package/dist/lib/utils/request-normalizer.mjs.map +1 -1
- package/dist/lib/utils/response-schemas.mjs +0 -6
- package/dist/lib/utils/response-schemas.mjs.map +1 -1
- package/dist/lib/utils/response-unwrapper.mjs +0 -6
- package/dist/lib/utils/response-unwrapper.mjs.map +1 -1
- package/dist/lib/utils/retry.mjs +0 -6
- package/dist/lib/utils/retry.mjs.map +1 -1
- package/dist/lib/utils/signal-discovery-helpers.mjs +0 -6
- package/dist/lib/utils/signal-discovery-helpers.mjs.map +1 -1
- package/dist/lib/utils/signal-id-builders.mjs +0 -6
- package/dist/lib/utils/signal-id-builders.mjs.map +1 -1
- package/dist/lib/utils/sync-creatives-adapter.mjs +0 -6
- package/dist/lib/utils/sync-creatives-adapter.mjs.map +1 -1
- package/dist/lib/utils/task-state.mjs +0 -6
- package/dist/lib/utils/task-state.mjs.map +1 -1
- package/dist/lib/utils/tool-request-schemas.mjs +0 -6
- package/dist/lib/utils/tool-request-schemas.mjs.map +1 -1
- package/dist/lib/utils/typeGuards.mjs +0 -6
- package/dist/lib/utils/typeGuards.mjs.map +1 -1
- package/dist/lib/utils/union-errors.mjs +0 -6
- package/dist/lib/utils/union-errors.mjs.map +1 -1
- package/dist/lib/utils/validate-user-agent.mjs +0 -6
- package/dist/lib/utils/validate-user-agent.mjs.map +1 -1
- package/dist/lib/v2/format-schema/fetch.mjs +0 -6
- package/dist/lib/v2/format-schema/fetch.mjs.map +1 -1
- package/dist/lib/v2/format-schema/index.mjs +0 -6
- package/dist/lib/v2/format-schema/index.mjs.map +1 -1
- package/dist/lib/v2/format-schema/regex-safety.mjs +0 -6
- package/dist/lib/v2/format-schema/regex-safety.mjs.map +1 -1
- package/dist/lib/v2/format-schema/resolver.mjs +7 -8
- package/dist/lib/v2/format-schema/resolver.mjs.map +1 -1
- package/dist/lib/v2/format-schema/sandbox-refs.mjs +0 -6
- package/dist/lib/v2/format-schema/sandbox-refs.mjs.map +1 -1
- package/dist/lib/v2/projection/augment-response.mjs +0 -6
- package/dist/lib/v2/projection/augment-response.mjs.map +1 -1
- package/dist/lib/v2/projection/builders.mjs +0 -6
- package/dist/lib/v2/projection/builders.mjs.map +1 -1
- package/dist/lib/v2/projection/cache-versions.mjs +0 -6
- package/dist/lib/v2/projection/cache-versions.mjs.map +1 -1
- package/dist/lib/v2/projection/canonical-properties.mjs +5 -6
- package/dist/lib/v2/projection/canonical-properties.mjs.map +1 -1
- package/dist/lib/v2/projection/catalog.mjs +5 -6
- package/dist/lib/v2/projection/catalog.mjs.map +1 -1
- package/dist/lib/v2/projection/constants.mjs +0 -6
- package/dist/lib/v2/projection/constants.mjs.map +1 -1
- package/dist/lib/v2/projection/index.mjs +0 -6
- package/dist/lib/v2/projection/index.mjs.map +1 -1
- package/dist/lib/v2/projection/registry.mjs +5 -6
- package/dist/lib/v2/projection/registry.mjs.map +1 -1
- package/dist/lib/v2/projection/types.mjs +0 -6
- package/dist/lib/v2/projection/v1-to-v2.mjs +0 -6
- package/dist/lib/v2/projection/v1-to-v2.mjs.map +1 -1
- package/dist/lib/v2/projection/v2-to-v1.mjs +0 -6
- package/dist/lib/v2/projection/v2-to-v1.mjs.map +1 -1
- package/dist/lib/v2/projection/write-side.mjs +0 -6
- package/dist/lib/v2/projection/write-side.mjs.map +1 -1
- package/dist/lib/v2/publisher-catalog/formats.mjs +0 -6
- package/dist/lib/v2/publisher-catalog/formats.mjs.map +1 -1
- package/dist/lib/v2/publisher-catalog/index.mjs +0 -6
- package/dist/lib/v2/publisher-catalog/index.mjs.map +1 -1
- package/dist/lib/validation/client-hooks.mjs +0 -6
- package/dist/lib/validation/client-hooks.mjs.map +1 -1
- package/dist/lib/validation/hints.mjs +0 -6
- package/dist/lib/validation/hints.mjs.map +1 -1
- package/dist/lib/validation/index.mjs +0 -6
- package/dist/lib/validation/index.mjs.map +1 -1
- package/dist/lib/validation/schema-errors.mjs +0 -6
- package/dist/lib/validation/schema-errors.mjs.map +1 -1
- package/dist/lib/validation/schema-loader.mjs +5 -6
- package/dist/lib/validation/schema-loader.mjs.map +1 -1
- package/dist/lib/validation/schema-validator.mjs +0 -6
- package/dist/lib/validation/schema-validator.mjs.map +1 -1
- package/dist/lib/validation/sync-creatives.mjs +0 -6
- package/dist/lib/validation/sync-creatives.mjs.map +1 -1
- package/dist/lib/version.d.mts +3 -3
- package/dist/lib/version.d.ts +3 -3
- package/dist/lib/version.js +3 -3
- package/dist/lib/version.js.map +1 -1
- package/dist/lib/version.mjs +3 -9
- package/dist/lib/version.mjs.map +1 -1
- package/dist/lib/webhooks/index.mjs +0 -6
- package/dist/lib/webhooks/index.mjs.map +1 -1
- package/dist/lib/wholesale-feed-sync/index.mjs +0 -6
- package/dist/lib/wholesale-feed-sync/index.mjs.map +1 -1
- package/dist/lib/wholesale-feed-sync/sync.mjs +0 -6
- package/dist/lib/wholesale-feed-sync/sync.mjs.map +1 -1
- package/dist/lib/wholesale-feed-sync/types.mjs +0 -6
- package/dist/lib/wholesale-feed-sync/webhook-notification.mjs +0 -6
- package/dist/lib/wholesale-feed-sync/webhook-notification.mjs.map +1 -1
- package/package.json +2 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/lib/wholesale-feed-sync/webhook-notification.ts"],"sourcesContent":["import { ADCPError } from '../errors';\nimport type * as V31Beta from '../types/v3-1-beta';\n\nexport type WholesaleFeedWebhookNotificationType = V31Beta.WholesaleFeedWebhook['notification_type'];\nexport type WholesaleFeedWebhookAffectedEntityType = 'product' | 'signal';\nexport type WholesaleFeedWebhookCacheScope = V31Beta.WholesaleFeedWebhook['cache_scope'];\n\nexport type WholesaleFeedWebhookNotificationErrorCode =\n | 'wholesale_feed_webhook_body_malformed'\n | 'wholesale_feed_webhook_field_missing'\n | 'wholesale_feed_webhook_field_invalid'\n | 'wholesale_feed_webhook_notification_type_mismatch'\n | 'wholesale_feed_webhook_entity_type_mismatch'\n | 'wholesale_feed_webhook_cache_scope_mismatch'\n | 'wholesale_feed_webhook_bulk_change_invalid';\n\nexport interface WholesaleFeedWebhookNotificationErrorDetails {\n field?: string;\n expected?: unknown;\n actual?: unknown;\n}\n\nexport class WholesaleFeedWebhookNotificationError extends ADCPError {\n readonly code: WholesaleFeedWebhookNotificationErrorCode;\n readonly field: string | undefined;\n\n constructor(\n code: WholesaleFeedWebhookNotificationErrorCode,\n message: string,\n details: WholesaleFeedWebhookNotificationErrorDetails = {}\n ) {\n super(message, details);\n this.code = code;\n this.field = details.field;\n }\n}\n\nexport interface NormalizedWholesaleFeedWebhookNotification {\n /** Delivery replay/dedupe key. Scope this to the authenticated sender identity. */\n idempotencyKey: string;\n /** Envelope notification identifier. Must match the nested domain event id. */\n notificationId: string;\n /** Envelope notification type. Guaranteed to match `event.event_type`. */\n notificationType: WholesaleFeedWebhookNotificationType;\n /** Tenant/account identifier for the receiving subscription. */\n accountId: string;\n /** Registered account notification subscriber id. */\n subscriberId: string;\n /** ISO timestamp when this webhook delivery was fired. */\n firedAt: string;\n wholesaleFeedVersion: string;\n previousWholesaleFeedVersion?: string;\n cacheScope: WholesaleFeedWebhookCacheScope;\n /** Stable domain event id nested under `event`. Not the delivery dedupe key. */\n eventId: string;\n eventType: WholesaleFeedWebhookNotificationType;\n entityType: 'product' | 'signal' | 'feed';\n entityId: string;\n eventCreatedAt: string;\n /** Present for `wholesale_feed.bulk_change` notifications. */\n affectedEntityType?: WholesaleFeedWebhookAffectedEntityType;\n event: V31Beta.WholesaleFeedEvent;\n webhook: V31Beta.WholesaleFeedWebhook;\n}\n\nconst WHOLESALE_FEED_NOTIFICATION_TYPES = new Set<WholesaleFeedWebhookNotificationType>([\n 'product.created',\n 'product.updated',\n 'product.priced',\n 'product.removed',\n 'signal.created',\n 'signal.updated',\n 'signal.priced',\n 'signal.removed',\n 'wholesale_feed.bulk_change',\n]);\n\n/**\n * Parse and normalize a canonical wholesale-feed webhook notification.\n *\n * The normalized shape intentionally separates `idempotencyKey` (delivery\n * replay/dedupe) from `eventId` / `notificationId` (domain event identity).\n * It validates envelope-level invariants, including the canonical\n * `notification_id === event.event_id` match.\n */\nexport function parseWholesaleFeedWebhookNotification(input: unknown): NormalizedWholesaleFeedWebhookNotification {\n const parsed = parseInput(input);\n const webhook = readRecord(parsed, '$');\n const event = readRecord(webhook.event, 'event');\n\n const idempotencyKey = readRequiredString(webhook, 'idempotency_key');\n const notificationId = readRequiredString(webhook, 'notification_id');\n const notificationType = readNotificationType(readRequiredString(webhook, 'notification_type'), 'notification_type');\n const firedAt = readRequiredString(webhook, 'fired_at');\n const subscriberId = readRequiredString(webhook, 'subscriber_id');\n const accountId = readRequiredString(webhook, 'account_id');\n const wholesaleFeedVersion = readRequiredString(webhook, 'wholesale_feed_version');\n const previousWholesaleFeedVersion = readOptionalString(webhook, 'previous_wholesale_feed_version');\n const cacheScope = readCacheScope(readRequiredString(webhook, 'cache_scope'), 'cache_scope');\n\n const eventId = readRequiredString(event, 'event.event_id');\n if (notificationId !== eventId) {\n throw new WholesaleFeedWebhookNotificationError(\n 'wholesale_feed_webhook_field_invalid',\n 'wholesale-feed webhook notification_id must match event.event_id.',\n { field: 'notification_id', expected: eventId, actual: notificationId }\n );\n }\n\n const eventType = readNotificationType(readRequiredString(event, 'event.event_type'), 'event.event_type');\n if (notificationType !== eventType) {\n throw new WholesaleFeedWebhookNotificationError(\n 'wholesale_feed_webhook_notification_type_mismatch',\n 'wholesale-feed webhook notification_type must match event.event_type.',\n { field: 'notification_type', expected: eventType, actual: notificationType }\n );\n }\n\n const entityType = readEntityType(readRequiredString(event, 'event.entity_type'), 'event.entity_type');\n assertEntityTypeMatchesNotification(notificationType, entityType);\n const entityId = readRequiredString(event, 'event.entity_id');\n const eventCreatedAt = readRequiredString(event, 'event.created_at');\n const payload = readRecord(event.payload, 'event.payload');\n\n const payloadScope = readRequiredPayloadScope(payload);\n if (payloadScope !== cacheScope) {\n throw new WholesaleFeedWebhookNotificationError(\n 'wholesale_feed_webhook_cache_scope_mismatch',\n 'wholesale-feed webhook cache_scope must match event.payload.applies_to.scope.',\n { field: 'cache_scope', expected: payloadScope, actual: cacheScope }\n );\n }\n\n const affectedEntityType = validatePayloadForEvent(notificationType, entityId, payload);\n\n return {\n idempotencyKey,\n notificationId,\n notificationType,\n accountId,\n subscriberId,\n firedAt,\n wholesaleFeedVersion,\n ...(previousWholesaleFeedVersion !== undefined && { previousWholesaleFeedVersion }),\n cacheScope,\n eventId,\n eventType,\n entityType,\n entityId,\n eventCreatedAt,\n ...(affectedEntityType !== undefined && { affectedEntityType }),\n event: event as V31Beta.WholesaleFeedEvent,\n webhook: webhook as V31Beta.WholesaleFeedWebhook,\n };\n}\n\nexport const normalizeWholesaleFeedWebhookNotification = parseWholesaleFeedWebhookNotification;\n\nfunction parseInput(input: unknown): unknown {\n if (typeof input === 'string') return parseJson(input);\n if (input instanceof Uint8Array) return parseJson(new TextDecoder().decode(input));\n return input;\n}\n\nfunction parseJson(raw: string): unknown {\n try {\n return JSON.parse(raw);\n } catch (err) {\n throw new WholesaleFeedWebhookNotificationError(\n 'wholesale_feed_webhook_body_malformed',\n 'wholesale-feed webhook body must be valid JSON.',\n { field: '$', actual: err instanceof Error ? err.message : String(err) }\n );\n }\n}\n\nfunction readRecord(value: unknown, field: string): Record<string, unknown> {\n if (value && typeof value === 'object' && !Array.isArray(value)) return value as Record<string, unknown>;\n throw new WholesaleFeedWebhookNotificationError(\n field === '$' ? 'wholesale_feed_webhook_body_malformed' : 'wholesale_feed_webhook_field_invalid',\n field === '$'\n ? 'wholesale-feed webhook body must be a JSON object.'\n : `wholesale-feed webhook field ${field} must be an object.`,\n { field, expected: 'object', actual: describeValue(value) }\n );\n}\n\nfunction readRequiredRecord(obj: Record<string, unknown>, field: string): Record<string, unknown> {\n const key = field.includes('.') ? field.slice(field.lastIndexOf('.') + 1) : field;\n const value = obj[key];\n if (value === undefined) {\n throw new WholesaleFeedWebhookNotificationError(\n 'wholesale_feed_webhook_field_missing',\n `wholesale-feed webhook field ${field} must be an object.`,\n { field, expected: 'object', actual: describeValue(value) }\n );\n }\n return readRecord(value, field);\n}\n\nfunction readRequiredString(obj: Record<string, unknown>, field: string): string {\n const key = field.includes('.') ? field.slice(field.lastIndexOf('.') + 1) : field;\n const value = obj[key];\n if (typeof value === 'string' && value.length > 0) return value;\n throw new WholesaleFeedWebhookNotificationError(\n value === undefined ? 'wholesale_feed_webhook_field_missing' : 'wholesale_feed_webhook_field_invalid',\n `wholesale-feed webhook field ${field} must be a non-empty string.`,\n { field, expected: 'non-empty string', actual: describeValue(value) }\n );\n}\n\nfunction readRequiredNonEmptyArray(obj: Record<string, unknown>, field: string): unknown[] {\n const key = field.includes('.') ? field.slice(field.lastIndexOf('.') + 1) : field;\n const value = obj[key];\n if (Array.isArray(value) && value.length > 0) return value;\n throw new WholesaleFeedWebhookNotificationError(\n value === undefined ? 'wholesale_feed_webhook_field_missing' : 'wholesale_feed_webhook_field_invalid',\n `wholesale-feed webhook field ${field} must be a non-empty array.`,\n { field, expected: 'non-empty array', actual: describeValue(value) }\n );\n}\n\nfunction readRequiredPositiveInteger(obj: Record<string, unknown>, field: string): number {\n const key = field.includes('.') ? field.slice(field.lastIndexOf('.') + 1) : field;\n const value = obj[key];\n if (Number.isInteger(value) && (value as number) > 0) return value as number;\n throw new WholesaleFeedWebhookNotificationError(\n value === undefined ? 'wholesale_feed_webhook_field_missing' : 'wholesale_feed_webhook_field_invalid',\n `wholesale-feed webhook field ${field} must be a positive integer.`,\n { field, expected: 'positive integer', actual: describeValue(value) }\n );\n}\n\nfunction readOptionalString(obj: Record<string, unknown>, field: string): string | undefined {\n const value = obj[field];\n if (value === undefined) return undefined;\n if (typeof value === 'string' && value.length > 0) return value;\n throw new WholesaleFeedWebhookNotificationError(\n 'wholesale_feed_webhook_field_invalid',\n `wholesale-feed webhook field ${field} must be a non-empty string when present.`,\n { field, expected: 'non-empty string', actual: describeValue(value) }\n );\n}\n\nfunction readNotificationType(value: string, field: string): WholesaleFeedWebhookNotificationType {\n if (WHOLESALE_FEED_NOTIFICATION_TYPES.has(value as WholesaleFeedWebhookNotificationType)) {\n return value as WholesaleFeedWebhookNotificationType;\n }\n throw new WholesaleFeedWebhookNotificationError(\n 'wholesale_feed_webhook_field_invalid',\n `wholesale-feed webhook field ${field} is not a supported wholesale-feed notification type.`,\n { field, expected: [...WHOLESALE_FEED_NOTIFICATION_TYPES], actual: value }\n );\n}\n\nfunction readCacheScope(value: string, field: string): WholesaleFeedWebhookCacheScope {\n if (value === 'public' || value === 'account') return value;\n throw new WholesaleFeedWebhookNotificationError(\n 'wholesale_feed_webhook_field_invalid',\n `wholesale-feed webhook field ${field} must be \"public\" or \"account\".`,\n { field, expected: ['public', 'account'], actual: value }\n );\n}\n\nfunction readEntityType(value: string, field: string): NormalizedWholesaleFeedWebhookNotification['entityType'] {\n if (value === 'product' || value === 'signal' || value === 'feed') return value;\n throw new WholesaleFeedWebhookNotificationError(\n 'wholesale_feed_webhook_field_invalid',\n `wholesale-feed webhook field ${field} must be \"product\", \"signal\", or \"feed\".`,\n { field, expected: ['product', 'signal', 'feed'], actual: value }\n );\n}\n\nfunction assertEntityTypeMatchesNotification(\n notificationType: WholesaleFeedWebhookNotificationType,\n entityType: NormalizedWholesaleFeedWebhookNotification['entityType']\n): void {\n const expected = notificationType.startsWith('product.')\n ? 'product'\n : notificationType.startsWith('signal.')\n ? 'signal'\n : 'feed';\n\n if (entityType !== expected) {\n throw new WholesaleFeedWebhookNotificationError(\n 'wholesale_feed_webhook_entity_type_mismatch',\n 'wholesale-feed webhook event.entity_type does not match event.event_type.',\n { field: 'event.entity_type', expected, actual: entityType }\n );\n }\n}\n\nfunction validatePayloadForEvent(\n notificationType: WholesaleFeedWebhookNotificationType,\n entityId: string,\n payload: Record<string, unknown>\n): WholesaleFeedWebhookAffectedEntityType | undefined {\n switch (notificationType) {\n case 'product.created':\n case 'product.updated': {\n assertEntityIdMatchesPayload(entityId, readRequiredString(payload, 'event.payload.product_id'), 'product_id');\n readRequiredRecord(payload, 'event.payload.product');\n return undefined;\n }\n case 'product.priced': {\n assertEntityIdMatchesPayload(entityId, readRequiredString(payload, 'event.payload.product_id'), 'product_id');\n readRequiredNonEmptyArray(payload, 'event.payload.pricing_options');\n return undefined;\n }\n case 'product.removed': {\n assertEntityIdMatchesPayload(entityId, readRequiredString(payload, 'event.payload.product_id'), 'product_id');\n return undefined;\n }\n case 'signal.created':\n case 'signal.updated': {\n assertEntityIdMatchesPayload(\n entityId,\n readRequiredString(payload, 'event.payload.signal_agent_segment_id'),\n 'signal_agent_segment_id'\n );\n readRequiredRecord(payload, 'event.payload.signal');\n return undefined;\n }\n case 'signal.priced': {\n assertEntityIdMatchesPayload(\n entityId,\n readRequiredString(payload, 'event.payload.signal_agent_segment_id'),\n 'signal_agent_segment_id'\n );\n readRequiredNonEmptyArray(payload, 'event.payload.pricing_options');\n return undefined;\n }\n case 'signal.removed': {\n assertEntityIdMatchesPayload(\n entityId,\n readRequiredString(payload, 'event.payload.signal_agent_segment_id'),\n 'signal_agent_segment_id'\n );\n return undefined;\n }\n case 'wholesale_feed.bulk_change':\n readRequiredString(payload, 'event.payload.summary');\n readRequiredPositiveInteger(payload, 'event.payload.affected_count');\n return readBulkChangeAffectedEntityType(payload);\n }\n}\n\nfunction assertEntityIdMatchesPayload(entityId: string, payloadEntityId: string, payloadField: string): void {\n if (entityId === payloadEntityId) return;\n throw new WholesaleFeedWebhookNotificationError(\n 'wholesale_feed_webhook_field_invalid',\n `wholesale-feed webhook event.entity_id must match event.payload.${payloadField}.`,\n { field: 'event.entity_id', expected: payloadEntityId, actual: entityId }\n );\n}\n\nfunction readRequiredPayloadScope(payload: Record<string, unknown>): WholesaleFeedWebhookCacheScope {\n const appliesToRecord = readRequiredRecord(payload, 'event.payload.applies_to');\n return readCacheScope(\n readRequiredString(appliesToRecord, 'event.payload.applies_to.scope'),\n 'event.payload.applies_to.scope'\n );\n}\n\nfunction readBulkChangeAffectedEntityType(payload: Record<string, unknown>): WholesaleFeedWebhookAffectedEntityType {\n const affected = payload.affected_entity_type;\n if (affected === 'product' || affected === 'signal') return affected;\n throw new WholesaleFeedWebhookNotificationError(\n 'wholesale_feed_webhook_bulk_change_invalid',\n 'wholesale_feed.bulk_change payload requires affected_entity_type of \"product\" or \"signal\".',\n { field: 'event.payload.affected_entity_type', expected: ['product', 'signal'], actual: describeValue(affected) }\n );\n}\n\nfunction describeValue(value: unknown): string {\n if (value === null) return 'null';\n if (Array.isArray(value)) return 'array';\n return typeof value;\n}\n"],"mappings":";;;;;;AAAA,SAAS,iBAAiB;AAsBnB,MAAM,8CAA8C,UAAU;AAAA,EAC1D;AAAA,EACA;AAAA,EAET,YACE,MACA,SACA,UAAwD,CAAC,GACzD;AACA,UAAM,SAAS,OAAO;AACtB,SAAK,OAAO;AACZ,SAAK,QAAQ,QAAQ;AAAA,EACvB;AACF;AA8BA,MAAM,oCAAoC,oBAAI,IAA0C;AAAA,EACtF;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,CAAC;AAUM,SAAS,sCAAsC,OAA4D;AAChH,QAAM,SAAS,WAAW,KAAK;AAC/B,QAAM,UAAU,WAAW,QAAQ,GAAG;AACtC,QAAM,QAAQ,WAAW,QAAQ,OAAO,OAAO;AAE/C,QAAM,iBAAiB,mBAAmB,SAAS,iBAAiB;AACpE,QAAM,iBAAiB,mBAAmB,SAAS,iBAAiB;AACpE,QAAM,mBAAmB,qBAAqB,mBAAmB,SAAS,mBAAmB,GAAG,mBAAmB;AACnH,QAAM,UAAU,mBAAmB,SAAS,UAAU;AACtD,QAAM,eAAe,mBAAmB,SAAS,eAAe;AAChE,QAAM,YAAY,mBAAmB,SAAS,YAAY;AAC1D,QAAM,uBAAuB,mBAAmB,SAAS,wBAAwB;AACjF,QAAM,+BAA+B,mBAAmB,SAAS,iCAAiC;AAClG,QAAM,aAAa,eAAe,mBAAmB,SAAS,aAAa,GAAG,aAAa;AAE3F,QAAM,UAAU,mBAAmB,OAAO,gBAAgB;AAC1D,MAAI,mBAAmB,SAAS;AAC9B,UAAM,IAAI;AAAA,MACR;AAAA,MACA;AAAA,MACA,EAAE,OAAO,mBAAmB,UAAU,SAAS,QAAQ,eAAe;AAAA,IACxE;AAAA,EACF;AAEA,QAAM,YAAY,qBAAqB,mBAAmB,OAAO,kBAAkB,GAAG,kBAAkB;AACxG,MAAI,qBAAqB,WAAW;AAClC,UAAM,IAAI;AAAA,MACR;AAAA,MACA;AAAA,MACA,EAAE,OAAO,qBAAqB,UAAU,WAAW,QAAQ,iBAAiB;AAAA,IAC9E;AAAA,EACF;AAEA,QAAM,aAAa,eAAe,mBAAmB,OAAO,mBAAmB,GAAG,mBAAmB;AACrG,sCAAoC,kBAAkB,UAAU;AAChE,QAAM,WAAW,mBAAmB,OAAO,iBAAiB;AAC5D,QAAM,iBAAiB,mBAAmB,OAAO,kBAAkB;AACnE,QAAM,UAAU,WAAW,MAAM,SAAS,eAAe;AAEzD,QAAM,eAAe,yBAAyB,OAAO;AACrD,MAAI,iBAAiB,YAAY;AAC/B,UAAM,IAAI;AAAA,MACR;AAAA,MACA;AAAA,MACA,EAAE,OAAO,eAAe,UAAU,cAAc,QAAQ,WAAW;AAAA,IACrE;AAAA,EACF;AAEA,QAAM,qBAAqB,wBAAwB,kBAAkB,UAAU,OAAO;AAEtF,SAAO;AAAA,IACL;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,GAAI,iCAAiC,UAAa,EAAE,6BAA6B;AAAA,IACjF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,GAAI,uBAAuB,UAAa,EAAE,mBAAmB;AAAA,IAC7D;AAAA,IACA;AAAA,EACF;AACF;AAEO,MAAM,4CAA4C;AAEzD,SAAS,WAAW,OAAyB;AAC3C,MAAI,OAAO,UAAU,SAAU,QAAO,UAAU,KAAK;AACrD,MAAI,iBAAiB,WAAY,QAAO,UAAU,IAAI,YAAY,EAAE,OAAO,KAAK,CAAC;AACjF,SAAO;AACT;AAEA,SAAS,UAAU,KAAsB;AACvC,MAAI;AACF,WAAO,KAAK,MAAM,GAAG;AAAA,EACvB,SAAS,KAAK;AACZ,UAAM,IAAI;AAAA,MACR;AAAA,MACA;AAAA,MACA,EAAE,OAAO,KAAK,QAAQ,eAAe,QAAQ,IAAI,UAAU,OAAO,GAAG,EAAE;AAAA,IACzE;AAAA,EACF;AACF;AAEA,SAAS,WAAW,OAAgB,OAAwC;AAC1E,MAAI,SAAS,OAAO,UAAU,YAAY,CAAC,MAAM,QAAQ,KAAK,EAAG,QAAO;AACxE,QAAM,IAAI;AAAA,IACR,UAAU,MAAM,0CAA0C;AAAA,IAC1D,UAAU,MACN,uDACA,gCAAgC,KAAK;AAAA,IACzC,EAAE,OAAO,UAAU,UAAU,QAAQ,cAAc,KAAK,EAAE;AAAA,EAC5D;AACF;AAEA,SAAS,mBAAmB,KAA8B,OAAwC;AAChG,QAAM,MAAM,MAAM,SAAS,GAAG,IAAI,MAAM,MAAM,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI;AAC5E,QAAM,QAAQ,IAAI,GAAG;AACrB,MAAI,UAAU,QAAW;AACvB,UAAM,IAAI;AAAA,MACR;AAAA,MACA,gCAAgC,KAAK;AAAA,MACrC,EAAE,OAAO,UAAU,UAAU,QAAQ,cAAc,KAAK,EAAE;AAAA,IAC5D;AAAA,EACF;AACA,SAAO,WAAW,OAAO,KAAK;AAChC;AAEA,SAAS,mBAAmB,KAA8B,OAAuB;AAC/E,QAAM,MAAM,MAAM,SAAS,GAAG,IAAI,MAAM,MAAM,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI;AAC5E,QAAM,QAAQ,IAAI,GAAG;AACrB,MAAI,OAAO,UAAU,YAAY,MAAM,SAAS,EAAG,QAAO;AAC1D,QAAM,IAAI;AAAA,IACR,UAAU,SAAY,yCAAyC;AAAA,IAC/D,gCAAgC,KAAK;AAAA,IACrC,EAAE,OAAO,UAAU,oBAAoB,QAAQ,cAAc,KAAK,EAAE;AAAA,EACtE;AACF;AAEA,SAAS,0BAA0B,KAA8B,OAA0B;AACzF,QAAM,MAAM,MAAM,SAAS,GAAG,IAAI,MAAM,MAAM,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI;AAC5E,QAAM,QAAQ,IAAI,GAAG;AACrB,MAAI,MAAM,QAAQ,KAAK,KAAK,MAAM,SAAS,EAAG,QAAO;AACrD,QAAM,IAAI;AAAA,IACR,UAAU,SAAY,yCAAyC;AAAA,IAC/D,gCAAgC,KAAK;AAAA,IACrC,EAAE,OAAO,UAAU,mBAAmB,QAAQ,cAAc,KAAK,EAAE;AAAA,EACrE;AACF;AAEA,SAAS,4BAA4B,KAA8B,OAAuB;AACxF,QAAM,MAAM,MAAM,SAAS,GAAG,IAAI,MAAM,MAAM,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI;AAC5E,QAAM,QAAQ,IAAI,GAAG;AACrB,MAAI,OAAO,UAAU,KAAK,KAAM,QAAmB,EAAG,QAAO;AAC7D,QAAM,IAAI;AAAA,IACR,UAAU,SAAY,yCAAyC;AAAA,IAC/D,gCAAgC,KAAK;AAAA,IACrC,EAAE,OAAO,UAAU,oBAAoB,QAAQ,cAAc,KAAK,EAAE;AAAA,EACtE;AACF;AAEA,SAAS,mBAAmB,KAA8B,OAAmC;AAC3F,QAAM,QAAQ,IAAI,KAAK;AACvB,MAAI,UAAU,OAAW,QAAO;AAChC,MAAI,OAAO,UAAU,YAAY,MAAM,SAAS,EAAG,QAAO;AAC1D,QAAM,IAAI;AAAA,IACR;AAAA,IACA,gCAAgC,KAAK;AAAA,IACrC,EAAE,OAAO,UAAU,oBAAoB,QAAQ,cAAc,KAAK,EAAE;AAAA,EACtE;AACF;AAEA,SAAS,qBAAqB,OAAe,OAAqD;AAChG,MAAI,kCAAkC,IAAI,KAA6C,GAAG;AACxF,WAAO;AAAA,EACT;AACA,QAAM,IAAI;AAAA,IACR;AAAA,IACA,gCAAgC,KAAK;AAAA,IACrC,EAAE,OAAO,UAAU,CAAC,GAAG,iCAAiC,GAAG,QAAQ,MAAM;AAAA,EAC3E;AACF;AAEA,SAAS,eAAe,OAAe,OAA+C;AACpF,MAAI,UAAU,YAAY,UAAU,UAAW,QAAO;AACtD,QAAM,IAAI;AAAA,IACR;AAAA,IACA,gCAAgC,KAAK;AAAA,IACrC,EAAE,OAAO,UAAU,CAAC,UAAU,SAAS,GAAG,QAAQ,MAAM;AAAA,EAC1D;AACF;AAEA,SAAS,eAAe,OAAe,OAAyE;AAC9G,MAAI,UAAU,aAAa,UAAU,YAAY,UAAU,OAAQ,QAAO;AAC1E,QAAM,IAAI;AAAA,IACR;AAAA,IACA,gCAAgC,KAAK;AAAA,IACrC,EAAE,OAAO,UAAU,CAAC,WAAW,UAAU,MAAM,GAAG,QAAQ,MAAM;AAAA,EAClE;AACF;AAEA,SAAS,oCACP,kBACA,YACM;AACN,QAAM,WAAW,iBAAiB,WAAW,UAAU,IACnD,YACA,iBAAiB,WAAW,SAAS,IACnC,WACA;AAEN,MAAI,eAAe,UAAU;AAC3B,UAAM,IAAI;AAAA,MACR;AAAA,MACA;AAAA,MACA,EAAE,OAAO,qBAAqB,UAAU,QAAQ,WAAW;AAAA,IAC7D;AAAA,EACF;AACF;AAEA,SAAS,wBACP,kBACA,UACA,SACoD;AACpD,UAAQ,kBAAkB;AAAA,IACxB,KAAK;AAAA,IACL,KAAK,mBAAmB;AACtB,mCAA6B,UAAU,mBAAmB,SAAS,0BAA0B,GAAG,YAAY;AAC5G,yBAAmB,SAAS,uBAAuB;AACnD,aAAO;AAAA,IACT;AAAA,IACA,KAAK,kBAAkB;AACrB,mCAA6B,UAAU,mBAAmB,SAAS,0BAA0B,GAAG,YAAY;AAC5G,gCAA0B,SAAS,+BAA+B;AAClE,aAAO;AAAA,IACT;AAAA,IACA,KAAK,mBAAmB;AACtB,mCAA6B,UAAU,mBAAmB,SAAS,0BAA0B,GAAG,YAAY;AAC5G,aAAO;AAAA,IACT;AAAA,IACA,KAAK;AAAA,IACL,KAAK,kBAAkB;AACrB;AAAA,QACE;AAAA,QACA,mBAAmB,SAAS,uCAAuC;AAAA,QACnE;AAAA,MACF;AACA,yBAAmB,SAAS,sBAAsB;AAClD,aAAO;AAAA,IACT;AAAA,IACA,KAAK,iBAAiB;AACpB;AAAA,QACE;AAAA,QACA,mBAAmB,SAAS,uCAAuC;AAAA,QACnE;AAAA,MACF;AACA,gCAA0B,SAAS,+BAA+B;AAClE,aAAO;AAAA,IACT;AAAA,IACA,KAAK,kBAAkB;AACrB;AAAA,QACE;AAAA,QACA,mBAAmB,SAAS,uCAAuC;AAAA,QACnE;AAAA,MACF;AACA,aAAO;AAAA,IACT;AAAA,IACA,KAAK;AACH,yBAAmB,SAAS,uBAAuB;AACnD,kCAA4B,SAAS,8BAA8B;AACnE,aAAO,iCAAiC,OAAO;AAAA,EACnD;AACF;AAEA,SAAS,6BAA6B,UAAkB,iBAAyB,cAA4B;AAC3G,MAAI,aAAa,gBAAiB;AAClC,QAAM,IAAI;AAAA,IACR;AAAA,IACA,mEAAmE,YAAY;AAAA,IAC/E,EAAE,OAAO,mBAAmB,UAAU,iBAAiB,QAAQ,SAAS;AAAA,EAC1E;AACF;AAEA,SAAS,yBAAyB,SAAkE;AAClG,QAAM,kBAAkB,mBAAmB,SAAS,0BAA0B;AAC9E,SAAO;AAAA,IACL,mBAAmB,iBAAiB,gCAAgC;AAAA,IACpE;AAAA,EACF;AACF;AAEA,SAAS,iCAAiC,SAA0E;AAClH,QAAM,WAAW,QAAQ;AACzB,MAAI,aAAa,aAAa,aAAa,SAAU,QAAO;AAC5D,QAAM,IAAI;AAAA,IACR;AAAA,IACA;AAAA,IACA,EAAE,OAAO,sCAAsC,UAAU,CAAC,WAAW,QAAQ,GAAG,QAAQ,cAAc,QAAQ,EAAE;AAAA,EAClH;AACF;AAEA,SAAS,cAAc,OAAwB;AAC7C,MAAI,UAAU,KAAM,QAAO;AAC3B,MAAI,MAAM,QAAQ,KAAK,EAAG,QAAO;AACjC,SAAO,OAAO;AAChB;","names":[]}
|
|
1
|
+
{"version":3,"sources":["../../../src/lib/wholesale-feed-sync/webhook-notification.ts"],"sourcesContent":["import { ADCPError } from '../errors';\nimport type * as V31Beta from '../types/v3-1-beta';\n\nexport type WholesaleFeedWebhookNotificationType = V31Beta.WholesaleFeedWebhook['notification_type'];\nexport type WholesaleFeedWebhookAffectedEntityType = 'product' | 'signal';\nexport type WholesaleFeedWebhookCacheScope = V31Beta.WholesaleFeedWebhook['cache_scope'];\n\nexport type WholesaleFeedWebhookNotificationErrorCode =\n | 'wholesale_feed_webhook_body_malformed'\n | 'wholesale_feed_webhook_field_missing'\n | 'wholesale_feed_webhook_field_invalid'\n | 'wholesale_feed_webhook_notification_type_mismatch'\n | 'wholesale_feed_webhook_entity_type_mismatch'\n | 'wholesale_feed_webhook_cache_scope_mismatch'\n | 'wholesale_feed_webhook_bulk_change_invalid';\n\nexport interface WholesaleFeedWebhookNotificationErrorDetails {\n field?: string;\n expected?: unknown;\n actual?: unknown;\n}\n\nexport class WholesaleFeedWebhookNotificationError extends ADCPError {\n readonly code: WholesaleFeedWebhookNotificationErrorCode;\n readonly field: string | undefined;\n\n constructor(\n code: WholesaleFeedWebhookNotificationErrorCode,\n message: string,\n details: WholesaleFeedWebhookNotificationErrorDetails = {}\n ) {\n super(message, details);\n this.code = code;\n this.field = details.field;\n }\n}\n\nexport interface NormalizedWholesaleFeedWebhookNotification {\n /** Delivery replay/dedupe key. Scope this to the authenticated sender identity. */\n idempotencyKey: string;\n /** Envelope notification identifier. Must match the nested domain event id. */\n notificationId: string;\n /** Envelope notification type. Guaranteed to match `event.event_type`. */\n notificationType: WholesaleFeedWebhookNotificationType;\n /** Tenant/account identifier for the receiving subscription. */\n accountId: string;\n /** Registered account notification subscriber id. */\n subscriberId: string;\n /** ISO timestamp when this webhook delivery was fired. */\n firedAt: string;\n wholesaleFeedVersion: string;\n previousWholesaleFeedVersion?: string;\n cacheScope: WholesaleFeedWebhookCacheScope;\n /** Stable domain event id nested under `event`. Not the delivery dedupe key. */\n eventId: string;\n eventType: WholesaleFeedWebhookNotificationType;\n entityType: 'product' | 'signal' | 'feed';\n entityId: string;\n eventCreatedAt: string;\n /** Present for `wholesale_feed.bulk_change` notifications. */\n affectedEntityType?: WholesaleFeedWebhookAffectedEntityType;\n event: V31Beta.WholesaleFeedEvent;\n webhook: V31Beta.WholesaleFeedWebhook;\n}\n\nconst WHOLESALE_FEED_NOTIFICATION_TYPES = new Set<WholesaleFeedWebhookNotificationType>([\n 'product.created',\n 'product.updated',\n 'product.priced',\n 'product.removed',\n 'signal.created',\n 'signal.updated',\n 'signal.priced',\n 'signal.removed',\n 'wholesale_feed.bulk_change',\n]);\n\n/**\n * Parse and normalize a canonical wholesale-feed webhook notification.\n *\n * The normalized shape intentionally separates `idempotencyKey` (delivery\n * replay/dedupe) from `eventId` / `notificationId` (domain event identity).\n * It validates envelope-level invariants, including the canonical\n * `notification_id === event.event_id` match.\n */\nexport function parseWholesaleFeedWebhookNotification(input: unknown): NormalizedWholesaleFeedWebhookNotification {\n const parsed = parseInput(input);\n const webhook = readRecord(parsed, '$');\n const event = readRecord(webhook.event, 'event');\n\n const idempotencyKey = readRequiredString(webhook, 'idempotency_key');\n const notificationId = readRequiredString(webhook, 'notification_id');\n const notificationType = readNotificationType(readRequiredString(webhook, 'notification_type'), 'notification_type');\n const firedAt = readRequiredString(webhook, 'fired_at');\n const subscriberId = readRequiredString(webhook, 'subscriber_id');\n const accountId = readRequiredString(webhook, 'account_id');\n const wholesaleFeedVersion = readRequiredString(webhook, 'wholesale_feed_version');\n const previousWholesaleFeedVersion = readOptionalString(webhook, 'previous_wholesale_feed_version');\n const cacheScope = readCacheScope(readRequiredString(webhook, 'cache_scope'), 'cache_scope');\n\n const eventId = readRequiredString(event, 'event.event_id');\n if (notificationId !== eventId) {\n throw new WholesaleFeedWebhookNotificationError(\n 'wholesale_feed_webhook_field_invalid',\n 'wholesale-feed webhook notification_id must match event.event_id.',\n { field: 'notification_id', expected: eventId, actual: notificationId }\n );\n }\n\n const eventType = readNotificationType(readRequiredString(event, 'event.event_type'), 'event.event_type');\n if (notificationType !== eventType) {\n throw new WholesaleFeedWebhookNotificationError(\n 'wholesale_feed_webhook_notification_type_mismatch',\n 'wholesale-feed webhook notification_type must match event.event_type.',\n { field: 'notification_type', expected: eventType, actual: notificationType }\n );\n }\n\n const entityType = readEntityType(readRequiredString(event, 'event.entity_type'), 'event.entity_type');\n assertEntityTypeMatchesNotification(notificationType, entityType);\n const entityId = readRequiredString(event, 'event.entity_id');\n const eventCreatedAt = readRequiredString(event, 'event.created_at');\n const payload = readRecord(event.payload, 'event.payload');\n\n const payloadScope = readRequiredPayloadScope(payload);\n if (payloadScope !== cacheScope) {\n throw new WholesaleFeedWebhookNotificationError(\n 'wholesale_feed_webhook_cache_scope_mismatch',\n 'wholesale-feed webhook cache_scope must match event.payload.applies_to.scope.',\n { field: 'cache_scope', expected: payloadScope, actual: cacheScope }\n );\n }\n\n const affectedEntityType = validatePayloadForEvent(notificationType, entityId, payload);\n\n return {\n idempotencyKey,\n notificationId,\n notificationType,\n accountId,\n subscriberId,\n firedAt,\n wholesaleFeedVersion,\n ...(previousWholesaleFeedVersion !== undefined && { previousWholesaleFeedVersion }),\n cacheScope,\n eventId,\n eventType,\n entityType,\n entityId,\n eventCreatedAt,\n ...(affectedEntityType !== undefined && { affectedEntityType }),\n event: event as V31Beta.WholesaleFeedEvent,\n webhook: webhook as V31Beta.WholesaleFeedWebhook,\n };\n}\n\nexport const normalizeWholesaleFeedWebhookNotification = parseWholesaleFeedWebhookNotification;\n\nfunction parseInput(input: unknown): unknown {\n if (typeof input === 'string') return parseJson(input);\n if (input instanceof Uint8Array) return parseJson(new TextDecoder().decode(input));\n return input;\n}\n\nfunction parseJson(raw: string): unknown {\n try {\n return JSON.parse(raw);\n } catch (err) {\n throw new WholesaleFeedWebhookNotificationError(\n 'wholesale_feed_webhook_body_malformed',\n 'wholesale-feed webhook body must be valid JSON.',\n { field: '$', actual: err instanceof Error ? err.message : String(err) }\n );\n }\n}\n\nfunction readRecord(value: unknown, field: string): Record<string, unknown> {\n if (value && typeof value === 'object' && !Array.isArray(value)) return value as Record<string, unknown>;\n throw new WholesaleFeedWebhookNotificationError(\n field === '$' ? 'wholesale_feed_webhook_body_malformed' : 'wholesale_feed_webhook_field_invalid',\n field === '$'\n ? 'wholesale-feed webhook body must be a JSON object.'\n : `wholesale-feed webhook field ${field} must be an object.`,\n { field, expected: 'object', actual: describeValue(value) }\n );\n}\n\nfunction readRequiredRecord(obj: Record<string, unknown>, field: string): Record<string, unknown> {\n const key = field.includes('.') ? field.slice(field.lastIndexOf('.') + 1) : field;\n const value = obj[key];\n if (value === undefined) {\n throw new WholesaleFeedWebhookNotificationError(\n 'wholesale_feed_webhook_field_missing',\n `wholesale-feed webhook field ${field} must be an object.`,\n { field, expected: 'object', actual: describeValue(value) }\n );\n }\n return readRecord(value, field);\n}\n\nfunction readRequiredString(obj: Record<string, unknown>, field: string): string {\n const key = field.includes('.') ? field.slice(field.lastIndexOf('.') + 1) : field;\n const value = obj[key];\n if (typeof value === 'string' && value.length > 0) return value;\n throw new WholesaleFeedWebhookNotificationError(\n value === undefined ? 'wholesale_feed_webhook_field_missing' : 'wholesale_feed_webhook_field_invalid',\n `wholesale-feed webhook field ${field} must be a non-empty string.`,\n { field, expected: 'non-empty string', actual: describeValue(value) }\n );\n}\n\nfunction readRequiredNonEmptyArray(obj: Record<string, unknown>, field: string): unknown[] {\n const key = field.includes('.') ? field.slice(field.lastIndexOf('.') + 1) : field;\n const value = obj[key];\n if (Array.isArray(value) && value.length > 0) return value;\n throw new WholesaleFeedWebhookNotificationError(\n value === undefined ? 'wholesale_feed_webhook_field_missing' : 'wholesale_feed_webhook_field_invalid',\n `wholesale-feed webhook field ${field} must be a non-empty array.`,\n { field, expected: 'non-empty array', actual: describeValue(value) }\n );\n}\n\nfunction readRequiredPositiveInteger(obj: Record<string, unknown>, field: string): number {\n const key = field.includes('.') ? field.slice(field.lastIndexOf('.') + 1) : field;\n const value = obj[key];\n if (Number.isInteger(value) && (value as number) > 0) return value as number;\n throw new WholesaleFeedWebhookNotificationError(\n value === undefined ? 'wholesale_feed_webhook_field_missing' : 'wholesale_feed_webhook_field_invalid',\n `wholesale-feed webhook field ${field} must be a positive integer.`,\n { field, expected: 'positive integer', actual: describeValue(value) }\n );\n}\n\nfunction readOptionalString(obj: Record<string, unknown>, field: string): string | undefined {\n const value = obj[field];\n if (value === undefined) return undefined;\n if (typeof value === 'string' && value.length > 0) return value;\n throw new WholesaleFeedWebhookNotificationError(\n 'wholesale_feed_webhook_field_invalid',\n `wholesale-feed webhook field ${field} must be a non-empty string when present.`,\n { field, expected: 'non-empty string', actual: describeValue(value) }\n );\n}\n\nfunction readNotificationType(value: string, field: string): WholesaleFeedWebhookNotificationType {\n if (WHOLESALE_FEED_NOTIFICATION_TYPES.has(value as WholesaleFeedWebhookNotificationType)) {\n return value as WholesaleFeedWebhookNotificationType;\n }\n throw new WholesaleFeedWebhookNotificationError(\n 'wholesale_feed_webhook_field_invalid',\n `wholesale-feed webhook field ${field} is not a supported wholesale-feed notification type.`,\n { field, expected: [...WHOLESALE_FEED_NOTIFICATION_TYPES], actual: value }\n );\n}\n\nfunction readCacheScope(value: string, field: string): WholesaleFeedWebhookCacheScope {\n if (value === 'public' || value === 'account') return value;\n throw new WholesaleFeedWebhookNotificationError(\n 'wholesale_feed_webhook_field_invalid',\n `wholesale-feed webhook field ${field} must be \"public\" or \"account\".`,\n { field, expected: ['public', 'account'], actual: value }\n );\n}\n\nfunction readEntityType(value: string, field: string): NormalizedWholesaleFeedWebhookNotification['entityType'] {\n if (value === 'product' || value === 'signal' || value === 'feed') return value;\n throw new WholesaleFeedWebhookNotificationError(\n 'wholesale_feed_webhook_field_invalid',\n `wholesale-feed webhook field ${field} must be \"product\", \"signal\", or \"feed\".`,\n { field, expected: ['product', 'signal', 'feed'], actual: value }\n );\n}\n\nfunction assertEntityTypeMatchesNotification(\n notificationType: WholesaleFeedWebhookNotificationType,\n entityType: NormalizedWholesaleFeedWebhookNotification['entityType']\n): void {\n const expected = notificationType.startsWith('product.')\n ? 'product'\n : notificationType.startsWith('signal.')\n ? 'signal'\n : 'feed';\n\n if (entityType !== expected) {\n throw new WholesaleFeedWebhookNotificationError(\n 'wholesale_feed_webhook_entity_type_mismatch',\n 'wholesale-feed webhook event.entity_type does not match event.event_type.',\n { field: 'event.entity_type', expected, actual: entityType }\n );\n }\n}\n\nfunction validatePayloadForEvent(\n notificationType: WholesaleFeedWebhookNotificationType,\n entityId: string,\n payload: Record<string, unknown>\n): WholesaleFeedWebhookAffectedEntityType | undefined {\n switch (notificationType) {\n case 'product.created':\n case 'product.updated': {\n assertEntityIdMatchesPayload(entityId, readRequiredString(payload, 'event.payload.product_id'), 'product_id');\n readRequiredRecord(payload, 'event.payload.product');\n return undefined;\n }\n case 'product.priced': {\n assertEntityIdMatchesPayload(entityId, readRequiredString(payload, 'event.payload.product_id'), 'product_id');\n readRequiredNonEmptyArray(payload, 'event.payload.pricing_options');\n return undefined;\n }\n case 'product.removed': {\n assertEntityIdMatchesPayload(entityId, readRequiredString(payload, 'event.payload.product_id'), 'product_id');\n return undefined;\n }\n case 'signal.created':\n case 'signal.updated': {\n assertEntityIdMatchesPayload(\n entityId,\n readRequiredString(payload, 'event.payload.signal_agent_segment_id'),\n 'signal_agent_segment_id'\n );\n readRequiredRecord(payload, 'event.payload.signal');\n return undefined;\n }\n case 'signal.priced': {\n assertEntityIdMatchesPayload(\n entityId,\n readRequiredString(payload, 'event.payload.signal_agent_segment_id'),\n 'signal_agent_segment_id'\n );\n readRequiredNonEmptyArray(payload, 'event.payload.pricing_options');\n return undefined;\n }\n case 'signal.removed': {\n assertEntityIdMatchesPayload(\n entityId,\n readRequiredString(payload, 'event.payload.signal_agent_segment_id'),\n 'signal_agent_segment_id'\n );\n return undefined;\n }\n case 'wholesale_feed.bulk_change':\n readRequiredString(payload, 'event.payload.summary');\n readRequiredPositiveInteger(payload, 'event.payload.affected_count');\n return readBulkChangeAffectedEntityType(payload);\n }\n}\n\nfunction assertEntityIdMatchesPayload(entityId: string, payloadEntityId: string, payloadField: string): void {\n if (entityId === payloadEntityId) return;\n throw new WholesaleFeedWebhookNotificationError(\n 'wholesale_feed_webhook_field_invalid',\n `wholesale-feed webhook event.entity_id must match event.payload.${payloadField}.`,\n { field: 'event.entity_id', expected: payloadEntityId, actual: entityId }\n );\n}\n\nfunction readRequiredPayloadScope(payload: Record<string, unknown>): WholesaleFeedWebhookCacheScope {\n const appliesToRecord = readRequiredRecord(payload, 'event.payload.applies_to');\n return readCacheScope(\n readRequiredString(appliesToRecord, 'event.payload.applies_to.scope'),\n 'event.payload.applies_to.scope'\n );\n}\n\nfunction readBulkChangeAffectedEntityType(payload: Record<string, unknown>): WholesaleFeedWebhookAffectedEntityType {\n const affected = payload.affected_entity_type;\n if (affected === 'product' || affected === 'signal') return affected;\n throw new WholesaleFeedWebhookNotificationError(\n 'wholesale_feed_webhook_bulk_change_invalid',\n 'wholesale_feed.bulk_change payload requires affected_entity_type of \"product\" or \"signal\".',\n { field: 'event.payload.affected_entity_type', expected: ['product', 'signal'], actual: describeValue(affected) }\n );\n}\n\nfunction describeValue(value: unknown): string {\n if (value === null) return 'null';\n if (Array.isArray(value)) return 'array';\n return typeof value;\n}\n"],"mappings":"AAAA,SAAS,iBAAiB;AAsBnB,MAAM,8CAA8C,UAAU;AAAA,EAC1D;AAAA,EACA;AAAA,EAET,YACE,MACA,SACA,UAAwD,CAAC,GACzD;AACA,UAAM,SAAS,OAAO;AACtB,SAAK,OAAO;AACZ,SAAK,QAAQ,QAAQ;AAAA,EACvB;AACF;AA8BA,MAAM,oCAAoC,oBAAI,IAA0C;AAAA,EACtF;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,CAAC;AAUM,SAAS,sCAAsC,OAA4D;AAChH,QAAM,SAAS,WAAW,KAAK;AAC/B,QAAM,UAAU,WAAW,QAAQ,GAAG;AACtC,QAAM,QAAQ,WAAW,QAAQ,OAAO,OAAO;AAE/C,QAAM,iBAAiB,mBAAmB,SAAS,iBAAiB;AACpE,QAAM,iBAAiB,mBAAmB,SAAS,iBAAiB;AACpE,QAAM,mBAAmB,qBAAqB,mBAAmB,SAAS,mBAAmB,GAAG,mBAAmB;AACnH,QAAM,UAAU,mBAAmB,SAAS,UAAU;AACtD,QAAM,eAAe,mBAAmB,SAAS,eAAe;AAChE,QAAM,YAAY,mBAAmB,SAAS,YAAY;AAC1D,QAAM,uBAAuB,mBAAmB,SAAS,wBAAwB;AACjF,QAAM,+BAA+B,mBAAmB,SAAS,iCAAiC;AAClG,QAAM,aAAa,eAAe,mBAAmB,SAAS,aAAa,GAAG,aAAa;AAE3F,QAAM,UAAU,mBAAmB,OAAO,gBAAgB;AAC1D,MAAI,mBAAmB,SAAS;AAC9B,UAAM,IAAI;AAAA,MACR;AAAA,MACA;AAAA,MACA,EAAE,OAAO,mBAAmB,UAAU,SAAS,QAAQ,eAAe;AAAA,IACxE;AAAA,EACF;AAEA,QAAM,YAAY,qBAAqB,mBAAmB,OAAO,kBAAkB,GAAG,kBAAkB;AACxG,MAAI,qBAAqB,WAAW;AAClC,UAAM,IAAI;AAAA,MACR;AAAA,MACA;AAAA,MACA,EAAE,OAAO,qBAAqB,UAAU,WAAW,QAAQ,iBAAiB;AAAA,IAC9E;AAAA,EACF;AAEA,QAAM,aAAa,eAAe,mBAAmB,OAAO,mBAAmB,GAAG,mBAAmB;AACrG,sCAAoC,kBAAkB,UAAU;AAChE,QAAM,WAAW,mBAAmB,OAAO,iBAAiB;AAC5D,QAAM,iBAAiB,mBAAmB,OAAO,kBAAkB;AACnE,QAAM,UAAU,WAAW,MAAM,SAAS,eAAe;AAEzD,QAAM,eAAe,yBAAyB,OAAO;AACrD,MAAI,iBAAiB,YAAY;AAC/B,UAAM,IAAI;AAAA,MACR;AAAA,MACA;AAAA,MACA,EAAE,OAAO,eAAe,UAAU,cAAc,QAAQ,WAAW;AAAA,IACrE;AAAA,EACF;AAEA,QAAM,qBAAqB,wBAAwB,kBAAkB,UAAU,OAAO;AAEtF,SAAO;AAAA,IACL;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,GAAI,iCAAiC,UAAa,EAAE,6BAA6B;AAAA,IACjF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,GAAI,uBAAuB,UAAa,EAAE,mBAAmB;AAAA,IAC7D;AAAA,IACA;AAAA,EACF;AACF;AAEO,MAAM,4CAA4C;AAEzD,SAAS,WAAW,OAAyB;AAC3C,MAAI,OAAO,UAAU,SAAU,QAAO,UAAU,KAAK;AACrD,MAAI,iBAAiB,WAAY,QAAO,UAAU,IAAI,YAAY,EAAE,OAAO,KAAK,CAAC;AACjF,SAAO;AACT;AAEA,SAAS,UAAU,KAAsB;AACvC,MAAI;AACF,WAAO,KAAK,MAAM,GAAG;AAAA,EACvB,SAAS,KAAK;AACZ,UAAM,IAAI;AAAA,MACR;AAAA,MACA;AAAA,MACA,EAAE,OAAO,KAAK,QAAQ,eAAe,QAAQ,IAAI,UAAU,OAAO,GAAG,EAAE;AAAA,IACzE;AAAA,EACF;AACF;AAEA,SAAS,WAAW,OAAgB,OAAwC;AAC1E,MAAI,SAAS,OAAO,UAAU,YAAY,CAAC,MAAM,QAAQ,KAAK,EAAG,QAAO;AACxE,QAAM,IAAI;AAAA,IACR,UAAU,MAAM,0CAA0C;AAAA,IAC1D,UAAU,MACN,uDACA,gCAAgC,KAAK;AAAA,IACzC,EAAE,OAAO,UAAU,UAAU,QAAQ,cAAc,KAAK,EAAE;AAAA,EAC5D;AACF;AAEA,SAAS,mBAAmB,KAA8B,OAAwC;AAChG,QAAM,MAAM,MAAM,SAAS,GAAG,IAAI,MAAM,MAAM,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI;AAC5E,QAAM,QAAQ,IAAI,GAAG;AACrB,MAAI,UAAU,QAAW;AACvB,UAAM,IAAI;AAAA,MACR;AAAA,MACA,gCAAgC,KAAK;AAAA,MACrC,EAAE,OAAO,UAAU,UAAU,QAAQ,cAAc,KAAK,EAAE;AAAA,IAC5D;AAAA,EACF;AACA,SAAO,WAAW,OAAO,KAAK;AAChC;AAEA,SAAS,mBAAmB,KAA8B,OAAuB;AAC/E,QAAM,MAAM,MAAM,SAAS,GAAG,IAAI,MAAM,MAAM,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI;AAC5E,QAAM,QAAQ,IAAI,GAAG;AACrB,MAAI,OAAO,UAAU,YAAY,MAAM,SAAS,EAAG,QAAO;AAC1D,QAAM,IAAI;AAAA,IACR,UAAU,SAAY,yCAAyC;AAAA,IAC/D,gCAAgC,KAAK;AAAA,IACrC,EAAE,OAAO,UAAU,oBAAoB,QAAQ,cAAc,KAAK,EAAE;AAAA,EACtE;AACF;AAEA,SAAS,0BAA0B,KAA8B,OAA0B;AACzF,QAAM,MAAM,MAAM,SAAS,GAAG,IAAI,MAAM,MAAM,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI;AAC5E,QAAM,QAAQ,IAAI,GAAG;AACrB,MAAI,MAAM,QAAQ,KAAK,KAAK,MAAM,SAAS,EAAG,QAAO;AACrD,QAAM,IAAI;AAAA,IACR,UAAU,SAAY,yCAAyC;AAAA,IAC/D,gCAAgC,KAAK;AAAA,IACrC,EAAE,OAAO,UAAU,mBAAmB,QAAQ,cAAc,KAAK,EAAE;AAAA,EACrE;AACF;AAEA,SAAS,4BAA4B,KAA8B,OAAuB;AACxF,QAAM,MAAM,MAAM,SAAS,GAAG,IAAI,MAAM,MAAM,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI;AAC5E,QAAM,QAAQ,IAAI,GAAG;AACrB,MAAI,OAAO,UAAU,KAAK,KAAM,QAAmB,EAAG,QAAO;AAC7D,QAAM,IAAI;AAAA,IACR,UAAU,SAAY,yCAAyC;AAAA,IAC/D,gCAAgC,KAAK;AAAA,IACrC,EAAE,OAAO,UAAU,oBAAoB,QAAQ,cAAc,KAAK,EAAE;AAAA,EACtE;AACF;AAEA,SAAS,mBAAmB,KAA8B,OAAmC;AAC3F,QAAM,QAAQ,IAAI,KAAK;AACvB,MAAI,UAAU,OAAW,QAAO;AAChC,MAAI,OAAO,UAAU,YAAY,MAAM,SAAS,EAAG,QAAO;AAC1D,QAAM,IAAI;AAAA,IACR;AAAA,IACA,gCAAgC,KAAK;AAAA,IACrC,EAAE,OAAO,UAAU,oBAAoB,QAAQ,cAAc,KAAK,EAAE;AAAA,EACtE;AACF;AAEA,SAAS,qBAAqB,OAAe,OAAqD;AAChG,MAAI,kCAAkC,IAAI,KAA6C,GAAG;AACxF,WAAO;AAAA,EACT;AACA,QAAM,IAAI;AAAA,IACR;AAAA,IACA,gCAAgC,KAAK;AAAA,IACrC,EAAE,OAAO,UAAU,CAAC,GAAG,iCAAiC,GAAG,QAAQ,MAAM;AAAA,EAC3E;AACF;AAEA,SAAS,eAAe,OAAe,OAA+C;AACpF,MAAI,UAAU,YAAY,UAAU,UAAW,QAAO;AACtD,QAAM,IAAI;AAAA,IACR;AAAA,IACA,gCAAgC,KAAK;AAAA,IACrC,EAAE,OAAO,UAAU,CAAC,UAAU,SAAS,GAAG,QAAQ,MAAM;AAAA,EAC1D;AACF;AAEA,SAAS,eAAe,OAAe,OAAyE;AAC9G,MAAI,UAAU,aAAa,UAAU,YAAY,UAAU,OAAQ,QAAO;AAC1E,QAAM,IAAI;AAAA,IACR;AAAA,IACA,gCAAgC,KAAK;AAAA,IACrC,EAAE,OAAO,UAAU,CAAC,WAAW,UAAU,MAAM,GAAG,QAAQ,MAAM;AAAA,EAClE;AACF;AAEA,SAAS,oCACP,kBACA,YACM;AACN,QAAM,WAAW,iBAAiB,WAAW,UAAU,IACnD,YACA,iBAAiB,WAAW,SAAS,IACnC,WACA;AAEN,MAAI,eAAe,UAAU;AAC3B,UAAM,IAAI;AAAA,MACR;AAAA,MACA;AAAA,MACA,EAAE,OAAO,qBAAqB,UAAU,QAAQ,WAAW;AAAA,IAC7D;AAAA,EACF;AACF;AAEA,SAAS,wBACP,kBACA,UACA,SACoD;AACpD,UAAQ,kBAAkB;AAAA,IACxB,KAAK;AAAA,IACL,KAAK,mBAAmB;AACtB,mCAA6B,UAAU,mBAAmB,SAAS,0BAA0B,GAAG,YAAY;AAC5G,yBAAmB,SAAS,uBAAuB;AACnD,aAAO;AAAA,IACT;AAAA,IACA,KAAK,kBAAkB;AACrB,mCAA6B,UAAU,mBAAmB,SAAS,0BAA0B,GAAG,YAAY;AAC5G,gCAA0B,SAAS,+BAA+B;AAClE,aAAO;AAAA,IACT;AAAA,IACA,KAAK,mBAAmB;AACtB,mCAA6B,UAAU,mBAAmB,SAAS,0BAA0B,GAAG,YAAY;AAC5G,aAAO;AAAA,IACT;AAAA,IACA,KAAK;AAAA,IACL,KAAK,kBAAkB;AACrB;AAAA,QACE;AAAA,QACA,mBAAmB,SAAS,uCAAuC;AAAA,QACnE;AAAA,MACF;AACA,yBAAmB,SAAS,sBAAsB;AAClD,aAAO;AAAA,IACT;AAAA,IACA,KAAK,iBAAiB;AACpB;AAAA,QACE;AAAA,QACA,mBAAmB,SAAS,uCAAuC;AAAA,QACnE;AAAA,MACF;AACA,gCAA0B,SAAS,+BAA+B;AAClE,aAAO;AAAA,IACT;AAAA,IACA,KAAK,kBAAkB;AACrB;AAAA,QACE;AAAA,QACA,mBAAmB,SAAS,uCAAuC;AAAA,QACnE;AAAA,MACF;AACA,aAAO;AAAA,IACT;AAAA,IACA,KAAK;AACH,yBAAmB,SAAS,uBAAuB;AACnD,kCAA4B,SAAS,8BAA8B;AACnE,aAAO,iCAAiC,OAAO;AAAA,EACnD;AACF;AAEA,SAAS,6BAA6B,UAAkB,iBAAyB,cAA4B;AAC3G,MAAI,aAAa,gBAAiB;AAClC,QAAM,IAAI;AAAA,IACR;AAAA,IACA,mEAAmE,YAAY;AAAA,IAC/E,EAAE,OAAO,mBAAmB,UAAU,iBAAiB,QAAQ,SAAS;AAAA,EAC1E;AACF;AAEA,SAAS,yBAAyB,SAAkE;AAClG,QAAM,kBAAkB,mBAAmB,SAAS,0BAA0B;AAC9E,SAAO;AAAA,IACL,mBAAmB,iBAAiB,gCAAgC;AAAA,IACpE;AAAA,EACF;AACF;AAEA,SAAS,iCAAiC,SAA0E;AAClH,QAAM,WAAW,QAAQ;AACzB,MAAI,aAAa,aAAa,aAAa,SAAU,QAAO;AAC5D,QAAM,IAAI;AAAA,IACR;AAAA,IACA;AAAA,IACA,EAAE,OAAO,sCAAsC,UAAU,CAAC,WAAW,QAAQ,GAAG,QAAQ,cAAc,QAAQ,EAAE;AAAA,EAClH;AACF;AAEA,SAAS,cAAc,OAAwB;AAC7C,MAAI,UAAU,KAAM,QAAO;AAC3B,MAAI,MAAM,QAAQ,KAAK,EAAG,QAAO;AACjC,SAAO,OAAO;AAChB;","names":[]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@adcp/sdk",
|
|
3
|
-
"version": "12.0.
|
|
3
|
+
"version": "12.0.2",
|
|
4
4
|
"description": "AdCP SDK — client, server, and compliance harnesses for the AdContext Protocol (MCP + A2A)",
|
|
5
5
|
"workspaces": [
|
|
6
6
|
".",
|
|
@@ -615,6 +615,7 @@
|
|
|
615
615
|
"@types/pg": "^8.20.0",
|
|
616
616
|
"@types/tar": "^6.1.13",
|
|
617
617
|
"actionlint": "^2.0.6",
|
|
618
|
+
"esbuild": "^0.27.0",
|
|
618
619
|
"esbuild-fix-imports-plugin": "^1.0.23",
|
|
619
620
|
"eslint": "^10.0.3",
|
|
620
621
|
"json-schema-to-typescript": "^15.0.4",
|