!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.Chathive=t():e.Chathive=t()}(self,(()=>(()=>{"use strict";var e={245:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.createIframe=function(e){var t=e.src,r=e.id,n=e.title,i=e.hidden,a=e.selector,s=void 0===a?"body":a,c=e.style,d=void 0===c?o.defaultFrameStyle:c,l=document.createElement("iframe");l.id=r,l.src=t,l.title=n,l.allowFullscreen=!0,Object.keys(d).forEach((function(e){return l.style.setProperty(e,"".concat(d[e]))})),i&&(l.style.display="none");l.style.zIndex&&l.style.setProperty("z-index",o.defaultFrameStyle.zIndex);var u=document.querySelector(s)||document.getElementsByTagName("html")[0];return u?(u.appendChild(l),l):l},t.destroyFrames=function(e){var t=e.frame,r=e.selector,n=document.getElementsByTagName("body")[0]||document.getElementsByTagName("html")[0];r&&(n=document.querySelector(r)||n);if(!n)return;if(!n.contains(t))return;try{n.removeChild(t)}catch(e){}},t.setFrameVisibility=function(e){var t=e.frame,r=e.isVisible;t.style.setProperty("visibility",r?"visible":"hidden")},t.resizeFrame=function(e){var t=e.frame,r=e.config,o=r.width,i=r.height,a=n.__rest(r,["width","height"]);t.style.setProperty("width",o),t.style.setProperty("height",i),a.zIndex&&t.style.setProperty("z-index",a.zIndex);a.minHeight&&t.style.setProperty("min-Height",a.minHeight);a&&Object.keys(a).forEach((function(e){return t.style.setProperty(e,a[e])}))},t.waitUntilDocumentIsReady=function(){return new Promise((function(e){if("complete"!==document.readyState&&"loading"===document.readyState)return window.addEventListener?(window.addEventListener("DOMContentLoaded",(function(){return e()})),void window.addEventListener("onreadystatechange",(function(){"loading"!==document.readyState&&e()}))):void 0;e()}))};var n=r(959),o=r(402)},330:e=>{e.exports=JSON.parse('{"name":"widget_sdk","version":"2.0.1","description":"chathive_sdk","private":true,"scripts":{"start":"webpack-dev-server --open --config ./webpack.development.ts","build":"rm -r ./dist & webpack --config ./webpack.production.ts","start:build":"http-server ./dist -p 9091","start:test":"cp ./dist/index.js ./test & http-server ./test -p 4300"},"keywords":[],"author":"Vandeplassche Thuur","license":"ISC","browserslist":[">0.2%","not dead","not ie <= 11","not op_mini all"],"devDependencies":{"@babel/core":"^7.22.1","@chathive/sdk_types":"workspace:^","@typescript-eslint/parser":"^8.3.0","babel-loader":"^8.3.0","babel-polyfill":"^6.26.0","http-server":"^14.1.1","ts-loader":"^9.4.3","tslint":"^6.1.3","typescript":"^5.8.3"},"dependencies":{"@types/html-webpack-plugin":"^3.2.6","@types/webpack":"^5.28.1","clean-webpack-plugin":"^4.0.0","dotenv":"^16.1.3","html-webpack-plugin":"^5.5.1","path":"^0.12.7","terser-webpack-plugin":"^5.3.9","ts-node":"^10.9.1","tslib":"^2.5.2","webpack-merge":"^5.9.0","webpack":"^5.85.0","webpack-cli":"^4.10.0","webpack-dev-server":"^4.15.0"}}')},402:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.frameConfig=t.defaultFrameStyle=void 0;var n=r(959),o={title:"Chathive widget",src:"https://widget.chathive.app"};t.defaultFrameStyle={title:"chat",zIndex:"2147483647","z-index":"2147483647",position:"fixed",bottom:"0",right:"0",left:"auto",top:"auto",height:"0",width:"0",border:"none",display:"none"},t.frameConfig={default:n.__assign(n.__assign({id:"ch_widget"},o),{style:{"z-index":"2147483647",position:"fixed",bottom:"0",right:"0",left:"auto",top:"auto",height:"90px",minHeight:"90px",width:"100px",border:"none",display:"block",overflow:"hidden","border-radius":"50%"}}),widget:n.__assign(n.__assign({id:"ch_widget"},o),{style:{"z-index":"2147483647",position:"fixed",bottom:"0",right:"0",left:"auto",top:"auto",height:"90px",minHeight:"90px",width:"100px",border:"none",display:"block",overflow:"hidden","border-radius":"50%"}}),embed:n.__assign(n.__assign({id:"ch_embed_widget"},o),{style:{height:"100%",width:"100%",border:"none",display:"block",overflow:"hidden"}}),aiForm:{id:"ch_embed_widget",src:"https://ai-form-client.chathive.app",style:{height:"100%",width:"100%",border:"none",display:"block",overflow:"hidden",backgroundColor:"transparent"}}},t.default={}},456:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.sendMessageToFrame=o,t.broadcastMessage=function(e){var t=e.frames,r=n.__rest(e,["frames"]);Object.values(t).forEach((function(e){return o(n.__assign(n.__assign({},r),{frame:e}))}))},t.executeSubscriptions=function(e){var t=e.events,r=e.subscriptions,n=e.payload;r.forEach((function(e){t.includes(e.event)&&e.callback(n)}))};var n=r(959);function o(e){var t,r=e.payload,n=e.type,o=e.frameId;null===(t=e.frame.contentWindow)||void 0===t||t.postMessage({type:n,payload:r,frameId:o},"*")}},498:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.widget=void 0;var n=r(959),o=n.__importDefault(r(330)),i=r(402),a=r(961),s=r(972);t.widget=function(){var e,r,c=!1,d=!1,l=!1,u="",f={},p="en",h=!1,m={},g=[],y={};function v(){Object.values(m).forEach((function(e){return e.style.setProperty("display","block")})),c=!1}function _(){Object.values(m).forEach((function(e){return e.style.setProperty("display","none")})),c=!0}function b(e){return n.__awaiter(this,arguments,void 0,(function(e){var r,o,i,a,c,l,u=e.apiKey,f=e.language,m=e.customerData;return n.__generator(this,(function(e){switch(e.label){case 0:if(d)return console.error("SDK is already initialized"),[2,!1];if(d=!0,f&&2!==f.length)return console.error("Language is invalid. Must be ISO 639-1"),[2,!1];e.label=1;case 1:return e.trys.push([1,6,,7]),[4,fetch("".concat("https://api.chathive.app","/sdk/v1/widget/init"),{headers:{"x-api-key":u}})];case 2:return 403!==(r=e.sent()).status?[3,4]:[4,r.json()];case 3:throw o=e.sent(),new Error(null==o?void 0:o.message);case 4:if(200!==r.status)throw new Error("API key is not valid, Could not init widget sdk");return[4,r.json()];case 5:if(!(i=e.sent()))throw new Error("Widget not defined");return(null===(l=null==i?void 0:i.advanced)||void 0===l?void 0:l.isHidden)?[2]:(t.widget.config=i,y=m,p=f||i.defaultLanguage,h=i.permissions.isUploadEnabled,[3,7]);case 6:return a=e.sent(),c=a,d=!1,console.error(c.message),[2,!1];case 7:return[4,(0,s.waitUntilDocumentIsReady)()];case 8:return e.sent(),[2,!0]}}))}))}return{config:{},getVersion:function(){return o.default.version},init:function(r){return n.__awaiter(void 0,void 0,void 0,(function(){var o=r.apiKey,c=r.language,d=r.sessionId,h=r.open,y=void 0!==h&&h,v=r.hide,_=void 0!==v&&v,w=r.config,I=void 0===w?{}:w,F=r.customerData,S=r.theme,x=n.__rest(r,["apiKey","language","sessionId","open","hide","config","customerData","theme"]);return n.__generator(this,(function(r){switch(r.label){case 0:return[4,b({apiKey:o,language:c,customerData:F})];case 1:if(!r.sent())return[2];e=o,f=x.context||{},m.main=(0,s.createIframe)(n.__assign(n.__assign({},i.frameConfig.widget),{selector:"body",hidden:_})),(0,s.setFrameVisibility)({frame:m.main,isVisible:!1}),(0,a.addMessageListener)({frames:m,subscriptions:g}),r.label=2;case 2:return[4,(0,s.wait)(500)];case 3:r.sent(),(0,s.broadcastMessage)({frames:m,frameId:e,type:"widget.init",payload:{settings:t.widget.config,size:(0,s.formatWindowSize)(),context:x.context,language:p,type:"widget",customerData:F,sessionId:d,config:I,apiKey:o,theme:S,open:y}}),r.label=4;case 4:if(!l)return[3,2];r.label=5;case 5:return window.addEventListener("beforeunload",(function(){return(0,s.broadcastMessage)({frames:m,frameId:e,type:"widget.closed"})})),window.addEventListener("resize",(function(){(0,s.broadcastMessage)({frames:m,frameId:e,type:"parent.resized",payload:{size:(0,s.formatWindowSize)()}})})),[4,(0,s.wait)(600)];case 6:return r.sent(),setInterval((function(){if(window.location.href!==u){var t={location:(0,s.formatLocation)()};u=window.location.href,(0,s.broadcastMessage)({frames:m,frameId:e,type:"url.changed",payload:t})}}),1e3),[2]}}))}))},embed:function(o){return n.__awaiter(void 0,[o],void 0,(function(o){var c=o.apiKey,d=o.selector,u=o.sessionId,f=o.language,h=o.theme,y=o.customerData,v=o.context;return n.__generator(this,(function(o){switch(o.label){case 0:return d?document.querySelector(d)?[4,b({apiKey:c,language:f,customerData:y})]:[2,console.error("Selector is not found in your DOM")]:[2,console.error("Selector is required")];case 1:if(!o.sent())return[2];r=d,m.main=(0,s.createIframe)(n.__assign(n.__assign({},i.frameConfig.embed),{selector:d})),(0,a.addEmbedMessageListener)({frames:m,subscriptions:g}),(0,s.setFrameVisibility)({frame:m.main,isVisible:!1}),o.label=2;case 2:return[4,(0,s.wait)(500)];case 3:o.sent(),(0,s.broadcastMessage)({frames:m,frameId:e,type:"widget.init",payload:{settings:t.widget.config,size:(0,s.formatWindowSize)(),language:p,type:"embed",customerData:y,open:!0,sessionId:u,context:v,apiKey:c,theme:h}}),o.label=4;case 4:if(!l)return[3,2];o.label=5;case 5:return window.addEventListener("beforeunload",(function(){return(0,s.broadcastMessage)({frames:m,frameId:e,type:"widget.closed"})})),[2]}}))}))},open:function(t){var r=(void 0===t?{show:!0}:t).show;m.main&&(r&&v(),(0,s.sendMessageToFrame)({type:"widget.opened",frameId:e,frame:m.main}))},close:function(t){var r=(void 0===t?{hide:!1}:t).hide;m.main&&(r&&_(),(0,s.sendMessageToFrame)({type:"widget.closed",frameId:e,frame:m.main}))},hide:_,show:v,destroy:function(){Object.values(m).forEach((function(e){return(0,s.destroyFrames)({frame:e,selector:r})})),g=[],l=!1,d=!1,m={}},sendMessage:function(t){m.main&&(0,s.sendMessageToFrame)({frameId:e,frame:m.main,type:"message.outbound",payload:{trigger:t}})},getCurrentLanguage:function(){return p},setLanguage:function(t){m.main&&(2===(null==t?void 0:t.length)?(p=t,(0,s.sendMessageToFrame)({frameId:e,frame:m.main,payload:{language:t},type:"language.changed"})):console.error("Language is invalid. Must be ISO 639-1"))},initWidget:function(){l=!0},isWidgetLoaded:function(){return l},isHidden:function(){return c},on:function(e,t){var r=Date.now().toString(16);return g.push({id:r,event:e,callback:t}),r},off:function(e){var t=g.findIndex((function(t){return t.id===e}));return g.splice(t,1),!0},disableNotifications:function(){m.main&&(0,s.sendMessageToFrame)({frameId:e,frame:m.main,type:"widget.config.patch",payload:{notificationsEnabled:!1}})},enableNotifications:function(){m.main&&(0,s.sendMessageToFrame)({frameId:e,frame:m.main,type:"widget.config.patch",payload:{notificationsEnabled:!0}})},getContext:function(){return f},setContextField:function(t){var r,n=t.key,o=t.value;f[n]=o,m.main&&(0,s.sendMessageToFrame)({frameId:e,frame:m.main,type:"context.patch",payload:(r={},r[n]=o,r)})},updateContextField:function(t){var r,n=t.key,o=t.value;f[n]=o,m.main&&(0,s.sendMessageToFrame)({frameId:e,frame:m.main,type:"context.patch",payload:(r={},r[n]=o,r)})},getIsFileUploadAllowed:function(){return h},setIsFileUploadAllowed:function(r){var n,o=t.widget.config;(null===(n=null==o?void 0:o.permissions)||void 0===n?void 0:n.isUploadEnabled)||!r?m.main&&(h=r,(0,s.sendMessageToFrame)({frameId:e,frame:m.main,type:"file_upload.enabled.changed",payload:{enabled:r}})):console.error("File upload not enabled this project")},getCustomerData:function(){return y},getCustomer:function(){return y},updateCustomerData:function(t){y=t,m.main&&(0,s.sendMessageToFrame)({frameId:e,frame:m.main,type:"customer_data.changed",payload:{customerData:t}})},setCustomer:function(t){y=t,m.main&&(0,s.sendMessageToFrame)({frameId:e,frame:m.main,type:"customer_data.changed",payload:{customerData:t}})}}}()},518:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.AIForm=void 0;var n=r(959),o=n.__importDefault(r(330)),i=r(402),a=r(631),s=r(972),c="chathive_session_id",d=function(){function e(e){var t=e.apiKey,r=e.language,n=e.customerData,o=e.context,i=e.colorScheme,a=e.text,s=e.theme;if(this.isFileUploadAllowed=!1,this.loaded=!1,this.initialized=!1,this.subscriptions=[],this.retries=0,this.context={},this.colorScheme="light",this.initialized)throw new Error("AIForm is already initialized");this.apiKey=t,this.customerData=n,this.frameId=Date.now().toString(16),this.sessionId=this.initSessionId(),a&&this.setText(a),o&&(this.context=o),s&&this.setInitialTheme(s),i&&this.setColorScheme(i),r&&2===r.length&&(this.language=r)}return e.prototype.embed=function(e){return n.__awaiter(this,arguments,void 0,(function(e){var t=this,r=e.selector;return n.__generator(this,(function(e){switch(e.label){case 0:if(!r)throw new Error("Selector is required");if(!document.querySelector(r))throw new Error("Selector is not found in your DOM");return this.loaded?[2,console.error("Has already been embedded")]:(this.selector=r,[4,this.getConfig()]);case 1:return e.sent(),this.config?this.config.advanced.isHidden?(console.warn("AI form has been hidden, re-enable it in your dashboard"),[2]):[4,(0,s.waitUntilDocumentIsReady)()]:[2];case 2:e.sent(),this.frame=(0,s.createIframe)(n.__assign(n.__assign({},i.frameConfig.aiForm),{id:this.frameId,selector:r})),(0,s.setFrameVisibility)({frame:this.frame,isVisible:!1}),this.initialized=!0,this.addMessageListener(),e.label=3;case 3:return this.retries+=1,(0,s.sendMessageToFrame)({type:"init",frame:this.frame,frameId:this.frameId,payload:{type:"embed",text:this.text,config:this.config,apiKey:this.apiKey,context:this.context,language:this.language,sessionId:this.sessionId,theme:this.getTheme(),size:(0,s.formatWindowSize)(),customerData:this.customerData,colorScheme:this.getColorScheme()}}),[4,(0,s.wait)(250*this.retries)];case 4:e.sent(),e.label=5;case 5:if(!this.loaded&&this.retries<15)return[3,3];e.label=6;case 6:return this.retries>=15?(console.error("ERROR_TIME_OUT Could not embed ai form"),[2]):(window.addEventListener("beforeunload",(function(){t.frame&&(t.unload(),(0,s.sendMessageToFrame)({frameId:t.frameId,frame:t.frame,type:"parent.closed"}))})),window.addEventListener("resize",(function(){t.frame&&(0,s.sendMessageToFrame)({frame:t.frame,frameId:t.frameId,type:"parent.resized",payload:{size:(0,s.formatWindowSize)()}})})),[2])}}))}))},e.prototype.getConfig=function(){return n.__awaiter(this,void 0,void 0,(function(){var e,t,r,o,i;return n.__generator(this,(function(n){switch(n.label){case 0:return n.trys.push([0,5,,6]),[4,fetch("".concat("https://api.chathive.app","/sdk/v1/ai-form/get-config"),{headers:{"x-api-key":this.apiKey}})];case 1:return 403!==(e=n.sent()).status?[3,3]:[4,e.json()];case 2:throw t=n.sent(),new Error(null==t?void 0:t.message);case 3:if(200!==e.status)throw new Error("API key is not valid, Could not init AI form");return[4,e.json()];case 4:if(!(r=n.sent()))throw new Error("Could not init AI form");return this.setConfigTheme(r),this.setConfigLanguage(r),this.config=r,this.isFileUploadAllowed=r.permissions.isUploadEnabled,[3,6];case 5:return o=n.sent(),i=o,this.initialized=!1,console.error(i.message),[2,!1];case 6:return[2,!0]}}))}))},e.prototype.addMessageListener=function(){var e=this;window.addEventListener("message",(function(t){var r=t.data,n=r.type,o=r.payload;if(e.frame&&e.frameId===t.data.frameId){switch(n){case"initialized":e.loaded=!0,(null==o?void 0:o.frameConfig)&&e.frame&&(0,s.resizeFrame)({frame:e.frame,config:o.frameConfig}),(0,s.setFrameVisibility)({frame:e.frame,isVisible:!0});break;case"parent.resize":(0,s.resizeFrame)({frame:e.frame,config:o})}(0,s.executeSubscriptions)({events:[n],subscriptions:e.subscriptions,payload:o})}}))},e.prototype.isLoaded=function(){return this.loaded},e.prototype.getVersion=function(){return o.default.version},e.prototype.getLanguage=function(){return this.language},e.prototype.setLanguage=function(e){var t,r;2===(null==e?void 0:e.length)?!this.config||(null===(r=null===(t=this.config)||void 0===t?void 0:t.languages)||void 0===r?void 0:r.includes(e))?(this.language=e,this.frame&&(0,s.sendMessageToFrame)({frameId:this.frameId,type:"language.changed",frame:this.frame,payload:{language:e}})):console.error("Language is not supported in your project."):console.error("Language is invalid. Must be ISO 639-1")},e.prototype.setConfigLanguage=function(e){this.language&&e.languages.includes(this.language)||(this.language=e.defaultLanguage)},e.prototype.getCustomer=function(){return this.customerData},e.prototype.setCustomer=function(e){this.customerData=e,this.frame&&(0,s.sendMessageToFrame)({frameId:this.frameId,frame:this.frame,type:"customer_data.changed",payload:{customerData:e}})},e.prototype.getContext=function(){return this.context},e.prototype.updateContextField=function(e){this.context=n.__assign(n.__assign({},this.context),e),this.frame&&(0,s.sendMessageToFrame)({frameId:this.frameId,type:"context.patch",frame:this.frame,payload:e})},e.prototype.getColorScheme=function(){var e;return this.colorScheme||(null===(e=this.config)||void 0===e?void 0:e.styling.colorScheme)},e.prototype.setColorScheme=function(e){this.getColorScheme()!==e&&(a.colorSchemes.includes(e)?(this.colorScheme=e,this.frame&&(0,s.sendMessageToFrame)({frameId:this.frameId,type:"theme.colorscheme.changed",frame:this.frame,payload:{colorScheme:e}})):console.error("Color scheme is invalid. Must be 'auto', 'light' or 'dark'"))},e.prototype.setIsFileUploadAllowed=function(e){var t,r;(null===(r=null===(t=this.config)||void 0===t?void 0:t.permissions)||void 0===r?void 0:r.isUploadEnabled)||!e?this.frame&&(this.isFileUploadAllowed=e,(0,s.sendMessageToFrame)({frame:this.frame,frameId:this.frameId,type:"file_upload.enabled.changed",payload:{enabled:e}})):console.error("File upload not enabled this project")},e.prototype.getTheme=function(){var e,t,r,n;if(this.theme)return this.theme;var o={accentColor:(null===(t=null===(e=this.config)||void 0===e?void 0:e.styling)||void 0===t?void 0:t.backgroundColor)||"#002140",accentFontColor:(null===(n=null===(r=this.config)||void 0===r?void 0:r.styling)||void 0===n?void 0:n.fontColor)||"#FFFFFF"};return{light:o,dark:o}},e.prototype.setTheme=function(e){var t,r,o,i,a,c,d,l,u,f,p={accentColor:(null===(r=null===(t=this.config)||void 0===t?void 0:t.styling)||void 0===r?void 0:r.backgroundColor)||"#002140",accentFontColor:(null===(i=null===(o=this.config)||void 0===o?void 0:o.styling)||void 0===i?void 0:i.fontColor)||"#FFFFFF"};this.theme={light:n.__assign(n.__assign(n.__assign({},(null===(a=this.theme)||void 0===a?void 0:a.light)||{}),(null==e?void 0:e.light)||{}),{accentColor:(null===(c=null==e?void 0:e.light)||void 0===c?void 0:c.accentColor)||p.accentColor,accentFontColor:(null===(d=null==e?void 0:e.light)||void 0===d?void 0:d.accentFontColor)||p.accentFontColor}),dark:n.__assign(n.__assign(n.__assign({},(null===(l=this.theme)||void 0===l?void 0:l.dark)||{}),(null==e?void 0:e.dark)||{}),{accentColor:(null===(u=null==e?void 0:e.dark)||void 0===u?void 0:u.accentColor)||p.accentColor,accentFontColor:(null===(f=null==e?void 0:e.dark)||void 0===f?void 0:f.accentFontColor)||p.accentFontColor})},this.frame&&(0,s.sendMessageToFrame)({frame:this.frame,frameId:this.frameId,type:"theme.changed",payload:{theme:this.theme}})},e.prototype.setConfigTheme=function(e){var t,r,o,i,a,s,c,d,l,u,f,p,h,m;this.theme={light:n.__assign(n.__assign({},(null===(t=this.theme)||void 0===t?void 0:t.light)||{}),{accentColor:(null===(o=null===(r=this.theme)||void 0===r?void 0:r.light)||void 0===o?void 0:o.accentColor)||(null===(i=null==e?void 0:e.styling)||void 0===i?void 0:i.backgroundColor)||"#002140",accentFontColor:(null===(s=null===(a=this.theme)||void 0===a?void 0:a.light)||void 0===s?void 0:s.accentFontColor)||(null===(c=null==e?void 0:e.styling)||void 0===c?void 0:c.fontColor)||"#FFFFFF"}),dark:n.__assign(n.__assign({},(null===(d=this.theme)||void 0===d?void 0:d.dark)||{}),{accentColor:(null===(u=null===(l=this.theme)||void 0===l?void 0:l.dark)||void 0===u?void 0:u.accentColor)||(null===(f=null==e?void 0:e.styling)||void 0===f?void 0:f.backgroundColor)||"#002140",accentFontColor:(null===(h=null===(p=this.theme)||void 0===p?void 0:p.dark)||void 0===h?void 0:h.accentFontColor)||(null===(m=null==e?void 0:e.styling)||void 0===m?void 0:m.fontColor)||"#FFFFFF"})}},e.prototype.setInitialTheme=function(e){var t,r;this.theme={light:n.__assign(n.__assign({},(null===(t=this.theme)||void 0===t?void 0:t.light)||{}),e.light),dark:n.__assign(n.__assign({},(null===(r=this.theme)||void 0===r?void 0:r.dark)||{}),e.dark)}},e.prototype.getText=function(){return this.text},e.prototype.setText=function(e){this.text=e,this.frame&&(0,s.sendMessageToFrame)({frameId:this.frameId,type:"text.changed",frame:this.frame,payload:{text:e}})},e.prototype.on=function(e,t){var r=Date.now().toString(16);return this.subscriptions.push({id:r,event:e,callback:t}),r},e.prototype.off=function(e){var t=this.subscriptions.findIndex((function(t){return t.id===e}));return this.subscriptions.splice(t,1),!0},e.prototype.initSessionId=function(){try{if(!window.sessionStorage)return;var e=sessionStorage.getItem(c);if(e){var t=JSON.parse(e);if(t[this.apiKey])return t[this.apiKey]}var r=(0,s.generateId)();return this.setSessionId(r),r}catch(e){return void console.error("Script is blocked by browser")}},e.prototype.setSessionId=function(e){try{if(!window.sessionStorage)return;var t=sessionStorage.getItem(c),r=t?JSON.parse(t):{};r[this.apiKey]=e,sessionStorage.setItem(c,JSON.stringify(r))}catch(e){return void console.error("Script is blocked by browser")}},e.generateSessionId=function(){return(0,s.generateId)()},e.prototype.unload=function(){return n.__awaiter(this,void 0,void 0,(function(){return n.__generator(this,(function(e){return fetch("".concat("https://api.chathive.app","/sdk/v1/ai-form/unload?sessionId=").concat(this.sessionId),{headers:{"x-api-key":this.apiKey}}).then(),[2]}))}))},e.prototype.destroy=function(){this.frame&&(this.unload(),(0,s.destroyFrames)({frame:this.frame,selector:this.selector}),this.subscriptions=[],this.frame=void 0,this.loaded=!1)},e}();t.AIForm=d},631:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.colorSchemes=void 0,t.colorSchemes=["auto","light","dark"]},642:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.formatLocation=function(){return{hash:window.location.hash,host:window.location.host,hostname:window.location.hostname,href:window.location.href,origin:window.location.origin,pathname:window.location.pathname,port:window.location.port,protocol:window.location.protocol,search:window.location.search}},t.formatWindowSize=function(){return{windowWidth:window.innerWidth,windowHeight:window.innerHeight,width:document.body.clientWidth,height:document.body.clientHeight}},t.default={}},672:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0});var n=r(959);n.__exportStar(r(518),t),n.__exportStar(r(498),t)},959:(e,t,r)=>{r.r(t),r.d(t,{__addDisposableResource:()=>z,__assign:()=>i,__asyncDelegator:()=>x,__asyncGenerator:()=>S,__asyncValues:()=>O,__await:()=>F,__awaiter:()=>h,__classPrivateFieldGet:()=>M,__classPrivateFieldIn:()=>D,__classPrivateFieldSet:()=>T,__createBinding:()=>g,__decorate:()=>s,__disposeResources:()=>A,__esDecorate:()=>d,__exportStar:()=>y,__extends:()=>o,__generator:()=>m,__importDefault:()=>P,__importStar:()=>E,__makeTemplateObject:()=>C,__metadata:()=>p,__param:()=>c,__propKey:()=>u,__read:()=>_,__rest:()=>a,__rewriteRelativeImportExtension:()=>K,__runInitializers:()=>l,__setFunctionName:()=>f,__spread:()=>b,__spreadArray:()=>I,__spreadArrays:()=>w,__values:()=>v,default:()=>V});var n=function(e,t){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])},n(e,t)};function o(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function r(){this.constructor=e}n(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}var i=function(){return i=Object.assign||function(e){for(var t,r=1,n=arguments.length;r<n;r++)for(var o in t=arguments[r])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e},i.apply(this,arguments)};function a(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var o=0;for(n=Object.getOwnPropertySymbols(e);o<n.length;o++)t.indexOf(n[o])<0&&Object.prototype.propertyIsEnumerable.call(e,n[o])&&(r[n[o]]=e[n[o]])}return r}function s(e,t,r,n){var o,i=arguments.length,a=i<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,r):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,n);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,r,a):o(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a}function c(e,t){return function(r,n){t(r,n,e)}}function d(e,t,r,n,o,i){function a(e){if(void 0!==e&&"function"!=typeof e)throw new TypeError("Function expected");return e}for(var s,c=n.kind,d="getter"===c?"get":"setter"===c?"set":"value",l=!t&&e?n.static?e:e.prototype:null,u=t||(l?Object.getOwnPropertyDescriptor(l,n.name):{}),f=!1,p=r.length-1;p>=0;p--){var h={};for(var m in n)h[m]="access"===m?{}:n[m];for(var m in n.access)h.access[m]=n.access[m];h.addInitializer=function(e){if(f)throw new TypeError("Cannot add initializers after decoration has completed");i.push(a(e||null))};var g=(0,r[p])("accessor"===c?{get:u.get,set:u.set}:u[d],h);if("accessor"===c){if(void 0===g)continue;if(null===g||"object"!=typeof g)throw new TypeError("Object expected");(s=a(g.get))&&(u.get=s),(s=a(g.set))&&(u.set=s),(s=a(g.init))&&o.unshift(s)}else(s=a(g))&&("field"===c?o.unshift(s):u[d]=s)}l&&Object.defineProperty(l,n.name,u),f=!0}function l(e,t,r){for(var n=arguments.length>2,o=0;o<t.length;o++)r=n?t[o].call(e,r):t[o].call(e);return n?r:void 0}function u(e){return"symbol"==typeof e?e:"".concat(e)}function f(e,t,r){return"symbol"==typeof t&&(t=t.description?"[".concat(t.description,"]"):""),Object.defineProperty(e,"name",{configurable:!0,value:r?"".concat(r," ",t):t})}function p(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)}function h(e,t,r,n){return new(r||(r=Promise))((function(o,i){function a(e){try{c(n.next(e))}catch(e){i(e)}}function s(e){try{c(n.throw(e))}catch(e){i(e)}}function c(e){var t;e.done?o(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(a,s)}c((n=n.apply(e,t||[])).next())}))}function m(e,t){var r,n,o,i={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]},a=Object.create(("function"==typeof Iterator?Iterator:Object).prototype);return a.next=s(0),a.throw=s(1),a.return=s(2),"function"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a;function s(s){return function(c){return function(s){if(r)throw new TypeError("Generator is already executing.");for(;a&&(a=0,s[0]&&(i=0)),i;)try{if(r=1,n&&(o=2&s[0]?n.return:s[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,s[1])).done)return o;switch(n=0,o&&(s=[2&s[0],o.value]),s[0]){case 0:case 1:o=s;break;case 4:return i.label++,{value:s[1],done:!1};case 5:i.label++,n=s[1],s=[0];continue;case 7:s=i.ops.pop(),i.trys.pop();continue;default:if(!(o=i.trys,(o=o.length>0&&o[o.length-1])||6!==s[0]&&2!==s[0])){i=0;continue}if(3===s[0]&&(!o||s[1]>o[0]&&s[1]<o[3])){i.label=s[1];break}if(6===s[0]&&i.label<o[1]){i.label=o[1],o=s;break}if(o&&i.label<o[2]){i.label=o[2],i.ops.push(s);break}o[2]&&i.ops.pop(),i.trys.pop();continue}s=t.call(e,i)}catch(e){s=[6,e],n=0}finally{r=o=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}([s,c])}}}var g=Object.create?function(e,t,r,n){void 0===n&&(n=r);var o=Object.getOwnPropertyDescriptor(t,r);o&&!("get"in o?!t.__esModule:o.writable||o.configurable)||(o={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,o)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]};function y(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||g(t,e,r)}function v(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}function _(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,i=r.call(e),a=[];try{for(;(void 0===t||t-- >0)&&!(n=i.next()).done;)a.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=i.return)&&r.call(i)}finally{if(o)throw o.error}}return a}function b(){for(var e=[],t=0;t<arguments.length;t++)e=e.concat(_(arguments[t]));return e}function w(){for(var e=0,t=0,r=arguments.length;t<r;t++)e+=arguments[t].length;var n=Array(e),o=0;for(t=0;t<r;t++)for(var i=arguments[t],a=0,s=i.length;a<s;a++,o++)n[o]=i[a];return n}function I(e,t,r){if(r||2===arguments.length)for(var n,o=0,i=t.length;o<i;o++)!n&&o in t||(n||(n=Array.prototype.slice.call(t,0,o)),n[o]=t[o]);return e.concat(n||Array.prototype.slice.call(t))}function F(e){return this instanceof F?(this.v=e,this):new F(e)}function S(e,t,r){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var n,o=r.apply(e,t||[]),i=[];return n=Object.create(("function"==typeof AsyncIterator?AsyncIterator:Object).prototype),a("next"),a("throw"),a("return",(function(e){return function(t){return Promise.resolve(t).then(e,d)}})),n[Symbol.asyncIterator]=function(){return this},n;function a(e,t){o[e]&&(n[e]=function(t){return new Promise((function(r,n){i.push([e,t,r,n])>1||s(e,t)}))},t&&(n[e]=t(n[e])))}function s(e,t){try{(r=o[e](t)).value instanceof F?Promise.resolve(r.value.v).then(c,d):l(i[0][2],r)}catch(e){l(i[0][3],e)}var r}function c(e){s("next",e)}function d(e){s("throw",e)}function l(e,t){e(t),i.shift(),i.length&&s(i[0][0],i[0][1])}}function x(e){var t,r;return t={},n("next"),n("throw",(function(e){throw e})),n("return"),t[Symbol.iterator]=function(){return this},t;function n(n,o){t[n]=e[n]?function(t){return(r=!r)?{value:F(e[n](t)),done:!1}:o?o(t):t}:o}}function O(e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t,r=e[Symbol.asyncIterator];return r?r.call(e):(e=v(e),t={},n("next"),n("throw"),n("return"),t[Symbol.asyncIterator]=function(){return this},t);function n(r){t[r]=e[r]&&function(t){return new Promise((function(n,o){(function(e,t,r,n){Promise.resolve(n).then((function(t){e({value:t,done:r})}),t)})(n,o,(t=e[r](t)).done,t.value)}))}}}function C(e,t){return Object.defineProperty?Object.defineProperty(e,"raw",{value:t}):e.raw=t,e}var j=Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t},k=function(e){return k=Object.getOwnPropertyNames||function(e){var t=[];for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[t.length]=r);return t},k(e)};function E(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r=k(e),n=0;n<r.length;n++)"default"!==r[n]&&g(t,e,r[n]);return j(t,e),t}function P(e){return e&&e.__esModule?e:{default:e}}function M(e,t,r,n){if("a"===r&&!n)throw new TypeError("Private accessor was defined without a getter");if("function"==typeof t?e!==t||!n:!t.has(e))throw new TypeError("Cannot read private member from an object whose class did not declare it");return"m"===r?n:"a"===r?n.call(e):n?n.value:t.get(e)}function T(e,t,r,n,o){if("m"===n)throw new TypeError("Private method is not writable");if("a"===n&&!o)throw new TypeError("Private accessor was defined without a setter");if("function"==typeof t?e!==t||!o:!t.has(e))throw new TypeError("Cannot write private member to an object whose class did not declare it");return"a"===n?o.call(e,r):o?o.value=r:t.set(e,r),r}function D(e,t){if(null===t||"object"!=typeof t&&"function"!=typeof t)throw new TypeError("Cannot use 'in' operator on non-object");return"function"==typeof e?t===e:e.has(t)}function z(e,t,r){if(null!=t){if("object"!=typeof t&&"function"!=typeof t)throw new TypeError("Object expected.");var n,o;if(r){if(!Symbol.asyncDispose)throw new TypeError("Symbol.asyncDispose is not defined.");n=t[Symbol.asyncDispose]}if(void 0===n){if(!Symbol.dispose)throw new TypeError("Symbol.dispose is not defined.");n=t[Symbol.dispose],r&&(o=n)}if("function"!=typeof n)throw new TypeError("Object not disposable.");o&&(n=function(){try{o.call(this)}catch(e){return Promise.reject(e)}}),e.stack.push({value:t,dispose:n,async:r})}else r&&e.stack.push({async:!0});return t}var L="function"==typeof SuppressedError?SuppressedError:function(e,t,r){var n=new Error(r);return n.name="SuppressedError",n.error=e,n.suppressed=t,n};function A(e){function t(t){e.error=e.hasError?new L(t,e.error,"An error was suppressed during disposal."):t,e.hasError=!0}var r,n=0;return function o(){for(;r=e.stack.pop();)try{if(!r.async&&1===n)return n=0,e.stack.push(r),Promise.resolve().then(o);if(r.dispose){var i=r.dispose.call(r.value);if(r.async)return n|=2,Promise.resolve(i).then(o,(function(e){return t(e),o()}))}else n|=1}catch(e){t(e)}if(1===n)return e.hasError?Promise.reject(e.error):Promise.resolve();if(e.hasError)throw e.error}()}function K(e,t){return"string"==typeof e&&/^\.\.?\//.test(e)?e.replace(/\.(tsx)$|((?:\.d)?)((?:\.[^./]+?)?)\.([cm]?)ts$/i,(function(e,r,n,o,i){return r?t?".jsx":".js":!n||o&&i?n+o+"."+i.toLowerCase()+"js":e})):e}const V={__extends:o,__assign:i,__rest:a,__decorate:s,__param:c,__esDecorate:d,__runInitializers:l,__propKey:u,__setFunctionName:f,__metadata:p,__awaiter:h,__generator:m,__createBinding:g,__exportStar:y,__values:v,__read:_,__spread:b,__spreadArrays:w,__spreadArray:I,__await:F,__asyncGenerator:S,__asyncDelegator:x,__asyncValues:O,__makeTemplateObject:C,__importStar:E,__importDefault:P,__classPrivateFieldGet:M,__classPrivateFieldSet:T,__classPrivateFieldIn:D,__addDisposableResource:z,__disposeResources:A,__rewriteRelativeImportExtension:K}},961:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.addMessageListener=function(e){var t=e.frames,r=e.subscriptions;window.addEventListener("message",(function(e){var o,i=e.data,a=i.type,s=i.payload;if(!window.Chathive.widget.isHidden()&&(null===(o=Object.keys(t))||void 0===o?void 0:o.length)){switch(a){case"widget.init":window.Chathive.widget.initWidget(),s.frameConfig&&Object.values(t).forEach((function(e){return(0,n.resizeFrame)({frame:e,config:s.frameConfig})})),Object.values(t).forEach((function(e){return(0,n.setFrameVisibility)({frame:e,isVisible:!0})}));break;case"widget.opened":case"widget.closed":if(!t.main)break;(0,n.resizeFrame)({frame:t.main,config:s});break;case"parent.resize":Object.values(t).forEach((function(e){return(0,n.resizeFrame)({frame:e,config:s})}))}(0,n.executeSubscriptions)({events:[a],subscriptions:r,payload:s})}}))},t.addEmbedMessageListener=function(e){var t=e.frames,r=e.subscriptions;window.addEventListener("message",(function(e){var o,i=e.data,a=i.type,s=i.payload;if(!window.Chathive.widget.isHidden()&&(null===(o=Object.keys(t))||void 0===o?void 0:o.length)){if("widget.init"===a)window.Chathive.widget.initWidget(),s.frameConfig&&Object.values(t).forEach((function(e){return(0,n.resizeFrame)({frame:e,config:s.frameConfig})})),Object.values(t).forEach((function(e){return(0,n.setFrameVisibility)({frame:e,isVisible:!0})}));(0,n.executeSubscriptions)({events:[a],subscriptions:r,payload:s})}}))};var n=r(972);t.default={}},972:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.wait=function(e){void 0===e&&(e=1500);return new Promise((function(t){return setTimeout((function(){return t(!0)}),e)}))},t.getRandomValue=function(e){if(!e.length)return"";if(1===e.length)return e[0];var t=Math.floor(Math.random()*e.length);return e[t]},t.generateId=function(e){for(var t=(void 0===e?{length:24}:e).length,r="abcdefghijklmonpqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890-_",n="",o=0;o<t;o++)n+=r[Math.floor(64*Math.random())];return"".concat(Date.now().toString(16)).concat(n)};var n=r(959);n.__exportStar(r(456),t),n.__exportStar(r(642),t),n.__exportStar(r(245),t)}},t={};function r(n){var o=t[n];if(void 0!==o)return o.exports;var i=t[n]={exports:{}};return e[n](i,i.exports,r),i.exports}r.d=(e,t)=>{for(var n in t)r.o(t,n)&&!r.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),r.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var n={};return(()=>{var e=n;Object.defineProperty(e,"__esModule",{value:!0}),e.widget=e.AIForm=void 0;r(672);var t=r(672);Object.defineProperty(e,"AIForm",{enumerable:!0,get:function(){return t.AIForm}}),Object.defineProperty(e,"widget",{enumerable:!0,get:function(){return t.widget}}),e.default={}})(),n})()));
//# sourceMappingURL=index.js.map