@meowpanel/api 0.14.0 → 0.15.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm/src/resources/servers/backups.d.ts +7 -7
- package/esm/src/resources/servers/backups.d.ts.map +1 -1
- package/esm/src/resources/servers/backups.js +8 -8
- package/esm/src/resources/servers/connection.d.ts +2 -2
- package/esm/src/resources/servers/connection.d.ts.map +1 -1
- package/esm/src/resources/servers/connection.js +2 -2
- package/package.json +1 -1
- package/script/src/resources/servers/backups.d.ts +7 -7
- package/script/src/resources/servers/backups.d.ts.map +1 -1
- package/script/src/resources/servers/backups.js +8 -8
- package/script/src/resources/servers/connection.d.ts +2 -2
- package/script/src/resources/servers/connection.d.ts.map +1 -1
- package/script/src/resources/servers/connection.js +2 -2
|
@@ -6,8 +6,8 @@ export type BackupAdapter = 'whisker' | 's3';
|
|
|
6
6
|
export interface CreateBackupOptions {
|
|
7
7
|
/** Storage adapter to write the backup to. */
|
|
8
8
|
adapter: BackupAdapter;
|
|
9
|
-
/** Client-chosen
|
|
10
|
-
|
|
9
|
+
/** Client-chosen 12-character nanoid identifying the backup. */
|
|
10
|
+
id: string;
|
|
11
11
|
/** Newline- or glob-separated ignore patterns. */
|
|
12
12
|
ignore?: string;
|
|
13
13
|
}
|
|
@@ -28,7 +28,7 @@ export interface RestoreBackupOptions {
|
|
|
28
28
|
*
|
|
29
29
|
* @example
|
|
30
30
|
* ```ts ignore
|
|
31
|
-
* const job = await server.backups.create({ adapter: 'whisker',
|
|
31
|
+
* const job = await server.backups.create({ adapter: 'whisker', id });
|
|
32
32
|
* await job.wait();
|
|
33
33
|
* ```
|
|
34
34
|
*/
|
|
@@ -38,9 +38,9 @@ export declare class ServerBackupsManager {
|
|
|
38
38
|
constructor(node: NodeClient);
|
|
39
39
|
/** Start a backup. Returns the job to track. */
|
|
40
40
|
create(opts: CreateBackupOptions): Promise<ServerJob>;
|
|
41
|
-
/** Restore a backup by its
|
|
42
|
-
restore(
|
|
43
|
-
/** Delete a backup by its
|
|
44
|
-
delete(
|
|
41
|
+
/** Restore a backup by its nanoid. Returns the job to track. */
|
|
42
|
+
restore(backupId: string, opts: RestoreBackupOptions): Promise<ServerJob>;
|
|
43
|
+
/** Delete a backup by its nanoid. Treats an already-missing backup as success. */
|
|
44
|
+
delete(backupId: string): Promise<void>;
|
|
45
45
|
}
|
|
46
46
|
//# sourceMappingURL=backups.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"backups.d.ts","sourceRoot":"","sources":["../../../../src/src/resources/servers/backups.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAEnD,+EAA+E;AAC/E,MAAM,MAAM,aAAa,GAAG,SAAS,GAAG,IAAI,CAAC;AAE7C,qCAAqC;AACrC,MAAM,WAAW,mBAAmB;IACnC,8CAA8C;IAC9C,OAAO,EAAE,aAAa,CAAC;IACvB,
|
|
1
|
+
{"version":3,"file":"backups.d.ts","sourceRoot":"","sources":["../../../../src/src/resources/servers/backups.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAEnD,+EAA+E;AAC/E,MAAM,MAAM,aAAa,GAAG,SAAS,GAAG,IAAI,CAAC;AAE7C,qCAAqC;AACrC,MAAM,WAAW,mBAAmB;IACnC,8CAA8C;IAC9C,OAAO,EAAE,aAAa,CAAC;IACvB,gEAAgE;IAChE,EAAE,EAAE,MAAM,CAAC;IACX,kDAAkD;IAClD,MAAM,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,sCAAsC;AACtC,MAAM,WAAW,oBAAoB;IACpC,2CAA2C;IAC3C,OAAO,EAAE,aAAa,CAAC;IACvB,yDAAyD;IACzD,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,mEAAmE;IACnE,WAAW,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;;;;;;;;;;GAWG;AACH,qBAAa,oBAAoB;IAEb,OAAO,CAAC,QAAQ,CAAC,IAAI;IADxC,gBAAgB;gBACoB,IAAI,EAAE,UAAU;IAEpD,gDAAgD;IACnC,MAAM,CAAC,IAAI,EAAE,mBAAmB,GAAG,OAAO,CAAC,SAAS,CAAC;IASlE,gEAAgE;IACnD,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,oBAAoB,GAAG,OAAO,CAAC,SAAS,CAAC;IAStF,kFAAkF;IACrE,MAAM,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAGpD"}
|
|
@@ -7,7 +7,7 @@ import { ServerJob } from './jobs.js';
|
|
|
7
7
|
*
|
|
8
8
|
* @example
|
|
9
9
|
* ```ts ignore
|
|
10
|
-
* const job = await server.backups.create({ adapter: 'whisker',
|
|
10
|
+
* const job = await server.backups.create({ adapter: 'whisker', id });
|
|
11
11
|
* await job.wait();
|
|
12
12
|
* ```
|
|
13
13
|
*/
|
|
@@ -21,23 +21,23 @@ export class ServerBackupsManager {
|
|
|
21
21
|
async create(opts) {
|
|
22
22
|
const { data } = await this.node.postJson('/backup', {
|
|
23
23
|
adapter: opts.adapter,
|
|
24
|
-
|
|
24
|
+
id: opts.id,
|
|
25
25
|
ignore: opts.ignore ?? '',
|
|
26
26
|
});
|
|
27
27
|
return new ServerJob({ id: data.job_id }, this.node);
|
|
28
28
|
}
|
|
29
|
-
/** Restore a backup by its
|
|
30
|
-
async restore(
|
|
29
|
+
/** Restore a backup by its nanoid. Returns the job to track. */
|
|
30
|
+
async restore(backupId, opts) {
|
|
31
31
|
const body = { adapter: opts.adapter };
|
|
32
32
|
if (opts.truncateDirectory !== undefined)
|
|
33
33
|
body['truncate_directory'] = opts.truncateDirectory;
|
|
34
34
|
if (opts.downloadUrl !== undefined)
|
|
35
35
|
body['download_url'] = opts.downloadUrl;
|
|
36
|
-
const { data } = await this.node.postJson(`/backup/${
|
|
36
|
+
const { data } = await this.node.postJson(`/backup/${backupId}/restore`, body);
|
|
37
37
|
return new ServerJob({ id: data.job_id }, this.node);
|
|
38
38
|
}
|
|
39
|
-
/** Delete a backup by its
|
|
40
|
-
async delete(
|
|
41
|
-
await this.node.fetch(`/backup/${
|
|
39
|
+
/** Delete a backup by its nanoid. Treats an already-missing backup as success. */
|
|
40
|
+
async delete(backupId) {
|
|
41
|
+
await this.node.fetch(`/backup/${backupId}`, { method: 'DELETE' });
|
|
42
42
|
}
|
|
43
43
|
}
|
|
@@ -39,7 +39,7 @@ export interface JobLogEvent {
|
|
|
39
39
|
/** Payload for the `backup_completed` event. */
|
|
40
40
|
export interface BackupCompletedEvent {
|
|
41
41
|
/** The completed backup's id. */
|
|
42
|
-
|
|
42
|
+
id: string;
|
|
43
43
|
isSuccessful: boolean;
|
|
44
44
|
checksum: string;
|
|
45
45
|
checksumType: string;
|
|
@@ -73,7 +73,7 @@ export interface ServerConnectionEvents {
|
|
|
73
73
|
install_output: string;
|
|
74
74
|
/** An out-of-band status message from the daemon. */
|
|
75
75
|
daemon_message: string;
|
|
76
|
-
/** A backup finished; the payload's `
|
|
76
|
+
/** A backup finished; the payload's `id` identifies which one. */
|
|
77
77
|
backup_completed: BackupCompletedEvent;
|
|
78
78
|
/** A backup restore finished. */
|
|
79
79
|
backup_restore_completed: '';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"connection.d.ts","sourceRoot":"","sources":["../../../../src/src/resources/servers/connection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAiB,KAAK,QAAQ,EAAE,MAAM,cAAc,CAAC;AAC5D,OAAO,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACzD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAE3C,2DAA2D;AAC3D,MAAM,WAAW,iBAAiB;IACjC,oDAAoD;IACpD,WAAW,EAAE,MAAM,CAAC;IACpB,0BAA0B;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,0BAA0B;IAC1B,aAAa,EAAE,MAAM,CAAC;IACtB,8BAA8B;IAC9B,YAAY,EAAE,MAAM,CAAC;IACrB,0DAA0D;IAC1D,mBAAmB,EAAE,MAAM,CAAC;IAC5B,sDAAsD;IACtD,mBAAmB,EAAE,MAAM,CAAC;IAC5B,uBAAuB,EAAE,MAAM,CAAC;IAChC,uBAAuB,EAAE,MAAM,CAAC;IAChC,qCAAqC;IACrC,QAAQ,EAAE,MAAM,CAAC;CACjB;AAED,qFAAqF;AACrF,MAAM,WAAW,gBAAgB;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,SAAS,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;CAChB;AAED,iDAAiD;AACjD,MAAM,WAAW,WAAW;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;CAChB;AAED,gDAAgD;AAChD,MAAM,WAAW,oBAAoB;IACpC,iCAAiC;IACjC,
|
|
1
|
+
{"version":3,"file":"connection.d.ts","sourceRoot":"","sources":["../../../../src/src/resources/servers/connection.ts"],"names":[],"mappings":"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"}
|
|
@@ -261,10 +261,10 @@ export class ServerConnection extends ReactiveResource {
|
|
|
261
261
|
break;
|
|
262
262
|
}
|
|
263
263
|
case 'backup_completed': {
|
|
264
|
-
if (typeof parsed?.
|
|
264
|
+
if (typeof parsed?.id !== 'string')
|
|
265
265
|
return;
|
|
266
266
|
payload = {
|
|
267
|
-
|
|
267
|
+
id: parsed.id,
|
|
268
268
|
isSuccessful: Boolean(parsed.is_successful),
|
|
269
269
|
checksum: typeof parsed.checksum === 'string' ? parsed.checksum : '',
|
|
270
270
|
checksumType: typeof parsed.checksum_type === 'string' ? parsed.checksum_type : '',
|
package/package.json
CHANGED
|
@@ -6,8 +6,8 @@ export type BackupAdapter = 'whisker' | 's3';
|
|
|
6
6
|
export interface CreateBackupOptions {
|
|
7
7
|
/** Storage adapter to write the backup to. */
|
|
8
8
|
adapter: BackupAdapter;
|
|
9
|
-
/** Client-chosen
|
|
10
|
-
|
|
9
|
+
/** Client-chosen 12-character nanoid identifying the backup. */
|
|
10
|
+
id: string;
|
|
11
11
|
/** Newline- or glob-separated ignore patterns. */
|
|
12
12
|
ignore?: string;
|
|
13
13
|
}
|
|
@@ -28,7 +28,7 @@ export interface RestoreBackupOptions {
|
|
|
28
28
|
*
|
|
29
29
|
* @example
|
|
30
30
|
* ```ts ignore
|
|
31
|
-
* const job = await server.backups.create({ adapter: 'whisker',
|
|
31
|
+
* const job = await server.backups.create({ adapter: 'whisker', id });
|
|
32
32
|
* await job.wait();
|
|
33
33
|
* ```
|
|
34
34
|
*/
|
|
@@ -38,9 +38,9 @@ export declare class ServerBackupsManager {
|
|
|
38
38
|
constructor(node: NodeClient);
|
|
39
39
|
/** Start a backup. Returns the job to track. */
|
|
40
40
|
create(opts: CreateBackupOptions): Promise<ServerJob>;
|
|
41
|
-
/** Restore a backup by its
|
|
42
|
-
restore(
|
|
43
|
-
/** Delete a backup by its
|
|
44
|
-
delete(
|
|
41
|
+
/** Restore a backup by its nanoid. Returns the job to track. */
|
|
42
|
+
restore(backupId: string, opts: RestoreBackupOptions): Promise<ServerJob>;
|
|
43
|
+
/** Delete a backup by its nanoid. Treats an already-missing backup as success. */
|
|
44
|
+
delete(backupId: string): Promise<void>;
|
|
45
45
|
}
|
|
46
46
|
//# sourceMappingURL=backups.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"backups.d.ts","sourceRoot":"","sources":["../../../../src/src/resources/servers/backups.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAEnD,+EAA+E;AAC/E,MAAM,MAAM,aAAa,GAAG,SAAS,GAAG,IAAI,CAAC;AAE7C,qCAAqC;AACrC,MAAM,WAAW,mBAAmB;IACnC,8CAA8C;IAC9C,OAAO,EAAE,aAAa,CAAC;IACvB,
|
|
1
|
+
{"version":3,"file":"backups.d.ts","sourceRoot":"","sources":["../../../../src/src/resources/servers/backups.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAEnD,+EAA+E;AAC/E,MAAM,MAAM,aAAa,GAAG,SAAS,GAAG,IAAI,CAAC;AAE7C,qCAAqC;AACrC,MAAM,WAAW,mBAAmB;IACnC,8CAA8C;IAC9C,OAAO,EAAE,aAAa,CAAC;IACvB,gEAAgE;IAChE,EAAE,EAAE,MAAM,CAAC;IACX,kDAAkD;IAClD,MAAM,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,sCAAsC;AACtC,MAAM,WAAW,oBAAoB;IACpC,2CAA2C;IAC3C,OAAO,EAAE,aAAa,CAAC;IACvB,yDAAyD;IACzD,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,mEAAmE;IACnE,WAAW,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;;;;;;;;;;GAWG;AACH,qBAAa,oBAAoB;IAEb,OAAO,CAAC,QAAQ,CAAC,IAAI;IADxC,gBAAgB;gBACoB,IAAI,EAAE,UAAU;IAEpD,gDAAgD;IACnC,MAAM,CAAC,IAAI,EAAE,mBAAmB,GAAG,OAAO,CAAC,SAAS,CAAC;IASlE,gEAAgE;IACnD,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,oBAAoB,GAAG,OAAO,CAAC,SAAS,CAAC;IAStF,kFAAkF;IACrE,MAAM,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAGpD"}
|
|
@@ -10,7 +10,7 @@ const jobs_js_1 = require("./jobs.js");
|
|
|
10
10
|
*
|
|
11
11
|
* @example
|
|
12
12
|
* ```ts ignore
|
|
13
|
-
* const job = await server.backups.create({ adapter: 'whisker',
|
|
13
|
+
* const job = await server.backups.create({ adapter: 'whisker', id });
|
|
14
14
|
* await job.wait();
|
|
15
15
|
* ```
|
|
16
16
|
*/
|
|
@@ -24,24 +24,24 @@ class ServerBackupsManager {
|
|
|
24
24
|
async create(opts) {
|
|
25
25
|
const { data } = await this.node.postJson('/backup', {
|
|
26
26
|
adapter: opts.adapter,
|
|
27
|
-
|
|
27
|
+
id: opts.id,
|
|
28
28
|
ignore: opts.ignore ?? '',
|
|
29
29
|
});
|
|
30
30
|
return new jobs_js_1.ServerJob({ id: data.job_id }, this.node);
|
|
31
31
|
}
|
|
32
|
-
/** Restore a backup by its
|
|
33
|
-
async restore(
|
|
32
|
+
/** Restore a backup by its nanoid. Returns the job to track. */
|
|
33
|
+
async restore(backupId, opts) {
|
|
34
34
|
const body = { adapter: opts.adapter };
|
|
35
35
|
if (opts.truncateDirectory !== undefined)
|
|
36
36
|
body['truncate_directory'] = opts.truncateDirectory;
|
|
37
37
|
if (opts.downloadUrl !== undefined)
|
|
38
38
|
body['download_url'] = opts.downloadUrl;
|
|
39
|
-
const { data } = await this.node.postJson(`/backup/${
|
|
39
|
+
const { data } = await this.node.postJson(`/backup/${backupId}/restore`, body);
|
|
40
40
|
return new jobs_js_1.ServerJob({ id: data.job_id }, this.node);
|
|
41
41
|
}
|
|
42
|
-
/** Delete a backup by its
|
|
43
|
-
async delete(
|
|
44
|
-
await this.node.fetch(`/backup/${
|
|
42
|
+
/** Delete a backup by its nanoid. Treats an already-missing backup as success. */
|
|
43
|
+
async delete(backupId) {
|
|
44
|
+
await this.node.fetch(`/backup/${backupId}`, { method: 'DELETE' });
|
|
45
45
|
}
|
|
46
46
|
}
|
|
47
47
|
exports.ServerBackupsManager = ServerBackupsManager;
|
|
@@ -39,7 +39,7 @@ export interface JobLogEvent {
|
|
|
39
39
|
/** Payload for the `backup_completed` event. */
|
|
40
40
|
export interface BackupCompletedEvent {
|
|
41
41
|
/** The completed backup's id. */
|
|
42
|
-
|
|
42
|
+
id: string;
|
|
43
43
|
isSuccessful: boolean;
|
|
44
44
|
checksum: string;
|
|
45
45
|
checksumType: string;
|
|
@@ -73,7 +73,7 @@ export interface ServerConnectionEvents {
|
|
|
73
73
|
install_output: string;
|
|
74
74
|
/** An out-of-band status message from the daemon. */
|
|
75
75
|
daemon_message: string;
|
|
76
|
-
/** A backup finished; the payload's `
|
|
76
|
+
/** A backup finished; the payload's `id` identifies which one. */
|
|
77
77
|
backup_completed: BackupCompletedEvent;
|
|
78
78
|
/** A backup restore finished. */
|
|
79
79
|
backup_restore_completed: '';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"connection.d.ts","sourceRoot":"","sources":["../../../../src/src/resources/servers/connection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAiB,KAAK,QAAQ,EAAE,MAAM,cAAc,CAAC;AAC5D,OAAO,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACzD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAE3C,2DAA2D;AAC3D,MAAM,WAAW,iBAAiB;IACjC,oDAAoD;IACpD,WAAW,EAAE,MAAM,CAAC;IACpB,0BAA0B;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,0BAA0B;IAC1B,aAAa,EAAE,MAAM,CAAC;IACtB,8BAA8B;IAC9B,YAAY,EAAE,MAAM,CAAC;IACrB,0DAA0D;IAC1D,mBAAmB,EAAE,MAAM,CAAC;IAC5B,sDAAsD;IACtD,mBAAmB,EAAE,MAAM,CAAC;IAC5B,uBAAuB,EAAE,MAAM,CAAC;IAChC,uBAAuB,EAAE,MAAM,CAAC;IAChC,qCAAqC;IACrC,QAAQ,EAAE,MAAM,CAAC;CACjB;AAED,qFAAqF;AACrF,MAAM,WAAW,gBAAgB;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,SAAS,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;CAChB;AAED,iDAAiD;AACjD,MAAM,WAAW,WAAW;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;CAChB;AAED,gDAAgD;AAChD,MAAM,WAAW,oBAAoB;IACpC,iCAAiC;IACjC,
|
|
1
|
+
{"version":3,"file":"connection.d.ts","sourceRoot":"","sources":["../../../../src/src/resources/servers/connection.ts"],"names":[],"mappings":"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"}
|
|
@@ -264,10 +264,10 @@ class ServerConnection extends reactive_js_1.ReactiveResource {
|
|
|
264
264
|
break;
|
|
265
265
|
}
|
|
266
266
|
case 'backup_completed': {
|
|
267
|
-
if (typeof parsed?.
|
|
267
|
+
if (typeof parsed?.id !== 'string')
|
|
268
268
|
return;
|
|
269
269
|
payload = {
|
|
270
|
-
|
|
270
|
+
id: parsed.id,
|
|
271
271
|
isSuccessful: Boolean(parsed.is_successful),
|
|
272
272
|
checksum: typeof parsed.checksum === 'string' ? parsed.checksum : '',
|
|
273
273
|
checksumType: typeof parsed.checksum_type === 'string' ? parsed.checksum_type : '',
|