@eluvio/elv-client-js 4.0.7 → 4.0.9
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/dist/ElvClient-min.js +10 -11
- package/dist/ElvClient-node-min.js +10 -11
- package/dist/ElvFrameClient-min.js +10 -11
- package/dist/ElvPermissionsClient-min.js +9 -10
- package/dist/ElvWalletClient-min.js +10 -11
- package/dist/ElvWalletClient-node-min.js +9 -10
- package/dist/src/AuthorizationClient.js +2069 -1548
- package/dist/src/ContentObjectVerification.js +185 -134
- package/dist/src/Crypto.js +323 -226
- package/dist/src/ElvClient.js +1118 -824
- package/dist/src/ElvWallet.js +106 -64
- package/dist/src/EthClient.js +974 -719
- package/dist/src/FrameClient.js +318 -222
- package/dist/src/HttpClient.js +154 -112
- package/dist/src/Id.js +6 -1
- package/dist/src/LogMessage.js +8 -4
- package/dist/src/PermissionsClient.js +1271 -973
- package/dist/src/RemoteSigner.js +232 -161
- package/dist/src/UserProfileClient.js +1038 -781
- package/dist/src/Utils.js +302 -160
- package/dist/src/Validation.js +17 -2
- package/dist/src/client/ABRPublishing.js +942 -772
- package/dist/src/client/AccessGroups.js +1095 -849
- package/dist/src/client/ContentAccess.js +4198 -3272
- package/dist/src/client/ContentManagement.js +2284 -1812
- package/dist/src/client/Contracts.js +614 -468
- package/dist/src/client/Files.js +1831 -1491
- package/dist/src/client/NFT.js +116 -94
- package/dist/src/client/NTP.js +425 -326
- package/dist/src/index.js +5 -2
- package/dist/src/walletClient/ClientMethods.js +1766 -1350
- package/dist/src/walletClient/Configuration.js +2 -4
- package/dist/src/walletClient/Notifications.js +127 -98
- package/dist/src/walletClient/Profile.js +246 -184
- package/dist/src/walletClient/Utils.js +124 -78
- package/dist/src/walletClient/index.js +1498 -1169
- package/package.json +1 -1
- package/src/Crypto.js +2 -2
- package/src/ElvClient.js +2 -2
- package/src/Utils.js +1 -1
- package/src/client/ContentAccess.js +27 -10
- package/src/client/Files.js +1 -1
- package/src/walletClient/ClientMethods.js +18 -10
- package/src/walletClient/Utils.js +2 -2
- package/src/walletClient/index.js +7 -2
|
@@ -1,14 +1,23 @@
|
|
|
1
1
|
var _regeneratorRuntime = require("@babel/runtime/regenerator");
|
|
2
|
+
|
|
2
3
|
var _asyncToGenerator = require("@babel/runtime/helpers/asyncToGenerator");
|
|
4
|
+
|
|
3
5
|
var _defineProperty = require("@babel/runtime/helpers/defineProperty");
|
|
6
|
+
|
|
4
7
|
var _classCallCheck = require("@babel/runtime/helpers/classCallCheck");
|
|
8
|
+
|
|
5
9
|
var _createClass = require("@babel/runtime/helpers/createClass");
|
|
10
|
+
|
|
6
11
|
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; }
|
|
12
|
+
|
|
7
13
|
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; }
|
|
14
|
+
|
|
8
15
|
var UrlJoin = require("url-join");
|
|
16
|
+
|
|
9
17
|
var _require = require("./Validation"),
|
|
10
|
-
|
|
11
|
-
|
|
18
|
+
ValidatePresence = _require.ValidatePresence,
|
|
19
|
+
ValidatePermission = _require.ValidatePermission;
|
|
20
|
+
|
|
12
21
|
var PermissionsClient = /*#__PURE__*/function () {
|
|
13
22
|
"use strict";
|
|
14
23
|
|
|
@@ -118,40 +127,50 @@ var PermissionsClient = /*#__PURE__*/function () {
|
|
|
118
127
|
var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {
|
|
119
128
|
offline: false
|
|
120
129
|
};
|
|
130
|
+
|
|
121
131
|
_classCallCheck(this, PermissionsClient);
|
|
132
|
+
|
|
122
133
|
this.client = client;
|
|
123
134
|
this.subjectNames = {};
|
|
124
135
|
this.drafts = {};
|
|
125
136
|
this.offline = options.offline;
|
|
126
137
|
}
|
|
138
|
+
|
|
127
139
|
_createClass(PermissionsClient, [{
|
|
128
140
|
key: "FormatDate",
|
|
129
141
|
value: function FormatDate(date) {
|
|
130
142
|
if (!date) {
|
|
131
143
|
return;
|
|
132
144
|
}
|
|
145
|
+
|
|
133
146
|
if (isNaN(new Date(date))) {
|
|
134
147
|
throw Error("Invalid start time: ".concat(date));
|
|
135
148
|
}
|
|
149
|
+
|
|
136
150
|
return new Date(date).toISOString();
|
|
137
151
|
}
|
|
138
152
|
}, {
|
|
139
153
|
key: "FormatProfile",
|
|
140
154
|
value: function FormatProfile(profile) {
|
|
141
155
|
var _this = this;
|
|
156
|
+
|
|
142
157
|
ValidatePermission(profile.default_permission);
|
|
143
158
|
var profileSpec = {};
|
|
159
|
+
|
|
144
160
|
if (profile.start) {
|
|
145
161
|
profileSpec.start = this.FormatDate(profile.start);
|
|
146
162
|
}
|
|
163
|
+
|
|
147
164
|
if (profile.end) {
|
|
148
165
|
profileSpec.end = this.FormatDate(profile.end);
|
|
149
166
|
}
|
|
167
|
+
|
|
150
168
|
["assets", "offerings"].forEach(function (type) {
|
|
151
169
|
var typeInfo = profile[type] || {};
|
|
152
170
|
profileSpec[type] = {
|
|
153
171
|
default_permission: typeInfo.default_permission || typeInfo.default_permissions || "no-access"
|
|
154
172
|
};
|
|
173
|
+
|
|
155
174
|
if (typeInfo.custom_permissions) {
|
|
156
175
|
profileSpec[type].custom_permissions = {};
|
|
157
176
|
Object.keys(typeInfo.custom_permissions).forEach(function (id) {
|
|
@@ -159,197 +178,244 @@ var PermissionsClient = /*#__PURE__*/function () {
|
|
|
159
178
|
var spec = {
|
|
160
179
|
permission: ValidatePermission(permission.permission)
|
|
161
180
|
};
|
|
181
|
+
|
|
162
182
|
if (permission.start) {
|
|
163
183
|
spec.start = _this.FormatDate(permission.start);
|
|
164
184
|
}
|
|
185
|
+
|
|
165
186
|
if (permission.end) {
|
|
166
187
|
spec.end = _this.FormatDate(permission.end);
|
|
167
188
|
}
|
|
189
|
+
|
|
168
190
|
profileSpec[type].custom_permissions[id] = _objectSpread(_objectSpread({}, permission), spec);
|
|
169
191
|
});
|
|
170
192
|
}
|
|
171
193
|
});
|
|
172
194
|
return profileSpec;
|
|
173
|
-
}
|
|
195
|
+
} // Convert from fabric metadata spec to client spec
|
|
174
196
|
|
|
175
|
-
// Convert from fabric metadata spec to client spec
|
|
176
197
|
}, {
|
|
177
198
|
key: "FormatPermission",
|
|
178
199
|
value: function () {
|
|
179
200
|
var _FormatPermission = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(_ref) {
|
|
180
201
|
var policyId, policyWriteToken, permission, subjectSource, subjectType, subjectId, subjectName, subjectNTPId, id, cachedName, contentSpaceLibraryId, permissionSpec;
|
|
181
202
|
return _regeneratorRuntime.wrap(function _callee$(_context) {
|
|
182
|
-
while (1)
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
case 5:
|
|
190
|
-
subjectType = "ntp";
|
|
191
|
-
subjectId = permission.subject.id;
|
|
192
|
-
return _context.abrupt("break", 20);
|
|
193
|
-
case 8:
|
|
194
|
-
subjectType = "ntp_subject";
|
|
195
|
-
subjectId = permission.subject.id;
|
|
196
|
-
subjectName = subjectId;
|
|
197
|
-
subjectNTPId = permission.subject.otp_id;
|
|
198
|
-
return _context.abrupt("break", 20);
|
|
199
|
-
case 13:
|
|
200
|
-
subjectType = "group";
|
|
201
|
-
subjectId = subjectSource === "oauth" ? permission.subject.oauth_id : this.client.utils.HashToAddress(permission.subject.id);
|
|
202
|
-
return _context.abrupt("break", 20);
|
|
203
|
-
case 16:
|
|
204
|
-
subjectType = "user";
|
|
205
|
-
subjectId = subjectSource === "oauth" ? permission.subject.oauth_id : this.client.utils.HashToAddress(permission.subject.id);
|
|
206
|
-
return _context.abrupt("break", 20);
|
|
207
|
-
case 19:
|
|
208
|
-
throw Error("Unknown subject type: " + permission.subject.type);
|
|
209
|
-
case 20:
|
|
210
|
-
id = permission.subject.oauth_id || permission.subject.id;
|
|
211
|
-
cachedName = this.subjectNames[id];
|
|
212
|
-
subjectName = subjectName || cachedName || permission.subject.id;
|
|
213
|
-
if (!(!cachedName && subjectSource === "fabric")) {
|
|
214
|
-
_context.next = 74;
|
|
215
|
-
break;
|
|
216
|
-
}
|
|
217
|
-
if (!(subjectType === "group")) {
|
|
218
|
-
_context.next = 36;
|
|
219
|
-
break;
|
|
220
|
-
}
|
|
221
|
-
_context.next = 27;
|
|
222
|
-
return this.client.ContentSpaceId();
|
|
223
|
-
case 27:
|
|
224
|
-
contentSpaceLibraryId = _context.sent.replace("ispc", "ilib");
|
|
225
|
-
_context.next = 30;
|
|
226
|
-
return this.client.ContentObjectMetadata({
|
|
227
|
-
libraryId: contentSpaceLibraryId,
|
|
228
|
-
objectId: this.client.utils.AddressToObjectId(subjectId),
|
|
229
|
-
metadataSubtree: UrlJoin("public", "name")
|
|
230
|
-
});
|
|
231
|
-
case 30:
|
|
232
|
-
_context.t1 = _context.sent;
|
|
233
|
-
if (_context.t1) {
|
|
234
|
-
_context.next = 33;
|
|
235
|
-
break;
|
|
236
|
-
}
|
|
237
|
-
_context.t1 = subjectId;
|
|
238
|
-
case 33:
|
|
239
|
-
subjectName = _context.t1;
|
|
240
|
-
_context.next = 74;
|
|
241
|
-
break;
|
|
242
|
-
case 36:
|
|
243
|
-
if (!(subjectType === "user")) {
|
|
244
|
-
_context.next = 56;
|
|
203
|
+
while (1) {
|
|
204
|
+
switch (_context.prev = _context.next) {
|
|
205
|
+
case 0:
|
|
206
|
+
policyId = _ref.policyId, policyWriteToken = _ref.policyWriteToken, permission = _ref.permission;
|
|
207
|
+
subjectSource = permission.subject.type.startsWith("oauth") ? "oauth" : "fabric";
|
|
208
|
+
_context.t0 = permission.subject.type;
|
|
209
|
+
_context.next = _context.t0 === "otp" ? 5 : _context.t0 === "otp_subject" ? 8 : _context.t0 === "group" ? 13 : _context.t0 === "oauth_group" ? 13 : _context.t0 === "user" ? 16 : _context.t0 === "oauth_user" ? 16 : 19;
|
|
245
210
|
break;
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
211
|
+
|
|
212
|
+
case 5:
|
|
213
|
+
subjectType = "ntp";
|
|
214
|
+
subjectId = permission.subject.id;
|
|
215
|
+
return _context.abrupt("break", 20);
|
|
216
|
+
|
|
217
|
+
case 8:
|
|
218
|
+
subjectType = "ntp_subject";
|
|
219
|
+
subjectId = permission.subject.id;
|
|
220
|
+
subjectName = subjectId;
|
|
221
|
+
subjectNTPId = permission.subject.otp_id;
|
|
222
|
+
return _context.abrupt("break", 20);
|
|
223
|
+
|
|
224
|
+
case 13:
|
|
225
|
+
subjectType = "group";
|
|
226
|
+
subjectId = subjectSource === "oauth" ? permission.subject.oauth_id : this.client.utils.HashToAddress(permission.subject.id);
|
|
227
|
+
return _context.abrupt("break", 20);
|
|
228
|
+
|
|
229
|
+
case 16:
|
|
230
|
+
subjectType = "user";
|
|
231
|
+
subjectId = subjectSource === "oauth" ? permission.subject.oauth_id : this.client.utils.HashToAddress(permission.subject.id);
|
|
232
|
+
return _context.abrupt("break", 20);
|
|
233
|
+
|
|
234
|
+
case 19:
|
|
235
|
+
throw Error("Unknown subject type: " + permission.subject.type);
|
|
236
|
+
|
|
237
|
+
case 20:
|
|
238
|
+
id = permission.subject.oauth_id || permission.subject.id;
|
|
239
|
+
cachedName = this.subjectNames[id];
|
|
240
|
+
subjectName = subjectName || cachedName || permission.subject.id;
|
|
241
|
+
|
|
242
|
+
if (!(!cachedName && subjectSource === "fabric")) {
|
|
243
|
+
_context.next = 74;
|
|
244
|
+
break;
|
|
245
|
+
}
|
|
246
|
+
|
|
247
|
+
if (!(subjectType === "group")) {
|
|
248
|
+
_context.next = 36;
|
|
249
|
+
break;
|
|
250
|
+
}
|
|
251
|
+
|
|
252
|
+
_context.next = 27;
|
|
253
|
+
return this.client.ContentSpaceId();
|
|
254
|
+
|
|
255
|
+
case 27:
|
|
256
|
+
contentSpaceLibraryId = _context.sent.replace("ispc", "ilib");
|
|
257
|
+
_context.next = 30;
|
|
258
|
+
return this.client.ContentObjectMetadata({
|
|
259
|
+
libraryId: contentSpaceLibraryId,
|
|
260
|
+
objectId: this.client.utils.AddressToObjectId(subjectId),
|
|
261
|
+
metadataSubtree: UrlJoin("public", "name")
|
|
262
|
+
});
|
|
263
|
+
|
|
264
|
+
case 30:
|
|
265
|
+
_context.t1 = _context.sent;
|
|
266
|
+
|
|
267
|
+
if (_context.t1) {
|
|
268
|
+
_context.next = 33;
|
|
269
|
+
break;
|
|
270
|
+
}
|
|
271
|
+
|
|
272
|
+
_context.t1 = subjectId;
|
|
273
|
+
|
|
274
|
+
case 33:
|
|
275
|
+
subjectName = _context.t1;
|
|
285
276
|
_context.next = 74;
|
|
286
277
|
break;
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
278
|
+
|
|
279
|
+
case 36:
|
|
280
|
+
if (!(subjectType === "user")) {
|
|
281
|
+
_context.next = 56;
|
|
282
|
+
break;
|
|
283
|
+
}
|
|
284
|
+
|
|
285
|
+
_context.t4 = this.client;
|
|
286
|
+
_context.next = 40;
|
|
287
|
+
return this.client.ContentObjectLibraryId({
|
|
288
|
+
objectId: policyId
|
|
289
|
+
});
|
|
290
|
+
|
|
291
|
+
case 40:
|
|
292
|
+
_context.t5 = _context.sent;
|
|
293
|
+
_context.t6 = policyId;
|
|
294
|
+
_context.t7 = policyWriteToken;
|
|
295
|
+
_context.t8 = UrlJoin("auth_policy_settings", "fabric_users", subjectId);
|
|
296
|
+
_context.t9 = {
|
|
297
|
+
libraryId: _context.t5,
|
|
298
|
+
objectId: _context.t6,
|
|
299
|
+
writeToken: _context.t7,
|
|
300
|
+
metadataSubtree: _context.t8
|
|
301
|
+
};
|
|
302
|
+
_context.next = 47;
|
|
303
|
+
return _context.t4.ContentObjectMetadata.call(_context.t4, _context.t9);
|
|
304
|
+
|
|
305
|
+
case 47:
|
|
306
|
+
_context.t3 = _context.sent;
|
|
307
|
+
|
|
308
|
+
if (_context.t3) {
|
|
309
|
+
_context.next = 50;
|
|
310
|
+
break;
|
|
311
|
+
}
|
|
312
|
+
|
|
313
|
+
_context.t3 = {};
|
|
314
|
+
|
|
315
|
+
case 50:
|
|
316
|
+
_context.t2 = _context.t3.name;
|
|
317
|
+
|
|
318
|
+
if (_context.t2) {
|
|
319
|
+
_context.next = 53;
|
|
320
|
+
break;
|
|
321
|
+
}
|
|
322
|
+
|
|
323
|
+
_context.t2 = subjectId;
|
|
324
|
+
|
|
325
|
+
case 53:
|
|
326
|
+
subjectName = _context.t2;
|
|
327
|
+
_context.next = 74;
|
|
317
328
|
break;
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
329
|
+
|
|
330
|
+
case 56:
|
|
331
|
+
if (!(subjectType === "ntp")) {
|
|
332
|
+
_context.next = 74;
|
|
333
|
+
break;
|
|
334
|
+
}
|
|
335
|
+
|
|
336
|
+
_context.t12 = this.client;
|
|
337
|
+
_context.next = 60;
|
|
338
|
+
return this.client.ContentObjectLibraryId({
|
|
339
|
+
objectId: policyId
|
|
340
|
+
});
|
|
341
|
+
|
|
342
|
+
case 60:
|
|
343
|
+
_context.t13 = _context.sent;
|
|
344
|
+
_context.t14 = policyId;
|
|
345
|
+
_context.t15 = policyWriteToken;
|
|
346
|
+
_context.t16 = UrlJoin("auth_policy_settings", "ntp_instances", subjectId);
|
|
347
|
+
_context.t17 = {
|
|
348
|
+
libraryId: _context.t13,
|
|
349
|
+
objectId: _context.t14,
|
|
350
|
+
writeToken: _context.t15,
|
|
351
|
+
metadataSubtree: _context.t16
|
|
352
|
+
};
|
|
353
|
+
_context.next = 67;
|
|
354
|
+
return _context.t12.ContentObjectMetadata.call(_context.t12, _context.t17);
|
|
355
|
+
|
|
356
|
+
case 67:
|
|
357
|
+
_context.t11 = _context.sent;
|
|
358
|
+
|
|
359
|
+
if (_context.t11) {
|
|
360
|
+
_context.next = 70;
|
|
361
|
+
break;
|
|
362
|
+
}
|
|
363
|
+
|
|
364
|
+
_context.t11 = {};
|
|
365
|
+
|
|
366
|
+
case 70:
|
|
367
|
+
_context.t10 = _context.t11.name;
|
|
368
|
+
|
|
369
|
+
if (_context.t10) {
|
|
370
|
+
_context.next = 73;
|
|
371
|
+
break;
|
|
372
|
+
}
|
|
373
|
+
|
|
374
|
+
_context.t10 = subjectId;
|
|
375
|
+
|
|
376
|
+
case 73:
|
|
377
|
+
subjectName = _context.t10;
|
|
378
|
+
|
|
379
|
+
case 74:
|
|
380
|
+
this.subjectNames[id] = subjectName;
|
|
381
|
+
permissionSpec = {
|
|
382
|
+
profileName: permission.profile,
|
|
383
|
+
subjectSource: subjectSource,
|
|
384
|
+
subjectType: subjectType,
|
|
385
|
+
subjectId: subjectId,
|
|
386
|
+
subjectName: subjectName
|
|
387
|
+
};
|
|
388
|
+
|
|
389
|
+
if (subjectNTPId) {
|
|
390
|
+
permissionSpec.subjectNTPId = subjectNTPId;
|
|
391
|
+
}
|
|
392
|
+
|
|
393
|
+
if (permission.start) {
|
|
394
|
+
permissionSpec.start = permission.start;
|
|
395
|
+
}
|
|
396
|
+
|
|
397
|
+
if (permission.end) {
|
|
398
|
+
permissionSpec.end = permission.end;
|
|
399
|
+
}
|
|
400
|
+
|
|
401
|
+
return _context.abrupt("return", permissionSpec);
|
|
402
|
+
|
|
403
|
+
case 80:
|
|
404
|
+
case "end":
|
|
405
|
+
return _context.stop();
|
|
406
|
+
}
|
|
344
407
|
}
|
|
345
408
|
}, _callee, this);
|
|
346
409
|
}));
|
|
410
|
+
|
|
347
411
|
function FormatPermission(_x) {
|
|
348
412
|
return _FormatPermission.apply(this, arguments);
|
|
349
413
|
}
|
|
414
|
+
|
|
350
415
|
return FormatPermission;
|
|
351
416
|
}()
|
|
352
417
|
/* Offline draft */
|
|
418
|
+
|
|
353
419
|
/**
|
|
354
420
|
* Open an offline draft - copies object data locally and allows the functions processing this data to operate
|
|
355
421
|
* on the local copy, much faster. Closing the draft will copy the data back to the object's write token.
|
|
@@ -360,48 +426,59 @@ var PermissionsClient = /*#__PURE__*/function () {
|
|
|
360
426
|
* @param {string} policyLibraryId - Policy object library ID (optional)
|
|
361
427
|
* @param {string=} policyWriteToken - Write token for the policy object
|
|
362
428
|
*/
|
|
429
|
+
|
|
363
430
|
}, {
|
|
364
431
|
key: "OpenOfflineDraft",
|
|
365
432
|
value: function () {
|
|
366
433
|
var _OpenOfflineDraft = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee2(_ref2) {
|
|
367
434
|
var policyId, policyLibraryId, policyWriteToken, meta;
|
|
368
435
|
return _regeneratorRuntime.wrap(function _callee2$(_context2) {
|
|
369
|
-
while (1)
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
|
|
436
|
+
while (1) {
|
|
437
|
+
switch (_context2.prev = _context2.next) {
|
|
438
|
+
case 0:
|
|
439
|
+
policyId = _ref2.policyId, policyLibraryId = _ref2.policyLibraryId, policyWriteToken = _ref2.policyWriteToken;
|
|
440
|
+
|
|
441
|
+
if (!(policyLibraryId == null)) {
|
|
442
|
+
_context2.next = 5;
|
|
443
|
+
break;
|
|
444
|
+
}
|
|
445
|
+
|
|
446
|
+
_context2.next = 4;
|
|
447
|
+
return this.client.ContentObjectLibraryId({
|
|
448
|
+
objectId: policyId
|
|
449
|
+
});
|
|
450
|
+
|
|
451
|
+
case 4:
|
|
452
|
+
policyLibraryId = _context2.sent;
|
|
453
|
+
|
|
454
|
+
case 5:
|
|
455
|
+
_context2.next = 7;
|
|
456
|
+
return this.client.ContentObjectMetadata({
|
|
457
|
+
libraryId: policyLibraryId,
|
|
458
|
+
objectId: policyId,
|
|
459
|
+
writeToken: policyWriteToken
|
|
460
|
+
});
|
|
461
|
+
|
|
462
|
+
case 7:
|
|
463
|
+
meta = _context2.sent;
|
|
464
|
+
this.drafts[policyId] = {
|
|
465
|
+
meta: meta,
|
|
466
|
+
policyLibraryId: policyLibraryId,
|
|
467
|
+
policyWriteToken: policyWriteToken
|
|
468
|
+
};
|
|
469
|
+
|
|
470
|
+
case 9:
|
|
471
|
+
case "end":
|
|
472
|
+
return _context2.stop();
|
|
473
|
+
}
|
|
399
474
|
}
|
|
400
475
|
}, _callee2, this);
|
|
401
476
|
}));
|
|
477
|
+
|
|
402
478
|
function OpenOfflineDraft(_x2) {
|
|
403
479
|
return _OpenOfflineDraft.apply(this, arguments);
|
|
404
480
|
}
|
|
481
|
+
|
|
405
482
|
return OpenOfflineDraft;
|
|
406
483
|
}()
|
|
407
484
|
/**
|
|
@@ -412,42 +489,53 @@ var PermissionsClient = /*#__PURE__*/function () {
|
|
|
412
489
|
* @namedParams
|
|
413
490
|
* @param {string} policyId - Object ID of the policy
|
|
414
491
|
*/
|
|
492
|
+
|
|
415
493
|
}, {
|
|
416
494
|
key: "CloseOfflineDraft",
|
|
417
495
|
value: function () {
|
|
418
496
|
var _CloseOfflineDraft = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee3(_ref3) {
|
|
419
497
|
var policyId;
|
|
420
498
|
return _regeneratorRuntime.wrap(function _callee3$(_context3) {
|
|
421
|
-
while (1)
|
|
422
|
-
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
|
|
431
|
-
|
|
432
|
-
|
|
433
|
-
|
|
434
|
-
|
|
435
|
-
|
|
436
|
-
|
|
437
|
-
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
|
|
499
|
+
while (1) {
|
|
500
|
+
switch (_context3.prev = _context3.next) {
|
|
501
|
+
case 0:
|
|
502
|
+
policyId = _ref3.policyId;
|
|
503
|
+
|
|
504
|
+
if (!(this.drafts[policyId] == null)) {
|
|
505
|
+
_context3.next = 3;
|
|
506
|
+
break;
|
|
507
|
+
}
|
|
508
|
+
|
|
509
|
+
throw Error("No draft open for policyId: " + policyId);
|
|
510
|
+
|
|
511
|
+
case 3:
|
|
512
|
+
_context3.next = 5;
|
|
513
|
+
return this.client.ReplaceMetadata({
|
|
514
|
+
libraryId: this.drafts[policyId].policyLibraryId,
|
|
515
|
+
objectId: policyId,
|
|
516
|
+
writeToken: this.drafts[policyId].policyWriteToken,
|
|
517
|
+
metadata: this.drafts[policyId].meta
|
|
518
|
+
});
|
|
519
|
+
|
|
520
|
+
case 5:
|
|
521
|
+
this.drafts[policyId] = null;
|
|
522
|
+
|
|
523
|
+
case 6:
|
|
524
|
+
case "end":
|
|
525
|
+
return _context3.stop();
|
|
526
|
+
}
|
|
442
527
|
}
|
|
443
528
|
}, _callee3, this);
|
|
444
529
|
}));
|
|
530
|
+
|
|
445
531
|
function CloseOfflineDraft(_x3) {
|
|
446
532
|
return _CloseOfflineDraft.apply(this, arguments);
|
|
447
533
|
}
|
|
534
|
+
|
|
448
535
|
return CloseOfflineDraft;
|
|
449
536
|
}()
|
|
450
537
|
/* Add / remove overall item permission */
|
|
538
|
+
|
|
451
539
|
/**
|
|
452
540
|
* Retrieve a list of all items in the specified policy
|
|
453
541
|
*
|
|
@@ -457,52 +545,63 @@ var PermissionsClient = /*#__PURE__*/function () {
|
|
|
457
545
|
* @param {string=} policyWriteToken - Write token for the policy object - if specified, info will be retrieved from the write draft instead of the last finalized policy object
|
|
458
546
|
* @return {Promise<Object>} - A mapping of item objectId to the display name of the item
|
|
459
547
|
*/
|
|
548
|
+
|
|
460
549
|
}, {
|
|
461
550
|
key: "PolicyItems",
|
|
462
551
|
value: function () {
|
|
463
552
|
var _PolicyItems = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee4(_ref4) {
|
|
464
553
|
var policyId, policyWriteToken;
|
|
465
554
|
return _regeneratorRuntime.wrap(function _callee4$(_context4) {
|
|
466
|
-
while (1)
|
|
467
|
-
|
|
468
|
-
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
|
|
472
|
-
|
|
473
|
-
|
|
474
|
-
|
|
475
|
-
|
|
476
|
-
|
|
477
|
-
|
|
478
|
-
|
|
479
|
-
|
|
480
|
-
|
|
481
|
-
|
|
482
|
-
|
|
483
|
-
|
|
484
|
-
|
|
485
|
-
|
|
486
|
-
|
|
487
|
-
|
|
488
|
-
|
|
489
|
-
|
|
490
|
-
|
|
491
|
-
|
|
492
|
-
|
|
493
|
-
|
|
494
|
-
|
|
495
|
-
|
|
496
|
-
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
|
|
555
|
+
while (1) {
|
|
556
|
+
switch (_context4.prev = _context4.next) {
|
|
557
|
+
case 0:
|
|
558
|
+
policyId = _ref4.policyId, policyWriteToken = _ref4.policyWriteToken;
|
|
559
|
+
_context4.t1 = this.client;
|
|
560
|
+
_context4.next = 4;
|
|
561
|
+
return this.client.ContentObjectLibraryId({
|
|
562
|
+
objectId: policyId
|
|
563
|
+
});
|
|
564
|
+
|
|
565
|
+
case 4:
|
|
566
|
+
_context4.t2 = _context4.sent;
|
|
567
|
+
_context4.t3 = policyId;
|
|
568
|
+
_context4.t4 = policyWriteToken;
|
|
569
|
+
_context4.t5 = ["*/display_title"];
|
|
570
|
+
_context4.t6 = {
|
|
571
|
+
libraryId: _context4.t2,
|
|
572
|
+
objectId: _context4.t3,
|
|
573
|
+
writeToken: _context4.t4,
|
|
574
|
+
metadataSubtree: "auth_policy_spec",
|
|
575
|
+
select: _context4.t5
|
|
576
|
+
};
|
|
577
|
+
_context4.next = 11;
|
|
578
|
+
return _context4.t1.ContentObjectMetadata.call(_context4.t1, _context4.t6);
|
|
579
|
+
|
|
580
|
+
case 11:
|
|
581
|
+
_context4.t0 = _context4.sent;
|
|
582
|
+
|
|
583
|
+
if (_context4.t0) {
|
|
584
|
+
_context4.next = 14;
|
|
585
|
+
break;
|
|
586
|
+
}
|
|
587
|
+
|
|
588
|
+
_context4.t0 = {};
|
|
589
|
+
|
|
590
|
+
case 14:
|
|
591
|
+
return _context4.abrupt("return", _context4.t0);
|
|
592
|
+
|
|
593
|
+
case 15:
|
|
594
|
+
case "end":
|
|
595
|
+
return _context4.stop();
|
|
596
|
+
}
|
|
500
597
|
}
|
|
501
598
|
}, _callee4, this);
|
|
502
599
|
}));
|
|
600
|
+
|
|
503
601
|
function PolicyItems(_x4) {
|
|
504
602
|
return _PolicyItems.apply(this, arguments);
|
|
505
603
|
}
|
|
604
|
+
|
|
506
605
|
return PolicyItems;
|
|
507
606
|
}()
|
|
508
607
|
/**
|
|
@@ -515,50 +614,61 @@ var PermissionsClient = /*#__PURE__*/function () {
|
|
|
515
614
|
* @param {string} itemId - Object ID of the item
|
|
516
615
|
* @return {Promise<Object | undefined>} - The policy for the specified item. If none exists, returns undefined
|
|
517
616
|
*/
|
|
617
|
+
|
|
518
618
|
}, {
|
|
519
619
|
key: "ItemPolicy",
|
|
520
620
|
value: function () {
|
|
521
621
|
var _ItemPolicy = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee5(_ref5) {
|
|
522
622
|
var policyId, policyWriteToken, itemId, profiles, permissions;
|
|
523
623
|
return _regeneratorRuntime.wrap(function _callee5$(_context5) {
|
|
524
|
-
while (1)
|
|
525
|
-
|
|
526
|
-
|
|
527
|
-
|
|
528
|
-
|
|
529
|
-
|
|
530
|
-
|
|
531
|
-
|
|
532
|
-
|
|
533
|
-
|
|
534
|
-
|
|
535
|
-
|
|
536
|
-
|
|
537
|
-
|
|
538
|
-
|
|
539
|
-
|
|
540
|
-
|
|
541
|
-
|
|
542
|
-
|
|
543
|
-
|
|
544
|
-
|
|
545
|
-
|
|
546
|
-
|
|
547
|
-
|
|
548
|
-
|
|
549
|
-
|
|
550
|
-
|
|
551
|
-
|
|
552
|
-
|
|
553
|
-
|
|
554
|
-
|
|
555
|
-
|
|
624
|
+
while (1) {
|
|
625
|
+
switch (_context5.prev = _context5.next) {
|
|
626
|
+
case 0:
|
|
627
|
+
policyId = _ref5.policyId, policyWriteToken = _ref5.policyWriteToken, itemId = _ref5.itemId;
|
|
628
|
+
_context5.next = 3;
|
|
629
|
+
return this.ItemProfiles({
|
|
630
|
+
policyId: policyId,
|
|
631
|
+
policyWriteToken: policyWriteToken,
|
|
632
|
+
itemId: itemId
|
|
633
|
+
});
|
|
634
|
+
|
|
635
|
+
case 3:
|
|
636
|
+
profiles = _context5.sent;
|
|
637
|
+
_context5.next = 6;
|
|
638
|
+
return this.ItemPermissions({
|
|
639
|
+
policyId: policyId,
|
|
640
|
+
policyWriteToken: policyWriteToken,
|
|
641
|
+
itemId: itemId
|
|
642
|
+
});
|
|
643
|
+
|
|
644
|
+
case 6:
|
|
645
|
+
permissions = _context5.sent;
|
|
646
|
+
|
|
647
|
+
if (!(!profiles || !permissions)) {
|
|
648
|
+
_context5.next = 9;
|
|
649
|
+
break;
|
|
650
|
+
}
|
|
651
|
+
|
|
652
|
+
return _context5.abrupt("return");
|
|
653
|
+
|
|
654
|
+
case 9:
|
|
655
|
+
return _context5.abrupt("return", {
|
|
656
|
+
profiles: profiles,
|
|
657
|
+
permissions: permissions
|
|
658
|
+
});
|
|
659
|
+
|
|
660
|
+
case 10:
|
|
661
|
+
case "end":
|
|
662
|
+
return _context5.stop();
|
|
663
|
+
}
|
|
556
664
|
}
|
|
557
665
|
}, _callee5, this);
|
|
558
666
|
}));
|
|
667
|
+
|
|
559
668
|
function ItemPolicy(_x5) {
|
|
560
669
|
return _ItemPolicy.apply(this, arguments);
|
|
561
670
|
}
|
|
671
|
+
|
|
562
672
|
return ItemPolicy;
|
|
563
673
|
}()
|
|
564
674
|
/**
|
|
@@ -571,84 +681,98 @@ var PermissionsClient = /*#__PURE__*/function () {
|
|
|
571
681
|
* @param {string} itemId - Object ID of the item
|
|
572
682
|
* @param {object=} profiles={} - Profiles to create
|
|
573
683
|
*/
|
|
684
|
+
|
|
574
685
|
}, {
|
|
575
686
|
key: "CreateItemPolicy",
|
|
576
687
|
value: function () {
|
|
577
688
|
var _CreateItemPolicy = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee6(_ref6) {
|
|
578
689
|
var _this2 = this;
|
|
690
|
+
|
|
579
691
|
var policyId, policyWriteToken, itemId, _ref6$profiles, profiles, metadata, assetMetadata, displayTitle, itemSpec;
|
|
692
|
+
|
|
580
693
|
return _regeneratorRuntime.wrap(function _callee6$(_context6) {
|
|
581
|
-
while (1)
|
|
582
|
-
|
|
583
|
-
|
|
584
|
-
|
|
585
|
-
|
|
586
|
-
|
|
587
|
-
|
|
588
|
-
|
|
589
|
-
|
|
590
|
-
|
|
591
|
-
|
|
592
|
-
|
|
593
|
-
|
|
594
|
-
|
|
595
|
-
|
|
596
|
-
|
|
597
|
-
|
|
598
|
-
|
|
599
|
-
|
|
600
|
-
|
|
601
|
-
|
|
602
|
-
|
|
603
|
-
|
|
604
|
-
|
|
605
|
-
|
|
606
|
-
|
|
607
|
-
|
|
608
|
-
|
|
609
|
-
|
|
610
|
-
|
|
611
|
-
|
|
612
|
-
|
|
613
|
-
|
|
614
|
-
|
|
615
|
-
|
|
616
|
-
|
|
617
|
-
|
|
618
|
-
|
|
619
|
-
|
|
620
|
-
|
|
621
|
-
itemSpec
|
|
622
|
-
|
|
623
|
-
|
|
624
|
-
|
|
625
|
-
|
|
626
|
-
|
|
627
|
-
|
|
628
|
-
|
|
629
|
-
|
|
630
|
-
|
|
631
|
-
|
|
632
|
-
|
|
633
|
-
|
|
634
|
-
|
|
635
|
-
|
|
636
|
-
|
|
637
|
-
|
|
638
|
-
|
|
639
|
-
|
|
640
|
-
|
|
641
|
-
|
|
642
|
-
|
|
643
|
-
|
|
644
|
-
|
|
645
|
-
|
|
694
|
+
while (1) {
|
|
695
|
+
switch (_context6.prev = _context6.next) {
|
|
696
|
+
case 0:
|
|
697
|
+
policyId = _ref6.policyId, policyWriteToken = _ref6.policyWriteToken, itemId = _ref6.itemId, _ref6$profiles = _ref6.profiles, profiles = _ref6$profiles === void 0 ? {} : _ref6$profiles;
|
|
698
|
+
ValidatePresence("policyId", policyId);
|
|
699
|
+
ValidatePresence("policyWriteToken", policyWriteToken);
|
|
700
|
+
ValidatePresence("itemId", itemId);
|
|
701
|
+
ValidatePresence("profiles", profiles);
|
|
702
|
+
_context6.t1 = this.client;
|
|
703
|
+
_context6.next = 8;
|
|
704
|
+
return this.client.ContentObjectLibraryId({
|
|
705
|
+
objectId: itemId
|
|
706
|
+
});
|
|
707
|
+
|
|
708
|
+
case 8:
|
|
709
|
+
_context6.t2 = _context6.sent;
|
|
710
|
+
_context6.t3 = itemId;
|
|
711
|
+
_context6.t4 = ["public/name", "public/asset_metadata/title", "public/asset_metadata/display_title"];
|
|
712
|
+
_context6.t5 = {
|
|
713
|
+
libraryId: _context6.t2,
|
|
714
|
+
objectId: _context6.t3,
|
|
715
|
+
select: _context6.t4
|
|
716
|
+
};
|
|
717
|
+
_context6.next = 14;
|
|
718
|
+
return _context6.t1.ContentObjectMetadata.call(_context6.t1, _context6.t5);
|
|
719
|
+
|
|
720
|
+
case 14:
|
|
721
|
+
_context6.t0 = _context6.sent;
|
|
722
|
+
|
|
723
|
+
if (_context6.t0) {
|
|
724
|
+
_context6.next = 17;
|
|
725
|
+
break;
|
|
726
|
+
}
|
|
727
|
+
|
|
728
|
+
_context6.t0 = {};
|
|
729
|
+
|
|
730
|
+
case 17:
|
|
731
|
+
metadata = _context6.t0;
|
|
732
|
+
assetMetadata = (metadata["public"] || {}).asset_metadata || {};
|
|
733
|
+
displayTitle = assetMetadata.display_title || assetMetadata.title || (metadata["public"] || {}).name;
|
|
734
|
+
itemSpec = {
|
|
735
|
+
display_title: displayTitle,
|
|
736
|
+
permissions: [],
|
|
737
|
+
profiles: {}
|
|
738
|
+
};
|
|
739
|
+
Object.keys(profiles).forEach(function (profileName) {
|
|
740
|
+
itemSpec.profiles[profileName] = _this2.FormatProfile(profiles[profileName]);
|
|
741
|
+
});
|
|
742
|
+
_context6.t6 = this.client;
|
|
743
|
+
_context6.next = 25;
|
|
744
|
+
return this.client.ContentObjectLibraryId({
|
|
745
|
+
objectId: policyId
|
|
746
|
+
});
|
|
747
|
+
|
|
748
|
+
case 25:
|
|
749
|
+
_context6.t7 = _context6.sent;
|
|
750
|
+
_context6.t8 = policyId;
|
|
751
|
+
_context6.t9 = policyWriteToken;
|
|
752
|
+
_context6.t10 = UrlJoin("auth_policy_spec", itemId);
|
|
753
|
+
_context6.t11 = itemSpec;
|
|
754
|
+
_context6.t12 = {
|
|
755
|
+
libraryId: _context6.t7,
|
|
756
|
+
objectId: _context6.t8,
|
|
757
|
+
writeToken: _context6.t9,
|
|
758
|
+
metadataSubtree: _context6.t10,
|
|
759
|
+
metadata: _context6.t11
|
|
760
|
+
};
|
|
761
|
+
_context6.next = 33;
|
|
762
|
+
return _context6.t6.ReplaceMetadata.call(_context6.t6, _context6.t12);
|
|
763
|
+
|
|
764
|
+
case 33:
|
|
765
|
+
case "end":
|
|
766
|
+
return _context6.stop();
|
|
767
|
+
}
|
|
646
768
|
}
|
|
647
769
|
}, _callee6, this);
|
|
648
770
|
}));
|
|
771
|
+
|
|
649
772
|
function CreateItemPolicy(_x6) {
|
|
650
773
|
return _CreateItemPolicy.apply(this, arguments);
|
|
651
774
|
}
|
|
775
|
+
|
|
652
776
|
return CreateItemPolicy;
|
|
653
777
|
}()
|
|
654
778
|
/**
|
|
@@ -660,48 +784,56 @@ var PermissionsClient = /*#__PURE__*/function () {
|
|
|
660
784
|
* @param {string} policyWriteToken - Write token for the policy
|
|
661
785
|
* @param {string} itemId - Object ID of the item
|
|
662
786
|
*/
|
|
787
|
+
|
|
663
788
|
}, {
|
|
664
789
|
key: "RemoveItemPolicy",
|
|
665
790
|
value: function () {
|
|
666
791
|
var _RemoveItemPolicy = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee7(_ref7) {
|
|
667
792
|
var policyId, policyWriteToken, itemId;
|
|
668
793
|
return _regeneratorRuntime.wrap(function _callee7$(_context7) {
|
|
669
|
-
while (1)
|
|
670
|
-
|
|
671
|
-
|
|
672
|
-
|
|
673
|
-
|
|
674
|
-
|
|
675
|
-
|
|
676
|
-
|
|
677
|
-
|
|
678
|
-
|
|
679
|
-
|
|
680
|
-
|
|
681
|
-
|
|
682
|
-
|
|
683
|
-
|
|
684
|
-
|
|
685
|
-
|
|
686
|
-
|
|
687
|
-
|
|
688
|
-
|
|
689
|
-
|
|
690
|
-
|
|
691
|
-
|
|
692
|
-
|
|
693
|
-
|
|
694
|
-
|
|
695
|
-
|
|
794
|
+
while (1) {
|
|
795
|
+
switch (_context7.prev = _context7.next) {
|
|
796
|
+
case 0:
|
|
797
|
+
policyId = _ref7.policyId, policyWriteToken = _ref7.policyWriteToken, itemId = _ref7.itemId;
|
|
798
|
+
ValidatePresence("policyId", policyId);
|
|
799
|
+
ValidatePresence("policyWriteToken", policyWriteToken);
|
|
800
|
+
ValidatePresence("itemId", itemId);
|
|
801
|
+
_context7.t0 = this.client;
|
|
802
|
+
_context7.next = 7;
|
|
803
|
+
return this.client.ContentObjectLibraryId({
|
|
804
|
+
objectId: policyId
|
|
805
|
+
});
|
|
806
|
+
|
|
807
|
+
case 7:
|
|
808
|
+
_context7.t1 = _context7.sent;
|
|
809
|
+
_context7.t2 = policyId;
|
|
810
|
+
_context7.t3 = policyWriteToken;
|
|
811
|
+
_context7.t4 = UrlJoin("auth_policy_spec", itemId);
|
|
812
|
+
_context7.t5 = {
|
|
813
|
+
libraryId: _context7.t1,
|
|
814
|
+
objectId: _context7.t2,
|
|
815
|
+
writeToken: _context7.t3,
|
|
816
|
+
metadataSubtree: _context7.t4
|
|
817
|
+
};
|
|
818
|
+
_context7.next = 14;
|
|
819
|
+
return _context7.t0.DeleteMetadata.call(_context7.t0, _context7.t5);
|
|
820
|
+
|
|
821
|
+
case 14:
|
|
822
|
+
case "end":
|
|
823
|
+
return _context7.stop();
|
|
824
|
+
}
|
|
696
825
|
}
|
|
697
826
|
}, _callee7, this);
|
|
698
827
|
}));
|
|
828
|
+
|
|
699
829
|
function RemoveItemPolicy(_x7) {
|
|
700
830
|
return _RemoveItemPolicy.apply(this, arguments);
|
|
701
831
|
}
|
|
832
|
+
|
|
702
833
|
return RemoveItemPolicy;
|
|
703
834
|
}()
|
|
704
835
|
/* Get / set / remove profile permissions */
|
|
836
|
+
|
|
705
837
|
/**
|
|
706
838
|
* Retrieve profile information on the specified item policy
|
|
707
839
|
*
|
|
@@ -712,44 +844,52 @@ var PermissionsClient = /*#__PURE__*/function () {
|
|
|
712
844
|
* @param {string} itemId - Object ID of the item
|
|
713
845
|
* @param {string=} profileName - The name of the profile. If not specified, all profiles will be returned
|
|
714
846
|
*/
|
|
847
|
+
|
|
715
848
|
}, {
|
|
716
849
|
key: "ItemProfiles",
|
|
717
850
|
value: function () {
|
|
718
851
|
var _ItemProfiles = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee8(_ref8) {
|
|
719
852
|
var policyId, policyWriteToken, itemId, profileName;
|
|
720
853
|
return _regeneratorRuntime.wrap(function _callee8$(_context8) {
|
|
721
|
-
while (1)
|
|
722
|
-
|
|
723
|
-
|
|
724
|
-
|
|
725
|
-
|
|
726
|
-
|
|
727
|
-
|
|
728
|
-
|
|
729
|
-
|
|
730
|
-
|
|
731
|
-
|
|
732
|
-
|
|
733
|
-
|
|
734
|
-
|
|
735
|
-
|
|
736
|
-
|
|
737
|
-
|
|
738
|
-
|
|
739
|
-
|
|
740
|
-
|
|
741
|
-
|
|
742
|
-
|
|
743
|
-
|
|
744
|
-
|
|
745
|
-
|
|
746
|
-
|
|
854
|
+
while (1) {
|
|
855
|
+
switch (_context8.prev = _context8.next) {
|
|
856
|
+
case 0:
|
|
857
|
+
policyId = _ref8.policyId, policyWriteToken = _ref8.policyWriteToken, itemId = _ref8.itemId, profileName = _ref8.profileName;
|
|
858
|
+
_context8.t0 = this.client;
|
|
859
|
+
_context8.next = 4;
|
|
860
|
+
return this.client.ContentObjectLibraryId({
|
|
861
|
+
objectId: policyId
|
|
862
|
+
});
|
|
863
|
+
|
|
864
|
+
case 4:
|
|
865
|
+
_context8.t1 = _context8.sent;
|
|
866
|
+
_context8.t2 = policyId;
|
|
867
|
+
_context8.t3 = policyWriteToken;
|
|
868
|
+
_context8.t4 = UrlJoin("auth_policy_spec", itemId, "profiles", profileName || "");
|
|
869
|
+
_context8.t5 = {
|
|
870
|
+
libraryId: _context8.t1,
|
|
871
|
+
objectId: _context8.t2,
|
|
872
|
+
writeToken: _context8.t3,
|
|
873
|
+
metadataSubtree: _context8.t4
|
|
874
|
+
};
|
|
875
|
+
_context8.next = 11;
|
|
876
|
+
return _context8.t0.ContentObjectMetadata.call(_context8.t0, _context8.t5);
|
|
877
|
+
|
|
878
|
+
case 11:
|
|
879
|
+
return _context8.abrupt("return", _context8.sent);
|
|
880
|
+
|
|
881
|
+
case 12:
|
|
882
|
+
case "end":
|
|
883
|
+
return _context8.stop();
|
|
884
|
+
}
|
|
747
885
|
}
|
|
748
886
|
}, _callee8, this);
|
|
749
887
|
}));
|
|
888
|
+
|
|
750
889
|
function ItemProfiles(_x8) {
|
|
751
890
|
return _ItemProfiles.apply(this, arguments);
|
|
752
891
|
}
|
|
892
|
+
|
|
753
893
|
return ItemProfiles;
|
|
754
894
|
}()
|
|
755
895
|
/**
|
|
@@ -764,49 +904,56 @@ var PermissionsClient = /*#__PURE__*/function () {
|
|
|
764
904
|
* @param {object} profileSpec - Specification for the profile. If not provided, profile
|
|
765
905
|
* will default to no access for both assets and offerings
|
|
766
906
|
*/
|
|
907
|
+
|
|
767
908
|
}, {
|
|
768
909
|
key: "SetProfile",
|
|
769
910
|
value: function () {
|
|
770
911
|
var _SetProfile = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee9(_ref9) {
|
|
771
912
|
var policyId, policyWriteToken, itemId, profileName, profileSpec;
|
|
772
913
|
return _regeneratorRuntime.wrap(function _callee9$(_context9) {
|
|
773
|
-
while (1)
|
|
774
|
-
|
|
775
|
-
|
|
776
|
-
|
|
777
|
-
|
|
778
|
-
|
|
779
|
-
|
|
780
|
-
|
|
781
|
-
|
|
782
|
-
|
|
783
|
-
|
|
784
|
-
|
|
785
|
-
|
|
786
|
-
|
|
787
|
-
|
|
788
|
-
|
|
789
|
-
|
|
790
|
-
|
|
791
|
-
|
|
792
|
-
|
|
793
|
-
|
|
794
|
-
|
|
795
|
-
|
|
796
|
-
|
|
797
|
-
|
|
798
|
-
|
|
799
|
-
|
|
800
|
-
|
|
801
|
-
|
|
802
|
-
|
|
803
|
-
|
|
914
|
+
while (1) {
|
|
915
|
+
switch (_context9.prev = _context9.next) {
|
|
916
|
+
case 0:
|
|
917
|
+
policyId = _ref9.policyId, policyWriteToken = _ref9.policyWriteToken, itemId = _ref9.itemId, profileName = _ref9.profileName, profileSpec = _ref9.profileSpec;
|
|
918
|
+
ValidatePresence("policyId", policyId);
|
|
919
|
+
ValidatePresence("policyWriteToken", policyWriteToken);
|
|
920
|
+
ValidatePresence("itemId", itemId);
|
|
921
|
+
ValidatePresence("profileName", profileName);
|
|
922
|
+
ValidatePresence("profileSpec", profileSpec);
|
|
923
|
+
_context9.t0 = this.client;
|
|
924
|
+
_context9.next = 9;
|
|
925
|
+
return this.client.ContentObjectLibraryId({
|
|
926
|
+
objectId: policyId
|
|
927
|
+
});
|
|
928
|
+
|
|
929
|
+
case 9:
|
|
930
|
+
_context9.t1 = _context9.sent;
|
|
931
|
+
_context9.t2 = policyId;
|
|
932
|
+
_context9.t3 = policyWriteToken;
|
|
933
|
+
_context9.t4 = UrlJoin("auth_policy_spec", itemId, "profiles", profileName);
|
|
934
|
+
_context9.t5 = this.FormatProfile(profileSpec);
|
|
935
|
+
_context9.t6 = {
|
|
936
|
+
libraryId: _context9.t1,
|
|
937
|
+
objectId: _context9.t2,
|
|
938
|
+
writeToken: _context9.t3,
|
|
939
|
+
metadataSubtree: _context9.t4,
|
|
940
|
+
metadata: _context9.t5
|
|
941
|
+
};
|
|
942
|
+
_context9.next = 17;
|
|
943
|
+
return _context9.t0.ReplaceMetadata.call(_context9.t0, _context9.t6);
|
|
944
|
+
|
|
945
|
+
case 17:
|
|
946
|
+
case "end":
|
|
947
|
+
return _context9.stop();
|
|
948
|
+
}
|
|
804
949
|
}
|
|
805
950
|
}, _callee9, this);
|
|
806
951
|
}));
|
|
952
|
+
|
|
807
953
|
function SetProfile(_x9) {
|
|
808
954
|
return _SetProfile.apply(this, arguments);
|
|
809
955
|
}
|
|
956
|
+
|
|
810
957
|
return SetProfile;
|
|
811
958
|
}()
|
|
812
959
|
/**
|
|
@@ -821,49 +968,57 @@ var PermissionsClient = /*#__PURE__*/function () {
|
|
|
821
968
|
* @param {object} profileSpec - Specification for the profile. If not provided, profile
|
|
822
969
|
* will default to no access for both assets and offerings
|
|
823
970
|
*/
|
|
971
|
+
|
|
824
972
|
}, {
|
|
825
973
|
key: "RemoveProfile",
|
|
826
974
|
value: function () {
|
|
827
975
|
var _RemoveProfile = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee10(_ref10) {
|
|
828
976
|
var policyId, policyWriteToken, itemId, profileName;
|
|
829
977
|
return _regeneratorRuntime.wrap(function _callee10$(_context10) {
|
|
830
|
-
while (1)
|
|
831
|
-
|
|
832
|
-
|
|
833
|
-
|
|
834
|
-
|
|
835
|
-
|
|
836
|
-
|
|
837
|
-
|
|
838
|
-
|
|
839
|
-
|
|
840
|
-
|
|
841
|
-
|
|
842
|
-
|
|
843
|
-
|
|
844
|
-
|
|
845
|
-
|
|
846
|
-
|
|
847
|
-
|
|
848
|
-
|
|
849
|
-
|
|
850
|
-
|
|
851
|
-
|
|
852
|
-
|
|
853
|
-
|
|
854
|
-
|
|
855
|
-
|
|
856
|
-
|
|
857
|
-
|
|
978
|
+
while (1) {
|
|
979
|
+
switch (_context10.prev = _context10.next) {
|
|
980
|
+
case 0:
|
|
981
|
+
policyId = _ref10.policyId, policyWriteToken = _ref10.policyWriteToken, itemId = _ref10.itemId, profileName = _ref10.profileName;
|
|
982
|
+
ValidatePresence("policyId", policyId);
|
|
983
|
+
ValidatePresence("policyWriteToken", policyWriteToken);
|
|
984
|
+
ValidatePresence("itemId", itemId);
|
|
985
|
+
ValidatePresence("profileName", profileName);
|
|
986
|
+
_context10.t0 = this.client;
|
|
987
|
+
_context10.next = 8;
|
|
988
|
+
return this.client.ContentObjectLibraryId({
|
|
989
|
+
objectId: policyId
|
|
990
|
+
});
|
|
991
|
+
|
|
992
|
+
case 8:
|
|
993
|
+
_context10.t1 = _context10.sent;
|
|
994
|
+
_context10.t2 = policyId;
|
|
995
|
+
_context10.t3 = policyWriteToken;
|
|
996
|
+
_context10.t4 = UrlJoin("auth_policy_spec", itemId, "profiles", profileName);
|
|
997
|
+
_context10.t5 = {
|
|
998
|
+
libraryId: _context10.t1,
|
|
999
|
+
objectId: _context10.t2,
|
|
1000
|
+
writeToken: _context10.t3,
|
|
1001
|
+
metadataSubtree: _context10.t4
|
|
1002
|
+
};
|
|
1003
|
+
_context10.next = 15;
|
|
1004
|
+
return _context10.t0.DeleteMetadata.call(_context10.t0, _context10.t5);
|
|
1005
|
+
|
|
1006
|
+
case 15:
|
|
1007
|
+
case "end":
|
|
1008
|
+
return _context10.stop();
|
|
1009
|
+
}
|
|
858
1010
|
}
|
|
859
1011
|
}, _callee10, this);
|
|
860
1012
|
}));
|
|
1013
|
+
|
|
861
1014
|
function RemoveProfile(_x10) {
|
|
862
1015
|
return _RemoveProfile.apply(this, arguments);
|
|
863
1016
|
}
|
|
1017
|
+
|
|
864
1018
|
return RemoveProfile;
|
|
865
1019
|
}()
|
|
866
1020
|
/* Get / set / remove subject permissions */
|
|
1021
|
+
|
|
867
1022
|
/**
|
|
868
1023
|
* Retrieve the permissions for the specified item policy
|
|
869
1024
|
*
|
|
@@ -875,73 +1030,91 @@ var PermissionsClient = /*#__PURE__*/function () {
|
|
|
875
1030
|
*
|
|
876
1031
|
* @return {Promise<Array>} - The list of permissions for the specified item
|
|
877
1032
|
*/
|
|
1033
|
+
|
|
878
1034
|
}, {
|
|
879
1035
|
key: "ItemPermissions",
|
|
880
1036
|
value: function () {
|
|
881
1037
|
var _ItemPermissions = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee12(_ref11) {
|
|
882
1038
|
var _this3 = this;
|
|
1039
|
+
|
|
883
1040
|
var policyId, policyWriteToken, itemId, libraryId, permissions;
|
|
884
1041
|
return _regeneratorRuntime.wrap(function _callee12$(_context12) {
|
|
885
|
-
while (1)
|
|
886
|
-
|
|
887
|
-
|
|
888
|
-
|
|
889
|
-
|
|
890
|
-
|
|
891
|
-
|
|
892
|
-
|
|
893
|
-
|
|
894
|
-
|
|
895
|
-
|
|
896
|
-
|
|
897
|
-
|
|
898
|
-
|
|
899
|
-
|
|
900
|
-
|
|
901
|
-
|
|
902
|
-
|
|
903
|
-
|
|
904
|
-
|
|
905
|
-
|
|
906
|
-
|
|
907
|
-
|
|
908
|
-
|
|
909
|
-
|
|
910
|
-
|
|
911
|
-
|
|
912
|
-
|
|
913
|
-
|
|
914
|
-
|
|
915
|
-
|
|
916
|
-
|
|
917
|
-
|
|
918
|
-
|
|
919
|
-
|
|
920
|
-
|
|
921
|
-
|
|
922
|
-
|
|
923
|
-
|
|
924
|
-
|
|
925
|
-
|
|
926
|
-
|
|
927
|
-
|
|
928
|
-
|
|
929
|
-
|
|
930
|
-
|
|
931
|
-
|
|
932
|
-
|
|
933
|
-
|
|
934
|
-
|
|
935
|
-
|
|
936
|
-
|
|
937
|
-
|
|
938
|
-
|
|
1042
|
+
while (1) {
|
|
1043
|
+
switch (_context12.prev = _context12.next) {
|
|
1044
|
+
case 0:
|
|
1045
|
+
policyId = _ref11.policyId, policyWriteToken = _ref11.policyWriteToken, itemId = _ref11.itemId;
|
|
1046
|
+
_context12.next = 3;
|
|
1047
|
+
return this.client.ContentObjectLibraryId({
|
|
1048
|
+
objectId: policyId
|
|
1049
|
+
});
|
|
1050
|
+
|
|
1051
|
+
case 3:
|
|
1052
|
+
libraryId = _context12.sent;
|
|
1053
|
+
_context12.next = 6;
|
|
1054
|
+
return this.client.ContentObjectMetadata({
|
|
1055
|
+
libraryId: libraryId,
|
|
1056
|
+
objectId: policyId,
|
|
1057
|
+
writeToken: policyWriteToken,
|
|
1058
|
+
metadataSubtree: UrlJoin("auth_policy_spec", itemId, "permissions")
|
|
1059
|
+
});
|
|
1060
|
+
|
|
1061
|
+
case 6:
|
|
1062
|
+
_context12.t0 = _context12.sent;
|
|
1063
|
+
|
|
1064
|
+
if (_context12.t0) {
|
|
1065
|
+
_context12.next = 9;
|
|
1066
|
+
break;
|
|
1067
|
+
}
|
|
1068
|
+
|
|
1069
|
+
_context12.t0 = [];
|
|
1070
|
+
|
|
1071
|
+
case 9:
|
|
1072
|
+
permissions = _context12.t0;
|
|
1073
|
+
_context12.next = 12;
|
|
1074
|
+
return Promise.all(permissions.map( /*#__PURE__*/function () {
|
|
1075
|
+
var _ref12 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee11(permission) {
|
|
1076
|
+
return _regeneratorRuntime.wrap(function _callee11$(_context11) {
|
|
1077
|
+
while (1) {
|
|
1078
|
+
switch (_context11.prev = _context11.next) {
|
|
1079
|
+
case 0:
|
|
1080
|
+
_context11.next = 2;
|
|
1081
|
+
return _this3.FormatPermission({
|
|
1082
|
+
policyId: policyId,
|
|
1083
|
+
policyWriteToken: policyWriteToken,
|
|
1084
|
+
permission: permission
|
|
1085
|
+
});
|
|
1086
|
+
|
|
1087
|
+
case 2:
|
|
1088
|
+
return _context11.abrupt("return", _context11.sent);
|
|
1089
|
+
|
|
1090
|
+
case 3:
|
|
1091
|
+
case "end":
|
|
1092
|
+
return _context11.stop();
|
|
1093
|
+
}
|
|
1094
|
+
}
|
|
1095
|
+
}, _callee11);
|
|
1096
|
+
}));
|
|
1097
|
+
|
|
1098
|
+
return function (_x12) {
|
|
1099
|
+
return _ref12.apply(this, arguments);
|
|
1100
|
+
};
|
|
1101
|
+
}()));
|
|
1102
|
+
|
|
1103
|
+
case 12:
|
|
1104
|
+
return _context12.abrupt("return", _context12.sent);
|
|
1105
|
+
|
|
1106
|
+
case 13:
|
|
1107
|
+
case "end":
|
|
1108
|
+
return _context12.stop();
|
|
1109
|
+
}
|
|
939
1110
|
}
|
|
940
1111
|
}, _callee12, this);
|
|
941
1112
|
}));
|
|
1113
|
+
|
|
942
1114
|
function ItemPermissions(_x11) {
|
|
943
1115
|
return _ItemPermissions.apply(this, arguments);
|
|
944
1116
|
}
|
|
1117
|
+
|
|
945
1118
|
return ItemPermissions;
|
|
946
1119
|
}()
|
|
947
1120
|
/**
|
|
@@ -961,293 +1134,355 @@ var PermissionsClient = /*#__PURE__*/function () {
|
|
|
961
1134
|
* @param {string | number} start - The start time for the permission
|
|
962
1135
|
* @param {string | number} end - The end time for the permission
|
|
963
1136
|
*/
|
|
1137
|
+
|
|
964
1138
|
}, {
|
|
965
1139
|
key: "SetPermission",
|
|
966
1140
|
value: function () {
|
|
967
1141
|
var _SetPermission = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee13(_ref13) {
|
|
968
1142
|
var policyId, policyWriteToken, itemId, _ref13$subjectSource, subjectSource, _ref13$subjectType, subjectType, subjectName, subjectId, subjectNTPId, profileName, start, end, offlineDraft, policyLibraryId, existingPermissions, index, permissionSpec, subjectInfo, newMeta, userInfo, _newMeta, _userInfo;
|
|
1143
|
+
|
|
969
1144
|
return _regeneratorRuntime.wrap(function _callee13$(_context13) {
|
|
970
|
-
while (1)
|
|
971
|
-
|
|
972
|
-
|
|
973
|
-
|
|
974
|
-
|
|
975
|
-
|
|
976
|
-
|
|
977
|
-
|
|
978
|
-
|
|
979
|
-
|
|
980
|
-
|
|
981
|
-
|
|
982
|
-
|
|
983
|
-
|
|
984
|
-
|
|
985
|
-
|
|
986
|
-
|
|
987
|
-
|
|
988
|
-
|
|
989
|
-
|
|
990
|
-
|
|
991
|
-
|
|
992
|
-
|
|
993
|
-
|
|
994
|
-
|
|
995
|
-
|
|
996
|
-
|
|
997
|
-
|
|
998
|
-
|
|
999
|
-
|
|
1000
|
-
|
|
1001
|
-
|
|
1002
|
-
|
|
1003
|
-
|
|
1004
|
-
|
|
1005
|
-
|
|
1145
|
+
while (1) {
|
|
1146
|
+
switch (_context13.prev = _context13.next) {
|
|
1147
|
+
case 0:
|
|
1148
|
+
policyId = _ref13.policyId, policyWriteToken = _ref13.policyWriteToken, itemId = _ref13.itemId, _ref13$subjectSource = _ref13.subjectSource, subjectSource = _ref13$subjectSource === void 0 ? "fabric" : _ref13$subjectSource, _ref13$subjectType = _ref13.subjectType, subjectType = _ref13$subjectType === void 0 ? "group" : _ref13$subjectType, subjectName = _ref13.subjectName, subjectId = _ref13.subjectId, subjectNTPId = _ref13.subjectNTPId, profileName = _ref13.profileName, start = _ref13.start, end = _ref13.end;
|
|
1149
|
+
ValidatePresence("policyId", policyId);
|
|
1150
|
+
ValidatePresence("policyWriteToken", policyWriteToken);
|
|
1151
|
+
ValidatePresence("itemId", itemId);
|
|
1152
|
+
ValidatePresence("subjectType", subjectType);
|
|
1153
|
+
ValidatePresence("subjectSource", subjectSource);
|
|
1154
|
+
ValidatePresence("subjectId", subjectId);
|
|
1155
|
+
ValidatePresence("profileName", profileName);
|
|
1156
|
+
start = this.FormatDate(start);
|
|
1157
|
+
end = this.FormatDate(end); // Check if we have an open offline draft for this policy
|
|
1158
|
+
|
|
1159
|
+
offlineDraft = this.offline && this.drafts[policyId] != null;
|
|
1160
|
+
policyLibraryId = null;
|
|
1161
|
+
|
|
1162
|
+
if (offlineDraft) {
|
|
1163
|
+
_context13.next = 16;
|
|
1164
|
+
break;
|
|
1165
|
+
}
|
|
1166
|
+
|
|
1167
|
+
_context13.next = 15;
|
|
1168
|
+
return this.client.ContentObjectLibraryId({
|
|
1169
|
+
objectId: policyId
|
|
1170
|
+
});
|
|
1171
|
+
|
|
1172
|
+
case 15:
|
|
1173
|
+
policyLibraryId = _context13.sent;
|
|
1174
|
+
|
|
1175
|
+
case 16:
|
|
1176
|
+
// Allow address to be passed in for fabric subjects, though spec requires iusr/igrp hash
|
|
1177
|
+
if (subjectSource === "fabric") {
|
|
1178
|
+
if (subjectType === "group") {
|
|
1179
|
+
if (!subjectId.startsWith("igrp")) {
|
|
1180
|
+
subjectId = "igrp".concat(this.client.utils.AddressToHash(subjectId));
|
|
1181
|
+
}
|
|
1182
|
+
} else if (subjectType === "user") {
|
|
1183
|
+
if (!subjectId.startsWith("iusr")) {
|
|
1184
|
+
subjectId = "iusr".concat(this.client.utils.AddressToHash(subjectId));
|
|
1185
|
+
}
|
|
1006
1186
|
}
|
|
1007
1187
|
}
|
|
1008
|
-
|
|
1009
|
-
|
|
1010
|
-
|
|
1011
|
-
|
|
1012
|
-
|
|
1013
|
-
|
|
1014
|
-
|
|
1015
|
-
|
|
1016
|
-
case 21:
|
|
1017
|
-
_context13.next = 23;
|
|
1018
|
-
return this.client.ContentObjectMetadata({
|
|
1019
|
-
libraryId: policyLibraryId,
|
|
1020
|
-
objectId: policyId,
|
|
1021
|
-
writeToken: policyWriteToken,
|
|
1022
|
-
metadataSubtree: UrlJoin("auth_policy_spec", itemId)
|
|
1023
|
-
});
|
|
1024
|
-
case 23:
|
|
1025
|
-
existingPermissions = _context13.sent;
|
|
1026
|
-
case 24:
|
|
1027
|
-
if (existingPermissions) {
|
|
1028
|
-
_context13.next = 26;
|
|
1029
|
-
break;
|
|
1030
|
-
}
|
|
1031
|
-
throw Error("Unable to add permissions to uninitialized item");
|
|
1032
|
-
case 26:
|
|
1033
|
-
if (existingPermissions.profiles[profileName]) {
|
|
1034
|
-
_context13.next = 28;
|
|
1188
|
+
|
|
1189
|
+
if (!offlineDraft) {
|
|
1190
|
+
_context13.next = 21;
|
|
1191
|
+
break;
|
|
1192
|
+
}
|
|
1193
|
+
|
|
1194
|
+
existingPermissions = this.drafts[policyId].meta["auth_policy_spec"][itemId];
|
|
1195
|
+
_context13.next = 24;
|
|
1035
1196
|
break;
|
|
1036
|
-
|
|
1037
|
-
|
|
1038
|
-
|
|
1039
|
-
|
|
1040
|
-
|
|
1041
|
-
|
|
1042
|
-
|
|
1043
|
-
|
|
1197
|
+
|
|
1198
|
+
case 21:
|
|
1199
|
+
_context13.next = 23;
|
|
1200
|
+
return this.client.ContentObjectMetadata({
|
|
1201
|
+
libraryId: policyLibraryId,
|
|
1202
|
+
objectId: policyId,
|
|
1203
|
+
writeToken: policyWriteToken,
|
|
1204
|
+
metadataSubtree: UrlJoin("auth_policy_spec", itemId)
|
|
1205
|
+
});
|
|
1206
|
+
|
|
1207
|
+
case 23:
|
|
1208
|
+
existingPermissions = _context13.sent;
|
|
1209
|
+
|
|
1210
|
+
case 24:
|
|
1211
|
+
if (existingPermissions) {
|
|
1212
|
+
_context13.next = 26;
|
|
1213
|
+
break;
|
|
1044
1214
|
}
|
|
1045
|
-
|
|
1046
|
-
|
|
1047
|
-
|
|
1048
|
-
|
|
1049
|
-
|
|
1050
|
-
|
|
1051
|
-
|
|
1052
|
-
|
|
1053
|
-
|
|
1054
|
-
|
|
1055
|
-
|
|
1056
|
-
|
|
1057
|
-
|
|
1058
|
-
|
|
1059
|
-
|
|
1215
|
+
|
|
1216
|
+
throw Error("Unable to add permissions to uninitialized item");
|
|
1217
|
+
|
|
1218
|
+
case 26:
|
|
1219
|
+
if (existingPermissions.profiles[profileName]) {
|
|
1220
|
+
_context13.next = 28;
|
|
1221
|
+
break;
|
|
1222
|
+
}
|
|
1223
|
+
|
|
1224
|
+
throw Error("Profile '".concat(profileName, "' does not exist"));
|
|
1225
|
+
|
|
1226
|
+
case 28:
|
|
1227
|
+
index = existingPermissions.permissions.findIndex(function (permission) {
|
|
1228
|
+
if (subjectSource === "fabric") {
|
|
1229
|
+
return permission.subject.id === subjectId;
|
|
1230
|
+
} else {
|
|
1231
|
+
return permission.subject.oauth_id === subjectId;
|
|
1232
|
+
}
|
|
1233
|
+
});
|
|
1234
|
+
|
|
1235
|
+
if (index < 0) {
|
|
1236
|
+
index = existingPermissions.permissions.length;
|
|
1237
|
+
}
|
|
1238
|
+
|
|
1239
|
+
permissionSpec = {
|
|
1240
|
+
profile: profileName
|
|
1241
|
+
};
|
|
1242
|
+
|
|
1243
|
+
if (start) {
|
|
1244
|
+
permissionSpec.start = start;
|
|
1245
|
+
}
|
|
1246
|
+
|
|
1247
|
+
if (end) {
|
|
1248
|
+
permissionSpec.end = end;
|
|
1249
|
+
}
|
|
1250
|
+
|
|
1251
|
+
if (!(subjectSource === "fabric")) {
|
|
1252
|
+
_context13.next = 53;
|
|
1253
|
+
break;
|
|
1254
|
+
}
|
|
1255
|
+
|
|
1256
|
+
if (!(subjectType === "group")) {
|
|
1257
|
+
_context13.next = 38;
|
|
1258
|
+
break;
|
|
1259
|
+
}
|
|
1260
|
+
|
|
1261
|
+
subjectInfo = {
|
|
1262
|
+
id: subjectId,
|
|
1263
|
+
type: "group"
|
|
1264
|
+
};
|
|
1265
|
+
_context13.next = 51;
|
|
1060
1266
|
break;
|
|
1061
|
-
|
|
1062
|
-
|
|
1063
|
-
|
|
1267
|
+
|
|
1268
|
+
case 38:
|
|
1269
|
+
if (!(subjectType === "user")) {
|
|
1270
|
+
_context13.next = 42;
|
|
1271
|
+
break;
|
|
1272
|
+
}
|
|
1273
|
+
|
|
1274
|
+
subjectInfo = {
|
|
1275
|
+
id: subjectId,
|
|
1276
|
+
type: "user"
|
|
1277
|
+
};
|
|
1278
|
+
_context13.next = 51;
|
|
1064
1279
|
break;
|
|
1065
|
-
|
|
1066
|
-
|
|
1067
|
-
|
|
1068
|
-
|
|
1069
|
-
|
|
1070
|
-
|
|
1071
|
-
|
|
1072
|
-
|
|
1073
|
-
|
|
1074
|
-
|
|
1280
|
+
|
|
1281
|
+
case 42:
|
|
1282
|
+
if (!(subjectType === "ntp")) {
|
|
1283
|
+
_context13.next = 46;
|
|
1284
|
+
break;
|
|
1285
|
+
}
|
|
1286
|
+
|
|
1287
|
+
subjectInfo = {
|
|
1288
|
+
id: subjectId,
|
|
1289
|
+
type: "otp"
|
|
1290
|
+
};
|
|
1291
|
+
_context13.next = 51;
|
|
1075
1292
|
break;
|
|
1076
|
-
|
|
1077
|
-
|
|
1078
|
-
|
|
1079
|
-
|
|
1080
|
-
|
|
1081
|
-
|
|
1082
|
-
|
|
1083
|
-
|
|
1084
|
-
|
|
1085
|
-
|
|
1293
|
+
|
|
1294
|
+
case 46:
|
|
1295
|
+
if (!(subjectType === "ntp_subject")) {
|
|
1296
|
+
_context13.next = 50;
|
|
1297
|
+
break;
|
|
1298
|
+
}
|
|
1299
|
+
|
|
1300
|
+
subjectInfo = {
|
|
1301
|
+
id: subjectId,
|
|
1302
|
+
otp_id: subjectNTPId,
|
|
1303
|
+
type: "otp_subject"
|
|
1304
|
+
};
|
|
1305
|
+
_context13.next = 51;
|
|
1086
1306
|
break;
|
|
1087
|
-
|
|
1088
|
-
|
|
1089
|
-
|
|
1090
|
-
|
|
1091
|
-
|
|
1092
|
-
|
|
1093
|
-
break;
|
|
1094
|
-
case 46:
|
|
1095
|
-
if (!(subjectType === "ntp_subject")) {
|
|
1096
|
-
_context13.next = 50;
|
|
1307
|
+
|
|
1308
|
+
case 50:
|
|
1309
|
+
throw Error("Invalid subject type: ".concat(subjectType));
|
|
1310
|
+
|
|
1311
|
+
case 51:
|
|
1312
|
+
_context13.next = 66;
|
|
1097
1313
|
break;
|
|
1098
|
-
|
|
1099
|
-
|
|
1100
|
-
|
|
1101
|
-
|
|
1102
|
-
|
|
1103
|
-
|
|
1104
|
-
|
|
1105
|
-
|
|
1106
|
-
|
|
1107
|
-
|
|
1108
|
-
|
|
1109
|
-
|
|
1110
|
-
|
|
1111
|
-
|
|
1112
|
-
|
|
1113
|
-
|
|
1314
|
+
|
|
1315
|
+
case 53:
|
|
1316
|
+
if (!(subjectSource === "oauth")) {
|
|
1317
|
+
_context13.next = 65;
|
|
1318
|
+
break;
|
|
1319
|
+
}
|
|
1320
|
+
|
|
1321
|
+
if (!(subjectType === "group")) {
|
|
1322
|
+
_context13.next = 58;
|
|
1323
|
+
break;
|
|
1324
|
+
}
|
|
1325
|
+
|
|
1326
|
+
subjectInfo = {
|
|
1327
|
+
id: subjectName,
|
|
1328
|
+
oauth_id: subjectId,
|
|
1329
|
+
type: "oauth_group"
|
|
1330
|
+
};
|
|
1331
|
+
_context13.next = 63;
|
|
1114
1332
|
break;
|
|
1115
|
-
|
|
1116
|
-
|
|
1117
|
-
|
|
1333
|
+
|
|
1334
|
+
case 58:
|
|
1335
|
+
if (!(subjectType === "user")) {
|
|
1336
|
+
_context13.next = 62;
|
|
1337
|
+
break;
|
|
1338
|
+
}
|
|
1339
|
+
|
|
1340
|
+
subjectInfo = {
|
|
1341
|
+
id: subjectName,
|
|
1342
|
+
oauth_id: subjectId,
|
|
1343
|
+
type: "oauth_user"
|
|
1344
|
+
};
|
|
1345
|
+
_context13.next = 63;
|
|
1118
1346
|
break;
|
|
1119
|
-
|
|
1120
|
-
|
|
1121
|
-
|
|
1122
|
-
|
|
1123
|
-
|
|
1124
|
-
|
|
1125
|
-
_context13.next = 63;
|
|
1126
|
-
break;
|
|
1127
|
-
case 58:
|
|
1128
|
-
if (!(subjectType === "user")) {
|
|
1129
|
-
_context13.next = 62;
|
|
1347
|
+
|
|
1348
|
+
case 62:
|
|
1349
|
+
throw Error("Invalid subject type: ".concat(subjectType));
|
|
1350
|
+
|
|
1351
|
+
case 63:
|
|
1352
|
+
_context13.next = 66;
|
|
1130
1353
|
break;
|
|
1131
|
-
|
|
1132
|
-
|
|
1133
|
-
|
|
1134
|
-
|
|
1135
|
-
|
|
1136
|
-
|
|
1137
|
-
|
|
1138
|
-
|
|
1139
|
-
|
|
1140
|
-
|
|
1141
|
-
|
|
1142
|
-
|
|
1143
|
-
|
|
1144
|
-
case 65:
|
|
1145
|
-
throw Error("Invalid subject source: ".concat(subjectSource));
|
|
1146
|
-
case 66:
|
|
1147
|
-
permissionSpec.subject = subjectInfo;
|
|
1148
|
-
existingPermissions.permissions[index] = permissionSpec;
|
|
1149
|
-
if (offlineDraft) {
|
|
1354
|
+
|
|
1355
|
+
case 65:
|
|
1356
|
+
throw Error("Invalid subject source: ".concat(subjectSource));
|
|
1357
|
+
|
|
1358
|
+
case 66:
|
|
1359
|
+
permissionSpec.subject = subjectInfo;
|
|
1360
|
+
existingPermissions.permissions[index] = permissionSpec;
|
|
1361
|
+
|
|
1362
|
+
if (offlineDraft) {
|
|
1363
|
+
_context13.next = 71;
|
|
1364
|
+
break;
|
|
1365
|
+
}
|
|
1366
|
+
|
|
1150
1367
|
_context13.next = 71;
|
|
1151
|
-
|
|
1152
|
-
|
|
1153
|
-
|
|
1154
|
-
|
|
1155
|
-
|
|
1156
|
-
|
|
1157
|
-
|
|
1158
|
-
|
|
1159
|
-
|
|
1160
|
-
|
|
1161
|
-
|
|
1162
|
-
|
|
1163
|
-
|
|
1164
|
-
|
|
1165
|
-
|
|
1166
|
-
|
|
1167
|
-
|
|
1168
|
-
|
|
1169
|
-
|
|
1170
|
-
|
|
1171
|
-
|
|
1172
|
-
|
|
1173
|
-
|
|
1174
|
-
|
|
1175
|
-
|
|
1176
|
-
break;
|
|
1177
|
-
case 77:
|
|
1178
|
-
_context13.next = 79;
|
|
1179
|
-
return this.client.ContentObjectMetadata({
|
|
1180
|
-
libraryId: policyLibraryId,
|
|
1181
|
-
objectId: policyId,
|
|
1182
|
-
writeToken: policyWriteToken,
|
|
1183
|
-
metadataSubtree: UrlJoin("auth_policy_settings", "fabric_users", this.client.utils.HashToAddress(subjectId))
|
|
1184
|
-
});
|
|
1185
|
-
case 79:
|
|
1186
|
-
userInfo = _context13.sent;
|
|
1187
|
-
if (userInfo) {
|
|
1368
|
+
return this.client.ReplaceMetadata({
|
|
1369
|
+
libraryId: policyLibraryId,
|
|
1370
|
+
objectId: policyId,
|
|
1371
|
+
writeToken: policyWriteToken,
|
|
1372
|
+
metadataSubtree: UrlJoin("auth_policy_spec", itemId, "permissions"),
|
|
1373
|
+
metadata: existingPermissions.permissions
|
|
1374
|
+
});
|
|
1375
|
+
|
|
1376
|
+
case 71:
|
|
1377
|
+
if (!(subjectSource === "fabric" && subjectType === "user")) {
|
|
1378
|
+
_context13.next = 85;
|
|
1379
|
+
break;
|
|
1380
|
+
}
|
|
1381
|
+
|
|
1382
|
+
newMeta = {
|
|
1383
|
+
address: this.client.utils.HashToAddress(subjectId),
|
|
1384
|
+
name: subjectName
|
|
1385
|
+
};
|
|
1386
|
+
|
|
1387
|
+
if (!offlineDraft) {
|
|
1388
|
+
_context13.next = 77;
|
|
1389
|
+
break;
|
|
1390
|
+
}
|
|
1391
|
+
|
|
1392
|
+
this.drafts[policyId].meta["auth_policy_settings"]["fabric_users"][this.client.utils.HashToAddress(subjectId)] = newMeta;
|
|
1188
1393
|
_context13.next = 83;
|
|
1189
1394
|
break;
|
|
1190
|
-
|
|
1191
|
-
|
|
1192
|
-
|
|
1193
|
-
|
|
1194
|
-
|
|
1195
|
-
|
|
1196
|
-
|
|
1197
|
-
|
|
1198
|
-
|
|
1199
|
-
|
|
1200
|
-
|
|
1201
|
-
|
|
1202
|
-
|
|
1203
|
-
|
|
1395
|
+
|
|
1396
|
+
case 77:
|
|
1397
|
+
_context13.next = 79;
|
|
1398
|
+
return this.client.ContentObjectMetadata({
|
|
1399
|
+
libraryId: policyLibraryId,
|
|
1400
|
+
objectId: policyId,
|
|
1401
|
+
writeToken: policyWriteToken,
|
|
1402
|
+
metadataSubtree: UrlJoin("auth_policy_settings", "fabric_users", this.client.utils.HashToAddress(subjectId))
|
|
1403
|
+
});
|
|
1404
|
+
|
|
1405
|
+
case 79:
|
|
1406
|
+
userInfo = _context13.sent;
|
|
1407
|
+
|
|
1408
|
+
if (userInfo) {
|
|
1409
|
+
_context13.next = 83;
|
|
1410
|
+
break;
|
|
1411
|
+
}
|
|
1412
|
+
|
|
1413
|
+
_context13.next = 83;
|
|
1414
|
+
return this.client.ReplaceMetadata({
|
|
1415
|
+
libraryId: policyLibraryId,
|
|
1416
|
+
objectId: policyId,
|
|
1417
|
+
writeToken: policyWriteToken,
|
|
1418
|
+
metadataSubtree: UrlJoin("auth_policy_settings", "fabric_users", this.client.utils.HashToAddress(subjectId)),
|
|
1419
|
+
metadata: newMeta
|
|
1420
|
+
});
|
|
1421
|
+
|
|
1422
|
+
case 83:
|
|
1204
1423
|
_context13.next = 97;
|
|
1205
1424
|
break;
|
|
1206
|
-
|
|
1207
|
-
|
|
1208
|
-
|
|
1209
|
-
|
|
1210
|
-
|
|
1211
|
-
|
|
1212
|
-
|
|
1213
|
-
|
|
1214
|
-
|
|
1215
|
-
|
|
1216
|
-
|
|
1217
|
-
|
|
1218
|
-
|
|
1219
|
-
|
|
1220
|
-
|
|
1221
|
-
|
|
1222
|
-
|
|
1223
|
-
|
|
1224
|
-
|
|
1225
|
-
|
|
1226
|
-
metadataSubtree: UrlJoin("auth_policy_settings", "ntp_instances", subjectId)
|
|
1227
|
-
});
|
|
1228
|
-
case 93:
|
|
1229
|
-
_userInfo = _context13.sent;
|
|
1230
|
-
if (_userInfo) {
|
|
1425
|
+
|
|
1426
|
+
case 85:
|
|
1427
|
+
if (!(subjectSource === "fabric" && subjectType === "ntp")) {
|
|
1428
|
+
_context13.next = 97;
|
|
1429
|
+
break;
|
|
1430
|
+
}
|
|
1431
|
+
|
|
1432
|
+
_newMeta = {
|
|
1433
|
+
address: subjectId,
|
|
1434
|
+
ntpId: subjectId,
|
|
1435
|
+
name: subjectName,
|
|
1436
|
+
type: "ntpInstance"
|
|
1437
|
+
};
|
|
1438
|
+
|
|
1439
|
+
if (!offlineDraft) {
|
|
1440
|
+
_context13.next = 91;
|
|
1441
|
+
break;
|
|
1442
|
+
}
|
|
1443
|
+
|
|
1444
|
+
this.drafts[policyId].meta["auth_policy_settings"]["ntp_instances"][subjectId] = _newMeta;
|
|
1231
1445
|
_context13.next = 97;
|
|
1232
1446
|
break;
|
|
1233
|
-
|
|
1234
|
-
|
|
1235
|
-
|
|
1236
|
-
|
|
1237
|
-
|
|
1238
|
-
|
|
1239
|
-
|
|
1240
|
-
|
|
1241
|
-
|
|
1242
|
-
|
|
1243
|
-
|
|
1244
|
-
|
|
1447
|
+
|
|
1448
|
+
case 91:
|
|
1449
|
+
_context13.next = 93;
|
|
1450
|
+
return this.client.ContentObjectMetadata({
|
|
1451
|
+
libraryId: policyLibraryId,
|
|
1452
|
+
objectId: policyId,
|
|
1453
|
+
writeToken: policyWriteToken,
|
|
1454
|
+
metadataSubtree: UrlJoin("auth_policy_settings", "ntp_instances", subjectId)
|
|
1455
|
+
});
|
|
1456
|
+
|
|
1457
|
+
case 93:
|
|
1458
|
+
_userInfo = _context13.sent;
|
|
1459
|
+
|
|
1460
|
+
if (_userInfo) {
|
|
1461
|
+
_context13.next = 97;
|
|
1462
|
+
break;
|
|
1463
|
+
}
|
|
1464
|
+
|
|
1465
|
+
_context13.next = 97;
|
|
1466
|
+
return this.client.ReplaceMetadata({
|
|
1467
|
+
libraryId: policyLibraryId,
|
|
1468
|
+
objectId: policyId,
|
|
1469
|
+
writeToken: policyWriteToken,
|
|
1470
|
+
metadataSubtree: UrlJoin("auth_policy_settings", "ntp_instances", subjectId),
|
|
1471
|
+
metadata: _newMeta
|
|
1472
|
+
});
|
|
1473
|
+
|
|
1474
|
+
case 97:
|
|
1475
|
+
case "end":
|
|
1476
|
+
return _context13.stop();
|
|
1477
|
+
}
|
|
1245
1478
|
}
|
|
1246
1479
|
}, _callee13, this);
|
|
1247
1480
|
}));
|
|
1481
|
+
|
|
1248
1482
|
function SetPermission(_x13) {
|
|
1249
1483
|
return _SetPermission.apply(this, arguments);
|
|
1250
1484
|
}
|
|
1485
|
+
|
|
1251
1486
|
return SetPermission;
|
|
1252
1487
|
}()
|
|
1253
1488
|
/**
|
|
@@ -1260,98 +1495,121 @@ var PermissionsClient = /*#__PURE__*/function () {
|
|
|
1260
1495
|
* @param {string} itemId - Object ID of the item
|
|
1261
1496
|
* @param {string} subjectId - The ID of the subject
|
|
1262
1497
|
*/
|
|
1498
|
+
|
|
1263
1499
|
}, {
|
|
1264
1500
|
key: "RemovePermission",
|
|
1265
1501
|
value: function () {
|
|
1266
1502
|
var _RemovePermission = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee15(_ref14) {
|
|
1267
1503
|
var _this4 = this;
|
|
1504
|
+
|
|
1268
1505
|
var policyId, policyWriteToken, itemId, subjectId, policyLibraryId, permissions, id;
|
|
1269
1506
|
return _regeneratorRuntime.wrap(function _callee15$(_context15) {
|
|
1270
|
-
while (1)
|
|
1271
|
-
|
|
1272
|
-
|
|
1273
|
-
|
|
1274
|
-
|
|
1275
|
-
|
|
1276
|
-
|
|
1277
|
-
|
|
1278
|
-
|
|
1279
|
-
|
|
1280
|
-
|
|
1281
|
-
|
|
1282
|
-
|
|
1283
|
-
|
|
1284
|
-
|
|
1285
|
-
|
|
1286
|
-
|
|
1287
|
-
|
|
1288
|
-
|
|
1289
|
-
|
|
1290
|
-
|
|
1291
|
-
|
|
1292
|
-
|
|
1293
|
-
|
|
1294
|
-
|
|
1295
|
-
|
|
1296
|
-
|
|
1297
|
-
|
|
1298
|
-
|
|
1507
|
+
while (1) {
|
|
1508
|
+
switch (_context15.prev = _context15.next) {
|
|
1509
|
+
case 0:
|
|
1510
|
+
policyId = _ref14.policyId, policyWriteToken = _ref14.policyWriteToken, itemId = _ref14.itemId, subjectId = _ref14.subjectId;
|
|
1511
|
+
ValidatePresence("policyId", policyId);
|
|
1512
|
+
ValidatePresence("policyWriteToken", policyWriteToken);
|
|
1513
|
+
ValidatePresence("itemId", itemId);
|
|
1514
|
+
ValidatePresence("subjectId", subjectId);
|
|
1515
|
+
_context15.next = 7;
|
|
1516
|
+
return this.client.ContentObjectLibraryId({
|
|
1517
|
+
objectId: policyId
|
|
1518
|
+
});
|
|
1519
|
+
|
|
1520
|
+
case 7:
|
|
1521
|
+
policyLibraryId = _context15.sent;
|
|
1522
|
+
_context15.next = 10;
|
|
1523
|
+
return this.client.ContentObjectMetadata({
|
|
1524
|
+
libraryId: policyLibraryId,
|
|
1525
|
+
objectId: policyId,
|
|
1526
|
+
writeToken: policyWriteToken,
|
|
1527
|
+
metadataSubtree: UrlJoin("auth_policy_spec", itemId, "permissions")
|
|
1528
|
+
});
|
|
1529
|
+
|
|
1530
|
+
case 10:
|
|
1531
|
+
permissions = _context15.sent;
|
|
1532
|
+
|
|
1533
|
+
if (permissions) {
|
|
1534
|
+
_context15.next = 13;
|
|
1535
|
+
break;
|
|
1536
|
+
}
|
|
1537
|
+
|
|
1538
|
+
return _context15.abrupt("return");
|
|
1539
|
+
|
|
1540
|
+
case 13:
|
|
1541
|
+
if (!subjectId.startsWith("0x")) {
|
|
1542
|
+
_context15.next = 23;
|
|
1543
|
+
break;
|
|
1544
|
+
}
|
|
1545
|
+
|
|
1546
|
+
id = this.client.utils.AddressToObjectId(subjectId);
|
|
1547
|
+
_context15.next = 17;
|
|
1548
|
+
return this.client.AccessType({
|
|
1549
|
+
id: id
|
|
1550
|
+
});
|
|
1551
|
+
|
|
1552
|
+
case 17:
|
|
1553
|
+
_context15.t0 = _context15.sent;
|
|
1554
|
+
|
|
1555
|
+
if (!(_context15.t0 === "group")) {
|
|
1556
|
+
_context15.next = 22;
|
|
1557
|
+
break;
|
|
1558
|
+
}
|
|
1559
|
+
|
|
1560
|
+
subjectId = "igrp".concat(this.client.utils.AddressToHash(subjectId));
|
|
1299
1561
|
_context15.next = 23;
|
|
1300
1562
|
break;
|
|
1301
|
-
|
|
1302
|
-
|
|
1303
|
-
|
|
1304
|
-
|
|
1305
|
-
|
|
1306
|
-
|
|
1307
|
-
|
|
1308
|
-
|
|
1309
|
-
|
|
1310
|
-
|
|
1311
|
-
|
|
1312
|
-
|
|
1313
|
-
|
|
1314
|
-
|
|
1315
|
-
|
|
1316
|
-
|
|
1317
|
-
|
|
1318
|
-
|
|
1319
|
-
|
|
1320
|
-
|
|
1321
|
-
|
|
1322
|
-
|
|
1323
|
-
|
|
1324
|
-
|
|
1325
|
-
|
|
1326
|
-
|
|
1327
|
-
|
|
1563
|
+
|
|
1564
|
+
case 22:
|
|
1565
|
+
subjectId = "iusr".concat(this.client.utils.AddressToHash(subjectId));
|
|
1566
|
+
|
|
1567
|
+
case 23:
|
|
1568
|
+
_context15.next = 25;
|
|
1569
|
+
return Promise.all(permissions.map( /*#__PURE__*/function () {
|
|
1570
|
+
var _ref15 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee14(permission, index) {
|
|
1571
|
+
return _regeneratorRuntime.wrap(function _callee14$(_context14) {
|
|
1572
|
+
while (1) {
|
|
1573
|
+
switch (_context14.prev = _context14.next) {
|
|
1574
|
+
case 0:
|
|
1575
|
+
if (!(permission.subject.id === subjectId || permission.subject.oauth_id === subjectId)) {
|
|
1576
|
+
_context14.next = 3;
|
|
1577
|
+
break;
|
|
1578
|
+
}
|
|
1579
|
+
|
|
1580
|
+
_context14.next = 3;
|
|
1581
|
+
return _this4.client.DeleteMetadata({
|
|
1582
|
+
libraryId: policyLibraryId,
|
|
1583
|
+
objectId: policyId,
|
|
1584
|
+
writeToken: policyWriteToken,
|
|
1585
|
+
metadataSubtree: UrlJoin("auth_policy_spec", itemId, "permissions", index.toString())
|
|
1586
|
+
});
|
|
1587
|
+
|
|
1588
|
+
case 3:
|
|
1589
|
+
case "end":
|
|
1590
|
+
return _context14.stop();
|
|
1328
1591
|
}
|
|
1329
|
-
|
|
1330
|
-
|
|
1331
|
-
|
|
1332
|
-
|
|
1333
|
-
|
|
1334
|
-
|
|
1335
|
-
|
|
1336
|
-
|
|
1337
|
-
|
|
1338
|
-
|
|
1339
|
-
|
|
1340
|
-
|
|
1341
|
-
|
|
1342
|
-
return function (_x15, _x16) {
|
|
1343
|
-
return _ref15.apply(this, arguments);
|
|
1344
|
-
};
|
|
1345
|
-
}()));
|
|
1346
|
-
case 25:
|
|
1347
|
-
case "end":
|
|
1348
|
-
return _context15.stop();
|
|
1592
|
+
}
|
|
1593
|
+
}, _callee14);
|
|
1594
|
+
}));
|
|
1595
|
+
|
|
1596
|
+
return function (_x15, _x16) {
|
|
1597
|
+
return _ref15.apply(this, arguments);
|
|
1598
|
+
};
|
|
1599
|
+
}()));
|
|
1600
|
+
|
|
1601
|
+
case 25:
|
|
1602
|
+
case "end":
|
|
1603
|
+
return _context15.stop();
|
|
1604
|
+
}
|
|
1349
1605
|
}
|
|
1350
1606
|
}, _callee15, this);
|
|
1351
1607
|
}));
|
|
1608
|
+
|
|
1352
1609
|
function RemovePermission(_x14) {
|
|
1353
1610
|
return _RemovePermission.apply(this, arguments);
|
|
1354
1611
|
}
|
|
1612
|
+
|
|
1355
1613
|
return RemovePermission;
|
|
1356
1614
|
}()
|
|
1357
1615
|
/**
|
|
@@ -1365,113 +1623,139 @@ var PermissionsClient = /*#__PURE__*/function () {
|
|
|
1365
1623
|
*
|
|
1366
1624
|
* @returns {Object} - All permissions pertaining to the given subject. Format of result for each item is identical to the format of `ItemPolicy`
|
|
1367
1625
|
*/
|
|
1626
|
+
|
|
1368
1627
|
}, {
|
|
1369
1628
|
key: "SubjectPermissions",
|
|
1370
1629
|
value: function () {
|
|
1371
1630
|
var _SubjectPermissions = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee17(_ref16) {
|
|
1372
1631
|
var _this5 = this;
|
|
1632
|
+
|
|
1373
1633
|
var policyId, policyWriteToken, subjectId, id, policyLibraryId, policy, allSubjectPermissions, _i, _Object$keys, itemId, itemPermissions, subjectPermissions;
|
|
1634
|
+
|
|
1374
1635
|
return _regeneratorRuntime.wrap(function _callee17$(_context17) {
|
|
1375
|
-
while (1)
|
|
1376
|
-
|
|
1377
|
-
|
|
1378
|
-
|
|
1379
|
-
|
|
1380
|
-
|
|
1381
|
-
|
|
1382
|
-
|
|
1636
|
+
while (1) {
|
|
1637
|
+
switch (_context17.prev = _context17.next) {
|
|
1638
|
+
case 0:
|
|
1639
|
+
policyId = _ref16.policyId, policyWriteToken = _ref16.policyWriteToken, subjectId = _ref16.subjectId;
|
|
1640
|
+
ValidatePresence("policyId", policyId);
|
|
1641
|
+
ValidatePresence("subjectId", subjectId); // Convert address to appropriate ID
|
|
1642
|
+
|
|
1643
|
+
if (!subjectId.startsWith("0x")) {
|
|
1644
|
+
_context17.next = 13;
|
|
1645
|
+
break;
|
|
1646
|
+
}
|
|
1647
|
+
|
|
1648
|
+
id = this.client.utils.AddressToObjectId(subjectId);
|
|
1649
|
+
_context17.next = 7;
|
|
1650
|
+
return this.client.AccessType({
|
|
1651
|
+
id: id
|
|
1652
|
+
});
|
|
1653
|
+
|
|
1654
|
+
case 7:
|
|
1655
|
+
_context17.t0 = _context17.sent;
|
|
1656
|
+
|
|
1657
|
+
if (!(_context17.t0 === "group")) {
|
|
1658
|
+
_context17.next = 12;
|
|
1659
|
+
break;
|
|
1660
|
+
}
|
|
1661
|
+
|
|
1662
|
+
subjectId = "igrp".concat(this.client.utils.AddressToHash(subjectId));
|
|
1383
1663
|
_context17.next = 13;
|
|
1384
1664
|
break;
|
|
1385
|
-
|
|
1386
|
-
|
|
1387
|
-
|
|
1388
|
-
|
|
1389
|
-
|
|
1390
|
-
|
|
1391
|
-
|
|
1392
|
-
|
|
1393
|
-
if (!(_context17.t0 === "group")) {
|
|
1394
|
-
_context17.next = 12;
|
|
1395
|
-
break;
|
|
1396
|
-
}
|
|
1397
|
-
subjectId = "igrp".concat(this.client.utils.AddressToHash(subjectId));
|
|
1398
|
-
_context17.next = 13;
|
|
1399
|
-
break;
|
|
1400
|
-
case 12:
|
|
1401
|
-
subjectId = "iusr".concat(this.client.utils.AddressToHash(subjectId));
|
|
1402
|
-
case 13:
|
|
1403
|
-
_context17.next = 15;
|
|
1404
|
-
return this.client.ContentObjectLibraryId({
|
|
1405
|
-
objectId: policyId
|
|
1406
|
-
});
|
|
1407
|
-
case 15:
|
|
1408
|
-
policyLibraryId = _context17.sent;
|
|
1409
|
-
_context17.next = 18;
|
|
1410
|
-
return this.client.ContentObjectMetadata({
|
|
1411
|
-
libraryId: policyLibraryId,
|
|
1412
|
-
objectId: policyId,
|
|
1413
|
-
writeToken: policyWriteToken,
|
|
1414
|
-
metadataSubtree: UrlJoin("auth_policy_spec")
|
|
1415
|
-
});
|
|
1416
|
-
case 18:
|
|
1417
|
-
policy = _context17.sent;
|
|
1418
|
-
allSubjectPermissions = {};
|
|
1419
|
-
_i = 0, _Object$keys = Object.keys(policy);
|
|
1420
|
-
case 21:
|
|
1421
|
-
if (!(_i < _Object$keys.length)) {
|
|
1422
|
-
_context17.next = 31;
|
|
1423
|
-
break;
|
|
1424
|
-
}
|
|
1425
|
-
itemId = _Object$keys[_i];
|
|
1426
|
-
itemPermissions = policy[itemId].permissions || [];
|
|
1427
|
-
_context17.next = 26;
|
|
1428
|
-
return Promise.all(itemPermissions.filter(function (permission) {
|
|
1429
|
-
return (permission.subject || {}).oauth_id === subjectId || (permission.subject || {}).id === subjectId;
|
|
1430
|
-
}).map( /*#__PURE__*/function () {
|
|
1431
|
-
var _ref17 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee16(permission) {
|
|
1432
|
-
return _regeneratorRuntime.wrap(function _callee16$(_context16) {
|
|
1433
|
-
while (1) switch (_context16.prev = _context16.next) {
|
|
1434
|
-
case 0:
|
|
1435
|
-
_context16.next = 2;
|
|
1436
|
-
return _this5.FormatPermission({
|
|
1437
|
-
policyId: policyId,
|
|
1438
|
-
policyWriteToken: policyWriteToken,
|
|
1439
|
-
permission: permission
|
|
1440
|
-
});
|
|
1441
|
-
case 2:
|
|
1442
|
-
return _context16.abrupt("return", _context16.sent);
|
|
1443
|
-
case 3:
|
|
1444
|
-
case "end":
|
|
1445
|
-
return _context16.stop();
|
|
1446
|
-
}
|
|
1447
|
-
}, _callee16);
|
|
1448
|
-
}));
|
|
1449
|
-
return function (_x18) {
|
|
1450
|
-
return _ref17.apply(this, arguments);
|
|
1451
|
-
};
|
|
1452
|
-
}()));
|
|
1453
|
-
case 26:
|
|
1454
|
-
subjectPermissions = _context17.sent;
|
|
1455
|
-
if (subjectPermissions.length > 0) {
|
|
1456
|
-
allSubjectPermissions[itemId] = _objectSpread(_objectSpread({}, policy[itemId]), {}, {
|
|
1457
|
-
permissions: subjectPermissions
|
|
1665
|
+
|
|
1666
|
+
case 12:
|
|
1667
|
+
subjectId = "iusr".concat(this.client.utils.AddressToHash(subjectId));
|
|
1668
|
+
|
|
1669
|
+
case 13:
|
|
1670
|
+
_context17.next = 15;
|
|
1671
|
+
return this.client.ContentObjectLibraryId({
|
|
1672
|
+
objectId: policyId
|
|
1458
1673
|
});
|
|
1459
|
-
|
|
1460
|
-
|
|
1461
|
-
|
|
1462
|
-
|
|
1463
|
-
|
|
1464
|
-
|
|
1465
|
-
|
|
1466
|
-
|
|
1467
|
-
|
|
1468
|
-
|
|
1674
|
+
|
|
1675
|
+
case 15:
|
|
1676
|
+
policyLibraryId = _context17.sent;
|
|
1677
|
+
_context17.next = 18;
|
|
1678
|
+
return this.client.ContentObjectMetadata({
|
|
1679
|
+
libraryId: policyLibraryId,
|
|
1680
|
+
objectId: policyId,
|
|
1681
|
+
writeToken: policyWriteToken,
|
|
1682
|
+
metadataSubtree: UrlJoin("auth_policy_spec")
|
|
1683
|
+
});
|
|
1684
|
+
|
|
1685
|
+
case 18:
|
|
1686
|
+
policy = _context17.sent;
|
|
1687
|
+
allSubjectPermissions = {};
|
|
1688
|
+
_i = 0, _Object$keys = Object.keys(policy);
|
|
1689
|
+
|
|
1690
|
+
case 21:
|
|
1691
|
+
if (!(_i < _Object$keys.length)) {
|
|
1692
|
+
_context17.next = 31;
|
|
1693
|
+
break;
|
|
1694
|
+
}
|
|
1695
|
+
|
|
1696
|
+
itemId = _Object$keys[_i];
|
|
1697
|
+
itemPermissions = policy[itemId].permissions || [];
|
|
1698
|
+
_context17.next = 26;
|
|
1699
|
+
return Promise.all(itemPermissions.filter(function (permission) {
|
|
1700
|
+
return (permission.subject || {}).oauth_id === subjectId || (permission.subject || {}).id === subjectId;
|
|
1701
|
+
}).map( /*#__PURE__*/function () {
|
|
1702
|
+
var _ref17 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee16(permission) {
|
|
1703
|
+
return _regeneratorRuntime.wrap(function _callee16$(_context16) {
|
|
1704
|
+
while (1) {
|
|
1705
|
+
switch (_context16.prev = _context16.next) {
|
|
1706
|
+
case 0:
|
|
1707
|
+
_context16.next = 2;
|
|
1708
|
+
return _this5.FormatPermission({
|
|
1709
|
+
policyId: policyId,
|
|
1710
|
+
policyWriteToken: policyWriteToken,
|
|
1711
|
+
permission: permission
|
|
1712
|
+
});
|
|
1713
|
+
|
|
1714
|
+
case 2:
|
|
1715
|
+
return _context16.abrupt("return", _context16.sent);
|
|
1716
|
+
|
|
1717
|
+
case 3:
|
|
1718
|
+
case "end":
|
|
1719
|
+
return _context16.stop();
|
|
1720
|
+
}
|
|
1721
|
+
}
|
|
1722
|
+
}, _callee16);
|
|
1723
|
+
}));
|
|
1724
|
+
|
|
1725
|
+
return function (_x18) {
|
|
1726
|
+
return _ref17.apply(this, arguments);
|
|
1727
|
+
};
|
|
1728
|
+
}()));
|
|
1729
|
+
|
|
1730
|
+
case 26:
|
|
1731
|
+
subjectPermissions = _context17.sent;
|
|
1732
|
+
|
|
1733
|
+
if (subjectPermissions.length > 0) {
|
|
1734
|
+
allSubjectPermissions[itemId] = _objectSpread(_objectSpread({}, policy[itemId]), {}, {
|
|
1735
|
+
permissions: subjectPermissions
|
|
1736
|
+
});
|
|
1737
|
+
}
|
|
1738
|
+
|
|
1739
|
+
case 28:
|
|
1740
|
+
_i++;
|
|
1741
|
+
_context17.next = 21;
|
|
1742
|
+
break;
|
|
1743
|
+
|
|
1744
|
+
case 31:
|
|
1745
|
+
return _context17.abrupt("return", allSubjectPermissions);
|
|
1746
|
+
|
|
1747
|
+
case 32:
|
|
1748
|
+
case "end":
|
|
1749
|
+
return _context17.stop();
|
|
1750
|
+
}
|
|
1469
1751
|
}
|
|
1470
1752
|
}, _callee17, this);
|
|
1471
1753
|
}));
|
|
1754
|
+
|
|
1472
1755
|
function SubjectPermissions(_x17) {
|
|
1473
1756
|
return _SubjectPermissions.apply(this, arguments);
|
|
1474
1757
|
}
|
|
1758
|
+
|
|
1475
1759
|
return SubjectPermissions;
|
|
1476
1760
|
}()
|
|
1477
1761
|
/**
|
|
@@ -1483,62 +1767,76 @@ var PermissionsClient = /*#__PURE__*/function () {
|
|
|
1483
1767
|
* @param {string} policyWriteToken - Write token for the policy
|
|
1484
1768
|
* @param {string} subjectId - The ID of the subject
|
|
1485
1769
|
*/
|
|
1770
|
+
|
|
1486
1771
|
}, {
|
|
1487
1772
|
key: "RemoveSubjectPermissions",
|
|
1488
1773
|
value: function () {
|
|
1489
1774
|
var _RemoveSubjectPermissions = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee19(_ref18) {
|
|
1490
1775
|
var _this6 = this;
|
|
1776
|
+
|
|
1491
1777
|
var policyId, policyWriteToken, subjectId, subjectPermissions;
|
|
1492
1778
|
return _regeneratorRuntime.wrap(function _callee19$(_context19) {
|
|
1493
|
-
while (1)
|
|
1494
|
-
|
|
1495
|
-
|
|
1496
|
-
|
|
1497
|
-
|
|
1498
|
-
|
|
1499
|
-
|
|
1500
|
-
|
|
1501
|
-
|
|
1502
|
-
|
|
1503
|
-
|
|
1504
|
-
|
|
1505
|
-
|
|
1506
|
-
|
|
1507
|
-
|
|
1508
|
-
|
|
1509
|
-
|
|
1510
|
-
|
|
1511
|
-
|
|
1512
|
-
|
|
1513
|
-
|
|
1514
|
-
|
|
1515
|
-
|
|
1516
|
-
|
|
1517
|
-
|
|
1518
|
-
|
|
1519
|
-
|
|
1520
|
-
|
|
1521
|
-
|
|
1522
|
-
|
|
1523
|
-
|
|
1524
|
-
|
|
1525
|
-
|
|
1526
|
-
|
|
1527
|
-
|
|
1528
|
-
|
|
1529
|
-
|
|
1530
|
-
|
|
1531
|
-
|
|
1532
|
-
|
|
1779
|
+
while (1) {
|
|
1780
|
+
switch (_context19.prev = _context19.next) {
|
|
1781
|
+
case 0:
|
|
1782
|
+
policyId = _ref18.policyId, policyWriteToken = _ref18.policyWriteToken, subjectId = _ref18.subjectId;
|
|
1783
|
+
ValidatePresence("policyId", policyId);
|
|
1784
|
+
ValidatePresence("policyWriteToken", policyWriteToken);
|
|
1785
|
+
ValidatePresence("subjectId", subjectId);
|
|
1786
|
+
_context19.next = 6;
|
|
1787
|
+
return this.SubjectPermissions({
|
|
1788
|
+
policyId: policyId,
|
|
1789
|
+
policyWriteToken: policyWriteToken,
|
|
1790
|
+
subjectId: subjectId
|
|
1791
|
+
});
|
|
1792
|
+
|
|
1793
|
+
case 6:
|
|
1794
|
+
subjectPermissions = _context19.sent;
|
|
1795
|
+
_context19.next = 9;
|
|
1796
|
+
return this.client.utils.LimitedMap(5, Object.keys(subjectPermissions), /*#__PURE__*/function () {
|
|
1797
|
+
var _ref19 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee18(itemId) {
|
|
1798
|
+
return _regeneratorRuntime.wrap(function _callee18$(_context18) {
|
|
1799
|
+
while (1) {
|
|
1800
|
+
switch (_context18.prev = _context18.next) {
|
|
1801
|
+
case 0:
|
|
1802
|
+
_context18.next = 2;
|
|
1803
|
+
return _this6.RemovePermission({
|
|
1804
|
+
policyId: policyId,
|
|
1805
|
+
policyWriteToken: policyWriteToken,
|
|
1806
|
+
subjectId: subjectId,
|
|
1807
|
+
itemId: itemId
|
|
1808
|
+
});
|
|
1809
|
+
|
|
1810
|
+
case 2:
|
|
1811
|
+
case "end":
|
|
1812
|
+
return _context18.stop();
|
|
1813
|
+
}
|
|
1814
|
+
}
|
|
1815
|
+
}, _callee18);
|
|
1816
|
+
}));
|
|
1817
|
+
|
|
1818
|
+
return function (_x20) {
|
|
1819
|
+
return _ref19.apply(this, arguments);
|
|
1820
|
+
};
|
|
1821
|
+
}());
|
|
1822
|
+
|
|
1823
|
+
case 9:
|
|
1824
|
+
case "end":
|
|
1825
|
+
return _context19.stop();
|
|
1826
|
+
}
|
|
1533
1827
|
}
|
|
1534
1828
|
}, _callee19, this);
|
|
1535
1829
|
}));
|
|
1830
|
+
|
|
1536
1831
|
function RemoveSubjectPermissions(_x19) {
|
|
1537
1832
|
return _RemoveSubjectPermissions.apply(this, arguments);
|
|
1538
1833
|
}
|
|
1834
|
+
|
|
1539
1835
|
return RemoveSubjectPermissions;
|
|
1540
1836
|
}()
|
|
1541
1837
|
}]);
|
|
1838
|
+
|
|
1542
1839
|
return PermissionsClient;
|
|
1543
1840
|
}();
|
|
1841
|
+
|
|
1544
1842
|
module.exports = PermissionsClient;
|