@ai-matrx/meet 0.7.3 → 0.7.5
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/CHANGELOG.md +68 -0
- package/dist/index.cjs +543 -35
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +217 -24
- package/dist/index.d.ts +217 -24
- package/dist/index.js +543 -35
- package/dist/index.js.map +1 -1
- package/dist/react.cjs +1879 -163
- package/dist/react.cjs.map +1 -1
- package/dist/react.d.cts +136 -12
- package/dist/react.d.ts +136 -12
- package/dist/react.js +1880 -164
- package/dist/react.js.map +1 -1
- package/dist/styles.css +522 -0
- package/package.json +5 -4
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,73 @@
|
|
|
1
1
|
# Changelog — `@ai-matrx/meet`
|
|
2
2
|
|
|
3
|
+
## 0.7.5
|
|
4
|
+
### Unreleased
|
|
5
|
+
|
|
6
|
+
### Meet wave 2 — in-meeting parity with Zoom and Google Meet
|
|
7
|
+
|
|
8
|
+
- **Host moderation now actually happens — through the server.** Through 0.7.x "Mute" and
|
|
9
|
+
"Remove" were published on the room's data plane (`mx.host`) and nothing in the platform
|
|
10
|
+
listened: the buttons did nothing. Every host power is now `POST /api/v1/meet/moderate`
|
|
11
|
+
(`MEET_ROUTES.moderate`), decided by aidream from the meeting itself and performed by the SFU:
|
|
12
|
+
mute, stop video, stop screen share, mute everyone, ask to unmute (one / everyone), spotlight
|
|
13
|
+
for everyone, lower a hand / all hands, make or remove a co-host, make someone the host
|
|
14
|
+
(host only; the previous host stays a co-host), rename (self, or a host renaming others),
|
|
15
|
+
remove (cannot rejoin), report. New `core/in-room.ts` (`createInRoomClient`,
|
|
16
|
+
`ModerationAction`, `MODERATION_ACTIONS`), exposed as `MeetHost.inRoom`.
|
|
17
|
+
`useHostControls()` gains `run(request)`, `isOwner`, `busy`, and a shared `notice` (the
|
|
18
|
+
server's sentence, kept in the snapshot as `actionNotice`).
|
|
19
|
+
- **In-meeting chat is SAVED.** A message to everyone goes through `POST /api/v1/meet/chat`,
|
|
20
|
+
is stored in `communication.meet_chat_messages`, and reaches the room as the server's
|
|
21
|
+
`matrx.meet.chat`; every join reads the history (`GET ?meeting_id=`), so a late joiner sees
|
|
22
|
+
what was said. It shows at once as pending, then saved; a refusal stays visible with the
|
|
23
|
+
server's reason. **Private messages** to one person: `engine.sendPrivateChat(to, text)` /
|
|
24
|
+
`useRoom().sendPrivateChat` — data plane only, addressed to that identity, never saved.
|
|
25
|
+
- **Spotlight for everyone** rides the room's metadata (server-set, delivered on join);
|
|
26
|
+
`snapshot.spotlight`, `computeStage({ spotlight })` — a local pin outranks it, a screen share
|
|
27
|
+
outranks both.
|
|
28
|
+
- **Raise hand queue** — hands carry when they went up (`MeetParticipant.handRaisedAt`),
|
|
29
|
+
`useHandQueue()` orders them, a raised hand is re-announced (with its original time) to a late
|
|
30
|
+
joiner, and a host lowers one or all.
|
|
31
|
+
- **Reactions** — a reaction picker in the control bar (Meet's nine), and the overlay is finally
|
|
32
|
+
mounted (`<MeetingOverlays>` inside `<ControlBar>`).
|
|
33
|
+
- **What a host did to me** — `matrx.meet.moderation` packets become `snapshot.moderationNotice`
|
|
34
|
+
("Ana is asking you to unmute" with an Unmute button; muted; removed). A demotion re-grants
|
|
35
|
+
the local role, so an old host loses host controls at once.
|
|
36
|
+
- **Noise suppression and background blur / picture** — `engine.setEffects()` /
|
|
37
|
+
`useMediaEffects()`, applied live and remembered per browser (`createWebEffectsStorage`);
|
|
38
|
+
background effects via `@livekit/track-processors` (new dependency, imported lazily), absent
|
|
39
|
+
on a browser without WebGL2.
|
|
40
|
+
- **Devices** — the chosen microphone / camera / speaker are now APPLIED on join (the pickers
|
|
41
|
+
used to store a choice nothing read); `<SettingsPanel>` switches them live with a microphone
|
|
42
|
+
level meter and a speaker test; the pre-join screen has a live camera preview (with the chosen
|
|
43
|
+
background), a mic level meter, a speaker picker + test, and the effects.
|
|
44
|
+
- **Connection quality** — `<QualityBars>` on every tile and People row.
|
|
45
|
+
- **People panel** — search, the hand queue with Lower all, Mute all / Ask all to unmute, and a
|
|
46
|
+
per-person menu (`<PersonMenu>`, also on every tile) with every action the actor may take.
|
|
47
|
+
- **Keyboard shortcuts** (Meet's chords): ⌘/Ctrl+D mic, ⌘/Ctrl+E camera, ⌘/Ctrl+Alt+H hand,
|
|
48
|
+
⌘/Ctrl+Alt+C chat, ⌘/Ctrl+Alt+P people, Shift+? the sheet (`useMeetShortcuts`,
|
|
49
|
+
`MEET_SHORTCUTS`, `<ShortcutsSheet>`).
|
|
50
|
+
- **Exported for host layouts**: `HostMenu` (lock / end — the Board layout can now render it),
|
|
51
|
+
`MeetingOverlays`, `PersonMenu`, `SettingsPanel`, `ShortcutsSheet`, `QualityBars`,
|
|
52
|
+
`MEET_REACTIONS`, new icons.
|
|
53
|
+
|
|
54
|
+
### Removed
|
|
55
|
+
|
|
56
|
+
- `RoomEngine.publishHostAction`, `HostAction`, `DATA_TOPICS.hostAction` — a control plane
|
|
57
|
+
nobody listened to (see above). `RoomEngine.sendChat` → `MeetHost.inRoom.sendChat` (saved).
|
|
58
|
+
|
|
59
|
+
### Consumer action
|
|
60
|
+
|
|
61
|
+
matrx-frontend: bump `@ai-matrx/meet`; the Board header renders `<HostMenu>` beside its host
|
|
62
|
+
controls. Everything else arrives through `<ControlBar>`, which both layouts already render.
|
|
63
|
+
Requires the aidream routes `/v1/meet/moderate` and `/v1/meet/chat`.
|
|
64
|
+
|
|
65
|
+
## 0.7.4
|
|
66
|
+
|
|
67
|
+
Automatic changed-only republish (docs/metadata drift since the last tag — see
|
|
68
|
+
`git diff npm/meet/v0.7.3..npm/meet/v0.7.4 -- apps/shared/meet`).
|
|
69
|
+
No source changes intended and no consumer action required.
|
|
70
|
+
|
|
3
71
|
## 0.7.3
|
|
4
72
|
|
|
5
73
|
Automatic changed-only republish (docs/metadata drift since the last tag — see
|