@secrecy/lib 1.0.0-dev.39 → 1.0.0-dev.42

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.
Files changed (63) hide show
  1. package/dist/BaseClient.d.ts +33 -53
  2. package/dist/BaseClient.js +886 -2093
  3. package/dist/PopupTools.js +20 -21
  4. package/dist/ZeusThunder.js +50 -84
  5. package/dist/cache.d.ts +2 -3
  6. package/dist/cache.js +4 -5
  7. package/dist/client/admin/index.js +77 -165
  8. package/dist/client/convert/file.d.ts +3 -3
  9. package/dist/client/convert/file.js +18 -23
  10. package/dist/client/convert/mail.js +13 -13
  11. package/dist/client/convert/node.d.ts +9 -0
  12. package/dist/client/convert/node.js +101 -0
  13. package/dist/client/helpers.js +41 -41
  14. package/dist/client/index.d.ts +63 -74
  15. package/dist/client/index.js +2727 -5759
  16. package/dist/client/storage.js +7 -7
  17. package/dist/client/types/File.d.ts +6 -13
  18. package/dist/client/types/File.js +1 -1
  19. package/dist/client/types/Inputs.d.ts +2 -7
  20. package/dist/client/types/Inputs.js +1 -1
  21. package/dist/client/types/Node.d.ts +49 -0
  22. package/dist/client/types/Node.js +3 -0
  23. package/dist/client/types/UserAppNotifications.d.ts +1 -1
  24. package/dist/client/types/UserAppNotifications.js +1 -1
  25. package/dist/client/types/UserAppSettings.js +1 -1
  26. package/dist/client/types/index.d.ts +7 -13
  27. package/dist/client/types/index.js +2 -4
  28. package/dist/client/types/selectors.d.ts +476 -0
  29. package/dist/client/types/selectors.js +125 -0
  30. package/dist/crypto/file.js +122 -203
  31. package/dist/crypto/index.js +14 -12
  32. package/dist/error.js +1 -1
  33. package/dist/index.d.ts +1 -2
  34. package/dist/index.js +2 -34
  35. package/dist/minify/index.js +7 -7
  36. package/dist/minify/lz4.js +87 -93
  37. package/dist/sodium.js +3 -25
  38. package/dist/utils/store-buddy.js +11 -15
  39. package/dist/utils/time.js +4 -12
  40. package/dist/{utils.d.ts → utils/utils.d.ts} +0 -0
  41. package/dist/utils/utils.js +57 -0
  42. package/dist/worker/__mock__/sodium.worker.js +35 -32
  43. package/dist/worker/md5.js +21 -39
  44. package/dist/worker/sodium.js +95 -130
  45. package/dist/worker/workerCodes.js +3 -3
  46. package/dist/zeus/const.d.ts +5 -0
  47. package/dist/zeus/const.js +303 -1360
  48. package/dist/zeus/index.d.ts +1805 -1817
  49. package/dist/zeus/index.js +542 -434
  50. package/package.json +40 -39
  51. package/dist/client/convert/folder.d.ts +0 -8
  52. package/dist/client/convert/folder.js +0 -264
  53. package/dist/client/convert/vFile.d.ts +0 -5
  54. package/dist/client/convert/vFile.js +0 -164
  55. package/dist/client/types/FilesOnUsersOnApplications.d.ts +0 -9
  56. package/dist/client/types/FilesOnUsersOnApplications.js +0 -3
  57. package/dist/client/types/Folder.d.ts +0 -68
  58. package/dist/client/types/Folder.js +0 -7
  59. package/dist/client/types/VFile.d.ts +0 -62
  60. package/dist/client/types/VFile.js +0 -4
  61. package/dist/client/types/queries.d.ts +0 -535
  62. package/dist/client/types/queries.js +0 -192
  63. package/dist/utils.js +0 -188
