@adcp/client 2.4.1 → 2.5.1
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 +66 -11
- package/bin/adcp-config.js +233 -0
- package/bin/adcp.js +321 -45
- package/dist/lib/core/ADCPClient.d.ts +33 -3
- package/dist/lib/core/ADCPClient.d.ts.map +1 -1
- package/dist/lib/core/ADCPClient.js +93 -16
- package/dist/lib/core/ADCPClient.js.map +1 -1
- package/dist/lib/core/ADCPMultiAgentClient.d.ts +8 -0
- package/dist/lib/core/ADCPMultiAgentClient.d.ts.map +1 -1
- package/dist/lib/core/ADCPMultiAgentClient.js +14 -0
- package/dist/lib/core/ADCPMultiAgentClient.js.map +1 -1
- package/dist/lib/core/AgentClient.d.ts +18 -2
- package/dist/lib/core/AgentClient.d.ts.map +1 -1
- package/dist/lib/core/AgentClient.js +10 -3
- package/dist/lib/core/AgentClient.js.map +1 -1
- package/dist/lib/core/ResponseValidator.d.ts +13 -9
- package/dist/lib/core/ResponseValidator.d.ts.map +1 -1
- package/dist/lib/core/ResponseValidator.js +93 -33
- package/dist/lib/core/ResponseValidator.js.map +1 -1
- package/dist/lib/core/TaskExecutor.d.ts +12 -0
- package/dist/lib/core/TaskExecutor.d.ts.map +1 -1
- package/dist/lib/core/TaskExecutor.js +88 -6
- package/dist/lib/core/TaskExecutor.js.map +1 -1
- package/dist/lib/index.d.ts +1 -0
- package/dist/lib/index.d.ts.map +1 -1
- package/dist/lib/index.js +4 -1
- package/dist/lib/index.js.map +1 -1
- package/dist/lib/protocols/mcp.d.ts.map +1 -1
- package/dist/lib/protocols/mcp.js +9 -0
- package/dist/lib/protocols/mcp.js.map +1 -1
- package/dist/lib/types/adcp.d.ts +2 -6
- package/dist/lib/types/adcp.d.ts.map +1 -1
- package/dist/lib/types/schemas.generated.d.ts +0 -2
- package/dist/lib/types/schemas.generated.d.ts.map +1 -1
- package/dist/lib/types/schemas.generated.js +1 -2
- package/dist/lib/types/schemas.generated.js.map +1 -1
- package/dist/lib/types/tools.generated.d.ts +0 -8
- package/dist/lib/types/tools.generated.d.ts.map +1 -1
- package/dist/lib/types/tools.generated.js.map +1 -1
- package/dist/lib/utils/index.d.ts +1 -0
- package/dist/lib/utils/index.d.ts.map +1 -1
- package/dist/lib/utils/index.js +9 -4
- package/dist/lib/utils/index.js.map +1 -1
- package/dist/lib/utils/logger.d.ts +55 -0
- package/dist/lib/utils/logger.d.ts.map +1 -0
- package/dist/lib/utils/logger.js +100 -0
- package/dist/lib/utils/logger.js.map +1 -0
- package/dist/lib/utils/protocol-detection.d.ts +26 -0
- package/dist/lib/utils/protocol-detection.d.ts.map +1 -0
- package/dist/lib/utils/protocol-detection.js +84 -0
- package/dist/lib/utils/protocol-detection.js.map +1 -0
- package/dist/lib/version.d.ts +3 -3
- package/dist/lib/version.js +3 -3
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/utils/index.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/utils/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Logger utility for AdCP Client
|
|
3
|
+
*
|
|
4
|
+
* Provides structured logging with levels and contextual metadata.
|
|
5
|
+
*/
|
|
6
|
+
export type LogLevel = 'debug' | 'info' | 'warn' | 'error';
|
|
7
|
+
export interface LoggerConfig {
|
|
8
|
+
/** Minimum log level to output (default: 'info') */
|
|
9
|
+
level?: LogLevel;
|
|
10
|
+
/** Enable/disable logging globally (default: true) */
|
|
11
|
+
enabled?: boolean;
|
|
12
|
+
/** Custom log handler (default: console) */
|
|
13
|
+
handler?: {
|
|
14
|
+
debug: (message: string, meta?: any) => void;
|
|
15
|
+
info: (message: string, meta?: any) => void;
|
|
16
|
+
warn: (message: string, meta?: any) => void;
|
|
17
|
+
error: (message: string, meta?: any) => void;
|
|
18
|
+
};
|
|
19
|
+
}
|
|
20
|
+
declare class Logger {
|
|
21
|
+
private config;
|
|
22
|
+
constructor(config?: LoggerConfig);
|
|
23
|
+
private shouldLog;
|
|
24
|
+
/**
|
|
25
|
+
* Log debug message (development/troubleshooting)
|
|
26
|
+
*/
|
|
27
|
+
debug(message: string, meta?: any): void;
|
|
28
|
+
/**
|
|
29
|
+
* Log info message (general information)
|
|
30
|
+
*/
|
|
31
|
+
info(message: string, meta?: any): void;
|
|
32
|
+
/**
|
|
33
|
+
* Log warning message (non-critical issues)
|
|
34
|
+
*/
|
|
35
|
+
warn(message: string, meta?: any): void;
|
|
36
|
+
/**
|
|
37
|
+
* Log error message (critical issues)
|
|
38
|
+
*/
|
|
39
|
+
error(message: string, meta?: any): void;
|
|
40
|
+
/**
|
|
41
|
+
* Create a child logger with contextual prefix
|
|
42
|
+
*/
|
|
43
|
+
child(context: string): Logger;
|
|
44
|
+
/**
|
|
45
|
+
* Update logger configuration
|
|
46
|
+
*/
|
|
47
|
+
configure(config: Partial<LoggerConfig>): void;
|
|
48
|
+
}
|
|
49
|
+
export declare const logger: Logger;
|
|
50
|
+
/**
|
|
51
|
+
* Create a new logger instance with custom configuration
|
|
52
|
+
*/
|
|
53
|
+
export declare function createLogger(config?: LoggerConfig): Logger;
|
|
54
|
+
export {};
|
|
55
|
+
//# sourceMappingURL=logger.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../../src/lib/utils/logger.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,MAAM,MAAM,QAAQ,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;AAE3D,MAAM,WAAW,YAAY;IAC3B,oDAAoD;IACpD,KAAK,CAAC,EAAE,QAAQ,CAAC;IACjB,sDAAsD;IACtD,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,4CAA4C;IAC5C,OAAO,CAAC,EAAE;QACR,KAAK,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;QAC7C,IAAI,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;QAC5C,IAAI,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;QAC5C,KAAK,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;KAC9C,CAAC;CACH;AASD,cAAM,MAAM;IACV,OAAO,CAAC,MAAM,CAAyB;gBAE3B,MAAM,GAAE,YAAiB;IAarC,OAAO,CAAC,SAAS;IAKjB;;OAEG;IACH,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,GAAG,IAAI;IAMxC;;OAEG;IACH,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,GAAG,IAAI;IAMvC;;OAEG;IACH,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,GAAG,IAAI;IAMvC;;OAEG;IACH,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,GAAG,IAAI;IAMxC;;OAEG;IACH,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;IAa9B;;OAEG;IACH,SAAS,CAAC,MAAM,EAAE,OAAO,CAAC,YAAY,CAAC,GAAG,IAAI;CAG/C;AAGD,eAAO,MAAM,MAAM,QAGjB,CAAC;AAEH;;GAEG;AACH,wBAAgB,YAAY,CAAC,MAAM,CAAC,EAAE,YAAY,GAAG,MAAM,CAE1D"}
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Logger utility for AdCP Client
|
|
4
|
+
*
|
|
5
|
+
* Provides structured logging with levels and contextual metadata.
|
|
6
|
+
*/
|
|
7
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8
|
+
exports.logger = void 0;
|
|
9
|
+
exports.createLogger = createLogger;
|
|
10
|
+
const LOG_LEVELS = {
|
|
11
|
+
debug: 0,
|
|
12
|
+
info: 1,
|
|
13
|
+
warn: 2,
|
|
14
|
+
error: 3
|
|
15
|
+
};
|
|
16
|
+
class Logger {
|
|
17
|
+
config;
|
|
18
|
+
constructor(config = {}) {
|
|
19
|
+
this.config = {
|
|
20
|
+
level: config.level || 'info',
|
|
21
|
+
enabled: config.enabled !== false,
|
|
22
|
+
handler: config.handler || {
|
|
23
|
+
debug: (msg, meta) => console.log(msg, meta ? meta : ''),
|
|
24
|
+
info: (msg, meta) => console.log(msg, meta ? meta : ''),
|
|
25
|
+
warn: (msg, meta) => console.warn(msg, meta ? meta : ''),
|
|
26
|
+
error: (msg, meta) => console.error(msg, meta ? meta : '')
|
|
27
|
+
}
|
|
28
|
+
};
|
|
29
|
+
}
|
|
30
|
+
shouldLog(level) {
|
|
31
|
+
if (!this.config.enabled)
|
|
32
|
+
return false;
|
|
33
|
+
return LOG_LEVELS[level] >= LOG_LEVELS[this.config.level];
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Log debug message (development/troubleshooting)
|
|
37
|
+
*/
|
|
38
|
+
debug(message, meta) {
|
|
39
|
+
if (this.shouldLog('debug')) {
|
|
40
|
+
this.config.handler.debug(message, meta);
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Log info message (general information)
|
|
45
|
+
*/
|
|
46
|
+
info(message, meta) {
|
|
47
|
+
if (this.shouldLog('info')) {
|
|
48
|
+
this.config.handler.info(message, meta);
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Log warning message (non-critical issues)
|
|
53
|
+
*/
|
|
54
|
+
warn(message, meta) {
|
|
55
|
+
if (this.shouldLog('warn')) {
|
|
56
|
+
this.config.handler.warn(message, meta);
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* Log error message (critical issues)
|
|
61
|
+
*/
|
|
62
|
+
error(message, meta) {
|
|
63
|
+
if (this.shouldLog('error')) {
|
|
64
|
+
this.config.handler.error(message, meta);
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* Create a child logger with contextual prefix
|
|
69
|
+
*/
|
|
70
|
+
child(context) {
|
|
71
|
+
const parentHandler = this.config.handler;
|
|
72
|
+
return new Logger({
|
|
73
|
+
...this.config,
|
|
74
|
+
handler: {
|
|
75
|
+
debug: (msg, meta) => parentHandler.debug(`[${context}] ${msg}`, meta),
|
|
76
|
+
info: (msg, meta) => parentHandler.info(`[${context}] ${msg}`, meta),
|
|
77
|
+
warn: (msg, meta) => parentHandler.warn(`[${context}] ${msg}`, meta),
|
|
78
|
+
error: (msg, meta) => parentHandler.error(`[${context}] ${msg}`, meta)
|
|
79
|
+
}
|
|
80
|
+
});
|
|
81
|
+
}
|
|
82
|
+
/**
|
|
83
|
+
* Update logger configuration
|
|
84
|
+
*/
|
|
85
|
+
configure(config) {
|
|
86
|
+
Object.assign(this.config, config);
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
// Default global logger instance
|
|
90
|
+
exports.logger = new Logger({
|
|
91
|
+
level: process.env.LOG_LEVEL || 'info',
|
|
92
|
+
enabled: process.env.LOG_ENABLED !== 'false'
|
|
93
|
+
});
|
|
94
|
+
/**
|
|
95
|
+
* Create a new logger instance with custom configuration
|
|
96
|
+
*/
|
|
97
|
+
function createLogger(config) {
|
|
98
|
+
return new Logger(config);
|
|
99
|
+
}
|
|
100
|
+
//# sourceMappingURL=logger.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"logger.js","sourceRoot":"","sources":["../../../src/lib/utils/logger.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Protocol Detection Utilities
|
|
3
|
+
*
|
|
4
|
+
* Auto-detects whether an agent endpoint uses MCP or A2A protocol
|
|
5
|
+
*/
|
|
6
|
+
/**
|
|
7
|
+
* Detect protocol for a given agent URL
|
|
8
|
+
*
|
|
9
|
+
* Uses a hybrid approach:
|
|
10
|
+
* 1. Check URL patterns (fast heuristic)
|
|
11
|
+
* 2. Try A2A discovery endpoint (authoritative)
|
|
12
|
+
* 3. Default to MCP if A2A discovery fails
|
|
13
|
+
*
|
|
14
|
+
* @param url Agent URL to check
|
|
15
|
+
* @returns Promise resolving to 'a2a' or 'mcp'
|
|
16
|
+
*/
|
|
17
|
+
export declare function detectProtocol(url: string): Promise<'a2a' | 'mcp'>;
|
|
18
|
+
/**
|
|
19
|
+
* Detect protocol with custom timeout
|
|
20
|
+
*
|
|
21
|
+
* @param url Agent URL to check
|
|
22
|
+
* @param timeoutMs Timeout in milliseconds (default: 5000)
|
|
23
|
+
* @returns Promise resolving to 'a2a' or 'mcp'
|
|
24
|
+
*/
|
|
25
|
+
export declare function detectProtocolWithTimeout(url: string, timeoutMs?: number): Promise<'a2a' | 'mcp'>;
|
|
26
|
+
//# sourceMappingURL=protocol-detection.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"protocol-detection.d.ts","sourceRoot":"","sources":["../../../src/lib/utils/protocol-detection.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;;;;;;;;;GAUG;AACH,wBAAsB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,GAAG,KAAK,CAAC,CA+BxE;AAED;;;;;;GAMG;AACH,wBAAsB,yBAAyB,CAC7C,GAAG,EAAE,MAAM,EACX,SAAS,GAAE,MAAa,GACvB,OAAO,CAAC,KAAK,GAAG,KAAK,CAAC,CA+BxB"}
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Protocol Detection Utilities
|
|
4
|
+
*
|
|
5
|
+
* Auto-detects whether an agent endpoint uses MCP or A2A protocol
|
|
6
|
+
*/
|
|
7
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8
|
+
exports.detectProtocol = detectProtocol;
|
|
9
|
+
exports.detectProtocolWithTimeout = detectProtocolWithTimeout;
|
|
10
|
+
/**
|
|
11
|
+
* Detect protocol for a given agent URL
|
|
12
|
+
*
|
|
13
|
+
* Uses a hybrid approach:
|
|
14
|
+
* 1. Check URL patterns (fast heuristic)
|
|
15
|
+
* 2. Try A2A discovery endpoint (authoritative)
|
|
16
|
+
* 3. Default to MCP if A2A discovery fails
|
|
17
|
+
*
|
|
18
|
+
* @param url Agent URL to check
|
|
19
|
+
* @returns Promise resolving to 'a2a' or 'mcp'
|
|
20
|
+
*/
|
|
21
|
+
async function detectProtocol(url) {
|
|
22
|
+
// Step 1: Quick heuristic check
|
|
23
|
+
if (url.endsWith('/mcp/') || url.endsWith('/mcp')) {
|
|
24
|
+
return 'mcp';
|
|
25
|
+
}
|
|
26
|
+
// Step 2: Try A2A discovery
|
|
27
|
+
try {
|
|
28
|
+
const discoveryUrl = new URL('/.well-known/a2a-server', url);
|
|
29
|
+
const controller = new AbortController();
|
|
30
|
+
const timeoutId = setTimeout(() => controller.abort(), 5000); // 5s timeout
|
|
31
|
+
const response = await fetch(discoveryUrl.toString(), {
|
|
32
|
+
method: 'GET',
|
|
33
|
+
signal: controller.signal,
|
|
34
|
+
headers: {
|
|
35
|
+
'Accept': 'application/json'
|
|
36
|
+
}
|
|
37
|
+
});
|
|
38
|
+
clearTimeout(timeoutId);
|
|
39
|
+
if (response.ok) {
|
|
40
|
+
return 'a2a';
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
catch (error) {
|
|
44
|
+
// Fetch failed - likely not A2A
|
|
45
|
+
}
|
|
46
|
+
// Step 3: Default to MCP
|
|
47
|
+
return 'mcp';
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* Detect protocol with custom timeout
|
|
51
|
+
*
|
|
52
|
+
* @param url Agent URL to check
|
|
53
|
+
* @param timeoutMs Timeout in milliseconds (default: 5000)
|
|
54
|
+
* @returns Promise resolving to 'a2a' or 'mcp'
|
|
55
|
+
*/
|
|
56
|
+
async function detectProtocolWithTimeout(url, timeoutMs = 5000) {
|
|
57
|
+
// Quick heuristic check
|
|
58
|
+
if (url.endsWith('/mcp/') || url.endsWith('/mcp')) {
|
|
59
|
+
return 'mcp';
|
|
60
|
+
}
|
|
61
|
+
// Try A2A discovery with custom timeout
|
|
62
|
+
try {
|
|
63
|
+
const discoveryUrl = new URL('/.well-known/a2a-server', url);
|
|
64
|
+
const controller = new AbortController();
|
|
65
|
+
const timeoutId = setTimeout(() => controller.abort(), timeoutMs);
|
|
66
|
+
const response = await fetch(discoveryUrl.toString(), {
|
|
67
|
+
method: 'GET',
|
|
68
|
+
signal: controller.signal,
|
|
69
|
+
headers: {
|
|
70
|
+
'Accept': 'application/json'
|
|
71
|
+
}
|
|
72
|
+
});
|
|
73
|
+
clearTimeout(timeoutId);
|
|
74
|
+
if (response.ok) {
|
|
75
|
+
return 'a2a';
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
catch (error) {
|
|
79
|
+
// Fetch failed - likely not A2A
|
|
80
|
+
}
|
|
81
|
+
// Default to MCP
|
|
82
|
+
return 'mcp';
|
|
83
|
+
}
|
|
84
|
+
//# sourceMappingURL=protocol-detection.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"protocol-detection.js","sourceRoot":"","sources":["../../../src/lib/utils/protocol-detection.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;AAaH,wCA+BC;AASD,8DAkCC;AArFD;;;;;;;;;;GAUG;AACI,KAAK,UAAU,cAAc,CAAC,GAAW;IAC9C,gCAAgC;IAChC,IAAI,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;QAClD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,4BAA4B;IAC5B,IAAI,CAAC;QACH,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC,yBAAyB,EAAE,GAAG,CAAC,CAAC;QAC7D,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;QACzC,MAAM,SAAS,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC,aAAa;QAE3E,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,YAAY,CAAC,QAAQ,EAAE,EAAE;YACpD,MAAM,EAAE,KAAK;YACb,MAAM,EAAE,UAAU,CAAC,MAAM;YACzB,OAAO,EAAE;gBACP,QAAQ,EAAE,kBAAkB;aAC7B;SACF,CAAC,CAAC;QAEH,YAAY,CAAC,SAAS,CAAC,CAAC;QAExB,IAAI,QAAQ,CAAC,EAAE,EAAE,CAAC;YAChB,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,gCAAgC;IAClC,CAAC;IAED,yBAAyB;IACzB,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;;;GAMG;AACI,KAAK,UAAU,yBAAyB,CAC7C,GAAW,EACX,YAAoB,IAAI;IAExB,wBAAwB;IACxB,IAAI,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;QAClD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,wCAAwC;IACxC,IAAI,CAAC;QACH,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC,yBAAyB,EAAE,GAAG,CAAC,CAAC;QAC7D,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;QACzC,MAAM,SAAS,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,EAAE,SAAS,CAAC,CAAC;QAElE,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,YAAY,CAAC,QAAQ,EAAE,EAAE;YACpD,MAAM,EAAE,KAAK;YACb,MAAM,EAAE,UAAU,CAAC,MAAM;YACzB,OAAO,EAAE;gBACP,QAAQ,EAAE,kBAAkB;aAC7B;SACF,CAAC,CAAC;QAEH,YAAY,CAAC,SAAS,CAAC,CAAC;QAExB,IAAI,QAAQ,CAAC,EAAE,EAAE,CAAC;YAChB,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,gCAAgC;IAClC,CAAC;IAED,iBAAiB;IACjB,OAAO,KAAK,CAAC;AACf,CAAC"}
|
package/dist/lib/version.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* AdCP client library version
|
|
3
3
|
*/
|
|
4
|
-
export declare const LIBRARY_VERSION = "2.
|
|
4
|
+
export declare const LIBRARY_VERSION = "2.4.1";
|
|
5
5
|
/**
|
|
6
6
|
* AdCP specification version this library is compatible with
|
|
7
7
|
*/
|
|
@@ -10,10 +10,10 @@ export declare const ADCP_VERSION = "2.2.0";
|
|
|
10
10
|
* Full version information
|
|
11
11
|
*/
|
|
12
12
|
export declare const VERSION_INFO: {
|
|
13
|
-
readonly library: "2.
|
|
13
|
+
readonly library: "2.4.1";
|
|
14
14
|
readonly adcp: "2.2.0";
|
|
15
15
|
readonly compatible: true;
|
|
16
|
-
readonly generatedAt: "2025-10-
|
|
16
|
+
readonly generatedAt: "2025-10-24T15:01:49.323Z";
|
|
17
17
|
};
|
|
18
18
|
/**
|
|
19
19
|
* Check if this library version is compatible with a given AdCP version
|
package/dist/lib/version.js
CHANGED
|
@@ -7,7 +7,7 @@ exports.isCompatibleWith = isCompatibleWith;
|
|
|
7
7
|
/**
|
|
8
8
|
* AdCP client library version
|
|
9
9
|
*/
|
|
10
|
-
exports.LIBRARY_VERSION = '2.
|
|
10
|
+
exports.LIBRARY_VERSION = '2.4.1';
|
|
11
11
|
/**
|
|
12
12
|
* AdCP specification version this library is compatible with
|
|
13
13
|
*/
|
|
@@ -16,10 +16,10 @@ exports.ADCP_VERSION = '2.2.0';
|
|
|
16
16
|
* Full version information
|
|
17
17
|
*/
|
|
18
18
|
exports.VERSION_INFO = {
|
|
19
|
-
library: '2.
|
|
19
|
+
library: '2.4.1',
|
|
20
20
|
adcp: '2.2.0',
|
|
21
21
|
compatible: true,
|
|
22
|
-
generatedAt: '2025-10-
|
|
22
|
+
generatedAt: '2025-10-24T15:01:49.323Z'
|
|
23
23
|
};
|
|
24
24
|
/**
|
|
25
25
|
* Check if this library version is compatible with a given AdCP version
|
package/package.json
CHANGED