@tridion-sites/models 1.1.0 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -1,4 +1,4 @@
1
- import { LinkTargetStatus, BatchOperationState, Permissions, Rights, StringSearchMode, ErrorType, LoadInfoState, PublishPriority, LockType, RLOItemType, ComponentType, SchemaPurpose, DeployerAction, PublishTransactionState, StructureResolveOption, ResolveOptions, RetrieveReason, TranslationStatus, ErrorSeverity, TranslationJobDisplayState, TranslationJobPriority, TranslationJobState, TranslationJobType, ActivityConstraints, ActivityType, ActivityState, ProcessFinishReason } from '@tridion-sites/open-api-client';
1
+ import { LinkTargetStatus, BatchOperationState, Permissions, Rights, StringSearchMode, ErrorType, LoadInfoState, WhereUsedCommentToken, PublishPriority, LockType, RLOItemType, ComponentType, SchemaPurpose, DeployerAction, PublishAction, PublishTransactionState, StructureResolveOption, SynchronizeFlags, ResolveOptions, RetrieveReason, TranslationStatus, ErrorSeverity, TranslationJobDisplayState, TranslationJobPriority, TranslationJobState, TranslationJobType, ActivityConstraints, ActivityType, ActivityState, ProcessFinishReason, ListDetails, DependencyDirection } from '@tridion-sites/open-api-client';
2
2
  import { produce } from 'immer';
3
3
 
4
4
  /**
@@ -214,7 +214,7 @@ LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
214
214
  OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
215
215
  PERFORMANCE OF THIS SOFTWARE.
216
216
  ***************************************************************************** */
217
- /* global Reflect, Promise */
217
+ /* global Reflect, Promise, SuppressedError, Symbol, Iterator */
218
218
 
219
219
 
220
220
  function __rest(s, e) {
@@ -227,7 +227,12 @@ function __rest(s, e) {
227
227
  t[p[i]] = s[p[i]];
228
228
  }
229
229
  return t;
230
- }
230
+ }
231
+
232
+ typeof SuppressedError === "function" ? SuppressedError : function (error, suppressed, message) {
233
+ var e = new Error(message);
234
+ return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
235
+ };
231
236
 
232
237
  const applicableActions = {
233
238
  view: 'tcm:view',
@@ -1130,6 +1135,12 @@ class IdentifiableObject {
1130
1135
  writable: true,
1131
1136
  value: void 0
1132
1137
  });
1138
+ Object.defineProperty(this, "_listInfo", {
1139
+ enumerable: true,
1140
+ configurable: true,
1141
+ writable: true,
1142
+ value: void 0
1143
+ });
1133
1144
  Object.defineProperty(this, "_basicVersionInfo", {
1134
1145
  enumerable: true,
1135
1146
  configurable: true,
@@ -1212,6 +1223,7 @@ class IdentifiableObject {
1212
1223
  this._applicableActions = identifiableObjectArgs.applicableActions;
1213
1224
  this._listLinks = identifiableObjectArgs.listLinks;
1214
1225
  this._securityDescriptor = identifiableObjectArgs.securityDescriptor;
1226
+ this._listInfo = identifiableObjectArgs.listInfo;
1215
1227
  }
1216
1228
  /**
1217
1229
  * Identifier (URI) of the object.
@@ -1261,9 +1273,18 @@ class IdentifiableObject {
1261
1273
  get extensionProperties() {
1262
1274
  return this._backendModel.ExtensionProperties;
1263
1275
  }
1276
+ /**
1277
+ * Collection of the hateoas links.
1278
+ */
1264
1279
  get listLinks() {
1265
1280
  return this._listLinks;
1266
1281
  }
1282
+ /**
1283
+ * List information of the object.
1284
+ */
1285
+ get listInfo() {
1286
+ return this._listInfo;
1287
+ }
1267
1288
  get securityDescriptor() {
1268
1289
  return this._securityDescriptor;
1269
1290
  }
@@ -1324,6 +1345,42 @@ class LoadInfo {
1324
1345
  }
1325
1346
  }
1326
1347
 
1348
+ class WhereUsedListInfo {
1349
+ constructor({ backendModel, commentToken }) {
1350
+ Object.defineProperty(this, "_backendModel", {
1351
+ enumerable: true,
1352
+ configurable: true,
1353
+ writable: true,
1354
+ value: void 0
1355
+ });
1356
+ Object.defineProperty(this, "_commentToken", {
1357
+ enumerable: true,
1358
+ configurable: true,
1359
+ writable: true,
1360
+ value: void 0
1361
+ });
1362
+ Object.defineProperty(this, "getInternalModel", {
1363
+ enumerable: true,
1364
+ configurable: true,
1365
+ writable: true,
1366
+ value: () => {
1367
+ return this._backendModel;
1368
+ }
1369
+ });
1370
+ this._backendModel = backendModel;
1371
+ this._commentToken = commentToken;
1372
+ }
1373
+ get versions() {
1374
+ return this._backendModel.Versions || [];
1375
+ }
1376
+ get comment() {
1377
+ return this._backendModel.Comment;
1378
+ }
1379
+ get hasOnlyOldVersions() {
1380
+ return this._commentToken === 'onlyOldVersions';
1381
+ }
1382
+ }
1383
+
1327
1384
  /**
1328
1385
  * Abstract base class for the data of all system-wide objects.
1329
1386
  */
@@ -1935,20 +1992,51 @@ class Batch extends SystemWideObject {
1935
1992
  }
1936
1993
  }
1937
1994
 
