@stream-io/video-react-native-sdk 1.13.3 → 1.14.0

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 (124) hide show
  1. package/CHANGELOG.md +15 -0
  2. package/android/gradle.properties +1 -1
  3. package/dist/commonjs/components/Livestream/LivestreamControls/ViewerLeaveStreamButton.js +23 -29
  4. package/dist/commonjs/components/Livestream/LivestreamControls/ViewerLeaveStreamButton.js.map +1 -1
  5. package/dist/commonjs/components/Livestream/LivestreamControls/ViewerLivestreamControls.js +187 -29
  6. package/dist/commonjs/components/Livestream/LivestreamControls/ViewerLivestreamControls.js.map +1 -1
  7. package/dist/commonjs/components/Livestream/LivestreamLayout/LivestreamLayout.js +1 -1
  8. package/dist/commonjs/components/Livestream/LivestreamLayout/LivestreamLayout.js.map +1 -1
  9. package/dist/commonjs/components/Livestream/LivestreamPlayer/LivestreamEnded.js +111 -0
  10. package/dist/commonjs/components/Livestream/LivestreamPlayer/LivestreamEnded.js.map +1 -0
  11. package/dist/commonjs/components/Livestream/LivestreamPlayer/LivestreamPlayer.js +5 -6
  12. package/dist/commonjs/components/Livestream/LivestreamPlayer/LivestreamPlayer.js.map +1 -1
  13. package/dist/commonjs/components/Livestream/LivestreamTopView/DurationBadge.js +32 -28
  14. package/dist/commonjs/components/Livestream/LivestreamTopView/DurationBadge.js.map +1 -1
  15. package/dist/commonjs/components/Livestream/LivestreamTopView/FollowerCount.js +36 -36
  16. package/dist/commonjs/components/Livestream/LivestreamTopView/FollowerCount.js.map +1 -1
  17. package/dist/commonjs/components/Livestream/LivestreamTopView/LiveIndicator.js +21 -15
  18. package/dist/commonjs/components/Livestream/LivestreamTopView/LiveIndicator.js.map +1 -1
  19. package/dist/commonjs/components/Livestream/ViewerLivestream/ViewerLivestream.js +70 -4
  20. package/dist/commonjs/components/Livestream/ViewerLivestream/ViewerLivestream.js.map +1 -1
  21. package/dist/commonjs/components/Livestream/ViewerLivestream/ViewerLobby.js +143 -0
  22. package/dist/commonjs/components/Livestream/ViewerLivestream/ViewerLobby.js.map +1 -0
  23. package/dist/commonjs/icons/LivestreamControls.js +73 -0
  24. package/dist/commonjs/icons/LivestreamControls.js.map +1 -0
  25. package/dist/commonjs/icons/Maximize.js +52 -0
  26. package/dist/commonjs/icons/Maximize.js.map +1 -0
  27. package/dist/commonjs/icons/index.js +11 -0
  28. package/dist/commonjs/icons/index.js.map +1 -1
  29. package/dist/commonjs/index.js +12 -0
  30. package/dist/commonjs/index.js.map +1 -1
  31. package/dist/commonjs/providers/NoiseCancellation/NoiseCancellationProvider.js +75 -0
  32. package/dist/commonjs/providers/NoiseCancellation/NoiseCancellationProvider.js.map +1 -0
  33. package/dist/commonjs/providers/NoiseCancellation/index.js +17 -0
  34. package/dist/commonjs/providers/NoiseCancellation/index.js.map +1 -0
  35. package/dist/commonjs/providers/NoiseCancellation/lib.js +34 -0
  36. package/dist/commonjs/providers/NoiseCancellation/lib.js.map +1 -0
  37. package/dist/commonjs/version.js +1 -1
  38. package/dist/module/components/Livestream/LivestreamControls/ViewerLeaveStreamButton.js +27 -33
  39. package/dist/module/components/Livestream/LivestreamControls/ViewerLeaveStreamButton.js.map +1 -1
  40. package/dist/module/components/Livestream/LivestreamControls/ViewerLivestreamControls.js +187 -30
  41. package/dist/module/components/Livestream/LivestreamControls/ViewerLivestreamControls.js.map +1 -1
  42. package/dist/module/components/Livestream/LivestreamLayout/LivestreamLayout.js +1 -1
  43. package/dist/module/components/Livestream/LivestreamLayout/LivestreamLayout.js.map +1 -1
  44. package/dist/module/components/Livestream/LivestreamPlayer/LivestreamEnded.js +104 -0
  45. package/dist/module/components/Livestream/LivestreamPlayer/LivestreamEnded.js.map +1 -0
  46. package/dist/module/components/Livestream/LivestreamPlayer/LivestreamPlayer.js +5 -6
  47. package/dist/module/components/Livestream/LivestreamPlayer/LivestreamPlayer.js.map +1 -1
  48. package/dist/module/components/Livestream/LivestreamTopView/DurationBadge.js +33 -29
  49. package/dist/module/components/Livestream/LivestreamTopView/DurationBadge.js.map +1 -1
  50. package/dist/module/components/Livestream/LivestreamTopView/FollowerCount.js +35 -35
  51. package/dist/module/components/Livestream/LivestreamTopView/FollowerCount.js.map +1 -1
  52. package/dist/module/components/Livestream/LivestreamTopView/LiveIndicator.js +20 -14
  53. package/dist/module/components/Livestream/LivestreamTopView/LiveIndicator.js.map +1 -1
  54. package/dist/module/components/Livestream/ViewerLivestream/ViewerLivestream.js +73 -7
  55. package/dist/module/components/Livestream/ViewerLivestream/ViewerLivestream.js.map +1 -1
  56. package/dist/module/components/Livestream/ViewerLivestream/ViewerLobby.js +136 -0
  57. package/dist/module/components/Livestream/ViewerLivestream/ViewerLobby.js.map +1 -0
  58. package/dist/module/icons/LivestreamControls.js +62 -0
  59. package/dist/module/icons/LivestreamControls.js.map +1 -0
  60. package/dist/module/icons/Maximize.js +43 -0
  61. package/dist/module/icons/Maximize.js.map +1 -0
  62. package/dist/module/icons/index.js +1 -0
  63. package/dist/module/icons/index.js.map +1 -1
  64. package/dist/module/index.js +1 -0
  65. package/dist/module/index.js.map +1 -1
  66. package/dist/module/providers/NoiseCancellation/NoiseCancellationProvider.js +67 -0
  67. package/dist/module/providers/NoiseCancellation/NoiseCancellationProvider.js.map +1 -0
  68. package/dist/module/providers/NoiseCancellation/index.js +2 -0
  69. package/dist/module/providers/NoiseCancellation/index.js.map +1 -0
  70. package/dist/module/providers/NoiseCancellation/lib.js +26 -0
  71. package/dist/module/providers/NoiseCancellation/lib.js.map +1 -0
  72. package/dist/module/version.js +1 -1
  73. package/dist/typescript/components/Livestream/LivestreamControls/ViewerLeaveStreamButton.d.ts.map +1 -1
  74. package/dist/typescript/components/Livestream/LivestreamControls/ViewerLivestreamControls.d.ts +7 -0
  75. package/dist/typescript/components/Livestream/LivestreamControls/ViewerLivestreamControls.d.ts.map +1 -1
  76. package/dist/typescript/components/Livestream/LivestreamPlayer/LivestreamEnded.d.ts +3 -0
  77. package/dist/typescript/components/Livestream/LivestreamPlayer/LivestreamEnded.d.ts.map +1 -0
  78. package/dist/typescript/components/Livestream/LivestreamPlayer/LivestreamPlayer.d.ts +13 -1
  79. package/dist/typescript/components/Livestream/LivestreamPlayer/LivestreamPlayer.d.ts.map +1 -1
  80. package/dist/typescript/components/Livestream/LivestreamTopView/DurationBadge.d.ts.map +1 -1
  81. package/dist/typescript/components/Livestream/LivestreamTopView/FollowerCount.d.ts.map +1 -1
  82. package/dist/typescript/components/Livestream/LivestreamTopView/LiveIndicator.d.ts.map +1 -1
  83. package/dist/typescript/components/Livestream/ViewerLivestream/ViewerLivestream.d.ts +9 -1
  84. package/dist/typescript/components/Livestream/ViewerLivestream/ViewerLivestream.d.ts.map +1 -1
  85. package/dist/typescript/components/Livestream/ViewerLivestream/ViewerLobby.d.ts +8 -0
  86. package/dist/typescript/components/Livestream/ViewerLivestream/ViewerLobby.d.ts.map +1 -0
  87. package/dist/typescript/icons/LivestreamControls.d.ts +12 -0
  88. package/dist/typescript/icons/LivestreamControls.d.ts.map +1 -0
  89. package/dist/typescript/icons/Maximize.d.ts +10 -0
  90. package/dist/typescript/icons/Maximize.d.ts.map +1 -0
  91. package/dist/typescript/icons/index.d.ts +1 -0
  92. package/dist/typescript/icons/index.d.ts.map +1 -1
  93. package/dist/typescript/index.d.ts +1 -0
  94. package/dist/typescript/index.d.ts.map +1 -1
  95. package/dist/typescript/providers/NoiseCancellation/NoiseCancellationProvider.d.ts +34 -0
  96. package/dist/typescript/providers/NoiseCancellation/NoiseCancellationProvider.d.ts.map +1 -0
  97. package/dist/typescript/providers/NoiseCancellation/index.d.ts +2 -0
  98. package/dist/typescript/providers/NoiseCancellation/index.d.ts.map +1 -0
  99. package/dist/typescript/providers/NoiseCancellation/lib.d.ts +8 -0
  100. package/dist/typescript/providers/NoiseCancellation/lib.d.ts.map +1 -0
  101. package/dist/typescript/version.d.ts +1 -1
  102. package/expo-config-plugin/dist/index.js +2 -0
  103. package/expo-config-plugin/dist/withAndroidPermissions.js +1 -0
  104. package/expo-config-plugin/dist/withAppDelegate.js +26 -7
  105. package/expo-config-plugin/dist/withMainApplication.js +24 -0
  106. package/package.json +10 -5
  107. package/src/components/Livestream/LivestreamControls/ViewerLeaveStreamButton.tsx +30 -48
  108. package/src/components/Livestream/LivestreamControls/ViewerLivestreamControls.tsx +260 -43
  109. package/src/components/Livestream/LivestreamLayout/LivestreamLayout.tsx +1 -1
  110. package/src/components/Livestream/LivestreamPlayer/LivestreamEnded.tsx +130 -0
  111. package/src/components/Livestream/LivestreamPlayer/LivestreamPlayer.tsx +15 -5
  112. package/src/components/Livestream/LivestreamTopView/DurationBadge.tsx +35 -38
  113. package/src/components/Livestream/LivestreamTopView/FollowerCount.tsx +40 -47
  114. package/src/components/Livestream/LivestreamTopView/LiveIndicator.tsx +22 -14
  115. package/src/components/Livestream/ViewerLivestream/ViewerLivestream.tsx +107 -10
  116. package/src/components/Livestream/ViewerLivestream/ViewerLobby.tsx +171 -0
  117. package/src/icons/LivestreamControls.tsx +51 -0
  118. package/src/icons/Maximize.tsx +48 -0
  119. package/src/icons/index.tsx +1 -0
  120. package/src/index.ts +1 -0
  121. package/src/providers/NoiseCancellation/NoiseCancellationProvider.tsx +147 -0
  122. package/src/providers/NoiseCancellation/index.ts +1 -0
  123. package/src/providers/NoiseCancellation/lib.ts +37 -0
  124. package/src/version.ts +1 -1
