@senguoyun/dsh-arkme 0.1.35 → 0.1.37

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.
Files changed (176) hide show
  1. package/assets/windows/arkme-credential-helper.exe +0 -0
  2. package/assets/windows/manifest.json +18 -2
  3. package/cordis.patch.yml +1 -0
  4. package/docs/consumer-plugin-contract.md +39 -0
  5. package/lib/client.js +16211 -6527
  6. package/lib/client.js.map +1 -1
  7. package/lib/index.js +672 -98
  8. package/lib/persistent-extension.js +1 -1
  9. package/lib/{persistent-runtime-e4gV6dqq.js → persistent-runtime-Bc6X98km.js} +3637 -669
  10. package/lib/sdk.js +28 -4
  11. package/lib/types/arkme-service.d.ts +48 -11
  12. package/lib/types/arkme-service.d.ts.map +1 -1
  13. package/lib/types/chat-attention.d.ts +27 -0
  14. package/lib/types/chat-attention.d.ts.map +1 -0
  15. package/lib/types/client/ArkmeArkoSurface.d.ts +4 -0
  16. package/lib/types/client/ArkmeArkoSurface.d.ts.map +1 -1
  17. package/lib/types/client/ArkmeBackgroundSoundWaveform.d.ts +11 -0
  18. package/lib/types/client/ArkmeBackgroundSoundWaveform.d.ts.map +1 -0
  19. package/lib/types/client/ArkmeBotConversationSurface.d.ts.map +1 -1
  20. package/lib/types/client/ArkmeBotCreateDialog.d.ts +2 -1
  21. package/lib/types/client/ArkmeBotCreateDialog.d.ts.map +1 -1
  22. package/lib/types/client/ArkmeBotSettingsPanel.d.ts.map +1 -1
  23. package/lib/types/client/ArkmeFooterDropdown.d.ts.map +1 -1
  24. package/lib/types/client/ArkmeGroupChatControls.d.ts +4 -2
  25. package/lib/types/client/ArkmeGroupChatControls.d.ts.map +1 -1
  26. package/lib/types/client/ArkmeLongArticleDialog.d.ts.map +1 -1
  27. package/lib/types/client/ArkmeMessageActions.d.ts +41 -0
  28. package/lib/types/client/ArkmeMessageActions.d.ts.map +1 -0
  29. package/lib/types/client/ArkmeMessageSnapshotDialog.d.ts +13 -3
  30. package/lib/types/client/ArkmeMessageSnapshotDialog.d.ts.map +1 -1
  31. package/lib/types/client/ArkmeNotificationPermissionBanner.d.ts +9 -0
  32. package/lib/types/client/ArkmeNotificationPermissionBanner.d.ts.map +1 -0
  33. package/lib/types/client/ArkmePersistentShell.d.ts.map +1 -1
  34. package/lib/types/client/ArkmeProductNavigation.d.ts.map +1 -1
  35. package/lib/types/client/ArkmeQuickAdd.d.ts +3 -1
  36. package/lib/types/client/ArkmeQuickAdd.d.ts.map +1 -1
  37. package/lib/types/client/ArkmeRecordingSurface.d.ts +19 -4
  38. package/lib/types/client/ArkmeRecordingSurface.d.ts.map +1 -1
  39. package/lib/types/client/ArkmeSearchSurface.d.ts.map +1 -1
  40. package/lib/types/client/ArkmeSettingsSurface.d.ts +20 -0
  41. package/lib/types/client/ArkmeSettingsSurface.d.ts.map +1 -1
  42. package/lib/types/client/ArkmeSidebar.d.ts +37 -0
  43. package/lib/types/client/ArkmeSidebar.d.ts.map +1 -1
  44. package/lib/types/client/ArkmeStartupAuthGate.d.ts.map +1 -1
  45. package/lib/types/client/ArkmeTopicCreateDialog.d.ts.map +1 -1
  46. package/lib/types/client/ArkmeVirtualWorkspace.d.ts +6 -1
  47. package/lib/types/client/ArkmeVirtualWorkspace.d.ts.map +1 -1
  48. package/lib/types/client/ArkmeVoiceContent.d.ts +6 -0
  49. package/lib/types/client/ArkmeVoiceContent.d.ts.map +1 -1
  50. package/lib/types/client/api.d.ts +4 -1
  51. package/lib/types/client/api.d.ts.map +1 -1
  52. package/lib/types/client/attention-summary-store.d.ts +22 -0
  53. package/lib/types/client/attention-summary-store.d.ts.map +1 -0
  54. package/lib/types/client/bot-chat-directory-projection.d.ts.map +1 -1
  55. package/lib/types/client/chat-directory-store.d.ts +1 -0
  56. package/lib/types/client/chat-directory-store.d.ts.map +1 -1
  57. package/lib/types/client/composer-draft-store.d.ts.map +1 -1
  58. package/lib/types/client/desktop-notification-runtime.d.ts +34 -1
  59. package/lib/types/client/desktop-notification-runtime.d.ts.map +1 -1
  60. package/lib/types/client/file-send-tasks.d.ts +3 -0
  61. package/lib/types/client/file-send-tasks.d.ts.map +1 -1
  62. package/lib/types/client/index.d.ts.map +1 -1
  63. package/lib/types/client/navigation-cache.d.ts.map +1 -1
  64. package/lib/types/client/notification-activation-store.d.ts +12 -2
  65. package/lib/types/client/notification-activation-store.d.ts.map +1 -1
  66. package/lib/types/client/read-intent-visibility.d.ts +7 -0
  67. package/lib/types/client/read-intent-visibility.d.ts.map +1 -0
  68. package/lib/types/client/realtime-client-events.d.ts +1 -0
  69. package/lib/types/client/realtime-client-events.d.ts.map +1 -1
  70. package/lib/types/client/record-capture-location.d.ts +70 -5
  71. package/lib/types/client/record-capture-location.d.ts.map +1 -1
  72. package/lib/types/client/record-input-capture.d.ts +266 -0
  73. package/lib/types/client/record-input-capture.d.ts.map +1 -0
  74. package/lib/types/client/recordings/ArkmeRecordingImportDialog.d.ts +15 -0
  75. package/lib/types/client/recordings/ArkmeRecordingImportDialog.d.ts.map +1 -0
  76. package/lib/types/client/recordings/ArkmeRecordingSpeakerEditor.d.ts +27 -0
  77. package/lib/types/client/recordings/ArkmeRecordingSpeakerEditor.d.ts.map +1 -0
  78. package/lib/types/client/recordings/ArkmeRecordingTimeline.d.ts +58 -0
  79. package/lib/types/client/recordings/ArkmeRecordingTimeline.d.ts.map +1 -0
  80. package/lib/types/client/recordings/recording-empty-illustration.d.ts +2 -0
  81. package/lib/types/client/recordings/recording-empty-illustration.d.ts.map +1 -0
  82. package/lib/types/client/recordings/recording-import-selection.d.ts +19 -0
  83. package/lib/types/client/recordings/recording-import-selection.d.ts.map +1 -0
  84. package/lib/types/client/recordings/recording-speaker-presentation.d.ts +2 -0
  85. package/lib/types/client/recordings/recording-speaker-presentation.d.ts.map +1 -0
  86. package/lib/types/client/recordings/useRecordingPlayback.d.ts +14 -0
  87. package/lib/types/client/recordings/useRecordingPlayback.d.ts.map +1 -0
  88. package/lib/types/client/source-identity.d.ts +2 -1
  89. package/lib/types/client/source-identity.d.ts.map +1 -1
  90. package/lib/types/client/ui-controller.d.ts +5 -0
  91. package/lib/types/client/ui-controller.d.ts.map +1 -1
  92. package/lib/types/file-transfer-contract.d.ts +14 -2
  93. package/lib/types/file-transfer-contract.d.ts.map +1 -1
  94. package/lib/types/file-transfer-owner.d.ts +1 -1
  95. package/lib/types/file-transfer-owner.d.ts.map +1 -1
  96. package/lib/types/host-api.d.ts.map +1 -1
  97. package/lib/types/index.d.ts +1 -0
  98. package/lib/types/index.d.ts.map +1 -1
  99. package/lib/types/local-database.d.ts +9 -2
  100. package/lib/types/local-database.d.ts.map +1 -1
  101. package/lib/types/message-action-contract.d.ts +117 -0
  102. package/lib/types/message-action-contract.d.ts.map +1 -0
  103. package/lib/types/record-background-sound.d.ts +7 -0
  104. package/lib/types/record-background-sound.d.ts.map +1 -0
  105. package/lib/types/recording-import-contract.d.ts +71 -0
  106. package/lib/types/recording-import-contract.d.ts.map +1 -0
  107. package/lib/types/recording-import-coordinator.d.ts +34 -0
  108. package/lib/types/recording-import-coordinator.d.ts.map +1 -0
  109. package/lib/types/recording-import-probe.d.ts +19 -0
  110. package/lib/types/recording-import-probe.d.ts.map +1 -0
  111. package/lib/types/recording-import-ref.d.ts +7 -0
  112. package/lib/types/recording-import-ref.d.ts.map +1 -0
  113. package/lib/types/recording-import-routes.d.ts +23 -0
  114. package/lib/types/recording-import-routes.d.ts.map +1 -0
  115. package/lib/types/recording-import-shared.d.ts +19 -0
  116. package/lib/types/recording-import-shared.d.ts.map +1 -0
  117. package/lib/types/recording-presentation.d.ts +14 -1
  118. package/lib/types/recording-presentation.d.ts.map +1 -1
  119. package/lib/types/recording-time.d.ts +5 -0
  120. package/lib/types/recording-time.d.ts.map +1 -0
  121. package/lib/types/rich-media-routes.d.ts.map +1 -1
  122. package/lib/types/sdk/index.d.ts +9 -3
  123. package/lib/types/sdk/index.d.ts.map +1 -1
  124. package/lib/types/services/arko-service.d.ts +3 -1
  125. package/lib/types/services/arko-service.d.ts.map +1 -1
  126. package/lib/types/services/background-sound-membership-service.d.ts +17 -0
  127. package/lib/types/services/background-sound-membership-service.d.ts.map +1 -0
  128. package/lib/types/services/background-sound-preference-service.d.ts +14 -0
  129. package/lib/types/services/background-sound-preference-service.d.ts.map +1 -0
  130. package/lib/types/services/bot-conversation-service.d.ts +2 -1
  131. package/lib/types/services/bot-conversation-service.d.ts.map +1 -1
  132. package/lib/types/services/chat-realtime-service.d.ts +28 -1
  133. package/lib/types/services/chat-realtime-service.d.ts.map +1 -1
  134. package/lib/types/services/chat-service.d.ts +20 -2
  135. package/lib/types/services/chat-service.d.ts.map +1 -1
  136. package/lib/types/services/contact-directory-service.d.ts +6 -0
  137. package/lib/types/services/contact-directory-service.d.ts.map +1 -1
  138. package/lib/types/services/desktop-attention-bridge.d.ts +61 -0
  139. package/lib/types/services/desktop-attention-bridge.d.ts.map +1 -0
  140. package/lib/types/services/file-transfers.d.ts +13 -1
  141. package/lib/types/services/file-transfers.d.ts.map +1 -1
  142. package/lib/types/services/group-service.d.ts +7 -6
  143. package/lib/types/services/group-service.d.ts.map +1 -1
  144. package/lib/types/services/media-service.d.ts +17 -0
  145. package/lib/types/services/media-service.d.ts.map +1 -1
  146. package/lib/types/services/message-action-infrastructure.d.ts +29 -0
  147. package/lib/types/services/message-action-infrastructure.d.ts.map +1 -0
  148. package/lib/types/services/message-action-service.d.ts +53 -0
  149. package/lib/types/services/message-action-service.d.ts.map +1 -0
  150. package/lib/types/services/record-service.d.ts +2 -0
  151. package/lib/types/services/record-service.d.ts.map +1 -1
  152. package/lib/types/services/recording-import-gateway.d.ts +33 -0
  153. package/lib/types/services/recording-import-gateway.d.ts.map +1 -0
  154. package/lib/types/services/recording-service.d.ts +83 -4
  155. package/lib/types/services/recording-service.d.ts.map +1 -1
  156. package/lib/types/services/service.d.ts +15 -0
  157. package/lib/types/services/service.d.ts.map +1 -1
  158. package/lib/types/services/source-service.d.ts +8 -1
  159. package/lib/types/services/source-service.d.ts.map +1 -1
  160. package/lib/types/state-store.d.ts +8 -0
  161. package/lib/types/state-store.d.ts.map +1 -1
  162. package/lib/types/tools/business/account/background-sound.d.ts +4 -0
  163. package/lib/types/tools/business/account/background-sound.d.ts.map +1 -0
  164. package/lib/types/tools/business/account/index.d.ts.map +1 -1
  165. package/lib/types/tools/business/media/files.d.ts.map +1 -1
  166. package/lib/types/tools/ports/groups.d.ts +2 -2
  167. package/lib/types/tools/ports/groups.d.ts.map +1 -1
  168. package/lib/types/tools/ports/profile.d.ts +3 -1
  169. package/lib/types/tools/ports/profile.d.ts.map +1 -1
  170. package/lib/types/tools/prompts/business.d.ts.map +1 -1
  171. package/lib/types/tools/registry/registrar.d.ts.map +1 -1
  172. package/lib/types/tools/shared/conversational-confirmation.d.ts +15 -2
  173. package/lib/types/tools/shared/conversational-confirmation.d.ts.map +1 -1
  174. package/lib/types/types.d.ts +124 -6
  175. package/lib/types/types.d.ts.map +1 -1
  176. package/package.json +7 -6
