@horneross/embeds 1.0.267 → 1.0.268
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/chatbox/index.js +2 -2
- package/package.json +1 -1
package/dist/chatbox/index.js
CHANGED
|
@@ -79,10 +79,10 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
79
79
|
`))+1))}let i="#".repeat(n),s=r.enter("headingAtx"),l=r.enter("phrasing");o.move(i+" ");let u=r.containerPhrasing(e,{before:"# ",after:`
|
|
80
80
|
`,...o.current()});return/^[\t ]/.test(u)&&(u=Mu(u.charCodeAt(0))+u.slice(1)),u=u?i+" "+u:i,r.options.closeAtx&&(u+=" "+i),l(),s(),u}c();p4.peek=Ybe;function p4(e){return e.value||""}function Ybe(){return"<"}c();m4.peek=Kbe;function m4(e,t,r,a){let n=lm(r),o=n==='"'?"Quote":"Apostrophe",i=r.enter("image"),s=r.enter("label"),l=r.createTracker(a),u=l.move("![");return u+=l.move(r.safe(e.alt,{before:u,after:"]",...l.current()})),u+=l.move("]("),s(),!e.url&&e.title||/[\0- \u007F]/.test(e.url)?(s=r.enter("destinationLiteral"),u+=l.move("<"),u+=l.move(r.safe(e.url,{before:u,after:">",...l.current()})),u+=l.move(">")):(s=r.enter("destinationRaw"),u+=l.move(r.safe(e.url,{before:u,after:e.title?" ":")",...l.current()}))),s(),e.title&&(s=r.enter(`title${o}`),u+=l.move(" "+n),u+=l.move(r.safe(e.title,{before:u,after:n,...l.current()})),u+=l.move(n),s()),u+=l.move(")"),i(),u}function Kbe(){return"!"}c();g4.peek=Xbe;function g4(e,t,r,a){let n=e.referenceType,o=r.enter("imageReference"),i=r.enter("label"),s=r.createTracker(a),l=s.move("!["),u=r.safe(e.alt,{before:l,after:"]",...s.current()});l+=s.move(u+"]["),i();let d=r.stack;r.stack=[],i=r.enter("reference");let f=r.safe(r.associationId(e),{before:l,after:"]",...s.current()});return i(),r.stack=d,o(),n==="full"||!u||u!==f?l+=s.move(f+"]"):n==="shortcut"?l=l.slice(0,-1):l+=s.move("]"),l}function Xbe(){return"!"}c();h4.peek=Jbe;function h4(e,t,r){let a=e.value||"",n="`",o=-1;for(;new RegExp("(^|[^`])"+n+"([^`]|$)").test(a);)n+="`";for(/[^ \r\n]/.test(a)&&(/^[ \r\n]/.test(a)&&/[ \r\n]$/.test(a)||/^`|`$/.test(a))&&(a=" "+a+" ");++o<r.unsafe.length;){let i=r.unsafe[o],s=r.compilePattern(i),l;if(i.atBreak)for(;l=s.exec(a);){let u=l.index;a.charCodeAt(u)===10&&a.charCodeAt(u-1)===13&&u--,a=a.slice(0,u)+" "+a.slice(l.index+1)}}return n+a+n}function Jbe(){return"`"}c();c();function b4(e,t){let r=bd(e);return!!(!t.options.resourceLink&&e.url&&!e.title&&e.children&&e.children.length===1&&e.children[0].type==="text"&&(r===e.url||"mailto:"+r===e.url)&&/^[a-z][a-z+.-]+:/i.test(e.url)&&!/[\0- <>\u007F]/.test(e.url))}y4.peek=Qbe;function y4(e,t,r,a){let n=lm(r),o=n==='"'?"Quote":"Apostrophe",i=r.createTracker(a),s,l;if(b4(e,r)){let d=r.stack;r.stack=[],s=r.enter("autolink");let f=i.move("<");return f+=i.move(r.containerPhrasing(e,{before:f,after:">",...i.current()})),f+=i.move(">"),s(),r.stack=d,f}s=r.enter("link"),l=r.enter("label");let u=i.move("[");return u+=i.move(r.containerPhrasing(e,{before:u,after:"](",...i.current()})),u+=i.move("]("),l(),!e.url&&e.title||/[\0- \u007F]/.test(e.url)?(l=r.enter("destinationLiteral"),u+=i.move("<"),u+=i.move(r.safe(e.url,{before:u,after:">",...i.current()})),u+=i.move(">")):(l=r.enter("destinationRaw"),u+=i.move(r.safe(e.url,{before:u,after:e.title?" ":")",...i.current()}))),l(),e.title&&(l=r.enter(`title${o}`),u+=i.move(" "+n),u+=i.move(r.safe(e.title,{before:u,after:n,...i.current()})),u+=i.move(n),l()),u+=i.move(")"),s(),u}function Qbe(e,t,r){return b4(e,r)?"<":"["}c();v4.peek=eye;function v4(e,t,r,a){let n=e.referenceType,o=r.enter("linkReference"),i=r.enter("label"),s=r.createTracker(a),l=s.move("["),u=r.containerPhrasing(e,{before:l,after:"]",...s.current()});l+=s.move(u+"]["),i();let d=r.stack;r.stack=[],i=r.enter("reference");let f=r.safe(r.associationId(e),{before:l,after:"]",...s.current()});return i(),r.stack=d,o(),n==="full"||!u||u!==f?l+=s.move(f+"]"):n==="shortcut"?l=l.slice(0,-1):l+=s.move("]"),l}function eye(){return"["}c();c();function cm(e){let t=e.options.bullet||"*";if(t!=="*"&&t!=="+"&&t!=="-")throw new Error("Cannot serialize items with `"+t+"` for `options.bullet`, expected `*`, `+`, or `-`");return t}c();function Nq(e){let t=cm(e),r=e.options.bulletOther;if(!r)return t==="*"?"-":"*";if(r!=="*"&&r!=="+"&&r!=="-")throw new Error("Cannot serialize items with `"+r+"` for `options.bulletOther`, expected `*`, `+`, or `-`");if(r===t)throw new Error("Expected `bullet` (`"+t+"`) and `bulletOther` (`"+r+"`) to be different");return r}c();function Rq(e){let t=e.options.bulletOrdered||".";if(t!=="."&&t!==")")throw new Error("Cannot serialize items with `"+t+"` for `options.bulletOrdered`, expected `.` or `)`");return t}c();function nS(e){let t=e.options.rule||"*";if(t!=="*"&&t!=="-"&&t!=="_")throw new Error("Cannot serialize rules with `"+t+"` for `options.rule`, expected `*`, `-`, or `_`");return t}function Dq(e,t,r,a){let n=r.enter("list"),o=r.bulletCurrent,i=e.ordered?Rq(r):cm(r),s=e.ordered?i==="."?")":".":Nq(r),l=t&&r.bulletLastUsed?i===r.bulletLastUsed:!1;if(!e.ordered){let d=e.children?e.children[0]:void 0;if((i==="*"||i==="-")&&d&&(!d.children||!d.children[0])&&r.stack[r.stack.length-1]==="list"&&r.stack[r.stack.length-2]==="listItem"&&r.stack[r.stack.length-3]==="list"&&r.stack[r.stack.length-4]==="listItem"&&r.indexStack[r.indexStack.length-1]===0&&r.indexStack[r.indexStack.length-2]===0&&r.indexStack[r.indexStack.length-3]===0&&(l=!0),nS(r)===i&&d){let f=-1;for(;++f<e.children.length;){let p=e.children[f];if(p&&p.type==="listItem"&&p.children&&p.children[0]&&p.children[0].type==="thematicBreak"){l=!0;break}}}}l&&(i=s),r.bulletCurrent=i;let u=r.containerFlow(e,a);return r.bulletLastUsed=i,r.bulletCurrent=o,n(),u}c();c();function Pq(e){let t=e.options.listItemIndent||"one";if(t!=="tab"&&t!=="one"&&t!=="mixed")throw new Error("Cannot serialize items with `"+t+"` for `options.listItemIndent`, expected `tab`, `one`, or `mixed`");return t}function Oq(e,t,r,a){let n=Pq(r),o=r.bulletCurrent||cm(r);t&&t.type==="list"&&t.ordered&&(o=(typeof t.start=="number"&&t.start>-1?t.start:1)+(r.options.incrementListMarker===!1?0:t.children.indexOf(e))+o);let i=o.length+1;(n==="tab"||n==="mixed"&&(t&&t.type==="list"&&t.spread||e.spread))&&(i=Math.ceil(i/4)*4);let s=r.createTracker(a);s.move(o+" ".repeat(i-o.length)),s.shift(i);let l=r.enter("listItem"),u=r.indentLines(r.containerFlow(e,s.current()),d);return l(),u;function d(f,p,m){return p?(m?"":" ".repeat(i))+f:(m?o:o+" ".repeat(i-o.length))+f}}c();function Mq(e,t,r,a){let n=r.enter("paragraph"),o=r.enter("phrasing"),i=r.containerPhrasing(e,a);return o(),n(),i}c();c();c();var x4=Lu(["break","delete","emphasis","footnote","footnoteReference","image","imageReference","inlineCode","inlineMath","link","linkReference","mdxJsxTextElement","mdxTextExpression","strong","text","textDirective"]);function Fq(e,t,r,a){return(e.children.some(function(i){return x4(i)})?r.containerPhrasing:r.containerFlow).call(r,e,a)}c();c();function zq(e){let t=e.options.strong||"*";if(t!=="*"&&t!=="_")throw new Error("Cannot serialize strong with `"+t+"` for `options.strong`, expected `*`, or `_`");return t}w4.peek=tye;function w4(e,t,r,a){let n=zq(r),o=r.enter("strong"),i=r.createTracker(a),s=i.move(n+n),l=i.move(r.containerPhrasing(e,{after:n,before:s,...i.current()})),u=l.charCodeAt(0),d=um(a.before.charCodeAt(a.before.length-1),u,n);d.inside&&(l=Mu(u)+l.slice(1));let f=l.charCodeAt(l.length-1),p=um(a.after.charCodeAt(0),f,n);p.inside&&(l=l.slice(0,-1)+Mu(f));let m=i.move(n+n);return o(),r.attentionEncodeSurroundingInfo={after:p.outside,before:d.outside},s+l+m}function tye(e,t,r){return r.options.strong||"*"}c();function Uq(e,t,r,a){return r.safe(e.value,a)}c();c();function Bq(e){let t=e.options.ruleRepetition||3;if(t<3)throw new Error("Cannot serialize rules with repetition `"+t+"` for `options.ruleRepetition`, expected `3` or more");return t}function $q(e,t,r){let a=(nS(r)+(r.options.ruleSpaces?" ":"")).repeat(Bq(r));return r.options.ruleSpaces?a.slice(0,-1):a}var hb={blockquote:xq,break:d4,code:Eq,definition:_q,emphasis:f4,hardBreak:d4,heading:Lq,html:p4,image:m4,imageReference:g4,inlineCode:h4,link:y4,linkReference:v4,list:Dq,listItem:Oq,paragraph:Mq,root:Fq,strong:w4,text:Uq,thematicBreak:$q};function S4(){return{enter:{table:rye,tableData:jq,tableHeader:jq,tableRow:nye},exit:{codeText:oye,table:aye,tableData:k4,tableHeader:k4,tableRow:k4}}}function rye(e){let t=e._align;this.enter({type:"table",align:t.map(function(r){return r==="none"?null:r}),children:[]},e),this.data.inTable=!0}function aye(e){this.exit(e),this.data.inTable=void 0}function nye(e){this.enter({type:"tableRow",children:[]},e)}function k4(e){this.exit(e)}function jq(e){this.enter({type:"tableCell",children:[]},e)}function oye(e){let t=this.resume();this.data.inTable&&(t=t.replace(/\\([\\|])/g,iye));let r=this.stack[this.stack.length-1];r.type,r.value=t,this.exit(e)}function iye(e,t){return t==="|"?t:e}function T4(e){let t=e||{},r=t.tableCellPadding,a=t.tablePipeAlign,n=t.stringLength,o=r?" ":"|";return{unsafe:[{character:"\r",inConstruct:"tableCell"},{character:`
|
|
81
81
|
`,inConstruct:"tableCell"},{atBreak:!0,character:"|",after:"[ :-]"},{character:"|",inConstruct:"tableCell"},{atBreak:!0,character:":",after:"-"},{atBreak:!0,character:"-",after:"[:|-]"}],handlers:{inlineCode:p,table:i,tableCell:l,tableRow:s}};function i(m,h,b,w){return u(d(m,b,w),m.align)}function s(m,h,b,w){let v=f(m,b,w),x=u([v]);return x.slice(0,x.indexOf(`
|
|
82
|
-
`))}function l(m,h,b,w){let v=b.enter("tableCell"),x=b.enter("phrasing"),k=b.containerPhrasing(m,{...w,before:o,after:o});return x(),v(),k}function u(m,h){return vq(m,{align:h,alignDelimiters:a,padding:r,stringLength:n})}function d(m,h,b){let w=m.children,v=-1,x=[],k=h.enter("table");for(;++v<w.length;)x[v]=f(w[v],h,b);return k(),x}function f(m,h,b){let w=m.children,v=-1,x=[],k=h.enter("tableRow");for(;++v<w.length;)x[v]=l(w[v],m,h,b);return k(),x}function p(m,h,b){let w=hb.inlineCode(m,h,b);return b.stack.includes("tableCell")&&(w=w.replace(/\|/g,"\\$&")),w}}c();c();function C4(){return{exit:{taskListCheckValueChecked:Hq,taskListCheckValueUnchecked:Hq,paragraph:sye}}}function E4(){return{unsafe:[{atBreak:!0,character:"-",after:"[:|-]"}],handlers:{listItem:lye}}}function Hq(e){let t=this.stack[this.stack.length-2];t.type,t.checked=e.type==="taskListCheckValueChecked"}function sye(e){let t=this.stack[this.stack.length-2];if(t&&t.type==="listItem"&&typeof t.checked=="boolean"){let r=this.stack[this.stack.length-1];r.type;let a=r.children[0];if(a&&a.type==="text"){let n=t.children,o=-1,i;for(;++o<n.length;){let s=n[o];if(s.type==="paragraph"){i=s;break}}i===r&&(a.value=a.value.slice(1),a.value.length===0?r.children.shift():r.position&&a.position&&typeof a.position.start.offset=="number"&&(a.position.start.column++,a.position.start.offset++,r.position.start=Object.assign({},a.position.start)))}}this.exit(e)}function lye(e,t,r,a){let n=e.children[0],o=typeof e.checked=="boolean"&&n&&n.type==="paragraph",i="["+(e.checked?"x":" ")+"] ",s=r.createTracker(a);o&&s.move(i);let l=hb.listItem(e,t,r,{...a,...s.current()});return o&&(l=l.replace(/^(?:[*+-]|\d+\.)([\r\n]| {1,3})/,u)),l;function u(d){return d+i}}function _4(){return[o4(),s4(),u4(),S4(),C4()]}function A4(e){return{extensions:[i4(),l4(e),c4(),T4(e),E4()]}}c();c();c();var uye={tokenize:mye,partial:!0},qq={tokenize:gye,partial:!0},Vq={tokenize:hye,partial:!0},Gq={tokenize:bye,partial:!0},cye={tokenize:yye,partial:!0},Wq={name:"wwwAutolink",tokenize:fye,previous:Yq},Zq={name:"protocolAutolink",tokenize:pye,previous:Kq},Xs={name:"emailAutolink",tokenize:dye,previous:Xq},as={};function L4(){return{text:as}}var Id=48;for(;Id<123;)as[Id]=Xs,Id++,Id===58?Id=65:Id===91&&(Id=97);as[43]=Xs;as[45]=Xs;as[46]=Xs;as[95]=Xs;as[72]=[Xs,Zq];as[104]=[Xs,Zq];as[87]=[Xs,Wq];as[119]=[Xs,Wq];function dye(e,t,r){let a=this,n,o;return i;function i(f){return!I4(f)||!Xq.call(a,a.previous)||N4(a.events)?r(f):(e.enter("literalAutolink"),e.enter("literalAutolinkEmail"),s(f))}function s(f){return I4(f)?(e.consume(f),s):f===64?(e.consume(f),l):r(f)}function l(f){return f===46?e.check(cye,d,u)(f):f===45||f===95||$r(f)?(o=!0,e.consume(f),l):d(f)}function u(f){return e.consume(f),n=!0,l}function d(f){return o&&n&&ha(a.previous)?(e.exit("literalAutolinkEmail"),e.exit("literalAutolink"),t(f)):r(f)}}function fye(e,t,r){let a=this;return n;function n(i){return i!==87&&i!==119||!Yq.call(a,a.previous)||N4(a.events)?r(i):(e.enter("literalAutolink"),e.enter("literalAutolinkWww"),e.check(uye,e.attempt(qq,e.attempt(Vq,o),r),r)(i))}function o(i){return e.exit("literalAutolinkWww"),e.exit("literalAutolink"),t(i)}}function pye(e,t,r){let a=this,n="",o=!1;return i;function i(f){return(f===72||f===104)&&Kq.call(a,a.previous)&&!N4(a.events)?(e.enter("literalAutolink"),e.enter("literalAutolinkHttp"),n+=String.fromCodePoint(f),e.consume(f),s):r(f)}function s(f){if(ha(f)&&n.length<5)return n+=String.fromCodePoint(f),e.consume(f),s;if(f===58){let p=n.toLowerCase();if(p==="http"||p==="https")return e.consume(f),l}return r(f)}function l(f){return f===47?(e.consume(f),o?u:(o=!0,l)):r(f)}function u(f){return f===null||yd(f)||At(f)||Ji(f)||vd(f)?r(f):e.attempt(qq,e.attempt(Vq,d),r)(f)}function d(f){return e.exit("literalAutolinkHttp"),e.exit("literalAutolink"),t(f)}}function mye(e,t,r){let a=0;return n;function n(i){return(i===87||i===119)&&a<3?(a++,e.consume(i),n):i===46&&a===3?(e.consume(i),o):r(i)}function o(i){return i===null?r(i):t(i)}}function gye(e,t,r){let a,n,o;return i;function i(u){return u===46||u===95?e.check(Gq,l,s)(u):u===null||At(u)||Ji(u)||u!==45&&vd(u)?l(u):(o=!0,e.consume(u),i)}function s(u){return u===95?a=!0:(n=a,a=void 0),e.consume(u),i}function l(u){return n||a||!o?r(u):t(u)}}function hye(e,t){let r=0,a=0;return n;function n(i){return i===40?(r++,e.consume(i),n):i===41&&a<r?o(i):i===33||i===34||i===38||i===39||i===41||i===42||i===44||i===46||i===58||i===59||i===60||i===63||i===93||i===95||i===126?e.check(Gq,t,o)(i):i===null||At(i)||Ji(i)?t(i):(e.consume(i),n)}function o(i){return i===41&&a++,e.consume(i),n}}function bye(e,t,r){return a;function a(s){return s===33||s===34||s===39||s===41||s===42||s===44||s===46||s===58||s===59||s===63||s===95||s===126?(e.consume(s),a):s===38?(e.consume(s),o):s===93?(e.consume(s),n):s===60||s===null||At(s)||Ji(s)?t(s):r(s)}function n(s){return s===null||s===40||s===91||At(s)||Ji(s)?t(s):a(s)}function o(s){return ha(s)?i(s):r(s)}function i(s){return s===59?(e.consume(s),a):ha(s)?(e.consume(s),i):r(s)}}function yye(e,t,r){return a;function a(o){return e.consume(o),n}function n(o){return $r(o)?r(o):t(o)}}function Yq(e){return e===null||e===40||e===42||e===95||e===91||e===93||e===126||At(e)}function Kq(e){return!ha(e)}function Xq(e){return!(e===47||I4(e))}function I4(e){return e===43||e===45||e===46||e===95||$r(e)}function N4(e){let t=e.length,r=!1;for(;t--;){let a=e[t][1];if((a.type==="labelLink"||a.type==="labelImage")&&!a._balanced){r=!0;break}if(a._gfmAutolinkLiteralWalkedInto){r=!1;break}}return e.length>0&&!r&&(e[e.length-1][1]._gfmAutolinkLiteralWalkedInto=!0),r}c();c();var vye={tokenize:Eye,partial:!0};function R4(){return{document:{91:{name:"gfmFootnoteDefinition",tokenize:Sye,continuation:{tokenize:Tye},exit:Cye}},text:{91:{name:"gfmFootnoteCall",tokenize:kye},93:{name:"gfmPotentialFootnoteCall",add:"after",tokenize:xye,resolveTo:wye}}}}function xye(e,t,r){let a=this,n=a.events.length,o=a.parser.gfmFootnotes||(a.parser.gfmFootnotes=[]),i;for(;n--;){let l=a.events[n][1];if(l.type==="labelImage"){i=l;break}if(l.type==="gfmFootnoteCall"||l.type==="labelLink"||l.type==="label"||l.type==="image"||l.type==="link")break}return s;function s(l){if(!i||!i._balanced)return r(l);let u=Ya(a.sliceSerialize({start:i.end,end:a.now()}));return u.codePointAt(0)!==94||!o.includes(u.slice(1))?r(l):(e.enter("gfmFootnoteCallLabelMarker"),e.consume(l),e.exit("gfmFootnoteCallLabelMarker"),t(l))}}function wye(e,t){let r=e.length,a;for(;r--;)if(e[r][1].type==="labelImage"&&e[r][0]==="enter"){a=e[r][1];break}e[r+1][1].type="data",e[r+3][1].type="gfmFootnoteCallLabelMarker";let n={type:"gfmFootnoteCall",start:Object.assign({},e[r+3][1].start),end:Object.assign({},e[e.length-1][1].end)},o={type:"gfmFootnoteCallMarker",start:Object.assign({},e[r+3][1].end),end:Object.assign({},e[r+3][1].end)};o.end.column++,o.end.offset++,o.end._bufferIndex++;let i={type:"gfmFootnoteCallString",start:Object.assign({},o.end),end:Object.assign({},e[e.length-1][1].start)},s={type:"chunkString",contentType:"string",start:Object.assign({},i.start),end:Object.assign({},i.end)},l=[e[r+1],e[r+2],["enter",n,t],e[r+3],e[r+4],["enter",o,t],["exit",o,t],["enter",i,t],["enter",s,t],["exit",s,t],["exit",i,t],e[e.length-2],e[e.length-1],["exit",n,t]];return e.splice(r,e.length-r+1,...l),e}function kye(e,t,r){let a=this,n=a.parser.gfmFootnotes||(a.parser.gfmFootnotes=[]),o=0,i;return s;function s(f){return e.enter("gfmFootnoteCall"),e.enter("gfmFootnoteCallLabelMarker"),e.consume(f),e.exit("gfmFootnoteCallLabelMarker"),l}function l(f){return f!==94?r(f):(e.enter("gfmFootnoteCallMarker"),e.consume(f),e.exit("gfmFootnoteCallMarker"),e.enter("gfmFootnoteCallString"),e.enter("chunkString").contentType="string",u)}function u(f){if(o>999||f===93&&!i||f===null||f===91||At(f))return r(f);if(f===93){e.exit("chunkString");let p=e.exit("gfmFootnoteCallString");return n.includes(Ya(a.sliceSerialize(p)))?(e.enter("gfmFootnoteCallLabelMarker"),e.consume(f),e.exit("gfmFootnoteCallLabelMarker"),e.exit("gfmFootnoteCall"),t):r(f)}return At(f)||(i=!0),o++,e.consume(f),f===92?d:u}function d(f){return f===91||f===92||f===93?(e.consume(f),o++,u):u(f)}}function Sye(e,t,r){let a=this,n=a.parser.gfmFootnotes||(a.parser.gfmFootnotes=[]),o,i=0,s;return l;function l(h){return e.enter("gfmFootnoteDefinition")._container=!0,e.enter("gfmFootnoteDefinitionLabel"),e.enter("gfmFootnoteDefinitionLabelMarker"),e.consume(h),e.exit("gfmFootnoteDefinitionLabelMarker"),u}function u(h){return h===94?(e.enter("gfmFootnoteDefinitionMarker"),e.consume(h),e.exit("gfmFootnoteDefinitionMarker"),e.enter("gfmFootnoteDefinitionLabelString"),e.enter("chunkString").contentType="string",d):r(h)}function d(h){if(i>999||h===93&&!s||h===null||h===91||At(h))return r(h);if(h===93){e.exit("chunkString");let b=e.exit("gfmFootnoteDefinitionLabelString");return o=Ya(a.sliceSerialize(b)),e.enter("gfmFootnoteDefinitionLabelMarker"),e.consume(h),e.exit("gfmFootnoteDefinitionLabelMarker"),e.exit("gfmFootnoteDefinitionLabel"),p}return At(h)||(s=!0),i++,e.consume(h),h===92?f:d}function f(h){return h===91||h===92||h===93?(e.consume(h),i++,d):d(h)}function p(h){return h===58?(e.enter("definitionMarker"),e.consume(h),e.exit("definitionMarker"),n.includes(o)||n.push(o),Xe(e,m,"gfmFootnoteDefinitionWhitespace")):r(h)}function m(h){return t(h)}}function Tye(e,t,r){return e.check(Qi,t,e.attempt(vye,t,r))}function Cye(e){e.exit("gfmFootnoteDefinition")}function Eye(e,t,r){let a=this;return Xe(e,n,"gfmFootnoteDefinitionIndent",5);function n(o){let i=a.events[a.events.length-1];return i&&i[1].type==="gfmFootnoteDefinitionIndent"&&i[2].sliceSerialize(i[1],!0).length===4?t(o):r(o)}}c();c();function D4(e){let r=(e||{}).singleTilde,a={name:"strikethrough",tokenize:o,resolveAll:n};return r==null&&(r=!0),{text:{126:a},insideSpan:{null:[a]},attentionMarkers:{null:[126]}};function n(i,s){let l=-1;for(;++l<i.length;)if(i[l][0]==="enter"&&i[l][1].type==="strikethroughSequenceTemporary"&&i[l][1]._close){let u=l;for(;u--;)if(i[u][0]==="exit"&&i[u][1].type==="strikethroughSequenceTemporary"&&i[u][1]._open&&i[l][1].end.offset-i[l][1].start.offset===i[u][1].end.offset-i[u][1].start.offset){i[l][1].type="strikethroughSequence",i[u][1].type="strikethroughSequence";let d={type:"strikethrough",start:Object.assign({},i[u][1].start),end:Object.assign({},i[l][1].end)},f={type:"strikethroughText",start:Object.assign({},i[u][1].end),end:Object.assign({},i[l][1].start)},p=[["enter",d,s],["enter",i[u][1],s],["exit",i[u][1],s],["enter",f,s]],m=s.parser.constructs.insideSpan.null;m&&Kr(p,p.length,0,Au(m,i.slice(u+1,l),s)),Kr(p,p.length,0,[["exit",f,s],["enter",i[l][1],s],["exit",i[l][1],s],["exit",d,s]]),Kr(i,u-1,l-u+3,p),l=u+p.length-2;break}}for(l=-1;++l<i.length;)i[l][1].type==="strikethroughSequenceTemporary"&&(i[l][1].type="data");return i}function o(i,s,l){let u=this.previous,d=this.events,f=0;return p;function p(h){return u===126&&d[d.length-1][1].type!=="characterEscape"?l(h):(i.enter("strikethroughSequenceTemporary"),m(h))}function m(h){let b=Ws(u);if(h===126)return f>1?l(h):(i.consume(h),f++,m);if(f<2&&!r)return l(h);let w=i.exit("strikethroughSequenceTemporary"),v=Ws(h);return w._open=!v||v===2&&!!b,w._close=!b||b===2&&!!v,s(h)}}}c();c();c();var oS=class{constructor(){this.map=[]}add(t,r,a){_ye(this,t,r,a)}consume(t){if(this.map.sort(function(o,i){return o[0]-i[0]}),this.map.length===0)return;let r=this.map.length,a=[];for(;r>0;)r-=1,a.push(t.slice(this.map[r][0]+this.map[r][1]),this.map[r][2]),t.length=this.map[r][0];a.push(t.slice()),t.length=0;let n=a.pop();for(;n;){for(let o of n)t.push(o);n=a.pop()}this.map.length=0}};function _ye(e,t,r,a){let n=0;if(!(r===0&&a.length===0)){for(;n<e.map.length;){if(e.map[n][0]===t){e.map[n][1]+=r,e.map[n][2].push(...a);return}n+=1}e.map.push([t,r,a])}}c();function Jq(e,t){let r=!1,a=[];for(;t<e.length;){let n=e[t];if(r){if(n[0]==="enter")n[1].type==="tableContent"&&a.push(e[t+1][1].type==="tableDelimiterMarker"?"left":"none");else if(n[1].type==="tableContent"){if(e[t-1][1].type==="tableDelimiterMarker"){let o=a.length-1;a[o]=a[o]==="left"?"center":"right"}}else if(n[1].type==="tableDelimiterRow")break}else n[0]==="enter"&&n[1].type==="tableDelimiterRow"&&(r=!0);t+=1}return a}function P4(){return{flow:{null:{name:"table",tokenize:Aye,resolveAll:Iye}}}}function Aye(e,t,r){let a=this,n=0,o=0,i;return s;function s(D){let ie=a.events.length-1;for(;ie>-1;){let N=a.events[ie][1].type;if(N==="lineEnding"||N==="linePrefix")ie--;else break}let $=ie>-1?a.events[ie][1].type:null,U=$==="tableHead"||$==="tableRow"?C:l;return U===C&&a.parser.lazy[a.now().line]?r(D):U(D)}function l(D){return e.enter("tableHead"),e.enter("tableRow"),u(D)}function u(D){return D===124||(i=!0,o+=1),d(D)}function d(D){return D===null?r(D):Pe(D)?o>1?(o=0,a.interrupt=!0,e.exit("tableRow"),e.enter("lineEnding"),e.consume(D),e.exit("lineEnding"),m):r(D):et(D)?Xe(e,d,"whitespace")(D):(o+=1,i&&(i=!1,n+=1),D===124?(e.enter("tableCellDivider"),e.consume(D),e.exit("tableCellDivider"),i=!0,d):(e.enter("data"),f(D)))}function f(D){return D===null||D===124||At(D)?(e.exit("data"),d(D)):(e.consume(D),D===92?p:f)}function p(D){return D===92||D===124?(e.consume(D),f):f(D)}function m(D){return a.interrupt=!1,a.parser.lazy[a.now().line]?r(D):(e.enter("tableDelimiterRow"),i=!1,et(D)?Xe(e,h,"linePrefix",a.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(D):h(D))}function h(D){return D===45||D===58?w(D):D===124?(i=!0,e.enter("tableCellDivider"),e.consume(D),e.exit("tableCellDivider"),b):T(D)}function b(D){return et(D)?Xe(e,w,"whitespace")(D):w(D)}function w(D){return D===58?(o+=1,i=!0,e.enter("tableDelimiterMarker"),e.consume(D),e.exit("tableDelimiterMarker"),v):D===45?(o+=1,v(D)):D===null||Pe(D)?S(D):T(D)}function v(D){return D===45?(e.enter("tableDelimiterFiller"),x(D)):T(D)}function x(D){return D===45?(e.consume(D),x):D===58?(i=!0,e.exit("tableDelimiterFiller"),e.enter("tableDelimiterMarker"),e.consume(D),e.exit("tableDelimiterMarker"),k):(e.exit("tableDelimiterFiller"),k(D))}function k(D){return et(D)?Xe(e,S,"whitespace")(D):S(D)}function S(D){return D===124?h(D):D===null||Pe(D)?!i||n!==o?T(D):(e.exit("tableDelimiterRow"),e.exit("tableHead"),t(D)):T(D)}function T(D){return r(D)}function C(D){return e.enter("tableRow"),_(D)}function _(D){return D===124?(e.enter("tableCellDivider"),e.consume(D),e.exit("tableCellDivider"),_):D===null||Pe(D)?(e.exit("tableRow"),t(D)):et(D)?Xe(e,_,"whitespace")(D):(e.enter("data"),R(D))}function R(D){return D===null||D===124||At(D)?(e.exit("data"),_(D)):(e.consume(D),D===92?F:R)}function F(D){return D===92||D===124?(e.consume(D),R):R(D)}}function Iye(e,t){let r=-1,a=!0,n=0,o=[0,0,0,0],i=[0,0,0,0],s=!1,l=0,u,d,f,p=new oS;for(;++r<e.length;){let m=e[r],h=m[1];m[0]==="enter"?h.type==="tableHead"?(s=!1,l!==0&&(Qq(p,t,l,u,d),d=void 0,l=0),u={type:"table",start:Object.assign({},h.start),end:Object.assign({},h.end)},p.add(r,0,[["enter",u,t]])):h.type==="tableRow"||h.type==="tableDelimiterRow"?(a=!0,f=void 0,o=[0,0,0,0],i=[0,r+1,0,0],s&&(s=!1,d={type:"tableBody",start:Object.assign({},h.start),end:Object.assign({},h.end)},p.add(r,0,[["enter",d,t]])),n=h.type==="tableDelimiterRow"?2:d?3:1):n&&(h.type==="data"||h.type==="tableDelimiterMarker"||h.type==="tableDelimiterFiller")?(a=!1,i[2]===0&&(o[1]!==0&&(i[0]=i[1],f=iS(p,t,o,n,void 0,f),o=[0,0,0,0]),i[2]=r)):h.type==="tableCellDivider"&&(a?a=!1:(o[1]!==0&&(i[0]=i[1],f=iS(p,t,o,n,void 0,f)),o=i,i=[o[1],r,0,0])):h.type==="tableHead"?(s=!0,l=r):h.type==="tableRow"||h.type==="tableDelimiterRow"?(l=r,o[1]!==0?(i[0]=i[1],f=iS(p,t,o,n,r,f)):i[1]!==0&&(f=iS(p,t,i,n,r,f)),n=0):n&&(h.type==="data"||h.type==="tableDelimiterMarker"||h.type==="tableDelimiterFiller")&&(i[3]=r)}for(l!==0&&Qq(p,t,l,u,d),p.consume(t.events),r=-1;++r<t.events.length;){let m=t.events[r];m[0]==="enter"&&m[1].type==="table"&&(m[1]._align=Jq(t.events,r))}return e}function iS(e,t,r,a,n,o){let i=a===1?"tableHeader":a===2?"tableDelimiter":"tableData",s="tableContent";r[0]!==0&&(o.end=Object.assign({},dm(t.events,r[0])),e.add(r[0],0,[["exit",o,t]]));let l=dm(t.events,r[1]);if(o={type:i,start:Object.assign({},l),end:Object.assign({},l)},e.add(r[1],0,[["enter",o,t]]),r[2]!==0){let u=dm(t.events,r[2]),d=dm(t.events,r[3]),f={type:s,start:Object.assign({},u),end:Object.assign({},d)};if(e.add(r[2],0,[["enter",f,t]]),a!==2){let p=t.events[r[2]],m=t.events[r[3]];if(p[1].end=Object.assign({},m[1].end),p[1].type="chunkText",p[1].contentType="text",r[3]>r[2]+1){let h=r[2]+1,b=r[3]-r[2]-1;e.add(h,b,[])}}e.add(r[3]+1,0,[["exit",f,t]])}return n!==void 0&&(o.end=Object.assign({},dm(t.events,n)),e.add(n,0,[["exit",o,t]]),o=void 0),o}function Qq(e,t,r,a,n){let o=[],i=dm(t.events,r);n&&(n.end=Object.assign({},i),o.push(["exit",n,t])),a.end=Object.assign({},i),o.push(["exit",a,t]),e.add(r+1,0,o)}function dm(e,t){let r=e[t],a=r[0]==="enter"?"start":"end";return r[1][a]}c();c();var Lye={name:"tasklistCheck",tokenize:Nye};function O4(){return{text:{91:Lye}}}function Nye(e,t,r){let a=this;return n;function n(l){return a.previous!==null||!a._gfmTasklistFirstContentOfListItem?r(l):(e.enter("taskListCheck"),e.enter("taskListCheckMarker"),e.consume(l),e.exit("taskListCheckMarker"),o)}function o(l){return At(l)?(e.enter("taskListCheckValueUnchecked"),e.consume(l),e.exit("taskListCheckValueUnchecked"),i):l===88||l===120?(e.enter("taskListCheckValueChecked"),e.consume(l),e.exit("taskListCheckValueChecked"),i):r(l)}function i(l){return l===93?(e.enter("taskListCheckMarker"),e.consume(l),e.exit("taskListCheckMarker"),e.exit("taskListCheck"),s):r(l)}function s(l){return Pe(l)?t(l):et(l)?e.check({tokenize:Rye},t,r)(l):r(l)}}function Rye(e,t,r){return Xe(e,a,"whitespace");function a(n){return n===null?r(n):t(n)}}function eV(e){return uk([L4(),R4(),D4(e),P4(),O4()])}var Dye={};function sS(e){let t=this,r=e||Dye,a=t.data(),n=a.micromarkExtensions||(a.micromarkExtensions=[]),o=a.fromMarkdownExtensions||(a.fromMarkdownExtensions=[]),i=a.toMarkdownExtensions||(a.toMarkdownExtensions=[]);n.push(eV(r)),o.push(_4()),i.push(A4(r))}var Vt=L(ee()),Pye=({code:e})=>{let[t,r]=(0,Js.useState)(!1),a=async()=>{try{await navigator.clipboard.writeText(e),r(!0),setTimeout(()=>r(!1),2e3)}catch(n){console.error("Failed to copy code:",n)}};return(0,Vt.jsx)(oe.button,{onClick:a,className:"p-1.5 rounded-lg transition-colors hover:bg-gray-200 dark:hover:bg-white/10",whileTap:{scale:.95},children:(0,Vt.jsx)(wt,{mode:"wait",children:t?(0,Vt.jsx)(oe.div,{initial:{scale:0,opacity:0},animate:{scale:1,opacity:1},exit:{scale:0,opacity:0},transition:{duration:.15},children:(0,Vt.jsx)(Qn,{className:"w-4 h-4 text-green-500 dark:text-green-400"})},"check"):(0,Vt.jsx)(oe.div,{initial:{scale:0,opacity:0},animate:{scale:1,opacity:1},exit:{scale:0,opacity:0},transition:{duration:.15},children:(0,Vt.jsx)(Nc,{className:"w-4 h-4 text-gray-600 dark:text-gray-400 hover:text-gray-900 dark:hover:text-white"})},"copy")})})};function Oye({children:e,className:t,components:r,chunkSize:a=3e3,enableChunking:n=!0,variant:o="default",animated:i,onAnimateComplete:s}){let[l,u]=(0,Js.useState)(1),d=(0,Js.useMemo)(()=>{if(!n)return[e||""];let w=e||"",v=[],x=0;for(;x<w.length;)v.push(w.slice(x,x+a)),x+=a;return v},[e,a,n]),f=d.slice(0,l).join(""),p=l<d.length,m=()=>{p&&u(w=>w+1)},h=(0,Js.useMemo)(()=>({code({className:w,children:v,...x}){let k=/language-(\w+)/.exec(w||""),S=k?k[1]:"",T=String(v).replace(/\n$/,"");return w?(0,Vt.jsxs)("div",{className:"my-4 rounded-xl overflow-hidden border bg-gray-50 border-[#FF8800]/20 dark:bg-[#1e1e1e] dark:border-white/10",children:[(0,Vt.jsxs)("div",{className:"flex items-center justify-between px-4 py-2 border-b bg-gray-200 border-[#FF8800]/10 dark:bg-black/20 dark:border-white/5",children:[(0,Vt.jsx)("span",{className:"text-xs font-medium uppercase tracking-wide text-gray-600 dark:text-gray-400",children:S||"code"}),(0,Vt.jsx)(Pye,{code:T})]}),(0,Vt.jsx)("div",{className:"overflow-x-auto",children:(0,Vt.jsx)("pre",{className:"p-4 m-0",children:(0,Vt.jsx)("code",{className:"text-sm font-mono block text-gray-900 dark:text-gray-100",children:T})})})]}):(0,Vt.jsx)("code",{className:"py-0.5 px-1.5 rounded font-mono text-xs bg-gray-100 text-gray-700 dark:bg-purple-500/20 dark:text-purple-200",...x,children:v})},pre:({children:w})=>(0,Vt.jsx)("div",{className:"w-full",children:w}),img:({src:w,alt:v})=>(0,Vt.jsx)(oe.img,{src:w,alt:v||"",className:"rounded-lg max-w-md max-h-96 w-auto h-auto object-contain my-4",initial:{opacity:0,scale:.95},animate:{opacity:1,scale:1},transition:{duration:.3},loading:"lazy"}),a:({href:w,children:v})=>(0,Vt.jsx)("a",{href:w,target:"_blank",rel:"noopener noreferrer",className:"transition-colors text-[#FF8800] hover:text-[#E67A00] dark:text-[#FFB347] dark:hover:text-[#FFC870]",children:v}),table:({children:w})=>(0,Vt.jsx)("div",{className:"my-4 overflow-x-auto rounded-lg border border-[#FF8800]/20 dark:border-white/10",children:(0,Vt.jsx)("table",{className:"min-w-full divide-y divide-[#FF8800]/20 dark:divide-white/10",children:w})}),th:({children:w})=>(0,Vt.jsx)("th",{className:"px-4 py-2 text-left text-xs font-semibold uppercase tracking-wider bg-gray-100 text-black dark:bg-white/5 dark:text-white",children:w}),td:({children:w})=>(0,Vt.jsx)("td",{className:"px-4 py-2 text-sm border-t text-gray-700 border-[#FF8800]/10 dark:text-white/90 dark:border-white/5",children:w}),blockquote:({children:w})=>(0,Vt.jsx)("blockquote",{className:"border-l-4 pl-4 py-2 my-4 italic border-[#FF8800] bg-gray-100 text-gray-700 dark:border-[#FFB347] dark:bg-white/5 dark:text-white/90",children:w}),hr:()=>(0,Vt.jsx)("hr",{className:"my-6 border-t border-[#FF8800]/20 dark:border-white/10"})}),[]),b=(0,Js.useMemo)(()=>({...h,...r}),[h,r]);return e?(0,Vt.jsxs)("div",{className:"w-full px-1",children:[(0,Vt.jsx)(kR,{className:iz("prose prose-sm","text-sm break-words prose-p:leading-relaxed prose-pre:p-0","prose-code:before:hidden prose-code:after:hidden","prose-hr:my-2","max-w-full","text-black dark:text-white","prose-p:text-black dark:prose-p:text-white","prose-li:text-black dark:prose-li:text-white","prose-strong:text-black dark:prose-strong:text-white","prose-em:text-black dark:prose-em:text-white","prose-strong:font-bold","prose-headings:text-black dark:prose-headings:text-white","prose-a:no-underline hover:prose-a:underline","prose-p:my-1 prose-p:leading-normal","prose-ul:mt-0 prose-ul:mb-2 prose-ul:list-disc prose-ul:pl-5","prose-ol:mt-0 prose-ol:mb-2 prose-ol:list-decimal prose-ol:pl-5","prose-li:my-0 prose-li:py-1","prose-headings:mt-4 prose-headings:pt-1 prose-headings:mb-1 prose-headings:leading-tight","prose-h1:text-xl prose-h2:text-lg prose-h3:text-base","prose-blockquote:py-1 prose-blockquote:px-4 prose-blockquote:my-1","prose-table:my-2",o==="compact"&&"prose-p:my-0.5 prose-headings:mt-2 prose-headings:mb-1 prose-ul:my-0.5 prose-ol:my-0.5",t),components:b,remarkPlugins:[sS],rehypePlugins:[aS],children:f}),(0,Vt.jsx)(wt,{children:n&&p&&(0,Vt.jsx)(oe.div,{initial:{opacity:0,y:-10},animate:{opacity:1,y:0},exit:{opacity:0,y:-10},className:"flex justify-center mt-4",children:(0,Vt.jsxs)(oe.button,{onClick:m,className:"flex items-center gap-2 px-4 py-2 rounded-lg font-medium text-sm border transition-all text-white bg-[#FF8800] border-[#E67A00] dark:bg-[#FFB347] dark:border-[#FFB347]/30",whileHover:{opacity:.9},whileTap:{scale:.98},children:[(0,Vt.jsx)("span",{children:"Mostrar m\xE1s"}),(0,Vt.jsx)(qt,{className:"w-4 h-4"})]})})})]}):null}var tV=(0,Js.memo)(Oye);tV.displayName="Markdown";var ns=tV;var os=L(ee());function Mye(){let[e,t]=(0,Xr.useState)([]),[r,a]=(0,Xr.useState)(""),n=(0,Xr.useRef)(null),o=(0,Xr.useRef)(0),i=(0,Xr.useRef)(0),s=(0,Xr.useRef)(!1),l=(0,Xr.useCallback)(d=>{d&&t(f=>[...f,d])},[]),u=(0,Xr.useCallback)(()=>{t([]),a(""),i.current=0,n.current&&cancelAnimationFrame(n.current),n.current=null,o.current=0,s.current=!1},[]);return(0,Xr.useEffect)(()=>{if(s.current)return;let d=15,f=e.join("");if(i.current>=f.length){a(f);return}s.current=!0;let p=m=>{i.current<f.length?(m-o.current>d&&(i.current++,a(f.slice(0,i.current)),o.current=m),n.current=requestAnimationFrame(p)):s.current=!1};return n.current=requestAnimationFrame(p),()=>{n.current&&cancelAnimationFrame(n.current),s.current=!1}},[e]),{stream:r,addPart:l,reset:u}}var M4=(0,Xr.memo)(({text:e,animate:t=!1})=>{let r=(0,Xr.useRef)(""),{stream:a,addPart:n,reset:o}=Mye();return(0,Xr.useEffect)(()=>{if(!e||!t){!t&&a&&o();return}if(r.current!==e){let s=e.slice(r.current.length);s&&n(s),r.current=e}},[e,t,n,o,a]),(0,os.jsx)(ns,{enableChunking:!1,children:t?a||e||"":e})});M4.displayName="StreamingMessage";var rV=(0,Xr.memo)(({phase:e,text:t,kind:r})=>(0,os.jsxs)(oe.div,{initial:{opacity:0,y:10},animate:{opacity:1,y:0},transition:{duration:.3},className:l7(e),children:[(0,os.jsx)("div",{className:"relative w-4 h-4",children:e==="loading"?(0,os.jsx)(dh,{className:tk("loading")}):e==="error"?(0,os.jsx)(Zl,{className:tk("error")}):(0,os.jsx)(Qn,{className:tk("complete")})}),(0,os.jsx)("span",{className:u7(e),children:t})]}));rV.displayName="ToolEvent";var Fye=(0,Xr.memo)(({kind:e,loadingText:t,completeText:r,errorText:a,finalPhase:n="complete"})=>{let[o,i]=(0,Xr.useState)("loading");return(0,Xr.useEffect)(()=>{i("loading");let l=setTimeout(()=>{i(n==="error"?"error":"complete")},1500);return()=>clearTimeout(l)},[]),(0,os.jsx)(rV,{phase:o,text:o==="loading"?t:o==="error"&&a||r,kind:e})});Fye.displayName="ProgressiveToolEvent";c();var aV=L(ee()),zye=()=>(0,aV.jsx)(oe.div,{className:"w-2 h-2 bg-white ml-2 rounded-full",animate:{scale:[1,1.2,1],opacity:[.4,1,.4]},transition:{duration:1.2,repeat:1/0,ease:"easeInOut"}}),F4=zye;c();var Uo=L(ae());var Nr=L(ee()),nV=({messageId:e,children:t,onFeedback:r,enabled:a=!0})=>{let n=(0,Uo.useRef)(null),[o,i]=(0,Uo.useState)(null),[s,l]=(0,Uo.useState)(!1),[u,d]=(0,Uo.useState)(""),[f,p]=(0,Uo.useState)(!1),[m,h]=(0,Uo.useState)(null),b=(0,Uo.useCallback)(()=>{if(!a)return;let S=window.getSelection();if(!S||S.isCollapsed){setTimeout(()=>{f||(l(!1),i(null))},200);return}let T=S.toString().trim();if(!T||T.length<3)return;let C=S.getRangeAt(0);if(!n.current?.contains(C.commonAncestorContainer))return;let _=C.getBoundingClientRect(),R=n.current.getBoundingClientRect(),F=new DOMRect(_.left-R.left,_.top-R.top,_.width,_.height),D=n.current?.textContent||"";i({text:T,rect:F,startOffset:C.startOffset,endOffset:C.endOffset,fullText:D}),l(!0)},[a,f]);(0,Uo.useEffect)(()=>(document.addEventListener("mouseup",b),document.addEventListener("keyup",b),()=>{document.removeEventListener("mouseup",b),document.removeEventListener("keyup",b)}),[b]);let w=S=>{h(S),p(!0)},v=()=>{!o||!m||!r||(r({messageId:e,selectedText:o.text,fullText:o.fullText,feedback:m,comment:u.trim()||void 0,startOffset:o.startOffset,endOffset:o.endOffset}),l(!1),i(null),d(""),p(!1),h(null),window.getSelection()?.removeAllRanges())},x=()=>{l(!1),i(null),d(""),p(!1),h(null),window.getSelection()?.removeAllRanges()},k=()=>o?.rect?{position:"absolute",left:`${o.rect.left+o.rect.width/2}px`,top:`${o.rect.top-8}px`,transform:"translate(-50%, -100%)",zIndex:50}:{display:"none"};return(0,Nr.jsxs)("div",{ref:n,className:"relative",children:[t,(0,Nr.jsx)(wt,{children:s&&o&&(0,Nr.jsx)(oe.div,{initial:{opacity:0,y:5},animate:{opacity:1,y:0},exit:{opacity:0,y:5},transition:{duration:.15},style:k(),className:"bg-white dark:bg-zinc-800 rounded-lg shadow-lg border border-gray-200 dark:border-zinc-700 p-2",children:f?(0,Nr.jsxs)("div",{className:"flex flex-col gap-2 min-w-[250px]",children:[(0,Nr.jsx)("div",{className:"flex items-center gap-2 text-xs",children:m==="good"?(0,Nr.jsxs)("span",{className:"flex items-center gap-1 text-green-600 dark:text-green-400",children:[(0,Nr.jsx)(Wl,{className:"w-3 h-3"}),"Mantener esto"]}):(0,Nr.jsxs)("span",{className:"flex items-center gap-1 text-red-600 dark:text-red-400",children:[(0,Nr.jsx)(Gl,{className:"w-3 h-3"}),"No decir esto"]})}),(0,Nr.jsxs)("p",{className:"text-xs text-gray-500 dark:text-gray-400 italic line-clamp-2",children:['"',o.text,'"']}),(0,Nr.jsx)("input",{type:"text",value:u,onChange:S=>d(S.target.value),placeholder:"\xBFPor qu\xE9? (opcional)",className:"w-full px-2 py-1 text-sm rounded border border-gray-200 dark:border-zinc-600 bg-white dark:bg-zinc-900 focus:outline-none focus:ring-1 focus:ring-blue-500",onKeyDown:S=>{S.key==="Enter"?v():S.key==="Escape"&&x()},autoFocus:!0}),(0,Nr.jsxs)("div",{className:"flex justify-end gap-1",children:[(0,Nr.jsx)(Ir,{size:"sm",variant:"ghost",onClick:x,className:"h-7 text-xs",children:"Cancelar"}),(0,Nr.jsxs)(Ir,{size:"sm",onClick:v,className:"h-7 text-xs",children:[(0,Nr.jsx)(gh,{className:"w-3 h-3 mr-1"}),"Guardar"]})]})]}):(0,Nr.jsxs)("div",{className:"flex items-center gap-1",children:[(0,Nr.jsx)("button",{onClick:()=>w("good"),className:"p-1.5 rounded-md hover:bg-green-100 dark:hover:bg-green-900/30 text-green-600 dark:text-green-400 transition-colors",title:"Esto est\xE1 bien, mantenerlo",children:(0,Nr.jsx)(Wl,{className:"w-4 h-4"})}),(0,Nr.jsx)("button",{onClick:()=>w("bad"),className:"p-1.5 rounded-md hover:bg-red-100 dark:hover:bg-red-900/30 text-red-600 dark:text-red-400 transition-colors",title:"Esto est\xE1 mal, no decirlo",children:(0,Nr.jsx)(Gl,{className:"w-4 h-4"})}),(0,Nr.jsx)("button",{onClick:x,className:"p-1.5 rounded-md hover:bg-gray-100 dark:hover:bg-zinc-700 text-gray-400 transition-colors",children:(0,Nr.jsx)(Mr,{className:"w-4 h-4"})})]})})})]})};c();var lS=L(ae());var ba=L(ee()),Uye=e=>{if(e==null)return null;let t=Math.round(e*100),r="text-gray-400";return t>=80?r="text-green-500":t>=60?r="text-yellow-500":t>=40&&(r="text-orange-400"),{text:`${t}%`,colorClass:r}},oV=e=>{try{return new URL(e).hostname.replace("www.","")}catch{return e}},Bye=(e,t)=>e.sourceName?e.sourceName:e.datasource_name?e.datasource_name:e.source_url?oV(e.source_url):e.source?oV(e.source):`Source ${t+1}`,z4=(0,lS.memo)(({sources:e,maxSources:t=5,dashboardBaseUrl:r="/datastores",defaultExpanded:a=!1})=>{let[n,o]=(0,lS.useState)(a);if(!e||e.length===0)return null;let i=e.slice(0,t),s=e.length>t,l=n?qt:Ic;return(0,ba.jsxs)(oe.div,{initial:{opacity:0,y:5},animate:{opacity:1,y:0},transition:{duration:.2,delay:.1},className:"mt-3 pt-2 border-t border-gray-100 dark:border-neutral-800",children:[(0,ba.jsxs)("button",{onClick:()=>o(!n),className:"flex items-center gap-1.5 text-left hover:opacity-80 transition-opacity w-full group",children:[(0,ba.jsx)(l,{className:"w-3 h-3 text-gray-400 dark:text-gray-500 transition-transform"}),(0,ba.jsx)(ah,{className:"w-3 h-3 text-gray-400 dark:text-gray-500"}),(0,ba.jsxs)("span",{className:"text-[10px] font-medium text-gray-400 dark:text-gray-500 uppercase tracking-wide",children:["Sources (",e.length,")"]})]}),(0,ba.jsx)(wt,{children:n&&(0,ba.jsx)(oe.div,{initial:{height:0,opacity:0},animate:{height:"auto",opacity:1},exit:{height:0,opacity:0},transition:{duration:.2},className:"overflow-hidden",children:(0,ba.jsxs)("div",{className:"flex flex-wrap gap-1.5 mt-2",children:[i.map((u,d)=>{let f=Bye(u,d),p=Uye(u.score),m=!!u.datastoreId,h=u.source||u.source_url,b=null,w=!1;m?(b=`${r}/${u.datastoreId}`,u.datasourceId&&(b+=`?datasourceId=${u.datasourceId}`)):h&&(b=h,w=!0);let x=(0,ba.jsxs)(ba.Fragment,{children:[(0,ba.jsx)(Rc,{className:"w-2.5 h-2.5 flex-shrink-0"}),(0,ba.jsx)("span",{className:"truncate max-w-[150px]",children:f}),p&&(0,ba.jsx)("span",{className:`text-[9px] font-medium ${p.colorClass}`,children:p.text})]});return b?(0,ba.jsx)(oe.a,{href:b,target:w?"_blank":void 0,rel:w?"noopener noreferrer":void 0,className:`inline-flex items-center gap-1 px-2 py-1 rounded-md text-[10px] transition-colors ${w?"bg-gray-50 dark:bg-neutral-800 hover:bg-gray-100 dark:hover:bg-neutral-700 border border-gray-200 dark:border-neutral-700 text-gray-600 dark:text-gray-300":"bg-orange-50 dark:bg-orange-900/20 hover:bg-orange-100 dark:hover:bg-orange-900/30 border border-orange-200 dark:border-orange-800 text-orange-700 dark:text-orange-300"}`,initial:{opacity:0,scale:.95},animate:{opacity:1,scale:1},transition:{delay:d*.03},children:x},u.id||u.datasourceId||d):(0,ba.jsx)(oe.div,{className:"inline-flex items-center gap-1 px-2 py-1 rounded-md text-[10px] bg-gray-50 dark:bg-neutral-800 border border-gray-100 dark:border-neutral-700 text-gray-500 dark:text-gray-400",initial:{opacity:0,scale:.95},animate:{opacity:1,scale:1},transition:{delay:d*.03},children:x},u.id||d)}),s&&(0,ba.jsxs)("span",{className:"inline-flex items-center px-2 py-1 text-[10px] text-gray-400 dark:text-gray-500",children:["+",e.length-t," more"]})]})})})]})});z4.displayName="SourcesDisplay";c();c();c();var uS=L(ae());var Ne=L(ee()),$ye=e=>{let{query:t,answer:r,results:a=[],images:n=[],variant:o="compact",status:i="complete",onClose:s,onExpand:l,channel:u,toolName:d="web_search",...f}=e,m=Un(d)?.displayName||"B\xFAsqueda Web",h=t,b=r,w=a,v=n,x=f.result||f.output,k=f.args||f.input;if(!h&&k?.query&&(h=k.query),x){if(x.data)h=h||x.data.query,b=b||x.data.answer,w=w.length>0?w:x.data.results||[],v=v.length>0?v:x.data.images||[];else if(typeof x=="string")try{let N=JSON.parse(x);N.success&&N.data&&(h=h||N.data.query,b=b||N.data.answer,w=w.length>0?w:N.data.results||[],v=v.length>0?v:N.data.images||[])}catch(N){console.warn("[WebSearch] Failed to parse tool output:",N)}}let S=f.text;if(!x&&S&&typeof S=="string")try{let N=JSON.parse(S);N.success&&N.data&&(h=h||N.data.query,b=b||N.data.answer,w=w.length>0?w:N.data.results||[],v=v.length>0?v:N.data.images||[])}catch(N){console.warn("[WebSearch] Failed to parse text data:",N)}let T=o==="sidebar",[C,_]=(0,uS.useState)(T);(0,uS.useEffect)(()=>{T&&_(!0)},[T]);let R=Array.isArray(v)?v.map(N=>{if(N){if(typeof N=="string")return N;if(typeof N=="object"&&"url"in N&&typeof N.url=="string")return N.url}}).filter(Boolean):[],F=R.length>0,D=F?R.slice(0,4):[],ie=o==="sidebar",$=o==="compact",U=()=>{$&&l?l({query:h,answer:b,results:w,images:v}):_(N=>!N)};if($){let N=i==="loading",H=i==="complete",V=i==="error";return u==="agent_builder"?(0,Ne.jsx)("div",{className:"w-auto inline-block",children:(0,Ne.jsxs)("div",{className:"inline-flex items-center gap-2 px-3 py-2 rounded-xl bg-white dark:bg-neutral-800 border border-neutral-200 dark:border-neutral-700",children:[N&&(0,Ne.jsx)(Ke,{className:"w-4 h-4 text-blue-600 dark:text-blue-400 animate-spin"}),H&&(0,Ne.jsx)(ar,{className:"w-4 h-4 text-green-600 dark:text-green-400"}),V&&(0,Ne.jsx)(Ui,{className:"w-4 h-4 text-red-600 dark:text-red-400"}),(0,Ne.jsxs)("span",{className:"text-sm font-medium text-neutral-900 dark:text-neutral-100",children:[N&&`Ejecutando ${m}`,H&&m,V&&`${m} Fallida`]}),H&&l&&(0,Ne.jsxs)(Ne.Fragment,{children:[(0,Ne.jsx)("span",{className:"text-neutral-400 dark:text-neutral-500",children:"\xB7"}),(0,Ne.jsxs)("button",{type:"button",onClick:U,className:"inline-flex items-center gap-0.5 text-xs text-orange-600 dark:text-orange-400 hover:text-orange-700 dark:hover:text-orange-300 transition-colors",children:["Ver",(0,Ne.jsx)(ci,{className:"w-3 h-3"})]})]})]})}):(0,Ne.jsx)("div",{className:"w-full max-w-2xl",children:(0,Ne.jsxs)("div",{className:"rounded-xl border border-neutral-200 dark:border-neutral-700 bg-white dark:bg-neutral-800 overflow-hidden",children:[(0,Ne.jsxs)("button",{type:"button",onClick:()=>_(!C),className:"w-full flex items-center justify-between gap-3 px-4 py-3 hover:bg-neutral-50 dark:hover:bg-neutral-700 transition-colors",children:[(0,Ne.jsxs)("div",{className:"flex items-center gap-2",children:[N&&(0,Ne.jsx)(Ke,{className:"w-4 h-4 text-blue-600 dark:text-blue-400 animate-spin"}),H&&(0,Ne.jsx)(ar,{className:"w-4 h-4 text-green-600 dark:text-green-400"}),V&&(0,Ne.jsx)(Ur,{className:"w-4 h-4 text-red-600 dark:text-red-400"}),(0,Ne.jsxs)(Tt,{className:"text-neutral-900 dark:text-neutral-100",children:[N&&`Ejecutando ${m}...`,H&&m,V&&`${m} Fallida`]}),h&&(0,Ne.jsx)(Pt,{className:"text-xs truncate max-w-xs",children:h})]}),(0,Ne.jsx)(oe.div,{animate:{rotate:C?180:0},transition:{duration:.2},children:(0,Ne.jsx)(qt,{className:"w-4 h-4 text-neutral-700 dark:text-neutral-300"})})]}),(0,Ne.jsx)(wt,{children:C&&(0,Ne.jsx)(oe.div,{initial:{height:0,opacity:0},animate:{height:"auto",opacity:1},exit:{height:0,opacity:0},transition:{duration:.3},className:"border-t border-neutral-200 dark:border-neutral-700 overflow-hidden",children:(0,Ne.jsxs)("div",{className:"p-4 space-y-3",children:[b&&(0,Ne.jsxs)("div",{children:[(0,Ne.jsx)(Tt,{className:"mb-2 text-neutral-700 dark:text-neutral-300",children:"Resumen"}),(0,Ne.jsx)(Pt,{className:"whitespace-pre-wrap break-words leading-relaxed",children:b})]}),F&&(0,Ne.jsx)("div",{className:"grid grid-cols-4 gap-2",children:D.map((j,Z)=>(0,Ne.jsx)("div",{className:"overflow-hidden rounded-xl border border-neutral-200 dark:border-neutral-700",children:(0,Ne.jsx)("img",{src:j,alt:h||"Web search image",className:"h-20 w-full object-cover",loading:"lazy"})},`${j}-${Z}`))}),w.length>0&&(0,Ne.jsx)("div",{className:"space-y-2",children:w.map((j,Z)=>(0,Ne.jsxs)("div",{className:"rounded-lg border border-neutral-200 dark:border-neutral-700 p-3",children:[j.title&&(0,Ne.jsx)(Tt,{className:"mb-1 text-neutral-900 dark:text-neutral-100",children:j.title}),j.url&&(0,Ne.jsxs)("a",{href:j.url,target:"_blank",rel:"noreferrer",className:"inline-flex items-center gap-1 text-xs text-blue-600 dark:text-blue-400 hover:opacity-70 mb-2",children:[(0,Ne.jsx)(na,{className:"w-3 h-3"}),"Ver fuente"]}),(j.snippet||j.content)&&(0,Ne.jsx)(Pt,{className:"text-xs line-clamp-2",children:j.snippet||j.content})]},`${j.url||"result"}-${Z}`))})]})})})]})})}return(0,Ne.jsxs)("div",{className:"w-full h-full bg-white dark:bg-neutral-900 md:rounded-tl-2xl flex flex-col",children:[(0,Ne.jsxs)("div",{className:"flex items-center justify-between gap-3 px-4 py-3 md:py-3 pt-safe border-b border-neutral-200 dark:border-neutral-700 flex-shrink-0",children:[(0,Ne.jsxs)("div",{className:"flex items-center gap-2 flex-1 min-w-0",children:[(0,Ne.jsx)(Ui,{className:"w-4 h-4 text-blue-600 dark:text-blue-400 flex-shrink-0"}),(0,Ne.jsxs)("div",{className:"flex flex-col gap-0.5 flex-1 min-w-0",children:[(0,Ne.jsx)(Tt,{className:"text-neutral-900 dark:text-neutral-100",children:m}),h&&(0,Ne.jsx)(Pt,{className:"truncate text-xs",children:h})]})]}),s&&(0,Ne.jsx)("button",{type:"button",className:"flex-shrink-0 p-2 md:p-1.5 rounded-full md:rounded-lg text-neutral-600 dark:text-neutral-400 bg-neutral-100 dark:bg-neutral-800 hover:bg-neutral-200 dark:hover:bg-neutral-700 transition-colors",onClick:s,children:(0,Ne.jsx)(Mr,{className:"w-5 h-5 md:w-4 md:h-4"})})]}),(0,Ne.jsx)("div",{className:"flex-1 overflow-y-auto",children:(0,Ne.jsxs)("div",{className:"p-4 space-y-4",children:[i==="loading"&&(0,Ne.jsxs)("div",{className:"flex items-center gap-3 px-3 py-2",children:[(0,Ne.jsx)(Ke,{className:"w-4 h-4 text-blue-600 dark:text-blue-400 animate-spin"}),(0,Ne.jsx)(Pt,{children:"Obteniendo resultados..."})]}),i==="complete"&&b&&(0,Ne.jsxs)("div",{className:"rounded-xl border border-neutral-200 dark:border-neutral-700 p-4",children:[(0,Ne.jsx)(Tt,{className:"mb-2 text-neutral-700 dark:text-neutral-300 font-semibold",children:"Resumen"}),(0,Ne.jsx)(Pt,{className:"whitespace-pre-wrap break-words leading-relaxed",children:b})]}),i==="complete"&&F&&(0,Ne.jsxs)("div",{children:[(0,Ne.jsx)(Tt,{className:"mb-2 text-neutral-700 dark:text-neutral-300 font-semibold",children:"Im\xE1genes"}),(0,Ne.jsx)("div",{className:"grid grid-cols-4 gap-2",children:D.map((N,H)=>(0,Ne.jsx)("div",{className:"overflow-hidden rounded-xl border border-neutral-200 dark:border-neutral-700 hover:border-blue-400 dark:hover:border-blue-500 transition-colors",children:(0,Ne.jsx)("img",{src:N,alt:h||"Web search image",className:"h-20 w-full object-cover",loading:"lazy"})},`${N}-${H}`))})]}),i==="complete"&&w.length>0&&(0,Ne.jsxs)("div",{children:[(0,Ne.jsxs)("div",{className:"flex items-center gap-2 mb-3",children:[(0,Ne.jsx)(Tt,{className:"text-neutral-700 dark:text-neutral-300 font-semibold",children:"Fuentes"}),(0,Ne.jsx)("span",{className:"text-xs px-2 py-0.5 rounded-full bg-neutral-200 dark:bg-neutral-700 text-neutral-700 dark:text-neutral-300",children:w.length})]}),(0,Ne.jsx)("div",{className:"space-y-2",children:w.map((N,H)=>(0,Ne.jsxs)("div",{className:"rounded-lg border border-neutral-200 dark:border-neutral-700 p-3 hover:border-blue-400 dark:hover:border-blue-500 transition-colors",children:[(0,Ne.jsxs)("div",{className:"flex items-start justify-between gap-3 mb-2",children:[(0,Ne.jsxs)("div",{className:"flex-1 min-w-0",children:[N.title&&(0,Ne.jsx)(Tt,{className:"leading-snug mb-1 text-neutral-900 dark:text-neutral-100",children:N.title}),N.url&&(0,Ne.jsxs)("a",{href:N.url,target:"_blank",rel:"noreferrer",className:"inline-flex items-center gap-1 text-xs text-blue-600 dark:text-blue-400 hover:opacity-70 transition-opacity",children:[(0,Ne.jsx)(na,{className:"w-3 h-3"}),"Ver fuente"]})]}),(0,Ne.jsxs)("span",{className:"text-xs flex-shrink-0 text-neutral-500 dark:text-neutral-400",children:["#",H+1]})]}),(N.snippet||N.content)&&(0,Ne.jsx)(Pt,{className:"text-xs leading-relaxed",children:N.snippet||N.content})]},`${N.url||"result"}-${H}`))})]})]})})]})},U4=$ye;c();var cS=L(ae());var De=L(ee()),jye=e=>{let{url:t,title:r,content:a,description:n,favicon:o,ogImage:i,wordCount:s,variant:l="compact",status:u="complete",onClose:d,onExpand:f,channel:p,toolName:m="scrape_webpage",...h}=e,w=Un(m)?.displayName||"Scraping Web",v=t,x=r,k=a,S=n,T=o,C=i,_=s,R=h.result||h.output,F=h.args||h.input;if(!v&&F?.url&&(v=F.url),R){if(R.data)v=v||R.data.url,x=x||R.data.title,k=k||R.data.content,S=S||R.data.description,T=T||R.data.favicon,C=C||R.data.ogImage,_=_||R.data.wordCount;else if(typeof R=="string")try{let Z=JSON.parse(R);Z.data&&(v=v||Z.data.url,x=x||Z.data.title,k=k||Z.data.content,S=S||Z.data.description,T=T||Z.data.favicon,C=C||Z.data.ogImage,_=_||Z.data.wordCount)}catch(Z){console.warn("[ScrapeWebpage] Failed to parse tool output:",Z)}}let D=h.text;if(!R&&D&&typeof D=="string")try{let Z=JSON.parse(D);Z.result&&Z.result.data&&(v=v||Z.result.data.url,x=x||Z.result.data.title,k=k||Z.result.data.content,S=S||Z.result.data.description,T=T||Z.result.data.favicon,C=C||Z.result.data.ogImage,_=_||Z.result.data.wordCount)}catch(Z){console.warn("[ScrapeWebpage] Failed to parse text data:",Z)}let $=(Z=>{if(!Z)return null;try{return new URL(Z).hostname}catch{return null}})(v),U=l==="sidebar",[N,H]=(0,cS.useState)(U);(0,cS.useEffect)(()=>{U&&H(!0)},[U]);let V=l==="sidebar",G=l==="compact",j=()=>{G&&f?f({url:v,title:x,content:k,description:S,ogImage:C,wordCount:_}):H(Z=>!Z)};if(G){let Z=u==="loading",A=u==="complete",he=u==="error";return p==="agent_builder"?(0,De.jsx)("div",{className:"w-auto inline-block",children:(0,De.jsxs)("div",{className:"inline-flex items-center gap-2 px-3 py-2 rounded-xl bg-white dark:bg-neutral-800 border border-neutral-200 dark:border-neutral-700",children:[Z&&(0,De.jsx)(Ke,{className:"w-4 h-4 text-green-600 dark:text-green-400 animate-spin"}),A&&(0,De.jsx)(ar,{className:"w-4 h-4 text-green-600 dark:text-green-400"}),he&&(0,De.jsx)(Ui,{className:"w-4 h-4 text-red-600 dark:text-red-400"}),(0,De.jsxs)("span",{className:"text-sm font-medium text-neutral-900 dark:text-neutral-100",children:[Z&&"Extrayendo p\xE1gina",A&&w,he&&`${w} Fallido`]}),A&&f&&(0,De.jsxs)(De.Fragment,{children:[(0,De.jsx)("span",{className:"text-neutral-400 dark:text-neutral-500",children:"\xB7"}),(0,De.jsxs)("button",{type:"button",onClick:j,className:"inline-flex items-center gap-0.5 text-xs text-green-600 dark:text-green-400 hover:text-green-700 dark:hover:text-green-300 transition-colors",children:["Ver contenido",(0,De.jsx)(ci,{className:"w-3 h-3"})]})]})]})}):(0,De.jsx)("div",{className:"w-full max-w-2xl",children:(0,De.jsxs)("div",{className:"rounded-xl border border-neutral-200 dark:border-neutral-700 bg-white dark:bg-neutral-800 overflow-hidden",children:[(0,De.jsxs)("button",{type:"button",onClick:()=>H(!N),className:"w-full flex items-center justify-between gap-3 px-4 py-3 hover:bg-neutral-50 dark:hover:bg-neutral-700 transition-colors",children:[(0,De.jsxs)("div",{className:"flex items-center gap-2",children:[Z&&(0,De.jsx)(Ke,{className:"w-4 h-4 text-green-600 dark:text-green-400 animate-spin"}),A&&(0,De.jsx)(ar,{className:"w-4 h-4 text-green-600 dark:text-green-400"}),he&&(0,De.jsx)(Ur,{className:"w-4 h-4 text-red-600 dark:text-red-400"}),(0,De.jsxs)(Tt,{className:"text-neutral-900 dark:text-neutral-100",children:[Z&&"Extrayendo contenido...",A&&w,he&&`${w} Fallido`]}),$&&(0,De.jsx)(Pt,{className:"text-xs truncate max-w-xs",children:$})]}),(0,De.jsx)(oe.div,{animate:{rotate:N?180:0},transition:{duration:.2},children:(0,De.jsx)(qt,{className:"w-4 h-4 text-neutral-700 dark:text-neutral-300"})})]}),(0,De.jsx)(wt,{children:N&&(0,De.jsx)(oe.div,{initial:{height:0,opacity:0},animate:{height:"auto",opacity:1},exit:{height:0,opacity:0},transition:{duration:.3},className:"border-t border-neutral-200 dark:border-neutral-700 overflow-hidden",children:(0,De.jsxs)("div",{className:"p-4 space-y-3",children:[(x||v)&&(0,De.jsxs)("div",{children:[x&&(0,De.jsx)(Tt,{className:"mb-2 text-neutral-900 dark:text-neutral-100 font-semibold",children:x}),v&&(0,De.jsxs)("a",{href:v,target:"_blank",rel:"noreferrer",className:"inline-flex items-center gap-1 text-xs text-blue-600 dark:text-blue-400 hover:opacity-70 mb-2",children:[(0,De.jsx)(na,{className:"w-3 h-3"}),$||v]})]}),C&&(0,De.jsx)("div",{className:"overflow-hidden rounded-xl border border-neutral-200 dark:border-neutral-700",children:(0,De.jsx)("img",{src:C,alt:x||"Page preview",className:"w-full h-32 object-cover",loading:"lazy"})}),S&&(0,De.jsxs)("div",{children:[(0,De.jsx)(Tt,{className:"mb-2 text-neutral-700 dark:text-neutral-300",children:"Descripci\xF3n"}),(0,De.jsx)(Pt,{className:"whitespace-pre-wrap break-words leading-relaxed",children:S})]}),k&&(0,De.jsxs)("div",{children:[(0,De.jsxs)("div",{className:"flex items-center gap-2 mb-2",children:[(0,De.jsx)(Tt,{className:"text-neutral-700 dark:text-neutral-300",children:"Contenido extra\xEDdo"}),_&&(0,De.jsxs)("span",{className:"text-xs px-2 py-0.5 rounded-full bg-neutral-200 dark:bg-neutral-700 text-neutral-700 dark:text-neutral-300",children:[_," palabras"]})]}),(0,De.jsx)("div",{className:"max-h-64 overflow-y-auto rounded-lg border border-neutral-200 dark:border-neutral-700 p-3",children:(0,De.jsxs)(Pt,{className:"text-xs whitespace-pre-wrap break-words leading-relaxed",children:[k.slice(0,1e3),k.length>1e3&&"..."]})})]})]})})})]})})}return(0,De.jsxs)("div",{className:"w-full h-full bg-white dark:bg-neutral-900 md:rounded-tl-2xl flex flex-col",children:[(0,De.jsxs)("div",{className:"flex items-center justify-between gap-3 px-4 py-3 md:py-3 pt-safe border-b border-neutral-200 dark:border-neutral-700 flex-shrink-0",children:[(0,De.jsxs)("div",{className:"flex items-center gap-2 flex-1 min-w-0",children:[(0,De.jsx)(Tn,{className:"w-4 h-4 text-green-600 dark:text-green-400 flex-shrink-0"}),(0,De.jsxs)("div",{className:"flex flex-col gap-0.5 flex-1 min-w-0",children:[(0,De.jsx)(Tt,{className:"text-neutral-900 dark:text-neutral-100",children:w}),$&&(0,De.jsx)(Pt,{className:"truncate text-xs",children:$})]})]}),d&&(0,De.jsx)("button",{type:"button",className:"flex-shrink-0 p-2 md:p-1.5 rounded-full md:rounded-lg text-neutral-600 dark:text-neutral-400 bg-neutral-100 dark:bg-neutral-800 hover:bg-neutral-200 dark:hover:bg-neutral-700 transition-colors",onClick:d,children:(0,De.jsx)(Mr,{className:"w-5 h-5 md:w-4 md:h-4"})})]}),(0,De.jsx)("div",{className:"flex-1 overflow-y-auto",children:(0,De.jsxs)("div",{className:"p-4 space-y-4",children:[u==="loading"&&(0,De.jsxs)("div",{className:"flex items-center gap-3 px-3 py-2",children:[(0,De.jsx)(Ke,{className:"w-4 h-4 text-green-600 dark:text-green-400 animate-spin"}),(0,De.jsx)(Pt,{children:"Extrayendo contenido de la p\xE1gina..."})]}),u==="complete"&&(x||v)&&(0,De.jsxs)("div",{className:"rounded-xl border border-neutral-200 dark:border-neutral-700 p-4",children:[x&&(0,De.jsx)(Tt,{className:"mb-2 text-neutral-900 dark:text-neutral-100 font-semibold",children:x}),v&&(0,De.jsxs)("a",{href:v,target:"_blank",rel:"noreferrer",className:"inline-flex items-center gap-1 text-xs text-blue-600 dark:text-blue-400 hover:opacity-70 transition-opacity",children:[(0,De.jsx)(na,{className:"w-3 h-3"}),"Ver p\xE1gina original"]})]}),u==="complete"&&C&&(0,De.jsxs)("div",{children:[(0,De.jsx)(Tt,{className:"mb-2 text-neutral-700 dark:text-neutral-300 font-semibold",children:"Vista previa"}),(0,De.jsx)("div",{className:"overflow-hidden rounded-xl border border-neutral-200 dark:border-neutral-700 hover:border-green-400 dark:hover:border-green-500 transition-colors",children:(0,De.jsx)("img",{src:C,alt:x||"Page preview",className:"w-full h-48 object-cover",loading:"lazy"})})]}),u==="complete"&&S&&(0,De.jsxs)("div",{className:"rounded-xl border border-neutral-200 dark:border-neutral-700 p-4",children:[(0,De.jsx)(Tt,{className:"mb-2 text-neutral-700 dark:text-neutral-300 font-semibold",children:"Descripci\xF3n"}),(0,De.jsx)(Pt,{className:"whitespace-pre-wrap break-words leading-relaxed",children:S})]}),u==="complete"&&k&&(0,De.jsxs)("div",{children:[(0,De.jsxs)("div",{className:"flex items-center gap-2 mb-3",children:[(0,De.jsx)(Tt,{className:"text-neutral-700 dark:text-neutral-300 font-semibold",children:"Contenido extra\xEDdo"}),_&&(0,De.jsxs)("span",{className:"text-xs px-2 py-0.5 rounded-full bg-neutral-200 dark:bg-neutral-700 text-neutral-700 dark:text-neutral-300",children:[_," palabras"]})]}),(0,De.jsx)("div",{className:"rounded-xl border border-neutral-200 dark:border-neutral-700 p-4 hover:border-green-400 dark:hover:border-green-500 transition-colors",children:(0,De.jsx)(Pt,{className:"whitespace-pre-wrap break-words leading-relaxed text-xs",children:k})})]})]})})]})},iV=jye;c();var Bn=L(ae());c();var bb=L(ae()),fm=({status:e,hadLoadingPhase:t,minDisplayTime:r=300})=>{let[a,n]=(0,bb.useState)(e),[o]=(0,bb.useState)(()=>Date.now());return(0,bb.useEffect)(()=>{if(e==="loading"){n("loading");return}if(!t){n(e);return}let i=Date.now()-o,s=Math.max(0,r-i);if(s>0){let l=setTimeout(()=>{n(e)},s);return()=>clearTimeout(l)}else n(e)},[e,t,o,r]),{displayStatus:a}};var Jr=L(ee()),Hye=({text:e,speed:t=25})=>{let[r,a]=(0,Bn.useState)(""),n=(0,Bn.useRef)(0),o=(0,Bn.useRef)(""),i=e||"";(0,Bn.useEffect)(()=>{i.length<o.current.length?(a(""),n.current=0,o.current=i):i.length>o.current.length&&(o.current=i);let l=setInterval(()=>{n.current<i.length?(a(i.slice(0,n.current+1)),n.current++):clearInterval(l)},t);return()=>clearInterval(l)},[i,t]);let s=n.current<i.length;return(0,Jr.jsxs)("span",{children:[r,s&&(0,Jr.jsx)(oe.span,{animate:{opacity:[1,0]},transition:{duration:.8,repeat:1/0,repeatType:"reverse"},className:"inline-block w-0.5 h-4 bg-white/60 ml-0.5"})]})},qye=({thought:e,text:t,thoughts:r,isStreaming:a=!1,status:n="complete",hadLoadingPhase:o=!1,onTransitionComplete:i,durationMs:s})=>{let[l,u]=(0,Bn.useState)(!1),d=(0,Bn.useRef)(Date.now()),[f,p]=(0,Bn.useState)(0),m=(0,Bn.useRef)(!1),h=e||t||"",b=!a&&h?"complete":n,{displayStatus:w}=fm({status:b,hadLoadingPhase:a?o:!1,onTransitionComplete:i,minLoadingTime:0});(0,Bn.useEffect)(()=>{if(s!==void 0){p(s);return}if(!m.current&&(w==="loading"||o)&&(d.current=Date.now(),m.current=!0),w==="loading"){let k=setInterval(()=>{p(Date.now()-d.current)},100);return()=>clearInterval(k)}else if(w==="complete"&&m.current){let k=Date.now()-d.current;p(k)}},[w,o,s]);let v=(0,Bn.useMemo)(()=>!Array.isArray(r)||r.length===0?[]:Array.from(new Set(r.filter(Boolean))),[r]),x=(f/1e3).toFixed(1);return(0,Jr.jsx)("div",{className:"w-auto",children:(0,Jr.jsxs)(oe.div,{initial:!1,className:"group inline-block",children:[(0,Jr.jsxs)(oe.div,{className:"inline-flex items-center gap-2 px-2 py-1 cursor-pointer",onClick:()=>u(!l),whileTap:{scale:.995},transition:{duration:.15},children:[w==="loading"?(0,Jr.jsx)(Ke,{className:"w-4 h-4 text-purple-600 dark:text-purple-400 animate-spin"}):(0,Jr.jsx)(oe.div,{animate:{rotate:l?180:0},transition:{duration:.2,ease:"easeOut"},children:(0,Jr.jsx)(qt,{className:"w-4 h-4 text-neutral-700 dark:text-neutral-300"})}),(0,Jr.jsxs)(Tt,{children:["Analizando (",x,"s)"]})]}),(0,Jr.jsx)(wt,{initial:!1,children:l&&(0,Jr.jsx)(oe.div,{initial:{opacity:0,height:0},animate:{opacity:.7,height:"auto"},exit:{opacity:0,height:0},transition:{duration:.3,ease:[.04,.62,.23,.98]},className:"border-l border-neutral-300 dark:border-neutral-600 pl-3 ml-[.95rem]",children:(0,Jr.jsxs)("div",{className:"py-2",children:[(0,Jr.jsx)(Pt,{className:"whitespace-pre-wrap break-words leading-relaxed",children:a?(0,Jr.jsx)(Hye,{text:h,speed:15}):h}),v.length>0&&(0,Jr.jsxs)("div",{className:"mt-3 space-y-2",children:[(0,Jr.jsx)(Tt,{className:"text-neutral-600 dark:text-neutral-400",children:"Pensamientos anteriores"}),(0,Jr.jsx)("ul",{className:"space-y-1.5",children:v.map((k,S)=>(0,Jr.jsx)("li",{className:"pl-2",children:(0,Jr.jsx)(Pt,{children:k})},`${S}-${k.slice(0,12)}`))})]})]})})})]})})},B4=qye;c();var pm=L(ae());var Ct=L(ee()),Vye=({code:e,stdout:t=[],stderr:r=[],plots:a=[],status:n,error:o,executionTime:i,isStreaming:s=!1})=>{let[l,u]=(0,pm.useState)(!0),[d,f]=(0,pm.useState)([]),[p,m]=(0,pm.useState)([]);(0,pm.useEffect)(()=>{if(!s){f(t),m(r);return}if(t.length>d.length){let x=setTimeout(()=>{f(t.slice(0,d.length+1))},50);return()=>clearTimeout(x)}if(r.length>p.length){let x=setTimeout(()=>{m(r.slice(0,p.length+1))},50);return()=>clearTimeout(x)}},[t,r,d.length,p.length,s]);let h=()=>{switch(n){case"loading":return(0,Ct.jsx)("div",{className:"w-4 h-4 border-2 border-orange-500 border-t-transparent rounded-full animate-spin"});case"executing":return(0,Ct.jsxs)("svg",{className:"w-4 h-4 text-orange-500 animate-pulse",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:[(0,Ct.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M14.752 11.168l-3.197-2.132A1 1 0 0010 9.87v4.263a1 1 0 001.555.832l3.197-2.132a1 1 0 000-1.664z"}),(0,Ct.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M21 12a9 9 0 11-18 0 9 9 0 0118 0z"})]});case"complete":return(0,Ct.jsx)("svg",{className:"w-4 h-4 text-green-500",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:(0,Ct.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M9 12l2 2 4-4m6 2a9 9 0 11-18 0 9 9 0 0118 0z"})});case"error":return(0,Ct.jsx)("svg",{className:"w-4 h-4 text-red-500",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:(0,Ct.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M10 14l2-2m0 0l2-2m-2 2l-2-2m2 2l2 2m7-2a9 9 0 11-18 0 9 9 0 0118 0z"})})}},b=()=>{switch(n){case"loading":return"Iniciando sandbox...";case"executing":return"Ejecutando c\xF3digo Python...";case"complete":return`Ejecuci\xF3n completada${i?` en ${(i/1e3).toFixed(2)}s`:""}`;case"error":return"Error en ejecuci\xF3n"}},w=()=>{switch(n){case"loading":case"executing":return"border-orange-500/40";case"complete":return"border-green-500/40";case"error":return"border-red-500/40"}},v=()=>{switch(n){case"loading":case"executing":return"bg-orange-500/10";case"complete":return"bg-green-500/10";case"error":return"bg-red-500/10"}};return(0,Ct.jsxs)(oe.div,{initial:{opacity:0,y:10},animate:{opacity:1,y:0},className:`my-2 rounded-xl border ${w()} ${v()} overflow-hidden`,children:[(0,Ct.jsxs)(oe.button,{onClick:()=>u(!l),className:"w-full flex items-center justify-between px-4 py-3 transition-colors bg-black/5 dark:bg-white/5 hover:bg-black/10 dark:hover:bg-white/10",whileHover:{opacity:.9},whileTap:{scale:.99},children:[(0,Ct.jsxs)("div",{className:"flex items-center gap-3",children:[h(),(0,Ct.jsxs)("div",{className:"flex flex-col items-start",children:[(0,Ct.jsx)("span",{className:"text-sm font-medium text-black dark:text-white",children:"\u{1F40D} Code Interpreter"}),(0,Ct.jsx)("span",{className:"text-xs text-gray-600 dark:text-gray-400",children:b()})]})]}),(0,Ct.jsx)("svg",{className:`w-5 h-5 transition-transform text-gray-600 dark:text-gray-400 ${l?"rotate-180":""}`,fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:(0,Ct.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M19 9l-7 7-7-7"})})]}),(0,Ct.jsx)(wt,{children:l&&(0,Ct.jsx)(oe.div,{initial:{height:0,opacity:0},animate:{height:"auto",opacity:1},exit:{height:0,opacity:0},transition:{duration:.2},className:"overflow-hidden",children:(0,Ct.jsxs)("div",{className:"px-4 pb-4 space-y-3",children:[e&&(0,Ct.jsxs)("div",{className:"space-y-1",children:[(0,Ct.jsx)("div",{className:"text-xs font-medium uppercase tracking-wide text-gray-600 dark:text-gray-400",children:"C\xF3digo Python"}),(0,Ct.jsx)("div",{className:"rounded-lg p-3 border bg-black/5 dark:bg-black/40 border-[#FFB347]/20 dark:border-white/10",children:(0,Ct.jsx)("pre",{className:"text-sm whitespace-pre-wrap font-mono overflow-x-auto text-black dark:text-gray-300",children:e})})]}),d.length>0&&(0,Ct.jsxs)("div",{className:"space-y-1",children:[(0,Ct.jsx)("div",{className:"text-xs font-medium uppercase tracking-wide text-gray-600 dark:text-gray-400",children:"Salida"}),(0,Ct.jsx)("div",{className:"rounded-lg p-3 border bg-green-500/10 dark:bg-black/40 border-green-500/30 dark:border-green-500/20",children:d.map((x,k)=>(0,Ct.jsx)(oe.div,{initial:{opacity:0,x:-10},animate:{opacity:1,x:0},transition:{duration:.1},className:"text-sm font-mono text-green-700 dark:text-green-300",children:x},k))})]}),(p.length>0||o)&&(0,Ct.jsxs)("div",{className:"space-y-1",children:[(0,Ct.jsx)("div",{className:"text-xs font-medium uppercase tracking-wide text-red-600 dark:text-red-400",children:"Errores"}),(0,Ct.jsxs)("div",{className:"rounded-lg p-3 border bg-red-500/10 dark:bg-black/40 border-red-500/30 dark:border-red-500/20",children:[o&&(0,Ct.jsx)("div",{className:"text-sm font-mono mb-2 text-red-600 dark:text-red-300",children:o}),p.map((x,k)=>(0,Ct.jsx)(oe.div,{initial:{opacity:0,x:-10},animate:{opacity:1,x:0},transition:{duration:.1},className:"text-sm font-mono text-red-600 dark:text-red-300",children:x},k))]})]}),a.length>0&&(0,Ct.jsxs)("div",{className:"space-y-1",children:[(0,Ct.jsxs)("div",{className:"text-xs font-medium uppercase tracking-wide text-gray-600 dark:text-gray-400",children:["Visualizaciones (",a.length,")"]}),(0,Ct.jsx)("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-2",children:a.map((x,k)=>(0,Ct.jsx)(oe.div,{initial:{opacity:0},animate:{opacity:1},transition:{duration:.2,delay:k*.1},className:"rounded-lg border overflow-hidden border-[#FFB347]/20 dark:border-white/10 bg-white dark:bg-white",children:(0,Ct.jsx)("img",{src:x,alt:`Plot ${k+1}`,className:"w-full h-auto"})},k))})]})]})})})]})},sV=Vye;c();var Ld=L(ae());var Ma=L(ee());function dS({status:e="loading",text:t,result:r,args:a,avatarUrl:n,agentName:o,isStreaming:i=!1,hadLoadingPhase:s=!1,onTransitionComplete:l}){let[u,d]=(0,Ld.useState)(!1),f=(0,Ld.useRef)(Date.now()),[p,m]=(0,Ld.useState)(0),h=n||r?.data?.avatarUrl||r?.avatarUrl||r?.url||r?.image_url,b=o||r?.data?.agentName||r?.agentName||a?.agentName||a?.name,w=h?"complete":e==="in_progress"?"loading":e,v=s,{displayStatus:x}=fm({status:w,hadLoadingPhase:v,onTransitionComplete:l,minLoadingTime:500});return(0,Ld.useEffect)(()=>{if(x==="loading"){f.current=Date.now();let k=setInterval(()=>{m(Date.now()-f.current)},100);return()=>clearInterval(k)}else x==="complete"&&m(Date.now()-f.current)},[x]),x==="error"?(0,Ma.jsxs)(oe.div,{initial:{opacity:0,y:10},animate:{opacity:1,y:0},className:"my-2 flex items-center gap-2 px-3 py-2 rounded-lg bg-red-50 dark:bg-red-950/20 border border-red-200 dark:border-red-800/30",children:[(0,Ma.jsx)(Bl,{className:"w-4 h-4 text-red-600 dark:text-red-400 flex-shrink-0"}),(0,Ma.jsx)("span",{className:"text-sm text-red-600 dark:text-red-400",children:t||"No se pudo generar el avatar"})]}):x==="loading"||!h&&(e==="loading"||e==="in_progress")?(0,Ma.jsxs)(oe.div,{initial:{opacity:0,y:10},animate:{opacity:1,y:0},className:"my-2 ml-3 flex items-center justify-between gap-3 px-3 py-2 rounded-lg bg-[#FFB347]/5 dark:bg-[#FFB347]/5 border border-[#FFB347]/30 dark:border-[#FFB347]/30",children:[(0,Ma.jsxs)("div",{className:"flex items-center gap-2",children:[(0,Ma.jsx)(oe.div,{animate:{rotate:360},transition:{duration:1,repeat:1/0,ease:"linear"},children:(0,Ma.jsx)(Cn,{className:"w-4 h-4 text-[#FFB347] dark:text-[#FFB347]"})}),(0,Ma.jsx)("span",{className:"text-sm font-medium text-[#FF6B35] dark:text-[#FFB347]",children:t||"Generando avatar..."})]}),(0,Ma.jsxs)("span",{className:"text-xs text-[#FFB347] dark:text-[#FFB347]",children:[(p/1e3).toFixed(1),"s"]})]}):h?(0,Ma.jsxs)(oe.div,{className:"relative w-28 h-28 rounded-2xl overflow-hidden border-2 border-[#FFB347]/40 dark:border-[#FFB347]/40 my-2 ml-3",initial:{opacity:0,scale:.8},animate:{opacity:1,scale:1},transition:{type:"spring",stiffness:200},children:[(0,Ma.jsx)(wt,{children:!u&&(0,Ma.jsx)(oe.div,{initial:{opacity:1},exit:{opacity:0},className:"absolute inset-0 flex items-center justify-center bg-[#FFB347]/10 dark:bg-[#FFB347]/10",children:(0,Ma.jsx)(oe.div,{animate:{rotate:360},transition:{duration:1,repeat:1/0,ease:"linear"},children:(0,Ma.jsx)(Ke,{className:"w-8 h-8 text-[#FFB347] dark:text-[#FFB347]"})})})}),(0,Ma.jsx)(oe.img,{src:h,alt:b?`Avatar de ${b}`:"Avatar profesional",className:"w-full h-full object-cover",onLoad:()=>d(!0),initial:{opacity:0},animate:{opacity:u?1:0},transition:{duration:.3}})]}):null}c();c();var Qs=L(ae()),mm=({status:e,hadLoadingPhase:t,durationMs:r,isStreaming:a=!1,toolName:n,onTransitionComplete:o,minLoadingTime:i=0})=>{let[s,l]=(0,Qs.useState)(e),[u,d]=(0,Qs.useState)(0),f=(0,Qs.useRef)(Date.now()),p=(0,Qs.useRef)(!1);(0,Qs.useEffect)(()=>{if(r!==void 0){d(r);return}if(!p.current&&(s==="loading"||t)&&(f.current=Date.now(),p.current=!0),s==="loading"){let h=setInterval(()=>{d(Date.now()-f.current)},100);return()=>clearInterval(h)}else if(s==="complete"&&p.current){let h=Date.now()-f.current;d(h)}},[s,t,r]),(0,Qs.useEffect)(()=>{if(e==="loading"){l("loading");return}if(!a){l(e),o?.();return}if(t&&e!=="loading"){let h=Date.now()-f.current,b=Math.max(0,i-h);if(b>0){let w=setTimeout(()=>{l(e),o?.()},b);return()=>clearTimeout(w)}else l(e),o?.()}},[e,a,t,i,o]);let m=(u/1e3).toFixed(1);return{displayStatus:s,formattedTime:m,elapsedTime:u}};c();c();var lV=L(ae());var bn=L(ee()),Nd=({status:e,title:t,icon:r,color:a="neutral",elapsedTime:n,badge:o,children:i,defaultOpen:s=!1})=>{let[l,u]=(0,lV.useState)(s);return(0,bn.jsx)("div",{className:"w-full my-1.5",children:(0,bn.jsxs)(oe.div,{initial:!1,className:"rounded-md border border-gray-200 dark:border-gray-700 bg-white dark:bg-neutral-800 overflow-hidden",children:[(0,bn.jsxs)(oe.div,{className:"flex items-center gap-2 px-2.5 py-1.5 cursor-pointer hover:bg-gray-50 dark:hover:bg-neutral-750 transition-colors",onClick:()=>u(!l),children:[e==="loading"?(0,bn.jsx)(Ke,{className:"w-3.5 h-3.5 text-gray-400 animate-spin flex-shrink-0"}):(0,bn.jsx)(r,{className:"w-3.5 h-3.5 text-gray-400 flex-shrink-0"}),(0,bn.jsx)("span",{className:"text-xs font-medium text-gray-600 dark:text-gray-300 flex-1",children:t}),o&&(0,bn.jsx)("div",{className:"flex items-center gap-1.5 text-[10px]",children:o}),n&&(0,bn.jsxs)("span",{className:"text-[10px] text-gray-400",children:[n,"s"]}),(0,bn.jsx)(oe.div,{animate:{rotate:l?180:0},transition:{duration:.2,ease:"easeOut"},children:(0,bn.jsx)(qt,{className:"w-3.5 h-3.5 text-gray-400 flex-shrink-0"})})]}),(0,bn.jsx)(wt,{initial:!1,children:l&&(0,bn.jsx)(oe.div,{initial:{opacity:0,height:0},animate:{opacity:1,height:"auto"},exit:{opacity:0,height:0},transition:{duration:.25,ease:[.04,.62,.23,.98]},className:"border-t border-gray-100 dark:border-gray-700",children:(0,bn.jsx)("div",{className:"px-2.5 py-2 bg-gray-50/50 dark:bg-neutral-850",children:i})})})]})})};c();var uV=L(ee());c();c();c();var dt=e=>typeof e=="string",yb=()=>{let e,t,r=new Promise((a,n)=>{e=a,t=n});return r.resolve=e,r.reject=t,r},cV=e=>e==null?"":""+e,Gye=(e,t,r)=>{e.forEach(a=>{t[a]&&(r[a]=t[a])})},Wye=/###/g,dV=e=>e&&e.indexOf("###")>-1?e.replace(Wye,"."):e,fV=e=>!e||dt(e),vb=(e,t,r)=>{let a=dt(t)?t.split("."):t,n=0;for(;n<a.length-1;){if(fV(e))return{};let o=dV(a[n]);!e[o]&&r&&(e[o]=new r),Object.prototype.hasOwnProperty.call(e,o)?e=e[o]:e={},++n}return fV(e)?{}:{obj:e,k:dV(a[n])}},pV=(e,t,r)=>{let{obj:a,k:n}=vb(e,t,Object);if(a!==void 0||t.length===1){a[n]=r;return}let o=t[t.length-1],i=t.slice(0,t.length-1),s=vb(e,i,Object);for(;s.obj===void 0&&i.length;)o=`${i[i.length-1]}.${o}`,i=i.slice(0,i.length-1),s=vb(e,i,Object),s&&s.obj&&typeof s.obj[`${s.k}.${o}`]<"u"&&(s.obj=void 0);s.obj[`${s.k}.${o}`]=r},Zye=(e,t,r,a)=>{let{obj:n,k:o}=vb(e,t,Object);n[o]=n[o]||[],n[o].push(r)},pS=(e,t)=>{let{obj:r,k:a}=vb(e,t);if(r)return r[a]},Yye=(e,t,r)=>{let a=pS(e,r);return a!==void 0?a:pS(t,r)},vV=(e,t,r)=>{for(let a in t)a!=="__proto__"&&a!=="constructor"&&(a in e?dt(e[a])||e[a]instanceof String||dt(t[a])||t[a]instanceof String?r&&(e[a]=t[a]):vV(e[a],t[a],r):e[a]=t[a]);return e},gm=e=>e.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&"),Kye={"&":"&","<":"<",">":">",'"':""","'":"'","/":"/"},Xye=e=>dt(e)?e.replace(/[&<>"'\/]/g,t=>Kye[t]):e,H4=class{constructor(t){this.capacity=t,this.regExpMap=new Map,this.regExpQueue=[]}getRegExp(t){let r=this.regExpMap.get(t);if(r!==void 0)return r;let a=new RegExp(t);return this.regExpQueue.length===this.capacity&&this.regExpMap.delete(this.regExpQueue.shift()),this.regExpMap.set(t,a),this.regExpQueue.push(t),a}},Jye=[" ",",","?","!",";"],Qye=new H4(20),eve=(e,t,r)=>{t=t||"",r=r||"";let a=Jye.filter(i=>t.indexOf(i)<0&&r.indexOf(i)<0);if(a.length===0)return!0;let n=Qye.getRegExp(`(${a.map(i=>i==="?"?"\\?":i).join("|")})`),o=!n.test(e);if(!o){let i=e.indexOf(r);i>0&&!n.test(e.substring(0,i))&&(o=!0)}return o},q4=function(e,t){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:".";if(!e)return;if(e[t])return e[t];let a=t.split(r),n=e;for(let o=0;o<a.length;){if(!n||typeof n!="object")return;let i,s="";for(let l=o;l<a.length;++l)if(l!==o&&(s+=r),s+=a[l],i=n[s],i!==void 0){if(["string","number","boolean"].indexOf(typeof i)>-1&&l<a.length-1)continue;o+=l-o+1;break}n=i}return n},mS=e=>e&&e.replace("_","-"),tve={type:"logger",log(e){this.output("log",e)},warn(e){this.output("warn",e)},error(e){this.output("error",e)},output(e,t){console&&console[e]&&console[e].apply(console,t)}},V4=class e{constructor(t){let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};this.init(t,r)}init(t){let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};this.prefix=r.prefix||"i18next:",this.logger=t||tve,this.options=r,this.debug=r.debug}log(){for(var t=arguments.length,r=new Array(t),a=0;a<t;a++)r[a]=arguments[a];return this.forward(r,"log","",!0)}warn(){for(var t=arguments.length,r=new Array(t),a=0;a<t;a++)r[a]=arguments[a];return this.forward(r,"warn","",!0)}error(){for(var t=arguments.length,r=new Array(t),a=0;a<t;a++)r[a]=arguments[a];return this.forward(r,"error","")}deprecate(){for(var t=arguments.length,r=new Array(t),a=0;a<t;a++)r[a]=arguments[a];return this.forward(r,"warn","WARNING DEPRECATED: ",!0)}forward(t,r,a,n){return n&&!this.debug?null:(dt(t[0])&&(t[0]=`${a}${this.prefix} ${t[0]}`),this.logger[r](t))}create(t){return new e(this.logger,{prefix:`${this.prefix}:${t}:`,...this.options})}clone(t){return t=t||this.options,t.prefix=t.prefix||this.prefix,new e(this.logger,t)}},is=new V4,bm=class{constructor(){this.observers={}}on(t,r){return t.split(" ").forEach(a=>{this.observers[a]||(this.observers[a]=new Map);let n=this.observers[a].get(r)||0;this.observers[a].set(r,n+1)}),this}off(t,r){if(this.observers[t]){if(!r){delete this.observers[t];return}this.observers[t].delete(r)}}emit(t){for(var r=arguments.length,a=new Array(r>1?r-1:0),n=1;n<r;n++)a[n-1]=arguments[n];this.observers[t]&&Array.from(this.observers[t].entries()).forEach(i=>{let[s,l]=i;for(let u=0;u<l;u++)s(...a)}),this.observers["*"]&&Array.from(this.observers["*"].entries()).forEach(i=>{let[s,l]=i;for(let u=0;u<l;u++)s.apply(s,[t,...a])})}},gS=class extends bm{constructor(t){let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{ns:["translation"],defaultNS:"translation"};super(),this.data=t||{},this.options=r,this.options.keySeparator===void 0&&(this.options.keySeparator="."),this.options.ignoreJSONStructure===void 0&&(this.options.ignoreJSONStructure=!0)}addNamespaces(t){this.options.ns.indexOf(t)<0&&this.options.ns.push(t)}removeNamespaces(t){let r=this.options.ns.indexOf(t);r>-1&&this.options.ns.splice(r,1)}getResource(t,r,a){let n=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{},o=n.keySeparator!==void 0?n.keySeparator:this.options.keySeparator,i=n.ignoreJSONStructure!==void 0?n.ignoreJSONStructure:this.options.ignoreJSONStructure,s;t.indexOf(".")>-1?s=t.split("."):(s=[t,r],a&&(Array.isArray(a)?s.push(...a):dt(a)&&o?s.push(...a.split(o)):s.push(a)));let l=pS(this.data,s);return!l&&!r&&!a&&t.indexOf(".")>-1&&(t=s[0],r=s[1],a=s.slice(2).join(".")),l||!i||!dt(a)?l:q4(this.data&&this.data[t]&&this.data[t][r],a,o)}addResource(t,r,a,n){let o=arguments.length>4&&arguments[4]!==void 0?arguments[4]:{silent:!1},i=o.keySeparator!==void 0?o.keySeparator:this.options.keySeparator,s=[t,r];a&&(s=s.concat(i?a.split(i):a)),t.indexOf(".")>-1&&(s=t.split("."),n=r,r=s[1]),this.addNamespaces(r),pV(this.data,s,n),o.silent||this.emit("added",t,r,a,n)}addResources(t,r,a){let n=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{silent:!1};for(let o in a)(dt(a[o])||Array.isArray(a[o]))&&this.addResource(t,r,o,a[o],{silent:!0});n.silent||this.emit("added",t,r,a)}addResourceBundle(t,r,a,n,o){let i=arguments.length>5&&arguments[5]!==void 0?arguments[5]:{silent:!1,skipCopy:!1},s=[t,r];t.indexOf(".")>-1&&(s=t.split("."),n=a,a=r,r=s[1]),this.addNamespaces(r);let l=pS(this.data,s)||{};i.skipCopy||(a=JSON.parse(JSON.stringify(a))),n?vV(l,a,o):l={...l,...a},pV(this.data,s,l),i.silent||this.emit("added",t,r,a)}removeResourceBundle(t,r){this.hasResourceBundle(t,r)&&delete this.data[t][r],this.removeNamespaces(r),this.emit("removed",t,r)}hasResourceBundle(t,r){return this.getResource(t,r)!==void 0}getResourceBundle(t,r){return r||(r=this.options.defaultNS),this.options.compatibilityAPI==="v1"?{...this.getResource(t,r)}:this.getResource(t,r)}getDataByLanguage(t){return this.data[t]}hasLanguageSomeTranslations(t){let r=this.getDataByLanguage(t);return!!(r&&Object.keys(r)||[]).find(n=>r[n]&&Object.keys(r[n]).length>0)}toJSON(){return this.data}},xV={processors:{},addPostProcessor(e){this.processors[e.name]=e},handle(e,t,r,a,n){return e.forEach(o=>{this.processors[o]&&(t=this.processors[o].process(t,r,a,n))}),t}},mV={},hS=class e extends bm{constructor(t){let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};super(),Gye(["resourceStore","languageUtils","pluralResolver","interpolator","backendConnector","i18nFormat","utils"],t,this),this.options=r,this.options.keySeparator===void 0&&(this.options.keySeparator="."),this.logger=is.create("translator")}changeLanguage(t){t&&(this.language=t)}exists(t){let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{interpolation:{}};if(t==null)return!1;let a=this.resolve(t,r);return a&&a.res!==void 0}extractFromKey(t,r){let a=r.nsSeparator!==void 0?r.nsSeparator:this.options.nsSeparator;a===void 0&&(a=":");let n=r.keySeparator!==void 0?r.keySeparator:this.options.keySeparator,o=r.ns||this.options.defaultNS||[],i=a&&t.indexOf(a)>-1,s=!this.options.userDefinedKeySeparator&&!r.keySeparator&&!this.options.userDefinedNsSeparator&&!r.nsSeparator&&!eve(t,a,n);if(i&&!s){let l=t.match(this.interpolator.nestingRegexp);if(l&&l.length>0)return{key:t,namespaces:dt(o)?[o]:o};let u=t.split(a);(a!==n||a===n&&this.options.ns.indexOf(u[0])>-1)&&(o=u.shift()),t=u.join(n)}return{key:t,namespaces:dt(o)?[o]:o}}translate(t,r,a){if(typeof r!="object"&&this.options.overloadTranslationOptionHandler&&(r=this.options.overloadTranslationOptionHandler(arguments)),typeof r=="object"&&(r={...r}),r||(r={}),t==null)return"";Array.isArray(t)||(t=[String(t)]);let n=r.returnDetails!==void 0?r.returnDetails:this.options.returnDetails,o=r.keySeparator!==void 0?r.keySeparator:this.options.keySeparator,{key:i,namespaces:s}=this.extractFromKey(t[t.length-1],r),l=s[s.length-1],u=r.lng||this.language,d=r.appendNamespaceToCIMode||this.options.appendNamespaceToCIMode;if(u&&u.toLowerCase()==="cimode"){if(d){let S=r.nsSeparator||this.options.nsSeparator;return n?{res:`${l}${S}${i}`,usedKey:i,exactUsedKey:i,usedLng:u,usedNS:l,usedParams:this.getUsedParamsDetails(r)}:`${l}${S}${i}`}return n?{res:i,usedKey:i,exactUsedKey:i,usedLng:u,usedNS:l,usedParams:this.getUsedParamsDetails(r)}:i}let f=this.resolve(t,r),p=f&&f.res,m=f&&f.usedKey||i,h=f&&f.exactUsedKey||i,b=Object.prototype.toString.apply(p),w=["[object Number]","[object Function]","[object RegExp]"],v=r.joinArrays!==void 0?r.joinArrays:this.options.joinArrays,x=!this.i18nFormat||this.i18nFormat.handleAsObject,k=!dt(p)&&typeof p!="boolean"&&typeof p!="number";if(x&&p&&k&&w.indexOf(b)<0&&!(dt(v)&&Array.isArray(p))){if(!r.returnObjects&&!this.options.returnObjects){this.options.returnedObjectHandler||this.logger.warn("accessing an object - but returnObjects options is not enabled!");let S=this.options.returnedObjectHandler?this.options.returnedObjectHandler(m,p,{...r,ns:s}):`key '${i} (${this.language})' returned an object instead of string.`;return n?(f.res=S,f.usedParams=this.getUsedParamsDetails(r),f):S}if(o){let S=Array.isArray(p),T=S?[]:{},C=S?h:m;for(let _ in p)if(Object.prototype.hasOwnProperty.call(p,_)){let R=`${C}${o}${_}`;T[_]=this.translate(R,{...r,joinArrays:!1,ns:s}),T[_]===R&&(T[_]=p[_])}p=T}}else if(x&&dt(v)&&Array.isArray(p))p=p.join(v),p&&(p=this.extendTranslation(p,t,r,a));else{let S=!1,T=!1,C=r.count!==void 0&&!dt(r.count),_=e.hasDefaultValue(r),R=C?this.pluralResolver.getSuffix(u,r.count,r):"",F=r.ordinal&&C?this.pluralResolver.getSuffix(u,r.count,{ordinal:!1}):"",D=C&&!r.ordinal&&r.count===0&&this.pluralResolver.shouldUseIntlApi(),ie=D&&r[`defaultValue${this.options.pluralSeparator}zero`]||r[`defaultValue${R}`]||r[`defaultValue${F}`]||r.defaultValue;!this.isValidLookup(p)&&_&&(S=!0,p=ie),this.isValidLookup(p)||(T=!0,p=i);let U=(r.missingKeyNoValueFallbackToKey||this.options.missingKeyNoValueFallbackToKey)&&T?void 0:p,N=_&&ie!==p&&this.options.updateMissing;if(T||S||N){if(this.logger.log(N?"updateKey":"missingKey",u,l,i,N?ie:p),o){let j=this.resolve(i,{...r,keySeparator:!1});j&&j.res&&this.logger.warn("Seems the loaded translations were in flat JSON format instead of nested. Either set keySeparator: false on init or make sure your translations are published in nested format.")}let H=[],V=this.languageUtils.getFallbackCodes(this.options.fallbackLng,r.lng||this.language);if(this.options.saveMissingTo==="fallback"&&V&&V[0])for(let j=0;j<V.length;j++)H.push(V[j]);else this.options.saveMissingTo==="all"?H=this.languageUtils.toResolveHierarchy(r.lng||this.language):H.push(r.lng||this.language);let G=(j,Z,A)=>{let he=_&&A!==p?A:U;this.options.missingKeyHandler?this.options.missingKeyHandler(j,l,Z,he,N,r):this.backendConnector&&this.backendConnector.saveMissing&&this.backendConnector.saveMissing(j,l,Z,he,N,r),this.emit("missingKey",j,l,Z,p)};this.options.saveMissing&&(this.options.saveMissingPlurals&&C?H.forEach(j=>{let Z=this.pluralResolver.getSuffixes(j,r);D&&r[`defaultValue${this.options.pluralSeparator}zero`]&&Z.indexOf(`${this.options.pluralSeparator}zero`)<0&&Z.push(`${this.options.pluralSeparator}zero`),Z.forEach(A=>{G([j],i+A,r[`defaultValue${A}`]||ie)})}):G(H,i,ie))}p=this.extendTranslation(p,t,r,f,a),T&&p===i&&this.options.appendNamespaceToMissingKey&&(p=`${l}:${i}`),(T||S)&&this.options.parseMissingKeyHandler&&(this.options.compatibilityAPI!=="v1"?p=this.options.parseMissingKeyHandler(this.options.appendNamespaceToMissingKey?`${l}:${i}`:i,S?p:void 0):p=this.options.parseMissingKeyHandler(p))}return n?(f.res=p,f.usedParams=this.getUsedParamsDetails(r),f):p}extendTranslation(t,r,a,n,o){var i=this;if(this.i18nFormat&&this.i18nFormat.parse)t=this.i18nFormat.parse(t,{...this.options.interpolation.defaultVariables,...a},a.lng||this.language||n.usedLng,n.usedNS,n.usedKey,{resolved:n});else if(!a.skipInterpolation){a.interpolation&&this.interpolator.init({...a,interpolation:{...this.options.interpolation,...a.interpolation}});let u=dt(t)&&(a&&a.interpolation&&a.interpolation.skipOnVariables!==void 0?a.interpolation.skipOnVariables:this.options.interpolation.skipOnVariables),d;if(u){let p=t.match(this.interpolator.nestingRegexp);d=p&&p.length}let f=a.replace&&!dt(a.replace)?a.replace:a;if(this.options.interpolation.defaultVariables&&(f={...this.options.interpolation.defaultVariables,...f}),t=this.interpolator.interpolate(t,f,a.lng||this.language||n.usedLng,a),u){let p=t.match(this.interpolator.nestingRegexp),m=p&&p.length;d<m&&(a.nest=!1)}!a.lng&&this.options.compatibilityAPI!=="v1"&&n&&n.res&&(a.lng=this.language||n.usedLng),a.nest!==!1&&(t=this.interpolator.nest(t,function(){for(var p=arguments.length,m=new Array(p),h=0;h<p;h++)m[h]=arguments[h];return o&&o[0]===m[0]&&!a.context?(i.logger.warn(`It seems you are nesting recursively key: ${m[0]} in key: ${r[0]}`),null):i.translate(...m,r)},a)),a.interpolation&&this.interpolator.reset()}let s=a.postProcess||this.options.postProcess,l=dt(s)?[s]:s;return t!=null&&l&&l.length&&a.applyPostProcessor!==!1&&(t=xV.handle(l,t,r,this.options&&this.options.postProcessPassResolved?{i18nResolved:{...n,usedParams:this.getUsedParamsDetails(a)},...a}:a,this)),t}resolve(t){let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},a,n,o,i,s;return dt(t)&&(t=[t]),t.forEach(l=>{if(this.isValidLookup(a))return;let u=this.extractFromKey(l,r),d=u.key;n=d;let f=u.namespaces;this.options.fallbackNS&&(f=f.concat(this.options.fallbackNS));let p=r.count!==void 0&&!dt(r.count),m=p&&!r.ordinal&&r.count===0&&this.pluralResolver.shouldUseIntlApi(),h=r.context!==void 0&&(dt(r.context)||typeof r.context=="number")&&r.context!=="",b=r.lngs?r.lngs:this.languageUtils.toResolveHierarchy(r.lng||this.language,r.fallbackLng);f.forEach(w=>{this.isValidLookup(a)||(s=w,!mV[`${b[0]}-${w}`]&&this.utils&&this.utils.hasLoadedNamespace&&!this.utils.hasLoadedNamespace(s)&&(mV[`${b[0]}-${w}`]=!0,this.logger.warn(`key "${n}" for languages "${b.join(", ")}" won't get resolved as namespace "${s}" was not yet loaded`,"This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!")),b.forEach(v=>{if(this.isValidLookup(a))return;i=v;let x=[d];if(this.i18nFormat&&this.i18nFormat.addLookupKeys)this.i18nFormat.addLookupKeys(x,d,v,w,r);else{let S;p&&(S=this.pluralResolver.getSuffix(v,r.count,r));let T=`${this.options.pluralSeparator}zero`,C=`${this.options.pluralSeparator}ordinal${this.options.pluralSeparator}`;if(p&&(x.push(d+S),r.ordinal&&S.indexOf(C)===0&&x.push(d+S.replace(C,this.options.pluralSeparator)),m&&x.push(d+T)),h){let _=`${d}${this.options.contextSeparator}${r.context}`;x.push(_),p&&(x.push(_+S),r.ordinal&&S.indexOf(C)===0&&x.push(_+S.replace(C,this.options.pluralSeparator)),m&&x.push(_+T))}}let k;for(;k=x.pop();)this.isValidLookup(a)||(o=k,a=this.getResource(v,w,k,r))}))})}),{res:a,usedKey:n,exactUsedKey:o,usedLng:i,usedNS:s}}isValidLookup(t){return t!==void 0&&!(!this.options.returnNull&&t===null)&&!(!this.options.returnEmptyString&&t==="")}getResource(t,r,a){let n=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{};return this.i18nFormat&&this.i18nFormat.getResource?this.i18nFormat.getResource(t,r,a,n):this.resourceStore.getResource(t,r,a,n)}getUsedParamsDetails(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},r=["defaultValue","ordinal","context","replace","lng","lngs","fallbackLng","ns","keySeparator","nsSeparator","returnObjects","returnDetails","joinArrays","postProcess","interpolation"],a=t.replace&&!dt(t.replace),n=a?t.replace:t;if(a&&typeof t.count<"u"&&(n.count=t.count),this.options.interpolation.defaultVariables&&(n={...this.options.interpolation.defaultVariables,...n}),!a){n={...n};for(let o of r)delete n[o]}return n}static hasDefaultValue(t){let r="defaultValue";for(let a in t)if(Object.prototype.hasOwnProperty.call(t,a)&&r===a.substring(0,r.length)&&t[a]!==void 0)return!0;return!1}},$4=e=>e.charAt(0).toUpperCase()+e.slice(1),bS=class{constructor(t){this.options=t,this.supportedLngs=this.options.supportedLngs||!1,this.logger=is.create("languageUtils")}getScriptPartFromCode(t){if(t=mS(t),!t||t.indexOf("-")<0)return null;let r=t.split("-");return r.length===2||(r.pop(),r[r.length-1].toLowerCase()==="x")?null:this.formatLanguageCode(r.join("-"))}getLanguagePartFromCode(t){if(t=mS(t),!t||t.indexOf("-")<0)return t;let r=t.split("-");return this.formatLanguageCode(r[0])}formatLanguageCode(t){if(dt(t)&&t.indexOf("-")>-1){if(typeof Intl<"u"&&typeof Intl.getCanonicalLocales<"u")try{let n=Intl.getCanonicalLocales(t)[0];if(n&&this.options.lowerCaseLng&&(n=n.toLowerCase()),n)return n}catch{}let r=["hans","hant","latn","cyrl","cans","mong","arab"],a=t.split("-");return this.options.lowerCaseLng?a=a.map(n=>n.toLowerCase()):a.length===2?(a[0]=a[0].toLowerCase(),a[1]=a[1].toUpperCase(),r.indexOf(a[1].toLowerCase())>-1&&(a[1]=$4(a[1].toLowerCase()))):a.length===3&&(a[0]=a[0].toLowerCase(),a[1].length===2&&(a[1]=a[1].toUpperCase()),a[0]!=="sgn"&&a[2].length===2&&(a[2]=a[2].toUpperCase()),r.indexOf(a[1].toLowerCase())>-1&&(a[1]=$4(a[1].toLowerCase())),r.indexOf(a[2].toLowerCase())>-1&&(a[2]=$4(a[2].toLowerCase()))),a.join("-")}return this.options.cleanCode||this.options.lowerCaseLng?t.toLowerCase():t}isSupportedCode(t){return(this.options.load==="languageOnly"||this.options.nonExplicitSupportedLngs)&&(t=this.getLanguagePartFromCode(t)),!this.supportedLngs||!this.supportedLngs.length||this.supportedLngs.indexOf(t)>-1}getBestMatchFromCodes(t){if(!t)return null;let r;return t.forEach(a=>{if(r)return;let n=this.formatLanguageCode(a);(!this.options.supportedLngs||this.isSupportedCode(n))&&(r=n)}),!r&&this.options.supportedLngs&&t.forEach(a=>{if(r)return;let n=this.getLanguagePartFromCode(a);if(this.isSupportedCode(n))return r=n;r=this.options.supportedLngs.find(o=>{if(o===n)return o;if(!(o.indexOf("-")<0&&n.indexOf("-")<0)&&(o.indexOf("-")>0&&n.indexOf("-")<0&&o.substring(0,o.indexOf("-"))===n||o.indexOf(n)===0&&n.length>1))return o})}),r||(r=this.getFallbackCodes(this.options.fallbackLng)[0]),r}getFallbackCodes(t,r){if(!t)return[];if(typeof t=="function"&&(t=t(r)),dt(t)&&(t=[t]),Array.isArray(t))return t;if(!r)return t.default||[];let a=t[r];return a||(a=t[this.getScriptPartFromCode(r)]),a||(a=t[this.formatLanguageCode(r)]),a||(a=t[this.getLanguagePartFromCode(r)]),a||(a=t.default),a||[]}toResolveHierarchy(t,r){let a=this.getFallbackCodes(r||this.options.fallbackLng||[],t),n=[],o=i=>{i&&(this.isSupportedCode(i)?n.push(i):this.logger.warn(`rejecting language code not found in supportedLngs: ${i}`))};return dt(t)&&(t.indexOf("-")>-1||t.indexOf("_")>-1)?(this.options.load!=="languageOnly"&&o(this.formatLanguageCode(t)),this.options.load!=="languageOnly"&&this.options.load!=="currentOnly"&&o(this.getScriptPartFromCode(t)),this.options.load!=="currentOnly"&&o(this.getLanguagePartFromCode(t))):dt(t)&&o(this.formatLanguageCode(t)),a.forEach(i=>{n.indexOf(i)<0&&o(this.formatLanguageCode(i))}),n}},rve=[{lngs:["ach","ak","am","arn","br","fil","gun","ln","mfe","mg","mi","oc","pt","pt-BR","tg","tl","ti","tr","uz","wa"],nr:[1,2],fc:1},{lngs:["af","an","ast","az","bg","bn","ca","da","de","dev","el","en","eo","es","et","eu","fi","fo","fur","fy","gl","gu","ha","hi","hu","hy","ia","it","kk","kn","ku","lb","mai","ml","mn","mr","nah","nap","nb","ne","nl","nn","no","nso","pa","pap","pms","ps","pt-PT","rm","sco","se","si","so","son","sq","sv","sw","ta","te","tk","ur","yo"],nr:[1,2],fc:2},{lngs:["ay","bo","cgg","fa","ht","id","ja","jbo","ka","km","ko","ky","lo","ms","sah","su","th","tt","ug","vi","wo","zh"],nr:[1],fc:3},{lngs:["be","bs","cnr","dz","hr","ru","sr","uk"],nr:[1,2,5],fc:4},{lngs:["ar"],nr:[0,1,2,3,11,100],fc:5},{lngs:["cs","sk"],nr:[1,2,5],fc:6},{lngs:["csb","pl"],nr:[1,2,5],fc:7},{lngs:["cy"],nr:[1,2,3,8],fc:8},{lngs:["fr"],nr:[1,2],fc:9},{lngs:["ga"],nr:[1,2,3,7,11],fc:10},{lngs:["gd"],nr:[1,2,3,20],fc:11},{lngs:["is"],nr:[1,2],fc:12},{lngs:["jv"],nr:[0,1],fc:13},{lngs:["kw"],nr:[1,2,3,4],fc:14},{lngs:["lt"],nr:[1,2,10],fc:15},{lngs:["lv"],nr:[1,2,0],fc:16},{lngs:["mk"],nr:[1,2],fc:17},{lngs:["mnk"],nr:[0,1,2],fc:18},{lngs:["mt"],nr:[1,2,11,20],fc:19},{lngs:["or"],nr:[2,1],fc:2},{lngs:["ro"],nr:[1,2,20],fc:20},{lngs:["sl"],nr:[5,1,2,3],fc:21},{lngs:["he","iw"],nr:[1,2,20,21],fc:22}],ave={1:e=>+(e>1),2:e=>+(e!=1),3:e=>0,4:e=>e%10==1&&e%100!=11?0:e%10>=2&&e%10<=4&&(e%100<10||e%100>=20)?1:2,5:e=>e==0?0:e==1?1:e==2?2:e%100>=3&&e%100<=10?3:e%100>=11?4:5,6:e=>e==1?0:e>=2&&e<=4?1:2,7:e=>e==1?0:e%10>=2&&e%10<=4&&(e%100<10||e%100>=20)?1:2,8:e=>e==1?0:e==2?1:e!=8&&e!=11?2:3,9:e=>+(e>=2),10:e=>e==1?0:e==2?1:e<7?2:e<11?3:4,11:e=>e==1||e==11?0:e==2||e==12?1:e>2&&e<20?2:3,12:e=>+(e%10!=1||e%100==11),13:e=>+(e!==0),14:e=>e==1?0:e==2?1:e==3?2:3,15:e=>e%10==1&&e%100!=11?0:e%10>=2&&(e%100<10||e%100>=20)?1:2,16:e=>e%10==1&&e%100!=11?0:e!==0?1:2,17:e=>e==1||e%10==1&&e%100!=11?0:1,18:e=>e==0?0:e==1?1:2,19:e=>e==1?0:e==0||e%100>1&&e%100<11?1:e%100>10&&e%100<20?2:3,20:e=>e==1?0:e==0||e%100>0&&e%100<20?1:2,21:e=>e%100==1?1:e%100==2?2:e%100==3||e%100==4?3:0,22:e=>e==1?0:e==2?1:(e<0||e>10)&&e%10==0?2:3},nve=["v1","v2","v3"],ove=["v4"],gV={zero:0,one:1,two:2,few:3,many:4,other:5},ive=()=>{let e={};return rve.forEach(t=>{t.lngs.forEach(r=>{e[r]={numbers:t.nr,plurals:ave[t.fc]}})}),e},G4=class{constructor(t){let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};this.languageUtils=t,this.options=r,this.logger=is.create("pluralResolver"),(!this.options.compatibilityJSON||ove.includes(this.options.compatibilityJSON))&&(typeof Intl>"u"||!Intl.PluralRules)&&(this.options.compatibilityJSON="v3",this.logger.error("Your environment seems not to be Intl API compatible, use an Intl.PluralRules polyfill. Will fallback to the compatibilityJSON v3 format handling.")),this.rules=ive(),this.pluralRulesCache={}}addRule(t,r){this.rules[t]=r}clearCache(){this.pluralRulesCache={}}getRule(t){let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(this.shouldUseIntlApi()){let a=mS(t==="dev"?"en":t),n=r.ordinal?"ordinal":"cardinal",o=JSON.stringify({cleanedCode:a,type:n});if(o in this.pluralRulesCache)return this.pluralRulesCache[o];let i;try{i=new Intl.PluralRules(a,{type:n})}catch{if(!t.match(/-|_/))return;let l=this.languageUtils.getLanguagePartFromCode(t);i=this.getRule(l,r)}return this.pluralRulesCache[o]=i,i}return this.rules[t]||this.rules[this.languageUtils.getLanguagePartFromCode(t)]}needsPlural(t){let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},a=this.getRule(t,r);return this.shouldUseIntlApi()?a&&a.resolvedOptions().pluralCategories.length>1:a&&a.numbers.length>1}getPluralFormsOfKey(t,r){let a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};return this.getSuffixes(t,a).map(n=>`${r}${n}`)}getSuffixes(t){let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},a=this.getRule(t,r);return a?this.shouldUseIntlApi()?a.resolvedOptions().pluralCategories.sort((n,o)=>gV[n]-gV[o]).map(n=>`${this.options.prepend}${r.ordinal?`ordinal${this.options.prepend}`:""}${n}`):a.numbers.map(n=>this.getSuffix(t,n,r)):[]}getSuffix(t,r){let a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},n=this.getRule(t,a);return n?this.shouldUseIntlApi()?`${this.options.prepend}${a.ordinal?`ordinal${this.options.prepend}`:""}${n.select(r)}`:this.getSuffixRetroCompatible(n,r):(this.logger.warn(`no plural rule found for: ${t}`),"")}getSuffixRetroCompatible(t,r){let a=t.noAbs?t.plurals(r):t.plurals(Math.abs(r)),n=t.numbers[a];this.options.simplifyPluralSuffix&&t.numbers.length===2&&t.numbers[0]===1&&(n===2?n="plural":n===1&&(n=""));let o=()=>this.options.prepend&&n.toString()?this.options.prepend+n.toString():n.toString();return this.options.compatibilityJSON==="v1"?n===1?"":typeof n=="number"?`_plural_${n.toString()}`:o():this.options.compatibilityJSON==="v2"||this.options.simplifyPluralSuffix&&t.numbers.length===2&&t.numbers[0]===1?o():this.options.prepend&&a.toString()?this.options.prepend+a.toString():a.toString()}shouldUseIntlApi(){return!nve.includes(this.options.compatibilityJSON)}},hV=function(e,t,r){let a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:".",n=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,o=Yye(e,t,r);return!o&&n&&dt(r)&&(o=q4(e,r,a),o===void 0&&(o=q4(t,r,a))),o},j4=e=>e.replace(/\$/g,"$$$$"),W4=class{constructor(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};this.logger=is.create("interpolator"),this.options=t,this.format=t.interpolation&&t.interpolation.format||(r=>r),this.init(t)}init(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};t.interpolation||(t.interpolation={escapeValue:!0});let{escape:r,escapeValue:a,useRawValueToEscape:n,prefix:o,prefixEscaped:i,suffix:s,suffixEscaped:l,formatSeparator:u,unescapeSuffix:d,unescapePrefix:f,nestingPrefix:p,nestingPrefixEscaped:m,nestingSuffix:h,nestingSuffixEscaped:b,nestingOptionsSeparator:w,maxReplaces:v,alwaysFormat:x}=t.interpolation;this.escape=r!==void 0?r:Xye,this.escapeValue=a!==void 0?a:!0,this.useRawValueToEscape=n!==void 0?n:!1,this.prefix=o?gm(o):i||"{{",this.suffix=s?gm(s):l||"}}",this.formatSeparator=u||",",this.unescapePrefix=d?"":f||"-",this.unescapeSuffix=this.unescapePrefix?"":d||"",this.nestingPrefix=p?gm(p):m||gm("$t("),this.nestingSuffix=h?gm(h):b||gm(")"),this.nestingOptionsSeparator=w||",",this.maxReplaces=v||1e3,this.alwaysFormat=x!==void 0?x:!1,this.resetRegExp()}reset(){this.options&&this.init(this.options)}resetRegExp(){let t=(r,a)=>r&&r.source===a?(r.lastIndex=0,r):new RegExp(a,"g");this.regexp=t(this.regexp,`${this.prefix}(.+?)${this.suffix}`),this.regexpUnescape=t(this.regexpUnescape,`${this.prefix}${this.unescapePrefix}(.+?)${this.unescapeSuffix}${this.suffix}`),this.nestingRegexp=t(this.nestingRegexp,`${this.nestingPrefix}(.+?)${this.nestingSuffix}`)}interpolate(t,r,a,n){let o,i,s,l=this.options&&this.options.interpolation&&this.options.interpolation.defaultVariables||{},u=m=>{if(m.indexOf(this.formatSeparator)<0){let v=hV(r,l,m,this.options.keySeparator,this.options.ignoreJSONStructure);return this.alwaysFormat?this.format(v,void 0,a,{...n,...r,interpolationkey:m}):v}let h=m.split(this.formatSeparator),b=h.shift().trim(),w=h.join(this.formatSeparator).trim();return this.format(hV(r,l,b,this.options.keySeparator,this.options.ignoreJSONStructure),w,a,{...n,...r,interpolationkey:b})};this.resetRegExp();let d=n&&n.missingInterpolationHandler||this.options.missingInterpolationHandler,f=n&&n.interpolation&&n.interpolation.skipOnVariables!==void 0?n.interpolation.skipOnVariables:this.options.interpolation.skipOnVariables;return[{regex:this.regexpUnescape,safeValue:m=>j4(m)},{regex:this.regexp,safeValue:m=>this.escapeValue?j4(this.escape(m)):j4(m)}].forEach(m=>{for(s=0;o=m.regex.exec(t);){let h=o[1].trim();if(i=u(h),i===void 0)if(typeof d=="function"){let w=d(t,o,n);i=dt(w)?w:""}else if(n&&Object.prototype.hasOwnProperty.call(n,h))i="";else if(f){i=o[0];continue}else this.logger.warn(`missed to pass in variable ${h} for interpolating ${t}`),i="";else!dt(i)&&!this.useRawValueToEscape&&(i=cV(i));let b=m.safeValue(i);if(t=t.replace(o[0],b),f?(m.regex.lastIndex+=i.length,m.regex.lastIndex-=o[0].length):m.regex.lastIndex=0,s++,s>=this.maxReplaces)break}}),t}nest(t,r){let a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},n,o,i,s=(l,u)=>{let d=this.nestingOptionsSeparator;if(l.indexOf(d)<0)return l;let f=l.split(new RegExp(`${d}[ ]*{`)),p=`{${f[1]}`;l=f[0],p=this.interpolate(p,i);let m=p.match(/'/g),h=p.match(/"/g);(m&&m.length%2===0&&!h||h.length%2!==0)&&(p=p.replace(/'/g,'"'));try{i=JSON.parse(p),u&&(i={...u,...i})}catch(b){return this.logger.warn(`failed parsing options string in nesting for key ${l}`,b),`${l}${d}${p}`}return i.defaultValue&&i.defaultValue.indexOf(this.prefix)>-1&&delete i.defaultValue,l};for(;n=this.nestingRegexp.exec(t);){let l=[];i={...a},i=i.replace&&!dt(i.replace)?i.replace:i,i.applyPostProcessor=!1,delete i.defaultValue;let u=!1;if(n[0].indexOf(this.formatSeparator)!==-1&&!/{.*}/.test(n[1])){let d=n[1].split(this.formatSeparator).map(f=>f.trim());n[1]=d.shift(),l=d,u=!0}if(o=r(s.call(this,n[1].trim(),i),i),o&&n[0]===t&&!dt(o))return o;dt(o)||(o=cV(o)),o||(this.logger.warn(`missed to resolve ${n[1]} for nesting ${t}`),o=""),u&&(o=l.reduce((d,f)=>this.format(d,f,a.lng,{...a,interpolationkey:n[1].trim()}),o.trim())),t=t.replace(n[0],o),this.regexp.lastIndex=0}return t}},sve=e=>{let t=e.toLowerCase().trim(),r={};if(e.indexOf("(")>-1){let a=e.split("(");t=a[0].toLowerCase().trim();let n=a[1].substring(0,a[1].length-1);t==="currency"&&n.indexOf(":")<0?r.currency||(r.currency=n.trim()):t==="relativetime"&&n.indexOf(":")<0?r.range||(r.range=n.trim()):n.split(";").forEach(i=>{if(i){let[s,...l]=i.split(":"),u=l.join(":").trim().replace(/^'+|'+$/g,""),d=s.trim();r[d]||(r[d]=u),u==="false"&&(r[d]=!1),u==="true"&&(r[d]=!0),isNaN(u)||(r[d]=parseInt(u,10))}})}return{formatName:t,formatOptions:r}},hm=e=>{let t={};return(r,a,n)=>{let o=n;n&&n.interpolationkey&&n.formatParams&&n.formatParams[n.interpolationkey]&&n[n.interpolationkey]&&(o={...o,[n.interpolationkey]:void 0});let i=a+JSON.stringify(o),s=t[i];return s||(s=e(mS(a),n),t[i]=s),s(r)}},Z4=class{constructor(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};this.logger=is.create("formatter"),this.options=t,this.formats={number:hm((r,a)=>{let n=new Intl.NumberFormat(r,{...a});return o=>n.format(o)}),currency:hm((r,a)=>{let n=new Intl.NumberFormat(r,{...a,style:"currency"});return o=>n.format(o)}),datetime:hm((r,a)=>{let n=new Intl.DateTimeFormat(r,{...a});return o=>n.format(o)}),relativetime:hm((r,a)=>{let n=new Intl.RelativeTimeFormat(r,{...a});return o=>n.format(o,a.range||"day")}),list:hm((r,a)=>{let n=new Intl.ListFormat(r,{...a});return o=>n.format(o)})},this.init(t)}init(t){let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{interpolation:{}};this.formatSeparator=r.interpolation.formatSeparator||","}add(t,r){this.formats[t.toLowerCase().trim()]=r}addCached(t,r){this.formats[t.toLowerCase().trim()]=hm(r)}format(t,r,a){let n=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{},o=r.split(this.formatSeparator);if(o.length>1&&o[0].indexOf("(")>1&&o[0].indexOf(")")<0&&o.find(s=>s.indexOf(")")>-1)){let s=o.findIndex(l=>l.indexOf(")")>-1);o[0]=[o[0],...o.splice(1,s)].join(this.formatSeparator)}return o.reduce((s,l)=>{let{formatName:u,formatOptions:d}=sve(l);if(this.formats[u]){let f=s;try{let p=n&&n.formatParams&&n.formatParams[n.interpolationkey]||{},m=p.locale||p.lng||n.locale||n.lng||a;f=this.formats[u](s,m,{...d,...n,...p})}catch(p){this.logger.warn(p)}return f}else this.logger.warn(`there was no format function for ${u}`);return s},t)}},lve=(e,t)=>{e.pending[t]!==void 0&&(delete e.pending[t],e.pendingCount--)},Y4=class extends bm{constructor(t,r,a){let n=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{};super(),this.backend=t,this.store=r,this.services=a,this.languageUtils=a.languageUtils,this.options=n,this.logger=is.create("backendConnector"),this.waitingReads=[],this.maxParallelReads=n.maxParallelReads||10,this.readingCalls=0,this.maxRetries=n.maxRetries>=0?n.maxRetries:5,this.retryTimeout=n.retryTimeout>=1?n.retryTimeout:350,this.state={},this.queue=[],this.backend&&this.backend.init&&this.backend.init(a,n.backend,n)}queueLoad(t,r,a,n){let o={},i={},s={},l={};return t.forEach(u=>{let d=!0;r.forEach(f=>{let p=`${u}|${f}`;!a.reload&&this.store.hasResourceBundle(u,f)?this.state[p]=2:this.state[p]<0||(this.state[p]===1?i[p]===void 0&&(i[p]=!0):(this.state[p]=1,d=!1,i[p]===void 0&&(i[p]=!0),o[p]===void 0&&(o[p]=!0),l[f]===void 0&&(l[f]=!0)))}),d||(s[u]=!0)}),(Object.keys(o).length||Object.keys(i).length)&&this.queue.push({pending:i,pendingCount:Object.keys(i).length,loaded:{},errors:[],callback:n}),{toLoad:Object.keys(o),pending:Object.keys(i),toLoadLanguages:Object.keys(s),toLoadNamespaces:Object.keys(l)}}loaded(t,r,a){let n=t.split("|"),o=n[0],i=n[1];r&&this.emit("failedLoading",o,i,r),!r&&a&&this.store.addResourceBundle(o,i,a,void 0,void 0,{skipCopy:!0}),this.state[t]=r?-1:2,r&&a&&(this.state[t]=0);let s={};this.queue.forEach(l=>{Zye(l.loaded,[o],i),lve(l,t),r&&l.errors.push(r),l.pendingCount===0&&!l.done&&(Object.keys(l.loaded).forEach(u=>{s[u]||(s[u]={});let d=l.loaded[u];d.length&&d.forEach(f=>{s[u][f]===void 0&&(s[u][f]=!0)})}),l.done=!0,l.errors.length?l.callback(l.errors):l.callback())}),this.emit("loaded",s),this.queue=this.queue.filter(l=>!l.done)}read(t,r,a){let n=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0,o=arguments.length>4&&arguments[4]!==void 0?arguments[4]:this.retryTimeout,i=arguments.length>5?arguments[5]:void 0;if(!t.length)return i(null,{});if(this.readingCalls>=this.maxParallelReads){this.waitingReads.push({lng:t,ns:r,fcName:a,tried:n,wait:o,callback:i});return}this.readingCalls++;let s=(u,d)=>{if(this.readingCalls--,this.waitingReads.length>0){let f=this.waitingReads.shift();this.read(f.lng,f.ns,f.fcName,f.tried,f.wait,f.callback)}if(u&&d&&n<this.maxRetries){setTimeout(()=>{this.read.call(this,t,r,a,n+1,o*2,i)},o);return}i(u,d)},l=this.backend[a].bind(this.backend);if(l.length===2){try{let u=l(t,r);u&&typeof u.then=="function"?u.then(d=>s(null,d)).catch(s):s(null,u)}catch(u){s(u)}return}return l(t,r,s)}prepareLoading(t,r){let a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},n=arguments.length>3?arguments[3]:void 0;if(!this.backend)return this.logger.warn("No backend was added via i18next.use. Will not load resources."),n&&n();dt(t)&&(t=this.languageUtils.toResolveHierarchy(t)),dt(r)&&(r=[r]);let o=this.queueLoad(t,r,a,n);if(!o.toLoad.length)return o.pending.length||n(),null;o.toLoad.forEach(i=>{this.loadOne(i)})}load(t,r,a){this.prepareLoading(t,r,{},a)}reload(t,r,a){this.prepareLoading(t,r,{reload:!0},a)}loadOne(t){let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"",a=t.split("|"),n=a[0],o=a[1];this.read(n,o,"read",void 0,void 0,(i,s)=>{i&&this.logger.warn(`${r}loading namespace ${o} for language ${n} failed`,i),!i&&s&&this.logger.log(`${r}loaded namespace ${o} for language ${n}`,s),this.loaded(t,i,s)})}saveMissing(t,r,a,n,o){let i=arguments.length>5&&arguments[5]!==void 0?arguments[5]:{},s=arguments.length>6&&arguments[6]!==void 0?arguments[6]:()=>{};if(this.services.utils&&this.services.utils.hasLoadedNamespace&&!this.services.utils.hasLoadedNamespace(r)){this.logger.warn(`did not save key "${a}" as the namespace "${r}" was not yet loaded`,"This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!");return}if(!(a==null||a==="")){if(this.backend&&this.backend.create){let l={...i,isUpdate:o},u=this.backend.create.bind(this.backend);if(u.length<6)try{let d;u.length===5?d=u(t,r,a,n,l):d=u(t,r,a,n),d&&typeof d.then=="function"?d.then(f=>s(null,f)).catch(s):s(null,d)}catch(d){s(d)}else u(t,r,a,n,s,l)}!t||!t[0]||this.store.addResource(t[0],r,a,n)}}},bV=()=>({debug:!1,initImmediate:!0,ns:["translation"],defaultNS:["translation"],fallbackLng:["dev"],fallbackNS:!1,supportedLngs:!1,nonExplicitSupportedLngs:!1,load:"all",preload:!1,simplifyPluralSuffix:!0,keySeparator:".",nsSeparator:":",pluralSeparator:"_",contextSeparator:"_",partialBundledLanguages:!1,saveMissing:!1,updateMissing:!1,saveMissingTo:"fallback",saveMissingPlurals:!0,missingKeyHandler:!1,missingInterpolationHandler:!1,postProcess:!1,postProcessPassResolved:!1,returnNull:!1,returnEmptyString:!0,returnObjects:!1,joinArrays:!1,returnedObjectHandler:!1,parseMissingKeyHandler:!1,appendNamespaceToMissingKey:!1,appendNamespaceToCIMode:!1,overloadTranslationOptionHandler:e=>{let t={};if(typeof e[1]=="object"&&(t=e[1]),dt(e[1])&&(t.defaultValue=e[1]),dt(e[2])&&(t.tDescription=e[2]),typeof e[2]=="object"||typeof e[3]=="object"){let r=e[3]||e[2];Object.keys(r).forEach(a=>{t[a]=r[a]})}return t},interpolation:{escapeValue:!0,format:e=>e,prefix:"{{",suffix:"}}",formatSeparator:",",unescapePrefix:"-",nestingPrefix:"$t(",nestingSuffix:")",nestingOptionsSeparator:",",maxReplaces:1e3,skipOnVariables:!0}}),yV=e=>(dt(e.ns)&&(e.ns=[e.ns]),dt(e.fallbackLng)&&(e.fallbackLng=[e.fallbackLng]),dt(e.fallbackNS)&&(e.fallbackNS=[e.fallbackNS]),e.supportedLngs&&e.supportedLngs.indexOf("cimode")<0&&(e.supportedLngs=e.supportedLngs.concat(["cimode"])),e),fS=()=>{},uve=e=>{Object.getOwnPropertyNames(Object.getPrototypeOf(e)).forEach(r=>{typeof e[r]=="function"&&(e[r]=e[r].bind(e))})},yS=class e extends bm{constructor(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},r=arguments.length>1?arguments[1]:void 0;if(super(),this.options=yV(t),this.services={},this.logger=is,this.modules={external:[]},uve(this),r&&!this.isInitialized&&!t.isClone){if(!this.options.initImmediate)return this.init(t,r),this;setTimeout(()=>{this.init(t,r)},0)}}init(){var t=this;let r=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},a=arguments.length>1?arguments[1]:void 0;this.isInitializing=!0,typeof r=="function"&&(a=r,r={}),!r.defaultNS&&r.defaultNS!==!1&&r.ns&&(dt(r.ns)?r.defaultNS=r.ns:r.ns.indexOf("translation")<0&&(r.defaultNS=r.ns[0]));let n=bV();this.options={...n,...this.options,...yV(r)},this.options.compatibilityAPI!=="v1"&&(this.options.interpolation={...n.interpolation,...this.options.interpolation}),r.keySeparator!==void 0&&(this.options.userDefinedKeySeparator=r.keySeparator),r.nsSeparator!==void 0&&(this.options.userDefinedNsSeparator=r.nsSeparator);let o=d=>d?typeof d=="function"?new d:d:null;if(!this.options.isClone){this.modules.logger?is.init(o(this.modules.logger),this.options):is.init(null,this.options);let d;this.modules.formatter?d=this.modules.formatter:typeof Intl<"u"&&(d=Z4);let f=new bS(this.options);this.store=new gS(this.options.resources,this.options);let p=this.services;p.logger=is,p.resourceStore=this.store,p.languageUtils=f,p.pluralResolver=new G4(f,{prepend:this.options.pluralSeparator,compatibilityJSON:this.options.compatibilityJSON,simplifyPluralSuffix:this.options.simplifyPluralSuffix}),d&&(!this.options.interpolation.format||this.options.interpolation.format===n.interpolation.format)&&(p.formatter=o(d),p.formatter.init(p,this.options),this.options.interpolation.format=p.formatter.format.bind(p.formatter)),p.interpolator=new W4(this.options),p.utils={hasLoadedNamespace:this.hasLoadedNamespace.bind(this)},p.backendConnector=new Y4(o(this.modules.backend),p.resourceStore,p,this.options),p.backendConnector.on("*",function(m){for(var h=arguments.length,b=new Array(h>1?h-1:0),w=1;w<h;w++)b[w-1]=arguments[w];t.emit(m,...b)}),this.modules.languageDetector&&(p.languageDetector=o(this.modules.languageDetector),p.languageDetector.init&&p.languageDetector.init(p,this.options.detection,this.options)),this.modules.i18nFormat&&(p.i18nFormat=o(this.modules.i18nFormat),p.i18nFormat.init&&p.i18nFormat.init(this)),this.translator=new hS(this.services,this.options),this.translator.on("*",function(m){for(var h=arguments.length,b=new Array(h>1?h-1:0),w=1;w<h;w++)b[w-1]=arguments[w];t.emit(m,...b)}),this.modules.external.forEach(m=>{m.init&&m.init(this)})}if(this.format=this.options.interpolation.format,a||(a=fS),this.options.fallbackLng&&!this.services.languageDetector&&!this.options.lng){let d=this.services.languageUtils.getFallbackCodes(this.options.fallbackLng);d.length>0&&d[0]!=="dev"&&(this.options.lng=d[0])}!this.services.languageDetector&&!this.options.lng&&this.logger.warn("init: no languageDetector is used and no lng is defined"),["getResource","hasResourceBundle","getResourceBundle","getDataByLanguage"].forEach(d=>{this[d]=function(){return t.store[d](...arguments)}}),["addResource","addResources","addResourceBundle","removeResourceBundle"].forEach(d=>{this[d]=function(){return t.store[d](...arguments),t}});let l=yb(),u=()=>{let d=(f,p)=>{this.isInitializing=!1,this.isInitialized&&!this.initializedStoreOnce&&this.logger.warn("init: i18next is already initialized. You should call init just once!"),this.isInitialized=!0,this.options.isClone||this.logger.log("initialized",this.options),this.emit("initialized",this.options),l.resolve(p),a(f,p)};if(this.languages&&this.options.compatibilityAPI!=="v1"&&!this.isInitialized)return d(null,this.t.bind(this));this.changeLanguage(this.options.lng,d)};return this.options.resources||!this.options.initImmediate?u():setTimeout(u,0),l}loadResources(t){let a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:fS,n=dt(t)?t:this.language;if(typeof t=="function"&&(a=t),!this.options.resources||this.options.partialBundledLanguages){if(n&&n.toLowerCase()==="cimode"&&(!this.options.preload||this.options.preload.length===0))return a();let o=[],i=s=>{if(!s||s==="cimode")return;this.services.languageUtils.toResolveHierarchy(s).forEach(u=>{u!=="cimode"&&o.indexOf(u)<0&&o.push(u)})};n?i(n):this.services.languageUtils.getFallbackCodes(this.options.fallbackLng).forEach(l=>i(l)),this.options.preload&&this.options.preload.forEach(s=>i(s)),this.services.backendConnector.load(o,this.options.ns,s=>{!s&&!this.resolvedLanguage&&this.language&&this.setResolvedLanguage(this.language),a(s)})}else a(null)}reloadResources(t,r,a){let n=yb();return typeof t=="function"&&(a=t,t=void 0),typeof r=="function"&&(a=r,r=void 0),t||(t=this.languages),r||(r=this.options.ns),a||(a=fS),this.services.backendConnector.reload(t,r,o=>{n.resolve(),a(o)}),n}use(t){if(!t)throw new Error("You are passing an undefined module! Please check the object you are passing to i18next.use()");if(!t.type)throw new Error("You are passing a wrong module! Please check the object you are passing to i18next.use()");return t.type==="backend"&&(this.modules.backend=t),(t.type==="logger"||t.log&&t.warn&&t.error)&&(this.modules.logger=t),t.type==="languageDetector"&&(this.modules.languageDetector=t),t.type==="i18nFormat"&&(this.modules.i18nFormat=t),t.type==="postProcessor"&&xV.addPostProcessor(t),t.type==="formatter"&&(this.modules.formatter=t),t.type==="3rdParty"&&this.modules.external.push(t),this}setResolvedLanguage(t){if(!(!t||!this.languages)&&!(["cimode","dev"].indexOf(t)>-1))for(let r=0;r<this.languages.length;r++){let a=this.languages[r];if(!(["cimode","dev"].indexOf(a)>-1)&&this.store.hasLanguageSomeTranslations(a)){this.resolvedLanguage=a;break}}}changeLanguage(t,r){var a=this;this.isLanguageChangingTo=t;let n=yb();this.emit("languageChanging",t);let o=l=>{this.language=l,this.languages=this.services.languageUtils.toResolveHierarchy(l),this.resolvedLanguage=void 0,this.setResolvedLanguage(l)},i=(l,u)=>{u?(o(u),this.translator.changeLanguage(u),this.isLanguageChangingTo=void 0,this.emit("languageChanged",u),this.logger.log("languageChanged",u)):this.isLanguageChangingTo=void 0,n.resolve(function(){return a.t(...arguments)}),r&&r(l,function(){return a.t(...arguments)})},s=l=>{!t&&!l&&this.services.languageDetector&&(l=[]);let u=dt(l)?l:this.services.languageUtils.getBestMatchFromCodes(l);u&&(this.language||o(u),this.translator.language||this.translator.changeLanguage(u),this.services.languageDetector&&this.services.languageDetector.cacheUserLanguage&&this.services.languageDetector.cacheUserLanguage(u)),this.loadResources(u,d=>{i(d,u)})};return!t&&this.services.languageDetector&&!this.services.languageDetector.async?s(this.services.languageDetector.detect()):!t&&this.services.languageDetector&&this.services.languageDetector.async?this.services.languageDetector.detect.length===0?this.services.languageDetector.detect().then(s):this.services.languageDetector.detect(s):s(t),n}getFixedT(t,r,a){var n=this;let o=function(i,s){let l;if(typeof s!="object"){for(var u=arguments.length,d=new Array(u>2?u-2:0),f=2;f<u;f++)d[f-2]=arguments[f];l=n.options.overloadTranslationOptionHandler([i,s].concat(d))}else l={...s};l.lng=l.lng||o.lng,l.lngs=l.lngs||o.lngs,l.ns=l.ns||o.ns,l.keyPrefix!==""&&(l.keyPrefix=l.keyPrefix||a||o.keyPrefix);let p=n.options.keySeparator||".",m;return l.keyPrefix&&Array.isArray(i)?m=i.map(h=>`${l.keyPrefix}${p}${h}`):m=l.keyPrefix?`${l.keyPrefix}${p}${i}`:i,n.t(m,l)};return dt(t)?o.lng=t:o.lngs=t,o.ns=r,o.keyPrefix=a,o}t(){return this.translator&&this.translator.translate(...arguments)}exists(){return this.translator&&this.translator.exists(...arguments)}setDefaultNamespace(t){this.options.defaultNS=t}hasLoadedNamespace(t){let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(!this.isInitialized)return this.logger.warn("hasLoadedNamespace: i18next was not initialized",this.languages),!1;if(!this.languages||!this.languages.length)return this.logger.warn("hasLoadedNamespace: i18n.languages were undefined or empty",this.languages),!1;let a=r.lng||this.resolvedLanguage||this.languages[0],n=this.options?this.options.fallbackLng:!1,o=this.languages[this.languages.length-1];if(a.toLowerCase()==="cimode")return!0;let i=(s,l)=>{let u=this.services.backendConnector.state[`${s}|${l}`];return u===-1||u===0||u===2};if(r.precheck){let s=r.precheck(this,i);if(s!==void 0)return s}return!!(this.hasResourceBundle(a,t)||!this.services.backendConnector.backend||this.options.resources&&!this.options.partialBundledLanguages||i(a,t)&&(!n||i(o,t)))}loadNamespaces(t,r){let a=yb();return this.options.ns?(dt(t)&&(t=[t]),t.forEach(n=>{this.options.ns.indexOf(n)<0&&this.options.ns.push(n)}),this.loadResources(n=>{a.resolve(),r&&r(n)}),a):(r&&r(),Promise.resolve())}loadLanguages(t,r){let a=yb();dt(t)&&(t=[t]);let n=this.options.preload||[],o=t.filter(i=>n.indexOf(i)<0&&this.services.languageUtils.isSupportedCode(i));return o.length?(this.options.preload=n.concat(o),this.loadResources(i=>{a.resolve(),r&&r(i)}),a):(r&&r(),Promise.resolve())}dir(t){if(t||(t=this.resolvedLanguage||(this.languages&&this.languages.length>0?this.languages[0]:this.language)),!t)return"rtl";let r=["ar","shu","sqr","ssh","xaa","yhd","yud","aao","abh","abv","acm","acq","acw","acx","acy","adf","ads","aeb","aec","afb","ajp","apc","apd","arb","arq","ars","ary","arz","auz","avl","ayh","ayl","ayn","ayp","bbz","pga","he","iw","ps","pbt","pbu","pst","prp","prd","ug","ur","ydd","yds","yih","ji","yi","hbo","men","xmn","fa","jpr","peo","pes","prs","dv","sam","ckb"],a=this.services&&this.services.languageUtils||new bS(bV());return r.indexOf(a.getLanguagePartFromCode(t))>-1||t.toLowerCase().indexOf("-arab")>1?"rtl":"ltr"}static createInstance(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},r=arguments.length>1?arguments[1]:void 0;return new e(t,r)}cloneInstance(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:fS,a=t.forkResourceStore;a&&delete t.forkResourceStore;let n={...this.options,...t,isClone:!0},o=new e(n);return(t.debug!==void 0||t.prefix!==void 0)&&(o.logger=o.logger.clone(t)),["store","services","language"].forEach(s=>{o[s]=this[s]}),o.services={...this.services},o.services.utils={hasLoadedNamespace:o.hasLoadedNamespace.bind(o)},a&&(o.store=new gS(this.store.data,n),o.services.resourceStore=o.store),o.translator=new hS(o.services,n),o.translator.on("*",function(s){for(var l=arguments.length,u=new Array(l>1?l-1:0),d=1;d<l;d++)u[d-1]=arguments[d];o.emit(s,...u)}),o.init(n,r),o.translator.options=n,o.translator.backendConnector.services.utils={hasLoadedNamespace:o.hasLoadedNamespace.bind(o)},o}toJSON(){return{options:this.options,store:this.store,language:this.language,languages:this.languages,resolvedLanguage:this.resolvedLanguage}}},Fa=yS.createInstance();Fa.createInstance=yS.createInstance;var Qwt=Fa.createInstance,ekt=Fa.dir,tkt=Fa.init,rkt=Fa.loadResources,akt=Fa.reloadResources,nkt=Fa.use,okt=Fa.changeLanguage,ikt=Fa.getFixedT,skt=Fa.t,lkt=Fa.exists,ukt=Fa.setDefaultNamespace,ckt=Fa.hasLoadedNamespace,dkt=Fa.loadNamespaces,fkt=Fa.loadLanguages;c();c();var hve=L(ae(),1);c();c();var kb=L(ae(),1);c();var cve=L(kV());c();function TV(){if(console&&console.warn){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];typeof t[0]=="string"&&(t[0]=`react-i18next:: ${t[0]}`),console.warn(...t)}}var SV={};function xb(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];typeof t[0]=="string"&&SV[t[0]]||(typeof t[0]=="string"&&(SV[t[0]]=new Date),TV(...t))}var CV=(e,t)=>()=>{if(e.isInitialized)t();else{let r=()=>{setTimeout(()=>{e.off("initialized",r)},0),t()};e.on("initialized",r)}};function K4(e,t,r){e.loadNamespaces(t,CV(e,r))}function X4(e,t,r,a){typeof r=="string"&&(r=[r]),r.forEach(n=>{e.options.ns.indexOf(n)<0&&e.options.ns.push(n)}),e.loadLanguages(t,CV(e,a))}function dve(e,t){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},a=t.languages[0],n=t.options?t.options.fallbackLng:!1,o=t.languages[t.languages.length-1];if(a.toLowerCase()==="cimode")return!0;let i=(s,l)=>{let u=t.services.backendConnector.state[`${s}|${l}`];return u===-1||u===2};return r.bindI18n&&r.bindI18n.indexOf("languageChanging")>-1&&t.services.backendConnector.backend&&t.isLanguageChangingTo&&!i(t.isLanguageChangingTo,e)?!1:!!(t.hasResourceBundle(a,e)||!t.services.backendConnector.backend||t.options.resources&&!t.options.partialBundledLanguages||i(a,e)&&(!n||i(o,e)))}function EV(e,t){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};return!t.languages||!t.languages.length?(xb("i18n.languages were undefined or empty",t.languages),!0):t.options.ignoreJSONStructure!==void 0?t.hasLoadedNamespace(e,{lng:r.lng,precheck:(n,o)=>{if(r.bindI18n&&r.bindI18n.indexOf("languageChanging")>-1&&n.services.backendConnector.backend&&n.isLanguageChangingTo&&!o(n.isLanguageChangingTo,e))return!1}}):dve(e,t,r)}c();c();var fve=/&(?:amp|#38|lt|#60|gt|#62|apos|#39|quot|#34|nbsp|#160|copy|#169|reg|#174|hellip|#8230|#x2F|#47);/g,pve={"&":"&","&":"&","<":"<","<":"<",">":">",">":">","'":"'","'":"'",""":'"',""":'"'," ":" "," ":" ","©":"\xA9","©":"\xA9","®":"\xAE","®":"\xAE","…":"\u2026","…":"\u2026","/":"/","/":"/"},mve=e=>pve[e],_V=e=>e.replace(fve,mve);var J4={bindI18n:"languageChanged",bindI18nStore:"",transEmptyNodeValue:"",transSupportBasicHtmlNodes:!0,transWrapTextNodes:"",transKeepBasicHtmlNodesFor:["br","strong","i","p"],useSuspense:!0,unescape:_V};function vS(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};J4={...J4,...e}}function wb(){return J4}c();var AV;function xS(e){AV=e}function Rd(){return AV}c();var IV=L(ae(),1);c();var wS={type:"3rdParty",init(e){vS(e.options.react),xS(e)}};var ym=(0,IV.createContext)(),kS=class{constructor(){this.usedNamespaces={}}addUsedNamespaces(t){t.forEach(r=>{this.usedNamespaces[r]||(this.usedNamespaces[r]=!0)})}getUsedNamespaces(){return Object.keys(this.usedNamespaces)}};c();var Bo=L(ae(),1);var bve=(e,t)=>{let r=(0,Bo.useRef)();return(0,Bo.useEffect)(()=>{r.current=t?r.current:e},[e,t]),r.current};function Sb(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},{i18n:r}=t,{i18n:a,defaultNS:n}=(0,Bo.useContext)(ym)||{},o=r||a||Rd();if(o&&!o.reportNamespaces&&(o.reportNamespaces=new kS),!o){xb("You will need to pass in an i18next instance by using initReactI18next");let k=(T,C)=>typeof C=="string"?C:C&&typeof C=="object"&&typeof C.defaultValue=="string"?C.defaultValue:Array.isArray(T)?T[T.length-1]:T,S=[k,{},!1];return S.t=k,S.i18n={},S.ready=!1,S}o.options.react&&o.options.react.wait!==void 0&&xb("It seems you are still using the old wait option, you may migrate to the new useSuspense behaviour.");let i={...wb(),...o.options.react,...t},{useSuspense:s,keyPrefix:l}=i,u=e||n||o.options&&o.options.defaultNS;u=typeof u=="string"?[u]:u||["translation"],o.reportNamespaces.addUsedNamespaces&&o.reportNamespaces.addUsedNamespaces(u);let d=(o.isInitialized||o.initializedStoreOnce)&&u.every(k=>EV(k,o,i));function f(){return o.getFixedT(t.lng||null,i.nsMode==="fallback"?u:u[0],l)}let[p,m]=(0,Bo.useState)(f),h=u.join();t.lng&&(h=`${t.lng}${h}`);let b=bve(h),w=(0,Bo.useRef)(!0);(0,Bo.useEffect)(()=>{let{bindI18n:k,bindI18nStore:S}=i;w.current=!0,!d&&!s&&(t.lng?X4(o,t.lng,u,()=>{w.current&&m(f)}):K4(o,u,()=>{w.current&&m(f)})),d&&b&&b!==h&&w.current&&m(f);function T(){w.current&&m(f)}return k&&o&&o.on(k,T),S&&o&&o.store.on(S,T),()=>{w.current=!1,k&&o&&k.split(" ").forEach(C=>o.off(C,T)),S&&o&&S.split(" ").forEach(C=>o.store.off(C,T))}},[o,h]);let v=(0,Bo.useRef)(!0);(0,Bo.useEffect)(()=>{w.current&&!v.current&&m(f),v.current=!1},[o,l]);let x=[p,o,d];if(x.t=p,x.i18n=o,x.ready=d,d||!d&&!s)return x;throw new Promise(k=>{t.lng?X4(o,t.lng,u,()=>k()):K4(o,u,()=>k())})}c();var LV=L(ae(),1);c();c();var NV=L(ae(),1);c();var kve=L(ae(),1);c();var vve=L(ae(),1);c();c();function RV(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}c();c();c();function Dd(e){"@babel/helpers - typeof";return Dd=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Dd(e)}c();function DV(e,t){if(Dd(e)!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var a=r.call(e,t||"default");if(Dd(a)!="object")return a;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function PV(e){var t=DV(e,"string");return Dd(t)=="symbol"?t:t+""}function OV(e,t){for(var r=0;r<t.length;r++){var a=t[r];a.enumerable=a.enumerable||!1,a.configurable=!0,"value"in a&&(a.writable=!0),Object.defineProperty(e,PV(a.key),a)}}function MV(e,t,r){return t&&OV(e.prototype,t),r&&OV(e,r),Object.defineProperty(e,"prototype",{writable:!1}),e}var $V=[],Sve=$V.forEach,Tve=$V.slice;function Cve(e){return Sve.call(Tve.call(arguments,1),function(t){if(t)for(var r in t)e[r]===void 0&&(e[r]=t[r])}),e}var FV=/^[\u0009\u0020-\u007e\u0080-\u00ff]+$/,Eve=function(t,r,a){var n=a||{};n.path=n.path||"/";var o=encodeURIComponent(r),i="".concat(t,"=").concat(o);if(n.maxAge>0){var s=n.maxAge-0;if(Number.isNaN(s))throw new Error("maxAge should be a Number");i+="; Max-Age=".concat(Math.floor(s))}if(n.domain){if(!FV.test(n.domain))throw new TypeError("option domain is invalid");i+="; Domain=".concat(n.domain)}if(n.path){if(!FV.test(n.path))throw new TypeError("option path is invalid");i+="; Path=".concat(n.path)}if(n.expires){if(typeof n.expires.toUTCString!="function")throw new TypeError("option expires is invalid");i+="; Expires=".concat(n.expires.toUTCString())}if(n.httpOnly&&(i+="; HttpOnly"),n.secure&&(i+="; Secure"),n.sameSite){var l=typeof n.sameSite=="string"?n.sameSite.toLowerCase():n.sameSite;switch(l){case!0:i+="; SameSite=Strict";break;case"lax":i+="; SameSite=Lax";break;case"strict":i+="; SameSite=Strict";break;case"none":i+="; SameSite=None";break;default:throw new TypeError("option sameSite is invalid")}}return i},zV={create:function(t,r,a,n){var o=arguments.length>4&&arguments[4]!==void 0?arguments[4]:{path:"/",sameSite:"strict"};a&&(o.expires=new Date,o.expires.setTime(o.expires.getTime()+a*60*1e3)),n&&(o.domain=n),document.cookie=Eve(t,encodeURIComponent(r),o)},read:function(t){for(var r="".concat(t,"="),a=document.cookie.split(";"),n=0;n<a.length;n++){for(var o=a[n];o.charAt(0)===" ";)o=o.substring(1,o.length);if(o.indexOf(r)===0)return o.substring(r.length,o.length)}return null},remove:function(t){this.create(t,"",-1)}},_ve={name:"cookie",lookup:function(t){var r;if(t.lookupCookie&&typeof document<"u"){var a=zV.read(t.lookupCookie);a&&(r=a)}return r},cacheUserLanguage:function(t,r){r.lookupCookie&&typeof document<"u"&&zV.create(r.lookupCookie,t,r.cookieMinutes,r.cookieDomain,r.cookieOptions)}},Ave={name:"querystring",lookup:function(t){var r;if(typeof window<"u"){var a=window.location.search;!window.location.search&&window.location.hash&&window.location.hash.indexOf("?")>-1&&(a=window.location.hash.substring(window.location.hash.indexOf("?")));for(var n=a.substring(1),o=n.split("&"),i=0;i<o.length;i++){var s=o[i].indexOf("=");if(s>0){var l=o[i].substring(0,s);l===t.lookupQuerystring&&(r=o[i].substring(s+1))}}}return r}},Tb=null,UV=function(){if(Tb!==null)return Tb;try{Tb=window!=="undefined"&&window.localStorage!==null;var t="i18next.translate.boo";window.localStorage.setItem(t,"foo"),window.localStorage.removeItem(t)}catch{Tb=!1}return Tb},Ive={name:"localStorage",lookup:function(t){var r;if(t.lookupLocalStorage&&UV()){var a=window.localStorage.getItem(t.lookupLocalStorage);a&&(r=a)}return r},cacheUserLanguage:function(t,r){r.lookupLocalStorage&&UV()&&window.localStorage.setItem(r.lookupLocalStorage,t)}},Cb=null,BV=function(){if(Cb!==null)return Cb;try{Cb=window!=="undefined"&&window.sessionStorage!==null;var t="i18next.translate.boo";window.sessionStorage.setItem(t,"foo"),window.sessionStorage.removeItem(t)}catch{Cb=!1}return Cb},Lve={name:"sessionStorage",lookup:function(t){var r;if(t.lookupSessionStorage&&BV()){var a=window.sessionStorage.getItem(t.lookupSessionStorage);a&&(r=a)}return r},cacheUserLanguage:function(t,r){r.lookupSessionStorage&&BV()&&window.sessionStorage.setItem(r.lookupSessionStorage,t)}},Nve={name:"navigator",lookup:function(t){var r=[];if(typeof navigator<"u"){if(navigator.languages)for(var a=0;a<navigator.languages.length;a++)r.push(navigator.languages[a]);navigator.userLanguage&&r.push(navigator.userLanguage),navigator.language&&r.push(navigator.language)}return r.length>0?r:void 0}},Rve={name:"htmlTag",lookup:function(t){var r,a=t.htmlTag||(typeof document<"u"?document.documentElement:null);return a&&typeof a.getAttribute=="function"&&(r=a.getAttribute("lang")),r}},Dve={name:"path",lookup:function(t){var r;if(typeof window<"u"){var a=window.location.pathname.match(/\/([a-zA-Z-]*)/g);if(a instanceof Array)if(typeof t.lookupFromPathIndex=="number"){if(typeof a[t.lookupFromPathIndex]!="string")return;r=a[t.lookupFromPathIndex].replace("/","")}else r=a[0].replace("/","")}return r}},Pve={name:"subdomain",lookup:function(t){var r=typeof t.lookupFromSubdomainIndex=="number"?t.lookupFromSubdomainIndex+1:1,a=typeof window<"u"&&window.location&&window.location.hostname&&window.location.hostname.match(/^(\w{2,5})\.(([a-z0-9-]{1,63}\.[a-z]{2,6})|localhost)/i);if(a)return a[r]}},jV=!1;try{document.cookie,jV=!0}catch{}var HV=["querystring","cookie","localStorage","sessionStorage","navigator","htmlTag"];jV||HV.splice(1,1);function Ove(){return{order:HV,lookupQuerystring:"lng",lookupCookie:"i18next",lookupLocalStorage:"i18nextLng",lookupSessionStorage:"i18nextLng",caches:["localStorage"],excludeCacheFor:["cimode"],convertDetectedLanguage:function(t){return t}}}var Q4=function(){function e(t){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};RV(this,e),this.type="languageDetector",this.detectors={},this.init(t,r)}return MV(e,[{key:"init",value:function(r){var a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};this.services=r||{languageUtils:{}},this.options=Cve(a,this.options||{},Ove()),typeof this.options.convertDetectedLanguage=="string"&&this.options.convertDetectedLanguage.indexOf("15897")>-1&&(this.options.convertDetectedLanguage=function(o){return o.replace("-","_")}),this.options.lookupFromUrlIndex&&(this.options.lookupFromPathIndex=this.options.lookupFromUrlIndex),this.i18nOptions=n,this.addDetector(_ve),this.addDetector(Ave),this.addDetector(Ive),this.addDetector(Lve),this.addDetector(Nve),this.addDetector(Rve),this.addDetector(Dve),this.addDetector(Pve)}},{key:"addDetector",value:function(r){return this.detectors[r.name]=r,this}},{key:"detect",value:function(r){var a=this;r||(r=this.options.order);var n=[];return r.forEach(function(o){if(a.detectors[o]){var i=a.detectors[o].lookup(a.options);i&&typeof i=="string"&&(i=[i]),i&&(n=n.concat(i))}}),n=n.map(function(o){return a.options.convertDetectedLanguage(o)}),this.services.languageUtils.getBestMatchFromCodes?n:n.length>0?n[0]:null}},{key:"cacheUserLanguage",value:function(r,a){var n=this;a||(a=this.options.caches),a&&(this.options.excludeCacheFor&&this.options.excludeCacheFor.indexOf(r)>-1||a.forEach(function(o){n.detectors[o]&&n.detectors[o].cacheUserLanguage(r,n.options)}))}}])}();Q4.type="languageDetector";var qV={pages:{deploy:{title:"Integration Channels",subtitle:"Connect your agent with the platforms you use",searchPlaceholder:"Search integration channel...",noAgentId:"Agent ID not found",enablePublicAgent:"Enable public agent",configure:"Configure",upgradePlan:"Upgrade plan",publicAgentRequired:"This integration requires a public agent. Would you like to make your agent public?",integrations:{webBubble:"Web Chat Bubble",webStandard:"Web Standard Chat",webStandalone:"Standalone Web Page",crmhorneross:"horneross CRM",chatwoot:"Chatwoot",whatsapp:"WhatsApp",zapier:"Zapier",telegram:"Telegram",slack:"Slack",wordpress:"WordPress",mercadolibre:"Mercado Libre"},modals:{chatBubble:"Chat Bubble Configuration",standardChatbox:"Standard Chatbox Configuration",standalonePage:"Standalone Page Configuration",configurations:"Configurations"},usageLimit:{title:"Premium Feature",description:"This integration requires a premium plan. Upgrade your plan to unlock this feature."}},dashboard:{title:"Dashboard",subtitle:"Showing data from {from} to {to}",loading:"Loading dashboard analytics...",accessDenied:{title:"Access Denied",message:"Only administrators and organization owners can access this dashboard."},error:{title:"Error Loading Dashboard",message:"Failed to load dashboard statistics"},actions:{viewLogs:"View Logs",selectRange:"Select range"},dateFilter:{quickPresets:"Quick presets",days7:"7 days",days30:"30 days",days90:"90 days",selectHelp:"Select the start and end date of the range",daysSelected:"{count} days selected",reset:"Reset",cancel:"Cancel",apply:"Apply"},metrics:{activeAgents:"Active agents",datastores:"Datastores",newContacts:"New contacts",conversations:"Conversations",thisMonth:"this month"},chart:{messageStats:"Message Statistics",groupedByMonth:"Data grouped by month",groupedByWeek:"Data grouped by week",daily:"Daily data",inRange:{days:"{count} days in range",weeks:"{count} weeks in range",months:"{count} months in range"},tooltip:{day:"Day",week:"Week",month:"Month",messages:"messages"}},agentPerformance:{title:"Agent Performance",conversations:"conversations",noData:"No agent data available"}},agents:{title:"Agents",description:"AI agents are customizable instances of large language models tailored to fit your specific use cases. By connecting them to a datastore, you can train them on your unique knowledge base.",newAgent:"New Agent",preparingAgents:"Preparing your agents...",tutorial:"View tutorial - Agent creation",requestFeature:"Request improvement",requestFeatureDescription:"Want a new improvement?",requestAgent:"Request agent",requestAgentDescription:"Want a new agent?",new:"New",create:"Create"},datastores:{title:"Sources",description:"Organize your knowledge bases with files, web pages, and other data sources.",fileMovedSuccess:"File moved successfully",fileMovedError:"Error moving file. Please try again.",folderDeletedSuccess:"Folder deleted successfully",folderDeletedError:"Error deleting folder",fileDeletedSuccess:"File deleted successfully",fileDeletedError:"Error deleting file",errorUpdatingName:"Error updating datastore name. Please try again.",tokens:"tokens",chunks:"chunks",files:"Files",configuration:"Configuration",dataFile:"Data file",fileConfiguration:"File Configuration",fileConfigurationDescription:"Update the details and configuration of this data file",updateConfiguration:"Update Configuration",dangerZone:"Danger Zone",dangerZoneDescription:"Permanently delete this file",deleteFileTitle:"Delete file?",deleteFileWarning:"This action",deleteFileWarningBold:"cannot be undone",deleting:"Deleting...",emptyStateTitle:"No folders or files yet",emptyStateDescription:"Create your first folder or upload a file to get started",newFolder:"New Folder",newFile:"New File",folders:"Folders",settings:{pluginIconUpdated:"Plugin icon updated successfully",pluginUpdated:"Plugin updated successfully",pluginIcon:"Plugin Icon",replace:"Replace",delete:"Delete",nameForHumans:"Name for Humans",nameForHumansPlaceholder:"My Custom Plugin",descriptionForHumans:"Description for Humans",descriptionForHumansPlaceholder:"A brief description of your plugin",descriptionForModel:"Description for Model",descriptionForModelPlaceholder:"Plugin for querying data from {name}. Use it to answer questions about the knowledge base.",pluginDescriptionBestPractices:"View Plugin Description Best Practices",update:"Update",pluginRoot:"Plugin Root URL",copied:"Copied to clipboard",settingsUpdated:"Settings updated successfully",errorUpdating:"Error updating settings",deleteSuccess:"Folder deleted successfully",deleteError:"Error deleting folder"}},conversations:{title:"Conversations",description:"View all conversations",noConversations:"No conversations found"},contacts:{title:"Contacts",subtitle:"Manage all your leads and customers",tabs:{all:"All",recent:"Recent"},exportCSV:"Export CSV",totalContacts:"Total Contacts",lastSixMonthsTrend:"Last 6 months trend",newThisWeek:"New This Week",newContacts:"new contacts",dailyBreakdown:"Daily breakdown:",withEmail:"With Email",contactsWithEmail:"Contacts with email data",searchPlaceholder:"Search contacts...",reload:"Reload",resultsFound:"{count} result found",resultsFoundPlural:"{count} results found",unknown:"Unknown",copyContactInfo:"Copy contact info",showingContacts:"Showing <strong>{from}</strong> to <strong>{to}</strong> of <strong>{total}</strong> contacts",previous:"Previous",next:"Next",noResultsFound:"No results found",noContactsYet:"No contacts yet",adjustSearchTerms:"Try adjusting your search terms or clear filters to see all contacts.",emptyContactList:"Your contact list is empty. Contacts will automatically appear here when your agents interact with customers.",clearSearch:"Clear search",refresh:"Refresh"},logs:{title:"Activity Logs",description:"Monitor and analyze all activity in your organization",actions:{generateReport:"Generate Report",reload:"Reload"},search:{placeholder:"Search logs..."},dateFilter:{quickPresets:"Quick presets",days7:"7 days",days30:"30 days",days90:"90 days",selectHelp:"Select start and end",daysSelected:"{count} days selected",reset:"Reset",cancel:"Cancel",apply:"Apply"},metrics:{totalRequests:"Total Requests",totalCost:"Total Cost",avgResponseTime:"Avg Response Time",tokensUsed:"Tokens Used",last30Days:"last 30 days",thisMonth:"this month",perResponse:"per response",totalConsumed:"total consumed"}},iframePage:{defaultAssistant:"Assistant",agentNotAvailable:"Agent not available",privateAgentMessage:'This agent is private and cannot be embedded. Change visibility to "public" to use the iframe.',loading:"Loading...",noConversations:"No previous conversations",newConversation:"New conversation"},standalonePage:{defaultAssistant:"your assistant",defaultAgent:"Agent",restrictedAccess:"Restricted access",privateAgent:"Private agent",requiresAuth:"This agent is private and requires authentication to access.",login:"Login",newConversation:"New conversation",noConversations:"No conversations",untitledConversation:"Untitled conversation",expandSidebar:"Expand sidebar",writeMessage:"Write your message...",initialMessage:"Hello! \u{1F44B} I'm {agentName}. How can I help you today?"},agentsList:{tabs:{all:"All",marketplace:"Marketplace"},sort:{recent:"Most recent",name:"Name",conversations:"Conversations"},buttons:{creating:"Creating...",createNew:"Create agent",new:"New",install:"Install",evaluate:"Evaluate",deleteAgent:"Delete agent"},sections:{recentAgents:"Recent agents",featuredAgents:"Featured agents"},table:{name:"Name",lastRun:"Last Run",integrations:"Integrations",widget:"Install",evaluate:"Evaluate",enabled:"Enabled"},emptyState:{title:"Start Chatting!",description:"Start a conversation and let our assistant help you create and configure your first agent step by step",startingConversation:"Starting conversation...",startChatting:"Start Chatting",helperText:"The assistant will guide you step by step in creating your agent"},marketplace:{searchPlaceholder:"Search agents by name or description...",featuredAgents:"Featured Agents",noResults:"No prompts found",noResultsDescription:"Try adjusting your search to find what you're looking for."},deleteModal:{title:"Delete agent",confirmText:"Are you sure you want to delete the agent",warningTitle:"This action cannot be undone:",warningItems:{versions:"All agent versions will be deleted",conversations:"All agent conversations will be deleted",config:"All configuration and customization will be lost",files:"Associated files will be permanently deleted"},cancel:"Cancel",deleting:"Deleting...",deleteAgent:"Delete agent"},toast:{agentDeleted:'Agent "{name}" deleted successfully',deleteError:"Error deleting the agent"}},deployPage:{title:"Install Agent",subtitle:"Choose where to deploy your agent",comingSoon:"Coming soon",enablePublicAgent:"Enable public agent",upgradePlan:"Upgrade plan",confirmPublicAgent:"This integration requires a public agent. Do you want to make your agent public?",categories:{web:{name:"Install on your Website",description:"Add the chat to your website"},messaging:{name:"Messaging",description:"Connect with messaging apps"},crm:{name:"CRM & Support",description:"Integrate with your support system"},ecommerce:{name:"Ecommerce",description:"Connect with sales platforms"}},integrations:{bubble:{name:"Floating Chat",description:"Chat bubble in the corner of your website"},iframe:{name:"Embedded Chat",description:"Insert the chat inside your page"},standalone:{name:"Dedicated Page",description:"A full page for your agent"},whatsapp:{description:"Auto-respond on WhatsApp"},telegram:{description:"Bot for Telegram"},instagram:{description:"Reply to Instagram messages"},slack:{description:"Bot for your Slack workspace"},kapso:{description:"WhatsApp via Kapso API"},horneross:{description:"Horneross integrated CRM"},chatwoot:{description:"Open-source support platform"},mercadolibre:{description:"Answer Mercado Libre questions"},shopify:{description:"Integrate your agent into your Shopify store"},tiendanube:{description:"Integrate your agent into your Tienda Nube store"}},modals:{bubble:"Configure Floating Chat",iframe:"Configure Embedded Chat",standalone:"Configure Dedicated Page",configure:"Customize your integration"},premiumRequired:{title:"Premium Feature",description:"This integration requires a premium plan. Upgrade your plan to unlock this feature."}},widgetEditor:{title:"Widget Editor",widgetTypes:{bubble:"Bubble",iframe:"iFrame",standalone:"Presentation"},header:{backToAgents:"Back to agents",save:"Save",saveChanges:"Save changes"},privateAgent:{title:"Private agent",publicTitle:"Public agent",publicDescription:"This agent is accessible to anyone with the link.",bubbleRequiresPublic:"The bubble widget requires the agent to be public to work.",iframeRequiresPublic:"The iframe requires the agent to be public to work.",changeVisibility:'Change visibility to "public" in the agent settings.',warningBubble:"The bubble widget requires a public agent.",warningIframe:"The iframe requires a public agent.",changeToPublic:"Change to public",changeToPrivate:"Change to private",confirmTitle:"Change agent visibility?",confirmDescription:"This will make your agent accessible to anyone with the link. The widget will work once the agent is public.",confirmPrivateTitle:"Make agent private?",confirmPrivateDescription:"This will restrict access to your organization only. The bubble widget and iframe will stop working on external websites.",cancel:"Cancel",confirm:"Change to public",confirmPrivate:"Change to private",successMessage:"Agent visibility changed to public",successPrivateMessage:"Agent visibility changed to private",errorMessage:"Failed to change agent visibility"},dropdown:{noAgents:"No agents"},sidebar:{name:"Name",noName:"No name",nameDescription:"Will be shown in the chat header",initialMessage:"Initial message",initialMessageDefault:"Hello! How can I help you?",initialMessageDescription:"Welcome message for users",primaryColor:"Primary color",presentation:"Presentation",customUrl:"Custom URL",customUrlDescription:"Public link to share your agent",suggestions:"Suggestions",suggestionsDescription:"Templates, popup, branding",messageTemplates:"Message templates",iframeOptions:"iFrame Options",transparentBackground:"Transparent background",helpLinks:"Help links",usefulLinks:"Useful links",customCSS:"Custom CSS",configured:"Configured",noStyles:"No styles",installCode:"Installation code",copySnippet:"Copy snippet",copyDescription:"Copy and paste into your website",viewLive:"View live",bubbleInstallHint:"Paste this code before the closing </body> tag of your website. The chat bubble will appear automatically."},toast:{codeCopied:"Code copied!",clickToCopy:"Click to copy",configSaved:"Configuration saved!",saveError:"Error saving"}},hornerossBuilder:{title:"What would you like to do today?",subtitle:"Create your <highlight>AI Employee</highlight> just by <highlight>chatting with AI</highlight>.",subtitleParts:{prefix:"Create your",aiEmployee:"AI Employee",middle:"just by",chattingWithAI:"chatting with AI"},placeholder:"I want an agent that will monitor my support inbox and help answer.",seo:{title:"Horneross - AI Agent Builder | Create Custom AI Assistants",description:"Build powerful AI agents without coding. Create custom AI assistants for sales, support, onboarding, and automation. Connect to your data and tools seamlessly.",keywords:"AI agent builder, no-code AI, custom AI assistants, AI automation, chatbot builder, AI sales agent, AI support agent, conversational AI"},usageLimitModal:{conversationsExceeded:{title:"Conversation limit exceeded",description:"You have reached the maximum number of active conversations for your plan. Please resolve or delete existing conversations, or upgrade your plan to continue."},agentsExceeded:{title:"Agent limit exceeded",description:"You have reached the maximum number of agents for your plan. Please upgrade your plan to create more agents."}},autoStartPrompt:"Hello! I need to create an AI agent. Can you show me examples of popular agents and help me choose the one that best fits my business?"}},components:{organizationForm:{organization:"Organization",organizationName:"Organization Name",organizationNamePlaceholder:"Organization name",upload:"Upload",remove:"Remove",inviteTeamMember:"Invite Team Member",enterEmail:"Enter email address",sendInvite:"Send Invite",invite:"Invite",teamMembers:"Team Members",seats:"seats",active:"Active",pending:"Pending",roleUser:"User",roleAdmin:"Admin",roleOwner:"Owner",maxSeatsReached:"You have reached the maximum number of seats for your plan.",invitationSent:"Invitation sent successfully",userAlreadyInvited:"User already invited",invitationFailed:"Failed to send invitation",invitationCreatedNoEmail:"Invitation created, but email could not be sent. Share the link manually.",emailNotSentShareLink:"Email could not be sent. Share this link with the invitee:",linkCopied:"Link copied to clipboard",confirmRemoveMember:"This user will be removed from the organization, are you sure?",memberRemoved:"Member removed successfully",memberRemoveFailed:"Failed to remove member",iconUpdated:"Icon updated successfully",iconUploadFailed:"Failed to upload icon",iconDeleted:"Icon deleted successfully",iconDeleteFailed:"Failed to delete icon",expiresOn:"Expires on",invitationExpired:"Invitation expired",expired:"Expired",resendInvitation:"Resend invitation",cancelInvitation:"Cancel invitation",removeMember:"Remove member",invitationResent:"Invitation resent successfully",resendFailed:"Failed to resend invitation",confirmCancelInvite:"This invitation will be cancelled. Are you sure?",invitationCancelled:"Invitation cancelled",cancelFailed:"Failed to cancel invitation"},integrationsManagement:{pageTitle:"Integrations",pageDescription:"Connect your communication tools",statusConnected:"Connected",statusAvailable:"Available",statusComingSoon:"Coming Soon",comingSoonMessage:"This integration will be available soon",configureMessage:"Configure this integration to get started",open:"Open",manage:"Manage",configure:"Configure",connectedAccount:"Connected account",botsConnected:"{count} bot connected",botsConnectedPlural:"{count} bots connected",integrations:{chatwoot:"Chatwoot",chatwootDescription:"Customer support platform",whatsapp:"WhatsApp Business",whatsappDescription:"Customer conversations",telegram:"Telegram",telegramDescription:"Communication bots",instagram:"Instagram",instagramDescription:"Facebook & Instagram Messenger",slack:"Slack",slackDescription:"Team notifications",zapier:"Zapier",zapierDescription:"Thousands of apps"}},marketplaceAgentCard:{copy:"Copy",copied:"Copied!"},contactsTable:{searchLabel:"Search for contacts (email)",resultsCount:"{count} result",resultsCountPlural:"{count} results",searchPlaceholder:"Search contacts by email, name, phone...",tableHeaders:{email:"Email",phoneNumber:"Phone Number",name:"Name",createdAt:"Created At"},pagination:{previous:"Previous",next:"Next",pageOf:"Page {current} of {total}"}},createAgentModal:{title:"Create New Agent",subtitle:"Describe the agent you want to create",placeholder:"Describe your agent... e.g., Create a customer support agent that...",quickStartTemplates:"Quick Start Templates",explore:"Explore",templates:{customerSupport:{label:"Customer Support",prompt:"Create a customer support agent that helps with refunds, shipping questions, and product inquiries. Be friendly, empathetic, and solution-oriented."},salesAssistant:{label:"Sales Assistant",prompt:"Create a sales agent that qualifies leads, schedules meetings, and understands customer pain points. Be professional and consultative."},technicalSupport:{label:"Technical Support",prompt:"Create a technical support agent that troubleshoots software issues, provides step-by-step solutions, and escalates complex problems when needed."},knowledgeAssistant:{label:"Knowledge Assistant",prompt:"Create an AI assistant that answers questions based on documentation, provides detailed explanations, and helps users find information quickly."}}},navigation:{dashboard:"Dashboard",agents:"Agents",datastores:"Sources",conversations:"Conversations",analytics:"Analytics",settings:"Settings",contacts:"Contacts",logs:"Logs",tools:"Tools",integrations:"Integrations",inbox:"Inbox",database:"Database",forms:"Forms",emailInboxes:"Email Inboxes",appsTools:"Apps/Tools",home:"Home",chats:"Chats",newChat:"New Chat",projects:"Sources",explore:"Explore",organizations:"My Organizations",createOrganization:"Create Organization",memory:"Memory",library:"Library"},chatbox:{placeholder:"Type a message...",actions:{send:"Send",resolve:"Mark as Resolved",requestHuman:"Request Human"}},sidebar:{changeLanguage:"Change language",contactSupport:"Help center",openSidebar:"Open Sidebar",closeSidebar:"Close Sidebar",updatePlan:"Update Plan",updatePlanDescription:"Get more benefits by upgrading your plan",tutorial:"Watch Tutorial",workspace:"Workspace",management:"Management",groups:{agent:"Agent",conversations:"Management",recentChat:"Recent chat",memory:"Memory"},badges:{new:"NEW",experimental:"EXP",comingSoon:"Coming Soon"},recentChat:{noConversations:"No recent conversations"},enterprise:{title:"Enterprise",description:"Scale with custom solutions"},actions:{collapse:"Collapse",expand:"Expand"}},searchChat:{title:"Search",placeholder:"Search conversations...",noResults:"No conversations found",empty:"No recent conversations",recentChats:"Recent conversations",hint:"Press Enter to open"},agentPress:{title:"Tools",tooltipTitle:"Agent Tools",tooltipDescription:"Special capabilities you can enable to customize agent behavior",categories:{agent:{name:"Agent",description:"Core agent behavior and conversation settings"},research:{name:"Research",description:"Web search and content extraction"},builder:{name:"Builder",description:"Create and manage other agents"},prompt:{name:"Prompt",description:"Prompt engineering and management"},data:{name:"Data",description:"Code execution and data analysis"},media:{name:"Media",description:"Image and avatar generation"},presentation:{name:"Presentation",description:"Visual presentation tools for displaying data"},integration:{name:"Integration",description:"External service integrations"}}},agentIntegrations:{title:"Integrations",tooltipTitle:"Agent Integrations",tooltipDescription:"Custom integrations with external services and APIs",addIntegration:"Add Integration",noAgentWarning:"No integrations available",noAgentHint:"Create the agent first to add integrations",searchPlaceholder:"Search integrations...",noResults:"No integrations found matching",emptyState:{title:"No integrations configured",description:"Click to add custom integrations like HTTP, forms, etc."},tools:{http:{label:"HTTP",description:"Make HTTP requests to external APIs."},form:{label:"Forms",description:"Collect user information via interactive forms."},leadCapture:{label:"Lead capture",description:"Capture contact information from potential clients."},default:"Agent tool"},actions:{remove:"Remove",removeError:"Error removing tool"}},layout:{title:"horneross - AI Agents Platform",description:"Build and deploy custom AI agents for your business"},intercomModal:{title:"Hi! \u{1F44B}",subtitle:"How can we help you?",reportBug:"Report a bug",suggestImprovement:"Suggest an improvement",contactSales:"Contact Sales",contactSupport:"Contact Support",guide:"Guide",news:"News",horneross:"horneross.com",feedback:"Rate us",instagram:"Follow us on Instagram"},datastoreForms:{updating:"Updating...",updated:"Updated successfully",somethingWentWrong:"Something went wrong",datastoreName:"Datastore Name",datastoreNameHelperText:"Give your datastore a descriptive name",description:"Description",descriptionHelperText:"Brief description of what this datastore contains",public:"Make this datastore public",publicHelperText:"Public datastores can be accessed by anyone with the link",submit:"Save"},whatsAppSettings:{title:"WhatsApp Business",description:"Manage your connected WhatsApp numbers",noNumbersConnected:"No numbers connected yet.",connected:"Connected",test:"Test",delete:"Delete",connectNewAccount:"Connect New Account",backToList:"Back to list",configureTitle:"Configure WhatsApp Business",configureDescription:"Connect your account step by step",steps:{connect:"Connect",configure:"Configure",done:"Done"},wizard:{step1:{title:"Get the token",description:"Enter your Meta token to connect WhatsApp Business.",metaDeveloper:"Meta Developer",graphExplorer:"Graph Explorer",generateToken:"Generate token with WhatsApp Business permissions",permissions:"Make sure to select permissions: whatsapp_business_management, whatsapp_business_messaging",expiration:"Expiration: Never",viewGuide:"View guide",tokenLabel:"Access token",tokenPlaceholder:"EAAG..."},step2:{title:"Select a number",description:"We found the following numbers associated with your account.",available:"Available"},step3:{title:"Done!",description:"Your WhatsApp Business number has been connected successfully."}},actions:{cancel:"Cancel",back:"Back",finish:"Finish",connectWhatsApp:"Connect WhatsApp",next:"Next"}},leadCaptureConfigModal:{titleCreate:"New Lead Capture",titleEdit:"Edit Lead Capture",editing:"Editing",configNameLabel:"Configuration name",configNameRequired:"required",configNamePlaceholder:"E.g.: General contact capture",descriptionLabel:"Description",descriptionPlaceholder:"Description of when to use this configuration...",fieldsLabel:"Fields to capture",fieldsRequired:"required",fields:{name:"Name",email:"Email",phone:"Phone",company:"Company",message:"Message"},optionsLabel:"Capture options",autoCapture:"Auto capture",autoCaptureDescription:"Automatically capture information during conversation",requireName:"Name required",requireNameDescription:"Name is required to complete the capture",requireEmail:"Email required",requireEmailDescription:"Email is required to complete the capture",requirePhone:"Phone required",requirePhoneDescription:"Phone is required to complete the capture",customMessageLabel:"Custom message",customMessagePlaceholder:"Message the agent will show when requesting information...",customMessageHelper:"Optional: Customize the message the user will see when capturing their data",errors:{nameRequired:"Please enter a name for the configuration",fieldsRequired:"Please select at least one field",saveError:"Error saving the Lead Capture configuration"},success:{created:"Lead Capture created",updated:"Lead Capture updated"},actions:{cancel:"Cancel",saving:"Saving...",createConfig:"Create Configuration",saveChanges:"Save Changes"}},formConfigModal:{titleCreate:"New Form",titleEdit:"Edit Form",editing:"Editing",nameLabel:"Name",nameRequired:"required",namePlaceholder:"E.g.: Contact form",descriptionLabel:"Description",descriptionPlaceholder:"Form description (optional)",buttonTextLabel:"Button text",buttonTextPlaceholder:"Submit",fieldsLabel:"Form fields",fieldsRequired:"required",addField:"Add field",fieldNumber:"Field #{number}",fieldLabelLabel:"Label",fieldLabelPlaceholder:"E.g.: Full name",fieldTypeLabel:"Type",fieldTypes:{text:"Text",email:"Email",number:"Number",tel:"Phone",textarea:"Long text",select:"Selection",checkbox:"Checkbox"},placeholderLabel:"Placeholder",placeholderPlaceholder:"Help text (optional)",requiredField:"Required field",noFieldsMessage:'No fields added. Click "Add field" to start.',errors:{nameRequired:"Please enter a name for the form",fieldsRequired:"Add at least one field to the form",fieldLabelRequired:"All fields must have a label",saveError:"Error saving the form"},success:{created:"Form created",updated:"Form updated"},actions:{cancel:"Cancel",saving:"Saving...",createForm:"Create Form",saveChanges:"Save Changes"}},usageLimitModal:{defaultTitle:"Usage Limit Reached",defaultDescription:"Upgrade your plan to unlock higher usage limits and premium features.",cancel:"Cancel",upgradePlan:"Upgrade Plan"},duplicateAgentModal:{title:"Duplicate Agent",description:'Create a copy of "{name}" with all its configuration and tools.',newAgentName:"New Agent Name",placeholder:"Enter name for the duplicated agent",cancel:"Cancel",duplicating:"Duplicating...",duplicate:"Duplicate Agent",errors:{nameRequired:"Agent name is required",failed:"Failed to duplicate agent. Please try again."},success:"Agent duplicated successfully!"},createDatastoreModal:{title:"Create New Source",subtitle:"Configure your knowledge base in 4 simple steps",recommended:"Recommended",steps:{name:"Name",nameDescription:"Source identification",type:"Type",typeDescription:"Storage type",source:"Source",sourceDescription:"Data origin",configure:"Configure",configureDescription:"Final details"},step1:{title:"What do you want to name your source?",description:"Choose a descriptive name to help you easily identify the content",nameLabel:"Source Name",namePlaceholder:"E.g.: Technical Documentation, Knowledge Base, FAQ...",nameHelper:"This name will be visible in your dashboard and reports",suggestionsTitle:"Name suggestions",suggestions:{knowledgeBase:"Knowledge Base",documentation:"Documentation",faqClients:"Customer FAQ",technicalManuals:"Technical Manuals"}},step2:{title:"Select the source type",description:"Each type offers different capabilities for your needs"},step3:{title:"Choose your data source",titleCodeInterpreter:"Select the file type",description:"Configure the content origin for your source",descriptionCodeInterpreter:"You can analyze files with advanced capabilities"},step4:{title:"Configure your data source",titleUpload:"Upload your file",description:"Final details to complete the configuration"},datastoreTypes:{qdrant:{name:"Standard",description:"Ideal for documents, FAQs, and general knowledge",features:{vectorSearch:"Precise search",multipleEmbeddings:"Multiple file formats",advancedConfig:"Advanced settings"}},pinecone:{name:"Cloud",description:"Scalable cloud storage for large datasets",features:{fullyManaged:"Fully managed",autoScaling:"Automatic scaling",simpleConfig:"Simple setup"}},typesense:{name:"Fast Search",description:"Optimized for instant search results",features:{instantSearch:"Instant search",typoTolerance:"Typo tolerance",facetedSearch:"Filtered search"}},codeInterpreter:{name:"Data Analysis",description:"Analyze spreadsheets and complex data",features:{complexAnalysis:"Complex analysis",pythonExecution:"Automatic calculations",dataVisualization:"Charts and visualizations"}}},buttons:{previous:"Previous",cancel:"Cancel",continue:"Continue",createDatastore:"Create Source",creating:"Creating...",createFinish:"Create and Finish",back:"Back"},errors:{creatingDatastore:"Error creating source"}},createSimpleDatastoreModal:{title:"Create Simple Datastore",description:"Create your knowledge base in 2 simple steps",advancedMode:"Advanced mode",descriptions:{website:"Datastore from website: {url}",files:"Datastore with {count} uploaded files"},suggestions:{knowledgeBase:"Knowledge Base",documentation:"Documentation",faqClients:"Customer FAQ",technicalManuals:"Technical Manuals",policiesProcedures:"Policies and Procedures",trainingMaterial:"Training Material"},step1:{title:"What do you want to name your datastore?",subtitle:"Choose a descriptive name to identify your knowledge base",nameLabel:"Datastore Name",namePlaceholder:"E.g.: Technical Documentation, Knowledge Base...",nameHelper:"This name will help you identify your datastore in the dashboard",suggestionsTitle:"Name suggestions"},step2:{datastoreType:"Knowledge Base"},tabs:{files:"Files",website:"Website"},filesTab:{title:"Upload your files",description:"Drag and drop or select the files you want to add"},websiteTab:{title:"Save a website",description:"Enter the URL of the site you want to process and add to your datastore"},progress:{overall:"Overall Progress"},buttons:{back:"Back",cancel:"Cancel",continue:"Continue",saveFiles:"Save files",saveWebsite:"Save website",savingFiles:"Saving files...",processingSite:"Processing site..."},errors:{noFiles:"Please select at least one file",noUrl:"Please enter a valid URL",noFilesProcessed:"Files could not be processed",creationError:"An error occurred while creating the datastore"},toasts:{creating:"Creating datastore...",created:"Datastore created successfully",processingWebsite:"Processing website...",websiteProcessing:"Website is being processed",websiteFullDesc:"The entire site is being processed. You will receive a notification when it's ready.",websitePageDesc:"The page is being processed. You will receive a notification when it's ready.",gettingUploadUrl:"Getting upload URL for {fileName}...",uploading:"Uploading {fileName}...",processing:"Processing {fileName}...",fileSuccess:"{fileName} processed successfully",fileError:"Error processing {fileName}",datastoreCreatedWithFiles:"Datastore created with {processed} of {total} files"}},enterpriseModal:{title:"Enterprise Solutions",subtitle:"Unlock the full potential of AI agents with our enterprise-grade platform",description:"Unlock the full potential of AI agents with our enterprise-grade platform",solutions:{security:{title:"Security & Compliance",description:"SOC2 compliant with enterprise-grade security, SSO, and advanced permissions."},customIntegrations:{title:"Custom Integrations",description:"Tailored integrations with your existing systems and workflows."},dedicatedSupport:{title:"Dedicated Support",description:"24/7 priority support with a dedicated customer success manager."},multiRegion:{title:"Multi-Region Deployment",description:"Deploy agents across multiple regions for optimal performance and compliance."},customSLA:{title:"Custom SLA",description:"Tailored service level agreements to meet your business requirements."},onboarding:{title:"Onboarding & Training",description:"Comprehensive onboarding and training programs for your team."}},cta:{title:"Ready to scale your AI capabilities?",description:"Contact our sales team to discuss custom pricing and implementation.",contactSales:"Contact Sales",learnMore:"Learn More"}},improveAnswerModal:{loading:"Loading...",noDatastore:{title:"This agent has no datastore. Please create a datastore first.",action:"Create Datastore"},info:"This action will add a new Q&A Datasource to your Datastore.",datastoreLabel:"Datastore",selectDatastore:"Select datastore"},mfaEnforcer:{required:"Two-factor authentication is required. Please enable 2FA in Security settings."},settings:{profile:{title:"Profile Settings",description:"Manage your personal information and preferences",saved:"Saved",successMessage:"Profile updated successfully",errorMessage:"Error updating profile",sections:{profilePicture:{title:"Profile Picture",uploadNew:"Upload New",remove:"Remove",helperText:"JPG, PNG or GIF \u2022 Max 2MB"},personalInfo:{title:"Personal Information",fullName:"Full Name",fullNamePlaceholder:"Enter your full name",emailAddress:"Email Address",emailHelperText:"Email address cannot be changed"},preferences:{title:"Preferences",language:"Language",darkMode:"Dark Mode",darkModeDescription:"Use dark theme across the platform"},security:{title:"Security",description:"Manage your account security settings",backToProfile:"\u2190 Back to Profile",accountSecurity:"Account Security",accountSecurityDescription:"Manage 2FA and security options",twoFactor:{title:"Two-Factor Authentication (2FA)",enabledActive:"\u2713 Enabled and active",description:"Add an extra layer of security to your account",manage:"Manage",enable:"Enable 2FA"},mfaRequired:{title:"2FA Required:",description:"Your administrator requires two-factor authentication for your account.",pleaseEnable:"Please enable 2FA to continue using the platform."}}},autoSave:"Changes are saved automatically"},team:{title:"Team Settings",description:"Manage your team members and organization",noOrganization:"You need to be part of an organization to access team settings"},billing:{title:"Billing Settings",description:"Manage your subscription and billing",noOrganization:"You need to be part of an organization to access billing settings",status:{active:"Active",free:"Free"},pricing:{perMonth:"/month"},planIncludes:"Plan includes:",features:{agents:"Agents",datastores:"Datastores",monthlyBudget:"{budget} USD monthly AI credits",storage:"words storage",fileUploads:"file uploads",teamMembers:"Up to {count} team members"},actions:{upgradePlan:"Upgrade Plan",manageBilling:"Manage Billing"},upgrade:{title:"Upgrade Your Plan",description:"Choose a plan that fits your needs"},modals:{cancel:{title:"Cancel Subscription",description:"Are you sure you want to cancel your subscription? Your plan will remain active until the end of your current billing period.",whatHappens:"What happens next:",feature1:"\u2022 Premium features until billing period ends",feature2:"\u2022 Automatic downgrade to Free plan",feature3:"\u2022 Data preserved with Free plan limits",feature4:"\u2022 Reactivate anytime",keepSubscription:"Keep Subscription",canceling:"Canceling...",confirmCancel:"Cancel Subscription"},downgrade:{title:"Downgrade Subscription",description:"Downgrading from {current} to {target}.",changesTitle:"Changes after downgrade:",agents:"Agents:",datastores:"Datastores:",queries:"Monthly queries:",price:"Price:",important:"Important:",importantText:"Changes take effect immediately. Features may be restricted if you exceed new limits.",keepCurrent:"Keep Current Plan",processing:"Processing...",confirmDowngrade:"Downgrade to {plan}"}}},apiKeys:{title:"API Keys",description:"Authenticate your API requests with secure keys",noOrganization:"You need to be part of an organization to access API keys",infoAlert:"Keep your keys secure and never share them publicly.",readDocs:"Read docs",yourKeys:"Your Keys",newKey:"New Key",emptyState:{title:"No API keys yet",description:"Create your first key to get started"},actions:{copy:"Copy to clipboard",delete:"Delete key"},toast:{created:"API key created successfully",createError:"Failed to create API key",mustHaveOne:"You must have at least one API key",confirmDelete:"Are you sure you want to delete this API key?",deleted:"API key deleted successfully",deleteError:"Failed to delete API key",copied:"API key copied to clipboard"},usage:{title:"How to use",headerDescription:"Include your API key in the request header:",headerExample:"Authorization: Bearer YOUR_API_KEY",exampleRequest:"Example request:"}},notifications:{title:"Notifications",description:"Configure notification preferences and recipients",noOrganization:"You need to be part of an organization to access notification settings",recipients:{title:"Who gets notified?",description:"Select team members and add external emails to receive notifications",teamMembers:"Team Members",selected:"{selected} of {total} selected",externalRecipients:"External Recipients",emailPlaceholder:"Enter email address",add:"Add",unknown:"Unknown"},sound:{title:"Sound Notifications",streamCompletion:"Stream completion",streamCompletionDescription:"Play sound when AI response completes",newMessage:"New message alert",newMessageDescription:"Notification sound for new messages",errorAlerts:"Error alerts",errorAlertsDescription:"Sound notification for errors"},email:{title:"Email Notifications",weeklyReports:"Weekly reports",weeklyReportsDescription:"Summary of your weekly activity",agentUpdates:"Agent updates",agentUpdatesDescription:"Notifications about your agents",securityAlerts:"Security alerts",securityAlertsDescription:"Important security notifications"},inApp:{title:"In-App Notifications",conversationUpdates:"Conversation updates",conversationUpdatesDescription:"Activity in your conversations",teamActivity:"Team activity",teamActivityDescription:"Updates from your team members",systemUpdates:"System updates",systemUpdatesDescription:"Platform updates and announcements"},toast:{saved:"Settings saved",saveError:"Failed to save settings",invalidEmail:"Please enter a valid email address",emailExists:"Email already added"}}},widgets:{bubble:{tabs:{basic:"Basic",suggestions:"Suggestions",style:"Style",code:"Install"},sections:{displayNameDescription:"This title will appear in the chat header",initialMessageDescription:"Initial message that your users will see",helpLinksDescription:"Add useful links that will appear below the initial message",additionalOptions:"Additional Options",suggestionsDescription:"Add suggestions that your users can quickly select",primaryColorDescription:"Define the primary color of your widget",customCSSDescription:"Add custom CSS styles (advanced)",installTitle:"Installation Code",installDescription:"Copy and paste this code snippet into your website, just before the closing </body> tag.",installHint:"Click the code block to copy it to your clipboard."},preview:{initializing:"Initializing..."},toast:{configSaved:"Configuration saved successfully",configError:"Error saving configuration",codeCopied:"Code copied to clipboard!"}},iframe:{tabs:{basic:"Basic",style:"Style",code:"Code"},sections:{displayNameDescription:"This title will appear in the chat header",initialMessageDescription:"Initial message that your users will see",additionalOptions:"Additional Options",primaryColorDescription:"Define the primary color of your widget",customCSSDescription:"Add custom CSS styles (advanced)",codeDescription:"Copy this code into your HTML page"},preview:{initializing:"Initializing..."},toast:{configSaved:"Configuration saved successfully",configError:"Error saving configuration",codeCopied:"Code copied!"}},standalone:{sections:{standalonePage:"Standalone Page",welcomeBanner:"Welcome Banner",agentAvatar:"Agent Avatar",messageAndBranding:"Message and Branding",organizationLogo:"Organization Logo",socialNetworks:"Social Networks"},preview:{liveLabel:"Live",refreshPreview:"Refresh preview"},agentAvatar:{title:"Agent Avatar",readOnly:"This is the agent's main avatar (not editable from here)",changeInBuilder:"To change the agent's avatar, use the Builder or generate one with AI"},organizationLogo:{noLogo:"No organization logo configured",configureInSettings:"To configure the organization logo, go to organization settings",displayedAt:"Displayed in the top left corner of the banner",changeInSettings:"To change the logo, go to organization settings"},bannerStyles:{gradients:{sunset:{name:"Sunset",description:"Orange to pink gradient"},ocean:{name:"Ocean",description:"Navy blue gradient"},forest:{name:"Forest",description:"Natural green gradient"},purple:{name:"Purple Dream",description:"Vibrant purple gradient"}},solids:{blue:{name:"Blue",description:"Professional blue"},green:{name:"Green",description:"Corporate green"},purple:{name:"Purple",description:"Modern purple"},red:{name:"Red",description:"Intense red"}},solid3d:{blue:{name:"Blue 3D",description:"Blue with depth"},orange:{name:"Orange 3D",description:"Orange with shadows"},teal:{name:"Teal 3D",description:"Teal 3D"},pink:{name:"Pink 3D",description:"Pink with relief"}},animated:{aurora:{name:"Aurora",description:"Soft aurora waves"},fire:{name:"Fire",description:"Energetic flames"},neon:{name:"Neon",description:"Vibrant neon"},ocean:{name:"Ocean Waves",description:"Calm waves"}}},toast:{configSaved:"Configuration saved successfully",configError:"Error saving configuration"}},fields:{initialMessage:{label:"Initial message",placeholder:"Hello! How can I help you?",helper:"A friendly welcome message for your users (max 300 characters)"},helpLinks:{label:"Help links",addButton:"Add link",empty:"No help links configured. Add links for users to access additional resources.",linkNumber:"Link {{number}}",labelField:"Link text",labelPlaceholder:"E.g. Documentation",urlField:"URL",urlPlaceholder:"https://example.com",helper:"Add up to 4 useful links that will appear in the welcome screen"},messageTemplates:{addPlaceholder:"Add a suggestion...",helper:"Maximum 3 suggestions. Press Enter to add.",defaultTemplates:{template1:"What is horneross.com?",template2:"Plan pricing"}},displayName:{label:"Chat title",placeholder:"E.g. horneross Support"},bannerTitle:{label:"Banner title",placeholder:"Welcome to our assistant!"},bannerSubtitle:{label:"Subtitle",placeholder:"I'm here to help you 24/7"},organizationName:{label:"Organization Name",placeholder:"Your company name (appears next to the logo)",helper:"This name will appear next to the logo in the banner. Leave it empty to not display any name."},handle:{label:"Bot Handle",placeholder:"my_awesome_bot",errorRequired:"Handle is required",errorTaken:"Handle already taken",errorValidating:"Error validating handle",copied:"Copied!",viewPage:"View page"},primaryColor:{label:"Primary color"},customCSS:{label:"Custom CSS",placeholder:`/* Your custom CSS */
|
|
82
|
+
`))}function l(m,h,b,w){let v=b.enter("tableCell"),x=b.enter("phrasing"),k=b.containerPhrasing(m,{...w,before:o,after:o});return x(),v(),k}function u(m,h){return vq(m,{align:h,alignDelimiters:a,padding:r,stringLength:n})}function d(m,h,b){let w=m.children,v=-1,x=[],k=h.enter("table");for(;++v<w.length;)x[v]=f(w[v],h,b);return k(),x}function f(m,h,b){let w=m.children,v=-1,x=[],k=h.enter("tableRow");for(;++v<w.length;)x[v]=l(w[v],m,h,b);return k(),x}function p(m,h,b){let w=hb.inlineCode(m,h,b);return b.stack.includes("tableCell")&&(w=w.replace(/\|/g,"\\$&")),w}}c();c();function C4(){return{exit:{taskListCheckValueChecked:Hq,taskListCheckValueUnchecked:Hq,paragraph:sye}}}function E4(){return{unsafe:[{atBreak:!0,character:"-",after:"[:|-]"}],handlers:{listItem:lye}}}function Hq(e){let t=this.stack[this.stack.length-2];t.type,t.checked=e.type==="taskListCheckValueChecked"}function sye(e){let t=this.stack[this.stack.length-2];if(t&&t.type==="listItem"&&typeof t.checked=="boolean"){let r=this.stack[this.stack.length-1];r.type;let a=r.children[0];if(a&&a.type==="text"){let n=t.children,o=-1,i;for(;++o<n.length;){let s=n[o];if(s.type==="paragraph"){i=s;break}}i===r&&(a.value=a.value.slice(1),a.value.length===0?r.children.shift():r.position&&a.position&&typeof a.position.start.offset=="number"&&(a.position.start.column++,a.position.start.offset++,r.position.start=Object.assign({},a.position.start)))}}this.exit(e)}function lye(e,t,r,a){let n=e.children[0],o=typeof e.checked=="boolean"&&n&&n.type==="paragraph",i="["+(e.checked?"x":" ")+"] ",s=r.createTracker(a);o&&s.move(i);let l=hb.listItem(e,t,r,{...a,...s.current()});return o&&(l=l.replace(/^(?:[*+-]|\d+\.)([\r\n]| {1,3})/,u)),l;function u(d){return d+i}}function _4(){return[o4(),s4(),u4(),S4(),C4()]}function A4(e){return{extensions:[i4(),l4(e),c4(),T4(e),E4()]}}c();c();c();var uye={tokenize:mye,partial:!0},qq={tokenize:gye,partial:!0},Vq={tokenize:hye,partial:!0},Gq={tokenize:bye,partial:!0},cye={tokenize:yye,partial:!0},Wq={name:"wwwAutolink",tokenize:fye,previous:Yq},Zq={name:"protocolAutolink",tokenize:pye,previous:Kq},Xs={name:"emailAutolink",tokenize:dye,previous:Xq},as={};function L4(){return{text:as}}var Id=48;for(;Id<123;)as[Id]=Xs,Id++,Id===58?Id=65:Id===91&&(Id=97);as[43]=Xs;as[45]=Xs;as[46]=Xs;as[95]=Xs;as[72]=[Xs,Zq];as[104]=[Xs,Zq];as[87]=[Xs,Wq];as[119]=[Xs,Wq];function dye(e,t,r){let a=this,n,o;return i;function i(f){return!I4(f)||!Xq.call(a,a.previous)||N4(a.events)?r(f):(e.enter("literalAutolink"),e.enter("literalAutolinkEmail"),s(f))}function s(f){return I4(f)?(e.consume(f),s):f===64?(e.consume(f),l):r(f)}function l(f){return f===46?e.check(cye,d,u)(f):f===45||f===95||$r(f)?(o=!0,e.consume(f),l):d(f)}function u(f){return e.consume(f),n=!0,l}function d(f){return o&&n&&ha(a.previous)?(e.exit("literalAutolinkEmail"),e.exit("literalAutolink"),t(f)):r(f)}}function fye(e,t,r){let a=this;return n;function n(i){return i!==87&&i!==119||!Yq.call(a,a.previous)||N4(a.events)?r(i):(e.enter("literalAutolink"),e.enter("literalAutolinkWww"),e.check(uye,e.attempt(qq,e.attempt(Vq,o),r),r)(i))}function o(i){return e.exit("literalAutolinkWww"),e.exit("literalAutolink"),t(i)}}function pye(e,t,r){let a=this,n="",o=!1;return i;function i(f){return(f===72||f===104)&&Kq.call(a,a.previous)&&!N4(a.events)?(e.enter("literalAutolink"),e.enter("literalAutolinkHttp"),n+=String.fromCodePoint(f),e.consume(f),s):r(f)}function s(f){if(ha(f)&&n.length<5)return n+=String.fromCodePoint(f),e.consume(f),s;if(f===58){let p=n.toLowerCase();if(p==="http"||p==="https")return e.consume(f),l}return r(f)}function l(f){return f===47?(e.consume(f),o?u:(o=!0,l)):r(f)}function u(f){return f===null||yd(f)||At(f)||Ji(f)||vd(f)?r(f):e.attempt(qq,e.attempt(Vq,d),r)(f)}function d(f){return e.exit("literalAutolinkHttp"),e.exit("literalAutolink"),t(f)}}function mye(e,t,r){let a=0;return n;function n(i){return(i===87||i===119)&&a<3?(a++,e.consume(i),n):i===46&&a===3?(e.consume(i),o):r(i)}function o(i){return i===null?r(i):t(i)}}function gye(e,t,r){let a,n,o;return i;function i(u){return u===46||u===95?e.check(Gq,l,s)(u):u===null||At(u)||Ji(u)||u!==45&&vd(u)?l(u):(o=!0,e.consume(u),i)}function s(u){return u===95?a=!0:(n=a,a=void 0),e.consume(u),i}function l(u){return n||a||!o?r(u):t(u)}}function hye(e,t){let r=0,a=0;return n;function n(i){return i===40?(r++,e.consume(i),n):i===41&&a<r?o(i):i===33||i===34||i===38||i===39||i===41||i===42||i===44||i===46||i===58||i===59||i===60||i===63||i===93||i===95||i===126?e.check(Gq,t,o)(i):i===null||At(i)||Ji(i)?t(i):(e.consume(i),n)}function o(i){return i===41&&a++,e.consume(i),n}}function bye(e,t,r){return a;function a(s){return s===33||s===34||s===39||s===41||s===42||s===44||s===46||s===58||s===59||s===63||s===95||s===126?(e.consume(s),a):s===38?(e.consume(s),o):s===93?(e.consume(s),n):s===60||s===null||At(s)||Ji(s)?t(s):r(s)}function n(s){return s===null||s===40||s===91||At(s)||Ji(s)?t(s):a(s)}function o(s){return ha(s)?i(s):r(s)}function i(s){return s===59?(e.consume(s),a):ha(s)?(e.consume(s),i):r(s)}}function yye(e,t,r){return a;function a(o){return e.consume(o),n}function n(o){return $r(o)?r(o):t(o)}}function Yq(e){return e===null||e===40||e===42||e===95||e===91||e===93||e===126||At(e)}function Kq(e){return!ha(e)}function Xq(e){return!(e===47||I4(e))}function I4(e){return e===43||e===45||e===46||e===95||$r(e)}function N4(e){let t=e.length,r=!1;for(;t--;){let a=e[t][1];if((a.type==="labelLink"||a.type==="labelImage")&&!a._balanced){r=!0;break}if(a._gfmAutolinkLiteralWalkedInto){r=!1;break}}return e.length>0&&!r&&(e[e.length-1][1]._gfmAutolinkLiteralWalkedInto=!0),r}c();c();var vye={tokenize:Eye,partial:!0};function R4(){return{document:{91:{name:"gfmFootnoteDefinition",tokenize:Sye,continuation:{tokenize:Tye},exit:Cye}},text:{91:{name:"gfmFootnoteCall",tokenize:kye},93:{name:"gfmPotentialFootnoteCall",add:"after",tokenize:xye,resolveTo:wye}}}}function xye(e,t,r){let a=this,n=a.events.length,o=a.parser.gfmFootnotes||(a.parser.gfmFootnotes=[]),i;for(;n--;){let l=a.events[n][1];if(l.type==="labelImage"){i=l;break}if(l.type==="gfmFootnoteCall"||l.type==="labelLink"||l.type==="label"||l.type==="image"||l.type==="link")break}return s;function s(l){if(!i||!i._balanced)return r(l);let u=Ya(a.sliceSerialize({start:i.end,end:a.now()}));return u.codePointAt(0)!==94||!o.includes(u.slice(1))?r(l):(e.enter("gfmFootnoteCallLabelMarker"),e.consume(l),e.exit("gfmFootnoteCallLabelMarker"),t(l))}}function wye(e,t){let r=e.length,a;for(;r--;)if(e[r][1].type==="labelImage"&&e[r][0]==="enter"){a=e[r][1];break}e[r+1][1].type="data",e[r+3][1].type="gfmFootnoteCallLabelMarker";let n={type:"gfmFootnoteCall",start:Object.assign({},e[r+3][1].start),end:Object.assign({},e[e.length-1][1].end)},o={type:"gfmFootnoteCallMarker",start:Object.assign({},e[r+3][1].end),end:Object.assign({},e[r+3][1].end)};o.end.column++,o.end.offset++,o.end._bufferIndex++;let i={type:"gfmFootnoteCallString",start:Object.assign({},o.end),end:Object.assign({},e[e.length-1][1].start)},s={type:"chunkString",contentType:"string",start:Object.assign({},i.start),end:Object.assign({},i.end)},l=[e[r+1],e[r+2],["enter",n,t],e[r+3],e[r+4],["enter",o,t],["exit",o,t],["enter",i,t],["enter",s,t],["exit",s,t],["exit",i,t],e[e.length-2],e[e.length-1],["exit",n,t]];return e.splice(r,e.length-r+1,...l),e}function kye(e,t,r){let a=this,n=a.parser.gfmFootnotes||(a.parser.gfmFootnotes=[]),o=0,i;return s;function s(f){return e.enter("gfmFootnoteCall"),e.enter("gfmFootnoteCallLabelMarker"),e.consume(f),e.exit("gfmFootnoteCallLabelMarker"),l}function l(f){return f!==94?r(f):(e.enter("gfmFootnoteCallMarker"),e.consume(f),e.exit("gfmFootnoteCallMarker"),e.enter("gfmFootnoteCallString"),e.enter("chunkString").contentType="string",u)}function u(f){if(o>999||f===93&&!i||f===null||f===91||At(f))return r(f);if(f===93){e.exit("chunkString");let p=e.exit("gfmFootnoteCallString");return n.includes(Ya(a.sliceSerialize(p)))?(e.enter("gfmFootnoteCallLabelMarker"),e.consume(f),e.exit("gfmFootnoteCallLabelMarker"),e.exit("gfmFootnoteCall"),t):r(f)}return At(f)||(i=!0),o++,e.consume(f),f===92?d:u}function d(f){return f===91||f===92||f===93?(e.consume(f),o++,u):u(f)}}function Sye(e,t,r){let a=this,n=a.parser.gfmFootnotes||(a.parser.gfmFootnotes=[]),o,i=0,s;return l;function l(h){return e.enter("gfmFootnoteDefinition")._container=!0,e.enter("gfmFootnoteDefinitionLabel"),e.enter("gfmFootnoteDefinitionLabelMarker"),e.consume(h),e.exit("gfmFootnoteDefinitionLabelMarker"),u}function u(h){return h===94?(e.enter("gfmFootnoteDefinitionMarker"),e.consume(h),e.exit("gfmFootnoteDefinitionMarker"),e.enter("gfmFootnoteDefinitionLabelString"),e.enter("chunkString").contentType="string",d):r(h)}function d(h){if(i>999||h===93&&!s||h===null||h===91||At(h))return r(h);if(h===93){e.exit("chunkString");let b=e.exit("gfmFootnoteDefinitionLabelString");return o=Ya(a.sliceSerialize(b)),e.enter("gfmFootnoteDefinitionLabelMarker"),e.consume(h),e.exit("gfmFootnoteDefinitionLabelMarker"),e.exit("gfmFootnoteDefinitionLabel"),p}return At(h)||(s=!0),i++,e.consume(h),h===92?f:d}function f(h){return h===91||h===92||h===93?(e.consume(h),i++,d):d(h)}function p(h){return h===58?(e.enter("definitionMarker"),e.consume(h),e.exit("definitionMarker"),n.includes(o)||n.push(o),Xe(e,m,"gfmFootnoteDefinitionWhitespace")):r(h)}function m(h){return t(h)}}function Tye(e,t,r){return e.check(Qi,t,e.attempt(vye,t,r))}function Cye(e){e.exit("gfmFootnoteDefinition")}function Eye(e,t,r){let a=this;return Xe(e,n,"gfmFootnoteDefinitionIndent",5);function n(o){let i=a.events[a.events.length-1];return i&&i[1].type==="gfmFootnoteDefinitionIndent"&&i[2].sliceSerialize(i[1],!0).length===4?t(o):r(o)}}c();c();function D4(e){let r=(e||{}).singleTilde,a={name:"strikethrough",tokenize:o,resolveAll:n};return r==null&&(r=!0),{text:{126:a},insideSpan:{null:[a]},attentionMarkers:{null:[126]}};function n(i,s){let l=-1;for(;++l<i.length;)if(i[l][0]==="enter"&&i[l][1].type==="strikethroughSequenceTemporary"&&i[l][1]._close){let u=l;for(;u--;)if(i[u][0]==="exit"&&i[u][1].type==="strikethroughSequenceTemporary"&&i[u][1]._open&&i[l][1].end.offset-i[l][1].start.offset===i[u][1].end.offset-i[u][1].start.offset){i[l][1].type="strikethroughSequence",i[u][1].type="strikethroughSequence";let d={type:"strikethrough",start:Object.assign({},i[u][1].start),end:Object.assign({},i[l][1].end)},f={type:"strikethroughText",start:Object.assign({},i[u][1].end),end:Object.assign({},i[l][1].start)},p=[["enter",d,s],["enter",i[u][1],s],["exit",i[u][1],s],["enter",f,s]],m=s.parser.constructs.insideSpan.null;m&&Kr(p,p.length,0,Au(m,i.slice(u+1,l),s)),Kr(p,p.length,0,[["exit",f,s],["enter",i[l][1],s],["exit",i[l][1],s],["exit",d,s]]),Kr(i,u-1,l-u+3,p),l=u+p.length-2;break}}for(l=-1;++l<i.length;)i[l][1].type==="strikethroughSequenceTemporary"&&(i[l][1].type="data");return i}function o(i,s,l){let u=this.previous,d=this.events,f=0;return p;function p(h){return u===126&&d[d.length-1][1].type!=="characterEscape"?l(h):(i.enter("strikethroughSequenceTemporary"),m(h))}function m(h){let b=Ws(u);if(h===126)return f>1?l(h):(i.consume(h),f++,m);if(f<2&&!r)return l(h);let w=i.exit("strikethroughSequenceTemporary"),v=Ws(h);return w._open=!v||v===2&&!!b,w._close=!b||b===2&&!!v,s(h)}}}c();c();c();var oS=class{constructor(){this.map=[]}add(t,r,a){_ye(this,t,r,a)}consume(t){if(this.map.sort(function(o,i){return o[0]-i[0]}),this.map.length===0)return;let r=this.map.length,a=[];for(;r>0;)r-=1,a.push(t.slice(this.map[r][0]+this.map[r][1]),this.map[r][2]),t.length=this.map[r][0];a.push(t.slice()),t.length=0;let n=a.pop();for(;n;){for(let o of n)t.push(o);n=a.pop()}this.map.length=0}};function _ye(e,t,r,a){let n=0;if(!(r===0&&a.length===0)){for(;n<e.map.length;){if(e.map[n][0]===t){e.map[n][1]+=r,e.map[n][2].push(...a);return}n+=1}e.map.push([t,r,a])}}c();function Jq(e,t){let r=!1,a=[];for(;t<e.length;){let n=e[t];if(r){if(n[0]==="enter")n[1].type==="tableContent"&&a.push(e[t+1][1].type==="tableDelimiterMarker"?"left":"none");else if(n[1].type==="tableContent"){if(e[t-1][1].type==="tableDelimiterMarker"){let o=a.length-1;a[o]=a[o]==="left"?"center":"right"}}else if(n[1].type==="tableDelimiterRow")break}else n[0]==="enter"&&n[1].type==="tableDelimiterRow"&&(r=!0);t+=1}return a}function P4(){return{flow:{null:{name:"table",tokenize:Aye,resolveAll:Iye}}}}function Aye(e,t,r){let a=this,n=0,o=0,i;return s;function s(D){let ie=a.events.length-1;for(;ie>-1;){let N=a.events[ie][1].type;if(N==="lineEnding"||N==="linePrefix")ie--;else break}let $=ie>-1?a.events[ie][1].type:null,U=$==="tableHead"||$==="tableRow"?C:l;return U===C&&a.parser.lazy[a.now().line]?r(D):U(D)}function l(D){return e.enter("tableHead"),e.enter("tableRow"),u(D)}function u(D){return D===124||(i=!0,o+=1),d(D)}function d(D){return D===null?r(D):Pe(D)?o>1?(o=0,a.interrupt=!0,e.exit("tableRow"),e.enter("lineEnding"),e.consume(D),e.exit("lineEnding"),m):r(D):et(D)?Xe(e,d,"whitespace")(D):(o+=1,i&&(i=!1,n+=1),D===124?(e.enter("tableCellDivider"),e.consume(D),e.exit("tableCellDivider"),i=!0,d):(e.enter("data"),f(D)))}function f(D){return D===null||D===124||At(D)?(e.exit("data"),d(D)):(e.consume(D),D===92?p:f)}function p(D){return D===92||D===124?(e.consume(D),f):f(D)}function m(D){return a.interrupt=!1,a.parser.lazy[a.now().line]?r(D):(e.enter("tableDelimiterRow"),i=!1,et(D)?Xe(e,h,"linePrefix",a.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(D):h(D))}function h(D){return D===45||D===58?w(D):D===124?(i=!0,e.enter("tableCellDivider"),e.consume(D),e.exit("tableCellDivider"),b):T(D)}function b(D){return et(D)?Xe(e,w,"whitespace")(D):w(D)}function w(D){return D===58?(o+=1,i=!0,e.enter("tableDelimiterMarker"),e.consume(D),e.exit("tableDelimiterMarker"),v):D===45?(o+=1,v(D)):D===null||Pe(D)?S(D):T(D)}function v(D){return D===45?(e.enter("tableDelimiterFiller"),x(D)):T(D)}function x(D){return D===45?(e.consume(D),x):D===58?(i=!0,e.exit("tableDelimiterFiller"),e.enter("tableDelimiterMarker"),e.consume(D),e.exit("tableDelimiterMarker"),k):(e.exit("tableDelimiterFiller"),k(D))}function k(D){return et(D)?Xe(e,S,"whitespace")(D):S(D)}function S(D){return D===124?h(D):D===null||Pe(D)?!i||n!==o?T(D):(e.exit("tableDelimiterRow"),e.exit("tableHead"),t(D)):T(D)}function T(D){return r(D)}function C(D){return e.enter("tableRow"),_(D)}function _(D){return D===124?(e.enter("tableCellDivider"),e.consume(D),e.exit("tableCellDivider"),_):D===null||Pe(D)?(e.exit("tableRow"),t(D)):et(D)?Xe(e,_,"whitespace")(D):(e.enter("data"),R(D))}function R(D){return D===null||D===124||At(D)?(e.exit("data"),_(D)):(e.consume(D),D===92?F:R)}function F(D){return D===92||D===124?(e.consume(D),R):R(D)}}function Iye(e,t){let r=-1,a=!0,n=0,o=[0,0,0,0],i=[0,0,0,0],s=!1,l=0,u,d,f,p=new oS;for(;++r<e.length;){let m=e[r],h=m[1];m[0]==="enter"?h.type==="tableHead"?(s=!1,l!==0&&(Qq(p,t,l,u,d),d=void 0,l=0),u={type:"table",start:Object.assign({},h.start),end:Object.assign({},h.end)},p.add(r,0,[["enter",u,t]])):h.type==="tableRow"||h.type==="tableDelimiterRow"?(a=!0,f=void 0,o=[0,0,0,0],i=[0,r+1,0,0],s&&(s=!1,d={type:"tableBody",start:Object.assign({},h.start),end:Object.assign({},h.end)},p.add(r,0,[["enter",d,t]])),n=h.type==="tableDelimiterRow"?2:d?3:1):n&&(h.type==="data"||h.type==="tableDelimiterMarker"||h.type==="tableDelimiterFiller")?(a=!1,i[2]===0&&(o[1]!==0&&(i[0]=i[1],f=iS(p,t,o,n,void 0,f),o=[0,0,0,0]),i[2]=r)):h.type==="tableCellDivider"&&(a?a=!1:(o[1]!==0&&(i[0]=i[1],f=iS(p,t,o,n,void 0,f)),o=i,i=[o[1],r,0,0])):h.type==="tableHead"?(s=!0,l=r):h.type==="tableRow"||h.type==="tableDelimiterRow"?(l=r,o[1]!==0?(i[0]=i[1],f=iS(p,t,o,n,r,f)):i[1]!==0&&(f=iS(p,t,i,n,r,f)),n=0):n&&(h.type==="data"||h.type==="tableDelimiterMarker"||h.type==="tableDelimiterFiller")&&(i[3]=r)}for(l!==0&&Qq(p,t,l,u,d),p.consume(t.events),r=-1;++r<t.events.length;){let m=t.events[r];m[0]==="enter"&&m[1].type==="table"&&(m[1]._align=Jq(t.events,r))}return e}function iS(e,t,r,a,n,o){let i=a===1?"tableHeader":a===2?"tableDelimiter":"tableData",s="tableContent";r[0]!==0&&(o.end=Object.assign({},dm(t.events,r[0])),e.add(r[0],0,[["exit",o,t]]));let l=dm(t.events,r[1]);if(o={type:i,start:Object.assign({},l),end:Object.assign({},l)},e.add(r[1],0,[["enter",o,t]]),r[2]!==0){let u=dm(t.events,r[2]),d=dm(t.events,r[3]),f={type:s,start:Object.assign({},u),end:Object.assign({},d)};if(e.add(r[2],0,[["enter",f,t]]),a!==2){let p=t.events[r[2]],m=t.events[r[3]];if(p[1].end=Object.assign({},m[1].end),p[1].type="chunkText",p[1].contentType="text",r[3]>r[2]+1){let h=r[2]+1,b=r[3]-r[2]-1;e.add(h,b,[])}}e.add(r[3]+1,0,[["exit",f,t]])}return n!==void 0&&(o.end=Object.assign({},dm(t.events,n)),e.add(n,0,[["exit",o,t]]),o=void 0),o}function Qq(e,t,r,a,n){let o=[],i=dm(t.events,r);n&&(n.end=Object.assign({},i),o.push(["exit",n,t])),a.end=Object.assign({},i),o.push(["exit",a,t]),e.add(r+1,0,o)}function dm(e,t){let r=e[t],a=r[0]==="enter"?"start":"end";return r[1][a]}c();c();var Lye={name:"tasklistCheck",tokenize:Nye};function O4(){return{text:{91:Lye}}}function Nye(e,t,r){let a=this;return n;function n(l){return a.previous!==null||!a._gfmTasklistFirstContentOfListItem?r(l):(e.enter("taskListCheck"),e.enter("taskListCheckMarker"),e.consume(l),e.exit("taskListCheckMarker"),o)}function o(l){return At(l)?(e.enter("taskListCheckValueUnchecked"),e.consume(l),e.exit("taskListCheckValueUnchecked"),i):l===88||l===120?(e.enter("taskListCheckValueChecked"),e.consume(l),e.exit("taskListCheckValueChecked"),i):r(l)}function i(l){return l===93?(e.enter("taskListCheckMarker"),e.consume(l),e.exit("taskListCheckMarker"),e.exit("taskListCheck"),s):r(l)}function s(l){return Pe(l)?t(l):et(l)?e.check({tokenize:Rye},t,r)(l):r(l)}}function Rye(e,t,r){return Xe(e,a,"whitespace");function a(n){return n===null?r(n):t(n)}}function eV(e){return uk([L4(),R4(),D4(e),P4(),O4()])}var Dye={};function sS(e){let t=this,r=e||Dye,a=t.data(),n=a.micromarkExtensions||(a.micromarkExtensions=[]),o=a.fromMarkdownExtensions||(a.fromMarkdownExtensions=[]),i=a.toMarkdownExtensions||(a.toMarkdownExtensions=[]);n.push(eV(r)),o.push(_4()),i.push(A4(r))}var Vt=L(ee()),Pye=({code:e})=>{let[t,r]=(0,Js.useState)(!1),a=async()=>{try{await navigator.clipboard.writeText(e),r(!0),setTimeout(()=>r(!1),2e3)}catch(n){console.error("Failed to copy code:",n)}};return(0,Vt.jsx)(oe.button,{onClick:a,className:"p-1.5 rounded-lg transition-colors hover:bg-gray-200 dark:hover:bg-white/10",whileTap:{scale:.95},children:(0,Vt.jsx)(wt,{mode:"wait",children:t?(0,Vt.jsx)(oe.div,{initial:{scale:0,opacity:0},animate:{scale:1,opacity:1},exit:{scale:0,opacity:0},transition:{duration:.15},children:(0,Vt.jsx)(Qn,{className:"w-4 h-4 text-green-500 dark:text-green-400"})},"check"):(0,Vt.jsx)(oe.div,{initial:{scale:0,opacity:0},animate:{scale:1,opacity:1},exit:{scale:0,opacity:0},transition:{duration:.15},children:(0,Vt.jsx)(Nc,{className:"w-4 h-4 text-gray-600 dark:text-gray-400 hover:text-gray-900 dark:hover:text-white"})},"copy")})})};function Oye({children:e,className:t,components:r,chunkSize:a=3e3,enableChunking:n=!0,variant:o="default",animated:i,onAnimateComplete:s}){let[l,u]=(0,Js.useState)(1),d=(0,Js.useMemo)(()=>{if(!n)return[e||""];let w=e||"",v=[],x=0;for(;x<w.length;)v.push(w.slice(x,x+a)),x+=a;return v},[e,a,n]),f=d.slice(0,l).join(""),p=l<d.length,m=()=>{p&&u(w=>w+1)},h=(0,Js.useMemo)(()=>({code({className:w,children:v,...x}){let k=/language-(\w+)/.exec(w||""),S=k?k[1]:"",T=String(v).replace(/\n$/,"");return w?(0,Vt.jsxs)("div",{className:"my-4 rounded-xl overflow-hidden border bg-gray-50 border-[#FF8800]/20 dark:bg-[#1e1e1e] dark:border-white/10",children:[(0,Vt.jsxs)("div",{className:"flex items-center justify-between px-4 py-2 border-b bg-gray-200 border-[#FF8800]/10 dark:bg-black/20 dark:border-white/5",children:[(0,Vt.jsx)("span",{className:"text-xs font-medium uppercase tracking-wide text-gray-600 dark:text-gray-400",children:S||"code"}),(0,Vt.jsx)(Pye,{code:T})]}),(0,Vt.jsx)("div",{className:"overflow-x-auto",children:(0,Vt.jsx)("pre",{className:"p-4 m-0",children:(0,Vt.jsx)("code",{className:"text-sm font-mono block text-gray-900 dark:text-gray-100",children:T})})})]}):(0,Vt.jsx)("code",{className:"py-0.5 px-1.5 rounded font-mono text-xs bg-gray-100 text-gray-700 dark:bg-purple-500/20 dark:text-purple-200",...x,children:v})},pre:({children:w})=>(0,Vt.jsx)("div",{className:"w-full",children:w}),img:({src:w,alt:v})=>(0,Vt.jsx)(oe.img,{src:w,alt:v||"",className:"rounded-lg max-w-md max-h-96 w-auto h-auto object-contain my-4",initial:{opacity:0,scale:.95},animate:{opacity:1,scale:1},transition:{duration:.3},loading:"lazy"}),a:({href:w,children:v})=>(0,Vt.jsx)("a",{href:w,target:"_blank",rel:"noopener noreferrer",className:"transition-colors text-[#FF8800] hover:text-[#E67A00] dark:text-[#FFB347] dark:hover:text-[#FFC870]",children:v}),table:({children:w})=>(0,Vt.jsx)("div",{className:"my-4 overflow-x-auto rounded-lg border border-[#FF8800]/20 dark:border-white/10",children:(0,Vt.jsx)("table",{className:"min-w-full divide-y divide-[#FF8800]/20 dark:divide-white/10",children:w})}),th:({children:w})=>(0,Vt.jsx)("th",{className:"px-4 py-2 text-left text-xs font-semibold uppercase tracking-wider bg-gray-100 text-black dark:bg-white/5 dark:text-white",children:w}),td:({children:w})=>(0,Vt.jsx)("td",{className:"px-4 py-2 text-sm border-t text-gray-700 border-[#FF8800]/10 dark:text-white/90 dark:border-white/5",children:w}),blockquote:({children:w})=>(0,Vt.jsx)("blockquote",{className:"border-l-4 pl-4 py-2 my-4 italic border-[#FF8800] bg-gray-100 text-gray-700 dark:border-[#FFB347] dark:bg-white/5 dark:text-white/90",children:w}),hr:()=>(0,Vt.jsx)("hr",{className:"my-6 border-t border-[#FF8800]/20 dark:border-white/10"})}),[]),b=(0,Js.useMemo)(()=>({...h,...r}),[h,r]);return e?(0,Vt.jsxs)("div",{className:"w-full px-1",children:[(0,Vt.jsx)(kR,{className:iz("prose prose-sm","text-sm break-words prose-p:leading-relaxed prose-pre:p-0","prose-code:before:hidden prose-code:after:hidden","prose-hr:my-2","max-w-full","text-black dark:text-white","prose-p:text-black dark:prose-p:text-white","prose-li:text-black dark:prose-li:text-white","prose-strong:text-black dark:prose-strong:text-white","prose-em:text-black dark:prose-em:text-white","prose-strong:font-bold","prose-headings:text-black dark:prose-headings:text-white","prose-a:no-underline hover:prose-a:underline","prose-p:my-1 prose-p:leading-normal","prose-ul:mt-0 prose-ul:mb-2 prose-ul:list-disc prose-ul:pl-5","prose-ol:mt-0 prose-ol:mb-2 prose-ol:list-decimal prose-ol:pl-5","prose-li:my-0 prose-li:py-1","prose-headings:mt-4 prose-headings:pt-1 prose-headings:mb-1 prose-headings:leading-tight","prose-h1:text-xl prose-h2:text-lg prose-h3:text-base","prose-blockquote:py-1 prose-blockquote:px-4 prose-blockquote:my-1","prose-table:my-2",o==="compact"&&"prose-p:my-0.5 prose-headings:mt-2 prose-headings:mb-1 prose-ul:my-0.5 prose-ol:my-0.5",t),components:b,remarkPlugins:[sS],rehypePlugins:[aS],children:f}),(0,Vt.jsx)(wt,{children:n&&p&&(0,Vt.jsx)(oe.div,{initial:{opacity:0,y:-10},animate:{opacity:1,y:0},exit:{opacity:0,y:-10},className:"flex justify-center mt-4",children:(0,Vt.jsxs)(oe.button,{onClick:m,className:"flex items-center gap-2 px-4 py-2 rounded-lg font-medium text-sm border transition-all text-white bg-[#FF8800] border-[#E67A00] dark:bg-[#FFB347] dark:border-[#FFB347]/30",whileHover:{opacity:.9},whileTap:{scale:.98},children:[(0,Vt.jsx)("span",{children:"Mostrar m\xE1s"}),(0,Vt.jsx)(qt,{className:"w-4 h-4"})]})})})]}):null}var tV=(0,Js.memo)(Oye);tV.displayName="Markdown";var ns=tV;var os=L(ee());function Mye(){let[e,t]=(0,Xr.useState)([]),[r,a]=(0,Xr.useState)(""),n=(0,Xr.useRef)(null),o=(0,Xr.useRef)(0),i=(0,Xr.useRef)(0),s=(0,Xr.useRef)(!1),l=(0,Xr.useCallback)(d=>{d&&t(f=>[...f,d])},[]),u=(0,Xr.useCallback)(()=>{t([]),a(""),i.current=0,n.current&&cancelAnimationFrame(n.current),n.current=null,o.current=0,s.current=!1},[]);return(0,Xr.useEffect)(()=>{if(s.current)return;let d=15,f=e.join("");if(i.current>=f.length){a(f);return}s.current=!0;let p=m=>{i.current<f.length?(m-o.current>d&&(i.current++,a(f.slice(0,i.current)),o.current=m),n.current=requestAnimationFrame(p)):s.current=!1};return n.current=requestAnimationFrame(p),()=>{n.current&&cancelAnimationFrame(n.current),s.current=!1}},[e]),{stream:r,addPart:l,reset:u}}var M4=(0,Xr.memo)(({text:e,animate:t=!1})=>{let r=(0,Xr.useRef)(""),{stream:a,addPart:n,reset:o}=Mye();return(0,Xr.useEffect)(()=>{if(!e||!t){!t&&a&&o();return}if(r.current!==e){let s=e.slice(r.current.length);s&&n(s),r.current=e}},[e,t,n,o,a]),(0,os.jsx)(ns,{enableChunking:!1,children:t?a||e||"":e})});M4.displayName="StreamingMessage";var rV=(0,Xr.memo)(({phase:e,text:t,kind:r})=>(0,os.jsxs)(oe.div,{initial:{opacity:0,y:10},animate:{opacity:1,y:0},transition:{duration:.3},className:l7(e),children:[(0,os.jsx)("div",{className:"relative w-4 h-4",children:e==="loading"?(0,os.jsx)(dh,{className:tk("loading")}):e==="error"?(0,os.jsx)(Zl,{className:tk("error")}):(0,os.jsx)(Qn,{className:tk("complete")})}),(0,os.jsx)("span",{className:u7(e),children:t})]}));rV.displayName="ToolEvent";var Fye=(0,Xr.memo)(({kind:e,loadingText:t,completeText:r,errorText:a,finalPhase:n="complete"})=>{let[o,i]=(0,Xr.useState)("loading");return(0,Xr.useEffect)(()=>{i("loading");let l=setTimeout(()=>{i(n==="error"?"error":"complete")},1500);return()=>clearTimeout(l)},[]),(0,os.jsx)(rV,{phase:o,text:o==="loading"?t:o==="error"&&a||r,kind:e})});Fye.displayName="ProgressiveToolEvent";c();var aV=L(ee()),zye=()=>(0,aV.jsx)(oe.div,{className:"w-2 h-2 bg-white ml-2 rounded-full",animate:{scale:[1,1.2,1],opacity:[.4,1,.4]},transition:{duration:1.2,repeat:1/0,ease:"easeInOut"}}),F4=zye;c();var Uo=L(ae());var Nr=L(ee()),nV=({messageId:e,children:t,onFeedback:r,enabled:a=!0})=>{let n=(0,Uo.useRef)(null),[o,i]=(0,Uo.useState)(null),[s,l]=(0,Uo.useState)(!1),[u,d]=(0,Uo.useState)(""),[f,p]=(0,Uo.useState)(!1),[m,h]=(0,Uo.useState)(null),b=(0,Uo.useCallback)(()=>{if(!a)return;let S=window.getSelection();if(!S||S.isCollapsed){setTimeout(()=>{f||(l(!1),i(null))},200);return}let T=S.toString().trim();if(!T||T.length<3)return;let C=S.getRangeAt(0);if(!n.current?.contains(C.commonAncestorContainer))return;let _=C.getBoundingClientRect(),R=n.current.getBoundingClientRect(),F=new DOMRect(_.left-R.left,_.top-R.top,_.width,_.height),D=n.current?.textContent||"";i({text:T,rect:F,startOffset:C.startOffset,endOffset:C.endOffset,fullText:D}),l(!0)},[a,f]);(0,Uo.useEffect)(()=>(document.addEventListener("mouseup",b),document.addEventListener("keyup",b),()=>{document.removeEventListener("mouseup",b),document.removeEventListener("keyup",b)}),[b]);let w=S=>{h(S),p(!0)},v=()=>{!o||!m||!r||(r({messageId:e,selectedText:o.text,fullText:o.fullText,feedback:m,comment:u.trim()||void 0,startOffset:o.startOffset,endOffset:o.endOffset}),l(!1),i(null),d(""),p(!1),h(null),window.getSelection()?.removeAllRanges())},x=()=>{l(!1),i(null),d(""),p(!1),h(null),window.getSelection()?.removeAllRanges()},k=()=>o?.rect?{position:"absolute",left:`${o.rect.left+o.rect.width/2}px`,top:`${o.rect.top-8}px`,transform:"translate(-50%, -100%)",zIndex:50}:{display:"none"};return(0,Nr.jsxs)("div",{ref:n,className:"relative",children:[t,(0,Nr.jsx)(wt,{children:s&&o&&(0,Nr.jsx)(oe.div,{initial:{opacity:0,y:5},animate:{opacity:1,y:0},exit:{opacity:0,y:5},transition:{duration:.15},style:k(),className:"bg-white dark:bg-zinc-800 rounded-lg shadow-lg border border-gray-200 dark:border-zinc-700 p-2",children:f?(0,Nr.jsxs)("div",{className:"flex flex-col gap-2 min-w-[250px]",children:[(0,Nr.jsx)("div",{className:"flex items-center gap-2 text-xs",children:m==="good"?(0,Nr.jsxs)("span",{className:"flex items-center gap-1 text-green-600 dark:text-green-400",children:[(0,Nr.jsx)(Wl,{className:"w-3 h-3"}),"Mantener esto"]}):(0,Nr.jsxs)("span",{className:"flex items-center gap-1 text-red-600 dark:text-red-400",children:[(0,Nr.jsx)(Gl,{className:"w-3 h-3"}),"No decir esto"]})}),(0,Nr.jsxs)("p",{className:"text-xs text-gray-500 dark:text-gray-400 italic line-clamp-2",children:['"',o.text,'"']}),(0,Nr.jsx)("input",{type:"text",value:u,onChange:S=>d(S.target.value),placeholder:"\xBFPor qu\xE9? (opcional)",className:"w-full px-2 py-1 text-sm rounded border border-gray-200 dark:border-zinc-600 bg-white dark:bg-zinc-900 focus:outline-none focus:ring-1 focus:ring-blue-500",onKeyDown:S=>{S.key==="Enter"?v():S.key==="Escape"&&x()},autoFocus:!0}),(0,Nr.jsxs)("div",{className:"flex justify-end gap-1",children:[(0,Nr.jsx)(Ir,{size:"sm",variant:"ghost",onClick:x,className:"h-7 text-xs",children:"Cancelar"}),(0,Nr.jsxs)(Ir,{size:"sm",onClick:v,className:"h-7 text-xs",children:[(0,Nr.jsx)(gh,{className:"w-3 h-3 mr-1"}),"Guardar"]})]})]}):(0,Nr.jsxs)("div",{className:"flex items-center gap-1",children:[(0,Nr.jsx)("button",{onClick:()=>w("good"),className:"p-1.5 rounded-md hover:bg-green-100 dark:hover:bg-green-900/30 text-green-600 dark:text-green-400 transition-colors",title:"Esto est\xE1 bien, mantenerlo",children:(0,Nr.jsx)(Wl,{className:"w-4 h-4"})}),(0,Nr.jsx)("button",{onClick:()=>w("bad"),className:"p-1.5 rounded-md hover:bg-red-100 dark:hover:bg-red-900/30 text-red-600 dark:text-red-400 transition-colors",title:"Esto est\xE1 mal, no decirlo",children:(0,Nr.jsx)(Gl,{className:"w-4 h-4"})}),(0,Nr.jsx)("button",{onClick:x,className:"p-1.5 rounded-md hover:bg-gray-100 dark:hover:bg-zinc-700 text-gray-400 transition-colors",children:(0,Nr.jsx)(Mr,{className:"w-4 h-4"})})]})})})]})};c();var lS=L(ae());var ba=L(ee()),Uye=e=>{if(e==null)return null;let t=Math.round(e*100),r="text-gray-400";return t>=80?r="text-green-500":t>=60?r="text-yellow-500":t>=40&&(r="text-orange-400"),{text:`${t}%`,colorClass:r}},oV=e=>{try{return new URL(e).hostname.replace("www.","")}catch{return e}},Bye=(e,t)=>e.sourceName?e.sourceName:e.datasource_name?e.datasource_name:e.source_url?oV(e.source_url):e.source?oV(e.source):`Source ${t+1}`,z4=(0,lS.memo)(({sources:e,maxSources:t=5,dashboardBaseUrl:r="/datastores",defaultExpanded:a=!1})=>{let[n,o]=(0,lS.useState)(a);if(!e||e.length===0)return null;let i=e.slice(0,t),s=e.length>t,l=n?qt:Ic;return(0,ba.jsxs)(oe.div,{initial:{opacity:0,y:5},animate:{opacity:1,y:0},transition:{duration:.2,delay:.1},className:"mt-3 pt-2 border-t border-gray-100 dark:border-neutral-800",children:[(0,ba.jsxs)("button",{onClick:()=>o(!n),className:"flex items-center gap-1.5 text-left hover:opacity-80 transition-opacity w-full group",children:[(0,ba.jsx)(l,{className:"w-3 h-3 text-gray-400 dark:text-gray-500 transition-transform"}),(0,ba.jsx)(ah,{className:"w-3 h-3 text-gray-400 dark:text-gray-500"}),(0,ba.jsxs)("span",{className:"text-[10px] font-medium text-gray-400 dark:text-gray-500 uppercase tracking-wide",children:["Sources (",e.length,")"]})]}),(0,ba.jsx)(wt,{children:n&&(0,ba.jsx)(oe.div,{initial:{height:0,opacity:0},animate:{height:"auto",opacity:1},exit:{height:0,opacity:0},transition:{duration:.2},className:"overflow-hidden",children:(0,ba.jsxs)("div",{className:"flex flex-wrap gap-1.5 mt-2",children:[i.map((u,d)=>{let f=Bye(u,d),p=Uye(u.score),m=!!u.datastoreId,h=u.source||u.source_url,b=null,w=!1;m?(b=`${r}/${u.datastoreId}`,u.datasourceId&&(b+=`?datasourceId=${u.datasourceId}`)):h&&(b=h,w=!0);let x=(0,ba.jsxs)(ba.Fragment,{children:[(0,ba.jsx)(Rc,{className:"w-2.5 h-2.5 flex-shrink-0"}),(0,ba.jsx)("span",{className:"truncate max-w-[150px]",children:f}),p&&(0,ba.jsx)("span",{className:`text-[9px] font-medium ${p.colorClass}`,children:p.text})]});return b?(0,ba.jsx)(oe.a,{href:b,target:w?"_blank":void 0,rel:w?"noopener noreferrer":void 0,className:`inline-flex items-center gap-1 px-2 py-1 rounded-md text-[10px] transition-colors ${w?"bg-gray-50 dark:bg-neutral-800 hover:bg-gray-100 dark:hover:bg-neutral-700 border border-gray-200 dark:border-neutral-700 text-gray-600 dark:text-gray-300":"bg-orange-50 dark:bg-orange-900/20 hover:bg-orange-100 dark:hover:bg-orange-900/30 border border-orange-200 dark:border-orange-800 text-orange-700 dark:text-orange-300"}`,initial:{opacity:0,scale:.95},animate:{opacity:1,scale:1},transition:{delay:d*.03},children:x},u.id||u.datasourceId||d):(0,ba.jsx)(oe.div,{className:"inline-flex items-center gap-1 px-2 py-1 rounded-md text-[10px] bg-gray-50 dark:bg-neutral-800 border border-gray-100 dark:border-neutral-700 text-gray-500 dark:text-gray-400",initial:{opacity:0,scale:.95},animate:{opacity:1,scale:1},transition:{delay:d*.03},children:x},u.id||d)}),s&&(0,ba.jsxs)("span",{className:"inline-flex items-center px-2 py-1 text-[10px] text-gray-400 dark:text-gray-500",children:["+",e.length-t," more"]})]})})})]})});z4.displayName="SourcesDisplay";c();c();c();var uS=L(ae());var Ne=L(ee()),$ye=e=>{let{query:t,answer:r,results:a=[],images:n=[],variant:o="compact",status:i="complete",onClose:s,onExpand:l,channel:u,toolName:d="web_search",...f}=e,m=Un(d)?.displayName||"B\xFAsqueda Web",h=t,b=r,w=a,v=n,x=f.result||f.output,k=f.args||f.input;if(!h&&k?.query&&(h=k.query),x){if(x.data)h=h||x.data.query,b=b||x.data.answer,w=w.length>0?w:x.data.results||[],v=v.length>0?v:x.data.images||[];else if(typeof x=="string")try{let N=JSON.parse(x);N.success&&N.data&&(h=h||N.data.query,b=b||N.data.answer,w=w.length>0?w:N.data.results||[],v=v.length>0?v:N.data.images||[])}catch(N){console.warn("[WebSearch] Failed to parse tool output:",N)}}let S=f.text;if(!x&&S&&typeof S=="string")try{let N=JSON.parse(S);N.success&&N.data&&(h=h||N.data.query,b=b||N.data.answer,w=w.length>0?w:N.data.results||[],v=v.length>0?v:N.data.images||[])}catch(N){console.warn("[WebSearch] Failed to parse text data:",N)}let T=o==="sidebar",[C,_]=(0,uS.useState)(T);(0,uS.useEffect)(()=>{T&&_(!0)},[T]);let R=Array.isArray(v)?v.map(N=>{if(N){if(typeof N=="string")return N;if(typeof N=="object"&&"url"in N&&typeof N.url=="string")return N.url}}).filter(Boolean):[],F=R.length>0,D=F?R.slice(0,4):[],ie=o==="sidebar",$=o==="compact",U=()=>{$&&l?l({query:h,answer:b,results:w,images:v}):_(N=>!N)};if($){let N=i==="loading",H=i==="complete",V=i==="error";return u==="agent_builder"?(0,Ne.jsx)("div",{className:"w-auto inline-block",children:(0,Ne.jsxs)("div",{className:"inline-flex items-center gap-2 px-3 py-2 rounded-xl bg-white dark:bg-neutral-800 border border-neutral-200 dark:border-neutral-700",children:[N&&(0,Ne.jsx)(Ke,{className:"w-4 h-4 text-blue-600 dark:text-blue-400 animate-spin"}),H&&(0,Ne.jsx)(ar,{className:"w-4 h-4 text-green-600 dark:text-green-400"}),V&&(0,Ne.jsx)(Ui,{className:"w-4 h-4 text-red-600 dark:text-red-400"}),(0,Ne.jsxs)("span",{className:"text-sm font-medium text-neutral-900 dark:text-neutral-100",children:[N&&`Ejecutando ${m}`,H&&m,V&&`${m} Fallida`]}),H&&l&&(0,Ne.jsxs)(Ne.Fragment,{children:[(0,Ne.jsx)("span",{className:"text-neutral-400 dark:text-neutral-500",children:"\xB7"}),(0,Ne.jsxs)("button",{type:"button",onClick:U,className:"inline-flex items-center gap-0.5 text-xs text-orange-600 dark:text-orange-400 hover:text-orange-700 dark:hover:text-orange-300 transition-colors",children:["Ver",(0,Ne.jsx)(ci,{className:"w-3 h-3"})]})]})]})}):(0,Ne.jsx)("div",{className:"w-full max-w-2xl",children:(0,Ne.jsxs)("div",{className:"rounded-xl border border-neutral-200 dark:border-neutral-700 bg-white dark:bg-neutral-800 overflow-hidden",children:[(0,Ne.jsxs)("button",{type:"button",onClick:()=>_(!C),className:"w-full flex items-center justify-between gap-3 px-4 py-3 hover:bg-neutral-50 dark:hover:bg-neutral-700 transition-colors",children:[(0,Ne.jsxs)("div",{className:"flex items-center gap-2",children:[N&&(0,Ne.jsx)(Ke,{className:"w-4 h-4 text-blue-600 dark:text-blue-400 animate-spin"}),H&&(0,Ne.jsx)(ar,{className:"w-4 h-4 text-green-600 dark:text-green-400"}),V&&(0,Ne.jsx)(Ur,{className:"w-4 h-4 text-red-600 dark:text-red-400"}),(0,Ne.jsxs)(Tt,{className:"text-neutral-900 dark:text-neutral-100",children:[N&&`Ejecutando ${m}...`,H&&m,V&&`${m} Fallida`]}),h&&(0,Ne.jsx)(Pt,{className:"text-xs truncate max-w-xs",children:h})]}),(0,Ne.jsx)(oe.div,{animate:{rotate:C?180:0},transition:{duration:.2},children:(0,Ne.jsx)(qt,{className:"w-4 h-4 text-neutral-700 dark:text-neutral-300"})})]}),(0,Ne.jsx)(wt,{children:C&&(0,Ne.jsx)(oe.div,{initial:{height:0,opacity:0},animate:{height:"auto",opacity:1},exit:{height:0,opacity:0},transition:{duration:.3},className:"border-t border-neutral-200 dark:border-neutral-700 overflow-hidden",children:(0,Ne.jsxs)("div",{className:"p-4 space-y-3",children:[b&&(0,Ne.jsxs)("div",{children:[(0,Ne.jsx)(Tt,{className:"mb-2 text-neutral-700 dark:text-neutral-300",children:"Resumen"}),(0,Ne.jsx)(Pt,{className:"whitespace-pre-wrap break-words leading-relaxed",children:b})]}),F&&(0,Ne.jsx)("div",{className:"grid grid-cols-4 gap-2",children:D.map((j,Z)=>(0,Ne.jsx)("div",{className:"overflow-hidden rounded-xl border border-neutral-200 dark:border-neutral-700",children:(0,Ne.jsx)("img",{src:j,alt:h||"Web search image",className:"h-20 w-full object-cover",loading:"lazy"})},`${j}-${Z}`))}),w.length>0&&(0,Ne.jsx)("div",{className:"space-y-2",children:w.map((j,Z)=>(0,Ne.jsxs)("div",{className:"rounded-lg border border-neutral-200 dark:border-neutral-700 p-3",children:[j.title&&(0,Ne.jsx)(Tt,{className:"mb-1 text-neutral-900 dark:text-neutral-100",children:j.title}),j.url&&(0,Ne.jsxs)("a",{href:j.url,target:"_blank",rel:"noreferrer",className:"inline-flex items-center gap-1 text-xs text-blue-600 dark:text-blue-400 hover:opacity-70 mb-2",children:[(0,Ne.jsx)(na,{className:"w-3 h-3"}),"Ver fuente"]}),(j.snippet||j.content)&&(0,Ne.jsx)(Pt,{className:"text-xs line-clamp-2",children:j.snippet||j.content})]},`${j.url||"result"}-${Z}`))})]})})})]})})}return(0,Ne.jsxs)("div",{className:"w-full h-full bg-white dark:bg-neutral-900 md:rounded-tl-2xl flex flex-col",children:[(0,Ne.jsxs)("div",{className:"flex items-center justify-between gap-3 px-4 py-3 md:py-3 pt-safe border-b border-neutral-200 dark:border-neutral-700 flex-shrink-0",children:[(0,Ne.jsxs)("div",{className:"flex items-center gap-2 flex-1 min-w-0",children:[(0,Ne.jsx)(Ui,{className:"w-4 h-4 text-blue-600 dark:text-blue-400 flex-shrink-0"}),(0,Ne.jsxs)("div",{className:"flex flex-col gap-0.5 flex-1 min-w-0",children:[(0,Ne.jsx)(Tt,{className:"text-neutral-900 dark:text-neutral-100",children:m}),h&&(0,Ne.jsx)(Pt,{className:"truncate text-xs",children:h})]})]}),s&&(0,Ne.jsx)("button",{type:"button",className:"flex-shrink-0 p-2 md:p-1.5 rounded-full md:rounded-lg text-neutral-600 dark:text-neutral-400 bg-neutral-100 dark:bg-neutral-800 hover:bg-neutral-200 dark:hover:bg-neutral-700 transition-colors",onClick:s,children:(0,Ne.jsx)(Mr,{className:"w-5 h-5 md:w-4 md:h-4"})})]}),(0,Ne.jsx)("div",{className:"flex-1 overflow-y-auto",children:(0,Ne.jsxs)("div",{className:"p-4 space-y-4",children:[i==="loading"&&(0,Ne.jsxs)("div",{className:"flex items-center gap-3 px-3 py-2",children:[(0,Ne.jsx)(Ke,{className:"w-4 h-4 text-blue-600 dark:text-blue-400 animate-spin"}),(0,Ne.jsx)(Pt,{children:"Obteniendo resultados..."})]}),i==="complete"&&b&&(0,Ne.jsxs)("div",{className:"rounded-xl border border-neutral-200 dark:border-neutral-700 p-4",children:[(0,Ne.jsx)(Tt,{className:"mb-2 text-neutral-700 dark:text-neutral-300 font-semibold",children:"Resumen"}),(0,Ne.jsx)(Pt,{className:"whitespace-pre-wrap break-words leading-relaxed",children:b})]}),i==="complete"&&F&&(0,Ne.jsxs)("div",{children:[(0,Ne.jsx)(Tt,{className:"mb-2 text-neutral-700 dark:text-neutral-300 font-semibold",children:"Im\xE1genes"}),(0,Ne.jsx)("div",{className:"grid grid-cols-4 gap-2",children:D.map((N,H)=>(0,Ne.jsx)("div",{className:"overflow-hidden rounded-xl border border-neutral-200 dark:border-neutral-700 hover:border-blue-400 dark:hover:border-blue-500 transition-colors",children:(0,Ne.jsx)("img",{src:N,alt:h||"Web search image",className:"h-20 w-full object-cover",loading:"lazy"})},`${N}-${H}`))})]}),i==="complete"&&w.length>0&&(0,Ne.jsxs)("div",{children:[(0,Ne.jsxs)("div",{className:"flex items-center gap-2 mb-3",children:[(0,Ne.jsx)(Tt,{className:"text-neutral-700 dark:text-neutral-300 font-semibold",children:"Fuentes"}),(0,Ne.jsx)("span",{className:"text-xs px-2 py-0.5 rounded-full bg-neutral-200 dark:bg-neutral-700 text-neutral-700 dark:text-neutral-300",children:w.length})]}),(0,Ne.jsx)("div",{className:"space-y-2",children:w.map((N,H)=>(0,Ne.jsxs)("div",{className:"rounded-lg border border-neutral-200 dark:border-neutral-700 p-3 hover:border-blue-400 dark:hover:border-blue-500 transition-colors",children:[(0,Ne.jsxs)("div",{className:"flex items-start justify-between gap-3 mb-2",children:[(0,Ne.jsxs)("div",{className:"flex-1 min-w-0",children:[N.title&&(0,Ne.jsx)(Tt,{className:"leading-snug mb-1 text-neutral-900 dark:text-neutral-100",children:N.title}),N.url&&(0,Ne.jsxs)("a",{href:N.url,target:"_blank",rel:"noreferrer",className:"inline-flex items-center gap-1 text-xs text-blue-600 dark:text-blue-400 hover:opacity-70 transition-opacity",children:[(0,Ne.jsx)(na,{className:"w-3 h-3"}),"Ver fuente"]})]}),(0,Ne.jsxs)("span",{className:"text-xs flex-shrink-0 text-neutral-500 dark:text-neutral-400",children:["#",H+1]})]}),(N.snippet||N.content)&&(0,Ne.jsx)(Pt,{className:"text-xs leading-relaxed",children:N.snippet||N.content})]},`${N.url||"result"}-${H}`))})]})]})})]})},U4=$ye;c();var cS=L(ae());var De=L(ee()),jye=e=>{let{url:t,title:r,content:a,description:n,favicon:o,ogImage:i,wordCount:s,variant:l="compact",status:u="complete",onClose:d,onExpand:f,channel:p,toolName:m="scrape_webpage",...h}=e,w=Un(m)?.displayName||"Scraping Web",v=t,x=r,k=a,S=n,T=o,C=i,_=s,R=h.result||h.output,F=h.args||h.input;if(!v&&F?.url&&(v=F.url),R){if(R.data)v=v||R.data.url,x=x||R.data.title,k=k||R.data.content,S=S||R.data.description,T=T||R.data.favicon,C=C||R.data.ogImage,_=_||R.data.wordCount;else if(typeof R=="string")try{let Z=JSON.parse(R);Z.data&&(v=v||Z.data.url,x=x||Z.data.title,k=k||Z.data.content,S=S||Z.data.description,T=T||Z.data.favicon,C=C||Z.data.ogImage,_=_||Z.data.wordCount)}catch(Z){console.warn("[ScrapeWebpage] Failed to parse tool output:",Z)}}let D=h.text;if(!R&&D&&typeof D=="string")try{let Z=JSON.parse(D);Z.result&&Z.result.data&&(v=v||Z.result.data.url,x=x||Z.result.data.title,k=k||Z.result.data.content,S=S||Z.result.data.description,T=T||Z.result.data.favicon,C=C||Z.result.data.ogImage,_=_||Z.result.data.wordCount)}catch(Z){console.warn("[ScrapeWebpage] Failed to parse text data:",Z)}let $=(Z=>{if(!Z)return null;try{return new URL(Z).hostname}catch{return null}})(v),U=l==="sidebar",[N,H]=(0,cS.useState)(U);(0,cS.useEffect)(()=>{U&&H(!0)},[U]);let V=l==="sidebar",G=l==="compact",j=()=>{G&&f?f({url:v,title:x,content:k,description:S,ogImage:C,wordCount:_}):H(Z=>!Z)};if(G){let Z=u==="loading",A=u==="complete",he=u==="error";return p==="agent_builder"?(0,De.jsx)("div",{className:"w-auto inline-block",children:(0,De.jsxs)("div",{className:"inline-flex items-center gap-2 px-3 py-2 rounded-xl bg-white dark:bg-neutral-800 border border-neutral-200 dark:border-neutral-700",children:[Z&&(0,De.jsx)(Ke,{className:"w-4 h-4 text-green-600 dark:text-green-400 animate-spin"}),A&&(0,De.jsx)(ar,{className:"w-4 h-4 text-green-600 dark:text-green-400"}),he&&(0,De.jsx)(Ui,{className:"w-4 h-4 text-red-600 dark:text-red-400"}),(0,De.jsxs)("span",{className:"text-sm font-medium text-neutral-900 dark:text-neutral-100",children:[Z&&"Extrayendo p\xE1gina",A&&w,he&&`${w} Fallido`]}),A&&f&&(0,De.jsxs)(De.Fragment,{children:[(0,De.jsx)("span",{className:"text-neutral-400 dark:text-neutral-500",children:"\xB7"}),(0,De.jsxs)("button",{type:"button",onClick:j,className:"inline-flex items-center gap-0.5 text-xs text-green-600 dark:text-green-400 hover:text-green-700 dark:hover:text-green-300 transition-colors",children:["Ver contenido",(0,De.jsx)(ci,{className:"w-3 h-3"})]})]})]})}):(0,De.jsx)("div",{className:"w-full max-w-2xl",children:(0,De.jsxs)("div",{className:"rounded-xl border border-neutral-200 dark:border-neutral-700 bg-white dark:bg-neutral-800 overflow-hidden",children:[(0,De.jsxs)("button",{type:"button",onClick:()=>H(!N),className:"w-full flex items-center justify-between gap-3 px-4 py-3 hover:bg-neutral-50 dark:hover:bg-neutral-700 transition-colors",children:[(0,De.jsxs)("div",{className:"flex items-center gap-2",children:[Z&&(0,De.jsx)(Ke,{className:"w-4 h-4 text-green-600 dark:text-green-400 animate-spin"}),A&&(0,De.jsx)(ar,{className:"w-4 h-4 text-green-600 dark:text-green-400"}),he&&(0,De.jsx)(Ur,{className:"w-4 h-4 text-red-600 dark:text-red-400"}),(0,De.jsxs)(Tt,{className:"text-neutral-900 dark:text-neutral-100",children:[Z&&"Extrayendo contenido...",A&&w,he&&`${w} Fallido`]}),$&&(0,De.jsx)(Pt,{className:"text-xs truncate max-w-xs",children:$})]}),(0,De.jsx)(oe.div,{animate:{rotate:N?180:0},transition:{duration:.2},children:(0,De.jsx)(qt,{className:"w-4 h-4 text-neutral-700 dark:text-neutral-300"})})]}),(0,De.jsx)(wt,{children:N&&(0,De.jsx)(oe.div,{initial:{height:0,opacity:0},animate:{height:"auto",opacity:1},exit:{height:0,opacity:0},transition:{duration:.3},className:"border-t border-neutral-200 dark:border-neutral-700 overflow-hidden",children:(0,De.jsxs)("div",{className:"p-4 space-y-3",children:[(x||v)&&(0,De.jsxs)("div",{children:[x&&(0,De.jsx)(Tt,{className:"mb-2 text-neutral-900 dark:text-neutral-100 font-semibold",children:x}),v&&(0,De.jsxs)("a",{href:v,target:"_blank",rel:"noreferrer",className:"inline-flex items-center gap-1 text-xs text-blue-600 dark:text-blue-400 hover:opacity-70 mb-2",children:[(0,De.jsx)(na,{className:"w-3 h-3"}),$||v]})]}),C&&(0,De.jsx)("div",{className:"overflow-hidden rounded-xl border border-neutral-200 dark:border-neutral-700",children:(0,De.jsx)("img",{src:C,alt:x||"Page preview",className:"w-full h-32 object-cover",loading:"lazy"})}),S&&(0,De.jsxs)("div",{children:[(0,De.jsx)(Tt,{className:"mb-2 text-neutral-700 dark:text-neutral-300",children:"Descripci\xF3n"}),(0,De.jsx)(Pt,{className:"whitespace-pre-wrap break-words leading-relaxed",children:S})]}),k&&(0,De.jsxs)("div",{children:[(0,De.jsxs)("div",{className:"flex items-center gap-2 mb-2",children:[(0,De.jsx)(Tt,{className:"text-neutral-700 dark:text-neutral-300",children:"Contenido extra\xEDdo"}),_&&(0,De.jsxs)("span",{className:"text-xs px-2 py-0.5 rounded-full bg-neutral-200 dark:bg-neutral-700 text-neutral-700 dark:text-neutral-300",children:[_," palabras"]})]}),(0,De.jsx)("div",{className:"max-h-64 overflow-y-auto rounded-lg border border-neutral-200 dark:border-neutral-700 p-3",children:(0,De.jsxs)(Pt,{className:"text-xs whitespace-pre-wrap break-words leading-relaxed",children:[k.slice(0,1e3),k.length>1e3&&"..."]})})]})]})})})]})})}return(0,De.jsxs)("div",{className:"w-full h-full bg-white dark:bg-neutral-900 md:rounded-tl-2xl flex flex-col",children:[(0,De.jsxs)("div",{className:"flex items-center justify-between gap-3 px-4 py-3 md:py-3 pt-safe border-b border-neutral-200 dark:border-neutral-700 flex-shrink-0",children:[(0,De.jsxs)("div",{className:"flex items-center gap-2 flex-1 min-w-0",children:[(0,De.jsx)(Tn,{className:"w-4 h-4 text-green-600 dark:text-green-400 flex-shrink-0"}),(0,De.jsxs)("div",{className:"flex flex-col gap-0.5 flex-1 min-w-0",children:[(0,De.jsx)(Tt,{className:"text-neutral-900 dark:text-neutral-100",children:w}),$&&(0,De.jsx)(Pt,{className:"truncate text-xs",children:$})]})]}),d&&(0,De.jsx)("button",{type:"button",className:"flex-shrink-0 p-2 md:p-1.5 rounded-full md:rounded-lg text-neutral-600 dark:text-neutral-400 bg-neutral-100 dark:bg-neutral-800 hover:bg-neutral-200 dark:hover:bg-neutral-700 transition-colors",onClick:d,children:(0,De.jsx)(Mr,{className:"w-5 h-5 md:w-4 md:h-4"})})]}),(0,De.jsx)("div",{className:"flex-1 overflow-y-auto",children:(0,De.jsxs)("div",{className:"p-4 space-y-4",children:[u==="loading"&&(0,De.jsxs)("div",{className:"flex items-center gap-3 px-3 py-2",children:[(0,De.jsx)(Ke,{className:"w-4 h-4 text-green-600 dark:text-green-400 animate-spin"}),(0,De.jsx)(Pt,{children:"Extrayendo contenido de la p\xE1gina..."})]}),u==="complete"&&(x||v)&&(0,De.jsxs)("div",{className:"rounded-xl border border-neutral-200 dark:border-neutral-700 p-4",children:[x&&(0,De.jsx)(Tt,{className:"mb-2 text-neutral-900 dark:text-neutral-100 font-semibold",children:x}),v&&(0,De.jsxs)("a",{href:v,target:"_blank",rel:"noreferrer",className:"inline-flex items-center gap-1 text-xs text-blue-600 dark:text-blue-400 hover:opacity-70 transition-opacity",children:[(0,De.jsx)(na,{className:"w-3 h-3"}),"Ver p\xE1gina original"]})]}),u==="complete"&&C&&(0,De.jsxs)("div",{children:[(0,De.jsx)(Tt,{className:"mb-2 text-neutral-700 dark:text-neutral-300 font-semibold",children:"Vista previa"}),(0,De.jsx)("div",{className:"overflow-hidden rounded-xl border border-neutral-200 dark:border-neutral-700 hover:border-green-400 dark:hover:border-green-500 transition-colors",children:(0,De.jsx)("img",{src:C,alt:x||"Page preview",className:"w-full h-48 object-cover",loading:"lazy"})})]}),u==="complete"&&S&&(0,De.jsxs)("div",{className:"rounded-xl border border-neutral-200 dark:border-neutral-700 p-4",children:[(0,De.jsx)(Tt,{className:"mb-2 text-neutral-700 dark:text-neutral-300 font-semibold",children:"Descripci\xF3n"}),(0,De.jsx)(Pt,{className:"whitespace-pre-wrap break-words leading-relaxed",children:S})]}),u==="complete"&&k&&(0,De.jsxs)("div",{children:[(0,De.jsxs)("div",{className:"flex items-center gap-2 mb-3",children:[(0,De.jsx)(Tt,{className:"text-neutral-700 dark:text-neutral-300 font-semibold",children:"Contenido extra\xEDdo"}),_&&(0,De.jsxs)("span",{className:"text-xs px-2 py-0.5 rounded-full bg-neutral-200 dark:bg-neutral-700 text-neutral-700 dark:text-neutral-300",children:[_," palabras"]})]}),(0,De.jsx)("div",{className:"rounded-xl border border-neutral-200 dark:border-neutral-700 p-4 hover:border-green-400 dark:hover:border-green-500 transition-colors",children:(0,De.jsx)(Pt,{className:"whitespace-pre-wrap break-words leading-relaxed text-xs",children:k})})]})]})})]})},iV=jye;c();var Bn=L(ae());c();var bb=L(ae()),fm=({status:e,hadLoadingPhase:t,minDisplayTime:r=300})=>{let[a,n]=(0,bb.useState)(e),[o]=(0,bb.useState)(()=>Date.now());return(0,bb.useEffect)(()=>{if(e==="loading"){n("loading");return}if(!t){n(e);return}let i=Date.now()-o,s=Math.max(0,r-i);if(s>0){let l=setTimeout(()=>{n(e)},s);return()=>clearTimeout(l)}else n(e)},[e,t,o,r]),{displayStatus:a}};var Jr=L(ee()),Hye=({text:e,speed:t=25})=>{let[r,a]=(0,Bn.useState)(""),n=(0,Bn.useRef)(0),o=(0,Bn.useRef)(""),i=e||"";(0,Bn.useEffect)(()=>{i.length<o.current.length?(a(""),n.current=0,o.current=i):i.length>o.current.length&&(o.current=i);let l=setInterval(()=>{n.current<i.length?(a(i.slice(0,n.current+1)),n.current++):clearInterval(l)},t);return()=>clearInterval(l)},[i,t]);let s=n.current<i.length;return(0,Jr.jsxs)("span",{children:[r,s&&(0,Jr.jsx)(oe.span,{animate:{opacity:[1,0]},transition:{duration:.8,repeat:1/0,repeatType:"reverse"},className:"inline-block w-0.5 h-4 bg-white/60 ml-0.5"})]})},qye=({thought:e,text:t,thoughts:r,isStreaming:a=!1,status:n="complete",hadLoadingPhase:o=!1,onTransitionComplete:i,durationMs:s})=>{let[l,u]=(0,Bn.useState)(!1),d=(0,Bn.useRef)(Date.now()),[f,p]=(0,Bn.useState)(0),m=(0,Bn.useRef)(!1),h=e||t||"",b=!a&&h?"complete":n,{displayStatus:w}=fm({status:b,hadLoadingPhase:a?o:!1,onTransitionComplete:i,minLoadingTime:0});(0,Bn.useEffect)(()=>{if(s!==void 0){p(s);return}if(!m.current&&(w==="loading"||o)&&(d.current=Date.now(),m.current=!0),w==="loading"){let k=setInterval(()=>{p(Date.now()-d.current)},100);return()=>clearInterval(k)}else if(w==="complete"&&m.current){let k=Date.now()-d.current;p(k)}},[w,o,s]);let v=(0,Bn.useMemo)(()=>!Array.isArray(r)||r.length===0?[]:Array.from(new Set(r.filter(Boolean))),[r]),x=(f/1e3).toFixed(1);return(0,Jr.jsx)("div",{className:"w-auto",children:(0,Jr.jsxs)(oe.div,{initial:!1,className:"group inline-block",children:[(0,Jr.jsxs)(oe.div,{className:"inline-flex items-center gap-2 px-2 py-1 cursor-pointer",onClick:()=>u(!l),whileTap:{scale:.995},transition:{duration:.15},children:[w==="loading"?(0,Jr.jsx)(Ke,{className:"w-4 h-4 text-purple-600 dark:text-purple-400 animate-spin"}):(0,Jr.jsx)(oe.div,{animate:{rotate:l?180:0},transition:{duration:.2,ease:"easeOut"},children:(0,Jr.jsx)(qt,{className:"w-4 h-4 text-neutral-700 dark:text-neutral-300"})}),(0,Jr.jsxs)(Tt,{children:["Analizando (",x,"s)"]})]}),(0,Jr.jsx)(wt,{initial:!1,children:l&&(0,Jr.jsx)(oe.div,{initial:{opacity:0,height:0},animate:{opacity:.7,height:"auto"},exit:{opacity:0,height:0},transition:{duration:.3,ease:[.04,.62,.23,.98]},className:"border-l border-neutral-300 dark:border-neutral-600 pl-3 ml-[.95rem]",children:(0,Jr.jsxs)("div",{className:"py-2",children:[(0,Jr.jsx)(Pt,{className:"whitespace-pre-wrap break-words leading-relaxed",children:a?(0,Jr.jsx)(Hye,{text:h,speed:15}):h}),v.length>0&&(0,Jr.jsxs)("div",{className:"mt-3 space-y-2",children:[(0,Jr.jsx)(Tt,{className:"text-neutral-600 dark:text-neutral-400",children:"Pensamientos anteriores"}),(0,Jr.jsx)("ul",{className:"space-y-1.5",children:v.map((k,S)=>(0,Jr.jsx)("li",{className:"pl-2",children:(0,Jr.jsx)(Pt,{children:k})},`${S}-${k.slice(0,12)}`))})]})]})})})]})})},B4=qye;c();var pm=L(ae());var Ct=L(ee()),Vye=({code:e,stdout:t=[],stderr:r=[],plots:a=[],status:n,error:o,executionTime:i,isStreaming:s=!1})=>{let[l,u]=(0,pm.useState)(!0),[d,f]=(0,pm.useState)([]),[p,m]=(0,pm.useState)([]);(0,pm.useEffect)(()=>{if(!s){f(t),m(r);return}if(t.length>d.length){let x=setTimeout(()=>{f(t.slice(0,d.length+1))},50);return()=>clearTimeout(x)}if(r.length>p.length){let x=setTimeout(()=>{m(r.slice(0,p.length+1))},50);return()=>clearTimeout(x)}},[t,r,d.length,p.length,s]);let h=()=>{switch(n){case"loading":return(0,Ct.jsx)("div",{className:"w-4 h-4 border-2 border-orange-500 border-t-transparent rounded-full animate-spin"});case"executing":return(0,Ct.jsxs)("svg",{className:"w-4 h-4 text-orange-500 animate-pulse",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:[(0,Ct.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M14.752 11.168l-3.197-2.132A1 1 0 0010 9.87v4.263a1 1 0 001.555.832l3.197-2.132a1 1 0 000-1.664z"}),(0,Ct.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M21 12a9 9 0 11-18 0 9 9 0 0118 0z"})]});case"complete":return(0,Ct.jsx)("svg",{className:"w-4 h-4 text-green-500",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:(0,Ct.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M9 12l2 2 4-4m6 2a9 9 0 11-18 0 9 9 0 0118 0z"})});case"error":return(0,Ct.jsx)("svg",{className:"w-4 h-4 text-red-500",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:(0,Ct.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M10 14l2-2m0 0l2-2m-2 2l-2-2m2 2l2 2m7-2a9 9 0 11-18 0 9 9 0 0118 0z"})})}},b=()=>{switch(n){case"loading":return"Iniciando sandbox...";case"executing":return"Ejecutando c\xF3digo Python...";case"complete":return`Ejecuci\xF3n completada${i?` en ${(i/1e3).toFixed(2)}s`:""}`;case"error":return"Error en ejecuci\xF3n"}},w=()=>{switch(n){case"loading":case"executing":return"border-orange-500/40";case"complete":return"border-green-500/40";case"error":return"border-red-500/40"}},v=()=>{switch(n){case"loading":case"executing":return"bg-orange-500/10";case"complete":return"bg-green-500/10";case"error":return"bg-red-500/10"}};return(0,Ct.jsxs)(oe.div,{initial:{opacity:0,y:10},animate:{opacity:1,y:0},className:`my-2 rounded-xl border ${w()} ${v()} overflow-hidden`,children:[(0,Ct.jsxs)(oe.button,{onClick:()=>u(!l),className:"w-full flex items-center justify-between px-4 py-3 transition-colors bg-black/5 dark:bg-white/5 hover:bg-black/10 dark:hover:bg-white/10",whileHover:{opacity:.9},whileTap:{scale:.99},children:[(0,Ct.jsxs)("div",{className:"flex items-center gap-3",children:[h(),(0,Ct.jsxs)("div",{className:"flex flex-col items-start",children:[(0,Ct.jsx)("span",{className:"text-sm font-medium text-black dark:text-white",children:"\u{1F40D} Code Interpreter"}),(0,Ct.jsx)("span",{className:"text-xs text-gray-600 dark:text-gray-400",children:b()})]})]}),(0,Ct.jsx)("svg",{className:`w-5 h-5 transition-transform text-gray-600 dark:text-gray-400 ${l?"rotate-180":""}`,fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:(0,Ct.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M19 9l-7 7-7-7"})})]}),(0,Ct.jsx)(wt,{children:l&&(0,Ct.jsx)(oe.div,{initial:{height:0,opacity:0},animate:{height:"auto",opacity:1},exit:{height:0,opacity:0},transition:{duration:.2},className:"overflow-hidden",children:(0,Ct.jsxs)("div",{className:"px-4 pb-4 space-y-3",children:[e&&(0,Ct.jsxs)("div",{className:"space-y-1",children:[(0,Ct.jsx)("div",{className:"text-xs font-medium uppercase tracking-wide text-gray-600 dark:text-gray-400",children:"C\xF3digo Python"}),(0,Ct.jsx)("div",{className:"rounded-lg p-3 border bg-black/5 dark:bg-black/40 border-[#FFB347]/20 dark:border-white/10",children:(0,Ct.jsx)("pre",{className:"text-sm whitespace-pre-wrap font-mono overflow-x-auto text-black dark:text-gray-300",children:e})})]}),d.length>0&&(0,Ct.jsxs)("div",{className:"space-y-1",children:[(0,Ct.jsx)("div",{className:"text-xs font-medium uppercase tracking-wide text-gray-600 dark:text-gray-400",children:"Salida"}),(0,Ct.jsx)("div",{className:"rounded-lg p-3 border bg-green-500/10 dark:bg-black/40 border-green-500/30 dark:border-green-500/20",children:d.map((x,k)=>(0,Ct.jsx)(oe.div,{initial:{opacity:0,x:-10},animate:{opacity:1,x:0},transition:{duration:.1},className:"text-sm font-mono text-green-700 dark:text-green-300",children:x},k))})]}),(p.length>0||o)&&(0,Ct.jsxs)("div",{className:"space-y-1",children:[(0,Ct.jsx)("div",{className:"text-xs font-medium uppercase tracking-wide text-red-600 dark:text-red-400",children:"Errores"}),(0,Ct.jsxs)("div",{className:"rounded-lg p-3 border bg-red-500/10 dark:bg-black/40 border-red-500/30 dark:border-red-500/20",children:[o&&(0,Ct.jsx)("div",{className:"text-sm font-mono mb-2 text-red-600 dark:text-red-300",children:o}),p.map((x,k)=>(0,Ct.jsx)(oe.div,{initial:{opacity:0,x:-10},animate:{opacity:1,x:0},transition:{duration:.1},className:"text-sm font-mono text-red-600 dark:text-red-300",children:x},k))]})]}),a.length>0&&(0,Ct.jsxs)("div",{className:"space-y-1",children:[(0,Ct.jsxs)("div",{className:"text-xs font-medium uppercase tracking-wide text-gray-600 dark:text-gray-400",children:["Visualizaciones (",a.length,")"]}),(0,Ct.jsx)("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-2",children:a.map((x,k)=>(0,Ct.jsx)(oe.div,{initial:{opacity:0},animate:{opacity:1},transition:{duration:.2,delay:k*.1},className:"rounded-lg border overflow-hidden border-[#FFB347]/20 dark:border-white/10 bg-white dark:bg-white",children:(0,Ct.jsx)("img",{src:x,alt:`Plot ${k+1}`,className:"w-full h-auto"})},k))})]})]})})})]})},sV=Vye;c();var Ld=L(ae());var Ma=L(ee());function dS({status:e="loading",text:t,result:r,args:a,avatarUrl:n,agentName:o,isStreaming:i=!1,hadLoadingPhase:s=!1,onTransitionComplete:l}){let[u,d]=(0,Ld.useState)(!1),f=(0,Ld.useRef)(Date.now()),[p,m]=(0,Ld.useState)(0),h=n||r?.data?.avatarUrl||r?.avatarUrl||r?.url||r?.image_url,b=o||r?.data?.agentName||r?.agentName||a?.agentName||a?.name,w=h?"complete":e==="in_progress"?"loading":e,v=s,{displayStatus:x}=fm({status:w,hadLoadingPhase:v,onTransitionComplete:l,minLoadingTime:500});return(0,Ld.useEffect)(()=>{if(x==="loading"){f.current=Date.now();let k=setInterval(()=>{m(Date.now()-f.current)},100);return()=>clearInterval(k)}else x==="complete"&&m(Date.now()-f.current)},[x]),x==="error"?(0,Ma.jsxs)(oe.div,{initial:{opacity:0,y:10},animate:{opacity:1,y:0},className:"my-2 flex items-center gap-2 px-3 py-2 rounded-lg bg-red-50 dark:bg-red-950/20 border border-red-200 dark:border-red-800/30",children:[(0,Ma.jsx)(Bl,{className:"w-4 h-4 text-red-600 dark:text-red-400 flex-shrink-0"}),(0,Ma.jsx)("span",{className:"text-sm text-red-600 dark:text-red-400",children:t||"No se pudo generar el avatar"})]}):x==="loading"||!h&&(e==="loading"||e==="in_progress")?(0,Ma.jsxs)(oe.div,{initial:{opacity:0,y:10},animate:{opacity:1,y:0},className:"my-2 ml-3 flex items-center justify-between gap-3 px-3 py-2 rounded-lg bg-[#FFB347]/5 dark:bg-[#FFB347]/5 border border-[#FFB347]/30 dark:border-[#FFB347]/30",children:[(0,Ma.jsxs)("div",{className:"flex items-center gap-2",children:[(0,Ma.jsx)(oe.div,{animate:{rotate:360},transition:{duration:1,repeat:1/0,ease:"linear"},children:(0,Ma.jsx)(Cn,{className:"w-4 h-4 text-[#FFB347] dark:text-[#FFB347]"})}),(0,Ma.jsx)("span",{className:"text-sm font-medium text-[#FF6B35] dark:text-[#FFB347]",children:t||"Generando avatar..."})]}),(0,Ma.jsxs)("span",{className:"text-xs text-[#FFB347] dark:text-[#FFB347]",children:[(p/1e3).toFixed(1),"s"]})]}):h?(0,Ma.jsxs)(oe.div,{className:"relative w-28 h-28 rounded-2xl overflow-hidden border-2 border-[#FFB347]/40 dark:border-[#FFB347]/40 my-2 ml-3",initial:{opacity:0,scale:.8},animate:{opacity:1,scale:1},transition:{type:"spring",stiffness:200},children:[(0,Ma.jsx)(wt,{children:!u&&(0,Ma.jsx)(oe.div,{initial:{opacity:1},exit:{opacity:0},className:"absolute inset-0 flex items-center justify-center bg-[#FFB347]/10 dark:bg-[#FFB347]/10",children:(0,Ma.jsx)(oe.div,{animate:{rotate:360},transition:{duration:1,repeat:1/0,ease:"linear"},children:(0,Ma.jsx)(Ke,{className:"w-8 h-8 text-[#FFB347] dark:text-[#FFB347]"})})})}),(0,Ma.jsx)(oe.img,{src:h,alt:b?`Avatar de ${b}`:"Avatar profesional",className:"w-full h-full object-cover",onLoad:()=>d(!0),initial:{opacity:0},animate:{opacity:u?1:0},transition:{duration:.3}})]}):null}c();c();var Qs=L(ae()),mm=({status:e,hadLoadingPhase:t,durationMs:r,isStreaming:a=!1,toolName:n,onTransitionComplete:o,minLoadingTime:i=0})=>{let[s,l]=(0,Qs.useState)(e),[u,d]=(0,Qs.useState)(0),f=(0,Qs.useRef)(Date.now()),p=(0,Qs.useRef)(!1);(0,Qs.useEffect)(()=>{if(r!==void 0){d(r);return}if(!p.current&&(s==="loading"||t)&&(f.current=Date.now(),p.current=!0),s==="loading"){let h=setInterval(()=>{d(Date.now()-f.current)},100);return()=>clearInterval(h)}else if(s==="complete"&&p.current){let h=Date.now()-f.current;d(h)}},[s,t,r]),(0,Qs.useEffect)(()=>{if(e==="loading"){l("loading");return}if(!a){l(e),o?.();return}if(t&&e!=="loading"){let h=Date.now()-f.current,b=Math.max(0,i-h);if(b>0){let w=setTimeout(()=>{l(e),o?.()},b);return()=>clearTimeout(w)}else l(e),o?.()}},[e,a,t,i,o]);let m=(u/1e3).toFixed(1);return{displayStatus:s,formattedTime:m,elapsedTime:u}};c();c();var lV=L(ae());var bn=L(ee()),Nd=({status:e,title:t,icon:r,color:a="neutral",elapsedTime:n,badge:o,children:i,defaultOpen:s=!1})=>{let[l,u]=(0,lV.useState)(s);return(0,bn.jsx)("div",{className:"w-full my-1.5",children:(0,bn.jsxs)(oe.div,{initial:!1,className:"rounded-md border border-gray-200 dark:border-gray-700 bg-white dark:bg-neutral-800 overflow-hidden",children:[(0,bn.jsxs)(oe.div,{className:"flex items-center gap-2 px-2.5 py-1.5 cursor-pointer hover:bg-gray-50 dark:hover:bg-neutral-750 transition-colors",onClick:()=>u(!l),children:[e==="loading"?(0,bn.jsx)(Ke,{className:"w-3.5 h-3.5 text-gray-400 animate-spin flex-shrink-0"}):(0,bn.jsx)(r,{className:"w-3.5 h-3.5 text-gray-400 flex-shrink-0"}),(0,bn.jsx)("span",{className:"text-xs font-medium text-gray-600 dark:text-gray-300 flex-1",children:t}),o&&(0,bn.jsx)("div",{className:"flex items-center gap-1.5 text-[10px]",children:o}),n&&(0,bn.jsxs)("span",{className:"text-[10px] text-gray-400",children:[n,"s"]}),(0,bn.jsx)(oe.div,{animate:{rotate:l?180:0},transition:{duration:.2,ease:"easeOut"},children:(0,bn.jsx)(qt,{className:"w-3.5 h-3.5 text-gray-400 flex-shrink-0"})})]}),(0,bn.jsx)(wt,{initial:!1,children:l&&(0,bn.jsx)(oe.div,{initial:{opacity:0,height:0},animate:{opacity:1,height:"auto"},exit:{opacity:0,height:0},transition:{duration:.25,ease:[.04,.62,.23,.98]},className:"border-t border-gray-100 dark:border-gray-700",children:(0,bn.jsx)("div",{className:"px-2.5 py-2 bg-gray-50/50 dark:bg-neutral-850",children:i})})})]})})};c();var uV=L(ee());c();c();c();var dt=e=>typeof e=="string",yb=()=>{let e,t,r=new Promise((a,n)=>{e=a,t=n});return r.resolve=e,r.reject=t,r},cV=e=>e==null?"":""+e,Gye=(e,t,r)=>{e.forEach(a=>{t[a]&&(r[a]=t[a])})},Wye=/###/g,dV=e=>e&&e.indexOf("###")>-1?e.replace(Wye,"."):e,fV=e=>!e||dt(e),vb=(e,t,r)=>{let a=dt(t)?t.split("."):t,n=0;for(;n<a.length-1;){if(fV(e))return{};let o=dV(a[n]);!e[o]&&r&&(e[o]=new r),Object.prototype.hasOwnProperty.call(e,o)?e=e[o]:e={},++n}return fV(e)?{}:{obj:e,k:dV(a[n])}},pV=(e,t,r)=>{let{obj:a,k:n}=vb(e,t,Object);if(a!==void 0||t.length===1){a[n]=r;return}let o=t[t.length-1],i=t.slice(0,t.length-1),s=vb(e,i,Object);for(;s.obj===void 0&&i.length;)o=`${i[i.length-1]}.${o}`,i=i.slice(0,i.length-1),s=vb(e,i,Object),s&&s.obj&&typeof s.obj[`${s.k}.${o}`]<"u"&&(s.obj=void 0);s.obj[`${s.k}.${o}`]=r},Zye=(e,t,r,a)=>{let{obj:n,k:o}=vb(e,t,Object);n[o]=n[o]||[],n[o].push(r)},pS=(e,t)=>{let{obj:r,k:a}=vb(e,t);if(r)return r[a]},Yye=(e,t,r)=>{let a=pS(e,r);return a!==void 0?a:pS(t,r)},vV=(e,t,r)=>{for(let a in t)a!=="__proto__"&&a!=="constructor"&&(a in e?dt(e[a])||e[a]instanceof String||dt(t[a])||t[a]instanceof String?r&&(e[a]=t[a]):vV(e[a],t[a],r):e[a]=t[a]);return e},gm=e=>e.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&"),Kye={"&":"&","<":"<",">":">",'"':""","'":"'","/":"/"},Xye=e=>dt(e)?e.replace(/[&<>"'\/]/g,t=>Kye[t]):e,H4=class{constructor(t){this.capacity=t,this.regExpMap=new Map,this.regExpQueue=[]}getRegExp(t){let r=this.regExpMap.get(t);if(r!==void 0)return r;let a=new RegExp(t);return this.regExpQueue.length===this.capacity&&this.regExpMap.delete(this.regExpQueue.shift()),this.regExpMap.set(t,a),this.regExpQueue.push(t),a}},Jye=[" ",",","?","!",";"],Qye=new H4(20),eve=(e,t,r)=>{t=t||"",r=r||"";let a=Jye.filter(i=>t.indexOf(i)<0&&r.indexOf(i)<0);if(a.length===0)return!0;let n=Qye.getRegExp(`(${a.map(i=>i==="?"?"\\?":i).join("|")})`),o=!n.test(e);if(!o){let i=e.indexOf(r);i>0&&!n.test(e.substring(0,i))&&(o=!0)}return o},q4=function(e,t){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:".";if(!e)return;if(e[t])return e[t];let a=t.split(r),n=e;for(let o=0;o<a.length;){if(!n||typeof n!="object")return;let i,s="";for(let l=o;l<a.length;++l)if(l!==o&&(s+=r),s+=a[l],i=n[s],i!==void 0){if(["string","number","boolean"].indexOf(typeof i)>-1&&l<a.length-1)continue;o+=l-o+1;break}n=i}return n},mS=e=>e&&e.replace("_","-"),tve={type:"logger",log(e){this.output("log",e)},warn(e){this.output("warn",e)},error(e){this.output("error",e)},output(e,t){console&&console[e]&&console[e].apply(console,t)}},V4=class e{constructor(t){let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};this.init(t,r)}init(t){let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};this.prefix=r.prefix||"i18next:",this.logger=t||tve,this.options=r,this.debug=r.debug}log(){for(var t=arguments.length,r=new Array(t),a=0;a<t;a++)r[a]=arguments[a];return this.forward(r,"log","",!0)}warn(){for(var t=arguments.length,r=new Array(t),a=0;a<t;a++)r[a]=arguments[a];return this.forward(r,"warn","",!0)}error(){for(var t=arguments.length,r=new Array(t),a=0;a<t;a++)r[a]=arguments[a];return this.forward(r,"error","")}deprecate(){for(var t=arguments.length,r=new Array(t),a=0;a<t;a++)r[a]=arguments[a];return this.forward(r,"warn","WARNING DEPRECATED: ",!0)}forward(t,r,a,n){return n&&!this.debug?null:(dt(t[0])&&(t[0]=`${a}${this.prefix} ${t[0]}`),this.logger[r](t))}create(t){return new e(this.logger,{prefix:`${this.prefix}:${t}:`,...this.options})}clone(t){return t=t||this.options,t.prefix=t.prefix||this.prefix,new e(this.logger,t)}},is=new V4,bm=class{constructor(){this.observers={}}on(t,r){return t.split(" ").forEach(a=>{this.observers[a]||(this.observers[a]=new Map);let n=this.observers[a].get(r)||0;this.observers[a].set(r,n+1)}),this}off(t,r){if(this.observers[t]){if(!r){delete this.observers[t];return}this.observers[t].delete(r)}}emit(t){for(var r=arguments.length,a=new Array(r>1?r-1:0),n=1;n<r;n++)a[n-1]=arguments[n];this.observers[t]&&Array.from(this.observers[t].entries()).forEach(i=>{let[s,l]=i;for(let u=0;u<l;u++)s(...a)}),this.observers["*"]&&Array.from(this.observers["*"].entries()).forEach(i=>{let[s,l]=i;for(let u=0;u<l;u++)s.apply(s,[t,...a])})}},gS=class extends bm{constructor(t){let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{ns:["translation"],defaultNS:"translation"};super(),this.data=t||{},this.options=r,this.options.keySeparator===void 0&&(this.options.keySeparator="."),this.options.ignoreJSONStructure===void 0&&(this.options.ignoreJSONStructure=!0)}addNamespaces(t){this.options.ns.indexOf(t)<0&&this.options.ns.push(t)}removeNamespaces(t){let r=this.options.ns.indexOf(t);r>-1&&this.options.ns.splice(r,1)}getResource(t,r,a){let n=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{},o=n.keySeparator!==void 0?n.keySeparator:this.options.keySeparator,i=n.ignoreJSONStructure!==void 0?n.ignoreJSONStructure:this.options.ignoreJSONStructure,s;t.indexOf(".")>-1?s=t.split("."):(s=[t,r],a&&(Array.isArray(a)?s.push(...a):dt(a)&&o?s.push(...a.split(o)):s.push(a)));let l=pS(this.data,s);return!l&&!r&&!a&&t.indexOf(".")>-1&&(t=s[0],r=s[1],a=s.slice(2).join(".")),l||!i||!dt(a)?l:q4(this.data&&this.data[t]&&this.data[t][r],a,o)}addResource(t,r,a,n){let o=arguments.length>4&&arguments[4]!==void 0?arguments[4]:{silent:!1},i=o.keySeparator!==void 0?o.keySeparator:this.options.keySeparator,s=[t,r];a&&(s=s.concat(i?a.split(i):a)),t.indexOf(".")>-1&&(s=t.split("."),n=r,r=s[1]),this.addNamespaces(r),pV(this.data,s,n),o.silent||this.emit("added",t,r,a,n)}addResources(t,r,a){let n=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{silent:!1};for(let o in a)(dt(a[o])||Array.isArray(a[o]))&&this.addResource(t,r,o,a[o],{silent:!0});n.silent||this.emit("added",t,r,a)}addResourceBundle(t,r,a,n,o){let i=arguments.length>5&&arguments[5]!==void 0?arguments[5]:{silent:!1,skipCopy:!1},s=[t,r];t.indexOf(".")>-1&&(s=t.split("."),n=a,a=r,r=s[1]),this.addNamespaces(r);let l=pS(this.data,s)||{};i.skipCopy||(a=JSON.parse(JSON.stringify(a))),n?vV(l,a,o):l={...l,...a},pV(this.data,s,l),i.silent||this.emit("added",t,r,a)}removeResourceBundle(t,r){this.hasResourceBundle(t,r)&&delete this.data[t][r],this.removeNamespaces(r),this.emit("removed",t,r)}hasResourceBundle(t,r){return this.getResource(t,r)!==void 0}getResourceBundle(t,r){return r||(r=this.options.defaultNS),this.options.compatibilityAPI==="v1"?{...this.getResource(t,r)}:this.getResource(t,r)}getDataByLanguage(t){return this.data[t]}hasLanguageSomeTranslations(t){let r=this.getDataByLanguage(t);return!!(r&&Object.keys(r)||[]).find(n=>r[n]&&Object.keys(r[n]).length>0)}toJSON(){return this.data}},xV={processors:{},addPostProcessor(e){this.processors[e.name]=e},handle(e,t,r,a,n){return e.forEach(o=>{this.processors[o]&&(t=this.processors[o].process(t,r,a,n))}),t}},mV={},hS=class e extends bm{constructor(t){let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};super(),Gye(["resourceStore","languageUtils","pluralResolver","interpolator","backendConnector","i18nFormat","utils"],t,this),this.options=r,this.options.keySeparator===void 0&&(this.options.keySeparator="."),this.logger=is.create("translator")}changeLanguage(t){t&&(this.language=t)}exists(t){let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{interpolation:{}};if(t==null)return!1;let a=this.resolve(t,r);return a&&a.res!==void 0}extractFromKey(t,r){let a=r.nsSeparator!==void 0?r.nsSeparator:this.options.nsSeparator;a===void 0&&(a=":");let n=r.keySeparator!==void 0?r.keySeparator:this.options.keySeparator,o=r.ns||this.options.defaultNS||[],i=a&&t.indexOf(a)>-1,s=!this.options.userDefinedKeySeparator&&!r.keySeparator&&!this.options.userDefinedNsSeparator&&!r.nsSeparator&&!eve(t,a,n);if(i&&!s){let l=t.match(this.interpolator.nestingRegexp);if(l&&l.length>0)return{key:t,namespaces:dt(o)?[o]:o};let u=t.split(a);(a!==n||a===n&&this.options.ns.indexOf(u[0])>-1)&&(o=u.shift()),t=u.join(n)}return{key:t,namespaces:dt(o)?[o]:o}}translate(t,r,a){if(typeof r!="object"&&this.options.overloadTranslationOptionHandler&&(r=this.options.overloadTranslationOptionHandler(arguments)),typeof r=="object"&&(r={...r}),r||(r={}),t==null)return"";Array.isArray(t)||(t=[String(t)]);let n=r.returnDetails!==void 0?r.returnDetails:this.options.returnDetails,o=r.keySeparator!==void 0?r.keySeparator:this.options.keySeparator,{key:i,namespaces:s}=this.extractFromKey(t[t.length-1],r),l=s[s.length-1],u=r.lng||this.language,d=r.appendNamespaceToCIMode||this.options.appendNamespaceToCIMode;if(u&&u.toLowerCase()==="cimode"){if(d){let S=r.nsSeparator||this.options.nsSeparator;return n?{res:`${l}${S}${i}`,usedKey:i,exactUsedKey:i,usedLng:u,usedNS:l,usedParams:this.getUsedParamsDetails(r)}:`${l}${S}${i}`}return n?{res:i,usedKey:i,exactUsedKey:i,usedLng:u,usedNS:l,usedParams:this.getUsedParamsDetails(r)}:i}let f=this.resolve(t,r),p=f&&f.res,m=f&&f.usedKey||i,h=f&&f.exactUsedKey||i,b=Object.prototype.toString.apply(p),w=["[object Number]","[object Function]","[object RegExp]"],v=r.joinArrays!==void 0?r.joinArrays:this.options.joinArrays,x=!this.i18nFormat||this.i18nFormat.handleAsObject,k=!dt(p)&&typeof p!="boolean"&&typeof p!="number";if(x&&p&&k&&w.indexOf(b)<0&&!(dt(v)&&Array.isArray(p))){if(!r.returnObjects&&!this.options.returnObjects){this.options.returnedObjectHandler||this.logger.warn("accessing an object - but returnObjects options is not enabled!");let S=this.options.returnedObjectHandler?this.options.returnedObjectHandler(m,p,{...r,ns:s}):`key '${i} (${this.language})' returned an object instead of string.`;return n?(f.res=S,f.usedParams=this.getUsedParamsDetails(r),f):S}if(o){let S=Array.isArray(p),T=S?[]:{},C=S?h:m;for(let _ in p)if(Object.prototype.hasOwnProperty.call(p,_)){let R=`${C}${o}${_}`;T[_]=this.translate(R,{...r,joinArrays:!1,ns:s}),T[_]===R&&(T[_]=p[_])}p=T}}else if(x&&dt(v)&&Array.isArray(p))p=p.join(v),p&&(p=this.extendTranslation(p,t,r,a));else{let S=!1,T=!1,C=r.count!==void 0&&!dt(r.count),_=e.hasDefaultValue(r),R=C?this.pluralResolver.getSuffix(u,r.count,r):"",F=r.ordinal&&C?this.pluralResolver.getSuffix(u,r.count,{ordinal:!1}):"",D=C&&!r.ordinal&&r.count===0&&this.pluralResolver.shouldUseIntlApi(),ie=D&&r[`defaultValue${this.options.pluralSeparator}zero`]||r[`defaultValue${R}`]||r[`defaultValue${F}`]||r.defaultValue;!this.isValidLookup(p)&&_&&(S=!0,p=ie),this.isValidLookup(p)||(T=!0,p=i);let U=(r.missingKeyNoValueFallbackToKey||this.options.missingKeyNoValueFallbackToKey)&&T?void 0:p,N=_&&ie!==p&&this.options.updateMissing;if(T||S||N){if(this.logger.log(N?"updateKey":"missingKey",u,l,i,N?ie:p),o){let j=this.resolve(i,{...r,keySeparator:!1});j&&j.res&&this.logger.warn("Seems the loaded translations were in flat JSON format instead of nested. Either set keySeparator: false on init or make sure your translations are published in nested format.")}let H=[],V=this.languageUtils.getFallbackCodes(this.options.fallbackLng,r.lng||this.language);if(this.options.saveMissingTo==="fallback"&&V&&V[0])for(let j=0;j<V.length;j++)H.push(V[j]);else this.options.saveMissingTo==="all"?H=this.languageUtils.toResolveHierarchy(r.lng||this.language):H.push(r.lng||this.language);let G=(j,Z,A)=>{let he=_&&A!==p?A:U;this.options.missingKeyHandler?this.options.missingKeyHandler(j,l,Z,he,N,r):this.backendConnector&&this.backendConnector.saveMissing&&this.backendConnector.saveMissing(j,l,Z,he,N,r),this.emit("missingKey",j,l,Z,p)};this.options.saveMissing&&(this.options.saveMissingPlurals&&C?H.forEach(j=>{let Z=this.pluralResolver.getSuffixes(j,r);D&&r[`defaultValue${this.options.pluralSeparator}zero`]&&Z.indexOf(`${this.options.pluralSeparator}zero`)<0&&Z.push(`${this.options.pluralSeparator}zero`),Z.forEach(A=>{G([j],i+A,r[`defaultValue${A}`]||ie)})}):G(H,i,ie))}p=this.extendTranslation(p,t,r,f,a),T&&p===i&&this.options.appendNamespaceToMissingKey&&(p=`${l}:${i}`),(T||S)&&this.options.parseMissingKeyHandler&&(this.options.compatibilityAPI!=="v1"?p=this.options.parseMissingKeyHandler(this.options.appendNamespaceToMissingKey?`${l}:${i}`:i,S?p:void 0):p=this.options.parseMissingKeyHandler(p))}return n?(f.res=p,f.usedParams=this.getUsedParamsDetails(r),f):p}extendTranslation(t,r,a,n,o){var i=this;if(this.i18nFormat&&this.i18nFormat.parse)t=this.i18nFormat.parse(t,{...this.options.interpolation.defaultVariables,...a},a.lng||this.language||n.usedLng,n.usedNS,n.usedKey,{resolved:n});else if(!a.skipInterpolation){a.interpolation&&this.interpolator.init({...a,interpolation:{...this.options.interpolation,...a.interpolation}});let u=dt(t)&&(a&&a.interpolation&&a.interpolation.skipOnVariables!==void 0?a.interpolation.skipOnVariables:this.options.interpolation.skipOnVariables),d;if(u){let p=t.match(this.interpolator.nestingRegexp);d=p&&p.length}let f=a.replace&&!dt(a.replace)?a.replace:a;if(this.options.interpolation.defaultVariables&&(f={...this.options.interpolation.defaultVariables,...f}),t=this.interpolator.interpolate(t,f,a.lng||this.language||n.usedLng,a),u){let p=t.match(this.interpolator.nestingRegexp),m=p&&p.length;d<m&&(a.nest=!1)}!a.lng&&this.options.compatibilityAPI!=="v1"&&n&&n.res&&(a.lng=this.language||n.usedLng),a.nest!==!1&&(t=this.interpolator.nest(t,function(){for(var p=arguments.length,m=new Array(p),h=0;h<p;h++)m[h]=arguments[h];return o&&o[0]===m[0]&&!a.context?(i.logger.warn(`It seems you are nesting recursively key: ${m[0]} in key: ${r[0]}`),null):i.translate(...m,r)},a)),a.interpolation&&this.interpolator.reset()}let s=a.postProcess||this.options.postProcess,l=dt(s)?[s]:s;return t!=null&&l&&l.length&&a.applyPostProcessor!==!1&&(t=xV.handle(l,t,r,this.options&&this.options.postProcessPassResolved?{i18nResolved:{...n,usedParams:this.getUsedParamsDetails(a)},...a}:a,this)),t}resolve(t){let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},a,n,o,i,s;return dt(t)&&(t=[t]),t.forEach(l=>{if(this.isValidLookup(a))return;let u=this.extractFromKey(l,r),d=u.key;n=d;let f=u.namespaces;this.options.fallbackNS&&(f=f.concat(this.options.fallbackNS));let p=r.count!==void 0&&!dt(r.count),m=p&&!r.ordinal&&r.count===0&&this.pluralResolver.shouldUseIntlApi(),h=r.context!==void 0&&(dt(r.context)||typeof r.context=="number")&&r.context!=="",b=r.lngs?r.lngs:this.languageUtils.toResolveHierarchy(r.lng||this.language,r.fallbackLng);f.forEach(w=>{this.isValidLookup(a)||(s=w,!mV[`${b[0]}-${w}`]&&this.utils&&this.utils.hasLoadedNamespace&&!this.utils.hasLoadedNamespace(s)&&(mV[`${b[0]}-${w}`]=!0,this.logger.warn(`key "${n}" for languages "${b.join(", ")}" won't get resolved as namespace "${s}" was not yet loaded`,"This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!")),b.forEach(v=>{if(this.isValidLookup(a))return;i=v;let x=[d];if(this.i18nFormat&&this.i18nFormat.addLookupKeys)this.i18nFormat.addLookupKeys(x,d,v,w,r);else{let S;p&&(S=this.pluralResolver.getSuffix(v,r.count,r));let T=`${this.options.pluralSeparator}zero`,C=`${this.options.pluralSeparator}ordinal${this.options.pluralSeparator}`;if(p&&(x.push(d+S),r.ordinal&&S.indexOf(C)===0&&x.push(d+S.replace(C,this.options.pluralSeparator)),m&&x.push(d+T)),h){let _=`${d}${this.options.contextSeparator}${r.context}`;x.push(_),p&&(x.push(_+S),r.ordinal&&S.indexOf(C)===0&&x.push(_+S.replace(C,this.options.pluralSeparator)),m&&x.push(_+T))}}let k;for(;k=x.pop();)this.isValidLookup(a)||(o=k,a=this.getResource(v,w,k,r))}))})}),{res:a,usedKey:n,exactUsedKey:o,usedLng:i,usedNS:s}}isValidLookup(t){return t!==void 0&&!(!this.options.returnNull&&t===null)&&!(!this.options.returnEmptyString&&t==="")}getResource(t,r,a){let n=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{};return this.i18nFormat&&this.i18nFormat.getResource?this.i18nFormat.getResource(t,r,a,n):this.resourceStore.getResource(t,r,a,n)}getUsedParamsDetails(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},r=["defaultValue","ordinal","context","replace","lng","lngs","fallbackLng","ns","keySeparator","nsSeparator","returnObjects","returnDetails","joinArrays","postProcess","interpolation"],a=t.replace&&!dt(t.replace),n=a?t.replace:t;if(a&&typeof t.count<"u"&&(n.count=t.count),this.options.interpolation.defaultVariables&&(n={...this.options.interpolation.defaultVariables,...n}),!a){n={...n};for(let o of r)delete n[o]}return n}static hasDefaultValue(t){let r="defaultValue";for(let a in t)if(Object.prototype.hasOwnProperty.call(t,a)&&r===a.substring(0,r.length)&&t[a]!==void 0)return!0;return!1}},$4=e=>e.charAt(0).toUpperCase()+e.slice(1),bS=class{constructor(t){this.options=t,this.supportedLngs=this.options.supportedLngs||!1,this.logger=is.create("languageUtils")}getScriptPartFromCode(t){if(t=mS(t),!t||t.indexOf("-")<0)return null;let r=t.split("-");return r.length===2||(r.pop(),r[r.length-1].toLowerCase()==="x")?null:this.formatLanguageCode(r.join("-"))}getLanguagePartFromCode(t){if(t=mS(t),!t||t.indexOf("-")<0)return t;let r=t.split("-");return this.formatLanguageCode(r[0])}formatLanguageCode(t){if(dt(t)&&t.indexOf("-")>-1){if(typeof Intl<"u"&&typeof Intl.getCanonicalLocales<"u")try{let n=Intl.getCanonicalLocales(t)[0];if(n&&this.options.lowerCaseLng&&(n=n.toLowerCase()),n)return n}catch{}let r=["hans","hant","latn","cyrl","cans","mong","arab"],a=t.split("-");return this.options.lowerCaseLng?a=a.map(n=>n.toLowerCase()):a.length===2?(a[0]=a[0].toLowerCase(),a[1]=a[1].toUpperCase(),r.indexOf(a[1].toLowerCase())>-1&&(a[1]=$4(a[1].toLowerCase()))):a.length===3&&(a[0]=a[0].toLowerCase(),a[1].length===2&&(a[1]=a[1].toUpperCase()),a[0]!=="sgn"&&a[2].length===2&&(a[2]=a[2].toUpperCase()),r.indexOf(a[1].toLowerCase())>-1&&(a[1]=$4(a[1].toLowerCase())),r.indexOf(a[2].toLowerCase())>-1&&(a[2]=$4(a[2].toLowerCase()))),a.join("-")}return this.options.cleanCode||this.options.lowerCaseLng?t.toLowerCase():t}isSupportedCode(t){return(this.options.load==="languageOnly"||this.options.nonExplicitSupportedLngs)&&(t=this.getLanguagePartFromCode(t)),!this.supportedLngs||!this.supportedLngs.length||this.supportedLngs.indexOf(t)>-1}getBestMatchFromCodes(t){if(!t)return null;let r;return t.forEach(a=>{if(r)return;let n=this.formatLanguageCode(a);(!this.options.supportedLngs||this.isSupportedCode(n))&&(r=n)}),!r&&this.options.supportedLngs&&t.forEach(a=>{if(r)return;let n=this.getLanguagePartFromCode(a);if(this.isSupportedCode(n))return r=n;r=this.options.supportedLngs.find(o=>{if(o===n)return o;if(!(o.indexOf("-")<0&&n.indexOf("-")<0)&&(o.indexOf("-")>0&&n.indexOf("-")<0&&o.substring(0,o.indexOf("-"))===n||o.indexOf(n)===0&&n.length>1))return o})}),r||(r=this.getFallbackCodes(this.options.fallbackLng)[0]),r}getFallbackCodes(t,r){if(!t)return[];if(typeof t=="function"&&(t=t(r)),dt(t)&&(t=[t]),Array.isArray(t))return t;if(!r)return t.default||[];let a=t[r];return a||(a=t[this.getScriptPartFromCode(r)]),a||(a=t[this.formatLanguageCode(r)]),a||(a=t[this.getLanguagePartFromCode(r)]),a||(a=t.default),a||[]}toResolveHierarchy(t,r){let a=this.getFallbackCodes(r||this.options.fallbackLng||[],t),n=[],o=i=>{i&&(this.isSupportedCode(i)?n.push(i):this.logger.warn(`rejecting language code not found in supportedLngs: ${i}`))};return dt(t)&&(t.indexOf("-")>-1||t.indexOf("_")>-1)?(this.options.load!=="languageOnly"&&o(this.formatLanguageCode(t)),this.options.load!=="languageOnly"&&this.options.load!=="currentOnly"&&o(this.getScriptPartFromCode(t)),this.options.load!=="currentOnly"&&o(this.getLanguagePartFromCode(t))):dt(t)&&o(this.formatLanguageCode(t)),a.forEach(i=>{n.indexOf(i)<0&&o(this.formatLanguageCode(i))}),n}},rve=[{lngs:["ach","ak","am","arn","br","fil","gun","ln","mfe","mg","mi","oc","pt","pt-BR","tg","tl","ti","tr","uz","wa"],nr:[1,2],fc:1},{lngs:["af","an","ast","az","bg","bn","ca","da","de","dev","el","en","eo","es","et","eu","fi","fo","fur","fy","gl","gu","ha","hi","hu","hy","ia","it","kk","kn","ku","lb","mai","ml","mn","mr","nah","nap","nb","ne","nl","nn","no","nso","pa","pap","pms","ps","pt-PT","rm","sco","se","si","so","son","sq","sv","sw","ta","te","tk","ur","yo"],nr:[1,2],fc:2},{lngs:["ay","bo","cgg","fa","ht","id","ja","jbo","ka","km","ko","ky","lo","ms","sah","su","th","tt","ug","vi","wo","zh"],nr:[1],fc:3},{lngs:["be","bs","cnr","dz","hr","ru","sr","uk"],nr:[1,2,5],fc:4},{lngs:["ar"],nr:[0,1,2,3,11,100],fc:5},{lngs:["cs","sk"],nr:[1,2,5],fc:6},{lngs:["csb","pl"],nr:[1,2,5],fc:7},{lngs:["cy"],nr:[1,2,3,8],fc:8},{lngs:["fr"],nr:[1,2],fc:9},{lngs:["ga"],nr:[1,2,3,7,11],fc:10},{lngs:["gd"],nr:[1,2,3,20],fc:11},{lngs:["is"],nr:[1,2],fc:12},{lngs:["jv"],nr:[0,1],fc:13},{lngs:["kw"],nr:[1,2,3,4],fc:14},{lngs:["lt"],nr:[1,2,10],fc:15},{lngs:["lv"],nr:[1,2,0],fc:16},{lngs:["mk"],nr:[1,2],fc:17},{lngs:["mnk"],nr:[0,1,2],fc:18},{lngs:["mt"],nr:[1,2,11,20],fc:19},{lngs:["or"],nr:[2,1],fc:2},{lngs:["ro"],nr:[1,2,20],fc:20},{lngs:["sl"],nr:[5,1,2,3],fc:21},{lngs:["he","iw"],nr:[1,2,20,21],fc:22}],ave={1:e=>+(e>1),2:e=>+(e!=1),3:e=>0,4:e=>e%10==1&&e%100!=11?0:e%10>=2&&e%10<=4&&(e%100<10||e%100>=20)?1:2,5:e=>e==0?0:e==1?1:e==2?2:e%100>=3&&e%100<=10?3:e%100>=11?4:5,6:e=>e==1?0:e>=2&&e<=4?1:2,7:e=>e==1?0:e%10>=2&&e%10<=4&&(e%100<10||e%100>=20)?1:2,8:e=>e==1?0:e==2?1:e!=8&&e!=11?2:3,9:e=>+(e>=2),10:e=>e==1?0:e==2?1:e<7?2:e<11?3:4,11:e=>e==1||e==11?0:e==2||e==12?1:e>2&&e<20?2:3,12:e=>+(e%10!=1||e%100==11),13:e=>+(e!==0),14:e=>e==1?0:e==2?1:e==3?2:3,15:e=>e%10==1&&e%100!=11?0:e%10>=2&&(e%100<10||e%100>=20)?1:2,16:e=>e%10==1&&e%100!=11?0:e!==0?1:2,17:e=>e==1||e%10==1&&e%100!=11?0:1,18:e=>e==0?0:e==1?1:2,19:e=>e==1?0:e==0||e%100>1&&e%100<11?1:e%100>10&&e%100<20?2:3,20:e=>e==1?0:e==0||e%100>0&&e%100<20?1:2,21:e=>e%100==1?1:e%100==2?2:e%100==3||e%100==4?3:0,22:e=>e==1?0:e==2?1:(e<0||e>10)&&e%10==0?2:3},nve=["v1","v2","v3"],ove=["v4"],gV={zero:0,one:1,two:2,few:3,many:4,other:5},ive=()=>{let e={};return rve.forEach(t=>{t.lngs.forEach(r=>{e[r]={numbers:t.nr,plurals:ave[t.fc]}})}),e},G4=class{constructor(t){let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};this.languageUtils=t,this.options=r,this.logger=is.create("pluralResolver"),(!this.options.compatibilityJSON||ove.includes(this.options.compatibilityJSON))&&(typeof Intl>"u"||!Intl.PluralRules)&&(this.options.compatibilityJSON="v3",this.logger.error("Your environment seems not to be Intl API compatible, use an Intl.PluralRules polyfill. Will fallback to the compatibilityJSON v3 format handling.")),this.rules=ive(),this.pluralRulesCache={}}addRule(t,r){this.rules[t]=r}clearCache(){this.pluralRulesCache={}}getRule(t){let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(this.shouldUseIntlApi()){let a=mS(t==="dev"?"en":t),n=r.ordinal?"ordinal":"cardinal",o=JSON.stringify({cleanedCode:a,type:n});if(o in this.pluralRulesCache)return this.pluralRulesCache[o];let i;try{i=new Intl.PluralRules(a,{type:n})}catch{if(!t.match(/-|_/))return;let l=this.languageUtils.getLanguagePartFromCode(t);i=this.getRule(l,r)}return this.pluralRulesCache[o]=i,i}return this.rules[t]||this.rules[this.languageUtils.getLanguagePartFromCode(t)]}needsPlural(t){let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},a=this.getRule(t,r);return this.shouldUseIntlApi()?a&&a.resolvedOptions().pluralCategories.length>1:a&&a.numbers.length>1}getPluralFormsOfKey(t,r){let a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};return this.getSuffixes(t,a).map(n=>`${r}${n}`)}getSuffixes(t){let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},a=this.getRule(t,r);return a?this.shouldUseIntlApi()?a.resolvedOptions().pluralCategories.sort((n,o)=>gV[n]-gV[o]).map(n=>`${this.options.prepend}${r.ordinal?`ordinal${this.options.prepend}`:""}${n}`):a.numbers.map(n=>this.getSuffix(t,n,r)):[]}getSuffix(t,r){let a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},n=this.getRule(t,a);return n?this.shouldUseIntlApi()?`${this.options.prepend}${a.ordinal?`ordinal${this.options.prepend}`:""}${n.select(r)}`:this.getSuffixRetroCompatible(n,r):(this.logger.warn(`no plural rule found for: ${t}`),"")}getSuffixRetroCompatible(t,r){let a=t.noAbs?t.plurals(r):t.plurals(Math.abs(r)),n=t.numbers[a];this.options.simplifyPluralSuffix&&t.numbers.length===2&&t.numbers[0]===1&&(n===2?n="plural":n===1&&(n=""));let o=()=>this.options.prepend&&n.toString()?this.options.prepend+n.toString():n.toString();return this.options.compatibilityJSON==="v1"?n===1?"":typeof n=="number"?`_plural_${n.toString()}`:o():this.options.compatibilityJSON==="v2"||this.options.simplifyPluralSuffix&&t.numbers.length===2&&t.numbers[0]===1?o():this.options.prepend&&a.toString()?this.options.prepend+a.toString():a.toString()}shouldUseIntlApi(){return!nve.includes(this.options.compatibilityJSON)}},hV=function(e,t,r){let a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:".",n=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,o=Yye(e,t,r);return!o&&n&&dt(r)&&(o=q4(e,r,a),o===void 0&&(o=q4(t,r,a))),o},j4=e=>e.replace(/\$/g,"$$$$"),W4=class{constructor(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};this.logger=is.create("interpolator"),this.options=t,this.format=t.interpolation&&t.interpolation.format||(r=>r),this.init(t)}init(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};t.interpolation||(t.interpolation={escapeValue:!0});let{escape:r,escapeValue:a,useRawValueToEscape:n,prefix:o,prefixEscaped:i,suffix:s,suffixEscaped:l,formatSeparator:u,unescapeSuffix:d,unescapePrefix:f,nestingPrefix:p,nestingPrefixEscaped:m,nestingSuffix:h,nestingSuffixEscaped:b,nestingOptionsSeparator:w,maxReplaces:v,alwaysFormat:x}=t.interpolation;this.escape=r!==void 0?r:Xye,this.escapeValue=a!==void 0?a:!0,this.useRawValueToEscape=n!==void 0?n:!1,this.prefix=o?gm(o):i||"{{",this.suffix=s?gm(s):l||"}}",this.formatSeparator=u||",",this.unescapePrefix=d?"":f||"-",this.unescapeSuffix=this.unescapePrefix?"":d||"",this.nestingPrefix=p?gm(p):m||gm("$t("),this.nestingSuffix=h?gm(h):b||gm(")"),this.nestingOptionsSeparator=w||",",this.maxReplaces=v||1e3,this.alwaysFormat=x!==void 0?x:!1,this.resetRegExp()}reset(){this.options&&this.init(this.options)}resetRegExp(){let t=(r,a)=>r&&r.source===a?(r.lastIndex=0,r):new RegExp(a,"g");this.regexp=t(this.regexp,`${this.prefix}(.+?)${this.suffix}`),this.regexpUnescape=t(this.regexpUnescape,`${this.prefix}${this.unescapePrefix}(.+?)${this.unescapeSuffix}${this.suffix}`),this.nestingRegexp=t(this.nestingRegexp,`${this.nestingPrefix}(.+?)${this.nestingSuffix}`)}interpolate(t,r,a,n){let o,i,s,l=this.options&&this.options.interpolation&&this.options.interpolation.defaultVariables||{},u=m=>{if(m.indexOf(this.formatSeparator)<0){let v=hV(r,l,m,this.options.keySeparator,this.options.ignoreJSONStructure);return this.alwaysFormat?this.format(v,void 0,a,{...n,...r,interpolationkey:m}):v}let h=m.split(this.formatSeparator),b=h.shift().trim(),w=h.join(this.formatSeparator).trim();return this.format(hV(r,l,b,this.options.keySeparator,this.options.ignoreJSONStructure),w,a,{...n,...r,interpolationkey:b})};this.resetRegExp();let d=n&&n.missingInterpolationHandler||this.options.missingInterpolationHandler,f=n&&n.interpolation&&n.interpolation.skipOnVariables!==void 0?n.interpolation.skipOnVariables:this.options.interpolation.skipOnVariables;return[{regex:this.regexpUnescape,safeValue:m=>j4(m)},{regex:this.regexp,safeValue:m=>this.escapeValue?j4(this.escape(m)):j4(m)}].forEach(m=>{for(s=0;o=m.regex.exec(t);){let h=o[1].trim();if(i=u(h),i===void 0)if(typeof d=="function"){let w=d(t,o,n);i=dt(w)?w:""}else if(n&&Object.prototype.hasOwnProperty.call(n,h))i="";else if(f){i=o[0];continue}else this.logger.warn(`missed to pass in variable ${h} for interpolating ${t}`),i="";else!dt(i)&&!this.useRawValueToEscape&&(i=cV(i));let b=m.safeValue(i);if(t=t.replace(o[0],b),f?(m.regex.lastIndex+=i.length,m.regex.lastIndex-=o[0].length):m.regex.lastIndex=0,s++,s>=this.maxReplaces)break}}),t}nest(t,r){let a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},n,o,i,s=(l,u)=>{let d=this.nestingOptionsSeparator;if(l.indexOf(d)<0)return l;let f=l.split(new RegExp(`${d}[ ]*{`)),p=`{${f[1]}`;l=f[0],p=this.interpolate(p,i);let m=p.match(/'/g),h=p.match(/"/g);(m&&m.length%2===0&&!h||h.length%2!==0)&&(p=p.replace(/'/g,'"'));try{i=JSON.parse(p),u&&(i={...u,...i})}catch(b){return this.logger.warn(`failed parsing options string in nesting for key ${l}`,b),`${l}${d}${p}`}return i.defaultValue&&i.defaultValue.indexOf(this.prefix)>-1&&delete i.defaultValue,l};for(;n=this.nestingRegexp.exec(t);){let l=[];i={...a},i=i.replace&&!dt(i.replace)?i.replace:i,i.applyPostProcessor=!1,delete i.defaultValue;let u=!1;if(n[0].indexOf(this.formatSeparator)!==-1&&!/{.*}/.test(n[1])){let d=n[1].split(this.formatSeparator).map(f=>f.trim());n[1]=d.shift(),l=d,u=!0}if(o=r(s.call(this,n[1].trim(),i),i),o&&n[0]===t&&!dt(o))return o;dt(o)||(o=cV(o)),o||(this.logger.warn(`missed to resolve ${n[1]} for nesting ${t}`),o=""),u&&(o=l.reduce((d,f)=>this.format(d,f,a.lng,{...a,interpolationkey:n[1].trim()}),o.trim())),t=t.replace(n[0],o),this.regexp.lastIndex=0}return t}},sve=e=>{let t=e.toLowerCase().trim(),r={};if(e.indexOf("(")>-1){let a=e.split("(");t=a[0].toLowerCase().trim();let n=a[1].substring(0,a[1].length-1);t==="currency"&&n.indexOf(":")<0?r.currency||(r.currency=n.trim()):t==="relativetime"&&n.indexOf(":")<0?r.range||(r.range=n.trim()):n.split(";").forEach(i=>{if(i){let[s,...l]=i.split(":"),u=l.join(":").trim().replace(/^'+|'+$/g,""),d=s.trim();r[d]||(r[d]=u),u==="false"&&(r[d]=!1),u==="true"&&(r[d]=!0),isNaN(u)||(r[d]=parseInt(u,10))}})}return{formatName:t,formatOptions:r}},hm=e=>{let t={};return(r,a,n)=>{let o=n;n&&n.interpolationkey&&n.formatParams&&n.formatParams[n.interpolationkey]&&n[n.interpolationkey]&&(o={...o,[n.interpolationkey]:void 0});let i=a+JSON.stringify(o),s=t[i];return s||(s=e(mS(a),n),t[i]=s),s(r)}},Z4=class{constructor(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};this.logger=is.create("formatter"),this.options=t,this.formats={number:hm((r,a)=>{let n=new Intl.NumberFormat(r,{...a});return o=>n.format(o)}),currency:hm((r,a)=>{let n=new Intl.NumberFormat(r,{...a,style:"currency"});return o=>n.format(o)}),datetime:hm((r,a)=>{let n=new Intl.DateTimeFormat(r,{...a});return o=>n.format(o)}),relativetime:hm((r,a)=>{let n=new Intl.RelativeTimeFormat(r,{...a});return o=>n.format(o,a.range||"day")}),list:hm((r,a)=>{let n=new Intl.ListFormat(r,{...a});return o=>n.format(o)})},this.init(t)}init(t){let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{interpolation:{}};this.formatSeparator=r.interpolation.formatSeparator||","}add(t,r){this.formats[t.toLowerCase().trim()]=r}addCached(t,r){this.formats[t.toLowerCase().trim()]=hm(r)}format(t,r,a){let n=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{},o=r.split(this.formatSeparator);if(o.length>1&&o[0].indexOf("(")>1&&o[0].indexOf(")")<0&&o.find(s=>s.indexOf(")")>-1)){let s=o.findIndex(l=>l.indexOf(")")>-1);o[0]=[o[0],...o.splice(1,s)].join(this.formatSeparator)}return o.reduce((s,l)=>{let{formatName:u,formatOptions:d}=sve(l);if(this.formats[u]){let f=s;try{let p=n&&n.formatParams&&n.formatParams[n.interpolationkey]||{},m=p.locale||p.lng||n.locale||n.lng||a;f=this.formats[u](s,m,{...d,...n,...p})}catch(p){this.logger.warn(p)}return f}else this.logger.warn(`there was no format function for ${u}`);return s},t)}},lve=(e,t)=>{e.pending[t]!==void 0&&(delete e.pending[t],e.pendingCount--)},Y4=class extends bm{constructor(t,r,a){let n=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{};super(),this.backend=t,this.store=r,this.services=a,this.languageUtils=a.languageUtils,this.options=n,this.logger=is.create("backendConnector"),this.waitingReads=[],this.maxParallelReads=n.maxParallelReads||10,this.readingCalls=0,this.maxRetries=n.maxRetries>=0?n.maxRetries:5,this.retryTimeout=n.retryTimeout>=1?n.retryTimeout:350,this.state={},this.queue=[],this.backend&&this.backend.init&&this.backend.init(a,n.backend,n)}queueLoad(t,r,a,n){let o={},i={},s={},l={};return t.forEach(u=>{let d=!0;r.forEach(f=>{let p=`${u}|${f}`;!a.reload&&this.store.hasResourceBundle(u,f)?this.state[p]=2:this.state[p]<0||(this.state[p]===1?i[p]===void 0&&(i[p]=!0):(this.state[p]=1,d=!1,i[p]===void 0&&(i[p]=!0),o[p]===void 0&&(o[p]=!0),l[f]===void 0&&(l[f]=!0)))}),d||(s[u]=!0)}),(Object.keys(o).length||Object.keys(i).length)&&this.queue.push({pending:i,pendingCount:Object.keys(i).length,loaded:{},errors:[],callback:n}),{toLoad:Object.keys(o),pending:Object.keys(i),toLoadLanguages:Object.keys(s),toLoadNamespaces:Object.keys(l)}}loaded(t,r,a){let n=t.split("|"),o=n[0],i=n[1];r&&this.emit("failedLoading",o,i,r),!r&&a&&this.store.addResourceBundle(o,i,a,void 0,void 0,{skipCopy:!0}),this.state[t]=r?-1:2,r&&a&&(this.state[t]=0);let s={};this.queue.forEach(l=>{Zye(l.loaded,[o],i),lve(l,t),r&&l.errors.push(r),l.pendingCount===0&&!l.done&&(Object.keys(l.loaded).forEach(u=>{s[u]||(s[u]={});let d=l.loaded[u];d.length&&d.forEach(f=>{s[u][f]===void 0&&(s[u][f]=!0)})}),l.done=!0,l.errors.length?l.callback(l.errors):l.callback())}),this.emit("loaded",s),this.queue=this.queue.filter(l=>!l.done)}read(t,r,a){let n=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0,o=arguments.length>4&&arguments[4]!==void 0?arguments[4]:this.retryTimeout,i=arguments.length>5?arguments[5]:void 0;if(!t.length)return i(null,{});if(this.readingCalls>=this.maxParallelReads){this.waitingReads.push({lng:t,ns:r,fcName:a,tried:n,wait:o,callback:i});return}this.readingCalls++;let s=(u,d)=>{if(this.readingCalls--,this.waitingReads.length>0){let f=this.waitingReads.shift();this.read(f.lng,f.ns,f.fcName,f.tried,f.wait,f.callback)}if(u&&d&&n<this.maxRetries){setTimeout(()=>{this.read.call(this,t,r,a,n+1,o*2,i)},o);return}i(u,d)},l=this.backend[a].bind(this.backend);if(l.length===2){try{let u=l(t,r);u&&typeof u.then=="function"?u.then(d=>s(null,d)).catch(s):s(null,u)}catch(u){s(u)}return}return l(t,r,s)}prepareLoading(t,r){let a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},n=arguments.length>3?arguments[3]:void 0;if(!this.backend)return this.logger.warn("No backend was added via i18next.use. Will not load resources."),n&&n();dt(t)&&(t=this.languageUtils.toResolveHierarchy(t)),dt(r)&&(r=[r]);let o=this.queueLoad(t,r,a,n);if(!o.toLoad.length)return o.pending.length||n(),null;o.toLoad.forEach(i=>{this.loadOne(i)})}load(t,r,a){this.prepareLoading(t,r,{},a)}reload(t,r,a){this.prepareLoading(t,r,{reload:!0},a)}loadOne(t){let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"",a=t.split("|"),n=a[0],o=a[1];this.read(n,o,"read",void 0,void 0,(i,s)=>{i&&this.logger.warn(`${r}loading namespace ${o} for language ${n} failed`,i),!i&&s&&this.logger.log(`${r}loaded namespace ${o} for language ${n}`,s),this.loaded(t,i,s)})}saveMissing(t,r,a,n,o){let i=arguments.length>5&&arguments[5]!==void 0?arguments[5]:{},s=arguments.length>6&&arguments[6]!==void 0?arguments[6]:()=>{};if(this.services.utils&&this.services.utils.hasLoadedNamespace&&!this.services.utils.hasLoadedNamespace(r)){this.logger.warn(`did not save key "${a}" as the namespace "${r}" was not yet loaded`,"This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!");return}if(!(a==null||a==="")){if(this.backend&&this.backend.create){let l={...i,isUpdate:o},u=this.backend.create.bind(this.backend);if(u.length<6)try{let d;u.length===5?d=u(t,r,a,n,l):d=u(t,r,a,n),d&&typeof d.then=="function"?d.then(f=>s(null,f)).catch(s):s(null,d)}catch(d){s(d)}else u(t,r,a,n,s,l)}!t||!t[0]||this.store.addResource(t[0],r,a,n)}}},bV=()=>({debug:!1,initImmediate:!0,ns:["translation"],defaultNS:["translation"],fallbackLng:["dev"],fallbackNS:!1,supportedLngs:!1,nonExplicitSupportedLngs:!1,load:"all",preload:!1,simplifyPluralSuffix:!0,keySeparator:".",nsSeparator:":",pluralSeparator:"_",contextSeparator:"_",partialBundledLanguages:!1,saveMissing:!1,updateMissing:!1,saveMissingTo:"fallback",saveMissingPlurals:!0,missingKeyHandler:!1,missingInterpolationHandler:!1,postProcess:!1,postProcessPassResolved:!1,returnNull:!1,returnEmptyString:!0,returnObjects:!1,joinArrays:!1,returnedObjectHandler:!1,parseMissingKeyHandler:!1,appendNamespaceToMissingKey:!1,appendNamespaceToCIMode:!1,overloadTranslationOptionHandler:e=>{let t={};if(typeof e[1]=="object"&&(t=e[1]),dt(e[1])&&(t.defaultValue=e[1]),dt(e[2])&&(t.tDescription=e[2]),typeof e[2]=="object"||typeof e[3]=="object"){let r=e[3]||e[2];Object.keys(r).forEach(a=>{t[a]=r[a]})}return t},interpolation:{escapeValue:!0,format:e=>e,prefix:"{{",suffix:"}}",formatSeparator:",",unescapePrefix:"-",nestingPrefix:"$t(",nestingSuffix:")",nestingOptionsSeparator:",",maxReplaces:1e3,skipOnVariables:!0}}),yV=e=>(dt(e.ns)&&(e.ns=[e.ns]),dt(e.fallbackLng)&&(e.fallbackLng=[e.fallbackLng]),dt(e.fallbackNS)&&(e.fallbackNS=[e.fallbackNS]),e.supportedLngs&&e.supportedLngs.indexOf("cimode")<0&&(e.supportedLngs=e.supportedLngs.concat(["cimode"])),e),fS=()=>{},uve=e=>{Object.getOwnPropertyNames(Object.getPrototypeOf(e)).forEach(r=>{typeof e[r]=="function"&&(e[r]=e[r].bind(e))})},yS=class e extends bm{constructor(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},r=arguments.length>1?arguments[1]:void 0;if(super(),this.options=yV(t),this.services={},this.logger=is,this.modules={external:[]},uve(this),r&&!this.isInitialized&&!t.isClone){if(!this.options.initImmediate)return this.init(t,r),this;setTimeout(()=>{this.init(t,r)},0)}}init(){var t=this;let r=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},a=arguments.length>1?arguments[1]:void 0;this.isInitializing=!0,typeof r=="function"&&(a=r,r={}),!r.defaultNS&&r.defaultNS!==!1&&r.ns&&(dt(r.ns)?r.defaultNS=r.ns:r.ns.indexOf("translation")<0&&(r.defaultNS=r.ns[0]));let n=bV();this.options={...n,...this.options,...yV(r)},this.options.compatibilityAPI!=="v1"&&(this.options.interpolation={...n.interpolation,...this.options.interpolation}),r.keySeparator!==void 0&&(this.options.userDefinedKeySeparator=r.keySeparator),r.nsSeparator!==void 0&&(this.options.userDefinedNsSeparator=r.nsSeparator);let o=d=>d?typeof d=="function"?new d:d:null;if(!this.options.isClone){this.modules.logger?is.init(o(this.modules.logger),this.options):is.init(null,this.options);let d;this.modules.formatter?d=this.modules.formatter:typeof Intl<"u"&&(d=Z4);let f=new bS(this.options);this.store=new gS(this.options.resources,this.options);let p=this.services;p.logger=is,p.resourceStore=this.store,p.languageUtils=f,p.pluralResolver=new G4(f,{prepend:this.options.pluralSeparator,compatibilityJSON:this.options.compatibilityJSON,simplifyPluralSuffix:this.options.simplifyPluralSuffix}),d&&(!this.options.interpolation.format||this.options.interpolation.format===n.interpolation.format)&&(p.formatter=o(d),p.formatter.init(p,this.options),this.options.interpolation.format=p.formatter.format.bind(p.formatter)),p.interpolator=new W4(this.options),p.utils={hasLoadedNamespace:this.hasLoadedNamespace.bind(this)},p.backendConnector=new Y4(o(this.modules.backend),p.resourceStore,p,this.options),p.backendConnector.on("*",function(m){for(var h=arguments.length,b=new Array(h>1?h-1:0),w=1;w<h;w++)b[w-1]=arguments[w];t.emit(m,...b)}),this.modules.languageDetector&&(p.languageDetector=o(this.modules.languageDetector),p.languageDetector.init&&p.languageDetector.init(p,this.options.detection,this.options)),this.modules.i18nFormat&&(p.i18nFormat=o(this.modules.i18nFormat),p.i18nFormat.init&&p.i18nFormat.init(this)),this.translator=new hS(this.services,this.options),this.translator.on("*",function(m){for(var h=arguments.length,b=new Array(h>1?h-1:0),w=1;w<h;w++)b[w-1]=arguments[w];t.emit(m,...b)}),this.modules.external.forEach(m=>{m.init&&m.init(this)})}if(this.format=this.options.interpolation.format,a||(a=fS),this.options.fallbackLng&&!this.services.languageDetector&&!this.options.lng){let d=this.services.languageUtils.getFallbackCodes(this.options.fallbackLng);d.length>0&&d[0]!=="dev"&&(this.options.lng=d[0])}!this.services.languageDetector&&!this.options.lng&&this.logger.warn("init: no languageDetector is used and no lng is defined"),["getResource","hasResourceBundle","getResourceBundle","getDataByLanguage"].forEach(d=>{this[d]=function(){return t.store[d](...arguments)}}),["addResource","addResources","addResourceBundle","removeResourceBundle"].forEach(d=>{this[d]=function(){return t.store[d](...arguments),t}});let l=yb(),u=()=>{let d=(f,p)=>{this.isInitializing=!1,this.isInitialized&&!this.initializedStoreOnce&&this.logger.warn("init: i18next is already initialized. You should call init just once!"),this.isInitialized=!0,this.options.isClone||this.logger.log("initialized",this.options),this.emit("initialized",this.options),l.resolve(p),a(f,p)};if(this.languages&&this.options.compatibilityAPI!=="v1"&&!this.isInitialized)return d(null,this.t.bind(this));this.changeLanguage(this.options.lng,d)};return this.options.resources||!this.options.initImmediate?u():setTimeout(u,0),l}loadResources(t){let a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:fS,n=dt(t)?t:this.language;if(typeof t=="function"&&(a=t),!this.options.resources||this.options.partialBundledLanguages){if(n&&n.toLowerCase()==="cimode"&&(!this.options.preload||this.options.preload.length===0))return a();let o=[],i=s=>{if(!s||s==="cimode")return;this.services.languageUtils.toResolveHierarchy(s).forEach(u=>{u!=="cimode"&&o.indexOf(u)<0&&o.push(u)})};n?i(n):this.services.languageUtils.getFallbackCodes(this.options.fallbackLng).forEach(l=>i(l)),this.options.preload&&this.options.preload.forEach(s=>i(s)),this.services.backendConnector.load(o,this.options.ns,s=>{!s&&!this.resolvedLanguage&&this.language&&this.setResolvedLanguage(this.language),a(s)})}else a(null)}reloadResources(t,r,a){let n=yb();return typeof t=="function"&&(a=t,t=void 0),typeof r=="function"&&(a=r,r=void 0),t||(t=this.languages),r||(r=this.options.ns),a||(a=fS),this.services.backendConnector.reload(t,r,o=>{n.resolve(),a(o)}),n}use(t){if(!t)throw new Error("You are passing an undefined module! Please check the object you are passing to i18next.use()");if(!t.type)throw new Error("You are passing a wrong module! Please check the object you are passing to i18next.use()");return t.type==="backend"&&(this.modules.backend=t),(t.type==="logger"||t.log&&t.warn&&t.error)&&(this.modules.logger=t),t.type==="languageDetector"&&(this.modules.languageDetector=t),t.type==="i18nFormat"&&(this.modules.i18nFormat=t),t.type==="postProcessor"&&xV.addPostProcessor(t),t.type==="formatter"&&(this.modules.formatter=t),t.type==="3rdParty"&&this.modules.external.push(t),this}setResolvedLanguage(t){if(!(!t||!this.languages)&&!(["cimode","dev"].indexOf(t)>-1))for(let r=0;r<this.languages.length;r++){let a=this.languages[r];if(!(["cimode","dev"].indexOf(a)>-1)&&this.store.hasLanguageSomeTranslations(a)){this.resolvedLanguage=a;break}}}changeLanguage(t,r){var a=this;this.isLanguageChangingTo=t;let n=yb();this.emit("languageChanging",t);let o=l=>{this.language=l,this.languages=this.services.languageUtils.toResolveHierarchy(l),this.resolvedLanguage=void 0,this.setResolvedLanguage(l)},i=(l,u)=>{u?(o(u),this.translator.changeLanguage(u),this.isLanguageChangingTo=void 0,this.emit("languageChanged",u),this.logger.log("languageChanged",u)):this.isLanguageChangingTo=void 0,n.resolve(function(){return a.t(...arguments)}),r&&r(l,function(){return a.t(...arguments)})},s=l=>{!t&&!l&&this.services.languageDetector&&(l=[]);let u=dt(l)?l:this.services.languageUtils.getBestMatchFromCodes(l);u&&(this.language||o(u),this.translator.language||this.translator.changeLanguage(u),this.services.languageDetector&&this.services.languageDetector.cacheUserLanguage&&this.services.languageDetector.cacheUserLanguage(u)),this.loadResources(u,d=>{i(d,u)})};return!t&&this.services.languageDetector&&!this.services.languageDetector.async?s(this.services.languageDetector.detect()):!t&&this.services.languageDetector&&this.services.languageDetector.async?this.services.languageDetector.detect.length===0?this.services.languageDetector.detect().then(s):this.services.languageDetector.detect(s):s(t),n}getFixedT(t,r,a){var n=this;let o=function(i,s){let l;if(typeof s!="object"){for(var u=arguments.length,d=new Array(u>2?u-2:0),f=2;f<u;f++)d[f-2]=arguments[f];l=n.options.overloadTranslationOptionHandler([i,s].concat(d))}else l={...s};l.lng=l.lng||o.lng,l.lngs=l.lngs||o.lngs,l.ns=l.ns||o.ns,l.keyPrefix!==""&&(l.keyPrefix=l.keyPrefix||a||o.keyPrefix);let p=n.options.keySeparator||".",m;return l.keyPrefix&&Array.isArray(i)?m=i.map(h=>`${l.keyPrefix}${p}${h}`):m=l.keyPrefix?`${l.keyPrefix}${p}${i}`:i,n.t(m,l)};return dt(t)?o.lng=t:o.lngs=t,o.ns=r,o.keyPrefix=a,o}t(){return this.translator&&this.translator.translate(...arguments)}exists(){return this.translator&&this.translator.exists(...arguments)}setDefaultNamespace(t){this.options.defaultNS=t}hasLoadedNamespace(t){let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(!this.isInitialized)return this.logger.warn("hasLoadedNamespace: i18next was not initialized",this.languages),!1;if(!this.languages||!this.languages.length)return this.logger.warn("hasLoadedNamespace: i18n.languages were undefined or empty",this.languages),!1;let a=r.lng||this.resolvedLanguage||this.languages[0],n=this.options?this.options.fallbackLng:!1,o=this.languages[this.languages.length-1];if(a.toLowerCase()==="cimode")return!0;let i=(s,l)=>{let u=this.services.backendConnector.state[`${s}|${l}`];return u===-1||u===0||u===2};if(r.precheck){let s=r.precheck(this,i);if(s!==void 0)return s}return!!(this.hasResourceBundle(a,t)||!this.services.backendConnector.backend||this.options.resources&&!this.options.partialBundledLanguages||i(a,t)&&(!n||i(o,t)))}loadNamespaces(t,r){let a=yb();return this.options.ns?(dt(t)&&(t=[t]),t.forEach(n=>{this.options.ns.indexOf(n)<0&&this.options.ns.push(n)}),this.loadResources(n=>{a.resolve(),r&&r(n)}),a):(r&&r(),Promise.resolve())}loadLanguages(t,r){let a=yb();dt(t)&&(t=[t]);let n=this.options.preload||[],o=t.filter(i=>n.indexOf(i)<0&&this.services.languageUtils.isSupportedCode(i));return o.length?(this.options.preload=n.concat(o),this.loadResources(i=>{a.resolve(),r&&r(i)}),a):(r&&r(),Promise.resolve())}dir(t){if(t||(t=this.resolvedLanguage||(this.languages&&this.languages.length>0?this.languages[0]:this.language)),!t)return"rtl";let r=["ar","shu","sqr","ssh","xaa","yhd","yud","aao","abh","abv","acm","acq","acw","acx","acy","adf","ads","aeb","aec","afb","ajp","apc","apd","arb","arq","ars","ary","arz","auz","avl","ayh","ayl","ayn","ayp","bbz","pga","he","iw","ps","pbt","pbu","pst","prp","prd","ug","ur","ydd","yds","yih","ji","yi","hbo","men","xmn","fa","jpr","peo","pes","prs","dv","sam","ckb"],a=this.services&&this.services.languageUtils||new bS(bV());return r.indexOf(a.getLanguagePartFromCode(t))>-1||t.toLowerCase().indexOf("-arab")>1?"rtl":"ltr"}static createInstance(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},r=arguments.length>1?arguments[1]:void 0;return new e(t,r)}cloneInstance(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:fS,a=t.forkResourceStore;a&&delete t.forkResourceStore;let n={...this.options,...t,isClone:!0},o=new e(n);return(t.debug!==void 0||t.prefix!==void 0)&&(o.logger=o.logger.clone(t)),["store","services","language"].forEach(s=>{o[s]=this[s]}),o.services={...this.services},o.services.utils={hasLoadedNamespace:o.hasLoadedNamespace.bind(o)},a&&(o.store=new gS(this.store.data,n),o.services.resourceStore=o.store),o.translator=new hS(o.services,n),o.translator.on("*",function(s){for(var l=arguments.length,u=new Array(l>1?l-1:0),d=1;d<l;d++)u[d-1]=arguments[d];o.emit(s,...u)}),o.init(n,r),o.translator.options=n,o.translator.backendConnector.services.utils={hasLoadedNamespace:o.hasLoadedNamespace.bind(o)},o}toJSON(){return{options:this.options,store:this.store,language:this.language,languages:this.languages,resolvedLanguage:this.resolvedLanguage}}},Fa=yS.createInstance();Fa.createInstance=yS.createInstance;var Qwt=Fa.createInstance,ekt=Fa.dir,tkt=Fa.init,rkt=Fa.loadResources,akt=Fa.reloadResources,nkt=Fa.use,okt=Fa.changeLanguage,ikt=Fa.getFixedT,skt=Fa.t,lkt=Fa.exists,ukt=Fa.setDefaultNamespace,ckt=Fa.hasLoadedNamespace,dkt=Fa.loadNamespaces,fkt=Fa.loadLanguages;c();c();var hve=L(ae(),1);c();c();var kb=L(ae(),1);c();var cve=L(kV());c();function TV(){if(console&&console.warn){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];typeof t[0]=="string"&&(t[0]=`react-i18next:: ${t[0]}`),console.warn(...t)}}var SV={};function xb(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];typeof t[0]=="string"&&SV[t[0]]||(typeof t[0]=="string"&&(SV[t[0]]=new Date),TV(...t))}var CV=(e,t)=>()=>{if(e.isInitialized)t();else{let r=()=>{setTimeout(()=>{e.off("initialized",r)},0),t()};e.on("initialized",r)}};function K4(e,t,r){e.loadNamespaces(t,CV(e,r))}function X4(e,t,r,a){typeof r=="string"&&(r=[r]),r.forEach(n=>{e.options.ns.indexOf(n)<0&&e.options.ns.push(n)}),e.loadLanguages(t,CV(e,a))}function dve(e,t){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},a=t.languages[0],n=t.options?t.options.fallbackLng:!1,o=t.languages[t.languages.length-1];if(a.toLowerCase()==="cimode")return!0;let i=(s,l)=>{let u=t.services.backendConnector.state[`${s}|${l}`];return u===-1||u===2};return r.bindI18n&&r.bindI18n.indexOf("languageChanging")>-1&&t.services.backendConnector.backend&&t.isLanguageChangingTo&&!i(t.isLanguageChangingTo,e)?!1:!!(t.hasResourceBundle(a,e)||!t.services.backendConnector.backend||t.options.resources&&!t.options.partialBundledLanguages||i(a,e)&&(!n||i(o,e)))}function EV(e,t){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};return!t.languages||!t.languages.length?(xb("i18n.languages were undefined or empty",t.languages),!0):t.options.ignoreJSONStructure!==void 0?t.hasLoadedNamespace(e,{lng:r.lng,precheck:(n,o)=>{if(r.bindI18n&&r.bindI18n.indexOf("languageChanging")>-1&&n.services.backendConnector.backend&&n.isLanguageChangingTo&&!o(n.isLanguageChangingTo,e))return!1}}):dve(e,t,r)}c();c();var fve=/&(?:amp|#38|lt|#60|gt|#62|apos|#39|quot|#34|nbsp|#160|copy|#169|reg|#174|hellip|#8230|#x2F|#47);/g,pve={"&":"&","&":"&","<":"<","<":"<",">":">",">":">","'":"'","'":"'",""":'"',""":'"'," ":" "," ":" ","©":"\xA9","©":"\xA9","®":"\xAE","®":"\xAE","…":"\u2026","…":"\u2026","/":"/","/":"/"},mve=e=>pve[e],_V=e=>e.replace(fve,mve);var J4={bindI18n:"languageChanged",bindI18nStore:"",transEmptyNodeValue:"",transSupportBasicHtmlNodes:!0,transWrapTextNodes:"",transKeepBasicHtmlNodesFor:["br","strong","i","p"],useSuspense:!0,unescape:_V};function vS(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};J4={...J4,...e}}function wb(){return J4}c();var AV;function xS(e){AV=e}function Rd(){return AV}c();var IV=L(ae(),1);c();var wS={type:"3rdParty",init(e){vS(e.options.react),xS(e)}};var ym=(0,IV.createContext)(),kS=class{constructor(){this.usedNamespaces={}}addUsedNamespaces(t){t.forEach(r=>{this.usedNamespaces[r]||(this.usedNamespaces[r]=!0)})}getUsedNamespaces(){return Object.keys(this.usedNamespaces)}};c();var Bo=L(ae(),1);var bve=(e,t)=>{let r=(0,Bo.useRef)();return(0,Bo.useEffect)(()=>{r.current=t?r.current:e},[e,t]),r.current};function Sb(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},{i18n:r}=t,{i18n:a,defaultNS:n}=(0,Bo.useContext)(ym)||{},o=r||a||Rd();if(o&&!o.reportNamespaces&&(o.reportNamespaces=new kS),!o){xb("You will need to pass in an i18next instance by using initReactI18next");let k=(T,C)=>typeof C=="string"?C:C&&typeof C=="object"&&typeof C.defaultValue=="string"?C.defaultValue:Array.isArray(T)?T[T.length-1]:T,S=[k,{},!1];return S.t=k,S.i18n={},S.ready=!1,S}o.options.react&&o.options.react.wait!==void 0&&xb("It seems you are still using the old wait option, you may migrate to the new useSuspense behaviour.");let i={...wb(),...o.options.react,...t},{useSuspense:s,keyPrefix:l}=i,u=e||n||o.options&&o.options.defaultNS;u=typeof u=="string"?[u]:u||["translation"],o.reportNamespaces.addUsedNamespaces&&o.reportNamespaces.addUsedNamespaces(u);let d=(o.isInitialized||o.initializedStoreOnce)&&u.every(k=>EV(k,o,i));function f(){return o.getFixedT(t.lng||null,i.nsMode==="fallback"?u:u[0],l)}let[p,m]=(0,Bo.useState)(f),h=u.join();t.lng&&(h=`${t.lng}${h}`);let b=bve(h),w=(0,Bo.useRef)(!0);(0,Bo.useEffect)(()=>{let{bindI18n:k,bindI18nStore:S}=i;w.current=!0,!d&&!s&&(t.lng?X4(o,t.lng,u,()=>{w.current&&m(f)}):K4(o,u,()=>{w.current&&m(f)})),d&&b&&b!==h&&w.current&&m(f);function T(){w.current&&m(f)}return k&&o&&o.on(k,T),S&&o&&o.store.on(S,T),()=>{w.current=!1,k&&o&&k.split(" ").forEach(C=>o.off(C,T)),S&&o&&S.split(" ").forEach(C=>o.store.off(C,T))}},[o,h]);let v=(0,Bo.useRef)(!0);(0,Bo.useEffect)(()=>{w.current&&!v.current&&m(f),v.current=!1},[o,l]);let x=[p,o,d];if(x.t=p,x.i18n=o,x.ready=d,d||!d&&!s)return x;throw new Promise(k=>{t.lng?X4(o,t.lng,u,()=>k()):K4(o,u,()=>k())})}c();var LV=L(ae(),1);c();c();var NV=L(ae(),1);c();var kve=L(ae(),1);c();var vve=L(ae(),1);c();c();function RV(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}c();c();c();function Dd(e){"@babel/helpers - typeof";return Dd=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Dd(e)}c();function DV(e,t){if(Dd(e)!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var a=r.call(e,t||"default");if(Dd(a)!="object")return a;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function PV(e){var t=DV(e,"string");return Dd(t)=="symbol"?t:t+""}function OV(e,t){for(var r=0;r<t.length;r++){var a=t[r];a.enumerable=a.enumerable||!1,a.configurable=!0,"value"in a&&(a.writable=!0),Object.defineProperty(e,PV(a.key),a)}}function MV(e,t,r){return t&&OV(e.prototype,t),r&&OV(e,r),Object.defineProperty(e,"prototype",{writable:!1}),e}var $V=[],Sve=$V.forEach,Tve=$V.slice;function Cve(e){return Sve.call(Tve.call(arguments,1),function(t){if(t)for(var r in t)e[r]===void 0&&(e[r]=t[r])}),e}var FV=/^[\u0009\u0020-\u007e\u0080-\u00ff]+$/,Eve=function(t,r,a){var n=a||{};n.path=n.path||"/";var o=encodeURIComponent(r),i="".concat(t,"=").concat(o);if(n.maxAge>0){var s=n.maxAge-0;if(Number.isNaN(s))throw new Error("maxAge should be a Number");i+="; Max-Age=".concat(Math.floor(s))}if(n.domain){if(!FV.test(n.domain))throw new TypeError("option domain is invalid");i+="; Domain=".concat(n.domain)}if(n.path){if(!FV.test(n.path))throw new TypeError("option path is invalid");i+="; Path=".concat(n.path)}if(n.expires){if(typeof n.expires.toUTCString!="function")throw new TypeError("option expires is invalid");i+="; Expires=".concat(n.expires.toUTCString())}if(n.httpOnly&&(i+="; HttpOnly"),n.secure&&(i+="; Secure"),n.sameSite){var l=typeof n.sameSite=="string"?n.sameSite.toLowerCase():n.sameSite;switch(l){case!0:i+="; SameSite=Strict";break;case"lax":i+="; SameSite=Lax";break;case"strict":i+="; SameSite=Strict";break;case"none":i+="; SameSite=None";break;default:throw new TypeError("option sameSite is invalid")}}return i},zV={create:function(t,r,a,n){var o=arguments.length>4&&arguments[4]!==void 0?arguments[4]:{path:"/",sameSite:"strict"};a&&(o.expires=new Date,o.expires.setTime(o.expires.getTime()+a*60*1e3)),n&&(o.domain=n),document.cookie=Eve(t,encodeURIComponent(r),o)},read:function(t){for(var r="".concat(t,"="),a=document.cookie.split(";"),n=0;n<a.length;n++){for(var o=a[n];o.charAt(0)===" ";)o=o.substring(1,o.length);if(o.indexOf(r)===0)return o.substring(r.length,o.length)}return null},remove:function(t){this.create(t,"",-1)}},_ve={name:"cookie",lookup:function(t){var r;if(t.lookupCookie&&typeof document<"u"){var a=zV.read(t.lookupCookie);a&&(r=a)}return r},cacheUserLanguage:function(t,r){r.lookupCookie&&typeof document<"u"&&zV.create(r.lookupCookie,t,r.cookieMinutes,r.cookieDomain,r.cookieOptions)}},Ave={name:"querystring",lookup:function(t){var r;if(typeof window<"u"){var a=window.location.search;!window.location.search&&window.location.hash&&window.location.hash.indexOf("?")>-1&&(a=window.location.hash.substring(window.location.hash.indexOf("?")));for(var n=a.substring(1),o=n.split("&"),i=0;i<o.length;i++){var s=o[i].indexOf("=");if(s>0){var l=o[i].substring(0,s);l===t.lookupQuerystring&&(r=o[i].substring(s+1))}}}return r}},Tb=null,UV=function(){if(Tb!==null)return Tb;try{Tb=window!=="undefined"&&window.localStorage!==null;var t="i18next.translate.boo";window.localStorage.setItem(t,"foo"),window.localStorage.removeItem(t)}catch{Tb=!1}return Tb},Ive={name:"localStorage",lookup:function(t){var r;if(t.lookupLocalStorage&&UV()){var a=window.localStorage.getItem(t.lookupLocalStorage);a&&(r=a)}return r},cacheUserLanguage:function(t,r){r.lookupLocalStorage&&UV()&&window.localStorage.setItem(r.lookupLocalStorage,t)}},Cb=null,BV=function(){if(Cb!==null)return Cb;try{Cb=window!=="undefined"&&window.sessionStorage!==null;var t="i18next.translate.boo";window.sessionStorage.setItem(t,"foo"),window.sessionStorage.removeItem(t)}catch{Cb=!1}return Cb},Lve={name:"sessionStorage",lookup:function(t){var r;if(t.lookupSessionStorage&&BV()){var a=window.sessionStorage.getItem(t.lookupSessionStorage);a&&(r=a)}return r},cacheUserLanguage:function(t,r){r.lookupSessionStorage&&BV()&&window.sessionStorage.setItem(r.lookupSessionStorage,t)}},Nve={name:"navigator",lookup:function(t){var r=[];if(typeof navigator<"u"){if(navigator.languages)for(var a=0;a<navigator.languages.length;a++)r.push(navigator.languages[a]);navigator.userLanguage&&r.push(navigator.userLanguage),navigator.language&&r.push(navigator.language)}return r.length>0?r:void 0}},Rve={name:"htmlTag",lookup:function(t){var r,a=t.htmlTag||(typeof document<"u"?document.documentElement:null);return a&&typeof a.getAttribute=="function"&&(r=a.getAttribute("lang")),r}},Dve={name:"path",lookup:function(t){var r;if(typeof window<"u"){var a=window.location.pathname.match(/\/([a-zA-Z-]*)/g);if(a instanceof Array)if(typeof t.lookupFromPathIndex=="number"){if(typeof a[t.lookupFromPathIndex]!="string")return;r=a[t.lookupFromPathIndex].replace("/","")}else r=a[0].replace("/","")}return r}},Pve={name:"subdomain",lookup:function(t){var r=typeof t.lookupFromSubdomainIndex=="number"?t.lookupFromSubdomainIndex+1:1,a=typeof window<"u"&&window.location&&window.location.hostname&&window.location.hostname.match(/^(\w{2,5})\.(([a-z0-9-]{1,63}\.[a-z]{2,6})|localhost)/i);if(a)return a[r]}},jV=!1;try{document.cookie,jV=!0}catch{}var HV=["querystring","cookie","localStorage","sessionStorage","navigator","htmlTag"];jV||HV.splice(1,1);function Ove(){return{order:HV,lookupQuerystring:"lng",lookupCookie:"i18next",lookupLocalStorage:"i18nextLng",lookupSessionStorage:"i18nextLng",caches:["localStorage"],excludeCacheFor:["cimode"],convertDetectedLanguage:function(t){return t}}}var Q4=function(){function e(t){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};RV(this,e),this.type="languageDetector",this.detectors={},this.init(t,r)}return MV(e,[{key:"init",value:function(r){var a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};this.services=r||{languageUtils:{}},this.options=Cve(a,this.options||{},Ove()),typeof this.options.convertDetectedLanguage=="string"&&this.options.convertDetectedLanguage.indexOf("15897")>-1&&(this.options.convertDetectedLanguage=function(o){return o.replace("-","_")}),this.options.lookupFromUrlIndex&&(this.options.lookupFromPathIndex=this.options.lookupFromUrlIndex),this.i18nOptions=n,this.addDetector(_ve),this.addDetector(Ave),this.addDetector(Ive),this.addDetector(Lve),this.addDetector(Nve),this.addDetector(Rve),this.addDetector(Dve),this.addDetector(Pve)}},{key:"addDetector",value:function(r){return this.detectors[r.name]=r,this}},{key:"detect",value:function(r){var a=this;r||(r=this.options.order);var n=[];return r.forEach(function(o){if(a.detectors[o]){var i=a.detectors[o].lookup(a.options);i&&typeof i=="string"&&(i=[i]),i&&(n=n.concat(i))}}),n=n.map(function(o){return a.options.convertDetectedLanguage(o)}),this.services.languageUtils.getBestMatchFromCodes?n:n.length>0?n[0]:null}},{key:"cacheUserLanguage",value:function(r,a){var n=this;a||(a=this.options.caches),a&&(this.options.excludeCacheFor&&this.options.excludeCacheFor.indexOf(r)>-1||a.forEach(function(o){n.detectors[o]&&n.detectors[o].cacheUserLanguage(r,n.options)}))}}])}();Q4.type="languageDetector";var qV={pages:{deploy:{title:"Integration Channels",subtitle:"Connect your agent with the platforms you use",searchPlaceholder:"Search integration channel...",noAgentId:"Agent ID not found",enablePublicAgent:"Enable public agent",configure:"Configure",upgradePlan:"Upgrade plan",publicAgentRequired:"This integration requires a public agent. Would you like to make your agent public?",integrations:{webBubble:"Web Chat Bubble",webStandard:"Web Standard Chat",webStandalone:"Standalone Web Page",crmhorneross:"horneross CRM",chatwoot:"Chatwoot",whatsapp:"WhatsApp",zapier:"Zapier",telegram:"Telegram",slack:"Slack",wordpress:"WordPress",mercadolibre:"Mercado Libre"},modals:{chatBubble:"Chat Bubble Configuration",standardChatbox:"Standard Chatbox Configuration",standalonePage:"Standalone Page Configuration",configurations:"Configurations"},usageLimit:{title:"Premium Feature",description:"This integration requires a premium plan. Upgrade your plan to unlock this feature."}},dashboard:{title:"Dashboard",subtitle:"Showing data from {from} to {to}",loading:"Loading dashboard analytics...",accessDenied:{title:"Access Denied",message:"Only administrators and organization owners can access this dashboard."},error:{title:"Error Loading Dashboard",message:"Failed to load dashboard statistics"},actions:{viewLogs:"View Logs",selectRange:"Select range"},dateFilter:{quickPresets:"Quick presets",days7:"7 days",days30:"30 days",days90:"90 days",selectHelp:"Select the start and end date of the range",daysSelected:"{count} days selected",reset:"Reset",cancel:"Cancel",apply:"Apply"},metrics:{activeAgents:"Active agents",datastores:"Datastores",newContacts:"New contacts",conversations:"Conversations",thisMonth:"this month"},chart:{messageStats:"Message Statistics",groupedByMonth:"Data grouped by month",groupedByWeek:"Data grouped by week",daily:"Daily data",inRange:{days:"{count} days in range",weeks:"{count} weeks in range",months:"{count} months in range"},tooltip:{day:"Day",week:"Week",month:"Month",messages:"messages"}},agentPerformance:{title:"Agent Performance",conversations:"conversations",noData:"No agent data available"}},agents:{title:"Agents",description:"AI agents are customizable instances of large language models tailored to fit your specific use cases. By connecting them to a datastore, you can train them on your unique knowledge base.",newAgent:"New Agent",preparingAgents:"Preparing your agents...",tutorial:"View tutorial - Agent creation",requestFeature:"Request improvement",requestFeatureDescription:"Want a new improvement?",requestAgent:"Request agent",requestAgentDescription:"Want a new agent?",new:"New",create:"Create"},datastores:{title:"Sources",description:"Organize your knowledge bases with files, web pages, and other data sources.",fileMovedSuccess:"File moved successfully",fileMovedError:"Error moving file. Please try again.",folderDeletedSuccess:"Folder deleted successfully",folderDeletedError:"Error deleting folder",fileDeletedSuccess:"File deleted successfully",fileDeletedError:"Error deleting file",errorUpdatingName:"Error updating datastore name. Please try again.",tokens:"tokens",chunks:"chunks",files:"Files",configuration:"Configuration",dataFile:"Data file",fileConfiguration:"File Configuration",fileConfigurationDescription:"Update the details and configuration of this data file",updateConfiguration:"Update Configuration",dangerZone:"Danger Zone",dangerZoneDescription:"Permanently delete this file",deleteFileTitle:"Delete file?",deleteFileWarning:"This action",deleteFileWarningBold:"cannot be undone",deleting:"Deleting...",emptyStateTitle:"No folders or files yet",emptyStateDescription:"Create your first folder or upload a file to get started",newFolder:"New Folder",newFile:"New File",folders:"Folders",settings:{pluginIconUpdated:"Plugin icon updated successfully",pluginUpdated:"Plugin updated successfully",pluginIcon:"Plugin Icon",replace:"Replace",delete:"Delete",nameForHumans:"Name for Humans",nameForHumansPlaceholder:"My Custom Plugin",descriptionForHumans:"Description for Humans",descriptionForHumansPlaceholder:"A brief description of your plugin",descriptionForModel:"Description for Model",descriptionForModelPlaceholder:"Plugin for querying data from {name}. Use it to answer questions about the knowledge base.",pluginDescriptionBestPractices:"View Plugin Description Best Practices",update:"Update",pluginRoot:"Plugin Root URL",copied:"Copied to clipboard",settingsUpdated:"Settings updated successfully",errorUpdating:"Error updating settings",deleteSuccess:"Folder deleted successfully",deleteError:"Error deleting folder"}},conversations:{title:"Conversations",description:"View all conversations",noConversations:"No conversations found"},contacts:{title:"Contacts",subtitle:"Manage all your leads and customers",tabs:{all:"All",recent:"Recent"},exportCSV:"Export CSV",totalContacts:"Total Contacts",lastSixMonthsTrend:"Last 6 months trend",newThisWeek:"New This Week",newContacts:"new contacts",dailyBreakdown:"Daily breakdown:",withEmail:"With Email",contactsWithEmail:"Contacts with email data",searchPlaceholder:"Search contacts...",reload:"Reload",resultsFound:"{count} result found",resultsFoundPlural:"{count} results found",unknown:"Unknown",copyContactInfo:"Copy contact info",showingContacts:"Showing <strong>{from}</strong> to <strong>{to}</strong> of <strong>{total}</strong> contacts",previous:"Previous",next:"Next",noResultsFound:"No results found",noContactsYet:"No contacts yet",adjustSearchTerms:"Try adjusting your search terms or clear filters to see all contacts.",emptyContactList:"Your contact list is empty. Contacts will automatically appear here when your agents interact with customers.",clearSearch:"Clear search",refresh:"Refresh"},logs:{title:"Activity Logs",description:"Monitor and analyze all activity in your organization",actions:{generateReport:"Generate Report",reload:"Reload"},search:{placeholder:"Search logs..."},dateFilter:{quickPresets:"Quick presets",days7:"7 days",days30:"30 days",days90:"90 days",selectHelp:"Select start and end",daysSelected:"{count} days selected",reset:"Reset",cancel:"Cancel",apply:"Apply"},metrics:{totalRequests:"Total Requests",totalCost:"Total Cost",avgResponseTime:"Avg Response Time",tokensUsed:"Tokens Used",last30Days:"last 30 days",thisMonth:"this month",perResponse:"per response",totalConsumed:"total consumed"}},iframePage:{defaultAssistant:"Assistant",agentNotAvailable:"Agent not available",privateAgentMessage:'This agent is private and cannot be embedded. Change visibility to "public" to use the iframe.',loading:"Loading...",noConversations:"No previous conversations",newConversation:"New conversation"},standalonePage:{defaultAssistant:"your assistant",defaultAgent:"Agent",restrictedAccess:"Restricted access",privateAgent:"Private agent",requiresAuth:"This agent is private and requires authentication to access.",login:"Login",newConversation:"New conversation",noConversations:"No conversations",untitledConversation:"Untitled conversation",expandSidebar:"Expand sidebar",writeMessage:"Write your message...",initialMessage:"Hello! \u{1F44B} I'm {agentName}. How can I help you today?"},agentsList:{tabs:{all:"All",marketplace:"Marketplace"},sort:{recent:"Most recent",name:"Name",conversations:"Conversations"},buttons:{creating:"Creating...",createNew:"Create agent",new:"New",install:"Install",evaluate:"Evaluate",deleteAgent:"Delete agent"},sections:{recentAgents:"Recent agents",featuredAgents:"Featured agents"},table:{name:"Name",lastRun:"Last Run",integrations:"Integrations",widget:"Install",evaluate:"Evaluate",enabled:"Enabled"},emptyState:{title:"Start Chatting!",description:"Start a conversation and let our assistant help you create and configure your first agent step by step",startingConversation:"Starting conversation...",startChatting:"Start Chatting",helperText:"The assistant will guide you step by step in creating your agent"},marketplace:{searchPlaceholder:"Search agents by name or description...",featuredAgents:"Featured Agents",noResults:"No prompts found",noResultsDescription:"Try adjusting your search to find what you're looking for."},deleteModal:{title:"Delete agent",confirmText:"Are you sure you want to delete the agent",warningTitle:"This action cannot be undone:",warningItems:{versions:"All agent versions will be deleted",conversations:"All agent conversations will be deleted",config:"All configuration and customization will be lost",files:"Associated files will be permanently deleted"},cancel:"Cancel",deleting:"Deleting...",deleteAgent:"Delete agent"},toast:{agentDeleted:'Agent "{name}" deleted successfully',deleteError:"Error deleting the agent"}},deployPage:{title:"Install Agent",subtitle:"Choose where to deploy your agent",comingSoon:"Coming soon",enablePublicAgent:"Enable public agent",upgradePlan:"Upgrade plan",confirmPublicAgent:"This integration requires a public agent. Do you want to make your agent public?",categories:{web:{name:"Install on your Website",description:"Add the chat to your website"},messaging:{name:"Messaging",description:"Connect with messaging apps"},crm:{name:"CRM & Support",description:"Integrate with your support system"},ecommerce:{name:"Ecommerce",description:"Connect with sales platforms"}},integrations:{bubble:{name:"Floating Chat",description:"Chat bubble in the corner of your website"},iframe:{name:"Embedded Chat",description:"Insert the chat inside your page"},standalone:{name:"Dedicated Page",description:"A full page for your agent"},whatsapp:{description:"Auto-respond on WhatsApp"},telegram:{description:"Bot for Telegram"},instagram:{description:"Reply to Instagram messages"},slack:{description:"Bot for your Slack workspace"},kapso:{description:"WhatsApp via Kapso API"},horneross:{description:"Horneross integrated CRM"},chatwoot:{description:"Open-source support platform"},mercadolibre:{description:"Answer Mercado Libre questions"},shopify:{description:"Integrate your agent into your Shopify store"},tiendanube:{description:"Integrate your agent into your Tienda Nube store"}},modals:{bubble:"Configure Floating Chat",iframe:"Configure Embedded Chat",standalone:"Configure Dedicated Page",configure:"Customize your integration"},premiumRequired:{title:"Premium Feature",description:"This integration requires a premium plan. Upgrade your plan to unlock this feature."}},widgetEditor:{title:"Widget Editor",widgetTypes:{bubble:"Bubble",iframe:"iFrame",standalone:"Presentation"},header:{backToAgents:"Back to agents",save:"Save",saveChanges:"Save changes"},privateAgent:{title:"Private agent",publicTitle:"Public agent",publicDescription:"This agent is accessible to anyone with the link.",bubbleRequiresPublic:"The bubble widget requires the agent to be public to work.",iframeRequiresPublic:"The iframe requires the agent to be public to work.",changeVisibility:'Change visibility to "public" in the agent settings.',warningBubble:"The bubble widget requires a public agent.",warningIframe:"The iframe requires a public agent.",changeToPublic:"Change to public",changeToPrivate:"Change to private",confirmTitle:"Change agent visibility?",confirmDescription:"This will make your agent accessible to anyone with the link. The widget will work once the agent is public.",confirmPrivateTitle:"Make agent private?",confirmPrivateDescription:"This will restrict access to your organization only. The bubble widget and iframe will stop working on external websites.",cancel:"Cancel",confirm:"Change to public",confirmPrivate:"Change to private",successMessage:"Agent visibility changed to public",successPrivateMessage:"Agent visibility changed to private",errorMessage:"Failed to change agent visibility"},dropdown:{noAgents:"No agents"},sidebar:{name:"Name",noName:"No name",nameDescription:"Will be shown in the chat header",initialMessage:"Initial message",initialMessageDefault:"Hello! How can I help you?",initialMessageDescription:"Welcome message for users",primaryColor:"Primary color",presentation:"Presentation",customUrl:"Custom URL",customUrlDescription:"Public link to share your agent",suggestions:"Suggestions",suggestionsDescription:"Templates, popup, branding",messageTemplates:"Message templates",iframeOptions:"iFrame Options",transparentBackground:"Transparent background",helpLinks:"Help links",usefulLinks:"Useful links",customCSS:"Custom CSS",configured:"Configured",noStyles:"No styles",installCode:"Installation code",copySnippet:"Copy snippet",copyDescription:"Copy and paste into your website",viewLive:"View live",bubbleInstallHint:"Paste this code before the closing </body> tag of your website. The chat bubble will appear automatically.",customizationOptions:"Customization Options",customizationDescription:"Available options for data-interface:"},toast:{codeCopied:"Code copied!",clickToCopy:"Click to copy",configSaved:"Configuration saved!",saveError:"Error saving"}},hornerossBuilder:{title:"What would you like to do today?",subtitle:"Create your <highlight>AI Employee</highlight> just by <highlight>chatting with AI</highlight>.",subtitleParts:{prefix:"Create your",aiEmployee:"AI Employee",middle:"just by",chattingWithAI:"chatting with AI"},placeholder:"I want an agent that will monitor my support inbox and help answer.",seo:{title:"Horneross - AI Agent Builder | Create Custom AI Assistants",description:"Build powerful AI agents without coding. Create custom AI assistants for sales, support, onboarding, and automation. Connect to your data and tools seamlessly.",keywords:"AI agent builder, no-code AI, custom AI assistants, AI automation, chatbot builder, AI sales agent, AI support agent, conversational AI"},usageLimitModal:{conversationsExceeded:{title:"Conversation limit exceeded",description:"You have reached the maximum number of active conversations for your plan. Please resolve or delete existing conversations, or upgrade your plan to continue."},agentsExceeded:{title:"Agent limit exceeded",description:"You have reached the maximum number of agents for your plan. Please upgrade your plan to create more agents."}},autoStartPrompt:"Hello! I need to create an AI agent. Can you show me examples of popular agents and help me choose the one that best fits my business?"}},components:{organizationForm:{organization:"Organization",organizationName:"Organization Name",organizationNamePlaceholder:"Organization name",upload:"Upload",remove:"Remove",inviteTeamMember:"Invite Team Member",enterEmail:"Enter email address",sendInvite:"Send Invite",invite:"Invite",teamMembers:"Team Members",seats:"seats",active:"Active",pending:"Pending",roleUser:"User",roleAdmin:"Admin",roleOwner:"Owner",maxSeatsReached:"You have reached the maximum number of seats for your plan.",invitationSent:"Invitation sent successfully",userAlreadyInvited:"User already invited",invitationFailed:"Failed to send invitation",invitationCreatedNoEmail:"Invitation created, but email could not be sent. Share the link manually.",emailNotSentShareLink:"Email could not be sent. Share this link with the invitee:",linkCopied:"Link copied to clipboard",confirmRemoveMember:"This user will be removed from the organization, are you sure?",memberRemoved:"Member removed successfully",memberRemoveFailed:"Failed to remove member",iconUpdated:"Icon updated successfully",iconUploadFailed:"Failed to upload icon",iconDeleted:"Icon deleted successfully",iconDeleteFailed:"Failed to delete icon",expiresOn:"Expires on",invitationExpired:"Invitation expired",expired:"Expired",resendInvitation:"Resend invitation",cancelInvitation:"Cancel invitation",removeMember:"Remove member",invitationResent:"Invitation resent successfully",resendFailed:"Failed to resend invitation",confirmCancelInvite:"This invitation will be cancelled. Are you sure?",invitationCancelled:"Invitation cancelled",cancelFailed:"Failed to cancel invitation"},integrationsManagement:{pageTitle:"Integrations",pageDescription:"Connect your communication tools",statusConnected:"Connected",statusAvailable:"Available",statusComingSoon:"Coming Soon",comingSoonMessage:"This integration will be available soon",configureMessage:"Configure this integration to get started",open:"Open",manage:"Manage",configure:"Configure",connectedAccount:"Connected account",botsConnected:"{count} bot connected",botsConnectedPlural:"{count} bots connected",integrations:{chatwoot:"Chatwoot",chatwootDescription:"Customer support platform",whatsapp:"WhatsApp Business",whatsappDescription:"Customer conversations",telegram:"Telegram",telegramDescription:"Communication bots",instagram:"Instagram",instagramDescription:"Facebook & Instagram Messenger",slack:"Slack",slackDescription:"Team notifications",zapier:"Zapier",zapierDescription:"Thousands of apps"}},marketplaceAgentCard:{copy:"Copy",copied:"Copied!"},contactsTable:{searchLabel:"Search for contacts (email)",resultsCount:"{count} result",resultsCountPlural:"{count} results",searchPlaceholder:"Search contacts by email, name, phone...",tableHeaders:{email:"Email",phoneNumber:"Phone Number",name:"Name",createdAt:"Created At"},pagination:{previous:"Previous",next:"Next",pageOf:"Page {current} of {total}"}},createAgentModal:{title:"Create New Agent",subtitle:"Describe the agent you want to create",placeholder:"Describe your agent... e.g., Create a customer support agent that...",quickStartTemplates:"Quick Start Templates",explore:"Explore",templates:{customerSupport:{label:"Customer Support",prompt:"Create a customer support agent that helps with refunds, shipping questions, and product inquiries. Be friendly, empathetic, and solution-oriented."},salesAssistant:{label:"Sales Assistant",prompt:"Create a sales agent that qualifies leads, schedules meetings, and understands customer pain points. Be professional and consultative."},technicalSupport:{label:"Technical Support",prompt:"Create a technical support agent that troubleshoots software issues, provides step-by-step solutions, and escalates complex problems when needed."},knowledgeAssistant:{label:"Knowledge Assistant",prompt:"Create an AI assistant that answers questions based on documentation, provides detailed explanations, and helps users find information quickly."}}},navigation:{dashboard:"Dashboard",agents:"Agents",datastores:"Sources",conversations:"Conversations",analytics:"Analytics",settings:"Settings",contacts:"Contacts",logs:"Logs",tools:"Tools",integrations:"Integrations",inbox:"Inbox",database:"Database",forms:"Forms",emailInboxes:"Email Inboxes",appsTools:"Apps/Tools",home:"Home",chats:"Chats",newChat:"New Chat",projects:"Sources",explore:"Explore",organizations:"My Organizations",createOrganization:"Create Organization",memory:"Memory",library:"Library"},chatbox:{placeholder:"Type a message...",actions:{send:"Send",resolve:"Mark as Resolved",requestHuman:"Request Human"}},sidebar:{changeLanguage:"Change language",contactSupport:"Help center",openSidebar:"Open Sidebar",closeSidebar:"Close Sidebar",updatePlan:"Update Plan",updatePlanDescription:"Get more benefits by upgrading your plan",tutorial:"Watch Tutorial",workspace:"Workspace",management:"Management",groups:{agent:"Agent",conversations:"Management",recentChat:"Recent chat",memory:"Memory"},badges:{new:"NEW",experimental:"EXP",comingSoon:"Coming Soon"},recentChat:{noConversations:"No recent conversations"},enterprise:{title:"Enterprise",description:"Scale with custom solutions"},actions:{collapse:"Collapse",expand:"Expand"}},searchChat:{title:"Search",placeholder:"Search conversations...",noResults:"No conversations found",empty:"No recent conversations",recentChats:"Recent conversations",hint:"Press Enter to open"},agentPress:{title:"Tools",tooltipTitle:"Agent Tools",tooltipDescription:"Special capabilities you can enable to customize agent behavior",categories:{agent:{name:"Agent",description:"Core agent behavior and conversation settings"},research:{name:"Research",description:"Web search and content extraction"},builder:{name:"Builder",description:"Create and manage other agents"},prompt:{name:"Prompt",description:"Prompt engineering and management"},data:{name:"Data",description:"Code execution and data analysis"},media:{name:"Media",description:"Image and avatar generation"},presentation:{name:"Presentation",description:"Visual presentation tools for displaying data"},integration:{name:"Integration",description:"External service integrations"}}},agentIntegrations:{title:"Integrations",tooltipTitle:"Agent Integrations",tooltipDescription:"Custom integrations with external services and APIs",addIntegration:"Add Integration",noAgentWarning:"No integrations available",noAgentHint:"Create the agent first to add integrations",searchPlaceholder:"Search integrations...",noResults:"No integrations found matching",emptyState:{title:"No integrations configured",description:"Click to add custom integrations like HTTP, forms, etc."},tools:{http:{label:"HTTP",description:"Make HTTP requests to external APIs."},form:{label:"Forms",description:"Collect user information via interactive forms."},leadCapture:{label:"Lead capture",description:"Capture contact information from potential clients."},default:"Agent tool"},actions:{remove:"Remove",removeError:"Error removing tool"}},layout:{title:"horneross - AI Agents Platform",description:"Build and deploy custom AI agents for your business"},intercomModal:{title:"Hi! \u{1F44B}",subtitle:"How can we help you?",reportBug:"Report a bug",suggestImprovement:"Suggest an improvement",contactSales:"Contact Sales",contactSupport:"Contact Support",guide:"Guide",news:"News",horneross:"horneross.com",feedback:"Rate us",instagram:"Follow us on Instagram"},datastoreForms:{updating:"Updating...",updated:"Updated successfully",somethingWentWrong:"Something went wrong",datastoreName:"Datastore Name",datastoreNameHelperText:"Give your datastore a descriptive name",description:"Description",descriptionHelperText:"Brief description of what this datastore contains",public:"Make this datastore public",publicHelperText:"Public datastores can be accessed by anyone with the link",submit:"Save"},whatsAppSettings:{title:"WhatsApp Business",description:"Manage your connected WhatsApp numbers",noNumbersConnected:"No numbers connected yet.",connected:"Connected",test:"Test",delete:"Delete",connectNewAccount:"Connect New Account",backToList:"Back to list",configureTitle:"Configure WhatsApp Business",configureDescription:"Connect your account step by step",steps:{connect:"Connect",configure:"Configure",done:"Done"},wizard:{step1:{title:"Get the token",description:"Enter your Meta token to connect WhatsApp Business.",metaDeveloper:"Meta Developer",graphExplorer:"Graph Explorer",generateToken:"Generate token with WhatsApp Business permissions",permissions:"Make sure to select permissions: whatsapp_business_management, whatsapp_business_messaging",expiration:"Expiration: Never",viewGuide:"View guide",tokenLabel:"Access token",tokenPlaceholder:"EAAG..."},step2:{title:"Select a number",description:"We found the following numbers associated with your account.",available:"Available"},step3:{title:"Done!",description:"Your WhatsApp Business number has been connected successfully."}},actions:{cancel:"Cancel",back:"Back",finish:"Finish",connectWhatsApp:"Connect WhatsApp",next:"Next"}},leadCaptureConfigModal:{titleCreate:"New Lead Capture",titleEdit:"Edit Lead Capture",editing:"Editing",configNameLabel:"Configuration name",configNameRequired:"required",configNamePlaceholder:"E.g.: General contact capture",descriptionLabel:"Description",descriptionPlaceholder:"Description of when to use this configuration...",fieldsLabel:"Fields to capture",fieldsRequired:"required",fields:{name:"Name",email:"Email",phone:"Phone",company:"Company",message:"Message"},optionsLabel:"Capture options",autoCapture:"Auto capture",autoCaptureDescription:"Automatically capture information during conversation",requireName:"Name required",requireNameDescription:"Name is required to complete the capture",requireEmail:"Email required",requireEmailDescription:"Email is required to complete the capture",requirePhone:"Phone required",requirePhoneDescription:"Phone is required to complete the capture",customMessageLabel:"Custom message",customMessagePlaceholder:"Message the agent will show when requesting information...",customMessageHelper:"Optional: Customize the message the user will see when capturing their data",errors:{nameRequired:"Please enter a name for the configuration",fieldsRequired:"Please select at least one field",saveError:"Error saving the Lead Capture configuration"},success:{created:"Lead Capture created",updated:"Lead Capture updated"},actions:{cancel:"Cancel",saving:"Saving...",createConfig:"Create Configuration",saveChanges:"Save Changes"}},formConfigModal:{titleCreate:"New Form",titleEdit:"Edit Form",editing:"Editing",nameLabel:"Name",nameRequired:"required",namePlaceholder:"E.g.: Contact form",descriptionLabel:"Description",descriptionPlaceholder:"Form description (optional)",buttonTextLabel:"Button text",buttonTextPlaceholder:"Submit",fieldsLabel:"Form fields",fieldsRequired:"required",addField:"Add field",fieldNumber:"Field #{number}",fieldLabelLabel:"Label",fieldLabelPlaceholder:"E.g.: Full name",fieldTypeLabel:"Type",fieldTypes:{text:"Text",email:"Email",number:"Number",tel:"Phone",textarea:"Long text",select:"Selection",checkbox:"Checkbox"},placeholderLabel:"Placeholder",placeholderPlaceholder:"Help text (optional)",requiredField:"Required field",noFieldsMessage:'No fields added. Click "Add field" to start.',errors:{nameRequired:"Please enter a name for the form",fieldsRequired:"Add at least one field to the form",fieldLabelRequired:"All fields must have a label",saveError:"Error saving the form"},success:{created:"Form created",updated:"Form updated"},actions:{cancel:"Cancel",saving:"Saving...",createForm:"Create Form",saveChanges:"Save Changes"}},usageLimitModal:{defaultTitle:"Usage Limit Reached",defaultDescription:"Upgrade your plan to unlock higher usage limits and premium features.",cancel:"Cancel",upgradePlan:"Upgrade Plan"},duplicateAgentModal:{title:"Duplicate Agent",description:'Create a copy of "{name}" with all its configuration and tools.',newAgentName:"New Agent Name",placeholder:"Enter name for the duplicated agent",cancel:"Cancel",duplicating:"Duplicating...",duplicate:"Duplicate Agent",errors:{nameRequired:"Agent name is required",failed:"Failed to duplicate agent. Please try again."},success:"Agent duplicated successfully!"},createDatastoreModal:{title:"Create New Source",subtitle:"Configure your knowledge base in 4 simple steps",recommended:"Recommended",steps:{name:"Name",nameDescription:"Source identification",type:"Type",typeDescription:"Storage type",source:"Source",sourceDescription:"Data origin",configure:"Configure",configureDescription:"Final details"},step1:{title:"What do you want to name your source?",description:"Choose a descriptive name to help you easily identify the content",nameLabel:"Source Name",namePlaceholder:"E.g.: Technical Documentation, Knowledge Base, FAQ...",nameHelper:"This name will be visible in your dashboard and reports",suggestionsTitle:"Name suggestions",suggestions:{knowledgeBase:"Knowledge Base",documentation:"Documentation",faqClients:"Customer FAQ",technicalManuals:"Technical Manuals"}},step2:{title:"Select the source type",description:"Each type offers different capabilities for your needs"},step3:{title:"Choose your data source",titleCodeInterpreter:"Select the file type",description:"Configure the content origin for your source",descriptionCodeInterpreter:"You can analyze files with advanced capabilities"},step4:{title:"Configure your data source",titleUpload:"Upload your file",description:"Final details to complete the configuration"},datastoreTypes:{qdrant:{name:"Standard",description:"Ideal for documents, FAQs, and general knowledge",features:{vectorSearch:"Precise search",multipleEmbeddings:"Multiple file formats",advancedConfig:"Advanced settings"}},pinecone:{name:"Cloud",description:"Scalable cloud storage for large datasets",features:{fullyManaged:"Fully managed",autoScaling:"Automatic scaling",simpleConfig:"Simple setup"}},typesense:{name:"Fast Search",description:"Optimized for instant search results",features:{instantSearch:"Instant search",typoTolerance:"Typo tolerance",facetedSearch:"Filtered search"}},codeInterpreter:{name:"Data Analysis",description:"Analyze spreadsheets and complex data",features:{complexAnalysis:"Complex analysis",pythonExecution:"Automatic calculations",dataVisualization:"Charts and visualizations"}}},buttons:{previous:"Previous",cancel:"Cancel",continue:"Continue",createDatastore:"Create Source",creating:"Creating...",createFinish:"Create and Finish",back:"Back"},errors:{creatingDatastore:"Error creating source"}},createSimpleDatastoreModal:{title:"Create Simple Datastore",description:"Create your knowledge base in 2 simple steps",advancedMode:"Advanced mode",descriptions:{website:"Datastore from website: {url}",files:"Datastore with {count} uploaded files"},suggestions:{knowledgeBase:"Knowledge Base",documentation:"Documentation",faqClients:"Customer FAQ",technicalManuals:"Technical Manuals",policiesProcedures:"Policies and Procedures",trainingMaterial:"Training Material"},step1:{title:"What do you want to name your datastore?",subtitle:"Choose a descriptive name to identify your knowledge base",nameLabel:"Datastore Name",namePlaceholder:"E.g.: Technical Documentation, Knowledge Base...",nameHelper:"This name will help you identify your datastore in the dashboard",suggestionsTitle:"Name suggestions"},step2:{datastoreType:"Knowledge Base"},tabs:{files:"Files",website:"Website"},filesTab:{title:"Upload your files",description:"Drag and drop or select the files you want to add"},websiteTab:{title:"Save a website",description:"Enter the URL of the site you want to process and add to your datastore"},progress:{overall:"Overall Progress"},buttons:{back:"Back",cancel:"Cancel",continue:"Continue",saveFiles:"Save files",saveWebsite:"Save website",savingFiles:"Saving files...",processingSite:"Processing site..."},errors:{noFiles:"Please select at least one file",noUrl:"Please enter a valid URL",noFilesProcessed:"Files could not be processed",creationError:"An error occurred while creating the datastore"},toasts:{creating:"Creating datastore...",created:"Datastore created successfully",processingWebsite:"Processing website...",websiteProcessing:"Website is being processed",websiteFullDesc:"The entire site is being processed. You will receive a notification when it's ready.",websitePageDesc:"The page is being processed. You will receive a notification when it's ready.",gettingUploadUrl:"Getting upload URL for {fileName}...",uploading:"Uploading {fileName}...",processing:"Processing {fileName}...",fileSuccess:"{fileName} processed successfully",fileError:"Error processing {fileName}",datastoreCreatedWithFiles:"Datastore created with {processed} of {total} files"}},enterpriseModal:{title:"Enterprise Solutions",subtitle:"Unlock the full potential of AI agents with our enterprise-grade platform",description:"Unlock the full potential of AI agents with our enterprise-grade platform",solutions:{security:{title:"Security & Compliance",description:"SOC2 compliant with enterprise-grade security, SSO, and advanced permissions."},customIntegrations:{title:"Custom Integrations",description:"Tailored integrations with your existing systems and workflows."},dedicatedSupport:{title:"Dedicated Support",description:"24/7 priority support with a dedicated customer success manager."},multiRegion:{title:"Multi-Region Deployment",description:"Deploy agents across multiple regions for optimal performance and compliance."},customSLA:{title:"Custom SLA",description:"Tailored service level agreements to meet your business requirements."},onboarding:{title:"Onboarding & Training",description:"Comprehensive onboarding and training programs for your team."}},cta:{title:"Ready to scale your AI capabilities?",description:"Contact our sales team to discuss custom pricing and implementation.",contactSales:"Contact Sales",learnMore:"Learn More"}},improveAnswerModal:{loading:"Loading...",noDatastore:{title:"This agent has no datastore. Please create a datastore first.",action:"Create Datastore"},info:"This action will add a new Q&A Datasource to your Datastore.",datastoreLabel:"Datastore",selectDatastore:"Select datastore"},mfaEnforcer:{required:"Two-factor authentication is required. Please enable 2FA in Security settings."},settings:{profile:{title:"Profile Settings",description:"Manage your personal information and preferences",saved:"Saved",successMessage:"Profile updated successfully",errorMessage:"Error updating profile",sections:{profilePicture:{title:"Profile Picture",uploadNew:"Upload New",remove:"Remove",helperText:"JPG, PNG or GIF \u2022 Max 2MB"},personalInfo:{title:"Personal Information",fullName:"Full Name",fullNamePlaceholder:"Enter your full name",emailAddress:"Email Address",emailHelperText:"Email address cannot be changed"},preferences:{title:"Preferences",language:"Language",darkMode:"Dark Mode",darkModeDescription:"Use dark theme across the platform"},security:{title:"Security",description:"Manage your account security settings",backToProfile:"\u2190 Back to Profile",accountSecurity:"Account Security",accountSecurityDescription:"Manage 2FA and security options",twoFactor:{title:"Two-Factor Authentication (2FA)",enabledActive:"\u2713 Enabled and active",description:"Add an extra layer of security to your account",manage:"Manage",enable:"Enable 2FA"},mfaRequired:{title:"2FA Required:",description:"Your administrator requires two-factor authentication for your account.",pleaseEnable:"Please enable 2FA to continue using the platform."}}},autoSave:"Changes are saved automatically"},team:{title:"Team Settings",description:"Manage your team members and organization",noOrganization:"You need to be part of an organization to access team settings"},billing:{title:"Billing Settings",description:"Manage your subscription and billing",noOrganization:"You need to be part of an organization to access billing settings",status:{active:"Active",free:"Free"},pricing:{perMonth:"/month"},planIncludes:"Plan includes:",features:{agents:"Agents",datastores:"Datastores",monthlyBudget:"{budget} USD monthly AI credits",storage:"words storage",fileUploads:"file uploads",teamMembers:"Up to {count} team members"},actions:{upgradePlan:"Upgrade Plan",manageBilling:"Manage Billing"},upgrade:{title:"Upgrade Your Plan",description:"Choose a plan that fits your needs"},modals:{cancel:{title:"Cancel Subscription",description:"Are you sure you want to cancel your subscription? Your plan will remain active until the end of your current billing period.",whatHappens:"What happens next:",feature1:"\u2022 Premium features until billing period ends",feature2:"\u2022 Automatic downgrade to Free plan",feature3:"\u2022 Data preserved with Free plan limits",feature4:"\u2022 Reactivate anytime",keepSubscription:"Keep Subscription",canceling:"Canceling...",confirmCancel:"Cancel Subscription"},downgrade:{title:"Downgrade Subscription",description:"Downgrading from {current} to {target}.",changesTitle:"Changes after downgrade:",agents:"Agents:",datastores:"Datastores:",queries:"Monthly queries:",price:"Price:",important:"Important:",importantText:"Changes take effect immediately. Features may be restricted if you exceed new limits.",keepCurrent:"Keep Current Plan",processing:"Processing...",confirmDowngrade:"Downgrade to {plan}"}}},apiKeys:{title:"API Keys",description:"Authenticate your API requests with secure keys",noOrganization:"You need to be part of an organization to access API keys",infoAlert:"Keep your keys secure and never share them publicly.",readDocs:"Read docs",yourKeys:"Your Keys",newKey:"New Key",emptyState:{title:"No API keys yet",description:"Create your first key to get started"},actions:{copy:"Copy to clipboard",delete:"Delete key"},toast:{created:"API key created successfully",createError:"Failed to create API key",mustHaveOne:"You must have at least one API key",confirmDelete:"Are you sure you want to delete this API key?",deleted:"API key deleted successfully",deleteError:"Failed to delete API key",copied:"API key copied to clipboard"},usage:{title:"How to use",headerDescription:"Include your API key in the request header:",headerExample:"Authorization: Bearer YOUR_API_KEY",exampleRequest:"Example request:"}},notifications:{title:"Notifications",description:"Configure notification preferences and recipients",noOrganization:"You need to be part of an organization to access notification settings",recipients:{title:"Who gets notified?",description:"Select team members and add external emails to receive notifications",teamMembers:"Team Members",selected:"{selected} of {total} selected",externalRecipients:"External Recipients",emailPlaceholder:"Enter email address",add:"Add",unknown:"Unknown"},sound:{title:"Sound Notifications",streamCompletion:"Stream completion",streamCompletionDescription:"Play sound when AI response completes",newMessage:"New message alert",newMessageDescription:"Notification sound for new messages",errorAlerts:"Error alerts",errorAlertsDescription:"Sound notification for errors"},email:{title:"Email Notifications",weeklyReports:"Weekly reports",weeklyReportsDescription:"Summary of your weekly activity",agentUpdates:"Agent updates",agentUpdatesDescription:"Notifications about your agents",securityAlerts:"Security alerts",securityAlertsDescription:"Important security notifications"},inApp:{title:"In-App Notifications",conversationUpdates:"Conversation updates",conversationUpdatesDescription:"Activity in your conversations",teamActivity:"Team activity",teamActivityDescription:"Updates from your team members",systemUpdates:"System updates",systemUpdatesDescription:"Platform updates and announcements"},toast:{saved:"Settings saved",saveError:"Failed to save settings",invalidEmail:"Please enter a valid email address",emailExists:"Email already added"}}},widgets:{bubble:{tabs:{basic:"Basic",suggestions:"Suggestions",style:"Style",code:"Install"},sections:{displayNameDescription:"This title will appear in the chat header",initialMessageDescription:"Initial message that your users will see",helpLinksDescription:"Add useful links that will appear below the initial message",additionalOptions:"Additional Options",suggestionsDescription:"Add suggestions that your users can quickly select",primaryColorDescription:"Define the primary color of your widget",customCSSDescription:"Add custom CSS styles (advanced)",installTitle:"Installation Code",installDescription:"Copy and paste this code snippet into your website, just before the closing </body> tag.",installHint:"Click the code block to copy it to your clipboard."},preview:{initializing:"Initializing..."},toast:{configSaved:"Configuration saved successfully",configError:"Error saving configuration",codeCopied:"Code copied to clipboard!"}},iframe:{tabs:{basic:"Basic",style:"Style",code:"Code"},sections:{displayNameDescription:"This title will appear in the chat header",initialMessageDescription:"Initial message that your users will see",additionalOptions:"Additional Options",primaryColorDescription:"Define the primary color of your widget",customCSSDescription:"Add custom CSS styles (advanced)",codeDescription:"Copy this code into your HTML page"},preview:{initializing:"Initializing..."},toast:{configSaved:"Configuration saved successfully",configError:"Error saving configuration",codeCopied:"Code copied!"}},standalone:{sections:{standalonePage:"Standalone Page",welcomeBanner:"Welcome Banner",agentAvatar:"Agent Avatar",messageAndBranding:"Message and Branding",organizationLogo:"Organization Logo",socialNetworks:"Social Networks"},preview:{liveLabel:"Live",refreshPreview:"Refresh preview"},agentAvatar:{title:"Agent Avatar",readOnly:"This is the agent's main avatar (not editable from here)",changeInBuilder:"To change the agent's avatar, use the Builder or generate one with AI"},organizationLogo:{noLogo:"No organization logo configured",configureInSettings:"To configure the organization logo, go to organization settings",displayedAt:"Displayed in the top left corner of the banner",changeInSettings:"To change the logo, go to organization settings"},bannerStyles:{gradients:{sunset:{name:"Sunset",description:"Orange to pink gradient"},ocean:{name:"Ocean",description:"Navy blue gradient"},forest:{name:"Forest",description:"Natural green gradient"},purple:{name:"Purple Dream",description:"Vibrant purple gradient"}},solids:{blue:{name:"Blue",description:"Professional blue"},green:{name:"Green",description:"Corporate green"},purple:{name:"Purple",description:"Modern purple"},red:{name:"Red",description:"Intense red"}},solid3d:{blue:{name:"Blue 3D",description:"Blue with depth"},orange:{name:"Orange 3D",description:"Orange with shadows"},teal:{name:"Teal 3D",description:"Teal 3D"},pink:{name:"Pink 3D",description:"Pink with relief"}},animated:{aurora:{name:"Aurora",description:"Soft aurora waves"},fire:{name:"Fire",description:"Energetic flames"},neon:{name:"Neon",description:"Vibrant neon"},ocean:{name:"Ocean Waves",description:"Calm waves"}}},toast:{configSaved:"Configuration saved successfully",configError:"Error saving configuration"}},fields:{initialMessage:{label:"Initial message",placeholder:"Hello! How can I help you?",helper:"A friendly welcome message for your users (max 300 characters)"},helpLinks:{label:"Help links",addButton:"Add link",empty:"No help links configured. Add links for users to access additional resources.",linkNumber:"Link {{number}}",labelField:"Link text",labelPlaceholder:"E.g. Documentation",urlField:"URL",urlPlaceholder:"https://example.com",helper:"Add up to 4 useful links that will appear in the welcome screen"},messageTemplates:{addPlaceholder:"Add a suggestion...",helper:"Maximum 3 suggestions. Press Enter to add.",defaultTemplates:{template1:"What is horneross.com?",template2:"Plan pricing"}},displayName:{label:"Chat title",placeholder:"E.g. horneross Support"},bannerTitle:{label:"Banner title",placeholder:"Welcome to our assistant!"},bannerSubtitle:{label:"Subtitle",placeholder:"I'm here to help you 24/7"},organizationName:{label:"Organization Name",placeholder:"Your company name (appears next to the logo)",helper:"This name will appear next to the logo in the banner. Leave it empty to not display any name."},handle:{label:"Bot Handle",placeholder:"my_awesome_bot",errorRequired:"Handle is required",errorTaken:"Handle already taken",errorValidating:"Error validating handle",copied:"Copied!",viewPage:"View page"},primaryColor:{label:"Primary color"},customCSS:{label:"Custom CSS",placeholder:`/* Your custom CSS */
|
|
83
83
|
.chat-container {
|
|
84
84
|
/* styles */
|
|
85
|
-
}`},brandingDisabled:{label:"Hide horneross branding (Pro)"},initPopupDisabled:{label:"Disable initial message popup"},transparentBackground:{label:"Transparent background"}},shared:{publicWarning:{title:"Agent visibility",description:"This widget will only work if your agent is public. Please make sure your agent's visibility is set to public."},loading:"Loading widget configuration...",saveButton:{save:"Save Changes",saving:"Saving...",unsavedChanges:"You have unsaved changes"}}},datasourceForms:{file:{excelFormatAlert:"For Excel files, make sure to follow the correct format.",excelFormatLink:"See example here",removeFile:"Remove file",dragDropTitle:"Drop the file here",dragDropTitleIdle:"Drag and drop your file here",dragDropSubtitle:"or click to select",supportedFormatsLabel1:"PDF, PowerPoint, Excel",supportedFormatsLabel2:"Word, Text, Markdown",descriptionLabel:"Content description",descriptionPlaceholder:"Describe the file content: what information it contains, how it's structured, what columns it has if it's a table, etc.",descriptionHelp:"A good description helps the agent better understand your information",usageLimitTitle:"Size limit exceeded",usageLimitDescription:"Please upgrade your plan to upload larger files."},webPage:{pageTitle:"Web Page",pageDescription:"Extract content from a specific URL",infoAlert:"Process content from an individual web page. Ideal for articles, blogs, specific documentation or landing pages.",urlLabel:"Page URL",urlPlaceholder:"https://example.com/article",urlHelp:"Enter the full URL of the page you want to process"},webSite:{method1Title:"Site URL",limitInfo:"Limit: {limit} pages \u2022 45 sec max",siteUrlLabel:"Main site URL",siteUrlPlaceholder:"https://example.com",additionalConfigTitle:"Additional Configuration (Optional)",additionalConfigDescription:"Sitemap, site description and pages to exclude",method2Title:"Use Sitemap",sitemapLabel:"Sitemap URL",sitemapLabelOptional:"(optional)",sitemapPlaceholder:"https://example.com/sitemap.xml",sitemapHelp:"Faster and more accurate if the site has a public sitemap",descriptionLabel:"Content description",descriptionPlaceholder:"Describe the content or context of this site...",descriptionHelp:"Helps the agent understand when to use this information",excludedUrlsTitle:"Excluded URLs",excludedUrlsDescription:"Exclude specific pages from scanning",excludedUrlPlaceholder:"https://example.com/admin/*",addExcludedUrl:"Add Excluded URL",excludedUrlsAlert:"Supports glob patterns. Example:",removeUrl:"Remove URL"},youtube:{singleVideo:"Single video",playlist:"Playlist",channel:"Channel",urlLabel:"YouTube URL",urlPlaceholder:"https://www.youtube.com/watch?v=...",urlHelp:"Video, playlist or channel"},notion:{selectAccount:"Select Account",selectAccountPlaceholder:"Select an account",addAccount:"Notion: Add Account",notebooksLabel:"Notebooks",notebooksPlaceholder:"Select notebooks...",cannotSeeNotebooks:"Can't see your notebooks? There is currently an issue with the Notion API that requires you to manually link a page to our integration. For guidance on how to do this, please watch the video below.",usedNotebook:"Used notebook",loadingPages:"loading pages.."},text:{contentLabel:"Text content",contentPlaceholder:"Write or paste here the content you want to add to the database...",contentHelp:"This text will be indexed and available for the agent when answering questions"},namePlaceholder:"E.g.: API Documentation, User Guide...",nameLabel:"Name",nameHelper:"A descriptive name to identify this content",sourceUrlPlaceholder:"https://example.com/original-source",sourceUrlLabel:"Source URL (optional)",extractedText:"Extracted Text",submit:"Save",saving:"Saving...",additionalConfig:"Additional settings",tags:"Tags",tagsHelper:"Add tags to organize your content"},integrations:{instagram:{title:"Instagram Messenger",description:"Manage your connected Instagram accounts",noAccounts:"No accounts connected yet.",connected:"Connected",delete:"Delete",connectNewAccount:"Connect New Account",backToList:"Back to list",setupTitle:"Configure Instagram Messenger",setupDescription:"Connect your Meta account",stepConnect:"Connect",stepReady:"Ready",connectMeta:"Connect with Meta",connectMetaDescription:"Connect your Facebook account to manage Instagram Messenger.",oauthTitle:"OAuth with Meta",oauthDescription:"We will redirect you to Facebook to authorize the connection with Instagram Messenger. Make sure you have admin permissions on the page.",viewDocs:"View documentation",successTitle:"Ready!",successDescription:"Your Instagram Messenger account has been successfully connected.",cancel:"Cancel",back:"Back",connecting:"Connecting...",finish:"Finish",connectWithMeta:"Connect with Meta",errorConnect:"Error connecting with Meta"},telegram:{title:"Telegram",description:"Manage your connected Telegram bots",noBots:"No bots connected yet.",connected:"Connected",openInTelegram:"Open in Telegram",delete:"Delete",connectNewBot:"Connect New Bot",backToList:"Back to list",setupTitle:"Configure Telegram Bot",setupDescription:"Connect your bot step by step",stepToken:"Token",stepVerify:"Verify",stepReady:"Ready",getTokenTitle:"Get the token",getTokenDescription:"Create a bot with @BotFather on Telegram.",createBotTitle:"Create your bot on Telegram",createBotDescription:"Talk to @BotFather, use the /newbot command and follow the instructions. You will receive an access token.",free:"Free",openBotFather:"Open BotFather",botToken:"Bot Token",verifyingBot:"Verifying bot",verifyingBotDescription:"We are verifying the connection with your Telegram bot.",verified:"Verified",successTitle:"Ready!",successDescription:"Your Telegram bot has been successfully connected.",cancel:"Cancel",back:"Back",finish:"Finish",connectBot:"Connect Bot",next:"Next"},slack:{title:"Slack Bot",settings:"Settings",activeConnections:"Active connections",notConnected:"Not connected to any Slack workspace",connectToSlack:"Connect to Slack"},chatwoot:{title:"Chatwoot Connections",description:"Manage your connected Chatwoot instances and agent bots.",searchPlaceholder:"Search agents...",connectNewAccount:"Connect New Account",testingPlatformToken:"\u{1F50D} Testing Platform App token...",platformConfigured:"\u2705 Platform App configured correctly",configureUserToken:"\u{1F4A1} Now configure the user token",errorTestingPlatformToken:"Error testing Platform App token"}}},authCarousel:{sponsors:{title:"Powered by Leading AI Technologies",subtitle:"Integrating the best AI models in the market"},clients:{title:"Trusted by thousands of businesses",scale:{title:"Scale your customer support effortlessly",testimonial:"We reduced our response time by 80% while maintaining excellent quality. Our customers are happier and our team can focus on complex cases.",author:"Mar\xEDa Gonz\xE1lez",company:"Head of Support, TechCorp"},support:{testimonial:"Horneross transformed how we interact with our customers. We can now serve thousands of people simultaneously without losing that personal touch.",author:"Carlos Rodr\xEDguez",company:"CEO, StartupXYZ"}}},auth:{signin:{title:"Sign In",loading:"Signing in...",error:"An error occurred. Please try again later.",termsPrefix:"By continuing, you accept our",termsLink:"Terms and Conditions",and:"and",privacyLink:"Privacy Policy"},signup:{title:"Sign Up",loading:"Creating your account...",error:"An error occurred. Please try again later.",termsPrefix:"By signing up, you accept our",termsLink:"Terms and Conditions",and:"and",privacyLink:"Privacy Policy"}},common:{actions:{save:"Save",cancel:"Cancel",delete:"Delete",edit:"Edit",create:"Create",loading:"Loading...",search:"Search",filter:"Filter",export:"Export",import:"Import",refresh:"Refresh",yes:"Yes",no:"No",confirm:"Confirm",close:"Close"},errors:{generic:"Something went wrong. Please try again.",network:"Network error. Check your connection.",unauthorized:"You are not authorized to perform this action.",notFound:"Resource not found.",validation:"Please check your input and try again.",systemProblems:"We are experiencing some problems. Please try again later. Sorry for the inconvenience!",loadingDashboard:"Error loading dashboard",loadingDataMessage:"We couldn't load your organization data. Please try again.",retry:"Retry"},success:{saved:"Successfully saved",deleted:"Successfully deleted",created:"Successfully created",updated:"Successfully updated"},status:{loading:"Loading...",saving:"Saving...",success:"Success!",error:"Error"}},tools:{web_search:{title:"Web Search",loading:"Searching the web...",complete:"Search complete",error:"Search error"},scrape_webpage:{title:"Web Scraping",loading:"Extracting page content...",complete:"Content extracted",error:"Failed to extract page"},deep_search:{title:"Deep Search",loading:"Performing deep search...",complete:"Deep search complete",error:"Deep search error"},image_search:{title:"Image Search",loading:"Searching images...",complete:"Images found",error:"Image search error"},people_search:{title:"People Search",loading:"Searching people...",complete:"People found",error:"People search error"},create_agent:{title:"Create Agent",loading:"Creating agent...",complete:"Agent created successfully",error:"Failed to create agent"},update_agent:{title:"Update Agent",loading:"Updating agent...",complete:"Agent updated successfully",error:"Failed to update agent"},get_agent_prompt:{title:"Get Agent Prompt",loading:"Reading agent prompt...",complete:"Prompt retrieved",error:"Failed to get prompt"},update_agent_prompt:{title:"Update Agent Prompt",loading:"Updating prompt...",complete:"Prompt updated",error:"Failed to update prompt"},get_prompt_history:{title:"Prompt History",loading:"Loading history...",complete:"Version history",error:"Failed to load history"},rollback_prompt:{title:"Rollback Prompt",loading:"Restoring previous version...",complete:"Prompt restored",error:"Failed to restore prompt"},generate_prompt:{title:"Generate Prompt",loading:"Generating prompt...",complete:"Prompt generated",error:"Failed to generate prompt"},append_agent_prompt:{title:"Append Prompt",loading:"Appending to prompt...",complete:"Prompt updated",error:"Failed to append prompt"},think:{title:"Thinking",loading:"Thinking...",complete:"Thought complete",error:"Failed to process thought"},advanced_reasoning:{title:"Advanced Reasoning",loading:"Advanced reasoning...",complete:"Reasoning complete",error:"Reasoning error"},code_interpreter:{title:"Code Interpreter",loading:"Executing code...",complete:"Code executed",error:"Execution error"},generate_avatar:{title:"Generate Avatar",loading:"Generating avatar...",complete:"Avatar generated",error:"Failed to generate avatar"},generate_image:{title:"Generate Image",loading:"Generating image...",complete:"Image generated",error:"Failed to generate image"},datastore_query:{title:"Knowledge Base Search",loading:"Searching knowledge base...",complete:"Search complete",error:"Failed to search knowledge base",query:"Query",result:"result",results:"results",noResults:"No results found"},search_documentation:{title:"Search Documentation",loading:"Searching documentation...",complete:"Search complete",error:"Failed to search documentation"},http_request:{title:"API Request",loading:"Making HTTP request...",complete:"Request complete",error:"HTTP request error"},capture_lead:{title:"Capture Lead",loading:"Capturing lead...",complete:"Lead captured successfully",error:"Failed to capture lead"},mark_resolved:{title:"Mark Resolved",loading:"Marking as resolved...",complete:"Conversation marked as resolved",error:"Failed to mark as resolved"},request_human:{title:"Request Human Agent",loading:"Requesting human agent...",complete:"Human agent requested",error:"Failed to request human agent"},send_files:{title:"Send Files",loading:"Sending files...",complete:"Files sent",error:"Failed to send files"}},emails:{datasourceSynced:{eyebrow:"Knowledge base synced",greeting:"Hi {userName},",greetingNoName:"Hi,",message:"Your knowledge base has been successfully processed and is ready to be used by your agents.",stats:{chunks:"Chunks",tokens:"Tokens",size:"Size"},contentPreview:"Content preview",ctaButton:"View in Dashboard",footer:"This email is sent automatically when a knowledge base syncs successfully."},websiteSyncComplete:{eyebrow:"Website synced",greeting:"Hi {userName},",greetingNoName:"Hi,",message:"Your website sync has finished.",summary:"Sync summary",pagesFound:"Pages found",synced:"Synced",withErrors:"With errors",completed:"completed",indexedContent:"Indexed content",chunks:"Chunks",tokens:"Tokens",warningMessage:"Some pages could not be processed. You can check the details in the dashboard.",ctaButton:"View in Dashboard",footer:"This email is sent automatically when a website sync completes."},subject:{datasourceSynced:'Knowledge base "{name}" synced',websiteSynced:'Website "{name}" synced - {synced}/{total} pages'}}};var VV={pages:{deploy:{title:"Canales de Integraci\xF3n",subtitle:"Conecta tu agente con las plataformas que utilizas",searchPlaceholder:"Buscar canal de integraci\xF3n...",noAgentId:"No se encontr\xF3 ID del agente",enablePublicAgent:"Habilitar agente p\xFAblico",configure:"Configurar",upgradePlan:"Actualizar plan",publicAgentRequired:"Esta integraci\xF3n requiere un agente p\xFAblico. \xBFDeseas hacer tu agente p\xFAblico?",integrations:{webBubble:"Burbuja de Chat Web",webStandard:"Chat Web Est\xE1ndar",webStandalone:"P\xE1gina Web Independiente",crmhorneross:"CRM horneross",chatwoot:"Chatwoot",whatsapp:"WhatsApp",zapier:"Zapier",telegram:"Telegram",slack:"Slack",wordpress:"WordPress",mercadolibre:"Mercado Libre"},modals:{chatBubble:"Configuraci\xF3n de Burbuja de Chat",standardChatbox:"Configuraci\xF3n de Chatbox Est\xE1ndar",standalonePage:"Configuraci\xF3n de P\xE1gina Independiente",configurations:"Configuraciones"},usageLimit:{title:"Caracter\xEDstica Premium",description:"Esta integraci\xF3n requiere un plan premium. Actualiza tu plan para desbloquear esta caracter\xEDstica."}},dashboard:{title:"Panel de Control",subtitle:"Mostrando datos del {from} al {to}",loading:"Cargando an\xE1lisis del panel...",accessDenied:{title:"Acceso Denegado",message:"Solo los administradores y propietarios de la organizaci\xF3n pueden acceder a este panel."},error:{title:"Error al Cargar Panel",message:"Error al cargar las estad\xEDsticas del panel"},actions:{viewLogs:"Ver Registros",selectRange:"Seleccionar rango"},dateFilter:{quickPresets:"Presets r\xE1pidos",days7:"7 d\xEDas",days30:"30 d\xEDas",days90:"90 d\xEDas",selectHelp:"Selecciona la fecha de inicio y fin del rango",daysSelected:"{count} d\xEDas seleccionados",reset:"Reiniciar",cancel:"Cancelar",apply:"Aplicar"},metrics:{activeAgents:"Agentes activos",datastores:"Datastores",newContacts:"Nuevos contactos",conversations:"Conversaciones",thisMonth:"este mes"},chart:{messageStats:"Estad\xEDsticas de Mensajes",groupedByMonth:"Datos agrupados por mes",groupedByWeek:"Datos agrupados por semana",daily:"Datos diarios",inRange:{days:"{count} d\xEDas en el rango",weeks:"{count} semanas en el rango",months:"{count} meses en el rango"},tooltip:{day:"D\xEDa",week:"Semana",month:"Mes",messages:"mensajes"}},agentPerformance:{title:"Rendimiento de Agentes",conversations:"conversaciones",noData:"No hay datos de agentes disponibles"}},agents:{title:"Agentes",description:"Los agentes son instancias personalizables de modelos de lenguaje grandes adaptadas para ajustarse a tus casos de uso espec\xEDficos. Al conectarlos a un almac\xE9n de datos, puedes entrenarlos en tu base de conocimientos \xFAnica.",newAgent:"Nuevo Agente",preparingAgents:"Preparando tus agentes...",tutorial:"Ver tutorial - Creaci\xF3n de agentes",requestFeature:"Solicitar mejora",requestFeatureDescription:"\xBFQuieres una nueva mejora?",requestAgent:"Solicitar agente",requestAgentDescription:"\xBFQuieres un nuevo agente?",new:"Nuevo",create:"Crear"},datastores:{title:"Fuentes",description:"Organiza tus bases de conocimiento con archivos, p\xE1ginas web y otras fuentes de datos.",fileMovedSuccess:"Archivo movido exitosamente",fileMovedError:"Error al mover el archivo. Intenta de nuevo.",folderDeletedSuccess:"Carpeta eliminada exitosamente",folderDeletedError:"Error al eliminar la carpeta",fileDeletedSuccess:"Archivo eliminado exitosamente",fileDeletedError:"Error al eliminar el archivo",errorUpdatingName:"Error al actualizar el nombre del datastore. Por favor intenta de nuevo.",tokens:"tokens",chunks:"chunks",files:"Archivos",configuration:"Configuraci\xF3n",dataFile:"Archivo de datos",fileConfiguration:"Configuraci\xF3n del Archivo",fileConfigurationDescription:"Actualiza los detalles y configuraci\xF3n de este archivo de datos",updateConfiguration:"Actualizar Configuraci\xF3n",dangerZone:"Zona de Peligro",dangerZoneDescription:"Eliminar este archivo de forma permanente",deleteFileTitle:"\xBFEliminar archivo?",deleteFileWarning:"Esta acci\xF3n",deleteFileWarningBold:"no se puede deshacer",deleting:"Eliminando...",emptyStateTitle:"No tienes carpetas ni archivos a\xFAn",emptyStateDescription:"Crea tu primera carpeta o sube un archivo para empezar",newFolder:"Nueva Carpeta",newFile:"Nuevo Archivo",folders:"Carpetas",settings:{pluginIconUpdated:"\xCDcono del plugin actualizado exitosamente",pluginUpdated:"Plugin actualizado exitosamente",pluginIcon:"\xCDcono del Plugin",replace:"Reemplazar",delete:"Eliminar",nameForHumans:"Nombre para Humanos",nameForHumansPlaceholder:"Mi Plugin Personalizado",descriptionForHumans:"Descripci\xF3n para Humanos",descriptionForHumansPlaceholder:"Una breve descripci\xF3n de tu plugin",descriptionForModel:"Descripci\xF3n para el Modelo",descriptionForModelPlaceholder:"Plugin para consultar datos de {name}. \xDAsalo para responder preguntas sobre la base de conocimiento.",pluginDescriptionBestPractices:"Ver Mejores Pr\xE1cticas de Descripci\xF3n de Plugin",update:"Actualizar",pluginRoot:"URL Ra\xEDz del Plugin",copied:"Copiado al portapapeles",settingsUpdated:"Configuraci\xF3n actualizada exitosamente",errorUpdating:"Error al actualizar la configuraci\xF3n",deleteSuccess:"Carpeta eliminada exitosamente",deleteError:"Error al eliminar la carpeta"}},conversations:{title:"Conversaciones",description:"Ver todas las conversaciones",noConversations:"No se encontraron conversaciones"},contacts:{title:"Contactos",subtitle:"Gestiona todos tus leads y clientes",tabs:{all:"Todos",recent:"Recientes"},exportCSV:"Exportar CSV",totalContacts:"Total de Contactos",lastSixMonthsTrend:"Tendencia \xFAltimos 6 meses",newThisWeek:"Nuevos Esta Semana",newContacts:"nuevos contactos",dailyBreakdown:"Desglose diario:",withEmail:"Con Email",contactsWithEmail:"Contactos con datos de email",searchPlaceholder:"Buscar contactos...",reload:"Recargar",resultsFound:"{count} resultado encontrado",resultsFoundPlural:"{count} resultados encontrados",unknown:"Desconocido",copyContactInfo:"Copiar informaci\xF3n del contacto",showingContacts:"Mostrando <strong>{from}</strong> a <strong>{to}</strong> de <strong>{total}</strong> contactos",previous:"Anterior",next:"Siguiente",noResultsFound:"No se encontraron resultados",noContactsYet:"A\xFAn no hay contactos",adjustSearchTerms:"Intenta ajustar tus t\xE9rminos de b\xFAsqueda o limpia los filtros para ver todos los contactos.",emptyContactList:"Tu lista de contactos est\xE1 vac\xEDa. Los contactos aparecer\xE1n autom\xE1ticamente aqu\xED cuando tus agentes interact\xFAen con los clientes.",clearSearch:"Limpiar b\xFAsqueda",refresh:"Refrescar"},logs:{title:"Registros de Actividad",description:"Monitorea y analiza toda la actividad en tu organizaci\xF3n",actions:{generateReport:"Generar Reporte",reload:"Recargar"},search:{placeholder:"Buscar registros..."},dateFilter:{quickPresets:"Presets r\xE1pidos",days7:"7 d\xEDas",days30:"30 d\xEDas",days90:"90 d\xEDas",selectHelp:"Selecciona inicio y fin",daysSelected:"{count} d\xEDas seleccionados",reset:"Reiniciar",cancel:"Cancelar",apply:"Aplicar"},metrics:{totalRequests:"Total Requests",totalCost:"Costo Total",avgResponseTime:"Tiempo Promedio",tokensUsed:"Tokens Usados",last30Days:"\xFAltimos 30 d\xEDas",thisMonth:"este mes",perResponse:"por respuesta",totalConsumed:"total consumidos"}},iframePage:{defaultAssistant:"Asistente",agentNotAvailable:"Agente no disponible",privateAgentMessage:'Este agente es privado y no puede ser embebido. Cambia la visibilidad a "p\xFAblico" para usar el iframe.',loading:"Cargando...",noConversations:"No hay conversaciones previas",newConversation:"Nueva conversaci\xF3n"},standalonePage:{defaultAssistant:"tu asistente",defaultAgent:"Agente",restrictedAccess:"Acceso restringido",privateAgent:"Agente privado",requiresAuth:"Este agente es privado y requiere autenticaci\xF3n para acceder.",login:"Iniciar sesi\xF3n",newConversation:"Nueva conversaci\xF3n",noConversations:"No hay conversaciones",untitledConversation:"Conversaci\xF3n sin t\xEDtulo",expandSidebar:"Expandir sidebar",writeMessage:"Escribe tu mensaje...",initialMessage:"\xA1Hola! \u{1F44B} Soy {agentName}. \xBFEn qu\xE9 puedo ayudarte hoy?"},agentsList:{tabs:{all:"Todos",marketplace:"Marketplace"},sort:{recent:"M\xE1s recientes",name:"Nombre",conversations:"Conversaciones"},buttons:{creating:"Creando...",createNew:"Crear agente",new:"Nuevo",install:"Instalar",evaluate:"Evaluar",deleteAgent:"Eliminar agente"},sections:{recentAgents:"Agentes recientes",featuredAgents:"Agentes destacados"},table:{name:"Nombre",lastRun:"\xDAltima ejecuci\xF3n",integrations:"Integraciones",widget:"Instalar",evaluate:"Evaluar",enabled:"Habilitado"},emptyState:{title:"\xA1Comienza a Chatear!",description:"Inicia una conversaci\xF3n y deja que nuestro asistente te ayude a crear y configurar tu primer agente de manera guiada",startingConversation:"Iniciando conversaci\xF3n...",startChatting:"Empezar a Chatear",helperText:"El asistente te guiar\xE1 paso a paso en la creaci\xF3n de tu agente"},marketplace:{searchPlaceholder:"Buscar agentes por nombre o descripci\xF3n...",featuredAgents:"Agentes destacados",noResults:"No encontramos prompts",noResultsDescription:"Intenta ajustar tu b\xFAsqueda para encontrar lo que buscas."},deleteModal:{title:"Eliminar agente",confirmText:"\xBFEst\xE1s seguro de que deseas eliminar el agente",warningTitle:"Esta acci\xF3n no se puede deshacer:",warningItems:{versions:"Se eliminar\xE1n todas las versiones del agente",conversations:"Se eliminar\xE1n todas las conversaciones del agente",config:"Se perder\xE1 toda la configuraci\xF3n y personalizaci\xF3n",files:"Los archivos asociados ser\xE1n eliminados permanentemente"},cancel:"Cancelar",deleting:"Eliminando...",deleteAgent:"Eliminar agente"},toast:{agentDeleted:'Agente "{name}" eliminado correctamente',deleteError:"Error al eliminar el agente"}},deployPage:{title:"Instalar Agente",subtitle:"Elige d\xF3nde desplegar tu agente",comingSoon:"Pr\xF3ximamente",enablePublicAgent:"Habilitar agente p\xFAblico",upgradePlan:"Actualizar plan",confirmPublicAgent:"Esta integraci\xF3n requiere un agente p\xFAblico. \xBFDeseas hacer tu agente p\xFAblico?",categories:{web:{name:"Instalar en tu Web",description:"Agrega el chat a tu sitio web"},messaging:{name:"Mensajer\xEDa",description:"Conecta con apps de mensajer\xEDa"},crm:{name:"CRM y Soporte",description:"Integra con tu sistema de atenci\xF3n"},ecommerce:{name:"Ecommerce",description:"Conecta con plataformas de venta"}},integrations:{bubble:{name:"Chat Flotante",description:"Burbuja de chat en la esquina de tu web"},iframe:{name:"Chat Embebido",description:"Inserta el chat dentro de tu p\xE1gina"},standalone:{name:"P\xE1gina Dedicada",description:"Una p\xE1gina completa para tu agente"},whatsapp:{description:"Responde autom\xE1ticamente en WhatsApp"},telegram:{description:"Bot para Telegram"},instagram:{description:"Responde mensajes de Instagram"},slack:{description:"Bot para tu workspace de Slack"},kapso:{description:"WhatsApp v\xEDa Kapso API"},horneross:{description:"CRM integrado de Horneross"},chatwoot:{description:"Plataforma de soporte open-source"},mercadolibre:{description:"Responde preguntas de Mercado Libre"},shopify:{description:"Integra tu agente en tu tienda Shopify"},tiendanube:{description:"Integra tu agente en tu tienda de Tienda Nube"}},modals:{bubble:"Configurar Chat Flotante",iframe:"Configurar Chat Embebido",standalone:"Configurar P\xE1gina Dedicada",configure:"Personaliza tu integraci\xF3n"},premiumRequired:{title:"Funci\xF3n Premium",description:"Esta integraci\xF3n requiere un plan premium. Actualiza tu plan para desbloquear esta funci\xF3n."}},widgetEditor:{title:"Editor de Widget",widgetTypes:{bubble:"Bubble",iframe:"iFrame",standalone:"Presentaci\xF3n"},header:{backToAgents:"Volver a agentes",save:"Guardar",saveChanges:"Guardar cambios"},privateAgent:{title:"Agente privado",publicTitle:"Agente p\xFAblico",publicDescription:"Este agente es accesible para cualquiera con el enlace.",bubbleRequiresPublic:"El widget bubble requiere que el agente sea p\xFAblico para funcionar.",iframeRequiresPublic:"El iframe requiere que el agente sea p\xFAblico para funcionar.",changeVisibility:'Cambia la visibilidad a "p\xFAblico" en la configuraci\xF3n del agente.',warningBubble:"El widget bubble requiere que el agente sea p\xFAblico.",warningIframe:"El iframe requiere que el agente sea p\xFAblico.",changeToPublic:"Cambiar a p\xFAblico",changeToPrivate:"Cambiar a privado",confirmTitle:"\xBFCambiar visibilidad del agente?",confirmDescription:"Esto har\xE1 que tu agente sea accesible para cualquiera con el enlace. El widget funcionar\xE1 una vez que el agente sea p\xFAblico.",confirmPrivateTitle:"\xBFHacer el agente privado?",confirmPrivateDescription:"Esto restringir\xE1 el acceso solo a tu organizaci\xF3n. El widget bubble y el iframe dejar\xE1n de funcionar en sitios web externos.",cancel:"Cancelar",confirm:"Cambiar a p\xFAblico",confirmPrivate:"Cambiar a privado",successMessage:"Visibilidad del agente cambiada a p\xFAblico",successPrivateMessage:"Visibilidad del agente cambiada a privado",errorMessage:"Error al cambiar la visibilidad del agente"},dropdown:{noAgents:"No hay agentes"},sidebar:{name:"Nombre",noName:"Sin nombre",nameDescription:"Se mostrar\xE1 en el header del chat",initialMessage:"Mensaje inicial",initialMessageDefault:"\xA1Hola! \xBFC\xF3mo puedo ayudarte?",initialMessageDescription:"Mensaje de bienvenida para usuarios",primaryColor:"Color principal",presentation:"Presentaci\xF3n",customUrl:"URL personalizada",customUrlDescription:"El enlace p\xFAblico para compartir tu agente",suggestions:"Sugerencias",suggestionsDescription:"Plantillas, popup, branding",messageTemplates:"Plantillas de mensaje",iframeOptions:"Opciones iFrame",transparentBackground:"Fondo transparente",helpLinks:"Links de ayuda",usefulLinks:"Enlaces \xFAtiles",customCSS:"CSS personalizado",configured:"Configurado",noStyles:"Sin estilos",installCode:"C\xF3digo de instalaci\xF3n",copySnippet:"Copiar snippet",copyDescription:"Copia y pega en tu sitio web",viewLive:"Ver en vivo",bubbleInstallHint:"Pega este c\xF3digo antes de la etiqueta </body> de tu sitio web. El chat aparecer\xE1 autom\xE1ticamente."},toast:{codeCopied:"C\xF3digo copiado!",clickToCopy:"Click para copiar",configSaved:"Configuraci\xF3n guardada!",saveError:"Error al guardar"}},hornerossBuilder:{title:"\xBFQu\xE9 te gustar\xEDa hacer hoy?",subtitle:"Crea tu <highlight>Empleado IA</highlight> simplemente <highlight>chateando con IA</highlight>.",subtitleParts:{prefix:"Crea tu",aiEmployee:"Empleado IA",middle:"simplemente",chattingWithAI:"chateando con IA"},placeholder:"Quiero un agente que monitoree mi bandeja de soporte y ayude a responder.",seo:{title:"Horneross - Constructor de Agentes IA | Crea Asistentes IA Personalizados",description:"Construye poderosos agentes de IA sin programar. Crea asistentes de IA personalizados para ventas, soporte, onboarding y automatizaci\xF3n. Conecta con tus datos y herramientas sin problemas.",keywords:"constructor de agentes IA, IA sin c\xF3digo, asistentes IA personalizados, automatizaci\xF3n IA, constructor de chatbots, agente de ventas IA, agente de soporte IA, IA conversacional"},usageLimitModal:{conversationsExceeded:{title:"L\xEDmite de conversaciones excedido",description:"Has alcanzado el l\xEDmite m\xE1ximo de conversaciones activas para tu plan. Por favor, resuelve o elimina conversaciones existentes, o actualiza tu plan para continuar."},agentsExceeded:{title:"L\xEDmite de agentes excedido",description:"Has alcanzado el l\xEDmite m\xE1ximo de agentes para tu plan. Por favor actualiza tu plan para crear m\xE1s agentes."}},autoStartPrompt:"\xA1Hola! Necesito crear un agente de IA. \xBFPuedes mostrarme ejemplos de agentes populares y ayudarme a elegir el que mejor se adapte a mi negocio?"}},components:{organizationForm:{organization:"Organizaci\xF3n",organizationName:"Nombre de la Organizaci\xF3n",organizationNamePlaceholder:"Nombre de la organizaci\xF3n",upload:"Subir",remove:"Quitar",inviteTeamMember:"Invitar Miembro del Equipo",enterEmail:"Ingresa direcci\xF3n de correo",sendInvite:"Enviar Invitaci\xF3n",invite:"Invitar",teamMembers:"Miembros del Equipo",seats:"asientos",active:"Activo",pending:"Pendiente",roleUser:"Usuario",roleAdmin:"Administrador",roleOwner:"Propietario",maxSeatsReached:"Has alcanzado el n\xFAmero m\xE1ximo de asientos para tu plan.",invitationSent:"Invitaci\xF3n enviada exitosamente",userAlreadyInvited:"Usuario ya invitado",invitationFailed:"No se puede enviar la invitaci\xF3n",invitationCreatedNoEmail:"Invitaci\xF3n creada, pero no se pudo enviar el email. Comparte el link manualmente.",emailNotSentShareLink:"No se pudo enviar el email. Comparte este link con el invitado:",linkCopied:"Link copiado al portapapeles",confirmRemoveMember:"Este usuario ser\xE1 eliminado de la organizaci\xF3n, \xBFest\xE1s seguro?",memberRemoved:"Miembro eliminado exitosamente",memberRemoveFailed:"Error al eliminar miembro",iconUpdated:"\xCDcono actualizado exitosamente",iconUploadFailed:"Error al subir \xEDcono",iconDeleted:"\xCDcono eliminado exitosamente",iconDeleteFailed:"Error al eliminar \xEDcono",expiresOn:"Expira el",invitationExpired:"Invitaci\xF3n expirada",expired:"Expirado",resendInvitation:"Reenviar invitaci\xF3n",cancelInvitation:"Cancelar invitaci\xF3n",removeMember:"Eliminar miembro",invitationResent:"Invitaci\xF3n reenviada exitosamente",resendFailed:"Error al reenviar invitaci\xF3n",confirmCancelInvite:"Esta invitaci\xF3n ser\xE1 cancelada. \xBFEst\xE1s seguro?",invitationCancelled:"Invitaci\xF3n cancelada",cancelFailed:"Error al cancelar invitaci\xF3n"},integrationsManagement:{pageTitle:"Integraciones",pageDescription:"Conecta tus herramientas de comunicaci\xF3n",statusConnected:"Conectado",statusAvailable:"Disponible",statusComingSoon:"Pr\xF3ximamente",comingSoonMessage:"Esta integraci\xF3n estar\xE1 disponible pronto",configureMessage:"Configura esta integraci\xF3n para comenzar",open:"Abrir",manage:"Gestionar",configure:"Configurar",connectedAccount:"Cuenta conectada",botsConnected:"{count} bot conectado",botsConnectedPlural:"{count} bots conectados",integrations:{chatwoot:"Chatwoot",chatwootDescription:"Plataforma de atenci\xF3n al cliente",whatsapp:"WhatsApp Business",whatsappDescription:"Conversaciones con clientes",telegram:"Telegram",telegramDescription:"Bots para comunicaci\xF3n",instagram:"Instagram",instagramDescription:"Facebook e Instagram Messenger",slack:"Slack",slackDescription:"Notificaciones de equipo",zapier:"Zapier",zapierDescription:"Miles de aplicaciones"}},marketplaceAgentCard:{copy:"Copiar",copied:"Copiado!"},contactsTable:{searchLabel:"Buscar contactos (email)",resultsCount:"{count} resultado",resultsCountPlural:"{count} resultados",searchPlaceholder:"Buscar contactos por email, nombre, tel\xE9fono...",tableHeaders:{email:"Email",phoneNumber:"N\xFAmero de Tel\xE9fono",name:"Nombre",createdAt:"Creado"},pagination:{previous:"Anterior",next:"Siguiente",pageOf:"P\xE1gina {current} de {total}"}},createAgentModal:{title:"Crear Nuevo Agente",subtitle:"Describe el agente que quieres crear",placeholder:"Describe tu agente... ej: Crea un agente de atenci\xF3n al cliente que...",quickStartTemplates:"Plantillas de Inicio R\xE1pido",explore:"Explorar",templates:{customerSupport:{label:"Atenci\xF3n al Cliente",prompt:"Crea un agente de atenci\xF3n al cliente que ayude con reembolsos, preguntas sobre env\xEDos y consultas sobre productos. S\xE9 amigable, emp\xE1tico y orientado a soluciones."},salesAssistant:{label:"Asistente de Ventas",prompt:"Crea un agente de ventas que califique leads, programe reuniones y entienda los puntos de dolor del cliente. S\xE9 profesional y consultivo."},technicalSupport:{label:"Soporte T\xE9cnico",prompt:"Crea un agente de soporte t\xE9cnico que resuelva problemas de software, proporcione soluciones paso a paso y escale problemas complejos cuando sea necesario."},knowledgeAssistant:{label:"Asistente de Conocimiento",prompt:"Crea un asistente de IA que responda preguntas basadas en documentaci\xF3n, proporcione explicaciones detalladas y ayude a los usuarios a encontrar informaci\xF3n r\xE1pidamente."}}},navigation:{dashboard:"Inicio",agents:"Agentes",datastores:"Fuentes",conversations:"Conversaciones",analytics:"Anal\xEDticas",settings:"Configuraci\xF3n",contacts:"Contactos",logs:"Registros",tools:"Herramientas",integrations:"Integraciones",inbox:"Bandeja de entrada",database:"Base de datos",forms:"Formularios",emailInboxes:"Bandejas de Correo",appsTools:"Apps/Herramientas",home:"Inicio",chats:"Conversaciones",newChat:"Nueva Conversaci\xF3n",projects:"Fuentes",explore:"Explorar",organizations:"Mis Organizaciones",createOrganization:"Crear Organizaci\xF3n",memory:"Memoria",library:"Biblioteca"},chatbox:{placeholder:"Escribe un mensaje...",actions:{send:"Enviar",resolve:"Marcar Como Resuelto",requestHuman:"Solicitar Humano"}},sidebar:{changeLanguage:"Cambiar idioma",contactSupport:"Centro de ayuda",openSidebar:"Abrir Sidebar",closeSidebar:"Cerrar Sidebar",updatePlan:"Actualizar Plan",updatePlanDescription:"Obt\xE9n m\xE1s beneficios mejorando tu plan",tutorial:"Ver Tutorial",workspace:"Espacio de trabajo",management:"Gesti\xF3n",groups:{agent:"Agente",conversations:"Gesti\xF3n",recentChat:"Chat reciente",memory:"Memoria"},badges:{new:"NUEVO",experimental:"EXP",comingSoon:"Pr\xF3ximamente"},recentChat:{noConversations:"No hay conversaciones recientes"},enterprise:{title:"Enterprise",description:"Escala con soluciones personalizadas"},actions:{collapse:"Colapsar",expand:"Expandir"}},searchChat:{title:"Buscar",placeholder:"Buscar conversaciones...",noResults:"No se encontraron conversaciones",empty:"No hay conversaciones recientes",recentChats:"Conversaciones recientes",hint:"Presiona Enter para abrir"},agentPress:{title:"Herramientas",tooltipTitle:"Herramientas del Agente",tooltipDescription:"Capacidades especiales que puedes habilitar para personalizar el comportamiento del agente",categories:{agent:{name:"Agente",description:"Comportamiento principal y configuraci\xF3n de conversaci\xF3n"},research:{name:"Investigaci\xF3n",description:"B\xFAsqueda web y extracci\xF3n de contenido"},builder:{name:"Constructor",description:"Crear y gestionar otros agentes"},prompt:{name:"Prompts",description:"Ingenier\xEDa y gesti\xF3n de prompts"},data:{name:"Datos",description:"Ejecuci\xF3n de c\xF3digo y an\xE1lisis de datos"},media:{name:"Medios",description:"Generaci\xF3n de im\xE1genes y avatares"},presentation:{name:"Presentaci\xF3n",description:"Herramientas visuales para mostrar datos"},integration:{name:"Integraci\xF3n",description:"Integraciones con servicios externos"}}},agentIntegrations:{title:"Integraciones",tooltipTitle:"Integraciones del Agente",tooltipDescription:"Integraciones personalizadas con servicios externos y APIs",addIntegration:"Agregar Integraci\xF3n",noAgentWarning:"No hay integraciones disponibles",noAgentHint:"Crea el agente primero para agregar integraciones",searchPlaceholder:"Buscar integraciones...",noResults:"No se encontraron integraciones para",emptyState:{title:"Sin integraciones configuradas",description:"Haz clic para agregar integraciones personalizadas como HTTP, formularios, etc."},tools:{http:{label:"HTTP",description:"Realizar solicitudes HTTP a APIs externas."},form:{label:"Formularios",description:"Recopilar informaci\xF3n del usuario mediante formularios interactivos."},leadCapture:{label:"Captura de leads",description:"Capturar informaci\xF3n de contacto de clientes potenciales."},default:"Herramienta del agente"},actions:{remove:"Eliminar",removeError:"Error al eliminar herramienta"}},layout:{title:"horneross - Plataforma de Agentes IA",description:"Construye y despliega agentes IA personalizados para tu negocio"},intercomModal:{title:"\xA1Hola! \u{1F44B}",subtitle:"\xBFC\xF3mo podemos ayudarte?",reportBug:"Reportar un error",suggestImprovement:"Sugerir una mejora",contactSales:"Contactar Ventas",contactSupport:"Contactar Soporte",guide:"Gu\xEDa",news:"Novedades",horneross:"horneross.com",feedback:"Calif\xEDcanos",instagram:"S\xEDguenos en Instagram"},datastoreForms:{updating:"Actualizando...",updated:"Actualizado exitosamente",somethingWentWrong:"Algo sali\xF3 mal",datastoreName:"Nombre del Datastore",datastoreNameHelperText:"Dale a tu datastore un nombre descriptivo",description:"Descripci\xF3n",descriptionHelperText:"Breve descripci\xF3n de lo que contiene este datastore",public:"Hacer este datastore p\xFAblico",publicHelperText:"Los datastores p\xFAblicos pueden ser accedidos por cualquier persona con el enlace",submit:"Guardar"},whatsAppSettings:{title:"WhatsApp Business",description:"Gestiona tus n\xFAmeros de WhatsApp conectados",noNumbersConnected:"No hay n\xFAmeros conectados a\xFAn.",connected:"Conectado",test:"Probar",delete:"Eliminar",connectNewAccount:"Conectar Nueva Cuenta",backToList:"Volver a la lista",configureTitle:"Configurar WhatsApp Business",configureDescription:"Conecta tu cuenta paso a paso",steps:{connect:"Conectar",configure:"Configurar",done:"Listo"},wizard:{step1:{title:"Obt\xE9n el token",description:"Ingresa tu token de Meta para conectar WhatsApp Business.",metaDeveloper:"Meta Developer",graphExplorer:"Explorador de gr\xE1ficos",generateToken:"Genera token con permisos WhatsApp Business",permissions:"Aseg\xFArate de seleccionar los permisos: whatsapp_business_management, whatsapp_business_messaging",expiration:"Expiraci\xF3n: Nunca",viewGuide:"Ver gu\xEDa",tokenLabel:"Token de acceso",tokenPlaceholder:"EAAG..."},step2:{title:"Selecciona un n\xFAmero",description:"Hemos encontrado los siguientes n\xFAmeros asociados a tu cuenta.",available:"Disponible"},step3:{title:"\xA1Listo!",description:"Tu n\xFAmero de WhatsApp Business ha sido conectado exitosamente."}},actions:{cancel:"Cancelar",back:"Atr\xE1s",finish:"Finalizar",connectWhatsApp:"Conectar WhatsApp",next:"Siguiente"}},leadCaptureConfigModal:{titleCreate:"Nueva Captura de Leads",titleEdit:"Editar Captura de Leads",editing:"Editando",configNameLabel:"Nombre de la configuraci\xF3n",configNameRequired:"requerido",configNamePlaceholder:"Ej: Captura de contacto general",descriptionLabel:"Descripci\xF3n",descriptionPlaceholder:"Descripci\xF3n de cu\xE1ndo usar esta configuraci\xF3n...",fieldsLabel:"Campos a capturar",fieldsRequired:"requerido",fields:{name:"Nombre",email:"Email",phone:"Tel\xE9fono",company:"Empresa",message:"Mensaje"},optionsLabel:"Opciones de captura",autoCapture:"Captura autom\xE1tica",autoCaptureDescription:"Captura informaci\xF3n autom\xE1ticamente durante la conversaci\xF3n",requireName:"Nombre requerido",requireNameDescription:"El nombre es obligatorio para completar la captura",requireEmail:"Email requerido",requireEmailDescription:"El email es obligatorio para completar la captura",requirePhone:"Tel\xE9fono requerido",requirePhoneDescription:"El tel\xE9fono es obligatorio para completar la captura",customMessageLabel:"Mensaje personalizado",customMessagePlaceholder:"Mensaje que el agente mostrar\xE1 al solicitar la informaci\xF3n...",customMessageHelper:"Opcional: Personaliza el mensaje que ver\xE1 el usuario al capturar sus datos",errors:{nameRequired:"Por favor ingresa un nombre para la configuraci\xF3n",fieldsRequired:"Por favor selecciona al menos un campo",saveError:"Error al guardar la configuraci\xF3n de Lead Capture"},success:{created:"Lead Capture creado",updated:"Lead Capture actualizado"},actions:{cancel:"Cancelar",saving:"Guardando...",createConfig:"Crear Configuraci\xF3n",saveChanges:"Guardar Cambios"}},formConfigModal:{titleCreate:"Nuevo Formulario",titleEdit:"Editar Formulario",editing:"Editando",nameLabel:"Nombre",nameRequired:"requerido",namePlaceholder:"Ej: Formulario de contacto",descriptionLabel:"Descripci\xF3n",descriptionPlaceholder:"Descripci\xF3n del formulario (opcional)",buttonTextLabel:"Texto del bot\xF3n",buttonTextPlaceholder:"Enviar",fieldsLabel:"Campos del formulario",fieldsRequired:"requerido",addField:"Agregar campo",fieldNumber:"Campo #{number}",fieldLabelLabel:"Etiqueta",fieldLabelPlaceholder:"Ej: Nombre completo",fieldTypeLabel:"Tipo",fieldTypes:{text:"Texto",email:"Email",number:"N\xFAmero",tel:"Tel\xE9fono",textarea:"Texto largo",select:"Selecci\xF3n",checkbox:"Checkbox"},placeholderLabel:"Placeholder",placeholderPlaceholder:"Texto de ayuda (opcional)",requiredField:"Campo obligatorio",noFieldsMessage:'No hay campos agregados. Haz clic en "Agregar campo" para comenzar.',errors:{nameRequired:"Por favor ingresa un nombre para el formulario",fieldsRequired:"Agrega al menos un campo al formulario",fieldLabelRequired:"Todos los campos deben tener una etiqueta",saveError:"Error al guardar el formulario"},success:{created:"Formulario creado",updated:"Formulario actualizado"},actions:{cancel:"Cancelar",saving:"Guardando...",createForm:"Crear Formulario",saveChanges:"Guardar Cambios"}},usageLimitModal:{defaultTitle:"L\xEDmite de Uso Alcanzado",defaultDescription:"Actualiza tu plan para desbloquear l\xEDmites de uso m\xE1s altos y funciones premium.",cancel:"Cancelar",upgradePlan:"Actualizar Plan"},duplicateAgentModal:{title:"Duplicar Agente",description:'Crea una copia de "{name}" con toda su configuraci\xF3n y herramientas.',newAgentName:"Nombre del Nuevo Agente",placeholder:"Ingresa el nombre para el agente duplicado",cancel:"Cancelar",duplicating:"Duplicando...",duplicate:"Duplicar Agente",errors:{nameRequired:"El nombre del agente es requerido",failed:"Error al duplicar el agente. Por favor intenta de nuevo."},success:"\xA1Agente duplicado exitosamente!"},createDatastoreModal:{title:"Crear Nueva Fuente",subtitle:"Configura tu base de conocimiento en 4 sencillos pasos",recommended:"Recomendado",steps:{name:"Nombre",nameDescription:"Identificaci\xF3n de la fuente",type:"Tipo",typeDescription:"Tipo de almacenamiento",source:"Fuente",sourceDescription:"Origen de datos",configure:"Configurar",configureDescription:"Detalles finales"},step1:{title:"\xBFC\xF3mo quieres llamar tu fuente?",description:"Elige un nombre descriptivo que te ayude a identificar f\xE1cilmente el contenido",nameLabel:"Nombre de la Fuente",namePlaceholder:"Ej: Documentaci\xF3n t\xE9cnica, Base de conocimiento, FAQ...",nameHelper:"Este nombre ser\xE1 visible en tu panel y reportes",suggestionsTitle:"Sugerencias de nombres",suggestions:{knowledgeBase:"Base de Conocimiento",documentation:"Documentaci\xF3n",faqClients:"FAQ Clientes",technicalManuals:"Manuales T\xE9cnicos"}},step2:{title:"Selecciona el tipo de fuente",description:"Cada tipo ofrece diferentes capacidades seg\xFAn tus necesidades"},step3:{title:"Elige tu fuente de datos",titleCodeInterpreter:"Selecciona el tipo de archivo",description:"Configura el origen del contenido para tu fuente",descriptionCodeInterpreter:"Podr\xE1s analizar archivos con capacidades avanzadas"},step4:{title:"Configura tu fuente de datos",titleUpload:"Sube tu archivo",description:"\xDAltimos detalles para completar la configuraci\xF3n"},datastoreTypes:{qdrant:{name:"Est\xE1ndar",description:"Ideal para documentos, FAQs y conocimiento general",features:{vectorSearch:"B\xFAsqueda precisa",multipleEmbeddings:"M\xFAltiples formatos de archivo",advancedConfig:"Configuraci\xF3n avanzada"}},pinecone:{name:"Nube",description:"Almacenamiento en la nube para grandes vol\xFAmenes",features:{fullyManaged:"Completamente gestionado",autoScaling:"Escalabilidad autom\xE1tica",simpleConfig:"Configuraci\xF3n simple"}},typesense:{name:"B\xFAsqueda R\xE1pida",description:"Optimizado para resultados instant\xE1neos",features:{instantSearch:"B\xFAsqueda instant\xE1nea",typoTolerance:"Tolerancia a errores",facetedSearch:"B\xFAsqueda filtrada"}},codeInterpreter:{name:"An\xE1lisis de Datos",description:"Analiza hojas de c\xE1lculo y datos complejos",features:{complexAnalysis:"An\xE1lisis complejos",pythonExecution:"C\xE1lculos autom\xE1ticos",dataVisualization:"Gr\xE1ficos y visualizaciones"}}},buttons:{previous:"Anterior",cancel:"Cancelar",continue:"Continuar",createDatastore:"Crear Fuente",creating:"Creando...",createFinish:"Crear y Finalizar",back:"Volver"},errors:{creatingDatastore:"Error al crear la fuente"}},createSimpleDatastoreModal:{title:"Crear Datastore Simple",description:"Crea tu base de conocimiento en 2 simples pasos",advancedMode:"Modo avanzado",descriptions:{website:"Datastore del sitio web: {url}",files:"Datastore con {count} archivos subidos"},suggestions:{knowledgeBase:"Base de Conocimiento",documentation:"Documentaci\xF3n",faqClients:"FAQ Clientes",technicalManuals:"Manuales T\xE9cnicos",policiesProcedures:"Pol\xEDticas y Procedimientos",trainingMaterial:"Material de Capacitaci\xF3n"},step1:{title:"\xBFC\xF3mo quieres llamar tu datastore?",subtitle:"Elige un nombre descriptivo para identificar tu base de conocimiento",nameLabel:"Nombre del Datastore",namePlaceholder:"Ej: Documentaci\xF3n t\xE9cnica, Base de conocimiento...",nameHelper:"Este nombre te ayudar\xE1 a identificar tu datastore en el panel",suggestionsTitle:"Sugerencias de nombres"},step2:{datastoreType:"Base de Conocimiento"},tabs:{files:"Archivos",website:"Sitio Web"},filesTab:{title:"Sube tus archivos",description:"Arrastra y suelta o selecciona los archivos que quieres agregar"},websiteTab:{title:"Guarda un sitio web",description:"Ingresa la URL del sitio que quieres procesar y agregar a tu datastore"},progress:{overall:"Progreso Total"},buttons:{back:"Atr\xE1s",cancel:"Cancelar",continue:"Continuar",saveFiles:"Guardar archivos",saveWebsite:"Guardar sitio web",savingFiles:"Guardando archivos...",processingSite:"Procesando sitio..."},errors:{noFiles:"Por favor selecciona al menos un archivo",noUrl:"Por favor ingresa una URL v\xE1lida",noFilesProcessed:"No se pudieron procesar los archivos",creationError:"Ocurri\xF3 un error al crear el datastore"},toasts:{creating:"Creando datastore...",created:"Datastore creado correctamente",processingWebsite:"Procesando sitio web...",websiteProcessing:"El sitio web se est\xE1 procesando",websiteFullDesc:"El sitio completo se est\xE1 procesando. Recibir\xE1s una notificaci\xF3n cuando est\xE9 listo.",websitePageDesc:"La p\xE1gina se est\xE1 procesando. Recibir\xE1s una notificaci\xF3n cuando est\xE9 lista.",gettingUploadUrl:"Obteniendo URL de carga para {fileName}...",uploading:"Subiendo {fileName}...",processing:"Procesando {fileName}...",fileSuccess:"{fileName} procesado correctamente",fileError:"Error al procesar {fileName}",datastoreCreatedWithFiles:"Datastore creado con {processed} de {total} archivos"}},enterpriseModal:{title:"Soluciones Enterprise",subtitle:"Desbloquea todo el potencial de los agentes IA con nuestra plataforma de nivel empresarial",description:"Desbloquea todo el potencial de los agentes IA con nuestra plataforma de nivel empresarial",solutions:{security:{title:"Seguridad y Cumplimiento",description:"Cumplimiento SOC2 con seguridad de nivel empresarial, SSO y permisos avanzados."},customIntegrations:{title:"Integraciones Personalizadas",description:"Integraciones a medida con tus sistemas y flujos de trabajo existentes."},dedicatedSupport:{title:"Soporte Dedicado",description:"Soporte prioritario 24/7 con un gerente de \xE9xito del cliente dedicado."},multiRegion:{title:"Despliegue Multi-Regi\xF3n",description:"Despliega agentes en m\xFAltiples regiones para un rendimiento y cumplimiento \xF3ptimos."},customSLA:{title:"SLA Personalizado",description:"Acuerdos de nivel de servicio a medida para cumplir con tus requisitos empresariales."},onboarding:{title:"Onboarding y Capacitaci\xF3n",description:"Programas completos de incorporaci\xF3n y capacitaci\xF3n para tu equipo."}},cta:{title:"\xBFListo para escalar tus capacidades de IA?",description:"Contacta a nuestro equipo de ventas para discutir precios e implementaci\xF3n personalizados.",contactSales:"Contactar Ventas",learnMore:"M\xE1s Informaci\xF3n"}},improveAnswerModal:{loading:"Cargando...",noDatastore:{title:"Este agente no tiene datastore. Por favor crea un datastore primero.",action:"Crear Datastore"},info:"Esta acci\xF3n agregar\xE1 una nueva Fuente de Datos Q&A a tu Datastore.",datastoreLabel:"Datastore",selectDatastore:"Seleccionar datastore"},mfaEnforcer:{required:"La autenticaci\xF3n de dos factores es requerida. Por favor habilita 2FA en la configuraci\xF3n de Seguridad."},settings:{profile:{title:"Configuraci\xF3n de Perfil",description:"Gestiona tu informaci\xF3n personal y preferencias",saved:"Guardado",successMessage:"Perfil actualizado exitosamente",errorMessage:"Error al actualizar perfil",sections:{profilePicture:{title:"Foto de Perfil",uploadNew:"Subir Nueva",remove:"Eliminar",helperText:"JPG, PNG o GIF \u2022 M\xE1x 2MB"},personalInfo:{title:"Informaci\xF3n Personal",fullName:"Nombre Completo",fullNamePlaceholder:"Ingresa tu nombre completo",emailAddress:"Correo Electr\xF3nico",emailHelperText:"El correo electr\xF3nico no se puede cambiar"},preferences:{title:"Preferencias",language:"Idioma",darkMode:"Modo Oscuro",darkModeDescription:"Usar tema oscuro en toda la plataforma"},security:{title:"Seguridad",description:"Gestiona la configuraci\xF3n de seguridad de tu cuenta",backToProfile:"\u2190 Volver al Perfil",accountSecurity:"Seguridad de la Cuenta",accountSecurityDescription:"Gestiona 2FA y opciones de seguridad",twoFactor:{title:"Autenticaci\xF3n de Dos Factores (2FA)",enabledActive:"\u2713 Habilitado y activo",description:"Agrega una capa extra de seguridad a tu cuenta",manage:"Gestionar",enable:"Habilitar 2FA"},mfaRequired:{title:"2FA Requerido:",description:"Tu administrador requiere autenticaci\xF3n de dos factores para tu cuenta.",pleaseEnable:"Por favor habilita 2FA para continuar usando la plataforma."}}},autoSave:"Los cambios se guardan autom\xE1ticamente"},team:{title:"Configuraci\xF3n de Equipo",description:"Gestiona los miembros de tu equipo y organizaci\xF3n",noOrganization:"Necesitas ser parte de una organizaci\xF3n para acceder a la configuraci\xF3n de equipo"},billing:{title:"Configuraci\xF3n de Facturaci\xF3n",description:"Gestiona tu suscripci\xF3n y facturaci\xF3n",noOrganization:"Necesitas ser parte de una organizaci\xF3n para acceder a la configuraci\xF3n de facturaci\xF3n",status:{active:"Activo",free:"Gratis"},pricing:{perMonth:"/mes"},planIncludes:"El plan incluye:",features:{agents:"Agentes",datastores:"Datastores",monthlyBudget:"{budget} USD en cr\xE9ditos IA mensuales",storage:"palabras de almacenamiento",fileUploads:"subidas de archivos",teamMembers:"Hasta {count} miembros del equipo"},actions:{upgradePlan:"Actualizar Plan",manageBilling:"Gestionar Facturaci\xF3n"},upgrade:{title:"Actualiza Tu Plan",description:"Elige un plan que se ajuste a tus necesidades"},modals:{cancel:{title:"Cancelar Suscripci\xF3n",description:"\xBFEst\xE1s seguro de que quieres cancelar tu suscripci\xF3n? Tu plan permanecer\xE1 activo hasta el final de tu per\xEDodo de facturaci\xF3n actual.",whatHappens:"Qu\xE9 sucede despu\xE9s:",feature1:"\u2022 Funciones premium hasta que termine el per\xEDodo de facturaci\xF3n",feature2:"\u2022 Descenso autom\xE1tico al plan Gratis",feature3:"\u2022 Datos preservados con l\xEDmites del plan Gratis",feature4:"\u2022 Reactivar en cualquier momento",keepSubscription:"Mantener Suscripci\xF3n",canceling:"Cancelando...",confirmCancel:"Cancelar Suscripci\xF3n"},downgrade:{title:"Descender Suscripci\xF3n",description:"Descendiendo de {current} a {target}.",changesTitle:"Cambios despu\xE9s del descenso:",agents:"Agentes:",datastores:"Datastores:",queries:"Consultas mensuales:",price:"Precio:",important:"Importante:",importantText:"Los cambios entran en vigencia inmediatamente. Las funciones pueden estar restringidas si excedes los nuevos l\xEDmites.",keepCurrent:"Mantener Plan Actual",processing:"Procesando...",confirmDowngrade:"Descender a {plan}"}}},apiKeys:{title:"Claves API",description:"Autentica tus solicitudes API con claves seguras",noOrganization:"Necesitas ser parte de una organizaci\xF3n para acceder a las claves API",infoAlert:"Mant\xE9n tus claves seguras y nunca las compartas p\xFAblicamente.",readDocs:"Leer documentaci\xF3n",yourKeys:"Tus Claves",newKey:"Nueva Clave",emptyState:{title:"A\xFAn no hay claves API",description:"Crea tu primera clave para comenzar"},actions:{copy:"Copiar al portapapeles",delete:"Eliminar clave"},toast:{created:"Clave API creada exitosamente",createError:"Error al crear clave API",mustHaveOne:"Debes tener al menos una clave API",confirmDelete:"\xBFEst\xE1s seguro de que quieres eliminar esta clave API?",deleted:"Clave API eliminada exitosamente",deleteError:"Error al eliminar clave API",copied:"Clave API copiada al portapapeles"},usage:{title:"C\xF3mo usar",headerDescription:"Incluye tu clave API en el encabezado de la solicitud:",headerExample:"Authorization: Bearer TU_CLAVE_API",exampleRequest:"Ejemplo de solicitud:"}},notifications:{title:"Notificaciones",description:"Configura preferencias de notificaci\xF3n y destinatarios",noOrganization:"Necesitas ser parte de una organizaci\xF3n para acceder a la configuraci\xF3n de notificaciones",recipients:{title:"\xBFQui\xE9n recibe notificaciones?",description:"Selecciona miembros del equipo y agrega correos externos para recibir notificaciones",teamMembers:"Miembros del Equipo",selected:"{selected} de {total} seleccionados",externalRecipients:"Destinatarios Externos",emailPlaceholder:"Ingresa direcci\xF3n de correo",add:"Agregar",unknown:"Desconocido"},sound:{title:"Notificaciones de Sonido",streamCompletion:"Completaci\xF3n de stream",streamCompletionDescription:"Reproducir sonido cuando se complete la respuesta de IA",newMessage:"Alerta de nuevo mensaje",newMessageDescription:"Sonido de notificaci\xF3n para nuevos mensajes",errorAlerts:"Alertas de error",errorAlertsDescription:"Notificaci\xF3n de sonido para errores"},email:{title:"Notificaciones por Correo",weeklyReports:"Informes semanales",weeklyReportsDescription:"Resumen de tu actividad semanal",agentUpdates:"Actualizaciones de agentes",agentUpdatesDescription:"Notificaciones sobre tus agentes",securityAlerts:"Alertas de seguridad",securityAlertsDescription:"Notificaciones importantes de seguridad"},inApp:{title:"Notificaciones en la App",conversationUpdates:"Actualizaciones de conversaciones",conversationUpdatesDescription:"Actividad en tus conversaciones",teamActivity:"Actividad del equipo",teamActivityDescription:"Actualizaciones de los miembros de tu equipo",systemUpdates:"Actualizaciones del sistema",systemUpdatesDescription:"Actualizaciones y anuncios de la plataforma"},toast:{saved:"Configuraci\xF3n guardada",saveError:"Error al guardar configuraci\xF3n",invalidEmail:"Por favor ingresa un correo electr\xF3nico v\xE1lido",emailExists:"Correo ya agregado"}}},widgets:{bubble:{tabs:{basic:"B\xE1sico",suggestions:"Sugerencias",style:"Estilo",code:"Instalar"},sections:{displayNameDescription:"Este t\xEDtulo aparecer\xE1 en el encabezado del chat",initialMessageDescription:"Mensaje inicial que ver\xE1n tus usuarios",helpLinksDescription:"Agrega enlaces \xFAtiles que aparecer\xE1n debajo del mensaje inicial",additionalOptions:"Opciones Adicionales",suggestionsDescription:"Agrega sugerencias que tus usuarios pueden seleccionar r\xE1pidamente",primaryColorDescription:"Define el color principal de tu widget",customCSSDescription:"Agrega estilos CSS personalizados (avanzado)",installTitle:"C\xF3digo de Instalaci\xF3n",installDescription:"Copia y pega este c\xF3digo en tu sitio web, justo antes de la etiqueta </body>.",installHint:"Haz clic en el bloque de c\xF3digo para copiarlo al portapapeles."},preview:{initializing:"Inicializando..."},toast:{configSaved:"Configuraci\xF3n guardada exitosamente",configError:"Error al guardar la configuraci\xF3n",codeCopied:"\xA1C\xF3digo copiado al portapapeles!"}},iframe:{tabs:{basic:"B\xE1sico",style:"Estilo",code:"C\xF3digo"},sections:{displayNameDescription:"Este t\xEDtulo aparecer\xE1 en el encabezado del chat",initialMessageDescription:"Mensaje inicial que ver\xE1n tus usuarios",additionalOptions:"Opciones Adicionales",primaryColorDescription:"Define el color principal de tu widget",customCSSDescription:"Agrega estilos CSS personalizados (avanzado)",codeDescription:"Copia este c\xF3digo en tu p\xE1gina HTML"},preview:{initializing:"Inicializando..."},toast:{configSaved:"Configuraci\xF3n guardada exitosamente",configError:"Error al guardar la configuraci\xF3n",codeCopied:"C\xF3digo copiado!"}},standalone:{sections:{standalonePage:"P\xE1gina Independiente",welcomeBanner:"Banner de Bienvenida",agentAvatar:"Avatar del Agente",messageAndBranding:"Mensaje y Branding",organizationLogo:"Logo de Organizaci\xF3n",socialNetworks:"Redes Sociales"},preview:{liveLabel:"En vivo",refreshPreview:"Actualizar preview"},agentAvatar:{title:"Avatar del Agente",readOnly:"Este es el avatar principal del agente (no editable desde aqu\xED)",changeInBuilder:"Para cambiar el avatar del agente, usa el Builder o genera uno con IA"},organizationLogo:{noLogo:"No hay logo de organizaci\xF3n configurado",configureInSettings:"Para configurar el logo de la organizaci\xF3n, ve a la configuraci\xF3n de la organizaci\xF3n",displayedAt:"Se muestra en la esquina superior izquierda del banner",changeInSettings:"Para cambiar el logo, ve a la configuraci\xF3n de la organizaci\xF3n"},bannerStyles:{gradients:{sunset:{name:"Sunset",description:"Degradado naranja a rosa"},ocean:{name:"Ocean",description:"Degradado azul marino"},forest:{name:"Forest",description:"Degradado verde natural"},purple:{name:"Purple Dream",description:"Degradado morado vibrante"}},solids:{blue:{name:"Blue",description:"Azul profesional"},green:{name:"Green",description:"Verde corporativo"},purple:{name:"Purple",description:"Morado moderno"},red:{name:"Red",description:"Rojo intenso"}},solid3d:{blue:{name:"Blue 3D",description:"Azul con profundidad"},orange:{name:"Orange 3D",description:"Naranja con sombras"},teal:{name:"Teal 3D",description:"Verde azulado 3D"},pink:{name:"Pink 3D",description:"Rosa con relieve"}},animated:{aurora:{name:"Aurora",description:"Ondas de aurora suaves"},fire:{name:"Fire",description:"Llamas en\xE9rgicas"},neon:{name:"Neon",description:"Ne\xF3n vibrante"},ocean:{name:"Ocean Waves",description:"Olas tranquilas"}}},toast:{configSaved:"Configuraci\xF3n guardada exitosamente",configError:"Error al guardar la configuraci\xF3n"}},fields:{initialMessage:{label:"Mensaje inicial",placeholder:"\xA1Hola! \xBFC\xF3mo puedo ayudarte?",helper:"Un mensaje de bienvenida amigable para tus usuarios (m\xE1x. 300 caracteres)"},helpLinks:{label:"Enlaces de ayuda",addButton:"Agregar enlace",empty:"No hay enlaces de ayuda configurados. Agrega enlaces para que los usuarios accedan a recursos adicionales.",linkNumber:"Enlace {{number}}",labelField:"Texto del enlace",labelPlaceholder:"Ej. Documentaci\xF3n",urlField:"URL",urlPlaceholder:"https://ejemplo.com",helper:"Agrega hasta 4 enlaces \xFAtiles que aparecer\xE1n en la pantalla de bienvenida"},messageTemplates:{addPlaceholder:"Agrega una sugerencia...",helper:"M\xE1ximo 3 sugerencias. Presiona Enter para agregar.",defaultTemplates:{template1:"\xBFQu\xE9 es horneross.com?",template2:"Precios de planes"}},displayName:{label:"T\xEDtulo del chat",placeholder:"Ej. Soporte horneross"},bannerTitle:{label:"T\xEDtulo del Banner",placeholder:"\xA1Bienvenido a nuestro asistente!"},bannerSubtitle:{label:"Subt\xEDtulo",placeholder:"Estoy aqu\xED para ayudarte 24/7"},organizationName:{label:"Nombre de la Organizaci\xF3n",placeholder:"Nombre de tu empresa (aparece al lado del logo)",helper:"Este nombre aparecer\xE1 al lado del logo en el banner. D\xE9jalo vac\xEDo para no mostrar ning\xFAn nombre."},handle:{label:"Bot Handle",placeholder:"mi_bot_increible",errorRequired:"El handle es requerido",errorTaken:"El handle ya est\xE1 en uso",errorValidating:"Error al validar el handle",copied:"\xA1Copiado!",viewPage:"Ver p\xE1gina"},primaryColor:{label:"Color principal"},customCSS:{label:"CSS Personalizado",placeholder:`/* Tu CSS personalizado */
|
|
85
|
+
}`},brandingDisabled:{label:"Hide horneross branding (Pro)"},initPopupDisabled:{label:"Disable initial message popup"},transparentBackground:{label:"Transparent background"}},shared:{publicWarning:{title:"Agent visibility",description:"This widget will only work if your agent is public. Please make sure your agent's visibility is set to public."},loading:"Loading widget configuration...",saveButton:{save:"Save Changes",saving:"Saving...",unsavedChanges:"You have unsaved changes"}}},datasourceForms:{file:{excelFormatAlert:"For Excel files, make sure to follow the correct format.",excelFormatLink:"See example here",removeFile:"Remove file",dragDropTitle:"Drop the file here",dragDropTitleIdle:"Drag and drop your file here",dragDropSubtitle:"or click to select",supportedFormatsLabel1:"PDF, PowerPoint, Excel",supportedFormatsLabel2:"Word, Text, Markdown",descriptionLabel:"Content description",descriptionPlaceholder:"Describe the file content: what information it contains, how it's structured, what columns it has if it's a table, etc.",descriptionHelp:"A good description helps the agent better understand your information",usageLimitTitle:"Size limit exceeded",usageLimitDescription:"Please upgrade your plan to upload larger files."},webPage:{pageTitle:"Web Page",pageDescription:"Extract content from a specific URL",infoAlert:"Process content from an individual web page. Ideal for articles, blogs, specific documentation or landing pages.",urlLabel:"Page URL",urlPlaceholder:"https://example.com/article",urlHelp:"Enter the full URL of the page you want to process"},webSite:{method1Title:"Site URL",limitInfo:"Limit: {limit} pages \u2022 45 sec max",siteUrlLabel:"Main site URL",siteUrlPlaceholder:"https://example.com",additionalConfigTitle:"Additional Configuration (Optional)",additionalConfigDescription:"Sitemap, site description and pages to exclude",method2Title:"Use Sitemap",sitemapLabel:"Sitemap URL",sitemapLabelOptional:"(optional)",sitemapPlaceholder:"https://example.com/sitemap.xml",sitemapHelp:"Faster and more accurate if the site has a public sitemap",descriptionLabel:"Content description",descriptionPlaceholder:"Describe the content or context of this site...",descriptionHelp:"Helps the agent understand when to use this information",excludedUrlsTitle:"Excluded URLs",excludedUrlsDescription:"Exclude specific pages from scanning",excludedUrlPlaceholder:"https://example.com/admin/*",addExcludedUrl:"Add Excluded URL",excludedUrlsAlert:"Supports glob patterns. Example:",removeUrl:"Remove URL"},youtube:{singleVideo:"Single video",playlist:"Playlist",channel:"Channel",urlLabel:"YouTube URL",urlPlaceholder:"https://www.youtube.com/watch?v=...",urlHelp:"Video, playlist or channel"},notion:{selectAccount:"Select Account",selectAccountPlaceholder:"Select an account",addAccount:"Notion: Add Account",notebooksLabel:"Notebooks",notebooksPlaceholder:"Select notebooks...",cannotSeeNotebooks:"Can't see your notebooks? There is currently an issue with the Notion API that requires you to manually link a page to our integration. For guidance on how to do this, please watch the video below.",usedNotebook:"Used notebook",loadingPages:"loading pages.."},text:{contentLabel:"Text content",contentPlaceholder:"Write or paste here the content you want to add to the database...",contentHelp:"This text will be indexed and available for the agent when answering questions"},namePlaceholder:"E.g.: API Documentation, User Guide...",nameLabel:"Name",nameHelper:"A descriptive name to identify this content",sourceUrlPlaceholder:"https://example.com/original-source",sourceUrlLabel:"Source URL (optional)",extractedText:"Extracted Text",submit:"Save",saving:"Saving...",additionalConfig:"Additional settings",tags:"Tags",tagsHelper:"Add tags to organize your content"},integrations:{instagram:{title:"Instagram Messenger",description:"Manage your connected Instagram accounts",noAccounts:"No accounts connected yet.",connected:"Connected",delete:"Delete",connectNewAccount:"Connect New Account",backToList:"Back to list",setupTitle:"Configure Instagram Messenger",setupDescription:"Connect your Meta account",stepConnect:"Connect",stepReady:"Ready",connectMeta:"Connect with Meta",connectMetaDescription:"Connect your Facebook account to manage Instagram Messenger.",oauthTitle:"OAuth with Meta",oauthDescription:"We will redirect you to Facebook to authorize the connection with Instagram Messenger. Make sure you have admin permissions on the page.",viewDocs:"View documentation",successTitle:"Ready!",successDescription:"Your Instagram Messenger account has been successfully connected.",cancel:"Cancel",back:"Back",connecting:"Connecting...",finish:"Finish",connectWithMeta:"Connect with Meta",errorConnect:"Error connecting with Meta"},telegram:{title:"Telegram",description:"Manage your connected Telegram bots",noBots:"No bots connected yet.",connected:"Connected",openInTelegram:"Open in Telegram",delete:"Delete",connectNewBot:"Connect New Bot",backToList:"Back to list",setupTitle:"Configure Telegram Bot",setupDescription:"Connect your bot step by step",stepToken:"Token",stepVerify:"Verify",stepReady:"Ready",getTokenTitle:"Get the token",getTokenDescription:"Create a bot with @BotFather on Telegram.",createBotTitle:"Create your bot on Telegram",createBotDescription:"Talk to @BotFather, use the /newbot command and follow the instructions. You will receive an access token.",free:"Free",openBotFather:"Open BotFather",botToken:"Bot Token",verifyingBot:"Verifying bot",verifyingBotDescription:"We are verifying the connection with your Telegram bot.",verified:"Verified",successTitle:"Ready!",successDescription:"Your Telegram bot has been successfully connected.",cancel:"Cancel",back:"Back",finish:"Finish",connectBot:"Connect Bot",next:"Next"},slack:{title:"Slack Bot",settings:"Settings",activeConnections:"Active connections",notConnected:"Not connected to any Slack workspace",connectToSlack:"Connect to Slack"},chatwoot:{title:"Chatwoot Connections",description:"Manage your connected Chatwoot instances and agent bots.",searchPlaceholder:"Search agents...",connectNewAccount:"Connect New Account",testingPlatformToken:"\u{1F50D} Testing Platform App token...",platformConfigured:"\u2705 Platform App configured correctly",configureUserToken:"\u{1F4A1} Now configure the user token",errorTestingPlatformToken:"Error testing Platform App token"}}},authCarousel:{sponsors:{title:"Powered by Leading AI Technologies",subtitle:"Integrating the best AI models in the market"},clients:{title:"Trusted by thousands of businesses",scale:{title:"Scale your customer support effortlessly",testimonial:"We reduced our response time by 80% while maintaining excellent quality. Our customers are happier and our team can focus on complex cases.",author:"Mar\xEDa Gonz\xE1lez",company:"Head of Support, TechCorp"},support:{testimonial:"Horneross transformed how we interact with our customers. We can now serve thousands of people simultaneously without losing that personal touch.",author:"Carlos Rodr\xEDguez",company:"CEO, StartupXYZ"}}},auth:{signin:{title:"Sign In",loading:"Signing in...",error:"An error occurred. Please try again later.",termsPrefix:"By continuing, you accept our",termsLink:"Terms and Conditions",and:"and",privacyLink:"Privacy Policy"},signup:{title:"Sign Up",loading:"Creating your account...",error:"An error occurred. Please try again later.",termsPrefix:"By signing up, you accept our",termsLink:"Terms and Conditions",and:"and",privacyLink:"Privacy Policy"}},common:{actions:{save:"Save",cancel:"Cancel",delete:"Delete",edit:"Edit",create:"Create",loading:"Loading...",search:"Search",filter:"Filter",export:"Export",import:"Import",refresh:"Refresh",yes:"Yes",no:"No",confirm:"Confirm",close:"Close"},errors:{generic:"Something went wrong. Please try again.",network:"Network error. Check your connection.",unauthorized:"You are not authorized to perform this action.",notFound:"Resource not found.",validation:"Please check your input and try again.",systemProblems:"We are experiencing some problems. Please try again later. Sorry for the inconvenience!",loadingDashboard:"Error loading dashboard",loadingDataMessage:"We couldn't load your organization data. Please try again.",retry:"Retry"},success:{saved:"Successfully saved",deleted:"Successfully deleted",created:"Successfully created",updated:"Successfully updated"},status:{loading:"Loading...",saving:"Saving...",success:"Success!",error:"Error"}},tools:{web_search:{title:"Web Search",loading:"Searching the web...",complete:"Search complete",error:"Search error"},scrape_webpage:{title:"Web Scraping",loading:"Extracting page content...",complete:"Content extracted",error:"Failed to extract page"},deep_search:{title:"Deep Search",loading:"Performing deep search...",complete:"Deep search complete",error:"Deep search error"},image_search:{title:"Image Search",loading:"Searching images...",complete:"Images found",error:"Image search error"},people_search:{title:"People Search",loading:"Searching people...",complete:"People found",error:"People search error"},create_agent:{title:"Create Agent",loading:"Creating agent...",complete:"Agent created successfully",error:"Failed to create agent"},update_agent:{title:"Update Agent",loading:"Updating agent...",complete:"Agent updated successfully",error:"Failed to update agent"},get_agent_prompt:{title:"Get Agent Prompt",loading:"Reading agent prompt...",complete:"Prompt retrieved",error:"Failed to get prompt"},update_agent_prompt:{title:"Update Agent Prompt",loading:"Updating prompt...",complete:"Prompt updated",error:"Failed to update prompt"},get_prompt_history:{title:"Prompt History",loading:"Loading history...",complete:"Version history",error:"Failed to load history"},rollback_prompt:{title:"Rollback Prompt",loading:"Restoring previous version...",complete:"Prompt restored",error:"Failed to restore prompt"},generate_prompt:{title:"Generate Prompt",loading:"Generating prompt...",complete:"Prompt generated",error:"Failed to generate prompt"},append_agent_prompt:{title:"Append Prompt",loading:"Appending to prompt...",complete:"Prompt updated",error:"Failed to append prompt"},think:{title:"Thinking",loading:"Thinking...",complete:"Thought complete",error:"Failed to process thought"},advanced_reasoning:{title:"Advanced Reasoning",loading:"Advanced reasoning...",complete:"Reasoning complete",error:"Reasoning error"},code_interpreter:{title:"Code Interpreter",loading:"Executing code...",complete:"Code executed",error:"Execution error"},generate_avatar:{title:"Generate Avatar",loading:"Generating avatar...",complete:"Avatar generated",error:"Failed to generate avatar"},generate_image:{title:"Generate Image",loading:"Generating image...",complete:"Image generated",error:"Failed to generate image"},datastore_query:{title:"Knowledge Base Search",loading:"Searching knowledge base...",complete:"Search complete",error:"Failed to search knowledge base",query:"Query",result:"result",results:"results",noResults:"No results found"},search_documentation:{title:"Search Documentation",loading:"Searching documentation...",complete:"Search complete",error:"Failed to search documentation"},http_request:{title:"API Request",loading:"Making HTTP request...",complete:"Request complete",error:"HTTP request error"},capture_lead:{title:"Capture Lead",loading:"Capturing lead...",complete:"Lead captured successfully",error:"Failed to capture lead"},mark_resolved:{title:"Mark Resolved",loading:"Marking as resolved...",complete:"Conversation marked as resolved",error:"Failed to mark as resolved"},request_human:{title:"Request Human Agent",loading:"Requesting human agent...",complete:"Human agent requested",error:"Failed to request human agent"},send_files:{title:"Send Files",loading:"Sending files...",complete:"Files sent",error:"Failed to send files"}},emails:{datasourceSynced:{eyebrow:"Knowledge base synced",greeting:"Hi {userName},",greetingNoName:"Hi,",message:"Your knowledge base has been successfully processed and is ready to be used by your agents.",stats:{chunks:"Chunks",tokens:"Tokens",size:"Size"},contentPreview:"Content preview",ctaButton:"View in Dashboard",footer:"This email is sent automatically when a knowledge base syncs successfully."},websiteSyncComplete:{eyebrow:"Website synced",greeting:"Hi {userName},",greetingNoName:"Hi,",message:"Your website sync has finished.",summary:"Sync summary",pagesFound:"Pages found",synced:"Synced",withErrors:"With errors",completed:"completed",indexedContent:"Indexed content",chunks:"Chunks",tokens:"Tokens",warningMessage:"Some pages could not be processed. You can check the details in the dashboard.",ctaButton:"View in Dashboard",footer:"This email is sent automatically when a website sync completes."},subject:{datasourceSynced:'Knowledge base "{name}" synced',websiteSynced:'Website "{name}" synced - {synced}/{total} pages'}}};var VV={pages:{deploy:{title:"Canales de Integraci\xF3n",subtitle:"Conecta tu agente con las plataformas que utilizas",searchPlaceholder:"Buscar canal de integraci\xF3n...",noAgentId:"No se encontr\xF3 ID del agente",enablePublicAgent:"Habilitar agente p\xFAblico",configure:"Configurar",upgradePlan:"Actualizar plan",publicAgentRequired:"Esta integraci\xF3n requiere un agente p\xFAblico. \xBFDeseas hacer tu agente p\xFAblico?",integrations:{webBubble:"Burbuja de Chat Web",webStandard:"Chat Web Est\xE1ndar",webStandalone:"P\xE1gina Web Independiente",crmhorneross:"CRM horneross",chatwoot:"Chatwoot",whatsapp:"WhatsApp",zapier:"Zapier",telegram:"Telegram",slack:"Slack",wordpress:"WordPress",mercadolibre:"Mercado Libre"},modals:{chatBubble:"Configuraci\xF3n de Burbuja de Chat",standardChatbox:"Configuraci\xF3n de Chatbox Est\xE1ndar",standalonePage:"Configuraci\xF3n de P\xE1gina Independiente",configurations:"Configuraciones"},usageLimit:{title:"Caracter\xEDstica Premium",description:"Esta integraci\xF3n requiere un plan premium. Actualiza tu plan para desbloquear esta caracter\xEDstica."}},dashboard:{title:"Panel de Control",subtitle:"Mostrando datos del {from} al {to}",loading:"Cargando an\xE1lisis del panel...",accessDenied:{title:"Acceso Denegado",message:"Solo los administradores y propietarios de la organizaci\xF3n pueden acceder a este panel."},error:{title:"Error al Cargar Panel",message:"Error al cargar las estad\xEDsticas del panel"},actions:{viewLogs:"Ver Registros",selectRange:"Seleccionar rango"},dateFilter:{quickPresets:"Presets r\xE1pidos",days7:"7 d\xEDas",days30:"30 d\xEDas",days90:"90 d\xEDas",selectHelp:"Selecciona la fecha de inicio y fin del rango",daysSelected:"{count} d\xEDas seleccionados",reset:"Reiniciar",cancel:"Cancelar",apply:"Aplicar"},metrics:{activeAgents:"Agentes activos",datastores:"Datastores",newContacts:"Nuevos contactos",conversations:"Conversaciones",thisMonth:"este mes"},chart:{messageStats:"Estad\xEDsticas de Mensajes",groupedByMonth:"Datos agrupados por mes",groupedByWeek:"Datos agrupados por semana",daily:"Datos diarios",inRange:{days:"{count} d\xEDas en el rango",weeks:"{count} semanas en el rango",months:"{count} meses en el rango"},tooltip:{day:"D\xEDa",week:"Semana",month:"Mes",messages:"mensajes"}},agentPerformance:{title:"Rendimiento de Agentes",conversations:"conversaciones",noData:"No hay datos de agentes disponibles"}},agents:{title:"Agentes",description:"Los agentes son instancias personalizables de modelos de lenguaje grandes adaptadas para ajustarse a tus casos de uso espec\xEDficos. Al conectarlos a un almac\xE9n de datos, puedes entrenarlos en tu base de conocimientos \xFAnica.",newAgent:"Nuevo Agente",preparingAgents:"Preparando tus agentes...",tutorial:"Ver tutorial - Creaci\xF3n de agentes",requestFeature:"Solicitar mejora",requestFeatureDescription:"\xBFQuieres una nueva mejora?",requestAgent:"Solicitar agente",requestAgentDescription:"\xBFQuieres un nuevo agente?",new:"Nuevo",create:"Crear"},datastores:{title:"Fuentes",description:"Organiza tus bases de conocimiento con archivos, p\xE1ginas web y otras fuentes de datos.",fileMovedSuccess:"Archivo movido exitosamente",fileMovedError:"Error al mover el archivo. Intenta de nuevo.",folderDeletedSuccess:"Carpeta eliminada exitosamente",folderDeletedError:"Error al eliminar la carpeta",fileDeletedSuccess:"Archivo eliminado exitosamente",fileDeletedError:"Error al eliminar el archivo",errorUpdatingName:"Error al actualizar el nombre del datastore. Por favor intenta de nuevo.",tokens:"tokens",chunks:"chunks",files:"Archivos",configuration:"Configuraci\xF3n",dataFile:"Archivo de datos",fileConfiguration:"Configuraci\xF3n del Archivo",fileConfigurationDescription:"Actualiza los detalles y configuraci\xF3n de este archivo de datos",updateConfiguration:"Actualizar Configuraci\xF3n",dangerZone:"Zona de Peligro",dangerZoneDescription:"Eliminar este archivo de forma permanente",deleteFileTitle:"\xBFEliminar archivo?",deleteFileWarning:"Esta acci\xF3n",deleteFileWarningBold:"no se puede deshacer",deleting:"Eliminando...",emptyStateTitle:"No tienes carpetas ni archivos a\xFAn",emptyStateDescription:"Crea tu primera carpeta o sube un archivo para empezar",newFolder:"Nueva Carpeta",newFile:"Nuevo Archivo",folders:"Carpetas",settings:{pluginIconUpdated:"\xCDcono del plugin actualizado exitosamente",pluginUpdated:"Plugin actualizado exitosamente",pluginIcon:"\xCDcono del Plugin",replace:"Reemplazar",delete:"Eliminar",nameForHumans:"Nombre para Humanos",nameForHumansPlaceholder:"Mi Plugin Personalizado",descriptionForHumans:"Descripci\xF3n para Humanos",descriptionForHumansPlaceholder:"Una breve descripci\xF3n de tu plugin",descriptionForModel:"Descripci\xF3n para el Modelo",descriptionForModelPlaceholder:"Plugin para consultar datos de {name}. \xDAsalo para responder preguntas sobre la base de conocimiento.",pluginDescriptionBestPractices:"Ver Mejores Pr\xE1cticas de Descripci\xF3n de Plugin",update:"Actualizar",pluginRoot:"URL Ra\xEDz del Plugin",copied:"Copiado al portapapeles",settingsUpdated:"Configuraci\xF3n actualizada exitosamente",errorUpdating:"Error al actualizar la configuraci\xF3n",deleteSuccess:"Carpeta eliminada exitosamente",deleteError:"Error al eliminar la carpeta"}},conversations:{title:"Conversaciones",description:"Ver todas las conversaciones",noConversations:"No se encontraron conversaciones"},contacts:{title:"Contactos",subtitle:"Gestiona todos tus leads y clientes",tabs:{all:"Todos",recent:"Recientes"},exportCSV:"Exportar CSV",totalContacts:"Total de Contactos",lastSixMonthsTrend:"Tendencia \xFAltimos 6 meses",newThisWeek:"Nuevos Esta Semana",newContacts:"nuevos contactos",dailyBreakdown:"Desglose diario:",withEmail:"Con Email",contactsWithEmail:"Contactos con datos de email",searchPlaceholder:"Buscar contactos...",reload:"Recargar",resultsFound:"{count} resultado encontrado",resultsFoundPlural:"{count} resultados encontrados",unknown:"Desconocido",copyContactInfo:"Copiar informaci\xF3n del contacto",showingContacts:"Mostrando <strong>{from}</strong> a <strong>{to}</strong> de <strong>{total}</strong> contactos",previous:"Anterior",next:"Siguiente",noResultsFound:"No se encontraron resultados",noContactsYet:"A\xFAn no hay contactos",adjustSearchTerms:"Intenta ajustar tus t\xE9rminos de b\xFAsqueda o limpia los filtros para ver todos los contactos.",emptyContactList:"Tu lista de contactos est\xE1 vac\xEDa. Los contactos aparecer\xE1n autom\xE1ticamente aqu\xED cuando tus agentes interact\xFAen con los clientes.",clearSearch:"Limpiar b\xFAsqueda",refresh:"Refrescar"},logs:{title:"Registros de Actividad",description:"Monitorea y analiza toda la actividad en tu organizaci\xF3n",actions:{generateReport:"Generar Reporte",reload:"Recargar"},search:{placeholder:"Buscar registros..."},dateFilter:{quickPresets:"Presets r\xE1pidos",days7:"7 d\xEDas",days30:"30 d\xEDas",days90:"90 d\xEDas",selectHelp:"Selecciona inicio y fin",daysSelected:"{count} d\xEDas seleccionados",reset:"Reiniciar",cancel:"Cancelar",apply:"Aplicar"},metrics:{totalRequests:"Total Requests",totalCost:"Costo Total",avgResponseTime:"Tiempo Promedio",tokensUsed:"Tokens Usados",last30Days:"\xFAltimos 30 d\xEDas",thisMonth:"este mes",perResponse:"por respuesta",totalConsumed:"total consumidos"}},iframePage:{defaultAssistant:"Asistente",agentNotAvailable:"Agente no disponible",privateAgentMessage:'Este agente es privado y no puede ser embebido. Cambia la visibilidad a "p\xFAblico" para usar el iframe.',loading:"Cargando...",noConversations:"No hay conversaciones previas",newConversation:"Nueva conversaci\xF3n"},standalonePage:{defaultAssistant:"tu asistente",defaultAgent:"Agente",restrictedAccess:"Acceso restringido",privateAgent:"Agente privado",requiresAuth:"Este agente es privado y requiere autenticaci\xF3n para acceder.",login:"Iniciar sesi\xF3n",newConversation:"Nueva conversaci\xF3n",noConversations:"No hay conversaciones",untitledConversation:"Conversaci\xF3n sin t\xEDtulo",expandSidebar:"Expandir sidebar",writeMessage:"Escribe tu mensaje...",initialMessage:"\xA1Hola! \u{1F44B} Soy {agentName}. \xBFEn qu\xE9 puedo ayudarte hoy?"},agentsList:{tabs:{all:"Todos",marketplace:"Marketplace"},sort:{recent:"M\xE1s recientes",name:"Nombre",conversations:"Conversaciones"},buttons:{creating:"Creando...",createNew:"Crear agente",new:"Nuevo",install:"Instalar",evaluate:"Evaluar",deleteAgent:"Eliminar agente"},sections:{recentAgents:"Agentes recientes",featuredAgents:"Agentes destacados"},table:{name:"Nombre",lastRun:"\xDAltima ejecuci\xF3n",integrations:"Integraciones",widget:"Instalar",evaluate:"Evaluar",enabled:"Habilitado"},emptyState:{title:"\xA1Comienza a Chatear!",description:"Inicia una conversaci\xF3n y deja que nuestro asistente te ayude a crear y configurar tu primer agente de manera guiada",startingConversation:"Iniciando conversaci\xF3n...",startChatting:"Empezar a Chatear",helperText:"El asistente te guiar\xE1 paso a paso en la creaci\xF3n de tu agente"},marketplace:{searchPlaceholder:"Buscar agentes por nombre o descripci\xF3n...",featuredAgents:"Agentes destacados",noResults:"No encontramos prompts",noResultsDescription:"Intenta ajustar tu b\xFAsqueda para encontrar lo que buscas."},deleteModal:{title:"Eliminar agente",confirmText:"\xBFEst\xE1s seguro de que deseas eliminar el agente",warningTitle:"Esta acci\xF3n no se puede deshacer:",warningItems:{versions:"Se eliminar\xE1n todas las versiones del agente",conversations:"Se eliminar\xE1n todas las conversaciones del agente",config:"Se perder\xE1 toda la configuraci\xF3n y personalizaci\xF3n",files:"Los archivos asociados ser\xE1n eliminados permanentemente"},cancel:"Cancelar",deleting:"Eliminando...",deleteAgent:"Eliminar agente"},toast:{agentDeleted:'Agente "{name}" eliminado correctamente',deleteError:"Error al eliminar el agente"}},deployPage:{title:"Instalar Agente",subtitle:"Elige d\xF3nde desplegar tu agente",comingSoon:"Pr\xF3ximamente",enablePublicAgent:"Habilitar agente p\xFAblico",upgradePlan:"Actualizar plan",confirmPublicAgent:"Esta integraci\xF3n requiere un agente p\xFAblico. \xBFDeseas hacer tu agente p\xFAblico?",categories:{web:{name:"Instalar en tu Web",description:"Agrega el chat a tu sitio web"},messaging:{name:"Mensajer\xEDa",description:"Conecta con apps de mensajer\xEDa"},crm:{name:"CRM y Soporte",description:"Integra con tu sistema de atenci\xF3n"},ecommerce:{name:"Ecommerce",description:"Conecta con plataformas de venta"}},integrations:{bubble:{name:"Chat Flotante",description:"Burbuja de chat en la esquina de tu web"},iframe:{name:"Chat Embebido",description:"Inserta el chat dentro de tu p\xE1gina"},standalone:{name:"P\xE1gina Dedicada",description:"Una p\xE1gina completa para tu agente"},whatsapp:{description:"Responde autom\xE1ticamente en WhatsApp"},telegram:{description:"Bot para Telegram"},instagram:{description:"Responde mensajes de Instagram"},slack:{description:"Bot para tu workspace de Slack"},kapso:{description:"WhatsApp v\xEDa Kapso API"},horneross:{description:"CRM integrado de Horneross"},chatwoot:{description:"Plataforma de soporte open-source"},mercadolibre:{description:"Responde preguntas de Mercado Libre"},shopify:{description:"Integra tu agente en tu tienda Shopify"},tiendanube:{description:"Integra tu agente en tu tienda de Tienda Nube"}},modals:{bubble:"Configurar Chat Flotante",iframe:"Configurar Chat Embebido",standalone:"Configurar P\xE1gina Dedicada",configure:"Personaliza tu integraci\xF3n"},premiumRequired:{title:"Funci\xF3n Premium",description:"Esta integraci\xF3n requiere un plan premium. Actualiza tu plan para desbloquear esta funci\xF3n."}},widgetEditor:{title:"Editor de Widget",widgetTypes:{bubble:"Bubble",iframe:"iFrame",standalone:"Presentaci\xF3n"},header:{backToAgents:"Volver a agentes",save:"Guardar",saveChanges:"Guardar cambios"},privateAgent:{title:"Agente privado",publicTitle:"Agente p\xFAblico",publicDescription:"Este agente es accesible para cualquiera con el enlace.",bubbleRequiresPublic:"El widget bubble requiere que el agente sea p\xFAblico para funcionar.",iframeRequiresPublic:"El iframe requiere que el agente sea p\xFAblico para funcionar.",changeVisibility:'Cambia la visibilidad a "p\xFAblico" en la configuraci\xF3n del agente.',warningBubble:"El widget bubble requiere que el agente sea p\xFAblico.",warningIframe:"El iframe requiere que el agente sea p\xFAblico.",changeToPublic:"Cambiar a p\xFAblico",changeToPrivate:"Cambiar a privado",confirmTitle:"\xBFCambiar visibilidad del agente?",confirmDescription:"Esto har\xE1 que tu agente sea accesible para cualquiera con el enlace. El widget funcionar\xE1 una vez que el agente sea p\xFAblico.",confirmPrivateTitle:"\xBFHacer el agente privado?",confirmPrivateDescription:"Esto restringir\xE1 el acceso solo a tu organizaci\xF3n. El widget bubble y el iframe dejar\xE1n de funcionar en sitios web externos.",cancel:"Cancelar",confirm:"Cambiar a p\xFAblico",confirmPrivate:"Cambiar a privado",successMessage:"Visibilidad del agente cambiada a p\xFAblico",successPrivateMessage:"Visibilidad del agente cambiada a privado",errorMessage:"Error al cambiar la visibilidad del agente"},dropdown:{noAgents:"No hay agentes"},sidebar:{name:"Nombre",noName:"Sin nombre",nameDescription:"Se mostrar\xE1 en el header del chat",initialMessage:"Mensaje inicial",initialMessageDefault:"\xA1Hola! \xBFC\xF3mo puedo ayudarte?",initialMessageDescription:"Mensaje de bienvenida para usuarios",primaryColor:"Color principal",presentation:"Presentaci\xF3n",customUrl:"URL personalizada",customUrlDescription:"El enlace p\xFAblico para compartir tu agente",suggestions:"Sugerencias",suggestionsDescription:"Plantillas, popup, branding",messageTemplates:"Plantillas de mensaje",iframeOptions:"Opciones iFrame",transparentBackground:"Fondo transparente",helpLinks:"Links de ayuda",usefulLinks:"Enlaces \xFAtiles",customCSS:"CSS personalizado",configured:"Configurado",noStyles:"Sin estilos",installCode:"C\xF3digo de instalaci\xF3n",copySnippet:"Copiar snippet",copyDescription:"Copia y pega en tu sitio web",viewLive:"Ver en vivo",bubbleInstallHint:"Pega este c\xF3digo antes de la etiqueta </body> de tu sitio web. El chat aparecer\xE1 autom\xE1ticamente.",customizationOptions:"Opciones de Personalizaci\xF3n",customizationDescription:"Opciones disponibles para data-interface:"},toast:{codeCopied:"C\xF3digo copiado!",clickToCopy:"Click para copiar",configSaved:"Configuraci\xF3n guardada!",saveError:"Error al guardar"}},hornerossBuilder:{title:"\xBFQu\xE9 te gustar\xEDa hacer hoy?",subtitle:"Crea tu <highlight>Empleado IA</highlight> simplemente <highlight>chateando con IA</highlight>.",subtitleParts:{prefix:"Crea tu",aiEmployee:"Empleado IA",middle:"simplemente",chattingWithAI:"chateando con IA"},placeholder:"Quiero un agente que monitoree mi bandeja de soporte y ayude a responder.",seo:{title:"Horneross - Constructor de Agentes IA | Crea Asistentes IA Personalizados",description:"Construye poderosos agentes de IA sin programar. Crea asistentes de IA personalizados para ventas, soporte, onboarding y automatizaci\xF3n. Conecta con tus datos y herramientas sin problemas.",keywords:"constructor de agentes IA, IA sin c\xF3digo, asistentes IA personalizados, automatizaci\xF3n IA, constructor de chatbots, agente de ventas IA, agente de soporte IA, IA conversacional"},usageLimitModal:{conversationsExceeded:{title:"L\xEDmite de conversaciones excedido",description:"Has alcanzado el l\xEDmite m\xE1ximo de conversaciones activas para tu plan. Por favor, resuelve o elimina conversaciones existentes, o actualiza tu plan para continuar."},agentsExceeded:{title:"L\xEDmite de agentes excedido",description:"Has alcanzado el l\xEDmite m\xE1ximo de agentes para tu plan. Por favor actualiza tu plan para crear m\xE1s agentes."}},autoStartPrompt:"\xA1Hola! Necesito crear un agente de IA. \xBFPuedes mostrarme ejemplos de agentes populares y ayudarme a elegir el que mejor se adapte a mi negocio?"}},components:{organizationForm:{organization:"Organizaci\xF3n",organizationName:"Nombre de la Organizaci\xF3n",organizationNamePlaceholder:"Nombre de la organizaci\xF3n",upload:"Subir",remove:"Quitar",inviteTeamMember:"Invitar Miembro del Equipo",enterEmail:"Ingresa direcci\xF3n de correo",sendInvite:"Enviar Invitaci\xF3n",invite:"Invitar",teamMembers:"Miembros del Equipo",seats:"asientos",active:"Activo",pending:"Pendiente",roleUser:"Usuario",roleAdmin:"Administrador",roleOwner:"Propietario",maxSeatsReached:"Has alcanzado el n\xFAmero m\xE1ximo de asientos para tu plan.",invitationSent:"Invitaci\xF3n enviada exitosamente",userAlreadyInvited:"Usuario ya invitado",invitationFailed:"No se puede enviar la invitaci\xF3n",invitationCreatedNoEmail:"Invitaci\xF3n creada, pero no se pudo enviar el email. Comparte el link manualmente.",emailNotSentShareLink:"No se pudo enviar el email. Comparte este link con el invitado:",linkCopied:"Link copiado al portapapeles",confirmRemoveMember:"Este usuario ser\xE1 eliminado de la organizaci\xF3n, \xBFest\xE1s seguro?",memberRemoved:"Miembro eliminado exitosamente",memberRemoveFailed:"Error al eliminar miembro",iconUpdated:"\xCDcono actualizado exitosamente",iconUploadFailed:"Error al subir \xEDcono",iconDeleted:"\xCDcono eliminado exitosamente",iconDeleteFailed:"Error al eliminar \xEDcono",expiresOn:"Expira el",invitationExpired:"Invitaci\xF3n expirada",expired:"Expirado",resendInvitation:"Reenviar invitaci\xF3n",cancelInvitation:"Cancelar invitaci\xF3n",removeMember:"Eliminar miembro",invitationResent:"Invitaci\xF3n reenviada exitosamente",resendFailed:"Error al reenviar invitaci\xF3n",confirmCancelInvite:"Esta invitaci\xF3n ser\xE1 cancelada. \xBFEst\xE1s seguro?",invitationCancelled:"Invitaci\xF3n cancelada",cancelFailed:"Error al cancelar invitaci\xF3n"},integrationsManagement:{pageTitle:"Integraciones",pageDescription:"Conecta tus herramientas de comunicaci\xF3n",statusConnected:"Conectado",statusAvailable:"Disponible",statusComingSoon:"Pr\xF3ximamente",comingSoonMessage:"Esta integraci\xF3n estar\xE1 disponible pronto",configureMessage:"Configura esta integraci\xF3n para comenzar",open:"Abrir",manage:"Gestionar",configure:"Configurar",connectedAccount:"Cuenta conectada",botsConnected:"{count} bot conectado",botsConnectedPlural:"{count} bots conectados",integrations:{chatwoot:"Chatwoot",chatwootDescription:"Plataforma de atenci\xF3n al cliente",whatsapp:"WhatsApp Business",whatsappDescription:"Conversaciones con clientes",telegram:"Telegram",telegramDescription:"Bots para comunicaci\xF3n",instagram:"Instagram",instagramDescription:"Facebook e Instagram Messenger",slack:"Slack",slackDescription:"Notificaciones de equipo",zapier:"Zapier",zapierDescription:"Miles de aplicaciones"}},marketplaceAgentCard:{copy:"Copiar",copied:"Copiado!"},contactsTable:{searchLabel:"Buscar contactos (email)",resultsCount:"{count} resultado",resultsCountPlural:"{count} resultados",searchPlaceholder:"Buscar contactos por email, nombre, tel\xE9fono...",tableHeaders:{email:"Email",phoneNumber:"N\xFAmero de Tel\xE9fono",name:"Nombre",createdAt:"Creado"},pagination:{previous:"Anterior",next:"Siguiente",pageOf:"P\xE1gina {current} de {total}"}},createAgentModal:{title:"Crear Nuevo Agente",subtitle:"Describe el agente que quieres crear",placeholder:"Describe tu agente... ej: Crea un agente de atenci\xF3n al cliente que...",quickStartTemplates:"Plantillas de Inicio R\xE1pido",explore:"Explorar",templates:{customerSupport:{label:"Atenci\xF3n al Cliente",prompt:"Crea un agente de atenci\xF3n al cliente que ayude con reembolsos, preguntas sobre env\xEDos y consultas sobre productos. S\xE9 amigable, emp\xE1tico y orientado a soluciones."},salesAssistant:{label:"Asistente de Ventas",prompt:"Crea un agente de ventas que califique leads, programe reuniones y entienda los puntos de dolor del cliente. S\xE9 profesional y consultivo."},technicalSupport:{label:"Soporte T\xE9cnico",prompt:"Crea un agente de soporte t\xE9cnico que resuelva problemas de software, proporcione soluciones paso a paso y escale problemas complejos cuando sea necesario."},knowledgeAssistant:{label:"Asistente de Conocimiento",prompt:"Crea un asistente de IA que responda preguntas basadas en documentaci\xF3n, proporcione explicaciones detalladas y ayude a los usuarios a encontrar informaci\xF3n r\xE1pidamente."}}},navigation:{dashboard:"Inicio",agents:"Agentes",datastores:"Fuentes",conversations:"Conversaciones",analytics:"Anal\xEDticas",settings:"Configuraci\xF3n",contacts:"Contactos",logs:"Registros",tools:"Herramientas",integrations:"Integraciones",inbox:"Bandeja de entrada",database:"Base de datos",forms:"Formularios",emailInboxes:"Bandejas de Correo",appsTools:"Apps/Herramientas",home:"Inicio",chats:"Conversaciones",newChat:"Nueva Conversaci\xF3n",projects:"Fuentes",explore:"Explorar",organizations:"Mis Organizaciones",createOrganization:"Crear Organizaci\xF3n",memory:"Memoria",library:"Biblioteca"},chatbox:{placeholder:"Escribe un mensaje...",actions:{send:"Enviar",resolve:"Marcar Como Resuelto",requestHuman:"Solicitar Humano"}},sidebar:{changeLanguage:"Cambiar idioma",contactSupport:"Centro de ayuda",openSidebar:"Abrir Sidebar",closeSidebar:"Cerrar Sidebar",updatePlan:"Actualizar Plan",updatePlanDescription:"Obt\xE9n m\xE1s beneficios mejorando tu plan",tutorial:"Ver Tutorial",workspace:"Espacio de trabajo",management:"Gesti\xF3n",groups:{agent:"Agente",conversations:"Gesti\xF3n",recentChat:"Chat reciente",memory:"Memoria"},badges:{new:"NUEVO",experimental:"EXP",comingSoon:"Pr\xF3ximamente"},recentChat:{noConversations:"No hay conversaciones recientes"},enterprise:{title:"Enterprise",description:"Escala con soluciones personalizadas"},actions:{collapse:"Colapsar",expand:"Expandir"}},searchChat:{title:"Buscar",placeholder:"Buscar conversaciones...",noResults:"No se encontraron conversaciones",empty:"No hay conversaciones recientes",recentChats:"Conversaciones recientes",hint:"Presiona Enter para abrir"},agentPress:{title:"Herramientas",tooltipTitle:"Herramientas del Agente",tooltipDescription:"Capacidades especiales que puedes habilitar para personalizar el comportamiento del agente",categories:{agent:{name:"Agente",description:"Comportamiento principal y configuraci\xF3n de conversaci\xF3n"},research:{name:"Investigaci\xF3n",description:"B\xFAsqueda web y extracci\xF3n de contenido"},builder:{name:"Constructor",description:"Crear y gestionar otros agentes"},prompt:{name:"Prompts",description:"Ingenier\xEDa y gesti\xF3n de prompts"},data:{name:"Datos",description:"Ejecuci\xF3n de c\xF3digo y an\xE1lisis de datos"},media:{name:"Medios",description:"Generaci\xF3n de im\xE1genes y avatares"},presentation:{name:"Presentaci\xF3n",description:"Herramientas visuales para mostrar datos"},integration:{name:"Integraci\xF3n",description:"Integraciones con servicios externos"}}},agentIntegrations:{title:"Integraciones",tooltipTitle:"Integraciones del Agente",tooltipDescription:"Integraciones personalizadas con servicios externos y APIs",addIntegration:"Agregar Integraci\xF3n",noAgentWarning:"No hay integraciones disponibles",noAgentHint:"Crea el agente primero para agregar integraciones",searchPlaceholder:"Buscar integraciones...",noResults:"No se encontraron integraciones para",emptyState:{title:"Sin integraciones configuradas",description:"Haz clic para agregar integraciones personalizadas como HTTP, formularios, etc."},tools:{http:{label:"HTTP",description:"Realizar solicitudes HTTP a APIs externas."},form:{label:"Formularios",description:"Recopilar informaci\xF3n del usuario mediante formularios interactivos."},leadCapture:{label:"Captura de leads",description:"Capturar informaci\xF3n de contacto de clientes potenciales."},default:"Herramienta del agente"},actions:{remove:"Eliminar",removeError:"Error al eliminar herramienta"}},layout:{title:"horneross - Plataforma de Agentes IA",description:"Construye y despliega agentes IA personalizados para tu negocio"},intercomModal:{title:"\xA1Hola! \u{1F44B}",subtitle:"\xBFC\xF3mo podemos ayudarte?",reportBug:"Reportar un error",suggestImprovement:"Sugerir una mejora",contactSales:"Contactar Ventas",contactSupport:"Contactar Soporte",guide:"Gu\xEDa",news:"Novedades",horneross:"horneross.com",feedback:"Calif\xEDcanos",instagram:"S\xEDguenos en Instagram"},datastoreForms:{updating:"Actualizando...",updated:"Actualizado exitosamente",somethingWentWrong:"Algo sali\xF3 mal",datastoreName:"Nombre del Datastore",datastoreNameHelperText:"Dale a tu datastore un nombre descriptivo",description:"Descripci\xF3n",descriptionHelperText:"Breve descripci\xF3n de lo que contiene este datastore",public:"Hacer este datastore p\xFAblico",publicHelperText:"Los datastores p\xFAblicos pueden ser accedidos por cualquier persona con el enlace",submit:"Guardar"},whatsAppSettings:{title:"WhatsApp Business",description:"Gestiona tus n\xFAmeros de WhatsApp conectados",noNumbersConnected:"No hay n\xFAmeros conectados a\xFAn.",connected:"Conectado",test:"Probar",delete:"Eliminar",connectNewAccount:"Conectar Nueva Cuenta",backToList:"Volver a la lista",configureTitle:"Configurar WhatsApp Business",configureDescription:"Conecta tu cuenta paso a paso",steps:{connect:"Conectar",configure:"Configurar",done:"Listo"},wizard:{step1:{title:"Obt\xE9n el token",description:"Ingresa tu token de Meta para conectar WhatsApp Business.",metaDeveloper:"Meta Developer",graphExplorer:"Explorador de gr\xE1ficos",generateToken:"Genera token con permisos WhatsApp Business",permissions:"Aseg\xFArate de seleccionar los permisos: whatsapp_business_management, whatsapp_business_messaging",expiration:"Expiraci\xF3n: Nunca",viewGuide:"Ver gu\xEDa",tokenLabel:"Token de acceso",tokenPlaceholder:"EAAG..."},step2:{title:"Selecciona un n\xFAmero",description:"Hemos encontrado los siguientes n\xFAmeros asociados a tu cuenta.",available:"Disponible"},step3:{title:"\xA1Listo!",description:"Tu n\xFAmero de WhatsApp Business ha sido conectado exitosamente."}},actions:{cancel:"Cancelar",back:"Atr\xE1s",finish:"Finalizar",connectWhatsApp:"Conectar WhatsApp",next:"Siguiente"}},leadCaptureConfigModal:{titleCreate:"Nueva Captura de Leads",titleEdit:"Editar Captura de Leads",editing:"Editando",configNameLabel:"Nombre de la configuraci\xF3n",configNameRequired:"requerido",configNamePlaceholder:"Ej: Captura de contacto general",descriptionLabel:"Descripci\xF3n",descriptionPlaceholder:"Descripci\xF3n de cu\xE1ndo usar esta configuraci\xF3n...",fieldsLabel:"Campos a capturar",fieldsRequired:"requerido",fields:{name:"Nombre",email:"Email",phone:"Tel\xE9fono",company:"Empresa",message:"Mensaje"},optionsLabel:"Opciones de captura",autoCapture:"Captura autom\xE1tica",autoCaptureDescription:"Captura informaci\xF3n autom\xE1ticamente durante la conversaci\xF3n",requireName:"Nombre requerido",requireNameDescription:"El nombre es obligatorio para completar la captura",requireEmail:"Email requerido",requireEmailDescription:"El email es obligatorio para completar la captura",requirePhone:"Tel\xE9fono requerido",requirePhoneDescription:"El tel\xE9fono es obligatorio para completar la captura",customMessageLabel:"Mensaje personalizado",customMessagePlaceholder:"Mensaje que el agente mostrar\xE1 al solicitar la informaci\xF3n...",customMessageHelper:"Opcional: Personaliza el mensaje que ver\xE1 el usuario al capturar sus datos",errors:{nameRequired:"Por favor ingresa un nombre para la configuraci\xF3n",fieldsRequired:"Por favor selecciona al menos un campo",saveError:"Error al guardar la configuraci\xF3n de Lead Capture"},success:{created:"Lead Capture creado",updated:"Lead Capture actualizado"},actions:{cancel:"Cancelar",saving:"Guardando...",createConfig:"Crear Configuraci\xF3n",saveChanges:"Guardar Cambios"}},formConfigModal:{titleCreate:"Nuevo Formulario",titleEdit:"Editar Formulario",editing:"Editando",nameLabel:"Nombre",nameRequired:"requerido",namePlaceholder:"Ej: Formulario de contacto",descriptionLabel:"Descripci\xF3n",descriptionPlaceholder:"Descripci\xF3n del formulario (opcional)",buttonTextLabel:"Texto del bot\xF3n",buttonTextPlaceholder:"Enviar",fieldsLabel:"Campos del formulario",fieldsRequired:"requerido",addField:"Agregar campo",fieldNumber:"Campo #{number}",fieldLabelLabel:"Etiqueta",fieldLabelPlaceholder:"Ej: Nombre completo",fieldTypeLabel:"Tipo",fieldTypes:{text:"Texto",email:"Email",number:"N\xFAmero",tel:"Tel\xE9fono",textarea:"Texto largo",select:"Selecci\xF3n",checkbox:"Checkbox"},placeholderLabel:"Placeholder",placeholderPlaceholder:"Texto de ayuda (opcional)",requiredField:"Campo obligatorio",noFieldsMessage:'No hay campos agregados. Haz clic en "Agregar campo" para comenzar.',errors:{nameRequired:"Por favor ingresa un nombre para el formulario",fieldsRequired:"Agrega al menos un campo al formulario",fieldLabelRequired:"Todos los campos deben tener una etiqueta",saveError:"Error al guardar el formulario"},success:{created:"Formulario creado",updated:"Formulario actualizado"},actions:{cancel:"Cancelar",saving:"Guardando...",createForm:"Crear Formulario",saveChanges:"Guardar Cambios"}},usageLimitModal:{defaultTitle:"L\xEDmite de Uso Alcanzado",defaultDescription:"Actualiza tu plan para desbloquear l\xEDmites de uso m\xE1s altos y funciones premium.",cancel:"Cancelar",upgradePlan:"Actualizar Plan"},duplicateAgentModal:{title:"Duplicar Agente",description:'Crea una copia de "{name}" con toda su configuraci\xF3n y herramientas.',newAgentName:"Nombre del Nuevo Agente",placeholder:"Ingresa el nombre para el agente duplicado",cancel:"Cancelar",duplicating:"Duplicando...",duplicate:"Duplicar Agente",errors:{nameRequired:"El nombre del agente es requerido",failed:"Error al duplicar el agente. Por favor intenta de nuevo."},success:"\xA1Agente duplicado exitosamente!"},createDatastoreModal:{title:"Crear Nueva Fuente",subtitle:"Configura tu base de conocimiento en 4 sencillos pasos",recommended:"Recomendado",steps:{name:"Nombre",nameDescription:"Identificaci\xF3n de la fuente",type:"Tipo",typeDescription:"Tipo de almacenamiento",source:"Fuente",sourceDescription:"Origen de datos",configure:"Configurar",configureDescription:"Detalles finales"},step1:{title:"\xBFC\xF3mo quieres llamar tu fuente?",description:"Elige un nombre descriptivo que te ayude a identificar f\xE1cilmente el contenido",nameLabel:"Nombre de la Fuente",namePlaceholder:"Ej: Documentaci\xF3n t\xE9cnica, Base de conocimiento, FAQ...",nameHelper:"Este nombre ser\xE1 visible en tu panel y reportes",suggestionsTitle:"Sugerencias de nombres",suggestions:{knowledgeBase:"Base de Conocimiento",documentation:"Documentaci\xF3n",faqClients:"FAQ Clientes",technicalManuals:"Manuales T\xE9cnicos"}},step2:{title:"Selecciona el tipo de fuente",description:"Cada tipo ofrece diferentes capacidades seg\xFAn tus necesidades"},step3:{title:"Elige tu fuente de datos",titleCodeInterpreter:"Selecciona el tipo de archivo",description:"Configura el origen del contenido para tu fuente",descriptionCodeInterpreter:"Podr\xE1s analizar archivos con capacidades avanzadas"},step4:{title:"Configura tu fuente de datos",titleUpload:"Sube tu archivo",description:"\xDAltimos detalles para completar la configuraci\xF3n"},datastoreTypes:{qdrant:{name:"Est\xE1ndar",description:"Ideal para documentos, FAQs y conocimiento general",features:{vectorSearch:"B\xFAsqueda precisa",multipleEmbeddings:"M\xFAltiples formatos de archivo",advancedConfig:"Configuraci\xF3n avanzada"}},pinecone:{name:"Nube",description:"Almacenamiento en la nube para grandes vol\xFAmenes",features:{fullyManaged:"Completamente gestionado",autoScaling:"Escalabilidad autom\xE1tica",simpleConfig:"Configuraci\xF3n simple"}},typesense:{name:"B\xFAsqueda R\xE1pida",description:"Optimizado para resultados instant\xE1neos",features:{instantSearch:"B\xFAsqueda instant\xE1nea",typoTolerance:"Tolerancia a errores",facetedSearch:"B\xFAsqueda filtrada"}},codeInterpreter:{name:"An\xE1lisis de Datos",description:"Analiza hojas de c\xE1lculo y datos complejos",features:{complexAnalysis:"An\xE1lisis complejos",pythonExecution:"C\xE1lculos autom\xE1ticos",dataVisualization:"Gr\xE1ficos y visualizaciones"}}},buttons:{previous:"Anterior",cancel:"Cancelar",continue:"Continuar",createDatastore:"Crear Fuente",creating:"Creando...",createFinish:"Crear y Finalizar",back:"Volver"},errors:{creatingDatastore:"Error al crear la fuente"}},createSimpleDatastoreModal:{title:"Crear Datastore Simple",description:"Crea tu base de conocimiento en 2 simples pasos",advancedMode:"Modo avanzado",descriptions:{website:"Datastore del sitio web: {url}",files:"Datastore con {count} archivos subidos"},suggestions:{knowledgeBase:"Base de Conocimiento",documentation:"Documentaci\xF3n",faqClients:"FAQ Clientes",technicalManuals:"Manuales T\xE9cnicos",policiesProcedures:"Pol\xEDticas y Procedimientos",trainingMaterial:"Material de Capacitaci\xF3n"},step1:{title:"\xBFC\xF3mo quieres llamar tu datastore?",subtitle:"Elige un nombre descriptivo para identificar tu base de conocimiento",nameLabel:"Nombre del Datastore",namePlaceholder:"Ej: Documentaci\xF3n t\xE9cnica, Base de conocimiento...",nameHelper:"Este nombre te ayudar\xE1 a identificar tu datastore en el panel",suggestionsTitle:"Sugerencias de nombres"},step2:{datastoreType:"Base de Conocimiento"},tabs:{files:"Archivos",website:"Sitio Web"},filesTab:{title:"Sube tus archivos",description:"Arrastra y suelta o selecciona los archivos que quieres agregar"},websiteTab:{title:"Guarda un sitio web",description:"Ingresa la URL del sitio que quieres procesar y agregar a tu datastore"},progress:{overall:"Progreso Total"},buttons:{back:"Atr\xE1s",cancel:"Cancelar",continue:"Continuar",saveFiles:"Guardar archivos",saveWebsite:"Guardar sitio web",savingFiles:"Guardando archivos...",processingSite:"Procesando sitio..."},errors:{noFiles:"Por favor selecciona al menos un archivo",noUrl:"Por favor ingresa una URL v\xE1lida",noFilesProcessed:"No se pudieron procesar los archivos",creationError:"Ocurri\xF3 un error al crear el datastore"},toasts:{creating:"Creando datastore...",created:"Datastore creado correctamente",processingWebsite:"Procesando sitio web...",websiteProcessing:"El sitio web se est\xE1 procesando",websiteFullDesc:"El sitio completo se est\xE1 procesando. Recibir\xE1s una notificaci\xF3n cuando est\xE9 listo.",websitePageDesc:"La p\xE1gina se est\xE1 procesando. Recibir\xE1s una notificaci\xF3n cuando est\xE9 lista.",gettingUploadUrl:"Obteniendo URL de carga para {fileName}...",uploading:"Subiendo {fileName}...",processing:"Procesando {fileName}...",fileSuccess:"{fileName} procesado correctamente",fileError:"Error al procesar {fileName}",datastoreCreatedWithFiles:"Datastore creado con {processed} de {total} archivos"}},enterpriseModal:{title:"Soluciones Enterprise",subtitle:"Desbloquea todo el potencial de los agentes IA con nuestra plataforma de nivel empresarial",description:"Desbloquea todo el potencial de los agentes IA con nuestra plataforma de nivel empresarial",solutions:{security:{title:"Seguridad y Cumplimiento",description:"Cumplimiento SOC2 con seguridad de nivel empresarial, SSO y permisos avanzados."},customIntegrations:{title:"Integraciones Personalizadas",description:"Integraciones a medida con tus sistemas y flujos de trabajo existentes."},dedicatedSupport:{title:"Soporte Dedicado",description:"Soporte prioritario 24/7 con un gerente de \xE9xito del cliente dedicado."},multiRegion:{title:"Despliegue Multi-Regi\xF3n",description:"Despliega agentes en m\xFAltiples regiones para un rendimiento y cumplimiento \xF3ptimos."},customSLA:{title:"SLA Personalizado",description:"Acuerdos de nivel de servicio a medida para cumplir con tus requisitos empresariales."},onboarding:{title:"Onboarding y Capacitaci\xF3n",description:"Programas completos de incorporaci\xF3n y capacitaci\xF3n para tu equipo."}},cta:{title:"\xBFListo para escalar tus capacidades de IA?",description:"Contacta a nuestro equipo de ventas para discutir precios e implementaci\xF3n personalizados.",contactSales:"Contactar Ventas",learnMore:"M\xE1s Informaci\xF3n"}},improveAnswerModal:{loading:"Cargando...",noDatastore:{title:"Este agente no tiene datastore. Por favor crea un datastore primero.",action:"Crear Datastore"},info:"Esta acci\xF3n agregar\xE1 una nueva Fuente de Datos Q&A a tu Datastore.",datastoreLabel:"Datastore",selectDatastore:"Seleccionar datastore"},mfaEnforcer:{required:"La autenticaci\xF3n de dos factores es requerida. Por favor habilita 2FA en la configuraci\xF3n de Seguridad."},settings:{profile:{title:"Configuraci\xF3n de Perfil",description:"Gestiona tu informaci\xF3n personal y preferencias",saved:"Guardado",successMessage:"Perfil actualizado exitosamente",errorMessage:"Error al actualizar perfil",sections:{profilePicture:{title:"Foto de Perfil",uploadNew:"Subir Nueva",remove:"Eliminar",helperText:"JPG, PNG o GIF \u2022 M\xE1x 2MB"},personalInfo:{title:"Informaci\xF3n Personal",fullName:"Nombre Completo",fullNamePlaceholder:"Ingresa tu nombre completo",emailAddress:"Correo Electr\xF3nico",emailHelperText:"El correo electr\xF3nico no se puede cambiar"},preferences:{title:"Preferencias",language:"Idioma",darkMode:"Modo Oscuro",darkModeDescription:"Usar tema oscuro en toda la plataforma"},security:{title:"Seguridad",description:"Gestiona la configuraci\xF3n de seguridad de tu cuenta",backToProfile:"\u2190 Volver al Perfil",accountSecurity:"Seguridad de la Cuenta",accountSecurityDescription:"Gestiona 2FA y opciones de seguridad",twoFactor:{title:"Autenticaci\xF3n de Dos Factores (2FA)",enabledActive:"\u2713 Habilitado y activo",description:"Agrega una capa extra de seguridad a tu cuenta",manage:"Gestionar",enable:"Habilitar 2FA"},mfaRequired:{title:"2FA Requerido:",description:"Tu administrador requiere autenticaci\xF3n de dos factores para tu cuenta.",pleaseEnable:"Por favor habilita 2FA para continuar usando la plataforma."}}},autoSave:"Los cambios se guardan autom\xE1ticamente"},team:{title:"Configuraci\xF3n de Equipo",description:"Gestiona los miembros de tu equipo y organizaci\xF3n",noOrganization:"Necesitas ser parte de una organizaci\xF3n para acceder a la configuraci\xF3n de equipo"},billing:{title:"Configuraci\xF3n de Facturaci\xF3n",description:"Gestiona tu suscripci\xF3n y facturaci\xF3n",noOrganization:"Necesitas ser parte de una organizaci\xF3n para acceder a la configuraci\xF3n de facturaci\xF3n",status:{active:"Activo",free:"Gratis"},pricing:{perMonth:"/mes"},planIncludes:"El plan incluye:",features:{agents:"Agentes",datastores:"Datastores",monthlyBudget:"{budget} USD en cr\xE9ditos IA mensuales",storage:"palabras de almacenamiento",fileUploads:"subidas de archivos",teamMembers:"Hasta {count} miembros del equipo"},actions:{upgradePlan:"Actualizar Plan",manageBilling:"Gestionar Facturaci\xF3n"},upgrade:{title:"Actualiza Tu Plan",description:"Elige un plan que se ajuste a tus necesidades"},modals:{cancel:{title:"Cancelar Suscripci\xF3n",description:"\xBFEst\xE1s seguro de que quieres cancelar tu suscripci\xF3n? Tu plan permanecer\xE1 activo hasta el final de tu per\xEDodo de facturaci\xF3n actual.",whatHappens:"Qu\xE9 sucede despu\xE9s:",feature1:"\u2022 Funciones premium hasta que termine el per\xEDodo de facturaci\xF3n",feature2:"\u2022 Descenso autom\xE1tico al plan Gratis",feature3:"\u2022 Datos preservados con l\xEDmites del plan Gratis",feature4:"\u2022 Reactivar en cualquier momento",keepSubscription:"Mantener Suscripci\xF3n",canceling:"Cancelando...",confirmCancel:"Cancelar Suscripci\xF3n"},downgrade:{title:"Descender Suscripci\xF3n",description:"Descendiendo de {current} a {target}.",changesTitle:"Cambios despu\xE9s del descenso:",agents:"Agentes:",datastores:"Datastores:",queries:"Consultas mensuales:",price:"Precio:",important:"Importante:",importantText:"Los cambios entran en vigencia inmediatamente. Las funciones pueden estar restringidas si excedes los nuevos l\xEDmites.",keepCurrent:"Mantener Plan Actual",processing:"Procesando...",confirmDowngrade:"Descender a {plan}"}}},apiKeys:{title:"Claves API",description:"Autentica tus solicitudes API con claves seguras",noOrganization:"Necesitas ser parte de una organizaci\xF3n para acceder a las claves API",infoAlert:"Mant\xE9n tus claves seguras y nunca las compartas p\xFAblicamente.",readDocs:"Leer documentaci\xF3n",yourKeys:"Tus Claves",newKey:"Nueva Clave",emptyState:{title:"A\xFAn no hay claves API",description:"Crea tu primera clave para comenzar"},actions:{copy:"Copiar al portapapeles",delete:"Eliminar clave"},toast:{created:"Clave API creada exitosamente",createError:"Error al crear clave API",mustHaveOne:"Debes tener al menos una clave API",confirmDelete:"\xBFEst\xE1s seguro de que quieres eliminar esta clave API?",deleted:"Clave API eliminada exitosamente",deleteError:"Error al eliminar clave API",copied:"Clave API copiada al portapapeles"},usage:{title:"C\xF3mo usar",headerDescription:"Incluye tu clave API en el encabezado de la solicitud:",headerExample:"Authorization: Bearer TU_CLAVE_API",exampleRequest:"Ejemplo de solicitud:"}},notifications:{title:"Notificaciones",description:"Configura preferencias de notificaci\xF3n y destinatarios",noOrganization:"Necesitas ser parte de una organizaci\xF3n para acceder a la configuraci\xF3n de notificaciones",recipients:{title:"\xBFQui\xE9n recibe notificaciones?",description:"Selecciona miembros del equipo y agrega correos externos para recibir notificaciones",teamMembers:"Miembros del Equipo",selected:"{selected} de {total} seleccionados",externalRecipients:"Destinatarios Externos",emailPlaceholder:"Ingresa direcci\xF3n de correo",add:"Agregar",unknown:"Desconocido"},sound:{title:"Notificaciones de Sonido",streamCompletion:"Completaci\xF3n de stream",streamCompletionDescription:"Reproducir sonido cuando se complete la respuesta de IA",newMessage:"Alerta de nuevo mensaje",newMessageDescription:"Sonido de notificaci\xF3n para nuevos mensajes",errorAlerts:"Alertas de error",errorAlertsDescription:"Notificaci\xF3n de sonido para errores"},email:{title:"Notificaciones por Correo",weeklyReports:"Informes semanales",weeklyReportsDescription:"Resumen de tu actividad semanal",agentUpdates:"Actualizaciones de agentes",agentUpdatesDescription:"Notificaciones sobre tus agentes",securityAlerts:"Alertas de seguridad",securityAlertsDescription:"Notificaciones importantes de seguridad"},inApp:{title:"Notificaciones en la App",conversationUpdates:"Actualizaciones de conversaciones",conversationUpdatesDescription:"Actividad en tus conversaciones",teamActivity:"Actividad del equipo",teamActivityDescription:"Actualizaciones de los miembros de tu equipo",systemUpdates:"Actualizaciones del sistema",systemUpdatesDescription:"Actualizaciones y anuncios de la plataforma"},toast:{saved:"Configuraci\xF3n guardada",saveError:"Error al guardar configuraci\xF3n",invalidEmail:"Por favor ingresa un correo electr\xF3nico v\xE1lido",emailExists:"Correo ya agregado"}}},widgets:{bubble:{tabs:{basic:"B\xE1sico",suggestions:"Sugerencias",style:"Estilo",code:"Instalar"},sections:{displayNameDescription:"Este t\xEDtulo aparecer\xE1 en el encabezado del chat",initialMessageDescription:"Mensaje inicial que ver\xE1n tus usuarios",helpLinksDescription:"Agrega enlaces \xFAtiles que aparecer\xE1n debajo del mensaje inicial",additionalOptions:"Opciones Adicionales",suggestionsDescription:"Agrega sugerencias que tus usuarios pueden seleccionar r\xE1pidamente",primaryColorDescription:"Define el color principal de tu widget",customCSSDescription:"Agrega estilos CSS personalizados (avanzado)",installTitle:"C\xF3digo de Instalaci\xF3n",installDescription:"Copia y pega este c\xF3digo en tu sitio web, justo antes de la etiqueta </body>.",installHint:"Haz clic en el bloque de c\xF3digo para copiarlo al portapapeles."},preview:{initializing:"Inicializando..."},toast:{configSaved:"Configuraci\xF3n guardada exitosamente",configError:"Error al guardar la configuraci\xF3n",codeCopied:"\xA1C\xF3digo copiado al portapapeles!"}},iframe:{tabs:{basic:"B\xE1sico",style:"Estilo",code:"C\xF3digo"},sections:{displayNameDescription:"Este t\xEDtulo aparecer\xE1 en el encabezado del chat",initialMessageDescription:"Mensaje inicial que ver\xE1n tus usuarios",additionalOptions:"Opciones Adicionales",primaryColorDescription:"Define el color principal de tu widget",customCSSDescription:"Agrega estilos CSS personalizados (avanzado)",codeDescription:"Copia este c\xF3digo en tu p\xE1gina HTML"},preview:{initializing:"Inicializando..."},toast:{configSaved:"Configuraci\xF3n guardada exitosamente",configError:"Error al guardar la configuraci\xF3n",codeCopied:"C\xF3digo copiado!"}},standalone:{sections:{standalonePage:"P\xE1gina Independiente",welcomeBanner:"Banner de Bienvenida",agentAvatar:"Avatar del Agente",messageAndBranding:"Mensaje y Branding",organizationLogo:"Logo de Organizaci\xF3n",socialNetworks:"Redes Sociales"},preview:{liveLabel:"En vivo",refreshPreview:"Actualizar preview"},agentAvatar:{title:"Avatar del Agente",readOnly:"Este es el avatar principal del agente (no editable desde aqu\xED)",changeInBuilder:"Para cambiar el avatar del agente, usa el Builder o genera uno con IA"},organizationLogo:{noLogo:"No hay logo de organizaci\xF3n configurado",configureInSettings:"Para configurar el logo de la organizaci\xF3n, ve a la configuraci\xF3n de la organizaci\xF3n",displayedAt:"Se muestra en la esquina superior izquierda del banner",changeInSettings:"Para cambiar el logo, ve a la configuraci\xF3n de la organizaci\xF3n"},bannerStyles:{gradients:{sunset:{name:"Sunset",description:"Degradado naranja a rosa"},ocean:{name:"Ocean",description:"Degradado azul marino"},forest:{name:"Forest",description:"Degradado verde natural"},purple:{name:"Purple Dream",description:"Degradado morado vibrante"}},solids:{blue:{name:"Blue",description:"Azul profesional"},green:{name:"Green",description:"Verde corporativo"},purple:{name:"Purple",description:"Morado moderno"},red:{name:"Red",description:"Rojo intenso"}},solid3d:{blue:{name:"Blue 3D",description:"Azul con profundidad"},orange:{name:"Orange 3D",description:"Naranja con sombras"},teal:{name:"Teal 3D",description:"Verde azulado 3D"},pink:{name:"Pink 3D",description:"Rosa con relieve"}},animated:{aurora:{name:"Aurora",description:"Ondas de aurora suaves"},fire:{name:"Fire",description:"Llamas en\xE9rgicas"},neon:{name:"Neon",description:"Ne\xF3n vibrante"},ocean:{name:"Ocean Waves",description:"Olas tranquilas"}}},toast:{configSaved:"Configuraci\xF3n guardada exitosamente",configError:"Error al guardar la configuraci\xF3n"}},fields:{initialMessage:{label:"Mensaje inicial",placeholder:"\xA1Hola! \xBFC\xF3mo puedo ayudarte?",helper:"Un mensaje de bienvenida amigable para tus usuarios (m\xE1x. 300 caracteres)"},helpLinks:{label:"Enlaces de ayuda",addButton:"Agregar enlace",empty:"No hay enlaces de ayuda configurados. Agrega enlaces para que los usuarios accedan a recursos adicionales.",linkNumber:"Enlace {{number}}",labelField:"Texto del enlace",labelPlaceholder:"Ej. Documentaci\xF3n",urlField:"URL",urlPlaceholder:"https://ejemplo.com",helper:"Agrega hasta 4 enlaces \xFAtiles que aparecer\xE1n en la pantalla de bienvenida"},messageTemplates:{addPlaceholder:"Agrega una sugerencia...",helper:"M\xE1ximo 3 sugerencias. Presiona Enter para agregar.",defaultTemplates:{template1:"\xBFQu\xE9 es horneross.com?",template2:"Precios de planes"}},displayName:{label:"T\xEDtulo del chat",placeholder:"Ej. Soporte horneross"},bannerTitle:{label:"T\xEDtulo del Banner",placeholder:"\xA1Bienvenido a nuestro asistente!"},bannerSubtitle:{label:"Subt\xEDtulo",placeholder:"Estoy aqu\xED para ayudarte 24/7"},organizationName:{label:"Nombre de la Organizaci\xF3n",placeholder:"Nombre de tu empresa (aparece al lado del logo)",helper:"Este nombre aparecer\xE1 al lado del logo en el banner. D\xE9jalo vac\xEDo para no mostrar ning\xFAn nombre."},handle:{label:"Bot Handle",placeholder:"mi_bot_increible",errorRequired:"El handle es requerido",errorTaken:"El handle ya est\xE1 en uso",errorValidating:"Error al validar el handle",copied:"\xA1Copiado!",viewPage:"Ver p\xE1gina"},primaryColor:{label:"Color principal"},customCSS:{label:"CSS Personalizado",placeholder:`/* Tu CSS personalizado */
|
|
86
86
|
.chat-container {
|
|
87
87
|
/* estilos */
|
|
88
88
|
}`},brandingDisabled:{label:"Ocultar marca horneross (Pro)"},initPopupDisabled:{label:"Desactivar mensaje emergente inicial"},transparentBackground:{label:"Background transparente"}},shared:{publicWarning:{title:"Visibilidad del agente",description:"Este widget solo funcionar\xE1 si tu agente es p\xFAblico. Por favor aseg\xFArate de que la visibilidad de tu agente est\xE9 configurada como p\xFAblica."},loading:"Cargando configuraci\xF3n del widget...",saveButton:{save:"Guardar Cambios",saving:"Guardando...",unsavedChanges:"Tienes cambios sin guardar"}}},datasourceForms:{file:{excelFormatAlert:"Para archivos Excel, aseg\xFArate de seguir el formato correcto.",excelFormatLink:"Ver ejemplo aqu\xED",removeFile:"Eliminar archivo",dragDropTitle:"Suelta el archivo aqu\xED",dragDropTitleIdle:"Arrastra y suelta tu archivo aqu\xED",dragDropSubtitle:"o haz clic para seleccionar",supportedFormatsLabel1:"PDF, PowerPoint, Excel",supportedFormatsLabel2:"Word, Text, Markdown",descriptionLabel:"Descripci\xF3n del contenido",descriptionPlaceholder:"Describe el contenido del archivo: qu\xE9 informaci\xF3n contiene, c\xF3mo est\xE1 estructurada, qu\xE9 columnas tiene si es una tabla, etc.",descriptionHelp:"Una buena descripci\xF3n ayuda al agente a entender mejor tu informaci\xF3n",usageLimitTitle:"L\xEDmite de tama\xF1o excedido",usageLimitDescription:"Por favor actualiza tu plan para subir archivos m\xE1s grandes."},webPage:{pageTitle:"P\xE1gina Web",pageDescription:"Extrae contenido de una URL espec\xEDfica",infoAlert:"Procesa el contenido de una p\xE1gina web individual. Ideal para art\xEDculos, blogs, documentaci\xF3n espec\xEDfica o landing pages.",urlLabel:"URL de la p\xE1gina",urlPlaceholder:"https://ejemplo.com/articulo",urlHelp:"Ingresa la URL completa de la p\xE1gina que deseas procesar"},webSite:{method1Title:"URL del Sitio",limitInfo:"L\xEDmite: {limit} p\xE1ginas \u2022 45 seg m\xE1x",siteUrlLabel:"URL principal del sitio",siteUrlPlaceholder:"https://ejemplo.com",additionalConfigTitle:"Configuraci\xF3n Adicional (Opcional)",additionalConfigDescription:"Sitemap, descripci\xF3n del sitio y p\xE1ginas a excluir",method2Title:"Usar Sitemap",sitemapLabel:"URL del sitemap",sitemapLabelOptional:"(opcional)",sitemapPlaceholder:"https://ejemplo.com/sitemap.xml",sitemapHelp:"M\xE1s r\xE1pido y preciso si el sitio tiene un sitemap p\xFAblico",descriptionLabel:"Descripci\xF3n del contenido",descriptionPlaceholder:"Describe el contenido o contexto de este sitio...",descriptionHelp:"Ayuda al agente a comprender cu\xE1ndo usar esta informaci\xF3n",excludedUrlsTitle:"URLs Excluidas",excludedUrlsDescription:"Excluye p\xE1ginas espec\xEDficas del escaneo",excludedUrlPlaceholder:"https://ejemplo.com/admin/*",addExcludedUrl:"Agregar URL Excluida",excludedUrlsAlert:"Soporta patrones glob. Ejemplo:",removeUrl:"Eliminar URL"},youtube:{singleVideo:"Video \xFAnico",playlist:"Lista",channel:"Canal",urlLabel:"URL de YouTube",urlPlaceholder:"https://www.youtube.com/watch?v=...",urlHelp:"Video, lista de reproducci\xF3n o canal"},notion:{selectAccount:"Seleccionar Cuenta",selectAccountPlaceholder:"Selecciona una cuenta",addAccount:"Notion: Agregar Cuenta",notebooksLabel:"Cuadernos",notebooksPlaceholder:"Seleccionar cuadernos...",cannotSeeNotebooks:"\xBFNo ves tus cuadernos? Actualmente hay un problema con la API de Notion que requiere que vincules manualmente una p\xE1gina a nuestra integraci\xF3n. Para obtener orientaci\xF3n sobre c\xF3mo hacer esto, mira el video a continuaci\xF3n.",usedNotebook:"Cuaderno usado",loadingPages:"cargando p\xE1ginas.."},text:{contentLabel:"Contenido de texto",contentPlaceholder:"Escribe o pega aqu\xED el contenido que quieres agregar a la base de datos...",contentHelp:"Este texto ser\xE1 indexado y estar\xE1 disponible para el agente cuando responda preguntas"},namePlaceholder:"Ej: Documentaci\xF3n de API, Gu\xEDa de Usuario...",nameLabel:"Nombre",nameHelper:"Un nombre descriptivo para identificar este contenido",sourceUrlPlaceholder:"https://ejemplo.com/fuente-original",sourceUrlLabel:"URL de origen (opcional)",extractedText:"Texto Extra\xEDdo",submit:"Guardar",saving:"Guardando...",additionalConfig:"Configuraci\xF3n adicional",tags:"Etiquetas",tagsHelper:"Agrega etiquetas para organizar tu contenido"},integrations:{instagram:{title:"Instagram Messenger",description:"Gestiona tus cuentas de Instagram conectadas",noAccounts:"No hay cuentas conectadas a\xFAn.",connected:"Conectado",delete:"Eliminar",connectNewAccount:"Conectar Nueva Cuenta",backToList:"Volver a la lista",setupTitle:"Configurar Instagram Messenger",setupDescription:"Conecta tu cuenta de Meta",stepConnect:"Conectar",stepReady:"Listo",connectMeta:"Conecta con Meta",connectMetaDescription:"Conecta tu cuenta de Facebook para gestionar Instagram Messenger.",oauthTitle:"OAuth con Meta",oauthDescription:"Te redirigiremos a Facebook para autorizar la conexi\xF3n con Instagram Messenger. Aseg\xFArate de tener permisos de administrador en la p\xE1gina.",viewDocs:"Ver documentaci\xF3n",successTitle:"\xA1Listo!",successDescription:"Tu cuenta de Instagram Messenger ha sido conectada exitosamente.",cancel:"Cancelar",back:"Atr\xE1s",connecting:"Conectando...",finish:"Finalizar",connectWithMeta:"Conectar con Meta",errorConnect:"Error al conectar con Meta"},telegram:{title:"Telegram",description:"Gestiona tus bots de Telegram conectados",noBots:"No hay bots conectados a\xFAn.",connected:"Conectado",openInTelegram:"Abrir en Telegram",delete:"Eliminar",connectNewBot:"Conectar Nuevo Bot",backToList:"Volver a la lista",setupTitle:"Configurar Bot de Telegram",setupDescription:"Conecta tu bot paso a paso",stepToken:"Token",stepVerify:"Verificar",stepReady:"Listo",getTokenTitle:"Obt\xE9n el token",getTokenDescription:"Crea un bot con @BotFather en Telegram.",createBotTitle:"Crea tu bot en Telegram",createBotDescription:"Habla con @BotFather, usa el comando /newbot y sigue las instrucciones. Te dar\xE1 un token de acceso.",free:"Gratis",openBotFather:"Abrir BotFather",botToken:"Token del Bot",verifyingBot:"Verificando bot",verifyingBotDescription:"Estamos verificando la conexi\xF3n con tu bot de Telegram.",verified:"Verificado",successTitle:"\xA1Listo!",successDescription:"Tu bot de Telegram ha sido conectado exitosamente.",cancel:"Cancelar",back:"Atr\xE1s",finish:"Finalizar",connectBot:"Conectar Bot",next:"Siguiente"},slack:{title:"Slack Bot",settings:"Configuraci\xF3n",activeConnections:"Conexiones activas",notConnected:"No conectado a ning\xFAn espacio de trabajo de Slack",connectToSlack:"Conectar a Slack"},chatwoot:{title:"Conexiones Chatwoot",description:"Gestiona tus instancias de Chatwoot y agent bots conectados.",searchPlaceholder:"Buscar agentes...",connectNewAccount:"Conectar Nueva Cuenta",testingPlatformToken:"\u{1F50D} Probando token de Platform App...",platformConfigured:"\u2705 Platform App configurado correctamente",configureUserToken:"\u{1F4A1} Ahora configura el token de usuario",errorTestingPlatformToken:"Error al probar el token de Platform App"}}},authCarousel:{sponsors:{title:"Potenciado por las Mejores Tecnolog\xEDas de IA",subtitle:"Integrando los mejores modelos de IA del mercado"},clients:{title:"Confiado por miles de empresas",scale:{title:"Escala tu atenci\xF3n al cliente sin esfuerzo",testimonial:"Redujimos nuestro tiempo de respuesta en un 80% manteniendo una excelente calidad. Nuestros clientes est\xE1n m\xE1s felices y nuestro equipo puede enfocarse en casos complejos.",author:"Mar\xEDa Gonz\xE1lez",company:"Jefa de Soporte, TechCorp"},support:{testimonial:"Horneross transform\xF3 c\xF3mo interactuamos con nuestros clientes. Ahora podemos atender a miles de personas simult\xE1neamente sin perder ese toque personal.",author:"Carlos Rodr\xEDguez",company:"CEO, StartupXYZ"}}},auth:{signin:{title:"Iniciar Sesi\xF3n",loading:"Iniciando sesi\xF3n...",error:"Ha ocurrido un error. Por favor, intente nuevamente m\xE1s tarde.",termsPrefix:"Al continuar, aceptas nuestros",termsLink:"T\xE9rminos y Condiciones",and:"y",privacyLink:"Pol\xEDtica de Privacidad"},signup:{title:"Registrarse",loading:"Creando tu cuenta...",error:"Ha ocurrido un error. Por favor, intente nuevamente m\xE1s tarde.",termsPrefix:"Al registrarte, aceptas nuestros",termsLink:"T\xE9rminos y Condiciones",and:"y",privacyLink:"Pol\xEDtica de Privacidad"}},tools:{datastore_query:{title:"B\xFAsqueda en Base de Conocimiento",loading:"Buscando en base de conocimiento...",complete:"B\xFAsqueda completada",error:"Error al buscar en base de conocimiento",query:"Consulta",result:"resultado",results:"resultados",noResults:"No se encontraron resultados"},search_documentation:{title:"Buscar Documentaci\xF3n",loading:"Buscando documentaci\xF3n...",complete:"B\xFAsqueda completada",error:"Error al buscar documentaci\xF3n"},web_search:{title:"B\xFAsqueda Web",loading:"Buscando en la web...",complete:"B\xFAsqueda completada",error:"Error en la b\xFAsqueda"},scrape_webpage:{title:"Extraer P\xE1gina Web",loading:"Extrayendo p\xE1gina web...",complete:"Extracci\xF3n completada",error:"Error al extraer"},http_request:{title:"Solicitud HTTP",loading:"Realizando solicitud...",complete:"Solicitud completada",error:"Error en la solicitud"},lead_capture:{title:"Captura de Lead",loading:"Capturando lead...",complete:"Lead capturado",error:"Error al capturar lead"},submit_form:{title:"Enviar Formulario",loading:"Enviando formulario...",complete:"Formulario enviado",error:"Error al enviar formulario"},mark_as_resolved:{title:"Marcar como Resuelto",loading:"Marcando como resuelto...",complete:"Marcado como resuelto",error:"Error al marcar como resuelto"},request_human:{title:"Solicitar Humano",loading:"Solicitando humano...",complete:"Humano solicitado",error:"Error al solicitar humano"},send_files:{title:"Enviar Archivos",loading:"Enviando archivos...",complete:"Archivos enviados",error:"Error al enviar archivos"},thinking:{title:"Pensando",loading:"Pensando...",complete:"Pensamiento completado",error:"Error al pensar"},advanced_reasoning:{title:"Razonamiento Avanzado",loading:"Razonando...",complete:"Razonamiento completado",error:"Error en el razonamiento"},code_interpreter:{title:"Int\xE9rprete de C\xF3digo",loading:"Ejecutando c\xF3digo...",complete:"C\xF3digo ejecutado",error:"Error al ejecutar c\xF3digo"},avatar_generation:{title:"Generaci\xF3n de Avatar",loading:"Generando avatar...",complete:"Avatar generado",error:"Error al generar avatar"},image_generation:{title:"Generaci\xF3n de Imagen",loading:"Generando imagen...",complete:"Imagen generada",error:"Error al generar imagen"},deep_search:{title:"B\xFAsqueda Profunda",loading:"B\xFAsqueda profunda...",complete:"B\xFAsqueda completada",error:"Error en la b\xFAsqueda"},create_agent:{title:"Crear Agente",loading:"Creando agente...",complete:"Agente creado",error:"Error al crear agente"},update_agent:{title:"Actualizar Agente",loading:"Actualizando agente...",complete:"Agente actualizado",error:"Error al actualizar agente"},execute_action:{title:"Ejecutar Acci\xF3n",loading:"Ejecutando acci\xF3n...",complete:"Acci\xF3n ejecutada",error:"Error al ejecutar acci\xF3n"}},common:{actions:{save:"Guardar",cancel:"Cancelar",delete:"Eliminar",edit:"Editar",create:"Crear",loading:"Cargando...",search:"Buscar",filter:"Filtrar",export:"Exportar",import:"Importar",refresh:"Actualizar",yes:"S\xED",no:"No",confirm:"Confirmar",close:"Cerrar"},errors:{generic:"Algo sali\xF3 mal. Por favor, int\xE9ntalo de nuevo.",network:"Error de red. Verifica tu conexi\xF3n.",unauthorized:"No tienes autorizaci\xF3n para realizar esta acci\xF3n.",notFound:"Recurso no encontrado.",validation:"Por favor, verifica tu entrada e int\xE9ntalo de nuevo.",systemProblems:"Estamos experimentando algunos problemas. Por favor, int\xE9ntalo m\xE1s tarde. \xA1Disculpa las molestias!",loadingDashboard:"Error al cargar el panel",loadingDataMessage:"No pudimos cargar los datos de tu organizaci\xF3n. Por favor, intenta de nuevo.",retry:"Reintentar"},success:{saved:"Guardado exitosamente",deleted:"Eliminado exitosamente",created:"Creado exitosamente",updated:"Actualizado exitosamente"},status:{loading:"Cargando...",saving:"Guardando...",success:"\xA1\xC9xito!",error:"Error"}},emails:{datasourceSynced:{eyebrow:"Base de conocimiento sincronizada",greeting:"Hola {userName},",greetingNoName:"Hola,",message:"Tu base de conocimiento ha sido procesada correctamente y est\xE1 lista para ser utilizada por tus agentes.",stats:{chunks:"Fragmentos",tokens:"Tokens",size:"Tama\xF1o"},contentPreview:"Vista previa del contenido",ctaButton:"Ver en el Dashboard",footer:"Este email se env\xEDa autom\xE1ticamente cuando una base de conocimiento se sincroniza correctamente."},websiteSyncComplete:{eyebrow:"Sitio web sincronizado",greeting:"Hola {userName},",greetingNoName:"Hola,",message:"La sincronizaci\xF3n de tu sitio web ha finalizado.",summary:"Resumen de sincronizaci\xF3n",pagesFound:"P\xE1ginas encontradas",synced:"Sincronizadas",withErrors:"Con errores",completed:"completado",indexedContent:"Contenido indexado",chunks:"Fragmentos",tokens:"Tokens",warningMessage:"Algunas p\xE1ginas no pudieron ser procesadas. Puedes revisar los detalles en el dashboard.",ctaButton:"Ver en el Dashboard",footer:"Este email se env\xEDa autom\xE1ticamente cuando la sincronizaci\xF3n de un sitio web finaliza."},subject:{datasourceSynced:'Base de conocimiento "{name}" sincronizada',websiteSynced:'Sitio web "{name}" sincronizado - {synced}/{total} p\xE1ginas'}}};var GV={pages:{deploy:{title:"Canais de Integra\xE7\xE3o",subtitle:"Conecte seu agente com as plataformas que voc\xEA usa",searchPlaceholder:"Buscar canal de integra\xE7\xE3o...",noAgentId:"ID do agente n\xE3o encontrado",enablePublicAgent:"Habilitar agente p\xFAblico",configure:"Configurar",upgradePlan:"Atualizar plano",publicAgentRequired:"Esta integra\xE7\xE3o requer um agente p\xFAblico. Deseja tornar seu agente p\xFAblico?",integrations:{webBubble:"Bolha de Chat Web",webStandard:"Chat Web Padr\xE3o",webStandalone:"P\xE1gina Web Independente",crmhorneross:"CRM horneross",chatwoot:"Chatwoot",whatsapp:"WhatsApp",zapier:"Zapier",telegram:"Telegram",slack:"Slack",wordpress:"WordPress",mercadolibre:"Mercado Livre",tiendanube:"Tienda Nube",shopify:"Shopify"},modals:{chatBubble:"Configura\xE7\xE3o de Bolha de Chat",standardChatbox:"Configura\xE7\xE3o de Chatbox Padr\xE3o",standalonePage:"Configura\xE7\xE3o de P\xE1gina Independente",configurations:"Configura\xE7\xF5es"},usageLimit:{title:"Recurso Premium",description:"Esta integra\xE7\xE3o requer um plano premium. Atualize seu plano para desbloquear este recurso."}},dashboard:{title:"Dashboard",subtitle:"Mostrando dados de {from} a {to}",loading:"Carregando an\xE1lise do dashboard...",accessDenied:{title:"Acesso Negado",message:"Apenas administradores e propriet\xE1rios da organiza\xE7\xE3o podem acessar este dashboard."},error:{title:"Erro ao Carregar Dashboard",message:"Falha ao carregar as estat\xEDsticas do dashboard"},actions:{viewLogs:"Ver Logs",selectRange:"Selecionar intervalo"},dateFilter:{quickPresets:"Presets r\xE1pidos",days7:"7 dias",days30:"30 dias",days90:"90 dias",selectHelp:"Selecione a data de in\xEDcio e fim do intervalo",daysSelected:"{count} dias selecionados",reset:"Reiniciar",cancel:"Cancelar",apply:"Aplicar"},metrics:{activeAgents:"Agentes ativos",datastores:"Datastores",newContacts:"Novos contatos",conversations:"Conversas",thisMonth:"este m\xEAs"},chart:{messageStats:"Estat\xEDsticas de Mensagens",groupedByMonth:"Dados agrupados por m\xEAs",groupedByWeek:"Dados agrupados por semana",daily:"Dados di\xE1rios",inRange:{days:"{count} dias no intervalo",weeks:"{count} semanas no intervalo",months:"{count} meses no intervalo"},tooltip:{day:"Dia",week:"Semana",month:"M\xEAs",messages:"mensagens"}},agentPerformance:{title:"Desempenho de Agentes",conversations:"conversas",noData:"Nenhum dado de agente dispon\xEDvel"}},agents:{title:"Agentes",description:"Agentes de IA s\xE3o inst\xE2ncias personaliz\xE1veis de modelos de linguagem grandes adaptadas para atender aos seus casos de uso espec\xEDficos. Ao conect\xE1-los a um armazenamento de dados, voc\xEA pode trein\xE1-los em sua base de conhecimento \xFAnica.",newAgent:"Novo Agente",preparingAgents:"Preparando seus agentes...",tutorial:"Ver tutorial - Cria\xE7\xE3o de agentes",requestFeature:"Solicitar melhoria",requestFeatureDescription:"Quer uma nova melhoria?",requestAgent:"Solicitar agente",requestAgentDescription:"Quer um novo agente?",new:"Novo",create:"Criar"},datastores:{title:"Fontes",description:"Organize suas bases de conhecimento com arquivos, p\xE1ginas web e outras fontes de dados.",fileMovedSuccess:"Arquivo movido com sucesso",fileMovedError:"Erro ao mover o arquivo. Tente novamente.",folderDeletedSuccess:"Pasta exclu\xEDda com sucesso",folderDeletedError:"Erro ao excluir a pasta",fileDeletedSuccess:"Arquivo exclu\xEDdo com sucesso",fileDeletedError:"Erro ao excluir o arquivo",errorUpdatingName:"Erro ao atualizar o nome do datastore. Por favor, tente novamente.",tokens:"tokens",chunks:"chunks",files:"Arquivos",configuration:"Configura\xE7\xE3o",dataFile:"Arquivo de dados",fileConfiguration:"Configura\xE7\xE3o do Arquivo",fileConfigurationDescription:"Atualize os detalhes e configura\xE7\xE3o deste arquivo de dados",updateConfiguration:"Atualizar Configura\xE7\xE3o",dangerZone:"Zona de Perigo",dangerZoneDescription:"Excluir este arquivo permanentemente",deleteFileTitle:"Excluir arquivo?",deleteFileWarning:"Esta a\xE7\xE3o",deleteFileWarningBold:"n\xE3o pode ser desfeita",deleting:"Excluindo...",emptyStateTitle:"Ainda n\xE3o h\xE1 pastas ou arquivos",emptyStateDescription:"Crie sua primeira pasta ou envie um arquivo para come\xE7ar",newFolder:"Nova Pasta",newFile:"Novo Arquivo",folders:"Pastas",settings:{pluginIconUpdated:"\xCDcone do plugin atualizado com sucesso",pluginUpdated:"Plugin atualizado com sucesso",pluginIcon:"\xCDcone do Plugin",replace:"Substituir",delete:"Excluir",nameForHumans:"Nome para Humanos",nameForHumansPlaceholder:"Meu Plugin Personalizado",descriptionForHumans:"Descri\xE7\xE3o para Humanos",descriptionForHumansPlaceholder:"Uma breve descri\xE7\xE3o do seu plugin",descriptionForModel:"Descri\xE7\xE3o para o Modelo",descriptionForModelPlaceholder:"Plugin para consultar dados de {name}. Use-o para responder perguntas sobre a base de conhecimento.",pluginDescriptionBestPractices:"Ver Melhores Pr\xE1ticas de Descri\xE7\xE3o de Plugin",update:"Atualizar",pluginRoot:"URL Raiz do Plugin",copied:"Copiado para a \xE1rea de transfer\xEAncia",settingsUpdated:"Configura\xE7\xE3o atualizada com sucesso",errorUpdating:"Erro ao atualizar a configura\xE7\xE3o",deleteSuccess:"Pasta exclu\xEDda com sucesso",deleteError:"Erro ao excluir a pasta"}},conversations:{title:"Conversas",description:"Ver todas as conversas",noConversations:"Nenhuma conversa encontrada"},contacts:{title:"Contatos",subtitle:"Gerencie todos os seus leads e clientes",tabs:{all:"Todos",recent:"Recentes"},exportCSV:"Exportar CSV",totalContacts:"Total de Contatos",lastSixMonthsTrend:"Tend\xEAncia dos \xFAltimos 6 meses",newThisWeek:"Novos Esta Semana",newContacts:"novos contatos",dailyBreakdown:"Detalhamento di\xE1rio:",withEmail:"Com Email",contactsWithEmail:"Contatos com dados de email",searchPlaceholder:"Pesquisar contatos...",reload:"Recarregar",resultsFound:"{count} resultado encontrado",resultsFoundPlural:"{count} resultados encontrados",unknown:"Desconhecido",copyContactInfo:"Copiar informa\xE7\xF5es do contato",showingContacts:"Mostrando <strong>{from}</strong> a <strong>{to}</strong> de <strong>{total}</strong> contatos",previous:"Anterior",next:"Pr\xF3ximo",noResultsFound:"Nenhum resultado encontrado",noContactsYet:"Ainda n\xE3o h\xE1 contatos",adjustSearchTerms:"Tente ajustar seus termos de pesquisa ou limpar os filtros para ver todos os contatos.",emptyContactList:"Sua lista de contatos est\xE1 vazia. Os contatos aparecer\xE3o automaticamente aqui quando seus agentes interagirem com os clientes.",clearSearch:"Limpar pesquisa",refresh:"Atualizar"},logs:{title:"Registros de Atividade",description:"Monitore e analise toda a atividade em sua organiza\xE7\xE3o",actions:{generateReport:"Gerar Relat\xF3rio",reload:"Recarregar"},search:{placeholder:"Buscar registros..."},dateFilter:{quickPresets:"Presets r\xE1pidos",days7:"7 dias",days30:"30 dias",days90:"90 dias",selectHelp:"Selecione in\xEDcio e fim",daysSelected:"{count} dias selecionados",reset:"Reiniciar",cancel:"Cancelar",apply:"Aplicar"},metrics:{totalRequests:"Total de Requisi\xE7\xF5es",totalCost:"Custo Total",avgResponseTime:"Tempo M\xE9dio",tokensUsed:"Tokens Usados",last30Days:"\xFAltimos 30 dias",thisMonth:"este m\xEAs",perResponse:"por resposta",totalConsumed:"total consumidos"}},hornerossBuilder:{title:"O que voc\xEA gostaria de fazer hoje?",subtitle:"Crie seu <highlight>Funcion\xE1rio IA</highlight> apenas <highlight>conversando com IA</highlight>.",subtitleParts:{prefix:"Crie seu",aiEmployee:"Funcion\xE1rio IA",middle:"apenas",chattingWithAI:"conversando com IA"},placeholder:"Quero um agente que monitore minha caixa de suporte e ajude a responder.",seo:{title:"Horneross - Construtor de Agentes IA | Crie Assistentes IA Personalizados",description:"Construa agentes de IA poderosos sem programar. Crie assistentes de IA personalizados para vendas, suporte, onboarding e automa\xE7\xE3o. Conecte-se aos seus dados e ferramentas sem problemas.",keywords:"construtor de agentes IA, IA sem c\xF3digo, assistentes IA personalizados, automa\xE7\xE3o IA, construtor de chatbots, agente de vendas IA, agente de suporte IA, IA conversacional"},usageLimitModal:{conversationsExceeded:{title:"Limite de conversas excedido",description:"Voc\xEA atingiu o limite m\xE1ximo de conversas ativas para seu plano. Por favor, resolva ou exclua conversas existentes, ou atualize seu plano para continuar."},agentsExceeded:{title:"Limite de agentes excedido",description:"Voc\xEA atingiu o limite m\xE1ximo de agentes para seu plano. Por favor, atualize seu plano para criar mais agentes."}},autoStartPrompt:"Ol\xE1! Preciso criar um agente de IA. Voc\xEA pode me mostrar exemplos de agentes populares e me ajudar a escolher o que melhor se adapta ao meu neg\xF3cio?"},agentsList:{tabs:{all:"Todos",marketplace:"Marketplace"},sort:{recent:"Mais recentes",name:"Nome",conversations:"Conversas"},buttons:{creating:"Criando...",createNew:"Criar agente",new:"Novo",install:"Instalar",evaluate:"Avaliar",deleteAgent:"Excluir agente"},sections:{recentAgents:"Agentes recentes",featuredAgents:"Agentes em destaque"},table:{name:"Nome",lastRun:"\xDAltima execu\xE7\xE3o",integrations:"Integra\xE7\xF5es",widget:"Instalar",evaluate:"Avaliar",enabled:"Ativado"},emptyState:{title:"Comece a Conversar!",description:"Inicie uma conversa e deixe nosso assistente ajud\xE1-lo a criar e configurar seu primeiro agente de forma guiada",startingConversation:"Iniciando conversa...",startChatting:"Come\xE7ar a Conversar",helperText:"O assistente ir\xE1 gui\xE1-lo passo a passo na cria\xE7\xE3o do seu agente"},marketplace:{searchPlaceholder:"Buscar agentes por nome ou descri\xE7\xE3o...",featuredAgents:"Agentes em destaque",noResults:"N\xE3o encontramos prompts",noResultsDescription:"Tente ajustar sua busca para encontrar o que procura."},deleteModal:{title:"Excluir agente",confirmText:"Tem certeza de que deseja excluir o agente",warningTitle:"Esta a\xE7\xE3o n\xE3o pode ser desfeita:",warningItems:{versions:"Todas as vers\xF5es do agente ser\xE3o exclu\xEDdas",conversations:"Todas as conversas do agente ser\xE3o exclu\xEDdas",config:"Toda a configura\xE7\xE3o e personaliza\xE7\xE3o ser\xE1 perdida",files:"Os arquivos associados ser\xE3o exclu\xEDdos permanentemente"},cancel:"Cancelar",deleting:"Excluindo...",delete:"Excluir agente"}}},components:{organizationForm:{organization:"Organiza\xE7\xE3o",organizationName:"Nome da Organiza\xE7\xE3o",organizationNamePlaceholder:"Nome da organiza\xE7\xE3o",upload:"Enviar",remove:"Remover",inviteTeamMember:"Convidar Membro da Equipe",enterEmail:"Digite o endere\xE7o de e-mail",sendInvite:"Enviar Convite",invite:"Convidar",teamMembers:"Membros da Equipe",seats:"assentos",active:"Ativo",pending:"Pendente",roleUser:"Usu\xE1rio",roleAdmin:"Administrador",roleOwner:"Propriet\xE1rio",maxSeatsReached:"Voc\xEA atingiu o n\xFAmero m\xE1ximo de assentos para seu plano.",invitationSent:"Convite enviado com sucesso",userAlreadyInvited:"Usu\xE1rio j\xE1 convidado",invitationFailed:"Falha ao enviar convite",confirmRemoveMember:"Este usu\xE1rio ser\xE1 removido da organiza\xE7\xE3o, tem certeza?",memberRemoved:"Membro removido com sucesso",memberRemoveFailed:"Falha ao remover membro",iconUpdated:"\xCDcone atualizado com sucesso",iconUploadFailed:"Falha ao enviar \xEDcone",iconDeleted:"\xCDcone exclu\xEDdo com sucesso",iconDeleteFailed:"Falha ao excluir \xEDcone"},integrationsManagement:{pageTitle:"Integra\xE7\xF5es",pageDescription:"Conecte suas ferramentas de comunica\xE7\xE3o",statusConnected:"Conectado",statusAvailable:"Dispon\xEDvel",statusComingSoon:"Em Breve",comingSoonMessage:"Esta integra\xE7\xE3o estar\xE1 dispon\xEDvel em breve",configureMessage:"Configure esta integra\xE7\xE3o para come\xE7ar",open:"Abrir",manage:"Gerenciar",configure:"Configurar",connectedAccount:"Conta conectada",botsConnected:"{count} bot conectado",botsConnectedPlural:"{count} bots conectados",integrations:{chatwoot:"Chatwoot",chatwootDescription:"Plataforma de atendimento ao cliente",whatsapp:"WhatsApp Business",whatsappDescription:"Conversas com clientes",telegram:"Telegram",telegramDescription:"Bots para comunica\xE7\xE3o",instagram:"Instagram",instagramDescription:"Facebook & Instagram Messenger",slack:"Slack",slackDescription:"Notifica\xE7\xF5es da equipe",zapier:"Zapier",zapierDescription:"Milhares de aplicativos"}},marketplaceAgentCard:{copy:"Copiar",copied:"Copiado!"},contactsTable:{searchLabel:"Pesquisar contatos (email)",resultsCount:"{count} resultado",resultsCountPlural:"{count} resultados",searchPlaceholder:"Pesquisar contatos por email, nome, telefone...",tableHeaders:{email:"Email",phoneNumber:"N\xFAmero de Telefone",name:"Nome",createdAt:"Criado em"},pagination:{previous:"Anterior",next:"Pr\xF3ximo",pageOf:"P\xE1gina {current} de {total}"}},createAgentModal:{title:"Criar Novo Agente",subtitle:"Descreva o agente que voc\xEA deseja criar",placeholder:"Descreva seu agente... ex: Crie um agente de atendimento ao cliente que...",quickStartTemplates:"Modelos de In\xEDcio R\xE1pido",explore:"Explorar",templates:{customerSupport:{label:"Atendimento ao Cliente",prompt:"Crie um agente de atendimento ao cliente que ajude com reembolsos, quest\xF5es de envio e consultas sobre produtos. Seja amig\xE1vel, emp\xE1tico e orientado para solu\xE7\xF5es."},salesAssistant:{label:"Assistente de Vendas",prompt:"Crie um agente de vendas que qualifique leads, agende reuni\xF5es e entenda os pontos de dor do cliente. Seja profissional e consultivo."},technicalSupport:{label:"Suporte T\xE9cnico",prompt:"Crie um agente de suporte t\xE9cnico que resolva problemas de software, forne\xE7a solu\xE7\xF5es passo a passo e escale problemas complexos quando necess\xE1rio."},knowledgeAssistant:{label:"Assistente de Conhecimento",prompt:"Crie um assistente de IA que responda perguntas com base em documenta\xE7\xE3o, forne\xE7a explica\xE7\xF5es detalhadas e ajude os usu\xE1rios a encontrar informa\xE7\xF5es rapidamente."}}},navigation:{dashboard:"Painel de Controle",agents:"Agentes",datastores:"Fontes",conversations:"Conversas",analytics:"Anal\xEDticas",settings:"Configura\xE7\xF5es",contacts:"Contatos",logs:"Registros",tools:"Ferramentas",integrations:"Integra\xE7\xF5es",inbox:"Caixa de entrada",database:"Base de dados",forms:"Formul\xE1rios",emailInboxes:"Caixas de E-mail",appsTools:"Apps/Ferramentas",home:"In\xEDcio",chats:"Conversas",newChat:"Nova Conversa",projects:"Fontes",explore:"Explorar",organizations:"Minhas Organiza\xE7\xF5es",createOrganization:"Criar Organiza\xE7\xE3o",memory:"Mem\xF3ria",library:"Biblioteca"},chatbox:{placeholder:"Digite uma mensagem...",actions:{send:"Enviar",resolve:"Marcar como Resolvido",requestHuman:"Solicitar Humano"}},sidebar:{changeLanguage:"Mudar idioma",contactSupport:"Central de ajuda",openSidebar:"Abrir Barra Lateral",closeSidebar:"Fechar Barra Lateral",updatePlan:"Atualizar Plano",updatePlanDescription:"Obtenha mais benef\xEDcios atualizando seu plano",tutorial:"Assistir Tutorial",workspace:"Espa\xE7o de trabalho",management:"Gest\xE3o",groups:{agent:"Agente",conversations:"Gest\xE3o",recentChat:"Chat recente",memory:"Mem\xF3ria"},badges:{new:"NOVO",experimental:"EXP",comingSoon:"Em Breve"},recentChat:{noConversations:"Nenhuma conversa recente"},enterprise:{title:"Enterprise",description:"Escale com solu\xE7\xF5es personalizadas"},actions:{collapse:"Recolher",expand:"Expandir"}},searchChat:{title:"Buscar",placeholder:"Buscar conversas...",noResults:"Nenhuma conversa encontrada",empty:"Nenhuma conversa recente",recentChats:"Conversas recentes",hint:"Pressione Enter para abrir"},agentPress:{title:"Ferramentas",tooltipTitle:"Ferramentas do Agente",tooltipDescription:"Capacidades especiais que voc\xEA pode habilitar para personalizar o comportamento do agente",categories:{agent:{name:"Agente",description:"Comportamento central do agente e configura\xE7\xF5es de conversa"},research:{name:"Pesquisa",description:"Busca na web e extra\xE7\xE3o de conte\xFAdo"},builder:{name:"Construtor",description:"Criar e gerenciar outros agentes"},prompt:{name:"Prompt",description:"Engenharia e gerenciamento de prompts"},data:{name:"Dados",description:"Execu\xE7\xE3o de c\xF3digo e an\xE1lise de dados"},media:{name:"M\xEDdia",description:"Gera\xE7\xE3o de imagens e avatares"},presentation:{name:"Apresenta\xE7\xE3o",description:"Ferramentas visuais para exibi\xE7\xE3o de dados"},integration:{name:"Integra\xE7\xE3o",description:"Integra\xE7\xF5es com servi\xE7os externos"}}},agentIntegrations:{title:"Integra\xE7\xF5es",tooltipTitle:"Integra\xE7\xF5es do Agente",tooltipDescription:"Integra\xE7\xF5es personalizadas com servi\xE7os e APIs externos",addIntegration:"Adicionar Integra\xE7\xE3o",noAgentWarning:"Nenhuma integra\xE7\xE3o dispon\xEDvel",noAgentHint:"Crie o agente primeiro para adicionar integra\xE7\xF5es",searchPlaceholder:"Buscar integra\xE7\xF5es...",noResults:"Nenhuma integra\xE7\xE3o encontrada com",emptyState:{title:"Nenhuma integra\xE7\xE3o configurada",description:"Clique para adicionar integra\xE7\xF5es personalizadas como HTTP, formul\xE1rios, etc."},tools:{http:{label:"HTTP",description:"Fazer requisi\xE7\xF5es HTTP para APIs externas."},form:{label:"Formul\xE1rios",description:"Coletar informa\xE7\xF5es do usu\xE1rio via formul\xE1rios interativos."},leadCapture:{label:"Captura de leads",description:"Capturar informa\xE7\xF5es de contato de clientes potenciais."},default:"Ferramenta do agente"},actions:{remove:"Remover",removeError:"Erro ao remover ferramenta"}},layout:{title:"horneross - Plataforma de Agentes IA",description:"Construa e implante agentes IA personalizados para seu neg\xF3cio"},intercomModal:{title:"Ol\xE1! \u{1F44B}",subtitle:"Como podemos ajud\xE1-lo?",reportBug:"Reportar um erro",suggestImprovement:"Sugerir uma melhoria",contactSales:"Contatar Vendas",contactSupport:"Contatar Suporte",guide:"Guia",news:"Novidades",horneross:"horneross.com",feedback:"Avalie-nos",instagram:"Siga-nos no Instagram"},datastoreForms:{updating:"Atualizando...",updated:"Atualizado com sucesso",somethingWentWrong:"Algo deu errado",datastoreName:"Nome do Datastore",datastoreNameHelperText:"D\xEA ao seu datastore um nome descritivo",description:"Descri\xE7\xE3o",descriptionHelperText:"Breve descri\xE7\xE3o do que este datastore cont\xE9m",public:"Tornar este datastore p\xFAblico",publicHelperText:"Datastores p\xFAblicos podem ser acessados por qualquer pessoa com o link",submit:"Salvar"},whatsAppSettings:{title:"WhatsApp Business",description:"Gerencie seus n\xFAmeros de WhatsApp conectados",noNumbersConnected:"Nenhum n\xFAmero conectado ainda.",connected:"Conectado",test:"Testar",delete:"Excluir",connectNewAccount:"Conectar Nova Conta",backToList:"Voltar \xE0 lista",configureTitle:"Configurar WhatsApp Business",configureDescription:"Conecte sua conta passo a passo",steps:{connect:"Conectar",configure:"Configurar",done:"Pronto"},wizard:{step1:{title:"Obtenha o token",description:"Digite seu token do Meta para conectar o WhatsApp Business.",metaDeveloper:"Meta Developer",graphExplorer:"Explorador de gr\xE1ficos",generateToken:"Gere token com permiss\xF5es do WhatsApp Business",permissions:"Certifique-se de selecionar as permiss\xF5es: whatsapp_business_management, whatsapp_business_messaging",expiration:"Expira\xE7\xE3o: Nunca",viewGuide:"Ver guia",tokenLabel:"Token de acesso",tokenPlaceholder:"EAAG..."},step2:{title:"Selecione um n\xFAmero",description:"Encontramos os seguintes n\xFAmeros associados \xE0 sua conta.",available:"Dispon\xEDvel"},step3:{title:"Pronto!",description:"Seu n\xFAmero do WhatsApp Business foi conectado com sucesso."}},actions:{cancel:"Cancelar",back:"Voltar",finish:"Finalizar",connectWhatsApp:"Conectar WhatsApp",next:"Pr\xF3ximo"}},leadCaptureConfigModal:{titleCreate:"Nova Captura de Leads",titleEdit:"Editar Captura de Leads",editing:"Editando",configNameLabel:"Nome da configura\xE7\xE3o",configNameRequired:"obrigat\xF3rio",configNamePlaceholder:"Ex: Captura de contato geral",descriptionLabel:"Descri\xE7\xE3o",descriptionPlaceholder:"Descri\xE7\xE3o de quando usar esta configura\xE7\xE3o...",fieldsLabel:"Campos a capturar",fieldsRequired:"obrigat\xF3rio",fields:{name:"Nome",email:"Email",phone:"Telefone",company:"Empresa",message:"Mensagem"},optionsLabel:"Op\xE7\xF5es de captura",autoCapture:"Captura autom\xE1tica",autoCaptureDescription:"Captura informa\xE7\xF5es automaticamente durante a conversa",requireName:"Nome obrigat\xF3rio",requireNameDescription:"O nome \xE9 obrigat\xF3rio para completar a captura",requireEmail:"Email obrigat\xF3rio",requireEmailDescription:"O email \xE9 obrigat\xF3rio para completar a captura",requirePhone:"Telefone obrigat\xF3rio",requirePhoneDescription:"O telefone \xE9 obrigat\xF3rio para completar a captura",customMessageLabel:"Mensagem personalizada",customMessagePlaceholder:"Mensagem que o agente mostrar\xE1 ao solicitar as informa\xE7\xF5es...",customMessageHelper:"Opcional: Personalize a mensagem que o usu\xE1rio ver\xE1 ao capturar seus dados",errors:{nameRequired:"Por favor, insira um nome para a configura\xE7\xE3o",fieldsRequired:"Por favor, selecione pelo menos um campo",saveError:"Erro ao salvar a configura\xE7\xE3o de Captura de Leads"},success:{created:"Captura de Leads criada",updated:"Captura de Leads atualizada"},actions:{cancel:"Cancelar",saving:"Salvando...",createConfig:"Criar Configura\xE7\xE3o",saveChanges:"Salvar Altera\xE7\xF5es"}},formConfigModal:{titleCreate:"Novo Formul\xE1rio",titleEdit:"Editar Formul\xE1rio",editing:"Editando",nameLabel:"Nome",nameRequired:"obrigat\xF3rio",namePlaceholder:"Ex: Formul\xE1rio de contato",descriptionLabel:"Descri\xE7\xE3o",descriptionPlaceholder:"Descri\xE7\xE3o do formul\xE1rio (opcional)",buttonTextLabel:"Texto do bot\xE3o",buttonTextPlaceholder:"Enviar",fieldsLabel:"Campos do formul\xE1rio",fieldsRequired:"obrigat\xF3rio",addField:"Adicionar campo",fieldNumber:"Campo #{number}",fieldLabelLabel:"R\xF3tulo",fieldLabelPlaceholder:"Ex: Nome completo",fieldTypeLabel:"Tipo",fieldTypes:{text:"Texto",email:"Email",number:"N\xFAmero",tel:"Telefone",textarea:"Texto longo",select:"Sele\xE7\xE3o",checkbox:"Checkbox"},placeholderLabel:"Placeholder",placeholderPlaceholder:"Texto de ajuda (opcional)",requiredField:"Campo obrigat\xF3rio",noFieldsMessage:'Nenhum campo adicionado. Clique em "Adicionar campo" para come\xE7ar.',errors:{nameRequired:"Por favor, insira um nome para o formul\xE1rio",fieldsRequired:"Adicione pelo menos um campo ao formul\xE1rio",fieldLabelRequired:"Todos os campos devem ter um r\xF3tulo",saveError:"Erro ao salvar o formul\xE1rio"},success:{created:"Formul\xE1rio criado",updated:"Formul\xE1rio atualizado"},actions:{cancel:"Cancelar",saving:"Salvando...",createForm:"Criar Formul\xE1rio",saveChanges:"Salvar Altera\xE7\xF5es"}},usageLimitModal:{defaultTitle:"Limite de Uso Atingido",defaultDescription:"Atualize seu plano para desbloquear limites de uso mais altos e recursos premium.",cancel:"Cancelar",upgradePlan:"Atualizar Plano"},duplicateAgentModal:{title:"Duplicar Agente",description:'Criar uma c\xF3pia de "{name}" com toda a sua configura\xE7\xE3o e ferramentas.',newAgentName:"Nome do Novo Agente",placeholder:"Digite o nome para o agente duplicado",cancel:"Cancelar",duplicating:"Duplicando...",duplicate:"Duplicar Agente",errors:{nameRequired:"O nome do agente \xE9 obrigat\xF3rio",failed:"Falha ao duplicar o agente. Por favor, tente novamente."},success:"Agente duplicado com sucesso!"},createDatastoreModal:{title:"Criar Nova Fonte",subtitle:"Configure sua base de conhecimento em 4 passos simples",recommended:"Recomendado",steps:{name:"Nome",nameDescription:"Identifica\xE7\xE3o da fonte",type:"Tipo",typeDescription:"Tipo de armazenamento",source:"Fonte",sourceDescription:"Origem dos dados",configure:"Configurar",configureDescription:"Detalhes finais"},step1:{title:"Como voc\xEA quer nomear sua fonte?",description:"Escolha um nome descritivo para ajud\xE1-lo a identificar facilmente o conte\xFAdo",nameLabel:"Nome da Fonte",namePlaceholder:"Ex: Documenta\xE7\xE3o T\xE9cnica, Base de Conhecimento, FAQ...",nameHelper:"Este nome ser\xE1 vis\xEDvel em seu painel e relat\xF3rios",suggestionsTitle:"Sugest\xF5es de nomes",suggestions:{knowledgeBase:"Base de Conhecimento",documentation:"Documenta\xE7\xE3o",faqClients:"FAQ de Clientes",technicalManuals:"Manuais T\xE9cnicos"}},step2:{title:"Selecione o tipo de fonte",description:"Cada tipo oferece diferentes capacidades para suas necessidades"},step3:{title:"Escolha sua fonte de dados",titleCodeInterpreter:"Selecione o tipo de arquivo",description:"Configure a origem do conte\xFAdo para sua fonte",descriptionCodeInterpreter:"Voc\xEA poder\xE1 analisar arquivos com capacidades avan\xE7adas"},step4:{title:"Configure sua fonte de dados",titleUpload:"Envie seu arquivo",description:"\xDAltimos detalhes para completar a configura\xE7\xE3o"},datastoreTypes:{qdrant:{name:"Padr\xE3o",description:"Ideal para documentos, FAQs e conhecimento geral",features:{vectorSearch:"Busca precisa",multipleEmbeddings:"M\xFAltiplos formatos de arquivo",advancedConfig:"Configura\xE7\xE3o avan\xE7ada"}},pinecone:{name:"Nuvem",description:"Armazenamento em nuvem para grandes volumes",features:{fullyManaged:"Totalmente gerenciado",autoScaling:"Escalabilidade autom\xE1tica",simpleConfig:"Configura\xE7\xE3o simples"}},typesense:{name:"Busca R\xE1pida",description:"Otimizado para resultados instant\xE2neos",features:{instantSearch:"Busca instant\xE2nea",typoTolerance:"Toler\xE2ncia a erros",facetedSearch:"Busca filtrada"}},codeInterpreter:{name:"An\xE1lise de Dados",description:"Analise planilhas e dados complexos",features:{complexAnalysis:"An\xE1lises complexas",pythonExecution:"C\xE1lculos autom\xE1ticos",dataVisualization:"Gr\xE1ficos e visualiza\xE7\xF5es"}}},buttons:{previous:"Anterior",cancel:"Cancelar",continue:"Continuar",createDatastore:"Criar Fonte",creating:"Criando...",createFinish:"Criar e Finalizar",back:"Voltar"},errors:{creatingDatastore:"Erro ao criar fonte"}},createSimpleDatastoreModal:{title:"Criar Datastore Simples",description:"Crie sua base de conhecimento em 2 passos simples",advancedMode:"Modo avan\xE7ado",descriptions:{website:"Datastore do site: {url}",files:"Datastore com {count} arquivos enviados"},suggestions:{knowledgeBase:"Base de Conhecimento",documentation:"Documenta\xE7\xE3o",faqClients:"FAQ de Clientes",technicalManuals:"Manuais T\xE9cnicos",policiesProcedures:"Pol\xEDticas e Procedimentos",trainingMaterial:"Material de Treinamento"},step1:{title:"Como voc\xEA quer nomear seu datastore?",subtitle:"Escolha um nome descritivo para identificar sua base de conhecimento",nameLabel:"Nome do Datastore",namePlaceholder:"Ex: Documenta\xE7\xE3o T\xE9cnica, Base de Conhecimento...",nameHelper:"Este nome ajudar\xE1 voc\xEA a identificar seu datastore no painel",suggestionsTitle:"Sugest\xF5es de nomes"},step2:{datastoreType:"Base de Conhecimento"},tabs:{files:"Arquivos",website:"Site"},filesTab:{title:"Envie seus arquivos",description:"Arraste e solte ou selecione os arquivos que deseja adicionar"},websiteTab:{title:"Salve um site",description:"Digite a URL do site que deseja processar e adicionar ao seu datastore"},progress:{overall:"Progresso Total"},buttons:{back:"Voltar",cancel:"Cancelar",continue:"Continuar",saveFiles:"Salvar arquivos",saveWebsite:"Salvar site",savingFiles:"Salvando arquivos...",processingSite:"Processando site..."},errors:{noFiles:"Por favor, selecione pelo menos um arquivo",noUrl:"Por favor, digite uma URL v\xE1lida",noFilesProcessed:"N\xE3o foi poss\xEDvel processar os arquivos",creationError:"Ocorreu um erro ao criar o datastore"},toasts:{creating:"Criando datastore...",created:"Datastore criado com sucesso",processingWebsite:"Processando site...",websiteProcessing:"O site est\xE1 sendo processado",websiteFullDesc:"O site completo est\xE1 sendo processado. Voc\xEA receber\xE1 uma notifica\xE7\xE3o quando estiver pronto.",websitePageDesc:"A p\xE1gina est\xE1 sendo processada. Voc\xEA receber\xE1 uma notifica\xE7\xE3o quando estiver pronta.",gettingUploadUrl:"Obtendo URL de upload para {fileName}...",uploading:"Enviando {fileName}...",processing:"Processando {fileName}...",fileSuccess:"{fileName} processado com sucesso",fileError:"Erro ao processar {fileName}",datastoreCreatedWithFiles:"Datastore criado com {processed} de {total} arquivos"}},enterpriseModal:{title:"Solu\xE7\xF5es Enterprise",subtitle:"Desbloqueie todo o potencial dos agentes de IA com nossa plataforma de n\xEDvel empresarial",description:"Desbloqueie todo o potencial dos agentes de IA com nossa plataforma de n\xEDvel empresarial",solutions:{security:{title:"Seguran\xE7a e Conformidade",description:"Conformidade SOC2 com seguran\xE7a de n\xEDvel empresarial, SSO e permiss\xF5es avan\xE7adas."},customIntegrations:{title:"Integra\xE7\xF5es Personalizadas",description:"Integra\xE7\xF5es sob medida com seus sistemas e fluxos de trabalho existentes."},dedicatedSupport:{title:"Suporte Dedicado",description:"Suporte priorit\xE1rio 24/7 com um gerente de sucesso do cliente dedicado."},multiRegion:{title:"Implanta\xE7\xE3o Multi-Regi\xE3o",description:"Implante agentes em v\xE1rias regi\xF5es para desempenho e conformidade ideais."},customSLA:{title:"SLA Personalizado",description:"Acordos de n\xEDvel de servi\xE7o sob medida para atender aos seus requisitos de neg\xF3cios."},onboarding:{title:"Onboarding e Treinamento",description:"Programas abrangentes de integra\xE7\xE3o e treinamento para sua equipe."}},cta:{title:"Pronto para escalar suas capacidades de IA?",description:"Entre em contato com nossa equipe de vendas para discutir pre\xE7os e implementa\xE7\xE3o personalizados.",contactSales:"Contatar Vendas",learnMore:"Saiba Mais"}},improveAnswerModal:{loading:"Carregando...",noDatastore:{title:"Este agente n\xE3o tem datastore. Por favor, crie um datastore primeiro.",action:"Criar Datastore"},info:"Esta a\xE7\xE3o adicionar\xE1 uma nova Fonte de Dados Q&A ao seu Datastore.",datastoreLabel:"Datastore",selectDatastore:"Selecionar datastore"},mfaEnforcer:{required:"A autentica\xE7\xE3o de dois fatores \xE9 obrigat\xF3ria. Por favor, habilite 2FA nas configura\xE7\xF5es de Seguran\xE7a."},settings:{profile:{title:"Configura\xE7\xF5es de Perfil",description:"Gerencie suas informa\xE7\xF5es pessoais e prefer\xEAncias",saved:"Salvo",successMessage:"Perfil atualizado com sucesso",errorMessage:"Erro ao atualizar perfil",sections:{profilePicture:{title:"Foto de Perfil",uploadNew:"Enviar Nova",remove:"Remover",helperText:"JPG, PNG ou GIF \u2022 M\xE1x 2MB"},personalInfo:{title:"Informa\xE7\xF5es Pessoais",fullName:"Nome Completo",fullNamePlaceholder:"Digite seu nome completo",emailAddress:"Endere\xE7o de E-mail",emailHelperText:"O endere\xE7o de e-mail n\xE3o pode ser alterado"},preferences:{title:"Prefer\xEAncias",language:"Idioma",darkMode:"Modo Escuro",darkModeDescription:"Usar tema escuro em toda a plataforma"},security:{title:"Seguran\xE7a",description:"Gerencie as configura\xE7\xF5es de seguran\xE7a da sua conta",backToProfile:"\u2190 Voltar ao Perfil",accountSecurity:"Seguran\xE7a da Conta",accountSecurityDescription:"Gerencie 2FA e op\xE7\xF5es de seguran\xE7a",twoFactor:{title:"Autentica\xE7\xE3o de Dois Fatores (2FA)",enabledActive:"\u2713 Habilitado e ativo",description:"Adicione uma camada extra de seguran\xE7a \xE0 sua conta",manage:"Gerenciar",enable:"Habilitar 2FA"},mfaRequired:{title:"2FA Obrigat\xF3rio:",description:"Seu administrador requer autentica\xE7\xE3o de dois fatores para sua conta.",pleaseEnable:"Por favor, habilite 2FA para continuar usando a plataforma."}}},autoSave:"As altera\xE7\xF5es s\xE3o salvas automaticamente"},team:{title:"Configura\xE7\xF5es de Equipe",description:"Gerencie os membros da sua equipe e organiza\xE7\xE3o",noOrganization:"Voc\xEA precisa fazer parte de uma organiza\xE7\xE3o para acessar as configura\xE7\xF5es de equipe"},billing:{title:"Configura\xE7\xF5es de Cobran\xE7a",description:"Gerencie sua assinatura e cobran\xE7a",noOrganization:"Voc\xEA precisa fazer parte de uma organiza\xE7\xE3o para acessar as configura\xE7\xF5es de cobran\xE7a",status:{active:"Ativo",free:"Gr\xE1tis"},pricing:{perMonth:"/m\xEAs"},planIncludes:"O plano inclui:",features:{agents:"Agentes",datastores:"Datastores",monthlyBudget:"{budget} USD em cr\xE9ditos IA mensais",storage:"palavras de armazenamento",fileUploads:"uploads de arquivos",teamMembers:"At\xE9 {count} membros da equipe"},actions:{upgradePlan:"Atualizar Plano",manageBilling:"Gerenciar Cobran\xE7a"},upgrade:{title:"Atualize Seu Plano",description:"Escolha um plano que atenda \xE0s suas necessidades"},modals:{cancel:{title:"Cancelar Assinatura",description:"Tem certeza de que deseja cancelar sua assinatura? Seu plano permanecer\xE1 ativo at\xE9 o final do per\xEDodo de cobran\xE7a atual.",whatHappens:"O que acontece a seguir:",feature1:"\u2022 Recursos premium at\xE9 o final do per\xEDodo de cobran\xE7a",feature2:"\u2022 Downgrade autom\xE1tico para o plano Gr\xE1tis",feature3:"\u2022 Dados preservados com limites do plano Gr\xE1tis",feature4:"\u2022 Reativar a qualquer momento",keepSubscription:"Manter Assinatura",canceling:"Cancelando...",confirmCancel:"Cancelar Assinatura"},downgrade:{title:"Fazer Downgrade da Assinatura",description:"Fazendo downgrade de {current} para {target}.",changesTitle:"Mudan\xE7as ap\xF3s o downgrade:",agents:"Agentes:",datastores:"Datastores:",queries:"Consultas mensais:",price:"Pre\xE7o:",important:"Importante:",importantText:"As altera\xE7\xF5es entram em vigor imediatamente. Os recursos podem ser restritos se voc\xEA exceder os novos limites.",keepCurrent:"Manter Plano Atual",processing:"Processando...",confirmDowngrade:"Downgrade para {plan}"}}},apiKeys:{title:"Chaves API",description:"Autentique suas solicita\xE7\xF5es API com chaves seguras",noOrganization:"Voc\xEA precisa fazer parte de uma organiza\xE7\xE3o para acessar as chaves API",infoAlert:"Mantenha suas chaves seguras e nunca as compartilhe publicamente.",readDocs:"Ler documenta\xE7\xE3o",yourKeys:"Suas Chaves",newKey:"Nova Chave",emptyState:{title:"Ainda n\xE3o h\xE1 chaves API",description:"Crie sua primeira chave para come\xE7ar"},actions:{copy:"Copiar para a \xE1rea de transfer\xEAncia",delete:"Excluir chave"},toast:{created:"Chave API criada com sucesso",createError:"Falha ao criar chave API",mustHaveOne:"Voc\xEA deve ter pelo menos uma chave API",confirmDelete:"Tem certeza de que deseja excluir esta chave API?",deleted:"Chave API exclu\xEDda com sucesso",deleteError:"Falha ao excluir chave API",copied:"Chave API copiada para a \xE1rea de transfer\xEAncia"},usage:{title:"Como usar",headerDescription:"Inclua sua chave API no cabe\xE7alho da solicita\xE7\xE3o:",headerExample:"Authorization: Bearer SUA_CHAVE_API",exampleRequest:"Exemplo de solicita\xE7\xE3o:"}},notifications:{title:"Notifica\xE7\xF5es",description:"Configure prefer\xEAncias de notifica\xE7\xE3o e destinat\xE1rios",noOrganization:"Voc\xEA precisa fazer parte de uma organiza\xE7\xE3o para acessar as configura\xE7\xF5es de notifica\xE7\xE3o",recipients:{title:"Quem recebe notifica\xE7\xF5es?",description:"Selecione membros da equipe e adicione e-mails externos para receber notifica\xE7\xF5es",teamMembers:"Membros da Equipe",selected:"{selected} de {total} selecionados",externalRecipients:"Destinat\xE1rios Externos",emailPlaceholder:"Digite o endere\xE7o de e-mail",add:"Adicionar",unknown:"Desconhecido"},sound:{title:"Notifica\xE7\xF5es Sonoras",streamCompletion:"Conclus\xE3o de stream",streamCompletionDescription:"Reproduzir som quando a resposta da IA for conclu\xEDda",newMessage:"Alerta de nova mensagem",newMessageDescription:"Som de notifica\xE7\xE3o para novas mensagens",errorAlerts:"Alertas de erro",errorAlertsDescription:"Notifica\xE7\xE3o sonora para erros"},email:{title:"Notifica\xE7\xF5es por E-mail",weeklyReports:"Relat\xF3rios semanais",weeklyReportsDescription:"Resumo da sua atividade semanal",agentUpdates:"Atualiza\xE7\xF5es de agentes",agentUpdatesDescription:"Notifica\xE7\xF5es sobre seus agentes",securityAlerts:"Alertas de seguran\xE7a",securityAlertsDescription:"Notifica\xE7\xF5es importantes de seguran\xE7a"},inApp:{title:"Notifica\xE7\xF5es no Aplicativo",conversationUpdates:"Atualiza\xE7\xF5es de conversas",conversationUpdatesDescription:"Atividade em suas conversas",teamActivity:"Atividade da equipe",teamActivityDescription:"Atualiza\xE7\xF5es dos membros da sua equipe",systemUpdates:"Atualiza\xE7\xF5es do sistema",systemUpdatesDescription:"Atualiza\xE7\xF5es e an\xFAncios da plataforma"},toast:{saved:"Configura\xE7\xF5es salvas",saveError:"Falha ao salvar configura\xE7\xF5es",invalidEmail:"Por favor, digite um endere\xE7o de e-mail v\xE1lido",emailExists:"E-mail j\xE1 adicionado"}}},widgets:{bubble:{tabs:{basic:"B\xE1sico",suggestions:"Sugest\xF5es",style:"Estilo",code:"Instalar"},sections:{displayNameDescription:"Este t\xEDtulo aparecer\xE1 no cabe\xE7alho do chat",initialMessageDescription:"Mensagem inicial que seus usu\xE1rios ver\xE3o",helpLinksDescription:"Adicione links \xFAteis que aparecer\xE3o abaixo da mensagem inicial",additionalOptions:"Op\xE7\xF5es Adicionais",suggestionsDescription:"Adicione sugest\xF5es que seus usu\xE1rios podem selecionar rapidamente",primaryColorDescription:"Defina a cor principal do seu widget",customCSSDescription:"Adicione estilos CSS personalizados (avan\xE7ado)",installTitle:"C\xF3digo de Instala\xE7\xE3o",installDescription:"Copie e cole este c\xF3digo no seu site, logo antes da tag </body>.",installHint:"Clique no bloco de c\xF3digo para copi\xE1-lo para a \xE1rea de transfer\xEAncia."},preview:{initializing:"Inicializando..."},toast:{configSaved:"Configura\xE7\xE3o salva com sucesso",configError:"Erro ao salvar configura\xE7\xE3o",codeCopied:"C\xF3digo copiado para a \xE1rea de transfer\xEAncia!"}},iframe:{tabs:{basic:"B\xE1sico",style:"Estilo",code:"C\xF3digo"},sections:{displayNameDescription:"Este t\xEDtulo aparecer\xE1 no cabe\xE7alho do chat",initialMessageDescription:"Mensagem inicial que seus usu\xE1rios ver\xE3o",additionalOptions:"Op\xE7\xF5es Adicionais",primaryColorDescription:"Defina a cor principal do seu widget",customCSSDescription:"Adicione estilos CSS personalizados (avan\xE7ado)",codeDescription:"Copie este c\xF3digo em sua p\xE1gina HTML"},preview:{initializing:"Inicializando..."},toast:{configSaved:"Configura\xE7\xE3o salva com sucesso",configError:"Erro ao salvar configura\xE7\xE3o",codeCopied:"C\xF3digo copiado!"}},standalone:{sections:{standalonePage:"P\xE1gina Independente",welcomeBanner:"Banner de Boas-Vindas",agentAvatar:"Avatar do Agente",messageAndBranding:"Mensagem e Branding",organizationLogo:"Logo da Organiza\xE7\xE3o",socialNetworks:"Redes Sociais"},preview:{liveLabel:"Ao vivo",refreshPreview:"Atualizar preview"},agentAvatar:{title:"Avatar do Agente",readOnly:"Este \xE9 o avatar principal do agente (n\xE3o edit\xE1vel daqui)",changeInBuilder:"Para alterar o avatar do agente, use o Builder ou gere um com IA"},organizationLogo:{noLogo:"Nenhum logo de organiza\xE7\xE3o configurado",configureInSettings:"Para configurar o logo da organiza\xE7\xE3o, v\xE1 para as configura\xE7\xF5es da organiza\xE7\xE3o",displayedAt:"Exibido no canto superior esquerdo do banner",changeInSettings:"Para alterar o logo, v\xE1 para as configura\xE7\xF5es da organiza\xE7\xE3o"},bannerStyles:{gradients:{sunset:{name:"Sunset",description:"Gradiente laranja para rosa"},ocean:{name:"Ocean",description:"Gradiente azul marinho"},forest:{name:"Forest",description:"Gradiente verde natural"},purple:{name:"Purple Dream",description:"Gradiente roxo vibrante"}},solids:{blue:{name:"Blue",description:"Azul profissional"},green:{name:"Green",description:"Verde corporativo"},purple:{name:"Purple",description:"Roxo moderno"},red:{name:"Red",description:"Vermelho intenso"}},solid3d:{blue:{name:"Blue 3D",description:"Azul com profundidade"},orange:{name:"Orange 3D",description:"Laranja com sombras"},teal:{name:"Teal 3D",description:"Verde azulado 3D"},pink:{name:"Pink 3D",description:"Rosa com relevo"}},animated:{aurora:{name:"Aurora",description:"Ondas de aurora suaves"},fire:{name:"Fire",description:"Chamas en\xE9rgicas"},neon:{name:"Neon",description:"Neon vibrante"},ocean:{name:"Ocean Waves",description:"Ondas tranquilas"}}},toast:{configSaved:"Configura\xE7\xE3o salva com sucesso",configError:"Erro ao salvar configura\xE7\xE3o"}},fields:{initialMessage:{label:"Mensagem inicial",placeholder:"Ol\xE1! Como posso ajud\xE1-lo?",helper:"Uma mensagem de boas-vindas amig\xE1vel para seus usu\xE1rios (m\xE1x. 300 caracteres)"},helpLinks:{label:"Links de ajuda",addButton:"Adicionar link",empty:"Nenhum link de ajuda configurado. Adicione links para os usu\xE1rios acessarem recursos adicionais.",linkNumber:"Link {{number}}",labelField:"Texto do link",labelPlaceholder:"Ex. Documenta\xE7\xE3o",urlField:"URL",urlPlaceholder:"https://exemplo.com",helper:"Adicione at\xE9 4 links \xFAteis que aparecer\xE3o na tela de boas-vindas"},messageTemplates:{addPlaceholder:"Adicione uma sugest\xE3o...",helper:"M\xE1ximo 3 sugest\xF5es. Pressione Enter para adicionar.",defaultTemplates:{template1:"O que \xE9 horneross.com?",template2:"Pre\xE7os de planos"}},displayName:{label:"T\xEDtulo do chat",placeholder:"Ex. Suporte horneross"},bannerTitle:{label:"T\xEDtulo do Banner",placeholder:"Bem-vindo ao nosso assistente!"},bannerSubtitle:{label:"Subt\xEDtulo",placeholder:"Estou aqui para ajud\xE1-lo 24/7"},organizationName:{label:"Nome da Organiza\xE7\xE3o",placeholder:"Nome da sua empresa (aparece ao lado do logo)",helper:"Este nome aparecer\xE1 ao lado do logo no banner. Deixe em branco para n\xE3o exibir nenhum nome."},handle:{label:"Bot Handle",placeholder:"meu_bot_incrivel",errorRequired:"O handle \xE9 obrigat\xF3rio",errorTaken:"O handle j\xE1 est\xE1 em uso",errorValidating:"Erro ao validar o handle",copied:"Copiado!",viewPage:"Ver p\xE1gina"},primaryColor:{label:"Cor principal"},customCSS:{label:"CSS Personalizado",placeholder:`/* Seu CSS personalizado */
|