@@ -7,7 +7,6 @@ exports.DurationBadge = void 0;
7
7
  var _react = _interopRequireWildcard(require("react"));
8
8
  var _reactNative = require("react-native");
9
9
  var _contexts = require("../../../contexts");
10
- var _icons = require("../../../icons");
11
10
  var _videoReactBindings = require("@stream-io/video-react-bindings");
12
11
  function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
13
12
  /**
@@ -20,6 +19,7 @@ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r
20
19
  const DurationBadge = ({
21
20
  mode
22
21
  }) => {
22
+ const styles = useStyles();
23
23
  const {
24
24
  useCallSession
25
25
  } = (0, _videoReactBindings.useCallStateHooks)();
@@ -36,9 +36,6 @@ const DurationBadge = ({
36
36
  const {
37
37
  theme: {
38
38
  colors,
39
- variants: {
40
- iconSizes
41
- },
42
39
  durationBadge
43
40
  }
44
41
  } = (0, _contexts.useTheme)();
@@ -109,34 +106,41 @@ const DurationBadge = ({
109
106
  backgroundColor: colors.sheetTertiary
110
107
  }, durationBadge.container]
111
108
  }, /*#__PURE__*/_react.default.createElement(_reactNative.View, {
112
- style: [styles.icon, {
113
- height: iconSizes.xs,
114
- width: iconSizes.xs
115
- }, durationBadge.icon]
116
- }, /*#__PURE__*/_react.default.createElement(_icons.ShieldBadge, null)), /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
109
+ style: [styles.dot, durationBadge.icon]
110
+ }), /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
117
111
  style: [styles.label, {
118
112
  color: colors.textPrimary
119
113
  }, durationBadge.label]
