@snapcall/stream-ui 1.10.0 → 1.10.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,5 +1,5 @@
1
1
  import {jsx as $3Sbms$jsx, jsxs as $3Sbms$jsxs, Fragment as $3Sbms$Fragment} from "react/jsx-runtime";
2
- import {render as $3Sbms$render, createPortal as $3Sbms$createPortal} from "react-dom";
2
+ import {createRoot as $3Sbms$createRoot} from "react-dom/client";
3
3
  import $3Sbms$hotjarbrowser from "@hotjar/browser";
4
4
  import $3Sbms$reacthottoast, {toast as $3Sbms$toast, Toaster as $3Sbms$Toaster, ToastBar as $3Sbms$ToastBar} from "react-hot-toast";
5
5
  import $3Sbms$styledcomponents, {keyframes as $3Sbms$keyframes, ThemeProvider as $3Sbms$ThemeProvider, css as $3Sbms$css, ThemeContext as $3Sbms$ThemeContext, createGlobalStyle as $3Sbms$createGlobalStyle} from "styled-components";
@@ -14,6 +14,7 @@ import {captureException as $3Sbms$captureException, addBreadcrumb as $3Sbms$add
14
14
  import {Producer as $3Sbms$Producer} from "mediasoup-client/lib/Producer";
15
15
  import {Device as $3Sbms$Device} from "mediasoup-client";
16
16
  import {SelfieSegmentation as $3Sbms$SelfieSegmentation} from "@mediapipe/selfie_segmentation";
17
+ import {createPortal as $3Sbms$createPortal} from "react-dom";
17
18
  import {toCanvas as $3Sbms$toCanvas} from "qrcode";
18
19
 
19
20
 
@@ -1496,10 +1497,8 @@ class $c31e3fb4360572af$export$2e2bcd8739ae039 extends $c31e3fb4360572af$var$Str
1496
1497
  }
1497
1498
  };
1498
1499
  peer.producersData.forEach((producer)=>{
1499
- if (producer.deviceType === "microphone") {
1500
- deviceState.microphone.enabled = true;
1501
- deviceState.microphone.muted = producer.paused;
1502
- } else if (producer.deviceType === "screen") deviceState.screenshare.enabled = true;
1500
+ if (producer.deviceType === "microphone") deviceState.microphone.enabled = true;
1501
+ else if (producer.deviceType === "screen") deviceState.screenshare.enabled = true;
1503
1502
  else if (producer.deviceType === "webcam") deviceState.camera.enabled = true;
1504
1503
  });
1505
1504
  peers.push({
@@ -1608,18 +1607,20 @@ class $c31e3fb4360572af$export$2e2bcd8739ae039 extends $c31e3fb4360572af$var$Str
1608
1607
  if (notification.method === "error") {
1609
1608
  if (notification.data?.reason === "reached user limit") this.onCriticalError($c31e3fb4360572af$export$818d60b2e626da0c.USER_LIMIT);
1610
1609
  } else if (notification.method === "newPeer") {
1611
- const { id: id , profile: profile } = notification.data;
1610
+ const { id: id , profile: profile , muted: muted } = notification.data;
1612
1611
  this.peers.set(id, {
1613
1612
  id: id,
1614
1613
  peerId: id,
1615
1614
  profile: profile,
1615
+ muted: muted,
1616
1616
  producersData: []
1617
1617
  });
1618
1618
  const event = new $c31e3fb4360572af$var$SnapcallEvent("newPeer", {
1619
1619
  detail: {
1620
1620
  peerId: id,
1621
1621
  displayName: profile.name,
1622
- profile: profile
1622
+ profile: profile,
1623
+ muted: muted
1623
1624
  }
1624
1625
  });
1625
1626
  this.dispatchEvent(event);
@@ -1698,6 +1699,26 @@ class $c31e3fb4360572af$export$2e2bcd8739ae039 extends $c31e3fb4360572af$var$Str
1698
1699
  }
1699
1700
  });
1700
1701
  this.dispatchEvent(event);
