ysyt-agent-sdk 1.0.14 → 1.0.15

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- @font-face{font-family:ysyt;src:url(../fonts/iconfont.woff2?t=1750839875481) format("woff2"),url(../fonts/iconfont.woff?t=1750839875481) format("woff"),url(../fonts/iconfont.ttf?t=1750839875481) format("truetype")}.ysyt{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:ysyt,serif!important;font-size:18px;font-style:normal}.icon-shouji:before{content:"\e692"}.icon-20gl-phoneSip:before{content:"\e924"}.icon-dianhua:before{content:"\e842"}.icon-quxiao:before{content:"\e676"}.icon-jieting:before{content:"\e60a"}.icon-boda:before{content:"\e679"}.icon-kaishi:before{content:"\e800"}.icon-guaji:before{content:"\e732"}.icon-manyidu:before{content:"\e600"}.icon-zixun:before{content:"\e71f"}.icon-zanting:before{content:"\ea81"}.icon-zhuanjie1:before{content:"\e601"}.icon-microphone:before{content:"\e661"}.icon-guanbimaikefeng:before{content:"\e603"}.icon-manglu:before{content:"\e65d"}.icon-shang:before{content:"\e60f"}.icon-xia:before{content:"\e64c"}.icon-kongxian:before{content:"\ed94"}#ysyt-body{position:absolute;z-index:9999999}#ysyt-body,.ysyt-phone-body{align-items:center;display:flex}.ysyt-phone-body{border-radius:30px 10px 0 30px;height:30px;padding:5px 15px;user-select:none}.ysyt-phone-body .ysyt-title{color:#fff;cursor:pointer;font-size:14px;padding-right:10px;position:relative;width:100px}.ysyt-phone-body .select-icon{color:#fff;display:none;font-size:10px;left:calc(50% - 4px);position:absolute;top:100%;z-index:9999999}.ysyt-select{background:#fff;border-radius:4px;box-shadow:0 4px 8px rgba(0,0,0,.1);height:0;overflow:hidden;position:absolute;top:calc(100% + 8px);transition:height .1s ease-in;width:100%;z-index:9999999}.ysyt-select-body{position:relative}.ysyt-select-body>div{color:rgba(0,0,0,.6);padding:5px 4px;text-align:center}.ysyt-select-body>div:hover{background:#ecf5ff;color:#2b96ea}.ysyt-action-body{align-items:center;color:#3356ec;display:flex;font-size:25px;gap:0 10px;height:39px;padding:0 10px}.ysyt-action-body>*{cursor:pointer}.content-call-key{color:rgba(0,0,0,.6);font-size:16px;padding:10px;width:250px}.content-call-key>my-input::part(wrapper){--tw-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px 0 rgba(0,0,0,.06);border:none;border-radius:30px;box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);height:25px;width:220px}.content-call-key>my-input::part(wrapper-input){text-align:center}#wifi-body>img{width:18px}.network-body{color:rgba(0,0,0,.7);font-size:12px;padding:5px 10px}.network-body>div{align-items:center;display:flex;margin-bottom:5px}.network-body>div>div{color:#000;width:50px}.my-icon{font-size:22px}.agent-list-item{align-items:center;display:flex;justify-content:space-between;padding:10px}#ysyt-devices-body{margin-right:15px;position:relative;width:130px}#ysyt-devices-body,.ysyt-devices-select-title{align-items:center;display:flex;justify-content:center}.ysyt-devices-select-title{border-bottom:1px solid rgba(0,0,0,.1);cursor:pointer;width:80%}.ysyt-devices-select-body{background:#fff;border:1px solid rgba(0,0,0,.1);border-radius:5px;position:absolute;top:23px;z-index:999999}.ysyt-devices-select-body>div{cursor:pointer;padding:5px 10px}.ysyt-devices-select-body>div:hover{background:rgba(0,0,0,.1)}
1
+ @font-face{font-family:ysyt;src:url(../fonts/iconfont.woff2?t=1750839875481) format("woff2"),url(../fonts/iconfont.woff?t=1750839875481) format("woff"),url(../fonts/iconfont.ttf?t=1750839875481) format("truetype")}.ysyt{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:ysyt,serif!important;font-size:18px;font-style:normal}.icon-shouji:before{content:"\e692"}.icon-20gl-phoneSip:before{content:"\e924"}.icon-dianhua:before{content:"\e842"}.icon-quxiao:before{content:"\e676"}.icon-jieting:before{content:"\e60a"}.icon-boda:before{content:"\e679"}.icon-kaishi:before{content:"\e800"}.icon-guaji:before{content:"\e732"}.icon-manyidu:before{content:"\e600"}.icon-zixun:before{content:"\e71f"}.icon-zanting:before{content:"\ea81"}.icon-zhuanjie1:before{content:"\e601"}.icon-microphone:before{content:"\e661"}.icon-guanbimaikefeng:before{content:"\e603"}.icon-manglu:before{content:"\e65d"}.icon-shang:before{content:"\e60f"}.icon-xia:before{content:"\e64c"}.icon-kongxian:before{content:"\ed94"}#ysyt-body,.ysyt-phone-body{align-items:center;display:flex}.ysyt-phone-body{border-radius:30px 10px 0 30px;height:30px;padding:5px 15px;user-select:none}.ysyt-phone-body .ysyt-title{color:#fff;cursor:pointer;font-size:14px;padding-right:10px;position:relative;width:100px}.ysyt-phone-body .select-icon{color:#fff;display:none;font-size:10px;left:calc(50% - 4px);position:absolute;top:100%;z-index:9999999}.ysyt-select{background:#fff;border-radius:4px;box-shadow:0 4px 8px rgba(0,0,0,.1);height:0;overflow:hidden;position:absolute;top:calc(100% + 8px);transition:height .1s ease-in;width:100%;z-index:9999999}.ysyt-select-body{position:relative}.ysyt-select-body>div{color:rgba(0,0,0,.6);padding:5px 4px;text-align:center}.ysyt-select-body>div:hover{background:#ecf5ff;color:#2b96ea}.ysyt-action-body{align-items:center;color:#3356ec;display:flex;font-size:25px;gap:0 10px;height:30px;padding:0 10px}.ysyt-action-body>*{cursor:pointer}.content-call-key{color:rgba(0,0,0,.6);font-size:16px;padding:10px;width:250px}.content-call-key>my-input::part(wrapper){--tw-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px 0 rgba(0,0,0,.06);border:none;border-radius:30px;box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);height:25px;width:220px}.content-call-key>my-input::part(wrapper-input){text-align:center}#wifi-body>img{width:18px}.network-body{color:rgba(0,0,0,.7);font-size:12px;padding:5px 10px}.network-body>div{align-items:center;display:flex;margin-bottom:5px}.network-body>div>div{color:#000;width:50px}.my-icon{font-size:22px}.agent-list-item{align-items:center;display:flex;justify-content:space-between;padding:10px}#ysyt-devices-body{align-items:center;display:flex;justify-content:center;margin-right:15px;position:relative;width:130px}
@@ -24,7 +24,6 @@ export declare class PhoneView {
24
24
  private consultShow;
25
25
  private modalRoot;
26
26
  private agentStateData;
27
- private devicesBodyShow;
28
27
  constructor({ container, rttHTML, statusParams }: Props, VoiceSDKInstance: YSYTAgentSdk);
29
28
  private eventHandle;
30
29
  private handleNetworkInfoChange;
@@ -52,7 +51,6 @@ export declare class PhoneView {
52
51
  private renderReject;
53
52
  private renderConsultModalToBody;
54
53
  private getActionConfigs;
55
- private devicesMap;
56
54
  private render;
57
55
  private renderRtt;
58
56
  }
@@ -173,6 +173,7 @@ const Zs=e=>(t,s)=>{void 0!==s?s.addInitializer(()=>{customElements.define(e,t)}
173
173
 
174
174
  .trigger {
175
175
  display: inline-block;
176
+ cursor: pointer;
176
177
  }
177
178
 
178
179
  .popover {
@@ -187,6 +188,8 @@ const Zs=e=>(t,s)=>{void 0!==s?s.addInitializer(()=>{customElements.define(e,t)}
187
188
  opacity 0.2s ease,
188
189
  transform 0.2s ease;
189
190
  pointer-events: none;
191
+ min-width: 100px;
192
+ padding: 0px;
190
193
  }
191
194
 
192
195
  .popover.visible {
@@ -216,7 +219,6 @@ const Zs=e=>(t,s)=>{void 0!==s?s.addInitializer(()=>{customElements.define(e,t)}
216
219
 
217
220
  .arrow[data-placement='top'] {
218
221
  bottom: -6px;
219
- left: 10px;
220
222
  border-width: 6px 6px 0 6px;
221
223
  border-color: #fff transparent transparent transparent;
222
224
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.05);
@@ -224,26 +226,23 @@ const Zs=e=>(t,s)=>{void 0!==s?s.addInitializer(()=>{customElements.define(e,t)}
224
226
 
225
227
  .arrow[data-placement='bottom'] {
226
228
  top: -6px;
227
- left: 10px;
228
229
  border-width: 0 6px 6px 6px;
229
230
  border-color: transparent transparent #fff transparent;
230
231
  box-shadow: 0 -2px 5px rgba(0, 0, 0, 0.05);
231
232
  }
232
233
 
233
234
  .arrow[data-placement='left'] {
234
- top: 10px;
235
235
  right: -6px;
236
236
  border-width: 6px 0 6px 6px;
237
237
  border-color: transparent transparent transparent #fff;
238
238
  }
239
239
 
240
240
  .arrow[data-placement='right'] {
241
- top: 10px;
242
241
  left: -6px;
243
242
  border-width: 6px 6px 6px 0;
244
243
  border-color: transparent #fff transparent transparent;
245
244
  }
246
- `}firstUpdated(){this.triggerEl=this.renderRoot.querySelector(".trigger"),this.popoverEl=this.renderRoot.querySelector(".popover"),"click"===this.triggerType?(this.triggerEl.addEventListener("click",this.onTogglePopover),document.addEventListener("click",this.onOutsideClick)):(this.triggerEl.addEventListener("mouseenter",this.showPopover),this.triggerEl.addEventListener("mouseleave",this.hidePopoverDelayed),this.popoverEl.addEventListener("mouseenter",this.clearHideTimer),this.popoverEl.addEventListener("mouseleave",this.hidePopoverDelayed))}disconnectedCallback(){super.disconnectedCallback(),document.removeEventListener("click",this.onOutsideClick)}updatePosition(){const e=this.triggerEl.getBoundingClientRect(),t=this.popoverEl;let s=0,i=0;switch(this.placement){case"top":s=e.top-t.offsetHeight-8,i=e.left;break;case"bottom":s=e.bottom+8,i=e.left;break;case"left":s=e.top,i=e.left-t.offsetWidth-8;break;case"right":s=e.top,i=e.right+8}t.style.top=`${s}px`,t.style.left=`${i}px`,t.setAttribute("data-placement",this.placement)}render(){return Ds`
245
+ `}firstUpdated(){this.triggerEl=this.renderRoot.querySelector(".trigger"),this.popoverEl=this.renderRoot.querySelector(".popover"),"click"===this.triggerType?(this.triggerEl.addEventListener("click",this.onTogglePopover),document.addEventListener("click",this.onOutsideClick)):(this.triggerEl.addEventListener("mouseenter",this.showPopover),this.triggerEl.addEventListener("mouseleave",this.hidePopoverDelayed),this.popoverEl.addEventListener("mouseenter",this.clearHideTimer),this.popoverEl.addEventListener("mouseleave",this.hidePopoverDelayed))}disconnectedCallback(){super.disconnectedCallback(),document.removeEventListener("click",this.onOutsideClick),this.triggerEl&&("click"===this.triggerType?(this.triggerEl.removeEventListener("click",this.onTogglePopover),document.removeEventListener("click",this.onOutsideClick)):(this.triggerEl.removeEventListener("mouseenter",this.showPopover),this.triggerEl.removeEventListener("mouseleave",this.hidePopoverDelayed),this.popoverEl.removeEventListener("mouseenter",this.clearHideTimer),this.popoverEl.removeEventListener("mouseleave",this.hidePopoverDelayed)))}updatePosition(){const e=this.triggerEl.getBoundingClientRect(),t=this.popoverEl;let s=0,i=0;switch(this.placement){case"top":s=e.top-t.offsetHeight-8,i=e.left+(e.width-t.offsetWidth)/2;break;case"bottom":s=e.bottom+8,i=e.left+(e.width-t.offsetWidth)/2;break;case"left":s=e.top+(e.height-t.offsetHeight)/2,i=e.left-t.offsetWidth-8;break;case"right":s=e.top+(e.height-t.offsetHeight)/2,i=e.right+8}t.style.top=`${s}px`,t.style.left=`${i}px`,t.setAttribute("data-placement",this.placement);const r=this.renderRoot.querySelector(".arrow");if(r)if("top"===this.placement||"bottom"===this.placement){const s=e.left+e.width/2-i-6;r.style.left=`${Math.min(Math.max(s,10),t.offsetWidth-16)}px`,r.style.top=""}else{const i=e.top+e.height/2-s-6;r.style.top=`${Math.min(Math.max(i,10),t.offsetHeight-16)}px`,r.style.left=""}}render(){return Ds`
247
246
  <div class="trigger">
248
247
  <slot name="trigger"></slot>
249
248
  </div>
@@ -554,7 +553,7 @@ const Zs=e=>(t,s)=>{void 0!==s?s.addInitializer(()=>{customElements.define(e,t)}
554
553
  `:null}
555
554
  </div>
556
555
  </div>
557
- `:Ds``}_onCancel(){this.dispatchEvent(new CustomEvent("cancel")),this.visible=!1}_onOk(){this.dispatchEvent(new CustomEvent("ok"))}_onMaskClick(){this._onCancel()}};jt([ei({type:Boolean})],ki.prototype,"visible",void 0),jt([ei({type:Boolean})],ki.prototype,"showFooter",void 0),jt([ei({type:String})],ki.prototype,"width",void 0),jt([ei({type:String})],ki.prototype,"title",void 0),ki=jt([Zs("my-modal-wrapper")],ki);class Ni{constructor(){this.roleData={agentInfo:()=>{if(!pi.agentInfo?.agent_no)throw new Error("请先登录")},requestInfo:e=>{if(!e.data)throw new Error("请传入参数")},changeDevice:e=>{if(!e)throw new Error('Parameter "device" is required');const{answer_devices:t}=pi.agentInfo;if(!t.split(",").map(e=>Number(e)).includes(e))throw new Error("当前设备不支持")},changeState:(e,t)=>{if(!e)throw new Error('Parameter "state" is required');if(!t)throw new Error('Parameter "state_name" is required');if(2===e&&"通话中"===t)throw new Error("当前状态不支持");if(![1,2].includes(e))throw new Error("当前状态不支持")}}}async _agentLogin(e){try{const s=await(t={agent_no:e},ui(`${hi}/agent/login`,t));pi.agentInfo=s.data}catch(e){throw console.log(e),new Error("登录失败")}var t}async changeDevice(e){try{this.roleData.agentInfo(),this.roleData.requestInfo(e);const{data:t,success:s}=e,{device:i}=t;this.roleData.changeDevice(i);const{agent_no:r}=pi.agentInfo;await(e=>ui(`${hi}/device/change`,e))({agent_no:r,answer_device:i}),dt.updateAnswerDevice(i),s?.({code:0,msg:"请求成功"})}catch(e){throw console.log(e),new Error("切换设备失败")}}async changeState(e){try{pi.autoStateTimer&&(clearTimeout(pi.autoStateTimer),pi.autoStateTimer=null),this.roleData.agentInfo(),this.roleData.requestInfo(e);const{data:t,success:s}=e,{state:i,state_name:r}=t;this.roleData.changeState(i,r);const{agent_no:n}=pi.agentInfo;await(e=>ui(`${hi}/state/change`,e))({agent_no:n,state_name:r,state:i}),i===et.IDLE?dt.updateActionConfigs(wi):i===et.BUSY&&dt.updateActionConfigs(yi),pi.stateObject={state:i,state_name:r},s?.({code:0,msg:"请求成功"})}catch(e){console.log(e)}}async getIdleAgentList(e){const{agent_no:t}=pi.agentInfo;try{this.roleData.agentInfo();const s=await(e=>ui(`${hi}/agent/free`,e))({agent_no:t});e.success?.(s)}catch(e){console.log(e)}}async getAgentState(e){try{const t=await ui(`${ci}/agent/statecfg/list`,{}),s=(t.data||[]).filter(e=>0===e.enable).filter(e=>0!==e.state&&3!==e.state).map(e=>({state:e.state,state_name:e.state_name})).reverse();e.success?.({...t,data:s})}catch(e){console.log(e)}}}class Hi{constructor({container:e,rttHTML:t,statusParams:s},i){this.VoiceSDKInstance=i,this.apiClient=new Ni,this.isOpenSelect=!1,this.statusParams={state:et.IDLE,statusName:"空闲"},this.consultShow=!1,this.modalRoot=null,this.agentStateData=[],this.devicesBodyShow=!1,this.handleNetworkInfoChange=e=>{this.rttHTML&&this.renderRtt(e.rttObject)},this.handleCallInfoChange=e=>{this.render()},this.hiddenSelect=()=>{if(!this.isOpenSelect)return;const e=document.querySelector(".ysyt-select");e.style.height="0px",setTimeout(()=>{e.style.padding="0px"},100),this.isOpenSelect=!1,this.render()},this.toggle=e=>{e.stopPropagation(),this.isOpenSelect=!this.isOpenSelect;const t=document.querySelector(".ysyt-select");this.isOpenSelect?(t.style.height=t.scrollHeight+"px",t.style.padding="4px 0px",this.render()):this.hiddenSelect()},this.changeStatus=async e=>{const{state:t,statusName:s}=e;await this.apiClient.changeState({data:{state:t,state_name:s},success:()=>{this.statusParams=e;const t=document.getElementById("my-timer");t?.reset(),this.hiddenSelect()}})},this.onChangeDevices=async e=>{await this.apiClient.changeDevice({data:{device:e},success:({code:t})=>{0===t&&(1!==e&&this.VoiceSDKInstance.destroyRtc(),ni("切换成功"),this.render())}})},this.ruleCall=async e=>{if(e)try{await this.VoiceSDKInstance.call_api.makeCall(e)}catch(e){console.error(e)}},this.onCall=()=>{const e=document.querySelector("my-input");this.ruleCall(e.value)},this.renderCallPopover=()=>Ds`
556
+ `:Ds``}_onCancel(){this.dispatchEvent(new CustomEvent("cancel")),this.visible=!1}_onOk(){this.dispatchEvent(new CustomEvent("ok"))}_onMaskClick(){this._onCancel()}};jt([ei({type:Boolean})],ki.prototype,"visible",void 0),jt([ei({type:Boolean})],ki.prototype,"showFooter",void 0),jt([ei({type:String})],ki.prototype,"width",void 0),jt([ei({type:String})],ki.prototype,"title",void 0),ki=jt([Zs("my-modal-wrapper")],ki);class Ni{constructor(){this.roleData={agentInfo:()=>{if(!pi.agentInfo?.agent_no)throw new Error("请先登录")},requestInfo:e=>{if(!e.data)throw new Error("请传入参数")},changeDevice:e=>{if(!e)throw new Error('Parameter "device" is required');const{answer_devices:t}=pi.agentInfo;if(!t.split(",").map(e=>Number(e)).includes(e))throw new Error("当前设备不支持")},changeState:(e,t)=>{if(!e)throw new Error('Parameter "state" is required');if(!t)throw new Error('Parameter "state_name" is required');if(2===e&&"通话中"===t)throw new Error("当前状态不支持");if(![1,2].includes(e))throw new Error("当前状态不支持")}}}async _agentLogin(e){try{const s=await(t={agent_no:e},ui(`${hi}/agent/login`,t));pi.agentInfo=s.data}catch(e){throw console.log(e),new Error("登录失败")}var t}async changeDevice(e){try{this.roleData.agentInfo(),this.roleData.requestInfo(e);const{data:t,success:s}=e,{device:i}=t;this.roleData.changeDevice(i);const{agent_no:r}=pi.agentInfo;await(e=>ui(`${hi}/device/change`,e))({agent_no:r,answer_device:i}),dt.updateAnswerDevice(i),s?.({code:0,msg:"请求成功"})}catch(e){throw console.log(e),new Error("切换设备失败")}}async changeState(e){try{pi.autoStateTimer&&(clearTimeout(pi.autoStateTimer),pi.autoStateTimer=null),this.roleData.agentInfo(),this.roleData.requestInfo(e);const{data:t,success:s}=e,{state:i,state_name:r}=t;this.roleData.changeState(i,r);const{agent_no:n}=pi.agentInfo;await(e=>ui(`${hi}/state/change`,e))({agent_no:n,state_name:r,state:i}),i===et.IDLE?dt.updateActionConfigs(wi):i===et.BUSY&&dt.updateActionConfigs(yi),pi.stateObject={state:i,state_name:r},s?.({code:0,msg:"请求成功"})}catch(e){console.log(e)}}async getIdleAgentList(e){const{agent_no:t}=pi.agentInfo;try{this.roleData.agentInfo();const s=await(e=>ui(`${hi}/agent/free`,e))({agent_no:t});e.success?.(s)}catch(e){console.log(e)}}async getAgentState(e){try{const t=await ui(`${ci}/agent/statecfg/list`,{}),s=(t.data||[]).filter(e=>0===e.enable).filter(e=>0!==e.state&&3!==e.state).map(e=>({state:e.state,state_name:e.state_name})).reverse();e.success?.({...t,data:s})}catch(e){console.log(e)}}}class Hi{constructor({container:e,rttHTML:t,statusParams:s},i){this.VoiceSDKInstance=i,this.apiClient=new Ni,this.isOpenSelect=!1,this.statusParams={state:et.IDLE,statusName:"空闲"},this.consultShow=!1,this.modalRoot=null,this.agentStateData=[],this.handleNetworkInfoChange=e=>{this.rttHTML&&this.renderRtt(e.rttObject)},this.handleCallInfoChange=e=>{this.render()},this.hiddenSelect=()=>{if(!this.isOpenSelect)return;const e=document.querySelector(".ysyt-select");e.style.height="0px",setTimeout(()=>{e.style.padding="0px"},100),this.isOpenSelect=!1,this.render()},this.toggle=e=>{e.stopPropagation(),this.isOpenSelect=!this.isOpenSelect;const t=document.querySelector(".ysyt-select");this.isOpenSelect?(t.style.height=t.scrollHeight+"px",t.style.padding="4px 0px",this.render()):this.hiddenSelect()},this.changeStatus=async e=>{const{state:t,statusName:s}=e;await this.apiClient.changeState({data:{state:t,state_name:s},success:()=>{this.statusParams=e;const t=document.getElementById("my-timer");t?.reset(),this.hiddenSelect()}})},this.onChangeDevices=async e=>{await this.apiClient.changeDevice({data:{device:e},success:({code:t})=>{0===t&&(1!==e&&this.VoiceSDKInstance.destroyRtc(),ni("切换成功"),this.render())}})},this.ruleCall=async e=>{if(e)try{await this.VoiceSDKInstance.call_api.makeCall(e)}catch(e){console.error(e)}},this.onCall=()=>{const e=document.querySelector("my-input");this.ruleCall(e.value)},this.renderCallPopover=()=>Ds`
558
557
  <my-popover>
559
558
  <div slot="trigger">
560
559
  <my-tooltip content="拨打">
@@ -659,28 +658,16 @@ const Zs=e=>(t,s)=>{void 0!==s?s.addInitializer(()=>{customElements.define(e,t)}
659
658
  </div>`}
660
659
  </div>
661
660
  </my-modal-wrapper>
662
- `;Ws(i,this.modalRoot)}})}catch(e){oi(e)}}getActionConfigs(){const{show_satisfaction:e}=pi.agentInfo,t=dt.get("isHold"),s=dt.get("isMuted"),i=dt.get("actionConfigs").filter(i=>(0!==e||"satisfaction"!==i)&&(!(!t&&"unhold"===i)&&((!t||"hold"!==i)&&((!s||"mute"!==i)&&!(!s&&"unmute"===i)))));return[{render:this.renderCallPopover,type:"call_number"},{render:this.renderAnswer,type:"answer"},{render:this.renderReject,type:"reject"},{render:this.renderHangup,type:"hangup"},{render:this.renderDialer,type:"dtmf"},{render:this.renderUnhold,type:"unhold"},{render:this.renderHold,type:"hold"},{render:this.renderMute,type:"mute"},{render:this.renderUnmute,type:"unmute"},{render:this.renderSatisfaction,type:"satisfaction"},{render:this.renderConsult,type:"consult"},{render:this.renderTransfer,type:"transfer"},{render:this.renderConsultTransfer,type:"consult_transfer"}].filter(({type:e})=>i.includes(e))}devicesMap(e){return{1:Ds`
663
- <div style="display: flex; align-items: center; gap: 8px;" @click="${()=>e&&this.onChangeDevices(1)}">
664
- <img src="${"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAC0AAAAtCAYAAAA6GuKaAAAAAXNSR0IArs4c6QAAAjhJREFUaEPtmM1WwjAQhWeAF0I34kZ5MuDJqBtxo7wQEE9CkzNNk8yktIl4YKOHRvPl9s5PBuEOP3iHzPCALvXWxEq/HBfvGmp2AfPz8/m0LQXp78NCa1gEtQF1hbUfVLirBZ6EXh3neweL0CjAnVZaodpoeIW4/lqemtKKB6E76rawFM48V2oPCM1heV7/CWircMoCr9+LrVa8hk16SufArH7mqoZNboKuZZMetLXG4enMZhatsl1fMij/F7RUuZwYGCvLRJWWQDtPA4DUTmOARwORg6bApdNeD1qaEWy6Kw2s31QwQxigRLWr4eNO3xPyGJfGLDRnoTH8G/of8d5DqX0MijvUVLCuwwxtwPmae14FWm/K+bZW3xENRKtUCsweqkZ7muwvODBJCzuFVdimiAu6GvmaheZKdY3KyELToIz5Nxe8d1lGaPCCH9KLsgia9s2xsk3BU8HprzOeb2/60pZADC0Bp2tMagqMGULBawJ+pt6k8FnQUhu4rNOmDg1vBG3BYorSv0upngXd8XdESZvi9AHpjMSlPmbs4I8vQiOKbOgccP8Alxk00uFOqkYMgh4CPqTIxFrkwdAlwCeBdj0KmflJ0xanfKphu0lpunEnY2QWi+BFJDG9Gg3a2cXLtznBZ+G5tnhUaH9TqqDUNvSNxcYSk0B34Iny5vvWOnaNfhP6d5PTydrU/XNS6F6h8Q8QMnNgHu4vKwLtb2qrJf3eKi4pPlWguXTHPX9AcwqN9fwulf4FD/s5TOGFiLYAAAAASUVORK5CYII="}" width="16" alt="" /><span style="font-size: 14px">软电话</span>
665
- </div>
666
- `,2:Ds`
667
- <div style="display: flex; align-items: center; gap: 8px;" @click="${()=>e&&this.onChangeDevices(2)}">
668
- <img src="${"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAC0AAAAtCAYAAAA6GuKaAAAAAXNSR0IArs4c6QAAAWtJREFUaEPtWdFNAzEMdW6Ewgo3BzBOYYi2Q0DHKcxxK0BHaNA7cIVEVD0n8Uck31dVOfbLyzvn9JxkwCcNiFmqQd8fl8eWDX9u5/fa9WbQm9dlnyZ5yFmaQF8BZzmcX+a9ZQMm0HfH5QSwKcnKUr7Ih6XYv9gkO/yHfF/b+YnNRYMGw4IiFczcAlOTlwf9tmQUPz/P9BqWOZwgYlm2aQAbgO7Msm5KZccSQoFGp7hkOUF7SeTAMsjGZZEd3hUX0CyI2jgX0GC6uWMUdqQt1AX0kJoO0H9k4to9gulgutCS9HIJeYQ8Qh7cV0j0aeUpukdBMSGPkMeNRhLyCHmEPIibdujLJcyawgm7+R7T9GPz9nx8bTHSgNQpAev2u1wuYBWuKWt+q+fMxruBtnjIVqN8tZEN3jdl9a5MjzgJAHA9RvzWuUvrC6kzHHYKsNa2Fr0ybl1Ysnh/rWPX6VYHnF1SmJnuUrUxyZCgvwFf6/M9kuThSwAAAABJRU5ErkJggg=="}" width="16" alt="" /><span style="font-size: 14px">手机模式</span>
669
- </div>
670
- `,3:Ds`
671
- <div style="display: flex; align-items: center; gap: 8px;" @click="${()=>e&&this.onChangeDevices(3)}">
672
- <img src="${"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAC0AAAAtCAYAAAA6GuKaAAAAAXNSR0IArs4c6QAAAq5JREFUaEPtmWFywiAQhcEr6Als79F6LdsZdab1WsZ7tJ7AXiF0lmYzC9mFDUGrM/qrmrB8PB7LQq25w4+9Q2bzgL7WrD2UvhmlF8/vr865jXXueD7tt1PAIBZtf/76aPA7PKPf4Xf6Pn2WtMdiud46YzZ9R9Y2P9+fqxLw+dPbwTgXQNvZbIUw8+XaGRJ/0LcxkDV2IJwIHTSytuk7LADnAGDgCOFns20P8NvPae+ZuEFiGxaadtIHpqqPBPcqEsh4plLQg/6tbVhoqZNYfY1VKBC1AwUfBf03+PDDBQg6KFCcTjUoB/Hoos7ag9gT2g+hESphgbGKUygUAKcds4TK0x1TEbTvqEBxaANtMSOhXZJKg4edO5rZrMFMUwxdCk4zgyZ70BkhsxR5WmEPyeOphUbboBXqQTM5M7eZ4ELjVPHKdikviEM3kkSeVilNO5GUE5Xudqx4kANoZpHDO8Hi7GZcD41bbmYT4Tah3KzUeM7viEqL5GxRA5CLIdYe/a5IiprBtHczorFRzQHI0AqL9DvdyFpk6gDkKo9YRMoKuS1/KpzUXl1PSxbIVXCXAM+eEft0JVjgPzJIFjooLYU8rAWvdXTLQsc1hmgTcpzi1kDNo5sKmhY58LdYY0RnSqydnbUv9Lg25ejm+9culKAm1tbaUfAaR7dR0HGxTk/O3MC9HUDh7mOt3QVXBgX1uFia5pQvKf6lmKWx1PaQKruc4pcQoQg6ziipxZmDHsRSlATF0AOPJ+41aoNPgu7BndtgGpPqlLHgqTiToREm3jxK4TWVYzVozuddTvWXhjeptJhdME/DzRK5u4gHEd9CpQZaVekYRLothTQZvEuugDW2uih04Hdafwhe0R7brgIdWAf+G9C2weV6yjbc+K4OrVmQuXce0DmFaj2/S6V/Ae/pt8oTAp/jAAAAAElFTkSuQmCC"}" width="16" alt="" /><span style="font-size: 14px">SIP话机</span>
673
- </div>
674
- `}}async render(){const{displayText:e,answerDevice:t}=dt.getState(),{answer_devices:s}=pi.agentInfo,i=(s||"").split(","),r=this.getActionConfigs(),n={...vi},{statusColor:o}=n,a=document.querySelector("head");if(a){const e=Ds`
661
+ `;Ws(i,this.modalRoot)}})}catch(e){oi(e)}}getActionConfigs(){const{show_satisfaction:e}=pi.agentInfo,t=dt.get("isHold"),s=dt.get("isMuted"),i=dt.get("actionConfigs").filter(i=>(0!==e||"satisfaction"!==i)&&(!(!t&&"unhold"===i)&&((!t||"hold"!==i)&&((!s||"mute"!==i)&&!(!s&&"unmute"===i)))));return[{render:this.renderCallPopover,type:"call_number"},{render:this.renderAnswer,type:"answer"},{render:this.renderReject,type:"reject"},{render:this.renderHangup,type:"hangup"},{render:this.renderDialer,type:"dtmf"},{render:this.renderUnhold,type:"unhold"},{render:this.renderHold,type:"hold"},{render:this.renderMute,type:"mute"},{render:this.renderUnmute,type:"unmute"},{render:this.renderSatisfaction,type:"satisfaction"},{render:this.renderConsult,type:"consult"},{render:this.renderTransfer,type:"transfer"},{render:this.renderConsultTransfer,type:"consult_transfer"}].filter(({type:e})=>i.includes(e))}async render(){const{displayText:e,answerDevice:t}=dt.getState(),{default_device:s,answer_devices:i,show_satisfaction:r}=pi.agentInfo,n=(i||"").split(","),o=this.getActionConfigs(),a={...vi},{statusColor:c}=a,h=document.querySelector("head");if(h){const e=Ds`
675
662
  <style>
676
663
  .ysyt-phone-body {
677
- background: ${o[this.statusParams.state]};
664
+ background: ${c[this.statusParams.state]};
678
665
  }
679
666
  .ysyt-action-body {
680
- border-bottom: 1px solid ${o[this.statusParams.state]};
667
+ border-bottom: 1px solid ${c[this.statusParams.state]};
681
668
  }
682
669
  </style>
683
- `;Ws(e,a)}const c=Ds`
670
+ `;Ws(e,h)}const d=Ds`
684
671
  <i class="ysyt icon-shang select-icon" style="${this.isOpenSelect?"display: block;":"display: none;"}"></i>
685
672
  <div
686
673
  class="ysyt-select"
@@ -697,21 +684,37 @@ const Zs=e=>(t,s)=>{void 0!==s?s.addInitializer(()=>{customElements.define(e,t)}
697
684
  `)}
698
685
  </div>
699
686
  </div>
700
- `,h=Ds`
687
+ `,l=Ds`
701
688
  <div id="ysyt-body">
702
- <div
703
- id="ysyt-devices-body"
704
- @mouseenter="${()=>{this.devicesBodyShow=!0,this.render()}}"
705
- @mouseleave="${()=>{this.devicesBodyShow=!1,this.render()}}"
706
- >
707
- <div class="ysyt-devices-select-title">${this.devicesMap(!1)[t]}</div>
708
- ${this.devicesBodyShow?Ds`
709
- <div class="ysyt-devices-select-body">
710
- ${i.includes("1")?this.devicesMap(!0)[1]:""}
711
- ${i.includes("2")?this.devicesMap(!0)[2]:""}
712
- ${i.includes("3")?this.devicesMap(!0)[3]:""}
713
- </div>
714
- `:""}
689
+ <div id="ysyt-devices-body">
690
+ <my-select
691
+ width="100px"
692
+ value="${String(s)}"
693
+ placeholder=""
694
+ @change=${e=>this.onChangeDevices(Number(e.detail.value))}
695
+ >
696
+ ${n.includes("1")?Ds`
697
+ <select-option value="1">
698
+ <div style="display: flex; align-items: center; gap: 8px;">
699
+ <img src="${"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAC0AAAAtCAYAAAA6GuKaAAAAAXNSR0IArs4c6QAAAjhJREFUaEPtmM1WwjAQhWeAF0I34kZ5MuDJqBtxo7wQEE9CkzNNk8yktIl4YKOHRvPl9s5PBuEOP3iHzPCALvXWxEq/HBfvGmp2AfPz8/m0LQXp78NCa1gEtQF1hbUfVLirBZ6EXh3neweL0CjAnVZaodpoeIW4/lqemtKKB6E76rawFM48V2oPCM1heV7/CWircMoCr9+LrVa8hk16SufArH7mqoZNboKuZZMetLXG4enMZhatsl1fMij/F7RUuZwYGCvLRJWWQDtPA4DUTmOARwORg6bApdNeD1qaEWy6Kw2s31QwQxigRLWr4eNO3xPyGJfGLDRnoTH8G/of8d5DqX0MijvUVLCuwwxtwPmae14FWm/K+bZW3xENRKtUCsweqkZ7muwvODBJCzuFVdimiAu6GvmaheZKdY3KyELToIz5Nxe8d1lGaPCCH9KLsgia9s2xsk3BU8HprzOeb2/60pZADC0Bp2tMagqMGULBawJ+pt6k8FnQUhu4rNOmDg1vBG3BYorSv0upngXd8XdESZvi9AHpjMSlPmbs4I8vQiOKbOgccP8Alxk00uFOqkYMgh4CPqTIxFrkwdAlwCeBdj0KmflJ0xanfKphu0lpunEnY2QWi+BFJDG9Gg3a2cXLtznBZ+G5tnhUaH9TqqDUNvSNxcYSk0B34Iny5vvWOnaNfhP6d5PTydrU/XNS6F6h8Q8QMnNgHu4vKwLtb2qrJf3eKi4pPlWguXTHPX9AcwqN9fwulf4FD/s5TOGFiLYAAAAASUVORK5CYII="}" width="16" alt="" /><span style="font-size: 14px">软电话</span>
700
+ </div>
701
+ </select-option>
702
+ `:""}
703
+ ${n.includes("2")?Ds`
704
+ <select-option value="2">
705
+ <div style="display: flex; align-items: center; gap: 8px;">
706
+ <img src="${"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAC0AAAAtCAYAAAA6GuKaAAAAAXNSR0IArs4c6QAAAWtJREFUaEPtWdFNAzEMdW6Ewgo3BzBOYYi2Q0DHKcxxK0BHaNA7cIVEVD0n8Uck31dVOfbLyzvn9JxkwCcNiFmqQd8fl8eWDX9u5/fa9WbQm9dlnyZ5yFmaQF8BZzmcX+a9ZQMm0HfH5QSwKcnKUr7Ih6XYv9gkO/yHfF/b+YnNRYMGw4IiFczcAlOTlwf9tmQUPz/P9BqWOZwgYlm2aQAbgO7Msm5KZccSQoFGp7hkOUF7SeTAMsjGZZEd3hUX0CyI2jgX0GC6uWMUdqQt1AX0kJoO0H9k4to9gulgutCS9HIJeYQ8Qh7cV0j0aeUpukdBMSGPkMeNRhLyCHmEPIibdujLJcyawgm7+R7T9GPz9nx8bTHSgNQpAev2u1wuYBWuKWt+q+fMxruBtnjIVqN8tZEN3jdl9a5MjzgJAHA9RvzWuUvrC6kzHHYKsNa2Fr0ybl1Ysnh/rWPX6VYHnF1SmJnuUrUxyZCgvwFf6/M9kuThSwAAAABJRU5ErkJggg=="}" width="16" alt="" /><span style="font-size: 14px">手机模式</span>
707
+ </div>
708
+ </select-option>
709
+ `:""}
710
+ ${n.includes("3")?Ds`
711
+ <select-option value="3">
712
+ <div style="display: flex; align-items: center; gap: 8px;">
713
+ <img src="${"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAC0AAAAtCAYAAAA6GuKaAAAAAXNSR0IArs4c6QAAAq5JREFUaEPtmWFywiAQhcEr6Als79F6LdsZdab1WsZ7tJ7AXiF0lmYzC9mFDUGrM/qrmrB8PB7LQq25w4+9Q2bzgL7WrD2UvhmlF8/vr865jXXueD7tt1PAIBZtf/76aPA7PKPf4Xf6Pn2WtMdiud46YzZ9R9Y2P9+fqxLw+dPbwTgXQNvZbIUw8+XaGRJ/0LcxkDV2IJwIHTSytuk7LADnAGDgCOFns20P8NvPae+ZuEFiGxaadtIHpqqPBPcqEsh4plLQg/6tbVhoqZNYfY1VKBC1AwUfBf03+PDDBQg6KFCcTjUoB/Hoos7ag9gT2g+hESphgbGKUygUAKcds4TK0x1TEbTvqEBxaANtMSOhXZJKg4edO5rZrMFMUwxdCk4zgyZ70BkhsxR5WmEPyeOphUbboBXqQTM5M7eZ4ELjVPHKdikviEM3kkSeVilNO5GUE5Xudqx4kANoZpHDO8Hi7GZcD41bbmYT4Tah3KzUeM7viEqL5GxRA5CLIdYe/a5IiprBtHczorFRzQHI0AqL9DvdyFpk6gDkKo9YRMoKuS1/KpzUXl1PSxbIVXCXAM+eEft0JVjgPzJIFjooLYU8rAWvdXTLQsc1hmgTcpzi1kDNo5sKmhY58LdYY0RnSqydnbUv9Lg25ejm+9culKAm1tbaUfAaR7dR0HGxTk/O3MC9HUDh7mOt3QVXBgX1uFia5pQvKf6lmKWx1PaQKruc4pcQoQg6ziipxZmDHsRSlATF0AOPJ+41aoNPgu7BndtgGpPqlLHgqTiToREm3jxK4TWVYzVozuddTvWXhjeptJhdME/DzRK5u4gHEd9CpQZaVekYRLothTQZvEuugDW2uih04Hdafwhe0R7brgIdWAf+G9C2weV6yjbc+K4OrVmQuXce0DmFaj2/S6V/Ae/pt8oTAp/jAAAAAElFTkSuQmCC"}" width="16" alt="" /><span style="font-size: 14px">SIP话机</span>
714
+ </div>
715
+ </select-option>
716
+ `:""}
717
+ </my-select>
715
718
  </div>
716
719
  <div class="ysyt-phone-body">
717
720
  <div class="ysyt-title" @click="${this.toggle}">
@@ -724,14 +727,14 @@ const Zs=e=>(t,s)=>{void 0!==s?s.addInitializer(()=>{customElements.define(e,t)}
724
727
  <span>${t}</span>
725
728
  `:void 0)(this.statusParams)}
726
729
  <i class="ysyt icon-xia"></i>
727
- ${c}
730
+ ${d}
728
731
  `}
729
732
  </div>
730
733
  <timer-component id="my-timer"></timer-component>
731
734
  </div>
732
- <div class="ysyt-action-body">${r.map(e=>e.render())}</div>
735
+ <div class="ysyt-action-body">${o.map(e=>e.render())}</div>
733
736
  </div>
734
- `;Ws(h,this.container)}async renderRtt(e){const{outCallIsAnswer:t}=dt.getState(),s=e?.rtt||500,i=Ds`
737
+ `;Ws(l,this.container)}async renderRtt(e){const{outCallIsAnswer:t}=dt.getState(),s=e?.rtt||500,i=Ds`
735
738
  <my-popover triggerType="hover">
736
739
  <div slot="trigger" id="wifi-body">
737
740
  ${s>=250?Ds`<img src="${"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAC0AAAAtCAYAAAA6GuKaAAAAAXNSR0IArs4c6QAAAlVJREFUaEPtmGFuwyAMhU2PtU1qOVmbk5FKW4+1TCawkcQYG2i3aM2fqirBn83zc1IDO7zMDpnhCf2oU+teaefcKYW31o69k6mGTuDOAWoBmwGNCVwBYKxNSAUdQDWQkiIPuMhae5EsxjUi6ARWUk1pbGrdIIFnoZWwqXbx+NPrqJAQLmXhSWghLELGo1U1m3MuSiFKLXc6JPwGOmyY28yD1jYQRSZIYAP+DV2obnfYdQIF+EV8Dx2AHVGJu8Mq4X3VDSMHUSe3WAV3L8eF0BNxs9XoNpwU2mF0CdwSv6fDxIeRWFrkyYEjNMoi+q9YDkKHyRUT41wlCRBxhqhptCDRWC24S41aRDIMcT2jaCKGZsXESr6aQmM1NRNUBK8Z46mE1tWMumX9W+DHxUkYA7eMcbH+maFCnVxx3xI05SzFTTXCZnok62BZ6MxmYt11AM/G4qCxidIpqfJuDXSm0fWVTgz+pBk0E7wFx/gMn4fRwLv4KTC+EXExxZbHVW6ClwuAOQJMjMWZEWC6GriJ31ByMZug56pOZx6WDD20wFdDT/DqKmDTDKrBq6BnOVDTESXgZ5Z/owGIus5Jx4wGPqy2aWuhV/6NsGbgGm6Wkk9iMVAM3NQM6huwKj+V1jfX6pSqJFIFrT1Oaj1WXmOF6R6/Bt2S+N2gWypZSqg7NOEsVbrlwLtC560QuoL3hqYeZWfnrrC2u4zxdNPgw9R/J2HZwda6xRr+f1d6OXQ2B/t3NU2D1z1fPMw9thrHBpS/AJT8Of7eVdPSoK3rntCtFZTev8tKfwHUBxjzil9I5gAAAABJRU5ErkJggg=="}" alt="" />`:""}
@@ -173,6 +173,7 @@ const Xs=e=>(t,s)=>{void 0!==s?s.addInitializer(()=>{customElements.define(e,t)}
173
173
 
174
174
  .trigger {
175
175
  display: inline-block;
176
+ cursor: pointer;
176
177
  }
177
178
 
178
179
  .popover {
@@ -187,6 +188,8 @@ const Xs=e=>(t,s)=>{void 0!==s?s.addInitializer(()=>{customElements.define(e,t)}
187
188
  opacity 0.2s ease,
188
189
  transform 0.2s ease;
189
190
  pointer-events: none;
191
+ min-width: 100px;
192
+ padding: 0px;
190
193
  }
191
194
 
192
195
  .popover.visible {
@@ -216,7 +219,6 @@ const Xs=e=>(t,s)=>{void 0!==s?s.addInitializer(()=>{customElements.define(e,t)}
216
219
 
217
220
  .arrow[data-placement='top'] {
218
221
  bottom: -6px;
219
- left: 10px;
220
222
  border-width: 6px 6px 0 6px;
221
223
  border-color: #fff transparent transparent transparent;
222
224
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.05);
@@ -224,26 +226,23 @@ const Xs=e=>(t,s)=>{void 0!==s?s.addInitializer(()=>{customElements.define(e,t)}
224
226
 
225
227
  .arrow[data-placement='bottom'] {
226
228
  top: -6px;
227
- left: 10px;
228
229
  border-width: 0 6px 6px 6px;
229
230
  border-color: transparent transparent #fff transparent;
230
231
  box-shadow: 0 -2px 5px rgba(0, 0, 0, 0.05);
231
232
  }
232
233
 
233
234
  .arrow[data-placement='left'] {
234
- top: 10px;
235
235
  right: -6px;
236
236
  border-width: 6px 0 6px 6px;
237
237
  border-color: transparent transparent transparent #fff;
238
238
  }
239
239
 
240
240
  .arrow[data-placement='right'] {
241
- top: 10px;
242
241
  left: -6px;
243
242
  border-width: 6px 6px 6px 0;
244
243
  border-color: transparent #fff transparent transparent;
245
244
  }
246
- `}firstUpdated(){this.triggerEl=this.renderRoot.querySelector(".trigger"),this.popoverEl=this.renderRoot.querySelector(".popover"),"click"===this.triggerType?(this.triggerEl.addEventListener("click",this.onTogglePopover),document.addEventListener("click",this.onOutsideClick)):(this.triggerEl.addEventListener("mouseenter",this.showPopover),this.triggerEl.addEventListener("mouseleave",this.hidePopoverDelayed),this.popoverEl.addEventListener("mouseenter",this.clearHideTimer),this.popoverEl.addEventListener("mouseleave",this.hidePopoverDelayed))}disconnectedCallback(){super.disconnectedCallback(),document.removeEventListener("click",this.onOutsideClick)}updatePosition(){const e=this.triggerEl.getBoundingClientRect(),t=this.popoverEl;let s=0,i=0;switch(this.placement){case"top":s=e.top-t.offsetHeight-8,i=e.left;break;case"bottom":s=e.bottom+8,i=e.left;break;case"left":s=e.top,i=e.left-t.offsetWidth-8;break;case"right":s=e.top,i=e.right+8}t.style.top=`${s}px`,t.style.left=`${i}px`,t.setAttribute("data-placement",this.placement)}render(){return xs`
245
+ `}firstUpdated(){this.triggerEl=this.renderRoot.querySelector(".trigger"),this.popoverEl=this.renderRoot.querySelector(".popover"),"click"===this.triggerType?(this.triggerEl.addEventListener("click",this.onTogglePopover),document.addEventListener("click",this.onOutsideClick)):(this.triggerEl.addEventListener("mouseenter",this.showPopover),this.triggerEl.addEventListener("mouseleave",this.hidePopoverDelayed),this.popoverEl.addEventListener("mouseenter",this.clearHideTimer),this.popoverEl.addEventListener("mouseleave",this.hidePopoverDelayed))}disconnectedCallback(){super.disconnectedCallback(),document.removeEventListener("click",this.onOutsideClick),this.triggerEl&&("click"===this.triggerType?(this.triggerEl.removeEventListener("click",this.onTogglePopover),document.removeEventListener("click",this.onOutsideClick)):(this.triggerEl.removeEventListener("mouseenter",this.showPopover),this.triggerEl.removeEventListener("mouseleave",this.hidePopoverDelayed),this.popoverEl.removeEventListener("mouseenter",this.clearHideTimer),this.popoverEl.removeEventListener("mouseleave",this.hidePopoverDelayed)))}updatePosition(){const e=this.triggerEl.getBoundingClientRect(),t=this.popoverEl;let s=0,i=0;switch(this.placement){case"top":s=e.top-t.offsetHeight-8,i=e.left+(e.width-t.offsetWidth)/2;break;case"bottom":s=e.bottom+8,i=e.left+(e.width-t.offsetWidth)/2;break;case"left":s=e.top+(e.height-t.offsetHeight)/2,i=e.left-t.offsetWidth-8;break;case"right":s=e.top+(e.height-t.offsetHeight)/2,i=e.right+8}t.style.top=`${s}px`,t.style.left=`${i}px`,t.setAttribute("data-placement",this.placement);const r=this.renderRoot.querySelector(".arrow");if(r)if("top"===this.placement||"bottom"===this.placement){const s=e.left+e.width/2-i-6;r.style.left=`${Math.min(Math.max(s,10),t.offsetWidth-16)}px`,r.style.top=""}else{const i=e.top+e.height/2-s-6;r.style.top=`${Math.min(Math.max(i,10),t.offsetHeight-16)}px`,r.style.left=""}}render(){return xs`
247
246
  <div class="trigger">
248
247
  <slot name="trigger"></slot>
249
248
  </div>
@@ -554,7 +553,7 @@ const Xs=e=>(t,s)=>{void 0!==s?s.addInitializer(()=>{customElements.define(e,t)}
554
553
  `:null}
555
554
  </div>
556
555
  </div>
557
- `:xs``}_onCancel(){this.dispatchEvent(new CustomEvent("cancel")),this.visible=!1}_onOk(){this.dispatchEvent(new CustomEvent("ok"))}_onMaskClick(){this._onCancel()}};Bt([ti({type:Boolean})],Ni.prototype,"visible",void 0),Bt([ti({type:Boolean})],Ni.prototype,"showFooter",void 0),Bt([ti({type:String})],Ni.prototype,"width",void 0),Bt([ti({type:String})],Ni.prototype,"title",void 0),Ni=Bt([Xs("my-modal-wrapper")],Ni);class Hi{constructor(){this.roleData={agentInfo:()=>{if(!fi.agentInfo?.agent_no)throw new Error("请先登录")},requestInfo:e=>{if(!e.data)throw new Error("请传入参数")},changeDevice:e=>{if(!e)throw new Error('Parameter "device" is required');const{answer_devices:t}=fi.agentInfo;if(!t.split(",").map(e=>Number(e)).includes(e))throw new Error("当前设备不支持")},changeState:(e,t)=>{if(!e)throw new Error('Parameter "state" is required');if(!t)throw new Error('Parameter "state_name" is required');if(2===e&&"通话中"===t)throw new Error("当前状态不支持");if(![1,2].includes(e))throw new Error("当前状态不支持")}}}async _agentLogin(e){try{const s=await(t={agent_no:e},pi(`${di}/agent/login`,t));fi.agentInfo=s.data}catch(e){throw console.log(e),new Error("登录失败")}var t}async changeDevice(e){try{this.roleData.agentInfo(),this.roleData.requestInfo(e);const{data:t,success:s}=e,{device:i}=t;this.roleData.changeDevice(i);const{agent_no:r}=fi.agentInfo;await(e=>pi(`${di}/device/change`,e))({agent_no:r,answer_device:i}),dt.updateAnswerDevice(i),s?.({code:0,msg:"请求成功"})}catch(e){throw console.log(e),new Error("切换设备失败")}}async changeState(e){try{fi.autoStateTimer&&(clearTimeout(fi.autoStateTimer),fi.autoStateTimer=null),this.roleData.agentInfo(),this.roleData.requestInfo(e);const{data:t,success:s}=e,{state:i,state_name:r}=t;this.roleData.changeState(i,r);const{agent_no:n}=fi.agentInfo;await(e=>pi(`${di}/state/change`,e))({agent_no:n,state_name:r,state:i}),i===et.IDLE?dt.updateActionConfigs(yi):i===et.BUSY&&dt.updateActionConfigs(bi),fi.stateObject={state:i,state_name:r},s?.({code:0,msg:"请求成功"})}catch(e){console.log(e)}}async getIdleAgentList(e){const{agent_no:t}=fi.agentInfo;try{this.roleData.agentInfo();const s=await(e=>pi(`${di}/agent/free`,e))({agent_no:t});e.success?.(s)}catch(e){console.log(e)}}async getAgentState(e){try{const t=await pi(`${hi}/agent/statecfg/list`,{}),s=(t.data||[]).filter(e=>0===e.enable).filter(e=>0!==e.state&&3!==e.state).map(e=>({state:e.state,state_name:e.state_name})).reverse();e.success?.({...t,data:s})}catch(e){console.log(e)}}}class Pi{constructor({container:e,rttHTML:t,statusParams:s},i){this.VoiceSDKInstance=i,this.apiClient=new Hi,this.isOpenSelect=!1,this.statusParams={state:et.IDLE,statusName:"空闲"},this.consultShow=!1,this.modalRoot=null,this.agentStateData=[],this.devicesBodyShow=!1,this.handleNetworkInfoChange=e=>{this.rttHTML&&this.renderRtt(e.rttObject)},this.handleCallInfoChange=e=>{this.render()},this.hiddenSelect=()=>{if(!this.isOpenSelect)return;const e=document.querySelector(".ysyt-select");e.style.height="0px",setTimeout(()=>{e.style.padding="0px"},100),this.isOpenSelect=!1,this.render()},this.toggle=e=>{e.stopPropagation(),this.isOpenSelect=!this.isOpenSelect;const t=document.querySelector(".ysyt-select");this.isOpenSelect?(t.style.height=t.scrollHeight+"px",t.style.padding="4px 0px",this.render()):this.hiddenSelect()},this.changeStatus=async e=>{const{state:t,statusName:s}=e;await this.apiClient.changeState({data:{state:t,state_name:s},success:()=>{this.statusParams=e;const t=document.getElementById("my-timer");t?.reset(),this.hiddenSelect()}})},this.onChangeDevices=async e=>{await this.apiClient.changeDevice({data:{device:e},success:({code:t})=>{0===t&&(1!==e&&this.VoiceSDKInstance.destroyRtc(),oi("切换成功"),this.render())}})},this.ruleCall=async e=>{if(e)try{await this.VoiceSDKInstance.call_api.makeCall(e)}catch(e){console.error(e)}},this.onCall=()=>{const e=document.querySelector("my-input");this.ruleCall(e.value)},this.renderCallPopover=()=>xs`
556
+ `:xs``}_onCancel(){this.dispatchEvent(new CustomEvent("cancel")),this.visible=!1}_onOk(){this.dispatchEvent(new CustomEvent("ok"))}_onMaskClick(){this._onCancel()}};Bt([ti({type:Boolean})],Ni.prototype,"visible",void 0),Bt([ti({type:Boolean})],Ni.prototype,"showFooter",void 0),Bt([ti({type:String})],Ni.prototype,"width",void 0),Bt([ti({type:String})],Ni.prototype,"title",void 0),Ni=Bt([Xs("my-modal-wrapper")],Ni);class Hi{constructor(){this.roleData={agentInfo:()=>{if(!fi.agentInfo?.agent_no)throw new Error("请先登录")},requestInfo:e=>{if(!e.data)throw new Error("请传入参数")},changeDevice:e=>{if(!e)throw new Error('Parameter "device" is required');const{answer_devices:t}=fi.agentInfo;if(!t.split(",").map(e=>Number(e)).includes(e))throw new Error("当前设备不支持")},changeState:(e,t)=>{if(!e)throw new Error('Parameter "state" is required');if(!t)throw new Error('Parameter "state_name" is required');if(2===e&&"通话中"===t)throw new Error("当前状态不支持");if(![1,2].includes(e))throw new Error("当前状态不支持")}}}async _agentLogin(e){try{const s=await(t={agent_no:e},pi(`${di}/agent/login`,t));fi.agentInfo=s.data}catch(e){throw console.log(e),new Error("登录失败")}var t}async changeDevice(e){try{this.roleData.agentInfo(),this.roleData.requestInfo(e);const{data:t,success:s}=e,{device:i}=t;this.roleData.changeDevice(i);const{agent_no:r}=fi.agentInfo;await(e=>pi(`${di}/device/change`,e))({agent_no:r,answer_device:i}),dt.updateAnswerDevice(i),s?.({code:0,msg:"请求成功"})}catch(e){throw console.log(e),new Error("切换设备失败")}}async changeState(e){try{fi.autoStateTimer&&(clearTimeout(fi.autoStateTimer),fi.autoStateTimer=null),this.roleData.agentInfo(),this.roleData.requestInfo(e);const{data:t,success:s}=e,{state:i,state_name:r}=t;this.roleData.changeState(i,r);const{agent_no:n}=fi.agentInfo;await(e=>pi(`${di}/state/change`,e))({agent_no:n,state_name:r,state:i}),i===et.IDLE?dt.updateActionConfigs(yi):i===et.BUSY&&dt.updateActionConfigs(bi),fi.stateObject={state:i,state_name:r},s?.({code:0,msg:"请求成功"})}catch(e){console.log(e)}}async getIdleAgentList(e){const{agent_no:t}=fi.agentInfo;try{this.roleData.agentInfo();const s=await(e=>pi(`${di}/agent/free`,e))({agent_no:t});e.success?.(s)}catch(e){console.log(e)}}async getAgentState(e){try{const t=await pi(`${hi}/agent/statecfg/list`,{}),s=(t.data||[]).filter(e=>0===e.enable).filter(e=>0!==e.state&&3!==e.state).map(e=>({state:e.state,state_name:e.state_name})).reverse();e.success?.({...t,data:s})}catch(e){console.log(e)}}}class Pi{constructor({container:e,rttHTML:t,statusParams:s},i){this.VoiceSDKInstance=i,this.apiClient=new Hi,this.isOpenSelect=!1,this.statusParams={state:et.IDLE,statusName:"空闲"},this.consultShow=!1,this.modalRoot=null,this.agentStateData=[],this.handleNetworkInfoChange=e=>{this.rttHTML&&this.renderRtt(e.rttObject)},this.handleCallInfoChange=e=>{this.render()},this.hiddenSelect=()=>{if(!this.isOpenSelect)return;const e=document.querySelector(".ysyt-select");e.style.height="0px",setTimeout(()=>{e.style.padding="0px"},100),this.isOpenSelect=!1,this.render()},this.toggle=e=>{e.stopPropagation(),this.isOpenSelect=!this.isOpenSelect;const t=document.querySelector(".ysyt-select");this.isOpenSelect?(t.style.height=t.scrollHeight+"px",t.style.padding="4px 0px",this.render()):this.hiddenSelect()},this.changeStatus=async e=>{const{state:t,statusName:s}=e;await this.apiClient.changeState({data:{state:t,state_name:s},success:()=>{this.statusParams=e;const t=document.getElementById("my-timer");t?.reset(),this.hiddenSelect()}})},this.onChangeDevices=async e=>{await this.apiClient.changeDevice({data:{device:e},success:({code:t})=>{0===t&&(1!==e&&this.VoiceSDKInstance.destroyRtc(),oi("切换成功"),this.render())}})},this.ruleCall=async e=>{if(e)try{await this.VoiceSDKInstance.call_api.makeCall(e)}catch(e){console.error(e)}},this.onCall=()=>{const e=document.querySelector("my-input");this.ruleCall(e.value)},this.renderCallPopover=()=>xs`
558
557
  <my-popover>
559
558
  <div slot="trigger">
560
559
  <my-tooltip content="拨打">
@@ -659,28 +658,16 @@ const Xs=e=>(t,s)=>{void 0!==s?s.addInitializer(()=>{customElements.define(e,t)}
659
658
  </div>`}
660
659
  </div>
661
660
  </my-modal-wrapper>
662
- `;Ys(i,this.modalRoot)}})}catch(e){ai(e)}}getActionConfigs(){const{show_satisfaction:e}=fi.agentInfo,t=dt.get("isHold"),s=dt.get("isMuted"),i=dt.get("actionConfigs").filter(i=>(0!==e||"satisfaction"!==i)&&(!(!t&&"unhold"===i)&&((!t||"hold"!==i)&&((!s||"mute"!==i)&&!(!s&&"unmute"===i)))));return[{render:this.renderCallPopover,type:"call_number"},{render:this.renderAnswer,type:"answer"},{render:this.renderReject,type:"reject"},{render:this.renderHangup,type:"hangup"},{render:this.renderDialer,type:"dtmf"},{render:this.renderUnhold,type:"unhold"},{render:this.renderHold,type:"hold"},{render:this.renderMute,type:"mute"},{render:this.renderUnmute,type:"unmute"},{render:this.renderSatisfaction,type:"satisfaction"},{render:this.renderConsult,type:"consult"},{render:this.renderTransfer,type:"transfer"},{render:this.renderConsultTransfer,type:"consult_transfer"}].filter(({type:e})=>i.includes(e))}devicesMap(e){return{1:xs`
663
- <div style="display: flex; align-items: center; gap: 8px;" @click="${()=>e&&this.onChangeDevices(1)}">
664
- <img src="${"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAC0AAAAtCAYAAAA6GuKaAAAAAXNSR0IArs4c6QAAAjhJREFUaEPtmM1WwjAQhWeAF0I34kZ5MuDJqBtxo7wQEE9CkzNNk8yktIl4YKOHRvPl9s5PBuEOP3iHzPCALvXWxEq/HBfvGmp2AfPz8/m0LQXp78NCa1gEtQF1hbUfVLirBZ6EXh3neweL0CjAnVZaodpoeIW4/lqemtKKB6E76rawFM48V2oPCM1heV7/CWircMoCr9+LrVa8hk16SufArH7mqoZNboKuZZMetLXG4enMZhatsl1fMij/F7RUuZwYGCvLRJWWQDtPA4DUTmOARwORg6bApdNeD1qaEWy6Kw2s31QwQxigRLWr4eNO3xPyGJfGLDRnoTH8G/of8d5DqX0MijvUVLCuwwxtwPmae14FWm/K+bZW3xENRKtUCsweqkZ7muwvODBJCzuFVdimiAu6GvmaheZKdY3KyELToIz5Nxe8d1lGaPCCH9KLsgia9s2xsk3BU8HprzOeb2/60pZADC0Bp2tMagqMGULBawJ+pt6k8FnQUhu4rNOmDg1vBG3BYorSv0upngXd8XdESZvi9AHpjMSlPmbs4I8vQiOKbOgccP8Alxk00uFOqkYMgh4CPqTIxFrkwdAlwCeBdj0KmflJ0xanfKphu0lpunEnY2QWi+BFJDG9Gg3a2cXLtznBZ+G5tnhUaH9TqqDUNvSNxcYSk0B34Iny5vvWOnaNfhP6d5PTydrU/XNS6F6h8Q8QMnNgHu4vKwLtb2qrJf3eKi4pPlWguXTHPX9AcwqN9fwulf4FD/s5TOGFiLYAAAAASUVORK5CYII="}" width="16" alt="" /><span style="font-size: 14px">软电话</span>
665
- </div>
666
- `,2:xs`
667
- <div style="display: flex; align-items: center; gap: 8px;" @click="${()=>e&&this.onChangeDevices(2)}">
668
- <img src="${"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAC0AAAAtCAYAAAA6GuKaAAAAAXNSR0IArs4c6QAAAWtJREFUaEPtWdFNAzEMdW6Ewgo3BzBOYYi2Q0DHKcxxK0BHaNA7cIVEVD0n8Uck31dVOfbLyzvn9JxkwCcNiFmqQd8fl8eWDX9u5/fa9WbQm9dlnyZ5yFmaQF8BZzmcX+a9ZQMm0HfH5QSwKcnKUr7Ih6XYv9gkO/yHfF/b+YnNRYMGw4IiFczcAlOTlwf9tmQUPz/P9BqWOZwgYlm2aQAbgO7Msm5KZccSQoFGp7hkOUF7SeTAMsjGZZEd3hUX0CyI2jgX0GC6uWMUdqQt1AX0kJoO0H9k4to9gulgutCS9HIJeYQ8Qh7cV0j0aeUpukdBMSGPkMeNRhLyCHmEPIibdujLJcyawgm7+R7T9GPz9nx8bTHSgNQpAev2u1wuYBWuKWt+q+fMxruBtnjIVqN8tZEN3jdl9a5MjzgJAHA9RvzWuUvrC6kzHHYKsNa2Fr0ybl1Ysnh/rWPX6VYHnF1SmJnuUrUxyZCgvwFf6/M9kuThSwAAAABJRU5ErkJggg=="}" width="16" alt="" /><span style="font-size: 14px">手机模式</span>
669
- </div>
670
- `,3:xs`
671
- <div style="display: flex; align-items: center; gap: 8px;" @click="${()=>e&&this.onChangeDevices(3)}">
672
- <img src="${"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAC0AAAAtCAYAAAA6GuKaAAAAAXNSR0IArs4c6QAAAq5JREFUaEPtmWFywiAQhcEr6Als79F6LdsZdab1WsZ7tJ7AXiF0lmYzC9mFDUGrM/qrmrB8PB7LQq25w4+9Q2bzgL7WrD2UvhmlF8/vr865jXXueD7tt1PAIBZtf/76aPA7PKPf4Xf6Pn2WtMdiud46YzZ9R9Y2P9+fqxLw+dPbwTgXQNvZbIUw8+XaGRJ/0LcxkDV2IJwIHTSytuk7LADnAGDgCOFns20P8NvPae+ZuEFiGxaadtIHpqqPBPcqEsh4plLQg/6tbVhoqZNYfY1VKBC1AwUfBf03+PDDBQg6KFCcTjUoB/Hoos7ag9gT2g+hESphgbGKUygUAKcds4TK0x1TEbTvqEBxaANtMSOhXZJKg4edO5rZrMFMUwxdCk4zgyZ70BkhsxR5WmEPyeOphUbboBXqQTM5M7eZ4ELjVPHKdikviEM3kkSeVilNO5GUE5Xudqx4kANoZpHDO8Hi7GZcD41bbmYT4Tah3KzUeM7viEqL5GxRA5CLIdYe/a5IiprBtHczorFRzQHI0AqL9DvdyFpk6gDkKo9YRMoKuS1/KpzUXl1PSxbIVXCXAM+eEft0JVjgPzJIFjooLYU8rAWvdXTLQsc1hmgTcpzi1kDNo5sKmhY58LdYY0RnSqydnbUv9Lg25ejm+9culKAm1tbaUfAaR7dR0HGxTk/O3MC9HUDh7mOt3QVXBgX1uFia5pQvKf6lmKWx1PaQKruc4pcQoQg6ziipxZmDHsRSlATF0AOPJ+41aoNPgu7BndtgGpPqlLHgqTiToREm3jxK4TWVYzVozuddTvWXhjeptJhdME/DzRK5u4gHEd9CpQZaVekYRLothTQZvEuugDW2uih04Hdafwhe0R7brgIdWAf+G9C2weV6yjbc+K4OrVmQuXce0DmFaj2/S6V/Ae/pt8oTAp/jAAAAAElFTkSuQmCC"}" width="16" alt="" /><span style="font-size: 14px">SIP话机</span>
673
- </div>
674
- `}}async render(){const{displayText:e,answerDevice:t}=dt.getState(),{answer_devices:s}=fi.agentInfo,i=(s||"").split(","),r=this.getActionConfigs(),n={...wi},{statusColor:o}=n,a=document.querySelector("head");if(a){const e=xs`
661
+ `;Ys(i,this.modalRoot)}})}catch(e){ai(e)}}getActionConfigs(){const{show_satisfaction:e}=fi.agentInfo,t=dt.get("isHold"),s=dt.get("isMuted"),i=dt.get("actionConfigs").filter(i=>(0!==e||"satisfaction"!==i)&&(!(!t&&"unhold"===i)&&((!t||"hold"!==i)&&((!s||"mute"!==i)&&!(!s&&"unmute"===i)))));return[{render:this.renderCallPopover,type:"call_number"},{render:this.renderAnswer,type:"answer"},{render:this.renderReject,type:"reject"},{render:this.renderHangup,type:"hangup"},{render:this.renderDialer,type:"dtmf"},{render:this.renderUnhold,type:"unhold"},{render:this.renderHold,type:"hold"},{render:this.renderMute,type:"mute"},{render:this.renderUnmute,type:"unmute"},{render:this.renderSatisfaction,type:"satisfaction"},{render:this.renderConsult,type:"consult"},{render:this.renderTransfer,type:"transfer"},{render:this.renderConsultTransfer,type:"consult_transfer"}].filter(({type:e})=>i.includes(e))}async render(){const{displayText:e,answerDevice:t}=dt.getState(),{default_device:s,answer_devices:i,show_satisfaction:r}=fi.agentInfo,n=(i||"").split(","),o=this.getActionConfigs(),a={...wi},{statusColor:c}=a,h=document.querySelector("head");if(h){const e=xs`
675
662
  <style>
676
663
  .ysyt-phone-body {
677
- background: ${o[this.statusParams.state]};
664
+ background: ${c[this.statusParams.state]};
678
665
  }
679
666
  .ysyt-action-body {
680
- border-bottom: 1px solid ${o[this.statusParams.state]};
667
+ border-bottom: 1px solid ${c[this.statusParams.state]};
681
668
  }
682
669
  </style>
683
- `;Ys(e,a)}const c=xs`
670
+ `;Ys(e,h)}const d=xs`
684
671
  <i class="ysyt icon-shang select-icon" style="${this.isOpenSelect?"display: block;":"display: none;"}"></i>
685
672
  <div
686
673
  class="ysyt-select"
@@ -697,21 +684,37 @@ const Xs=e=>(t,s)=>{void 0!==s?s.addInitializer(()=>{customElements.define(e,t)}
697
684
  `)}
698
685
  </div>
699
686
  </div>
700
- `,h=xs`
687
+ `,l=xs`
701
688
  <div id="ysyt-body">
702
- <div
703
- id="ysyt-devices-body"
704
- @mouseenter="${()=>{this.devicesBodyShow=!0,this.render()}}"
705
- @mouseleave="${()=>{this.devicesBodyShow=!1,this.render()}}"
706
- >
707
- <div class="ysyt-devices-select-title">${this.devicesMap(!1)[t]}</div>
708
- ${this.devicesBodyShow?xs`
709
- <div class="ysyt-devices-select-body">
710
- ${i.includes("1")?this.devicesMap(!0)[1]:""}
711
- ${i.includes("2")?this.devicesMap(!0)[2]:""}
712
- ${i.includes("3")?this.devicesMap(!0)[3]:""}
713
- </div>
714
- `:""}
689
+ <div id="ysyt-devices-body">
690
+ <my-select
691
+ width="100px"
692
+ value="${String(s)}"
693
+ placeholder=""
694
+ @change=${e=>this.onChangeDevices(Number(e.detail.value))}
695
+ >
696
+ ${n.includes("1")?xs`
697
+ <select-option value="1">
698
+ <div style="display: flex; align-items: center; gap: 8px;">
699
+ <img src="${"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAC0AAAAtCAYAAAA6GuKaAAAAAXNSR0IArs4c6QAAAjhJREFUaEPtmM1WwjAQhWeAF0I34kZ5MuDJqBtxo7wQEE9CkzNNk8yktIl4YKOHRvPl9s5PBuEOP3iHzPCALvXWxEq/HBfvGmp2AfPz8/m0LQXp78NCa1gEtQF1hbUfVLirBZ6EXh3neweL0CjAnVZaodpoeIW4/lqemtKKB6E76rawFM48V2oPCM1heV7/CWircMoCr9+LrVa8hk16SufArH7mqoZNboKuZZMetLXG4enMZhatsl1fMij/F7RUuZwYGCvLRJWWQDtPA4DUTmOARwORg6bApdNeD1qaEWy6Kw2s31QwQxigRLWr4eNO3xPyGJfGLDRnoTH8G/of8d5DqX0MijvUVLCuwwxtwPmae14FWm/K+bZW3xENRKtUCsweqkZ7muwvODBJCzuFVdimiAu6GvmaheZKdY3KyELToIz5Nxe8d1lGaPCCH9KLsgia9s2xsk3BU8HprzOeb2/60pZADC0Bp2tMagqMGULBawJ+pt6k8FnQUhu4rNOmDg1vBG3BYorSv0upngXd8XdESZvi9AHpjMSlPmbs4I8vQiOKbOgccP8Alxk00uFOqkYMgh4CPqTIxFrkwdAlwCeBdj0KmflJ0xanfKphu0lpunEnY2QWi+BFJDG9Gg3a2cXLtznBZ+G5tnhUaH9TqqDUNvSNxcYSk0B34Iny5vvWOnaNfhP6d5PTydrU/XNS6F6h8Q8QMnNgHu4vKwLtb2qrJf3eKi4pPlWguXTHPX9AcwqN9fwulf4FD/s5TOGFiLYAAAAASUVORK5CYII="}" width="16" alt="" /><span style="font-size: 14px">软电话</span>
700
+ </div>
701
+ </select-option>
702
+ `:""}
703
+ ${n.includes("2")?xs`
704
+ <select-option value="2">
705
+ <div style="display: flex; align-items: center; gap: 8px;">
706
+ <img src="${"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAC0AAAAtCAYAAAA6GuKaAAAAAXNSR0IArs4c6QAAAWtJREFUaEPtWdFNAzEMdW6Ewgo3BzBOYYi2Q0DHKcxxK0BHaNA7cIVEVD0n8Uck31dVOfbLyzvn9JxkwCcNiFmqQd8fl8eWDX9u5/fa9WbQm9dlnyZ5yFmaQF8BZzmcX+a9ZQMm0HfH5QSwKcnKUr7Ih6XYv9gkO/yHfF/b+YnNRYMGw4IiFczcAlOTlwf9tmQUPz/P9BqWOZwgYlm2aQAbgO7Msm5KZccSQoFGp7hkOUF7SeTAMsjGZZEd3hUX0CyI2jgX0GC6uWMUdqQt1AX0kJoO0H9k4to9gulgutCS9HIJeYQ8Qh7cV0j0aeUpukdBMSGPkMeNRhLyCHmEPIibdujLJcyawgm7+R7T9GPz9nx8bTHSgNQpAev2u1wuYBWuKWt+q+fMxruBtnjIVqN8tZEN3jdl9a5MjzgJAHA9RvzWuUvrC6kzHHYKsNa2Fr0ybl1Ysnh/rWPX6VYHnF1SmJnuUrUxyZCgvwFf6/M9kuThSwAAAABJRU5ErkJggg=="}" width="16" alt="" /><span style="font-size: 14px">手机模式</span>
707
+ </div>
708
+ </select-option>
709
+ `:""}
710
+ ${n.includes("3")?xs`
711
+ <select-option value="3">
712
+ <div style="display: flex; align-items: center; gap: 8px;">
713
+ <img src="${"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAC0AAAAtCAYAAAA6GuKaAAAAAXNSR0IArs4c6QAAAq5JREFUaEPtmWFywiAQhcEr6Als79F6LdsZdab1WsZ7tJ7AXiF0lmYzC9mFDUGrM/qrmrB8PB7LQq25w4+9Q2bzgL7WrD2UvhmlF8/vr865jXXueD7tt1PAIBZtf/76aPA7PKPf4Xf6Pn2WtMdiud46YzZ9R9Y2P9+fqxLw+dPbwTgXQNvZbIUw8+XaGRJ/0LcxkDV2IJwIHTSytuk7LADnAGDgCOFns20P8NvPae+ZuEFiGxaadtIHpqqPBPcqEsh4plLQg/6tbVhoqZNYfY1VKBC1AwUfBf03+PDDBQg6KFCcTjUoB/Hoos7ag9gT2g+hESphgbGKUygUAKcds4TK0x1TEbTvqEBxaANtMSOhXZJKg4edO5rZrMFMUwxdCk4zgyZ70BkhsxR5WmEPyeOphUbboBXqQTM5M7eZ4ELjVPHKdikviEM3kkSeVilNO5GUE5Xudqx4kANoZpHDO8Hi7GZcD41bbmYT4Tah3KzUeM7viEqL5GxRA5CLIdYe/a5IiprBtHczorFRzQHI0AqL9DvdyFpk6gDkKo9YRMoKuS1/KpzUXl1PSxbIVXCXAM+eEft0JVjgPzJIFjooLYU8rAWvdXTLQsc1hmgTcpzi1kDNo5sKmhY58LdYY0RnSqydnbUv9Lg25ejm+9culKAm1tbaUfAaR7dR0HGxTk/O3MC9HUDh7mOt3QVXBgX1uFia5pQvKf6lmKWx1PaQKruc4pcQoQg6ziipxZmDHsRSlATF0AOPJ+41aoNPgu7BndtgGpPqlLHgqTiToREm3jxK4TWVYzVozuddTvWXhjeptJhdME/DzRK5u4gHEd9CpQZaVekYRLothTQZvEuugDW2uih04Hdafwhe0R7brgIdWAf+G9C2weV6yjbc+K4OrVmQuXce0DmFaj2/S6V/Ae/pt8oTAp/jAAAAAElFTkSuQmCC"}" width="16" alt="" /><span style="font-size: 14px">SIP话机</span>
714
+ </div>
715
+ </select-option>
716
+ `:""}
717
+ </my-select>
715
718
  </div>
716
719
  <div class="ysyt-phone-body">
717
720
  <div class="ysyt-title" @click="${this.toggle}">
@@ -724,14 +727,14 @@ const Xs=e=>(t,s)=>{void 0!==s?s.addInitializer(()=>{customElements.define(e,t)}
724
727
  <span>${t}</span>
725
728
  `:void 0)(this.statusParams)}
726
729
  <i class="ysyt icon-xia"></i>
727
- ${c}
730
+ ${d}
728
731
  `}
729
732
  </div>
730
733
  <timer-component id="my-timer"></timer-component>
731
734
  </div>
732
- <div class="ysyt-action-body">${r.map(e=>e.render())}</div>
735
+ <div class="ysyt-action-body">${o.map(e=>e.render())}</div>
733
736
  </div>
734
- `;Ys(h,this.container)}async renderRtt(e){const{outCallIsAnswer:t}=dt.getState(),s=e?.rtt||500,i=xs`
737
+ `;Ys(l,this.container)}async renderRtt(e){const{outCallIsAnswer:t}=dt.getState(),s=e?.rtt||500,i=xs`
735
738
  <my-popover triggerType="hover">
736
739
  <div slot="trigger" id="wifi-body">
737
740
  ${s>=250?xs`<img src="${"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAC0AAAAtCAYAAAA6GuKaAAAAAXNSR0IArs4c6QAAAlVJREFUaEPtmGFuwyAMhU2PtU1qOVmbk5FKW4+1TCawkcQYG2i3aM2fqirBn83zc1IDO7zMDpnhCf2oU+teaefcKYW31o69k6mGTuDOAWoBmwGNCVwBYKxNSAUdQDWQkiIPuMhae5EsxjUi6ARWUk1pbGrdIIFnoZWwqXbx+NPrqJAQLmXhSWghLELGo1U1m3MuSiFKLXc6JPwGOmyY28yD1jYQRSZIYAP+DV2obnfYdQIF+EV8Dx2AHVGJu8Mq4X3VDSMHUSe3WAV3L8eF0BNxs9XoNpwU2mF0CdwSv6fDxIeRWFrkyYEjNMoi+q9YDkKHyRUT41wlCRBxhqhptCDRWC24S41aRDIMcT2jaCKGZsXESr6aQmM1NRNUBK8Z46mE1tWMumX9W+DHxUkYA7eMcbH+maFCnVxx3xI05SzFTTXCZnok62BZ6MxmYt11AM/G4qCxidIpqfJuDXSm0fWVTgz+pBk0E7wFx/gMn4fRwLv4KTC+EXExxZbHVW6ClwuAOQJMjMWZEWC6GriJ31ByMZug56pOZx6WDD20wFdDT/DqKmDTDKrBq6BnOVDTESXgZ5Z/owGIus5Jx4wGPqy2aWuhV/6NsGbgGm6Wkk9iMVAM3NQM6huwKj+V1jfX6pSqJFIFrT1Oaj1WXmOF6R6/Bt2S+N2gWypZSqg7NOEsVbrlwLtC560QuoL3hqYeZWfnrrC2u4zxdNPgw9R/J2HZwda6xRr+f1d6OXQ2B/t3NU2D1z1fPMw9thrHBpS/AJT8Of7eVdPSoK3rntCtFZTev8tKfwHUBxjzil9I5gAAAABJRU5ErkJggg=="}" alt="" />`:""}
@@ -173,6 +173,7 @@ const Zs=e=>(t,s)=>{void 0!==s?s.addInitializer(()=>{customElements.define(e,t)}
173
173
 
174
174
  .trigger {
175
175
  display: inline-block;
176
+ cursor: pointer;
176
177
  }
177
178
 
178
179
  .popover {
@@ -187,6 +188,8 @@ const Zs=e=>(t,s)=>{void 0!==s?s.addInitializer(()=>{customElements.define(e,t)}
187
188
  opacity 0.2s ease,
188
189
  transform 0.2s ease;
189
190
  pointer-events: none;
191
+ min-width: 100px;
192
+ padding: 0px;
190
193
  }
191
194
 
192
195
  .popover.visible {
@@ -216,7 +219,6 @@ const Zs=e=>(t,s)=>{void 0!==s?s.addInitializer(()=>{customElements.define(e,t)}
216
219
 
217
220
  .arrow[data-placement='top'] {
218
221
  bottom: -6px;
219
- left: 10px;
220
222
  border-width: 6px 6px 0 6px;
221
223
  border-color: #fff transparent transparent transparent;
222
224
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.05);
@@ -224,26 +226,23 @@ const Zs=e=>(t,s)=>{void 0!==s?s.addInitializer(()=>{customElements.define(e,t)}
224
226
 
225
227
  .arrow[data-placement='bottom'] {
226
228
  top: -6px;
227
- left: 10px;
228
229
  border-width: 0 6px 6px 6px;
229
230
  border-color: transparent transparent #fff transparent;
230
231
  box-shadow: 0 -2px 5px rgba(0, 0, 0, 0.05);
231
232
  }
232
233
 
233
234
  .arrow[data-placement='left'] {
234
- top: 10px;
235
235
  right: -6px;
236
236
  border-width: 6px 0 6px 6px;
237
237
  border-color: transparent transparent transparent #fff;
238
238
  }
239
239
 
240
240
  .arrow[data-placement='right'] {
241
- top: 10px;
242
241
  left: -6px;
243
242
  border-width: 6px 6px 6px 0;
244
243
  border-color: transparent #fff transparent transparent;
245
244
  }
246
- `}firstUpdated(){this.triggerEl=this.renderRoot.querySelector(".trigger"),this.popoverEl=this.renderRoot.querySelector(".popover"),"click"===this.triggerType?(this.triggerEl.addEventListener("click",this.onTogglePopover),document.addEventListener("click",this.onOutsideClick)):(this.triggerEl.addEventListener("mouseenter",this.showPopover),this.triggerEl.addEventListener("mouseleave",this.hidePopoverDelayed),this.popoverEl.addEventListener("mouseenter",this.clearHideTimer),this.popoverEl.addEventListener("mouseleave",this.hidePopoverDelayed))}disconnectedCallback(){super.disconnectedCallback(),document.removeEventListener("click",this.onOutsideClick)}updatePosition(){const e=this.triggerEl.getBoundingClientRect(),t=this.popoverEl;let s=0,i=0;switch(this.placement){case"top":s=e.top-t.offsetHeight-8,i=e.left;break;case"bottom":s=e.bottom+8,i=e.left;break;case"left":s=e.top,i=e.left-t.offsetWidth-8;break;case"right":s=e.top,i=e.right+8}t.style.top=`${s}px`,t.style.left=`${i}px`,t.setAttribute("data-placement",this.placement)}render(){return Ds`
245
+ `}firstUpdated(){this.triggerEl=this.renderRoot.querySelector(".trigger"),this.popoverEl=this.renderRoot.querySelector(".popover"),"click"===this.triggerType?(this.triggerEl.addEventListener("click",this.onTogglePopover),document.addEventListener("click",this.onOutsideClick)):(this.triggerEl.addEventListener("mouseenter",this.showPopover),this.triggerEl.addEventListener("mouseleave",this.hidePopoverDelayed),this.popoverEl.addEventListener("mouseenter",this.clearHideTimer),this.popoverEl.addEventListener("mouseleave",this.hidePopoverDelayed))}disconnectedCallback(){super.disconnectedCallback(),document.removeEventListener("click",this.onOutsideClick),this.triggerEl&&("click"===this.triggerType?(this.triggerEl.removeEventListener("click",this.onTogglePopover),document.removeEventListener("click",this.onOutsideClick)):(this.triggerEl.removeEventListener("mouseenter",this.showPopover),this.triggerEl.removeEventListener("mouseleave",this.hidePopoverDelayed),this.popoverEl.removeEventListener("mouseenter",this.clearHideTimer),this.popoverEl.removeEventListener("mouseleave",this.hidePopoverDelayed)))}updatePosition(){const e=this.triggerEl.getBoundingClientRect(),t=this.popoverEl;let s=0,i=0;switch(this.placement){case"top":s=e.top-t.offsetHeight-8,i=e.left+(e.width-t.offsetWidth)/2;break;case"bottom":s=e.bottom+8,i=e.left+(e.width-t.offsetWidth)/2;break;case"left":s=e.top+(e.height-t.offsetHeight)/2,i=e.left-t.offsetWidth-8;break;case"right":s=e.top+(e.height-t.offsetHeight)/2,i=e.right+8}t.style.top=`${s}px`,t.style.left=`${i}px`,t.setAttribute("data-placement",this.placement);const r=this.renderRoot.querySelector(".arrow");if(r)if("top"===this.placement||"bottom"===this.placement){const s=e.left+e.width/2-i-6;r.style.left=`${Math.min(Math.max(s,10),t.offsetWidth-16)}px`,r.style.top=""}else{const i=e.top+e.height/2-s-6;r.style.top=`${Math.min(Math.max(i,10),t.offsetHeight-16)}px`,r.style.left=""}}render(){return Ds`
247
246
  <div class="trigger">
248
247
  <slot name="trigger"></slot>
249
248
  </div>
@@ -554,7 +553,7 @@ const Zs=e=>(t,s)=>{void 0!==s?s.addInitializer(()=>{customElements.define(e,t)}
554
553
  `:null}
555
554
  </div>
556
555
  </div>
557
- `:Ds``}_onCancel(){this.dispatchEvent(new CustomEvent("cancel")),this.visible=!1}_onOk(){this.dispatchEvent(new CustomEvent("ok"))}_onMaskClick(){this._onCancel()}};jt([ei({type:Boolean})],ki.prototype,"visible",void 0),jt([ei({type:Boolean})],ki.prototype,"showFooter",void 0),jt([ei({type:String})],ki.prototype,"width",void 0),jt([ei({type:String})],ki.prototype,"title",void 0),ki=jt([Zs("my-modal-wrapper")],ki);class Ni{constructor(){this.roleData={agentInfo:()=>{if(!pi.agentInfo?.agent_no)throw new Error("请先登录")},requestInfo:e=>{if(!e.data)throw new Error("请传入参数")},changeDevice:e=>{if(!e)throw new Error('Parameter "device" is required');const{answer_devices:t}=pi.agentInfo;if(!t.split(",").map(e=>Number(e)).includes(e))throw new Error("当前设备不支持")},changeState:(e,t)=>{if(!e)throw new Error('Parameter "state" is required');if(!t)throw new Error('Parameter "state_name" is required');if(2===e&&"通话中"===t)throw new Error("当前状态不支持");if(![1,2].includes(e))throw new Error("当前状态不支持")}}}async _agentLogin(e){try{const s=await(t={agent_no:e},ui(`${hi}/agent/login`,t));pi.agentInfo=s.data}catch(e){throw console.log(e),new Error("登录失败")}var t}async changeDevice(e){try{this.roleData.agentInfo(),this.roleData.requestInfo(e);const{data:t,success:s}=e,{device:i}=t;this.roleData.changeDevice(i);const{agent_no:r}=pi.agentInfo;await(e=>ui(`${hi}/device/change`,e))({agent_no:r,answer_device:i}),dt.updateAnswerDevice(i),s?.({code:0,msg:"请求成功"})}catch(e){throw console.log(e),new Error("切换设备失败")}}async changeState(e){try{pi.autoStateTimer&&(clearTimeout(pi.autoStateTimer),pi.autoStateTimer=null),this.roleData.agentInfo(),this.roleData.requestInfo(e);const{data:t,success:s}=e,{state:i,state_name:r}=t;this.roleData.changeState(i,r);const{agent_no:n}=pi.agentInfo;await(e=>ui(`${hi}/state/change`,e))({agent_no:n,state_name:r,state:i}),i===et.IDLE?dt.updateActionConfigs(wi):i===et.BUSY&&dt.updateActionConfigs(yi),pi.stateObject={state:i,state_name:r},s?.({code:0,msg:"请求成功"})}catch(e){console.log(e)}}async getIdleAgentList(e){const{agent_no:t}=pi.agentInfo;try{this.roleData.agentInfo();const s=await(e=>ui(`${hi}/agent/free`,e))({agent_no:t});e.success?.(s)}catch(e){console.log(e)}}async getAgentState(e){try{const t=await ui(`${ci}/agent/statecfg/list`,{}),s=(t.data||[]).filter(e=>0===e.enable).filter(e=>0!==e.state&&3!==e.state).map(e=>({state:e.state,state_name:e.state_name})).reverse();e.success?.({...t,data:s})}catch(e){console.log(e)}}}class Hi{constructor({container:e,rttHTML:t,statusParams:s},i){this.VoiceSDKInstance=i,this.apiClient=new Ni,this.isOpenSelect=!1,this.statusParams={state:et.IDLE,statusName:"空闲"},this.consultShow=!1,this.modalRoot=null,this.agentStateData=[],this.devicesBodyShow=!1,this.handleNetworkInfoChange=e=>{this.rttHTML&&this.renderRtt(e.rttObject)},this.handleCallInfoChange=e=>{this.render()},this.hiddenSelect=()=>{if(!this.isOpenSelect)return;const e=document.querySelector(".ysyt-select");e.style.height="0px",setTimeout(()=>{e.style.padding="0px"},100),this.isOpenSelect=!1,this.render()},this.toggle=e=>{e.stopPropagation(),this.isOpenSelect=!this.isOpenSelect;const t=document.querySelector(".ysyt-select");this.isOpenSelect?(t.style.height=t.scrollHeight+"px",t.style.padding="4px 0px",this.render()):this.hiddenSelect()},this.changeStatus=async e=>{const{state:t,statusName:s}=e;await this.apiClient.changeState({data:{state:t,state_name:s},success:()=>{this.statusParams=e;const t=document.getElementById("my-timer");t?.reset(),this.hiddenSelect()}})},this.onChangeDevices=async e=>{await this.apiClient.changeDevice({data:{device:e},success:({code:t})=>{0===t&&(1!==e&&this.VoiceSDKInstance.destroyRtc(),ni("切换成功"),this.render())}})},this.ruleCall=async e=>{if(e)try{await this.VoiceSDKInstance.call_api.makeCall(e)}catch(e){console.error(e)}},this.onCall=()=>{const e=document.querySelector("my-input");this.ruleCall(e.value)},this.renderCallPopover=()=>Ds`
556
+ `:Ds``}_onCancel(){this.dispatchEvent(new CustomEvent("cancel")),this.visible=!1}_onOk(){this.dispatchEvent(new CustomEvent("ok"))}_onMaskClick(){this._onCancel()}};jt([ei({type:Boolean})],ki.prototype,"visible",void 0),jt([ei({type:Boolean})],ki.prototype,"showFooter",void 0),jt([ei({type:String})],ki.prototype,"width",void 0),jt([ei({type:String})],ki.prototype,"title",void 0),ki=jt([Zs("my-modal-wrapper")],ki);class Ni{constructor(){this.roleData={agentInfo:()=>{if(!pi.agentInfo?.agent_no)throw new Error("请先登录")},requestInfo:e=>{if(!e.data)throw new Error("请传入参数")},changeDevice:e=>{if(!e)throw new Error('Parameter "device" is required');const{answer_devices:t}=pi.agentInfo;if(!t.split(",").map(e=>Number(e)).includes(e))throw new Error("当前设备不支持")},changeState:(e,t)=>{if(!e)throw new Error('Parameter "state" is required');if(!t)throw new Error('Parameter "state_name" is required');if(2===e&&"通话中"===t)throw new Error("当前状态不支持");if(![1,2].includes(e))throw new Error("当前状态不支持")}}}async _agentLogin(e){try{const s=await(t={agent_no:e},ui(`${hi}/agent/login`,t));pi.agentInfo=s.data}catch(e){throw console.log(e),new Error("登录失败")}var t}async changeDevice(e){try{this.roleData.agentInfo(),this.roleData.requestInfo(e);const{data:t,success:s}=e,{device:i}=t;this.roleData.changeDevice(i);const{agent_no:r}=pi.agentInfo;await(e=>ui(`${hi}/device/change`,e))({agent_no:r,answer_device:i}),dt.updateAnswerDevice(i),s?.({code:0,msg:"请求成功"})}catch(e){throw console.log(e),new Error("切换设备失败")}}async changeState(e){try{pi.autoStateTimer&&(clearTimeout(pi.autoStateTimer),pi.autoStateTimer=null),this.roleData.agentInfo(),this.roleData.requestInfo(e);const{data:t,success:s}=e,{state:i,state_name:r}=t;this.roleData.changeState(i,r);const{agent_no:n}=pi.agentInfo;await(e=>ui(`${hi}/state/change`,e))({agent_no:n,state_name:r,state:i}),i===et.IDLE?dt.updateActionConfigs(wi):i===et.BUSY&&dt.updateActionConfigs(yi),pi.stateObject={state:i,state_name:r},s?.({code:0,msg:"请求成功"})}catch(e){console.log(e)}}async getIdleAgentList(e){const{agent_no:t}=pi.agentInfo;try{this.roleData.agentInfo();const s=await(e=>ui(`${hi}/agent/free`,e))({agent_no:t});e.success?.(s)}catch(e){console.log(e)}}async getAgentState(e){try{const t=await ui(`${ci}/agent/statecfg/list`,{}),s=(t.data||[]).filter(e=>0===e.enable).filter(e=>0!==e.state&&3!==e.state).map(e=>({state:e.state,state_name:e.state_name})).reverse();e.success?.({...t,data:s})}catch(e){console.log(e)}}}class Hi{constructor({container:e,rttHTML:t,statusParams:s},i){this.VoiceSDKInstance=i,this.apiClient=new Ni,this.isOpenSelect=!1,this.statusParams={state:et.IDLE,statusName:"空闲"},this.consultShow=!1,this.modalRoot=null,this.agentStateData=[],this.handleNetworkInfoChange=e=>{this.rttHTML&&this.renderRtt(e.rttObject)},this.handleCallInfoChange=e=>{this.render()},this.hiddenSelect=()=>{if(!this.isOpenSelect)return;const e=document.querySelector(".ysyt-select");e.style.height="0px",setTimeout(()=>{e.style.padding="0px"},100),this.isOpenSelect=!1,this.render()},this.toggle=e=>{e.stopPropagation(),this.isOpenSelect=!this.isOpenSelect;const t=document.querySelector(".ysyt-select");this.isOpenSelect?(t.style.height=t.scrollHeight+"px",t.style.padding="4px 0px",this.render()):this.hiddenSelect()},this.changeStatus=async e=>{const{state:t,statusName:s}=e;await this.apiClient.changeState({data:{state:t,state_name:s},success:()=>{this.statusParams=e;const t=document.getElementById("my-timer");t?.reset(),this.hiddenSelect()}})},this.onChangeDevices=async e=>{await this.apiClient.changeDevice({data:{device:e},success:({code:t})=>{0===t&&(1!==e&&this.VoiceSDKInstance.destroyRtc(),ni("切换成功"),this.render())}})},this.ruleCall=async e=>{if(e)try{await this.VoiceSDKInstance.call_api.makeCall(e)}catch(e){console.error(e)}},this.onCall=()=>{const e=document.querySelector("my-input");this.ruleCall(e.value)},this.renderCallPopover=()=>Ds`
558
557
  <my-popover>
559
558
  <div slot="trigger">
560
559
  <my-tooltip content="拨打">
@@ -659,28 +658,16 @@ const Zs=e=>(t,s)=>{void 0!==s?s.addInitializer(()=>{customElements.define(e,t)}
659
658
  </div>`}
660
659
  </div>
661
660
  </my-modal-wrapper>
662
- `;Ws(i,this.modalRoot)}})}catch(e){oi(e)}}getActionConfigs(){const{show_satisfaction:e}=pi.agentInfo,t=dt.get("isHold"),s=dt.get("isMuted"),i=dt.get("actionConfigs").filter(i=>(0!==e||"satisfaction"!==i)&&(!(!t&&"unhold"===i)&&((!t||"hold"!==i)&&((!s||"mute"!==i)&&!(!s&&"unmute"===i)))));return[{render:this.renderCallPopover,type:"call_number"},{render:this.renderAnswer,type:"answer"},{render:this.renderReject,type:"reject"},{render:this.renderHangup,type:"hangup"},{render:this.renderDialer,type:"dtmf"},{render:this.renderUnhold,type:"unhold"},{render:this.renderHold,type:"hold"},{render:this.renderMute,type:"mute"},{render:this.renderUnmute,type:"unmute"},{render:this.renderSatisfaction,type:"satisfaction"},{render:this.renderConsult,type:"consult"},{render:this.renderTransfer,type:"transfer"},{render:this.renderConsultTransfer,type:"consult_transfer"}].filter(({type:e})=>i.includes(e))}devicesMap(e){return{1:Ds`
663
- <div style="display: flex; align-items: center; gap: 8px;" @click="${()=>e&&this.onChangeDevices(1)}">
664
- <img src="${"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAC0AAAAtCAYAAAA6GuKaAAAAAXNSR0IArs4c6QAAAjhJREFUaEPtmM1WwjAQhWeAF0I34kZ5MuDJqBtxo7wQEE9CkzNNk8yktIl4YKOHRvPl9s5PBuEOP3iHzPCALvXWxEq/HBfvGmp2AfPz8/m0LQXp78NCa1gEtQF1hbUfVLirBZ6EXh3neweL0CjAnVZaodpoeIW4/lqemtKKB6E76rawFM48V2oPCM1heV7/CWircMoCr9+LrVa8hk16SufArH7mqoZNboKuZZMetLXG4enMZhatsl1fMij/F7RUuZwYGCvLRJWWQDtPA4DUTmOARwORg6bApdNeD1qaEWy6Kw2s31QwQxigRLWr4eNO3xPyGJfGLDRnoTH8G/of8d5DqX0MijvUVLCuwwxtwPmae14FWm/K+bZW3xENRKtUCsweqkZ7muwvODBJCzuFVdimiAu6GvmaheZKdY3KyELToIz5Nxe8d1lGaPCCH9KLsgia9s2xsk3BU8HprzOeb2/60pZADC0Bp2tMagqMGULBawJ+pt6k8FnQUhu4rNOmDg1vBG3BYorSv0upngXd8XdESZvi9AHpjMSlPmbs4I8vQiOKbOgccP8Alxk00uFOqkYMgh4CPqTIxFrkwdAlwCeBdj0KmflJ0xanfKphu0lpunEnY2QWi+BFJDG9Gg3a2cXLtznBZ+G5tnhUaH9TqqDUNvSNxcYSk0B34Iny5vvWOnaNfhP6d5PTydrU/XNS6F6h8Q8QMnNgHu4vKwLtb2qrJf3eKi4pPlWguXTHPX9AcwqN9fwulf4FD/s5TOGFiLYAAAAASUVORK5CYII="}" width="16" alt="" /><span style="font-size: 14px">软电话</span>
665
- </div>
666
- `,2:Ds`
667
- <div style="display: flex; align-items: center; gap: 8px;" @click="${()=>e&&this.onChangeDevices(2)}">
668
- <img src="${"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAC0AAAAtCAYAAAA6GuKaAAAAAXNSR0IArs4c6QAAAWtJREFUaEPtWdFNAzEMdW6Ewgo3BzBOYYi2Q0DHKcxxK0BHaNA7cIVEVD0n8Uck31dVOfbLyzvn9JxkwCcNiFmqQd8fl8eWDX9u5/fa9WbQm9dlnyZ5yFmaQF8BZzmcX+a9ZQMm0HfH5QSwKcnKUr7Ih6XYv9gkO/yHfF/b+YnNRYMGw4IiFczcAlOTlwf9tmQUPz/P9BqWOZwgYlm2aQAbgO7Msm5KZccSQoFGp7hkOUF7SeTAMsjGZZEd3hUX0CyI2jgX0GC6uWMUdqQt1AX0kJoO0H9k4to9gulgutCS9HIJeYQ8Qh7cV0j0aeUpukdBMSGPkMeNRhLyCHmEPIibdujLJcyawgm7+R7T9GPz9nx8bTHSgNQpAev2u1wuYBWuKWt+q+fMxruBtnjIVqN8tZEN3jdl9a5MjzgJAHA9RvzWuUvrC6kzHHYKsNa2Fr0ybl1Ysnh/rWPX6VYHnF1SmJnuUrUxyZCgvwFf6/M9kuThSwAAAABJRU5ErkJggg=="}" width="16" alt="" /><span style="font-size: 14px">手机模式</span>
669
- </div>
670
- `,3:Ds`
671
- <div style="display: flex; align-items: center; gap: 8px;" @click="${()=>e&&this.onChangeDevices(3)}">
672
- <img src="${"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAC0AAAAtCAYAAAA6GuKaAAAAAXNSR0IArs4c6QAAAq5JREFUaEPtmWFywiAQhcEr6Als79F6LdsZdab1WsZ7tJ7AXiF0lmYzC9mFDUGrM/qrmrB8PB7LQq25w4+9Q2bzgL7WrD2UvhmlF8/vr865jXXueD7tt1PAIBZtf/76aPA7PKPf4Xf6Pn2WtMdiud46YzZ9R9Y2P9+fqxLw+dPbwTgXQNvZbIUw8+XaGRJ/0LcxkDV2IJwIHTSytuk7LADnAGDgCOFns20P8NvPae+ZuEFiGxaadtIHpqqPBPcqEsh4plLQg/6tbVhoqZNYfY1VKBC1AwUfBf03+PDDBQg6KFCcTjUoB/Hoos7ag9gT2g+hESphgbGKUygUAKcds4TK0x1TEbTvqEBxaANtMSOhXZJKg4edO5rZrMFMUwxdCk4zgyZ70BkhsxR5WmEPyeOphUbboBXqQTM5M7eZ4ELjVPHKdikviEM3kkSeVilNO5GUE5Xudqx4kANoZpHDO8Hi7GZcD41bbmYT4Tah3KzUeM7viEqL5GxRA5CLIdYe/a5IiprBtHczorFRzQHI0AqL9DvdyFpk6gDkKo9YRMoKuS1/KpzUXl1PSxbIVXCXAM+eEft0JVjgPzJIFjooLYU8rAWvdXTLQsc1hmgTcpzi1kDNo5sKmhY58LdYY0RnSqydnbUv9Lg25ejm+9culKAm1tbaUfAaR7dR0HGxTk/O3MC9HUDh7mOt3QVXBgX1uFia5pQvKf6lmKWx1PaQKruc4pcQoQg6ziipxZmDHsRSlATF0AOPJ+41aoNPgu7BndtgGpPqlLHgqTiToREm3jxK4TWVYzVozuddTvWXhjeptJhdME/DzRK5u4gHEd9CpQZaVekYRLothTQZvEuugDW2uih04Hdafwhe0R7brgIdWAf+G9C2weV6yjbc+K4OrVmQuXce0DmFaj2/S6V/Ae/pt8oTAp/jAAAAAElFTkSuQmCC"}" width="16" alt="" /><span style="font-size: 14px">SIP话机</span>
673
- </div>
674
- `}}async render(){const{displayText:e,answerDevice:t}=dt.getState(),{answer_devices:s}=pi.agentInfo,i=(s||"").split(","),r=this.getActionConfigs(),n={...vi},{statusColor:o}=n,a=document.querySelector("head");if(a){const e=Ds`
661
+ `;Ws(i,this.modalRoot)}})}catch(e){oi(e)}}getActionConfigs(){const{show_satisfaction:e}=pi.agentInfo,t=dt.get("isHold"),s=dt.get("isMuted"),i=dt.get("actionConfigs").filter(i=>(0!==e||"satisfaction"!==i)&&(!(!t&&"unhold"===i)&&((!t||"hold"!==i)&&((!s||"mute"!==i)&&!(!s&&"unmute"===i)))));return[{render:this.renderCallPopover,type:"call_number"},{render:this.renderAnswer,type:"answer"},{render:this.renderReject,type:"reject"},{render:this.renderHangup,type:"hangup"},{render:this.renderDialer,type:"dtmf"},{render:this.renderUnhold,type:"unhold"},{render:this.renderHold,type:"hold"},{render:this.renderMute,type:"mute"},{render:this.renderUnmute,type:"unmute"},{render:this.renderSatisfaction,type:"satisfaction"},{render:this.renderConsult,type:"consult"},{render:this.renderTransfer,type:"transfer"},{render:this.renderConsultTransfer,type:"consult_transfer"}].filter(({type:e})=>i.includes(e))}async render(){const{displayText:e,answerDevice:t}=dt.getState(),{default_device:s,answer_devices:i,show_satisfaction:r}=pi.agentInfo,n=(i||"").split(","),o=this.getActionConfigs(),a={...vi},{statusColor:c}=a,h=document.querySelector("head");if(h){const e=Ds`
675
662
  <style>
676
663
  .ysyt-phone-body {
677
- background: ${o[this.statusParams.state]};
664
+ background: ${c[this.statusParams.state]};
678
665
  }
679
666
  .ysyt-action-body {
680
- border-bottom: 1px solid ${o[this.statusParams.state]};
667
+ border-bottom: 1px solid ${c[this.statusParams.state]};
681
668
  }
682
669
  </style>
683
- `;Ws(e,a)}const c=Ds`
670
+ `;Ws(e,h)}const d=Ds`
684
671
  <i class="ysyt icon-shang select-icon" style="${this.isOpenSelect?"display: block;":"display: none;"}"></i>
685
672
  <div
686
673
  class="ysyt-select"
@@ -697,21 +684,37 @@ const Zs=e=>(t,s)=>{void 0!==s?s.addInitializer(()=>{customElements.define(e,t)}
697
684
  `)}
698
685
  </div>
699
686
  </div>
700
- `,h=Ds`
687
+ `,l=Ds`
701
688
  <div id="ysyt-body">
702
- <div
703
- id="ysyt-devices-body"
704
- @mouseenter="${()=>{this.devicesBodyShow=!0,this.render()}}"
705
- @mouseleave="${()=>{this.devicesBodyShow=!1,this.render()}}"
706
- >
707
- <div class="ysyt-devices-select-title">${this.devicesMap(!1)[t]}</div>
708
- ${this.devicesBodyShow?Ds`
709
- <div class="ysyt-devices-select-body">
710
- ${i.includes("1")?this.devicesMap(!0)[1]:""}
711
- ${i.includes("2")?this.devicesMap(!0)[2]:""}
712
- ${i.includes("3")?this.devicesMap(!0)[3]:""}
713
- </div>
714
- `:""}
689
+ <div id="ysyt-devices-body">
690
+ <my-select
691
+ width="100px"
692
+ value="${String(s)}"
693
+ placeholder=""
694
+ @change=${e=>this.onChangeDevices(Number(e.detail.value))}
695
+ >
696
+ ${n.includes("1")?Ds`
697
+ <select-option value="1">
698
+ <div style="display: flex; align-items: center; gap: 8px;">
699
+ <img src="${"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAC0AAAAtCAYAAAA6GuKaAAAAAXNSR0IArs4c6QAAAjhJREFUaEPtmM1WwjAQhWeAF0I34kZ5MuDJqBtxo7wQEE9CkzNNk8yktIl4YKOHRvPl9s5PBuEOP3iHzPCALvXWxEq/HBfvGmp2AfPz8/m0LQXp78NCa1gEtQF1hbUfVLirBZ6EXh3neweL0CjAnVZaodpoeIW4/lqemtKKB6E76rawFM48V2oPCM1heV7/CWircMoCr9+LrVa8hk16SufArH7mqoZNboKuZZMetLXG4enMZhatsl1fMij/F7RUuZwYGCvLRJWWQDtPA4DUTmOARwORg6bApdNeD1qaEWy6Kw2s31QwQxigRLWr4eNO3xPyGJfGLDRnoTH8G/of8d5DqX0MijvUVLCuwwxtwPmae14FWm/K+bZW3xENRKtUCsweqkZ7muwvODBJCzuFVdimiAu6GvmaheZKdY3KyELToIz5Nxe8d1lGaPCCH9KLsgia9s2xsk3BU8HprzOeb2/60pZADC0Bp2tMagqMGULBawJ+pt6k8FnQUhu4rNOmDg1vBG3BYorSv0upngXd8XdESZvi9AHpjMSlPmbs4I8vQiOKbOgccP8Alxk00uFOqkYMgh4CPqTIxFrkwdAlwCeBdj0KmflJ0xanfKphu0lpunEnY2QWi+BFJDG9Gg3a2cXLtznBZ+G5tnhUaH9TqqDUNvSNxcYSk0B34Iny5vvWOnaNfhP6d5PTydrU/XNS6F6h8Q8QMnNgHu4vKwLtb2qrJf3eKi4pPlWguXTHPX9AcwqN9fwulf4FD/s5TOGFiLYAAAAASUVORK5CYII="}" width="16" alt="" /><span style="font-size: 14px">软电话</span>
700
+ </div>
701
+ </select-option>
702
+ `:""}
703
+ ${n.includes("2")?Ds`
704
+ <select-option value="2">
705
+ <div style="display: flex; align-items: center; gap: 8px;">
706
+ <img src="${"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAC0AAAAtCAYAAAA6GuKaAAAAAXNSR0IArs4c6QAAAWtJREFUaEPtWdFNAzEMdW6Ewgo3BzBOYYi2Q0DHKcxxK0BHaNA7cIVEVD0n8Uck31dVOfbLyzvn9JxkwCcNiFmqQd8fl8eWDX9u5/fa9WbQm9dlnyZ5yFmaQF8BZzmcX+a9ZQMm0HfH5QSwKcnKUr7Ih6XYv9gkO/yHfF/b+YnNRYMGw4IiFczcAlOTlwf9tmQUPz/P9BqWOZwgYlm2aQAbgO7Msm5KZccSQoFGp7hkOUF7SeTAMsjGZZEd3hUX0CyI2jgX0GC6uWMUdqQt1AX0kJoO0H9k4to9gulgutCS9HIJeYQ8Qh7cV0j0aeUpukdBMSGPkMeNRhLyCHmEPIibdujLJcyawgm7+R7T9GPz9nx8bTHSgNQpAev2u1wuYBWuKWt+q+fMxruBtnjIVqN8tZEN3jdl9a5MjzgJAHA9RvzWuUvrC6kzHHYKsNa2Fr0ybl1Ysnh/rWPX6VYHnF1SmJnuUrUxyZCgvwFf6/M9kuThSwAAAABJRU5ErkJggg=="}" width="16" alt="" /><span style="font-size: 14px">手机模式</span>
707
+ </div>
708
+ </select-option>
709
+ `:""}
710
+ ${n.includes("3")?Ds`
711
+ <select-option value="3">
712
+ <div style="display: flex; align-items: center; gap: 8px;">
713
+ <img src="${"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAC0AAAAtCAYAAAA6GuKaAAAAAXNSR0IArs4c6QAAAq5JREFUaEPtmWFywiAQhcEr6Als79F6LdsZdab1WsZ7tJ7AXiF0lmYzC9mFDUGrM/qrmrB8PB7LQq25w4+9Q2bzgL7WrD2UvhmlF8/vr865jXXueD7tt1PAIBZtf/76aPA7PKPf4Xf6Pn2WtMdiud46YzZ9R9Y2P9+fqxLw+dPbwTgXQNvZbIUw8+XaGRJ/0LcxkDV2IJwIHTSytuk7LADnAGDgCOFns20P8NvPae+ZuEFiGxaadtIHpqqPBPcqEsh4plLQg/6tbVhoqZNYfY1VKBC1AwUfBf03+PDDBQg6KFCcTjUoB/Hoos7ag9gT2g+hESphgbGKUygUAKcds4TK0x1TEbTvqEBxaANtMSOhXZJKg4edO5rZrMFMUwxdCk4zgyZ70BkhsxR5WmEPyeOphUbboBXqQTM5M7eZ4ELjVPHKdikviEM3kkSeVilNO5GUE5Xudqx4kANoZpHDO8Hi7GZcD41bbmYT4Tah3KzUeM7viEqL5GxRA5CLIdYe/a5IiprBtHczorFRzQHI0AqL9DvdyFpk6gDkKo9YRMoKuS1/KpzUXl1PSxbIVXCXAM+eEft0JVjgPzJIFjooLYU8rAWvdXTLQsc1hmgTcpzi1kDNo5sKmhY58LdYY0RnSqydnbUv9Lg25ejm+9culKAm1tbaUfAaR7dR0HGxTk/O3MC9HUDh7mOt3QVXBgX1uFia5pQvKf6lmKWx1PaQKruc4pcQoQg6ziipxZmDHsRSlATF0AOPJ+41aoNPgu7BndtgGpPqlLHgqTiToREm3jxK4TWVYzVozuddTvWXhjeptJhdME/DzRK5u4gHEd9CpQZaVekYRLothTQZvEuugDW2uih04Hdafwhe0R7brgIdWAf+G9C2weV6yjbc+K4OrVmQuXce0DmFaj2/S6V/Ae/pt8oTAp/jAAAAAElFTkSuQmCC"}" width="16" alt="" /><span style="font-size: 14px">SIP话机</span>
714
+ </div>
715
+ </select-option>
716
+ `:""}
717
+ </my-select>
715
718
  </div>
716
719
  <div class="ysyt-phone-body">
717
720
  <div class="ysyt-title" @click="${this.toggle}">
@@ -724,14 +727,14 @@ const Zs=e=>(t,s)=>{void 0!==s?s.addInitializer(()=>{customElements.define(e,t)}
724
727
  <span>${t}</span>
725
728
  `:void 0)(this.statusParams)}
726
729
  <i class="ysyt icon-xia"></i>
727
- ${c}
730
+ ${d}
728
731
  `}
729
732
  </div>
730
733
  <timer-component id="my-timer"></timer-component>
731
734
  </div>
732
- <div class="ysyt-action-body">${r.map(e=>e.render())}</div>
735
+ <div class="ysyt-action-body">${o.map(e=>e.render())}</div>
733
736
  </div>
734
- `;Ws(h,this.container)}async renderRtt(e){const{outCallIsAnswer:t}=dt.getState(),s=e?.rtt||500,i=Ds`
737
+ `;Ws(l,this.container)}async renderRtt(e){const{outCallIsAnswer:t}=dt.getState(),s=e?.rtt||500,i=Ds`
735
738
  <my-popover triggerType="hover">
736
739
  <div slot="trigger" id="wifi-body">
737
740
  ${s>=250?Ds`<img src="${"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAC0AAAAtCAYAAAA6GuKaAAAAAXNSR0IArs4c6QAAAlVJREFUaEPtmGFuwyAMhU2PtU1qOVmbk5FKW4+1TCawkcQYG2i3aM2fqirBn83zc1IDO7zMDpnhCf2oU+teaefcKYW31o69k6mGTuDOAWoBmwGNCVwBYKxNSAUdQDWQkiIPuMhae5EsxjUi6ARWUk1pbGrdIIFnoZWwqXbx+NPrqJAQLmXhSWghLELGo1U1m3MuSiFKLXc6JPwGOmyY28yD1jYQRSZIYAP+DV2obnfYdQIF+EV8Dx2AHVGJu8Mq4X3VDSMHUSe3WAV3L8eF0BNxs9XoNpwU2mF0CdwSv6fDxIeRWFrkyYEjNMoi+q9YDkKHyRUT41wlCRBxhqhptCDRWC24S41aRDIMcT2jaCKGZsXESr6aQmM1NRNUBK8Z46mE1tWMumX9W+DHxUkYA7eMcbH+maFCnVxx3xI05SzFTTXCZnok62BZ6MxmYt11AM/G4qCxidIpqfJuDXSm0fWVTgz+pBk0E7wFx/gMn4fRwLv4KTC+EXExxZbHVW6ClwuAOQJMjMWZEWC6GriJ31ByMZug56pOZx6WDD20wFdDT/DqKmDTDKrBq6BnOVDTESXgZ5Z/owGIus5Jx4wGPqy2aWuhV/6NsGbgGm6Wkk9iMVAM3NQM6huwKj+V1jfX6pSqJFIFrT1Oaj1WXmOF6R6/Bt2S+N2gWypZSqg7NOEsVbrlwLtC560QuoL3hqYeZWfnrrC2u4zxdNPgw9R/J2HZwda6xRr+f1d6OXQ2B/t3NU2D1z1fPMw9thrHBpS/AJT8Of7eVdPSoK3rntCtFZTev8tKfwHUBxjzil9I5gAAAABJRU5ErkJggg=="}" alt="" />`:""}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ysyt-agent-sdk",
3
- "version": "1.0.14",
3
+ "version": "1.0.15",
4
4
  "main": "dist/ysyt-agent-sdk.cjs.js",
5
5
  "module": "dist/ysyt-agent-sdk.esm.js",
6
6
  "types": "dist/index.d.ts",