@openclaw/zoom-meetings 2026.9.1-beta.1 → 2026.9.1

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.
@@ -1,10 +1,2 @@
1
- import { MeetingPlatformAdapter } from "openclaw/plugin-sdk/meeting-runtime";
2
- //#region extensions/zoom-meetings/src/cli-output-mode.ts
3
- const ZOOM_MEETINGS_CLI_METADATA = MeetingPlatformAdapter.createCliMetadata({
4
- commandName: "zoommeetings",
5
- description: "Join and manage Zoom meeting guests",
6
- id: "zoom-meetings",
7
- name: "Zoom meetings"
8
- });
9
- //#endregion
1
+ import { t as ZOOM_MEETINGS_CLI_METADATA } from "./cli-output-mode-DPg56N1-.js";
10
2
  export { ZOOM_MEETINGS_CLI_METADATA as default };
@@ -0,0 +1,19 @@
1
+ import { getRootOptionAwareCommandPath } from "openclaw/plugin-sdk/cli-argv";
2
+ //#region extensions/zoom-meetings/src/cli-output-mode.ts
3
+ const descriptor = {
4
+ name: "zoommeetings",
5
+ description: "Join and manage Zoom meeting guests",
6
+ hasSubcommands: true,
7
+ machineOutput: ({ argv }) => getRootOptionAwareCommandPath(argv, 2).length === 2
8
+ };
9
+ const ZOOM_MEETINGS_CLI_METADATA = {
10
+ id: "zoom-meetings",
11
+ name: "Zoom meetings",
12
+ description: "Zoom meetings CLI metadata",
13
+ descriptor,
14
+ register(api) {
15
+ api.registerCli(() => {}, { descriptors: [descriptor] });
16
+ }
17
+ };
18
+ //#endregion
19
+ export { ZOOM_MEETINGS_CLI_METADATA as t };
package/dist/index.js CHANGED
@@ -1,3 +1,4 @@
1
+ import { t as ZOOM_MEETINGS_CLI_METADATA } from "./cli-output-mode-DPg56N1-.js";
1
2
  import { n as zoomMeetingsInvalidRequest, r as zoomMeetingsConfig, t as ZoomMeetingsInvalidRequestError } from "./errors-DcrAT0wd.js";
2
3
  import { MeetingPlatformAdapter } from "openclaw/plugin-sdk/meeting-runtime";
3
4
  import { normalizeAgentId } from "openclaw/plugin-sdk/routing";
@@ -680,8 +681,9 @@ function zoomMeetingStatusScript(params) {
680
681
  }) + zoomMeetingStatusCallSource();
681
682
  }
