@wirecat/zoom-cli 0.30.0 → 0.32.0
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/README.md +6 -5
- package/dist/answer-output.d.ts +1 -0
- package/dist/answer-output.d.ts.map +1 -1
- package/dist/answer-output.js +7 -1
- package/dist/answer-output.js.map +1 -1
- package/dist/answers.d.ts +20 -0
- package/dist/answers.d.ts.map +1 -1
- package/dist/api.d.ts +4 -1
- package/dist/api.d.ts.map +1 -1
- package/dist/api.js +30 -30
- package/dist/api.js.map +1 -1
- package/dist/archive-commands.d.ts.map +1 -1
- package/dist/archive-commands.js +16 -3
- package/dist/archive-commands.js.map +1 -1
- package/dist/config.d.ts +4 -1
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +6 -4
- package/dist/config.js.map +1 -1
- package/dist/errors.d.ts +21 -0
- package/dist/errors.d.ts.map +1 -1
- package/dist/errors.js +51 -0
- package/dist/errors.js.map +1 -1
- package/dist/files.d.ts +3 -0
- package/dist/files.d.ts.map +1 -1
- package/dist/files.js +94 -12
- package/dist/files.js.map +1 -1
- package/dist/first-screen.js +2 -2
- package/dist/first-screen.js.map +1 -1
- package/dist/meeting-inventory-mcp.d.ts +10 -0
- package/dist/meeting-inventory-mcp.d.ts.map +1 -1
- package/dist/meeting-preparation-mcp.d.ts +15 -0
- package/dist/meeting-preparation-mcp.d.ts.map +1 -1
- package/dist/meeting-project-candidates-mcp.d.ts +10 -0
- package/dist/meeting-project-candidates-mcp.d.ts.map +1 -1
- package/dist/meeting-project-evidence-mcp.d.ts +10 -0
- package/dist/meeting-project-evidence-mcp.d.ts.map +1 -1
- package/dist/meeting-source.d.ts +4 -2
- package/dist/meeting-source.d.ts.map +1 -1
- package/dist/meeting-source.js +4 -3
- package/dist/meeting-source.js.map +1 -1
- package/dist/occurrence-schedule.d.ts.map +1 -1
- package/dist/occurrence-schedule.js +3 -11
- package/dist/occurrence-schedule.js.map +1 -1
- package/dist/program.d.ts.map +1 -1
- package/dist/program.js +12 -12
- package/dist/program.js.map +1 -1
- package/dist/recording-schedule-setup.d.ts +3 -1
- package/dist/recording-schedule-setup.d.ts.map +1 -1
- package/dist/recording-schedule-setup.js +2 -2
- package/dist/recording-schedule-setup.js.map +1 -1
- package/dist/recordings.d.ts +3 -1
- package/dist/recordings.d.ts.map +1 -1
- package/dist/recordings.js +15 -13
- package/dist/recordings.js.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/dist/watch-service.d.ts +4 -2
- package/dist/watch-service.d.ts.map +1 -1
- package/dist/watch-service.js +5 -4
- package/dist/watch-service.js.map +1 -1
- package/package.json +3 -3
- package/skills/zoom-cli/SKILL.md +4 -2
package/dist/errors.d.ts
CHANGED
|
@@ -1,5 +1,26 @@
|
|
|
1
|
+
import type { JsonValue } from "@wirecat/cli-core/meetings";
|
|
1
2
|
export declare const checkCancelled: (signal?: AbortSignal) => void;
|
|
2
3
|
export declare const object: (value: unknown) => Record<string, unknown>;
|
|
3
4
|
export declare const string: (value: unknown) => string | null;
|
|
4
5
|
export declare const number: (value: unknown) => number | null;
|
|
6
|
+
/** Epoch ms of a Zoom date-time, which must name its zone: a time without one would be read in the process zone. */
|
|
7
|
+
export declare const zoomInstant: (text: string, message: string) => number;
|
|
8
|
+
export declare const TIME_WITHOUT_ZONE = "time_without_zone";
|
|
9
|
+
/** Zoom times read without a zone during one command, so the answer can warn once. */
|
|
10
|
+
export declare class ZoneAssumptions {
|
|
11
|
+
private count;
|
|
12
|
+
private readonly zones;
|
|
13
|
+
add(zone: string): void;
|
|
14
|
+
take(): string[];
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* A Zoom response time. One without a zone is local time by Zoom's rule
|
|
18
|
+
* (https://developers.zoom.us/docs/api/using-zoom-apis/, "Time in Zoom API"), so it is read in the computer's zone,
|
|
19
|
+
* or in UTC when daylight saving makes that local time skipped or repeated; `zone` says which was assumed.
|
|
20
|
+
*/
|
|
21
|
+
export declare const zoomTime: (text: string, message: string) => {
|
|
22
|
+
time: number;
|
|
23
|
+
zone: string | null;
|
|
24
|
+
};
|
|
25
|
+
export declare const withIssue: (metadata: Record<string, JsonValue>, doubtful: boolean) => Record<string, JsonValue>;
|
|
5
26
|
//# sourceMappingURL=errors.d.ts.map
|
package/dist/errors.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,cAAc,YAAa,WAAW,KAAG,IAKrD,CAAA;AACD,eAAO,MAAM,MAAM,UAAW,OAAO,KAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAI7D,CAAA;AACD,eAAO,MAAM,MAAM,UAAW,OAAO,KAAG,MAAM,GAAG,IAAkE,CAAA;AACnH,eAAO,MAAM,MAAM,UAAW,OAAO,KAAG,MAAM,GAAG,IACmB,CAAA"}
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAA;AAE3D,eAAO,MAAM,cAAc,YAAa,WAAW,KAAG,IAKrD,CAAA;AACD,eAAO,MAAM,MAAM,UAAW,OAAO,KAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAI7D,CAAA;AACD,eAAO,MAAM,MAAM,UAAW,OAAO,KAAG,MAAM,GAAG,IAAkE,CAAA;AACnH,eAAO,MAAM,MAAM,UAAW,OAAO,KAAG,MAAM,GAAG,IACmB,CAAA;AACpE,oHAAoH;AACpH,eAAO,MAAM,WAAW,SAAU,MAAM,WAAW,MAAM,KAAG,MAS3D,CAAA;AACD,eAAO,MAAM,iBAAiB,sBAAsB,CAAA;AACpD,sFAAsF;AACtF,qBAAa,eAAe;IAC1B,OAAO,CAAC,KAAK,CAAI;IACjB,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAoB;IAC1C,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAGtB;IACD,IAAI,IAAI,MAAM,EAAE,CAMf;CACF;AACD;;;;GAIG;AACH,eAAO,MAAM,QAAQ,SAAU,MAAM,WAAW,MAAM,KAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;CAS3F,CAAA;AACD,eAAO,MAAM,SAAS,aAAc,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,YAAY,OAAO,KAAG,MAAM,CAAC,MAAM,EAAE,SAAS,CACvC,CAAA"}
|
package/dist/errors.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { CliError, isCliError } from "@wirecat/cli-base";
|
|
2
|
+
import { timezoneOf, wallTime } from "@wirecat/cli-base/query";
|
|
2
3
|
export const checkCancelled = (signal) => {
|
|
3
4
|
if (!signal?.aborted)
|
|
4
5
|
return;
|
|
@@ -14,4 +15,54 @@ export const object = (value) => {
|
|
|
14
15
|
};
|
|
15
16
|
export const string = (value) => (typeof value === "string" && value.trim() ? value : null);
|
|
16
17
|
export const number = (value) => typeof value === "number" && Number.isFinite(value) ? value : null;
|
|
18
|
+
/** Epoch ms of a Zoom date-time, which must name its zone: a time without one would be read in the process zone. */
|
|
19
|
+
export const zoomInstant = (text, message) => {
|
|
20
|
+
const invalid = () => new CliError("invalid_response", message);
|
|
21
|
+
if (!/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(?:\.\d+)?(?:Z|[+-]\d{2}:\d{2})$/.test(text))
|
|
22
|
+
throw invalid();
|
|
23
|
+
const local = text.replace(/(?:Z|[+-]\d{2}:\d{2})$/, "Z");
|
|
24
|
+
const date = new Date(local);
|
|
25
|
+
if (!Number.isFinite(date.getTime()) || date.toISOString().slice(0, 19) !== local.slice(0, 19))
|
|
26
|
+
throw invalid();
|
|
27
|
+
const stamp = Date.parse(text);
|
|
28
|
+
if (!Number.isSafeInteger(stamp))
|
|
29
|
+
throw invalid();
|
|
30
|
+
return stamp;
|
|
31
|
+
};
|
|
32
|
+
export const TIME_WITHOUT_ZONE = "time_without_zone";
|
|
33
|
+
/** Zoom times read without a zone during one command, so the answer can warn once. */
|
|
34
|
+
export class ZoneAssumptions {
|
|
35
|
+
count = 0;
|
|
36
|
+
zones = new Set();
|
|
37
|
+
add(zone) {
|
|
38
|
+
this.count++;
|
|
39
|
+
this.zones.add(zone);
|
|
40
|
+
}
|
|
41
|
+
take() {
|
|
42
|
+
if (this.count === 0)
|
|
43
|
+
return [];
|
|
44
|
+
const notice = `${this.count} Zoom ${this.count === 1 ? "time had" : "times had"} no zone; read in ${[...this.zones].join(" or ")} and marked ${TIME_WITHOUT_ZONE}`;
|
|
45
|
+
this.count = 0;
|
|
46
|
+
this.zones.clear();
|
|
47
|
+
return [notice];
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* A Zoom response time. One without a zone is local time by Zoom's rule
|
|
52
|
+
* (https://developers.zoom.us/docs/api/using-zoom-apis/, "Time in Zoom API"), so it is read in the computer's zone,
|
|
53
|
+
* or in UTC when daylight saving makes that local time skipped or repeated; `zone` says which was assumed.
|
|
54
|
+
*/
|
|
55
|
+
export const zoomTime = (text, message) => {
|
|
56
|
+
if (/(?:Z|[+-]\d{2}:\d{2})$/.test(text))
|
|
57
|
+
return { time: zoomInstant(text, message), zone: null };
|
|
58
|
+
const utc = zoomInstant(`${text}Z`, message);
|
|
59
|
+
const zone = timezoneOf();
|
|
60
|
+
try {
|
|
61
|
+
return { time: wallTime(text.replace(/(\.\d{3})\d+$/, "$1"), zone, { start: 0, end: text.length }), zone };
|
|
62
|
+
}
|
|
63
|
+
catch {
|
|
64
|
+
return { time: utc, zone: "UTC" };
|
|
65
|
+
}
|
|
66
|
+
};
|
|
67
|
+
export const withIssue = (metadata, doubtful) => doubtful ? { ...metadata, issues: [TIME_WITHOUT_ZONE] } : metadata;
|
|
17
68
|
//# sourceMappingURL=errors.js.map
|
package/dist/errors.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"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"}
|
package/dist/files.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { type ImportFile, type MeetingSource, type SourceMeeting } from "@wirecat/cli-core/meetings";
|
|
2
|
+
import { type ZoomConfig } from "./config.js";
|
|
2
3
|
export interface DownloadedFile {
|
|
3
4
|
name: string;
|
|
4
5
|
content: string;
|
|
@@ -25,4 +26,6 @@ export declare class FilesSource implements MeetingSource {
|
|
|
25
26
|
summary(): Promise<null>;
|
|
26
27
|
files(): Promise<null>;
|
|
27
28
|
}
|
|
29
|
+
/** What `meetings import --help` adds: the names zm reads and the zone it reads their time in. */
|
|
30
|
+
export declare const fileNamesHelp: (config: () => Pick<ZoomConfig, "filesTimezone">) => string;
|
|
28
31
|
//# sourceMappingURL=files.d.ts.map
|
package/dist/files.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"files.d.ts","sourceRoot":"","sources":["../src/files.ts"],"names":[],"mappings":"AAIA,OAAO,
|
|
1
|
+
{"version":3,"file":"files.d.ts","sourceRoot":"","sources":["../src/files.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,KAAK,UAAU,EACf,KAAK,aAAa,EAIlB,KAAK,aAAa,EACnB,MAAM,4BAA4B,CAAA;AAEnC,OAAO,EAAa,KAAK,UAAU,EAAE,MAAM,aAAa,CAAA;AAExD,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,MAAM,CAAA;CAChB;AA4ED,eAAO,MAAM,WAAW,SAAU,MAAM,wBAAqB,aAc5D,CAAA;AAmDD,eAAO,MAAM,UAAU,SAAU,cAAc,aAAa,MAAM,wBAAqB,UAoCtF,CAAA;AAoBD,eAAO,MAAM,uBAAuB,UAAW,cAAc,EAAE,wBAAqB,cAAc,EACrB,CAAA;AAC7E,0DAA0D;AAC1D,eAAO,MAAM,gBAAgB,QAAS,CAAA;AAEtC,eAAO,MAAM,mBAAmB,WAAkB,MAAM,KAAG,OAAO,CAAC,cAAc,EAAE,CA8BlF,CAAA;AACD,qBAAa,WAAY,YAAW,aAAa;IAK7C,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAL3B,QAAQ,CAAC,QAAQ,UAAS;IAC1B,QAAQ,CAAC,gBAAgB,SAAQ;IACjC,QAAQ,CAAC,IAAI,UAAS;IACtB,YACmB,SAAS,EAAE,cAAc,EAAE,EAC3B,QAAQ,SAAQ,EAC/B;IACJ,OAAO,CAAC,OAAO,CAA2E;IAC1F,OAAO,CAAC,KAAK;IAKP,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC,CAMtD;IACK,UAAU,CAAC,EAAE,EAAE,MAAM,yEAI1B;IACK,YAAY,kBAEjB;IACK,IAAI,kBAET;IACK,OAAO,kBAEZ;IACK,KAAK,kBAEV;CACF;AAED,kGAAkG;AAClG,eAAO,MAAM,aAAa,WAAY,MAAM,IAAI,CAAC,UAAU,EAAE,eAAe,CAAC,KAAG,MAY/E,CAAA"}
|
package/dist/files.js
CHANGED
|
@@ -2,8 +2,9 @@ import { createHash } from "node:crypto";
|
|
|
2
2
|
import { readdir, readFile, stat } from "node:fs/promises";
|
|
3
3
|
import { basename, join } from "node:path";
|
|
4
4
|
import { CliError } from "@wirecat/cli-base";
|
|
5
|
-
import { parseVtt } from "@wirecat/cli-core/meetings";
|
|
5
|
+
import { parseTranscriptText, parseVtt, } from "@wirecat/cli-core/meetings";
|
|
6
6
|
import { TRANSCRIPT_MAX_BYTES } from "./api.js";
|
|
7
|
+
import { filesZone } from "./config.js";
|
|
7
8
|
const localTimestamp = (year, month, day, hour, minute, timezone) => {
|
|
8
9
|
const target = Date.UTC(year, month - 1, day, hour, minute);
|
|
9
10
|
const date = new Date(target);
|
|
@@ -43,10 +44,22 @@ const localTimestamp = (year, month, day, hour, minute, timezone) => {
|
|
|
43
44
|
throw new CliError("validation_error", "transcript filename time is ambiguous or nonexistent in the selected timezone");
|
|
44
45
|
return [...possibilities][0] ?? target;
|
|
45
46
|
};
|
|
47
|
+
const FILE_NAME = /^(\d{4})-(\d{2})-(\d{2})_(\d{2})(\d{2})_(.+)\.(vtt|txt)$/i;
|
|
48
|
+
const isText = (name) => /\.txt$/i.test(name);
|
|
49
|
+
const MONTHS = ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"];
|
|
50
|
+
/** `Mar 4, 2026 10:30 AM`, as the Zoom web portal shows a recording: the wall clock of the zone the files were made in. */
|
|
51
|
+
const headerTime = (date, timezone) => {
|
|
52
|
+
const match = /^([A-Z][a-z]{2}) (\d{1,2}), (\d{4}) (\d{1,2}):(\d{2}) ([AP]M)$/.exec(date ?? "");
|
|
53
|
+
const month = MONTHS.indexOf(match?.[1] ?? "") + 1;
|
|
54
|
+
if (!match || month === 0)
|
|
55
|
+
return null;
|
|
56
|
+
const [, , day, year, hour, minute, half] = match;
|
|
57
|
+
return localTimestamp(Number(year), month, Number(day), (Number(hour) % 12) + (half === "PM" ? 12 : 0), Number(minute), timezone);
|
|
58
|
+
};
|
|
46
59
|
export const fileMeeting = (name, timezone = "UTC") => {
|
|
47
|
-
const match =
|
|
60
|
+
const match = FILE_NAME.exec(basename(name));
|
|
48
61
|
if (!match)
|
|
49
|
-
throw new CliError("validation_error", "expected a transcript named YYYY-MM-DD_HHMM_topic.vtt");
|
|
62
|
+
throw new CliError("validation_error", "expected a transcript named YYYY-MM-DD_HHMM_topic.vtt or .txt");
|
|
50
63
|
const [, year, month, day, hour, minute, topic = ""] = match;
|
|
51
64
|
const startedAt = localTimestamp(Number(year), Number(month), Number(day), Number(hour), Number(minute), timezone);
|
|
52
65
|
const slug = topic.normalize("NFC");
|
|
@@ -59,29 +72,74 @@ export const fileMeeting = (name, timezone = "UTC") => {
|
|
|
59
72
|
timezone,
|
|
60
73
|
};
|
|
61
74
|
};
|
|
75
|
+
/**
|
|
76
|
+
* A `.txt` header names the meeting, when its recording was made, its Zoom meeting id and who spoke. zoom-searcher
|
|
77
|
+
* took that time, and the one in the file name, from the portal's "created" column: the end of the recording, not
|
|
78
|
+
* the start — on seven meetings the API also holds, it was the API's start plus the transcript's length, to the
|
|
79
|
+
* minute. So the start is that time less the last line's offset. The id is the series key the API uses, so the
|
|
80
|
+
* file's copy and the API's copy of one occurrence become one record. A speaker is a participant of this meeting
|
|
81
|
+
* only, keyed by name: a name alone never stands for the same person in another meeting.
|
|
82
|
+
*/
|
|
83
|
+
const textHeader = (file, accountId, occurrenceId, timezone, nameTime) => {
|
|
84
|
+
if (!isText(file.name))
|
|
85
|
+
return undefined;
|
|
86
|
+
const { header, lines } = parseTranscriptText(file.content);
|
|
87
|
+
const participants = header.speakers.map((name, position) => ({
|
|
88
|
+
identity: {
|
|
89
|
+
provider: "zoom",
|
|
90
|
+
externalId: `name:${name}@${accountId}/${occurrenceId}:${position}`,
|
|
91
|
+
name,
|
|
92
|
+
metadata: null,
|
|
93
|
+
associatePerson: false,
|
|
94
|
+
},
|
|
95
|
+
displayName: name,
|
|
96
|
+
email: null,
|
|
97
|
+
role: null,
|
|
98
|
+
joinedAt: null,
|
|
99
|
+
leftAt: null,
|
|
100
|
+
durationMs: null,
|
|
101
|
+
sessions: null,
|
|
102
|
+
externalId: null,
|
|
103
|
+
metadata: null,
|
|
104
|
+
}));
|
|
105
|
+
const meetingId = header.meetingId?.replace(/\s/g, "");
|
|
106
|
+
const endedAt = headerTime(header.date, timezone) ?? nameTime;
|
|
107
|
+
const durationMs = lines.at(-1)?.startMs ?? 0;
|
|
108
|
+
return {
|
|
109
|
+
title: header.title,
|
|
110
|
+
startedAt: endedAt - durationMs,
|
|
111
|
+
endedAt,
|
|
112
|
+
durationMs,
|
|
113
|
+
seriesId: meetingId && /^\d+$/.test(meetingId) ? meetingId : null,
|
|
114
|
+
participants,
|
|
115
|
+
};
|
|
116
|
+
};
|
|
62
117
|
export const importFile = (file, accountId, timezone = "UTC") => {
|
|
63
118
|
const source = fileMeeting(file.name, timezone);
|
|
119
|
+
const header = textHeader(file, accountId, source.occurrence.id, timezone, Date.parse(source.occurrence.startedAt));
|
|
120
|
+
const title = header?.title ?? source.occurrence.title;
|
|
64
121
|
return {
|
|
65
122
|
content: file.content,
|
|
66
123
|
source: "file",
|
|
124
|
+
...(header ? { format: "text", participants: header.participants } : {}),
|
|
67
125
|
meeting: {
|
|
68
126
|
accountId,
|
|
69
127
|
externalId: source.occurrence.id,
|
|
70
|
-
title
|
|
128
|
+
title,
|
|
71
129
|
description: null,
|
|
72
130
|
location: null,
|
|
73
131
|
joinUrl: null,
|
|
74
|
-
startedAt: Date.parse(source.occurrence.startedAt),
|
|
75
|
-
endedAt: null,
|
|
76
|
-
durationMs: null,
|
|
132
|
+
startedAt: header?.startedAt ?? Date.parse(source.occurrence.startedAt),
|
|
133
|
+
endedAt: header?.endedAt ?? null,
|
|
134
|
+
durationMs: header?.durationMs ?? null,
|
|
77
135
|
timezone,
|
|
78
136
|
hostIdentityId: null,
|
|
79
137
|
participantsCount: null,
|
|
80
138
|
metadata: null,
|
|
81
139
|
deletedAt: null,
|
|
82
140
|
series: {
|
|
83
|
-
externalId: source.occurrence.seriesId,
|
|
84
|
-
title: source.series?.title ?? null,
|
|
141
|
+
externalId: header?.seriesId ?? source.occurrence.seriesId,
|
|
142
|
+
title: header?.title ?? source.series?.title ?? null,
|
|
85
143
|
description: null,
|
|
86
144
|
kind: null,
|
|
87
145
|
recurrence: null,
|
|
@@ -98,6 +156,12 @@ const indexDownloadedFiles = (files, timezone) => {
|
|
|
98
156
|
for (const file of [...files].sort((a, b) => a.name.localeCompare(b.name))) {
|
|
99
157
|
const meeting = fileMeeting(file.name, timezone);
|
|
100
158
|
const existing = result.get(meeting.occurrence.id);
|
|
159
|
+
// A .txt and a .vtt of one meeting are two copies; the .txt also carries the header.
|
|
160
|
+
if (existing && isText(existing.file.name) !== isText(file.name)) {
|
|
161
|
+
if (isText(file.name))
|
|
162
|
+
result.set(meeting.occurrence.id, { meeting, file });
|
|
163
|
+
continue;
|
|
164
|
+
}
|
|
101
165
|
if (existing && existing.file.content !== file.content)
|
|
102
166
|
throw new CliError("validation_error", "conflicting transcript files have the same occurrence key");
|
|
103
167
|
if (!existing)
|
|
@@ -119,10 +183,11 @@ export const readDownloadedFiles = async (folder) => {
|
|
|
119
183
|
throw error;
|
|
120
184
|
});
|
|
121
185
|
const entries = listing
|
|
122
|
-
.
|
|
186
|
+
// Any .vtt is a transcript and a misnamed one is an error; a .txt is one only when named like one.
|
|
187
|
+
.filter((entry) => entry.isFile() && (/\.vtt$/i.test(entry.name) || (isText(entry.name) && FILE_NAME.test(entry.name))))
|
|
123
188
|
.sort((a, b) => a.name.localeCompare(b.name));
|
|
124
189
|
if (entries.length > FOLDER_MAX_FILES)
|
|
125
|
-
throw new CliError("validation_error", `the folder holds ${entries.length}
|
|
190
|
+
throw new CliError("validation_error", `the folder holds ${entries.length} transcript files and zm reads at most ${FOLDER_MAX_FILES} — move some into another folder`);
|
|
126
191
|
const files = [];
|
|
127
192
|
for (const entry of entries) {
|
|
128
193
|
const path = join(folder, entry.name);
|
|
@@ -159,7 +224,9 @@ export class FilesSource {
|
|
|
159
224
|
}
|
|
160
225
|
async transcript(id) {
|
|
161
226
|
const file = this.index().get(id)?.file;
|
|
162
|
-
|
|
227
|
+
if (!file)
|
|
228
|
+
return null;
|
|
229
|
+
return isText(file.name) ? parseTranscriptText(file.content).lines : parseVtt(file.content);
|
|
163
230
|
}
|
|
164
231
|
async participants() {
|
|
165
232
|
return null;
|
|
@@ -174,4 +241,19 @@ export class FilesSource {
|
|
|
174
241
|
return null;
|
|
175
242
|
}
|
|
176
243
|
}
|
|
244
|
+
/** What `meetings import --help` adds: the names zm reads and the zone it reads their time in. */
|
|
245
|
+
export const fileNamesHelp = (config) => {
|
|
246
|
+
let zone;
|
|
247
|
+
try {
|
|
248
|
+
zone = config().filesTimezone
|
|
249
|
+
? `files.timezone, now ${filesZone(config())}`
|
|
250
|
+
: `this computer's zone, now ${filesZone(config())}`;
|
|
251
|
+
}
|
|
252
|
+
catch {
|
|
253
|
+
zone = "files.timezone, else this computer's zone";
|
|
254
|
+
}
|
|
255
|
+
return `Files: YYYY-MM-DD_HHMM_topic.vtt, and YYYY-MM-DD_HHMM_topic.txt with a header (Встреча:, Дата:, Zoom ID:, Говорят:).
|
|
256
|
+
The time in a file name and in Дата: is read in ${zone}; set another with
|
|
257
|
+
zm config set files.timezone <IANA zone>. Times are stored in UTC, and the import names the zone it used.`;
|
|
258
|
+
};
|
|
177
259
|
//# sourceMappingURL=files.js.map
|
package/dist/files.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"files.js","sourceRoot":"","sources":["../src/files.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"files.js","sourceRoot":"","sources":["../src/files.ts"],"names":[],"mappings":"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"}
|
package/dist/first-screen.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { fileURLToPath } from "node:url";
|
|
2
|
-
import { guideCommand, inSection, installHelp } from "@wirecat/cli-core/cli";
|
|
2
|
+
import { guideCommand, inSection, installHelp, MEMO_SCENARIOS } from "@wirecat/cli-core/cli";
|
|
3
3
|
import { ZM } from "./read-only.js";
|
|
4
4
|
// cli-core places its own groups (meetings, search, watch, serve, config, skill…); these are zm's.
|
|
5
5
|
const SECTIONS = [
|
|
@@ -31,7 +31,7 @@ export const installFirstScreen = (program) => {
|
|
|
31
31
|
placeInSections(program);
|
|
32
32
|
const guide = guideCommand(ZM, {
|
|
33
33
|
directory: fileURLToPath(new URL("../scenarios", import.meta.url)),
|
|
34
|
-
worksWith: [
|
|
34
|
+
worksWith: [MEMO_SCENARIOS.personBrief],
|
|
35
35
|
profile: false,
|
|
36
36
|
});
|
|
37
37
|
// addCommand, unlike command(), leaves out the exit override: `guide --help` called process.exit itself.
|
package/dist/first-screen.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"first-screen.js","sourceRoot":"","sources":["../src/first-screen.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AACxC,OAAO,EAAE,YAAY,EAAoB,SAAS,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAA;
|
|
1
|
+
{"version":3,"file":"first-screen.js","sourceRoot":"","sources":["../src/first-screen.ts"],"names":[],"mappings":"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"}
|
|
@@ -53,6 +53,11 @@ export declare const readInventoryTool: (read: MeetingSeriesInventoryReader, inp
|
|
|
53
53
|
source: string;
|
|
54
54
|
}[] | undefined;
|
|
55
55
|
truncated?: boolean | undefined;
|
|
56
|
+
timezone?: string | undefined;
|
|
57
|
+
window?: {
|
|
58
|
+
since?: string | undefined;
|
|
59
|
+
until?: string | undefined;
|
|
60
|
+
} | undefined;
|
|
56
61
|
};
|
|
57
62
|
} | {
|
|
58
63
|
item: unknown;
|
|
@@ -88,6 +93,11 @@ export declare const readInventoryTool: (read: MeetingSeriesInventoryReader, inp
|
|
|
88
93
|
source: string;
|
|
89
94
|
}[] | undefined;
|
|
90
95
|
truncated?: boolean | undefined;
|
|
96
|
+
timezone?: string | undefined;
|
|
97
|
+
window?: {
|
|
98
|
+
since?: string | undefined;
|
|
99
|
+
until?: string | undefined;
|
|
100
|
+
} | undefined;
|
|
91
101
|
};
|
|
92
102
|
};
|
|
93
103
|
} | ({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"meeting-inventory-mcp.d.ts","sourceRoot":"","sources":["../src/meeting-inventory-mcp.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkC,KAAK,4BAA4B,EAAe,MAAM,uBAAuB,CAAA;AACtH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAIxC,eAAO,MAAM,iBAAiB,SACtB,4BAA4B,SAC3B,OAAO,UACN,WAAW,WACV;IAAE,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;IAAC,eAAe,CAAC,EAAE,OAAO,CAAA;CAAE;;cAY/B,MAAM
|
|
1
|
+
{"version":3,"file":"meeting-inventory-mcp.d.ts","sourceRoot":"","sources":["../src/meeting-inventory-mcp.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkC,KAAK,4BAA4B,EAAe,MAAM,uBAAuB,CAAA;AACtH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAIxC,eAAO,MAAM,iBAAiB,SACtB,4BAA4B,SAC3B,OAAO,UACN,WAAW,WACV;IAAE,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;IAAC,eAAe,CAAC,EAAE,OAAO,CAAA;CAAE;;cAY/B,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAClC,CAAA"}
|
|
@@ -110,6 +110,11 @@ export declare const readPreparationTool: (deps: {
|
|
|
110
110
|
source: string;
|
|
111
111
|
}[] | undefined;
|
|
112
112
|
truncated?: boolean | undefined;
|
|
113
|
+
timezone?: string | undefined;
|
|
114
|
+
window?: {
|
|
115
|
+
since?: string | undefined;
|
|
116
|
+
until?: string | undefined;
|
|
117
|
+
} | undefined;
|
|
113
118
|
};
|
|
114
119
|
} | {
|
|
115
120
|
item: unknown;
|
|
@@ -145,6 +150,11 @@ export declare const readPreparationTool: (deps: {
|
|
|
145
150
|
source: string;
|
|
146
151
|
}[] | undefined;
|
|
147
152
|
truncated?: boolean | undefined;
|
|
153
|
+
timezone?: string | undefined;
|
|
154
|
+
window?: {
|
|
155
|
+
since?: string | undefined;
|
|
156
|
+
until?: string | undefined;
|
|
157
|
+
} | undefined;
|
|
148
158
|
};
|
|
149
159
|
};
|
|
150
160
|
} | ({
|
|
@@ -462,6 +472,11 @@ export declare const readPreparationTool: (deps: {
|
|
|
462
472
|
id: string;
|
|
463
473
|
excerpt: string;
|
|
464
474
|
offset_ms: number | null;
|
|
475
|
+
match?: "corrected" | "words" | undefined;
|
|
476
|
+
corrections?: {
|
|
477
|
+
from: string;
|
|
478
|
+
to: string[];
|
|
479
|
+
}[] | undefined;
|
|
465
480
|
source?: {
|
|
466
481
|
ref: string;
|
|
467
482
|
title: string | null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"meeting-preparation-mcp.d.ts","sourceRoot":"","sources":["../src/meeting-preparation-mcp.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAGxC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qCAAqC,CAAA;AACzE,OAAO,EAEL,KAAK,qBAAqB,EAC1B,KAAK,uBAAuB,EAC5B,KAAK,sBAAsB,EAC5B,MAAM,0BAA0B,CAAA;AAOjC,eAAO,MAAM,kBAAkB,aAAc,cAAc;;;;;;;;;;;;;;;CAc1D,CAAA;AAED,eAAO,MAAM,mBAAmB,SACxB;IACJ,YAAY,EAAE,CAAC,OAAO,CAAC,EAAE,uBAAuB,KAAK,OAAO,CAAC,qBAAqB,CAAC,CAAA;IACnF,WAAW,CAAC,EAAE,sBAAsB,CAAA;IACpC,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,GAAG,CAAC,EAAE,MAAM,MAAM,CAAA;CACnB,SACM,OAAO,UACN,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cA0BQ,MAAM
|
|
1
|
+
{"version":3,"file":"meeting-preparation-mcp.d.ts","sourceRoot":"","sources":["../src/meeting-preparation-mcp.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAGxC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qCAAqC,CAAA;AACzE,OAAO,EAEL,KAAK,qBAAqB,EAC1B,KAAK,uBAAuB,EAC5B,KAAK,sBAAsB,EAC5B,MAAM,0BAA0B,CAAA;AAOjC,eAAO,MAAM,kBAAkB,aAAc,cAAc;;;;;;;;;;;;;;;CAc1D,CAAA;AAED,eAAO,MAAM,mBAAmB,SACxB;IACJ,YAAY,EAAE,CAAC,OAAO,CAAC,EAAE,uBAAuB,KAAK,OAAO,CAAC,qBAAqB,CAAC,CAAA;IACnF,WAAW,CAAC,EAAE,sBAAsB,CAAA;IACpC,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,GAAG,CAAC,EAAE,MAAM,MAAM,CAAA;CACnB,SACM,OAAO,UACN,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cA0BQ,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAClC,CAAA"}
|
|
@@ -93,6 +93,11 @@ export declare const readProjectCandidatesTool: (deps: {
|
|
|
93
93
|
source: string;
|
|
94
94
|
}[] | undefined;
|
|
95
95
|
truncated?: boolean | undefined;
|
|
96
|
+
timezone?: string | undefined;
|
|
97
|
+
window?: {
|
|
98
|
+
since?: string | undefined;
|
|
99
|
+
until?: string | undefined;
|
|
100
|
+
} | undefined;
|
|
96
101
|
};
|
|
97
102
|
} | {
|
|
98
103
|
item: unknown;
|
|
@@ -128,6 +133,11 @@ export declare const readProjectCandidatesTool: (deps: {
|
|
|
128
133
|
source: string;
|
|
129
134
|
}[] | undefined;
|
|
130
135
|
truncated?: boolean | undefined;
|
|
136
|
+
timezone?: string | undefined;
|
|
137
|
+
window?: {
|
|
138
|
+
since?: string | undefined;
|
|
139
|
+
until?: string | undefined;
|
|
140
|
+
} | undefined;
|
|
131
141
|
};
|
|
132
142
|
};
|
|
133
143
|
} | ({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"meeting-project-candidates-mcp.d.ts","sourceRoot":"","sources":["../src/meeting-project-candidates-mcp.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAGxC,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAA;AAEvE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAE5D,eAAO,MAAM,yBAAyB,SAC9B;IACJ,YAAY,EAAE,CAAC,OAAO,CAAC,EAAE,uBAAuB,KAAK,OAAO,CAAC,eAAe,CAAC,CAAA;IAC7E,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,GAAG,CAAC,EAAE,MAAM,MAAM,CAAA;CACnB,SACM,OAAO,UACN,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAkBQ,MAAM
|
|
1
|
+
{"version":3,"file":"meeting-project-candidates-mcp.d.ts","sourceRoot":"","sources":["../src/meeting-project-candidates-mcp.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAGxC,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAA;AAEvE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAE5D,eAAO,MAAM,yBAAyB,SAC9B;IACJ,YAAY,EAAE,CAAC,OAAO,CAAC,EAAE,uBAAuB,KAAK,OAAO,CAAC,eAAe,CAAC,CAAA;IAC7E,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,GAAG,CAAC,EAAE,MAAM,MAAM,CAAA;CACnB,SACM,OAAO,UACN,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAkBQ,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAClC,CAAA"}
|
|
@@ -93,6 +93,11 @@ export declare const readProjectEvidenceTool: (deps: {
|
|
|
93
93
|
source: string;
|
|
94
94
|
}[] | undefined;
|
|
95
95
|
truncated?: boolean | undefined;
|
|
96
|
+
timezone?: string | undefined;
|
|
97
|
+
window?: {
|
|
98
|
+
since?: string | undefined;
|
|
99
|
+
until?: string | undefined;
|
|
100
|
+
} | undefined;
|
|
96
101
|
};
|
|
97
102
|
} | {
|
|
98
103
|
item: unknown;
|
|
@@ -128,6 +133,11 @@ export declare const readProjectEvidenceTool: (deps: {
|
|
|
128
133
|
source: string;
|
|
129
134
|
}[] | undefined;
|
|
130
135
|
truncated?: boolean | undefined;
|
|
136
|
+
timezone?: string | undefined;
|
|
137
|
+
window?: {
|
|
138
|
+
since?: string | undefined;
|
|
139
|
+
until?: string | undefined;
|
|
140
|
+
} | undefined;
|
|
131
141
|
};
|
|
132
142
|
};
|
|
133
143
|
} | ({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"meeting-project-evidence-mcp.d.ts","sourceRoot":"","sources":["../src/meeting-project-evidence-mcp.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAGxC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAE5D,oGAAoG;AACpG,eAAO,MAAM,uBAAuB,SAC5B;IAAE,YAAY,EAAE,MAAM,OAAO,CAAC,eAAe,CAAC,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;IAAC,eAAe,CAAC,EAAE,OAAO,CAAA;CAAE,SAC9F,OAAO,UACN,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAkCQ,MAAM
|
|
1
|
+
{"version":3,"file":"meeting-project-evidence-mcp.d.ts","sourceRoot":"","sources":["../src/meeting-project-evidence-mcp.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAGxC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAE5D,oGAAoG;AACpG,eAAO,MAAM,uBAAuB,SAC5B;IAAE,YAAY,EAAE,MAAM,OAAO,CAAC,eAAe,CAAC,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;IAAC,eAAe,CAAC,EAAE,OAAO,CAAA;CAAE,SAC9F,OAAO,UACN,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAkCQ,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAClC,CAAA"}
|
package/dist/meeting-source.d.ts
CHANGED
|
@@ -1,13 +1,15 @@
|
|
|
1
1
|
import type { MeetingSource } from "@wirecat/cli-core/meetings";
|
|
2
|
-
import type
|
|
2
|
+
import { type ZoomConfig } from "./config.js";
|
|
3
|
+
import type { ZoneAssumptions } from "./errors.js";
|
|
3
4
|
import type { ProgramDeps } from "./program.js";
|
|
4
5
|
import type { TokenManager } from "./tokens.js";
|
|
5
6
|
/** The API or folder source the config names, built on first use; reset() drops it between parses. */
|
|
6
|
-
export declare const configuredMeetingSource: ({ deps, getConfig, tokens, fetch, }: {
|
|
7
|
+
export declare const configuredMeetingSource: ({ deps, getConfig, tokens, fetch, zones, }: {
|
|
7
8
|
deps: Pick<ProgramDeps, "source" | "readFiles">;
|
|
8
9
|
getConfig: () => ZoomConfig;
|
|
9
10
|
tokens: () => TokenManager;
|
|
10
11
|
fetch: () => typeof globalThis.fetch;
|
|
12
|
+
zones: ZoneAssumptions;
|
|
11
13
|
}) => {
|
|
12
14
|
source: MeetingSource;
|
|
13
15
|
reset: () => void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"meeting-source.d.ts","sourceRoot":"","sources":["../src/meeting-source.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAE/D,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"meeting-source.d.ts","sourceRoot":"","sources":["../src/meeting-source.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAE/D,OAAO,EAAa,KAAK,UAAU,EAAE,MAAM,aAAa,CAAA;AACxD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAElD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AAC/C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAE/C,sGAAsG;AACtG,eAAO,MAAM,uBAAuB,+CAMjC;IACD,IAAI,EAAE,IAAI,CAAC,WAAW,EAAE,QAAQ,GAAG,WAAW,CAAC,CAAA;IAC/C,SAAS,EAAE,MAAM,UAAU,CAAA;IAC3B,MAAM,EAAE,MAAM,YAAY,CAAA;IAC1B,KAAK,EAAE,MAAM,OAAO,UAAU,CAAC,KAAK,CAAA;IACpC,KAAK,EAAE,eAAe,CAAA;CACvB,KAAG;IAAE,MAAM,EAAE,aAAa,CAAC;IAAC,KAAK,EAAE,MAAM,IAAI,CAAA;CAoD7C,CAAA"}
|
package/dist/meeting-source.js
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import { CliError } from "@wirecat/cli-base";
|
|
2
2
|
import { ZoomApiSource } from "./api.js";
|
|
3
|
+
import { filesZone } from "./config.js";
|
|
3
4
|
import { FilesSource, readDownloadedFiles } from "./files.js";
|
|
4
5
|
/** The API or folder source the config names, built on first use; reset() drops it between parses. */
|
|
5
|
-
export const configuredMeetingSource = ({ deps, getConfig, tokens, fetch, }) => {
|
|
6
|
+
export const configuredMeetingSource = ({ deps, getConfig, tokens, fetch, zones, }) => {
|
|
6
7
|
let activeSource;
|
|
7
8
|
const getSource = () => {
|
|
8
9
|
if (deps.source)
|
|
@@ -13,11 +14,11 @@ export const configuredMeetingSource = ({ deps, getConfig, tokens, fetch, }) =>
|
|
|
13
14
|
const manager = tokens();
|
|
14
15
|
if (!manager.options.clientId)
|
|
15
16
|
throw new CliError("configuration_error", "run zm config set zoom.client_id <Public Client ID> first");
|
|
16
|
-
return new ZoomApiSource(manager, fetch());
|
|
17
|
+
return new ZoomApiSource(manager, fetch(), {}, zones);
|
|
17
18
|
}
|
|
18
19
|
if (!config.filesFolder)
|
|
19
20
|
throw new CliError("configuration_error", "set files.folder before pulling from files");
|
|
20
|
-
return new FilesSource(await (deps.readFiles ?? readDownloadedFiles)(config.filesFolder), config
|
|
21
|
+
return new FilesSource(await (deps.readFiles ?? readDownloadedFiles)(config.filesFolder), filesZone(config));
|
|
21
22
|
})();
|
|
22
23
|
return activeSource;
|
|
23
24
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"meeting-source.js","sourceRoot":"","sources":["../src/meeting-source.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAE5C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;
|
|
1
|
+
{"version":3,"file":"meeting-source.js","sourceRoot":"","sources":["../src/meeting-source.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"occurrence-schedule.d.ts","sourceRoot":"","sources":["../src/occurrence-schedule.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAqB,yBAAyB,EAAE,MAAM,4BAA4B,CAAA;AAM9F,eAAO,MAAM,oBAAoB,UAAW,OAAO,KAAG,MAAM,GAAG,
|
|
1
|
+
{"version":3,"file":"occurrence-schedule.d.ts","sourceRoot":"","sources":["../src/occurrence-schedule.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAqB,yBAAyB,EAAE,MAAM,4BAA4B,CAAA;AAM9F,eAAO,MAAM,oBAAoB,UAAW,OAAO,KAAG,MAAM,GAAG,IAI9D,CAAA;AA4BD,eAAO,MAAM,sBAAsB,UAAW,OAAO,aAAa,MAAM,SAAS,MAAM,KAAG,yBAoDzF,CAAA"}
|
|
@@ -1,22 +1,14 @@
|
|
|
1
1
|
import { CliError } from "@wirecat/cli-base";
|
|
2
|
-
import { object } from "./errors.js";
|
|
2
|
+
import { object, zoomInstant } from "./errors.js";
|
|
3
3
|
function invalid(field) {
|
|
4
4
|
throw new CliError("invalid_response", `Zoom meeting ${field} is invalid`);
|
|
5
5
|
}
|
|
6
6
|
export const zoomScheduledInstant = (value) => {
|
|
7
7
|
if (value === undefined || value === null)
|
|
8
8
|
return null;
|
|
9
|
-
if (typeof value !== "string"
|
|
10
|
-
!/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(?:\.\d{1,3})?(?:Z|[+-]\d{2}:\d{2})$/.test(value))
|
|
9
|
+
if (typeof value !== "string")
|
|
11
10
|
invalid("start_time");
|
|
12
|
-
|
|
13
|
-
const date = new Date(local);
|
|
14
|
-
if (!Number.isFinite(date.getTime()) || date.toISOString().slice(0, 19) !== local.slice(0, 19))
|
|
15
|
-
invalid("start_time");
|
|
16
|
-
const stamp = Date.parse(value);
|
|
17
|
-
if (!Number.isSafeInteger(stamp))
|
|
18
|
-
invalid("start_time");
|
|
19
|
-
return stamp;
|
|
11
|
+
return zoomInstant(value, "Zoom meeting start_time is invalid");
|
|
20
12
|
};
|
|
21
13
|
const end = (start, value) => {
|
|
22
14
|
if (value === undefined || value === null)
|