@instantdb/platform 1.0.60 → 1.0.61

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 (42) hide show
  1. package/.turbo/turbo-build.log +9 -9
  2. package/__tests__/src/backupDownload.test.ts +193 -0
  3. package/__tests__/src/backups.test.ts +168 -0
  4. package/dist/commonjs/api.d.ts +7 -0
  5. package/dist/commonjs/api.d.ts.map +1 -1
  6. package/dist/commonjs/api.js +10 -0
  7. package/dist/commonjs/api.js.map +1 -1
  8. package/dist/commonjs/backupDownload.d.ts +74 -0
  9. package/dist/commonjs/backupDownload.d.ts.map +1 -0
  10. package/dist/commonjs/backupDownload.js +255 -0
  11. package/dist/commonjs/backupDownload.js.map +1 -0
  12. package/dist/commonjs/backups.d.ts +146 -0
  13. package/dist/commonjs/backups.d.ts.map +1 -0
  14. package/dist/commonjs/backups.js +248 -0
  15. package/dist/commonjs/backups.js.map +1 -0
  16. package/dist/commonjs/index.d.ts +2 -0
  17. package/dist/commonjs/index.d.ts.map +1 -1
  18. package/dist/commonjs/index.js +7 -1
  19. package/dist/commonjs/index.js.map +1 -1
  20. package/dist/esm/api.d.ts +7 -0
  21. package/dist/esm/api.d.ts.map +1 -1
  22. package/dist/esm/api.js +10 -0
  23. package/dist/esm/api.js.map +1 -1
  24. package/dist/esm/backupDownload.d.ts +74 -0
  25. package/dist/esm/backupDownload.d.ts.map +1 -0
  26. package/dist/esm/backupDownload.js +252 -0
  27. package/dist/esm/backupDownload.js.map +1 -0
  28. package/dist/esm/backups.d.ts +146 -0
  29. package/dist/esm/backups.d.ts.map +1 -0
  30. package/dist/esm/backups.js +237 -0
  31. package/dist/esm/backups.js.map +1 -0
  32. package/dist/esm/index.d.ts +2 -0
  33. package/dist/esm/index.d.ts.map +1 -1
  34. package/dist/esm/index.js +1 -0
  35. package/dist/esm/index.js.map +1 -1
  36. package/dist/standalone/index.js +1929 -1610
  37. package/dist/standalone/index.umd.cjs +24 -22
  38. package/package.json +4 -4
  39. package/src/api.ts +15 -0
  40. package/src/backupDownload.ts +364 -0
  41. package/src/backups.ts +342 -0
  42. package/src/index.ts +18 -0
@@ -1,35 +1,35 @@
1
1
 
2
- > @instantdb/platform@1.0.60 build /home/runner/work/instant/instant/client/packages/platform
2
+ > @instantdb/platform@1.0.61 build /home/runner/work/instant/instant/client/packages/platform
3
3
  > rm -rf dist; npm run build:tshy && npm run build:standalone && npm run check-exports
4
4
 
5
5
  npm warn Unknown env config "verify-deps-before-run". This will stop working in the next major version of npm. See `npm help npmrc` for supported config options.
6
6
  npm warn Unknown user config "always-auth". This will stop working in the next major version of npm. See `npm help npmrc` for supported config options.
7
7
 
8
- > @instantdb/platform@1.0.60 build:tshy
8
+ > @instantdb/platform@1.0.61 build:tshy
9
9
  > tshy
10
10
 
11
11
  npm warn Unknown env config "verify-deps-before-run". This will stop working in the next major version of npm. See `npm help npmrc` for supported config options.
12
12
  npm warn Unknown user config "always-auth". This will stop working in the next major version of npm. See `npm help npmrc` for supported config options.
13
13
 
14
- > @instantdb/platform@1.0.60 build:standalone
14
+ > @instantdb/platform@1.0.61 build:standalone
15
15
  > vite build
16
16
 
17
17
  vite v5.4.14 building for production...
18
18
  transforming...
19
- ✓ 86 modules transformed.
19
+ ✓ 88 modules transformed.
20
20
  rendering chunks...
21
21
  computing gzip size...
22
- dist/standalone/index.umd.cjs 364.66 kB │ gzip: 100.37 kB
23
- dist/standalone/index.js 486.68 kB │ gzip: 116.95 kB
24
- ✓ built in 3.46s
22
+ dist/standalone/index.umd.cjs 370.53 kB │ gzip: 102.56 kB
23
+ dist/standalone/index.js 496.65 kB │ gzip: 119.99 kB
24
+ ✓ built in 2.75s
25
25
  npm warn Unknown env config "verify-deps-before-run". This will stop working in the next major version of npm. See `npm help npmrc` for supported config options.
26
26
  npm warn Unknown user config "always-auth". This will stop working in the next major version of npm. See `npm help npmrc` for supported config options.
27
27
 
