@vistagenic/vista 0.3.2 → 0.3.3

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.
Files changed (98) hide show
  1. package/bin/vista.js +79 -109
  2. package/dist/ai/embeddings.d.ts +11 -11
  3. package/dist/ai/embeddings.js +71 -71
  4. package/dist/ai/index.d.ts +10 -10
  5. package/dist/ai/index.js +26 -26
  6. package/dist/ai/providers/base.js +85 -85
  7. package/dist/ai/react/react-server.d.ts +1 -1
  8. package/dist/ai/react/react-server.js +17 -17
  9. package/dist/ai/react/use-agent.js +138 -138
  10. package/dist/auth/core.d.ts +140 -140
  11. package/dist/auth/core.js +165 -165
  12. package/dist/auth/index.d.ts +20 -20
  13. package/dist/auth/index.js +369 -369
  14. package/dist/auth/react-server.d.ts +1 -1
  15. package/dist/auth/react-server.js +10 -10
  16. package/dist/auth/react.d.ts +18 -18
  17. package/dist/auth/react.js +71 -71
  18. package/dist/bin/build-rsc-flashpack.js +6 -0
  19. package/dist/bin/build-rsc.js +537 -492
  20. package/dist/bin/build.js +355 -353
  21. package/dist/bin/generate.js +513 -510
  22. package/dist/bin/webpack.config.js +4 -3
  23. package/dist/build/manifest.d.ts +169 -169
  24. package/dist/build/manifest.js +423 -423
  25. package/dist/build/rsc/client-manifest.d.ts +62 -62
  26. package/dist/build/rsc/client-manifest.js +295 -295
  27. package/dist/build/rsc/compiler.js +5 -4
  28. package/dist/build/rsc/native-scanner.d.ts +135 -135
  29. package/dist/build/rsc/native-scanner.js +203 -203
  30. package/dist/build/rsc/react-client-reference-manifest.d.ts +28 -28
  31. package/dist/build/rsc/react-client-reference-manifest.js +240 -240
  32. package/dist/build/standalone.js +260 -254
  33. package/dist/client/dynamic.react-server.d.ts +2 -2
  34. package/dist/client/dynamic.react-server.js +23 -23
  35. package/dist/client/link.react-server.d.ts +2 -2
  36. package/dist/client/link.react-server.js +11 -11
  37. package/dist/client/navigation.react-server.d.ts +1 -1
  38. package/dist/client/navigation.react-server.js +17 -17
  39. package/dist/client/router.react-server.d.ts +1 -1
  40. package/dist/client/router.react-server.js +17 -17
  41. package/dist/client/rsc-router.react-server.d.ts +1 -1
  42. package/dist/client/rsc-router.react-server.js +17 -17
  43. package/dist/client/script.react-server.d.ts +2 -2
  44. package/dist/client/script.react-server.js +23 -23
  45. package/dist/config.d.ts +1 -1
  46. package/dist/config.js +1 -7
  47. package/dist/deploy/adapters/cloudflare.js +43 -19
  48. package/dist/deploy/adapters/docker.d.ts +1 -0
  49. package/dist/deploy/adapters/docker.js +5 -4
  50. package/dist/deploy/adapters/netlify.js +62 -17
  51. package/dist/deploy/adapters/vercel.js +80 -50
  52. package/dist/deploy/preflight.js +4 -3
  53. package/dist/deploy/runtime-pack.d.ts +11 -0
  54. package/dist/deploy/runtime-pack.js +300 -0
  55. package/dist/deploy/utils.d.ts +1 -1
  56. package/dist/deploy/utils.js +31 -2
  57. package/dist/flashpack/command.js +1 -0
  58. package/dist/flashpack/runtime.js +2 -1
  59. package/dist/index.d.ts +23 -23
  60. package/dist/index.js +61 -61
  61. package/dist/server/app-dir.d.ts +22 -0
  62. package/dist/server/app-dir.js +77 -0
  63. package/dist/server/cookie-parse.d.ts +4 -4
  64. package/dist/server/cookie-parse.js +14 -14
  65. package/dist/server/engine.js +5 -5
  66. package/dist/server/image-optimizer.js +2 -1
  67. package/dist/server/index.d.ts +109 -109
  68. package/dist/server/index.js +315 -315
  69. package/dist/server/middleware-runner.d.ts +125 -125
  70. package/dist/server/middleware-runner.js +607 -615
  71. package/dist/server/middleware-security.d.ts +36 -36
  72. package/dist/server/middleware-security.js +183 -183
  73. package/dist/server/module-compile-hook.js +695 -695
  74. package/dist/server/root-resolver.js +6 -5
  75. package/dist/server/rsc-engine-flashpack.d.ts +3 -1
  76. package/dist/server/rsc-engine-flashpack.js +12 -1
  77. package/dist/server/rsc-engine.d.ts +6 -1
  78. package/dist/server/rsc-engine.js +203 -219
  79. package/dist/server/rsc-upstream.js +893 -892
  80. package/dist/server/static-generator.js +4 -3
  81. package/dist/server/structure-validator.js +2 -1
  82. package/dist/server/structure-watch.js +2 -0
  83. package/dist/server/typed-api-runtime.js +639 -635
  84. package/dist/server/vista-import-map.js +134 -134
  85. package/dist/stack/index.d.ts +34 -34
  86. package/dist/stack/index.js +49 -49
  87. package/dist/stack/server/caller.d.ts +13 -13
  88. package/dist/stack/server/caller.js +42 -42
  89. package/dist/stack/server/executor.d.ts +40 -40
  90. package/dist/stack/server/executor.js +222 -222
  91. package/dist/stack/server/index.d.ts +11 -11
  92. package/dist/stack/server/index.js +24 -24
  93. package/dist/stack/server/procedure.d.ts +20 -20
  94. package/dist/stack/server/procedure.js +66 -66
  95. package/dist/stack/server/types.d.ts +113 -113
  96. package/dist/theme/react-server.d.ts +10 -10
  97. package/dist/theme/react-server.js +16 -16
  98. package/package.json +1 -1
