@nethesis/phone-island
Version:
NethVoice CTI Phone Island
3 lines (2 loc) • 10.3 kB
JavaScript
;Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react");require("../../node_modules/react-redux/es/index.js");var t=require("../../node_modules/@fortawesome/react-fontawesome/index.es.js"),i=require("../../node_modules/@fortawesome/free-solid-svg-icons/index.mjs.js"),n=require("../../utils/streaming/streamingUtils.js"),a=require("../../lib/phone/call.js");require("../../store/index.js"),require("../../node_modules/socket.io-client/build/esm/index.js");var l=require("../../lib/user/default_device.js");require("../../node_modules/mic-check/lib/index.js"),require("../../lib/webrtc/janus.js"),require("../../node_modules/webrtc-adapter/src/js/adapter_core.js"),require("../Island.js");var r=require("../Button.js"),o=require("../AudioBars.js");require("../../node_modules/i18next/dist/esm/i18next.js");var s=require("../CustomThemedTooltip.js"),u=require("./Timer.js"),c=require("./Number.js"),d=require("./DisplayName.js"),p=require("./Avatar.js"),m=require("./Actions.js"),f=require("../Hangup.js");require("../../node_modules/@babel/runtime/helpers/defineProperty.js"),require("../../node_modules/@babel/runtime/helpers/objectWithoutProperties.js"),require("../../node_modules/@babel/runtime/helpers/typeof.js"),require("../../node_modules/html-parse-stringify/dist/html-parse-stringify.js"),require("../../node_modules/react-i18next/dist/es/context.js");var g=require("../../node_modules/react-i18next/dist/es/useTranslation.js");require("../../node_modules/@babel/runtime/helpers/slicedToArray.js");var v=require("../../node_modules/@nethesis/nethesis-solid-svg-icons/index.mjs.js"),x=require("../StreamingImage/index.js"),E=require("../VideoStreamingSkeleton/index.js"),j=require("../VideoStreamingEmptyState/index.js"),w=require("../../node_modules/react-redux/es/hooks/useSelector.js"),h=require("../../node_modules/react-redux/es/hooks/useDispatch.js");function b(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var N=b(e);function q(e,t){return!e&&!t}var y=e.memo((function(e){var t=e.children;return N.default.createElement("div",{className:"pi-grid pi-self-center pi-gap-1 pi-grid-cols-1 pi-grid-rows-2"},t)}));y.displayName="Details";var _=e.memo((function(){var b,_=g.useTranslation().t,A=w.useSelector((function(e){return e.currentCall})),k=A.incoming,T=A.accepted,C=A.outgoing,S=A.startTime,I=A.paused,F=A.number,P=A.isRecording,O=A.username,M=A.streamingSourceNumber,U=w.useSelector((function(e){return e.island})),B=U.isOpen,L=U.isFromStreaming,W=w.useSelector((function(e){return e.webrtc})).remoteAudioStream,z=w.useSelector((function(e){return e.listen})),D=z.isListen,H=z.isIntrude,V=z.isListenExtension,R=z.isIntrudeExtension,G=w.useSelector((function(e){return e.alerts})).data,J=w.useSelector((function(e){return e.currentUser})),K=w.useSelector((function(e){return e.streaming})),Q=K.videoSources,X=K.sourceImages,Y=e.useMemo((function(){return Object.values(G).filter((function(e){return e.active}))}),[G]),Z=e.useMemo((function(){return Y.length>0?Y[Y.length-1]:null}),[Y]),$=e.useMemo((function(){return L&&M&&!T}),[L,M,T]),ee=e.useMemo((function(){if(!M||!Q)return{canUnlock:!1,tooltipText:""};var e=Object.values(Q).find((function(e){return(null==e?void 0:e.extension)===M})),t=Boolean((null==e?void 0:e.cmdOpen)&&""!==(null==e?void 0:e.cmdOpen.trim()));return{canUnlock:t,tooltipText:t&&e?"".concat(_("VideoStreaming.Open"),": ").concat(null==e?void 0:e.description):""}}),[M,Q,_]),te=e.useMemo((function(){return""!==O&&"undefined"!==O}),[O]),ie=e.useCallback((function(){var e;return N.default.createElement("div",{className:"pi-text-gray-600 dark:pi-text-gray-300 pi-font-normal pi-text-sm pi-flex pi-items-center pi-truncate"},N.default.createElement(t.FontAwesomeIcon,{size:"sm",icon:v.faOfficePhone,className:"pi-mr-1"}),N.default.createElement("span",{className:"pi-max-w-16 pi-truncate"},(null===(e=null==J?void 0:J.default_device)||void 0===e?void 0:e.description)||_("Common.Physical phone")))}),[null===(b=null==J?void 0:J.default_device)||void 0===b?void 0:b.description,_]),ne=e.useCallback((function(e){var n=B?"pi-h-12 pi-w-12":"pi-h-6 pi-w-6",a=B?"pi-h-8":"pi-h-4 pi-w-4 pi-rounded-full",l=B?"pi-w-8 pi-h-8":"pi-h-6 pi-w-6",r="red"===e?"pi-bg-red-400":"pi-bg-green-400",o="red"===e?"pi-text-red-500":"pi-text-green-500";return N.default.createElement("div",{className:"".concat(n," pi-flex pi-justify-center pi-items-center")},N.default.createElement("div",{className:"".concat(a," pi-w-fit pi-flex pi-justify-center pi-items-center pi-gap-1 pi-overflow-hidden")},N.default.createElement("span",{className:"".concat(l," pi-animate-ping pi-absolute pi-inline-flex pi-rounded-full ").concat(r," pi-opacity-75")}),N.default.createElement(t.FontAwesomeIcon,{className:"pi-w-4 pi-h-6 pi-rotate-45 ".concat(o),icon:i.faCircle})))}),[B]),ae=e.useMemo((function(){var e="pi-grid pi-items-center";return B&&(e="pi-grid pi-items-start",T?e+=" pi-grid-rows-[72px_1fr]":k?e+=" pi-grid-cols-[256px_114px]":C&&(e+=" pi-grid-cols-[1fr_84px]")),$?"pi-flex pi-flex-col":e}),[B,T,k,C,$]),le=e.useMemo((function(){return"pi-grid ".concat(B&&!T&&C?"pi-grid-cols-[48px_1fr]":B&&!T&&k?"pi-grid-cols-[48px_1fr_1px]":B&&T?"pi-grid-cols-[48px_164px_48px]":B||T?"pi-grid-cols-[24px_66px_24px]":"pi-grid-cols-[24px_102px]"," pi-gap-").concat(B?"5":"3"," pi-items-").concat(B?"start":"center"," pi-justify-center pi-w-full")}),[B,T,k,C]),re=e.useMemo((function(){return $?"pi-grid-cols-3":q(C,T)?"pi-grid-cols-2":T?"pi-grid-cols-1 pi-justify-items-center":"pi-grid-cols-1 pi-justify-items-end"}),[$,C,T]),oe=e.useCallback((function(){var e=B?"pi-relative pi-z-30 pi-h-12 pi-w-12 pi-rounded-sm pi-bg-cover":"pi-relative pi-z-30 pi-h-6 pi-w-6 pi-rounded-sm pi-bg-cover";return D?N.default.createElement(t.FontAwesomeIcon,{className:e,icon:i.faEarListen}):H?N.default.createElement(t.FontAwesomeIcon,{className:e,icon:i.faHandPointUp}):""!==F&&te?N.default.createElement(p.default,null):k&&!te?N.default.createElement(t.FontAwesomeIcon,{className:"".concat(e," pi--rotate-45"),icon:i.faArrowLeft}):!T||C||te?C&&!te?N.default.createElement(t.FontAwesomeIcon,{className:"".concat(e," pi-rotate-[135deg]"),icon:i.faArrowLeft}):null:N.default.createElement(t.FontAwesomeIcon,{className:"".concat(e," pi--rotate-45"),icon:i.faArrowLeft})}),[B,D,H,F,te,k,C,T]),se=e.useCallback((function(){return B?H?N.default.createElement(y,null,N.default.createElement("span",{className:"pi-justify-center pi-w-fit pi-relative pi-inline-block pi-font-bold pi-text-base"},_("Common.Intrude"),R?" - ".concat(R):""),T?l.isPhysical()?ie():N.default.createElement(u.default,{startTime:S,isNotAlwaysWhite:!0}):R?"".concat(R):""):D?N.default.createElement(y,null,N.default.createElement("span",{className:"pi-justify-center pi-w-fit pi-relative pi-inline-block pi-font-bold pi-text-base"},_("Common.Listen"),V?" - ".concat(V):""),T?l.isPhysical()?ie():N.default.createElement(u.default,{startTime:S,isNotAlwaysWhite:!0}):V?"".concat(V):""):N.default.createElement(y,null,N.default.createElement(d.default,null),T?l.isPhysical()?ie():N.default.createElement(u.default,{startTime:S,isNotAlwaysWhite:!0}):N.default.createElement(c.default,null)):null}),[B,H,D,T,S,R,V,_,ie]),ue=e.useCallback((function(){return T&&P?ne("red"):T&&W&&!l.isPhysical()?N.default.createElement(o.AudioBars,{audioStream:W,paused:I,size:B?"large":"small"}):T&&l.isPhysical()?ne("green"):null}),[T,P,W,B,I,ne]);if(null!==Z)return null;var ce=h.useDispatch(),de=e.useCallback((function(){if(!Q||0===Object.keys(Q).length||!M)return N.default.createElement(E.default,{className:"pi-w-full pi-h-40 pi-mt-4"});var e=Object.values(Q).find((function(e){return e.extension===M}));return e&&(X[e.id]||e.image)?N.default.createElement(x.default,null):N.default.createElement(j.default,{className:"pi-w-full pi-h-40 pi-mt-4"})}),[M,Q,X]);return N.default.createElement("div",{className:"pi-bg-red pi-content-center pi-justify-center"},N.default.createElement("div",{className:ae},$?N.default.createElement(N.default.Fragment,null,N.default.createElement("div",{className:"pi-flex pi-items-center pi-justify-between"},N.default.createElement("div",{className:"pi-flex pi-items-center pi-gap-4"},oe(),N.default.createElement("div",{className:"pi-flex pi-flex-col pi-justify-center pi-space-y-2"},N.default.createElement(d.default,null),N.default.createElement(c.default,null))),N.default.createElement("div",{className:"pi-flex pi-gap-2"},N.default.createElement(f.default,{description:_("Tooltip.Hangup")}),!C&&N.default.createElement(r.Button,{onClick:function(){return a.answerIncomingCall(),void setTimeout((function(){ce.island.setIslandView("streamingAnswer")}),200)},variant:"green","data-tooltip-id":"tooltip-answer","data-tooltip-content":_("Tooltip.Answer")||""},N.default.createElement(t.FontAwesomeIcon,{className:"pi-w-5 pi-h-5",icon:i.faPhone})),(null==ee?void 0:ee.canUnlock)&&N.default.createElement(r.Button,{variant:"default",onClick:n.handleStreamingUnlock,"data-tooltip-id":"tooltip-unlock","data-tooltip-content":null==ee?void 0:ee.tooltipText},N.default.createElement(t.FontAwesomeIcon,{className:"pi-w-5 pi-h-5",icon:i.faUnlock})))),de()):N.default.createElement(N.default.Fragment,null,N.default.createElement("div",{className:le},oe(),se(),!B&&!T&&N.default.createElement(d.default,null),!B&&T&&N.default.createElement(u.default,{startTime:S,isNotAlwaysWhite:!0}),ue()),B&&N.default.createElement(N.default.Fragment,null,N.default.createElement("div",{className:"".concat(D||H?"":"pi-grid pi-gap-y-5")},T&&N.default.createElement(m.default,null),N.default.createElement("div",{className:"pi-grid ".concat(re," pi-gap-3.5")},N.default.createElement(f.default,{description:_("Tooltip.Hangup and transfer")}),q(C,T)&&N.default.createElement(r.Button,{onClick:a.answerIncomingCall,variant:"green","data-tooltip-id":"tooltip-answer-left","data-tooltip-content":_("Tooltip.Answer")||""},N.default.createElement(t.FontAwesomeIcon,{className:"pi-w-6 pi-h-6",icon:i.faPhone}))))))),N.default.createElement(s.CustomThemedTooltip,{id:"tooltip-answer-left",place:"left"}),N.default.createElement(s.CustomThemedTooltip,{id:"tooltip-answer",place:"left"}),N.default.createElement(s.CustomThemedTooltip,{id:"tooltip-unlock",place:"left"}))}));exports.default=_;
//# sourceMappingURL=index.js.map