@seed-ship/mcp-ui-solid 4.0.2 → 4.0.4
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/components/DataPreviewSection.cjs +160 -49
- package/dist/components/DataPreviewSection.cjs.map +1 -1
- package/dist/components/DataPreviewSection.d.ts +2 -9
- package/dist/components/DataPreviewSection.d.ts.map +1 -1
- package/dist/components/DataPreviewSection.js +162 -51
- package/dist/components/DataPreviewSection.js.map +1 -1
- package/dist/components/UIResourceRenderer.cjs +210 -171
- package/dist/components/UIResourceRenderer.cjs.map +1 -1
- package/dist/components/UIResourceRenderer.d.ts.map +1 -1
- package/dist/components/UIResourceRenderer.js +210 -171
- package/dist/components/UIResourceRenderer.js.map +1 -1
- package/dist/types/chat-bus.d.ts +7 -1
- package/dist/types/chat-bus.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/components/DataPreviewSection.tsx +133 -64
- package/src/components/UIResourceRenderer.tsx +47 -2
- package/src/types/chat-bus.ts +7 -1
- package/tsconfig.tsbuildinfo +1 -1
|
@@ -19,7 +19,7 @@ import { ExpandableWrapper } from "./ExpandableWrapper.js";
|
|
|
19
19
|
import { RenderProvider } from "./RenderContext.js";
|
|
20
20
|
import { useAction } from "../hooks/useAction.js";
|
|
21
21
|
import { marked as k } from "../node_modules/.pnpm/marked@16.4.2/node_modules/marked/lib/marked.esm.js";
|
|
22
|
-
var _tmpl$ = /* @__PURE__ */ template(`<svg class="w-3 h-3 text-gray-500 dark:text-gray-400"fill=none viewBox="0 0 24 24"stroke=currentColor><path stroke-linecap=round stroke-linejoin=round stroke-width=2 d="M8 16H6a2 2 0 01-2-2V6a2 2 0 012-2h8a2 2 0 012 2v2m-6 12h8a2 2 0 002-2v-8a2 2 0 00-2-2h-8a2 2 0 00-2 2v8a2 2 0 002 2z">`), _tmpl$2 = /* @__PURE__ */ template(`<button>`), _tmpl$3 = /* @__PURE__ */ template(`<svg class="w-3 h-3 text-green-500"fill=none viewBox="0 0 24 24"stroke=currentColor><path stroke-linecap=round stroke-linejoin=round stroke-width=2 d="M5 13l4 4L19 7">`), _tmpl$4 = /* @__PURE__ */ template(`<div class="p-4 bg-white dark:bg-gray-800 rounded-lg border border-gray-200 dark:border-gray-700"><p class="text-red-500 dark:text-red-400 text-sm">Invalid chart data: missing data.datasets`), _tmpl$5 = /* @__PURE__ */ template(`<div class="absolute inset-0 flex items-center justify-center"><div class="animate-spin rounded-full h-8 w-8 border-b-2 border-blue-600">`), _tmpl$6 = /* @__PURE__ */ template(`<div class="absolute inset-0 flex items-center justify-center p-4"><div class=text-center><p class="text-red-600 dark:text-red-400 text-sm font-medium">Chart Error</p><p class="text-gray-600 dark:text-gray-400 text-xs mt-1">`), _tmpl$7 = /* @__PURE__ */ template(`<h3 class="text-sm font-semibold text-gray-900 dark:text-white mb-3">`), _tmpl$8 = /* @__PURE__ */ template(`<div class="w-full h-full p-4"><!$><!/><div class="w-full h-full"role=img><img class="w-full h-auto max-h-[300px] object-contain">`), _tmpl$9 = /* @__PURE__ */ template(`<div class="relative w-full h-full min-h-[300px] bg-white dark:bg-gray-800 rounded-lg shadow-sm border border-gray-200 dark:border-gray-700 overflow-hidden"><!$><!/><!$><!/><!$><!/>`), _tmpl$0 = /* @__PURE__ */ template(`<tbody class="bg-white dark:bg-gray-800 divide-y divide-gray-200 dark:divide-gray-700">`), _tmpl$1 = /* @__PURE__ */ template(`<tr>`), _tmpl$10 = /* @__PURE__ */ template(`<td class="px-6 py-4 text-sm text-gray-700 dark:text-gray-200 whitespace-normal break-words leading-relaxed first:pl-6 last:pr-6"><div>`), _tmpl$11 = /* @__PURE__ */ template(`<tbody class="bg-white dark:bg-gray-800 relative">`), _tmpl$12 = /* @__PURE__ */ template(`<button class="w-full text-left px-3 py-1.5 hover:bg-gray-100 dark:hover:bg-gray-700 text-gray-700 dark:text-gray-300">Copy TSV`), _tmpl$13 = /* @__PURE__ */ template(`<button class="w-full text-left px-3 py-1.5 hover:bg-gray-100 dark:hover:bg-gray-700 text-gray-700 dark:text-gray-300">Download CSV`), _tmpl$14 = /* @__PURE__ */ template(`<button class="w-full text-left px-3 py-1.5 hover:bg-gray-100 dark:hover:bg-gray-700 text-gray-700 dark:text-gray-300">Download JSON`), _tmpl$15 = /* @__PURE__ */ template(`<div class="absolute right-0 mt-1 w-36 bg-white dark:bg-gray-800 border border-gray-200 dark:border-gray-600 rounded-lg shadow-lg py-1 text-sm"><!$><!/><!$><!/><!$><!/>`), _tmpl$16 = /* @__PURE__ */ template(`<div class="absolute right-10 top-2 z-10"><button class="opacity-60 hover:opacity-100 px-2 py-1 bg-white dark:bg-gray-800 border border-gray-200 dark:border-gray-600 rounded-full hover:bg-gray-100 dark:hover:bg-gray-700 transition-all shadow-sm"title="Export table"aria-label="Export table"><svg class="w-3 h-3 text-gray-500 dark:text-gray-400"fill=none viewBox="0 0 24 24"stroke=currentColor><path stroke-linecap=round stroke-linejoin=round stroke-width=2 d="M12 10v6m0 0l-3-3m3 3l3-3m2 8H7a2 2 0 01-2-2V5a2 2 0 012-2h5.586a1 1 0 01.707.293l5.414 5.414a1 1 0 01.293.707V19a2 2 0 01-2 2z"></path></svg></button><!$><!/>`), _tmpl$17 = /* @__PURE__ */ template(`<span class="ml-2 text-xs font-normal text-gray-400">(virtualized: <!$><!/> rows)`), _tmpl$18 = /* @__PURE__ */ template(`<h3 class="text-sm font-semibold text-gray-900 dark:text-white mb-3"><!$><!/><!$><!/>`), _tmpl$19 = /* @__PURE__ */ template(`<div class="mt-3 flex items-center justify-between text-xs text-gray-500 dark:text-gray-400"><span>Showing <!$><!/> - <!$><!/> of <!$><!/>`), _tmpl$20 = /* @__PURE__ */ template(`<div class="relative w-full h-full bg-white dark:bg-gray-800 rounded-lg shadow-sm border border-gray-200 dark:border-gray-700 overflow-hidden group"><!$><!/><div class=p-4><!$><!/><div class=overflow-x-auto role=region tabindex=0><table class="min-w-full divide-y divide-gray-200 dark:divide-gray-700 border-separate border-spacing-0"><thead class="bg-gray-50 dark:bg-gray-900/50 sticky top-0 z-10"><tr></tr></thead><!$><!/></table></div><!$><!/>`), _tmpl$21 = /* @__PURE__ */ template(`<th scope=col class="px-6 py-3 text-left text-xs font-semibold text-gray-500 dark:text-gray-400 uppercase tracking-wider border-b border-gray-200 dark:border-gray-700 first:pl-6 last:pr-6 bg-gray-50 dark:bg-gray-900/50">`), _tmpl$22 = /* @__PURE__ */ template(`<span class="ml-2 text-sm font-medium text-gray-500 dark:text-gray-400">`), _tmpl$23 = /* @__PURE__ */ template(`<div class="mt-3 flex items-center"><span><!$><!/> <!$><!/>%`), _tmpl$24 = /* @__PURE__ */ template(`<p class="mt-2 text-xs text-gray-500 dark:text-gray-400">`), _tmpl$25 = /* @__PURE__ */ template(`<div class="relative w-full h-full bg-white dark:bg-gray-800 rounded-lg shadow-sm border border-gray-200 dark:border-gray-700 p-4 group"><!$><!/><div class="flex flex-col h-full justify-between"><div><p class="text-xs font-medium text-gray-500 dark:text-gray-400 uppercase tracking-wide"></p><div class="mt-2 flex items-baseline"><p class="text-2xl font-semibold text-gray-900 dark:text-white"></p><!$><!/></div></div><!$><!/><!$><!/>`), _tmpl$26 = /* @__PURE__ */ template(`<div class="relative w-full h-full bg-white dark:bg-gray-800 rounded-lg shadow-sm border border-gray-200 dark:border-gray-700 p-4 group"><!$><!/><div>`), _tmpl$27 = /* @__PURE__ */ template(`<div class="w-full h-full bg-white dark:bg-gray-800 rounded-lg shadow-sm border border-gray-200 dark:border-gray-700 overflow-hidden flex flex-col"><div class="flex-1 flex items-center justify-center p-4 bg-gray-50 dark:bg-gray-900 min-h-[200px]"><a target=_blank rel="noopener noreferrer"class=cursor-zoom-in><img class="max-w-full max-h-[400px] object-contain rounded shadow-sm hover:opacity-90 transition-opacity"loading=lazy></a></div><div class="p-3 border-t border-gray-200 dark:border-gray-700 bg-white dark:bg-gray-800"><p class="text-sm text-gray-600 dark:text-gray-400 text-center italic">`, true, false, false), _tmpl$28 = /* @__PURE__ */ template(`<div class="px-4 py-2 border-b border-gray-200 dark:border-gray-700 bg-gray-50 dark:bg-gray-900"><h3 class="text-sm font-semibold text-gray-900 dark:text-white">`), _tmpl$29 = /* @__PURE__ */ template(`<div class="w-full h-full bg-white dark:bg-gray-800 rounded-lg shadow-sm border border-gray-200 dark:border-gray-700 overflow-hidden flex flex-col"><!$><!/><iframe class="w-full border-0 flex-1"loading=lazy>`, true, false, false), _tmpl$30 = /* @__PURE__ */ template(`<figcaption class="p-3 border-t border-gray-200 dark:border-gray-700 bg-white dark:bg-gray-800"><p class="text-sm text-gray-600 dark:text-gray-400 text-center">`), _tmpl$31 = /* @__PURE__ */ template(`<figure><div class="flex-1 flex items-center justify-center p-4 bg-gray-50 dark:bg-gray-900 min-h-[200px]"><a target=_blank rel="noopener noreferrer"class="cursor-zoom-in focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-blue-500 rounded"><img class="max-w-full max-h-[500px] object-contain rounded shadow-sm hover:opacity-95 transition-opacity"loading=lazy></a></div><!$><!/>`, true, false, false), _tmpl$32 = /* @__PURE__ */ template(`<p class="text-xs text-gray-500 dark:text-gray-400 truncate">`), _tmpl$33 = /* @__PURE__ */ template(`<a target=_blank rel="noopener noreferrer"><div class="p-2 bg-blue-50 dark:bg-blue-900/30 rounded-full text-blue-600 dark:text-blue-400 group-hover:bg-blue-100 dark:group-hover:bg-blue-900/50 shrink-0 transition-colors"aria-hidden=true><svg xmlns=http://www.w3.org/2000/svg class="w-5 h-5"viewBox="0 0 24 24"fill=none stroke=currentColor stroke-width=2 stroke-linecap=round stroke-linejoin=round><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg></div><div class="flex-1 min-w-0"><h4 class="text-sm font-medium text-gray-900 dark:text-white truncate group-hover:text-blue-600 dark:group-hover:text-blue-400 transition-colors"></h4><!$><!/></div><svg xmlns=http://www.w3.org/2000/svg class="w-4 h-4 text-gray-400 group-hover:text-gray-600 dark:group-hover:text-gray-300 shrink-0 transition-colors"viewBox="0 0 24 24"fill=none stroke=currentColor stroke-width=2 stroke-linecap=round stroke-linejoin=round aria-hidden=true><path d="M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6"></path><polyline points="15 3 21 3 21 9"></polyline><line x1=10 y1=14 x2=21 y2=3>`), _tmpl$34 = /* @__PURE__ */ template(`<div class="w-full h-full bg-red-50 dark:bg-red-900/20 border border-red-200 dark:border-red-800 rounded-lg p-4"><p class="text-sm font-medium text-red-900 dark:text-red-100">Validation Error</p><p class="text-xs text-red-700 dark:text-red-300 mt-1">`), _tmpl$35 = /* @__PURE__ */ template(`<span aria-hidden=true>`), _tmpl$36 = /* @__PURE__ */ template(`<a rel="noopener noreferrer"><!$><!/><!$><!/>`), _tmpl$37 = /* @__PURE__ */ template(`<span class="animate-spin h-4 w-4 border-2 border-current border-t-transparent rounded-full"aria-hidden=true>`), _tmpl$38 = /* @__PURE__ */ template(`<button><!$><!/><!$><!/><!$><!/>`), _tmpl$39 = /* @__PURE__ */ template(`<p class="text-xs text-red-600 dark:text-red-400 mt-1">Type: <!$><!/>`), _tmpl$40 = /* @__PURE__ */ template(`<div class=mt-3><p class="text-xs font-medium text-red-700 dark:text-red-300">Suggestions:</p><ul class="mt-1 text-xs text-red-600 dark:text-red-400 list-disc list-inside">`), _tmpl$41 = /* @__PURE__ */ template(`<p class="text-xs text-red-500 dark:text-red-500 mt-2">`), _tmpl$42 = /* @__PURE__ */ template(`<div class="relative w-full bg-red-50 dark:bg-red-900/20 border border-red-200 dark:border-red-800 rounded-lg p-4 group"><!$><!/><div class="flex items-start gap-3"><div class="p-2 bg-red-100 dark:bg-red-900/40 rounded-full shrink-0"><svg class="w-5 h-5 text-red-600 dark:text-red-400"fill=none viewBox="0 0 24 24"stroke=currentColor><path stroke-linecap=round stroke-linejoin=round stroke-width=2 d="M12 9v2m0 4h.01m-6.938 4h13.856c1.54 0 2.502-1.667 1.732-3L13.732 4c-.77-1.333-2.694-1.333-3.464 0L3.34 16c-.77 1.333.192 3 1.732 3z"></path></svg></div><div class="flex-1 min-w-0"><h4 class="text-sm font-semibold text-red-800 dark:text-red-200">Tool Error: <!$><!/></h4><p class="text-sm text-red-700 dark:text-red-300 mt-1"></p><!$><!/><!$><!/><!$><!/>`), _tmpl$43 = /* @__PURE__ */ template(`<li>`), _tmpl$44 = /* @__PURE__ */ template(`<div class="px-4 py-2 border-b border-gray-200 dark:border-gray-700 bg-gray-50 dark:bg-gray-900"><h3 class="text-sm font-semibold text-gray-900 dark:text-white capitalize">`), _tmpl$45 = /* @__PURE__ */ template(`<div class="w-full bg-white dark:bg-gray-800 rounded-lg shadow-sm border border-gray-200 dark:border-gray-700 overflow-hidden"><!$><!/><div class="p-4 prose prose-sm dark:prose-invert max-w-none">`), _tmpl$46 = /* @__PURE__ */ template(`<div><div class="grid gap-4"></div><!$><!/>`), _tmpl$47 = /* @__PURE__ */ template(`<div>`);
|
|
22
|
+
var _tmpl$ = /* @__PURE__ */ template(`<svg class="w-3 h-3 text-gray-500 dark:text-gray-400"fill=none viewBox="0 0 24 24"stroke=currentColor><path stroke-linecap=round stroke-linejoin=round stroke-width=2 d="M8 16H6a2 2 0 01-2-2V6a2 2 0 012-2h8a2 2 0 012 2v2m-6 12h8a2 2 0 002-2v-8a2 2 0 00-2-2h-8a2 2 0 00-2 2v8a2 2 0 002 2z">`), _tmpl$2 = /* @__PURE__ */ template(`<button>`), _tmpl$3 = /* @__PURE__ */ template(`<svg class="w-3 h-3 text-green-500"fill=none viewBox="0 0 24 24"stroke=currentColor><path stroke-linecap=round stroke-linejoin=round stroke-width=2 d="M5 13l4 4L19 7">`), _tmpl$4 = /* @__PURE__ */ template(`<div class="p-4 bg-white dark:bg-gray-800 rounded-lg border border-gray-200 dark:border-gray-700"><p class="text-red-500 dark:text-red-400 text-sm">Invalid chart data: missing data.datasets`), _tmpl$5 = /* @__PURE__ */ template(`<div class="absolute inset-0 flex items-center justify-center"><div class="animate-spin rounded-full h-8 w-8 border-b-2 border-blue-600">`), _tmpl$6 = /* @__PURE__ */ template(`<div class="absolute inset-0 flex items-center justify-center p-4"><div class=text-center><p class="text-red-600 dark:text-red-400 text-sm font-medium">Chart Error</p><p class="text-gray-600 dark:text-gray-400 text-xs mt-1">`), _tmpl$7 = /* @__PURE__ */ template(`<h3 class="text-sm font-semibold text-gray-900 dark:text-white mb-3">`), _tmpl$8 = /* @__PURE__ */ template(`<div class="w-full h-full p-4"><!$><!/><div class="w-full h-full"role=img><img class="w-full h-auto max-h-[300px] object-contain">`), _tmpl$9 = /* @__PURE__ */ template(`<div class="relative w-full h-full min-h-[300px] bg-white dark:bg-gray-800 rounded-lg shadow-sm border border-gray-200 dark:border-gray-700 overflow-hidden"><!$><!/><!$><!/><!$><!/>`), _tmpl$0 = /* @__PURE__ */ template(`<tbody class="bg-white dark:bg-gray-800 divide-y divide-gray-200 dark:divide-gray-700">`), _tmpl$1 = /* @__PURE__ */ template(`<tr>`), _tmpl$10 = /* @__PURE__ */ template(`<td class="px-6 py-4 text-sm text-gray-700 dark:text-gray-200 whitespace-normal break-words leading-relaxed first:pl-6 last:pr-6"><div>`), _tmpl$11 = /* @__PURE__ */ template(`<tbody class="bg-white dark:bg-gray-800 relative">`), _tmpl$12 = /* @__PURE__ */ template(`<button class="w-full text-left px-3 py-1.5 hover:bg-gray-100 dark:hover:bg-gray-700 text-gray-700 dark:text-gray-300">Copy TSV`), _tmpl$13 = /* @__PURE__ */ template(`<button class="w-full text-left px-3 py-1.5 hover:bg-gray-100 dark:hover:bg-gray-700 text-gray-700 dark:text-gray-300">Download CSV`), _tmpl$14 = /* @__PURE__ */ template(`<button class="w-full text-left px-3 py-1.5 hover:bg-gray-100 dark:hover:bg-gray-700 text-gray-700 dark:text-gray-300">Download JSON`), _tmpl$15 = /* @__PURE__ */ template(`<div class="absolute right-0 mt-1 w-36 bg-white dark:bg-gray-800 border border-gray-200 dark:border-gray-600 rounded-lg shadow-lg py-1 text-sm"><!$><!/><!$><!/><!$><!/>`), _tmpl$16 = /* @__PURE__ */ template(`<div class="absolute right-10 top-2 z-10"><button class="opacity-60 hover:opacity-100 px-2 py-1 bg-white dark:bg-gray-800 border border-gray-200 dark:border-gray-600 rounded-full hover:bg-gray-100 dark:hover:bg-gray-700 transition-all shadow-sm"title="Export table"aria-label="Export table"><svg class="w-3 h-3 text-gray-500 dark:text-gray-400"fill=none viewBox="0 0 24 24"stroke=currentColor><path stroke-linecap=round stroke-linejoin=round stroke-width=2 d="M12 10v6m0 0l-3-3m3 3l3-3m2 8H7a2 2 0 01-2-2V5a2 2 0 012-2h5.586a1 1 0 01.707.293l5.414 5.414a1 1 0 01.293.707V19a2 2 0 01-2 2z"></path></svg></button><!$><!/>`), _tmpl$17 = /* @__PURE__ */ template(`<span class="ml-2 text-xs font-normal text-gray-400">(virtualized: <!$><!/> rows)`), _tmpl$18 = /* @__PURE__ */ template(`<h3 class="text-sm font-semibold text-gray-900 dark:text-white mb-3"><!$><!/><!$><!/>`), _tmpl$19 = /* @__PURE__ */ template(`<div class="mt-3 flex items-center justify-between text-xs text-gray-500 dark:text-gray-400"><span>Showing <!$><!/> - <!$><!/> of <!$><!/>`), _tmpl$20 = /* @__PURE__ */ template(`<div class="mt-3 flex items-center justify-between text-xs text-gray-500 dark:text-gray-400"><span>Showing <!$><!/>–<!$><!/> of <!$><!/></span><div class="flex items-center gap-1"><button class="px-2 py-1 rounded hover:bg-gray-100 dark:hover:bg-gray-700 disabled:opacity-40 disabled:cursor-not-allowed transition-colors">◀ Prev</button><span class=px-2>Page <!$><!/> / <!$><!/></span><button class="px-2 py-1 rounded hover:bg-gray-100 dark:hover:bg-gray-700 disabled:opacity-40 disabled:cursor-not-allowed transition-colors">Next ▶`), _tmpl$21 = /* @__PURE__ */ template(`<div class="relative w-full h-full bg-white dark:bg-gray-800 rounded-lg shadow-sm border border-gray-200 dark:border-gray-700 overflow-hidden group"><!$><!/><div class=p-4><!$><!/><div class=overflow-x-auto role=region tabindex=0><table class="min-w-full divide-y divide-gray-200 dark:divide-gray-700 border-separate border-spacing-0"><thead class="bg-gray-50 dark:bg-gray-900/50 sticky top-0 z-10"><tr></tr></thead><!$><!/></table></div><!$><!/><!$><!/>`), _tmpl$22 = /* @__PURE__ */ template(`<th scope=col class="px-6 py-3 text-left text-xs font-semibold text-gray-500 dark:text-gray-400 uppercase tracking-wider border-b border-gray-200 dark:border-gray-700 first:pl-6 last:pr-6 bg-gray-50 dark:bg-gray-900/50">`), _tmpl$23 = /* @__PURE__ */ template(`<span class="ml-2 text-sm font-medium text-gray-500 dark:text-gray-400">`), _tmpl$24 = /* @__PURE__ */ template(`<div class="mt-3 flex items-center"><span><!$><!/> <!$><!/>%`), _tmpl$25 = /* @__PURE__ */ template(`<p class="mt-2 text-xs text-gray-500 dark:text-gray-400">`), _tmpl$26 = /* @__PURE__ */ template(`<div class="relative w-full h-full bg-white dark:bg-gray-800 rounded-lg shadow-sm border border-gray-200 dark:border-gray-700 p-4 group"><!$><!/><div class="flex flex-col h-full justify-between"><div><p class="text-xs font-medium text-gray-500 dark:text-gray-400 uppercase tracking-wide"></p><div class="mt-2 flex items-baseline"><p class="text-2xl font-semibold text-gray-900 dark:text-white"></p><!$><!/></div></div><!$><!/><!$><!/>`), _tmpl$27 = /* @__PURE__ */ template(`<div class="relative w-full h-full bg-white dark:bg-gray-800 rounded-lg shadow-sm border border-gray-200 dark:border-gray-700 p-4 group"><!$><!/><div>`), _tmpl$28 = /* @__PURE__ */ template(`<div class="w-full h-full bg-white dark:bg-gray-800 rounded-lg shadow-sm border border-gray-200 dark:border-gray-700 overflow-hidden flex flex-col"><div class="flex-1 flex items-center justify-center p-4 bg-gray-50 dark:bg-gray-900 min-h-[200px]"><a target=_blank rel="noopener noreferrer"class=cursor-zoom-in><img class="max-w-full max-h-[400px] object-contain rounded shadow-sm hover:opacity-90 transition-opacity"loading=lazy></a></div><div class="p-3 border-t border-gray-200 dark:border-gray-700 bg-white dark:bg-gray-800"><p class="text-sm text-gray-600 dark:text-gray-400 text-center italic">`, true, false, false), _tmpl$29 = /* @__PURE__ */ template(`<div class="px-4 py-2 border-b border-gray-200 dark:border-gray-700 bg-gray-50 dark:bg-gray-900"><h3 class="text-sm font-semibold text-gray-900 dark:text-white">`), _tmpl$30 = /* @__PURE__ */ template(`<div class="w-full h-full bg-white dark:bg-gray-800 rounded-lg shadow-sm border border-gray-200 dark:border-gray-700 overflow-hidden flex flex-col"><!$><!/><iframe class="w-full border-0 flex-1"loading=lazy>`, true, false, false), _tmpl$31 = /* @__PURE__ */ template(`<figcaption class="p-3 border-t border-gray-200 dark:border-gray-700 bg-white dark:bg-gray-800"><p class="text-sm text-gray-600 dark:text-gray-400 text-center">`), _tmpl$32 = /* @__PURE__ */ template(`<figure><div class="flex-1 flex items-center justify-center p-4 bg-gray-50 dark:bg-gray-900 min-h-[200px]"><a target=_blank rel="noopener noreferrer"class="cursor-zoom-in focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-blue-500 rounded"><img class="max-w-full max-h-[500px] object-contain rounded shadow-sm hover:opacity-95 transition-opacity"loading=lazy></a></div><!$><!/>`, true, false, false), _tmpl$33 = /* @__PURE__ */ template(`<p class="text-xs text-gray-500 dark:text-gray-400 truncate">`), _tmpl$34 = /* @__PURE__ */ template(`<a target=_blank rel="noopener noreferrer"><div class="p-2 bg-blue-50 dark:bg-blue-900/30 rounded-full text-blue-600 dark:text-blue-400 group-hover:bg-blue-100 dark:group-hover:bg-blue-900/50 shrink-0 transition-colors"aria-hidden=true><svg xmlns=http://www.w3.org/2000/svg class="w-5 h-5"viewBox="0 0 24 24"fill=none stroke=currentColor stroke-width=2 stroke-linecap=round stroke-linejoin=round><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg></div><div class="flex-1 min-w-0"><h4 class="text-sm font-medium text-gray-900 dark:text-white truncate group-hover:text-blue-600 dark:group-hover:text-blue-400 transition-colors"></h4><!$><!/></div><svg xmlns=http://www.w3.org/2000/svg class="w-4 h-4 text-gray-400 group-hover:text-gray-600 dark:group-hover:text-gray-300 shrink-0 transition-colors"viewBox="0 0 24 24"fill=none stroke=currentColor stroke-width=2 stroke-linecap=round stroke-linejoin=round aria-hidden=true><path d="M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6"></path><polyline points="15 3 21 3 21 9"></polyline><line x1=10 y1=14 x2=21 y2=3>`), _tmpl$35 = /* @__PURE__ */ template(`<div class="w-full h-full bg-red-50 dark:bg-red-900/20 border border-red-200 dark:border-red-800 rounded-lg p-4"><p class="text-sm font-medium text-red-900 dark:text-red-100">Validation Error</p><p class="text-xs text-red-700 dark:text-red-300 mt-1">`), _tmpl$36 = /* @__PURE__ */ template(`<span aria-hidden=true>`), _tmpl$37 = /* @__PURE__ */ template(`<a rel="noopener noreferrer"><!$><!/><!$><!/>`), _tmpl$38 = /* @__PURE__ */ template(`<span class="animate-spin h-4 w-4 border-2 border-current border-t-transparent rounded-full"aria-hidden=true>`), _tmpl$39 = /* @__PURE__ */ template(`<button><!$><!/><!$><!/><!$><!/>`), _tmpl$40 = /* @__PURE__ */ template(`<p class="text-xs text-red-600 dark:text-red-400 mt-1">Type: <!$><!/>`), _tmpl$41 = /* @__PURE__ */ template(`<div class=mt-3><p class="text-xs font-medium text-red-700 dark:text-red-300">Suggestions:</p><ul class="mt-1 text-xs text-red-600 dark:text-red-400 list-disc list-inside">`), _tmpl$42 = /* @__PURE__ */ template(`<p class="text-xs text-red-500 dark:text-red-500 mt-2">`), _tmpl$43 = /* @__PURE__ */ template(`<div class="relative w-full bg-red-50 dark:bg-red-900/20 border border-red-200 dark:border-red-800 rounded-lg p-4 group"><!$><!/><div class="flex items-start gap-3"><div class="p-2 bg-red-100 dark:bg-red-900/40 rounded-full shrink-0"><svg class="w-5 h-5 text-red-600 dark:text-red-400"fill=none viewBox="0 0 24 24"stroke=currentColor><path stroke-linecap=round stroke-linejoin=round stroke-width=2 d="M12 9v2m0 4h.01m-6.938 4h13.856c1.54 0 2.502-1.667 1.732-3L13.732 4c-.77-1.333-2.694-1.333-3.464 0L3.34 16c-.77 1.333.192 3 1.732 3z"></path></svg></div><div class="flex-1 min-w-0"><h4 class="text-sm font-semibold text-red-800 dark:text-red-200">Tool Error: <!$><!/></h4><p class="text-sm text-red-700 dark:text-red-300 mt-1"></p><!$><!/><!$><!/><!$><!/>`), _tmpl$44 = /* @__PURE__ */ template(`<li>`), _tmpl$45 = /* @__PURE__ */ template(`<div class="px-4 py-2 border-b border-gray-200 dark:border-gray-700 bg-gray-50 dark:bg-gray-900"><h3 class="text-sm font-semibold text-gray-900 dark:text-white capitalize">`), _tmpl$46 = /* @__PURE__ */ template(`<div class="w-full bg-white dark:bg-gray-800 rounded-lg shadow-sm border border-gray-200 dark:border-gray-700 overflow-hidden"><!$><!/><div class="p-4 prose prose-sm dark:prose-invert max-w-none">`), _tmpl$47 = /* @__PURE__ */ template(`<div><div class="grid gap-4"></div><!$><!/>`), _tmpl$48 = /* @__PURE__ */ template(`<div>`);
|
|
23
23
|
function CopyButton(props) {
|
|
24
24
|
const [copied, setCopied] = createSignal(false);
|
|
25
25
|
const handleCopy = async () => {
|
|
@@ -264,6 +264,19 @@ function renderCellValue(value) {
|
|
|
264
264
|
function TableRenderer(props) {
|
|
265
265
|
const tableParams = props.component.params;
|
|
266
266
|
let scrollContainerRef;
|
|
267
|
+
const clientPageSize = () => tableParams.pageSize ?? 25;
|
|
268
|
+
const hasServerPagination = () => !!tableParams.pagination;
|
|
269
|
+
const allRows = () => tableParams.rows || [];
|
|
270
|
+
const needsClientPagination = () => !hasServerPagination() && clientPageSize() > 0 && allRows().length > clientPageSize();
|
|
271
|
+
const [clientPage, setClientPage] = createSignal(tableParams.initialPage ?? 0);
|
|
272
|
+
const clientTotalPages = () => needsClientPagination() ? Math.ceil(allRows().length / clientPageSize()) : 1;
|
|
273
|
+
const clientVisibleRows = createMemo(() => {
|
|
274
|
+
if (!needsClientPagination()) return allRows();
|
|
275
|
+
const start = clientPage() * clientPageSize();
|
|
276
|
+
return allRows().slice(start, start + clientPageSize());
|
|
277
|
+
});
|
|
278
|
+
const clientRangeStart = () => needsClientPagination() ? clientPage() * clientPageSize() + 1 : 1;
|
|
279
|
+
const clientRangeEnd = () => needsClientPagination() ? Math.min((clientPage() + 1) * clientPageSize(), allRows().length) : allRows().length;
|
|
267
280
|
const [virtualizer, setVirtualizer] = createSignal(null);
|
|
268
281
|
const [isVirtualizing, setIsVirtualizing] = createSignal(false);
|
|
269
282
|
const shouldVirtualize = createMemo(() => {
|
|
@@ -384,7 +397,7 @@ ${dataRows}`;
|
|
|
384
397
|
var _el$21 = getNextElement(_tmpl$0);
|
|
385
398
|
insert(_el$21, createComponent(For, {
|
|
386
399
|
get each() {
|
|
387
|
-
return
|
|
400
|
+
return clientVisibleRows().slice(0, DEFAULT_RESOURCE_LIMITS.maxTableRows);
|
|
388
401
|
},
|
|
389
402
|
children: (row, i) => (() => {
|
|
390
403
|
var _el$22 = getNextElement(_tmpl$1);
|
|
@@ -456,7 +469,7 @@ ${dataRows}`;
|
|
|
456
469
|
},
|
|
457
470
|
copyLabel: "Copy table (TSV)",
|
|
458
471
|
get children() {
|
|
459
|
-
var _el$29 = getNextElement(_tmpl$
|
|
472
|
+
var _el$29 = getNextElement(_tmpl$21), _el$101 = _el$29.firstChild, [_el$102, _co$22] = getNextMarker(_el$101.nextSibling), _el$44 = _el$102.nextSibling, _el$95 = _el$44.firstChild, [_el$96, _co$19] = getNextMarker(_el$95.nextSibling), _el$55 = _el$96.nextSibling, _el$56 = _el$55.firstChild, _el$57 = _el$56.firstChild, _el$58 = _el$57.firstChild, _el$59 = _el$57.nextSibling, [_el$60, _co$10] = getNextMarker(_el$59.nextSibling), _el$97 = _el$55.nextSibling, [_el$98, _co$20] = getNextMarker(_el$97.nextSibling), _el$99 = _el$98.nextSibling, [_el$100, _co$21] = getNextMarker(_el$99.nextSibling);
|
|
460
473
|
insert(_el$29, createComponent(Show, {
|
|
461
474
|
when: exportable,
|
|
462
475
|
get fallback() {
|
|
@@ -514,7 +527,7 @@ ${dataRows}`;
|
|
|
514
527
|
runHydrationEvents();
|
|
515
528
|
return _el$30;
|
|
516
529
|
}
|
|
517
|
-
}), _el$
|
|
530
|
+
}), _el$102, _co$22);
|
|
518
531
|
insert(_el$44, createComponent(Show, {
|
|
519
532
|
get when() {
|
|
520
533
|
return tableParams.title;
|
|
@@ -539,7 +552,7 @@ ${dataRows}`;
|
|
|
539
552
|
}), _el$54, _co$1);
|
|
540
553
|
return _el$45;
|
|
541
554
|
}
|
|
542
|
-
}), _el$
|
|
555
|
+
}), _el$96, _co$19);
|
|
543
556
|
var _ref$ = scrollContainerRef;
|
|
544
557
|
typeof _ref$ === "function" ? use(_ref$, _el$55) : scrollContainerRef = _el$55;
|
|
545
558
|
insert(_el$58, createComponent(For, {
|
|
@@ -547,12 +560,12 @@ ${dataRows}`;
|
|
|
547
560
|
return tableParams.columns;
|
|
548
561
|
},
|
|
549
562
|
children: (column) => (() => {
|
|
550
|
-
var _el$
|
|
551
|
-
insert(_el$
|
|
552
|
-
effect((_$p) => style(_el$
|
|
563
|
+
var _el$103 = getNextElement(_tmpl$22);
|
|
564
|
+
insert(_el$103, () => column.label);
|
|
565
|
+
effect((_$p) => style(_el$103, column.width ? {
|
|
553
566
|
width: column.width
|
|
554
567
|
} : {}, _$p));
|
|
555
|
-
return _el$
|
|
568
|
+
return _el$103;
|
|
556
569
|
})()
|
|
557
570
|
}));
|
|
558
571
|
insert(_el$56, createComponent(Show, {
|
|
@@ -577,15 +590,41 @@ ${dataRows}`;
|
|
|
577
590
|
insert(_el$62, () => tableParams.pagination.totalRows, _el$73, _co$13);
|
|
578
591
|
return _el$61;
|
|
579
592
|
}
|
|
580
|
-
}), _el$
|
|
593
|
+
}), _el$98, _co$20);
|
|
594
|
+
insert(_el$44, createComponent(Show, {
|
|
595
|
+
get when() {
|
|
596
|
+
return needsClientPagination();
|
|
597
|
+
},
|
|
598
|
+
get children() {
|
|
599
|
+
var _el$74 = getNextElement(_tmpl$20), _el$75 = _el$74.firstChild, _el$76 = _el$75.firstChild, _el$79 = _el$76.nextSibling, [_el$80, _co$14] = getNextMarker(_el$79.nextSibling), _el$77 = _el$80.nextSibling, _el$81 = _el$77.nextSibling, [_el$82, _co$15] = getNextMarker(_el$81.nextSibling), _el$78 = _el$82.nextSibling, _el$83 = _el$78.nextSibling, [_el$84, _co$16] = getNextMarker(_el$83.nextSibling), _el$85 = _el$75.nextSibling, _el$86 = _el$85.firstChild, _el$87 = _el$86.nextSibling, _el$88 = _el$87.firstChild, _el$90 = _el$88.nextSibling, [_el$91, _co$17] = getNextMarker(_el$90.nextSibling), _el$89 = _el$91.nextSibling, _el$92 = _el$89.nextSibling, [_el$93, _co$18] = getNextMarker(_el$92.nextSibling), _el$94 = _el$87.nextSibling;
|
|
600
|
+
insert(_el$75, clientRangeStart, _el$80, _co$14);
|
|
601
|
+
insert(_el$75, clientRangeEnd, _el$82, _co$15);
|
|
602
|
+
insert(_el$75, () => allRows().length.toLocaleString("fr-FR"), _el$84, _co$16);
|
|
603
|
+
_el$86.$$click = () => setClientPage((p) => p - 1);
|
|
604
|
+
insert(_el$87, () => clientPage() + 1, _el$91, _co$17);
|
|
605
|
+
insert(_el$87, clientTotalPages, _el$93, _co$18);
|
|
606
|
+
_el$94.$$click = () => setClientPage((p) => p + 1);
|
|
607
|
+
effect((_p$) => {
|
|
608
|
+
var _v$8 = clientPage() === 0, _v$9 = clientPage() >= clientTotalPages() - 1;
|
|
609
|
+
_v$8 !== _p$.e && setProperty(_el$86, "disabled", _p$.e = _v$8);
|
|
610
|
+
_v$9 !== _p$.t && setProperty(_el$94, "disabled", _p$.t = _v$9);
|
|
611
|
+
return _p$;
|
|
612
|
+
}, {
|
|
613
|
+
e: void 0,
|
|
614
|
+
t: void 0
|
|
615
|
+
});
|
|
616
|
+
runHydrationEvents();
|
|
617
|
+
return _el$74;
|
|
618
|
+
}
|
|
619
|
+
}), _el$100, _co$21);
|
|
581
620
|
effect((_p$) => {
|
|
582
|
-
var _v$
|
|
621
|
+
var _v$0 = isVirtualizing() ? {
|
|
583
622
|
"max-height": "500px",
|
|
584
623
|
"overflow-y": "auto"
|
|
585
|
-
} : {}, _v$
|
|
586
|
-
_p$.e = style(_el$55, _v$
|
|
587
|
-
_v$
|
|
588
|
-
_v$
|
|
624
|
+
} : {}, _v$1 = tableParams.title || "Data table", _v$10 = tableParams.title ? `${tableId}-title` : void 0;
|
|
625
|
+
_p$.e = style(_el$55, _v$0, _p$.e);
|
|
626
|
+
_v$1 !== _p$.t && setAttribute(_el$55, "aria-label", _p$.t = _v$1);
|
|
627
|
+
_v$10 !== _p$.a && setAttribute(_el$56, "aria-labelledby", _p$.a = _v$10);
|
|
589
628
|
return _p$;
|
|
590
629
|
}, {
|
|
591
630
|
e: void 0,
|
|
@@ -605,51 +644,51 @@ function MetricRenderer(props) {
|
|
|
605
644
|
return `${title}: ${value}${unit ? " " + unit : ""}`;
|
|
606
645
|
};
|
|
607
646
|
return (() => {
|
|
608
|
-
var _el$
|
|
609
|
-
insert(_el$
|
|
647
|
+
var _el$104 = getNextElement(_tmpl$26), _el$126 = _el$104.firstChild, [_el$127, _co$28] = getNextMarker(_el$126.nextSibling), _el$105 = _el$127.nextSibling, _el$106 = _el$105.firstChild, _el$107 = _el$106.firstChild, _el$108 = _el$107.nextSibling, _el$109 = _el$108.firstChild, _el$111 = _el$109.nextSibling, [_el$112, _co$23] = getNextMarker(_el$111.nextSibling), _el$122 = _el$106.nextSibling, [_el$123, _co$26] = getNextMarker(_el$122.nextSibling), _el$124 = _el$123.nextSibling, [_el$125, _co$27] = getNextMarker(_el$124.nextSibling);
|
|
648
|
+
insert(_el$104, createComponent(CopyButton, {
|
|
610
649
|
getText: getMetricText,
|
|
611
650
|
title: "Copy metric",
|
|
612
651
|
position: "top-right"
|
|
613
|
-
}), _el$
|
|
614
|
-
insert(_el$
|
|
615
|
-
insert(_el$
|
|
616
|
-
insert(_el$
|
|
652
|
+
}), _el$127, _co$28);
|
|
653
|
+
insert(_el$107, () => metricParams.title);
|
|
654
|
+
insert(_el$109, () => metricParams.value);
|
|
655
|
+
insert(_el$108, createComponent(Show, {
|
|
617
656
|
get when() {
|
|
618
657
|
return metricParams.unit;
|
|
619
658
|
},
|
|
620
659
|
get children() {
|
|
621
|
-
var _el$
|
|
622
|
-
insert(_el$
|
|
623
|
-
return _el$
|
|
660
|
+
var _el$110 = getNextElement(_tmpl$23);
|
|
661
|
+
insert(_el$110, () => metricParams.unit);
|
|
662
|
+
return _el$110;
|
|
624
663
|
}
|
|
625
|
-
}), _el$
|
|
626
|
-
insert(_el$
|
|
664
|
+
}), _el$112, _co$23);
|
|
665
|
+
insert(_el$105, createComponent(Show, {
|
|
627
666
|
get when() {
|
|
628
667
|
return metricParams.trend;
|
|
629
668
|
},
|
|
630
669
|
get children() {
|
|
631
|
-
var _el$
|
|
632
|
-
_el$
|
|
633
|
-
insert(_el$
|
|
670
|
+
var _el$113 = getNextElement(_tmpl$24), _el$114 = _el$113.firstChild, _el$117 = _el$114.firstChild, [_el$118, _co$24] = getNextMarker(_el$117.nextSibling), _el$115 = _el$118.nextSibling, _el$119 = _el$115.nextSibling, [_el$120, _co$25] = getNextMarker(_el$119.nextSibling);
|
|
671
|
+
_el$120.nextSibling;
|
|
672
|
+
insert(_el$114, (() => {
|
|
634
673
|
var _c$ = memo(() => metricParams.trend.direction === "up");
|
|
635
674
|
return () => _c$() ? "�" : metricParams.trend.direction === "down" ? "�" : "�";
|
|
636
|
-
})(), _el$
|
|
637
|
-
insert(_el$
|
|
638
|
-
effect(() => className(_el$
|
|
639
|
-
return _el$
|
|
675
|
+
})(), _el$118, _co$24);
|
|
676
|
+
insert(_el$114, () => Math.abs(metricParams.trend.value), _el$120, _co$25);
|
|
677
|
+
effect(() => className(_el$114, `text-sm font-medium ${metricParams.trend.direction === "up" ? "text-green-600 dark:text-green-400" : metricParams.trend.direction === "down" ? "text-red-600 dark:text-red-400" : "text-gray-600 dark:text-gray-400"}`));
|
|
678
|
+
return _el$113;
|
|
640
679
|
}
|
|
641
|
-
}), _el$
|
|
642
|
-
insert(_el$
|
|
680
|
+
}), _el$123, _co$26);
|
|
681
|
+
insert(_el$105, createComponent(Show, {
|
|
643
682
|
get when() {
|
|
644
683
|
return metricParams.subtitle;
|
|
645
684
|
},
|
|
646
685
|
get children() {
|
|
647
|
-
var _el$
|
|
648
|
-
insert(_el$
|
|
649
|
-
return _el$
|
|
686
|
+
var _el$121 = getNextElement(_tmpl$25);
|
|
687
|
+
insert(_el$121, () => metricParams.subtitle);
|
|
688
|
+
return _el$121;
|
|
650
689
|
}
|
|
651
|
-
}), _el$
|
|
652
|
-
return _el$
|
|
690
|
+
}), _el$125, _co$27);
|
|
691
|
+
return _el$104;
|
|
653
692
|
})();
|
|
654
693
|
}
|
|
655
694
|
function extractImageFromMarkdown(content) {
|
|
@@ -690,62 +729,62 @@ function TextRenderer(props) {
|
|
|
690
729
|
},
|
|
691
730
|
get fallback() {
|
|
692
731
|
return (() => {
|
|
693
|
-
var _el$
|
|
694
|
-
insert(_el$
|
|
732
|
+
var _el$128 = getNextElement(_tmpl$27), _el$130 = _el$128.firstChild, [_el$131, _co$29] = getNextMarker(_el$130.nextSibling), _el$129 = _el$131.nextSibling;
|
|
733
|
+
insert(_el$128, createComponent(CopyButton, {
|
|
695
734
|
getText: getTextContent,
|
|
696
735
|
title: "Copy text",
|
|
697
736
|
position: "top-right"
|
|
698
|
-
}), _el$
|
|
737
|
+
}), _el$131, _co$29);
|
|
699
738
|
effect((_p$) => {
|
|
700
|
-
var _v$
|
|
701
|
-
_v$
|
|
702
|
-
_v$
|
|
739
|
+
var _v$11 = `prose prose-sm dark:prose-invert max-w-none ${textParams.className || ""}`, _v$12 = htmlContent();
|
|
740
|
+
_v$11 !== _p$.e && className(_el$129, _p$.e = _v$11);
|
|
741
|
+
_v$12 !== _p$.t && setProperty(_el$129, "innerHTML", _p$.t = _v$12);
|
|
703
742
|
return _p$;
|
|
704
743
|
}, {
|
|
705
744
|
e: void 0,
|
|
706
745
|
t: void 0
|
|
707
746
|
});
|
|
708
|
-
return _el$
|
|
747
|
+
return _el$128;
|
|
709
748
|
})();
|
|
710
749
|
},
|
|
711
750
|
children: (data) => (() => {
|
|
712
|
-
var _el$
|
|
713
|
-
insert(_el$
|
|
751
|
+
var _el$132 = getNextElement(_tmpl$28), _el$133 = _el$132.firstChild, _el$134 = _el$133.firstChild, _el$135 = _el$134.firstChild, _el$136 = _el$133.nextSibling, _el$137 = _el$136.firstChild;
|
|
752
|
+
insert(_el$137, () => data().credit);
|
|
714
753
|
effect((_p$) => {
|
|
715
|
-
var _v$
|
|
716
|
-
_v$
|
|
717
|
-
_v$
|
|
718
|
-
_v$
|
|
754
|
+
var _v$13 = data().linkUrl, _v$14 = data().imageUrl, _v$15 = data().alt;
|
|
755
|
+
_v$13 !== _p$.e && setAttribute(_el$134, "href", _p$.e = _v$13);
|
|
756
|
+
_v$14 !== _p$.t && setAttribute(_el$135, "src", _p$.t = _v$14);
|
|
757
|
+
_v$15 !== _p$.a && setAttribute(_el$135, "alt", _p$.a = _v$15);
|
|
719
758
|
return _p$;
|
|
720
759
|
}, {
|
|
721
760
|
e: void 0,
|
|
722
761
|
t: void 0,
|
|
723
762
|
a: void 0
|
|
724
763
|
});
|
|
725
|
-
return _el$
|
|
764
|
+
return _el$132;
|
|
726
765
|
})()
|
|
727
766
|
});
|
|
728
767
|
}
|
|
729
768
|
function IframeRenderer(props) {
|
|
730
769
|
const params = props.component.params;
|
|
731
770
|
return (() => {
|
|
732
|
-
var _el$
|
|
733
|
-
insert(_el$
|
|
771
|
+
var _el$138 = getNextElement(_tmpl$30), _el$142 = _el$138.firstChild, [_el$143, _co$30] = getNextMarker(_el$142.nextSibling), _el$141 = _el$143.nextSibling;
|
|
772
|
+
insert(_el$138, createComponent(Show, {
|
|
734
773
|
get when() {
|
|
735
774
|
return params.title;
|
|
736
775
|
},
|
|
737
776
|
get children() {
|
|
738
|
-
var _el$
|
|
739
|
-
insert(_el$
|
|
740
|
-
return _el$
|
|
777
|
+
var _el$139 = getNextElement(_tmpl$29), _el$140 = _el$139.firstChild;
|
|
778
|
+
insert(_el$140, () => params.title);
|
|
779
|
+
return _el$139;
|
|
741
780
|
}
|
|
742
|
-
}), _el$
|
|
781
|
+
}), _el$143, _co$30);
|
|
743
782
|
effect((_p$) => {
|
|
744
|
-
var _v$
|
|
745
|
-
_v$
|
|
746
|
-
_v$
|
|
747
|
-
_p$.a = style(_el$
|
|
748
|
-
_v$
|
|
783
|
+
var _v$16 = params.url, _v$17 = params.title || "Embedded content", _v$18 = `height: ${params.height || "400px"}; min-height: 300px;`, _v$19 = getIframeSandbox(params.url);
|
|
784
|
+
_v$16 !== _p$.e && setAttribute(_el$141, "src", _p$.e = _v$16);
|
|
785
|
+
_v$17 !== _p$.t && setAttribute(_el$141, "title", _p$.t = _v$17);
|
|
786
|
+
_p$.a = style(_el$141, _v$18, _p$.a);
|
|
787
|
+
_v$19 !== _p$.o && setAttribute(_el$141, "sandbox", _p$.o = _v$19);
|
|
749
788
|
return _p$;
|
|
750
789
|
}, {
|
|
751
790
|
e: void 0,
|
|
@@ -753,30 +792,30 @@ function IframeRenderer(props) {
|
|
|
753
792
|
a: void 0,
|
|
754
793
|
o: void 0
|
|
755
794
|
});
|
|
756
|
-
return _el$
|
|
795
|
+
return _el$138;
|
|
757
796
|
})();
|
|
758
797
|
}
|
|
759
798
|
function ImageRenderer(props) {
|
|
760
799
|
const params = props.component.params;
|
|
761
800
|
return (() => {
|
|
762
|
-
var _el$
|
|
763
|
-
insert(_el$
|
|
801
|
+
var _el$144 = getNextElement(_tmpl$32), _el$145 = _el$144.firstChild, _el$146 = _el$145.firstChild, _el$147 = _el$146.firstChild, _el$150 = _el$145.nextSibling, [_el$151, _co$31] = getNextMarker(_el$150.nextSibling);
|
|
802
|
+
insert(_el$144, createComponent(Show, {
|
|
764
803
|
get when() {
|
|
765
804
|
return params.caption;
|
|
766
805
|
},
|
|
767
806
|
get children() {
|
|
768
|
-
var _el$
|
|
769
|
-
insert(_el$
|
|
770
|
-
return _el$
|
|
807
|
+
var _el$148 = getNextElement(_tmpl$31), _el$149 = _el$148.firstChild;
|
|
808
|
+
insert(_el$149, () => params.caption);
|
|
809
|
+
return _el$148;
|
|
771
810
|
}
|
|
772
|
-
}), _el$
|
|
811
|
+
}), _el$151, _co$31);
|
|
773
812
|
effect((_p$) => {
|
|
774
|
-
var _v$
|
|
775
|
-
_v$
|
|
776
|
-
_v$
|
|
777
|
-
_v$
|
|
778
|
-
_v$
|
|
779
|
-
_v$
|
|
813
|
+
var _v$20 = `w-full h-full bg-white dark:bg-gray-800 rounded-lg shadow-sm border border-gray-200 dark:border-gray-700 overflow-hidden flex flex-col ${params.className || ""}`, _v$21 = params.url, _v$22 = `View full size: ${params.alt || "image"}`, _v$23 = params.url, _v$24 = params.alt || "Image";
|
|
814
|
+
_v$20 !== _p$.e && className(_el$144, _p$.e = _v$20);
|
|
815
|
+
_v$21 !== _p$.t && setAttribute(_el$146, "href", _p$.t = _v$21);
|
|
816
|
+
_v$22 !== _p$.a && setAttribute(_el$146, "aria-label", _p$.a = _v$22);
|
|
817
|
+
_v$23 !== _p$.o && setAttribute(_el$147, "src", _p$.o = _v$23);
|
|
818
|
+
_v$24 !== _p$.i && setAttribute(_el$147, "alt", _p$.i = _v$24);
|
|
780
819
|
return _p$;
|
|
781
820
|
}, {
|
|
782
821
|
e: void 0,
|
|
@@ -785,30 +824,30 @@ function ImageRenderer(props) {
|
|
|
785
824
|
o: void 0,
|
|
786
825
|
i: void 0
|
|
787
826
|
});
|
|
788
|
-
return _el$
|
|
827
|
+
return _el$144;
|
|
789
828
|
})();
|
|
790
829
|
}
|
|
791
830
|
function LinkRenderer(props) {
|
|
792
831
|
const params = props.component.params;
|
|
793
832
|
return (() => {
|
|
794
|
-
var _el$
|
|
795
|
-
_el$
|
|
796
|
-
insert(_el$
|
|
797
|
-
insert(_el$
|
|
833
|
+
var _el$152 = getNextElement(_tmpl$34), _el$153 = _el$152.firstChild, _el$154 = _el$153.nextSibling, _el$155 = _el$154.firstChild, _el$157 = _el$155.nextSibling, [_el$158, _co$32] = getNextMarker(_el$157.nextSibling);
|
|
834
|
+
_el$152.$$click = (e) => e.stopPropagation();
|
|
835
|
+
insert(_el$155, () => params.label || params.url);
|
|
836
|
+
insert(_el$154, createComponent(Show, {
|
|
798
837
|
get when() {
|
|
799
838
|
return params.description;
|
|
800
839
|
},
|
|
801
840
|
get children() {
|
|
802
|
-
var _el$
|
|
803
|
-
insert(_el$
|
|
804
|
-
return _el$
|
|
841
|
+
var _el$156 = getNextElement(_tmpl$33);
|
|
842
|
+
insert(_el$156, () => params.description);
|
|
843
|
+
return _el$156;
|
|
805
844
|
}
|
|
806
|
-
}), _el$
|
|
845
|
+
}), _el$158, _co$32);
|
|
807
846
|
effect((_p$) => {
|
|
808
|
-
var _v$
|
|
809
|
-
_v$
|
|
810
|
-
_v$
|
|
811
|
-
_v$
|
|
847
|
+
var _v$25 = params.url, _v$26 = `${params.label || "Link"}: ${params.description || params.url} (opens in new tab)`, _v$27 = `flex items-center gap-3 p-4 bg-white dark:bg-gray-800 rounded-lg shadow-sm border border-gray-200 dark:border-gray-700 hover:bg-gray-50 dark:hover:bg-gray-700 transition-colors group h-full focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-blue-500 ${params.className || ""}`;
|
|
848
|
+
_v$25 !== _p$.e && setAttribute(_el$152, "href", _p$.e = _v$25);
|
|
849
|
+
_v$26 !== _p$.t && setAttribute(_el$152, "aria-label", _p$.t = _v$26);
|
|
850
|
+
_v$27 !== _p$.a && className(_el$152, _p$.a = _v$27);
|
|
812
851
|
return _p$;
|
|
813
852
|
}, {
|
|
814
853
|
e: void 0,
|
|
@@ -816,7 +855,7 @@ function LinkRenderer(props) {
|
|
|
816
855
|
a: void 0
|
|
817
856
|
});
|
|
818
857
|
runHydrationEvents();
|
|
819
|
-
return _el$
|
|
858
|
+
return _el$152;
|
|
820
859
|
})();
|
|
821
860
|
}
|
|
822
861
|
function ComponentRenderer(props) {
|
|
@@ -830,12 +869,12 @@ function ComponentRenderer(props) {
|
|
|
830
869
|
details: validation.errors
|
|
831
870
|
});
|
|
832
871
|
return (() => {
|
|
833
|
-
var _el$
|
|
834
|
-
insert(_el$
|
|
872
|
+
var _el$159 = getNextElement(_tmpl$35), _el$160 = _el$159.firstChild, _el$161 = _el$160.nextSibling;
|
|
873
|
+
insert(_el$161, () => {
|
|
835
874
|
var _a2, _b;
|
|
836
875
|
return ((_b = (_a2 = validation.errors) == null ? void 0 : _a2[0]) == null ? void 0 : _b.message) || "Unknown validation error";
|
|
837
876
|
});
|
|
838
|
-
return _el$
|
|
877
|
+
return _el$159;
|
|
839
878
|
})();
|
|
840
879
|
}
|
|
841
880
|
return createComponent(GenerativeUIErrorBoundary, {
|
|
@@ -1081,27 +1120,27 @@ function ActionRenderer(props) {
|
|
|
1081
1120
|
const isDisabled = () => params.disabled || params.action === "tool-call" && isExecuting();
|
|
1082
1121
|
if (params.type === "link" || params.action === "link") {
|
|
1083
1122
|
return (() => {
|
|
1084
|
-
var _el$
|
|
1085
|
-
_el$
|
|
1086
|
-
insert(_el$
|
|
1123
|
+
var _el$162 = getNextElement(_tmpl$37), _el$164 = _el$162.firstChild, [_el$165, _co$33] = getNextMarker(_el$164.nextSibling), _el$166 = _el$165.nextSibling, [_el$167, _co$34] = getNextMarker(_el$166.nextSibling);
|
|
1124
|
+
_el$162.$$click = handleClick;
|
|
1125
|
+
insert(_el$162, createComponent(Show, {
|
|
1087
1126
|
get when() {
|
|
1088
1127
|
return params.icon;
|
|
1089
1128
|
},
|
|
1090
1129
|
get children() {
|
|
1091
|
-
var _el$
|
|
1092
|
-
insert(_el$
|
|
1093
|
-
return _el$
|
|
1130
|
+
var _el$163 = getNextElement(_tmpl$36);
|
|
1131
|
+
insert(_el$163, () => params.icon);
|
|
1132
|
+
return _el$163;
|
|
1094
1133
|
}
|
|
1095
|
-
}), _el$
|
|
1096
|
-
insert(_el$
|
|
1134
|
+
}), _el$165, _co$33);
|
|
1135
|
+
insert(_el$162, () => params.label, _el$167, _co$34);
|
|
1097
1136
|
effect((_p$) => {
|
|
1098
|
-
var _v$
|
|
1137
|
+
var _v$28 = params.url || "#", _v$29 = params.url ? "_blank" : void 0, _v$30 = params.ariaLabel || params.label, _v$31 = `inline-flex items-center gap-2 px-4 py-2 rounded-md text-sm font-medium transition-colors focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-blue-500
|
|
1099
1138
|
${params.variant === "primary" ? "bg-blue-600 text-white hover:bg-blue-700" : params.variant === "outline" ? "border border-gray-300 text-gray-700 hover:bg-gray-50 dark:border-gray-600 dark:text-gray-300 dark:hover:bg-gray-800" : "text-blue-600 hover:text-blue-800 dark:text-blue-400 dark:hover:text-blue-300"}
|
|
1100
1139
|
${params.className || ""}`;
|
|
1101
|
-
_v$
|
|
1102
|
-
_v$
|
|
1103
|
-
_v$
|
|
1104
|
-
_v$
|
|
1140
|
+
_v$28 !== _p$.e && setAttribute(_el$162, "href", _p$.e = _v$28);
|
|
1141
|
+
_v$29 !== _p$.t && setAttribute(_el$162, "target", _p$.t = _v$29);
|
|
1142
|
+
_v$30 !== _p$.a && setAttribute(_el$162, "aria-label", _p$.a = _v$30);
|
|
1143
|
+
_v$31 !== _p$.o && className(_el$162, _p$.o = _v$31);
|
|
1105
1144
|
return _p$;
|
|
1106
1145
|
}, {
|
|
1107
1146
|
e: void 0,
|
|
@@ -1110,42 +1149,42 @@ function ActionRenderer(props) {
|
|
|
1110
1149
|
o: void 0
|
|
1111
1150
|
});
|
|
1112
1151
|
runHydrationEvents();
|
|
1113
|
-
return _el$
|
|
1152
|
+
return _el$162;
|
|
1114
1153
|
})();
|
|
1115
1154
|
}
|
|
1116
1155
|
return (() => {
|
|
1117
|
-
var _el$
|
|
1118
|
-
_el$
|
|
1119
|
-
insert(_el$
|
|
1156
|
+
var _el$168 = getNextElement(_tmpl$39), _el$171 = _el$168.firstChild, [_el$172, _co$35] = getNextMarker(_el$171.nextSibling), _el$173 = _el$172.nextSibling, [_el$174, _co$36] = getNextMarker(_el$173.nextSibling), _el$175 = _el$174.nextSibling, [_el$176, _co$37] = getNextMarker(_el$175.nextSibling);
|
|
1157
|
+
_el$168.$$click = handleClick;
|
|
1158
|
+
insert(_el$168, createComponent(Show, {
|
|
1120
1159
|
get when() {
|
|
1121
1160
|
return memo(() => !!isExecuting())() && params.action === "tool-call";
|
|
1122
1161
|
},
|
|
1123
1162
|
get children() {
|
|
1124
|
-
return getNextElement(_tmpl$
|
|
1163
|
+
return getNextElement(_tmpl$38);
|
|
1125
1164
|
}
|
|
1126
|
-
}), _el$
|
|
1127
|
-
insert(_el$
|
|
1165
|
+
}), _el$172, _co$35);
|
|
1166
|
+
insert(_el$168, createComponent(Show, {
|
|
1128
1167
|
get when() {
|
|
1129
1168
|
return memo(() => !!params.icon)() && !(isExecuting() && params.action === "tool-call");
|
|
1130
1169
|
},
|
|
1131
1170
|
get children() {
|
|
1132
|
-
var _el$
|
|
1133
|
-
insert(_el$
|
|
1134
|
-
return _el$
|
|
1171
|
+
var _el$170 = getNextElement(_tmpl$36);
|
|
1172
|
+
insert(_el$170, () => params.icon);
|
|
1173
|
+
return _el$170;
|
|
1135
1174
|
}
|
|
1136
|
-
}), _el$
|
|
1137
|
-
insert(_el$
|
|
1175
|
+
}), _el$174, _co$36);
|
|
1176
|
+
insert(_el$168, () => params.label, _el$176, _co$37);
|
|
1138
1177
|
effect((_p$) => {
|
|
1139
|
-
var _v$
|
|
1178
|
+
var _v$32 = params.action === "submit" ? "submit" : "button", _v$33 = isDisabled(), _v$34 = isExecuting() && params.action === "tool-call", _v$35 = params.ariaLabel || params.label, _v$36 = `inline-flex items-center gap-2 px-4 py-2 rounded-md text-sm font-medium transition-colors focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-blue-500
|
|
1140
1179
|
${params.variant === "primary" ? "bg-blue-600 text-white hover:bg-blue-700 shadow-sm" : params.variant === "secondary" ? "bg-gray-100 text-gray-900 hover:bg-gray-200 dark:bg-gray-700 dark:text-white dark:hover:bg-gray-600" : params.variant === "outline" ? "border border-gray-300 text-gray-700 hover:bg-gray-50 dark:border-gray-600 dark:text-gray-300 dark:hover:bg-gray-800" : params.variant === "danger" ? "bg-red-600 text-white hover:bg-red-700" : "bg-transparent text-gray-700 hover:bg-gray-100 dark:text-gray-300 dark:hover:bg-gray-800"}
|
|
1141
1180
|
${isDisabled() ? "opacity-50 cursor-not-allowed" : ""}
|
|
1142
1181
|
${params.size === "sm" ? "px-3 py-1.5 text-xs" : params.size === "lg" ? "px-6 py-3 text-base" : ""}
|
|
1143
1182
|
${params.className || ""}`;
|
|
1144
|
-
_v$
|
|
1145
|
-
_v$
|
|
1146
|
-
_v$
|
|
1147
|
-
_v$
|
|
1148
|
-
_v$
|
|
1183
|
+
_v$32 !== _p$.e && setAttribute(_el$168, "type", _p$.e = _v$32);
|
|
1184
|
+
_v$33 !== _p$.t && setProperty(_el$168, "disabled", _p$.t = _v$33);
|
|
1185
|
+
_v$34 !== _p$.a && setAttribute(_el$168, "aria-busy", _p$.a = _v$34);
|
|
1186
|
+
_v$35 !== _p$.o && setAttribute(_el$168, "aria-label", _p$.o = _v$35);
|
|
1187
|
+
_v$36 !== _p$.i && className(_el$168, _p$.i = _v$36);
|
|
1149
1188
|
return _p$;
|
|
1150
1189
|
}, {
|
|
1151
1190
|
e: void 0,
|
|
@@ -1155,7 +1194,7 @@ function ActionRenderer(props) {
|
|
|
1155
1194
|
i: void 0
|
|
1156
1195
|
});
|
|
1157
1196
|
runHydrationEvents();
|
|
1158
|
-
return _el$
|
|
1197
|
+
return _el$168;
|
|
1159
1198
|
})();
|
|
1160
1199
|
}
|
|
1161
1200
|
function ErrorCardRenderer(props) {
|
|
@@ -1163,55 +1202,55 @@ function ErrorCardRenderer(props) {
|
|
|
1163
1202
|
return `Error in ${props.error.tool || "unknown tool"}: ${props.error.message || "Unknown error"}`;
|
|
1164
1203
|
};
|
|
1165
1204
|
return (() => {
|
|
1166
|
-
var _el$
|
|
1167
|
-
insert(_el$
|
|
1205
|
+
var _el$177 = getNextElement(_tmpl$43), _el$200 = _el$177.firstChild, [_el$201, _co$43] = getNextMarker(_el$200.nextSibling), _el$178 = _el$201.nextSibling, _el$179 = _el$178.firstChild, _el$180 = _el$179.nextSibling, _el$181 = _el$180.firstChild, _el$182 = _el$181.firstChild, _el$183 = _el$182.nextSibling, [_el$184, _co$38] = getNextMarker(_el$183.nextSibling), _el$185 = _el$181.nextSibling, _el$194 = _el$185.nextSibling, [_el$195, _co$40] = getNextMarker(_el$194.nextSibling), _el$196 = _el$195.nextSibling, [_el$197, _co$41] = getNextMarker(_el$196.nextSibling), _el$198 = _el$197.nextSibling, [_el$199, _co$42] = getNextMarker(_el$198.nextSibling);
|
|
1206
|
+
insert(_el$177, createComponent(CopyButton, {
|
|
1168
1207
|
getText: getErrorText,
|
|
1169
1208
|
title: "Copy error details",
|
|
1170
1209
|
position: "top-right"
|
|
1171
|
-
}), _el$
|
|
1172
|
-
insert(_el$
|
|
1173
|
-
insert(_el$
|
|
1174
|
-
insert(_el$
|
|
1210
|
+
}), _el$201, _co$43);
|
|
1211
|
+
insert(_el$181, () => props.error.tool || "Unknown", _el$184, _co$38);
|
|
1212
|
+
insert(_el$185, () => props.error.message || "An error occurred during tool execution");
|
|
1213
|
+
insert(_el$180, createComponent(Show, {
|
|
1175
1214
|
get when() {
|
|
1176
1215
|
return props.error.type;
|
|
1177
1216
|
},
|
|
1178
1217
|
get children() {
|
|
1179
|
-
var _el$
|
|
1180
|
-
insert(_el$
|
|
1181
|
-
return _el$
|
|
1218
|
+
var _el$186 = getNextElement(_tmpl$40), _el$187 = _el$186.firstChild, _el$188 = _el$187.nextSibling, [_el$189, _co$39] = getNextMarker(_el$188.nextSibling);
|
|
1219
|
+
insert(_el$186, () => props.error.type, _el$189, _co$39);
|
|
1220
|
+
return _el$186;
|
|
1182
1221
|
}
|
|
1183
|
-
}), _el$
|
|
1184
|
-
insert(_el$
|
|
1222
|
+
}), _el$195, _co$40);
|
|
1223
|
+
insert(_el$180, createComponent(Show, {
|
|
1185
1224
|
get when() {
|
|
1186
1225
|
var _a;
|
|
1187
1226
|
return (_a = props.error.suggestions) == null ? void 0 : _a.length;
|
|
1188
1227
|
},
|
|
1189
1228
|
get children() {
|
|
1190
|
-
var _el$
|
|
1191
|
-
insert(_el$
|
|
1229
|
+
var _el$190 = getNextElement(_tmpl$41), _el$191 = _el$190.firstChild, _el$192 = _el$191.nextSibling;
|
|
1230
|
+
insert(_el$192, createComponent(For, {
|
|
1192
1231
|
get each() {
|
|
1193
1232
|
return props.error.suggestions;
|
|
1194
1233
|
},
|
|
1195
1234
|
children: (suggestion) => (() => {
|
|
1196
|
-
var _el$
|
|
1197
|
-
insert(_el$
|
|
1198
|
-
return _el$
|
|
1235
|
+
var _el$202 = getNextElement(_tmpl$44);
|
|
1236
|
+
insert(_el$202, suggestion);
|
|
1237
|
+
return _el$202;
|
|
1199
1238
|
})()
|
|
1200
1239
|
}));
|
|
1201
|
-
return _el$
|
|
1240
|
+
return _el$190;
|
|
1202
1241
|
}
|
|
1203
|
-
}), _el$
|
|
1204
|
-
insert(_el$
|
|
1242
|
+
}), _el$197, _co$41);
|
|
1243
|
+
insert(_el$180, createComponent(Show, {
|
|
1205
1244
|
get when() {
|
|
1206
1245
|
return props.error.timestamp;
|
|
1207
1246
|
},
|
|
1208
1247
|
get children() {
|
|
1209
|
-
var _el$
|
|
1210
|
-
insert(_el$
|
|
1211
|
-
return _el$
|
|
1248
|
+
var _el$193 = getNextElement(_tmpl$42);
|
|
1249
|
+
insert(_el$193, () => new Date(props.error.timestamp).toLocaleString());
|
|
1250
|
+
return _el$193;
|
|
1212
1251
|
}
|
|
1213
|
-
}), _el$
|
|
1214
|
-
return _el$
|
|
1252
|
+
}), _el$199, _co$42);
|
|
1253
|
+
return _el$177;
|
|
1215
1254
|
})();
|
|
1216
1255
|
}
|
|
1217
1256
|
function isErrorResponse(content) {
|
|
@@ -1234,20 +1273,20 @@ function UIResourceHtmlRenderer(props) {
|
|
|
1234
1273
|
return ((_a = props.resource.metadata) == null ? void 0 : _a.title) || ((_b = props.resource.uri) == null ? void 0 : _b.replace("ui://deposium/", "")) || "Resource";
|
|
1235
1274
|
};
|
|
1236
1275
|
return (() => {
|
|
1237
|
-
var _el$
|
|
1238
|
-
insert(_el$
|
|
1276
|
+
var _el$203 = getNextElement(_tmpl$46), _el$207 = _el$203.firstChild, [_el$208, _co$44] = getNextMarker(_el$207.nextSibling), _el$206 = _el$208.nextSibling;
|
|
1277
|
+
insert(_el$203, createComponent(Show, {
|
|
1239
1278
|
get when() {
|
|
1240
1279
|
var _a;
|
|
1241
1280
|
return ((_a = props.resource.metadata) == null ? void 0 : _a.title) || props.resource.uri;
|
|
1242
1281
|
},
|
|
1243
1282
|
get children() {
|
|
1244
|
-
var _el$
|
|
1245
|
-
insert(_el$
|
|
1246
|
-
return _el$
|
|
1283
|
+
var _el$204 = getNextElement(_tmpl$45), _el$205 = _el$204.firstChild;
|
|
1284
|
+
insert(_el$205, resourceTitle);
|
|
1285
|
+
return _el$204;
|
|
1247
1286
|
}
|
|
1248
|
-
}), _el$
|
|
1249
|
-
effect(() => setProperty(_el$
|
|
1250
|
-
return _el$
|
|
1287
|
+
}), _el$208, _co$44);
|
|
1288
|
+
effect(() => setProperty(_el$206, "innerHTML", htmlContent()));
|
|
1289
|
+
return _el$203;
|
|
1251
1290
|
})();
|
|
1252
1291
|
}
|
|
1253
1292
|
const UIResourceRenderer = (props) => {
|
|
@@ -1327,24 +1366,24 @@ const UIResourceRenderer = (props) => {
|
|
|
1327
1366
|
return createComponent(RenderProvider, {
|
|
1328
1367
|
renderComponent,
|
|
1329
1368
|
get children() {
|
|
1330
|
-
var _el$
|
|
1331
|
-
insert(_el$
|
|
1369
|
+
var _el$209 = getNextElement(_tmpl$47), _el$210 = _el$209.firstChild, _el$211 = _el$210.nextSibling, [_el$212, _co$45] = getNextMarker(_el$211.nextSibling);
|
|
1370
|
+
insert(_el$210, createComponent(For, {
|
|
1332
1371
|
get each() {
|
|
1333
1372
|
return layoutData.components;
|
|
1334
1373
|
},
|
|
1335
1374
|
children: (component) => (() => {
|
|
1336
|
-
var _el$
|
|
1337
|
-
insert(_el$
|
|
1375
|
+
var _el$213 = getNextElement(_tmpl$48);
|
|
1376
|
+
insert(_el$213, createComponent(ComponentRenderer, {
|
|
1338
1377
|
component,
|
|
1339
1378
|
get onError() {
|
|
1340
1379
|
return props.onError;
|
|
1341
1380
|
}
|
|
1342
1381
|
}));
|
|
1343
|
-
effect((_$p) => style(_el$
|
|
1344
|
-
return _el$
|
|
1382
|
+
effect((_$p) => style(_el$213, getGridStyleString(component), _$p));
|
|
1383
|
+
return _el$213;
|
|
1345
1384
|
})()
|
|
1346
1385
|
}));
|
|
1347
|
-
insert(_el$
|
|
1386
|
+
insert(_el$209, createComponent(Show, {
|
|
1348
1387
|
get when() {
|
|
1349
1388
|
return shouldShowAutoFooter();
|
|
1350
1389
|
},
|
|
@@ -1355,17 +1394,17 @@ const UIResourceRenderer = (props) => {
|
|
|
1355
1394
|
}
|
|
1356
1395
|
});
|
|
1357
1396
|
}
|
|
1358
|
-
}), _el$
|
|
1397
|
+
}), _el$212, _co$45);
|
|
1359
1398
|
effect((_p$) => {
|
|
1360
|
-
var _v$
|
|
1361
|
-
_v$
|
|
1362
|
-
_p$.t = style(_el$
|
|
1399
|
+
var _v$37 = `w-full ${props.class || ""}`, _v$38 = gridContainerStyle();
|
|
1400
|
+
_v$37 !== _p$.e && className(_el$209, _p$.e = _v$37);
|
|
1401
|
+
_p$.t = style(_el$210, _v$38, _p$.t);
|
|
1363
1402
|
return _p$;
|
|
1364
1403
|
}, {
|
|
1365
1404
|
e: void 0,
|
|
1366
1405
|
t: void 0
|
|
1367
1406
|
});
|
|
1368
|
-
return _el$
|
|
1407
|
+
return _el$209;
|
|
1369
1408
|
}
|
|
1370
1409
|
});
|
|
1371
1410
|
};
|