@ai-matrx/meet 0.10.4 → 0.10.6
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 +24 -0
- package/dist/{collab-BBQxcyRQ.d.cts → collab-ytIzjceh.d.cts} +8 -1
- package/dist/{collab-BBQxcyRQ.d.ts → collab-ytIzjceh.d.ts} +8 -1
- package/dist/{components-CK0EyqGL.d.cts → components-CnnefQn-.d.cts} +1 -1
- package/dist/{components-1XBHgMYK.d.ts → components-DjzH3u_c.d.ts} +1 -1
- package/dist/core.cjs +32 -2
- package/dist/core.cjs.map +1 -1
- package/dist/core.d.cts +18 -5
- package/dist/core.d.ts +18 -5
- package/dist/core.js +32 -2
- package/dist/core.js.map +1 -1
- package/dist/index.cjs +32 -2
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +2 -2
- package/dist/index.d.ts +2 -2
- package/dist/index.js +32 -2
- package/dist/index.js.map +1 -1
- package/dist/react.cjs +33 -2
- package/dist/react.cjs.map +1 -1
- package/dist/react.d.cts +4 -4
- package/dist/react.d.ts +4 -4
- package/dist/react.js +33 -2
- package/dist/react.js.map +1 -1
- package/dist/skins/meet.cjs +5 -0
- package/dist/skins/meet.cjs.map +1 -1
- package/dist/skins/meet.d.cts +2 -2
- package/dist/skins/meet.d.ts +2 -2
- package/dist/skins/meet.js +5 -0
- package/dist/skins/meet.js.map +1 -1
- package/package.json +5 -4
package/CHANGELOG.md
CHANGED
|
@@ -1,11 +1,35 @@
|
|
|
1
1
|
# Changelog — `@ai-matrx/meet`
|
|
2
2
|
|
|
3
|
+
## 0.10.6
|
|
4
|
+
|
|
5
|
+
Automatic changed-only republish (docs/metadata drift since the last tag — see
|
|
6
|
+
`git diff npm/meet/v0.10.5..npm/meet/v0.10.6 -- apps/shared/meet`).
|
|
7
|
+
No source changes intended and no consumer action required.
|
|
8
|
+
|
|
9
|
+
## 0.10.5
|
|
10
|
+
|
|
11
|
+
Automatic changed-only republish (docs/metadata drift since the last tag — see
|
|
12
|
+
`git diff npm/meet/v0.10.4..npm/meet/v0.10.5 -- apps/shared/meet`).
|
|
13
|
+
No source changes intended and no consumer action required.
|
|
14
|
+
|
|
3
15
|
## 0.10.4
|
|
4
16
|
|
|
5
17
|
Automatic changed-only republish (docs/metadata drift since the last tag — see
|
|
6
18
|
`git diff npm/meet/v0.10.3..npm/meet/v0.10.4 -- apps/shared/meet`).
|
|
7
19
|
No source changes intended and no consumer action required.
|
|
8
20
|
|
|
21
|
+
## 0.10.3
|
|
22
|
+
|
|
23
|
+
Automatic changed-only republish (docs/metadata drift since the last tag — see
|
|
24
|
+
`git diff npm/meet/v0.10.2..npm/meet/v0.10.3 -- apps/shared/meet`).
|
|
25
|
+
No source changes intended and no consumer action required.
|
|
26
|
+
|
|
27
|
+
## 0.10.2
|
|
28
|
+
|
|
29
|
+
Automatic changed-only republish (docs/metadata drift since the last tag — see
|
|
30
|
+
`git diff npm/meet/v0.10.1..npm/meet/v0.10.2 -- apps/shared/meet`).
|
|
31
|
+
No source changes intended and no consumer action required.
|
|
32
|
+
|
|
9
33
|
## 0.10.1
|
|
10
34
|
|
|
11
35
|
Automatic changed-only republish (docs/metadata drift since the last tag — see
|
|
@@ -662,6 +662,13 @@ interface MeetingAppPanel {
|
|
|
662
662
|
}
|
|
663
663
|
/** The app panel this meeting carries, or null. Malformed values are never guessed at. */
|
|
664
664
|
declare function appPanelOf(meeting: Pick<MeetingRecord, "metadata"> | null | undefined): MeetingAppPanel | null;
|
|
665
|
+
/**
|
|
666
|
+
* HR-360 wave 3: the server held capture off because the meeting is about a Confidential record
|
|
667
|
+
* (`metadata.capture_hold = "confidential_record"`, stamped by the meet_meetings trigger) and it
|
|
668
|
+
* is still off. The room says so in one short line. Once the organization turns capture back on
|
|
669
|
+
* (knob `meet.confidential_capture`), it is no longer held.
|
|
670
|
+
*/
|
|
671
|
+
declare function captureHeldOf(meeting: Pick<MeetingRecord, "metadata" | "aiEnabled" | "recordingPolicy"> | null | undefined): boolean;
|
|
665
672
|
/** The `p_settings` of `meet_schedule_meeting`, with the panel and the named observers. */
|
|
666
673
|
declare function scheduleSettingsPatch(settings: MeetingSettings, appPanel: MeetingAppPanel | undefined, observers: readonly string[] | undefined): Record<string, unknown>;
|
|
667
674
|
/** The one shared section focus of the meeting's app panel (`collab.focus`). */
|
|
@@ -859,4 +866,4 @@ interface MeetingActivities {
|
|
|
859
866
|
*/
|
|
860
867
|
declare function loadMeetingActivities(api: MeetApi, meetingId: string, meetingPass?: string | null): Promise<MeetingActivities>;
|
|
861
868
|
|
|
862
|
-
export { type MeetingOccurrence as $, type AccessTokenSource as A, type MeetPoll as B, type CollabPanel as C, type MeetPollOption as D, EMPTY_COLLAB as E, FILE_SESSION_PATH as F, type MeetPollState as G, type MeetQuestion as H, type InviteeInput as I, type JsonObject as J, type MeetQuestionState as K, type LobbyEntry as L, type MeetingRecord as M, type MeetStroke as N, type OrganizationId as O, type ParticipantIdentity as P, type MeetingActivities as Q, type RoomName as R, type StageLayout as S, type TranscriptSource as T, type UserId as U, type MeetingAttendee as V, type WrapUpAnnouncement as W, type MeetingChanges as X, type MeetingInvitee as Y, type MeetingKind as Z, type MeetingNoteKind as _, type MeetParticipant as a, type MeetingSettings as a0, type NoteTakerState as a1, ORGANIZATION_HEADER as a2, type ObserversVisibleTo as a3, type OccurrenceOverride as a4, type OccurrenceState as a5, type ParticipantStanding as a6, ROLE_RANK as a7, type RecordingPolicy as a8, type RecordingRecord as a9,
|
|
869
|
+
export { type MeetingOccurrence as $, type AccessTokenSource as A, type MeetPoll as B, type CollabPanel as C, type MeetPollOption as D, EMPTY_COLLAB as E, FILE_SESSION_PATH as F, type MeetPollState as G, type MeetQuestion as H, type InviteeInput as I, type JsonObject as J, type MeetQuestionState as K, type LobbyEntry as L, type MeetingRecord as M, type MeetStroke as N, type OrganizationId as O, type ParticipantIdentity as P, type MeetingActivities as Q, type RoomName as R, type StageLayout as S, type TranscriptSource as T, type UserId as U, type MeetingAttendee as V, type WrapUpAnnouncement as W, type MeetingChanges as X, type MeetingInvitee as Y, type MeetingKind as Z, type MeetingNoteKind as _, type MeetParticipant as a, type MeetingSettings as a0, type NoteTakerState as a1, ORGANIZATION_HEADER as a2, type ObserversVisibleTo as a3, type OccurrenceOverride as a4, type OccurrenceState as a5, type ParticipantStanding as a6, ROLE_RANK as a7, type RecordingPolicy as a8, type RecordingRecord as a9, isLinkFollower as aA, isObserverRole as aB, loadMeetingActivities as aC, scheduleSettingsPatch as aD, withItem as aE, type RecordingSource as aF, type RecordingState as aa, type RoomPhase as ab, type RsvpAnswer as ac, type RsvpInvitation as ad, type RsvpState as ae, type TranscriptSegment as af, type UpcomingOccurrence as ag, appPanelOf as ah, applyCollabPacket as ai, asCallId as aj, asMeetingId as ak, asOrganizationId as al, asParticipantIdentity as am, asRoomName as an, asUserId as ao, assignedRoom as ap, autoAssign as aq, breakoutRemainingMs as ar, captureHeldOf as as, collabFromState as at, createMeetApi as au, defaultCaptionLanguage as av, fileDownloadPath as aw, focusFromRow as ax, isGuest as ay, isHostRole as az, type MeetApi as b, type MeetIdentity as c, type CallInvite as d, type ParticipantRole as e, type CallMode as f, type MeetingNote as g, type MeetingId as h, type MeetingAppPanel as i, type CollabSnapshot as j, type AdmissionState as k, CAPTION_LANGUAGES as l, type CallId as m, type CallState as n, type CallablePerson as o, type ConnectionQuality as p, type InviteeRole as q, type JsonValue as r, type MeetApiOptions as s, type MeetApiRequest as t, type MeetAppFocus as u, type MeetBreakoutBroadcast as v, type MeetBreakoutPlan as w, type MeetBreakoutRoom as x, type MeetCollabSettings as y, type MeetFileMedia as z };
|
|
@@ -662,6 +662,13 @@ interface MeetingAppPanel {
|
|
|
662
662
|
}
|
|
663
663
|
/** The app panel this meeting carries, or null. Malformed values are never guessed at. */
|
|
664
664
|
declare function appPanelOf(meeting: Pick<MeetingRecord, "metadata"> | null | undefined): MeetingAppPanel | null;
|
|
665
|
+
/**
|
|
666
|
+
* HR-360 wave 3: the server held capture off because the meeting is about a Confidential record
|
|
667
|
+
* (`metadata.capture_hold = "confidential_record"`, stamped by the meet_meetings trigger) and it
|
|
668
|
+
* is still off. The room says so in one short line. Once the organization turns capture back on
|
|
669
|
+
* (knob `meet.confidential_capture`), it is no longer held.
|
|
670
|
+
*/
|
|
671
|
+
declare function captureHeldOf(meeting: Pick<MeetingRecord, "metadata" | "aiEnabled" | "recordingPolicy"> | null | undefined): boolean;
|
|
665
672
|
/** The `p_settings` of `meet_schedule_meeting`, with the panel and the named observers. */
|
|
666
673
|
declare function scheduleSettingsPatch(settings: MeetingSettings, appPanel: MeetingAppPanel | undefined, observers: readonly string[] | undefined): Record<string, unknown>;
|
|
667
674
|
/** The one shared section focus of the meeting's app panel (`collab.focus`). */
|
|
@@ -859,4 +866,4 @@ interface MeetingActivities {
|
|
|
859
866
|
*/
|
|
860
867
|
declare function loadMeetingActivities(api: MeetApi, meetingId: string, meetingPass?: string | null): Promise<MeetingActivities>;
|
|
861
868
|
|
|
862
|
-
export { type MeetingOccurrence as $, type AccessTokenSource as A, type MeetPoll as B, type CollabPanel as C, type MeetPollOption as D, EMPTY_COLLAB as E, FILE_SESSION_PATH as F, type MeetPollState as G, type MeetQuestion as H, type InviteeInput as I, type JsonObject as J, type MeetQuestionState as K, type LobbyEntry as L, type MeetingRecord as M, type MeetStroke as N, type OrganizationId as O, type ParticipantIdentity as P, type MeetingActivities as Q, type RoomName as R, type StageLayout as S, type TranscriptSource as T, type UserId as U, type MeetingAttendee as V, type WrapUpAnnouncement as W, type MeetingChanges as X, type MeetingInvitee as Y, type MeetingKind as Z, type MeetingNoteKind as _, type MeetParticipant as a, type MeetingSettings as a0, type NoteTakerState as a1, ORGANIZATION_HEADER as a2, type ObserversVisibleTo as a3, type OccurrenceOverride as a4, type OccurrenceState as a5, type ParticipantStanding as a6, ROLE_RANK as a7, type RecordingPolicy as a8, type RecordingRecord as a9,
|
|
869
|
+
export { type MeetingOccurrence as $, type AccessTokenSource as A, type MeetPoll as B, type CollabPanel as C, type MeetPollOption as D, EMPTY_COLLAB as E, FILE_SESSION_PATH as F, type MeetPollState as G, type MeetQuestion as H, type InviteeInput as I, type JsonObject as J, type MeetQuestionState as K, type LobbyEntry as L, type MeetingRecord as M, type MeetStroke as N, type OrganizationId as O, type ParticipantIdentity as P, type MeetingActivities as Q, type RoomName as R, type StageLayout as S, type TranscriptSource as T, type UserId as U, type MeetingAttendee as V, type WrapUpAnnouncement as W, type MeetingChanges as X, type MeetingInvitee as Y, type MeetingKind as Z, type MeetingNoteKind as _, type MeetParticipant as a, type MeetingSettings as a0, type NoteTakerState as a1, ORGANIZATION_HEADER as a2, type ObserversVisibleTo as a3, type OccurrenceOverride as a4, type OccurrenceState as a5, type ParticipantStanding as a6, ROLE_RANK as a7, type RecordingPolicy as a8, type RecordingRecord as a9, isLinkFollower as aA, isObserverRole as aB, loadMeetingActivities as aC, scheduleSettingsPatch as aD, withItem as aE, type RecordingSource as aF, type RecordingState as aa, type RoomPhase as ab, type RsvpAnswer as ac, type RsvpInvitation as ad, type RsvpState as ae, type TranscriptSegment as af, type UpcomingOccurrence as ag, appPanelOf as ah, applyCollabPacket as ai, asCallId as aj, asMeetingId as ak, asOrganizationId as al, asParticipantIdentity as am, asRoomName as an, asUserId as ao, assignedRoom as ap, autoAssign as aq, breakoutRemainingMs as ar, captureHeldOf as as, collabFromState as at, createMeetApi as au, defaultCaptionLanguage as av, fileDownloadPath as aw, focusFromRow as ax, isGuest as ay, isHostRole as az, type MeetApi as b, type MeetIdentity as c, type CallInvite as d, type ParticipantRole as e, type CallMode as f, type MeetingNote as g, type MeetingId as h, type MeetingAppPanel as i, type CollabSnapshot as j, type AdmissionState as k, CAPTION_LANGUAGES as l, type CallId as m, type CallState as n, type CallablePerson as o, type ConnectionQuality as p, type InviteeRole as q, type JsonValue as r, type MeetApiOptions as s, type MeetApiRequest as t, type MeetAppFocus as u, type MeetBreakoutBroadcast as v, type MeetBreakoutPlan as w, type MeetBreakoutRoom as x, type MeetCollabSettings as y, type MeetFileMedia as z };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ReactNode } from 'react';
|
|
2
|
-
import { M as MeetingRecord, P as ParticipantIdentity, R as RoomName, a as MeetParticipant } from './collab-
|
|
2
|
+
import { M as MeetingRecord, P as ParticipantIdentity, R as RoomName, a as MeetParticipant } from './collab-ytIzjceh.cjs';
|
|
3
3
|
|
|
4
4
|
/**
|
|
5
5
|
* THE PRODUCT UI (R6/R7). Not a headless kernel with a note telling the host to
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ReactNode } from 'react';
|
|
2
|
-
import { M as MeetingRecord, P as ParticipantIdentity, R as RoomName, a as MeetParticipant } from './collab-
|
|
2
|
+
import { M as MeetingRecord, P as ParticipantIdentity, R as RoomName, a as MeetParticipant } from './collab-ytIzjceh.js';
|
|
3
3
|
|
|
4
4
|
/**
|
|
5
5
|
* THE PRODUCT UI (R6/R7). Not a headless kernel with a note telling the host to
|
package/dist/core.cjs
CHANGED
|
@@ -47,6 +47,7 @@ __export(core_exports, {
|
|
|
47
47
|
GUEST_RECORD_NOT_SHARED: () => GUEST_RECORD_NOT_SHARED,
|
|
48
48
|
IDLE_MEDIA: () => IDLE_MEDIA,
|
|
49
49
|
IDLE_TRACK: () => IDLE_TRACK,
|
|
50
|
+
JOIN_REFUSAL_REASONS: () => JOIN_REFUSAL_REASONS,
|
|
50
51
|
LISTEN_ONLY_NOTICE: () => LISTEN_ONLY_NOTICE,
|
|
51
52
|
MEETING_INVITE_KIND: () => MEETING_INVITE_KIND,
|
|
52
53
|
MEETING_INVITE_VERSION: () => MEETING_INVITE_VERSION,
|
|
@@ -105,6 +106,7 @@ __export(core_exports, {
|
|
|
105
106
|
canModerateParticipant: () => canModerateParticipant,
|
|
106
107
|
canTransition: () => canTransition,
|
|
107
108
|
captionSegment: () => captionSegment,
|
|
109
|
+
captureHeldOf: () => captureHeldOf,
|
|
108
110
|
changesPatch: () => changesPatch,
|
|
109
111
|
clockPosition: () => clockPosition,
|
|
110
112
|
collabFromState: () => collabFromState,
|
|
@@ -144,6 +146,7 @@ __export(core_exports, {
|
|
|
144
146
|
isGuest: () => isGuest,
|
|
145
147
|
isGuestIdentity: () => isGuestIdentity,
|
|
146
148
|
isHostRole: () => isHostRole,
|
|
149
|
+
isJoinRefusalReason: () => isJoinRefusalReason,
|
|
147
150
|
isLinkFollower: () => isLinkFollower,
|
|
148
151
|
isListenOnly: () => isListenOnly,
|
|
149
152
|
isNoteTaker: () => isNoteTaker,
|
|
@@ -282,7 +285,7 @@ function humanDatabaseSentence(message) {
|
|
|
282
285
|
return text3;
|
|
283
286
|
}
|
|
284
287
|
var FORBIDDEN_CODES = /* @__PURE__ */ new Set(["42501", "PGRST301", "PGRST302"]);
|
|
285
|
-
var NOT_FOUND_CODES = /* @__PURE__ */ new Set(["PGRST116", "PGRST205"]);
|
|
288
|
+
var NOT_FOUND_CODES = /* @__PURE__ */ new Set(["PGRST116", "PGRST205", "P0002"]);
|
|
286
289
|
var CONFLICT_CODES = /* @__PURE__ */ new Set(["23505", "40001", "55000"]);
|
|
287
290
|
var SESSION_MARKERS = [
|
|
288
291
|
"auth session missing",
|
|
@@ -318,7 +321,8 @@ function normalizeMeetError(error, operation) {
|
|
|
318
321
|
"not-found",
|
|
319
322
|
`${operation}: not found (${code}: ${message})`,
|
|
320
323
|
"The row is gone, or RLS hides it. If this is PGRST205 the communication.meet_* tables are not deployed yet \u2014 see MEET_SCHEMA in repository.ts for the exact contract.",
|
|
321
|
-
error
|
|
324
|
+
error,
|
|
325
|
+
"not_found"
|
|
322
326
|
);
|
|
323
327
|
}
|
|
324
328
|
if (code !== void 0 && CONFLICT_CODES.has(code)) {
|
|
@@ -2451,6 +2455,10 @@ function appPanelOf(meeting) {
|
|
|
2451
2455
|
if (typeof recordId !== "string" || recordId.length === 0) return null;
|
|
2452
2456
|
return { key, recordId };
|
|
2453
2457
|
}
|
|
2458
|
+
function captureHeldOf(meeting) {
|
|
2459
|
+
if (!meeting) return false;
|
|
2460
|
+
return meeting.metadata?.["capture_hold"] === "confidential_record" && !meeting.aiEnabled && meeting.recordingPolicy === "disabled";
|
|
2461
|
+
}
|
|
2454
2462
|
function scheduleSettingsPatch(settings, appPanel, observers) {
|
|
2455
2463
|
const patch = settingsPatch(settings);
|
|
2456
2464
|
if (appPanel !== void 0) patch["app_panel"] = { key: appPanel.key, record_id: appPanel.recordId };
|
|
@@ -6845,6 +6853,28 @@ function createMeetingRecordCache(options = {}) {
|
|
|
6845
6853
|
};
|
|
6846
6854
|
}
|
|
6847
6855
|
|
|
6856
|
+
// src/core/reasons.ts
|
|
6857
|
+
var JOIN_REFUSAL_REASONS = [
|
|
6858
|
+
"not_found",
|
|
6859
|
+
"cancelled",
|
|
6860
|
+
"ended",
|
|
6861
|
+
"expired",
|
|
6862
|
+
"too_early",
|
|
6863
|
+
"sign_in_required",
|
|
6864
|
+
"wrong_account",
|
|
6865
|
+
"not_invited",
|
|
6866
|
+
"locked",
|
|
6867
|
+
"removed",
|
|
6868
|
+
"lobby_rejects",
|
|
6869
|
+
"meeting_full",
|
|
6870
|
+
"platform_capacity",
|
|
6871
|
+
"verification_required",
|
|
6872
|
+
"registration_required"
|
|
6873
|
+
];
|
|
6874
|
+
function isJoinRefusalReason(value) {
|
|
6875
|
+
return typeof value === "string" && JOIN_REFUSAL_REASONS.includes(value);
|
|
6876
|
+
}
|
|
6877
|
+
|
|
6848
6878
|
// src/core/reactions.ts
|
|
6849
6879
|
var MEET_REACTIONS = ["\u{1F496}", "\u{1F44D}", "\u{1F389}", "\u{1F44F}", "\u{1F602}", "\u{1F62E}", "\u{1F622}", "\u{1F914}", "\u{1F44E}"];
|
|
6850
6880
|
|