28
- > @instantdb/platform@1.0.60 check-exports
28
+ > @instantdb/platform@1.0.61 check-exports
29
29
  > attw --pack .
30
30
 
31
31
 
32
- @instantdb/platform v1.0.60
32
+ @instantdb/platform v1.0.61
33
33
 
34
34
  Build tools:
35
35
  - @arethetypeswrong/cli@^0.18.5
@@ -0,0 +1,193 @@
1
+ import { describe, expect, test } from 'vitest';
2
+ import { downloadBackupArchive } from '../../src/backupDownload.ts';
3
+ import type { AppBackup } from '../../src/backups.ts';
4
+
5
+ const backup: AppBackup = {
6
+ id: 'backup-1',
7
+ isn: '1',
8
+ backupAt: new Date('2026-08-01T00:00:00Z'),
9
+ filesSize: 16,
10
+ dbSize: 100,
11
+ uncompressedSize: 40,
12
+ description: null,
13
+ expiresAt: null,
14
+ };
15
+
16
+ const bodyOf = (text: string) =>
17
+ new ReadableStream<Uint8Array>({
18
+ start(controller) {
19
+ controller.enqueue(new TextEncoder().encode(text));
20
+ controller.close();
21
+ },
22
+ });
23
+
24
+ const fetchBody = async (url: string) => bodyOf(`body:${url}`);
25
+
26
+ const listFiles = async () => [
27
+ { name: 'config.json', size: 1 },
28
+ { name: 'entities/todos.jsonl', size: 1 },
29
+ ];
30
+ const getFileUrl = async (_backupId: string, name: string) => name;
31
+
32
+ // Minimal archive writer: records entry names, drains each input, and writes
33
+ // a byte through the counting sink so zipBytes moves like a real encoder.
34
+ const makeWriter =
35
+ (names: string[]) => async (sink: WritableStream<Uint8Array>) => {
36
+ const w = sink.getWriter();
37
+ return {
38
+ add: async (name: string, input: ReadableStream<Uint8Array>) => {
39
+ names.push(name);
40
+ for await (const _chunk of input) {
41
+ // drain
42
+ }
43
+ await w.write(new Uint8Array([0]));
44
+ },
45
+ close: () => w.close(),
46
+ };
47
+ };
48
+
49
+ const nullSink = () => new WritableStream<Uint8Array>({ write() {} });
50
+
51
+ describe('downloadBackupArchive', () => {
52
+ test('writes entries in canonical order through the injected writer', async () => {
53
+ const names: string[] = [];
54
+ const manager = {
55
+ listFiles,
56
+ getFileUrl,
57
+ streamStorageFiles: async function* () {
58
+ yield { locationId: 'loc-1', path: 'a.png', url: 'loc-1-url' };
59
+ },
60
+ } as any;
61
+
62
+ const result = await downloadBackupArchive({
63
+ manager,
64
+ backup,
65
+ fetchBody,
66
+ sink: nullSink(),
67
+ createWriter: makeWriter(names),
68
+ });
69
+
70
+ expect(names).toEqual([
71
+ 'config.json',
72
+ 'entities/todos.jsonl',
73
+ 'files/loc-1',
74
+ ]);
75
+ expect(result.entities).toBe(1);
76
+ expect(result.files).toBe(1);
77
+ expect(result.zipBytes).toBe(3);
78
+ });
79
+
80
+ test('counts an entry as completed only after the writer consumed it', async () => {
81
+ const seen: Array<{
82
+ name: string;
83
+ entitiesCompleted: number;
84
+ filesCompleted: number;
85
+ }> = [];
86
+ let last = { entitiesCompleted: 0, filesCompleted: 0 };
87
+ const createWriter = async (sink: WritableStream<Uint8Array>) => {
88
+ const w = sink.getWriter();
89
+ return {
90
+ add: async (name: string, input: ReadableStream<Uint8Array>) => {
91
+ seen.push({ name, ...last });
92
+ for await (const _chunk of input) {
93
+ // drain
94
+ }
95
+ await w.write(new Uint8Array([0]));
96
+ },
97
+ close: () => w.close(),
98
+ };
99
+ };
100
+ const manager = {
101
+ listFiles,
102
+ getFileUrl,
103
+ streamStorageFiles: async function* () {
104
+ yield { locationId: 'loc-1', path: 'a.png', url: 'loc-1-url' };
105
+ },
106
+ } as any;
107
+
108
+ await downloadBackupArchive({
109
+ manager,
110
+ backup,
111
+ fetchBody,
112
+ sink: nullSink(),
113
+ createWriter,
114
+ onProgress: (p) => {
115
+ last = {
116
+ entitiesCompleted: p.entitiesCompleted,
117
+ filesCompleted: p.filesCompleted,
118
+ };
119
+ },
120
+ });
121
+
122
+ // At the moment each add starts, the entry being written isn't counted.
123
+ expect(seen).toEqual([
124
+ { name: 'config.json', entitiesCompleted: 0, filesCompleted: 0 },
125
+ { name: 'entities/todos.jsonl', entitiesCompleted: 0, filesCompleted: 0 },
126
+ { name: 'files/loc-1', entitiesCompleted: 1, filesCompleted: 0 },
127
+ ]);
128
+ });
129
+
130
+ test('a cancellation while storage discovery is idle rejects instead of completing', async () => {
131
+ const controller = new AbortController();
132
+ const manager = {
133
+ listFiles,
134
+ getFileUrl,
135
+ // Yields one file, then holds the stream open like a server with more
136
+ // to send, rejecting with AbortError when the download is cancelled —
137
+ // the same shape as a real aborted fetch.
138
+ streamStorageFiles: (
139
+ _backupId: string,
140
+ opts?: { signal?: AbortSignal },
141
+ ) =>
142
+ (async function* () {
143
+ yield { locationId: 'loc-1', path: 'a.png', url: 'loc-1-url' };
144
+ yield await new Promise<never>((_resolve, reject) => {
145
+ opts?.signal?.addEventListener('abort', () =>
146
+ reject(
147
+ Object.assign(new Error('aborted'), { name: 'AbortError' }),
148
+ ),
149
+ );
150
+ });
151
+ })(),
152
+ } as any;
153
+
154
+ const promise = downloadBackupArchive({
155
+ manager,
156
+ backup,
157
+ fetchBody,
158
+ sink: nullSink(),
159
+ createWriter: makeWriter([]),
160
+ signal: controller.signal,
161
+ onProgress: (p) => {
162
+ // Cancel once the only discovered file is fully written and the
163
+ // drain loop is about to go idle.
164
+ if (p.filesCompleted === 1) controller.abort();
165
+ },
166
+ });
167
+
168
+ await expect(promise).rejects.toMatchObject({ name: 'AbortError' });
169
+ });
170
+
171
+ test('names a pathless storage file by locationId when its download fails', async () => {
172
+ const manager = {
173
+ listFiles,
174
+ getFileUrl,
175
+ streamStorageFiles: async function* () {
176
+ yield { locationId: 'loc-9', path: null, url: 'bad-url' };
177
+ },
178
+ } as any;
179
+
180
+ await expect(
181
+ downloadBackupArchive({
182
+ manager,
183
+ backup,
184
+ fetchBody: async (url: string) => {
185
+ if (url === 'bad-url') throw new Error('HTTP 500');
186
+ return bodyOf('x');
187
+ },
188
+ sink: nullSink(),
189
+ createWriter: makeWriter([]),
190
+ }),
191
+ ).rejects.toThrow('Couldn\'t download storage file "loc-9" (HTTP 500).');
192
+ });
193
+ });
@@ -0,0 +1,168 @@
1
+ import { afterEach, describe, expect, test, vi } from 'vitest';
2
+ import {
3
+ BackupsManager,
4
+ backupZipName,
5
+ formatFileSize,
6
+ type AppBackupStorageFile,
7
+ } from '../../src/backups.ts';
8
+
9
+ const makeManager = () =>
10
+ new BackupsManager({
11
+ appId: 'app-1',
12
+ apiURI: 'http://api.test',
13
+ withAuth: (operation) => operation('test-token'),
14
+ });
15
+
16
+ const streamOf = (chunks: string[]) =>
17
+ new ReadableStream<Uint8Array>({
18
+ start(controller) {
19
+ const encoder = new TextEncoder();
20
+ for (const chunk of chunks) {
21
+ controller.enqueue(encoder.encode(chunk));
22
+ }
23
+ controller.close();
24
+ },
25
+ });
26
+
27
+ const stubFetchBody = (chunks: string[]) => {
28
+ vi.stubGlobal(
29
+ 'fetch',
30
+ vi.fn(async () => new Response(streamOf(chunks), { status: 200 })),
31
+ );
32
+ };
33
+
34
+ const collect = async (manager: BackupsManager) => {
35
+ const files: AppBackupStorageFile[] = [];
36
+ for await (const file of manager.streamStorageFiles('backup-1')) {
37
+ files.push(file);
38
+ }
39
+ return files;
40
+ };
41
+
42
+ afterEach(() => {
43
+ vi.unstubAllGlobals();
44
+ });
45
+
46
+ describe('streamStorageFiles', () => {
47
+ test('yields files and completes on the done sentinel', async () => {
48
+ stubFetchBody([
49
+ '{"locationId":"loc-1","path":"a.png","url":"http://s3/loc-1"}\n',
50
+ '{"locationId":"loc-2","path":"b.png","url":"http://s3/loc-2"}\n',
51
+ '{"done":true}\n',
52
+ ]);
53
+
54
+ const files = await collect(makeManager());
55
+ expect(files).toEqual([
56
+ { locationId: 'loc-1', path: 'a.png', url: 'http://s3/loc-1' },
57
+ { locationId: 'loc-2', path: 'b.png', url: 'http://s3/loc-2' },
58
+ ]);
59
+ });
60
+
61
+ test('handles lines split across chunks', async () => {
62
+ stubFetchBody([
63
+ '{"locationId":"loc-1","pa',
64
+ 'th":"a.png","url":"http://s3/loc-1"}\n{"done"',
65
+ ':true}\n',
66
+ ]);
67
+
68
+ const files = await collect(makeManager());
69
+ expect(files).toEqual([
70
+ { locationId: 'loc-1', path: 'a.png', url: 'http://s3/loc-1' },
71
+ ]);
72
+ });
73
+
74
+ test('throws on a record without a locationId or url', async () => {
75
+ stubFetchBody([
76
+ '{"path":"orphan.png"}\n',
77
+ '{"locationId":"loc-1","path":"a.png","url":"http://s3/loc-1"}\n',
78
+ '{"done":true}\n',
79
+ ]);
80
+
81
+ await expect(collect(makeManager())).rejects.toThrow(/malformed record/);
82
+ });
83
+
84
+ test('only accepts an exact done sentinel', async () => {
85
+ stubFetchBody([
86
+ '{"locationId":"loc-1","path":"a.png","url":"http://s3/loc-1"}\n',
87
+ '{"done":1}\n',
88
+ ]);
89
+
90
+ await expect(collect(makeManager())).rejects.toThrow(/malformed record/);
91
+ });
92
+
93
+ test('completes without files when the app has none', async () => {
94
+ stubFetchBody(['{"done":true}\n']);
95
+ expect(await collect(makeManager())).toEqual([]);
96
+ });
97
+
98
+ test('rejects a locationId that could escape the archive path', async () => {
99
+ stubFetchBody([
100
+ '{"locationId":"../evil","path":"a.png","url":"http://s3/loc-1"}\n',
101
+ '{"done":true}\n',
102
+ ]);
103
+
104
+ await expect(collect(makeManager())).rejects.toThrow(/malformed record/);
105
+ });
106
+
107
+ test('throws when the stream ends without the done sentinel', async () => {
108
+ stubFetchBody([
109
+ '{"locationId":"loc-1","path":"a.png","url":"http://s3/loc-1"}\n',
110
+ ]);
111
+
112
+ await expect(collect(makeManager())).rejects.toThrow(
113
+ /ended before it finished/,
114
+ );
115
+ });
116
+ });
117
+
118
+ describe('list', () => {
119
+ test('coerces the server row into an AppBackup', async () => {
120
+ vi.stubGlobal(
121
+ 'fetch',
122
+ vi.fn(async () =>
123
+ Response.json({
124
+ backups: [
125
+ {
126
+ id: 'backup-1',
127
+ isn: '42',
128
+ backup_at: '2026-08-05T07:12:00Z',
129
+ files_size: 100,
130
+ db_size: 200,
131
+ uncompressed_size: 300,
132
+ description: 'Automated Daily Snapshot',
133
+ expires_at: '2026-08-12T07:12:00Z',
134
+ },
135
+ ],
136
+ }),
137
+ ),
138
+ );
139
+
140
+ const [backup] = await makeManager().list();
141
+ expect(backup).toEqual({
142
+ id: 'backup-1',
143
+ isn: '42',
144
+ backupAt: new Date('2026-08-05T07:12:00Z'),
145
+ filesSize: 100,
146
+ dbSize: 200,
147
+ uncompressedSize: 300,
148
+ description: 'Automated Daily Snapshot',
149
+ expiresAt: new Date('2026-08-12T07:12:00Z'),
150
+ });
151
+ expect(backupZipName(backup)).toBe(
152
+ 'instant-backup-2026-08-05T07-12-00-000Z.zip',
153
+ );
154
+ });
155
+ });
156
+
157
+ describe('formatFileSize', () => {
158
+ test('formats with decimal units and adaptive precision', () => {
159
+ expect(formatFileSize(999)).toBe('999 B');
160
+ expect(formatFileSize(3510)).toBe('3.51 KB');
161
+ expect(formatFileSize(1_540_000_000)).toBe('1.54 GB');
162
+ });
163
+
164
+ test('promotes across the unit boundary when rounding', () => {
165
+ expect(formatFileSize(999_500)).toBe('1.00 MB');
166
+ expect(formatFileSize(999_999_500)).toBe('1.00 GB');
167
+ });
168
+ });
@@ -1,5 +1,6 @@
1
1
  import { InstantRules, InstantSchemaDef, InstantUnknownSchema, EntitiesDef, LinksDef, RoomsDef, InstantDBAttr, InstantDBIdent, InstantDBCheckedDataType } from '@instantdb/core';
