@secrecy/lib 1.0.0-dev.9 → 1.0.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/README.md +1 -1
- package/{lib → dist}/BaseClient.d.ts +62 -69
- package/dist/BaseClient.js +1124 -0
- package/{lib → dist}/PopupTools.d.ts +1 -1
- package/dist/PopupTools.js +212 -0
- package/{lib → dist}/ZeusThunder.d.ts +0 -0
- package/dist/ZeusThunder.js +79 -0
- package/dist/cache.d.ts +6 -0
- package/dist/cache.js +4 -0
- package/dist/client/admin/index.d.ts +11 -0
- package/dist/client/admin/index.js +110 -0
- package/{lib → dist}/client/convert/file.d.ts +3 -3
- package/dist/client/convert/file.js +34 -0
- package/{lib → dist}/client/convert/mail.d.ts +0 -0
- package/dist/client/convert/mail.js +46 -0
- package/dist/client/convert/node.d.ts +9 -0
- package/dist/client/convert/node.js +101 -0
- package/{lib → dist}/client/helpers.d.ts +1 -1
- package/dist/client/helpers.js +114 -0
- package/dist/client/index.d.ts +164 -0
- package/dist/client/index.js +3206 -0
- package/{lib → dist}/client/storage.d.ts +0 -0
- package/dist/client/storage.js +12 -0
- package/dist/client/types/File.d.ts +14 -0
- package/dist/client/types/File.js +3 -0
- package/{lib → dist}/client/types/Inputs.d.ts +2 -7
- package/dist/client/types/Inputs.js +3 -0
- package/dist/client/types/Node.d.ts +49 -0
- package/dist/client/types/Node.js +3 -0
- package/{lib → dist}/client/types/UserAppNotifications.d.ts +1 -1
- package/dist/client/types/UserAppNotifications.js +3 -0
- package/{lib → dist}/client/types/UserAppSettings.d.ts +0 -1
- package/dist/client/types/UserAppSettings.js +3 -0
- package/{lib → dist}/client/types/index.d.ts +7 -13
- package/dist/client/types/index.js +8 -0
- package/dist/client/types/selectors.d.ts +476 -0
- package/dist/client/types/selectors.js +125 -0
- package/{lib → dist}/crypto/file.d.ts +0 -0
- package/dist/crypto/file.js +210 -0
- package/{lib → dist}/crypto/index.d.ts +0 -0
- package/dist/crypto/index.js +47 -0
- package/dist/error.d.ts +30 -0
- package/dist/error.js +3 -0
- package/{lib → dist}/index.d.ts +3 -3
- package/dist/index.js +10 -0
- package/{lib → dist}/minify/index.d.ts +0 -0
- package/dist/minify/index.js +28 -0
- package/{lib → dist}/minify/lz4.d.ts +0 -0
- package/dist/minify/lz4.js +627 -0
- package/{lib → dist}/sodium.d.ts +0 -0
- package/dist/sodium.js +6 -0
- package/{lib → dist}/utils/store-buddy.d.ts +0 -0
- package/dist/utils/store-buddy.js +65 -0
- package/{lib → dist}/utils/time.d.ts +0 -0
- package/dist/utils/time.js +14 -0
- package/{lib → dist/utils}/utils.d.ts +0 -0
- package/dist/utils/utils.js +57 -0
- package/{lib → dist}/worker/__mock__/sodium.worker.d.ts +0 -0
- package/dist/worker/__mock__/sodium.worker.js +49 -0
- package/{lib → dist}/worker/md5.d.ts +0 -0
- package/dist/worker/md5.js +25 -0
- package/{lib → dist}/worker/sodium.d.ts +0 -0
- package/dist/worker/sodium.js +120 -0
- package/{lib → dist}/worker/workerCodes.d.ts +0 -0
- package/dist/worker/workerCodes.js +3 -0
- package/{lib → dist}/zeus/const.d.ts +5 -0
- package/dist/zeus/const.js +1230 -0
- package/dist/zeus/index.d.ts +4069 -0
- package/dist/zeus/index.js +657 -0
- package/package.json +64 -57
- package/lib/BaseClient.js +0 -1332
- package/lib/PopupTools.js +0 -213
- package/lib/ZeusThunder.js +0 -115
- package/lib/cache.d.ts +0 -7
- package/lib/cache.js +0 -5
- package/lib/client/admin/index.d.ts +0 -10
- package/lib/client/admin/index.js +0 -145
- package/lib/client/convert/file.js +0 -39
- package/lib/client/convert/folder.d.ts +0 -8
- package/lib/client/convert/folder.js +0 -264
- package/lib/client/convert/mail.js +0 -46
- package/lib/client/convert/vFile.d.ts +0 -5
- package/lib/client/convert/vFile.js +0 -164
- package/lib/client/helpers.js +0 -116
- package/lib/client/index.d.ts +0 -169
- package/lib/client/index.js +0 -3803
- package/lib/client/storage.js +0 -12
- package/lib/client/types/File.d.ts +0 -21
- package/lib/client/types/File.js +0 -2
- package/lib/client/types/FilesOnUsersOnApplications.d.ts +0 -9
- package/lib/client/types/FilesOnUsersOnApplications.js +0 -2
- package/lib/client/types/Folder.d.ts +0 -68
- package/lib/client/types/Folder.js +0 -7
- package/lib/client/types/Inputs.js +0 -2
- package/lib/client/types/UserAppNotifications.js +0 -2
- package/lib/client/types/UserAppSettings.js +0 -2
- package/lib/client/types/VFile.d.ts +0 -62
- package/lib/client/types/VFile.js +0 -4
- package/lib/client/types/index.js +0 -9
- package/lib/client/types/queries.d.ts +0 -535
- package/lib/client/types/queries.js +0 -192
- package/lib/crypto/file.js +0 -291
- package/lib/crypto/index.js +0 -37
- package/lib/index.js +0 -41
- package/lib/minify/index.js +0 -28
- package/lib/minify/lz4.js +0 -633
- package/lib/sodium.js +0 -28
- package/lib/utils/store-buddy.js +0 -69
- package/lib/utils/time.js +0 -22
- package/lib/utils.js +0 -188
- package/lib/worker/__mock__/sodium.worker.js +0 -57
- package/lib/worker/md5.js +0 -43
- package/lib/worker/sodium.js +0 -155
- package/lib/worker/workerCodes.js +0 -3
- package/lib/zeus/const.js +0 -1671
- package/lib/zeus/index.d.ts +0 -33302
- package/lib/zeus/index.js +0 -558
|
@@ -1,264 +0,0 @@
|
|
|
1
|
-
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
2
|
-
import _asyncToGenerator from "@babel/runtime/helpers/asyncToGenerator";
|
|
3
|
-
import _regeneratorRuntime from "@babel/runtime/regenerator";
|
|
4
|
-
|
|
5
|
-
function _createForOfIteratorHelperLoose(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (it) return (it = it.call(o)).next.bind(it); if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; return function () { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
6
|
-
|
|
7
|
-
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
8
|
-
|
|
9
|
-
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
|
|
10
|
-
|
|
11
|
-
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
|
|
12
|
-
|
|
13
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
|
|
14
|
-
|
|
15
|
-
import { sodium } from "../../sodium.js";
|
|
16
|
-
import { decryptCryptoBox } from "../../crypto/index.js";
|
|
17
|
-
import { gqlVFileToInternal, internalVFileToVFile } from "./vFile.js";
|
|
18
|
-
import { foldersCache } from "../../cache.js";
|
|
19
|
-
import { decryptSecretstream } from "../../crypto/file.js";
|
|
20
|
-
export function gqlFolderToInternal(_x, _x2) {
|
|
21
|
-
return _gqlFolderToInternal.apply(this, arguments);
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
function _gqlFolderToInternal() {
|
|
25
|
-
_gqlFolderToInternal = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(gql, keyPair) {
|
|
26
|
-
var internal, key, _iterator2, _step2, b, _key;
|
|
27
|
-
|
|
28
|
-
return _regeneratorRuntime.wrap(function _callee$(_context) {
|
|
29
|
-
while (1) {
|
|
30
|
-
switch (_context.prev = _context.next) {
|
|
31
|
-
case 0:
|
|
32
|
-
if (gql.userApp) {
|
|
33
|
-
_context.next = 2;
|
|
34
|
-
break;
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
throw "Can't access folder " + gql.id;
|
|
38
|
-
|
|
39
|
-
case 2:
|
|
40
|
-
internal = {
|
|
41
|
-
id: gql.id,
|
|
42
|
-
userApp: gql.userApp,
|
|
43
|
-
name: gql.name,
|
|
44
|
-
isFavorite: gql.isFavorite,
|
|
45
|
-
breadcrumb: gql.breadcrumb,
|
|
46
|
-
createdBy: gql.createdBy.user,
|
|
47
|
-
createdAt: new Date(gql.createdAt),
|
|
48
|
-
updatedAt: new Date(gql.updatedAt),
|
|
49
|
-
deletedAt: gql.deletedAt ? new Date(gql.deletedAt) : null,
|
|
50
|
-
users: gql.userApps.map(function (u) {
|
|
51
|
-
return [u.userApp.user, u.rights];
|
|
52
|
-
})
|
|
53
|
-
};
|
|
54
|
-
internal.userApp = _objectSpread({}, gql.userApp);
|
|
55
|
-
|
|
56
|
-
if (!gql.userApp.nameKey) {
|
|
57
|
-
_context.next = 12;
|
|
58
|
-
break;
|
|
59
|
-
}
|
|
60
|
-
|
|
61
|
-
key = decryptCryptoBox(sodium.from_hex(gql.userApp.nameKey), gql.createdBy.user.publicKey, keyPair.privateKey);
|
|
62
|
-
_context.t0 = sodium;
|
|
63
|
-
_context.next = 9;
|
|
64
|
-
return decryptSecretstream(key, sodium.from_hex(internal.name));
|
|
65
|
-
|
|
66
|
-
case 9:
|
|
67
|
-
_context.t1 = _context.sent;
|
|
68
|
-
internal.name = _context.t0.to_string.call(_context.t0, _context.t1);
|
|
69
|
-
internal.userApp.nameKey = sodium.to_hex(key);
|
|
70
|
-
|
|
71
|
-
case 12:
|
|
72
|
-
_iterator2 = _createForOfIteratorHelperLoose(internal.breadcrumb);
|
|
73
|
-
|
|
74
|
-
case 13:
|
|
75
|
-
if ((_step2 = _iterator2()).done) {
|
|
76
|
-
_context.next = 26;
|
|
77
|
-
break;
|
|
78
|
-
}
|
|
79
|
-
|
|
80
|
-
b = _step2.value;
|
|
81
|
-
|
|
82
|
-
if (b.nameKey) {
|
|
83
|
-
_context.next = 17;
|
|
84
|
-
break;
|
|
85
|
-
}
|
|
86
|
-
|
|
87
|
-
return _context.abrupt("continue", 24);
|
|
88
|
-
|
|
89
|
-
case 17:
|
|
90
|
-
_key = decryptCryptoBox(sodium.from_hex(b.nameKey), b.pubKey, keyPair.privateKey);
|
|
91
|
-
b.nameKey = sodium.to_hex(_key);
|
|
92
|
-
_context.t2 = sodium;
|
|
93
|
-
_context.next = 22;
|
|
94
|
-
return decryptSecretstream(_key, sodium.from_hex(b.name));
|
|
95
|
-
|
|
96
|
-
case 22:
|
|
97
|
-
_context.t3 = _context.sent;
|
|
98
|
-
b.name = _context.t2.to_string.call(_context.t2, _context.t3);
|
|
99
|
-
|
|
100
|
-
case 24:
|
|
101
|
-
_context.next = 13;
|
|
102
|
-
break;
|
|
103
|
-
|
|
104
|
-
case 26:
|
|
105
|
-
foldersCache.set(internal.id, internal);
|
|
106
|
-
return _context.abrupt("return", internal);
|
|
107
|
-
|
|
108
|
-
case 28:
|
|
109
|
-
case "end":
|
|
110
|
-
return _context.stop();
|
|
111
|
-
}
|
|
112
|
-
}
|
|
113
|
-
}, _callee);
|
|
114
|
-
}));
|
|
115
|
-
return _gqlFolderToInternal.apply(this, arguments);
|
|
116
|
-
}
|
|
117
|
-
|
|
118
|
-
export function gqlFolderFullToInternalFull(_x3, _x4) {
|
|
119
|
-
return _gqlFolderFullToInternalFull.apply(this, arguments);
|
|
120
|
-
}
|
|
121
|
-
|
|
122
|
-
function _gqlFolderFullToInternalFull() {
|
|
123
|
-
_gqlFolderFullToInternalFull = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee2(gql, keyPair) {
|
|
124
|
-
var f;
|
|
125
|
-
return _regeneratorRuntime.wrap(function _callee2$(_context2) {
|
|
126
|
-
while (1) {
|
|
127
|
-
switch (_context2.prev = _context2.next) {
|
|
128
|
-
case 0:
|
|
129
|
-
_context2.next = 2;
|
|
130
|
-
return gqlFolderToInternal(gql, keyPair);
|
|
131
|
-
|
|
132
|
-
case 2:
|
|
133
|
-
f = _context2.sent;
|
|
134
|
-
_context2.t0 = _objectSpread;
|
|
135
|
-
_context2.t1 = _objectSpread({}, f);
|
|
136
|
-
_context2.t2 = {};
|
|
137
|
-
_context2.next = 8;
|
|
138
|
-
return Promise.all(gql.vFiles.filter(function (f) {
|
|
139
|
-
return f.userApp;
|
|
140
|
-
}).map(function (vFile) {
|
|
141
|
-
return gqlVFileToInternal(vFile, keyPair);
|
|
142
|
-
}));
|
|
143
|
-
|
|
144
|
-
case 8:
|
|
145
|
-
_context2.t3 = _context2.sent;
|
|
146
|
-
|
|
147
|
-
if (!gql.parentFolder) {
|
|
148
|
-
_context2.next = 15;
|
|
149
|
-
break;
|
|
150
|
-
}
|
|
151
|
-
|
|
152
|
-
_context2.next = 12;
|
|
153
|
-
return gqlFolderToInternal(gql.parentFolder, keyPair);
|
|
154
|
-
|
|
155
|
-
case 12:
|
|
156
|
-
_context2.t4 = _context2.sent;
|
|
157
|
-
_context2.next = 16;
|
|
158
|
-
break;
|
|
159
|
-
|
|
160
|
-
case 15:
|
|
161
|
-
_context2.t4 = null;
|
|
162
|
-
|
|
163
|
-
case 16:
|
|
164
|
-
_context2.t5 = _context2.t4;
|
|
165
|
-
_context2.next = 19;
|
|
166
|
-
return Promise.all(gql.subfolders.map(function (s) {
|
|
167
|
-
return gqlFolderToInternal(s, keyPair);
|
|
168
|
-
}));
|
|
169
|
-
|
|
170
|
-
case 19:
|
|
171
|
-
_context2.t6 = _context2.sent;
|
|
172
|
-
_context2.t7 = {
|
|
173
|
-
vFiles: _context2.t3,
|
|
174
|
-
parentFolder: _context2.t5,
|
|
175
|
-
subfolders: _context2.t6
|
|
176
|
-
};
|
|
177
|
-
return _context2.abrupt("return", (0, _context2.t0)(_context2.t1, _context2.t2, _context2.t7));
|
|
178
|
-
|
|
179
|
-
case 22:
|
|
180
|
-
case "end":
|
|
181
|
-
return _context2.stop();
|
|
182
|
-
}
|
|
183
|
-
}
|
|
184
|
-
}, _callee2);
|
|
185
|
-
}));
|
|
186
|
-
return _gqlFolderFullToInternalFull.apply(this, arguments);
|
|
187
|
-
}
|
|
188
|
-
|
|
189
|
-
export function internalFolderToFolder(internal) {
|
|
190
|
-
var folder = _objectSpread({}, internal);
|
|
191
|
-
|
|
192
|
-
for (var _iterator = _createForOfIteratorHelperLoose(folder.breadcrumb), _step; !(_step = _iterator()).done;) {
|
|
193
|
-
var b = _step.value;
|
|
194
|
-
// @ts-ignore
|
|
195
|
-
delete b.nameKey;
|
|
196
|
-
} // @ts-ignore
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
delete folder.nameKey;
|
|
200
|
-
return folder;
|
|
201
|
-
}
|
|
202
|
-
export function internalFolderFullToFolderFull(internal) {
|
|
203
|
-
return _objectSpread(_objectSpread({}, internalFolderToFolder(internal)), {}, {
|
|
204
|
-
vFiles: internal.vFiles.map(internalVFileToVFile),
|
|
205
|
-
parentFolder: internal.parentFolder ? internalFolderToFolder(internal.parentFolder) : null,
|
|
206
|
-
subfolders: internal.subfolders.map(internalFolderToFolder)
|
|
207
|
-
});
|
|
208
|
-
}
|
|
209
|
-
export function gqlFolderToExternalFolderFull(_x5, _x6) {
|
|
210
|
-
return _gqlFolderToExternalFolderFull.apply(this, arguments);
|
|
211
|
-
}
|
|
212
|
-
|
|
213
|
-
function _gqlFolderToExternalFolderFull() {
|
|
214
|
-
_gqlFolderToExternalFolderFull = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee3(gql, keyPair) {
|
|
215
|
-
return _regeneratorRuntime.wrap(function _callee3$(_context3) {
|
|
216
|
-
while (1) {
|
|
217
|
-
switch (_context3.prev = _context3.next) {
|
|
218
|
-
case 0:
|
|
219
|
-
_context3.t0 = internalFolderFullToFolderFull;
|
|
220
|
-
_context3.next = 3;
|
|
221
|
-
return gqlFolderFullToInternalFull(gql, keyPair);
|
|
222
|
-
|
|
223
|
-
case 3:
|
|
224
|
-
_context3.t1 = _context3.sent;
|
|
225
|
-
return _context3.abrupt("return", (0, _context3.t0)(_context3.t1));
|
|
226
|
-
|
|
227
|
-
case 5:
|
|
228
|
-
case "end":
|
|
229
|
-
return _context3.stop();
|
|
230
|
-
}
|
|
231
|
-
}
|
|
232
|
-
}, _callee3);
|
|
233
|
-
}));
|
|
234
|
-
return _gqlFolderToExternalFolderFull.apply(this, arguments);
|
|
235
|
-
}
|
|
236
|
-
|
|
237
|
-
export function gqlFolderToExternal(_x7, _x8) {
|
|
238
|
-
return _gqlFolderToExternal.apply(this, arguments);
|
|
239
|
-
}
|
|
240
|
-
|
|
241
|
-
function _gqlFolderToExternal() {
|
|
242
|
-
_gqlFolderToExternal = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee4(gql, keyPair) {
|
|
243
|
-
return _regeneratorRuntime.wrap(function _callee4$(_context4) {
|
|
244
|
-
while (1) {
|
|
245
|
-
switch (_context4.prev = _context4.next) {
|
|
246
|
-
case 0:
|
|
247
|
-
_context4.t0 = internalFolderToFolder;
|
|
248
|
-
_context4.next = 3;
|
|
249
|
-
return gqlFolderToInternal(gql, keyPair);
|
|
250
|
-
|
|
251
|
-
case 3:
|
|
252
|
-
_context4.t1 = _context4.sent;
|
|
253
|
-
return _context4.abrupt("return", (0, _context4.t0)(_context4.t1));
|
|
254
|
-
|
|
255
|
-
case 5:
|
|
256
|
-
case "end":
|
|
257
|
-
return _context4.stop();
|
|
258
|
-
}
|
|
259
|
-
}
|
|
260
|
-
}, _callee4);
|
|
261
|
-
}));
|
|
262
|
-
return _gqlFolderToExternal.apply(this, arguments);
|
|
263
|
-
}
|
|
264
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jbGllbnQvY29udmVydC9mb2xkZXIudHMiXSwibmFtZXMiOlsic29kaXVtIiwiZGVjcnlwdENyeXB0b0JveCIsImdxbFZGaWxlVG9JbnRlcm5hbCIsImludGVybmFsVkZpbGVUb1ZGaWxlIiwiZm9sZGVyc0NhY2hlIiwiZGVjcnlwdFNlY3JldHN0cmVhbSIsImdxbEZvbGRlclRvSW50ZXJuYWwiLCJncWwiLCJrZXlQYWlyIiwidXNlckFwcCIsImlkIiwiaW50ZXJuYWwiLCJuYW1lIiwiaXNGYXZvcml0ZSIsImJyZWFkY3J1bWIiLCJjcmVhdGVkQnkiLCJ1c2VyIiwiY3JlYXRlZEF0IiwiRGF0ZSIsInVwZGF0ZWRBdCIsImRlbGV0ZWRBdCIsInVzZXJzIiwidXNlckFwcHMiLCJtYXAiLCJ1IiwicmlnaHRzIiwibmFtZUtleSIsImtleSIsImZyb21faGV4IiwicHVibGljS2V5IiwicHJpdmF0ZUtleSIsInRvX3N0cmluZyIsInRvX2hleCIsImIiLCJwdWJLZXkiLCJzZXQiLCJncWxGb2xkZXJGdWxsVG9JbnRlcm5hbEZ1bGwiLCJmIiwiUHJvbWlzZSIsImFsbCIsInZGaWxlcyIsImZpbHRlciIsInZGaWxlIiwicGFyZW50Rm9sZGVyIiwic3ViZm9sZGVycyIsInMiLCJpbnRlcm5hbEZvbGRlclRvRm9sZGVyIiwiZm9sZGVyIiwiaW50ZXJuYWxGb2xkZXJGdWxsVG9Gb2xkZXJGdWxsIiwiZ3FsRm9sZGVyVG9FeHRlcm5hbEZvbGRlckZ1bGwiLCJncWxGb2xkZXJUb0V4dGVybmFsIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7OztBQUFBLFNBQVNBLE1BQVQsUUFBdUIsaUJBQXZCO0FBRUEsU0FBU0MsZ0JBQVQsUUFBaUMsdUJBQWpDO0FBU0EsU0FBU0Msa0JBQVQsRUFBNkJDLG9CQUE3QixRQUF5RCxZQUF6RDtBQUNBLFNBQVNDLFlBQVQsUUFBNkIsZ0JBQTdCO0FBQ0EsU0FBU0MsbUJBQVQsUUFBb0Msc0JBQXBDO0FBRUEsZ0JBQXNC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RjtBQUFBO0FBQUEsbUJBS0daLDJCQUEyQixDQUFDN0IsR0FBRCxFQUFNQyxPQUFOLENBTDlCOztBQUFBO0FBQUE7QUFBQTs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxHOzs7O0FBU1AsZ0JBQXNCMEMsbUJBQXRCO0FBQUE7QUFBQTs7O2tGQUFPLGtCQUNMM0MsR0FESyxFQUVMQyxPQUZLO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSwyQkFJRXNDLHNCQUpGO0FBQUE7QUFBQSxtQkFJK0J4QyxtQkFBbUIsQ0FBQ0MsR0FBRCxFQUFNQyxPQUFOLENBSmxEOztBQUFBO0FBQUE7QUFBQTs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxHIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgc29kaXVtIH0gZnJvbSBcIi4uLy4uL3NvZGl1bS5qc1wiO1xuaW1wb3J0IHR5cGUgeyBLZXlQYWlyIH0gZnJvbSBcIi4uLy4uL2NyeXB0by9pbmRleC5qc1wiO1xuaW1wb3J0IHsgZGVjcnlwdENyeXB0b0JveCB9IGZyb20gXCIuLi8uLi9jcnlwdG8vaW5kZXguanNcIjtcbmltcG9ydCB0eXBlIHtcbiAgR1FMRm9sZGVyLFxuICBJbnRlcm5hbEZvbGRlcixcbiAgRm9sZGVyLFxuICBHUUxGb2xkZXJGdWxsLFxuICBJbnRlcm5hbEZvbGRlckZ1bGwsXG4gIEZvbGRlckZ1bGxcbn0gZnJvbSBcIi4uL3R5cGVzL2luZGV4LmpzXCI7XG5pbXBvcnQgeyBncWxWRmlsZVRvSW50ZXJuYWwsIGludGVybmFsVkZpbGVUb1ZGaWxlIH0gZnJvbSBcIi4vdkZpbGUuanNcIjtcbmltcG9ydCB7IGZvbGRlcnNDYWNoZSB9IGZyb20gXCIuLi8uLi9jYWNoZS5qc1wiO1xuaW1wb3J0IHsgZGVjcnlwdFNlY3JldHN0cmVhbSB9IGZyb20gXCIuLi8uLi9jcnlwdG8vZmlsZS5qc1wiO1xuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ3FsRm9sZGVyVG9JbnRlcm5hbChcbiAgZ3FsOiBHUUxGb2xkZXIsXG4gIGtleVBhaXI6IEtleVBhaXJcbik6IFByb21pc2U8SW50ZXJuYWxGb2xkZXI+IHtcbiAgaWYgKCFncWwudXNlckFwcCkge1xuICAgIHRocm93IGBDYW4ndCBhY2Nlc3MgZm9sZGVyICR7Z3FsLmlkfWA7XG4gIH1cbiAgY29uc3QgaW50ZXJuYWw6IEludGVybmFsRm9sZGVyID0ge1xuICAgIGlkOiBncWwuaWQsXG4gICAgdXNlckFwcDogZ3FsLnVzZXJBcHAsXG4gICAgbmFtZTogZ3FsLm5hbWUsXG4gICAgaXNGYXZvcml0ZTogZ3FsLmlzRmF2b3JpdGUsXG4gICAgYnJlYWRjcnVtYjogZ3FsLmJyZWFkY3J1bWIsXG4gICAgY3JlYXRlZEJ5OiBncWwuY3JlYXRlZEJ5LnVzZXIsXG4gICAgY3JlYXRlZEF0OiBuZXcgRGF0ZShncWwuY3JlYXRlZEF0KSxcbiAgICB1cGRhdGVkQXQ6IG5ldyBEYXRlKGdxbC51cGRhdGVkQXQpLFxuICAgIGRlbGV0ZWRBdDogZ3FsLmRlbGV0ZWRBdCA/IG5ldyBEYXRlKGdxbC5kZWxldGVkQXQpIDogbnVsbCxcbiAgICB1c2VyczogZ3FsLnVzZXJBcHBzLm1hcCh1ID0+IFt1LnVzZXJBcHAudXNlciwgdS5yaWdodHNdKVxuICB9O1xuXG4gIGludGVybmFsLnVzZXJBcHAgPSB7IC4uLmdxbC51c2VyQXBwIH07XG5cbiAgaWYgKGdxbC51c2VyQXBwLm5hbWVLZXkpIHtcbiAgICBjb25zdCBrZXkgPSBkZWNyeXB0Q3J5cHRvQm94KFxuICAgICAgc29kaXVtLmZyb21faGV4KGdxbC51c2VyQXBwLm5hbWVLZXkpLFxuICAgICAgZ3FsLmNyZWF0ZWRCeS51c2VyLnB1YmxpY0tleSxcbiAgICAgIGtleVBhaXIucHJpdmF0ZUtleVxuICAgICk7XG4gICAgaW50ZXJuYWwubmFtZSA9IHNvZGl1bS50b19zdHJpbmcoXG4gICAgICBhd2FpdCBkZWNyeXB0U2VjcmV0c3RyZWFtKGtleSwgc29kaXVtLmZyb21faGV4KGludGVybmFsLm5hbWUpKVxuICAgICk7XG5cbiAgICBpbnRlcm5hbC51c2VyQXBwLm5hbWVLZXkgPSBzb2RpdW0udG9faGV4KGtleSk7XG4gIH1cblxuICBmb3IgKGNvbnN0IGIgb2YgaW50ZXJuYWwuYnJlYWRjcnVtYikge1xuICAgIGlmICghYi5uYW1lS2V5KSB7XG4gICAgICBjb250aW51ZTtcbiAgICB9XG4gICAgY29uc3Qga2V5ID0gZGVjcnlwdENyeXB0b0JveChcbiAgICAgIHNvZGl1bS5mcm9tX2hleChiLm5hbWVLZXkpLFxuICAgICAgYi5wdWJLZXksXG4gICAgICBrZXlQYWlyLnByaXZhdGVLZXlcbiAgICApO1xuICAgIGIubmFtZUtleSA9IHNvZGl1bS50b19oZXgoa2V5KTtcblxuICAgIGIubmFtZSA9IHNvZGl1bS50b19zdHJpbmcoXG4gICAgICBhd2FpdCBkZWNyeXB0U2VjcmV0c3RyZWFtKGtleSwgc29kaXVtLmZyb21faGV4KGIubmFtZSkpXG4gICAgKTtcbiAgfVxuXG4gIGZvbGRlcnNDYWNoZS5zZXQoaW50ZXJuYWwuaWQsIGludGVybmFsKTtcbiAgcmV0dXJuIGludGVybmFsO1xufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ3FsRm9sZGVyRnVsbFRvSW50ZXJuYWxGdWxsKFxuICBncWw6IEdRTEZvbGRlckZ1bGwsXG4gIGtleVBhaXI6IEtleVBhaXJcbik6IFByb21pc2U8SW50ZXJuYWxGb2xkZXJGdWxsPiB7XG4gIGNvbnN0IGYgPSBhd2FpdCBncWxGb2xkZXJUb0ludGVybmFsKGdxbCwga2V5UGFpcik7XG4gIHJldHVybiB7XG4gICAgLi4uZixcbiAgICB2RmlsZXM6IGF3YWl0IFByb21pc2UuYWxsKFxuICAgICAgZ3FsLnZGaWxlc1xuICAgICAgICAuZmlsdGVyKGYgPT4gZi51c2VyQXBwKVxuICAgICAgICAubWFwKHZGaWxlID0+IGdxbFZGaWxlVG9JbnRlcm5hbCh2RmlsZSwga2V5UGFpcikpXG4gICAgKSxcbiAgICBwYXJlbnRGb2xkZXI6IGdxbC5wYXJlbnRGb2xkZXJcbiAgICAgID8gYXdhaXQgZ3FsRm9sZGVyVG9JbnRlcm5hbChncWwucGFyZW50Rm9sZGVyLCBrZXlQYWlyKVxuICAgICAgOiBudWxsLFxuICAgIHN1YmZvbGRlcnM6IGF3YWl0IFByb21pc2UuYWxsKFxuICAgICAgZ3FsLnN1YmZvbGRlcnMubWFwKHMgPT4gZ3FsRm9sZGVyVG9JbnRlcm5hbChzLCBrZXlQYWlyKSlcbiAgICApXG4gIH07XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpbnRlcm5hbEZvbGRlclRvRm9sZGVyKGludGVybmFsOiBJbnRlcm5hbEZvbGRlcik6IEZvbGRlciB7XG4gIGNvbnN0IGZvbGRlcjogRm9sZGVyID0ge1xuICAgIC4uLmludGVybmFsXG4gIH07XG5cbiAgZm9yIChjb25zdCBiIG9mIGZvbGRlci5icmVhZGNydW1iKSB7XG4gICAgLy8gQHRzLWlnbm9yZVxuICAgIGRlbGV0ZSBiLm5hbWVLZXk7XG4gIH1cbiAgLy8gQHRzLWlnbm9yZVxuICBkZWxldGUgZm9sZGVyLm5hbWVLZXk7XG4gIHJldHVybiBmb2xkZXI7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpbnRlcm5hbEZvbGRlckZ1bGxUb0ZvbGRlckZ1bGwoXG4gIGludGVybmFsOiBJbnRlcm5hbEZvbGRlckZ1bGxcbik6IEZvbGRlckZ1bGwge1xuICByZXR1cm4ge1xuICAgIC4uLmludGVybmFsRm9sZGVyVG9Gb2xkZXIoaW50ZXJuYWwpLFxuICAgIHZGaWxlczogaW50ZXJuYWwudkZpbGVzLm1hcChpbnRlcm5hbFZGaWxlVG9WRmlsZSksXG4gICAgcGFyZW50Rm9sZGVyOiBpbnRlcm5hbC5wYXJlbnRGb2xkZXJcbiAgICAgID8gaW50ZXJuYWxGb2xkZXJUb0ZvbGRlcihpbnRlcm5hbC5wYXJlbnRGb2xkZXIpXG4gICAgICA6IG51bGwsXG4gICAgc3ViZm9sZGVyczogaW50ZXJuYWwuc3ViZm9sZGVycy5tYXAoaW50ZXJuYWxGb2xkZXJUb0ZvbGRlcilcbiAgfTtcbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGdxbEZvbGRlclRvRXh0ZXJuYWxGb2xkZXJGdWxsKFxuICBncWw6IEdRTEZvbGRlckZ1bGwsXG4gIGtleVBhaXI6IEtleVBhaXJcbik6IFByb21pc2U8Rm9sZGVyRnVsbD4ge1xuICByZXR1cm4gaW50ZXJuYWxGb2xkZXJGdWxsVG9Gb2xkZXJGdWxsKFxuICAgIGF3YWl0IGdxbEZvbGRlckZ1bGxUb0ludGVybmFsRnVsbChncWwsIGtleVBhaXIpXG4gICk7XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBncWxGb2xkZXJUb0V4dGVybmFsKFxuICBncWw6IEdRTEZvbGRlcixcbiAga2V5UGFpcjogS2V5UGFpclxuKTogUHJvbWlzZTxGb2xkZXI+IHtcbiAgcmV0dXJuIGludGVybmFsRm9sZGVyVG9Gb2xkZXIoYXdhaXQgZ3FsRm9sZGVyVG9JbnRlcm5hbChncWwsIGtleVBhaXIpKTtcbn1cbiJdfQ==
|
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
import { sodium, decryptCryptoBox } from "../../index.js";
|
|
2
|
-
export function convertInternalMailToExternal(data, keys) {
|
|
3
|
-
var _mI$replyTo;
|
|
4
|
-
|
|
5
|
-
if (data.mailIntegrityDraft) {
|
|
6
|
-
data.type = "draft";
|
|
7
|
-
}
|
|
8
|
-
|
|
9
|
-
var mI = data.type === "draft" ? data.mailIntegrityDraft : data.mailIntegrity;
|
|
10
|
-
|
|
11
|
-
if (!mI) {
|
|
12
|
-
return null;
|
|
13
|
-
}
|
|
14
|
-
|
|
15
|
-
var pubKey = data.type === "received" ? data.sender.publicKey : keys.publicKey;
|
|
16
|
-
var body = sodium.to_string(decryptCryptoBox(sodium.from_hex(data.body), pubKey, keys.privateKey));
|
|
17
|
-
var subject = sodium.to_string(decryptCryptoBox(sodium.from_hex(data.subject), pubKey, keys.privateKey));
|
|
18
|
-
var hash = sodium.crypto_generichash(sodium.crypto_generichash_BYTES, JSON.stringify({
|
|
19
|
-
body: body,
|
|
20
|
-
subject: subject
|
|
21
|
-
}), mI.hashKey, "hex");
|
|
22
|
-
return {
|
|
23
|
-
type: data.type,
|
|
24
|
-
id: data.id,
|
|
25
|
-
mailIntegrityId: mI.id,
|
|
26
|
-
replyTo: (_mI$replyTo = mI.replyTo) == null ? void 0 : _mI$replyTo.id,
|
|
27
|
-
body: body,
|
|
28
|
-
subject: subject,
|
|
29
|
-
createdAt: new Date(data.createdAt),
|
|
30
|
-
deletedAt: data.deletedAt ? new Date(data.deletedAt) : null,
|
|
31
|
-
openedAt: data.openedAt ? new Date(data.openedAt) : null,
|
|
32
|
-
isAltered: hash !== mI.hash,
|
|
33
|
-
temporaryRecipients: mI.temporaryRecipients,
|
|
34
|
-
recipients: data.type === "draft" ? mI.recipients : data.recipients,
|
|
35
|
-
sender: data.sender,
|
|
36
|
-
files: data.files.map(function (f) {
|
|
37
|
-
var name = sodium.to_string(decryptCryptoBox(sodium.from_hex(f.filename), pubKey, keys.privateKey));
|
|
38
|
-
return {
|
|
39
|
-
id: f.file.id,
|
|
40
|
-
name: name,
|
|
41
|
-
key: f.fileKey
|
|
42
|
-
};
|
|
43
|
-
})
|
|
44
|
-
};
|
|
45
|
-
}
|
|
46
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jbGllbnQvY29udmVydC9tYWlsLnRzIl0sIm5hbWVzIjpbInNvZGl1bSIsImRlY3J5cHRDcnlwdG9Cb3giLCJjb252ZXJ0SW50ZXJuYWxNYWlsVG9FeHRlcm5hbCIsImRhdGEiLCJrZXlzIiwibWFpbEludGVncml0eURyYWZ0IiwidHlwZSIsIm1JIiwibWFpbEludGVncml0eSIsInB1YktleSIsInNlbmRlciIsInB1YmxpY0tleSIsImJvZHkiLCJ0b19zdHJpbmciLCJmcm9tX2hleCIsInByaXZhdGVLZXkiLCJzdWJqZWN0IiwiaGFzaCIsImNyeXB0b19nZW5lcmljaGFzaCIsImNyeXB0b19nZW5lcmljaGFzaF9CWVRFUyIsIkpTT04iLCJzdHJpbmdpZnkiLCJoYXNoS2V5IiwiaWQiLCJtYWlsSW50ZWdyaXR5SWQiLCJyZXBseVRvIiwiY3JlYXRlZEF0IiwiRGF0ZSIsImRlbGV0ZWRBdCIsIm9wZW5lZEF0IiwiaXNBbHRlcmVkIiwidGVtcG9yYXJ5UmVjaXBpZW50cyIsInJlY2lwaWVudHMiLCJmaWxlcyIsIm1hcCIsImYiLCJuYW1lIiwiZmlsZW5hbWUiLCJmaWxlIiwia2V5IiwiZmlsZUtleSJdLCJtYXBwaW5ncyI6IkFBRUEsU0FBU0EsTUFBVCxFQUFpQkMsZ0JBQWpCLFFBQXlDLGdCQUF6QztBQUVBLE9BQU8sU0FBU0MsNkJBQVQsQ0FDTEMsSUFESyxFQUVMQyxJQUZLLEVBR1E7QUFBQTs7QUFDYixNQUFJRCxJQUFJLENBQUNFLGtCQUFULEVBQTZCO0FBQzNCRixJQUFBQSxJQUFJLENBQUNHLElBQUwsR0FBWSxPQUFaO0FBQ0Q7O0FBRUQsTUFBTUMsRUFBRSxHQUNOSixJQUFJLENBQUNHLElBQUwsS0FBYyxPQUFkLEdBQXdCSCxJQUFJLENBQUNFLGtCQUE3QixHQUFrREYsSUFBSSxDQUFDSyxhQUR6RDs7QUFHQSxNQUFJLENBQUNELEVBQUwsRUFBUztBQUNQLFdBQU8sSUFBUDtBQUNEOztBQUVELE1BQU1FLE1BQU0sR0FDVk4sSUFBSSxDQUFDRyxJQUFMLEtBQWMsVUFBZCxHQUEyQkgsSUFBSSxDQUFDTyxNQUFMLENBQVlDLFNBQXZDLEdBQW1EUCxJQUFJLENBQUNPLFNBRDFEO0FBR0EsTUFBTUMsSUFBSSxHQUFHWixNQUFNLENBQUNhLFNBQVAsQ0FDWFosZ0JBQWdCLENBQUNELE1BQU0sQ0FBQ2MsUUFBUCxDQUFnQlgsSUFBSSxDQUFDUyxJQUFyQixDQUFELEVBQTZCSCxNQUE3QixFQUFxQ0wsSUFBSSxDQUFDVyxVQUExQyxDQURMLENBQWI7QUFJQSxNQUFNQyxPQUFPLEdBQUdoQixNQUFNLENBQUNhLFNBQVAsQ0FDZFosZ0JBQWdCLENBQUNELE1BQU0sQ0FBQ2MsUUFBUCxDQUFnQlgsSUFBSSxDQUFDYSxPQUFyQixDQUFELEVBQWdDUCxNQUFoQyxFQUF3Q0wsSUFBSSxDQUFDVyxVQUE3QyxDQURGLENBQWhCO0FBSUEsTUFBTUUsSUFBSSxHQUFHakIsTUFBTSxDQUFDa0Isa0JBQVAsQ0FDWGxCLE1BQU0sQ0FBQ21CLHdCQURJLEVBRVhDLElBQUksQ0FBQ0MsU0FBTCxDQUFlO0FBQUVULElBQUFBLElBQUksRUFBSkEsSUFBRjtBQUFRSSxJQUFBQSxPQUFPLEVBQVBBO0FBQVIsR0FBZixDQUZXLEVBR1hULEVBQUUsQ0FBQ2UsT0FIUSxFQUlYLEtBSlcsQ0FBYjtBQU9BLFNBQU87QUFDTGhCLElBQUFBLElBQUksRUFBRUgsSUFBSSxDQUFDRyxJQUROO0FBRUxpQixJQUFBQSxFQUFFLEVBQUVwQixJQUFJLENBQUNvQixFQUZKO0FBR0xDLElBQUFBLGVBQWUsRUFBRWpCLEVBQUUsQ0FBQ2dCLEVBSGY7QUFJTEUsSUFBQUEsT0FBTyxpQkFBRWxCLEVBQUUsQ0FBQ2tCLE9BQUwscUJBQUUsWUFBWUYsRUFKaEI7QUFLTFgsSUFBQUEsSUFBSSxFQUFKQSxJQUxLO0FBTUxJLElBQUFBLE9BQU8sRUFBUEEsT0FOSztBQU9MVSxJQUFBQSxTQUFTLEVBQUUsSUFBSUMsSUFBSixDQUFTeEIsSUFBSSxDQUFDdUIsU0FBZCxDQVBOO0FBUUxFLElBQUFBLFNBQVMsRUFBRXpCLElBQUksQ0FBQ3lCLFNBQUwsR0FBaUIsSUFBSUQsSUFBSixDQUFTeEIsSUFBSSxDQUFDeUIsU0FBZCxDQUFqQixHQUE0QyxJQVJsRDtBQVNMQyxJQUFBQSxRQUFRLEVBQUUxQixJQUFJLENBQUMwQixRQUFMLEdBQWdCLElBQUlGLElBQUosQ0FBU3hCLElBQUksQ0FBQzBCLFFBQWQsQ0FBaEIsR0FBMEMsSUFUL0M7QUFVTEMsSUFBQUEsU0FBUyxFQUFFYixJQUFJLEtBQUtWLEVBQUUsQ0FBQ1UsSUFWbEI7QUFXTGMsSUFBQUEsbUJBQW1CLEVBQUV4QixFQUFFLENBQUN3QixtQkFYbkI7QUFZTEMsSUFBQUEsVUFBVSxFQUFFN0IsSUFBSSxDQUFDRyxJQUFMLEtBQWMsT0FBZCxHQUF3QkMsRUFBRSxDQUFDeUIsVUFBM0IsR0FBd0M3QixJQUFJLENBQUM2QixVQVpwRDtBQWFMdEIsSUFBQUEsTUFBTSxFQUFFUCxJQUFJLENBQUNPLE1BYlI7QUFjTHVCLElBQUFBLEtBQUssRUFBRTlCLElBQUksQ0FBQzhCLEtBQUwsQ0FBV0MsR0FBWCxDQUFlLFVBQUFDLENBQUMsRUFBSTtBQUN6QixVQUFNQyxJQUFJLEdBQUdwQyxNQUFNLENBQUNhLFNBQVAsQ0FDWFosZ0JBQWdCLENBQUNELE1BQU0sQ0FBQ2MsUUFBUCxDQUFnQnFCLENBQUMsQ0FBQ0UsUUFBbEIsQ0FBRCxFQUE4QjVCLE1BQTlCLEVBQXNDTCxJQUFJLENBQUNXLFVBQTNDLENBREwsQ0FBYjtBQUlBLGFBQU87QUFDTFEsUUFBQUEsRUFBRSxFQUFFWSxDQUFDLENBQUNHLElBQUYsQ0FBT2YsRUFETjtBQUVMYSxRQUFBQSxJQUFJLEVBQUpBLElBRks7QUFHTEcsUUFBQUEsR0FBRyxFQUFFSixDQUFDLENBQUNLO0FBSEYsT0FBUDtBQUtELEtBVk07QUFkRixHQUFQO0FBMEJEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBLZXlQYWlyIH0gZnJvbSBcIi4uLy4uL2NyeXB0by9pbmRleC5qc1wiO1xuaW1wb3J0IHR5cGUgeyBJbnRlcm5hbE1haWwsIE1haWwgfSBmcm9tIFwiLi4vdHlwZXMvaW5kZXguanNcIjtcbmltcG9ydCB7IHNvZGl1bSwgZGVjcnlwdENyeXB0b0JveCB9IGZyb20gXCIuLi8uLi9pbmRleC5qc1wiO1xuXG5leHBvcnQgZnVuY3Rpb24gY29udmVydEludGVybmFsTWFpbFRvRXh0ZXJuYWwoXG4gIGRhdGE6IEludGVybmFsTWFpbCxcbiAga2V5czogS2V5UGFpclxuKTogTWFpbCB8IG51bGwge1xuICBpZiAoZGF0YS5tYWlsSW50ZWdyaXR5RHJhZnQpIHtcbiAgICBkYXRhLnR5cGUgPSBcImRyYWZ0XCI7XG4gIH1cblxuICBjb25zdCBtSSA9XG4gICAgZGF0YS50eXBlID09PSBcImRyYWZ0XCIgPyBkYXRhLm1haWxJbnRlZ3JpdHlEcmFmdCA6IGRhdGEubWFpbEludGVncml0eTtcblxuICBpZiAoIW1JKSB7XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICBjb25zdCBwdWJLZXkgPVxuICAgIGRhdGEudHlwZSA9PT0gXCJyZWNlaXZlZFwiID8gZGF0YS5zZW5kZXIucHVibGljS2V5IDoga2V5cy5wdWJsaWNLZXk7XG5cbiAgY29uc3QgYm9keSA9IHNvZGl1bS50b19zdHJpbmcoXG4gICAgZGVjcnlwdENyeXB0b0JveChzb2RpdW0uZnJvbV9oZXgoZGF0YS5ib2R5KSwgcHViS2V5LCBrZXlzLnByaXZhdGVLZXkpXG4gICk7XG5cbiAgY29uc3Qgc3ViamVjdCA9IHNvZGl1bS50b19zdHJpbmcoXG4gICAgZGVjcnlwdENyeXB0b0JveChzb2RpdW0uZnJvbV9oZXgoZGF0YS5zdWJqZWN0KSwgcHViS2V5LCBrZXlzLnByaXZhdGVLZXkpXG4gICk7XG5cbiAgY29uc3QgaGFzaCA9IHNvZGl1bS5jcnlwdG9fZ2VuZXJpY2hhc2goXG4gICAgc29kaXVtLmNyeXB0b19nZW5lcmljaGFzaF9CWVRFUyxcbiAgICBKU09OLnN0cmluZ2lmeSh7IGJvZHksIHN1YmplY3QgfSksXG4gICAgbUkuaGFzaEtleSxcbiAgICBcImhleFwiXG4gICk7XG5cbiAgcmV0dXJuIHtcbiAgICB0eXBlOiBkYXRhLnR5cGUsXG4gICAgaWQ6IGRhdGEuaWQsXG4gICAgbWFpbEludGVncml0eUlkOiBtSS5pZCxcbiAgICByZXBseVRvOiBtSS5yZXBseVRvPy5pZCxcbiAgICBib2R5LFxuICAgIHN1YmplY3QsXG4gICAgY3JlYXRlZEF0OiBuZXcgRGF0ZShkYXRhLmNyZWF0ZWRBdCksXG4gICAgZGVsZXRlZEF0OiBkYXRhLmRlbGV0ZWRBdCA/IG5ldyBEYXRlKGRhdGEuZGVsZXRlZEF0KSA6IG51bGwsXG4gICAgb3BlbmVkQXQ6IGRhdGEub3BlbmVkQXQgPyBuZXcgRGF0ZShkYXRhLm9wZW5lZEF0KSA6IG51bGwsXG4gICAgaXNBbHRlcmVkOiBoYXNoICE9PSBtSS5oYXNoLFxuICAgIHRlbXBvcmFyeVJlY2lwaWVudHM6IG1JLnRlbXBvcmFyeVJlY2lwaWVudHMsXG4gICAgcmVjaXBpZW50czogZGF0YS50eXBlID09PSBcImRyYWZ0XCIgPyBtSS5yZWNpcGllbnRzIDogZGF0YS5yZWNpcGllbnRzLFxuICAgIHNlbmRlcjogZGF0YS5zZW5kZXIsXG4gICAgZmlsZXM6IGRhdGEuZmlsZXMubWFwKGYgPT4ge1xuICAgICAgY29uc3QgbmFtZSA9IHNvZGl1bS50b19zdHJpbmcoXG4gICAgICAgIGRlY3J5cHRDcnlwdG9Cb3goc29kaXVtLmZyb21faGV4KGYuZmlsZW5hbWUpLCBwdWJLZXksIGtleXMucHJpdmF0ZUtleSlcbiAgICAgICk7XG5cbiAgICAgIHJldHVybiB7XG4gICAgICAgIGlkOiBmLmZpbGUuaWQsXG4gICAgICAgIG5hbWUsXG4gICAgICAgIGtleTogZi5maWxlS2V5XG4gICAgICB9O1xuICAgIH0pXG4gIH07XG59XG4iXX0=
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
import type { KeyPair } from "../../crypto/index.js";
|
|
2
|
-
import type { GQLVFile, GQLVFileWithFolder, InternalVFile, InternalVFileWithFolder, VFile, VFileWithFolder } from "../types/index.js";
|
|
3
|
-
export declare function gqlVFileToInternal(gql: GQLVFile | GQLVFileWithFolder, keyPair: KeyPair): Promise<InternalVFile | InternalVFileWithFolder>;
|
|
4
|
-
export declare function internalVFileToVFile(internal: InternalVFile | InternalVFileWithFolder): VFile | VFileWithFolder;
|
|
5
|
-
export declare function gqlVFileToExternal(gql: GQLVFile | GQLVFileWithFolder, keyPair: KeyPair): Promise<VFile | VFileWithFolder>;
|
|
@@ -1,164 +0,0 @@
|
|
|
1
|
-
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
2
|
-
import _asyncToGenerator from "@babel/runtime/helpers/asyncToGenerator";
|
|
3
|
-
import _regeneratorRuntime from "@babel/runtime/regenerator";
|
|
4
|
-
|
|
5
|
-
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
|
|
6
|
-
|
|
7
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
|
|
8
|
-
|
|
9
|
-
import { vFilesCache } from "../../cache.js";
|
|
10
|
-
import { decryptCryptoBox } from "../../crypto/index.js";
|
|
11
|
-
import { decryptSecretstream } from "../../crypto/file.js";
|
|
12
|
-
import { sodium } from "../../sodium.js";
|
|
13
|
-
import { gqlFileToInternal, internalFileToFile } from "./file.js";
|
|
14
|
-
import { gqlFolderToInternal, internalFolderToFolder } from "./folder.js";
|
|
15
|
-
export function gqlVFileToInternal(_x, _x2) {
|
|
16
|
-
return _gqlVFileToInternal.apply(this, arguments);
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
function _gqlVFileToInternal() {
|
|
20
|
-
_gqlVFileToInternal = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(gql, keyPair) {
|
|
21
|
-
var nameKey, internal, internalWithFolder;
|
|
22
|
-
return _regeneratorRuntime.wrap(function _callee$(_context) {
|
|
23
|
-
while (1) {
|
|
24
|
-
switch (_context.prev = _context.next) {
|
|
25
|
-
case 0:
|
|
26
|
-
if (gql.current) {
|
|
27
|
-
_context.next = 2;
|
|
28
|
-
break;
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
throw "VFile " + gql.id + " doesn't have current file";
|
|
32
|
-
|
|
33
|
-
case 2:
|
|
34
|
-
if (gql.userApp) {
|
|
35
|
-
_context.next = 4;
|
|
36
|
-
break;
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
throw "VFile " + gql.id + " doesn't have userApp";
|
|
40
|
-
|
|
41
|
-
case 4:
|
|
42
|
-
// console.dir(gql, { depth: Infinity })
|
|
43
|
-
nameKey = decryptCryptoBox(sodium.from_hex(gql.userApp.nameKey), gql.createdBy.user.publicKey, keyPair.privateKey);
|
|
44
|
-
_context.t0 = _objectSpread;
|
|
45
|
-
_context.t1 = _objectSpread({}, gql);
|
|
46
|
-
_context.t2 = {};
|
|
47
|
-
_context.t3 = gql.createdBy.user;
|
|
48
|
-
_context.t4 = sodium;
|
|
49
|
-
_context.next = 12;
|
|
50
|
-
return decryptSecretstream(nameKey, sodium.from_hex(gql.filename));
|
|
51
|
-
|
|
52
|
-
case 12:
|
|
53
|
-
_context.t5 = _context.sent;
|
|
54
|
-
_context.t6 = _context.t4.to_string.call(_context.t4, _context.t5);
|
|
55
|
-
_context.t7 = {
|
|
56
|
-
userApp: gql.userApp.userApp,
|
|
57
|
-
rights: gql.userApp.rights,
|
|
58
|
-
isRoot: gql.userApp.isRoot,
|
|
59
|
-
nameKey: sodium.to_hex(nameKey)
|
|
60
|
-
};
|
|
61
|
-
_context.t8 = gql.userApps.map(function (u) {
|
|
62
|
-
return [u.userApp.user, u.rights];
|
|
63
|
-
});
|
|
64
|
-
_context.t9 = new Date(gql.createdAt);
|
|
65
|
-
_context.t10 = new Date(gql.updatedAt);
|
|
66
|
-
_context.t11 = gql.deletedAt ? new Date(gql.deletedAt) : null;
|
|
67
|
-
_context.t12 = gqlFileToInternal(gql.current, keyPair);
|
|
68
|
-
_context.t13 = gql.history.map(function (f) {
|
|
69
|
-
return gqlFileToInternal(f, keyPair);
|
|
70
|
-
});
|
|
71
|
-
_context.t14 = {
|
|
72
|
-
createdBy: _context.t3,
|
|
73
|
-
filename: _context.t6,
|
|
74
|
-
userApp: _context.t7,
|
|
75
|
-
users: _context.t8,
|
|
76
|
-
createdAt: _context.t9,
|
|
77
|
-
updatedAt: _context.t10,
|
|
78
|
-
deletedAt: _context.t11,
|
|
79
|
-
current: _context.t12,
|
|
80
|
-
history: _context.t13
|
|
81
|
-
};
|
|
82
|
-
internal = (0, _context.t0)(_context.t1, _context.t2, _context.t14);
|
|
83
|
-
|
|
84
|
-
if (!("folder" in gql)) {
|
|
85
|
-
_context.next = 34;
|
|
86
|
-
break;
|
|
87
|
-
}
|
|
88
|
-
|
|
89
|
-
_context.t15 = _objectSpread;
|
|
90
|
-
_context.t16 = _objectSpread({}, internal);
|
|
91
|
-
_context.t17 = {};
|
|
92
|
-
_context.next = 29;
|
|
93
|
-
return gqlFolderToInternal(gql.folder, keyPair);
|
|
94
|
-
|
|
95
|
-
case 29:
|
|
96
|
-
_context.t18 = _context.sent;
|
|
97
|
-
_context.t19 = {
|
|
98
|
-
folder: _context.t18
|
|
99
|
-
};
|
|
100
|
-
internalWithFolder = (0, _context.t15)(_context.t16, _context.t17, _context.t19);
|
|
101
|
-
vFilesCache.set(internal.id, internalWithFolder);
|
|
102
|
-
return _context.abrupt("return", internalWithFolder);
|
|
103
|
-
|
|
104
|
-
case 34:
|
|
105
|
-
// @ts-expect-error
|
|
106
|
-
delete internal.userApps;
|
|
107
|
-
vFilesCache.set(internal.id, internal);
|
|
108
|
-
return _context.abrupt("return", internal);
|
|
109
|
-
|
|
110
|
-
case 37:
|
|
111
|
-
case "end":
|
|
112
|
-
return _context.stop();
|
|
113
|
-
}
|
|
114
|
-
}
|
|
115
|
-
}, _callee);
|
|
116
|
-
}));
|
|
117
|
-
return _gqlVFileToInternal.apply(this, arguments);
|
|
118
|
-
}
|
|
119
|
-
|
|
120
|
-
export function internalVFileToVFile(internal) {
|
|
121
|
-
var vFile = _objectSpread(_objectSpread({}, internal), {}, {
|
|
122
|
-
current: internalFileToFile(internal.current),
|
|
123
|
-
history: internal.history.map(internalFileToFile)
|
|
124
|
-
}); // @ts-ignore
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
delete vFile.nameKey;
|
|
128
|
-
|
|
129
|
-
if ("folder" in internal) {
|
|
130
|
-
return _objectSpread(_objectSpread({}, internal), {}, {
|
|
131
|
-
folder: internalFolderToFolder(internal.folder)
|
|
132
|
-
});
|
|
133
|
-
}
|
|
134
|
-
|
|
135
|
-
return vFile;
|
|
136
|
-
}
|
|
137
|
-
export function gqlVFileToExternal(_x3, _x4) {
|
|
138
|
-
return _gqlVFileToExternal.apply(this, arguments);
|
|
139
|
-
}
|
|
140
|
-
|
|
141
|
-
function _gqlVFileToExternal() {
|
|
142
|
-
_gqlVFileToExternal = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee2(gql, keyPair) {
|
|
143
|
-
return _regeneratorRuntime.wrap(function _callee2$(_context2) {
|
|
144
|
-
while (1) {
|
|
145
|
-
switch (_context2.prev = _context2.next) {
|
|
146
|
-
case 0:
|
|
147
|
-
_context2.t0 = internalVFileToVFile;
|
|
148
|
-
_context2.next = 3;
|
|
149
|
-
return gqlVFileToInternal(gql, keyPair);
|
|
150
|
-
|
|
151
|
-
case 3:
|
|
152
|
-
_context2.t1 = _context2.sent;
|
|
153
|
-
return _context2.abrupt("return", (0, _context2.t0)(_context2.t1));
|
|
154
|
-
|
|
155
|
-
case 5:
|
|
156
|
-
case "end":
|
|
157
|
-
return _context2.stop();
|
|
158
|
-
}
|
|
159
|
-
}
|
|
160
|
-
}, _callee2);
|
|
161
|
-
}));
|
|
162
|
-
return _gqlVFileToExternal.apply(this, arguments);
|
|
163
|
-
}
|
|
164
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jbGllbnQvY29udmVydC92RmlsZS50cyJdLCJuYW1lcyI6WyJ2RmlsZXNDYWNoZSIsImRlY3J5cHRDcnlwdG9Cb3giLCJkZWNyeXB0U2VjcmV0c3RyZWFtIiwic29kaXVtIiwiZ3FsRmlsZVRvSW50ZXJuYWwiLCJpbnRlcm5hbEZpbGVUb0ZpbGUiLCJncWxGb2xkZXJUb0ludGVybmFsIiwiaW50ZXJuYWxGb2xkZXJUb0ZvbGRlciIsImdxbFZGaWxlVG9JbnRlcm5hbCIsImdxbCIsImtleVBhaXIiLCJjdXJyZW50IiwiaWQiLCJ1c2VyQXBwIiwibmFtZUtleSIsImZyb21faGV4IiwiY3JlYXRlZEJ5IiwidXNlciIsInB1YmxpY0tleSIsInByaXZhdGVLZXkiLCJmaWxlbmFtZSIsInRvX3N0cmluZyIsInJpZ2h0cyIsImlzUm9vdCIsInRvX2hleCIsInVzZXJBcHBzIiwibWFwIiwidSIsIkRhdGUiLCJjcmVhdGVkQXQiLCJ1cGRhdGVkQXQiLCJkZWxldGVkQXQiLCJoaXN0b3J5IiwiZiIsInVzZXJzIiwiaW50ZXJuYWwiLCJmb2xkZXIiLCJpbnRlcm5hbFdpdGhGb2xkZXIiLCJzZXQiLCJpbnRlcm5hbFZGaWxlVG9WRmlsZSIsInZGaWxlIiwiZ3FsVkZpbGVUb0V4dGVybmFsIl0sIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUFBLFNBQVNBLFdBQVQsUUFBNEIsZ0JBQTVCO0FBRUEsU0FBU0MsZ0JBQVQsUUFBaUMsdUJBQWpDO0FBQ0EsU0FBU0MsbUJBQVQsUUFBb0Msc0JBQXBDO0FBQ0EsU0FBU0MsTUFBVCxRQUF1QixpQkFBdkI7QUFTQSxTQUFTQyxpQkFBVCxFQUE0QkMsa0JBQTVCLFFBQXNELFdBQXREO0FBQ0EsU0FBU0MsbUJBQVQsRUFBOEJDLHNCQUE5QixRQUE0RCxhQUE1RDtBQUVBLGdCQUFzQkMsa0JBQXRCO0FBQUE7QUFBQTs7O2lGQUFPLGlCQUNMQyxHQURLLEVBRUxDLE9BRks7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsZ0JBSUFELEdBQUcsQ0FBQ0UsT0FKSjtBQUFBO0FBQUE7QUFBQTs7QUFBQSw2QkFLWUYsR0FBRyxDQUFDRyxFQUxoQjs7QUFBQTtBQUFBLGdCQVFBSCxHQUFHLENBQUNJLE9BUko7QUFBQTtBQUFBO0FBQUE7O0FBQUEsNkJBU1lKLEdBQUcsQ0FBQ0csRUFUaEI7O0FBQUE7QUFZTDtBQUVNRSxZQUFBQSxPQWRELEdBY1diLGdCQUFnQixDQUM5QkUsTUFBTSxDQUFDWSxRQUFQLENBQWdCTixHQUFHLENBQUNJLE9BQUosQ0FBWUMsT0FBNUIsQ0FEOEIsRUFFOUJMLEdBQUcsQ0FBQ08sU0FBSixDQUFjQyxJQUFkLENBQW1CQyxTQUZXLEVBRzlCUixPQUFPLENBQUNTLFVBSHNCLENBZDNCO0FBQUE7QUFBQSw0Q0FvQkFWLEdBcEJBO0FBQUE7QUFBQSwwQkFxQlFBLEdBQUcsQ0FBQ08sU0FBSixDQUFjQyxJQXJCdEI7QUFBQSwwQkFzQk9kLE1BdEJQO0FBQUE7QUFBQSxtQkF1QktELG1CQUFtQixDQUFDWSxPQUFELEVBQVVYLE1BQU0sQ0FBQ1ksUUFBUCxDQUFnQk4sR0FBRyxDQUFDVyxRQUFwQixDQUFWLENBdkJ4Qjs7QUFBQTtBQUFBO0FBQUEsc0NBc0JjQyxTQXRCZDtBQUFBLDBCQXlCTTtBQUNQUixjQUFBQSxPQUFPLEVBQUVKLEdBQUcsQ0FBQ0ksT0FBSixDQUFZQSxPQURkO0FBRVBTLGNBQUFBLE1BQU0sRUFBRWIsR0FBRyxDQUFDSSxPQUFKLENBQVlTLE1BRmI7QUFHUEMsY0FBQUEsTUFBTSxFQUFFZCxHQUFHLENBQUNJLE9BQUosQ0FBWVUsTUFIYjtBQUlQVCxjQUFBQSxPQUFPLEVBQUVYLE1BQU0sQ0FBQ3FCLE1BQVAsQ0FBY1YsT0FBZDtBQUpGLGFBekJOO0FBQUEsMEJBK0JJTCxHQUFHLENBQUNnQixRQUFKLENBQWFDLEdBQWIsQ0FBaUIsVUFBQUMsQ0FBQztBQUFBLHFCQUFJLENBQUNBLENBQUMsQ0FBQ2QsT0FBRixDQUFVSSxJQUFYLEVBQWlCVSxDQUFDLENBQUNMLE1BQW5CLENBQUo7QUFBQSxhQUFsQixDQS9CSjtBQUFBLDBCQWdDUSxJQUFJTSxJQUFKLENBQVNuQixHQUFHLENBQUNvQixTQUFiLENBaENSO0FBQUEsMkJBaUNRLElBQUlELElBQUosQ0FBU25CLEdBQUcsQ0FBQ3FCLFNBQWIsQ0FqQ1I7QUFBQSwyQkFrQ1FyQixHQUFHLENBQUNzQixTQUFKLEdBQWdCLElBQUlILElBQUosQ0FBU25CLEdBQUcsQ0FBQ3NCLFNBQWIsQ0FBaEIsR0FBMEMsSUFsQ2xEO0FBQUEsMkJBbUNNM0IsaUJBQWlCLENBQUNLLEdBQUcsQ0FBQ0UsT0FBTCxFQUFjRCxPQUFkLENBbkN2QjtBQUFBLDJCQW9DTUQsR0FBRyxDQUFDdUIsT0FBSixDQUFZTixHQUFaLENBQWdCLFVBQUFPLENBQUM7QUFBQSxxQkFBSTdCLGlCQUFpQixDQUFDNkIsQ0FBRCxFQUFJdkIsT0FBSixDQUFyQjtBQUFBLGFBQWpCLENBcENOO0FBQUE7QUFxQkhNLGNBQUFBLFNBckJHO0FBc0JISSxjQUFBQSxRQXRCRztBQXlCSFAsY0FBQUEsT0F6Qkc7QUErQkhxQixjQUFBQSxLQS9CRztBQWdDSEwsY0FBQUEsU0FoQ0c7QUFpQ0hDLGNBQUFBLFNBakNHO0FBa0NIQyxjQUFBQSxTQWxDRztBQW1DSHBCLGNBQUFBLE9BbkNHO0FBb0NIcUIsY0FBQUEsT0FwQ0c7QUFBQTtBQW1CQ0csWUFBQUEsUUFuQkQ7O0FBQUEsa0JBc0NELFlBQVkxQixHQXRDWDtBQUFBO0FBQUE7QUFBQTs7QUFBQTtBQUFBLDZDQXdDRTBCLFFBeENGO0FBQUE7QUFBQTtBQUFBLG1CQXlDYTdCLG1CQUFtQixDQUFDRyxHQUFHLENBQUMyQixNQUFMLEVBQWExQixPQUFiLENBekNoQzs7QUFBQTtBQUFBO0FBQUE7QUF5Q0QwQixjQUFBQSxNQXpDQztBQUFBO0FBdUNHQyxZQUFBQSxrQkF2Q0g7QUEyQ0hyQyxZQUFBQSxXQUFXLENBQUNzQyxHQUFaLENBQWdCSCxRQUFRLENBQUN2QixFQUF6QixFQUE2QnlCLGtCQUE3QjtBQTNDRyw2Q0E0Q0lBLGtCQTVDSjs7QUFBQTtBQStDTDtBQUNBLG1CQUFPRixRQUFRLENBQUNWLFFBQWhCO0FBRUF6QixZQUFBQSxXQUFXLENBQUNzQyxHQUFaLENBQWdCSCxRQUFRLENBQUN2QixFQUF6QixFQUE2QnVCLFFBQTdCO0FBbERLLDZDQW1ERUEsUUFuREY7O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRzs7OztBQXNEUCxPQUFPLFNBQVNJLG9CQUFULENBQ0xKLFFBREssRUFFb0I7QUFDekIsTUFBTUssS0FBWSxtQ0FDYkwsUUFEYTtBQUVoQnhCLElBQUFBLE9BQU8sRUFBRU4sa0JBQWtCLENBQUM4QixRQUFRLENBQUN4QixPQUFWLENBRlg7QUFHaEJxQixJQUFBQSxPQUFPLEVBQUVHLFFBQVEsQ0FBQ0gsT0FBVCxDQUFpQk4sR0FBakIsQ0FBcUJyQixrQkFBckI7QUFITyxJQUFsQixDQUR5QixDQU16Qjs7O0FBQ0EsU0FBT21DLEtBQUssQ0FBQzFCLE9BQWI7O0FBRUEsTUFBSSxZQUFZcUIsUUFBaEIsRUFBMEI7QUFDeEIsMkNBQ0tBLFFBREw7QUFFRUMsTUFBQUEsTUFBTSxFQUFFN0Isc0JBQXNCLENBQUM0QixRQUFRLENBQUNDLE1BQVY7QUFGaEM7QUFJRDs7QUFFRCxTQUFPSSxLQUFQO0FBQ0Q7QUFFRCxnQkFBc0JDLGtCQUF0QjtBQUFBO0FBQUE7OztpRkFBTyxrQkFDTGhDLEdBREssRUFFTEMsT0FGSztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsMkJBSUU2QixvQkFKRjtBQUFBO0FBQUEsbUJBSTZCL0Isa0JBQWtCLENBQUNDLEdBQUQsRUFBTUMsT0FBTixDQUovQzs7QUFBQTtBQUFBO0FBQUE7O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHZGaWxlc0NhY2hlIH0gZnJvbSBcIi4uLy4uL2NhY2hlLmpzXCI7XG5pbXBvcnQgdHlwZSB7IEtleVBhaXIgfSBmcm9tIFwiLi4vLi4vY3J5cHRvL2luZGV4LmpzXCI7XG5pbXBvcnQgeyBkZWNyeXB0Q3J5cHRvQm94IH0gZnJvbSBcIi4uLy4uL2NyeXB0by9pbmRleC5qc1wiO1xuaW1wb3J0IHsgZGVjcnlwdFNlY3JldHN0cmVhbSB9IGZyb20gXCIuLi8uLi9jcnlwdG8vZmlsZS5qc1wiO1xuaW1wb3J0IHsgc29kaXVtIH0gZnJvbSBcIi4uLy4uL3NvZGl1bS5qc1wiO1xuaW1wb3J0IHR5cGUge1xuICBHUUxWRmlsZSxcbiAgR1FMVkZpbGVXaXRoRm9sZGVyLFxuICBJbnRlcm5hbFZGaWxlLFxuICBJbnRlcm5hbFZGaWxlV2l0aEZvbGRlcixcbiAgVkZpbGUsXG4gIFZGaWxlV2l0aEZvbGRlclxufSBmcm9tIFwiLi4vdHlwZXMvaW5kZXguanNcIjtcbmltcG9ydCB7IGdxbEZpbGVUb0ludGVybmFsLCBpbnRlcm5hbEZpbGVUb0ZpbGUgfSBmcm9tIFwiLi9maWxlLmpzXCI7XG5pbXBvcnQgeyBncWxGb2xkZXJUb0ludGVybmFsLCBpbnRlcm5hbEZvbGRlclRvRm9sZGVyIH0gZnJvbSBcIi4vZm9sZGVyLmpzXCI7XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBncWxWRmlsZVRvSW50ZXJuYWwoXG4gIGdxbDogR1FMVkZpbGUgfCBHUUxWRmlsZVdpdGhGb2xkZXIsXG4gIGtleVBhaXI6IEtleVBhaXJcbik6IFByb21pc2U8SW50ZXJuYWxWRmlsZSB8IEludGVybmFsVkZpbGVXaXRoRm9sZGVyPiB7XG4gIGlmICghZ3FsLmN1cnJlbnQpIHtcbiAgICB0aHJvdyBgVkZpbGUgJHtncWwuaWR9IGRvZXNuJ3QgaGF2ZSBjdXJyZW50IGZpbGVgO1xuICB9XG5cbiAgaWYgKCFncWwudXNlckFwcCkge1xuICAgIHRocm93IGBWRmlsZSAke2dxbC5pZH0gZG9lc24ndCBoYXZlIHVzZXJBcHBgO1xuICB9XG5cbiAgLy8gY29uc29sZS5kaXIoZ3FsLCB7IGRlcHRoOiBJbmZpbml0eSB9KVxuXG4gIGNvbnN0IG5hbWVLZXkgPSBkZWNyeXB0Q3J5cHRvQm94KFxuICAgIHNvZGl1bS5mcm9tX2hleChncWwudXNlckFwcC5uYW1lS2V5KSxcbiAgICBncWwuY3JlYXRlZEJ5LnVzZXIucHVibGljS2V5LFxuICAgIGtleVBhaXIucHJpdmF0ZUtleVxuICApO1xuICBjb25zdCBpbnRlcm5hbDogSW50ZXJuYWxWRmlsZSA9IHtcbiAgICAuLi5ncWwsXG4gICAgY3JlYXRlZEJ5OiBncWwuY3JlYXRlZEJ5LnVzZXIsXG4gICAgZmlsZW5hbWU6IHNvZGl1bS50b19zdHJpbmcoXG4gICAgICBhd2FpdCBkZWNyeXB0U2VjcmV0c3RyZWFtKG5hbWVLZXksIHNvZGl1bS5mcm9tX2hleChncWwuZmlsZW5hbWUpKVxuICAgICksXG4gICAgdXNlckFwcDoge1xuICAgICAgdXNlckFwcDogZ3FsLnVzZXJBcHAudXNlckFwcCxcbiAgICAgIHJpZ2h0czogZ3FsLnVzZXJBcHAucmlnaHRzLFxuICAgICAgaXNSb290OiBncWwudXNlckFwcC5pc1Jvb3QsXG4gICAgICBuYW1lS2V5OiBzb2RpdW0udG9faGV4KG5hbWVLZXkpXG4gICAgfSxcbiAgICB1c2VyczogZ3FsLnVzZXJBcHBzLm1hcCh1ID0+IFt1LnVzZXJBcHAudXNlciwgdS5yaWdodHNdKSxcbiAgICBjcmVhdGVkQXQ6IG5ldyBEYXRlKGdxbC5jcmVhdGVkQXQpLFxuICAgIHVwZGF0ZWRBdDogbmV3IERhdGUoZ3FsLnVwZGF0ZWRBdCksXG4gICAgZGVsZXRlZEF0OiBncWwuZGVsZXRlZEF0ID8gbmV3IERhdGUoZ3FsLmRlbGV0ZWRBdCkgOiBudWxsLFxuICAgIGN1cnJlbnQ6IGdxbEZpbGVUb0ludGVybmFsKGdxbC5jdXJyZW50LCBrZXlQYWlyKSxcbiAgICBoaXN0b3J5OiBncWwuaGlzdG9yeS5tYXAoZiA9PiBncWxGaWxlVG9JbnRlcm5hbChmLCBrZXlQYWlyKSlcbiAgfTtcbiAgaWYgKFwiZm9sZGVyXCIgaW4gZ3FsKSB7XG4gICAgY29uc3QgaW50ZXJuYWxXaXRoRm9sZGVyOiBJbnRlcm5hbFZGaWxlV2l0aEZvbGRlciA9IHtcbiAgICAgIC4uLmludGVybmFsLFxuICAgICAgZm9sZGVyOiBhd2FpdCBncWxGb2xkZXJUb0ludGVybmFsKGdxbC5mb2xkZXIsIGtleVBhaXIpXG4gICAgfTtcbiAgICB2RmlsZXNDYWNoZS5zZXQoaW50ZXJuYWwuaWQsIGludGVybmFsV2l0aEZvbGRlcik7XG4gICAgcmV0dXJuIGludGVybmFsV2l0aEZvbGRlcjtcbiAgfVxuXG4gIC8vIEB0cy1leHBlY3QtZXJyb3JcbiAgZGVsZXRlIGludGVybmFsLnVzZXJBcHBzO1xuXG4gIHZGaWxlc0NhY2hlLnNldChpbnRlcm5hbC5pZCwgaW50ZXJuYWwpO1xuICByZXR1cm4gaW50ZXJuYWw7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpbnRlcm5hbFZGaWxlVG9WRmlsZShcbiAgaW50ZXJuYWw6IEludGVybmFsVkZpbGUgfCBJbnRlcm5hbFZGaWxlV2l0aEZvbGRlclxuKTogVkZpbGUgfCBWRmlsZVdpdGhGb2xkZXIge1xuICBjb25zdCB2RmlsZTogVkZpbGUgPSB7XG4gICAgLi4uaW50ZXJuYWwsXG4gICAgY3VycmVudDogaW50ZXJuYWxGaWxlVG9GaWxlKGludGVybmFsLmN1cnJlbnQpLFxuICAgIGhpc3Rvcnk6IGludGVybmFsLmhpc3RvcnkubWFwKGludGVybmFsRmlsZVRvRmlsZSlcbiAgfTtcbiAgLy8gQHRzLWlnbm9yZVxuICBkZWxldGUgdkZpbGUubmFtZUtleTtcblxuICBpZiAoXCJmb2xkZXJcIiBpbiBpbnRlcm5hbCkge1xuICAgIHJldHVybiB7XG4gICAgICAuLi5pbnRlcm5hbCxcbiAgICAgIGZvbGRlcjogaW50ZXJuYWxGb2xkZXJUb0ZvbGRlcihpbnRlcm5hbC5mb2xkZXIpXG4gICAgfTtcbiAgfVxuXG4gIHJldHVybiB2RmlsZTtcbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGdxbFZGaWxlVG9FeHRlcm5hbChcbiAgZ3FsOiBHUUxWRmlsZSB8IEdRTFZGaWxlV2l0aEZvbGRlcixcbiAga2V5UGFpcjogS2V5UGFpclxuKTogUHJvbWlzZTxWRmlsZSB8IFZGaWxlV2l0aEZvbGRlcj4ge1xuICByZXR1cm4gaW50ZXJuYWxWRmlsZVRvVkZpbGUoYXdhaXQgZ3FsVkZpbGVUb0ludGVybmFsKGdxbCwga2V5UGFpcikpO1xufVxuIl19
|
package/lib/client/helpers.js
DELETED
|
@@ -1,116 +0,0 @@
|
|
|
1
|
-
import { SecrecyClient } from "./index.js";
|
|
2
|
-
import { popup } from "../PopupTools.js";
|
|
3
|
-
import { getStorage } from "./storage.js";
|
|
4
|
-
export function parseInfos() {
|
|
5
|
-
if (!window.location.hash) {
|
|
6
|
-
return null;
|
|
7
|
-
}
|
|
8
|
-
|
|
9
|
-
var hash = window.location.hash.substr(1);
|
|
10
|
-
|
|
11
|
-
try {
|
|
12
|
-
var res = JSON.parse(atob(hash));
|
|
13
|
-
window.location.hash = ""; // TODO Add object content validation
|
|
14
|
-
|
|
15
|
-
return res;
|
|
16
|
-
} catch (_unused) {
|
|
17
|
-
return null;
|
|
18
|
-
}
|
|
19
|
-
}
|
|
20
|
-
export function getSecrecyClient(env, session) {
|
|
21
|
-
var storage = getStorage(session);
|
|
22
|
-
var uaSession = storage.userAppSession.load();
|
|
23
|
-
var uaKeys = storage.userAppKeys.load();
|
|
24
|
-
var uaJwt = storage.jwt.load();
|
|
25
|
-
|
|
26
|
-
if (!uaSession || !uaKeys || !uaJwt) {
|
|
27
|
-
var infos = parseInfos();
|
|
28
|
-
|
|
29
|
-
if (infos) {
|
|
30
|
-
storage.userAppKeys.save(infos.keys);
|
|
31
|
-
storage.userAppSession.save(infos.uaSession);
|
|
32
|
-
storage.jwt.save(infos.jwt);
|
|
33
|
-
return new SecrecyClient(infos.uaSession, infos.keys, infos.jwt, env);
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
return null;
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
return new SecrecyClient(uaSession, uaKeys, uaJwt, env);
|
|
40
|
-
}
|
|
41
|
-
export function login(_temp) {
|
|
42
|
-
var _ref = _temp === void 0 ? {} : _temp,
|
|
43
|
-
appCode = _ref.appCode,
|
|
44
|
-
path = _ref.path,
|
|
45
|
-
redirect = _ref.redirect,
|
|
46
|
-
scopes = _ref.scopes,
|
|
47
|
-
backPath = _ref.backPath,
|
|
48
|
-
env = _ref.env,
|
|
49
|
-
session = _ref.session;
|
|
50
|
-
|
|
51
|
-
return new Promise(function (resolve, reject) {
|
|
52
|
-
var appUrl = window.location.origin;
|
|
53
|
-
|
|
54
|
-
if (appCode && !appUrl.includes("localhost")) {
|
|
55
|
-
return reject("Can't use appCode if not in localhost");
|
|
56
|
-
}
|
|
57
|
-
|
|
58
|
-
var client = getSecrecyClient(env);
|
|
59
|
-
|
|
60
|
-
if (!client) {
|
|
61
|
-
var infos = {
|
|
62
|
-
appUrl: appUrl,
|
|
63
|
-
appCode: appCode,
|
|
64
|
-
redirect: redirect,
|
|
65
|
-
path: path,
|
|
66
|
-
scopes: scopes,
|
|
67
|
-
backPath: backPath
|
|
68
|
-
};
|
|
69
|
-
var data = btoa(JSON.stringify(infos)).replaceAll("=", "");
|
|
70
|
-
var envStr = "";
|
|
71
|
-
|
|
72
|
-
if (env === "dev") {
|
|
73
|
-
envStr = "dev.";
|
|
74
|
-
} else if (env === "staging") {
|
|
75
|
-
envStr = "staging.";
|
|
76
|
-
}
|
|
77
|
-
|
|
78
|
-
var lang = document.documentElement.lang;
|
|
79
|
-
var url = "https://auth." + envStr + "secrecy.me" + (lang ? "/" + lang : "") + "/login#" + data;
|
|
80
|
-
|
|
81
|
-
var validate = function validate(infos) {
|
|
82
|
-
var storage = getStorage(session);
|
|
83
|
-
storage.userAppSession.save(infos.uaSession);
|
|
84
|
-
storage.userAppKeys.save(infos.keys);
|
|
85
|
-
storage.jwt.save(infos.jwt);
|
|
86
|
-
return resolve(new SecrecyClient(infos.uaSession, infos.keys, infos.jwt, env));
|
|
87
|
-
};
|
|
88
|
-
|
|
89
|
-
if (redirect) {
|
|
90
|
-
var _infos = parseInfos();
|
|
91
|
-
|
|
92
|
-
if (_infos) {
|
|
93
|
-
return validate(_infos);
|
|
94
|
-
} else {
|
|
95
|
-
window.location.href = url;
|
|
96
|
-
return resolve(null);
|
|
97
|
-
}
|
|
98
|
-
} else {
|
|
99
|
-
popup(url, "Secrecy Login", {}, function (err, data) {
|
|
100
|
-
if (err) {
|
|
101
|
-
return reject(err);
|
|
102
|
-
} else {
|
|
103
|
-
var _infos2 = data;
|
|
104
|
-
|
|
105
|
-
if (_infos2) {
|
|
106
|
-
return validate(_infos2);
|
|
107
|
-
}
|
|
108
|
-
}
|
|
109
|
-
});
|
|
110
|
-
}
|
|
111
|
-
} else {
|
|
112
|
-
return resolve(client);
|
|
113
|
-
}
|
|
114
|
-
});
|
|
115
|
-
}
|
|
116
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jbGllbnQvaGVscGVycy50cyJdLCJuYW1lcyI6WyJTZWNyZWN5Q2xpZW50IiwicG9wdXAiLCJnZXRTdG9yYWdlIiwicGFyc2VJbmZvcyIsIndpbmRvdyIsImxvY2F0aW9uIiwiaGFzaCIsInN1YnN0ciIsInJlcyIsIkpTT04iLCJwYXJzZSIsImF0b2IiLCJnZXRTZWNyZWN5Q2xpZW50IiwiZW52Iiwic2Vzc2lvbiIsInN0b3JhZ2UiLCJ1YVNlc3Npb24iLCJ1c2VyQXBwU2Vzc2lvbiIsImxvYWQiLCJ1YUtleXMiLCJ1c2VyQXBwS2V5cyIsInVhSnd0Iiwiand0IiwiaW5mb3MiLCJzYXZlIiwia2V5cyIsImxvZ2luIiwiYXBwQ29kZSIsInBhdGgiLCJyZWRpcmVjdCIsInNjb3BlcyIsImJhY2tQYXRoIiwiUHJvbWlzZSIsInJlc29sdmUiLCJyZWplY3QiLCJhcHBVcmwiLCJvcmlnaW4iLCJpbmNsdWRlcyIsImNsaWVudCIsImRhdGEiLCJidG9hIiwic3RyaW5naWZ5IiwicmVwbGFjZUFsbCIsImVudlN0ciIsImxhbmciLCJkb2N1bWVudCIsImRvY3VtZW50RWxlbWVudCIsInVybCIsInZhbGlkYXRlIiwiaHJlZiIsImVyciJdLCJtYXBwaW5ncyI6IkFBQUEsU0FBU0EsYUFBVCxRQUE4QixZQUE5QjtBQUNBLFNBQVNDLEtBQVQsUUFBc0Isa0JBQXRCO0FBRUEsU0FBU0MsVUFBVCxRQUEyQixjQUEzQjtBQUVBLE9BQU8sU0FBU0MsVUFBVCxHQUE2QztBQUNsRCxNQUFJLENBQUNDLE1BQU0sQ0FBQ0MsUUFBUCxDQUFnQkMsSUFBckIsRUFBMkI7QUFDekIsV0FBTyxJQUFQO0FBQ0Q7O0FBQ0QsTUFBTUEsSUFBSSxHQUFHRixNQUFNLENBQUNDLFFBQVAsQ0FBZ0JDLElBQWhCLENBQXFCQyxNQUFyQixDQUE0QixDQUE1QixDQUFiOztBQUNBLE1BQUk7QUFDRixRQUFNQyxHQUFHLEdBQUdDLElBQUksQ0FBQ0MsS0FBTCxDQUFXQyxJQUFJLENBQUNM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QkYsR0FBdkI7QUFDQSxpQkFBT2QsT0FBTyxDQUFDLElBQUQsQ0FBZDtBQUNEO0FBQ0YsT0FSRCxNQVFPO0FBQ0xoQyxRQUFBQSxLQUFLLENBQUM4QyxHQUFELEVBQU0sZUFBTixFQUF1QixFQUF2QixFQUEyQixVQUFDRyxHQUFELEVBQU1YLElBQU4sRUFBZTtBQUM3QyxjQUFJVyxHQUFKLEVBQVM7QUFDUCxtQkFBT2hCLE1BQU0sQ0FBQ2dCLEdBQUQsQ0FBYjtBQUNELFdBRkQsTUFFTztBQUNMLGdCQUFNM0IsT0FBSyxHQUFHZ0IsSUFBZDs7QUFDQSxnQkFBSWhCLE9BQUosRUFBVztBQUNULHFCQUFPeUIsUUFBUSxDQUFDekIsT0FBRCxDQUFmO0FBQ0Q7QUFDRjtBQUNGLFNBVEksQ0FBTDtBQVVEO0FBQ0YsS0EzREQsTUEyRE87QUFDTCxhQUFPVSxPQUFPLENBQUNLLE1BQUQsQ0FBZDtBQUNEO0FBQ0YsR0FyRU0sQ0FBUDtBQXNFRCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFNlY3JlY3lDbGllbnQgfSBmcm9tIFwiLi9pbmRleC5qc1wiO1xuaW1wb3J0IHsgcG9wdXAgfSBmcm9tIFwiLi4vUG9wdXBUb29scy5qc1wiO1xuaW1wb3J0IHR5cGUgeyBTZWNyZWN5VXNlckFwcCB9IGZyb20gXCIuL3R5cGVzL2luZGV4LmpzXCI7XG5pbXBvcnQgeyBnZXRTdG9yYWdlIH0gZnJvbSBcIi4vc3RvcmFnZS5qc1wiO1xuXG5leHBvcnQgZnVuY3Rpb24gcGFyc2VJbmZvcygpOiBTZWNyZWN5VXNlckFwcCB8IG51bGwge1xuICBpZiAoIXdpbmRvdy5sb2NhdGlvbi5oYXNoKSB7XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cbiAgY29uc3QgaGFzaCA9IHdpbmRvdy5sb2NhdGlvbi5oYXNoLnN1YnN0cigxKTtcbiAgdHJ5IHtcbiAgICBjb25zdCByZXMgPSBKU09OLnBhcnNlKGF0b2IoaGFzaCkpO1xuICAgIHdpbmRvdy5sb2NhdGlvbi5oYXNoID0gXCJcIjtcbiAgICAvLyBUT0RPIEFkZCBvYmplY3QgY29udGVudCB2YWxpZGF0aW9uXG4gICAgcmV0dXJuIHJlcztcbiAgfSBjYXRjaCB7XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cbn1cblxuZXhwb3J0IHR5cGUgSGFzaEluZm9zID0ge1xuICBhcHBVcmw6IHN0cmluZztcbiAgYmFja1BhdGg/OiBzdHJpbmc7XG4gIGFwcENvZGU/OiBzdHJpbmcgfCBudWxsIHwgdW5kZWZpbmVkO1xuICBwYXRoPzogc3RyaW5nIHwgbnVsbCB8IHVuZGVmaW5lZDtcbiAgcmVkaXJlY3Q/OiBib29sZWFuO1xuICBzY29wZXM/OiB7XG4gICAgZW1haWw6IGJvb2xlYW47XG4gIH07XG59O1xuZXhwb3J0IHR5cGUgU2VjcmVjeUVudiA9IFwiZGV2XCIgfCBcInN0YWdpbmdcIiB8IFwicHJvZFwiO1xuZXhwb3J0IHR5cGUgVXNlU2VjcmVjeVBhcmFtcyA9IE9taXQ8SGFzaEluZm9zLCBcImFwcFVybFwiPiAmIHtcbiAgZW52OiBTZWNyZWN5RW52O1xuICBzZXNzaW9uPzogYm9vbGVhbiB8IHVuZGVmaW5lZDtcbn07XG5cbmV4cG9ydCB0eXBlIFZhbHVlPFQgZXh0ZW5kcyBVc2VTZWNyZWN5UGFyYW1zPiA9IFQgZXh0ZW5kcyB7IHJlZGlyZWN0OiB0cnVlIH1cbiAgPyBTZWNyZWN5Q2xpZW50IHwgbnVsbFxuICA6IFNlY3JlY3lDbGllbnQ7XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRTZWNyZWN5Q2xpZW50KFxuICBlbnY6IFNlY3JlY3lFbnYsXG4gIHNlc3Npb24/OiBib29sZWFuIHwgdW5kZWZpbmVkXG4pOiBTZWNyZWN5Q2xpZW50IHwgbnVsbCB7XG4gIGNvbnN0IHN0b3JhZ2UgPSBnZXRTdG9yYWdlKHNlc3Npb24pO1xuICBjb25zdCB1YVNlc3Npb24gPSBzdG9yYWdlLnVzZXJBcHBTZXNzaW9uLmxvYWQoKTtcbiAgY29uc3QgdWFLZXlzID0gc3RvcmFnZS51c2VyQXBwS2V5cy5sb2FkKCk7XG4gIGNvbnN0IHVhSnd0ID0gc3RvcmFnZS5qd3QubG9hZCgpO1xuICBpZiAoIXVhU2Vzc2lvbiB8fCAhdWFLZXlzIHx8ICF1YUp3dCkge1xuICAgIGNvbnN0IGluZm9zID0gcGFyc2VJbmZvcygpO1xuICAgIGlmIChpbmZvcykge1xuICAgICAgc3RvcmFnZS51c2VyQXBwS2V5cy5zYXZlKGluZm9zLmtleXMpO1xuICAgICAgc3RvcmFnZS51c2VyQXBwU2Vzc2lvbi5zYXZlKGluZm9zLnVhU2Vzc2lvbik7XG4gICAgICBzdG9yYWdlLmp3dC5zYXZlKGluZm9zLmp3dCk7XG4gICAgICByZXR1cm4gbmV3IFNlY3JlY3lDbGllbnQoaW5mb3MudWFTZXNzaW9uLCBpbmZvcy5rZXlzLCBpbmZvcy5qd3QsIGVudik7XG4gICAgfVxuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgcmV0dXJuIG5ldyBTZWNyZWN5Q2xpZW50KHVhU2Vzc2lvbiwgdWFLZXlzLCB1YUp3dCwgZW52KTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGxvZ2luPFQgZXh0ZW5kcyBVc2VTZWNyZWN5UGFyYW1zPihcbiAgeyBhcHBDb2RlLCBwYXRoLCByZWRpcmVjdCwgc2NvcGVzLCBiYWNrUGF0aCwgZW52LCBzZXNzaW9uIH06IFQgPSB7fSBhcyBUXG4pOiBQcm9taXNlPFZhbHVlPFQ+PiB7XG4gIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgY29uc3QgYXBwVXJsID0gd2luZG93LmxvY2F0aW9uLm9yaWdpbjtcbiAgICBpZiAoYXBwQ29kZSAmJiAhYXBwVXJsLmluY2x1ZGVzKFwibG9jYWxob3N0XCIpKSB7XG4gICAgICByZXR1cm4gcmVqZWN0KFwiQ2FuJ3QgdXNlIGFwcENvZGUgaWYgbm90IGluIGxvY2FsaG9zdFwiKTtcbiAgICB9XG4gICAgY29uc3QgY2xpZW50ID0gZ2V0U2VjcmVjeUNsaWVudChlbnYpO1xuXG4gICAgaWYgKCFjbGllbnQpIHtcbiAgICAgIGNvbnN0IGluZm9zOiBIYXNoSW5mb3MgPSB7XG4gICAgICAgIGFwcFVybCxcbiAgICAgICAgYXBwQ29kZSxcbiAgICAgICAgcmVkaXJlY3QsXG4gICAgICAgIHBhdGgsXG4gICAgICAgIHNjb3BlcyxcbiAgICAgICAgYmFja1BhdGhcbiAgICAgIH07XG4gICAgICBjb25zdCBkYXRhID0gYnRvYShKU09OLnN0cmluZ2lmeShpbmZvcykpLnJlcGxhY2VBbGwoXCI9XCIsIFwiXCIpO1xuXG4gICAgICBsZXQgZW52U3RyID0gXCJcIjtcbiAgICAgIGlmIChlbnYgPT09IFwiZGV2XCIpIHtcbiAgICAgICAgZW52U3RyID0gXCJkZXYuXCI7XG4gICAgICB9IGVsc2UgaWYgKGVudiA9PT0gXCJzdGFnaW5nXCIpIHtcbiAgICAgICAgZW52U3RyID0gXCJzdGFnaW5nLlwiO1xuICAgICAgfVxuXG4gICAgICBjb25zdCBsYW5nID0gZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50Lmxhbmc7XG5cbiAgICAgIGNvbnN0IHVybCA9IGBodHRwczovL2F1dGguJHtlbnZTdHJ9c2VjcmVjeS5tZSR7XG4gICAgICAgIGxhbmcgPyBgLyR7bGFuZ31gIDogXCJcIlxuICAgICAgfS9sb2dpbiMke2RhdGF9YDtcblxuICAgICAgY29uc3QgdmFsaWRhdGUgPSAoaW5mb3M6IFNlY3JlY3lVc2VyQXBwKTogdm9pZCA9PiB7XG4gICAgICAgIGNvbnN0IHN0b3JhZ2UgPSBnZXRTdG9yYWdlKHNlc3Npb24pO1xuICAgICAgICBzdG9yYWdlLnVzZXJBcHBTZXNzaW9uLnNhdmUoaW5mb3MudWFTZXNzaW9uKTtcbiAgICAgICAgc3RvcmFnZS51c2VyQXBwS2V5cy5zYXZlKGluZm9zLmtleXMpO1xuICAgICAgICBzdG9yYWdlLmp3dC5zYXZlKGluZm9zLmp3dCk7XG4gICAgICAgIHJldHVybiByZXNvbHZlKFxuICAgICAgICAgIG5ldyBTZWNyZWN5Q2xpZW50KFxuICAgICAgICAgICAgaW5mb3MudWFTZXNzaW9uLFxuICAgICAgICAgICAgaW5mb3Mua2V5cyxcbiAgICAgICAgICAgIGluZm9zLmp3dCxcbiAgICAgICAgICAgIGVudlxuICAgICAgICAgICkgYXMgVmFsdWU8VD5cbiAgICAgICAgKTtcbiAgICAgIH07XG5cbiAgICAgIGlmIChyZWRpcmVjdCkge1xuICAgICAgICBjb25zdCBpbmZvcyA9IHBhcnNlSW5mb3MoKTtcbiAgICAgICAgaWYgKGluZm9zKSB7XG4gICAgICAgICAgcmV0dXJuIHZhbGlkYXRlKGluZm9zKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB3aW5kb3cubG9jYXRpb24uaHJlZiA9IHVybDtcbiAgICAgICAgICByZXR1cm4gcmVzb2x2ZShudWxsIGFzIFZhbHVlPFQ+KTtcbiAgICAgICAgfVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcG9wdXAodXJsLCBcIlNlY3JlY3kgTG9naW5cIiwge30sIChlcnIsIGRhdGEpID0+IHtcbiAgICAgICAgICBpZiAoZXJyKSB7XG4gICAgICAgICAgICByZXR1cm4gcmVqZWN0KGVycik7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGNvbnN0IGluZm9zID0gZGF0YSBhcyBTZWNyZWN5VXNlckFwcDtcbiAgICAgICAgICAgIGlmIChpbmZvcykge1xuICAgICAgICAgICAgICByZXR1cm4gdmFsaWRhdGUoaW5mb3MpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiByZXNvbHZlKGNsaWVudCBhcyBWYWx1ZTxUPik7XG4gICAgfVxuICB9KTtcbn1cbiJdfQ==
|