@@ -1,192 +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); 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 = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
6
-
7
- export var gqlFileQuery = {
8
- id: true,
9
- size: true,
10
- sizeBefore: true,
11
- createdAt: true,
12
- md5: true,
13
- md5Encrypted: true,
14
- user: {
15
- key: true,
16
- userApp: {
17
- keyPair: {
18
- pub: true
19
- }
20
- }
21
- }
22
- };
23
- export var gqlVFileQuery = {
24
- id: true,
25
- filename: true,
26
- createdBy: {
27
- user: {
28
- id: true,
29
- firstname: true,
30
- lastname: true,
31
- email: true,
32
- publicKey: true
33
- }
34
- },
35
- userApps: {
36
- rights: true,
37
- isRoot: true,
38
- userApp: {
39
- user: {
40
- id: true,
41
- firstname: true,
42
- lastname: true,
43
- email: true,
44
- publicKey: true
45
- }
46
- }
47
- },
48
- userApp: {
49
- userApp: {
50
- user: {
51
- id: true
52
- }
53
- },
54
- nameKey: true,
55
- rights: true,
56
- isRoot: true
57
- },
58
- isFavorite: true,
59
- createdAt: true,
60
- deletedAt: true,
61
- updatedAt: true,
62
- current: _objectSpread({}, gqlFileQuery),
63
- history: _objectSpread({}, gqlFileQuery)
64
- };
65
- export var gqlFolderQuery = {
66
- id: true,
67
- isFavorite: true,
68
- createdAt: true,
69
- deletedAt: true,
70
- updatedAt: true,
71
- name: true,
72
- createdBy: {
73
- user: {
74
- id: true,
75
- firstname: true,
76
- lastname: true,
77
- email: true,
78
- publicKey: true
79
- }
80
- },
81
- userApps: {
82
- rights: true,
83
- isRoot: true,
84
- userApp: {
85
- user: {
86
- id: true,
87
- firstname: true,
88
- lastname: true,
89
- email: true,
90
- publicKey: true
91
- }
92
- }
93
- },
94
- userApp: {
95
- userApp: {
96
- user: {
97
- id: true
98
- }
99
- },
100
- nameKey: true,
101
- rights: true,
102
- isRoot: true
103
- },
104
- breadcrumb: {
105
- id: true,
106
- name: true,
107
- nameKey: true,
108
- pubKey: true
109
- }
110
- };
111
- export var gqlFolderFullQuery = _objectSpread(_objectSpread({}, gqlFolderQuery), {}, {
112
- vFiles: _objectSpread({}, gqlVFileQuery),
113
- parentFolder: gqlFolderQuery,
114
- subfolders: gqlFolderQuery
115
- });
116
- export var gqlVFileWithFolderQuery = _objectSpread(_objectSpread({}, gqlVFileQuery), {}, {
117
- folder: _objectSpread({}, gqlFolderQuery)
118
- });
119
- export var gqlMailQuery = {
120
- id: true,
121
- type: true,
122
- body: true,
123
- subject: true,
124
- openedAt: true,
125
- createdAt: true,
126
- deletedAt: true,
127
- recipients: {
128
- id: true,
129
- firstname: true,
130
- lastname: true,
131
- email: true,
132
- publicKey: true
133
- },
134
- recipient: {
135
- id: true,
136
- firstname: true,
137
- lastname: true,
138
- email: true,
139
- publicKey: true
140
- },
141
- sender: {
142
- id: true,
143
- firstname: true,
144
- lastname: true,
145
- email: true,
146
- publicKey: true
147
- },
148
- mailIntegrity: {
149
- temporaryRecipients: {
150
- email: true
151
- },
152
- recipients: {
153
- id: true,
154
- firstname: true,
155
- lastname: true,
156
- email: true,
157
- publicKey: true
158
- },
159
- id: true,
160
- hash: true,
161
- hashKey: true,
162
- replyTo: {
163
- id: true
164
- }
165
- },
166
- mailIntegrityDraft: {
167
- temporaryRecipients: {
168
- email: true
169
- },
170
- recipients: {
171
- id: true,
172
- firstname: true,
173
- lastname: true,
174
- email: true,
175
- publicKey: true
176
- },
177
- id: true,
178
- hash: true,
179
- hashKey: true,
180
- replyTo: {
181
- id: true
182
- }
183
- },
184
- files: {
185
- fileKey: true,
186
- filename: true,
187
- file: {
188
- id: true
189
- }
190
- }
191
- };
192
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jbGllbnQvdHlwZXMvcXVlcmllcy50cyJdLCJuYW1lcyI6WyJncWxGaWxlUXVlcnkiLCJpZCIsInNpemUiLCJzaXplQmVmb3JlIiwiY3JlYXRlZEF0IiwibWQ1IiwibWQ1RW5jcnlwdGVkIiwidXNlciIsImtleSIsInVzZXJBcHAiLCJrZXlQYWlyIiwicHViIiwiZ3FsVkZpbGVRdWVyeSIsImZpbGVuYW1lIiwiY3JlYXRlZEJ5IiwiZmlyc3RuYW1lIiwibGFzdG5hbWUiLCJlbWFpbCIsInB1YmxpY0tleSIsInVzZXJBcHBzIiwicmlnaHRzIiwiaXNSb290IiwibmFtZUtleSIsImlzRmF2b3JpdGUiLCJkZWxldGVkQXQiLCJ1cGRhdGVkQXQiLCJjdXJyZW50IiwiaGlzdG9yeSIsImdxbEZvbGRlclF1ZXJ5IiwibmFtZSIsImJyZWFkY3J1bWIiLCJwdWJLZXkiLCJncWxGb2xkZXJGdWxsUXVlcnkiLCJ2RmlsZXMiLCJwYXJlbnRGb2xkZXIiLCJzdWJmb2xkZXJzIiwiZ3FsVkZpbGVXaXRoRm9sZGVyUXVlcnkiLCJmb2xkZXIiLCJncWxNYWlsUXVlcnkiLCJ0eXBlIiwiYm9keSIsInN1YmplY3QiLCJvcGVuZWRBdCIsInJlY2lwaWVudHMiLCJyZWNpcGllbnQiLCJzZW5kZXIiLCJtYWlsSW50ZWdyaXR5IiwidGVtcG9yYXJ5UmVjaXBpZW50cyIsImhhc2giLCJoYXNoS2V5IiwicmVwbHlUbyIsIm1haWxJbnRlZ3JpdHlEcmFmdCIsImZpbGVzIiwiZmlsZUtleSIsImZpbGUiXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLE9BQU8sSUFBTUEsWUFBWSxHQUFHO0FBQzFCQyxFQUFBQSxFQUFFLEVBQUUsSUFEc0I7QUFFMUJDLEVBQUFBLElBQUksRUFBRSxJQUZvQjtBQUcxQkMsRUFBQUEsVUFBVSxFQUFFLElBSGM7QUFJMUJDLEVBQUFBLFNBQVMsRUFBRSxJQUplO0FBSzFCQyxFQUFBQSxHQUFHLEVBQUUsSUFMcUI7QUFNMUJDLEVBQUFBLFlB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QUFFVmMsTUFBQUEsU0FBUyxFQUFFLElBRkQ7QUFHVkMsTUFBQUEsUUFBUSxFQUFFLElBSEE7QUFJVkMsTUFBQUEsS0FBSyxFQUFFLElBSkc7QUFLVkMsTUFBQUEsU0FBUyxFQUFFO0FBTEQsS0FKTTtBQVdsQmpCLElBQUFBLEVBQUUsRUFBRSxJQVhjO0FBWWxCK0MsSUFBQUEsSUFBSSxFQUFFLElBWlk7QUFhbEJDLElBQUFBLE9BQU8sRUFBRSxJQWJTO0FBY2xCQyxJQUFBQSxPQUFPLEVBQUU7QUFDUGpELE1BQUFBLEVBQUUsRUFBRTtBQURHO0FBZFMsR0EvQ007QUFpRTFCbUQsRUFBQUEsS0FBSyxFQUFFO0FBQ0xDLElBQUFBLE9BQU8sRUFBRSxJQURKO0FBRUx4QyxJQUFBQSxRQUFRLEVBQUUsSUFGTDtBQUdMeUMsSUFBQUEsSUFBSSxFQUFFO0FBQ0pyRCxNQUFBQSxFQUFFLEVBQUU7QUFEQTtBQUhEO0FBakVtQixDQUFyQiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCBncWxGaWxlUXVlcnkgPSB7XG4gIGlkOiB0cnVlLFxuICBzaXplOiB0cnVlLFxuICBzaXplQmVmb3JlOiB0cnVlLFxuICBjcmVhdGVkQXQ6IHRydWUsXG4gIG1kNTogdHJ1ZSxcbiAgbWQ1RW5jcnlwdGVkOiB0cnVlLFxuICB1c2VyOiB7XG4gICAga2V5OiB0cnVlLFxuICAgIHVzZXJBcHA6IHtcbiAgICAgIGtleVBhaXI6IHtcbiAgICAgICAgcHViOiB0cnVlXG4gICAgICB9XG4gICAgfVxuICB9XG59IGFzIGNvbnN0O1xuXG5leHBvcnQgY29uc3QgZ3FsVkZpbGVRdWVyeSA9IHtcbiAgaWQ6IHRydWUsXG4gIGZpbGVuYW1lOiB0cnVlLFxuICBjcmVhdGVkQnk6IHtcbiAgICB1c2VyOiB7XG4gICAgICBpZDogdHJ1ZSxcbiAgICAgIGZpcnN0bmFtZTogdHJ1ZSxcbiAgICAgIGxhc3RuYW1lOiB0cnVlLFxuICAgICAgZW1haWw6IHRydWUsXG4gICAgICBwdWJsaWNLZXk6IHRydWVcbiAgICB9XG4gIH0sXG4gIHVzZXJBcHBzOiB7XG4gICAgcmlnaHRzOiB0cnVlLFxuICAgIGlzUm9vdDogdHJ1ZSxcbiAgICB1c2VyQXBwOiB7XG4gICAgICB1c2VyOiB7XG4gICAgICAgIGlkOiB0cnVlLFxuICAgICAgICBmaXJzdG5hbWU6IHRydWUsXG4gICAgICAgIGxhc3RuYW1lOiB0cnVlLFxuICAgICAgICBlbWFpbDogdHJ1ZSxcbiAgICAgICAgcHVibGljS2V5OiB0cnVlXG4gICAgICB9XG4gICAgfVxuICB9LFxuICB1c2VyQXBwOiB7XG4gICAgdXNlckFwcDoge1xuICAgICAgdXNlcjoge1xuICAgICAgICBpZDogdHJ1ZVxuICAgICAgfVxuICAgIH0sXG4gICAgbmFtZUtleTogdHJ1ZSxcbiAgICByaWdodHM6IHRydWUsXG4gICAgaXNSb290OiB0cnVlXG4gIH0sXG4gIGlzRmF2b3JpdGU6IHRydWUsXG4gIGNyZWF0ZWRBdDogdHJ1ZSxcbiAgZGVsZXRlZEF0OiB0cnVlLFxuICB1cGRhdGVkQXQ6IHRydWUsXG4gIGN1cnJlbnQ6IHtcbiAgICAuLi5ncWxGaWxlUXVlcnlcbiAgfSxcbiAgaGlzdG9yeToge1xuICAgIC4uLmdxbEZpbGVRdWVyeVxuICB9XG59IGFzIGNvbnN0O1xuXG5leHBvcnQgY29uc3QgZ3FsRm9sZGVyUXVlcnkgPSB7XG4gIGlkOiB0cnVlLFxuICBpc0Zhdm9yaXRlOiB0cnVlLFxuICBjcmVhdGVkQXQ6IHRydWUsXG4gIGRlbGV0ZWRBdDogdHJ1ZSxcbiAgdXBkYXRlZEF0OiB0cnVlLFxuICBuYW1lOiB0cnVlLFxuICBjcmVhdGVkQnk6IHtcbiAgICB1c2VyOiB7XG4gICAgICBpZDogdHJ1ZSxcbiAgICAgIGZpcnN0bmFtZTogdHJ1ZSxcbiAgICAgIGxhc3RuYW1lOiB0cnVlLFxuICAgICAgZW1haWw6IHRydWUsXG4gICAgICBwdWJsaWNLZXk6IHRydWVcbiAgICB9XG4gIH0sXG4gIHVzZXJBcHBzOiB7XG4gICAgcmlnaHRzOiB0cnVlLFxuICAgIGlzUm9vdDogdHJ1ZSxcbiAgICB1c2VyQXBwOiB7XG4gICAgICB1c2VyOiB7XG4gICAgICAgIGlkOiB0cnVlLFxuICAgICAgICBmaXJzdG5hbWU6IHRydWUsXG4gICAgICAgIGxhc3RuYW1lOiB0cnVlLFxuICAgICAgICBlbWFpbDogdHJ1ZSxcbiAgICAgICAgcHVibGljS2V5OiB0cnVlXG4gICAgICB9XG4gICAgfVxuICB9LFxuICB1c2VyQXBwOiB7XG4gICAgdXNlckFwcDoge1xuICAgICAgdXNlcjoge1xuICAgICAgICBpZDogdHJ1ZVxuICAgICAgfVxuICAgIH0sXG4gICAgbmFtZUtleTogdHJ1ZSxcbiAgICByaWdodHM6IHRydWUsXG4gICAgaXNSb290OiB0cnVlXG4gIH0sXG4gIGJyZWFkY3J1bWI6IHtcbiAgICBpZDogdHJ1ZSxcbiAgICBuYW1lOiB0cnVlLFxuICAgIG5hbWVLZXk6IHRydWUsXG4gICAgcHViS2V5OiB0cnVlXG4gIH1cbn0gYXMgY29uc3Q7XG5cbmV4cG9ydCBjb25zdCBncWxGb2xkZXJGdWxsUXVlcnkgPSB7XG4gIC4uLmdxbEZvbGRlclF1ZXJ5LFxuICB2RmlsZXM6IHtcbiAgICAuLi5ncWxWRmlsZVF1ZXJ5XG4gIH0sXG4gIHBhcmVudEZvbGRlcjogZ3FsRm9sZGVyUXVlcnksXG4gIHN1YmZvbGRlcnM6IGdxbEZvbGRlclF1ZXJ5XG59IGFzIGNvbnN0O1xuXG5leHBvcnQgY29uc3QgZ3FsVkZpbGVXaXRoRm9sZGVyUXVlcnkgPSB7XG4gIC4uLmdxbFZGaWxlUXVlcnksXG4gIGZvbGRlcjoge1xuICAgIC4uLmdxbEZvbGRlclF1ZXJ5XG4gIH1cbn0gYXMgY29uc3Q7XG5cbmV4cG9ydCBjb25zdCBncWxNYWlsUXVlcnkgPSB7XG4gIGlkOiB0cnVlLFxuICB0eXBlOiB0cnVlLFxuICBib2R5OiB0cnVlLFxuICBzdWJqZWN0OiB0cnVlLFxuICBvcGVuZWRBdDogdHJ1ZSxcbiAgY3JlYXRlZEF0OiB0cnVlLFxuICBkZWxldGVkQXQ6IHRydWUsXG4gIHJlY2lwaWVudHM6IHtcbiAgICBpZDogdHJ1ZSxcbiAgICBmaXJzdG5hbWU6IHRydWUsXG4gICAgbGFzdG5hbWU6IHRydWUsXG4gICAgZW1haWw6IHRydWUsXG4gICAgcHVibGljS2V5OiB0cnVlXG4gIH0sXG4gIHJlY2lwaWVudDoge1xuICAgIGlkOiB0cnVlLFxuICAgIGZpcnN0bmFtZTogdHJ1ZSxcbiAgICBsYXN0bmFtZTogdHJ1ZSxcbiAgICBlbWFpbDogdHJ1ZSxcbiAgICBwdWJsaWNLZXk6IHRydWVcbiAgfSxcbiAgc2VuZGVyOiB7XG4gICAgaWQ6IHRydWUsXG4gICAgZmlyc3RuYW1lOiB0cnVlLFxuICAgIGxhc3RuYW1lOiB0cnVlLFxuICAgIGVtYWlsOiB0cnVlLFxuICAgIHB1YmxpY0tleTogdHJ1ZVxuICB9LFxuICBtYWlsSW50ZWdyaXR5OiB7XG4gICAgdGVtcG9yYXJ5UmVjaXBpZW50czoge1xuICAgICAgZW1haWw6IHRydWVcbiAgICB9LFxuICAgIHJlY2lwaWVudHM6IHtcbiAgICAgIGlkOiB0cnVlLFxuICAgICAgZmlyc3RuYW1lOiB0cnVlLFxuICAgICAgbGFzdG5hbWU6IHRydWUsXG4gICAgICBlbWFpbDogdHJ1ZSxcbiAgICAgIHB1YmxpY0tleTogdHJ1ZVxuICAgIH0sXG4gICAgaWQ6IHRydWUsXG4gICAgaGFzaDogdHJ1ZSxcbiAgICBoYXNoS2V5OiB0cnVlLFxuICAgIHJlcGx5VG86IHtcbiAgICAgIGlkOiB0cnVlXG4gICAgfVxuICB9LFxuICBtYWlsSW50ZWdyaXR5RHJhZnQ6IHtcbiAgICB0ZW1wb3JhcnlSZWNpcGllbnRzOiB7XG4gICAgICBlbWFpbDogdHJ1ZVxuICAgIH0sXG4gICAgcmVjaXBpZW50czoge1xuICAgICAgaWQ6IHRydWUsXG4gICAgICBmaXJzdG5hbWU6IHRydWUsXG4gICAgICBsYXN0bmFtZTogdHJ1ZSxcbiAgICAgIGVtYWlsOiB0cnVlLFxuICAgICAgcHVibGljS2V5OiB0cnVlXG4gICAgfSxcbiAgICBpZDogdHJ1ZSxcbiAgICBoYXNoOiB0cnVlLFxuICAgIGhhc2hLZXk6IHRydWUsXG4gICAgcmVwbHlUbzoge1xuICAgICAgaWQ6IHRydWVcbiAgICB9XG4gIH0sXG4gIGZpbGVzOiB7XG4gICAgZmlsZUtleTogdHJ1ZSxcbiAgICBmaWxlbmFtZTogdHJ1ZSxcbiAgICBmaWxlOiB7XG4gICAgICBpZDogdHJ1ZVxuICAgIH1cbiAgfVxufSBhcyBjb25zdDtcbiJdfQ==
package/dist/utils.js DELETED
@@ -1,188 +0,0 @@
1
- import _asyncToGenerator from "@babel/runtime/helpers/asyncToGenerator";
2
- import _regeneratorRuntime from "@babel/runtime/regenerator";
3
-
4
- var _marked = /*#__PURE__*/_regeneratorRuntime.mark(enumerate),
5
- _marked2 = /*#__PURE__*/_regeneratorRuntime.mark(chunks);
6
-
7
- 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."); }
8
-
9
- 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); }
10
-
11
- 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; }
12
-
13
- export function concatenate() {
14
- var totalLength = 0;
15
-
16
- for (var _len = arguments.length, arrays = new Array(_len), _key = 0; _key < _len; _key++) {
17
- arrays[_key] = arguments[_key];
18
- }
19
-
20
- for (var _i = 0, _arrays = arrays; _i < _arrays.length; _i++) {
21
- var arr = _arrays[_i];
22
- totalLength += arr.length;
23
- }
24
-
25
- var result = new Uint8Array(totalLength);
26
- var offset = 0;
27
-
28
- for (var _i2 = 0, _arrays2 = arrays; _i2 < _arrays2.length; _i2++) {
29
- var _arr = _arrays2[_i2];
30
- result.set(_arr, offset);
31
- offset += _arr.length;
32
- }
33
-
34
- return result;
35
- }
36
- export function enumerate(iterable) {
37
- var i, _iterator, _step, x;
38
-
39
- return _regeneratorRuntime.wrap(function enumerate$(_context) {
40
- while (1) {
41
- switch (_context.prev = _context.next) {
42
- case 0:
43
- i = 0;
44
- _iterator = _createForOfIteratorHelperLoose(iterable);
45
-
46
- case 2:
47
- if ((_step = _iterator()).done) {
48
- _context.next = 9;
49
- break;
50
- }
51
-
52
- x = _step.value;
53
- _context.next = 6;
54
- return [i, x];
55
-
56
- case 6:
57
- i++;
58
-
59
- case 7:
60
- _context.next = 2;
61
- break;
62
-
63
- case 9:
64
- case "end":
65
- return _context.stop();
66
- }
67
- }
68
- }, _marked);
69
- }
70
- export function chunks(arr, n) {
71
- var i;
72
- return _regeneratorRuntime.wrap(function chunks$(_context2) {
73
- while (1) {
74
- switch (_context2.prev = _context2.next) {
75
- case 0:
76
- i = 0;
77
-
78
- case 1:
79
- if (!(i < arr.length)) {
80
- _context2.next = 7;
81
- break;
82
- }
83
-
84
- _context2.next = 4;
85
- return arr.slice(i, i + n);
86
-
87
- case 4:
88
- i += n;
89
- _context2.next = 1;
90
- break;
91
-
92
- case 7:
93
- case "end":
94
- return _context2.stop();
95
- }
96
- }
97
- }, _marked2);
98
- }
99
- export var promiseAllLimit = /*#__PURE__*/function () {
100
- var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee3(n, list) {
101
- var head, tail, result, execute, runNext;
102
- return _regeneratorRuntime.wrap(function _callee3$(_context5) {
103
- while (1) {
104
- switch (_context5.prev = _context5.next) {
105
- case 0:
106
- head = list.slice(0, n);
107
- tail = list.slice(n);
108
- result = [];
109
-
110
- execute = /*#__PURE__*/function () {
111
- var _ref2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(promise, i, runNext) {
112
- return _regeneratorRuntime.wrap(function _callee$(_context3) {
113
- while (1) {
114
- switch (_context3.prev = _context3.next) {
115
- case 0:
116
- _context3.next = 2;
117
- return promise();
118
-
119
- case 2:
120
- result[i] = _context3.sent;
121
- _context3.next = 5;
122
- return runNext();
123
-
124
- case 5:
125
- case "end":
126
- return _context3.stop();
127
- }
128
- }
129
- }, _callee);
130
- }));
131
-
132
- return function execute(_x3, _x4, _x5) {
133
- return _ref2.apply(this, arguments);
134
- };
135
- }();
136
-
137
- runNext = /*#__PURE__*/function () {
138
- var _ref3 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee2() {
139
- var i, promise;
140
- return _regeneratorRuntime.wrap(function _callee2$(_context4) {
141
- while (1) {
142
- switch (_context4.prev = _context4.next) {
143
- case 0:
144
- i = list.length - tail.length;
145
- promise = tail.shift();
146
-
147
- if (!(promise !== undefined)) {
148
- _context4.next = 5;
149
- break;
150
- }
151
-
152
- _context4.next = 5;
153
- return execute(promise, i, runNext);
154
-
155
- case 5:
156
- case "end":
157
- return _context4.stop();
158
- }
159
- }
160
- }, _callee2);
161
- }));
162
-
163
- return function runNext() {
164
- return _ref3.apply(this, arguments);
165
- };
166
- }();
167
-
168
- _context5.next = 7;
169
- return Promise.all(head.map(function (promise, i) {
170
- return execute(promise, i, runNext);
171
- }));
172
-
173
- case 7:
174
- return _context5.abrupt("return", result);
175
-
176
- case 8:
177
- case "end":
178
- return _context5.stop();
179
- }
180
- }
181
- }, _callee3);
182
- }));
183
-
184
- return function promiseAllLimit(_x, _x2) {
185
- return _ref.apply(this, arguments);
186
- };
187
- }();
188
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy91dGlscy50cyJdLCJuYW1lcyI6WyJlbnVtZXJhdGUiLCJjaHVua3MiLCJjb25jYXRlbmF0ZSIsInRvdGFsTGVuZ3RoIiwiYXJyYXlzIiwiYXJyIiwibGVuZ3RoIiwicmVzdWx0IiwiVWludDhBcnJheSIsIm9mZnNldCIsInNldCIsIml0ZXJhYmxlIiwiaSIsIngiLCJuIiwic2xpY2UiLCJwcm9taXNlQWxsTGltaXQiLCJsaXN0IiwiaGVhZCIsInRhaWwiLCJleGVjdXRlIiwicHJvbWlzZSIsInJ1bk5leHQiLCJzaGlmdCIsInVuZGVmaW5lZCIsIlByb21pc2UiLCJhbGwiLCJtYXAiXSwibWFwcGluZ3MiOiI7OztvREFjaUJBLFM7cURBV0FDLE07Ozs7Ozs7O0FBekJqQixPQUFPLFNBQVNDLFdBQVQsR0FBMEQ7QUFDL0QsTUFBSUMsV0FBVyxHQUFHLENBQWxCOztBQUQrRCxvQ0FBbENDLE1BQWtDO0FBQWxDQSxJQUFBQSxNQUFrQztBQUFBOztBQUUvRCw2QkFBa0JBLE1BQWxCLDZCQUEwQjtBQUFyQixRQUFNQyxHQUFHLGNBQVQ7QUFDSEYsSUFBQUEsV0FBVyxJQUFJRSxHQUFHLENBQUNDLE1BQW5CO0FBQ0Q7O0FBQ0QsTUFBTUMsTUFBTSxHQUFHLElBQUlDLFVBQUosQ0FBZUwsV0FBZixDQUFmO0FBQ0EsTUFBSU0sTUFBTSxHQUFHLENBQWI7O0FBQ0EsK0JBQWtCTCxNQUFsQixnQ0FBMEI7QUFBckIsUUFBTUMsSUFBRyxnQkFBVDtBQUNIRSxJQUFBQSxNQUFNLENBQUNHLEdBQVAsQ0FBV0wsSUFBWCxFQUFnQkksTUFBaEI7QUFDQUEsSUFBQUEsTUFBTSxJQUFJSixJQUFHLENBQUNDLE1BQWQ7QUFDRDs7QUFDRCxTQUFPQyxNQUFQO0FBQ0Q7QUFFRCxPQUFPLFNBQVVQLFNBQVYsQ0FDTFcsUUFESztBQUFBOztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBR0RDLFVBQUFBLENBSEMsR0FHRyxDQUhIO0FBQUEsc0RBS1dELFFBTFg7O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTs7QUFLTUUsVUFBQUEsQ0FMTjtBQUFBO0FBTUgsaUJBQU0sQ0FBQ0QsQ0FBRCxFQUFJQyxDQUFKLENBQU47O0FBTkc7QUFPSEQsVUFBQUEsQ0FBQzs7QUFQRTtBQUFBO0FBQUE7O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFXUCxPQUFPLFNBQVVYLE1BQVYsQ0FDTEksR0FESyxFQUVMUyxDQUZLO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUlJRixVQUFBQSxDQUpKLEdBSVEsQ0FKUjs7QUFBQTtBQUFBLGdCQUlXQSxDQUFDLEdBQUdQLEdBQUcsQ0FBQ0MsTUFKbkI7QUFBQTtBQUFBO0FBQUE7O0FBQUE7QUFLSCxpQkFBTUQsR0FBRyxDQUFDVSxLQUFKLENBQVVILENBQVYsRUFBYUEsQ0FBQyxHQUFHRSxDQUFqQixDQUFOOztBQUxHO0FBSTJCRixVQUFBQSxDQUFDLElBQUlFLENBSmhDO0FBQUE7QUFBQTs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQVNQLE9BQU8sSUFBTUUsZUFBZTtBQUFBLHNFQUFHLGtCQUM3QkYsQ0FENkIsRUFFN0JHLElBRjZCO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUl2QkMsWUFBQUEsSUFKdUIsR0FJaEJELElBQUksQ0FBQ0YsS0FBTCxDQUFXLENBQVgsRUFBY0QsQ0FBZCxDQUpnQjtBQUt2QkssWUFBQUEsSUFMdUIsR0FLaEJGLElBQUksQ0FBQ0YsS0FBTCxDQUFXRCxDQUFYLENBTGdCO0FBTXZCUCxZQUFBQSxNQU51QixHQU1ULEVBTlM7O0FBT3ZCYSxZQUFBQSxPQVB1QjtBQUFBLG1GQU9iLGlCQUNkQyxPQURjLEVBRWRULENBRmMsRUFHZFUsT0FIYztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSwrQkFLSUQsT0FBTyxFQUxYOztBQUFBO0FBS2RkLHdCQUFBQSxNQUFNLENBQUNLLENBQUQsQ0FMUTtBQUFBO0FBQUEsK0JBTVJVLE9BQU8sRUFOQzs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxlQVBhOztBQUFBLDhCQU92QkYsT0FQdUI7QUFBQTtBQUFBO0FBQUE7O0FBZXZCRSxZQUFBQSxPQWZ1QjtBQUFBLG1GQWViO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUNSVix3QkFBQUEsQ0FEUSxHQUNKSyxJQUFJLENBQUNYLE1BQUwsR0FBY2EsSUFBSSxDQUFDYixNQURmO0FBRVJlLHdCQUFBQSxPQUZRLEdBRUVGLElBQUksQ0FBQ0ksS0FBTCxFQUZGOztBQUFBLDhCQUdWRixPQUFPLEtBQUtHLFNBSEY7QUFBQTtBQUFBO0FBQUE7O0FBQUE7QUFBQSwrQkFJTkosT0FBTyxDQUFDQyxPQUFELEVBQVVULENBQVYsRUFBYVUsT0FBYixDQUpEOztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLGVBZmE7O0FBQUEsOEJBZXZCQSxPQWZ1QjtBQUFBO0FBQUE7QUFBQTs7QUFBQTtBQUFBLG1CQXNCdkJHLE9BQU8sQ0FBQ0MsR0FBUixDQUFZUixJQUFJLENBQUNTLEdBQUwsQ0FBUyxVQUFDTixPQUFELEVBQVVULENBQVY7QUFBQSxxQkFBZ0JRLE9BQU8sQ0FBQ0MsT0FBRCxFQUFVVCxDQUFWLEVBQWFVLE9BQWIsQ0FBdkI7QUFBQSxhQUFULENBQVosQ0F0QnVCOztBQUFBO0FBQUEsOENBdUJ0QmYsTUF2QnNCOztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEdBQUg7O0FBQUEsa0JBQWZTLGVBQWU7QUFBQTtBQUFBO0FBQUEsR0FBckIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZnVuY3Rpb24gY29uY2F0ZW5hdGUoLi4uYXJyYXlzOiBVaW50OEFycmF5W10pOiBVaW50OEFycmF5IHtcbiAgbGV0IHRvdGFsTGVuZ3RoID0gMDtcbiAgZm9yIChjb25zdCBhcnIgb2YgYXJyYXlzKSB7XG4gICAgdG90YWxMZW5ndGggKz0gYXJyLmxlbmd0aDtcbiAgfVxuICBjb25zdCByZXN1bHQgPSBuZXcgVWludDhBcnJheSh0b3RhbExlbmd0aCk7XG4gIGxldCBvZmZzZXQgPSAwO1xuICBmb3IgKGNvbnN0IGFyciBvZiBhcnJheXMpIHtcbiAgICByZXN1bHQuc2V0KGFyciwgb2Zmc2V0KTtcbiAgICBvZmZzZXQgKz0gYXJyLmxlbmd0aDtcbiAgfVxuICByZXR1cm4gcmVzdWx0O1xufVxuXG5leHBvcnQgZnVuY3Rpb24qIGVudW1lcmF0ZTxUPihcbiAgaXRlcmFibGU6IEl0ZXJhYmxlPFQ+XG4pOiBJdGVyYWJsZUl0ZXJhdG9yPFtudW1iZXIsIFRdPiB7XG4gIGxldCBpID0gMDtcblxuICBmb3IgKGNvbnN0IHggb2YgaXRlcmFibGUpIHtcbiAgICB5aWVsZCBbaSwgeF07XG4gICAgaSsrO1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiogY2h1bmtzKFxuICBhcnI6IFVpbnQ4QXJyYXksXG4gIG46IG51bWJlclxuKTogR2VuZXJhdG9yPFVpbnQ4QXJyYXksIHZvaWQsIHVua25vd24+IHtcbiAgZm9yIChsZXQgaSA9IDA7IGkgPCBhcnIubGVuZ3RoOyBpICs9IG4pIHtcbiAgICB5aWVsZCBhcnIuc2xpY2UoaSwgaSArIG4pO1xuICB9XG59XG5cbmV4cG9ydCBjb25zdCBwcm9taXNlQWxsTGltaXQgPSBhc3luYyA8VD4oXG4gIG46IG51bWJlcixcbiAgbGlzdDogKCgpID0+IFByb21pc2U8VD4pW11cbik6IFByb21pc2U8VFtdPiA9PiB7XG4gIGNvbnN0IGhlYWQgPSBsaXN0LnNsaWNlKDAsIG4pO1xuICBjb25zdCB0YWlsID0gbGlzdC5zbGljZShuKTtcbiAgY29uc3QgcmVzdWx0OiBUW10gPSBbXTtcbiAgY29uc3QgZXhlY3V0ZSA9IGFzeW5jIChcbiAgICBwcm9taXNlOiAoKSA9PiBQcm9taXNlPFQ+LFxuICAgIGk6IG51bWJlcixcbiAgICBydW5OZXh0OiAoKSA9PiBQcm9taXNlPHZvaWQ+XG4gICk6IFByb21pc2U8dm9pZD4gPT4ge1xuICAgIHJlc3VsdFtpXSA9IGF3YWl0IHByb21pc2UoKTtcbiAgICBhd2FpdCBydW5OZXh0KCk7XG4gIH07XG4gIGNvbnN0IHJ1bk5leHQgPSBhc3luYyAoKTogUHJvbWlzZTx2b2lkPiA9PiB7XG4gICAgY29uc3QgaSA9IGxpc3QubGVuZ3RoIC0gdGFpbC5sZW5ndGg7XG4gICAgY29uc3QgcHJvbWlzZSA9IHRhaWwuc2hpZnQoKTtcbiAgICBpZiAocHJvbWlzZSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICBhd2FpdCBleGVjdXRlKHByb21pc2UsIGksIHJ1bk5leHQpO1xuICAgIH1cbiAgfTtcbiAgYXdhaXQgUHJvbWlzZS5hbGwoaGVhZC5tYXAoKHByb21pc2UsIGkpID0+IGV4ZWN1dGUocHJvbWlzZSwgaSwgcnVuTmV4dCkpKTtcbiAgcmV0dXJuIHJlc3VsdDtcbn07XG4iXX0=