120
114
  }, formatDuration(duration)));
121
115
  };
122
116
  exports.DurationBadge = DurationBadge;
123
- const styles = _reactNative.StyleSheet.create({
124
- container: {
125
- paddingHorizontal: 8,
126
- paddingVertical: 4,
127
- borderRadius: 4,
128
- flexDirection: 'row',
129
- alignItems: 'center',
130
- justifyContent: 'center'
131
- },
132
- icon: {},
133
- label: {
134
- textAlign: 'center',
135
- fontSize: 13,
136
- fontWeight: '400',
137
- flexShrink: 1,
138
- includeFontPadding: false,
139
- paddingLeft: 4
140
- }
141
- });
117
+ const useStyles = () => {
118
+ const {
119
+ theme
120
+ } = (0, _contexts.useTheme)();
121
+ return (0, _react.useMemo)(() => _reactNative.StyleSheet.create({
122
+ container: {
123
+ paddingHorizontal: theme.variants.spacingSizes.sm,
124
+ paddingVertical: theme.variants.spacingSizes.sm,
125
+ borderRadius: theme.variants.borderRadiusSizes.sm,
126
+ flexDirection: 'row',
127
+ alignItems: 'center',
128
+ justifyContent: 'center'
129
+ },
130
+ dot: {
131
+ backgroundColor: theme.colors.iconWarning,
132
+ marginRight: theme.variants.spacingSizes.xs,
133
+ borderRadius: 90,
134
+ height: 10,
135
+ width: 10
136
+ },
137
+ label: {
138
+ textAlign: 'center',
139
+ fontSize: theme.variants.fontSizes.md,
140
+ fontWeight: '600',
141
+ flexShrink: 1,
142
+ paddingLeft: theme.variants.spacingSizes.xs
143
+ }
144
+ }), [theme]);
145
+ };
142
146
  //# sourceMappingURL=DurationBadge.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_contexts","_icons","_videoReactBindings","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","DurationBadge","mode","useCallSession","useCallStateHooks","session","duration","setDuration","useState","live_started_at","liveStartTime","Date","now","Math","floor","getTime","useCall","theme","colors","variants","iconSizes","durationBadge","useTheme","useEffect","intervalId","handleLiveStarted","setInterval","d","handleLiveEnded","event","callDetails","live_ended_at","clearInterval","callLiveStartedUnsubscribe","on","callUpdatedUnsubscribe","formatDuration","durationInMs","days","hours","minutes","seconds","createElement","View","style","styles","container","backgroundColor","sheetTertiary","icon","height","xs","width","ShieldBadge","Text","label","color","textPrimary","exports","StyleSheet","create","paddingHorizontal","paddingVertical","borderRadius","flexDirection","alignItems","justifyContent","textAlign","fontSize","fontWeight","flexShrink","includeFontPadding","paddingLeft"],"sourceRoot":"../../../../../src","sources":["components/Livestream/LivestreamTopView/DurationBadge.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_contexts","_videoReactBindings","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","DurationBadge","mode","styles","useStyles","useCallSession","useCallStateHooks","session","duration","setDuration","useState","live_started_at","liveStartTime","Date","now","Math","floor","getTime","useCall","theme","colors","durationBadge","useTheme","useEffect","intervalId","handleLiveStarted","setInterval","d","handleLiveEnded","event","callDetails","live_ended_at","clearInterval","callLiveStartedUnsubscribe","on","callUpdatedUnsubscribe","formatDuration","durationInMs","days","hours","minutes","seconds","createElement","View","style","container","backgroundColor","sheetTertiary","dot","icon","Text","label","color","textPrimary","exports","useMemo","StyleSheet","create","paddingHorizontal","variants","spacingSizes","sm","paddingVertical","borderRadius","borderRadiusSizes","flexDirection","alignItems","justifyContent","iconWarning","marginRight","xs","height","width","textAlign","fontSize","fontSizes","md","fontWeight","flexShrink","paddingLeft"],"sourceRoot":"../../../../../src","sources":["components/Livestream/LivestreamTopView/DurationBadge.tsx"],"mappings":"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","ignoreList":[]}
