@botuyo/chat-widget-standalone 1.0.57 → 1.0.60
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/Avatar3D-LfNJe183.js +9 -0
- package/dist/Avatar3D-LfNJe183.js.map +1 -0
- package/dist/botuyo-chat.es.js +18 -18
- package/dist/botuyo-chat.es.js.map +1 -1
- package/dist/botuyo-chat.umd.js +1 -1
- package/dist/botuyo-chat.umd.js.map +1 -1
- package/dist/{chunk-audio-CTtWdVDc.js → chunk-audio-CjO94O6M.js} +2 -2
- package/dist/{chunk-audio-CTtWdVDc.js.map → chunk-audio-CjO94O6M.js.map} +1 -1
- package/dist/{chunk-chat-ui-BL7xSiBM.js → chunk-chat-ui-D94hKAOR.js} +41 -41
- package/dist/chunk-chat-ui-D94hKAOR.js.map +1 -0
- package/dist/{chunk-gallery-CHapXqfB.js → chunk-gallery-54UV-aGf.js} +2 -2
- package/dist/{chunk-gallery-CHapXqfB.js.map → chunk-gallery-54UV-aGf.js.map} +1 -1
- package/dist/src/chat-widget/components/ChatWindow.d.ts +1 -3
- package/dist/src/chat-widget/components/ChatWindow.d.ts.map +1 -1
- package/dist/src/chat-widget/components/ChatWindow.stories.d.ts +0 -4
- package/dist/src/chat-widget/components/ChatWindow.stories.d.ts.map +1 -1
- package/dist/src/chat-widget/components/VoiceCallOverlay.d.ts.map +1 -1
- package/dist/src/chat-widget/hooks/useWidgetTheme.d.ts +1 -1
- package/dist/src/chat-widget/hooks/useWidgetTheme.d.ts.map +1 -1
- package/dist/src/chat-widget/types/index.d.ts +9 -11
- package/dist/src/chat-widget/types/index.d.ts.map +1 -1
- package/dist/src/chat-widget/utils/theme.d.ts +9 -3
- package/dist/src/chat-widget/utils/theme.d.ts.map +1 -1
- package/dist/src/chat-widget/utils/theme.examples.d.ts +2 -2
- package/dist/src/chat-widget/utils/theme.examples.d.ts.map +1 -1
- package/dist/standalone.d.ts.map +1 -1
- package/dist/stats-umd.html +1 -1
- package/dist/stats.html +1 -1
- package/package.json +1 -1
- package/dist/Avatar3D-B2RkgErq.js +0 -9
- package/dist/Avatar3D-B2RkgErq.js.map +0 -1
- package/dist/chunk-chat-ui-BL7xSiBM.js.map +0 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{jsx as e,jsxs as r,Fragment as a}from"react/jsx-runtime";import{memo as o,useState as t,useEffect as l,useRef as s}from"react";import{u as n,c as i,Z as c,b as d,d as h,X as u}from"./chunk-chat-ui-
|
|
1
|
+
import{jsx as e,jsxs as r,Fragment as a}from"react/jsx-runtime";import{memo as o,useState as t,useEffect as l,useRef as s}from"react";import{u as n,c as i,Z as c,b as d,d as h,X as u}from"./chunk-chat-ui-D94hKAOR.js";const m=o(function({images:o,radius:l="rounded-lg"}){const{t:s}=n("extracted"),[u,m]=t(0),[g,p]=t(!1),v=()=>{m(e=>(e+1)%o.length)},f=()=>{m(e=>(e-1+o.length)%o.length)},w=e=>{m(e),p(!0)},[k,x]=t(/* @__PURE__ */new Set),y=e=>{x(r=>new Set(r).add(e))};return 1===o.length?/* @__PURE__ */e("div",{className:"my-3 relative group",children:k.has(0)?/* @__PURE__ */r("div",{className:i("w-full h-48 flex flex-col items-center justify-center","border bg-muted text-muted-foreground",l),style:{borderColor:"hsl(var(--border))"},children:[
|
|
2
2
|
/* @__PURE__ */e("svg",{className:"w-12 h-12 mb-2 opacity-50",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:/* @__PURE__ */e("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M4 16l4.586-4.586a2 2 0 012.828 0L16 16m-2-2l1.586-1.586a2 2 0 012.828 0L20 14m-6-6h.01M6 20h12a2 2 0 002-2V6a2 2 0 00-2-2H6a2 2 0 00-2 2v12a2 2 0 002 2z"})}),
|
|
3
3
|
/* @__PURE__ */e("span",{className:"text-sm",children:"Imagen no disponible"})]}):/* @__PURE__ */r(a,{children:[
|
|
4
4
|
/* @__PURE__ */e("img",{src:o[0].src,alt:o[0].alt||"Imagen",className:i("w-full h-auto object-cover cursor-pointer transition-all duration-300","border shadow-soft-md hover:shadow-soft-lg hover:scale-[1.02]",l),style:{borderColor:"hsl(var(--border))"},loading:"lazy",onClick:()=>w(0),onError:()=>y(0)}),
|
|
@@ -21,4 +21,4 @@ return r("div",{className:"absolute inset-0 z-[100000] bg-black/95 backdrop-blur
|
|
|
21
21
|
/* @__PURE__ */e("button",{onClick:e=>{e.stopPropagation(),b()},className:"absolute left-4 bg-white/10 hover:bg-white/20 p-3 rounded-full transition-all hover:scale-110 active:scale-95 z-10","aria-label":"Anterior",children:/* @__PURE__ */e(d,{size:32,className:"text-white"})}),
|
|
22
22
|
/* @__PURE__ */e("button",{onClick:e=>{e.stopPropagation(),m()},className:"absolute right-4 bg-white/10 hover:bg-white/20 p-3 rounded-full transition-all hover:scale-110 active:scale-95 z-10","aria-label":"Siguiente",children:/* @__PURE__ */e(h,{size:32,className:"text-white"})})]}),
|
|
23
23
|
/* @__PURE__ */e("img",{src:o[t].src,alt:o[t].alt||`Imagen ${t+1}`,className:"max-w-[90%] max-h-[85%] object-contain",onClick:e=>e.stopPropagation()}),o.length>1&&/* @__PURE__ */e("div",{className:"absolute bottom-4 left-1/2 -translate-x-1/2 flex gap-2 bg-black/50 backdrop-blur-sm px-3 py-2 rounded-full z-10",children:o.map((r,a)=>/* @__PURE__ */e("button",{onClick:e=>{e.stopPropagation();const r=a-t;if(r>0)for(let a=0;a<r;a++)m();if(r<0)for(let a=0;a<Math.abs(r);a++)b()},className:i("w-2 h-2 rounded-full transition-all",a===t?"bg-white scale-125":"bg-white/40 hover:bg-white/60"),"aria-label":`Imagen ${a+1}`},a))})]})}export{m as Gallery};
|
|
24
|
-
//# sourceMappingURL=chunk-gallery-
|
|
24
|
+
//# sourceMappingURL=chunk-gallery-54UV-aGf.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chunk-gallery-CHapXqfB.js","sources":["../src/chat-widget/components/Gallery.tsx"],"sourcesContent":["/**\r\n * @package @botuyo/chat-widget\r\n * Gallery - Componente visual para mostrar galerías de imágenes\r\n */\r\n\r\n'use client'\r\n\r\nimport { useState, memo, useRef, useEffect } from 'react'\r\nimport { useTranslations } from '@/chat-widget/i18n'\r\nimport { ChevronLeft, ChevronRight, X, ZoomIn } from './Icons'\r\nimport { cn } from '@/lib/utils'\r\n\r\ninterface GalleryProps {\r\n images: Array<{ src: string; alt?: string }>\r\n radius?: string\r\n}\r\n\r\nexport type { GalleryProps }\r\n\r\nexport const Gallery = memo(function Gallery({ images, radius = 'rounded-lg' }: GalleryProps) {\r\n const { t } = useTranslations('extracted')\r\n const [currentIndex, setCurrentIndex] = useState(0)\r\n const [isLightboxOpen, setIsLightboxOpen] = useState(false)\r\n\r\n const nextImage = () => {\r\n setCurrentIndex(prev => (prev + 1) % images.length)\r\n }\r\n\r\n const prevImage = () => {\r\n setCurrentIndex(prev => (prev - 1 + images.length) % images.length)\r\n }\r\n\r\n const openLightbox = (index: number) => {\r\n setCurrentIndex(index)\r\n setIsLightboxOpen(true)\r\n }\r\n\r\n const [imageError, setImageError] = useState<Set<number>>(new Set())\r\n\r\n const handleImageError = (index: number) => {\r\n setImageError(prev => new Set(prev).add(index))\r\n }\r\n\r\n // Si solo hay 1 imagen, mostrar como imagen simple\r\n if (images.length === 1) {\r\n return (\r\n <div className=\"my-3 relative group\">\r\n {imageError.has(0) ? (\r\n <div\r\n className={cn(\r\n 'w-full h-48 flex flex-col items-center justify-center',\r\n 'border bg-muted text-muted-foreground',\r\n radius\r\n )}\r\n style={{ borderColor: 'hsl(var(--border))' }}\r\n >\r\n <svg\r\n className=\"w-12 h-12 mb-2 opacity-50\"\r\n fill=\"none\"\r\n stroke=\"currentColor\"\r\n viewBox=\"0 0 24 24\"\r\n >\r\n <path\r\n strokeLinecap=\"round\"\r\n strokeLinejoin=\"round\"\r\n strokeWidth={2}\r\n d=\"M4 16l4.586-4.586a2 2 0 012.828 0L16 16m-2-2l1.586-1.586a2 2 0 012.828 0L20 14m-6-6h.01M6 20h12a2 2 0 002-2V6a2 2 0 00-2-2H6a2 2 0 00-2 2v12a2 2 0 002 2z\"\r\n />\r\n </svg>\r\n <span className=\"text-sm\">Imagen no disponible</span>\r\n </div>\r\n ) : (\r\n <>\r\n <img\r\n src={images[0].src}\r\n alt={images[0].alt || 'Imagen'}\r\n className={cn(\r\n 'w-full h-auto object-cover cursor-pointer transition-all duration-300',\r\n 'border shadow-soft-md hover:shadow-soft-lg hover:scale-[1.02]',\r\n radius\r\n )}\r\n style={{ borderColor: 'hsl(var(--border))' }}\r\n loading=\"lazy\"\r\n onClick={() => openLightbox(0)}\r\n onError={() => handleImageError(0)}\r\n />\r\n <div className=\"absolute top-2 right-2 bg-black/50 backdrop-blur-sm p-1.5 rounded-full opacity-0 group-hover:opacity-100 transition-opacity\">\r\n <ZoomIn size={16} className=\"text-white\" />\r\n </div>\r\n </>\r\n )}\r\n </div>\r\n )\r\n }\r\n\r\n // Si hay 2-3 imágenes, mostrar grid horizontal\r\n if (images.length <= 3) {\r\n return (\r\n <div className={cn('my-3 grid gap-2', images.length === 2 ? 'grid-cols-2' : 'grid-cols-3')}>\r\n {images.map((img, idx) => (\r\n <div key={idx} className=\"relative group overflow-hidden\">\r\n {imageError.has(idx) ? (\r\n <div\r\n className={cn(\r\n 'w-full h-32 flex flex-col items-center justify-center',\r\n 'border bg-muted text-muted-foreground',\r\n radius\r\n )}\r\n >\r\n <svg\r\n className=\"w-8 h-8 opacity-50\"\r\n fill=\"none\"\r\n stroke=\"currentColor\"\r\n viewBox=\"0 0 24 24\"\r\n >\r\n <path\r\n strokeLinecap=\"round\"\r\n strokeLinejoin=\"round\"\r\n strokeWidth={2}\r\n d=\"M4 16l4.586-4.586a2 2 0 012.828 0L16 16m-2-2l1.586-1.586a2 2 0 012.828 0L20 14m-6-6h.01M6 20h12a2 2 0 002-2V6a2 2 0 00-2-2H6a2 2 0 00-2 2v12a2 2 0 002 2z\"\r\n />\r\n </svg>\r\n </div>\r\n ) : (\r\n <>\r\n <img\r\n src={img.src}\r\n alt={img.alt || `Imagen ${idx + 1}`}\r\n className={cn(\r\n 'w-full h-32 object-cover cursor-pointer transition-all duration-300',\r\n 'border border-border shadow-soft-md hover:shadow-soft-lg hover:scale-110',\r\n radius\r\n )}\r\n loading=\"lazy\"\r\n onClick={() => openLightbox(idx)}\r\n onError={() => handleImageError(idx)}\r\n />\r\n <div className=\"absolute inset-0 bg-gradient-to-t from-black/40 to-transparent opacity-0 group-hover:opacity-100 transition-opacity flex items-end justify-end p-2\">\r\n <span className=\"text-white text-xs font-bold bg-black/50 backdrop-blur-sm px-2 py-1 rounded-full\">\r\n {idx + 1}/{images.length}\r\n </span>\r\n </div>\r\n </>\r\n )}\r\n </div>\r\n ))}\r\n\r\n {/* Lightbox */}\r\n {isLightboxOpen && (\r\n <Lightbox\r\n images={images}\r\n currentIndex={currentIndex}\r\n onClose={() => setIsLightboxOpen(false)}\r\n onNext={nextImage}\r\n onPrev={prevImage}\r\n />\r\n )}\r\n </div>\r\n )\r\n }\r\n\r\n // Si hay 4+ imágenes, mostrar carrusel con thumbnails\r\n return (\r\n <div className=\"my-3 space-y-2\">\r\n {/* Imagen Principal */}\r\n <div className=\"relative group\">\r\n {imageError.has(currentIndex) ? (\r\n <div\r\n className={cn(\r\n 'w-full h-56 flex flex-col items-center justify-center',\r\n 'border bg-muted text-muted-foreground',\r\n radius\r\n )}\r\n style={{ borderColor: 'hsl(var(--border))' }}\r\n >\r\n <svg\r\n className=\"w-12 h-12 mb-2 opacity-50\"\r\n fill=\"none\"\r\n stroke=\"currentColor\"\r\n viewBox=\"0 0 24 24\"\r\n >\r\n <path\r\n strokeLinecap=\"round\"\r\n strokeLinejoin=\"round\"\r\n strokeWidth={2}\r\n d=\"M4 16l4.586-4.586a2 2 0 012.828 0L16 16m-2-2l1.586-1.586a2 2 0 012.828 0L20 14m-6-6h.01M6 20h12a2 2 0 002-2V6a2 2 0 00-2-2H6a2 2 0 00-2 2v12a2 2 0 002 2z\"\r\n />\r\n </svg>\r\n <span className=\"text-sm\">Imagen no disponible</span>\r\n </div>\r\n ) : (\r\n <>\r\n <img\r\n src={images[currentIndex].src}\r\n alt={images[currentIndex].alt || `Imagen ${currentIndex + 1}`}\r\n className={cn(\r\n 'w-full h-56 object-cover cursor-pointer transition-all duration-300',\r\n 'border shadow-soft-md',\r\n radius\r\n )}\r\n style={{ borderColor: 'hsl(var(--border))' }}\r\n loading=\"lazy\"\r\n onClick={() => openLightbox(currentIndex)}\r\n onError={() => handleImageError(currentIndex)}\r\n />\r\n\r\n {/* Overlay con controles */}\r\n <div className=\"absolute inset-0 bg-gradient-to-t from-black/60 via-transparent to-black/20 opacity-0 group-hover:opacity-100 transition-opacity flex items-center justify-between px-3\">\r\n <button\r\n onClick={prevImage}\r\n className=\"p-2 rounded-full shadow-soft-lg transition-all hover:scale-110 active:scale-95\"\r\n style={{\r\n backgroundColor: 'hsl(var(--card) / 0.9)',\r\n color: 'hsl(var(--foreground))',\r\n }}\r\n aria-label={t('anterior')}\r\n >\r\n <ChevronLeft size={20} />\r\n </button>\r\n <button\r\n onClick={nextImage}\r\n className=\"p-2 rounded-full shadow-soft-lg transition-all hover:scale-110 active:scale-95\"\r\n style={{\r\n backgroundColor: 'hsl(var(--card) / 0.9)',\r\n color: 'hsl(var(--foreground))',\r\n }}\r\n aria-label={t('siguiente')}\r\n >\r\n <ChevronRight size={20} />\r\n </button>\r\n </div>\r\n\r\n {/* Badge con contador */}\r\n <div className=\"absolute top-3 right-3 bg-black/70 backdrop-blur-sm px-3 py-1 rounded-full\">\r\n <span className=\"text-white text-xs font-bold\">\r\n {currentIndex + 1} / {images.length}\r\n </span>\r\n </div>\r\n\r\n {/* Icono de zoom */}\r\n <div className=\"absolute bottom-3 right-3 bg-black/70 backdrop-blur-sm p-2 rounded-full opacity-0 group-hover:opacity-100 transition-opacity\">\r\n <ZoomIn size={16} className=\"text-white\" />\r\n </div>\r\n </>\r\n )}\r\n </div>\r\n\r\n {/* Thumbnails */}\r\n <div className=\"flex gap-2 overflow-x-auto pb-2 scrollbar-thin scrollbar-thumb-border scrollbar-track-transparent\">\r\n {images.map((img, idx) => (\r\n <button\r\n key={idx}\r\n onClick={() => setCurrentIndex(idx)}\r\n className={cn(\r\n 'flex-shrink-0 w-16 h-16 overflow-hidden transition-all duration-300 relative',\r\n 'border-2 hover:scale-110',\r\n radius,\r\n currentIndex === idx\r\n ? 'border-[hsl(210,90%,50%)] ring-2 ring-[hsl(210,90%,50%)]/30 scale-105'\r\n : 'border-border hover:border-[hsl(210,90%,70%)] opacity-70 hover:opacity-100'\r\n )}\r\n >\r\n {imageError.has(idx) ? (\r\n <div className=\"w-full h-full flex items-center justify-center bg-muted\">\r\n <svg\r\n className=\"w-6 h-6 opacity-50\"\r\n fill=\"none\"\r\n stroke=\"currentColor\"\r\n viewBox=\"0 0 24 24\"\r\n >\r\n <path\r\n strokeLinecap=\"round\"\r\n strokeLinejoin=\"round\"\r\n strokeWidth={2}\r\n d=\"M4 16l4.586-4.586a2 2 0 012.828 0L16 16m-2-2l1.586-1.586a2 2 0 012.828 0L20 14m-6-6h.01M6 20h12a2 2 0 002-2V6a2 2 0 00-2-2H6a2 2 0 00-2 2v12a2 2 0 002 2z\"\r\n />\r\n </svg>\r\n </div>\r\n ) : (\r\n <img\r\n src={img.src}\r\n alt={img.alt || `Thumbnail ${idx + 1}`}\r\n className=\"w-full h-full object-cover\"\r\n loading=\"lazy\"\r\n onError={() => handleImageError(idx)}\r\n />\r\n )}\r\n </button>\r\n ))}\r\n </div>\r\n\r\n {/* Lightbox */}\r\n {isLightboxOpen && (\r\n <Lightbox\r\n images={images}\r\n currentIndex={currentIndex}\r\n onClose={() => setIsLightboxOpen(false)}\r\n onNext={nextImage}\r\n onPrev={prevImage}\r\n />\r\n )}\r\n </div>\r\n )\r\n})\r\n\r\n// ==========================================\r\n// 🔍 LIGHTBOX (Modal de Imagen)\r\n// ==========================================\r\n\r\ninterface LightboxProps {\r\n images: Array<{ src: string; alt?: string }>\r\n currentIndex: number\r\n onClose: () => void\r\n onNext: () => void\r\n onPrev: () => void\r\n}\r\n\r\nfunction Lightbox({ images, currentIndex, onClose, onNext, onPrev }: LightboxProps) {\r\n const { t } = useTranslations('extracted')\r\n\r\n // Keyboard navigation\r\n useEffect(() => {\r\n const handler = (e: KeyboardEvent) => {\r\n if (e.key === 'Escape') onClose()\r\n if (e.key === 'ArrowLeft') onPrev()\r\n if (e.key === 'ArrowRight') onNext()\r\n }\r\n window.addEventListener('keydown', handler)\r\n return () => window.removeEventListener('keydown', handler)\r\n }, [onClose, onPrev, onNext])\r\n\r\n // Touch swipe support\r\n const touchStartX = useRef(0)\r\n const handleTouchStart = (e: React.TouchEvent) => {\r\n touchStartX.current = e.touches[0].clientX\r\n }\r\n const handleTouchEnd = (e: React.TouchEvent) => {\r\n const dx = e.changedTouches[0].clientX - touchStartX.current\r\n if (Math.abs(dx) > 50) {\r\n dx > 0 ? onPrev() : onNext()\r\n }\r\n }\r\n\r\n return (\r\n <div\r\n className=\"absolute inset-0 z-[100000] bg-black/95 backdrop-blur-sm flex items-center justify-center animate-in fade-in duration-200\"\r\n onClick={onClose}\r\n onTouchStart={handleTouchStart}\r\n onTouchEnd={handleTouchEnd}\r\n >\r\n {/* Botón Cerrar */}\r\n <button\r\n onClick={onClose}\r\n className=\"absolute top-4 right-4 bg-white/10 hover:bg-white/20 p-2 rounded-full transition-all hover:scale-110 active:scale-95 z-10\"\r\n aria-label={t('cerrar')}\r\n >\r\n <X size={24} className=\"text-white\" />\r\n </button>\r\n\r\n {/* Contador */}\r\n <div className=\"absolute top-4 left-4 bg-white/10 backdrop-blur-sm px-4 py-2 rounded-full z-10\">\r\n <span className=\"text-white text-sm font-bold\">\r\n {currentIndex + 1} / {images.length}\r\n </span>\r\n </div>\r\n\r\n {/* Controles de Navegación */}\r\n {images.length > 1 && (\r\n <>\r\n <button\r\n onClick={e => {\r\n e.stopPropagation()\r\n onPrev()\r\n }}\r\n className=\"absolute left-4 bg-white/10 hover:bg-white/20 p-3 rounded-full transition-all hover:scale-110 active:scale-95 z-10\"\r\n aria-label=\"Anterior\"\r\n >\r\n <ChevronLeft size={32} className=\"text-white\" />\r\n </button>\r\n <button\r\n onClick={e => {\r\n e.stopPropagation()\r\n onNext()\r\n }}\r\n className=\"absolute right-4 bg-white/10 hover:bg-white/20 p-3 rounded-full transition-all hover:scale-110 active:scale-95 z-10\"\r\n aria-label=\"Siguiente\"\r\n >\r\n <ChevronRight size={32} className=\"text-white\" />\r\n </button>\r\n </>\r\n )}\r\n\r\n {/* Imagen */}\r\n <img\r\n src={images[currentIndex].src}\r\n alt={images[currentIndex].alt || `Imagen ${currentIndex + 1}`}\r\n className=\"max-w-[90%] max-h-[85%] object-contain\"\r\n onClick={e => e.stopPropagation()}\r\n />\r\n\r\n {/* Thumbnails strip */}\r\n {images.length > 1 && (\r\n <div className=\"absolute bottom-4 left-1/2 -translate-x-1/2 flex gap-2 bg-black/50 backdrop-blur-sm px-3 py-2 rounded-full z-10\">\r\n {images.map((_, idx) => (\r\n <button\r\n key={idx}\r\n onClick={e => {\r\n e.stopPropagation()\r\n // Navigate to this index — use repeated prev/next to reach\r\n const diff = idx - currentIndex\r\n if (diff > 0) for (let i = 0; i < diff; i++) onNext()\r\n if (diff < 0) for (let i = 0; i < Math.abs(diff); i++) onPrev()\r\n }}\r\n className={cn(\r\n 'w-2 h-2 rounded-full transition-all',\r\n idx === currentIndex ? 'bg-white scale-125' : 'bg-white/40 hover:bg-white/60'\r\n )}\r\n aria-label={`Imagen ${idx + 1}`}\r\n />\r\n ))}\r\n </div>\r\n )}\r\n </div>\r\n )\r\n}\r\n"],"names":["Gallery","memo","images","radius","t","useTranslations","currentIndex","setCurrentIndex","useState","isLightboxOpen","setIsLightboxOpen","nextImage","prev","length","prevImage","openLightbox","index","imageError","setImageError","Set","handleImageError","add","className","children","has","jsxs","cn","style","borderColor","jsx","fill","stroke","viewBox","strokeLinecap","strokeLinejoin","strokeWidth","d","Fragment","src","alt","loading","onClick","onError","ZoomIn","size","map","img","idx","Lightbox","onClose","onNext","onPrev","backgroundColor","color","ChevronLeft","ChevronRight","useEffect","handler","e","key","window","addEventListener","removeEventListener","touchStartX","useRef","onTouchStart","current","touches","clientX","onTouchEnd","dx","changedTouches","Math","abs","X","stopPropagation","_","diff","i"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"chunk-gallery-54UV-aGf.js","sources":["../src/chat-widget/components/Gallery.tsx"],"sourcesContent":["/**\r\n * @package @botuyo/chat-widget\r\n * Gallery - Componente visual para mostrar galerías de imágenes\r\n */\r\n\r\n'use client'\r\n\r\nimport { useState, memo, useRef, useEffect } from 'react'\r\nimport { useTranslations } from '@/chat-widget/i18n'\r\nimport { ChevronLeft, ChevronRight, X, ZoomIn } from './Icons'\r\nimport { cn } from '@/lib/utils'\r\n\r\ninterface GalleryProps {\r\n images: Array<{ src: string; alt?: string }>\r\n radius?: string\r\n}\r\n\r\nexport type { GalleryProps }\r\n\r\nexport const Gallery = memo(function Gallery({ images, radius = 'rounded-lg' }: GalleryProps) {\r\n const { t } = useTranslations('extracted')\r\n const [currentIndex, setCurrentIndex] = useState(0)\r\n const [isLightboxOpen, setIsLightboxOpen] = useState(false)\r\n\r\n const nextImage = () => {\r\n setCurrentIndex(prev => (prev + 1) % images.length)\r\n }\r\n\r\n const prevImage = () => {\r\n setCurrentIndex(prev => (prev - 1 + images.length) % images.length)\r\n }\r\n\r\n const openLightbox = (index: number) => {\r\n setCurrentIndex(index)\r\n setIsLightboxOpen(true)\r\n }\r\n\r\n const [imageError, setImageError] = useState<Set<number>>(new Set())\r\n\r\n const handleImageError = (index: number) => {\r\n setImageError(prev => new Set(prev).add(index))\r\n }\r\n\r\n // Si solo hay 1 imagen, mostrar como imagen simple\r\n if (images.length === 1) {\r\n return (\r\n <div className=\"my-3 relative group\">\r\n {imageError.has(0) ? (\r\n <div\r\n className={cn(\r\n 'w-full h-48 flex flex-col items-center justify-center',\r\n 'border bg-muted text-muted-foreground',\r\n radius\r\n )}\r\n style={{ borderColor: 'hsl(var(--border))' }}\r\n >\r\n <svg\r\n className=\"w-12 h-12 mb-2 opacity-50\"\r\n fill=\"none\"\r\n stroke=\"currentColor\"\r\n viewBox=\"0 0 24 24\"\r\n >\r\n <path\r\n strokeLinecap=\"round\"\r\n strokeLinejoin=\"round\"\r\n strokeWidth={2}\r\n d=\"M4 16l4.586-4.586a2 2 0 012.828 0L16 16m-2-2l1.586-1.586a2 2 0 012.828 0L20 14m-6-6h.01M6 20h12a2 2 0 002-2V6a2 2 0 00-2-2H6a2 2 0 00-2 2v12a2 2 0 002 2z\"\r\n />\r\n </svg>\r\n <span className=\"text-sm\">Imagen no disponible</span>\r\n </div>\r\n ) : (\r\n <>\r\n <img\r\n src={images[0].src}\r\n alt={images[0].alt || 'Imagen'}\r\n className={cn(\r\n 'w-full h-auto object-cover cursor-pointer transition-all duration-300',\r\n 'border shadow-soft-md hover:shadow-soft-lg hover:scale-[1.02]',\r\n radius\r\n )}\r\n style={{ borderColor: 'hsl(var(--border))' }}\r\n loading=\"lazy\"\r\n onClick={() => openLightbox(0)}\r\n onError={() => handleImageError(0)}\r\n />\r\n <div className=\"absolute top-2 right-2 bg-black/50 backdrop-blur-sm p-1.5 rounded-full opacity-0 group-hover:opacity-100 transition-opacity\">\r\n <ZoomIn size={16} className=\"text-white\" />\r\n </div>\r\n </>\r\n )}\r\n </div>\r\n )\r\n }\r\n\r\n // Si hay 2-3 imágenes, mostrar grid horizontal\r\n if (images.length <= 3) {\r\n return (\r\n <div className={cn('my-3 grid gap-2', images.length === 2 ? 'grid-cols-2' : 'grid-cols-3')}>\r\n {images.map((img, idx) => (\r\n <div key={idx} className=\"relative group overflow-hidden\">\r\n {imageError.has(idx) ? (\r\n <div\r\n className={cn(\r\n 'w-full h-32 flex flex-col items-center justify-center',\r\n 'border bg-muted text-muted-foreground',\r\n radius\r\n )}\r\n >\r\n <svg\r\n className=\"w-8 h-8 opacity-50\"\r\n fill=\"none\"\r\n stroke=\"currentColor\"\r\n viewBox=\"0 0 24 24\"\r\n >\r\n <path\r\n strokeLinecap=\"round\"\r\n strokeLinejoin=\"round\"\r\n strokeWidth={2}\r\n d=\"M4 16l4.586-4.586a2 2 0 012.828 0L16 16m-2-2l1.586-1.586a2 2 0 012.828 0L20 14m-6-6h.01M6 20h12a2 2 0 002-2V6a2 2 0 00-2-2H6a2 2 0 00-2 2v12a2 2 0 002 2z\"\r\n />\r\n </svg>\r\n </div>\r\n ) : (\r\n <>\r\n <img\r\n src={img.src}\r\n alt={img.alt || `Imagen ${idx + 1}`}\r\n className={cn(\r\n 'w-full h-32 object-cover cursor-pointer transition-all duration-300',\r\n 'border border-border shadow-soft-md hover:shadow-soft-lg hover:scale-110',\r\n radius\r\n )}\r\n loading=\"lazy\"\r\n onClick={() => openLightbox(idx)}\r\n onError={() => handleImageError(idx)}\r\n />\r\n <div className=\"absolute inset-0 bg-gradient-to-t from-black/40 to-transparent opacity-0 group-hover:opacity-100 transition-opacity flex items-end justify-end p-2\">\r\n <span className=\"text-white text-xs font-bold bg-black/50 backdrop-blur-sm px-2 py-1 rounded-full\">\r\n {idx + 1}/{images.length}\r\n </span>\r\n </div>\r\n </>\r\n )}\r\n </div>\r\n ))}\r\n\r\n {/* Lightbox */}\r\n {isLightboxOpen && (\r\n <Lightbox\r\n images={images}\r\n currentIndex={currentIndex}\r\n onClose={() => setIsLightboxOpen(false)}\r\n onNext={nextImage}\r\n onPrev={prevImage}\r\n />\r\n )}\r\n </div>\r\n )\r\n }\r\n\r\n // Si hay 4+ imágenes, mostrar carrusel con thumbnails\r\n return (\r\n <div className=\"my-3 space-y-2\">\r\n {/* Imagen Principal */}\r\n <div className=\"relative group\">\r\n {imageError.has(currentIndex) ? (\r\n <div\r\n className={cn(\r\n 'w-full h-56 flex flex-col items-center justify-center',\r\n 'border bg-muted text-muted-foreground',\r\n radius\r\n )}\r\n style={{ borderColor: 'hsl(var(--border))' }}\r\n >\r\n <svg\r\n className=\"w-12 h-12 mb-2 opacity-50\"\r\n fill=\"none\"\r\n stroke=\"currentColor\"\r\n viewBox=\"0 0 24 24\"\r\n >\r\n <path\r\n strokeLinecap=\"round\"\r\n strokeLinejoin=\"round\"\r\n strokeWidth={2}\r\n d=\"M4 16l4.586-4.586a2 2 0 012.828 0L16 16m-2-2l1.586-1.586a2 2 0 012.828 0L20 14m-6-6h.01M6 20h12a2 2 0 002-2V6a2 2 0 00-2-2H6a2 2 0 00-2 2v12a2 2 0 002 2z\"\r\n />\r\n </svg>\r\n <span className=\"text-sm\">Imagen no disponible</span>\r\n </div>\r\n ) : (\r\n <>\r\n <img\r\n src={images[currentIndex].src}\r\n alt={images[currentIndex].alt || `Imagen ${currentIndex + 1}`}\r\n className={cn(\r\n 'w-full h-56 object-cover cursor-pointer transition-all duration-300',\r\n 'border shadow-soft-md',\r\n radius\r\n )}\r\n style={{ borderColor: 'hsl(var(--border))' }}\r\n loading=\"lazy\"\r\n onClick={() => openLightbox(currentIndex)}\r\n onError={() => handleImageError(currentIndex)}\r\n />\r\n\r\n {/* Overlay con controles */}\r\n <div className=\"absolute inset-0 bg-gradient-to-t from-black/60 via-transparent to-black/20 opacity-0 group-hover:opacity-100 transition-opacity flex items-center justify-between px-3\">\r\n <button\r\n onClick={prevImage}\r\n className=\"p-2 rounded-full shadow-soft-lg transition-all hover:scale-110 active:scale-95\"\r\n style={{\r\n backgroundColor: 'hsl(var(--card) / 0.9)',\r\n color: 'hsl(var(--foreground))',\r\n }}\r\n aria-label={t('anterior')}\r\n >\r\n <ChevronLeft size={20} />\r\n </button>\r\n <button\r\n onClick={nextImage}\r\n className=\"p-2 rounded-full shadow-soft-lg transition-all hover:scale-110 active:scale-95\"\r\n style={{\r\n backgroundColor: 'hsl(var(--card) / 0.9)',\r\n color: 'hsl(var(--foreground))',\r\n }}\r\n aria-label={t('siguiente')}\r\n >\r\n <ChevronRight size={20} />\r\n </button>\r\n </div>\r\n\r\n {/* Badge con contador */}\r\n <div className=\"absolute top-3 right-3 bg-black/70 backdrop-blur-sm px-3 py-1 rounded-full\">\r\n <span className=\"text-white text-xs font-bold\">\r\n {currentIndex + 1} / {images.length}\r\n </span>\r\n </div>\r\n\r\n {/* Icono de zoom */}\r\n <div className=\"absolute bottom-3 right-3 bg-black/70 backdrop-blur-sm p-2 rounded-full opacity-0 group-hover:opacity-100 transition-opacity\">\r\n <ZoomIn size={16} className=\"text-white\" />\r\n </div>\r\n </>\r\n )}\r\n </div>\r\n\r\n {/* Thumbnails */}\r\n <div className=\"flex gap-2 overflow-x-auto pb-2 scrollbar-thin scrollbar-thumb-border scrollbar-track-transparent\">\r\n {images.map((img, idx) => (\r\n <button\r\n key={idx}\r\n onClick={() => setCurrentIndex(idx)}\r\n className={cn(\r\n 'flex-shrink-0 w-16 h-16 overflow-hidden transition-all duration-300 relative',\r\n 'border-2 hover:scale-110',\r\n radius,\r\n currentIndex === idx\r\n ? 'border-[hsl(210,90%,50%)] ring-2 ring-[hsl(210,90%,50%)]/30 scale-105'\r\n : 'border-border hover:border-[hsl(210,90%,70%)] opacity-70 hover:opacity-100'\r\n )}\r\n >\r\n {imageError.has(idx) ? (\r\n <div className=\"w-full h-full flex items-center justify-center bg-muted\">\r\n <svg\r\n className=\"w-6 h-6 opacity-50\"\r\n fill=\"none\"\r\n stroke=\"currentColor\"\r\n viewBox=\"0 0 24 24\"\r\n >\r\n <path\r\n strokeLinecap=\"round\"\r\n strokeLinejoin=\"round\"\r\n strokeWidth={2}\r\n d=\"M4 16l4.586-4.586a2 2 0 012.828 0L16 16m-2-2l1.586-1.586a2 2 0 012.828 0L20 14m-6-6h.01M6 20h12a2 2 0 002-2V6a2 2 0 00-2-2H6a2 2 0 00-2 2v12a2 2 0 002 2z\"\r\n />\r\n </svg>\r\n </div>\r\n ) : (\r\n <img\r\n src={img.src}\r\n alt={img.alt || `Thumbnail ${idx + 1}`}\r\n className=\"w-full h-full object-cover\"\r\n loading=\"lazy\"\r\n onError={() => handleImageError(idx)}\r\n />\r\n )}\r\n </button>\r\n ))}\r\n </div>\r\n\r\n {/* Lightbox */}\r\n {isLightboxOpen && (\r\n <Lightbox\r\n images={images}\r\n currentIndex={currentIndex}\r\n onClose={() => setIsLightboxOpen(false)}\r\n onNext={nextImage}\r\n onPrev={prevImage}\r\n />\r\n )}\r\n </div>\r\n )\r\n})\r\n\r\n// ==========================================\r\n// 🔍 LIGHTBOX (Modal de Imagen)\r\n// ==========================================\r\n\r\ninterface LightboxProps {\r\n images: Array<{ src: string; alt?: string }>\r\n currentIndex: number\r\n onClose: () => void\r\n onNext: () => void\r\n onPrev: () => void\r\n}\r\n\r\nfunction Lightbox({ images, currentIndex, onClose, onNext, onPrev }: LightboxProps) {\r\n const { t } = useTranslations('extracted')\r\n\r\n // Keyboard navigation\r\n useEffect(() => {\r\n const handler = (e: KeyboardEvent) => {\r\n if (e.key === 'Escape') onClose()\r\n if (e.key === 'ArrowLeft') onPrev()\r\n if (e.key === 'ArrowRight') onNext()\r\n }\r\n window.addEventListener('keydown', handler)\r\n return () => window.removeEventListener('keydown', handler)\r\n }, [onClose, onPrev, onNext])\r\n\r\n // Touch swipe support\r\n const touchStartX = useRef(0)\r\n const handleTouchStart = (e: React.TouchEvent) => {\r\n touchStartX.current = e.touches[0].clientX\r\n }\r\n const handleTouchEnd = (e: React.TouchEvent) => {\r\n const dx = e.changedTouches[0].clientX - touchStartX.current\r\n if (Math.abs(dx) > 50) {\r\n if (dx > 0) { onPrev() } else { onNext() }\r\n }\r\n }\r\n\r\n return (\r\n <div\r\n className=\"absolute inset-0 z-[100000] bg-black/95 backdrop-blur-sm flex items-center justify-center animate-in fade-in duration-200\"\r\n onClick={onClose}\r\n onTouchStart={handleTouchStart}\r\n onTouchEnd={handleTouchEnd}\r\n >\r\n {/* Botón Cerrar */}\r\n <button\r\n onClick={onClose}\r\n className=\"absolute top-4 right-4 bg-white/10 hover:bg-white/20 p-2 rounded-full transition-all hover:scale-110 active:scale-95 z-10\"\r\n aria-label={t('cerrar')}\r\n >\r\n <X size={24} className=\"text-white\" />\r\n </button>\r\n\r\n {/* Contador */}\r\n <div className=\"absolute top-4 left-4 bg-white/10 backdrop-blur-sm px-4 py-2 rounded-full z-10\">\r\n <span className=\"text-white text-sm font-bold\">\r\n {currentIndex + 1} / {images.length}\r\n </span>\r\n </div>\r\n\r\n {/* Controles de Navegación */}\r\n {images.length > 1 && (\r\n <>\r\n <button\r\n onClick={e => {\r\n e.stopPropagation()\r\n onPrev()\r\n }}\r\n className=\"absolute left-4 bg-white/10 hover:bg-white/20 p-3 rounded-full transition-all hover:scale-110 active:scale-95 z-10\"\r\n aria-label=\"Anterior\"\r\n >\r\n <ChevronLeft size={32} className=\"text-white\" />\r\n </button>\r\n <button\r\n onClick={e => {\r\n e.stopPropagation()\r\n onNext()\r\n }}\r\n className=\"absolute right-4 bg-white/10 hover:bg-white/20 p-3 rounded-full transition-all hover:scale-110 active:scale-95 z-10\"\r\n aria-label=\"Siguiente\"\r\n >\r\n <ChevronRight size={32} className=\"text-white\" />\r\n </button>\r\n </>\r\n )}\r\n\r\n {/* Imagen */}\r\n <img\r\n src={images[currentIndex].src}\r\n alt={images[currentIndex].alt || `Imagen ${currentIndex + 1}`}\r\n className=\"max-w-[90%] max-h-[85%] object-contain\"\r\n onClick={e => e.stopPropagation()}\r\n />\r\n\r\n {/* Thumbnails strip */}\r\n {images.length > 1 && (\r\n <div className=\"absolute bottom-4 left-1/2 -translate-x-1/2 flex gap-2 bg-black/50 backdrop-blur-sm px-3 py-2 rounded-full z-10\">\r\n {images.map((_, idx) => (\r\n <button\r\n key={idx}\r\n onClick={e => {\r\n e.stopPropagation()\r\n // Navigate to this index — use repeated prev/next to reach\r\n const diff = idx - currentIndex\r\n if (diff > 0) for (let i = 0; i < diff; i++) onNext()\r\n if (diff < 0) for (let i = 0; i < Math.abs(diff); i++) onPrev()\r\n }}\r\n className={cn(\r\n 'w-2 h-2 rounded-full transition-all',\r\n idx === currentIndex ? 'bg-white scale-125' : 'bg-white/40 hover:bg-white/60'\r\n )}\r\n aria-label={`Imagen ${idx + 1}`}\r\n />\r\n ))}\r\n </div>\r\n )}\r\n </div>\r\n )\r\n}\r\n"],"names":["Gallery","memo","images","radius","t","useTranslations","currentIndex","setCurrentIndex","useState","isLightboxOpen","setIsLightboxOpen","nextImage","prev","length","prevImage","openLightbox","index","imageError","setImageError","Set","handleImageError","add","className","children","has","jsxs","cn","style","borderColor","jsx","fill","stroke","viewBox","strokeLinecap","strokeLinejoin","strokeWidth","d","Fragment","src","alt","loading","onClick","onError","ZoomIn","size","map","img","idx","Lightbox","onClose","onNext","onPrev","backgroundColor","color","ChevronLeft","ChevronRight","useEffect","handler","e","key","window","addEventListener","removeEventListener","touchStartX","useRef","onTouchStart","current","touches","clientX","onTouchEnd","dx","changedTouches","Math","abs","X","stopPropagation","_","diff","i"],"mappings":"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"}
|
|
@@ -9,8 +9,6 @@ export interface ChatWindowProps {
|
|
|
9
9
|
logoUrl?: string;
|
|
10
10
|
welcomeMessage?: string;
|
|
11
11
|
inputPlaceholder?: string;
|
|
12
|
-
primaryColor?: string;
|
|
13
|
-
borderRadius?: string;
|
|
14
12
|
mediaConfig?: MediaConfig;
|
|
15
13
|
onClose: () => void;
|
|
16
14
|
onSendMessage: (message: string) => void;
|
|
@@ -31,5 +29,5 @@ export interface ChatWindowProps {
|
|
|
31
29
|
avatar3dUrl?: string;
|
|
32
30
|
theme?: import('../types').ChatTheme;
|
|
33
31
|
}
|
|
34
|
-
export declare function ChatWindow({ isOpen, isConnected, isTyping, messages, botName, logoUrl, welcomeMessage, inputPlaceholder,
|
|
32
|
+
export declare function ChatWindow({ isOpen, isConnected, isTyping, messages, botName, logoUrl, welcomeMessage, inputPlaceholder, mediaConfig, onClose, onSendMessage, bubbleStyles, avatars, onSendAttachment, onSendLocation, getSocket, onAddVoiceMessage, avatar3dUrl, theme, }: ChatWindowProps): import("react/jsx-runtime").JSX.Element | null;
|
|
35
33
|
//# sourceMappingURL=ChatWindow.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChatWindow.d.ts","sourceRoot":"","sources":["../../../../src/chat-widget/components/ChatWindow.tsx"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,UAAU,CAAA;AAOtE,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAA;AAI7C,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,OAAO,CAAA;IACf,WAAW,EAAE,OAAO,CAAA;IACpB,QAAQ,EAAE,OAAO,CAAA;IACjB,QAAQ,EAAE,WAAW,EAAE,CAAA;IACvB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,
|
|
1
|
+
{"version":3,"file":"ChatWindow.d.ts","sourceRoot":"","sources":["../../../../src/chat-widget/components/ChatWindow.tsx"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,UAAU,CAAA;AAOtE,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAA;AAI7C,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,OAAO,CAAA;IACf,WAAW,EAAE,OAAO,CAAA;IACpB,QAAQ,EAAE,OAAO,CAAA;IACjB,QAAQ,EAAE,WAAW,EAAE,CAAA;IACvB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,WAAW,CAAC,EAAE,WAAW,CAAA;IACzB,OAAO,EAAE,MAAM,IAAI,CAAA;IACnB,aAAa,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;IACxC,QAAQ,CAAC,EAAE,cAAc,GAAG,aAAa,CAAA;IACzC,YAAY,CAAC,EAAE,YAAY,CAAA;IAC3B,OAAO,CAAC,EAAE,gBAAgB,CAAA;IAC1B,gBAAgB,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,GAAG,OAAO,GAAG,MAAM,KAAK,IAAI,CAAA;IACzE,cAAc,CAAC,EAAE,CAAC,QAAQ,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAA;IAC5E,SAAS,CAAC,EAAE,MAAM,GAAG,CAAA;IACrB,iBAAiB,CAAC,EAAE,CAAC,OAAO,EAAE;QAAE,MAAM,EAAE,MAAM,GAAG,KAAK,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAA;IAClF,wDAAwD;IACxD,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,KAAK,CAAC,EAAE,OAAO,UAAU,EAAE,SAAS,CAAA;CACrC;AAED,wBAAgB,UAAU,CAAC,EACzB,MAAM,EACN,WAAW,EACX,QAAQ,EACR,QAAQ,EACR,OAAkB,EAClB,OAAO,EACP,cAAc,EACd,gBAAgB,EAChB,WAAW,EACX,OAAO,EACP,aAAa,EACb,YAAY,EACZ,OAAO,EACP,gBAAgB,EAChB,cAAc,EACd,SAAS,EACT,iBAAiB,EACjB,WAAW,EACX,KAAK,GACN,EAAE,eAAe,kDAsSjB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChatWindow.stories.d.ts","sourceRoot":"","sources":["../../../../src/chat-widget/components/ChatWindow.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAQ,QAAQ,EAAE,MAAM,uBAAuB,CAAA;AAC3D,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAUzC,QAAA,MAAM,IAAI
|
|
1
|
+
{"version":3,"file":"ChatWindow.stories.d.ts","sourceRoot":"","sources":["../../../../src/chat-widget/components/ChatWindow.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAQ,QAAQ,EAAE,MAAM,uBAAuB,CAAA;AAC3D,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAUzC,QAAA,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA2CyB,CAAA;AAEnC,eAAe,IAAI,CAAA;AACnB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAA;AA2BlC,eAAO,MAAM,OAAO,EAAE,KAcrB,CAAA;AAED,eAAO,MAAM,SAAS,EAAE,KAKvB,CAAA;AAED,eAAO,MAAM,SAAS,EAAE,KAKvB,CAAA;AAED,eAAO,MAAM,YAAY,EAAE,KAK1B,CAAA;AAED,eAAO,MAAM,WAAW,EAAE,KAezB,CAAA;AAED,eAAO,MAAM,YAAY,EAAE,KAgB1B,CAAA;AAED,eAAO,MAAM,QAAQ,EAAE,KAetB,CAAA;AAED,eAAO,MAAM,SAAS,EAAE,KAcvB,CAAA;AAED,eAAO,MAAM,gBAAgB,EAAE,KAqC9B,CAAA;AAED,eAAO,MAAM,YAAY,EAAE,KAK1B,CAAA;AAED,eAAO,MAAM,UAAU,EAAE,KAKxB,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VoiceCallOverlay.d.ts","sourceRoot":"","sources":["../../../../src/chat-widget/components/VoiceCallOverlay.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAUH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAA;AAMlD,8CAA8C;AAC9C,MAAM,WAAW,kBAAkB;IACjC,0DAA0D;IAC1D,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,8DAA8D;IAC9D,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,2DAA2D;IAC3D,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,4DAA4D;IAC5D,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,yEAAyE;IACzE,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,sEAAsE;IACtE,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B,mDAAmD;IACnD,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,kDAAkD;IAClD,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,gDAAgD;IAChD,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,wDAAwD;IACxD,aAAa,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAA;IAC/C,qCAAqC;IACrC,YAAY,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,CAAA;IACjD,0CAA0C;IAC1C,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,gDAAgD;IAChD,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,gDAAgD;IAChD,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,yEAAyE;IACzE,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB;AAED,UAAU,qBAAqB;IAC7B,MAAM,EAAE,OAAO,CAAA;IACf,OAAO,EAAE,MAAM,IAAI,CAAA;IACnB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,SAAS,CAAC,EAAE,MAAM,GAAG,CAAA;IACrB,OAAO,CAAC,EAAE,gBAAgB,CAAA;IAC1B,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,iDAAiD;IACjD,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,2DAA2D;IAC3D,WAAW,CAAC,EAAE,kBAAkB,CAAA;IAChC,qEAAqE;IACrE,YAAY,CAAC,EAAE,CAAC,OAAO,EAAE;QAAE,MAAM,EAAE,MAAM,GAAG,KAAK,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,IAAI,CAAA;KAAE,KAAK,IAAI,CAAA;CAChG;AAED,KAAK,SAAS,GAAG,MAAM,GAAG,YAAY,GAAG,WAAW,GAAG,UAAU,GAAG,UAAU,CAAA;AAiY9E,wBAAgB,gBAAgB,CAAC,EAC/B,MAAM,EACN,OAAO,EACP,YAAwB,EACxB,SAAS,EACT,OAAO,EACP,OAAO,EACP,WAAW,EACX,WAAW,EACX,YAAY,GACb,EAAE,qBAAqB,
|
|
1
|
+
{"version":3,"file":"VoiceCallOverlay.d.ts","sourceRoot":"","sources":["../../../../src/chat-widget/components/VoiceCallOverlay.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAUH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAA;AAMlD,8CAA8C;AAC9C,MAAM,WAAW,kBAAkB;IACjC,0DAA0D;IAC1D,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,8DAA8D;IAC9D,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,2DAA2D;IAC3D,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,4DAA4D;IAC5D,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,yEAAyE;IACzE,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,sEAAsE;IACtE,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B,mDAAmD;IACnD,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,kDAAkD;IAClD,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,gDAAgD;IAChD,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,wDAAwD;IACxD,aAAa,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAA;IAC/C,qCAAqC;IACrC,YAAY,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,CAAA;IACjD,0CAA0C;IAC1C,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,gDAAgD;IAChD,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,gDAAgD;IAChD,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,yEAAyE;IACzE,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB;AAED,UAAU,qBAAqB;IAC7B,MAAM,EAAE,OAAO,CAAA;IACf,OAAO,EAAE,MAAM,IAAI,CAAA;IACnB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,SAAS,CAAC,EAAE,MAAM,GAAG,CAAA;IACrB,OAAO,CAAC,EAAE,gBAAgB,CAAA;IAC1B,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,iDAAiD;IACjD,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,2DAA2D;IAC3D,WAAW,CAAC,EAAE,kBAAkB,CAAA;IAChC,qEAAqE;IACrE,YAAY,CAAC,EAAE,CAAC,OAAO,EAAE;QAAE,MAAM,EAAE,MAAM,GAAG,KAAK,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,IAAI,CAAA;KAAE,KAAK,IAAI,CAAA;CAChG;AAED,KAAK,SAAS,GAAG,MAAM,GAAG,YAAY,GAAG,WAAW,GAAG,UAAU,GAAG,UAAU,CAAA;AAiY9E,wBAAgB,gBAAgB,CAAC,EAC/B,MAAM,EACN,OAAO,EACP,YAAwB,EACxB,SAAS,EACT,OAAO,EACP,OAAO,EACP,WAAW,EACX,WAAW,EACX,YAAY,GACb,EAAE,qBAAqB,kDAu+BvB"}
|
|
@@ -5,7 +5,7 @@ import type { ChatTheme, BubbleStyles } from '../types';
|
|
|
5
5
|
* También gestiona alto contraste y estilos de burbujas
|
|
6
6
|
*/
|
|
7
7
|
export declare function useWidgetTheme(projectTheme?: ChatTheme, socketTheme?: ChatTheme): {
|
|
8
|
-
mergedTheme: Required<Omit<ChatTheme, "defaultLocale" | "avatars" | "emotion" | "starterPrompt" | "
|
|
8
|
+
mergedTheme: Required<Omit<ChatTheme, "defaultLocale" | "avatars" | "emotion" | "starterPrompt" | "bubbleStyles" | "promptPersistence" | "avatarScale" | "showPromptAvatar" | "animations" | "effects" | "avatar3dUrl">>;
|
|
9
9
|
mergedStyles: BubbleStyles;
|
|
10
10
|
getContainerStyle: (isOpen: boolean, isMobile: boolean, position?: "bottom-left" | "bottom-right") => React.CSSProperties;
|
|
11
11
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useWidgetTheme.d.ts","sourceRoot":"","sources":["../../../../src/chat-widget/hooks/useWidgetTheme.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AAqBvD;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,YAAY,CAAC,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,SAAS;;;
|
|
1
|
+
{"version":3,"file":"useWidgetTheme.d.ts","sourceRoot":"","sources":["../../../../src/chat-widget/hooks/useWidgetTheme.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AAqBvD;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,YAAY,CAAC,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,SAAS;;;gCA8CpE,OAAO,YACL,OAAO,aACN,aAAa,GAAG,cAAc,KACxC,KAAK,CAAC,aAAa;EAoBvB"}
|
|
@@ -156,8 +156,6 @@ export interface BubbleStyles {
|
|
|
156
156
|
};
|
|
157
157
|
}
|
|
158
158
|
export interface ChatTheme {
|
|
159
|
-
/** Color primario (botón, burbujas del usuario) */
|
|
160
|
-
primaryColor?: string;
|
|
161
159
|
/** Nombre del bot que aparece en el header */
|
|
162
160
|
botName?: string;
|
|
163
161
|
/** URL del avatar/logo del bot */
|
|
@@ -171,14 +169,6 @@ export interface ChatTheme {
|
|
|
171
169
|
welcomeMessage?: string;
|
|
172
170
|
/** Placeholder del input */
|
|
173
171
|
inputPlaceholder?: string;
|
|
174
|
-
/** Border radius del chat window (CSS value, ej: '24px', '1.5rem') */
|
|
175
|
-
borderRadius?: string;
|
|
176
|
-
/** Border radius del launcher button (CSS value, ej: '50%', '24px') */
|
|
177
|
-
launcherBorderRadius?: string;
|
|
178
|
-
/** Altura del chat window en desktop (CSS value, ej: '600px', '80vh') */
|
|
179
|
-
height?: string;
|
|
180
|
-
/** Distancia desde el bottom en desktop (CSS value, ej: '24px', '1.5rem') */
|
|
181
|
-
bottom?: string;
|
|
182
172
|
starterPrompt?: string;
|
|
183
173
|
bubbleStyles?: BubbleStyles;
|
|
184
174
|
promptPersistence?: PromptStrategy;
|
|
@@ -211,8 +201,16 @@ export interface ChatTheme {
|
|
|
211
201
|
border?: string;
|
|
212
202
|
/** Color destructivo/error (formato HSL sin hsl(), ej: "0 84.2% 60.2%") */
|
|
213
203
|
destructive?: string;
|
|
214
|
-
/** Border radius base (ej: "0.5rem") */
|
|
204
|
+
/** Border radius base para componentes internos (ej: "0.5rem") */
|
|
215
205
|
radius?: string;
|
|
206
|
+
/** Border radius de la ventana del chat (ej: "24px", "1.5rem") */
|
|
207
|
+
windowBorderRadius?: string;
|
|
208
|
+
/** Border radius del botón launcher (ej: "50%", "24px") */
|
|
209
|
+
launcherBorderRadius?: string;
|
|
210
|
+
/** Altura de la ventana en desktop (ej: "700px", "80vh") */
|
|
211
|
+
windowHeight?: string;
|
|
212
|
+
/** Distancia desde el borde inferior (ej: "24px") */
|
|
213
|
+
windowBottom?: string;
|
|
216
214
|
/** Spacing 1 - Extra small (ej: "0.25rem") */
|
|
217
215
|
spacing1?: string;
|
|
218
216
|
/** Spacing 2 - Small (ej: "0.5rem") */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/chat-widget/types/index.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/chat-widget/types/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -23,6 +23,10 @@ export interface CSSVariables {
|
|
|
23
23
|
border: string;
|
|
24
24
|
destructive: string;
|
|
25
25
|
radius: string;
|
|
26
|
+
windowBorderRadius?: string;
|
|
27
|
+
launcherBorderRadius?: string;
|
|
28
|
+
windowHeight?: string;
|
|
29
|
+
windowBottom?: string;
|
|
26
30
|
spacing1?: string;
|
|
27
31
|
spacing2?: string;
|
|
28
32
|
spacing3?: string;
|
|
@@ -52,7 +56,7 @@ export declare const DARK_CSS_VARIABLES: CSSVariables;
|
|
|
52
56
|
* TEMA DEFAULT - BotUyo (Verde Fresco)
|
|
53
57
|
* Tema por defecto cuando no se envía configuración
|
|
54
58
|
*/
|
|
55
|
-
export declare const DEFAULT_THEME: Required<Omit<ChatTheme, 'avatars' | 'emotion' | 'starterPrompt' | '
|
|
59
|
+
export declare const DEFAULT_THEME: Required<Omit<ChatTheme, 'avatars' | 'emotion' | 'starterPrompt' | 'bubbleStyles' | 'promptPersistence' | 'avatarScale' | 'showPromptAvatar' | 'defaultLocale' | 'animations' | 'effects' | 'avatar3dUrl'>>;
|
|
56
60
|
/**
|
|
57
61
|
* TEMA OCEAN - Azul Profundo
|
|
58
62
|
* Diseño profesional y corporativo con tonos azules
|
|
@@ -89,11 +93,13 @@ export declare const NATURE_THEME: ChatTheme;
|
|
|
89
93
|
* El merge es PROFUNDO para cssVariables, garantizando que cada propiedad
|
|
90
94
|
* individual se complete con su fallback correspondiente.
|
|
91
95
|
*/
|
|
92
|
-
export declare function mergeThemeWithDefaults(userTheme?: Partial<ChatTheme>, socketTheme?: Partial<ChatTheme>): Required<Omit<ChatTheme, 'avatars' | 'emotion' | 'starterPrompt' | '
|
|
96
|
+
export declare function mergeThemeWithDefaults(userTheme?: Partial<ChatTheme>, socketTheme?: Partial<ChatTheme>): Required<Omit<ChatTheme, 'avatars' | 'emotion' | 'starterPrompt' | 'bubbleStyles' | 'promptPersistence' | 'avatarScale' | 'showPromptAvatar' | 'defaultLocale' | 'animations' | 'effects' | 'avatar3dUrl'>>;
|
|
93
97
|
/**
|
|
94
|
-
* Obtiene el color primario
|
|
98
|
+
* Obtiene el color primario en formato hsl(...) desde cssVariables.primary
|
|
99
|
+
* Ejemplo: "210 100% 50%" -> "hsl(210 100% 50%)"
|
|
95
100
|
*/
|
|
96
101
|
export declare function getPrimaryColor(options: {
|
|
102
|
+
cssVariables?: Partial<CSSVariables>;
|
|
97
103
|
primaryColor?: string;
|
|
98
104
|
}): string;
|
|
99
105
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"theme.d.ts","sourceRoot":"","sources":["../../../../src/chat-widget/utils/theme.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AAEpC;;;;GAIG;AAEH,MAAM,WAAW,YAAY;IAC3B,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,EAAE,MAAM,CAAA;IAClB,IAAI,EAAE,MAAM,CAAA;IACZ,cAAc,EAAE,MAAM,CAAA;IACtB,OAAO,EAAE,MAAM,CAAA;IACf,iBAAiB,EAAE,MAAM,CAAA;IACzB,KAAK,EAAE,MAAM,CAAA;IACb,eAAe,EAAE,MAAM,CAAA;IACvB,MAAM,EAAE,MAAM,CAAA;IACd,WAAW,EAAE,MAAM,CAAA;IACnB,MAAM,EAAE,MAAM,CAAA;IAGd,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB;AAED;;GAEG;AACH,eAAO,MAAM,qBAAqB,EAAE,YAqBnC,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,kBAAkB,EAAE,YAqBhC,CAAA;AAED;;;;;;;;GAQG;AAEH;;;GAGG;AACH,eAAO,MAAM,aAAa,EAAE,QAAQ,CAClC,IAAI,CACF,SAAS,EACP,SAAS,GACT,SAAS,GACT,eAAe,GACf,
|
|
1
|
+
{"version":3,"file":"theme.d.ts","sourceRoot":"","sources":["../../../../src/chat-widget/utils/theme.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AAEpC;;;;GAIG;AAEH,MAAM,WAAW,YAAY;IAC3B,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,EAAE,MAAM,CAAA;IAClB,IAAI,EAAE,MAAM,CAAA;IACZ,cAAc,EAAE,MAAM,CAAA;IACtB,OAAO,EAAE,MAAM,CAAA;IACf,iBAAiB,EAAE,MAAM,CAAA;IACzB,KAAK,EAAE,MAAM,CAAA;IACb,eAAe,EAAE,MAAM,CAAA;IACvB,MAAM,EAAE,MAAM,CAAA;IACd,WAAW,EAAE,MAAM,CAAA;IACnB,MAAM,EAAE,MAAM,CAAA;IAGd,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAC3B,oBAAoB,CAAC,EAAE,MAAM,CAAA;IAC7B,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,YAAY,CAAC,EAAE,MAAM,CAAA;IAGrB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB;AAED;;GAEG;AACH,eAAO,MAAM,qBAAqB,EAAE,YAqBnC,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,kBAAkB,EAAE,YAqBhC,CAAA;AAED;;;;;;;;GAQG;AAEH;;;GAGG;AACH,eAAO,MAAM,aAAa,EAAE,QAAQ,CAClC,IAAI,CACF,SAAS,EACP,SAAS,GACT,SAAS,GACT,eAAe,GACf,cAAc,GACd,mBAAmB,GACnB,aAAa,GACb,kBAAkB,GAClB,eAAe,GACf,YAAY,GACZ,SAAS,GACT,aAAa,CAChB,CASF,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,WAAW,EAAE,SAiBzB,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,YAAY,EAAE,SAmB1B,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,cAAc,EAAE,SAqB5B,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,YAAY,EAAE,SAgB1B,CAAA;AAED;;;;GAIG;AAEH;;;;;;;;;;GAUG;AACH,wBAAgB,sBAAsB,CACpC,SAAS,CAAC,EAAE,OAAO,CAAC,SAAS,CAAC,EAC9B,WAAW,CAAC,EAAE,OAAO,CAAC,SAAS,CAAC,GAC/B,QAAQ,CACT,IAAI,CACF,SAAS,EACP,SAAS,GACT,SAAS,GACT,eAAe,GACf,cAAc,GACd,mBAAmB,GACnB,aAAa,GACb,kBAAkB,GAClB,eAAe,GACf,YAAY,GACZ,SAAS,GACT,aAAa,CAChB,CACF,CAoBA;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE;IAAE,YAAY,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;IAAC,YAAY,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,CAIhH;AAED;;GAEG;AACH,wBAAgB,0BAA0B,CACxC,SAAS,EAAE,OAAO,CAAC,YAAY,CAAC,GAC/B,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAqBxB;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC;;;;;;;;;;;EAc/D;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,KAAK,GAAE,SAAc,GAAG,SAAS,CAE/D"}
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* Este archivo demuestra cómo usar los temas predefinidos,
|
|
5
5
|
* crear temas personalizados y aplicarlos al widget.
|
|
6
6
|
*/
|
|
7
|
-
declare const defaultTheme: Required<Omit<import("..").ChatTheme, "defaultLocale" | "avatars" | "emotion" | "starterPrompt" | "
|
|
7
|
+
declare const defaultTheme: Required<Omit<import("..").ChatTheme, "defaultLocale" | "avatars" | "emotion" | "starterPrompt" | "bubbleStyles" | "promptPersistence" | "avatarScale" | "showPromptAvatar" | "animations" | "effects" | "avatar3dUrl">>;
|
|
8
8
|
declare const customSimpleTheme: {
|
|
9
9
|
primaryColor: string;
|
|
10
10
|
botName: string;
|
|
@@ -33,7 +33,7 @@ declare const customFullTheme: {
|
|
|
33
33
|
radius: string;
|
|
34
34
|
};
|
|
35
35
|
};
|
|
36
|
-
export declare const mergedTheme: Required<Omit<import("..").ChatTheme, "defaultLocale" | "avatars" | "emotion" | "starterPrompt" | "
|
|
36
|
+
export declare const mergedTheme: Required<Omit<import("..").ChatTheme, "defaultLocale" | "avatars" | "emotion" | "starterPrompt" | "bubbleStyles" | "promptPersistence" | "avatarScale" | "showPromptAvatar" | "animations" | "effects" | "avatar3dUrl">>;
|
|
37
37
|
export declare const myComponent: {
|
|
38
38
|
backgroundColor: string;
|
|
39
39
|
color: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"theme.examples.d.ts","sourceRoot":"","sources":["../../../../src/chat-widget/utils/theme.examples.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAuBH,QAAA,MAAM,YAAY,
|
|
1
|
+
{"version":3,"file":"theme.examples.d.ts","sourceRoot":"","sources":["../../../../src/chat-widget/utils/theme.examples.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAuBH,QAAA,MAAM,YAAY,0NAAgB,CAAA;AA6BlC,QAAA,MAAM,iBAAiB;;;;;;CAOtB,CAAA;AAGD,QAAA,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;CAoBpB,CAAA;AAiBD,eAAO,MAAM,WAAW,0NAAoC,CAAA;AAmB5D,eAAO,MAAM,WAAW;;;;CAIvB,CAAA;AAkBD,eAAO,MAAM,cAAc;;CAG1B,CAAA;AAyBD,wBAAgB,KAAK,YAcpB;AAuFD,OAAO,EAEL,YAAY,EAMZ,iBAAiB,EACjB,eAAe,GAEhB,CAAA"}
|
package/dist/standalone.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"standalone.d.ts","sourceRoot":"","sources":["../standalone.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAIH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AA+D/D,UAAU,YAAY;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,UAAU,gBAAiB,SAAQ,OAAO,CAAC,eAAe,CAAC;IAEzD,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,eAAe,CAAC,OAAO,CAAC,GAAG;QACjC,YAAY,CAAC,EAAE,YAAY,CAAC;KAC7B,CAAC;CACH;AAED,cAAM,gBAAgB;IACpB,OAAO,CAAC,IAAI,CAAqB;IACjC,OAAO,CAAC,SAAS,CAA4B;IAC7C,OAAO,CAAC,UAAU,CAA2B;IAC7C,OAAO,CAAC,UAAU,CAA4B;IAC9C,OAAO,CAAC,gBAAgB,CAAiC;IACzD,OAAO,CAAC,kBAAkB,CAA+B;IACzD,OAAO,CAAC,MAAM,CAAiC;IAE/C;;;;OAIG;IACH,IAAI,CAAC,MAAM,EAAE,gBAAgB,GAAG,IAAI;IAUpC;;OAEG;IACH,OAAO,CAAC,MAAM;
|
|
1
|
+
{"version":3,"file":"standalone.d.ts","sourceRoot":"","sources":["../standalone.tsx"],"names":[],"mappings":"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"}
|