1938
- const mapBatchOperationState = (backendModel) => {
1939
- switch (backendModel) {
1940
- case BatchOperationState.NOT_STARTED:
1941
- return 'notStarted';
1942
- case BatchOperationState.SUCCESS:
1943
- return 'success';
1944
- case BatchOperationState.WARNING:
1945
- return 'warning';
1946
- case BatchOperationState.ERROR:
1947
- return 'error';
1948
- case BatchOperationState.UNKNOWN_BY_CLIENT:
1949
- return 'unknownByClient';
1995
+ class ApiError extends Error {
1996
+ constructor(backendModel) {
1997
+ super();
1998
+ Object.defineProperty(this, "_backendModel", {
1999
+ enumerable: true,
2000
+ configurable: true,
2001
+ writable: true,
2002
+ value: void 0
2003
+ });
2004
+ this._backendModel = backendModel;
2005
+ this.message = this.getMessage(backendModel.body) || backendModel.message;
1950
2006
  }
1951
- };
2007
+ get url() {
2008
+ return this._backendModel.url;
2009
+ }
2010
+ get statusCode() {
2011
+ return this._backendModel.status;
2012
+ }
2013
+ get statusText() {
2014
+ return this._backendModel.statusText;
2015
+ }
2016
+ get request() {
2017
+ return this._backendModel.request;
2018
+ }
2019
+ get body() {
2020
+ return this._backendModel.body;
2021
+ }
2022
+ getInternalModel() {
2023
+ return this._backendModel;
2024
+ }
2025
+ getMessage(backendModelBody) {
2026
+ // IIS or Windows handled errors, before reaching webapp Error handler
2027
+ if (typeof backendModelBody === 'string')
2028
+ return backendModelBody;
2029
+ // Server error message
2030
+ if (backendModelBody.Message) {
2031
+ return backendModelBody.Message;
2032
+ }
2033
+ // JavaScript runtime error message
2034
+ if (backendModelBody.message) {
2035
+ return backendModelBody.message;
2036
+ }
2037
+ return undefined;
2038
+ }
2039
+ }
1952
2040
 
1953
2041
  /**
1954
2042
  * Represents the data of a validation result which is returned when validating an item.
@@ -2038,6 +2126,64 @@ class ValidationWarning extends ValidationResult {
2038
2126
  }
2039
2127
  }
2040
2128
 
2129
+ class ValidationApiError extends ApiError {
2130
+ constructor(backendModel) {
2131
+ var _a, _b;
2132
+ super(backendModel);
2133
+ Object.defineProperty(this, "_backendModel", {
2134
+ enumerable: true,
2135
+ configurable: true,
2136
+ writable: true,
2137
+ value: void 0
2138
+ });
2139
+ Object.defineProperty(this, "_validationWarnings", {
2140
+ enumerable: true,
2141
+ configurable: true,
2142
+ writable: true,
2143
+ value: void 0
2144
+ });
2145
+ Object.defineProperty(this, "_validationErrors", {
2146
+ enumerable: true,
2147
+ configurable: true,
2148
+ writable: true,
2149
+ value: void 0
2150
+ });
2151
+ this._backendModel = backendModel;
2152
+ this._validationErrors = ((_a = backendModel.body.Data.ValidationErrors) === null || _a === void 0 ? void 0 : _a.map(e => new ValidationError(e))) || [];
2153
+ this._validationWarnings = ((_b = backendModel.body.Data.ValidationWarnings) === null || _b === void 0 ? void 0 : _b.map(w => new ValidationWarning(w))) || [];
2154
+ }
2155
+ get validationWarnings() {
2156
+ return this._validationWarnings;
2157
+ }
2158
+ get validationErrors() {
2159
+ return this._validationErrors;
2160
+ }
2161
+ get hasErrors() {
2162
+ return this._validationErrors.length > 0;
2163
+ }
2164
+ get hasWarnings() {
2165
+ return this._validationWarnings.length > 0;
2166
+ }
2167
+ getInternalModel() {
2168
+ return this._backendModel;
2169
+ }
2170
+ }
2171
+
2172
+ const mapBatchOperationState = (backendModel) => {
2173
+ switch (backendModel) {
2174
+ case BatchOperationState.NOT_STARTED:
2175
+ return 'notStarted';
2176
+ case BatchOperationState.SUCCESS:
2177
+ return 'success';
2178
+ case BatchOperationState.WARNING:
2179
+ return 'warning';
2180
+ case BatchOperationState.ERROR:
2181
+ return 'error';
2182
+ case BatchOperationState.UNKNOWN_BY_CLIENT:
2183
+ return 'unknownByClient';
2184
+ }
2185
+ };
2186
+
2041
2187
  class BatchOperation {
2042
2188
  constructor(backendModel, subject) {
2043
2189
  var _a, _b;
@@ -2105,6 +2251,10 @@ class BatchOperation {
2105
2251
  * Error code in case of error during operation (warning, error).
2106
2252
  */
2107
2253
  get errorCode() {
2254
+ if (this._backendModel.ErrorCode === undefined)
2255
+ return undefined;
2256
+ if (this._backendModel.ErrorCode === '')
2257
+ return undefined;
2108
2258
  return this._backendModel.ErrorCode;
2109
2259
  }
2110
2260
  /**
@@ -2503,6 +2653,31 @@ const mapDate = (rawDate) => {
2503
2653
  return date;
2504
2654
  };
2505
2655
 
2656
+ const contentMapping = (mappingRegistry, contentObject) => {
2657
+ if (typeof contentObject !== 'object' || contentObject === null) {
2658
+ throw new Error('Please make sure that content property is of type `Record<string, any>`');
2659
+ }
2660
+ const mappedContent = {};
2661
+ for (const key in contentObject) {
2662
+ const value = contentObject[key];
2663
+ if (typeof value === 'object' && value !== null) {
2664
+ // Map to a Model if object has `$type`
2665
+ if ('$type' in value) {
2666
+ mappedContent[key] = mappingRegistry.map(value);
2667
+ }
2668
+ else {
2669
+ // Otherwise it is just another level of properties and we should go deeper
2670
+ mappedContent[key] = contentMapping(mappingRegistry, value);
2671
+ }
2672
+ }
2673
+ else {
2674
+ // Value is a primitive (e.g. string, number, boolean)
2675
+ mappedContent[key] = value;
2676
+ }
2677
+ }
2678
+ return mappedContent;
2679
+ };
2680
+
2506
2681
  const mapBasicVersionInfoConstructorArgs = (mappingRegistry, backendModel) => {
2507
2682
  const creationDate = backendModel.CreationDate ? mapDate(backendModel.CreationDate) : undefined;
2508
2683
  const revisionDate = backendModel.RevisionDate ? mapDate(backendModel.RevisionDate) : undefined;
@@ -2528,6 +2703,20 @@ const mapErrorType = (backendErrorType) => {
2528
2703
  return 'unknownByClient';
2529
2704
  }
2530
2705
  };
2706
+ const mapErrorTypeToBackend = (errorType) => {
2707
+ switch (errorType) {
2708
+ case 'none':
2709
+ return ErrorType.NONE;
2710
+ case 'error':
2711
+ return ErrorType.ERROR;
2712
+ case 'security':
2713
+ return ErrorType.SECURITY_ERROR;
2714
+ case 'unknownByClient':
2715
+ return ErrorType.UNKNOWN_BY_CLIENT;
2716
+ case undefined:
2717
+ return undefined;
2718
+ }
2719
+ };
2531
2720
 
2532
2721
  const mapIdentifiableObjectConstructorArgs = (mappingRegistry, backendModel) => {
2533
2722
  var _a, _b;
@@ -2541,6 +2730,7 @@ const mapIdentifiableObjectConstructorArgs = (mappingRegistry, backendModel) =>
2541
2730
  const securityDescriptor = backendModel.SecurityDescriptor
2542
2731
  ? mappingRegistry.map(backendModel.SecurityDescriptor)
2543
2732
  : undefined;
2733
+ const listInfo = backendModel.ListInfo ? mappingRegistry.map(backendModel.ListInfo) : undefined;
2544
2734
  return {
2545
2735
  applicableActions,
2546
2736
  basicVersionInfo,
@@ -2548,6 +2738,7 @@ const mapIdentifiableObjectConstructorArgs = (mappingRegistry, backendModel) =>
2548
2738
  listLinks,
2549
2739
  loadInfo,
2550
2740
  securityDescriptor,
2741
+ listInfo,
2551
2742
  };
2552
2743
  };
2553
2744
 
@@ -2561,6 +2752,16 @@ const mapLoadInfoState = (backendLoadInfoState) => {
2561
2752
  return 'unknownByClient';
2562
2753
  }
2563
2754
  };
2755
+ const mapLoadInfoStateToBackend = (loadInfoState) => {
2756
+ switch (loadInfoState) {
2757
+ case 'fullyLoaded':
2758
+ return LoadInfoState.FULLY_LOADED;
2759
+ case 'partiallyLoaded':
2760
+ return LoadInfoState.PARTIALLY_LOADED;
2761
+ case 'unknownByClient':
2762
+ return LoadInfoState.UNKNOWN_BY_CLIENT;
2763
+ }
2764
+ };
2564
2765
 
2565
2766
  const mapLoadInfoConstructorArgs = (mappingRegistry, backendModel) => {
2566
2767
  const errorType = backendModel.ErrorType ? mapErrorType(backendModel.ErrorType) : undefined;
@@ -2575,6 +2776,33 @@ const loadInfoMapping = {
2575
2776
  },
2576
2777
  };
2577
2778
 
2779
+ const mapWhereUsedCommentToken = (backendModel) => {
2780
+ switch (backendModel) {
2781
+ case WhereUsedCommentToken.LOCAL_COPY:
2782
+ return 'localCopy';
2783
+ case WhereUsedCommentToken.ONLY_CHECKED_OUT_VERSION:
2784
+ return 'onlyCheckedOutVersion';
2785
+ case WhereUsedCommentToken.ONLY_OLD_VERSIONS:
2786
+ return 'onlyOldVersions';
2787
+ case WhereUsedCommentToken.PARENT_ITEM:
2788
+ return 'parentItem';
2789
+ case WhereUsedCommentToken.UNKNOWN_BY_CLIENT:
2790
+ return 'unknownByClient';
2791
+ }
2792
+ };
2793
+
2794
+ const mapWhereUsedListInfoConstructorArgs = (mappingRegistry, backendModel) => {
2795
+ const commentToken = backendModel.CommentToken ? mapWhereUsedCommentToken(backendModel.CommentToken) : undefined;
2796
+ return { commentToken };
2797
+ };
2798
+ const whereUsedListInfoMapping = {
2799
+ identifier: backendModel => (backendModel === null || backendModel === void 0 ? void 0 : backendModel.$type) === 'WhereUsedListInfo',
2800
+ mapper: (mappingRegistry, backendModel) => {
2801
+ const { commentToken } = mapWhereUsedListInfoConstructorArgs(mappingRegistry, backendModel);
2802
+ return new WhereUsedListInfo({ backendModel, commentToken });
2803
+ },
2804
+ };
2805
+
2578
2806
  const mapSystemWideObjectConstructorArgs = mapIdentifiableObjectConstructorArgs;
2579
2807
 
2580
2808
  const mapApprovalStatusConstructorArgs = mapSystemWideObjectConstructorArgs;
@@ -2774,7 +3002,7 @@ const mapPublishPriorityToBackend = (model) => {
2774
3002
  const targetTypeMapping = {
2775
3003
  identifier: backendModel => (backendModel === null || backendModel === void 0 ? void 0 : backendModel.$type) === 'TargetType',
2776
3004
  mapper: (mappingRegistry, backendModel) => {
2777
- const { applicableActions, basicVersionInfo, id, listLinks, loadInfo, securityDescriptor } = mapSystemWideObjectConstructorArgs(mappingRegistry, backendModel);
3005
+ const { applicableActions, basicVersionInfo, id, listLinks, loadInfo, securityDescriptor, listInfo } = mapSystemWideObjectConstructorArgs(mappingRegistry, backendModel);
2778
3006
  const accessControlList = backendModel.AccessControlList
2779
3007
  ? mappingRegistry.map(backendModel.AccessControlList)
2780
3008
  : undefined;
@@ -2801,6 +3029,7 @@ const targetTypeMapping = {
2801
3029
  listLinks,
2802
3030
  loadInfo,
2803
3031
  securityDescriptor,
3032
+ listInfo,
2804
3033
  });
2805
3034
  },
2806
3035
  };
@@ -3393,7 +3622,7 @@ class LockInfo {
3393
3622
  */
3394
3623
  class RepositoryLocalObject extends IdentifiableObject {
3395
3624
  constructor(_a) {
3396
- var { backendModel, blueprintInfo, isLocked, limitedVersionInfo, locationInfo, lockInfo, metadataSchema } = _a, identifiableObjectArgs = __rest(_a, ["backendModel", "blueprintInfo", "isLocked", "limitedVersionInfo", "locationInfo", "lockInfo", "metadataSchema"]);
3625
+ var { backendModel, blueprintInfo, isLocked, limitedVersionInfo, locationInfo, lockInfo, metadata, metadataSchema } = _a, identifiableObjectArgs = __rest(_a, ["backendModel", "blueprintInfo", "isLocked", "limitedVersionInfo", "locationInfo", "lockInfo", "metadata", "metadataSchema"]);
3397
3626
  super(Object.assign({ backendModel }, identifiableObjectArgs));
3398
3627
  Object.defineProperty(this, "_limitedVersionInfo", {
3399
3628
  enumerable: true,
@@ -3425,6 +3654,12 @@ class RepositoryLocalObject extends IdentifiableObject {
3425
3654
  writable: true,
3426
3655
  value: void 0
3427
3656
  });
3657
+ Object.defineProperty(this, "_metadata", {
3658
+ enumerable: true,
3659
+ configurable: true,
3660
+ writable: true,
3661
+ value: void 0
3662
+ });
3428
3663
  Object.defineProperty(this, "_isLocked", {
3429
3664
  enumerable: true,
3430
3665
  configurable: true,
@@ -3460,6 +3695,7 @@ class RepositoryLocalObject extends IdentifiableObject {
3460
3695
  }
3461
3696
  });
3462
3697
  this._limitedVersionInfo = limitedVersionInfo;
3698
+ this._metadata = metadata;
3463
3699
  this._metadataSchema = metadataSchema;
3464
3700
  this._blueprintInfo = blueprintInfo;
3465
3701
  this._locationInfo = locationInfo;
@@ -3488,7 +3724,7 @@ class RepositoryLocalObject extends IdentifiableObject {
3488
3724
  return this._lockInfo;
3489
3725
  }
3490
3726
  get metadata() {
3491
- return this._backendModel.Metadata;
3727
+ return this._metadata;
3492
3728
  }
3493
3729
  get metadataSchema() {
3494
3730
  return this._metadataSchema;
@@ -3746,11 +3982,19 @@ class ComponentBase extends VersionedItem {
3746
3982
  * Represents the data of a regular Component: content and metadata fields.
3747
3983
  */
3748
3984
  class Component extends ComponentBase {
3749
- constructor(componentArgs) {
3750
- super(componentArgs);
3985
+ constructor(_a) {
3986
+ var { content, backendModel } = _a, componentBaseArgs = __rest(_a, ["content", "backendModel"]);
3987
+ super(Object.assign({ backendModel }, componentBaseArgs));
3988
+ Object.defineProperty(this, "_content", {
3989
+ enumerable: true,
3990
+ configurable: true,
3991
+ writable: true,
3992
+ value: void 0
3993
+ });
3994
+ this._content = content;
3751
3995
  }
3752
3996
  get content() {
3753
- return this._backendModel.Content;
3997
+ return this._content;
3754
3998
  }
3755
3999
  }
3756
4000
 
@@ -3983,12 +4227,14 @@ const mapRepositoryLocalObjectConstructorArgs = (mappingRegistry, backendModel)
3983
4227
  : undefined;
3984
4228
  const lockInfo = backendModel.LockInfo ? mappingRegistry.map(backendModel.LockInfo) : undefined;
3985
4229
  const isLocked = !!(lockInfo === null || lockInfo === void 0 ? void 0 : lockInfo.lockType.length) && !(lockInfo === null || lockInfo === void 0 ? void 0 : lockInfo.lockType.includes('none'));
4230
+ const metadata = backendModel.Metadata ? contentMapping(mappingRegistry, backendModel.Metadata) : undefined;
3986
4231
  return Object.assign(Object.assign({}, identifiableObjectConstructorArgs), { blueprintInfo,
3987
4232
  isLocked,
3988
4233
  limitedVersionInfo,
3989
4234
  locationInfo,
3990
4235
  lockInfo,
3991
- metadataSchema });
4236
+ metadataSchema,
4237
+ metadata });
3992
4238
  };
3993
4239
 
3994
4240
  const mapRloItemTypeToBackend = (rloItemType) => {
@@ -4019,6 +4265,12 @@ const mapRloItemTypeToBackend = (rloItemType) => {
4019
4265
  return RLOItemType.VIRTUAL_FOLDER;
4020
4266
  case 'unknownByClient':
4021
4267
  return RLOItemType.UNKNOWN_BY_CLIENT;
4268
+ case 'business-process-type':
4269
+ return RLOItemType.BUSINESS_PROCESS_TYPE;
4270
+ case 'process-definition':
4271
+ return RLOItemType.PROCESS_DEFINITION;
4272
+ case 'all':
4273
+ return RLOItemType.ALL;
4022
4274
  }
4023
4275
  };
4024
4276
 
@@ -4094,11 +4346,13 @@ const mapComponentBaseConstructorArgs = (mappingRegistry, backendModel) => {
4094
4346
  };
4095
4347
 
4096
4348
  const mapComponentConstructorArgs = mapComponentBaseConstructorArgs;
4349
+ // Maps multimedia component as a fallback
4097
4350
  const componentMapping = {
4098
- identifier: backendModel => (backendModel === null || backendModel === void 0 ? void 0 : backendModel.$type) === 'Component' &&
4099
- ((backendModel === null || backendModel === void 0 ? void 0 : backendModel.ComponentType) === ComponentType.NORMAL || (backendModel === null || backendModel === void 0 ? void 0 : backendModel.ComponentType) === ComponentType.WIDGET),
4351
+ identifier: backendModel => (backendModel === null || backendModel === void 0 ? void 0 : backendModel.$type) === 'Component',
4100
4352
  mapper: (mappingRegistry, backendModel) => {
4101
- return new Component(Object.assign(Object.assign({}, mapComponentConstructorArgs(mappingRegistry, backendModel)), { backendModel }));
4353
+ const content = backendModel.Content ? contentMapping(mappingRegistry, backendModel.Content) : undefined;
4354
+ return new Component(Object.assign(Object.assign({}, mapComponentConstructorArgs(mappingRegistry, backendModel)), { backendModel,
4355
+ content }));
4102
4356
  },
4103
4357
  };
4104
4358
 
@@ -4141,6 +4395,15 @@ class ItemFieldDefinition {
4141
4395
  get extensionXml() {
4142
4396
  return this._backendModel.ExtensionXml;
4143
4397
  }
4398
+ /**
4399
+ * Whether this field is localizable (default) or not.
4400
+ */
4401
+ get isLocalizable() {
4402
+ if (this._backendModel.IsLocalizable !== undefined) {
4403
+ return this._backendModel.IsLocalizable;
4404
+ }
4405
+ return true;
4406
+ }
4144
4407
  /**
4145
4408
  * Maximum occurrence of the field.
4146
4409
  *
@@ -7114,6 +7377,87 @@ const externalVersionInfoMapping = {
7114
7377
  },
7115
7378
  };
7116
7379
 
7380
+ const registerComponentMappings = (mappingRegistry) => {
7381
+ mappingRegistry.register(multimediaComponentMapping);
7382
+ // Should be last registered as it's used as a fallback.
7383
+ mappingRegistry.register(componentMapping);
7384
+ };
7385
+
7386
+ /**
7387
+ * Node in a dependency graph.
7388
+ */
7389
+ class DependencyGraphNode {
7390
+ constructor({ backendModel, dependencies, item }) {
7391
+ Object.defineProperty(this, "_backendModel", {
7392
+ enumerable: true,
7393
+ configurable: true,
7394
+ writable: true,
7395
+ value: void 0
7396
+ });
7397
+ Object.defineProperty(this, "_dependencies", {
7398
+ enumerable: true,
7399
+ configurable: true,
7400
+ writable: true,
7401
+ value: void 0
7402
+ });
7403
+ Object.defineProperty(this, "_item", {
7404
+ enumerable: true,
7405
+ configurable: true,
7406
+ writable: true,
7407
+ value: void 0
7408
+ });
7409
+ Object.defineProperty(this, "getInternalModel", {
7410
+ enumerable: true,
7411
+ configurable: true,
7412
+ writable: true,
7413
+ value: () => {
7414
+ return this._backendModel;
7415
+ }
7416
+ });
7417
+ this._backendModel = backendModel;
7418
+ this._dependencies = dependencies;
7419
+ this._item = item;
7420
+ }
7421
+ /**
7422
+ * The list of dependencies that the graph node has.
7423
+ */
7424
+ get dependencies() {
7425
+ return this._dependencies;
7426
+ }
7427
+ /**
7428
+ * Indicates whether the graph node exists in the given context Repository.
7429
+ */
7430
+ get existsInContext() {
7431
+ return this._backendModel.ExistsInContext || false;
7432
+ }
7433
+ /**
7434
+ * Indicates whether there are more (transitive) dependencies than returned for the graph node.
7435
+ */
7436
+ get hasMore() {
7437
+ return this._backendModel.HasMore || false;
7438
+ }
7439
+ /**
7440
+ * The item that the graph node represents.
7441
+ */
7442
+ get item() {
7443
+ return this._item;
7444
+ }
7445
+ }
7446
+
7447
+ const mapDependencyGraphNodeConstructorArgs = (mappingRegistry, backendModel) => {
7448
+ var _a;
7449
+ const dependencies = (_a = backendModel.Dependencies) === null || _a === void 0 ? void 0 : _a.map(c => mappingRegistry.map(c)).filter(isDefined);
7450
+ const item = backendModel.Item ? mappingRegistry.map(backendModel.Item) : undefined;
7451
+ return { dependencies, item };
7452
+ };
7453
+ const dependencyGraphNodeMapping = {
7454
+ identifier: backendModel => (backendModel === null || backendModel === void 0 ? void 0 : backendModel.$type) === 'DependencyGraphNode',
7455
+ mapper: (mappingRegistry, backendModel) => {
7456
+ const { dependencies, item } = mapDependencyGraphNodeConstructorArgs(mappingRegistry, backendModel);
7457
+ return new DependencyGraphNode({ backendModel, dependencies, item });
7458
+ },
7459
+ };
7460
+
7117
7461
  /**
7118
7462
  * Represents the data of a Keyword used to classify items.
7119
7463
  */
@@ -7268,7 +7612,7 @@ const mapKeywordConstructorArgs = (mappingRegistry, backendModel) => {
7268
7612
  const keywordMapping = {
7269
7613
  identifier: backendModel => (backendModel === null || backendModel === void 0 ? void 0 : backendModel.$type) === 'Keyword',
7270
7614
  mapper: (mappingRegistry, backendModel) => {
7271
- const { applicableActions, basicVersionInfo, blueprintInfo, id, isLocked, limitedVersionInfo, listLinks, loadInfo, locationInfo, lockInfo, metadataSchema, parentKeywords, relatedKeywords, securityDescriptor, } = mapKeywordConstructorArgs(mappingRegistry, backendModel);
7615
+ const { applicableActions, basicVersionInfo, blueprintInfo, id, isLocked, limitedVersionInfo, listLinks, loadInfo, locationInfo, lockInfo, metadata, metadataSchema, parentKeywords, relatedKeywords, securityDescriptor, listInfo, } = mapKeywordConstructorArgs(mappingRegistry, backendModel);
7272
7616
  return new Keyword({
7273
7617
  applicableActions,
7274
7618
  backendModel,
@@ -7281,10 +7625,12 @@ const keywordMapping = {
7281
7625
  loadInfo,
7282
7626
  locationInfo,
7283
7627
  lockInfo,
7628
+ metadata,
7284
7629
  metadataSchema,
7285
7630
  parentKeywords,
7286
7631
  relatedKeywords,
7287
7632
  securityDescriptor,
7633
+ listInfo,
7288
7634
  });
7289
7635
  },
7290
7636
  };
@@ -7299,7 +7645,7 @@ const mapExternalKeywordConstructorArgs = (mappingRegistry, backendModel) => {
7299
7645
  const externalKeywordMapping = {
7300
7646
  identifier: backendModel => (backendModel === null || backendModel === void 0 ? void 0 : backendModel.$type) === 'ExternalKeyword',
7301
7647
  mapper: (mappingRegistry, backendModel) => {
7302
- const { applicableActions, basicVersionInfo, blueprintInfo, externalMetadataSchemaFields, id, isLocked, limitedVersionInfo, listLinks, loadInfo, locationInfo, lockInfo, metadataSchema, parentKeywords, relatedKeywords, securityDescriptor, } = mapExternalKeywordConstructorArgs(mappingRegistry, backendModel);
7648
+ const { applicableActions, basicVersionInfo, blueprintInfo, externalMetadataSchemaFields, id, isLocked, limitedVersionInfo, listLinks, loadInfo, locationInfo, lockInfo, metadata, metadataSchema, parentKeywords, relatedKeywords, securityDescriptor, listInfo, } = mapExternalKeywordConstructorArgs(mappingRegistry, backendModel);
7303
7649
  return new ExternalKeyword({
7304
7650
  applicableActions,
7305
7651
  backendModel,
@@ -7313,10 +7659,12 @@ const externalKeywordMapping = {
7313
7659
  loadInfo,
7314
7660
  locationInfo,
7315
7661
  lockInfo,
7662
+ metadata,
7316
7663
  metadataSchema,
7317
7664
  parentKeywords,
7318
7665
  relatedKeywords,
7319
7666
  securityDescriptor,
7667
+ listInfo,
7320
7668
  });
7321
7669
  },
7322
7670
  };
@@ -9085,6 +9433,55 @@ class PublishTransactionsCreationResult {
9085
9433
  }
9086
9434
  }
9087
9435
 
9436
+ class PublishTransactionListInfo {
9437
+ constructor({ backendModel, publishAction, scheduleTime }) {
9438
+ Object.defineProperty(this, "_backendModel", {
9439
+ enumerable: true,
9440
+ configurable: true,
9441
+ writable: true,
9442
+ value: void 0
9443
+ });
9444
+ Object.defineProperty(this, "_publishAction", {
9445
+ enumerable: true,
9446
+ configurable: true,
9447
+ writable: true,
9448
+ value: void 0
9449
+ });
9450
+ Object.defineProperty(this, "_scheduleTime", {
9451
+ enumerable: true,
9452
+ configurable: true,
9453
+ writable: true,
9454
+ value: void 0
9455
+ });
9456
+ Object.defineProperty(this, "getInternalModel", {
9457
+ enumerable: true,
9458
+ configurable: true,
9459
+ writable: true,
9460
+ value: () => {
9461
+ return this._backendModel;
9462
+ }
9463
+ });
9464
+ this._backendModel = backendModel;
9465
+ this._publishAction = publishAction;
9466
+ this._scheduleTime = scheduleTime;
9467
+ }
9468
+ get itemPath() {
9469
+ return this._backendModel.ItemPath;
9470
+ }
9471
+ get publicationTargetTitle() {
9472
+ return this._backendModel.PublicationTargetTitle;
9473
+ }
9474
+ get publicationTitle() {
9475
+ return this._backendModel.PublicationTitle;
9476
+ }
9477
+ get publishAction() {
9478
+ return this._publishAction;
9479
+ }
9480
+ get scheduleTime() {
9481
+ return this._scheduleTime;
9482
+ }
9483
+ }
9484
+
9088
9485
  class PublishUrlInfo {
9089
9486
  constructor(backendModel) {
9090
9487
  Object.defineProperty(this, "_backendModel", {
@@ -9398,6 +9795,28 @@ const publishInstructionMapping = {
9398
9795
  },
9399
9796
  };
9400
9797
 
9798
+ const mapPublishAction = (backendModel) => {
9799
+ switch (backendModel) {
9800
+ case PublishAction.PUBLISH:
9801
+ return 'publish';
9802
+ case PublishAction.UN_PUBLISH:
9803
+ return 'unpublish';
9804
+ }
9805
+ };
9806
+
9807
+ const mapPublishTransactionInfoConstructorArgs = (mappingRegistry, backendModel) => {
9808
+ const publishAction = backendModel.PublishAction ? mapPublishAction(backendModel.PublishAction) : undefined;
9809
+ const scheduleTime = backendModel.ScheduleTime ? new Date(backendModel.ScheduleTime) : undefined;
9810
+ return { publishAction, scheduleTime };
9811
+ };
9812
+ const publishTransactionListInfoMapping = {
9813
+ identifier: backendModel => (backendModel === null || backendModel === void 0 ? void 0 : backendModel.$type) === 'PublishTransactionListInfo',
9814
+ mapper: (mappingRegistry, backendModel) => {
9815
+ const { publishAction, scheduleTime } = mapPublishTransactionInfoConstructorArgs(mappingRegistry, backendModel);
9816
+ return new PublishTransactionListInfo({ backendModel, publishAction, scheduleTime });
9817
+ },
9818
+ };
9819
+
9401
9820
  const mapPublishTransactionState = (backendModel) => {
9402
9821
  switch (backendModel) {
9403
9822
  case PublishTransactionState.SCHEDULED_FOR_PUBLISH:
@@ -9605,6 +10024,195 @@ const unpublishInstructionMapping = {
9605
10024
  },
9606
10025
  };
9607
10026
 
10027
+ class SynchronizationAction {
10028
+ constructor({ backendModel, synchronizationActionApplied }) {
10029
+ Object.defineProperty(this, "_synchronizationActionApplied", {
10030
+ enumerable: true,
10031
+ configurable: true,
10032
+ writable: true,
10033
+ value: void 0
10034
+ });
10035
+ Object.defineProperty(this, "hasSynchronizationActionApplied", {
10036
+ enumerable: true,
10037
+ configurable: true,
10038
+ writable: true,
10039
+ value: (synchronizationAction) => {
10040
+ var _a;
10041
+ return !!((_a = this.synchronizationActionApplied) === null || _a === void 0 ? void 0 : _a.includes(synchronizationAction));
10042
+ }
10043
+ });
10044
+ Object.defineProperty(this, "getInternalModel", {
10045
+ enumerable: true,
10046
+ configurable: true,
10047
+ writable: true,
10048
+ value: () => {
10049
+ return this._backendModel;
10050
+ }
10051
+ });
10052
+ this._backendModel = backendModel;
10053
+ this._synchronizationActionApplied = synchronizationActionApplied;
10054
+ }
10055
+ /**
10056
+ * Description/label of the field on which the synchronization operation was applied.
10057
+ * For the following operation the value of this property is null.
10058
+ * "SynchronizeFlags.UpdateRegions"
10059
+ */
10060
+ get fieldDescription() {
10061
+ return this._backendModel.FieldDescription;
10062
+ }
10063
+ /**
10064
+ * Index of a multivalued field in which the synchronization operation was applied.
10065
+ * For the following operation the value of this property is null, as it is not applicable as these
10066
+ * operations are done on fields not individual field value or the the collection of fields.
10067
+ */
10068
+ get fieldIndex() {
10069
+ return this._backendModel.FieldIndex;
10070
+ }
10071
+ /**
10072
+ * XML name of the field on which the synchronization operation was applied.
10073
+ * FieldName contains name of the original region that was changed in case "SynchronizeFlags.UpdateRegions" flag is used.
10074
+ *
10075
+ */
10076
+ get fieldName() {
10077
+ return this._backendModel.FieldName;
10078
+ }
10079
+ /**
10080
+ * The synchronization operation applied.
10081
+ */
10082
+ get synchronizationActionApplied() {
10083
+ return this._synchronizationActionApplied;
10084
+ }
10085
+ }
10086
+
10087
+ const mapSynchronizeFlags = (backendModel) => {
10088
+ switch (backendModel) {
10089
+ case SynchronizeFlags.BASIC:
10090
+ return 'basic';
10091
+ case SynchronizeFlags.FIX_NAMESPACE:
10092
+ return 'fixNamespace';
10093
+ case SynchronizeFlags.REMOVE_UNKNOWN_FIELDS:
10094
+ return 'removeUnknownFields';
10095
+ case SynchronizeFlags.REMOVE_ADDITIONAL_VALUES:
10096
+ return 'removeAdditionalValues';
10097
+ case SynchronizeFlags.APPLY_DEFAULT_VALUES_FOR_MISSING_MANDATORY_FIELDS:
10098
+ return 'applyDefaultValuesForMissingMandatoryFields';
10099
+ case SynchronizeFlags.APPLY_DEFAULT_VALUES_FOR_MISSING_NON_MANDATORY_FIELDS:
10100
+ return 'applyDefaultValuesForMissingNonMandatoryFields';
10101
+ case SynchronizeFlags.APPLY_FILTER_XSLT_TO_XHTML_FIELDS:
10102
+ return 'applyFilterXsltToXhtmlFields';
10103
+ case SynchronizeFlags.CONVERT_FIELD_TYPE:
10104
+ return 'convertFieldType';
10105
+ case SynchronizeFlags.UPDATE_REGIONS:
10106
+ return 'updateRegions';
10107
+ case SynchronizeFlags.SYNC_NON_LOCALIZABLE_FIELDS:
10108
+ return 'syncNonLocalizableFields';
10109
+ case SynchronizeFlags.SYNC_NON_LOCALIZABLE_REGIONS:
10110
+ return 'syncNonLocalizableRegions';
10111
+ case SynchronizeFlags.ALL:
10112
+ return 'all';
10113
+ case SynchronizeFlags.UNKNOWN_BY_CLIENT:
10114
+ return 'unknownByClient';
10115
+ }
10116
+ };
10117
+ const mapSynchronizeFlagsToBackend = (model) => {
10118
+ switch (model) {
10119
+ case 'basic':
10120
+ return SynchronizeFlags.BASIC;
10121
+ case 'fixNamespace':
10122
+ return SynchronizeFlags.FIX_NAMESPACE;
10123
+ case 'removeUnknownFields':
10124
+ return SynchronizeFlags.REMOVE_UNKNOWN_FIELDS;
10125
+ case 'removeAdditionalValues':
10126
+ return SynchronizeFlags.REMOVE_ADDITIONAL_VALUES;
10127
+ case 'applyDefaultValuesForMissingMandatoryFields':
10128
+ return SynchronizeFlags.APPLY_DEFAULT_VALUES_FOR_MISSING_MANDATORY_FIELDS;
10129
+ case 'applyDefaultValuesForMissingNonMandatoryFields':
10130
+ return SynchronizeFlags.APPLY_DEFAULT_VALUES_FOR_MISSING_NON_MANDATORY_FIELDS;
10131
+ case 'applyFilterXsltToXhtmlFields':
10132
+ return SynchronizeFlags.APPLY_FILTER_XSLT_TO_XHTML_FIELDS;
10133
+ case 'convertFieldType':
10134
+ return SynchronizeFlags.CONVERT_FIELD_TYPE;
10135
+ case 'updateRegions':
10136
+ return SynchronizeFlags.UPDATE_REGIONS;
10137
+ case 'syncNonLocalizableFields':
10138
+ return SynchronizeFlags.SYNC_NON_LOCALIZABLE_FIELDS;
10139
+ case 'syncNonLocalizableRegions':
10140
+ return SynchronizeFlags.SYNC_NON_LOCALIZABLE_REGIONS;
10141
+ case 'all':
10142
+ return SynchronizeFlags.ALL;
10143
+ case 'unknownByClient':
10144
+ return SynchronizeFlags.UNKNOWN_BY_CLIENT;
10145
+ }
10146
+ };
10147
+
10148
+ const synchronizationActionMapping = {
10149
+ identifier: backendModel => (backendModel === null || backendModel === void 0 ? void 0 : backendModel.$type) === 'SynchronizationAction',
10150
+ mapper: (mappingRegistry, backendModel) => {
10151
+ var _a;
10152
+ const synchronizationActionApplied = (_a = backendModel.SynchronizationActionApplied) === null || _a === void 0 ? void 0 : _a.map(p => mapSynchronizeFlags(p));
10153
+ return new SynchronizationAction({
10154
+ backendModel,
10155
+ synchronizationActionApplied,
10156
+ });
10157
+ },
10158
+ };
10159
+
10160
+ class SynchronizationResult {
10161
+ constructor({ backendModel, synchronizationActions, synchronizedItem }) {
10162
+ Object.defineProperty(this, "_synchronizationActions", {
10163
+ enumerable: true,
10164
+ configurable: true,
10165
+ writable: true,
10166
+ value: void 0
10167
+ });
10168
+ Object.defineProperty(this, "_synchronizedItem", {
10169
+ enumerable: true,
10170
+ configurable: true,
10171
+ writable: true,
10172
+ value: void 0
10173
+ });
10174
+ Object.defineProperty(this, "getInternalModel", {
10175
+ enumerable: true,
10176
+ configurable: true,
10177
+ writable: true,
10178
+ value: () => {
10179
+ return this._backendModel;
10180
+ }
10181
+ });
10182
+ this._backendModel = backendModel;
10183
+ this._synchronizationActions = synchronizationActions;
10184
+ this._synchronizedItem = synchronizedItem;
10185
+ }
10186
+ /**
10187
+ * Collection of `SynchronizationAction` objects containing all applied changes.
10188
+ */
10189
+ get synchronizationActions() {
10190
+ return this._synchronizationActions;
10191
+ }
10192
+ /**
10193
+ * The `IdentifiableObject` with synchronized content and/or metadata.
10194
+ */
10195
+ get synchronizedItem() {
10196
+ return this._synchronizedItem;
10197
+ }
10198
+ }
10199
+
10200
+ const synchronizationResultMapping = {
10201
+ identifier: backendModel => (backendModel === null || backendModel === void 0 ? void 0 : backendModel.$type) === 'SynchronizationResult',
10202
+ mapper: (mappingRegistry, backendModel) => {
10203
+ var _a;
10204
+ const synchronizationActions = (_a = backendModel.SynchronizationActions) === null || _a === void 0 ? void 0 : _a.map(p => mappingRegistry.map(p)).filter(isDefined);
10205
+ const synchronizedItem = backendModel.SynchronizedItem
10206
+ ? mappingRegistry.map(backendModel.SynchronizedItem)
10207
+ : undefined;
10208
+ return new SynchronizationResult({
10209
+ backendModel,
10210
+ synchronizedItem,
10211
+ synchronizationActions,
10212
+ });
10213
+ },
10214
+ };
10215
+
9608
10216
  /**
9609
10217
  * Represents a system-wide privilege.
9610
10218
  */
@@ -9689,7 +10297,7 @@ const mapTargetGroupConstructorArgs = mapRepositoryLocalObjectConstructorArgs;
9689
10297
  const targetGroupMapping = {
9690
10298
  identifier: backendModel => (backendModel === null || backendModel === void 0 ? void 0 : backendModel.$type) === 'TargetGroup',
9691
10299
  mapper: (mappingRegistry, backendModel) => {
9692
- const { applicableActions, basicVersionInfo, blueprintInfo, id, isLocked, limitedVersionInfo, listLinks, loadInfo, locationInfo, lockInfo, metadataSchema, securityDescriptor, } = mapTargetGroupConstructorArgs(mappingRegistry, backendModel);
10300
+ const { applicableActions, basicVersionInfo, blueprintInfo, id, isLocked, limitedVersionInfo, listLinks, loadInfo, locationInfo, lockInfo, metadata, metadataSchema, securityDescriptor, listInfo, } = mapTargetGroupConstructorArgs(mappingRegistry, backendModel);
9693
10301
  return new TargetGroup({
9694
10302
  applicableActions,
9695
10303
  backendModel,
@@ -9702,8 +10310,10 @@ const targetGroupMapping = {
9702
10310
  loadInfo,
9703
10311
  locationInfo,
9704
10312
  lockInfo,
10313
+ metadata,
9705
10314
  metadataSchema,
9706
10315
  securityDescriptor,
10316
+ listInfo,
9707
10317
  });
9708
10318
  },
9709
10319
  };
@@ -11684,7 +12294,7 @@ const mapTranslationJobItemConstructorArgs = (mappingRegistry, backendModel) =>
11684
12294
  return { idRef, resolveOptions };
11685
12295
  };
11686
12296
  const translationJobItemMapping = {
11687
- identifier: backendModel => (backendModel === null || backendModel === void 0 ? void 0 : backendModel.$type) === 'TranslationJobItem',
12297
+ identifier: backendModel => (backendModel === null || backendModel === void 0 ? void 0 : backendModel.$type) === 'AddedItem',
11688
12298
  mapper: (mappingRegistry, backendModel) => {
11689
12299
  const { idRef, resolveOptions } = mapTranslationJobItemConstructorArgs(mappingRegistry, backendModel);
11690
12300
  return new TranslationJobItem({ backendModel, idRef, resolveOptions });
@@ -12448,7 +13058,7 @@ class UserRuntimeInfo {
12448
13058
 
12449
13059
  const mapTrusteeConstructorArgs = (mappingRegistry, backendModel) => {
12450
13060
  var _a;
12451
- const { applicableActions, basicVersionInfo, id, listLinks, loadInfo, securityDescriptor } = mapSystemWideObjectConstructorArgs(mappingRegistry, backendModel);
13061
+ const { applicableActions, basicVersionInfo, id, listLinks, loadInfo, securityDescriptor, listInfo } = mapSystemWideObjectConstructorArgs(mappingRegistry, backendModel);
12452
13062
  const groupMemberships = (_a = backendModel.GroupMemberships) === null || _a === void 0 ? void 0 : _a.map(m => mappingRegistry.map(m)).filter(isDefined);
12453
13063
  return {
12454
13064
  applicableActions,
@@ -12458,6 +13068,7 @@ const mapTrusteeConstructorArgs = (mappingRegistry, backendModel) => {
12458
13068
  listLinks,
12459
13069
  loadInfo,
12460
13070
  securityDescriptor,
13071
+ listInfo,
12461
13072
  };
12462
13073
  };
12463
13074
 
@@ -12465,7 +13076,7 @@ const mapUserConstructorArgs = mapTrusteeConstructorArgs;
12465
13076
  const userMapping = {
12466
13077
  identifier: backendModel => (backendModel === null || backendModel === void 0 ? void 0 : backendModel.$type) === 'User',
12467
13078
  mapper: (mappingRegistry, backendModel) => {
12468
- const { groupMemberships, applicableActions, basicVersionInfo, id, listLinks, loadInfo, securityDescriptor } = mapUserConstructorArgs(mappingRegistry, backendModel);
13079
+ const { groupMemberships, applicableActions, basicVersionInfo, id, listLinks, loadInfo, securityDescriptor, listInfo, } = mapUserConstructorArgs(mappingRegistry, backendModel);
12469
13080
  return new User({
12470
13081
  applicableActions,
12471
13082
  backendModel,
@@ -12475,6 +13086,7 @@ const userMapping = {
12475
13086
  listLinks,
12476
13087
  loadInfo,
12477
13088
  securityDescriptor,
13089
+ listInfo,
12478
13090
  });
12479
13091
  },
12480
13092
  };
@@ -12489,7 +13101,7 @@ const mapAccessTokenConstructorArgs = (mappingRegistry, backendModel) => {
12489
13101
  const accessTokenMapping = {
12490
13102
  identifier: backendModel => (backendModel === null || backendModel === void 0 ? void 0 : backendModel.$type) === 'AccessToken',
12491
13103
  mapper: (mappingRegistry, backendModel) => {
12492
- const { applicableActions, basicVersionInfo, groupMemberships, id, inheritedSystemPrivileges, listLinks, loadInfo, securityDescriptor, } = mapAccessTokenConstructorArgs(mappingRegistry, backendModel);
13104
+ const { applicableActions, basicVersionInfo, groupMemberships, id, inheritedSystemPrivileges, listLinks, loadInfo, securityDescriptor, listInfo, } = mapAccessTokenConstructorArgs(mappingRegistry, backendModel);
12493
13105
  return new AccessToken({
12494
13106
  applicableActions,
12495
13107
  backendModel,
@@ -12500,6 +13112,7 @@ const accessTokenMapping = {
12500
13112
  listLinks,
12501
13113
  loadInfo,
12502
13114
  securityDescriptor,
13115
+ listInfo,
12503
13116
  });
12504
13117
  },
12505
13118
  };
@@ -12545,7 +13158,7 @@ const mapUserGroupConstructorArgs = (mappingRegistry, backendModel) => {
12545
13158
  const userGroupMapping = {
12546
13159
  identifier: backendModel => (backendModel === null || backendModel === void 0 ? void 0 : backendModel.$type) === 'Group',
12547
13160
  mapper: (mappingRegistry, backendModel) => {
12548
- const { applicableActions, basicVersionInfo, groupMemberships, id, inheritedSystemPrivileges, listLinks, loadInfo, scope, securityDescriptor, systemPrivileges, } = mapUserGroupConstructorArgs(mappingRegistry, backendModel);
13161
+ const { applicableActions, basicVersionInfo, groupMemberships, id, inheritedSystemPrivileges, listLinks, loadInfo, scope, securityDescriptor, systemPrivileges, listInfo, } = mapUserGroupConstructorArgs(mappingRegistry, backendModel);
12549
13162
  return new UserGroup({
12550
13163
  backendModel,
12551
13164
  groupMemberships,
@@ -12558,6 +13171,7 @@ const userGroupMapping = {
12558
13171
  listLinks,
12559
13172
  loadInfo,
12560
13173
  securityDescriptor,
13174
+ listInfo,
12561
13175
  });
12562
13176
  },
12563
13177
  };
@@ -13733,7 +14347,7 @@ const mapWorkflowObjectConstructorArgs = (mappingRegistry, backendModel) => {
13733
14347
  };
13734
14348
 
13735
14349
  const mapActivityDefinitionConstructorArgs = (mappingRegistry, backendModel) => {
13736
- const { contextRepository, applicableActions, basicVersionInfo, id, listLinks, loadInfo, securityDescriptor } = mapWorkflowObjectConstructorArgs(mappingRegistry, backendModel);
14350
+ const { contextRepository, applicableActions, basicVersionInfo, id, listLinks, loadInfo, securityDescriptor, listInfo, } = mapWorkflowObjectConstructorArgs(mappingRegistry, backendModel);
13737
14351
  const activityConstraints = backendModel.ActivityConstraints
13738
14352
  ? mapActivityConstraints(backendModel.ActivityConstraints)
13739
14353
  : undefined;
@@ -13752,6 +14366,7 @@ const mapActivityDefinitionConstructorArgs = (mappingRegistry, backendModel) =>
13752
14366
  listLinks,
13753
14367
  loadInfo,
13754
14368
  securityDescriptor,
14369
+ listInfo,
13755
14370
  };
13756
14371
  };
13757
14372
  const activityDefinitionMapping = {
@@ -13763,7 +14378,7 @@ const activityDefinitionMapping = {
13763
14378
 
13764
14379
  const mapActivityConstructorArgs = (mappingRegistry, backendModel) => {
13765
14380
  var _a;
13766
- const { contextRepository, applicableActions, basicVersionInfo, id, listLinks, loadInfo, securityDescriptor } = mapWorkflowObjectConstructorArgs(mappingRegistry, backendModel);
14381
+ const { contextRepository, applicableActions, basicVersionInfo, id, listLinks, loadInfo, securityDescriptor, listInfo, } = mapWorkflowObjectConstructorArgs(mappingRegistry, backendModel);
13767
14382
  const assignee = backendModel.Assignee ? mappingRegistry.map(backendModel.Assignee) : undefined;
13768
14383
  const owner = backendModel.Owner ? mappingRegistry.map(backendModel.Owner) : undefined;
13769
14384
  const primarySubject = backendModel.PrimarySubject
@@ -13794,6 +14409,7 @@ const mapActivityConstructorArgs = (mappingRegistry, backendModel) => {
13794
14409
  startDate,
13795
14410
  suspendDate,
13796
14411
  workItems,
14412
+ listInfo,
13797
14413
  };
13798
14414
  };
13799
14415
 
@@ -13818,7 +14434,7 @@ const mapActivityHistoryConstructorArgs = (mappingRegistry, backendModel) => {
13818
14434
  const activityHistoryMapping = {
13819
14435
  identifier: backendModel => (backendModel === null || backendModel === void 0 ? void 0 : backendModel.$type) === 'ActivityHistory',
13820
14436
  mapper: (mappingRegistry, backendModel) => {
13821
- const { activityType, applicableActions, approvalStatus, assignee, assignmentDate, basicVersionInfo, contextRepository, dueDate, finishDate, id, listLinks, loadInfo, owner, primarySubject, process, securityDescriptor, startDate, suspendDate, workItems, } = mapActivityHistoryConstructorArgs(mappingRegistry, backendModel);
14437
+ const { activityType, applicableActions, approvalStatus, assignee, assignmentDate, basicVersionInfo, contextRepository, dueDate, finishDate, id, listLinks, loadInfo, owner, primarySubject, process, securityDescriptor, startDate, suspendDate, workItems, listInfo, } = mapActivityHistoryConstructorArgs(mappingRegistry, backendModel);
13822
14438
  return new ActivityHistory({
13823
14439
  activityType,
13824
14440
  applicableActions,
@@ -13840,6 +14456,7 @@ const activityHistoryMapping = {
13840
14456
  startDate,
13841
14457
  suspendDate,
13842
14458
  workItems,
14459
+ listInfo,
13843
14460
  });
13844
14461
  },
13845
14462
  };
@@ -13906,7 +14523,7 @@ const mapActivityInstanceConstructorArgs = (mappingRegistry, backendModel) => {
13906
14523
  const activityInstanceMapping = {
13907
14524
  identifier: backendModel => (backendModel === null || backendModel === void 0 ? void 0 : backendModel.$type) === 'ActivityInstance',
13908
14525
  mapper: (mappingRegistry, backendModel) => {
13909
- const { activityConstraints, activityDefinition, activityState, applicableActions, approvalStatus, assignee, assignmentDate, basicVersionInfo, contextRepository, dueDate, finishDate, id, listLinks, loadInfo, owner, primarySubject, process, processDefinition, securityDescriptor, startDate, suspendDate, workflowType, workItems, } = mapActivityInstanceConstructorArgs(mappingRegistry, backendModel);
14526
+ const { activityConstraints, activityDefinition, activityState, applicableActions, approvalStatus, assignee, assignmentDate, basicVersionInfo, contextRepository, dueDate, finishDate, id, listLinks, loadInfo, owner, primarySubject, process, processDefinition, securityDescriptor, startDate, suspendDate, workflowType, workItems, listInfo, } = mapActivityInstanceConstructorArgs(mappingRegistry, backendModel);
13910
14527
  return new ActivityInstance({
13911
14528
  activityConstraints,
13912
14529
  activityDefinition,
@@ -13932,6 +14549,7 @@ const activityInstanceMapping = {
13932
14549
  suspendDate,
13933
14550
  workflowType,
13934
14551
  workItems,
14552
+ listInfo,
13935
14553
  });
13936
14554
  },
13937
14555
  };
@@ -13959,7 +14577,7 @@ const mapProcessDefinitionConstructorArgs = (mappingRegistry, backendModel) => {
13959
14577
  const processDefinitionMapping = {
13960
14578
  identifier: backendModel => (backendModel === null || backendModel === void 0 ? void 0 : backendModel.$type) === 'ProcessDefinition',
13961
14579
  mapper: (mappingRegistry, backendModel) => {
13962
- const { activityDefinitions, applicableActions, basicVersionInfo, blueprintInfo, id, isLocked, limitedVersionInfo, listLinks, loadInfo, locationInfo, lockInfo, metadataSchema, securityDescriptor, } = mapProcessDefinitionConstructorArgs(mappingRegistry, backendModel);
14580
+ const { activityDefinitions, applicableActions, basicVersionInfo, blueprintInfo, id, isLocked, limitedVersionInfo, listLinks, loadInfo, locationInfo, lockInfo, metadata, metadataSchema, securityDescriptor, listInfo, } = mapProcessDefinitionConstructorArgs(mappingRegistry, backendModel);
13963
14581
  return new ProcessDefinition({
13964
14582
  activityDefinitions,
13965
14583
  applicableActions,
@@ -13973,8 +14591,10 @@ const processDefinitionMapping = {
13973
14591
  loadInfo,
13974
14592
  locationInfo,
13975
14593
  lockInfo,
14594
+ metadata,
13976
14595
  metadataSchema,
13977
14596
  securityDescriptor,
14597
+ listInfo,
13978
14598
  });
13979
14599
  },
13980
14600
  };
@@ -13994,7 +14614,7 @@ const mapProcessFinishReason = (backendModel) => {
13994
14614
 
13995
14615
  const mapProcessConstructorArgs = (mappingRegistry, backendModel) => {
13996
14616
  var _a;
13997
- const { contextRepository, applicableActions, basicVersionInfo, id, listLinks, loadInfo, securityDescriptor } = mapWorkflowObjectConstructorArgs(mappingRegistry, backendModel);
14617
+ const { contextRepository, applicableActions, basicVersionInfo, id, listLinks, loadInfo, securityDescriptor, listInfo, } = mapWorkflowObjectConstructorArgs(mappingRegistry, backendModel);
13998
14618
  const activities = (_a = backendModel.Activities) === null || _a === void 0 ? void 0 : _a.map(k => mappingRegistry.map(k)).filter(isDefined);
13999
14619
  const creator = backendModel.Creator ? mappingRegistry.map(backendModel.Creator) : undefined;
14000
14620
  const subjects = mapLinks(mappingRegistry, backendModel.Subjects);
@@ -14011,6 +14631,7 @@ const mapProcessConstructorArgs = (mappingRegistry, backendModel) => {
14011
14631
  securityDescriptor,
14012
14632
  subjects,
14013
14633
  workflowType,
14634
+ listInfo,
14014
14635
  };
14015
14636
  };
14016
14637
 
@@ -14024,7 +14645,7 @@ const mapProcessHistoryConstructorArgs = (mappingRegistry, backendModel) => {
14024
14645
  const processHistoryMapping = {
14025
14646
  identifier: backendModel => (backendModel === null || backendModel === void 0 ? void 0 : backendModel.$type) === 'ProcessHistory',
14026
14647
  mapper: (mappingRegistry, backendModel) => {
14027
- const { activities, applicableActions, basicVersionInfo, contextRepository, creator, finishDate, finishReason, id, listLinks, loadInfo, securityDescriptor, subjects, workflowType, } = mapProcessHistoryConstructorArgs(mappingRegistry, backendModel);
14648
+ const { activities, applicableActions, basicVersionInfo, contextRepository, creator, finishDate, finishReason, id, listLinks, loadInfo, securityDescriptor, subjects, workflowType, listInfo, } = mapProcessHistoryConstructorArgs(mappingRegistry, backendModel);
14028
14649
  return new ProcessHistory({
14029
14650
  activities,
14030
14651
  applicableActions,
@@ -14040,6 +14661,7 @@ const processHistoryMapping = {
14040
14661
  securityDescriptor,
14041
14662
  subjects,
14042
14663
  workflowType,
14664
+ listInfo,
14043
14665
  });
14044
14666
  },
14045
14667
  };
@@ -14054,7 +14676,7 @@ const mapProcessInstanceConstructorArgs = (mappingRegistry, backendModel) => {
14054
14676
  const processInstanceMapping = {
14055
14677
  identifier: backendModel => (backendModel === null || backendModel === void 0 ? void 0 : backendModel.$type) === 'ProcessInstance',
14056
14678
  mapper: (mappingRegistry, backendModel) => {
14057
- const { activities, applicableActions, basicVersionInfo, contextRepository, creator, id, listLinks, loadInfo, processDefinition, securityDescriptor, subjects, workflowType, } = mapProcessInstanceConstructorArgs(mappingRegistry, backendModel);
14679
+ const { activities, applicableActions, basicVersionInfo, contextRepository, creator, id, listLinks, loadInfo, processDefinition, securityDescriptor, subjects, workflowType, listInfo, } = mapProcessInstanceConstructorArgs(mappingRegistry, backendModel);
14058
14680
  return new ProcessInstance({
14059
14681
  activities,
14060
14682
  applicableActions,
@@ -14069,17 +14691,23 @@ const processInstanceMapping = {
14069
14691
  securityDescriptor,
14070
14692
  subjects,
14071
14693
  workflowType,
14694
+ listInfo,
14072
14695
  });
14073
14696
  },
14074
14697
  };
14075
14698
 
14076
14699
  const mapTridionActivityDefinitionConstructorArgs = (mappingRegistry, backendModel) => {
14700
+ var _a, _b, _c;
14077
14701
  const activityDefinition = mapActivityDefinitionConstructorArgs(mappingRegistry, backendModel);
14078
14702
  const activityType = backendModel.ActivityType ? mapActivityType(backendModel.ActivityType) : undefined;
14079
14703
  const finishApprovalStatus = backendModel.FinishApprovalStatus
14080
14704
  ? mappingRegistry.map(backendModel.FinishApprovalStatus)
14081
14705
  : undefined;
14082
- const nextActivityDefinitions = mapLinks(mappingRegistry, backendModel.NextActivityDefinitions);
14706
+ const activityDefinitionsToHide = new Set(((_b = (_a = backendModel.ExtensionProperties) === null || _a === void 0 ? void 0 : _a['tm_ActivityTransitionsToHide']) === null || _b === void 0 ? void 0 : _b.split(',')) || []);
14707
+ const filteredActivityDefinitions = (_c = backendModel.NextActivityDefinitions) === null || _c === void 0 ? void 0 : _c.filter(activityDefinition => {
14708
+ return !activityDefinitionsToHide.has(activityDefinition.IdRef);
14709
+ });
14710
+ const nextActivityDefinitions = mapLinks(mappingRegistry, filteredActivityDefinitions);
14083
14711
  return Object.assign(Object.assign({}, activityDefinition), { activityType,
14084
14712
  finishApprovalStatus,
14085
14713
  nextActivityDefinitions });
@@ -14087,7 +14715,7 @@ const mapTridionActivityDefinitionConstructorArgs = (mappingRegistry, backendMod
14087
14715
  const tridionActivityDefinitionMapping = {
14088
14716
  identifier: backendModel => (backendModel === null || backendModel === void 0 ? void 0 : backendModel.$type) === 'TridionActivityDefinition',
14089
14717
  mapper: (mappingRegistry, backendModel) => {
14090
- const { activityConstraints, activityType, applicableActions, assignee, basicVersionInfo, contextRepository, finishApprovalStatus, id, listLinks, loadInfo, nextActivityDefinitions, processDefinition, securityDescriptor, } = mapTridionActivityDefinitionConstructorArgs(mappingRegistry, backendModel);
14718
+ const { activityConstraints, activityType, applicableActions, assignee, basicVersionInfo, contextRepository, finishApprovalStatus, id, listLinks, loadInfo, nextActivityDefinitions, processDefinition, securityDescriptor, listInfo, } = mapTridionActivityDefinitionConstructorArgs(mappingRegistry, backendModel);
14091
14719
  return new TridionActivityDefinition({
14092
14720
  activityConstraints,
14093
14721
  activityType,
@@ -14103,6 +14731,7 @@ const tridionActivityDefinitionMapping = {
14103
14731
  nextActivityDefinitions,
14104
14732
  processDefinition,
14105
14733
  securityDescriptor,
14734
+ listInfo,
14106
14735
  });
14107
14736
  },
14108
14737
  };
@@ -14114,7 +14743,7 @@ const mapTridionProcessDefinitionConstructorArgs = (mappingRegistry, backendMode
14114
14743
  const tridionProcessDefinitionMapping = {
14115
14744
  identifier: backendModel => (backendModel === null || backendModel === void 0 ? void 0 : backendModel.$type) === 'TridionProcessDefinition',
14116
14745
  mapper: (mappingRegistry, backendModel) => {
14117
- const { activityDefinitions, applicableActions, id, isLocked, listLinks, loadInfo, securityDescriptor, basicVersionInfo, limitedVersionInfo, blueprintInfo, locationInfo, lockInfo, metadataSchema, } = mapTridionProcessDefinitionConstructorArgs(mappingRegistry, backendModel);
14746
+ const { activityDefinitions, applicableActions, id, isLocked, listLinks, loadInfo, securityDescriptor, basicVersionInfo, limitedVersionInfo, blueprintInfo, locationInfo, lockInfo, metadata, metadataSchema, listInfo, } = mapTridionProcessDefinitionConstructorArgs(mappingRegistry, backendModel);
14118
14747
  return new TridionProcessDefinition({
14119
14748
  basicVersionInfo,
14120
14749
  backendModel,
@@ -14129,7 +14758,9 @@ const tridionProcessDefinitionMapping = {
14129
14758
  blueprintInfo,
14130
14759
  locationInfo,
14131
14760
  lockInfo,
14761
+ metadata,
14132
14762
  metadataSchema,
14763
+ listInfo,
14133
14764
  });
14134
14765
  },
14135
14766
  };
@@ -14207,7 +14838,7 @@ const mapWorkflowItemConstructorArgs = (mappingRegistry, backendModel) => {
14207
14838
  const workflowItemMapping = {
14208
14839
  identifier: backendModel => (backendModel === null || backendModel === void 0 ? void 0 : backendModel.$type) === 'WorkItem',
14209
14840
  mapper: (mappingRegistry, backendModel) => {
14210
- const { activity, contextRepository, owner, process, subject, subjectOwningRepository, applicableActions, basicVersionInfo, id, listLinks, loadInfo, securityDescriptor, } = mapWorkflowItemConstructorArgs(mappingRegistry, backendModel);
14841
+ const { activity, contextRepository, owner, process, subject, subjectOwningRepository, applicableActions, basicVersionInfo, id, listLinks, loadInfo, securityDescriptor, listInfo, } = mapWorkflowItemConstructorArgs(mappingRegistry, backendModel);
14211
14842
  return new WorkItem({
14212
14843
  backendModel,
14213
14844
  activity,
@@ -14222,11 +14853,13 @@ const workflowItemMapping = {
14222
14853
  listLinks,
14223
14854
  loadInfo,
14224
14855
  securityDescriptor,
14856
+ listInfo,
14225
14857
  });
14226
14858
  },
14227
14859
  };
14228
14860
 
14229
14861
  const registerMappings = (mappingRegistry) => {
14862
+ registerComponentMappings(mappingRegistry);
14230
14863
  mappingRegistry.register(accessControlEntryMapping);
14231
14864
  mappingRegistry.register(accessControlListMapping);
14232
14865
  mappingRegistry.register(accessTokenMapping);
@@ -14244,11 +14877,11 @@ const registerMappings = (mappingRegistry) => {
14244
14877
  mappingRegistry.register(classificationDetailMapping);
14245
14878
  mappingRegistry.register(classificationInfoMapping);
14246
14879
  mappingRegistry.register(componentLinkFieldDefinitionMapping);
14247
- mappingRegistry.register(componentMapping);
14248
14880
  mappingRegistry.register(componentPresentationMapping);
14249
14881
  mappingRegistry.register(componentTemplateMapping);
14250
14882
  mappingRegistry.register(dateFieldDefinitionMapping);
14251
14883
  mappingRegistry.register(dateListDefinitionMapping);
14884
+ mappingRegistry.register(dependencyGraphNodeMapping);
14252
14885
  mappingRegistry.register(dynamicVersionInfoMapping);
14253
14886
  mappingRegistry.register(embeddedRegionMapping);
14254
14887
  mappingRegistry.register(embeddedSchemaFieldDefinitionMapping);
@@ -14275,7 +14908,6 @@ const registerMappings = (mappingRegistry) => {
14275
14908
  mappingRegistry.register(locationInfoMapping);
14276
14909
  mappingRegistry.register(lockInfoMapping);
14277
14910
  mappingRegistry.register(multilineTextFieldDefinitionMapping);
14278
- mappingRegistry.register(multimediaComponentMapping);
14279
14911
  mappingRegistry.register(multimediaLinkFieldDefinitionMapping);
14280
14912
  mappingRegistry.register(multimediaTypeMapping);
14281
14913
  mappingRegistry.register(numberFieldDefinitionMapping);
@@ -14291,6 +14923,7 @@ const registerMappings = (mappingRegistry) => {
14291
14923
  mappingRegistry.register(publishInstructionMapping);
14292
14924
  mappingRegistry.register(publishLocationInfoMapping);
14293
14925
  mappingRegistry.register(publishTransactionMapping);
14926
+ mappingRegistry.register(publishTransactionListInfoMapping);
14294
14927
  mappingRegistry.register(publishTransactionsCreationResultMapping);
14295
14928
  mappingRegistry.register(publishUrlInfoMapping);
14296
14929
  mappingRegistry.register(repositoryMapping);
@@ -14302,6 +14935,8 @@ const registerMappings = (mappingRegistry) => {
14302
14935
  mappingRegistry.register(singleLineTextFieldDefinitionMapping);
14303
14936
  mappingRegistry.register(singleLineTextListDefinitionMapping);
14304
14937
  mappingRegistry.register(structureGroupMapping);
14938
+ mappingRegistry.register(synchronizationActionMapping);
14939
+ mappingRegistry.register(synchronizationResultMapping);
14305
14940
  mappingRegistry.register(systemPrivilegeMapping);
14306
14941
  mappingRegistry.register(systemPrivilegesDictionaryMapping);
14307
14942
  mappingRegistry.register(targetGroupConditionMapping);
@@ -14332,6 +14967,7 @@ const registerMappings = (mappingRegistry) => {
14332
14967
  mappingRegistry.register(userPreferencesMapping);
14333
14968
  mappingRegistry.register(userProfileMapping);
14334
14969
  mappingRegistry.register(userUserRuntimeInfoMapping);
14970
+ mappingRegistry.register(whereUsedListInfoMapping);
14335
14971
  mappingRegistry.register(workflowInfoMapping);
14336
14972
  mappingRegistry.register(workflowItemMapping);
14337
14973
  mappingRegistry.register(xhtmlFieldDefinitionMapping);
@@ -14418,22 +15054,22 @@ const isRloNode = (node) => {
14418
15054
  * @returns graph of unconnected nodes
14419
15055
  */
14420
15056
  const createGraphNodes$1 = (backendNodes) => {
14421
- var _a;
14422
15057
  const graph = new BlueprintGraph();
14423
15058
  for (const backendNode of backendNodes) {
14424
- if (!backendNode.Item || !backendNode.ContextRepositoryId)
15059
+ if (!backendNode.ContextRepositoryId)
15060
+ continue;
15061
+ const contextRepositoryId = parseItemUri(backendNode.ContextRepositoryId);
15062
+ const contextRepositoryLink = Link.create(contextRepositoryId, backendNode.ContextRepositoryTitle);
15063
+ // When item doesn't exist in the current context Item value is `undefined`.
15064
+ if (!backendNode.Item) {
15065
+ graph.addNode(backendNode.ContextRepositoryId, contextRepositoryLink);
14425
15066
  continue;
15067
+ }
14426
15068
  const item = mapToModel(backendNode.Item);
14427
15069
  if (item instanceof RepositoryLocalObject) {
14428
- const contextPublicationLink = (_a = item.locationInfo) === null || _a === void 0 ? void 0 : _a.contextRepository;
14429
- if (!contextPublicationLink)
14430
- continue;
14431
- const data = new ItemBlueprintRloNodeData(contextPublicationLink, item);
15070
+ const data = new ItemBlueprintRloNodeData(contextRepositoryLink, item);
14432
15071
  graph.addNode(backendNode.ContextRepositoryId, data);
14433
15072
  }
14434
- if (item instanceof Publication) {
14435
- graph.addNode(item.id.asString, item);
14436
- }
14437
15073
  }
14438
15074
  return graph;
14439
15075
  };
@@ -14486,6 +15122,43 @@ const constructItemGraph = (backendModel) => {
14486
15122
  return graph;
14487
15123
  };
14488
15124
 
15125
+ const mapListDetailsLevelToBackend = (backendValue) => {
15126
+ switch (backendValue) {
15127
+ case 'contentless':
15128
+ return ListDetails.CONTENTLESS;
15129
+ case 'idAndTitleOnly':
15130
+ return ListDetails.ID_AND_TITLE_ONLY;
15131
+ case 'withApplicableActions':
15132
+ return ListDetails.WITH_APPLICABLE_ACTIONS;
15133
+ }
15134
+ };
15135
+
15136
+ const mapDependencyDirectionToBackend = (backendValue) => {
15137
+ switch (backendValue) {
15138
+ case 'uses':
15139
+ return DependencyDirection.USES;
15140
+ case 'usedBy':
15141
+ return DependencyDirection.USED_BY;
15142
+ }
15143
+ };
15144
+
15145
+ const mapToModels = (backendItems) => {
15146
+ return backendItems.map(i => tryMapToModel(i)).filter(isDefined);
15147
+ };
15148
+
15149
+ const getPrimaryItem = (backendResponse) => {
15150
+ const backendResponseItems = backendResponse.Items || [];
15151
+ for (const backendNode of backendResponseItems) {
15152
+ if (!backendNode.Item || !backendNode.ContextRepositoryId)
15153
+ continue;
15154
+ const item = mapToModel(backendNode.Item);
15155
+ if (item instanceof RepositoryLocalObject) {
15156
+ return item;
15157
+ }
15158
+ }
15159
+ throw Error('No primary item found');
15160
+ };
15161
+
14489
15162
  class ItemBlueprintHierarchy {
14490
15163
  constructor(backendModel) {
14491
15164
  Object.defineProperty(this, "_backendModel", {
@@ -14500,6 +15173,12 @@ class ItemBlueprintHierarchy {
14500
15173
  writable: true,
14501
15174
  value: void 0
14502
15175
  });
15176
+ Object.defineProperty(this, "_primaryItem", {
15177
+ enumerable: true,
15178
+ configurable: true,
15179
+ writable: true,
15180
+ value: void 0
15181
+ });
14503
15182
  Object.defineProperty(this, "rootNode", {
14504
15183
  enumerable: true,
14505
15184
  configurable: true,
@@ -14533,8 +15212,12 @@ class ItemBlueprintHierarchy {
14533
15212
  });
14534
15213
  this._backendModel = backendModel;
14535
15214
  this._graph = constructItemGraph(backendModel);
15215
+ this._primaryItem = getPrimaryItem(backendModel);
14536
15216
  this.rootNode = this._graph.getRootNode();
14537
15217
  }
15218
+ get primaryItem() {
15219
+ return this._primaryItem;
15220
+ }
14538
15221
  }
14539
15222
 
14540
15223
  /**
@@ -14597,6 +15280,14 @@ class PublicationBlueprintHierarchy {
14597
15280
  return this._graph.getNode(publicationId.asString);
14598
15281
  }
14599
15282
  });
15283
+ Object.defineProperty(this, "getNodes", {
15284
+ enumerable: true,
15285
+ configurable: true,
15286
+ writable: true,
15287
+ value: () => {
15288
+ return this._graph.getNodes();
15289
+ }
15290
+ });
14600
15291
  Object.defineProperty(this, "getInternalModel", {
14601
15292
  enumerable: true,
14602
15293
  configurable: true,
@@ -14697,52 +15388,6 @@ const itemTypes = [
14697
15388
  ];
14698
15389
  const itemType = createEnumObject(itemTypes);
14699
15390
 
14700
- class ApiError extends Error {
14701
- constructor(backendModel) {
14702
- super();
14703
- Object.defineProperty(this, "_backendModel", {
14704
- enumerable: true,
14705
- configurable: true,
14706
- writable: true,
14707
- value: void 0
14708
- });
14709
- this._backendModel = backendModel;
14710
- this.message = this.getMessage(backendModel.body) || backendModel.message;
14711
- }
14712
- get url() {
14713
- return this._backendModel.url;
14714
- }
14715
- get statusCode() {
14716
- return this._backendModel.status;
14717
- }
14718
- get statusText() {
14719
- return this._backendModel.statusText;
14720
- }
14721
- get request() {
14722
- return this._backendModel.request;
14723
- }
14724
- get body() {
14725
- return this._backendModel.body;
14726
- }
14727
- getInternalModel() {
14728
- return this._backendModel;
14729
- }
14730
- getMessage(backendModelBody) {
14731
- // IIS or Windows handled errors, before reaching webapp Error handler
14732
- if (typeof backendModelBody === 'string')
14733
- return backendModelBody;
14734
- // Server error message
14735
- if (backendModelBody.Message) {
14736
- return backendModelBody.Message;
14737
- }
14738
- // JavaScript runtime error message
14739
- if (backendModelBody.message) {
14740
- return backendModelBody.message;
14741
- }
14742
- return undefined;
14743
- }
14744
- }
14745
-
14746
15391
  const getItemContainerId = (item) => {
14747
15392
  var _a, _b, _c, _d, _e;
14748
15393
  if (item instanceof Keyword && ((_a = item.parentKeywords) === null || _a === void 0 ? void 0 : _a.length)) {
@@ -14890,8 +15535,4 @@ const getItemType = (item) => {
14890
15535
  return undefined;
14891
15536
  };
14892
15537
 
14893
- const mapToModels = (backendItems) => {
14894
- return backendItems.map(i => tryMapToModel(i)).filter(isDefined);
14895
- };
14896
-
14897
- export { AccessControlEntry, AccessControlList, AccessToken, Activity, ActivityDefinition, ActivityHistory, ActivityInstance, ApiError, ApprovalStatus, BasicVersionInfo, Batch, BatchOperation, BinaryContent, BlueprintGraph, BlueprintGraphNode, BlueprintInfo, Bundle, BusinessProcessType, BusinessProcessTypes, ClaimMapping, ClassificationDetail, ClassificationInfo, Component, ComponentBase, ComponentLinkFieldDefinition, ComponentPresentation, ComponentTemplate, DateFieldDefinition, DateListDefinition, DynamicVersionInfo, EclUri, EmbeddedRegion, EmbeddedSchemaFieldDefinition, ExternalContainer, ExternalKeyword, ExternalKeywordCategory, ExternalLinkFieldDefinition, ExternalMultimediaComponent, ExternalVersionInfo, FinishActivityResult, Folder, FormattingFeatures, FullVersionInfo, GroupMembership, HateoasLink, IdentifiableObject, ItemBlueprintHierarchy, ItemBlueprintRloNodeData, ItemFieldDefinition, ItemPublishableFieldDefinition, Keyword, KeywordCategory, KeywordFieldDefinition, LimitedVersionInfo, Link, LinkWithIsEditable, ListDefinition, LoadInfo, LocationInfo, LockInfo, MultiLineTextFieldDefinition, MultimediaComponent, MultimediaLinkFieldDefinition, MultimediaType, NumberFieldDefinition, NumberListDefinition, OrganizationalItem, Page, PageTemplate, Process, ProcessDefinition, ProcessHistory, ProcessInstance, ProcessedItem, Publication, PublicationBlueprintHierarchy, PublishContext, PublishInfo, PublishInstruction, PublishInstructionBase, PublishLocationInfo, PublishTransaction, PublishTransactionsCreationResult, PublishUrlInfo, PublishingTarget, Region, Repository, RepositoryLocalObject, ResolveInstruction, ResolveInstructionBase, ResolvedItem, Schema, SearchFolder, SecurityDescriptor, SingleLineTextFieldDefinition, SingleLineTextListDefinition, StructureGroup, SystemPrivilege, SystemWideObject, TargetGroup, TargetGroupCondition, TargetLanguage, TargetType, Taxonomies, TcmUri, Template, TemplateBuildingBlock, TextFieldDefinition, TmsLanguage, TmsWorkflow, TmsWorkflowStep, TranslationDetails, TranslationErrorDetails, TranslationExceptionDetails, TranslationInfo, TranslationJob, TranslationJobInfo, TranslationJobItem, TranslationTargetPublication, TranslationWorkflowStatus, TridionActivityDefinition, TridionProcessDefinition, Trustee, UnpublishInstruction, User, UserFavoriteLink, UserGroup, UserLocaleInfo, UserPreferences, UserProfile, UserRuntimeInfo, ValidationError, ValidationResult, ValidationWarning, VersionedItem, VirtualFolder, VirtualUri, WorkItem, WorkflowInfo, WorkflowObject, XhtmlFieldDefinition, applicableActions, configureLocale, createBackendBusinessProcessTypes, createBackendHateoasLink, createBackendLink, createBackendTaxonomies, determineBatchStatus, getItemContainerId, getItemLinkType, getItemType, isRloNode, itemLinkType, itemLinkTypes, itemType, itemTypes, listLinks, mapActivityStateToBackend, mapBatchOperationState, mapLockTypeToBackend, mapPublishPriorityToBackend, mapPublishTransactionStateToBackend, mapRetrieveReasonToBackend, mapRloItemTypeToBackend, mapStringSearchModeToBackend, mapStructureResolveOptionToBackend, mapToModel, mapToModels, mapTranslationErrorSeverityToBackend, mapTranslationJobPriorityToBackend, mapTranslationJobStateToBackend, mapTranslationJobTypeToBackend, mapTranslationStatusToBackend, parseItemUri, tryMapToModel, tryParseItemUri };
15538
+ export { AccessControlEntry, AccessControlList, AccessToken, Activity, ActivityDefinition, ActivityHistory, ActivityInstance, ApiError, ApprovalStatus, BasicVersionInfo, Batch, BatchOperation, BinaryContent, BlueprintGraph, BlueprintGraphNode, BlueprintInfo, Bundle, BusinessProcessType, BusinessProcessTypes, ClaimMapping, ClassificationDetail, ClassificationInfo, Component, ComponentBase, ComponentLinkFieldDefinition, ComponentPresentation, ComponentTemplate, DateFieldDefinition, DateListDefinition, DependencyGraphNode, DynamicVersionInfo, EclUri, EmbeddedRegion, EmbeddedSchemaFieldDefinition, ExternalContainer, ExternalKeyword, ExternalKeywordCategory, ExternalLinkFieldDefinition, ExternalMultimediaComponent, ExternalVersionInfo, FinishActivityResult, Folder, FormattingFeatures, FullVersionInfo, GroupMembership, HateoasLink, IdentifiableObject, ItemBlueprintHierarchy, ItemBlueprintRloNodeData, ItemFieldDefinition, ItemPublishableFieldDefinition, Keyword, KeywordCategory, KeywordFieldDefinition, LimitedVersionInfo, Link, LinkWithIsEditable, ListDefinition, LoadInfo, LocationInfo, LockInfo, MultiLineTextFieldDefinition, MultimediaComponent, MultimediaLinkFieldDefinition, MultimediaType, NumberFieldDefinition, NumberListDefinition, OrganizationalItem, Page, PageTemplate, Process, ProcessDefinition, ProcessHistory, ProcessInstance, ProcessedItem, Publication, PublicationBlueprintHierarchy, PublishContext, PublishInfo, PublishInstruction, PublishInstructionBase, PublishLocationInfo, PublishTransaction, PublishTransactionListInfo, PublishTransactionsCreationResult, PublishUrlInfo, PublishingTarget, Region, Repository, RepositoryLocalObject, ResolveInstruction, ResolveInstructionBase, ResolvedItem, Schema, SearchFolder, SecurityDescriptor, SingleLineTextFieldDefinition, SingleLineTextListDefinition, StructureGroup, SynchronizationAction, SynchronizationResult, SystemPrivilege, SystemWideObject, TargetGroup, TargetGroupCondition, TargetLanguage, TargetType, Taxonomies, TcmUri, Template, TemplateBuildingBlock, TextFieldDefinition, TmsLanguage, TmsWorkflow, TmsWorkflowStep, TranslationDetails, TranslationErrorDetails, TranslationExceptionDetails, TranslationInfo, TranslationJob, TranslationJobInfo, TranslationJobItem, TranslationTargetPublication, TranslationWorkflowStatus, TridionActivityDefinition, TridionProcessDefinition, Trustee, UnpublishInstruction, User, UserFavoriteLink, UserGroup, UserLocaleInfo, UserPreferences, UserProfile, UserRuntimeInfo, ValidationApiError, ValidationError, ValidationResult, ValidationWarning, VersionedItem, VirtualFolder, VirtualUri, WhereUsedListInfo, WorkItem, WorkflowInfo, WorkflowObject, XhtmlFieldDefinition, applicableActions, configureLocale, createBackendBusinessProcessTypes, createBackendHateoasLink, createBackendLink, createBackendTaxonomies, determineBatchStatus, getItemContainerId, getItemLinkType, getItemType, isRloNode, itemLinkType, itemLinkTypes, itemType, itemTypes, listLinks, mapActivityStateToBackend, mapBatchOperationState, mapDependencyDirectionToBackend, mapErrorTypeToBackend, mapListDetailsLevelToBackend, mapLoadInfoStateToBackend, mapLockTypeToBackend, mapPublishPriorityToBackend, mapPublishTransactionStateToBackend, mapRetrieveReasonToBackend, mapRloItemTypeToBackend, mapStringSearchModeToBackend, mapStructureResolveOptionToBackend, mapSynchronizeFlagsToBackend, mapToModel, mapToModels, mapTranslationErrorSeverityToBackend, mapTranslationJobPriorityToBackend, mapTranslationJobStateToBackend, mapTranslationJobTypeToBackend, mapTranslationStatusToBackend, parseItemUri, tryMapToModel, tryParseItemUri };