nitrostack 1.0.72 → 1.0.73
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/auth/api-key.js.map +1 -1
- package/dist/auth/client.js.map +1 -1
- package/dist/auth/index.d.ts +2 -1
- package/dist/auth/index.d.ts.map +1 -1
- package/dist/auth/index.js +3 -0
- package/dist/auth/index.js.map +1 -1
- package/dist/auth/middleware.d.ts +1 -1
- package/dist/auth/middleware.d.ts.map +1 -1
- package/dist/auth/middleware.js.map +1 -1
- package/dist/auth/secure-secret.d.ts +136 -0
- package/dist/auth/secure-secret.d.ts.map +1 -0
- package/dist/auth/secure-secret.js +182 -0
- package/dist/auth/secure-secret.js.map +1 -0
- package/dist/auth/server-metadata.d.ts.map +1 -1
- package/dist/auth/server-metadata.js.map +1 -1
- package/dist/auth/simple-jwt.d.ts +100 -14
- package/dist/auth/simple-jwt.d.ts.map +1 -1
- package/dist/auth/simple-jwt.js +19 -9
- package/dist/auth/simple-jwt.js.map +1 -1
- package/dist/auth/token-store.js +1 -1
- package/dist/auth/token-store.js.map +1 -1
- package/dist/auth/token-validation.js +1 -1
- package/dist/auth/token-validation.js.map +1 -1
- package/dist/cli/commands/build.js +1 -1
- package/dist/cli/commands/build.js.map +1 -1
- package/dist/cli/commands/generate-types.js +12 -12
- package/dist/cli/commands/generate-types.js.map +1 -1
- package/dist/cli/commands/generate.d.ts +8 -1
- package/dist/cli/commands/generate.d.ts.map +1 -1
- package/dist/cli/commands/generate.js +13 -12
- package/dist/cli/commands/generate.js.map +1 -1
- package/dist/cli/commands/init.js +1 -1
- package/dist/cli/commands/init.js.map +1 -1
- package/dist/cli/commands/upgrade.d.ts +10 -0
- package/dist/cli/commands/upgrade.d.ts.map +1 -0
- package/dist/cli/commands/upgrade.js +221 -0
- package/dist/cli/commands/upgrade.js.map +1 -0
- package/dist/cli/index.js +7 -0
- package/dist/cli/index.js.map +1 -1
- package/dist/core/app-decorator.d.ts +4 -3
- package/dist/core/app-decorator.d.ts.map +1 -1
- package/dist/core/app-decorator.js +67 -28
- package/dist/core/app-decorator.js.map +1 -1
- package/dist/core/builders.d.ts +19 -7
- package/dist/core/builders.d.ts.map +1 -1
- package/dist/core/builders.js +15 -8
- package/dist/core/builders.js.map +1 -1
- package/dist/core/component.d.ts +8 -8
- package/dist/core/component.d.ts.map +1 -1
- package/dist/core/component.js +3 -2
- package/dist/core/component.js.map +1 -1
- package/dist/core/config-module.d.ts +11 -4
- package/dist/core/config-module.d.ts.map +1 -1
- package/dist/core/config-module.js +1 -1
- package/dist/core/config-module.js.map +1 -1
- package/dist/core/decorators/cache.decorator.d.ts +9 -9
- package/dist/core/decorators/cache.decorator.d.ts.map +1 -1
- package/dist/core/decorators/cache.decorator.js +3 -3
- package/dist/core/decorators/cache.decorator.js.map +1 -1
- package/dist/core/decorators/health-check.decorator.d.ts +3 -3
- package/dist/core/decorators/health-check.decorator.d.ts.map +1 -1
- package/dist/core/decorators/health-check.decorator.js +2 -2
- package/dist/core/decorators/health-check.decorator.js.map +1 -1
- package/dist/core/decorators/rate-limit.decorator.d.ts +5 -4
- package/dist/core/decorators/rate-limit.decorator.d.ts.map +1 -1
- package/dist/core/decorators/rate-limit.decorator.js +3 -3
- package/dist/core/decorators/rate-limit.decorator.js.map +1 -1
- package/dist/core/decorators.d.ts +47 -29
- package/dist/core/decorators.d.ts.map +1 -1
- package/dist/core/decorators.js +9 -9
- package/dist/core/decorators.js.map +1 -1
- package/dist/core/di/container.d.ts +21 -4
- package/dist/core/di/container.d.ts.map +1 -1
- package/dist/core/di/container.js +11 -7
- package/dist/core/di/container.js.map +1 -1
- package/dist/core/di/injectable.decorator.d.ts +5 -3
- package/dist/core/di/injectable.decorator.d.ts.map +1 -1
- package/dist/core/di/injectable.decorator.js.map +1 -1
- package/dist/core/errors.d.ts +4 -4
- package/dist/core/errors.d.ts.map +1 -1
- package/dist/core/errors.js.map +1 -1
- package/dist/core/events/event-emitter.d.ts +3 -3
- package/dist/core/events/event-emitter.d.ts.map +1 -1
- package/dist/core/events/event-emitter.js.map +1 -1
- package/dist/core/events/event.decorator.d.ts +5 -5
- package/dist/core/events/event.decorator.d.ts.map +1 -1
- package/dist/core/events/event.decorator.js +10 -6
- package/dist/core/events/event.decorator.js.map +1 -1
- package/dist/core/events/log-emitter.d.ts +7 -1
- package/dist/core/events/log-emitter.d.ts.map +1 -1
- package/dist/core/events/log-emitter.js.map +1 -1
- package/dist/core/filters/exception-filter.decorator.d.ts +5 -5
- package/dist/core/filters/exception-filter.decorator.d.ts.map +1 -1
- package/dist/core/filters/exception-filter.decorator.js +3 -3
- package/dist/core/filters/exception-filter.decorator.js.map +1 -1
- package/dist/core/filters/exception-filter.interface.d.ts +14 -5
- package/dist/core/filters/exception-filter.interface.d.ts.map +1 -1
- package/dist/core/guards/apikey.guard.d.ts +1 -1
- package/dist/core/guards/apikey.guard.d.ts.map +1 -1
- package/dist/core/guards/guard.interface.d.ts +1 -1
- package/dist/core/guards/guard.interface.d.ts.map +1 -1
- package/dist/core/guards/jwt.guard.d.ts +1 -1
- package/dist/core/guards/jwt.guard.d.ts.map +1 -1
- package/dist/core/guards/oauth.guard.d.ts +1 -1
- package/dist/core/guards/oauth.guard.d.ts.map +1 -1
- package/dist/core/guards/use-guards.decorator.d.ts +3 -3
- package/dist/core/guards/use-guards.decorator.d.ts.map +1 -1
- package/dist/core/guards/use-guards.decorator.js +1 -1
- package/dist/core/guards/use-guards.decorator.js.map +1 -1
- package/dist/core/index.d.ts +2 -2
- package/dist/core/index.d.ts.map +1 -1
- package/dist/core/index.js.map +1 -1
- package/dist/core/interceptors/interceptor.decorator.d.ts +4 -4
- package/dist/core/interceptors/interceptor.decorator.d.ts.map +1 -1
- package/dist/core/interceptors/interceptor.decorator.js +2 -2
- package/dist/core/interceptors/interceptor.decorator.js.map +1 -1
- package/dist/core/interceptors/interceptor.interface.d.ts +3 -3
- package/dist/core/interceptors/interceptor.interface.d.ts.map +1 -1
- package/dist/core/logger.d.ts.map +1 -1
- package/dist/core/logger.js.map +1 -1
- package/dist/core/middleware/middleware.decorator.d.ts +4 -4
- package/dist/core/middleware/middleware.decorator.d.ts.map +1 -1
- package/dist/core/middleware/middleware.decorator.js +2 -2
- package/dist/core/middleware/middleware.decorator.js.map +1 -1
- package/dist/core/middleware/middleware.interface.d.ts +3 -3
- package/dist/core/middleware/middleware.interface.d.ts.map +1 -1
- package/dist/core/module.d.ts +33 -14
- package/dist/core/module.d.ts.map +1 -1
- package/dist/core/module.js +11 -6
- package/dist/core/module.js.map +1 -1
- package/dist/core/oauth-module.d.ts +9 -3
- package/dist/core/oauth-module.d.ts.map +1 -1
- package/dist/core/oauth-module.js +4 -3
- package/dist/core/oauth-module.js.map +1 -1
- package/dist/core/pipes/pipe.decorator.d.ts +14 -5
- package/dist/core/pipes/pipe.decorator.d.ts.map +1 -1
- package/dist/core/pipes/pipe.decorator.js +2 -2
- package/dist/core/pipes/pipe.decorator.js.map +1 -1
- package/dist/core/pipes/pipe.interface.d.ts +9 -4
- package/dist/core/pipes/pipe.interface.d.ts.map +1 -1
- package/dist/core/prompt.d.ts +13 -4
- package/dist/core/prompt.d.ts.map +1 -1
- package/dist/core/prompt.js +2 -2
- package/dist/core/prompt.js.map +1 -1
- package/dist/core/resource.d.ts +7 -2
- package/dist/core/resource.d.ts.map +1 -1
- package/dist/core/resource.js +2 -2
- package/dist/core/resource.js.map +1 -1
- package/dist/core/server.d.ts +49 -3
- package/dist/core/server.d.ts.map +1 -1
- package/dist/core/server.js +61 -34
- package/dist/core/server.js.map +1 -1
- package/dist/core/tool.d.ts +44 -16
- package/dist/core/tool.d.ts.map +1 -1
- package/dist/core/tool.js +19 -6
- package/dist/core/tool.js.map +1 -1
- package/dist/core/transports/discovery-http-server.d.ts +7 -1
- package/dist/core/transports/discovery-http-server.d.ts.map +1 -1
- package/dist/core/transports/discovery-http-server.js.map +1 -1
- package/dist/core/transports/http-server.d.ts +2 -2
- package/dist/core/transports/http-server.d.ts.map +1 -1
- package/dist/core/transports/http-server.js +1 -1
- package/dist/core/transports/http-server.js.map +1 -1
- package/dist/core/transports/streamable-http.d.ts +4 -4
- package/dist/core/transports/streamable-http.d.ts.map +1 -1
- package/dist/core/transports/streamable-http.js +1 -1
- package/dist/core/transports/streamable-http.js.map +1 -1
- package/dist/core/types.d.ts +87 -15
- package/dist/core/types.d.ts.map +1 -1
- package/dist/core/widgets/widget-registry.d.ts +2 -2
- package/dist/core/widgets/widget-registry.d.ts.map +1 -1
- package/dist/core/widgets/widget-registry.js +1 -1
- package/dist/core/widgets/widget-registry.js.map +1 -1
- package/dist/testing/index.d.ts +44 -17
- package/dist/testing/index.d.ts.map +1 -1
- package/dist/testing/index.js +5 -8
- package/dist/testing/index.js.map +1 -1
- package/dist/ui-next/index.d.ts +1 -1
- package/dist/ui-next/index.d.ts.map +1 -1
- package/dist/ui-next/index.js.map +1 -1
- package/dist/widgets/hooks/useWidgetSDK.d.ts +5 -5
- package/dist/widgets/runtime/WidgetLayout.js.map +1 -1
- package/dist/widgets/sdk.d.ts +5 -5
- package/dist/widgets/sdk.d.ts.map +1 -1
- package/dist/widgets/sdk.js.map +1 -1
- package/package.json +1 -1
- package/src/studio/app/api/auth/fetch-metadata/route.ts +3 -2
- package/src/studio/app/api/auth/register-client/route.ts +3 -2
- package/src/studio/app/api/chat/route.ts +31 -17
- package/src/studio/app/api/health/checks/route.ts +5 -4
- package/src/studio/app/api/init/route.ts +3 -2
- package/src/studio/app/api/ping/route.ts +3 -2
- package/src/studio/app/api/prompts/[name]/route.ts +4 -3
- package/src/studio/app/api/prompts/route.ts +3 -2
- package/src/studio/app/api/resources/[...uri]/route.ts +3 -2
- package/src/studio/app/api/resources/route.ts +3 -2
- package/src/studio/app/api/roots/route.ts +3 -2
- package/src/studio/app/api/sampling/route.ts +3 -2
- package/src/studio/app/api/tools/[name]/call/route.ts +3 -2
- package/src/studio/app/api/tools/route.ts +4 -3
- package/src/studio/app/api/widget-examples/route.ts +5 -4
- package/src/studio/app/auth/callback/page.tsx +3 -2
- package/src/studio/app/chat/page.tsx +481 -105
- package/src/studio/app/health/page.tsx +1 -1
- package/src/studio/app/logs/page.tsx +2 -2
- package/src/studio/app/page.tsx +5 -5
- package/src/studio/app/prompts/page.tsx +2 -2
- package/src/studio/app/settings/page.tsx +3 -2
- package/src/studio/app/tools/page.tsx +3 -3
- package/src/studio/components/LogMessage.tsx +1 -1
- package/src/studio/components/MarkdownRenderer.tsx +245 -348
- package/src/studio/components/Sidebar.tsx +18 -3
- package/src/studio/components/VoiceOrbOverlay.tsx +12 -6
- package/src/studio/components/WidgetErrorBoundary.tsx +48 -0
- package/src/studio/components/WidgetRenderer.tsx +168 -215
- package/src/studio/components/ops/OpsCanvas.tsx +748 -0
- package/src/studio/components/ops/OpsNodeDetailPanel.tsx +150 -0
- package/src/studio/components/ops/OpsSummaryBar.tsx +90 -0
- package/src/studio/components/ops/index.ts +5 -0
- package/src/studio/components/ops/nodes/BaseNode.tsx +65 -0
- package/src/studio/components/ops/nodes/LLMCallNode.tsx +34 -0
- package/src/studio/components/ops/nodes/LLMResponseNode.tsx +33 -0
- package/src/studio/components/ops/nodes/ToolCallNode.tsx +30 -0
- package/src/studio/components/ops/nodes/ToolResultNode.tsx +43 -0
- package/src/studio/components/ops/nodes/UserPromptNode.tsx +34 -0
- package/src/studio/components/ops/nodes/WidgetRenderNode.tsx +23 -0
- package/src/studio/components/ops/nodes/index.ts +8 -0
- package/src/studio/components/tools/ToolsCanvas.tsx +2 -2
- package/src/studio/lib/api.ts +61 -42
- package/src/studio/lib/http-client-transport.ts +2 -2
- package/src/studio/lib/llm-service.ts +126 -47
- package/src/studio/lib/mcp-client.ts +9 -6
- package/src/studio/lib/ops-store.ts +427 -0
- package/src/studio/lib/ops-tracker.ts +416 -0
- package/src/studio/lib/ops-types.ts +164 -0
- package/src/studio/lib/store.ts +8 -11
- package/src/studio/lib/types.ts +228 -38
- package/src/studio/lib/widget-loader.ts +2 -2
- package/templates/typescript-oauth/src/modules/flights/flights.prompts.ts +19 -22
- package/dist/cli/build-widgets.mjs +0 -165
|
@@ -0,0 +1,221 @@
|
|
|
1
|
+
import chalk from 'chalk';
|
|
2
|
+
import ora from 'ora';
|
|
3
|
+
import { execSync } from 'child_process';
|
|
4
|
+
import path from 'path';
|
|
5
|
+
import fs from 'fs-extra';
|
|
6
|
+
/**
|
|
7
|
+
* Get the latest version of nitrostack from npm registry
|
|
8
|
+
*/
|
|
9
|
+
function getLatestVersion() {
|
|
10
|
+
try {
|
|
11
|
+
const result = execSync('npm view nitrostack version', {
|
|
12
|
+
encoding: 'utf-8',
|
|
13
|
+
stdio: ['pipe', 'pipe', 'pipe'],
|
|
14
|
+
}).trim();
|
|
15
|
+
return result;
|
|
16
|
+
}
|
|
17
|
+
catch (error) {
|
|
18
|
+
throw new Error('Failed to fetch latest nitrostack version from npm registry');
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Get the current installed version of nitrostack from package.json
|
|
23
|
+
*/
|
|
24
|
+
function getCurrentVersion(packageJsonPath) {
|
|
25
|
+
if (!fs.existsSync(packageJsonPath)) {
|
|
26
|
+
return null;
|
|
27
|
+
}
|
|
28
|
+
const packageJson = fs.readJSONSync(packageJsonPath);
|
|
29
|
+
const version = packageJson.dependencies?.nitrostack ||
|
|
30
|
+
packageJson.devDependencies?.nitrostack;
|
|
31
|
+
return version || null;
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Parse version string to extract the actual version number
|
|
35
|
+
* Handles formats like: "^1.0.73", "~1.0.73", ">=1.0.73", "1.0.73", "^1"
|
|
36
|
+
*/
|
|
37
|
+
function parseVersion(versionString) {
|
|
38
|
+
// Remove version prefixes like ^, ~, >=, >, <, <=, =
|
|
39
|
+
return versionString.replace(/^[\^~>=<]+/, '');
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Compare two version strings
|
|
43
|
+
* Returns: 1 if v1 > v2, -1 if v1 < v2, 0 if equal
|
|
44
|
+
*/
|
|
45
|
+
function compareVersions(v1, v2) {
|
|
46
|
+
const parts1 = parseVersion(v1).split('.').map(Number);
|
|
47
|
+
const parts2 = parseVersion(v2).split('.').map(Number);
|
|
48
|
+
for (let i = 0; i < Math.max(parts1.length, parts2.length); i++) {
|
|
49
|
+
const p1 = parts1[i] || 0;
|
|
50
|
+
const p2 = parts2[i] || 0;
|
|
51
|
+
if (p1 > p2)
|
|
52
|
+
return 1;
|
|
53
|
+
if (p1 < p2)
|
|
54
|
+
return -1;
|
|
55
|
+
}
|
|
56
|
+
return 0;
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* Update nitrostack version in package.json
|
|
60
|
+
*/
|
|
61
|
+
function updatePackageJson(packageJsonPath, newVersion, dryRun) {
|
|
62
|
+
if (!fs.existsSync(packageJsonPath)) {
|
|
63
|
+
return false;
|
|
64
|
+
}
|
|
65
|
+
const packageJson = fs.readJSONSync(packageJsonPath);
|
|
66
|
+
let updated = false;
|
|
67
|
+
if (packageJson.dependencies?.nitrostack) {
|
|
68
|
+
packageJson.dependencies.nitrostack = `^${newVersion}`;
|
|
69
|
+
updated = true;
|
|
70
|
+
}
|
|
71
|
+
if (packageJson.devDependencies?.nitrostack) {
|
|
72
|
+
packageJson.devDependencies.nitrostack = `^${newVersion}`;
|
|
73
|
+
updated = true;
|
|
74
|
+
}
|
|
75
|
+
if (updated && !dryRun) {
|
|
76
|
+
fs.writeJSONSync(packageJsonPath, packageJson, { spaces: 2 });
|
|
77
|
+
}
|
|
78
|
+
return updated;
|
|
79
|
+
}
|
|
80
|
+
/**
|
|
81
|
+
* Run npm install to update package-lock.json
|
|
82
|
+
*/
|
|
83
|
+
function runNpmInstall(directory) {
|
|
84
|
+
execSync('npm install', {
|
|
85
|
+
cwd: directory,
|
|
86
|
+
stdio: 'pipe',
|
|
87
|
+
});
|
|
88
|
+
}
|
|
89
|
+
/**
|
|
90
|
+
* Main upgrade command handler
|
|
91
|
+
*/
|
|
92
|
+
export async function upgradeCommand(options) {
|
|
93
|
+
console.log(chalk.blue.bold('\n⬆️ NitroStack Upgrade\n'));
|
|
94
|
+
const projectRoot = process.cwd();
|
|
95
|
+
const rootPackageJsonPath = path.join(projectRoot, 'package.json');
|
|
96
|
+
const widgetsPath = path.join(projectRoot, 'src', 'widgets');
|
|
97
|
+
const widgetsPackageJsonPath = path.join(widgetsPath, 'package.json');
|
|
98
|
+
// Check if we're in a NitroStack project
|
|
99
|
+
if (!fs.existsSync(rootPackageJsonPath)) {
|
|
100
|
+
console.error(chalk.red('Error: package.json not found. Are you in a NitroStack project?'));
|
|
101
|
+
process.exit(1);
|
|
102
|
+
}
|
|
103
|
+
// Check if nitrostack is a dependency
|
|
104
|
+
const rootCurrentVersion = getCurrentVersion(rootPackageJsonPath);
|
|
105
|
+
if (!rootCurrentVersion) {
|
|
106
|
+
console.error(chalk.red('Error: nitrostack is not a dependency in this project.'));
|
|
107
|
+
process.exit(1);
|
|
108
|
+
}
|
|
109
|
+
// Get latest version
|
|
110
|
+
const spinner = ora('Fetching latest nitrostack version...').start();
|
|
111
|
+
let latestVersion;
|
|
112
|
+
try {
|
|
113
|
+
latestVersion = getLatestVersion();
|
|
114
|
+
spinner.stop();
|
|
115
|
+
console.log(chalk.green(`✓ Latest version: ${chalk.cyan(latestVersion)}`));
|
|
116
|
+
}
|
|
117
|
+
catch (error) {
|
|
118
|
+
spinner.stop();
|
|
119
|
+
console.log(chalk.red('✗ Failed to fetch latest version'));
|
|
120
|
+
console.error(chalk.red(error instanceof Error ? error.message : String(error)));
|
|
121
|
+
process.exit(1);
|
|
122
|
+
}
|
|
123
|
+
// Check if already on latest
|
|
124
|
+
const rootParsedVersion = parseVersion(rootCurrentVersion);
|
|
125
|
+
if (compareVersions(rootParsedVersion, latestVersion) >= 0) {
|
|
126
|
+
console.log(chalk.green(`\n✅ Already on the latest version (${chalk.cyan(rootParsedVersion)})`));
|
|
127
|
+
return;
|
|
128
|
+
}
|
|
129
|
+
const results = [];
|
|
130
|
+
const dryRun = options.dryRun ?? false;
|
|
131
|
+
if (dryRun) {
|
|
132
|
+
console.log(chalk.yellow('\n🔍 Dry run mode - no changes will be made'));
|
|
133
|
+
}
|
|
134
|
+
// Upgrade root package.json
|
|
135
|
+
console.log(chalk.blue('\n📦 Upgrading project dependencies...\n'));
|
|
136
|
+
try {
|
|
137
|
+
const rootUpdated = updatePackageJson(rootPackageJsonPath, latestVersion, dryRun);
|
|
138
|
+
if (rootUpdated) {
|
|
139
|
+
results.push({
|
|
140
|
+
location: 'root',
|
|
141
|
+
previousVersion: rootCurrentVersion,
|
|
142
|
+
newVersion: `^${latestVersion}`,
|
|
143
|
+
upgraded: true,
|
|
144
|
+
});
|
|
145
|
+
console.log(chalk.green(` ✓ Root: ${chalk.dim(rootCurrentVersion)} → ${chalk.cyan(`^${latestVersion}`)}`));
|
|
146
|
+
if (!dryRun) {
|
|
147
|
+
const installSpinner = ora(' Installing root dependencies...').start();
|
|
148
|
+
runNpmInstall(projectRoot);
|
|
149
|
+
installSpinner.stop();
|
|
150
|
+
console.log(chalk.green(' ✓ Root dependencies installed'));
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
else {
|
|
154
|
+
console.log(chalk.yellow(' ○ Root: No changes needed'));
|
|
155
|
+
}
|
|
156
|
+
}
|
|
157
|
+
catch (error) {
|
|
158
|
+
console.error(chalk.red(' ✗ Failed to upgrade root'));
|
|
159
|
+
console.error(chalk.red(` ${error instanceof Error ? error.message : String(error)}`));
|
|
160
|
+
process.exit(1);
|
|
161
|
+
}
|
|
162
|
+
// Upgrade widgets package.json if it exists
|
|
163
|
+
if (fs.existsSync(widgetsPackageJsonPath)) {
|
|
164
|
+
const widgetsCurrentVersion = getCurrentVersion(widgetsPackageJsonPath);
|
|
165
|
+
if (widgetsCurrentVersion) {
|
|
166
|
+
try {
|
|
167
|
+
const widgetsUpdated = updatePackageJson(widgetsPackageJsonPath, latestVersion, dryRun);
|
|
168
|
+
if (widgetsUpdated) {
|
|
169
|
+
results.push({
|
|
170
|
+
location: 'src/widgets',
|
|
171
|
+
previousVersion: widgetsCurrentVersion,
|
|
172
|
+
newVersion: `^${latestVersion}`,
|
|
173
|
+
upgraded: true,
|
|
174
|
+
});
|
|
175
|
+
console.log(chalk.green(` ✓ Widgets: ${chalk.dim(widgetsCurrentVersion)} → ${chalk.cyan(`^${latestVersion}`)}`));
|
|
176
|
+
if (!dryRun) {
|
|
177
|
+
const installSpinner = ora(' Installing widget dependencies...').start();
|
|
178
|
+
runNpmInstall(widgetsPath);
|
|
179
|
+
installSpinner.stop();
|
|
180
|
+
console.log(chalk.green(' ✓ Widget dependencies installed'));
|
|
181
|
+
}
|
|
182
|
+
}
|
|
183
|
+
else {
|
|
184
|
+
console.log(chalk.yellow(' ○ Widgets: No changes needed'));
|
|
185
|
+
}
|
|
186
|
+
}
|
|
187
|
+
catch (error) {
|
|
188
|
+
console.error(chalk.red(' ✗ Failed to upgrade widgets'));
|
|
189
|
+
console.error(chalk.red(` ${error instanceof Error ? error.message : String(error)}`));
|
|
190
|
+
// Don't exit - root was already upgraded
|
|
191
|
+
}
|
|
192
|
+
}
|
|
193
|
+
}
|
|
194
|
+
else {
|
|
195
|
+
console.log(chalk.gray(' ○ No widgets directory found (src/widgets)'));
|
|
196
|
+
}
|
|
197
|
+
// Summary
|
|
198
|
+
console.log(chalk.blue.bold('\n📋 Upgrade Summary\n'));
|
|
199
|
+
if (results.length === 0) {
|
|
200
|
+
console.log(chalk.yellow(' No packages were upgraded.'));
|
|
201
|
+
}
|
|
202
|
+
else {
|
|
203
|
+
console.log(chalk.white(' Upgraded locations:\n'));
|
|
204
|
+
for (const result of results) {
|
|
205
|
+
console.log(chalk.white(` • ${result.location}:`), chalk.dim(result.previousVersion), chalk.gray('→'), chalk.cyan(result.newVersion));
|
|
206
|
+
}
|
|
207
|
+
}
|
|
208
|
+
if (dryRun) {
|
|
209
|
+
console.log(chalk.yellow('\n⚠️ Dry run - no actual changes were made.'));
|
|
210
|
+
console.log(chalk.gray(' Run without --dry-run to apply the upgrade.\n'));
|
|
211
|
+
}
|
|
212
|
+
else {
|
|
213
|
+
console.log(chalk.green.bold('\n✨ Upgrade completed successfully!\n'));
|
|
214
|
+
// Suggest next steps
|
|
215
|
+
console.log(chalk.white('Next steps:\n'));
|
|
216
|
+
console.log(chalk.cyan(' 1. Review the changes'));
|
|
217
|
+
console.log(chalk.cyan(' 2. Test your application'));
|
|
218
|
+
console.log(chalk.cyan(' 3. Check the changelog for breaking changes\n'));
|
|
219
|
+
}
|
|
220
|
+
}
|
|
221
|
+
//# sourceMappingURL=upgrade.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"upgrade.js","sourceRoot":"","sources":["../../../src/cli/commands/upgrade.ts"],"names":[],"mappings":"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"}
|
package/dist/cli/index.js
CHANGED
|
@@ -6,6 +6,7 @@ import { devCommand } from './commands/dev.js';
|
|
|
6
6
|
import { buildCommand } from './commands/build.js';
|
|
7
7
|
import { startCommand } from './commands/start.js';
|
|
8
8
|
import { generate } from './commands/generate.js';
|
|
9
|
+
import { upgradeCommand } from './commands/upgrade.js';
|
|
9
10
|
const require = createRequire(import.meta.url);
|
|
10
11
|
const packageJson = require('../../package.json');
|
|
11
12
|
const program = new Command();
|
|
@@ -46,5 +47,11 @@ program
|
|
|
46
47
|
.option('--force', 'Overwrite existing files')
|
|
47
48
|
.option('--skip-related', 'Skip generating related files (for modules)')
|
|
48
49
|
.action(generate);
|
|
50
|
+
program
|
|
51
|
+
.command('upgrade')
|
|
52
|
+
.description('Upgrade nitrostack to the latest version in the project')
|
|
53
|
+
.option('--dry-run', 'Show what would be upgraded without making changes')
|
|
54
|
+
.option('--latest', 'Force upgrade to the latest version even if already up to date')
|
|
55
|
+
.action(upgradeCommand);
|
|
49
56
|
program.parse();
|
|
50
57
|
//# sourceMappingURL=index.js.map
|
package/dist/cli/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AACvC,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AACvC,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAClD,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAEvD,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC/C,MAAM,WAAW,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC;AAElD,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;AAE9B,OAAO;KACJ,IAAI,CAAC,YAAY,CAAC;KAClB,WAAW,CAAC,0CAA0C,CAAC;KACvD,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;AAEhC,OAAO;KACJ,OAAO,CAAC,MAAM,CAAC;KACf,WAAW,CAAC,qCAAqC,CAAC;KAClD,QAAQ,CAAC,gBAAgB,EAAE,qBAAqB,CAAC;KACjD,MAAM,CAAC,uBAAuB,EAAE,+CAA+C,EAAE,YAAY,CAAC;KAC9F,MAAM,CAAC,WAAW,CAAC,CAAC;AAEvB,OAAO;KACJ,OAAO,CAAC,KAAK,CAAC;KACd,WAAW,CAAC,0CAA0C,CAAC;KACvD,MAAM,CAAC,eAAe,EAAE,iBAAiB,EAAE,MAAM,CAAC;KAClD,MAAM,CAAC,WAAW,EAAE,mCAAmC,CAAC;KACxD,MAAM,CAAC,UAAU,CAAC,CAAC;AAEtB,OAAO;KACJ,OAAO,CAAC,OAAO,CAAC;KAChB,WAAW,CAAC,kCAAkC,CAAC;KAC/C,MAAM,CAAC,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,CAAC;KACrD,MAAM,CAAC,YAAY,CAAC,CAAC;AAExB,OAAO;KACJ,OAAO,CAAC,OAAO,CAAC;KAChB,WAAW,CAAC,6BAA6B,CAAC;KAC1C,MAAM,CAAC,eAAe,EAAE,iBAAiB,EAAE,MAAM,CAAC;KAClD,MAAM,CAAC,YAAY,CAAC,CAAC;AAExB,OAAO;KACJ,OAAO,CAAC,UAAU,CAAC;KACnB,KAAK,CAAC,GAAG,CAAC;KACV,WAAW,CAAC,oCAAoC,CAAC;KACjD,QAAQ,CAAC,QAAQ,EAAE,6HAA6H,CAAC;KACjJ,QAAQ,CAAC,QAAQ,EAAE,8CAA8C,CAAC;KAClE,MAAM,CAAC,mBAAmB,EAAE,8CAA8C,CAAC;KAC3E,MAAM,CAAC,iBAAiB,EAAE,oCAAoC,CAAC;KAC/D,MAAM,CAAC,SAAS,EAAE,0BAA0B,CAAC;KAC7C,MAAM,CAAC,gBAAgB,EAAE,6CAA6C,CAAC;KACvE,MAAM,CAAC,QAAQ,CAAC,CAAC;AAEpB,OAAO;KACJ,OAAO,CAAC,SAAS,CAAC;KAClB,WAAW,CAAC,yDAAyD,CAAC;KACtE,MAAM,CAAC,WAAW,EAAE,oDAAoD,CAAC;KACzE,MAAM,CAAC,UAAU,EAAE,gEAAgE,CAAC;KACpF,MAAM,CAAC,cAAc,CAAC,CAAC;AAE1B,OAAO,CAAC,KAAK,EAAE,CAAC"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import 'reflect-metadata';
|
|
2
2
|
import { NitroStackServer } from './server.js';
|
|
3
|
+
import type { ClassConstructor } from './types.js';
|
|
3
4
|
/**
|
|
4
5
|
* MCP Application Options
|
|
5
6
|
*/
|
|
@@ -7,7 +8,7 @@ export interface McpAppOptions {
|
|
|
7
8
|
/**
|
|
8
9
|
* Root module of the application
|
|
9
10
|
*/
|
|
10
|
-
module:
|
|
11
|
+
module: ClassConstructor;
|
|
11
12
|
/**
|
|
12
13
|
* Server configuration
|
|
13
14
|
*/
|
|
@@ -44,7 +45,7 @@ export declare function McpApp(options: McpAppOptions): ClassDecorator;
|
|
|
44
45
|
/**
|
|
45
46
|
* Get MCP App metadata
|
|
46
47
|
*/
|
|
47
|
-
export declare function getMcpAppMetadata(target:
|
|
48
|
+
export declare function getMcpAppMetadata(target: ClassConstructor): McpAppOptions | undefined;
|
|
48
49
|
/**
|
|
49
50
|
* MCP Application Factory
|
|
50
51
|
* Creates and bootstraps an MCP application
|
|
@@ -53,6 +54,6 @@ export declare class McpApplicationFactory {
|
|
|
53
54
|
/**
|
|
54
55
|
* Create an MCP application from an app module
|
|
55
56
|
*/
|
|
56
|
-
static create(AppModule:
|
|
57
|
+
static create(AppModule: ClassConstructor): Promise<NitroStackServer>;
|
|
57
58
|
}
|
|
58
59
|
//# sourceMappingURL=app-decorator.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"app-decorator.d.ts","sourceRoot":"","sources":["../../src/core/app-decorator.ts"],"names":[],"mappings":"AAAA,OAAO,kBAAkB,CAAC;AAC1B,OAAO,EAAgB,gBAAgB,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"app-decorator.d.ts","sourceRoot":"","sources":["../../src/core/app-decorator.ts"],"names":[],"mappings":"AAAA,OAAO,kBAAkB,CAAC;AAC1B,OAAO,EAAgB,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAO7D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAiDnD;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B;;OAEG;IACH,MAAM,EAAE,gBAAgB,CAAC;IAEzB;;OAEG;IACH,MAAM,CAAC,EAAE;QACP,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,CAAC;IAEF;;OAEG;IACH,OAAO,CAAC,EAAE;QACR,KAAK,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;KAC7C,CAAC;IAEF;;;;;OAKG;IACH,SAAS,CAAC,EAAE;QACV,IAAI,EAAE,OAAO,GAAG,MAAM,GAAG,MAAM,CAAC;QAChC,IAAI,CAAC,EAAE;YACL,IAAI,CAAC,EAAE,MAAM,CAAC;YACd,IAAI,CAAC,EAAE,MAAM,CAAC;YACd,QAAQ,CAAC,EAAE,MAAM,CAAC;SACnB,CAAC;KACH,CAAC;CACH;AAOD;;;GAGG;AACH,wBAAgB,MAAM,CAAC,OAAO,EAAE,aAAa,GAAG,cAAc,CAM7D;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,gBAAgB,GAAG,aAAa,GAAG,SAAS,CAErF;AAED;;;GAGG;AACH,qBAAa,qBAAqB;IAChC;;OAEG;WACU,MAAM,CAAC,SAAS,EAAE,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,CAAC;CAmT5E"}
|
|
@@ -1,11 +1,36 @@
|
|
|
1
1
|
import 'reflect-metadata';
|
|
2
|
-
import { createServer
|
|
2
|
+
import { createServer } from './server.js';
|
|
3
3
|
import { createLogger } from './logger.js';
|
|
4
4
|
import { DIContainer } from './di/container.js';
|
|
5
5
|
import { registerHealthCheck } from './decorators/health-check.decorator.js';
|
|
6
6
|
import { createResource } from './resource.js';
|
|
7
7
|
import { getModuleMetadata } from './module.js';
|
|
8
8
|
import { buildTools, buildResources, buildPrompts } from './builders.js';
|
|
9
|
+
/**
|
|
10
|
+
* Helper to check if a provider is a ClassConstructor
|
|
11
|
+
*/
|
|
12
|
+
function isClassConstructor(provider) {
|
|
13
|
+
return typeof provider === 'function';
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Register a provider (either class or object-style provider)
|
|
17
|
+
*/
|
|
18
|
+
function registerProvider(container, provider) {
|
|
19
|
+
if (isClassConstructor(provider)) {
|
|
20
|
+
container.register(provider);
|
|
21
|
+
}
|
|
22
|
+
else {
|
|
23
|
+
// Object-style provider: { provide: ..., useValue/useClass/useFactory: ... }
|
|
24
|
+
const token = provider.provide;
|
|
25
|
+
if (provider.useValue !== undefined) {
|
|
26
|
+
container.registerValue(token, provider.useValue);
|
|
27
|
+
}
|
|
28
|
+
else if (provider.useClass) {
|
|
29
|
+
container.register(token, provider.useClass);
|
|
30
|
+
}
|
|
31
|
+
// useFactory could be added later if needed
|
|
32
|
+
}
|
|
33
|
+
}
|
|
9
34
|
/**
|
|
10
35
|
* MCP Application Metadata Key
|
|
11
36
|
*/
|
|
@@ -15,6 +40,7 @@ const MCP_APP_METADATA = Symbol('mcp:app');
|
|
|
15
40
|
* Marks a class as the root application module
|
|
16
41
|
*/
|
|
17
42
|
export function McpApp(options) {
|
|
43
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
18
44
|
return (target) => {
|
|
19
45
|
Reflect.defineMetadata(MCP_APP_METADATA, options, target);
|
|
20
46
|
return target;
|
|
@@ -58,14 +84,17 @@ export class McpApplicationFactory {
|
|
|
58
84
|
// Register all providers
|
|
59
85
|
if (moduleMetadata.providers) {
|
|
60
86
|
for (const provider of moduleMetadata.providers) {
|
|
61
|
-
container
|
|
62
|
-
// Check if provider is a health check
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
87
|
+
registerProvider(container, provider);
|
|
88
|
+
// Check if provider is a health check (only for class constructors)
|
|
89
|
+
if (isClassConstructor(provider)) {
|
|
90
|
+
const healthCheckMetadata = Reflect.getMetadata('nitrostack:health_check', provider);
|
|
91
|
+
if (healthCheckMetadata) {
|
|
92
|
+
// Resolve and register health check
|
|
93
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
94
|
+
const healthCheckInstance = container.resolve(provider);
|
|
95
|
+
registerHealthCheck(healthCheckInstance, healthCheckMetadata);
|
|
96
|
+
logger.info(` ✓ Health Check: ${healthCheckMetadata.name}`);
|
|
97
|
+
}
|
|
69
98
|
}
|
|
70
99
|
}
|
|
71
100
|
}
|
|
@@ -86,14 +115,17 @@ export class McpApplicationFactory {
|
|
|
86
115
|
// Register providers from imported module
|
|
87
116
|
if (importedMetadata.providers) {
|
|
88
117
|
for (const provider of importedMetadata.providers) {
|
|
89
|
-
container
|
|
90
|
-
// Check if provider is a health check
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
118
|
+
registerProvider(container, provider);
|
|
119
|
+
// Check if provider is a health check (only for class constructors)
|
|
120
|
+
if (isClassConstructor(provider)) {
|
|
121
|
+
const healthCheckMetadata = Reflect.getMetadata('nitrostack:health_check', provider);
|
|
122
|
+
if (healthCheckMetadata) {
|
|
123
|
+
// Resolve and register health check
|
|
124
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
125
|
+
const healthCheckInstance = container.resolve(provider);
|
|
126
|
+
registerHealthCheck(healthCheckInstance, healthCheckMetadata);
|
|
127
|
+
logger.info(` ✓ Health Check: ${healthCheckMetadata.name}`);
|
|
128
|
+
}
|
|
97
129
|
}
|
|
98
130
|
}
|
|
99
131
|
}
|
|
@@ -105,13 +137,15 @@ export class McpApplicationFactory {
|
|
|
105
137
|
}
|
|
106
138
|
}
|
|
107
139
|
}
|
|
108
|
-
else if (importedModule && typeof importedModule === 'object'
|
|
140
|
+
else if (importedModule && typeof importedModule === 'object') {
|
|
109
141
|
// Handle ConfigModule.forRoot() style dynamic modules
|
|
110
|
-
|
|
111
|
-
|
|
142
|
+
const dynamicMod = importedModule;
|
|
143
|
+
if (dynamicMod.providers) {
|
|
144
|
+
for (const provider of dynamicMod.providers) {
|
|
112
145
|
// Check if provider has {provide, useValue} format
|
|
113
146
|
if (provider && typeof provider === 'object' && 'provide' in provider && 'useValue' in provider) {
|
|
114
|
-
|
|
147
|
+
const valueProvider = provider;
|
|
148
|
+
container.registerValue(valueProvider.provide, valueProvider.useValue);
|
|
115
149
|
}
|
|
116
150
|
else {
|
|
117
151
|
container.register(provider);
|
|
@@ -120,8 +154,8 @@ export class McpApplicationFactory {
|
|
|
120
154
|
}
|
|
121
155
|
// If the dynamic module has a module class, we'll add it to the server after creation
|
|
122
156
|
// Don't register it in DI yet to avoid circular dependency issues
|
|
123
|
-
if (
|
|
124
|
-
dynamicModulesToAdd.push(
|
|
157
|
+
if (dynamicMod.module) {
|
|
158
|
+
dynamicModulesToAdd.push(dynamicMod.module);
|
|
125
159
|
}
|
|
126
160
|
}
|
|
127
161
|
}
|
|
@@ -132,11 +166,14 @@ export class McpApplicationFactory {
|
|
|
132
166
|
version: options.server?.version || '1.0.0',
|
|
133
167
|
});
|
|
134
168
|
// Register the server itself in DI so dynamic modules can inject it
|
|
135
|
-
|
|
169
|
+
// Use string token since NitroStackServer has specific constructor signature
|
|
170
|
+
container.registerValue('NitroStackServer', server);
|
|
136
171
|
// Now register and add dynamic modules (from forRoot() calls) to server
|
|
137
172
|
for (const dynamicModule of dynamicModulesToAdd) {
|
|
138
173
|
container.register(dynamicModule);
|
|
139
|
-
|
|
174
|
+
// Access internal modules array
|
|
175
|
+
const serverInternal = server;
|
|
176
|
+
serverInternal.modules.push(dynamicModule);
|
|
140
177
|
}
|
|
141
178
|
// Build and register tools, resources, and prompts from all controllers
|
|
142
179
|
let totalTools = 0;
|
|
@@ -220,7 +257,8 @@ export class McpApplicationFactory {
|
|
|
220
257
|
logger.info(`Widget examples resource registered`);
|
|
221
258
|
}
|
|
222
259
|
catch (error) {
|
|
223
|
-
|
|
260
|
+
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
261
|
+
logger.warn(`Widget examples not available: ${errorMessage}`);
|
|
224
262
|
}
|
|
225
263
|
logger.info(`✅ Application initialized with ${totalTools} tools, ${totalResources} resources, ${totalPrompts} prompts`);
|
|
226
264
|
// Auto-detect transport type based on configuration
|
|
@@ -275,8 +313,9 @@ export class McpApplicationFactory {
|
|
|
275
313
|
};
|
|
276
314
|
}
|
|
277
315
|
// Store transport configuration on server for later use
|
|
278
|
-
|
|
279
|
-
|
|
316
|
+
const serverInternal = server;
|
|
317
|
+
serverInternal._transportType = transportType;
|
|
318
|
+
serverInternal._transportOptions = transportOptions;
|
|
280
319
|
return server;
|
|
281
320
|
}
|
|
282
321
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"app-decorator.js","sourceRoot":"","sources":["../../src/core/app-decorator.ts"],"names":[],"mappings":"AAAA,OAAO,kBAAkB,CAAC;AAC1B,OAAO,EAAE,YAAY,
|
|
1
|
+
{"version":3,"file":"app-decorator.js","sourceRoot":"","sources":["../../src/core/app-decorator.ts"],"names":[],"mappings":"AAAA,OAAO,kBAAkB,CAAC;AAC1B,OAAO,EAAE,YAAY,EAAoB,MAAM,aAAa,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,mBAAmB,EAAE,MAAM,wCAAwC,CAAC;AAC7E,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EAAY,iBAAiB,EAA4B,MAAM,aAAa,CAAC;AACpF,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAkBzE;;GAEG;AACH,SAAS,kBAAkB,CAAC,QAAqC;IAC/D,OAAO,OAAO,QAAQ,KAAK,UAAU,CAAC;AACxC,CAAC;AAED;;GAEG;AACH,SAAS,gBAAgB,CAAC,SAAsB,EAAE,QAAqC;IACrF,IAAI,kBAAkB,CAAC,QAAQ,CAAC,EAAE,CAAC;QACjC,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAC/B,CAAC;SAAM,CAAC;QACN,6EAA6E;QAC7E,MAAM,KAAK,GAAG,QAAQ,CAAC,OAA0B,CAAC;QAClD,IAAI,QAAQ,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;YACpC,SAAS,CAAC,aAAa,CAAC,KAAK,EAAE,QAAQ,CAAC,QAAQ,CAAC,CAAC;QACpD,CAAC;aAAM,IAAI,QAAQ,CAAC,QAAQ,EAAE,CAAC;YAC7B,SAAS,CAAC,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAC/C,CAAC;QACD,4CAA4C;IAC9C,CAAC;AACH,CAAC;AAiDD;;GAEG;AACH,MAAM,gBAAgB,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC;AAE3C;;;GAGG;AACH,MAAM,UAAU,MAAM,CAAC,OAAsB;IAC3C,8DAA8D;IAC9D,OAAO,CAAC,MAAW,EAAE,EAAE;QACrB,OAAO,CAAC,cAAc,CAAC,gBAAgB,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;QAC1D,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,iBAAiB,CAAC,MAAwB;IACxD,OAAO,OAAO,CAAC,WAAW,CAAC,gBAAgB,EAAE,MAAM,CAA8B,CAAC;AACpF,CAAC;AAED;;;GAGG;AACH,MAAM,OAAO,qBAAqB;IAChC;;OAEG;IACH,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,SAA2B;QAC7C,MAAM,OAAO,GAAG,iBAAiB,CAAC,SAAS,CAAC,CAAC;QAE7C,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,KAAK,CACb,GAAG,SAAS,CAAC,IAAI,kCAAkC;gBACnD,mDAAmD,CACpD,CAAC;QACJ,CAAC;QAED,gBAAgB;QAChB,MAAM,MAAM,GAAG,YAAY,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,OAAO,EAAE,KAAK,IAAI,MAAM,EAAE,CAAC,CAAC;QAEzE,4BAA4B;QAC5B,IAAI,OAAO,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC;YAC3B,OAAO,CAAC,GAAG,CAAC,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC;QAChD,CAAC;QAED,sBAAsB;QACtB,MAAM,SAAS,GAAG,WAAW,CAAC,WAAW,EAAE,CAAC;QAE5C,iDAAiD;QACjD,SAAS,CAAC,aAAa,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QAE1C,sBAAsB;QACtB,MAAM,cAAc,GAAG,iBAAiB,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAEzD,IAAI,CAAC,cAAc,EAAE,CAAC;YACpB,MAAM,IAAI,KAAK,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,gCAAgC,CAAC,CAAC;QAC1E,CAAC;QAED,yBAAyB;QACzB,IAAI,cAAc,CAAC,SAAS,EAAE,CAAC;YAC7B,KAAK,MAAM,QAAQ,IAAI,cAAc,CAAC,SAAS,EAAE,CAAC;gBAChD,gBAAgB,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;gBAEtC,oEAAoE;gBACpE,IAAI,kBAAkB,CAAC,QAAQ,CAAC,EAAE,CAAC;oBACjC,MAAM,mBAAmB,GAAG,OAAO,CAAC,WAAW,CAAC,yBAAyB,EAAE,QAAQ,CAAiC,CAAC;oBACrH,IAAI,mBAAmB,EAAE,CAAC;wBACxB,oCAAoC;wBACpC,8DAA8D;wBAC9D,MAAM,mBAAmB,GAAG,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAQ,CAAC;wBAC/D,mBAAmB,CAAC,mBAAmB,EAAE,mBAAmB,CAAC,CAAC;wBAC9D,MAAM,CAAC,IAAI,CAAC,qBAAqB,mBAAmB,CAAC,IAAI,EAAE,CAAC,CAAC;oBAC/D,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QAED,qDAAqD;QACrD,IAAI,cAAc,CAAC,WAAW,EAAE,CAAC;YAC/B,KAAK,MAAM,UAAU,IAAI,cAAc,CAAC,WAAW,EAAE,CAAC;gBACpD,SAAS,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;YACjC,CAAC;QACH,CAAC;QAED,0EAA0E;QAC1E,MAAM,mBAAmB,GAAuB,EAAE,CAAC;QAEnD,kCAAkC;QAClC,IAAI,cAAc,CAAC,OAAO,EAAE,CAAC;YAC3B,KAAK,MAAM,cAAc,IAAI,cAAc,CAAC,OAAO,EAAE,CAAC;gBACpD,IAAI,OAAO,cAAc,KAAK,UAAU,EAAE,CAAC;oBACzC,MAAM,gBAAgB,GAAG,iBAAiB,CAAC,cAAc,CAAC,CAAC;oBAC3D,IAAI,gBAAgB,EAAE,CAAC;wBACrB,0CAA0C;wBAC1C,IAAI,gBAAgB,CAAC,SAAS,EAAE,CAAC;4BAC/B,KAAK,MAAM,QAAQ,IAAI,gBAAgB,CAAC,SAAS,EAAE,CAAC;gCAClD,gBAAgB,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;gCAEtC,oEAAoE;gCACpE,IAAI,kBAAkB,CAAC,QAAQ,CAAC,EAAE,CAAC;oCACjC,MAAM,mBAAmB,GAAG,OAAO,CAAC,WAAW,CAAC,yBAAyB,EAAE,QAAQ,CAAiC,CAAC;oCACrH,IAAI,mBAAmB,EAAE,CAAC;wCACxB,oCAAoC;wCACpC,8DAA8D;wCAC9D,MAAM,mBAAmB,GAAG,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAQ,CAAC;wCAC/D,mBAAmB,CAAC,mBAAmB,EAAE,mBAAmB,CAAC,CAAC;wCAC9D,MAAM,CAAC,IAAI,CAAC,qBAAqB,mBAAmB,CAAC,IAAI,EAAE,CAAC,CAAC;oCAC/D,CAAC;gCACH,CAAC;4BACH,CAAC;wBACH,CAAC;wBACD,4CAA4C;wBAC5C,IAAI,gBAAgB,CAAC,WAAW,EAAE,CAAC;4BACjC,KAAK,MAAM,UAAU,IAAI,gBAAgB,CAAC,WAAW,EAAE,CAAC;gCACtD,SAAS,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;4BACjC,CAAC;wBACH,CAAC;oBACH,CAAC;gBACH,CAAC;qBAAM,IAAI,cAAc,IAAI,OAAO,cAAc,KAAK,QAAQ,EAAE,CAAC;oBAChE,sDAAsD;oBACtD,MAAM,UAAU,GAAG,cAA+B,CAAC;oBACnD,IAAI,UAAU,CAAC,SAAS,EAAE,CAAC;wBACzB,KAAK,MAAM,QAAQ,IAAI,UAAU,CAAC,SAAS,EAAE,CAAC;4BAC5C,mDAAmD;4BACnD,IAAI,QAAQ,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,SAAS,IAAI,QAAQ,IAAI,UAAU,IAAI,QAAQ,EAAE,CAAC;gCAChG,MAAM,aAAa,GAAG,QAA2D,CAAC;gCAClF,SAAS,CAAC,aAAa,CAAC,aAAa,CAAC,OAAO,EAAE,aAAa,CAAC,QAAQ,CAAC,CAAC;4BACzE,CAAC;iCAAM,CAAC;gCACN,SAAS,CAAC,QAAQ,CAAC,QAA4B,CAAC,CAAC;4BACnD,CAAC;wBACH,CAAC;oBACH,CAAC;oBACD,sFAAsF;oBACtF,kEAAkE;oBAClE,IAAI,UAAU,CAAC,MAAM,EAAE,CAAC;wBACtB,mBAAmB,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;oBAC9C,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QAED,gBAAgB;QAChB,MAAM,MAAM,GAAG,YAAY,CAAC;YAC1B,IAAI,EAAE,OAAO,CAAC,MAAM,EAAE,IAAI,IAAI,YAAY;YAC1C,OAAO,EAAE,OAAO,CAAC,MAAM,EAAE,OAAO,IAAI,OAAO;SAC5C,CAAC,CAAC;QAEH,oEAAoE;QACpE,6EAA6E;QAC7E,SAAS,CAAC,aAAa,CAAC,kBAAkB,EAAE,MAAM,CAAC,CAAC;QAEpD,wEAAwE;QACxE,KAAK,MAAM,aAAa,IAAI,mBAAmB,EAAE,CAAC;YAChD,SAAS,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;YAClC,gCAAgC;YAChC,MAAM,cAAc,GAAG,MAAoD,CAAC;YAC5E,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAC7C,CAAC;QAED,wEAAwE;QACxE,IAAI,UAAU,GAAG,CAAC,CAAC;QACnB,IAAI,cAAc,GAAG,CAAC,CAAC;QACvB,IAAI,YAAY,GAAG,CAAC,CAAC;QAErB,qCAAqC;QACrC,MAAM,cAAc,GAAuB,EAAE,CAAC;QAE9C,mCAAmC;QACnC,IAAI,cAAc,CAAC,WAAW,EAAE,CAAC;YAC/B,cAAc,CAAC,IAAI,CAAC,GAAG,cAAc,CAAC,WAAW,CAAC,CAAC;QACrD,CAAC;QAED,wCAAwC;QACxC,IAAI,cAAc,CAAC,OAAO,EAAE,CAAC;YAC3B,KAAK,MAAM,cAAc,IAAI,cAAc,CAAC,OAAO,EAAE,CAAC;gBACpD,IAAI,OAAO,cAAc,KAAK,UAAU,EAAE,CAAC;oBACzC,MAAM,gBAAgB,GAAG,iBAAiB,CAAC,cAAc,CAAC,CAAC;oBAC3D,IAAI,gBAAgB,EAAE,WAAW,EAAE,CAAC;wBAClC,cAAc,CAAC,IAAI,CAAC,GAAG,gBAAgB,CAAC,WAAW,CAAC,CAAC;oBACvD,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QAED,0CAA0C;QAC1C,KAAK,MAAM,eAAe,IAAI,cAAc,EAAE,CAAC;YAC7C,gDAAgD;YAChD,MAAM,UAAU,GAAG,SAAS,CAAC,OAAO,CAAC,eAAe,CAAuB,CAAC;YAE5E,cAAc;YACd,MAAM,KAAK,GAAG,UAAU,CAAC,UAAU,CAAC,CAAC;YACrC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;gBACzB,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAClB,UAAU,EAAE,CAAC;YACf,CAAC;YAED,kBAAkB;YAClB,MAAM,SAAS,GAAG,cAAc,CAAC,UAAU,CAAC,CAAC;YAC7C,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;gBACjC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;gBAC1B,cAAc,EAAE,CAAC;YACnB,CAAC;YAED,gBAAgB;YAChB,MAAM,OAAO,GAAG,YAAY,CAAC,UAAU,CAAC,CAAC;YACzC,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;gBAC7B,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBACtB,YAAY,EAAE,CAAC;YACjB,CAAC;QACH,CAAC;QAED,6DAA6D;QAC7D,MAAM,EAAE,yBAAyB,EAAE,GAAG,MAAM,MAAM,CAAC,oCAAoC,CAAC,CAAC;QACzF,MAAM,uBAAuB,GAAG,MAAM,yBAAyB,EAAE,CAAC;QAClE,MAAM,oBAAoB,GAAG,cAAc,CAAC;YAC1C,GAAG,EAAE,uBAAuB,CAAC,GAAG;YAChC,IAAI,EAAE,uBAAuB,CAAC,IAAI;YAClC,WAAW,EAAE,uBAAuB,CAAC,WAAW;YAChD,QAAQ,EAAE,uBAAuB,CAAC,QAAQ;YAC1C,OAAO,EAAE,KAAK,EAAE,GAAW,EAAE,OAAO,EAAE,EAAE;gBACtC,MAAM,OAAO,GAAG,MAAM,uBAAuB,CAAC,IAAI,EAAE,CAAC;gBACrD,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;YACzC,CAAC;SACF,CAAC,CAAC;QACH,MAAM,CAAC,QAAQ,CAAC,oBAAoB,CAAC,CAAC;QACtC,MAAM,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC;QAEnD,6DAA6D;QAC7D,IAAI,CAAC;YACH,MAAM,EAAE,iBAAiB,EAAE,GAAG,MAAM,MAAM,CAAC,8BAA8B,CAAC,CAAC;YAC3E,MAAM,EAAE,2BAA2B,EAAE,GAAG,MAAM,MAAM,CAAC,uCAAuC,CAAC,CAAC;YAC9F,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,CAAC;YAEtC,MAAM,QAAQ,GAAG,iBAAiB,EAAE,CAAC;YACrC,MAAM,kBAAkB,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,sBAAsB,CAAC,CAAC;YACzF,QAAQ,CAAC,YAAY,CAAC,kBAAkB,CAAC,CAAC;YAE1C,MAAM,yBAAyB,GAAG,MAAM,2BAA2B,EAAE,CAAC;YACtE,MAAM,sBAAsB,GAAG,cAAc,CAAC;gBAC5C,GAAG,EAAE,yBAAyB,CAAC,GAAG;gBAClC,IAAI,EAAE,yBAAyB,CAAC,IAAI;gBACpC,WAAW,EAAE,yBAAyB,CAAC,WAAW;gBAClD,QAAQ,EAAE,yBAAyB,CAAC,QAAQ;gBAC5C,OAAO,EAAE,KAAK,EAAE,GAAW,EAAE,OAAO,EAAE,EAAE;oBACtC,MAAM,OAAO,GAAG,MAAM,yBAAyB,CAAC,IAAI,EAAE,CAAC;oBACvD,OAAO,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;gBAClD,CAAC;aACF,CAAC,CAAC;YACH,MAAM,CAAC,QAAQ,CAAC,sBAAsB,CAAC,CAAC;YACxC,MAAM,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC;QACrD,CAAC;QAAC,OAAO,KAAc,EAAE,CAAC;YACxB,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAC5E,MAAM,CAAC,IAAI,CAAC,kCAAkC,YAAY,EAAE,CAAC,CAAC;QAChE,CAAC;QAED,MAAM,CAAC,IAAI,CAAC,kCAAkC,UAAU,WAAW,cAAc,eAAe,YAAY,UAAU,CAAC,CAAC;QAcxH,oDAAoD;QACpD,IAAI,aAAa,GAA8B,OAAO,CAAC;QACvD,IAAI,gBAAgB,GAAiC,SAAS,CAAC;QAE/D,yCAAyC;QACzC,IAAI,OAAO,CAAC,SAAS,EAAE,IAAI,EAAE,CAAC;YAC5B,aAAa,GAAG,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC;QACzC,CAAC;QAED,+BAA+B;QAC/B,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,MAAM,CAAC,mBAAmB,CAAC,CAAC;QAC1D,MAAM,WAAW,GAAG,WAAW,CAAC,SAAS,EAAE,CAAC;QAE5C,IAAI,WAAW,EAAE,CAAC;YAChB,mEAAmE;YACnE,iFAAiF;YACjF,aAAa,GAAG,MAAM,CAAC;YAEvB,8DAA8D;YAC9D,IAAI,IAAI,GAAG,IAAI,CAAC;YAChB,IAAI,CAAC;gBACH,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;gBACrD,IAAI,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YACxG,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,CAAC,IAAI,CAAC,0DAA0D,CAAC,CAAC;YAC1E,CAAC;YAED,4CAA4C;YAC5C,IAAI,WAAW,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC;gBAC3B,IAAI,GAAG,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC;YAC/B,CAAC;iBAAM,IAAI,OAAO,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;gBACzC,IAAI,GAAG,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC;YACrC,CAAC;YAED,gBAAgB,GAAG;gBACjB,IAAI;gBACJ,IAAI,EAAE,WAAW,CAAC,IAAI,EAAE,IAAI,IAAI,OAAO,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,IAAI,SAAS;gBAC1E,QAAQ,EAAE,WAAW,CAAC,IAAI,EAAE,QAAQ,IAAI,OAAO,CAAC,SAAS,EAAE,IAAI,EAAE,QAAQ,IAAI,MAAM;gBACnF,KAAK,EAAE;oBACL,WAAW,EAAE,WAAW,CAAC,WAAW;oBACpC,oBAAoB,EAAE,WAAW,CAAC,oBAAoB;oBACtD,eAAe,EAAE,WAAW,CAAC,eAAe;iBAC7C;aACF,CAAC;YACF,MAAM,CAAC,IAAI,CAAC,wDAAwD,IAAI,EAAE,CAAC,CAAC;QAC9E,CAAC;aAAM,IAAI,OAAO,CAAC,SAAS,EAAE,IAAI,KAAK,MAAM,EAAE,CAAC;YAC9C,uCAAuC;YACvC,aAAa,GAAG,MAAM,CAAC;YACvB,gBAAgB,GAAG;gBACjB,IAAI,EAAE,OAAO,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,IAAI,IAAI;gBAC1C,IAAI,EAAE,OAAO,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,IAAI,SAAS;gBAC/C,QAAQ,EAAE,OAAO,CAAC,SAAS,CAAC,IAAI,EAAE,QAAQ,IAAI,MAAM;aACrD,CAAC;QACJ,CAAC;QAED,wDAAwD;QACxD,MAAM,cAAc,GAAG,MAGtB,CAAC;QACF,cAAc,CAAC,cAAc,GAAG,aAAa,CAAC;QAC9C,cAAc,CAAC,iBAAiB,GAAG,gBAAgB,CAAC;QAEpD,OAAO,MAAM,CAAC;IAChB,CAAC;CACF"}
|
package/dist/core/builders.d.ts
CHANGED
|
@@ -1,38 +1,50 @@
|
|
|
1
1
|
import { Tool } from './tool.js';
|
|
2
2
|
import { Resource } from './resource.js';
|
|
3
3
|
import { Prompt } from './prompt.js';
|
|
4
|
+
import { ClassConstructor } from './types.js';
|
|
4
5
|
import { ToolOptions, ResourceOptions, PromptOptions } from './decorators.js';
|
|
6
|
+
/**
|
|
7
|
+
* Controller instance type
|
|
8
|
+
*/
|
|
9
|
+
interface ControllerInstance {
|
|
10
|
+
[key: string]: unknown;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Controller class type (using ClassConstructor for compatibility)
|
|
14
|
+
*/
|
|
15
|
+
type ControllerClass = ClassConstructor<ControllerInstance>;
|
|
5
16
|
/**
|
|
6
17
|
* Build a Tool instance from a decorated method
|
|
7
18
|
*/
|
|
8
|
-
export declare function buildTool(controllerInstance:
|
|
19
|
+
export declare function buildTool(controllerInstance: ControllerInstance, methodName: string, options: ToolOptions, widgetRoute?: string, isInitial?: boolean): Tool;
|
|
9
20
|
/**
|
|
10
21
|
* Build all tools from a controller
|
|
11
22
|
*/
|
|
12
|
-
export declare function buildTools(controllerInstance:
|
|
23
|
+
export declare function buildTools(controllerInstance: ControllerInstance): Tool[];
|
|
13
24
|
/**
|
|
14
25
|
* Build a Resource instance from a decorated method
|
|
15
26
|
*/
|
|
16
|
-
export declare function buildResource(controllerInstance:
|
|
27
|
+
export declare function buildResource(controllerInstance: ControllerInstance, methodName: string, options: ResourceOptions): Resource;
|
|
17
28
|
/**
|
|
18
29
|
* Build all resources from a controller
|
|
19
30
|
*/
|
|
20
|
-
export declare function buildResources(controllerInstance:
|
|
31
|
+
export declare function buildResources(controllerInstance: ControllerInstance): Resource[];
|
|
21
32
|
/**
|
|
22
33
|
* Build a Prompt instance from a decorated method
|
|
23
34
|
*/
|
|
24
|
-
export declare function buildPrompt(controllerInstance:
|
|
35
|
+
export declare function buildPrompt(controllerInstance: ControllerInstance, methodName: string, options: PromptOptions): Prompt;
|
|
25
36
|
/**
|
|
26
37
|
* Build all prompts from a controller
|
|
27
38
|
*/
|
|
28
|
-
export declare function buildPrompts(controllerInstance:
|
|
39
|
+
export declare function buildPrompts(controllerInstance: ControllerInstance): Prompt[];
|
|
29
40
|
/**
|
|
30
41
|
* Build all tools, resources, and prompts from a controller
|
|
31
42
|
* Supports dependency injection
|
|
32
43
|
*/
|
|
33
|
-
export declare function buildController(controller:
|
|
44
|
+
export declare function buildController(controller: ControllerClass): {
|
|
34
45
|
tools: Tool[];
|
|
35
46
|
resources: Resource[];
|
|
36
47
|
prompts: Prompt[];
|
|
37
48
|
};
|
|
49
|
+
export {};
|
|
38
50
|
//# sourceMappingURL=builders.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"builders.d.ts","sourceRoot":"","sources":["../../src/core/builders.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,QAAQ,EAAkB,MAAM,eAAe,CAAC;AACzD,OAAO,EAAE,MAAM,EAAgB,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"builders.d.ts","sourceRoot":"","sources":["../../src/core/builders.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,QAAQ,EAAkB,MAAM,eAAe,CAAC;AACzD,OAAO,EAAE,MAAM,EAAgB,MAAM,aAAa,CAAC;AAEnD,OAAO,EAA+G,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAC3J,OAAO,EAA6F,WAAW,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AASzK;;GAEG;AACH,UAAU,kBAAkB;IAC1B,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED;;GAEG;AACH,KAAK,eAAe,GAAG,gBAAgB,CAAC,kBAAkB,CAAC,CAAC;AAE5D;;GAEG;AACH,wBAAgB,SAAS,CACvB,kBAAkB,EAAE,kBAAkB,EACtC,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,WAAW,EACpB,WAAW,CAAC,EAAE,MAAM,EACpB,SAAS,CAAC,EAAE,OAAO,GAClB,IAAI,CAsCN;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,kBAAkB,EAAE,kBAAkB,GAAG,IAAI,EAAE,CAczE;AAED;;GAEG;AACH,wBAAgB,aAAa,CAC3B,kBAAkB,EAAE,kBAAkB,EACtC,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,eAAe,GACvB,QAAQ,CAgBV;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,kBAAkB,EAAE,kBAAkB,GAAG,QAAQ,EAAE,CAOjF;AAED;;GAEG;AACH,wBAAgB,WAAW,CACzB,kBAAkB,EAAE,kBAAkB,EACtC,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,aAAa,GACrB,MAAM,CAcR;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,kBAAkB,EAAE,kBAAkB,GAAG,MAAM,EAAE,CAO7E;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,UAAU,EAAE,eAAe,GAAG;IAC5D,KAAK,EAAE,IAAI,EAAE,CAAC;IACd,SAAS,EAAE,QAAQ,EAAE,CAAC;IACtB,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB,CAgBA"}
|