682
683
  function zoomMeetingTranscriptScript(meetingUrl, meetingSessionId, finalize) {
684
+ const expectedIdentity = normalizeZoomMeetingUrlForReuse(meetingUrl);
683
685
  return createMeetingTranscriptSource({
684
- expectedIdentity: normalizeZoomMeetingUrlForReuse(meetingUrl),
686
+ expectedIdentity,
685
687
  finalize,
686
688
  globals: {
687
689
  captionArchive: "__openclawZoomCaptionArchive",
@@ -695,6 +697,7 @@ function zoomMeetingTranscriptScript(meetingUrl, meetingSessionId, finalize) {
695
697
  }
696
698
  function zoomMeetingLeaveScript(params) {
697
699
  const selectors = JSON.stringify(ZOOM_MEETING_SELECTORS);
700
+ const expectedIdentity = normalizeZoomMeetingUrlForReuse(params.meetingUrl);
698
701
  return createMeetingLeaveSource({
699
702
  controlSource: `const first = (list) => {
700
703
  for (const selector of list) {
@@ -724,7 +727,7 @@ function zoomMeetingLeaveScript(params) {
724
727
  departedMarkerSource: "(postCall || webClientHome)",
725
728
  documentSetupSource: `const topDocument = globalThis.document;
726
729
  const document = topDocument.querySelector("#webclient")?.contentDocument || topDocument;`,
727
- expectedIdentity: normalizeZoomMeetingUrlForReuse(params.meetingUrl),
730
+ expectedIdentity,
728
731
  leaveInitiated: params.leaveInitiated,
729
732
  meetingSessionId: params.meetingSessionId,
730
733
  meetingStateSource: "sessionId: expectedSessionId || state?.sessionId,",
@@ -1076,7 +1079,10 @@ var zoom_meetings_default = MeetingPlatformAdapter.createPluginShellEntry({
1076
1079
  nodeHandler: handleZoomMeetingsNodeHostCommand,
1077
1080
  createNodePolicy: createZoomMeetingsNodeInvokePolicy,
1078
1081
  registerNodeWhen: (config) => config.enabled,
1079
- cli: { load: async () => (await import("./cli-p_IBo6Sg.js")).registerZoomMeetingsCli }
1082
+ cli: {
1083
+ descriptor: ZOOM_MEETINGS_CLI_METADATA.descriptor,
1084
+ load: async () => (await import("./cli-p_IBo6Sg.js")).registerZoomMeetingsCli
1085
+ }
1080
1086
  });
1081
1087
  //#endregion
1082
1088
  export { zoom_meetings_default as default };
@@ -1,4 +1,4 @@
1
- const Email = /^(?:[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*|"(?:[^"\\]|\\.)*")@(?:[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?)*|\[(?:IPv6:[a-f0-9:]+|(?:25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9]?[0-9])(?:\.(?:25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9]?[0-9])){3})\])$/i;
1
+ const Email = /^(?:[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*|"(?:[^"\\]|\\[\x20-\x7e])*")@(?:[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?)*|\[(?:IPv6:[a-f0-9:]+|(?:25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9]?[0-9])(?:\.(?:25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9]?[0-9])){3})\])$/i;
2
2
  /**
3
3
  * Returns true if the value is an Email
4
4
  * @specification https://datatracker.ietf.org/doc/html/rfc5322
@@ -1,6 +1,9 @@
1
1
  import * as FormatBidi from './format/bidi.mjs';
2
2
  import * as LabelUnicode from './label/unicode.mjs';
3
3
  import * as LabelPuny from './label/puny.mjs';
4
+ // ------------------------------------------------------------------
5
+ // IsLabel
6
+ // ------------------------------------------------------------------
4
7
  function IsValidLabelLength(value) {
5
8
  return value.length > 0 && value.length <= 63;
6
9
  }
@@ -8,9 +11,24 @@ function IsLabel(value) {
8
11
  return IsValidLabelLength(value) && (LabelPuny.IsPunyLabel(value) ||
9
12
  LabelUnicode.IsUnicodeLabel(value));
10
13
  }
14
+ // ------------------------------------------------------------------
15
+ // NormalizeHostname
16
+ //
17
+ // Normalizes a hostname for label validation. Normalizes for NFC
18
+ // such that equivalent codepoint sequences can be uniformly
19
+ // compared. It also removes codepoints that IDNA mapping ignores,
20
+ // and converts full stop variants to ASCII '.' so the hostname can
21
+ // be split into labels.
22
+ // ------------------------------------------------------------------
11
23
  function NormalizeHostname(value) {
12
- return value.normalize('NFC').replace(/[\u002E\u3002\uFF0E\uFF61]/g, '.');
24
+ return value
25
+ .normalize('NFC')
26
+ .replace(/[\u00ad\u034f\u180b-\u180d\u200b\ufe00-\ufe0f\u{e0100}-\u{e01ef}]/gu, '') // RE_IGNORED_MAPPING
27
+ .replace(/[\u002E\u3002\uFF0E\uFF61]/g, '.'); // RE_FULL_STOP_MAPPING
13
28
  }
29
+ // ------------------------------------------------------------------
30
+ // IsIdnHostname
31
+ // ------------------------------------------------------------------
14
32
  export function IsIdnHostname(value) {
15
33
  if (value.length === 0 || value.includes(' '))
16
34
  return false;
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "typebox",
3
3
  "description": "Json Schema Type Builder with Static Type Resolution for TypeScript",
4
- "version": "1.3.16",
4
+ "version": "1.3.17",
5
5
  "keywords": [
6
6
  "typescript",
7
7
  "jsonschema"
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@openclaw/zoom-meetings",
3
- "version": "2026.9.1-beta.1",
3
+ "version": "2026.9.1",
4
4
  "description": "OpenClaw Zoom browser meeting participant plugin.",
5
5
  "repository": {
6
6
  "type": "git",
@@ -8,10 +8,10 @@
8
8
  },
9
9
  "type": "module",
10
10
  "dependencies": {
11
- "typebox": "1.3.16"
11
+ "typebox": "1.3.17"
12
12
  },
13
13
  "peerDependencies": {
14
- "openclaw": ">=2026.9.1-beta.1"
14
+ "openclaw": ">=2026.9.1"
15
15
  },
16
16
  "peerDependenciesMeta": {
17
17
  "openclaw": {
@@ -29,10 +29,10 @@
29
29
  "minHostVersion": ">=2026.7.2"
30
30
  },
31
31
  "compat": {
32
- "pluginApi": ">=2026.9.1-beta.1"
32
+ "pluginApi": ">=2026.9.1"
33
33
  },
34
34
  "build": {
35
- "openclawVersion": "2026.9.1-beta.1",
35
+ "openclawVersion": "2026.9.1",
36
36
  "bundledDist": false
37
37
  },
38
38
  "release": {