@@ -0,0 +1 @@
1
+ {"version":3,"file":"recording-empty-illustration.d.ts","sourceRoot":"","sources":["../../../../src/client/recordings/recording-empty-illustration.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,0BAA0B,mlYAAmlY,CAAA"}
@@ -0,0 +1,19 @@
1
+ export type ArkmeRecordingSelectionFormat = 'WAV' | 'MP3' | 'M4A';
2
+ export type ArkmeRecordingSelection = {
3
+ ok: true;
4
+ format: ArkmeRecordingSelectionFormat;
5
+ durationMillis?: number;
6
+ } | {
7
+ ok: false;
8
+ message: string;
9
+ };
10
+ export interface ArkmeRecordingSelectionProbe {
11
+ format: ArkmeRecordingSelectionFormat;
12
+ durationMillis: number;
13
+ }
14
+ export interface ArkmeRecordingSelectionDependencies {
15
+ probe(file: File): Promise<ArkmeRecordingSelectionProbe>;
16
+ }
17
+ export declare function validateArkmeRecordingSelection(file: File): ArkmeRecordingSelection;
18
+ export declare function inspectArkmeRecordingSelection(file: File, dependencies?: ArkmeRecordingSelectionDependencies): Promise<ArkmeRecordingSelection>;
19
+ //# sourceMappingURL=recording-import-selection.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"recording-import-selection.d.ts","sourceRoot":"","sources":["../../../../src/client/recordings/recording-import-selection.ts"],"names":[],"mappings":"AAMA,MAAM,MAAM,6BAA6B,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,CAAA;AAEjE,MAAM,MAAM,uBAAuB,GAC/B;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,MAAM,EAAE,6BAA6B,CAAC;IAAC,cAAc,CAAC,EAAE,MAAM,CAAA;CAAE,GAC5E;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAA;AAElC,MAAM,WAAW,4BAA4B;IAC3C,MAAM,EAAE,6BAA6B,CAAA;IACrC,cAAc,EAAE,MAAM,CAAA;CACvB;AAED,MAAM,WAAW,mCAAmC;IAClD,KAAK,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,4BAA4B,CAAC,CAAA;CACzD;AAOD,wBAAgB,+BAA+B,CAAC,IAAI,EAAE,IAAI,GAAG,uBAAuB,CAMnF;AAyBD,wBAAsB,8BAA8B,CAClD,IAAI,EAAE,IAAI,EACV,YAAY,GAAE,mCAAmE,GAChF,OAAO,CAAC,uBAAuB,CAAC,CAgBlC"}
@@ -0,0 +1,2 @@
1
+ export declare function recordingSpeakerColor(index: number): string;
2
+ //# sourceMappingURL=recording-speaker-presentation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"recording-speaker-presentation.d.ts","sourceRoot":"","sources":["../../../../src/client/recordings/recording-speaker-presentation.ts"],"names":[],"mappings":"AAMA,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAQ3D"}
@@ -0,0 +1,14 @@
1
+ import type { ArkmeRecordingWorkbenchItem } from '../../types.js';
2
+ export interface RecordingPlaybackController {
3
+ activeItemRef: string;
4
+ positionAtMillis: number | undefined;
5
+ isPlaying: boolean;
6
+ error: string;
7
+ playItem(item: ArkmeRecordingWorkbenchItem, seekAtMillis?: number): Promise<void>;
8
+ playAt(items: readonly ArkmeRecordingWorkbenchItem[], selectedAtMillis: number): Promise<void>;
9
+ pause(): void;
10
+ toggle(fallbackItem?: ArkmeRecordingWorkbenchItem): Promise<void>;
11
+ stop(): void;
12
+ }
13
+ export declare function useRecordingPlayback(mediaPath: string): RecordingPlaybackController;
14
+ //# sourceMappingURL=useRecordingPlayback.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useRecordingPlayback.d.ts","sourceRoot":"","sources":["../../../../src/client/recordings/useRecordingPlayback.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAA0B,2BAA2B,EAAE,MAAM,gBAAgB,CAAA;AAGzF,MAAM,WAAW,2BAA2B;IAC1C,aAAa,EAAE,MAAM,CAAA;IACrB,gBAAgB,EAAE,MAAM,GAAG,SAAS,CAAA;IACpC,SAAS,EAAE,OAAO,CAAA;IAClB,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,CAAC,IAAI,EAAE,2BAA2B,EAAE,YAAY,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IACjF,MAAM,CAAC,KAAK,EAAE,SAAS,2BAA2B,EAAE,EAAE,gBAAgB,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAC9F,KAAK,IAAI,IAAI,CAAA;IACb,MAAM,CAAC,YAAY,CAAC,EAAE,2BAA2B,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IACjE,IAAI,IAAI,IAAI,CAAA;CACb;AAED,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,MAAM,GAAG,2BAA2B,CA6JnF"}
@@ -1,5 +1,6 @@
1
1
  import type { ArkmeSourceItem } from '../types.js';
2
+ export type ArkmeSourceIdentityFacts = Pick<ArkmeSourceItem, 'kind' | 'sourceRef' | 'sourceKey' | 'topicHierarchyKey'>;
2
3
  export declare function arkmeChatSourceIdentityKey(source: Pick<ArkmeSourceItem, 'sourceRef' | 'sourceKey'>): string;
3
- export declare function arkmeSourceIdentityKey(source: Pick<ArkmeSourceItem, 'kind' | 'sourceRef' | 'sourceKey' | 'topicHierarchyKey'>): string;
4
+ export declare function arkmeSourceIdentityKey(source: ArkmeSourceIdentityFacts): string;
4
5
  export declare function arkmePrependSourceByIdentity(source: ArkmeSourceItem, sources: readonly ArkmeSourceItem[]): ArkmeSourceItem[];
5
6
  //# sourceMappingURL=source-identity.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"source-identity.d.ts","sourceRoot":"","sources":["../../../src/client/source-identity.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAElD,wBAAgB,0BAA0B,CACxC,MAAM,EAAE,IAAI,CAAC,eAAe,EAAE,WAAW,GAAG,WAAW,CAAC,GACvD,MAAM,CAGR;AAED,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,IAAI,CAAC,eAAe,EAAE,MAAM,GAAG,WAAW,GAAG,WAAW,GAAG,mBAAmB,CAAC,GACtF,MAAM,CASR;AAED,wBAAgB,4BAA4B,CAC1C,MAAM,EAAE,eAAe,EACvB,OAAO,EAAE,SAAS,eAAe,EAAE,GAClC,eAAe,EAAE,CAGnB"}
1
+ {"version":3,"file":"source-identity.d.ts","sourceRoot":"","sources":["../../../src/client/source-identity.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAElD,MAAM,MAAM,wBAAwB,GAAG,IAAI,CAAC,eAAe,EAAE,MAAM,GAAG,WAAW,GAAG,WAAW,GAAG,mBAAmB,CAAC,CAAA;AAEtH,wBAAgB,0BAA0B,CACxC,MAAM,EAAE,IAAI,CAAC,eAAe,EAAE,WAAW,GAAG,WAAW,CAAC,GACvD,MAAM,CAGR;AAED,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,wBAAwB,GAC/B,MAAM,CASR;AAED,wBAAgB,4BAA4B,CAC1C,MAAM,EAAE,eAAe,EACvB,OAAO,EAAE,SAAS,eAAe,EAAE,GAClC,eAAe,EAAE,CAGnB"}
@@ -8,6 +8,8 @@ export interface ArkmeUiState {
8
8
  productMode?: 'conversations' | 'contacts';
9
9
  selectedSource?: ArkmeSourceItem;
10
10
  selectedBot?: ArkmeBotSummary;
11
+ /** Forces a real conversation-surface commit for every native notification click, including the current source. */
12
+ notificationActivationRevision?: number;
11
13
  conversationTarget?: {
12
14
  revision: number;
13
15
  itemUid: string;
@@ -49,6 +51,7 @@ export declare class ArkmeUiController {
49
51
  private readonly listeners;
50
52
  private settingsOpener;
51
53
  private conversationTargetRevision;
54
+ private notificationActivationRevision;
52
55
  readonly getSnapshot: () => ArkmeUiState;
53
56
  /** Navigation and presentation state, stable across projection-only invalidations. */
54
57
  readonly getViewSnapshot: () => ArkmeUiViewState;
@@ -84,6 +87,8 @@ export declare class ArkmeUiController {
84
87
  openExtensionShare(shareRef: string, action?: ArkmeExtensionShareAction): void;
85
88
  dismissExtensionShare(): void;
86
89
  selectSource(source: ArkmeSourceItem): void;
90
+ updateSelectedSourceProjection(source: ArkmeSourceItem): boolean;
91
+ activateNotificationSource(source: ArkmeSourceItem): void;
87
92
  openBotConversation(bot: ArkmeBotSummary): void;
88
93
  showConversationTarget(source: ArkmeSourceItem, itemUid: string, sendAtMillis: number): void;
89
94
  consumeConversationTarget(revision: number): void;
@@ -1 +1 @@
1
- {"version":3,"file":"ui-controller.d.ts","sourceRoot":"","sources":["../../../src/client/ui-controller.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ui-controller.d.ts","sourceRoot":"","sources":["../../../src/client/ui-controller.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { ArkmeRichSendInput, ArkmeSourceSendResult, ArkmeUploadedAsset } from './types.js';
1
+ import type { ArkmeRecordLocationCapture, ArkmeRichSendInput, ArkmeSourceSendResult, ArkmeUploadedAsset } from './types.js';
2
2
  export declare const ARKME_TOOL_FILE_MAX_BYTES: number;
3
3
  export interface ArkmeFilePolicy {
4
4
  version: 1;
@@ -23,7 +23,17 @@ export interface ArkmeFileSendInput {
23
23
  recordUid: string;
24
24
  relationUid: string;
25
25
  fileRefs: string[];
26
- content: Omit<ArkmeRichSendInput, 'assets'>;
26
+ /** Captured current-account fence. It is validated before acceptance and is never persisted in a task. */
27
+ expectedUserId?: number;
28
+ /** Every background ref is also present once in `fileRefs`; the role is never inferred from MIME. */
29
+ backgroundSound?: ArkmeFileBackgroundSoundInput;
30
+ /** Send-scoped browser capture persisted until the owner confirms the record and applies its location post-effect. */
31
+ location?: ArkmeRecordLocationCapture;
32
+ content: Omit<ArkmeRichSendInput, 'assets' | 'backgroundSound'>;
33
+ }
34
+ export interface ArkmeFileBackgroundSoundInput {
35
+ fileRefs: string[];
36
+ amplitudes: number[];
27
37
  }
28
38
  export interface ArkmeFileSendTask extends ArkmeFileSendInput {
29
39
  taskRef: string;
@@ -34,6 +44,8 @@ export interface ArkmeFileSendTask extends ArkmeFileSendInput {
34
44
  asset?: ArkmeUploadedAsset;
35
45
  }>;
36
46
  result?: ArkmeSourceSendResult;
47
+ /** Sanitized owner error code. Definite rejection and unknown outcome remain distinct via state. */
48
+ errorCode?: string;
37
49
  error?: string;
38
50
  }
39
51
  export interface ArkmeFileReception {
@@ -1 +1 @@
1
- {"version":3,"file":"file-transfer-contract.d.ts","sourceRoot":"","sources":["../../src/file-transfer-contract.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AAC/F,eAAO,MAAM,yBAAyB,QAAY,CAAA;AAElD,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,CAAC,CAAA;IACV,YAAY,EAAE,MAAM,CAAA;IACpB,aAAa,EAAE,MAAM,CAAA;IACrB,cAAc,EAAE,MAAM,CAAA;CACvB;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,CAAA;IACf,QAAQ,EAAE,MAAM,CAAA;IAChB,QAAQ,EAAE,MAAM,CAAA;IAChB,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;CACxB;AAED,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,WAAW,GAAG,WAAW,GAAG,YAAY,GAAG,OAAO,CAAA;IACzD,SAAS,EAAE,MAAM,CAAA;IACjB,UAAU,EAAE,MAAM,CAAA;CACnB;AAED,MAAM,WAAW,kBAAkB;IACjC,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;IACjB,WAAW,EAAE,MAAM,CAAA;IACnB,QAAQ,EAAE,MAAM,EAAE,CAAA;IAClB,OAAO,EAAE,IAAI,CAAC,kBAAkB,EAAE,QAAQ,CAAC,CAAA;CAC5C;AAED,MAAM,WAAW,iBAAkB,SAAQ,kBAAkB;IAC3D,OAAO,EAAE,MAAM,CAAA;IACf,eAAe,EAAE,MAAM,CAAA;IACvB,KAAK,EAAE,QAAQ,GAAG,WAAW,GAAG,SAAS,GAAG,MAAM,GAAG,QAAQ,GAAG,WAAW,CAAA;IAC3E,KAAK,EAAE,KAAK,CAAC,cAAc,GAAG;QAAE,QAAQ,EAAE,iBAAiB,CAAC;QAAC,KAAK,CAAC,EAAE,kBAAkB,CAAA;KAAE,CAAC,CAAA;IAC1F,MAAM,CAAC,EAAE,qBAAqB,CAAA;IAC9B,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;AAED,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,SAAS,GAAG,WAAW,GAAG,OAAO,GAAG,QAAQ,CAAA;IACnD,aAAa,EAAE,MAAM,CAAA;IACrB,UAAU,EAAE,MAAM,CAAA;IAClB,IAAI,CAAC,EAAE,cAAc,CAAA;IACrB,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;AAED,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,IAAI,CAAA;IACZ,IAAI,EAAE,cAAc,CAAA;CACrB;AAED,wBAAgB,0BAA0B,CAAC,QAAQ,EAAE,iBAAiB,GAAG,MAAM,CAG9E;AAED,MAAM,MAAM,cAAc,GAAG,OAAO,GAAG,OAAO,GAAG,OAAO,CAAA;AACxD,KAAK,sBAAsB,GAAG,OAAO,CAAC,cAAc,EAAE,OAAO,CAAC,CAAA;AAsC9D,iFAAiF;AACjF,wBAAgB,2BAA2B,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,SAAK,GAAG,MAAM,CAKnF;AAED,0FAA0F;AAC1F,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,SAAK,GAAG,cAAc,GAAG,SAAS,CAgB1F;AAED,qFAAqF;AACrF,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,SAAK,GAAG,sBAAsB,GAAG,SAAS,CAc1G;AAED,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,SAAK,GAAG,OAAO,CAMhF;AAED,6FAA6F;AAC7F,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,SAAK,GAAG,cAAc,CAAC,UAAU,CAAC,CAI/F"}
1
+ {"version":3,"file":"file-transfer-contract.d.ts","sourceRoot":"","sources":["../../src/file-transfer-contract.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,0BAA0B,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AAC3H,eAAO,MAAM,yBAAyB,QAAY,CAAA;AAElD,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,CAAC,CAAA;IACV,YAAY,EAAE,MAAM,CAAA;IACpB,aAAa,EAAE,MAAM,CAAA;IACrB,cAAc,EAAE,MAAM,CAAA;CACvB;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,CAAA;IACf,QAAQ,EAAE,MAAM,CAAA;IAChB,QAAQ,EAAE,MAAM,CAAA;IAChB,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;CACxB;AAED,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,WAAW,GAAG,WAAW,GAAG,YAAY,GAAG,OAAO,CAAA;IACzD,SAAS,EAAE,MAAM,CAAA;IACjB,UAAU,EAAE,MAAM,CAAA;CACnB;AAED,MAAM,WAAW,kBAAkB;IACjC,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;IACjB,WAAW,EAAE,MAAM,CAAA;IACnB,QAAQ,EAAE,MAAM,EAAE,CAAA;IAClB,0GAA0G;IAC1G,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,qGAAqG;IACrG,eAAe,CAAC,EAAE,6BAA6B,CAAA;IAC/C,sHAAsH;IACtH,QAAQ,CAAC,EAAE,0BAA0B,CAAA;IACrC,OAAO,EAAE,IAAI,CAAC,kBAAkB,EAAE,QAAQ,GAAG,iBAAiB,CAAC,CAAA;CAChE;AAED,MAAM,WAAW,6BAA6B;IAC5C,QAAQ,EAAE,MAAM,EAAE,CAAA;IAClB,UAAU,EAAE,MAAM,EAAE,CAAA;CACrB;AAED,MAAM,WAAW,iBAAkB,SAAQ,kBAAkB;IAC3D,OAAO,EAAE,MAAM,CAAA;IACf,eAAe,EAAE,MAAM,CAAA;IACvB,KAAK,EAAE,QAAQ,GAAG,WAAW,GAAG,SAAS,GAAG,MAAM,GAAG,QAAQ,GAAG,WAAW,CAAA;IAC3E,KAAK,EAAE,KAAK,CAAC,cAAc,GAAG;QAAE,QAAQ,EAAE,iBAAiB,CAAC;QAAC,KAAK,CAAC,EAAE,kBAAkB,CAAA;KAAE,CAAC,CAAA;IAC1F,MAAM,CAAC,EAAE,qBAAqB,CAAA;IAC9B,oGAAoG;IACpG,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;AAED,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,SAAS,GAAG,WAAW,GAAG,OAAO,GAAG,QAAQ,CAAA;IACnD,aAAa,EAAE,MAAM,CAAA;IACrB,UAAU,EAAE,MAAM,CAAA;IAClB,IAAI,CAAC,EAAE,cAAc,CAAA;IACrB,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;AAED,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,IAAI,CAAA;IACZ,IAAI,EAAE,cAAc,CAAA;CACrB;AAED,wBAAgB,0BAA0B,CAAC,QAAQ,EAAE,iBAAiB,GAAG,MAAM,CAG9E;AAED,MAAM,MAAM,cAAc,GAAG,OAAO,GAAG,OAAO,GAAG,OAAO,CAAA;AACxD,KAAK,sBAAsB,GAAG,OAAO,CAAC,cAAc,EAAE,OAAO,CAAC,CAAA;AAsC9D,iFAAiF;AACjF,wBAAgB,2BAA2B,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,SAAK,GAAG,MAAM,CAKnF;AAED,0FAA0F;AAC1F,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,SAAK,GAAG,cAAc,GAAG,SAAS,CAgB1F;AAED,qFAAqF;AACrF,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,SAAK,GAAG,sBAAsB,GAAG,SAAS,CAc1G;AAED,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,SAAK,GAAG,OAAO,CAMhF;AAED,6FAA6F;AAC7F,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,SAAK,GAAG,cAAc,CAAC,UAAU,CAAC,CAI/F"}
@@ -1,7 +1,7 @@
1
1
  import { FileTransfers } from './services/file-transfers.js';
2
2
  import type { ChatService } from './services/chat-service.js';
3
3
  import type { MediaService } from './services/media-service.js';
4
- import type { ServiceRuntime } from './services/service.js';
4
+ import { type ServiceRuntime } from './services/service.js';
5
5
  import type { SourceService } from './services/source-service.js';
6
6
  export type { ArkmeFileSendInput, ArkmeLocalFile } from './file-transfer-contract.js';
7
7
  export type { FileTransfers } from './services/file-transfers.js';
@@ -1 +1 @@
1
- {"version":3,"file":"file-transfer-owner.d.ts","sourceRoot":"","sources":["../../src/file-transfer-owner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAA;AAC5D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAA;AAC7D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAA;AAC/D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAA;AAC3D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAA;AACjE,YAAY,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAA;AACrF,YAAY,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAA;AAEjE,wBAAgB,wBAAwB,CAAC,OAAO,EAAE;IAChD,SAAS,EAAE,MAAM,GAAG,SAAS,CAAA;IAC7B,cAAc,EAAE,MAAM,GAAG,SAAS,CAAA;IAClC,OAAO,EAAE,cAAc,CAAA;IACvB,MAAM,EAAE,aAAa,CAAA;IACrB,KAAK,EAAE,YAAY,CAAA;IACnB,IAAI,EAAE,WAAW,CAAA;IACjB,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;CAChE,GAAG,aAAa,GAAG,SAAS,CAiB5B"}
1
+ {"version":3,"file":"file-transfer-owner.d.ts","sourceRoot":"","sources":["../../src/file-transfer-owner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAgC,MAAM,8BAA8B,CAAA;AAC1F,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAA;AAC7D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAA;AAC/D,OAAO,EAAoB,KAAK,cAAc,EAAE,MAAM,uBAAuB,CAAA;AAC7E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAA;AACjE,YAAY,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAA;AACrF,YAAY,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAA;AAEjE,wBAAgB,wBAAwB,CAAC,OAAO,EAAE;IAChD,SAAS,EAAE,MAAM,GAAG,SAAS,CAAA;IAC7B,cAAc,EAAE,MAAM,GAAG,SAAS,CAAA;IAClC,OAAO,EAAE,cAAc,CAAA;IACvB,MAAM,EAAE,aAAa,CAAA;IACrB,KAAK,EAAE,YAAY,CAAA;IACnB,IAAI,EAAE,WAAW,CAAA;IACjB,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;CAChE,GAAG,aAAa,GAAG,SAAS,CA0D5B"}
@@ -1 +1 @@
1
- {"version":3,"file":"host-api.d.ts","sourceRoot":"","sources":["../../src/host-api.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,WAAW,CAAA;AAChE,OAAO,EAAoB,YAAY,EAAE,MAAM,oBAAoB,CAAA;AAEnE,OAAO,EAA0B,wBAAwB,EAAE,MAAM,oBAAoB,CAAA;AAErF,OAAO,KAAK,EAMV,kBAAkB,EAGnB,MAAM,YAAY,CAAA;AAGnB,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAA;AACpE,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,+BAA+B,CAAA;AAC/E,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,iCAAiC,CAAA;AACnF,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,oCAAoC,CAAA;AAMzF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAA;AA8lBhE,MAAM,WAAW,mBAAmB;IAClC,YAAY,EAAE,MAAM,CAAA;IACpB,gBAAgB,EAAE,OAAO,CAAA;IACzB,aAAa,CAAC,EAAE,IAAI,CAClB,wBAAwB,EACxB,QAAQ,GAAG,OAAO,GAAG,aAAa,GAAG,SAAS,GAAG,eAAe,CACjE,CAAA;IACD,gBAAgB,CAAC,EAAE,MAAM,qBAAqB,GAAG,SAAS,CAAA;IAC1D,qBAAqB,CAAC,EAAE,MAAM,0BAA0B,GAAG,SAAS,CAAA;IACpE,uBAAuB,CAAC,EAAE,MAAM,4BAA4B,GAAG,SAAS,CAAA;IACxE,UAAU,CAAC,EAAE,MAAM,mBAAmB,GAAG,SAAS,CAAA;IAClD,iBAAiB,CAAC,EAAE,IAAI,CAAC,+BAA+B,EAAE,QAAQ,GAAG,SAAS,GAAG,UAAU,GAAG,QAAQ,CAAC,CAAA;CACxG;AAED,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,mBAAmB,IACtE,KAAK,eAAe,EAAE,KAAK,cAAc,KAAG,OAAO,CAAC,IAAI,CAAC,CAmExE;AAED,wBAAsB,0BAA0B,CAC9C,OAAO,EAAE,YAAY,EACrB,SAAS,EAAE,kBAAkB,CAAC,WAAW,CAAC,EAC1C,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,aAAa,CAAC,EAAE,IAAI,CAClB,wBAAwB,EACxB,QAAQ,GAAG,OAAO,GAAG,aAAa,GAAG,SAAS,GAAG,eAAe,CACjE,EACD,gBAAgB,CAAC,EAAE,qBAAqB,EACxC,qBAAqB,CAAC,EAAE,0BAA0B,EAClD,uBAAuB,CAAC,EAAE,4BAA4B,EACtD,aAAa,CAAC,EAAE,WAAW,EAC3B,UAAU,CAAC,EAAE,mBAAmB,EAChC,iBAAiB,CAAC,EAAE,IAAI,CAAC,+BAA+B,EAAE,QAAQ,GAAG,SAAS,GAAG,UAAU,GAAG,QAAQ,CAAC,GACtG,OAAO,CAAC,OAAO,CAAC,CA48BlB"}
1
+ {"version":3,"file":"host-api.d.ts","sourceRoot":"","sources":["../../src/host-api.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,WAAW,CAAA;AAChE,OAAO,EAAoB,YAAY,EAAE,MAAM,oBAAoB,CAAA;AAEnE,OAAO,EAA0B,wBAAwB,EAAE,MAAM,oBAAoB,CAAA;AAErF,OAAO,KAAK,EAMV,kBAAkB,EAGnB,MAAM,YAAY,CAAA;AAGnB,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAA;AACpE,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,+BAA+B,CAAA;AAC/E,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,iCAAiC,CAAA;AACnF,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,oCAAoC,CAAA;AAMzF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAA;AA6rBhE,MAAM,WAAW,mBAAmB;IAClC,YAAY,EAAE,MAAM,CAAA;IACpB,gBAAgB,EAAE,OAAO,CAAA;IACzB,aAAa,CAAC,EAAE,IAAI,CAClB,wBAAwB,EACxB,QAAQ,GAAG,OAAO,GAAG,aAAa,GAAG,SAAS,GAAG,eAAe,CACjE,CAAA;IACD,gBAAgB,CAAC,EAAE,MAAM,qBAAqB,GAAG,SAAS,CAAA;IAC1D,qBAAqB,CAAC,EAAE,MAAM,0BAA0B,GAAG,SAAS,CAAA;IACpE,uBAAuB,CAAC,EAAE,MAAM,4BAA4B,GAAG,SAAS,CAAA;IACxE,UAAU,CAAC,EAAE,MAAM,mBAAmB,GAAG,SAAS,CAAA;IAClD,iBAAiB,CAAC,EAAE,IAAI,CAAC,+BAA+B,EAAE,QAAQ,GAAG,SAAS,GAAG,UAAU,GAAG,QAAQ,CAAC,CAAA;CACxG;AAED,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,mBAAmB,IACtE,KAAK,eAAe,EAAE,KAAK,cAAc,KAAG,OAAO,CAAC,IAAI,CAAC,CAmExE;AAED,wBAAsB,0BAA0B,CAC9C,OAAO,EAAE,YAAY,EACrB,SAAS,EAAE,kBAAkB,CAAC,WAAW,CAAC,EAC1C,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,aAAa,CAAC,EAAE,IAAI,CAClB,wBAAwB,EACxB,QAAQ,GAAG,OAAO,GAAG,aAAa,GAAG,SAAS,GAAG,eAAe,CACjE,EACD,gBAAgB,CAAC,EAAE,qBAAqB,EACxC,qBAAqB,CAAC,EAAE,0BAA0B,EAClD,uBAAuB,CAAC,EAAE,4BAA4B,EACtD,aAAa,CAAC,EAAE,WAAW,EAC3B,UAAU,CAAC,EAAE,mBAAmB,EAChC,iBAAiB,CAAC,EAAE,IAAI,CAAC,+BAA+B,EAAE,QAAQ,GAAG,SAAS,GAAG,UAAU,GAAG,QAAQ,CAAC,GACtG,OAAO,CAAC,OAAO,CAAC,CAmhClB"}
@@ -32,6 +32,7 @@ export interface Config {
32
32
  relatedRecordingsEnabled: boolean;
33
33
  geetestCaptchaId: string;
34
34
  interwovenMomentsEnabled: boolean;
35
+ recordingWorkbenchEnabled: boolean;
35
36
  chatMemberJoinEventsEnabled: boolean;
36
37
  richMediaRenderEnabled: boolean;
37
38
  richMediaSendEnabled: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
@@ -1,13 +1,14 @@
1
1
  import type { ArkmeStateStore } from './state-store.js';
2
2
  import type { ArkmeCachedSnapshot, ArkmeCachedQueryResult, ArkmeLongArticleDraft, ArkmePendingWrite, ArkmeRecordCursor, ArkmeSelfRecordList, ArkmeSelfSummary, ArkmeUserProfile, ArkmeUserProfileSnapshot } from './types.js';
3
3
  import type { ArkmeExtensionReviewOperation } from './extensions/types.js';
4
+ import type { RecordingImportJob } from './recording-import-contract.js';
4
5
  export declare class ArkmeLocalDatabase {
5
- private readonly legacy;
6
+ private readonly operationalState;
6
7
  private readonly path;
7
8
  private readonly database;
8
9
  private readonly migrations;
9
10
  private readonly securedWindowsFiles;
10
- constructor(directory: string, legacy: ArkmeStateStore);
11
+ constructor(directory: string, operationalState: ArkmeStateStore);
11
12
  uniqueCode(): Promise<string>;
12
13
  cachedSnapshot(userId: number): Promise<ArkmeCachedSnapshot>;
13
14
  queryCached(userId: number, options: {
@@ -29,6 +30,12 @@ export declare class ArkmeLocalDatabase {
29
30
  getLongArticleDraft(userId: number, sourceRef: string, itemUid?: string): Promise<ArkmeLongArticleDraft | undefined>;
30
31
  putLongArticleDraft(userId: number, draft: ArkmeLongArticleDraft): Promise<void>;
31
32
  removeLongArticleDraft(userId: number, sourceRef: string, itemUid?: string): Promise<void>;
33
+ listRecordingImportJobs(userId: number): Promise<RecordingImportJob[]>;
34
+ listAllRecordingImportJobs(): Promise<RecordingImportJob[]>;
35
+ getRecordingImportJob(userId: number, jobId: string): Promise<RecordingImportJob | undefined>;
36
+ putRecordingImportJob(userId: number, job: RecordingImportJob): Promise<void>;
37
+ admitRecordingImportJob(userId: number, job: RecordingImportJob, unresolvedLimit: number): ReturnType<ArkmeStateStore['admitRecordingImportJob']>;
38
+ replaceRecordingImportJob(userId: number, job: RecordingImportJob, expectedRevision: number): Promise<boolean>;
32
39
  markAttempt(userId: number, recordUid: string, error: string): Promise<void>;
33
40
  markSynced(userId: number, recordUid: string, status: number): Promise<void>;
34
41
  close(): void;
@@ -1 +1 @@
1
- {"version":3,"file":"local-database.d.ts","sourceRoot":"","sources":["../../src/local-database.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"local-database.d.ts","sourceRoot":"","sources":["../../src/local-database.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,117 @@
1
+ import type { ArkmeSessionCredentials } from './keychain-store.js';
2
+ import type { ArkmeMessageCopyLinkResult, ArkmeSourceSendResult } from './types.js';
3
+ export type MessageActionRole = 'user' | 'assistant';
4
+ interface MessageActionReferenceBase {
5
+ version: 2;
6
+ userId: number;
7
+ messageIdentity: string;
8
+ role: MessageActionRole;
9
+ textContent: string;
10
+ createdAtMillis: number;
11
+ sortOrdinal: number;
12
+ senderUserId: number;
13
+ senderName: string;
14
+ }
15
+ export interface AgentMessageActionReference extends MessageActionReferenceBase {
16
+ ownerKind: 'agent';
17
+ agentSessionId: number;
18
+ agentMessageId: number;
19
+ entryRecordUid?: string;
20
+ }
21
+ export interface ChatBotMessageActionReference extends MessageActionReferenceBase {
22
+ ownerKind: 'bot_chat';
23
+ chatSessionUid: string;
24
+ relationUid: string;
25
+ recordUid: string;
26
+ sequence: number;
27
+ }
28
+ export interface SubjectBotMessageActionReference extends MessageActionReferenceBase {
29
+ ownerKind: 'bot_subject';
30
+ subjectUid: string;
31
+ recordUid: string;
32
+ }
33
+ export type MessageActionReference = AgentMessageActionReference | ChatBotMessageActionReference | SubjectBotMessageActionReference;
34
+ export interface AgentMessageActionConversation {
35
+ version: 2;
36
+ userId: number;
37
+ sessionId: number;
38
+ }
39
+ export type MessageActionTarget = {
40
+ kind: 'private_chat';
41
+ ownerRef: string;
42
+ } | {
43
+ kind: 'group_chat';
44
+ ownerRef: string;
45
+ } | {
46
+ kind: 'send_to_self';
47
+ ownerRef: string;
48
+ } | {
49
+ kind: 'default_category';
50
+ ownerRef: string;
51
+ } | {
52
+ kind: 'topic';
53
+ ownerRef: string;
54
+ };
55
+ export interface MessageActionBotRegistryPort {
56
+ openBotRef(botRef: string, expectedUserId: number): Promise<{
57
+ target: {
58
+ kind: 'chat';
59
+ chatSessionUid: string;
60
+ } | {
61
+ kind: 'subject';
62
+ subjectUid: string;
63
+ } | {
64
+ kind: 'unavailable';
65
+ reason: string;
66
+ };
67
+ }>;
68
+ }
69
+ export interface MessageActionCapabilityCodec {
70
+ seal(prefix: string, payload: unknown): Promise<string>;
71
+ open(prefix: string, value: string): Promise<Record<string, unknown>>;
72
+ }
73
+ export interface MessageActionGateway {
74
+ requireSession(): Promise<ArkmeSessionCredentials>;
75
+ maxTextLength(): number;
76
+ openTarget(targetSourceRef: string, userId: number): Promise<MessageActionTarget>;
77
+ createCopyLink(references: readonly MessageActionReference[], session: ArkmeSessionCredentials, signal?: AbortSignal): Promise<ArkmeMessageCopyLinkResult>;
78
+ forwardToChat(input: {
79
+ targetSourceRef: string;
80
+ target: Extract<MessageActionTarget, {
81
+ kind: 'private_chat';
82
+ }> | Extract<MessageActionTarget, {
83
+ kind: 'group_chat';
84
+ }>;
85
+ references: readonly MessageActionReference[];
86
+ requestId: string;
87
+ sendAtMillis: number;
88
+ commentText: string;
89
+ session: ArkmeSessionCredentials;
90
+ signal?: AbortSignal;
91
+ }): Promise<ArkmeSourceSendResult>;
92
+ forwardToRecord(input: {
93
+ targetSourceRef: string;
94
+ target: Exclude<MessageActionTarget, {
95
+ kind: 'private_chat' | 'group_chat';
96
+ }>;
97
+ references: readonly MessageActionReference[];
98
+ requestId: string;
99
+ recordUid: string;
100
+ sendAtMillis: number;
101
+ session: ArkmeSessionCredentials;
102
+ signal?: AbortSignal;
103
+ }): Promise<ArkmeSourceSendResult>;
104
+ createRecordTargetComment(input: {
105
+ target: Exclude<MessageActionTarget, {
106
+ kind: 'private_chat' | 'group_chat';
107
+ }>;
108
+ recordUid: string;
109
+ textContent: string;
110
+ sendAtMillis: number;
111
+ session: ArkmeSessionCredentials;
112
+ signal?: AbortSignal;
113
+ }): Promise<void>;
114
+ }
115
+ export declare function messageActionCanCopyLink(reference: MessageActionReference): boolean;
116
+ export {};
117
+ //# sourceMappingURL=message-action-contract.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"message-action-contract.d.ts","sourceRoot":"","sources":["../../src/message-action-contract.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAA;AAClE,OAAO,KAAK,EAAE,0BAA0B,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAA;AAEnF,MAAM,MAAM,iBAAiB,GAAG,MAAM,GAAG,WAAW,CAAA;AAEpD,UAAU,0BAA0B;IAClC,OAAO,EAAE,CAAC,CAAA;IACV,MAAM,EAAE,MAAM,CAAA;IACd,eAAe,EAAE,MAAM,CAAA;IACvB,IAAI,EAAE,iBAAiB,CAAA;IACvB,WAAW,EAAE,MAAM,CAAA;IACnB,eAAe,EAAE,MAAM,CAAA;IACvB,WAAW,EAAE,MAAM,CAAA;IACnB,YAAY,EAAE,MAAM,CAAA;IACpB,UAAU,EAAE,MAAM,CAAA;CACnB;AAED,MAAM,WAAW,2BAA4B,SAAQ,0BAA0B;IAC7E,SAAS,EAAE,OAAO,CAAA;IAClB,cAAc,EAAE,MAAM,CAAA;IACtB,cAAc,EAAE,MAAM,CAAA;IACtB,cAAc,CAAC,EAAE,MAAM,CAAA;CACxB;AAED,MAAM,WAAW,6BAA8B,SAAQ,0BAA0B;IAC/E,SAAS,EAAE,UAAU,CAAA;IACrB,cAAc,EAAE,MAAM,CAAA;IACtB,WAAW,EAAE,MAAM,CAAA;IACnB,SAAS,EAAE,MAAM,CAAA;IACjB,QAAQ,EAAE,MAAM,CAAA;CACjB;AAED,MAAM,WAAW,gCAAiC,SAAQ,0BAA0B;IAClF,SAAS,EAAE,aAAa,CAAA;IACxB,UAAU,EAAE,MAAM,CAAA;IAClB,SAAS,EAAE,MAAM,CAAA;CAClB;AAED,MAAM,MAAM,sBAAsB,GAC9B,2BAA2B,GAC3B,6BAA6B,GAC7B,gCAAgC,CAAA;AAEpC,MAAM,WAAW,8BAA8B;IAC7C,OAAO,EAAE,CAAC,CAAA;IACV,MAAM,EAAE,MAAM,CAAA;IACd,SAAS,EAAE,MAAM,CAAA;CAClB;AAED,MAAM,MAAM,mBAAmB,GAC3B;IAAE,IAAI,EAAE,cAAc,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,GAC1C;IAAE,IAAI,EAAE,YAAY,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,GACxC;IAAE,IAAI,EAAE,cAAc,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,GAC1C;IAAE,IAAI,EAAE,kBAAkB,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,GAC9C;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,CAAA;AAEvC,MAAM,WAAW,4BAA4B;IAC3C,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC;QAC1D,MAAM,EACF;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,cAAc,EAAE,MAAM,CAAA;SAAE,GACxC;YAAE,IAAI,EAAE,SAAS,CAAC;YAAC,UAAU,EAAE,MAAM,CAAA;SAAE,GACvC;YAAE,IAAI,EAAE,aAAa,CAAC;YAAC,MAAM,EAAE,MAAM,CAAA;SAAE,CAAA;KAC5C,CAAC,CAAA;CACH;AAED,MAAM,WAAW,4BAA4B;IAC3C,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;IACvD,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAA;CACtE;AAED,MAAM,WAAW,oBAAoB;IACnC,cAAc,IAAI,OAAO,CAAC,uBAAuB,CAAC,CAAA;IAClD,aAAa,IAAI,MAAM,CAAA;IACvB,UAAU,CAAC,eAAe,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAA;IACjF,cAAc,CACZ,UAAU,EAAE,SAAS,sBAAsB,EAAE,EAC7C,OAAO,EAAE,uBAAuB,EAChC,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,0BAA0B,CAAC,CAAA;IACtC,aAAa,CAAC,KAAK,EAAE;QACnB,eAAe,EAAE,MAAM,CAAA;QACvB,MAAM,EAAE,OAAO,CAAC,mBAAmB,EAAE;YAAE,IAAI,EAAE,cAAc,CAAA;SAAE,CAAC,GAAG,OAAO,CAAC,mBAAmB,EAAE;YAAE,IAAI,EAAE,YAAY,CAAA;SAAE,CAAC,CAAA;QACrH,UAAU,EAAE,SAAS,sBAAsB,EAAE,CAAA;QAC7C,SAAS,EAAE,MAAM,CAAA;QACjB,YAAY,EAAE,MAAM,CAAA;QACpB,WAAW,EAAE,MAAM,CAAA;QACnB,OAAO,EAAE,uBAAuB,CAAA;QAChC,MAAM,CAAC,EAAE,WAAW,CAAA;KACrB,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAAA;IAClC,eAAe,CAAC,KAAK,EAAE;QACrB,eAAe,EAAE,MAAM,CAAA;QACvB,MAAM,EAAE,OAAO,CAAC,mBAAmB,EAAE;YAAE,IAAI,EAAE,cAAc,GAAG,YAAY,CAAA;SAAE,CAAC,CAAA;QAC7E,UAAU,EAAE,SAAS,sBAAsB,EAAE,CAAA;QAC7C,SAAS,EAAE,MAAM,CAAA;QACjB,SAAS,EAAE,MAAM,CAAA;QACjB,YAAY,EAAE,MAAM,CAAA;QACpB,OAAO,EAAE,uBAAuB,CAAA;QAChC,MAAM,CAAC,EAAE,WAAW,CAAA;KACrB,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAAA;IAClC,yBAAyB,CAAC,KAAK,EAAE;QAC/B,MAAM,EAAE,OAAO,CAAC,mBAAmB,EAAE;YAAE,IAAI,EAAE,cAAc,GAAG,YAAY,CAAA;SAAE,CAAC,CAAA;QAC7E,SAAS,EAAE,MAAM,CAAA;QACjB,WAAW,EAAE,MAAM,CAAA;QACnB,YAAY,EAAE,MAAM,CAAA;QACpB,OAAO,EAAE,uBAAuB,CAAA;QAChC,MAAM,CAAC,EAAE,WAAW,CAAA;KACrB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;CAClB;AAED,wBAAgB,wBAAwB,CAAC,SAAS,EAAE,sBAAsB,GAAG,OAAO,CAInF"}
@@ -0,0 +1,7 @@
1
+ import type { ArkmeFileBackgroundSoundInput, ArkmeLocalFile } from './file-transfer-contract.js';
2
+ import type { ArkmeRichBackgroundSoundInput } from './types.js';
3
+ export declare function arkmeBackgroundSoundAmplitudes(values: readonly number[]): number[];
4
+ export declare function arkmeFileBackgroundSound(value: ArkmeFileBackgroundSoundInput | undefined, allFileRefs: readonly string[]): ArkmeFileBackgroundSoundInput | undefined;
5
+ export declare function assertArkmeBackgroundSoundLocalFiles(backgroundSound: ArkmeFileBackgroundSoundInput | undefined, files: readonly ArkmeLocalFile[]): void;
6
+ export declare function arkmeRichBackgroundSound(value: ArkmeRichBackgroundSoundInput | undefined): ArkmeRichBackgroundSoundInput | undefined;
7
+ //# sourceMappingURL=record-background-sound.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"record-background-sound.d.ts","sourceRoot":"","sources":["../../src/record-background-sound.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,6BAA6B,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAA;AAChG,OAAO,KAAK,EAAE,6BAA6B,EAAsB,MAAM,YAAY,CAAA;AAenF,wBAAgB,8BAA8B,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,EAAE,CAMlF;AAED,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,6BAA6B,GAAG,SAAS,EAChD,WAAW,EAAE,SAAS,MAAM,EAAE,GAC7B,6BAA6B,GAAG,SAAS,CAU3C;AAED,wBAAgB,oCAAoC,CAClD,eAAe,EAAE,6BAA6B,GAAG,SAAS,EAC1D,KAAK,EAAE,SAAS,cAAc,EAAE,GAC/B,IAAI,CASN;AAmBD,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,6BAA6B,GAAG,SAAS,GAC/C,6BAA6B,GAAG,SAAS,CAS3C"}
@@ -0,0 +1,71 @@
1
+ import { MAX_RECORDING_IMPORT_BYTES, MAX_RECORDING_IMPORT_DURATION_MILLIS, type PublicRecordingImportJob, type RecordingImportPhase } from './recording-import-shared.js';
2
+ export { MAX_RECORDING_IMPORT_BYTES, MAX_RECORDING_IMPORT_DURATION_MILLIS };
3
+ export type { PublicRecordingImportJob, RecordingImportPhase };
4
+ export type RecordingImportFileKind = 'wav' | 'mp3' | 'm4a';
5
+ export interface RecordingImportJob {
6
+ jobId: string;
7
+ userId: number;
8
+ revision: number;
9
+ phase: RecordingImportPhase;
10
+ fileName: string;
11
+ mimeType: string;
12
+ fileSize: number;
13
+ durationMillis: number;
14
+ sha256: string;
15
+ startAtMillis: number;
16
+ belongUserId: number;
17
+ sourceHandle: string;
18
+ uploadedBytes: number;
19
+ createdAtMillis: number;
20
+ updatedAtMillis: number;
21
+ sessionId?: string | undefined;
22
+ childId?: string | undefined;
23
+ childFinished?: boolean | undefined;
24
+ errorCode?: string | undefined;
25
+ errorMessage?: string | undefined;
26
+ retryable?: boolean | undefined;
27
+ failedFromPhase?: Exclude<RecordingImportPhase, 'failed' | 'cancelled' | 'accepted'> | undefined;
28
+ uploadCheckpoint?: Record<string, unknown> | undefined;
29
+ }
30
+ export type RecordingImportAdmission = {
31
+ kind: 'inserted';
32
+ job: RecordingImportJob;
33
+ } | {
34
+ kind: 'existing';
35
+ job: RecordingImportJob;
36
+ } | {
37
+ kind: 'duplicate-file-name';
38
+ } | {
39
+ kind: 'limit';
40
+ };
41
+ export interface RecordingImportSource {
42
+ inspect(sourceHandle: string, metadata: {
43
+ fileName: string;
44
+ mimeType: string;
45
+ fileSize: number;
46
+ }): Promise<{
47
+ kind: RecordingImportFileKind;
48
+ durationMillis: number;
49
+ }>;
50
+ discard(sourceHandle: string): Promise<void>;
51
+ }
52
+ export declare function sameRecordingImportIdentity(left: Pick<RecordingImportJob, 'userId' | 'fileName' | 'fileSize' | 'sha256' | 'startAtMillis' | 'belongUserId'>, right: Pick<RecordingImportJob, 'userId' | 'fileName' | 'fileSize' | 'sha256' | 'startAtMillis' | 'belongUserId'>): boolean;
53
+ export declare class RecordingImportContractError extends Error {
54
+ readonly code: string;
55
+ readonly retryable: boolean;
56
+ constructor(code: string, message: string, retryable?: boolean);
57
+ }
58
+ export declare function recordingImportFileKind(input: {
59
+ fileName: string;
60
+ mimeType: string;
61
+ fileSize: number;
62
+ durationMillis: number;
63
+ }): RecordingImportFileKind;
64
+ export declare function recordingImportCanonicalMimeType(kind: RecordingImportFileKind): string;
65
+ export declare function advanceRecordingImportJob(current: RecordingImportJob, input: {
66
+ expectedRevision: number;
67
+ phase: RecordingImportPhase;
68
+ nowMillis: number;
69
+ } & Partial<Pick<RecordingImportJob, 'uploadedBytes' | 'sessionId' | 'childId' | 'childFinished' | 'errorCode' | 'errorMessage' | 'retryable'>>): RecordingImportJob;
70
+ export declare function toPublicRecordingImportJob(job: RecordingImportJob, importRef: string): PublicRecordingImportJob;
71
+ //# sourceMappingURL=recording-import-contract.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"recording-import-contract.d.ts","sourceRoot":"","sources":["../../src/recording-import-contract.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,34 @@
1
+ import { type RecordingImportJob, type RecordingImportSource } from './recording-import-contract.js';
2
+ export interface RecordingImportStore {
3
+ getRecordingImportJob(userId: number, jobId: string): Promise<RecordingImportJob | undefined>;
4
+ replaceRecordingImportJob(userId: number, job: RecordingImportJob, expectedRevision: number): Promise<boolean>;
5
+ }
6
+ export interface RecordingImportGateway {
7
+ ensureSession(job: RecordingImportJob, signal?: AbortSignal): Promise<string>;
8
+ createChild(job: RecordingImportJob, signal?: AbortSignal): Promise<string>;
9
+ upload(job: RecordingImportJob, onProgress: (uploadedBytes: number, checkpoint?: Record<string, unknown>) => Promise<void>, signal?: AbortSignal): Promise<void>;
10
+ finishChild(job: RecordingImportJob, signal?: AbortSignal): Promise<void>;
11
+ finishSession(job: RecordingImportJob, signal?: AbortSignal): Promise<void>;
12
+ deleteSession(job: RecordingImportJob): Promise<void>;
13
+ }
14
+ export declare class RecordingImportCoordinator {
15
+ private readonly store;
16
+ private readonly gateway;
17
+ private readonly source;
18
+ private readonly activeUserId;
19
+ private readonly nowMillis;
20
+ constructor(store: RecordingImportStore, gateway: RecordingImportGateway, source: RecordingImportSource, activeUserId: () => Promise<number>, nowMillis?: () => number);
21
+ run(userId: number, jobId: string, signal?: AbortSignal): Promise<RecordingImportJob>;
22
+ retry(userId: number, jobId: string, expectedRevision: number): Promise<RecordingImportJob>;
23
+ resumeRetry(userId: number, jobId: string, expectedRevision: number): Promise<RecordingImportJob>;
24
+ cancel(userId: number, jobId: string, expectedRevision: number): Promise<RecordingImportJob>;
25
+ private prepareOwnerUpload;
26
+ private upload;
27
+ private finalize;
28
+ private throwIfAborted;
29
+ private assertActiveAccount;
30
+ private requiredJob;
31
+ private checkpoint;
32
+ private transition;
33
+ }
34
+ //# sourceMappingURL=recording-import-coordinator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"recording-import-coordinator.d.ts","sourceRoot":"","sources":["../../src/recording-import-coordinator.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,kBAAkB,EAEvB,KAAK,qBAAqB,EAC3B,MAAM,gCAAgC,CAAA;AAEvC,MAAM,WAAW,oBAAoB;IACnC,qBAAqB,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,GAAG,SAAS,CAAC,CAAA;IAC7F,yBAAyB,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;CAC/G;AAED,MAAM,WAAW,sBAAsB;IACrC,aAAa,CAAC,GAAG,EAAE,kBAAkB,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;IAC7E,WAAW,CAAC,GAAG,EAAE,kBAAkB,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;IAC3E,MAAM,CACJ,GAAG,EAAE,kBAAkB,EACvB,UAAU,EAAE,CAAC,aAAa,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,EAC1F,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,IAAI,CAAC,CAAA;IAChB,WAAW,CAAC,GAAG,EAAE,kBAAkB,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IACzE,aAAa,CAAC,GAAG,EAAE,kBAAkB,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAC3E,aAAa,CAAC,GAAG,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;CACtD;AAmBD,qBAAa,0BAA0B;IAEnC,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,SAAS;gBAJT,KAAK,EAAE,oBAAoB,EAC3B,OAAO,EAAE,sBAAsB,EAC/B,MAAM,EAAE,qBAAqB,EAC7B,YAAY,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,EACnC,SAAS,GAAE,MAAM,MAAiB;IAG/C,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,kBAAkB,CAAC;IA8BrF,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAK3F,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAgBjG,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC;YAmBpF,kBAAkB;YAiBlB,MAAM;YA0BN,QAAQ;IAYtB,OAAO,CAAC,cAAc;YAKR,mBAAmB;YAMnB,WAAW;YAMX,UAAU;YAWV,UAAU;CAgBzB"}
@@ -0,0 +1,19 @@
1
+ import { type RecordingImportFileKind, type RecordingImportSource } from './recording-import-contract.js';
2
+ export interface RecordingImportProbe {
3
+ kind: RecordingImportFileKind;
4
+ durationMillis: number;
5
+ }
6
+ export declare function probeRecordingImportFile(filePath: string, metadata: {
7
+ fileName: string;
8
+ mimeType: string;
9
+ fileSize: number;
10
+ }): Promise<RecordingImportProbe>;
11
+ export declare class LocalRecordingImportSource implements RecordingImportSource {
12
+ inspect(sourceHandle: string, metadata: {
13
+ fileName: string;
14
+ mimeType: string;
15
+ fileSize: number;
16
+ }): Promise<RecordingImportProbe>;
17
+ discard(sourceHandle: string): Promise<void>;
18
+ }
19
+ //# sourceMappingURL=recording-import-probe.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"recording-import-probe.d.ts","sourceRoot":"","sources":["../../src/recording-import-probe.ts"],"names":[],"mappings":"AAEA,OAAO,EAGL,KAAK,uBAAuB,EAC5B,KAAK,qBAAqB,EAC3B,MAAM,gCAAgC,CAAA;AAEvC,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,uBAAuB,CAAA;IAC7B,cAAc,EAAE,MAAM,CAAA;CACvB;AAED,wBAAsB,wBAAwB,CAC5C,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,GACjE,OAAO,CAAC,oBAAoB,CAAC,CAyC/B;AAED,qBAAa,0BAA2B,YAAW,qBAAqB;IAChE,OAAO,CACX,YAAY,EAAE,MAAM,EACpB,QAAQ,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,GACjE,OAAO,CAAC,oBAAoB,CAAC;IAI1B,OAAO,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAGnD"}
@@ -0,0 +1,7 @@
1
+ export interface RecordingImportRefPayload {
2
+ jobId: string;
3
+ userId: number;
4
+ }
5
+ export declare function sealRecordingImportRef(payload: RecordingImportRefPayload, signingKey: string): string;
6
+ export declare function openRecordingImportRef(importRef: string, currentUserId: number, signingKey: string): RecordingImportRefPayload;
7
+ //# sourceMappingURL=recording-import-ref.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"recording-import-ref.d.ts","sourceRoot":"","sources":["../../src/recording-import-ref.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,yBAAyB;IACxC,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,MAAM,CAAA;CACf;AAMD,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,yBAAyB,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAOrG;AAED,wBAAgB,sBAAsB,CACpC,SAAS,EAAE,MAAM,EACjB,aAAa,EAAE,MAAM,EACrB,UAAU,EAAE,MAAM,GACjB,yBAAyB,CAwB3B"}
@@ -0,0 +1,23 @@
1
+ import type { IncomingMessage, ServerResponse } from 'node:http';
2
+ import { type PublicRecordingImportJob } from './recording-import-contract.js';
3
+ export interface ArkmeRecordingImportRouteOptions {
4
+ expectedPort: number;
5
+ allowNonLoopback: boolean;
6
+ temporaryDirectory: string;
7
+ }
8
+ export declare const RECORDING_IMPORT_TEMPORARY_FILE_TTL_MILLIS: number;
9
+ export declare function scavengeRecordingImportTemporaryFiles(directory: string, nowMillis?: number, ttlMillis?: number, protectedPaths?: ReadonlySet<string>): Promise<number>;
10
+ interface ArkmeRecordingImportAcceptor {
11
+ recordingImportUserId(): Promise<number>;
12
+ acceptRecordingImport(sourceHandle: string, metadata: {
13
+ fileName: string;
14
+ mimeType: string;
15
+ fileSize: number;
16
+ sha256: string;
17
+ startAtMillis: number;
18
+ belongUserId: number;
19
+ }, expectedUserId: number): Promise<PublicRecordingImportJob>;
20
+ }
21
+ export declare function createArkmeRecordingImportHandler(service: ArkmeRecordingImportAcceptor, options: ArkmeRecordingImportRouteOptions): (req: IncomingMessage, res: ServerResponse) => Promise<void>;
22
+ export {};
23
+ //# sourceMappingURL=recording-import-routes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"recording-import-routes.d.ts","sourceRoot":"","sources":["../../src/recording-import-routes.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,WAAW,CAAA;AAEhE,OAAO,EAGL,KAAK,wBAAwB,EAC9B,MAAM,gCAAgC,CAAA;AAIvC,MAAM,WAAW,gCAAgC;IAC/C,YAAY,EAAE,MAAM,CAAA;IACpB,gBAAgB,EAAE,OAAO,CAAA;IACzB,kBAAkB,EAAE,MAAM,CAAA;CAC3B;AAED,eAAO,MAAM,0CAA0C,QAAmB,CAAA;AAE1E,wBAAsB,qCAAqC,CACzD,SAAS,EAAE,MAAM,EACjB,SAAS,SAAa,EACtB,SAAS,SAA6C,EACtD,cAAc,GAAE,WAAW,CAAC,MAAM,CAAa,GAC9C,OAAO,CAAC,MAAM,CAAC,CAgBjB;AAED,UAAU,4BAA4B;IACpC,qBAAqB,IAAI,OAAO,CAAC,MAAM,CAAC,CAAA;IACxC,qBAAqB,CACnB,YAAY,EAAE,MAAM,EACpB,QAAQ,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,aAAa,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAA;KAAE,EAC/H,cAAc,EAAE,MAAM,GACrB,OAAO,CAAC,wBAAwB,CAAC,CAAA;CACrC;AA8CD,wBAAgB,iCAAiC,CAC/C,OAAO,EAAE,4BAA4B,EACrC,OAAO,EAAE,gCAAgC,IAE3B,KAAK,eAAe,EAAE,KAAK,cAAc,KAAG,OAAO,CAAC,IAAI,CAAC,CAyExE"}