@@ -4,12 +4,12 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.FollowerCount = void 0;
7
- var _react = _interopRequireDefault(require("react"));
7
+ var _react = _interopRequireWildcard(require("react"));
8
8
  var _reactNative = require("react-native");
9
9
  var _contexts = require("../../../contexts");
10
10
  var _videoReactBindings = require("@stream-io/video-react-bindings");
11
11
  var _icons = require("../../../icons");
12
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
12
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
13
13
  /**
14
14
  * Props for the FollowerCount component.
15
15
  */
@@ -18,12 +18,9 @@ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e
18
18
  * The FollowerCount component that displays the number of participants while in the call.
19
19
  */
20
20
  const FollowerCount = ({}) => {
21
+ const styles = useStyles();
21
22
  const {
22
23
  theme: {
23
- colors,
24
- variants: {
25
- iconSizes
26
- },
27
24
  followerCount
28
25
  }
29
26
  } = (0, _contexts.useTheme)();
@@ -32,39 +29,42 @@ const FollowerCount = ({}) => {
32
29
  } = (0, _videoReactBindings.useCallStateHooks)();
33
30
  const totalParticipants = useParticipantCount();
34
31
  return /*#__PURE__*/_react.default.createElement(_reactNative.View, {
35
- style: [styles.container, {
36
- backgroundColor: colors.sheetTertiary
37
- }, followerCount.container]
32
+ style: [styles.container, followerCount.container]
38
33
  }, /*#__PURE__*/_react.default.createElement(_reactNative.View, {
39
- style: [styles.icon, {
40
- height: iconSizes.xs,
41
- width: iconSizes.xs
42
- }, followerCount.icon]
34
+ style: [styles.icon, followerCount.icon]
43
35
  }, /*#__PURE__*/_react.default.createElement(_icons.Eye, null)), /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
44
- style: [styles.label, {
45
- color: colors.textPrimary
46
- }, followerCount.label]
36
+ style: [styles.label, followerCount.label]
47
37
  }, totalParticipants));
48
38
  };
49
39
  exports.FollowerCount = FollowerCount;
