@nethesis/phone-island 1.0.14-dev.1 → 1.0.15

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (657) hide show
  1. package/dist/App.js +1 -1
  2. package/dist/App.js.map +1 -1
  3. package/dist/components/AlertGuard.js +1 -1
  4. package/dist/components/AlertGuard.js.map +1 -1
  5. package/dist/components/AlertView/index.js +1 -1
  6. package/dist/components/AlertView/index.js.map +1 -1
  7. package/dist/components/AudioBars.js +1 -1
  8. package/dist/components/AudioBars.js.map +1 -1
  9. package/dist/components/AudioPlayerView/Avatar.js +1 -1
  10. package/dist/components/AudioPlayerView/Avatar.js.map +1 -1
  11. package/dist/components/AudioPlayerView/PlayerFooterActions.js +1 -1
  12. package/dist/components/AudioPlayerView/PlayerFooterActions.js.map +1 -1
  13. package/dist/components/AudioPlayerView/Progress.js +1 -1
  14. package/dist/components/AudioPlayerView/Progress.js.map +1 -1
  15. package/dist/components/AudioPlayerView/index.js +1 -1
  16. package/dist/components/AudioPlayerView/index.js.map +1 -1
  17. package/dist/components/AvatarGroup.js +1 -1
  18. package/dist/components/AvatarGroup.js.map +1 -1
  19. package/dist/components/CallView/Actions.js +1 -1
  20. package/dist/components/CallView/Actions.js.map +1 -1
  21. package/dist/components/CallView/Avatar.js +1 -1
  22. package/dist/components/CallView/Avatar.js.map +1 -1
  23. package/dist/components/CallView/BackCall.js +1 -1
  24. package/dist/components/CallView/BackCall.js.map +1 -1
  25. package/dist/components/CallView/DisplayName.js +1 -1
  26. package/dist/components/CallView/DisplayName.js.map +1 -1
  27. package/dist/components/CallView/Number.js +1 -1
  28. package/dist/components/CallView/Number.js.map +1 -1
  29. package/dist/components/CallView/Timer.js +1 -1
  30. package/dist/components/CallView/Timer.js.map +1 -1
  31. package/dist/components/CallView/index.js +1 -1
  32. package/dist/components/CallView/index.js.map +1 -1
  33. package/dist/components/ConferenceView/ConferenceUsersList.js +1 -1
  34. package/dist/components/ConferenceView/ConferenceUsersList.js.map +1 -1
  35. package/dist/components/ConferenceView/index.js +1 -1
  36. package/dist/components/ConferenceView/index.js.map +1 -1
  37. package/dist/components/ContactView/ContactListView.js +1 -1
  38. package/dist/components/ContactView/ContactListView.js.map +1 -1
  39. package/dist/components/ContactView/ListAvatar.js +1 -1
  40. package/dist/components/ContactView/ListAvatar.js.map +1 -1
  41. package/dist/components/ContactView/SelectContactNumberView.js +1 -1
  42. package/dist/components/ContactView/SelectContactNumberView.js.map +1 -1
  43. package/dist/components/ContactView/TransferActions.js +1 -1
  44. package/dist/components/ContactView/TransferActions.js.map +1 -1
  45. package/dist/components/CustomThemedTooltip.js +1 -1
  46. package/dist/components/CustomThemedTooltip.js.map +1 -1
  47. package/dist/components/Dropdown.js +1 -1
  48. package/dist/components/Dropdown.js.map +1 -1
  49. package/dist/components/Hangup.js +1 -1
  50. package/dist/components/Hangup.js.map +1 -1
  51. package/dist/components/Island.js +1 -1
  52. package/dist/components/Island.js.map +1 -1
  53. package/dist/components/IslandDrag.js +1 -1
  54. package/dist/components/IslandDrag.js.map +1 -1
  55. package/dist/components/IslandMotion.js +1 -1
  56. package/dist/components/IslandMotion.js.map +1 -1
  57. package/dist/components/KeypadView/Actions.js +1 -1
  58. package/dist/components/KeypadView/Actions.js.map +1 -1
  59. package/dist/components/KeypadView/index.js +1 -1
  60. package/dist/components/KeypadView/index.js.map +1 -1
  61. package/dist/components/OperatorBusyView/index.js +1 -1
  62. package/dist/components/OperatorBusyView/index.js.map +1 -1
  63. package/dist/components/PhysicalRecorderView/PhysicalRecordingTimer.js +1 -1
  64. package/dist/components/PhysicalRecorderView/PhysicalRecordingTimer.js.map +1 -1
  65. package/dist/components/PhysicalRecorderView/index.js +1 -1
  66. package/dist/components/PhysicalRecorderView/index.js.map +1 -1
  67. package/dist/components/RecorderView/Actions.js +1 -1
  68. package/dist/components/RecorderView/Actions.js.map +1 -1
  69. package/dist/components/RecorderView/Bar.js +1 -1
  70. package/dist/components/RecorderView/Bar.js.map +1 -1
  71. package/dist/components/RecorderView/BarsGroup.js +1 -1
  72. package/dist/components/RecorderView/BarsGroup.js.map +1 -1
  73. package/dist/components/RecorderView/Timer.js +1 -1
  74. package/dist/components/RecorderView/Timer.js.map +1 -1
  75. package/dist/components/RecorderView/index.js +1 -1
  76. package/dist/components/RecorderView/index.js.map +1 -1
  77. package/dist/components/RestAPI.js +1 -1
  78. package/dist/components/RestAPI.js.map +1 -1
  79. package/dist/components/SettingsView/AudioView.js +1 -1
  80. package/dist/components/SettingsView/AudioView.js.map +1 -1
  81. package/dist/components/SettingsView/MicrophoneView.js +1 -1
  82. package/dist/components/SettingsView/MicrophoneView.js.map +1 -1
  83. package/dist/components/SettingsView/SettingsHeader.js +1 -1
  84. package/dist/components/SettingsView/SettingsHeader.js.map +1 -1
  85. package/dist/components/SettingsView/ThemeView.js +1 -1
  86. package/dist/components/SettingsView/ThemeView.js.map +1 -1
  87. package/dist/components/SettingsView/VideoInputView.js +1 -1
  88. package/dist/components/SettingsView/VideoInputView.js.map +1 -1
  89. package/dist/components/SettingsView/index.js +1 -1
  90. package/dist/components/SettingsView/index.js.map +1 -1
  91. package/dist/components/SideView/SideView.js +1 -1
  92. package/dist/components/SideView/SideView.js.map +1 -1
  93. package/dist/components/SideView/components/SideViewButton.js +1 -1
  94. package/dist/components/SideView/components/SideViewButton.js.map +1 -1
  95. package/dist/components/SideView/hooks/useSideViewLogic.js +1 -1
  96. package/dist/components/SideView/hooks/useSideViewLogic.js.map +1 -1
  97. package/dist/components/Socket.js +1 -1
  98. package/dist/components/Socket.js.map +1 -1
  99. package/dist/components/StreamingAnswerView/index.js +1 -1
  100. package/dist/components/StreamingAnswerView/index.js.map +1 -1
  101. package/dist/components/StreamingImage/index.js +1 -1
  102. package/dist/components/StreamingImage/index.js.map +1 -1
  103. package/dist/components/SwitchDeviceView/index.js +1 -1
  104. package/dist/components/SwitchDeviceView/index.js.map +1 -1
  105. package/dist/components/SwitchInputView/DropdownContent.js +1 -1
  106. package/dist/components/SwitchInputView/DropdownContent.js.map +1 -1
  107. package/dist/components/TextScroll.js +1 -1
  108. package/dist/components/TextScroll.js.map +1 -1
  109. package/dist/components/TranscriptionView/TranscriptionView.js +1 -1
  110. package/dist/components/TranscriptionView/TranscriptionView.js.map +1 -1
  111. package/dist/components/TransferButton.js +1 -1
  112. package/dist/components/TransferButton.js.map +1 -1
  113. package/dist/components/VideoView/index.js +1 -1
  114. package/dist/components/VideoView/index.js.map +1 -1
  115. package/dist/components/ViewsTransition.js +1 -1
  116. package/dist/components/ViewsTransition.js.map +1 -1
  117. package/dist/components/WebRTC.js +1 -1
  118. package/dist/components/WebRTC.js.map +1 -1
  119. package/dist/events/CallEvents.js +1 -1
  120. package/dist/events/CallEvents.js.map +1 -1
  121. package/dist/events/PlayerEvents.js +1 -1
  122. package/dist/events/PlayerEvents.js.map +1 -1
  123. package/dist/events/RecorderEvents.js +1 -1
  124. package/dist/events/RecorderEvents.js.map +1 -1
  125. package/dist/lib/avatars/avatars.js +1 -1
  126. package/dist/lib/avatars/avatars.js.map +1 -1
  127. package/dist/lib/devices/devices.js +1 -1
  128. package/dist/lib/devices/devices.js.map +1 -1
  129. package/dist/lib/phone/audio.js +1 -1
  130. package/dist/lib/phone/audio.js.map +1 -1
  131. package/dist/lib/phone/call.js +1 -1
  132. package/dist/lib/phone/call.js.map +1 -1
  133. package/dist/lib/phone/queue.js +1 -1
  134. package/dist/lib/phone/queue.js.map +1 -1
  135. package/dist/lib/player/audio.js +1 -1
  136. package/dist/lib/player/audio.js.map +1 -1
  137. package/dist/lib/user/extensions.js +1 -1
  138. package/dist/lib/user/extensions.js.map +1 -1
  139. package/dist/lib/webrtc/janus.js +1 -1
  140. package/dist/lib/webrtc/janus.js.map +1 -1
  141. package/dist/lib/webrtc/messages.js +1 -1
  142. package/dist/lib/webrtc/messages.js.map +1 -1
  143. package/dist/models/conference.js +1 -1
  144. package/dist/models/conference.js.map +1 -1
  145. package/dist/models/currentCall.js +1 -1
  146. package/dist/models/currentCall.js.map +1 -1
  147. package/dist/models/mediaDevices.js +1 -1
  148. package/dist/models/mediaDevices.js.map +1 -1
  149. package/dist/models/player.js +1 -1
  150. package/dist/models/player.js.map +1 -1
  151. package/dist/models/queue.js +1 -1
  152. package/dist/models/queue.js.map +1 -1
  153. package/dist/models/ringtones.js +1 -1
  154. package/dist/models/ringtones.js.map +1 -1
  155. package/dist/models/streaming.js +1 -1
  156. package/dist/models/streaming.js.map +1 -1
  157. package/dist/node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js.map +1 -1
  158. package/dist/node_modules/@babel/runtime/helpers/esm/objectSpread2.js +1 -1
  159. package/dist/node_modules/@babel/runtime/helpers/esm/objectSpread2.js.map +1 -1
  160. package/dist/node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js.map +1 -1
  161. package/dist/node_modules/@babel/runtime/helpers/esm/toPrimitive.js.map +1 -1
  162. package/dist/node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js.map +1 -1
  163. package/dist/node_modules/@babel/runtime/helpers/toPrimitive.js.map +1 -1
  164. package/dist/node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js.map +1 -1
  165. package/dist/node_modules/@emotion/is-prop-valid/dist/emotion-is-prop-valid.esm.js +1 -1
  166. package/dist/node_modules/@emotion/is-prop-valid/dist/emotion-is-prop-valid.esm.js.map +1 -1
  167. package/dist/node_modules/@emotion/stylis/dist/stylis.browser.esm.js +1 -1
  168. package/dist/node_modules/@emotion/stylis/dist/stylis.browser.esm.js.map +1 -1
  169. package/dist/node_modules/@floating-ui/core/dist/floating-ui.core.mjs.js +1 -1
  170. package/dist/node_modules/@floating-ui/core/dist/floating-ui.core.mjs.js.map +1 -1
  171. package/dist/node_modules/@floating-ui/dom/dist/floating-ui.dom.mjs.js +1 -1
  172. package/dist/node_modules/@floating-ui/dom/dist/floating-ui.dom.mjs.js.map +1 -1
  173. package/dist/node_modules/@floating-ui/react/dist/floating-ui.react.mjs.js +1 -1
  174. package/dist/node_modules/@floating-ui/react/dist/floating-ui.react.mjs.js.map +1 -1
  175. package/dist/node_modules/@floating-ui/react/dist/floating-ui.react.utils.mjs.js +1 -1
  176. package/dist/node_modules/@floating-ui/react/dist/floating-ui.react.utils.mjs.js.map +1 -1
  177. package/dist/node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.mjs.js +1 -1
  178. package/dist/node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.mjs.js.map +1 -1
  179. package/dist/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.mjs.js +1 -1
  180. package/dist/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.mjs.js.map +1 -1
  181. package/dist/node_modules/@floating-ui/utils/dist/floating-ui.utils.mjs.js +1 -1
  182. package/dist/node_modules/@floating-ui/utils/dist/floating-ui.utils.mjs.js.map +1 -1
  183. package/dist/node_modules/@fortawesome/fontawesome-svg-core/index.mjs.js +1 -1
  184. package/dist/node_modules/@fortawesome/fontawesome-svg-core/index.mjs.js.map +1 -1
  185. package/dist/node_modules/@fortawesome/react-fontawesome/index.es.js +1 -1
  186. package/dist/node_modules/@fortawesome/react-fontawesome/index.es.js.map +1 -1
  187. package/dist/node_modules/@headlessui/react/dist/components/description/description.js +1 -1
  188. package/dist/node_modules/@headlessui/react/dist/components/description/description.js.map +1 -1
  189. package/dist/node_modules/@headlessui/react/dist/components/label/label.js +1 -1
  190. package/dist/node_modules/@headlessui/react/dist/components/label/label.js.map +1 -1
  191. package/dist/node_modules/@headlessui/react/dist/components/menu/menu-machine-glue.js +1 -1
  192. package/dist/node_modules/@headlessui/react/dist/components/menu/menu-machine-glue.js.map +1 -1
  193. package/dist/node_modules/@headlessui/react/dist/components/menu/menu-machine.js +1 -1
  194. package/dist/node_modules/@headlessui/react/dist/components/menu/menu-machine.js.map +1 -1
  195. package/dist/node_modules/@headlessui/react/dist/components/menu/menu.js +1 -1
  196. package/dist/node_modules/@headlessui/react/dist/components/menu/menu.js.map +1 -1
  197. package/dist/node_modules/@headlessui/react/dist/components/portal/portal.js +1 -1
  198. package/dist/node_modules/@headlessui/react/dist/components/portal/portal.js.map +1 -1
  199. package/dist/node_modules/@headlessui/react/dist/components/transition/transition.js +1 -1
  200. package/dist/node_modules/@headlessui/react/dist/components/transition/transition.js.map +1 -1
  201. package/dist/node_modules/@headlessui/react/dist/hooks/document-overflow/handle-ios-locking.js +1 -1
  202. package/dist/node_modules/@headlessui/react/dist/hooks/document-overflow/handle-ios-locking.js.map +1 -1
  203. package/dist/node_modules/@headlessui/react/dist/hooks/document-overflow/overflow-store.js +1 -1
  204. package/dist/node_modules/@headlessui/react/dist/hooks/document-overflow/overflow-store.js.map +1 -1
  205. package/dist/node_modules/@headlessui/react/dist/hooks/document-overflow/use-document-overflow.js +1 -1
  206. package/dist/node_modules/@headlessui/react/dist/hooks/document-overflow/use-document-overflow.js.map +1 -1
  207. package/dist/node_modules/@headlessui/react/dist/hooks/use-active-press.js +1 -1
  208. package/dist/node_modules/@headlessui/react/dist/hooks/use-active-press.js.map +1 -1
  209. package/dist/node_modules/@headlessui/react/dist/hooks/use-disposables.js +1 -1
  210. package/dist/node_modules/@headlessui/react/dist/hooks/use-disposables.js.map +1 -1
  211. package/dist/node_modules/@headlessui/react/dist/hooks/use-document-event.js +1 -1
  212. package/dist/node_modules/@headlessui/react/dist/hooks/use-document-event.js.map +1 -1
  213. package/dist/node_modules/@headlessui/react/dist/hooks/use-element-size.js +1 -1
  214. package/dist/node_modules/@headlessui/react/dist/hooks/use-element-size.js.map +1 -1
  215. package/dist/node_modules/@headlessui/react/dist/hooks/use-event.js +1 -1
  216. package/dist/node_modules/@headlessui/react/dist/hooks/use-event.js.map +1 -1
  217. package/dist/node_modules/@headlessui/react/dist/hooks/use-flags.js +1 -1
  218. package/dist/node_modules/@headlessui/react/dist/hooks/use-flags.js.map +1 -1
  219. package/dist/node_modules/@headlessui/react/dist/hooks/use-handle-toggle.js +1 -1
  220. package/dist/node_modules/@headlessui/react/dist/hooks/use-handle-toggle.js.map +1 -1
  221. package/dist/node_modules/@headlessui/react/dist/hooks/use-inert-others.js +1 -1
  222. package/dist/node_modules/@headlessui/react/dist/hooks/use-inert-others.js.map +1 -1
  223. package/dist/node_modules/@headlessui/react/dist/hooks/use-is-mounted.js +1 -1
  224. package/dist/node_modules/@headlessui/react/dist/hooks/use-is-mounted.js.map +1 -1
  225. package/dist/node_modules/@headlessui/react/dist/hooks/use-is-top-layer.js +1 -1
  226. package/dist/node_modules/@headlessui/react/dist/hooks/use-is-top-layer.js.map +1 -1
  227. package/dist/node_modules/@headlessui/react/dist/hooks/use-iso-morphic-effect.js.map +1 -1
  228. package/dist/node_modules/@headlessui/react/dist/hooks/use-latest-value.js +1 -1
  229. package/dist/node_modules/@headlessui/react/dist/hooks/use-latest-value.js.map +1 -1
  230. package/dist/node_modules/@headlessui/react/dist/hooks/use-on-disappear.js +1 -1
  231. package/dist/node_modules/@headlessui/react/dist/hooks/use-on-disappear.js.map +1 -1
  232. package/dist/node_modules/@headlessui/react/dist/hooks/use-on-unmount.js +1 -1
  233. package/dist/node_modules/@headlessui/react/dist/hooks/use-on-unmount.js.map +1 -1
  234. package/dist/node_modules/@headlessui/react/dist/hooks/use-outside-click.js +1 -1
  235. package/dist/node_modules/@headlessui/react/dist/hooks/use-outside-click.js.map +1 -1
  236. package/dist/node_modules/@headlessui/react/dist/hooks/use-owner.js +1 -1
  237. package/dist/node_modules/@headlessui/react/dist/hooks/use-owner.js.map +1 -1
  238. package/dist/node_modules/@headlessui/react/dist/hooks/use-quick-release.js +1 -1
  239. package/dist/node_modules/@headlessui/react/dist/hooks/use-quick-release.js.map +1 -1
  240. package/dist/node_modules/@headlessui/react/dist/hooks/use-resolve-button-type.js +1 -1
  241. package/dist/node_modules/@headlessui/react/dist/hooks/use-resolve-button-type.js.map +1 -1
  242. package/dist/node_modules/@headlessui/react/dist/hooks/use-scroll-lock.js +1 -1
  243. package/dist/node_modules/@headlessui/react/dist/hooks/use-scroll-lock.js.map +1 -1
  244. package/dist/node_modules/@headlessui/react/dist/hooks/use-server-handoff-complete.js +1 -1
  245. package/dist/node_modules/@headlessui/react/dist/hooks/use-server-handoff-complete.js.map +1 -1
  246. package/dist/node_modules/@headlessui/react/dist/hooks/use-slot.js +1 -1
  247. package/dist/node_modules/@headlessui/react/dist/hooks/use-slot.js.map +1 -1
  248. package/dist/node_modules/@headlessui/react/dist/hooks/use-sync-refs.js +1 -1
  249. package/dist/node_modules/@headlessui/react/dist/hooks/use-sync-refs.js.map +1 -1
  250. package/dist/node_modules/@headlessui/react/dist/hooks/use-text-value.js +1 -1
  251. package/dist/node_modules/@headlessui/react/dist/hooks/use-text-value.js.map +1 -1
  252. package/dist/node_modules/@headlessui/react/dist/hooks/use-transition.js +1 -1
  253. package/dist/node_modules/@headlessui/react/dist/hooks/use-transition.js.map +1 -1
  254. package/dist/node_modules/@headlessui/react/dist/hooks/use-tree-walker.js +1 -1
  255. package/dist/node_modules/@headlessui/react/dist/hooks/use-tree-walker.js.map +1 -1
  256. package/dist/node_modules/@headlessui/react/dist/hooks/use-window-event.js +1 -1
  257. package/dist/node_modules/@headlessui/react/dist/hooks/use-window-event.js.map +1 -1
  258. package/dist/node_modules/@headlessui/react/dist/internal/disabled.js.map +1 -1
  259. package/dist/node_modules/@headlessui/react/dist/internal/floating.js +1 -1
  260. package/dist/node_modules/@headlessui/react/dist/internal/floating.js.map +1 -1
  261. package/dist/node_modules/@headlessui/react/dist/internal/id.js.map +1 -1
  262. package/dist/node_modules/@headlessui/react/dist/machine.js +1 -1
  263. package/dist/node_modules/@headlessui/react/dist/machine.js.map +1 -1
  264. package/dist/node_modules/@headlessui/react/dist/machines/stack-machine.js +1 -1
  265. package/dist/node_modules/@headlessui/react/dist/machines/stack-machine.js.map +1 -1
  266. package/dist/node_modules/@headlessui/react/dist/react-glue.js +1 -1
  267. package/dist/node_modules/@headlessui/react/dist/react-glue.js.map +1 -1
  268. package/dist/node_modules/@headlessui/react/dist/utils/bugs.js.map +1 -1
  269. package/dist/node_modules/@headlessui/react/dist/utils/class-names.js +1 -1
  270. package/dist/node_modules/@headlessui/react/dist/utils/class-names.js.map +1 -1
  271. package/dist/node_modules/@headlessui/react/dist/utils/default-map.js.map +1 -1
  272. package/dist/node_modules/@headlessui/react/dist/utils/disposables.js +1 -1
  273. package/dist/node_modules/@headlessui/react/dist/utils/disposables.js.map +1 -1
  274. package/dist/node_modules/@headlessui/react/dist/utils/element-movement.js +1 -1
  275. package/dist/node_modules/@headlessui/react/dist/utils/element-movement.js.map +1 -1
  276. package/dist/node_modules/@headlessui/react/dist/utils/env.js.map +1 -1
  277. package/dist/node_modules/@headlessui/react/dist/utils/focus-management.js +1 -1
  278. package/dist/node_modules/@headlessui/react/dist/utils/focus-management.js.map +1 -1
  279. package/dist/node_modules/@headlessui/react/dist/utils/get-text-value.js +1 -1
  280. package/dist/node_modules/@headlessui/react/dist/utils/get-text-value.js.map +1 -1
  281. package/dist/node_modules/@headlessui/react/dist/utils/match.js +1 -1
  282. package/dist/node_modules/@headlessui/react/dist/utils/match.js.map +1 -1
  283. package/dist/node_modules/@headlessui/react/dist/utils/micro-task.js +1 -1
  284. package/dist/node_modules/@headlessui/react/dist/utils/micro-task.js.map +1 -1
  285. package/dist/node_modules/@headlessui/react/dist/utils/owner.js.map +1 -1
  286. package/dist/node_modules/@headlessui/react/dist/utils/render.js +1 -1
  287. package/dist/node_modules/@headlessui/react/dist/utils/render.js.map +1 -1
  288. package/dist/node_modules/@headlessui/react/dist/utils/store.js +1 -1
  289. package/dist/node_modules/@headlessui/react/dist/utils/store.js.map +1 -1
  290. package/dist/node_modules/@react-aria/focus/dist/FocusScope.mjs.js +1 -1
  291. package/dist/node_modules/@react-aria/focus/dist/FocusScope.mjs.js.map +1 -1
  292. package/dist/node_modules/@react-aria/focus/dist/useFocusRing.mjs.js +1 -1
  293. package/dist/node_modules/@react-aria/focus/dist/useFocusRing.mjs.js.map +1 -1
  294. package/dist/node_modules/@react-aria/interactions/dist/useFocus.mjs.js +1 -1
  295. package/dist/node_modules/@react-aria/interactions/dist/useFocus.mjs.js.map +1 -1
  296. package/dist/node_modules/@react-aria/interactions/dist/useFocusVisible.mjs.js +1 -1
  297. package/dist/node_modules/@react-aria/interactions/dist/useFocusVisible.mjs.js.map +1 -1
  298. package/dist/node_modules/@react-aria/interactions/dist/useFocusWithin.mjs.js +1 -1
  299. package/dist/node_modules/@react-aria/interactions/dist/useFocusWithin.mjs.js.map +1 -1
  300. package/dist/node_modules/@react-aria/interactions/dist/useHover.mjs.js +1 -1
  301. package/dist/node_modules/@react-aria/interactions/dist/useHover.mjs.js.map +1 -1
  302. package/dist/node_modules/@react-aria/interactions/dist/utils.mjs.js +1 -1
  303. package/dist/node_modules/@react-aria/interactions/dist/utils.mjs.js.map +1 -1
  304. package/dist/node_modules/@react-aria/utils/dist/domHelpers.mjs.js.map +1 -1
  305. package/dist/node_modules/@react-aria/utils/dist/platform.mjs.js +1 -1
  306. package/dist/node_modules/@react-aria/utils/dist/platform.mjs.js.map +1 -1
  307. package/dist/node_modules/@react-aria/utils/dist/runAfterTransition.mjs.js +1 -1
  308. package/dist/node_modules/@react-aria/utils/dist/runAfterTransition.mjs.js.map +1 -1
  309. package/dist/node_modules/@react-aria/utils/dist/useEffectEvent.mjs.js +1 -1
  310. package/dist/node_modules/@react-aria/utils/dist/useEffectEvent.mjs.js.map +1 -1
  311. package/dist/node_modules/@react-aria/utils/dist/useGlobalListeners.mjs.js +1 -1
  312. package/dist/node_modules/@react-aria/utils/dist/useGlobalListeners.mjs.js.map +1 -1
  313. package/dist/node_modules/@react-aria/utils/dist/useId.mjs.js +1 -1
  314. package/dist/node_modules/@react-aria/utils/dist/useId.mjs.js.map +1 -1
  315. package/dist/node_modules/@rematch/core/dist/core.esm.js +1 -1
  316. package/dist/node_modules/@rematch/core/dist/core.esm.js.map +1 -1
  317. package/dist/node_modules/@rematch/immer/dist/immer.esm.js +1 -1
  318. package/dist/node_modules/@rematch/immer/dist/immer.esm.js.map +1 -1
  319. package/dist/node_modules/@rematch/select/dist/select.esm.js +1 -1
  320. package/dist/node_modules/@rematch/select/dist/select.esm.js.map +1 -1
  321. package/dist/node_modules/bowser/es5.js +1 -1
  322. package/dist/node_modules/bowser/es5.js.map +1 -1
  323. package/dist/node_modules/ebml-block/index.js +1 -1
  324. package/dist/node_modules/ebml-block/index.js.map +1 -1
  325. package/dist/node_modules/engine.io-client/build/esm/contrib/parseuri.js +1 -1
  326. package/dist/node_modules/engine.io-client/build/esm/contrib/parseuri.js.map +1 -1
  327. package/dist/node_modules/engine.io-client/build/esm/socket.js +1 -1
  328. package/dist/node_modules/engine.io-client/build/esm/socket.js.map +1 -1
  329. package/dist/node_modules/engine.io-client/build/esm/transports/polling-xhr.js +1 -1
  330. package/dist/node_modules/engine.io-client/build/esm/transports/polling-xhr.js.map +1 -1
  331. package/dist/node_modules/engine.io-client/build/esm/transports/polling.js +1 -1
  332. package/dist/node_modules/engine.io-client/build/esm/transports/polling.js.map +1 -1
  333. package/dist/node_modules/engine.io-client/build/esm/transports/websocket.js +1 -1
  334. package/dist/node_modules/engine.io-client/build/esm/transports/websocket.js.map +1 -1
  335. package/dist/node_modules/engine.io-client/build/esm/transports/webtransport.js +1 -1
  336. package/dist/node_modules/engine.io-client/build/esm/transports/webtransport.js.map +1 -1
  337. package/dist/node_modules/engine.io-client/build/esm/util.js +1 -1
  338. package/dist/node_modules/engine.io-client/build/esm/util.js.map +1 -1
  339. package/dist/node_modules/engine.io-parser/build/esm/commons.js +1 -1
  340. package/dist/node_modules/engine.io-parser/build/esm/commons.js.map +1 -1
  341. package/dist/node_modules/engine.io-parser/build/esm/contrib/base64-arraybuffer.js.map +1 -1
  342. package/dist/node_modules/engine.io-parser/build/esm/decodePacket.browser.js.map +1 -1
  343. package/dist/node_modules/engine.io-parser/build/esm/encodePacket.browser.js +1 -1
  344. package/dist/node_modules/engine.io-parser/build/esm/encodePacket.browser.js.map +1 -1
  345. package/dist/node_modules/engine.io-parser/build/esm/index.js +1 -1
  346. package/dist/node_modules/engine.io-parser/build/esm/index.js.map +1 -1
  347. package/dist/node_modules/events/events.js +1 -1
  348. package/dist/node_modules/events/events.js.map +1 -1
  349. package/dist/node_modules/framer-motion/dist/es/animation/hooks/animation-controls.mjs.js +1 -1
  350. package/dist/node_modules/framer-motion/dist/es/animation/hooks/animation-controls.mjs.js.map +1 -1
  351. package/dist/node_modules/framer-motion/dist/es/components/AnimatePresence/PopChild.mjs.js +1 -1
  352. package/dist/node_modules/framer-motion/dist/es/components/AnimatePresence/PopChild.mjs.js.map +1 -1
  353. package/dist/node_modules/framer-motion/dist/es/components/AnimatePresence/PresenceChild.mjs.js +1 -1
  354. package/dist/node_modules/framer-motion/dist/es/components/AnimatePresence/PresenceChild.mjs.js.map +1 -1
  355. package/dist/node_modules/framer-motion/dist/es/components/AnimatePresence/index.mjs.js +1 -1
  356. package/dist/node_modules/framer-motion/dist/es/components/AnimatePresence/index.mjs.js.map +1 -1
  357. package/dist/node_modules/framer-motion/dist/es/components/AnimatePresence/use-presence.mjs.js +1 -1
  358. package/dist/node_modules/framer-motion/dist/es/components/AnimatePresence/use-presence.mjs.js.map +1 -1
  359. package/dist/node_modules/framer-motion/dist/es/components/AnimatePresence/utils.mjs.js +1 -1
  360. package/dist/node_modules/framer-motion/dist/es/components/AnimatePresence/utils.mjs.js.map +1 -1
  361. package/dist/node_modules/framer-motion/dist/es/context/MotionContext/create.mjs.js +1 -1
  362. package/dist/node_modules/framer-motion/dist/es/context/MotionContext/create.mjs.js.map +1 -1
  363. package/dist/node_modules/framer-motion/dist/es/gestures/drag/VisualElementDragControls.mjs.js +1 -1
  364. package/dist/node_modules/framer-motion/dist/es/gestures/drag/VisualElementDragControls.mjs.js.map +1 -1
  365. package/dist/node_modules/framer-motion/dist/es/gestures/drag/use-drag-controls.mjs.js +1 -1
  366. package/dist/node_modules/framer-motion/dist/es/gestures/drag/use-drag-controls.mjs.js.map +1 -1
  367. package/dist/node_modules/framer-motion/dist/es/gestures/focus.mjs.js +1 -1
  368. package/dist/node_modules/framer-motion/dist/es/gestures/focus.mjs.js.map +1 -1
  369. package/dist/node_modules/framer-motion/dist/es/gestures/hover.mjs.js +1 -1
  370. package/dist/node_modules/framer-motion/dist/es/gestures/hover.mjs.js.map +1 -1
  371. package/dist/node_modules/framer-motion/dist/es/gestures/pan/PanSession.mjs.js.map +1 -1
  372. package/dist/node_modules/framer-motion/dist/es/gestures/pan/index.mjs.js +1 -1
  373. package/dist/node_modules/framer-motion/dist/es/gestures/pan/index.mjs.js.map +1 -1
  374. package/dist/node_modules/framer-motion/dist/es/gestures/press.mjs.js +1 -1
  375. package/dist/node_modules/framer-motion/dist/es/gestures/press.mjs.js.map +1 -1
  376. package/dist/node_modules/framer-motion/dist/es/motion/features/animation/exit.mjs.js +1 -1
  377. package/dist/node_modules/framer-motion/dist/es/motion/features/animation/exit.mjs.js.map +1 -1
  378. package/dist/node_modules/framer-motion/dist/es/motion/features/definitions.mjs.js +1 -1
  379. package/dist/node_modules/framer-motion/dist/es/motion/features/definitions.mjs.js.map +1 -1
  380. package/dist/node_modules/framer-motion/dist/es/motion/features/layout/MeasureLayout.mjs.js +1 -1
  381. package/dist/node_modules/framer-motion/dist/es/motion/features/layout/MeasureLayout.mjs.js.map +1 -1
  382. package/dist/node_modules/framer-motion/dist/es/motion/features/viewport/index.mjs.js +1 -1
  383. package/dist/node_modules/framer-motion/dist/es/motion/features/viewport/index.mjs.js.map +1 -1
  384. package/dist/node_modules/framer-motion/dist/es/motion/features/viewport/observers.mjs.js.map +1 -1
  385. package/dist/node_modules/framer-motion/dist/es/motion/utils/use-motion-ref.mjs.js +1 -1
  386. package/dist/node_modules/framer-motion/dist/es/motion/utils/use-motion-ref.mjs.js.map +1 -1
  387. package/dist/node_modules/framer-motion/dist/es/motion/utils/use-visual-element.mjs.js +1 -1
  388. package/dist/node_modules/framer-motion/dist/es/motion/utils/use-visual-element.mjs.js.map +1 -1
  389. package/dist/node_modules/framer-motion/dist/es/motion/utils/use-visual-state.mjs.js.map +1 -1
  390. package/dist/node_modules/framer-motion/dist/es/render/components/create-proxy.mjs.js +1 -1
  391. package/dist/node_modules/framer-motion/dist/es/render/components/create-proxy.mjs.js.map +1 -1
  392. package/dist/node_modules/framer-motion/dist/es/render/dom/use-render.mjs.js +1 -1
  393. package/dist/node_modules/framer-motion/dist/es/render/dom/use-render.mjs.js.map +1 -1
  394. package/dist/node_modules/framer-motion/dist/es/render/html/use-props.mjs.js +1 -1
  395. package/dist/node_modules/framer-motion/dist/es/render/html/use-props.mjs.js.map +1 -1
  396. package/dist/node_modules/framer-motion/dist/es/render/svg/use-props.mjs.js +1 -1
  397. package/dist/node_modules/framer-motion/dist/es/render/svg/use-props.mjs.js.map +1 -1
  398. package/dist/node_modules/framer-motion/dist/es/utils/get-context-window.mjs.js.map +1 -1
  399. package/dist/node_modules/framer-motion/dist/es/utils/use-composed-ref.mjs.js +1 -1
  400. package/dist/node_modules/framer-motion/dist/es/utils/use-composed-ref.mjs.js.map +1 -1
  401. package/dist/node_modules/i18next/dist/esm/i18next.js +1 -1
  402. package/dist/node_modules/i18next/dist/esm/i18next.js.map +1 -1
  403. package/dist/node_modules/i18next-browser-languagedetector/dist/esm/i18nextBrowserLanguageDetector.js +1 -1
  404. package/dist/node_modules/i18next-browser-languagedetector/dist/esm/i18nextBrowserLanguageDetector.js.map +1 -1
  405. package/dist/node_modules/immer/dist/immer.esm.mjs.js +1 -1
  406. package/dist/node_modules/immer/dist/immer.esm.mjs.js.map +1 -1
  407. package/dist/node_modules/int64-buffer/int64-buffer.js.map +1 -1
  408. package/dist/node_modules/js-base64/base64.mjs.js +1 -1
  409. package/dist/node_modules/js-base64/base64.mjs.js.map +1 -1
  410. package/dist/node_modules/mic-check/lib/index.js.map +1 -1
  411. package/dist/node_modules/mic-check/lib/requestMediaPermissions.js +1 -1
  412. package/dist/node_modules/mic-check/lib/requestMediaPermissions.js.map +1 -1
  413. package/dist/node_modules/moment/moment.js +1 -1
  414. package/dist/node_modules/moment/moment.js.map +1 -1
  415. package/dist/node_modules/motion-dom/dist/es/animation/AsyncMotionValueAnimation.mjs.js +1 -1
  416. package/dist/node_modules/motion-dom/dist/es/animation/AsyncMotionValueAnimation.mjs.js.map +1 -1
  417. package/dist/node_modules/motion-dom/dist/es/animation/JSAnimation.mjs.js +1 -1
  418. package/dist/node_modules/motion-dom/dist/es/animation/JSAnimation.mjs.js.map +1 -1
  419. package/dist/node_modules/motion-dom/dist/es/animation/NativeAnimation.mjs.js.map +1 -1
  420. package/dist/node_modules/motion-dom/dist/es/animation/drivers/frame.mjs.js.map +1 -1
  421. package/dist/node_modules/motion-dom/dist/es/animation/generators/inertia.mjs.js.map +1 -1
  422. package/dist/node_modules/motion-dom/dist/es/animation/generators/keyframes.mjs.js +1 -1
  423. package/dist/node_modules/motion-dom/dist/es/animation/generators/keyframes.mjs.js.map +1 -1
  424. package/dist/node_modules/motion-dom/dist/es/animation/generators/spring.mjs.js +1 -1
  425. package/dist/node_modules/motion-dom/dist/es/animation/generators/spring.mjs.js.map +1 -1
  426. package/dist/node_modules/motion-dom/dist/es/animation/interfaces/motion-value.mjs.js +1 -1
  427. package/dist/node_modules/motion-dom/dist/es/animation/interfaces/motion-value.mjs.js.map +1 -1
  428. package/dist/node_modules/motion-dom/dist/es/animation/interfaces/visual-element-target.mjs.js +1 -1
  429. package/dist/node_modules/motion-dom/dist/es/animation/interfaces/visual-element-target.mjs.js.map +1 -1
  430. package/dist/node_modules/motion-dom/dist/es/animation/interfaces/visual-element-variant.mjs.js +1 -1
  431. package/dist/node_modules/motion-dom/dist/es/animation/interfaces/visual-element-variant.mjs.js.map +1 -1
  432. package/dist/node_modules/motion-dom/dist/es/animation/interfaces/visual-element.mjs.js +1 -1
  433. package/dist/node_modules/motion-dom/dist/es/animation/interfaces/visual-element.mjs.js.map +1 -1
  434. package/dist/node_modules/motion-dom/dist/es/animation/keyframes/DOMKeyframesResolver.mjs.js +1 -1
  435. package/dist/node_modules/motion-dom/dist/es/animation/keyframes/DOMKeyframesResolver.mjs.js.map +1 -1
  436. package/dist/node_modules/motion-dom/dist/es/animation/keyframes/KeyframesResolver.mjs.js +1 -1
  437. package/dist/node_modules/motion-dom/dist/es/animation/keyframes/KeyframesResolver.mjs.js.map +1 -1
  438. package/dist/node_modules/motion-dom/dist/es/animation/keyframes/offsets/time.mjs.js +1 -1
  439. package/dist/node_modules/motion-dom/dist/es/animation/keyframes/offsets/time.mjs.js.map +1 -1
  440. package/dist/node_modules/motion-dom/dist/es/animation/keyframes/utils/unit-conversion.mjs.js +1 -1
  441. package/dist/node_modules/motion-dom/dist/es/animation/keyframes/utils/unit-conversion.mjs.js.map +1 -1
  442. package/dist/node_modules/motion-dom/dist/es/animation/utils/WithPromise.mjs.js +1 -1
  443. package/dist/node_modules/motion-dom/dist/es/animation/utils/WithPromise.mjs.js.map +1 -1
  444. package/dist/node_modules/motion-dom/dist/es/animation/utils/calc-child-stagger.mjs.js +1 -1
  445. package/dist/node_modules/motion-dom/dist/es/animation/utils/calc-child-stagger.mjs.js.map +1 -1
  446. package/dist/node_modules/motion-dom/dist/es/animation/utils/default-transitions.mjs.js.map +1 -1
  447. package/dist/node_modules/motion-dom/dist/es/animation/waapi/easing/cubic-bezier.mjs.js.map +1 -1
  448. package/dist/node_modules/motion-dom/dist/es/animation/waapi/easing/map-easing.mjs.js +1 -1
  449. package/dist/node_modules/motion-dom/dist/es/animation/waapi/easing/map-easing.mjs.js.map +1 -1
  450. package/dist/node_modules/motion-dom/dist/es/animation/waapi/supports/waapi.mjs.js +1 -1
  451. package/dist/node_modules/motion-dom/dist/es/animation/waapi/supports/waapi.mjs.js.map +1 -1
  452. package/dist/node_modules/motion-dom/dist/es/animation/waapi/utils/accelerated-values.mjs.js +1 -1
  453. package/dist/node_modules/motion-dom/dist/es/animation/waapi/utils/accelerated-values.mjs.js.map +1 -1
  454. package/dist/node_modules/motion-dom/dist/es/frameloop/batcher.mjs.js +1 -1
  455. package/dist/node_modules/motion-dom/dist/es/frameloop/batcher.mjs.js.map +1 -1
  456. package/dist/node_modules/motion-dom/dist/es/frameloop/render-step.mjs.js.map +1 -1
  457. package/dist/node_modules/motion-dom/dist/es/frameloop/sync-time.mjs.js.map +1 -1
  458. package/dist/node_modules/motion-dom/dist/es/gestures/drag/state/set-active.mjs.js.map +1 -1
  459. package/dist/node_modules/motion-dom/dist/es/gestures/hover.mjs.js +1 -1
  460. package/dist/node_modules/motion-dom/dist/es/gestures/hover.mjs.js.map +1 -1
  461. package/dist/node_modules/motion-dom/dist/es/gestures/press/index.mjs.js +1 -1
  462. package/dist/node_modules/motion-dom/dist/es/gestures/press/index.mjs.js.map +1 -1
  463. package/dist/node_modules/motion-dom/dist/es/gestures/press/utils/keyboard.mjs.js +1 -1
  464. package/dist/node_modules/motion-dom/dist/es/gestures/press/utils/keyboard.mjs.js.map +1 -1
  465. package/dist/node_modules/motion-dom/dist/es/projection/geometry/delta-calc.mjs.js +1 -1
  466. package/dist/node_modules/motion-dom/dist/es/projection/geometry/delta-calc.mjs.js.map +1 -1
  467. package/dist/node_modules/motion-dom/dist/es/projection/node/HTMLProjectionNode.mjs.js.map +1 -1
  468. package/dist/node_modules/motion-dom/dist/es/projection/node/create-projection-node.mjs.js +1 -1
  469. package/dist/node_modules/motion-dom/dist/es/projection/node/create-projection-node.mjs.js.map +1 -1
  470. package/dist/node_modules/motion-dom/dist/es/projection/shared/stack.mjs.js +1 -1
  471. package/dist/node_modules/motion-dom/dist/es/projection/shared/stack.mjs.js.map +1 -1
  472. package/dist/node_modules/motion-dom/dist/es/projection/styles/scale-border-radius.mjs.js.map +1 -1
  473. package/dist/node_modules/motion-dom/dist/es/projection/styles/scale-box-shadow.mjs.js.map +1 -1
  474. package/dist/node_modules/motion-dom/dist/es/render/VisualElement.mjs.js +1 -1
  475. package/dist/node_modules/motion-dom/dist/es/render/VisualElement.mjs.js.map +1 -1
  476. package/dist/node_modules/motion-dom/dist/es/render/dom/DOMVisualElement.mjs.js +1 -1
  477. package/dist/node_modules/motion-dom/dist/es/render/dom/DOMVisualElement.mjs.js.map +1 -1
  478. package/dist/node_modules/motion-dom/dist/es/render/dom/parse-transform.mjs.js.map +1 -1
  479. package/dist/node_modules/motion-dom/dist/es/render/dom/utils/camel-to-dash.mjs.js +1 -1
  480. package/dist/node_modules/motion-dom/dist/es/render/dom/utils/camel-to-dash.mjs.js.map +1 -1
  481. package/dist/node_modules/motion-dom/dist/es/render/html/HTMLVisualElement.mjs.js +1 -1
  482. package/dist/node_modules/motion-dom/dist/es/render/html/HTMLVisualElement.mjs.js.map +1 -1
  483. package/dist/node_modules/motion-dom/dist/es/render/utils/animation-state.mjs.js +1 -1
  484. package/dist/node_modules/motion-dom/dist/es/render/utils/animation-state.mjs.js.map +1 -1
  485. package/dist/node_modules/motion-dom/dist/es/render/utils/is-controlling-variants.mjs.js +1 -1
  486. package/dist/node_modules/motion-dom/dist/es/render/utils/is-controlling-variants.mjs.js.map +1 -1
  487. package/dist/node_modules/motion-dom/dist/es/render/utils/resolve-variants.mjs.js +1 -1
  488. package/dist/node_modules/motion-dom/dist/es/render/utils/resolve-variants.mjs.js.map +1 -1
  489. package/dist/node_modules/motion-dom/dist/es/render/utils/setters.mjs.js +1 -1
  490. package/dist/node_modules/motion-dom/dist/es/render/utils/setters.mjs.js.map +1 -1
  491. package/dist/node_modules/motion-dom/dist/es/resize/handle-element.mjs.js +1 -1
  492. package/dist/node_modules/motion-dom/dist/es/resize/handle-element.mjs.js.map +1 -1
  493. package/dist/node_modules/motion-dom/dist/es/resize/handle-window.mjs.js +1 -1
  494. package/dist/node_modules/motion-dom/dist/es/resize/handle-window.mjs.js.map +1 -1
  495. package/dist/node_modules/motion-dom/dist/es/utils/delay.mjs.js.map +1 -1
  496. package/dist/node_modules/motion-dom/dist/es/utils/interpolate.mjs.js.map +1 -1
  497. package/dist/node_modules/motion-dom/dist/es/utils/mix/color.mjs.js +1 -1
  498. package/dist/node_modules/motion-dom/dist/es/utils/mix/color.mjs.js.map +1 -1
  499. package/dist/node_modules/motion-dom/dist/es/utils/mix/complex.mjs.js +1 -1
  500. package/dist/node_modules/motion-dom/dist/es/utils/mix/complex.mjs.js.map +1 -1
  501. package/dist/node_modules/motion-dom/dist/es/utils/resolve-elements.mjs.js +1 -1
  502. package/dist/node_modules/motion-dom/dist/es/utils/resolve-elements.mjs.js.map +1 -1
  503. package/dist/node_modules/motion-dom/dist/es/utils/supports/linear-easing.mjs.js +1 -1
  504. package/dist/node_modules/motion-dom/dist/es/utils/supports/linear-easing.mjs.js.map +1 -1
  505. package/dist/node_modules/motion-dom/dist/es/utils/supports/scroll-timeline.mjs.js +1 -1
  506. package/dist/node_modules/motion-dom/dist/es/utils/supports/scroll-timeline.mjs.js.map +1 -1
  507. package/dist/node_modules/motion-dom/dist/es/value/index.mjs.js +1 -1
  508. package/dist/node_modules/motion-dom/dist/es/value/index.mjs.js.map +1 -1
  509. package/dist/node_modules/motion-dom/dist/es/value/types/color/hsla.mjs.js.map +1 -1
  510. package/dist/node_modules/motion-dom/dist/es/value/types/color/index.mjs.js.map +1 -1
  511. package/dist/node_modules/motion-dom/dist/es/value/types/color/rgba.mjs.js.map +1 -1
  512. package/dist/node_modules/motion-dom/dist/es/value/types/color/utils.mjs.js.map +1 -1
  513. package/dist/node_modules/motion-dom/dist/es/value/types/complex/filter.mjs.js.map +1 -1
  514. package/dist/node_modules/motion-dom/dist/es/value/types/complex/index.mjs.js +1 -1
  515. package/dist/node_modules/motion-dom/dist/es/value/types/complex/index.mjs.js.map +1 -1
  516. package/dist/node_modules/motion-dom/dist/es/value/types/complex/mask.mjs.js +1 -1
  517. package/dist/node_modules/motion-dom/dist/es/value/types/complex/mask.mjs.js.map +1 -1
  518. package/dist/node_modules/motion-utils/dist/es/easing/cubic-bezier.mjs.js +1 -1
  519. package/dist/node_modules/motion-utils/dist/es/easing/cubic-bezier.mjs.js.map +1 -1
  520. package/dist/node_modules/motion-utils/dist/es/easing/utils/map.mjs.js.map +1 -1
  521. package/dist/node_modules/motion-utils/dist/es/errors.mjs.js.map +1 -1
  522. package/dist/node_modules/motion-utils/dist/es/pipe.mjs.js +1 -1
  523. package/dist/node_modules/motion-utils/dist/es/pipe.mjs.js.map +1 -1
  524. package/dist/node_modules/motion-utils/dist/es/progress.mjs.js.map +1 -1
  525. package/dist/node_modules/object-assign/index.js +1 -1
  526. package/dist/node_modules/object-assign/index.js.map +1 -1
  527. package/dist/node_modules/prop-types/factoryWithTypeCheckers.js +1 -1
  528. package/dist/node_modules/prop-types/factoryWithTypeCheckers.js.map +1 -1
  529. package/dist/node_modules/react/cjs/react-jsx-runtime.development.js +1 -1
  530. package/dist/node_modules/react/cjs/react-jsx-runtime.development.js.map +1 -1
  531. package/dist/node_modules/react/cjs/react-jsx-runtime.production.min.js.map +1 -1
  532. package/dist/node_modules/react-i18next/dist/es/context.js +1 -1
  533. package/dist/node_modules/react-i18next/dist/es/context.js.map +1 -1
  534. package/dist/node_modules/react-i18next/dist/es/defaults.js +1 -1
  535. package/dist/node_modules/react-i18next/dist/es/defaults.js.map +1 -1
  536. package/dist/node_modules/react-i18next/dist/es/useTranslation.js +1 -1
  537. package/dist/node_modules/react-i18next/dist/es/useTranslation.js.map +1 -1
  538. package/dist/node_modules/react-i18next/dist/es/utils.js +1 -1
  539. package/dist/node_modules/react-i18next/dist/es/utils.js.map +1 -1
  540. package/dist/node_modules/react-moment/dist/index.js +1 -1
  541. package/dist/node_modules/react-moment/dist/index.js.map +1 -1
  542. package/dist/node_modules/react-redux/es/components/Context.js +1 -1
  543. package/dist/node_modules/react-redux/es/components/Context.js.map +1 -1
  544. package/dist/node_modules/react-redux/es/components/Provider.js +1 -1
  545. package/dist/node_modules/react-redux/es/components/Provider.js.map +1 -1
  546. package/dist/node_modules/react-redux/es/hooks/useSelector.js.map +1 -1
  547. package/dist/node_modules/react-redux/es/utils/Subscription.js +1 -1
  548. package/dist/node_modules/react-redux/es/utils/Subscription.js.map +1 -1
  549. package/dist/node_modules/react-redux/es/utils/useIsomorphicLayoutEffect.js +1 -1
  550. package/dist/node_modules/react-redux/es/utils/useIsomorphicLayoutEffect.js.map +1 -1
  551. package/dist/node_modules/react-redux/es/utils/useSyncExternalStore.js.map +1 -1
  552. package/dist/node_modules/react-redux/node_modules/react-is/cjs/react-is.production.min.js.map +1 -1
  553. package/dist/node_modules/react-redux/node_modules/react-is/index.js +1 -1
  554. package/dist/node_modules/react-tooltip/dist/react-tooltip.min.mjs.js +1 -1
  555. package/dist/node_modules/react-tooltip/dist/react-tooltip.min.mjs.js.map +1 -1
  556. package/dist/node_modules/redux/es/redux.js +1 -1
  557. package/dist/node_modules/redux/es/redux.js.map +1 -1
  558. package/dist/node_modules/reselect/es/defaultMemoize.js +1 -1
  559. package/dist/node_modules/reselect/es/defaultMemoize.js.map +1 -1
  560. package/dist/node_modules/reselect/es/index.js +1 -1
  561. package/dist/node_modules/reselect/es/index.js.map +1 -1
  562. package/dist/node_modules/sdp/sdp.js +1 -1
  563. package/dist/node_modules/sdp/sdp.js.map +1 -1
  564. package/dist/node_modules/socket.io-client/build/esm/manager.js +1 -1
  565. package/dist/node_modules/socket.io-client/build/esm/manager.js.map +1 -1
  566. package/dist/node_modules/socket.io-client/build/esm/socket.js +1 -1
  567. package/dist/node_modules/socket.io-client/build/esm/socket.js.map +1 -1
  568. package/dist/node_modules/socket.io-parser/build/esm/is-binary.js +1 -1
  569. package/dist/node_modules/socket.io-parser/build/esm/is-binary.js.map +1 -1
  570. package/dist/node_modules/styled-components/dist/styled-components.browser.esm.js +1 -1
  571. package/dist/node_modules/tslib/tslib.es6.js +1 -1
  572. package/dist/node_modules/tslib/tslib.es6.js.map +1 -1
  573. package/dist/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.development.js +2 -2
  574. package/dist/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.development.js.map +1 -1
  575. package/dist/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.production.js +2 -2
  576. package/dist/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.production.js.map +1 -1
  577. package/dist/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.development.js +1 -1
  578. package/dist/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.development.js.map +1 -1
  579. package/dist/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.production.js +1 -1
  580. package/dist/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.production.js.map +1 -1
  581. package/dist/node_modules/use-sync-external-store/cjs/use-sync-external-store-with-selector.development.js +1 -1
  582. package/dist/node_modules/use-sync-external-store/cjs/use-sync-external-store-with-selector.development.js.map +1 -1
  583. package/dist/node_modules/use-sync-external-store/cjs/use-sync-external-store-with-selector.production.js +1 -1
  584. package/dist/node_modules/use-sync-external-store/cjs/use-sync-external-store-with-selector.production.js.map +1 -1
  585. package/dist/node_modules/use-sync-external-store/shim/index.js +1 -1
  586. package/dist/node_modules/webm-duration-fix/lib/ebml/EBMLDecoder.js +1 -1
  587. package/dist/node_modules/webm-duration-fix/lib/ebml/EBMLDecoder.js.map +1 -1
  588. package/dist/node_modules/webm-duration-fix/lib/ebml/EBMLEncoder.js +1 -1
  589. package/dist/node_modules/webm-duration-fix/lib/ebml/EBMLEncoder.js.map +1 -1
  590. package/dist/node_modules/webm-duration-fix/lib/ebml/EBMLReader.js +1 -1
  591. package/dist/node_modules/webm-duration-fix/lib/ebml/EBMLReader.js.map +1 -1
  592. package/dist/node_modules/webm-duration-fix/lib/ebml/ebmlID.js.map +1 -1
  593. package/dist/node_modules/webm-duration-fix/lib/ebml/index.js.map +1 -1
  594. package/dist/node_modules/webm-duration-fix/lib/ebml/tools-ebml.js +1 -1
  595. package/dist/node_modules/webm-duration-fix/lib/ebml/tools-ebml.js.map +1 -1
  596. package/dist/node_modules/webm-duration-fix/lib/ebml/tools.js +1 -1
  597. package/dist/node_modules/webm-duration-fix/lib/ebml/tools.js.map +1 -1
  598. package/dist/node_modules/webm-duration-fix/lib/index.js +1 -1
  599. package/dist/node_modules/webm-duration-fix/lib/index.js.map +1 -1
  600. package/dist/node_modules/webrtc-adapter/src/js/chrome/chrome_shim.js +1 -1
  601. package/dist/node_modules/webrtc-adapter/src/js/chrome/chrome_shim.js.map +1 -1
  602. package/dist/node_modules/webrtc-adapter/src/js/chrome/getusermedia.js +1 -1
  603. package/dist/node_modules/webrtc-adapter/src/js/chrome/getusermedia.js.map +1 -1
  604. package/dist/node_modules/webrtc-adapter/src/js/common_shim.js +1 -1
  605. package/dist/node_modules/webrtc-adapter/src/js/common_shim.js.map +1 -1
  606. package/dist/node_modules/webrtc-adapter/src/js/firefox/firefox_shim.js +1 -1
  607. package/dist/node_modules/webrtc-adapter/src/js/firefox/firefox_shim.js.map +1 -1
  608. package/dist/node_modules/webrtc-adapter/src/js/safari/safari_shim.js +1 -1
  609. package/dist/node_modules/webrtc-adapter/src/js/safari/safari_shim.js.map +1 -1
  610. package/dist/node_modules/webrtc-adapter/src/js/utils.js +1 -1
  611. package/dist/node_modules/webrtc-adapter/src/js/utils.js.map +1 -1
  612. package/dist/package.json.js +1 -1
  613. package/dist/services/astproxy.js +1 -1
  614. package/dist/services/astproxy.js.map +1 -1
  615. package/dist/services/history_call.js +1 -1
  616. package/dist/services/history_call.js.map +1 -1
  617. package/dist/services/offhour.js +1 -1
  618. package/dist/services/offhour.js.map +1 -1
  619. package/dist/services/phonebook.js +1 -1
  620. package/dist/services/phonebook.js.map +1 -1
  621. package/dist/services/user.js +1 -1
  622. package/dist/services/user.js.map +1 -1
  623. package/dist/services/voicemail.js +1 -1
  624. package/dist/services/voicemail.js.map +1 -1
  625. package/dist/store/index.js +1 -1
  626. package/dist/store/index.js.map +1 -1
  627. package/dist/styles/Island.styles.js +1 -1
  628. package/dist/styles/Island.styles.js.map +1 -1
  629. package/dist/utils/customHooks/useCommittedRef.js +1 -1
  630. package/dist/utils/customHooks/useCommittedRef.js.map +1 -1
  631. package/dist/utils/customHooks/useEventCallback.js +1 -1
  632. package/dist/utils/customHooks/useEventCallback.js.map +1 -1
  633. package/dist/utils/customHooks/useEventListener.js +1 -1
  634. package/dist/utils/customHooks/useEventListener.js.map +1 -1
  635. package/dist/utils/customHooks/useIntersectionObserver.js +1 -1
  636. package/dist/utils/customHooks/useIntersectionObserver.js.map +1 -1
  637. package/dist/utils/customHooks/useLocalStorage.js +1 -1
  638. package/dist/utils/customHooks/useLocalStorage.js.map +1 -1
  639. package/dist/utils/customHooks/useLongPress.js +1 -1
  640. package/dist/utils/customHooks/useLongPress.js.map +1 -1
  641. package/dist/utils/deviceUtils.js +1 -1
  642. package/dist/utils/deviceUtils.js.map +1 -1
  643. package/dist/utils/genericFunctions/checkConnection.js +1 -1
  644. package/dist/utils/genericFunctions/checkConnection.js.map +1 -1
  645. package/dist/utils/genericFunctions/isBackCallVisible.js +1 -1
  646. package/dist/utils/genericFunctions/isBackCallVisible.js.map +1 -1
  647. package/dist/utils/genericFunctions/withTimeout.js +1 -1
  648. package/dist/utils/genericFunctions/withTimeout.js.map +1 -1
  649. package/dist/utils/streaming/getStreamingSourceId.js +1 -1
  650. package/dist/utils/streaming/getStreamingSourceId.js.map +1 -1
  651. package/dist/utils/streaming/isFromStreaming.js +1 -1
  652. package/dist/utils/streaming/isFromStreaming.js.map +1 -1
  653. package/dist/utils/streaming/streamingUtils.js +1 -1
  654. package/dist/utils/streaming/streamingUtils.js.map +1 -1
  655. package/dist/workers/wake_up.js +1 -1
  656. package/dist/workers/wake_up.js.map +1 -1
  657. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"Avatar.js","sources":["../../../src/components/CallView/Avatar.tsx"],"sourcesContent":["// Copyright (C) 2025 Nethesis S.r.l.\n// SPDX-License-Identifier: AGPL-3.0-or-later\n\nimport React, { type FC, useMemo } from 'react'\nimport { motion } from 'framer-motion'\nimport { useSelector } from 'react-redux'\nimport { RootState } from '../../store'\n\nconst iconVariants = {\n open: {\n width: '56px',\n height: '56px',\n borderRadius: '26px',\n },\n closed: {\n width: '24px',\n height: '24px',\n borderRadius: '26px',\n },\n}\n\nconst Avatar: FC = () => {\n const { isOpen } = useSelector((state: RootState) => state.island)\n const { avatars } = useSelector((state: RootState) => state.avatars)\n const user = useSelector((state: RootState) => state.users)\n const {\n username,\n number,\n incoming,\n outgoing,\n accepted,\n transferring,\n } = useSelector((state: RootState) => state.currentCall)\n\n const avatarUrl = useMemo(() => {\n if (transferring) {\n return user?.extensions && user.extensions[number]?.username\n ? avatars?.[user.extensions[number].username]\n : undefined\n }\n return avatars?.[username]\n }, [avatars, username, transferring, user, number])\n\n const showPulseEffect = incoming || (outgoing && !accepted)\n\n return (\n <motion.div\n className={`pi-relative ${isOpen ? 'pi--mt-1' : ''}`}\n animate={isOpen ? 'open' : 'closed'}\n variants={iconVariants}\n >\n {showPulseEffect && (\n <motion.div\n style={{ animationDuration: '2s' }}\n animate={isOpen ? 'open' : 'closed'}\n variants={iconVariants}\n className='pi-rounded-xl pi-bg-gray-600 pi-absolute pi-opacity-60 pi-top-0 pi-left-0 pi-animate-ping pi-h-12 pi-w-12'\n />\n )}\n <motion.div\n className='pi-relative pi-z-30 pi-h-12 pi-w-12 pi-bg-secondaryNeutral dark:pi-bg-secondaryNeutralDark pi-rounded-sm pi-bg-cover'\n style={{\n backgroundImage: avatarUrl ? `url(${avatarUrl})` : 'none',\n backgroundRepeat: 'no-repeat',\n backgroundSize: 'contain',\n }}\n animate={isOpen ? 'open' : 'closed'}\n variants={iconVariants}\n />\n </motion.div>\n )\n}\n\nexport default Avatar\n"],"names":["iconVariants","open","width","height","borderRadius","closed","isOpen","useSelector","state","island","avatars","user","users","_a","currentCall","username","number","incoming","outgoing","accepted","transferring","avatarUrl","useMemo","extensions","undefined","showPulseEffect","React","createElement","motion","div","className","concat","animate","variants","style","animationDuration","backgroundImage","backgroundRepeat","backgroundSize"],"mappings":"wYAQMA,EAAe,CACnBC,KAAM,CACJC,MAAO,OACPC,OAAQ,OACRC,aAAc,QAEhBC,OAAQ,CACNH,MAAO,OACPC,OAAQ,OACRC,aAAc,yBAIC,WACT,IAAAE,EAAWC,eAAY,SAACC,GAAqB,OAAAA,EAAMC,iBACnDC,EAAYH,eAAY,SAACC,GAAqB,OAAAA,EAAME,mBACtDC,EAAOJ,EAAWA,aAAC,SAACC,GAAqB,OAAAA,EAAMI,KAAN,IACzCC,EAOFN,EAAWA,aAAC,SAACC,GAAqB,OAAAA,EAAMM,WAAN,IANpCC,EAAQF,EAAAE,SACRC,EAAMH,EAAAG,OACNC,aACAC,EAAQL,EAAAK,SACRC,EAAQN,EAAAM,SACRC,iBAGIC,EAAYC,EAAAA,SAAQ,iBACxB,OAAIF,GACKT,aAAA,EAAAA,EAAMY,cAAqC,QAAvBV,EAAAF,EAAKY,WAAWP,UAAO,IAAAH,OAAA,EAAAA,EAAEE,UAChDL,eAAAA,EAAUC,EAAKY,WAAWP,GAAQD,eAClCS,EAECd,aAAO,EAAPA,EAAUK,EACnB,GAAG,CAACL,EAASK,EAAUK,EAAcT,EAAMK,IAErCS,EAAkBR,GAAaC,IAAaC,EAElD,OACEO,EAAAA,QAAAC,cAACC,EAAMA,OAACC,IACN,CAAAC,UAAW,eAAAC,OAAezB,EAAS,WAAa,IAChD0B,QAAS1B,EAAS,OAAS,SAC3B2B,SAAUjC,GAETyB,GACCC,EAAAA,QAACC,cAAAC,EAAMA,OAACC,IAAG,CACTK,MAAO,CAAEC,kBAAmB,MAC5BH,QAAS1B,EAAS,OAAS,SAC3B2B,SAAUjC,EACV8B,UAAU,8GAGdJ,EAAC,QAAAC,cAAAC,SAAOC,IAAG,CACTC,UAAU,uHACVI,MAAO,CACLE,gBAAiBf,EAAY,OAAOU,OAAAV,EAAY,KAAG,OACnDgB,iBAAkB,YAClBC,eAAgB,WAElBN,QAAS1B,EAAS,OAAS,SAC3B2B,SAAUjC,IAIlB"}
