@adcp/sdk 12.1.0 → 13.0.0-rc.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +19 -3
- package/bin/adcp-fuzz.js +3 -1
- package/dist/lib/adapters/content-standards-adapter.d.mts +9 -9
- package/dist/lib/adapters/content-standards-adapter.d.ts +9 -9
- package/dist/lib/adapters/content-standards-adapter.d.ts.map +1 -1
- package/dist/lib/adapters/content-standards-adapter.js +22 -22
- package/dist/lib/adapters/content-standards-adapter.js.map +1 -1
- package/dist/lib/adapters/content-standards-adapter.mjs +18 -18
- package/dist/lib/adapters/content-standards-adapter.mjs.map +1 -1
- package/dist/lib/adapters/index.d.mts +2 -2
- package/dist/lib/adapters/index.d.ts +2 -2
- package/dist/lib/adapters/index.d.ts.map +1 -1
- package/dist/lib/adapters/index.js +10 -10
- package/dist/lib/adapters/index.js.map +1 -1
- package/dist/lib/adapters/index.mjs +9 -9
- package/dist/lib/adapters/index.mjs.map +1 -1
- package/dist/lib/auth/oauth/authorization-required.d.mts +3 -0
- package/dist/lib/auth/oauth/authorization-required.d.ts +3 -0
- package/dist/lib/auth/oauth/authorization-required.d.ts.map +1 -1
- package/dist/lib/auth/oauth/authorization-required.js +12 -9
- package/dist/lib/auth/oauth/authorization-required.js.map +1 -1
- package/dist/lib/auth/oauth/authorization-required.mjs +12 -9
- package/dist/lib/auth/oauth/authorization-required.mjs.map +1 -1
- package/dist/lib/auth/oauth/provider-cache.d.mts +7 -0
- package/dist/lib/auth/oauth/provider-cache.d.ts +8 -0
- package/dist/lib/auth/oauth/provider-cache.d.ts.map +1 -0
- package/dist/lib/auth/oauth/provider-cache.js +44 -0
- package/dist/lib/auth/oauth/provider-cache.js.map +1 -0
- package/dist/lib/auth/oauth/provider-cache.mjs +19 -0
- package/dist/lib/auth/oauth/provider-cache.mjs.map +1 -0
- package/dist/lib/conformance/invariants/uniformError.js +1 -1
- package/dist/lib/conformance/invariants/uniformError.js.map +1 -1
- package/dist/lib/conformance/invariants/uniformError.mjs +1 -1
- package/dist/lib/conformance/invariants/uniformError.mjs.map +1 -1
- package/dist/lib/conformance/runners.js +1 -1
- package/dist/lib/conformance/runners.js.map +1 -1
- package/dist/lib/conformance/runners.mjs +1 -1
- package/dist/lib/conformance/runners.mjs.map +1 -1
- package/dist/lib/conformance/seeder.js +5 -5
- package/dist/lib/conformance/seeder.js.map +1 -1
- package/dist/lib/conformance/seeder.mjs +5 -5
- package/dist/lib/conformance/seeder.mjs.map +1 -1
- package/dist/lib/core/ADCPMultiAgentClient.d.mts +26 -29
- package/dist/lib/core/ADCPMultiAgentClient.d.ts +26 -29
- package/dist/lib/core/ADCPMultiAgentClient.d.ts.map +1 -1
- package/dist/lib/core/ADCPMultiAgentClient.js +27 -19
- package/dist/lib/core/ADCPMultiAgentClient.js.map +1 -1
- package/dist/lib/core/ADCPMultiAgentClient.mjs +27 -19
- package/dist/lib/core/ADCPMultiAgentClient.mjs.map +1 -1
- package/dist/lib/core/AgentClient.d.mts +148 -138
- package/dist/lib/core/AgentClient.d.ts +148 -138
- package/dist/lib/core/AgentClient.d.ts.map +1 -1
- package/dist/lib/core/AgentClient.js +174 -85
- package/dist/lib/core/AgentClient.js.map +1 -1
- package/dist/lib/core/AgentClient.mjs +174 -85
- package/dist/lib/core/AgentClient.mjs.map +1 -1
- package/dist/lib/core/AsyncHandler.d.mts +18 -16
- package/dist/lib/core/AsyncHandler.d.ts +18 -16
- package/dist/lib/core/AsyncHandler.d.ts.map +1 -1
- package/dist/lib/core/AsyncHandler.js +22 -1
- package/dist/lib/core/AsyncHandler.js.map +1 -1
- package/dist/lib/core/AsyncHandler.mjs +22 -1
- package/dist/lib/core/AsyncHandler.mjs.map +1 -1
- package/dist/lib/core/ConversationTypes.d.mts +6 -2
- package/dist/lib/core/ConversationTypes.d.ts +6 -2
- package/dist/lib/core/ConversationTypes.d.ts.map +1 -1
- package/dist/lib/core/ConversationTypes.js.map +1 -1
- package/dist/lib/core/CreativeAgentClient.d.mts +41 -17
- package/dist/lib/core/CreativeAgentClient.d.ts +41 -17
- package/dist/lib/core/CreativeAgentClient.d.ts.map +1 -1
- package/dist/lib/core/CreativeAgentClient.js +39 -12
- package/dist/lib/core/CreativeAgentClient.js.map +1 -1
- package/dist/lib/core/CreativeAgentClient.mjs +39 -12
- package/dist/lib/core/CreativeAgentClient.mjs.map +1 -1
- package/dist/lib/core/SingleAgentClient.d.mts +129 -52
- package/dist/lib/core/SingleAgentClient.d.ts +129 -52
- package/dist/lib/core/SingleAgentClient.d.ts.map +1 -1
- package/dist/lib/core/SingleAgentClient.js +1748 -218
- package/dist/lib/core/SingleAgentClient.js.map +1 -1
- package/dist/lib/core/SingleAgentClient.mjs +1758 -218
- package/dist/lib/core/SingleAgentClient.mjs.map +1 -1
- package/dist/lib/core/TaskExecutor.d.mts +9 -0
- package/dist/lib/core/TaskExecutor.d.ts +9 -0
- package/dist/lib/core/TaskExecutor.d.ts.map +1 -1
- package/dist/lib/core/TaskExecutor.js +137 -44
- package/dist/lib/core/TaskExecutor.js.map +1 -1
- package/dist/lib/core/TaskExecutor.mjs +137 -44
- package/dist/lib/core/TaskExecutor.mjs.map +1 -1
- package/dist/lib/index.d.mts +111 -17
- package/dist/lib/index.d.ts +111 -17
- package/dist/lib/index.d.ts.map +1 -1
- package/dist/lib/index.js +94 -94
- package/dist/lib/index.js.map +1 -1
- package/dist/lib/index.mjs +93 -94
- package/dist/lib/index.mjs.map +1 -1
- package/dist/lib/net/ssrf-fetch.d.mts +13 -1
- package/dist/lib/net/ssrf-fetch.d.ts +13 -1
- package/dist/lib/net/ssrf-fetch.d.ts.map +1 -1
- package/dist/lib/net/ssrf-fetch.js +14 -7
- package/dist/lib/net/ssrf-fetch.js.map +1 -1
- package/dist/lib/net/ssrf-fetch.mjs +14 -7
- package/dist/lib/net/ssrf-fetch.mjs.map +1 -1
- package/dist/lib/protocols/a2a.d.mts +2 -2
- package/dist/lib/protocols/a2a.d.ts +2 -2
- package/dist/lib/protocols/a2a.d.ts.map +1 -1
- package/dist/lib/protocols/a2a.js +14 -9
- package/dist/lib/protocols/a2a.js.map +1 -1
- package/dist/lib/protocols/a2a.mjs +14 -9
- package/dist/lib/protocols/a2a.mjs.map +1 -1
- package/dist/lib/protocols/index.d.mts +20 -3
- package/dist/lib/protocols/index.d.ts +20 -3
- package/dist/lib/protocols/index.d.ts.map +1 -1
- package/dist/lib/protocols/index.js +44 -31
- package/dist/lib/protocols/index.js.map +1 -1
- package/dist/lib/protocols/index.mjs +44 -32
- package/dist/lib/protocols/index.mjs.map +1 -1
- package/dist/lib/protocols/mcp-modern.d.ts.map +1 -1
- package/dist/lib/protocols/mcp-modern.js +87 -12
- package/dist/lib/protocols/mcp-modern.js.map +1 -1
- package/dist/lib/protocols/mcp-modern.mjs +89 -12
- package/dist/lib/protocols/mcp-modern.mjs.map +1 -1
- package/dist/lib/protocols/mcp-tasks.d.mts +3 -0
- package/dist/lib/protocols/mcp-tasks.d.ts +3 -0
- package/dist/lib/protocols/mcp-tasks.d.ts.map +1 -1
- package/dist/lib/protocols/mcp-tasks.js +21 -11
- package/dist/lib/protocols/mcp-tasks.js.map +1 -1
- package/dist/lib/protocols/mcp-tasks.mjs +21 -11
- package/dist/lib/protocols/mcp-tasks.mjs.map +1 -1
- package/dist/lib/schemas-data/v2.5/_provenance.json +1 -1
- package/dist/lib/server/create-adcp-server.d.mts +6 -0
- package/dist/lib/server/create-adcp-server.d.ts +6 -0
- package/dist/lib/server/create-adcp-server.d.ts.map +1 -1
- package/dist/lib/server/create-adcp-server.js +295 -48
- package/dist/lib/server/create-adcp-server.js.map +1 -1
- package/dist/lib/server/create-adcp-server.mjs +301 -50
- package/dist/lib/server/create-adcp-server.mjs.map +1 -1
- package/dist/lib/server/decisioning/assembly-helpers.d.mts +27 -13
- package/dist/lib/server/decisioning/assembly-helpers.d.ts +27 -13
- package/dist/lib/server/decisioning/assembly-helpers.d.ts.map +1 -1
- package/dist/lib/server/decisioning/assembly-helpers.js +136 -14
- package/dist/lib/server/decisioning/assembly-helpers.js.map +1 -1
- package/dist/lib/server/decisioning/assembly-helpers.mjs +134 -13
- package/dist/lib/server/decisioning/assembly-helpers.mjs.map +1 -1
- package/dist/lib/server/decisioning/index.d.mts +13 -12
- package/dist/lib/server/decisioning/index.d.ts +13 -12
- package/dist/lib/server/decisioning/index.d.ts.map +1 -1
- package/dist/lib/server/decisioning/index.js +6 -0
- package/dist/lib/server/decisioning/index.js.map +1 -1
- package/dist/lib/server/decisioning/index.mjs +9 -3
- package/dist/lib/server/decisioning/index.mjs.map +1 -1
- package/dist/lib/server/decisioning/list-helpers.d.mts +13 -3
- package/dist/lib/server/decisioning/list-helpers.d.ts +13 -3
- package/dist/lib/server/decisioning/list-helpers.d.ts.map +1 -1
- package/dist/lib/server/decisioning/list-helpers.js +13 -3
- package/dist/lib/server/decisioning/list-helpers.js.map +1 -1
- package/dist/lib/server/decisioning/list-helpers.mjs +11 -2
- package/dist/lib/server/decisioning/list-helpers.mjs.map +1 -1
- package/dist/lib/server/decisioning/manifest-helpers.d.mts +5 -3
- package/dist/lib/server/decisioning/manifest-helpers.d.ts +5 -3
- package/dist/lib/server/decisioning/manifest-helpers.d.ts.map +1 -1
- package/dist/lib/server/decisioning/manifest-helpers.js.map +1 -1
- package/dist/lib/server/decisioning/manifest-helpers.mjs.map +1 -1
- package/dist/lib/server/decisioning/proposal/dispatch.d.mts +2 -2
- package/dist/lib/server/decisioning/proposal/dispatch.d.ts +2 -2
- package/dist/lib/server/decisioning/proposal/dispatch.d.ts.map +1 -1
- package/dist/lib/server/decisioning/proposal/dispatch.js.map +1 -1
- package/dist/lib/server/decisioning/proposal/dispatch.mjs.map +1 -1
- package/dist/lib/server/decisioning/proposal/index.d.mts +1 -1
- package/dist/lib/server/decisioning/proposal/index.d.ts +1 -1
- package/dist/lib/server/decisioning/proposal/index.d.ts.map +1 -1
- package/dist/lib/server/decisioning/proposal/index.js.map +1 -1
- package/dist/lib/server/decisioning/proposal/index.mjs.map +1 -1
- package/dist/lib/server/decisioning/proposal/lifecycle.d.mts +3 -2
- package/dist/lib/server/decisioning/proposal/lifecycle.d.ts +3 -2
- package/dist/lib/server/decisioning/proposal/lifecycle.d.ts.map +1 -1
- package/dist/lib/server/decisioning/proposal/lifecycle.js.map +1 -1
- package/dist/lib/server/decisioning/proposal/lifecycle.mjs.map +1 -1
- package/dist/lib/server/decisioning/proposal/mock-manager.d.mts +3 -3
- package/dist/lib/server/decisioning/proposal/mock-manager.d.ts +3 -3
- package/dist/lib/server/decisioning/proposal/mock-manager.d.ts.map +1 -1
- package/dist/lib/server/decisioning/proposal/mock-manager.js.map +1 -1
- package/dist/lib/server/decisioning/proposal/mock-manager.mjs.map +1 -1
- package/dist/lib/server/decisioning/proposal/types.d.mts +10 -6
- package/dist/lib/server/decisioning/proposal/types.d.ts +10 -6
- package/dist/lib/server/decisioning/proposal/types.d.ts.map +1 -1
- package/dist/lib/server/decisioning/proposal/types.js.map +1 -1
- package/dist/lib/server/decisioning/proposal/types.mjs.map +1 -1
- package/dist/lib/server/decisioning/runtime/from-platform.d.mts +21 -2
- package/dist/lib/server/decisioning/runtime/from-platform.d.ts +21 -2
- package/dist/lib/server/decisioning/runtime/from-platform.d.ts.map +1 -1
- package/dist/lib/server/decisioning/runtime/from-platform.js +754 -81
- package/dist/lib/server/decisioning/runtime/from-platform.js.map +1 -1
- package/dist/lib/server/decisioning/runtime/from-platform.mjs +763 -81
- package/dist/lib/server/decisioning/runtime/from-platform.mjs.map +1 -1
- package/dist/lib/server/decisioning/specialisms/brand-rights.d.mts +9 -9
- package/dist/lib/server/decisioning/specialisms/brand-rights.d.ts +9 -9
- package/dist/lib/server/decisioning/specialisms/brand-rights.d.ts.map +1 -1
- package/dist/lib/server/decisioning/specialisms/brand-rights.js.map +1 -1
- package/dist/lib/server/decisioning/specialisms/content-standards.d.mts +16 -16
- package/dist/lib/server/decisioning/specialisms/content-standards.d.ts +16 -16
- package/dist/lib/server/decisioning/specialisms/content-standards.d.ts.map +1 -1
- package/dist/lib/server/decisioning/specialisms/content-standards.js.map +1 -1
- package/dist/lib/server/decisioning/specialisms/creative-ad-server.d.mts +15 -13
- package/dist/lib/server/decisioning/specialisms/creative-ad-server.d.ts +15 -13
- package/dist/lib/server/decisioning/specialisms/creative-ad-server.d.ts.map +1 -1
- package/dist/lib/server/decisioning/specialisms/creative-ad-server.js.map +1 -1
- package/dist/lib/server/decisioning/specialisms/creative.d.mts +12 -11
- package/dist/lib/server/decisioning/specialisms/creative.d.ts +12 -11
- package/dist/lib/server/decisioning/specialisms/creative.d.ts.map +1 -1
- package/dist/lib/server/decisioning/specialisms/creative.js.map +1 -1
- package/dist/lib/server/decisioning/specialisms/sales.d.mts +25 -15
- package/dist/lib/server/decisioning/specialisms/sales.d.ts +25 -15
- package/dist/lib/server/decisioning/specialisms/sales.d.ts.map +1 -1
- package/dist/lib/server/decisioning/specialisms/sales.js.map +1 -1
- package/dist/lib/server/index.d.mts +3 -3
- package/dist/lib/server/index.d.ts +3 -3
- package/dist/lib/server/index.d.ts.map +1 -1
- package/dist/lib/server/index.js +72 -72
- package/dist/lib/server/index.js.map +1 -1
- package/dist/lib/server/index.mjs +36 -36
- package/dist/lib/server/index.mjs.map +1 -1
- package/dist/lib/server/legacy/v5/index.d.mts +1 -0
- package/dist/lib/server/legacy/v5/index.d.ts +1 -0
- package/dist/lib/server/legacy/v5/index.d.ts.map +1 -1
- package/dist/lib/server/legacy/v5/index.js +74 -1
- package/dist/lib/server/legacy/v5/index.js.map +1 -1
- package/dist/lib/server/legacy/v5/index.mjs +75 -1
- package/dist/lib/server/legacy/v5/index.mjs.map +1 -1
- package/dist/lib/server/responses.d.mts +2 -2
- package/dist/lib/server/responses.d.ts +2 -2
- package/dist/lib/server/responses.js.map +1 -1
- package/dist/lib/server/responses.mjs.map +1 -1
- package/dist/lib/testing/client.d.ts.map +1 -1
- package/dist/lib/testing/client.js +13 -5
- package/dist/lib/testing/client.js.map +1 -1
- package/dist/lib/testing/client.mjs +13 -5
- package/dist/lib/testing/client.mjs.map +1 -1
- package/dist/lib/testing/compliance/comply.d.mts +1 -1
- package/dist/lib/testing/compliance/comply.d.ts +1 -1
- package/dist/lib/testing/compliance/comply.d.ts.map +1 -1
- package/dist/lib/testing/compliance/comply.js +16 -6
- package/dist/lib/testing/compliance/comply.js.map +1 -1
- package/dist/lib/testing/compliance/comply.mjs +16 -6
- package/dist/lib/testing/compliance/comply.mjs.map +1 -1
- package/dist/lib/testing/scenarios/brand-rights.js +6 -6
- package/dist/lib/testing/scenarios/brand-rights.js.map +1 -1
- package/dist/lib/testing/scenarios/brand-rights.mjs +6 -6
- package/dist/lib/testing/scenarios/brand-rights.mjs.map +1 -1
- package/dist/lib/testing/scenarios/creative.js +7 -7
- package/dist/lib/testing/scenarios/creative.js.map +1 -1
- package/dist/lib/testing/scenarios/creative.mjs +7 -7
- package/dist/lib/testing/scenarios/creative.mjs.map +1 -1
- package/dist/lib/testing/scenarios/discovery.js +2 -2
- package/dist/lib/testing/scenarios/discovery.js.map +1 -1
- package/dist/lib/testing/scenarios/discovery.mjs +2 -2
- package/dist/lib/testing/scenarios/discovery.mjs.map +1 -1
- package/dist/lib/testing/scenarios/edge-cases.js +11 -11
- package/dist/lib/testing/scenarios/edge-cases.js.map +1 -1
- package/dist/lib/testing/scenarios/edge-cases.mjs +11 -11
- package/dist/lib/testing/scenarios/edge-cases.mjs.map +1 -1
- package/dist/lib/testing/scenarios/governance.d.ts.map +1 -1
- package/dist/lib/testing/scenarios/governance.js +16 -22
- package/dist/lib/testing/scenarios/governance.js.map +1 -1
- package/dist/lib/testing/scenarios/governance.mjs +16 -22
- package/dist/lib/testing/scenarios/governance.mjs.map +1 -1
- package/dist/lib/testing/scenarios/media-buy.js +5 -5
- package/dist/lib/testing/scenarios/media-buy.js.map +1 -1
- package/dist/lib/testing/scenarios/media-buy.mjs +5 -5
- package/dist/lib/testing/scenarios/media-buy.mjs.map +1 -1
- package/dist/lib/testing/scenarios/schema-compliance.js +1 -1
- package/dist/lib/testing/scenarios/schema-compliance.js.map +1 -1
- package/dist/lib/testing/scenarios/schema-compliance.mjs +1 -1
- package/dist/lib/testing/scenarios/schema-compliance.mjs.map +1 -1
- package/dist/lib/testing/scenarios/trusted-match.d.ts.map +1 -1
- package/dist/lib/testing/scenarios/trusted-match.js +4 -3
- package/dist/lib/testing/scenarios/trusted-match.js.map +1 -1
- package/dist/lib/testing/scenarios/trusted-match.mjs +4 -3
- package/dist/lib/testing/scenarios/trusted-match.mjs.map +1 -1
- package/dist/lib/testing/storyboard/probes.d.mts +6 -0
- package/dist/lib/testing/storyboard/probes.d.ts +6 -0
- package/dist/lib/testing/storyboard/probes.d.ts.map +1 -1
- package/dist/lib/testing/storyboard/probes.js +16 -5
- package/dist/lib/testing/storyboard/probes.js.map +1 -1
- package/dist/lib/testing/storyboard/probes.mjs +16 -5
- package/dist/lib/testing/storyboard/probes.mjs.map +1 -1
- package/dist/lib/testing/storyboard/runner.d.ts.map +1 -1
- package/dist/lib/testing/storyboard/runner.js +6 -2
- package/dist/lib/testing/storyboard/runner.js.map +1 -1
- package/dist/lib/testing/storyboard/runner.mjs +6 -2
- package/dist/lib/testing/storyboard/runner.mjs.map +1 -1
- package/dist/lib/testing/storyboard/shape-drift-hints.d.mts +3 -4
- package/dist/lib/testing/storyboard/shape-drift-hints.d.ts +3 -4
- package/dist/lib/testing/storyboard/shape-drift-hints.d.ts.map +1 -1
- package/dist/lib/testing/storyboard/shape-drift-hints.js +27 -27
- package/dist/lib/testing/storyboard/shape-drift-hints.js.map +1 -1
- package/dist/lib/testing/storyboard/shape-drift-hints.mjs +27 -27
- package/dist/lib/testing/storyboard/shape-drift-hints.mjs.map +1 -1
- package/dist/lib/testing/storyboard/task-map.d.ts.map +1 -1
- package/dist/lib/testing/storyboard/task-map.js +43 -5
- package/dist/lib/testing/storyboard/task-map.js.map +1 -1
- package/dist/lib/testing/storyboard/task-map.mjs +43 -5
- package/dist/lib/testing/storyboard/task-map.mjs.map +1 -1
- package/dist/lib/testing/test-helpers.d.mts +2 -2
- package/dist/lib/testing/test-helpers.d.ts +2 -2
- package/dist/lib/testing/test-helpers.js.map +1 -1
- package/dist/lib/testing/test-helpers.mjs.map +1 -1
- package/dist/lib/testing/types.d.mts +7 -1
- package/dist/lib/testing/types.d.ts +7 -1
- package/dist/lib/testing/types.d.ts.map +1 -1
- package/dist/lib/testing/types.js.map +1 -1
- package/dist/lib/types/adcp.d.mts +14 -14
- package/dist/lib/types/adcp.d.ts +14 -14
- package/dist/lib/types/adcp.d.ts.map +1 -1
- package/dist/lib/types/adcp.js.map +1 -1
- package/dist/lib/types/adcp.mjs.map +1 -1
- package/dist/lib/types/index.d.mts +2 -2
- package/dist/lib/types/index.d.ts +2 -2
- package/dist/lib/types/index.d.ts.map +1 -1
- package/dist/lib/types/index.js.map +1 -1
- package/dist/lib/types/index.mjs.map +1 -1
- package/dist/lib/utils/capabilities.d.mts +6 -0
- package/dist/lib/utils/capabilities.d.ts +6 -0
- package/dist/lib/utils/capabilities.d.ts.map +1 -1
- package/dist/lib/utils/capabilities.js +4 -0
- package/dist/lib/utils/capabilities.js.map +1 -1
- package/dist/lib/utils/capabilities.mjs +4 -0
- package/dist/lib/utils/capabilities.mjs.map +1 -1
- package/dist/lib/utils/creative-delivery.d.mts +52 -10
- package/dist/lib/utils/creative-delivery.d.ts +52 -10
- package/dist/lib/utils/creative-delivery.d.ts.map +1 -1
- package/dist/lib/utils/creative-delivery.js +104 -9
- package/dist/lib/utils/creative-delivery.js.map +1 -1
- package/dist/lib/utils/creative-delivery.mjs +104 -8
- package/dist/lib/utils/creative-delivery.mjs.map +1 -1
- package/dist/lib/utils/format-assets.d.mts +41 -38
- package/dist/lib/utils/format-assets.d.ts +41 -38
- package/dist/lib/utils/format-assets.d.ts.map +1 -1
- package/dist/lib/utils/format-assets.js +3 -1
- package/dist/lib/utils/format-assets.js.map +1 -1
- package/dist/lib/utils/format-assets.mjs +3 -1
- package/dist/lib/utils/format-assets.mjs.map +1 -1
- package/dist/lib/utils/index.d.mts +8 -8
- package/dist/lib/utils/index.d.ts +8 -8
- package/dist/lib/utils/index.d.ts.map +1 -1
- package/dist/lib/utils/index.js +11 -9
- package/dist/lib/utils/index.js.map +1 -1
- package/dist/lib/utils/index.mjs +9 -8
- package/dist/lib/utils/index.mjs.map +1 -1
- package/dist/lib/utils/preview-utils.d.mts +11 -8
- package/dist/lib/utils/preview-utils.d.ts +11 -8
- package/dist/lib/utils/preview-utils.d.ts.map +1 -1
- package/dist/lib/utils/preview-utils.js +4 -4
- package/dist/lib/utils/preview-utils.js.map +1 -1
- package/dist/lib/utils/preview-utils.mjs +3 -3
- package/dist/lib/utils/preview-utils.mjs.map +1 -1
- package/dist/lib/utils/tool-request-schemas.d.mts +2 -2
- package/dist/lib/utils/tool-request-schemas.d.ts +2 -2
- package/dist/lib/v2/projection/aao-reference-formats.json +492 -0
- package/dist/lib/v2/projection/augment-response.d.mts +31 -11
- package/dist/lib/v2/projection/augment-response.d.ts +31 -11
- package/dist/lib/v2/projection/augment-response.d.ts.map +1 -1
- package/dist/lib/v2/projection/augment-response.js +233 -27
- package/dist/lib/v2/projection/augment-response.js.map +1 -1
- package/dist/lib/v2/projection/augment-response.mjs +232 -27
- package/dist/lib/v2/projection/augment-response.mjs.map +1 -1
- package/dist/lib/v2/projection/builders.d.mts +7 -6
- package/dist/lib/v2/projection/builders.d.ts +7 -6
- package/dist/lib/v2/projection/builders.d.ts.map +1 -1
- package/dist/lib/v2/projection/builders.js +11 -8
- package/dist/lib/v2/projection/builders.js.map +1 -1
- package/dist/lib/v2/projection/builders.mjs +9 -6
- package/dist/lib/v2/projection/builders.mjs.map +1 -1
- package/dist/lib/v2/projection/catalog-snapshot.d.mts +47 -0
- package/dist/lib/v2/projection/catalog-snapshot.d.ts +48 -0
- package/dist/lib/v2/projection/catalog-snapshot.d.ts.map +1 -0
- package/dist/lib/v2/projection/catalog-snapshot.js +291 -0
- package/dist/lib/v2/projection/catalog-snapshot.js.map +1 -0
- package/dist/lib/v2/projection/catalog-snapshot.mjs +265 -0
- package/dist/lib/v2/projection/catalog-snapshot.mjs.map +1 -0
- package/dist/lib/v2/projection/catalog.d.mts +23 -2
- package/dist/lib/v2/projection/catalog.d.ts +23 -2
- package/dist/lib/v2/projection/catalog.d.ts.map +1 -1
- package/dist/lib/v2/projection/catalog.js +34 -10
- package/dist/lib/v2/projection/catalog.js.map +1 -1
- package/dist/lib/v2/projection/catalog.mjs +33 -10
- package/dist/lib/v2/projection/catalog.mjs.map +1 -1
- package/dist/lib/v2/projection/creative-delivery.d.mts +157 -0
- package/dist/lib/v2/projection/creative-delivery.d.ts +158 -0
- package/dist/lib/v2/projection/creative-delivery.d.ts.map +1 -0
- package/dist/lib/v2/projection/creative-delivery.js +967 -0
- package/dist/lib/v2/projection/creative-delivery.js.map +1 -0
- package/dist/lib/v2/projection/creative-delivery.mjs +941 -0
- package/dist/lib/v2/projection/creative-delivery.mjs.map +1 -0
- package/dist/lib/v2/projection/index.d.mts +8 -6
- package/dist/lib/v2/projection/index.d.ts +8 -6
- package/dist/lib/v2/projection/index.d.ts.map +1 -1
- package/dist/lib/v2/projection/index.js +26 -4
- package/dist/lib/v2/projection/index.js.map +1 -1
- package/dist/lib/v2/projection/index.mjs +28 -4
- package/dist/lib/v2/projection/index.mjs.map +1 -1
- package/dist/lib/v2/projection/legacy-metadata.d.mts +21 -0
- package/dist/lib/v2/projection/legacy-metadata.d.ts +22 -0
- package/dist/lib/v2/projection/legacy-metadata.d.ts.map +1 -0
- package/dist/lib/v2/projection/legacy-metadata.js +73 -0
- package/dist/lib/v2/projection/legacy-metadata.js.map +1 -0
- package/dist/lib/v2/projection/legacy-metadata.mjs +45 -0
- package/dist/lib/v2/projection/legacy-metadata.mjs.map +1 -0
- package/dist/lib/v2/projection/types.d.mts +29 -23
- package/dist/lib/v2/projection/types.d.ts +29 -23
- package/dist/lib/v2/projection/types.d.ts.map +1 -1
- package/dist/lib/v2/projection/types.js.map +1 -1
- package/dist/lib/v2/projection/v1-to-v2.d.mts +29 -6
- package/dist/lib/v2/projection/v1-to-v2.d.ts +29 -6
- package/dist/lib/v2/projection/v1-to-v2.d.ts.map +1 -1
- package/dist/lib/v2/projection/v1-to-v2.js +218 -9
- package/dist/lib/v2/projection/v1-to-v2.js.map +1 -1
- package/dist/lib/v2/projection/v1-to-v2.mjs +219 -10
- package/dist/lib/v2/projection/v1-to-v2.mjs.map +1 -1
- package/dist/lib/v2/projection/v2-to-v1.d.mts +31 -2
- package/dist/lib/v2/projection/v2-to-v1.d.ts +31 -2
- package/dist/lib/v2/projection/v2-to-v1.d.ts.map +1 -1
- package/dist/lib/v2/projection/v2-to-v1.js +138 -7
- package/dist/lib/v2/projection/v2-to-v1.js.map +1 -1
- package/dist/lib/v2/projection/v2-to-v1.mjs +135 -6
- package/dist/lib/v2/projection/v2-to-v1.mjs.map +1 -1
- package/dist/lib/v2/projection/write-side.d.mts +12 -13
- package/dist/lib/v2/projection/write-side.d.ts +12 -13
- package/dist/lib/v2/projection/write-side.d.ts.map +1 -1
- package/dist/lib/v2/projection/write-side.js +16 -12
- package/dist/lib/v2/projection/write-side.js.map +1 -1
- package/dist/lib/v2/projection/write-side.mjs +16 -12
- package/dist/lib/v2/projection/write-side.mjs.map +1 -1
- package/dist/lib/version.d.mts +3 -3
- package/dist/lib/version.d.ts +3 -3
- package/dist/lib/version.d.ts.map +1 -1
- package/dist/lib/version.js +3 -3
- package/dist/lib/version.js.map +1 -1
- package/dist/lib/version.mjs +3 -3
- package/dist/lib/version.mjs.map +1 -1
- package/docs/guides/BUILD-AN-AGENT.md +7 -2
- package/docs/guides/PREVIEW-ASSET-DURABILITY.md +6 -2
- package/docs/llms.txt +1 -0
- package/examples/README.md +1 -1
- package/examples/batch-preview-test.ts +3 -3
- package/examples/conversation-client.ts +2 -2
- package/examples/debug-preview-response.ts +1 -1
- package/examples/decisioning-platform-broadcast-tv.ts +10 -4
- package/examples/decisioning-platform-mock-seller.ts +16 -9
- package/examples/decisioning-platform-programmatic.ts +18 -7
- package/examples/error-compliant-server.ts +26 -16
- package/examples/generative-creative-demo.ts +7 -19
- package/examples/hello_creative_adapter_ad_server.ts +37 -16
- package/examples/hello_creative_adapter_template.ts +12 -10
- package/examples/hello_seller_adapter_guaranteed.ts +52 -23
- package/examples/hello_seller_adapter_multi_tenant.ts +6 -3
- package/examples/hello_seller_adapter_non_guaranteed.ts +54 -26
- package/examples/hello_seller_adapter_proposal_mode.ts +40 -14
- package/examples/hello_seller_adapter_social.ts +2 -7
- package/examples/inspect-card-formats.ts +1 -1
- package/examples/simple-getting-started.ts +1 -1
- package/examples/test-helpers-demo.ts +1 -1
- package/package.json +2 -2
- package/skills/build-decisioning-creative-template/SKILL.md +11 -11
- package/skills/build-decisioning-platform/advanced/REFERENCE.md +8 -2
package/README.md
CHANGED
|
@@ -33,7 +33,7 @@ npm install @adcp/sdk@adcp-3.0 # 7.x, AdCP 3.0
|
|
|
33
33
|
npm install @adcp/sdk@adcp-3.1 # 8.x beta, AdCP 3.1
|
|
34
34
|
```
|
|
35
35
|
|
|
36
|
-
Upgrading from
|
|
36
|
+
Upgrading from v12 to the canonical-creative SDK surface? See [`docs/migration-12-to-13.md`](./docs/migration-12-to-13.md). Older paths: **[MIGRATION-v8.md](./MIGRATION-v8.md)** and [`docs/migration-8.0-to-8.1.md`](./docs/migration-8.0-to-8.1.md).
|
|
37
37
|
|
|
38
38
|
### Narrow type imports (`@adcp/sdk/types/<tool>`)
|
|
39
39
|
|
|
@@ -119,6 +119,9 @@ const result = await agent.getProducts({ brief: 'Coffee brands' });
|
|
|
119
119
|
if (result.status === 'completed') {
|
|
120
120
|
// Agent completed synchronously!
|
|
121
121
|
console.log('✅ Sync completion:', result.data.products.length, 'products');
|
|
122
|
+
// Products expose canonical format_options[]; legacy named-format refs do not
|
|
123
|
+
// cross the primary AgentClient boundary.
|
|
124
|
+
console.log(result.data.products[0]?.format_options[0]?.format_kind);
|
|
122
125
|
// onGetProductsStatusChange handler ALREADY fired with status='completed' ✓
|
|
123
126
|
}
|
|
124
127
|
|
|
@@ -551,16 +554,29 @@ const client = ADCPMultiAgentClient.fromEnv();
|
|
|
551
554
|
|
|
552
555
|
## Available Tools
|
|
553
556
|
|
|
554
|
-
|
|
557
|
+
Primary AdCP tools have typed request and response maps. Less-common or
|
|
558
|
+
extension tools use `executeCustomTask<T>()` explicitly.
|
|
555
559
|
|
|
556
560
|
**Media Buy Lifecycle:**
|
|
557
561
|
|
|
562
|
+
The primary client surface speaks canonical creatives: products use
|
|
563
|
+
`format_options[]`, packages select `format_option_refs[]`, and creatives use
|
|
564
|
+
`format_kind` plus an optional `format_option_ref`. The SDK performs negotiated
|
|
565
|
+
legacy-wire translation internally. Migration tooling can opt into the clearly
|
|
566
|
+
named `createMediaBuyLegacy()`, `updateMediaBuyLegacy()`,
|
|
567
|
+
`syncCreativesLegacy()`, `listCreativesLegacy()`, `buildCreativeLegacy()`, and
|
|
568
|
+
`previewCreativeLegacy()` escape hatches. `executeCustomTask()` cannot invoke
|
|
569
|
+
typed primary tasks or legacy creative tools; other less-common standard and
|
|
570
|
+
extension tools intentionally use that explicit raw-task route.
|
|
571
|
+
|
|
558
572
|
- `getProducts()` - Discover advertising products
|
|
559
|
-
- `
|
|
573
|
+
- `listCreativeFormatsLegacy()` - Inspect the legacy named-format catalog (migration tooling only)
|
|
560
574
|
- `createMediaBuy()` - Create new media buy
|
|
561
575
|
- `updateMediaBuy()` - Update existing media buy
|
|
562
576
|
- `syncCreatives()` - Upload/sync creative assets
|
|
563
577
|
- `listCreatives()` - List creative assets
|
|
578
|
+
- `buildCreativeLegacy()` - Build through the legacy named-format protocol (migration tooling only)
|
|
579
|
+
- `previewCreativeLegacy()` - Preview through the legacy named-format protocol (migration tooling only)
|
|
564
580
|
- `getMediaBuyDelivery()` - Get delivery performance
|
|
565
581
|
|
|
566
582
|
**Audience & Targeting:**
|
package/bin/adcp-fuzz.js
CHANGED
|
@@ -249,7 +249,9 @@ async function handleFuzzCommand(argv) {
|
|
|
249
249
|
}
|
|
250
250
|
|
|
251
251
|
const uniformErrorFails = (report.uniformError ?? []).filter(r => r.verdict === 'fail').length;
|
|
252
|
-
|
|
252
|
+
// Let Node drain stdout before exiting. Calling process.exit() here can
|
|
253
|
+
// truncate JSON reports at the first pipe buffer when output is redirected.
|
|
254
|
+
process.exitCode = report.totalFailures > 0 || uniformErrorFails > 0 ? 1 : 0;
|
|
253
255
|
}
|
|
254
256
|
|
|
255
257
|
function argError(msg) {
|
|
@@ -11,7 +11,7 @@ import type { ListContentStandardsRequest, ListContentStandardsResponse, GetCont
|
|
|
11
11
|
/**
|
|
12
12
|
* Content evaluation result from the adapter
|
|
13
13
|
*/
|
|
14
|
-
export interface
|
|
14
|
+
export interface LegacyContentEvaluationResult {
|
|
15
15
|
verdict: 'pass' | 'fail';
|
|
16
16
|
confidence?: number;
|
|
17
17
|
explanation?: string;
|
|
@@ -25,7 +25,7 @@ export interface ContentEvaluationResult {
|
|
|
25
25
|
* Abstract interface for content standards adapters.
|
|
26
26
|
* Publishers implement this to provide their evaluation logic.
|
|
27
27
|
*/
|
|
28
|
-
export interface
|
|
28
|
+
export interface LegacyIContentStandardsAdapter {
|
|
29
29
|
/**
|
|
30
30
|
* Check if content standards are supported by this server
|
|
31
31
|
*/
|
|
@@ -58,12 +58,12 @@ export interface IContentStandardsAdapter {
|
|
|
58
58
|
* Evaluate a single artifact against standards.
|
|
59
59
|
* Used internally by get_products and create_media_buy to filter content.
|
|
60
60
|
*/
|
|
61
|
-
evaluateArtifact(standardsId: string, artifact: Artifact): Promise<
|
|
61
|
+
evaluateArtifact(standardsId: string, artifact: Artifact): Promise<LegacyContentEvaluationResult>;
|
|
62
62
|
}
|
|
63
63
|
/**
|
|
64
64
|
* Error codes for content standards operations
|
|
65
65
|
*/
|
|
66
|
-
export declare const
|
|
66
|
+
export declare const LegacyContentStandardsErrorCodes: {
|
|
67
67
|
readonly NOT_SUPPORTED: "UNSUPPORTED_FEATURE";
|
|
68
68
|
readonly STANDARDS_NOT_FOUND: "REFERENCE_NOT_FOUND";
|
|
69
69
|
readonly INVALID_STANDARDS: "INVALID_REQUEST";
|
|
@@ -71,13 +71,13 @@ export declare const ContentStandardsErrorCodes: {
|
|
|
71
71
|
readonly QUOTA_EXCEEDED: "QUOTA_EXCEEDED";
|
|
72
72
|
};
|
|
73
73
|
/**
|
|
74
|
-
* Stub implementation of
|
|
74
|
+
* Stub implementation of LegacyContentStandardsAdapter.
|
|
75
75
|
* Returns not-supported errors for all operations.
|
|
76
76
|
*
|
|
77
77
|
* Publishers should extend this class or provide their own implementation
|
|
78
78
|
* that integrates with their brand safety systems.
|
|
79
79
|
*/
|
|
80
|
-
export declare class
|
|
80
|
+
export declare class LegacyContentStandardsAdapter implements LegacyIContentStandardsAdapter {
|
|
81
81
|
/**
|
|
82
82
|
* Check if content standards are supported.
|
|
83
83
|
* Override this to return true when implementing real logic.
|
|
@@ -93,13 +93,13 @@ export declare class ContentStandardsAdapter implements IContentStandardsAdapter
|
|
|
93
93
|
* Evaluate a single artifact against content standards.
|
|
94
94
|
* Used by get_products and create_media_buy to filter content.
|
|
95
95
|
*/
|
|
96
|
-
evaluateArtifact(standardsId: string, artifact: Artifact): Promise<
|
|
96
|
+
evaluateArtifact(standardsId: string, artifact: Artifact): Promise<LegacyContentEvaluationResult>;
|
|
97
97
|
}
|
|
98
98
|
/**
|
|
99
99
|
* Helper to check if a response is an error response
|
|
100
100
|
*/
|
|
101
|
-
export declare function
|
|
101
|
+
export declare function isLegacyContentStandardsError(response: ListContentStandardsResponse | GetContentStandardsResponse | CreateContentStandardsResponse): boolean;
|
|
102
102
|
/**
|
|
103
103
|
* Default singleton instance for servers that don't need content standards
|
|
104
104
|
*/
|
|
105
|
-
export declare const
|
|
105
|
+
export declare const legacyDefaultContentStandardsAdapter: LegacyContentStandardsAdapter;
|
|
@@ -11,7 +11,7 @@ import type { ListContentStandardsRequest, ListContentStandardsResponse, GetCont
|
|
|
11
11
|
/**
|
|
12
12
|
* Content evaluation result from the adapter
|
|
13
13
|
*/
|
|
14
|
-
export interface
|
|
14
|
+
export interface LegacyContentEvaluationResult {
|
|
15
15
|
verdict: 'pass' | 'fail';
|
|
16
16
|
confidence?: number;
|
|
17
17
|
explanation?: string;
|
|
@@ -25,7 +25,7 @@ export interface ContentEvaluationResult {
|
|
|
25
25
|
* Abstract interface for content standards adapters.
|
|
26
26
|
* Publishers implement this to provide their evaluation logic.
|
|
27
27
|
*/
|
|
28
|
-
export interface
|
|
28
|
+
export interface LegacyIContentStandardsAdapter {
|
|
29
29
|
/**
|
|
30
30
|
* Check if content standards are supported by this server
|
|
31
31
|
*/
|
|
@@ -58,12 +58,12 @@ export interface IContentStandardsAdapter {
|
|
|
58
58
|
* Evaluate a single artifact against standards.
|
|
59
59
|
* Used internally by get_products and create_media_buy to filter content.
|
|
60
60
|
*/
|
|
61
|
-
evaluateArtifact(standardsId: string, artifact: Artifact): Promise<
|
|
61
|
+
evaluateArtifact(standardsId: string, artifact: Artifact): Promise<LegacyContentEvaluationResult>;
|
|
62
62
|
}
|
|
63
63
|
/**
|
|
64
64
|
* Error codes for content standards operations
|
|
65
65
|
*/
|
|
66
|
-
export declare const
|
|
66
|
+
export declare const LegacyContentStandardsErrorCodes: {
|
|
67
67
|
readonly NOT_SUPPORTED: "UNSUPPORTED_FEATURE";
|
|
68
68
|
readonly STANDARDS_NOT_FOUND: "REFERENCE_NOT_FOUND";
|
|
69
69
|
readonly INVALID_STANDARDS: "INVALID_REQUEST";
|
|
@@ -71,13 +71,13 @@ export declare const ContentStandardsErrorCodes: {
|
|
|
71
71
|
readonly QUOTA_EXCEEDED: "QUOTA_EXCEEDED";
|
|
72
72
|
};
|
|
73
73
|
/**
|
|
74
|
-
* Stub implementation of
|
|
74
|
+
* Stub implementation of LegacyContentStandardsAdapter.
|
|
75
75
|
* Returns not-supported errors for all operations.
|
|
76
76
|
*
|
|
77
77
|
* Publishers should extend this class or provide their own implementation
|
|
78
78
|
* that integrates with their brand safety systems.
|
|
79
79
|
*/
|
|
80
|
-
export declare class
|
|
80
|
+
export declare class LegacyContentStandardsAdapter implements LegacyIContentStandardsAdapter {
|
|
81
81
|
/**
|
|
82
82
|
* Check if content standards are supported.
|
|
83
83
|
* Override this to return true when implementing real logic.
|
|
@@ -93,14 +93,14 @@ export declare class ContentStandardsAdapter implements IContentStandardsAdapter
|
|
|
93
93
|
* Evaluate a single artifact against content standards.
|
|
94
94
|
* Used by get_products and create_media_buy to filter content.
|
|
95
95
|
*/
|
|
96
|
-
evaluateArtifact(standardsId: string, artifact: Artifact): Promise<
|
|
96
|
+
evaluateArtifact(standardsId: string, artifact: Artifact): Promise<LegacyContentEvaluationResult>;
|
|
97
97
|
}
|
|
98
98
|
/**
|
|
99
99
|
* Helper to check if a response is an error response
|
|
100
100
|
*/
|
|
101
|
-
export declare function
|
|
101
|
+
export declare function isLegacyContentStandardsError(response: ListContentStandardsResponse | GetContentStandardsResponse | CreateContentStandardsResponse): boolean;
|
|
102
102
|
/**
|
|
103
103
|
* Default singleton instance for servers that don't need content standards
|
|
104
104
|
*/
|
|
105
|
-
export declare const
|
|
105
|
+
export declare const legacyDefaultContentStandardsAdapter: LegacyContentStandardsAdapter;
|
|
106
106
|
//# sourceMappingURL=content-standards-adapter.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"content-standards-adapter.d.ts","sourceRoot":"","sources":["../../../src/lib/adapters/content-standards-adapter.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EACV,2BAA2B,EAC3B,4BAA4B,EAC5B,0BAA0B,EAC1B,2BAA2B,EAC3B,6BAA6B,EAC7B,8BAA8B,EAC9B,6BAA6B,EAC7B,8BAA8B,EAC9B,uBAAuB,EACvB,wBAAwB,EACxB,8BAA8B,EAC9B,+BAA+B,EAE/B,QAAQ,EACT,MAAM,0BAA0B,CAAC;AAElC;;GAEG;AACH,MAAM,WAAW,
|
|
1
|
+
{"version":3,"file":"content-standards-adapter.d.ts","sourceRoot":"","sources":["../../../src/lib/adapters/content-standards-adapter.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EACV,2BAA2B,EAC3B,4BAA4B,EAC5B,0BAA0B,EAC1B,2BAA2B,EAC3B,6BAA6B,EAC7B,8BAA8B,EAC9B,6BAA6B,EAC7B,8BAA8B,EAC9B,uBAAuB,EACvB,wBAAwB,EACxB,8BAA8B,EAC9B,+BAA+B,EAE/B,QAAQ,EACT,MAAM,0BAA0B,CAAC;AAElC;;GAEG;AACH,MAAM,WAAW,6BAA6B;IAC5C,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC;IACzB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE;QACT,UAAU,EAAE,MAAM,CAAC;QACnB,MAAM,EAAE,QAAQ,GAAG,QAAQ,GAAG,SAAS,GAAG,aAAa,CAAC;QACxD,WAAW,CAAC,EAAE,MAAM,CAAC;KACtB,EAAE,CAAC;CACL;AAED;;;GAGG;AACH,MAAM,WAAW,8BAA8B;IAC7C;;OAEG;IACH,WAAW,IAAI,OAAO,CAAC;IAEvB;;OAEG;IACH,aAAa,CAAC,OAAO,EAAE,2BAA2B,GAAG,OAAO,CAAC,4BAA4B,CAAC,CAAC;IAE3F;;OAEG;IACH,YAAY,CAAC,OAAO,EAAE,0BAA0B,GAAG,OAAO,CAAC,2BAA2B,CAAC,CAAC;IAExF;;OAEG;IACH,eAAe,CAAC,OAAO,EAAE,6BAA6B,GAAG,OAAO,CAAC,8BAA8B,CAAC,CAAC;IAEjG;;OAEG;IACH,eAAe,CAAC,OAAO,EAAE,6BAA6B,GAAG,OAAO,CAAC,8BAA8B,CAAC,CAAC;IAEjG;;OAEG;IACH,gBAAgB,CAAC,OAAO,EAAE,uBAAuB,GAAG,OAAO,CAAC,wBAAwB,CAAC,CAAC;IAEtF;;OAEG;IACH,uBAAuB,CAAC,OAAO,EAAE,8BAA8B,GAAG,OAAO,CAAC,+BAA+B,CAAC,CAAC;IAE3G;;;OAGG;IACH,gBAAgB,CAAC,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,6BAA6B,CAAC,CAAC;CACnG;AAED;;GAEG;AACH,eAAO,MAAM,gCAAgC;;;;;;CAMnC,CAAC;AAEX;;;;;;GAMG;AACH,qBAAa,6BAA8B,YAAW,8BAA8B;IAClF;;;OAGG;IACH,WAAW,IAAI,OAAO;IAIhB,aAAa,CAAC,OAAO,EAAE,2BAA2B,GAAG,OAAO,CAAC,4BAA4B,CAAC;IAqB1F,YAAY,CAAC,OAAO,EAAE,0BAA0B,GAAG,OAAO,CAAC,2BAA2B,CAAC;IAyBvF,eAAe,CAAC,OAAO,EAAE,6BAA6B,GAAG,OAAO,CAAC,8BAA8B,CAAC;IAyBhG,eAAe,CAAC,OAAO,EAAE,6BAA6B,GAAG,OAAO,CAAC,8BAA8B,CAAC;IA2BhG,gBAAgB,CAAC,OAAO,EAAE,uBAAuB,GAAG,OAAO,CAAC,wBAAwB,CAAC;IAyBrF,uBAAuB,CAAC,OAAO,EAAE,8BAA8B,GAAG,OAAO,CAAC,+BAA+B,CAAC;IA+BhH;;;OAGG;IACG,gBAAgB,CAAC,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,6BAA6B,CAAC;CAiBxG;AAED;;GAEG;AACH,wBAAgB,6BAA6B,CAC3C,QAAQ,EAAE,4BAA4B,GAAG,2BAA2B,GAAG,8BAA8B,GACpG,OAAO,CAET;AAED;;GAEG;AACH,eAAO,MAAM,oCAAoC,+BAAsC,CAAC"}
|
|
@@ -18,20 +18,20 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
18
18
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
19
|
var content_standards_adapter_exports = {};
|
|
20
20
|
__export(content_standards_adapter_exports, {
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
21
|
+
LegacyContentStandardsAdapter: () => LegacyContentStandardsAdapter,
|
|
22
|
+
LegacyContentStandardsErrorCodes: () => LegacyContentStandardsErrorCodes,
|
|
23
|
+
isLegacyContentStandardsError: () => isLegacyContentStandardsError,
|
|
24
|
+
legacyDefaultContentStandardsAdapter: () => legacyDefaultContentStandardsAdapter
|
|
25
25
|
});
|
|
26
26
|
module.exports = __toCommonJS(content_standards_adapter_exports);
|
|
27
|
-
const
|
|
27
|
+
const LegacyContentStandardsErrorCodes = {
|
|
28
28
|
NOT_SUPPORTED: "UNSUPPORTED_FEATURE",
|
|
29
29
|
STANDARDS_NOT_FOUND: "REFERENCE_NOT_FOUND",
|
|
30
30
|
INVALID_STANDARDS: "INVALID_REQUEST",
|
|
31
31
|
EVALUATION_FAILED: "SERVICE_UNAVAILABLE",
|
|
32
32
|
QUOTA_EXCEEDED: "QUOTA_EXCEEDED"
|
|
33
33
|
};
|
|
34
|
-
class
|
|
34
|
+
class LegacyContentStandardsAdapter {
|
|
35
35
|
/**
|
|
36
36
|
* Check if content standards are supported.
|
|
37
37
|
* Override this to return true when implementing real logic.
|
|
@@ -45,7 +45,7 @@ class ContentStandardsAdapter {
|
|
|
45
45
|
status: "failed",
|
|
46
46
|
errors: [
|
|
47
47
|
{
|
|
48
|
-
code:
|
|
48
|
+
code: LegacyContentStandardsErrorCodes.NOT_SUPPORTED,
|
|
49
49
|
message: "Content standards are not supported by this server"
|
|
50
50
|
}
|
|
51
51
|
]
|
|
@@ -63,7 +63,7 @@ class ContentStandardsAdapter {
|
|
|
63
63
|
status: "failed",
|
|
64
64
|
errors: [
|
|
65
65
|
{
|
|
66
|
-
code:
|
|
66
|
+
code: LegacyContentStandardsErrorCodes.NOT_SUPPORTED,
|
|
67
67
|
message: "Content standards are not supported by this server"
|
|
68
68
|
}
|
|
69
69
|
]
|
|
@@ -73,7 +73,7 @@ class ContentStandardsAdapter {
|
|
|
73
73
|
status: "failed",
|
|
74
74
|
errors: [
|
|
75
75
|
{
|
|
76
|
-
code:
|
|
76
|
+
code: LegacyContentStandardsErrorCodes.STANDARDS_NOT_FOUND,
|
|
77
77
|
message: `Standards not found: ${request.standards_id}`
|
|
78
78
|
}
|
|
79
79
|
]
|
|
@@ -85,7 +85,7 @@ class ContentStandardsAdapter {
|
|
|
85
85
|
status: "failed",
|
|
86
86
|
errors: [
|
|
87
87
|
{
|
|
88
|
-
code:
|
|
88
|
+
code: LegacyContentStandardsErrorCodes.NOT_SUPPORTED,
|
|
89
89
|
message: "Content standards are not supported by this server"
|
|
90
90
|
}
|
|
91
91
|
]
|
|
@@ -95,7 +95,7 @@ class ContentStandardsAdapter {
|
|
|
95
95
|
status: "failed",
|
|
96
96
|
errors: [
|
|
97
97
|
{
|
|
98
|
-
code:
|
|
98
|
+
code: LegacyContentStandardsErrorCodes.NOT_SUPPORTED,
|
|
99
99
|
message: "Creating content standards is not implemented"
|
|
100
100
|
}
|
|
101
101
|
]
|
|
@@ -108,7 +108,7 @@ class ContentStandardsAdapter {
|
|
|
108
108
|
success: false,
|
|
109
109
|
errors: [
|
|
110
110
|
{
|
|
111
|
-
code:
|
|
111
|
+
code: LegacyContentStandardsErrorCodes.NOT_SUPPORTED,
|
|
112
112
|
message: "Content standards are not supported by this server"
|
|
113
113
|
}
|
|
114
114
|
]
|
|
@@ -119,7 +119,7 @@ class ContentStandardsAdapter {
|
|
|
119
119
|
success: false,
|
|
120
120
|
errors: [
|
|
121
121
|
{
|
|
122
|
-
code:
|
|
122
|
+
code: LegacyContentStandardsErrorCodes.NOT_SUPPORTED,
|
|
123
123
|
message: "Updating content standards is not implemented"
|
|
124
124
|
}
|
|
125
125
|
]
|
|
@@ -131,7 +131,7 @@ class ContentStandardsAdapter {
|
|
|
131
131
|
status: "failed",
|
|
132
132
|
errors: [
|
|
133
133
|
{
|
|
134
|
-
code:
|
|
134
|
+
code: LegacyContentStandardsErrorCodes.NOT_SUPPORTED,
|
|
135
135
|
message: "Content standards calibration is not supported by this server"
|
|
136
136
|
}
|
|
137
137
|
]
|
|
@@ -141,7 +141,7 @@ class ContentStandardsAdapter {
|
|
|
141
141
|
status: "failed",
|
|
142
142
|
errors: [
|
|
143
143
|
{
|
|
144
|
-
code:
|
|
144
|
+
code: LegacyContentStandardsErrorCodes.EVALUATION_FAILED,
|
|
145
145
|
message: "Content calibration is not implemented"
|
|
146
146
|
}
|
|
147
147
|
]
|
|
@@ -153,7 +153,7 @@ class ContentStandardsAdapter {
|
|
|
153
153
|
status: "failed",
|
|
154
154
|
errors: [
|
|
155
155
|
{
|
|
156
|
-
code:
|
|
156
|
+
code: LegacyContentStandardsErrorCodes.NOT_SUPPORTED,
|
|
157
157
|
message: "Content delivery validation is not supported by this server"
|
|
158
158
|
}
|
|
159
159
|
],
|
|
@@ -193,15 +193,15 @@ class ContentStandardsAdapter {
|
|
|
193
193
|
};
|
|
194
194
|
}
|
|
195
195
|
}
|
|
196
|
-
function
|
|
196
|
+
function isLegacyContentStandardsError(response) {
|
|
197
197
|
return "errors" in response && Array.isArray(response.errors) && response.errors.length > 0;
|
|
198
198
|
}
|
|
199
|
-
const
|
|
199
|
+
const legacyDefaultContentStandardsAdapter = new LegacyContentStandardsAdapter();
|
|
200
200
|
// Annotate the CommonJS export names for ESM import in node:
|
|
201
201
|
0 && (module.exports = {
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
202
|
+
LegacyContentStandardsAdapter,
|
|
203
|
+
LegacyContentStandardsErrorCodes,
|
|
204
|
+
isLegacyContentStandardsError,
|
|
205
|
+
legacyDefaultContentStandardsAdapter
|
|
206
206
|
});
|
|
207
207
|
//# sourceMappingURL=content-standards-adapter.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/lib/adapters/content-standards-adapter.ts"],"sourcesContent":["/**\n * Content Standards Adapter\n *\n * Server-side adapter for implementing content standards evaluation logic.\n * Publishers use this to plug in their brand safety/suitability evaluation systems.\n *\n * This is a stub implementation that returns not-supported responses.\n * Publishers should extend or replace this with their actual evaluation logic.\n */\n\nimport type {\n ListContentStandardsRequest,\n ListContentStandardsResponse,\n GetContentStandardsRequest,\n GetContentStandardsResponse,\n CreateContentStandardsRequest,\n CreateContentStandardsResponse,\n UpdateContentStandardsRequest,\n UpdateContentStandardsResponse,\n CalibrateContentRequest,\n CalibrateContentResponse,\n ValidateContentDeliveryRequest,\n ValidateContentDeliveryResponse,\n ContentStandards,\n Artifact,\n} from '../types/tools.generated';\n\n/**\n * Content evaluation result from the adapter\n */\nexport interface ContentEvaluationResult {\n verdict: 'pass' | 'fail';\n confidence?: number;\n explanation?: string;\n features?: {\n feature_id: string;\n status: 'passed' | 'failed' | 'warning' | 'unevaluated';\n explanation?: string;\n }[];\n}\n\n/**\n * Abstract interface for content standards adapters.\n * Publishers implement this to provide their evaluation logic.\n */\nexport interface IContentStandardsAdapter {\n /**\n * Check if content standards are supported by this server\n */\n isSupported(): boolean;\n\n /**\n * List available content standards configurations\n */\n listStandards(request: ListContentStandardsRequest): Promise<ListContentStandardsResponse>;\n\n /**\n * Get a specific content standards configuration\n */\n getStandards(request: GetContentStandardsRequest): Promise<GetContentStandardsResponse>;\n\n /**\n * Create a new content standards configuration\n */\n createStandards(request: CreateContentStandardsRequest): Promise<CreateContentStandardsResponse>;\n\n /**\n * Update an existing content standards configuration\n */\n updateStandards(request: UpdateContentStandardsRequest): Promise<UpdateContentStandardsResponse>;\n\n /**\n * Calibrate content against standards (interactive feedback loop)\n */\n calibrateContent(request: CalibrateContentRequest): Promise<CalibrateContentResponse>;\n\n /**\n * Validate delivery records against content standards (batch validation)\n */\n validateContentDelivery(request: ValidateContentDeliveryRequest): Promise<ValidateContentDeliveryResponse>;\n\n /**\n * Evaluate a single artifact against standards.\n * Used internally by get_products and create_media_buy to filter content.\n */\n evaluateArtifact(standardsId: string, artifact: Artifact): Promise<ContentEvaluationResult>;\n}\n\n/**\n * Error codes for content standards operations\n */\nexport const ContentStandardsErrorCodes = {\n NOT_SUPPORTED: 'UNSUPPORTED_FEATURE',\n STANDARDS_NOT_FOUND: 'REFERENCE_NOT_FOUND',\n INVALID_STANDARDS: 'INVALID_REQUEST',\n EVALUATION_FAILED: 'SERVICE_UNAVAILABLE',\n QUOTA_EXCEEDED: 'QUOTA_EXCEEDED',\n} as const;\n\n/**\n * Stub implementation of ContentStandardsAdapter.\n * Returns not-supported errors for all operations.\n *\n * Publishers should extend this class or provide their own implementation\n * that integrates with their brand safety systems.\n */\nexport class ContentStandardsAdapter implements IContentStandardsAdapter {\n /**\n * Check if content standards are supported.\n * Override this to return true when implementing real logic.\n */\n isSupported(): boolean {\n return false;\n }\n\n async listStandards(request: ListContentStandardsRequest): Promise<ListContentStandardsResponse> {\n if (!this.isSupported()) {\n return {\n status: 'failed',\n errors: [\n {\n code: ContentStandardsErrorCodes.NOT_SUPPORTED,\n message: 'Content standards are not supported by this server',\n },\n ],\n };\n }\n\n // Override in subclass to return actual standards\n return {\n status: 'completed',\n standards: [],\n context: request.context,\n };\n }\n\n async getStandards(request: GetContentStandardsRequest): Promise<GetContentStandardsResponse> {\n if (!this.isSupported()) {\n return {\n status: 'failed',\n errors: [\n {\n code: ContentStandardsErrorCodes.NOT_SUPPORTED,\n message: 'Content standards are not supported by this server',\n },\n ],\n };\n }\n\n // Override in subclass to return actual standards\n return {\n status: 'failed',\n errors: [\n {\n code: ContentStandardsErrorCodes.STANDARDS_NOT_FOUND,\n message: `Standards not found: ${request.standards_id}`,\n },\n ],\n };\n }\n\n async createStandards(request: CreateContentStandardsRequest): Promise<CreateContentStandardsResponse> {\n if (!this.isSupported()) {\n return {\n status: 'failed',\n errors: [\n {\n code: ContentStandardsErrorCodes.NOT_SUPPORTED,\n message: 'Content standards are not supported by this server',\n },\n ],\n };\n }\n\n // Override in subclass to implement creation logic\n return {\n status: 'failed',\n errors: [\n {\n code: ContentStandardsErrorCodes.NOT_SUPPORTED,\n message: 'Creating content standards is not implemented',\n },\n ],\n };\n }\n\n async updateStandards(request: UpdateContentStandardsRequest): Promise<UpdateContentStandardsResponse> {\n if (!this.isSupported()) {\n return {\n status: 'failed',\n success: false as const,\n errors: [\n {\n code: ContentStandardsErrorCodes.NOT_SUPPORTED,\n message: 'Content standards are not supported by this server',\n },\n ],\n };\n }\n\n // Override in subclass to implement update logic\n return {\n status: 'failed',\n success: false as const,\n errors: [\n {\n code: ContentStandardsErrorCodes.NOT_SUPPORTED,\n message: 'Updating content standards is not implemented',\n },\n ],\n };\n }\n\n async calibrateContent(request: CalibrateContentRequest): Promise<CalibrateContentResponse> {\n if (!this.isSupported()) {\n return {\n status: 'failed',\n errors: [\n {\n code: ContentStandardsErrorCodes.NOT_SUPPORTED,\n message: 'Content standards calibration is not supported by this server',\n },\n ],\n };\n }\n\n // Override in subclass to implement calibration logic\n return {\n status: 'failed',\n errors: [\n {\n code: ContentStandardsErrorCodes.EVALUATION_FAILED,\n message: 'Content calibration is not implemented',\n },\n ],\n };\n }\n\n async validateContentDelivery(request: ValidateContentDeliveryRequest): Promise<ValidateContentDeliveryResponse> {\n if (!this.isSupported()) {\n return {\n status: 'failed',\n errors: [\n {\n code: ContentStandardsErrorCodes.NOT_SUPPORTED,\n message: 'Content delivery validation is not supported by this server',\n },\n ],\n context: request.context,\n };\n }\n\n // Override in subclass to implement validation logic\n // Stub returns all records as passed (no filtering)\n return {\n status: 'completed',\n summary: {\n total_records: request.records.length,\n passed_records: request.records.length,\n failed_records: 0,\n },\n results: request.records.map(record => ({\n record_id: record.record_id,\n verdict: 'pass' as const,\n })),\n context: request.context,\n };\n }\n\n /**\n * Evaluate a single artifact against content standards.\n * Used by get_products and create_media_buy to filter content.\n */\n async evaluateArtifact(standardsId: string, artifact: Artifact): Promise<ContentEvaluationResult> {\n if (!this.isSupported()) {\n // When not supported, all content passes (no filtering)\n return {\n verdict: 'pass',\n confidence: 1.0,\n explanation: 'Content standards evaluation not enabled',\n };\n }\n\n // Override in subclass to implement actual evaluation\n return {\n verdict: 'pass',\n confidence: 1.0,\n explanation: 'Default pass-through (no evaluation implemented)',\n };\n }\n}\n\n/**\n * Helper to check if a response is an error response\n */\nexport function isContentStandardsError(\n response: ListContentStandardsResponse | GetContentStandardsResponse | CreateContentStandardsResponse\n): boolean {\n return 'errors' in response && Array.isArray(response.errors) && response.errors.length > 0;\n}\n\n/**\n * Default singleton instance for servers that don't need content standards\n */\nexport const defaultContentStandardsAdapter = new ContentStandardsAdapter();\n"],"mappings":"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","names":[]}
|
|
1
|
+
{"version":3,"sources":["../../../src/lib/adapters/content-standards-adapter.ts"],"sourcesContent":["/**\n * Content Standards Adapter\n *\n * Server-side adapter for implementing content standards evaluation logic.\n * Publishers use this to plug in their brand safety/suitability evaluation systems.\n *\n * This is a stub implementation that returns not-supported responses.\n * Publishers should extend or replace this with their actual evaluation logic.\n */\n\nimport type {\n ListContentStandardsRequest,\n ListContentStandardsResponse,\n GetContentStandardsRequest,\n GetContentStandardsResponse,\n CreateContentStandardsRequest,\n CreateContentStandardsResponse,\n UpdateContentStandardsRequest,\n UpdateContentStandardsResponse,\n CalibrateContentRequest,\n CalibrateContentResponse,\n ValidateContentDeliveryRequest,\n ValidateContentDeliveryResponse,\n ContentStandards,\n Artifact,\n} from '../types/tools.generated';\n\n/**\n * Content evaluation result from the adapter\n */\nexport interface LegacyContentEvaluationResult {\n verdict: 'pass' | 'fail';\n confidence?: number;\n explanation?: string;\n features?: {\n feature_id: string;\n status: 'passed' | 'failed' | 'warning' | 'unevaluated';\n explanation?: string;\n }[];\n}\n\n/**\n * Abstract interface for content standards adapters.\n * Publishers implement this to provide their evaluation logic.\n */\nexport interface LegacyIContentStandardsAdapter {\n /**\n * Check if content standards are supported by this server\n */\n isSupported(): boolean;\n\n /**\n * List available content standards configurations\n */\n listStandards(request: ListContentStandardsRequest): Promise<ListContentStandardsResponse>;\n\n /**\n * Get a specific content standards configuration\n */\n getStandards(request: GetContentStandardsRequest): Promise<GetContentStandardsResponse>;\n\n /**\n * Create a new content standards configuration\n */\n createStandards(request: CreateContentStandardsRequest): Promise<CreateContentStandardsResponse>;\n\n /**\n * Update an existing content standards configuration\n */\n updateStandards(request: UpdateContentStandardsRequest): Promise<UpdateContentStandardsResponse>;\n\n /**\n * Calibrate content against standards (interactive feedback loop)\n */\n calibrateContent(request: CalibrateContentRequest): Promise<CalibrateContentResponse>;\n\n /**\n * Validate delivery records against content standards (batch validation)\n */\n validateContentDelivery(request: ValidateContentDeliveryRequest): Promise<ValidateContentDeliveryResponse>;\n\n /**\n * Evaluate a single artifact against standards.\n * Used internally by get_products and create_media_buy to filter content.\n */\n evaluateArtifact(standardsId: string, artifact: Artifact): Promise<LegacyContentEvaluationResult>;\n}\n\n/**\n * Error codes for content standards operations\n */\nexport const LegacyContentStandardsErrorCodes = {\n NOT_SUPPORTED: 'UNSUPPORTED_FEATURE',\n STANDARDS_NOT_FOUND: 'REFERENCE_NOT_FOUND',\n INVALID_STANDARDS: 'INVALID_REQUEST',\n EVALUATION_FAILED: 'SERVICE_UNAVAILABLE',\n QUOTA_EXCEEDED: 'QUOTA_EXCEEDED',\n} as const;\n\n/**\n * Stub implementation of LegacyContentStandardsAdapter.\n * Returns not-supported errors for all operations.\n *\n * Publishers should extend this class or provide their own implementation\n * that integrates with their brand safety systems.\n */\nexport class LegacyContentStandardsAdapter implements LegacyIContentStandardsAdapter {\n /**\n * Check if content standards are supported.\n * Override this to return true when implementing real logic.\n */\n isSupported(): boolean {\n return false;\n }\n\n async listStandards(request: ListContentStandardsRequest): Promise<ListContentStandardsResponse> {\n if (!this.isSupported()) {\n return {\n status: 'failed',\n errors: [\n {\n code: LegacyContentStandardsErrorCodes.NOT_SUPPORTED,\n message: 'Content standards are not supported by this server',\n },\n ],\n };\n }\n\n // Override in subclass to return actual standards\n return {\n status: 'completed',\n standards: [],\n context: request.context,\n };\n }\n\n async getStandards(request: GetContentStandardsRequest): Promise<GetContentStandardsResponse> {\n if (!this.isSupported()) {\n return {\n status: 'failed',\n errors: [\n {\n code: LegacyContentStandardsErrorCodes.NOT_SUPPORTED,\n message: 'Content standards are not supported by this server',\n },\n ],\n };\n }\n\n // Override in subclass to return actual standards\n return {\n status: 'failed',\n errors: [\n {\n code: LegacyContentStandardsErrorCodes.STANDARDS_NOT_FOUND,\n message: `Standards not found: ${request.standards_id}`,\n },\n ],\n };\n }\n\n async createStandards(request: CreateContentStandardsRequest): Promise<CreateContentStandardsResponse> {\n if (!this.isSupported()) {\n return {\n status: 'failed',\n errors: [\n {\n code: LegacyContentStandardsErrorCodes.NOT_SUPPORTED,\n message: 'Content standards are not supported by this server',\n },\n ],\n };\n }\n\n // Override in subclass to implement creation logic\n return {\n status: 'failed',\n errors: [\n {\n code: LegacyContentStandardsErrorCodes.NOT_SUPPORTED,\n message: 'Creating content standards is not implemented',\n },\n ],\n };\n }\n\n async updateStandards(request: UpdateContentStandardsRequest): Promise<UpdateContentStandardsResponse> {\n if (!this.isSupported()) {\n return {\n status: 'failed',\n success: false as const,\n errors: [\n {\n code: LegacyContentStandardsErrorCodes.NOT_SUPPORTED,\n message: 'Content standards are not supported by this server',\n },\n ],\n };\n }\n\n // Override in subclass to implement update logic\n return {\n status: 'failed',\n success: false as const,\n errors: [\n {\n code: LegacyContentStandardsErrorCodes.NOT_SUPPORTED,\n message: 'Updating content standards is not implemented',\n },\n ],\n };\n }\n\n async calibrateContent(request: CalibrateContentRequest): Promise<CalibrateContentResponse> {\n if (!this.isSupported()) {\n return {\n status: 'failed',\n errors: [\n {\n code: LegacyContentStandardsErrorCodes.NOT_SUPPORTED,\n message: 'Content standards calibration is not supported by this server',\n },\n ],\n };\n }\n\n // Override in subclass to implement calibration logic\n return {\n status: 'failed',\n errors: [\n {\n code: LegacyContentStandardsErrorCodes.EVALUATION_FAILED,\n message: 'Content calibration is not implemented',\n },\n ],\n };\n }\n\n async validateContentDelivery(request: ValidateContentDeliveryRequest): Promise<ValidateContentDeliveryResponse> {\n if (!this.isSupported()) {\n return {\n status: 'failed',\n errors: [\n {\n code: LegacyContentStandardsErrorCodes.NOT_SUPPORTED,\n message: 'Content delivery validation is not supported by this server',\n },\n ],\n context: request.context,\n };\n }\n\n // Override in subclass to implement validation logic\n // Stub returns all records as passed (no filtering)\n return {\n status: 'completed',\n summary: {\n total_records: request.records.length,\n passed_records: request.records.length,\n failed_records: 0,\n },\n results: request.records.map(record => ({\n record_id: record.record_id,\n verdict: 'pass' as const,\n })),\n context: request.context,\n };\n }\n\n /**\n * Evaluate a single artifact against content standards.\n * Used by get_products and create_media_buy to filter content.\n */\n async evaluateArtifact(standardsId: string, artifact: Artifact): Promise<LegacyContentEvaluationResult> {\n if (!this.isSupported()) {\n // When not supported, all content passes (no filtering)\n return {\n verdict: 'pass',\n confidence: 1.0,\n explanation: 'Content standards evaluation not enabled',\n };\n }\n\n // Override in subclass to implement actual evaluation\n return {\n verdict: 'pass',\n confidence: 1.0,\n explanation: 'Default pass-through (no evaluation implemented)',\n };\n }\n}\n\n/**\n * Helper to check if a response is an error response\n */\nexport function isLegacyContentStandardsError(\n response: ListContentStandardsResponse | GetContentStandardsResponse | CreateContentStandardsResponse\n): boolean {\n return 'errors' in response && Array.isArray(response.errors) && response.errors.length > 0;\n}\n\n/**\n * Default singleton instance for servers that don't need content standards\n */\nexport const legacyDefaultContentStandardsAdapter = new LegacyContentStandardsAdapter();\n"],"mappings":"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","names":[]}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
const
|
|
1
|
+
const LegacyContentStandardsErrorCodes = {
|
|
2
2
|
NOT_SUPPORTED: "UNSUPPORTED_FEATURE",
|
|
3
3
|
STANDARDS_NOT_FOUND: "REFERENCE_NOT_FOUND",
|
|
4
4
|
INVALID_STANDARDS: "INVALID_REQUEST",
|
|
5
5
|
EVALUATION_FAILED: "SERVICE_UNAVAILABLE",
|
|
6
6
|
QUOTA_EXCEEDED: "QUOTA_EXCEEDED"
|
|
7
7
|
};
|
|
8
|
-
class
|
|
8
|
+
class LegacyContentStandardsAdapter {
|
|
9
9
|
/**
|
|
10
10
|
* Check if content standards are supported.
|
|
11
11
|
* Override this to return true when implementing real logic.
|
|
@@ -19,7 +19,7 @@ class ContentStandardsAdapter {
|
|
|
19
19
|
status: "failed",
|
|
20
20
|
errors: [
|
|
21
21
|
{
|
|
22
|
-
code:
|
|
22
|
+
code: LegacyContentStandardsErrorCodes.NOT_SUPPORTED,
|
|
23
23
|
message: "Content standards are not supported by this server"
|
|
24
24
|
}
|
|
25
25
|
]
|
|
@@ -37,7 +37,7 @@ class ContentStandardsAdapter {
|
|
|
37
37
|
status: "failed",
|
|
38
38
|
errors: [
|
|
39
39
|
{
|
|
40
|
-
code:
|
|
40
|
+
code: LegacyContentStandardsErrorCodes.NOT_SUPPORTED,
|
|
41
41
|
message: "Content standards are not supported by this server"
|
|
42
42
|
}
|
|
43
43
|
]
|
|
@@ -47,7 +47,7 @@ class ContentStandardsAdapter {
|
|
|
47
47
|
status: "failed",
|
|
48
48
|
errors: [
|
|
49
49
|
{
|
|
50
|
-
code:
|
|
50
|
+
code: LegacyContentStandardsErrorCodes.STANDARDS_NOT_FOUND,
|
|
51
51
|
message: `Standards not found: ${request.standards_id}`
|
|
52
52
|
}
|
|
53
53
|
]
|
|
@@ -59,7 +59,7 @@ class ContentStandardsAdapter {
|
|
|
59
59
|
status: "failed",
|
|
60
60
|
errors: [
|
|
61
61
|
{
|
|
62
|
-
code:
|
|
62
|
+
code: LegacyContentStandardsErrorCodes.NOT_SUPPORTED,
|
|
63
63
|
message: "Content standards are not supported by this server"
|
|
64
64
|
}
|
|
65
65
|
]
|
|
@@ -69,7 +69,7 @@ class ContentStandardsAdapter {
|
|
|
69
69
|
status: "failed",
|
|
70
70
|
errors: [
|
|
71
71
|
{
|
|
72
|
-
code:
|
|
72
|
+
code: LegacyContentStandardsErrorCodes.NOT_SUPPORTED,
|
|
73
73
|
message: "Creating content standards is not implemented"
|
|
74
74
|
}
|
|
75
75
|
]
|
|
@@ -82,7 +82,7 @@ class ContentStandardsAdapter {
|
|
|
82
82
|
success: false,
|
|
83
83
|
errors: [
|
|
84
84
|
{
|
|
85
|
-
code:
|
|
85
|
+
code: LegacyContentStandardsErrorCodes.NOT_SUPPORTED,
|
|
86
86
|
message: "Content standards are not supported by this server"
|
|
87
87
|
}
|
|
88
88
|
]
|
|
@@ -93,7 +93,7 @@ class ContentStandardsAdapter {
|
|
|
93
93
|
success: false,
|
|
94
94
|
errors: [
|
|
95
95
|
{
|
|
96
|
-
code:
|
|
96
|
+
code: LegacyContentStandardsErrorCodes.NOT_SUPPORTED,
|
|
97
97
|
message: "Updating content standards is not implemented"
|
|
98
98
|
}
|
|
99
99
|
]
|
|
@@ -105,7 +105,7 @@ class ContentStandardsAdapter {
|
|
|
105
105
|
status: "failed",
|
|
106
106
|
errors: [
|
|
107
107
|
{
|
|
108
|
-
code:
|
|
108
|
+
code: LegacyContentStandardsErrorCodes.NOT_SUPPORTED,
|
|
109
109
|
message: "Content standards calibration is not supported by this server"
|
|
110
110
|
}
|
|
111
111
|
]
|
|
@@ -115,7 +115,7 @@ class ContentStandardsAdapter {
|
|
|
115
115
|
status: "failed",
|
|
116
116
|
errors: [
|
|
117
117
|
{
|
|
118
|
-
code:
|
|
118
|
+
code: LegacyContentStandardsErrorCodes.EVALUATION_FAILED,
|
|
119
119
|
message: "Content calibration is not implemented"
|
|
120
120
|
}
|
|
121
121
|
]
|
|
@@ -127,7 +127,7 @@ class ContentStandardsAdapter {
|
|
|
127
127
|
status: "failed",
|
|
128
128
|
errors: [
|
|
129
129
|
{
|
|
130
|
-
code:
|
|
130
|
+
code: LegacyContentStandardsErrorCodes.NOT_SUPPORTED,
|
|
131
131
|
message: "Content delivery validation is not supported by this server"
|
|
132
132
|
}
|
|
133
133
|
],
|
|
@@ -167,14 +167,14 @@ class ContentStandardsAdapter {
|
|
|
167
167
|
};
|
|
168
168
|
}
|
|
169
169
|
}
|
|
170
|
-
function
|
|
170
|
+
function isLegacyContentStandardsError(response) {
|
|
171
171
|
return "errors" in response && Array.isArray(response.errors) && response.errors.length > 0;
|
|
172
172
|
}
|
|
173
|
-
const
|
|
173
|
+
const legacyDefaultContentStandardsAdapter = new LegacyContentStandardsAdapter();
|
|
174
174
|
export {
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
175
|
+
LegacyContentStandardsAdapter,
|
|
176
|
+
LegacyContentStandardsErrorCodes,
|
|
177
|
+
isLegacyContentStandardsError,
|
|
178
|
+
legacyDefaultContentStandardsAdapter
|
|
179
179
|
};
|
|
180
180
|
//# sourceMappingURL=content-standards-adapter.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/lib/adapters/content-standards-adapter.ts"],"sourcesContent":["/**\n * Content Standards Adapter\n *\n * Server-side adapter for implementing content standards evaluation logic.\n * Publishers use this to plug in their brand safety/suitability evaluation systems.\n *\n * This is a stub implementation that returns not-supported responses.\n * Publishers should extend or replace this with their actual evaluation logic.\n */\n\nimport type {\n ListContentStandardsRequest,\n ListContentStandardsResponse,\n GetContentStandardsRequest,\n GetContentStandardsResponse,\n CreateContentStandardsRequest,\n CreateContentStandardsResponse,\n UpdateContentStandardsRequest,\n UpdateContentStandardsResponse,\n CalibrateContentRequest,\n CalibrateContentResponse,\n ValidateContentDeliveryRequest,\n ValidateContentDeliveryResponse,\n ContentStandards,\n Artifact,\n} from '../types/tools.generated';\n\n/**\n * Content evaluation result from the adapter\n */\nexport interface ContentEvaluationResult {\n verdict: 'pass' | 'fail';\n confidence?: number;\n explanation?: string;\n features?: {\n feature_id: string;\n status: 'passed' | 'failed' | 'warning' | 'unevaluated';\n explanation?: string;\n }[];\n}\n\n/**\n * Abstract interface for content standards adapters.\n * Publishers implement this to provide their evaluation logic.\n */\nexport interface IContentStandardsAdapter {\n /**\n * Check if content standards are supported by this server\n */\n isSupported(): boolean;\n\n /**\n * List available content standards configurations\n */\n listStandards(request: ListContentStandardsRequest): Promise<ListContentStandardsResponse>;\n\n /**\n * Get a specific content standards configuration\n */\n getStandards(request: GetContentStandardsRequest): Promise<GetContentStandardsResponse>;\n\n /**\n * Create a new content standards configuration\n */\n createStandards(request: CreateContentStandardsRequest): Promise<CreateContentStandardsResponse>;\n\n /**\n * Update an existing content standards configuration\n */\n updateStandards(request: UpdateContentStandardsRequest): Promise<UpdateContentStandardsResponse>;\n\n /**\n * Calibrate content against standards (interactive feedback loop)\n */\n calibrateContent(request: CalibrateContentRequest): Promise<CalibrateContentResponse>;\n\n /**\n * Validate delivery records against content standards (batch validation)\n */\n validateContentDelivery(request: ValidateContentDeliveryRequest): Promise<ValidateContentDeliveryResponse>;\n\n /**\n * Evaluate a single artifact against standards.\n * Used internally by get_products and create_media_buy to filter content.\n */\n evaluateArtifact(standardsId: string, artifact: Artifact): Promise<ContentEvaluationResult>;\n}\n\n/**\n * Error codes for content standards operations\n */\nexport const ContentStandardsErrorCodes = {\n NOT_SUPPORTED: 'UNSUPPORTED_FEATURE',\n STANDARDS_NOT_FOUND: 'REFERENCE_NOT_FOUND',\n INVALID_STANDARDS: 'INVALID_REQUEST',\n EVALUATION_FAILED: 'SERVICE_UNAVAILABLE',\n QUOTA_EXCEEDED: 'QUOTA_EXCEEDED',\n} as const;\n\n/**\n * Stub implementation of ContentStandardsAdapter.\n * Returns not-supported errors for all operations.\n *\n * Publishers should extend this class or provide their own implementation\n * that integrates with their brand safety systems.\n */\nexport class ContentStandardsAdapter implements IContentStandardsAdapter {\n /**\n * Check if content standards are supported.\n * Override this to return true when implementing real logic.\n */\n isSupported(): boolean {\n return false;\n }\n\n async listStandards(request: ListContentStandardsRequest): Promise<ListContentStandardsResponse> {\n if (!this.isSupported()) {\n return {\n status: 'failed',\n errors: [\n {\n code: ContentStandardsErrorCodes.NOT_SUPPORTED,\n message: 'Content standards are not supported by this server',\n },\n ],\n };\n }\n\n // Override in subclass to return actual standards\n return {\n status: 'completed',\n standards: [],\n context: request.context,\n };\n }\n\n async getStandards(request: GetContentStandardsRequest): Promise<GetContentStandardsResponse> {\n if (!this.isSupported()) {\n return {\n status: 'failed',\n errors: [\n {\n code: ContentStandardsErrorCodes.NOT_SUPPORTED,\n message: 'Content standards are not supported by this server',\n },\n ],\n };\n }\n\n // Override in subclass to return actual standards\n return {\n status: 'failed',\n errors: [\n {\n code: ContentStandardsErrorCodes.STANDARDS_NOT_FOUND,\n message: `Standards not found: ${request.standards_id}`,\n },\n ],\n };\n }\n\n async createStandards(request: CreateContentStandardsRequest): Promise<CreateContentStandardsResponse> {\n if (!this.isSupported()) {\n return {\n status: 'failed',\n errors: [\n {\n code: ContentStandardsErrorCodes.NOT_SUPPORTED,\n message: 'Content standards are not supported by this server',\n },\n ],\n };\n }\n\n // Override in subclass to implement creation logic\n return {\n status: 'failed',\n errors: [\n {\n code: ContentStandardsErrorCodes.NOT_SUPPORTED,\n message: 'Creating content standards is not implemented',\n },\n ],\n };\n }\n\n async updateStandards(request: UpdateContentStandardsRequest): Promise<UpdateContentStandardsResponse> {\n if (!this.isSupported()) {\n return {\n status: 'failed',\n success: false as const,\n errors: [\n {\n code: ContentStandardsErrorCodes.NOT_SUPPORTED,\n message: 'Content standards are not supported by this server',\n },\n ],\n };\n }\n\n // Override in subclass to implement update logic\n return {\n status: 'failed',\n success: false as const,\n errors: [\n {\n code: ContentStandardsErrorCodes.NOT_SUPPORTED,\n message: 'Updating content standards is not implemented',\n },\n ],\n };\n }\n\n async calibrateContent(request: CalibrateContentRequest): Promise<CalibrateContentResponse> {\n if (!this.isSupported()) {\n return {\n status: 'failed',\n errors: [\n {\n code: ContentStandardsErrorCodes.NOT_SUPPORTED,\n message: 'Content standards calibration is not supported by this server',\n },\n ],\n };\n }\n\n // Override in subclass to implement calibration logic\n return {\n status: 'failed',\n errors: [\n {\n code: ContentStandardsErrorCodes.EVALUATION_FAILED,\n message: 'Content calibration is not implemented',\n },\n ],\n };\n }\n\n async validateContentDelivery(request: ValidateContentDeliveryRequest): Promise<ValidateContentDeliveryResponse> {\n if (!this.isSupported()) {\n return {\n status: 'failed',\n errors: [\n {\n code: ContentStandardsErrorCodes.NOT_SUPPORTED,\n message: 'Content delivery validation is not supported by this server',\n },\n ],\n context: request.context,\n };\n }\n\n // Override in subclass to implement validation logic\n // Stub returns all records as passed (no filtering)\n return {\n status: 'completed',\n summary: {\n total_records: request.records.length,\n passed_records: request.records.length,\n failed_records: 0,\n },\n results: request.records.map(record => ({\n record_id: record.record_id,\n verdict: 'pass' as const,\n })),\n context: request.context,\n };\n }\n\n /**\n * Evaluate a single artifact against content standards.\n * Used by get_products and create_media_buy to filter content.\n */\n async evaluateArtifact(standardsId: string, artifact: Artifact): Promise<ContentEvaluationResult> {\n if (!this.isSupported()) {\n // When not supported, all content passes (no filtering)\n return {\n verdict: 'pass',\n confidence: 1.0,\n explanation: 'Content standards evaluation not enabled',\n };\n }\n\n // Override in subclass to implement actual evaluation\n return {\n verdict: 'pass',\n confidence: 1.0,\n explanation: 'Default pass-through (no evaluation implemented)',\n };\n }\n}\n\n/**\n * Helper to check if a response is an error response\n */\nexport function isContentStandardsError(\n response: ListContentStandardsResponse | GetContentStandardsResponse | CreateContentStandardsResponse\n): boolean {\n return 'errors' in response && Array.isArray(response.errors) && response.errors.length > 0;\n}\n\n/**\n * Default singleton instance for servers that don't need content standards\n */\nexport const defaultContentStandardsAdapter = new ContentStandardsAdapter();\n"],"mappings":"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","names":[]}
|
|
1
|
+
{"version":3,"sources":["../../../src/lib/adapters/content-standards-adapter.ts"],"sourcesContent":["/**\n * Content Standards Adapter\n *\n * Server-side adapter for implementing content standards evaluation logic.\n * Publishers use this to plug in their brand safety/suitability evaluation systems.\n *\n * This is a stub implementation that returns not-supported responses.\n * Publishers should extend or replace this with their actual evaluation logic.\n */\n\nimport type {\n ListContentStandardsRequest,\n ListContentStandardsResponse,\n GetContentStandardsRequest,\n GetContentStandardsResponse,\n CreateContentStandardsRequest,\n CreateContentStandardsResponse,\n UpdateContentStandardsRequest,\n UpdateContentStandardsResponse,\n CalibrateContentRequest,\n CalibrateContentResponse,\n ValidateContentDeliveryRequest,\n ValidateContentDeliveryResponse,\n ContentStandards,\n Artifact,\n} from '../types/tools.generated';\n\n/**\n * Content evaluation result from the adapter\n */\nexport interface LegacyContentEvaluationResult {\n verdict: 'pass' | 'fail';\n confidence?: number;\n explanation?: string;\n features?: {\n feature_id: string;\n status: 'passed' | 'failed' | 'warning' | 'unevaluated';\n explanation?: string;\n }[];\n}\n\n/**\n * Abstract interface for content standards adapters.\n * Publishers implement this to provide their evaluation logic.\n */\nexport interface LegacyIContentStandardsAdapter {\n /**\n * Check if content standards are supported by this server\n */\n isSupported(): boolean;\n\n /**\n * List available content standards configurations\n */\n listStandards(request: ListContentStandardsRequest): Promise<ListContentStandardsResponse>;\n\n /**\n * Get a specific content standards configuration\n */\n getStandards(request: GetContentStandardsRequest): Promise<GetContentStandardsResponse>;\n\n /**\n * Create a new content standards configuration\n */\n createStandards(request: CreateContentStandardsRequest): Promise<CreateContentStandardsResponse>;\n\n /**\n * Update an existing content standards configuration\n */\n updateStandards(request: UpdateContentStandardsRequest): Promise<UpdateContentStandardsResponse>;\n\n /**\n * Calibrate content against standards (interactive feedback loop)\n */\n calibrateContent(request: CalibrateContentRequest): Promise<CalibrateContentResponse>;\n\n /**\n * Validate delivery records against content standards (batch validation)\n */\n validateContentDelivery(request: ValidateContentDeliveryRequest): Promise<ValidateContentDeliveryResponse>;\n\n /**\n * Evaluate a single artifact against standards.\n * Used internally by get_products and create_media_buy to filter content.\n */\n evaluateArtifact(standardsId: string, artifact: Artifact): Promise<LegacyContentEvaluationResult>;\n}\n\n/**\n * Error codes for content standards operations\n */\nexport const LegacyContentStandardsErrorCodes = {\n NOT_SUPPORTED: 'UNSUPPORTED_FEATURE',\n STANDARDS_NOT_FOUND: 'REFERENCE_NOT_FOUND',\n INVALID_STANDARDS: 'INVALID_REQUEST',\n EVALUATION_FAILED: 'SERVICE_UNAVAILABLE',\n QUOTA_EXCEEDED: 'QUOTA_EXCEEDED',\n} as const;\n\n/**\n * Stub implementation of LegacyContentStandardsAdapter.\n * Returns not-supported errors for all operations.\n *\n * Publishers should extend this class or provide their own implementation\n * that integrates with their brand safety systems.\n */\nexport class LegacyContentStandardsAdapter implements LegacyIContentStandardsAdapter {\n /**\n * Check if content standards are supported.\n * Override this to return true when implementing real logic.\n */\n isSupported(): boolean {\n return false;\n }\n\n async listStandards(request: ListContentStandardsRequest): Promise<ListContentStandardsResponse> {\n if (!this.isSupported()) {\n return {\n status: 'failed',\n errors: [\n {\n code: LegacyContentStandardsErrorCodes.NOT_SUPPORTED,\n message: 'Content standards are not supported by this server',\n },\n ],\n };\n }\n\n // Override in subclass to return actual standards\n return {\n status: 'completed',\n standards: [],\n context: request.context,\n };\n }\n\n async getStandards(request: GetContentStandardsRequest): Promise<GetContentStandardsResponse> {\n if (!this.isSupported()) {\n return {\n status: 'failed',\n errors: [\n {\n code: LegacyContentStandardsErrorCodes.NOT_SUPPORTED,\n message: 'Content standards are not supported by this server',\n },\n ],\n };\n }\n\n // Override in subclass to return actual standards\n return {\n status: 'failed',\n errors: [\n {\n code: LegacyContentStandardsErrorCodes.STANDARDS_NOT_FOUND,\n message: `Standards not found: ${request.standards_id}`,\n },\n ],\n };\n }\n\n async createStandards(request: CreateContentStandardsRequest): Promise<CreateContentStandardsResponse> {\n if (!this.isSupported()) {\n return {\n status: 'failed',\n errors: [\n {\n code: LegacyContentStandardsErrorCodes.NOT_SUPPORTED,\n message: 'Content standards are not supported by this server',\n },\n ],\n };\n }\n\n // Override in subclass to implement creation logic\n return {\n status: 'failed',\n errors: [\n {\n code: LegacyContentStandardsErrorCodes.NOT_SUPPORTED,\n message: 'Creating content standards is not implemented',\n },\n ],\n };\n }\n\n async updateStandards(request: UpdateContentStandardsRequest): Promise<UpdateContentStandardsResponse> {\n if (!this.isSupported()) {\n return {\n status: 'failed',\n success: false as const,\n errors: [\n {\n code: LegacyContentStandardsErrorCodes.NOT_SUPPORTED,\n message: 'Content standards are not supported by this server',\n },\n ],\n };\n }\n\n // Override in subclass to implement update logic\n return {\n status: 'failed',\n success: false as const,\n errors: [\n {\n code: LegacyContentStandardsErrorCodes.NOT_SUPPORTED,\n message: 'Updating content standards is not implemented',\n },\n ],\n };\n }\n\n async calibrateContent(request: CalibrateContentRequest): Promise<CalibrateContentResponse> {\n if (!this.isSupported()) {\n return {\n status: 'failed',\n errors: [\n {\n code: LegacyContentStandardsErrorCodes.NOT_SUPPORTED,\n message: 'Content standards calibration is not supported by this server',\n },\n ],\n };\n }\n\n // Override in subclass to implement calibration logic\n return {\n status: 'failed',\n errors: [\n {\n code: LegacyContentStandardsErrorCodes.EVALUATION_FAILED,\n message: 'Content calibration is not implemented',\n },\n ],\n };\n }\n\n async validateContentDelivery(request: ValidateContentDeliveryRequest): Promise<ValidateContentDeliveryResponse> {\n if (!this.isSupported()) {\n return {\n status: 'failed',\n errors: [\n {\n code: LegacyContentStandardsErrorCodes.NOT_SUPPORTED,\n message: 'Content delivery validation is not supported by this server',\n },\n ],\n context: request.context,\n };\n }\n\n // Override in subclass to implement validation logic\n // Stub returns all records as passed (no filtering)\n return {\n status: 'completed',\n summary: {\n total_records: request.records.length,\n passed_records: request.records.length,\n failed_records: 0,\n },\n results: request.records.map(record => ({\n record_id: record.record_id,\n verdict: 'pass' as const,\n })),\n context: request.context,\n };\n }\n\n /**\n * Evaluate a single artifact against content standards.\n * Used by get_products and create_media_buy to filter content.\n */\n async evaluateArtifact(standardsId: string, artifact: Artifact): Promise<LegacyContentEvaluationResult> {\n if (!this.isSupported()) {\n // When not supported, all content passes (no filtering)\n return {\n verdict: 'pass',\n confidence: 1.0,\n explanation: 'Content standards evaluation not enabled',\n };\n }\n\n // Override in subclass to implement actual evaluation\n return {\n verdict: 'pass',\n confidence: 1.0,\n explanation: 'Default pass-through (no evaluation implemented)',\n };\n }\n}\n\n/**\n * Helper to check if a response is an error response\n */\nexport function isLegacyContentStandardsError(\n response: ListContentStandardsResponse | GetContentStandardsResponse | CreateContentStandardsResponse\n): boolean {\n return 'errors' in response && Array.isArray(response.errors) && response.errors.length > 0;\n}\n\n/**\n * Default singleton instance for servers that don't need content standards\n */\nexport const legacyDefaultContentStandardsAdapter = new LegacyContentStandardsAdapter();\n"],"mappings":"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","names":[]}
|
|
@@ -6,12 +6,12 @@
|
|
|
6
6
|
* that can be extended or replaced.
|
|
7
7
|
*
|
|
8
8
|
* Usage:
|
|
9
|
-
* -
|
|
9
|
+
* - LegacyContentStandardsAdapter: Maintain raw content-standard integrations during migration
|
|
10
10
|
* - PropertyListAdapter: Manage buyer-defined property lists
|
|
11
11
|
* - SISessionManager: Handle Sponsored Intelligence conversational sessions
|
|
12
12
|
* - InMemoryImplicitAccountStore: AccountStore for resolution: 'implicit' platforms
|
|
13
13
|
*/
|
|
14
|
-
export {
|
|
14
|
+
export { LegacyContentStandardsAdapter, type LegacyIContentStandardsAdapter, type LegacyContentEvaluationResult, LegacyContentStandardsErrorCodes, isLegacyContentStandardsError, legacyDefaultContentStandardsAdapter, } from './content-standards-adapter.mjs';
|
|
15
15
|
export { PropertyListAdapter, type IPropertyListAdapter, type ResolvedProperty, PropertyListErrorCodes, isPropertyListError, defaultPropertyListAdapter, } from './property-list-adapter.mjs';
|
|
16
16
|
export { GovernanceAdapter, defaultGovernanceAdapter, type IGovernanceAdapter, type GovernanceAdapterConfig, type GovernanceAdapterErrorCode, type CommittedCheckRequest, GovernanceAdapterErrorCodes, isGovernanceAdapterError, } from './governance-adapter.mjs';
|
|
17
17
|
export { SISessionManager, AISISessionManager, type ISISessionManager, type SISession, SIErrorCodes, defaultSISessionManager, } from './si-session-manager.mjs';
|
|
@@ -6,12 +6,12 @@
|
|
|
6
6
|
* that can be extended or replaced.
|
|
7
7
|
*
|
|
8
8
|
* Usage:
|
|
9
|
-
* -
|
|
9
|
+
* - LegacyContentStandardsAdapter: Maintain raw content-standard integrations during migration
|
|
10
10
|
* - PropertyListAdapter: Manage buyer-defined property lists
|
|
11
11
|
* - SISessionManager: Handle Sponsored Intelligence conversational sessions
|
|
12
12
|
* - InMemoryImplicitAccountStore: AccountStore for resolution: 'implicit' platforms
|
|
13
13
|
*/
|
|
14
|
-
export {
|
|
14
|
+
export { LegacyContentStandardsAdapter, type LegacyIContentStandardsAdapter, type LegacyContentEvaluationResult, LegacyContentStandardsErrorCodes, isLegacyContentStandardsError, legacyDefaultContentStandardsAdapter, } from './content-standards-adapter';
|
|
15
15
|
export { PropertyListAdapter, type IPropertyListAdapter, type ResolvedProperty, PropertyListErrorCodes, isPropertyListError, defaultPropertyListAdapter, } from './property-list-adapter';
|
|
16
16
|
export { GovernanceAdapter, defaultGovernanceAdapter, type IGovernanceAdapter, type GovernanceAdapterConfig, type GovernanceAdapterErrorCode, type CommittedCheckRequest, GovernanceAdapterErrorCodes, isGovernanceAdapterError, } from './governance-adapter';
|
|
17
17
|
export { SISessionManager, AISISessionManager, type ISISessionManager, type SISession, SIErrorCodes, defaultSISessionManager, } from './si-session-manager';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/adapters/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAGH,OAAO,EACL,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/adapters/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAGH,OAAO,EACL,6BAA6B,EAC7B,KAAK,8BAA8B,EACnC,KAAK,6BAA6B,EAClC,gCAAgC,EAChC,6BAA6B,EAC7B,oCAAoC,GACrC,MAAM,6BAA6B,CAAC;AAGrC,OAAO,EACL,mBAAmB,EACnB,KAAK,oBAAoB,EACzB,KAAK,gBAAgB,EACrB,sBAAsB,EACtB,mBAAmB,EACnB,0BAA0B,GAC3B,MAAM,yBAAyB,CAAC;AAGjC,OAAO,EACL,iBAAiB,EACjB,wBAAwB,EACxB,KAAK,kBAAkB,EACvB,KAAK,uBAAuB,EAC5B,KAAK,0BAA0B,EAC/B,KAAK,qBAAqB,EAC1B,2BAA2B,EAC3B,wBAAwB,GACzB,MAAM,sBAAsB,CAAC;AAG9B,OAAO,EACL,gBAAgB,EAChB,kBAAkB,EAClB,KAAK,iBAAiB,EACtB,KAAK,SAAS,EACd,YAAY,EACZ,uBAAuB,GACxB,MAAM,sBAAsB,CAAC;AAG9B,OAAO,EACL,4BAA4B,EAC5B,oBAAoB,EACpB,KAAK,2BAA2B,GACjC,MAAM,0BAA0B,CAAC;AAMlC,OAAO,EAAE,8BAA8B,EAAE,KAAK,+BAA+B,EAAE,MAAM,8BAA8B,CAAC;AAOpH,OAAO,EAAE,wBAAwB,EAAE,KAAK,yBAAyB,EAAE,MAAM,wBAAwB,CAAC;AAMlG,OAAO,EAAE,yBAAyB,EAAE,KAAK,0BAA0B,EAAE,MAAM,yBAAyB,CAAC"}
|