50
- const styles = _reactNative.StyleSheet.create({
51
- container: {
52
- paddingHorizontal: 8,
53
- paddingVertical: 4,
54
- borderTopRightRadius: 4,
55
- borderBottomRightRadius: 4,
56
- flexDirection: 'row',
57
- alignItems: 'center',
58
- justifyContent: 'center'
59
- },
60
- icon: {},
61
- label: {
62
- fontSize: 13,
63
- fontWeight: '400',
64
- flexShrink: 1,
65
- textAlign: 'center',
66
- includeFontPadding: false,
67
- marginLeft: 4
68
- }
69
- });
40
+ const useStyles = () => {
41
+ const {
42
+ theme
43
+ } = (0, _contexts.useTheme)();
44
+ return (0, _react.useMemo)(() => _reactNative.StyleSheet.create({
45
+ container: {
46
+ paddingHorizontal: theme.variants.spacingSizes.sm,
47
+ paddingVertical: 4,
48
+ borderTopRightRadius: 4,
49
+ borderBottomRightRadius: 4,
50
+ flexDirection: 'row',
51
+ alignItems: 'center',
52
+ justifyContent: 'center',
53
+ backgroundColor: theme.colors.sheetTertiary
54
+ },
55
+ icon: {
56
+ height: theme.variants.iconSizes.sm,
57
+ width: theme.variants.iconSizes.sm
58
+ },
59
+ label: {
60
+ fontSize: theme.variants.fontSizes.md,
61
+ fontWeight: '600',
62
+ flexShrink: 1,
63
+ textAlign: 'center',
64
+ includeFontPadding: false,
65
+ marginLeft: theme.variants.spacingSizes.xs,
66
+ color: theme.colors.textPrimary
67
+ }
68
+ }), [theme]);
69
+ };
70
70
  //# sourceMappingURL=FollowerCount.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_contexts","_videoReactBindings","_icons","e","__esModule","default","FollowerCount","theme","colors","variants","iconSizes","followerCount","useTheme","useParticipantCount","useCallStateHooks","totalParticipants","createElement","View","style","styles","container","backgroundColor","sheetTertiary","icon","height","xs","width","Eye","Text","label","color","textPrimary","exports","StyleSheet","create","paddingHorizontal","paddingVertical","borderTopRightRadius","borderBottomRightRadius","flexDirection","alignItems","justifyContent","fontSize","fontWeight","flexShrink","textAlign","includeFontPadding","marginLeft"],"sourceRoot":"../../../../../src","sources":["components/Livestream/LivestreamTopView/FollowerCount.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AACA,IAAAE,SAAA,GAAAF,OAAA;AACA,IAAAG,mBAAA,GAAAH,OAAA;AACA,IAAAI,MAAA,GAAAJ,OAAA;AAAqC,SAAAD,uBAAAM,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAErC;AACA;AACA;;AAGA;AACA;AACA;AACO,MAAMG,aAAa,GAAGA,CAAC,CAAqB,CAAC,KAAK;EACvD,MAAM;IACJC,KAAK,EAAE;MACLC,MAAM;MACNC,QAAQ,EAAE;QAAEC;MAAU,CAAC;MACvBC;IACF;EACF,CAAC,GAAG,IAAAC,kBAAQ,EAAC,CAAC;EACd,MAAM;IAAEC;EAAoB,CAAC,GAAG,IAAAC,qCAAiB,EAAC,CAAC;EACnD,MAAMC,iBAAiB,GAAGF,mBAAmB,CAAC,CAAC;EAC/C,oBACEjB,MAAA,CAAAS,OAAA,CAAAW,aAAA,CAACjB,YAAA,CAAAkB,IAAI;IACHC,KAAK,EAAE,CACLC,MAAM,CAACC,SAAS,EAChB;MAAEC,eAAe,EAAEb,MAAM,CAACc;IAAc,CAAC,EACzCX,aAAa,CAACS,SAAS;EACvB,gBAEFxB,MAAA,CAAAS,OAAA,CAAAW,aAAA,CAACjB,YAAA,CAAAkB,IAAI;IACHC,KAAK,EAAE,CACLC,MAAM,CAACI,IAAI,EACX;MAAEC,MAAM,EAAEd,SAAS,CAACe,EAAE;MAAEC,KAAK,EAAEhB,SAAS,CAACe;IAAG,CAAC,EAC7Cd,aAAa,CAACY,IAAI;EAClB,gBAEF3B,MAAA,CAAAS,OAAA,CAAAW,aAAA,CAACd,MAAA,CAAAyB,GAAG,MAAE,CACF,CAAC,eACP/B,MAAA,CAAAS,OAAA,CAAAW,aAAA,CAACjB,YAAA,CAAA6B,IAAI;IACHV,KAAK,EAAE,CACLC,MAAM,CAACU,KAAK,EACZ;MAAEC,KAAK,EAAEtB,MAAM,CAACuB;IAAY,CAAC,EAC7BpB,aAAa,CAACkB,KAAK;EACnB,GAEDd,iBACG,CACF,CAAC;AAEX,CAAC;AAACiB,OAAA,CAAA1B,aAAA,GAAAA,aAAA;AAEF,MAAMa,MAAM,GAAGc,uBAAU,CAACC,MAAM,CAAC;EAC/Bd,SAAS,EAAE;IACTe,iBAAiB,EAAE,CAAC;IACpBC,eAAe,EAAE,CAAC;IAClBC,oBAAoB,EAAE,CAAC;IACvBC,uBAAuB,EAAE,CAAC;IAC1BC,aAAa,EAAE,KAAK;IACpBC,UAAU,EAAE,QAAQ;IACpBC,cAAc,EAAE;EAClB,CAAC;EACDlB,IAAI,EAAE,CAAC,CAAC;EACRM,KAAK,EAAE;IACLa,QAAQ,EAAE,EAAE;IACZC,UAAU,EAAE,KAAK;IACjBC,UAAU,EAAE,CAAC;IACbC,SAAS,EAAE,QAAQ;IACnBC,kBAAkB,EAAE,KAAK;IACzBC,UAAU,EAAE;EACd;AACF,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_contexts","_videoReactBindings","_icons","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","FollowerCount","styles","useStyles","theme","followerCount","useTheme","useParticipantCount","useCallStateHooks","totalParticipants","createElement","View","style","container","icon","Eye","Text","label","exports","useMemo","StyleSheet","create","paddingHorizontal","variants","spacingSizes","sm","paddingVertical","borderTopRightRadius","borderBottomRightRadius","flexDirection","alignItems","justifyContent","backgroundColor","colors","sheetTertiary","height","iconSizes","width","fontSize","fontSizes","md","fontWeight","flexShrink","textAlign","includeFontPadding","marginLeft","xs","color","textPrimary"],"sourceRoot":"../../../../../src","sources":["components/Livestream/LivestreamTopView/FollowerCount.tsx"],"mappings":"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","ignoreList":[]}
@@ -4,11 +4,11 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.LiveIndicator = void 0;
7
- var _react = _interopRequireDefault(require("react"));
7
+ var _react = _interopRequireWildcard(require("react"));
8
8
  var _reactNative = require("react-native");
9
9
  var _contexts = require("../../../contexts");
10
10
  var _videoReactBindings = require("@stream-io/video-react-bindings");
11
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
11
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
12
12
  /**
13
13
  * Props for the LiveIndicator component.
14
14
  */