1
+ {"version":3,"file":"Avatar.js","sources":["../../../src/components/CallView/Avatar.tsx"],"sourcesContent":["// Copyright (C) 2025 Nethesis S.r.l.\n// SPDX-License-Identifier: AGPL-3.0-or-later\n\nimport React, { type FC, useMemo } from 'react'\nimport { motion } from 'framer-motion'\nimport { useSelector } from 'react-redux'\nimport { RootState } from '../../store'\n\nconst iconVariants = {\n open: {\n width: '56px',\n height: '56px',\n borderRadius: '26px',\n },\n closed: {\n width: '24px',\n height: '24px',\n borderRadius: '26px',\n },\n}\n\nconst Avatar: FC = () => {\n const { isOpen } = useSelector((state: RootState) => state.island)\n const { avatars } = useSelector((state: RootState) => state.avatars)\n const user = useSelector((state: RootState) => state.users)\n const {\n username,\n number,\n incoming,\n outgoing,\n accepted,\n transferring,\n } = useSelector((state: RootState) => state.currentCall)\n\n const avatarUrl = useMemo(() => {\n if (transferring) {\n return user?.extensions && user.extensions[number]?.username\n ? avatars?.[user.extensions[number].username]\n : undefined\n }\n return avatars?.[username]\n }, [avatars, username, transferring, user, number])\n\n const showPulseEffect = incoming || (outgoing && !accepted)\n\n return (\n <motion.div\n className={`pi-relative ${isOpen ? 'pi--mt-1' : ''}`}\n animate={isOpen ? 'open' : 'closed'}\n variants={iconVariants}\n >\n {showPulseEffect && (\n <motion.div\n style={{ animationDuration: '2s' }}\n animate={isOpen ? 'open' : 'closed'}\n variants={iconVariants}\n className='pi-rounded-xl pi-bg-gray-600 pi-absolute pi-opacity-60 pi-top-0 pi-left-0 pi-animate-ping pi-h-12 pi-w-12'\n />\n )}\n <motion.div\n className='pi-relative pi-z-30 pi-h-12 pi-w-12 pi-bg-secondaryNeutral dark:pi-bg-secondaryNeutralDark pi-rounded-sm pi-bg-cover'\n style={{\n backgroundImage: avatarUrl ? `url(${avatarUrl})` : 'none',\n backgroundRepeat: 'no-repeat',\n backgroundSize: 'contain',\n }}\n animate={isOpen ? 'open' : 'closed'}\n variants={iconVariants}\n />\n </motion.div>\n )\n}\n\nexport default Avatar\n"],"names":["iconVariants","open","width","height","borderRadius","closed","isOpen","useSelector","state","island","avatars","user","users","_a","currentCall","username","number","incoming","outgoing","accepted","transferring","avatarUrl","useMemo","extensions","undefined","showPulseEffect","React","createElement","motion","div","className","concat","animate","variants","style","animationDuration","backgroundImage","backgroundRepeat","backgroundSize"],"mappings":"wYAQMA,EAAe,CACnBC,KAAM,CACJC,MAAO,OACPC,OAAQ,OACRC,aAAc,QAEhBC,OAAQ,CACNH,MAAO,OACPC,OAAQ,OACRC,aAAc,yBAIC,WACT,IAAAE,EAAWC,cAAY,SAACC,GAAqB,OAAAA,EAAMC,gBACnDC,EAAYH,cAAY,SAACC,GAAqB,OAAAA,EAAME,kBACtDC,EAAOJ,EAAWA,YAAC,SAACC,GAAqB,OAAAA,EAAMI,KAAN,GACzCC,EAOFN,EAAWA,YAAC,SAACC,GAAqB,OAAAA,EAAMM,WAAN,GANpCC,EAAQF,EAAAE,SACRC,EAAMH,EAAAG,OACNC,aACAC,EAAQL,EAAAK,SACRC,EAAQN,EAAAM,SACRC,iBAGIC,EAAYC,EAAAA,QAAQ,iBACxB,OAAIF,GACKT,aAAA,EAAAA,EAAMY,cAAqC,QAAvBV,EAAAF,EAAKY,WAAWP,UAAO,IAAAH,OAAA,EAAAA,EAAEE,UAChDL,eAAAA,EAAUC,EAAKY,WAAWP,GAAQD,eAClCS,EAECd,aAAO,EAAPA,EAAUK,EACnB,EAAG,CAACL,EAASK,EAAUK,EAAcT,EAAMK,IAErCS,EAAkBR,GAAaC,IAAaC,EAElD,OACEO,EAAAA,QAAAC,cAACC,EAAMA,OAACC,IACN,CAAAC,UAAW,eAAAC,OAAezB,EAAS,WAAa,IAChD0B,QAAS1B,EAAS,OAAS,SAC3B2B,SAAUjC,GAETyB,GACCC,EAAAA,QAACC,cAAAC,EAAMA,OAACC,IAAG,CACTK,MAAO,CAAEC,kBAAmB,MAC5BH,QAAS1B,EAAS,OAAS,SAC3B2B,SAAUjC,EACV8B,UAAU,8GAGdJ,EAAC,QAAAC,cAAAC,SAAOC,IAAG,CACTC,UAAU,uHACVI,MAAO,CACLE,gBAAiBf,EAAY,OAAOU,OAAAV,EAAY,KAAG,OACnDgB,iBAAkB,YAClBC,eAAgB,WAElBN,QAAS1B,EAAS,OAAS,SAC3B2B,SAAUjC,IAIlB"}
@@ -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 r=require("./Timer.js"),t=require("../../node_modules/@fortawesome/free-solid-svg-icons/index.mjs.js"),i=require("../../node_modules/@fortawesome/react-fontawesome/index.es.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 s=require("../../node_modules/react-i18next/dist/es/useTranslation.js");require("../../node_modules/@babel/runtime/helpers/slicedToArray.js");var n=require("../AvatarGroup.js"),a=require("../../utils/genericFunctions/isEmpty.js"),o=require("../../node_modules/framer-motion/dist/es/components/AnimatePresence/index.mjs.js"),l=require("../../node_modules/framer-motion/dist/es/render/components/motion/proxy.mjs.js"),u=require("../../node_modules/react-redux/es/hooks/useSelector.js"),p=require("../../node_modules/react-redux/es/hooks/useDispatch.js");function d(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var m=d(e);exports.default=function(d){var c=d.isVisible,f=u.useSelector((function(e){return e.currentCall})),x=f.number,y=f.displayName,g=f.transferring,v=f.transferringName,j=f.startTime,h=f.transferringStartTime,b=f.transferCalls,q=p.useDispatch(),w=s.useTranslation().t,E=u.useSelector((function(e){return e.island})),_=E.isOpen,N=E.previousView,T=u.useSelector((function(e){return e.screenShare})),S=T.active,C=T.role,A=u.useSelector((function(e){return e.conference})),P=A.isActive,R=A.usersList,k=A.ownerInformations;return e.useEffect((function(){var e=b.find((function(e){return e.number!==x}));e&&q.currentCall.updateCurrentCall({transferringName:e.displayName,transferringStartTime:e.startTime})}),[x]),m.default.createElement(o.AnimatePresence,null,c&&m.default.createElement(l.motion.div,{className:"pi-absolute pi-w-full pi-bg-gray-700 pi-flex pi-justify-between pi-text-gray-50 dark:pi-text-gray-50 -pi-mt-10 -pi-z-10 pi-pointer-events-auto pi-items-start ".concat(_?"pi-px-6":"pi-px-4"," pi-pt-3"),style:{borderTopLeftRadius:"20px",borderTopRightRadius:"20px",height:"60px"},initial:{y:60},animate:{y:0},exit:{y:60,transitionEnd:{display:"none"}},transition:{duration:.12,ease:"easeOut"}},m.default.createElement("div",{className:"pi-font-medium pi-text-sm pi-relative"},m.default.createElement("div",{className:"pi-whitespace-nowrap pi-overflow-hidden ".concat(_&&"video"!==N?"pi-w-44":"pi-w-16")},g?v:P&&!a.isEmpty(k)?w("Conference.In conference"):P&&a.isEmpty(k)?w("Conference.Waiting for the conference"):"recorder"===N?w("Common.Record message"):"player"===N?w("Common.Play message"):y),m.default.createElement("div",{className:"pi-w-6 pi-absolute pi-right-0 pi-top-0 pi-h-full pi-bg-gradient-to-r pi-from-transparent pi-to-gray-700"})),m.default.createElement("div",{className:"pi-flex pi-gap-5"},S&&"publisher"===C&&m.default.createElement("div",{className:"pi-flex pi-gap-2 pi-font-medium pi-items-center pi-rounded-full pi-px-2 pi-py-1 pi-text-xs pi-relative -pi-top-0.5 pi-bg-emerald-700 pi-text-emerald-50"},m.default.createElement(i.FontAwesomeIcon,{icon:t.faDisplay,className:"pi-w-4 pi-h-4"}),w("Screen sharing.Sharing")),m.default.createElement("div",{className:"pi-w-16 pi-flex pi-justify-end"},P||"recorder"===N||"player"===N?m.default.createElement(n.default,{usersList:R||{},maxAvatars:5}):m.default.createElement(r.default,{size:"small",startTime:g?h:j})))))};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react");require("../../node_modules/react-redux/es/index.js");var r=require("./Timer.js"),t=require("../../node_modules/@fortawesome/free-solid-svg-icons/index.mjs.js"),i=require("../../node_modules/@fortawesome/react-fontawesome/index.es.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 s=require("../../node_modules/react-i18next/dist/es/useTranslation.js");require("../../node_modules/@babel/runtime/helpers/slicedToArray.js");var n=require("../AvatarGroup.js"),a=require("../../utils/genericFunctions/isEmpty.js"),o=require("../../node_modules/framer-motion/dist/es/components/AnimatePresence/index.mjs.js"),l=require("../../node_modules/framer-motion/dist/es/render/components/motion/proxy.mjs.js"),u=require("../../node_modules/react-redux/es/hooks/useSelector.js"),p=require("../../node_modules/react-redux/es/hooks/useDispatch.js");function d(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var m=d(e);exports.default=function(d){var c=d.isVisible,f=u.useSelector(function(e){return e.currentCall}),x=f.number,y=f.displayName,g=f.transferring,v=f.transferringName,j=f.startTime,h=f.transferringStartTime,b=f.transferCalls,q=p.useDispatch(),w=s.useTranslation().t,E=u.useSelector(function(e){return e.island}),_=E.isOpen,N=E.previousView,T=u.useSelector(function(e){return e.screenShare}),S=T.active,C=T.role,A=u.useSelector(function(e){return e.conference}),P=A.isActive,R=A.usersList,k=A.ownerInformations;return e.useEffect(function(){var e=b.find(function(e){return e.number!==x});e&&q.currentCall.updateCurrentCall({transferringName:e.displayName,transferringStartTime:e.startTime})},[x]),m.default.createElement(o.AnimatePresence,null,c&&m.default.createElement(l.motion.div,{className:"pi-absolute pi-w-full pi-bg-gray-700 pi-flex pi-justify-between pi-text-gray-50 dark:pi-text-gray-50 -pi-mt-10 -pi-z-10 pi-pointer-events-auto pi-items-start ".concat(_?"pi-px-6":"pi-px-4"," pi-pt-3"),style:{borderTopLeftRadius:"20px",borderTopRightRadius:"20px",height:"60px"},initial:{y:60},animate:{y:0},exit:{y:60,transitionEnd:{display:"none"}},transition:{duration:.12,ease:"easeOut"}},m.default.createElement("div",{className:"pi-font-medium pi-text-sm pi-relative"},m.default.createElement("div",{className:"pi-whitespace-nowrap pi-overflow-hidden ".concat(_&&"video"!==N?"pi-w-44":"pi-w-16")},g?v:P&&!a.isEmpty(k)?w("Conference.In conference"):P&&a.isEmpty(k)?w("Conference.Waiting for the conference"):"recorder"===N?w("Common.Record message"):"player"===N?w("Common.Play message"):y),m.default.createElement("div",{className:"pi-w-6 pi-absolute pi-right-0 pi-top-0 pi-h-full pi-bg-gradient-to-r pi-from-transparent pi-to-gray-700"})),m.default.createElement("div",{className:"pi-flex pi-gap-5"},S&&"publisher"===C&&m.default.createElement("div",{className:"pi-flex pi-gap-2 pi-font-medium pi-items-center pi-rounded-full pi-px-2 pi-py-1 pi-text-xs pi-relative -pi-top-0.5 pi-bg-emerald-700 pi-text-emerald-50"},m.default.createElement(i.FontAwesomeIcon,{icon:t.faDisplay,className:"pi-w-4 pi-h-4"}),w("Screen sharing.Sharing")),m.default.createElement("div",{className:"pi-w-16 pi-flex pi-justify-end"},P||"recorder"===N||"player"===N?m.default.createElement(n.default,{usersList:R||{},maxAvatars:5}):m.default.createElement(r.default,{size:"small",startTime:g?h:j})))))};
2
2
  //# sourceMappingURL=BackCall.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"BackCall.js","sources":["../../../src/components/CallView/BackCall.tsx"],"sourcesContent":["// Copyright (C) 2024 Nethesis S.r.l.\n// SPDX-License-Identifier: AGPL-3.0-or-later\n\nimport React, { FC, useEffect } from 'react'\nimport { useDispatch, useSelector } from 'react-redux'\nimport { Dispatch, RootState } from '../../store'\nimport Timer from './Timer'\nimport { motion, AnimatePresence } from 'framer-motion'\nimport { TransferCallsTypes } from '../../models/currentCall'\nimport { faDisplay } from '@fortawesome/free-solid-svg-icons'\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome'\nimport { useTranslation } from 'react-i18next'\nimport AvatarGroup from '../AvatarGroup'\nimport { isEmpty } from '../../utils/genericFunctions/isEmpty'\n\nconst BackCall: FC<BackCallTypes> = ({ isVisible }) => {\n const {\n number,\n displayName,\n transferring,\n transferringName,\n startTime,\n transferringStartTime,\n transferCalls,\n } = useSelector((state: RootState) => state.currentCall)\n const dispatch = useDispatch<Dispatch>()\n\n const { t } = useTranslation()\n const { isOpen, previousView } = useSelector((state: RootState) => state.island)\n const { active: screenShareActive, role: screenShareRole } = useSelector(\n (state: RootState) => state.screenShare,\n )\n const { isActive, usersList, ownerInformations }: any = useSelector(\n (state: RootState) => state.conference,\n )\n\n useEffect(() => {\n const callData: TransferCallsTypes = transferCalls.find((item) => item.number !== number)\n // Handle call switch during transfer\n if (callData) {\n dispatch.currentCall.updateCurrentCall({\n transferringName: callData.displayName,\n transferringStartTime: callData.startTime,\n })\n }\n }, [number])\n\n return (\n <AnimatePresence>\n {isVisible && (\n <motion.div\n className={`pi-absolute pi-w-full pi-bg-gray-700 pi-flex pi-justify-between pi-text-gray-50 dark:pi-text-gray-50 -pi-mt-10 -pi-z-10 pi-pointer-events-auto pi-items-start ${\n isOpen ? 'pi-px-6' : 'pi-px-4'\n } pi-pt-3`}\n style={{ borderTopLeftRadius: '20px', borderTopRightRadius: '20px', height: '60px' }}\n initial={{ y: 60 }}\n animate={{ y: 0 }}\n exit={{\n y: 60,\n transitionEnd: {\n display: 'none',\n },\n }}\n transition={{ duration: 0.12, ease: 'easeOut' }}\n >\n <div className='pi-font-medium pi-text-sm pi-relative'>\n <div\n className={`pi-whitespace-nowrap pi-overflow-hidden ${\n isOpen && previousView !== 'video' ? 'pi-w-44' : 'pi-w-16'\n }`}\n >\n {transferring\n ? transferringName\n : isActive && !isEmpty(ownerInformations)\n ? t('Conference.In conference')\n : isActive && isEmpty(ownerInformations)\n ? t('Conference.Waiting for the conference')\n : previousView === 'recorder'\n ? t('Common.Record message')\n : previousView === 'player'\n ? t('Common.Play message')\n : displayName}\n </div>\n <div className='pi-w-6 pi-absolute pi-right-0 pi-top-0 pi-h-full pi-bg-gradient-to-r pi-from-transparent pi-to-gray-700'></div>\n </div>\n <div className='pi-flex pi-gap-5'>\n {/* Screen sharing badge */}\n {screenShareActive && screenShareRole === 'publisher' && (\n <div className='pi-flex pi-gap-2 pi-font-medium pi-items-center pi-rounded-full pi-px-2 pi-py-1 pi-text-xs pi-relative -pi-top-0.5 pi-bg-emerald-700 pi-text-emerald-50'>\n <FontAwesomeIcon icon={faDisplay} className='pi-w-4 pi-h-4' />\n {t('Screen sharing.Sharing')}\n </div>\n )}\n <div className='pi-w-16 pi-flex pi-justify-end'>\n {!isActive && previousView !== 'recorder' && previousView !== 'player' ? (\n <Timer size='small' startTime={transferring ? transferringStartTime : startTime} />\n ) : (\n <AvatarGroup usersList={usersList || {}} maxAvatars={5} />\n )}\n </div>\n </div>\n </motion.div>\n )}\n </AnimatePresence>\n )\n}\n\nexport default BackCall\n\ninterface BackCallTypes {\n isVisible: boolean\n}\n"],"names":["_a","isVisible","_b","useSelector","state","currentCall","number","displayName","transferring","transferringName","startTime","transferringStartTime","transferCalls","dispatch","useDispatch","t","useTranslation","_c","island","isOpen","previousView","_d","screenShare","screenShareActive","screenShareRole","_e","conference","isActive","usersList","ownerInformations","useEffect","callData","find","item","updateCurrentCall","React","createElement","AnimatePresence","motion","div","className","concat","style","borderTopLeftRadius","borderTopRightRadius","height","initial","y","animate","exit","transitionEnd","display","transition","duration","ease","isEmpty","FontAwesomeIcon","icon","faDisplay","AvatarGroup","maxAvatars","Timer","size"],"mappings":"2zCAeoC,SAACA,GAAE,IAAAC,EAASD,EAAAC,UACxCC,EAQFC,EAAWA,aAAC,SAACC,GAAqB,OAAAA,EAAMC,WAAN,IAPpCC,EAAMJ,EAAAI,OACNC,EAAWL,EAAAK,YACXC,EAAYN,EAAAM,aACZC,EAAgBP,EAAAO,iBAChBC,EAASR,EAAAQ,UACTC,EAAqBT,EAAAS,sBACrBC,kBAEIC,EAAWC,EAAAA,cAETC,EAAMC,qBACRC,EAA2Bd,EAAAA,aAAY,SAACC,GAAqB,OAAAA,EAAMc,MAAM,IAAvEC,WAAQC,iBACVC,EAAuDlB,EAAAA,aAC3D,SAACC,GAAqB,OAAAA,EAAMkB,WAAW,IADzBC,WAAyBC,SAGnCC,EAAkDtB,EAAAA,aACtD,SAACC,GAAqB,OAAAA,EAAMsB,cADtBC,EAAQF,EAAAE,SAAEC,EAASH,EAAAG,UAAEC,EAAiBJ,EAAAI,kBAe9C,OAXAC,EAAAA,WAAU,WACR,IAAMC,EAA+BnB,EAAcoB,MAAK,SAACC,GAAS,OAAAA,EAAK3B,SAAWA,CAAhB,IAE9DyB,GACFlB,EAASR,YAAY6B,kBAAkB,CACrCzB,iBAAkBsB,EAASxB,YAC3BI,sBAAuBoB,EAASrB,WAGtC,GAAG,CAACJ,IAGF6B,EAAAA,QAACC,cAAAC,EAAeA,gBACb,KAAApC,GACCkC,EAAC,QAAAC,cAAAE,EAAAA,OAAOC,IACN,CAAAC,UAAW,iKAAAC,OACTtB,EAAS,UAAY,UAAS,YAEhCuB,MAAO,CAAEC,oBAAqB,OAAQC,qBAAsB,OAAQC,OAAQ,QAC5EC,QAAS,CAAEC,EAAG,IACdC,QAAS,CAAED,EAAG,GACdE,KAAM,CACJF,EAAG,GACHG,cAAe,CACbC,QAAS,SAGbC,WAAY,CAAEC,SAAU,IAAMC,KAAM,YAEpCnB,EAAAA,QAAKC,cAAA,MAAA,CAAAI,UAAU,yCACbL,EAAAA,QAAAC,cAAA,MAAA,CACEI,UAAW,2CAAAC,OACTtB,GAA2B,UAAjBC,EAA2B,UAAY,YAGlDZ,EACGC,EACAkB,IAAa4B,EAAOA,QAAC1B,GACrBd,EAAE,4BACFY,GAAY4B,EAAOA,QAAC1B,GACpBd,EAAE,yCACe,aAAjBK,EACAL,EAAE,yBACe,WAAjBK,EACAL,EAAE,uBACFR,GAEN4B,EAAA,QAAAC,cAAA,MAAA,CAAKI,UAAU,6GAEjBL,EAAAA,QAAKC,cAAA,MAAA,CAAAI,UAAU,oBAEZjB,GAAyC,cAApBC,GACpBW,EAAA,QAAAC,cAAA,MAAA,CAAKI,UAAU,2JACbL,EAAC,QAAAC,cAAAoB,mBAAgBC,KAAMC,YAAWlB,UAAU,kBAC3CzB,EAAE,2BAGPoB,EAAA,QAAAC,cAAA,MAAA,CAAKI,UAAU,kCACXb,GAA6B,aAAjBP,GAAgD,WAAjBA,EAG3Ce,EAAAA,QAAAC,cAACuB,EAAAA,QAAW,CAAC/B,UAAWA,GAAa,CAAA,EAAIgC,WAAY,IAFrDzB,EAAC,QAAAC,cAAAyB,EAAK,QAAC,CAAAC,KAAK,QAAQpD,UAAWF,EAAeG,EAAwBD,OAUtF"}
1
+ {"version":3,"file":"BackCall.js","sources":["../../../src/components/CallView/BackCall.tsx"],"sourcesContent":["// Copyright (C) 2024 Nethesis S.r.l.\n// SPDX-License-Identifier: AGPL-3.0-or-later\n\nimport React, { FC, useEffect } from 'react'\nimport { useDispatch, useSelector } from 'react-redux'\nimport { Dispatch, RootState } from '../../store'\nimport Timer from './Timer'\nimport { motion, AnimatePresence } from 'framer-motion'\nimport { TransferCallsTypes } from '../../models/currentCall'\nimport { faDisplay } from '@fortawesome/free-solid-svg-icons'\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome'\nimport { useTranslation } from 'react-i18next'\nimport AvatarGroup from '../AvatarGroup'\nimport { isEmpty } from '../../utils/genericFunctions/isEmpty'\n\nconst BackCall: FC<BackCallTypes> = ({ isVisible }) => {\n const {\n number,\n displayName,\n transferring,\n transferringName,\n startTime,\n transferringStartTime,\n transferCalls,\n } = useSelector((state: RootState) => state.currentCall)\n const dispatch = useDispatch<Dispatch>()\n\n const { t } = useTranslation()\n const { isOpen, previousView } = useSelector((state: RootState) => state.island)\n const { active: screenShareActive, role: screenShareRole } = useSelector(\n (state: RootState) => state.screenShare,\n )\n const { isActive, usersList, ownerInformations }: any = useSelector(\n (state: RootState) => state.conference,\n )\n\n useEffect(() => {\n const callData: TransferCallsTypes = transferCalls.find((item) => item.number !== number)\n // Handle call switch during transfer\n if (callData) {\n dispatch.currentCall.updateCurrentCall({\n transferringName: callData.displayName,\n transferringStartTime: callData.startTime,\n })\n }\n }, [number])\n\n return (\n <AnimatePresence>\n {isVisible && (\n <motion.div\n className={`pi-absolute pi-w-full pi-bg-gray-700 pi-flex pi-justify-between pi-text-gray-50 dark:pi-text-gray-50 -pi-mt-10 -pi-z-10 pi-pointer-events-auto pi-items-start ${\n isOpen ? 'pi-px-6' : 'pi-px-4'\n } pi-pt-3`}\n style={{ borderTopLeftRadius: '20px', borderTopRightRadius: '20px', height: '60px' }}\n initial={{ y: 60 }}\n animate={{ y: 0 }}\n exit={{\n y: 60,\n transitionEnd: {\n display: 'none',\n },\n }}\n transition={{ duration: 0.12, ease: 'easeOut' }}\n >\n <div className='pi-font-medium pi-text-sm pi-relative'>\n <div\n className={`pi-whitespace-nowrap pi-overflow-hidden ${\n isOpen && previousView !== 'video' ? 'pi-w-44' : 'pi-w-16'\n }`}\n >\n {transferring\n ? transferringName\n : isActive && !isEmpty(ownerInformations)\n ? t('Conference.In conference')\n : isActive && isEmpty(ownerInformations)\n ? t('Conference.Waiting for the conference')\n : previousView === 'recorder'\n ? t('Common.Record message')\n : previousView === 'player'\n ? t('Common.Play message')\n : displayName}\n </div>\n <div className='pi-w-6 pi-absolute pi-right-0 pi-top-0 pi-h-full pi-bg-gradient-to-r pi-from-transparent pi-to-gray-700'></div>\n </div>\n <div className='pi-flex pi-gap-5'>\n {/* Screen sharing badge */}\n {screenShareActive && screenShareRole === 'publisher' && (\n <div className='pi-flex pi-gap-2 pi-font-medium pi-items-center pi-rounded-full pi-px-2 pi-py-1 pi-text-xs pi-relative -pi-top-0.5 pi-bg-emerald-700 pi-text-emerald-50'>\n <FontAwesomeIcon icon={faDisplay} className='pi-w-4 pi-h-4' />\n {t('Screen sharing.Sharing')}\n </div>\n )}\n <div className='pi-w-16 pi-flex pi-justify-end'>\n {!isActive && previousView !== 'recorder' && previousView !== 'player' ? (\n <Timer size='small' startTime={transferring ? transferringStartTime : startTime} />\n ) : (\n <AvatarGroup usersList={usersList || {}} maxAvatars={5} />\n )}\n </div>\n </div>\n </motion.div>\n )}\n </AnimatePresence>\n )\n}\n\nexport default BackCall\n\ninterface BackCallTypes {\n isVisible: boolean\n}\n"],"names":["_a","isVisible","_b","useSelector","state","currentCall","number","displayName","transferring","transferringName","startTime","transferringStartTime","transferCalls","dispatch","useDispatch","t","useTranslation","_c","island","isOpen","previousView","_d","screenShare","screenShareActive","screenShareRole","_e","conference","isActive","usersList","ownerInformations","useEffect","callData","find","item","updateCurrentCall","React","createElement","AnimatePresence","motion","div","className","concat","style","borderTopLeftRadius","borderTopRightRadius","height","initial","y","animate","exit","transitionEnd","display","transition","duration","ease","isEmpty","FontAwesomeIcon","icon","faDisplay","AvatarGroup","maxAvatars","Timer","size"],"mappings":"2zCAeoC,SAACA,GAAE,IAAAC,EAASD,EAAAC,UACxCC,EAQFC,EAAWA,YAAC,SAACC,GAAqB,OAAAA,EAAMC,WAAN,GAPpCC,EAAMJ,EAAAI,OACNC,EAAWL,EAAAK,YACXC,EAAYN,EAAAM,aACZC,EAAgBP,EAAAO,iBAChBC,EAASR,EAAAQ,UACTC,EAAqBT,EAAAS,sBACrBC,kBAEIC,EAAWC,EAAAA,cAETC,EAAMC,qBACRC,EAA2Bd,EAAAA,YAAY,SAACC,GAAqB,OAAAA,EAAMc,MAAM,GAAvEC,WAAQC,iBACVC,EAAuDlB,EAAAA,YAC3D,SAACC,GAAqB,OAAAA,EAAMkB,WAAW,GADzBC,WAAyBC,SAGnCC,EAAkDtB,EAAAA,YACtD,SAACC,GAAqB,OAAAA,EAAMsB,aADtBC,EAAQF,EAAAE,SAAEC,EAASH,EAAAG,UAAEC,EAAiBJ,EAAAI,kBAe9C,OAXAC,EAAAA,UAAU,WACR,IAAMC,EAA+BnB,EAAcoB,KAAK,SAACC,GAAS,OAAAA,EAAK3B,SAAWA,CAAhB,GAE9DyB,GACFlB,EAASR,YAAY6B,kBAAkB,CACrCzB,iBAAkBsB,EAASxB,YAC3BI,sBAAuBoB,EAASrB,WAGtC,EAAG,CAACJ,IAGF6B,EAAAA,QAACC,cAAAC,EAAeA,gBACb,KAAApC,GACCkC,EAAC,QAAAC,cAAAE,EAAAA,OAAOC,IACN,CAAAC,UAAW,iKAAAC,OACTtB,EAAS,UAAY,UAAS,YAEhCuB,MAAO,CAAEC,oBAAqB,OAAQC,qBAAsB,OAAQC,OAAQ,QAC5EC,QAAS,CAAEC,EAAG,IACdC,QAAS,CAAED,EAAG,GACdE,KAAM,CACJF,EAAG,GACHG,cAAe,CACbC,QAAS,SAGbC,WAAY,CAAEC,SAAU,IAAMC,KAAM,YAEpCnB,EAAAA,QAAKC,cAAA,MAAA,CAAAI,UAAU,yCACbL,EAAAA,QAAAC,cAAA,MAAA,CACEI,UAAW,2CAAAC,OACTtB,GAA2B,UAAjBC,EAA2B,UAAY,YAGlDZ,EACGC,EACAkB,IAAa4B,EAAOA,QAAC1B,GACrBd,EAAE,4BACFY,GAAY4B,EAAOA,QAAC1B,GACpBd,EAAE,yCACe,aAAjBK,EACAL,EAAE,yBACe,WAAjBK,EACAL,EAAE,uBACFR,GAEN4B,EAAA,QAAAC,cAAA,MAAA,CAAKI,UAAU,6GAEjBL,EAAAA,QAAKC,cAAA,MAAA,CAAAI,UAAU,oBAEZjB,GAAyC,cAApBC,GACpBW,EAAA,QAAAC,cAAA,MAAA,CAAKI,UAAU,2JACbL,EAAC,QAAAC,cAAAoB,mBAAgBC,KAAMC,YAAWlB,UAAU,kBAC3CzB,EAAE,2BAGPoB,EAAA,QAAAC,cAAA,MAAA,CAAKI,UAAU,kCACXb,GAA6B,aAAjBP,GAAgD,WAAjBA,EAG3Ce,EAAAA,QAAAC,cAACuB,EAAAA,QAAW,CAAC/B,UAAWA,GAAa,CAAA,EAAIgC,WAAY,IAFrDzB,EAAC,QAAAC,cAAAyB,EAAK,QAAC,CAAAC,KAAK,QAAQpD,UAAWF,EAAeG,EAAwBD,OAUtF"}
@@ -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"),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 t=require("../../node_modules/react-i18next/dist/es/useTranslation.js");require("../../node_modules/@babel/runtime/helpers/slicedToArray.js");var i=require("./DisplayNameUtils.js"),r=require("../TextScroll.js"),l=require("../../node_modules/react-redux/es/hooks/useSelector.js");function n(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var o=n(e),s=function(e){var t,i;return{displayName:null===(t=null==e?void 0:e.currentCall)||void 0===t?void 0:t.displayName,incoming:null===(i=null==e?void 0:e.currentCall)||void 0===i?void 0:i.incoming}},u=function(e){return e.listen},a=e.memo((function(){var n=l.useSelector(s),a=n.displayName,d=n.incoming,c=l.useSelector(u),m=t.useTranslation().t,p=e.useMemo((function(){return i.getDisplayText({intrudeListenStatus:c,displayName:a,incoming:d,t:m})}),[c,a,d,m]),f=p.content,v=e.useMemo((function(){return i.getTextClassName()}),[]);return o.default.createElement("div",{className:"pi-relative pi-block pi-w-full pi-min-w-0 pi-overflow-hidden pi-whitespace-nowrap pi-text-lg pi-font-medium","data-tooltip-id":f?"tooltip-display-name":void 0,"data-tooltip-content":f||""},o.default.createElement("div",{className:"".concat(v," pi-w-full pi-min-w-0")},"scroll"===p.type?o.default.createElement(r.default,{text:f}):o.default.createElement("span",{className:"pi-block pi-max-w-full pi-truncate"},f)))}));exports.default=a;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react");require("../../node_modules/react-redux/es/index.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 t=require("../../node_modules/react-i18next/dist/es/useTranslation.js");require("../../node_modules/@babel/runtime/helpers/slicedToArray.js");var i=require("./DisplayNameUtils.js"),r=require("../TextScroll.js"),l=require("../../node_modules/react-redux/es/hooks/useSelector.js");function n(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var o=n(e),s=function(e){var t,i;return{displayName:null===(t=null==e?void 0:e.currentCall)||void 0===t?void 0:t.displayName,incoming:null===(i=null==e?void 0:e.currentCall)||void 0===i?void 0:i.incoming}},u=function(e){return e.listen},a=e.memo(function(){var n=l.useSelector(s),a=n.displayName,d=n.incoming,c=l.useSelector(u),m=t.useTranslation().t,p=e.useMemo(function(){return i.getDisplayText({intrudeListenStatus:c,displayName:a,incoming:d,t:m})},[c,a,d,m]),f=p.content,v=e.useMemo(function(){return i.getTextClassName()},[]);return o.default.createElement("div",{className:"pi-relative pi-block pi-w-full pi-min-w-0 pi-overflow-hidden pi-whitespace-nowrap pi-text-lg pi-font-medium","data-tooltip-id":f?"tooltip-display-name":void 0,"data-tooltip-content":f||""},o.default.createElement("div",{className:"".concat(v," pi-w-full pi-min-w-0")},"scroll"===p.type?o.default.createElement(r.default,{text:f}):o.default.createElement("span",{className:"pi-block pi-max-w-full pi-truncate"},f)))});exports.default=a;
2
2
  //# sourceMappingURL=DisplayName.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DisplayName.js","sources":["../../../src/components/CallView/DisplayName.tsx"],"sourcesContent":["// Copyright (C) 2024 Nethesis S.r.l.\n// SPDX-License-Identifier: AGPL-3.0-or-later\n\nimport React, { useMemo, memo } from 'react'\nimport { RootState } from '../../store'\nimport { useSelector } from 'react-redux'\nimport { useTranslation } from 'react-i18next'\nimport { getDisplayText, getTextClassName } from './DisplayNameUtils'\nimport TextScroll from '../TextScroll'\n\nconst selectDisplayNameAndIncoming = (state: RootState) => ({\n displayName: state?.currentCall?.displayName,\n incoming: state?.currentCall?.incoming,\n})\n\nconst selectIntrudeListenStatus = (state: RootState) => state.listen\n\nconst DisplayName: React.FC<DisplayNameProps> = () => {\n const { displayName, incoming } = useSelector(selectDisplayNameAndIncoming)\n const intrudeListenStatus = useSelector(selectIntrudeListenStatus)\n\n const { t } = useTranslation()\n\n const displayTextResult = useMemo(\n () => getDisplayText({ intrudeListenStatus, displayName, incoming, t }),\n [intrudeListenStatus, displayName, incoming, t],\n )\n\n const displayText = displayTextResult.content\n\n const textClassName = useMemo(() => getTextClassName(), [])\n\n return (\n <div\n className='pi-relative pi-block pi-w-full pi-min-w-0 pi-overflow-hidden pi-whitespace-nowrap pi-text-lg pi-font-medium'\n data-tooltip-id={displayText ? 'tooltip-display-name' : undefined}\n data-tooltip-content={displayText || ''}\n >\n <div className={`${textClassName} pi-w-full pi-min-w-0`}>\n {displayTextResult.type === 'scroll' ? (\n <TextScroll text={displayText} />\n ) : (\n <span className='pi-block pi-max-w-full pi-truncate'>{displayText}</span>\n )}\n </div>\n </div>\n )\n}\n\nexport default memo(DisplayName)\n\nexport interface DisplayNameProps {}\n"],"names":["selectDisplayNameAndIncoming","state","displayName","_a","currentCall","incoming","_b","selectIntrudeListenStatus","listen","memo","useSelector","intrudeListenStatus","t","useTranslation","displayTextResult","useMemo","getDisplayText","displayText","content","textClassName","getTextClassName","React","createElement","className","undefined","concat","type","TextScroll","text"],"mappings":"o2BAUMA,EAA+B,SAACC,WAAqB,MAAC,CAC1DC,YAA+B,QAAlBC,EAAAF,eAAAA,EAAOG,mBAAW,IAAAD,OAAA,EAAAA,EAAED,YACjCG,SAA4B,QAAlBC,EAAAL,eAAAA,EAAOG,mBAAW,IAAAE,OAAA,EAAAA,EAAED,WAG1BE,EAA4B,SAACN,GAAqB,OAAAA,EAAMO,MAAN,EAkCzCC,EAAAA,EAAAA,MAhCiC,WACxC,IAAAN,EAA4BO,cAAYV,GAAtCE,EAAWC,EAAAD,YAAEG,EAAQF,EAAAE,SACvBM,EAAsBD,cAAYH,GAEhCK,EAAMC,qBAERC,EAAoBC,WACxB,WAAM,OAAAC,EAAAA,eAAe,CAAEL,oBAAmBA,EAAET,YAAWA,EAAEG,SAAQA,EAAEO,KAAI,GACvE,CAACD,EAAqBT,EAAaG,EAAUO,IAGzCK,EAAcH,EAAkBI,QAEhCC,EAAgBJ,EAAAA,SAAQ,WAAM,OAAAK,EAAAA,kBAAA,GAAoB,IAExD,OACEC,EACE,QAAAC,cAAA,MAAA,CAAAC,UAAU,8GAA6G,kBACtGN,EAAc,4BAAyBO,EAClC,uBAAAP,GAAe,IAErCI,EAAAA,QAAAC,cAAA,MAAA,CAAKC,UAAW,GAAAE,OAAGN,EAAa,0BACF,WAA3BL,EAAkBY,KACjBL,EAAA,QAAAC,cAACK,EAAAA,QAAW,CAAAC,KAAMX,IAElBI,EAAM,QAAAC,cAAA,OAAA,CAAAC,UAAU,sCAAsCN,IAKhE"}
1
+ {"version":3,"file":"DisplayName.js","sources":["../../../src/components/CallView/DisplayName.tsx"],"sourcesContent":["// Copyright (C) 2024 Nethesis S.r.l.\n// SPDX-License-Identifier: AGPL-3.0-or-later\n\nimport React, { useMemo, memo } from 'react'\nimport { RootState } from '../../store'\nimport { useSelector } from 'react-redux'\nimport { useTranslation } from 'react-i18next'\nimport { getDisplayText, getTextClassName } from './DisplayNameUtils'\nimport TextScroll from '../TextScroll'\n\nconst selectDisplayNameAndIncoming = (state: RootState) => ({\n displayName: state?.currentCall?.displayName,\n incoming: state?.currentCall?.incoming,\n})\n\nconst selectIntrudeListenStatus = (state: RootState) => state.listen\n\nconst DisplayName: React.FC<DisplayNameProps> = () => {\n const { displayName, incoming } = useSelector(selectDisplayNameAndIncoming)\n const intrudeListenStatus = useSelector(selectIntrudeListenStatus)\n\n const { t } = useTranslation()\n\n const displayTextResult = useMemo(\n () => getDisplayText({ intrudeListenStatus, displayName, incoming, t }),\n [intrudeListenStatus, displayName, incoming, t],\n )\n\n const displayText = displayTextResult.content\n\n const textClassName = useMemo(() => getTextClassName(), [])\n\n return (\n <div\n className='pi-relative pi-block pi-w-full pi-min-w-0 pi-overflow-hidden pi-whitespace-nowrap pi-text-lg pi-font-medium'\n data-tooltip-id={displayText ? 'tooltip-display-name' : undefined}\n data-tooltip-content={displayText || ''}\n >\n <div className={`${textClassName} pi-w-full pi-min-w-0`}>\n {displayTextResult.type === 'scroll' ? (\n <TextScroll text={displayText} />\n ) : (\n <span className='pi-block pi-max-w-full pi-truncate'>{displayText}</span>\n )}\n </div>\n </div>\n )\n}\n\nexport default memo(DisplayName)\n\nexport interface DisplayNameProps {}\n"],"names":["selectDisplayNameAndIncoming","state","displayName","_a","currentCall","incoming","_b","selectIntrudeListenStatus","listen","memo","useSelector","intrudeListenStatus","t","useTranslation","displayTextResult","useMemo","getDisplayText","displayText","content","textClassName","getTextClassName","React","createElement","className","undefined","concat","type","TextScroll","text"],"mappings":"o2BAUMA,EAA+B,SAACC,WAAqB,MAAC,CAC1DC,YAA+B,QAAlBC,EAAAF,eAAAA,EAAOG,mBAAW,IAAAD,OAAA,EAAAA,EAAED,YACjCG,SAA4B,QAAlBC,EAAAL,eAAAA,EAAOG,mBAAW,IAAAE,OAAA,EAAAA,EAAED,WAG1BE,EAA4B,SAACN,GAAqB,OAAAA,EAAMO,MAAN,EAkCzCC,EAAAA,EAAAA,KAhCiC,WACxC,IAAAN,EAA4BO,cAAYV,GAAtCE,EAAWC,EAAAD,YAAEG,EAAQF,EAAAE,SACvBM,EAAsBD,cAAYH,GAEhCK,EAAMC,qBAERC,EAAoBC,UACxB,WAAM,OAAAC,EAAAA,eAAe,CAAEL,oBAAmBA,EAAET,YAAWA,EAAEG,SAAQA,EAAEO,KAAI,EACvE,CAACD,EAAqBT,EAAaG,EAAUO,IAGzCK,EAAcH,EAAkBI,QAEhCC,EAAgBJ,EAAAA,QAAQ,WAAM,OAAAK,EAAAA,kBAAA,EAAoB,IAExD,OACEC,EACE,QAAAC,cAAA,MAAA,CAAAC,UAAU,8GAA6G,kBACtGN,EAAc,4BAAyBO,EAClC,uBAAAP,GAAe,IAErCI,EAAAA,QAAAC,cAAA,MAAA,CAAKC,UAAW,GAAAE,OAAGN,EAAa,0BACF,WAA3BL,EAAkBY,KACjBL,EAAA,QAAAC,cAACK,EAAAA,QAAW,CAAAC,KAAMX,IAElBI,EAAM,QAAAC,cAAA,OAAA,CAAAC,UAAU,sCAAsCN,IAKhE"}
@@ -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 r=require("../../styles/Island.styles.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 t=require("../../node_modules/react-i18next/dist/es/useTranslation.js");require("../../node_modules/@babel/runtime/helpers/slicedToArray.js");var s=require("../../node_modules/react-redux/es/hooks/useSelector.js");function n(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var u=n(e);exports.default=function(){var e=s.useSelector((function(e){return e.currentCall})).number,n=s.useSelector((function(e){return e.island})).isOpen,l=t.useTranslation().t,o="unknown"===e?l("TextScroll.unknown"):e||l("Call.In progress...")||"-";return u.default.createElement(r.StyledNumber,{isOpen:n},u.default.createElement("span",{className:"dark:pi-text-gray-50 pi-text-gray-600"},o))};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react");require("../../node_modules/react-redux/es/index.js");var r=require("../../styles/Island.styles.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 t=require("../../node_modules/react-i18next/dist/es/useTranslation.js");require("../../node_modules/@babel/runtime/helpers/slicedToArray.js");var s=require("../../node_modules/react-redux/es/hooks/useSelector.js");function n(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var u=n(e);exports.default=function(){var e=s.useSelector(function(e){return e.currentCall}).number,n=s.useSelector(function(e){return e.island}).isOpen,l=t.useTranslation().t,o="unknown"===e?l("TextScroll.unknown"):e||l("Call.In progress...")||"-";return u.default.createElement(r.StyledNumber,{isOpen:n},u.default.createElement("span",{className:"dark:pi-text-gray-50 pi-text-gray-600"},o))};
2
2
  //# sourceMappingURL=Number.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Number.js","sources":["../../../src/components/CallView/Number.tsx"],"sourcesContent":["// Copyright (C) 2024 Nethesis S.r.l.\n// SPDX-License-Identifier: AGPL-3.0-or-later\n\nimport React, { type FC } from 'react'\nimport { useSelector } from 'react-redux'\nimport { RootState } from '../../store'\nimport { StyledNumber } from '../../styles/Island.styles'\nimport { useTranslation } from 'react-i18next'\n\nconst Number: FC = () => {\n const { number } = useSelector((state: RootState) => state.currentCall)\n const { isOpen } = useSelector((state: RootState) => state.island)\n const { t } = useTranslation()\n\n const displayNumber =\n number === 'unknown' ? t('TextScroll.unknown') : number || t('Call.In progress...') || '-'\n\n return (\n <StyledNumber isOpen={isOpen}>\n <span className='dark:pi-text-gray-50 pi-text-gray-600'>{displayNumber}</span>\n </StyledNumber>\n )\n}\n\nexport default Number\n"],"names":["number","useSelector","state","currentCall","isOpen","island","t","useTranslation","displayNumber","React","createElement","StyledNumber","className"],"mappings":"k2BASmB,WACT,IAAAA,EAAWC,eAAY,SAACC,GAAqB,OAAAA,EAAMC,sBACnDC,EAAWH,eAAY,SAACC,GAAqB,OAAAA,EAAMG,iBACnDC,EAAMC,qBAERC,EACO,YAAXR,EAAuBM,EAAE,sBAAwBN,GAAUM,EAAE,wBAA0B,IAEzF,OACEG,EAAC,QAAAC,cAAAC,EAAYA,aAAC,CAAAP,OAAQA,GACpBK,EAAM,QAAAC,cAAA,OAAA,CAAAE,UAAU,yCAAyCJ,GAG/D"}
1
+ {"version":3,"file":"Number.js","sources":["../../../src/components/CallView/Number.tsx"],"sourcesContent":["// Copyright (C) 2024 Nethesis S.r.l.\n// SPDX-License-Identifier: AGPL-3.0-or-later\n\nimport React, { type FC } from 'react'\nimport { useSelector } from 'react-redux'\nimport { RootState } from '../../store'\nimport { StyledNumber } from '../../styles/Island.styles'\nimport { useTranslation } from 'react-i18next'\n\nconst Number: FC = () => {\n const { number } = useSelector((state: RootState) => state.currentCall)\n const { isOpen } = useSelector((state: RootState) => state.island)\n const { t } = useTranslation()\n\n const displayNumber =\n number === 'unknown' ? t('TextScroll.unknown') : number || t('Call.In progress...') || '-'\n\n return (\n <StyledNumber isOpen={isOpen}>\n <span className='dark:pi-text-gray-50 pi-text-gray-600'>{displayNumber}</span>\n </StyledNumber>\n )\n}\n\nexport default Number\n"],"names":["number","useSelector","state","currentCall","isOpen","island","t","useTranslation","displayNumber","React","createElement","StyledNumber","className"],"mappings":"k2BASmB,WACT,IAAAA,EAAWC,cAAY,SAACC,GAAqB,OAAAA,EAAMC,qBACnDC,EAAWH,cAAY,SAACC,GAAqB,OAAAA,EAAMG,gBACnDC,EAAMC,qBAERC,EACO,YAAXR,EAAuBM,EAAE,sBAAwBN,GAAUM,EAAE,wBAA0B,IAEzF,OACEG,EAAC,QAAAC,cAAAC,EAAYA,aAAC,CAAAP,OAAQA,GACpBK,EAAM,QAAAC,cAAA,OAAA,CAAAE,UAAU,yCAAyCJ,GAG/D"}
@@ -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("../../styles/Island.styles.js"),r=require("../../node_modules/react-moment/dist/index.js"),a=require("../../lib/user/default_device.js"),i=require("../../node_modules/react-redux/es/hooks/useSelector.js");function s(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var n=s(e);exports.default=function(e){var s=e.size,u=void 0===s?"large":s,l=e.startTime,d=e.isNotAlwaysWhite,o=e.isInsideConference,c=i.useSelector((function(e){return e.island})).isOpen;return n.default.createElement(n.default.Fragment,null,null!=l&&!a.isPhysical()&&n.default.createElement(t.StyledTimer,{isOpen:c,size:u},n.default.createElement(r.default,{date:Number(l),interval:1e3,format:"hh:mm:ss",trim:!1,unix:!0,durationFromNow:!0,className:"".concat(void 0!==d&&d?"pi-text-gray-950 dark:pi-text-gray-50":"pi-text-gray-50 dark:pi-text-gray-50"," ").concat(o?"pi-font-mono":"")})))};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react");require("../../node_modules/react-redux/es/index.js");var t=require("../../styles/Island.styles.js"),r=require("../../node_modules/react-moment/dist/index.js"),a=require("../../lib/user/default_device.js"),i=require("../../node_modules/react-redux/es/hooks/useSelector.js");function s(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var n=s(e);exports.default=function(e){var s=e.size,u=void 0===s?"large":s,l=e.startTime,d=e.isNotAlwaysWhite,o=e.isInsideConference,c=i.useSelector(function(e){return e.island}).isOpen;return n.default.createElement(n.default.Fragment,null,null!=l&&!a.isPhysical()&&n.default.createElement(t.StyledTimer,{isOpen:c,size:u},n.default.createElement(r.default,{date:Number(l),interval:1e3,format:"hh:mm:ss",trim:!1,unix:!0,durationFromNow:!0,className:"".concat(void 0!==d&&d?"pi-text-gray-950 dark:pi-text-gray-50":"pi-text-gray-50 dark:pi-text-gray-50"," ").concat(o?"pi-font-mono":"")})))};
2
2
  //# sourceMappingURL=Timer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Timer.js","sources":["../../../src/components/CallView/Timer.tsx"],"sourcesContent":["// Copyright (C) 2024 Nethesis S.r.l.\n// SPDX-License-Identifier: AGPL-3.0-or-later\n\nimport React, { FC } from 'react'\nimport { useSelector } from 'react-redux'\nimport { RootState } from '../../store'\nimport { StyledTimer } from '../../styles/Island.styles'\nimport Moment from 'react-moment'\nimport { isPhysical } from '../../lib/user/default_device'\n\nconst Timer: FC<TimerProps> = ({\n size = 'large',\n startTime,\n isNotAlwaysWhite,\n isInsideConference,\n}) => {\n // Get isOpen from the island store\n const { isOpen } = useSelector((state: RootState) => state.island)\n return (\n <>\n {startTime != null && !isPhysical() && (\n <StyledTimer isOpen={isOpen} size={size}>\n <Moment\n date={Number(startTime)}\n interval={1000}\n format='hh:mm:ss'\n trim={false}\n unix\n durationFromNow\n className={`${\n isNotAlwaysWhite !== undefined && isNotAlwaysWhite\n ? 'pi-text-gray-950 dark:pi-text-gray-50'\n : 'pi-text-gray-50 dark:pi-text-gray-50'\n } ${isInsideConference ? 'pi-font-mono' : ''}`}\n />\n </StyledTimer>\n )}\n </>\n )\n}\n\nexport default Timer\n\nexport interface TimerProps {\n size?: 'small' | 'large'\n startTime: string\n // when the timer is used in the home view or in the pill view\n // TODO rename prop: it is used also in video view\n isNotAlwaysWhite?: boolean\n isInsideConference?: boolean\n}\n"],"names":["_a","_b","size","startTime","isNotAlwaysWhite","isInsideConference","isOpen","useSelector","state","island","React","isPhysical","createElement","StyledTimer","Moment","date","Number","interval","format","trim","unix","durationFromNow","className","concat","undefined"],"mappings":"gdAU8B,SAACA,GAC7B,IAAAC,EAAAD,EAAAE,KAAAA,OAAO,IAAAD,EAAA,QAAOA,EACdE,EAASH,EAAAG,UACTC,EAAgBJ,EAAAI,iBAChBC,EAAkBL,EAAAK,mBAGVC,EAAWC,eAAY,SAACC,GAAqB,OAAAA,EAAMC,iBAC3D,OACEC,EAAAA,8CACgB,MAAbP,IAAsBQ,EAAUA,cAC/BD,EAAAA,QAACE,cAAAC,EAAWA,aAACP,OAAQA,EAAQJ,KAAMA,GACjCQ,EAAAA,QAAAE,cAACE,UAAM,CACLC,KAAMC,OAAOb,GACbc,SAAU,IACVC,OAAO,WACPC,MAAM,EACNC,QACAC,iBAAe,EACfC,UAAW,GACTC,YAAqBC,IAArBpB,GAAkCA,EAC9B,wCACA,uCAAsC,KAAAmB,OACxClB,EAAqB,eAAiB,OAMtD"}
1
+ {"version":3,"file":"Timer.js","sources":["../../../src/components/CallView/Timer.tsx"],"sourcesContent":["// Copyright (C) 2024 Nethesis S.r.l.\n// SPDX-License-Identifier: AGPL-3.0-or-later\n\nimport React, { FC } from 'react'\nimport { useSelector } from 'react-redux'\nimport { RootState } from '../../store'\nimport { StyledTimer } from '../../styles/Island.styles'\nimport Moment from 'react-moment'\nimport { isPhysical } from '../../lib/user/default_device'\n\nconst Timer: FC<TimerProps> = ({\n size = 'large',\n startTime,\n isNotAlwaysWhite,\n isInsideConference,\n}) => {\n // Get isOpen from the island store\n const { isOpen } = useSelector((state: RootState) => state.island)\n return (\n <>\n {startTime != null && !isPhysical() && (\n <StyledTimer isOpen={isOpen} size={size}>\n <Moment\n date={Number(startTime)}\n interval={1000}\n format='hh:mm:ss'\n trim={false}\n unix\n durationFromNow\n className={`${\n isNotAlwaysWhite !== undefined && isNotAlwaysWhite\n ? 'pi-text-gray-950 dark:pi-text-gray-50'\n : 'pi-text-gray-50 dark:pi-text-gray-50'\n } ${isInsideConference ? 'pi-font-mono' : ''}`}\n />\n </StyledTimer>\n )}\n </>\n )\n}\n\nexport default Timer\n\nexport interface TimerProps {\n size?: 'small' | 'large'\n startTime: string\n // when the timer is used in the home view or in the pill view\n // TODO rename prop: it is used also in video view\n isNotAlwaysWhite?: boolean\n isInsideConference?: boolean\n}\n"],"names":["_a","_b","size","startTime","isNotAlwaysWhite","isInsideConference","isOpen","useSelector","state","island","React","isPhysical","createElement","StyledTimer","Moment","date","Number","interval","format","trim","unix","durationFromNow","className","concat","undefined"],"mappings":"gdAU8B,SAACA,GAC7B,IAAAC,EAAAD,EAAAE,KAAAA,OAAO,IAAAD,EAAA,QAAOA,EACdE,EAASH,EAAAG,UACTC,EAAgBJ,EAAAI,iBAChBC,EAAkBL,EAAAK,mBAGVC,EAAWC,cAAY,SAACC,GAAqB,OAAAA,EAAMC,gBAC3D,OACEC,EAAAA,8CACgB,MAAbP,IAAsBQ,EAAUA,cAC/BD,EAAAA,QAACE,cAAAC,EAAWA,aAACP,OAAQA,EAAQJ,KAAMA,GACjCQ,EAAAA,QAAAE,cAACE,UAAM,CACLC,KAAMC,OAAOb,GACbc,SAAU,IACVC,OAAO,WACPC,MAAM,EACNC,QACAC,iBAAe,EACfC,UAAW,GACTC,YAAqBC,IAArBpB,GAAkCA,EAC9B,wCACA,uCAAsC,KAAAmB,OACxClB,EAAqB,eAAiB,OAMtD"}
@@ -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("../../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("../../node_modules/tslib/tslib.es6.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");require("../TranscriptionView/TranscriptionView.js");var 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 x=require("../../node_modules/@nethesis/nethesis-solid-svg-icons/index.mjs.js"),v=require("../StreamingImage/index.js"),E=require("../VideoStreamingSkeleton/index.js"),w=require("../VideoStreamingEmptyState/index.js"),h=require("../../node_modules/react-redux/es/hooks/useDispatch.js"),j=require("../../node_modules/react-redux/es/hooks/useSelector.js");function b(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var N=b(e);function y(e,t){return!e&&!t}var q=e.memo((function(e){var t=e.children,i=e.className,n=void 0===i?"pi-gap-1 pi-grid-rows-2":i;return N.default.createElement("div",{className:"pi-grid pi-min-w-0 pi-self-center pi-grid-cols-1 ".concat(n)},t)}));q.displayName="Details";var _=e.memo((function(e){var n=e.label,a=e.tooltipContent;return n?N.default.createElement("span",{className:"pi-inline-flex pi-flex-none pi-items-center pi-justify-center pi-text-iconSecondary","data-tooltip-id":a?"tooltip-queue":void 0,"data-tooltip-content":a||""},N.default.createElement(t.FontAwesomeIcon,{icon:i.faUsers,className:"pi-h-4 pi-w-4"})):null}));_.displayName="QueueBadge";var T=e.memo((function(e){var n=e.label,a=e.tooltipContent;return n?N.default.createElement("span",{className:"pi-inline-flex pi-w-fit pi-max-w-full pi-flex-none pi-items-center pi-gap-1.5 pi-self-start pi-rounded-full pi-bg-iconSecondary pi-px-2.5 pi-py-1 pi-text-xs pi-font-medium pi-leading-none pi-text-iconWhite dark:pi-bg-iconSecondaryDark","data-tooltip-id":a?"tooltip-queue":void 0,"data-tooltip-content":a||"","aria-label":a||n},N.default.createElement(t.FontAwesomeIcon,{icon:i.faUsers,className:"pi-h-3 pi-w-3 pi-flex-none"}),N.default.createElement("span",{className:"pi-block pi-max-w-28 pi-truncate"},n)):null}));T.displayName="IncomingQueueBadge";var k=e.memo((function(){var b,k=g.useTranslation().t,A=h.useDispatch(),C=j.useSelector((function(e){return e.currentCall})),S=C.incoming,I=C.accepted,F=C.outgoing,P=C.startTime,M=C.paused,B=C.number,O=C.isRecording,U=C.username,L=C.streamingSourceNumber,V=C.queueName,W=C.queueNumber,D=C.throughQueue,z=j.useSelector((function(e){return e.island})),H=z.isOpen,Q=z.isFromStreaming,R=j.useSelector((function(e){return e.webrtc})).remoteAudioStream,G=j.useSelector((function(e){return e.listen})),J=G.isListen,K=G.isIntrude,X=G.isListenExtension,Y=G.isIntrudeExtension,Z=j.useSelector((function(e){return e.alerts})).data,$=j.useSelector((function(e){return e.currentUser})),ee=j.useSelector((function(e){return e.streaming})),te=ee.videoSources,ie=ee.sourceImages,ne=e.useMemo((function(){return Object.values(Z).filter((function(e){return e.active}))}),[Z]),ae=e.useMemo((function(){return ne.length>0?ne[ne.length-1]:null}),[ne]),le=e.useMemo((function(){return Q&&L&&!I}),[Q,L,I]),re=e.useMemo((function(){if(!L||!te)return{canUnlock:!1,tooltipText:""};var e=Object.values(te).find((function(e){return(null==e?void 0:e.extension)===L})),t=Boolean((null==e?void 0:e.cmdOpen)&&""!==(null==e?void 0:e.cmdOpen.trim()));return{canUnlock:t,tooltipText:t&&e?"".concat(k("VideoStreaming.Open"),": ").concat(null==e?void 0:e.description):""}}),[L,te,k]),oe=e.useMemo((function(){return""!==U&&"undefined"!==U}),[U]),se=e.useMemo((function(){return V||W||""}),[V,W]),ue=e.useMemo((function(){return D&&se?"".concat(k("Common.Queue"),": ").concat(se):""}),[D,se,k]),ce=e.useMemo((function(){return Boolean(S&&!I&&D&&se)}),[I,S,D,se]),de=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:x.faOfficePhone,className:"pi-mr-1"}),N.default.createElement("span",{className:"pi-max-w-16 pi-truncate"},(null===(e=null==$?void 0:$.default_device)||void 0===e?void 0:e.description)||k("Common.Physical phone")))}),[null===(b=null==$?void 0:$.default_device)||void 0===b?void 0:b.description,k]),pe=e.useCallback((function(e){var n=H?"pi-h-12 pi-w-12":"pi-h-6 pi-w-6",a=H?"pi-h-8":"pi-h-4 pi-w-4 pi-rounded-full",l=H?"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})))}),[H]),me=e.useMemo((function(){var e="pi-grid pi-items-center";return H&&(e=ce?"pi-grid pi-items-center":"pi-grid pi-items-start",I?e+=" pi-grid-rows-[72px_1fr]":S?e+=" pi-grid-cols-[256px_114px]":F&&(e+=" pi-grid-cols-[1fr_84px]")),le?"pi-flex pi-flex-col":e}),[H,I,S,F,le,ce]),fe=e.useMemo((function(){var e=H&&!ce?"start":"center";return"pi-grid ".concat(H&&!I&&F?"pi-grid-cols-[48px_1fr]":H&&!I&&S?"pi-grid-cols-[48px_1fr_1px]":H&&I?"pi-grid-cols-[48px_164px_48px]":H||I?"pi-grid-cols-[24px_66px_24px]":"pi-grid-cols-[24px_102px]"," pi-gap-").concat(H?"5":"3"," pi-items-").concat(e," pi-justify-center pi-w-full")}),[H,I,S,F,ce]),ge=e.useMemo((function(){return le?"pi-grid-cols-3":y(F,I)?"pi-grid-cols-2":I?"pi-grid-cols-1 pi-justify-items-center":"pi-grid-cols-1 pi-justify-items-end"}),[le,F,I]),xe=e.useCallback((function(){var e=H?"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 J?N.default.createElement(t.FontAwesomeIcon,{className:e,icon:i.faEarListen}):K?N.default.createElement(t.FontAwesomeIcon,{className:e,icon:i.faHandPointUp}):""!==B&&oe?N.default.createElement(p.default,null):S&&!oe?N.default.createElement(t.FontAwesomeIcon,{className:"".concat(e," pi--rotate-45"),icon:i.faArrowLeft}):!I||F||oe?F&&!oe?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})}),[H,J,K,B,oe,S,F,I]),ve=e.useCallback((function(){return H?K?N.default.createElement(q,null,N.default.createElement("span",{className:"pi-justify-center pi-w-fit pi-relative pi-inline-block pi-font-bold pi-text-base"},k("Common.Intrude"),Y?" - ".concat(Y):""),I?l.isPhysical()?de():N.default.createElement(u.default,{startTime:P,isNotAlwaysWhite:!0}):Y?"".concat(Y):""):J?N.default.createElement(q,null,N.default.createElement("span",{className:"pi-justify-center pi-w-fit pi-relative pi-inline-block pi-font-bold pi-text-base"},k("Common.Listen"),X?" - ".concat(X):""),I?l.isPhysical()?de():N.default.createElement(u.default,{startTime:P,isNotAlwaysWhite:!0}):X?"".concat(X):""):ce?N.default.createElement(q,{className:"pi-grid-rows-[20px_24px_24px] pi-gap-0.5"},N.default.createElement(T,{label:se,tooltipContent:ue}),N.default.createElement(d.default,null),N.default.createElement(c.default,null)):N.default.createElement(q,null,I&&D&&se?N.default.createElement("div",{className:"pi-flex pi-min-w-0 pi-items-center pi-gap-2"},N.default.createElement("div",{className:"pi-min-w-0 pi-flex-1"},N.default.createElement(d.default,null)),N.default.createElement(_,{label:se,tooltipContent:ue})):N.default.createElement(d.default,null),I?l.isPhysical()?de():N.default.createElement(u.default,{startTime:P,isNotAlwaysWhite:!0}):N.default.createElement(c.default,null)):null}),[H,K,J,I,P,Y,X,k,de,I,D,se,ue,ce]),Ee=e.useCallback((function(){return I&&O?pe("red"):I&&R&&!l.isPhysical()?N.default.createElement(o.AudioBars,{audioStream:R,paused:M,size:H?"large":"small"}):I&&l.isPhysical()?pe("green"):null}),[I,O,R,H,M,pe]),we=e.useCallback((function(){if(!te||0===Object.keys(te).length||!L)return N.default.createElement(E.default,{className:"pi-w-full pi-h-40 pi-mt-4"});var e=Object.values(te).find((function(e){return e.extension===L}));return e&&(ie[e.id]||e.image)?N.default.createElement(v.default,null):N.default.createElement(w.default,{className:"pi-w-full pi-h-40 pi-mt-4"})}),[L,te,ie]);if(null!==ae)return null;return N.default.createElement("div",{className:"pi-bg-red pi-content-center pi-justify-center"},N.default.createElement("div",{className:me},le?N.default.createElement(N.default.Fragment,null,N.default.createElement("div",{className:"pi-flex pi-items-center pi-justify-between pi-w-full pi-gap-2"},N.default.createElement("div",{className:"pi-flex pi-items-center pi-gap-4 pi-min-w-0 pi-flex-1"},xe(),N.default.createElement("div",{className:"pi-flex pi-flex-col pi-justify-center pi-space-y-2 pi-min-w-0"},N.default.createElement(d.default,null),N.default.createElement(c.default,null))),N.default.createElement("div",{className:"pi-flex pi-gap-2 pi-flex-shrink-0"},N.default.createElement(f.default,{description:k("Tooltip.Hangup")}),!F&&N.default.createElement(r.Button,{onClick:function(){return a.answerIncomingCall(),void setTimeout((function(){A.island.setIslandView("streamingAnswer")}),200)},variant:"green","data-tooltip-id":"tooltip-answer","data-tooltip-content":k("Tooltip.Answer")||""},N.default.createElement(t.FontAwesomeIcon,{className:"pi-w-5 pi-h-5",icon:i.faPhone})),(null==re?void 0:re.canUnlock)&&N.default.createElement(r.Button,{variant:"default",onClick:n.handleStreamingUnlock,"data-tooltip-id":"tooltip-unlock","data-tooltip-content":null==re?void 0:re.tooltipText},N.default.createElement(t.FontAwesomeIcon,{className:"pi-w-5 pi-h-5",icon:i.faUnlock})))),we()):N.default.createElement(N.default.Fragment,null,N.default.createElement("div",{className:fe},xe(),ve(),!H&&!I&&N.default.createElement(d.default,null),!H&&I&&N.default.createElement(u.default,{startTime:P,isNotAlwaysWhite:!0}),Ee()),H&&N.default.createElement(N.default.Fragment,null,N.default.createElement("div",{className:"".concat(J||K?"":"pi-grid pi-gap-y-5")},I&&N.default.createElement(m.default,null),N.default.createElement("div",{className:"pi-grid ".concat(ge," pi-gap-3.5")},N.default.createElement(f.default,{description:k("Tooltip.Hangup and transfer")}),y(F,I)&&N.default.createElement(r.Button,{onClick:a.answerIncomingCall,variant:"green","data-tooltip-id":"tooltip-answer-left","data-tooltip-content":k("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"}),N.default.createElement(s.CustomThemedTooltip,{id:"tooltip-display-name",place:"bottom"}),N.default.createElement(s.CustomThemedTooltip,{id:"tooltip-queue",place:"bottom"}))}));exports.default=k;
1
+ "use strict";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("../../node_modules/tslib/tslib.es6.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");require("../TranscriptionView/TranscriptionView.js");var 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 x=require("../../node_modules/@nethesis/nethesis-solid-svg-icons/index.mjs.js"),v=require("../StreamingImage/index.js"),E=require("../VideoStreamingSkeleton/index.js"),w=require("../VideoStreamingEmptyState/index.js"),h=require("../../node_modules/react-redux/es/hooks/useDispatch.js"),j=require("../../node_modules/react-redux/es/hooks/useSelector.js");function b(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var N=b(e);function y(e,t){return!e&&!t}var q=e.memo(function(e){var t=e.children,i=e.className,n=void 0===i?"pi-gap-1 pi-grid-rows-2":i;return N.default.createElement("div",{className:"pi-grid pi-min-w-0 pi-self-center pi-grid-cols-1 ".concat(n)},t)});q.displayName="Details";var _=e.memo(function(e){var n=e.label,a=e.tooltipContent;return n?N.default.createElement("span",{className:"pi-inline-flex pi-flex-none pi-items-center pi-justify-center pi-text-iconSecondary","data-tooltip-id":a?"tooltip-queue":void 0,"data-tooltip-content":a||""},N.default.createElement(t.FontAwesomeIcon,{icon:i.faUsers,className:"pi-h-4 pi-w-4"})):null});_.displayName="QueueBadge";var T=e.memo(function(e){var n=e.label,a=e.tooltipContent;return n?N.default.createElement("span",{className:"pi-inline-flex pi-w-fit pi-max-w-full pi-flex-none pi-items-center pi-gap-1.5 pi-self-start pi-rounded-full pi-bg-iconSecondary pi-px-2.5 pi-py-1 pi-text-xs pi-font-medium pi-leading-none pi-text-iconWhite dark:pi-bg-iconSecondaryDark","data-tooltip-id":a?"tooltip-queue":void 0,"data-tooltip-content":a||"","aria-label":a||n},N.default.createElement(t.FontAwesomeIcon,{icon:i.faUsers,className:"pi-h-3 pi-w-3 pi-flex-none"}),N.default.createElement("span",{className:"pi-block pi-max-w-28 pi-truncate"},n)):null});T.displayName="IncomingQueueBadge";var k=e.memo(function(){var b,k=g.useTranslation().t,A=h.useDispatch(),C=j.useSelector(function(e){return e.currentCall}),S=C.incoming,I=C.accepted,F=C.outgoing,P=C.startTime,M=C.paused,B=C.number,O=C.isRecording,U=C.username,L=C.streamingSourceNumber,V=C.queueName,W=C.queueNumber,D=C.throughQueue,z=j.useSelector(function(e){return e.island}),H=z.isOpen,Q=z.isFromStreaming,R=j.useSelector(function(e){return e.webrtc}).remoteAudioStream,G=j.useSelector(function(e){return e.listen}),J=G.isListen,K=G.isIntrude,X=G.isListenExtension,Y=G.isIntrudeExtension,Z=j.useSelector(function(e){return e.alerts}).data,$=j.useSelector(function(e){return e.currentUser}),ee=j.useSelector(function(e){return e.streaming}),te=ee.videoSources,ie=ee.sourceImages,ne=e.useMemo(function(){return Object.values(Z).filter(function(e){return e.active})},[Z]),ae=e.useMemo(function(){return ne.length>0?ne[ne.length-1]:null},[ne]),le=e.useMemo(function(){return Q&&L&&!I},[Q,L,I]),re=e.useMemo(function(){if(!L||!te)return{canUnlock:!1,tooltipText:""};var e=Object.values(te).find(function(e){return(null==e?void 0:e.extension)===L}),t=Boolean((null==e?void 0:e.cmdOpen)&&""!==(null==e?void 0:e.cmdOpen.trim()));return{canUnlock:t,tooltipText:t&&e?"".concat(k("VideoStreaming.Open"),": ").concat(null==e?void 0:e.description):""}},[L,te,k]),oe=e.useMemo(function(){return""!==U&&"undefined"!==U},[U]),se=e.useMemo(function(){return V||W||""},[V,W]),ue=e.useMemo(function(){return D&&se?"".concat(k("Common.Queue"),": ").concat(se):""},[D,se,k]),ce=e.useMemo(function(){return Boolean(S&&!I&&D&&se)},[I,S,D,se]),de=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:x.faOfficePhone,className:"pi-mr-1"}),N.default.createElement("span",{className:"pi-max-w-16 pi-truncate"},(null===(e=null==$?void 0:$.default_device)||void 0===e?void 0:e.description)||k("Common.Physical phone")))},[null===(b=null==$?void 0:$.default_device)||void 0===b?void 0:b.description,k]),pe=e.useCallback(function(e){var n=H?"pi-h-12 pi-w-12":"pi-h-6 pi-w-6",a=H?"pi-h-8":"pi-h-4 pi-w-4 pi-rounded-full",l=H?"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})))},[H]),me=e.useMemo(function(){var e="pi-grid pi-items-center";return H&&(e=ce?"pi-grid pi-items-center":"pi-grid pi-items-start",I?e+=" pi-grid-rows-[72px_1fr]":S?e+=" pi-grid-cols-[256px_114px]":F&&(e+=" pi-grid-cols-[1fr_84px]")),le?"pi-flex pi-flex-col":e},[H,I,S,F,le,ce]),fe=e.useMemo(function(){var e=H&&!ce?"start":"center";return"pi-grid ".concat(H&&!I&&F?"pi-grid-cols-[48px_1fr]":H&&!I&&S?"pi-grid-cols-[48px_1fr_1px]":H&&I?"pi-grid-cols-[48px_164px_48px]":H||I?"pi-grid-cols-[24px_66px_24px]":"pi-grid-cols-[24px_102px]"," pi-gap-").concat(H?"5":"3"," pi-items-").concat(e," pi-justify-center pi-w-full")},[H,I,S,F,ce]),ge=e.useMemo(function(){return le?"pi-grid-cols-3":y(F,I)?"pi-grid-cols-2":I?"pi-grid-cols-1 pi-justify-items-center":"pi-grid-cols-1 pi-justify-items-end"},[le,F,I]),xe=e.useCallback(function(){var e=H?"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 J?N.default.createElement(t.FontAwesomeIcon,{className:e,icon:i.faEarListen}):K?N.default.createElement(t.FontAwesomeIcon,{className:e,icon:i.faHandPointUp}):""!==B&&oe?N.default.createElement(p.default,null):S&&!oe?N.default.createElement(t.FontAwesomeIcon,{className:"".concat(e," pi--rotate-45"),icon:i.faArrowLeft}):!I||F||oe?F&&!oe?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})},[H,J,K,B,oe,S,F,I]),ve=e.useCallback(function(){return H?K?N.default.createElement(q,null,N.default.createElement("span",{className:"pi-justify-center pi-w-fit pi-relative pi-inline-block pi-font-bold pi-text-base"},k("Common.Intrude"),Y?" - ".concat(Y):""),I?l.isPhysical()?de():N.default.createElement(u.default,{startTime:P,isNotAlwaysWhite:!0}):Y?"".concat(Y):""):J?N.default.createElement(q,null,N.default.createElement("span",{className:"pi-justify-center pi-w-fit pi-relative pi-inline-block pi-font-bold pi-text-base"},k("Common.Listen"),X?" - ".concat(X):""),I?l.isPhysical()?de():N.default.createElement(u.default,{startTime:P,isNotAlwaysWhite:!0}):X?"".concat(X):""):ce?N.default.createElement(q,{className:"pi-grid-rows-[20px_24px_24px] pi-gap-0.5"},N.default.createElement(T,{label:se,tooltipContent:ue}),N.default.createElement(d.default,null),N.default.createElement(c.default,null)):N.default.createElement(q,null,I&&D&&se?N.default.createElement("div",{className:"pi-flex pi-min-w-0 pi-items-center pi-gap-2"},N.default.createElement("div",{className:"pi-min-w-0 pi-flex-1"},N.default.createElement(d.default,null)),N.default.createElement(_,{label:se,tooltipContent:ue})):N.default.createElement(d.default,null),I?l.isPhysical()?de():N.default.createElement(u.default,{startTime:P,isNotAlwaysWhite:!0}):N.default.createElement(c.default,null)):null},[H,K,J,I,P,Y,X,k,de,I,D,se,ue,ce]),Ee=e.useCallback(function(){return I&&O?pe("red"):I&&R&&!l.isPhysical()?N.default.createElement(o.AudioBars,{audioStream:R,paused:M,size:H?"large":"small"}):I&&l.isPhysical()?pe("green"):null},[I,O,R,H,M,pe]),we=e.useCallback(function(){if(!te||0===Object.keys(te).length||!L)return N.default.createElement(E.default,{className:"pi-w-full pi-h-40 pi-mt-4"});var e=Object.values(te).find(function(e){return e.extension===L});return e&&(ie[e.id]||e.image)?N.default.createElement(v.default,null):N.default.createElement(w.default,{className:"pi-w-full pi-h-40 pi-mt-4"})},[L,te,ie]);if(null!==ae)return null;return N.default.createElement("div",{className:"pi-bg-red pi-content-center pi-justify-center"},N.default.createElement("div",{className:me},le?N.default.createElement(N.default.Fragment,null,N.default.createElement("div",{className:"pi-flex pi-items-center pi-justify-between pi-w-full pi-gap-2"},N.default.createElement("div",{className:"pi-flex pi-items-center pi-gap-4 pi-min-w-0 pi-flex-1"},xe(),N.default.createElement("div",{className:"pi-flex pi-flex-col pi-justify-center pi-space-y-2 pi-min-w-0"},N.default.createElement(d.default,null),N.default.createElement(c.default,null))),N.default.createElement("div",{className:"pi-flex pi-gap-2 pi-flex-shrink-0"},N.default.createElement(f.default,{description:k("Tooltip.Hangup")}),!F&&N.default.createElement(r.Button,{onClick:function(){return a.answerIncomingCall(),void setTimeout(function(){A.island.setIslandView("streamingAnswer")},200)},variant:"green","data-tooltip-id":"tooltip-answer","data-tooltip-content":k("Tooltip.Answer")||""},N.default.createElement(t.FontAwesomeIcon,{className:"pi-w-5 pi-h-5",icon:i.faPhone})),(null==re?void 0:re.canUnlock)&&N.default.createElement(r.Button,{variant:"default",onClick:n.handleStreamingUnlock,"data-tooltip-id":"tooltip-unlock","data-tooltip-content":null==re?void 0:re.tooltipText},N.default.createElement(t.FontAwesomeIcon,{className:"pi-w-5 pi-h-5",icon:i.faUnlock})))),we()):N.default.createElement(N.default.Fragment,null,N.default.createElement("div",{className:fe},xe(),ve(),!H&&!I&&N.default.createElement(d.default,null),!H&&I&&N.default.createElement(u.default,{startTime:P,isNotAlwaysWhite:!0}),Ee()),H&&N.default.createElement(N.default.Fragment,null,N.default.createElement("div",{className:"".concat(J||K?"":"pi-grid pi-gap-y-5")},I&&N.default.createElement(m.default,null),N.default.createElement("div",{className:"pi-grid ".concat(ge," pi-gap-3.5")},N.default.createElement(f.default,{description:k("Tooltip.Hangup and transfer")}),y(F,I)&&N.default.createElement(r.Button,{onClick:a.answerIncomingCall,variant:"green","data-tooltip-id":"tooltip-answer-left","data-tooltip-content":k("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"}),N.default.createElement(s.CustomThemedTooltip,{id:"tooltip-display-name",place:"bottom"}),N.default.createElement(s.CustomThemedTooltip,{id:"tooltip-queue",place:"bottom"}))});exports.default=k;
2
2
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../src/components/CallView/index.tsx"],"sourcesContent":["// Copyright (C) 2024 Nethesis S.r.l.\n// SPDX-License-Identifier: AGPL-3.0-or-later\n\nimport React, { type FC, useMemo, useCallback, memo } from 'react'\nimport { useSelector } from 'react-redux'\nimport { RootState, Dispatch } from '../../store'\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome'\nimport {\n faPhone,\n faEarListen,\n faHandPointUp,\n faArrowLeft,\n faCircle,\n faUnlock,\n faUsers,\n} 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'\nimport { useTranslation } from 'react-i18next'\nimport { faOfficePhone } from '@nethesis/nethesis-solid-svg-icons'\nimport { isPhysical } from '../../lib/user/default_device'\nimport { CustomThemedTooltip } from '../CustomThemedTooltip'\nimport StreamingImage from '../StreamingImage'\nimport VideoStreamingSkeleton from '../VideoStreamingSkeleton'\nimport VideoStreamingEmptyState from '../VideoStreamingEmptyState'\nimport { handleStreamingUnlock } from '../../utils'\nimport { useDispatch } from 'react-redux'\n\nfunction isAnswerVisible(outgoing: boolean, accepted: boolean): boolean {\n return !outgoing && !accepted\n}\n\nconst Details = memo(\n ({\n children,\n className = 'pi-gap-1 pi-grid-rows-2',\n }: {\n children: React.ReactNode\n className?: string\n }) => (\n <div className={`pi-grid pi-min-w-0 pi-self-center pi-grid-cols-1 ${className}`}>\n {children}\n </div>\n ),\n)\nDetails.displayName = 'Details'\n\nconst QueueBadge = memo(\n ({\n label,\n tooltipContent,\n }: {\n label: string\n tooltipContent?: string\n }) => {\n if (!label) {\n return null\n }\n\n return (\n <span\n className='pi-inline-flex pi-flex-none pi-items-center pi-justify-center pi-text-iconSecondary'\n data-tooltip-id={tooltipContent ? 'tooltip-queue' : undefined}\n data-tooltip-content={tooltipContent || ''}\n >\n <FontAwesomeIcon icon={faUsers} className='pi-h-4 pi-w-4' />\n </span>\n )\n },\n)\nQueueBadge.displayName = 'QueueBadge'\n\nconst IncomingQueueBadge = memo(\n ({\n label,\n tooltipContent,\n }: {\n label: string\n tooltipContent?: string\n }) => {\n if (!label) {\n return null\n }\n\n return (\n <span\n className='pi-inline-flex pi-w-fit pi-max-w-full pi-flex-none pi-items-center pi-gap-1.5 pi-self-start pi-rounded-full pi-bg-iconSecondary pi-px-2.5 pi-py-1 pi-text-xs pi-font-medium pi-leading-none pi-text-iconWhite dark:pi-bg-iconSecondaryDark'\n data-tooltip-id={tooltipContent ? 'tooltip-queue' : undefined}\n data-tooltip-content={tooltipContent || ''}\n aria-label={tooltipContent || label}\n >\n <FontAwesomeIcon icon={faUsers} className='pi-h-3 pi-w-3 pi-flex-none' />\n <span className='pi-block pi-max-w-28 pi-truncate'>{label}</span>\n </span>\n )\n },\n)\nIncomingQueueBadge.displayName = 'IncomingQueueBadge'\n\n/**\n * The main view to manage calls, the starting point for calls actions flows\n */\nconst CallView: FC<CallViewProps> = () => {\n const { t } = useTranslation()\n const dispatch = useDispatch<Dispatch>()\n\n const currentCall = useSelector((state: RootState) => state.currentCall)\n const {\n incoming,\n accepted,\n outgoing,\n startTime,\n paused,\n number,\n isRecording,\n username,\n streamingSourceNumber,\n queueName,\n queueNumber,\n throughQueue,\n } = currentCall\n\n const { isOpen, isFromStreaming } = useSelector((state: RootState) => state.island)\n const { remoteAudioStream } = useSelector((state: RootState) => state.webrtc)\n const listenState = useSelector((state: RootState) => state.listen)\n const { isListen, isIntrude, isListenExtension, isIntrudeExtension } = listenState\n const { data: alertsData } = useSelector((state: RootState) => state.alerts)\n const currentUser = useSelector((state: RootState) => state.currentUser)\n const { videoSources, sourceImages } = useSelector((state: RootState) => state.streaming)\n\n const activeAlerts = useMemo(\n () => Object.values(alertsData).filter((alert: any) => alert.active),\n [alertsData],\n )\n\n const latestAlert = useMemo(\n () => (activeAlerts.length > 0 ? activeAlerts[activeAlerts.length - 1] : null),\n [activeAlerts],\n )\n\n const shouldShowStreamingImage = useMemo(\n () => isFromStreaming && streamingSourceNumber && !accepted,\n [isFromStreaming, streamingSourceNumber, accepted],\n )\n\n // Check if unlock button should be shown and get tooltip text\n const unlockData = useMemo(() => {\n if (!streamingSourceNumber || !videoSources) return { canUnlock: false, tooltipText: '' }\n\n const source = Object.values(videoSources).find(\n (source) => source?.extension === streamingSourceNumber,\n )\n\n const canUnlock = Boolean(source?.cmdOpen && source?.cmdOpen.trim() !== '')\n const tooltipText =\n canUnlock && source ? `${t('VideoStreaming.Open')}: ${source?.description}` : ''\n\n return { canUnlock, tooltipText }\n }, [streamingSourceNumber, videoSources, t])\n\n const hasValidUsername = useMemo(() => username !== '' && username !== 'undefined', [username])\n\n const queueLabel = useMemo(() => queueName || queueNumber || '', [queueName, queueNumber])\n\n const queueTooltipContent = useMemo(() => {\n if (!throughQueue || !queueLabel) {\n return ''\n }\n\n return `${t('Common.Queue')}: ${queueLabel}`\n }, [throughQueue, queueLabel, t])\n\n const shouldShowIncomingQueueBadge = useMemo(\n () => Boolean(incoming && !accepted && throughQueue && queueLabel),\n [accepted, incoming, throughQueue, queueLabel],\n )\n\n const renderLandlinePhoneDiv = useCallback(\n () => (\n <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 <FontAwesomeIcon size='sm' icon={faOfficePhone} className='pi-mr-1' />\n <span className='pi-max-w-16 pi-truncate'>\n {currentUser?.default_device?.description || t('Common.Physical phone')}\n </span>\n </div>\n ),\n [currentUser?.default_device?.description, t],\n )\n\n const renderPulseIcon = useCallback(\n (color: string) => {\n const sizeClasses = !isOpen ? 'pi-h-6 pi-w-6' : 'pi-h-12 pi-w-12'\n const innerSizeClasses = !isOpen ? 'pi-h-4 pi-w-4 pi-rounded-full' : 'pi-h-8'\n const animationSizeClasses = !isOpen ? 'pi-h-6 pi-w-6' : 'pi-w-8 pi-h-8'\n const colorClasses = color === 'red' ? 'pi-bg-red-400' : 'pi-bg-green-400'\n const textColorClasses = color === 'red' ? 'pi-text-red-500' : 'pi-text-green-500'\n\n return (\n <div className={`${sizeClasses} pi-flex pi-justify-center pi-items-center`}>\n <div\n className={`${innerSizeClasses} pi-w-fit pi-flex pi-justify-center pi-items-center pi-gap-1 pi-overflow-hidden`}\n >\n <span\n className={`${animationSizeClasses} pi-animate-ping pi-absolute pi-inline-flex pi-rounded-full ${colorClasses} pi-opacity-75`}\n ></span>\n <FontAwesomeIcon\n className={`pi-w-4 pi-h-6 pi-rotate-45 ${textColorClasses}`}\n icon={faCircle}\n />\n </div>\n </div>\n )\n },\n [isOpen],\n )\n\n const callViewClasses = useMemo(() => {\n let baseClasses = 'pi-grid pi-items-center'\n\n if (isOpen) {\n baseClasses = shouldShowIncomingQueueBadge ? 'pi-grid pi-items-center' : 'pi-grid pi-items-start'\n\n if (accepted) {\n baseClasses += ' pi-grid-rows-[72px_1fr]'\n } else if (incoming) {\n baseClasses += ' pi-grid-cols-[256px_114px]'\n } else if (outgoing) {\n baseClasses += ' pi-grid-cols-[1fr_84px]'\n }\n }\n\n return shouldShowStreamingImage ? 'pi-flex pi-flex-col' : baseClasses\n }, [isOpen, accepted, incoming, outgoing, shouldShowStreamingImage, shouldShowIncomingQueueBadge])\n\n const topContentClasses = useMemo(() => {\n let columns = ''\n\n if (isOpen && !accepted && outgoing) {\n columns = 'pi-grid-cols-[48px_1fr]'\n } else if (isOpen && !accepted && incoming) {\n columns = 'pi-grid-cols-[48px_1fr_1px]'\n } else if (isOpen && accepted) {\n columns = 'pi-grid-cols-[48px_164px_48px]'\n } else if (!isOpen && !accepted) {\n columns = 'pi-grid-cols-[24px_102px]'\n } else {\n columns = 'pi-grid-cols-[24px_66px_24px]'\n }\n\n const itemsAlign = isOpen && !shouldShowIncomingQueueBadge ? 'start' : 'center'\n\n return `pi-grid ${columns} pi-gap-${isOpen ? '5' : '3'} pi-items-${itemsAlign} pi-justify-center pi-w-full`\n }, [isOpen, accepted, incoming, outgoing, shouldShowIncomingQueueBadge])\n\n const getGridClasses = useMemo(() => {\n if (shouldShowStreamingImage) return 'pi-grid-cols-3'\n if (isAnswerVisible(outgoing, accepted)) return 'pi-grid-cols-2'\n if (accepted) return 'pi-grid-cols-1 pi-justify-items-center'\n return 'pi-grid-cols-1 pi-justify-items-end'\n }, [shouldShowStreamingImage, outgoing, accepted])\n\n const renderStatusIcon = useCallback(() => {\n const iconSizeClass = isOpen\n ? 'pi-relative pi-z-30 pi-h-12 pi-w-12 pi-rounded-sm pi-bg-cover'\n : 'pi-relative pi-z-30 pi-h-6 pi-w-6 pi-rounded-sm pi-bg-cover'\n\n if (isListen) {\n return <FontAwesomeIcon className={iconSizeClass} icon={faEarListen} />\n }\n\n if (isIntrude) {\n return <FontAwesomeIcon className={iconSizeClass} icon={faHandPointUp} />\n }\n\n if (number !== '' && hasValidUsername) {\n return <Avatar />\n }\n\n if (incoming && !hasValidUsername) {\n return <FontAwesomeIcon className={`${iconSizeClass} pi--rotate-45`} icon={faArrowLeft} />\n }\n\n if (accepted && !outgoing && !hasValidUsername) {\n return <FontAwesomeIcon className={`${iconSizeClass} pi--rotate-45`} icon={faArrowLeft} />\n }\n\n if (outgoing && !hasValidUsername) {\n return (\n <FontAwesomeIcon className={`${iconSizeClass} pi-rotate-[135deg]`} icon={faArrowLeft} />\n )\n }\n\n return null\n }, [isOpen, isListen, isIntrude, number, hasValidUsername, incoming, outgoing, accepted])\n\n const renderDetails = useCallback(() => {\n if (!isOpen) return null\n\n if (isIntrude) {\n return (\n <Details>\n <span className='pi-justify-center pi-w-fit pi-relative pi-inline-block pi-font-bold pi-text-base'>\n {t('Common.Intrude')}\n {isIntrudeExtension ? ` - ${isIntrudeExtension}` : ''}\n </span>\n {accepted ? (\n !isPhysical() ? (\n <Timer startTime={startTime} isNotAlwaysWhite />\n ) : (\n renderLandlinePhoneDiv()\n )\n ) : isIntrudeExtension ? (\n `${isIntrudeExtension}`\n ) : (\n ''\n )}\n </Details>\n )\n }\n\n if (isListen) {\n return (\n <Details>\n <span className='pi-justify-center pi-w-fit pi-relative pi-inline-block pi-font-bold pi-text-base'>\n {t('Common.Listen')}\n {isListenExtension ? ` - ${isListenExtension}` : ''}\n </span>\n {accepted ? (\n !isPhysical() ? (\n <Timer startTime={startTime} isNotAlwaysWhite />\n ) : (\n renderLandlinePhoneDiv()\n )\n ) : isListenExtension ? (\n `${isListenExtension}`\n ) : (\n ''\n )}\n </Details>\n )\n }\n\n if (shouldShowIncomingQueueBadge) {\n return (\n <Details className='pi-grid-rows-[20px_24px_24px] pi-gap-0.5'>\n <IncomingQueueBadge label={queueLabel} tooltipContent={queueTooltipContent} />\n <DisplayName />\n <Number />\n </Details>\n )\n }\n\n return (\n <Details>\n {accepted && throughQueue && queueLabel ? (\n <div className='pi-flex pi-min-w-0 pi-items-center pi-gap-2'>\n <div className='pi-min-w-0 pi-flex-1'>\n <DisplayName />\n </div>\n <QueueBadge label={queueLabel} tooltipContent={queueTooltipContent} />\n </div>\n ) : (\n <DisplayName />\n )}\n {accepted ? (\n !isPhysical() ? (\n <Timer startTime={startTime} isNotAlwaysWhite />\n ) : (\n renderLandlinePhoneDiv()\n )\n ) : (\n <Number />\n )}\n </Details>\n )\n }, [\n isOpen,\n isIntrude,\n isListen,\n accepted,\n startTime,\n isIntrudeExtension,\n isListenExtension,\n t,\n renderLandlinePhoneDiv,\n accepted,\n throughQueue,\n queueLabel,\n queueTooltipContent,\n shouldShowIncomingQueueBadge,\n ])\n\n const renderAudioIndicator = useCallback(() => {\n if (accepted && isRecording) {\n return renderPulseIcon('red')\n }\n\n if (accepted && remoteAudioStream && !isPhysical()) {\n return (\n <AudioBars\n audioStream={remoteAudioStream}\n paused={paused}\n size={isOpen ? 'large' : 'small'}\n />\n )\n }\n\n if (accepted && isPhysical()) {\n return renderPulseIcon('green')\n }\n\n return null\n }, [accepted, isRecording, remoteAudioStream, isOpen, paused, renderPulseIcon])\n\n const renderStreamingContent = useCallback(() => {\n // Show skeleton while videoSources are loading or if streaming source number is not set yet\n if (!videoSources || Object.keys(videoSources).length === 0 || !streamingSourceNumber) {\n return <VideoStreamingSkeleton className='pi-w-full pi-h-40 pi-mt-4' />\n }\n\n // Find the streaming source\n const source = Object.values(videoSources).find(\n (source) => source.extension === streamingSourceNumber,\n )\n\n // If source doesn't exist, show empty state\n if (!source) {\n return <VideoStreamingEmptyState className='pi-w-full pi-h-40 pi-mt-4' />\n }\n\n // Check if image is available\n const hasImage = sourceImages[source.id] || source.image\n\n // If no image available, show empty state\n if (!hasImage) {\n return <VideoStreamingEmptyState className='pi-w-full pi-h-40 pi-mt-4' />\n }\n\n // If we have an image, show StreamingImage component\n return <StreamingImage />\n }, [streamingSourceNumber, videoSources, sourceImages])\n\n // Early return AFTER all hooks have been called\n if (latestAlert !== null) {\n return null\n }\n\n const setVideoStreamingAnswer = () => {\n answerIncomingCall()\n // Set view as video streaming answer with a small delay\n setTimeout(() => {\n dispatch.island.setIslandView('streamingAnswer')\n }, 200)\n }\n\n return (\n <div className='pi-bg-red pi-content-center pi-justify-center'>\n <div className={callViewClasses}>\n {shouldShowStreamingImage ? (\n <>\n <div className='pi-flex pi-items-center pi-justify-between pi-w-full pi-gap-2'>\n <div className='pi-flex pi-items-center pi-gap-4 pi-min-w-0 pi-flex-1'>\n {renderStatusIcon()}\n <div className='pi-flex pi-flex-col pi-justify-center pi-space-y-2 pi-min-w-0'>\n <DisplayName />\n <Number />\n </div>\n </div>\n\n <div className='pi-flex pi-gap-2 pi-flex-shrink-0'>\n <Hangup description={t('Tooltip.Hangup')} />\n {!outgoing && (\n <Button\n onClick={() => setVideoStreamingAnswer()}\n variant='green'\n data-tooltip-id='tooltip-answer'\n data-tooltip-content={t('Tooltip.Answer') || ''}\n >\n <FontAwesomeIcon className='pi-w-5 pi-h-5' icon={faPhone} />\n </Button>\n )}\n {/* Open door button - only show if cmdOpen is valid */}\n {unlockData?.canUnlock && (\n <Button\n variant='default'\n onClick={handleStreamingUnlock}\n data-tooltip-id='tooltip-unlock'\n data-tooltip-content={unlockData?.tooltipText}\n >\n <FontAwesomeIcon className='pi-w-5 pi-h-5' icon={faUnlock} />\n </Button>\n )}\n </div>\n </div>\n\n {renderStreamingContent()}\n </>\n ) : (\n <>\n <div className={topContentClasses}>\n {renderStatusIcon()}\n {renderDetails()}\n\n {!isOpen && !accepted && <DisplayName />}\n {!isOpen && accepted && <Timer startTime={startTime} isNotAlwaysWhite />}\n\n {renderAudioIndicator()}\n </div>\n\n {isOpen && (\n <>\n <div className={`${!(isListen || isIntrude) ? 'pi-grid pi-gap-y-5' : ''}`}>\n {accepted && <Actions />}\n <div className={`pi-grid ${getGridClasses} pi-gap-3.5`}>\n <Hangup description={t('Tooltip.Hangup and transfer')} />\n\n {isAnswerVisible(outgoing, accepted) && (\n <Button\n onClick={answerIncomingCall}\n variant='green'\n data-tooltip-id='tooltip-answer-left'\n data-tooltip-content={t('Tooltip.Answer') || ''}\n >\n <FontAwesomeIcon className='pi-w-6 pi-h-6' icon={faPhone} />\n </Button>\n )}\n </div>\n </div>\n </>\n )}\n </>\n )}\n </div>\n <CustomThemedTooltip id='tooltip-answer-left' place='left' />\n <CustomThemedTooltip id='tooltip-answer' place='left' />\n <CustomThemedTooltip id='tooltip-unlock' place='left' />\n <CustomThemedTooltip id='tooltip-display-name' place='bottom' />\n <CustomThemedTooltip id='tooltip-queue' place='bottom' />\n </div>\n )\n}\n\nexport default memo(CallView)\n\nexport interface CallViewProps {}\n"],"names":["isAnswerVisible","outgoing","accepted","Details","memo","_a","children","_b","className","React","createElement","concat","displayName","QueueBadge","label","tooltipContent","undefined","FontAwesomeIcon","icon","faUsers","IncomingQueueBadge","t","useTranslation","dispatch","useDispatch","currentCall","useSelector","state","incoming","startTime","paused","number","isRecording","username","streamingSourceNumber","queueName","queueNumber","throughQueue","island","isOpen","isFromStreaming","remoteAudioStream","webrtc","listenState","listen","isListen","isIntrude","isListenExtension","isIntrudeExtension","alertsData","alerts","currentUser","_c","streaming","videoSources","sourceImages","activeAlerts","useMemo","Object","values","filter","alert","active","latestAlert","length","shouldShowStreamingImage","unlockData","canUnlock","tooltipText","source","find","extension","Boolean","cmdOpen","trim","description","hasValidUsername","queueLabel","queueTooltipContent","shouldShowIncomingQueueBadge","renderLandlinePhoneDiv","useCallback","size","faOfficePhone","default_device","renderPulseIcon","color","sizeClasses","innerSizeClasses","animationSizeClasses","colorClasses","textColorClasses","faCircle","callViewClasses","baseClasses","topContentClasses","itemsAlign","getGridClasses","renderStatusIcon","iconSizeClass","faEarListen","faHandPointUp","Avatar","faArrowLeft","renderDetails","isPhysical","Timer","isNotAlwaysWhite","DisplayName","Number","renderAudioIndicator","AudioBars","audioStream","renderStreamingContent","keys","VideoStreamingSkeleton","id","image","StreamingImage","VideoStreamingEmptyState","Fragment","Hangup","Button","onClick","answerIncomingCall","setTimeout","setIslandView","variant","faPhone","handleStreamingUnlock","faUnlock","Actions","CustomThemedTooltip","place"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../../../src/components/CallView/index.tsx"],"sourcesContent":["// Copyright (C) 2024 Nethesis S.r.l.\n// SPDX-License-Identifier: AGPL-3.0-or-later\n\nimport React, { type FC, useMemo, useCallback, memo } from 'react'\nimport { useSelector } from 'react-redux'\nimport { RootState, Dispatch } from '../../store'\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome'\nimport {\n faPhone,\n faEarListen,\n faHandPointUp,\n faArrowLeft,\n faCircle,\n faUnlock,\n faUsers,\n} 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'\nimport { useTranslation } from 'react-i18next'\nimport { faOfficePhone } from '@nethesis/nethesis-solid-svg-icons'\nimport { isPhysical } from '../../lib/user/default_device'\nimport { CustomThemedTooltip } from '../CustomThemedTooltip'\nimport StreamingImage from '../StreamingImage'\nimport VideoStreamingSkeleton from '../VideoStreamingSkeleton'\nimport VideoStreamingEmptyState from '../VideoStreamingEmptyState'\nimport { handleStreamingUnlock } from '../../utils'\nimport { useDispatch } from 'react-redux'\n\nfunction isAnswerVisible(outgoing: boolean, accepted: boolean): boolean {\n return !outgoing && !accepted\n}\n\nconst Details = memo(\n ({\n children,\n className = 'pi-gap-1 pi-grid-rows-2',\n }: {\n children: React.ReactNode\n className?: string\n }) => (\n <div className={`pi-grid pi-min-w-0 pi-self-center pi-grid-cols-1 ${className}`}>\n {children}\n </div>\n ),\n)\nDetails.displayName = 'Details'\n\nconst QueueBadge = memo(\n ({\n label,\n tooltipContent,\n }: {\n label: string\n tooltipContent?: string\n }) => {\n if (!label) {\n return null\n }\n\n return (\n <span\n className='pi-inline-flex pi-flex-none pi-items-center pi-justify-center pi-text-iconSecondary'\n data-tooltip-id={tooltipContent ? 'tooltip-queue' : undefined}\n data-tooltip-content={tooltipContent || ''}\n >\n <FontAwesomeIcon icon={faUsers} className='pi-h-4 pi-w-4' />\n </span>\n )\n },\n)\nQueueBadge.displayName = 'QueueBadge'\n\nconst IncomingQueueBadge = memo(\n ({\n label,\n tooltipContent,\n }: {\n label: string\n tooltipContent?: string\n }) => {\n if (!label) {\n return null\n }\n\n return (\n <span\n className='pi-inline-flex pi-w-fit pi-max-w-full pi-flex-none pi-items-center pi-gap-1.5 pi-self-start pi-rounded-full pi-bg-iconSecondary pi-px-2.5 pi-py-1 pi-text-xs pi-font-medium pi-leading-none pi-text-iconWhite dark:pi-bg-iconSecondaryDark'\n data-tooltip-id={tooltipContent ? 'tooltip-queue' : undefined}\n data-tooltip-content={tooltipContent || ''}\n aria-label={tooltipContent || label}\n >\n <FontAwesomeIcon icon={faUsers} className='pi-h-3 pi-w-3 pi-flex-none' />\n <span className='pi-block pi-max-w-28 pi-truncate'>{label}</span>\n </span>\n )\n },\n)\nIncomingQueueBadge.displayName = 'IncomingQueueBadge'\n\n/**\n * The main view to manage calls, the starting point for calls actions flows\n */\nconst CallView: FC<CallViewProps> = () => {\n const { t } = useTranslation()\n const dispatch = useDispatch<Dispatch>()\n\n const currentCall = useSelector((state: RootState) => state.currentCall)\n const {\n incoming,\n accepted,\n outgoing,\n startTime,\n paused,\n number,\n isRecording,\n username,\n streamingSourceNumber,\n queueName,\n queueNumber,\n throughQueue,\n } = currentCall\n\n const { isOpen, isFromStreaming } = useSelector((state: RootState) => state.island)\n const { remoteAudioStream } = useSelector((state: RootState) => state.webrtc)\n const listenState = useSelector((state: RootState) => state.listen)\n const { isListen, isIntrude, isListenExtension, isIntrudeExtension } = listenState\n const { data: alertsData } = useSelector((state: RootState) => state.alerts)\n const currentUser = useSelector((state: RootState) => state.currentUser)\n const { videoSources, sourceImages } = useSelector((state: RootState) => state.streaming)\n\n const activeAlerts = useMemo(\n () => Object.values(alertsData).filter((alert: any) => alert.active),\n [alertsData],\n )\n\n const latestAlert = useMemo(\n () => (activeAlerts.length > 0 ? activeAlerts[activeAlerts.length - 1] : null),\n [activeAlerts],\n )\n\n const shouldShowStreamingImage = useMemo(\n () => isFromStreaming && streamingSourceNumber && !accepted,\n [isFromStreaming, streamingSourceNumber, accepted],\n )\n\n // Check if unlock button should be shown and get tooltip text\n const unlockData = useMemo(() => {\n if (!streamingSourceNumber || !videoSources) return { canUnlock: false, tooltipText: '' }\n\n const source = Object.values(videoSources).find(\n (source) => source?.extension === streamingSourceNumber,\n )\n\n const canUnlock = Boolean(source?.cmdOpen && source?.cmdOpen.trim() !== '')\n const tooltipText =\n canUnlock && source ? `${t('VideoStreaming.Open')}: ${source?.description}` : ''\n\n return { canUnlock, tooltipText }\n }, [streamingSourceNumber, videoSources, t])\n\n const hasValidUsername = useMemo(() => username !== '' && username !== 'undefined', [username])\n\n const queueLabel = useMemo(() => queueName || queueNumber || '', [queueName, queueNumber])\n\n const queueTooltipContent = useMemo(() => {\n if (!throughQueue || !queueLabel) {\n return ''\n }\n\n return `${t('Common.Queue')}: ${queueLabel}`\n }, [throughQueue, queueLabel, t])\n\n const shouldShowIncomingQueueBadge = useMemo(\n () => Boolean(incoming && !accepted && throughQueue && queueLabel),\n [accepted, incoming, throughQueue, queueLabel],\n )\n\n const renderLandlinePhoneDiv = useCallback(\n () => (\n <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 <FontAwesomeIcon size='sm' icon={faOfficePhone} className='pi-mr-1' />\n <span className='pi-max-w-16 pi-truncate'>\n {currentUser?.default_device?.description || t('Common.Physical phone')}\n </span>\n </div>\n ),\n [currentUser?.default_device?.description, t],\n )\n\n const renderPulseIcon = useCallback(\n (color: string) => {\n const sizeClasses = !isOpen ? 'pi-h-6 pi-w-6' : 'pi-h-12 pi-w-12'\n const innerSizeClasses = !isOpen ? 'pi-h-4 pi-w-4 pi-rounded-full' : 'pi-h-8'\n const animationSizeClasses = !isOpen ? 'pi-h-6 pi-w-6' : 'pi-w-8 pi-h-8'\n const colorClasses = color === 'red' ? 'pi-bg-red-400' : 'pi-bg-green-400'\n const textColorClasses = color === 'red' ? 'pi-text-red-500' : 'pi-text-green-500'\n\n return (\n <div className={`${sizeClasses} pi-flex pi-justify-center pi-items-center`}>\n <div\n className={`${innerSizeClasses} pi-w-fit pi-flex pi-justify-center pi-items-center pi-gap-1 pi-overflow-hidden`}\n >\n <span\n className={`${animationSizeClasses} pi-animate-ping pi-absolute pi-inline-flex pi-rounded-full ${colorClasses} pi-opacity-75`}\n ></span>\n <FontAwesomeIcon\n className={`pi-w-4 pi-h-6 pi-rotate-45 ${textColorClasses}`}\n icon={faCircle}\n />\n </div>\n </div>\n )\n },\n [isOpen],\n )\n\n const callViewClasses = useMemo(() => {\n let baseClasses = 'pi-grid pi-items-center'\n\n if (isOpen) {\n baseClasses = shouldShowIncomingQueueBadge ? 'pi-grid pi-items-center' : 'pi-grid pi-items-start'\n\n if (accepted) {\n baseClasses += ' pi-grid-rows-[72px_1fr]'\n } else if (incoming) {\n baseClasses += ' pi-grid-cols-[256px_114px]'\n } else if (outgoing) {\n baseClasses += ' pi-grid-cols-[1fr_84px]'\n }\n }\n\n return shouldShowStreamingImage ? 'pi-flex pi-flex-col' : baseClasses\n }, [isOpen, accepted, incoming, outgoing, shouldShowStreamingImage, shouldShowIncomingQueueBadge])\n\n const topContentClasses = useMemo(() => {\n let columns = ''\n\n if (isOpen && !accepted && outgoing) {\n columns = 'pi-grid-cols-[48px_1fr]'\n } else if (isOpen && !accepted && incoming) {\n columns = 'pi-grid-cols-[48px_1fr_1px]'\n } else if (isOpen && accepted) {\n columns = 'pi-grid-cols-[48px_164px_48px]'\n } else if (!isOpen && !accepted) {\n columns = 'pi-grid-cols-[24px_102px]'\n } else {\n columns = 'pi-grid-cols-[24px_66px_24px]'\n }\n\n const itemsAlign = isOpen && !shouldShowIncomingQueueBadge ? 'start' : 'center'\n\n return `pi-grid ${columns} pi-gap-${isOpen ? '5' : '3'} pi-items-${itemsAlign} pi-justify-center pi-w-full`\n }, [isOpen, accepted, incoming, outgoing, shouldShowIncomingQueueBadge])\n\n const getGridClasses = useMemo(() => {\n if (shouldShowStreamingImage) return 'pi-grid-cols-3'\n if (isAnswerVisible(outgoing, accepted)) return 'pi-grid-cols-2'\n if (accepted) return 'pi-grid-cols-1 pi-justify-items-center'\n return 'pi-grid-cols-1 pi-justify-items-end'\n }, [shouldShowStreamingImage, outgoing, accepted])\n\n const renderStatusIcon = useCallback(() => {\n const iconSizeClass = isOpen\n ? 'pi-relative pi-z-30 pi-h-12 pi-w-12 pi-rounded-sm pi-bg-cover'\n : 'pi-relative pi-z-30 pi-h-6 pi-w-6 pi-rounded-sm pi-bg-cover'\n\n if (isListen) {\n return <FontAwesomeIcon className={iconSizeClass} icon={faEarListen} />\n }\n\n if (isIntrude) {\n return <FontAwesomeIcon className={iconSizeClass} icon={faHandPointUp} />\n }\n\n if (number !== '' && hasValidUsername) {\n return <Avatar />\n }\n\n if (incoming && !hasValidUsername) {\n return <FontAwesomeIcon className={`${iconSizeClass} pi--rotate-45`} icon={faArrowLeft} />\n }\n\n if (accepted && !outgoing && !hasValidUsername) {\n return <FontAwesomeIcon className={`${iconSizeClass} pi--rotate-45`} icon={faArrowLeft} />\n }\n\n if (outgoing && !hasValidUsername) {\n return (\n <FontAwesomeIcon className={`${iconSizeClass} pi-rotate-[135deg]`} icon={faArrowLeft} />\n )\n }\n\n return null\n }, [isOpen, isListen, isIntrude, number, hasValidUsername, incoming, outgoing, accepted])\n\n const renderDetails = useCallback(() => {\n if (!isOpen) return null\n\n if (isIntrude) {\n return (\n <Details>\n <span className='pi-justify-center pi-w-fit pi-relative pi-inline-block pi-font-bold pi-text-base'>\n {t('Common.Intrude')}\n {isIntrudeExtension ? ` - ${isIntrudeExtension}` : ''}\n </span>\n {accepted ? (\n !isPhysical() ? (\n <Timer startTime={startTime} isNotAlwaysWhite />\n ) : (\n renderLandlinePhoneDiv()\n )\n ) : isIntrudeExtension ? (\n `${isIntrudeExtension}`\n ) : (\n ''\n )}\n </Details>\n )\n }\n\n if (isListen) {\n return (\n <Details>\n <span className='pi-justify-center pi-w-fit pi-relative pi-inline-block pi-font-bold pi-text-base'>\n {t('Common.Listen')}\n {isListenExtension ? ` - ${isListenExtension}` : ''}\n </span>\n {accepted ? (\n !isPhysical() ? (\n <Timer startTime={startTime} isNotAlwaysWhite />\n ) : (\n renderLandlinePhoneDiv()\n )\n ) : isListenExtension ? (\n `${isListenExtension}`\n ) : (\n ''\n )}\n </Details>\n )\n }\n\n if (shouldShowIncomingQueueBadge) {\n return (\n <Details className='pi-grid-rows-[20px_24px_24px] pi-gap-0.5'>\n <IncomingQueueBadge label={queueLabel} tooltipContent={queueTooltipContent} />\n <DisplayName />\n <Number />\n </Details>\n )\n }\n\n return (\n <Details>\n {accepted && throughQueue && queueLabel ? (\n <div className='pi-flex pi-min-w-0 pi-items-center pi-gap-2'>\n <div className='pi-min-w-0 pi-flex-1'>\n <DisplayName />\n </div>\n <QueueBadge label={queueLabel} tooltipContent={queueTooltipContent} />\n </div>\n ) : (\n <DisplayName />\n )}\n {accepted ? (\n !isPhysical() ? (\n <Timer startTime={startTime} isNotAlwaysWhite />\n ) : (\n renderLandlinePhoneDiv()\n )\n ) : (\n <Number />\n )}\n </Details>\n )\n }, [\n isOpen,\n isIntrude,\n isListen,\n accepted,\n startTime,\n isIntrudeExtension,\n isListenExtension,\n t,\n renderLandlinePhoneDiv,\n accepted,\n throughQueue,\n queueLabel,\n queueTooltipContent,\n shouldShowIncomingQueueBadge,\n ])\n\n const renderAudioIndicator = useCallback(() => {\n if (accepted && isRecording) {\n return renderPulseIcon('red')\n }\n\n if (accepted && remoteAudioStream && !isPhysical()) {\n return (\n <AudioBars\n audioStream={remoteAudioStream}\n paused={paused}\n size={isOpen ? 'large' : 'small'}\n />\n )\n }\n\n if (accepted && isPhysical()) {\n return renderPulseIcon('green')\n }\n\n return null\n }, [accepted, isRecording, remoteAudioStream, isOpen, paused, renderPulseIcon])\n\n const renderStreamingContent = useCallback(() => {\n // Show skeleton while videoSources are loading or if streaming source number is not set yet\n if (!videoSources || Object.keys(videoSources).length === 0 || !streamingSourceNumber) {\n return <VideoStreamingSkeleton className='pi-w-full pi-h-40 pi-mt-4' />\n }\n\n // Find the streaming source\n const source = Object.values(videoSources).find(\n (source) => source.extension === streamingSourceNumber,\n )\n\n // If source doesn't exist, show empty state\n if (!source) {\n return <VideoStreamingEmptyState className='pi-w-full pi-h-40 pi-mt-4' />\n }\n\n // Check if image is available\n const hasImage = sourceImages[source.id] || source.image\n\n // If no image available, show empty state\n if (!hasImage) {\n return <VideoStreamingEmptyState className='pi-w-full pi-h-40 pi-mt-4' />\n }\n\n // If we have an image, show StreamingImage component\n return <StreamingImage />\n }, [streamingSourceNumber, videoSources, sourceImages])\n\n // Early return AFTER all hooks have been called\n if (latestAlert !== null) {\n return null\n }\n\n const setVideoStreamingAnswer = () => {\n answerIncomingCall()\n // Set view as video streaming answer with a small delay\n setTimeout(() => {\n dispatch.island.setIslandView('streamingAnswer')\n }, 200)\n }\n\n return (\n <div className='pi-bg-red pi-content-center pi-justify-center'>\n <div className={callViewClasses}>\n {shouldShowStreamingImage ? (\n <>\n <div className='pi-flex pi-items-center pi-justify-between pi-w-full pi-gap-2'>\n <div className='pi-flex pi-items-center pi-gap-4 pi-min-w-0 pi-flex-1'>\n {renderStatusIcon()}\n <div className='pi-flex pi-flex-col pi-justify-center pi-space-y-2 pi-min-w-0'>\n <DisplayName />\n <Number />\n </div>\n </div>\n\n <div className='pi-flex pi-gap-2 pi-flex-shrink-0'>\n <Hangup description={t('Tooltip.Hangup')} />\n {!outgoing && (\n <Button\n onClick={() => setVideoStreamingAnswer()}\n variant='green'\n data-tooltip-id='tooltip-answer'\n data-tooltip-content={t('Tooltip.Answer') || ''}\n >\n <FontAwesomeIcon className='pi-w-5 pi-h-5' icon={faPhone} />\n </Button>\n )}\n {/* Open door button - only show if cmdOpen is valid */}\n {unlockData?.canUnlock && (\n <Button\n variant='default'\n onClick={handleStreamingUnlock}\n data-tooltip-id='tooltip-unlock'\n data-tooltip-content={unlockData?.tooltipText}\n >\n <FontAwesomeIcon className='pi-w-5 pi-h-5' icon={faUnlock} />\n </Button>\n )}\n </div>\n </div>\n\n {renderStreamingContent()}\n </>\n ) : (\n <>\n <div className={topContentClasses}>\n {renderStatusIcon()}\n {renderDetails()}\n\n {!isOpen && !accepted && <DisplayName />}\n {!isOpen && accepted && <Timer startTime={startTime} isNotAlwaysWhite />}\n\n {renderAudioIndicator()}\n </div>\n\n {isOpen && (\n <>\n <div className={`${!(isListen || isIntrude) ? 'pi-grid pi-gap-y-5' : ''}`}>\n {accepted && <Actions />}\n <div className={`pi-grid ${getGridClasses} pi-gap-3.5`}>\n <Hangup description={t('Tooltip.Hangup and transfer')} />\n\n {isAnswerVisible(outgoing, accepted) && (\n <Button\n onClick={answerIncomingCall}\n variant='green'\n data-tooltip-id='tooltip-answer-left'\n data-tooltip-content={t('Tooltip.Answer') || ''}\n >\n <FontAwesomeIcon className='pi-w-6 pi-h-6' icon={faPhone} />\n </Button>\n )}\n </div>\n </div>\n </>\n )}\n </>\n )}\n </div>\n <CustomThemedTooltip id='tooltip-answer-left' place='left' />\n <CustomThemedTooltip id='tooltip-answer' place='left' />\n <CustomThemedTooltip id='tooltip-unlock' place='left' />\n <CustomThemedTooltip id='tooltip-display-name' place='bottom' />\n <CustomThemedTooltip id='tooltip-queue' place='bottom' />\n </div>\n )\n}\n\nexport default memo(CallView)\n\nexport interface CallViewProps {}\n"],"names":["isAnswerVisible","outgoing","accepted","Details","memo","_a","children","_b","className","React","createElement","concat","displayName","QueueBadge","label","tooltipContent","undefined","FontAwesomeIcon","icon","faUsers","IncomingQueueBadge","t","useTranslation","dispatch","useDispatch","currentCall","useSelector","state","incoming","startTime","paused","number","isRecording","username","streamingSourceNumber","queueName","queueNumber","throughQueue","island","isOpen","isFromStreaming","remoteAudioStream","webrtc","listenState","listen","isListen","isIntrude","isListenExtension","isIntrudeExtension","alertsData","alerts","currentUser","_c","streaming","videoSources","sourceImages","activeAlerts","useMemo","Object","values","filter","alert","active","latestAlert","length","shouldShowStreamingImage","unlockData","canUnlock","tooltipText","source","find","extension","Boolean","cmdOpen","trim","description","hasValidUsername","queueLabel","queueTooltipContent","shouldShowIncomingQueueBadge","renderLandlinePhoneDiv","useCallback","size","faOfficePhone","default_device","renderPulseIcon","color","sizeClasses","innerSizeClasses","animationSizeClasses","colorClasses","textColorClasses","faCircle","callViewClasses","baseClasses","topContentClasses","itemsAlign","getGridClasses","renderStatusIcon","iconSizeClass","faEarListen","faHandPointUp","Avatar","faArrowLeft","renderDetails","isPhysical","Timer","isNotAlwaysWhite","DisplayName","Number","renderAudioIndicator","AudioBars","audioStream","renderStreamingContent","keys","VideoStreamingSkeleton","id","image","StreamingImage","VideoStreamingEmptyState","Fragment","Hangup","Button","onClick","answerIncomingCall","setTimeout","setIslandView","variant","faPhone","handleStreamingUnlock","faUnlock","Actions","CustomThemedTooltip","place"],"mappings":"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"}
@@ -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("../../node_modules/@fortawesome/react-fontawesome/index.es.js"),r=require("../../node_modules/@fortawesome/free-solid-svg-icons/index.mjs.js"),n=require("../Button.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 i=require("../../node_modules/react-i18next/dist/es/useTranslation.js");require("../../node_modules/@babel/runtime/helpers/slicedToArray.js");var a=require("../CustomThemedTooltip.js"),l=require("../CallView/Timer.js"),o=require("../../lib/phone/call.js"),u=require("../../node_modules/react-redux/es/hooks/useSelector.js"),s=require("../../node_modules/react-redux/es/hooks/useDispatch.js");function c(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var d=c(e),p=function(e){var c,p,m=u.useSelector((function(e){return e.conference})).usersList,f=u.useSelector((function(e){return e.conference})),v=f.isOwnerInside,x=f.conferenceId,h=s.useDispatch(),b=u.useSelector((function(e){return e.avatars})).avatars,g=u.useSelector((function(e){return e.users})).extensions,y=i.useTranslation().t,j=function(e){var t;return e&&b&&g&&(null===(t=g[e])||void 0===t?void 0:t.username)&&b[g[e].username]?"".concat(b[g[e].username]):null},k=function(e){var t,r,n=e.user;return d.default.createElement("div",{className:"pi-inline-flex pi-items-center pi-justify-center pi-w-8 pi-h-8 pi-rounded-full pi-bg-gray-500"},j(n.extenId)?d.default.createElement("div",{className:"pi-rounded-full pi-w-8 pi-h-8",style:{backgroundImage:"url(".concat(j(null==n?void 0:n.extenId),")"),backgroundRepeat:"no-repeat",backgroundSize:"contain",backgroundPosition:"center"}}):d.default.createElement("span",{className:"pi-text-sm pi-font-medium pi-text-white"},(t=null==n?void 0:n.name,r=null==n?void 0:n.extenId,t?t.split(" ").map((function(e){return e[0]})).join("").toUpperCase().slice(0,2):r?r.substring(0,2).toUpperCase():"??")))};return d.default.createElement(d.default.Fragment,null,d.default.createElement("div",{className:"".concat(v?"":"pi-space-y-1"," pi-flex pi-flex-col pi-mt-2 pi-h-32 pi-overflow-y-auto pi-scrollbar-thin pi-scrollbar-thumb-gray-400 pi-dark:scrollbar-thumb-gray-400 pi-scrollbar-thumb-rounded-full pi-scrollbar-thumb-opacity-50 dark:pi-scrollbar-track-gray-900 pi-scrollbar-track-gray-200 pi-dark:scrollbar-track-gray-900 pi-scrollbar-track-rounded-full pi-scrollbar-track-opacity-25")},m&&Object.values(m).filter((function(e){return!(null==e?void 0:e.owner)})).length>0?null===(p=null===(c=null==Object?void 0:Object.values(m))||void 0===c?void 0:c.filter((function(e){return!(null==e?void 0:e.owner)})))||void 0===p?void 0:p.map((function(e){return d.default.createElement("div",{key:"".concat(null==e?void 0:e.id,"-").concat(null==e?void 0:e.extenId),className:"".concat(v?"":"pi-py-1"," pi-flex pi-items-center pi-justify-between pi-px-3 pi-rounded-lg")},d.default.createElement("div",{className:"pi-flex pi-items-center pi-gap-3 pi-truncate"},d.default.createElement(k,{user:e}),d.default.createElement("span",{className:"pi-font-medium pi-text-sm pi-text-gray-700 dark:pi-text-gray-200 pi-truncate pi-w-32"},(null==e?void 0:e.name)||(null==e?void 0:e.extenId))),v?d.default.createElement(d.default.Fragment,null,d.default.createElement(n.Button,{variant:"transparent","data-tooltip-id":"conference-user-mute","data-tooltip-content":(null==e?void 0:e.muted)?y("Conference.Unmute participant"):y("Conference.Mute participant"),onClick:function(){return t=null==e?void 0:e.id,r=null==e?void 0:e.extenId,n=null==e?void 0:e.muted,h.conference.toggleUserMuted({extenId:r}),void o.muteUserConference(x,t,n);var t,r,n}},d.default.createElement(t.FontAwesomeIcon,{className:"pi-h-4 pi-w-4 ".concat((null==e?void 0:e.muted)?"pi-text-red-500":"pi-text-gray-600 dark:pi-text-gray-300"),icon:(null==e?void 0:e.muted)?r.faMicrophoneSlash:r.faMicrophone})),d.default.createElement(n.Button,{variant:"transparent","data-tooltip-id":"conference-user-remove","data-tooltip-content":y("Conference.Remove participant"),onClick:function(){return t=null==e?void 0:e.extenId,void o.removeUserConference(x,t);var t}},d.default.createElement(t.FontAwesomeIcon,{className:"pi-h-4 pi-w-4 pi-text-gray-600 dark:pi-text-gray-300",icon:r.faTrash}))):d.default.createElement(d.default.Fragment,null,d.default.createElement(t.FontAwesomeIcon,{className:"pi-h-5 pi-w-5 pi-text-gray-600 dark:pi-text-gray-300",icon:e.muted?r.faMicrophoneSlash:r.faPause}),d.default.createElement(l.default,{size:"small",startTime:String(null===Math||void 0===Math?void 0:Math.floor(null!==(null==e?void 0:e.joinTime)&&(null==e?void 0:e.joinTime)?(null==e?void 0:e.joinTime)/1e3:0)),isNotAlwaysWhite:!0,isInsideConference:!0})))})):d.default.createElement("div",{className:"pi-flex pi-flex-col pi-justify-center pi-items-center pi-h-20 pi-text-gray-500 dark:pi-text-gray-400"},d.default.createElement("span",null,y("Conference.No participants")),d.default.createElement("span",{className:"pi-text-xs pi-mt-1"},y("Conference.Add participants to conference")))),d.default.createElement(a.CustomThemedTooltip,{className:"pi-z-1000",id:"conference-user-remove",place:"left"}),d.default.createElement(a.CustomThemedTooltip,{className:"pi-z-1000",id:"conference-user-mute",place:"left"}))};exports.ConferenceUsersList=p,exports.default=p;
1
+ "use strict";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"),r=require("../../node_modules/@fortawesome/free-solid-svg-icons/index.mjs.js"),n=require("../Button.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 i=require("../../node_modules/react-i18next/dist/es/useTranslation.js");require("../../node_modules/@babel/runtime/helpers/slicedToArray.js");var a=require("../CustomThemedTooltip.js"),l=require("../CallView/Timer.js"),o=require("../../lib/phone/call.js"),u=require("../../node_modules/react-redux/es/hooks/useSelector.js"),s=require("../../node_modules/react-redux/es/hooks/useDispatch.js");function c(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var d=c(e),p=function(e){var c,p,m=u.useSelector(function(e){return e.conference}).usersList,f=u.useSelector(function(e){return e.conference}),v=f.isOwnerInside,x=f.conferenceId,h=s.useDispatch(),b=u.useSelector(function(e){return e.avatars}).avatars,g=u.useSelector(function(e){return e.users}).extensions,y=i.useTranslation().t,j=function(e){var t;return e&&b&&g&&(null===(t=g[e])||void 0===t?void 0:t.username)&&b[g[e].username]?"".concat(b[g[e].username]):null},k=function(e){var t,r,n=e.user;return d.default.createElement("div",{className:"pi-inline-flex pi-items-center pi-justify-center pi-w-8 pi-h-8 pi-rounded-full pi-bg-gray-500"},j(n.extenId)?d.default.createElement("div",{className:"pi-rounded-full pi-w-8 pi-h-8",style:{backgroundImage:"url(".concat(j(null==n?void 0:n.extenId),")"),backgroundRepeat:"no-repeat",backgroundSize:"contain",backgroundPosition:"center"}}):d.default.createElement("span",{className:"pi-text-sm pi-font-medium pi-text-white"},(t=null==n?void 0:n.name,r=null==n?void 0:n.extenId,t?t.split(" ").map(function(e){return e[0]}).join("").toUpperCase().slice(0,2):r?r.substring(0,2).toUpperCase():"??")))};return d.default.createElement(d.default.Fragment,null,d.default.createElement("div",{className:"".concat(v?"":"pi-space-y-1"," pi-flex pi-flex-col pi-mt-2 pi-h-32 pi-overflow-y-auto pi-scrollbar-thin pi-scrollbar-thumb-gray-400 pi-dark:scrollbar-thumb-gray-400 pi-scrollbar-thumb-rounded-full pi-scrollbar-thumb-opacity-50 dark:pi-scrollbar-track-gray-900 pi-scrollbar-track-gray-200 pi-dark:scrollbar-track-gray-900 pi-scrollbar-track-rounded-full pi-scrollbar-track-opacity-25")},m&&Object.values(m).filter(function(e){return!(null==e?void 0:e.owner)}).length>0?null===(p=null===(c=null==Object?void 0:Object.values(m))||void 0===c?void 0:c.filter(function(e){return!(null==e?void 0:e.owner)}))||void 0===p?void 0:p.map(function(e){return d.default.createElement("div",{key:"".concat(null==e?void 0:e.id,"-").concat(null==e?void 0:e.extenId),className:"".concat(v?"":"pi-py-1"," pi-flex pi-items-center pi-justify-between pi-px-3 pi-rounded-lg")},d.default.createElement("div",{className:"pi-flex pi-items-center pi-gap-3 pi-truncate"},d.default.createElement(k,{user:e}),d.default.createElement("span",{className:"pi-font-medium pi-text-sm pi-text-gray-700 dark:pi-text-gray-200 pi-truncate pi-w-32"},(null==e?void 0:e.name)||(null==e?void 0:e.extenId))),v?d.default.createElement(d.default.Fragment,null,d.default.createElement(n.Button,{variant:"transparent","data-tooltip-id":"conference-user-mute","data-tooltip-content":(null==e?void 0:e.muted)?y("Conference.Unmute participant"):y("Conference.Mute participant"),onClick:function(){return t=null==e?void 0:e.id,r=null==e?void 0:e.extenId,n=null==e?void 0:e.muted,h.conference.toggleUserMuted({extenId:r}),void o.muteUserConference(x,t,n);var t,r,n}},d.default.createElement(t.FontAwesomeIcon,{className:"pi-h-4 pi-w-4 ".concat((null==e?void 0:e.muted)?"pi-text-red-500":"pi-text-gray-600 dark:pi-text-gray-300"),icon:(null==e?void 0:e.muted)?r.faMicrophoneSlash:r.faMicrophone})),d.default.createElement(n.Button,{variant:"transparent","data-tooltip-id":"conference-user-remove","data-tooltip-content":y("Conference.Remove participant"),onClick:function(){return t=null==e?void 0:e.extenId,void o.removeUserConference(x,t);var t}},d.default.createElement(t.FontAwesomeIcon,{className:"pi-h-4 pi-w-4 pi-text-gray-600 dark:pi-text-gray-300",icon:r.faTrash}))):d.default.createElement(d.default.Fragment,null,d.default.createElement(t.FontAwesomeIcon,{className:"pi-h-5 pi-w-5 pi-text-gray-600 dark:pi-text-gray-300",icon:e.muted?r.faMicrophoneSlash:r.faPause}),d.default.createElement(l.default,{size:"small",startTime:String(null===Math||void 0===Math?void 0:Math.floor(null!==(null==e?void 0:e.joinTime)&&(null==e?void 0:e.joinTime)?(null==e?void 0:e.joinTime)/1e3:0)),isNotAlwaysWhite:!0,isInsideConference:!0})))}):d.default.createElement("div",{className:"pi-flex pi-flex-col pi-justify-center pi-items-center pi-h-20 pi-text-gray-500 dark:pi-text-gray-400"},d.default.createElement("span",null,y("Conference.No participants")),d.default.createElement("span",{className:"pi-text-xs pi-mt-1"},y("Conference.Add participants to conference")))),d.default.createElement(a.CustomThemedTooltip,{className:"pi-z-1000",id:"conference-user-remove",place:"left"}),d.default.createElement(a.CustomThemedTooltip,{className:"pi-z-1000",id:"conference-user-mute",place:"left"}))};exports.ConferenceUsersList=p,exports.default=p;
2
2
  //# sourceMappingURL=ConferenceUsersList.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ConferenceUsersList.js","sources":["../../../src/components/ConferenceView/ConferenceUsersList.tsx"],"sourcesContent":["// Copyright (C) 2024 Nethesis S.r.l.\n// SPDX-License-Identifier: AGPL-3.0-or-later\n\nimport React, { type FC } from 'react'\nimport { useSelector, useDispatch } from 'react-redux'\nimport { RootState } from '../../store'\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome'\nimport {\n faMicrophone,\n faMicrophoneSlash,\n faPause,\n faTrash,\n} from '@fortawesome/free-solid-svg-icons'\nimport { Button } from '../Button'\nimport { useTranslation } from 'react-i18next'\nimport { CustomThemedTooltip } from '../CustomThemedTooltip'\nimport Timer from '../CallView/Timer'\nimport { muteUserConference, removeUserConference } from '../../lib/phone/call'\n\nexport interface ConferenceUsersListProps {}\n\nexport const ConferenceUsersList: FC<ConferenceUsersListProps> = ({}) => {\n const { usersList } = useSelector((state: RootState) => state.conference)\n const { isOwnerInside, conferenceId } = useSelector((state: RootState) => state.conference)\n const dispatch = useDispatch()\n\n const { avatars } = useSelector((state: RootState) => state.avatars)\n const { extensions } = useSelector((state: RootState) => state.users)\n const { t } = useTranslation()\n\n // Get user avatar URL\n const getAvatarUrl = (username: string | undefined): string | null => {\n if (!username || !avatars) return null\n\n // Try through extensions\n if (extensions && extensions[username]?.username && avatars[extensions[username].username]) {\n return `${avatars[extensions[username].username]}`\n }\n\n return null\n }\n\n // Generate initials from name\n const generateInitials = (name: string | undefined, username: string | undefined): string => {\n if (name) {\n return name\n .split(' ')\n .map((n: string) => n[0])\n .join('')\n .toUpperCase()\n .slice(0, 2)\n } else if (username) {\n return username.substring(0, 2).toUpperCase()\n }\n return '??'\n }\n\n const handleMuteParticipant = (userId: string, extensionId, isAlreadyMuted) => {\n dispatch.conference.toggleUserMuted({ extenId: extensionId })\n muteUserConference(conferenceId, userId, isAlreadyMuted)\n }\n\n const handleRemoveParticipant = (extenId: string) => {\n removeUserConference(conferenceId, extenId)\n }\n\n const UserAvatar = ({ user }: { user: any }) => (\n <div className='pi-inline-flex pi-items-center pi-justify-center pi-w-8 pi-h-8 pi-rounded-full pi-bg-gray-500'>\n {getAvatarUrl(user.extenId) ? (\n <div\n className='pi-rounded-full pi-w-8 pi-h-8'\n style={{\n backgroundImage: `url(${getAvatarUrl(user?.extenId)})`,\n backgroundRepeat: 'no-repeat',\n backgroundSize: 'contain',\n backgroundPosition: 'center',\n }}\n />\n ) : (\n <span className='pi-text-sm pi-font-medium pi-text-white'>\n {generateInitials(user?.name, user?.extenId)}\n </span>\n )}\n </div>\n )\n\n return (\n <>\n <div\n className={`${\n isOwnerInside ? '' : 'pi-space-y-1'\n } pi-flex pi-flex-col pi-mt-2 pi-h-32 pi-overflow-y-auto pi-scrollbar-thin pi-scrollbar-thumb-gray-400 pi-dark:scrollbar-thumb-gray-400 pi-scrollbar-thumb-rounded-full pi-scrollbar-thumb-opacity-50 dark:pi-scrollbar-track-gray-900 pi-scrollbar-track-gray-200 pi-dark:scrollbar-track-gray-900 pi-scrollbar-track-rounded-full pi-scrollbar-track-opacity-25`}\n >\n {usersList && Object.values(usersList).filter((user) => !user?.owner).length > 0 ? (\n Object?.values(usersList)\n ?.filter((user) => !user?.owner)\n ?.map((user) => (\n <div\n key={`${user?.id}-${user?.extenId}`}\n className={`${\n isOwnerInside ? '' : 'pi-py-1'\n } pi-flex pi-items-center pi-justify-between pi-px-3 pi-rounded-lg`}\n >\n <div className='pi-flex pi-items-center pi-gap-3 pi-truncate'>\n <UserAvatar user={user} />\n <span className='pi-font-medium pi-text-sm pi-text-gray-700 dark:pi-text-gray-200 pi-truncate pi-w-32'>\n {user?.name || user?.extenId}\n </span>\n </div>\n {isOwnerInside ? (\n <>\n <Button\n variant='transparent'\n data-tooltip-id='conference-user-mute'\n data-tooltip-content={\n user?.muted\n ? t('Conference.Unmute participant')\n : t('Conference.Mute participant')\n }\n onClick={() => handleMuteParticipant(user?.id, user?.extenId, user?.muted)}\n >\n <FontAwesomeIcon\n className={`pi-h-4 pi-w-4 ${\n user?.muted ? 'pi-text-red-500' : 'pi-text-gray-600 dark:pi-text-gray-300'\n }`}\n icon={user?.muted ? faMicrophoneSlash : faMicrophone}\n />\n </Button>\n <Button\n variant='transparent'\n data-tooltip-id='conference-user-remove'\n data-tooltip-content={t('Conference.Remove participant')}\n onClick={() => handleRemoveParticipant(user?.extenId)}\n >\n <FontAwesomeIcon\n className='pi-h-4 pi-w-4 pi-text-gray-600 dark:pi-text-gray-300'\n icon={faTrash}\n />\n </Button>\n </>\n ) : (\n <>\n <FontAwesomeIcon\n className='pi-h-5 pi-w-5 pi-text-gray-600 dark:pi-text-gray-300'\n icon={user.muted ? faMicrophoneSlash : faPause}\n />\n <Timer\n size='small'\n startTime={String(\n Math?.floor(\n user?.joinTime !== null && user?.joinTime ? user?.joinTime / 1000 : 0,\n ),\n )}\n isNotAlwaysWhite\n isInsideConference\n />\n </>\n )}\n </div>\n ))\n ) : (\n <div className='pi-flex pi-flex-col pi-justify-center pi-items-center pi-h-20 pi-text-gray-500 dark:pi-text-gray-400'>\n <span>{t('Conference.No participants')}</span>\n <span className='pi-text-xs pi-mt-1'>\n {t('Conference.Add participants to conference')}\n </span>\n </div>\n )}\n </div>\n <CustomThemedTooltip className='pi-z-1000' id='conference-user-remove' place='left' />\n <CustomThemedTooltip className='pi-z-1000' id='conference-user-mute' place='left' />\n </>\n )\n}\n\nexport default ConferenceUsersList\n"],"names":["ConferenceUsersList","_a","usersList","useSelector","state","conference","_d","isOwnerInside","conferenceId","dispatch","useDispatch","avatars","extensions","users","t","useTranslation","getAvatarUrl","username","concat","UserAvatar","name","user","React","className","extenId","createElement","style","backgroundImage","backgroundRepeat","backgroundSize","backgroundPosition","split","map","n","join","toUpperCase","slice","substring","Fragment","Object","values","filter","owner","length","_c","_b","key","id","Button","variant","muted","onClick","userId","extensionId","isAlreadyMuted","toggleUserMuted","muteUserConference","FontAwesomeIcon","icon","faMicrophoneSlash","faMicrophone","removeUserConference","faTrash","faPause","Timer","size","startTime","String","Math","floor","joinTime","isNotAlwaysWhite","isInsideConference","CustomThemedTooltip","place"],"mappings":"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"}
1
+ {"version":3,"file":"ConferenceUsersList.js","sources":["../../../src/components/ConferenceView/ConferenceUsersList.tsx"],"sourcesContent":["// Copyright (C) 2024 Nethesis S.r.l.\n// SPDX-License-Identifier: AGPL-3.0-or-later\n\nimport React, { type FC } from 'react'\nimport { useSelector, useDispatch } from 'react-redux'\nimport { RootState } from '../../store'\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome'\nimport {\n faMicrophone,\n faMicrophoneSlash,\n faPause,\n faTrash,\n} from '@fortawesome/free-solid-svg-icons'\nimport { Button } from '../Button'\nimport { useTranslation } from 'react-i18next'\nimport { CustomThemedTooltip } from '../CustomThemedTooltip'\nimport Timer from '../CallView/Timer'\nimport { muteUserConference, removeUserConference } from '../../lib/phone/call'\n\nexport interface ConferenceUsersListProps {}\n\nexport const ConferenceUsersList: FC<ConferenceUsersListProps> = ({}) => {\n const { usersList } = useSelector((state: RootState) => state.conference)\n const { isOwnerInside, conferenceId } = useSelector((state: RootState) => state.conference)\n const dispatch = useDispatch()\n\n const { avatars } = useSelector((state: RootState) => state.avatars)\n const { extensions } = useSelector((state: RootState) => state.users)\n const { t } = useTranslation()\n\n // Get user avatar URL\n const getAvatarUrl = (username: string | undefined): string | null => {\n if (!username || !avatars) return null\n\n // Try through extensions\n if (extensions && extensions[username]?.username && avatars[extensions[username].username]) {\n return `${avatars[extensions[username].username]}`\n }\n\n return null\n }\n\n // Generate initials from name\n const generateInitials = (name: string | undefined, username: string | undefined): string => {\n if (name) {\n return name\n .split(' ')\n .map((n: string) => n[0])\n .join('')\n .toUpperCase()\n .slice(0, 2)\n } else if (username) {\n return username.substring(0, 2).toUpperCase()\n }\n return '??'\n }\n\n const handleMuteParticipant = (userId: string, extensionId, isAlreadyMuted) => {\n dispatch.conference.toggleUserMuted({ extenId: extensionId })\n muteUserConference(conferenceId, userId, isAlreadyMuted)\n }\n\n const handleRemoveParticipant = (extenId: string) => {\n removeUserConference(conferenceId, extenId)\n }\n\n const UserAvatar = ({ user }: { user: any }) => (\n <div className='pi-inline-flex pi-items-center pi-justify-center pi-w-8 pi-h-8 pi-rounded-full pi-bg-gray-500'>\n {getAvatarUrl(user.extenId) ? (\n <div\n className='pi-rounded-full pi-w-8 pi-h-8'\n style={{\n backgroundImage: `url(${getAvatarUrl(user?.extenId)})`,\n backgroundRepeat: 'no-repeat',\n backgroundSize: 'contain',\n backgroundPosition: 'center',\n }}\n />\n ) : (\n <span className='pi-text-sm pi-font-medium pi-text-white'>\n {generateInitials(user?.name, user?.extenId)}\n </span>\n )}\n </div>\n )\n\n return (\n <>\n <div\n className={`${\n isOwnerInside ? '' : 'pi-space-y-1'\n } pi-flex pi-flex-col pi-mt-2 pi-h-32 pi-overflow-y-auto pi-scrollbar-thin pi-scrollbar-thumb-gray-400 pi-dark:scrollbar-thumb-gray-400 pi-scrollbar-thumb-rounded-full pi-scrollbar-thumb-opacity-50 dark:pi-scrollbar-track-gray-900 pi-scrollbar-track-gray-200 pi-dark:scrollbar-track-gray-900 pi-scrollbar-track-rounded-full pi-scrollbar-track-opacity-25`}\n >\n {usersList && Object.values(usersList).filter((user) => !user?.owner).length > 0 ? (\n Object?.values(usersList)\n ?.filter((user) => !user?.owner)\n ?.map((user) => (\n <div\n key={`${user?.id}-${user?.extenId}`}\n className={`${\n isOwnerInside ? '' : 'pi-py-1'\n } pi-flex pi-items-center pi-justify-between pi-px-3 pi-rounded-lg`}\n >\n <div className='pi-flex pi-items-center pi-gap-3 pi-truncate'>\n <UserAvatar user={user} />\n <span className='pi-font-medium pi-text-sm pi-text-gray-700 dark:pi-text-gray-200 pi-truncate pi-w-32'>\n {user?.name || user?.extenId}\n </span>\n </div>\n {isOwnerInside ? (\n <>\n <Button\n variant='transparent'\n data-tooltip-id='conference-user-mute'\n data-tooltip-content={\n user?.muted\n ? t('Conference.Unmute participant')\n : t('Conference.Mute participant')\n }\n onClick={() => handleMuteParticipant(user?.id, user?.extenId, user?.muted)}\n >\n <FontAwesomeIcon\n className={`pi-h-4 pi-w-4 ${\n user?.muted ? 'pi-text-red-500' : 'pi-text-gray-600 dark:pi-text-gray-300'\n }`}\n icon={user?.muted ? faMicrophoneSlash : faMicrophone}\n />\n </Button>\n <Button\n variant='transparent'\n data-tooltip-id='conference-user-remove'\n data-tooltip-content={t('Conference.Remove participant')}\n onClick={() => handleRemoveParticipant(user?.extenId)}\n >\n <FontAwesomeIcon\n className='pi-h-4 pi-w-4 pi-text-gray-600 dark:pi-text-gray-300'\n icon={faTrash}\n />\n </Button>\n </>\n ) : (\n <>\n <FontAwesomeIcon\n className='pi-h-5 pi-w-5 pi-text-gray-600 dark:pi-text-gray-300'\n icon={user.muted ? faMicrophoneSlash : faPause}\n />\n <Timer\n size='small'\n startTime={String(\n Math?.floor(\n user?.joinTime !== null && user?.joinTime ? user?.joinTime / 1000 : 0,\n ),\n )}\n isNotAlwaysWhite\n isInsideConference\n />\n </>\n )}\n </div>\n ))\n ) : (\n <div className='pi-flex pi-flex-col pi-justify-center pi-items-center pi-h-20 pi-text-gray-500 dark:pi-text-gray-400'>\n <span>{t('Conference.No participants')}</span>\n <span className='pi-text-xs pi-mt-1'>\n {t('Conference.Add participants to conference')}\n </span>\n </div>\n )}\n </div>\n <CustomThemedTooltip className='pi-z-1000' id='conference-user-remove' place='left' />\n <CustomThemedTooltip className='pi-z-1000' id='conference-user-mute' place='left' />\n </>\n )\n}\n\nexport default ConferenceUsersList\n"],"names":["ConferenceUsersList","_a","usersList","useSelector","state","conference","_d","isOwnerInside","conferenceId","dispatch","useDispatch","avatars","extensions","users","t","useTranslation","getAvatarUrl","username","concat","UserAvatar","name","user","React","className","extenId","createElement","style","backgroundImage","backgroundRepeat","backgroundSize","backgroundPosition","split","map","n","join","toUpperCase","slice","substring","Fragment","Object","values","filter","owner","length","_c","_b","key","id","Button","variant","muted","onClick","userId","extensionId","isAlreadyMuted","toggleUserMuted","muteUserConference","FontAwesomeIcon","icon","faMicrophoneSlash","faMicrophone","removeUserConference","faTrash","faPause","Timer","size","startTime","String","Math","floor","joinTime","isNotAlwaysWhite","isInsideConference","CustomThemedTooltip","place"],"mappings":"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"}
@@ -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"),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 t=require("../../node_modules/react-i18next/dist/es/useTranslation.js");require("../../node_modules/@babel/runtime/helpers/slicedToArray.js");var n=require("../Hangup.js"),a=require("./ConferenceUsersList.js"),i=require("../Button.js"),r=require("../../node_modules/@fortawesome/react-fontawesome/index.es.js"),l=require("../../node_modules/@fortawesome/free-solid-svg-icons/index.mjs.js"),o=require("../../utils/genericFunctions/eventDispatch.js");require("../../node_modules/tslib/tslib.es6.js"),require("../../store/index.js");var s=require("../CallView/Timer.js"),u=require("../../lib/phone/call.js"),c=require("../CustomThemedTooltip.js"),d=require("../AudioBars.js"),f=require("../AvatarGroup.js"),m=require("../../node_modules/react-redux/es/hooks/useSelector.js"),p=require("../../node_modules/react-redux/es/hooks/useDispatch.js");function h(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var w=h(e);exports.WaitingConferenceView=function(){var h=m.useSelector((function(e){return e.conference})),v=h.isOwnerInside,C=h.isConferenceMuted,E=h.conferenceStartTime,j=h.conferenceId,g=h.usersList,x=m.useSelector((function(e){return e.island})),b=x.view,q=x.sideViewIsVisible,N=x.isOpen,A=m.useSelector((function(e){return e.webrtc})).remoteAudioStream,T=m.useSelector((function(e){return e.currentCall})),I=T.paused,y=T.muted,_=t.useTranslation().t,F=p.useDispatch(),M=function(){F.island.toggleConferenceList(!0),F.island.setIslandView("transfer"!==b?"transfer":"call"),q&&o.eventDispatch("phone-island-sideview-close",{}),o.eventDispatch("phone-island-call-conference-list-opened",{})},S=e.useCallback((function(){y?u.unmuteCurrentCall():u.muteCurrentCall()}),[y]);return w.default.createElement(w.default.Fragment,null,N?w.default.createElement(w.default.Fragment,null,w.default.createElement("div",{className:"pi-flex pi-flex-col pi-w-full"},w.default.createElement("div",{className:"pi-flex pi-items-center pi-justify-between pi-text-gray-900 dark:pi-text-gray-50"},w.default.createElement("h1",{className:"pi-text-lg pi-font-medium pi-leading-7 pi-w-full"},_(v?"Conference.Conference":"Conference.Waiting for the conference")),v&&w.default.createElement(s.default,{size:"small",startTime:String(null===Math||void 0===Math?void 0:Math.floor(E/1e3)),isNotAlwaysWhite:!0,isInsideConference:!0})),w.default.createElement(a.ConferenceUsersList,null),w.default.createElement("div",{className:"pi-flex pi-justify-center pi-space-x-6 pi-mt-4"},v?w.default.createElement(w.default.Fragment,null,w.default.createElement(i.Button,{variant:"default",active:y,onClick:S,"data-tooltip-id":"tooltip-mute","data-tooltip-content":_(y?"Tooltip.Unmute":"Tooltip.Mute")},y?w.default.createElement(r.FontAwesomeIcon,{className:"pi-h-6 pi-w-6",icon:l.faMicrophoneSlash}):w.default.createElement(r.FontAwesomeIcon,{className:"pi-h-6 pi-w-6",icon:l.faMicrophone})),w.default.createElement(i.Button,{variant:"default",active:!!C,onClick:function(){j&&(u.muteAllUsersConference(j,C),F.conference.toggleIsConferenceMuted(!C))},"data-tooltip-id":"tooltip-all-user-muted","data-tooltip-content":"".concat(_(C?"Conference.Unmute all participants":"Conference.Mute all participants"))},C?w.default.createElement(r.FontAwesomeIcon,{className:"pi-h-6 pi-w-6",icon:l.faVolumeXmark}):w.default.createElement(r.FontAwesomeIcon,{className:"pi-h-6 pi-w-6",icon:l.faVolumeHigh})),w.default.createElement(i.Button,{"data-stop-propagation":!0,variant:"default",onClick:function(){return M()},"data-tooltip-id":"tooltip-add-user-to-conference","data-tooltip-content":_("Conference.Add participant")||""},w.default.createElement(r.FontAwesomeIcon,{icon:l.faUserPlus,className:"pi-h-6 pi-w-6"}))):w.default.createElement(w.default.Fragment,null,w.default.createElement(i.Button,{variant:"default",className:"pi-w-52 pi-font-medium pi-leading-5",conference:!0,onClick:function(){return F.conference.toggleIsOwnerInside(!0),void setTimeout((function(){u.joinConference()}),800)}},w.default.createElement(r.FontAwesomeIcon,{icon:l.faArrowRightToBracket,className:"pi-mr-3"}),_("Conference.Start conference")),w.default.createElement(i.Button,{variant:"default",conference:!0,onClick:function(){return M()},"data-tooltip-id":"tooltip-add-user-to-conference-before-started","data-tooltip-content":_("Conference.Add participant")||"",className:"pi-font-medium"},w.default.createElement(r.FontAwesomeIcon,{icon:l.faUserPlus}))))),w.default.createElement("div",{className:"pi-absolute pi-bottom-4 pi-right-0 pi-w-full pi-pb-2"},w.default.createElement(n.default,null)),w.default.createElement(c.CustomThemedTooltip,{className:"pi-z-1000",id:"tooltip-add-user-to-conference",place:"top"}),w.default.createElement(c.CustomThemedTooltip,{className:"pi-z-1000",id:"tooltip-add-user-to-conference-before-started",place:"left"}),w.default.createElement(c.CustomThemedTooltip,{className:"pi-z-1000",id:"tooltip-all-user-muted",place:"top"})):w.default.createElement("div",{className:"pi-flex-col"},w.default.createElement("div",{className:"pi-flex pi-items-center pi-justify-between pi-space-x-1"},w.default.createElement(r.FontAwesomeIcon,{icon:l.faUsers,className:"pi-h-4 pi-w-4"}),w.default.createElement(s.default,{size:"small",startTime:String(null===Math||void 0===Math?void 0:Math.floor(E/1e3)),isNotAlwaysWhite:!0,isInsideConference:!0}),w.default.createElement(d.AudioBars,{audioStream:A,paused:I,size:N?"large":"small"})),w.default.createElement("div",{className:"pi-flex pi-justify-center pi-items-center pi-pt-1"},w.default.createElement(f.default,{usersList:g||{},maxAvatars:5}))))};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react");require("../../node_modules/react-redux/es/index.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 t=require("../../node_modules/react-i18next/dist/es/useTranslation.js");require("../../node_modules/@babel/runtime/helpers/slicedToArray.js");var n=require("../Hangup.js"),a=require("./ConferenceUsersList.js"),i=require("../Button.js"),r=require("../../node_modules/@fortawesome/react-fontawesome/index.es.js"),l=require("../../node_modules/@fortawesome/free-solid-svg-icons/index.mjs.js"),o=require("../../utils/genericFunctions/eventDispatch.js");require("../../node_modules/tslib/tslib.es6.js"),require("../../store/index.js");var s=require("../CallView/Timer.js"),u=require("../../lib/phone/call.js"),c=require("../CustomThemedTooltip.js"),d=require("../AudioBars.js"),f=require("../AvatarGroup.js"),m=require("../../node_modules/react-redux/es/hooks/useSelector.js"),p=require("../../node_modules/react-redux/es/hooks/useDispatch.js");function h(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var w=h(e);exports.WaitingConferenceView=function(){var h=m.useSelector(function(e){return e.conference}),v=h.isOwnerInside,C=h.isConferenceMuted,E=h.conferenceStartTime,j=h.conferenceId,g=h.usersList,x=m.useSelector(function(e){return e.island}),b=x.view,q=x.sideViewIsVisible,N=x.isOpen,A=m.useSelector(function(e){return e.webrtc}).remoteAudioStream,T=m.useSelector(function(e){return e.currentCall}),I=T.paused,y=T.muted,_=t.useTranslation().t,F=p.useDispatch(),M=function(){F.island.toggleConferenceList(!0),F.island.setIslandView("transfer"!==b?"transfer":"call"),q&&o.eventDispatch("phone-island-sideview-close",{}),o.eventDispatch("phone-island-call-conference-list-opened",{})},S=e.useCallback(function(){y?u.unmuteCurrentCall():u.muteCurrentCall()},[y]);return w.default.createElement(w.default.Fragment,null,N?w.default.createElement(w.default.Fragment,null,w.default.createElement("div",{className:"pi-flex pi-flex-col pi-w-full"},w.default.createElement("div",{className:"pi-flex pi-items-center pi-justify-between pi-text-gray-900 dark:pi-text-gray-50"},w.default.createElement("h1",{className:"pi-text-lg pi-font-medium pi-leading-7 pi-w-full"},_(v?"Conference.Conference":"Conference.Waiting for the conference")),v&&w.default.createElement(s.default,{size:"small",startTime:String(null===Math||void 0===Math?void 0:Math.floor(E/1e3)),isNotAlwaysWhite:!0,isInsideConference:!0})),w.default.createElement(a.ConferenceUsersList,null),w.default.createElement("div",{className:"pi-flex pi-justify-center pi-space-x-6 pi-mt-4"},v?w.default.createElement(w.default.Fragment,null,w.default.createElement(i.Button,{variant:"default",active:y,onClick:S,"data-tooltip-id":"tooltip-mute","data-tooltip-content":_(y?"Tooltip.Unmute":"Tooltip.Mute")},y?w.default.createElement(r.FontAwesomeIcon,{className:"pi-h-6 pi-w-6",icon:l.faMicrophoneSlash}):w.default.createElement(r.FontAwesomeIcon,{className:"pi-h-6 pi-w-6",icon:l.faMicrophone})),w.default.createElement(i.Button,{variant:"default",active:!!C,onClick:function(){j&&(u.muteAllUsersConference(j,C),F.conference.toggleIsConferenceMuted(!C))},"data-tooltip-id":"tooltip-all-user-muted","data-tooltip-content":"".concat(_(C?"Conference.Unmute all participants":"Conference.Mute all participants"))},C?w.default.createElement(r.FontAwesomeIcon,{className:"pi-h-6 pi-w-6",icon:l.faVolumeXmark}):w.default.createElement(r.FontAwesomeIcon,{className:"pi-h-6 pi-w-6",icon:l.faVolumeHigh})),w.default.createElement(i.Button,{"data-stop-propagation":!0,variant:"default",onClick:function(){return M()},"data-tooltip-id":"tooltip-add-user-to-conference","data-tooltip-content":_("Conference.Add participant")||""},w.default.createElement(r.FontAwesomeIcon,{icon:l.faUserPlus,className:"pi-h-6 pi-w-6"}))):w.default.createElement(w.default.Fragment,null,w.default.createElement(i.Button,{variant:"default",className:"pi-w-52 pi-font-medium pi-leading-5",conference:!0,onClick:function(){return F.conference.toggleIsOwnerInside(!0),void setTimeout(function(){u.joinConference()},800)}},w.default.createElement(r.FontAwesomeIcon,{icon:l.faArrowRightToBracket,className:"pi-mr-3"}),_("Conference.Start conference")),w.default.createElement(i.Button,{variant:"default",conference:!0,onClick:function(){return M()},"data-tooltip-id":"tooltip-add-user-to-conference-before-started","data-tooltip-content":_("Conference.Add participant")||"",className:"pi-font-medium"},w.default.createElement(r.FontAwesomeIcon,{icon:l.faUserPlus}))))),w.default.createElement("div",{className:"pi-absolute pi-bottom-4 pi-right-0 pi-w-full pi-pb-2"},w.default.createElement(n.default,null)),w.default.createElement(c.CustomThemedTooltip,{className:"pi-z-1000",id:"tooltip-add-user-to-conference",place:"top"}),w.default.createElement(c.CustomThemedTooltip,{className:"pi-z-1000",id:"tooltip-add-user-to-conference-before-started",place:"left"}),w.default.createElement(c.CustomThemedTooltip,{className:"pi-z-1000",id:"tooltip-all-user-muted",place:"top"})):w.default.createElement("div",{className:"pi-flex-col"},w.default.createElement("div",{className:"pi-flex pi-items-center pi-justify-between pi-space-x-1"},w.default.createElement(r.FontAwesomeIcon,{icon:l.faUsers,className:"pi-h-4 pi-w-4"}),w.default.createElement(s.default,{size:"small",startTime:String(null===Math||void 0===Math?void 0:Math.floor(E/1e3)),isNotAlwaysWhite:!0,isInsideConference:!0}),w.default.createElement(d.AudioBars,{audioStream:A,paused:I,size:N?"large":"small"})),w.default.createElement("div",{className:"pi-flex pi-justify-center pi-items-center pi-pt-1"},w.default.createElement(f.default,{usersList:g||{},maxAvatars:5}))))};
2
2
  //# sourceMappingURL=index.js.map