@100mslive/roomkit-react 0.3.19 → 0.3.20-alpha.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -3006,7 +3006,7 @@
3006
3006
  "format": "esm"
3007
3007
  },
3008
3008
  "src/Prebuilt/components/Settings/SettingsModal.jsx": {
3009
- "bytes": 9473,
3009
+ "bytes": 9451,
3010
3010
  "imports": [
3011
3011
  {
3012
3012
  "path": "react",
@@ -5749,7 +5749,7 @@
5749
5749
  "format": "cjs"
5750
5750
  },
5751
5751
  "../hms-video-store/dist/index.js": {
5752
- "bytes": 367512,
5752
+ "bytes": 367546,
5753
5753
  "imports": [
5754
5754
  {
5755
5755
  "path": "../../node_modules/reselect/es/index.js",
@@ -9586,6 +9586,22 @@
9586
9586
  ],
9587
9587
  "format": "esm"
9588
9588
  },
9589
+ "src/Prebuilt/components/peerTileUtils.tsx": {
9590
+ "bytes": 1529,
9591
+ "imports": [
9592
+ {
9593
+ "path": "@100mslive/react-sdk",
9594
+ "kind": "import-statement",
9595
+ "external": true
9596
+ },
9597
+ {
9598
+ "path": "<define:process.env>",
9599
+ "kind": "import-statement",
9600
+ "external": true
9601
+ }
9602
+ ],
9603
+ "format": "esm"
9604
+ },
9589
9605
  "src/Prebuilt/components/TileMenu/utils.ts": {
9590
9606
  "bytes": 214,
9591
9607
  "imports": [
@@ -9598,7 +9614,7 @@
9598
9614
  "format": "esm"
9599
9615
  },
9600
9616
  "src/Prebuilt/components/TileMenu/TileMenuContent.tsx": {
9601
- "bytes": 12236,
9617
+ "bytes": 12271,
9602
9618
  "imports": [
9603
9619
  {
9604
9620
  "path": "react",
@@ -9689,7 +9705,7 @@
9689
9705
  "format": "esm"
9690
9706
  },
9691
9707
  "src/Prebuilt/components/TileMenu/TileMenu.tsx": {
9692
- "bytes": 5158,
9708
+ "bytes": 5392,
9693
9709
  "imports": [
9694
9710
  {
9695
9711
  "path": "react",
@@ -9741,6 +9757,11 @@
9741
9757
  "kind": "import-statement",
9742
9758
  "original": "../MoreSettings/ChangeNameModal"
9743
9759
  },
9760
+ {
9761
+ "path": "src/Prebuilt/components/peerTileUtils.tsx",
9762
+ "kind": "import-statement",
9763
+ "original": "../peerTileUtils"
9764
+ },
9744
9765
  {
9745
9766
  "path": "src/Prebuilt/components/RoleChangeModal.tsx",
9746
9767
  "kind": "import-statement",
@@ -9779,19 +9800,8 @@
9779
9800
  ],
9780
9801
  "format": "esm"
9781
9802
  },
9782
- "src/Prebuilt/components/peerTileUtils.jsx": {
9783
- "bytes": 1197,
9784
- "imports": [
9785
- {
9786
- "path": "<define:process.env>",
9787
- "kind": "import-statement",
9788
- "external": true
9789
- }
9790
- ],
9791
- "format": "esm"
9792
- },
9793
9803
  "src/Prebuilt/components/VideoTile.tsx": {
9794
- "bytes": 7106,
9804
+ "bytes": 7103,
9795
9805
  "imports": [
9796
9806
  {
9797
9807
  "path": "react",
@@ -9854,7 +9864,7 @@
9854
9864
  "original": "../../VideoTile"
9855
9865
  },
9856
9866
  {
9857
- "path": "src/Prebuilt/components/peerTileUtils.jsx",
9867
+ "path": "src/Prebuilt/components/peerTileUtils.tsx",
9858
9868
  "kind": "import-statement",
9859
9869
  "original": "./peerTileUtils"
9860
9870
  },
@@ -10728,7 +10738,7 @@
10728
10738
  "format": "esm"
10729
10739
  },
10730
10740
  "src/Prebuilt/components/VideoLayouts/EqualProminence.tsx": {
10731
- "bytes": 2113,
10741
+ "bytes": 2301,
10732
10742
  "imports": [
10733
10743
  {
10734
10744
  "path": "react",
@@ -10740,6 +10750,11 @@
10740
10750
  "kind": "import-statement",
10741
10751
  "external": true
10742
10752
  },
10753
+ {
10754
+ "path": "@100mslive/react-sdk",
10755
+ "kind": "import-statement",
10756
+ "external": true
10757
+ },
10743
10758
  {
10744
10759
  "path": "@100mslive/react-icons",
10745
10760
  "kind": "import-statement",
@@ -11110,7 +11125,7 @@
11110
11125
  "format": "esm"
11111
11126
  },
11112
11127
  "src/Prebuilt/components/ScreenshareTile.tsx": {
11113
- "bytes": 4479,
11128
+ "bytes": 4476,
11114
11129
  "imports": [
11115
11130
  {
11116
11131
  "path": "react",
@@ -11173,7 +11188,7 @@
11173
11188
  "original": "./LayoutModeSelector"
11174
11189
  },
11175
11190
  {
11176
- "path": "src/Prebuilt/components/peerTileUtils.jsx",
11191
+ "path": "src/Prebuilt/components/peerTileUtils.tsx",
11177
11192
  "kind": "import-statement",
11178
11193
  "original": "./peerTileUtils"
11179
11194
  },
@@ -11276,7 +11291,7 @@
11276
11291
  ],
11277
11292
  "format": "esm"
11278
11293
  },
11279
- "../../../../../../../tmp/tmp-2799-ZYtx9hL3ahhi/191d74314533/tldraw.css": {
11294
+ "../../../../../../../tmp/tmp-2794-9MjVo32PL1Ra/191e53e10ba3/tldraw.css": {
11280
11295
  "bytes": 80111,
11281
11296
  "imports": [
11282
11297
  {
@@ -11326,7 +11341,7 @@
11326
11341
  }
11327
11342
  ]
11328
11343
  },
11329
- "../../../../../../../tmp/tmp-2799-ZYtx9hL3ahhi/191d74314391/index.css": {
11344
+ "../../../../../../../tmp/tmp-2794-9MjVo32PL1Ra/191e53e10281/index.css": {
11330
11345
  "bytes": 597,
11331
11346
  "imports": [
11332
11347
  {
@@ -11335,7 +11350,7 @@
11335
11350
  "external": true
11336
11351
  },
11337
11352
  {
11338
- "path": "../../../../../../../tmp/tmp-2799-ZYtx9hL3ahhi/191d74314533/tldraw.css",
11353
+ "path": "../../../../../../../tmp/tmp-2794-9MjVo32PL1Ra/191e53e10ba3/tldraw.css",
11339
11354
  "kind": "import-rule",
11340
11355
  "original": "@tldraw/tldraw/tldraw.css"
11341
11356
  }
@@ -11410,7 +11425,7 @@
11410
11425
  "original": "../../common/constants"
11411
11426
  },
11412
11427
  {
11413
- "path": "../../../../../../../tmp/tmp-2799-ZYtx9hL3ahhi/191d74314391/index.css",
11428
+ "path": "../../../../../../../tmp/tmp-2794-9MjVo32PL1Ra/191e53e10281/index.css",
11414
11429
  "kind": "import-statement",
11415
11430
  "original": "@100mslive/hms-whiteboard/index.css"
11416
11431
  },
@@ -13742,7 +13757,7 @@
13742
13757
  "format": "esm"
13743
13758
  },
13744
13759
  "src/Prebuilt/components/Notifications/TrackUnmuteModal.tsx": {
13745
- "bytes": 1639,
13760
+ "bytes": 1640,
13746
13761
  "imports": [
13747
13762
  {
13748
13763
  "path": "react",
@@ -15398,7 +15413,7 @@
15398
15413
  "dist/index.js": {
15399
15414
  "imports": [
15400
15415
  {
15401
- "path": "dist/chunk-DIIFM6TW.js",
15416
+ "path": "dist/chunk-JCM6FDIX.js",
15402
15417
  "kind": "import-statement"
15403
15418
  }
15404
15419
  ],
@@ -15474,16 +15489,16 @@
15474
15489
  "inputs": {},
15475
15490
  "bytes": 1882
15476
15491
  },
15477
- "dist/HLSView-GYB2QDIN.js.map": {
15492
+ "dist/HLSView-VBMAXHBP.js.map": {
15478
15493
  "imports": [],
15479
15494
  "exports": [],
15480
15495
  "inputs": {},
15481
15496
  "bytes": 100275
15482
15497
  },
15483
- "dist/HLSView-GYB2QDIN.js": {
15498
+ "dist/HLSView-VBMAXHBP.js": {
15484
15499
  "imports": [
15485
15500
  {
15486
- "path": "dist/chunk-DIIFM6TW.js",
15501
+ "path": "dist/chunk-JCM6FDIX.js",
15487
15502
  "kind": "import-statement"
15488
15503
  },
15489
15504
  {
@@ -15661,7 +15676,7 @@
15661
15676
  "default"
15662
15677
  ],
15663
15678
  "entryPoint": "src/Prebuilt/layouts/HLSView.jsx",
15664
- "cssBundle": "dist/HLSView-LNJLFWK4.css",
15679
+ "cssBundle": "dist/HLSView-5JM7XVA4.css",
15665
15680
  "inputs": {
15666
15681
  "src/Prebuilt/layouts/HLSView.jsx": {
15667
15682
  "bytesInOutput": 27671
@@ -15720,13 +15735,13 @@
15720
15735
  },
15721
15736
  "bytes": 61702
15722
15737
  },
15723
- "dist/chunk-DIIFM6TW.js.map": {
15738
+ "dist/chunk-JCM6FDIX.js.map": {
15724
15739
  "imports": [],
15725
15740
  "exports": [],
15726
15741
  "inputs": {},
15727
- "bytes": 3520614
15742
+ "bytes": 3521854
15728
15743
  },
15729
- "dist/chunk-DIIFM6TW.js": {
15744
+ "dist/chunk-JCM6FDIX.js": {
15730
15745
  "imports": [
15731
15746
  {
15732
15747
  "path": "react",
@@ -18018,6 +18033,11 @@
18018
18033
  "kind": "import-statement",
18019
18034
  "external": true
18020
18035
  },
18036
+ {
18037
+ "path": "@100mslive/react-sdk",
18038
+ "kind": "import-statement",
18039
+ "external": true
18040
+ },
18021
18041
  {
18022
18042
  "path": "@100mslive/react-icons",
18023
18043
  "kind": "import-statement",
@@ -18269,7 +18289,7 @@
18269
18289
  "external": true
18270
18290
  },
18271
18291
  {
18272
- "path": "dist/HLSView-GYB2QDIN.js",
18292
+ "path": "dist/HLSView-VBMAXHBP.js",
18273
18293
  "kind": "dynamic-import"
18274
18294
  },
18275
18295
  {
@@ -18888,7 +18908,7 @@
18888
18908
  ],
18889
18909
  "inputs": {
18890
18910
  "<define:process.env>": {
18891
- "bytesInOutput": 17932
18911
+ "bytesInOutput": 18008
18892
18912
  },
18893
18913
  "../../node_modules/lodash/lodash.js": {
18894
18914
  "bytesInOutput": 224301
@@ -19260,7 +19280,7 @@
19260
19280
  "bytesInOutput": 1390
19261
19281
  },
19262
19282
  "src/Prebuilt/components/Settings/SettingsModal.jsx": {
19263
- "bytesInOutput": 8960
19283
+ "bytesInOutput": 8942
19264
19284
  },
19265
19285
  "src/Sheet/index.ts": {
19266
19286
  "bytesInOutput": 27
@@ -19431,7 +19451,7 @@
19431
19451
  "bytesInOutput": 9861
19432
19452
  },
19433
19453
  "../hms-video-store/dist/index.js": {
19434
- "bytesInOutput": 52063
19454
+ "bytesInOutput": 52071
19435
19455
  },
19436
19456
  "../../node_modules/reselect/es/index.js": {
19437
19457
  "bytesInOutput": 2539
@@ -19689,23 +19709,23 @@
19689
19709
  "bytesInOutput": 2469
19690
19710
  },
19691
19711
  "src/Prebuilt/components/VideoTile.tsx": {
19692
- "bytesInOutput": 6608
19712
+ "bytesInOutput": 6636
19693
19713
  },
19694
19714
  "src/Prebuilt/components/Connection/TileConnection.tsx": {
19695
19715
  "bytesInOutput": 2406
19696
19716
  },
19697
19717
  "src/Prebuilt/components/TileMenu/TileMenu.tsx": {
19698
- "bytesInOutput": 4811
19718
+ "bytesInOutput": 4909
19719
+ },
19720
+ "src/Prebuilt/components/peerTileUtils.tsx": {
19721
+ "bytesInOutput": 1164
19699
19722
  },
19700
19723
  "src/Prebuilt/components/TileMenu/TileMenuContent.tsx": {
19701
- "bytesInOutput": 12243
19724
+ "bytesInOutput": 12271
19702
19725
  },
19703
19726
  "src/Prebuilt/components/TileMenu/utils.ts": {
19704
19727
  "bytesInOutput": 160
19705
19728
  },
19706
- "src/Prebuilt/components/peerTileUtils.jsx": {
19707
- "bytesInOutput": 1050
19708
- },
19709
19729
  "src/Prebuilt/components/VirtualBackground/VBPicker.tsx": {
19710
19730
  "bytesInOutput": 8754
19711
19731
  },
@@ -19734,7 +19754,7 @@
19734
19754
  "bytesInOutput": 4550
19735
19755
  },
19736
19756
  "src/Prebuilt/components/VideoLayouts/EqualProminence.tsx": {
19737
- "bytesInOutput": 1886
19757
+ "bytesInOutput": 2110
19738
19758
  },
19739
19759
  "src/Prebuilt/layouts/WaitingView.tsx": {
19740
19760
  "bytesInOutput": 1370
@@ -19770,7 +19790,7 @@
19770
19790
  "bytesInOutput": 2638
19771
19791
  },
19772
19792
  "src/Prebuilt/components/ScreenshareTile.tsx": {
19773
- "bytesInOutput": 4411
19793
+ "bytesInOutput": 4439
19774
19794
  },
19775
19795
  "src/Prebuilt/components/LayoutModeSelector.tsx": {
19776
19796
  "bytesInOutput": 3276
@@ -19781,7 +19801,7 @@
19781
19801
  "src/Prebuilt/components/VideoLayouts/WhiteboardLayout.tsx": {
19782
19802
  "bytesInOutput": 2830
19783
19803
  },
19784
- "../../../../../../../tmp/tmp-2799-ZYtx9hL3ahhi/191d74314391/index.css": {
19804
+ "../../../../../../../tmp/tmp-2794-9MjVo32PL1Ra/191e53e10281/index.css": {
19785
19805
  "bytesInOutput": 0
19786
19806
  },
19787
19807
  "src/Prebuilt/common/PeersSorter.ts": {
@@ -19887,7 +19907,7 @@
19887
19907
  "bytesInOutput": 640
19888
19908
  },
19889
19909
  "src/Prebuilt/components/Notifications/TrackUnmuteModal.tsx": {
19890
- "bytesInOutput": 1760
19910
+ "bytesInOutput": 1761
19891
19911
  },
19892
19912
  "src/Prebuilt/components/Notifications/TranscriptionNotifications.tsx": {
19893
19913
  "bytesInOutput": 2185
@@ -19950,7 +19970,7 @@
19950
19970
  "bytesInOutput": 2628
19951
19971
  }
19952
19972
  },
19953
- "bytes": 1460019
19973
+ "bytes": 1460606
19954
19974
  },
19955
19975
  "dist/index.css.map": {
19956
19976
  "imports": [],
@@ -20012,22 +20032,22 @@
20012
20032
  }
20013
20033
  ],
20014
20034
  "inputs": {
20015
- "../../../../../../../tmp/tmp-2799-ZYtx9hL3ahhi/191d74314533/tldraw.css": {
20035
+ "../../../../../../../tmp/tmp-2794-9MjVo32PL1Ra/191e53e10ba3/tldraw.css": {
20016
20036
  "bytesInOutput": 75223
20017
20037
  },
20018
- "../../../../../../../tmp/tmp-2799-ZYtx9hL3ahhi/191d74314391/index.css": {
20038
+ "../../../../../../../tmp/tmp-2794-9MjVo32PL1Ra/191e53e10281/index.css": {
20019
20039
  "bytesInOutput": 401
20020
20040
  }
20021
20041
  },
20022
20042
  "bytes": 75901
20023
20043
  },
20024
- "dist/HLSView-LNJLFWK4.css.map": {
20044
+ "dist/HLSView-5JM7XVA4.css.map": {
20025
20045
  "imports": [],
20026
20046
  "exports": [],
20027
20047
  "inputs": {},
20028
20048
  "bytes": 122402
20029
20049
  },
20030
- "dist/HLSView-LNJLFWK4.css": {
20050
+ "dist/HLSView-5JM7XVA4.css": {
20031
20051
  "imports": [
20032
20052
  {
20033
20053
  "path": "https://fonts.googleapis.com/css2?family=Inter:wght@400;500&display=swap",
@@ -20081,10 +20101,10 @@
20081
20101
  }
20082
20102
  ],
20083
20103
  "inputs": {
20084
- "../../../../../../../tmp/tmp-2799-ZYtx9hL3ahhi/191d74314533/tldraw.css": {
20104
+ "../../../../../../../tmp/tmp-2794-9MjVo32PL1Ra/191e53e10ba3/tldraw.css": {
20085
20105
  "bytesInOutput": 75223
20086
20106
  },
20087
- "../../../../../../../tmp/tmp-2799-ZYtx9hL3ahhi/191d74314391/index.css": {
20107
+ "../../../../../../../tmp/tmp-2794-9MjVo32PL1Ra/191e53e10281/index.css": {
20088
20108
  "bytesInOutput": 401
20089
20109
  }
20090
20110
  },
package/package.json CHANGED
@@ -10,7 +10,7 @@
10
10
  "prebuilt",
11
11
  "roomkit"
12
12
  ],
13
- "version": "0.3.19",
13
+ "version": "0.3.20-alpha.0",
14
14
  "author": "100ms",
15
15
  "license": "MIT",
16
16
  "repository": {
@@ -75,12 +75,12 @@
75
75
  "react": ">=17.0.2 <19.0.0"
76
76
  },
77
77
  "dependencies": {
78
- "@100mslive/hls-player": "0.3.19",
78
+ "@100mslive/hls-player": "0.3.20-alpha.0",
79
79
  "@100mslive/hms-noise-cancellation": "0.0.1",
80
- "@100mslive/hms-virtual-background": "1.13.19",
81
- "@100mslive/hms-whiteboard": "0.0.9",
82
- "@100mslive/react-icons": "0.10.19",
83
- "@100mslive/react-sdk": "0.10.19",
80
+ "@100mslive/hms-virtual-background": "1.13.20-alpha.0",
81
+ "@100mslive/hms-whiteboard": "0.0.10-alpha.0",
82
+ "@100mslive/react-icons": "0.10.20-alpha.0",
83
+ "@100mslive/react-sdk": "0.10.20-alpha.0",
84
84
  "@100mslive/types-prebuilt": "0.12.12",
85
85
  "@emoji-mart/data": "^1.0.6",
86
86
  "@emoji-mart/react": "^1.0.1",
@@ -117,5 +117,5 @@
117
117
  "uuid": "^8.3.2",
118
118
  "worker-timers": "^7.0.40"
119
119
  },
120
- "gitHead": "b1bdfdb1965a14fd6b61e9bb8f9a9c48c556fd37"
120
+ "gitHead": "9292ef206d23ad3743254e046fce98240fa3a134"
121
121
  }
@@ -44,7 +44,7 @@ export const TrackUnmuteModal = () => {
44
44
  <RequestDialog
45
45
  title={`Unmute your ${track.type}?`}
46
46
  onOpenChange={(value: boolean) => !value && setMuteNotification(null)}
47
- body={`${peer?.name}is requesting you to unmute your ${track?.type}.`}
47
+ body={`${peer?.name} is requesting you to unmute your ${track?.type}.`}
48
48
  onAction={() => {
49
49
  hmsActions.setEnabledTrack(track.id, enabled);
50
50
  setMuteNotification(null);
@@ -16,7 +16,6 @@ import { config as cssConfig, useTheme } from '../../Theme';
16
16
  import { Video } from '../../Video';
17
17
  import { StyledVideoTile } from '../../VideoTile';
18
18
  import { LayoutModeSelector } from './LayoutModeSelector';
19
- // @ts-ignore: No implicit Any
20
19
  import { getVideoTileLabel } from './peerTileUtils';
21
20
  import { ScreenshareDisplay } from './ScreenshareDisplay';
22
21
  // @ts-ignore: No implicit Any
@@ -62,7 +61,8 @@ const Tile = ({ peerId, width = '100%', height = '100%' }: { peerId: string; wid
62
61
  const label = getVideoTileLabel({
63
62
  peerName: peer?.name,
64
63
  isLocal: false,
65
- track,
64
+ videoTrack: track,
65
+ audioTrack,
66
66
  });
67
67
 
68
68
  return (
@@ -140,7 +140,6 @@ const MobileSettingModal = ({
140
140
  <Flex
141
141
  direction="column"
142
142
  css={{
143
- px: '$8',
144
143
  pb: '$8',
145
144
  overflowY: 'auto',
146
145
  }}
@@ -159,7 +158,7 @@ const MobileSettingModal = ({
159
158
  css={{
160
159
  all: 'unset',
161
160
  fontFamily: '$sans',
162
- py: '$10',
161
+ p: '$10 $8',
163
162
  display: 'flex',
164
163
  alignItems: 'center',
165
164
  fontSize: '$sm',
@@ -1,6 +1,7 @@
1
1
  import React, { useState } from 'react';
2
2
  import { useMedia } from 'react-use';
3
3
  import {
4
+ HMSAudioTrack,
4
5
  HMSVideoTrack,
5
6
  selectLocalPeerID,
6
7
  selectPeerByID,
@@ -17,6 +18,7 @@ import { Text } from '../../../Text';
17
18
  import { config as cssConfig, useTheme } from '../../../Theme';
18
19
  import { StyledMenuTile } from '../../../TileMenu';
19
20
  import { ChangeNameModal } from '../MoreSettings/ChangeNameModal';
21
+ import { getVideoTileLabel } from '../peerTileUtils';
20
22
  import { RoleChangeModal } from '../RoleChangeModal';
21
23
  import { TileMenuContent } from './TileMenuContent';
22
24
  import { useDropdownList } from '../hooks/useDropdownList';
@@ -52,7 +54,8 @@ const TileMenu = ({
52
54
  const isPrimaryVideoTrack = useHMSStore(selectVideoTrackByPeerID(peerID))?.id === videoTrackID;
53
55
  const showPinAction = !!(audioTrackID || (videoTrackID && isPrimaryVideoTrack));
54
56
 
55
- const track = useHMSStore(selectTrackByID(videoTrackID)) as HMSVideoTrack;
57
+ const track = useHMSStore(selectTrackByID(videoTrackID)) as HMSVideoTrack | null;
58
+ const audioTrack = useHMSStore(selectTrackByID(audioTrackID)) as HMSAudioTrack | null;
56
59
  const hideSimulcastLayers = !track?.layerDefinitions?.length || track.degraded || !track.enabled;
57
60
  const isMobile = useMedia(cssConfig.media.md);
58
61
  const peer = useHMSStore(selectPeerByID(peerID));
@@ -61,20 +64,19 @@ const TileMenu = ({
61
64
  useDropdownList({ open, name: 'TileMenu' });
62
65
  const dragClassName = getDragClassName();
63
66
 
64
- if (!(removeOthers || toggleAudio || toggleVideo || setVolume || showPinAction) && hideSimulcastLayers) {
67
+ if (!peer || (!(removeOthers || toggleAudio || toggleVideo || setVolume || showPinAction) && hideSimulcastLayers)) {
65
68
  return null;
66
69
  }
67
70
 
68
71
  const openNameChangeModal = () => setShowNameChangeModal(true);
69
72
  const openRoleChangeModal = () => setShowRoleChangeModal(true);
70
73
 
71
- const props = {
74
+ const props: React.ComponentPropsWithoutRef<typeof TileMenuContent> = {
72
75
  isLocal,
73
76
  isScreenshare,
74
77
  audioTrackID,
75
78
  videoTrackID,
76
79
  peerID,
77
- isPrimaryVideoTrack,
78
80
  showSpotlight,
79
81
  showPinAction,
80
82
  canMinimise,
@@ -111,8 +113,7 @@ const TileMenu = ({
111
113
  >
112
114
  <Box>
113
115
  <Text css={{ color: '$on_surface_high', fontWeight: '$semiBold' }}>
114
- {peer?.name}
115
- {isLocal ? ` (You)` : null}
116
+ {getVideoTileLabel({ peerName: peer?.name, isLocal, audioTrack, videoTrack: track })}
116
117
  </Text>
117
118
  {peer?.roleName ? (
118
119
  <Text variant="xs" css={{ color: '$on_surface_low', mt: '$2' }}>
@@ -41,7 +41,7 @@ import { useSetAppDataByKey } from '../AppData/useUISettings';
41
41
  // @ts-ignore
42
42
  import { useDropdownSelection } from '../hooks/useDropdownSelection';
43
43
  import { getDragClassName } from './utils';
44
- import { APP_DATA, REMOTE_STOP_SCREENSHARE_TYPE, SESSION_STORE_KEY } from '../../common/constants';
44
+ import { APP_DATA, isIOS, REMOTE_STOP_SCREENSHARE_TYPE, SESSION_STORE_KEY } from '../../common/constants';
45
45
 
46
46
  export const isSameTile = ({
47
47
  trackId,
@@ -317,7 +317,7 @@ export const TileMenuContent = ({
317
317
  </StyledMenuTile.ItemButton>
318
318
  ) : null}
319
319
 
320
- {canChangeRole && roles.length > 1 ? (
320
+ {!isScreenshare && canChangeRole && roles.length > 1 ? (
321
321
  <StyledMenuTile.ItemButton
322
322
  className={dragClassName}
323
323
  css={spacingCSS}
@@ -332,7 +332,7 @@ export const TileMenuContent = ({
332
332
  </StyledMenuTile.ItemButton>
333
333
  ) : null}
334
334
 
335
- {audioTrackID ? (
335
+ {!isIOS && audioTrackID ? (
336
336
  <StyledMenuTile.VolumeItem data-testid="participant_volume_slider" css={{ ...spacingCSS, mb: '$0' }}>
337
337
  <Flex align="center" gap={1}>
338
338
  <SpeakerIcon height={20} width={20} />
@@ -1,5 +1,6 @@
1
1
  import React, { useEffect, useState } from 'react';
2
2
  import { useMedia } from 'react-use';
3
+ import { selectPeerCount, useHMSStore } from '@100mslive/react-sdk';
3
4
  import { PeopleAddIcon } from '@100mslive/react-icons';
4
5
  import { Flex } from '../../../Layout';
5
6
  import { config as cssConfig } from '../../../Theme';
@@ -17,6 +18,7 @@ export function EqualProminence({ isInsetEnabled = false, peers, onPageChange, o
17
18
  const isMobile = useMedia(cssConfig.media.md);
18
19
  let maxTileCount = useUISettings(UI_SETTINGS.maxTileCount);
19
20
  maxTileCount = isMobile ? Math.min(maxTileCount, 6) : maxTileCount;
21
+ const peerCount = useHMSStore(selectPeerCount);
20
22
  const pageList = usePagesWithTiles({
21
23
  peers,
22
24
  maxTileCount,
@@ -51,8 +53,8 @@ export function EqualProminence({ isInsetEnabled = false, peers, onPageChange, o
51
53
  )}
52
54
  {pageList.length === 0 ? (
53
55
  <WaitingView
54
- title="You're the first to join"
55
- subtitle="Sit back and relax till others join"
56
+ title={peerCount <= 1 ? "You're the only one here" : 'Glad to have you here'}
57
+ subtitle={peerCount <= 1 ? 'Sit back and relax till others join' : ''}
56
58
  icon={<PeopleAddIcon width="56px" height="56px" style={{ color: 'white' }} />}
57
59
  />
58
60
  ) : null}
@@ -20,7 +20,6 @@ import { VideoTileStats } from '../../Stats';
20
20
  import { CSS } from '../../Theme';
21
21
  import { Video } from '../../Video';
22
22
  import { StyledVideoTile } from '../../VideoTile';
23
- // @ts-ignore: No implicit Any
24
23
  import { getVideoTileLabel } from './peerTileUtils';
25
24
  // @ts-ignore: No implicit Any
26
25
  import { useSetAppDataByKey, useUISettings } from './AppData/useUISettings';
@@ -101,8 +100,9 @@ const Tile = ({
101
100
  });
102
101
  const label = getVideoTileLabel({
103
102
  peerName,
104
- track,
105
103
  isLocal,
104
+ videoTrack: track,
105
+ audioTrack,
106
106
  });
107
107
  const onHoverHandler = useCallback((event: React.MouseEvent) => {
108
108
  setIsMouseHovered(event.type === 'mouseenter');
@@ -1,4 +1,8 @@
1
+ import { HMSAudioTrack, HMSVideoTrack } from '@100mslive/react-sdk';
2
+
1
3
  const PEER_NAME_PLACEHOLDER = 'peerName';
4
+
5
+ // Map [isLocal, videoSource] to the label to be displayed.
2
6
  const labelMap = new Map([
3
7
  [[true, 'screen'].toString(), 'Your Screen'],
4
8
  [[true, 'regular'].toString(), `You (${PEER_NAME_PLACEHOLDER})`],
@@ -8,19 +12,30 @@ const labelMap = new Map([
8
12
  [[false, undefined].toString(), `${PEER_NAME_PLACEHOLDER}`],
9
13
  ]);
10
14
 
11
- export const getVideoTileLabel = ({ peerName, isLocal, track }) => {
15
+ export const getVideoTileLabel = ({
16
+ peerName,
17
+ isLocal,
18
+ videoTrack,
19
+ audioTrack,
20
+ }: {
21
+ isLocal: boolean;
22
+ peerName?: string;
23
+ videoTrack?: HMSVideoTrack | null;
24
+ audioTrack?: HMSAudioTrack | null;
25
+ }) => {
12
26
  const isPeerPresent = peerName !== undefined;
13
- if (!isPeerPresent || !track) {
27
+ if (!isPeerPresent || !videoTrack) {
14
28
  // for peers with only audio track
15
- return isPeerPresent ? labelMap.get([isLocal, undefined].toString()).replace(PEER_NAME_PLACEHOLDER, peerName) : '';
29
+ const label = labelMap.get([isLocal, undefined].toString());
30
+ return isPeerPresent && label ? label.replace(PEER_NAME_PLACEHOLDER, peerName) : '';
16
31
  }
17
- const isLocallyMuted = track.volume === 0;
32
+ const isLocallyMuted = audioTrack?.volume === 0;
18
33
  // Map [isLocal, videoSource] to the label to be displayed.
19
- let label = labelMap.get([isLocal, track.source].toString());
34
+ let label = labelMap.get([isLocal, videoTrack.source].toString());
20
35
  if (label) {
21
36
  label = label.replace(PEER_NAME_PLACEHOLDER, peerName);
22
37
  } else {
23
- label = `${peerName} ${track.source}`;
38
+ label = `${peerName} ${videoTrack.source}`;
24
39
  }
25
40
  // label = `${label}${track.degraded ? '(Degraded)' : ''}`;
26
41
  return `${label}${isLocallyMuted ? ' (Muted for you)' : ''}`;