@senguoyun/dsh-arkme 0.1.24 → 0.1.26
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/lib/client.js +310 -367
- package/lib/client.js.map +1 -1
- package/lib/index.js +1 -1
- package/lib/persistent-extension.js +1 -1
- package/lib/{persistent-runtime-BIJ2Er-6.js → persistent-runtime-BqJb5fuJ.js} +108 -14
- package/lib/types/client/ArkmeRecordingSurface.d.ts +1 -8
- package/lib/types/client/ArkmeRecordingSurface.d.ts.map +1 -1
- package/lib/types/client/ui-controller.d.ts +2 -1
- package/lib/types/client/ui-controller.d.ts.map +1 -1
- package/lib/types/recording-presentation.d.ts +4 -1
- package/lib/types/recording-presentation.d.ts.map +1 -1
- package/lib/types/services/media-service.d.ts +6 -0
- package/lib/types/services/media-service.d.ts.map +1 -1
- package/lib/types/services/recording-service.d.ts +9 -1
- package/lib/types/services/recording-service.d.ts.map +1 -1
- package/lib/types/types.d.ts +2 -0
- package/lib/types/types.d.ts.map +1 -1
- package/package.json +5 -5
package/lib/index.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { a as securePrivateDirectory, c as securePrivateFileSync, i as prepareProfilePackageManager, n as isArkmeProfilePackageName, o as securePrivateDirectorySync, r as localExtensionPnpmArgs, s as securePrivateFile, t as applyArkmeProfileBundlePolicy } from "./profile-bundle-policy-CvojZuTD.js";
|
|
2
|
-
import { A as readNativeBundleTarballV3, B as ARKME_EXTENSION_RUNTIME_UNAVAILABLE_MESSAGE, C as arkmeSandboxEntryId, D as inspectNativeBundleArtifactV3, E as inspectBundleArtifact, F as unpackArkmeExtension, H as validateVoiceprintPcm16Wav, I as ARKME_EXTENSION_FORMAT, J as ARKME_WORLD_PUBLISH_MAX_IMAGES, M as assertExtensionArtifactSize, N as canonicalExtensionJson, O as packBundleFiles, P as sha256Hex, Q as ArkmeOutgoingCallError, S as ArkmeBundleArtifactError, T as canonicalBundleJson, U as ARKME_DEFAULT_SHARE_WEBSITE, V as ArkmeService, W as ARKME_PROVIDER_CONTRACT_VERSION, X as isArkmeBotAvatarRef, Y as ARKME_WORLD_PUBLISH_MAX_IMAGE_BYTES, Z as ArkmePluginError, _ as verifyExtensionResolutionSignature, c as quarantinePersistentExtension, d as writePersistentExtensionActivation, f as renderArkmeBundleClientBundle, g as verifyBundleResolutionSignature, h as arkmeClientContentDigestFromSource, i as invokePersistentArkmeExtension, j as renderArkmeSandboxHostEntry, k as packLocalNativeBundleDirectoryV3, l as readPersistentExtensionActivation, m as arkmeClientContentDigest, o as persistentArkmeExtensionRuntimeState, p as activeProfileExtensionOwnerConflicts, r as deactivatePersistentArkmeExtension, s as materializePersistentExtensionBundle, t as activatePersistentArkmeExtension, u as refreshPersistentClientWrapper, v as verifyNativeBundleResolutionSignature, w as bundleSha256, x as ARKME_NATIVE_BUNDLE_ARTIFACT_KIND, y as ARKME_BUNDLE_ARTIFACT_KIND } from "./persistent-runtime-
|
|
2
|
+
import { A as readNativeBundleTarballV3, B as ARKME_EXTENSION_RUNTIME_UNAVAILABLE_MESSAGE, C as arkmeSandboxEntryId, D as inspectNativeBundleArtifactV3, E as inspectBundleArtifact, F as unpackArkmeExtension, H as validateVoiceprintPcm16Wav, I as ARKME_EXTENSION_FORMAT, J as ARKME_WORLD_PUBLISH_MAX_IMAGES, M as assertExtensionArtifactSize, N as canonicalExtensionJson, O as packBundleFiles, P as sha256Hex, Q as ArkmeOutgoingCallError, S as ArkmeBundleArtifactError, T as canonicalBundleJson, U as ARKME_DEFAULT_SHARE_WEBSITE, V as ArkmeService, W as ARKME_PROVIDER_CONTRACT_VERSION, X as isArkmeBotAvatarRef, Y as ARKME_WORLD_PUBLISH_MAX_IMAGE_BYTES, Z as ArkmePluginError, _ as verifyExtensionResolutionSignature, c as quarantinePersistentExtension, d as writePersistentExtensionActivation, f as renderArkmeBundleClientBundle, g as verifyBundleResolutionSignature, h as arkmeClientContentDigestFromSource, i as invokePersistentArkmeExtension, j as renderArkmeSandboxHostEntry, k as packLocalNativeBundleDirectoryV3, l as readPersistentExtensionActivation, m as arkmeClientContentDigest, o as persistentArkmeExtensionRuntimeState, p as activeProfileExtensionOwnerConflicts, r as deactivatePersistentArkmeExtension, s as materializePersistentExtensionBundle, t as activatePersistentArkmeExtension, u as refreshPersistentClientWrapper, v as verifyNativeBundleResolutionSignature, w as bundleSha256, x as ARKME_NATIVE_BUNDLE_ARTIFACT_KIND, y as ARKME_BUNDLE_ARTIFACT_KIND } from "./persistent-runtime-BqJb5fuJ.js";
|
|
3
3
|
import { _ as validatePluginUpdateArtifactOrigin, d as ARKME_PLUGIN_PACKAGE_NAME, f as PluginUpdateArtifactError, g as pluginUpdateEndpointUrl, h as parsePluginUpdateManifest, m as existingCachedPluginArtifactPath, n as buildTargetInstallArgs, o as reconcilePluginUpdaterProfilePolicy, p as downloadAndCachePluginArtifact, t as assertTargetArtifactIntegrity, u as PluginUpdateInstallStateStore, v as validatePluginUpdateServiceOrigin } from "./plugin-updater-helper-Lmz7W2ph.js";
|
|
4
4
|
import { i as invokeArkmeBundle, n as arkmeBundleActive, r as deactivateArkmeBundle } from "./bundle-runtime-BTzRlc6V.js";
|
|
5
5
|
import { t as ArkmeExtensionInstallStore } from "./install-store-C1tAM346.js";
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { a as persistentArkmeExtensionActive, i as invokePersistentArkmeExtension, n as applyPersistentArkmeHostExtension, o as persistentArkmeExtensionRuntimeState, r as deactivatePersistentArkmeExtension, t as activatePersistentArkmeExtension } from "./persistent-runtime-
|
|
1
|
+
import { a as persistentArkmeExtensionActive, i as invokePersistentArkmeExtension, n as applyPersistentArkmeHostExtension, o as persistentArkmeExtensionRuntimeState, r as deactivatePersistentArkmeExtension, t as activatePersistentArkmeExtension } from "./persistent-runtime-BqJb5fuJ.js";
|
|
2
2
|
export { activatePersistentArkmeExtension, applyPersistentArkmeHostExtension, deactivatePersistentArkmeExtension, invokePersistentArkmeExtension, persistentArkmeExtensionActive, persistentArkmeExtensionRuntimeState };
|
|
@@ -10637,12 +10637,64 @@ var MediaService = class {
|
|
|
10637
10637
|
const record = objectValue$1(root.record);
|
|
10638
10638
|
const payload = jsonObjectValue(record.payload);
|
|
10639
10639
|
const core = objectValue$1(root.record_core);
|
|
10640
|
-
return jsonObjectValue(root.content_payload ?? payload.content_payload ?? record.content_payload ?? core.content_payload);
|
|
10640
|
+
return jsonObjectValue(root.content_payload ?? root.contentPayload ?? payload.content_payload ?? payload.contentPayload ?? record.content_payload ?? record.contentPayload ?? core.content_payload ?? core.contentPayload);
|
|
10641
|
+
}
|
|
10642
|
+
/**
|
|
10643
|
+
* Older quick-record projections carry their voice outside media_refs. The
|
|
10644
|
+
* Flutter clients accept these payload forms, so normalize them before the
|
|
10645
|
+
* shared display-item hydration and rich-content renderer see the record.
|
|
10646
|
+
*/
|
|
10647
|
+
recordVoiceMediaRef(raw) {
|
|
10648
|
+
const root = objectValue$1(raw);
|
|
10649
|
+
const record = objectValue$1(root.record);
|
|
10650
|
+
const payload = jsonObjectValue(record.payload);
|
|
10651
|
+
const core = objectValue$1(root.record_core);
|
|
10652
|
+
const contentPayload = this.recordContentPayload(raw);
|
|
10653
|
+
const candidates = [
|
|
10654
|
+
contentPayload.voice,
|
|
10655
|
+
contentPayload.voice_media,
|
|
10656
|
+
contentPayload.voiceMedia,
|
|
10657
|
+
payload.voice,
|
|
10658
|
+
payload.voice_media,
|
|
10659
|
+
payload.voiceMedia,
|
|
10660
|
+
record.voice,
|
|
10661
|
+
record.voice_media,
|
|
10662
|
+
record.voiceMedia,
|
|
10663
|
+
core.voice,
|
|
10664
|
+
core.voice_media,
|
|
10665
|
+
core.voiceMedia,
|
|
10666
|
+
root.voice,
|
|
10667
|
+
root.voice_media,
|
|
10668
|
+
root.voiceMedia
|
|
10669
|
+
];
|
|
10670
|
+
for (const candidate of candidates) {
|
|
10671
|
+
const voice = jsonObjectValue(candidate);
|
|
10672
|
+
const fileAssetUid = [
|
|
10673
|
+
voice.source_file_asset_uid,
|
|
10674
|
+
voice.sourceFileAssetUid,
|
|
10675
|
+
voice.file_asset_uid,
|
|
10676
|
+
voice.fileAssetUid,
|
|
10677
|
+
voice.file_id,
|
|
10678
|
+
voice.fileId,
|
|
10679
|
+
voice.uid
|
|
10680
|
+
].map((value) => stringValue$1(value).trim()).find((value) => value !== "");
|
|
10681
|
+
if (fileAssetUid === void 0) continue;
|
|
10682
|
+
const durationSeconds = numberValue$9(voice.duration_sec ?? voice.durationSec ?? voice.duration);
|
|
10683
|
+
const durationMillis = numberValue$9(voice.duration_millis ?? voice.durationMillis ?? voice.duration_ms);
|
|
10684
|
+
return {
|
|
10685
|
+
...voice,
|
|
10686
|
+
file_asset_uid: fileAssetUid,
|
|
10687
|
+
file_kind: 2,
|
|
10688
|
+
...stringValue$1(voice.mime_type ?? voice.mimeType).trim() === "" ? {} : { mime_type: stringValue$1(voice.mime_type ?? voice.mimeType).trim() },
|
|
10689
|
+
...durationSeconds > 0 ? { duration_sec: durationSeconds } : durationMillis > 0 ? { duration_sec: Math.ceil(durationMillis / 1e3) } : {}
|
|
10690
|
+
};
|
|
10691
|
+
}
|
|
10641
10692
|
}
|
|
10642
10693
|
recordMediaRefs(raw) {
|
|
10643
|
-
|
|
10644
|
-
|
|
10645
|
-
|
|
10694
|
+
const contentPayload = this.recordContentPayload(raw);
|
|
10695
|
+
const voiceRef = this.recordVoiceMediaRef(raw);
|
|
10696
|
+
const refs = [...listValue$10(contentPayload.media_refs ?? contentPayload.mediaRefs).map(objectValue$1), ...voiceRef === void 0 ? [] : [voiceRef]].filter((item) => Math.trunc(numberValue$9(item.content_file_role)) !== RECORD_CONTENT_FILE_ROLE_BACKGROUND_SOUND && stringValue$1(item.file_asset_uid).trim() !== "");
|
|
10697
|
+
return [...new Map(refs.map((item) => [stringValue$1(item.file_asset_uid).trim(), item])).values()];
|
|
10646
10698
|
}
|
|
10647
10699
|
async queryRecordMediaDisplayItems(recordUids, session, signal) {
|
|
10648
10700
|
const expectedRecordUids = [...new Set(recordUids.map((value) => value.trim()).filter((value) => value !== ""))];
|
|
@@ -10799,7 +10851,7 @@ var MediaService = class {
|
|
|
10799
10851
|
const record = objectValue$1(root.record);
|
|
10800
10852
|
const payload = jsonObjectValue(record.payload);
|
|
10801
10853
|
const core = objectValue$1(root.record_core);
|
|
10802
|
-
|
|
10854
|
+
this.recordContentPayload(raw);
|
|
10803
10855
|
const displayItems = [
|
|
10804
10856
|
...listValue$10(root.media_display_items),
|
|
10805
10857
|
...listValue$10(record.media_display_items),
|
|
@@ -10812,7 +10864,7 @@ var MediaService = class {
|
|
|
10812
10864
|
const uid = stringValue$1(item.file_asset_uid).trim();
|
|
10813
10865
|
if (uid !== "") displayByAsset.set(uid, item);
|
|
10814
10866
|
}
|
|
10815
|
-
const mediaRefs =
|
|
10867
|
+
const mediaRefs = this.recordMediaRefs(raw);
|
|
10816
10868
|
return (mediaRefs.length > 0 ? mediaRefs.map((ref) => ({
|
|
10817
10869
|
...displayByAsset.get(stringValue$1(ref.file_asset_uid).trim()) ?? {},
|
|
10818
10870
|
...ref
|
|
@@ -12020,6 +12072,11 @@ function optionalNumberValue(value) {
|
|
|
12020
12072
|
if (Number.isFinite(parsed)) return parsed;
|
|
12021
12073
|
}
|
|
12022
12074
|
}
|
|
12075
|
+
function positiveNumberValue(value) {
|
|
12076
|
+
const parsed = optionalNumberValue(value);
|
|
12077
|
+
if (parsed === void 0 || !Number.isSafeInteger(parsed) || parsed <= 0) return void 0;
|
|
12078
|
+
return parsed;
|
|
12079
|
+
}
|
|
12023
12080
|
function uniqueStrings(values) {
|
|
12024
12081
|
return [...new Set(values.map((value) => stringValue(value).trim()).filter((value) => value !== ""))];
|
|
12025
12082
|
}
|
|
@@ -12029,7 +12086,7 @@ function displayTimestamp(value) {
|
|
|
12029
12086
|
const parsed = Date.parse(stringValue(value));
|
|
12030
12087
|
return Number.isFinite(parsed) ? parsed : 0;
|
|
12031
12088
|
}
|
|
12032
|
-
function projectRecordingTranscripts(response, speakerResponse) {
|
|
12089
|
+
function projectRecordingTranscripts(response, speakerResponse, profilesByUserId = /* @__PURE__ */ new Map()) {
|
|
12033
12090
|
const data = objectValue(response);
|
|
12034
12091
|
const sessions = /* @__PURE__ */ new Map();
|
|
12035
12092
|
const sessionSpeakerColorIndexes = /* @__PURE__ */ new Map();
|
|
@@ -12060,7 +12117,7 @@ function projectRecordingTranscripts(response, speakerResponse) {
|
|
|
12060
12117
|
const speakerRows = Array.isArray(speakerResponse) ? speakerResponse : listValue$6(objectValue(speakerResponse).speaker_ls ?? objectValue(speakerResponse).speakers);
|
|
12061
12118
|
for (const rawSpeaker of speakerRows) {
|
|
12062
12119
|
const speaker = objectValue(rawSpeaker);
|
|
12063
|
-
const id = stringValue(speaker.id ?? speaker.spk_id).trim();
|
|
12120
|
+
const id = stringValue(speaker.id ?? speaker.speaker_id ?? speaker.spk_id).trim();
|
|
12064
12121
|
if (id !== "") speakers.set(id, speaker);
|
|
12065
12122
|
}
|
|
12066
12123
|
const projected = [];
|
|
@@ -12083,11 +12140,13 @@ function projectRecordingTranscripts(response, speakerResponse) {
|
|
|
12083
12140
|
const sessionSpeaker = sessionSpeakers.find((candidate) => numberValue$5(candidate.num) === rawSpeakerNumber) ?? {};
|
|
12084
12141
|
const formalSpeakerId = stringValue(row.effective_spk_id ?? sessionSpeaker.spk_id ?? sessionSpeaker.speaker_id).trim();
|
|
12085
12142
|
const formalSpeaker = speakers.get(formalSpeakerId) ?? {};
|
|
12086
|
-
const
|
|
12143
|
+
const speakerUserId = positiveNumberValue(formalSpeaker.ref_usr_id ?? formalSpeaker.ref_user_id ?? formalSpeaker.user_id);
|
|
12144
|
+
const profile = speakerUserId === void 0 ? void 0 : profilesByUserId.get(speakerUserId);
|
|
12145
|
+
const isSelf = speakerUserId !== void 0 && speakerUserId === numberValue$5(session.belong_usr);
|
|
12087
12146
|
const persistentSpeakerNumber = optionalNumberValue(sessionSpeaker.speaker_display_number ?? sessionSpeaker.speakerDisplayNumber);
|
|
12088
12147
|
const speakerNumber = persistentSpeakerNumber !== void 0 && persistentSpeakerNumber > 0 ? persistentSpeakerNumber : rawSpeakerNumber;
|
|
12089
12148
|
const speakerColorIndex = sessionSpeakerColorIndexes.get(`${sessionId}:${rawSpeakerNumber}`) ?? Math.max(0, rawSpeakerNumber);
|
|
12090
|
-
const speakerLabel = speakerNumber >= 0 ? `说话人 ${speakerNumber}` : "未知说话人";
|
|
12149
|
+
const speakerLabel = stringValue(formalSpeaker.nick_name ?? formalSpeaker.nickname ?? formalSpeaker.display_name ?? formalSpeaker.name).trim() || profile?.displayName.trim() || (speakerNumber >= 0 ? `说话人 ${speakerNumber}` : "未知说话人");
|
|
12091
12150
|
const startOffset = numberValue$5(row.s ?? row.start_at);
|
|
12092
12151
|
const endOffset = Math.max(startOffset, numberValue$5(row.e ?? row.end_at));
|
|
12093
12152
|
projected.push({
|
|
@@ -12101,6 +12160,7 @@ function projectRecordingTranscripts(response, speakerResponse) {
|
|
|
12101
12160
|
speakerNumber,
|
|
12102
12161
|
speakerColorIndex,
|
|
12103
12162
|
speakerLabel,
|
|
12163
|
+
...profile?.avatarRef === void 0 ? {} : { speakerAvatarRef: profile.avatarRef },
|
|
12104
12164
|
isSelf,
|
|
12105
12165
|
isBackground,
|
|
12106
12166
|
text,
|
|
@@ -12303,6 +12363,18 @@ function numberValue$4(value) {
|
|
|
12303
12363
|
function listValue$5(value) {
|
|
12304
12364
|
return Array.isArray(value) ? value : [];
|
|
12305
12365
|
}
|
|
12366
|
+
function positiveUserId(value) {
|
|
12367
|
+
const numeric = numberValue$4(value);
|
|
12368
|
+
const userId = Math.trunc(numeric);
|
|
12369
|
+
return Number.isSafeInteger(userId) && userId > 0 ? userId : void 0;
|
|
12370
|
+
}
|
|
12371
|
+
function speakerUserIds(speakerData) {
|
|
12372
|
+
return [...new Set(speakerData.flatMap((raw) => {
|
|
12373
|
+
const speaker = objectValue$1(raw);
|
|
12374
|
+
const userId = positiveUserId(speaker.ref_usr_id ?? speaker.ref_user_id ?? speaker.user_id);
|
|
12375
|
+
return userId === void 0 ? [] : [userId];
|
|
12376
|
+
}))];
|
|
12377
|
+
}
|
|
12306
12378
|
function encodeOpaqueJson$2(value) {
|
|
12307
12379
|
return Buffer.from(JSON.stringify(value), "utf8").toString("base64url");
|
|
12308
12380
|
}
|
|
@@ -12316,8 +12388,10 @@ function safeFailureMessage$1(error) {
|
|
|
12316
12388
|
}
|
|
12317
12389
|
var RecordingService = class {
|
|
12318
12390
|
runtime;
|
|
12319
|
-
|
|
12391
|
+
profile;
|
|
12392
|
+
constructor(runtime, profile) {
|
|
12320
12393
|
this.runtime = runtime;
|
|
12394
|
+
this.profile = profile;
|
|
12321
12395
|
}
|
|
12322
12396
|
async recordingCalendar(fromStamp, toStamp, signal) {
|
|
12323
12397
|
const from = Math.trunc(fromStamp);
|
|
@@ -12354,7 +12428,7 @@ var RecordingService = class {
|
|
|
12354
12428
|
const dayStart = this.recordingDayStart(dateStamp);
|
|
12355
12429
|
const date = dayStart.getTime();
|
|
12356
12430
|
const session = await this.runtime.requireSession();
|
|
12357
|
-
const [transcriptResult, speakerResult] = await Promise.allSettled([this.runtime.authenticatedAudioPost("/api/v1/audio/one-day-trans
|
|
12431
|
+
const [transcriptResult, speakerResult] = await Promise.allSettled([this.runtime.authenticatedAudioPost("/api/v1/audio/one-day-trans", {
|
|
12358
12432
|
start_at: date,
|
|
12359
12433
|
tz_offset: -dayStart.getTimezoneOffset() * 6e4
|
|
12360
12434
|
}, session, signal), this.runtime.authenticatedAudioPost("/api/v1/audio/get-speaker-ls", {}, session, signal)]);
|
|
@@ -12362,7 +12436,9 @@ var RecordingService = class {
|
|
|
12362
12436
|
let totalDurationMillis = 0;
|
|
12363
12437
|
for (const rawSession of listValue$5(transcriptResult.value.session_ls)) totalDurationMillis += Math.max(0, numberValue$4(objectValue$1(rawSession).duration));
|
|
12364
12438
|
const speakerData = speakerResult.status === "fulfilled" ? listValue$5(speakerResult.value.spk_ls) : [];
|
|
12365
|
-
const
|
|
12439
|
+
const userIds = speakerUserIds(speakerData);
|
|
12440
|
+
const profilesByUserId = await this.recordingSpeakerProfiles(userIds, session, signal);
|
|
12441
|
+
const items = projectRecordingTranscripts(transcriptResult.value, speakerData, profilesByUserId);
|
|
12366
12442
|
return {
|
|
12367
12443
|
state: items.length > 0 ? "ready" : "empty",
|
|
12368
12444
|
items,
|
|
@@ -12450,6 +12526,24 @@ var RecordingService = class {
|
|
|
12450
12526
|
async recordingCursorKey(userId) {
|
|
12451
12527
|
return createHmac("sha256", await this.runtime.stateStore.uniqueCode()).update(`arkme-recording-cursor:${String(userId)}`).digest();
|
|
12452
12528
|
}
|
|
12529
|
+
async recordingSpeakerProfiles(userIds, session, signal) {
|
|
12530
|
+
if (this.profile === void 0) return /* @__PURE__ */ new Map();
|
|
12531
|
+
if (userIds.length === 0) return /* @__PURE__ */ new Map();
|
|
12532
|
+
try {
|
|
12533
|
+
const publicProfiles = await this.profile.publicProfileSummariesByUserIds(userIds, session, signal);
|
|
12534
|
+
const entries = await Promise.all([...publicProfiles].map(async ([userId, profile]) => {
|
|
12535
|
+
const displayName = profile.displayName.trim() || profile.nickname.trim();
|
|
12536
|
+
const avatarRef = profile.avatarUrl === void 0 ? void 0 : await this.profile.sealProfileImageRef(session.userId, userId);
|
|
12537
|
+
return [userId, {
|
|
12538
|
+
displayName,
|
|
12539
|
+
...avatarRef === void 0 ? {} : { avatarRef }
|
|
12540
|
+
}];
|
|
12541
|
+
}));
|
|
12542
|
+
return new Map(entries);
|
|
12543
|
+
} catch {
|
|
12544
|
+
return /* @__PURE__ */ new Map();
|
|
12545
|
+
}
|
|
12546
|
+
}
|
|
12453
12547
|
recordingDayStart(dateStamp) {
|
|
12454
12548
|
const date = Math.trunc(dateStamp);
|
|
12455
12549
|
const dayStart = new Date(date);
|
|
@@ -15694,8 +15788,8 @@ var ArkmeService = class {
|
|
|
15694
15788
|
this.arrangement = new ArrangementService(this.runtime);
|
|
15695
15789
|
this.calendar = new CalendarService(this.runtime, this.privacy);
|
|
15696
15790
|
this.wechat = new WechatService(this.runtime);
|
|
15697
|
-
this.recording = new RecordingService(this.runtime);
|
|
15698
15791
|
this.profile = new ProfileService(this.runtime);
|
|
15792
|
+
this.recording = new RecordingService(this.runtime, this.profile);
|
|
15699
15793
|
this.callHistory = new CallHistoryService(this.runtime, this.profile);
|
|
15700
15794
|
this.extensionReview = new ExtensionReviewService(this.runtime, this.profile, { createTextForConversation: async (recordUid, textContent) => {
|
|
15701
15795
|
return await this.createTextForConversation(recordUid, textContent);
|
|
@@ -1,11 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
export declare function RecordingCalendarCell({ date, meta, selected, isToday, onClick }: {
|
|
3
|
-
date: Date;
|
|
4
|
-
meta: ArkmeRecordingCalendarDay | undefined;
|
|
5
|
-
selected: boolean;
|
|
6
|
-
isToday: boolean;
|
|
7
|
-
onClick(): void;
|
|
8
|
-
}): import("react").JSX.Element;
|
|
1
|
+
export declare function recordingCalendarDuration(milliseconds: number): string;
|
|
9
2
|
export declare function RecordingSpeakerLabel({ label, colorIndex, isBackground }: {
|
|
10
3
|
label: string;
|
|
11
4
|
colorIndex: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ArkmeRecordingSurface.d.ts","sourceRoot":"","sources":["../../../src/client/ArkmeRecordingSurface.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ArkmeRecordingSurface.d.ts","sourceRoot":"","sources":["../../../src/client/ArkmeRecordingSurface.tsx"],"names":[],"mappings":"AAyLA,wBAAgB,yBAAyB,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CAItE;AAED,wBAAgB,qBAAqB,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,EAAE;IACzE,KAAK,EAAE,MAAM,CAAA;IACb,UAAU,EAAE,MAAM,CAAA;IAClB,YAAY,EAAE,OAAO,CAAA;CACtB,+BAMA;AA8ED,wBAAgB,qBAAqB,gCA2MpC"}
|
|
@@ -39,7 +39,8 @@ export interface ArkmeWorldTarget {
|
|
|
39
39
|
}
|
|
40
40
|
export declare class ArkmeUiController {
|
|
41
41
|
private state;
|
|
42
|
-
|
|
42
|
+
/** Runtime-only conversation memory. A fresh client always starts in Harness. */
|
|
43
|
+
private lastConversationDestination;
|
|
43
44
|
private readonly listeners;
|
|
44
45
|
private settingsOpener;
|
|
45
46
|
private conversationTargetRevision;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ui-controller.d.ts","sourceRoot":"","sources":["../../../src/client/ui-controller.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAElD,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,+BAA+B,CAAA;AAa9E,MAAM,WAAW,YAAY;IAC3B,YAAY,EAAE,MAAM,CAAA;IACpB,YAAY,EAAE,MAAM,CAAA;IACpB,cAAc,EAAE,MAAM,CAAA;IACtB,IAAI,EAAE,OAAO,GAAG,QAAQ,GAAG,OAAO,GAAG,YAAY,GAAG,OAAO,GAAG,QAAQ,GAAG,YAAY,GAAG,YAAY,GAAG,aAAa,GAAG,MAAM,GACzH,SAAS,CAAA;IACb,WAAW,CAAC,EAAE,eAAe,GAAG,UAAU,CAAA;IAC1C,cAAc,CAAC,EAAE,eAAe,CAAA;IAChC,kBAAkB,CAAC,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAA;KAAE,CAAA;IAChF,eAAe,CAAC,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,aAAa,EAAE,MAAM,CAAA;KAAE,CAAA;IAC9D,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,oBAAoB,CAAC,EAAE,yBAAyB,CAAA;IAChD,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,qBAAqB,CAAC,EAAE,0BAA0B,CAAA;IAClD,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,WAAW,CAAC,EAAE,gBAAgB,CAAA;CAC/B;AAED,MAAM,WAAW,0BAA0B;IACzC,WAAW,EAAE,MAAM,CAAA;IACnB,SAAS,EAAE,MAAM,CAAA;CAClB;AAED,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,MAAM,CAAA;IACd,WAAW,EAAE,MAAM,CAAA;IACnB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,cAAc,CAAC,EAAE;QAAE,IAAI,EAAE,eAAe,CAAC;QAAC,UAAU,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAA;CAC9E;
|
|
1
|
+
{"version":3,"file":"ui-controller.d.ts","sourceRoot":"","sources":["../../../src/client/ui-controller.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,8 @@
|
|
|
1
1
|
import type { ArkmeRecordingTimelineEvent, ArkmeRecordingTranscriptItem, ArkmeRecordingVersion } from './types.js';
|
|
2
|
-
export declare function projectRecordingTranscripts(response: unknown, speakerResponse: unknown
|
|
2
|
+
export declare function projectRecordingTranscripts(response: unknown, speakerResponse: unknown, profilesByUserId?: ReadonlyMap<number, {
|
|
3
|
+
displayName: string;
|
|
4
|
+
avatarRef?: string;
|
|
5
|
+
}>): ArkmeRecordingTranscriptItem[];
|
|
3
6
|
export declare function parseRecordingTimeline(value: unknown): ArkmeRecordingTimelineEvent[];
|
|
4
7
|
export declare function projectRecordingVersions(response: unknown, kind: 'summary' | 'timeline'): ArkmeRecordingVersion[];
|
|
5
8
|
//# sourceMappingURL=recording-presentation.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"recording-presentation.d.ts","sourceRoot":"","sources":["../../src/recording-presentation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,2BAA2B,EAC3B,4BAA4B,EAC5B,qBAAqB,EAEtB,MAAM,YAAY,CAAA;
|
|
1
|
+
{"version":3,"file":"recording-presentation.d.ts","sourceRoot":"","sources":["../../src/recording-presentation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,2BAA2B,EAC3B,4BAA4B,EAC5B,qBAAqB,EAEtB,MAAM,YAAY,CAAA;AAoDnB,wBAAgB,2BAA2B,CACzC,QAAQ,EAAE,OAAO,EACjB,eAAe,EAAE,OAAO,EACxB,gBAAgB,GAAE,WAAW,CAAC,MAAM,EAAE;IAAE,WAAW,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,CAAa,GAC7F,4BAA4B,EAAE,CA2HhC;AAsJD,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,OAAO,GAAG,2BAA2B,EAAE,CAYpF;AAED,wBAAgB,wBAAwB,CACtC,QAAQ,EAAE,OAAO,EACjB,IAAI,EAAE,SAAS,GAAG,UAAU,GAC3B,qBAAqB,EAAE,CAgCzB"}
|
|
@@ -79,6 +79,12 @@ export declare class MediaService {
|
|
|
79
79
|
private readImageUncached;
|
|
80
80
|
private mediaKind;
|
|
81
81
|
recordContentPayload(raw: unknown): Record<string, unknown>;
|
|
82
|
+
/**
|
|
83
|
+
* Older quick-record projections carry their voice outside media_refs. The
|
|
84
|
+
* Flutter clients accept these payload forms, so normalize them before the
|
|
85
|
+
* shared display-item hydration and rich-content renderer see the record.
|
|
86
|
+
*/
|
|
87
|
+
private recordVoiceMediaRef;
|
|
82
88
|
private recordMediaRefs;
|
|
83
89
|
private queryRecordMediaDisplayItems;
|
|
84
90
|
issueSearchAudioMediaRefs(requests: Array<{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"media-service.d.ts","sourceRoot":"","sources":["../../../src/services/media-service.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"media-service.d.ts","sourceRoot":"","sources":["../../../src/services/media-service.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,15 @@
|
|
|
1
|
+
import type { ArkmeSessionCredentials } from '../keychain-store.js';
|
|
1
2
|
import type { ArkmeRecordingCalendarMonth, ArkmeRecordingCursorPayload, ArkmeRecordingDay, ArkmeRecordingProjectionKind, ArkmeRecordingSection, ArkmeRecordingTranscriptSection, ArkmeRecordingVersion } from '../types.js';
|
|
2
3
|
import { ServiceRuntime } from './service.js';
|
|
4
|
+
import type { ArkmePublicProfile } from './profile-service.js';
|
|
5
|
+
export interface ArkmeRecordingProfileReader {
|
|
6
|
+
publicProfileSummariesByUserIds(userIds: readonly number[], session: ArkmeSessionCredentials, signal?: AbortSignal): Promise<Map<number, ArkmePublicProfile>>;
|
|
7
|
+
sealProfileImageRef(viewerUserId: number, targetUserId: number): Promise<string>;
|
|
8
|
+
}
|
|
3
9
|
export declare class RecordingService {
|
|
4
10
|
private readonly runtime;
|
|
5
|
-
|
|
11
|
+
private readonly profile?;
|
|
12
|
+
constructor(runtime: ServiceRuntime, profile?: ArkmeRecordingProfileReader | undefined);
|
|
6
13
|
recordingCalendar(fromStamp: number, toStamp: number, signal?: AbortSignal): Promise<ArkmeRecordingCalendarMonth>;
|
|
7
14
|
recordingTranscript(dateStamp: number, signal?: AbortSignal): Promise<ArkmeRecordingTranscriptSection>;
|
|
8
15
|
recordingProjection(dateStamp: number, kind: ArkmeRecordingProjectionKind, signal?: AbortSignal): Promise<ArkmeRecordingSection<ArkmeRecordingVersion>>;
|
|
@@ -10,6 +17,7 @@ export declare class RecordingService {
|
|
|
10
17
|
openRecordingCursor(cursor: string): Promise<ArkmeRecordingCursorPayload>;
|
|
11
18
|
recordingDay(dateStamp: number): Promise<ArkmeRecordingDay>;
|
|
12
19
|
private recordingCursorKey;
|
|
20
|
+
private recordingSpeakerProfiles;
|
|
13
21
|
private recordingDayStart;
|
|
14
22
|
private recordingVersionSection;
|
|
15
23
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"recording-service.d.ts","sourceRoot":"","sources":["../../../src/services/recording-service.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"recording-service.d.ts","sourceRoot":"","sources":["../../../src/services/recording-service.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAA;AAEnE,OAAO,KAAK,EACV,2BAA2B,EAC3B,2BAA2B,EAC3B,iBAAiB,EACjB,4BAA4B,EAC5B,qBAAqB,EACrB,+BAA+B,EAC/B,qBAAqB,EACtB,MAAM,aAAa,CAAA;AACpB,OAAO,EAAoB,cAAc,EAA4B,MAAM,cAAc,CAAA;AACzF,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAA;AAE9D,MAAM,WAAW,2BAA2B;IAC1C,+BAA+B,CAC7B,OAAO,EAAE,SAAS,MAAM,EAAE,EAC1B,OAAO,EAAE,uBAAuB,EAChC,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC,CAAA;IAC3C,mBAAmB,CAAC,YAAY,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;CACjF;AAsCD,qBAAa,gBAAgB;IAEzB,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC;gBADR,OAAO,EAAE,cAAc,EACvB,OAAO,CAAC,EAAE,2BAA2B,YAAA;IAGlD,iBAAiB,CACrB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,2BAA2B,CAAC;IAiCjC,mBAAmB,CACvB,SAAS,EAAE,MAAM,EACjB,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,+BAA+B,CAAC;IAsCrC,mBAAmB,CACvB,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,4BAA4B,EAClC,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,qBAAqB,CAAC,qBAAqB,CAAC,CAAC;IAmBlD,mBAAmB,CAAC,OAAO,EAAE,2BAA2B,GAAG,OAAO,CAAC,MAAM,CAAC;IAS1E,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,2BAA2B,CAAC;IA8CzE,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC;YAyBnD,kBAAkB;YAMlB,wBAAwB;IA2BtC,OAAO,CAAC,iBAAiB;IAWzB,OAAO,CAAC,uBAAuB;CAYhC"}
|
package/lib/types/types.d.ts
CHANGED
|
@@ -1563,6 +1563,8 @@ export interface ArkmeRecordingTranscriptItem {
|
|
|
1563
1563
|
speakerNumber: number;
|
|
1564
1564
|
speakerColorIndex: number;
|
|
1565
1565
|
speakerLabel: string;
|
|
1566
|
+
/** Opaque image reference for a speaker already associated with an Arkme user. */
|
|
1567
|
+
speakerAvatarRef?: string;
|
|
1566
1568
|
isSelf: boolean;
|
|
1567
1569
|
isBackground: boolean;
|
|
1568
1570
|
text: string;
|