@iblai/iblai-js 1.20.2 → 1.20.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.
|
@@ -197302,32 +197302,16 @@ function SignupButton({ authUrl, tenantKey, redirectTo, label = 'Sign Up', onCli
|
|
|
197302
197302
|
}
|
|
197303
197303
|
SignupButton.displayName = 'SignupButton';
|
|
197304
197304
|
|
|
197305
|
-
|
|
197306
|
-
|
|
197307
|
-
|
|
197308
|
-
|
|
197309
|
-
|
|
197310
|
-
|
|
197311
|
-
const handleOpenChange = (nextOpen) => {
|
|
197312
|
-
if (!nextOpen)
|
|
197313
|
-
onClose();
|
|
197314
|
-
};
|
|
197315
|
-
if (!mounted || typeof document === 'undefined') {
|
|
197316
|
-
return null;
|
|
197317
|
-
}
|
|
197318
|
-
// Nested Radix Dialog on document.body: viewport-fixed overlay + its own scroll lock,
|
|
197319
|
-
// independent of any parent modal. Requires the app to resolve the same
|
|
197320
|
-
// `@radix-ui/react-dialog` instance as this package (peer dependency + Rollup external).
|
|
197321
|
-
return (jsx(DialogPrimitive.Root, { open: open, onOpenChange: handleOpenChange, modal: true, children: jsxs(DialogPrimitive.Portal, { container: document.body, children: [jsx(DialogPrimitive.Overlay, { "data-iblai-dialog-interaction-layer": true, className: cn('pointer-events-auto fixed inset-0 z-[100] bg-black/60', 'data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0') }), jsx(DialogPrimitive.Content, { ref: setDialogPanel, "data-iblai-dialog-interaction-layer": true, ...(!description ? { 'aria-describedby': undefined } : {}), className: cn('pointer-events-auto fixed left-[50%] top-[50%] z-[100] grid w-full translate-x-[-50%] translate-y-[-50%] gap-4 border bg-background shadow-lg duration-200', 'max-h-[min(90dvh,calc(100dvh-2rem))] max-w-[calc(100vw-2rem)] overflow-y-auto overscroll-contain rounded-lg p-6 sm:rounded-lg', 'pt-[max(1.5rem,env(safe-area-inset-top))] pb-[max(1.5rem,env(safe-area-inset-bottom))]', 'pl-[max(1.5rem,env(safe-area-inset-left))] pr-[max(1.5rem,env(safe-area-inset-right))]', 'data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%]', 'focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2', className), children: jsxs(FloatingPortalContainerContext.Provider, { value: dialogPanel, children: [jsx(DialogPrimitive.Close, { type: "button", className: "absolute right-4 top-4 rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2", "aria-label": "Close", children: jsx(X$1, { className: "h-4 w-4" }) }), jsxs("div", { className: "space-y-4", children: [jsxs("div", { className: "flex flex-col space-y-1.5 pr-8 text-center sm:text-left", children: [jsx(DialogPrimitive.Title, { className: "text-lg font-semibold leading-none tracking-tight", children: title }), description ? (jsx(DialogPrimitive.Description, { className: "text-sm text-muted-foreground", children: description })) : null] }), children] })] }) })] }) }));
|
|
197322
|
-
}
|
|
197323
|
-
|
|
197324
|
-
// ── Helpers ──────────────────────────────────────────────────────────────────
|
|
197305
|
+
/**
|
|
197306
|
+
* Returns the canonical logo path and display name for an LLM provider.
|
|
197307
|
+
* `logo` is a static-root path (e.g. `/llm-amazon-provider.png`); the package
|
|
197308
|
+
* ships the canonical assets under `@iblai/web-containers/public/` — copy them
|
|
197309
|
+
* into your app's static-root (`public/` for Next.js) so the paths resolve.
|
|
197310
|
+
*/
|
|
197325
197311
|
function getLLMProviderDetails(llmProvider, llmName) {
|
|
197326
197312
|
switch (llmProvider) {
|
|
197327
197313
|
case 'groq':
|
|
197328
197314
|
return { logo: '/llm-groq-provider.png', name: 'Groq' };
|
|
197329
|
-
case 'IBLChatNvidia':
|
|
197330
|
-
return { logo: '/llm-nvidia-provider.webp', name: 'NVIDIA' };
|
|
197331
197315
|
case 'azure_openai':
|
|
197332
197316
|
return { logo: '/llm-microsoft-provider.png', name: 'Microsoft' };
|
|
197333
197317
|
case 'openai':
|
|
@@ -197342,22 +197326,48 @@ function getLLMProviderDetails(llmProvider, llmName) {
|
|
|
197342
197326
|
return { logo: '/llm-google-provider.svg', name: 'Google' };
|
|
197343
197327
|
case 'llama':
|
|
197344
197328
|
return { logo: '/llm-llama-provider.jpeg', name: 'Meta' };
|
|
197345
|
-
case 'IBLChatAnthropic':
|
|
197346
|
-
return { logo: '/llm-claude-provider.png', name: 'Anthropic' };
|
|
197347
197329
|
case 'perplexity':
|
|
197348
197330
|
return { logo: '/llm-perplexity-provider.webp', name: 'Perplexity' };
|
|
197349
197331
|
case 'deepseek':
|
|
197350
197332
|
return { logo: '/llm-deepseek-provider.png', name: 'DeepSeek' };
|
|
197351
197333
|
case 'xai':
|
|
197352
197334
|
return { logo: '/llm-xai-provider.jpg', name: 'xAI' };
|
|
197335
|
+
case 'IBLChatAnthropic':
|
|
197353
197336
|
case 'anthropic':
|
|
197354
197337
|
return { logo: '/llm-claude-provider.png', name: 'Anthropic' };
|
|
197338
|
+
case 'IBLChatNvidia':
|
|
197355
197339
|
case 'nvidia':
|
|
197356
197340
|
return { logo: '/llm-nvidia-provider.webp', name: 'NVIDIA' };
|
|
197341
|
+
case 'bedrock':
|
|
197342
|
+
case 'amazon-bedrock':
|
|
197343
|
+
case 'amazon_bedrock':
|
|
197344
|
+
case 'IBLChatBedrock':
|
|
197345
|
+
return { logo: '/llm-amazon-provider.png', name: 'Amazon' };
|
|
197357
197346
|
default:
|
|
197358
197347
|
return { logo: '/llm-generic-provider.png', name: llmProvider };
|
|
197359
197348
|
}
|
|
197360
197349
|
}
|
|
197350
|
+
|
|
197351
|
+
function OverlayModal({ open, onClose, title, description, className, children, }) {
|
|
197352
|
+
const [mounted, setMounted] = useState(false);
|
|
197353
|
+
const [dialogPanel, setDialogPanel] = useState(null);
|
|
197354
|
+
useEffect(() => {
|
|
197355
|
+
setMounted(true);
|
|
197356
|
+
}, []);
|
|
197357
|
+
const handleOpenChange = (nextOpen) => {
|
|
197358
|
+
if (!nextOpen)
|
|
197359
|
+
onClose();
|
|
197360
|
+
};
|
|
197361
|
+
if (!mounted || typeof document === 'undefined') {
|
|
197362
|
+
return null;
|
|
197363
|
+
}
|
|
197364
|
+
// Nested Radix Dialog on document.body: viewport-fixed overlay + its own scroll lock,
|
|
197365
|
+
// independent of any parent modal. Requires the app to resolve the same
|
|
197366
|
+
// `@radix-ui/react-dialog` instance as this package (peer dependency + Rollup external).
|
|
197367
|
+
return (jsx(DialogPrimitive.Root, { open: open, onOpenChange: handleOpenChange, modal: true, children: jsxs(DialogPrimitive.Portal, { container: document.body, children: [jsx(DialogPrimitive.Overlay, { "data-iblai-dialog-interaction-layer": true, className: cn('pointer-events-auto fixed inset-0 z-[100] bg-black/60', 'data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0') }), jsx(DialogPrimitive.Content, { ref: setDialogPanel, "data-iblai-dialog-interaction-layer": true, ...(!description ? { 'aria-describedby': undefined } : {}), className: cn('pointer-events-auto fixed left-[50%] top-[50%] z-[100] grid w-full translate-x-[-50%] translate-y-[-50%] gap-4 border bg-background shadow-lg duration-200', 'max-h-[min(90dvh,calc(100dvh-2rem))] max-w-[calc(100vw-2rem)] overflow-y-auto overscroll-contain rounded-lg p-6 sm:rounded-lg', 'pt-[max(1.5rem,env(safe-area-inset-top))] pb-[max(1.5rem,env(safe-area-inset-bottom))]', 'pl-[max(1.5rem,env(safe-area-inset-left))] pr-[max(1.5rem,env(safe-area-inset-right))]', 'data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%]', 'focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2', className), children: jsxs(FloatingPortalContainerContext.Provider, { value: dialogPanel, children: [jsx(DialogPrimitive.Close, { type: "button", className: "absolute right-4 top-4 rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2", "aria-label": "Close", children: jsx(X$1, { className: "h-4 w-4" }) }), jsxs("div", { className: "space-y-4", children: [jsxs("div", { className: "flex flex-col space-y-1.5 pr-8 text-center sm:text-left", children: [jsx(DialogPrimitive.Title, { className: "text-lg font-semibold leading-none tracking-tight", children: title }), description ? (jsx(DialogPrimitive.Description, { className: "text-sm text-muted-foreground", children: description })) : null] }), children] })] }) })] }) }));
|
|
197368
|
+
}
|
|
197369
|
+
|
|
197370
|
+
// ── Helpers ──────────────────────────────────────────────────────────────────
|
|
197361
197371
|
const canSwitchLLm = (llm) => {
|
|
197362
197372
|
if (llm === null || llm === void 0 ? void 0 : llm.has_credentials) {
|
|
197363
197373
|
return true;
|
|
@@ -202441,6 +202441,52 @@ var reactPaginate = {exports: {}};
|
|
|
202441
202441
|
|
|
202442
202442
|
} (reactPaginate));
|
|
202443
202443
|
|
|
202444
|
+
/**
|
|
202445
|
+
* Returns the canonical logo path and display name for an LLM provider.
|
|
202446
|
+
* `logo` is a static-root path (e.g. `/llm-amazon-provider.png`); the package
|
|
202447
|
+
* ships the canonical assets under `@iblai/web-containers/public/` — copy them
|
|
202448
|
+
* into your app's static-root (`public/` for Next.js) so the paths resolve.
|
|
202449
|
+
*/
|
|
202450
|
+
function getLLMProviderDetails(llmProvider, llmName) {
|
|
202451
|
+
switch (llmProvider) {
|
|
202452
|
+
case 'groq':
|
|
202453
|
+
return { logo: '/llm-groq-provider.png', name: 'Groq' };
|
|
202454
|
+
case 'azure_openai':
|
|
202455
|
+
return { logo: '/llm-microsoft-provider.png', name: 'Microsoft' };
|
|
202456
|
+
case 'openai':
|
|
202457
|
+
if (llmName)
|
|
202458
|
+
return { logo: '/llm-openai-provider.jpg', name: 'OpenAI' };
|
|
202459
|
+
return { logo: '/llm-openai-provider-2.svg', name: 'OpenAI' };
|
|
202460
|
+
case 'mistral':
|
|
202461
|
+
return { logo: '/llm-mistral-provider.jpeg', name: 'Mistral' };
|
|
202462
|
+
case 'google':
|
|
202463
|
+
if (llmName)
|
|
202464
|
+
return { logo: '/llm-gemini-provider.png', name: 'Google' };
|
|
202465
|
+
return { logo: '/llm-google-provider.svg', name: 'Google' };
|
|
202466
|
+
case 'llama':
|
|
202467
|
+
return { logo: '/llm-llama-provider.jpeg', name: 'Meta' };
|
|
202468
|
+
case 'perplexity':
|
|
202469
|
+
return { logo: '/llm-perplexity-provider.webp', name: 'Perplexity' };
|
|
202470
|
+
case 'deepseek':
|
|
202471
|
+
return { logo: '/llm-deepseek-provider.png', name: 'DeepSeek' };
|
|
202472
|
+
case 'xai':
|
|
202473
|
+
return { logo: '/llm-xai-provider.jpg', name: 'xAI' };
|
|
202474
|
+
case 'IBLChatAnthropic':
|
|
202475
|
+
case 'anthropic':
|
|
202476
|
+
return { logo: '/llm-claude-provider.png', name: 'Anthropic' };
|
|
202477
|
+
case 'IBLChatNvidia':
|
|
202478
|
+
case 'nvidia':
|
|
202479
|
+
return { logo: '/llm-nvidia-provider.webp', name: 'NVIDIA' };
|
|
202480
|
+
case 'bedrock':
|
|
202481
|
+
case 'amazon-bedrock':
|
|
202482
|
+
case 'amazon_bedrock':
|
|
202483
|
+
case 'IBLChatBedrock':
|
|
202484
|
+
return { logo: '/llm-amazon-provider.png', name: 'Amazon' };
|
|
202485
|
+
default:
|
|
202486
|
+
return { logo: '/llm-generic-provider.png', name: llmProvider };
|
|
202487
|
+
}
|
|
202488
|
+
}
|
|
202489
|
+
|
|
202444
202490
|
lazy(() => Promise.resolve().then(function () { return createProjectModal; }).then((mod) => ({
|
|
202445
202491
|
default: mod.CreateProjectModal,
|
|
202446
202492
|
})));
|
|
@@ -211036,52 +211082,6 @@ function AgentLLMTab({ showConfigurationHeader = true, getLLMProviderDetails, la
|
|
|
211036
211082
|
}, llms: (llmProviders !== null && llmProviders !== void 0 ? llmProviders : []), getLLMProviderDetails: getLLMProviderDetails, labels: labels.providerModal }))] }) })] }));
|
|
211037
211083
|
}
|
|
211038
211084
|
|
|
211039
|
-
/**
|
|
211040
|
-
* Returns the canonical logo path and display name for an LLM provider.
|
|
211041
|
-
* `logo` is a static-root path (e.g. `/llm-amazon-provider.png`); the package
|
|
211042
|
-
* ships the canonical assets under `@iblai/web-containers/public/` — copy them
|
|
211043
|
-
* into your app's static-root (`public/` for Next.js) so the paths resolve.
|
|
211044
|
-
*/
|
|
211045
|
-
function getLLMProviderDetails(llmProvider, llmName) {
|
|
211046
|
-
switch (llmProvider) {
|
|
211047
|
-
case 'groq':
|
|
211048
|
-
return { logo: '/llm-groq-provider.png', name: 'Groq' };
|
|
211049
|
-
case 'azure_openai':
|
|
211050
|
-
return { logo: '/llm-microsoft-provider.png', name: 'Microsoft' };
|
|
211051
|
-
case 'openai':
|
|
211052
|
-
if (llmName)
|
|
211053
|
-
return { logo: '/llm-openai-provider.jpg', name: 'OpenAI' };
|
|
211054
|
-
return { logo: '/llm-openai-provider-2.svg', name: 'OpenAI' };
|
|
211055
|
-
case 'mistral':
|
|
211056
|
-
return { logo: '/llm-mistral-provider.jpeg', name: 'Mistral' };
|
|
211057
|
-
case 'google':
|
|
211058
|
-
if (llmName)
|
|
211059
|
-
return { logo: '/llm-gemini-provider.png', name: 'Google' };
|
|
211060
|
-
return { logo: '/llm-google-provider.svg', name: 'Google' };
|
|
211061
|
-
case 'llama':
|
|
211062
|
-
return { logo: '/llm-llama-provider.jpeg', name: 'Meta' };
|
|
211063
|
-
case 'perplexity':
|
|
211064
|
-
return { logo: '/llm-perplexity-provider.webp', name: 'Perplexity' };
|
|
211065
|
-
case 'deepseek':
|
|
211066
|
-
return { logo: '/llm-deepseek-provider.png', name: 'DeepSeek' };
|
|
211067
|
-
case 'xai':
|
|
211068
|
-
return { logo: '/llm-xai-provider.jpg', name: 'xAI' };
|
|
211069
|
-
case 'IBLChatAnthropic':
|
|
211070
|
-
case 'anthropic':
|
|
211071
|
-
return { logo: '/llm-claude-provider.png', name: 'Anthropic' };
|
|
211072
|
-
case 'IBLChatNvidia':
|
|
211073
|
-
case 'nvidia':
|
|
211074
|
-
return { logo: '/llm-nvidia-provider.webp', name: 'NVIDIA' };
|
|
211075
|
-
case 'bedrock':
|
|
211076
|
-
case 'amazon-bedrock':
|
|
211077
|
-
case 'amazon_bedrock':
|
|
211078
|
-
case 'IBLChatBedrock':
|
|
211079
|
-
return { logo: '/llm-amazon-provider.png', name: 'Amazon' };
|
|
211080
|
-
default:
|
|
211081
|
-
return { logo: '/llm-generic-provider.png', name: llmProvider };
|
|
211082
|
-
}
|
|
211083
|
-
}
|
|
211084
|
-
|
|
211085
211085
|
function useTools({ labels }) {
|
|
211086
211086
|
var _a, _b;
|
|
211087
211087
|
const { tenantKey, mentorId, username } = useAgentSettings();
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@iblai/iblai-js",
|
|
3
|
-
"version": "1.20.
|
|
3
|
+
"version": "1.20.3",
|
|
4
4
|
"description": "Unified JavaScript SDK for IBL.ai — re-exports data-layer, web-containers, and web-utils under a single package",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"engines": {
|
|
@@ -68,8 +68,8 @@
|
|
|
68
68
|
"winston": "3.19.0",
|
|
69
69
|
"@iblai/data-layer": "1.8.4",
|
|
70
70
|
"@iblai/mcp": "1.7.2",
|
|
71
|
-
"@iblai/web-
|
|
72
|
-
"@iblai/web-
|
|
71
|
+
"@iblai/web-containers": "1.10.3",
|
|
72
|
+
"@iblai/web-utils": "1.11.2"
|
|
73
73
|
},
|
|
74
74
|
"peerDependencies": {
|
|
75
75
|
"@radix-ui/react-dialog": "^1.1.7",
|