1702
+ } else if (notification.method === "mute") {
1703
+ const { peerId: peerId , device: device } = notification.data;
1704
+ const event = new $c31e3fb4360572af$var$SnapcallEvent("mediaPause", {
1705
+ detail: {
1706
+ peerId: peerId,
1707
+ deviceType: device,
1708
+ paused: true
1709
+ }
1710
+ });
1711
+ this.dispatchEvent(event);
1712
+ } else if (notification.method === "unmute") {
1713
+ const { peerId: peerId , device: device } = notification.data;
1714
+ const event = new $c31e3fb4360572af$var$SnapcallEvent("mediaResume", {
1715
+ detail: {
1716
+ peerId: peerId,
1717
+ deviceType: device,
1718
+ paused: false
1719
+ }
1720
+ });
1721
+ this.dispatchEvent(event);
1701
1722
  } else if (notification.method === "requestDeviceResult") {
1702
1723
  const event = new $c31e3fb4360572af$var$SnapcallEvent(notification.method, {
1703
1724
  detail: notification.data
@@ -1985,28 +2006,30 @@ class $c31e3fb4360572af$export$2e2bcd8739ae039 extends $c31e3fb4360572af$var$Str
1985
2006
  this.dispatchEvent(event);
1986
2007
  }
1987
2008
  }
1988
- async muteMicrophone() {
2009
+ muteMicrophone() {
1989
2010
  if (this.micProducer) {
1990
2011
  this.onStopSpeak();
1991
- this.micProducer?.pause();
1992
- await this.protoo.request("pauseProducer", {
1993
- producerId: this.micProducer?.id
1994
- });
2012
+ this.micProducer.pause();
1995
2013
  this.muted = true;
2014
+ const device = "microphone";
2015
+ this.protoo.notify("mute", {
2016
+ device: device
2017
+ });
1996
2018
  const event = new $c31e3fb4360572af$var$SnapcallEvent("microphoneMute", {
1997
2019
  detail: {}
1998
2020
  });
1999
2021
  this.dispatchEvent(event);
2000
2022
  }
2001
2023
  }
2002
- async unMuteMicrophone() {
2024
+ unMuteMicrophone() {
2003
2025
  if (this.micProducer) {
2004
2026
  this.micProducer.resume();
2005
2027
  this.resolvePendingDeviceRequest("microphone", true);
2006
- await this.protoo.request("resumeProducer", {
2007
- producerId: this.micProducer.id
2008
- });
2009
2028
  this.muted = false;
2029
+ const device = "microphone";
2030
+ this.protoo.notify("unmute", {
2031
+ device: device
2032
+ });
2010
2033
  const event = new $c31e3fb4360572af$var$SnapcallEvent("microphoneUnmute", {
2011
2034
  detail: {}
2012
2035
  });
@@ -2207,6 +2230,11 @@ class $c31e3fb4360572af$export$2e2bcd8739ae039 extends $c31e3fb4360572af$var$Str
2207
2230
  },
2208
2231
  qualityIndex: 2
2209
2232
  };
2233
+ await this.webcamProducer?.replaceTrack?.({
2234
+ track: null
2235
+ }).catch((err)=>{
2236
+ $c31e3fb4360572af$var$log.error("switchCamera", "clean track failed", err);
2237
+ });
2210
2238
  const mediaStream = await this.handleGetUserMediaError("webcam", navigator.mediaDevices.getUserMedia({
2211
2239
  video: {
2212
2240
  deviceId: {
@@ -2509,6 +2537,7 @@ class $c31e3fb4360572af$export$2e2bcd8739ae039 extends $c31e3fb4360572af$var$Str
2509
2537
  deviceType: deviceType
2510
2538
  });
2511
2539
  this.scaleVideoEncodingsParameter();
2540
+ const paused = peer ? peer.muted : false;
2512
2541
  const event = new $c31e3fb4360572af$var$SnapcallEvent("mediaStart", {
2513
2542
  detail: {
2514
2543
  peerId: peerId,
@@ -3076,8 +3105,9 @@ const $2da9626742e3560b$export$d5424e4dfe4be076 = ({ color: color })=>/*#__PURE
3076
3105
 
3077
3106
  const $e1413aacdaa5a03e$export$71b2224f1ce5e08e = (ref, action)=>{
3078
3107
  (0, $3Sbms$useEffect)(()=>{
3108
+ const effectTimestamp = performance.now();
3079
3109
  const onWindowClick = (event)=>{
3080
- if (!ref?.current?.contains(event.target)) action();
3110
+ if (!ref?.current?.contains(event.target) && event.timeStamp > effectTimestamp) action();
3081
3111
  };
3082
3112
  if (ref?.current) {
3083
3113
  window.addEventListener("click", onWindowClick);
@@ -3166,7 +3196,9 @@ const $59d1053cd71d481a$var$Menu = ({ categories: categories })=>{
3166
3196
  children: category.title
3167
3197
  }),
3168
3198
  category.items.map((item)=>/*#__PURE__*/ (0, $3Sbms$jsxs)((0, $4ee077ee5e6fe3e7$export$44020656de05f2b4), {
3169
- onClick: item.action,
3199
+ onClick: ()=>{
3200
+ item.action();
3201
+ },
3170
3202
  danger: item.danger,
3171
3203
  children: [
3172
3204
  item.jsxIcon && /*#__PURE__*/ (0, $3Sbms$jsx)((0, $4ee077ee5e6fe3e7$export$5912a8d3f489e1c1), {
@@ -6516,7 +6548,8 @@ const $cdab47bb8796991e$var$Video = ()=>{
6516
6548
  const { peers: peers } = event.detail;
6517
6549
  const roomStreams = peers.map((peer)=>({
6518
6550
  id: peer.peerId,
6519
- profile: peer.profile
6551
+ profile: peer.profile,
6552
+ muted: peer.muted
6520
6553
  }));
6521
6554
  dispatch({
6522
6555
  type: (0, $2884da8a64948e35$export$96a9662a3eda31f6).SET_STREAMS,
@@ -10946,15 +10979,17 @@ const $24075a5d702d64b3$export$3f94917203ab7078 = {
10946
10979
  init: ({ element: element , ...options })=>{
10947
10980
  if (element?.nodeType !== window.Node.ELEMENT_NODE) throw new Error('The "element" property must be a valid element!');
10948
10981
  const mergedOptions = (0, $365e765f9890497b$export$6969335ea1e4e77c)($24075a5d702d64b3$var$defaultOptions, options);
10949
- (0, $3Sbms$render)(/*#__PURE__*/ (0, $3Sbms$jsx)((0, $26ed036cbc17809a$export$2e2bcd8739ae039), {
10982
+ const rootElement = (0, $3Sbms$createRoot)(element);
10983
+ rootElement.render(/*#__PURE__*/ (0, $3Sbms$jsx)((0, $26ed036cbc17809a$export$2e2bcd8739ae039), {
10950
10984
  options: mergedOptions
10951
- }), element);
10985
+ }));
10952
10986
  if (mergedOptions.tracking) (0, $3Sbms$hotjarbrowser).init(3111933, 6);
10953
10987
  },
10954
10988
  initGreeting: (element, onGreetingDone)=>{
10955
- (0, $3Sbms$render)(/*#__PURE__*/ (0, $3Sbms$jsx)((0, $f8d57e3d223f5089$export$2e2bcd8739ae039), {
10989
+ const rootElement = (0, $3Sbms$createRoot)(element);
10990
+ rootElement.render(/*#__PURE__*/ (0, $3Sbms$jsx)((0, $f8d57e3d223f5089$export$2e2bcd8739ae039), {
10956
10991
  onGreetingDone: onGreetingDone
10957
- }), element);
10992
+ }));
10958
10993
  },
10959
10994
  setExtraSettingsOptions: (extraOptions)=>{
10960
10995
  const event = new CustomEvent("streamUISetExtraSettingsOptions", {
@@ -10970,6 +11005,7 @@ const $24075a5d702d64b3$export$3f94917203ab7078 = {
10970
11005
  terminateRoom: (0, $c9e496369b59be7a$export$2f377c2162fd02b2).terminateRoom.bind((0, $c9e496369b59be7a$export$2f377c2162fd02b2)),
10971
11006
  generateToken: (0, $c9e496369b59be7a$export$2f377c2162fd02b2).generateToken.bind((0, $c9e496369b59be7a$export$2f377c2162fd02b2)),
10972
11007
  addEventListener: (0, $c9e496369b59be7a$export$2f377c2162fd02b2).addEventListener.bind((0, $c9e496369b59be7a$export$2f377c2162fd02b2)),
11008
+ removeEventListener: (0, $c9e496369b59be7a$export$2f377c2162fd02b2).removeEventListener.bind((0, $c9e496369b59be7a$export$2f377c2162fd02b2)),
10973
11009
  dispatchEvent: (0, $c9e496369b59be7a$export$2f377c2162fd02b2).dispatchEvent.bind((0, $c9e496369b59be7a$export$2f377c2162fd02b2)),
10974
11010
  getState: (0, $c9e496369b59be7a$export$2f377c2162fd02b2).getState.bind((0, $c9e496369b59be7a$export$2f377c2162fd02b2)),
10975
11011
  setProfile: (0, $c9e496369b59be7a$export$2f377c2162fd02b2).setProfile.bind((0, $c9e496369b59be7a$export$2f377c2162fd02b2)),
package/dist/stream-ui.js CHANGED
@@ -1,5 +1,5 @@
1
1
  var $jQDcL$reactjsxruntime = require("react/jsx-runtime");
2
- var $jQDcL$reactdom = require("react-dom");
2
+ var $jQDcL$reactdomclient = require("react-dom/client");
3
3
  var $jQDcL$hotjarbrowser = require("@hotjar/browser");
4
4
  var $jQDcL$reacthottoast = require("react-hot-toast");
5
5
  var $jQDcL$styledcomponents = require("styled-components");
@@ -14,6 +14,7 @@ var $jQDcL$sentrybrowser = require("@sentry/browser");
14
14
  var $jQDcL$mediasoupclientlibProducer = require("mediasoup-client/lib/Producer");
15
15
  var $jQDcL$mediasoupclient = require("mediasoup-client");
16
16
  var $jQDcL$mediapipeselfie_segmentation = require("@mediapipe/selfie_segmentation");
17
+ var $jQDcL$reactdom = require("react-dom");
17
18
  var $jQDcL$qrcode = require("qrcode");
18
19
 
19
20
  function $parcel$interopDefault(a) {
@@ -1504,10 +1505,8 @@ class $1dedebd5ff3002eb$export$2e2bcd8739ae039 extends $1dedebd5ff3002eb$var$Str
1504
1505
  }
1505
1506
  };
1506
1507
  peer.producersData.forEach((producer)=>{
1507
- if (producer.deviceType === "microphone") {
1508
- deviceState.microphone.enabled = true;
1509
- deviceState.microphone.muted = producer.paused;
1510
- } else if (producer.deviceType === "screen") deviceState.screenshare.enabled = true;
1508
+ if (producer.deviceType === "microphone") deviceState.microphone.enabled = true;
1509
+ else if (producer.deviceType === "screen") deviceState.screenshare.enabled = true;
1511
1510
  else if (producer.deviceType === "webcam") deviceState.camera.enabled = true;
1512
1511
  });
1513
1512
  peers.push({
@@ -1616,18 +1615,20 @@ class $1dedebd5ff3002eb$export$2e2bcd8739ae039 extends $1dedebd5ff3002eb$var$Str
1616
1615
  if (notification.method === "error") {
1617
1616
  if (notification.data?.reason === "reached user limit") this.onCriticalError($1dedebd5ff3002eb$export$818d60b2e626da0c.USER_LIMIT);
1618
1617
  } else if (notification.method === "newPeer") {
1619
- const { id: id , profile: profile } = notification.data;
1618
+ const { id: id , profile: profile , muted: muted } = notification.data;
1620
1619
  this.peers.set(id, {
1621
1620
  id: id,
1622
1621
  peerId: id,
1623
1622
  profile: profile,
1623
+ muted: muted,
1624
1624
  producersData: []
1625
1625
  });
1626
1626
  const event = new $1dedebd5ff3002eb$var$SnapcallEvent("newPeer", {
1627
1627
  detail: {
1628
1628
  peerId: id,
1629
1629
  displayName: profile.name,
1630
- profile: profile
1630
+ profile: profile,
1631
+ muted: muted
1631
1632
  }
1632
1633
  });
1633
1634
  this.dispatchEvent(event);
@@ -1706,6 +1707,26 @@ class $1dedebd5ff3002eb$export$2e2bcd8739ae039 extends $1dedebd5ff3002eb$var$Str
1706
1707
  }
1707
1708
  });
1708
1709
  this.dispatchEvent(event);
1710
+ } else if (notification.method === "mute") {
1711
+ const { peerId: peerId , device: device } = notification.data;
1712
+ const event = new $1dedebd5ff3002eb$var$SnapcallEvent("mediaPause", {
1713
+ detail: {
1714
+ peerId: peerId,
1715
+ deviceType: device,
1716
+ paused: true
1717
+ }
1718
+ });
1719
+ this.dispatchEvent(event);
1720
+ } else if (notification.method === "unmute") {
1721
+ const { peerId: peerId , device: device } = notification.data;
1722
+ const event = new $1dedebd5ff3002eb$var$SnapcallEvent("mediaResume", {
1723
+ detail: {
1724
+ peerId: peerId,
1725
+ deviceType: device,
1726
+ paused: false
1727
+ }
1728
+ });
1729
+ this.dispatchEvent(event);
1709
1730
  } else if (notification.method === "requestDeviceResult") {
1710
1731
  const event = new $1dedebd5ff3002eb$var$SnapcallEvent(notification.method, {
1711
1732
  detail: notification.data
@@ -1993,28 +2014,30 @@ class $1dedebd5ff3002eb$export$2e2bcd8739ae039 extends $1dedebd5ff3002eb$var$Str
1993
2014
  this.dispatchEvent(event);
1994
2015
  }
1995
2016
  }
1996
- async muteMicrophone() {
2017
+ muteMicrophone() {
1997
2018
  if (this.micProducer) {
1998
2019
  this.onStopSpeak();
1999
- this.micProducer?.pause();
2000
- await this.protoo.request("pauseProducer", {
2001
- producerId: this.micProducer?.id
2002
- });
2020
+ this.micProducer.pause();
2003
2021
  this.muted = true;
2022
+ const device = "microphone";
2023
+ this.protoo.notify("mute", {
2024
+ device: device
2025
+ });
2004
2026
  const event = new $1dedebd5ff3002eb$var$SnapcallEvent("microphoneMute", {
2005
2027
  detail: {}
2006
2028
  });
2007
2029
  this.dispatchEvent(event);
2008
2030
  }
2009
2031
  }
2010
- async unMuteMicrophone() {
2032
+ unMuteMicrophone() {
2011
2033
  if (this.micProducer) {
2012
2034
  this.micProducer.resume();
2013
2035
  this.resolvePendingDeviceRequest("microphone", true);
2014
- await this.protoo.request("resumeProducer", {
2015
- producerId: this.micProducer.id
2016
- });
2017
2036
  this.muted = false;
2037
+ const device = "microphone";
2038
+ this.protoo.notify("unmute", {
2039
+ device: device
2040
+ });
2018
2041
  const event = new $1dedebd5ff3002eb$var$SnapcallEvent("microphoneUnmute", {
2019
2042
  detail: {}
2020
2043
  });
@@ -2215,6 +2238,11 @@ class $1dedebd5ff3002eb$export$2e2bcd8739ae039 extends $1dedebd5ff3002eb$var$Str
2215
2238
  },
2216
2239
  qualityIndex: 2
2217
2240
  };
2241
+ await this.webcamProducer?.replaceTrack?.({
2242
+ track: null
2243
+ }).catch((err)=>{
2244
+ $1dedebd5ff3002eb$var$log.error("switchCamera", "clean track failed", err);
2245
+ });
2218
2246
  const mediaStream = await this.handleGetUserMediaError("webcam", navigator.mediaDevices.getUserMedia({
2219
2247
  video: {
2220
2248
  deviceId: {
@@ -2517,6 +2545,7 @@ class $1dedebd5ff3002eb$export$2e2bcd8739ae039 extends $1dedebd5ff3002eb$var$Str
2517
2545
  deviceType: deviceType
2518
2546
  });
2519
2547
  this.scaleVideoEncodingsParameter();
2548
+ const paused = peer ? peer.muted : false;
2520
2549
  const event = new $1dedebd5ff3002eb$var$SnapcallEvent("mediaStart", {
2521
2550
  detail: {
2522
2551
  peerId: peerId,
@@ -3084,8 +3113,9 @@ const $cce7f1c9e9c29503$export$d5424e4dfe4be076 = ({ color: color })=>/*#__PURE
3084
3113
 
3085
3114
  const $326cea7dbbcb019a$export$71b2224f1ce5e08e = (ref, action)=>{
3086
3115
  (0, $jQDcL$react.useEffect)(()=>{
3116
+ const effectTimestamp = performance.now();
3087
3117
  const onWindowClick = (event)=>{
3088
- if (!ref?.current?.contains(event.target)) action();
3118
+ if (!ref?.current?.contains(event.target) && event.timeStamp > effectTimestamp) action();
3089
3119
  };
3090
3120
  if (ref?.current) {
3091
3121
  window.addEventListener("click", onWindowClick);
@@ -3174,7 +3204,9 @@ const $82c4f35718e0facf$var$Menu = ({ categories: categories })=>{
3174
3204
  children: category.title
3175
3205
  }),
3176
3206
  category.items.map((item)=>/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsxs)((0, $4890069d0b6c2ba3$export$44020656de05f2b4), {
3177
- onClick: item.action,
3207
+ onClick: ()=>{
3208
+ item.action();
3209
+ },
3178
3210
  danger: item.danger,
3179
3211
  children: [
3180
3212
  item.jsxIcon && /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $4890069d0b6c2ba3$export$5912a8d3f489e1c1), {
@@ -6524,7 +6556,8 @@ const $88b23a8428e67b66$var$Video = ()=>{
6524
6556
  const { peers: peers } = event.detail;
6525
6557
  const roomStreams = peers.map((peer)=>({
6526
6558
  id: peer.peerId,
6527
- profile: peer.profile
6559
+ profile: peer.profile,
6560
+ muted: peer.muted
6528
6561
  }));
6529
6562
  dispatch({
6530
6563
  type: (0, $a4027a5418fcd07a$export$96a9662a3eda31f6).SET_STREAMS,
@@ -10954,15 +10987,17 @@ const $e68207026aca356b$export$3f94917203ab7078 = {
10954
10987
  init: ({ element: element , ...options })=>{
10955
10988
  if (element?.nodeType !== window.Node.ELEMENT_NODE) throw new Error('The "element" property must be a valid element!');
10956
10989
  const mergedOptions = (0, $6b4cf4c12c735fdf$export$6969335ea1e4e77c)($e68207026aca356b$var$defaultOptions, options);
10957
- (0, $jQDcL$reactdom.render)(/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $ee8cb448c2c74888$export$2e2bcd8739ae039), {
10990
+ const rootElement = (0, $jQDcL$reactdomclient.createRoot)(element);
10991
+ rootElement.render(/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $ee8cb448c2c74888$export$2e2bcd8739ae039), {
10958
10992
  options: mergedOptions
10959
- }), element);
10993
+ }));
10960
10994
  if (mergedOptions.tracking) (0, ($parcel$interopDefault($jQDcL$hotjarbrowser))).init(3111933, 6);
10961
10995
  },
10962
10996
  initGreeting: (element, onGreetingDone)=>{
10963
- (0, $jQDcL$reactdom.render)(/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $3305ca02e86dabd1$export$2e2bcd8739ae039), {
10997
+ const rootElement = (0, $jQDcL$reactdomclient.createRoot)(element);
10998
+ rootElement.render(/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $3305ca02e86dabd1$export$2e2bcd8739ae039), {
10964
10999
  onGreetingDone: onGreetingDone
10965
- }), element);
11000
+ }));
10966
11001
  },
10967
11002
  setExtraSettingsOptions: (extraOptions)=>{
10968
11003
  const event = new CustomEvent("streamUISetExtraSettingsOptions", {
@@ -10978,6 +11013,7 @@ const $e68207026aca356b$export$3f94917203ab7078 = {
10978
11013
  terminateRoom: (0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).terminateRoom.bind((0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2)),
10979
11014
  generateToken: (0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).generateToken.bind((0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2)),
10980
11015
  addEventListener: (0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).addEventListener.bind((0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2)),
11016
+ removeEventListener: (0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).removeEventListener.bind((0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2)),
10981
11017
  dispatchEvent: (0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).dispatchEvent.bind((0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2)),
10982
11018
  getState: (0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).getState.bind((0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2)),
10983
11019
  setProfile: (0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).setProfile.bind((0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2)),