/*! * cxbus * @version: 2.1.1 * @license: Genesys Telecom Labs */ !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define("cxbus",[],t):"object"==typeof exports?exports.cxbus=t():e.cxbus=t()}(window,(function(){return function(e){var t={};function n(r){if(t[r])return t[r].exports;var o=t[r]={i:r,l:!1,exports:{}};return e[r].call(o.exports,o,o.exports,n),o.l=!0,o.exports}return n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var o in e)n.d(r,o,function(t){return e[t]}.bind(null,o));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=0)}([function(e,t,n){var r;void 0===(r=function(){"use strict";function o(e){return(o="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})(e)}!function(){var a=n(1).Promise,i=Oe(),u="color:red;font-weight:bold",s="color:white;background:#6495ed",c="color:#555;font-style:italic",l="color:#6495ed;font-weight:bold",f=!1,d=!1,m=[],p={},b={},g={},h={},y=[],v={},w={},D={},x={},I={},N=[],C=window.Genesys&&window.Genesys.q&&q(window.Genesys.q,X)?window.Genesys.q:[],j=!1,k=null,E=!0,_=!1,P="",T="",M="plugin.min.js",B={},O={},A=!0,S=!1,G="*",X="array",L=function(){},F={last:null,value:null},J="Could not load plugin file in given location. Check your plugins path option.";function U(e){if(q(e=function(e){var t={};for(var n in e)t[ue(n)]=e[n];return t}(e),"object")){if(q(e.debug,"boolean")&&(j=e.debug),q(e.name,"string")&&e.name.trim().length>0&&(k=e.name.trim()),q(e.queue,X)&&e.debug,q(e.async,"boolean")&&(A=e.async),q(e.log,"boolean")&&(E=e.log),q(e.logstore,"boolean")&&(_=e.logstore),q(e.pluginspath,"string")&&(P=xe(e.pluginspath)),q(e.modulespath,"string")&&(T=xe(e.modulespath)),q(e.pluginfilenameformat,"string")&&(M=e.pluginfilenameformat),q(e.pluginmap,"object")&&(B=e.pluginmap),q(e.pluginmap,"string"))try{B=JSON.parse(e.pluginmap)}catch(t){ye("%cInvalid plugin map JSON. Ignoring "+e.pluginmap,u)}if(q(e.modulemap,"object")&&(O=e.modulemap),q(e.modulemap,"string"))try{O=JSON.parse(e.modulemap)}catch(t){ye("%cInvalid module map JSON. Ignoring "+e.modulemap,u)}if(q(e.childDomain,"string")&&(G=e.childDomain),q(e.childmode,"boolean")&&1==e.childmode)S=e.childmode,d=!0,(window.opener||window.parent).postMessage({type:"CXBus.childCallout",registry:Object.keys(b),busID:i,busName:k},"*");B=z(B),O=z(O),ye("%cGenesys configuration changed",s)}}function q(e,t){return t===X?!!Array.isArray(e):o(e)==t}function R(e,t,n){return he(e,(function(r,a){var c=ue(e),d=b[c];f&&!d&&void 0===t?qe({type:"CXBus.remoteExecution",subType:"registerPlugin",busID:i,pluginName:e}).then((function(e){"pass"===e.resolution?R(e.pluginName,!0).then((function(e){r(e)})):"fail"===e.resolution&&R(e.pluginName,!1).then((function(e){a(e)}))})):!f||f&&!d&&!0===t?"string"!=o(e)||d?d&&a("%cCan't register plugin "+ve(e)+" -- Name is already taken",u,l,u):(b[c]={name:e,namespace:e,interface:re(e),events:{},commands:{},data:{},buffer:[],ready:!1,busID:n||i},h[c]={events:[],commands:[]},b[c].busID==i&&ye("%c New Plugin Registered:"+ve(" "+e),s,l),function(e){var t=e.interface;t.registerCommand("COMMANDS",(function(t){oe(e,"Commands"),t.resolve()})),t.registerCommand("EVENTS",(function(t){oe(e,"Events"),t.resolve()})),t.registerCommand("LOAD",(function(e){e.resolve()}))}(b[c]),b[c].interface.initData=w[c]||{},r(b[c].interface),w[c]&&delete w[c]):f&&!1===t&&a("%cCan't register plugin "+ve(e)+" -- Name is already taken",u,l,u)}))}function H(e){return"function"==o(e)&&(y.push(e),!0)}function Y(e){e&&!e.mID&&(e.mID=Oe());for(var t=0;t0&&e.trim().length>0}function $(e,t,n){var r=ue(e),a=M.replace("plugin",r),c=B[r],f=!1;return"object"==o(c)&&"string"==typeof c.target&&(f=c.target),w[r]=t||{},function(e){for(var t in e.split(".").length>1&&(e=e.split(".")[0]),b)if(ue(t)==ue(e))return!0;return!1}(e)||D[ue(e)]?V(e,"%cCan't load plugin ("+ve(e)+") -- This plugin is already loaded or an unexpected error occurred."):W(n)?qe({type:"CXBus.remoteExecution",subType:"loadPlugin",busID:i,targetBus:n,pluginName:e,data:t}):(w[r]=t||{},W(f)?qe({type:"CXBus.remoteExecution",subType:"loadPlugin",busID:i,targetBus:f,pluginName:e,data:t}):(ye("%cLoading plugin: "+(c||a),l),he(e,(function(t,n){var r=function(n){!function(e){D[ue(e)]=!0}(e),t(n)},i=function(){n("Could not load plugin file: "+a)};"string"==o(c)&&""!==c?c.match(".js$")?te(c,r,i):(ye("%cError: ("+c+") is not recognized as a javascript file. Please map plugins to javascript files only.",u),n()):!1===c?(ye("%cNotice: "+a+" was prevented from loading by the current plugin mapping configuration.",s),n()):te(P+a,r,i)}))))}function Q(e){return he("loadFile",(function(t,n){if(function(e){return x[e]}(e))ye("%cCan't load file ("+e+") -- This file was already loaded",u,l,u),n();else{ye("%cLoading file: "+e,l),te(e,(function(n){!function(e){x[e]=!0}(e),t(n)}),(function(){n("Could not load file: "+e)}))}}))}function K(e,t){return he("loadJSON",(function(t,n){var r=new XMLHttpRequest;r.overrideMimeType("application/json"),r.open("GET",e,!0),r.onreadystatechange=function(){4==r.readyState&&"200"==r.status?r.responseText&&t(r.responseText):"200"!=r.status&&0!=r.status&&n("loadJSON failed with status code: "+r.status)},r.send(null)}))}function Z(e){var t=ue(e);return he("loadModule",(function(e,n){if(t&&I[t])setTimeout((function(){e(I[t])}),0);else{var r="module.mod.js".replace("module",t),a=O[t],i=""!==T?T:P,c=function(n){e(I[t])},l=function(){n("Could not load module: "+t)};"string"==o(a)&&""!==a?a.match(".js$")?te(a,c,l):(ye("%cError: ("+a+") is not recognized as a javascript file. Please map modules to javascript files only.",u),n()):!1===a?(ye("%cNotice: "+r+" was prevented from loading by the current module mapping configuration.",s),n()):te(i+r,c,l)}}))}function ee(e,t){var n=ue(e);return!I[n]&&(I[n]=t,!0)}function te(e,t,n){if(!e)return!1;var r=document.createElement("script");return r.type="text/javascript",r.onload=t,r.onerror=n,r.src=e,r.charset="UTF-8",document.head.appendChild(r),!0}function ne(e,t){b[ue(e)].ready=!0,function(e){var t=ue(e),n=b[t].buffer||[],r=0;for(r=0;r0?g[r].subscribers=o:delete g[ue(t)],ye(ve(e)+" unsubscribed from "+ve(t),l,c,l),!0}return!1}(e,t)},command:function(t,n){return ge({commander:e,command:t,data:n})},before:function(e,t){return r=t,!!ie(n=e)&&(v[n]||(v[n]=[]),v[n].push(r),!0);var n,r},registerCommand:function(t,n){return de(e,t,n)},registerEvents:function(t){!function(e,t){var n=ce(e);q(t=t||[],"string")&&(t=[t]);if(n&&t.length>0){for(var r=0;r0;){var e=m.shift(),t=e.data,n=p[t.id];switch(t.type){case"CXBus.parentCallout":S&&Be(e.source,t.busID,t.busName,t.parentRegistry);break;case"CXBus.childCallout":S||Me(e.source,t.busID,t.busName,t.registry);break;case"CXBus.parentCallback":S&&Be(e.source,t.busID,t.busName,t.parentRegistry);break;case"CXBus.childCallback":S||Me(e.source,t.busID,t.busName,t.registry);break;case"CXBus.broadcast":f||Ge(e.data.subType,t);var r=ue(t.eventName),o=g[r]||!1;switch(e.data.subType){case"subscribe":if(void 0===t.eventData&&o&&!0===o.republish){var a=ce(t.eventName);t.eventNamespace=a?a.namespace:"",t.eventData=o.data||{},t.subType="republish",Ae(t.busID,t)}break;case"publish":me(t.publisher,t.eventName,t.data,t.republish,t.direct,!0);break;case"republish":for(var u=null,s=0;s