vg-x07df 1.9.1 → 1.9.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/channel/index.cjs +24 -15
- package/dist/channel/index.cjs.map +1 -1
- package/dist/channel/index.d.cts +6 -5
- package/dist/channel/index.d.ts +6 -5
- package/dist/channel/index.mjs +24 -15
- package/dist/channel/index.mjs.map +1 -1
- package/dist/index.cjs +499 -98
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +43 -3
- package/dist/index.d.ts +43 -3
- package/dist/index.mjs +497 -99
- package/dist/index.mjs.map +1 -1
- package/dist/livekit/index.cjs +5 -0
- package/dist/livekit/index.cjs.map +1 -1
- package/dist/livekit/index.d.cts +1 -0
- package/dist/livekit/index.d.ts +1 -0
- package/dist/livekit/index.mjs +1 -0
- package/dist/livekit/index.mjs.map +1 -1
- package/dist/{types-Co2i-Cgs.d.cts → types-Bo9J75sX.d.cts} +1 -0
- package/dist/{types-Co2i-Cgs.d.ts → types-Bo9J75sX.d.ts} +1 -0
- package/package.json +2 -1
package/dist/channel/index.cjs
CHANGED
|
@@ -1425,7 +1425,8 @@ function useReactions() {
|
|
|
1425
1425
|
};
|
|
1426
1426
|
}
|
|
1427
1427
|
var defaultState4 = {
|
|
1428
|
-
spotlightedUser: null
|
|
1428
|
+
spotlightedUser: null,
|
|
1429
|
+
isSpotlighted: false
|
|
1429
1430
|
};
|
|
1430
1431
|
var useSpotlightStore = zustand.create()(
|
|
1431
1432
|
immer.immer((set, get) => ({
|
|
@@ -1436,17 +1437,16 @@ var useSpotlightStore = zustand.create()(
|
|
|
1436
1437
|
ts: Date.now(),
|
|
1437
1438
|
...info && { info }
|
|
1438
1439
|
};
|
|
1440
|
+
state.isSpotlighted = true;
|
|
1439
1441
|
}),
|
|
1440
1442
|
unspotlight: () => set((state) => {
|
|
1441
1443
|
state.spotlightedUser = null;
|
|
1444
|
+
state.isSpotlighted = false;
|
|
1442
1445
|
}),
|
|
1443
1446
|
getSpotlightedUser: () => get().spotlightedUser,
|
|
1444
|
-
isSpotlighted: (participantId) => {
|
|
1445
|
-
const user = get().spotlightedUser;
|
|
1446
|
-
return user?.participantId === participantId;
|
|
1447
|
-
},
|
|
1448
1447
|
clear: () => set(() => ({
|
|
1449
|
-
spotlightedUser: null
|
|
1448
|
+
spotlightedUser: null,
|
|
1449
|
+
isSpotlighted: false
|
|
1450
1450
|
}))
|
|
1451
1451
|
}))
|
|
1452
1452
|
);
|
|
@@ -1454,7 +1454,7 @@ function applyIncomingSpotlight(envelope) {
|
|
|
1454
1454
|
const { spotlight, unspotlight } = useSpotlightStore.getState();
|
|
1455
1455
|
switch (envelope.payload.action) {
|
|
1456
1456
|
case "spotlight": {
|
|
1457
|
-
spotlight(envelope.payload.targetId);
|
|
1457
|
+
spotlight(envelope.payload.targetId, envelope.payload.info);
|
|
1458
1458
|
break;
|
|
1459
1459
|
}
|
|
1460
1460
|
case "unspotlight": {
|
|
@@ -1506,7 +1506,7 @@ var SpotlightService = class {
|
|
|
1506
1506
|
getLocalParticipantId() {
|
|
1507
1507
|
return this.room.localParticipant.identity;
|
|
1508
1508
|
}
|
|
1509
|
-
async spotlight(targetId) {
|
|
1509
|
+
async spotlight(targetId, info) {
|
|
1510
1510
|
if (!this.isRoomReady()) {
|
|
1511
1511
|
useRtcStore.getState().addError({
|
|
1512
1512
|
code: "SPOTLIGHT_ROOM_NOT_READY",
|
|
@@ -1516,7 +1516,8 @@ var SpotlightService = class {
|
|
|
1516
1516
|
return;
|
|
1517
1517
|
}
|
|
1518
1518
|
const senderInfo = this.getSenderInfo();
|
|
1519
|
-
useSpotlightStore.getState().
|
|
1519
|
+
const previousSpotlighted = useSpotlightStore.getState().getSpotlightedUser();
|
|
1520
|
+
useSpotlightStore.getState().spotlight(targetId, info);
|
|
1520
1521
|
try {
|
|
1521
1522
|
const envelope = {
|
|
1522
1523
|
v: 1,
|
|
@@ -1526,15 +1527,21 @@ var SpotlightService = class {
|
|
|
1526
1527
|
sender: senderInfo,
|
|
1527
1528
|
payload: {
|
|
1528
1529
|
action: "spotlight",
|
|
1529
|
-
targetId
|
|
1530
|
+
targetId,
|
|
1531
|
+
info
|
|
1530
1532
|
}
|
|
1531
1533
|
};
|
|
1532
1534
|
await this.room.localParticipant.sendText(JSON.stringify(envelope), {
|
|
1533
1535
|
topic: "spotlight:v1"
|
|
1534
1536
|
});
|
|
1535
|
-
logger7.
|
|
1537
|
+
logger7.info("User spotlighted", { targetId });
|
|
1536
1538
|
} catch (error) {
|
|
1537
1539
|
logger7.error("Failed to spotlight user", error);
|
|
1540
|
+
if (previousSpotlighted) {
|
|
1541
|
+
useSpotlightStore.getState().spotlight(previousSpotlighted.participantId, previousSpotlighted.info);
|
|
1542
|
+
} else {
|
|
1543
|
+
useSpotlightStore.getState().unspotlight();
|
|
1544
|
+
}
|
|
1538
1545
|
useRtcStore.getState().addError({
|
|
1539
1546
|
code: "SPOTLIGHT_SEND_FAILED",
|
|
1540
1547
|
message: error instanceof Error ? error.message : "Failed to spotlight user",
|
|
@@ -1557,6 +1564,7 @@ var SpotlightService = class {
|
|
|
1557
1564
|
logger7.debug("No user is currently spotlighted");
|
|
1558
1565
|
return;
|
|
1559
1566
|
}
|
|
1567
|
+
const previousSpotlighted = { ...currentSpotlighted };
|
|
1560
1568
|
useSpotlightStore.getState().unspotlight();
|
|
1561
1569
|
try {
|
|
1562
1570
|
const envelope = {
|
|
@@ -1567,15 +1575,16 @@ var SpotlightService = class {
|
|
|
1567
1575
|
sender: senderInfo,
|
|
1568
1576
|
payload: {
|
|
1569
1577
|
action: "unspotlight",
|
|
1570
|
-
targetId:
|
|
1578
|
+
targetId: previousSpotlighted.participantId
|
|
1571
1579
|
}
|
|
1572
1580
|
};
|
|
1573
1581
|
await this.room.localParticipant.sendText(JSON.stringify(envelope), {
|
|
1574
1582
|
topic: "spotlight:v1"
|
|
1575
1583
|
});
|
|
1576
|
-
logger7.
|
|
1584
|
+
logger7.info("User unspotlighted");
|
|
1577
1585
|
} catch (error) {
|
|
1578
1586
|
logger7.error("Failed to unspotlight user", error);
|
|
1587
|
+
useSpotlightStore.getState().spotlight(previousSpotlighted.participantId, previousSpotlighted.info);
|
|
1579
1588
|
useRtcStore.getState().addError({
|
|
1580
1589
|
code: "UNSPOTLIGHT_SEND_FAILED",
|
|
1581
1590
|
message: error instanceof Error ? error.message : "Failed to unspotlight user",
|
|
@@ -1630,12 +1639,12 @@ function useSpotlight() {
|
|
|
1630
1639
|
);
|
|
1631
1640
|
const isSpotlighted = useSpotlightStore((state) => state.isSpotlighted);
|
|
1632
1641
|
const spotlight = react.useCallback(
|
|
1633
|
-
async (targetId) => {
|
|
1642
|
+
async (targetId, info) => {
|
|
1634
1643
|
if (!service) {
|
|
1635
1644
|
logger8.error("Cannot spotlight: service not ready");
|
|
1636
1645
|
return;
|
|
1637
1646
|
}
|
|
1638
|
-
return service.spotlight(targetId);
|
|
1647
|
+
return service.spotlight(targetId, info);
|
|
1639
1648
|
},
|
|
1640
1649
|
[service]
|
|
1641
1650
|
);
|