2
2
  import { Webhooks } from '@instantdb/webhooks';
3
+ import { BackupsManager } from './backups.ts';
3
4
  import { InstantAPIPlatformSchema, InstantAPISchemaPlanStep, InstantAPISchemaPushStep } from './schema.ts';
4
5
  import { ProgressPromise } from './ProgressPromise.ts';
5
6
  import { RenameCommand } from './migrations.ts';
@@ -464,6 +465,12 @@ export declare class PlatformApi {
464
465
  webhooks<Schema extends InstantSchemaDef<any, any, any> = InstantUnknownSchema>(appId: string, opts?: {
465
466
  schema?: Schema;
466
467
  }): Webhooks<Schema>;
468
+ /**
469
+ * Returns a {@link BackupsManager} scoped to `appId` for listing an app's
470
+ * backups and downloading their contents. Calls are routed through
471
+ * {@link withRetry}, so an expired access token is transparently refreshed.
472
+ */
473
+ backups(appId: string): BackupsManager;
467
474
  }
468
475
  export {};
469
476
  //# sourceMappingURL=api.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../src/api.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,YAAY,EACZ,gBAAgB,EAChB,oBAAoB,EACpB,WAAW,EACX,QAAQ,EACR,QAAQ,EACR,aAAa,EACb,cAAc,EACd,wBAAwB,EAIzB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,QAAQ,EAAiB,MAAM,qBAAqB,CAAC;AAE9D,OAAO,EAML,wBAAwB,EACxB,wBAAwB,EACxB,wBAAwB,EAEzB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAQvD,OAAO,EAIL,aAAa,EACd,MAAM,iBAAiB,CAAC;AAEzB,KAAK,QAAQ,CAAC,CAAC,IAAI;KAChB,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CACrB,GAAG,EAAE,CAAC;AAEP,KAAK,WAAW,GAAG;IACjB,YAAY,CAAC,EAAE,OAAO,GAAG,IAAI,GAAG,SAAS,CAAC;IAC1C,aAAa,CAAC,EAAE,OAAO,GAAG,IAAI,GAAG,SAAS,CAAC;CAC5C,CAAC;AAyBF,MAAM,MAAM,oBAAoB,CAAC,IAAI,SAAS,WAAW,GAAG,SAAS,IACnE,QAAQ,CACN;IACE,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,IAAI,CAAC;IAChB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CACtB,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,cAAc,CAAC,SAAS,IAAI,GAC/C;IAAE,KAAK,EAAE,YAAY,CAAA;CAAE,GACvB,EAAE,CAAC,GACL,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,eAAe,CAAC,SAAS,IAAI,GAC5C;IACE,MAAM,EAAE,gBAAgB,CACtB,WAAW,EACX,QAAQ,CAAC,WAAW,CAAC,EACrB,QAAQ,CACT,CAAC;CACH,GACD,EAAE,CAAC,CACV,CAAC;AAEJ,MAAM,MAAM,oBAAoB,GAAG;IACjC,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,IAAI,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,wBAAwB,CAAC,IAAI,SAAS,WAAW,IAAI,QAAQ,CAAC;IACxE,GAAG,EAAE,oBAAoB,CAAC,IAAI,CAAC,CAAC;CACjC,CAAC,CAAC;AAEH,MAAM,MAAM,0BAA0B,CAAC,IAAI,SAAS,WAAW,GAAG,SAAS,IACzE,QAAQ,CAAC;IACP,IAAI,EAAE,oBAAoB,CAAC,IAAI,CAAC,EAAE,CAAC;CACpC,CAAC,CAAC;AAEL,MAAM,MAAM,0BAA0B,GAAG;IACvC,IAAI,EAAE,oBAAoB,EAAE,CAAC;CAC9B,CAAC;AAEF,MAAM,MAAM,8BAA8B,GAAG;IAC3C,MAAM,EAAE,gBAAgB,CAAC,WAAW,EAAE,QAAQ,CAAC,WAAW,CAAC,EAAE,QAAQ,CAAC,CAAC;CACxE,CAAC;AAEF,MAAM,MAAM,6BAA6B,GAAG;IAAE,KAAK,EAAE,YAAY,CAAA;CAAE,CAAC;AAEpE,MAAM,MAAM,uBAAuB,GAAG;IACpC,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EACH,gBAAgB,CAAC,WAAW,EAAE,QAAQ,CAAC,WAAW,CAAC,EAAE,QAAQ,CAAC,GAC9D,IAAI,GACJ,SAAS,CAAC;IACd,KAAK,CAAC,EAAE,YAAY,GAAG,IAAI,GAAG,SAAS,CAAC;IACxC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;CACnC,CAAC;AAEF,MAAM,MAAM,gCAAgC,GAAG;IAC7C,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EACH,gBAAgB,CAAC,WAAW,EAAE,QAAQ,CAAC,WAAW,CAAC,EAAE,QAAQ,CAAC,GAC9D,IAAI,GACJ,SAAS,CAAC;IACd,KAAK,CAAC,EAAE;QACN,IAAI,EAAE,YAAY,CAAC;KACpB,GAAG,IAAI,CAAC;CACV,CAAC;AAEF,MAAM,MAAM,oCAAoC,GAAG;IACjD,GAAG,EAAE,QAAQ,CACX,oBAAoB,CAAC;QAAE,YAAY,EAAE,KAAK,CAAC;QAAC,aAAa,EAAE,KAAK,CAAA;KAAE,CAAC,GAAG;QACpE,UAAU,EAAE,MAAM,CAAC;KACpB,CACF,CAAC;IACF,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,2BAA2B,GAAG,QAAQ,CAAC;IACjD,GAAG,EAAE,oBAAoB,CAAC;QAAE,YAAY,EAAE,IAAI,CAAC;QAAC,aAAa,EAAE,IAAI,CAAA;KAAE,CAAC,GAAG;QACvE,UAAU,EAAE,MAAM,CAAC;KACpB,CAAC;CACH,CAAC,CAAC;AAEH,MAAM,MAAM,uBAAuB,GAAG;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AAExD,MAAM,MAAM,2BAA2B,GAAG,QAAQ,CAAC;IACjD,GAAG,EAAE,oBAAoB,CAAC,EAAE,CAAC,CAAC;CAC/B,CAAC,CAAC;AAEH,MAAM,MAAM,2BAA2B,GAAG,QAAQ,CAAC;IACjD,GAAG,EAAE,oBAAoB,CAAC,EAAE,CAAC,CAAC;CAC/B,CAAC,CAAC;AAEH,MAAM,MAAM,wBAAwB,GAChC;IACE,MAAM,EAAE,gBAAgB,CAAC,WAAW,EAAE,QAAQ,CAAC,WAAW,CAAC,EAAE,QAAQ,CAAC,CAAC;IACvE,SAAS,CAAC,EAAE,KAAK,CAAC;CACnB,GACD;IACE,MAAM,EAAE,gBAAgB,CAAC,WAAW,EAAE,QAAQ,CAAC,WAAW,CAAC,EAAE,QAAQ,CAAC,CAAC;IACvE,SAAS,EAAE,IAAI,CAAC;IAChB,OAAO,CAAC,EAAE,aAAa,EAAE,CAAC;CAC3B,CAAC;AAEN,MAAM,MAAM,uBAAuB,GAAG;IACpC,KAAK,EAAE,YAAY,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,2BAA2B,GAAG;IACxC,KAAK,EAAE,YAAY,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,2BAA2B,GAAG;IACxC,SAAS,EAAE,IAAI,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,QAAQ,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,QAAQ,GAChB,CAAC,UAAU,EAAE,aAAa,CAAC,GAC3B,CAAC,aAAa,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC,GACvC,CAAC,OAAO,EAAE;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,kBAAkB,EAAE,cAAc,CAAA;CAAE,CAAC,GACpE,CAAC,cAAc,EAAE;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,kBAAkB,EAAE,cAAc,CAAA;CAAE,CAAC,GAC3E,CAAC,QAAQ,EAAE;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,kBAAkB,EAAE,cAAc,CAAA;CAAE,CAAC,GACrE,CAAC,eAAe,EAAE;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,kBAAkB,EAAE,cAAc,CAAA;CAAE,CAAC,GAC5E,CAAC,UAAU,EAAE;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,kBAAkB,EAAE,cAAc,CAAA;CAAE,CAAC,GACvE;IACE,iBAAiB;IACjB;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,kBAAkB,EAAE,cAAc,CAAA;KAAE;CAC1D,GACD;IACE,iBAAiB;IACjB;QACE,SAAS,EAAE,MAAM,CAAC;QAClB,kBAAkB,EAAE,cAAc,CAAC;QACnC,mBAAmB,EAAE,wBAAwB,CAAC;KAC/C;CACF,GACD;IACE,kBAAkB;IAClB;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,kBAAkB,EAAE,cAAc,CAAA;KAAE;CAC1D,GACD,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;AAyE5B,MAAM,MAAM,gCAAgC,GAAG;IAC7C,SAAS,EAAE,gBAAgB,CAAC,WAAW,EAAE,QAAQ,CAAC,WAAW,CAAC,EAAE,QAAQ,CAAC,CAAC;IAC1E,aAAa,EAAE,gBAAgB,CAAC,WAAW,EAAE,QAAQ,CAAC,WAAW,CAAC,EAAE,QAAQ,CAAC,CAAC;IAC9E,KAAK,EAAE,wBAAwB,EAAE,CAAC;CACnC,CAAC;AAEF,KAAK,sBAAsB,GAAG;IAC5B,mBAAmB,EAAE,MAAM,CAAC;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,eAAe,EAAE,MAAM,CAAC;IACxB,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,wBAAwB,EAAE,CAAC;IAClC,eAAe,EAAE,wBAAwB,EAAE,CAAC;IAC5C,cAAc,EAAE,wBAAwB,EAAE,CAAC;IAC3C,YAAY,EAAE,wBAAwB,EAAE,CAAC;CAC1C,CAAC;AAEF,MAAM,MAAM,4BAA4B,GAAG;IACzC,SAAS,EAAE,gBAAgB,CAAC,WAAW,EAAE,QAAQ,CAAC,WAAW,CAAC,EAAE,QAAQ,CAAC,CAAC;IAC1E,KAAK,EAAE,wBAAwB,EAAE,CAAC;IAClC,OAAO,EAAE,sBAAsB,CAAC;CACjC,CAAC;AAsHF,wBAAgB,gBAAgB,CAC9B,SAAS,EAAE,wBAAwB,GAClC,aAAa,EAAE,CAWjB;AAED,wBAAgB,2BAA2B,CACzC,SAAS,EAAE,wBAAwB,GAClC,gBAAgB,CAAC,WAAW,EAAE,QAAQ,CAAC,WAAW,CAAC,EAAE,QAAQ,CAAC,CAahE;AAmZD,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE,QAAQ,EAAE,EACpB,YAAY,EAAE,aAAa,EAAE,GAC5B,wBAAwB,EAAE,CAE5B;AAyND,KAAK,8BAA8B,GAAG;IACpC,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,IAAI,CAAC;IAChB,SAAS,EAAE,IAAI,CAAC;IAChB,MAAM,EAAE,WAAW,GAAG,SAAS,GAAG,YAAY,GAAG,SAAS,CAAC;IAC3D,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,KAAK,CAAC,EACF,sBAAsB,GACtB,0BAA0B,GAC1B,yBAAyB,GACzB,wBAAwB,GACxB,wBAAwB,GACxB,kBAAkB,CAAC;IACvB,oBAAoB,CAAC,EAAE;QACrB,QAAQ,EAAE,MAAM,CAAC;QACjB,KAAK,EAAE,GAAG,CAAC;QACX,QAAQ,EACJ,QAAQ,GACR,QAAQ,GACR,SAAS,GACT,MAAM,GACN,QAAQ,GACR,OAAO,GACP,MAAM,CAAC;KACZ,EAAE,CAAC;CACL,CAAC;AAEF,MAAM,WAAW,wCACf,SAAQ,8BAA8B;IACtC,IAAI,EAAE,kBAAkB,CAAC;CAC1B;AAED,MAAM,WAAW,uCACf,SAAQ,8BAA8B;IACtC,IAAI,EAAE,iBAAiB,CAAC;IACxB,eAAe,EAAE,wBAAwB,CAAC;CAC3C;AAED,MAAM,WAAW,kCACf,SAAQ,8BAA8B;IACtC,IAAI,EAAE,OAAO,CAAC;CACf;AAED,MAAM,WAAW,qCACf,SAAQ,8BAA8B;IACtC,IAAI,EAAE,cAAc,CAAC;CACtB;AAED,MAAM,WAAW,mCACf,SAAQ,8BAA8B;IACtC,IAAI,EAAE,QAAQ,CAAC;IACf,kBAAkB,CAAC,EAAE,GAAG,CAAC;CAC1B;AAED,MAAM,WAAW,sCACf,SAAQ,8BAA8B;IACtC,IAAI,EAAE,eAAe,CAAC;CACvB;AAED,MAAM,WAAW,qCACf,SAAQ,8BAA8B;IACtC,IAAI,EAAE,UAAU,CAAC;CAClB;AAED,MAAM,WAAW,wCACf,SAAQ,8BAA8B;IACtC,IAAI,EAAE,iBAAiB,CAAC;CACzB;AAED,MAAM,MAAM,0BAA0B,GAClC,wCAAwC,GACxC,uCAAuC,GACvC,kCAAkC,GAClC,qCAAqC,GACrC,mCAAmC,GACnC,sCAAsC,GACtC,qCAAqC,GACrC,wCAAwC,CAAC;AA6O7C,MAAM,MAAM,eAAe,GACvB;IACE,KAAK,EAAE,MAAM,CAAC;CACf,GACD;IACE,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,CAAC,SAAS,EAAE;QACtB,WAAW,EAAE,MAAM,CAAC;QACpB,SAAS,EAAE,IAAI,CAAC;KACjB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CACrB,CAAC;AAEN,MAAM,MAAM,iBAAiB,GAAG;IAC9B,IAAI,CAAC,EAAE,eAAe,CAAC;IACvB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,qBAAa,2BAA4B,SAAQ,KAAK;;CAIrD;AAED;;;;;;;;;;;;;;GAcG;AACH,qBAAa,WAAW;;IAItB;;;;;OAKG;gBACS,MAAM,CAAC,EAAE,iBAAiB;IAKtC,KAAK,IAAI,MAAM;IAUf,eAAe,IAAI,OAAO;IAcpB,YAAY,IAAI,OAAO,CAAC,IAAI,GAAG;QACnC,WAAW,EAAE,MAAM,CAAC;QACpB,SAAS,EAAE,IAAI,CAAC;KACjB,CAAC;IAyBI,SAAS,CAAC,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,EAC/C,CAAC,EAAE,CAAC,EACJ,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC;IA6BrB;;;;;;;;;;;;;;;;OAgBG;IACG,MAAM,CAAC,IAAI,SAAS,WAAW,EACnC,KAAK,EAAE,MAAM,EACb,IAAI,CAAC,EAAE,IAAI,GACV,OAAO,CAAC,wBAAwB,CAAC,IAAI,CAAC,CAAC;IAI1C;;;;;;;;;;;;;OAaG;IACG,OAAO,CAAC,IAAI,SAAS,WAAW,EACpC,IAAI,CAAC,EAAE,IAAI,GACV,OAAO,CAAC,0BAA0B,CAAC,IAAI,CAAC,CAAC;IAI5C;;;;;;;;OAQG;IACG,OAAO,IAAI,OAAO,CAAC,0BAA0B,CAAC;IAIpD;;;;;;;;;;;;;OAaG;IACG,aAAa,CAAC,IAAI,SAAS,WAAW,EAC1C,KAAK,EAAE,MAAM,EACb,IAAI,CAAC,EAAE,IAAI,GACV,OAAO,CAAC,0BAA0B,CAAC,IAAI,CAAC,CAAC;IAS5C;;;;;;;;OAQG;IACG,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,8BAA8B,CAAC;IAIvE;;;;;;;;OAQG;IACG,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,6BAA6B,CAAC;IAIrE;;;;;;;;;;;;;;;;;;;;;;;;;OAyBG;IACG,SAAS,CACb,MAAM,EAAE,uBAAuB,GAC9B,OAAO,CAAC,2BAA2B,CAAC;IAIvC;;;;;;;;;;;;;;;;;;;;;OAqBG;IACG,kBAAkB,CAAC,MAAM,EAAE,gCAAgC;IAIjE;;;;;;;;;;;OAWG;IACG,SAAS,CACb,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,uBAAuB,GAC9B,OAAO,CAAC,2BAA2B,CAAC;IASvC;;;;;;;;OAQG;IACG,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,2BAA2B,CAAC;IAIpE;;;;;;;OAOG;IACG,cAAc,CAClB,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,wBAAwB,GAC7B,OAAO,CAAC,gCAAgC,CAAC;IAQ5C;;;;;;;;;;;;;;;;;;;;;;;;;OAyBG;IACH,UAAU,CACR,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,wBAAwB,GAC7B,eAAe,CAAC,sBAAsB,EAAE,4BAA4B,CAAC;IAiCxE;;;;;;;;;;;;;OAaG;IACG,SAAS,CACb,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,uBAAuB,GAC5B,OAAO,CAAC,2BAA2B,CAAC;IAOjC,SAAS,IAAI,OAAO,CAAC,2BAA2B,CAAC;IAOvD;;;;;;;;;OASG;IACH,QAAQ,CACN,MAAM,SAAS,gBAAgB,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,oBAAoB,EACrE,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,QAAQ,CAAC,MAAM,CAAC;CAa/D"}