@@ -17,6 +17,7 @@ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e
17
17
  * The LiveIndicator component displays whether the live stream is live or not.
18
18
  */
19
19
  const LiveIndicator = ({}) => {
20
+ const styles = useStyles();
20
21
  const {
21
22
  theme: {
22
23
  colors,
@@ -38,17 +39,22 @@ const LiveIndicator = ({}) => {
38
39
  }, t('Live')));
39
40
  };
40
41
  exports.LiveIndicator = LiveIndicator;
41
- const styles = _reactNative.StyleSheet.create({
42
- container: {
43
- paddingHorizontal: 8,
44
- paddingVertical: 4,
45
- borderTopLeftRadius: 4,
46
- borderBottomLeftRadius: 4,
47
- justifyContent: 'center'
48
- },
49
- label: {
50
- textAlign: 'center',
51
- includeFontPadding: false
52
- }
53
- });
42
+ const useStyles = () => {
43
+ const {
44
+ theme
45
+ } = (0, _contexts.useTheme)();
46
+ return (0, _react.useMemo)(() => _reactNative.StyleSheet.create({
47
+ container: {
48
+ paddingHorizontal: theme.variants.spacingSizes.sm,
49
+ paddingVertical: theme.variants.spacingSizes.sm,
50
+ borderTopLeftRadius: theme.variants.borderRadiusSizes.sm,
51
+ borderBottomLeftRadius: theme.variants.borderRadiusSizes.sm,
52
+ justifyContent: 'center'
53
+ },
54
+ label: {
55
+ textAlign: 'center',
56
+ includeFontPadding: false
57
+ }
58
+ }), [theme]);
59
+ };
54
60
  //# sourceMappingURL=LiveIndicator.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_contexts","_videoReactBindings","e","__esModule","default","LiveIndicator","theme","colors","typefaces","liveIndicator","useTheme","t","useI18n","createElement","View","style","styles","container","backgroundColor","buttonPrimary","Text","label","color","textPrimary","subtitleBold","exports","StyleSheet","create","paddingHorizontal","paddingVertical","borderTopLeftRadius","borderBottomLeftRadius","justifyContent","textAlign","includeFontPadding"],"sourceRoot":"../../../../../src","sources":["components/Livestream/LivestreamTopView/LiveIndicator.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AACA,IAAAE,SAAA,GAAAF,OAAA;AACA,IAAAG,mBAAA,GAAAH,OAAA;AAA0D,SAAAD,uBAAAK,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAE1D;AACA;AACA;;AAGA;AACA;AACA;AACO,MAAMG,aAAa,GAAGA,CAAC,CAAqB,CAAC,KAAK;EACvD,MAAM;IACJC,KAAK,EAAE;MAAEC,MAAM;MAAEC,SAAS;MAAEC;IAAc;EAC5C,CAAC,GAAG,IAAAC,kBAAQ,EAAC,CAAC;EACd,MAAM;IAAEC;EAAE,CAAC,GAAG,IAAAC,2BAAO,EAAC,CAAC;EACvB,oBACEhB,MAAA,CAAAQ,OAAA,CAAAS,aAAA,CAACd,YAAA,CAAAe,IAAI;IACHC,KAAK,EAAE,CACLC,MAAM,CAACC,SAAS,EAChB;MAAEC,eAAe,EAAEX,MAAM,CAACY;IAAc,CAAC,EACzCV,aAAa,CAACQ,SAAS;EACvB,gBAEFrB,MAAA,CAAAQ,OAAA,CAAAS,aAAA,CAACd,YAAA,CAAAqB,IAAI;IACHL,KAAK,EAAE,CACLC,MAAM,CAACK,KAAK,EACZ;MAAEC,KAAK,EAAEf,MAAM,CAACgB;IAAY,CAAC,EAC7Bf,SAAS,CAACgB,YAAY,EACtBf,aAAa,CAACY,KAAK;EACnB,GAEDV,CAAC,CAAC,MAAM,CACL,CACF,CAAC;AAEX,CAAC;AAACc,OAAA,CAAApB,aAAA,GAAAA,aAAA;AAEF,MAAMW,MAAM,GAAGU,uBAAU,CAACC,MAAM,CAAC;EAC/BV,SAAS,EAAE;IACTW,iBAAiB,EAAE,CAAC;IACpBC,eAAe,EAAE,CAAC;IAClBC,mBAAmB,EAAE,CAAC;IACtBC,sBAAsB,EAAE,CAAC;IACzBC,cAAc,EAAE;EAClB,CAAC;EACDX,KAAK,EAAE;IACLY,SAAS,EAAE,QAAQ;IACnBC,kBAAkB,EAAE;EACtB;AACF,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_contexts","_videoReactBindings","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","LiveIndicator","styles","useStyles","theme","colors","typefaces","liveIndicator","useTheme","useI18n","createElement","View","style","container","backgroundColor","buttonPrimary","Text","label","color","textPrimary","subtitleBold","exports","useMemo","StyleSheet","create","paddingHorizontal","variants","spacingSizes","sm","paddingVertical","borderTopLeftRadius","borderRadiusSizes","borderBottomLeftRadius","justifyContent","textAlign","includeFontPadding"],"sourceRoot":"../../../../../src","sources":["components/Livestream/LivestreamTopView/LiveIndicator.tsx"],"mappings":"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","ignoreList":[]}
