pronto-imessage 0.1.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.
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scoped.js","sourceRoot":"","sources":["../../src/internal/scoped.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,31 @@
1
+ export interface ProviderCheckpoint {
2
+ readonly databaseGeneration: string;
3
+ readonly rowId: number;
4
+ readonly witnesses?: readonly ProviderCheckpointWitness[];
5
+ readonly version: 1;
6
+ }
7
+ export interface ProviderCheckpointWitness {
8
+ readonly providerMessageDigest: string;
9
+ readonly rowId: number;
10
+ }
11
+ export interface CheckpointStore {
12
+ advance(databaseGeneration: string, rowId: number, witness?: ProviderCheckpointWitness): Promise<void>;
13
+ checkpoint(databaseGeneration: string): Promise<ProviderCheckpoint | undefined>;
14
+ currentCheckpoint(): Promise<ProviderCheckpoint | undefined>;
15
+ }
16
+ export declare class ProviderStateStore implements CheckpointStore {
17
+ #private;
18
+ constructor(path: string, input?: {
19
+ readonly legacyUnscopedCursor?: number;
20
+ });
21
+ checkpoint(databaseGeneration: string): Promise<ProviderCheckpoint | undefined>;
22
+ currentCheckpoint(): Promise<ProviderCheckpoint | undefined>;
23
+ advance(databaseGeneration: string, rowId: number, witness?: ProviderCheckpointWitness): Promise<void>;
24
+ }
25
+ export declare class MemoryCheckpointStore implements CheckpointStore {
26
+ #private;
27
+ checkpoint(databaseGeneration: string): Promise<ProviderCheckpoint | undefined>;
28
+ currentCheckpoint(): Promise<ProviderCheckpoint | undefined>;
29
+ advance(databaseGeneration: string, rowId: number, witness?: ProviderCheckpointWitness): Promise<void>;
30
+ }
31
+ //# sourceMappingURL=state.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../../src/internal/state.ts"],"names":[],"mappings":"AAaA,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAC;IACpC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,SAAS,CAAC,EAAE,SAAS,yBAAyB,EAAE,CAAC;IAC1D,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC;CACrB;AAED,MAAM,WAAW,yBAAyB;IACxC,QAAQ,CAAC,qBAAqB,EAAE,MAAM,CAAC;IACvC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;CACxB;AAID,MAAM,WAAW,eAAe;IAC9B,OAAO,CACL,kBAAkB,EAAE,MAAM,EAC1B,KAAK,EAAE,MAAM,EACb,OAAO,CAAC,EAAE,yBAAyB,GAClC,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,UAAU,CAAC,kBAAkB,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,GAAG,SAAS,CAAC,CAAC;IAChF,iBAAiB,IAAI,OAAO,CAAC,kBAAkB,GAAG,SAAS,CAAC,CAAC;CAC9D;AAwCD,qBAAa,kBAAmB,YAAW,eAAe;;gBAK5C,IAAI,EAAE,MAAM,EAAE,KAAK,GAAE;QAAE,QAAQ,CAAC,oBAAoB,CAAC,EAAE,MAAM,CAAA;KAAO;IAYhF,UAAU,CAAC,kBAAkB,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,GAAG,SAAS,CAAC;IAS/E,iBAAiB,IAAI,OAAO,CAAC,kBAAkB,GAAG,SAAS,CAAC;IAI5D,OAAO,CACL,kBAAkB,EAAE,MAAM,EAC1B,KAAK,EAAE,MAAM,EACb,OAAO,CAAC,EAAE,yBAAyB,GAClC,OAAO,CAAC,IAAI,CAAC;CA6FjB;AAED,qBAAa,qBAAsB,YAAW,eAAe;;IAGrD,UAAU,CAAC,kBAAkB,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,GAAG,SAAS,CAAC;IAM/E,iBAAiB,IAAI,OAAO,CAAC,kBAAkB,GAAG,SAAS,CAAC;IAI5D,OAAO,CACX,kBAAkB,EAAE,MAAM,EAC1B,KAAK,EAAE,MAAM,EACb,OAAO,CAAC,EAAE,yBAAyB,GAClC,OAAO,CAAC,IAAI,CAAC;CAGjB"}
@@ -0,0 +1,244 @@
1
+ import { constants } from "node:fs";
2
+ import { chmod, copyFile, lstat, mkdir, open, readFile, rename, rm, } from "node:fs/promises";
3
+ import { dirname } from "node:path";
4
+ const MAX_CHECKPOINT_WITNESSES = 4;
5
+ const EMPTY_STATE = { checkpoint: null, version: 2 };
6
+ function nextCheckpoint(current, databaseGeneration, rowId, witness) {
7
+ if (databaseGeneration.trim() === "" || !Number.isSafeInteger(rowId) || rowId < 0) {
8
+ throw new Error("provider_checkpoint_invalid");
9
+ }
10
+ if (witness !== undefined && !validWitness(witness, rowId)) {
11
+ throw new Error("provider_checkpoint_invalid");
12
+ }
13
+ const retained = current?.databaseGeneration === databaseGeneration
14
+ ? [...(current.witnesses ?? [])]
15
+ : [];
16
+ const witnesses = witness === undefined
17
+ ? retained
18
+ : [...retained.filter((candidate) => candidate.rowId !== witness.rowId), witness]
19
+ .sort((left, right) => left.rowId - right.rowId)
20
+ .slice(-MAX_CHECKPOINT_WITNESSES);
21
+ return {
22
+ databaseGeneration,
23
+ rowId: current?.databaseGeneration === databaseGeneration
24
+ ? Math.max(current.rowId, rowId)
25
+ : rowId,
26
+ ...(witnesses.length === 0 ? {} : { witnesses }),
27
+ version: 1,
28
+ };
29
+ }
30
+ export class ProviderStateStore {
31
+ #path;
32
+ #legacyUnscopedCursor;
33
+ #operation = Promise.resolve();
34
+ constructor(path, input = {}) {
35
+ if (path.trim() === "")
36
+ throw new Error("provider_state_path_invalid");
37
+ if (input.legacyUnscopedCursor !== undefined &&
38
+ nonNegativeInteger(input.legacyUnscopedCursor) === undefined) {
39
+ throw new Error("provider_checkpoint_invalid");
40
+ }
41
+ this.#path = path;
42
+ this.#legacyUnscopedCursor = input.legacyUnscopedCursor;
43
+ }
44
+ checkpoint(databaseGeneration) {
45
+ return this.#serialized(async () => {
46
+ const state = await this.#load();
47
+ return state.checkpoint?.databaseGeneration === databaseGeneration
48
+ ? state.checkpoint
49
+ : undefined;
50
+ });
51
+ }
52
+ currentCheckpoint() {
53
+ return this.#serialized(async () => (await this.#load()).checkpoint ?? undefined);
54
+ }
55
+ advance(databaseGeneration, rowId, witness) {
56
+ return this.#serialized(async () => {
57
+ const state = await this.#load();
58
+ await this.#save({
59
+ checkpoint: nextCheckpoint(state.checkpoint ?? undefined, databaseGeneration, rowId, witness),
60
+ ...(state.legacyUnscopedCursor === undefined
61
+ ? {}
62
+ : { legacyUnscopedCursor: state.legacyUnscopedCursor }),
63
+ version: 2,
64
+ });
65
+ });
66
+ }
67
+ async #load() {
68
+ await mkdir(dirname(this.#path), { mode: 0o700, recursive: true });
69
+ let source;
70
+ try {
71
+ const metadata = await lstat(this.#path);
72
+ if (!metadata.isFile() || metadata.isSymbolicLink()) {
73
+ throw new Error("provider_state_path_unsafe");
74
+ }
75
+ source = await readFile(this.#path, "utf8");
76
+ }
77
+ catch (error) {
78
+ if (error.code === "ENOENT") {
79
+ if (this.#legacyUnscopedCursor === undefined)
80
+ return EMPTY_STATE;
81
+ const initial = {
82
+ checkpoint: null,
83
+ legacyUnscopedCursor: this.#legacyUnscopedCursor,
84
+ version: 2,
85
+ };
86
+ await this.#save(initial);
87
+ return initial;
88
+ }
89
+ throw error;
90
+ }
91
+ let value;
92
+ try {
93
+ value = JSON.parse(source);
94
+ }
95
+ catch {
96
+ throw new Error("provider_state_invalid");
97
+ }
98
+ const record = object(value);
99
+ if (record.version === 1)
100
+ return await this.#migrateV1(record);
101
+ if (record.version !== 2)
102
+ throw new Error("provider_state_version_unsupported");
103
+ return parseV2(record);
104
+ }
105
+ async #migrateV1(value) {
106
+ const cursor = nonNegativeInteger(value.cursor);
107
+ if (cursor === undefined)
108
+ throw new Error("provider_state_invalid");
109
+ try {
110
+ await copyFile(this.#path, `${this.#path}.v1.backup`, constants.COPYFILE_EXCL);
111
+ await chmod(`${this.#path}.v1.backup`, 0o600);
112
+ }
113
+ catch (error) {
114
+ if (error.code !== "EEXIST")
115
+ throw error;
116
+ }
117
+ const migrated = {
118
+ checkpoint: null,
119
+ legacyUnscopedCursor: cursor,
120
+ version: 2,
121
+ };
122
+ await this.#save(migrated);
123
+ return migrated;
124
+ }
125
+ async #save(state) {
126
+ const temporaryPath = `${this.#path}.tmp-${process.pid}-${Date.now()}`;
127
+ const file = await open(temporaryPath, "wx", 0o600);
128
+ try {
129
+ await file.writeFile(`${JSON.stringify(state)}\n`, "utf8");
130
+ await file.sync();
131
+ }
132
+ finally {
133
+ await file.close();
134
+ }
135
+ try {
136
+ await rename(temporaryPath, this.#path);
137
+ await chmod(this.#path, 0o600);
138
+ }
139
+ catch (error) {
140
+ await rm(temporaryPath, { force: true });
141
+ throw error;
142
+ }
143
+ }
144
+ #serialized(operation) {
145
+ const result = this.#operation.then(operation, operation);
146
+ this.#operation = result.then(() => undefined, () => undefined);
147
+ return result;
148
+ }
149
+ }
150
+ export class MemoryCheckpointStore {
151
+ #checkpoint;
152
+ async checkpoint(databaseGeneration) {
153
+ return this.#checkpoint?.databaseGeneration === databaseGeneration
154
+ ? this.#checkpoint
155
+ : undefined;
156
+ }
157
+ async currentCheckpoint() {
158
+ return this.#checkpoint;
159
+ }
160
+ async advance(databaseGeneration, rowId, witness) {
161
+ this.#checkpoint = nextCheckpoint(this.#checkpoint, databaseGeneration, rowId, witness);
162
+ }
163
+ }
164
+ function parseV2(value) {
165
+ const checkpoint = value.checkpoint;
166
+ const legacyUnscopedCursor = value.legacyUnscopedCursor;
167
+ if (checkpoint !== null && checkpoint !== undefined) {
168
+ const candidate = object(checkpoint);
169
+ const rowId = nonNegativeInteger(candidate.rowId);
170
+ if (candidate.version !== 1 ||
171
+ typeof candidate.databaseGeneration !== "string" ||
172
+ candidate.databaseGeneration.trim() === "" ||
173
+ rowId === undefined) {
174
+ throw new Error("provider_state_invalid");
175
+ }
176
+ if (legacyUnscopedCursor !== undefined && nonNegativeInteger(legacyUnscopedCursor) === undefined) {
177
+ throw new Error("provider_state_invalid");
178
+ }
179
+ return {
180
+ checkpoint: {
181
+ databaseGeneration: candidate.databaseGeneration,
182
+ rowId,
183
+ ...providerCheckpointWitnessList(candidate, rowId),
184
+ version: 1,
185
+ },
186
+ ...(legacyUnscopedCursor === undefined
187
+ ? {}
188
+ : { legacyUnscopedCursor: Number(legacyUnscopedCursor) }),
189
+ version: 2,
190
+ };
191
+ }
192
+ if (legacyUnscopedCursor !== undefined && nonNegativeInteger(legacyUnscopedCursor) === undefined) {
193
+ throw new Error("provider_state_invalid");
194
+ }
195
+ return {
196
+ checkpoint: null,
197
+ ...(legacyUnscopedCursor === undefined
198
+ ? {}
199
+ : { legacyUnscopedCursor: Number(legacyUnscopedCursor) }),
200
+ version: 2,
201
+ };
202
+ }
203
+ function providerCheckpointWitness(value, checkpointRowId) {
204
+ const witness = object(value);
205
+ const rowId = nonNegativeInteger(witness.rowId);
206
+ if (rowId === undefined || rowId <= 0 || rowId > checkpointRowId ||
207
+ typeof witness.providerMessageDigest !== "string" || witness.providerMessageDigest.trim() === "") {
208
+ throw new Error("provider_state_invalid");
209
+ }
210
+ return {
211
+ providerMessageDigest: witness.providerMessageDigest,
212
+ rowId,
213
+ };
214
+ }
215
+ function providerCheckpointWitnessList(checkpoint, checkpointRowId) {
216
+ const source = checkpoint.witnesses ??
217
+ (checkpoint.witness === undefined ? undefined : [checkpoint.witness]);
218
+ if (source === undefined)
219
+ return {};
220
+ if (!Array.isArray(source) || source.length === 0 || source.length > MAX_CHECKPOINT_WITNESSES) {
221
+ throw new Error("provider_state_invalid");
222
+ }
223
+ const witnesses = source.map((value) => providerCheckpointWitness(value, checkpointRowId));
224
+ if (new Set(witnesses.map((witness) => witness.rowId)).size !== witnesses.length) {
225
+ throw new Error("provider_state_invalid");
226
+ }
227
+ return { witnesses: witnesses.sort((left, right) => left.rowId - right.rowId) };
228
+ }
229
+ function validWitness(witness, checkpointRowId) {
230
+ return Number.isSafeInteger(witness.rowId) && witness.rowId > 0 &&
231
+ witness.rowId <= checkpointRowId && witness.providerMessageDigest.trim() !== "";
232
+ }
233
+ function object(value) {
234
+ if (value === null || typeof value !== "object" || Array.isArray(value)) {
235
+ throw new Error("provider_state_invalid");
236
+ }
237
+ return value;
238
+ }
239
+ function nonNegativeInteger(value) {
240
+ return typeof value === "number" && Number.isSafeInteger(value) && value >= 0
241
+ ? value
242
+ : undefined;
243
+ }
244
+ //# sourceMappingURL=state.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"state.js","sourceRoot":"","sources":["../../src/internal/state.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,161 @@
1
+ export interface ConversationReference {
2
+ readonly chatId: number;
3
+ readonly expiresAt: string;
4
+ readonly provider: "apple-messages";
5
+ readonly token: string;
6
+ readonly version: 1;
7
+ }
8
+ export interface AttachmentReference {
9
+ readonly expiresAt: string;
10
+ readonly provider: "apple-messages";
11
+ readonly token: string;
12
+ readonly version: 1;
13
+ }
14
+ export interface ConversationFacts {
15
+ readonly ownerParticipated: boolean;
16
+ readonly service: string | null;
17
+ }
18
+ export interface MessagesAttachment {
19
+ readonly available: boolean;
20
+ readonly mimeType: string | null;
21
+ readonly name: string | null;
22
+ readonly providerAttachmentId: string | null;
23
+ readonly reference?: AttachmentReference;
24
+ readonly sizeBytes: number | null;
25
+ }
26
+ export interface MessagesEvent {
27
+ readonly conversation: ConversationReference;
28
+ readonly conversationFacts: ConversationFacts;
29
+ readonly message: {
30
+ readonly attachments: readonly MessagesAttachment[];
31
+ readonly fromMe: boolean;
32
+ readonly kind: "message" | "poll" | "reaction";
33
+ readonly occurredAt: string | null;
34
+ readonly providerMessageId: string;
35
+ readonly reaction: {
36
+ readonly added: boolean | null;
37
+ readonly targetProviderMessageId: string;
38
+ readonly type: string;
39
+ } | null;
40
+ readonly rowId: number;
41
+ readonly replyToProviderMessageId: string | null;
42
+ readonly replyToText: string | null;
43
+ readonly sender: string | null;
44
+ readonly selfChatMirror: boolean;
45
+ readonly service: string | null;
46
+ readonly text: string | null;
47
+ readonly urlPreview: boolean;
48
+ };
49
+ readonly provider: "apple-messages";
50
+ readonly version: 1;
51
+ }
52
+ export type DeliveryOutcome = {
53
+ readonly providerMessageId: string;
54
+ readonly status: "confirmed";
55
+ } | {
56
+ readonly status: "ambiguous";
57
+ } | {
58
+ readonly retryable: boolean;
59
+ readonly status: "failed";
60
+ };
61
+ export interface MessagesQualification {
62
+ readonly databaseGeneration: string;
63
+ readonly degradedCapabilities: readonly string[];
64
+ readonly providerVersion: string;
65
+ readonly status: "ready";
66
+ }
67
+ export type MessagesRecoveryReason = "age-limit" | "database-generation-changed" | "database-generation-unavailable" | "duration-limit" | "invalid-provider-page" | "provider-unavailable" | "row-limit";
68
+ export type MessagesRecoveryOutcome = {
69
+ readonly rows: number;
70
+ readonly status: "recovered";
71
+ } | {
72
+ readonly action: "live-events-only";
73
+ readonly reason: MessagesRecoveryReason;
74
+ readonly rows: number;
75
+ readonly status: "degraded";
76
+ };
77
+ export interface MessagesDiagnostics {
78
+ readonly attempt: number;
79
+ readonly catchUpRows: number;
80
+ readonly databaseGenerationDigest?: string;
81
+ readonly nextRetryAt?: string;
82
+ readonly recoveryReason?: MessagesRecoveryReason;
83
+ readonly restartCount: number;
84
+ readonly state: "closed" | "degraded" | "ready" | "recovering" | "starting";
85
+ }
86
+ export interface MessagesRecoveryLimits {
87
+ readonly maxAgeMs?: number;
88
+ readonly maxDurationMs?: number;
89
+ readonly maxRows?: number;
90
+ }
91
+ export interface MessagesScopeLimits {
92
+ readonly maxAttachmentBytes?: number;
93
+ readonly maxAttachmentCount?: number;
94
+ readonly maxHistoryBytes?: number;
95
+ readonly maxHistoryMessages?: number;
96
+ readonly maxHistoryRows?: number;
97
+ readonly maxHistoryRpcCalls?: number;
98
+ readonly ttlMs?: number;
99
+ }
100
+ export interface MessagesHistoryBudget {
101
+ readonly maxBytes: number;
102
+ readonly maxMessages: number;
103
+ readonly maxRows: number;
104
+ readonly maxRpcCalls: number;
105
+ }
106
+ export interface MessagesHistoryPage {
107
+ readonly continuation?: string;
108
+ readonly hasMore: boolean;
109
+ readonly messages: readonly MessagesEvent[];
110
+ readonly scannedBytes: number;
111
+ readonly scannedRows: number;
112
+ }
113
+ export interface MaterializedAttachment {
114
+ dispose(): Promise<void>;
115
+ readonly mimeType: string;
116
+ readonly name: string;
117
+ readonly path: string;
118
+ readonly sha256: string;
119
+ readonly sizeBytes: number;
120
+ }
121
+ export interface CreateProntoMessagesOptions {
122
+ readonly attachmentsRoot?: string;
123
+ readonly imsgPath: string;
124
+ readonly legacyUnscopedCursor?: number;
125
+ readonly recoveryLimits?: MessagesRecoveryLimits;
126
+ readonly referenceKey?: string;
127
+ readonly scopeLimits?: MessagesScopeLimits;
128
+ readonly scratchRoot?: string;
129
+ readonly statePath?: string;
130
+ }
131
+ export interface MessagesSubscription {
132
+ close(): Promise<void>;
133
+ readonly terminated: Promise<void>;
134
+ }
135
+ export interface ProntoMessages {
136
+ close(): Promise<void>;
137
+ diagnostics(): MessagesDiagnostics;
138
+ history(input: {
139
+ readonly budget: MessagesHistoryBudget;
140
+ readonly continuation?: string;
141
+ readonly conversation: ConversationReference;
142
+ readonly includeReactions?: boolean;
143
+ readonly mode?: "forward" | "recent";
144
+ }): Promise<MessagesHistoryPage>;
145
+ materializeAttachment(input: {
146
+ readonly attachment: AttachmentReference;
147
+ readonly conversation: ConversationReference;
148
+ readonly maxBytes: number;
149
+ }): Promise<MaterializedAttachment>;
150
+ qualify(): Promise<MessagesQualification>;
151
+ reply(input: {
152
+ readonly conversation: ConversationReference;
153
+ readonly text: string;
154
+ }): Promise<DeliveryOutcome>;
155
+ subscribe(input: {
156
+ readonly onEvent: (event: MessagesEvent) => void | Promise<void>;
157
+ readonly onOverflow?: (resumeAfterRowId: number) => void | Promise<void>;
158
+ readonly onRecovery?: (outcome: MessagesRecoveryOutcome) => void | Promise<void>;
159
+ }): Promise<MessagesSubscription>;
160
+ }
161
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/dist/types.js ADDED
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":""}
package/package.json ADDED
@@ -0,0 +1,36 @@
1
+ {
2
+ "name": "pronto-imessage",
3
+ "version": "0.1.0",
4
+ "description": "Reusable local Apple Messages transport for Pronto consumers",
5
+ "type": "module",
6
+ "license": "MIT",
7
+ "homepage": "https://github.com/eabnelson/pronto#readme",
8
+ "repository": {
9
+ "type": "git",
10
+ "url": "git+https://github.com/eabnelson/pronto.git",
11
+ "directory": "packages/messages"
12
+ },
13
+ "main": "./dist/index.js",
14
+ "types": "./dist/index.d.ts",
15
+ "files": [
16
+ "dist"
17
+ ],
18
+ "exports": {
19
+ ".": {
20
+ "types": "./dist/index.d.ts",
21
+ "bun": "./dist/index.js",
22
+ "import": "./dist/index.js"
23
+ }
24
+ },
25
+ "engines": {
26
+ "node": ">=22"
27
+ },
28
+ "keywords": [
29
+ "imessage",
30
+ "macos",
31
+ "messages"
32
+ ],
33
+ "scripts": {
34
+ "build": "tsc -p tsconfig.json"
35
+ }
36
+ }