1
+ {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../src/api.ts"],"names":[],"mappings":"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"}
@@ -9,6 +9,7 @@ exports.apiSchemaToInstantSchemaDef = apiSchemaToInstantSchemaDef;
9
9
  exports.translatePlanSteps = translatePlanSteps;
10
10
  const core_1 = require("@instantdb/core");
11
11
  const webhooks_1 = require("@instantdb/webhooks");
12
+ const backups_ts_1 = require("./backups.js");
12
13
  const version_ts_1 = __importDefault(require("./version.js"));
13
14
  const schema_ts_1 = require("./schema.js");
14
15
  const ProgressPromise_ts_1 = require("./ProgressPromise.js");
@@ -1111,6 +1112,15 @@ class PlatformApi {
1111
1112
  withAuth,
1112
1113
  });
1113
1114
  }
1115
+ /**
1116
+ * Returns a {@link BackupsManager} scoped to `appId` for listing an app's
1117
+ * backups and downloading their contents. Calls are routed through
1118
+ * {@link withRetry}, so an expired access token is transparently refreshed.
1119
+ */
1120
+ backups(appId) {
1121
+ const withAuth = (operation) => this.withRetry((_apiURI, token) => operation(token), [this.#apiURI, this.token()]);
1122
+ return new backups_ts_1.BackupsManager({ appId, apiURI: this.#apiURI, withAuth });
1123
+ }
1114
1124
  }
1115
1125
  exports.PlatformApi = PlatformApi;
1116
1126
  //# sourceMappingURL=api.js.map