package/bin/vista.js CHANGED
@@ -59,7 +59,13 @@ if (command === 'deploy') {
59
59
  }
60
60
 
61
61
  const useLegacy = flags.includes('--legacy') || process.env.VISTA_LEGACY === 'true';
62
- const useRSC = !useLegacy;
62
+ if (useLegacy) {
63
+ console.error(
64
+ '[vista] --legacy / VISTA_LEGACY island SSR has been removed. Use default Flight RSC/SSR (omit --legacy) or --flashpack.'
65
+ );
66
+ process.exit(1);
67
+ }
68
+
63
69
  const explicitFlashpack = flags.includes('--flashpack');
64
70
  const explicitDefaultEngine = flags.includes('--default-engine') || flags.includes('--webpack');
65
71
  const explicitEngineFlag = getFlagValue('--engine');
@@ -113,125 +119,91 @@ markStartTime();
113
119
 
114
120
  if (command === 'dev') {
115
121
  forceRuntimeEnv('development');
116
- if (useRSC) {
117
- console.log(`[vista] Engine: ${process.env.VISTA_ENGINE}`);
118
- const useFlashpack = process.env.VISTA_ENGINE === 'flashpack';
119
- if (useFlashpack) {
120
- const { runFlashpackEngineCommand } = require('../dist/flashpack/command');
121
- runFlashpackEngineCommand('dev', {
122
- cwd: process.cwd(),
123
- port: process.env.PORT || 3003,
124
- }).catch((err) => {
125
- console.error('Flashpack dev failed:', err);
126
- process.exit(1);
127
- });
128
- return;
129
- }
130
- const { buildRSC } = require('../dist/bin/build-rsc');
131
- const { startRSCServer } = require('../dist/server/rsc-engine');
132
-
133
- buildRSC(true)
134
- .then(({ clientCompiler }) => {
135
- startRSCServer({
136
- port: process.env.PORT || 3003,
137
- compiler: clientCompiler,
138
- });
139
- })
140
- .catch((err) => {
141
- console.error('RSC Build failed:', err);
142
- process.exit(1);
143
- });
144
- } else {
145
- // Legacy SSR Mode (--legacy)
146
- const { startServer } = require('../dist/server/engine');
147
- const { buildClient } = require('../dist/bin/build');
122
+ console.log(`[vista] Engine: ${process.env.VISTA_ENGINE}`);
123
+ const useFlashpack = process.env.VISTA_ENGINE === 'flashpack';
124
+ if (useFlashpack) {
125
+ const { runFlashpackEngineCommand } = require('../dist/flashpack/command');
126
+ runFlashpackEngineCommand('dev', {
127
+ cwd: process.cwd(),
128
+ port: process.env.PORT || 3003,
129
+ }).catch((err) => {
130
+ console.error('Flashpack dev failed:', err);
131
+ process.exit(1);
132
+ });
133
+ return;
134
+ }
135
+ const { buildRSC } = require('../dist/bin/build-rsc');
136
+ const { startRSCServer } = require('../dist/server/rsc-engine');
148
137
 
149
- buildClient(true)
150
- .then((compiler) => {
151
- startServer(process.env.PORT || 3003, compiler);
152
- })
153
- .catch((err) => {
154
- console.error('Build failed:', err);
155
- process.exit(1);
138
+ buildRSC(true)
139
+ .then(({ clientCompiler }) => {
140
+ startRSCServer({
141
+ port: process.env.PORT || 3003,
142
+ compiler: clientCompiler,
156
143
  });
157
- }
144
+ })
145
+ .catch((err) => {
146
+ console.error('RSC Build failed:', err);
147
+ process.exit(1);
148
+ });
158
149
  } else if (command === 'build') {
159
150
  forceRuntimeEnv('production');
160
- if (useRSC) {
161
- console.log(`[vista] Engine: ${process.env.VISTA_ENGINE}`);
162
- const useFlashpack = process.env.VISTA_ENGINE === 'flashpack';
163
- if (useFlashpack) {
164
- const { runFlashpackEngineCommand } = require('../dist/flashpack/command');
165
- runFlashpackEngineCommand('build', {
166
- cwd: process.cwd(),
167
- })
168
- .then(() => {
169
- console.log('');
170
- console.log('Production build complete!');
171
- })
172
- .catch((err) => {
173
- console.error('Flashpack build failed:', err);
174
- process.exit(1);
175
- });
176
- return;
177
- }
178
- const { buildRSC } = require('../dist/bin/build-rsc');
179
-
180
- buildRSC(false)
151
+ console.log(`[vista] Engine: ${process.env.VISTA_ENGINE}`);
152
+ const useFlashpack = process.env.VISTA_ENGINE === 'flashpack';
153
+ if (useFlashpack) {
154
+ const { runFlashpackEngineCommand } = require('../dist/flashpack/command');
155
+ runFlashpackEngineCommand('build', {
156
+ cwd: process.cwd(),
157
+ })
181
158
  .then(() => {
182
159
  console.log('');
183
160
  console.log('Production build complete!');
184
161
  })
185
162
  .catch((err) => {
186
- console.error('RSC Build failed:', err);
187
- process.exit(1);
188
- });
189
- } else {
190
- // Legacy Build (--legacy)
191
- const { buildClient } = require('../dist/bin/build');
192
-
193
- buildClient(false)
194
- .then(() => {
195
- console.log('Production build complete!');
196
- })
197
- .catch((err) => {
198
- console.error('Build failed:', err);
163
+ console.error('Flashpack build failed:', err);
199
164
  process.exit(1);
200
165
  });
166
+ return;
201
167
  }
168
+ const { buildRSC } = require('../dist/bin/build-rsc');
169
+
170
+ buildRSC(false)
171
+ .then(() => {
172
+ console.log('');
173
+ console.log('Production build complete!');
174
+ })
175
+ .catch((err) => {
176
+ console.error('RSC Build failed:', err);
177
+ process.exit(1);
178
+ });
202
179
  } else if (command === 'start') {
203
180
  forceRuntimeEnv('production');
204
- if (useRSC) {
205
- console.log(`[vista] Engine: ${process.env.VISTA_ENGINE}`);
206
- if (process.env.VISTA_ENGINE === 'flashpack') {
207
- const { runFlashpackEngineCommand } = require('../dist/flashpack/command');
208
- runFlashpackEngineCommand('start', {
209
- cwd: process.cwd(),
210
- port: process.env.PORT || 3003,
211
- }).catch((err) => {
212
- console.error('Flashpack start failed:', err);
213
- process.exit(1);
214
- });
215
- return;
216
- }
217
- const standaloneServerPath = path.join(process.cwd(), '.vista', 'standalone', 'server.js');
218
- if (fs.existsSync(standaloneServerPath)) {
219
- const standalone = require(standaloneServerPath);
220
- const startStandaloneServer =
221
- standalone.startStandaloneServer || standalone.default || standalone;
222
- startStandaloneServer({
223
- port: process.env.PORT || 3003,
224
- engine: process.env.VISTA_ENGINE,
225
- });
226
- return;
227
- }
228
-
229
- const { startRSCServer } = require('../dist/server/rsc-engine');
230
- startRSCServer({ port: process.env.PORT || 3003 });
231
- } else {
232
- const { startServer } = require('../dist/server/engine');
233
- startServer(process.env.PORT || 3003);
181
+ console.log(`[vista] Engine: ${process.env.VISTA_ENGINE}`);
182
+ if (process.env.VISTA_ENGINE === 'flashpack') {
183
+ const { runFlashpackEngineCommand } = require('../dist/flashpack/command');
184
+ runFlashpackEngineCommand('start', {
185
+ cwd: process.cwd(),
186
+ port: process.env.PORT || 3003,
187
+ }).catch((err) => {
188
+ console.error('Flashpack start failed:', err);
189
+ process.exit(1);
190
+ });
191
+ return;
192
+ }
193
+ const standaloneServerPath = path.join(process.cwd(), '.vista', 'standalone', 'server.js');
194
+ if (fs.existsSync(standaloneServerPath)) {
195
+ const standalone = require(standaloneServerPath);
196
+ const startStandaloneServer =
197
+ standalone.startStandaloneServer || standalone.default || standalone;
198
+ startStandaloneServer({
199
+ port: process.env.PORT || 3003,
200
+ engine: process.env.VISTA_ENGINE,
201
+ });
202
+ return;
234
203
  }
204
+
205
+ const { startRSCServer } = require('../dist/server/rsc-engine');
206
+ startRSCServer({ port: process.env.PORT || 3003 });
235
207
  } else {
236
208
  console.log('');
237
209
  console.log('Vista JS Framework CLI');
@@ -246,7 +218,6 @@ if (command === 'dev') {
246
218
  console.log(' g Generate typed API scaffolds (api-init, router, procedure)');
247
219
  console.log('');
248
220
  console.log('Options:');
249
- console.log(' --legacy Use traditional SSR mode (instead of RSC)');
250
221
  console.log(' --engine <default|flashpack> Select engine variant');
251
222
  console.log(' --flashpack Use Rust-first Flashpack engine path');
252
223
  console.log(' --default-engine Force default engine path');
@@ -255,10 +226,9 @@ if (command === 'dev') {
255
226
  console.log(' deploy --dry-run Validate and emit deploy artifacts only');
256
227
  console.log('');
257
228
  console.log('Examples:');
258
- console.log(' vista dev # Start dev server (RSC mode)');
259
- console.log(' vista dev --legacy # Start dev server with legacy SSR');
229
+ console.log(' vista dev # Start Flight RSC/SSR dev server');
260
230
  console.log(' vista dev --flashpack # Start dev server with Flashpack mode');
261
- console.log(' vista build # Production build with RSC');
231
+ console.log(' vista build # Production Flight RSC/SSR build');
262
232
  console.log(' vista g api-init # Generate typed API starter files');
263
233
  console.log('');
264
234
  }
@@ -1,11 +1,11 @@
1
- export interface EmbedOptions {
2
- model?: string;
3
- apiKey?: string;
4
- baseURL?: string;
5
- }
6
- export declare function embedTexts(texts: string[], options?: EmbedOptions): Promise<number[][]>;
7
- export declare function embedText(text: string, options?: EmbedOptions): Promise<number[]>;
8
- export declare function createEmbeddings(options?: EmbedOptions): {
9
- embedText: (text: string) => Promise<number[]>;
10
- embedTexts: (texts: string[]) => Promise<number[][]>;
11
- };
1
+ export interface EmbedOptions {
2
+ model?: string;
3
+ apiKey?: string;
4
+ baseURL?: string;
5
+ }
6
+ export declare function embedTexts(texts: string[], options?: EmbedOptions): Promise<number[][]>;
7
+ export declare function embedText(text: string, options?: EmbedOptions): Promise<number[]>;
8
+ export declare function createEmbeddings(options?: EmbedOptions): {
9
+ embedText: (text: string) => Promise<number[]>;
10
+ embedTexts: (texts: string[]) => Promise<number[][]>;
11
+ };
@@ -1,71 +1,71 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.embedTexts = embedTexts;
4
- exports.embedText = embedText;
5
- exports.createEmbeddings = createEmbeddings;
6
- const base_1 = require("./providers/base");
7
- function resolveEmbedTarget(options = {}) {
8
- const identifier = (0, base_1.parseModelIdentifier)(options.model || 'openai:text-embedding-3-small');
9
- const provider = identifier.provider;
10
- const modelName = identifier.modelName || 'text-embedding-3-small';
11
- if (provider === 'nvidia' || provider === 'nim') {
12
- return {
13
- modelName,
14
- baseURL: (options.baseURL ||
15
- process.env.NVIDIA_BASE_URL ||
16
- process.env.NIM_BASE_URL ||
17
- 'https://integrate.api.nvidia.com/v1').replace(/\/+$/, ''),
18
- apiKey: options.apiKey || process.env.NVIDIA_API_KEY || process.env.NIM_API_KEY || '',
19
- };
20
- }
21
- if (provider === 'groq') {
22
- return {
23
- modelName,
24
- baseURL: (options.baseURL || process.env.GROQ_BASE_URL || 'https://api.groq.com/openai/v1').replace(/\/+$/, ''),
25
- apiKey: options.apiKey || process.env.GROQ_API_KEY || '',
26
- };
27
- }
28
- if (provider === 'ollama') {
29
- return {
30
- modelName,
31
- baseURL: (options.baseURL || process.env.OLLAMA_BASE_URL || 'http://localhost:11434/v1').replace(/\/+$/, ''),
32
- apiKey: options.apiKey || 'ollama',
33
- };
34
- }
35
- return {
36
- modelName,
37
- baseURL: (options.baseURL || process.env.OPENAI_BASE_URL || 'https://api.openai.com/v1').replace(/\/+$/, ''),
38
- apiKey: options.apiKey || process.env.OPENAI_API_KEY || '',
39
- };
40
- }
41
- async function embedTexts(texts, options = {}) {
42
- const target = resolveEmbedTarget(options);
43
- const response = await fetch(`${target.baseURL}/embeddings`, {
44
- method: 'POST',
45
- headers: {
46
- 'Content-Type': 'application/json',
47
- ...(target.apiKey ? { Authorization: `Bearer ${target.apiKey}` } : {}),
48
- },
49
- body: JSON.stringify({
50
- model: target.modelName,
51
- input: texts,
52
- }),
53
- });
54
- if (!response.ok) {
55
- const detail = await response.text().catch(() => '');
56
- throw new Error(`Embedding request failed (${response.status}): ${detail || response.statusText}`);
57
- }
58
- const json = (await response.json());
59
- const rows = [...(json.data || [])].sort((left, right) => (left.index || 0) - (right.index || 0));
60
- return rows.map((row) => row.embedding || []);
61
- }
62
- async function embedText(text, options = {}) {
63
- const [vector] = await embedTexts([text], options);
64
- return vector || [];
65
- }
66
- function createEmbeddings(options = {}) {
67
- return {
68
- embedText: (text) => embedText(text, options),
69
- embedTexts: (texts) => embedTexts(texts, options),
70
- };
71
- }
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.embedTexts = embedTexts;
4
+ exports.embedText = embedText;
5
+ exports.createEmbeddings = createEmbeddings;
6
+ const base_1 = require("./providers/base");
7
+ function resolveEmbedTarget(options = {}) {
8
+ const identifier = (0, base_1.parseModelIdentifier)(options.model || 'openai:text-embedding-3-small');
9
+ const provider = identifier.provider;
10
+ const modelName = identifier.modelName || 'text-embedding-3-small';
11
+ if (provider === 'nvidia' || provider === 'nim') {
12
+ return {
13
+ modelName,
14
+ baseURL: (options.baseURL ||
15
+ process.env.NVIDIA_BASE_URL ||
16
+ process.env.NIM_BASE_URL ||
17
+ 'https://integrate.api.nvidia.com/v1').replace(/\/+$/, ''),
18
+ apiKey: options.apiKey || process.env.NVIDIA_API_KEY || process.env.NIM_API_KEY || '',
19
+ };
20
+ }
21
+ if (provider === 'groq') {
22
+ return {
23
+ modelName,
24
+ baseURL: (options.baseURL || process.env.GROQ_BASE_URL || 'https://api.groq.com/openai/v1').replace(/\/+$/, ''),
25
+ apiKey: options.apiKey || process.env.GROQ_API_KEY || '',
26
+ };
27
+ }
28
+ if (provider === 'ollama') {
29
+ return {
30
+ modelName,
31
+ baseURL: (options.baseURL || process.env.OLLAMA_BASE_URL || 'http://localhost:11434/v1').replace(/\/+$/, ''),
32
+ apiKey: options.apiKey || 'ollama',
33
+ };
34
+ }
35
+ return {
36
+ modelName,
37
+ baseURL: (options.baseURL || process.env.OPENAI_BASE_URL || 'https://api.openai.com/v1').replace(/\/+$/, ''),
38
+ apiKey: options.apiKey || process.env.OPENAI_API_KEY || '',
39
+ };
40
+ }
41
+ async function embedTexts(texts, options = {}) {
42
+ const target = resolveEmbedTarget(options);
43
+ const response = await fetch(`${target.baseURL}/embeddings`, {
44
+ method: 'POST',
45
+ headers: {
46
+ 'Content-Type': 'application/json',
47
+ ...(target.apiKey ? { Authorization: `Bearer ${target.apiKey}` } : {}),
48
+ },
49
+ body: JSON.stringify({
50
+ model: target.modelName,
51
+ input: texts,
52
+ }),
53
+ });
54
+ if (!response.ok) {
55
+ const detail = await response.text().catch(() => '');
56
+ throw new Error(`Embedding request failed (${response.status}): ${detail || response.statusText}`);
57
+ }
58
+ const json = (await response.json());
59
+ const rows = [...(json.data || [])].sort((left, right) => (left.index || 0) - (right.index || 0));
60
+ return rows.map((row) => row.embedding || []);
61
+ }
62
+ async function embedText(text, options = {}) {
63
+ const [vector] = await embedTexts([text], options);
64
+ return vector || [];
65
+ }
66
+ function createEmbeddings(options = {}) {
67
+ return {
68
+ embedText: (text) => embedText(text, options),
69
+ embedTexts: (texts) => embedTexts(texts, options),
70
+ };
71
+ }
@@ -1,10 +1,10 @@
1
- export * from './types';
2
- export * from './tool';
3
- export * from './agent';
4
- export * from './memory';
5
- export * from './stream';
6
- export * from './rag';
7
- export * from './embeddings';
8
- export * from './observability';
9
- export * from './providers';
10
- export * from './react';
1
+ export * from './types';
2
+ export * from './tool';
3
+ export * from './agent';
4
+ export * from './memory';
5
+ export * from './stream';
6
+ export * from './rag';
7
+ export * from './embeddings';
8
+ export * from './observability';
9
+ export * from './providers';
10
+ export * from './react';
package/dist/ai/index.js CHANGED
@@ -1,26 +1,26 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./types"), exports);
18
- __exportStar(require("./tool"), exports);
19
- __exportStar(require("./agent"), exports);
20
- __exportStar(require("./memory"), exports);
21
- __exportStar(require("./stream"), exports);
22
- __exportStar(require("./rag"), exports);
23
- __exportStar(require("./embeddings"), exports);
24
- __exportStar(require("./observability"), exports);
25
- __exportStar(require("./providers"), exports);
26
- __exportStar(require("./react"), exports);
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./types"), exports);
18
+ __exportStar(require("./tool"), exports);
19
+ __exportStar(require("./agent"), exports);
20
+ __exportStar(require("./memory"), exports);
21
+ __exportStar(require("./stream"), exports);
22
+ __exportStar(require("./rag"), exports);
23
+ __exportStar(require("./embeddings"), exports);
24
+ __exportStar(require("./observability"), exports);
25
+ __exportStar(require("./providers"), exports);
26
+ __exportStar(require("./react"), exports);
@@ -1,85 +1,85 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.parseModelIdentifier = parseModelIdentifier;
4
- exports.resolveModel = resolveModel;
5
- const openai_1 = require("./openai");
6
- const anthropic_1 = require("./anthropic");
7
- const gemini_1 = require("./gemini");
8
- const mock_1 = require("./mock");
9
- function parseModelIdentifier(model) {
10
- const trimmed = model.trim();
11
- const colonIndex = trimmed.indexOf(':');
12
- if (colonIndex !== -1) {
13
- const provider = trimmed.slice(0, colonIndex).toLowerCase();
14
- const modelName = trimmed.slice(colonIndex + 1);
15
- return { provider, modelName };
16
- }
17
- // Heuristic guessing if prefix omitted
18
- const lower = trimmed.toLowerCase();
19
- if (lower.startsWith('gpt-') || lower.startsWith('o1-') || lower.startsWith('o3-')) {
20
- return { provider: 'openai', modelName: trimmed };
21
- }
22
- if (lower.startsWith('claude-')) {
23
- return { provider: 'anthropic', modelName: trimmed };
24
- }
25
- if (lower.startsWith('gemini-')) {
26
- return { provider: 'gemini', modelName: trimmed };
27
- }
28
- if (lower.startsWith('mock')) {
29
- return { provider: 'mock', modelName: trimmed };
30
- }
31
- if (lower.startsWith('llama-') || lower.startsWith('mixtral-') || lower.startsWith('gemma2-')) {
32
- return { provider: 'groq', modelName: trimmed };
33
- }
34
- // Default fallback
35
- return { provider: 'openai', modelName: trimmed };
36
- }
37
- function resolveModel(model, options = {}) {
38
- if (typeof model === 'object' && model !== null && 'generateText' in model) {
39
- return model;
40
- }
41
- if (typeof model !== 'string') {
42
- throw new Error('Model must be a model string or a LanguageModel implementation');
43
- }
44
- const { provider, modelName } = parseModelIdentifier(model);
45
- const modelOptions = {
46
- model: modelName,
47
- ...options,
48
- };
49
- switch (provider) {
50
- case 'openai':
51
- return (0, openai_1.createOpenAIModel)(modelOptions);
52
- case 'anthropic':
53
- return (0, anthropic_1.createAnthropicModel)(modelOptions);
54
- case 'gemini':
55
- return (0, gemini_1.createGeminiModel)(modelOptions);
56
- case 'ollama':
57
- return (0, openai_1.createOpenAIModel)({
58
- ...modelOptions,
59
- baseURL: options.baseURL || process.env.OLLAMA_BASE_URL || 'http://localhost:11434/v1',
60
- apiKey: options.apiKey || 'ollama',
61
- });
62
- case 'nvidia':
63
- case 'nim':
64
- return (0, openai_1.createOpenAIModel)({
65
- ...modelOptions,
66
- baseURL: options.baseURL ||
67
- process.env.NVIDIA_BASE_URL ||
68
- process.env.NIM_BASE_URL ||
69
- 'https://integrate.api.nvidia.com/v1',
70
- apiKey: options.apiKey || process.env.NVIDIA_API_KEY || process.env.NIM_API_KEY || '',
71
- });
72
- case 'groq':
73
- return (0, openai_1.createOpenAIModel)({
74
- ...modelOptions,
75
- baseURL: options.baseURL || process.env.GROQ_BASE_URL || 'https://api.groq.com/openai/v1',
76
- apiKey: options.apiKey || process.env.GROQ_API_KEY || '',
77
- });
78
- case 'mock':
79
- return (0, mock_1.createMockModel)({
80
- modelName,
81
- });
82
- default:
83
- throw new Error(`Unsupported model provider "${provider}". Supported providers: openai, anthropic, gemini, ollama, nvidia, groq, mock.`);
84
- }
85
- }
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.parseModelIdentifier = parseModelIdentifier;
4
+ exports.resolveModel = resolveModel;
5
+ const openai_1 = require("./openai");
6
+ const anthropic_1 = require("./anthropic");
7
+ const gemini_1 = require("./gemini");
8
+ const mock_1 = require("./mock");
9
+ function parseModelIdentifier(model) {
10
+ const trimmed = model.trim();
11
+ const colonIndex = trimmed.indexOf(':');
12
+ if (colonIndex !== -1) {
13
+ const provider = trimmed.slice(0, colonIndex).toLowerCase();
14
+ const modelName = trimmed.slice(colonIndex + 1);
15
+ return { provider, modelName };
16
+ }
17
+ // Heuristic guessing if prefix omitted
18
+ const lower = trimmed.toLowerCase();
19
+ if (lower.startsWith('gpt-') || lower.startsWith('o1-') || lower.startsWith('o3-')) {
20
+ return { provider: 'openai', modelName: trimmed };
21
+ }
22
+ if (lower.startsWith('claude-')) {
23
+ return { provider: 'anthropic', modelName: trimmed };
24
+ }
25
+ if (lower.startsWith('gemini-')) {
26
+ return { provider: 'gemini', modelName: trimmed };
27
+ }
28
+ if (lower.startsWith('mock')) {
29
+ return { provider: 'mock', modelName: trimmed };
30
+ }
31
+ if (lower.startsWith('llama-') || lower.startsWith('mixtral-') || lower.startsWith('gemma2-')) {
32
+ return { provider: 'groq', modelName: trimmed };
33
+ }
34
+ // Default fallback
35
+ return { provider: 'openai', modelName: trimmed };
36
+ }
37
+ function resolveModel(model, options = {}) {
38
+ if (typeof model === 'object' && model !== null && 'generateText' in model) {
39
+ return model;
40
+ }
41
+ if (typeof model !== 'string') {
42
+ throw new Error('Model must be a model string or a LanguageModel implementation');
43
+ }
44
+ const { provider, modelName } = parseModelIdentifier(model);
45
+ const modelOptions = {
46
+ model: modelName,
47
+ ...options,
48
+ };
49
+ switch (provider) {
50
+ case 'openai':
51
+ return (0, openai_1.createOpenAIModel)(modelOptions);
52
+ case 'anthropic':
53
+ return (0, anthropic_1.createAnthropicModel)(modelOptions);
54
+ case 'gemini':
55
+ return (0, gemini_1.createGeminiModel)(modelOptions);
56
+ case 'ollama':
57
+ return (0, openai_1.createOpenAIModel)({
58
+ ...modelOptions,
59
+ baseURL: options.baseURL || process.env.OLLAMA_BASE_URL || 'http://localhost:11434/v1',
60
+ apiKey: options.apiKey || 'ollama',
61
+ });
62
+ case 'nvidia':
63
+ case 'nim':
64
+ return (0, openai_1.createOpenAIModel)({
65
+ ...modelOptions,
66
+ baseURL: options.baseURL ||
67
+ process.env.NVIDIA_BASE_URL ||
68
+ process.env.NIM_BASE_URL ||
69
+ 'https://integrate.api.nvidia.com/v1',
70
+ apiKey: options.apiKey || process.env.NVIDIA_API_KEY || process.env.NIM_API_KEY || '',
71
+ });
72
+ case 'groq':
73
+ return (0, openai_1.createOpenAIModel)({
74
+ ...modelOptions,
75
+ baseURL: options.baseURL || process.env.GROQ_BASE_URL || 'https://api.groq.com/openai/v1',
76
+ apiKey: options.apiKey || process.env.GROQ_API_KEY || '',
77
+ });
78
+ case 'mock':
79
+ return (0, mock_1.createMockModel)({
80
+ modelName,
81
+ });
82
+ default:
83
+ throw new Error(`Unsupported model provider "${provider}". Supported providers: openai, anthropic, gemini, ollama, nvidia, groq, mock.`);
84
+ }
85
+ }
@@ -1 +1 @@
1
- export * from './index';
1
+ export * from './index';