@google/adk 2.3.0 → 2.4.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/dist/cjs/agents/agent_engine_client.js +172 -0
- package/dist/cjs/agents/base_agent.js +20 -4
- package/dist/cjs/agents/functions.js +28 -0
- package/dist/cjs/agents/instructions.js +2 -1
- package/dist/cjs/agents/llm_agent.js +19 -6
- package/dist/cjs/agents/processors/basic_llm_request_processor.js +1 -1
- package/dist/cjs/agents/processors/code_execution_request_processor.js +8 -0
- package/dist/cjs/agents/processors/content_processor_utils.js +38 -10
- package/dist/cjs/agents/processors/content_request_processor.js +34 -2
- package/dist/cjs/agents/processors/instructions_llm_request_processor.js +1 -1
- package/dist/cjs/agents/processors/nl_planning_processor.js +12 -3
- package/dist/cjs/cli/utils/logs.js +6 -6
- package/dist/cjs/code_executors/container_code_executor.js +27 -16
- package/dist/cjs/code_executors/unsafe_local_code_executor.js +6 -1
- package/dist/cjs/common.js +9 -20
- package/dist/cjs/errors/input_validation_error.js +3 -2
- package/dist/cjs/index.js +9 -2
- package/dist/cjs/plugins/base_plugin.js +13 -23
- package/dist/cjs/sessions/base_session_service.js +14 -8
- package/dist/cjs/sessions/database_session_service.js +50 -28
- package/dist/cjs/sessions/stale_session_error.js +59 -0
- package/dist/cjs/skills/loader.js +52 -18
- package/dist/cjs/telemetry/setup.js +0 -1
- package/dist/cjs/telemetry/tracing.js +53 -10
- package/dist/cjs/tools/apihub_tool/apihub_toolset.js +18 -23
- package/dist/cjs/tools/application_integration_tool/application_integration_toolset.js +120 -42
- package/dist/cjs/tools/application_integration_tool/clients/connections_client.js +163 -95
- package/dist/cjs/tools/application_integration_tool/clients/integration_client.js +13 -9
- package/dist/cjs/tools/application_integration_tool/integration_connector_tool.js +184 -0
- package/dist/cjs/tools/google_api_tool/google_api_tool.js +4 -1
- package/dist/cjs/tools/google_api_tool/google_api_toolset.js +173 -0
- package/dist/cjs/tools/google_api_tool/google_api_toolsets.js +124 -0
- package/dist/cjs/tools/google_api_tool/googleapi_to_openapi_converter.js +2 -2
- package/dist/cjs/tools/google_api_tool/index.js +20 -23
- package/dist/cjs/tools/load_artifacts_tool.js +12 -6
- package/dist/cjs/tools/load_memory_tool.js +12 -10
- package/dist/cjs/tools/mcp/mcp_toolset.js +1 -14
- package/dist/cjs/tools/openapi_tool/auth/credential_exchangers/oauth2_exchanger.js +2 -2
- package/dist/cjs/tools/openapi_tool/openapi_spec_parser/openapi_spec_parser.js +20 -6
- package/dist/cjs/tools/openapi_tool/openapi_spec_parser/operation_parser.js +17 -6
- package/dist/cjs/tools/openapi_tool/openapi_toolset.js +7 -13
- package/dist/cjs/tools/openapi_tool/rest_api_tool.js +17 -1
- package/dist/cjs/tools/toolbox_toolset.js +174 -0
- package/dist/cjs/tools/webmcp/webmcp_toolset.js +1 -14
- package/dist/cjs/utils/client_labels.js +19 -2
- package/dist/cjs/utils/failover_utils.js +1 -1
- package/dist/cjs/utils/gemini_schema_util.js +24 -6
- package/dist/cjs/utils/logger_node.js +4 -0
- package/dist/cjs/utils/output_schema_utils.js +5 -2
- package/dist/cjs/utils/task.js +1 -1
- package/dist/cjs/version.js +1 -1
- package/dist/esm/agents/agent_engine_client.js +144 -0
- package/dist/esm/agents/base_agent.js +20 -4
- package/dist/esm/agents/functions.js +28 -0
- package/dist/esm/agents/instructions.js +2 -1
- package/dist/esm/agents/llm_agent.js +19 -6
- package/dist/esm/agents/processors/basic_llm_request_processor.js +1 -1
- package/dist/esm/agents/processors/code_execution_request_processor.js +8 -0
- package/dist/esm/agents/processors/content_processor_utils.js +38 -10
- package/dist/esm/agents/processors/content_request_processor.js +34 -2
- package/dist/esm/agents/processors/instructions_llm_request_processor.js +1 -1
- package/dist/esm/agents/processors/nl_planning_processor.js +12 -3
- package/dist/esm/cli/utils/logs.js +4 -4
- package/dist/esm/code_executors/container_code_executor.js +27 -16
- package/dist/esm/code_executors/unsafe_local_code_executor.js +6 -1
- package/dist/esm/common.js +10 -13
- package/dist/esm/errors/input_validation_error.js +3 -2
- package/dist/esm/index.js +17 -3
- package/dist/esm/plugins/base_plugin.js +13 -23
- package/dist/esm/sessions/base_session_service.js +12 -7
- package/dist/esm/sessions/database_session_service.js +49 -28
- package/dist/esm/sessions/stale_session_error.js +31 -0
- package/dist/esm/skills/loader.js +51 -17
- package/dist/esm/telemetry/setup.js +1 -2
- package/dist/esm/telemetry/tracing.js +57 -11
- package/dist/esm/tools/apihub_tool/apihub_toolset.js +17 -22
- package/dist/esm/tools/application_integration_tool/application_integration_toolset.js +124 -42
- package/dist/esm/tools/application_integration_tool/clients/connections_client.js +163 -95
- package/dist/esm/tools/application_integration_tool/clients/integration_client.js +13 -9
- package/dist/esm/tools/application_integration_tool/integration_connector_tool.js +158 -0
- package/dist/esm/tools/google_api_tool/google_api_tool.js +4 -1
- package/dist/esm/tools/google_api_tool/google_api_toolset.js +146 -0
- package/dist/esm/tools/google_api_tool/google_api_toolsets.js +94 -0
- package/dist/esm/tools/google_api_tool/googleapi_to_openapi_converter.js +2 -2
- package/dist/esm/tools/google_api_tool/index.js +18 -20
- package/dist/esm/tools/load_artifacts_tool.js +10 -5
- package/dist/esm/tools/load_memory_tool.js +12 -10
- package/dist/esm/tools/mcp/mcp_toolset.js +1 -14
- package/dist/esm/tools/openapi_tool/auth/credential_exchangers/oauth2_exchanger.js +2 -2
- package/dist/esm/tools/openapi_tool/openapi_spec_parser/openapi_spec_parser.js +20 -6
- package/dist/esm/tools/openapi_tool/openapi_spec_parser/operation_parser.js +17 -6
- package/dist/esm/tools/openapi_tool/openapi_toolset.js +6 -12
- package/dist/esm/tools/openapi_tool/rest_api_tool.js +17 -1
- package/dist/esm/tools/toolbox_toolset.js +148 -0
- package/dist/esm/tools/webmcp/webmcp_toolset.js +1 -14
- package/dist/esm/utils/client_labels.js +19 -2
- package/dist/esm/utils/failover_utils.js +1 -1
- package/dist/esm/utils/gemini_schema_util.js +23 -6
- package/dist/esm/utils/logger_node.js +4 -0
- package/dist/esm/utils/output_schema_utils.js +5 -2
- package/dist/esm/utils/task.js +1 -1
- package/dist/esm/version.js +1 -1
- package/dist/types/agents/agent_engine_client.d.ts +37 -0
- package/dist/types/agents/base_agent.d.ts +12 -0
- package/dist/types/agents/llm_agent.d.ts +5 -1
- package/dist/types/agents/processors/content_processor_utils.d.ts +4 -2
- package/dist/types/agents/processors/nl_planning_processor.d.ts +2 -1
- package/dist/types/cli/utils/logs.d.ts +1 -1
- package/dist/types/code_executors/container_code_executor.d.ts +17 -5
- package/dist/types/common.d.ts +5 -9
- package/dist/types/errors/input_validation_error.d.ts +2 -1
- package/dist/types/index.d.ts +4 -2
- package/dist/types/plugins/base_plugin.d.ts +0 -10
- package/dist/types/sessions/base_session_service.d.ts +5 -0
- package/dist/types/sessions/database_session_service.d.ts +17 -1
- package/dist/types/sessions/stale_session_error.d.ts +21 -0
- package/dist/types/skills/loader.d.ts +3 -2
- package/dist/types/telemetry/tracing.d.ts +17 -3
- package/dist/types/tools/apihub_tool/apihub_toolset.d.ts +14 -21
- package/dist/types/tools/application_integration_tool/application_integration_toolset.d.ts +32 -9
- package/dist/types/tools/application_integration_tool/clients/connections_client.d.ts +22 -8
- package/dist/types/tools/application_integration_tool/clients/integration_client.d.ts +3 -3
- package/dist/types/tools/application_integration_tool/integration_connector_tool.d.ts +70 -0
- package/dist/types/tools/base_toolset.d.ts +6 -5
- package/dist/types/tools/google_api_tool/google_api_tool.d.ts +10 -3
- package/dist/types/tools/google_api_tool/google_api_toolset.d.ts +55 -0
- package/dist/types/tools/google_api_tool/google_api_toolsets.d.ts +48 -0
- package/dist/types/tools/google_api_tool/googleapi_to_openapi_converter.d.ts +5 -4
- package/dist/types/tools/google_api_tool/index.d.ts +4 -5
- package/dist/types/tools/load_artifacts_tool.d.ts +14 -1
- package/dist/types/tools/load_memory_tool.d.ts +23 -1
- package/dist/types/tools/openapi_tool/openapi_spec_parser/openapi_spec_parser.d.ts +12 -0
- package/dist/types/tools/openapi_tool/openapi_spec_parser/operation_parser.d.ts +8 -0
- package/dist/types/tools/openapi_tool/openapi_toolset.d.ts +5 -0
- package/dist/types/tools/openapi_tool/rest_api_tool.d.ts +10 -0
- package/dist/types/tools/toolbox_toolset.d.ts +159 -0
- package/dist/types/utils/client_labels.d.ts +2 -1
- package/dist/types/utils/gemini_schema_util.d.ts +8 -0
- package/dist/types/utils/output_schema_utils.d.ts +3 -2
- package/dist/types/utils/simple_zod_to_json.d.ts +1 -2
- package/dist/types/version.d.ts +1 -1
- package/dist/web/index_web.js +74 -66
- package/dist/web/index_web.js.map +4 -4
- package/package.json +34 -27
- package/dist/cjs/agents/remote_agent.js +0 -187
- package/dist/cjs/tools/crewai_tool.js +0 -132
- package/dist/cjs/tools/google_api_tool/google_api_tool_set.js +0 -226
- package/dist/cjs/tools/google_api_tool/google_api_tool_sets.js +0 -58
- package/dist/cjs/tools/langchain_tool.js +0 -172
- package/dist/cjs/tools/toolbox_tool.js +0 -108
- package/dist/esm/agents/remote_agent.js +0 -164
- package/dist/esm/tools/crewai_tool.js +0 -107
- package/dist/esm/tools/google_api_tool/google_api_tool_set.js +0 -188
- package/dist/esm/tools/google_api_tool/google_api_tool_sets.js +0 -24
- package/dist/esm/tools/langchain_tool.js +0 -148
- package/dist/esm/tools/toolbox_tool.js +0 -80
- package/dist/types/agents/remote_agent.d.ts +0 -68
- package/dist/types/tools/crewai_tool.d.ts +0 -85
- package/dist/types/tools/google_api_tool/google_api_tool_set.d.ts +0 -78
- package/dist/types/tools/google_api_tool/google_api_tool_sets.d.ts +0 -33
- package/dist/types/tools/langchain_tool.d.ts +0 -103
- package/dist/types/tools/toolbox_tool.d.ts +0 -73
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@google/adk",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.4.0",
|
|
4
4
|
"description": "Google ADK JS",
|
|
5
5
|
"author": "Google",
|
|
6
6
|
"license": "Apache-2.0",
|
|
@@ -37,6 +37,12 @@
|
|
|
37
37
|
"require": "./dist/cjs/a2a/index.js",
|
|
38
38
|
"default": "./dist/esm/a2a/index.js"
|
|
39
39
|
},
|
|
40
|
+
"./agents/agent-engine": {
|
|
41
|
+
"types": "./dist/types/agents/agent_engine_client.d.ts",
|
|
42
|
+
"import": "./dist/esm/agents/agent_engine_client.js",
|
|
43
|
+
"require": "./dist/cjs/agents/agent_engine_client.js",
|
|
44
|
+
"default": "./dist/esm/agents/agent_engine_client.js"
|
|
45
|
+
},
|
|
40
46
|
"./artifacts/gcs": {
|
|
41
47
|
"types": "./dist/types/artifacts/gcs_artifact_service.d.ts",
|
|
42
48
|
"import": "./dist/esm/artifacts/gcs_artifact_service.js",
|
|
@@ -83,41 +89,42 @@
|
|
|
83
89
|
},
|
|
84
90
|
"dependencies": {
|
|
85
91
|
"@a2a-js/sdk": "^0.3.10",
|
|
92
|
+
"@google-cloud/aiplatform": "^6.10.0",
|
|
86
93
|
"@google-cloud/vertexai": "^1.12.0",
|
|
87
94
|
"@google/genai": "^2.29.1",
|
|
88
|
-
"@mikro-orm/core": "^7.2.
|
|
89
|
-
"@opentelemetry/api": "^1.9.
|
|
90
|
-
"@opentelemetry/api-logs": "^0.
|
|
91
|
-
"@opentelemetry/exporter-logs-otlp-http": "^0.
|
|
92
|
-
"@opentelemetry/exporter-metrics-otlp-http": "^0.
|
|
93
|
-
"@opentelemetry/exporter-trace-otlp-http": "^0.
|
|
94
|
-
"@opentelemetry/resource-detector-gcp": "^0.
|
|
95
|
-
"@opentelemetry/resources": "^2.
|
|
96
|
-
"@opentelemetry/sdk-logs": "^0.
|
|
97
|
-
"@opentelemetry/sdk-metrics": "^2.
|
|
98
|
-
"@opentelemetry/sdk-trace-base": "^2.
|
|
99
|
-
"@opentelemetry/sdk-trace-node": "^2.
|
|
100
|
-
"@types/dockerode": "^4.0.
|
|
95
|
+
"@mikro-orm/core": "^7.2.5",
|
|
96
|
+
"@opentelemetry/api": "^1.9.1",
|
|
97
|
+
"@opentelemetry/api-logs": "^0.223.0",
|
|
98
|
+
"@opentelemetry/exporter-logs-otlp-http": "^0.223.0",
|
|
99
|
+
"@opentelemetry/exporter-metrics-otlp-http": "^0.223.0",
|
|
100
|
+
"@opentelemetry/exporter-trace-otlp-http": "^0.223.0",
|
|
101
|
+
"@opentelemetry/resource-detector-gcp": "^0.58.0",
|
|
102
|
+
"@opentelemetry/resources": "^2.12.0",
|
|
103
|
+
"@opentelemetry/sdk-logs": "^0.223.0",
|
|
104
|
+
"@opentelemetry/sdk-metrics": "^2.12.0",
|
|
105
|
+
"@opentelemetry/sdk-trace-base": "^2.12.0",
|
|
106
|
+
"@opentelemetry/sdk-trace-node": "^2.12.0",
|
|
107
|
+
"@types/dockerode": "^4.0.2",
|
|
101
108
|
"adm-zip": "^0.6.1",
|
|
102
109
|
"google-auth-library": "^10.3.0",
|
|
103
|
-
"js-yaml": "^4.
|
|
110
|
+
"js-yaml": "^5.4.3",
|
|
104
111
|
"jsonpath-plus": "^10.4.0",
|
|
105
112
|
"lodash-es": "^4.18.1",
|
|
106
113
|
"winston": "^3.19.0",
|
|
107
|
-
"zod": "^4.
|
|
114
|
+
"zod": "^4.6.7",
|
|
108
115
|
"zod-to-json-schema": "^3.25.1"
|
|
109
116
|
},
|
|
110
117
|
"optionalDependencies": {
|
|
111
118
|
"dockerode": "^5.0.1"
|
|
112
119
|
},
|
|
113
120
|
"devDependencies": {
|
|
114
|
-
"@google-cloud/opentelemetry-cloud-monitoring-exporter": "^0.
|
|
121
|
+
"@google-cloud/opentelemetry-cloud-monitoring-exporter": "^0.22.0",
|
|
115
122
|
"@google-cloud/opentelemetry-cloud-trace-exporter": "^3.0.0",
|
|
116
|
-
"@google-cloud/secret-manager": "^7.
|
|
123
|
+
"@google-cloud/secret-manager": "^7.2.0",
|
|
117
124
|
"@google-cloud/storage": "^7.17.1",
|
|
118
|
-
"@mikro-orm/sqlite": "^7.2.
|
|
125
|
+
"@mikro-orm/sqlite": "^7.2.5",
|
|
119
126
|
"@modelcontextprotocol/sdk": "^1.26.0",
|
|
120
|
-
"@opentelemetry/context-async-hooks": "^2.
|
|
127
|
+
"@opentelemetry/context-async-hooks": "^2.12.0",
|
|
121
128
|
"@types/adm-zip": "^0.5.8",
|
|
122
129
|
"@types/express": "^4.17.25",
|
|
123
130
|
"@types/lodash-es": "^4.17.12",
|
|
@@ -125,15 +132,15 @@
|
|
|
125
132
|
"openapi-types": "^12.1.3"
|
|
126
133
|
},
|
|
127
134
|
"peerDependencies": {
|
|
128
|
-
"@google-cloud/opentelemetry-cloud-monitoring-exporter": "^0.
|
|
135
|
+
"@google-cloud/opentelemetry-cloud-monitoring-exporter": "^0.22.0",
|
|
129
136
|
"@google-cloud/opentelemetry-cloud-trace-exporter": "^3.0.0",
|
|
130
|
-
"@google-cloud/secret-manager": "^7.
|
|
137
|
+
"@google-cloud/secret-manager": "^7.2.0",
|
|
131
138
|
"@google-cloud/storage": "^7.17.1",
|
|
132
|
-
"@mikro-orm/mariadb": "^7.2.
|
|
133
|
-
"@mikro-orm/mssql": "^7.2.
|
|
134
|
-
"@mikro-orm/mysql": "^7.2.
|
|
135
|
-
"@mikro-orm/postgresql": "^7.2.
|
|
136
|
-
"@mikro-orm/sqlite": "^7.2.
|
|
139
|
+
"@mikro-orm/mariadb": "^7.2.5",
|
|
140
|
+
"@mikro-orm/mssql": "^7.2.5",
|
|
141
|
+
"@mikro-orm/mysql": "^7.2.5",
|
|
142
|
+
"@mikro-orm/postgresql": "^7.2.5",
|
|
143
|
+
"@mikro-orm/sqlite": "^7.2.5",
|
|
137
144
|
"@modelcontextprotocol/sdk": "^1.26.0",
|
|
138
145
|
"express": "^4.22.1 || ^5.1.0"
|
|
139
146
|
},
|
|
@@ -1,187 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @license
|
|
3
|
-
* Copyright 2026 Google LLC
|
|
4
|
-
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
-
*/
|
|
6
|
-
|
|
7
|
-
"use strict";
|
|
8
|
-
var __defProp = Object.defineProperty;
|
|
9
|
-
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
10
|
-
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
11
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
12
|
-
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
|
|
13
|
-
var __export = (target, all) => {
|
|
14
|
-
for (var name in all)
|
|
15
|
-
__defProp(target, name, { get: all[name], enumerable: true });
|
|
16
|
-
};
|
|
17
|
-
var __copyProps = (to, from, except, desc) => {
|
|
18
|
-
if (from && typeof from === "object" || typeof from === "function") {
|
|
19
|
-
for (let key of __getOwnPropNames(from))
|
|
20
|
-
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
21
|
-
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
22
|
-
}
|
|
23
|
-
return to;
|
|
24
|
-
};
|
|
25
|
-
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
26
|
-
var __decorateClass = (decorators, target, key, kind) => {
|
|
27
|
-
var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc(target, key) : target;
|
|
28
|
-
for (var i = decorators.length - 1, decorator; i >= 0; i--)
|
|
29
|
-
if (decorator = decorators[i])
|
|
30
|
-
result = (kind ? decorator(target, key, result) : decorator(result)) || result;
|
|
31
|
-
if (kind && result) __defProp(target, key, result);
|
|
32
|
-
return result;
|
|
33
|
-
};
|
|
34
|
-
var remote_agent_exports = {};
|
|
35
|
-
__export(remote_agent_exports, {
|
|
36
|
-
RemoteAgent: () => RemoteAgent,
|
|
37
|
-
isRemoteAgent: () => isRemoteAgent
|
|
38
|
-
});
|
|
39
|
-
module.exports = __toCommonJS(remote_agent_exports);
|
|
40
|
-
var import_event = require("../events/event.js");
|
|
41
|
-
var import_experimental = require("../utils/experimental.js");
|
|
42
|
-
var import_base_agent = require("./base_agent.js");
|
|
43
|
-
/**
|
|
44
|
-
* @license
|
|
45
|
-
* Copyright 2026 Google LLC
|
|
46
|
-
* SPDX-License-Identifier: Apache-2.0
|
|
47
|
-
*/
|
|
48
|
-
var _a, _b;
|
|
49
|
-
const DEFAULT_REMOTE_AGENT_TIMEOUT_MS = 12e4;
|
|
50
|
-
const MILLIS_PER_SECOND = 1e3;
|
|
51
|
-
const SESSION_PRESERVE_KEYS = /* @__PURE__ */ new Set(["state", "events"]);
|
|
52
|
-
const EVENT_PRESERVE_KEYS = /* @__PURE__ */ new Set([
|
|
53
|
-
"actions.state_delta",
|
|
54
|
-
"actions.artifact_delta",
|
|
55
|
-
"actions.requested_auth_configs",
|
|
56
|
-
"actions.requested_tool_confirmations",
|
|
57
|
-
"actions.custom_metadata",
|
|
58
|
-
"custom_metadata",
|
|
59
|
-
"content.parts.function_call.args",
|
|
60
|
-
"content.parts.function_response.response",
|
|
61
|
-
"output",
|
|
62
|
-
"route",
|
|
63
|
-
"actions.agent_state"
|
|
64
|
-
]);
|
|
65
|
-
const REMOTE_AGENT_SIGNATURE_SYMBOL = /* @__PURE__ */ Symbol.for("google.adk.remoteAgent");
|
|
66
|
-
function isRemoteAgent(obj) {
|
|
67
|
-
return typeof obj === "object" && obj !== null && REMOTE_AGENT_SIGNATURE_SYMBOL in obj && obj[REMOTE_AGENT_SIGNATURE_SYMBOL] === true;
|
|
68
|
-
}
|
|
69
|
-
__name(isRemoteAgent, "isRemoteAgent");
|
|
70
|
-
function isRecord(value) {
|
|
71
|
-
return typeof value === "object" && value !== null && !Array.isArray(value);
|
|
72
|
-
}
|
|
73
|
-
__name(isRecord, "isRecord");
|
|
74
|
-
function stripNullish(value, preserveKeys, parentKey = "") {
|
|
75
|
-
if (Array.isArray(value)) {
|
|
76
|
-
return value.map((item) => stripNullish(item, preserveKeys, parentKey));
|
|
77
|
-
}
|
|
78
|
-
if (value !== null && typeof value === "object") {
|
|
79
|
-
return stripNullishRecord(value, preserveKeys, parentKey);
|
|
80
|
-
}
|
|
81
|
-
return value;
|
|
82
|
-
}
|
|
83
|
-
__name(stripNullish, "stripNullish");
|
|
84
|
-
function stripNullishRecord(record, preserveKeys, parentKey = "") {
|
|
85
|
-
const result = {};
|
|
86
|
-
for (const [key, entryValue] of Object.entries(record)) {
|
|
87
|
-
if (entryValue === void 0 || entryValue === null) {
|
|
88
|
-
continue;
|
|
89
|
-
}
|
|
90
|
-
const fullPath = parentKey !== "" ? `${parentKey}.${key}` : key;
|
|
91
|
-
result[key] = preserveKeys.has(fullPath) ? entryValue : stripNullish(entryValue, preserveKeys, fullPath);
|
|
92
|
-
}
|
|
93
|
-
return result;
|
|
94
|
-
}
|
|
95
|
-
__name(stripNullishRecord, "stripNullishRecord");
|
|
96
|
-
function serializeEventToSnakeCase(event) {
|
|
97
|
-
const snakeEvent = (0, import_event.transformToSnakeCaseEvent)(event);
|
|
98
|
-
snakeEvent["timestamp"] = event.timestamp / MILLIS_PER_SECOND;
|
|
99
|
-
return stripNullishRecord(snakeEvent, EVENT_PRESERVE_KEYS);
|
|
100
|
-
}
|
|
101
|
-
__name(serializeEventToSnakeCase, "serializeEventToSnakeCase");
|
|
102
|
-
function serializeSessionToSnakeCase(session) {
|
|
103
|
-
return stripNullishRecord(
|
|
104
|
-
{
|
|
105
|
-
id: session.id,
|
|
106
|
-
app_name: session.appName,
|
|
107
|
-
user_id: session.userId,
|
|
108
|
-
state: session.state,
|
|
109
|
-
events: session.events.map((event) => serializeEventToSnakeCase(event)),
|
|
110
|
-
last_update_time: session.lastUpdateTime / MILLIS_PER_SECOND
|
|
111
|
-
},
|
|
112
|
-
SESSION_PRESERVE_KEYS
|
|
113
|
-
);
|
|
114
|
-
}
|
|
115
|
-
__name(serializeSessionToSnakeCase, "serializeSessionToSnakeCase");
|
|
116
|
-
let RemoteAgent = class extends (_b = import_base_agent.BaseAgent, _a = REMOTE_AGENT_SIGNATURE_SYMBOL, _b) {
|
|
117
|
-
constructor(config) {
|
|
118
|
-
var _a2, _b2;
|
|
119
|
-
const runtimeSubAgents = config.subAgents;
|
|
120
|
-
if (Array.isArray(runtimeSubAgents) ? runtimeSubAgents.length > 0 : Boolean(runtimeSubAgents)) {
|
|
121
|
-
throw new Error("subAgents is disabled in RemoteAgent.");
|
|
122
|
-
}
|
|
123
|
-
super({ ...config, subAgents: [] });
|
|
124
|
-
this[_a] = true;
|
|
125
|
-
this.url = config.url;
|
|
126
|
-
this.timeoutMs = (_a2 = config.timeoutMs) != null ? _a2 : DEFAULT_REMOTE_AGENT_TIMEOUT_MS;
|
|
127
|
-
this.fetchImpl = (_b2 = config.fetchImpl) != null ? _b2 : globalThis.fetch;
|
|
128
|
-
}
|
|
129
|
-
async *runAsyncImpl(ctx) {
|
|
130
|
-
var _a2;
|
|
131
|
-
const data = {
|
|
132
|
-
invocation_id: ctx.invocationId,
|
|
133
|
-
session: serializeSessionToSnakeCase(ctx.session)
|
|
134
|
-
};
|
|
135
|
-
const timeoutSignal = AbortSignal.timeout(this.timeoutMs);
|
|
136
|
-
const signal = ctx.abortSignal ? AbortSignal.any([ctx.abortSignal, timeoutSignal]) : timeoutSignal;
|
|
137
|
-
const response = await this.fetchImpl(this.url, {
|
|
138
|
-
method: "POST",
|
|
139
|
-
headers: { "Content-Type": "application/json" },
|
|
140
|
-
body: JSON.stringify(data),
|
|
141
|
-
signal
|
|
142
|
-
});
|
|
143
|
-
if (response.status >= 400) {
|
|
144
|
-
throw new Error(
|
|
145
|
-
`RemoteAgent request to '${this.url}' failed with HTTP status ${response.status}.`
|
|
146
|
-
);
|
|
147
|
-
}
|
|
148
|
-
const rawEvents = await response.json();
|
|
149
|
-
if (!Array.isArray(rawEvents)) {
|
|
150
|
-
throw new Error(
|
|
151
|
-
`RemoteAgent expected a JSON array of events from '${this.url}'.`
|
|
152
|
-
);
|
|
153
|
-
}
|
|
154
|
-
for (const rawEvent of rawEvents) {
|
|
155
|
-
if (!isRecord(rawEvent)) {
|
|
156
|
-
throw new Error(
|
|
157
|
-
`RemoteAgent expected each item in the response from '${this.url}' to be a JSON event object.`
|
|
158
|
-
);
|
|
159
|
-
}
|
|
160
|
-
if ((_a2 = ctx.abortSignal) == null ? void 0 : _a2.aborted) {
|
|
161
|
-
return;
|
|
162
|
-
}
|
|
163
|
-
const camelEvent = (0, import_event.transformToCamelCaseEvent)(rawEvent);
|
|
164
|
-
const invocationId = camelEvent.invocationId !== void 0 && camelEvent.invocationId !== "" ? camelEvent.invocationId : ctx.invocationId;
|
|
165
|
-
const timestamp = typeof camelEvent.timestamp === "number" ? camelEvent.timestamp * MILLIS_PER_SECOND : void 0;
|
|
166
|
-
yield (0, import_event.createEvent)({
|
|
167
|
-
...camelEvent,
|
|
168
|
-
invocationId,
|
|
169
|
-
timestamp,
|
|
170
|
-
author: this.name
|
|
171
|
-
});
|
|
172
|
-
}
|
|
173
|
-
}
|
|
174
|
-
async *runLiveImpl(_ctx) {
|
|
175
|
-
yield* [];
|
|
176
|
-
throw new Error("This is not supported yet for RemoteAgent.");
|
|
177
|
-
}
|
|
178
|
-
};
|
|
179
|
-
__name(RemoteAgent, "RemoteAgent");
|
|
180
|
-
RemoteAgent = __decorateClass([
|
|
181
|
-
import_experimental.experimental
|
|
182
|
-
], RemoteAgent);
|
|
183
|
-
// Annotate the CommonJS export names for ESM import in node:
|
|
184
|
-
0 && (module.exports = {
|
|
185
|
-
RemoteAgent,
|
|
186
|
-
isRemoteAgent
|
|
187
|
-
});
|
|
@@ -1,132 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @license
|
|
3
|
-
* Copyright 2026 Google LLC
|
|
4
|
-
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
-
*/
|
|
6
|
-
|
|
7
|
-
"use strict";
|
|
8
|
-
var __defProp = Object.defineProperty;
|
|
9
|
-
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
10
|
-
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
11
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
12
|
-
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
|
|
13
|
-
var __export = (target, all) => {
|
|
14
|
-
for (var name in all)
|
|
15
|
-
__defProp(target, name, { get: all[name], enumerable: true });
|
|
16
|
-
};
|
|
17
|
-
var __copyProps = (to, from, except, desc) => {
|
|
18
|
-
if (from && typeof from === "object" || typeof from === "function") {
|
|
19
|
-
for (let key of __getOwnPropNames(from))
|
|
20
|
-
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
21
|
-
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
22
|
-
}
|
|
23
|
-
return to;
|
|
24
|
-
};
|
|
25
|
-
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
26
|
-
var crewai_tool_exports = {};
|
|
27
|
-
__export(crewai_tool_exports, {
|
|
28
|
-
CrewaiTool: () => CrewaiTool,
|
|
29
|
-
isCrewaiTool: () => isCrewaiTool
|
|
30
|
-
});
|
|
31
|
-
module.exports = __toCommonJS(crewai_tool_exports);
|
|
32
|
-
var import_schema = require("../utils/schema.js");
|
|
33
|
-
var import_simple_zod_to_json = require("../utils/simple_zod_to_json.js");
|
|
34
|
-
var import_variant_utils = require("../utils/variant_utils.js");
|
|
35
|
-
var import_function_tool = require("./function_tool.js");
|
|
36
|
-
/**
|
|
37
|
-
* @license
|
|
38
|
-
* Copyright 2026 Google LLC
|
|
39
|
-
* SPDX-License-Identifier: Apache-2.0
|
|
40
|
-
*/
|
|
41
|
-
var _a, _b;
|
|
42
|
-
const CREWAI_TOOL_SIGNATURE_SYMBOL = /* @__PURE__ */ Symbol.for("google.adk.crewaiTool");
|
|
43
|
-
function isCrewaiTool(obj) {
|
|
44
|
-
return typeof obj === "object" && obj !== null && CREWAI_TOOL_SIGNATURE_SYMBOL in obj && obj[CREWAI_TOOL_SIGNATURE_SYMBOL] === true;
|
|
45
|
-
}
|
|
46
|
-
__name(isCrewaiTool, "isCrewaiTool");
|
|
47
|
-
function isCrewaiToolConfig(value) {
|
|
48
|
-
return typeof value === "object" && value !== null && "tool" in value && typeof value.tool === "object" && value.tool !== null && typeof value.tool.run === "function";
|
|
49
|
-
}
|
|
50
|
-
__name(isCrewaiToolConfig, "isCrewaiToolConfig");
|
|
51
|
-
function normalizeCrewaiSchemaJson(argsSchema) {
|
|
52
|
-
if (!argsSchema) {
|
|
53
|
-
return {};
|
|
54
|
-
}
|
|
55
|
-
if (typeof argsSchema.modelJsonSchema === "function") {
|
|
56
|
-
return argsSchema.modelJsonSchema();
|
|
57
|
-
}
|
|
58
|
-
if (typeof argsSchema.jsonSchema === "function") {
|
|
59
|
-
return argsSchema.jsonSchema();
|
|
60
|
-
}
|
|
61
|
-
if ((0, import_simple_zod_to_json.isZodSchema)(argsSchema)) {
|
|
62
|
-
const raw = structuredClone((0, import_schema.toJsonSchema)(argsSchema));
|
|
63
|
-
const requiredSet = new Set(
|
|
64
|
-
Array.isArray(raw["required"]) ? raw["required"] : []
|
|
65
|
-
);
|
|
66
|
-
const properties = raw["properties"];
|
|
67
|
-
if (properties && typeof properties === "object") {
|
|
68
|
-
for (const [key, prop] of Object.entries(properties)) {
|
|
69
|
-
if (!prop || typeof prop !== "object") {
|
|
70
|
-
continue;
|
|
71
|
-
}
|
|
72
|
-
if (Array.isArray(prop["type"])) {
|
|
73
|
-
const types = prop["type"];
|
|
74
|
-
delete prop["type"];
|
|
75
|
-
prop["anyOf"] = types.map((t) => ({ type: t }));
|
|
76
|
-
} else if (!requiredSet.has(key) && !("default" in prop) && !("anyOf" in prop) && typeof prop["type"] === "string") {
|
|
77
|
-
const propType = prop["type"];
|
|
78
|
-
delete prop["type"];
|
|
79
|
-
prop["anyOf"] = [{ type: propType }, { type: "null" }];
|
|
80
|
-
}
|
|
81
|
-
}
|
|
82
|
-
}
|
|
83
|
-
return raw;
|
|
84
|
-
}
|
|
85
|
-
return structuredClone(argsSchema);
|
|
86
|
-
}
|
|
87
|
-
__name(normalizeCrewaiSchemaJson, "normalizeCrewaiSchemaJson");
|
|
88
|
-
const _CrewaiTool = class _CrewaiTool extends (_b = import_function_tool.FunctionTool, _a = CREWAI_TOOL_SIGNATURE_SYMBOL, _b) {
|
|
89
|
-
constructor(toolOrConfig, options) {
|
|
90
|
-
const config = isCrewaiToolConfig(toolOrConfig) ? toolOrConfig : {
|
|
91
|
-
tool: toolOrConfig,
|
|
92
|
-
name: options == null ? void 0 : options.name,
|
|
93
|
-
description: options == null ? void 0 : options.description
|
|
94
|
-
};
|
|
95
|
-
const resolvedName = config.name || (config.tool.name ? config.tool.name.replace(/ /g, "_").toLowerCase() : config.tool.run.name || "crewai_tool");
|
|
96
|
-
const resolvedDescription = config.description || config.tool.description || "";
|
|
97
|
-
super({
|
|
98
|
-
name: resolvedName,
|
|
99
|
-
description: resolvedDescription,
|
|
100
|
-
parameters: (0, import_simple_zod_to_json.isZodObject)(config.tool.argsSchema) ? config.tool.argsSchema : void 0,
|
|
101
|
-
execute: /* @__PURE__ */ __name(async (args, toolContext) => {
|
|
102
|
-
return await config.tool.run(
|
|
103
|
-
args != null ? args : {},
|
|
104
|
-
toolContext
|
|
105
|
-
);
|
|
106
|
-
}, "execute")
|
|
107
|
-
});
|
|
108
|
-
/** A unique symbol to identify ADK CrewaiTool class. */
|
|
109
|
-
this[_a] = true;
|
|
110
|
-
this.tool = config.tool;
|
|
111
|
-
}
|
|
112
|
-
/**
|
|
113
|
-
* Builds the `FunctionDeclaration` for the wrapped CrewAI tool.
|
|
114
|
-
*/
|
|
115
|
-
_getDeclaration() {
|
|
116
|
-
const schemaJson = normalizeCrewaiSchemaJson(this.tool.argsSchema);
|
|
117
|
-
return (0, import_function_tool.buildFunctionDeclarationForParamsForCrewai)(
|
|
118
|
-
this.apiVariant === import_variant_utils.GoogleLLMVariant.VERTEX_AI,
|
|
119
|
-
this.name,
|
|
120
|
-
this.description,
|
|
121
|
-
this.tool.run,
|
|
122
|
-
schemaJson
|
|
123
|
-
);
|
|
124
|
-
}
|
|
125
|
-
};
|
|
126
|
-
__name(_CrewaiTool, "CrewaiTool");
|
|
127
|
-
let CrewaiTool = _CrewaiTool;
|
|
128
|
-
// Annotate the CommonJS export names for ESM import in node:
|
|
129
|
-
0 && (module.exports = {
|
|
130
|
-
CrewaiTool,
|
|
131
|
-
isCrewaiTool
|
|
132
|
-
});
|
|
@@ -1,226 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @license
|
|
3
|
-
* Copyright 2026 Google LLC
|
|
4
|
-
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
-
*/
|
|
6
|
-
|
|
7
|
-
"use strict";
|
|
8
|
-
var __create = Object.create;
|
|
9
|
-
var __defProp = Object.defineProperty;
|
|
10
|
-
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
11
|
-
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
12
|
-
var __getProtoOf = Object.getPrototypeOf;
|
|
13
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
14
|
-
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
|
|
15
|
-
var __export = (target, all) => {
|
|
16
|
-
for (var name in all)
|
|
17
|
-
__defProp(target, name, { get: all[name], enumerable: true });
|
|
18
|
-
};
|
|
19
|
-
var __copyProps = (to, from, except, desc) => {
|
|
20
|
-
if (from && typeof from === "object" || typeof from === "function") {
|
|
21
|
-
for (let key of __getOwnPropNames(from))
|
|
22
|
-
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
23
|
-
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
24
|
-
}
|
|
25
|
-
return to;
|
|
26
|
-
};
|
|
27
|
-
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
28
|
-
// If the importer is in node compatibility mode or this is not an ESM
|
|
29
|
-
// file that has been converted to a CommonJS file using a Babel-
|
|
30
|
-
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
31
|
-
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
32
|
-
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
33
|
-
mod
|
|
34
|
-
));
|
|
35
|
-
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
36
|
-
var __decorateClass = (decorators, target, key, kind) => {
|
|
37
|
-
var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc(target, key) : target;
|
|
38
|
-
for (var i = decorators.length - 1, decorator; i >= 0; i--)
|
|
39
|
-
if (decorator = decorators[i])
|
|
40
|
-
result = (kind ? decorator(target, key, result) : decorator(result)) || result;
|
|
41
|
-
if (kind && result) __defProp(target, key, result);
|
|
42
|
-
return result;
|
|
43
|
-
};
|
|
44
|
-
var google_api_tool_set_exports = {};
|
|
45
|
-
__export(google_api_tool_set_exports, {
|
|
46
|
-
GoogleApiToolSet: () => GoogleApiToolSet,
|
|
47
|
-
createLazyGoogleApiToolSet: () => createLazyGoogleApiToolSet,
|
|
48
|
-
isGoogleApiToolSet: () => isGoogleApiToolSet
|
|
49
|
-
});
|
|
50
|
-
module.exports = __toCommonJS(google_api_tool_set_exports);
|
|
51
|
-
var fs = __toESM(require("node:fs"), 1);
|
|
52
|
-
var path = __toESM(require("node:path"), 1);
|
|
53
|
-
var import_experimental = require("../../utils/experimental.js");
|
|
54
|
-
var import_base_toolset = require("../base_toolset.js");
|
|
55
|
-
var import_openapi_toolset = require("../openapi_tool/openapi_toolset.js");
|
|
56
|
-
var import_google_api_tool = require("./google_api_tool.js");
|
|
57
|
-
var import_googleapi_to_openapi_converter = require("./googleapi_to_openapi_converter.js");
|
|
58
|
-
/**
|
|
59
|
-
* @license
|
|
60
|
-
* Copyright 2026 Google LLC
|
|
61
|
-
* SPDX-License-Identifier: Apache-2.0
|
|
62
|
-
*/
|
|
63
|
-
var _a, _b;
|
|
64
|
-
const GOOGLE_API_TOOL_SET_SIGNATURE_SYMBOL = /* @__PURE__ */ Symbol.for(
|
|
65
|
-
"google.adk.googleApiToolSet"
|
|
66
|
-
);
|
|
67
|
-
const GOOGLE_OIDC_AUTH_ENDPOINT = "https://accounts.google.com/o/oauth2/v2/auth";
|
|
68
|
-
const GOOGLE_OIDC_TOKEN_ENDPOINT = "https://oauth2.googleapis.com/token";
|
|
69
|
-
const GOOGLE_OIDC_USERINFO_ENDPOINT = "https://openidconnect.googleapis.com/v1/userinfo";
|
|
70
|
-
const GOOGLE_OIDC_REVOCATION_ENDPOINT = "https://oauth2.googleapis.com/revoke";
|
|
71
|
-
function isGoogleApiToolSet(obj) {
|
|
72
|
-
return typeof obj === "object" && obj !== null && GOOGLE_API_TOOL_SET_SIGNATURE_SYMBOL in obj && obj[GOOGLE_API_TOOL_SET_SIGNATURE_SYMBOL] === true;
|
|
73
|
-
}
|
|
74
|
-
__name(isGoogleApiToolSet, "isGoogleApiToolSet");
|
|
75
|
-
let GoogleApiToolSet = class extends (_b = import_base_toolset.BaseToolset, _a = GOOGLE_API_TOOL_SET_SIGNATURE_SYMBOL, _b) {
|
|
76
|
-
constructor(tools, options = {}) {
|
|
77
|
-
var _a2;
|
|
78
|
-
super((_a2 = options.toolFilter) != null ? _a2 : []);
|
|
79
|
-
this[_a] = true;
|
|
80
|
-
this.apiName = options.apiName;
|
|
81
|
-
this.apiVersion = options.apiVersion;
|
|
82
|
-
if (tools !== void 0) {
|
|
83
|
-
this.tools = tools.map(
|
|
84
|
-
(tool) => (0, import_google_api_tool.isGoogleApiTool)(tool) ? tool : new import_google_api_tool.GoogleApiTool(tool)
|
|
85
|
-
);
|
|
86
|
-
this.toolsLoaded = true;
|
|
87
|
-
} else {
|
|
88
|
-
this.tools = [];
|
|
89
|
-
this.toolsLoaded = false;
|
|
90
|
-
}
|
|
91
|
-
}
|
|
92
|
-
async ensureToolsLoaded() {
|
|
93
|
-
if (this.toolsLoaded || !this.apiName || !this.apiVersion) {
|
|
94
|
-
return;
|
|
95
|
-
}
|
|
96
|
-
if (!this.loadingPromise) {
|
|
97
|
-
const apiName = this.apiName;
|
|
98
|
-
const apiVersion = this.apiVersion;
|
|
99
|
-
this.loadingPromise = (async () => {
|
|
100
|
-
try {
|
|
101
|
-
const loaded = await GoogleApiToolSet.loadToolSet(
|
|
102
|
-
apiName,
|
|
103
|
-
apiVersion
|
|
104
|
-
);
|
|
105
|
-
this.tools = loaded.tools;
|
|
106
|
-
if (this.pendingAuth) {
|
|
107
|
-
for (const tool of this.tools) {
|
|
108
|
-
tool.configureAuth(
|
|
109
|
-
this.pendingAuth.clientId,
|
|
110
|
-
this.pendingAuth.clientSecret
|
|
111
|
-
);
|
|
112
|
-
}
|
|
113
|
-
}
|
|
114
|
-
this.toolsLoaded = true;
|
|
115
|
-
} finally {
|
|
116
|
-
this.loadingPromise = void 0;
|
|
117
|
-
}
|
|
118
|
-
})();
|
|
119
|
-
}
|
|
120
|
-
await this.loadingPromise;
|
|
121
|
-
}
|
|
122
|
-
async getTools(context) {
|
|
123
|
-
await this.ensureToolsLoaded();
|
|
124
|
-
return this.tools.filter(
|
|
125
|
-
(tool) => this.isToolSelected(tool, context)
|
|
126
|
-
);
|
|
127
|
-
}
|
|
128
|
-
async getTool(toolName) {
|
|
129
|
-
await this.ensureToolsLoaded();
|
|
130
|
-
return this.tools.find((tool) => tool.name === toolName);
|
|
131
|
-
}
|
|
132
|
-
configureAuth(clientId, clientSecret) {
|
|
133
|
-
this.pendingAuth = { clientId, clientSecret };
|
|
134
|
-
for (const tool of this.tools) {
|
|
135
|
-
tool.configureAuth(clientId, clientSecret);
|
|
136
|
-
}
|
|
137
|
-
}
|
|
138
|
-
async close() {
|
|
139
|
-
return Promise.resolve();
|
|
140
|
-
}
|
|
141
|
-
static loadToolSetWithOidcAuth(options = {}) {
|
|
142
|
-
var _a2;
|
|
143
|
-
let specStr;
|
|
144
|
-
if (options.specFile) {
|
|
145
|
-
const dir = (_a2 = options.callerDir) != null ? _a2 : process.cwd();
|
|
146
|
-
const yamlPath = path.isAbsolute(options.specFile) ? options.specFile : path.join(dir, options.specFile);
|
|
147
|
-
specStr = fs.readFileSync(yamlPath, "utf-8");
|
|
148
|
-
}
|
|
149
|
-
const authScheme = {
|
|
150
|
-
type: "openIdConnect",
|
|
151
|
-
openIdConnectUrl: "",
|
|
152
|
-
authorizationEndpoint: GOOGLE_OIDC_AUTH_ENDPOINT,
|
|
153
|
-
tokenEndpoint: GOOGLE_OIDC_TOKEN_ENDPOINT,
|
|
154
|
-
userinfoEndpoint: GOOGLE_OIDC_USERINFO_ENDPOINT,
|
|
155
|
-
revocationEndpoint: GOOGLE_OIDC_REVOCATION_ENDPOINT,
|
|
156
|
-
tokenEndpointAuthMethodsSupported: [
|
|
157
|
-
"client_secret_post",
|
|
158
|
-
"client_secret_basic"
|
|
159
|
-
],
|
|
160
|
-
grantTypesSupported: ["authorization_code"],
|
|
161
|
-
scopes: options.scopes
|
|
162
|
-
};
|
|
163
|
-
return new import_openapi_toolset.OpenAPIToolset({
|
|
164
|
-
specDict: options.specDict,
|
|
165
|
-
specStr,
|
|
166
|
-
specType: "yaml",
|
|
167
|
-
authScheme
|
|
168
|
-
});
|
|
169
|
-
}
|
|
170
|
-
static async loadToolSet(apiName, apiVersion) {
|
|
171
|
-
var _a2, _b2, _c, _d, _e;
|
|
172
|
-
const specDict = await new import_googleapi_to_openapi_converter.GoogleApiToOpenApiConverter(
|
|
173
|
-
apiName,
|
|
174
|
-
apiVersion
|
|
175
|
-
).convert();
|
|
176
|
-
const oauth2Scheme = (_b2 = (_a2 = specDict.components) == null ? void 0 : _a2.securitySchemes) == null ? void 0 : _b2["oauth2"];
|
|
177
|
-
const scopesMap = (_e = (_d = (_c = oauth2Scheme == null ? void 0 : oauth2Scheme.flows) == null ? void 0 : _c.authorizationCode) == null ? void 0 : _d.scopes) != null ? _e : {};
|
|
178
|
-
const firstScope = Object.keys(scopesMap)[0];
|
|
179
|
-
const scopes = firstScope ? [firstScope] : void 0;
|
|
180
|
-
const openapiToolset = this.loadToolSetWithOidcAuth({
|
|
181
|
-
specDict,
|
|
182
|
-
scopes
|
|
183
|
-
});
|
|
184
|
-
const tools = await openapiToolset.getTools();
|
|
185
|
-
return new this(tools, { apiName, apiVersion });
|
|
186
|
-
}
|
|
187
|
-
};
|
|
188
|
-
__name(GoogleApiToolSet, "GoogleApiToolSet");
|
|
189
|
-
__decorateClass([
|
|
190
|
-
import_experimental.experimental
|
|
191
|
-
], GoogleApiToolSet.prototype, "getTools", 1);
|
|
192
|
-
__decorateClass([
|
|
193
|
-
import_experimental.experimental
|
|
194
|
-
], GoogleApiToolSet.prototype, "getTool", 1);
|
|
195
|
-
__decorateClass([
|
|
196
|
-
import_experimental.experimental
|
|
197
|
-
], GoogleApiToolSet.prototype, "configureAuth", 1);
|
|
198
|
-
__decorateClass([
|
|
199
|
-
import_experimental.experimental
|
|
200
|
-
], GoogleApiToolSet.prototype, "close", 1);
|
|
201
|
-
__decorateClass([
|
|
202
|
-
import_experimental.experimental
|
|
203
|
-
], GoogleApiToolSet, "loadToolSetWithOidcAuth", 1);
|
|
204
|
-
__decorateClass([
|
|
205
|
-
import_experimental.experimental
|
|
206
|
-
], GoogleApiToolSet, "loadToolSet", 1);
|
|
207
|
-
GoogleApiToolSet = __decorateClass([
|
|
208
|
-
import_experimental.experimental
|
|
209
|
-
], GoogleApiToolSet);
|
|
210
|
-
function createLazyGoogleApiToolSet(apiName, apiVersion) {
|
|
211
|
-
const BaseConstructor = Object.getPrototypeOf(
|
|
212
|
-
GoogleApiToolSet
|
|
213
|
-
);
|
|
214
|
-
return Reflect.construct(
|
|
215
|
-
BaseConstructor,
|
|
216
|
-
[void 0, { apiName, apiVersion }],
|
|
217
|
-
GoogleApiToolSet
|
|
218
|
-
);
|
|
219
|
-
}
|
|
220
|
-
__name(createLazyGoogleApiToolSet, "createLazyGoogleApiToolSet");
|
|
221
|
-
// Annotate the CommonJS export names for ESM import in node:
|
|
222
|
-
0 && (module.exports = {
|
|
223
|
-
GoogleApiToolSet,
|
|
224
|
-
createLazyGoogleApiToolSet,
|
|
225
|
-
isGoogleApiToolSet
|
|
226
|
-
});
|