@secrecy/lib 1.0.0 → 1.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.
- package/LICENSE +1 -1
- package/dist/BaseClient.d.ts +29 -177
- package/dist/BaseClient.js +114 -732
- package/dist/PopupTools.d.ts +4 -4
- package/dist/PopupTools.js +24 -41
- package/dist/ZeusThunder.js +3 -17
- package/dist/cache.js +1 -1
- package/dist/client/SecrecyAppClient.d.ts +17 -0
- package/dist/client/SecrecyAppClient.js +226 -0
- package/dist/client/SecrecyCloudClient.d.ts +89 -0
- package/dist/client/SecrecyCloudClient.js +1405 -0
- package/dist/client/SecrecyDbClient.d.ts +21 -0
- package/dist/client/SecrecyDbClient.js +177 -0
- package/dist/client/SecrecyMailClient.d.ts +42 -0
- package/dist/client/SecrecyMailClient.js +1022 -0
- package/dist/client/SecrecyPayClient.d.ts +28 -0
- package/dist/client/SecrecyPayClient.js +68 -0
- package/dist/client/SecrecyWalletClient.d.ts +30 -0
- package/dist/client/SecrecyWalletClient.js +73 -0
- package/dist/client/convert/file.js +2 -3
- package/dist/client/convert/mail.d.ts +2 -2
- package/dist/client/convert/mail.js +7 -11
- package/dist/client/convert/node.js +19 -33
- package/dist/client/helpers.d.ts +9 -4
- package/dist/client/helpers.js +30 -25
- package/dist/client/index.d.ts +15 -145
- package/dist/client/index.js +16 -3176
- package/dist/client/storage.js +4 -4
- package/dist/client/types/File.d.ts +3 -3
- package/dist/client/types/Inputs.d.ts +4 -4
- package/dist/client/types/Node.d.ts +21 -14
- package/dist/client/types/Node.js +1 -1
- package/dist/client/types/UserAppNotifications.d.ts +1 -1
- package/dist/client/types/UserAppSettings.d.ts +2 -3
- package/dist/client/types/UserAppSettings.js +1 -1
- package/dist/client/types/index.d.ts +23 -51
- package/dist/client/types/index.js +1 -1
- package/dist/client/types/selectors.d.ts +51 -127
- package/dist/client/types/selectors.js +21 -11
- package/dist/crypto/file.d.ts +2 -2
- package/dist/crypto/file.js +19 -34
- package/dist/crypto/index.js +1 -3
- package/dist/error.d.ts +5 -2
- package/dist/error.js +1 -1
- package/dist/index.d.ts +7 -5
- package/dist/index.js +4 -4
- package/dist/minify/index.js +2 -7
- package/dist/minify/lz4.js +79 -167
- package/dist/sodium.js +1 -1
- package/dist/utils/store-buddy.d.ts +1 -1
- package/dist/utils/store-buddy.js +1 -8
- package/dist/utils/time.js +1 -3
- package/dist/utils/utils.js +1 -11
- package/dist/worker/md5.js +1 -2
- package/dist/worker/sodium.js +16 -18
- package/dist/worker/workerCodes.js +255 -3
- package/dist/zeus/const.js +587 -31
- package/dist/zeus/index.d.ts +5014 -631
- package/dist/zeus/index.js +213 -255
- package/package.json +64 -61
- package/dist/client/admin/index.d.ts +0 -11
- package/dist/client/admin/index.js +0 -110
- package/dist/worker/__mock__/sodium.worker.d.ts +0 -19
- package/dist/worker/__mock__/sodium.worker.js +0 -49
package/dist/client/helpers.js
CHANGED
|
@@ -5,37 +5,44 @@ export function parseInfos() {
|
|
|
5
5
|
if (!window.location.hash) {
|
|
6
6
|
return null;
|
|
7
7
|
}
|
|
8
|
-
|
|
9
8
|
const hash = window.location.hash.substr(1);
|
|
10
|
-
|
|
11
9
|
try {
|
|
12
10
|
const res = JSON.parse(atob(hash));
|
|
13
|
-
window.location.hash = "";
|
|
14
|
-
|
|
11
|
+
window.location.hash = "";
|
|
12
|
+
// TODO Add object content validation
|
|
15
13
|
return res;
|
|
16
14
|
} catch {
|
|
17
15
|
return null;
|
|
18
16
|
}
|
|
19
17
|
}
|
|
18
|
+
export const getUrl = _ref => {
|
|
19
|
+
let {
|
|
20
|
+
env,
|
|
21
|
+
hash,
|
|
22
|
+
path
|
|
23
|
+
} = _ref;
|
|
24
|
+
let envStr = "";
|
|
25
|
+
if (env === "dev") {
|
|
26
|
+
envStr = "dev.";
|
|
27
|
+
}
|
|
28
|
+
const lang = document.documentElement.lang;
|
|
29
|
+
return process.env.NEXT_PUBLIC_SECRECY_API_URL ? `http://localhost:3002${lang ? `/${lang}` : ""}${path.startsWith("/") ? path : `/${path}`}#${hash}` : `https://auth.${envStr}secrecy.me${lang ? `/${lang}` : ""}${path.startsWith("/") ? path : `/${path}`}#${hash}`;
|
|
30
|
+
};
|
|
20
31
|
export function getSecrecyClient(env, session) {
|
|
21
32
|
const storage = getStorage(session);
|
|
22
33
|
const uaSession = storage.userAppSession.load();
|
|
23
34
|
const uaKeys = storage.userAppKeys.load();
|
|
24
35
|
const uaJwt = storage.jwt.load();
|
|
25
|
-
|
|
26
36
|
if (!uaSession || !uaKeys || !uaJwt) {
|
|
27
37
|
const infos = parseInfos();
|
|
28
|
-
|
|
29
38
|
if (infos) {
|
|
30
39
|
storage.userAppKeys.save(infos.keys);
|
|
31
40
|
storage.userAppSession.save(infos.uaSession);
|
|
32
41
|
storage.jwt.save(infos.jwt);
|
|
33
42
|
return new SecrecyClient(infos.uaSession, infos.keys, infos.jwt, env);
|
|
34
43
|
}
|
|
35
|
-
|
|
36
44
|
return null;
|
|
37
45
|
}
|
|
38
|
-
|
|
39
46
|
return new SecrecyClient(uaSession, uaKeys, uaJwt, env);
|
|
40
47
|
}
|
|
41
48
|
export function login(_temp) {
|
|
@@ -50,13 +57,10 @@ export function login(_temp) {
|
|
|
50
57
|
} = _temp === void 0 ? {} : _temp;
|
|
51
58
|
return new Promise((resolve, reject) => {
|
|
52
59
|
const appUrl = window.location.origin;
|
|
53
|
-
|
|
54
60
|
if (appCode && !appUrl.includes("localhost")) {
|
|
55
61
|
return reject("Can't use appCode if not in localhost");
|
|
56
62
|
}
|
|
57
|
-
|
|
58
63
|
const client = getSecrecyClient(env);
|
|
59
|
-
|
|
60
64
|
if (!client) {
|
|
61
65
|
const infos = {
|
|
62
66
|
appUrl,
|
|
@@ -67,15 +71,11 @@ export function login(_temp) {
|
|
|
67
71
|
backPath
|
|
68
72
|
};
|
|
69
73
|
const data = btoa(JSON.stringify(infos)).replaceAll("=", "");
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
}
|
|
75
|
-
|
|
76
|
-
const lang = document.documentElement.lang;
|
|
77
|
-
const url = process.env.NEXT_PUBLIC_SECRECY_API_URL ? "http://localhost:3002" + (lang ? "/" + lang : "") + "/login#" + data : "https://auth." + envStr + "secrecy.me" + (lang ? "/" + lang : "") + "/login#" + data;
|
|
78
|
-
|
|
74
|
+
const url = getUrl({
|
|
75
|
+
env,
|
|
76
|
+
hash: data,
|
|
77
|
+
path: "login"
|
|
78
|
+
});
|
|
79
79
|
const validate = infos => {
|
|
80
80
|
const storage = getStorage(session);
|
|
81
81
|
storage.userAppSession.save(infos.uaSession);
|
|
@@ -83,10 +83,8 @@ export function login(_temp) {
|
|
|
83
83
|
storage.jwt.save(infos.jwt);
|
|
84
84
|
return resolve(new SecrecyClient(infos.uaSession, infos.keys, infos.jwt, env));
|
|
85
85
|
};
|
|
86
|
-
|
|
87
86
|
if (redirect) {
|
|
88
87
|
const infos = parseInfos();
|
|
89
|
-
|
|
90
88
|
if (infos) {
|
|
91
89
|
return validate(infos);
|
|
92
90
|
} else {
|
|
@@ -94,12 +92,19 @@ export function login(_temp) {
|
|
|
94
92
|
return resolve(null);
|
|
95
93
|
}
|
|
96
94
|
} else {
|
|
97
|
-
popup(url, "Secrecy Login", {
|
|
95
|
+
popup(url, "Secrecy Login", {
|
|
96
|
+
width: 500,
|
|
97
|
+
height: 750,
|
|
98
|
+
resizable: "no",
|
|
99
|
+
menubar: "no",
|
|
100
|
+
location: "no",
|
|
101
|
+
centered: true,
|
|
102
|
+
scrollbars: "no"
|
|
103
|
+
}, (err, data) => {
|
|
98
104
|
if (err) {
|
|
99
105
|
return reject(err);
|
|
100
106
|
} else {
|
|
101
107
|
const infos = data;
|
|
102
|
-
|
|
103
108
|
if (infos) {
|
|
104
109
|
return validate(infos);
|
|
105
110
|
}
|
|
@@ -111,4 +116,4 @@ export function login(_temp) {
|
|
|
111
116
|
}
|
|
112
117
|
});
|
|
113
118
|
}
|
|
114
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJTZWNyZWN5Q2xpZW50IiwicG9wdXAiLCJnZXRTdG9yYWdlIiwicGFyc2VJbmZvcyIsIndpbmRvdyIsImxvY2F0aW9uIiwiaGFzaCIsInN1YnN0ciIsInJlcyIsIkpTT04iLCJwYXJzZSIsImF0b2IiLCJnZXRTZWNyZWN5Q2xpZW50IiwiZW52Iiwic2Vzc2lvbiIsInN0b3JhZ2UiLCJ1YVNlc3Npb24iLCJ1c2VyQXBwU2Vzc2lvbiIsImxvYWQiLCJ1YUtleXMiLCJ1c2VyQXBwS2V5cyIsInVhSnd0Iiwiand0IiwiaW5mb3MiLCJzYXZlIiwia2V5cyIsImxvZ2luIiwiYXBwQ29kZSIsInBhdGgiLCJyZWRpcmVjdCIsInNjb3BlcyIsImJhY2tQYXRoIiwiUHJvbWlzZSIsInJlc29sdmUiLCJyZWplY3QiLCJhcHBVcmwiLCJvcmlnaW4iLCJpbmNsdWRlcyIsImNsaWVudCIsImRhdGEiLCJidG9hIiwic3RyaW5naWZ5IiwicmVwbGFjZUFsbCIsImVudlN0ciIsImxhbmciLCJkb2N1bWVudCIsImRvY3VtZW50RWxlbWVudCIsInVybCIsInByb2Nlc3MiLCJORVhUX1BVQkxJQ19TRUNSRUNZX0FQSV9VUkwiLCJ2YWxpZGF0ZSIsImhyZWYiLCJlcnIiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvY2xpZW50L2hlbHBlcnMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU2VjcmVjeUNsaWVudCB9IGZyb20gXCIuL2luZGV4LmpzXCI7XG5pbXBvcnQgeyBwb3B1cCB9IGZyb20gXCIuLi9Qb3B1cFRvb2xzLmpzXCI7XG5pbXBvcnQgdHlwZSB7IFNlY3JlY3lVc2VyQXBwIH0gZnJvbSBcIi4vdHlwZXMvaW5kZXguanNcIjtcbmltcG9ydCB7IGdldFN0b3JhZ2UgfSBmcm9tIFwiLi9zdG9yYWdlLmpzXCI7XG5cbmV4cG9ydCBmdW5jdGlvbiBwYXJzZUluZm9zKCk6IFNlY3JlY3lVc2VyQXBwIHwgbnVsbCB7XG4gIGlmICghd2luZG93LmxvY2F0aW9uLmhhc2gpIHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuICBjb25zdCBoYXNoID0gd2luZG93LmxvY2F0aW9uLmhhc2guc3Vic3RyKDEpO1xuICB0cnkge1xuICAgIGNvbnN0IHJlcyA9IEpTT04ucGFyc2UoYXRvYihoYXNoKSk7XG4gICAgd2luZG93LmxvY2F0aW9uLmhhc2ggPSBcIlwiO1xuICAgIC8vIFRPRE8gQWRkIG9iamVjdCBjb250ZW50IHZhbGlkYXRpb25cbiAgICByZXR1cm4gcmVzO1xuICB9IGNhdGNoIHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxufVxuXG5leHBvcnQgdHlwZSBIYXNoSW5mb3MgPSB7XG4gIGFwcFVybDogc3RyaW5nO1xuICBiYWNrUGF0aD86IHN0cmluZztcbiAgYXBwQ29kZT86IHN0cmluZyB8IG51bGwgfCB1bmRlZmluZWQ7XG4gIHBhdGg/OiBzdHJpbmcgfCBudWxsIHwgdW5kZWZpbmVkO1xuICByZWRpcmVjdD86IGJvb2xlYW47XG4gIHNjb3Blcz86IHtcbiAgICBlbWFpbDogYm9vbGVhbjtcbiAgfTtcbn07XG5leHBvcnQgdHlwZSBTZWNyZWN5RW52ID0gXCJkZXZcIiB8IFwicHJvZFwiO1xuZXhwb3J0IHR5cGUgVXNlU2VjcmVjeVBhcmFtcyA9IE9taXQ8SGFzaEluZm9zLCBcImFwcFVybFwiPiAmIHtcbiAgZW52OiBTZWNyZWN5RW52O1xuICBzZXNzaW9uPzogYm9vbGVhbiB8IHVuZGVmaW5lZDtcbn07XG5cbmV4cG9ydCB0eXBlIFZhbHVlPFQgZXh0ZW5kcyBVc2VTZWNyZWN5UGFyYW1zPiA9IFQgZXh0ZW5kcyB7IHJlZGlyZWN0OiB0cnVlIH1cbiAgPyBTZWNyZWN5Q2xpZW50IHwgbnVsbFxuICA6IFNlY3JlY3lDbGllbnQ7XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRTZWNyZWN5Q2xpZW50KFxuICBlbnY6IFNlY3JlY3lFbnYsXG4gIHNlc3Npb24/OiBib29sZWFuIHwgdW5kZWZpbmVkXG4pOiBTZWNyZWN5Q2xpZW50IHwgbnVsbCB7XG4gIGNvbnN0IHN0b3JhZ2UgPSBnZXRTdG9yYWdlKHNlc3Npb24pO1xuICBjb25zdCB1YVNlc3Npb24gPSBzdG9yYWdlLnVzZXJBcHBTZXNzaW9uLmxvYWQoKTtcbiAgY29uc3QgdWFLZXlzID0gc3RvcmFnZS51c2VyQXBwS2V5cy5sb2FkKCk7XG4gIGNvbnN0IHVhSnd0ID0gc3RvcmFnZS5qd3QubG9hZCgpO1xuICBpZiAoIXVhU2Vzc2lvbiB8fCAhdWFLZXlzIHx8ICF1YUp3dCkge1xuICAgIGNvbnN0IGluZm9zID0gcGFyc2VJbmZvcygpO1xuICAgIGlmIChpbmZvcykge1xuICAgICAgc3RvcmFnZS51c2VyQXBwS2V5cy5zYXZlKGluZm9zLmtleXMpO1xuICAgICAgc3RvcmFnZS51c2VyQXBwU2Vzc2lvbi5zYXZlKGluZm9zLnVhU2Vzc2lvbik7XG4gICAgICBzdG9yYWdlLmp3dC5zYXZlKGluZm9zLmp3dCk7XG4gICAgICByZXR1cm4gbmV3IFNlY3JlY3lDbGllbnQoaW5mb3MudWFTZXNzaW9uLCBpbmZvcy5rZXlzLCBpbmZvcy5qd3QsIGVudik7XG4gICAgfVxuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgcmV0dXJuIG5ldyBTZWNyZWN5Q2xpZW50KHVhU2Vzc2lvbiwgdWFLZXlzLCB1YUp3dCwgZW52KTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGxvZ2luPFQgZXh0ZW5kcyBVc2VTZWNyZWN5UGFyYW1zPihcbiAgeyBhcHBDb2RlLCBwYXRoLCByZWRpcmVjdCwgc2NvcGVzLCBiYWNrUGF0aCwgZW52LCBzZXNzaW9uIH06IFQgPSB7fSBhcyBUXG4pOiBQcm9taXNlPFZhbHVlPFQ+PiB7XG4gIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgY29uc3QgYXBwVXJsID0gd2luZG93LmxvY2F0aW9uLm9yaWdpbjtcbiAgICBpZiAoYXBwQ29kZSAmJiAhYXBwVXJsLmluY2x1ZGVzKFwibG9jYWxob3N0XCIpKSB7XG4gICAgICByZXR1cm4gcmVqZWN0KFwiQ2FuJ3QgdXNlIGFwcENvZGUgaWYgbm90IGluIGxvY2FsaG9zdFwiKTtcbiAgICB9XG4gICAgY29uc3QgY2xpZW50ID0gZ2V0U2VjcmVjeUNsaWVudChlbnYpO1xuXG4gICAgaWYgKCFjbGllbnQpIHtcbiAgICAgIGNvbnN0IGluZm9zOiBIYXNoSW5mb3MgPSB7XG4gICAgICAgIGFwcFVybCxcbiAgICAgICAgYXBwQ29kZSxcbiAgICAgICAgcmVkaXJlY3QsXG4gICAgICAgIHBhdGgsXG4gICAgICAgIHNjb3BlcyxcbiAgICAgICAgYmFja1BhdGhcbiAgICAgIH07XG4gICAgICBjb25zdCBkYXRhID0gYnRvYShKU09OLnN0cmluZ2lmeShpbmZvcykpLnJlcGxhY2VBbGwoXCI9XCIsIFwiXCIpO1xuXG4gICAgICBsZXQgZW52U3RyID0gXCJcIjtcbiAgICAgIGlmIChlbnYgPT09IFwiZGV2XCIpIHtcbiAgICAgICAgZW52U3RyID0gXCJkZXYuXCI7XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IGxhbmcgPSBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQubGFuZztcblxuICAgICAgY29uc3QgdXJsID0gcHJvY2Vzcy5lbnYuTkVYVF9QVUJMSUNfU0VDUkVDWV9BUElfVVJMXG4gICAgICAgID8gYGh0dHA6Ly9sb2NhbGhvc3Q6MzAwMiR7bGFuZyA/IGAvJHtsYW5nfWAgOiBcIlwifS9sb2dpbiMke2RhdGF9YFxuICAgICAgICA6IGBodHRwczovL2F1dGguJHtlbnZTdHJ9c2VjcmVjeS5tZSR7XG4gICAgICAgICAgICBsYW5nID8gYC8ke2xhbmd9YCA6IFwiXCJcbiAgICAgICAgICB9L2xvZ2luIyR7ZGF0YX1gO1xuXG4gICAgICBjb25zdCB2YWxpZGF0ZSA9IChpbmZvczogU2VjcmVjeVVzZXJBcHApOiB2b2lkID0+IHtcbiAgICAgICAgY29uc3Qgc3RvcmFnZSA9IGdldFN0b3JhZ2Uoc2Vzc2lvbik7XG4gICAgICAgIHN0b3JhZ2UudXNlckFwcFNlc3Npb24uc2F2ZShpbmZvcy51YVNlc3Npb24pO1xuICAgICAgICBzdG9yYWdlLnVzZXJBcHBLZXlzLnNhdmUoaW5mb3Mua2V5cyk7XG4gICAgICAgIHN0b3JhZ2Uuand0LnNhdmUoaW5mb3Muand0KTtcbiAgICAgICAgcmV0dXJuIHJlc29sdmUoXG4gICAgICAgICAgbmV3IFNlY3JlY3lDbGllbnQoXG4gICAgICAgICAgICBpbmZvcy51YVNlc3Npb24sXG4gICAgICAgICAgICBpbmZvcy5rZXlzLFxuICAgICAgICAgICAgaW5mb3Muand0LFxuICAgICAgICAgICAgZW52XG4gICAgICAgICAgKSBhcyBWYWx1ZTxUPlxuICAgICAgICApO1xuICAgICAgfTtcblxuICAgICAgaWYgKHJlZGlyZWN0KSB7XG4gICAgICAgIGNvbnN0IGluZm9zID0gcGFyc2VJbmZvcygpO1xuICAgICAgICBpZiAoaW5mb3MpIHtcbiAgICAgICAgICByZXR1cm4gdmFsaWRhdGUoaW5mb3MpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHdpbmRvdy5sb2NhdGlvbi5ocmVmID0gdXJsO1xuICAgICAgICAgIHJldHVybiByZXNvbHZlKG51bGwgYXMgVmFsdWU8VD4pO1xuICAgICAgICB9XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBwb3B1cCh1cmwsIFwiU2VjcmVjeSBMb2dpblwiLCB7fSwgKGVyciwgZGF0YSkgPT4ge1xuICAgICAgICAgIGlmIChlcnIpIHtcbiAgICAgICAgICAgIHJldHVybiByZWplY3QoZXJyKTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgY29uc3QgaW5mb3MgPSBkYXRhIGFzIFNlY3JlY3lVc2VyQXBwO1xuICAgICAgICAgICAgaWYgKGluZm9zKSB7XG4gICAgICAgICAgICAgIHJldHVybiB2YWxpZGF0ZShpbmZvcyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIHJlc29sdmUoY2xpZW50IGFzIFZhbHVlPFQ+KTtcbiAgICB9XG4gIH0pO1xufVxuIl0sIm1hcHBpbmdzIjoiQUFBQSxT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
|
|
119
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJTZWNyZWN5Q2xpZW50IiwicG9wdXAiLCJnZXRTdG9yYWdlIiwicGFyc2VJbmZvcyIsIndpbmRvdyIsImxvY2F0aW9uIiwiaGFzaCIsInN1YnN0ciIsInJlcyIsIkpTT04iLCJwYXJzZSIsImF0b2IiLCJnZXRVcmwiLCJlbnYiLCJwYXRoIiwiZW52U3RyIiwibGFuZyIsImRvY3VtZW50IiwiZG9jdW1lbnRFbGVtZW50IiwicHJvY2VzcyIsIk5FWFRfUFVCTElDX1NFQ1JFQ1lfQVBJX1VSTCIsInN0YXJ0c1dpdGgiLCJnZXRTZWNyZWN5Q2xpZW50Iiwic2Vzc2lvbiIsInN0b3JhZ2UiLCJ1YVNlc3Npb24iLCJ1c2VyQXBwU2Vzc2lvbiIsImxvYWQiLCJ1YUtleXMiLCJ1c2VyQXBwS2V5cyIsInVhSnd0Iiwiand0IiwiaW5mb3MiLCJzYXZlIiwia2V5cyIsImxvZ2luIiwiYXBwQ29kZSIsInJlZGlyZWN0Iiwic2NvcGVzIiwiYmFja1BhdGgiLCJQcm9taXNlIiwicmVzb2x2ZSIsInJlamVjdCIsImFwcFVybCIsIm9yaWdpbiIsImluY2x1ZGVzIiwiY2xpZW50IiwiZGF0YSIsImJ0b2EiLCJzdHJpbmdpZnkiLCJyZXBsYWNlQWxsIiwidXJsIiwidmFsaWRhdGUiLCJocmVmIiwid2lkdGgiLCJoZWlnaHQiLCJyZXNpemFibGUiLCJtZW51YmFyIiwiY2VudGVyZWQiLCJzY3JvbGxiYXJzIiwiZXJyIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NsaWVudC9oZWxwZXJzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFNlY3JlY3lDbGllbnQgfSBmcm9tIFwiLi9pbmRleC5qc1wiO1xuaW1wb3J0IHsgcG9wdXAgfSBmcm9tIFwiLi4vUG9wdXBUb29scy5qc1wiO1xuaW1wb3J0IHR5cGUgeyBTZWNyZWN5VXNlckFwcCB9IGZyb20gXCIuL3R5cGVzL2luZGV4LmpzXCI7XG5pbXBvcnQgeyBnZXRTdG9yYWdlIH0gZnJvbSBcIi4vc3RvcmFnZS5qc1wiO1xuXG5leHBvcnQgZnVuY3Rpb24gcGFyc2VJbmZvcygpOiBTZWNyZWN5VXNlckFwcCB8IG51bGwge1xuICBpZiAoIXdpbmRvdy5sb2NhdGlvbi5oYXNoKSB7XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cbiAgY29uc3QgaGFzaCA9IHdpbmRvdy5sb2NhdGlvbi5oYXNoLnN1YnN0cigxKTtcbiAgdHJ5IHtcbiAgICBjb25zdCByZXMgPSBKU09OLnBhcnNlKGF0b2IoaGFzaCkpO1xuICAgIHdpbmRvdy5sb2NhdGlvbi5oYXNoID0gXCJcIjtcbiAgICAvLyBUT0RPIEFkZCBvYmplY3QgY29udGVudCB2YWxpZGF0aW9uXG4gICAgcmV0dXJuIHJlcztcbiAgfSBjYXRjaCB7XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cbn1cblxuZXhwb3J0IGNvbnN0IGdldFVybCA9ICh7XG4gIGVudixcbiAgaGFzaCxcbiAgcGF0aFxufToge1xuICBlbnY6IHN0cmluZztcbiAgaGFzaDogc3RyaW5nO1xuICBwYXRoOiBzdHJpbmc7XG59KTogc3RyaW5nID0+IHtcbiAgbGV0IGVudlN0ciA9IFwiXCI7XG4gIGlmIChlbnYgPT09IFwiZGV2XCIpIHtcbiAgICBlbnZTdHIgPSBcImRldi5cIjtcbiAgfVxuICBjb25zdCBsYW5nID0gZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50Lmxhbmc7XG4gIHJldHVybiBwcm9jZXNzLmVudi5ORVhUX1BVQkxJQ19TRUNSRUNZX0FQSV9VUkxcbiAgICA/IGBodHRwOi8vbG9jYWxob3N0OjMwMDIke2xhbmcgPyBgLyR7bGFuZ31gIDogXCJcIn0ke1xuICAgICAgICBwYXRoLnN0YXJ0c1dpdGgoXCIvXCIpID8gcGF0aCA6IGAvJHtwYXRofWBcbiAgICAgIH0jJHtoYXNofWBcbiAgICA6IGBodHRwczovL2F1dGguJHtlbnZTdHJ9c2VjcmVjeS5tZSR7bGFuZyA/IGAvJHtsYW5nfWAgOiBcIlwifSR7XG4gICAgICAgIHBhdGguc3RhcnRzV2l0aChcIi9cIikgPyBwYXRoIDogYC8ke3BhdGh9YFxuICAgICAgfSMke2hhc2h9YDtcbn07XG5cbmV4cG9ydCB0eXBlIEhhc2hJbmZvcyA9IHtcbiAgYXBwVXJsOiBzdHJpbmc7XG4gIGJhY2tQYXRoPzogc3RyaW5nO1xuICBhcHBDb2RlPzogc3RyaW5nIHwgbnVsbCB8IHVuZGVmaW5lZDtcbiAgcGF0aD86IHN0cmluZyB8IG51bGwgfCB1bmRlZmluZWQ7XG4gIHJlZGlyZWN0PzogYm9vbGVhbjtcbiAgc2NvcGVzPzoge1xuICAgIGVtYWlsOiBib29sZWFuO1xuICB9O1xufTtcbmV4cG9ydCB0eXBlIFNlY3JlY3lFbnYgPSBcImRldlwiIHwgXCJwcm9kXCI7XG5leHBvcnQgdHlwZSBVc2VTZWNyZWN5UGFyYW1zID0gT21pdDxIYXNoSW5mb3MsIFwiYXBwVXJsXCI+ICYge1xuICBlbnY6IFNlY3JlY3lFbnY7XG4gIHNlc3Npb24/OiBib29sZWFuIHwgdW5kZWZpbmVkO1xufTtcblxuZXhwb3J0IHR5cGUgVmFsdWU8VCBleHRlbmRzIFVzZVNlY3JlY3lQYXJhbXM+ID0gVCBleHRlbmRzIHsgcmVkaXJlY3Q6IHRydWUgfVxuICA/IFNlY3JlY3lDbGllbnQgfCBudWxsXG4gIDogU2VjcmVjeUNsaWVudDtcblxuZXhwb3J0IGZ1bmN0aW9uIGdldFNlY3JlY3lDbGllbnQoXG4gIGVudjogU2VjcmVjeUVudixcbiAgc2Vzc2lvbj86IGJvb2xlYW4gfCB1bmRlZmluZWRcbik6IFNlY3JlY3lDbGllbnQgfCBudWxsIHtcbiAgY29uc3Qgc3RvcmFnZSA9IGdldFN0b3JhZ2Uoc2Vzc2lvbik7XG4gIGNvbnN0IHVhU2Vzc2lvbiA9IHN0b3JhZ2UudXNlckFwcFNlc3Npb24ubG9hZCgpO1xuICBjb25zdCB1YUtleXMgPSBzdG9yYWdlLnVzZXJBcHBLZXlzLmxvYWQoKTtcbiAgY29uc3QgdWFKd3QgPSBzdG9yYWdlLmp3dC5sb2FkKCk7XG4gIGlmICghdWFTZXNzaW9uIHx8ICF1YUtleXMgfHwgIXVhSnd0KSB7XG4gICAgY29uc3QgaW5mb3MgPSBwYXJzZUluZm9zKCk7XG4gICAgaWYgKGluZm9zKSB7XG4gICAgICBzdG9yYWdlLnVzZXJBcHBLZXlzLnNhdmUoaW5mb3Mua2V5cyk7XG4gICAgICBzdG9yYWdlLnVzZXJBcHBTZXNzaW9uLnNhdmUoaW5mb3MudWFTZXNzaW9uKTtcbiAgICAgIHN0b3JhZ2Uuand0LnNhdmUoaW5mb3Muand0KTtcbiAgICAgIHJldHVybiBuZXcgU2VjcmVjeUNsaWVudChpbmZvcy51YVNlc3Npb24sIGluZm9zLmtleXMsIGluZm9zLmp3dCwgZW52KTtcbiAgICB9XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICByZXR1cm4gbmV3IFNlY3JlY3lDbGllbnQodWFTZXNzaW9uLCB1YUtleXMsIHVhSnd0LCBlbnYpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gbG9naW48VCBleHRlbmRzIFVzZVNlY3JlY3lQYXJhbXM+KFxuICB7IGFwcENvZGUsIHBhdGgsIHJlZGlyZWN0LCBzY29wZXMsIGJhY2tQYXRoLCBlbnYsIHNlc3Npb24gfTogVCA9IHt9IGFzIFRcbik6IFByb21pc2U8VmFsdWU8VD4+IHtcbiAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICBjb25zdCBhcHBVcmwgPSB3aW5kb3cubG9jYXRpb24ub3JpZ2luO1xuICAgIGlmIChhcHBDb2RlICYmICFhcHBVcmwuaW5jbHVkZXMoXCJsb2NhbGhvc3RcIikpIHtcbiAgICAgIHJldHVybiByZWplY3QoXCJDYW4ndCB1c2UgYXBwQ29kZSBpZiBub3QgaW4gbG9jYWxob3N0XCIpO1xuICAgIH1cbiAgICBjb25zdCBjbGllbnQgPSBnZXRTZWNyZWN5Q2xpZW50KGVudik7XG5cbiAgICBpZiAoIWNsaWVudCkge1xuICAgICAgY29uc3QgaW5mb3M6IEhhc2hJbmZvcyA9IHtcbiAgICAgICAgYXBwVXJsLFxuICAgICAgICBhcHBDb2RlLFxuICAgICAgICByZWRpcmVjdCxcbiAgICAgICAgcGF0aCxcbiAgICAgICAgc2NvcGVzLFxuICAgICAgICBiYWNrUGF0aFxuICAgICAgfTtcbiAgICAgIGNvbnN0IGRhdGEgPSBidG9hKEpTT04uc3RyaW5naWZ5KGluZm9zKSkucmVwbGFjZUFsbChcIj1cIiwgXCJcIik7XG5cbiAgICAgIGNvbnN0IHVybCA9IGdldFVybCh7XG4gICAgICAgIGVudixcbiAgICAgICAgaGFzaDogZGF0YSxcbiAgICAgICAgcGF0aDogXCJsb2dpblwiXG4gICAgICB9KTtcblxuICAgICAgY29uc3QgdmFsaWRhdGUgPSAoaW5mb3M6IFNlY3JlY3lVc2VyQXBwKTogdm9pZCA9PiB7XG4gICAgICAgIGNvbnN0IHN0b3JhZ2UgPSBnZXRTdG9yYWdlKHNlc3Npb24pO1xuICAgICAgICBzdG9yYWdlLnVzZXJBcHBTZXNzaW9uLnNhdmUoaW5mb3MudWFTZXNzaW9uKTtcbiAgICAgICAgc3RvcmFnZS51c2VyQXBwS2V5cy5zYXZlKGluZm9zLmtleXMpO1xuICAgICAgICBzdG9yYWdlLmp3dC5zYXZlKGluZm9zLmp3dCk7XG4gICAgICAgIHJldHVybiByZXNvbHZlKFxuICAgICAgICAgIG5ldyBTZWNyZWN5Q2xpZW50KFxuICAgICAgICAgICAgaW5mb3MudWFTZXNzaW9uLFxuICAgICAgICAgICAgaW5mb3Mua2V5cyxcbiAgICAgICAgICAgIGluZm9zLmp3dCxcbiAgICAgICAgICAgIGVudlxuICAgICAgICAgICkgYXMgVmFsdWU8VD5cbiAgICAgICAgKTtcbiAgICAgIH07XG5cbiAgICAgIGlmIChyZWRpcmVjdCkge1xuICAgICAgICBjb25zdCBpbmZvcyA9IHBhcnNlSW5mb3MoKTtcbiAgICAgICAgaWYgKGluZm9zKSB7XG4gICAgICAgICAgcmV0dXJuIHZhbGlkYXRlKGluZm9zKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB3aW5kb3cubG9jYXRpb24uaHJlZiA9IHVybDtcbiAgICAgICAgICByZXR1cm4gcmVzb2x2ZShudWxsIGFzIFZhbHVlPFQ+KTtcbiAgICAgICAgfVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcG9wdXAoXG4gICAgICAgICAgdXJsLFxuICAgICAgICAgIFwiU2VjcmVjeSBMb2dpblwiLFxuICAgICAgICAgIHtcbiAgICAgICAgICAgIHdpZHRoOiA1MDAsXG4gICAgICAgICAgICBoZWlnaHQ6IDc1MCxcbiAgICAgICAgICAgIHJlc2l6YWJsZTogXCJub1wiLFxuICAgICAgICAgICAgbWVudWJhcjogXCJub1wiLFxuICAgICAgICAgICAgbG9jYXRpb246IFwibm9cIixcbiAgICAgICAgICAgIGNlbnRlcmVkOiB0cnVlLFxuICAgICAgICAgICAgc2Nyb2xsYmFyczogXCJub1wiXG4gICAgICAgICAgfSxcbiAgICAgICAgICAoZXJyLCBkYXRhKSA9PiB7XG4gICAgICAgICAgICBpZiAoZXJyKSB7XG4gICAgICAgICAgICAgIHJldHVybiByZWplY3QoZXJyKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgIGNvbnN0IGluZm9zID0gZGF0YSBhcyBTZWNyZWN5VXNlckFwcDtcbiAgICAgICAgICAgICAgaWYgKGluZm9zKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHZhbGlkYXRlKGluZm9zKTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIHJlc29sdmUoY2xpZW50IGFzIFZhbHVlPFQ+KTtcbiAgICB9XG4gIH0pO1xufVxuIl0sIm1hcHBpbmdzIjoiQUFBQSxTQUFTQSxhQUFhLFFBQVEsWUFBWTtBQUMxQyxTQUFTQyxLQUFLLFFBQVEsa0JBQWtCO0FBRXhDLFNBQVNDLFVBQVUsUUFBUSxjQUFjO0FBRXpDLE9BQU8sU0FBU0MsVUFBVSxHQUEwQjtFQUNsRCxJQUFJLENBQUNDLE1BQU0sQ0FBQ0MsUUFBUSxDQUFDQyxJQUFJLEVBQUU7SUFDekIsT0FBTyxJQUFJO0VBQ2I7RUFDQSxNQUFNQSxJQUFJLEdBQUdGLE1BQU0sQ0FBQ0MsUUFBUSxDQUFDQyxJQUFJLENBQUNDLE1BQU0sQ0FBQyxDQUFDLENBQUM7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
|
package/dist/client/index.d.ts
CHANGED
|
@@ -1,15 +1,14 @@
|
|
|
1
|
-
import type { MailType, NodeType } from "./../zeus/index";
|
|
2
|
-
import type { DownloadProgress } from "ky";
|
|
3
|
-
import type { FolderSize, SuccessResponse, UserData } from "../BaseClient.js";
|
|
4
1
|
import { BaseClient } from "../BaseClient.js";
|
|
5
2
|
import type { Progress } from "../crypto/file.js";
|
|
6
|
-
import type { ReceivedMail, SentMail, Node, NodeFull, UserAppSettings, UserAppNotifications, FileMetadata as SecrecyFile, WaitingReceivedMail, DraftMail, Mail } from "./types/index.js";
|
|
7
3
|
import type { KeyPair } from "../crypto/index.js";
|
|
8
4
|
import type { SecrecyEnv } from "./helpers.js";
|
|
9
|
-
import
|
|
10
|
-
import
|
|
11
|
-
import
|
|
12
|
-
|
|
5
|
+
import { SecrecyCloudClient } from "./SecrecyCloudClient.js";
|
|
6
|
+
import { SecrecyMailClient } from "./SecrecyMailClient.js";
|
|
7
|
+
import { SecrecyAppClient } from "./SecrecyAppClient.js";
|
|
8
|
+
import { SecrecyDbClient } from "./SecrecyDbClient.js";
|
|
9
|
+
import { SecrecyWalletClient } from "./SecrecyWalletClient.js";
|
|
10
|
+
import { SecrecyPayClient } from "./SecrecyPayClient.js";
|
|
11
|
+
export type NewMail = {
|
|
13
12
|
body: string;
|
|
14
13
|
subject: string;
|
|
15
14
|
files: {
|
|
@@ -19,146 +18,17 @@ export declare type NewMail = {
|
|
|
19
18
|
recipientsIds: string[];
|
|
20
19
|
replyTo?: string | null | undefined;
|
|
21
20
|
};
|
|
22
|
-
export
|
|
21
|
+
export type ProgressCallback = (progress: Progress) => Promise<void>;
|
|
22
|
+
export declare const encryptName: (name: string, nameKey: string) => Promise<string>;
|
|
23
23
|
export declare class SecrecyClient extends BaseClient {
|
|
24
24
|
#private;
|
|
25
|
-
|
|
26
|
-
|
|
25
|
+
cloud: SecrecyCloudClient;
|
|
26
|
+
mail: SecrecyMailClient;
|
|
27
|
+
app: SecrecyAppClient;
|
|
28
|
+
db: SecrecyDbClient;
|
|
29
|
+
wallet: SecrecyWalletClient;
|
|
30
|
+
pay: SecrecyPayClient;
|
|
27
31
|
constructor(uaSession: string, uaKeys: KeyPair, uaJwt: string, env: SecrecyEnv);
|
|
28
32
|
get publicKey(): string;
|
|
29
|
-
get appUserId(): string;
|
|
30
|
-
addFileToHistory({ fileId, nodeId }: {
|
|
31
|
-
fileId: string;
|
|
32
|
-
nodeId: string;
|
|
33
|
-
}): Promise<SuccessResponse<Node> | ErrorAccessDenied | ErrorNotExist | null>;
|
|
34
|
-
uploadFile({ file, encryptProgress, uploadProgress, signal }: {
|
|
35
|
-
file: globalThis.File | Uint8Array;
|
|
36
|
-
encryptProgress?: ProgressCallback;
|
|
37
|
-
uploadProgress?: ProgressCallback;
|
|
38
|
-
signal?: AbortSignal;
|
|
39
|
-
}): Promise<SuccessResponse<string> | ErrorAccessDenied | ErrorLimit | ErrorNotFound | null>;
|
|
40
|
-
uploadFileInCloud({ file, name, nodeId, encryptProgress, uploadProgress, signal }: {
|
|
41
|
-
file: globalThis.File | Uint8Array;
|
|
42
|
-
name: string;
|
|
43
|
-
nodeId?: string;
|
|
44
|
-
encryptProgress?: ProgressCallback;
|
|
45
|
-
uploadProgress?: ProgressCallback;
|
|
46
|
-
signal?: AbortSignal;
|
|
47
|
-
}): Promise<SuccessResponse<NodeFull> | ErrorAccessDenied | ErrorLimit | ErrorNotFound | ErrorBasic | ErrorNotExist | null>;
|
|
48
33
|
logout(sessionId?: string | null | undefined): Promise<void>;
|
|
49
|
-
createFolder({ name, parentFolderId }: {
|
|
50
|
-
name: string;
|
|
51
|
-
parentFolderId?: string | null;
|
|
52
|
-
}): Promise<SuccessResponse<NodeFull> | ErrorAccessDenied | ErrorNotExist | null>;
|
|
53
|
-
node({ id, deleted }?: {
|
|
54
|
-
id?: string | null | undefined;
|
|
55
|
-
deleted?: boolean | null | undefined;
|
|
56
|
-
}): Promise<SuccessResponse<NodeFull> | ErrorAccessDenied | null>;
|
|
57
|
-
file({ id }: {
|
|
58
|
-
id: string;
|
|
59
|
-
}): Promise<SuccessResponse<SecrecyFile> | ErrorAccessDenied | null>;
|
|
60
|
-
mail({ id }: {
|
|
61
|
-
id: string;
|
|
62
|
-
}): Promise<SuccessResponse<Mail> | ErrorAccessDenied | null>;
|
|
63
|
-
deletedNodes(): Promise<SuccessResponse<Node[]> | ErrorAccessDenied | null>;
|
|
64
|
-
sharedNodes(): Promise<SuccessResponse<Node[]> | ErrorAccessDenied | null>;
|
|
65
|
-
nodesSharedWithMe(type?: NodeType | null | undefined): Promise<SuccessResponse<Node[]> | ErrorAccessDenied | null>;
|
|
66
|
-
deleteNodeSharing({ nodeId, userId }: {
|
|
67
|
-
nodeId: string;
|
|
68
|
-
userId: string;
|
|
69
|
-
}): Promise<SuccessResponse<boolean> | ErrorAccessDenied | null>;
|
|
70
|
-
duplicateNode({ nodeId, folderId, customName }: {
|
|
71
|
-
nodeId: string;
|
|
72
|
-
folderId?: string | null | undefined;
|
|
73
|
-
customName?: string | null | undefined;
|
|
74
|
-
}): Promise<SuccessResponse<boolean> | ErrorAccessDenied | ErrorNotFound | null>;
|
|
75
|
-
deleteNodeCloudTrash({ ids }: {
|
|
76
|
-
ids: Array<string>;
|
|
77
|
-
}): Promise<SuccessResponse<boolean> | ErrorAccessDenied | null>;
|
|
78
|
-
shareNode({ nodeId, userId, rights }: {
|
|
79
|
-
nodeId: string;
|
|
80
|
-
userId: string;
|
|
81
|
-
rights: Rights;
|
|
82
|
-
}): Promise<SuccessResponse<boolean> | ErrorAccessDenied | ErrorNotFound | null>;
|
|
83
|
-
updateNode({ nodeId, name, isFavorite, deletedAt }: {
|
|
84
|
-
nodeId: string;
|
|
85
|
-
name?: string | null | undefined;
|
|
86
|
-
isFavorite?: boolean | null | undefined;
|
|
87
|
-
deletedAt?: Date | null | undefined;
|
|
88
|
-
}): Promise<SuccessResponse<NodeFull> | ErrorAccessDenied | ErrorNotExist | null>;
|
|
89
|
-
deletedMails({ mailType }: {
|
|
90
|
-
mailType: MailType;
|
|
91
|
-
}): Promise<SuccessResponse<Mail[]> | ErrorAccessDenied | null>;
|
|
92
|
-
updateAppNotifications(notifications: Partial<UserAppNotifications>): Promise<SuccessResponse<UserAppNotifications> | ErrorAccessDenied | null>;
|
|
93
|
-
appNotifications(): Promise<SuccessResponse<UserAppNotifications> | ErrorAccessDenied | ErrorNotFound | null>;
|
|
94
|
-
createMail(data: NewMail, customMessage?: string | null | undefined): Promise<SuccessResponse<boolean> | ErrorBasic | ErrorAccessDenied | null>;
|
|
95
|
-
waitingReceivedMails(): Promise<SuccessResponse<WaitingReceivedMail[]> | ErrorNotFound | null>;
|
|
96
|
-
updateDraftMail(draftId: string, { body, subject, files, recipientsIds, replyTo }: Partial<NewMail>): Promise<SuccessResponse<DraftMail> | ErrorNotFound | ErrorAccessDenied | ErrorBasic | null>;
|
|
97
|
-
deleteDraftMail(draftId: string): Promise<SuccessResponse<boolean> | ErrorAccessDenied | null>;
|
|
98
|
-
deleteMailTrash({ ids }: {
|
|
99
|
-
ids: Array<string>;
|
|
100
|
-
}): Promise<SuccessResponse<boolean> | ErrorAccessDenied | null>;
|
|
101
|
-
emptyMailTrash(): Promise<SuccessResponse<boolean> | ErrorAccessDenied | null>;
|
|
102
|
-
emptyCloudTrash(): Promise<SuccessResponse<boolean> | ErrorAccessDenied | null>;
|
|
103
|
-
recoverNode(id: string): Promise<SuccessResponse<boolean> | ErrorAccessDenied | ErrorNotExist | null>;
|
|
104
|
-
recoverMail({ mailId }: {
|
|
105
|
-
mailId: string;
|
|
106
|
-
}): Promise<SuccessResponse<boolean> | ErrorAccessDenied | ErrorBasic | null>;
|
|
107
|
-
deleteFile({ fileId, nodeId }: {
|
|
108
|
-
fileId: string;
|
|
109
|
-
nodeId: string;
|
|
110
|
-
}): Promise<SuccessResponse<boolean> | ErrorAccessDenied | ErrorNotExist | null>;
|
|
111
|
-
deleteNode({ nodeId }: {
|
|
112
|
-
nodeId: string;
|
|
113
|
-
}): Promise<SuccessResponse<boolean> | ErrorAccessDenied | null>;
|
|
114
|
-
moveNodes({ nodeIds, parentNodeId }: {
|
|
115
|
-
nodeIds: string[];
|
|
116
|
-
parentNodeId?: string | null | undefined;
|
|
117
|
-
}): Promise<SuccessResponse<boolean> | ErrorAccessDenied | null>;
|
|
118
|
-
folderSize({ folderId }: {
|
|
119
|
-
folderId?: string | null | undefined;
|
|
120
|
-
}): Promise<SuccessResponse<FolderSize> | ErrorAccessDenied | null>;
|
|
121
|
-
deleteMail({ mailId }: {
|
|
122
|
-
mailId: string;
|
|
123
|
-
}): Promise<SuccessResponse<boolean> | ErrorAccessDenied | null>;
|
|
124
|
-
saveInCloud({ fileId, name, nodeId }: {
|
|
125
|
-
fileId: string;
|
|
126
|
-
name: string;
|
|
127
|
-
nodeId?: string;
|
|
128
|
-
}): Promise<SuccessResponse<NodeFull> | ErrorAccessDenied | ErrorBasic | ErrorLimit | ErrorNotFound | ErrorNotExist | null>;
|
|
129
|
-
dbGet<U>({ field, userId }: {
|
|
130
|
-
field: string;
|
|
131
|
-
userId?: string | null | undefined;
|
|
132
|
-
}): Promise<SuccessResponse<U> | ErrorAccessDenied | ErrorNotExist | ErrorNotFound | null>;
|
|
133
|
-
dbSet<T extends UserData, U extends Document>({ value, userId }: {
|
|
134
|
-
value: U;
|
|
135
|
-
userId?: string | null | undefined;
|
|
136
|
-
}): Promise<SuccessResponse<T> | ErrorAccessDenied | ErrorNotFound | null>;
|
|
137
|
-
dbSearch<T>({ search, field }: {
|
|
138
|
-
field: string;
|
|
139
|
-
search: string;
|
|
140
|
-
}): Promise<SuccessResponse<T[]> | ErrorAccessDenied | ErrorBasic | ErrorNotExist | null>;
|
|
141
|
-
sendDraftMail(draftId: string, customMessage?: string | null | undefined): Promise<SuccessResponse<boolean> | ErrorAccessDenied | ErrorBasic | null>;
|
|
142
|
-
sendWaitingEmails(): Promise<SuccessResponse<boolean> | ErrorAccessDenied | ErrorBasic | null>;
|
|
143
|
-
createDraftMail({ body, subject, files, recipientsIds, replyTo }: NewMail): Promise<SuccessResponse<DraftMail> | ErrorAccessDenied | ErrorBasic | null>;
|
|
144
|
-
fileContent({ fileId, onDownloadProgress, progressDecrypt, signal }: {
|
|
145
|
-
fileId: string;
|
|
146
|
-
onDownloadProgress?: (progress: DownloadProgress) => void;
|
|
147
|
-
progressDecrypt?: ProgressCallback;
|
|
148
|
-
signal?: AbortSignal;
|
|
149
|
-
}): Promise<SuccessResponse<Uint8Array> | ErrorAccessDenied | ErrorBasic | null>;
|
|
150
|
-
readMail({ mailId }: {
|
|
151
|
-
mailId: string;
|
|
152
|
-
}): Promise<SuccessResponse<boolean> | ErrorAccessDenied | ErrorBasic | ErrorNotFound | null>;
|
|
153
|
-
unreadMail({ mailId }: {
|
|
154
|
-
mailId: string;
|
|
155
|
-
}): Promise<SuccessResponse<boolean> | ErrorAccessDenied | ErrorBasic | ErrorNotFound | null>;
|
|
156
|
-
appSettings(): Promise<SuccessResponse<UserAppSettings> | ErrorNotFound | null>;
|
|
157
|
-
updateAppSettings(settings: Partial<UserAppSettings>): Promise<SuccessResponse<UserAppSettings> | ErrorAccessDenied | ErrorBasic | null>;
|
|
158
|
-
receivedMails(): Promise<SuccessResponse<ReceivedMail[]> | ErrorNotFound | null>;
|
|
159
|
-
sentMails(): Promise<SuccessResponse<SentMail[]> | ErrorNotFound | null>;
|
|
160
|
-
draftMails(): Promise<SuccessResponse<DraftMail[]> | ErrorNotFound | null>;
|
|
161
|
-
private perNode;
|
|
162
|
-
unreadReceivedMailsCount(): Promise<SuccessResponse<number> | ErrorAccessDenied | null>;
|
|
163
|
-
private _eachUser;
|
|
164
34
|
}
|