@secrecy/lib 1.0.0-dev.7 → 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 +4 -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 -112
- package/lib/cache.d.ts +0 -7
- package/lib/cache.js +0 -5
- 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 -167
- package/lib/client/index.js +0 -3746
- 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 -40
- 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 -1643
- package/lib/zeus/index.d.ts +0 -26220
- package/lib/zeus/index.js +0 -552
package/lib/PopupTools.js
DELETED
|
@@ -1,213 +0,0 @@
|
|
|
1
|
-
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
2
|
-
|
|
3
|
-
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; }
|
|
4
|
-
|
|
5
|
-
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; }
|
|
6
|
-
|
|
7
|
-
/**
|
|
8
|
-
* TS Rewrite of https://github.com/enhancv/popup-tools
|
|
9
|
-
*/
|
|
10
|
-
var defaultOptions = {
|
|
11
|
-
width: 700,
|
|
12
|
-
height: 520,
|
|
13
|
-
menubar: "no",
|
|
14
|
-
resizable: "yes",
|
|
15
|
-
location: "yes",
|
|
16
|
-
scrollbars: "no",
|
|
17
|
-
centered: true
|
|
18
|
-
};
|
|
19
|
-
var popupCount = 1;
|
|
20
|
-
/**
|
|
21
|
-
* Return options converted to a string
|
|
22
|
-
*
|
|
23
|
-
* @param {Object} options
|
|
24
|
-
* @return {String}
|
|
25
|
-
*/
|
|
26
|
-
|
|
27
|
-
function optionsToString(options) {
|
|
28
|
-
return Object.entries(options).map(function (_ref) {
|
|
29
|
-
var k = _ref[0],
|
|
30
|
-
v = _ref[1];
|
|
31
|
-
return k + "=" + v;
|
|
32
|
-
}).join(",");
|
|
33
|
-
}
|
|
34
|
-
/**
|
|
35
|
-
* Get a unique name on each call
|
|
36
|
-
* @return {String}
|
|
37
|
-
*/
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
function defaultPopupName() {
|
|
41
|
-
popupCount += 1;
|
|
42
|
-
return "Popup " + popupCount;
|
|
43
|
-
}
|
|
44
|
-
/**
|
|
45
|
-
* Convert "centered: true" key into concrete left and top arguments
|
|
46
|
-
* Both can be overwritten
|
|
47
|
-
*
|
|
48
|
-
* @param {Object} options
|
|
49
|
-
* @return {Object}
|
|
50
|
-
*/
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
function optionsResolveCentered(options) {
|
|
54
|
-
if (!options.width || !options.height) {
|
|
55
|
-
throw new Error("Should have width and height");
|
|
56
|
-
}
|
|
57
|
-
|
|
58
|
-
var result = _objectSpread({}, options);
|
|
59
|
-
|
|
60
|
-
var width = window.outerWidth - options.width;
|
|
61
|
-
var height = window.outerHeight - options.height;
|
|
62
|
-
|
|
63
|
-
if (options.centered) {
|
|
64
|
-
result.left = options.left || Math.round(window.screenX + width / 2);
|
|
65
|
-
result.top = options.top || Math.round(window.screenY + height / 2.5);
|
|
66
|
-
delete result.centered;
|
|
67
|
-
}
|
|
68
|
-
|
|
69
|
-
return result;
|
|
70
|
-
}
|
|
71
|
-
/**
|
|
72
|
-
* Create a form element, add hidden inputs for all the post data
|
|
73
|
-
* and post it into a newly opened popup
|
|
74
|
-
*
|
|
75
|
-
* @param {String} url
|
|
76
|
-
* @param {Object} postData
|
|
77
|
-
* @param {String} name
|
|
78
|
-
* @param {Object} options
|
|
79
|
-
* @return {Object}
|
|
80
|
-
*/
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
function openPopupWithPost(url, postData, name, options) {
|
|
84
|
-
var _win;
|
|
85
|
-
|
|
86
|
-
var form = document.createElement("form");
|
|
87
|
-
var win = null;
|
|
88
|
-
form.setAttribute("method", "post");
|
|
89
|
-
form.setAttribute("action", url);
|
|
90
|
-
form.setAttribute("target", name);
|
|
91
|
-
Object.keys(postData).forEach(function addFormItem(key) {
|
|
92
|
-
var input = document.createElement("input");
|
|
93
|
-
input.type = "hidden";
|
|
94
|
-
input.name = key;
|
|
95
|
-
input.value = postData[key];
|
|
96
|
-
form.appendChild(input);
|
|
97
|
-
});
|
|
98
|
-
document.body.appendChild(form);
|
|
99
|
-
win = window.open("/", name, options);
|
|
100
|
-
(_win = win) == null ? void 0 : _win.document.write("Loading...");
|
|
101
|
-
form.submit();
|
|
102
|
-
document.body.removeChild(form);
|
|
103
|
-
return win;
|
|
104
|
-
}
|
|
105
|
-
/**
|
|
106
|
-
* Open a popup using the first argument. Wait for it to close.
|
|
107
|
-
* Returns the window object
|
|
108
|
-
*
|
|
109
|
-
* @param {Function}
|
|
110
|
-
* @param {String}
|
|
111
|
-
* @param {String}
|
|
112
|
-
* @param {Object}
|
|
113
|
-
* @param {Function}
|
|
114
|
-
* @return {Object}
|
|
115
|
-
*/
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
function popupExecute(execute, url, name, options, callback) {
|
|
119
|
-
var popupName = name || defaultPopupName();
|
|
120
|
-
var popupOptions = optionsResolveCentered(Object.assign({}, defaultOptions, options));
|
|
121
|
-
|
|
122
|
-
var popupCallback = callback || function noop() {//
|
|
123
|
-
};
|
|
124
|
-
|
|
125
|
-
var optionsString = optionsToString(popupOptions);
|
|
126
|
-
var win = execute(url, popupName, optionsString);
|
|
127
|
-
var isMessageSent = false;
|
|
128
|
-
var interval;
|
|
129
|
-
|
|
130
|
-
function popupCallbackOnce(err, data) {
|
|
131
|
-
if (!isMessageSent) {
|
|
132
|
-
isMessageSent = true;
|
|
133
|
-
popupCallback(err, data);
|
|
134
|
-
}
|
|
135
|
-
}
|
|
136
|
-
|
|
137
|
-
function onMessage(message) {
|
|
138
|
-
var data = message ? message.data : undefined;
|
|
139
|
-
|
|
140
|
-
if (data) {
|
|
141
|
-
popupCallbackOnce(undefined, data);
|
|
142
|
-
window.removeEventListener("message", onMessage);
|
|
143
|
-
}
|
|
144
|
-
}
|
|
145
|
-
|
|
146
|
-
window.addEventListener("message", onMessage, false);
|
|
147
|
-
|
|
148
|
-
if (win) {
|
|
149
|
-
interval = window.setInterval(function closePopupCallback() {
|
|
150
|
-
if (win === null || win.closed) {
|
|
151
|
-
setTimeout(function delayWindowClosing() {
|
|
152
|
-
clearInterval(interval);
|
|
153
|
-
popupCallbackOnce(new Error("Popup closed"));
|
|
154
|
-
}, 500);
|
|
155
|
-
}
|
|
156
|
-
}, 100);
|
|
157
|
-
} else {
|
|
158
|
-
popupCallbackOnce(new Error("Popup blocked"));
|
|
159
|
-
}
|
|
160
|
-
|
|
161
|
-
return win;
|
|
162
|
-
}
|
|
163
|
-
/**
|
|
164
|
-
* Open a popup using the first argument.
|
|
165
|
-
* Wait for it to close and call the callback.
|
|
166
|
-
* Set the options string using the options object
|
|
167
|
-
* Returns the window object
|
|
168
|
-
*
|
|
169
|
-
* @param {String} url
|
|
170
|
-
* @param {String} name
|
|
171
|
-
* @param {Object} options
|
|
172
|
-
* @param {Function} callback
|
|
173
|
-
* @return {Object}
|
|
174
|
-
*/
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
export function popup(url, name, options, callback) {
|
|
178
|
-
return popupExecute(window.open, url, name, options, callback);
|
|
179
|
-
}
|
|
180
|
-
/**
|
|
181
|
-
* Open a popup using the first argument.
|
|
182
|
-
* Post the data into the open popup.
|
|
183
|
-
* Wait for it to close and call the callback.
|
|
184
|
-
* Set the options string using the options object
|
|
185
|
-
* Returns the window object
|
|
186
|
-
*
|
|
187
|
-
* @param {String} url
|
|
188
|
-
* @param {Object} postData
|
|
189
|
-
* @param {String} name
|
|
190
|
-
* @param {Object} options
|
|
191
|
-
* @param {Function} callback
|
|
192
|
-
* @return {Object}
|
|
193
|
-
*/
|
|
194
|
-
|
|
195
|
-
export function popupWithPost(url, postData, name, options, callback) {
|
|
196
|
-
function openWithPostData(popupUrl, popupName, optionsString) {
|
|
197
|
-
return openPopupWithPost(popupUrl, postData, popupName, optionsString);
|
|
198
|
-
}
|
|
199
|
-
|
|
200
|
-
return popupExecute(openWithPostData, url, name, options, callback);
|
|
201
|
-
}
|
|
202
|
-
/**
|
|
203
|
-
* Return html that when executed, will trigger the popup to callback with a response
|
|
204
|
-
*
|
|
205
|
-
* @param {Object}
|
|
206
|
-
* @return {String}
|
|
207
|
-
*/
|
|
208
|
-
|
|
209
|
-
export function popupResponse(data) {
|
|
210
|
-
var jsonData = JSON.stringify(data);
|
|
211
|
-
return "<script>window.opener.postMessage(" + jsonData + ", \"*\");setTimeout(function() { window.close(); }, 50);</script>";
|
|
212
|
-
}
|
|
213
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9Qb3B1cFRvb2xzLnRzIl0sIm5hbWVzIjpbImRlZmF1bHRPcHRpb25zIiwid2lkdGgiLCJoZWlnaHQiLCJtZW51YmFyIiwicmVzaXphYmxlIiwibG9jYXRpb24iLCJzY3JvbGxiYXJzIiwiY2VudGVyZWQiLCJwb3B1cENvdW50Iiwib3B0aW9uc1RvU3RyaW5nIiwib3B0aW9ucyIsIk9iamVjdCIsImVudHJpZXMiLCJtYXAiLCJrIiwidiIsImpvaW4iLCJkZWZhdWx0UG9wdXBOYW1lIiwib3B0aW9uc1Jlc29sdmVDZW50ZXJlZCIsIkVycm9yIiwicmVzdWx0Iiwid2luZG93Iiwib3V0ZXJXaWR0aCIsIm91dGVySGVpZ2h0IiwibGVmdCIsIk1hdGgiLCJyb3VuZCIsInNjcmVlblgiLCJ0b3AiLCJzY3JlZW5ZIiwib3BlblBvcHVwV2l0aFBvc3QiLCJ1cmwiLCJwb3N0RGF0YSIsIm5hbWUiLCJmb3JtIiwiZG9jdW1lbnQiLCJjcmVhdGVFbGVtZW50Iiwid2luIiwic2V0QXR0cmlidXRlIiwia2V5cyIsImZvckVhY2giLCJhZGRGb3JtSXRlbSIsImtleSIsImlucHV0IiwidHlwZSIsInZhbHVlIiwiYXBwZW5kQ2hpbGQiLCJib2R5Iiwib3BlbiIsIndyaXRlIiwic3VibWl0IiwicmVtb3ZlQ2hpbGQiLCJwb3B1cEV4ZWN1dGUiLCJleGVjdXRlIiwiY2FsbGJhY2siLCJwb3B1cE5hbWUiLCJwb3B1cE9wdGlvbnMiLCJhc3NpZ24iLCJwb3B1cENhbGxiYWNrIiwibm9vcCIsIm9wdGlvbnNTdHJpbmciLCJpc01lc3NhZ2VTZW50IiwiaW50ZXJ2YWwiLCJwb3B1cENhbGxiYWNrT25jZSIsImVyciIsImRhdGEiLCJvbk1lc3NhZ2UiLCJtZXNzYWdlIiwidW5kZWZpbmVkIiwicmVtb3ZlRXZlbnRMaXN0ZW5lciIsImFkZEV2ZW50TGlzdGVuZXIiLCJzZXRJbnRlcnZhbCIsImNsb3NlUG9wdXBDYWxsYmFjayIsImNsb3NlZCIsInNldFRpbWVvdXQiLCJkZWxheVdpbmRvd0Nsb3NpbmciLCJjbGVhckludGVydmFsIiwicG9wdXAiLCJwb3B1cFdpdGhQb3N0Iiwib3BlbldpdGhQb3N0RGF0YSIsInBvcHVwVXJsIiwicG9wdXBSZXNwb25zZSIsImpzb25EYXRhIiwiSlNPTiIsInN0cmluZ2lmeSJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUE7QUFDQTtBQUNBO0FBZUEsSUFBTUEsY0FBdUIsR0FBRztBQUM5QkMsRUFBQUEsS0FBSyxFQUFFLEdBRHVCO0FBRTlCQyxFQUFBQSxNQUFNLEVBQUUsR0FGc0I7QUFHOUJDLEVBQUFBLE9BQU8sRUFBRSxJQUhxQjtBQUk5QkMsRUFBQUEsU0FBUyxFQUFFLEtBSm1CO0FBSzlCQyxFQUFBQSxRQUFRLEVBQUUsS0FMb0I7QUFNOUJDLEVBQUFBLFVBQVUsRUFBRSxJQU5rQjtBQU85QkMsRUFBQUEsUUFBUSxFQUFFO0FBUG9CLENBQWhDO0FBa0JBLElBQUlDLFVBQVUsR0FBRyxDQUFqQjtBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFDQSxTQUFTQyxlQUFULENBQTRDQyxPQUE1QyxFQUFnRTtBQUM5RCxTQUFPQyxNQUFNLENBQUNDLE9BQVAsQ0FBZUYsT0FBZixFQUNKRyxHQURJLENBQ0E7QUFBQSxRQUFFQyxDQUFGO0FBQUEsUUFBS0MsQ0FBTDtBQUFBLFdBQWVELENBQWYsU0FBb0JDLENBQXBCO0FBQUEsR0FEQSxFQUVKQyxJQUZJLENBRUMsR0FGRCxDQUFQO0FBR0Q7QUFFRDtBQUNBO0FBQ0E7QUFDQTs7O0FBQ0EsU0FBU0MsZ0JBQVQsR0FBb0M7QUFDbENULEVBQUFBLFVBQVUsSUFBSSxDQUFkO0FBQ0Esb0JBQWdCQSxVQUFoQjtBQUNEO0FBRUQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7OztBQUNBLFNBQVNVLHNCQUFULENBQWdDUixPQUFoQyxFQUEyRDtBQUN6RCxNQUFJLENBQUNBLE9BQU8sQ0FBQ1QsS0FBVCxJQUFrQixDQUFDUyxPQUFPLENBQUNSLE1BQS9CLEVBQXVDO0FBQ3JDLFVBQU0sSUFB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O0FBQ0E7O0FBQ0EsT0FBTyxTQUFTMkIsYUFBVCxDQUEwQ2hCLElBQTFDLEVBQTJEO0FBQ2hFLE1BQU1pQixRQUFRLEdBQUdDLElBQUksQ0FBQ0MsU0FBTCxDQUFlbkIsSUFBZixDQUFqQjtBQUVBLGdEQUE0Q2lCLFFBQTVDO0FBQ0QiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIFRTIFJld3JpdGUgb2YgaHR0cHM6Ly9naXRodWIuY29tL2VuaGFuY3YvcG9wdXAtdG9vbHNcbiAqL1xuXG50eXBlIFllc05vID0gXCJ5ZXNcIiB8IFwibm9cIjtcbnR5cGUgT3B0aW9ucyA9IHtcbiAgd2lkdGg/OiBudW1iZXI7XG4gIGhlaWdodD86IG51bWJlcjtcbiAgbWVudWJhcjogWWVzTm87XG4gIHJlc2l6YWJsZTogWWVzTm87XG4gIGxvY2F0aW9uOiBZZXNObztcbiAgc2Nyb2xsYmFyczogWWVzTm87XG4gIGNlbnRlcmVkPzogYm9vbGVhbjtcbiAgbGVmdD86IG51bWJlcjtcbiAgdG9wPzogbnVtYmVyO1xufTtcblxuY29uc3QgZGVmYXVsdE9wdGlvbnM6IE9wdGlvbnMgPSB7XG4gIHdpZHRoOiA3MDAsXG4gIGhlaWdodDogNTIwLFxuICBtZW51YmFyOiBcIm5vXCIsXG4gIHJlc2l6YWJsZTogXCJ5ZXNcIixcbiAgbG9jYXRpb246IFwieWVzXCIsXG4gIHNjcm9sbGJhcnM6IFwibm9cIixcbiAgY2VudGVyZWQ6IHRydWVcbn07XG5cbnR5cGUgQ2FsbGJhY2sgPSAoZXJyPzogRXJyb3IsIGRhdGE/OiB1bmtub3duKSA9PiB2b2lkO1xuXG50eXBlIFdpbmRvd09wZW4gPSAoXG4gIHBvcHVwVXJsOiBzdHJpbmcsXG4gIHBvcHVwTmFtZTogc3RyaW5nLFxuICBvcHRpb25zU3RyaW5nOiBzdHJpbmdcbikgPT4gV2luZG93IHwgbnVsbDtcblxubGV0IHBvcHVwQ291bnQgPSAxO1xuXG4vKipcbiAqIFJldHVybiBvcHRpb25zIGNvbnZlcnRlZCB0byBhIHN0cmluZ1xuICpcbiAqIEBwYXJhbSAge09iamVjdH0gb3B0aW9uc1xuICogQHJldHVybiB7U3RyaW5nfVxuICovXG5mdW5jdGlvbiBvcHRpb25zVG9TdHJpbmc8VCBleHRlbmRzIE9wdGlvbnM+KG9wdGlvbnM6IFQpOiBzdHJpbmcge1xuICByZXR1cm4gT2JqZWN0LmVudHJpZXMob3B0aW9ucylcbiAgICAubWFwKChbaywgdl0pID0+IGAke2t9PSR7dn1gKVxuICAgIC5qb2luKFwiLFwiKTtcbn1cblxuLyoqXG4gKiBHZXQgYSB1bmlxdWUgbmFtZSBvbiBlYWNoIGNhbGxcbiAqIEByZXR1cm4ge1N0cmluZ31cbiAqL1xuZnVuY3Rpb24gZGVmYXVsdFBvcHVwTmFtZSgpOiBzdHJpbmcge1xuICBwb3B1cENvdW50ICs9IDE7XG4gIHJldHVybiBgUG9wdXAgJHtwb3B1cENvdW50fWA7XG59XG5cbi8qKlxuICogQ29udmVydCBcImNlbnRlcmVkOiB0cnVlXCIga2V5IGludG8gY29uY3JldGUgbGVmdCBhbmQgdG9wIGFyZ3VtZW50c1xuICogQm90aCBjYW4gYmUgb3ZlcndyaXR0ZW5cbiAqXG4gKiBAcGFyYW0gIHtPYmplY3R9IG9wdGlvbnNcbiAqIEByZXR1cm4ge09iamVjdH1cbiAqL1xuZnVuY3Rpb24gb3B0aW9uc1Jlc29sdmVDZW50ZXJlZChvcHRpb25zOiBPcHRpb25zKTogT3B0aW9ucyB7XG4gIGlmICghb3B0aW9ucy53aWR0aCB8fCAhb3B0aW9ucy5oZWlnaHQpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoXCJTaG91bGQgaGF2ZSB3aWR0aCBhbmQgaGVpZ2h0XCIpO1xuICB9XG4gIGNvbnN0IHJlc3VsdCA9IHsgLi4ub3B0aW9ucyB9O1xuICBjb25zdCB3aWR0aCA9IHdpbmRvdy5vdXRlcldpZHRoIC0gb3B0aW9ucy53aWR0aDtcbiAgY29uc3QgaGVpZ2h0ID0gd2luZG93Lm91dGVySGVpZ2h0IC0gb3B0aW9ucy5oZWlnaHQ7XG5cbiAgaWYgKG9wdGlvbnMuY2VudGVyZWQpIHtcbiAgICByZXN1bHQubGVmdCA9IG9wdGlvbnMubGVmdCB8fCBNYXRoLnJvdW5kKHdpbmRvdy5zY3JlZW5YICsgd2lkdGggLyAyKTtcbiAgICByZXN1bHQudG9wID0gb3B0aW9ucy50b3AgfHwgTWF0aC5yb3VuZCh3aW5kb3cuc2NyZWVuWSArIGhlaWdodCAvIDIuNSk7XG4gICAgZGVsZXRlIHJlc3VsdC5jZW50ZXJlZDtcbiAgfVxuICByZXR1cm4gcmVzdWx0O1xufVxuXG4vKipcbiAqIENyZWF0ZSBhIGZvcm0gZWxlbWVudCwgYWRkIGhpZGRlbiBpbnB1dHMgZm9yIGFsbCB0aGUgcG9zdCBkYXRhXG4gKiBhbmQgcG9zdCBpdCBpbnRvIGEgbmV3bHkgb3BlbmVkIHBvcHVwXG4gKlxuICogQHBhcmFtICB7U3RyaW5nfSB1cmxcbiAqIEBwYXJhbSAge09iamVjdH0gcG9zdERhdGFcbiAqIEBwYXJhbSAge1N0cmluZ30gbmFtZVxuICogQHBhcmFtICB7T2JqZWN0fSBvcHRpb25zXG4gKiBAcmV0dXJuIHtPYmplY3R9XG4gKi9cbmZ1bmN0aW9uIG9wZW5Qb3B1cFdpdGhQb3N0KFxuICB1cmw6IHN0cmluZyxcbiAgcG9zdERhdGE6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4sXG4gIG5hbWU6IHN0cmluZyxcbiAgb3B0aW9uczogc3RyaW5nXG4pOiBXaW5kb3cgfCBudWxsIHtcbiAgY29uc3QgZm9ybSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoXCJmb3JtXCIpO1xuICBsZXQgd2luOiBXaW5kb3cgfCBudWxsID0gbnVsbDtcblxuICBmb3JtLnNldEF0dHJpYnV0ZShcIm1ldGhvZFwiLCBcInBvc3RcIik7XG4gIGZvcm0uc2V0QXR0cmlidXRlKFwiYWN0aW9uXCIsIHVybCk7XG4gIGZvcm0uc2V0QXR0cmlidXRlKFwidGFyZ2V0XCIsIG5hbWUpO1xuXG4gIE9iamVjdC5rZXlzKHBvc3REYXRhKS5mb3JFYWNoKGZ1bmN0aW9uIGFkZEZvcm1JdGVtKGtleSkge1xuICAgIGNvbnN0IGlucHV0ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudChcImlucHV0XCIpO1xuICAgIGlucHV0LnR5cGUgPSBcImhpZGRlblwiO1xuICAgIGlucHV0Lm5hbWUgPSBrZXk7XG4gICAgaW5wdXQudmFsdWUgPSBwb3N0RGF0YVtrZXldO1xuICAgIGZvcm0uYXBwZW5kQ2hpbGQoaW5wdXQpO1xuICB9KTtcblxuICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGZvcm0pO1xuXG4gIHdpbiA9IHdpbmRvdy5vcGVuKFwiL1wiLCBuYW1lLCBvcHRpb25zKTtcbiAgd2luPy5kb2N1bWVudC53cml0ZShcIkxvYWRpbmcuLi5cIik7XG5cbiAgZm9ybS5zdWJtaXQoKTtcbiAgZG9jdW1lbnQuYm9keS5yZW1vdmVDaGlsZChmb3JtKTtcblxuICByZXR1cm4gd2luO1xufVxuXG4vKipcbiAqIE9wZW4gYSBwb3B1cCB1c2luZyB0aGUgZmlyc3QgYXJndW1lbnQuIFdhaXQgZm9yIGl0IHRvIGNsb3NlLlxuICogUmV0dXJucyB0aGUgd2luZG93IG9iamVjdFxuICpcbiAqIEBwYXJhbSAge0Z1bmN0aW9ufVxuICogQHBhcmFtICB7U3RyaW5nfVxuICogQHBhcmFtICB7U3RyaW5nfVxuICogQHBhcmFtICB7T2JqZWN0fVxuICogQHBhcmFtICB7RnVuY3Rpb259XG4gKiBAcmV0dXJuIHtPYmplY3R9XG4gKi9cbmZ1bmN0aW9uIHBvcHVwRXhlY3V0ZShcbiAgZXhlY3V0ZTogV2luZG93T3BlbixcbiAgdXJsOiBzdHJpbmcsXG4gIG5hbWU6IHN0cmluZyxcbiAgb3B0aW9uczogUGFydGlhbDxPcHRpb25zPixcbiAgY2FsbGJhY2s6IENhbGxiYWNrXG4pOiBXaW5kb3cgfCBudWxsIHtcbiAgY29uc3QgcG9wdXBOYW1lID0gbmFtZSB8fCBkZWZhdWx0UG9wdXBOYW1lKCk7XG4gIGNvbnN0IHBvcHVwT3B0aW9ucyA9IG9wdGlvbnNSZXNvbHZlQ2VudGVyZWQoXG4gICAgT2JqZWN0LmFzc2lnbih7fSwgZGVmYXVsdE9wdGlvbnMsIG9wdGlvbnMpXG4gICk7XG4gIGNvbnN0IHBvcHVwQ2FsbGJhY2sgPVxuICAgIGNhbGxiYWNrIHx8XG4gICAgZnVuY3Rpb24gbm9vcCgpOiB2b2lkIHtcbiAgICAgIC8vXG4gICAgfTtcbiAgY29uc3Qgb3B0aW9uc1N0cmluZyA9IG9wdGlvbnNUb1N0cmluZyhwb3B1cE9wdGlvbnMpO1xuICBjb25zdCB3aW4gPSBleGVjdXRlKHVybCwgcG9wdXBOYW1lLCBvcHRpb25zU3RyaW5nKTtcbiAgbGV0IGlzTWVzc2FnZVNlbnQgPSBmYWxzZTtcbiAgbGV0IGludGVydmFsOiBudW1iZXI7XG5cbiAgZnVuY3Rpb24gcG9wdXBDYWxsYmFja09uY2UoZXJyPzogRXJyb3IsIGRhdGE/OiB1bmtub3duKTogdm9pZCB7XG4gICAgaWYgKCFpc01lc3NhZ2VTZW50KSB7XG4gICAgICBpc01lc3NhZ2VTZW50ID0gdHJ1ZTtcbiAgICAgIHBvcHVwQ2FsbGJhY2soZXJyLCBkYXRhKTtcbiAgICB9XG4gIH1cblxuICBmdW5jdGlvbiBvbk1lc3NhZ2UobWVzc2FnZT86IE1lc3NhZ2VFdmVudCk6IHZvaWQge1xuICAgIGNvbnN0IGRhdGEgPSBtZXNzYWdlID8gbWVzc2FnZS5kYXRhIDogdW5kZWZpbmVkO1xuXG4gICAgaWYgKGRhdGEpIHtcbiAgICAgIHBvcHVwQ2FsbGJhY2tPbmNlKHVuZGVmaW5lZCwgZGF0YSk7XG4gICAgICB3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcihcIm1lc3NhZ2VcIiwgb25NZXNzYWdlKTtcbiAgICB9XG4gIH1cblxuICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcihcIm1lc3NhZ2VcIiwgb25NZXNzYWdlLCBmYWxzZSk7XG5cbiAgaWYgKHdpbikge1xuICAgIGludGVydmFsID0gd2luZG93LnNldEludGVydmFsKGZ1bmN0aW9uIGNsb3NlUG9wdXBDYWxsYmFjaygpIHtcbiAgICAgIGlmICh3aW4gPT09IG51bGwgfHwgd2luLmNsb3NlZCkge1xuICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uIGRlbGF5V2luZG93Q2xvc2luZygpIHtcbiAgICAgICAgICBjbGVhckludGVydmFsKGludGVydmFsKTtcbiAgICAgICAgICBwb3B1cENhbGxiYWNrT25jZShuZXcgRXJyb3IoXCJQb3B1cCBjbG9zZWRcIikpO1xuICAgICAgICB9LCA1MDApO1xuICAgICAgfVxuICAgIH0sIDEwMCk7XG4gIH0gZWxzZSB7XG4gICAgcG9wdXBDYWxsYmFja09uY2UobmV3IEVycm9yKFwiUG9wdXAgYmxvY2tlZFwiKSk7XG4gIH1cblxuICByZXR1cm4gd2luO1xufVxuXG4vKipcbiAqIE9wZW4gYSBwb3B1cCB1c2luZyB0aGUgZmlyc3QgYXJndW1lbnQuXG4gKiBXYWl0IGZvciBpdCB0byBjbG9zZSBhbmQgY2FsbCB0aGUgY2FsbGJhY2suXG4gKiBTZXQgdGhlIG9wdGlvbnMgc3RyaW5nIHVzaW5nIHRoZSBvcHRpb25zIG9iamVjdFxuICogUmV0dXJucyB0aGUgd2luZG93IG9iamVjdFxuICpcbiAqIEBwYXJhbSAge1N0cmluZ30gdXJsXG4gKiBAcGFyYW0gIHtTdHJpbmd9IG5hbWVcbiAqIEBwYXJhbSAge09iamVjdH0gb3B0aW9uc1xuICogQHBhcmFtICB7RnVuY3Rpb259IGNhbGxiYWNrXG4gKiBAcmV0dXJuIHtPYmplY3R9XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBwb3B1cChcbiAgdXJsOiBzdHJpbmcsXG4gIG5hbWU6IHN0cmluZyxcbiAgb3B0aW9uczogUGFydGlhbDxPcHRpb25zPixcbiAgY2FsbGJhY2s6IENhbGxiYWNrXG4pOiBXaW5kb3cgfCBudWxsIHtcbiAgcmV0dXJuIHBvcHVwRXhlY3V0ZSh3aW5kb3cub3BlbiwgdXJsLCBuYW1lLCBvcHRpb25zLCBjYWxsYmFjayk7XG59XG5cbi8qKlxuICogT3BlbiBhIHBvcHVwIHVzaW5nIHRoZSBmaXJzdCBhcmd1bWVudC5cbiAqIFBvc3QgdGhlIGRhdGEgaW50byB0aGUgb3BlbiBwb3B1cC5cbiAqIFdhaXQgZm9yIGl0IHRvIGNsb3NlIGFuZCBjYWxsIHRoZSBjYWxsYmFjay5cbiAqIFNldCB0aGUgb3B0aW9ucyBzdHJpbmcgdXNpbmcgdGhlIG9wdGlvbnMgb2JqZWN0XG4gKiBSZXR1cm5zIHRoZSB3aW5kb3cgb2JqZWN0XG4gKlxuICogQHBhcmFtICB7U3RyaW5nfSB1cmxcbiAqIEBwYXJhbSAge09iamVjdH0gcG9zdERhdGFcbiAqIEBwYXJhbSAge1N0cmluZ30gbmFtZVxuICogQHBhcmFtICB7T2JqZWN0fSBvcHRpb25zXG4gKiBAcGFyYW0gIHtGdW5jdGlvbn0gY2FsbGJhY2tcbiAqIEByZXR1cm4ge09iamVjdH1cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHBvcHVwV2l0aFBvc3QoXG4gIHVybDogc3RyaW5nLFxuICBwb3N0RGF0YTogUmVjb3JkPHN0cmluZywgc3RyaW5nPixcbiAgbmFtZTogc3RyaW5nLFxuICBvcHRpb25zOiBQYXJ0aWFsPE9wdGlvbnM+LFxuICBjYWxsYmFjazogQ2FsbGJhY2tcbik6IFdpbmRvdyB8IG51bGwge1xuICBmdW5jdGlvbiBvcGVuV2l0aFBvc3REYXRhKFxuICAgIHBvcHVwVXJsOiBzdHJpbmcsXG4gICAgcG9wdXBOYW1lOiBzdHJpbmcsXG4gICAgb3B0aW9uc1N0cmluZzogc3RyaW5nXG4gICk6IFdpbmRvdyB8IG51bGwge1xuICAgIHJldHVybiBvcGVuUG9wdXBXaXRoUG9zdChwb3B1cFVybCwgcG9zdERhdGEsIHBvcHVwTmFtZSwgb3B0aW9uc1N0cmluZyk7XG4gIH1cblxuICByZXR1cm4gcG9wdXBFeGVjdXRlKG9wZW5XaXRoUG9zdERhdGEsIHVybCwgbmFtZSwgb3B0aW9ucywgY2FsbGJhY2spO1xufVxuXG4vKipcbiAqIFJldHVybiBodG1sIHRoYXQgd2hlbiBleGVjdXRlZCwgd2lsbCB0cmlnZ2VyIHRoZSBwb3B1cCB0byBjYWxsYmFjayB3aXRoIGEgcmVzcG9uc2VcbiAqXG4gKiBAcGFyYW0gIHtPYmplY3R9XG4gKiBAcmV0dXJuIHtTdHJpbmd9XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBwb3B1cFJlc3BvbnNlPFQgZXh0ZW5kcyB1bmtub3duPihkYXRhOiBUKTogc3RyaW5nIHtcbiAgY29uc3QganNvbkRhdGEgPSBKU09OLnN0cmluZ2lmeShkYXRhKTtcblxuICByZXR1cm4gYDxzY3JpcHQ+d2luZG93Lm9wZW5lci5wb3N0TWVzc2FnZSgke2pzb25EYXRhfSwgXCIqXCIpO3NldFRpbWVvdXQoZnVuY3Rpb24oKSB7IHdpbmRvdy5jbG9zZSgpOyB9LCA1MCk7PC9zY3JpcHQ+YDtcbn1cbiJdfQ==
|
package/lib/ZeusThunder.js
DELETED
|
@@ -1,112 +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 { GraphQLError, Thunder } from "./zeus/index.js";
|
|
10
|
-
|
|
11
|
-
var handleFetchResponse = function handleFetchResponse(response) {
|
|
12
|
-
if (!response.ok) {
|
|
13
|
-
return new Promise(function (_, reject) {
|
|
14
|
-
response.text().then(function (text) {
|
|
15
|
-
try {
|
|
16
|
-
reject(JSON.parse(text));
|
|
17
|
-
} catch (err) {
|
|
18
|
-
reject(text);
|
|
19
|
-
}
|
|
20
|
-
}).catch(reject);
|
|
21
|
-
});
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
return response.json();
|
|
25
|
-
};
|
|
26
|
-
|
|
27
|
-
var apiFetch = function apiFetch(options, session) {
|
|
28
|
-
return /*#__PURE__*/function () {
|
|
29
|
-
var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(query, variables) {
|
|
30
|
-
var fetchFunction, queryString, fetchOptions, headers, controller, id, res;
|
|
31
|
-
return _regeneratorRuntime.wrap(function _callee$(_context) {
|
|
32
|
-
while (1) {
|
|
33
|
-
switch (_context.prev = _context.next) {
|
|
34
|
-
case 0:
|
|
35
|
-
if (variables === void 0) {
|
|
36
|
-
variables = {};
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
fetchFunction = fetch;
|
|
40
|
-
queryString = query;
|
|
41
|
-
fetchOptions = options[1] || {};
|
|
42
|
-
|
|
43
|
-
if (!(fetchOptions.method && fetchOptions.method === "GET")) {
|
|
44
|
-
_context.next = 7;
|
|
45
|
-
break;
|
|
46
|
-
}
|
|
47
|
-
|
|
48
|
-
queryString = encodeURIComponent(query);
|
|
49
|
-
return _context.abrupt("return", fetchFunction(options[0] + "?query=" + queryString, fetchOptions).then(handleFetchResponse).then(function (response) {
|
|
50
|
-
if (response.errors) {
|
|
51
|
-
throw new GraphQLError(response);
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
return response.data;
|
|
55
|
-
}));
|
|
56
|
-
|
|
57
|
-
case 7:
|
|
58
|
-
headers = {
|
|
59
|
-
"content-type": "application/json"
|
|
60
|
-
};
|
|
61
|
-
|
|
62
|
-
if (session) {
|
|
63
|
-
headers["secrecy-session"] = session;
|
|
64
|
-
}
|
|
65
|
-
|
|
66
|
-
controller = new AbortController();
|
|
67
|
-
id = setTimeout(function () {
|
|
68
|
-
return controller.abort();
|
|
69
|
-
}, 20000);
|
|
70
|
-
_context.next = 13;
|
|
71
|
-
return fetchFunction("" + options[0], _objectSpread({
|
|
72
|
-
body: JSON.stringify({
|
|
73
|
-
query: queryString,
|
|
74
|
-
variables: variables
|
|
75
|
-
}),
|
|
76
|
-
method: "POST",
|
|
77
|
-
headers: headers,
|
|
78
|
-
signal: controller.signal
|
|
79
|
-
}, fetchOptions)).then(handleFetchResponse).then(function (response) {
|
|
80
|
-
if (response.errors) {
|
|
81
|
-
throw new GraphQLError(response);
|
|
82
|
-
}
|
|
83
|
-
|
|
84
|
-
return response.data;
|
|
85
|
-
});
|
|
86
|
-
|
|
87
|
-
case 13:
|
|
88
|
-
res = _context.sent;
|
|
89
|
-
clearTimeout(id);
|
|
90
|
-
return _context.abrupt("return", res);
|
|
91
|
-
|
|
92
|
-
case 16:
|
|
93
|
-
case "end":
|
|
94
|
-
return _context.stop();
|
|
95
|
-
}
|
|
96
|
-
}
|
|
97
|
-
}, _callee);
|
|
98
|
-
}));
|
|
99
|
-
|
|
100
|
-
return function (_x, _x2) {
|
|
101
|
-
return _ref.apply(this, arguments);
|
|
102
|
-
};
|
|
103
|
-
}();
|
|
104
|
-
};
|
|
105
|
-
|
|
106
|
-
export var createThunder = function createThunder(url, session) {
|
|
107
|
-
return Thunder(apiFetch([url, {
|
|
108
|
-
mode: "cors",
|
|
109
|
-
credentials: "same-origin"
|
|
110
|
-
}], session));
|
|
111
|
-
};
|
|
112
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9aZXVzVGh1bmRlci50cyJdLCJuYW1lcyI6WyJHcmFwaFFMRXJyb3IiLCJUaHVuZGVyIiwiaGFuZGxlRmV0Y2hSZXNwb25zZSIsInJlc3BvbnNlIiwib2siLCJQcm9taXNlIiwiXyIsInJlamVjdCIsInRleHQiLCJ0aGVuIiwiSlNPTiIsInBhcnNlIiwiZXJyIiwiY2F0Y2giLCJqc29uIiwiYXBpRmV0Y2giLCJvcHRpb25zIiwic2Vzc2lvbiIsInF1ZXJ5IiwidmFyaWFibGVzIiwiZmV0Y2hGdW5jdGlvbiIsImZldGNoIiwicXVlcnlTdHJpbmciLCJmZXRjaE9wdGlvbnMiLCJtZXRob2QiLCJlbmNvZGVVUklDb21wb25lbnQiLCJlcnJvcnMiLCJkYXRhIiwiaGVhZGVycyIsImNvbnRyb2xsZXIiLCJBYm9ydENvbnRyb2xsZXIiLCJpZCIsInNldFRpbWVvdXQiLCJhYm9ydCIsImJvZHkiLCJzdHJpbmdpZnkiLCJzaWduYWwiLCJyZXMiLCJjbGVhclRpbWVvdXQiLCJjcmVhdGVUaHVuZGVyIiwidXJsIiwibW9kZSIsImNyZWRlbnRpYWxzIl0sIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUNBLFNBQVNBLFlBQVQsRUFBdUJDLE9BQXZCLFFBQXNDLGlCQUF0Qzs7QUFFQSxJQUFNQyxtQkFBbUIsR0FBRyxTQUF0QkEsbUJBQXNCLENBQzFCQyxRQUQwQixFQUtHO0FBQzdCLE1BQUksQ0FBQ0EsUUFBUSxDQUFDQyxFQUFkLEVBQWtCO0FBQ2hCLFdBQU8sSUFBSUMsT0FBSixDQUFZLFVBQUNDLENBQUQsRUFBSUMsTUFBSixFQUFlO0FBQ2hDSixNQUFBQSxRQUFRLENBQ0xLLElBREgsR0FFR0MsSUFGSCxDQUVRLFVBQUFELElBQUksRUFBSTtBQUNaLFlBQUk7QUFDRkQsVUFBQUEsTUFBTSxDQUFDRyxJQUFJLENBQUNDLEtBQUwsQ0FBV0gsSUFBWCxDQUFELENBQU47QUFDRCxTQUZELENBRUUsT0FBT0ksR0FBUCxFQUFZO0FBQ1pMLFVBQUFBLE1BQU0sQ0FBQ0Ms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eUIsR0FERixFQUVFO0FBQ0VDLElBQUFBLElBQUksRUFBRSxNQURSO0FBRUVDLElBQUFBLFdBQVcsRUFBRTtBQUZmLEdBRkYsQ0FETSxFQVFOekIsT0FSTSxDQURILENBSm9CO0FBQUEsQ0FBdEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IGZldGNoT3B0aW9ucywgR3JhcGhRTFJlc3BvbnNlIH0gZnJvbSBcIi4vemV1cy9pbmRleC5qc1wiO1xuaW1wb3J0IHsgR3JhcGhRTEVycm9yLCBUaHVuZGVyIH0gZnJvbSBcIi4vemV1cy9pbmRleC5qc1wiO1xuXG5jb25zdCBoYW5kbGVGZXRjaFJlc3BvbnNlID0gKFxuICByZXNwb25zZTogUGFyYW1ldGVyczxcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L2Jhbi10eXBlc1xuICAgIEV4dHJhY3Q8UGFyYW1ldGVyczxSZXR1cm5UeXBlPHR5cGVvZiBmZXRjaD5bXCJ0aGVuXCJdPlswXSwgRnVuY3Rpb24+XG4gID5bMF1cbik6IFByb21pc2U8R3JhcGhRTFJlc3BvbnNlPiA9PiB7XG4gIGlmICghcmVzcG9uc2Uub2spIHtcbiAgICByZXR1cm4gbmV3IFByb21pc2UoKF8sIHJlamVjdCkgPT4ge1xuICAgICAgcmVzcG9uc2VcbiAgICAgICAgLnRleHQoKVxuICAgICAgICAudGhlbih0ZXh0ID0+IHtcbiAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgcmVqZWN0KEpTT04ucGFyc2UodGV4dCkpO1xuICAgICAgICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgICAgICAgcmVqZWN0KHRleHQpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSlcbiAgICAgICAgLmNhdGNoKHJlamVjdCk7XG4gICAgfSk7XG4gIH1cbiAgcmV0dXJuIHJlc3BvbnNlLmpzb24oKSBhcyBQcm9taXNlPEdyYXBoUUxSZXNwb25zZT47XG59O1xuXG5jb25zdCBhcGlGZXRjaCA9XG4gIChvcHRpb25zOiBmZXRjaE9wdGlvbnMsIHNlc3Npb24/OiBzdHJpbmcgfCBudWxsIHwgdW5kZWZpbmVkKSA9PlxuICBhc3luYyAoXG4gICAgcXVlcnk6IHN0cmluZyxcbiAgICB2YXJpYWJsZXM6IFJlY29yZDxzdHJpbmcsIGFueT4gPSB7fVxuICApOiBQcm9taXNlPFJlY29yZDxzdHJpbmcsIGFueT4gfCB1bmRlZmluZWQ+ID0+IHtcbiAgICBjb25zdCBmZXRjaEZ1bmN0aW9uID0gZmV0Y2g7XG4gICAgbGV0IHF1ZXJ5U3RyaW5nID0gcXVlcnk7XG4gICAgY29uc3QgZmV0Y2hPcHRpb25zID0gb3B0aW9uc1sxXSB8fCB7fTtcbiAgICBpZiAoZmV0Y2hPcHRpb25zLm1ldGhvZCAmJiBmZXRjaE9wdGlvbnMubWV0aG9kID09PSBcIkdFVFwiKSB7XG4gICAgICBxdWVyeVN0cmluZyA9IGVuY29kZVVSSUNvbXBvbmVudChxdWVyeSk7XG4gICAgICByZXR1cm4gZmV0Y2hGdW5jdGlvbihgJHtvcHRpb25zWzBdfT9xdWVyeT0ke3F1ZXJ5U3RyaW5nfWAsIGZldGNoT3B0aW9ucylcbiAgICAgICAgLnRoZW4oaGFuZGxlRmV0Y2hSZXNwb25zZSlcbiAgICAgICAgLnRoZW4oKHJlc3BvbnNlOiBHcmFwaFFMUmVzcG9uc2UpID0+IHtcbiAgICAgICAgICBpZiAocmVzcG9uc2UuZXJyb3JzKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgR3JhcGhRTEVycm9yKHJlc3BvbnNlKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgcmV0dXJuIHJlc3BvbnNlLmRhdGE7XG4gICAgICAgIH0pO1xuICAgIH1cbiAgICBjb25zdCBoZWFkZXJzOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0ge1xuICAgICAgXCJjb250ZW50LXR5cGVcIjogXCJhcHBsaWNhdGlvbi9qc29uXCJcbiAgICB9O1xuXG4gICAgaWYgKHNlc3Npb24pIHtcbiAgICAgIGhlYWRlcnNbXCJzZWNyZWN5LXNlc3Npb25cIl0gPSBzZXNzaW9uO1xuICAgIH1cbiAgICBjb25zdCBjb250cm9sbGVyID0gbmV3IEFib3J0Q29udHJvbGxlcigpO1xuICAgIGNvbnN0IGlkID0gc2V0VGltZW91dCgoKSA9PiBjb250cm9sbGVyLmFib3J0KCksIDIwMDAwKTtcbiAgICBjb25zdCByZXMgPSBhd2FpdCBmZXRjaEZ1bmN0aW9uKGAke29wdGlvbnNbMF19YCwge1xuICAgICAgYm9keTogSlNPTi5zdHJpbmdpZnkoeyBxdWVyeTogcXVlcnlTdHJpbmcsIHZhcmlhYmxlcyB9KSxcbiAgICAgIG1ldGhvZDogXCJQT1NUXCIsXG4gICAgICBoZWFkZXJzLFxuICAgICAgc2lnbmFsOiBjb250cm9sbGVyLnNpZ25hbCxcbiAgICAgIC4uLmZldGNoT3B0aW9uc1xuICAgIH0pXG4gICAgICAudGhlbihoYW5kbGVGZXRjaFJlc3BvbnNlKVxuICAgICAgLnRoZW4oKHJlc3BvbnNlOiBHcmFwaFFMUmVzcG9uc2UpID0+IHtcbiAgICAgICAgaWYgKHJlc3BvbnNlLmVycm9ycykge1xuICAgICAgICAgIHRocm93IG5ldyBHcmFwaFFMRXJyb3IocmVzcG9uc2UpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiByZXNwb25zZS5kYXRhO1xuICAgICAgfSk7XG4gICAgY2xlYXJUaW1lb3V0KGlkKTtcbiAgICByZXR1cm4gcmVzO1xuICB9O1xuXG5leHBvcnQgY29uc3QgY3JlYXRlVGh1bmRlciA9IChcbiAgdXJsOiBzdHJpbmcsXG4gIHNlc3Npb24/OiBzdHJpbmcgfCBudWxsIHwgdW5kZWZpbmVkXG4pOiBSZXR1cm5UeXBlPHR5cGVvZiBUaHVuZGVyPiA9PlxuICBUaHVuZGVyKFxuICAgIGFwaUZldGNoKFxuICAgICAgW1xuICAgICAgICB1cmwsXG4gICAgICAgIHtcbiAgICAgICAgICBtb2RlOiBcImNvcnNcIixcbiAgICAgICAgICBjcmVkZW50aWFsczogXCJzYW1lLW9yaWdpblwiXG4gICAgICAgIH1cbiAgICAgIF0sXG4gICAgICBzZXNzaW9uXG4gICAgKVxuICApO1xuIl19
|
package/lib/cache.d.ts
DELETED
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import type { InternalVFile, InternalFolder, InternalVFileWithFolder, InternalFile, InternalFolderFull } from "./client/types/index.js";
|
|
2
|
-
export declare const vFilesCache: Map<string, InternalVFile | InternalVFileWithFolder>;
|
|
3
|
-
export declare const filesCache: Map<string, InternalFile>;
|
|
4
|
-
export declare const foldersCache: Map<string, InternalFolder | InternalFolderFull>;
|
|
5
|
-
export declare const usersCache: Map<string, import("./BaseClient.js").UserBase | (import("./BaseClient.js").UserBase & {
|
|
6
|
-
publicKey: string;
|
|
7
|
-
})>;
|
package/lib/cache.js
DELETED
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
export var vFilesCache = new Map();
|
|
2
|
-
export var filesCache = new Map();
|
|
3
|
-
export var foldersCache = new Map();
|
|
4
|
-
export var usersCache = new Map();
|
|
5
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9jYWNoZS50cyJdLCJuYW1lcyI6WyJ2RmlsZXNDYWNoZSIsIk1hcCIsImZpbGVzQ2FjaGUiLCJmb2xkZXJzQ2FjaGUiLCJ1c2Vyc0NhY2hlIl0sIm1hcHBpbmdzIjoiQUFTQSxPQUFPLElBQU1BLFdBQVcsR0FBRyxJQUFJQyxHQUFKLEVBQXBCO0FBS1AsT0FBTyxJQUFNQyxVQUFVLEdBQUcsSUFBSUQsR0FBSixFQUFuQjtBQUVQLE9BQU8sSUFBTUUsWUFBWSxHQUFHLElBQUlGLEdBQUosRUFBckI7QUFLUCxPQUFPLElBQU1HLFVBQVUsR0FBRyxJQUFJSCxHQUFKLEVBQW5CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBVc2VyIH0gZnJvbSBcIi4vaW5kZXguanNcIjtcbmltcG9ydCB0eXBlIHtcbiAgSW50ZXJuYWxWRmlsZSxcbiAgSW50ZXJuYWxGb2xkZXIsXG4gIEludGVybmFsVkZpbGVXaXRoRm9sZGVyLFxuICBJbnRlcm5hbEZpbGUsXG4gIEludGVybmFsRm9sZGVyRnVsbFxufSBmcm9tIFwiLi9jbGllbnQvdHlwZXMvaW5kZXguanNcIjtcblxuZXhwb3J0IGNvbnN0IHZGaWxlc0NhY2hlID0gbmV3IE1hcDxcbiAgc3RyaW5nLFxuICBJbnRlcm5hbFZGaWxlIHwgSW50ZXJuYWxWRmlsZVdpdGhGb2xkZXJcbj4oKTtcblxuZXhwb3J0IGNvbnN0IGZpbGVzQ2FjaGUgPSBuZXcgTWFwPHN0cmluZywgSW50ZXJuYWxGaWxlPigpO1xuXG5leHBvcnQgY29uc3QgZm9sZGVyc0NhY2hlID0gbmV3IE1hcDxcbiAgc3RyaW5nLFxuICBJbnRlcm5hbEZvbGRlciB8IEludGVybmFsRm9sZGVyRnVsbFxuPigpO1xuXG5leHBvcnQgY29uc3QgdXNlcnNDYWNoZSA9IG5ldyBNYXA8XG4gIHN0cmluZyxcbiAgVXNlciB8IFVzZXI8eyB3aXRoUHVibGljS2V5OiB0cnVlIH0+XG4+KCk7XG4iXX0=
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
2
|
-
|
|
3
|
-
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; }
|
|
4
|
-
|
|
5
|
-
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; }
|
|
6
|
-
|
|
7
|
-
import { filesCache } from "../../cache.js";
|
|
8
|
-
import { decryptCryptoBox } from "../../crypto/index.js";
|
|
9
|
-
import { sodium } from "../../sodium.js";
|
|
10
|
-
export function gqlFileToInternal(gql, keyPair) {
|
|
11
|
-
var _gql$user;
|
|
12
|
-
|
|
13
|
-
var file = _objectSpread(_objectSpread({}, gql), {}, {
|
|
14
|
-
createdAt: new Date(gql.createdAt),
|
|
15
|
-
size: BigInt(gql.size),
|
|
16
|
-
sizeBefore: BigInt(gql.sizeBefore),
|
|
17
|
-
user: null
|
|
18
|
-
});
|
|
19
|
-
|
|
20
|
-
if ((_gql$user = gql.user) != null && _gql$user.userApp.keyPair) {
|
|
21
|
-
file.user = _objectSpread(_objectSpread({}, gql.user), {}, {
|
|
22
|
-
key: sodium.to_hex(decryptCryptoBox(sodium.from_hex(gql.user.key), gql.user.userApp.keyPair.pub, keyPair.privateKey))
|
|
23
|
-
});
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
filesCache.set(file.id, file);
|
|
27
|
-
return file;
|
|
28
|
-
}
|
|
29
|
-
export function internalFileToFile(internal) {
|
|
30
|
-
var file = _objectSpread({}, internal); // @ts-ignore
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
delete file.user;
|
|
34
|
-
return file;
|
|
35
|
-
}
|
|
36
|
-
export function gqlFileToExternal(gql, keyPair) {
|
|
37
|
-
return internalFileToFile(gqlFileToInternal(gql, keyPair));
|
|
38
|
-
}
|
|
39
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jbGllbnQvY29udmVydC9maWxlLnRzIl0sIm5hbWVzIjpbImZpbGVzQ2FjaGUiLCJkZWNyeXB0Q3J5cHRvQm94Iiwic29kaXVtIiwiZ3FsRmlsZVRvSW50ZXJuYWwiLCJncWwiLCJrZXlQYWlyIiwiZmlsZSIsImNyZWF0ZWRBdCIsIkRhdGUiLCJzaXplIiwiQmlnSW50Iiwic2l6ZUJlZm9yZSIsInVzZXIiLCJ1c2VyQXBwIiwia2V5IiwidG9faGV4IiwiZnJvbV9oZXgiLCJwdWIiLCJwcml2YXRlS2V5Iiwic2V0IiwiaWQiLCJpbnRlcm5hbEZpbGVUb0ZpbGUiLCJpbnRlcm5hbCIsImdxbEZpbGVUb0V4dGVybmFsIl0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxTQUFTQSxVQUFULFFBQTJCLGdCQUEzQjtBQUVBLFNBQVNDLGdCQUFULFFBQWlDLHVCQUFqQztBQUNBLFNBQVNDLE1BQVQsUUFBdUIsaUJBQXZCO0FBR0EsT0FBTyxTQUFTQyxpQkFBVCxDQUNMQyxHQURLLEVBRUxDLE9BRkssRUFHUztBQUFBOztBQUNkLE1BQU1DLElBQWtCLG1DQUNuQkYsR0FEbUI7QUFFdEJHLElBQUFBLFNBQVMsRUFBRSxJQUFJQyxJQUFKLENBQVNKLEdBQUcsQ0FBQ0csU0FBYixDQUZXO0FBR3RCRSxJQUFBQSxJQUFJLEVBQUVDLE1BQU0sQ0FBQ04sR0FBRyxDQUFDSyxJQUFMLENBSFU7QUFJdEJFLElBQUFBLFVBQVUsRUFBRUQsTUFBTSxDQUFDTixHQUFHLENBQUNPLFVBQUwsQ0FKSTtBQUt0QkMsSUFBQUEsSUFBSSxFQUFFO0FBTGdCLElBQXhCOztBQVFBLG1CQUFJUixHQUFHLENBQUNRLElBQVIsYUFBSSxVQUFVQyxPQUFWLENBQWtCUixPQUF0QixFQUErQjtBQUM3QkMsSUFBQUEsSUFBSSxDQUFDTSxJQUFMLG1DQUNLUixHQUFHLENBQUNRLElBRFQ7QUFFRUUsTUFBQUEsR0FBRyxFQUFFWixNQUFNLENBQUNhLE1BQVAsQ0FDSGQsZ0JBQWdCLENBQ2RDLE1BQU0sQ0FBQ2MsUUFBUCxDQUFnQlosR0FBRyxDQUFDUSxJQUFKLENBQVNFLEdBQXpCLENBRGMsRUFFZFYsR0FBRyxDQUFDUSxJQUFKLENBQVNDLE9BQVQsQ0FBaUJSLE9BQWpCLENBQXlCWSxHQUZYLEVBR2RaLE9BQU8sQ0FBQ2EsVUFITSxDQURiO0FBRlA7QUFVRDs7QUFDRGxCLEVBQUFBLFVBQVUsQ0FBQ21CLEdBQVgsQ0FBZWIsSUFBSSxDQUFDYyxFQUFwQixFQUF3QmQsSUFBeEI7QUFDQSxTQUFPQSxJQUFQO0FBQ0Q7QUFFRCxPQUFPLFNBQVNlLGtCQUFULENBQTRCQyxRQUE1QixFQUEwRDtBQUMvRCxNQUFNaEIsSUFBVSxxQkFBUWdCLFFBQVIsQ0FBaEIsQ0FEK0QsQ0FFL0Q7OztBQUNBLFNBQU9oQixJQUFJLENBQUNNLElBQVo7QUFDQSxTQUFPTixJQUFQO0FBQ0Q7QUFFRCxPQUFPLFNBQVNpQixpQkFBVCxDQUEyQm5CLEdBQTNCLEVBQXlDQyxPQUF6QyxFQUFpRTtBQUN0RSxTQUFPZ0Isa0JBQWtCLENBQUNsQixpQkFBaUIsQ0FBQ0MsR0FBRCxFQUFNQyxPQUFOLENBQWxCLENBQXpCO0FBQ0QiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBmaWxlc0NhY2hlIH0gZnJvbSBcIi4uLy4uL2NhY2hlLmpzXCI7XG5pbXBvcnQgdHlwZSB7IEtleVBhaXIgfSBmcm9tIFwiLi4vLi4vY3J5cHRvL2luZGV4LmpzXCI7XG5pbXBvcnQgeyBkZWNyeXB0Q3J5cHRvQm94IH0gZnJvbSBcIi4uLy4uL2NyeXB0by9pbmRleC5qc1wiO1xuaW1wb3J0IHsgc29kaXVtIH0gZnJvbSBcIi4uLy4uL3NvZGl1bS5qc1wiO1xuaW1wb3J0IHR5cGUgeyBHUUxGaWxlLCBJbnRlcm5hbEZpbGUsIEZpbGUgfSBmcm9tIFwiLi4vdHlwZXMvaW5kZXguanNcIjtcblxuZXhwb3J0IGZ1bmN0aW9uIGdxbEZpbGVUb0ludGVybmFsKFxuICBncWw6IEdRTEZpbGUsXG4gIGtleVBhaXI6IEtleVBhaXJcbik6IEludGVybmFsRmlsZSB7XG4gIGNvbnN0IGZpbGU6IEludGVybmFsRmlsZSA9IHtcbiAgICAuLi5ncWwsXG4gICAgY3JlYXRlZEF0OiBuZXcgRGF0ZShncWwuY3JlYXRlZEF0KSxcbiAgICBzaXplOiBCaWdJbnQoZ3FsLnNpemUpLFxuICAgIHNpemVCZWZvcmU6IEJpZ0ludChncWwuc2l6ZUJlZm9yZSksXG4gICAgdXNlcjogbnVsbFxuICB9O1xuXG4gIGlmIChncWwudXNlcj8udXNlckFwcC5rZXlQYWlyKSB7XG4gICAgZmlsZS51c2VyID0ge1xuICAgICAgLi4uZ3FsLnVzZXIsXG4gICAgICBrZXk6IHNvZGl1bS50b19oZXgoXG4gICAgICAgIGRlY3J5cHRDcnlwdG9Cb3goXG4gICAgICAgICAgc29kaXVtLmZyb21faGV4KGdxbC51c2VyLmtleSksXG4gICAgICAgICAgZ3FsLnVzZXIudXNlckFwcC5rZXlQYWlyLnB1YixcbiAgICAgICAgICBrZXlQYWlyLnByaXZhdGVLZXlcbiAgICAgICAgKVxuICAgICAgKVxuICAgIH07XG4gIH1cbiAgZmlsZXNDYWNoZS5zZXQoZmlsZS5pZCwgZmlsZSk7XG4gIHJldHVybiBmaWxlO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaW50ZXJuYWxGaWxlVG9GaWxlKGludGVybmFsOiBJbnRlcm5hbEZpbGUpOiBGaWxlIHtcbiAgY29uc3QgZmlsZTogRmlsZSA9IHsgLi4uaW50ZXJuYWwgfTtcbiAgLy8gQHRzLWlnbm9yZVxuICBkZWxldGUgZmlsZS51c2VyO1xuICByZXR1cm4gZmlsZTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdxbEZpbGVUb0V4dGVybmFsKGdxbDogR1FMRmlsZSwga2V5UGFpcjogS2V5UGFpcik6IEZpbGUge1xuICByZXR1cm4gaW50ZXJuYWxGaWxlVG9GaWxlKGdxbEZpbGVUb0ludGVybmFsKGdxbCwga2V5UGFpcikpO1xufVxuIl19
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import type { KeyPair } from "../../crypto/index.js";
|
|
2
|
-
import type { GQLFolder, InternalFolder, Folder, GQLFolderFull, InternalFolderFull, FolderFull } from "../types/index.js";
|
|
3
|
-
export declare function gqlFolderToInternal(gql: GQLFolder, keyPair: KeyPair): Promise<InternalFolder>;
|
|
4
|
-
export declare function gqlFolderFullToInternalFull(gql: GQLFolderFull, keyPair: KeyPair): Promise<InternalFolderFull>;
|
|
5
|
-
export declare function internalFolderToFolder(internal: InternalFolder): Folder;
|
|
6
|
-
export declare function internalFolderFullToFolderFull(internal: InternalFolderFull): FolderFull;
|
|
7
|
-
export declare function gqlFolderToExternalFolderFull(gql: GQLFolderFull, keyPair: KeyPair): Promise<FolderFull>;
|
|
8
|
-
export declare function gqlFolderToExternal(gql: GQLFolder, keyPair: KeyPair): Promise<Folder>;
|