@nethesis/phone-island 0.7.106 → 0.7.107
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.
- package/dist/components/AlertView/Alert.js +1 -1
- package/dist/components/AlertView/Alert.js.map +1 -1
- package/dist/components/AudioPlayerView/Avatar.js +1 -1
- package/dist/components/AudioPlayerView/Avatar.js.map +1 -1
- package/dist/components/AudioPlayerView/index.js +1 -1
- package/dist/components/AudioPlayerView/index.js.map +1 -1
- package/dist/components/CallView/Actions.js +1 -1
- package/dist/components/CallView/Actions.js.map +1 -1
- package/dist/components/CallView/index.js +1 -1
- package/dist/components/CallView/index.js.map +1 -1
- package/dist/components/Close.js +1 -1
- package/dist/components/Close.js.map +1 -1
- package/dist/components/Hangup.js +1 -1
- package/dist/components/Hangup.js.map +1 -1
- package/dist/components/KeypadView/index.js +1 -1
- package/dist/components/KeypadView/index.js.map +1 -1
- package/dist/components/RecorderView/Actions.js +1 -1
- package/dist/components/RecorderView/Actions.js.map +1 -1
- package/dist/components/TransferView/TransferActions.js +1 -1
- package/dist/components/TransferView/TransferActions.js.map +1 -1
- package/dist/components/TransferView/TransferList.js +1 -1
- package/dist/components/TransferView/TransferList.js.map +1 -1
- package/dist/index.css +1 -1
- package/dist/node_modules/@fortawesome/free-solid-svg-icons/index.mjs.js +2 -0
- package/dist/node_modules/@fortawesome/free-solid-svg-icons/index.mjs.js.map +1 -0
- package/dist/node_modules/@nethesis/nethesis-solid-svg-icons/index.mjs.js +1 -1
- package/dist/node_modules/@nethesis/nethesis-solid-svg-icons/index.mjs.js.map +1 -1
- package/package.json +4 -7
- package/dist/node_modules/@nethesis/nethesis-light-svg-icons/index.mjs.js +0 -2
- package/dist/node_modules/@nethesis/nethesis-light-svg-icons/index.mjs.js.map +0 -1
- package/dist/static/icons/PhoneKeypadLight.d.ts +0 -3
- package/dist/static/icons/PhoneKeypadLight.js +0 -2
- package/dist/static/icons/PhoneKeypadLight.js.map +0 -1
- package/dist/static/icons/PhoneKeypadSolid.d.ts +0 -3
- package/dist/static/icons/PhoneKeypadSolid.js +0 -2
- package/dist/static/icons/PhoneKeypadSolid.js.map +0 -1
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),r=require("../../utils/genericFunctions/classNames.js"),a=require("../../node_modules/@fortawesome/react-fontawesome/index.es.js"),t=require("../../node_modules/@fortawesome/free-solid-svg-icons/index.mjs.js");function i(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var s=i(e),n={base:"pi-border-4 pi-rounded-2xl pi-p-4 pi-flex pi-gap-5 pi-items-center",red:"pi-border-red-600",orange:"pi-border-orange-600",green:"pi-border-green-600"};exports.default=function(e){var i=e.color,o=e.message;return s.default.createElement("div",{className:r.classNames(n.base,n[i])},s.default.createElement("div",{className:"pi-w-12 pi-h-12 pi-rounded-xl pi-bg-gray-300 pi-shrink-0 pi-flex pi-justify-center pi-items-center"},"green"===i?s.default.createElement(a.FontAwesomeIcon,{icon:t.faCircleCheck,size:"xl",className:"pi-text-black"}):"orange"===i?s.default.createElement(a.FontAwesomeIcon,{icon:t.faTriangleExclamation,size:"xl",className:"pi-text-black"}):s.default.createElement(a.FontAwesomeIcon,{icon:t.faCircleXmark,size:"xl",className:"pi-text-black"})),s.default.createElement("div",{className:"pi-text-sm"},o))};
|
|
2
2
|
//# sourceMappingURL=Alert.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Alert.js","sources":["../../../src/components/AlertView/Alert.tsx"],"sourcesContent":["// Copyright (C) 2022 Nethesis S.r.l.\n// SPDX-License-Identifier: AGPL-3.0-or-later\n\nimport React, { type FC } from 'react'\nimport { classNames } from '../../utils/'\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome'\nimport {\n faTriangleExclamation,\n faCircleCheck,\n faCircleXmark,\n} from '@
|
|
1
|
+
{"version":3,"file":"Alert.js","sources":["../../../src/components/AlertView/Alert.tsx"],"sourcesContent":["// Copyright (C) 2022 Nethesis S.r.l.\n// SPDX-License-Identifier: AGPL-3.0-or-later\n\nimport React, { type FC } from 'react'\nimport { classNames } from '../../utils/'\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome'\nimport {\n faTriangleExclamation,\n faCircleCheck,\n faCircleXmark,\n} from '@fortawesome/free-solid-svg-icons'\n\nconst classes = {\n base: 'pi-border-4 pi-rounded-2xl pi-p-4 pi-flex pi-gap-5 pi-items-center',\n red: 'pi-border-red-600',\n orange: 'pi-border-orange-600',\n green: 'pi-border-green-600',\n}\n\nconst Alert: FC<AlertProps> = ({ color, message }) => {\n return (\n <div className={classNames(classes.base, classes[color])}>\n <div className='pi-w-12 pi-h-12 pi-rounded-xl pi-bg-gray-300 pi-shrink-0 pi-flex pi-justify-center pi-items-center'>\n {color === 'green' ? (\n <FontAwesomeIcon icon={faCircleCheck} size='xl' className='pi-text-black' />\n ) : color === 'orange' ? (\n <FontAwesomeIcon icon={faTriangleExclamation} size='xl' className='pi-text-black' />\n ) : (\n <FontAwesomeIcon icon={faCircleXmark} size='xl' className='pi-text-black' />\n )}\n </div>\n <div className='pi-text-sm'>{message}</div>\n </div>\n )\n}\n\nexport default Alert\n\ninterface AlertProps {\n type: 'alert' | 'feedback'\n color: 'red' | 'orange' | 'green'\n message: string\n}\n"],"names":["classes","base","red","orange","green","_a","color","message","React","createElement","className","classNames","FontAwesomeIcon","icon","faCircleCheck","size","faTriangleExclamation","faCircleXmark"],"mappings":"gYAYMA,EAAU,CACdC,KAAM,qEACNC,IAAK,oBACLC,OAAQ,uBACRC,MAAO,uCAGqB,SAACC,OAAEC,EAAKD,EAAAC,MAAEC,EAAOF,EAAAE,QAC7C,OACEC,UAAAC,cAAA,MAAA,CAAKC,UAAWC,aAAWX,EAAQC,KAAMD,EAAQM,KAC/CE,UAAAC,cAAA,MAAA,CAAKC,UAAU,sGACF,UAAVJ,EACCE,UAAAC,cAACG,EAAAA,gBAAe,CAACC,KAAMC,EAAaA,cAAEC,KAAK,KAAKL,UAAU,kBAC9C,WAAVJ,EACFE,EAAA,QAAAC,cAACG,EAAAA,gBAAe,CAACC,KAAMG,EAAqBA,sBAAED,KAAK,KAAKL,UAAU,kBAElEF,EAAAA,sBAACI,EAAeA,gBAAA,CAACC,KAAMI,gBAAeF,KAAK,KAAKL,UAAU,mBAG9DF,EAAK,QAAAC,cAAA,MAAA,CAAAC,UAAU,cAAcH,GAGnC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),r=require("../../node_modules/@fortawesome/react-fontawesome/index.es.js"),
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),r=require("../../node_modules/@fortawesome/react-fontawesome/index.es.js"),o=require("../../node_modules/@fortawesome/free-solid-svg-icons/index.mjs.js");require("../../node_modules/framer-motion/dist/framer-motion.js"),require("../../node_modules/react-redux/es/index.js");var t=require("../../node_modules/react-redux/es/hooks/useSelector.js"),i=require("../../_virtual/framer-motion.js");function n(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var s=n(e);exports.Avatar=function(e){var n=e.type,a=t.useSelector((function(e){return e.island})).isOpen;return s.default.createElement(i.framerMotion.exports.motion.div,{animate:a?{width:"48px",height:"48px",borderRadius:"12px"}:{width:"24px",height:"24px",borderRadius:"6px"},className:"pi-w-12 pi-h-12 pi-bg-gray-500 pi-rounded-xl pi-flex pi-items-center pi-justify-center pi-flex-shrink-0 pi-flex-grow-0"},"announcement"===n?s.default.createElement(r.FontAwesomeIcon,{size:a?"2xl":"lg",icon:o.faBullhorn}):"call_recording"===n?s.default.createElement(r.FontAwesomeIcon,{size:a?"2xl":"lg",icon:o.faVoicemail}):s.default.createElement(r.FontAwesomeIcon,{size:a?"2xl":"lg",icon:o.faMusic}))};
|
|
2
2
|
//# sourceMappingURL=Avatar.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Avatar.js","sources":["../../../src/components/AudioPlayerView/Avatar.tsx"],"sourcesContent":["// Copyright (C) 2022 Nethesis S.r.l.\n// SPDX-License-Identifier: AGPL-3.0-or-later\n\nimport React, { type FC } from 'react'\nimport { type TypeTypes } from '../../types'\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome'\nimport { faBullhorn, faVoicemail, faMusic } from '@
|
|
1
|
+
{"version":3,"file":"Avatar.js","sources":["../../../src/components/AudioPlayerView/Avatar.tsx"],"sourcesContent":["// Copyright (C) 2022 Nethesis S.r.l.\n// SPDX-License-Identifier: AGPL-3.0-or-later\n\nimport React, { type FC } from 'react'\nimport { type TypeTypes } from '../../types'\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome'\nimport { faBullhorn, faVoicemail, faMusic } from '@fortawesome/free-solid-svg-icons'\nimport { motion } from 'framer-motion/dist/framer-motion'\nimport { useSelector } from 'react-redux'\nimport { RootState } from '../../store'\n\nexport const Avatar: FC<AvatarProps> = ({ type }) => {\n const { isOpen } = useSelector((state: RootState) => state.island)\n\n return (\n <motion.div\n animate={\n isOpen\n ? { width: '48px', height: '48px', borderRadius: '12px' }\n : { width: '24px', height: '24px', borderRadius: '6px' }\n }\n className='pi-w-12 pi-h-12 pi-bg-gray-500 pi-rounded-xl pi-flex pi-items-center pi-justify-center pi-flex-shrink-0 pi-flex-grow-0'\n >\n {type === 'announcement' ? (\n <FontAwesomeIcon size={isOpen ? '2xl' : 'lg'} icon={faBullhorn} />\n ) : type === 'call_recording' ? (\n <FontAwesomeIcon size={isOpen ? '2xl' : 'lg'} icon={faVoicemail} />\n ) : (\n <FontAwesomeIcon size={isOpen ? '2xl' : 'lg'} icon={faMusic} />\n )}\n </motion.div>\n )\n}\n\nexport interface AvatarProps {\n type?: TypeTypes | null\n}\n"],"names":["_a","type","isOpen","useSelector","state","island","React","motion","div","animate","width","height","borderRadius","className","createElement","FontAwesomeIcon","size","icon","faBullhorn","faVoicemail","faMusic"],"mappings":"okBAWuC,SAACA,GAAE,IAAAC,EAAID,EAAAC,KACpCC,EAAWC,eAAY,SAACC,GAAqB,OAAAA,EAAMC,iBAE3D,OACEC,EAAAA,sBAACC,EAAAA,aAAAA,QAAAA,OAAOC,IACN,CAAAC,QACEP,EACI,CAAEQ,MAAO,OAAQC,OAAQ,OAAQC,aAAc,QAC/C,CAAEF,MAAO,OAAQC,OAAQ,OAAQC,aAAc,OAErDC,UAAU,0HAEA,iBAATZ,EACCK,EAAAA,QAAAQ,cAACC,kBAAgB,CAAAC,KAAMd,EAAS,MAAQ,KAAMe,KAAMC,EAAUA,aACnD,mBAATjB,EACFK,UAAAQ,cAACC,EAAeA,gBAAC,CAAAC,KAAMd,EAAS,MAAQ,KAAMe,KAAME,EAAAA,cAEpDb,wBAACS,EAAeA,gBAAA,CAACC,KAAMd,EAAS,MAAQ,KAAMe,KAAMG,EAAAA,UAI5D"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react");require("../../node_modules/react-redux/es/index.js");var t=require("./Avatar.js"),a=require("../AudioBars.js"),
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react");require("../../node_modules/react-redux/es/index.js");var t=require("./Avatar.js"),a=require("../AudioBars.js"),r=require("./Progress.js"),l=require("../Button.js"),i=require("../../node_modules/@fortawesome/react-fontawesome/index.es.js"),o=require("../../node_modules/@fortawesome/free-solid-svg-icons/index.mjs.js"),s=require("../../node_modules/react-tooltip/dist/react-tooltip.min.cjs.js"),u=require("../../node_modules/react-redux/es/hooks/useSelector.js"),n=require("../../node_modules/react-redux/es/hooks/useDispatch.js");function d(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var c=d(e),p=function(){var e=u.useSelector((function(e){return e.player})),d=e.audioPlayerTrackType,p=e.audioPlayerTrackName,f=e.audioPlayer,m=e.audioPlayerPlaying,x=u.useSelector((function(e){return e.island})).isOpen,y=n.useDispatch();return c.default.createElement("div",{className:"pi-flex pi-gap-7 pi-flex-col"},c.default.createElement("div",{className:"pi-flex pi-gap-4"},c.default.createElement(t.Avatar,{type:d}),c.default.createElement("div",{className:"pi-flex pi-items-center pi-w-full"},c.default.createElement("div",{style:{width:x?"202px":"60px"},className:"pi-text-base pi-overflow-hidden pi-text-ellipsis pi-whitespace-nowrap pi-inline-block"},p)),c.default.createElement(a.AudioBars,{audioElement:f&&f.current,size:x?"large":"small"})),x&&c.default.createElement("div",null,c.default.createElement(r.Progress,null),c.default.createElement("div",{className:"pi-w-full pi-flex pi-justify-center pi-items-center pi-pt-7"},c.default.createElement(l.Button,{onClick:m?function(){y.player.pauseAudioPlayer()}:function(){y.player.startAudioPlayer((function(){}))},variant:"default",style:{transform:"scale(1.15)"},"data-tooltip-id":"tooltip","data-tooltip-content":m?"Pause":"Play"},m?c.default.createElement(i.FontAwesomeIcon,{icon:o.faPause,size:"xl"}):c.default.createElement(i.FontAwesomeIcon,{icon:o.faPlay,size:"xl"})))),c.default.createElement(s.Tooltip,{className:"pi-z-20",id:"tooltip",place:"bottom"}))};exports.KeypadView=p,exports.default=p;
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../src/components/AudioPlayerView/index.tsx"],"sourcesContent":["// Copyright (C) 2022 Nethesis S.r.l.\n// SPDX-License-Identifier: AGPL-3.0-or-later\n\nimport React, { type FC
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../src/components/AudioPlayerView/index.tsx"],"sourcesContent":["// Copyright (C) 2022 Nethesis S.r.l.\n// SPDX-License-Identifier: AGPL-3.0-or-later\n\nimport React, { type FC } from 'react'\nimport { useDispatch, useSelector } from 'react-redux'\nimport { Dispatch, RootState } from '../../store'\nimport { Avatar } from './Avatar'\nimport { AudioBars } from '../AudioBars'\nimport Progress from './Progress'\nimport { Button } from '../Button'\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome'\nimport { faPause, faPlay } from '@fortawesome/free-solid-svg-icons'\nimport { Tooltip } from 'react-tooltip/dist/react-tooltip.min.cjs'\n\nexport const KeypadView: FC<KeypadViewTypes> = () => {\n const { audioPlayerTrackType, audioPlayerTrackName, audioPlayer, audioPlayerPlaying } =\n useSelector((state: RootState) => state.player)\n const { isOpen } = useSelector((state: RootState) => state.island)\n const dispatch = useDispatch<Dispatch>()\n\n function startPlaying() {\n dispatch.player.startAudioPlayer(() => {})\n }\n\n function pausePlaying() {\n dispatch.player.pauseAudioPlayer()\n }\n\n return (\n <div className='pi-flex pi-gap-7 pi-flex-col'>\n <div className='pi-flex pi-gap-4'>\n <Avatar type={audioPlayerTrackType} />\n <div className='pi-flex pi-items-center pi-w-full'>\n <div\n style={{\n width: isOpen ? '202px' : '60px',\n }}\n className={`pi-text-base pi-overflow-hidden pi-text-ellipsis pi-whitespace-nowrap pi-inline-block`}\n >\n {audioPlayerTrackName}\n </div>\n </div>\n <AudioBars\n audioElement={audioPlayer && audioPlayer.current}\n size={isOpen ? 'large' : 'small'}\n />\n </div>\n {isOpen && (\n <div>\n <Progress />\n <div className='pi-w-full pi-flex pi-justify-center pi-items-center pi-pt-7'>\n <Button\n onClick={audioPlayerPlaying ? pausePlaying : startPlaying}\n variant='default'\n style={{ transform: 'scale(1.15)' }}\n data-tooltip-id='tooltip'\n data-tooltip-content={audioPlayerPlaying ? 'Pause' : 'Play'}\n >\n {audioPlayerPlaying ? (\n <FontAwesomeIcon icon={faPause} size='xl' />\n ) : (\n <FontAwesomeIcon icon={faPlay} size='xl' />\n )}\n </Button>\n </div>\n </div>\n )}\n {/* Buttons tooltips */}\n <Tooltip className='pi-z-20' id='tooltip' place='bottom' />\n </div>\n )\n}\n\nexport default KeypadView\n\nexport interface KeypadViewTypes {}\n"],"names":["KeypadView","_a","useSelector","state","player","audioPlayerTrackType","audioPlayerTrackName","audioPlayer","audioPlayerPlaying","isOpen","island","dispatch","useDispatch","React","createElement","className","Avatar","type","style","width","AudioBars","audioElement","current","size","Progress","Button","onClick","pauseAudioPlayer","startAudioPlayer","variant","transform","FontAwesomeIcon","icon","faPause","faPlay","Tooltip","id","place"],"mappings":"isBAcaA,EAAkC,WACvC,IAAAC,EACJC,eAAY,SAACC,GAAqB,OAAAA,EAAMC,UADlCC,EAAoBJ,EAAAI,qBAAEC,EAAoBL,EAAAK,qBAAEC,EAAWN,EAAAM,YAAEC,EAAkBP,EAAAO,mBAE3EC,EAAWP,eAAY,SAACC,GAAqB,OAAAA,EAAMO,iBACrDC,EAAWC,EAAAA,cAUjB,OACEC,EAAA,QAAAC,cAAA,MAAA,CAAKC,UAAU,gCACbF,EAAAA,QAAKC,cAAA,MAAA,CAAAC,UAAU,oBACbF,EAAAA,QAAAC,cAACE,EAAAA,OAAM,CAACC,KAAMZ,IACdQ,EAAAA,QAAKC,cAAA,MAAA,CAAAC,UAAU,qCACbF,EAAAA,QAAAC,cAAA,MAAA,CACEI,MAAO,CACLC,MAAOV,EAAS,QAAU,QAE5BM,UAAW,yFAEVT,IAGLO,EAAAA,QAACC,cAAAM,EAAAA,WACCC,aAAcd,GAAeA,EAAYe,QACzCC,KAAMd,EAAS,QAAU,WAG5BA,GACCI,EAAA,QAAAC,cAAA,MAAA,KACED,UAAAC,cAACU,EAAQA,SAAG,MACZX,EAAAA,QAAKC,cAAA,MAAA,CAAAC,UAAU,+DACbF,UAAAC,cAACW,EAAAA,OAAM,CACLC,QAASlB,EA5BrB,WACEG,EAASP,OAAOuB,kBACjB,EAND,WACEhB,EAASP,OAAOwB,kBAAiB,WAAQ,GAC1C,EA+BWC,QAAQ,UACRX,MAAO,CAAEY,UAAW,eACJ,kBAAA,UACM,uBAAAtB,EAAqB,QAAU,QAEpDA,EACCK,wBAACkB,kBAAe,CAACC,KAAMC,UAASV,KAAK,OAErCV,EAAAA,QAACC,cAAAiB,EAAeA,gBAAC,CAAAC,KAAME,EAAMA,OAAEX,KAAK,UAO9CV,EAAAA,QAAAC,cAACqB,UAAQ,CAAApB,UAAU,UAAUqB,GAAG,UAAUC,MAAM,WAGtD"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("../../node_modules/tslib/tslib.es6.js"),t=require("react"),n=require("../../
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("../../node_modules/tslib/tslib.es6.js"),t=require("react"),n=require("../../lib/phone/call.js"),a=require("../../utils/customHooks/useEventListener.js"),r=require("../../utils/genericFunctions/eventDispatch.js");require("../../node_modules/react-redux/es/index.js");var o=require("../../store/index.js");require("../../node_modules/socket.io-client/build/esm/index.js"),require("../../node_modules/webrtc-adapter/src/js/adapter_core.js"),require("../../lib/webrtc/janus.js");var i=require("../../lib/webrtc/messages.js");require("../../node_modules/mic-check/lib/index.js");var l=require("../../static/outgoing_ringtone.js");require("../Island.js");var s=require("../Button.js"),u=require("../../node_modules/@fortawesome/react-fontawesome/index.es.js"),c=require("../../node_modules/@fortawesome/free-solid-svg-icons/index.mjs.js");require("../../node_modules/framer-motion/dist/framer-motion.js");var d=require("../../node_modules/@nethesis/nethesis-solid-svg-icons/index.mjs.js"),f=require("../TransferView/TransferActions.js"),p=require("../../node_modules/react-tooltip/dist/react-tooltip.min.cjs.js"),m=require("../../node_modules/react-redux/es/hooks/useSelector.js"),v=require("../../node_modules/react-redux/es/hooks/useDispatch.js");function j(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var E=j(t);exports.default=function(){var t=m.useSelector((function(e){return e.currentCall})),j=t.paused,g=t.muted,x=m.useSelector((function(e){return e.currentCall.parked})),C=m.useSelector((function(e){return e.island})),w=C.view,q=C.actionsExpanded,y=m.useSelector((function(e){return e.currentCall.transferring})),h=v.useDispatch();return a.useEventListener("phone-island-transfer-call",(function(t){!function(t){e.__awaiter(this,void 0,void 0,(function(){return e.__generator(this,(function(e){switch(e.label){case 0:return[4,n.attendedTransfer(t)];case 1:return e.sent()&&(h.currentCall.updateCurrentCall({transferring:!0,paused:!1}),h.player.playRemoteAudio()),[2]}}))}))}(t.to)})),E.default.createElement(E.default.Fragment,null,E.default.createElement("div",{className:"pi-grid pi-grid-cols-4 pi-auto-cols-max pi-gap-y-5 pi-justify-items-center pi-place-items-center pi-justify-center"},E.default.createElement(s.Button,{variant:"default",active:!!j,onClick:function(){return j?n.unpauseCurrentCall():n.pauseCurrentCall()},"data-tooltip-id":"tooltip","data-tooltip-content":j?"Play":"Pause"},j?E.default.createElement(u.FontAwesomeIcon,{size:"xl",icon:c.faPlay}):E.default.createElement(u.FontAwesomeIcon,{size:"xl",icon:c.faPause})),E.default.createElement(s.Button,{variant:"default",active:!!g,onClick:function(){return g?n.unmuteCurrentCall():n.muteCurrentCall()},"data-tooltip-id":"tooltip","data-tooltip-content":g?"Unmute":"Mute"},g?E.default.createElement(u.FontAwesomeIcon,{size:"xl",icon:c.faMicrophoneSlash}):E.default.createElement(u.FontAwesomeIcon,{size:"xl",icon:c.faMicrophone})),E.default.createElement(s.Button,{active:y,onClick:y?function(){i.sendDTMF("*"),o.store.getState().player.audioPlayerPlaying||h.player.updateStartAudioPlayer({src:l.default,loop:!0}),setTimeout((function(){i.sendDTMF("1"),h.player.stopAudioPlayer(),y&&setTimeout((function(){h.currentCall.updateTransferring(!1)}),500)}),500)}:function(){h.island.setIslandView("transfer"!==w?"transfer":"call"),n.pauseCurrentCall()},variant:"default","data-tooltip-id":"tooltip","data-tooltip-content":y?"Cancel transfer":"Transfer"},y?E.default.createElement(u.FontAwesomeIcon,{className:"",size:"xl",icon:c.faArrowDownUpAcrossLine}):E.default.createElement(u.FontAwesomeIcon,{size:"xl",className:"pi-rotate-90",icon:c.faArrowRightArrowLeft})),E.default.createElement(s.Button,{active:q,variant:"transparent",onClick:function(){q?h.island.toggleActionsExpanded(!1):h.island.toggleActionsExpanded(!0)},"data-tooltip-id":"tooltip","data-tooltip-content":q?"Collapse":"Expand"},q?E.default.createElement(u.FontAwesomeIcon,{className:"",size:"xl",icon:c.faChevronUp}):E.default.createElement(u.FontAwesomeIcon,{size:"xl",icon:c.faChevronDown}))),q?E.default.createElement(E.default.Fragment,null," ",E.default.createElement("div",{className:"pi-grid pi-grid-cols-4 pi-auto-cols-max pi-gap-y-5 pi-justify-items-center pi-place-items-center pi-justify-center"},E.default.createElement(s.Button,{active:"keypad"===w,variant:"default",onClick:function(){h.island.setIslandView("keypad"!==w?"keypad":"call")},"data-tooltip-id":"tooltip","data-tooltip-content":"Keyboard"},E.default.createElement(u.FontAwesomeIcon,{size:"xl",icon:d.faGridRound})),E.default.createElement(s.Button,{active:x,variant:"default",onClick:function(){n.park(),h.currentCall.setParked(!0),r.eventDispatch("phone-island-call-parked",{})},"data-tooltip-id":"tooltip","data-tooltip-content":"Park"},E.default.createElement(u.FontAwesomeIcon,{size:"xl",icon:c.faSquareParking})),y&&E.default.createElement(f.TransferActions,null))):E.default.createElement(E.default.Fragment,null),E.default.createElement(p.Tooltip,{className:"pi-z-20",id:"tooltip",place:"bottom"}))};
|
|
2
2
|
//# sourceMappingURL=Actions.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Actions.js","sources":["../../../src/components/CallView/Actions.tsx"],"sourcesContent":["// Copyright (C) 2022 Nethesis S.r.l.\n// SPDX-License-Identifier: AGPL-3.0-or-later\n\nimport React, { type FC } from 'react'\nimport {\n faPause as faPauseRegular,\n faMicrophone as faMicrophoneLight,\n faArrowDownArrowUp,\n faCircleParking,\n faChevronDown,\n faChevronUp,\n} from '@nethesis/nethesis-light-svg-icons'\nimport {\n muteCurrentCall,\n unmuteCurrentCall,\n pauseCurrentCall,\n unpauseCurrentCall,\n attendedTransfer,\n} from '../../lib/phone/call'\nimport PhoneKeypadLight from '../../static/icons/PhoneKeypadLight'\nimport PhoneKeypadSolid from '../../static/icons/PhoneKeypadSolid'\nimport { Button } from '../'\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome'\nimport {\n faMicrophoneSlash,\n faPlay,\n faArrowDownUpAcrossLine,\n faCircleParking as faCircleParkingSolid,\n} from '@nethesis/nethesis-solid-svg-icons'\nimport { RootState, Dispatch } from '../../store'\nimport { useSelector, useDispatch } from 'react-redux'\nimport { sendDTMF } from '../../lib/webrtc/messages'\nimport { store } from '../../store'\nimport outgoingRingtone from '../../static/outgoing_ringtone'\nimport { TransferActions } from '../TransferView'\nimport { Tooltip } from 'react-tooltip/dist/react-tooltip.min.cjs'\nimport { park } from '../../lib/phone/call'\nimport { eventDispatch, useEventListener } from '../../utils'\n\nconst Actions: FC = () => {\n // Get multiple values from currentCall store\n const { paused, muted } = useSelector((state: RootState) => state.currentCall)\n const parked = useSelector((state: RootState) => state.currentCall.parked)\n\n // Get isOpen and view from island store\n const { view, actionsExpanded } = useSelector((state: RootState) => state.island)\n const transferring = useSelector((state: RootState) => state.currentCall.transferring)\n\n const dispatch = useDispatch<Dispatch>()\n\n function openKeypad() {\n dispatch.island.setIslandView(view !== 'keypad' ? 'keypad' : 'call')\n }\n\n function transfer() {\n // Open the transfer view\n dispatch.island.setIslandView(view !== 'transfer' ? 'transfer' : 'call')\n // Pause the call\n pauseCurrentCall()\n }\n\n // Cancels the current transfer through dtmfs\n function calcelTransfer() {\n sendDTMF('*')\n const { audioPlayerPlaying } = store.getState().player\n // Check if the local audio is already playing and start playing\n if (!audioPlayerPlaying) {\n dispatch.player.updateStartAudioPlayer({\n src: outgoingRingtone,\n loop: true,\n })\n }\n setTimeout(() => {\n sendDTMF('1')\n dispatch.player.stopAudioPlayer()\n // The workarround to disable transfer because of the wrong conv.connection value from ws\n if (transferring) {\n setTimeout(() => {\n dispatch.currentCall.updateTransferring(false)\n }, 500)\n }\n }, 500)\n }\n\n function toggleActionsExpanded() {\n if (actionsExpanded) {\n dispatch.island.toggleActionsExpanded(false)\n } else {\n dispatch.island.toggleActionsExpanded(true)\n }\n }\n\n function parkAction() {\n park()\n dispatch.currentCall.setParked(true)\n eventDispatch('phone-island-call-parked', {})\n }\n\n /**\n * Event listner for phone-island-transfer-call event\n */\n useEventListener('phone-island-transfer-call', (data) => {\n const transferNumber = data.to\n handleAttendedTransfer(transferNumber)\n })\n\n async function handleAttendedTransfer(number: string) {\n // Send attended transfer message\n const transferringMessageSent = await attendedTransfer(number)\n if (transferringMessageSent) {\n // Set transferring and disable pause\n dispatch.currentCall.updateCurrentCall({\n transferring: true,\n paused: false,\n })\n // Play the remote audio element\n dispatch.player.playRemoteAudio()\n }\n }\n\n return (\n <>\n <div className='pi-grid pi-grid-cols-4 pi-auto-cols-max pi-gap-y-5 pi-justify-items-center pi-place-items-center pi-justify-center'>\n <Button\n variant='default'\n active={paused ? true : false}\n onClick={() => (paused ? unpauseCurrentCall() : pauseCurrentCall())}\n data-tooltip-id='tooltip'\n data-tooltip-content={paused ? 'Play' : 'Pause'}\n >\n {paused ? (\n <FontAwesomeIcon size='xl' icon={faPlay} />\n ) : (\n <FontAwesomeIcon size='xl' icon={faPauseRegular} />\n )}\n </Button>\n\n <Button\n variant='default'\n active={muted ? true : false}\n onClick={() => (muted ? unmuteCurrentCall() : muteCurrentCall())}\n data-tooltip-id='tooltip'\n data-tooltip-content={muted ? 'Unmute' : 'Mute'}\n >\n {muted ? (\n <FontAwesomeIcon size='xl' icon={faMicrophoneSlash} />\n ) : (\n <FontAwesomeIcon size='xl' icon={faMicrophoneLight} />\n )}\n </Button>\n <Button\n active={transferring}\n onClick={transferring ? calcelTransfer : transfer}\n variant='default'\n data-tooltip-id='tooltip'\n data-tooltip-content={transferring ? 'Cancel transfer' : 'Transfer'}\n >\n {transferring ? (\n <FontAwesomeIcon className='' size='xl' icon={faArrowDownUpAcrossLine} />\n ) : (\n <FontAwesomeIcon size='xl' icon={faArrowDownArrowUp} />\n )}\n </Button>\n <Button\n active={actionsExpanded}\n variant='transparent'\n onClick={() => toggleActionsExpanded()}\n data-tooltip-id='tooltip'\n data-tooltip-content={actionsExpanded ? 'Collapse' : 'Expand'}\n >\n {actionsExpanded ? (\n <FontAwesomeIcon className='' size='xl' icon={faChevronUp} />\n ) : (\n <FontAwesomeIcon size='xl' icon={faChevronDown} />\n )}\n </Button>\n </div>\n {/* Actions expanded section */}\n {actionsExpanded ? (\n <>\n {' '}\n <div className='pi-grid pi-grid-cols-4 pi-auto-cols-max pi-gap-y-5 pi-justify-items-center pi-place-items-center pi-justify-center'>\n <Button\n active={view === 'keypad'}\n variant='default'\n onClick={openKeypad}\n data-tooltip-id='tooltip'\n data-tooltip-content='Keyboard'\n >\n {view === 'keypad' ? <PhoneKeypadSolid /> : <PhoneKeypadLight />}\n </Button>\n <Button\n active={parked}\n variant='default'\n onClick={parkAction}\n data-tooltip-id='tooltip'\n data-tooltip-content='Park'\n >\n <FontAwesomeIcon size='xl' icon={parked ? faCircleParkingSolid : faCircleParking} />\n </Button>\n {transferring && <TransferActions />}\n </div>\n </>\n ) : (\n <></>\n )}\n {/* Buttons tooltips */}\n <Tooltip className='pi-z-20' id='tooltip' place='bottom' />\n </>\n )\n}\n\nexport default Actions\n"],"names":["_a","useSelector","state","currentCall","paused","muted","parked","_b","island","view","actionsExpanded","transferring","dispatch","useDispatch","useEventListener","data","number","attendedTransfer","sent","updateCurrentCall","player","playRemoteAudio","handleAttendedTransfer","to","React","createElement","Fragment","className","Button","variant","active","onClick","unpauseCurrentCall","pauseCurrentCall","FontAwesomeIcon","size","icon","faPlay","faPauseRegular","unmuteCurrentCall","muteCurrentCall","faMicrophoneSlash","faMicrophoneLight","sendDTMF","store","getState","audioPlayerPlaying","updateStartAudioPlayer","src","outgoingRingtone","loop","setTimeout","stopAudioPlayer","updateTransferring","setIslandView","faArrowDownUpAcrossLine","faArrowDownArrowUp","toggleActionsExpanded","faChevronUp","faChevronDown","PhoneKeypadSolid","PhoneKeypadLight","park","setParked","eventDispatch","faCircleParkingSolid","faCircleParking","TransferActions","Tooltip","id","place"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Actions.js","sources":["../../../src/components/CallView/Actions.tsx"],"sourcesContent":["// Copyright (C) 2022 Nethesis S.r.l.\n// SPDX-License-Identifier: AGPL-3.0-or-later\n\nimport React, { type FC } from 'react'\nimport {\n muteCurrentCall,\n unmuteCurrentCall,\n pauseCurrentCall,\n unpauseCurrentCall,\n attendedTransfer,\n} from '../../lib/phone/call'\nimport { Button } from '../'\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome'\nimport {\n faPause,\n faPlay,\n faMicrophone,\n faMicrophoneSlash,\n faArrowDownUpAcrossLine,\n faSquareParking,\n faChevronDown,\n faChevronUp,\n faArrowRightArrowLeft,\n} from '@fortawesome/free-solid-svg-icons'\nimport { faGridRound } from '@nethesis/nethesis-solid-svg-icons'\nimport { RootState, Dispatch } from '../../store'\nimport { useSelector, useDispatch } from 'react-redux'\nimport { sendDTMF } from '../../lib/webrtc/messages'\nimport { store } from '../../store'\nimport outgoingRingtone from '../../static/outgoing_ringtone'\nimport { TransferActions } from '../TransferView'\nimport { Tooltip } from 'react-tooltip/dist/react-tooltip.min.cjs'\nimport { park } from '../../lib/phone/call'\nimport { eventDispatch, useEventListener } from '../../utils'\n\nconst Actions: FC = () => {\n // Get multiple values from currentCall store\n const { paused, muted } = useSelector((state: RootState) => state.currentCall)\n const parked = useSelector((state: RootState) => state.currentCall.parked)\n\n // Get isOpen and view from island store\n const { view, actionsExpanded } = useSelector((state: RootState) => state.island)\n const transferring = useSelector((state: RootState) => state.currentCall.transferring)\n\n const dispatch = useDispatch<Dispatch>()\n\n function openKeypad() {\n dispatch.island.setIslandView(view !== 'keypad' ? 'keypad' : 'call')\n }\n\n function transfer() {\n // Open the transfer view\n dispatch.island.setIslandView(view !== 'transfer' ? 'transfer' : 'call')\n // Pause the call\n pauseCurrentCall()\n }\n\n // Cancels the current transfer through dtmfs\n function calcelTransfer() {\n sendDTMF('*')\n const { audioPlayerPlaying } = store.getState().player\n // Check if the local audio is already playing and start playing\n if (!audioPlayerPlaying) {\n dispatch.player.updateStartAudioPlayer({\n src: outgoingRingtone,\n loop: true,\n })\n }\n setTimeout(() => {\n sendDTMF('1')\n dispatch.player.stopAudioPlayer()\n // The workarround to disable transfer because of the wrong conv.connection value from ws\n if (transferring) {\n setTimeout(() => {\n dispatch.currentCall.updateTransferring(false)\n }, 500)\n }\n }, 500)\n }\n\n function toggleActionsExpanded() {\n if (actionsExpanded) {\n dispatch.island.toggleActionsExpanded(false)\n } else {\n dispatch.island.toggleActionsExpanded(true)\n }\n }\n\n function parkAction() {\n park()\n dispatch.currentCall.setParked(true)\n eventDispatch('phone-island-call-parked', {})\n }\n\n /**\n * Event listner for phone-island-transfer-call event\n */\n useEventListener('phone-island-transfer-call', (data) => {\n const transferNumber = data.to\n handleAttendedTransfer(transferNumber)\n })\n\n async function handleAttendedTransfer(number: string) {\n // Send attended transfer message\n const transferringMessageSent = await attendedTransfer(number)\n if (transferringMessageSent) {\n // Set transferring and disable pause\n dispatch.currentCall.updateCurrentCall({\n transferring: true,\n paused: false,\n })\n // Play the remote audio element\n dispatch.player.playRemoteAudio()\n }\n }\n\n return (\n <>\n <div className='pi-grid pi-grid-cols-4 pi-auto-cols-max pi-gap-y-5 pi-justify-items-center pi-place-items-center pi-justify-center'>\n <Button\n variant='default'\n active={paused ? true : false}\n onClick={() => (paused ? unpauseCurrentCall() : pauseCurrentCall())}\n data-tooltip-id='tooltip'\n data-tooltip-content={paused ? 'Play' : 'Pause'}\n >\n {paused ? (\n <FontAwesomeIcon size='xl' icon={faPlay} />\n ) : (\n <FontAwesomeIcon size='xl' icon={faPause} />\n )}\n </Button>\n\n <Button\n variant='default'\n active={muted ? true : false}\n onClick={() => (muted ? unmuteCurrentCall() : muteCurrentCall())}\n data-tooltip-id='tooltip'\n data-tooltip-content={muted ? 'Unmute' : 'Mute'}\n >\n {muted ? (\n <FontAwesomeIcon size='xl' icon={faMicrophoneSlash} />\n ) : (\n <FontAwesomeIcon size='xl' icon={faMicrophone} />\n )}\n </Button>\n <Button\n active={transferring}\n onClick={transferring ? calcelTransfer : transfer}\n variant='default'\n data-tooltip-id='tooltip'\n data-tooltip-content={transferring ? 'Cancel transfer' : 'Transfer'}\n >\n {transferring ? (\n <FontAwesomeIcon className='' size='xl' icon={faArrowDownUpAcrossLine} />\n ) : (\n <FontAwesomeIcon size='xl' className='pi-rotate-90' icon={faArrowRightArrowLeft} />\n )}\n </Button>\n <Button\n active={actionsExpanded}\n variant='transparent'\n onClick={() => toggleActionsExpanded()}\n data-tooltip-id='tooltip'\n data-tooltip-content={actionsExpanded ? 'Collapse' : 'Expand'}\n >\n {actionsExpanded ? (\n <FontAwesomeIcon className='' size='xl' icon={faChevronUp} />\n ) : (\n <FontAwesomeIcon size='xl' icon={faChevronDown} />\n )}\n </Button>\n </div>\n {/* Actions expanded section */}\n {actionsExpanded ? (\n <>\n {' '}\n <div className='pi-grid pi-grid-cols-4 pi-auto-cols-max pi-gap-y-5 pi-justify-items-center pi-place-items-center pi-justify-center'>\n <Button\n active={view === 'keypad'}\n variant='default'\n onClick={openKeypad}\n data-tooltip-id='tooltip'\n data-tooltip-content='Keyboard'\n >\n <FontAwesomeIcon size='xl' icon={faGridRound} />\n </Button>\n <Button\n active={parked}\n variant='default'\n onClick={parkAction}\n data-tooltip-id='tooltip'\n data-tooltip-content='Park'\n >\n <FontAwesomeIcon size='xl' icon={faSquareParking} />\n </Button>\n {transferring && <TransferActions />}\n </div>\n </>\n ) : (\n <></>\n )}\n {/* Buttons tooltips */}\n <Tooltip className='pi-z-20' id='tooltip' place='bottom' />\n </>\n )\n}\n\nexport default Actions\n"],"names":["_a","useSelector","state","currentCall","paused","muted","parked","_b","island","view","actionsExpanded","transferring","dispatch","useDispatch","useEventListener","data","number","attendedTransfer","sent","updateCurrentCall","player","playRemoteAudio","handleAttendedTransfer","to","React","createElement","Fragment","className","Button","variant","active","onClick","unpauseCurrentCall","pauseCurrentCall","FontAwesomeIcon","size","icon","faPlay","faPause","unmuteCurrentCall","muteCurrentCall","faMicrophoneSlash","faMicrophone","sendDTMF","store","getState","audioPlayerPlaying","updateStartAudioPlayer","src","outgoingRingtone","loop","setTimeout","stopAudioPlayer","updateTransferring","setIslandView","faArrowDownUpAcrossLine","faArrowRightArrowLeft","toggleActionsExpanded","faChevronUp","faChevronDown","faGridRound","park","setParked","eventDispatch","faSquareParking","TransferActions","Tooltip","id","place"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),t=require("../../styles/Island.styles.js");require("../../node_modules/react-redux/es/index.js");var r=require("../../node_modules/@fortawesome/react-fontawesome/index.es.js"),a=require("../../node_modules/@
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),t=require("../../styles/Island.styles.js");require("../../node_modules/react-redux/es/index.js");var r=require("../../node_modules/@fortawesome/react-fontawesome/index.es.js"),a=require("../../node_modules/@fortawesome/free-solid-svg-icons/index.mjs.js"),i=require("../../lib/phone/call.js");require("../../store/index.js"),require("../../node_modules/socket.io-client/build/esm/index.js"),require("../../node_modules/webrtc-adapter/src/js/adapter_core.js"),require("../../lib/webrtc/janus.js"),require("../../node_modules/mic-check/lib/index.js"),require("../Island.js");var n=require("../Button.js"),l=require("../AudioBars.js");require("../../node_modules/framer-motion/dist/framer-motion.js");var u=require("./Timer.js"),s=require("./Number.js"),d=require("./DisplayName.js"),o=require("./Avatar.js"),c=require("./Actions.js"),m=require("../Hangup.js"),f=require("../../node_modules/react-redux/es/hooks/useSelector.js");function p(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var j=p(e);function g(e,t){return!e&&!t}exports.default=function(){var e=f.useSelector((function(e){return e.currentCall})),p=e.incoming,q=e.accepted,E=e.outgoing,v=e.startTime,y=e.paused,b=f.useSelector((function(e){return e.island})).isOpen,_=f.useSelector((function(e){return e.webrtc})).remoteAudioStream;return j.default.createElement("div",{className:"pi-bg-red pi-content-center pi-justify-center"},j.default.createElement(t.StyledCallView,{incoming:p,accepted:q,outgoing:E,isOpen:b},j.default.createElement(t.StyledTopContent,{isOpen:b,incoming:p,accepted:q,outgoing:E},j.default.createElement(o.default,null),b&&j.default.createElement(t.StyledDetails,null,j.default.createElement(d.default,null),q?j.default.createElement(u.default,{startTime:v}):j.default.createElement(s.default,null)),!b&&!q&&j.default.createElement(d.default,null),!b&&q&&j.default.createElement(u.default,{startTime:v}),q&&_&&j.default.createElement(l.AudioBars,{audioStream:_,paused:y,size:b?"large":"small"})),b&&j.default.createElement("div",{className:"pi-grid pi-gap-y-5"},q&&j.default.createElement(c.default,null),j.default.createElement("div",{className:"pi-grid ".concat(g(E,q)?"pi-grid-cols-2":q?"pi-grid-cols-1 pi-justify-items-center":"pi-grid-cols-1 pi-justify-items-end"," pi-gap-3.5")},j.default.createElement(m.default,{description:"Hangup and transfer"}),g(E,q)&&j.default.createElement(n.Button,{onClick:i.answerIncomingCall,variant:"green"},j.default.createElement(r.FontAwesomeIcon,{className:"pi-w-6 pi-h-6",icon:a.faPhone}))))))};
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../src/components/CallView/index.tsx"],"sourcesContent":["// Copyright (C) 2022 Nethesis S.r.l.\n// SPDX-License-Identifier: AGPL-3.0-or-later\n\nimport React, { type FC } from 'react'\nimport { StyledDetails, StyledCallView, StyledTopContent } from '../../styles/Island.styles'\nimport { useSelector } from 'react-redux'\nimport { RootState } from '../../store'\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome'\nimport { faPhone } from '@
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../src/components/CallView/index.tsx"],"sourcesContent":["// Copyright (C) 2022 Nethesis S.r.l.\n// SPDX-License-Identifier: AGPL-3.0-or-later\n\nimport React, { type FC } from 'react'\nimport { StyledDetails, StyledCallView, StyledTopContent } from '../../styles/Island.styles'\nimport { useSelector } from 'react-redux'\nimport { RootState } from '../../store'\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome'\nimport { faPhone } from '@fortawesome/free-solid-svg-icons'\nimport { Button } from '../'\nimport Timer from './Timer'\nimport Number from './Number'\nimport DisplayName from './DisplayName'\nimport { AudioBars } from '../'\nimport { answerIncomingCall } from '../../lib/phone/call'\nimport Avatar from './Avatar'\nimport Actions from './Actions'\nimport Hangup from '../Hangup'\n\nfunction isAnswerVisible(outgoing: boolean, accepted: boolean): boolean {\n return !outgoing && !accepted\n}\n\n/**\n * The main view to manage calls, the starting point for calls actions flows\n */\nconst CallView: FC<CallViewProps> = () => {\n // Get multiple values from currentCall state\n const { incoming, accepted, outgoing, startTime, paused } = useSelector(\n (state: RootState) => state.currentCall,\n )\n // Get isOpen and view from island state\n const { isOpen } = useSelector((state: RootState) => state.island)\n\n // Retrieve the audio stream from the webrtc state\n const { remoteAudioStream } = useSelector((state: RootState) => state.webrtc)\n\n return (\n <div className='pi-bg-red pi-content-center pi-justify-center'>\n <StyledCallView incoming={incoming} accepted={accepted} outgoing={outgoing} isOpen={isOpen}>\n <StyledTopContent\n isOpen={isOpen}\n incoming={incoming}\n accepted={accepted}\n outgoing={outgoing}\n >\n <Avatar />\n {isOpen && (\n <StyledDetails>\n <DisplayName />\n {/* The timer when expanded */}\n {accepted ? <Timer startTime={startTime} /> : <Number />}\n </StyledDetails>\n )}\n {/* The display name when collepsed */}\n {!isOpen && !accepted && <DisplayName />}\n {/* The timer when collapsed */}\n {!isOpen && accepted && <Timer startTime={startTime} />}\n {accepted && remoteAudioStream && (\n <AudioBars\n audioStream={remoteAudioStream}\n paused={paused}\n size={isOpen ? 'large' : 'small'}\n />\n )}\n </StyledTopContent>\n {isOpen && (\n <div className='pi-grid pi-gap-y-5'>\n {accepted && <Actions />}\n <div\n className={`pi-grid ${\n isAnswerVisible(outgoing, accepted)\n ? 'pi-grid-cols-2'\n : accepted\n ? 'pi-grid-cols-1 pi-justify-items-center'\n : 'pi-grid-cols-1 pi-justify-items-end'\n } pi-gap-3.5`}\n >\n {/* The button to hangup the currentCall */}\n {/* {incoming || outgoing ? (\n <Button onClick={hangupCurrentCall} variant='red'>\n <FontAwesomeIcon className='pi-rotate-135 pi-w-6 pi-h-6' icon={faPhone} />\n </Button>\n ) : ( */}\n <Hangup description='Hangup and transfer' />\n {/* )} */}\n {/* The button to answer the incoming call */}\n {isAnswerVisible(outgoing, accepted) && (\n <Button onClick={answerIncomingCall} variant='green'>\n <FontAwesomeIcon className='pi-w-6 pi-h-6' icon={faPhone} />\n </Button>\n )}\n </div>\n </div>\n )}\n </StyledCallView>\n </div>\n )\n}\n\nexport default CallView\n\nexport interface CallViewProps {}\n"],"names":["isAnswerVisible","outgoing","accepted","_a","useSelector","state","currentCall","incoming","startTime","paused","isOpen","island","remoteAudioStream","webrtc","React","createElement","className","StyledCallView","StyledTopContent","Avatar","StyledDetails","DisplayName","Timer","Number","AudioBars","audioStream","size","Actions","concat","Hangup","description","Button","onClick","answerIncomingCall","variant","FontAwesomeIcon","icon","faPhone"],"mappings":"2kCAmBA,SAASA,EAAgBC,EAAmBC,GAC1C,OAAQD,IAAaC,CACvB,iBAKoC,WAE5B,IAAAC,EAAsDC,EAAAA,aAC1D,SAACC,GAAqB,OAAAA,EAAMC,WAAW,IADjCC,EAAQJ,EAAAI,SAAEL,EAAQC,EAAAD,SAAED,EAAQE,EAAAF,SAAEO,EAASL,EAAAK,UAAEC,EAAMN,EAAAM,OAI/CC,EAAWN,eAAY,SAACC,GAAqB,OAAAA,EAAMM,iBAGnDC,EAAsBR,eAAY,SAACC,GAAqB,OAAAA,EAAMQ,4BAEtE,OACEC,EAAA,QAAAC,cAAA,MAAA,CAAKC,UAAU,iDACbF,EAAAA,QAAAC,cAACE,iBAAe,CAAAV,SAAUA,EAAUL,SAAUA,EAAUD,SAAUA,EAAUS,OAAQA,GAClFI,EAAAA,QAAAC,cAACG,mBACC,CAAAR,OAAQA,EACRH,SAAUA,EACVL,SAAUA,EACVD,SAAUA,GAEVa,UAAAC,cAACI,EAAM,QAAG,MACTT,GACCI,EAAA,QAAAC,cAACK,EAAAA,cAAa,KACZN,UAAAC,cAACM,EAAW,QAAG,MAEdnB,EAAWY,EAAAA,QAACC,cAAAO,EAAK,SAACd,UAAWA,IAAgBM,wBAACS,UAAM,QAIvDb,IAAWR,GAAYY,EAAA,QAAAC,cAACM,EAAW,QAAG,OAEtCX,GAAUR,GAAYY,UAAAC,cAACO,EAAAA,QAAM,CAAAd,UAAWA,IACzCN,GAAYU,GACXE,EAAC,QAAAC,cAAAS,EAASA,UACR,CAAAC,YAAab,EACbH,OAAQA,EACRiB,KAAMhB,EAAS,QAAU,WAI9BA,GACCI,EAAK,QAAAC,cAAA,MAAA,CAAAC,UAAU,sBACZd,GAAYY,EAAC,QAAAC,cAAAY,EAAAA,QAAU,MACxBb,UACEC,cAAA,MAAA,CAAAC,UAAW,WACTY,OAAA5B,EAAgBC,EAAUC,GACtB,iBACAA,EACA,yCACA,sCACO,gBAQbY,EAAAA,QAAAC,cAACc,EAAAA,QAAM,CAACC,YAAY,wBAGnB9B,EAAgBC,EAAUC,IACzBY,UAAAC,cAACgB,EAAMA,OAAA,CAACC,QAASC,qBAAoBC,QAAQ,SAC3CpB,EAAAA,QAAAC,cAACoB,kBAAgB,CAAAnB,UAAU,gBAAgBoB,KAAMC,EAAAA,cASnE"}
|
package/dist/components/Close.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),r=require("../node_modules/@fortawesome/react-fontawesome/index.es.js"),t=require("../node_modules/@fortawesome/free-solid-svg-icons/index.mjs.js");require("../node_modules/react-redux/es/index.js");var s=require("../node_modules/react-redux/es/hooks/useSelector.js"),i=require("../node_modules/react-redux/es/hooks/useDispatch.js");function n(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var o=n(e),l=function(){var e=s.useSelector((function(e){return e.island})).view,n=s.useSelector((function(e){return e.player})).audioPlayerPlaying,l=i.useDispatch();return o.default.createElement(o.default.Fragment,null,("player"===e||"recorder"===e)&&o.default.createElement("div",{className:"pi-flex pi-justify-center"},o.default.createElement("div",{onClick:"player"===e?function(){n&&l.player.stopAudioPlayer(),l.island.setIslandView(null),l.island.handleToggleIsOpen()}:function(){l.island.setIslandView(null),l.island.handleToggleIsOpen()},className:"pi-h-9 pi-w-9 pi-rounded-full pi-bg-black hover:pi-bg-gray-500 pi-flex pi-items-center pi-justify-center pi-text-white pi-mt-4 pi-pointer-events-auto pi-cursor-pointer pi-transition-colors"},o.default.createElement(r.FontAwesomeIcon,{icon:t.faXmark,size:"lg"}))))};exports.Close=l,exports.default=l;
|
|
2
2
|
//# sourceMappingURL=Close.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Close.js","sources":["../../src/components/Close.tsx"],"sourcesContent":["// Copyright (C) 2022 Nethesis S.r.l.\n// SPDX-License-Identifier: AGPL-3.0-or-later\nimport React, { type FC } from 'react'\nimport {
|
|
1
|
+
{"version":3,"file":"Close.js","sources":["../../src/components/Close.tsx"],"sourcesContent":["// Copyright (C) 2022 Nethesis S.r.l.\n// SPDX-License-Identifier: AGPL-3.0-or-later\nimport React, { type FC } from 'react'\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome'\nimport { faXmark } from '@fortawesome/free-solid-svg-icons'\nimport { useDispatch, useSelector } from 'react-redux'\nimport { Dispatch, RootState } from '../store'\n\nexport const Close: FC = () => {\n const { view } = useSelector((state: RootState) => state.island)\n const { audioPlayerPlaying } = useSelector((state: RootState) => state.player)\n const dispatch = useDispatch<Dispatch>()\n\n function playerClose() {\n if (audioPlayerPlaying) {\n dispatch.player.stopAudioPlayer()\n }\n dispatch.island.setIslandView(null)\n dispatch.island.handleToggleIsOpen()\n }\n\n function close() {\n dispatch.island.setIslandView(null)\n dispatch.island.handleToggleIsOpen()\n }\n\n return (\n <>\n {(view === 'player' || view === 'recorder') && (\n <div className='pi-flex pi-justify-center'>\n <div\n onClick={view === 'player' ? playerClose : close}\n className='pi-h-9 pi-w-9 pi-rounded-full pi-bg-black hover:pi-bg-gray-500 pi-flex pi-items-center pi-justify-center pi-text-white pi-mt-4 pi-pointer-events-auto pi-cursor-pointer pi-transition-colors'\n >\n <FontAwesomeIcon icon={faXmark} size='lg' />\n </div>\n </div>\n )}\n </>\n )\n}\n\nexport default Close\n"],"names":["Close","view","useSelector","state","island","audioPlayerPlaying","player","dispatch","useDispatch","React","createElement","Fragment","className","onClick","stopAudioPlayer","setIslandView","handleToggleIsOpen","FontAwesomeIcon","icon","faXmark","size"],"mappings":"2fAQaA,EAAY,WACf,IAAAC,EAASC,eAAY,SAACC,GAAqB,OAAAA,EAAMC,eACjDC,EAAuBH,eAAY,SAACC,GAAqB,OAAAA,EAAMG,6BACjEC,EAAWC,EAAAA,cAejB,OACEC,EAAAA,QACGC,cAAAD,EAAAA,QAAAE,SAAA,MAAU,WAATV,GAA8B,aAATA,IACrBQ,EAAAA,QAAKC,cAAA,MAAA,CAAAE,UAAU,6BACbH,EAAAA,QAAAC,cAAA,MAAA,CACEG,QAAkB,WAATZ,EAlBnB,WACMI,GACFE,EAASD,OAAOQ,kBAElBP,EAASH,OAAOW,cAAc,MAC9BR,EAASH,OAAOY,oBACjB,EAED,WACET,EAASH,OAAOW,cAAc,MAC9BR,EAASH,OAAOY,oBACjB,EAQSJ,UAAU,gMAEVH,EAAAA,QAAAC,cAACO,kBAAe,CAACC,KAAMC,EAAAA,QAASC,KAAK,SAMjD"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react");require("../node_modules/framer-motion/dist/framer-motion.js");var t=require("./Button.js"),r=require("../node_modules/@fortawesome/react-fontawesome/index.es.js"),o=require("../node_modules/@
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react");require("../node_modules/framer-motion/dist/framer-motion.js");var t=require("./Button.js"),r=require("../node_modules/@fortawesome/react-fontawesome/index.es.js"),o=require("../node_modules/@fortawesome/free-solid-svg-icons/index.mjs.js"),i=require("../lib/phone/call.js");require("../node_modules/react-redux/es/index.js");var a=require("../node_modules/react-tooltip/dist/react-tooltip.min.cjs.js"),n=require("../node_modules/react-redux/es/hooks/useSelector.js"),l=require("../node_modules/react-redux/es/hooks/useDispatch.js"),s=require("../_virtual/framer-motion.js");function u(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var c=u(e);exports.default=function(e){e.clickCallback,e.isDestination;var u=e.description,d=n.useSelector((function(e){return e.currentCall})),m=d.transferring,p=d.incoming,f=l.useDispatch();return c.default.createElement(c.default.Fragment,null,c.default.createElement("div",{className:"pi-flex pi-justify-center ".concat(m&&"pi-w-full")},c.default.createElement(s.framerMotion.exports.motion.div,{className:"".concat(m&&u?"pi-w-full":"pi-w-12")},c.default.createElement(t.Button,{onClick:function(){return p?i.hangupAllExtensions():i.hangupCurrentCall(),void(m&&setTimeout((function(){f.alerts.setAlert("call_transfered"),setTimeout((function(){f.alerts.removeAlert("call_transfered")}),2e3)}),300))},variant:"red",className:"pi-gap-4 pi-font-medium pi-text-base pi-transition pi-min-w-12 pi-w-full","data-tooltip-id":"tooltip","data-tooltip-content":u&&m?u:"Hangup"},c.default.createElement(r.FontAwesomeIcon,{className:"pi-rotate-135 pi-h-6 pi-w-6",icon:o.faPhone}),m&&u&&c.default.createElement(s.framerMotion.exports.motion.div,{style:{height:"17px"},className:"pi-whitespace-nowrap pi-overflow-hidden"},u)))),c.default.createElement(a.Tooltip,{className:"pi-z-20",id:"tooltip",place:"bottom"}))};
|
|
2
2
|
//# sourceMappingURL=Hangup.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Hangup.js","sources":["../../src/components/Hangup.tsx"],"sourcesContent":["// Copyright (C) 2022 Nethesis S.r.l.\n// SPDX-License-Identifier: AGPL-3.0-or-later\n\nimport React, { type FC } from 'react'\nimport { motion } from 'framer-motion/dist/framer-motion'\nimport { Button } from './Button'\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome'\nimport { faPhone } from '@
|
|
1
|
+
{"version":3,"file":"Hangup.js","sources":["../../src/components/Hangup.tsx"],"sourcesContent":["// Copyright (C) 2022 Nethesis S.r.l.\n// SPDX-License-Identifier: AGPL-3.0-or-later\n\nimport React, { type FC } from 'react'\nimport { motion } from 'framer-motion/dist/framer-motion'\nimport { Button } from './Button'\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome'\nimport { faPhone } from '@fortawesome/free-solid-svg-icons'\nimport { hangupCurrentCall } from '../lib/phone/call'\nimport { useDispatch, useSelector } from 'react-redux'\nimport { RootState } from '../store'\nimport { Dispatch } from '../store'\nimport { Tooltip } from 'react-tooltip/dist/react-tooltip.min.cjs'\nimport { hangupAllExtensions } from '../lib/phone/call'\n\n/**\n * Return the status of the\n */\nconst Hangup: FC<HangupProps> = ({ clickCallback, isDestination, description }) => {\n const { transferring, incoming } = useSelector((state: RootState) => state.currentCall)\n const dispatch = useDispatch<Dispatch>()\n\n function handleHangup() {\n if (incoming) {\n hangupAllExtensions()\n } else {\n hangupCurrentCall()\n }\n // Show confirmation message when a call is transferred\n if (transferring) {\n setTimeout(() => {\n dispatch.alerts.setAlert('call_transfered')\n setTimeout(() => {\n dispatch.alerts.removeAlert('call_transfered')\n }, 2000)\n }, 300)\n }\n }\n\n return (\n <>\n <div className={`pi-flex pi-justify-center ${transferring && 'pi-w-full'}`}>\n {/* The button to hangup the currentCall */}\n <motion.div className={`${transferring && description ? 'pi-w-full' : 'pi-w-12'}`}>\n <Button\n onClick={() => handleHangup()}\n variant='red'\n className='pi-gap-4 pi-font-medium pi-text-base pi-transition pi-min-w-12 pi-w-full'\n data-tooltip-id='tooltip'\n data-tooltip-content={description && transferring ? description : 'Hangup'}\n >\n <FontAwesomeIcon className='pi-rotate-135 pi-h-6 pi-w-6' icon={faPhone} />\n {transferring && description && (\n <motion.div\n style={{ height: '17px' }}\n className='pi-whitespace-nowrap pi-overflow-hidden'\n >\n {description}\n </motion.div>\n )}\n </Button>\n </motion.div>\n </div>\n <Tooltip className='pi-z-20' id='tooltip' place='bottom' />\n </>\n )\n}\n\nexport default Hangup\n\ninterface HangupProps {\n clickCallback?: () => void\n isDestination?: boolean\n description?: string\n}\n"],"names":["_a","isDestination","description","_b","useSelector","state","currentCall","transferring","incoming","dispatch","useDispatch","React","createElement","Fragment","className","concat","motion","div","Button","onClick","hangupAllExtensions","hangupCurrentCall","setTimeout","alerts","setAlert","removeAlert","variant","FontAwesomeIcon","icon","faPhone","framerMotion","exports","style","height","Tooltip","id","place"],"mappings":"4vBAkBgC,SAACA,mBAA8BA,EAAAC,cAAE,IAAAC,EAAWF,EAAAE,YACpEC,EAA6BC,EAAAA,aAAY,SAACC,GAAqB,OAAAA,EAAMC,WAAW,IAA9EC,iBAAcC,aAChBC,EAAWC,EAAAA,cAmBjB,OACEC,UAAAC,cAAAD,EAAA,QAAAE,SAAA,KACEF,UAAAC,cAAA,MAAA,CAAKE,UAAW,6BAAAC,OAA6BR,GAAgB,cAE3DI,EAAAA,QAAAC,cAACI,8BAAOC,KAAIH,UAAW,UAAGP,GAAgBL,EAAc,YAAc,YACpES,UAAAC,cAACM,EAAAA,OAAM,CACLC,QAAS,WAAM,OAtBnBX,EACFY,EAAAA,sBAEAC,EAAAA,yBAGEd,GACFe,YAAW,WACTb,EAASc,OAAOC,SAAS,mBACzBF,YAAW,WACTb,EAASc,OAAOE,YAAY,kBAC7B,GAAE,IACJ,GAAE,KAUkB,EACfC,QAAQ,MACRZ,UAAU,2EAA0E,kBACpE,UAAS,uBACHZ,GAAeK,EAAeL,EAAc,UAElES,EAAC,QAAAC,cAAAe,mBAAgBb,UAAU,8BAA8Bc,KAAMC,EAAAA,UAC9DtB,GAAgBL,GACfS,EAAA,QAAAC,cAACI,EAAMc,aAAAC,QAAAf,OAACC,IAAG,CACTe,MAAO,CAAEC,OAAQ,QACjBnB,UAAU,2CAETZ,MAMXS,EAAAA,QAAAC,cAACsB,UAAQ,CAAApB,UAAU,UAAUqB,GAAG,UAAUC,MAAM,WAGtD"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),t=require("../Button.js");require("../../node_modules/react-redux/es/index.js");var r=require("../../node_modules/@
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),t=require("../Button.js");require("../../node_modules/react-redux/es/index.js");var r=require("../../node_modules/@fortawesome/react-fontawesome/index.es.js"),a=require("../../node_modules/@fortawesome/free-solid-svg-icons/index.mjs.js"),o=require("./Actions.js"),i=require("../../lib/webrtc/messages.js"),n=require("../../lib/island/island.js"),l=require("../../lib/phone/call.js"),u=require("../../node_modules/react-tooltip/dist/react-tooltip.min.cjs.js"),s=require("../../node_modules/react-redux/es/hooks/useDispatch.js"),c=require("../../node_modules/react-redux/es/hooks/useSelector.js");function d(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var p=d(e),f=["0","1","2","3","4","5","6","7","8","9","*","#"];exports.default=function(){var d=s.useDispatch(),m=c.useSelector((function(e){return e.currentCall})).keypadValue,x=c.useSelector((function(e){return e.island})).isOpen,b=e.useRef(m);function j(e){d.currentCall.updateKeypadValue("".concat(b.current).concat(e)),b.current="".concat(b.current).concat(e),l.playDtmfAudio(e),i.sendDTMF(e)}return e.useEffect((function(){function e(e){f.includes(e.key)&&j(e.key)}return window.addEventListener("keydown",e),function(){return window.removeEventListener("keydown",e)}}),[]),p.default.createElement(p.default.Fragment,null,x?p.default.createElement("div",{className:"pi-flex pi-flex-col pi-gap-7"},p.default.createElement("div",{className:"pi-flex pi-gap-4"},p.default.createElement(t.Button,{variant:"transparent",onClick:n.backToCallView,"data-tooltip-id":"keyboard-tooltip","data-tooltip-content":"Back to call"},p.default.createElement(r.FontAwesomeIcon,{size:"xl",icon:a.faArrowLeft})),p.default.createElement("input",{"data-stop-propagation":!0,type:"text",readOnly:!0,value:m,autoFocus:!0,className:"pi-w-full pi-rounded-full pi-bg-black pi-border-2 pi-border-emerald-500 active:pi-border-emerald-500 focus:pi-border-emerald-500 pi-text-white pi-font-sans pi-font-light pi-text-xl pi-text-center pi-px-2 focus:pi-outline-0 focus:pi-ring-0"})),p.default.createElement(o.default,{keyCallback:j})):p.default.createElement("div",{className:"pi-font-medium pi-text-base"},"Keypad"),p.default.createElement(u.Tooltip,{className:"pi-z-1000",id:"keyboard-tooltip",place:"bottom"}))};
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../src/components/KeypadView/index.tsx"],"sourcesContent":["// Copyright (C) 2022 Nethesis S.r.l.\n// SPDX-License-Identifier: AGPL-3.0-or-later\n\nimport React, { type FC, useEffect, useRef } from 'react'\nimport { Button } from '../Button'\nimport { useDispatch, useSelector } from 'react-redux'\nimport { Dispatch, RootState } from '../../store'\nimport {
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../src/components/KeypadView/index.tsx"],"sourcesContent":["// Copyright (C) 2022 Nethesis S.r.l.\n// SPDX-License-Identifier: AGPL-3.0-or-later\n\nimport React, { type FC, useEffect, useRef } from 'react'\nimport { Button } from '../Button'\nimport { useDispatch, useSelector } from 'react-redux'\nimport { Dispatch, RootState } from '../../store'\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome'\nimport { faArrowLeft } from '@fortawesome/free-solid-svg-icons'\nimport Actions from './Actions'\nimport { sendDTMF } from '../../lib/webrtc/messages'\nimport { backToCallView } from '../../lib/island/island'\nimport { playDtmfAudio } from '../../lib/phone/call'\nimport { Tooltip } from 'react-tooltip/dist/react-tooltip.min.cjs'\n\nconst DTMF_KEYS = ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '*', '#']\n\nconst KeypadView: FC<KeypadViewTypes> = () => {\n const dispatch = useDispatch<Dispatch>()\n const { keypadValue } = useSelector((state: RootState) => state.currentCall)\n const { isOpen } = useSelector((state: RootState) => state.island)\n const keypadValueRef = useRef<typeof keypadValue>(keypadValue)\n\n function sendKey(key: string) {\n dispatch.currentCall.updateKeypadValue(`${keypadValueRef.current}${key}`)\n keypadValueRef.current = `${keypadValueRef.current}${key}`\n playDtmfAudio(key)\n sendDTMF(key)\n }\n\n useEffect(() => {\n function handlePhysicalKeydown(event) {\n if (DTMF_KEYS.includes(event.key)) {\n sendKey(event.key)\n }\n }\n window.addEventListener('keydown', handlePhysicalKeydown)\n return () => window.removeEventListener('keydown', handlePhysicalKeydown)\n }, [])\n\n return (\n <>\n {isOpen ? (\n <div className='pi-flex pi-flex-col pi-gap-7'>\n <div className='pi-flex pi-gap-4'>\n <Button\n variant='transparent'\n onClick={backToCallView}\n data-tooltip-id='keyboard-tooltip'\n data-tooltip-content='Back to call'\n >\n <FontAwesomeIcon size='xl' icon={faArrowLeft} />\n </Button>\n <input\n data-stop-propagation={true}\n type='text'\n readOnly\n value={keypadValue}\n autoFocus\n className='pi-w-full pi-rounded-full pi-bg-black pi-border-2 pi-border-emerald-500 active:pi-border-emerald-500 focus:pi-border-emerald-500 pi-text-white pi-font-sans pi-font-light pi-text-xl pi-text-center pi-px-2 focus:pi-outline-0 focus:pi-ring-0'\n />\n </div>\n <Actions keyCallback={sendKey} />\n </div>\n ) : (\n <div className='pi-font-medium pi-text-base'>Keypad</div>\n )}\n <Tooltip className='pi-z-1000' id='keyboard-tooltip' place='bottom' />\n </>\n )\n}\n\nexport default KeypadView\n\nexport interface KeypadViewTypes {}\n"],"names":["DTMF_KEYS","dispatch","useDispatch","keypadValue","useSelector","state","currentCall","isOpen","island","keypadValueRef","useRef","sendKey","key","updateKeypadValue","concat","current","playDtmfAudio","sendDTMF","useEffect","handlePhysicalKeydown","event","includes","window","addEventListener","removeEventListener","React","createElement","Fragment","className","Button","variant","onClick","backToCallView","FontAwesomeIcon","size","icon","faArrowLeft","type","readOnly","value","autoFocus","Actions","keyCallback","Tooltip","id","place"],"mappings":"iwBAeMA,EAAY,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,qBAElC,WACtC,IAAMC,EAAWC,EAAAA,cACTC,EAAgBC,eAAY,SAACC,GAAqB,OAAAA,EAAMC,2BACxDC,EAAWH,eAAY,SAACC,GAAqB,OAAAA,EAAMG,iBACrDC,EAAiBC,SAA2BP,GAElD,SAASQ,EAAQC,GACfX,EAASK,YAAYO,kBAAkB,GAAAC,OAAGL,EAAeM,SAAOD,OAAGF,IACnEH,EAAeM,QAAU,GAAGD,OAAAL,EAAeM,SAAOD,OAAGF,GACrDI,EAAaA,cAACJ,GACdK,EAAQA,SAACL,EACV,CAYD,OAVAM,EAAAA,WAAU,WACR,SAASC,EAAsBC,GACzBpB,EAAUqB,SAASD,EAAMR,MAC3BD,EAAQS,EAAMR,IAEjB,CAED,OADAU,OAAOC,iBAAiB,UAAWJ,GAC5B,WAAM,OAAAG,OAAOE,oBAAoB,UAAWL,GACpD,GAAE,IAGDM,UAAAC,cAAAD,EAAA,QAAAE,SAAA,KACGpB,EACCkB,EAAK,QAAAC,cAAA,MAAA,CAAAE,UAAU,gCACbH,EAAAA,QAAKC,cAAA,MAAA,CAAAE,UAAU,oBACbH,EAAAA,QAAAC,cAACG,SAAM,CACLC,QAAQ,cACRC,QAASC,EAAAA,eAAc,kBACP,mBAAkB,uBACb,gBAErBP,UAACC,cAAAO,EAAAA,gBAAgB,CAAAC,KAAK,KAAKC,KAAMC,EAAWA,eAE9CX,EAAA,QAAAC,cAAA,QAAA,CAAA,yBACyB,EACvBW,KAAK,OACLC,UACA,EAAAC,MAAOpC,EACPqC,WAAS,EACTZ,UAAU,oPAGdH,EAAA,QAAAC,cAACe,EAAO,QAAC,CAAAC,YAAa/B,KAGxBc,EAAA,QAAAC,cAAA,MAAA,CAAKE,UAAU,yCAEjBH,EAAAA,QAAAC,cAACiB,UAAQ,CAAAf,UAAU,YAAYgB,GAAG,mBAAmBC,MAAM,WAGjE"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("../../node_modules/tslib/tslib.es6.js"),t=require("react"),o=require("../Button.js"),r=require("../../node_modules/@fortawesome/react-fontawesome/index.es.js"),n=require("../../node_modules/@
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("../../node_modules/tslib/tslib.es6.js"),t=require("react"),o=require("../Button.js"),r=require("../../node_modules/@fortawesome/react-fontawesome/index.es.js"),n=require("../../node_modules/@fortawesome/free-solid-svg-icons/index.mjs.js"),a=require("../../services/offhour.js");require("../../node_modules/react-redux/es/index.js");var i=require("../../lib/phone/call.js");require("../../store/index.js");var s=require("../../events/RecorderEvents.js"),c=require("../../node_modules/react-tooltip/dist/react-tooltip.min.cjs.js"),l=require("../../node_modules/react-redux/es/utils/shallowEqual.js");require("../../node_modules/react-redux/es/components/Context.js"),require("../../node_modules/hoist-non-react-statics/dist/hoist-non-react-statics.cjs.js"),require("../../node_modules/react-redux/node_modules/react-is/index.js");var d=require("../../node_modules/react-redux/es/hooks/useDispatch.js"),u=require("../../node_modules/react-redux/es/hooks/useSelector.js");function m(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var f=m(t);exports.Actions=function(){var m=d.useDispatch(),p=u.useSelector((function(e){return{incoming:e.recorder.incoming,waiting:e.recorder.waiting,recording:e.recorder.recording,recorded:e.recorder.recorded,playing:e.recorder.playing}}),l.default),g=p.incoming,j=p.waiting,v=p.recording,x=p.recorded,y=p.playing;return t.useEffect((function(){v||m.recorder.setWaiting(!1)}),[v]),t.useEffect((function(){g&&(i.answerIncomingCall(),m.recorder.setIncoming(!1),m.recorder.setWaiting(!1))}),[g]),f.default.createElement("div",{className:"pi-flex pi-justify-center pi-items-center pi-pt-9 pi-gap-6",style:x?{paddingTop:"2rem"}:{}},v&&f.default.createElement(o.Button,{onClick:function(){m.recorder.setWaiting(!0),i.hangupCurrentCall(),m.recorder.setRecorded(!0)},variant:"default",style:{transform:"scale(1.15)"},"data-tooltip-id":"tooltip","data-tooltip-content":"Stop"},j?f.default.createElement(r.FontAwesomeIcon,{icon:n.faCircleNotch,className:"fa-spin pi-loader",size:"lg"}):f.default.createElement(r.FontAwesomeIcon,{icon:n.faStop,size:"xl"})),x&&!v&&f.default.createElement(f.default.Fragment,null,f.default.createElement(o.Button,{onClick:function(){m.recorder.resetRecorded()},variant:"default","data-tooltip-id":"tooltip","data-tooltip-content":"Delete"},f.default.createElement(r.FontAwesomeIcon,{icon:n.faTrash,size:"xl"})),y?f.default.createElement(o.Button,{onClick:function(){m.player.pauseAudioPlayer(),m.recorder.setPlaying(!1),m.recorder.setPaused(!0)},variant:"default",style:{transform:"scale(1.15)"},"data-tooltip-id":"tooltip","data-tooltip-content":"Pause"},f.default.createElement(r.FontAwesomeIcon,{icon:n.faPause,size:"xl"})):f.default.createElement(o.Button,{onClick:function(){m.player.startAudioPlayer((function(){m.recorder.setPlaying(!1),m.recorder.setPaused(!0)})),m.recorder.setPlaying(!0)},variant:"default",style:{transform:"scale(1.15)"},"data-tooltip-id":"tooltip","data-tooltip-content":"Play"},f.default.createElement(r.FontAwesomeIcon,{icon:n.faPlay,size:"xl"})),f.default.createElement(o.Button,{onClick:function(){s.dispatchRecordingSave(),m.island.setIslandView(null)},variant:"green","data-tooltip-id":"tooltip","data-tooltip-content":"Confirm"},f.default.createElement(r.FontAwesomeIcon,{icon:n.faCheck,size:"xl"}))),!v&&!x&&f.default.createElement(o.Button,{onClick:function(){return e.__awaiter(this,void 0,void 0,(function(){var t;return e.__generator(this,(function(e){switch(e.label){case 0:return m.recorder.setRecording(!0),m.recorder.setWaiting(!0),[4,a.startAnnouncementRecording()];case 1:return(t=e.sent()).tempFilename&&m.recorder.setTempFilename(t.tempFilename),m.recorder.setStartTime("".concat(Date.now()/1e3)),[2]}}))}))},variant:"red",style:{transform:"scale(1.15)"},"data-tooltip-id":"tooltip","data-tooltip-content":"Start recording"},j?f.default.createElement(r.FontAwesomeIcon,{icon:n.faCircleNotch,className:"fa-spin pi-loader",size:"lg"}):f.default.createElement(r.FontAwesomeIcon,{icon:n.faRecordVinyl,size:"xl"})),f.default.createElement(c.Tooltip,{className:"pi-z-20",id:"tooltip",place:"bottom"}))};
|
|
2
2
|
//# sourceMappingURL=Actions.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Actions.js","sources":["../../../src/components/RecorderView/Actions.tsx"],"sourcesContent":["//\n// Copyright (C) 2022 Nethesis S.r.l.\n// SPDX-License-Identifier: AGPL-3.0-or-later\n//\n\nimport React, { type FC,
|
|
1
|
+
{"version":3,"file":"Actions.js","sources":["../../../src/components/RecorderView/Actions.tsx"],"sourcesContent":["//\n// Copyright (C) 2022 Nethesis S.r.l.\n// SPDX-License-Identifier: AGPL-3.0-or-later\n//\n\nimport React, { type FC, useEffect } from 'react'\nimport { Button } from '../Button'\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome'\nimport {\n faPause,\n faPlay,\n faTrash,\n faCheck,\n faRecordVinyl,\n faStop,\n faCircleNotch,\n} from '@fortawesome/free-solid-svg-icons'\nimport { startAnnouncementRecording } from '../../services/offhour'\nimport { useDispatch, useSelector, shallowEqual } from 'react-redux'\nimport { Dispatch, RootState } from '../../store'\nimport { hangupCurrentCall, answerIncomingCall } from '../../lib/phone/call'\nimport { dispatchRecordingSave } from '../../events'\nimport { Tooltip } from 'react-tooltip/dist/react-tooltip.min.cjs'\n\nexport const Actions: FC<{}> = () => {\n const dispatch = useDispatch<Dispatch>()\n const { incoming, waiting, recording, recorded, playing } = useSelector(\n (state: RootState) => ({\n incoming: state.recorder.incoming,\n waiting: state.recorder.waiting,\n recording: state.recorder.recording,\n recorded: state.recorder.recorded,\n playing: state.recorder.playing,\n }),\n shallowEqual,\n )\n\n async function handleStart() {\n // Update the recorder state\n dispatch.recorder.setRecording(true)\n dispatch.recorder.setWaiting(true)\n // Call the api to start the recording call\n const data: { tempFilename: string } | null = await startAnnouncementRecording()\n // Set the returned temp file name to the store\n if (data.tempFilename) dispatch.recorder.setTempFilename(data.tempFilename)\n // Set the start time of recording\n dispatch.recorder.setStartTime(`${Date.now() / 1000}`)\n }\n\n function handleStop() {\n // Set waiting to true\n dispatch.recorder.setWaiting(true)\n // Call the function to hangup the current call used for recording\n hangupCurrentCall()\n dispatch.recorder.setRecorded(true)\n }\n\n function handlePlay() {\n dispatch.player.startAudioPlayer(() => {\n // The callback for the end event of the audio player\n dispatch.recorder.setPlaying(false)\n dispatch.recorder.setPaused(true)\n })\n dispatch.recorder.setPlaying(true)\n }\n\n function handlePause() {\n dispatch.player.pauseAudioPlayer()\n dispatch.recorder.setPlaying(false)\n dispatch.recorder.setPaused(true)\n }\n\n function handleDelete() {\n dispatch.recorder.resetRecorded()\n }\n\n function handleSaveRecording() {\n // Dispatch the reconrding save event\n dispatchRecordingSave()\n // Close the Island\n dispatch.island.setIslandView(null)\n }\n\n useEffect(() => {\n if (!recording) {\n dispatch.recorder.setWaiting(false)\n }\n }, [recording])\n\n useEffect(() => {\n if (incoming) {\n // Answer the incoming call for recording\n answerIncomingCall()\n // Reset incoming to recorder state\n dispatch.recorder.setIncoming(false)\n dispatch.recorder.setWaiting(false)\n }\n }, [incoming])\n\n return (\n <div\n className={`pi-flex pi-justify-center pi-items-center pi-pt-9 pi-gap-6`}\n style={recorded ? { paddingTop: '2rem' } : {}}\n >\n {recording && (\n <Button\n onClick={handleStop}\n variant='default'\n style={{ transform: 'scale(1.15)' }}\n data-tooltip-id='tooltip'\n data-tooltip-content='Stop'\n >\n {waiting ? (\n <FontAwesomeIcon icon={faCircleNotch} className='fa-spin pi-loader' size='lg' />\n ) : (\n <FontAwesomeIcon icon={faStop} size='xl' />\n )}\n </Button>\n )}\n {recorded && !recording && (\n <>\n <Button\n onClick={handleDelete}\n variant='default'\n data-tooltip-id='tooltip'\n data-tooltip-content='Delete'\n >\n <FontAwesomeIcon icon={faTrash} size='xl' />\n </Button>\n {playing ? (\n <Button\n onClick={handlePause}\n variant='default'\n style={{ transform: 'scale(1.15)' }}\n data-tooltip-id='tooltip'\n data-tooltip-content='Pause'\n >\n <FontAwesomeIcon icon={faPause} size='xl' />\n </Button>\n ) : (\n <Button\n onClick={handlePlay}\n variant='default'\n style={{ transform: 'scale(1.15)' }}\n data-tooltip-id='tooltip'\n data-tooltip-content='Play'\n >\n <FontAwesomeIcon icon={faPlay} size='xl' />\n </Button>\n )}\n <Button\n onClick={handleSaveRecording}\n variant='green'\n data-tooltip-id='tooltip'\n data-tooltip-content='Confirm'\n >\n <FontAwesomeIcon icon={faCheck} size='xl' />\n </Button>\n </>\n )}\n {!recording && !recorded && (\n <Button\n onClick={handleStart}\n variant='red'\n style={{ transform: 'scale(1.15)' }}\n data-tooltip-id='tooltip'\n data-tooltip-content='Start recording'\n >\n {waiting ? (\n <FontAwesomeIcon icon={faCircleNotch} className='fa-spin pi-loader' size='lg' />\n ) : (\n <FontAwesomeIcon icon={faRecordVinyl} size='xl' />\n )}\n </Button>\n )}\n {/* Buttons tooltips */}\n <Tooltip className='pi-z-20' id='tooltip' place='bottom' />\n </div>\n )\n}\n"],"names":["dispatch","useDispatch","_a","useSelector","state","incoming","recorder","waiting","recording","recorded","playing","shallowEqual","useEffect","setWaiting","answerIncomingCall","setIncoming","React","className","style","paddingTop","createElement","Button","onClick","hangupCurrentCall","setRecorded","variant","transform","FontAwesomeIcon","icon","faCircleNotch","size","faStop","Fragment","resetRecorded","faTrash","player","pauseAudioPlayer","setPlaying","setPaused","faPause","startAudioPlayer","faPlay","dispatchRecordingSave","island","setIslandView","faCheck","setRecording","startAnnouncementRecording","data","sent","tempFilename","setTempFilename","setStartTime","concat","Date","now","faRecordVinyl","Tooltip","id","place"],"mappings":"8nCAwB+B,WAC7B,IAAMA,EAAWC,EAAAA,cACXC,EAAsDC,EAAAA,aAC1D,SAACC,GAAqB,MAAC,CACrBC,SAAUD,EAAME,SAASD,SACzBE,QAASH,EAAME,SAASC,QACxBC,UAAWJ,EAAME,SAASE,UAC1BC,SAAUL,EAAME,SAASG,SACzBC,QAASN,EAAME,SAASI,QACxB,GACFC,EAAAA,SARMN,aAAUE,YAASC,cAAWC,aAAUC,YAyEhD,OAhBAE,EAAAA,WAAU,WACHJ,GACHR,EAASM,SAASO,YAAW,EAEjC,GAAG,CAACL,IAEJI,EAAAA,WAAU,WACJP,IAEFS,EAAAA,qBAEAd,EAASM,SAASS,aAAY,GAC9Bf,EAASM,SAASO,YAAW,GAEjC,GAAG,CAACR,IAGFW,+BACEC,UAAW,6DACXC,MAAOT,EAAW,CAAEU,WAAY,QAAW,CAAA,GAE1CX,GACCQ,EAAC,QAAAI,cAAAC,EAAAA,OACC,CAAAC,QAzDR,WAEEtB,EAASM,SAASO,YAAW,GAE7BU,EAAAA,oBACAvB,EAASM,SAASkB,aAAY,EAC/B,EAoDOC,QAAQ,UACRP,MAAO,CAAEQ,UAAW,eACJ,kBAAA,UACK,uBAAA,QAEpBnB,EACCS,EAAAA,QAAAI,cAACO,EAAeA,gBAAA,CAACC,KAAMC,EAAaA,cAAEZ,UAAU,oBAAoBa,KAAK,OAEzEd,EAAC,QAAAI,cAAAO,EAAAA,gBAAgB,CAAAC,KAAMG,EAAAA,OAAQD,KAAK,QAIzCrB,IAAaD,GACZQ,EAAAA,QAAAI,cAAAJ,EAAAA,QAAAgB,SAAA,KACEhB,EAAAA,QAAAI,cAACC,SAAM,CACLC,QAlDV,WACEtB,EAASM,SAAS2B,eACnB,EAiDSR,QAAQ,UAAS,kBACD,UAAS,uBACJ,UAErBT,UAACI,cAAAO,EAAAA,gBAAgB,CAAAC,KAAMM,EAAAA,QAASJ,KAAK,QAEtCpB,EACCM,EAAA,QAAAI,cAACC,EAAAA,OACC,CAAAC,QAjEZ,WACEtB,EAASmC,OAAOC,mBAChBpC,EAASM,SAAS+B,YAAW,GAC7BrC,EAASM,SAASgC,WAAU,EAC7B,EA8DWb,QAAQ,UACRP,MAAO,CAAEQ,UAAW,eAAe,kBACnB,UAAS,uBACJ,SAErBV,EAAAA,QAAAI,cAACO,kBAAgB,CAAAC,KAAMW,EAAOA,QAAET,KAAK,QAGvCd,EAAC,QAAAI,cAAAC,EAAMA,OACL,CAAAC,QApFZ,WACEtB,EAASmC,OAAOK,kBAAiB,WAE/BxC,EAASM,SAAS+B,YAAW,GAC7BrC,EAASM,SAASgC,WAAU,EAC9B,IACAtC,EAASM,SAAS+B,YAAW,EAC9B,EA8EWZ,QAAQ,UACRP,MAAO,CAAEQ,UAAW,eACJ,kBAAA,iCACK,QAErBV,UAACI,cAAAO,EAAAA,gBAAgB,CAAAC,KAAMa,EAAAA,OAAQX,KAAK,QAGxCd,EAAAA,QAAAI,cAACC,SAAM,CACLC,QA3EV,WAEEoB,EAAAA,wBAEA1C,EAAS2C,OAAOC,cAAc,KAC/B,EAuESnB,QAAQ,QAAO,kBACC,UAAS,uBACJ,WAErBT,UAAAI,cAACO,EAAeA,gBAAA,CAACC,KAAMiB,EAAOA,QAAEf,KAAK,UAIzCtB,IAAcC,GACdO,EAAC,QAAAI,cAAAC,SACC,CAAAC,QA7HR,iIAKgD,OAH9CtB,EAASM,SAASwC,cAAa,GAC/B9C,EAASM,SAASO,YAAW,GAEiB,CAAA,EAAMkC,8CAA9CC,EAAwC9C,EAAkC+C,QAEvEC,cAAclD,EAASM,SAAS6C,gBAAgBH,EAAKE,cAE9DlD,EAASM,SAAS8C,aAAa,GAAGC,OAAAC,KAAKC,MAAQ,gBAChD,EAoHO9B,QAAQ,MACRP,MAAO,CAAEQ,UAAW,eACJ,kBAAA,UACK,uBAAA,mBAEpBnB,EACCS,EAAAA,QAAAI,cAACO,EAAeA,gBAAA,CAACC,KAAMC,EAAaA,cAAEZ,UAAU,oBAAoBa,KAAK,OAEzEd,EAAAA,QAAAI,cAACO,EAAeA,gBAAA,CAACC,KAAM4B,EAAaA,cAAE1B,KAAK,QAKjDd,EAAAA,QAAAI,cAACqC,UAAQ,CAAAxC,UAAU,UAAUyC,GAAG,UAAUC,MAAM,WAGtD"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),t=require("../Button.js"),r=require("../../node_modules/@fortawesome/react-fontawesome/index.es.js"),
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),t=require("../Button.js"),r=require("../../node_modules/@fortawesome/react-fontawesome/index.es.js"),s=require("../../node_modules/@nethesis/nethesis-solid-svg-icons/index.mjs.js"),a=require("../../lib/webrtc/messages.js"),o=require("../../store/index.js");require("../../node_modules/react-redux/es/index.js");var i=require("../../static/outgoing_ringtone.js"),n=require("../../node_modules/react-tooltip/dist/react-tooltip.min.cjs.js"),l=require("../../node_modules/react-redux/es/hooks/useDispatch.js"),u=require("../../node_modules/react-redux/es/hooks/useSelector.js");function c(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var d=c(e);exports.TransferActions=function(){var e=l.useDispatch(),c=u.useSelector((function(e){return e.currentCall}));return c.transferCalls,c.number,d.default.createElement(d.default.Fragment,null,d.default.createElement("div",{className:"pi-grid pi-grid-cols-3 pi-auto-cols-max pi-gap-y-5 pi-justify-items-center pi-place-items-center pi-justify-center"},d.default.createElement("div",null),d.default.createElement(t.Button,{onClick:function(){e.currentCall.updateTransferSwitching(!0),a.sendDTMF("*"),o.store.getState().player.audioPlayerPlaying||e.player.updateStartAudioPlayer({src:i.default,loop:!0}),setTimeout((function(){a.sendDTMF("4"),e.player.stopAudioPlayer()}),500)},variant:"default","data-tooltip-id":"transfer-actions-tooltip","data-tooltip-content":"Switch calls"},d.default.createElement(r.FontAwesomeIcon,{size:"xl",icon:s.faArrowsRepeat})),d.default.createElement("div",null)),d.default.createElement(n.Tooltip,{className:"pi-z-1000",id:"transfer-actions-tooltip",place:"bottom"}))};
|
|
2
2
|
//# sourceMappingURL=TransferActions.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TransferActions.js","sources":["../../../src/components/TransferView/TransferActions.tsx"],"sourcesContent":["// Copyright (C) 2022 Nethesis S.r.l.\n// SPDX-License-Identifier: AGPL-3.0-or-later\n\nimport React, { type FC
|
|
1
|
+
{"version":3,"file":"TransferActions.js","sources":["../../../src/components/TransferView/TransferActions.tsx"],"sourcesContent":["// Copyright (C) 2022 Nethesis S.r.l.\n// SPDX-License-Identifier: AGPL-3.0-or-later\n\nimport React, { type FC } from 'react'\nimport { Button } from '../Button'\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome'\nimport { faArrowsRepeat } from '@nethesis/nethesis-solid-svg-icons'\nimport { sendDTMF } from '../../lib/webrtc/messages'\nimport { store, Dispatch } from '../../store'\nimport { useDispatch, useSelector } from 'react-redux'\nimport outgoingRingtone from '../../static/outgoing_ringtone'\nimport { RootState } from '../../store'\nimport { Tooltip } from 'react-tooltip/dist/react-tooltip.min.cjs'\n\nexport const TransferActions: FC<TransferActionsProps> = () => {\n const dispatch = useDispatch<Dispatch>()\n const { transferCalls, number } = useSelector((state: RootState) => state.currentCall)\n\n // Cancels the current transfer through dtmfs\n function switchTransfer() {\n dispatch.currentCall.updateTransferSwitching(true)\n // Start sending the DTMFs for transferring\n sendDTMF('*')\n const { audioPlayerPlaying } = store.getState().player\n // Check if the local audio is already playing and start playing\n if (!audioPlayerPlaying) {\n dispatch.player.updateStartAudioPlayer({\n src: outgoingRingtone,\n loop: true,\n })\n }\n setTimeout(() => {\n // Send the second DTMF for transferring\n sendDTMF('4')\n dispatch.player.stopAudioPlayer()\n }, 500)\n }\n\n return (\n <>\n <div className='pi-grid pi-grid-cols-3 pi-auto-cols-max pi-gap-y-5 pi-justify-items-center pi-place-items-center pi-justify-center'>\n <div></div>\n <Button\n onClick={switchTransfer}\n variant='default'\n data-tooltip-id='transfer-actions-tooltip'\n data-tooltip-content='Switch calls'\n >\n <FontAwesomeIcon size='xl' icon={faArrowsRepeat} />\n </Button>\n <div></div>\n </div>\n <Tooltip className='pi-z-1000' id='transfer-actions-tooltip' place='bottom' />\n </>\n )\n}\n\ninterface TransferActionsProps {}\n\ninterface CurrentCallsTypes {\n [name: string]: {\n name: string\n time: string\n }\n}\n"],"names":["dispatch","useDispatch","_a","useSelector","state","currentCall","React","createElement","Fragment","className","Button","onClick","updateTransferSwitching","sendDTMF","store","getState","player","audioPlayerPlaying","updateStartAudioPlayer","src","outgoingRingtone","loop","setTimeout","stopAudioPlayer","variant","FontAwesomeIcon","size","icon","faArrowsRepeat","Tooltip","id","place"],"mappings":"owBAcyD,WACvD,IAAMA,EAAWC,EAAAA,cACXC,EAA4BC,EAAWA,aAAC,SAACC,GAAqB,OAAAA,EAAMC,WAAN,IAsBpE,gCACEC,UAAAC,cAAAD,EAAA,QAAAE,SAAA,KACEF,EAAAA,QAAKC,cAAA,MAAA,CAAAE,UAAU,sHACbH,UAAWC,cAAA,MAAA,MACXD,EAAAA,QAAAC,cAACG,SAAM,CACLC,QAxBR,WACEX,EAASK,YAAYO,yBAAwB,GAE7CC,EAAQA,SAAC,KACsBC,EAAKA,MAACC,WAAWC,OAAMC,oBAGpDjB,EAASgB,OAAOE,uBAAuB,CACrCC,IAAKC,EAAgB,QACrBC,MAAM,IAGVC,YAAW,WAETT,EAAQA,SAAC,KACTb,EAASgB,OAAOO,iBACjB,GAAE,IACJ,EAQOC,QAAQ,UAAS,kBACD,2BAA0B,uBACrB,gBAErBlB,UAACC,cAAAkB,EAAAA,gBAAgB,CAAAC,KAAK,KAAKC,KAAMC,EAAcA,kBAEjDtB,EAAAA,QAAAC,cAAA,MAAA,OAEFD,EAAAA,QAAAC,cAACsB,UAAQ,CAAApB,UAAU,YAAYqB,GAAG,2BAA2BC,MAAM,WAGzE"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("../../node_modules/tslib/tslib.es6.js"),t=require("react"),n=require("../Button.js");require("../../node_modules/react-redux/es/index.js");var i=require("../../node_modules/@fortawesome/react-fontawesome/index.es.js"),r=require("../../lib/island/island.js"),a=require("./ListAvatar.js"),l=require("../../node_modules/@
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("../../node_modules/tslib/tslib.es6.js"),t=require("react"),n=require("../Button.js");require("../../node_modules/react-redux/es/index.js");var i=require("../../node_modules/@fortawesome/react-fontawesome/index.es.js"),r=require("../../lib/island/island.js"),a=require("./ListAvatar.js"),l=require("../../node_modules/@fortawesome/free-solid-svg-icons/index.mjs.js"),o=require("../../lib/phone/call.js"),s=require("../../node_modules/react-tooltip/dist/react-tooltip.min.cjs.js"),u=require("../../node_modules/react-redux/es/hooks/useSelector.js"),c=require("../../node_modules/react-redux/es/hooks/useDispatch.js");function p(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var d=p(t);exports.TransferListView=function(){var p=u.useSelector((function(e){return e.island})).isOpen,f=u.useSelector((function(e){return e.users})).endpoints,m=u.useSelector((function(e){return e.currentUser})).username,v=t.useState(!1),x=v[0],b=v[1],h=t.useState([]),w=h[0],E=h[1],g=t.useRef(""),C=t.useState(),y=C[0],N=C[1],j=t.useRef(null),k=t.useState(!1),L=k[0],P=k[1],_=t.useState(10),q=_[0],S=_[1],T=c.useDispatch();function z(e){return m&&delete e[m],Object.values(e).filter((function(e){return e.endpoints.extension.find((function(e){return e.id.toLowerCase().startsWith(g.current.toLowerCase())}))||e.username.toLowerCase().startsWith(g.current.toLowerCase())||e.name.toLowerCase().startsWith(g.current.toLowerCase())||e.name.toLowerCase().includes(g.current.toLowerCase())||e.username.toLowerCase()===g.current.toLowerCase()}))}function A(t){return e.__awaiter(this,void 0,void 0,(function(){return e.__generator(this,(function(e){switch(e.label){case 0:return[4,o.attendedTransfer(t)];case 1:return e.sent()&&(T.currentCall.updateCurrentCall({transferring:!0,paused:!1}),T.player.playRemoteAudio()),[2]}}))}))}return t.useEffect((function(){f&&m&&(E(z(f)),b(!0))}),[f,m]),t.useEffect((function(){var e,t,n=function(){var e,t,n;P(!!(j.current&&j.current.scrollTop>3)),j.current&&(null===(e=j.current)||void 0===e?void 0:e.offsetHeight)+(null===(t=j.current)||void 0===t?void 0:t.scrollTop)>=(null===(n=j.current)||void 0===n?void 0:n.scrollHeight)-10&&S((function(e){return e+10}))};return p?null===(e=j.current)||void 0===e||e.addEventListener("scroll",n):null===(t=j.current)||void 0===t||t.removeEventListener("scroll",n),function(){var e;return null===(e=j.current)||void 0===e?void 0:e.removeEventListener("scroll",n)}}),[p]),d.default.createElement(d.default.Fragment,null,p?d.default.createElement("div",{className:"pi-relative pi-flex pi-flex-col"},d.default.createElement("div",{className:"pi-relative pi-z-50"},d.default.createElement("div",{className:"pi-flex pi-gap-4"},d.default.createElement(n.Button,{variant:"transparent",onClick:function(){o.unpauseCurrentCall(),r.backToCallView()},"data-tooltip-id":"transfer-list-tooltip","data-tooltip-content":"Back to call"},d.default.createElement(i.FontAwesomeIcon,{size:"xl",icon:l.faArrowLeft})),d.default.createElement("input",{"data-stop-propagation":!0,type:"text",onChange:function(e){g.current=e.currentTarget.value,f&&E(z(f)),/^[0-9*#+]+$/.test(g.current)?N(!0):N(!1)},value:g.current,autoFocus:!0,spellCheck:!1,className:"pi-w-full pi-rounded-full pi-bg-black pi-border-2 pi-border-emerald-500 active:pi-border-emerald-500 focus:pi-border-emerald-500 pi-text-white pi-font-sans pi-font-light pi-text-xl pi-text-center pi-px-2 focus:pi-outline-0 focus:pi-ring-0"}))),d.default.createElement("div",{className:"pi-z-30 pi-h-6 pi-pointer-events-none pi-bg-transparent pi-mt-7 pi-pr-4"},L&&d.default.createElement("div",{className:"pi-h-6 pi-w-full pi-bg-gradient-to-b pi-from-black pi-to-transparent pi-z-100"})),d.default.createElement("div",{style:{marginTop:"-22px"},className:"pi-flex pi-flex-col pi-gap-7"},d.default.createElement("div",{style:{height:"17rem"},ref:j,className:"pi-relative pi-w-full pi-flex pi-flex-col pi-gap-1 pi-overflow-y-auto pi-overflow-x-hidden pi-scrollbar-thin pi-scrollbar-thumb-gray-400 pi-scrollbar-thumb-rounded-full pi-scrollbar-thumb-opacity-50 pi-scrollbar-track-gray-900 pi-scrollbar-track-rounded-full pi-scrollbar-track-opacity-25"},y&&0===w.length&&d.default.createElement("div",{className:"pi-flex pi-items-center pi-w-full pi-justify-between pi-px-3 pi-py-1"},d.default.createElement("div",{className:"pi-flex pi-items-center pi-gap-4"},d.default.createElement(a.default,null),d.default.createElement("div",{style:{maxWidth:"146px"},className:"pi-h-fit pi-max-w-40 pi-font-sans pi-truncate pi-text-sm pi-font-bold"},g.current)),d.default.createElement("div",{className:"pi-flex pi-gap-3.5"},d.default.createElement(n.Button,{onClick:function(){return A(g.current)},variant:"default","data-tooltip-id":"transfer-list-tooltip","data-tooltip-content":"Call to transfer"},d.default.createElement(i.FontAwesomeIcon,{size:"xl",icon:l.faPhone})))),w&&w.slice(0,q).map((function(e,t){return d.default.createElement("div",{key:t,className:"pi-flex pi-items-center pi-w-full pi-justify-between pi-px-3 pi-py-1"},d.default.createElement("div",{className:"pi-flex pi-items-center pi-gap-4"},d.default.createElement(a.default,{onClick:function(){return"online"===e.mainPresence&&A(e.endpoints.mainextension[0].id)},username:e.username,status:e.mainPresence,"data-tooltip-id":"online"===e.mainPresence&&"transfer-list-tooltip","data-tooltip-content":"online"===e.mainPresence&&"Call to transfer"}),d.default.createElement("div",{onClick:function(){return"online"===e.mainPresence&&A(e.endpoints.mainextension[0].id)},style:{maxWidth:"196px"},"data-stop-propagation":!0,"data-tooltip-id":"online"===e.mainPresence&&"transfer-list-tooltip","data-tooltip-content":"online"===e.mainPresence&&"Call to transfer",className:"pi-h-fit pi-font-sans pi-truncate pi-text-sm pi-font-bold pi-text-white pi-transition"},e.name)),d.default.createElement("div",{className:"pi-flex pi-gap-3.5"},"online"===e.mainPresence&&d.default.createElement(n.Button,{onClick:function(){return"online"===e.mainPresence&&A(e.endpoints.mainextension[0].id)},variant:"default",disabled:"online"!==e.mainPresence,"data-tooltip-id":"transfer-list-tooltip","data-tooltip-content":"Call to transfer"},d.default.createElement(i.FontAwesomeIcon,{size:"xl",icon:l.faPhone}))))})),x&&0===w.length&&!y&&d.default.createElement("p",{className:"pi-font-sans pi-font-bold pi-w-full pi-flex pi-justify-center pi-text-sm"},"No users found.")))):d.default.createElement("div",{className:"pi-font-medium pi-text-base pi-font-sans"},"Transfer"),d.default.createElement(s.Tooltip,{className:"pi-z-1000",id:"transfer-list-tooltip",place:"bottom"}))};
|
|
2
2
|
//# sourceMappingURL=TransferList.js.map
|