@saltcorn/admin-models 1.6.3-beta.1 → 1.7.0-alpha.1
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/cjs/index.cjs +18 -0
- package/cjs/models/backup-retention.cjs +18 -0
- package/cjs/models/backup.cjs +18 -0
- package/cjs/models/config-check.cjs +18 -0
- package/cjs/models/file-globs.cjs +18 -0
- package/cjs/models/pack.cjs +18 -0
- package/cjs/models/snapshot.cjs +18 -0
- package/cjs/models/tenant.cjs +18 -0
- package/cjs/models/zip-extract.cjs +18 -0
- package/cjs/models/zip-format.cjs +18 -0
- package/cjs/models/zip-worker.cjs +18 -0
- package/cjs/models/zip-writer.cjs +18 -0
- package/cjs/models/zip.cjs +18 -0
- package/dist/index.d.ts +6 -5
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +12 -18
- package/dist/index.js.map +1 -1
- package/dist/models/backup-retention.d.ts +57 -0
- package/dist/models/backup-retention.d.ts.map +1 -0
- package/dist/models/backup-retention.js +108 -0
- package/dist/models/backup-retention.js.map +1 -0
- package/dist/models/backup.d.ts +7 -3
- package/dist/models/backup.d.ts.map +1 -1
- package/dist/models/backup.js +479 -409
- package/dist/models/backup.js.map +1 -1
- package/dist/models/config-check.d.ts +2 -1
- package/dist/models/config-check.d.ts.map +1 -1
- package/dist/models/config-check.js +16 -23
- package/dist/models/config-check.js.map +1 -1
- package/dist/models/file-globs.d.ts +34 -0
- package/dist/models/file-globs.d.ts.map +1 -0
- package/dist/models/file-globs.js +47 -0
- package/dist/models/file-globs.js.map +1 -0
- package/dist/models/pack.d.ts +3 -2
- package/dist/models/pack.d.ts.map +1 -1
- package/dist/models/pack.js +147 -151
- package/dist/models/pack.js.map +1 -1
- package/dist/models/snapshot.d.ts +1 -1
- package/dist/models/snapshot.d.ts.map +1 -1
- package/dist/models/snapshot.js +26 -29
- package/dist/models/snapshot.js.map +1 -1
- package/dist/models/tenant.d.ts +1 -1
- package/dist/models/tenant.d.ts.map +1 -1
- package/dist/models/tenant.js +45 -48
- package/dist/models/tenant.js.map +1 -1
- package/dist/models/zip-extract.d.ts +14 -0
- package/dist/models/zip-extract.d.ts.map +1 -0
- package/dist/models/zip-extract.js +110 -0
- package/dist/models/zip-extract.js.map +1 -0
- package/dist/models/zip-format.d.ts +57 -0
- package/dist/models/zip-format.d.ts.map +1 -0
- package/dist/models/zip-format.js +106 -0
- package/dist/models/zip-format.js.map +1 -0
- package/dist/models/zip-worker.d.ts +2 -0
- package/dist/models/zip-worker.d.ts.map +1 -0
- package/dist/models/zip-worker.js +177 -0
- package/dist/models/zip-worker.js.map +1 -0
- package/dist/models/zip-writer.d.ts +75 -0
- package/dist/models/zip-writer.d.ts.map +1 -0
- package/dist/models/zip-writer.js +321 -0
- package/dist/models/zip-writer.js.map +1 -0
- package/dist/models/zip.d.ts +101 -0
- package/dist/models/zip.d.ts.map +1 -0
- package/dist/models/zip.js +211 -0
- package/dist/models/zip.js.map +1 -0
- package/dist/tests/backup-retention.test.d.ts +2 -0
- package/dist/tests/backup-retention.test.d.ts.map +1 -0
- package/dist/tests/backup-retention.test.js +134 -0
- package/dist/tests/backup-retention.test.js.map +1 -0
- package/dist/tests/backup.test.d.ts +2 -0
- package/dist/tests/backup.test.d.ts.map +1 -0
- package/dist/tests/backup.test.js +385 -0
- package/dist/tests/backup.test.js.map +1 -0
- package/dist/tests/cfgcheck.test.d.ts +2 -0
- package/dist/tests/cfgcheck.test.d.ts.map +1 -0
- package/dist/tests/cfgcheck.test.js +32 -0
- package/dist/tests/cfgcheck.test.js.map +1 -0
- package/dist/tests/file-globs.test.d.ts +2 -0
- package/dist/tests/file-globs.test.d.ts.map +1 -0
- package/dist/tests/file-globs.test.js +66 -0
- package/dist/tests/file-globs.test.js.map +1 -0
- package/dist/tests/pack.test.d.ts +2 -0
- package/dist/tests/pack.test.d.ts.map +1 -0
- package/dist/tests/pack.test.js +780 -0
- package/dist/tests/pack.test.js.map +1 -0
- package/dist/tests/random.test.d.ts +2 -0
- package/dist/tests/random.test.d.ts.map +1 -0
- package/dist/tests/random.test.js +150 -0
- package/dist/tests/random.test.js.map +1 -0
- package/dist/tests/tenant.test.d.ts +2 -0
- package/dist/tests/tenant.test.d.ts.map +1 -0
- package/dist/tests/tenant.test.js +106 -0
- package/dist/tests/tenant.test.js.map +1 -0
- package/dist/tests/zip.test.d.ts +2 -0
- package/dist/tests/zip.test.d.ts.map +1 -0
- package/dist/tests/zip.test.js +319 -0
- package/dist/tests/zip.test.js.map +1 -0
- package/gen-cjs-shims.cjs +71 -0
- package/package.json +39 -29
package/cjs/index.cjs
ADDED
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
// CommonJS interop shim — AUTO-GENERATED, DO NOT EDIT.
|
|
2
|
+
// See gen-cjs-shims.cjs.
|
|
3
|
+
"use strict";
|
|
4
|
+
const m = require("../dist/index.js");
|
|
5
|
+
const e = m && m.__esModule && "default" in m ? m.default : m;
|
|
6
|
+
module.exports = e;
|
|
7
|
+
if (e !== m && e && (typeof e === "object" || typeof e === "function")) {
|
|
8
|
+
for (const k in m) {
|
|
9
|
+
if (k === "default" || k === "__esModule" || k in e) continue;
|
|
10
|
+
try {
|
|
11
|
+
Object.defineProperty(e, k, {
|
|
12
|
+
get: () => m[k],
|
|
13
|
+
enumerable: true,
|
|
14
|
+
configurable: true,
|
|
15
|
+
});
|
|
16
|
+
} catch {}
|
|
17
|
+
}
|
|
18
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
// CommonJS interop shim — AUTO-GENERATED, DO NOT EDIT.
|
|
2
|
+
// See gen-cjs-shims.cjs.
|
|
3
|
+
"use strict";
|
|
4
|
+
const m = require("../../dist/models/backup-retention.js");
|
|
5
|
+
const e = m && m.__esModule && "default" in m ? m.default : m;
|
|
6
|
+
module.exports = e;
|
|
7
|
+
if (e !== m && e && (typeof e === "object" || typeof e === "function")) {
|
|
8
|
+
for (const k in m) {
|
|
9
|
+
if (k === "default" || k === "__esModule" || k in e) continue;
|
|
10
|
+
try {
|
|
11
|
+
Object.defineProperty(e, k, {
|
|
12
|
+
get: () => m[k],
|
|
13
|
+
enumerable: true,
|
|
14
|
+
configurable: true,
|
|
15
|
+
});
|
|
16
|
+
} catch {}
|
|
17
|
+
}
|
|
18
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
// CommonJS interop shim — AUTO-GENERATED, DO NOT EDIT.
|
|
2
|
+
// See gen-cjs-shims.cjs.
|
|
3
|
+
"use strict";
|
|
4
|
+
const m = require("../../dist/models/backup.js");
|
|
5
|
+
const e = m && m.__esModule && "default" in m ? m.default : m;
|
|
6
|
+
module.exports = e;
|
|
7
|
+
if (e !== m && e && (typeof e === "object" || typeof e === "function")) {
|
|
8
|
+
for (const k in m) {
|
|
9
|
+
if (k === "default" || k === "__esModule" || k in e) continue;
|
|
10
|
+
try {
|
|
11
|
+
Object.defineProperty(e, k, {
|
|
12
|
+
get: () => m[k],
|
|
13
|
+
enumerable: true,
|
|
14
|
+
configurable: true,
|
|
15
|
+
});
|
|
16
|
+
} catch {}
|
|
17
|
+
}
|
|
18
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
// CommonJS interop shim — AUTO-GENERATED, DO NOT EDIT.
|
|
2
|
+
// See gen-cjs-shims.cjs.
|
|
3
|
+
"use strict";
|
|
4
|
+
const m = require("../../dist/models/config-check.js");
|
|
5
|
+
const e = m && m.__esModule && "default" in m ? m.default : m;
|
|
6
|
+
module.exports = e;
|
|
7
|
+
if (e !== m && e && (typeof e === "object" || typeof e === "function")) {
|
|
8
|
+
for (const k in m) {
|
|
9
|
+
if (k === "default" || k === "__esModule" || k in e) continue;
|
|
10
|
+
try {
|
|
11
|
+
Object.defineProperty(e, k, {
|
|
12
|
+
get: () => m[k],
|
|
13
|
+
enumerable: true,
|
|
14
|
+
configurable: true,
|
|
15
|
+
});
|
|
16
|
+
} catch {}
|
|
17
|
+
}
|
|
18
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
// CommonJS interop shim — AUTO-GENERATED, DO NOT EDIT.
|
|
2
|
+
// See gen-cjs-shims.cjs.
|
|
3
|
+
"use strict";
|
|
4
|
+
const m = require("../../dist/models/file-globs.js");
|
|
5
|
+
const e = m && m.__esModule && "default" in m ? m.default : m;
|
|
6
|
+
module.exports = e;
|
|
7
|
+
if (e !== m && e && (typeof e === "object" || typeof e === "function")) {
|
|
8
|
+
for (const k in m) {
|
|
9
|
+
if (k === "default" || k === "__esModule" || k in e) continue;
|
|
10
|
+
try {
|
|
11
|
+
Object.defineProperty(e, k, {
|
|
12
|
+
get: () => m[k],
|
|
13
|
+
enumerable: true,
|
|
14
|
+
configurable: true,
|
|
15
|
+
});
|
|
16
|
+
} catch {}
|
|
17
|
+
}
|
|
18
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
// CommonJS interop shim — AUTO-GENERATED, DO NOT EDIT.
|
|
2
|
+
// See gen-cjs-shims.cjs.
|
|
3
|
+
"use strict";
|
|
4
|
+
const m = require("../../dist/models/pack.js");
|
|
5
|
+
const e = m && m.__esModule && "default" in m ? m.default : m;
|
|
6
|
+
module.exports = e;
|
|
7
|
+
if (e !== m && e && (typeof e === "object" || typeof e === "function")) {
|
|
8
|
+
for (const k in m) {
|
|
9
|
+
if (k === "default" || k === "__esModule" || k in e) continue;
|
|
10
|
+
try {
|
|
11
|
+
Object.defineProperty(e, k, {
|
|
12
|
+
get: () => m[k],
|
|
13
|
+
enumerable: true,
|
|
14
|
+
configurable: true,
|
|
15
|
+
});
|
|
16
|
+
} catch {}
|
|
17
|
+
}
|
|
18
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
// CommonJS interop shim — AUTO-GENERATED, DO NOT EDIT.
|
|
2
|
+
// See gen-cjs-shims.cjs.
|
|
3
|
+
"use strict";
|
|
4
|
+
const m = require("../../dist/models/snapshot.js");
|
|
5
|
+
const e = m && m.__esModule && "default" in m ? m.default : m;
|
|
6
|
+
module.exports = e;
|
|
7
|
+
if (e !== m && e && (typeof e === "object" || typeof e === "function")) {
|
|
8
|
+
for (const k in m) {
|
|
9
|
+
if (k === "default" || k === "__esModule" || k in e) continue;
|
|
10
|
+
try {
|
|
11
|
+
Object.defineProperty(e, k, {
|
|
12
|
+
get: () => m[k],
|
|
13
|
+
enumerable: true,
|
|
14
|
+
configurable: true,
|
|
15
|
+
});
|
|
16
|
+
} catch {}
|
|
17
|
+
}
|
|
18
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
// CommonJS interop shim — AUTO-GENERATED, DO NOT EDIT.
|
|
2
|
+
// See gen-cjs-shims.cjs.
|
|
3
|
+
"use strict";
|
|
4
|
+
const m = require("../../dist/models/tenant.js");
|
|
5
|
+
const e = m && m.__esModule && "default" in m ? m.default : m;
|
|
6
|
+
module.exports = e;
|
|
7
|
+
if (e !== m && e && (typeof e === "object" || typeof e === "function")) {
|
|
8
|
+
for (const k in m) {
|
|
9
|
+
if (k === "default" || k === "__esModule" || k in e) continue;
|
|
10
|
+
try {
|
|
11
|
+
Object.defineProperty(e, k, {
|
|
12
|
+
get: () => m[k],
|
|
13
|
+
enumerable: true,
|
|
14
|
+
configurable: true,
|
|
15
|
+
});
|
|
16
|
+
} catch {}
|
|
17
|
+
}
|
|
18
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
// CommonJS interop shim — AUTO-GENERATED, DO NOT EDIT.
|
|
2
|
+
// See gen-cjs-shims.cjs.
|
|
3
|
+
"use strict";
|
|
4
|
+
const m = require("../../dist/models/zip-extract.js");
|
|
5
|
+
const e = m && m.__esModule && "default" in m ? m.default : m;
|
|
6
|
+
module.exports = e;
|
|
7
|
+
if (e !== m && e && (typeof e === "object" || typeof e === "function")) {
|
|
8
|
+
for (const k in m) {
|
|
9
|
+
if (k === "default" || k === "__esModule" || k in e) continue;
|
|
10
|
+
try {
|
|
11
|
+
Object.defineProperty(e, k, {
|
|
12
|
+
get: () => m[k],
|
|
13
|
+
enumerable: true,
|
|
14
|
+
configurable: true,
|
|
15
|
+
});
|
|
16
|
+
} catch {}
|
|
17
|
+
}
|
|
18
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
// CommonJS interop shim — AUTO-GENERATED, DO NOT EDIT.
|
|
2
|
+
// See gen-cjs-shims.cjs.
|
|
3
|
+
"use strict";
|
|
4
|
+
const m = require("../../dist/models/zip-format.js");
|
|
5
|
+
const e = m && m.__esModule && "default" in m ? m.default : m;
|
|
6
|
+
module.exports = e;
|
|
7
|
+
if (e !== m && e && (typeof e === "object" || typeof e === "function")) {
|
|
8
|
+
for (const k in m) {
|
|
9
|
+
if (k === "default" || k === "__esModule" || k in e) continue;
|
|
10
|
+
try {
|
|
11
|
+
Object.defineProperty(e, k, {
|
|
12
|
+
get: () => m[k],
|
|
13
|
+
enumerable: true,
|
|
14
|
+
configurable: true,
|
|
15
|
+
});
|
|
16
|
+
} catch {}
|
|
17
|
+
}
|
|
18
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
// CommonJS interop shim — AUTO-GENERATED, DO NOT EDIT.
|
|
2
|
+
// See gen-cjs-shims.cjs.
|
|
3
|
+
"use strict";
|
|
4
|
+
const m = require("../../dist/models/zip-worker.js");
|
|
5
|
+
const e = m && m.__esModule && "default" in m ? m.default : m;
|
|
6
|
+
module.exports = e;
|
|
7
|
+
if (e !== m && e && (typeof e === "object" || typeof e === "function")) {
|
|
8
|
+
for (const k in m) {
|
|
9
|
+
if (k === "default" || k === "__esModule" || k in e) continue;
|
|
10
|
+
try {
|
|
11
|
+
Object.defineProperty(e, k, {
|
|
12
|
+
get: () => m[k],
|
|
13
|
+
enumerable: true,
|
|
14
|
+
configurable: true,
|
|
15
|
+
});
|
|
16
|
+
} catch {}
|
|
17
|
+
}
|
|
18
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
// CommonJS interop shim — AUTO-GENERATED, DO NOT EDIT.
|
|
2
|
+
// See gen-cjs-shims.cjs.
|
|
3
|
+
"use strict";
|
|
4
|
+
const m = require("../../dist/models/zip-writer.js");
|
|
5
|
+
const e = m && m.__esModule && "default" in m ? m.default : m;
|
|
6
|
+
module.exports = e;
|
|
7
|
+
if (e !== m && e && (typeof e === "object" || typeof e === "function")) {
|
|
8
|
+
for (const k in m) {
|
|
9
|
+
if (k === "default" || k === "__esModule" || k in e) continue;
|
|
10
|
+
try {
|
|
11
|
+
Object.defineProperty(e, k, {
|
|
12
|
+
get: () => m[k],
|
|
13
|
+
enumerable: true,
|
|
14
|
+
configurable: true,
|
|
15
|
+
});
|
|
16
|
+
} catch {}
|
|
17
|
+
}
|
|
18
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
// CommonJS interop shim — AUTO-GENERATED, DO NOT EDIT.
|
|
2
|
+
// See gen-cjs-shims.cjs.
|
|
3
|
+
"use strict";
|
|
4
|
+
const m = require("../../dist/models/zip.js");
|
|
5
|
+
const e = m && m.__esModule && "default" in m ? m.default : m;
|
|
6
|
+
module.exports = e;
|
|
7
|
+
if (e !== m && e && (typeof e === "object" || typeof e === "function")) {
|
|
8
|
+
for (const k in m) {
|
|
9
|
+
if (k === "default" || k === "__esModule" || k in e) continue;
|
|
10
|
+
try {
|
|
11
|
+
Object.defineProperty(e, k, {
|
|
12
|
+
get: () => m[k],
|
|
13
|
+
enumerable: true,
|
|
14
|
+
configurable: true,
|
|
15
|
+
});
|
|
16
|
+
} catch {}
|
|
17
|
+
}
|
|
18
|
+
}
|
package/dist/index.d.ts
CHANGED
|
@@ -2,14 +2,15 @@
|
|
|
2
2
|
* This is the backup module
|
|
3
3
|
*/
|
|
4
4
|
export declare namespace backup {
|
|
5
|
-
const create_backup: (fnm?: string) => Promise<string>, restore: (fnm: string, loadAndSaveNewPlugin: (plugin: import("@saltcorn/data/models/plugin")) => void, restore_first_user?: boolean, password?: string) => Promise<string | void>, create_csv_from_rows: (rows:
|
|
5
|
+
const create_backup: (fnm?: string) => Promise<string>, restore: (fnm: string, loadAndSaveNewPlugin: (plugin: import("@saltcorn/data/models/plugin").default) => void, restore_first_user?: boolean, password?: string, onLog?: (msg: string) => void) => Promise<string | void>, create_csv_from_rows: (rows: import("@saltcorn/db-common").Row[], fnm: string) => Promise<void>;
|
|
6
6
|
}
|
|
7
7
|
/**
|
|
8
8
|
* This is the pack module
|
|
9
9
|
*/
|
|
10
10
|
export declare namespace pack {
|
|
11
|
-
const table_pack: (nameOrTable: string | import("@saltcorn/data/models/table")) => Promise<import("@saltcorn/types/model-abstracts/abstract_table").TablePack>, view_pack: (name: string | import("@saltcorn/data/models/view")) => Promise<import("@saltcorn/types/model-abstracts/abstract_view").ViewPack>, plugin_pack: (name: string) => Promise<import("@saltcorn/types/model-abstracts/abstract_plugin").PluginPack>, page_pack: (name: string | import("@saltcorn/data/models/page")) => Promise<import("@saltcorn/types/model-abstracts/abstract_page").PagePack>, page_group_pack: (name: string) => Promise<import("@saltcorn/types/model-abstracts/abstract_page_group").PageGroupPack>, role_pack: (role: string) => Promise<import("@saltcorn/types/model-abstracts/abstract_role").RolePack>, library_pack: (name: string) => Promise<import("@saltcorn/types/model-abstracts/abstract_library").LibraryPack>, trigger_pack: (name: string | import("@saltcorn/data/models/trigger")) => Promise<import("@saltcorn/types/model-abstracts/abstract_trigger").TriggerPack>, model_pack: (name: string, tableName: string) => Promise<import("@saltcorn/types/model-abstracts/abstract_model").ModelPack>, model_instance_pack: (instanceName: string, modelName: string, tableName: string) => Promise<import("@saltcorn/types/model-abstracts/abstract_model_instance").ModelInstancePack>, install_pack: (pack: import("@saltcorn/types/base_types").Pack, name: string | undefined, loadAndSaveNewPlugin: (arg0: import("@saltcorn/data/models/plugin")) => void, bare_tables?: boolean) => Promise<void>, fetch_available_packs: () => Promise<Array<{
|
|
11
|
+
const table_pack: (nameOrTable: string | import("@saltcorn/data/models/table").default) => Promise<import("@saltcorn/types/model-abstracts/abstract_table").TablePack>, view_pack: (name: string | import("@saltcorn/data/models/view").default) => Promise<import("@saltcorn/types/model-abstracts/abstract_view").ViewPack>, plugin_pack: (name: string) => Promise<import("@saltcorn/types/model-abstracts/abstract_plugin").PluginPack>, page_pack: (name: string | import("@saltcorn/data/models/page").default) => Promise<import("@saltcorn/types/model-abstracts/abstract_page").PagePack>, page_group_pack: (name: string) => Promise<import("@saltcorn/types/model-abstracts/abstract_page_group").PageGroupPack>, role_pack: (role: string) => Promise<import("@saltcorn/types/model-abstracts/abstract_role").RolePack>, library_pack: (name: string) => Promise<import("@saltcorn/types/model-abstracts/abstract_library").LibraryPack>, trigger_pack: (name: string | import("@saltcorn/data/models/trigger").default) => Promise<import("@saltcorn/types/model-abstracts/abstract_trigger").TriggerPack>, model_pack: (name: string, tableName: string) => Promise<import("@saltcorn/types/model-abstracts/abstract_model").ModelPack>, model_instance_pack: (instanceName: string, modelName: string, tableName: string) => Promise<import("@saltcorn/types/model-abstracts/abstract_model_instance").ModelInstancePack>, install_pack: (pack: import("@saltcorn/types/base_types").Pack, name: string | undefined, loadAndSaveNewPlugin: (arg0: import("@saltcorn/data/models/plugin").default) => void, bare_tables?: boolean, onLog?: (msg: string) => void) => Promise<void>, fetch_available_packs: () => Promise<Array<{
|
|
12
12
|
name: string;
|
|
13
|
+
description: string;
|
|
13
14
|
}>>, fetch_pack_by_name: (name: string) => Promise<{
|
|
14
15
|
name: string;
|
|
15
16
|
pack: any;
|
|
@@ -32,12 +33,12 @@ export declare namespace tenant {
|
|
|
32
33
|
t: string;
|
|
33
34
|
plugin_loader: Function;
|
|
34
35
|
noSignalOrDB?: boolean;
|
|
35
|
-
loadAndSaveNewPlugin: (plugin: import("@saltcorn/data/models/plugin")) => void;
|
|
36
|
+
loadAndSaveNewPlugin: (plugin: import("@saltcorn/data/models/plugin").default) => void;
|
|
36
37
|
tenant_template?: string;
|
|
37
|
-
}) => Promise<void>, insertTenant: (subdomain: string, email?: string, description?: string, template?: string) => Promise<string>, switchToTenant: (domain: string, newurl: string) => Promise<void>, getAllTenants: () => Promise<string[]>, getAllTenantRows: () => Promise<import("@saltcorn/db-common
|
|
38
|
+
}) => Promise<void>, insertTenant: (subdomain: string, email?: string, description?: string, template?: string) => Promise<string>, switchToTenant: (domain: string, newurl: string) => Promise<void>, getAllTenants: () => Promise<string[]>, getAllTenantRows: () => Promise<import("@saltcorn/db-common").Row[]>, domain_sanitize: (s: string) => string, deleteTenant: (sub: string) => Promise<void>, eachTenant: (f: () => Promise<any>) => Promise<void>, copy_tenant_template: ({ tenant_template, target, loadAndSaveNewPlugin, }: {
|
|
38
39
|
tenant_template: string;
|
|
39
40
|
target: string;
|
|
40
|
-
loadAndSaveNewPlugin: (plugin: import("@saltcorn/data/models/plugin")) => void;
|
|
41
|
+
loadAndSaveNewPlugin: (plugin: import("@saltcorn/data/models/plugin").default) => void;
|
|
41
42
|
}) => Promise<void>;
|
|
42
43
|
}
|
|
43
44
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAQA;;GAEG;AACH,yBAAiB,MAAM,CAAC;IACf,MAAQ,aAAa,qCAAE,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAQA;;GAEG;AACH,yBAAiB,MAAM,CAAC;IACf,MAAQ,aAAa,qCAAE,OAAO,mNAAE,oBAAoB,2EAAiB,CAAC;CAC9E;AAGD;;GAEG;AACH,yBAAiB,IAAI,CAAC;IACb,MACL,UAAU,wJACV,SAAS,8IACT,WAAW,mGACX,SAAS,8IACT,eAAe,0GACf,SAAS,+FACT,YAAY,qGACZ,YAAY,uJACZ,UAAU,oHACV,mBAAmB,gKACnB,YAAY,4OACZ,qBAAqB;;;SACrB,kBAAkB;;;eAClB,gBAAgB;aAuBu1Z,CAAC;eAAiB,CAAC;QAtB13Z,cAAc,qFACd,WAAW;;;gBAqB0kgB,CAAC;gBAAoB,CAAC;;uBApB/lgB,CAAC;CAChB;AAGD;;GAEG;AACH,yBAAiB,MAAM,CAAC;IACf,MACL,aAAa;;;oBAWqnJ,CAAC;;uBAA8E,CAAC;yBAVltJ,YAAY,mGACZ,cAAc,qDACd,aAAa,2BACb,gBAAgB,sDAChB,eAAe,yBACf,YAAY,kCACZ,UAAU,4CACV,oBAAoB;;;;uBACN,CAAC;CAClB"}
|
package/dist/index.js
CHANGED
|
@@ -1,37 +1,31 @@
|
|
|
1
|
-
"use strict";
|
|
2
1
|
// For the typedoc documentation
|
|
3
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
4
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
5
|
-
};
|
|
6
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
-
exports.tenant = exports.pack = exports.backup = void 0;
|
|
8
2
|
/**
|
|
9
3
|
* This is the saltcorn-admin-models package.
|
|
10
4
|
* It contains models only required by the admin interface.
|
|
11
5
|
* @module
|
|
12
6
|
*/
|
|
13
|
-
|
|
7
|
+
import backupImport from "./models/backup.js";
|
|
14
8
|
/**
|
|
15
9
|
* This is the backup module
|
|
16
10
|
*/
|
|
17
|
-
var backup;
|
|
11
|
+
export var backup;
|
|
18
12
|
(function (backup) {
|
|
19
|
-
backup.create_backup =
|
|
20
|
-
})(backup || (
|
|
21
|
-
|
|
13
|
+
backup.create_backup = backupImport.create_backup, backup.restore = backupImport.restore, backup.create_csv_from_rows = backupImport.create_csv_from_rows;
|
|
14
|
+
})(backup || (backup = {}));
|
|
15
|
+
import packImport from "./models/pack.js";
|
|
22
16
|
/**
|
|
23
17
|
* This is the pack module
|
|
24
18
|
*/
|
|
25
|
-
var pack;
|
|
19
|
+
export var pack;
|
|
26
20
|
(function (pack) {
|
|
27
|
-
pack.table_pack =
|
|
28
|
-
})(pack || (
|
|
29
|
-
|
|
21
|
+
pack.table_pack = packImport.table_pack, pack.view_pack = packImport.view_pack, pack.plugin_pack = packImport.plugin_pack, pack.page_pack = packImport.page_pack, pack.page_group_pack = packImport.page_group_pack, pack.role_pack = packImport.role_pack, pack.library_pack = packImport.library_pack, pack.trigger_pack = packImport.trigger_pack, pack.model_pack = packImport.model_pack, pack.model_instance_pack = packImport.model_instance_pack, pack.install_pack = packImport.install_pack, pack.fetch_available_packs = packImport.fetch_available_packs, pack.fetch_pack_by_name = packImport.fetch_pack_by_name, pack.can_install_pack = packImport.can_install_pack, pack.uninstall_pack = packImport.uninstall_pack, pack.add_to_menu = packImport.add_to_menu;
|
|
22
|
+
})(pack || (pack = {}));
|
|
23
|
+
import tenantImport from "./models/tenant.js";
|
|
30
24
|
/**
|
|
31
25
|
* This is the tenant module
|
|
32
26
|
*/
|
|
33
|
-
var tenant;
|
|
27
|
+
export var tenant;
|
|
34
28
|
(function (tenant) {
|
|
35
|
-
tenant.create_tenant =
|
|
36
|
-
})(tenant || (
|
|
29
|
+
tenant.create_tenant = tenantImport.create_tenant, tenant.insertTenant = tenantImport.insertTenant, tenant.switchToTenant = tenantImport.switchToTenant, tenant.getAllTenants = tenantImport.getAllTenants, tenant.getAllTenantRows = tenantImport.getAllTenantRows, tenant.domain_sanitize = tenantImport.domain_sanitize, tenant.deleteTenant = tenantImport.deleteTenant, tenant.eachTenant = tenantImport.eachTenant, tenant.copy_tenant_template = tenantImport.copy_tenant_template;
|
|
30
|
+
})(tenant || (tenant = {}));
|
|
37
31
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAEhC;;;;GAIG;AACH,OAAO,YAAY,MAAM,oBAAoB,CAAC;AAC9C;;GAEG;AACH,MAAM,KAAW,MAAM,CAEtB;AAFD,WAAiB,MAAM;IACN,oBAAa,GAAoC,YAAY,cAAhD,EAAE,cAAO,GAA2B,YAAY,QAAvC,EAAE,2BAAoB,GAAK,YAAY,qBAAjB,CAAkB;AAC/E,CAAC,EAFgB,MAAM,KAAN,MAAM,QAEtB;AAED,OAAO,UAAU,MAAM,kBAAkB,CAAC;AAC1C;;GAEG;AACH,MAAM,KAAW,IAAI,CAmBpB;AAnBD,WAAiB,IAAI;IAEjB,eAAU,GAgBR,UAAU,WAhBF,EACV,cAAS,GAeP,UAAU,UAfH,EACT,gBAAW,GAcT,UAAU,YAdD,EACX,cAAS,GAaP,UAAU,UAbH,EACT,oBAAe,GAYb,UAAU,gBAZG,EACf,cAAS,GAWP,UAAU,UAXH,EACT,iBAAY,GAUV,UAAU,aAVA,EACZ,iBAAY,GASV,UAAU,aATA,EACZ,eAAU,GAQR,UAAU,WARF,EACV,wBAAmB,GAOjB,UAAU,oBAPO,EACnB,iBAAY,GAMV,UAAU,aANA,EACZ,0BAAqB,GAKnB,UAAU,sBALS,EACrB,uBAAkB,GAIhB,UAAU,mBAJM,EAClB,qBAAgB,GAGd,UAAU,iBAHI,EAChB,mBAAc,GAEZ,UAAU,eAFE,EACd,gBAAW,GACT,UAAU,YADD,CACE;AACjB,CAAC,EAnBgB,IAAI,KAAJ,IAAI,QAmBpB;AAED,OAAO,YAAY,MAAM,oBAAoB,CAAC;AAC9C;;GAEG;AACH,MAAM,KAAW,MAAM,CAYtB;AAZD,WAAiB,MAAM;IAEnB,oBAAa,GASX,YAAY,cATD,EACb,mBAAY,GAQV,YAAY,aARF,EACZ,qBAAc,GAOZ,YAAY,eAPA,EACd,oBAAa,GAMX,YAAY,cAND,EACb,uBAAgB,GAKd,YAAY,iBALE,EAChB,sBAAe,GAIb,YAAY,gBAJC,EACf,mBAAY,GAGV,YAAY,aAHF,EACZ,iBAAU,GAER,YAAY,WAFJ,EACV,2BAAoB,GAClB,YAAY,qBADM,CACL;AACnB,CAAC,EAZgB,MAAM,KAAN,MAAM,QAYtB"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Tiered (GFS) backup retention classifier.
|
|
3
|
+
*
|
|
4
|
+
* Given a list of backup entries and a keep-policy, returns the entries
|
|
5
|
+
* that should be DELETED. Mirrors the semantics of `restic forget`:
|
|
6
|
+
* for each tier (daily / weekly / monthly / yearly), the newest backup
|
|
7
|
+
* in each of the most recent N buckets is kept. An entry survives if any
|
|
8
|
+
* tier keeps it. `keep_min` is a safety net that guarantees a minimum
|
|
9
|
+
* number of retained backups regardless of age.
|
|
10
|
+
*
|
|
11
|
+
* Pure and I/O-free: no Saltcorn imports, so it is unit-testable without
|
|
12
|
+
* a database or a backup destination.
|
|
13
|
+
* @category saltcorn-admin-models
|
|
14
|
+
* @module models/backup-retention
|
|
15
|
+
*/
|
|
16
|
+
export type BackupEntry = {
|
|
17
|
+
/** Object key (S3) or filename (local / SFTP) */
|
|
18
|
+
key: string;
|
|
19
|
+
/** Backup timestamp (LastModified / file mtime) */
|
|
20
|
+
date: Date;
|
|
21
|
+
};
|
|
22
|
+
export type RetentionPolicy = {
|
|
23
|
+
keep_daily: number;
|
|
24
|
+
keep_weekly: number;
|
|
25
|
+
keep_monthly: number;
|
|
26
|
+
keep_yearly: number;
|
|
27
|
+
keep_min: number;
|
|
28
|
+
};
|
|
29
|
+
/**
|
|
30
|
+
* Returns the subset of `entries` that should be deleted under `policy`.
|
|
31
|
+
* Entries not returned are retained.
|
|
32
|
+
* @param entries backup entries (any order)
|
|
33
|
+
* @param policy how many backups to keep per tier
|
|
34
|
+
* @returns the deletion candidates
|
|
35
|
+
*/
|
|
36
|
+
export declare const selectBackupsToDelete: (entries: BackupEntry[], policy: RetentionPolicy) => BackupEntry[];
|
|
37
|
+
/**
|
|
38
|
+
* Group entries by tenant so each tenant gets its own GFS ladder.
|
|
39
|
+
*
|
|
40
|
+
* Backup filenames follow `${prefix}${site_or_tenant}-${date}.zip`
|
|
41
|
+
* (see create_backup()). The grouping key is the basename with the
|
|
42
|
+
* trailing `-<date>.zip` stripped; entries that do not match the
|
|
43
|
+
* pattern fall into their full basename as a conservative default
|
|
44
|
+
* (they are then subject to keep_min within their own group).
|
|
45
|
+
* @param entries backup entries
|
|
46
|
+
* @returns entries grouped by tenant key
|
|
47
|
+
*/
|
|
48
|
+
export declare const groupByTenant: (entries: BackupEntry[]) => Map<string, BackupEntry[]>;
|
|
49
|
+
/**
|
|
50
|
+
* Convenience wrapper: apply the policy per tenant group and return
|
|
51
|
+
* the union of deletion candidates.
|
|
52
|
+
* @param entries backup entries across all tenants
|
|
53
|
+
* @param policy how many backups to keep per tier
|
|
54
|
+
* @returns the deletion candidates
|
|
55
|
+
*/
|
|
56
|
+
export declare const selectBackupsToDeleteGrouped: (entries: BackupEntry[], policy: RetentionPolicy) => BackupEntry[];
|
|
57
|
+
//# sourceMappingURL=backup-retention.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"backup-retention.d.ts","sourceRoot":"","sources":["../../models/backup-retention.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,MAAM,MAAM,WAAW,GAAG;IACxB,iDAAiD;IACjD,GAAG,EAAE,MAAM,CAAC;IACZ,mDAAmD;IACnD,IAAI,EAAE,IAAI,CAAC;CACZ,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AA8BF;;;;;;GAMG;AACH,eAAO,MAAM,qBAAqB,GAChC,SAAS,WAAW,EAAE,EACtB,QAAQ,eAAe,KACtB,WAAW,EAwCb,CAAC;AAEF;;;;;;;;;;GAUG;AACH,eAAO,MAAM,aAAa,GACxB,SAAS,WAAW,EAAE,KACrB,GAAG,CAAC,MAAM,EAAE,WAAW,EAAE,CAU3B,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,4BAA4B,GACvC,SAAS,WAAW,EAAE,EACtB,QAAQ,eAAe,KACtB,WAAW,EAKb,CAAC"}
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Tiered (GFS) backup retention classifier.
|
|
3
|
+
*
|
|
4
|
+
* Given a list of backup entries and a keep-policy, returns the entries
|
|
5
|
+
* that should be DELETED. Mirrors the semantics of `restic forget`:
|
|
6
|
+
* for each tier (daily / weekly / monthly / yearly), the newest backup
|
|
7
|
+
* in each of the most recent N buckets is kept. An entry survives if any
|
|
8
|
+
* tier keeps it. `keep_min` is a safety net that guarantees a minimum
|
|
9
|
+
* number of retained backups regardless of age.
|
|
10
|
+
*
|
|
11
|
+
* Pure and I/O-free: no Saltcorn imports, so it is unit-testable without
|
|
12
|
+
* a database or a backup destination.
|
|
13
|
+
* @category saltcorn-admin-models
|
|
14
|
+
* @module models/backup-retention
|
|
15
|
+
*/
|
|
16
|
+
/** ISO-8601 week number (1..53), week starts Monday. */
|
|
17
|
+
const isoWeek = (d) => {
|
|
18
|
+
const date = new Date(Date.UTC(d.getFullYear(), d.getMonth(), d.getDate()));
|
|
19
|
+
const dayNum = date.getUTCDay() || 7; // Sun=7
|
|
20
|
+
date.setUTCDate(date.getUTCDate() + 4 - dayNum); // nearest Thursday
|
|
21
|
+
const yearStart = new Date(Date.UTC(date.getUTCFullYear(), 0, 1));
|
|
22
|
+
const week = Math.ceil(((date.getTime() - yearStart.getTime()) / 86400000 + 1) / 7);
|
|
23
|
+
return `${date.getUTCFullYear()}-W${String(week).padStart(2, "0")}`;
|
|
24
|
+
};
|
|
25
|
+
const dayBucket = (d) => `${d.getFullYear()}-${String(d.getMonth() + 1).padStart(2, "0")}-${String(d.getDate()).padStart(2, "0")}`;
|
|
26
|
+
const monthBucket = (d) => `${d.getFullYear()}-${String(d.getMonth() + 1).padStart(2, "0")}`;
|
|
27
|
+
const yearBucket = (d) => `${d.getFullYear()}`;
|
|
28
|
+
/**
|
|
29
|
+
* Returns the subset of `entries` that should be deleted under `policy`.
|
|
30
|
+
* Entries not returned are retained.
|
|
31
|
+
* @param entries backup entries (any order)
|
|
32
|
+
* @param policy how many backups to keep per tier
|
|
33
|
+
* @returns the deletion candidates
|
|
34
|
+
*/
|
|
35
|
+
export const selectBackupsToDelete = (entries, policy) => {
|
|
36
|
+
if (entries.length === 0)
|
|
37
|
+
return [];
|
|
38
|
+
// newest first
|
|
39
|
+
const sorted = [...entries].sort((a, b) => b.date.getTime() - a.date.getTime());
|
|
40
|
+
const tiers = [
|
|
41
|
+
{ remaining: policy.keep_daily, bucketOf: dayBucket, seen: new Set() },
|
|
42
|
+
{ remaining: policy.keep_weekly, bucketOf: isoWeek, seen: new Set() },
|
|
43
|
+
{ remaining: policy.keep_monthly, bucketOf: monthBucket, seen: new Set() },
|
|
44
|
+
{ remaining: policy.keep_yearly, bucketOf: yearBucket, seen: new Set() },
|
|
45
|
+
];
|
|
46
|
+
const kept = new Set();
|
|
47
|
+
for (const entry of sorted) {
|
|
48
|
+
for (const tier of tiers) {
|
|
49
|
+
if (tier.remaining <= 0)
|
|
50
|
+
continue;
|
|
51
|
+
const bucket = tier.bucketOf(entry.date);
|
|
52
|
+
if (tier.seen.has(bucket))
|
|
53
|
+
continue;
|
|
54
|
+
// newest entry of a fresh bucket in a tier with capacity → keep
|
|
55
|
+
tier.seen.add(bucket);
|
|
56
|
+
tier.remaining--;
|
|
57
|
+
kept.add(entry);
|
|
58
|
+
// NOTE: no `break` — a single backup may satisfy several tiers
|
|
59
|
+
// at once (e.g. newest daily is also newest weekly/monthly).
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
// Safety net: never fall below keep_min retained backups
|
|
63
|
+
if (policy.keep_min > 0 && kept.size < policy.keep_min) {
|
|
64
|
+
for (const entry of sorted) {
|
|
65
|
+
if (kept.size >= policy.keep_min)
|
|
66
|
+
break;
|
|
67
|
+
kept.add(entry);
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
return sorted.filter((e) => !kept.has(e));
|
|
71
|
+
};
|
|
72
|
+
/**
|
|
73
|
+
* Group entries by tenant so each tenant gets its own GFS ladder.
|
|
74
|
+
*
|
|
75
|
+
* Backup filenames follow `${prefix}${site_or_tenant}-${date}.zip`
|
|
76
|
+
* (see create_backup()). The grouping key is the basename with the
|
|
77
|
+
* trailing `-<date>.zip` stripped; entries that do not match the
|
|
78
|
+
* pattern fall into their full basename as a conservative default
|
|
79
|
+
* (they are then subject to keep_min within their own group).
|
|
80
|
+
* @param entries backup entries
|
|
81
|
+
* @returns entries grouped by tenant key
|
|
82
|
+
*/
|
|
83
|
+
export const groupByTenant = (entries) => {
|
|
84
|
+
const groups = new Map();
|
|
85
|
+
for (const entry of entries) {
|
|
86
|
+
const base = entry.key.split("/").pop() || entry.key;
|
|
87
|
+
const m = base.match(/^(.*)-\d{4}-\d{1,2}-\d{1,2}.*\.zip$/);
|
|
88
|
+
const groupKey = m ? m[1] : base;
|
|
89
|
+
if (!groups.has(groupKey))
|
|
90
|
+
groups.set(groupKey, []);
|
|
91
|
+
groups.get(groupKey).push(entry);
|
|
92
|
+
}
|
|
93
|
+
return groups;
|
|
94
|
+
};
|
|
95
|
+
/**
|
|
96
|
+
* Convenience wrapper: apply the policy per tenant group and return
|
|
97
|
+
* the union of deletion candidates.
|
|
98
|
+
* @param entries backup entries across all tenants
|
|
99
|
+
* @param policy how many backups to keep per tier
|
|
100
|
+
* @returns the deletion candidates
|
|
101
|
+
*/
|
|
102
|
+
export const selectBackupsToDeleteGrouped = (entries, policy) => {
|
|
103
|
+
const out = [];
|
|
104
|
+
for (const [, group] of groupByTenant(entries))
|
|
105
|
+
out.push(...selectBackupsToDelete(group, policy));
|
|
106
|
+
return out;
|
|
107
|
+
};
|
|
108
|
+
//# sourceMappingURL=backup-retention.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"backup-retention.js","sourceRoot":"","sources":["../../models/backup-retention.ts"],"names":[],"mappings":"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"}
|
package/dist/models/backup.d.ts
CHANGED
|
@@ -1,11 +1,15 @@
|
|
|
1
1
|
import Plugin from "@saltcorn/data/models/plugin";
|
|
2
|
+
import { Readable } from "stream";
|
|
3
|
+
import { Row } from "@saltcorn/db-common";
|
|
2
4
|
declare const _default: {
|
|
3
5
|
create_backup: (fnm?: string) => Promise<string>;
|
|
4
|
-
|
|
5
|
-
|
|
6
|
+
backup_to_stream: <T>(consume: (body: Readable) => Promise<T>) => Promise<T>;
|
|
7
|
+
backup_file_name: () => string;
|
|
8
|
+
restore: (fnm: string, loadAndSaveNewPlugin: (plugin: Plugin) => void, restore_first_user?: boolean, password?: string, onLog?: (msg: string) => void) => Promise<string | void>;
|
|
9
|
+
create_csv_from_rows: (rows: Row[], fnm: string) => Promise<void>;
|
|
6
10
|
auto_backup_now: () => Promise<void>;
|
|
7
11
|
create_pack_json: (withEventLog?: boolean, forSnapshot?: boolean) => Promise<object>;
|
|
8
12
|
extract: (fnm: string, dir: string, password?: string) => Promise<void>;
|
|
9
13
|
};
|
|
10
|
-
export
|
|
14
|
+
export default _default;
|
|
11
15
|
//# sourceMappingURL=backup.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"backup.d.ts","sourceRoot":"","sources":["../../models/backup.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"backup.d.ts","sourceRoot":"","sources":["../../models/backup.ts"],"names":[],"mappings":"AAaA,OAAO,MAAM,MAAM,8BAA8B,CAAC;AAgBlD,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAkDlC,OAAO,EAAE,GAAG,EAAE,MAAM,qBAAqB,CAAC;;0BAwZP,MAAM,KAAG,OAAO,CAAC,MAAM,CAAC;uBAhC3B,CAAC,WACtB,CAAC,IAAI,EAAE,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,KACtC,OAAO,CAAC,CAAC,CAAC;4BAtDgB,MAAM;mBA4T5B,MAAM,wBACW,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,uBACzB,OAAO,aACjB,MAAM,UACT,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,KAC5B,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;iCAvejB,GAAG,EAAE,OACN,MAAM,KACV,OAAO,CAAC,IAAI,CAAC;;sCAzJA,OAAO,gBACR,OAAO,KACnB,OAAO,CAAC,MAAM,CAAC;mBA6ZX,MAAM,OACN,MAAM,aACA,MAAM,KAChB,OAAO,CAAC,IAAI,CAAC;;AAonBhB,wBASE"}
|