@gnaudio/twilio-flex-call-control-plugin
Version:
Call-control in Twilio Flex using a Jabra headset
3 lines (2 loc) • 20.2 kB
JavaScript
import{getDevices as e,getActiveDevice as n,setActiveDeviceId as t,getUserDeviceMediaExt as r,DeviceFeature as c,setMmiFocus as a,RemoteMmiType as i,Analytics as o,init as l,ring as u,offHook as s,onHook as v,addEventListener as d,mute as p,unmute as h}from"@gnaudio/jabra-browser-integration";import*as f from"@gnaudio/jabra-browser-integration";export{f as jabra};import{combineReducers as m,createStore as y,compose as g,applyMiddleware as b}from"redux";import C from"redux-thunk";import{Manager as z}from"@twilio/flex-ui";import{FlexPlugin as w}from"flex-plugin";import I from"react";import{connect as x}from"react-redux";import O,{css as E}from"styled-components";import j from"react-tooltip";function k(e,n,t,r,c,a,i){try{var o=e[a](i),l=o.value}catch(e){return void t(e)}o.done?n(l):Promise.resolve(l).then(r,c)}function M(e){return function(){var n=this,t=arguments;return new Promise((function(r,c){var a=e.apply(n,t);function i(e){k(a,r,c,i,o,"next",e)}function o(e){k(a,r,c,i,o,"throw",e)}i(void 0)}))}}function D(e,n){if(!(e instanceof n))throw new TypeError("Cannot call a class as a function")}function A(e,n){for(var t=0;t<n.length;t++){var r=n[t];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function V(e,n,t){return n&&A(e.prototype,n),t&&A(e,t),e}function _(e,n,t){return n in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function T(){return(T=Object.assign||function(e){for(var n=1;n<arguments.length;n++){var t=arguments[n];for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])}return e}).apply(this,arguments)}function R(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n&&(r=r.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),t.push.apply(t,r)}return t}function P(e){for(var n=1;n<arguments.length;n++){var t=null!=arguments[n]?arguments[n]:{};n%2?R(t,!0).forEach((function(n){_(e,n,t[n])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):R(t).forEach((function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))}))}return e}function S(e,n){if("function"!=typeof n&&null!==n)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(n&&n.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),n&&F(e,n)}function H(e){return(H=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function F(e,n){return(F=Object.setPrototypeOf||function(e,n){return e.__proto__=n,e})(e,n)}function L(e,n){if(null==e)return{};var t,r,c=function(e,n){if(null==e)return{};var t,r,c={},a=Object.keys(e);for(r=0;r<a.length;r++)t=a[r],n.indexOf(t)>=0||(c[t]=e[t]);return c}(e,n);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r<a.length;r++)t=a[r],n.indexOf(t)>=0||Object.prototype.propertyIsEnumerable.call(e,t)&&(c[t]=e[t])}return c}function N(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function U(e,n){return!n||"object"!=typeof n&&"function"!=typeof n?N(e):n}function W(e,n){return n||(n=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(n)}}))}function B(e){return function(e){if(Array.isArray(e)){for(var n=0,t=new Array(e.length);n<e.length;n++)t[n]=e[n];return t}}(e)||function(e){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e))return Array.from(e)}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance")}()}var J="SET_CALL_STATE",Z=function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;return{type:J,payload:{state:e,reservation:n}}},K={state:"none",reservation:null};var Y="LOAD_DEVICES",q="SET_ACTIVE_DEVICE",Q="REMOVE_ACTIVE_DEVICE",G="SET_MMI_FOCUS",X="REMOVE_MMI_FOCUS",$=function(){return function(){var t=M(regeneratorRuntime.mark((function t(r,c){var a,i,o;return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return a=c().jabra.devices.active,t.prev=1,t.next=4,e();case 4:if(t.t0=function(e){return"BT"!==e.deviceConnection},i=t.sent.filter(t.t0),a){t.next=14;break}return t.next=9,n();case 9:return o=t.sent,t.next=12,r(ee(o.deviceID));case 12:t.next=21;break;case 14:if(i.some((function(e){return e.deviceID===a.deviceID}))){t.next=21;break}if(!(i.length>0)){t.next=20;break}return t.next=18,r(ee(i[0].deviceID));case 18:t.next=21;break;case 20:r(ne());case 21:r({type:Y,status:"success",payload:i}),t.next=27;break;case 24:t.prev=24,t.t1=t.catch(1),r({type:Y,status:"error",payload:t.t1});case 27:case"end":return t.stop()}}),t,null,[[1,24]])})));return function(e,n){return t.apply(this,arguments)}}()},ee=function(e){return function(){var a=M(regeneratorRuntime.mark((function a(i){var o,l,u,s;return regeneratorRuntime.wrap((function(a){for(;;)switch(a.prev=a.next){case 0:return a.prev=0,a.next=3,t(e);case 3:return a.next=5,n();case 5:if(o=a.sent,"https:"!==window.location.protocol){a.next=16;break}return l=z.getInstance(),a.next=10,r({audio:!0});case 10:return u=a.sent,s=u.deviceInfo,a.next=14,l.voiceClient.audio.setInputDevice(s.browserAudioInputId);case 14:return a.next=16,l.voiceClient.audio.speakerDevices.set(s.browserAudioOutputId);case 16:if(!o.deviceFeatures.includes(c.RemoteMMIv2)){a.next=21;break}return a.next=19,i(te());case 19:a.next=22;break;case 21:i(re());case 22:i({type:q,status:"success",payload:o}),a.next=28;break;case 25:a.prev=25,a.t0=a.catch(0),i({type:q,status:"error",payload:a.t0});case 28:case"end":return a.stop()}}),a,null,[[0,25]])})));return function(e){return a.apply(this,arguments)}}()},ne=function(){return function(e){e(re()),e({type:Q})}},te=function(){return function(){var e=M(regeneratorRuntime.mark((function e(n){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,a(i.MMI_TYPE_DOT3,!0);case 3:return e.next=5,a(i.MMI_TYPE_DOT4,!0);case 5:n({type:G,status:"success"}),e.next=11;break;case 8:e.prev=8,e.t0=e.catch(0),n({type:G,status:"error",payload:e.t0});case 11:case"end":return e.stop()}}),e,null,[[0,8]])})));return function(n){return e.apply(this,arguments)}}()},re=function(){return{type:X}},ce={items:[],active:null,mmi:!0,analytics:{}};var ae="INITIALIZE_REQUEST",ie="INITIALIZE_FAILURE",oe="INITIALIZE_SUCCESS",le=function(){return function(){var e=M(regeneratorRuntime.mark((function e(n){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n({type:ae}),e.prev=1,e.next=4,l();case 4:return e.next=6,n($());case 6:n({type:oe}),e.next=12;break;case 9:e.prev=9,e.t0=e.catch(1),n({type:ie,payload:e.t0});case 12:case"end":return e.stop()}}),e,null,[[1,9]])})));return function(n){return e.apply(this,arguments)}}()},ue={isInitialized:!1,isInitializing:!1};var se=m({sdk:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:ue,n=arguments.length>1?arguments[1]:void 0;switch(n.type){case ae:return P({},e,{isInitializing:!0});case oe:return P({},e,{isInitialized:!0,isInitializing:!1});case ie:return P({},e,{isInitializing:!1,initializationError:n.payload});default:return e}},call:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:K,n=arguments.length>1?arguments[1]:void 0;switch(n.type){case J:return P({},e,{state:n.payload.state,reservation:n.payload.reservation});default:return e}},devices:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:ce,n=arguments.length>1?arguments[1]:void 0;switch(n.type){case Y:if("success"===n.status)return P({},e,{items:n.payload});break;case q:if("success"===n.status){var t=P({},e,{active:n.payload});return e.analytics.hasOwnProperty(n.payload.deviceID)||(t.analytics=P({},e.analytics,_({},n.payload.deviceID,new o(n.payload.deviceID)))),t}case Q:return P({},e,{active:null});case G:if("success"===n.status)return P({},e,{mmi:!0});if("error"===n.status)return P({},e,{mmi:!1});break;case X:return P({},e,{mmi:!1});default:return e}}}),ve=y(m({jabra:se}),g(b(C))),de={manager:null,handleAllCalls:function(){},handleCallIncoming:function(){},handleCallAccepted:function(){},handleCallCanceled:function(){},handleCallCompleted:function(){},handleCallRejected:function(){},handleCallRescinded:function(){},handleCallTimeout:function(){},handleCallWrapping:function(){}};function pe(e){function n(n){"voice"===n.task.taskChannelUniqueName&&("pending"===n.status&&e.handleCallIncoming(n),"wrapping"===n.status&&e.handleCallWrapping(n),n.on("accepted",e.handleCallAccepted),n.on("canceled",e.handleCallCanceled),n.on("completed",e.handleCallCompleted),n.on("rejected",e.handleCallRejected),n.on("rescinded",e.handleCallRescinded),n.on("timeout",e.handleCallTimeout),n.on("wrapup",e.handleCallWrapping),e.handleAllCalls(n))}(e=Object.assign({},de,e)).manager.workerClient.reservations.forEach(n),e.manager.workerClient.on("reservationCreated",n)}var he=function(e){var n=e.available,t=e.callState;return e.activeDevice?n&&"incoming"===t?(u(),null):"accepted"===t?(s(),null):(v(),null):null},fe=function(e){return{available:e.flex.worker.activity.available}},me=x((function(e){var n=e.jabra;return{activeDevice:n.devices.active,callState:n.call.state}}))((function(e){e.store;var n=L(e,["store"]);return I.createElement(x(fe)(he),n)}));function ye(){var e=W(["\n margin-right: 1rem;\n"]);return ye=function(){return e},e}function ge(){var e=W(["\n display: flex;\n align-items: center;\n user-select: none;\n\n &:not(:first-child) {\n margin-top: 0.5rem;\n }\n"]);return ge=function(){return e},e}var be=O.label(ge()),Ce=O.input(ye()),ze=function(e){function n(){var e,t;D(this,n);for(var r=arguments.length,c=new Array(r),a=0;a<r;a++)c[a]=arguments[a];return _(N(t=U(this,(e=H(n)).call.apply(e,[this].concat(c)))),"handleChange",(function(e){t.props.dispatch(ee(e.target.value))})),t}return S(n,I.Component),V(n,[{key:"render",value:function(){var e=this,n=this.props,t=n.devices,r=n.activeDevice;return r?I.createElement("div",null,B(t).sort((function(e,n){return e.deviceName.localeCompare(n.deviceName)})).map((function(n){return I.createElement(be,null,I.createElement(Ce,{type:"radio",value:n.deviceID,name:"active_device",checked:n.deviceID===r.deviceID,onChange:e.handleChange}),n.deviceName)}))):null}}]),n}(),we=x((function(e){var n=e.jabra;return{devices:n.devices.items,activeDevice:n.devices.active}}))(ze);function Ie(){var e=W(["\n text-align: center;\n"]);return Ie=function(){return e},e}function xe(){var e=W(["\n max-width: 16rem !important;\n pointer-events: auto !important;\n padding: 1rem !important;\n\n &:hover {\n visibility: visible !important;\n opacity: 1 !important;\n }\n"]);return xe=function(){return e},e}function Oe(){var e=W(["\n filter: saturate(0%);\n "]);return Oe=function(){return e},e}function Ee(){var e=W(["\n height: 16px;\n\n ","\n"]);return Ee=function(){return e},e}function je(){var e=W(["\n padding: 6px;\n display: flex;\n align-items: center;\n"]);return je=function(){return e},e}var ke=O.div(je()),Me=O((function(e){return I.createElement("svg",T({},e,{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 472.6 160.9"}),I.createElement("path",{fill:"#FFD100",d:"M143.8 75.7c-11 0-11 2.6-11 3.8v2.1c0 1.1 0 3.7 11 3.7s11-2.6 11-3.7v-2.1c-.1-1.2-.1-3.8-11-3.8zM210.8 81.5V64.7c0-1.1 0-3.7-11-3.7s-11 2.6-11 3.7v16.8c0 1.1 0 3.7 11 3.7s11-2.6 11-3.7zM283.9 85.3c11 0 11-2.6 11-3.7v-2.1c0-1.1 0-3.8-11-3.8s-11 2.6-11 3.8v2.1c0 1.1 0 3.7 11 3.7z"}),I.createElement("path",{fill:"#FFD100",d:"M462.6 0H10.1C4.5 0 0 4.5 0 10.1v140.8c0 5.6 4.5 10.1 10.1 10.1h452.5c5.6 0 10.1-4.5 10.1-10.1V10.1C472.6 4.5 468.1 0 462.6 0zM261 77.5c0-2.6 0-7.7 22.8-7.7 4.5 0 8.1.2 11 .5v-5.6c0-1.1 0-3.7-11-3.7-10.1 0-10.1 2.6-10.1 3.7 0 .8-.6 1.4-1.4 1.4h-9.1c-.8 0-1.4-.6-1.4-1.4v-1.9c0-2.6 0-7.7 22-7.7 22.8 0 22.8 5.1 22.8 7.7v20.7c0 2.6 0 7.7-22.8 7.7S261 86.1 261 83.5v-6zM70.4 119.9c0 .5-.4.8-.8.8h-3.4c-.5 0-.8-.4-.8-.8v-8.4c0-.5.4-.8.8-.8h3.4c.5 0 .8.4.8.8v8.4zm16.9-.1c0 .5-.4.9-.9.9h-3.9c-.5 0-.9-.4-.9-.9v-8.3c0-.5.4-.9.9-.9h3.9c.5 0 .9.4.9.9v8.3zm17 0c0 .5-.4.9-.9.9h-4.5c-.5 0-.9-.4-.9-.9v-8.2c0-.5.4-.9.9-.9h4.5c.5 0 .9.4.9.9v8.2zm6.7-36.3c0 2.6 0 7.7-22.8 7.7s-22.8-5.1-22.8-7.7V80c0-.8.6-1.4 1.4-1.4h9.1c.8 0 1.4.6 1.4 1.4v1.8c0 1.2.4 3.6 11 3.6 11 0 11-2.6 11-3.7V41.8c0-.8.6-1.4 1.4-1.4h9.1c.8 0 1.4.6 1.4 1.4l-.2 41.7zm10.3 36.2c0 .5-.4.9-.9.9h-5c-.5 0-.9-.4-.9-.9v-8.2c0-.5.4-.9.9-.9h5c.5 0 .9.4.9.9v8.2zm16.9 0c0 .5-.4 1-1 1h-5.6c-.5 0-1-.4-1-1v-8.1c0-.5.4-1 1-1h5.6c.5 0 1 .4 1 1v8.1zm-17.3-36.2v-6c0-2.6 0-7.7 22.8-7.7 4.5 0 8.1.2 11 .5v-5.6c0-1.1 0-3.7-11-3.7-10.2 0-10.2 2.6-10.2 3.7 0 .8-.6 1.4-1.4 1.4H123c-.8 0-1.4-.6-1.4-1.4v-1.9c0-2.6 0-7.7 22-7.7 22.8 0 22.8 5.1 22.8 7.7v20.7c0 2.6 0 7.7-22.8 7.7-22.7 0-22.7-5.1-22.7-7.7zm34.3 36.2c0 .6-.5 1-1 1h-6.1c-.6 0-1-.5-1-1v-8c0-.6.5-1 1-1h6.1c.6 0 1 .5 1 1v8zm17-.1c0 .6-.5 1.1-1.1 1.1h-6.7c-.6 0-1.1-.5-1.1-1.1v-7.9c0-.6.5-1.1 1.1-1.1h6.7c.6 0 1.1.5 1.1 1.1v7.9zm4.8-36.2V41.7c0-.8.6-1.4 1.4-1.4h9.1c.8 0 1.4.6 1.4 1.4v13.8c2.9-.3 6.5-.5 11-.5 22.8 0 22.8 5.1 22.8 7.7v20.7c0 2.6 0 7.7-22.8 7.7-22.9.1-22.9-5.1-22.9-7.7zm12.1 36.2c0 .6-.5 1.1-1.1 1.1h-7.2c-.6 0-1.1-.5-1.1-1.1v-7.9c0-.6.5-1.1 1.1-1.1h7.2c.6 0 1.1.5 1.1 1.1v7.9zm17-.1c0 .6-.5 1.1-1.1 1.1h-7.8c-.6 0-1.1-.5-1.1-1.1v-7.8c0-.6.5-1.1 1.1-1.1h7.8c.6 0 1.1.5 1.1 1.1v7.8zm17 0c0 .7-.5 1.2-1.2 1.2h-8.3c-.7 0-1.2-.5-1.2-1.2v-7.7c0-.7.5-1.2 1.2-1.2h8.3c.7 0 1.2.5 1.2 1.2v7.7zm17 0c0 .7-.5 1.2-1.2 1.2H230c-.7 0-1.2-.5-1.2-1.2v-7.6c0-.7.5-1.2 1.2-1.2h8.8c.7 0 1.2.5 1.2 1.2v7.6zm4.8-30.5c0 .8-.6 1.4-1.4 1.4h-9.1c-.8 0-1.4-.6-1.4-1.4V62.8c0-2.6 0-7.7 22.8-7.7.8 0 1.4.6 1.4 1.4v3.1c0 .8-.6 1.4-1.4 1.4-11 0-11 2.6-11 3.7V89zm121.5 29.5c0 1.2-1 2.2-2.2 2.2H247.3c-1.2 0-2.2-1-2.2-2.2v-5.6c0-1.2 1-2.2 2.2-2.2h116.9c1.2 0 2.2 1 2.2 2.2v5.6zm.1-46.4c0 1.6-1.3 2.9-2.9 2.9H349c-9.9 0-17.9-8.3-17.4-18.3.4-9.3 8.3-16.6 17.7-16.6h14.3c1.6 0 2.9 1.3 2.9 3 0 1.6-1.4 2.9-3 2.9H349c-6.2 0-11.3 4.9-11.6 11-.4 6.7 5.1 12.3 11.8 12.3h10.7c.4 0 .7-.3.7-.7v-7.3c0-.4-.3-.7-.7-.7h-5.1c-1.6 0-2.9-1.3-2.9-3 0-1.6 1.4-2.9 3-2.9h8.6c1.6 0 2.9 1.3 2.9 2.9v14.5zm40.6-.1c0 1-.5 2.1-1.4 2.6-.5.3-1 .4-1.5.4-.8 0-1.5-.3-2.1-.9L379 51c-.3-.3-.9-.1-.9.4V72c0 1.6-1.3 3-2.9 3-1.6 0-3-1.3-3-2.9v-29c0-1 .5-2 1.4-2.5 1.2-.7 2.7-.5 3.6.4l23.2 23.2c.3.3.9.1.9-.4V43.1c0-1.6 1.3-3 2.8-3 1.6 0 3 1.3 3 2.9v29z"}),I.createElement("path",{fill:"#212721",d:"M255.9 61c.8 0 1.4-.6 1.4-1.4v-3.1c0-.8-.6-1.4-1.4-1.4-22.8 0-22.8 5.1-22.8 7.7V89c0 .8.6 1.4 1.4 1.4h9.1c.8 0 1.4-.6 1.4-1.4V64.7c-.1-1.1-.1-3.7 10.9-3.7zM166.6 83.5V62.8c0-2.6 0-7.7-22.8-7.7-22 0-22 5.1-22 7.7v1.9c0 .8.6 1.4 1.4 1.4h9.1c.8 0 1.4-.6 1.4-1.4 0-1.1 0-3.7 10.2-3.7 11 0 11 2.6 11 3.7v5.6c-2.9-.3-6.5-.5-11-.5-22.8 0-22.8 5.1-22.8 7.7v6c0 2.6 0 7.7 22.8 7.7 22.7 0 22.7-5.1 22.7-7.7zm-11.9-2c0 1.1 0 3.7-11 3.7s-11-2.6-11-3.7v-2.1c0-1.1 0-3.8 11-3.8s11 2.6 11 3.8v2.1zM222.6 83.4V62.8c0-2.6 0-7.7-22.8-7.7-4.5 0-8.1.2-11 .5V41.7c0-.8-.6-1.4-1.4-1.4h-9.1c-.8 0-1.4.6-1.4 1.4v41.7c0 2.6 0 7.7 22.8 7.7 22.9.1 22.9-5.1 22.9-7.7zm-33.7-1.9V64.7c0-1.1 0-3.7 11-3.7s11 2.6 11 3.7v16.8c0 1.1 0 3.7-11 3.7s-11-2.6-11-3.7zM283.9 91.2c22.8 0 22.8-5.1 22.8-7.7V62.8c0-2.6 0-7.7-22.8-7.7-22 0-22 5.1-22 7.7v1.9c0 .8.6 1.4 1.4 1.4h9.1c.8 0 1.4-.6 1.4-1.4 0-1.1 0-3.7 10.1-3.7 11 0 11 2.6 11 3.7v5.6c-2.9-.3-6.5-.5-11-.5-22.8 0-22.8 5.1-22.8 7.7v6c-.1 2.6-.1 7.7 22.8 7.7zm-11-11.8c0-1.1 0-3.8 11-3.8s11 2.6 11 3.8v2.1c0 1.1 0 3.7-11 3.7s-11-2.6-11-3.7v-2.1zM109.5 40.4h-9.1c-.8 0-1.4.6-1.4 1.4v39.8c0 1.1 0 3.7-11 3.7-10.5 0-10.9-2.4-11-3.6v-1.8c0-.8-.6-1.4-1.4-1.4h-9.1c-.8 0-1.4.6-1.4 1.4v3.5c0 2.6 0 7.7 22.8 7.7s22.8-5.1 22.8-7.7V41.7c.3-.7-.4-1.3-1.2-1.3zM69.5 110.6h-3.4c-.5 0-.8.4-.8.8v8.4c0 .5.4.8.8.8h3.4c.5 0 .8-.4.8-.8v-8.4c.1-.4-.3-.8-.8-.8zM86.5 110.6h-3.9c-.5 0-.9.4-.9.9v8.3c0 .5.4.9.9.9h3.9c.5 0 .9-.4.9-.9v-8.3c-.1-.5-.5-.9-.9-.9zM103.4 110.6h-4.5c-.5 0-.9.4-.9.9v8.2c0 .5.4.9.9.9h4.5c.5 0 .9-.4.9-.9v-8.2c0-.5-.4-.9-.9-.9zM120.3 110.6h-5c-.5 0-.9.4-.9.9v8.2c0 .5.4.9.9.9h5c.5 0 .9-.4.9-.9v-8.2c.1-.5-.4-.9-.9-.9zM137.3 110.6h-5.6c-.5 0-1 .4-1 1v8.1c0 .5.4 1 1 1h5.6c.5 0 1-.4 1-1v-8.1c-.1-.5-.5-1-1-1zM154.2 110.6h-6.1c-.6 0-1 .5-1 1v8c0 .6.5 1 1 1h6.1c.6 0 1-.5 1-1v-8c0-.5-.5-1-1-1zM171.1 110.6h-6.7c-.6 0-1.1.5-1.1 1.1v7.9c0 .6.5 1.1 1.1 1.1h6.7c.6 0 1.1-.5 1.1-1.1v-7.9c0-.6-.5-1.1-1.1-1.1zM188 110.6h-7.2c-.6 0-1.1.5-1.1 1.1v7.9c0 .6.5 1.1 1.1 1.1h7.2c.6 0 1.1-.5 1.1-1.1v-7.9c0-.6-.4-1.1-1.1-1.1zM205 110.6h-7.8c-.6 0-1.1.5-1.1 1.1v7.8c0 .6.5 1.1 1.1 1.1h7.8c.6 0 1.1-.5 1.1-1.1v-7.8c0-.6-.5-1.1-1.1-1.1zM221.9 110.6h-8.3c-.7 0-1.2.5-1.2 1.2v7.7c0 .7.5 1.2 1.2 1.2h8.3c.7 0 1.2-.5 1.2-1.2v-7.7c0-.6-.5-1.2-1.2-1.2zM238.8 110.6H230c-.7 0-1.2.5-1.2 1.2v7.6c0 .7.5 1.2 1.2 1.2h8.8c.7 0 1.2-.5 1.2-1.2v-7.6c.1-.6-.5-1.2-1.2-1.2zM364.2 110.6H247.3c-1.2 0-2.2 1-2.2 2.2v5.6c0 1.2 1 2.2 2.2 2.2h116.9c1.2 0 2.2-1 2.2-2.2v-5.6c0-1.2-1-2.2-2.2-2.2zM404.2 40.1c-1.6 0-2.8 1.4-2.8 3v20.6c0 .5-.6.7-.9.4L377.2 41c-.9-.9-2.4-1.1-3.6-.4-.9.5-1.4 1.5-1.4 2.5v29c0 1.6 1.3 2.9 3 2.9 1.6 0 2.9-1.4 2.9-3V51.4c0-.5.6-.7.9-.4l23.2 23.2c.6.6 1.3.9 2.1.9.5 0 1-.1 1.5-.4.9-.5 1.4-1.5 1.4-2.6V43c-.1-1.6-1.4-2.9-3-2.9zM363.5 54.7h-8.6c-1.6 0-3 1.3-3 2.9 0 1.6 1.3 3 2.9 3h5.1c.4 0 .7.3.7.7v7.3c0 .4-.3.7-.7.7h-10.7c-6.8 0-12.2-5.5-11.8-12.3.3-6.1 5.4-11 11.6-11h14.4c1.6 0 3-1.3 3-2.9 0-1.6-1.3-3-2.9-3h-14.3c-9.3 0-17.2 7.3-17.7 16.6-.5 10 7.5 18.3 17.4 18.3h14.5c1.6 0 2.9-1.3 2.9-2.9V57.6c.2-1.6-1.1-2.9-2.8-2.9z"}))}))(Ee(),(function(e){return e.invalid&&E(Oe())})),De=O(j).attrs({delayHide:100,effect:"solid",place:"bottom"})(xe()),Ae=O.div(Ie()),Ve=x((function(e){var n,t=e.jabra;return _(n={isInitialized:t.sdk.isInitialized,isInitializing:t.sdk.isInitializing,devices:t.devices.items},"devices",t.devices.items),_(n,"activeDevice",t.devices.active),n}))((function(e){var n,t=e.store,r=e.devices,c=e.activeDevice,a=e.isInitialized;return e.isInitializing?n="Jabra Browser SDK initializing...":a?(r.length<1||!c)&&(n="Couldn't find any Jabra devices"):n="Jabra Browser SDK installation incomplete. Please (re)install",I.createElement(I.Fragment,null,I.createElement(ke,null,I.createElement(Me,{"data-tip":!0,"data-for":"jabra-device",invalid:n})),I.createElement(De,{id:"jabra-device"},n?I.createElement(Ae,null,n):I.createElement(we,{store:t})))})),_e=function(e){function n(){var e;return D(this,n),_(N(e=U(this,H(n).call(this,"JabraCallControl"))),"handleCallIncoming",(function(n){d("acceptcall",(function(){e.flex.Actions.invokeAction("AcceptTask",{sid:n.sid}),e.flex.Actions.invokeAction("SelectTask",{sid:n.sid})})),ve.dispatch(Z("incoming",n))})),_(N(e),"handleCallAccepted",(function(n){var t=e.manager.voiceClient.activeConnection();t.on("mute",(function(e){e?p():h()})),d("endcall",(function(){t.disconnect()})),d("mute",(function(){t.mute(!0)})),d("unmute",(function(){t.mute(!1)})),ve.dispatch(Z("accepted",n))})),_(N(e),"handleCallWrapping",(function(e){ve.dispatch(Z("wrapping",e))})),_(N(e),"handleCallCanceled",(function(){ve.dispatch(Z("none"))})),_(N(e),"handleCallCompleted",(function(){ve.dispatch(Z("none"))})),_(N(e),"handleCallRejected",(function(){ve.dispatch(Z("none"))})),_(N(e),"handleCallRescinded",(function(){ve.dispatch(Z("none"))})),_(N(e),"handleCallTimeout",(function(){ve.dispatch(Z("none"))})),e}return S(n,w),V(n,[{key:"init",value:function(e,n){this.flex=e,this.manager=n,ve.dispatch(le()),d("device attached",(function(){ve.dispatch($())})),d("device detached",(function(){ve.dispatch($())})),e.MainHeader.Content.add(I.createElement(Ve,{key:"jabra-device-indicator",store:ve}),{align:"end",sortOrder:-1}),e.RootContainer.Content.add(I.createElement(me,{key:"jabra-call-control",store:ve})),pe({manager:n,handleCallIncoming:this.handleCallIncoming,handleCallAccepted:this.handleCallAccepted,handleCallCanceled:this.handleCallCanceled,handleCallCompleted:this.handleCallCompleted,handleCallRejected:this.handleCallRejected,handleCallRescinded:this.handleCallRescinded,handleCallTimeout:this.handleCallTimeout,handleCallWrapping:this.handleCallWrapping})}}]),n}();export{_e as Plugin,pe as handleReservation,ve as store};
//# sourceMappingURL=twilio-flex-call-control-plugin.esm.js.map