-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathchat-widget.js
2 lines (2 loc) · 353 KB
/
chat-widget.js
1
2
/*! For license information please see chat-widget.js.LICENSE.txt */
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("React"),require("ReactDOM")):"function"==typeof define&&define.amd?define(["React","ReactDOM"],t):"object"==typeof exports?exports.ChatWidget=t(require("React"),require("ReactDOM")):e.ChatWidget=t(e.React,e.ReactDOM)}(self,((e,t)=>(()=>{"use strict";var n,r,i={845:e=>{e.exports=t},883:t=>{t.exports=e}},s={};function a(e){var t=s[e];if(void 0!==t)return t.exports;var n=s[e]={exports:{}};return i[e](n,n.exports,a),n.exports}a.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return a.d(t,{a:t}),t},r=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__,a.t=function(e,t){if(1&t&&(e=this(e)),8&t)return e;if("object"==typeof e&&e){if(4&t&&e.__esModule)return e;if(16&t&&"function"==typeof e.then)return e}var i=Object.create(null);a.r(i);var s={};n=n||[null,r({}),r([]),r(r)];for(var o=2&t&&e;"object"==typeof o&&!~n.indexOf(o);o=r(o))Object.getOwnPropertyNames(o).forEach((t=>s[t]=()=>e[t]));return s.default=()=>e,a.d(i,s),i},a.d=(e,t)=>{for(var n in t)a.o(t,n)&&!a.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},a.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),a.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var o={};a.r(o);var l=a(883),u=a.t(l,2),c=a.n(l),d=a(845),p=a.n(d);function h(e){return function(e){if(Array.isArray(e))return v(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||m(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function f(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=m(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,i=function(){};return{s:i,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:i}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var s,a=!0,o=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return a=e.done,e},e:function(e){o=!0,s=e},f:function(){try{a||null==n.return||n.return()}finally{if(o)throw s}}}}function m(e,t){if(e){if("string"==typeof e)return v(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?v(e,t):void 0}}function v(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function g(e){var t="function"==typeof Map?new Map:void 0;return g=function(e){if(null===e||!function(e){try{return-1!==Function.toString.call(e).indexOf("[native code]")}catch(t){return"function"==typeof e}}(e))return e;if("function"!=typeof e)throw new TypeError("Super expression must either be null or a function");if(void 0!==t){if(t.has(e))return t.get(e);t.set(e,n)}function n(){return function(e,t,n){if(k())return Reflect.construct.apply(null,arguments);var r=[null];r.push.apply(r,t);var i=new(e.bind.apply(e,r));return n&&w(i,n.prototype),i}(e,arguments,_(this).constructor)}return n.prototype=Object.create(e.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}}),w(n,e)},g(e)}function y(e,t,n){return t=_(t),function(e,t){if(t&&("object"===L(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return b(e)}(e,k()?Reflect.construct(t,n||[],_(e).constructor):t.apply(e,n))}function b(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function k(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){}return(k=function(){return!!e})()}function _(e){return _=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},_(e)}function x(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&w(e,t)}function w(e,t){return w=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},w(e,t)}function S(){S=function(){return t};var e,t={},n=Object.prototype,r=n.hasOwnProperty,i=Object.defineProperty||function(e,t,n){e[t]=n.value},s="function"==typeof Symbol?Symbol:{},a=s.iterator||"@@iterator",o=s.asyncIterator||"@@asyncIterator",l=s.toStringTag||"@@toStringTag";function u(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{u({},"")}catch(e){u=function(e,t,n){return e[t]=n}}function c(e,t,n,r){var s=t&&t.prototype instanceof g?t:g,a=Object.create(s.prototype),o=new O(r||[]);return i(a,"_invoke",{value:M(e,n,o)}),a}function d(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}t.wrap=c;var p="suspendedStart",h="suspendedYield",f="executing",m="completed",v={};function g(){}function y(){}function b(){}var k={};u(k,a,(function(){return this}));var _=Object.getPrototypeOf,x=_&&_(_(R([])));x&&x!==n&&r.call(x,a)&&(k=x);var w=b.prototype=g.prototype=Object.create(k);function E(e){["next","throw","return"].forEach((function(t){u(e,t,(function(e){return this._invoke(t,e)}))}))}function C(e,t){function n(i,s,a,o){var l=d(e[i],e,s);if("throw"!==l.type){var u=l.arg,c=u.value;return c&&"object"==L(c)&&r.call(c,"__await")?t.resolve(c.__await).then((function(e){n("next",e,a,o)}),(function(e){n("throw",e,a,o)})):t.resolve(c).then((function(e){u.value=e,a(u)}),(function(e){return n("throw",e,a,o)}))}o(l.arg)}var s;i(this,"_invoke",{value:function(e,r){function i(){return new t((function(t,i){n(e,r,t,i)}))}return s=s?s.then(i,i):i()}})}function M(t,n,r){var i=p;return function(s,a){if(i===f)throw new Error("Generator is already running");if(i===m){if("throw"===s)throw a;return{value:e,done:!0}}for(r.method=s,r.arg=a;;){var o=r.delegate;if(o){var l=T(o,r);if(l){if(l===v)continue;return l}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if(i===p)throw i=m,r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);i=f;var u=d(t,n,r);if("normal"===u.type){if(i=r.done?m:h,u.arg===v)continue;return{value:u.arg,done:r.done}}"throw"===u.type&&(i=m,r.method="throw",r.arg=u.arg)}}}function T(t,n){var r=n.method,i=t.iterator[r];if(i===e)return n.delegate=null,"throw"===r&&t.iterator.return&&(n.method="return",n.arg=e,T(t,n),"throw"===n.method)||"return"!==r&&(n.method="throw",n.arg=new TypeError("The iterator does not provide a '"+r+"' method")),v;var s=d(i,t.iterator,n.arg);if("throw"===s.type)return n.method="throw",n.arg=s.arg,n.delegate=null,v;var a=s.arg;return a?a.done?(n[t.resultName]=a.value,n.next=t.nextLoc,"return"!==n.method&&(n.method="next",n.arg=e),n.delegate=null,v):a:(n.method="throw",n.arg=new TypeError("iterator result is not an object"),n.delegate=null,v)}function A(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function I(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function O(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(A,this),this.reset(!0)}function R(t){if(t||""===t){var n=t[a];if(n)return n.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var i=-1,s=function n(){for(;++i<t.length;)if(r.call(t,i))return n.value=t[i],n.done=!1,n;return n.value=e,n.done=!0,n};return s.next=s}}throw new TypeError(L(t)+" is not iterable")}return y.prototype=b,i(w,"constructor",{value:b,configurable:!0}),i(b,"constructor",{value:y,configurable:!0}),y.displayName=u(b,l,"GeneratorFunction"),t.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===y||"GeneratorFunction"===(t.displayName||t.name))},t.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,b):(e.__proto__=b,u(e,l,"GeneratorFunction")),e.prototype=Object.create(w),e},t.awrap=function(e){return{__await:e}},E(C.prototype),u(C.prototype,o,(function(){return this})),t.AsyncIterator=C,t.async=function(e,n,r,i,s){void 0===s&&(s=Promise);var a=new C(c(e,n,r,i),s);return t.isGeneratorFunction(n)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},E(w),u(w,l,"Generator"),u(w,a,(function(){return this})),u(w,"toString",(function(){return"[object Generator]"})),t.keys=function(e){var t=Object(e),n=[];for(var r in t)n.push(r);return n.reverse(),function e(){for(;n.length;){var r=n.pop();if(r in t)return e.value=r,e.done=!1,e}return e.done=!0,e}},t.values=R,O.prototype={constructor:O,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=e,this.done=!1,this.delegate=null,this.method="next",this.arg=e,this.tryEntries.forEach(I),!t)for(var n in this)"t"===n.charAt(0)&&r.call(this,n)&&!isNaN(+n.slice(1))&&(this[n]=e)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var n=this;function i(r,i){return o.type="throw",o.arg=t,n.next=r,i&&(n.method="next",n.arg=e),!!i}for(var s=this.tryEntries.length-1;s>=0;--s){var a=this.tryEntries[s],o=a.completion;if("root"===a.tryLoc)return i("end");if(a.tryLoc<=this.prev){var l=r.call(a,"catchLoc"),u=r.call(a,"finallyLoc");if(l&&u){if(this.prev<a.catchLoc)return i(a.catchLoc,!0);if(this.prev<a.finallyLoc)return i(a.finallyLoc)}else if(l){if(this.prev<a.catchLoc)return i(a.catchLoc,!0)}else{if(!u)throw new Error("try statement without catch or finally");if(this.prev<a.finallyLoc)return i(a.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var i=this.tryEntries[n];if(i.tryLoc<=this.prev&&r.call(i,"finallyLoc")&&this.prev<i.finallyLoc){var s=i;break}}s&&("break"===e||"continue"===e)&&s.tryLoc<=t&&t<=s.finallyLoc&&(s=null);var a=s?s.completion:{};return a.type=e,a.arg=t,s?(this.method="next",this.next=s.finallyLoc,v):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),v},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),I(n),v}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var i=r.arg;I(n)}return i}}throw new Error("illegal catch attempt")},delegateYield:function(t,n,r){return this.delegate={iterator:R(t),resultName:n,nextLoc:r},"next"===this.method&&(this.arg=e),v}},t}function E(e,t,n,r,i,s,a){try{var o=e[s](a),l=o.value}catch(e){return void n(e)}o.done?t(l):Promise.resolve(l).then(r,i)}function C(e){return function(){var t=this,n=arguments;return new Promise((function(r,i){var s=e.apply(t,n);function a(e){E(s,r,i,a,o,"next",e)}function o(e){E(s,r,i,a,o,"throw",e)}a(void 0)}))}}function M(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function T(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?M(Object(n),!0).forEach((function(t){A(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):M(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function A(e,t,n){return(t=N(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function L(e){return L="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},L(e)}function I(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function O(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,N(r.key),r)}}function R(e,t,n){return t&&O(e.prototype,t),n&&O(e,n),Object.defineProperty(e,"prototype",{writable:!1}),e}function N(e){var t=function(e){if("object"!=L(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=L(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==L(t)?t:String(t)}var P=function(){function e(){I(this,e)}return R(e,null,[{key:"render",value:function(e,t){var n=document.createElement("div");n.id="error-view",n.innerText=t,e.replaceChildren(n)}}]),e}(),j=function(){function e(){I(this,e)}return R(e,null,[{key:"onLoad",value:function(e){e.innerHTML='<div id="large-loading-ring"></div>'}},{key:"createElements",value:function(){var e=document.createElement("div");return e.id="validate-property-key-view",e}},{key:"render",value:function(t,n,r){var i=e.createElements(),s={onSuccess:n,onFail:P.render.bind(this,t,"Your 'key' has failed authentication"),onLoad:e.onLoad.bind(this,i)};r.key&&r.verifyKey(r.key,s),t.replaceChildren(i)}}]),e}(),D=function(){function e(){I(this,e)}return R(e,null,[{key:"unsetStyle",value:function(e,t){var n=Object.keys(t).reduce((function(e,t){return e[t]="",e}),{});Object.assign(e.style,n)}},{key:"unsetActivityCSSMouseStates",value:function(t,n){n.click&&e.unsetStyle(t,n.click),n.hover&&e.unsetStyle(t,n.hover)}},{key:"unsetAllCSSMouseStates",value:function(t,n){e.unsetActivityCSSMouseStates(t,n),n.default&&e.unsetStyle(t,n.default)}},{key:"processStateful",value:function(e,t,n){var r=e.default||{},i=Object.assign(JSON.parse(JSON.stringify(T(T({},r),t))),null==e?void 0:e.hover);return{default:r,hover:i,click:Object.assign(JSON.parse(JSON.stringify(T(T({},i),n))),null==e?void 0:e.click)}}},{key:"mergeStatefulStyles",value:function(e){var t={default:{},hover:{},click:{}};return e.forEach((function(e){t.default=Object.assign(t.default,e.default),t.hover=Object.assign(t.hover,e.hover),t.click=Object.assign(t.click,e.click)})),t}},{key:"overwriteDefaultWithAlreadyApplied",value:function(e,t){Object.keys(e.default||[]).forEach((function(n){var r,i=n;t.style[i]&&null!=(r=e.default)&&r[i]&&(e.default[n]=t.style[i])}))}},{key:"applyToStyleIfNotDefined",value:function(e,t){for(var n in t){var r=t[n];""===e[n]&&r&&(e[n]=r)}}}]),e}(),B=function(){function e(){I(this,e)}return R(e,null,[{key:"apply",value:function(t,n){if(n)try{e.applyStyleSheet(t,n)}catch(r){e.addStyleElement(t,n)}}},{key:"applyStyleSheet",value:function(e,t){var n=new CSSStyleSheet;n.replaceSync(e),t.adoptedStyleSheets.push(n)}},{key:"addStyleElement",value:function(e,t){var n=document.createElement("style");n.innerHTML=e,t.appendChild(n)}},{key:"applyDefaultStyleToComponent",value:function(t,n){n&&D.applyToStyleIfNotDefined(t,n),D.applyToStyleIfNotDefined(t,e.DEFAULT_COMPONENT_STYLE)}}]),e}();B.DEFAULT_COMPONENT_STYLE={height:"350px",width:"320px",border:"1px solid #cacaca",fontFamily:"'Inter', sans-serif, Avenir, Helvetica, Arial",fontSize:"0.9rem",backgroundColor:"white",position:"relative",overflow:"hidden"};var F=B,q=function(e){return e.ESCAPE="Escape",e.ENTER="Enter",e.TAB="Tab",e.ARROW_UP="ArrowUp",e.ARROW_DOWN="ArrowDown",e.ARROW_RIGHT="ArrowRight",e.ARROW_LEFT="ArrowLeft",e.BACKSPACE="Backspace",e.DELETE="Delete",e.META="Meta",e.CONTROL="Control",e}(q||{}),U=R((function e(){I(this,e)}));U.IS_SAFARI=/^((?!chrome|android).)*safari/i.test(navigator.userAgent),U.IS_CHROMIUM=window.chrome;var z=function(){function e(){I(this,e)}return R(e,null,[{key:"add",value:function(t,n,r){void 0!==n&&t.addEventListener("keydown",e.onKeyDown.bind(this,n)),t.oninput=e.onInput.bind(this,n,r)}},{key:"onKeyDown",value:function(t,n){var r=n.target.textContent;r&&r.length>=t&&!e.PERMITTED_KEYS.has(n.key)&&!e.isKeyCombinationPermitted(n)&&n.preventDefault()}},{key:"isKeyCombinationPermitted",value:function(e){return"a"===e.key&&(e.ctrlKey||e.metaKey)}},{key:"onInput",value:function(e,t,n){var r=n.target,i=r.textContent||"";void 0!==e&&i.length>e&&(r.textContent=i.substring(0,e),K.focusEndOfInput(r)),null==t||t()}}]),e}();z.PERMITTED_KEYS=new Set([q.BACKSPACE,q.DELETE,q.ARROW_RIGHT,q.ARROW_LEFT,q.ARROW_DOWN,q.ARROW_UP,q.META,q.CONTROL,q.ENTER]);var H=z,V=function(){function e(){I(this,e)}return R(e,null,[{key:"sanitizePastedTextContent",value:function(e){var t,n;e.preventDefault();var r=null==(t=e.clipboardData)?void 0:t.getData("text/plain");null==(n=document.execCommand)||n.call(document,"insertText",!1,r)}}]),e}(),G=function(){function e(t,n){var r,i=this;I(this,e);var s=e.processConfig(n,t.textInput);this.elementRef=e.createContainerElement(null==(r=null==s?void 0:s.styles)?void 0:r.container),this.inputElementRef=this.createInputElement(s),this._config=s,this.elementRef.appendChild(this.inputElementRef),setTimeout((function(){var e;H.add(i.inputElementRef,null==(e=t.textInput)?void 0:e.characterLimit,t._validationHandler)}))}return R(e,[{key:"createInputElement",value:function(t){var n,r,i,s=document.createElement("div");return s.id=e.TEXT_INPUT_ID,s.classList.add("text-input-styling","text-input-placeholder"),s.innerText=(null==(n=null==t?void 0:t.placeholder)?void 0:n.text)||"Ask me anything!",U.IS_CHROMIUM&&e.preventAutomaticScrollUpOnNewLine(s),"boolean"==typeof(null==t?void 0:t.disabled)&&!0===t.disabled?(s.contentEditable="false",s.classList.add("text-input-disabled")):(s.contentEditable="true",this.addEventListeners(s,t)),Object.assign(s.style,null==(r=null==t?void 0:t.styles)?void 0:r.text),Object.assign(s.style,null==(i=null==t?void 0:t.placeholder)?void 0:i.style),s}},{key:"removeTextIfPlaceholder",value:function(){var t,n,r,i;this.inputElementRef.classList.contains("text-input-placeholder")&&!this.inputElementRef.classList.contains("text-input-disabled")&&(null!=(t=this._config.placeholder)&&t.style&&(D.unsetStyle(this.inputElementRef,null==(n=this._config.placeholder)?void 0:n.style),Object.assign(this.inputElementRef.style,null==(i=null==(r=this._config)?void 0:r.styles)?void 0:i.text)),e.clear(this.inputElementRef),this.inputElementRef.classList.remove("text-input-placeholder"))}},{key:"addEventListeners",value:function(e,t){var n,r,i;e.onfocus=this.onFocus.bind(this,null==(n=null==t?void 0:t.styles)?void 0:n.focus),null!=(r=null==t?void 0:t.styles)&&r.focus&&(e.onblur=this.onBlur.bind(this,t.styles.focus,null==(i=null==t?void 0:t.styles)?void 0:i.container)),e.addEventListener("keydown",this.onKeydown.bind(this)),e.onpaste=V.sanitizePastedTextContent}},{key:"onFocus",value:function(e){var t=this;U.IS_SAFARI?setTimeout((function(){t.removeTextIfPlaceholder()})):this.removeTextIfPlaceholder(),Object.assign(this.elementRef.style,e)}},{key:"onBlur",value:function(e,t){D.unsetStyle(this.elementRef,e),t&&Object.assign(this.elementRef.style,t)}},{key:"onKeydown",value:function(e){var t;e.key===q.ENTER&&!e.ctrlKey&&!e.shiftKey&&(e.preventDefault(),null==(t=this.submit)||t.call(this))}}],[{key:"processConfig",value:function(e,t){var n,r,i,s,a;return null!==(n=t)&&void 0!==n||(t={}),null!==(r=t.disabled)&&void 0!==r||(t.disabled=e.isTextInputDisabled),null!==(i=t.placeholder)&&void 0!==i||(t.placeholder={}),null!==(s=(a=t.placeholder).text)&&void 0!==s||(a.text=e.textInputPlaceholderText),t}},{key:"preventAutomaticScrollUpOnNewLine",value:function(e){var t;e.addEventListener("keydown",(function(){t=window.scrollY})),e.addEventListener("input",(function(){t!==window.scrollY&&window.scrollTo({top:t})}))}},{key:"clear",value:function(e){var t=window.scrollY;e.classList.contains("text-input-disabled")||(e.textContent=""),U.IS_CHROMIUM&&window.scrollTo({top:t})}},{key:"toggleEditability",value:function(e,t){e.contentEditable=t?"true":"false"}},{key:"createContainerElement",value:function(e){var t=document.createElement("div");return t.id="text-input-container",Object.assign(t.style,e),t}}]),e}();G.TEXT_INPUT_ID="text-input";var W=G,K=function(){function e(){I(this,e)}return R(e,null,[{key:"focusEndOfInput",value:function(e){var t=document.createRange();t.selectNodeContents(e),t.collapse(!1);var n=window.getSelection();null==n||n.removeAllRanges(),null==n||n.addRange(t)}},{key:"focusFromParentElement",value:function(t){var n=t.querySelector("#".concat(W.TEXT_INPUT_ID));n&&e.focusEndOfInput(n)}}]),e}();function Y(e){return e.charAt(0).toUpperCase()+e.slice(1)}function J(e,t,n,r){var i="\n".concat(Y(t)," message: ").concat(JSON.stringify(e)," \n"),s=n?"".concat(Y(t)," message after interceptor: ").concat(function(e){return e&&JSON.stringify(e)}(r)," \n"):"";return i+s}var Z="Make sure the events are using {text: string} or {html: string} format.\nYou can also augment them using the responseInterceptor property: https://deepchat.dev/docs/interceptors#responseInterceptor",X={INVALID_KEY:"Invalid API Key",CONNECTION_FAILED:"Failed to connect",INVALID_RESPONSE:function(e,t,n,r){return"".concat(J(e,t,n,r),"Make sure the ").concat(t," message is using the Response format: https://deepchat.dev/docs/connect/#Response \nYou can also augment it using the responseInterceptor property: https://deepchat.dev/docs/interceptors#responseInterceptor")},INVALID_MODEL_REQUEST:function(e,t){var n="request";return"".concat(J(e,n,t),"Make sure the ").concat(n,' message is using the {body: {text: string}} format, e.g: {body: {text: "Model Response"}}')},INVALID_MODEL_RESPONSE:function(e,t,n){var r="response";return"".concat(J(e,r,t,n),"Make sure the ").concat(r,' message is using the {text: string} format, e.g: {text: "Model Response"}')},INVALID_STREAM_EVENT:Z,INVALID_STREAM_EVENT_MIX:"Cannot mix {text: string} and {html: string} responses.",NO_VALID_STREAM_EVENTS_SENT:"No valid stream events were sent.\n".concat(Z)},Q=function(){function e(){I(this,e)}return R(e,null,[{key:"addElements",value:function(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];n.forEach((function(t){return e.appendChild(t)}))}},{key:"isScrollbarAtBottomOfElement",value:function(t){var n=t.scrollHeight,r=t.clientHeight;return t.scrollTop>=n-r-e.CODE_SNIPPET_GENERATION_JUMP}},{key:"cloneElement",value:function(e){var t=e.cloneNode(!0);return e.parentNode.replaceChild(t,e),t}},{key:"scrollToBottom",value:function(e){e.scrollTop=e.scrollHeight}},{key:"scrollToTop",value:function(e){e.scrollTop=0}}]),e}();Q.CODE_SNIPPET_GENERATION_JUMP=.5;var $=Q,ee=function(){function e(){I(this,e)}return R(e,null,[{key:"speak",value:function(e,t){if(window.SpeechSynthesisUtterance){var n=new SpeechSynthesisUtterance(e);Object.assign(n,t),speechSynthesis.speak(n)}}},{key:"processConfig",value:function(t,n){var r={};setTimeout((function(){if("object"==L(t)&&(t.lang&&(r.lang=t.lang),t.pitch&&(r.pitch=t.pitch),t.rate&&(r.rate=t.rate),t.volume&&(r.volume=t.volume),t.voiceName)){var e=window.speechSynthesis.getVoices().find((function(e){var n;return e.name.toLocaleLowerCase()===(null==(n=t.voiceName)?void 0:n.toLocaleLowerCase())}));e&&(r.voice=e)}n(r)}),e.LOAD_VOICES_MS)}}]),e}();ee.LOAD_VOICES_MS=200;var te=ee,ne=function(){function e(){I(this,e)}return R(e,null,[{key:"checkForContainerStyles",value:function(e,t){var n=e.containerStyle;n&&(Object.assign(t.style,n),console.error("The containerStyle property is deprecated since version 1.3.14."),console.error("Please change to using the style property instead: https://deepchat.dev/docs/styles#style"))}},{key:"handleResponseProperty",value:function(e){return console.error("The {result: ....} response object type is deprecated since version 1.3.0."),console.error("Please change to using the new response object: https://deepchat.dev/docs/connect#Response"),e.result}},{key:"processInitialMessageFile",value:function(e){var t=e.file;t&&(console.error("The file property in MessageContent is deprecated since version 1.3.17."),console.error("Please change to using the files array property: https://deepchat.dev/docs/messages/#MessageContent"),e.files=[t])}},{key:"processValidateInput",value:function(e){var t=e.validateMessageBeforeSending;if(t)return console.error("The validateMessageBeforeSending property is deprecated since version 1.3.24."),console.error("Please change to using validateInput: https://deepchat.dev/docs/interceptors#validateInput"),t}},{key:"processSubmitUserMessage",value:function(e){return console.error("The submitUserMessage(text: string) argument string type is deprecated since version 1.4.4."),console.error("Please change to using the new argument type: https://deepchat.dev/docs/methods#submitUserMessage"),{text:e}}},{key:"flagHTMLUpdateClass",value:function(e){var t;null!=(t=e.children[0])&&t.classList.contains("deep-chat-update-message")&&(console.error('The "deep-chat-update-message" html class is deprecated since version 1.4.4.'),console.error("Please change to using {..., overwrite: true} object: https://deepchat.dev/docs/connect#Response"))}}]),e}(),re=function(){function e(){I(this,e)}return R(e,null,[{key:"hide",value:function(t){t.getElementsByClassName(e.CONTAINER_CLASS)[0].style.visibility="hidden"}},{key:"applyCustomStylesToElements",value:function(e,t,n){Object.assign(e.style,n.container),Object.assign(t.style,n.avatar)}},{key:"applyCustomStyles",value:function(t,n,r,i){var s,a,o,l;if(null!=(s=r.default)&&s.styles&&e.applyCustomStylesToElements(t,n,r.default.styles),i===ue.USER_ROLE)null!=(a=r.user)&&a.styles&&e.applyCustomStylesToElements(t,n,r.user.styles);else{null!=(o=r.ai)&&o.styles&&e.applyCustomStylesToElements(t,n,r.ai.styles);var u=null==(l=r[i])?void 0:l.styles;u&&e.applyCustomStylesToElements(t,n,u)}}},{key:"createAvatar",value:function(t,n){var r,i,s,a,o,l=document.createElement("img");t===ue.USER_ROLE?l.src=(null==(r=null==n?void 0:n.user)?void 0:r.src)||(null==(i=null==n?void 0:n.default)?void 0:i.src)||"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAPoAAAD6CAMAAAC/MqoPAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAADNQTFRF////9vX18vLy/Pz86enp4+Li2tnZ1tbWzczM+fn57Ozs4N/f09LS0M/P5uXl7+/v3dzcwtncCAAAAAFiS0dEAIgFHUgAAAAJcEhZcwAAAEgAAABIAEbJaz4AAAZNSURBVHja7d3bdtsqEABQYABZSLH9/3+ZpnUsIcF5iOM6PfElNoMHMfPQdq3GmL0GkLhEUqLaUExnOtOZznSmM53pTGc605nOdKYznelMZzrTmV4LXSqllKyJDkob26xWq8Zae/iH0QoWTm9d1xur4WuypQJtTd+5dqn0VjcxzNO5/57mEBvdLo8Oron6aseWOjYOFkVvjQs3DmgyONMuht52EfztP+4hdu0i6LCO808/M8c1lE/fuPGej41uUzgdtoO/75N+2ELJ9I3b3//hPXbiMenm3pR/Jt4USgcLBIp4Bh10gqKVhvLo0klCxeSky96nKcj3siw6pJIL4XsoiQ7apyvMY/V3HHrSRioLopvEhSpTCn2TPEuwKYMOIX0tAxRBf/Hpa+lfSqBv9gi1FPsNfTrMAiVmIE/vJhz61FGnQxRIEYE4vfNYdN8Rp6MlHaHotHTn8ejekaZPAjEmyvQWdZFTtYTpXqCGJ0zvcek9Yfoel76nS0ffv1NMp1ca+pkgyfRCGind4L7OWWc605l+cxjsyhqy9AGbPpClc1/nvl5VX0c/3Alk6RU3+Am7shNZ+h6bvidLr7jBB+zKBrL0irOOudmIUDzTmf5gIP+iEuXtRuTVaEmY/oZLfyNMrzjryPc0gerMTdpVg0tvjJUU6bLPcGOoUv46SLL6Wi8yhLf06C7TUyekI0efRaaYqdFltkeNpPumRPSMDxgBYvSM035FrKAmH72hRW99PrpvSdEHkTEGUvSsK3yKVDkuJ92RohcZaehzzirPpOg+J92Tolfc4Cumx5xVXpGiZ34+ICX6W84qv5GiR5NPbiIpOv6BCoSvSkTX+eiaGP092zINvBOj4x8mSf9FqejvNo/cvpOji19ZbmviL0GPLsYMFzgzCor0+Bv/ePDvSJKOb9dJ5UlnbnEHiHgzv6cdTpJOWuc/u3FEucLDOL75xGtBiefrcwgoC9NDSH/jkH6pAuXmBqPQ9HSUPVdZBH1GGOrMXAQdYxcKZfxAoK+KKBKFLosoEoX+u4giUehz8jlcnAuhp78I46yDYNAd+QLR6K+pr+yvxdBTHyVDubQh0UfSxaHSd0lbvNkVRE87JGOtc+PQd2QLQ6fHhJkKsSh6yg13tO08JPprsgrrXWH0dJd2vH1MLPprot4eXoujpzrdhngiD40ek2y92lggPcnWa8qN1Yz0BFuvZhRl0uOfR0v4Ewuli/Bg4Qr3lArqGdndQ3UPO1EunXYwnelMZzrTmc50pjOd6UxnOtOZznSmM53pTGf6kuj6oedFKV0s3fX6sX1S3bsi6a4PD7+/YAqYeBw6pIB/4qEgOqxdSPbGiim4NRRCbzs3Jj0L4UfXtQXQVRfn5IdA/Bw7RZzurEV6EtdsLeGXkIPuA+K1UoVeA0l62zmN/LqfSSft9KkepmoRuvi3nd5uKNFB9zbbXEANqdr941XO0NJx2v2jdJenpf+/3bvn0ts16ph+sd6hX7dPo2+2cZzE02Ia43bzDHqr+2Evnhz74ZHU30ffbKOeng1/NPV30Ns1gYQnSP2P6e65Pfxc6h02XZqXQCjhJ6kPL6bFo4NrGvAU4UII4SE2P1vQuZkuOxckVfehisF1MjUddN/MZBN+kvq5uf0O/xa66gyNS9ktMWlz44rO1Z8C19i5FPdHzPamXn+F3hryPfxMr78+4F+kq22kO6Rf6fUQt+puuustyWv4rbG3l/duztFB96GYoe1cTBdXMr+nw9qVM6ZfxOvzezff0nXi/ZOndvrR6Zvpm0c3h6nhdb+5iS7tsIim/qXZD9+97/Jf+rpZ5BET1ayv0GUzLhEuhBBjIy/RdVPgndutIRt9nt7p5cKFEEJ3Z+jQFDZL+XnMDXxHB73gxn5s9Kc3d3/pFciFkN/QTSXHJpX5l66gDrkQoP6hL3xsPw39la4qOiV8tH78XeSbue6N9mvWa6J/ybpc1CT1Wnh5Qq9meP8IOKH3ddH7E/ri1iYux/SXDrXR4UiPdck/wUpU+FtPf6/orja6O9KL3l56LOvVxe5Ib2qjN0d6Vbex4ghWlU3bPqI90If66MNng680FNpbJijH6kCvaF3uMzQ3+IrpFerV4Y9dffQdN3im10ivbuImhD3Qq5u4HdZkua8znelMZ/pS4z9CPVKkxowNxgAAACV0RVh0ZGF0ZTpjcmVhdGUAMjAxNy0wMy0yN1QxNTo0NToxNSswMDowMN1xSg4AAAAldEVYdGRhdGU6bW9kaWZ5ADIwMTctMDMtMjdUMTU6NDU6MTUrMDA6MDCsLPKyAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAABJRU5ErkJggg==":l.src=(null==(s=null==n?void 0:n[t])?void 0:s.src)||(null==(a=null==n?void 0:n.ai)?void 0:a.src)||(null==(o=null==n?void 0:n.default)?void 0:o.src)||"data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iaXNvLTg4NTktMSI/Pgo8c3ZnIGZpbGw9IiMwMDAwMDAiIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIAoJCXZpZXdCb3g9IjAgMCAzMiAzMiIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+Cgk8cGF0aCBkPSJNMjMsMzAuMzZIOWMtMi40MDQsMC00LjM2LTEuOTU2LTQuMzYtNC4zNlYxNWMwLTIuNDA0LDEuOTU2LTQuMzYsNC4zNi00LjM2aDMuNjU5CgkJYzAuMTY3LTEuNTY2LDEuNDE1LTIuODEzLDIuOTgxLTIuOTgxVjUuMzMzYy0xLjEzMS0wLjE3NC0yLTEuMTU0LTItMi4zMzNjMC0xLjMwMSwxLjA1OS0yLjM2LDIuMzYtMi4zNgoJCWMxLjMwMiwwLDIuMzYsMS4wNTksMi4zNiwyLjM2YzAsMS4xNzktMC44NjksMi4xNTktMiwyLjMzM1Y3LjY2YzEuNTY2LDAuMTY3LDIuODE0LDEuNDE1LDIuOTgxLDIuOTgxSDIzCgkJYzIuNDA0LDAsNC4zNiwxLjk1Niw0LjM2LDQuMzZ2MTFDMjcuMzYsMjguNDA0LDI1LjQwNCwzMC4zNiwyMywzMC4zNnogTTksMTEuMzZjLTIuMDA3LDAtMy42NCwxLjYzMy0zLjY0LDMuNjR2MTEKCQljMCwyLjAwNywxLjYzMywzLjY0LDMuNjQsMy42NGgxNGMyLjAwNywwLDMuNjQtMS42MzMsMy42NC0zLjY0VjE1YzAtMi4wMDctMS42MzMtMy42NC0zLjY0LTMuNjRIOXogTTEzLjM4NCwxMC42NGg1LjIzMQoJCUMxOC40MzksOS4zNTQsMTcuMzM0LDguMzYsMTYsOC4zNkMxNC42NjcsOC4zNiwxMy41NjEsOS4zNTQsMTMuMzg0LDEwLjY0eiBNMTYsMS4zNmMtMC45MDQsMC0xLjY0LDAuNzM2LTEuNjQsMS42NAoJCVMxNS4wOTYsNC42NCwxNiw0LjY0YzAuOTA0LDAsMS42NC0wLjczNiwxLjY0LTEuNjRTMTYuOTA0LDEuMzYsMTYsMS4zNnogTTIwLDI3LjM2aC04Yy0xLjMwMSwwLTIuMzYtMS4wNTktMi4zNi0yLjM2CgkJczEuMDU5LTIuMzYsMi4zNi0yLjM2aDhjMS4zMDIsMCwyLjM2LDEuMDU5LDIuMzYsMi4zNlMyMS4zMDIsMjcuMzYsMjAsMjcuMzZ6IE0xMiwyMy4zNmMtMC45MDQsMC0xLjY0LDAuNzM1LTEuNjQsMS42NAoJCXMwLjczNiwxLjY0LDEuNjQsMS42NGg4YzAuOTA0LDAsMS42NC0wLjczNSwxLjY0LTEuNjRzLTAuNzM1LTEuNjQtMS42NC0xLjY0SDEyeiBNMzEsMjMuODZoLTJjLTAuMTk5LDAtMC4zNi0wLjE2MS0wLjM2LTAuMzZWMTUKCQljMC0wLjE5OSwwLjE2MS0wLjM2LDAuMzYtMC4zNmgyYzAuMTk5LDAsMC4zNiwwLjE2MSwwLjM2LDAuMzZ2OC41QzMxLjM2LDIzLjY5OSwzMS4xOTksMjMuODYsMzEsMjMuODZ6IE0yOS4zNiwyMy4xNGgxLjI3OXYtNy43OAoJCUgyOS4zNlYyMy4xNHogTTMsMjMuODZIMWMtMC4xOTksMC0wLjM2LTAuMTYxLTAuMzYtMC4zNlYxNWMwLTAuMTk5LDAuMTYxLTAuMzYsMC4zNi0wLjM2aDJjMC4xOTksMCwwLjM2LDAuMTYxLDAuMzYsMC4zNnY4LjUKCQlDMy4zNiwyMy42OTksMy4xOTksMjMuODYsMywyMy44NnogTTEuMzYsMjMuMTRoMS4yOHYtNy43OEgxLjM2VjIzLjE0eiBNMjAsMjAuMzZjLTEuMzAyLDAtMi4zNi0xLjA1OS0yLjM2LTIuMzYKCQlzMS4wNTktMi4zNiwyLjM2LTIuMzZzMi4zNiwxLjA1OSwyLjM2LDIuMzZDMjIuMzYsMTkuMzAyLDIxLjMwMiwyMC4zNiwyMCwyMC4zNnogTTIwLDE2LjM2Yy0wLjkwNCwwLTEuNjQsMC43MzYtMS42NCwxLjY0CgkJczAuNzM1LDEuNjQsMS42NCwxLjY0czEuNjQtMC43MzUsMS42NC0xLjY0UzIwLjkwNCwxNi4zNiwyMCwxNi4zNnogTTEyLDIwLjM2Yy0xLjMwMSwwLTIuMzYtMS4wNTktMi4zNi0yLjM2czEuMDU5LTIuMzYsMi4zNi0yLjM2CgkJczIuMzYsMS4wNTksMi4zNiwyLjM2QzE0LjM2LDE5LjMwMiwxMy4zMDEsMjAuMzYsMTIsMjAuMzZ6IE0xMiwxNi4zNmMtMC45MDQsMC0xLjY0LDAuNzM2LTEuNjQsMS42NHMwLjczNiwxLjY0LDEuNjQsMS42NAoJCXMxLjY0LTAuNzM1LDEuNjQtMS42NFMxMi45MDQsMTYuMzYsMTIsMTYuMzZ6Ii8+Cgk8cmVjdCBzdHlsZT0iZmlsbDpub25lOyIgd2lkdGg9IjMyIiBoZWlnaHQ9IjMyIi8+Cjwvc3ZnPg==",l.classList.add("avatar");var u=document.createElement("div");return u.classList.add(e.CONTAINER_CLASS),u.appendChild(l),n&&e.applyCustomStyles(u,l,n,t),u}},{key:"getPosition",value:function(e,t){var n,r,i,s,a,o,l,u,c,d=null==(a=null==(s=null==t?void 0:t[e])?void 0:s.styles)?void 0:a.position;return e!==ue.USER_ROLE&&(null!==(n=d)&&void 0!==n||(d=null==(l=null==(o=null==t?void 0:t.ai)?void 0:o.styles)?void 0:l.position)),null!==(r=d)&&void 0!==r||(d=null==(c=null==(u=null==t?void 0:t.default)?void 0:u.styles)?void 0:c.position),null!==(i=d)&&void 0!==i||(d=e===ue.USER_ROLE?"right":"left"),d}},{key:"add",value:function(t,n,r){var i="boolean"==typeof r?void 0:r,s=e.createAvatar(n,i),a=e.getPosition(n,i);s.classList.add("left"===a?"left-item-position":"right-item-position"),t.insertAdjacentElement("left"===a?"beforebegin":"afterend",s)}}]),e}();re.CONTAINER_CLASS="avatar-container";var ie=re,se=function(){function e(){I(this,e)}return R(e,null,[{key:"hide",value:function(t){t.getElementsByClassName(e.NAME_CLASS)[0].style.visibility="hidden"}},{key:"getPosition",value:function(e,t){var n,r,i,s,a,o,l=null==(s=null==t?void 0:t[e])?void 0:s.position;return e!==ue.USER_ROLE&&(null!==(n=l)&&void 0!==n||(l=null==(a=null==t?void 0:t.ai)?void 0:a.position)),null!==(r=l)&&void 0!==r||(l=null==(o=null==t?void 0:t.default)?void 0:o.position),null!==(i=l)&&void 0!==i||(l=e===ue.USER_ROLE?"right":"left"),l}},{key:"applyStyle",value:function(e,t,n){var r,i,s,a;Object.assign(e.style,null==(r=n.default)?void 0:r.style),t===ue.USER_ROLE?Object.assign(e.style,null==(i=n.user)?void 0:i.style):(Object.assign(e.style,null==(s=n.ai)?void 0:s.style),Object.assign(e.style,null==(a=n[t])?void 0:a.style))}},{key:"getNameText",value:function(e,t){var n,r,i,s,a,o;return e===ue.USER_ROLE?(null==(n=t.user)?void 0:n.text)||(null==(r=t.default)?void 0:r.text)||"User":e===ue.AI_ROLE?(null==(i=t.ai)?void 0:i.text)||(null==(s=t.default)?void 0:s.text)||"AI":(null==(a=t[e])?void 0:a.text)||(null==(o=t.default)?void 0:o.text)||e}},{key:"createName",value:function(t,n){var r=document.createElement("div");return r.classList.add(e.NAME_CLASS),r.textContent=e.getNameText(t,n),e.applyStyle(r,t,n),r}},{key:"add",value:function(t,n,r){var i="boolean"==typeof r?{}:r,s=e.createName(n,i),a=e.getPosition(n,i);s.classList.add("left"===a?"left-item-position":"right-item-position"),t.insertAdjacentElement("left"===a?"beforebegin":"afterend",s)}}]),e}();se.NAME_CLASS="name";var ae=se,oe=function(){function e(){I(this,e)}return R(e,null,[{key:"getLastElementsByClass",value:function(e,t,n){for(var r,i=function(){var r=e[s];if(r.bubbleElement.classList.contains(t[0])&&!t.slice(1).find((function(e){return!r.bubbleElement.classList.contains(e)}))){if(!n)return{v:r};if(!n.find((function(e){return r.bubbleElement.classList.contains(e)})))return{v:r}}},s=e.length-1;s>=0;s-=1)if(r=i())return r.v}},{key:"getLastMessage",value:function(e,t,n){for(var r=e.length-1;r>=0;r-=1)if(e[r].role===t){if(!n)return e[r];if(e[r][n])return e[r]}}},{key:"getLastTextToElement",value:function(e,t){for(var n=e.length-1;n>=0;n-=1)if(e[n][0]===t)return e[n]}},{key:"overwriteMessage",value:function(t,n,r,i,s,a){var o=e.getLastElementsByClass(n,[e.getRoleClass(i),a],["loading-message-text"]),l=e.getLastMessage(t,i,s);return l&&(l[s]=r),o}},{key:"getRoleClass",value:function(e){return"".concat(e,"-message")}},{key:"fillEmptyMessageElement",value:function(t,n){0===n.trim().length&&(t.classList.add(e.EMPTY_MESSAGE_CLASS),t.innerHTML='<div style="color:#00000000">.</div>')}},{key:"unfillEmptyMessageElement",value:function(t,n){t.classList.contains(e.EMPTY_MESSAGE_CLASS)&&n.trim().length>0&&t.replaceChildren()}},{key:"getLastMessageBubbleElement",value:function(t){var n,r,i;return Array.from((null==(i=null==(r=null==(n=e.getLastMessageElement(t))?void 0:n.children)?void 0:r[0])?void 0:i.children)||[]).find((function(e){return e.classList.contains("message-bubble")}))}},{key:"getLastMessageElement",value:function(e){return e.children[e.children.length-1]}},{key:"addRoleElements",value:function(e,t,n,r){n&&ie.add(e,t,n),r&&ae.add(e,t,r)}},{key:"hideRoleElements",value:function(e,t,n){var r=e[e.length-1].innerContainer;t&&ie.hide(r),n&&ae.hide(r)}}]),e}();oe.AI_ROLE="ai",oe.USER_ROLE="user",oe.EMPTY_MESSAGE_CLASS="empty-message";var le,ue=oe,ce=function(){function e(){I(this,e)}return R(e,null,[{key:"mouseUp",value:function(e,t){D.unsetAllCSSMouseStates(e,t),Object.assign(e.style,t.default),Object.assign(e.style,t.hover)}},{key:"mouseDown",value:function(e,t){Object.assign(e.style,t.click)}},{key:"mouseLeave",value:function(e,t){D.unsetAllCSSMouseStates(e,t),Object.assign(e.style,t.default)}},{key:"mouseEnter",value:function(e,t){Object.assign(e.style,t.hover)}},{key:"add",value:function(t,n){t.addEventListener("mouseenter",e.mouseEnter.bind(this,t,n)),t.addEventListener("mouseleave",e.mouseLeave.bind(this,t,n)),t.addEventListener("mousedown",e.mouseDown.bind(this,t,n)),t.addEventListener("mouseup",e.mouseUp.bind(this,t,n))}}]),e}(),de={"deep-chat-button":{styles:{default:{backgroundColor:"white",padding:"5px",paddingLeft:"7px",paddingRight:"7px",border:"1px solid #c2c2c2",borderRadius:"6px",cursor:"pointer"},hover:{backgroundColor:"#fafafa"},click:{backgroundColor:"#f1f1f1"}}}},pe=Object.keys(de),he=function(){function e(){I(this,e)}return R(e,null,[{key:"applySuggestionEvent",value:function(e,t){setTimeout((function(){t.addEventListener("click",(function(){var n,r;null==(r=e.submitUserMessage)||r.call(e,{text:(null==(n=t.textContent)?void 0:n.trim())||""})}))}))}},{key:"isElementTemporary",value:function(e){var t;return!!e&&(null==(t=e.bubbleElement.children[0])?void 0:t.classList.contains("deep-chat-temporary-message"))}},{key:"doesElementContainDeepChatClass",value:function(e){return pe.find((function(t){return e.classList.contains(t)}))}},{key:"applyEvents",value:function(e,t){var n=de[t].events;Object.keys(n||[]).forEach((function(t){e.addEventListener(t,null==n?void 0:n[t])}))}},{key:"getProcessedStyles",value:function(e,t,n){var r=Array.from(t.classList).reduce((function(t,n){var r,i=null==(r=e[n])?void 0:r.styles;return i&&e[n].styles&&t.push(i),t}),[]),i=de[n].styles;if(i){var s=JSON.parse(JSON.stringify(i));s.default&&D.overwriteDefaultWithAlreadyApplied(s,t),r.unshift(s)}var a=D.mergeStatefulStyles(r);return D.processStateful(a,{},{})}},{key:"applyDeepChatUtilities",value:function(t,n,r){pe.forEach((function(t){var i=r.getElementsByClassName(t);Array.from(i||[]).forEach((function(r){var i=e.getProcessedStyles(n,r,t);fe.applyStylesToElement(r,i),e.applyEvents(r,t)}))}));var i=r.getElementsByClassName("deep-chat-suggestion-button");Array.from(i).forEach((function(n){return e.applySuggestionEvent(t,n)}))}}]),e}(),fe=function(){function e(){I(this,e)}return R(e,null,[{key:"applyStylesToElement",value:function(e,t){var n=D.processStateful(t,{},{});ce.add(e,n),Object.assign(e.style,n.default)}},{key:"applyEventsToElement",value:function(e,t){Object.keys(t).forEach((function(n){var r=t[n];r&&e.addEventListener(n,r)}))}},{key:"applyClassUtilitiesToElement",value:function(t,n){var r=n.events,i=n.styles;r&&e.applyEventsToElement(t,r),i&&!he.doesElementContainDeepChatClass(t)&&e.applyStylesToElement(t,i)}},{key:"applyCustomClassUtilities",value:function(t,n){Object.keys(t).forEach((function(r){var i=n.getElementsByClassName(r);Array.from(i).forEach((function(n){t[r]&&e.applyClassUtilitiesToElement(n,t[r])}))}))}},{key:"apply",value:function(t,n){he.applyDeepChatUtilities(t,t.htmlClassUtilities,n),e.applyCustomClassUtilities(t.htmlClassUtilities,n)}}]),e}(),me=function(){function e(){I(this,e)}return R(e,null,[{key:"addElement",value:function(e,t){e.elementRef.appendChild(t),e.elementRef.scrollTop=e.elementRef.scrollHeight}},{key:"createElements",value:function(e,t,n){var r=e.createNewMessageElement("",n);return r.bubbleElement.classList.add("html-message"),r.bubbleElement.innerHTML=t,r}},{key:"overwrite",value:function(e,t,n,r){var i=e.messages,s=ue.overwriteMessage(i,r,t,n,"html","html-message");return s&&(s.bubbleElement.innerHTML=t,fe.apply(e,s.outerContainer),ne.flagHTMLUpdateClass(s.bubbleElement)),s}},{key:"add",value:function(t,n,r,i,s){var a;if(null!=s&&s.status){var o=this.overwrite(t,n,r,i);if(o)return o;s.status=!1}var l=e.createElements(t,n,r);return ue.fillEmptyMessageElement(l.bubbleElement,n),fe.apply(t,l.outerContainer),ne.flagHTMLUpdateClass(l.bubbleElement),t.applyCustomStyles(l,r,!1,null==(a=t.messageStyles)?void 0:a.html),e.addElement(t,l.outerContainer),l}}]),e}();function ve(e){return(le=le||document.createElement("textarea")).innerHTML="&"+e+";",le.value}var ge=Object.prototype.hasOwnProperty;function ye(e){return[].slice.call(arguments,1).forEach((function(t){if(t){if("object"!=L(t))throw new TypeError(t+"must be object");Object.keys(t).forEach((function(n){e[n]=t[n]}))}})),e}var be=/\\([\\!"#$%&'()*+,.\/:;<=>?@[\]^_`{|}~-])/g;function ke(e){return e.indexOf("\\")<0?e:e.replace(be,"$1")}function _e(e){return!(e>=55296&&e<=57343||e>=64976&&e<=65007||!(65535&~e)||65534==(65535&e)||e>=0&&e<=8||11===e||e>=14&&e<=31||e>=127&&e<=159||e>1114111)}function xe(e){if(e>65535){var t=55296+((e-=65536)>>10),n=56320+(1023&e);return String.fromCharCode(t,n)}return String.fromCharCode(e)}var we=/&([a-z#][a-z0-9]{1,31});/gi,Se=/^#((?:x[a-f0-9]{1,8}|[0-9]{1,8}))/i;function Ee(e,t){var n=0,r=ve(t);return t!==r?r:35===t.charCodeAt(0)&&Se.test(t)&&_e(n="x"===t[1].toLowerCase()?parseInt(t.slice(2),16):parseInt(t.slice(1),10))?xe(n):e}function Ce(e){return e.indexOf("&")<0?e:e.replace(we,Ee)}var Me=/[&<>"]/,Te=/[&<>"]/g,Ae={"&":"&","<":"<",">":">",'"':"""};function Le(e){return Ae[e]}function Ie(e){return Me.test(e)?e.replace(Te,Le):e}var Oe={};function Re(e,t){return++t>=e.length-2?t:"paragraph_open"===e[t].type&&e[t].tight&&"inline"===e[t+1].type&&0===e[t+1].content.length&&"paragraph_close"===e[t+2].type&&e[t+2].tight?Re(e,t+2):t}Oe.blockquote_open=function(){return"<blockquote>\n"},Oe.blockquote_close=function(e,t){return"</blockquote>"+Ne(e,t)},Oe.code=function(e,t){return e[t].block?"<pre><code>"+Ie(e[t].content)+"</code></pre>"+Ne(e,t):"<code>"+Ie(e[t].content)+"</code>"},Oe.fence=function(e,t,n,r,i){var s,a,o=e[t],l="",u=n.langPrefix;if(o.params){if(a=(s=o.params.split(/\s+/g)).join(" "),function(e,t){return!!e&&ge.call(e,t)}(i.rules.fence_custom,s[0]))return i.rules.fence_custom[s[0]](e,t,n,r,i);l=' class="'+u+Ie(Ce(ke(a)))+'"'}return"<pre><code"+l+">"+(n.highlight&&n.highlight.apply(n.highlight,[o.content].concat(s))||Ie(o.content))+"</code></pre>"+Ne(e,t)},Oe.fence_custom={},Oe.heading_open=function(e,t){return"<h"+e[t].hLevel+">"},Oe.heading_close=function(e,t){return"</h"+e[t].hLevel+">\n"},Oe.hr=function(e,t,n){return(n.xhtmlOut?"<hr />":"<hr>")+Ne(e,t)},Oe.bullet_list_open=function(){return"<ul>\n"},Oe.bullet_list_close=function(e,t){return"</ul>"+Ne(e,t)},Oe.list_item_open=function(){return"<li>"},Oe.list_item_close=function(){return"</li>\n"},Oe.ordered_list_open=function(e,t){var n=e[t];return"<ol"+(n.order>1?' start="'+n.order+'"':"")+">\n"},Oe.ordered_list_close=function(e,t){return"</ol>"+Ne(e,t)},Oe.paragraph_open=function(e,t){return e[t].tight?"":"<p>"},Oe.paragraph_close=function(e,t){var n=!(e[t].tight&&t&&"inline"===e[t-1].type&&!e[t-1].content);return(e[t].tight?"":"</p>")+(n?Ne(e,t):"")},Oe.link_open=function(e,t,n){var r=e[t].title?' title="'+Ie(Ce(e[t].title))+'"':"",i=n.linkTarget?' target="'+n.linkTarget+'"':"";return'<a href="'+Ie(e[t].href)+'"'+r+i+">"},Oe.link_close=function(){return"</a>"},Oe.image=function(e,t,n){var r=' src="'+Ie(e[t].src)+'"',i=e[t].title?' title="'+Ie(Ce(e[t].title))+'"':"";return"<img"+r+' alt="'+(e[t].alt?Ie(Ce(ke(e[t].alt))):"")+'"'+i+(n.xhtmlOut?" /":"")+">"},Oe.table_open=function(){return"<table>\n"},Oe.table_close=function(){return"</table>\n"},Oe.thead_open=function(){return"<thead>\n"},Oe.thead_close=function(){return"</thead>\n"},Oe.tbody_open=function(){return"<tbody>\n"},Oe.tbody_close=function(){return"</tbody>\n"},Oe.tr_open=function(){return"<tr>"},Oe.tr_close=function(){return"</tr>\n"},Oe.th_open=function(e,t){var n=e[t];return"<th"+(n.align?' style="text-align:'+n.align+'"':"")+">"},Oe.th_close=function(){return"</th>"},Oe.td_open=function(e,t){var n=e[t];return"<td"+(n.align?' style="text-align:'+n.align+'"':"")+">"},Oe.td_close=function(){return"</td>"},Oe.strong_open=function(){return"<strong>"},Oe.strong_close=function(){return"</strong>"},Oe.em_open=function(){return"<em>"},Oe.em_close=function(){return"</em>"},Oe.del_open=function(){return"<del>"},Oe.del_close=function(){return"</del>"},Oe.ins_open=function(){return"<ins>"},Oe.ins_close=function(){return"</ins>"},Oe.mark_open=function(){return"<mark>"},Oe.mark_close=function(){return"</mark>"},Oe.sub=function(e,t){return"<sub>"+Ie(e[t].content)+"</sub>"},Oe.sup=function(e,t){return"<sup>"+Ie(e[t].content)+"</sup>"},Oe.hardbreak=function(e,t,n){return n.xhtmlOut?"<br />\n":"<br>\n"},Oe.softbreak=function(e,t,n){return n.breaks?n.xhtmlOut?"<br />\n":"<br>\n":"\n"},Oe.text=function(e,t){return Ie(e[t].content)},Oe.htmlblock=function(e,t){return e[t].content},Oe.htmltag=function(e,t){return e[t].content},Oe.abbr_open=function(e,t){return'<abbr title="'+Ie(Ce(e[t].title))+'">'},Oe.abbr_close=function(){return"</abbr>"},Oe.footnote_ref=function(e,t){var n=Number(e[t].id+1).toString(),r="fnref"+n;return e[t].subId>0&&(r+=":"+e[t].subId),'<sup class="footnote-ref"><a href="#fn'+n+'" id="'+r+'">['+n+"]</a></sup>"},Oe.footnote_block_open=function(e,t,n){return(n.xhtmlOut?'<hr class="footnotes-sep" />\n':'<hr class="footnotes-sep">\n')+'<section class="footnotes">\n<ol class="footnotes-list">\n'},Oe.footnote_block_close=function(){return"</ol>\n</section>\n"},Oe.footnote_open=function(e,t){return'<li id="fn'+Number(e[t].id+1).toString()+'" class="footnote-item">'},Oe.footnote_close=function(){return"</li>\n"},Oe.footnote_anchor=function(e,t){var n="fnref"+Number(e[t].id+1).toString();return e[t].subId>0&&(n+=":"+e[t].subId),' <a href="#'+n+'" class="footnote-backref">↩</a>'},Oe.dl_open=function(){return"<dl>\n"},Oe.dt_open=function(){return"<dt>"},Oe.dd_open=function(){return"<dd>"},Oe.dl_close=function(){return"</dl>\n"},Oe.dt_close=function(){return"</dt>\n"},Oe.dd_close=function(){return"</dd>\n"};var Ne=Oe.getBreak=function(e,t){return(t=Re(e,t))<e.length&&"list_item_close"===e[t].type?"":"\n"};function Pe(){this.rules=ye({},Oe),this.getBreak=Oe.getBreak}function je(){this.__rules__=[],this.__cache__=null}function De(e,t,n,r,i){this.src=e,this.env=r,this.options=n,this.parser=t,this.tokens=i,this.pos=0,this.posMax=this.src.length,this.level=0,this.pending="",this.pendingLevel=0,this.cache=[],this.isInLabel=!1,this.linkLevel=0,this.linkContent="",this.labelUnmatchedScopes=0}function Be(e,t){var n,r,i,s=-1,a=e.posMax,o=e.pos,l=e.isInLabel;if(e.isInLabel)return-1;if(e.labelUnmatchedScopes)return e.labelUnmatchedScopes--,-1;for(e.pos=t+1,e.isInLabel=!0,n=1;e.pos<a;){if(91===(i=e.src.charCodeAt(e.pos)))n++;else if(93===i&&0==--n){r=!0;break}e.parser.skipToken(e)}return r?(s=e.pos,e.labelUnmatchedScopes=0):e.labelUnmatchedScopes=n-1,e.pos=o,e.isInLabel=l,s}function Fe(e,t,n,r){var i,s,a,o,l,u;if(42!==e.charCodeAt(0)||91!==e.charCodeAt(1)||-1===e.indexOf("]:")||(s=Be(i=new De(e,t,n,r,[]),1))<0||58!==e.charCodeAt(s+1))return-1;for(o=i.posMax,a=s+2;a<o&&10!==i.src.charCodeAt(a);a++);return l=e.slice(2,s),0===(u=e.slice(s+2,a).trim()).length?-1:(r.abbreviations||(r.abbreviations={}),L(r.abbreviations[":"+l])>"u"&&(r.abbreviations[":"+l]=u),a)}function qe(e){var t=Ce(e);try{t=decodeURI(t)}catch(e){}return encodeURI(t)}function Ue(e,t){var n,r,i,s=t,a=e.posMax;if(60===e.src.charCodeAt(t)){for(t++;t<a;){if(10===(n=e.src.charCodeAt(t)))return!1;if(62===n)return i=qe(ke(e.src.slice(s+1,t))),!!e.parser.validateLink(i)&&(e.pos=t+1,e.linkContent=i,!0);92===n&&t+1<a?t+=2:t++}return!1}for(r=0;t<a&&!(32===(n=e.src.charCodeAt(t))||n<32||127===n);)if(92===n&&t+1<a)t+=2;else{if(40===n&&++r>1||41===n&&--r<0)break;t++}return!(s===t||(i=ke(e.src.slice(s,t)),!e.parser.validateLink(i))||(e.linkContent=i,e.pos=t,0))}function ze(e,t){var n,r=t,i=e.posMax,s=e.src.charCodeAt(t);if(34!==s&&39!==s&&40!==s)return!1;for(t++,40===s&&(s=41);t<i;){if((n=e.src.charCodeAt(t))===s)return e.pos=t+1,e.linkContent=ke(e.src.slice(r+1,t)),!0;92===n&&t+1<i?t+=2:t++}return!1}function He(e){return e.trim().replace(/\s+/g," ").toUpperCase()}function Ve(e,t,n,r){var i,s,a,o,l,u,c,d,p;if(91!==e.charCodeAt(0)||-1===e.indexOf("]:")||(s=Be(i=new De(e,t,n,r,[]),0))<0||58!==e.charCodeAt(s+1))return-1;for(o=i.posMax,a=s+2;a<o&&(32===(l=i.src.charCodeAt(a))||10===l);a++);if(!Ue(i,a))return-1;for(c=i.linkContent,u=a=i.pos,a+=1;a<o&&(32===(l=i.src.charCodeAt(a))||10===l);a++);for(a<o&&u!==a&&ze(i,a)?(d=i.linkContent,a=i.pos):(d="",a=u);a<o&&32===i.src.charCodeAt(a);)a++;return a<o&&10!==i.src.charCodeAt(a)?-1:(p=He(e.slice(1,s)),L(r.references[p])>"u"&&(r.references[p]={title:d,href:c}),a)}Pe.prototype.renderInline=function(e,t,n){for(var r=this.rules,i=e.length,s=0,a="";i--;)a+=r[e[s].type](e,s++,t,n,this);return a},Pe.prototype.render=function(e,t,n){for(var r=this.rules,i=e.length,s=-1,a="";++s<i;)"inline"===e[s].type?a+=this.renderInline(e[s].children,t,n):a+=r[e[s].type](e,s,t,n,this);return a},je.prototype.__find__=function(e){for(var t=this.__rules__.length,n=-1;t--;)if(this.__rules__[++n].name===e)return n;return-1},je.prototype.__compile__=function(){var e=this,t=[""];e.__rules__.forEach((function(e){e.enabled&&e.alt.forEach((function(e){t.indexOf(e)<0&&t.push(e)}))})),e.__cache__={},t.forEach((function(t){e.__cache__[t]=[],e.__rules__.forEach((function(n){n.enabled&&(t&&n.alt.indexOf(t)<0||e.__cache__[t].push(n.fn))}))}))},je.prototype.at=function(e,t,n){var r=this.__find__(e),i=n||{};if(-1===r)throw new Error("Parser rule not found: "+e);this.__rules__[r].fn=t,this.__rules__[r].alt=i.alt||[],this.__cache__=null},je.prototype.before=function(e,t,n,r){var i=this.__find__(e),s=r||{};if(-1===i)throw new Error("Parser rule not found: "+e);this.__rules__.splice(i,0,{name:t,enabled:!0,fn:n,alt:s.alt||[]}),this.__cache__=null},je.prototype.after=function(e,t,n,r){var i=this.__find__(e),s=r||{};if(-1===i)throw new Error("Parser rule not found: "+e);this.__rules__.splice(i+1,0,{name:t,enabled:!0,fn:n,alt:s.alt||[]}),this.__cache__=null},je.prototype.push=function(e,t,n){var r=n||{};this.__rules__.push({name:e,enabled:!0,fn:t,alt:r.alt||[]}),this.__cache__=null},je.prototype.enable=function(e,t){e=Array.isArray(e)?e:[e],t&&this.__rules__.forEach((function(e){e.enabled=!1})),e.forEach((function(e){var t=this.__find__(e);if(t<0)throw new Error("Rules manager: invalid rule name "+e);this.__rules__[t].enabled=!0}),this),this.__cache__=null},je.prototype.disable=function(e){(e=Array.isArray(e)?e:[e]).forEach((function(e){var t=this.__find__(e);if(t<0)throw new Error("Rules manager: invalid rule name "+e);this.__rules__[t].enabled=!1}),this),this.__cache__=null},je.prototype.getRules=function(e){return null===this.__cache__&&this.__compile__(),this.__cache__[e]||[]},De.prototype.pushPending=function(){this.tokens.push({type:"text",content:this.pending,level:this.pendingLevel}),this.pending=""},De.prototype.push=function(e){this.pending&&this.pushPending(),this.tokens.push(e),this.pendingLevel=this.level},De.prototype.cacheSet=function(e,t){for(var n=this.cache.length;n<=e;n++)this.cache.push(0);this.cache[e]=t},De.prototype.cacheGet=function(e){return e<this.cache.length?this.cache[e]:0};var Ge=" \n()[]'\".,!?-";function We(e){return e.replace(/([-()\[\]{}+?*.$\^|,:#<!\\])/g,"\\$1")}var Ke=/\+-|\.\.|\?\?\?\?|!!!!|,,|--/,Ye=/\((c|tm|r|p)\)/gi,Je={c:"©",r:"®",p:"§",tm:"™"};function Ze(e){return e.indexOf("(")<0?e:e.replace(Ye,(function(e,t){return Je[t.toLowerCase()]}))}var Xe=/['"]/,Qe=/['"]/g,$e=/[-\s()\[\]]/;function et(e,t){return!(t<0||t>=e.length||$e.test(e[t]))}function tt(e,t,n){return e.substr(0,t)+n+e.substr(t+1)}var nt=[["block",function(e){e.inlineMode?e.tokens.push({type:"inline",content:e.src.replace(/\n/g," ").trim(),level:0,lines:[0,1],children:[]}):e.block.parse(e.src,e.options,e.env,e.tokens)}],["abbr",function(e){var t,n,r,i,s=e.tokens;if(!e.inlineMode)for(t=1,n=s.length-1;t<n;t++)if("paragraph_open"===s[t-1].type&&"inline"===s[t].type&&"paragraph_close"===s[t+1].type){for(r=s[t].content;r.length&&!((i=Fe(r,e.inline,e.options,e.env))<0);)r=r.slice(i).trim();s[t].content=r,r.length||(s[t-1].tight=!0,s[t+1].tight=!0)}}],["references",function(e){var t,n,r,i,s=e.tokens;if(e.env.references=e.env.references||{},!e.inlineMode)for(t=1,n=s.length-1;t<n;t++)if("inline"===s[t].type&&"paragraph_open"===s[t-1].type&&"paragraph_close"===s[t+1].type){for(r=s[t].content;r.length&&!((i=Ve(r,e.inline,e.options,e.env))<0);)r=r.slice(i).trim();s[t].content=r,r.length||(s[t-1].tight=!0,s[t+1].tight=!0)}}],["inline",function(e){var t,n,r,i=e.tokens;for(n=0,r=i.length;n<r;n++)"inline"===(t=i[n]).type&&e.inline.parse(t.content,e.options,e.env,t.children)}],["footnote_tail",function(e){var t,n,r,i,s,a,o,l,u,c=0,d=!1,p={};if(e.env.footnotes&&(e.tokens=e.tokens.filter((function(e){return"footnote_reference_open"===e.type?(d=!0,l=[],u=e.label,!1):"footnote_reference_close"===e.type?(d=!1,p[":"+u]=l,!1):(d&&l.push(e),!d)})),e.env.footnotes.list)){for(a=e.env.footnotes.list,e.tokens.push({type:"footnote_block_open",level:c++}),t=0,n=a.length;t<n;t++){for(e.tokens.push({type:"footnote_open",id:t,level:c++}),a[t].tokens?((o=[]).push({type:"paragraph_open",tight:!1,level:c++}),o.push({type:"inline",content:"",level:c,children:a[t].tokens}),o.push({type:"paragraph_close",tight:!1,level:--c})):a[t].label&&(o=p[":"+a[t].label]),e.tokens=e.tokens.concat(o),s="paragraph_close"===e.tokens[e.tokens.length-1].type?e.tokens.pop():null,i=a[t].count>0?a[t].count:1,r=0;r<i;r++)e.tokens.push({type:"footnote_anchor",id:t,subId:r,level:c});s&&e.tokens.push(s),e.tokens.push({type:"footnote_close",level:--c})}e.tokens.push({type:"footnote_block_close",level:--c})}}],["abbr2",function(e){var t,n,r,i,s,a,o,l,u,c,d,p,h=e.tokens;if(e.env.abbreviations)for(e.env.abbrRegExp||(p="(^|["+Ge.split("").map(We).join("")+"])("+Object.keys(e.env.abbreviations).map((function(e){return e.substr(1)})).sort((function(e,t){return t.length-e.length})).map(We).join("|")+")($|["+Ge.split("").map(We).join("")+"])",e.env.abbrRegExp=new RegExp(p,"g")),c=e.env.abbrRegExp,n=0,r=h.length;n<r;n++)if("inline"===h[n].type)for(t=(i=h[n].children).length-1;t>=0;t--)if("text"===(s=i[t]).type){for(l=0,a=s.content,c.lastIndex=0,u=s.level,o=[];d=c.exec(a);)c.lastIndex>l&&o.push({type:"text",content:a.slice(l,d.index+d[1].length),level:u}),o.push({type:"abbr_open",title:e.env.abbreviations[":"+d[2]],level:u++}),o.push({type:"text",content:d[2],level:u}),o.push({type:"abbr_close",level:--u}),l=c.lastIndex-d[3].length;o.length&&(l<a.length&&o.push({type:"text",content:a.slice(l),level:u}),h[n].children=i=[].concat(i.slice(0,t),o,i.slice(t+1)))}}],["replacements",function(e){var t,n,r,i,s;if(e.options.typographer)for(s=e.tokens.length-1;s>=0;s--)if("inline"===e.tokens[s].type)for(t=(i=e.tokens[s].children).length-1;t>=0;t--)"text"===(n=i[t]).type&&(r=Ze(r=n.content),Ke.test(r)&&(r=r.replace(/\+-/g,"±").replace(/\.{2,}/g,"…").replace(/([?!])…/g,"$1..").replace(/([?!]){4,}/g,"$1$1$1").replace(/,{2,}/g,",").replace(/(^|[^-])---([^-]|$)/gm,"$1—$2").replace(/(^|\s)--(\s|$)/gm,"$1–$2").replace(/(^|[^-\s])--([^-\s]|$)/gm,"$1–$2")),n.content=r)}],["smartquotes",function(e){var t,n,r,i,s,a,o,l,u,c,d,p,h,f,m,v,g;if(e.options.typographer)for(g=[],m=e.tokens.length-1;m>=0;m--)if("inline"===e.tokens[m].type)for(v=e.tokens[m].children,g.length=0,t=0;t<v.length;t++)if("text"===(n=v[t]).type&&!Xe.test(n.text)){for(o=v[t].level,h=g.length-1;h>=0&&!(g[h].level<=o);h--);g.length=h+1,s=0,a=(r=n.content).length;e:for(;s<a&&(Qe.lastIndex=s,i=Qe.exec(r),i);)if(l=!et(r,i.index-1),s=i.index+1,f="'"===i[0],(u=!et(r,s))||l){if(d=!u,p=!l)for(h=g.length-1;h>=0&&(c=g[h],!(g[h].level<o));h--)if(c.single===f&&g[h].level===o){c=g[h],f?(v[c.token].content=tt(v[c.token].content,c.pos,e.options.quotes[2]),n.content=tt(n.content,i.index,e.options.quotes[3])):(v[c.token].content=tt(v[c.token].content,c.pos,e.options.quotes[0]),n.content=tt(n.content,i.index,e.options.quotes[1])),g.length=h;continue e}d?g.push({token:t,pos:i.index,single:f,level:o}):p&&f&&(n.content=tt(n.content,i.index,"’"))}else f&&(n.content=tt(n.content,i.index,"’"))}}]];function rt(){this.options={},this.ruler=new je;for(var e=0;e<nt.length;e++)this.ruler.push(nt[e][0],nt[e][1])}function it(e,t,n,r,i){var s,a,o,l,u,c,d;for(this.src=e,this.parser=t,this.options=n,this.env=r,this.tokens=i,this.bMarks=[],this.eMarks=[],this.tShift=[],this.blkIndent=0,this.line=0,this.lineMax=0,this.tight=!1,this.parentType="root",this.ddIndent=-1,this.level=0,this.result="",c=0,d=!1,o=l=c=0,u=(a=this.src).length;l<u;l++){if(s=a.charCodeAt(l),!d){if(32===s){c++;continue}d=!0}(10===s||l===u-1)&&(10!==s&&l++,this.bMarks.push(o),this.eMarks.push(l),this.tShift.push(c),d=!1,c=0,o=l+1)}this.bMarks.push(a.length),this.eMarks.push(a.length),this.tShift.push(0),this.lineMax=this.bMarks.length-1}function st(e,t){var n,r,i;return(r=e.bMarks[t]+e.tShift[t])>=(i=e.eMarks[t])||42!==(n=e.src.charCodeAt(r++))&&45!==n&&43!==n||r<i&&32!==e.src.charCodeAt(r)?-1:r}function at(e,t){var n,r=e.bMarks[t]+e.tShift[t],i=e.eMarks[t];if(r+1>=i||(n=e.src.charCodeAt(r++))<48||n>57)return-1;for(;;){if(r>=i)return-1;if(!((n=e.src.charCodeAt(r++))>=48&&n<=57)){if(41===n||46===n)break;return-1}}return r<i&&32!==e.src.charCodeAt(r)?-1:r}rt.prototype.process=function(e){var t,n,r;for(t=0,n=(r=this.ruler.getRules("")).length;t<n;t++)r[t](e)},it.prototype.isEmpty=function(e){return this.bMarks[e]+this.tShift[e]>=this.eMarks[e]},it.prototype.skipEmptyLines=function(e){for(var t=this.lineMax;e<t&&!(this.bMarks[e]+this.tShift[e]<this.eMarks[e]);e++);return e},it.prototype.skipSpaces=function(e){for(var t=this.src.length;e<t&&32===this.src.charCodeAt(e);e++);return e},it.prototype.skipChars=function(e,t){for(var n=this.src.length;e<n&&this.src.charCodeAt(e)===t;e++);return e},it.prototype.skipCharsBack=function(e,t,n){if(e<=n)return e;for(;e>n;)if(t!==this.src.charCodeAt(--e))return e+1;return e},it.prototype.getLines=function(e,t,n,r){var i,s,a,o,l,u=e;if(e>=t)return"";if(u+1===t)return s=this.bMarks[u]+Math.min(this.tShift[u],n),a=r?this.eMarks[u]+1:this.eMarks[u],this.src.slice(s,a);for(o=new Array(t-e),i=0;u<t;u++,i++)(l=this.tShift[u])>n&&(l=n),l<0&&(l=0),s=this.bMarks[u]+l,a=u+1<t||r?this.eMarks[u]+1:this.eMarks[u],o[i]=this.src.slice(s,a);return o.join("")};var ot={};["article","aside","button","blockquote","body","canvas","caption","col","colgroup","dd","div","dl","dt","embed","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","header","hgroup","hr","iframe","li","map","object","ol","output","p","pre","progress","script","section","style","table","tbody","td","textarea","tfoot","th","tr","thead","ul","video"].forEach((function(e){ot[e]=!0}));var lt=/^<([a-zA-Z]{1,15})[\s\/>]/,ut=/^<\/([a-zA-Z]{1,15})[\s>]/;function ct(e,t){var n=e.bMarks[t]+e.blkIndent,r=e.eMarks[t];return e.src.substr(n,r-n)}function dt(e,t){var n,r,i=e.bMarks[t]+e.tShift[t],s=e.eMarks[t];return i>=s||126!==(r=e.src.charCodeAt(i++))&&58!==r||i===(n=e.skipSpaces(i))||n>=s?-1:n}var pt=[["code",function(e,t,n){var r,i;if(e.tShift[t]-e.blkIndent<4)return!1;for(i=r=t+1;r<n;)if(e.isEmpty(r))r++;else{if(!(e.tShift[r]-e.blkIndent>=4))break;i=++r}return e.line=r,e.tokens.push({type:"code",content:e.getLines(t,i,4+e.blkIndent,!0),block:!0,lines:[t,e.line],level:e.level}),!0}],["fences",function(e,t,n,r){var i,s,a,o,l,u=!1,c=e.bMarks[t]+e.tShift[t],d=e.eMarks[t];if(c+3>d||126!==(i=e.src.charCodeAt(c))&&96!==i||(l=c,(s=(c=e.skipChars(c,i))-l)<3)||(a=e.src.slice(c,d).trim()).indexOf("`")>=0)return!1;if(r)return!0;for(o=t;!(++o>=n||(c=l=e.bMarks[o]+e.tShift[o],d=e.eMarks[o],c<d&&e.tShift[o]<e.blkIndent));)if(!(e.src.charCodeAt(c)!==i||e.tShift[o]-e.blkIndent>=4||(c=e.skipChars(c,i),c-l<s||(c=e.skipSpaces(c),c<d)))){u=!0;break}return s=e.tShift[t],e.line=o+(u?1:0),e.tokens.push({type:"fence",params:a,content:e.getLines(t+1,o,s,!0),lines:[t,e.line],level:e.level}),!0},["paragraph","blockquote","list"]],["blockquote",function(e,t,n,r){var i,s,a,o,l,u,c,d,p,h,f,m=e.bMarks[t]+e.tShift[t],v=e.eMarks[t];if(m>v||62!==e.src.charCodeAt(m++)||e.level>=e.options.maxNesting)return!1;if(r)return!0;for(32===e.src.charCodeAt(m)&&m++,l=e.blkIndent,e.blkIndent=0,o=[e.bMarks[t]],e.bMarks[t]=m,s=(m=m<v?e.skipSpaces(m):m)>=v,a=[e.tShift[t]],e.tShift[t]=m-e.bMarks[t],d=e.parser.ruler.getRules("blockquote"),i=t+1;i<n&&!((m=e.bMarks[i]+e.tShift[i])>=(v=e.eMarks[i]));i++)if(62!==e.src.charCodeAt(m++)){if(s)break;for(f=!1,p=0,h=d.length;p<h;p++)if(d[p](e,i,n,!0)){f=!0;break}if(f)break;o.push(e.bMarks[i]),a.push(e.tShift[i]),e.tShift[i]=-1337}else 32===e.src.charCodeAt(m)&&m++,o.push(e.bMarks[i]),e.bMarks[i]=m,s=(m=m<v?e.skipSpaces(m):m)>=v,a.push(e.tShift[i]),e.tShift[i]=m-e.bMarks[i];for(u=e.parentType,e.parentType="blockquote",e.tokens.push({type:"blockquote_open",lines:c=[t,0],level:e.level++}),e.parser.tokenize(e,t,i),e.tokens.push({type:"blockquote_close",level:--e.level}),e.parentType=u,c[1]=e.line,p=0;p<a.length;p++)e.bMarks[p+t]=o[p],e.tShift[p+t]=a[p];return e.blkIndent=l,!0},["paragraph","blockquote","list"]],["hr",function(e,t,n,r){var i,s,a,o=e.bMarks[t],l=e.eMarks[t];if((o+=e.tShift[t])>l||42!==(i=e.src.charCodeAt(o++))&&45!==i&&95!==i)return!1;for(s=1;o<l;){if((a=e.src.charCodeAt(o++))!==i&&32!==a)return!1;a===i&&s++}return!(s<3||(r||(e.line=t+1,e.tokens.push({type:"hr",lines:[t,e.line],level:e.level})),0))},["paragraph","blockquote","list"]],["list",function(e,t,n,r){var i,s,a,o,l,u,c,d,p,h,f,m,v,g,y,b,k,_,x,w,S,E=!0;if((d=at(e,t))>=0)m=!0;else{if(!((d=st(e,t))>=0))return!1;m=!1}if(e.level>=e.options.maxNesting)return!1;if(f=e.src.charCodeAt(d-1),r)return!0;for(g=e.tokens.length,m?(c=e.bMarks[t]+e.tShift[t],h=Number(e.src.substr(c,d-c-1)),e.tokens.push({type:"ordered_list_open",order:h,lines:b=[t,0],level:e.level++})):e.tokens.push({type:"bullet_list_open",lines:b=[t,0],level:e.level++}),i=t,y=!1,_=e.parser.ruler.getRules("list");i<n&&((p=(v=e.skipSpaces(d))>=e.eMarks[i]?1:v-d)>4&&(p=1),p<1&&(p=1),s=d-e.bMarks[i]+p,e.tokens.push({type:"list_item_open",lines:k=[t,0],level:e.level++}),o=e.blkIndent,l=e.tight,a=e.tShift[t],u=e.parentType,e.tShift[t]=v-e.bMarks[t],e.blkIndent=s,e.tight=!0,e.parentType="list",e.parser.tokenize(e,t,n,!0),(!e.tight||y)&&(E=!1),y=e.line-t>1&&e.isEmpty(e.line-1),e.blkIndent=o,e.tShift[t]=a,e.tight=l,e.parentType=u,e.tokens.push({type:"list_item_close",level:--e.level}),i=t=e.line,k[1]=i,v=e.bMarks[t],!(i>=n||e.isEmpty(i)||e.tShift[i]<e.blkIndent));){for(S=!1,x=0,w=_.length;x<w;x++)if(_[x](e,i,n,!0)){S=!0;break}if(S)break;if(m){if((d=at(e,i))<0)break}else if((d=st(e,i))<0)break;if(f!==e.src.charCodeAt(d-1))break}return e.tokens.push({type:m?"ordered_list_close":"bullet_list_close",level:--e.level}),b[1]=i,e.line=i,E&&function(e,t){var n,r,i=e.level+2;for(n=t+2,r=e.tokens.length-2;n<r;n++)e.tokens[n].level===i&&"paragraph_open"===e.tokens[n].type&&(e.tokens[n+2].tight=!0,e.tokens[n].tight=!0,n+=2)}(e,g),!0},["paragraph","blockquote"]],["footnote",function(e,t,n,r){var i,s,a,o,l,u=e.bMarks[t]+e.tShift[t],c=e.eMarks[t];if(u+4>c||91!==e.src.charCodeAt(u)||94!==e.src.charCodeAt(u+1)||e.level>=e.options.maxNesting)return!1;for(o=u+2;o<c;o++){if(32===e.src.charCodeAt(o))return!1;if(93===e.src.charCodeAt(o))break}return!(o===u+2||o+1>=c||58!==e.src.charCodeAt(++o)||(r||(o++,e.env.footnotes||(e.env.footnotes={}),e.env.footnotes.refs||(e.env.footnotes.refs={}),l=e.src.slice(u+2,o-2),e.env.footnotes.refs[":"+l]=-1,e.tokens.push({type:"footnote_reference_open",label:l,level:e.level++}),i=e.bMarks[t],s=e.tShift[t],a=e.parentType,e.tShift[t]=e.skipSpaces(o)-o,e.bMarks[t]=o,e.blkIndent+=4,e.parentType="footnote",e.tShift[t]<e.blkIndent&&(e.tShift[t]+=e.blkIndent,e.bMarks[t]-=e.blkIndent),e.parser.tokenize(e,t,n,!0),e.parentType=a,e.blkIndent-=4,e.tShift[t]=s,e.bMarks[t]=i,e.tokens.push({type:"footnote_reference_close",level:--e.level})),0))},["paragraph"]],["heading",function(e,t,n,r){var i,s,a,o=e.bMarks[t]+e.tShift[t],l=e.eMarks[t];if(o>=l||35!==(i=e.src.charCodeAt(o))||o>=l)return!1;for(s=1,i=e.src.charCodeAt(++o);35===i&&o<l&&s<=6;)s++,i=e.src.charCodeAt(++o);return!(s>6||o<l&&32!==i||(r||(l=e.skipCharsBack(l,32,o),(a=e.skipCharsBack(l,35,o))>o&&32===e.src.charCodeAt(a-1)&&(l=a),e.line=t+1,e.tokens.push({type:"heading_open",hLevel:s,lines:[t,e.line],level:e.level}),o<l&&e.tokens.push({type:"inline",content:e.src.slice(o,l).trim(),level:e.level+1,lines:[t,e.line],children:[]}),e.tokens.push({type:"heading_close",hLevel:s,level:e.level})),0))},["paragraph","blockquote"]],["lheading",function(e,t,n){var r,i,s,a=t+1;return!(a>=n||e.tShift[a]<e.blkIndent||e.tShift[a]-e.blkIndent>3||(i=e.bMarks[a]+e.tShift[a],s=e.eMarks[a],i>=s)||(r=e.src.charCodeAt(i),45!==r&&61!==r)||(i=e.skipChars(i,r),i=e.skipSpaces(i),i<s)||(i=e.bMarks[t]+e.tShift[t],e.line=a+1,e.tokens.push({type:"heading_open",hLevel:61===r?1:2,lines:[t,e.line],level:e.level}),e.tokens.push({type:"inline",content:e.src.slice(i,e.eMarks[t]).trim(),level:e.level+1,lines:[t,e.line-1],children:[]}),e.tokens.push({type:"heading_close",hLevel:61===r?1:2,level:e.level}),0))}],["htmlblock",function(e,t,n,r){var i,s,a,o=e.bMarks[t],l=e.eMarks[t],u=e.tShift[t];if(o+=u,!e.options.html||u>3||o+2>=l||60!==e.src.charCodeAt(o))return!1;if(33===(i=e.src.charCodeAt(o+1))||63===i){if(r)return!0}else{if(47!==i&&!function(e){var t=32|e;return t>=97&&t<=122}(i))return!1;if(47===i){if(!(s=e.src.slice(o,l).match(ut)))return!1}else if(!(s=e.src.slice(o,l).match(lt)))return!1;if(!0!==ot[s[1].toLowerCase()])return!1;if(r)return!0}for(a=t+1;a<e.lineMax&&!e.isEmpty(a);)a++;return e.line=a,e.tokens.push({type:"htmlblock",level:e.level,lines:[t,e.line],content:e.getLines(t,a,0,!0)}),!0},["paragraph","blockquote"]],["table",function(e,t,n,r){var i,s,a,o,l,u,c,d,p,h,f;if(t+2>n||(l=t+1,e.tShift[l]<e.blkIndent)||(a=e.bMarks[l]+e.tShift[l])>=e.eMarks[l]||124!==(i=e.src.charCodeAt(a))&&45!==i&&58!==i||(s=ct(e,t+1),!/^[-:| ]+$/.test(s))||(u=s.split("|"))<=2)return!1;for(d=[],o=0;o<u.length;o++){if(!(p=u[o].trim())){if(0===o||o===u.length-1)continue;return!1}if(!/^:?-+:?$/.test(p))return!1;58===p.charCodeAt(p.length-1)?d.push(58===p.charCodeAt(0)?"center":"right"):58===p.charCodeAt(0)?d.push("left"):d.push("")}if(-1===(s=ct(e,t).trim()).indexOf("|")||(u=s.replace(/^\||\|$/g,"").split("|"),d.length!==u.length))return!1;if(r)return!0;for(e.tokens.push({type:"table_open",lines:h=[t,0],level:e.level++}),e.tokens.push({type:"thead_open",lines:[t,t+1],level:e.level++}),e.tokens.push({type:"tr_open",lines:[t,t+1],level:e.level++}),o=0;o<u.length;o++)e.tokens.push({type:"th_open",align:d[o],lines:[t,t+1],level:e.level++}),e.tokens.push({type:"inline",content:u[o].trim(),lines:[t,t+1],level:e.level,children:[]}),e.tokens.push({type:"th_close",level:--e.level});for(e.tokens.push({type:"tr_close",level:--e.level}),e.tokens.push({type:"thead_close",level:--e.level}),e.tokens.push({type:"tbody_open",lines:f=[t+2,0],level:e.level++}),l=t+2;l<n&&!(e.tShift[l]<e.blkIndent||(s=ct(e,l).trim(),-1===s.indexOf("|")));l++){for(u=s.replace(/^\||\|$/g,"").split("|"),e.tokens.push({type:"tr_open",level:e.level++}),o=0;o<u.length;o++)e.tokens.push({type:"td_open",align:d[o],level:e.level++}),c=u[o].substring(124===u[o].charCodeAt(0)?1:0,124===u[o].charCodeAt(u[o].length-1)?u[o].length-1:u[o].length).trim(),e.tokens.push({type:"inline",content:c,level:e.level,children:[]}),e.tokens.push({type:"td_close",level:--e.level});e.tokens.push({type:"tr_close",level:--e.level})}return e.tokens.push({type:"tbody_close",level:--e.level}),e.tokens.push({type:"table_close",level:--e.level}),h[1]=f[1]=l,e.line=l,!0},["paragraph"]],["deflist",function(e,t,n,r){var i,s,a,o,l,u,c,d,p,h,f,m,v,g;if(r)return!(e.ddIndent<0)&&dt(e,t)>=0;if(c=t+1,e.isEmpty(c)&&++c>n||e.tShift[c]<e.blkIndent||(i=dt(e,c))<0||e.level>=e.options.maxNesting)return!1;u=e.tokens.length,e.tokens.push({type:"dl_open",lines:l=[t,0],level:e.level++}),a=t,s=c;e:for(;;){for(g=!0,v=!1,e.tokens.push({type:"dt_open",lines:[a,a],level:e.level++}),e.tokens.push({type:"inline",content:e.getLines(a,a+1,e.blkIndent,!1).trim(),level:e.level+1,lines:[a,a],children:[]}),e.tokens.push({type:"dt_close",level:--e.level});;){if(e.tokens.push({type:"dd_open",lines:o=[c,0],level:e.level++}),m=e.tight,p=e.ddIndent,d=e.blkIndent,f=e.tShift[s],h=e.parentType,e.blkIndent=e.ddIndent=e.tShift[s]+2,e.tShift[s]=i-e.bMarks[s],e.tight=!0,e.parentType="deflist",e.parser.tokenize(e,s,n,!0),(!e.tight||v)&&(g=!1),v=e.line-s>1&&e.isEmpty(e.line-1),e.tShift[s]=f,e.tight=m,e.parentType=h,e.blkIndent=d,e.ddIndent=p,e.tokens.push({type:"dd_close",level:--e.level}),o[1]=c=e.line,c>=n||e.tShift[c]<e.blkIndent)break e;if((i=dt(e,c))<0)break;s=c}if(c>=n||(a=c,e.isEmpty(a))||e.tShift[a]<e.blkIndent||(s=a+1)>=n||(e.isEmpty(s)&&s++,s>=n)||e.tShift[s]<e.blkIndent||(i=dt(e,s))<0)break}return e.tokens.push({type:"dl_close",level:--e.level}),l[1]=c,e.line=c,g&&function(e,t){var n,r,i=e.level+2;for(n=t+2,r=e.tokens.length-2;n<r;n++)e.tokens[n].level===i&&"paragraph_open"===e.tokens[n].type&&(e.tokens[n+2].tight=!0,e.tokens[n].tight=!0,n+=2)}(e,u),!0},["paragraph"]],["paragraph",function(e,t){var n,r,i,s,a,o,l=t+1;if(l<(n=e.lineMax)&&!e.isEmpty(l))for(o=e.parser.ruler.getRules("paragraph");l<n&&!e.isEmpty(l);l++)if(!(e.tShift[l]-e.blkIndent>3)){for(i=!1,s=0,a=o.length;s<a;s++)if(o[s](e,l,n,!0)){i=!0;break}if(i)break}return r=e.getLines(t,l,e.blkIndent,!1).trim(),e.line=l,r.length&&(e.tokens.push({type:"paragraph_open",tight:!1,lines:[t,e.line],level:e.level}),e.tokens.push({type:"inline",content:r,level:e.level+1,lines:[t,e.line],children:[]}),e.tokens.push({type:"paragraph_close",tight:!1,level:e.level})),!0}]];function ht(){this.ruler=new je;for(var e=0;e<pt.length;e++)this.ruler.push(pt[e][0],pt[e][1],{alt:(pt[e][2]||[]).slice()})}ht.prototype.tokenize=function(e,t,n){for(var r,i=this.ruler.getRules(""),s=i.length,a=t,o=!1;a<n&&(e.line=a=e.skipEmptyLines(a),!(a>=n||e.tShift[a]<e.blkIndent));){for(r=0;r<s&&!i[r](e,a,n,!1);r++);if(e.tight=!o,e.isEmpty(e.line-1)&&(o=!0),(a=e.line)<n&&e.isEmpty(a)){if(o=!0,++a<n&&"list"===e.parentType&&e.isEmpty(a))break;e.line=a}}};var ft=/[\n\t]/g,mt=/\r[\n\u0085]|[\u2424\u2028\u0085]/g,vt=/\u00a0/g;function gt(e){switch(e){case 10:case 92:case 96:case 42:case 95:case 94:case 91:case 93:case 33:case 38:case 60:case 62:case 123:case 125:case 36:case 37:case 64:case 126:case 43:case 61:case 58:return!0;default:return!1}}ht.prototype.parse=function(e,t,n,r){var i,s=0,a=0;if(!e)return[];(e=(e=e.replace(vt," ")).replace(mt,"\n")).indexOf("\t")>=0&&(e=e.replace(ft,(function(t,n){var r;return 10===e.charCodeAt(n)?(s=n+1,a=0,t):(r=" ".slice((n-s-a)%4),a=n-s+1,r)}))),i=new it(e,this,t,n,r),this.tokenize(i,i.line,i.lineMax)};for(var yt=[],bt=0;bt<256;bt++)yt.push(0);function kt(e){return e>=48&&e<=57||e>=65&&e<=90||e>=97&&e<=122}function _t(e,t){var n,r,i,s=t,a=!0,o=!0,l=e.posMax,u=e.src.charCodeAt(t);for(n=t>0?e.src.charCodeAt(t-1):-1;s<l&&e.src.charCodeAt(s)===u;)s++;return s>=l&&(a=!1),(i=s-t)>=4?a=o=!1:((32===(r=s<l?e.src.charCodeAt(s):-1)||10===r)&&(a=!1),(32===n||10===n)&&(o=!1),95===u&&(kt(n)&&(a=!1),kt(r)&&(o=!1))),{can_open:a,can_close:o,delims:i}}"\\!\"#$%&'()*+,./:;<=>?@[]^_`{|}~-".split("").forEach((function(e){yt[e.charCodeAt(0)]=1}));var xt=/\\([ \\!"#$%&'()*+,.\/:;<=>?@[\]^_`{|}~-])/g,wt=/\\([ \\!"#$%&'()*+,.\/:;<=>?@[\]^_`{|}~-])/g,St=["coap","doi","javascript","aaa","aaas","about","acap","cap","cid","crid","data","dav","dict","dns","file","ftp","geo","go","gopher","h323","http","https","iax","icap","im","imap","info","ipp","iris","iris.beep","iris.xpc","iris.xpcs","iris.lwz","ldap","mailto","mid","msrp","msrps","mtqp","mupdate","news","nfs","ni","nih","nntp","opaquelocktoken","pop","pres","rtsp","service","session","shttp","sieve","sip","sips","sms","snmp","soap.beep","soap.beeps","tag","tel","telnet","tftp","thismessage","tn3270","tip","tv","urn","vemmi","ws","wss","xcon","xcon-userid","xmlrpc.beep","xmlrpc.beeps","xmpp","z39.50r","z39.50s","adiumxtra","afp","afs","aim","apt","attachment","aw","beshare","bitcoin","bolo","callto","chrome","chrome-extension","com-eventbrite-attendee","content","cvs","dlna-playsingle","dlna-playcontainer","dtn","dvb","ed2k","facetime","feed","finger","fish","gg","git","gizmoproject","gtalk","hcp","icon","ipn","irc","irc6","ircs","itms","jar","jms","keyparc","lastfm","ldaps","magnet","maps","market","message","mms","ms-help","msnim","mumble","mvn","notes","oid","palm","paparazzi","platform","proxy","psyc","query","res","resource","rmi","rsync","rtmp","secondlife","sftp","sgn","skype","smb","soldat","spotify","ssh","steam","svn","teamspeak","things","udp","unreal","ut2004","ventrilo","view-source","webcal","wtai","wyciwyg","xfire","xri","ymsgr"],Et=/^<([a-zA-Z0-9.!#$%&'*+\/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*)>/,Ct=/^<([a-zA-Z.\-]{1,25}):([^<>\x00-\x20]*)>/;function Mt(e,t){return e=e.source,t=t||"",function n(r,i){return r?(i=i.source||i,e=e.replace(r,i),n):new RegExp(e,t)}}var Tt=Mt(/(?:unquoted|single_quoted|double_quoted)/)("unquoted",/[^"'=<>`\x00-\x20]+/)("single_quoted",/'[^']*'/)("double_quoted",/"[^"]*"/)(),At=Mt(/(?:\s+attr_name(?:\s*=\s*attr_value)?)/)("attr_name",/[a-zA-Z_:][a-zA-Z0-9:._-]*/)("attr_value",Tt)(),Lt=Mt(/<[A-Za-z][A-Za-z0-9]*attribute*\s*\/?>/)("attribute",At)(),It=Mt(/^(?:open_tag|close_tag|comment|processing|declaration|cdata)/)("open_tag",Lt)("close_tag",/<\/[A-Za-z][A-Za-z0-9]*\s*>/)("comment",/<!---->|<!--(?:-?[^>-])(?:-?[^-])*-->/)("processing",/<[?].*?[?]>/)("declaration",/<![A-Z]+\s+[^>]*>/)("cdata",/<!\[CDATA\[[\s\S]*?\]\]>/)(),Ot=/^&#((?:x[a-f0-9]{1,8}|[0-9]{1,8}));/i,Rt=/^&([a-z][a-z0-9]{1,31});/i,Nt=[["text",function(e,t){for(var n=e.pos;n<e.posMax&&!gt(e.src.charCodeAt(n));)n++;return n!==e.pos&&(t||(e.pending+=e.src.slice(e.pos,n)),e.pos=n,!0)}],["newline",function(e,t){var n,r,i=e.pos;if(10!==e.src.charCodeAt(i))return!1;if(n=e.pending.length-1,r=e.posMax,!t)if(n>=0&&32===e.pending.charCodeAt(n))if(n>=1&&32===e.pending.charCodeAt(n-1)){for(var s=n-2;s>=0;s--)if(32!==e.pending.charCodeAt(s)){e.pending=e.pending.substring(0,s+1);break}e.push({type:"hardbreak",level:e.level})}else e.pending=e.pending.slice(0,-1),e.push({type:"softbreak",level:e.level});else e.push({type:"softbreak",level:e.level});for(i++;i<r&&32===e.src.charCodeAt(i);)i++;return e.pos=i,!0}],["escape",function(e,t){var n,r=e.pos,i=e.posMax;if(92!==e.src.charCodeAt(r))return!1;if(++r<i){if((n=e.src.charCodeAt(r))<256&&0!==yt[n])return t||(e.pending+=e.src[r]),e.pos+=2,!0;if(10===n){for(t||e.push({type:"hardbreak",level:e.level}),r++;r<i&&32===e.src.charCodeAt(r);)r++;return e.pos=r,!0}}return t||(e.pending+="\\"),e.pos++,!0}],["backticks",function(e,t){var n,r,i,s,a,o=e.pos;if(96!==e.src.charCodeAt(o))return!1;for(n=o,o++,r=e.posMax;o<r&&96===e.src.charCodeAt(o);)o++;for(i=e.src.slice(n,o),s=a=o;-1!==(s=e.src.indexOf("`",a));){for(a=s+1;a<r&&96===e.src.charCodeAt(a);)a++;if(a-s===i.length)return t||e.push({type:"code",content:e.src.slice(o,s).replace(/[ \n]+/g," ").trim(),block:!1,level:e.level}),e.pos=a,!0}return t||(e.pending+=i),e.pos+=i.length,!0}],["del",function(e,t){var n,r,i,s,a,o=e.posMax,l=e.pos;if(126!==e.src.charCodeAt(l)||t||l+4>=o||126!==e.src.charCodeAt(l+1)||e.level>=e.options.maxNesting||(s=l>0?e.src.charCodeAt(l-1):-1,a=e.src.charCodeAt(l+2),126===s)||126===a||32===a||10===a)return!1;for(r=l+2;r<o&&126===e.src.charCodeAt(r);)r++;if(r>l+3)return e.pos+=r-l,t||(e.pending+=e.src.slice(l,r)),!0;for(e.pos=l+2,i=1;e.pos+1<o;){if(126===e.src.charCodeAt(e.pos)&&126===e.src.charCodeAt(e.pos+1)&&(s=e.src.charCodeAt(e.pos-1),126!==(a=e.pos+2<o?e.src.charCodeAt(e.pos+2):-1)&&126!==s&&(32!==s&&10!==s?i--:32!==a&&10!==a&&i++,i<=0))){n=!0;break}e.parser.skipToken(e)}return n?(e.posMax=e.pos,e.pos=l+2,t||(e.push({type:"del_open",level:e.level++}),e.parser.tokenize(e),e.push({type:"del_close",level:--e.level})),e.pos=e.posMax+2,e.posMax=o,!0):(e.pos=l,!1)}],["ins",function(e,t){var n,r,i,s,a,o=e.posMax,l=e.pos;if(43!==e.src.charCodeAt(l)||t||l+4>=o||43!==e.src.charCodeAt(l+1)||e.level>=e.options.maxNesting||(s=l>0?e.src.charCodeAt(l-1):-1,a=e.src.charCodeAt(l+2),43===s)||43===a||32===a||10===a)return!1;for(r=l+2;r<o&&43===e.src.charCodeAt(r);)r++;if(r!==l+2)return e.pos+=r-l,t||(e.pending+=e.src.slice(l,r)),!0;for(e.pos=l+2,i=1;e.pos+1<o;){if(43===e.src.charCodeAt(e.pos)&&43===e.src.charCodeAt(e.pos+1)&&(s=e.src.charCodeAt(e.pos-1),43!==(a=e.pos+2<o?e.src.charCodeAt(e.pos+2):-1)&&43!==s&&(32!==s&&10!==s?i--:32!==a&&10!==a&&i++,i<=0))){n=!0;break}e.parser.skipToken(e)}return n?(e.posMax=e.pos,e.pos=l+2,t||(e.push({type:"ins_open",level:e.level++}),e.parser.tokenize(e),e.push({type:"ins_close",level:--e.level})),e.pos=e.posMax+2,e.posMax=o,!0):(e.pos=l,!1)}],["mark",function(e,t){var n,r,i,s,a,o=e.posMax,l=e.pos;if(61!==e.src.charCodeAt(l)||t||l+4>=o||61!==e.src.charCodeAt(l+1)||e.level>=e.options.maxNesting||(s=l>0?e.src.charCodeAt(l-1):-1,a=e.src.charCodeAt(l+2),61===s)||61===a||32===a||10===a)return!1;for(r=l+2;r<o&&61===e.src.charCodeAt(r);)r++;if(r!==l+2)return e.pos+=r-l,t||(e.pending+=e.src.slice(l,r)),!0;for(e.pos=l+2,i=1;e.pos+1<o;){if(61===e.src.charCodeAt(e.pos)&&61===e.src.charCodeAt(e.pos+1)&&(s=e.src.charCodeAt(e.pos-1),61!==(a=e.pos+2<o?e.src.charCodeAt(e.pos+2):-1)&&61!==s&&(32!==s&&10!==s?i--:32!==a&&10!==a&&i++,i<=0))){n=!0;break}e.parser.skipToken(e)}return n?(e.posMax=e.pos,e.pos=l+2,t||(e.push({type:"mark_open",level:e.level++}),e.parser.tokenize(e),e.push({type:"mark_close",level:--e.level})),e.pos=e.posMax+2,e.posMax=o,!0):(e.pos=l,!1)}],["emphasis",function(e,t){var n,r,i,s,a,o,l,u=e.posMax,c=e.pos,d=e.src.charCodeAt(c);if(95!==d&&42!==d||t)return!1;if(n=(l=_t(e,c)).delims,!l.can_open)return e.pos+=n,t||(e.pending+=e.src.slice(c,e.pos)),!0;if(e.level>=e.options.maxNesting)return!1;for(e.pos=c+n,o=[n];e.pos<u;)if(e.src.charCodeAt(e.pos)!==d)e.parser.skipToken(e);else{if(r=(l=_t(e,e.pos)).delims,l.can_close){for(s=o.pop(),a=r;s!==a;){if(a<s){o.push(s-a);break}if(a-=s,0===o.length)break;e.pos+=s,s=o.pop()}if(0===o.length){n=s,i=!0;break}e.pos+=r;continue}l.can_open&&o.push(r),e.pos+=r}return i?(e.posMax=e.pos,e.pos=c+n,t||((2===n||3===n)&&e.push({type:"strong_open",level:e.level++}),(1===n||3===n)&&e.push({type:"em_open",level:e.level++}),e.parser.tokenize(e),(1===n||3===n)&&e.push({type:"em_close",level:--e.level}),(2===n||3===n)&&e.push({type:"strong_close",level:--e.level})),e.pos=e.posMax+n,e.posMax=u,!0):(e.pos=c,!1)}],["sub",function(e,t){var n,r,i=e.posMax,s=e.pos;if(126!==e.src.charCodeAt(s)||t||s+2>=i||e.level>=e.options.maxNesting)return!1;for(e.pos=s+1;e.pos<i;){if(126===e.src.charCodeAt(e.pos)){n=!0;break}e.parser.skipToken(e)}return!n||s+1===e.pos||(r=e.src.slice(s+1,e.pos)).match(/(^|[^\\])(\\\\)*\s/)?(e.pos=s,!1):(e.posMax=e.pos,e.pos=s+1,t||e.push({type:"sub",level:e.level,content:r.replace(xt,"$1")}),e.pos=e.posMax+1,e.posMax=i,!0)}],["sup",function(e,t){var n,r,i=e.posMax,s=e.pos;if(94!==e.src.charCodeAt(s)||t||s+2>=i||e.level>=e.options.maxNesting)return!1;for(e.pos=s+1;e.pos<i;){if(94===e.src.charCodeAt(e.pos)){n=!0;break}e.parser.skipToken(e)}return!n||s+1===e.pos||(r=e.src.slice(s+1,e.pos)).match(/(^|[^\\])(\\\\)*\s/)?(e.pos=s,!1):(e.posMax=e.pos,e.pos=s+1,t||e.push({type:"sup",level:e.level,content:r.replace(wt,"$1")}),e.pos=e.posMax+1,e.posMax=i,!0)}],["links",function(e,t){var n,r,i,s,a,o,l,u,c=!1,d=e.pos,p=e.posMax,h=e.pos,f=e.src.charCodeAt(h);if(33===f&&(c=!0,f=e.src.charCodeAt(++h)),91!==f||e.level>=e.options.maxNesting||(n=h+1,(r=Be(e,h))<0))return!1;if((o=r+1)<p&&40===e.src.charCodeAt(o)){for(o++;o<p&&(32===(u=e.src.charCodeAt(o))||10===u);o++);if(o>=p)return!1;for(h=o,Ue(e,o)?(s=e.linkContent,o=e.pos):s="",h=o;o<p&&(32===(u=e.src.charCodeAt(o))||10===u);o++);if(o<p&&h!==o&&ze(e,o))for(a=e.linkContent,o=e.pos;o<p&&(32===(u=e.src.charCodeAt(o))||10===u);o++);else a="";if(o>=p||41!==e.src.charCodeAt(o))return e.pos=d,!1;o++}else{if(e.linkLevel>0)return!1;for(;o<p&&(32===(u=e.src.charCodeAt(o))||10===u);o++);if(o<p&&91===e.src.charCodeAt(o)&&(h=o+1,(o=Be(e,o))>=0?i=e.src.slice(h,o++):o=h-1),i||(L(i)>"u"&&(o=r+1),i=e.src.slice(n,r)),!(l=e.env.references[He(i)]))return e.pos=d,!1;s=l.href,a=l.title}return t||(e.pos=n,e.posMax=r,c?e.push({type:"image",src:s,title:a,alt:e.src.substr(n,r-n),level:e.level}):(e.push({type:"link_open",href:s,title:a,level:e.level++}),e.linkLevel++,e.parser.tokenize(e),e.linkLevel--,e.push({type:"link_close",level:--e.level}))),e.pos=o,e.posMax=p,!0}],["footnote_inline",function(e,t){var n,r,i,s,a=e.posMax,o=e.pos;return!(o+2>=a||94!==e.src.charCodeAt(o)||91!==e.src.charCodeAt(o+1)||e.level>=e.options.maxNesting||(n=o+2,r=Be(e,o+1),r<0)||(t||(e.env.footnotes||(e.env.footnotes={}),e.env.footnotes.list||(e.env.footnotes.list=[]),i=e.env.footnotes.list.length,e.pos=n,e.posMax=r,e.push({type:"footnote_ref",id:i,level:e.level}),e.linkLevel++,s=e.tokens.length,e.parser.tokenize(e),e.env.footnotes.list[i]={tokens:e.tokens.splice(s)},e.linkLevel--),e.pos=r+1,e.posMax=a,0))}],["footnote_ref",function(e,t){var n,r,i,s,a=e.posMax,o=e.pos;if(o+3>a||!e.env.footnotes||!e.env.footnotes.refs||91!==e.src.charCodeAt(o)||94!==e.src.charCodeAt(o+1)||e.level>=e.options.maxNesting)return!1;for(r=o+2;r<a;r++){if(32===e.src.charCodeAt(r)||10===e.src.charCodeAt(r))return!1;if(93===e.src.charCodeAt(r))break}return!(r===o+2||r>=a||(r++,n=e.src.slice(o+2,r-1),L(e.env.footnotes.refs[":"+n])>"u")||(t||(e.env.footnotes.list||(e.env.footnotes.list=[]),e.env.footnotes.refs[":"+n]<0?(i=e.env.footnotes.list.length,e.env.footnotes.list[i]={label:n,count:0},e.env.footnotes.refs[":"+n]=i):i=e.env.footnotes.refs[":"+n],s=e.env.footnotes.list[i].count,e.env.footnotes.list[i].count++,e.push({type:"footnote_ref",id:i,subId:s,level:e.level})),e.pos=r,e.posMax=a,0))}],["autolink",function(e,t){var n,r,i,s,a,o=e.pos;return!(60!==e.src.charCodeAt(o)||(n=e.src.slice(o),n.indexOf(">")<0)||((r=n.match(Ct))?St.indexOf(r[1].toLowerCase())<0||(s=r[0].slice(1,-1),a=qe(s),!e.parser.validateLink(s))||(t||(e.push({type:"link_open",href:a,level:e.level}),e.push({type:"text",content:s,level:e.level+1}),e.push({type:"link_close",level:e.level})),e.pos+=r[0].length,0):!(i=n.match(Et))||(a=qe("mailto:"+(s=i[0].slice(1,-1))),!e.parser.validateLink(a)||(t||(e.push({type:"link_open",href:a,level:e.level}),e.push({type:"text",content:s,level:e.level+1}),e.push({type:"link_close",level:e.level})),e.pos+=i[0].length,0))))}],["htmltag",function(e,t){var n,r,i,s=e.pos;return!(!e.options.html||(i=e.posMax,60!==e.src.charCodeAt(s)||s+2>=i)||(n=e.src.charCodeAt(s+1),33!==n&&63!==n&&47!==n&&!function(e){var t=32|e;return t>=97&&t<=122}(n))||(r=e.src.slice(s).match(It),!r)||(t||e.push({type:"htmltag",content:e.src.slice(s,s+r[0].length),level:e.level}),e.pos+=r[0].length,0))}],["entity",function(e,t){var n,r,i=e.pos,s=e.posMax;if(38!==e.src.charCodeAt(i))return!1;if(i+1<s)if(35===e.src.charCodeAt(i+1)){if(r=e.src.slice(i).match(Ot))return t||(n="x"===r[1][0].toLowerCase()?parseInt(r[1].slice(1),16):parseInt(r[1],10),e.pending+=_e(n)?xe(n):xe(65533)),e.pos+=r[0].length,!0}else if(r=e.src.slice(i).match(Rt)){var a=ve(r[1]);if(r[1]!==a)return t||(e.pending+=a),e.pos+=r[0].length,!0}return t||(e.pending+="&"),e.pos++,!0}]];function Pt(){this.ruler=new je;for(var e=0;e<Nt.length;e++)this.ruler.push(Nt[e][0],Nt[e][1]);this.validateLink=jt}function jt(e){var t=e.trim().toLowerCase();return!(-1!==(t=Ce(t)).indexOf(":")&&-1!==["vbscript","javascript","file","data"].indexOf(t.split(":")[0]))}Pt.prototype.skipToken=function(e){var t,n,r=this.ruler.getRules(""),i=r.length,s=e.pos;if((n=e.cacheGet(s))>0)e.pos=n;else{for(t=0;t<i;t++)if(r[t](e,!0))return void e.cacheSet(s,e.pos);e.pos++,e.cacheSet(s,e.pos)}},Pt.prototype.tokenize=function(e){for(var t,n,r=this.ruler.getRules(""),i=r.length,s=e.posMax;e.pos<s;){for(n=0;n<i&&!(t=r[n](e,!1));n++);if(t){if(e.pos>=s)break}else e.pending+=e.src[e.pos++]}e.pending&&e.pushPending()},Pt.prototype.parse=function(e,t,n,r){var i=new De(e,this,t,n,r);this.tokenize(i)};var Dt={default:{options:{html:!1,xhtmlOut:!1,breaks:!1,langPrefix:"language-",linkTarget:"",typographer:!1,quotes:"“”‘’",highlight:null,maxNesting:20},components:{core:{rules:["block","inline","references","replacements","smartquotes","references","abbr2","footnote_tail"]},block:{rules:["blockquote","code","fences","footnote","heading","hr","htmlblock","lheading","list","paragraph","table"]},inline:{rules:["autolink","backticks","del","emphasis","entity","escape","footnote_ref","htmltag","links","newline","text"]}}},full:{options:{html:!1,xhtmlOut:!1,breaks:!1,langPrefix:"language-",linkTarget:"",typographer:!1,quotes:"“”‘’",highlight:null,maxNesting:20},components:{core:{},block:{},inline:{}}},commonmark:{options:{html:!0,xhtmlOut:!0,breaks:!1,langPrefix:"language-",linkTarget:"",typographer:!1,quotes:"“”‘’",highlight:null,maxNesting:20},components:{core:{rules:["block","inline","references","abbr2"]},block:{rules:["blockquote","code","fences","heading","hr","htmlblock","lheading","list","paragraph"]},inline:{rules:["autolink","backticks","emphasis","entity","escape","htmltag","links","newline","text"]}}}};function Bt(e,t,n){this.src=t,this.env=n,this.options=e.options,this.tokens=[],this.inlineMode=!1,this.inline=e.inline,this.block=e.block,this.renderer=e.renderer,this.typographer=e.typographer}function Ft(e,t){"string"!=typeof e&&(t=e,e="default"),t&&null!=t.linkify&&console.warn("linkify option is removed. Use linkify plugin instead:\n\nimport Remarkable from 'remarkable';\nimport linkify from 'remarkable/linkify';\nnew Remarkable().use(linkify)\n"),this.inline=new Pt,this.block=new ht,this.core=new rt,this.renderer=new Pe,this.ruler=new je,this.options={},this.configure(Dt[e]),this.set(t||{})}Ft.prototype.set=function(e){ye(this.options,e)},Ft.prototype.configure=function(e){var t=this;if(!e)throw new Error("Wrong `remarkable` preset, check name/content");e.options&&t.set(e.options),e.components&&Object.keys(e.components).forEach((function(n){e.components[n].rules&&t[n].ruler.enable(e.components[n].rules,!0)}))},Ft.prototype.use=function(e,t){return e(this,t),this},Ft.prototype.parse=function(e,t){var n=new Bt(this,e,t);return this.core.process(n),n.tokens},Ft.prototype.render=function(e,t){return t=t||{},this.renderer.render(this.parse(e,t),this.options,t)},Ft.prototype.parseInline=function(e,t){var n=new Bt(this,e,t);return n.inlineMode=!0,this.core.process(n),n.tokens},Ft.prototype.renderInline=function(e,t){return t=t||{},this.renderer.render(this.parseInline(e,t),this.options,t)};var qt=function(){function e(){I(this,e)}return R(e,null,[{key:"instantiate",value:function(){var e=window.hljs;return new Ft(e?{highlight:function(t,n){if(n&&e.getLanguage(n))try{return e.highlight(n,t).value}catch(e){console.error("failed to setup the highlight dependency")}try{return e.highlightAuto(t).value}catch(e){console.error("failed to automatically highlight messages")}return""},html:!1,xhtmlOut:!1,breaks:!1,langPrefix:"language-",linkTarget:"_blank",typographer:!0}:{linkTarget:"_blank"})}},{key:"createNew",value:function(){var t=e.instantiate();return t.inline.validateLink=function(){return!0},t}}]),e}(),Ut=function(){function e(){I(this,e)}return R(e,null,[{key:"addMessage",value:function(e,t,n,r){var i;e.elementRef.appendChild(t.outerContainer),e.applyCustomStyles(t,r,!0,null==(i=e.messageStyles)?void 0:i[n]),e.elementRef.scrollTop=e.elementRef.scrollHeight}},{key:"wrapInLink",value:function(t,n,r){var i=document.createElement("a");return i.href=n,i.download=r||e.DEFAULT_FILE_NAME,i.target="_blank",i.appendChild(t),i}},{key:"isNonLinkableDataUrl",value:function(e,t){return!(!t.startsWith("data")||"image"===e)&&("any"===e&&t.startsWith("data:text/javascript")||!t.startsWith("data:image"))}},{key:"processContent",value:function(t,n,r,i){return!r||e.isNonLinkableDataUrl(t,r)?n:e.wrapInLink(n,r,i)}},{key:"waitToLoadThenScroll",value:function(e){setTimeout((function(){e.scrollTop=e.scrollHeight}),60)}},{key:"scrollDownOnImageLoad",value:function(t,n){if(t.startsWith("data"))e.waitToLoadThenScroll(n);else try{fetch(t,{mode:"no-cors"}).catch((function(){})).finally((function(){e.waitToLoadThenScroll(n)}))}catch(e){n.scrollTop=n.scrollHeight}}},{key:"reAddFileRefToObject",value:function(e,t){var n;null==(n=e.files)||n.forEach((function(e,n){var r;e.ref&&null!=(r=t.message.files)&&r[n]&&(t.message.files[n].ref=e.ref)}))}},{key:"removeFileRef",value:function(e){var t=T({},e);return delete t.ref,t}}]),e}();Ut.DEFAULT_FILE_NAME="file";var zt=Ut,Ht=function(){function e(){I(this,e)}return R(e,null,[{key:"onNewMessage",value:function(e,t,n){var r,i=JSON.parse(JSON.stringify({message:t,isInitial:n}));zt.reAddFileRefToObject(t,i),null==(r=e.onNewMessage)||r.call(e,i),e.dispatchEvent(new CustomEvent("new-message",{detail:i}))}},{key:"onClearMessages",value:function(e){var t;null==(t=e.onClearMessages)||t.call(e),e.dispatchEvent(new CustomEvent("clear-messages"))}},{key:"onRender",value:function(e){var t;null==(t=e.onComponentRender)||t.call(e,e),e.dispatchEvent(new CustomEvent("render",{detail:e}))}},{key:"onError",value:function(e,t){var n;null==(n=e.onError)||n.call(e,t),e.dispatchEvent(new CustomEvent("error",{detail:t}))}}]),e}(),Vt=function(){function e(){I(this,e)}return R(e,null,[{key:"applyCustomStylesToElements",value:function(e,t,n){if(n&&(Object.assign(e.outerContainer.style,n.outerContainer),Object.assign(e.innerContainer.style,n.innerContainer),Object.assign(e.bubbleElement.style,n.bubble),t)){var r=e.bubbleElement.children[0],i="a"!==r.tagName.toLocaleLowerCase()?r:r.children[0];Object.assign(i.style,n.media)}}},{key:"applySideStyles",value:function(t,n,r,i){i&&(e.applyCustomStylesToElements(t,r,i.shared),n===ue.USER_ROLE?e.applyCustomStylesToElements(t,r,i.user):(e.applyCustomStylesToElements(t,r,i.ai),e.applyCustomStylesToElements(t,r,i[n])))}},{key:"isMessageSideStyles",value:function(e){return!!(e.ai||e.shared||e.user)}},{key:"applyCustomStyles",value:function(t,n,r,i,s){var a;s&&t.default!==s?e.isMessageSideStyles(s)?(e.applySideStyles(n,r,i,t.default),e.applySideStyles(n,r,i,s)):(e.applyCustomStylesToElements(n,i,null==(a=t.default)?void 0:a.shared),e.applyCustomStylesToElements(n,i,s)):e.applySideStyles(n,r,i,t.default)}},{key:"extractParticularSharedStyles",value:function(e,t){if(null!=t&&t.shared){var n=t.shared,r={outerContainer:{},innerContainer:{},bubble:{},media:{}};return e.forEach((function(e){var t,i,s,a;r.outerContainer[e]=(null==(t=n.outerContainer)?void 0:t[e])||"",r.innerContainer[e]=(null==(i=n.innerContainer)?void 0:i[e])||"",r.bubble[e]=(null==(s=n.bubble)?void 0:s[e])||"",r.media[e]=(null==(a=n.media)?void 0:a[e])||""})),r}}}]),e}(),Gt=function(){function e(t){var n=this;I(this,e),this.messageElementRefs=[],this.messages=[],this.htmlClassUtilities={},this.textElementsToText=[],this.elementRef=e.createContainerElement(),this.messageStyles=t.messageStyles,this._remarkable=qt.createNew(),this._avatars=t.avatars,this._names=t.names,this._onNewMessage=Ht.onNewMessage.bind(this,t),t.htmlClassUtilities&&(this.htmlClassUtilities=t.htmlClassUtilities),setTimeout((function(){n.submitUserMessage=t.submitUserMessage}))}return R(e,[{key:"addNewTextMessage",value:function(e,t,n){if(null!=n&&n.status){var r=this.overwriteText(t,e,this.messageElementRefs);if(r)return r;n.status=!1}var i=this.createAndAppendNewMessageElement(e,t);return i.bubbleElement.classList.add("text-message"),this.applyCustomStyles(i,t,!1),ue.fillEmptyMessageElement(i.bubbleElement,e),this.textElementsToText.push([i,e]),i}},{key:"overwriteText",value:function(e,t,n){var r=ue.overwriteMessage(this.messages,n,t,e,"text","text-message");if(r){this.renderText(r.bubbleElement,t);var i=ue.getLastTextToElement(this.textElementsToText,r);i&&(i[1]=t)}return r}},{key:"createAndAppendNewMessageElement",value:function(e,t){var n=this,r=this.createNewMessageElement(e,t);return this.elementRef.appendChild(r.outerContainer),setTimeout((function(){return $.scrollToBottom(n.elementRef)})),r}},{key:"createNewMessageElement",value:function(t,n){var r;null==(r=this._introPanel)||r.hide();var i=this.messageElementRefs[this.messageElementRefs.length-1];return e.isTemporaryElement(i)&&(i.outerContainer.remove(),this.messageElementRefs.pop()),this.createMessageElements(t,n)}},{key:"createMessageElements",value:function(t,n){var r=e.createBaseElements(),i=r.outerContainer,s=r.innerContainer,a=r.bubbleElement;return i.appendChild(s),this.addInnerContainerElements(a,t,n),this.messageElementRefs.push(r),r}},{key:"addInnerContainerElements",value:function(e,t,n){var r;return(null==(r=this.messages[this.messages.length-1])?void 0:r.role)===n&&!this.isLastMessageError()&&ue.hideRoleElements(this.messageElementRefs,!!this._avatars,!!this._names),e.classList.add("message-bubble",ue.getRoleClass(n),n===ue.USER_ROLE?"user-message-text":"ai-message-text"),this.renderText(e,t),ue.addRoleElements(e,n,this._avatars,this._names),{bubbleElement:e}}},{key:"applyCustomStyles",value:function(e,t,n,r){e&&this.messageStyles&&Vt.applyCustomStyles(this.messageStyles,e,t,n,r)}},{key:"removeLastMessage",value:function(){this.messageElementRefs[this.messageElementRefs.length-1].outerContainer.remove(),this.messageElementRefs.pop()}},{key:"isLastMessageError",value:function(){var e;return null==(e=ue.getLastMessageBubbleElement(this.elementRef))?void 0:e.classList.contains("error-message-text")}},{key:"sendClientUpdate",value:function(e){var t,n=arguments.length>1&&void 0!==arguments[1]&&arguments[1];null==(t=this._onNewMessage)||t.call(this,e,n)}},{key:"renderText",value:function(e,t){e.innerHTML=this._remarkable.render(t),0===e.innerText.trim().length&&(e.innerText=t)}},{key:"refreshTextMessages",value:function(){var e=this;this._remarkable=qt.createNew(),this.textElementsToText.forEach((function(t){e.renderText(t[0].bubbleElement,t[1])}))}}],[{key:"createContainerElement",value:function(){var e=document.createElement("div");return e.id="messages",e}},{key:"isTemporaryElement",value:function(e){return(null==e?void 0:e.bubbleElement.classList.contains("loading-message-text"))||he.isElementTemporary(e)}},{key:"createBaseElements",value:function(){var e=document.createElement("div"),t=document.createElement("div");t.classList.add("inner-message-container"),e.appendChild(t),e.classList.add("outer-message-container");var n=document.createElement("div");return n.classList.add("message-bubble"),t.appendChild(n),{outerContainer:e,innerContainer:t,bubbleElement:n}}},{key:"createMessageContent",value:function(e){var t=e.text,n=e.files,r=e.html,i=e._sessionId,s={role:e.role||ue.AI_ROLE};return t&&(s.text=t),n&&(s.files=n),r&&(s.html=r),!t&&!n&&!r&&(s.text=""),i&&(s._sessionId=i),s}}]),e}(),Wt=function(){function e(t){I(this,e),this._fileAdded=!1,this._streamedContent="",this._streamType="",this._hasStreamEnded=!1,this._messages=t}return R(e,[{key:"upsertStreamedMessage",value:function(e){var t;if(!this._hasStreamEnded){if(void 0===(null==e?void 0:e.text)&&void 0===(null==e?void 0:e.html))return console.error(X.INVALID_STREAM_EVENT);var n=(null==e?void 0:e.text)||(null==e?void 0:e.html)||"",r=$.isScrollbarAtBottomOfElement(this._messages.elementRef),i=void 0!==(null==e?void 0:e.text)?"text":"html";if(this._elements||""!==this._streamedContent){if(this._streamType!==i)return console.error(X.INVALID_STREAM_EVENT_MIX);this.updateBasedOnType(n,i,null==(t=this._elements)?void 0:t.bubbleElement,null==e?void 0:e.overwrite)}else this.setInitialState(i,n,null==e?void 0:e.role);r&&$.scrollToBottom(this._messages.elementRef)}}},{key:"setInitialState",value:function(t,n,r){var i;this._streamType=t,null!==(i=r)&&void 0!==i||(r=ue.AI_ROLE),this._elements="text"===t?this._messages.addNewTextMessage(n,r):me.add(this._messages,n,r,this._messages.messageElementRefs),this._elements.bubbleElement.classList.add(e.MESSAGE_CLASS),this._streamedContent=n,this._activeMessageRole=r,this._message=A({role:this._activeMessageRole},t,this._streamedContent),this._messages.messages.push(this._message)}},{key:"updateBasedOnType",value:function(e,t,n){var r=arguments.length>3&&void 0!==arguments[3]&&arguments[3];ue.unfillEmptyMessageElement(n,e),("text"===t?this.updateText:this.updateHTML).bind(this)(e,n,r)}},{key:"updateText",value:function(e,t,n){this._streamedContent=n?e:this._streamedContent+e,this._messages.textElementsToText[this._messages.textElementsToText.length-1][1]=this._streamedContent,this._messages.renderText(t,this._streamedContent)}},{key:"updateHTML",value:function(t,n,r){if(r)this._streamedContent=t,n.innerHTML=t;else{var i=document.createElement("span");i.innerHTML=t,n.appendChild(i),this._streamedContent=e.HTML_CONTENT_PLACEHOLDER}}},{key:"finaliseStreamedMessage",value:function(){var t,n,r=this._messages.textElementsToText;if(!this._fileAdded||this._elements){if(!this._elements)throw Error(X.NO_VALID_STREAM_EVENTS_SENT);null!=(t=this._elements.bubbleElement)&&t.classList.contains(e.MESSAGE_CLASS)&&("text"===this._streamType?(r[r.length-1][1]=this._streamedContent,this._message&&(this._message.text=this._streamedContent),this._messages.textToSpeech&&te.speak(this._streamedContent,this._messages.textToSpeech)):"html"===this._streamType&&(this._streamedContent===e.HTML_CONTENT_PLACEHOLDER&&(this._streamedContent=(null==(n=this._elements.bubbleElement)?void 0:n.innerHTML)||""),this._elements&&fe.apply(this._messages,this._elements.outerContainer),this._message&&(this._message.html=this._streamedContent)),this._message&&this._messages.sendClientUpdate(Gt.createMessageContent(this._message),!1),this._hasStreamEnded=!0)}}},{key:"markFileAded",value:function(){this._fileAdded=!0}}]),e}();Wt.MESSAGE_CLASS="streamed-message",Wt.HTML_CONTENT_PLACEHOLDER="htmlplaceholder";var Kt=Wt,Yt=function(){function e(){I(this,e)}var t,n;return R(e,null,[{key:"tempRemoveContentHeader",value:(n=C(S().mark((function t(n,r,i){var s,a;return S().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(null!=n&&n.headers){t.next=2;break}throw new Error("Request settings have not been set up");case 2:return s=n.headers[e.CONTENT_TYPE],delete n.headers[e.CONTENT_TYPE],t.prev=4,t.next=7,r(i);case 7:a=t.sent,t.next=13;break;case 10:throw t.prev=10,t.t0=t.catch(4),n.headers[e.CONTENT_TYPE]=s,t.t0;case 13:return t.abrupt("return",(n.headers[e.CONTENT_TYPE]=s,a));case 14:case"end":return t.stop()}}),t,null,[[4,10]])}))),function(e,t,r){return n.apply(this,arguments)})},{key:"displayError",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"Service error, please try again.";if(console.error(t),"object"==L(t))return 0===Object.keys(t).length?e.addNewErrorMessage("service",n):e.addNewErrorMessage("service",JSON.stringify(t));e.addNewErrorMessage("service",t)}},{key:"fetch",value:function(e){function t(t,n,r,i){return e.apply(this,arguments)}return t.toString=function(){return e.toString()},t}((function(e,t,n,r){var i,s,a={method:(null==(i=e.requestSettings)?void 0:i.method)||"POST",headers:t};return"GET"!==a.method&&(a.body=n?JSON.stringify(r):r),e.requestSettings.credentials&&(a.credentials=e.requestSettings.credentials),fetch((null==(s=e.requestSettings)?void 0:s.url)||e.url||"",a)}))},{key:"processResponseByType",value:function(e){var t=e.headers.get("content-type");return null!=t&&t.includes("application/json")?e.json():null!=t&&t.includes("text/plain")||!t?e:e.blob()}},{key:"processRequestInterceptor",value:(t=C(S().mark((function e(t,n){var r,i,s,a;return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,null==(r=t.requestInterceptor)?void 0:r.call(t,n);case 2:if(e.t0=e.sent,e.t0){e.next=5;break}e.t0=n;case 5:return i=e.t0,s=i,a=i,e.abrupt("return",{body:s.body,headers:s.headers,error:a.error});case 9:case"end":return e.stop()}}),e)}))),function(e,n){return t.apply(this,arguments)})},{key:"validateResponseFormat",value:function(e){return e&&"object"==L(e)&&("string"==typeof e.error||"string"==typeof e.text||"string"==typeof e.html||Array.isArray(e.files))}},{key:"onInterceptorError",value:function(e,t,n){e.addNewErrorMessage("service",t),null==n||n()}}]),e}();Yt.CONTENT_TYPE="Content-Type";var Jt=Yt;function Zt(e,t){return Xt.apply(this,arguments)}function Xt(){return Xt=C(S().mark((function e(t,n){var r,i;return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:r=t.getReader();case 1:return e.next=3,r.read();case 3:if((i=e.sent).done){e.next=7;break}n(i.value);case 5:e.next=1;break;case 7:case"end":return e.stop()}}),e)}))),Xt.apply(this,arguments)}function Qt(e){var t,n,r,i=!1;return function(s){void 0===t?(t=s,n=0,r=-1):t=function(e,t){var n=new Uint8Array(e.length+t.length);return n.set(e),n.set(t,e.length),n}(t,s);for(var a=t.length,o=0;n<a;){i&&(10===t[n]&&(o=++n),i=!1);for(var l=-1;n<a&&-1===l;++n)switch(t[n]){case 58:-1===r&&(r=n-o);break;case 13:i=!0;case 10:l=n}if(-1===l)break;e(t.subarray(o,l),r),o=n,r=-1}o===a?t=void 0:0!==o&&(t=t.subarray(o),n-=o)}}function $t(e,t,n){var r={data:"",event:"",id:"",retry:void 0},i=new TextDecoder;return function(s,a){if(0===s.length)null==n||n(r),r={data:"",event:"",id:"",retry:void 0};else if(a>0){var o=i.decode(s.subarray(0,a)),l=a+(32===s[a+1]?2:1),u=i.decode(s.subarray(l));switch(o){case"data":r.data=r.data?r.data+"\n"+u:u;break;case"event":r.event=u;break;case"id":e(r.id=u);break;case"retry":var c=parseInt(u,10);isNaN(c)||t(r.retry=c)}}}}var en=globalThis&&globalThis.__rest||function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var i=0;for(r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]])}return n},tn="text/event-stream",nn="last-event-id";function rn(e,t){var n=t.signal,r=t.headers,i=t.onopen,s=t.onmessage,a=t.onclose,o=t.onerror,l=t.openWhenHidden,u=t.fetch,c=en(t,["signal","headers","onopen","onmessage","onclose","onerror","openWhenHidden","fetch"]);return new Promise((function(t,d){var p,h=Object.assign({},r);function f(){p.abort(),document.hidden||k()}h.accept||(h.accept=tn),l||document.addEventListener("visibilitychange",f);var m=1e3,v=0;function g(){document.removeEventListener("visibilitychange",f),window.clearTimeout(v),p.abort()}null==n||n.addEventListener("abort",(function(){g(),t()}));var y=null!=u?u:window.fetch,b=null!=i?i:sn;function k(){return _.apply(this,arguments)}function _(){return(_=C(S().mark((function n(){var r,i,l;return S().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return p=new AbortController,n.prev=1,n.next=4,y(e,Object.assign(Object.assign({},c),{headers:h,signal:p.signal}));case 4:return i=n.sent,n.next=7,b(i);case 7:return n.next=9,Zt(i.body,Qt($t((function(e){e?h[nn]=e:delete h[nn]}),(function(e){m=e}),s)));case 9:null==a||a(),g(),t(),n.next=17;break;case 14:if(n.prev=14,n.t0=n.catch(1),!p.signal.aborted)try{l=null!==(r=null==o?void 0:o(n.t0))&&void 0!==r?r:m,window.clearTimeout(v),v=window.setTimeout(k,l)}catch(e){g(),d(e)}case 17:case"end":return n.stop()}}),n,null,[[1,14]])})))).apply(this,arguments)}k()}))}function sn(e){var t=e.headers.get("content-type");if(null==t||!t.startsWith(tn))throw new Error("Expected content-type to be ".concat(tn,", Actual: ").concat(t))}var an=function(){function e(){I(this,e)}var t;return R(e,null,[{key:"request",value:(t=C(S().mark((function t(n,r,i){var s,a,o,l,u,c,d,p,h,f,m,v,g,y,b,k,_,x,w=arguments;return S().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return s=!(w.length>3&&void 0!==w[3])||w[3],p={body:r,headers:null==(a=n.requestSettings)?void 0:a.headers},t.next=4,Jt.processRequestInterceptor(n.deepChat,p);case 4:if(h=t.sent,f=h.body,m=h.headers,v=h.error,g=n.streamHandlers,y=g.onOpen,b=g.onClose,k=g.abortStream,!v){t.next=14;break}return t.abrupt("return",Jt.onInterceptorError(i,v,b));case 14:if(null==(o=n.requestSettings)||!o.handler){t.next=16;break}return t.abrupt("return",cn.stream(n,f,i));case 16:if((null==(l=n.requestSettings)?void 0:l.url)!==ln.URL){t.next=18;break}return t.abrupt("return",ln.requestStream(i,n.streamHandlers));case 18:_=new Kt(i),x=Jt.fetch.bind(this,n,m,s),rn((null==(u=n.requestSettings)?void 0:u.url)||n.url||"",{method:(null==(c=n.requestSettings)?void 0:c.method)||"POST",headers:m,credentials:null==(d=n.requestSettings)?void 0:d.credentials,body:s?JSON.stringify(f):f,openWhenHidden:!0,onopen:function(e){return C(S().mark((function t(){return S().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(!e.ok){t.next=2;break}return t.abrupt("return",y());case 2:return t.next=4,Jt.processResponseByType(e);case 4:throw t.sent;case 5:case"end":return t.stop()}}),t)})))()},onmessage:function(t){return C(S().mark((function r(){var s,a,o,l,u;return S().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:if(JSON.stringify(t.data)===JSON.stringify("[DONE]")){r.next=9;break}try{l=JSON.parse(t.data)}catch(e){l={}}return r.next=4,null==(a=(s=n.deepChat).responseInterceptor)?void 0:a.call(s,l);case 4:if(r.t0=r.sent,r.t0){r.next=7;break}r.t0=l;case 7:u=r.t0,null==(o=n.extractResultData)||o.call(n,u,x,f).then((function(t){n.asyncCallInProgress&&t&&""!==t.text?(e.simulate(i,n.streamHandlers,t),b(),n.asyncCallInProgress=!1):e.upsertWFiles(i,_.upsertStreamedMessage.bind(_),_,t)})).catch((function(e){return Jt.displayError(i,e)}));case 9:case"end":return r.stop()}}),r)})))()},onerror:function(e){throw b(),e},onclose:function(){n.asyncCallInProgress||(_.finaliseStreamedMessage(),b())},signal:k.signal}).catch((function(e){var t;i.isLastMessageError()||null==(t=n.extractResultData)||t.call(n,e).then((function(){Jt.displayError(i,e)})).catch((function(e){Jt.displayError(i,e)}))}));case 20:case"end":return t.stop()}}),t,this)}))),function(e,n,r){return t.apply(this,arguments)})},{key:"simulate",value:function(t,n,r){var i=n;if((r.files||r.html)&&t.addNewMessage(T({sendUpdate:!1,ignoreText:!0},r),!1),r.text){n.onOpen();var s=r.text.split("");e.populateMessages(s,new Kt(t),i)}}},{key:"populateMessages",value:function(t,n,r){var i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:0,s=t[i];if(s){n.upsertStreamedMessage({text:s});var a=setTimeout((function(){e.populateMessages(t,n,r,i+1)}),r.simulationInterim||6);r.abortStream.abort=function(){e.abort(a,n,r.onClose)}}else n.finaliseStreamedMessage(),r.onClose()}},{key:"isSimulation",value:function(e){return"object"==L(e)&&!!e.simulation}},{key:"isSimulatable",value:function(t,n){return e.isSimulation(t)&&n&&(n.text||n.html)}},{key:"abort",value:function(e,t,n){clearTimeout(e),t.finaliseStreamedMessage(),n()}},{key:"upsertWFiles",value:function(e,t,n,r){if(null!=r&&r.text||null!=r&&r.html){var i,s=t(r);null!==(i=n)&&void 0!==i||(n=s||void 0)}null!=r&&r.files&&(e.addNewMessage({files:r.files}),null==n||n.markFileAded())}}]),e}(),on=function(){function e(){I(this,e)}return R(e,null,[{key:"generateResponse",value:function(e){var t=e.messages[e.messages.length-1];if(t.files&&t.files.length>0){if(t.files.length>1)return"These are interesting files!";var n=t.files[0];return n.src&&n.src.startsWith("data:image/gif")?"That is a nice gif!":"image"===n.type?"That is a nice image!":"audio"===n.type?"I like the sound of that!":"That is an interesting file!"}if(t.text){if("?"===t.text.charAt(t.text.length-1))return"I'm sorry but I can't answer that question...";if(t.text.includes("updog"))return"What's updog?"}return"Hi there! This is a demo response!"}},{key:"getCustomResponse",value:function(e,t){return"function"==typeof e?e(t):e}},{key:"getResponse",value:function(t){return t.customDemoResponse?e.getCustomResponse(t.customDemoResponse,t.messages[t.messages.length-1]):{text:e.generateResponse(t)}}},{key:"request",value:function(t,n){var r=e.getResponse(n);setTimeout(C(S().mark((function e(){var i,s,a;return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,null==(s=(i=t.deepChat).responseInterceptor)?void 0:s.call(i,r);case 2:if(e.t0=e.sent,e.t0){e.next=5;break}e.t0=r;case 5:(a=e.t0).error?(n.addNewErrorMessage("service",a.error),t.completionsHandlers.onFinish()):an.isSimulatable(t.deepChat.stream,a)?an.simulate(n,t.streamHandlers,a):(n.addNewMessage(a),t.completionsHandlers.onFinish());case 7:case"end":return e.stop()}}),e)}))),400)}},{key:"requestStream",value:function(t,n){setTimeout((function(){var r=e.getResponse(t);an.simulate(t,n,r)}),400)}}]),e}();on.URL="deep-chat-demo";var ln=on,un=function(){function e(){I(this,e)}var t;return R(e,null,[{key:"setup",value:function(e){e.requestSettings.url!==ln.URL&&(e.permittedErrorPrefixes=["Connection error","Error in server message"],e.websocket="pending")}},{key:"createConnection",value:function(t,n){if(document.body.contains(t.deepChat)){var r=t.requestSettings.websocket;if(r){if(t.requestSettings.handler)return cn.websocket(t,n);try{var i="boolean"!=typeof r?r:void 0,s=new WebSocket(t.requestSettings.url||"",i);t.websocket=s,t.websocket.onopen=function(){var r,i;n.removeError(),t.websocket&&"object"==L(t.websocket)&&e.assignListeners(t,s,n),null==(i=(r=t.deepChat)._validationHandler)||i.call(r)},t.websocket.onerror=function(r){console.error(r),e.retryConnection(t,n)}}catch(i){console.error(i),e.retryConnection(t,n)}}}}},{key:"retryConnection",value:function(t,n){var r,i;null==(i=(r=t.deepChat)._validationHandler)||i.call(r),document.body.contains(t.deepChat)&&(t.websocket="pending",n.isLastMessageError()||n.addNewErrorMessage("service","Connection error"),setTimeout((function(){e.createConnection(t,n)}),5e3))}},{key:"assignListeners",value:function(t,n,r){var i=this,s={};n.onmessage=function(){var n=C(S().mark((function n(a){var o,l,u,c,d,p,h;return S().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:if(!t.extractResultData){n.next=20;break}return n.prev=1,u=JSON.parse(a.data),n.next=5,null==(l=(o=t.deepChat).responseInterceptor)?void 0:l.call(o,u);case 5:if(n.t0=n.sent,n.t0){n.next=8;break}n.t0=u;case 8:return c=n.t0,n.next=11,t.extractResultData(c);case 11:if((d=n.sent)&&"object"==L(d)){n.next=14;break}throw Error(X.INVALID_RESPONSE(u,"server",!!t.deepChat.responseInterceptor,c));case 14:an.isSimulation(t.deepChat.stream)?(p=e.stream.bind(i,t,r,s),h=s[u.role||ue.AI_ROLE],an.upsertWFiles(r,p,h,d)):r.addNewMessage(d),n.next=20;break;case 17:n.prev=17,n.t1=n.catch(1),Jt.displayError(r,n.t1,"Error in server message");case 20:case"end":return n.stop()}}),n,null,[[1,17]])})));return function(e){return n.apply(this,arguments)}}(),n.onclose=function(){console.error("Connection closed"),r.isLastMessageError()||r.addNewErrorMessage("service","Connection error"),t.deepChat.stream&&t.streamHandlers.abortStream.abort(),e.createConnection(t,r)}}},{key:"sendWebsocket",value:(t=C(S().mark((function t(n,r,i){var s,a,o,l,u,c,d,p,h,f=arguments;return S().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(s=!(f.length>3&&void 0!==f[3])||f[3],(l=n.websocket)&&"pending"!==l){t.next=4;break}return t.abrupt("return");case 4:return u={body:r,headers:null==(a=n.requestSettings)?void 0:a.headers},t.next=7,Jt.processRequestInterceptor(n.deepChat,u);case 7:if(c=t.sent,d=c.body,!(p=c.error)){t.next=12;break}return t.abrupt("return",i.addNewErrorMessage("service",p));case 12:if(e.isWebSocket(l)){t.next=14;break}return t.abrupt("return",l.newUserMessage.listener(d));case 14:if(h=s?JSON.stringify(d):d,(null==(o=n.requestSettings)?void 0:o.url)!==ln.URL){t.next=17;break}return t.abrupt("return",ln.request(n,i));case 17:void 0===l.readyState||l.readyState!==l.OPEN?(console.error("Connection is not open"),i.isLastMessageError()||i.addNewErrorMessage("service","Connection error")):(l.send(JSON.stringify(h)),n.completionsHandlers.onFinish());case 18:case"end":return t.stop()}}),t)}))),function(e,n,r){return t.apply(this,arguments)})},{key:"canSendMessage",value:function(t){return!t||"pending"!==t&&(e.isWebSocket(t)?void 0!==t.readyState&&t.readyState===t.OPEN:t.isOpen)}},{key:"isWebSocket",value:function(e){return void 0!==e.send}},{key:"stream",value:function(e,t,n,r){if(r){var i=e.deepChat.stream.simulation;if("string"==typeof i){var s,a=r.role||ue.AI_ROLE,o=n[a];r.text===i?(null==o||o.finaliseStreamedMessage(),delete n[a]):(null!==(s=n[a])&&void 0!==s||(n[a]=new Kt(t)),n[a].upsertStreamedMessage(r))}else an.simulate(t,e.streamHandlers,r)}}}]),e}(),cn=function(){function e(){I(this,e)}var t;return R(e,null,[{key:"request",value:(t=C(S().mark((function t(n,r,i){var s,a,o,l,u;return S().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:o=!0,l=function(){var e=C(S().mark((function e(t){var r,s,a;return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(o){e.next=2;break}return e.abrupt("return");case 2:return o=!1,e.next=5,null==(s=(r=n.deepChat).responseInterceptor)?void 0:s.call(r,t);case 5:if(e.t0=e.sent,e.t0){e.next=8;break}e.t0=t;case 8:a=e.t0,Jt.validateResponseFormat(a)?"string"==typeof a.error?(console.error(a.error),i.addNewErrorMessage("service",a.error),n.completionsHandlers.onFinish()):an.isSimulatable(n.deepChat.stream,a)?an.simulate(i,n.streamHandlers,a):(i.addNewMessage(a),n.completionsHandlers.onFinish()):(console.error(X.INVALID_RESPONSE(t,"server",!!n.deepChat.responseInterceptor,a)),i.addNewErrorMessage("service","Error in server message"),n.completionsHandlers.onFinish());case 10:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}(),u=e.generateOptionalSignals(),null==(a=(s=n.requestSettings).handler)||a.call(s,r,T(T({},u),{},{onResponse:l}));case 3:case"end":return t.stop()}}),t)}))),function(e,n,r){return t.apply(this,arguments)})},{key:"attemptToFinaliseStream",value:function(e,t){try{e.finaliseStreamedMessage()}catch(e){console.error(e),t.addNewErrorMessage("service",e)}}},{key:"stream",value:function(t,n,r){var i,s,a=!0,o=!1,l=new Kt(r),u=function(){var e=C(S().mark((function e(n){var i,s,o;return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(a){e.next=2;break}return e.abrupt("return");case 2:return e.next=4,null==(s=(i=t.deepChat).responseInterceptor)?void 0:s.call(i,n);case 4:if(e.t0=e.sent,e.t0){e.next=7;break}e.t0=n;case 7:o=e.t0,Jt.validateResponseFormat(o)?o.error?(console.error(o.error),l.finaliseStreamedMessage(),r.addNewErrorMessage("service",o.error),t.streamHandlers.onClose(),a=!1):an.upsertWFiles(r,l.upsertStreamedMessage.bind(l),l,o):console.error(X.INVALID_RESPONSE(n,"server",!!t.deepChat.responseInterceptor,o));case 9:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}();t.streamHandlers.abortStream.abort=function(){e.attemptToFinaliseStream(l,r),t.streamHandlers.onClose(),a=!1};var c=e.generateOptionalSignals();null==(s=(i=t.requestSettings).handler)||s.call(i,n,T(T({},c),{},{onOpen:function(){o||!a||(t.streamHandlers.onOpen(),o=!0)},onResponse:u,onClose:function(){a&&(e.attemptToFinaliseStream(l,r),t.streamHandlers.onClose(),a=!1)},stopClicked:t.streamHandlers.stopClicked}))}},{key:"websocket",value:function(t,n){var r,i,s=this,a={isOpen:!1,newUserMessage:{listener:function(){}},roleToStream:{}};t.websocket=a;var o=function(){var e=C(S().mark((function e(r){var i,o,l,u,c;return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(a.isOpen){e.next=2;break}return e.abrupt("return");case 2:return e.next=4,null==(o=(i=t.deepChat).responseInterceptor)?void 0:o.call(i,r);case 4:if(e.t0=e.sent,e.t0){e.next=7;break}e.t0=r;case 7:l=e.t0,Jt.validateResponseFormat(l)?"string"==typeof l.error?(console.error(l.error),n.isLastMessageError()||n.addNewErrorMessage("service",l.error)):an.isSimulation(t.deepChat.stream)?(u=un.stream.bind(s,t,n,a.roleToStream),c=a.roleToStream[r.role||ue.AI_ROLE],an.upsertWFiles(n,u,c,r)):n.addNewMessage(l):(console.error(X.INVALID_RESPONSE(r,"server",!!t.deepChat.responseInterceptor,l)),n.addNewErrorMessage("service","Error in server message"));case 9:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}(),l=e.generateOptionalSignals();null==(i=(r=t.requestSettings).handler)||i.call(r,void 0,T(T({},l),{},{onOpen:function(){n.removeError(),a.isOpen=!0},onResponse:o,onClose:function(){a.isOpen=!1},newUserMessage:a.newUserMessage}))}},{key:"generateOptionalSignals",value:function(){return{onClose:function(){},onOpen:function(){},stopClicked:{listener:function(){}},newUserMessage:{listener:function(){}}}}}]),e}(),dn=function(){function e(){I(this,e)}var t,n;return R(e,null,[{key:"request",value:(n=C(S().mark((function e(t,n,r){var i,s,a,o,l,u,c,d,p,h,f,m,v=arguments;return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return i=!(v.length>3&&void 0!==v[3])||v[3],l={body:n,headers:null==(s=t.requestSettings)?void 0:s.headers},e.next=4,Jt.processRequestInterceptor(t.deepChat,l);case 4:if(u=e.sent,c=u.body,d=u.headers,p=u.error,h=t.completionsHandlers.onFinish,!p){e.next=11;break}return e.abrupt("return",Jt.onInterceptorError(r,p,h));case 11:if(null==(a=t.requestSettings)||!a.handler){e.next=13;break}return e.abrupt("return",cn.request(t,c,r));case 13:if((null==(o=t.requestSettings)?void 0:o.url)!==ln.URL){e.next=15;break}return e.abrupt("return",ln.request(t,r));case 15:f=!0,(m=Jt.fetch.bind(this,t,d,i))(c).then((function(e){return f=!!e.ok,e})).then((function(e){return Jt.processResponseByType(e)})).then(function(){var e=C(S().mark((function e(n){var i,s,a,o;return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t.extractResultData){e.next=2;break}return e.abrupt("return");case 2:return e.next=4,null==(s=(i=t.deepChat).responseInterceptor)?void 0:s.call(i,n);case 4:if(e.t0=e.sent,e.t0){e.next=7;break}e.t0=n;case 7:return a=e.t0,e.next=10,t.extractResultData(a,m,c);case 10:if(o=e.sent,f){e.next=13;break}throw n;case 13:if(o&&"object"==L(o)){e.next=15;break}throw Error(X.INVALID_RESPONSE(n,"response",!!t.deepChat.responseInterceptor,a));case 15:o.makingAnotherRequest||(an.isSimulatable(t.deepChat.stream,o)?an.simulate(r,t.streamHandlers,o):(r.addNewMessage(o),h()));case 16:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()).catch((function(e){Jt.displayError(r,e),h()}));case 18:case"end":return e.stop()}}),e,this)}))),function(e,t,r){return n.apply(this,arguments)})},{key:"executePollRequest",value:function(t,n,r,i){var s=t.completionsHandlers.onFinish;fetch(n,r).then((function(e){return e.json()})).then(function(){var a=C(S().mark((function a(o){var l,u,c;return S().wrap((function(a){for(;;)switch(a.prev=a.next){case 0:if(t.extractPollResultData){a.next=2;break}return a.abrupt("return");case 2:return a.t0=t,a.next=5,null==(u=(l=t.deepChat).responseInterceptor)?void 0:u.call(l,o);case 5:if(a.t1=a.sent,a.t1){a.next=8;break}a.t1=o;case 8:return a.t2=a.t1,a.next=11,a.t0.extractPollResultData.call(a.t0,a.t2);case 11:(c=a.sent).timeoutMS?setTimeout((function(){e.executePollRequest(t,n,r,i)}),c.timeoutMS):an.isSimulatable(t.deepChat.stream,o)?an.simulate(i,t.streamHandlers,c):(i.addNewMessage(c),s());case 13:case"end":return a.stop()}}),a)})));return function(e){return a.apply(this,arguments)}}()).catch((function(e){Jt.displayError(i,e),s()}))}},{key:"poll",value:(t=C(S().mark((function t(n,r,i){var s,a,o,l,u,c,d,p,h,f,m,v,g,y=arguments;return S().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return s=!(y.length>3&&void 0!==y[3])||y[3],u={body:r,headers:null==(a=n.requestSettings)?void 0:a.headers},t.next=4,Jt.processRequestInterceptor(n.deepChat,u);case 4:if(c=t.sent,d=c.body,p=c.headers,!(h=c.error)){t.next=10;break}return t.abrupt("return",Jt.onInterceptorError(i,h));case 10:f=(null==(o=n.requestSettings)?void 0:o.url)||n.url||"",m=(null==(l=n.requestSettings)?void 0:l.method)||"POST",v=s?JSON.stringify(d):d,g={method:m,body:v,headers:p},n.requestSettings.credentials&&(g.credentials=n.requestSettings.credentials),e.executePollRequest(n,f,g,i);case 12:case"end":return t.stop()}}),t)}))),function(e,n,r){return t.apply(this,arguments)})},{key:"verifyKey",value:function(e,t,n,r,i,s,a,o,l){if(""===e)return s(X.INVALID_KEY);a(),fetch(t,{method:r,headers:n,body:l||null}).then((function(e){return Jt.processResponseByType(e)})).then((function(t){o(t,e,i,s)})).catch((function(e){s(X.CONNECTION_FAILED),console.error(e)}))}}]),e}(),pn=function(){function e(){I(this,e)}return R(e,null,[{key:"getCharacterLimitMessages",value:function(e,t){var n;if(-1===t)return e;for(var r=0,i=e.length-1;i>=0;i-=1){var s=null==(n=e[i])?void 0:n.text;if(void 0!==s&&(r+=s.length)>t){e[i].text=s.substring(0,s.length-(r-t));break}}return e.slice(Math.max(i,0))}},{key:"getMaxMessages",value:function(e,t){return e.slice(Math.max(e.length-t,0))}},{key:"processMessages",value:function(t,n,r){return void 0!==n?n>0&&(t=e.getMaxMessages(t,n)):t=[t[t.length-1]],t=JSON.parse(JSON.stringify(t)),void 0===r?t:e.getCharacterLimitMessages(t,r)}}]),e}(),hn=function(){function e(){I(this,e)}return R(e,null,[{key:"parseConfig",value:function(e,t,n,r){var i,s={files:t};if("object"==L(r)){var a=r.files,o=r.request,l=r.button;a&&(a.infoModal&&(s.files.infoModal=a.infoModal,null!=(i=a.infoModal)&&i.textMarkDown&&(s.infoModalTextMarkUp=n.render(a.infoModal.textMarkDown))),a.acceptedFormats&&(s.files.acceptedFormats=a.acceptedFormats),a.maxNumberOfFiles&&(s.files.maxNumberOfFiles=a.maxNumberOfFiles)),s.button=l,o&&(o.headers||o.method||o.url||o.credentials||e.headers||e.method||e.url||e.credentials)&&(s.request={url:(null==o?void 0:o.url)||e.url,method:(null==o?void 0:o.method)||e.method,headers:(null==o?void 0:o.headers)||e.headers,credentials:(null==o?void 0:o.credentials)||e.credentials})}return s}},{key:"processMixedFiles",value:function(t,n,r){r&&(t.fileTypes.mixedFiles=e.parseConfig(t.requestSettings,{acceptedFormats:""},n,r))}},{key:"processMicrophone",value:function(t,n,r,i){var s,a,o,l,u,c,d,p,h=T({acceptedFormats:"audio/*"},(null==(o=t.fileTypes.audio)?void 0:o.files)||{});r&&(void 0!==navigator.mediaDevices.getUserMedia?(t.recordAudio=e.parseConfig(t.requestSettings,h,n,r),"object"==L(r)&&r.files&&(null!==(s=(l=t.recordAudio).files)&&void 0!==s||(l.files={}),t.recordAudio.files.format=null==(u=r.files)?void 0:u.format,t.recordAudio.files.maxDurationSeconds=null==(c=r.files)?void 0:c.maxDurationSeconds,null!=(d=t.fileTypes.audio)&&d.files&&(null!==(a=(p=t.fileTypes.audio.files).maxNumberOfFiles)&&void 0!==a||(p.maxNumberOfFiles=r.files.maxNumberOfFiles)))):i||(t.fileTypes.audio=e.parseConfig(t.requestSettings,h,n,r)))}},{key:"processAudioConfig",value:function(t,n,r,i){if(r||i){var s=T({acceptedFormats:"audio/*"},(null==i?void 0:i.files)||{});t.fileTypes.audio=e.parseConfig(t.requestSettings,s,n,r)}}},{key:"processGifConfig",value:function(t,n,r,i){if(r||i){var s=T({acceptedFormats:"image/gif"},(null==i?void 0:i.files)||{});t.fileTypes.gifs=e.parseConfig(t.requestSettings,s,n,r)}}},{key:"processCamera",value:function(t,n,r,i){var s,a,o,l,u,c=T({acceptedFormats:"image/*"},(null==(a=t.fileTypes.images)?void 0:a.files)||{});r&&(void 0!==navigator.mediaDevices.getUserMedia?(t.camera=e.parseConfig(t.requestSettings,c,n,r),"object"==L(r)&&(t.camera.modalContainerStyle=r.modalContainerStyle,r.files&&(null!==(s=(o=t.camera).files)&&void 0!==s||(o.files={}),t.camera.files.format=null==(l=r.files)?void 0:l.format,t.camera.files.dimensions=null==(u=r.files)?void 0:u.dimensions))):i||(t.fileTypes.images=e.parseConfig(t.requestSettings,c,n,r)))}},{key:"processImagesConfig",value:function(t,n,r,i){if(r||i){var s=T({acceptedFormats:"image/*"},(null==i?void 0:i.files)||{});t.fileTypes.images=e.parseConfig(t.requestSettings,s,n,r)}}},{key:"populateDefaultFileIO",value:function(e,t){var n,r,i,s,a;e&&(null!==(n=e.files)&&void 0!==n||(e.files={}),null!==(r=(s=e.files).acceptedFormats)&&void 0!==r||(s.acceptedFormats=t),null!==(i=(a=e.files).maxNumberOfFiles)&&void 0!==i||(a.maxNumberOfFiles=1))}},{key:"set",value:function(t,n,r){e.populateDefaultFileIO(null==r?void 0:r.audio,".4a,.mp3,.webm,.mp4,.mpga,.wav,.mpeg,.m4a"),e.populateDefaultFileIO(null==r?void 0:r.images,".png,.jpg");var i=qt.createNew();e.processImagesConfig(n,i,t.images,null==r?void 0:r.images),e.processCamera(n,i,t.camera,t.images),e.processGifConfig(n,i,t.gifs,null==r?void 0:r.gifs),e.processAudioConfig(n,i,t.audio,null==r?void 0:r.audio),e.processMicrophone(n,i,t.microphone,t.audio),e.processMixedFiles(n,i,t.mixedFiles)}}]),e}(),fn=function(){function e(t,n,r){var i,s,a,o,l;I(this,e),this.rawBody={},this.validateConfigKey=!1,this.canSendMessage=e.canSendMessage,this.requestSettings={},this.fileTypes={},this.completionsHandlers={},this.streamHandlers={},this.deepChat=t,this.demo=r,Object.assign(this.rawBody,null==(s=t.request)?void 0:s.additionalBodyProps),this.totalMessagesMaxCharLength=null==(a=null==t?void 0:t.requestBodyLimits)?void 0:a.totalMessagesMaxCharLength,this.maxMessages=null==(o=null==t?void 0:t.requestBodyLimits)?void 0:o.maxMessages,hn.set(t,this,n),t.request&&(this.requestSettings=t.request),this.demo&&(null!==(i=(l=this.requestSettings).url)&&void 0!==i||(l.url=ln.URL)),this.requestSettings.websocket&&un.setup(this)}var t,n,r,i,s,a;return R(e,[{key:"verifyKey",value:function(e,t){}},{key:"getServiceIOByType",value:function(e){if(e.type.startsWith("audio")&&this.fileTypes.audio)return this.fileTypes.audio;if(e.type.startsWith("image")){if(this.fileTypes.gifs&&e.type.endsWith("/gif"))return this.fileTypes.gifs;if(this.fileTypes.images)return this.fileTypes.images;if(this.camera)return this.camera}return this.fileTypes.mixedFiles}},{key:"request",value:(a=C(S().mark((function e(t,n){var r,i,s=arguments;return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=!(s.length>2&&void 0!==s[2])||s[2],i=this.deepChat.stream,e.abrupt("return",i&&!an.isSimulation(i)?an.request(this,t,n):dn.request(this,t,n,r));case 3:case"end":return e.stop()}}),e,this)}))),function(e,t){return a.apply(this,arguments)})},{key:"callAPIWithText",value:(s=C(S().mark((function e(t,n){var r,i,s,a,o,l,u,c;return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return u=T({messages:n},this.rawBody),c=!1,null!=(s=this.requestSettings.headers)&&s["Content-Type"]||(null!==(r=(a=this.requestSettings).headers)&&void 0!==r||(a.headers={}),null!==(i=(o=this.requestSettings.headers)["Content-Type"])&&void 0!==i||(o["Content-Type"]="application/json"),c=!0),e.next=5,this.request(u,t);case 5:c&&(null==(l=this.requestSettings.headers)||delete l["Content-Type"]);case 6:case"end":return e.stop()}}),e,this)}))),function(e,t){return s.apply(this,arguments)})},{key:"callApiWithFiles",value:(i=C(S().mark((function t(n,r,i){var s,a,o;return S().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return s=e.createCustomFormDataBody(this.rawBody,r,i),a=this.requestSettings,o=this.getServiceIOByType(i[0]),this.requestSettings=(null==o?void 0:o.request)||this.requestSettings,t.next=4,this.request(s,n,!1);case 4:this.requestSettings=a;case 5:case"end":return t.stop()}}),t,this)}))),function(e,t,n){return i.apply(this,arguments)})},{key:"callServiceAPI",value:(r=C(S().mark((function e(t,n,r){return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:r?this.callApiWithFiles(t,n,r):this.callAPIWithText(t,n);case 1:case"end":return e.stop()}}),e,this)}))),function(e,t,n){return r.apply(this,arguments)})},{key:"callAPI",value:(n=C(S().mark((function e(t,n){var r,i;return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(this.requestSettings){e.next=2;break}throw new Error("Request settings have not been set up");case 2:r=pn.processMessages(n.messages,this.maxMessages,this.totalMessagesMaxCharLength),this.requestSettings.websocket?(i=T({messages:r},this.rawBody),un.sendWebsocket(this,i,n,!1)):this.callServiceAPI(n,r,t.files);case 4:case"end":return e.stop()}}),e,this)}))),function(e,t){return n.apply(this,arguments)})},{key:"extractResultData",value:(t=C(S().mark((function e(t){return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!t.error){e.next=2;break}throw t.error;case 2:if(!t.result){e.next=4;break}return e.abrupt("return",ne.handleResponseProperty(t));case 4:if(!Jt.validateResponseFormat(t)){e.next=6;break}return e.abrupt("return",t);case 6:case"end":return e.stop()}}),e)}))),function(e){return t.apply(this,arguments)})},{key:"isDirectConnection",value:function(){return!1}},{key:"isWebModel",value:function(){return!1}}],[{key:"canSendMessage",value:function(e,t,n){return!!n||!(!e||""===e.trim())||!!(t&&t.length>0)}},{key:"createCustomFormDataBody",value:function(e,t,n){var r=new FormData;n.forEach((function(e){return r.append("files",e)})),Object.keys(e).forEach((function(t){return r.append(t,String(e[t]))}));var i=0;t.slice(0,t.length-1).forEach((function(e){r.append("message".concat(i+=1),JSON.stringify(e))}));var s=t[t.length-1];return s.text&&(delete s.files,r.append("message".concat(i+=1),JSON.stringify(s))),r}}]),e}(),mn=function(e){function t(e,n,r,i,s){var a,o;return I(this,t),(a=y(this,t,[e,s])).insertKeyPlaceholderText="API Key",a.keyHelpUrl="",Object.assign(a.rawBody,null==(o=e.request)?void 0:o.additionalBodyProps),a.keyVerificationDetails=n,a.buildHeadersFunc=r,i&&a.setApiKeyProperties(i),a.requestSettings=a.buildRequestSettings(a.key||"",e.request),a}return x(t,e),R(t,[{key:"setApiKeyProperties",value:function(e){this.key=e.key,e.validateKeyProperty&&(this.validateConfigKey=e.validateKeyProperty)}},{key:"buildRequestSettings",value:function(e,t){var n,r=null!=t?t:{};return null!==(n=r.headers)&&void 0!==n||(r.headers={}),Object.assign(r.headers,this.buildHeadersFunc(e)),r}},{key:"keyAuthenticated",value:function(e,t){this.requestSettings=this.buildRequestSettings(t,this.requestSettings),this.key=t,e()}},{key:"verifyKey",value:function(e,t){var n=this.keyVerificationDetails,r=n.url,i=n.method,s=n.handleVerificationResult,a=n.createHeaders,o=n.body,l=(null==a?void 0:a(e))||this.buildHeadersFunc(e);dn.verifyKey(e,r,l,i,this.keyAuthenticated.bind(this,t.onSuccess),t.onFail,t.onLoad,s,o)}},{key:"isDirectConnection",value:function(){return!0}}]),t}(fn),vn=function(){function e(){I(this,e)}return R(e,null,[{key:"waitForPropertiesToBeUpdatedBeforeRender",value:function(t){t._propUpdated_=!1,setTimeout((function(){t._propUpdated_?e.waitForPropertiesToBeUpdatedBeforeRender(t):(t._waitingToRender_=!1,t.onRender())}))}},{key:"attemptRender",value:function(t){t._propUpdated_=!0,t._waitingToRender_||(t._waitingToRender_=!0,e.waitForPropertiesToBeUpdatedBeforeRender(t))}}]),e}(),gn=function(e){function t(){var e;return I(this,t),(e=y(this,t))._waitingToRender_=!1,e._propUpdated_=!1,Object.keys(t._attributeToProperty_).forEach((function(n){var r=t._attributeToProperty_[n];e.constructPropertyAccessors(r),e.hasOwnProperty(n)||e.constructPropertyAccessors(r,n)})),e}return x(t,e),R(t,[{key:"constructPropertyAccessors",value:function(e,t){var n;Object.defineProperty(this,t||e,{get:function(){return n},set:function(r){n=r,t?this[e]=r:vn.attemptRender(this)}})}},{key:"attributeChangedCallback",value:function(e,n,r){if(n!==r){var i=t._attributes_[e](r);this[t._attributeToProperty_[e]]=i}}},{key:"onRender",value:function(){}}],[{key:"observedAttributes",get:function(){return Object.keys(t._attributes_)||[]}}]),t}(g(HTMLElement));gn._attributes_={},gn._attributeToProperty_={};var yn=gn,bn=function(){function e(){I(this,e)}return R(e,null,[{key:"createSVGElement",value:function(e){return(new DOMParser).parseFromString(e,"image/svg+xml").documentElement}}]),e}(),kn=function(){function e(){I(this,e)}return R(e,null,[{key:"changeVisibility",value:function(t,n,r,i){i.target.id===e.VISIBLE_ICON_ID?(n.style.display="none",r.style.display="block",t.type="password"):(n.style.display="block",r.style.display="none",t.type="text")}},{key:"createIconElement",value:function(e,t){var n=bn.createSVGElement(e);return n.id=t,n.classList.add("visibility-icon"),n}},{key:"create",value:function(t){var n=document.createElement("div");n.id="visibility-icon-container";var r=e.createIconElement('<?xml version="1.0" standalone="no"?>\n<svg version="1.1"\n\txmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"\n\txmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="0.9em" height="0.9em"\n\tviewBox="0 0 1200 1200" enable-background="new 0 0 1200 1200">\n\t\t<path id="path6686" inkscape:connector-curvature="0" d="M779.843,599.925c0,95.331-80.664,172.612-180.169,172.612\n\t\t\tc-99.504,0-180.168-77.281-180.168-172.612c0-95.332,80.664-172.612,180.168-172.612\n\t\t\tC699.179,427.312,779.843,504.594,779.843,599.925z M600,240.521c-103.025,0.457-209.814,25.538-310.904,73.557\n\t\t\tc-75.058,37.122-148.206,89.496-211.702,154.141C46.208,501.218,6.431,549,0,599.981c0.76,44.161,48.13,98.669,77.394,131.763\n\t\t\tc59.543,62.106,130.786,113.018,211.702,154.179c94.271,45.751,198.616,72.092,310.904,73.557\n\t\t\tc103.123-0.464,209.888-25.834,310.866-73.557c75.058-37.122,148.243-89.534,211.74-154.179\n\t\t\tc31.185-32.999,70.962-80.782,77.394-131.763c-0.76-44.161-48.13-98.671-77.394-131.764\n\t\t\tc-59.543-62.106-130.824-112.979-211.74-154.141C816.644,268.36,712.042,242.2,600,240.521z M599.924,329.769\n\t\t\tc156.119,0,282.675,120.994,282.675,270.251c0,149.256-126.556,270.25-282.675,270.25S317.249,749.275,317.249,600.02\n\t\t\tC317.249,450.763,443.805,329.769,599.924,329.769L599.924,329.769z"/>\n</svg>\n',e.VISIBLE_ICON_ID);r.style.display="none",n.appendChild(r);var i=e.createIconElement('<?xml version="1.0" standalone="no"?>\n<svg version="1.1"\n\txmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"\n\txmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="0.9em" height="0.9em"\n\tviewBox="0 0 1200 1200" enable-background="new 0 0 1200 1200">\n\t\t<path d="\n\t\t\tM669.727,273.516c-22.891-2.476-46.15-3.895-69.727-4.248c-103.025,0.457-209.823,25.517-310.913,73.536\n\t\t\tc-75.058,37.122-148.173,89.529-211.67,154.174C46.232,529.978,6.431,577.76,0,628.74c0.76,44.162,48.153,98.67,77.417,131.764\n\t\t\tc59.543,62.106,130.754,113.013,211.67,154.174c2.75,1.335,5.51,2.654,8.276,3.955l-75.072,131.102l102.005,60.286l551.416-960.033\n\t\t\tl-98.186-60.008L669.727,273.516z M902.563,338.995l-74.927,129.857c34.47,44.782,54.932,100.006,54.932,159.888\n\t\t\tc0,149.257-126.522,270.264-282.642,270.264c-6.749,0-13.29-0.728-19.922-1.172l-49.585,85.84c22.868,2.449,45.99,4.233,69.58,4.541\n\t\t\tc103.123-0.463,209.861-25.812,310.84-73.535c75.058-37.122,148.246-89.529,211.743-154.174\n\t\t\tc31.186-32.999,70.985-80.782,77.417-131.764c-0.76-44.161-48.153-98.669-77.417-131.763\n\t\t\tc-59.543-62.106-130.827-113.013-211.743-154.175C908.108,341.478,905.312,340.287,902.563,338.995L902.563,338.995z\n\t\t\tM599.927,358.478c6.846,0,13.638,0.274,20.361,0.732l-58.081,100.561c-81.514,16.526-142.676,85.88-142.676,168.897\n\t\t\tc0,20.854,3.841,40.819,10.913,59.325c0.008,0.021-0.008,0.053,0,0.074l-58.228,100.854\n\t\t\tc-34.551-44.823-54.932-100.229-54.932-160.182C317.285,479.484,443.808,358.477,599.927,358.478L599.927,358.478z M768.896,570.513\n\t\t\tL638.013,797.271c81.076-16.837,141.797-85.875,141.797-168.603C779.81,608.194,775.724,588.729,768.896,570.513L768.896,570.513z"\n\t\t\t/>\n</svg>\n',"not-visible-icon");return n.appendChild(i),n.onclick=e.changeVisibility.bind(this,t,r,i),n}}]),e}();kn.VISIBLE_ICON_ID="visible-icon";var _n=kn,xn=function(){function e(){I(this,e)}return R(e,null,[{key:"createCautionText",value:function(){var e=document.createElement("a");return e.classList.add("insert-key-input-help-text"),e.innerText="Please exercise CAUTION when inserting your API key outside of deepchat.dev or localhost!!",e}},{key:"createHelpLink",value:function(e){var t=document.createElement("a");return t.classList.add("insert-key-input-help-text"),t.href=e,t.innerText="Find more info here",t.target="_blank",t}},{key:"createFailText",value:function(){var e=document.createElement("div");return e.id="insert-key-input-invalid-text",e.style.display="none",e}},{key:"createHelpTextContainer",value:function(t){var n=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],r=document.createElement("div");r.id="insert-key-help-text-container";var i=document.createElement("div");i.id="insert-key-help-text-contents";var s=e.createFailText();if(i.appendChild(s),t){var a=e.createHelpLink(t);i.appendChild(a)}if(!0===n){var o=e.createCautionText();i.appendChild(o)}return r.appendChild(i),{helpTextContainerElement:r,failTextElement:s}}},{key:"onFail",value:function(e,t,n,r){e.classList.replace("insert-key-input-valid","insert-key-input-invalid"),n.innerText=r,n.style.display="block",t.innerText="Start",e.classList.remove("loading")}},{key:"onLoad",value:function(e,t){e.classList.add("loading"),t.innerHTML='<div id="loading-ring"></div>'}},{key:"verifyKey",value:function(e,t,n){var r=e.value.trim();n.verifyKey(r,t)}},{key:"addVerificationEvents",value:function(t,n,r,i,s){var a={onSuccess:i,onFail:e.onFail.bind(this,t,n,r),onLoad:e.onLoad.bind(this,t,n)},o=e.verifyKey.bind(this,t,a,s);n.onclick=o,t.onkeydown=function(e){!t.classList.contains("loading")&&e.key===q.ENTER&&o()}}},{key:"createStartButton",value:function(){var e=document.createElement("div");return e.id="start-button",e.innerText="Start",e}},{key:"onInputFocus",value:function(e){e.target.classList.replace("insert-key-input-invalid","insert-key-input-valid")}},{key:"createInput",value:function(t){var n=document.createElement("div");n.id="insert-key-input-container";var r=document.createElement("input");return r.id="insert-key-input",r.placeholder=t||"API Key",r.type="password",r.classList.add("insert-key-input-valid"),r.onfocus=e.onInputFocus,n.appendChild(r),n}},{key:"createContents",value:function(t,n){var r,i=document.createElement("div");i.id="insert-key-contents";var s=e.createInput(n.insertKeyPlaceholderText),a=s.children[0],o=_n.create(a);s.appendChild(o),i.appendChild(s);var l=e.createStartButton(),u=e.createHelpTextContainer(n.keyHelpUrl,null==(r=n.deepChat._insertKeyViewStyles)?void 0:r.displayCautionText),c=u.helpTextContainerElement,d=u.failTextElement;return i.appendChild(l),i.appendChild(c),e.addVerificationEvents(a,l,d,t,n),i}},{key:"createElements",value:function(t,n){var r=document.createElement("div");r.id="insert-key-view";var i=e.createContents(t,n);return r.appendChild(i),r}},{key:"render",value:function(t,n,r){var i=e.createElements(n,r);t.replaceChildren(i)}}]),e}(),wn=function(){function e(){I(this,e)}return R(e,null,[{key:"enableButtons",value:function(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;window.webLLM?(t&&(t.disabled=!1),n&&(n.disabled=!1)):r<4*Mn.MODULE_SEARCH_LIMIT_S&&setTimeout((function(){return e.enableButtons(t,n,r+1)}),250)}},{key:"setUpInitial",value:function(t,n,r,i){var s=(null==n?void 0:n.downloadClass)||e.DOWNLOAD_BUTTON_CLASS,a=(null==n?void 0:n.uploadClass)||e.UPLOAD_BUTTON_CLASS,o=(null==n?void 0:n.fileInputClass)||e.FILE_INPUT_CLASS;return setTimeout((function(){var n=null==r?void 0:r.getElementsByClassName(s)[0],i=null==r?void 0:r.getElementsByClassName(o)[0],l=null==r?void 0:r.getElementsByClassName(a)[0];n&&(n.onclick=function(){return t()}),i&&(i.onchange=function(){i.files&&i.files.length>0&&t(i.files)}),l&&(l.onclick=function(){return i.click()}),(n||l)&&e.enableButtons(n,l)})),(null==n?void 0:n.initialHtml)||'<div>\n Download or upload a web model that will run entirely on your browser: <br/> \n <button disabled class="'.concat(s,' deep-chat-button deep-chat-web-model-button">Download</button>\n ').concat(i?"":'<input type="file" class="'.concat(o,'" hidden multiple />\n <button disabled class="').concat(a,' deep-chat-button deep-chat-web-model-button">Upload</button>'),"\n </div>")}},{key:"exportFile",value:function(e){for(var t=document.createElement("a"),n=function(n){setTimeout((function(){for(var r=4*n,i=r;i<Math.min(r+4,e.length);i+=1){var s=URL.createObjectURL(e[i]);t.href=s,t.download=e[i].name,document.body.appendChild(t),t.click(),URL.revokeObjectURL(s)}}),500*n)},r=0;r<e.length/4;r+=1)n(r)}},{key:"setUpAfterLoad",value:function(t,n,r,i){var s=(null==n?void 0:n.exportFilesClass)||e.EXPORT_BUTTON_CLASS;return setTimeout((function(){var n=null==r?void 0:r.getElementsByClassName(s)[0];n&&(n.onclick=function(){return e.exportFile(t)})})),(null==n?void 0:n.afterLoadHtml)||"<div>\n Model loaded successfully and has been cached for future requests.\n ".concat(i?"":'<br/> <button style="margin-top: 5px" class="'.concat(s,' deep-chat-button">Export</button>'),"\n </div>")}}]),e}();wn.DOWNLOAD_BUTTON_CLASS="deep-chat-download-button",wn.UPLOAD_BUTTON_CLASS="deep-chat-upload-button",wn.FILE_INPUT_CLASS="deep-chat-file-input",wn.EXPORT_BUTTON_CLASS="deep-chat-export-button";var Sn=wn,En={model_list:[{model_url:"https://huggingface.co/mlc-ai/Llama-2-7b-chat-hf-q4f32_1-MLC/resolve/main/",local_id:"Llama-2-7b-chat-hf-q4f32_1",model_lib_url:"https://raw.githubusercontent.com/mlc-ai/binary-mlc-llm-libs/main/Llama-2-7b-chat-hf/Llama-2-7b-chat-hf-q4f32_1-ctx4k_cs1k-webgpu.wasm",vram_required_MB:9109.03,low_resource_required:!1},{model_url:"https://huggingface.co/mlc-ai/Llama-2-7b-chat-hf-q4f16_1-MLC/resolve/main/",local_id:"Llama-2-7b-chat-hf-q4f16_1",model_lib_url:"https://raw.githubusercontent.com/mlc-ai/binary-mlc-llm-libs/main/Llama-2-7b-chat-hf/Llama-2-7b-chat-hf-q4f16_1-ctx4k_cs1k-webgpu.wasm",vram_required_MB:6749.02,low_resource_required:!1,required_features:["shader-f16"]},{model_url:"https://huggingface.co/mlc-ai/Llama-2-7b-chat-hf-q4f16_1-MLC/resolve/main/",local_id:"Llama-2-7b-chat-hf-q4f16_1-1k",model_lib_url:"https://raw.githubusercontent.com/mlc-ai/binary-mlc-llm-libs/main/Llama-2-7b-chat-hf/Llama-2-7b-chat-hf-q4f16_1-ctx1k-webgpu.wasm",vram_required_MB:4618.52,low_resource_required:!1,required_features:["shader-f16"]},{model_url:"https://huggingface.co/mlc-ai/Llama-2-13b-chat-hf-q4f16_1-MLC/resolve/main/",local_id:"Llama-2-13b-chat-hf-q4f16_1",model_lib_url:"https://raw.githubusercontent.com/mlc-ai/binary-mlc-llm-libs/main/Llama-2-13b-chat-hf/Llama-2-13b-chat-hf-q4f16_1-ctx4k_cs1k-webgpu.wasm",vram_required_MB:11814.09,low_resource_required:!1,required_features:["shader-f16"]},{model_url:"https://huggingface.co/mlc-ai/Llama-2-70b-chat-hf-q4f16_1-MLC/resolve/main/",local_id:"Llama-2-70b-chat-hf-q4f16_1",model_lib_url:"https://raw.githubusercontent.com/mlc-ai/binary-mlc-llm-libs/main/Llama-2-70b-chat-hf/Llama-2-70b-chat-hf-q4f16_1-ctx4k_cs1k-webgpu.wasm",vram_required_MB:43729.05,low_resource_required:!1,required_features:["shader-f16"]},{model_url:"https://huggingface.co/mlc-ai/RedPajama-INCITE-Chat-3B-v1-q4f16_1-MLC/resolve/main/",local_id:"RedPajama-INCITE-Chat-3B-v1-q4f16_1",model_lib_url:"https://raw.githubusercontent.com/mlc-ai/binary-mlc-llm-libs/main/RedPajama-INCITE-Chat-3B-v1/RedPajama-INCITE-Chat-3B-v1-q4f16_1-ctx2k-webgpu.wasm",vram_required_MB:2972.09,low_resource_required:!1,required_features:["shader-f16"]},{model_url:"https://huggingface.co/mlc-ai/RedPajama-INCITE-Chat-3B-v1-q4f32_1-MLC/resolve/main/",local_id:"RedPajama-INCITE-Chat-3B-v1-q4f32_1",model_lib_url:"https://raw.githubusercontent.com/mlc-ai/binary-mlc-llm-libs/main/RedPajama-INCITE-Chat-3B-v1/RedPajama-INCITE-Chat-3B-v1-q4f32_1-ctx2k-webgpu.wasm",vram_required_MB:3928.09,low_resource_required:!1},{model_url:"https://huggingface.co/mlc-ai/RedPajama-INCITE-Chat-3B-v1-q4f16_1-MLC/resolve/main/",local_id:"RedPajama-INCITE-Chat-3B-v1-q4f16_1-1k",model_lib_url:"https://raw.githubusercontent.com/mlc-ai/binary-mlc-llm-libs/main/RedPajama-INCITE-Chat-3B-v1/RedPajama-INCITE-Chat-3B-v1-q4f16_1-ctx1k-webgpu.wasm",vram_required_MB:2041.09,low_resource_required:!0,required_features:["shader-f16"]},{model_url:"https://huggingface.co/mlc-ai/RedPajama-INCITE-Chat-3B-v1-q4f32_1-MLC/resolve/main/",local_id:"RedPajama-INCITE-Chat-3B-v1-q4f32_1-1k",model_lib_url:"https://raw.githubusercontent.com/mlc-ai/binary-mlc-llm-libs/main/RedPajama-INCITE-Chat-3B-v1/RedPajama-INCITE-Chat-3B-v1-q4f32_1-ctx1k-webgpu.wasm",vram_required_MB:2558.09,low_resource_required:!0},{model_url:"https://huggingface.co/mlc-ai/WizardMath-7B-V1.1-q4f16_1-MLC/resolve/main/",local_id:"WizardMath-7B-V1.1-q4f16_1",model_lib_url:"https://raw.githubusercontent.com/mlc-ai/binary-mlc-llm-libs/main/Mistral-7B-Instruct-v0.2/Mistral-7B-Instruct-v0.2-q4f16_1-sw4k_cs1k-webgpu.wasm",vram_required_MB:6079.02,low_resource_required:!1,required_features:["shader-f16"]},{model_url:"https://huggingface.co/mlc-ai/Mistral-7B-Instruct-v0.2-q4f16_1-MLC/resolve/main/",local_id:"Mistral-7B-Instruct-v0.2-q4f16_1",model_lib_url:"https://raw.githubusercontent.com/mlc-ai/binary-mlc-llm-libs/main/Mistral-7B-Instruct-v0.2/Mistral-7B-Instruct-v0.2-q4f16_1-sw4k_cs1k-webgpu.wasm",vram_required_MB:6079.02,low_resource_required:!1,required_features:["shader-f16"]},{model_url:"https://huggingface.co/mlc-ai/OpenHermes-2.5-Mistral-7B-q4f16_1-MLC/resolve/main/",local_id:"OpenHermes-2.5-Mistral-7B-q4f16_1",model_lib_url:"https://raw.githubusercontent.com/mlc-ai/binary-mlc-llm-libs/main/Mistral-7B-Instruct-v0.2/Mistral-7B-Instruct-v0.2-q4f16_1-sw4k_cs1k-webgpu.wasm",vram_required_MB:6079.02,low_resource_required:!1,required_features:["shader-f16"]},{model_url:"https://huggingface.co/mlc-ai/NeuralHermes-2.5-Mistral-7B-q4f16_1-MLC/resolve/main/",local_id:"NeuralHermes-2.5-Mistral-7B-q4f16_1",model_lib_url:"https://raw.githubusercontent.com/mlc-ai/binary-mlc-llm-libs/main/Mistral-7B-Instruct-v0.2/Mistral-7B-Instruct-v0.2-q4f16_1-sw4k_cs1k-webgpu.wasm",vram_required_MB:6079.02,low_resource_required:!1,required_features:["shader-f16"]},{model_url:"https://huggingface.co/mlc-ai/TinyLlama-1.1B-Chat-v0.4-q0f16-MLC/resolve/main/",local_id:"TinyLlama-1.1B-Chat-v0.4-q0f16",model_lib_url:"https://raw.githubusercontent.com/mlc-ai/binary-mlc-llm-libs/main/TinyLlama-1.1B-Chat-v0.4/TinyLlama-1.1B-Chat-v0.4-q0f16-ctx2k-webgpu.wasm",vram_required_MB:5063.52,low_resource_required:!1,required_features:["shader-f16"]},{model_url:"https://huggingface.co/mlc-ai/TinyLlama-1.1B-Chat-v0.4-q0f32-MLC/resolve/main/",local_id:"TinyLlama-1.1B-Chat-v0.4-q0f32",model_lib_url:"https://raw.githubusercontent.com/mlc-ai/binary-mlc-llm-libs/main/TinyLlama-1.1B-Chat-v0.4/TinyLlama-1.1B-Chat-v0.4-q0f32-ctx2k-webgpu.wasm",vram_required_MB:5394.53,low_resource_required:!1},{model_url:"https://huggingface.co/mlc-ai/TinyLlama-1.1B-Chat-v0.4-q4f16_1-MLC/resolve/main/",local_id:"TinyLlama-1.1B-Chat-v0.4-q4f16_1-1k",model_lib_url:"https://raw.githubusercontent.com/mlc-ai/binary-mlc-llm-libs/main/TinyLlama-1.1B-Chat-v0.4/TinyLlama-1.1B-Chat-v0.4-q4f16_1-ctx1k-webgpu.wasm",vram_required_MB:899.11,low_resource_required:!0,required_features:["shader-f16"]},{model_url:"https://huggingface.co/mlc-ai/TinyLlama-1.1B-Chat-v0.4-q4f32_1-MLC/resolve/main/",local_id:"TinyLlama-1.1B-Chat-v0.4-q4f32_1-1k",model_lib_url:"https://raw.githubusercontent.com/mlc-ai/binary-mlc-llm-libs/main/TinyLlama-1.1B-Chat-v0.4/TinyLlama-1.1B-Chat-v0.4-q4f32_1-ctx1k-webgpu.wasm",vram_required_MB:992.11,low_resource_required:!0}],use_web_worker:!0},Cn=function(e){function t(e){var n,r,i;return I(this,t),(n=y(this,t,[e]))._isModelLoaded=!1,n._isModelLoading=!1,n._loadOnFirstMessage=!1,n._webModel={},n.permittedErrorPrefixes=[t.MULTIPLE_MODELS_ERROR,t.WEB_LLM_NOT_FOUND_ERROR,t.GENERIC_ERROR],n._conversationHistory=[],"object"==L(e.webModel)&&(n._webModel=e.webModel),null!=(r=n._webModel.load)&&r.clearCache&&t.clearAllCache(),n.findModelInWindow(e),n.canSendMessage=n.canSubmit.bind(b(n)),n._chatEl=null==(i=e.shadowRoot)?void 0:i.children[0],e.initialMessages&&t.setUpHistory(n._conversationHistory,e.initialMessages),n}var n,r,i,s,a,o,l,u,c,d;return x(t,e),R(t,[{key:"setUpMessages",value:function(e){var t=this;this._messages=e,this._removeIntro=function(){e.removeIntroductoryMessage(),t._removeIntro=void 0}}},{key:"findModelInWindow",value:function(e){var n,r=this,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;window.webLLM?this.configureInit(this.shouldAddInitialMessage(e.introMessage)):i>t.MODULE_SEARCH_LIMIT_S?(null==(n=this._messages)||n.addNewErrorMessage("service",t.WEB_LLM_NOT_FOUND_ERROR),console.error("The deep-chat-web-llm module has not been attached to the window object. Please see the following guide:"),console.error("https://deepchat.dev/examples/externalModules")):setTimeout((function(){return r.findModelInWindow(e,i+1)}),1e3)}},{key:"shouldAddInitialMessage",value:function(e){var t;return!e&&this._webModel&&!1!==(null==(t=this._webModel.introMessage)?void 0:t.displayed)}},{key:"scrollToTop",value:function(e){var t,n=this;!1!==(null==(t=this._webModel.introMessage)?void 0:t.autoScroll)&&setTimeout((function(){var e,t;null!=(e=n._messages)&&e.elementRef&&$.scrollToTop(null==(t=n._messages)?void 0:t.elementRef)}),e)}},{key:"getIntroMessage",value:function(e){if(this.shouldAddInitialMessage(e)&&this._chatEl){var t=Sn.setUpInitial(this.init.bind(this),this._webModel.introMessage,this._chatEl,!!this._webModel.worker);return this.scrollToTop(1),{role:ue.AI_ROLE,html:t,sendUpdate:!1}}}},{key:"configureInit",value:(d=C(S().mark((function e(t){var n;return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!(n=this._webModel.load)){e.next=8;break}if(!n.onInit){e.next=5;break}return this.init(),e.abrupt("return");case 5:if(!n.onMessage){e.next=8;break}return this._loadOnFirstMessage=!0,e.abrupt("return");case 8:t||this.init();case 9:case"end":return e.stop()}}),e,this)}))),function(e){return d.apply(this,arguments)})},{key:"init",value:(c=C(S().mark((function e(t){var n,r;return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(null==(n=this._messages)||n.removeError(),r=this.attemptToCreateChat(),e.t0=r,!e.t0){e.next=6;break}return e.next=6,this.loadModel(r,t);case 6:case"end":return e.stop()}}),e,this)}))),function(e){return c.apply(this,arguments)})},{key:"attemptToCreateChat",value:function(){var e;if(t.chat)return null==(e=this._messages)||e.addNewErrorMessage("service",t.MULTIPLE_MODELS_ERROR),void console.error(t.MULTIPLE_MODELS_ERROR);if(!this._isModelLoaded&&!this._isModelLoading){var n=this._webModel.worker;return En.use_web_worker&&n?new window.webLLM.ChatWorkerClient(n):new window.webLLM.ChatModule}}},{key:"getConfig",value:function(){var e,n=t.DEFAULT_MODEL;this._webModel.model&&(n=this._webModel.model);var r=JSON.parse(JSON.stringify(En));if(this._webModel.urls){var i=r.model_list.find((function(e){return e.local_id=n}));i&&(this._webModel.urls.model&&(i.model_url=this._webModel.urls.model),this._webModel.urls.wasm&&(i.model_lib_url=this._webModel.urls.wasm))}return null!=(e=this._webModel.load)&&e.skipCache&&(r.use_cache=!1),{model:n,appConfig:r}}},{key:"loadModel",value:(u=C(S().mark((function e(n,r){var i,s,a,o,l,u,c,d,p,h,f,m,v,g,y,b=this;return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return this.scrollToTop(),t.chat=n,this._isModelLoading=!0,d=!1===(null==(i=this._webModel.introMessage)?void 0:i.displayed),p=function(e){var t;null==(t=b._messages)||t.addNewMessage({html:"<div>".concat(e.text,"</div>"),overwrite:!0,sendUpdate:!1}),d&&(setTimeout((function(){var e;return $.scrollToBottom(null==(e=b._messages)?void 0:e.elementRef)})),d=!1)},t.chat.setInitProgressCallback(p),e.prev=4,f=this.getConfig(),m=f.model,v=f.appConfig,g={},this._webModel.instruction&&(g.conv_config={system:this._webModel.instruction}),this._conversationHistory.length>0&&(g.conversation_history=this._conversationHistory),e.next=10,t.chat.reload(m,g,v,r);case 10:h=e.sent,e.next=16;break;case 13:return e.prev=13,e.t0=e.catch(4),e.abrupt("return",this.unloadChat(e.t0));case 16:null==(a=(s=this.deepChat)._validationHandler)||a.call(s),null!=(o=this._webModel.introMessage)&&o.removeAfterLoad?!1===this._webModel.introMessage.displayed?null==(u=this._messages)||u.removeLastMessage():null==(c=this._removeIntro)||c.call(this):(y=Sn.setUpAfterLoad(h,this._webModel.introMessage,this._chatEl,!!this._webModel.worker),null==(l=this._messages)||l.addNewMessage({html:y,overwrite:!0,sendUpdate:!1})),this._isModelLoaded=!0,this._isModelLoading=!1;case 18:case"end":return e.stop()}}),e,this,[[4,13]])}))),function(e,t){return u.apply(this,arguments)})},{key:"unloadChat",value:(l=C(S().mark((function e(n){var r;return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(null==(r=this._messages)||r.addNewErrorMessage("service",t.GENERIC_ERROR),console.error(n),this._isModelLoaded=!1,this._isModelLoading=!1,e.t0=t.chat,!e.t0){e.next=9;break}return e.next=8,t.chat.unload();case 8:t.chat=void 0;case 9:case"end":return e.stop()}}),e,this)}))),function(e){return l.apply(this,arguments)})},{key:"immediateResp",value:(o=C(S().mark((function e(n,r,i){var s,a;return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,i.generate(r,void 0,0);case 2:return e.t0=e.sent,s={text:e.t0},e.next=6,t.processResponse(this.deepChat,n,s);case 6:(a=e.sent)&&n.addNewMessage(a),this.completionsHandlers.onFinish();case 8:case"end":return e.stop()}}),e,this)}))),function(e,t,n){return o.apply(this,arguments)})},{key:"streamResp",value:(a=C(S().mark((function e(n,r,i){var s,a=this;return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return this.streamHandlers.abortStream.abort=function(){i.interruptGenerate()},this.streamHandlers.onOpen(),s=new Kt(n),e.next=4,i.generate(r,function(){var e=C(S().mark((function e(r,i){var o;return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,t.processResponse(a.deepChat,n,{text:i});case 2:(o=e.sent)&&s.upsertStreamedMessage({text:o.text,overwrite:!0});case 4:case"end":return e.stop()}}),e)})));return function(t,n){return e.apply(this,arguments)}}());case 4:s.finaliseStreamedMessage(),this.streamHandlers.onClose();case 6:case"end":return e.stop()}}),e,this)}))),function(e,t,n){return a.apply(this,arguments)})},{key:"generateRespByType",value:(s=C(S().mark((function e(t,n,r,i){var s;return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(e.prev=0,!r){e.next=6;break}return e.next=4,this.streamResp(t,n,i);case 4:e.next=8;break;case 6:return e.next=8,this.immediateResp(t,n,i);case 8:e.next=13;break;case 10:e.prev=10,e.t0=e.catch(0),null==(s=this._messages)||s.addNewErrorMessage("service"),console.log(e.t0);case 13:case"end":return e.stop()}}),e,this,[[0,10]])}))),function(e,t,n,r){return s.apply(this,arguments)})},{key:"generateResp",value:(i=C(S().mark((function e(t,n,r){var i,s,a,o,l,u,c;return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return i=n[n.length-1].text,e.next=3,Jt.processRequestInterceptor(this.deepChat,{body:{text:i}});case 3:s=e.sent,a=s.body,o=s.error,l=!!this.deepChat.stream;try{o?(Jt.displayError(t,new Error(o)),(l?this.streamHandlers.onClose:this.completionsHandlers.onFinish)()):a&&a.text?this.generateRespByType(t,a.text,!!this.deepChat.stream,r):(u=X.INVALID_MODEL_REQUEST({body:a},!1),console.error(u),c=l?this.streamHandlers.onClose:this.completionsHandlers.onFinish,Jt.onInterceptorError(t,u,c))}catch(e){this.unloadChat(e)}case 8:case"end":return e.stop()}}),e,this)}))),function(e,t,n){return i.apply(this,arguments)})},{key:"callServiceAPI",value:(r=C(S().mark((function e(n,r){var i,s;return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(this._isModelLoaded){e.next=7;break}if(!this._loadOnFirstMessage){e.next=6;break}return e.next=4,this.init();case 4:e.next=7;break;case 6:return e.abrupt("return");case 7:!t.chat||this._isModelLoading||(null!=(i=this._webModel.introMessage)&&i.removeAfterMessage&&(null==(s=this._removeIntro)||s.call(this)),n.addLoadingMessage(),this.generateResp(n,r,t.chat));case 8:case"end":return e.stop()}}),e,this)}))),function(e,t){return r.apply(this,arguments)})},{key:"canSubmit",value:function(e){return!(null==e||!e.trim()||this._isModelLoading||!this._loadOnFirstMessage&&!this._isModelLoaded)}},{key:"isWebModel",value:function(){return!0}}],[{key:"setUpHistory",value:function(e,t){t.forEach((function(n,r){if(n.role===ue.USER_ROLE&&n.text){var i=t[r+1];null!=i&&i.text&&i.role!==ue.USER_ROLE&&e.push([n.text,i.text])}}))}},{key:"processResponse",value:(n=C(S().mark((function e(t,n,r){var i,s,a;return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,null==(i=t.responseInterceptor)?void 0:i.call(t,r);case 2:if(e.t0=e.sent,e.t0){e.next=5;break}e.t0=r;case 5:if(!(s=e.t0).error){e.next=11;break}return Jt.displayError(n,new Error(s.error)),e.abrupt("return");case 11:if(s&&s.text){e.next=15;break}return a=X.INVALID_MODEL_RESPONSE(r,!!t.responseInterceptor,s),Jt.displayError(n,new Error(a)),e.abrupt("return");case 15:return e.abrupt("return",s);case 16:case"end":return e.stop()}}),e)}))),function(e,t,r){return n.apply(this,arguments)})},{key:"clearAllCache",value:function(){t.clearCache("webllm/model"),t.clearCache("webllm/wasm")}},{key:"clearCache",value:function(e){caches.open(e).then((function(e){e.keys().then((function(t){t.forEach((function(t){e.delete(t)}))}))}))}}]),t}(fn);Cn.GENERIC_ERROR="Error, please check the [troubleshooting](https://deepchat.dev/docs/webModel#troubleshooting) section of documentation for help.",Cn.MULTIPLE_MODELS_ERROR="Cannot run multiple web models",Cn.WEB_LLM_NOT_FOUND_ERROR="WebLLM module not found",Cn.DEFAULT_MODEL="Llama-2-7b-chat-hf-q4f32_1",Cn.MODULE_SEARCH_LIMIT_S=5;var Mn=Cn,Tn=function(){function e(){I(this,e)}return R(e,null,[{key:"buildHeaders",value:function(e){return{Authorization:"Bearer ".concat(e),"Content-Type":"application/json"}}},{key:"handleVerificationResult",value:function(e,t,n,r){var i=e;Array.isArray(i.error)&&"Error in `parameters`: field required"===i.error[0]?n(t):r(X.INVALID_KEY)}},{key:"buildKeyVerificationDetails",value:function(){return{url:"https://api-inference.huggingface.co/models/gpt2",method:"POST",handleVerificationResult:e.handleVerificationResult}}}]),e}(),An=function(e){function t(e,n,r,i,s,a){var o;return I(this,t),(o=y(this,t,[e,Tn.buildKeyVerificationDetails(),Tn.buildHeaders,s,a])).insertKeyPlaceholderText="Hugging Face Token",o.keyHelpUrl="https://huggingface.co/settings/tokens",o.introPanelMarkUp='\n <div style="width: 100%; text-align: center; margin-left: -10px"><b>Hugging Face</b></div>\n <p>First message may take an extented amount of time to complete as the model needs to be initialized.</p>',o.permittedErrorPrefixes=["Authorization header"],o.url="".concat(t.URL_PREFIX).concat(r),o.textInputPlaceholderText=n,"object"==L(i)&&(i.model&&(o.url="".concat(t.URL_PREFIX).concat(i.model)),i.options&&(o.rawBody.options=i.options),i.parameters&&(o.rawBody.parameters=i.parameters)),o}var n;return x(t,e),R(t,[{key:"preprocessBody",value:function(e,t,n){var r,i=JSON.parse(JSON.stringify(e)),s=t[t.length-1].text;if(s)return null!==(r=i.options)&&void 0!==r||(i.options={}),i.options.wait_for_model=!0,T({inputs:s},i)}},{key:"callServiceAPI",value:(n=C(S().mark((function e(t,n,r){var i;return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(this.requestSettings){e.next=2;break}throw new Error("Request settings have not been set up");case 2:i=this.preprocessBody(this.rawBody,n,r),dn.request(this,i,t);case 4:case"end":return e.stop()}}),e,this)}))),function(e,t,r){return n.apply(this,arguments)})}]),t}(mn);An.URL_PREFIX="https://api-inference.huggingface.co/models/";var Ln=An,In=function(e){function t(e,n,r,i,s,a){var o;return I(this,t),(o=y(this,t,[e,n,r,i,s,a])).isTextInputDisabled=!0,o.canSendMessage=t.canSendFile,o}var n;return x(t,e),R(t,[{key:"preprocessBody",value:function(e,t,n){return n[0]}},{key:"callServiceAPI",value:(n=C(S().mark((function e(t,n,r){return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(this.requestSettings){e.next=2;break}throw new Error("Request settings have not been set up");case 2:if(null!=r&&r[0]){e.next=4;break}throw new Error("No file was added");case 4:dn.poll(this,r[0],t,!1);case 5:case"end":return e.stop()}}),e,this)}))),function(e,t,r){return n.apply(this,arguments)})}],[{key:"canSendFile",value:function(e,t){return!(null==t||!t[0])}}]),t}(Ln),On=function(e){function t(e){var n,r,i;return I(this,t),y(this,t,[e,"Attach an audio file","ehcalabres/wav2vec2-lg-xlsr-en-speech-emotion-recognition",null==(r=null==(n=e.directConnection)?void 0:n.huggingFace)?void 0:r.audioClassification,null==(i=e.directConnection)?void 0:i.huggingFace,{audio:{}}])}var n;return x(t,e),R(t,[{key:"extractPollResultData",value:(n=C(S().mark((function e(t){var n;return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!t.estimated_time){e.next=2;break}return e.abrupt("return",{timeoutMS:1e3*(t.estimated_time+1)});case 2:if(!t.error){e.next=4;break}throw t.error;case 4:return e.abrupt("return",{text:(null==(n=t[0])?void 0:n.label)||""});case 5:case"end":return e.stop()}}),e)}))),function(e){return n.apply(this,arguments)})}]),t}(In),Rn=function(e){function t(e){var n,r,i;return I(this,t),y(this,t,[e,"Attach an image file","google/vit-base-patch16-224",null==(r=null==(n=e.directConnection)?void 0:n.huggingFace)?void 0:r.imageClassification,null==(i=e.directConnection)?void 0:i.huggingFace,{images:{}}])}var n;return x(t,e),R(t,[{key:"extractPollResultData",value:(n=C(S().mark((function e(t){var n;return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!t.estimated_time){e.next=2;break}return e.abrupt("return",{timeoutMS:1e3*(t.estimated_time+1)});case 2:if(!t.error){e.next=4;break}throw t.error;case 4:return e.abrupt("return",{text:(null==(n=t[0])?void 0:n.label)||""});case 5:case"end":return e.stop()}}),e)}))),function(e){return n.apply(this,arguments)})}]),t}(In),Nn="data:image/png;base64,",Pn=function(){function e(){I(this,e)}return R(e,null,[{key:"buildHeaders",value:function(e){return{Authorization:"Bearer ".concat(e),"Content-Type":"application/json"}}},{key:"handleVerificationResult",value:function(e,t,n,r){e.message?r(X.INVALID_KEY):n(t)}},{key:"buildKeyVerificationDetails",value:function(){return{url:"https://api.stability.ai/v1/engines/list",method:"GET",handleVerificationResult:e.handleVerificationResult}}}]),e}(),jn=function(e){function t(e,n,r,i,s){var a;return I(this,t),(a=y(this,t,[e,n,r,i,s])).insertKeyPlaceholderText="Stability AI API Key",a.keyHelpUrl="https://platform.stability.ai/docs/getting-started/authentication",a.permittedErrorPrefixes=["Incorrect","invalid_"],a}return x(t,e),R(t)}(mn),Dn=function(e){function t(e){var n,r;I(this,t);var i=JSON.parse(JSON.stringify(e.directConnection)),s=null==i?void 0:i.stabilityAI;(n=y(this,t,[e,Pn.buildKeyVerificationDetails(),Pn.buildHeaders,s,{images:{files:{acceptedFormats:".png",maxNumberOfFiles:1}}}])).url="https://api.stability.ai/v1/generation/esrgan-v1-x2plus/image-to-image/upscale",n.textInputPlaceholderText="Describe image changes",n.introPanelMarkUp='\n <div style="width: 100%; text-align: center; margin-left: -10px"><b>Stability AI</b></div>\n <div style="width: 100%; text-align: center; margin-left: -10px; margin-top: 5px"><b>Image to Image Upscale</b></div>\n <p>Upload an image to generate a new one with higher resolution.</p>\n <p>Click <a href="https://platform.stability.ai/">here</a> for more info.</p>';var a=null==(r=null==i?void 0:i.stabilityAI)?void 0:r.imageToImageUpscale;return"object"==L(a)&&(a.engine_id&&(n.url="https://api.stability.ai/v1/generation/".concat(a.engine_id,"/image-to-image/upscale")),t.cleanConfig(a),Object.assign(n.rawBody,a)),n.canSendMessage=t.canSendFileMessage,n}var n,r;return x(t,e),R(t,[{key:"createFormDataBody",value:function(e,t){var n=new FormData;return n.append("image",t),Object.keys(e).forEach((function(t){n.append(t,String(e[t]))})),n}},{key:"callServiceAPI",value:(r=C(S().mark((function e(t,n,r){var i;return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(this.requestSettings){e.next=2;break}throw new Error("Request settings have not been set up");case 2:if(r){e.next=4;break}throw new Error("Image was not found");case 4:i=this.createFormDataBody(this.rawBody,r[0]),Jt.tempRemoveContentHeader(this.requestSettings,dn.request.bind(this,this,i,t),!1);case 6:case"end":return e.stop()}}),e,this)}))),function(e,t,n){return r.apply(this,arguments)})},{key:"extractResultData",value:(n=C(S().mark((function e(t){return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!t.message){e.next=2;break}throw t.message;case 2:return e.abrupt("return",{files:t.artifacts.map((function(e){return{src:"".concat(Nn).concat(e.base64),type:"image"}}))});case 3:case"end":return e.stop()}}),e)}))),function(e){return n.apply(this,arguments)})}],[{key:"cleanConfig",value:function(e){delete e.engine_id}},{key:"canSendFileMessage",value:function(e,t){return!(null==t||!t[0])}}]),t}(jn),Bn=function(e){function t(e){var n,r;I(this,t);var i=JSON.parse(JSON.stringify(e.directConnection)),s=null==i?void 0:i.stabilityAI;(n=y(this,t,[e,Pn.buildKeyVerificationDetails(),Pn.buildHeaders,s,{images:{files:{acceptedFormats:".png",maxNumberOfFiles:2}}}])).url="https://api.stability.ai/v1/generation/stable-diffusion-xl-1024-v1-0/image-to-image/masking",n._maskSource="MASK_IMAGE_WHITE",n.textInputPlaceholderText="Describe image changes",n.introPanelMarkUp='\n <div style="width: 100%; text-align: center; margin-left: -10px"><b>Stability AI</b></div>\n <div style="width: 100%; text-align: center; margin-left: -10px; margin-top: 5px"><b>Image to Image Masking</b></div>\n <p>Upload an image, its mask image to create a new one based on the changes you have described for the mask area.</p>\n <p>Click <a href="https://platform.stability.ai/">here</a> for more info.</p>';var a=null==(r=null==i?void 0:i.stabilityAI)?void 0:r.imageToImageMasking;return"object"==L(a)&&(a.engine_id&&(n.url="https://api.stability.ai/v1/generation/".concat(a.engine_id,"/image-to-image/masking")),void 0!==a.weight&&null!==a.weight&&(n._imageWeight=a.weight),void 0!==a.mask_source&&null!==a.mask_source&&(n._maskSource=a.mask_source),t.cleanConfig(a),Object.assign(n.rawBody,a)),n.canSendMessage=t.canSendFileTextMessage,n}var n,r;return x(t,e),R(t,[{key:"createFormDataBody",value:function(e,t,n,r){var i=new FormData;return i.append("init_image",t),i.append("mask_source",String(this._maskSource)),i.append("mask_image",n),r&&""!==r&&i.append("text_prompts[0][text]",r),void 0!==this._imageWeight&&null!==this._imageWeight&&i.append("text_prompts[0][weight]",String(this._imageWeight)),Object.keys(e).forEach((function(t){i.append(t,String(e[t]))})),void 0===i.get("weight")&&i.append("weight",String(1)),i}},{key:"callServiceAPI",value:(r=C(S().mark((function e(t,n,r){var i,s,a,o;return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(this.requestSettings){e.next=2;break}throw new Error("Request settings have not been set up");case 2:if(r&&r[0]&&r[1]){e.next=4;break}throw new Error("Image was not found");case 4:a=null==(s=null==(i=n[n.length-1])?void 0:i.text)?void 0:s.trim(),o=this.createFormDataBody(this.rawBody,r[0],r[1],a),Jt.tempRemoveContentHeader(this.requestSettings,dn.request.bind(this,this,o,t),!1);case 6:case"end":return e.stop()}}),e,this)}))),function(e,t,n){return r.apply(this,arguments)})},{key:"extractResultData",value:(n=C(S().mark((function e(t){return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!t.message){e.next=2;break}throw t.message;case 2:return e.abrupt("return",{files:t.artifacts.map((function(e){return{src:"".concat(Nn).concat(e.base64),type:"image"}}))});case 3:case"end":return e.stop()}}),e)}))),function(e){return n.apply(this,arguments)})}],[{key:"cleanConfig",value:function(e){delete e.engine_id,delete e.weight}},{key:"canSendFileTextMessage",value:function(e,t){return!(null==t||!t[0]||!e||""===e.trim())}}]),t}(jn),Fn=function(e){function t(e){var n,r,i;return I(this,t),y(this,t,[e,"Attach an audio file","facebook/wav2vec2-large-960h-lv60-self",null==(r=null==(n=e.directConnection)?void 0:n.huggingFace)?void 0:r.audioSpeechRecognition,null==(i=e.directConnection)?void 0:i.huggingFace,{audio:{}}])}var n;return x(t,e),R(t,[{key:"extractPollResultData",value:(n=C(S().mark((function e(t){return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!t.estimated_time){e.next=2;break}return e.abrupt("return",{timeoutMS:1e3*(t.estimated_time+1)});case 2:if(!t.error){e.next=4;break}throw t.error;case 4:return e.abrupt("return",{text:t.text||""});case 5:case"end":return e.stop()}}),e)}))),function(e){return n.apply(this,arguments)})}]),t}(In),qn=function(e){function t(e){var n,r,i;return I(this,t),y(this,t,[e,"Once upon a time","gpt2",null==(r=null==(n=e.directConnection)?void 0:n.huggingFace)?void 0:r.textGeneration,null==(i=e.directConnection)?void 0:i.huggingFace])}var n;return x(t,e),R(t,[{key:"extractResultData",value:(n=C(S().mark((function e(t){return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!t.error){e.next=2;break}throw t.error;case 2:return e.abrupt("return",{text:t[0].generated_text||""});case 3:case"end":return e.stop()}}),e)}))),function(e){return n.apply(this,arguments)})}]),t}(Ln),Un=function(e){function t(e){var n,r,i,s;I(this,t);var a=null==(i=null==(r=e.directConnection)?void 0:r.huggingFace)?void 0:i.questionAnswer;return(n=y(this,t,[e,"Ask a question","bert-large-uncased-whole-word-masking-finetuned-squad",a,null==(s=e.directConnection)?void 0:s.huggingFace])).permittedErrorPrefixes=["Authorization header","Error in"],n.context=a.context,n}var n;return x(t,e),R(t,[{key:"preprocessBody",value:function(e,t){var n=t[t.length-1].text;if(n)return{inputs:{question:n,context:this.context,options:{wait_for_model:!0}}}}},{key:"extractResultData",value:(n=C(S().mark((function e(t){return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!t.error){e.next=2;break}throw t.error;case 2:return e.abrupt("return",{text:t.answer||""});case 3:case"end":return e.stop()}}),e)}))),function(e){return n.apply(this,arguments)})}]),t}(Ln),zn=function(e){function t(e){var n,r,i;return I(this,t),y(this,t,[e,"Insert text to summarize","facebook/bart-large-cnn",null==(r=null==(n=e.directConnection)?void 0:n.huggingFace)?void 0:r.summarization,null==(i=e.directConnection)?void 0:i.huggingFace])}var n;return x(t,e),R(t,[{key:"extractResultData",value:(n=C(S().mark((function e(t){return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!t.error){e.next=2;break}throw t.error;case 2:return e.abrupt("return",{text:t[0].summary_text||""});case 3:case"end":return e.stop()}}),e)}))),function(e){return n.apply(this,arguments)})}]),t}(Ln),Hn=function(e){function t(e){var n,r,i,s,a;return I(this,t),null!==(n=(r=y(this,t,[e,"Ask me anything!","facebook/blenderbot-400M-distill",null==(s=null==(i=e.directConnection)?void 0:i.huggingFace)?void 0:s.conversation,null==(a=e.directConnection)?void 0:a.huggingFace])).maxMessages)&&void 0!==n||(r.maxMessages=-1),r}var n;return x(t,e),R(t,[{key:"processMessages",value:function(e){var t=e.filter((function(e){return e.text})),n=t[t.length-1].text,r=t.slice(0,t.length-1);if(n)return{past_user_inputs:r.filter((function(e){return"user"===e.role})).map((function(e){return e.text})),generated_responses:r.filter((function(e){return"ai"===e.role})).map((function(e){return e.text})),mostRecentMessageText:n}}},{key:"preprocessBody",value:function(e,t){var n,r=JSON.parse(JSON.stringify(e)),i=this.processMessages(t);if(i)return null!==(n=r.options)&&void 0!==n||(r.options={}),r.options.wait_for_model=!0,T({inputs:{past_user_inputs:i.past_user_inputs,generated_responses:i.generated_responses,text:i.mostRecentMessageText}},r)}},{key:"extractResultData",value:(n=C(S().mark((function e(t){return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!t.error){e.next=2;break}throw t.error;case 2:return e.abrupt("return",{text:t.generated_text||""});case 3:case"end":return e.stop()}}),e)}))),function(e){return n.apply(this,arguments)})}]),t}(Ln),Vn=function(e){function t(e){var n,r;I(this,t);var i=JSON.parse(JSON.stringify(e.directConnection)),s=i.stabilityAI;(n=y(this,t,[e,Pn.buildKeyVerificationDetails(),Pn.buildHeaders,s,{images:{files:{acceptedFormats:".png",maxNumberOfFiles:1}}}])).url="https://api.stability.ai/v1/generation/stable-diffusion-v1-6/image-to-image",n.textInputPlaceholderText="Describe image changes",n.introPanelMarkUp='\n <div style="width: 100%; text-align: center; margin-left: -10px"><b>Stability AI: Image to Image</b></div>\n <p>Upload an image to create a new one with the changes you have described.</p>\n <p>Click <a href="https://platform.stability.ai/">here</a> for more info.</p>';var a=null==(r=i.stabilityAI)?void 0:r.imageToImage;return"object"==L(a)&&(a.engine_id&&(n.url="https://api.stability.ai/v1/generation/".concat(a.engine_id,"/text-to-image")),void 0!==a.weight&&null!==a.weight&&(n._imageWeight=a.weight),t.cleanConfig(a),Object.assign(n.rawBody,a)),n.canSendMessage=t.canSendFileTextMessage,n}var n,r;return x(t,e),R(t,[{key:"createFormDataBody",value:function(e,t,n){var r=new FormData;return r.append("init_image",t),n&&""!==n&&r.append("text_prompts[0][text]",n),void 0!==this._imageWeight&&null!==this._imageWeight&&r.append("text_prompts[0][weight]",String(this._imageWeight)),Object.keys(e).forEach((function(t){r.append(t,String(e[t]))})),void 0===r.get("weight")&&r.append("weight",String(1)),r}},{key:"callServiceAPI",value:(r=C(S().mark((function e(t,n,r){var i,s,a,o;return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(this.requestSettings){e.next=2;break}throw new Error("Request settings have not been set up");case 2:if(r){e.next=4;break}throw new Error("Image was not found");case 4:a=null==(s=null==(i=n[n.length-1])?void 0:i.text)?void 0:s.trim(),o=this.createFormDataBody(this.rawBody,r[0],a),Jt.tempRemoveContentHeader(this.requestSettings,dn.request.bind(this,this,o,t),!1);case 6:case"end":return e.stop()}}),e,this)}))),function(e,t,n){return r.apply(this,arguments)})},{key:"extractResultData",value:(n=C(S().mark((function e(t){return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!t.message){e.next=2;break}throw t.message;case 2:return e.abrupt("return",{files:t.artifacts.map((function(e){return{src:"".concat(Nn).concat(e.base64),type:"image"}}))});case 3:case"end":return e.stop()}}),e)}))),function(e){return n.apply(this,arguments)})}],[{key:"cleanConfig",value:function(e){delete e.engine_id,delete e.weight}},{key:"canSendFileTextMessage",value:function(e,t){return!(null==t||!t[0]||!e||""===e.trim())}}]),t}(jn),Gn=function(e){function t(e){var n,r,i;return I(this,t),y(this,t,[e,"Insert text to translate","Helsinki-NLP/opus-tatoeba-en-ja",null==(r=null==(n=e.directConnection)?void 0:n.huggingFace)?void 0:r.translation,null==(i=e.directConnection)?void 0:i.huggingFace])}var n;return x(t,e),R(t,[{key:"extractResultData",value:(n=C(S().mark((function e(t){return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!t.error){e.next=2;break}throw t.error;case 2:return e.abrupt("return",{text:t[0].translation_text||""});case 3:case"end":return e.stop()}}),e)}))),function(e){return n.apply(this,arguments)})}]),t}(Ln),Wn=function(e){function t(e){var n,r;I(this,t);var i=JSON.parse(JSON.stringify(e.directConnection)),s=i.stabilityAI;(n=y(this,t,[e,Pn.buildKeyVerificationDetails(),Pn.buildHeaders,s])).url="https://api.stability.ai/v1/generation/stable-diffusion-v1-6/text-to-image",n.textInputPlaceholderText="Describe an image",n.introPanelMarkUp='\n <div style="width: 100%; text-align: center; margin-left: -10px"><b>Stability AI: Text to Image</b></div>\n <p>Insert text to generate an image.</p>\n <p>Click <a href="https://platform.stability.ai/">here</a> for more info.</p>';var a=null==(r=i.stabilityAI)?void 0:r.textToImage;return"object"==L(a)&&(a.engine_id&&(n.url="https://api.stability.ai/v1/generation/".concat(a.engine_id,"/text-to-image")),void 0!==a.weight&&null!==a.weight&&(n._imageWeight=a.weight),t.cleanConfig(a),Object.assign(n.rawBody,a)),n.canSendMessage=t.canSendTextMessage,n}var n,r;return x(t,e),R(t,[{key:"preprocessBody",value:function(e,t){var n=JSON.parse(JSON.stringify(e)),r={text:t};return this._imageWeight&&(r.weight=this._imageWeight),n.text_prompts=[r],n}},{key:"callServiceAPI",value:(r=C(S().mark((function e(t,n){var r;return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(this.requestSettings){e.next=2;break}throw new Error("Request settings have not been set up");case 2:r=this.preprocessBody(this.rawBody,n[n.length-1].text),dn.request(this,r,t);case 4:case"end":return e.stop()}}),e,this)}))),function(e,t){return r.apply(this,arguments)})},{key:"extractResultData",value:(n=C(S().mark((function e(t){return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!t.message){e.next=2;break}throw t.message;case 2:return e.abrupt("return",{files:t.artifacts.map((function(e){return{src:"".concat(Nn).concat(e.base64),type:"image"}}))});case 3:case"end":return e.stop()}}),e)}))),function(e){return n.apply(this,arguments)})}],[{key:"cleanConfig",value:function(e){delete e.engine_id,delete e.weight}},{key:"canSendTextMessage",value:function(e){return!(!e||""===e.trim())}}]),t}(jn),Kn=function(e){function t(e){var n,r,i,s;return I(this,t),(n=y(this,t,[e,"The goal of life is [MASK].","bert-base-uncased",null==(i=null==(r=e.directConnection)?void 0:r.huggingFace)?void 0:i.fillMask,null==(s=e.directConnection)?void 0:s.huggingFace])).introPanelMarkUp='\n <div style="width: 100%; text-align: center; margin-left: -10px"><b>Hugging Face</b></div>\n <p>Insert a sentence with the word [MASK] and the model will try to fill it for you. E.g. I want [MASK].</p>\n <p>First message may take an extented amount of time to complete as the model needs to be initialized.</p>',n.permittedErrorPrefixes=["Authorization header","No mask_token"],n}var n;return x(t,e),R(t,[{key:"extractResultData",value:(n=C(S().mark((function e(t){return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!t.error){e.next=2;break}throw t.error;case 2:return e.abrupt("return",{text:t[0].sequence||""});case 3:case"end":return e.stop()}}),e)}))),function(e){return n.apply(this,arguments)})}]),t}(Ln),Yn=function(){function e(){I(this,e)}return R(e,null,[{key:"buildHeaders",value:function(e){return{Authorization:"Bearer ".concat(e),"Content-Type":"application/json",accept:"application/json"}}},{key:"handleVerificationResult",value:function(e,t,n,r){var i;null!=(i=e.message)&&i.includes("invalid request: prompt must be at least 1 token long")?n(t):r(X.INVALID_KEY)}},{key:"buildKeyVerificationDetails",value:function(){return{url:"https://api.cohere.ai/v1/generate",method:"POST",handleVerificationResult:e.handleVerificationResult,body:JSON.stringify({prompt:""})}}}]),e}(),Jn=function(e){function t(e,n,r,i,s){var a;return I(this,t),(a=y(this,t,[e,Yn.buildKeyVerificationDetails(),Yn.buildHeaders,s])).insertKeyPlaceholderText="Cohere API Key",a.keyHelpUrl="https://dashboard.cohere.ai/api-keys",a.permittedErrorPrefixes=["invalid"],a.url=n,a.textInputPlaceholderText=r,i&&"object"==L(i)&&Object.assign(a.rawBody,i),a}return x(t,e),R(t)}(mn),Zn=function(e){function t(e){var n,r,i;return I(this,t),y(this,t,[e,"https://api.cohere.ai/v1/generate","Once upon a time",null==(r=null==(n=e.directConnection)?void 0:n.cohere)?void 0:r.textGeneration,null==(i=e.directConnection)?void 0:i.cohere])}var n,r;return x(t,e),R(t,[{key:"preprocessBody",value:function(e,t){var n=JSON.parse(JSON.stringify(e)),r=t[t.length-1].text;if(r)return T({prompt:r},n)}},{key:"callServiceAPI",value:(r=C(S().mark((function e(t,n){var r;return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(this.requestSettings){e.next=2;break}throw new Error("Request settings have not been set up");case 2:r=this.preprocessBody(this.rawBody,n),dn.request(this,r,t);case 4:case"end":return e.stop()}}),e,this)}))),function(e,t){return r.apply(this,arguments)})},{key:"extractResultData",value:(n=C(S().mark((function e(t){var n;return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!t.message){e.next=2;break}throw t.message;case 2:return e.abrupt("return",{text:(null==(n=t.generations)?void 0:n[0].text)||""});case 3:case"end":return e.stop()}}),e)}))),function(e){return n.apply(this,arguments)})}]),t}(Jn),Xn=function(e){function t(e){var n,r,i;return I(this,t),y(this,t,[e,"https://api.cohere.ai/v1/summarize","Insert text to summarize",null==(r=null==(n=e.directConnection)?void 0:n.cohere)?void 0:r.summarization,null==(i=e.directConnection)?void 0:i.cohere])}var n,r;return x(t,e),R(t,[{key:"preprocessBody",value:function(e,t){var n=JSON.parse(JSON.stringify(e)),r=t[t.length-1].text;if(r)return T({text:r},n)}},{key:"callServiceAPI",value:(r=C(S().mark((function e(t,n){var r;return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(this.requestSettings){e.next=2;break}throw new Error("Request settings have not been set up");case 2:r=this.preprocessBody(this.rawBody,n),dn.request(this,r,t);case 4:case"end":return e.stop()}}),e,this)}))),function(e,t){return r.apply(this,arguments)})},{key:"extractResultData",value:(n=C(S().mark((function e(t){return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!t.message){e.next=2;break}throw t.message;case 2:return e.abrupt("return",{text:t.summary||""});case 3:case"end":return e.stop()}}),e)}))),function(e){return n.apply(this,arguments)})}]),t}(Jn),Qn=function(){function e(){I(this,e)}var t;return R(e,null,[{key:"buildHeaders",value:function(e){return{Authorization:"Bearer ".concat(e),"Content-Type":"application/json"}}},{key:"handleVerificationResult",value:function(e,t,n,r){var i=e;i.error?"invalid_api_key"===i.error.code?r(X.INVALID_KEY):r(X.CONNECTION_FAILED):n(t)}},{key:"buildKeyVerificationDetails",value:function(){return{url:"https://api.openai.com/v1/models",method:"GET",handleVerificationResult:e.handleVerificationResult}}},{key:"directFetch",value:(t=C(S().mark((function e(t,n,r){var i,s,a=arguments;return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return i=!(a.length>3&&void 0!==a[3])||a[3],t.requestSettings.method=r,e.next=4,Jt.fetch(t,t.requestSettings.headers,i,n).then((function(e){return Jt.processResponseByType(e)}));case 4:if(!(s=e.sent).error){e.next=7;break}throw s.error.message;case 7:return e.abrupt("return",s);case 8:case"end":return e.stop()}}),e)}))),function(e,n,r){return t.apply(this,arguments)})}]),e}(),$n=function(e){function t(e){var n,r,i,s,a,o;I(this,t);var l=JSON.parse(JSON.stringify(e.directConnection)),u=null==l?void 0:l.openAI;(i=y(this,t,[e,Qn.buildKeyVerificationDetails(),Qn.buildHeaders,u])).insertKeyPlaceholderText="OpenAI API Key",i.keyHelpUrl="https://platform.openai.com/account/api-keys",i.url="https://api.openai.com/v1/audio/speech",i.permittedErrorPrefixes=["Invalid"],i.introPanelMarkUp='\n <div style="width: 100%; text-align: center; margin-left: -10px"><b>OpenAI : Text To Speech</b></div>\n <p>Generate an audio file based on your text input.</p>\n <p>Click <a href="https://platform.openai.com/docs/guides/text-to-speech">here</a> for more information.</p>';var c=null==(s=null==l?void 0:l.openAI)?void 0:s.textToSpeech;return"object"==L(c)&&Object.assign(i.rawBody,c),null!==(n=(a=i.rawBody).model)&&void 0!==n||(a.model=t.DEFAULT_MODEL),null!==(r=(o=i.rawBody).voice)&&void 0!==r||(o.voice=t.DEFAULT_VOIDE),i.textInputPlaceholderText="Insert text to generate audio",i.rawBody.response_format="mp3",i}var n,r;return x(t,e),R(t,[{key:"preprocessBody",value:function(e,t){var n,r,i=JSON.parse(JSON.stringify(e)),s=null==(r=null==(n=t[t.length-1])?void 0:n.text)?void 0:r.trim();return s&&""!==s&&(i.input=s),i}},{key:"callServiceAPI",value:(r=C(S().mark((function e(t,n){var r,i;return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(null!=(r=this.requestSettings)&&r.headers){e.next=2;break}throw new Error("Request settings have not been set up");case 2:this.url=this.requestSettings.url||this.url,i=this.preprocessBody(this.rawBody,n),dn.request(this,i,t);case 5:case"end":return e.stop()}}),e,this)}))),function(e,t){return r.apply(this,arguments)})},{key:"extractResultData",value:(n=C(S().mark((function e(t){return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!(t instanceof Blob)){e.next=2;break}return e.abrupt("return",new Promise((function(e){var n=new FileReader;n.readAsDataURL(t),n.onload=function(t){e({files:[{src:t.target.result,type:"audio"}]})}})));case 2:if(!t.error){e.next=4;break}throw t.error.message;case 4:return e.abrupt("return",{error:"error"});case 5:case"end":return e.stop()}}),e)}))),function(e){return n.apply(this,arguments)})}]),t}(mn);$n.DEFAULT_MODEL="tts-1",$n.DEFAULT_VOIDE="alloy";var er=$n,tr=function(e){function t(e){var n,r,i,s;I(this,t);var a=JSON.parse(JSON.stringify(e.directConnection)),o=null==a?void 0:a.openAI;(r=y(this,t,[e,Qn.buildKeyVerificationDetails(),Qn.buildHeaders,o,{audio:{}}])).insertKeyPlaceholderText="OpenAI API Key",r.keyHelpUrl="https://platform.openai.com/account/api-keys",r.introPanelMarkUp='\n <div style="width: 100%; text-align: center; margin-left: -10px"><b>OpenAI : Speech To Text</b></div>\n <p><b>Upload an audio file</b> to transcribe it into text. You can optionally provide text to guide the audio\n processing.\n <p>Click <a href="https://platform.openai.com/docs/guides/speech-to-text">here</a> for more info.</p>',r.url="",r.permittedErrorPrefixes=["Invalid"],r.textInputPlaceholderText="Upload an audio file",r._service_url=t.AUDIO_TRANSCRIPTIONS_URL;var l=null==(i=null==a?void 0:a.openAI)?void 0:i.audio;return"object"==L(l)&&(r.processConfig(l),t.cleanConfig(l),Object.assign(r.rawBody,l)),null!==(n=(s=r.rawBody).model)&&void 0!==n||(s.model=t.DEFAULT_MODEL),r.rawBody.response_format="json",r.canSendMessage=t.canSendFileMessage,r}var n,r;return x(t,e),R(t,[{key:"processConfig",value:function(e){null!=e&&e.type&&"translation"===e.type&&(this._service_url=t.AUDIO_TRANSLATIONS_URL,delete e.language)}},{key:"preprocessBody",value:function(e,t){var n,r,i=JSON.parse(JSON.stringify(e)),s=null==(r=null==(n=t[t.length-1])?void 0:n.text)?void 0:r.trim();return s&&""!==s&&(i.prompt=s),i}},{key:"callServiceAPI",value:(r=C(S().mark((function e(n,r,i){var s,a,o;return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(null!=(s=this.requestSettings)&&s.headers){e.next=2;break}throw new Error("Request settings have not been set up");case 2:if(null!=i&&i[0]){e.next=4;break}throw new Error("No file was added");case 4:this.url=this.requestSettings.url||this._service_url,a=this.preprocessBody(this.rawBody,r),o=t.createFormDataBody(a,i[0]),Jt.tempRemoveContentHeader(this.requestSettings,dn.request.bind(this,this,o,n),!1);case 7:case"end":return e.stop()}}),e,this)}))),function(e,t,n){return r.apply(this,arguments)})},{key:"extractResultData",value:(n=C(S().mark((function e(t){return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!t.error){e.next=2;break}throw t.error.message;case 2:return e.abrupt("return",{text:t.text});case 3:case"end":return e.stop()}}),e)}))),function(e){return n.apply(this,arguments)})}],[{key:"canSendFileMessage",value:function(e,t){return!(null==t||!t[0])}},{key:"cleanConfig",value:function(e){delete e.type}},{key:"createFormDataBody",value:function(e,t){var n=new FormData;return n.append("file",t),Object.keys(e).forEach((function(t){n.append(t,String(e[t]))})),n}}]),t}(mn);tr.AUDIO_TRANSCRIPTIONS_URL="https://api.openai.com/v1/audio/transcriptions",tr.AUDIO_TRANSLATIONS_URL="https://api.openai.com/v1/audio/translations",tr.DEFAULT_MODEL="whisper-1";var nr=tr,rr=function(){function e(){I(this,e)}return R(e,null,[{key:"buildTextToSpeechHeaders",value:function(e,t){return{"Ocp-Apim-Subscription-Key":t,"Content-Type":"application/ssml+xml","X-Microsoft-OutputFormat":e}}},{key:"buildSpeechToTextHeaders",value:function(e){return{"Ocp-Apim-Subscription-Key":e,Accept:"application/json"}}},{key:"handleSpeechVerificationResult",value:function(e,t,n,r){e.error?r(X.INVALID_KEY):n(t)}},{key:"buildSpeechKeyVerificationDetails",value:function(t){return{url:"https://".concat(t,".api.cognitive.microsoft.com/sts/v1.0/issuetoken"),method:"POST",createHeaders:function(e){return{"Ocp-Apim-Subscription-Key":"".concat(e)}},handleVerificationResult:e.handleSpeechVerificationResult}}},{key:"buildSummarizationHeader",value:function(e){return{"Ocp-Apim-Subscription-Key":e,"Content-Type":"application/json"}}},{key:"handleLanguageVerificationResult",value:function(e,t,n,r){var i;"401"===(null==(i=e.error)?void 0:i.code)?r(X.INVALID_KEY):n(t)}},{key:"buildLanguageKeyVerificationDetails",value:function(t){return{url:"".concat(t,"/language/analyze-text/jobs?api-version=2022-10-01-preview"),method:"POST",createHeaders:function(e){return{"Ocp-Apim-Subscription-Key":"".concat(e)}},handleVerificationResult:e.handleLanguageVerificationResult}}},{key:"handleTranslationVerificationResult",value:function(e,t,n,r){e.json().then((function(e){Array.isArray(e)||401e3!==e.error.code?n(t):r(X.INVALID_KEY)}))}},{key:"buildTranslationKeyVerificationDetails",value:function(t){return{url:"https://api.cognitive.microsofttranslator.com/translate?api-version=3.0&to=es",method:"POST",createHeaders:function(n){return e.buildTranslationHeaders(t,n)},handleVerificationResult:e.handleTranslationVerificationResult}}},{key:"buildTranslationHeaders",value:function(e,t){var n={"Ocp-Apim-Subscription-Key":t,"Content-Type":"application/json"};return e&&(n["Ocp-Apim-Subscription-Region"]=e),n}}]),e}(),ir=function(e){function t(e,n,r,i,s){var a;return I(this,t),(a=y(this,t,[e,rr.buildLanguageKeyVerificationDetails(r),n,i,s])).insertKeyPlaceholderText="Azure Language Subscription Key",a.keyHelpUrl="https://learn.microsoft.com/en-us/azure/api-management/api-management-subscriptions#create-and-manage-subscriptions-in-azure-portal",a.permittedErrorPrefixes=["Access"],a}return x(t,e),R(t)}(mn),sr=function(e){function t(e){var n,r,i,s,a,o;I(this,t);var l=null==(s=null==(i=e.directConnection)?void 0:i.azure)?void 0:s.summarization,u=null==(a=e.directConnection)?void 0:a.azure;return(r=y(this,t,[e,rr.buildSummarizationHeader,l.endpoint,u])).url="",r.textInputPlaceholderText="Insert text to summarize",null!==(n=(o=r.rawBody).language)&&void 0!==n||(o.language="en"),Object.assign(r.rawBody,l),r.url="".concat(l.endpoint,"/language/analyze-text/jobs?api-version=2022-10-01-preview"),r}var n,r,i;return x(t,e),R(t,[{key:"preprocessBody",value:function(e,t){var n=t[t.length-1].text;if(n)return{analysisInput:{documents:[{id:"1",language:e.language,text:n}]},tasks:[{kind:"ExtractiveSummarization"}]}}},{key:"callServiceAPI",value:(i=C(S().mark((function e(t,n){var r;return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(this.requestSettings){e.next=2;break}throw new Error("Request settings have not been set up");case 2:r=this.preprocessBody(this.rawBody,n),dn.request(this,r,t),this.messages=t;case 4:case"end":return e.stop()}}),e,this)}))),function(e,t){return i.apply(this,arguments)})},{key:"extractResultData",value:(r=C(S().mark((function e(t){var n,r,i;return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!t.error){e.next=2;break}throw t.error.message;case 2:return this.messages&&this.completionsHandlers&&(r=t.headers.get("operation-location"),i={method:"GET",headers:null==(n=this.requestSettings)?void 0:n.headers},dn.executePollRequest(this,r,i,this.messages)),e.abrupt("return",{makingAnotherRequest:!0});case 4:case"end":return e.stop()}}),e,this)}))),function(e){return r.apply(this,arguments)})},{key:"extractPollResultData",value:(n=C(S().mark((function e(t){var n,r,i,s;return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!t.error){e.next=2;break}throw t.error;case 2:if("running"!==t.status){e.next=4;break}return e.abrupt("return",{timeoutMS:2e3});case 4:if(!(t.errors.length>0)){e.next=6;break}throw t.errors[0];case 6:if(!(t.tasks.items[0].results.errors.length>0)){e.next=8;break}throw t.tasks.items[0].results.errors[0];case 8:n="",r=f(t.tasks.items[0].results.documents[0].sentences);try{for(r.s();!(i=r.n()).done;)s=i.value,n+=s.text}catch(e){r.e(e)}finally{r.f()}return e.abrupt("return",{text:n||""});case 12:case"end":return e.stop()}}),e)}))),function(e){return n.apply(this,arguments)})}]),t}(ir),ar=function(){function e(){I(this,e)}var t;return R(e,null,[{key:"poll",value:(t=C(S().mark((function e(t,n){var r,i,s,a;return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r={authorization:t,"content-type":"application/json"},e.t0="https://api.assemblyai.com/v2/transcript/",e.next=4,fetch("https://api.assemblyai.com/v2/transcript",{method:"POST",body:JSON.stringify({audio_url:n}),headers:r});case 4:return e.next=6,e.sent.json();case 6:e.t1=e.sent.id,i=e.t0.concat.call(e.t0,e.t1);case 8:if(s){e.next=24;break}return e.next=11,fetch(i,{headers:r});case 11:return e.next=13,e.sent.json();case 13:if("completed"!==(a=e.sent).status){e.next=18;break}s=a,e.next=22;break;case 18:if("error"!==a.status){e.next=20;break}throw new Error("Transcription failed: ".concat(a.error));case 20:return e.next=22,new Promise((function(e){return setTimeout(e,3e3)}));case 22:e.next=8;break;case 24:return e.abrupt("return",s);case 25:case"end":return e.stop()}}),e)}))),function(e,n){return t.apply(this,arguments)})},{key:"buildHeaders",value:function(e){return{Authorization:e,"Content-Type":"application/octet-stream"}}},{key:"handleVerificationResult",value:function(e,t,n,r){var i=e;i.error?"invalid_api_key"===i.error.code?r(X.INVALID_KEY):r(X.CONNECTION_FAILED):n(t)}},{key:"buildKeyVerificationDetails",value:function(){return{url:"https://api.assemblyai.com/v2/upload",method:"POST",handleVerificationResult:e.handleVerificationResult}}}]),e}(),or=function(e){function t(e){var n,r;I(this,t);var i=null==(r=e.directConnection)?void 0:r.assemblyAI;return(n=y(this,t,[e,ar.buildKeyVerificationDetails(),ar.buildHeaders,i,{audio:{}}])).insertKeyPlaceholderText="AssemblyAI API Key",n.keyHelpUrl="https://www.assemblyai.com/app/account",n.introPanelMarkUp='\n <div style="width: 100%; text-align: center; margin-left: -10px"><b>AssemblyAI Audio</b></div>\n <p><b>Upload an audio file</b> to transcribe it into text.\n <p>\n Click <a href="https://www.assemblyai.com/docs/Guides/transcribing_an_audio_file#get-started">here</a> for more info.\n </p>',n.url="https://api.assemblyai.com/v2/upload",n.isTextInputDisabled=!0,n.textInputPlaceholderText="Upload an audio file",n.permittedErrorPrefixes=["Authentication","Invalid"],n.canSendMessage=t.canFileSendMessage,n}var n,r;return x(t,e),R(t,[{key:"callServiceAPI",value:(r=C(S().mark((function e(t,n,r){var i;return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(null!=(i=this.requestSettings)&&i.headers){e.next=2;break}throw new Error("Request settings have not been set up");case 2:if(null!=r&&r[0]){e.next=4;break}throw new Error("No file was added");case 4:dn.request(this,r[0],t,!1);case 5:case"end":return e.stop()}}),e,this)}))),function(e,t,n){return r.apply(this,arguments)})},{key:"extractResultData",value:(n=C(S().mark((function e(t){var n,r,i;return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!t.error){e.next=2;break}throw t.error;case 2:return i=null==(r=null==(n=this.requestSettings)?void 0:n.headers)?void 0:r.Authorization,e.next=5,ar.poll(i,t.upload_url);case 5:return e.t0=e.sent.text,e.abrupt("return",{text:e.t0});case 7:case"end":return e.stop()}}),e,this)}))),function(e){return n.apply(this,arguments)})}],[{key:"canFileSendMessage",value:function(e,t){return!(null==t||!t[0])}}]),t}(mn),lr=function(e){function t(e,n,r,i,s){var a;return I(this,t),(a=y(this,t,[e,rr.buildSpeechKeyVerificationDetails(r),n,i,s])).insertKeyPlaceholderText="Azure Speech Subscription Key",a.keyHelpUrl="https://learn.microsoft.com/en-us/azure/api-management/api-management-subscriptions#create-and-manage-subscriptions-in-azure-portal",a}return x(t,e),R(t)}(mn),ur=function(e){function t(e){var n,r,i,s,a,o,l,u,c,d;I(this,t);var p=null==(o=null==(a=e.directConnection)?void 0:a.azure)?void 0:o.textToSpeech,h=null==(l=e.directConnection)?void 0:l.azure;return(s=y(this,t,[e,rr.buildTextToSpeechHeaders.bind({},(null==p?void 0:p.outputFormat)||"audio-16khz-128kbitrate-mono-mp3"),p.region,h])).introPanelMarkUp='\n <div style="width: 100%; text-align: center; margin-left: -10px"><b>Azure Text To Speech</b></div>\n <p>Insert text to synthesize it to audio.\n <p>\n Click <a href="'.concat(t.HELP_LINK,'">here</a> for more info.\n </p>'),s.url="",Object.assign(s.rawBody,p),null!==(n=(u=s.rawBody).lang)&&void 0!==n||(u.lang="en-US"),null!==(r=(c=s.rawBody).name)&&void 0!==r||(c.name="en-US-JennyNeural"),null!==(i=(d=s.rawBody).gender)&&void 0!==i||(d.gender="Female"),s.url="https://".concat(p.region,".tts.speech.microsoft.com/cognitiveservices/v1"),s}var n,r;return x(t,e),R(t,[{key:"preprocessBody",value:function(e,t){var n=t[t.length-1].text;if(n)return"<speak version='1.0' xml:lang='".concat(e.lang,"'>\n <voice xml:lang='").concat(e.lang,"' xml:gender='").concat(e.gender,"' name='").concat(e.name,"'>\n ").concat(n,"\n </voice>\n </speak>")}},{key:"callServiceAPI",value:(r=C(S().mark((function e(t,n){var r;return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(this.requestSettings){e.next=2;break}throw new Error("Request settings have not been set up");case 2:r=this.preprocessBody(this.rawBody,n),dn.request(this,r,t,!1);case 4:case"end":return e.stop()}}),e,this)}))),function(e,t){return r.apply(this,arguments)})},{key:"extractResultData",value:(n=C(S().mark((function e(t){return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",new Promise((function(e){var n=new FileReader;n.readAsDataURL(t),n.onload=function(t){e({files:[{src:t.target.result,type:"audio"}]})}})));case 1:case"end":return e.stop()}}),e)}))),function(e){return n.apply(this,arguments)})}]),t}(lr);ur.HELP_LINK="https://learn.microsoft.com/en-GB/azure/cognitive-services/speech-service/get-started-text-to-speech?tabs=windows%2Cterminal&pivots=programming-language-rest";var cr=ur,dr=function(e){function t(e){var n,r,i,s;I(this,t);var a=null==(i=null==(r=e.directConnection)?void 0:r.azure)?void 0:i.speechToText,o=null==(s=e.directConnection)?void 0:s.azure;(n=y(this,t,[e,rr.buildSpeechToTextHeaders,a.region,o,{audio:{files:{acceptedFormats:".wav,.ogg"}}}])).introPanelMarkUp='\n <div style="width: 100%; text-align: center; margin-left: -10px"><b>Azure Speech To Text</b></div>\n <p><b>Upload a .wav or .ogg audio file</b> to transcribe it into text.\n <p>\n Click <a href="'.concat(t.HELP_LINK,'">here</a> for more info.\n </p>'),n.url="",n.isTextInputDisabled=!0,n.textInputPlaceholderText="Upload an audio file",n.canSendMessage=t.canFileSendMessage;var l=a.lang||"en-US";return n.url="https://".concat(a.region,".stt.speech.microsoft.com/speech/recognition/conversation/cognitiveservices/v1?language=").concat(l,"&format=detailed"),n.recordAudio=void 0,n}var n,r;return x(t,e),R(t,[{key:"callServiceAPI",value:(r=C(S().mark((function e(t,n,r){var i,s;return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(null!=(i=this.requestSettings)&&i.headers){e.next=2;break}throw new Error("Request settings have not been set up");case 2:if(null!=r&&r[0]){e.next=4;break}throw new Error("No file was added");case 4:null!=(s=this.requestSettings)&&s.headers&&(this.requestSettings.headers["Content-Type"]=r[0].name.toLocaleLowerCase().endsWith(".wav")?"audio/wav; codecs=audio/pcm; samplerate=16000":"audio/ogg; codecs=opus"),dn.request(this,r[0],t,!1);case 5:case"end":return e.stop()}}),e,this)}))),function(e,t,n){return r.apply(this,arguments)})},{key:"extractResultData",value:(n=C(S().mark((function e(t){return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!t.error){e.next=2;break}throw t.error;case 2:return e.abrupt("return",{text:t.DisplayText||""});case 3:case"end":return e.stop()}}),e)}))),function(e){return n.apply(this,arguments)})}],[{key:"canFileSendMessage",value:function(e,t){return!(null==t||!t[0])}}]),t}(lr);dr.HELP_LINK="https://learn.microsoft.com/en-GB/azure/cognitive-services/speech-service/get-started-text-to-speech?tabs=windows%2Cterminal&pivots=programming-language-rest";var pr=dr,hr=function(e){function t(e){var n,r,i,s;I(this,t);var a=null==(i=null==(r=e.directConnection)?void 0:r.azure)?void 0:i.translation,o=null==(s=e.directConnection)?void 0:s.azure;return(n=y(this,t,[e,rr.buildTranslationKeyVerificationDetails(a.region),rr.buildTranslationHeaders.bind({},null==a?void 0:a.region),o])).insertKeyPlaceholderText="Azure Translate Subscription Key",n.keyHelpUrl="https://learn.microsoft.com/en-us/azure/api-management/api-management-subscriptions#create-and-manage-subscriptions-in-azure-portal",n.url="",n.url="https://api.cognitive.microsofttranslator.com/translate?api-version=3.0&to=".concat(a.language||"es"),n}var n,r;return x(t,e),R(t,[{key:"preprocessBody",value:function(e){var t=e[e.length-1].text;if(t)return[{Text:t}]}},{key:"callServiceAPI",value:(r=C(S().mark((function e(t,n){var r;return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(this.requestSettings){e.next=2;break}throw new Error("Request settings have not been set up");case 2:r=this.preprocessBody(n),dn.request(this,r,t);case 4:case"end":return e.stop()}}),e,this)}))),function(e,t){return r.apply(this,arguments)})},{key:"extractResultData",value:(n=C(S().mark((function e(t){var n;return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!Array.isArray(t)){e.next=2;break}return e.abrupt("return",{text:(null==(n=t[0].translations)?void 0:n[0].text)||""});case 2:throw t.error;case 3:case"end":return e.stop()}}),e)}))),function(e){return n.apply(this,arguments)})}]),t}(mn),fr=function(){function e(){I(this,e)}var t,n,r,i;return R(e,null,[{key:"storeFiles",value:(i=C(S().mark((function e(t,n,r){var i,s,a,o;return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(i=t.requestSettings.headers){e.next=3;break}return e.abrupt("return");case 3:return t.url="https://api.openai.com/v1/files",s=i[Jt.CONTENT_TYPE],delete i[Jt.CONTENT_TYPE],a=r.map(function(){var e=C(S().mark((function e(n){var r;return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=new FormData,e.abrupt("return",(r.append("purpose","assistants"),r.append("file",n),new Promise((function(e){e(Qn.directFetch(t,r,"POST",!1))}))));case 2:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()),e.prev=7,e.next=10,Promise.all(a);case 10:return o=e.sent.map((function(e){return e.id})),e.abrupt("return",(i[Jt.CONTENT_TYPE]=s,o));case 14:throw e.prev=14,e.t0=e.catch(7),i[Jt.CONTENT_TYPE]=s,Jt.displayError(n,e.t0),t.completionsHandlers.onFinish(),e.t0;case 17:case"end":return e.stop()}}),e,null,[[7,14]])}))),function(e,t,n){return i.apply(this,arguments)})},{key:"getType",value:function(e,t){var n=e[t].path;return!n||n.endsWith("png")?"image":"any"}},{key:"getFiles",value:(r=C(S().mark((function t(n,r){var i,s;return S().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return i=r.map((function(e){var t=e.fileId;return n.url="https://api.openai.com/v1/files/".concat(t,"/content"),new Promise((function(e){e(Qn.directFetch(n,void 0,"GET",!1))}))})),t.next=3,Promise.all(i);case 3:return s=t.sent.map((function(t,n){return new Promise((function(i){var s=new FileReader;s.readAsDataURL(t),s.onload=function(t){i({src:t.target.result,name:r[n].name,type:e.getType(r,n)})}}))})),t.next=6,Promise.all(s);case 6:return t.abrupt("return",t.sent);case 7:case"end":return t.stop()}}),t)}))),function(e,t){return r.apply(this,arguments)})},{key:"getFileName",value:function(e){var t=e.split("/");return t[t.length-1]}},{key:"getFileDetails",value:function(t,n){var r,i=[];return null!=(r=null==n?void 0:n.text)&&r.value&&t.content.forEach((function(t){var n,r;null==(r=null==(n=t.text)?void 0:n.annotations)||r.forEach((function(t){var n;t.text&&t.text.startsWith("sandbox:")&&null!=(n=t.file_path)&&n.file_id&&i.push({path:t.text,fileId:t.file_path.file_id,name:e.getFileName(t.text)})}))})),null!=n&&n.image_file&&i.push({fileId:n.image_file.file_id}),i}},{key:"getFilesAndNewText",value:(n=C(S().mark((function t(n,r,i,s){var a,o,l;return S().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(t.t0=r.length>0,!t.t0){t.next=6;break}return t.next=4,e.getFiles(n,r);case 4:l=t.sent,null!=(a=null==s?void 0:s.text)&&a.value&&l.forEach((function(e,t){var n;if(e.src){var i=r[t].path;null!=(n=null==s?void 0:s.text)&&n.value&&i&&(s.text.value=s.text.value.replace(i,e.src))}}));case 6:return t.abrupt("return",{files:l,text:null==(o=null==s?void 0:s.text)?void 0:o.value,role:i});case 7:case"end":return t.stop()}}),t)}))),function(e,t,r,i){return n.apply(this,arguments)})},{key:"getFilesAndText",value:(t=C(S().mark((function t(n,r,i){var s;return S().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return s=e.getFileDetails(r,i),t.next=3,e.getFilesAndNewText(n,s,r.role,i);case 3:return t.abrupt("return",t.sent);case 4:case"end":return t.stop()}}),t)}))),function(e,n,r){return t.apply(this,arguments)})}]),e}(),mr=function(e){function t(e){var n,r,i,s,a,o,l,u,c;I(this,t);var d=JSON.parse(JSON.stringify(e.directConnection)),p=d.openAI;(i=y(this,t,[e,Qn.buildKeyVerificationDetails(),Qn.buildHeaders,p])).insertKeyPlaceholderText="OpenAI API Key",i.keyHelpUrl="https://platform.openai.com/account/api-keys",i.url="",i.permittedErrorPrefixes=["Incorrect"],i.searchedForThreadId=!1,i.config={},i.newAssistantDetails={model:"gpt-4"},i.shouldFetchHistory=!1;var h=null==(s=d.openAI)?void 0:s.assistant;if("object"==L(h)){i.config=h;var f=i.config,m=f.new_assistant,v=f.thread_id,g=f.load_thread_history;Object.assign(i.newAssistantDetails,m),v&&(i.sessionId=v),g&&(i.shouldFetchHistory=!0);var k=(null==(o=null==(a=e.directConnection)?void 0:a.openAI)?void 0:o.assistant).function_handler;k&&(i._functionHandler=k)}else null!=(l=d.openAI)&&l.assistant&&(d.openAI.assistant=h);return null!==(n=(u=i.requestSettings).headers)&&void 0!==n||(u.headers={}),null!==(r=(c=i.requestSettings.headers)["OpenAI-Beta"])&&void 0!==r||(c["OpenAI-Beta"]="assistants=v1"),i.maxMessages=1,i.shouldFetchHistory&&i.sessionId&&(i.fetchHistory=i.fetchHistoryFunc.bind(b(i))),i}var n,r,i,s,a,o,l,u;return x(t,e),R(t,[{key:"fetchHistoryFunc",value:(u=C(S().mark((function e(){var t,n=this;return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return setTimeout((function(){return n.deepChat.disableSubmitButton()}),2),e.prev=1,e.next=4,this.getThreadMessages(this.sessionId,!0);case 4:return t=e.sent,e.abrupt("return",(this.deepChat.disableSubmitButton(!1),t.reverse()));case 8:return e.prev=8,e.t0=e.catch(1),e.abrupt("return",[{error:"failed to fetch thread history"}]);case 11:case"end":return e.stop()}}),e,this,[[1,8]])}))),function(){return u.apply(this,arguments)})},{key:"processMessage",value:function(e,t){var n=this.totalMessagesMaxCharLength||-1;return{content:pn.getCharacterLimitMessages(e,n)[0].text||"",role:"user",file_ids:t}}},{key:"createNewThreadMessages",value:function(e,t,n){var r=JSON.parse(JSON.stringify(e)),i=this.processMessage(t,n);return r.thread={messages:[i]},r}},{key:"callService",value:function(e,n,r){if(this.sessionId){this.url="".concat(t.THREAD_PREFIX,"/").concat(this.sessionId,"/messages");var i=this.processMessage(n,r);dn.request(this,i,e)}else{this.url="".concat(t.THREAD_PREFIX,"/runs");var s=this.createNewThreadMessages(this.rawBody,n,r);dn.request(this,s,e)}this.messages=e}},{key:"callServiceAPI",value:(l=C(S().mark((function e(t,n,r){var i,s,a;return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(this.requestSettings){e.next=2;break}throw new Error("Request settings have not been set up");case 2:if(null===(i=(s=this.rawBody).assistant_id)||void 0===i){e.next=6;break}e.next=12;break;case 6:if(e.t0=this.config.assistant_id,e.t0){e.next=11;break}return e.next=10,this.createNewAssistant();case 10:e.t0=e.sent;case 11:s.assistant_id=e.t0;case 12:if(this.searchedForThreadId||this.searchPreviousMessagesForThreadId(t.messages),!r){e.next=19;break}return e.next=16,fr.storeFiles(this,t,r);case 16:e.t1=e.sent,e.next=20;break;case 19:e.t1=void 0;case 20:a=e.t1,this.requestSettings.method="POST",this.callService(t,n,a);case 22:case"end":return e.stop()}}),e,this)}))),function(e,t,n){return l.apply(this,arguments)})},{key:"createNewAssistant",value:(o=C(S().mark((function e(){var n;return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,this.url=t.NEW_ASSISTANT_URL,e.next=4,Qn.directFetch(this,JSON.parse(JSON.stringify(this.newAssistantDetails)),"POST");case 4:return n=e.sent,e.abrupt("return",(this.config.assistant_id=n.id,this.config.assistant_id));case 8:e.prev=8,e.t0=e.catch(0),console.error(e.t0),console.error("Failed to create a new assistant");case 11:case"end":return e.stop()}}),e,this,[[0,8]])}))),function(){return o.apply(this,arguments)})},{key:"searchPreviousMessagesForThreadId",value:function(e){var t=e.find((function(e){return e._sessionId}));t&&(this.sessionId=t._sessionId),this.searchedForThreadId=!0}},{key:"extractResultData",value:(a=C(S().mark((function e(n){var r,i,s;return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!n.error){e.next=2;break}throw n.error.message;case 2:return e.next=4,this.assignThreadAndRun(n);case 4:return i="".concat(t.THREAD_PREFIX,"/").concat(this.sessionId,"/runs/").concat(this.run_id),s={method:"GET",headers:null==(r=this.requestSettings)?void 0:r.headers},e.abrupt("return",(dn.executePollRequest(this,i,s,this.messages),{makingAnotherRequest:!0}));case 6:case"end":return e.stop()}}),e,this)}))),function(e){return a.apply(this,arguments)})},{key:"assignThreadAndRun",value:(s=C(S().mark((function e(n){var r;return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!this.sessionId){e.next=8;break}return this.url="".concat(t.THREAD_PREFIX,"/").concat(this.sessionId,"/runs"),e.next=4,Qn.directFetch(this,JSON.parse(JSON.stringify(this.rawBody)),"POST");case 4:r=e.sent,this.run_id=r.id,e.next=9;break;case 8:this.sessionId=n.thread_id,this.run_id=n.id,this.messages&&(this.messages.messages[this.messages.messages.length-1]._sessionId=this.sessionId);case 9:case"end":return e.stop()}}),e,this)}))),function(e){return s.apply(this,arguments)})},{key:"getThreadMessages",value:(i=C(S().mark((function e(n){var r,i,s,a,o,l=this,u=arguments;return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=u.length>1&&void 0!==u[1]&&u[1],this.url="".concat(t.THREAD_PREFIX,"/").concat(n,"/messages"),e.next=4,Qn.directFetch(this,{},"GET");case 4:if(a=e.sent,e.t0=!r&&this.deepChat.responseInterceptor,!e.t0){e.next=10;break}return e.next=9,null==(s=(i=this.deepChat).responseInterceptor)?void 0:s.call(i,a);case 9:a=e.sent;case 10:return o=(r?a.data:[a.data[0]]).map(function(){var e=C(S().mark((function e(t){var n;return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=t.content.find((function(e){return!!e.text||!!e.image_file})),e.next=3,fr.getFilesAndText(l,t,n);case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()),e.abrupt("return",Promise.all(o));case 12:case"end":return e.stop()}}),e,this)}))),function(e){return i.apply(this,arguments)})},{key:"extractPollResultData",value:(r=C(S().mark((function e(n){var r,i,s,a,o,l,u,c,d,p,h;return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(a=n.status,o=n.required_action,"queued"!==a&&"in_progress"!==a){e.next=3;break}return e.abrupt("return",{timeoutMS:t.POLLING_TIMEOUT_MS});case 3:if("completed"!==a||!this.messages){e.next=11;break}return e.next=6,this.getThreadMessages(n.thread_id);case 6:return l=e.sent,u=l[0],c=u.text,d=u.files,e.abrupt("return",{text:c,_sessionId:this.sessionId,files:d});case 11:if(p=null==(r=null==o?void 0:o.submit_tool_outputs)?void 0:r.tool_calls,"requires_action"!==a||!p){e.next=22;break}return e.next=15,this.handleTools(p);case 15:return h=e.sent,e.next=18,null==(s=(i=this.deepChat).responseInterceptor)?void 0:s.call(i,h);case 18:if(e.t0=e.sent,e.t0){e.next=21;break}e.t0=h;case 21:return e.abrupt("return",e.t0);case 22:throw Error("Thread run status: ".concat(a));case 23:case"end":return e.stop()}}),e,this)}))),function(e){return r.apply(this,arguments)})},{key:"handleTools",value:(n=C(S().mark((function e(n){var r,i,s;return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(this._functionHandler){e.next=2;break}throw Error("Please define the `function_handler` property inside the [openAI](https://deepchat.dev/docs/directConnection/openAI#Assistant) object.");case 2:return r=n.map((function(e){return{name:e.function.name,arguments:e.function.arguments}})),e.next=5,this._functionHandler(r);case 5:if(i=e.sent,Array.isArray(i)&&!i.find((function(e){return"string"!=typeof e}))&&n.length===i.length){e.next=8;break}throw Error("Response must contain an array of strings for each individual function/tool_call, see https://deepchat.dev/docs/directConnection/OpenAI/#assistant-functions.");case 8:return s=i.map((function(e,t){return{tool_call_id:n[t].id,output:e}})),this.url="".concat(t.THREAD_PREFIX,"/").concat(this.sessionId,"/runs/").concat(this.run_id,"/submit_tool_outputs"),e.next=12,Qn.directFetch(this,{tool_outputs:s},"POST");case 12:return e.abrupt("return",{timeoutMS:t.POLLING_TIMEOUT_MS});case 13:case"end":return e.stop()}}),e,this)}))),function(e){return n.apply(this,arguments)})}]),t}(mn);mr.THREAD_PREFIX="https://api.openai.com/v1/threads",mr.NEW_ASSISTANT_URL="https://api.openai.com/v1/assistants",mr.POLLING_TIMEOUT_MS=800;var vr=mr,gr=function(e){function t(e){var n,r;I(this,t);var i=e.directConnection,s=null==i?void 0:i.openAI;(n=y(this,t,[e,Qn.buildKeyVerificationDetails(),Qn.buildHeaders,s,{images:{files:{acceptedFormats:".png",maxNumberOfFiles:2}}}])).insertKeyPlaceholderText="OpenAI API Key",n.keyHelpUrl="https://platform.openai.com/account/api-keys",n.introPanelMarkUp='\n <div style="width: 100%; text-align: center; margin-left: -10px"><b>OpenAI DALL·E</b></div>\n <p><b>Insert text</b> to generate an image.</p>\n <p><b>Upload 1</b> PNG image to generate its variation and optionally insert text to specify the change.</p>\n <p><b>Upload 2</b> PNG images where the second is a copy of the first with a transparent area where the edit should\n take place and text to specify the edit.</p>\n <p>Click <a href="https://platform.openai.com/docs/guides/images/introduction">here</a> for more info.</p>',n.url="",n.permittedErrorPrefixes=["Incorrect","Invalid input image"];var a=null==(r=null==i?void 0:i.openAI)?void 0:r.images;if(n.camera){var o="object"==L(a)&&a.size?Number.parseInt(a.size):1024;n.camera.files={dimensions:{width:o,height:o}}}return"object"==L(a)&&Object.assign(n.rawBody,a),n.canSendMessage=t.canFileSendMessage,n}var n,r;return x(t,e),R(t,[{key:"preprocessBody",value:function(e,t){var n=JSON.parse(JSON.stringify(e));return t&&""!==t&&(n.prompt=t),n}},{key:"callApiWithImage",value:function(e,n,r){var i,s,a,o=null==(s=null==(i=n[n.length-1])?void 0:i.text)?void 0:s.trim();if(r[1]||o&&""!==o){this.url=t.IMAGE_EDIT_URL;var l=this.preprocessBody(this.rawBody,o);a=t.createFormDataBody(l,r[0],r[1])}else this.url=t.IMAGE_VARIATIONS_URL,a=t.createFormDataBody(this.rawBody,r[0]);Jt.tempRemoveContentHeader(this.requestSettings,dn.request.bind(this,this,a,e),!1)}},{key:"callServiceAPI",value:(r=C(S().mark((function e(n,r,i){var s,a;return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(null!=(s=this.requestSettings)&&s.headers){e.next=2;break}throw new Error("Request settings have not been set up");case 2:if(null==i||!i[0]){e.next=6;break}this.callApiWithImage(n,r,i),e.next=11;break;case 6:if(this.requestSettings){e.next=8;break}throw new Error("Request settings have not been set up");case 8:this.url=t.IMAGE_GENERATION_URL,a=this.preprocessBody(this.rawBody,r[r.length-1].text),dn.request(this,a,n);case 11:case"end":return e.stop()}}),e,this)}))),function(e,t,n){return r.apply(this,arguments)})},{key:"extractResultData",value:(n=C(S().mark((function e(t){return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!t.error){e.next=2;break}throw t.error.message;case 2:return e.abrupt("return",{files:t.data.map((function(e){return e.url?{src:e.url,type:"image"}:{src:"".concat(Nn).concat(e.b64_json),type:"image"}}))});case 3:case"end":return e.stop()}}),e)}))),function(e){return n.apply(this,arguments)})}],[{key:"canFileSendMessage",value:function(e,t){return!(null==t||!t[0])||!(!e||""===e.trim())}},{key:"createFormDataBody",value:function(e,t,n){var r=new FormData;return r.append("image",t),n&&r.append("mask",n),Object.keys(e).forEach((function(t){r.append(t,String(e[t]))})),r}}]),t}(mn);gr.IMAGE_GENERATION_URL="https://api.openai.com/v1/images/generations",gr.IMAGE_VARIATIONS_URL="https://api.openai.com/v1/images/variations",gr.IMAGE_EDIT_URL="https://api.openai.com/v1/images/edits";var yr=gr,br=function(e){function t(e){var n,r,i,s,a,o,l;I(this,t);var u=JSON.parse(JSON.stringify(e.directConnection)),c=u.openAI;(i=y(this,t,[e,Qn.buildKeyVerificationDetails(),Qn.buildHeaders,c])).insertKeyPlaceholderText="OpenAI API Key",i.keyHelpUrl="https://platform.openai.com/account/api-keys",i.url="https://api.openai.com/v1/chat/completions",i.permittedErrorPrefixes=["Incorrect"],i.asyncCallInProgress=!1,i._systemMessage=t.generateSystemMessage("You are a helpful assistant.");var d=null==(s=u.openAI)?void 0:s.chat;if("object"==L(d)){d.system_prompt&&(i._systemMessage=t.generateSystemMessage(d.system_prompt));var p=(null==(o=null==(a=e.directConnection)?void 0:a.openAI)?void 0:o.chat).function_handler;p&&(i._functionHandler=p),i.cleanConfig(d),Object.assign(i.rawBody,d)}return null!==(n=i.maxMessages)&&void 0!==n||(i.maxMessages=-1),null!==(r=(l=i.rawBody).model)&&void 0!==r||(l.model="gpt-3.5-turbo"),i}var n,r,i,s;return x(t,e),R(t,[{key:"cleanConfig",value:function(e){delete e.system_prompt,delete e.function_handler}},{key:"preprocessBody",value:function(e,n){var r,i=JSON.parse(JSON.stringify(e)),s=pn.getCharacterLimitMessages(n,this.totalMessagesMaxCharLength?this.totalMessagesMaxCharLength-this._systemMessage.content.length:-1).map((function(e){return{content:t.getContent(e),role:e.role===ue.USER_ROLE?"user":"assistant"}}));return n.find((function(e){return e.files&&e.files.length>0}))&&(null!==(r=i.max_tokens)&&void 0!==r||(i.max_tokens=300)),i.messages=[this._systemMessage].concat(h(s)),i}},{key:"callServiceAPI",value:(s=C(S().mark((function e(t,n){var r,i;return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(this.requestSettings){e.next=2;break}throw new Error("Request settings have not been set up");case 2:r=this.preprocessBody(this.rawBody,n),(i=this.deepChat.stream)&&("object"!=L(i)||!i.simulation)||r.stream?(r.stream=!0,an.request(this,r,t)):dn.request(this,r,t);case 4:case"end":return e.stop()}}),e,this)}))),function(e,t){return s.apply(this,arguments)})},{key:"extractResultData",value:(i=C(S().mark((function e(t,n,r){var i,s,a,o;return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!t.error){e.next=2;break}throw t.error.message;case 2:return e.abrupt("return",null!=(s=null==(i=t.choices)?void 0:i[0])&&s.delta?this.extractStreamResult(t.choices[0],n,r):null!=(o=null==(a=t.choices)?void 0:a[0])&&o.message?t.choices[0].message.tool_calls?this.handleTools(t.choices[0].message,n,r):{text:t.choices[0].message.content}:{text:""});case 3:case"end":return e.stop()}}),e,this)}))),function(e,t,n){return i.apply(this,arguments)})},{key:"extractStreamResult",value:(r=C(S().mark((function e(t,n,r){var i,s,a=this;return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(i=t.delta,"tool_calls"!==t.finish_reason){e.next=7;break}return this.asyncCallInProgress=!0,s={tool_calls:this._streamToolCalls},e.abrupt("return",(this._streamToolCalls=void 0,this.handleTools(s,n,r)));case 7:null!=i&&i.tool_calls&&(this._streamToolCalls?i.tool_calls.forEach((function(e,t){a._streamToolCalls&&(a._streamToolCalls[t].function.arguments+=e.function.arguments)})):this._streamToolCalls=i.tool_calls);case 8:return e.abrupt("return",{text:(null==i?void 0:i.content)||""});case 9:case"end":return e.stop()}}),e,this)}))),function(e,t,n){return r.apply(this,arguments)})},{key:"handleTools",value:(n=C(S().mark((function e(t,n,r){var i,s,a,o,l,u,c,d,p,h;return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t.tool_calls&&n&&r&&this._functionHandler){e.next=2;break}throw Error("Please define the `function_handler` property inside the [openAI](https://deepchat.dev/docs/directConnection/openAI#Chat) object.");case 2:return u=JSON.parse(JSON.stringify(r)),c=t.tool_calls.map((function(e){return{name:e.function.name,arguments:e.function.arguments}})),e.next=6,null==(i=this._functionHandler)?void 0:i.call(this,c);case 6:if(!(d=e.sent).text){e.next=15;break}return p={text:d.text},e.next=11,null==(a=(s=this.deepChat).responseInterceptor)?void 0:a.call(s,p);case 11:if(e.t0=e.sent,e.t0){e.next=14;break}e.t0=p;case 14:return e.abrupt("return",e.t0);case 15:if(u.messages.push({tool_calls:t.tool_calls,role:"assistant",content:null}),(!Array.isArray(d)||d.find((function(e){return"string"!=typeof e})))&&c.length!==d.length){e.next=35;break}return d.forEach((function(e,n){var r,i=null==(r=t.tool_calls)?void 0:r[n];null==u||u.messages.push({role:"tool",tool_call_id:null==i?void 0:i.id,name:null==i?void 0:i.function.name,content:e.response})})),delete u.tools,delete u.tool_choice,delete u.stream,e.prev=17,e.next=20,null==n?void 0:n(u).then((function(e){return Jt.processResponseByType(e)}));case 20:return h=e.sent,e.next=23,null==(l=(o=this.deepChat).responseInterceptor)?void 0:l.call(o,h);case 23:if(e.t1=e.sent,e.t1){e.next=26;break}e.t1=h;case 26:if(!(h=e.t1).error){e.next=29;break}throw h.error.message;case 29:return e.abrupt("return",{text:h.choices[0].message.content||""});case 32:throw e.prev=32,e.t2=e.catch(17),this.asyncCallInProgress=!1,e.t2;case 35:throw Error("Response object must either be {response: string}[] for each individual function or {text: string} for a direct response, see https://deepchat.dev/docs/directConnection/OpenAI#FunctionHandler.");case 36:case"end":return e.stop()}}),e,this,[[17,32]])}))),function(e,t,r){return n.apply(this,arguments)})}],[{key:"generateSystemMessage",value:function(e){return{role:"system",content:e}}},{key:"getContent",value:function(e){if(e.files&&e.files.length>0){var t=e.files.map((function(e){return{type:"image_url",image_url:{url:e.src}}}));return e.text&&e.text.trim().length>0&&t.unshift({type:"text",text:e.text}),t}return e.text}}]),t}(mn),kr=function(e){function t(e){var n,r,i;I(this,t);var s=JSON.parse(JSON.stringify(e.directConnection)),a=null==(i=s.cohere)?void 0:i.chat;return r=y(this,t,[e,"https://api.cohere.ai/v1/chat","Ask me anything!",a,s.cohere]),"object"==L(a)&&Object.assign(r.rawBody,a),null!==(n=r.maxMessages)&&void 0!==n||(r.maxMessages=-1),r}var n,r;return x(t,e),R(t,[{key:"preprocessBody",value:function(e,t){var n=JSON.parse(JSON.stringify(e)),r=t.filter((function(e){return e.text}));return n.query=r[r.length-1].text,n.chat_history=r.slice(0,r.length-1).map((function(e){return{text:e.text,user_name:"ai"===e.role?"CHATBOT":"USER"}})),n}},{key:"callServiceAPI",value:(r=C(S().mark((function e(t,n){var r;return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(this.requestSettings){e.next=2;break}throw new Error("Request settings have not been set up");case 2:r=this.preprocessBody(this.rawBody,n),dn.request(this,r,t);case 4:case"end":return e.stop()}}),e,this)}))),function(e,t){return r.apply(this,arguments)})},{key:"extractResultData",value:(n=C(S().mark((function e(t){return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!t.message){e.next=2;break}throw t.message;case 2:return e.abrupt("return",{text:t.text});case 3:case"end":return e.stop()}}),e)}))),function(e){return n.apply(this,arguments)})}]),t}(Jn),_r=function(){function e(){I(this,e)}return R(e,null,[{key:"create",value:function(e){var t=e.directConnection,n=e.request,r=e.demo;if(e.webModel)return new Mn(e);if(t){if(t.openAI)return t.openAI.images?new yr(e):t.openAI.speechToText?new nr(e):t.openAI.textToSpeech?new er(e):t.openAI.assistant?new vr(e):new br(e);if(t.assemblyAI)return new or(e);if(t.cohere)return t.cohere.textGeneration?new Zn(e):t.cohere.summarization?new Xn(e):new kr(e);if(t.huggingFace)return t.huggingFace.textGeneration?new qn(e):t.huggingFace.summarization?new zn(e):t.huggingFace.translation?new Gn(e):t.huggingFace.fillMask?new Kn(e):t.huggingFace.questionAnswer?new Un(e):t.huggingFace.audioSpeechRecognition?new Fn(e):t.huggingFace.audioClassification?new On(e):t.huggingFace.imageClassification?new Rn(e):new Hn(e);if(t.azure){if(t.azure.speechToText)return new pr(e);if(t.azure.textToSpeech)return new cr(e);if(t.azure.summarization)return new sr(e);if(t.azure.translation)return new hr(e)}if(t.stabilityAI)return t.stabilityAI.imageToImage?new Vn(e):t.stabilityAI.imageToImageUpscale?new Dn(e):t.stabilityAI.imageToImageMasking?new Bn(e):new Wn(e)}return n?new fn(e):new fn(e,void 0,r||!0)}}]),e}(),xr=function(){function e(){I(this,e)}return R(e,null,[{key:"appendStyleSheetToHead",value:function(){var t=document.getElementsByTagName("head")[0];if(!Array.from(t.getElementsByTagName("link")).some((function(t){return t.getAttribute("href")===e.FONT_URL}))){var n=document.createElement("link");n.rel="stylesheet",n.href=e.FONT_URL,t.appendChild(n)}}}]),e}();xr.FONT_URL="https://fonts.googleapis.com/css2?family=Inter:wght@400;600&display=swap";var wr=xr,Sr=R((function e(){I(this,e)}));function Er(e){return function(t,n){Object.defineProperty(t,n,{});var r=t.constructor,i=n.toLocaleLowerCase();r._attributes_[i]=Sr.attibutes[e],r._attributeToProperty_[i]=n}}Sr.attibutes={string:function(e){return e},number:function(e){return parseFloat(e)},boolean:function(e){return"true"===e},object:function(e){return JSON.parse(e)},array:function(e){return JSON.parse(e)},function:function(e){return new Function("return ".concat(e))()}};var Cr=function(){function e(){I(this,e)}return R(e,null,[{key:"colorToHex",value:function(e){var t=document.createElement("div");return t.style.color=e,document.body.appendChild(t),"#".concat(window.getComputedStyle(t).color.match(/\d+/g).map((function(e){return parseInt(e).toString(16).padStart(2,"0")})).join(""))}},{key:"set",value:function(t,n){var r,i,s,a;if(null!=(i=null==(r=null==n?void 0:n.loading)?void 0:r.bubble)&&i.color){var o=e.colorToHex(null==(a=null==(s=null==n?void 0:n.loading)?void 0:s.bubble)?void 0:a.color);t.style.setProperty("--message-dots-color",o),t.style.setProperty("--message-dots-color-fade","".concat(o,"33"))}else t.style.setProperty("--message-dots-color","#848484"),t.style.setProperty("--message-dots-color-fade","#55555533")}}]),e}(),Mr=function(){function e(t,n,r){I(this,e),this._isDisplayed=!1,t?(this._elementRef=this.createIntroPanelWithChild(t,r),this._isDisplayed=!0):n&&(this._elementRef=this.createInternalIntroPanel(n,r),this._isDisplayed=!0)}return R(e,[{key:"createIntroPanelWithChild",value:function(t,n){var r=e.createIntroPanel(n);return"none"===t.style.display&&(t.style.display="block"),r.appendChild(t),r}},{key:"createInternalIntroPanel",value:function(t,n){var r=e.createIntroPanel(n);return r.id="internal-intro-panel",r.innerHTML=t,r}},{key:"hide",value:function(){this._isDisplayed&&this._elementRef&&(this._elementRef.style.display="none",this._isDisplayed=!1)}},{key:"display",value:function(){!this._isDisplayed&&this._elementRef&&(this._elementRef.style.display="",this._isDisplayed=!0)}}],[{key:"createIntroPanel",value:function(e){var t=document.createElement("div");return t.classList.add("intro-panel"),Object.assign(t.style,e),t}}]),e}(),Tr=function(){function e(){I(this,e)}return R(e,null,[{key:"getText",value:function(e,t){var n;if(!(e.directConnection||e.request||e.webModel||e.demo))return"Connect to any API using the [request](https://deepchat.dev/docs/connect#Request)\n property or a popular service via\n [directConnection](https://deepchat.dev/docs/directConnection/#directConnection).\n \n Host AI entirely on your browser via a [webModel](https://deepchat.dev/docs/webModel).\n \n To get started checkout the [Start](https://deepchat.dev/start) page and\n live code [examples](https://deepchat.dev/examples/frameworks).\n \n To remove this message set the [demo](https://deepchat.dev/docs/demo#demo) property to true.";if(e.directConnection){if(!t.isDirectConnection())return"Please define a valid service inside\n the [directConnection](https://deepchat.dev/docs/directConnection/#directConnection) object.";var r=null==(n=e.directConnection.openAI)?void 0:n.chat;if("object"==L(r)&&r.tools&&!r.function_handler)return"Please define the `function_handler` property inside the openAI [chat](https://deepchat.dev/docs/directConnection/openAI#Chat) object."}else if(e.request&&!e.request.url&&!e.request.handler)return"Please define a `url` or a `handler` property inside the [request](https://deepchat.dev/docs/connect#Request) object.";return null}}]),e}(),Ar=function(){function e(){I(this,e)}var t;return R(e,null,[{key:"createImage",value:function(e,t){var n=new Image;return n.src=e.src,zt.scrollDownOnImageLoad(n.src,t),zt.processContent("image",n,n.src,e.name)}},{key:"addNewImageMessage",value:(t=C(S().mark((function t(n,r,i){var s,a;return S().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:s=e.createImage(r,n.elementRef),(a=n.createNewMessageElement("",i)).bubbleElement.appendChild(s),a.bubbleElement.classList.add("image-message"),zt.addMessage(n,a,"image",i);case 2:case"end":return t.stop()}}),t)}))),function(e,n,r){return t.apply(this,arguments)})},{key:"createAudioElement",value:function(e,t){var n=document.createElement("audio");return n.src=e.src,n.classList.add("audio-player"),n.controls=!0,U.IS_SAFARI&&(n.classList.add("audio-player-safari"),n.classList.add(t===ue.USER_ROLE?"audio-player-safari-right":"audio-player-safari-left")),n}},{key:"addNewAudioMessage",value:function(t,n,r){var i=e.createAudioElement(n,r),s=t.createNewMessageElement("",r);s.bubbleElement.appendChild(i),s.bubbleElement.classList.add("audio-message"),zt.addMessage(t,s,"audio",r)}},{key:"createAnyFile",value:function(e){var t=document.createElement("div");t.classList.add("any-file-message-contents");var n=document.createElement("div");n.classList.add("any-file-message-icon-container");var r=bn.createSVGElement('<?xml version="1.0" encoding="iso-8859-1"?>\n<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" \n\t viewBox="50 30 420 450" xml:space="preserve">\n<g filter="brightness(0) saturate(100%) invert(16%) sepia(0%) saturate(1942%) hue-rotate(215deg) brightness(99%) contrast(93%)">\n\t<g>\n\t\t<path d="M447.933,103.629c-0.034-3.076-1.224-6.09-3.485-8.352L352.683,3.511c-0.004-0.004-0.007-0.005-0.011-0.008\n\t\t\tC350.505,1.338,347.511,0,344.206,0H89.278C75.361,0,64.04,11.32,64.04,25.237v461.525c0,13.916,11.32,25.237,25.237,25.237\n\t\t\th333.444c13.916,0,25.237-11.32,25.237-25.237V103.753C447.96,103.709,447.937,103.672,447.933,103.629z M356.194,40.931\n\t\t\tl50.834,50.834h-49.572c-0.695,0-1.262-0.567-1.262-1.262V40.931z M423.983,486.763c0,0.695-0.566,1.261-1.261,1.261H89.278\n\t\t\tc-0.695,0-1.261-0.566-1.261-1.261V25.237c0-0.695,0.566-1.261,1.261-1.261h242.94v66.527c0,13.916,11.322,25.239,25.239,25.239\n\t\t\th66.527V486.763z"/>\n\t</g>\n</g>\n<g>\n\t<g>\n\t\t<path d="M362.088,164.014H149.912c-6.62,0-11.988,5.367-11.988,11.988c0,6.62,5.368,11.988,11.988,11.988h212.175\n\t\t\tc6.62,0,11.988-5.368,11.988-11.988C374.076,169.381,368.707,164.014,362.088,164.014z"/>\n\t</g>\n</g>\n<g>\n\t<g>\n\t\t<path d="M362.088,236.353H149.912c-6.62,0-11.988,5.368-11.988,11.988c0,6.62,5.368,11.988,11.988,11.988h212.175\n\t\t\tc6.62,0,11.988-5.368,11.988-11.988C374.076,241.721,368.707,236.353,362.088,236.353z"/>\n\t</g>\n</g>\n<g>\n\t<g>\n\t\t<path d="M362.088,308.691H149.912c-6.62,0-11.988,5.368-11.988,11.988c0,6.621,5.368,11.988,11.988,11.988h212.175\n\t\t\tc6.62,0,11.988-5.367,11.988-11.988C374.076,314.06,368.707,308.691,362.088,308.691z"/>\n\t</g>\n</g>\n<g>\n\t<g>\n\t\t<path d="M256,381.031H149.912c-6.62,0-11.988,5.368-11.988,11.988c0,6.621,5.368,11.988,11.988,11.988H256\n\t\t\tc6.62,0,11.988-5.367,11.988-11.988C267.988,386.398,262.62,381.031,256,381.031z"/>\n\t</g>\n</g>\n</svg>');r.classList.add("any-file-message-icon"),n.appendChild(r);var i=document.createElement("div");return i.classList.add("any-file-message-text"),i.textContent=e.name||zt.DEFAULT_FILE_NAME,t.appendChild(n),t.appendChild(i),zt.processContent("any",t,e.src,i.textContent)}},{key:"addNewAnyFileMessage",value:function(t,n,r){var i=t.createNewMessageElement("",r),s=e.createAnyFile(n);i.bubbleElement.classList.add("any-file-message-bubble"),i.bubbleElement.appendChild(s),zt.addMessage(t,i,"file",r)}},{key:"addMessages",value:function(t,n,r){n.forEach((function(n){var i,s;n.ref&&(n=zt.removeFileRef(n)),"audio"===n.type||null!=(i=n.src)&&i.startsWith("data:audio")?e.addNewAudioMessage(t,n,r):"image"===n.type||null!=(s=n.src)&&s.startsWith("data:image")?e.addNewImageMessage(t,n,r):e.addNewAnyFileMessage(t,n,r)}))}}]),e}(),Lr=function(e){function t(e,n,r){var i,s,a;I(this,t),i=y(this,t,[e]);var o=n.permittedErrorPrefixes,l=n.introPanelMarkUp,u=n.demo;return i._errorMessageOverrides=null==(s=e.errorMessages)?void 0:s.overrides,i._onClearMessages=Ht.onClearMessages.bind(b(i),e),i._onError=Ht.onError.bind(b(i),e),i._displayLoadingMessage=t.getDisplayLoadingMessage(e,n),i._permittedErrorPrefixes=o,i.addSetupMessageIfNeeded(e,n)||i.populateIntroPanel(r,l,e.introPanelStyle),i.addIntroductoryMessage(e,n),e.initialMessages&&i.populateInitialMessages(e.initialMessages),i._displayServiceErrorMessages=null==(a=e.errorMessages)?void 0:a.displayServiceErrorMessages,e.getMessages=function(){return JSON.parse(JSON.stringify(i.messages))},e.clearMessages=i.clearMessages.bind(b(i),n),e.refreshMessages=i.refreshTextMessages.bind(b(i)),e.scrollToBottom=$.scrollToBottom.bind(b(i),i.elementRef),e._addMessage=function(e,t){i.addNewMessage(T(T({},e),{},{sendUpdate:!!t}),!t)},n.isWebModel()&&n.setUpMessages(b(i)),u&&i.prepareDemo(u),e.textToSpeech&&te.processConfig(e.textToSpeech,(function(e){i.textToSpeech=e})),n.fetchHistory&&i.fetchHistory(n.fetchHistory),i}var n,r;return x(t,e),R(t,[{key:"prepareDemo",value:function(e){"object"==L(e)&&(e.response&&(this.customDemoResponse=e.response),e.displayErrors&&(e.displayErrors.default&&this.addNewErrorMessage("",""),e.displayErrors.service&&this.addNewErrorMessage("service",""),e.displayErrors.speechToText&&this.addNewErrorMessage("speechToText","")),e.displayLoadingBubble&&this.addLoadingMessage())}},{key:"addSetupMessageIfNeeded",value:function(e,t){var n=Tr.getText(e,t);if(n){var r=this.createAndAppendNewMessageElement(n,ue.AI_ROLE);this.applyCustomStyles(r,ue.AI_ROLE,!1)}return!!n}},{key:"addIntroductoryMessage",value:function(e,t){var n,r;null!=e&&e.shadowRoot&&(this._introMessage=e.introMessage);var i,s=this._introMessage;null!=t&&t.isWebModel()&&(null!==(n=s)&&void 0!==n||(s=t.getIntroMessage(s))),s&&(null!=s&&s.text?i=this.createAndAppendNewMessageElement(s.text,ue.AI_ROLE):null!=s&&s.html&&(i=me.add(this,s.html,ue.AI_ROLE,this.messageElementRefs)),i&&(this.applyCustomStyles(i,ue.AI_ROLE,!1,null==(r=this.messageStyles)?void 0:r.intro),i.outerContainer.classList.add("deep-chat-intro")))}},{key:"removeIntroductoryMessage",value:function(){var e=this.messageElementRefs[0];e.outerContainer.classList.contains("deep-chat-intro")&&(e.outerContainer.remove(),this.messageElementRefs.shift())}},{key:"populateInitialMessages",value:function(e){var t=this;e.forEach((function(e){ne.processInitialMessageFile(e),t.addNewMessage(e,!0)})),setTimeout((function(){return $.scrollToBottom(t.elementRef)}),0)}},{key:"fetchHistory",value:(r=C(S().mark((function e(t){var n=this;return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,t();case 2:e.sent.forEach((function(e){e.error?n.addNewErrorMessage("service",e.error):n.addNewMessage(e,!0)})),setTimeout((function(){return $.scrollToBottom(n.elementRef)}),0);case 4:case"end":return e.stop()}}),e)}))),function(e){return r.apply(this,arguments)})},{key:"addNewMessage",value:function(e){var n=arguments.length>1&&void 0!==arguments[1]&&arguments[1],r=t.createMessageContent(e),i={status:e.overwrite};if(!e.ignoreText&&void 0!==r.text&&null!==e.text&&(this.addNewTextMessage(r.text,r.role,i),!n&&this.textToSpeech&&r.role!==ue.USER_ROLE&&te.speak(r.text,this.textToSpeech)),r.files&&Array.isArray(r.files)&&Ar.addMessages(this,r.files,r.role),void 0!==r.html&&null!==r.html){var s=me.add(this,r.html,r.role,this.messageElementRefs,i);he.isElementTemporary(s)&&delete r.html}this.isValidMessageContent(r)&&this.updateStateOnMessage(r,e.overwrite,e.sendUpdate,n)}},{key:"isValidMessageContent",value:function(e){return e.text||e.html||e.files&&e.files.length>0}},{key:"updateStateOnMessage",value:function(e,t){var n=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],r=arguments.length>3&&void 0!==arguments[3]&&arguments[3];t||this.messages.push(e),n&&this.sendClientUpdate(e,r)}},{key:"removeMessageOnError",value:function(){var e=this.messageElementRefs[this.messageElementRefs.length-1],n=null==e?void 0:e.bubbleElement;(null!=n&&n.classList.contains(Kt.MESSAGE_CLASS)&&""===n.textContent||t.isTemporaryElement(e))&&this.removeLastMessage()}},{key:"addNewErrorMessage",value:function(e,n){var r,i,s,a,o;this.removeMessageOnError();var l=t.createBaseElements(),u=l.outerContainer,c=l.bubbleElement;c.classList.add("error-message-text");var d=this.getPermittedMessage(n)||(null==(r=this._errorMessageOverrides)?void 0:r[e])||(null==(i=this._errorMessageOverrides)?void 0:i.default)||"Error, please try again.";this.renderText(c,d);var p=Vt.extractParticularSharedStyles(["fontSize","fontFamily"],null==(s=this.messageStyles)?void 0:s.default);Vt.applyCustomStylesToElements(l,!1,p),Vt.applyCustomStylesToElements(l,!1,null==(a=this.messageStyles)?void 0:a.error),this.elementRef.appendChild(u),$.scrollToBottom(this.elementRef),this.textToSpeech&&te.speak(d,this.textToSpeech),null==(o=this._onError)||o.call(this,d)}},{key:"getPermittedMessage",value:function(e){if(e){if(this._displayServiceErrorMessages)return e;if("string"==typeof e&&this._permittedErrorPrefixes){var n=t.checkPermittedErrorPrefixes(this._permittedErrorPrefixes,e);if(n)return n}else if(Array.isArray(e)&&this._permittedErrorPrefixes)for(var r=0;r<e.length;r+=1){var i=t.checkPermittedErrorPrefixes(this._permittedErrorPrefixes,e[r]);if(i)return i}}}},{key:"removeError",value:function(){this.isLastMessageError()&&ue.getLastMessageElement(this.elementRef).remove()}},{key:"addLoadingMessage",value:function(){var e;if(this._displayLoadingMessage){var t=this.createMessageElements("",ue.AI_ROLE),n=t.outerContainer,r=t.bubbleElement;r.classList.add("loading-message-text");var i=document.createElement("div");i.classList.add("dots-flashing"),r.appendChild(i),this.applyCustomStyles(t,ue.AI_ROLE,!1,null==(e=this.messageStyles)?void 0:e.loading),Cr.set(r,this.messageStyles),this.elementRef.appendChild(n),$.scrollToBottom(this.elementRef)}}},{key:"populateIntroPanel",value:function(e,t,n){(e||t)&&(this._introPanel=new Mr(e,t,n),this._introPanel._elementRef&&(fe.apply(this,this._introPanel._elementRef),this.elementRef.appendChild(this._introPanel._elementRef)))}},{key:"addMultipleFiles",value:(n=C(S().mark((function e(t){return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",Promise.all((t||[]).map((function(e){return new Promise((function(t){if(e.type&&"any"!==e.type){var n=new FileReader;n.readAsDataURL(e.file),n.onload=function(){t({src:n.result,type:e.type,ref:e.file})}}else{var r=e.file.name||zt.DEFAULT_FILE_NAME;t({name:r,type:"any",ref:e.file})}}))}))));case 1:case"end":return e.stop()}}),e)}))),function(e){return n.apply(this,arguments)})},{key:"clearMessages",value:function(e,t){var n,r,i=[];this.messageElementRefs.forEach((function(e){var t=e.bubbleElement.classList;t.contains("loading-message-text")||t.contains(Kt.MESSAGE_CLASS)?i.push(e):e.outerContainer.remove()})),Array.from(this.elementRef.children).forEach((function(e){var t,n=null==(t=e.children[0])?void 0:t.children[0];null!=n&&n.classList.contains("error-message-text")&&e.remove()})),this.messageElementRefs=i,!1!==t&&(null!=(n=this._introPanel)&&n._elementRef&&this._introPanel.display(),this.addIntroductoryMessage()),this.messages.splice(0,this.messages.length),this.textElementsToText.splice(0,this.textElementsToText.length),null==(r=this._onClearMessages)||r.call(this),delete e.sessionId}}],[{key:"getDisplayLoadingMessage",value:function(e,t){var n;return!t.websocket&&(null===(n=e.displayLoadingBubble)||void 0===n||n)}},{key:"checkPermittedErrorPrefixes",value:function(e,t){for(var n=0;n<e.length;n+=1)if(t.startsWith(e[n]))return t}}]),t}(Gt),Ir=function(){function e(){I(this,e)}return R(e,null,[{key:"adjustInputPadding",value:function(e,t){t["inside-left"].length>0&&e.classList.add("text-input-inner-left-adjustment"),t["inside-right"].length>0&&e.classList.add("text-input-inner-right-adjustment")}},{key:"adjustForOutsideButton",value:function(t,n,r){0===r["outside-right"].length&&r["outside-left"].length>0?(t[0].classList.add(e.INPUT_OUTSIDE_LEFT_SMALL_ADJUSTMENT_CLASS),n.classList.add(e.INPUT_OUTSIDE_LEFT_SMALL_ADJUSTMENT_CLASS)):0===r["outside-left"].length&&r["outside-right"].length>0&&(t[3].classList.add(e.INPUT_OUTSIDE_RIGHT_SMALL_ADJUSTMENT_CLASS),n.classList.add(e.INPUT_OUTSIDE_RIGHT_SMALL_ADJUSTMENT_CLASS))}},{key:"adjustOutsideSubmit",value:function(t,n,r){if(!(r["inside-left"].length>0||r["inside-right"].length>0)){if(0===r["outside-right"].length&&r["outside-left"].length>0)return t[0].classList.add(e.INPUT_OUTSIDE_LEFT_ADJUSTMENT_CLASS),n.classList.add(e.INPUT_OUTSIDE_LEFT_ADJUSTMENT_CLASS),r["outside-left"].map((function(e){return e.button.elementRef.classList.add("submit-button-enlarged")}));if(0===r["outside-left"].length&&r["outside-right"].length>0)return t[3].classList.add(e.INPUT_OUTSIDE_RIGHT_ADJUSTMENT_CLASS),n.classList.add(e.INPUT_OUTSIDE_RIGHT_ADJUSTMENT_CLASS),r["outside-right"].map((function(e){return e.button.elementRef.classList.add("submit-button-enlarged")}))}}},{key:"set",value:function(t,n,r,i){!!e.adjustOutsideSubmit(n,r,i)||e.adjustForOutsideButton(n,r,i),e.adjustInputPadding(t,i)}}]),e}();Ir.INPUT_OUTSIDE_LEFT_ADJUSTMENT_CLASS="text-input-container-left-adjustment",Ir.INPUT_OUTSIDE_RIGHT_ADJUSTMENT_CLASS="text-input-container-right-adjustment",Ir.INPUT_OUTSIDE_LEFT_SMALL_ADJUSTMENT_CLASS="text-input-container-left-small-adjustment",Ir.INPUT_OUTSIDE_RIGHT_SMALL_ADJUSTMENT_CLASS="text-input-container-right-small-adjustment";var Or=Ir,Rr=function(){function e(){I(this,e)}return R(e,null,[{key:"create",value:function(){return Array.from({length:4}).map((function(e,t){var n=document.createElement("div");return n.classList.add("input-button-container"),(0===t||3===t)&&n.classList.add("outer-button-container"),(1===t||2===t)&&n.classList.add("inner-button-container"),n}))}},{key:"add",value:function(e,t){e.insertBefore(t[1],e.firstChild),e.insertBefore(t[0],e.firstChild),e.appendChild(t[2]),e.appendChild(t[3])}},{key:"getContainerIndex",value:function(e){return"outside-left"===e?0:"inside-left"===e?1:"inside-right"===e?2:3}},{key:"addButton",value:function(t,n,r){n.classList.add(r);var i=e.getContainerIndex(r);t[i].appendChild(n),3===i&&n.classList.add("outside-right")}}]),e}(),Nr=["camera","gifs","images","audio","mixedFiles","submit","microphone"],Pr=function(){function e(){I(this,e)}return R(e,null,[{key:"createTextElement",value:function(e){var t=document.createElement("div");return t.classList.add("text-button"),t.innerText=e,t}},{key:"createElement",value:function(t,n){return n?e.createTextElement(t):bn.createSVGElement(t)}},{key:"createCustomElement",value:function(t,n){var r,i,s,a,o=null==n?void 0:n[t];return null!=(r=null==o?void 0:o.text)&&r.content?e.createElement(null==(i=null==o?void 0:o.text)?void 0:i.content,!0):null!=(s=null==o?void 0:o.svg)&&s.content?e.createElement(null==(a=null==o?void 0:o.svg)?void 0:a.content,!1):void 0}},{key:"processElement",value:function(e,t){null!=t&&t.classList.contains("text-button")||e.classList.add("input-button-svg")}},{key:"createSpecificStateElement",value:function(t,n,r){var i;return r&&(i=e.createCustomElement(n,r)),e.processElement(t,i),i}},{key:"create",value:function(t,n,r){var i={};if(!r)return e.processElement(t),i;var s=e.createSpecificStateElement(t,n[0],r);i[n[0]]=s;var a=s;return n.slice(1).forEach((function(t){a=e.createCustomElement(t,r)||a,i[t]=a})),i}}]),e}(),jr=function(){function e(){I(this,e)}return R(e,null,[{key:"unsetAllCSS",value:function(e,t){var n,r;t.container&&D.unsetAllCSSMouseStates(e,t.container),null!=(n=t.svg)&&n.styles&&D.unsetAllCSSMouseStates(e.children[0],t.svg.styles),null!=(r=t.text)&&r.styles&&D.unsetAllCSSMouseStates(e.children[0],t.text.styles)}},{key:"unsetActionCSS",value:function(e,t){var n,r;t.container&&D.unsetActivityCSSMouseStates(e,t.container),null!=(n=t.svg)&&n.styles&&D.unsetActivityCSSMouseStates(e.children[0],t.svg.styles),null!=(r=t.text)&&r.styles&&D.unsetActivityCSSMouseStates(e.children[0],t.text.styles)}},{key:"setElementsCSS",value:function(e,t,n){var r,i,s,a,o;Object.assign(e.style,null==(r=t.container)?void 0:r[n]),Object.assign(e.children[0].style,null==(s=null==(i=t.svg)?void 0:i.styles)?void 0:s[n]),Object.assign(e.children[0].style,null==(o=null==(a=t.text)?void 0:a.styles)?void 0:o[n])}},{key:"setElementCssUpToState",value:function(t,n,r){e.setElementsCSS(t,n,"default"),"default"!==r&&(e.setElementsCSS(t,n,"hover"),"hover"!==r&&e.setElementsCSS(t,n,"click"))}}]),e}(),Dr=function(){function e(t,n,r,i){I(this,e),this._mouseState={state:"default"},this.elementRef=t,this._customStyles=r,this.position=n,this.dropupText=i}return R(e,[{key:"buttonMouseLeave",value:function(e){this._mouseState.state="default",e&&(jr.unsetAllCSS(this.elementRef,e),jr.setElementsCSS(this.elementRef,e,"default"))}},{key:"buttonMouseEnter",value:function(e){this._mouseState.state="hover",e&&jr.setElementsCSS(this.elementRef,e,"hover")}},{key:"buttonMouseUp",value:function(e){e&&jr.unsetActionCSS(this.elementRef,e),this.buttonMouseEnter(e)}},{key:"buttonMouseDown",value:function(e){this._mouseState.state="click",e&&jr.setElementsCSS(this.elementRef,e,"click")}},{key:"setEvents",value:function(e){this.elementRef.onmousedown=this.buttonMouseDown.bind(this,e),this.elementRef.onmouseup=this.buttonMouseUp.bind(this,e),this.elementRef.onmouseenter=this.buttonMouseEnter.bind(this,e),this.elementRef.onmouseleave=this.buttonMouseLeave.bind(this,e)}},{key:"unsetCustomStateStyles",value:function(e){if(this._customStyles)for(var t=0;t<e.length;t+=1){var n=e[t],r=n&&this._customStyles[n];r&&jr.unsetActionCSS(this.elementRef,r)}}},{key:"reapplyStateStyle",value:function(e,t){if(this._customStyles){t&&this.unsetCustomStateStyles(t);var n=this._customStyles[e];n&&jr.setElementCssUpToState(this.elementRef,n,this._mouseState.state),this.setEvents(n)}}}]),e}(),Br=function(){function e(){I(this,e)}return R(e,null,[{key:"focusItemWhenOnEdge",value:function(t,n){var r=n?t.children[0]:t.children[t.children.length-1];e.focusSiblingItem(r,t,n,!0)}},{key:"focusSiblingItem",value:function(t,n,r){var i=arguments.length>3&&void 0!==arguments[3]&&arguments[3]?t:t[r?"nextSibling":"previousSibling"];i?(t.dispatchEvent(new MouseEvent("mouseleave")),i.dispatchEvent(new MouseEvent("mouseenter"))):(t.dispatchEvent(new MouseEvent("mouseleave")),e.focusItemWhenOnEdge(n,r))}}]),e}(),Fr=function(){function e(){I(this,e)}return R(e,null,[{key:"addItemEvents",value:function(e,t,n,r){ce.add(t,r),t.addEventListener("click",(function(){n.click()})),t.addEventListener("mouseenter",(function(t){e.highlightedItem=t.target})),t.addEventListener("mouseleave",(function(){e.highlightedItem=void 0}))}},{key:"createItemText",value:function(e,t){var n=document.createElement("div");return Object.assign(n.style,t),n.classList.add("dropup-menu-item-text"),n.textContent=e||"File",n}},{key:"createItemIcon",value:function(e,t){var n=document.createElement("div");return Object.assign(n.style,t),n.classList.add("dropup-menu-item-icon"),n.appendChild(e.children[0]),n}},{key:"populateItem",value:function(t,n,r,i){var s=t.children[0];s.classList.contains("text-button")?n.appendChild(e.createItemText(s.textContent,null==i?void 0:i.text)):(n.appendChild(e.createItemIcon(t,null==i?void 0:i.iconContainer)),n.appendChild(e.createItemText(r,null==i?void 0:i.text)))}},{key:"createItem",value:function(t,n,r){var i,s=n.elementRef,a=n.dropupText,o=document.createElement("div");Object.assign(o.style,null==(i=null==r?void 0:r.item)?void 0:i.default),e.populateItem(s,o,a,r),o.classList.add("dropup-menu-item");var l=D.processStateful((null==r?void 0:r.item)||{},{backgroundColor:"#f3f3f3"},{backgroundColor:"#ebebeb"});return e.addItemEvents(t,o,s,l),o}}]),e}(),qr=function(){function e(t,n){var r,i=this;I(this,e),this._isOpen=!0,this._styles=n,this.elementRef=e.createElement(null==(r=this._styles)?void 0:r.container),this.close(),setTimeout((function(){return i.addWindowEvents(t)}))}return R(e,[{key:"open",value:function(){this.elementRef.style.display="block",this._isOpen=!0}},{key:"close",value:function(){this._isOpen&&(this.elementRef.style.display="none",this._isOpen=!1)}},{key:"toggle",value:function(){this._isOpen?this.close():this.open()}},{key:"addItem",value:function(e){var t=Fr.createItem(this,e,this._styles);this.elementRef.appendChild(t)}},{key:"addWindowEvents",value:function(e){this.clickEvent=this.windowClick.bind(this,e),window.addEventListener("click",this.clickEvent),this.keyDownEvent=this.windowKeyDown.bind(this,e),window.addEventListener("keydown",this.keyDownEvent)}},{key:"windowClick",value:function(e,t){var n;!e.isConnected&&this.clickEvent?window.removeEventListener("click",this.clickEvent):e.parentElement!==(null==(n=t.target.shadowRoot)?void 0:n.children[0])&&this.close()}},{key:"windowKeyDown",value:function(e,t){var n,r,i;!e.isConnected&&this.keyDownEvent?window.removeEventListener("keydown",this.keyDownEvent):this._isOpen&&(t.key===q.ESCAPE?(this.close(),null==(n=this.highlightedItem)||n.dispatchEvent(new MouseEvent("mouseleave"))):t.key===q.ENTER?(null==(r=this.highlightedItem)||r.click(),null==(i=this.highlightedItem)||i.dispatchEvent(new MouseEvent("mouseleave"))):t.key===q.ARROW_DOWN?Br.focusSiblingItem(this.highlightedItem||this.elementRef.children[this.elementRef.children.length-1],this.elementRef,!0):t.key===q.ARROW_UP&&Br.focusSiblingItem(this.highlightedItem||this.elementRef.children[0],this.elementRef,!1))}}],[{key:"createElement",value:function(e){var t=document.createElement("div");return t.id="dropup-menu",Object.assign(t.style,e),t}}]),e}(),Ur=function(e){function t(e,n){var r,i;I(this,t);var s=(r=y(this,t,[t.createButtonElement(),void 0,{styles:null==(i=null==n?void 0:n.button)?void 0:i.styles}])).createInnerElements(r._customStyles);return r._menu=new qr(e,null==n?void 0:n.menu),r.addClickEvent(),r.buttonContainer=t.createButtonContainer(),r.elementRef.appendChild(s.styles),r.buttonContainer.appendChild(r.elementRef),r.elementRef.classList.add("dropup-icon","upload-file-button"),r.elementRef.children[0].id="dropup-icon",r.buttonContainer.appendChild(r._menu.elementRef),r.reapplyStateStyle("styles"),r.addContainerEvents(e),r}return x(t,e),R(t,[{key:"createInnerElements",value:function(e){return{styles:this.createInnerElement(t.createSVGIconElement(),"styles",e)}}},{key:"createInnerElement",value:function(e,t,n){return Pr.createSpecificStateElement(this.elementRef,t,n)||e}},{key:"addClickEvent",value:function(){this.elementRef.onclick=this._menu.toggle.bind(this._menu)}},{key:"addItem",value:function(e){this._menu.addItem(e)}},{key:"addContainerEvents",value:function(e){var t=this;e.addEventListener("click",(function(e){e.target.classList.contains("dropup-icon")||t._menu.close()}))}}],[{key:"createButtonElement",value:function(){var e=document.createElement("div");return e.classList.add("input-button"),e}},{key:"createSVGIconElement",value:function(){return bn.createSVGElement('<?xml version="1.0" encoding="utf-8"?>\n<svg viewBox="0 0 32 32" version="1.1" xmlns="http://www.w3.org/2000/svg">\n <path d="M16 0c-8.836 0-16 7.163-16 16s7.163 16 16 16c8.837 0 16-7.163 16-16s-7.163-16-16-16zM16 30.032c-7.72 0-14-6.312-14-14.032s6.28-14 14-14 14 6.28 14 14-6.28 14.032-14 14.032zM23 15h-6v-6c0-0.552-0.448-1-1-1s-1 0.448-1 1v6h-6c-0.552 0-1 0.448-1 1s0.448 1 1 1h6v6c0 0.552 0.448 1 1 1s1-0.448 1-1v-6h6c0.552 0 1-0.448 1-1s-0.448-1-1-1z"></path>\n</svg>')}},{key:"createButtonContainer",value:function(){var e=document.createElement("div");return e.id="dropup-container",e}},{key:"getPosition",value:function(e,t){var n,r;return null!=(n=null==t?void 0:t.button)&&n.position?null==(r=null==t?void 0:t.button)?void 0:r.position:e["outside-left"].length>0&&0===e["outside-right"].length?"outside-right":"outside-left"}}]),t}(Dr),zr=function(){function e(){I(this,e)}return R(e,null,[{key:"addToDropup",value:function(e,t,n,r){var i=new Ur(n,r);Nr.forEach((function(e){var n=t["dropup-menu"].findIndex((function(t){return t.buttonType===e})),r=t["dropup-menu"][n];r&&(i.addItem(r.button),t["dropup-menu"].splice(n,1))}));var s=Ur.getPosition(t,r);Rr.addButton(e,i.buttonContainer,s),t[s].push({})}},{key:"addToSideContainer",value:function(e,t){["inside-left","inside-right","outside-left","outside-right"].forEach((function(n){var r=n;t[r].forEach((function(t){Rr.addButton(e,t.button.elementRef,r)}))}))}},{key:"setPosition",value:function(e,t,n){var r=T(T({},e[t]),{},{buttonType:t});n.push(r),delete e[t]}},{key:"createPositionsObj",value:function(){return{"dropup-menu":[],"outside-left":[],"inside-left":[],"inside-right":[],"outside-right":[]}}},{key:"generatePositions",value:function(t){var n=e.createPositionsObj();Object.keys(t).forEach((function(r){var i,s=null==(i=t[r])?void 0:i.button.position;s&&e.setPosition(t,r,n[s])})),0===n["inside-right"].length&&t.submit&&e.setPosition(t,"submit",n["inside-right"]),0===n["outside-right"].length&&(t.submit?e.setPosition(t,"submit",n["outside-right"]):t.microphone?e.setPosition(t,"microphone",n["outside-right"]):t.camera&&e.setPosition(t,"camera",n["outside-right"])),t.submit&&e.setPosition(t,"submit",0===n["outside-left"].length?n["outside-left"]:n["inside-right"]),t.microphone&&e.setPosition(t,"microphone",0===n["outside-left"].length?n["outside-left"]:n["inside-right"]);var r=Object.keys(t);return r.length>1||n["dropup-menu"].length>0?Nr.forEach((function(e){t[e]&&n["dropup-menu"].push(T(T({},t[e]),{},{buttonType:e}))})):1===r.length&&e.setPosition(t,r[0],0===n["outside-right"].length?n["outside-right"]:n["outside-left"]),n}},{key:"addButtons",value:function(t,n,r,i){var s=e.generatePositions(n);return e.addToSideContainer(t,s),s["dropup-menu"].length>0&&e.addToDropup(t,s,r,i),s}}]),e}(),Hr={images:{id:"upload-images-icon",svgString:'<?xml version="1.0" encoding="utf-8"?>\n<svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg">\n <path d="M20,15.2928932 L20,5.5 C20,4.67157288 19.3284271,4 18.5,4 L5.5,4 C4.67157288,4 4,4.67157288 4,5.5 L4,12.2928932 L7.14644661,9.14644661 C7.34170876,8.95118446 7.65829124,8.95118446 7.85355339,9.14644661 L13.5,14.7928932 L16.1464466,12.1464466 C16.3417088,11.9511845 16.6582912,11.9511845 16.8535534,12.1464466 L20,15.2928932 Z M20,16.7071068 L16.5,13.2071068 L13.8535534,15.8535534 C13.6582912,16.0488155 13.3417088,16.0488155 13.1464466,15.8535534 L7.5,10.2071068 L4,13.7071068 L4,18.5 C4,19.3284271 4.67157288,20 5.5,20 L18.5,20 C19.3284271,20 20,19.3284271 20,18.5 L20,16.7071068 Z M3,5.5 C3,4.11928813 4.11928813,3 5.5,3 L18.5,3 C19.8807119,3 21,4.11928813 21,5.5 L21,18.5 C21,19.8807119 19.8807119,21 18.5,21 L5.5,21 C4.11928813,21 3,19.8807119 3,18.5 L3,5.5 Z M15,6 L17,6 C17.5522847,6 18,6.44771525 18,7 L18,9 C18,9.55228475 17.5522847,10 17,10 L15,10 C14.4477153,10 14,9.55228475 14,9 L14,7 C14,6.44771525 14.4477153,6 15,6 Z M15,7 L15,9 L17,9 L17,7 L15,7 Z"/>\n</svg>\n',dropupText:"Image"},gifs:{id:"upload-gifs-icon",svgString:'<?xml version="1.0" encoding="UTF-8" standalone="no"?>\n<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 5.9266752 5.6408391" height="21.31971" width="22.4">\n <g>\n <path d="m 5.2564627,1.548212 c -3.1136005,-0.4796804 -1.5568006,-0.2398402 0,0 z M 2.0001198,2.0922063 c 0.1556781,0 0.2657489,0.020893 0.3917849,0.080366 0.081154,0.038347 0.1153492,0.134065 0.076377,0.2138602 -0.038973,0.07979 -0.1363527,0.1134129 -0.2175069,0.075091 -0.078199,-0.036919 -0.1407455,-0.048792 -0.250655,-0.048792 -0.2260486,0 -0.3921482,0.2042182 -0.3921482,0.4801409 0,0.2761822 0.1663188,0.4810688 0.3921482,0.4810688 0.1117901,0 0.2064255,-0.046133 0.255659,-0.1284198 l 0.00162,-0.00389 V 3.0534032 l -0.098011,1.75e-4 c -0.081844,0 -0.1495979,-0.059305 -0.1612403,-0.1365887 l -0.00175,-0.023683 c 0,-0.08047 0.060311,-0.1470874 0.1389194,-0.1585331 l 0.024085,-0.00195 h 0.2612303 c 0.081842,0 0.149598,0.059305 0.1612404,0.1365891 l 0.00175,0.023683 -3.398e-4,0.3968809 v 0 l -0.00168,0.014211 v 0 l -0.00553,0.023034 v 0 l -0.00532,0.014145 c -0.098178,0.22826 -0.3236506,0.3528713 -0.5706303,0.3528713 -0.4240855,0 -0.7181621,-0.3622714 -0.7181621,-0.8016063 0,-0.4391857 0.2940275,-0.8006848 0.7181621,-0.8006848 z m 1.2034759,0.031275 c 0.081843,0 0.1495977,0.059305 0.1612403,0.1365891 l 0.00175,0.023683 v 1.2211775 c 0,0.088516 -0.07298,0.1602721 -0.1630073,0.1602721 -0.081841,0 -0.1495972,-0.059305 -0.1612397,-0.1365892 L 3.040589,3.5049308 V 2.2837527 c 0,-0.088516 0.07298,-0.1602721 0.1630067,-0.1602714 z m 0.7813442,0 0.5209469,0.00195 c 0.090025,3.048e-4 0.1627543,0.072306 0.1624458,0.1608234 -2.809e-4,0.08047 -0.06083,0.1468798 -0.1394772,0.158066 l -0.024092,0.00195 -0.3575326,-0.0013 v 0.4497782 l 0.2928918,2.27e-4 c 0.081842,0 0.1495979,0.059305 0.1612403,0.136589 l 0.00175,0.023683 c 0,0.080469 -0.06031,0.1470871 -0.1389193,0.1585393 l -0.024092,0.00195 -0.2928919,-2.336e-4 1.563e-4,0.2860316 c 0,0.080471 -0.06031,0.1470873 -0.1389193,0.1585395 l -0.024085,0.00195 c -0.081843,0 -0.1495979,-0.059305 -0.1612403,-0.1365826 l -0.00175,-0.023691 V 2.2841354 c 2.798e-4,-0.08047 0.060829,-0.1468797 0.1394758,-0.1580594 z"/>\n <path d="m 5.0894191,1.0943261 c 0,-0.21918999 -0.177687,-0.39686999 -0.396876,-0.39686999 h -3.43959 c -0.2191879,0 -0.391262,0.1777519 -0.3968759,0.39686999 l -0.027082,3.4379266 c 0.040152,0.2939927 0.4235456,0.409415 0.4235456,0.409415 l 3.4785583,-0.00851 c 0,0 0.3008506,-0.1402998 0.3236271,-0.4201576 0.042911,-0.5272495 0.034693,-1.6106146 0.034693,-3.4186761 z m -4.49792494,0 c 0,-0.36530999 0.29614504,-0.66145999 0.66145894,-0.66145999 h 3.43959 c 0.365314,0 0.66146,0.29615 0.66146,0.66145999 v 3.43959 c 0,0.36532 -0.296146,0.66146 -0.66146,0.66146 h -3.43959 c -0.3653139,0 -0.66145894,-0.29614 -0.66145894,-0.66146 z"/>\n </g>\n</svg>\n',dropupText:"GIF"},audio:{id:"upload-audio-icon",svgString:'<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="-49.49 -49.49 593.87 593.87" stroke-width="3.95908" transform="rotate(0)">\n <g stroke-width="0"></g>\n <g stroke-linecap="round" stroke-linejoin="round" stroke-width="0.98977"></g>\n <g>\n <g>\n <g>\n <path d="M163.205,76.413v293.301c-3.434-3.058-7.241-5.867-11.486-8.339c-21.38-12.452-49.663-15.298-77.567-7.846 c-49.038,13.096-80.904,54.519-71.038,92.337c4.019,15.404,14.188,28.221,29.404,37.087c13.553,7.894,29.87,11.933,47.115,11.933 c9.962,0,20.231-1.356,30.447-4.087c42.74-11.406,72.411-44.344,72.807-77.654h0.011v-0.162c0.002-0.166,0-0.331,0-0.496V187.072 l290.971-67.3v178.082c-3.433-3.055-7.238-5.863-11.481-8.334c-21.385-12.452-49.654-15.308-77.567-7.846 c-49.038,13.087-80.904,54.519-71.038,92.356c4.019,15.385,14.183,28.212,29.404,37.067c13.548,7.894,29.875,11.933,47.115,11.933 c9.962,0,20.231-1.356,30.452-4.087c42.74-11.413,72.411-44.346,72.804-77.654h0.004v-0.065c0.003-0.236,0.001-0.469,0-0.704V0 L163.205,76.413z M104.999,471.779c-22.543,6.038-45.942,3.846-62.572-5.846c-10.587-6.163-17.591-14.817-20.255-25.038 c-7.144-27.375,18.452-58.029,57.062-68.346c8.409-2.25,16.938-3.346,25.188-3.346c13.87,0,26.962,3.115,37.389,9.192 c10.587,6.163,17.591,14.817,20.255,25.029c0.809,3.102,1.142,6.248,1.139,9.4v0.321h0.014 C162.99,437.714,139.082,462.678,104.999,471.779z M182.898,166.853V92.067l290.971-67.298v74.784L182.898,166.853z M415.677,399.923c-22.558,6.038-45.942,3.837-62.587-5.846c-10.587-6.163-17.587-14.817-20.25-25.019 c-7.144-27.385,18.452-58.058,57.058-68.365c8.414-2.25,16.942-3.346,25.192-3.346c13.875,0,26.962,3.115,37.385,9.192 c10.596,6.163,17.596,14.817,20.26,25.029v0.01c0.796,3.05,1.124,6.144,1.135,9.244v0.468h0.02 C473.668,365.851,449.763,390.814,415.677,399.923z">\n </path>\n </g>\n </g>\n </g>\n</svg>',dropupText:"Audio"},mixedFiles:{id:"upload-mixed-files-icon",svgString:'<?xml version="1.0" encoding="utf-8"?>\n<svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">\n<title>file</title>\n<path d="M20 10.9696L11.9628 18.5497C10.9782 19.4783 9.64274 20 8.25028 20C6.85782 20 5.52239 19.4783 4.53777 18.5497C3.55315 17.6211 3 16.3616 3 15.0483C3 13.7351 3.55315 12.4756 4.53777 11.547L12.575 3.96687C13.2314 3.34779 14.1217 3 15.05 3C15.9783 3 16.8686 3.34779 17.525 3.96687C18.1814 4.58595 18.5502 5.4256 18.5502 6.30111C18.5502 7.17662 18.1814 8.01628 17.525 8.63535L9.47904 16.2154C9.15083 16.525 8.70569 16.6989 8.24154 16.6989C7.77738 16.6989 7.33224 16.525 7.00403 16.2154C6.67583 15.9059 6.49144 15.4861 6.49144 15.0483C6.49144 14.6106 6.67583 14.1907 7.00403 13.8812L14.429 6.88674" stroke="#000000" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>\n</svg>',dropupText:"File"}},Vr=function(){function e(t,n,r,i){var s=this;I(this,e),this._attachments=[],this._fileCountLimit=99,this._acceptedFormat="",n.maxNumberOfFiles&&(this._fileCountLimit=n.maxNumberOfFiles),this._toggleContainerDisplay=r,this._fileAttachmentsContainerRef=i,n.acceptedFormats&&(this._acceptedFormat=n.acceptedFormats),setTimeout((function(){s._validationHandler=t._validationHandler}))}return R(e,[{key:"attemptAddFile",value:function(t,n){return!!e.isFileTypeValid(t,this._acceptedFormat)&&(this.addAttachmentBasedOnType(t,n,!0),!0)}},{key:"addAttachmentBasedOnType",value:function(t,n,r){var i=e.getTypeFromBlob(t);if("image"===i){var s=e.createImageAttachment(n);this.addFileAttachment(t,"image",s,r)}else if("audio"===i){var a=Kr.createAudioAttachment(n);this.addFileAttachment(t,"audio",a,r)}else{var o=e.createAnyFileAttachment(t.name);this.addFileAttachment(t,"any",o,r)}}},{key:"addFileAttachment",value:function(t,n,r,i){var s,a=e.createContainer(r);if(this._attachments.length>=this._fileCountLimit){var o=this._attachments[this._attachments.length-1].removeButton;null==o||o.click();var l=this._fileAttachmentsContainerRef.children;this._fileAttachmentsContainerRef.insertBefore(a,l[0])}else this._fileAttachmentsContainerRef.appendChild(a);var u={file:t,attachmentContainerElement:a,fileType:n};return i&&(u.removeButton=this.createRemoveAttachmentButton(u),a.appendChild(u.removeButton)),this._toggleContainerDisplay(!0),this._attachments.push(u),this._fileAttachmentsContainerRef.scrollTop=this._fileAttachmentsContainerRef.scrollHeight,null==(s=this._validationHandler)||s.call(this),u}},{key:"createRemoveAttachmentButton",value:function(e){var t=document.createElement("div");t.classList.add("remove-file-attachment-button"),t.onclick=this.removeAttachment.bind(this,e);var n=document.createElement("div");return n.classList.add("x-icon"),n.innerText="×",t.appendChild(n),t}},{key:"removeAttachment",value:function(e){var t,n=this._attachments.findIndex((function(t){return t===e})),r=this._attachments[n].attachmentContainerElement;this._attachments.splice(n,1),Kr.stopAttachmentPlayback(r),r.remove(),this._toggleContainerDisplay(!1),null==(t=this._validationHandler)||t.call(this)}},{key:"getFiles",value:function(){return Array.from(this._attachments).map((function(e){return{file:e.file,type:e.fileType}}))}},{key:"removeAllAttachments",value:function(){this._attachments.forEach((function(e){setTimeout((function(){var t;return null==(t=e.removeButton)?void 0:t.click()}))}))}}],[{key:"isFileTypeValid",value:function(e,t){if(""===t)return!0;for(var n=t.split(","),r=0;r<n.length;r++){var i=n[r].trim();if(e.type===i)return!0;if(i.startsWith(".")){var s=i.slice(1);if(e.name.endsWith(s))return!0}else{if(e.name.endsWith(i))return!0;if(i.endsWith("/*")&&e.type.startsWith(i.slice(0,-2)))return!0}}return!1}},{key:"getTypeFromBlob",value:function(e){var t=e.type;return t.startsWith("image")?"image":t.startsWith("audio")?"audio":"any"}},{key:"createImageAttachment",value:function(e){var t=new Image;return t.src=e,t.classList.add("image-attachment"),t}},{key:"createAnyFileAttachment",value:function(e){var t=document.createElement("div");t.classList.add("border-bound-attachment"),U.IS_SAFARI&&t.classList.add("border-bound-attachment-safari");var n=document.createElement("div");n.classList.add("any-file-attachment-text");var r=document.createElement("div");return r.classList.add("file-attachment-text-container"),r.appendChild(n),n.textContent=e,t.appendChild(r),t}},{key:"createContainer",value:function(e){var t=document.createElement("div");return t.classList.add("file-attachment"),t.appendChild(e),t}}]),e}(),Gr='<?xml version="1.0" encoding="utf-8"?>\n<svg viewBox="0 0 32 32" version="1.1" xmlns="http://www.w3.org/2000/svg">\n<title>stop</title>\n<path d="M5.92 24.096q0 0.832 0.576 1.408t1.44 0.608h16.128q0.832 0 1.44-0.608t0.576-1.408v-16.16q0-0.832-0.576-1.44t-1.44-0.576h-16.128q-0.832 0-1.44 0.576t-0.576 1.44v16.16z"></path>\n</svg>',Wr=function(e){function t(e,n,r,i){return I(this,t),y(this,t,[e,n,r,i])}return x(t,e),R(t,[{key:"createTimer",value:function(e,n){var r=this,i=0,s=void 0!==n&&n<t.TIMER_LIMIT_S?n:t.TIMER_LIMIT_S;return setInterval((function(){var t;(i+=1)===s&&(null==(t=r.stopPlaceholderCallback)||t.call(r),r.clearTimer()),600===i&&e.classList.add("audio-placeholder-text-4-digits");var n=Math.floor(i/60),a=(i%60).toString().padStart(2,"0");e.textContent="".concat(n,":").concat(a)}),1e3)}},{key:"createPlaceholderAudioAttachment",value:function(e){var n=t.createAudioContainer(),r=document.createElement("div");r.classList.add("audio-placeholder-text-3-digits");var i=document.createElement("div");i.classList.add("file-attachment-text-container","audio-placeholder-text-3-digits-container"),i.appendChild(r);var s=bn.createSVGElement(Gr);return s.classList.add("attachment-icon","stop-icon","not-removable-attachment-icon"),r.textContent="0:00",this._activePlaceholderTimer=this.createTimer(r,e),n.appendChild(i),this.addPlaceholderAudioAttachmentEvents(n,s,i),n}},{key:"addPlaceholderAudioAttachmentEvents",value:function(e,t,n){var r=this;e.addEventListener("mouseenter",(function(){return e.replaceChildren(t)})),e.addEventListener("mouseleave",(function(){return e.replaceChildren(n)})),e.addEventListener("click",(function(){var e;return null==(e=r.stopPlaceholderCallback)?void 0:e.call(r)}))}},{key:"addPlaceholderAttachment",value:function(e,t){var n=this.createPlaceholderAudioAttachment(t);this._activePlaceholderAttachment=this.addFileAttachment(new File([],""),"audio",n,!1),this.stopPlaceholderCallback=e}},{key:"completePlaceholderAttachment",value:function(e,n){var r=this._activePlaceholderAttachment;r&&(r.file=e,t.addAudioElements(r.attachmentContainerElement.children[0],n),r.removeButton=this.createRemoveAttachmentButton(r),r.attachmentContainerElement.appendChild(r.removeButton),this._activePlaceholderAttachment=void 0,this.clearTimer())}},{key:"removePlaceholderAttachment",value:function(){this._activePlaceholderAttachment&&(this.removeAttachment(this._activePlaceholderAttachment),this._activePlaceholderAttachment=void 0,this.clearTimer())}},{key:"clearTimer",value:function(){void 0!==this._activePlaceholderTimer&&(clearInterval(this._activePlaceholderTimer),this._activePlaceholderTimer=void 0,this.stopPlaceholderCallback=void 0)}}],[{key:"createAudioContainer",value:function(){var e=document.createElement("div");return e.classList.add("border-bound-attachment","audio-attachment-icon-container"),U.IS_SAFARI&&e.classList.add("border-bound-attachment-safari"),e}},{key:"addAudioElements",value:function(e,t){var n=e.parentElement?$.cloneElement(e):e,r=document.createElement("audio");r.src=t;var i=bn.createSVGElement('<?xml version="1.0" encoding="utf-8"?>\n<svg viewBox="0 0 32 32" version="1.1" xmlns="http://www.w3.org/2000/svg">\n <title>play</title>\n <path d="M5.92 24.096q0 1.088 0.928 1.728 0.512 0.288 1.088 0.288 0.448 0 0.896-0.224l16.16-8.064q0.48-0.256 0.8-0.736t0.288-1.088-0.288-1.056-0.8-0.736l-16.16-8.064q-0.448-0.224-0.896-0.224-0.544 0-1.088 0.288-0.928 0.608-0.928 1.728v16.16z"></path>\n</svg>');i.classList.add("attachment-icon","play-icon");var s=bn.createSVGElement(Gr);s.classList.add("attachment-icon","stop-icon"),n.replaceChildren(i),r.onplay=function(){n.replaceChildren(s)},r.onpause=function(){n.replaceChildren(i),r.currentTime=0},r.onended=function(){n.replaceChildren(i)},n.onclick=function(){r.paused?r.play():r.pause()}}},{key:"createAudioAttachment",value:function(e){var n=t.createAudioContainer();return t.addAudioElements(n,e),n}},{key:"stopAttachmentPlayback",value:function(e){var t,n,r;null!=(r=null==(n=null==(t=e.children[0])?void 0:t.children)?void 0:n[0])&&r.classList.contains("stop-icon")&&e.children[0].click()}}]),t}(Vr);Wr.TIMER_LIMIT_S=5999;var Kr=Wr,Yr=function(){function e(){I(this,e)}return R(e,null,[{key:"create",value:function(e,t,n,r,i){return"audio"===i?new Kr(e,t,n,r):new Vr(e,t,n,r)}}]),e}(),Jr=function(){function e(t,n,r){I(this,e),this._fileAttachmentsTypes=[],this.elementRef=this.createAttachmentContainer();var i="object"==L(r)&&!!r.displayFileAttachmentContainer;this.toggleContainerDisplay(i),t.appendChild(this.elementRef),n&&Object.assign(this.elementRef.style,n)}var t;return R(e,[{key:"addType",value:function(e,t,n){var r=Yr.create(e,t,this.toggleContainerDisplay.bind(this),this.elementRef,n);return this._fileAttachmentsTypes.push(r),r}},{key:"createAttachmentContainer",value:function(){var e=document.createElement("div");return e.id="file-attachment-container",e}},{key:"toggleContainerDisplay",value:function(e){e?this.elementRef.style.display="block":0===this.elementRef.children.length&&(this.elementRef.style.display="none")}},{key:"getAllFileData",value:function(){var e=this._fileAttachmentsTypes.map((function(e){return e.getFiles()})).flat();return e.length>0?e:void 0}},{key:"completePlaceholders",value:(t=C(S().mark((function e(){return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Promise.all(this._fileAttachmentsTypes.map(function(){var e=C(S().mark((function e(t){var n;return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",null==(n=t.stopPlaceholderCallback)?void 0:n.call(t));case 1:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()));case 2:case"end":return e.stop()}}),e,this)}))),function(){return t.apply(this,arguments)})},{key:"addFilesToAnyType",value:function(t){e.addFilesToType(t,this._fileAttachmentsTypes)}},{key:"removeAllFiles",value:function(){this._fileAttachmentsTypes.forEach((function(e){return e.removeAllAttachments()})),this.elementRef.replaceChildren(),this.toggleContainerDisplay(!1)}},{key:"getNumberOfTypes",value:function(){return this._fileAttachmentsTypes.length}}],[{key:"addFilesToType",value:function(e,t){e.forEach((function(e){var n=new FileReader;n.readAsDataURL(e),n.onload=function(n){for(var r=0;r<t.length&&!t[r].attemptAddFile(e,n.target.result);r+=1);}}))}}]),e}(),Zr=function(){function e(t,n,r){I(this,e),this._isOpen=!1,this._contentRef=e.createModalContent(n,null==r?void 0:r.backgroundColor),this._buttonPanel=e.createButtonPanel(null==r?void 0:r.backgroundColor),this._elementRef=e.createContainer(this._contentRef,r),this._elementRef.appendChild(this._buttonPanel),t.appendChild(this._elementRef),this._backgroundPanelRef=e.createDarkBackgroundPanel(),t.appendChild(this._backgroundPanelRef),this.addWindowEvents(t)}return R(e,[{key:"isOpen",value:function(){return this._isOpen}},{key:"addButtons",value:function(){for(var e=this,t=arguments.length,n=new Array(t),r=0;r<t;r++)n[r]=arguments[r];n.forEach((function(t){return e._buttonPanel.appendChild(t)}))}},{key:"close",value:function(){var t=this;this._elementRef.classList.remove("show-modal"),this._elementRef.classList.add("hide-modal"),this._backgroundPanelRef.classList.remove("show-modal-background"),this._backgroundPanelRef.classList.add("hide-modal-background"),this._isOpen=!1,setTimeout((function(){t._elementRef.style.display="none",t._backgroundPanelRef.style.display="none"}),e.MODAL_CLOSE_TIMEOUT_MS)}},{key:"displayModalElements",value:function(){this._elementRef.style.display="flex",this._elementRef.classList.remove("hide-modal"),this._elementRef.classList.add("show-modal"),this._backgroundPanelRef.style.display="block",this._backgroundPanelRef.classList.remove("hide-modal-background"),this._backgroundPanelRef.classList.add("show-modal-background"),this._isOpen=!0}},{key:"openTextModal",value:function(e){this._contentRef.innerHTML=e,this.displayModalElements()}},{key:"addCloseButton",value:function(t,n,r){var i=this,s=n?e.createSVGButton(t):e.createTextButton(t);return this.addButtons(s),s.onclick=function(){i.close(),setTimeout((function(){null==r||r()}),140)},s}},{key:"addWindowEvents",value:function(e){this.keyDownEvent=this.windowKeyDown.bind(this,e),window.addEventListener("keydown",this.keyDownEvent)}},{key:"windowKeyDown",value:function(e,t){var n,r;!e.isConnected&&this.keyDownEvent?window.removeEventListener("keydown",this.keyDownEvent):this._isOpen&&(t.key===q.ESCAPE?(this.close(),null==(n=this.extensionCloseCallback)||n.call(this)):t.key===q.ENTER&&(this.close(),null==(r=this.extensionCloseCallback)||r.call(this)))}}],[{key:"createContainer",value:function(e,t){var n=document.createElement("div");return n.classList.add("modal"),n.appendChild(e),t&&delete t.backgroundColor,Object.assign(n.style,t),n}},{key:"createModalContent",value:function(e,t){var n,r=document.createElement("div");return(n=r.classList).add.apply(n,h(e)),t&&(r.style.backgroundColor=t),document.createElement("div").appendChild(r),r}},{key:"createButtonPanel",value:function(e){var t=document.createElement("div");return t.classList.add("modal-button-panel"),e&&(t.style.backgroundColor=e),t}},{key:"createDarkBackgroundPanel",value:function(){var e=document.createElement("div");return e.id="modal-background-panel",e}},{key:"createTextButton",value:function(e){var t=document.createElement("div");return t.classList.add("modal-button"),t.textContent=e,t}},{key:"createSVGButton",value:function(e){var t=document.createElement("div");t.classList.add("modal-button","modal-svg-button");var n=bn.createSVGElement(e);return n.classList.add("modal-svg-button-icon"),t.appendChild(n),t}},{key:"createTextModalFunc",value:function(t,n,r){var i;if("object"==L(n)&&null!=(i=n.files)&&i.infoModal){var s=new e(t,["modal-content"],n.files.infoModal.containerStyle);return s.addCloseButton("OK",!1,r),s.openTextModal.bind(s,n.infoModalTextMarkUp||"")}}}]),e}();Zr.MODAL_CLOSE_TIMEOUT_MS=190;var Xr=Zr,Qr=function(e){function t(e,n,r,i,s,a){var o,l,u,c,d,p,h;I(this,t);var f=(o=y(this,t,[t.createButtonElement(),null==(l=r.button)?void 0:l.position,r.button,a])).createInnerElements(i,s,o._customStyles);return o._inputElement=t.createInputElement(null==(u=null==r?void 0:r.files)?void 0:u.acceptedFormats),o.addClickEvent(e,r),o.elementRef.replaceChildren(f.styles),o.reapplyStateStyle("styles"),o._fileAttachmentsType=n,o._openModalOnce=!1===(null==(d=null==(c=r.files)?void 0:c.infoModal)?void 0:d.openModalOnce)||null==(h=null==(p=r.files)?void 0:p.infoModal)?void 0:h.openModalOnce,o}return x(t,e),R(t,[{key:"createInnerElements",value:function(e,n,r){var i=t.createSVGIconElement(e,n);return{styles:this.createInnerElement(i,"styles",r)}}},{key:"triggerImportPrompt",value:function(e){e.onchange=this.import.bind(this,e),e.click()}},{key:"import",value:function(e){Jr.addFilesToType(Array.from(e.files||[]),[this._fileAttachmentsType]),e.value=""}},{key:"createInnerElement",value:function(e,t,n){return Pr.createSpecificStateElement(this.elementRef,t,n)||e}},{key:"addClickEvent",value:function(e,t){var n=this.triggerImportPrompt.bind(this,this._inputElement),r=Xr.createTextModalFunc(e,t,n);this.elementRef.onclick=this.click.bind(this,r)}},{key:"click",value:function(e){!e||void 0!==this._openModalOnce&&!0!==this._openModalOnce?this.triggerImportPrompt(this._inputElement):(e(),!0===this._openModalOnce&&(this._openModalOnce=!1))}}],[{key:"createInputElement",value:function(e){var t=document.createElement("input");return t.type="file",t.accept=e||"",t.hidden=!0,t.multiple=!0,t}},{key:"createButtonElement",value:function(){var e=document.createElement("div");return e.classList.add("input-button","upload-file-button"),e}},{key:"createSVGIconElement",value:function(e,t){var n=bn.createSVGElement(t);return n.id=e,n}}]),t}(Dr),$r=function(){function e(){I(this,e)}return R(e,null,[{key:"create",value:function(t,n,r){var i=e.createElement(r);e.addEvents(i,t,n),t.appendChild(i)}},{key:"createElement",value:function(e){var t=document.createElement("div");return t.id="drag-and-drop","object"==L(e)&&Object.assign(t.style,e),t}},{key:"addEvents",value:function(t,n,r){n.ondragenter=function(n){n.preventDefault(),e.display(t)},t.ondragleave=function(n){n.preventDefault(),e.hide(t)},t.ondragover=function(e){e.preventDefault()},t.ondrop=function(n){n.preventDefault(),e.uploadFile(r,n),e.hide(t)}}},{key:"uploadFile",value:function(e,t){var n,r=null==(n=t.dataTransfer)?void 0:n.files;r&&e.addFilesToAnyType(Array.from(r))}},{key:"display",value:function(e){e.style.display="block"}},{key:"hide",value:function(e){e.style.display="none"}},{key:"isEnabled",value:function(e,t){return(void 0===t||!1!==t)&&(!!t||e.getNumberOfTypes()>0)}}]),e}(),ei=function(){function e(){I(this,e)}var t,n;return R(e,null,[{key:"validate",value:function(e,t,n,r,i){var s=e(n,r,i);return s?t.changeToSubmitIcon():t.changeToDisabledIcon(),s}},{key:"useValidationFunc",value:(n=C(S().mark((function t(n,r,i,s){var a,o,l,u;return S().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return a=r.inputElementRef,o=a.classList.contains("text-input-placeholder")?"":a.textContent,t.next=3,i.completePlaceholders();case 3:return l=i.getAllFileData(),u=null==l?void 0:l.map((function(e){return e.file})),t.abrupt("return",e.validate(n,s,o,u));case 5:case"end":return t.stop()}}),t)}))),function(e,t,r,i){return n.apply(this,arguments)})},{key:"useValidationFuncProgrammatic",value:(t=C(S().mark((function t(n,r,i){var s,a;return S().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return a=null==(s=r.files)?void 0:s.map((function(e){return e.file})),t.abrupt("return",e.validate(n,i,r.text,a,!0));case 2:case"end":return t.stop()}}),t)}))),function(e,n,r){return t.apply(this,arguments)})},{key:"validateWebsocket",value:function(e,t){return!(e.websocket&&!un.canSendMessage(e.websocket)&&(t.changeToDisabledIcon(),1))}},{key:"attach",value:function(t,n,r,i,s){var a=t.validateInput||ne.processValidateInput(t);t._validationHandler=function(){var t=C(S().mark((function t(o){var l;return S().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(!s.status.loadingActive&&!s.status.requestInProgress&&!0!==n.isSubmitProgrammaticallyDisabled&&e.validateWebsocket(n,s)){t.next=2;break}return t.abrupt("return",!1);case 2:return l=a||n.canSendMessage,t.abrupt("return",l?o?e.useValidationFuncProgrammatic(l,o,s):e.useValidationFunc(l,r,i,s):null);case 4:case"end":return t.stop()}}),t)})));return function(e){return t.apply(this,arguments)}}()}}]),e}(),ti=function(e){function t(e){var n;return I(this,t),"dropup-menu"===(null==e?void 0:e.position)&&(e.position="outside-right"),(n=y(this,t,[t.createMicrophoneElement(),null==e?void 0:e.position,e])).isActive=!1,n._innerElements=n.createInnerElements(n._customStyles),n.changeToDefault(),n}return x(t,e),R(t,[{key:"createInnerElements",value:function(e){var n=t.createSVGIconElement();return{default:this.createInnerElement(n,"default",e),active:this.createInnerElement(n,"active",e),unsupported:this.createInnerElement(n,"unsupported",e),commandMode:this.createInnerElement(n,"commandMode",e)}}},{key:"createInnerElement",value:function(e,t,n){return Pr.createSpecificStateElement(this.elementRef,t,n)||e}},{key:"changeToActive",value:function(){this.elementRef.replaceChildren(this._innerElements.active),this.toggleIconFilter("active"),this.reapplyStateStyle("active",["default","commandMode"]),this.isActive=!0}},{key:"changeToDefault",value:function(){this.elementRef.replaceChildren(this._innerElements.default),this.toggleIconFilter("default"),this.reapplyStateStyle("default",["active","commandMode"]),this.isActive=!1}},{key:"changeToCommandMode",value:function(){this.elementRef.replaceChildren(this._innerElements.unsupported),this.toggleIconFilter("command"),this.reapplyStateStyle("commandMode",["active"])}},{key:"changeToUnsupported",value:function(){this.elementRef.replaceChildren(this._innerElements.unsupported),this.elementRef.classList.add("unsupported-microphone"),this.reapplyStateStyle("unsupported",["active"])}},{key:"toggleIconFilter",value:function(e){var t=this.elementRef.children[0];if("svg"===t.tagName.toLocaleLowerCase())switch(e){case"default":t.classList.remove("active-microphone-icon","command-microphone-icon"),t.classList.add("default-microphone-icon");break;case"active":t.classList.remove("default-microphone-icon","command-microphone-icon"),t.classList.add("active-microphone-icon");break;case"command":t.classList.remove("active-microphone-icon","default-microphone-icon"),t.classList.add("command-microphone-icon")}}}],[{key:"createMicrophoneElement",value:function(){var e=document.createElement("div");return e.id="microphone-button",e.classList.add("input-button"),e}},{key:"createSVGIconElement",value:function(){var e=bn.createSVGElement('<?xml version="1.0" encoding="iso-8859-1"?>\n<svg height="1.4em" width="1.4em" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"\n\t viewBox="0 0 490.9 490.9" xml:space="preserve">\n\t<g>\n\t\t<g>\n\t\t\t<path d="M245.5,322.9c53,0,96.2-43.2,96.2-96.2V96.2c0-53-43.2-96.2-96.2-96.2s-96.2,43.2-96.2,96.2v130.5\n\t\t\t\tC149.3,279.8,192.5,322.9,245.5,322.9z M173.8,96.2c0-39.5,32.2-71.7,71.7-71.7s71.7,32.2,71.7,71.7v130.5\n\t\t\t\tc0,39.5-32.2,71.7-71.7,71.7s-71.7-32.2-71.7-71.7V96.2z"/>\n\t\t\t<path d="M94.4,214.5c-6.8,0-12.3,5.5-12.3,12.3c0,85.9,66.7,156.6,151.1,162.8v76.7h-63.9c-6.8,0-12.3,5.5-12.3,12.3\n\t\t\t\ts5.5,12.3,12.3,12.3h152.3c6.8,0,12.3-5.5,12.3-12.3s-5.5-12.3-12.3-12.3h-63.9v-76.7c84.4-6.3,151.1-76.9,151.1-162.8\n\t\t\t\tc0-6.8-5.5-12.3-12.3-12.3s-12.3,5.5-12.3,12.3c0,76.6-62.3,138.9-138.9,138.9s-138.9-62.3-138.9-138.9\n\t\t\t\tC106.6,220,101.2,214.5,94.4,214.5z"/>\n\t\t</g>\n\t</g>\n</svg>\n');return e.id="microphone-icon",e}}]),t}(Dr),ni={},ri={},ii={},si={},ai={};Object.defineProperty(ai,"__esModule",{value:!0}),ai.Text=void 0;var oi=function(){function e(){I(this,e)}return R(e,null,[{key:"capitalize",value:function(t){return t.replace(e.FIRST_CHAR_REGEX,(function(e){return e.toUpperCase()}))}},{key:"lineBreak",value:function(t){return t.replace(e.DOUBLE_LINE,"<p></p>").replace(e.ONE_LINE,"<br>")}},{key:"isCharDefined",value:function(e){return void 0!==e&&" "!==e&&" "!==e&&"\n"!==e&&""!==e}},{key:"breakupIntoWordsArr",value:function(e){return e.split(/(\W+)/)}}]),e}();ai.Text=oi,oi.FIRST_CHAR_REGEX=/\S/,oi.DOUBLE_LINE=/\n\n/g,oi.ONE_LINE=/\n/g,Object.defineProperty(si,"__esModule",{value:!0}),si.Translate=void 0;var li=ai,ui=function(){function e(){I(this,e)}return R(e,null,[{key:"translate",value:function(e,t){for(var n=li.Text.breakupIntoWordsArr(e),r=0;r<n.length;r+=1)t[n[r]]&&(n[r]=t[n[r]]);return n.join("")}}]),e}();si.Translate=ui,Object.defineProperty(ii,"__esModule",{value:!0}),ii.WebSpeechTranscript=void 0;var ci=si,di=function(){function e(){I(this,e)}return R(e,null,[{key:"extract",value:function(e,t,n){for(var r="",i=e.resultIndex;i<e.results.length;++i){var s=e.results[i][0].transcript;n&&(s=ci.Translate.translate(s,n)),e.results[i].isFinal?t+=s:r+=s}return{interimTranscript:r,finalTranscript:t,newText:r||t}}},{key:"extractSafari",value:function(e,t,n){for(var r="",i=e.resultIndex;i<e.results.length;++i){var s=e.results[i][0].transcript;n&&(s=ci.Translate.translate(s,n)),r+=s}return{interimTranscript:"",finalTranscript:r,newText:r}}}]),e}();ii.WebSpeechTranscript=di;var pi={};Object.defineProperty(pi,"__esModule",{value:!0}),pi.Browser=void 0;var hi=R((function e(){I(this,e)}));pi.Browser=hi,hi.IS_SAFARI=function(){return void 0===hi._IS_SAFARI&&(hi._IS_SAFARI=/^((?!chrome|android).)*safari/i.test(navigator.userAgent)),hi._IS_SAFARI};var fi={},mi={};Object.defineProperty(mi,"__esModule",{value:!0}),mi.EventListeners=void 0;var vi=function(){function e(){I(this,e)}return R(e,null,[{key:"getElementIfFocusedOnAvailable",value:function(e,t){return Array.isArray(e)?e.find((function(e){return t===e})):t===e?e:void 0}},{key:"keyDownWindow",value:function(t){var n=this;t.element&&e.getElementIfFocusedOnAvailable(t.element,document.activeElement)&&(null!==e.KEY_DOWN_TIMEOUT&&clearTimeout(e.KEY_DOWN_TIMEOUT),e.KEY_DOWN_TIMEOUT=setTimeout((function(){e.KEY_DOWN_TIMEOUT=null,n.resetRecording(t)}),500))}},{key:"mouseDownWindow",value:function(t,n){this.mouseDownElement=e.getElementIfFocusedOnAvailable(t,n.target)}},{key:"mouseUpWindow",value:function(e){this.mouseDownElement&&this.resetRecording(e),this.mouseDownElement=void 0}},{key:"add",value:function(t,n){var r=void 0===(null==n?void 0:n.insertInCursorLocation)||(null==n?void 0:n.insertInCursorLocation);null!=n&&n.element&&r&&(t.mouseDownEvent=e.mouseDownWindow.bind(t,n.element),document.addEventListener("mousedown",t.mouseDownEvent),t.mouseUpEvent=e.mouseUpWindow.bind(t,n),document.addEventListener("mouseup",t.mouseUpEvent),t.keyDownEvent=e.keyDownWindow.bind(t,n),document.addEventListener("keydown",t.keyDownEvent))}},{key:"remove",value:function(e){document.removeEventListener("mousedown",e.mouseDownEvent),document.removeEventListener("mouseup",e.mouseUpEvent),document.removeEventListener("keydown",e.keyDownEvent)}}]),e}();mi.EventListeners=vi,vi.KEY_DOWN_TIMEOUT=null;var gi={};Object.defineProperty(gi,"__esModule",{value:!0}),gi.PreResultUtils=void 0;var yi=function(){function e(){I(this,e)}return R(e,null,[{key:"process",value:function(e,t,n,r,i){var s=null==r?void 0:r(t,n);return!!s&&(setTimeout((function(){s.restart?e.resetRecording(i):s.stop&&e.stop()})),(s.stop||s.restart)&&s.removeNewText)}}]),e}();gi.PreResultUtils=yi;var bi={},ki={};Object.defineProperty(ki,"__esModule",{value:!0}),ki.AutoScroll=void 0;var _i=function(){function e(){I(this,e)}return R(e,null,[{key:"changeStateIfNeeded",value:function(e,t){t&&!e.isCursorAtEnd&&(e.endPadding="",e.scrollingSpan.innerHTML=" ")}},{key:"scrollGeneric",value:function(e,t){e.isCursorAtEnd?t.scrollTop=t.scrollHeight:e.scrollingSpan.scrollIntoView({block:"nearest"})}},{key:"scrollSafariPrimitiveToEnd",value:function(e){e.scrollLeft=e.scrollWidth,e.scrollTop=e.scrollHeight}},{key:"isElementOverflown",value:function(e){return e.scrollHeight>e.clientHeight||e.scrollWidth>e.clientWidth}},{key:"isRequired",value:function(t,n){return t&&e.isElementOverflown(n)}}]),e}();ki.AutoScroll=_i;var xi={};Object.defineProperty(xi,"__esModule",{value:!0}),xi.Elements=void 0;var wi=function(){function e(){I(this,e)}return R(e,null,[{key:"isPrimitiveElement",value:function(e){return"INPUT"===e.tagName||"TEXTAREA"===e.tagName}},{key:"createInterimSpan",value:function(){var e=document.createElement("span");return e.style.color="grey",e.style.pointerEvents="none",e}},{key:"createGenericSpan",value:function(){var e=document.createElement("span");return e.style.pointerEvents="none",e}},{key:"appendSpans",value:function(e,t){if(e.spansPopulated=!0,e.insertInCursorLocation&&document.activeElement===t){var n=window.getSelection();if(null!=n&&n.focusNode){var r=n.getRangeAt(0);return r.insertNode(e.scrollingSpan),r.insertNode(e.interimSpan),r.insertNode(e.finalSpan),r.collapse(!1),n.removeAllRanges(),void n.addRange(r)}}t.appendChild(e.finalSpan),t.appendChild(e.interimSpan),t.appendChild(e.scrollingSpan)}},{key:"applyCustomColors",value:function(e,t){t.interim&&(e.interimSpan.style.color=t.interim),t.final&&(e.finalSpan.style.color=t.final)}},{key:"isInsideShadowDOM",value:function(e){return e.getRootNode()instanceof ShadowRoot}}]),e}();xi.Elements=wi;var Si={};Object.defineProperty(Si,"__esModule",{value:!0}),Si.Cursor=void 0;var Ei=function(){function e(){I(this,e)}return R(e,null,[{key:"setOffsetForGeneric",value:function(t,n){for(var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,i=0,s=0;s<t.childNodes.length;s+=1){var a=t.childNodes[s];if(a.childNodes.length>0){var o=e.setOffsetForGeneric(a,n,r);if(-1===o)return-1;r+=o}else if(null!==a.textContent){if(r+a.textContent.length>n){var l=document.createRange();l.setStart(a,n-r),l.collapse(!0);var u=window.getSelection();return null==u||u.removeAllRanges(),null==u||u.addRange(l),t.focus(),-1}r+=a.textContent.length,i+=a.textContent.length}}return i}},{key:"focusEndOfGeneric",value:function(e){var t=document.createRange();t.selectNodeContents(e),t.collapse(!1);var n=window.getSelection();n&&(n.removeAllRanges(),n.addRange(t))}},{key:"setOffsetForSafariGeneric",value:function(t,n){var r=window.getSelection();if(r){var i=e.getGenericElementCursorOffset(t,r,!0);console.log(i),setTimeout((function(){}),100),e.setOffsetForGeneric(t,i+n)}}},{key:"setOffsetForPrimitive",value:function(e,t,n){n&&e.blur(),e.setSelectionRange(t,t),e.focus()}},{key:"getGenericElementCursorOffset",value:function(e,t,n){var r=0;if(t.rangeCount>0){var i=t.getRangeAt(0),s=i.cloneRange();s.selectNodeContents(e),n?s.setEnd(i.startContainer,i.startOffset):s.setEnd(i.endContainer,i.endOffset),r=s.toString().length}return r}}]),e}();Si.Cursor=Ei,Object.defineProperty(bi,"__esModule",{value:!0}),bi.CommandUtils=void 0;var Ci=ki,Mi=xi,Ti=pi,Ai=Si,Li=ai,Ii=function(){function e(){I(this,e)}return R(e,null,[{key:"processCommand",value:function(e,t){return(!t||!t.caseSensitive)&&(e=e.toLowerCase()),!1===(null==t?void 0:t.substrings)?Li.Text.breakupIntoWordsArr(e):e}},{key:"process",value:function(t){var n;return!0===(null===(n=t.settings)||void 0===n?void 0:n.caseSensitive)?t:Object.keys(t).reduce((function(n,r){var i=t[r];return n[r]="string"==typeof i?e.processCommand(i,t.settings):i,n}),{})}},{key:"toggleCommandModeOn",value:function(e){var t;e.isWaitingForCommand=!0,null===(t=e.onCommandModeTrigger)||void 0===t||t.call(e,!0)}},{key:"toggleCommandModeOff",value:function(e){var t;e.isWaitingForCommand&&(null===(t=e.onCommandModeTrigger)||void 0===t||t.call(e,!1),e.isWaitingForCommand=!1)}},{key:"setText",value:function(t,n,r,i){e.toggleCommandModeOff(t),Mi.Elements.isPrimitiveElement(i)?(i.value=r,t.isTargetInShadow||Ai.Cursor.setOffsetForPrimitive(i,r.length,!0),Ti.Browser.IS_SAFARI()&&t.autoScroll&&Ci.AutoScroll.scrollSafariPrimitiveToEnd(i)):(i.textContent=r,t.isTargetInShadow||Ai.Cursor.focusEndOfGeneric(i),setTimeout((function(){return Ci.AutoScroll.scrollGeneric(t,i)}))),t.resetRecording(n)}},{key:"checkIfMatchesSubstring",value:function(e,t){return t.includes(e)}},{key:"checkIfMatchesWord",value:function(e,t,n){for(var r=e,i=n.length-1;i>=0;i-=1){for(var s=i,a=r.length-1;n[s]===r[a]&&a>=0;)s-=1,a-=1;if(a<0)return!0}return!1}},{key:"execCommand",value:function(t,n,r,i,s){var a,o,l,u=t.commands;if(u&&i&&r){var c=!0===(null===(a=u.settings)||void 0===a?void 0:a.caseSensitive)?n:n.toLowerCase(),d=Li.Text.breakupIntoWordsArr(c),p=!1===(null===(o=u.settings)||void 0===o?void 0:o.substrings)?e.checkIfMatchesWord:e.checkIfMatchesSubstring;if(u.commandMode&&p(u.commandMode,c,d))return t.setInterimColorToFinal(),setTimeout((function(){return e.toggleCommandModeOn(t)})),{doNotProcessTranscription:!1};if(!u.commandMode||t.isWaitingForCommand){if(u.stop&&p(u.stop,c,d))return e.toggleCommandModeOff(t),setTimeout((function(){return t.stop()})),{doNotProcessTranscription:!1};if(u.pause&&p(u.pause,c,d))return e.toggleCommandModeOff(t),t.setInterimColorToFinal(),setTimeout((function(){var e;t.isPaused=!0,null===(e=t.onPauseTrigger)||void 0===e||e.call(t,!0)})),{doNotProcessTranscription:!1};if(u.resume&&p(u.resume,c,d))return t.isPaused=!1,null===(l=t.onPauseTrigger)||void 0===l||l.call(t,!1),e.toggleCommandModeOff(t),t.resetRecording(r),{doNotProcessTranscription:!0};if(u.reset&&p(u.reset,c,d))return void 0!==s&&e.setText(t,r,s,i),{doNotProcessTranscription:!0};if(u.removeAllText&&p(u.removeAllText,c,d))return e.setText(t,r,"",i),{doNotProcessTranscription:!0}}}}}]),e}();bi.CommandUtils=Ii;var Oi={};Object.defineProperty(Oi,"__esModule",{value:!0}),Oi.Highlight=void 0;var Ri=xi,Ni=Si,Pi=function(){function e(){I(this,e)}return R(e,null,[{key:"setStateForPrimitive",value:function(e,t){var n,r;null!==t.selectionStart&&(n=t.selectionStart),null!==t.selectionEnd&&(r=t.selectionEnd),e.isHighlighted=n!==r}},{key:"setStateForGeneric",value:function(e,t){var n=window.getSelection();if(null!=n&&n.focusNode){var r=Ni.Cursor.getGenericElementCursorOffset(t,n,!0),i=Ni.Cursor.getGenericElementCursorOffset(t,n,!1);e.isHighlighted=r!==i}}},{key:"setState",value:function(t,n){document.activeElement===n&&(Ri.Elements.isPrimitiveElement(n)?e.setStateForPrimitive(t,n):e.setStateForGeneric(t,n))}},{key:"removeForGeneric",value:function(e,t){var n=window.getSelection();if(n){var r=Ni.Cursor.getGenericElementCursorOffset(t,n,!0);n.deleteFromDocument(),Ni.Cursor.setOffsetForGeneric(t,r),e.isHighlighted=!1}}},{key:"removeForPrimitive",value:function(e,t){var n=t.selectionStart,r=t.selectionEnd,i=t.value;if(n&&r){var s=i.substring(0,n)+i.substring(r);t.value=s,Ni.Cursor.setOffsetForPrimitive(t,n,e.autoScroll)}e.isHighlighted=!1}}]),e}();Oi.Highlight=Pi;var ji={};Object.defineProperty(ji,"__esModule",{value:!0}),ji.Padding=void 0;var Di=xi,Bi=Si,Fi=ai,qi=function(){function e(){I(this,e)}return R(e,null,[{key:"setStateForPrimitiveElement",value:function(e,t){if(document.activeElement===t&&null!==t.selectionStart){var n=t.selectionStart,r=t.value[n-1],i=null===t.selectionEnd?n:t.selectionEnd,s=t.value[i];return Fi.Text.isCharDefined(r)&&(e.startPadding=" ",e.numberOfSpacesBeforeNewText=1),Fi.Text.isCharDefined(s)&&(e.endPadding=" ",e.numberOfSpacesAfterNewText=1),void(e.isCursorAtEnd=t.value.length===i)}var a=t.value[t.value.length-1];Fi.Text.isCharDefined(a)&&(e.startPadding=" ",e.numberOfSpacesBeforeNewText=1),e.isCursorAtEnd=!0}},{key:"setStateForGenericElement",value:function(e,t){var n,r,i;if(document.activeElement===t){var s=window.getSelection();if(null!=s&&s.focusNode){var a=Bi.Cursor.getGenericElementCursorOffset(t,s,!0),o=null===(n=t.textContent)||void 0===n?void 0:n[a-1],l=Bi.Cursor.getGenericElementCursorOffset(t,s,!1),u=null===(r=t.textContent)||void 0===r?void 0:r[l];return Fi.Text.isCharDefined(o)&&(e.startPadding=" "),Fi.Text.isCharDefined(u)&&(e.endPadding=" "),void(e.isCursorAtEnd=(null===(i=t.textContent)||void 0===i?void 0:i.length)===l)}}var c=t.innerText.charAt(t.innerText.length-1);Fi.Text.isCharDefined(c)&&(e.startPadding=" "),e.isCursorAtEnd=!0}},{key:"setState",value:function(t,n){Di.Elements.isPrimitiveElement(n)?e.setStateForPrimitiveElement(t,n):e.setStateForGenericElement(t,n)}},{key:"adjustStateAfterRecodingPrimitiveElement",value:function(e,t){e.primitiveTextRecorded=!0,e.insertInCursorLocation&&document.activeElement===t&&(null!==t.selectionEnd&&(e.endPadding=e.endPadding+t.value.slice(t.selectionEnd)),null!==t.selectionStart)?e.startPadding=t.value.slice(0,t.selectionStart)+e.startPadding:e.startPadding=t.value+e.startPadding}},{key:"adjustSateForNoTextPrimitiveElement",value:function(e){1===e.numberOfSpacesBeforeNewText&&(e.startPadding=e.startPadding.substring(0,e.startPadding.length-1),e.numberOfSpacesBeforeNewText=0),1===e.numberOfSpacesAfterNewText&&(e.endPadding=e.endPadding.substring(1),e.numberOfSpacesAfterNewText=0)}}]),e}();ji.Padding=qi,Object.defineProperty(fi,"__esModule",{value:!0}),fi.Speech=void 0;var Ui=mi,zi=gi,Hi=bi,Vi=ki,Gi=Oi,Wi=xi,Ki=ji,Yi=pi,Ji=Si,Zi=ai,Xi=function(){function e(){I(this,e),this.finalTranscript="",this.interimSpan=Wi.Elements.createInterimSpan(),this.finalSpan=Wi.Elements.createGenericSpan(),this.scrollingSpan=Wi.Elements.createGenericSpan(),this.isCursorAtEnd=!1,this.spansPopulated=!1,this.startPadding="",this.endPadding="",this.numberOfSpacesBeforeNewText=0,this.numberOfSpacesAfterNewText=0,this.isHighlighted=!1,this.primitiveTextRecorded=!1,this.recognizing=!1,this._displayInterimResults=!0,this.insertInCursorLocation=!0,this.autoScroll=!0,this.isRestarting=!1,this.isPaused=!1,this.isWaitingForCommand=!1,this.isTargetInShadow=!1,this.cannotBeStopped=!1,this.resetState()}return R(e,[{key:"prepareBeforeStart",value:function(e){var t,n;if(null!=e&&e.element)if(Ui.EventListeners.add(this,e),Array.isArray(e.element)){var r=e.element.find((function(e){return e===document.activeElement}))||e.element[0];if(!r)return;this.prepare(r)}else this.prepare(e.element);void 0!==(null==e?void 0:e.displayInterimResults)&&(this._displayInterimResults=e.displayInterimResults),null!=e&&e.textColor&&(this._finalTextColor=null===(t=null==e?void 0:e.textColor)||void 0===t?void 0:t.final,Wi.Elements.applyCustomColors(this,e.textColor)),void 0!==(null==e?void 0:e.insertInCursorLocation)&&(this.insertInCursorLocation=e.insertInCursorLocation),void 0!==(null==e?void 0:e.autoScroll)&&(this.autoScroll=e.autoScroll),this._onResult=null==e?void 0:e.onResult,this._onPreResult=null==e?void 0:e.onPreResult,this._onStart=null==e?void 0:e.onStart,this._onStop=null==e?void 0:e.onStop,this._onError=null==e?void 0:e.onError,this.onCommandModeTrigger=null==e?void 0:e.onCommandModeTrigger,this.onPauseTrigger=null==e?void 0:e.onPauseTrigger,this._options=e,null!==(n=this._options)&&void 0!==n&&n.commands&&(this.commands=Hi.CommandUtils.process(this._options.commands))}},{key:"prepare",value:function(e){Ki.Padding.setState(this,e),Gi.Highlight.setState(this,e),this.isTargetInShadow=Wi.Elements.isInsideShadowDOM(e),Wi.Elements.isPrimitiveElement(e)?(this._primitiveElement=e,this._originalText=this._primitiveElement.value):(this._genericElement=e,this._originalText=this._genericElement.textContent)}},{key:"resetRecording",value:function(e){this.isRestarting=!0,this.stop(!0),this.resetState(!0),this.start(e,!0)}},{key:"updateElements",value:function(e,t,n){var r,i=Zi.Text.capitalize(t);if(this.finalTranscript!==i||""!==e){zi.PreResultUtils.process(this,n,""===e,this._onPreResult,this._options)&&(e="",n="");var s=this.commands&&Hi.CommandUtils.execCommand(this,n,this._options,this._primitiveElement||this._genericElement,this._originalText);if(s){if(s.doNotProcessTranscription)return;e="",n=""}if(!this.isPaused&&!this.isWaitingForCommand){null===(r=this._onResult)||void 0===r||r.call(this,n,""===e),this.finalTranscript=i,this._displayInterimResults||(e="");var a=""===this.finalTranscript&&""===e;this._primitiveElement?this.updatePrimitiveElement(this._primitiveElement,e,a):this._genericElement&&this.updateGenericElement(this._genericElement,e,a)}}}},{key:"updatePrimitiveElement",value:function(e,t,n){this.isHighlighted&&Gi.Highlight.removeForPrimitive(this,e),this.primitiveTextRecorded||Ki.Padding.adjustStateAfterRecodingPrimitiveElement(this,e),n&&Ki.Padding.adjustSateForNoTextPrimitiveElement(this);var r=this.startPadding+this.finalTranscript+t;if(e.value=r+this.endPadding,!this.isTargetInShadow){var i=r.length+this.numberOfSpacesAfterNewText;Ji.Cursor.setOffsetForPrimitive(e,i,this.autoScroll)}this.autoScroll&&Yi.Browser.IS_SAFARI()&&this.isCursorAtEnd&&Vi.AutoScroll.scrollSafariPrimitiveToEnd(e)}},{key:"updateGenericElement",value:function(e,t,n){this.isHighlighted&&Gi.Highlight.removeForGeneric(this,e),this.spansPopulated||Wi.Elements.appendSpans(this,e);var r=(n?"":this.startPadding)+Zi.Text.lineBreak(this.finalTranscript);this.finalSpan.innerHTML=r;var i=Vi.AutoScroll.isRequired(this.autoScroll,e);Vi.AutoScroll.changeStateIfNeeded(this,i);var s=Zi.Text.lineBreak(t)+(n?"":this.endPadding);this.interimSpan.innerHTML=s,Yi.Browser.IS_SAFARI()&&this.insertInCursorLocation&&Ji.Cursor.setOffsetForSafariGeneric(e,r.length+s.length),i&&Vi.AutoScroll.scrollGeneric(this,e),n&&(this.scrollingSpan.innerHTML="")}},{key:"finalise",value:function(e){this._genericElement&&(e?(this.finalSpan=Wi.Elements.createGenericSpan(),this.setInterimColorToFinal(),this.interimSpan=Wi.Elements.createInterimSpan(),this.scrollingSpan=Wi.Elements.createGenericSpan()):this._genericElement.textContent=this._genericElement.textContent,this.spansPopulated=!1),Ui.EventListeners.remove(this)}},{key:"setInterimColorToFinal",value:function(){this.interimSpan.style.color=this._finalTextColor||"black"}},{key:"resetState",value:function(e){this._primitiveElement=void 0,this._genericElement=void 0,this.finalTranscript="",this.finalSpan.innerHTML="",this.interimSpan.innerHTML="",this.scrollingSpan.innerHTML="",this.startPadding="",this.endPadding="",this.isHighlighted=!1,this.primitiveTextRecorded=!1,this.numberOfSpacesBeforeNewText=0,this.numberOfSpacesAfterNewText=0,e||(this.stopTimeout=void 0)}},{key:"setStateOnStart",value:function(){var e;this.recognizing=!0,this.isRestarting?this.isRestarting=!1:null===(e=this._onStart)||void 0===e||e.call(this)}},{key:"setStateOnStop",value:function(){var e;this.recognizing=!1,this.isRestarting||null===(e=this._onStop)||void 0===e||e.call(this)}},{key:"setStateOnError",value:function(e){var t;null===(t=this._onError)||void 0===t||t.call(this,e),this.recognizing=!1}}]),e}();fi.Speech=Xi,Object.defineProperty(ri,"__esModule",{value:!0}),ri.WebSpeech=void 0;var Qi=ii,$i=pi,es=function(e){function t(){return I(this,t),y(this,t)}return x(t,e),R(t,[{key:"start",value:function(e){var t;void 0===this._extractText&&(this._extractText=$i.Browser.IS_SAFARI()?Qi.WebSpeechTranscript.extractSafari:Qi.WebSpeechTranscript.extract),this.validate()&&(this.prepareBeforeStart(e),this.instantiateService(e),null===(t=this._service)||void 0===t||t.start(),this._translations=null==e?void 0:e.translations)}},{key:"validate",value:function(){return!!t.getAPI()||(this.error("Speech Recognition is unsupported"),!1)}},{key:"instantiateService",value:function(e){var n,r,i=t.getAPI();this._service=new i,this._service.continuous=!0,this._service.interimResults=null===(n=null==e?void 0:e.displayInterimResults)||void 0===n||n,this._service.lang=(null===(r=null==e?void 0:e.language)||void 0===r?void 0:r.trim())||"en-US",this.setEvents()}},{key:"setEvents",value:function(){var e=this;this._service&&(this._service.onstart=function(){e.setStateOnStart()},this._service.onerror=function(t){$i.Browser.IS_SAFARI()&&"Another request is started"===t.message||"aborted"===t.error&&e.isRestarting||"no-speech"!==t.error&&e.error(t.message||t.error)},this._service.onaudioend=function(){e.setStateOnStop()},this._service.onend=function(){e._stopping=!1},this._service.onresult=function(t){if(L(t.results)>"u"&&e._service)e._service.onend=null,e._service.stop();else if(e._extractText&&!e._stopping){var n=e._extractText(t,e.finalTranscript,e._translations),r=n.interimTranscript,i=n.finalTranscript,s=n.newText;e.updateElements(r,i,s)}})}},{key:"stop",value:function(e){var t;this._stopping=!0,null===(t=this._service)||void 0===t||t.stop(),this.finalise(e)}},{key:"error",value:function(e){console.error(e),this.setStateOnError(e),this.stop()}}],[{key:"getAPI",value:function(){return window.webkitSpeechRecognition||window.SpeechRecognition}}]),t}(fi.Speech);ri.WebSpeech=es;var ts={};Object.defineProperty(ts,"__esModule",{value:!0}),ts.GlobalState=void 0;var ns=function(){function e(){I(this,e)}return R(e,null,[{key:"doubleClickDetector",value:function(){return!!e.doubleClickPending||(e.doubleClickPending=!0,setTimeout((function(){e.doubleClickPending=!1}),300),!1)}}]),e}();ts.GlobalState=ns,ns.doubleClickPending=!1;var rs={},is={};Object.defineProperty(is,"__esModule",{value:!0}),is.PreventConnectionStop=void 0;var ss=function(){function e(){I(this,e)}return R(e,null,[{key:"applyPrevention",value:function(e){clearTimeout(e._manualConnectionStopPrevention),e.cannotBeStopped=!0,e._manualConnectionStopPrevention=setTimeout((function(){e.cannotBeStopped=!1}),800)}},{key:"clearPrevention",value:function(e){clearTimeout(e._manualConnectionStopPrevention),e.cannotBeStopped=!1}}]),e}();is.PreventConnectionStop=ss;var as={},os={};Object.defineProperty(os,"__esModule",{value:!0}),os.README_URL=void 0,os.README_URL="https://github.com/OvidijusParsiunas/speech-to-element",Object.defineProperty(as,"__esModule",{value:!0}),as.AzureSpeechConfig=void 0;var ls=os,us=function(){function e(){I(this,e)}var t,n;return R(e,null,[{key:"validateOptions",value:function(e,t){return t?t.subscriptionKey||t.token||t.retrieveToken?!!t.region||(e("Please define a 'region' property - more info: ".concat(ls.README_URL)),!1):(e("Please define a 'subscriptionKey', 'token' or 'retrieveToken' property - more info: ".concat(ls.README_URL)),!1):(e("Please provide subscription details - more info: ".concat(ls.README_URL)),!1)}},{key:"getNewSpeechConfig",value:(n=C(S().mark((function e(t,n){return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!n.region){e.next=2;break}return e.abrupt("return",n.subscriptionKey?t.fromSubscription(n.subscriptionKey.trim(),n.region.trim()):n.token?t.fromAuthorizationToken(n.token.trim(),n.region.trim()):n.retrieveToken?n.retrieveToken().then((function(e){return n.region?t.fromAuthorizationToken((null==e?void 0:e.trim())||"",n.region.trim()):null})).catch((function(e){return console.error(e),null})):null);case 2:case"end":return e.stop()}}),e)}))),function(e,t){return n.apply(this,arguments)})},{key:"process",value:function(e,t){t.language&&(e.speechRecognitionLanguage=t.language.trim())}},{key:"get",value:(t=C(S().mark((function t(n,r){var i;return S().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,e.getNewSpeechConfig(n,r);case 2:return i=t.sent,t.abrupt("return",(i&&e.process(i,r),i));case 4:case"end":return t.stop()}}),t)}))),function(e,n){return t.apply(this,arguments)})}]),e}();as.AzureSpeechConfig=us;var cs={};Object.defineProperty(cs,"__esModule",{value:!0}),cs.StopTimeout=void 0;var ds=function(){function e(){I(this,e)}return R(e,null,[{key:"set",value:function(e){e.stopTimeout=setTimeout((function(){return e.stop()}),e.stopTimeoutMS)}},{key:"reset",value:function(t,n){t.stopTimeoutMS=n||e.DEFAULT_MS,t.stopTimeout&&clearTimeout(t.stopTimeout),e.set(t)}}]),e}();cs.StopTimeout=ds,ds.DEFAULT_MS=2e4;var ps={};Object.defineProperty(ps,"__esModule",{value:!0}),ps.AzureTranscript=void 0;var hs=si,fs=function(){function e(){I(this,e)}return R(e,null,[{key:"extract",value:function(e,t,n,r){return r&&(e=hs.Translate.translate(e,r)),n?{interimTranscript:"",finalTranscript:t+e,newText:e}:{interimTranscript:e,finalTranscript:t,newText:e}}}]),e}();ps.AzureTranscript=fs,Object.defineProperty(rs,"__esModule",{value:!0}),rs.Azure=void 0;var ms=is,vs=as,gs=cs,ys=ps,bs=function(e){function t(){var e;return I(this,t),(e=y(this,t,arguments))._newTextPadding="",e}var n,r;return x(t,e),R(t,[{key:"start",value:function(e,t){this._newTextPadding="",void 0===this.stopTimeout&&gs.StopTimeout.reset(this,null==e?void 0:e.stopAfterSilenceMs),this.prepareBeforeStart(e),this.startAsync(e),t||ms.PreventConnectionStop.applyPrevention(this)}},{key:"startAsync",value:(r=C(S().mark((function e(t){var n;return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(e.t0=this.validate(t),!e.t0){e.next=6;break}return e.next=4,this.instantiateService(t);case 4:this._translations=null==t?void 0:t.translations,null===(n=this._service)||void 0===n||n.startContinuousRecognitionAsync((function(){}),this.error);case 6:case"end":return e.stop()}}),e,this)}))),function(e){return r.apply(this,arguments)})},{key:"validate",value:function(e){return t.getAPI()?vs.AzureSpeechConfig.validateOptions(this.error.bind(this),e):(this.moduleNotFound(),!1)}},{key:"instantiateService",value:(n=C(S().mark((function e(n){var r,i,s,a;return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=t.getAPI(),i=r.AudioConfig.fromDefaultMicrophoneInput(),e.next=4,vs.AzureSpeechConfig.get(r.SpeechConfig,n);case 4:(s=e.sent)?(a=new r.SpeechRecognizer(s,i),this.setEvents(a),this._service=a,n.retrieveToken&&this.retrieveTokenInterval(n.retrieveToken)):this.error("Unable to contact Azure server");case 6:case"end":return e.stop()}}),e,this)}))),function(e){return n.apply(this,arguments)})},{key:"setEvents",value:function(e){e.recognizing=this.onRecognizing.bind(this),e.recognized=this.onRecognized.bind(this),e.sessionStarted=this.onSessionStarted.bind(this),e.canceled=this.onCanceled.bind(this),e.sessionStopped=this.onSessionStopped.bind(this)}},{key:"onRecognizing",value:function(e,t){if(!this._stopping){var n=ys.AzureTranscript.extract(this._newTextPadding+t.result.text,this.finalTranscript,!1,this._translations),r=n.interimTranscript,i=n.finalTranscript,s=n.newText;gs.StopTimeout.reset(this,this.stopTimeoutMS),this.updateElements(r,i,s)}}},{key:"onRecognized",value:function(e,t){var n=t.result;switch(n.reason){case window.SpeechSDK.ResultReason.Canceled:break;case window.SpeechSDK.ResultReason.RecognizedSpeech:if(n.text&&!this._stopping){var r=ys.AzureTranscript.extract(this._newTextPadding+n.text,this.finalTranscript,!0,this._translations),i=r.interimTranscript,s=r.finalTranscript,a=r.newText;gs.StopTimeout.reset(this,this.stopTimeoutMS),this.updateElements(i,s,a),""!==s&&(this._newTextPadding=" ")}}}},{key:"onCanceled",value:function(e,t){t.reason===window.SpeechSDK.CancellationReason.Error&&this.error(t.errorDetails)}},{key:"onSessionStarted",value:function(){ms.PreventConnectionStop.clearPrevention(this),this.setStateOnStart()}},{key:"onSessionStopped",value:function(){this._retrieveTokenInterval||clearInterval(this._retrieveTokenInterval),this._stopping=!1,this.setStateOnStop()}},{key:"retrieveTokenInterval",value:function(e){var t=this;this._retrieveTokenInterval=setInterval((function(){null==e||e().then((function(e){t._service&&(t._service.authorizationToken=(null==e?void 0:e.trim())||"")})).catch((function(e){t.error(e)}))}),1e4)}},{key:"stop",value:function(e){var t;!e&&this._retrieveTokenInterval&&clearInterval(this._retrieveTokenInterval),this._stopping=!0,null===(t=this._service)||void 0===t||t.stopContinuousRecognitionAsync(),this.finalise(e)}},{key:"moduleNotFound",value:function(){console.error("speech recognition module not found:"),console.error("please install the 'microsoft-cognitiveservices-speech-sdk' npm package or add a script tag: <script src=\"https://aka.ms/csspeech/jsbrowserpackageraw\"><\/script>"),this.setStateOnError("speech recognition module not found")}},{key:"error",value:function(e){this._retrieveTokenInterval&&clearInterval(this._retrieveTokenInterval),console.error(e),this.setStateOnError(e),this.stop()}}],[{key:"getAPI",value:function(){return window.SpeechSDK}}]),t}(fi.Speech);rs.Azure=bs,Object.defineProperty(ni,"__esModule",{value:!0});var ks=ri,_s=bi,xs=ts,ws=rs,Ss=function(){function e(){I(this,e)}return R(e,null,[{key:"toggle",value:function(t,n){var r,i,s=t.toLocaleLowerCase().trim();null!==(r=xs.GlobalState.service)&&void 0!==r&&r.recognizing?this.stop():"webspeech"===s?e.startWebSpeech(n):"azure"===s?e.startAzure(n):(console.error("service not found - must be either 'webspeech' or 'azure'"),null===(i=null==n?void 0:n.onError)||void 0===i||i.call(n,"service not found - must be either 'webspeech' or 'azure'"))}},{key:"startWebSpeech",value:function(t){e.stop()||(xs.GlobalState.service=new ks.WebSpeech,xs.GlobalState.service.start(t))}},{key:"isWebSpeechSupported",value:function(){return!!ks.WebSpeech.getAPI()}},{key:"startAzure",value:function(t){var n;e.stop()||null!==(n=xs.GlobalState.service)&&void 0!==n&&n.cannotBeStopped||(xs.GlobalState.service=new ws.Azure,xs.GlobalState.service.start(t))}},{key:"stop",value:function(){var e;return!!xs.GlobalState.doubleClickDetector()||(!(null===(e=xs.GlobalState.service)||void 0===e)&&e.recognizing&&xs.GlobalState.service.stop(),!1)}},{key:"endCommandMode",value:function(){xs.GlobalState.service&&_s.CommandUtils.toggleCommandModeOff(xs.GlobalState.service)}}]),e}(),Es=ni.default=Ss,Cs=function(e){function t(e,n,r){var i,s;I(this,t),i=y(this,t,["object"==L(e.speechToText)?null==(s=e.speechToText)?void 0:s.button:{}]);var a=t.processConfiguration(n,e.speechToText),o=a.serviceName,l=a.processedConfig;if(i._addErrorMessage=r,"webspeech"!==o||Es.isWebSpeechSupported()){var u=!e.textInput||!e.textInput.disabled;i.elementRef.onclick=i.buttonClick.bind(b(i),n,u,o,l)}else i.changeToUnsupported();return i}return x(t,e),R(t,[{key:"buttonClick",value:function(e,t,n,r){e.removeTextIfPlaceholder(),Es.toggle(n,T({insertInCursorLocation:!1,element:t?e.inputElementRef:void 0,onError:this.onError.bind(this),onStart:this.changeToActive.bind(this),onStop:this.changeToDefault.bind(this),onCommandModeTrigger:this.onCommandModeTrigger.bind(this)},r))}},{key:"onCommandModeTrigger",value:function(e){e?this.changeToCommandMode():this.changeToActive()}},{key:"onError",value:function(){this._addErrorMessage("speechToText","speech input error")}}],[{key:"processConfiguration",value:function(e,n){var r,i,s,a,o,l="object"==L(n)?n:{},u="object"==L(l.webSpeech)?l.webSpeech:{},c=l.azure||{},d=T(T({displayInterimResults:null!==(r=l.displayInterimResults)&&void 0!==r?r:void 0,textColor:null!==(i=l.textColor)&&void 0!==i?i:void 0,translations:null!==(s=l.translations)&&void 0!==s?s:void 0,commands:null!==(a=l.commands)&&void 0!==a?a:void 0},u),c),p=null==(o=l.commands)?void 0:o.submit;return p&&(d.onPreResult=function(t){return t.toLowerCase().includes(p)?(setTimeout((function(){var t;return null==(t=e.submit)?void 0:t.call(e)})),Es.endCommandMode(),{restart:!0,removeNewText:!0}):null}),{serviceName:t.getServiceName(l),processedConfig:d}}},{key:"getServiceName",value:function(e){return e.webSpeech?"webspeech":e.azure?"azure":"webspeech"}}]),t}(ti),Ms=function(){function e(){I(this,e)}return R(e,null,[{key:"getFileName",value:function(e,t){var n=new Date,r=String(n.getHours()).padStart(2,"0"),i=String(n.getMinutes()).padStart(2,"0"),s=String(n.getSeconds()).padStart(2,"0");return"".concat(e,"-").concat(r,"-").concat(i,"-").concat(s,".").concat(t)}}]),e}(),Ts=function(e){function t(e,n){var r,i,s;return I(this,t),(r=y(this,t,[n.button]))._waitingForBrowserApproval=!1,r._audioType=e,r._extension=(null==(i=n.files)?void 0:i.format)||"mp3",r._maxDurationSeconds=null==(s=n.files)?void 0:s.maxDurationSeconds,r.elementRef.onclick=r.buttonClick.bind(b(r)),r}return x(t,e),R(t,[{key:"buttonClick",value:function(){this._waitingForBrowserApproval||(this.isActive?this.stop():(this._waitingForBrowserApproval=!0,this.record()))}},{key:"stop",value:function(){var e=this;return new Promise((function(t){var n,r;e.changeToDefault(),null==(n=e._mediaRecorder)||n.stop(),null==(r=e._mediaStream)||r.getTracks().forEach((function(e){return e.stop()})),setTimeout((function(){t()}),10)}))}},{key:"record",value:function(){var e=this;navigator.mediaDevices.getUserMedia({audio:!0}).then((function(t){e.changeToActive(),e._mediaRecorder=new MediaRecorder(t),e._audioType.addPlaceholderAttachment(e.stop.bind(e),e._maxDurationSeconds),e._mediaStream=t,e._mediaRecorder.addEventListener("dataavailable",(function(t){e.createFile(t)})),e._mediaRecorder.start()})).catch((function(t){console.error(t),e.stop()})).finally((function(){e._waitingForBrowserApproval=!1}))}},{key:"createFile",value:function(e){var t=this,n=new Blob([e.data],{type:"audio/".concat(this._extension)}),r=Ms.getFileName(this._newFilePrefix||"audio",this._extension),i=new File([n],r,{type:n.type}),s=new FileReader;s.readAsDataURL(i),s.onload=function(e){t._audioType.completePlaceholderAttachment(i,e.target.result)}}}]),t}(ti),As=function(){function e(){I(this,e)}return R(e,null,[{key:"setPropertyValueIfDoesNotExist",value:function(t,n,r){var i,s,a=n[0];1===n.length?null!==(i=t[a])&&void 0!==i||(t[a]=r):(null!==(s=t[a])&&void 0!==s||(t[a]={}),n.shift(),e.setPropertyValueIfDoesNotExist(t[a],n,r))}},{key:"setPropertyValue",value:function(t,n,r){var i,s=n[0];1===n.length?t[s]=r:(null!==(i=t[s])&&void 0!==i||(t[s]={}),n.shift(),e.setPropertyValue(t[s],n,r))}},{key:"getObjectValue",value:function(t,n){var r=t[n[0]];return void 0===r||1===n.length?r:e.getObjectValue(r,n.slice(1))}},{key:"overwritePropertyObjectFromAnother",value:function(t,n,r){var i=e.getObjectValue(n,r);if(i){var s=T(T({},i),e.getObjectValue(t,r)||{});e.setPropertyValue(t,r,s)}}}]),e}(),Ls=function(){function e(){I(this,e)}return R(e,null,[{key:"resetSubmit",value:function(e,t){t?e.unsetCustomStateStyles(["loading","submit"]):e.unsetCustomStateStyles(["stop","loading","submit"]),e.reapplyStateStyle("submit")}},{key:"overwriteDefaultStyleWithSubmit",value:function(e,t){if(e.submit){var n=JSON.parse(JSON.stringify(e[t]||{}));As.overwritePropertyObjectFromAnother(n,e.submit,["container","default"]),As.overwritePropertyObjectFromAnother(n,e.submit,["text","styles","default"]),As.overwritePropertyObjectFromAnother(n,e.submit,["svg","styles","default"]),e[t]=n}}},{key:"setUpDisabledButton",value:function(t){As.setPropertyValueIfDoesNotExist(t,["submit","container","default","backgroundColor"],""),As.setPropertyValueIfDoesNotExist(t,["disabled","container","default","backgroundColor"],"unset"),As.setPropertyValueIfDoesNotExist(t.submit,["svg","styles","default","filter"],""),As.setPropertyValueIfDoesNotExist(t.disabled,["svg","styles","default","filter"],"brightness(0) saturate(100%) invert(70%) sepia(0%) saturate(5564%) hue-rotate(207deg) brightness(100%) contrast(97%)"),e.overwriteDefaultStyleWithSubmit(t,"disabled")}},{key:"process",value:function(t){var n=JSON.parse(JSON.stringify(t||{}));return e.overwriteDefaultStyleWithSubmit(n,"loading"),e.overwriteDefaultStyleWithSubmit(n,"stop"),null!=t&&t.alwaysEnabled||e.setUpDisabledButton(n),n}}]),e}(),Is=function(e){function t(e,n,r,i,s){var a;I(this,t);var o=Ls.process(e.submitButtonStyles);return(a=y(this,t,[t.createButtonContainerElement(),null==o?void 0:o.position,o]))._isSVGLoadingIconOverriden=!1,a.status={requestInProgress:!1,loadingActive:!1},a._messages=r,a._inputElementRef=n,a._fileAttachments=s,a._innerElements=a.createInnerElements(),a._abortStream=new AbortController,a._stopClicked={listener:function(){}},a._serviceIO=i,a._alwaysEnabled=!(null==o||!o.alwaysEnabled),e.disableSubmitButton=a.disableSubmitButton.bind(b(a),i),a.attemptOverwriteLoadingStyle(e),setTimeout((function(){var t;a._validationHandler=e._validationHandler,a.assignHandlers(a._validationHandler),null==(t=a._validationHandler)||t.call(b(a))})),a}var n,r,i,s;return x(t,e),R(t,[{key:"createInnerElements",value:function(){var e=Pr.create(this.elementRef,["submit","loading","stop"],this._customStyles),n=e.submit,r=e.loading,i=e.stop,s=n||t.createSubmitIconElement();return{submit:s,loading:r||t.createLoadingIconElement(),stop:i||t.createStopIconElement(),disabled:this.createDisabledIconElement(s)}}},{key:"createDisabledIconElement",value:function(e){return Pr.createCustomElement("disabled",this._customStyles)||e.cloneNode(!0)}},{key:"attemptOverwriteLoadingStyle",value:function(e){var t,n,r,i,s,a,o,l,u;if(!(null!=(n=null==(t=this._customStyles)?void 0:t.submit)&&n.svg||null!=(s=null==(i=null==(r=this._customStyles)?void 0:r.loading)?void 0:i.svg)&&s.content||null!=(l=null==(o=null==(a=this._customStyles)?void 0:a.loading)?void 0:o.text)&&l.content||void 0!==e.displayLoadingBubble&&!0!==e.displayLoadingBubble)){var c=document.createElement("style");c.textContent="\n .loading-button > * {\n filter: brightness(0) saturate(100%) invert(72%) sepia(0%) saturate(3044%) hue-rotate(322deg) brightness(100%)\n contrast(96%) !important;\n }",null==(u=e.shadowRoot)||u.appendChild(c),this._isSVGLoadingIconOverriden=!0}}},{key:"assignHandlers",value:function(e){this._serviceIO.completionsHandlers={onFinish:this.resetSubmit.bind(this,e)},this._serviceIO.streamHandlers={onOpen:this.changeToStopIcon.bind(this),onClose:this.resetSubmit.bind(this,e),abortStream:this._abortStream,stopClicked:this._stopClicked};var t=this._serviceIO.deepChat.stream;"object"==L(t)&&"number"==typeof t.simulation&&(this._serviceIO.streamHandlers.simulationInterim=t.simulation)}},{key:"resetSubmit",value:function(e){this.status.requestInProgress=!1,this.status.loadingActive=!1,e()}},{key:"submitFromInput",value:(s=C(S().mark((function e(){var t,n,r;return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this._fileAttachments.completePlaceholders();case 2:n=this._fileAttachments.getAllFileData(),this._inputElementRef.classList.contains("text-input-placeholder")?this.attemptSubmit({text:"",files:n}):(r=null==(t=this._inputElementRef.textContent)?void 0:t.trim(),this.attemptSubmit({text:r,files:n}));case 4:case"end":return e.stop()}}),e,this)}))),function(){return s.apply(this,arguments)})},{key:"programmaticSubmit",value:(i=C(S().mark((function e(t){var n,r=this;return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:"string"==typeof t&&(t=ne.processSubmitUserMessage(t)),n={text:t.text},t.files&&(n.files=Array.from(t.files).map((function(e){return{file:e,type:Vr.getTypeFromBlob(e)}}))),setTimeout((function(){return r.attemptSubmit(n,!0)}));case 3:case"end":return e.stop()}}),e)}))),function(e){return i.apply(this,arguments)})},{key:"attemptSubmit",value:(r=C(S().mark((function e(t){var n,r,i,s,a,o,l=arguments;return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=l.length>1&&void 0!==l[1]&&l[1],e.next=3,null==(r=this._validationHandler)?void 0:r.call(this,n?t:void 0);case 3:if(e.t0=e.sent,e.t1=!1,e.t0!==e.t1){e.next=7;break}return e.abrupt("return");case 7:return this.changeToLoadingIcon(),e.next=10,this.addNewMessage(t);case 10:return this._serviceIO.isWebModel()||this._messages.addLoadingMessage(),W.clear(this._inputElementRef),a=null==(i=t.files)?void 0:i.map((function(e){return e.file})),o={text:""===t.text?void 0:t.text,files:a},e.next=15,this._serviceIO.callAPI(o,this._messages);case 15:null==(s=this._fileAttachments)||s.removeAllFiles();case 16:case"end":return e.stop()}}),e,this)}))),function(e){return r.apply(this,arguments)})},{key:"addNewMessage",value:(n=C(S().mark((function e(t){var n,r,i;return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n=t.text,r=t.files,i={role:ue.USER_ROLE},n&&(i.text=n),e.t0=r,!e.t0){e.next=8;break}return e.next=7,this._messages.addMultipleFiles(r);case 7:i.files=e.sent;case 8:this._serviceIO.sessionId&&(i._sessionId=this._serviceIO.sessionId),Object.keys(i).length>0&&this._messages.addNewMessage(i);case 10:case"end":return e.stop()}}),e,this)}))),function(e){return n.apply(this,arguments)})},{key:"stopStream",value:function(){var e;this._abortStream.abort(),null==(e=this._stopClicked)||e.listener(),this._validationHandler&&this.resetSubmit(this._validationHandler)}},{key:"changeToStopIcon",value:function(){this._serviceIO.websocket||(this.elementRef.classList.remove(t.LOADING_CLASS,t.DISABLED_CLASS,t.SUBMIT_CLASS),this.elementRef.replaceChildren(this._innerElements.stop),this.reapplyStateStyle("stop",["loading","submit"]),this.elementRef.onclick=this.stopStream.bind(this),this.status.loadingActive=!1)}},{key:"changeToLoadingIcon",value:function(){this._serviceIO.websocket||(this._isSVGLoadingIconOverriden||this.elementRef.replaceChildren(this._innerElements.loading),this.elementRef.classList.remove(t.SUBMIT_CLASS,t.DISABLED_CLASS),this.elementRef.classList.add(t.LOADING_CLASS),this.reapplyStateStyle("loading",["submit"]),this.elementRef.onclick=function(){},this.status.requestInProgress=!0,this.status.loadingActive=!0)}},{key:"changeToSubmitIcon",value:function(){this.elementRef.classList.contains(t.SUBMIT_CLASS)||(this.elementRef.classList.remove(t.LOADING_CLASS,t.DISABLED_CLASS),this.elementRef.classList.add(t.SUBMIT_CLASS),this.elementRef.replaceChildren(this._innerElements.submit),Ls.resetSubmit(this,this.status.loadingActive),this.elementRef.onclick=this.submitFromInput.bind(this))}},{key:"changeToDisabledIcon",value:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];this._alwaysEnabled&&!e?this.changeToSubmitIcon():this.elementRef.classList.contains(t.DISABLED_CLASS)||(this.elementRef.classList.remove(t.LOADING_CLASS,t.SUBMIT_CLASS),this.elementRef.classList.add(t.DISABLED_CLASS),this.elementRef.replaceChildren(this._innerElements.disabled),this.reapplyStateStyle("disabled",["submit"]),this.elementRef.onclick=function(){})}},{key:"disableSubmitButton",value:function(e,t){var n;e.isSubmitProgrammaticallyDisabled=!1!==t,!this.status.requestInProgress&&!this.status.loadingActive&&(!1===t?null==(n=this._validationHandler)||n.call(this):this.changeToDisabledIcon(!0))}}],[{key:"createButtonContainerElement",value:function(){var e=document.createElement("div");return e.classList.add("input-button"),e}},{key:"createSubmitIconElement",value:function(){var e=bn.createSVGElement('<?xml version="1.0" standalone="no"?>\n<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.0//EN" "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">\n<svg xmlns="http://www.w3.org/2000/svg" stroke="currentColor" fill="none" stroke-width="1" viewBox="0 0 24 24" stroke-linecap="round" stroke-linejoin="round">\n <line x1="22" y1="2" x2="11" y2="14"></line>\n <polygon points="22 2 15 22 11 14 2 10 22 2"></polygon>\n</svg>\n');return e.id="submit-icon",e}},{key:"createLoadingIconElement",value:function(){var e=document.createElement("div");return e.classList.add("dots-jumping"),e}},{key:"createStopIconElement",value:function(){var e=document.createElement("div");return e.id="stop-icon",e}}]),t}(Dr);Is.SUBMIT_CLASS="submit-button",Is.LOADING_CLASS="loading-button",Is.DISABLED_CLASS="disabled-button";var Os=Is,Rs=function(e){function t(e,n,r,i){var s;I(this,t),(s=y(this,t,[e,["modal-content","modal-camera-content"],r]))._stopped=!1,s._format="image/png",s._canvas=document.createElement("canvas"),s._canvas.classList.add("camera-modal-canvas");var a=s.addButtonsAndTheirEvents(n),o=a.captureButton,l=a.submitButton;return s._captureButton=o,s._submitButton=l,s._captureIcon=s._captureButton.children[0],s._refreshIcon=bn.createSVGElement('<?xml version="1.0" encoding="utf-8"?>\n<svg viewBox="0 0 32 32" xmlns="http://www.w3.org/2000/svg">\n <path d="M27.1 14.313V5.396L24.158 8.34c-2.33-2.325-5.033-3.503-8.11-3.503C9.902 4.837 4.901 9.847 4.899 16c.001 6.152 5.003 11.158 11.15 11.16 4.276 0 9.369-2.227 10.836-8.478l.028-.122h-3.23l-.022.068c-1.078 3.242-4.138 5.421-7.613 5.421a8 8 0 0 1-5.691-2.359A7.993 7.993 0 0 1 8 16.001c0-4.438 3.611-8.049 8.05-8.049 2.069 0 3.638.58 5.924 2.573l-3.792 3.789H27.1z"/>\n</svg>\n'),s._refreshIcon.classList.add("modal-svg-button-icon","modal-svg-refresh-icon"),"jpeg"===(null==i?void 0:i.format)&&(s._format="image/jpeg"),null!=i&&i.dimensions&&(s._dimensions=i.dimensions),s._contentRef.appendChild(s._canvas),s.extensionCloseCallback=s.stop,s}return x(t,e),R(t,[{key:"addButtonsAndTheirEvents",value:function(e){var t=Xr.createSVGButton('<?xml version="1.0" encoding="utf-8"?>\n<svg viewBox="0 0 32 32" version="1.1" xmlns="http://www.w3.org/2000/svg">\n <title>capture</title>\n <path d="M0 16q0 3.264 1.28 6.208t3.392 5.12 5.12 3.424 6.208 1.248 6.208-1.248 5.12-3.424 3.392-5.12 1.28-6.208-1.28-6.208-3.392-5.12-5.088-3.392-6.24-1.28q-3.264 0-6.208 1.28t-5.12 3.392-3.392 5.12-1.28 6.208zM4 16q0-3.264 1.6-6.016t4.384-4.352 6.016-1.632 6.016 1.632 4.384 4.352 1.6 6.016-1.6 6.048-4.384 4.352-6.016 1.6-6.016-1.6-4.384-4.352-1.6-6.048z"></path>\n</svg>\n');t.classList.add("modal-svg-camera-button"),t.children[0].classList.add("modal-svg-camera-icon");var n=this.addCloseButton('<?xml version="1.0" encoding="utf-8"?>\n<svg viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg">\n <path d="M195.2 195.2a64 64 0 0 1 90.496 0L512 421.504 738.304 195.2a64 64 0 0 1 90.496 90.496L602.496 512 828.8 738.304a64 64 0 0 1-90.496 90.496L512 602.496 285.696 828.8a64 64 0 0 1-90.496-90.496L421.504 512 195.2 285.696a64 64 0 0 1 0-90.496z"/>\n</svg>',!0);n.classList.add("modal-svg-close-button"),n.children[0].classList.add("modal-svg-close-icon");var r=Xr.createSVGButton('<?xml version="1.0" encoding="utf-8"?>\n<svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">\n <path d="M4.89163 13.2687L9.16582 17.5427L18.7085 8" stroke="#000000" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"/>\n</svg>');return r.classList.add("modal-svg-submit-button"),this.addButtons(t,r),this.addButtonEvents(t,n,r,e),{captureButton:t,submitButton:r}}},{key:"addButtonEvents",value:function(e,t,n,r){var i=this;e.onclick=function(){i.capture()},t.addEventListener("click",this.stop.bind(this)),n.onclick=function(){var e=i.getFile();e&&Jr.addFilesToType([e],[r]),i.stop(),i.close()}}},{key:"stop",value:function(){var e=this;this._mediaStream&&this._mediaStream.getTracks().forEach((function(e){return e.stop()})),this._stopped=!0,setTimeout((function(){e._captureButton.replaceChildren(e._captureIcon),e._captureButton.classList.replace("modal-svg-refresh-button","modal-svg-camera-button");var t=e._canvas.getContext("2d");null==t||t.clearRect(0,0,e._canvas.width,e._canvas.height)}),Xr.MODAL_CLOSE_TIMEOUT_MS)}},{key:"start",value:function(){var e=this;this._dataURL=void 0,this._submitButton.classList.add("modal-svg-submit-disabled"),this._stopped=!1,navigator.mediaDevices.getUserMedia({video:this._dimensions||!0}).then((function(t){if(e._mediaStream=t,!e.isOpen())return e.stop();var n=document.createElement("video");n.srcObject=t,n.play(),requestAnimationFrame(e.updateCanvas.bind(e,n,e._canvas))})).catch((function(t){console.error(t),e.stop(),e.close()}))}},{key:"capture",value:function(){this._dataURL?(this._captureButton.replaceChildren(this._captureIcon),this._captureButton.classList.replace("modal-svg-refresh-button","modal-svg-camera-button"),this._submitButton.classList.add("modal-svg-submit-disabled"),this._dataURL=void 0):(this._captureButton.replaceChildren(this._refreshIcon),this._captureButton.classList.replace("modal-svg-camera-button","modal-svg-refresh-button"),this._submitButton.classList.remove("modal-svg-submit-disabled"),this._dataURL=this._canvas.toDataURL())}},{key:"getFile",value:function(){if(this._dataURL){for(var e=atob(this._dataURL.split(",")[1]),t=new Array(e.length),n=0;n<e.length;n++)t[n]=e.charCodeAt(n);var r=new Uint8Array(t),i=new Blob([r],{type:this._format}),s="image/jpeg"===this._format?"jpeg":"png",a=Ms.getFileName(this._newFilePrefix||"photo",s);return new File([i],a,{type:i.type})}}},{key:"updateCanvas",value:function(e,t){if(!this._stopped){if(!this._dataURL){t.width=e.videoWidth,t.height=e.videoHeight;var n=t.getContext("2d");null==n||n.drawImage(e,0,0,t.width,t.height)}requestAnimationFrame(this.updateCanvas.bind(this,e,t))}}},{key:"openCameraModal",value:function(e){this.displayModalElements(),e.start()}}],[{key:"createCameraModalFunc",value:function(e,n,r,i){var s=new t(e,n,r,i);return s.openCameraModal.bind(s,s)}}]),t}(Xr),Ns=function(e){function t(e,n,r){var i,s;I(this,t);var a=(i=y(this,t,[t.createButtonElement(),null==(s=null==r?void 0:r.button)?void 0:s.position,(null==r?void 0:r.button)||{},"Photo"])).createInnerElements(i._customStyles);return r&&i.addClickEvent(e,n,r.modalContainerStyle,r.files),i.elementRef.classList.add("upload-file-button"),i.elementRef.appendChild(a.styles),i.reapplyStateStyle("styles"),i}return x(t,e),R(t,[{key:"createInnerElements",value:function(e){return{styles:this.createInnerElement(t.createSVGIconElement(),"styles",e)}}},{key:"createInnerElement",value:function(e,t,n){return Pr.createSpecificStateElement(this.elementRef,t,n)||e}},{key:"addClickEvent",value:function(e,t,n,r){var i=Rs.createCameraModalFunc(e,t,n,r);this.elementRef.onclick=i}}],[{key:"createButtonElement",value:function(){var e=document.createElement("div");return e.classList.add("input-button"),e}},{key:"createSVGIconElement",value:function(){var e=bn.createSVGElement('<?xml version="1.0" encoding="utf-8"?>\n<svg viewBox="0 0 32 32" version="1.1" xmlns="http://www.w3.org/2000/svg">\n <path d="M29 7h-4.599l-2.401-4h-12l-2.4 4h-4.6c-1 0-3 1-3 2.969v16.031c0 1.657 1.5 3 2.792 3h26.271c1.313 0 2.938-1.406 2.938-2.968v-16.032c0-1-1-3-3-3zM30 26.032c0 0.395-0.639 0.947-0.937 0.969h-26.265c-0.232-0.019-0.797-0.47-0.797-1v-16.031c0-0.634 0.851-0.953 1-0.969h5.732l2.4-4h9.802l1.785 3.030 0.55 0.97h5.731c0.705 0 0.99 0.921 1 1v16.032zM16 10c-3.866 0-7 3.134-7 7s3.134 7 7 7 7-3.134 7-7-3.134-7-7-7zM16 22c-2.757 0-5-2.243-5-5s2.243-5 5-5 5 2.243 5 5-2.243 5-5 5z"></path>\n</svg>');return e.id="camera-icon",e}}]),t}(Dr),Ps=function(){function e(t,n,r,i){I(this,e),this.elementRef=e.createPanelElement(t.inputAreaStyle);var s=new W(t,r),a={},o=this.createFileUploadComponents(t,r,i,a);t.speechToText&&!a.microphone&&(a.microphone={button:new Cs(t,s,n.addNewErrorMessage.bind(n))});var l=new Os(t,s.inputElementRef,n,r,o);s.submit=l.submitFromInput.bind(l),ei.attach(t,r,s,o,l),t.submitUserMessage=l.programmaticSubmit.bind(l),a.submit={button:l},e.addElements(this.elementRef,s,a,i,o,t.dropupStyles)}return R(e,[{key:"createFileUploadComponents",value:function(t,n,r,i){var s,a,o,l,u=new Jr(this.elementRef,t.attachmentContainerStyle,n.demo);if(e.createUploadButtons(t,n.fileTypes||{},u,r,i),null!=(s=n.camera)&&s.files){var c=(null==(a=i.images)?void 0:a.fileType)||u.addType(t,n.camera.files,"images");i.camera={button:new Ns(r,c,n.camera)}}if(null!=(o=n.recordAudio)&&o.files){var d=(null==(l=i.audio)?void 0:l.fileType)||u.addType(t,n.recordAudio.files,"audio");i.microphone={button:new Ts(d,n.recordAudio)}}return $r.isEnabled(u,t.dragAndDrop)&&$r.create(r,u,t.dragAndDrop),u}}],[{key:"createPanelElement",value:function(e){var t=document.createElement("div");return t.id="input",Object.assign(t.style,e),t}},{key:"createUploadButtons",value:function(e,t,n,r,i){Object.keys(t).forEach((function(s){var a=s,o=t[a];if(o.files){var l=n.addType(e,o.files,a),u=Hr[a],c=u.id,d=u.svgString,p=u.dropupText,h=new Qr(r,l,o,c,d,p);i[a]={button:h,fileType:l}}}))}},{key:"addElements",value:function(e,t,n,r,i,s){$.addElements(e,t.elementRef);var a=Rr.create(),o=zr.addButtons(a,n,r,s);Or.set(t.inputElementRef,a,i.elementRef,o),Rr.add(e,a)}}]),e}(),js=function(){function e(){I(this,e)}return R(e,null,[{key:"createElements",value:function(e,t,n){var r=document.createElement("div");r.id="chat-view";var i=new Lr(e,t,n);t.websocket&&un.createConnection(t,i);var s=new Ps(e,i,t,r);return $.addElements(r,i.elementRef,s.elementRef),r}},{key:"render",value:function(t,n,r,i){var s=e.createElements(t,r,i);n.replaceChildren(s)}}]),e}(),Ds=Object.defineProperty,Bs=Object.getOwnPropertyDescriptor,Fs=function(e,t,n,r){for(var i,s=r>1?void 0:r?Bs(t,n):t,a=e.length-1;a>=0;a--)(i=e[a])&&(s=(r?i(t,n,s):i(s))||s);return r&&s&&Ds(t,n,s),s},qs=function(e){function t(){var e;return I(this,t),(e=y(this,t)).getMessages=function(){return[]},e.submitUserMessage=function(){return console.warn("submitUserMessage failed - please wait for chat view to render before calling this property.")},e.focusInput=function(){return K.focusFromParentElement(e._elementRef)},e.refreshMessages=function(){},e.clearMessages=function(){},e.scrollToBottom=function(){},e.disableSubmitButton=function(){},e._hasBeenRendered=!1,e._auxiliaryStyleApplied=!1,e._addMessage=function(){return console.warn("addMessage failed - please wait for chat view to render before calling this property.")},wr.appendStyleSheetToHead(),e._elementRef=document.createElement("div"),e._elementRef.id="container",e.attachShadow({mode:"open"}).appendChild(e._elementRef),F.apply('#validate-property-key-view{height:100%;position:relative;display:flex;justify-content:center;align-items:center;padding:8px}#large-loading-ring{display:inline-block;width:50px;height:50px}#large-loading-ring:after{content:" ";display:block;width:38px;height:38px;margin:1px;border-radius:50%;border:5px solid #5fb2ff;border-color:#5fb2ff transparent #5fb2ff transparent;animation:large-loading-ring 1.4s linear infinite}@keyframes large-loading-ring{0%{transform:rotate(0)}to{transform:rotate(360deg)}}#insert-key-view{height:100%;position:relative}#insert-key-contents{text-align:center;position:absolute;top:44%;left:50%;transform:translate(-50%,-50%);width:82%;display:flex;max-width:700px}#insert-key-title{margin-bottom:15px}#insert-key-input-container{margin-right:2.7em;width:calc(100% - 80px)}#insert-key-input{padding:.3em 1.7em .3em .3em;border-width:1px;border-style:solid;border-radius:3px;width:100%;font-size:inherit}.insert-key-input-valid{border-color:gray}.insert-key-input-invalid{border-color:red}#visibility-icon-container{position:relative;float:right;cursor:pointer;-webkit-user-select:none;user-select:none}.visibility-icon{filter:brightness(0) saturate(100%) invert(63%) sepia(1%) saturate(9%) hue-rotate(43deg) brightness(98%) contrast(92%);position:absolute;right:-1.7em;top:-1.43em}#visible-icon{top:-1.4em}.visibility-icon:hover{filter:unset}.visibility-icon>*{pointer-events:none}#start-button{border:1px solid grey;color:#454545;border-radius:4px;width:3em;display:flex;justify-content:center;align-items:center;cursor:pointer;padding:.28em .3em;-webkit-user-select:none;user-select:none;background-color:#fff}#start-button:hover{background-color:#f2f2f2}#start-button:active{background-color:#d2d2d2}#insert-key-help-text-container{width:100%;position:absolute;margin-top:32px;margin-bottom:20px}#insert-key-help-text-contents{width:100%;position:absolute}#insert-key-input-invalid-text{display:block;margin-top:1em;margin-bottom:.5em;color:red}.insert-key-input-help-text{display:block;margin-top:16px}#loading-ring{display:inline-block;width:16px;height:16px}#loading-ring:after{content:" ";display:block;width:11px;height:11px;margin:1px;border-radius:50%;border:2px solid #0084ff;border-color:#0084ff transparent #0084ff transparent;animation:loading-ring 1.2s linear infinite}@keyframes loading-ring{0%{transform:rotate(0)}to{transform:rotate(360deg)}}#error-view{color:red;font-size:1.2em;line-height:1.3em;margin-top:-5px;text-align:center;height:100%;display:flex;justify-content:center;align-items:center;padding-left:8px;padding-right:8px}.intro-panel{position:absolute;display:flex;justify-content:center;right:0;bottom:0;left:0;margin:auto;height:fit-content;top:-2.5em}#internal-intro-panel{width:250px;height:min-content;display:block;border-radius:5px;overflow:auto;border:1px solid rgb(203,203,203);padding:10px;max-height:calc(100% - 6.8em)}#internal-intro-panel>p{margin-block-start:.8em;margin-block-end:.8em}pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}/*!\n Theme: a11y-dark\n Author: @ericwbailey\n Maintainer: @ericwbailey\n\n Based on the Tomorrow Night Eighties theme: https://github.com/isagalaev/highlight.js/blob/master/src/styles/tomorrow-night-eighties.css\n*/.hljs{background:#2b2b2b;color:#f8f8f2}.hljs-comment,.hljs-quote{color:#d4d0ab}.hljs-deletion,.hljs-name,.hljs-regexp,.hljs-selector-class,.hljs-selector-id,.hljs-tag,.hljs-template-variable,.hljs-variable{color:#ffa07a}.hljs-built_in,.hljs-link,.hljs-literal,.hljs-meta,.hljs-number,.hljs-params,.hljs-type{color:#f5ab35}.hljs-attribute{color:gold}.hljs-addition,.hljs-bullet,.hljs-string,.hljs-symbol{color:#abe338}.hljs-section,.hljs-title{color:#00e0e0}.hljs-keyword,.hljs-selector-tag{color:#dcc6e0}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700}@media screen and (-ms-high-contrast: active){.hljs-addition,.hljs-attribute,.hljs-built_in,.hljs-bullet,.hljs-comment,.hljs-link,.hljs-literal,.hljs-meta,.hljs-number,.hljs-params,.hljs-quote,.hljs-string,.hljs-symbol,.hljs-type{color:highlight}.hljs-keyword,.hljs-selector-tag{font-weight:700}}#messages{overflow:auto}.outer-message-container:last-child{margin-bottom:5px}.inner-message-container{display:flex;margin-left:auto;margin-right:auto;width:calc(97.5% - 24px);max-width:100%}.message-bubble{margin-top:10px;word-wrap:break-word;width:fit-content;max-width:60%;border-radius:10px;padding:.42em .55em;height:fit-content;line-height:1.26em}.user-message-text{color:#fff;background-color:#0084ff;margin-right:0;margin-left:auto}.ai-message-text{color:#000;background-color:#e4e6eb;margin-left:0;margin-right:auto}.html-message{max-width:unset}.error-message-text{margin:14px auto 10px;background-color:#f4c0c0;color:#474747;text-align:center;max-width:95%}.loading-message-text{width:1em;padding:.6em .75em .6em 1.3em}.message-bubble>p:first-child{margin-top:0}.message-bubble>p:last-child{margin-bottom:0}pre{overflow:auto;display:block;word-break:break-all;word-wrap:break-word;border-radius:7px;background:#2b2b2b;color:#f8f8f2;margin-top:.8em;margin-bottom:.8em;padding:.6em;font-size:.9em;line-height:1.5em}.image-message{padding:0;display:flex;background-color:#ddd}.image-message>*,.image-message>*>*{width:100%;border-radius:8px;display:flex}.audio-message{width:60%;max-width:300px;height:2.2em;max-height:54px;padding:0;background-color:unset}.audio-player{width:100%;height:100%}.audio-player-safari{height:fit-content;width:40px}.audio-player-safari-left{float:left}.audio-player-safari-right{float:right}.any-file-message-bubble{padding:1px}.any-file-message-contents{display:flex}.any-file-message-icon-container{width:1.3em;min-width:1.3em;position:relative;border-radius:4px;margin-left:6px;margin-right:2px}.any-file-message-icon{background-color:#fff;border-radius:4px;position:absolute;width:1em;height:1.25em;padding:1px;margin-top:auto;margin-bottom:auto;top:0;bottom:0}.any-file-message-text{padding-top:5px;overflow-wrap:anywhere;padding-bottom:5px;padding-right:7px}.message-bubble>a{color:inherit}.left-item-position{margin-right:10px}.right-item-position{margin-left:10px}.deep-chat-web-model-button{margin-top:10px;margin-bottom:5px;margin-left:1px}.avatar{padding-top:5px;width:1.5em;height:1.5em;border-radius:1px}.avatar-container{margin-top:9px}.name{margin-top:16px;font-size:15px}#drag-and-drop{position:absolute;display:none;z-index:10;height:calc(100% - 10px);width:calc(100% - 10px);background-color:#70c6ff4d;border:5px dashed #6dafff}#file-attachment-container{position:absolute;height:3.6em;width:calc(80% - 4px);top:-2.5em;border-radius:5px;overflow:auto;text-align:left;background-color:#d7d7d73b;padding-left:4px}.file-attachment{width:2.85em;height:2.85em;display:inline-flex;margin-right:.6em;margin-bottom:.44em;margin-top:4px;position:relative;background-color:#fff;border-radius:5px}.image-attachment{width:100%;height:100%;object-fit:cover;border-radius:5px}.border-bound-attachment{width:calc(100% - 2px);height:calc(100% - 2px);border:1px solid #c3c3c3;border-radius:5px;overflow:hidden}.border-bound-attachment-safari{width:calc(100% - 1px);height:calc(100% - 1px)}.audio-attachment-icon-container{cursor:pointer}.audio-attachment-icon-container:hover{background-color:#f8f8f8}.attachment-icon{left:0;right:0;bottom:0;top:2px;margin:auto;position:absolute;width:25px;-webkit-user-select:none;user-select:none}.not-removable-attachment-icon{top:0;right:0;bottom:0;left:0}.play-icon{filter:brightness(0) saturate(100%) invert(17%) sepia(0%) saturate(1392%) hue-rotate(67deg) brightness(98%) contrast(97%)}.stop-icon{filter:brightness(0) saturate(100%) invert(29%) sepia(90%) saturate(1228%) hue-rotate(198deg) brightness(93%) contrast(98%)}.audio-placeholder-text-3-digits{padding-left:.26rem}.audio-placeholder-text-4-digits{padding-left:.1rem}.any-file-attachment{padding:2px 0}.file-attachment-text-container{position:absolute;width:inherit;display:flex;align-items:center;height:100%;top:-1px}.audio-placeholder-text-3-digits-container{padding-top:1px;cursor:default}.any-file-attachment-text{text-overflow:ellipsis;white-space:nowrap;overflow:hidden;padding-left:.13em;margin-left:auto;margin-right:auto}.remove-file-attachment-button{height:1.25em;width:1.25em;border:1px solid #cfcfcf;border-radius:25px;background-color:#fff;top:-4px;right:-5px;position:absolute;display:flex;justify-content:center;cursor:pointer;-webkit-user-select:none;user-select:none}.remove-file-attachment-button:hover{background-color:#e4e4e4}.remove-file-attachment-button:active{background-color:#d7d7d7}.x-icon{color:#4e4e4e;top:-.075em;position:relative;font-size:1.05em}.modal{display:none;flex-direction:column;align-items:center;justify-content:center;position:absolute;width:80%;max-width:420px;max-height:80%;margin:auto;top:0;right:0;bottom:0;left:0;z-index:2}.modal-content{border-top:1px solid rgb(217,217,217);border-left:1px solid rgb(217,217,217);border-right:1px solid rgb(217,217,217);border-top-left-radius:inherit;border-top-right-radius:inherit;background-color:#fff;overflow-y:auto;height:fit-content;max-height:calc(100% - 3.3em);width:100%}.modal-content>p{margin-left:1em;margin-right:1em}.modal-content>ul{margin-right:1em}.modal-button-panel{height:3.3em;border:1px solid;border-color:rgb(223,223,223) rgb(217,217,217) rgb(217,217,217);border-bottom-left-radius:inherit;border-bottom-right-radius:inherit;background-color:#fff;text-align:center;justify-content:center;display:flex;width:100%}.modal-button{min-width:2.5em;text-align:center;color:#fff;border-radius:5px;padding:.4em .4em .3em;height:1.25em;background-color:#3279b2;top:0;bottom:0;cursor:pointer;-webkit-user-select:none;user-select:none;margin:auto .31em}.modal-button:hover{background-color:#276da7}.modal-button:active{background-color:#1b5687}.modal-svg-button{padding:0 0 2px;width:2em;height:1.8em}.modal-svg-button-icon{width:100%;height:100%;filter:brightness(0) saturate(100%) invert(100%) sepia(15%) saturate(4%) hue-rotate(346deg) brightness(101%) contrast(102%)}#modal-background-panel{position:absolute;width:100%;height:100%;background-color:#00000042;z-index:1;display:none}.show-modal-background{animation:fadeInBackground .3s ease-in-out}@keyframes fadeInBackground{0%{opacity:0}to{opacity:1}}.show-modal{animation:fadeInModal .3s ease-in-out}@keyframes fadeInModal{0%{opacity:0;scale:.95}to{opacity:1;scale:1}}.hide-modal-background{animation:fadeOutBackground .2s ease-in-out}@keyframes fadeOutBackground{0%{opacity:1}to{opacity:0}}.hide-modal{animation:fadeOutModal .2s ease-in-out}@keyframes fadeOutModal{0%{opacity:1;scale:1}to{opacity:0;scale:.95}}.modal-camera-content{overflow:hidden;text-align:center;border:unset;height:100%;background-color:#2a2a2a;display:flex;justify-content:center}.camera-modal-canvas{max-width:100%;max-height:100%;margin-top:auto;margin-bottom:auto}.modal-svg-submit-button{background-color:green}.modal-svg-submit-button:hover{background-color:#007500}.modal-svg-submit-button:active{background-color:#006500}.modal-svg-submit-disabled{pointer-events:none;background-color:#747474}.modal-svg-close-button{height:1.56em;padding-top:.37em;padding-bottom:0;background-color:#c13e3e}.modal-svg-close-button:hover{background-color:#b43434}.modal-svg-close-button:active{background-color:#972929}.modal-svg-close-icon{width:80%;height:80%}.modal-svg-camera-button{height:1.6em;padding-top:.38em;padding-bottom:0}.modal-svg-camera-icon{height:76%}.modal-svg-refresh-icon{height:105%}.modal-svg-refresh-button{height:1.66em;padding-top:.11em;padding-bottom:.21em}.input-button-container{position:relative;z-index:1}.inside-right{position:absolute;right:calc(10% + .35em);bottom:.85em}.inside-left{position:absolute;left:calc(10% + .35em);bottom:.85em}.outside-left{position:absolute;right:calc(11px - .55em);bottom:.88em}.outside-right{position:absolute;left:calc(11px - .55em);bottom:.88em}#upload-images-icon{position:absolute;pointer-events:none;width:1.45em;height:1.45em;left:.11em;bottom:.08em;filter:brightness(0) saturate(100%) invert(43%) sepia(0%) saturate(740%) hue-rotate(77deg) brightness(99%) contrast(92%)}#upload-gifs-icon{position:absolute;pointer-events:none;width:1.5em;height:1.48em;left:.07em;bottom:.08em;filter:brightness(0) saturate(100%) invert(49%) sepia(0%) saturate(2586%) hue-rotate(12deg) brightness(93%) contrast(90%)}#upload-audio-icon{position:absolute;pointer-events:none;width:1.21em;height:1.21em;left:.17em;bottom:.2em;filter:brightness(0) saturate(100%) invert(15%) sepia(0%) saturate(337%) hue-rotate(125deg) brightness(91%) contrast(94%);transform:scaleX(.95)}#camera-icon{position:absolute;pointer-events:none;width:1.21em;height:1.21em;left:.23em;bottom:.2em;filter:brightness(0) saturate(100%) invert(52%) sepia(0%) saturate(161%) hue-rotate(164deg) brightness(91%) contrast(92%);transform:scaleX(.95)}#upload-mixed-files-icon{position:absolute;pointer-events:none;width:1.21em;height:1.21em;left:.25em;bottom:.2em;filter:brightness(0) saturate(100%) invert(53%) sepia(0%) saturate(36%) hue-rotate(74deg) brightness(98%) contrast(93%);transform:scaleX(.95)}#interim-text{color:gray}#microphone-button{padding-top:.5px}.outer-button-container>#microphone-button{padding-bottom:1px}#microphone-icon{position:absolute;pointer-events:none;width:1.21em;height:1.21em;left:.25em;bottom:.25em}.default-microphone-icon{filter:brightness(0) saturate(100%) invert(32%) sepia(0%) saturate(924%) hue-rotate(46deg) brightness(95%) contrast(99%)}.active-microphone-icon{filter:brightness(0) saturate(100%) invert(10%) sepia(97%) saturate(7495%) hue-rotate(0deg) brightness(101%) contrast(107%);border-radius:10px}.command-microphone-icon{filter:brightness(0) saturate(100%) invert(42%) sepia(96%) saturate(1067%) hue-rotate(77deg) brightness(99%) contrast(102%)}.unsupported-microphone{display:none}#submit-icon{height:100%;filter:brightness(0) saturate(100%) invert(32%) sepia(0%) saturate(924%) hue-rotate(46deg) brightness(95%) contrast(99%);width:1.21em}#stop-icon{background-color:#acacac;position:absolute;width:.95em;height:.95em;left:.35em;bottom:.35em;border-radius:2px}.submit-button-enlarged{scale:1.1;margin-right:.3em;margin-left:.3em}.dots-jumping{position:relative;left:calc(-9990px + .275em);width:.22em;height:.22em;border-radius:5px;background-color:#848484;color:#848484;box-shadow:9990px 0 #848484,calc(9990px + .44em) 0 0 0 #848484,calc(9990px + .8em) 0 0 0 #848484;animation:dots-jumping 1.5s infinite linear;bottom:-.7em}@keyframes dots-jumping{0%{box-shadow:9990px 0 #848484,calc(9990px + .44em) 0 0 0 #848484,calc(9990px + .8em) 0 0 0 #848484}16.667%{box-shadow:9990px -6px #848484,calc(9990px + .44em) 0 0 0 #848484,calc(9990px + .8em) 0 0 0 #848484}33.333%{box-shadow:9990px 0 #848484,calc(9990px + .44em) 0 0 0 #848484,calc(9990px + .8em) 0 0 0 #848484}50%{box-shadow:9990px 0 #848484,calc(9990px + .44em) -6px 0 0 #848484,calc(9990px + .8em) 0 0 0 #848484}66.667%{box-shadow:9990px 0 #848484,calc(9990px + .44em) 0 0 0 #848484,calc(9990px + .8em) 0 0 0 #848484}83.333%{box-shadow:9990px 0 #848484,calc(9990px + .44em) 0 0 0 #848484,calc(9990px + .8em) -6px 0 0 #848484}to{box-shadow:9990px 0 #848484,calc(9990px + .44em) 0 0 0 #848484,calc(9990px + .8em) 0 0 0 #848484}}.dots-flashing{position:relative;width:.45em;height:.45em;border-radius:5px;background-color:var(--message-dots-color);color:var(--message-dots-color);animation:dots-flashing 1s infinite linear alternate;animation-delay:.5s}.dots-flashing:before,.dots-flashing:after{content:"";display:inline-block;position:absolute;top:0}.dots-flashing:before{left:-.7em;width:.45em;height:.45em;border-radius:5px;background-color:var(--message-dots-color);color:var(--message-dots-color);animation:dots-flashing 1s infinite alternate;animation-delay:0s}.dots-flashing:after{left:.7em;width:.45em;height:.45em;border-radius:5px;background-color:var(--message-dots-color);color:var(--message-dots-color);animation:dots-flashing 1s infinite alternate;animation-delay:1s}@keyframes dots-flashing{0%{background-color:var(--message-dots-color)}50%,to{background-color:var(--message-dots-color-fade)}}.input-button{border-radius:4px;cursor:pointer;margin-bottom:.2em;-webkit-user-select:none;user-select:none}.input-button-svg{width:1.65em;height:1.65em}.input-button:hover{background-color:#9c9c9c2e}.input-button:active{background-color:#9c9c9c5e}.loading-button{cursor:auto}.loading-button:hover{background-color:unset}.text-button{filter:unset!important;display:flex;justify-content:center;align-items:center;margin-left:4px;margin-right:4px;height:1.6em}#text-input-container{background-color:#fff;width:80%;display:flex;border:1px solid #0000001a;border-radius:5px;margin-top:.8em;margin-bottom:.8em;box-shadow:#959da533 0 1px 12px;overflow-y:auto;max-height:200px;position:relative}.text-input-container-left-adjustment{margin-left:1.5em}.text-input-container-right-adjustment{margin-right:1.5em}.text-input-container-left-small-adjustment{margin-left:1.1em}.text-input-container-left-small-adjustment>.outside-left{right:calc(14px - .55em)}.text-input-container-right-small-adjustment{margin-right:1.1em}.text-input-container-right-small-adjustment>.outside-right{left:calc(14px - .55em)}#text-input{text-align:left;outline:none;word-wrap:break-word;line-break:auto}.text-input-styling{padding:.4em .5em;overflow:overlay;width:100%}.text-input-inner-left-adjustment{padding-left:2.2em}.text-input-inner-right-adjustment{padding-right:2em}.text-input-disabled{pointer-events:none;-webkit-user-select:none;user-select:none}.text-input-placeholder{color:gray}.outside-right>#dropup-menu,.inside-right>#dropup-menu{right:0}#dropup-icon{position:absolute;pointer-events:none;width:1.16em;height:1.2em;left:.265em;bottom:.43em;filter:brightness(0) saturate(100%) invert(54%) sepia(0%) saturate(724%) hue-rotate(6deg) brightness(92%) contrast(90%)}#dropup-menu{background-color:#fff;position:absolute;transform:translateY(-100%);border-radius:5px;z-index:1;top:-.49em;box-shadow:#0003 -1px 2px 10px,#0000001a 0 2px 4px;cursor:pointer;-webkit-user-select:none;user-select:none}.dropup-menu-item{height:1.4em;padding:.28em .84em .28em .35em;display:flex;position:relative}.dropup-menu-item:first-child{padding-top:.49em;border-top-left-radius:inherit;border-top-right-radius:inherit}.dropup-menu-item:last-child{padding-bottom:.45em;border-bottom-left-radius:inherit;border-bottom-right-radius:inherit}.dropup-menu-item-icon{width:1.39em;position:relative;margin-right:.56em}.dropup-menu-item-icon>svg{bottom:0!important;top:0!important;margin-bottom:auto;margin-top:auto}.dropup-menu-item-text{margin-top:.08em;width:max-content}#input{width:100%;display:inline-flex;text-align:center;margin-left:auto;margin-right:auto;margin-top:auto;position:relative;justify-content:center}#chat-view{height:100%;display:grid;grid-template-columns:100%}::-webkit-scrollbar{width:9px;height:9px}::-webkit-scrollbar-thumb{background-color:#d0d0d0;border-radius:5px}::-webkit-scrollbar-track{background-color:#f2f2f2}:host{all:initial;display:table-cell}#container{height:inherit;width:inherit;overflow:hidden}\n',e.shadowRoot),setTimeout((function(){e._hasBeenRendered||e.onRender()}),20),e}return x(t,e),R(t,[{key:"changeToChatView",value:function(){this._activeService&&(this._activeService.validateConfigKey=!1),this.onRender()}},{key:"onRender",value:function(){var e;(!this._activeService||this._activeService.demo)&&(this._activeService=_r.create(this)),this.auxiliaryStyle&&!this._auxiliaryStyleApplied&&(F.apply(this.auxiliaryStyle,this.shadowRoot),this._auxiliaryStyleApplied=!0),F.applyDefaultStyleToComponent(this.style,this.chatStyle),ne.checkForContainerStyles(this,this._elementRef),this._activeService.key&&this._activeService.validateConfigKey?j.render(this._elementRef,this.changeToChatView.bind(this),this._activeService):this._activeService instanceof mn&&!this._activeService.key?this._activeService instanceof mn&&xn.render(this._elementRef,this.changeToChatView.bind(this),this._activeService):(null!==(e=this._childElement)&&void 0!==e||(this._childElement=this.children[0]),js.render(this,this._elementRef,this._activeService,this._childElement)),this._hasBeenRendered=!0,Ht.onRender(this)}},{key:"disconnectedCallback",value:function(){Mn.chat=void 0}}]),t}(yn);Fs([Er("object")],qs.prototype,"directConnection",2),Fs([Er("object")],qs.prototype,"request",2),Fs([Er("object")],qs.prototype,"webModel",2),Fs([Er("object")],qs.prototype,"stream",2),Fs([Er("object")],qs.prototype,"requestBodyLimits",2),Fs([Er("function")],qs.prototype,"requestInterceptor",2),Fs([Er("function")],qs.prototype,"responseInterceptor",2),Fs([Er("function")],qs.prototype,"validateInput",2),Fs([Er("object")],qs.prototype,"chatStyle",2),Fs([Er("object")],qs.prototype,"attachmentContainerStyle",2),Fs([Er("object")],qs.prototype,"dropupStyles",2),Fs([Er("object")],qs.prototype,"inputAreaStyle",2),Fs([Er("object")],qs.prototype,"textInput",2),Fs([Er("object")],qs.prototype,"submitButtonStyles",2),Fs([Er("string")],qs.prototype,"auxiliaryStyle",2),Fs([Er("array")],qs.prototype,"initialMessages",2),Fs([Er("object")],qs.prototype,"introMessage",2),Fs([Er("object")],qs.prototype,"avatars",2),Fs([Er("object")],qs.prototype,"names",2),Fs([Er("boolean")],qs.prototype,"displayLoadingBubble",2),Fs([Er("object")],qs.prototype,"errorMessages",2),Fs([Er("object")],qs.prototype,"messageStyles",2),Fs([Er("object")],qs.prototype,"textToSpeech",2),Fs([Er("object")],qs.prototype,"speechToText",2),Fs([Er("object")],qs.prototype,"images",2),Fs([Er("object")],qs.prototype,"gifs",2),Fs([Er("object")],qs.prototype,"camera",2),Fs([Er("object")],qs.prototype,"audio",2),Fs([Er("object")],qs.prototype,"microphone",2),Fs([Er("object")],qs.prototype,"mixedFiles",2),Fs([Er("object")],qs.prototype,"dragAndDrop",2),Fs([Er("object")],qs.prototype,"introPanelStyle",2),Fs([Er("object")],qs.prototype,"htmlClassUtilities",2),Fs([Er("function")],qs.prototype,"onNewMessage",2),Fs([Er("function")],qs.prototype,"onClearMessages",2),Fs([Er("function")],qs.prototype,"onComponentRender",2),Fs([Er("function")],qs.prototype,"onError",2),Fs([Er("object")],qs.prototype,"demo",2),Fs([Er("object")],qs.prototype,"_insertKeyViewStyles",2),customElements.define("deep-chat",qs);const Us=new Set(["children","localName","ref","style","className"]),zs=new WeakMap,Hs=(e,t,n,r,i)=>{const s=null==i?void 0:i[t];void 0===s||n===r?null==n&&t in HTMLElement.prototype?e.removeAttribute(t):e[t]=n:((e,t,n)=>{let r=zs.get(e);void 0===r&&zs.set(e,r=new Map);let i=r.get(t);void 0!==n?void 0===i?(r.set(t,i={handleEvent:n}),e.addEventListener(t,i)):i.handleEvent=n:void 0!==i&&(r.delete(t),e.removeEventListener(t,i))})(e,s,n)};!function(e=window.React,t,n,r,i){let s,a,o;if(void 0===t){const t=e;({tagName:a,elementClass:o,events:r,displayName:i}=t),s=t.react}else s=e,o=n,a=t;const l=s.Component,u=s.createElement,c=new Set(Object.keys(null!=r?r:{}));class d extends l{constructor(){super(...arguments),this.o=null}t(e){if(null!==this.o)for(const t in this.i)Hs(this.o,t,this.props[t],e?e[t]:void 0,r)}componentDidMount(){var e;this.t(),null===(e=this.o)||void 0===e||e.removeAttribute("defer-hydration")}componentDidUpdate(e){this.t(e)}render(){const{_$Gl:e,...t}=this.props;this.h!==e&&(this.u=t=>{null!==e&&((e,t)=>{"function"==typeof e?e(t):e.current=t})(e,t),this.o=t,this.h=e}),this.i={};const n={ref:this.u};for(const[e,r]of Object.entries(t))Us.has(e)?n["className"===e?"class":e]=r:c.has(e)||e in o.prototype?this.i[e]=r:n[e]=r;return n.suppressHydrationWarning=!0,u(a,n)}}d.displayName=null!=i?i:o.name;const p=s.forwardRef(((e,t)=>u(d,{...e,_$Gl:t},null==e?void 0:e.children)));p.displayName=d.displayName}({tagName:"deep-chat",elementClass:qs,react:u,events:{onactivate:"activate",onchange:"change"}});const Vs=function(e){var t={request:{url:e.backendUrl,method:"POST",headers:{"Content-Type":"application/json"},body:function(e){return JSON.stringify({message:e})}},style:{width:"300px",height:"400px",borderRadius:"8px",boxShadow:"0 2px 4px rgba(0, 0, 0, 0.1)"}};return c().createElement(o.default,{config:t})};return window.renderChatWidget=function(e,t){var n=document.getElementById(e).attachShadow({mode:"open"}),r=document.createElement("div");n.appendChild(r),p().render(c().createElement(Vs,{backendUrl:t}),r);var i=document.createElement("style");i.textContent="\n div {\n width: 100%;\n height: 100%;\n }\n deep-chat{\n width: 100%;\n height: 100%;\n }\n ",n.appendChild(i)},{}})()));