@@ -8,12 +8,13 @@ var _react = _interopRequireWildcard(require("react"));
8
8
  var _reactNative = require("react-native");
9
9
  var _reactNativeIncallManager = _interopRequireDefault(require("react-native-incall-manager"));
10
10
  var _contexts = require("../../../contexts");
11
- var _ViewerLivestreamTopView = require("../LivestreamTopView/ViewerLivestreamTopView");
12
11
  var _ViewerLivestreamControls = require("../LivestreamControls/ViewerLivestreamControls");
13
12
  var _LivestreamLayout = require("../LivestreamLayout");
14
13
  var _videoReactBindings = require("@stream-io/video-react-bindings");
15
14
  var _Participant = require("../../Participant");
16
15
  var _videoClient = require("@stream-io/video-client");
16
+ var _LivestreamEnded = require("../LivestreamPlayer/LivestreamEnded");
17
+ var _ViewerLobby = require("./ViewerLobby");
17
18
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
18
19
  function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
19
20
  /**
@@ -24,7 +25,7 @@ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r
24
25
  * The ViewerLivestream component renders the UI for the Viewer's live stream.
25
26
  */
26
27
  const ViewerLivestream = ({
27
- ViewerLivestreamTopView = _ViewerLivestreamTopView.ViewerLivestreamTopView,
28
+ ViewerLivestreamTopView,
28
29
  ViewerLivestreamControls = _ViewerLivestreamControls.ViewerLivestreamControls,
29
30
  LivestreamLayout = _LivestreamLayout.LivestreamLayout,
30
31
  FloatingParticipantView = _Participant.FloatingParticipantView,
@@ -32,9 +33,11 @@ const ViewerLivestream = ({
32
33
  FollowerCount,
33
34
  DurationBadge,
34
35
  ViewerLeaveStreamButton,
35
- onLeaveStreamHandler
36
+ onLeaveStreamHandler,
37
+ joinBehavior
36
38
  }) => {
37
39
  const styles = useStyles();
40
+ const call = (0, _videoReactBindings.useCall)();
38
41
  const {
39
42
  theme: {
40
43
  viewerLivestream
@@ -42,11 +45,21 @@ const ViewerLivestream = ({
42
45
  } = (0, _contexts.useTheme)();
43
46
  const {
44
47
  useHasOngoingScreenShare,
45
- useParticipants
48
+ useParticipants,
49
+ useCallCallingState,
50
+ useCallEndedAt,
51
+ useIsCallLive,
52
+ useOwnCapabilities
46
53
  } = (0, _videoReactBindings.useCallStateHooks)();
54
+ const canJoinLive = useIsCallLive();
55
+ const callingState = useCallCallingState();
56
+ const endedAt = useCallEndedAt();
47
57
  const hasOngoingScreenShare = useHasOngoingScreenShare();
48
58
  const [currentSpeaker] = useParticipants();
49
59
  const floatingParticipant = hasOngoingScreenShare && currentSpeaker && (0, _videoClient.hasVideo)(currentSpeaker) && currentSpeaker;
60
+ const [hasLeft, setHasLeft] = (0, _react.useState)(false);
61
+ const canJoinEarly = useCanJoinEarly();
62
+ const canJoinBackstage = useOwnCapabilities()?.includes('join-backstage') ?? false;
50
63
  const [topViewHeight, setTopViewHeight] = _react.default.useState();
51
64
  const [controlsHeight, setControlsHeight] = _react.default.useState();
52
65
 
@@ -57,6 +70,11 @@ const ViewerLivestream = ({
57
70
  });
58
71
  return () => _reactNativeIncallManager.default.stop();
59
72
  }, []);
73
+ (0, _react.useEffect)(() => {
74
+ if (callingState === _videoClient.CallingState.LEFT) {
75
+ setHasLeft(true);
76
+ }
77
+ }, [callingState]);
60
78
  const topViewProps = {
61
79
  LiveIndicator,
62
80
  FollowerCount,
@@ -65,6 +83,29 @@ const ViewerLivestream = ({
65
83
  setTopViewHeight(event.nativeEvent.layout.height);
66
84
  }
67
85
  };
86
+ (0, _react.useEffect)(() => {
87
+ const handleJoinCall = async () => {
88
+ try {
89
+ await call?.join();
90
+ } catch (error) {
91
+ console.error('Failed to join call', error);
92
+ }
93
+ };
94
+ const canJoinAsap = canJoinLive || canJoinEarly || canJoinBackstage;
95
+ const join = joinBehavior ?? 'asap';
96
+ const canJoin = join === 'asap' && canJoinAsap || join === 'live' && canJoinLive;
97
+ if (call && callingState === _videoClient.CallingState.IDLE && canJoin && !hasLeft) {
98
+ handleJoinCall();
99
+ }
100
+ }, [canJoinLive, call, canJoinBackstage, canJoinEarly, joinBehavior, callingState, hasLeft]);
101
+ if (endedAt != null) {
102
+ return /*#__PURE__*/_react.default.createElement(_LivestreamEnded.CallEndedView, null);
103
+ }
104
+ if (!canJoinLive || callingState !== _videoClient.CallingState.JOINED) {
105
+ return /*#__PURE__*/_react.default.createElement(_ViewerLobby.ViewerLobby, {
106
+ isLive: canJoinLive
107
+ });
108
+ }
68
109
  return /*#__PURE__*/_react.default.createElement(_reactNative.View, {
69
110
  style: [styles.container, viewerLivestream.container]
70
111
  }, ViewerLivestreamTopView && /*#__PURE__*/_react.default.createElement(ViewerLivestreamTopView, topViewProps), FloatingParticipantView && floatingParticipant && topViewHeight && controlsHeight && /*#__PURE__*/_react.default.createElement(FloatingParticipantView, {
@@ -82,6 +123,31 @@ const ViewerLivestream = ({
82
123
  }));
83
124
  };
84
125
  exports.ViewerLivestream = ViewerLivestream;
126
+ const useCanJoinEarly = () => {
127
+ const {
128
+ useCallStartsAt,
129
+ useCallSettings
130
+ } = (0, _videoReactBindings.useCallStateHooks)();
131
+ const startsAt = useCallStartsAt();
132
+ const settings = useCallSettings();
133
+ const joinAheadTimeSeconds = settings?.backstage.join_ahead_time_seconds;
134
+ const [canJoinEarly, setCanJoinEarly] = (0, _react.useState)(() => checkCanJoinEarly(startsAt, joinAheadTimeSeconds));
135
+ (0, _react.useEffect)(() => {
136
+ if (!canJoinEarly) {
137
+ const handle = setInterval(() => {
138
+ setCanJoinEarly(checkCanJoinEarly(startsAt, joinAheadTimeSeconds));
139
+ }, 1000);
140
+ return () => clearInterval(handle);
141
+ }
142
+ }, [canJoinEarly, startsAt, joinAheadTimeSeconds]);
143
+ return canJoinEarly;
144
+ };
145
+ const checkCanJoinEarly = (startsAt, joinAheadTimeSeconds) => {
146
+ if (!startsAt) {
147
+ return false;
148
+ }
149
+ return Date.now() >= +startsAt - (joinAheadTimeSeconds ?? 0) * 1000;
150
+ };
85
151
  const useStyles = () => {
86
152
  const {
87
153
  theme
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_reactNativeIncallManager","_interopRequireDefault","_contexts","_ViewerLivestreamTopView","_ViewerLivestreamControls","_LivestreamLayout","_videoReactBindings","_Participant","_videoClient","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","ViewerLivestream","ViewerLivestreamTopView","DefaultViewerLivestreamTopView","ViewerLivestreamControls","DefaultViewerLivestreamControls","LivestreamLayout","DefaultLivestreamLayout","FloatingParticipantView","DefaultFloatingParticipantView","LiveIndicator","FollowerCount","DurationBadge","ViewerLeaveStreamButton","onLeaveStreamHandler","styles","useStyles","theme","viewerLivestream","useTheme","useHasOngoingScreenShare","useParticipants","useCallStateHooks","hasOngoingScreenShare","currentSpeaker","floatingParticipant","hasVideo","topViewHeight","setTopViewHeight","React","useState","controlsHeight","setControlsHeight","useEffect","InCallManager","start","media","stop","topViewProps","onLayout","event","nativeEvent","layout","height","createElement","View","style","container","participant","draggableContainerStyle","StyleSheet","absoluteFill","top","bottom","exports","useMemo","create","flex","paddingBottom","variants","insets","paddingLeft","left","paddingRight","right","paddingTop","backgroundColor","colors","sheetPrimary"],"sourceRoot":"../../../../../src","sources":["components/Livestream/ViewerLivestream/ViewerLivestream.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_reactNativeIncallManager","_interopRequireDefault","_contexts","_ViewerLivestreamControls","_LivestreamLayout","_videoReactBindings","_Participant","_videoClient","_LivestreamEnded","_ViewerLobby","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","ViewerLivestream","ViewerLivestreamTopView","ViewerLivestreamControls","DefaultViewerLivestreamControls","LivestreamLayout","DefaultLivestreamLayout","FloatingParticipantView","DefaultFloatingParticipantView","LiveIndicator","FollowerCount","DurationBadge","ViewerLeaveStreamButton","onLeaveStreamHandler","joinBehavior","styles","useStyles","useCall","theme","viewerLivestream","useTheme","useHasOngoingScreenShare","useParticipants","useCallCallingState","useCallEndedAt","useIsCallLive","useOwnCapabilities","useCallStateHooks","canJoinLive","callingState","endedAt","hasOngoingScreenShare","currentSpeaker","floatingParticipant","hasVideo","hasLeft","setHasLeft","useState","canJoinEarly","useCanJoinEarly","canJoinBackstage","includes","topViewHeight","setTopViewHeight","React","controlsHeight","setControlsHeight","useEffect","InCallManager","start","media","stop","CallingState","LEFT","topViewProps","onLayout","event","nativeEvent","layout","height","handleJoinCall","join","error","console","canJoinAsap","canJoin","IDLE","createElement","CallEndedView","JOINED","ViewerLobby","isLive","View","style","container","participant","draggableContainerStyle","StyleSheet","absoluteFill","top","bottom","exports","useCallStartsAt","useCallSettings","startsAt","settings","joinAheadTimeSeconds","backstage","join_ahead_time_seconds","setCanJoinEarly","checkCanJoinEarly","handle","setInterval","clearInterval","Date","now","useMemo","create","flex","paddingBottom","variants","insets","paddingLeft","left","paddingRight","right","paddingTop","backgroundColor","colors","sheetPrimary"],"sourceRoot":"../../../../../src","sources":["components/Livestream/ViewerLivestream/ViewerLivestream.tsx"],"mappings":"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","ignoreList":[]}