@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/dist/react.cjs CHANGED
@@ -52,6 +52,7 @@ __export(react_exports, {
52
52
  IDLE_TRACK: () => IDLE_TRACK,
53
53
  IncomingCallCard: () => IncomingCallCard,
54
54
  IncomingCallHost: () => IncomingCallHost,
55
+ JOIN_REFUSAL_REASONS: () => JOIN_REFUSAL_REASONS,
55
56
  LISTEN_ONLY_NOTICE: () => LISTEN_ONLY_NOTICE,
56
57
  MEETING_INVITE_KIND: () => MEETING_INVITE_KIND,
57
58
  MEETING_INVITE_VERSION: () => MEETING_INVITE_VERSION,
@@ -117,6 +118,7 @@ __export(react_exports, {
117
118
  canModerateParticipant: () => canModerateParticipant,
118
119
  canTransition: () => canTransition,
119
120
  captionSegment: () => captionSegment,
121
+ captureHeldOf: () => captureHeldOf,
120
122
  changesPatch: () => changesPatch,
121
123
  clockPosition: () => clockPosition,
122
124
  collabFromState: () => collabFromState,
@@ -156,6 +158,7 @@ __export(react_exports, {
156
158
  isGuest: () => isGuest,
157
159
  isGuestIdentity: () => isGuestIdentity,
158
160
  isHostRole: () => isHostRole,
161
+ isJoinRefusalReason: () => isJoinRefusalReason,
159
162
  isLinkFollower: () => isLinkFollower,
160
163
  isListenOnly: () => isListenOnly,
161
164
  isNoteTaker: () => isNoteTaker,
@@ -344,7 +347,7 @@ function humanDatabaseSentence(message) {
344
347
  return text3;
345
348
  }
346
349
  var FORBIDDEN_CODES = /* @__PURE__ */ new Set(["42501", "PGRST301", "PGRST302"]);
347
- var NOT_FOUND_CODES = /* @__PURE__ */ new Set(["PGRST116", "PGRST205"]);
350
+ var NOT_FOUND_CODES = /* @__PURE__ */ new Set(["PGRST116", "PGRST205", "P0002"]);
348
351
  var CONFLICT_CODES = /* @__PURE__ */ new Set(["23505", "40001", "55000"]);
349
352
  var SESSION_MARKERS = [
350
353
  "auth session missing",
@@ -380,7 +383,8 @@ function normalizeMeetError(error, operation) {
380
383
  "not-found",
381
384
  `${operation}: not found (${code}: ${message})`,
382
385
  "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.",
383
- error
386
+ error,
387
+ "not_found"
384
388
  );
385
389
  }
386
390
  if (code !== void 0 && CONFLICT_CODES.has(code)) {
@@ -2842,6 +2846,10 @@ function appPanelOf(meeting) {
2842
2846
  if (typeof recordId !== "string" || recordId.length === 0) return null;
2843
2847
  return { key, recordId };
2844
2848
  }
2849
+ function captureHeldOf(meeting) {
2850
+ if (!meeting) return false;
2851
+ return meeting.metadata?.["capture_hold"] === "confidential_record" && !meeting.aiEnabled && meeting.recordingPolicy === "disabled";
2852
+ }
2845
2853
  function scheduleSettingsPatch(settings, appPanel, observers) {
2846
2854
  const patch = settingsPatch(settings);
2847
2855
  if (appPanel !== void 0) patch["app_panel"] = { key: appPanel.key, record_id: appPanel.recordId };
@@ -11350,6 +11358,7 @@ function MeetSkinRoom({
11350
11358
  elapsed > 0 ? ` \xB7 ${(0, import_format3.formatDurationMs)(elapsed)}` : ""
11351
11359
  ] }),
11352
11360
  /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(RecordingIndicator, {}),
11361
+ captureHeldOf(snapshot?.meeting) ? /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("span", { className: "mx-meet__badge", "data-meet-capture-held": "", children: "Confidential \xB7 not recorded" }) : null,
11353
11362
  isObserverRole(snapshot?.grants.role) ? /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("span", { className: "mx-meet__badge", "data-meet-observing": "self", children: "Observing" }) : null,
11354
11363
  snapshot?.locked === true ? /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("span", { className: "mx-meet__badge", children: [
11355
11364
  /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(LockIcon, { width: 12, height: 12 }),
@@ -12119,4 +12128,26 @@ async function pushMeetingToGoogleCalendar(api, meetingId, target) {
12119
12128
  if (!response.ok) throw await refusal(response, operation);
12120
12129
  return await response.json();
12121
12130
  }
12131
+
12132
+ // src/core/reasons.ts
12133
+ var JOIN_REFUSAL_REASONS = [
12134
+ "not_found",
12135
+ "cancelled",
12136
+ "ended",
12137
+ "expired",
12138
+ "too_early",
12139
+ "sign_in_required",
12140
+ "wrong_account",
12141
+ "not_invited",
12142
+ "locked",
12143
+ "removed",
12144
+ "lobby_rejects",
12145
+ "meeting_full",
12146
+ "platform_capacity",
12147
+ "verification_required",
12148
+ "registration_required"
12149
+ ];
12150
+ function isJoinRefusalReason(value) {
12151
+ return typeof value === "string" && JOIN_REFUSAL_REASONS.includes(value);
12152
+ }
12122
12153
  //# sourceMappingURL=react.cjs.map