@datocms/cma-client 1.1.6 → 1.1.8

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.
@@ -244,8 +244,8 @@ var ItemType = /** @class */ (function (_super) {
244
244
  * @throws {ApiError}
245
245
  * @throws {TimeoutError}
246
246
  */
247
- ItemType.prototype.destroy = function (itemTypeId) {
248
- return this.rawDestroy(Utils.toId(itemTypeId)).then(function (body) {
247
+ ItemType.prototype.destroy = function (itemTypeId, queryParams) {
248
+ return this.rawDestroy(Utils.toId(itemTypeId), queryParams).then(function (body) {
249
249
  return Utils.deserializeResponseBody(body);
250
250
  });
251
251
  };
@@ -257,10 +257,11 @@ var ItemType = /** @class */ (function (_super) {
257
257
  * @throws {ApiError}
258
258
  * @throws {TimeoutError}
259
259
  */
260
- ItemType.prototype.rawDestroy = function (itemTypeId) {
260
+ ItemType.prototype.rawDestroy = function (itemTypeId, queryParams) {
261
261
  return this.client.request({
262
262
  method: 'DELETE',
263
263
  url: "/item-types/".concat(itemTypeId),
264
+ queryParams: queryParams,
264
265
  });
265
266
  };
266
267
  ItemType.TYPE = 'item_type';
@@ -1 +1 @@
1
- {"version":3,"file":"ItemType.js","sourceRoot":"","sources":["../../../../src/generated/resources/ItemType.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ItemType.js","sourceRoot":"","sources":["../../../../src/generated/resources/ItemType.ts"],"names":[],"mappings":"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"}
@@ -4,7 +4,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.Workflow = exports.Site = exports.UploadSmartTag = exports.UploadTag = exports.UsageCounter = exports.DailyUsage = exports.PublicInfo = exports.WhiteLabelSettings = exports.SsoSettings = exports.SsoGroup = exports.EditingSession = exports.SiteInvitation = exports.UploadFilter = exports.ItemTypeFilter = exports.BuildTrigger = exports.WebhookCall = exports.Webhook = exports.MaintenanceMode = exports.Environment = exports.SearchResult = exports.ScheduledUnpublishing = exports.ScheduledPublication = exports.UploadRequest = exports.Upload = exports.ItemVersion = exports.Item = exports.BuildEvent = exports.SubscriptionFeature = exports.SubscriptionLimit = exports.JobResult = exports.Plugin = exports.AccessToken = exports.Session = exports.Fieldset = exports.Field = exports.ItemType = exports.MenuItem = exports.AuditLogEvent = exports.SsoUser = exports.User = exports.Role = void 0;
7
- var Role_1 = require("./Role");
7
+ var Role_1 = require("../../resources/Role");
8
8
  Object.defineProperty(exports, "Role", { enumerable: true, get: function () { return __importDefault(Role_1).default; } });
9
9
  var User_1 = require("./User");
10
10
  Object.defineProperty(exports, "User", { enumerable: true, get: function () { return __importDefault(User_1).default; } });
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/generated/resources/index.ts"],"names":[],"mappings":";;;;;;AAAA,+BAAyC;AAAhC,6GAAA,OAAO,OAAQ;AACxB,+BAAyC;AAAhC,6GAAA,OAAO,OAAQ;AACxB,qCAA+C;AAAtC,mHAAA,OAAO,OAAW;AAC3B,iDAA2D;AAAlD,+HAAA,OAAO,OAAiB;AACjC,uCAAiD;AAAxC,qHAAA,OAAO,OAAY;AAC5B,uCAAiD;AAAxC,qHAAA,OAAO,OAAY;AAC5B,iCAA2C;AAAlC,+GAAA,OAAO,OAAS;AACzB,uCAAiD;AAAxC,qHAAA,OAAO,OAAY;AAC5B,qCAA+C;AAAtC,mHAAA,OAAO,OAAW;AAC3B,6CAAuD;AAA9C,2HAAA,OAAO,OAAe;AAC/B,mCAA6C;AAApC,iHAAA,OAAO,OAAU;AAC1B,yCAAmD;AAA1C,uHAAA,OAAO,OAAa;AAC7B,yDAAmE;AAA1D,uIAAA,OAAO,OAAqB;AACrC,6DAAuE;AAA9D,2IAAA,OAAO,OAAuB;AACvC,2CAAqD;AAA5C,yHAAA,OAAO,OAAc;AAC9B,+BAAyC;AAAhC,6GAAA,OAAO,OAAQ;AACxB,6CAAuD;AAA9C,2HAAA,OAAO,OAAe;AAC/B,mCAA6C;AAApC,iHAAA,OAAO,OAAU;AAC1B,iDAA2D;AAAlD,+HAAA,OAAO,OAAiB;AACjC,+DAAyE;AAAhE,6IAAA,OAAO,OAAwB;AACxC,iEAA2E;AAAlE,+IAAA,OAAO,OAAyB;AACzC,+CAAyD;AAAhD,6HAAA,OAAO,OAAgB;AAChC,6CAAuD;AAA9C,2HAAA,OAAO,OAAe;AAC/B,qDAA+D;AAAtD,mIAAA,OAAO,OAAmB;AACnC,qCAA+C;AAAtC,mHAAA,OAAO,OAAW;AAC3B,6CAAuD;AAA9C,2HAAA,OAAO,OAAe;AAC/B,+CAAyD;AAAhD,6HAAA,OAAO,OAAgB;AAChC,mDAA6D;AAApD,iIAAA,OAAO,OAAkB;AAClC,+CAAyD;AAAhD,6HAAA,OAAO,OAAgB;AAChC,mDAA6D;AAApD,iIAAA,OAAO,OAAkB;AAClC,mDAA6D;AAApD,iIAAA,OAAO,OAAkB;AAClC,uCAAiD;AAAxC,qHAAA,OAAO,OAAY;AAC5B,6CAAuD;AAA9C,2HAAA,OAAO,OAAe;AAC/B,2DAAqE;AAA5D,yIAAA,OAAO,OAAsB;AACtC,2CAAqD;AAA5C,yHAAA,OAAO,OAAc;AAC9B,2CAAqD;AAA5C,yHAAA,OAAO,OAAc;AAC9B,+CAAyD;AAAhD,6HAAA,OAAO,OAAgB;AAChC,yCAAmD;AAA1C,uHAAA,OAAO,OAAa;AAC7B,mDAA6D;AAApD,iIAAA,OAAO,OAAkB;AAClC,+BAAyC;AAAhC,6GAAA,OAAO,OAAQ;AACxB,uCAAiD;AAAxC,qHAAA,OAAO,OAAY"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/generated/resources/index.ts"],"names":[],"mappings":";;;;;;AAAA,6CAAuD;AAA9C,6GAAA,OAAO,OAAQ;AACxB,+BAAyC;AAAhC,6GAAA,OAAO,OAAQ;AACxB,qCAA+C;AAAtC,mHAAA,OAAO,OAAW;AAC3B,iDAA2D;AAAlD,+HAAA,OAAO,OAAiB;AACjC,uCAAiD;AAAxC,qHAAA,OAAO,OAAY;AAC5B,uCAAiD;AAAxC,qHAAA,OAAO,OAAY;AAC5B,iCAA2C;AAAlC,+GAAA,OAAO,OAAS;AACzB,uCAAiD;AAAxC,qHAAA,OAAO,OAAY;AAC5B,qCAA+C;AAAtC,mHAAA,OAAO,OAAW;AAC3B,6CAAuD;AAA9C,2HAAA,OAAO,OAAe;AAC/B,mCAA6C;AAApC,iHAAA,OAAO,OAAU;AAC1B,yCAAmD;AAA1C,uHAAA,OAAO,OAAa;AAC7B,yDAAmE;AAA1D,uIAAA,OAAO,OAAqB;AACrC,6DAAuE;AAA9D,2IAAA,OAAO,OAAuB;AACvC,2CAAqD;AAA5C,yHAAA,OAAO,OAAc;AAC9B,+BAAyC;AAAhC,6GAAA,OAAO,OAAQ;AACxB,6CAAuD;AAA9C,2HAAA,OAAO,OAAe;AAC/B,mCAA6C;AAApC,iHAAA,OAAO,OAAU;AAC1B,iDAA2D;AAAlD,+HAAA,OAAO,OAAiB;AACjC,+DAAyE;AAAhE,6IAAA,OAAO,OAAwB;AACxC,iEAA2E;AAAlE,+IAAA,OAAO,OAAyB;AACzC,+CAAyD;AAAhD,6HAAA,OAAO,OAAgB;AAChC,6CAAuD;AAA9C,2HAAA,OAAO,OAAe;AAC/B,qDAA+D;AAAtD,mIAAA,OAAO,OAAmB;AACnC,qCAA+C;AAAtC,mHAAA,OAAO,OAAW;AAC3B,6CAAuD;AAA9C,2HAAA,OAAO,OAAe;AAC/B,+CAAyD;AAAhD,6HAAA,OAAO,OAAgB;AAChC,mDAA6D;AAApD,iIAAA,OAAO,OAAkB;AAClC,+CAAyD;AAAhD,6HAAA,OAAO,OAAgB;AAChC,mDAA6D;AAApD,iIAAA,OAAO,OAAkB;AAClC,mDAA6D;AAApD,iIAAA,OAAO,OAAkB;AAClC,uCAAiD;AAAxC,qHAAA,OAAO,OAAY;AAC5B,6CAAuD;AAA9C,2HAAA,OAAO,OAAe;AAC/B,2DAAqE;AAA5D,yIAAA,OAAO,OAAsB;AACtC,2CAAqD;AAA5C,yHAAA,OAAO,OAAc;AAC9B,2CAAqD;AAA5C,yHAAA,OAAO,OAAc;AAC9B,+CAAyD;AAAhD,6HAAA,OAAO,OAAgB;AAChC,yCAAmD;AAA1C,uHAAA,OAAO,OAAa;AAC7B,mDAA6D;AAApD,iIAAA,OAAO,OAAkB;AAClC,+BAAyC;AAAhC,6GAAA,OAAO,OAAQ;AACxB,uCAAiD;AAAxC,qHAAA,OAAO,OAAY"}
@@ -0,0 +1,166 @@
1
+ "use strict";
2
+ var __extends = (this && this.__extends) || (function () {
3
+ var extendStatics = function (d, b) {
4
+ extendStatics = Object.setPrototypeOf ||
5
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
6
+ function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
7
+ return extendStatics(d, b);
8
+ };
9
+ return function (d, b) {
10
+ if (typeof b !== "function" && b !== null)
11
+ throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
12
+ extendStatics(d, b);
13
+ function __() { this.constructor = d; }
14
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
15
+ };
16
+ })();
17
+ var __assign = (this && this.__assign) || function () {
18
+ __assign = Object.assign || function(t) {
19
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
20
+ s = arguments[i];
21
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
22
+ t[p] = s[p];
23
+ }
24
+ return t;
25
+ };
26
+ return __assign.apply(this, arguments);
27
+ };
28
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
29
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
30
+ return new (P || (P = Promise))(function (resolve, reject) {
31
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
32
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
33
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
34
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
35
+ });
36
+ };
37
+ var __generator = (this && this.__generator) || function (thisArg, body) {
38
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
39
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
40
+ function verb(n) { return function (v) { return step([n, v]); }; }
41
+ function step(op) {
42
+ if (f) throw new TypeError("Generator is already executing.");
43
+ while (_) try {
44
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
45
+ if (y = 0, t) op = [op[0] & 2, t.value];
46
+ switch (op[0]) {
47
+ case 0: case 1: t = op; break;
48
+ case 4: _.label++; return { value: op[1], done: false };
49
+ case 5: _.label++; y = op[1]; op = [0]; continue;
50
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
51
+ default:
52
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
53
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
54
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
55
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
56
+ if (t[2]) _.ops.pop();
57
+ _.trys.pop(); continue;
58
+ }
59
+ op = body.call(thisArg, _);
60
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
61
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
62
+ }
63
+ };
64
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
65
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
66
+ if (ar || !(i in from)) {
67
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
68
+ ar[i] = from[i];
69
+ }
70
+ }
71
+ return to.concat(ar || Array.prototype.slice.call(from));
72
+ };
73
+ var __importDefault = (this && this.__importDefault) || function (mod) {
74
+ return (mod && mod.__esModule) ? mod : { "default": mod };
75
+ };
76
+ Object.defineProperty(exports, "__esModule", { value: true });
77
+ var Role_1 = __importDefault(require("../generated/resources/Role"));
78
+ function sameValue(a, b) {
79
+ if ((a === undefined || a === null) && (b === undefined || b === null)) {
80
+ return true;
81
+ }
82
+ return a === b;
83
+ }
84
+ function sameRule(obj1, obj2) {
85
+ for (var key in Object.keys(obj1)) {
86
+ if (!sameValue(obj1[key], obj2[key]))
87
+ return false;
88
+ }
89
+ for (var key in Object.keys(obj2)) {
90
+ if (!sameValue(obj1[key], obj2[key]))
91
+ return false;
92
+ }
93
+ return true;
94
+ }
95
+ function applyChanges(currentRules, changes, currentEnvironmentId, context) {
96
+ if (!changes) {
97
+ return currentRules;
98
+ }
99
+ var rulesToAdd = changes.add, rulesToRemove = changes.remove;
100
+ return __spreadArray(__spreadArray([], (rulesToRemove
101
+ ? rulesToRemove.reduce(function (filteredRules, ruleToRemove) {
102
+ var ruleToRemoveWithEnvironmentId = __assign(__assign({}, ruleToRemove), { environment: currentEnvironmentId });
103
+ var foundRule = filteredRules.find(function (rule) {
104
+ return sameRule(rule, ruleToRemoveWithEnvironmentId);
105
+ });
106
+ if (!foundRule) {
107
+ throw new Error("Cannot find rule ".concat(JSON.stringify(ruleToRemoveWithEnvironmentId), " to remove in ").concat(context, "!"));
108
+ }
109
+ return filteredRules.filter(function (rule) { return rule !== foundRule; });
110
+ }, currentRules)
111
+ : currentRules), true), (rulesToAdd
112
+ ? rulesToAdd.map(function (change) {
113
+ return (__assign({ environment: currentEnvironmentId }, change));
114
+ })
115
+ : []), true);
116
+ }
117
+ var RoleResource = /** @class */ (function (_super) {
118
+ __extends(RoleResource, _super);
119
+ function RoleResource() {
120
+ return _super !== null && _super.apply(this, arguments) || this;
121
+ }
122
+ /**
123
+ * Applies a set of changes to the permissions of the current environment
124
+ */
125
+ RoleResource.prototype.updateCurrentEnvironmentPermissions = function (roleId, changes) {
126
+ return __awaiter(this, void 0, void 0, function () {
127
+ var currentEnvironmentId, _a, role, updateItemTypePermissions, updateUploadPermissions, body;
128
+ return __generator(this, function (_b) {
129
+ switch (_b.label) {
130
+ case 0:
131
+ _a = this.client.config.environment;
132
+ if (_a) return [3 /*break*/, 2];
133
+ return [4 /*yield*/, this.client.environments.list()];
134
+ case 1:
135
+ // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
136
+ _a = (_b.sent()).find(function (environment) { return environment.meta.primary; }).id;
137
+ _b.label = 2;
138
+ case 2:
139
+ currentEnvironmentId = _a;
140
+ return [4 /*yield*/, this.find(roleId)];
141
+ case 3:
142
+ role = _b.sent();
143
+ updateItemTypePermissions = Boolean(changes.positive_item_type_permissions ||
144
+ changes.negative_item_type_permissions);
145
+ updateUploadPermissions = Boolean(changes.positive_upload_permissions ||
146
+ changes.negative_upload_permissions);
147
+ body = __assign(__assign({}, (updateItemTypePermissions
148
+ ? {
149
+ positive_item_type_permissions: applyChanges(role.positive_item_type_permissions, changes.positive_item_type_permissions, currentEnvironmentId, 'positive_item_type_permissions'),
150
+ negative_item_type_permissions: applyChanges(role.negative_item_type_permissions, changes.negative_item_type_permissions, currentEnvironmentId, 'negative_item_type_permissions'),
151
+ }
152
+ : {})), (updateUploadPermissions
153
+ ? {
154
+ positive_upload_permissions: applyChanges(role.positive_upload_permissions, changes.positive_upload_permissions, currentEnvironmentId, 'positive_upload_permissions'),
155
+ negative_upload_permissions: applyChanges(role.negative_upload_permissions, changes.negative_upload_permissions, currentEnvironmentId, 'negative_upload_permissions'),
156
+ }
157
+ : {}));
158
+ return [2 /*return*/, this.update(roleId, body)];
159
+ }
160
+ });
161
+ });
162
+ };
163
+ return RoleResource;
164
+ }(Role_1.default));
165
+ exports.default = RoleResource;
166
+ //# sourceMappingURL=Role.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Role.js","sourceRoot":"","sources":["../../../src/resources/Role.ts"],"names":[],"mappings":"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"}
@@ -383,6 +383,17 @@ export declare type JobType = 'job';
383
383
  * via the `definition` "id".
384
384
  */
385
385
  export declare type JobIdentity = string;
386
+ /**
387
+ * This interface was referenced by `ItemType`'s JSON-Schema
388
+ * via the `destroy.hrefSchema` link.
389
+ */
390
+ export declare type ItemTypeDestroyHrefSchema = {
391
+ /**
392
+ * Skip the deletion of the menu items linked to the model
393
+ */
394
+ skip_menu_items_deletion?: string;
395
+ [k: string]: unknown;
396
+ };
386
397
  /**
387
398
  * JSON API type field
388
399
  *
@@ -428,6 +428,17 @@ export declare type JobType = 'job';
428
428
  * via the `instances.targetSchema` link.
429
429
  */
430
430
  export declare type ItemTypeInstancesTargetSchema = ItemType[];
431
+ /**
432
+ * This interface was referenced by `ItemType`'s JSON-Schema
433
+ * via the `destroy.hrefSchema` link.
434
+ */
435
+ export declare type ItemTypeDestroyHrefSchema = {
436
+ /**
437
+ * Skip the deletion of the menu items linked to the model
438
+ */
439
+ skip_menu_items_deletion?: string;
440
+ [k: string]: unknown;
441
+ };
431
442
  /**
432
443
  * This interface was referenced by `Field`'s JSON-Schema
433
444
  * via the `instances.targetSchema` link.
@@ -101,7 +101,7 @@ export default class ItemType extends BaseResource {
101
101
  * @throws {ApiError}
102
102
  * @throws {TimeoutError}
103
103
  */
104
- destroy(itemTypeId: string | SimpleSchemaTypes.ItemTypeData): Promise<SimpleSchemaTypes.ItemType>;
104
+ destroy(itemTypeId: string | SimpleSchemaTypes.ItemTypeData, queryParams?: SimpleSchemaTypes.ItemTypeDestroyHrefSchema): Promise<SimpleSchemaTypes.ItemType>;
105
105
  /**
106
106
  * Delete a model
107
107
  *
@@ -110,5 +110,5 @@ export default class ItemType extends BaseResource {
110
110
  * @throws {ApiError}
111
111
  * @throws {TimeoutError}
112
112
  */
113
- rawDestroy(itemTypeId: string): Promise<SchemaTypes.ItemTypeDestroyJobSchema>;
113
+ rawDestroy(itemTypeId: string, queryParams?: SchemaTypes.ItemTypeDestroyHrefSchema): Promise<SchemaTypes.ItemTypeDestroyJobSchema>;
114
114
  }
@@ -216,8 +216,8 @@ var ItemType = /** @class */ (function (_super) {
216
216
  * @throws {ApiError}
217
217
  * @throws {TimeoutError}
218
218
  */
219
- ItemType.prototype.destroy = function (itemTypeId) {
220
- return this.rawDestroy(Utils.toId(itemTypeId)).then(function (body) {
219
+ ItemType.prototype.destroy = function (itemTypeId, queryParams) {
220
+ return this.rawDestroy(Utils.toId(itemTypeId), queryParams).then(function (body) {
221
221
  return Utils.deserializeResponseBody(body);
222
222
  });
223
223
  };
@@ -229,10 +229,11 @@ var ItemType = /** @class */ (function (_super) {
229
229
  * @throws {ApiError}
230
230
  * @throws {TimeoutError}
231
231
  */
232
- ItemType.prototype.rawDestroy = function (itemTypeId) {
232
+ ItemType.prototype.rawDestroy = function (itemTypeId, queryParams) {
233
233
  return this.client.request({
234
234
  method: 'DELETE',
235
235
  url: "/item-types/".concat(itemTypeId),
236
+ queryParams: queryParams,
236
237
  });
237
238
  };
238
239
  ItemType.TYPE = 'item_type';
@@ -1 +1 @@
1
- {"version":3,"file":"ItemType.js","sourceRoot":"","sources":["../../../../src/generated/resources/ItemType.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ItemType.js","sourceRoot":"","sources":["../../../../src/generated/resources/ItemType.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- export { default as Role } from './Role';
1
+ export { default as Role } from '../../resources/Role';
2
2
  export { default as User } from './User';
3
3
  export { default as SsoUser } from './SsoUser';
4
4
  export { default as AuditLogEvent } from './AuditLogEvent';
@@ -1,4 +1,4 @@
1
- export { default as Role } from './Role';
1
+ export { default as Role } from '../../resources/Role';
2
2
  export { default as User } from './User';
3
3
  export { default as SsoUser } from './SsoUser';
4
4
  export { default as AuditLogEvent } from './AuditLogEvent';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/generated/resources/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/generated/resources/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,21 @@
1
+ import BaseRole from '../generated/resources/Role';
2
+ import * as SimpleSchemaTypes from '../generated/SimpleSchemaTypes';
3
+ export declare type UpdateRoleDiff<T> = {
4
+ add?: Omit<T, 'environment'>[];
5
+ remove?: Omit<T, 'environment'>[];
6
+ };
7
+ export declare type RoleItemTypePermission = SimpleSchemaTypes.RoleAttributes['positive_item_type_permissions'][0];
8
+ export declare type RoleUploadPermission = SimpleSchemaTypes.RoleAttributes['positive_upload_permissions'][0];
9
+ declare type UpdateCurrentEnvironmentPermissionsChanges = {
10
+ positive_item_type_permissions?: UpdateRoleDiff<RoleItemTypePermission>;
11
+ negative_item_type_permissions?: UpdateRoleDiff<RoleItemTypePermission>;
12
+ positive_upload_permissions?: UpdateRoleDiff<RoleUploadPermission>;
13
+ negative_upload_permissions?: UpdateRoleDiff<RoleUploadPermission>;
14
+ };
15
+ export default class RoleResource extends BaseRole {
16
+ /**
17
+ * Applies a set of changes to the permissions of the current environment
18
+ */
19
+ updateCurrentEnvironmentPermissions(roleId: string | SimpleSchemaTypes.RoleData, changes: UpdateCurrentEnvironmentPermissionsChanges): Promise<SimpleSchemaTypes.Role>;
20
+ }
21
+ export {};
@@ -0,0 +1,161 @@
1
+ var __extends = (this && this.__extends) || (function () {
2
+ var extendStatics = function (d, b) {
3
+ extendStatics = Object.setPrototypeOf ||
4
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
5
+ function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
6
+ return extendStatics(d, b);
7
+ };
8
+ return function (d, b) {
9
+ if (typeof b !== "function" && b !== null)
10
+ throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
11
+ extendStatics(d, b);
12
+ function __() { this.constructor = d; }
13
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
14
+ };
15
+ })();
16
+ var __assign = (this && this.__assign) || function () {
17
+ __assign = Object.assign || function(t) {
18
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
19
+ s = arguments[i];
20
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
21
+ t[p] = s[p];
22
+ }
23
+ return t;
24
+ };
25
+ return __assign.apply(this, arguments);
26
+ };
27
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
28
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
29
+ return new (P || (P = Promise))(function (resolve, reject) {
30
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
31
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
32
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
33
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
34
+ });
35
+ };
36
+ var __generator = (this && this.__generator) || function (thisArg, body) {
37
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
38
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
39
+ function verb(n) { return function (v) { return step([n, v]); }; }
40
+ function step(op) {
41
+ if (f) throw new TypeError("Generator is already executing.");
42
+ while (_) try {
43
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
44
+ if (y = 0, t) op = [op[0] & 2, t.value];
45
+ switch (op[0]) {
46
+ case 0: case 1: t = op; break;
47
+ case 4: _.label++; return { value: op[1], done: false };
48
+ case 5: _.label++; y = op[1]; op = [0]; continue;
49
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
50
+ default:
51
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
52
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
53
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
54
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
55
+ if (t[2]) _.ops.pop();
56
+ _.trys.pop(); continue;
57
+ }
58
+ op = body.call(thisArg, _);
59
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
60
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
61
+ }
62
+ };
63
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
64
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
65
+ if (ar || !(i in from)) {
66
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
67
+ ar[i] = from[i];
68
+ }
69
+ }
70
+ return to.concat(ar || Array.prototype.slice.call(from));
71
+ };
72
+ import BaseRole from '../generated/resources/Role';
73
+ function sameValue(a, b) {
74
+ if ((a === undefined || a === null) && (b === undefined || b === null)) {
75
+ return true;
76
+ }
77
+ return a === b;
78
+ }
79
+ function sameRule(obj1, obj2) {
80
+ for (var key in Object.keys(obj1)) {
81
+ if (!sameValue(obj1[key], obj2[key]))
82
+ return false;
83
+ }
84
+ for (var key in Object.keys(obj2)) {
85
+ if (!sameValue(obj1[key], obj2[key]))
86
+ return false;
87
+ }
88
+ return true;
89
+ }
90
+ function applyChanges(currentRules, changes, currentEnvironmentId, context) {
91
+ if (!changes) {
92
+ return currentRules;
93
+ }
94
+ var rulesToAdd = changes.add, rulesToRemove = changes.remove;
95
+ return __spreadArray(__spreadArray([], (rulesToRemove
96
+ ? rulesToRemove.reduce(function (filteredRules, ruleToRemove) {
97
+ var ruleToRemoveWithEnvironmentId = __assign(__assign({}, ruleToRemove), { environment: currentEnvironmentId });
98
+ var foundRule = filteredRules.find(function (rule) {
99
+ return sameRule(rule, ruleToRemoveWithEnvironmentId);
100
+ });
101
+ if (!foundRule) {
102
+ throw new Error("Cannot find rule ".concat(JSON.stringify(ruleToRemoveWithEnvironmentId), " to remove in ").concat(context, "!"));
103
+ }
104
+ return filteredRules.filter(function (rule) { return rule !== foundRule; });
105
+ }, currentRules)
106
+ : currentRules), true), (rulesToAdd
107
+ ? rulesToAdd.map(function (change) {
108
+ return (__assign({ environment: currentEnvironmentId }, change));
109
+ })
110
+ : []), true);
111
+ }
112
+ var RoleResource = /** @class */ (function (_super) {
113
+ __extends(RoleResource, _super);
114
+ function RoleResource() {
115
+ return _super !== null && _super.apply(this, arguments) || this;
116
+ }
117
+ /**
118
+ * Applies a set of changes to the permissions of the current environment
119
+ */
120
+ RoleResource.prototype.updateCurrentEnvironmentPermissions = function (roleId, changes) {
121
+ return __awaiter(this, void 0, void 0, function () {
122
+ var currentEnvironmentId, _a, role, updateItemTypePermissions, updateUploadPermissions, body;
123
+ return __generator(this, function (_b) {
124
+ switch (_b.label) {
125
+ case 0:
126
+ _a = this.client.config.environment;
127
+ if (_a) return [3 /*break*/, 2];
128
+ return [4 /*yield*/, this.client.environments.list()];
129
+ case 1:
130
+ // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
131
+ _a = (_b.sent()).find(function (environment) { return environment.meta.primary; }).id;
132
+ _b.label = 2;
133
+ case 2:
134
+ currentEnvironmentId = _a;
135
+ return [4 /*yield*/, this.find(roleId)];
136
+ case 3:
137
+ role = _b.sent();
138
+ updateItemTypePermissions = Boolean(changes.positive_item_type_permissions ||
139
+ changes.negative_item_type_permissions);
140
+ updateUploadPermissions = Boolean(changes.positive_upload_permissions ||
141
+ changes.negative_upload_permissions);
142
+ body = __assign(__assign({}, (updateItemTypePermissions
143
+ ? {
144
+ positive_item_type_permissions: applyChanges(role.positive_item_type_permissions, changes.positive_item_type_permissions, currentEnvironmentId, 'positive_item_type_permissions'),
145
+ negative_item_type_permissions: applyChanges(role.negative_item_type_permissions, changes.negative_item_type_permissions, currentEnvironmentId, 'negative_item_type_permissions'),
146
+ }
147
+ : {})), (updateUploadPermissions
148
+ ? {
149
+ positive_upload_permissions: applyChanges(role.positive_upload_permissions, changes.positive_upload_permissions, currentEnvironmentId, 'positive_upload_permissions'),
150
+ negative_upload_permissions: applyChanges(role.negative_upload_permissions, changes.negative_upload_permissions, currentEnvironmentId, 'negative_upload_permissions'),
151
+ }
152
+ : {}));
153
+ return [2 /*return*/, this.update(roleId, body)];
154
+ }
155
+ });
156
+ });
157
+ };
158
+ return RoleResource;
159
+ }(BaseRole));
160
+ export default RoleResource;
161
+ //# sourceMappingURL=Role.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Role.js","sourceRoot":"","sources":["../../../src/resources/Role.ts"],"names":[],"mappings":"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"}
@@ -383,6 +383,17 @@ export declare type JobType = 'job';
383
383
  * via the `definition` "id".
384
384
  */
385
385
  export declare type JobIdentity = string;
386
+ /**
387
+ * This interface was referenced by `ItemType`'s JSON-Schema
388
+ * via the `destroy.hrefSchema` link.
389
+ */
390
+ export declare type ItemTypeDestroyHrefSchema = {
391
+ /**
392
+ * Skip the deletion of the menu items linked to the model
393
+ */
394
+ skip_menu_items_deletion?: string;
395
+ [k: string]: unknown;
396
+ };
386
397
  /**
387
398
  * JSON API type field
388
399
  *
@@ -428,6 +428,17 @@ export declare type JobType = 'job';
428
428
  * via the `instances.targetSchema` link.
429
429
  */
430
430
  export declare type ItemTypeInstancesTargetSchema = ItemType[];
431
+ /**
432
+ * This interface was referenced by `ItemType`'s JSON-Schema
433
+ * via the `destroy.hrefSchema` link.
434
+ */
435
+ export declare type ItemTypeDestroyHrefSchema = {
436
+ /**
437
+ * Skip the deletion of the menu items linked to the model
438
+ */
439
+ skip_menu_items_deletion?: string;
440
+ [k: string]: unknown;
441
+ };
431
442
  /**
432
443
  * This interface was referenced by `Field`'s JSON-Schema
433
444
  * via the `instances.targetSchema` link.
@@ -101,7 +101,7 @@ export default class ItemType extends BaseResource {
101
101
  * @throws {ApiError}
102
102
  * @throws {TimeoutError}
103
103
  */
104
- destroy(itemTypeId: string | SimpleSchemaTypes.ItemTypeData): Promise<SimpleSchemaTypes.ItemType>;
104
+ destroy(itemTypeId: string | SimpleSchemaTypes.ItemTypeData, queryParams?: SimpleSchemaTypes.ItemTypeDestroyHrefSchema): Promise<SimpleSchemaTypes.ItemType>;
105
105
  /**
106
106
  * Delete a model
107
107
  *
@@ -110,5 +110,5 @@ export default class ItemType extends BaseResource {
110
110
  * @throws {ApiError}
111
111
  * @throws {TimeoutError}
112
112
  */
113
- rawDestroy(itemTypeId: string): Promise<SchemaTypes.ItemTypeDestroyJobSchema>;
113
+ rawDestroy(itemTypeId: string, queryParams?: SchemaTypes.ItemTypeDestroyHrefSchema): Promise<SchemaTypes.ItemTypeDestroyJobSchema>;
114
114
  }
@@ -1,4 +1,4 @@
1
- export { default as Role } from './Role';
1
+ export { default as Role } from '../../resources/Role';
2
2
  export { default as User } from './User';
3
3
  export { default as SsoUser } from './SsoUser';
4
4
  export { default as AuditLogEvent } from './AuditLogEvent';
@@ -0,0 +1,21 @@
1
+ import BaseRole from '../generated/resources/Role';
2
+ import * as SimpleSchemaTypes from '../generated/SimpleSchemaTypes';
3
+ export declare type UpdateRoleDiff<T> = {
4
+ add?: Omit<T, 'environment'>[];
5
+ remove?: Omit<T, 'environment'>[];
6
+ };
7
+ export declare type RoleItemTypePermission = SimpleSchemaTypes.RoleAttributes['positive_item_type_permissions'][0];
8
+ export declare type RoleUploadPermission = SimpleSchemaTypes.RoleAttributes['positive_upload_permissions'][0];
9
+ declare type UpdateCurrentEnvironmentPermissionsChanges = {
10
+ positive_item_type_permissions?: UpdateRoleDiff<RoleItemTypePermission>;
11
+ negative_item_type_permissions?: UpdateRoleDiff<RoleItemTypePermission>;
12
+ positive_upload_permissions?: UpdateRoleDiff<RoleUploadPermission>;
13
+ negative_upload_permissions?: UpdateRoleDiff<RoleUploadPermission>;
14
+ };
15
+ export default class RoleResource extends BaseRole {
16
+ /**
17
+ * Applies a set of changes to the permissions of the current environment
18
+ */
19
+ updateCurrentEnvironmentPermissions(roleId: string | SimpleSchemaTypes.RoleData, changes: UpdateCurrentEnvironmentPermissionsChanges): Promise<SimpleSchemaTypes.Role>;
20
+ }
21
+ export {};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@datocms/cma-client",
3
- "version": "1.1.6",
3
+ "version": "1.1.8",
4
4
  "description": "JS client for DatoCMS REST Content Management API",
5
5
  "keywords": [
6
6
  "datocms",
@@ -42,5 +42,5 @@
42
42
  "devDependencies": {
43
43
  "@datocms/dashboard-client": "^1.1.5"
44
44
  },
45
- "gitHead": "41bd5716a8c5525fb9bef069388d469b38d8e922"
45
+ "gitHead": "0dc8369244a7251f162353e286e45acc69c41c56"
46
46
  }
package/resources.json CHANGED
@@ -596,6 +596,7 @@
596
596
  "isEntityId": true,
597
597
  "relType": "ItemTypeData"
598
598
  },
599
+ "queryParamsType": "ItemTypeDestroyHrefSchema",
599
600
  "queryParamsRequired": false,
600
601
  "responseType": "ItemTypeDestroyJobSchema",
601
602
  "name": "destroy",
@@ -387,6 +387,17 @@ export type JobType = 'job';
387
387
  * via the `definition` "id".
388
388
  */
389
389
  export type JobIdentity = string;
390
+ /**
391
+ * This interface was referenced by `ItemType`'s JSON-Schema
392
+ * via the `destroy.hrefSchema` link.
393
+ */
394
+ export type ItemTypeDestroyHrefSchema = {
395
+ /**
396
+ * Skip the deletion of the menu items linked to the model
397
+ */
398
+ skip_menu_items_deletion?: string;
399
+ [k: string]: unknown;
400
+ };
390
401
  /**
391
402
  * JSON API type field
392
403
  *
@@ -432,6 +432,17 @@ export type JobType = 'job';
432
432
  * via the `instances.targetSchema` link.
433
433
  */
434
434
  export type ItemTypeInstancesTargetSchema = ItemType[];
435
+ /**
436
+ * This interface was referenced by `ItemType`'s JSON-Schema
437
+ * via the `destroy.hrefSchema` link.
438
+ */
439
+ export type ItemTypeDestroyHrefSchema = {
440
+ /**
441
+ * Skip the deletion of the menu items linked to the model
442
+ */
443
+ skip_menu_items_deletion?: string;
444
+ [k: string]: unknown;
445
+ };
435
446
  /**
436
447
  * This interface was referenced by `Field`'s JSON-Schema
437
448
  * via the `instances.targetSchema` link.
@@ -242,8 +242,11 @@ export default class ItemType extends BaseResource {
242
242
  * @throws {ApiError}
243
243
  * @throws {TimeoutError}
244
244
  */
245
- destroy(itemTypeId: string | SimpleSchemaTypes.ItemTypeData) {
246
- return this.rawDestroy(Utils.toId(itemTypeId)).then((body) =>
245
+ destroy(
246
+ itemTypeId: string | SimpleSchemaTypes.ItemTypeData,
247
+ queryParams?: SimpleSchemaTypes.ItemTypeDestroyHrefSchema,
248
+ ) {
249
+ return this.rawDestroy(Utils.toId(itemTypeId), queryParams).then((body) =>
247
250
  Utils.deserializeResponseBody<SimpleSchemaTypes.ItemTypeDestroyJobSchema>(
248
251
  body,
249
252
  ),
@@ -260,10 +263,12 @@ export default class ItemType extends BaseResource {
260
263
  */
261
264
  rawDestroy(
262
265
  itemTypeId: string,
266
+ queryParams?: SchemaTypes.ItemTypeDestroyHrefSchema,
263
267
  ): Promise<SchemaTypes.ItemTypeDestroyJobSchema> {
264
268
  return this.client.request<SchemaTypes.ItemTypeDestroyJobSchema>({
265
269
  method: 'DELETE',
266
270
  url: `/item-types/${itemTypeId}`,
271
+ queryParams,
267
272
  });
268
273
  }
269
274
  }
@@ -1,4 +1,4 @@
1
- export { default as Role } from './Role';
1
+ export { default as Role } from '../../resources/Role';
2
2
  export { default as User } from './User';
3
3
  export { default as SsoUser } from './SsoUser';
4
4
  export { default as AuditLogEvent } from './AuditLogEvent';
@@ -0,0 +1,155 @@
1
+ import BaseRole from '../generated/resources/Role';
2
+ import * as SimpleSchemaTypes from '../generated/SimpleSchemaTypes';
3
+
4
+ export type UpdateRoleDiff<T> = {
5
+ add?: Omit<T, 'environment'>[];
6
+ remove?: Omit<T, 'environment'>[];
7
+ };
8
+
9
+ export type RoleItemTypePermission =
10
+ SimpleSchemaTypes.RoleAttributes['positive_item_type_permissions'][0];
11
+
12
+ export type RoleUploadPermission =
13
+ SimpleSchemaTypes.RoleAttributes['positive_upload_permissions'][0];
14
+
15
+ type UpdateCurrentEnvironmentPermissionsChanges = {
16
+ positive_item_type_permissions?: UpdateRoleDiff<RoleItemTypePermission>;
17
+ negative_item_type_permissions?: UpdateRoleDiff<RoleItemTypePermission>;
18
+ positive_upload_permissions?: UpdateRoleDiff<RoleUploadPermission>;
19
+ negative_upload_permissions?: UpdateRoleDiff<RoleUploadPermission>;
20
+ };
21
+
22
+ function sameValue(a: unknown, b: unknown) {
23
+ if ((a === undefined || a === null) && (b === undefined || b === null)) {
24
+ return true;
25
+ }
26
+ return a === b;
27
+ }
28
+
29
+ function sameRule(
30
+ obj1: Record<string, unknown>,
31
+ obj2: Record<string, unknown>,
32
+ ): boolean {
33
+ for (const key in Object.keys(obj1)) {
34
+ if (!sameValue(obj1[key], obj2[key])) return false;
35
+ }
36
+
37
+ for (const key in Object.keys(obj2)) {
38
+ if (!sameValue(obj1[key], obj2[key])) return false;
39
+ }
40
+
41
+ return true;
42
+ }
43
+
44
+ function applyChanges<T extends Record<PropertyKey, unknown>>(
45
+ currentRules: T[],
46
+ changes: UpdateRoleDiff<T> | undefined,
47
+ currentEnvironmentId: string,
48
+ context: string,
49
+ ): T[] {
50
+ if (!changes) {
51
+ return currentRules;
52
+ }
53
+
54
+ const { add: rulesToAdd, remove: rulesToRemove } = changes;
55
+
56
+ return [
57
+ ...(rulesToRemove
58
+ ? rulesToRemove.reduce((filteredRules, ruleToRemove) => {
59
+ const ruleToRemoveWithEnvironmentId = {
60
+ ...ruleToRemove,
61
+ environment: currentEnvironmentId,
62
+ };
63
+
64
+ const foundRule = filteredRules.find((rule) =>
65
+ sameRule(rule, ruleToRemoveWithEnvironmentId),
66
+ );
67
+
68
+ if (!foundRule) {
69
+ throw new Error(
70
+ `Cannot find rule ${JSON.stringify(
71
+ ruleToRemoveWithEnvironmentId,
72
+ )} to remove in ${context}!`,
73
+ );
74
+ }
75
+
76
+ return filteredRules.filter((rule) => rule !== foundRule);
77
+ }, currentRules)
78
+ : currentRules),
79
+ ...(rulesToAdd
80
+ ? rulesToAdd.map(
81
+ (change) =>
82
+ ({
83
+ environment: currentEnvironmentId,
84
+ ...change,
85
+ } as unknown as T),
86
+ )
87
+ : []),
88
+ ];
89
+ }
90
+
91
+ export default class RoleResource extends BaseRole {
92
+ /**
93
+ * Applies a set of changes to the permissions of the current environment
94
+ */
95
+ async updateCurrentEnvironmentPermissions(
96
+ roleId: string | SimpleSchemaTypes.RoleData,
97
+ changes: UpdateCurrentEnvironmentPermissionsChanges,
98
+ ): Promise<SimpleSchemaTypes.Role> {
99
+ const currentEnvironmentId =
100
+ this.client.config.environment ||
101
+ // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
102
+ (await this.client.environments.list()).find(
103
+ (environment) => environment.meta.primary,
104
+ )!.id;
105
+
106
+ const role = await this.find(roleId);
107
+
108
+ const updateItemTypePermissions = Boolean(
109
+ changes.positive_item_type_permissions ||
110
+ changes.negative_item_type_permissions,
111
+ );
112
+
113
+ const updateUploadPermissions = Boolean(
114
+ changes.positive_upload_permissions ||
115
+ changes.negative_upload_permissions,
116
+ );
117
+
118
+ const body: SimpleSchemaTypes.RoleUpdateSchema = {
119
+ ...(updateItemTypePermissions
120
+ ? {
121
+ positive_item_type_permissions: applyChanges(
122
+ role.positive_item_type_permissions,
123
+ changes.positive_item_type_permissions,
124
+ currentEnvironmentId,
125
+ 'positive_item_type_permissions',
126
+ ),
127
+ negative_item_type_permissions: applyChanges(
128
+ role.negative_item_type_permissions,
129
+ changes.negative_item_type_permissions,
130
+ currentEnvironmentId,
131
+ 'negative_item_type_permissions',
132
+ ),
133
+ }
134
+ : {}),
135
+ ...(updateUploadPermissions
136
+ ? {
137
+ positive_upload_permissions: applyChanges(
138
+ role.positive_upload_permissions,
139
+ changes.positive_upload_permissions,
140
+ currentEnvironmentId,
141
+ 'positive_upload_permissions',
142
+ ),
143
+ negative_upload_permissions: applyChanges(
144
+ role.negative_upload_permissions,
145
+ changes.negative_upload_permissions,
146
+ currentEnvironmentId,
147
+ 'negative_upload_permissions',
148
+ ),
149
+ }
150
+ : {}),
151
+ };
152
+
153
+ return this.update(roleId, body);
154
+ }
155
+ }