@hcl-software/dxclient 224.0.0 → 226.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.
Files changed (152) hide show
  1. package/README.md +35 -2
  2. package/dist/configuration/versionConfigMap.json +3 -0
  3. package/dist/package.json +4 -4
  4. package/dist/packages/admintasks/src/commands/createCredentialVault.js +0 -1
  5. package/dist/packages/admintasks/src/commands/createCredentialVault.js.map +1 -1
  6. package/dist/packages/admintasks/src/commands/createSyndicationRelation.js +0 -1
  7. package/dist/packages/admintasks/src/commands/createSyndicationRelation.js.map +1 -1
  8. package/dist/packages/admintasks/src/commands/createVirtualPortal.js +0 -1
  9. package/dist/packages/admintasks/src/commands/createVirtualPortal.js.map +1 -1
  10. package/dist/packages/admintasks/src/commands/differentialReport.js +0 -1
  11. package/dist/packages/admintasks/src/commands/differentialReport.js.map +1 -1
  12. package/dist/packages/admintasks/src/commands/exportVirtualPortal.js +0 -1
  13. package/dist/packages/admintasks/src/commands/exportVirtualPortal.js.map +1 -1
  14. package/dist/packages/admintasks/src/commands/exportWCMLibrary.js +1 -2
  15. package/dist/packages/admintasks/src/commands/exportWCMLibrary.js.map +1 -1
  16. package/dist/packages/admintasks/src/commands/importVirtualPortal.js +0 -1
  17. package/dist/packages/admintasks/src/commands/importVirtualPortal.js.map +1 -1
  18. package/dist/packages/admintasks/src/commands/importWCMLibrary.js +0 -1
  19. package/dist/packages/admintasks/src/commands/importWCMLibrary.js.map +1 -1
  20. package/dist/packages/admintasks/src/commands/listVirtualPortals.js +0 -1
  21. package/dist/packages/admintasks/src/commands/listVirtualPortals.js.map +1 -1
  22. package/dist/packages/admintasks/src/commands/pznRulesExport.js +0 -1
  23. package/dist/packages/admintasks/src/commands/pznRulesExport.js.map +1 -1
  24. package/dist/packages/admintasks/src/commands/pznRulesImport.js +0 -1
  25. package/dist/packages/admintasks/src/commands/pznRulesImport.js.map +1 -1
  26. package/dist/packages/admintasks/src/commands/resEnvProviderActions.js +0 -1
  27. package/dist/packages/admintasks/src/commands/resEnvProviderActions.js.map +1 -1
  28. package/dist/packages/admintasks/src/commands/restartCorePods.js +0 -1
  29. package/dist/packages/admintasks/src/commands/restartCorePods.js.map +1 -1
  30. package/dist/packages/admintasks/src/commands/restartDXCore.js +0 -1
  31. package/dist/packages/admintasks/src/commands/restartDXCore.js.map +1 -1
  32. package/dist/packages/dam/src/commands/createSecrets.js +0 -1
  33. package/dist/packages/dam/src/commands/createSecrets.js.map +1 -1
  34. package/dist/packages/dam/src/commands/deleteDAMStagingMismatch.js +0 -1
  35. package/dist/packages/dam/src/commands/deleteDAMStagingMismatch.js.map +1 -1
  36. package/dist/packages/dam/src/commands/deleteSchema.js +0 -1
  37. package/dist/packages/dam/src/commands/deleteSchema.js.map +1 -1
  38. package/dist/packages/dam/src/commands/exportAssets.js +0 -1
  39. package/dist/packages/dam/src/commands/exportAssets.js.map +1 -1
  40. package/dist/packages/dam/src/commands/findDAMStagingMismatch.js +0 -1
  41. package/dist/packages/dam/src/commands/findDAMStagingMismatch.js.map +1 -1
  42. package/dist/packages/dam/src/commands/importAssets.js +0 -1
  43. package/dist/packages/dam/src/commands/importAssets.js.map +1 -1
  44. package/dist/packages/dam/src/commands/listSchema.js +0 -1
  45. package/dist/packages/dam/src/commands/listSchema.js.map +1 -1
  46. package/dist/packages/dam/src/commands/stagingMismatchReport.js +0 -1
  47. package/dist/packages/dam/src/commands/stagingMismatchReport.js.map +1 -1
  48. package/dist/packages/dam/src/commands/stagingResync.js +0 -1
  49. package/dist/packages/dam/src/commands/stagingResync.js.map +1 -1
  50. package/dist/packages/dam/src/commands/subscriberDeRegistration.js +0 -1
  51. package/dist/packages/dam/src/commands/subscriberDeRegistration.js.map +1 -1
  52. package/dist/packages/dam/src/commands/subscriberDetails.js +0 -1
  53. package/dist/packages/dam/src/commands/subscriberDetails.js.map +1 -1
  54. package/dist/packages/dam/src/commands/subscriberRegistration.js +0 -1
  55. package/dist/packages/dam/src/commands/subscriberRegistration.js.map +1 -1
  56. package/dist/packages/dam/src/commands/triggerDAMStaging.js +0 -1
  57. package/dist/packages/dam/src/commands/triggerDAMStaging.js.map +1 -1
  58. package/dist/packages/dam/src/commands/triggerDamReindexing.js +0 -1
  59. package/dist/packages/dam/src/commands/triggerDamReindexing.js.map +1 -1
  60. package/dist/packages/dam/src/commands/updateSecrets.js +0 -1
  61. package/dist/packages/dam/src/commands/updateSecrets.js.map +1 -1
  62. package/dist/packages/deployportlet/src/commands/deployPortlet.js +0 -1
  63. package/dist/packages/deployportlet/src/commands/deployPortlet.js.map +1 -1
  64. package/dist/packages/deployportlet/src/commands/undeployPortlet.js +0 -1
  65. package/dist/packages/deployportlet/src/commands/undeployPortlet.js.map +1 -1
  66. package/dist/packages/deployportlet/src/commands/xmlaccess.js +0 -1
  67. package/dist/packages/deployportlet/src/commands/xmlaccess.js.map +1 -1
  68. package/dist/packages/deployscriptapplication/src/commands/list.js +78 -75
  69. package/dist/packages/deployscriptapplication/src/commands/pull.js +0 -1
  70. package/dist/packages/deployscriptapplication/src/commands/pull.js.map +1 -1
  71. package/dist/packages/deployscriptapplication/src/commands/push.js +0 -1
  72. package/dist/packages/deployscriptapplication/src/commands/push.js.map +1 -1
  73. package/dist/packages/deployscriptapplication/src/commands/restoreScriptApplication.js +0 -1
  74. package/dist/packages/deployscriptapplication/src/commands/restoreScriptApplication.js.map +1 -1
  75. package/dist/packages/deployscriptapplication/src/commands/undeployScriptApplication.js +0 -1
  76. package/dist/packages/deployscriptapplication/src/commands/undeployScriptApplication.js.map +1 -1
  77. package/dist/packages/deploytheme/src/commands/deployApplication.js +0 -1
  78. package/dist/packages/deploytheme/src/commands/deployApplication.js.map +1 -1
  79. package/dist/packages/deploytheme/src/commands/deployTheme.js +0 -2
  80. package/dist/packages/deploytheme/src/commands/deployTheme.js.map +1 -1
  81. package/dist/packages/deploytheme/src/commands/undeployApplication.js +0 -1
  82. package/dist/packages/deploytheme/src/commands/undeployApplication.js.map +1 -1
  83. package/dist/packages/deploytheme/src/commands/undeployTheme.js +0 -2
  84. package/dist/packages/deploytheme/src/commands/undeployTheme.js.map +1 -1
  85. package/dist/packages/livesync/src/commands/pullTheme.d.ts +4 -1
  86. package/dist/packages/livesync/src/commands/pullTheme.js +13 -13
  87. package/dist/packages/livesync/src/commands/pullTheme.js.map +1 -1
  88. package/dist/packages/livesync/src/commands/pullWcmDesignLibrary.d.ts +2 -2
  89. package/dist/packages/livesync/src/commands/pullWcmDesignLibrary.js +29 -26
  90. package/dist/packages/livesync/src/commands/pullWcmDesignLibrary.js.map +1 -1
  91. package/dist/packages/livesync/src/commands/pushTheme.js +30 -19
  92. package/dist/packages/livesync/src/commands/pushTheme.js.map +1 -1
  93. package/dist/packages/livesync/src/commands/pushWcmDesignLibrary.d.ts +4 -2
  94. package/dist/packages/livesync/src/commands/pushWcmDesignLibrary.js +238 -51
  95. package/dist/packages/livesync/src/commands/pushWcmDesignLibrary.js.map +1 -1
  96. package/dist/packages/livesync/src/errors/CommandLineMessages_en.json +66 -34
  97. package/dist/packages/livesync/src/messages/messages_en.json +14 -6
  98. package/dist/packages/livesync/src/services/livesyncUtils.d.ts +3 -1
  99. package/dist/packages/livesync/src/services/livesyncUtils.js +77 -3
  100. package/dist/packages/livesync/src/services/livesyncUtils.js.map +1 -1
  101. package/dist/packages/livesync/src/services/metadataServices.d.ts +26 -5
  102. package/dist/packages/livesync/src/services/metadataServices.js +82 -11
  103. package/dist/packages/livesync/src/services/metadataServices.js.map +1 -1
  104. package/dist/packages/livesync/src/services/ongoingSyncServices.d.ts +6 -3
  105. package/dist/packages/livesync/src/services/ongoingSyncServices.js +259 -62
  106. package/dist/packages/livesync/src/services/ongoingSyncServices.js.map +1 -1
  107. package/dist/packages/livesync/src/services/styleSheetComponentWcmServices.d.ts +5 -0
  108. package/dist/packages/livesync/src/services/styleSheetComponentWcmServices.js +138 -0
  109. package/dist/packages/livesync/src/services/styleSheetComponentWcmServices.js.map +1 -0
  110. package/dist/packages/livesync/src/services/wcmContext/initialSync.d.ts +6 -0
  111. package/dist/packages/livesync/src/services/wcmContext/initialSync.js +39 -0
  112. package/dist/packages/livesync/src/services/wcmContext/initialSync.js.map +1 -0
  113. package/dist/packages/livesync/src/services/wcmContext/stylesheetComponent.d.ts +8 -0
  114. package/dist/packages/livesync/src/services/wcmContext/stylesheetComponent.js +265 -0
  115. package/dist/packages/livesync/src/services/wcmContext/stylesheetComponent.js.map +1 -0
  116. package/dist/packages/livesync/src/services/wcmContext/wcmLibraryContext.d.ts +17 -0
  117. package/dist/packages/livesync/src/services/wcmContext/wcmLibraryContext.js +20 -0
  118. package/dist/packages/livesync/src/services/wcmContext/wcmLibraryContext.js.map +1 -0
  119. package/dist/packages/livesync/src/services/wcmRestV2Services.js +1 -0
  120. package/dist/packages/livesync/src/services/wcmRestV2Services.js.map +1 -1
  121. package/dist/packages/livesync/src/types/EventQueueItem.type.d.ts +3 -2
  122. package/dist/packages/livesync/src/types/WCMDesignLibraryCache.type.d.ts +8 -2
  123. package/dist/packages/livesync/src/types/WcmRestApiV2.type.d.ts +23 -1
  124. package/dist/packages/mls_exim/src/export/mlsExport.js +1 -2
  125. package/dist/packages/mls_exim/src/export/mlsExport.js.map +1 -1
  126. package/dist/packages/mls_exim/src/export/mlsExport.ts +2 -3
  127. package/dist/packages/mls_exim/src/import/mlsImport.js +21 -3
  128. package/dist/packages/mls_exim/src/import/mlsImport.js.map +1 -1
  129. package/dist/packages/mls_exim/src/import/mlsImport.ts +3 -4
  130. package/dist/packages/sharedlibrary/src/commands/delete.js +0 -1
  131. package/dist/packages/sharedlibrary/src/commands/delete.js.map +1 -1
  132. package/dist/packages/sharedlibrary/src/commands/upload.js +0 -1
  133. package/dist/packages/sharedlibrary/src/commands/upload.js.map +1 -1
  134. package/dist/packages/sharedlibrary/src/services/sharedLibraryServices.js +6 -0
  135. package/dist/packages/sharedlibrary/src/services/sharedLibraryServices.js.map +1 -1
  136. package/dist/packages/syndication/src/commands/subscriber.js +0 -1
  137. package/dist/packages/syndication/src/commands/subscriber.js.map +1 -1
  138. package/dist/packages/syndication/src/commands/syndicator.js +0 -1
  139. package/dist/packages/syndication/src/commands/syndicator.js.map +1 -1
  140. package/dist/packages/syndication/src/commands/syndicatorFailedItem.js +0 -1
  141. package/dist/packages/syndication/src/commands/syndicatorFailedItem.js.map +1 -1
  142. package/dist/src/errors/CommandLineMessages_en.json +3 -1
  143. package/dist/src/services/apiServices.js +6 -0
  144. package/dist/src/services/apiServices.js.map +1 -1
  145. package/dist/src/services/requestService.js +6 -0
  146. package/dist/src/services/requestService.js.map +1 -1
  147. package/dist/src/utils/constants.d.ts +9 -4
  148. package/dist/src/utils/constants.js +13 -2
  149. package/dist/src/utils/constants.js.map +1 -1
  150. package/dist/src/utils/validateOptions.js +10 -1
  151. package/dist/src/utils/validateOptions.js.map +1 -1
  152. package/package.json +4 -4
@@ -31,7 +31,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
31
31
  return (mod && mod.__esModule) ? mod : { "default": mod };
32
32
  };
33
33
  Object.defineProperty(exports, "__esModule", { value: true });
34
- exports.deleteWCMFolderHandle = exports.deleteWCMHtmlComponentHandler = exports.updateWCMFolderHandler = exports.updateWCMHtmlComponentHandler = exports.addWCMHtmlComponentHandler = exports.addWCMFolderHandler = exports.retryFileUpdate = exports.unlinkHandler = exports.changeFileHandler = exports.addDirHandler = exports.addFileHandler = exports.deleteFromWebDAV = exports.uploadFileToWebDAV = exports.getRelativePath = void 0;
34
+ exports.deleteWCMFolderHandle = exports.deleteWCMHtmlFileHandler = exports.updateWCMFolderHandler = exports.updateWCMHtmlFileHandler = exports.deleteWCMCssFileHandler = exports.updateWCMCssFileHandler = exports.addWCMCssFileHandler = exports.addWCMHtmlFileHandler = exports.addWCMFolderHandler = exports.retryFileUpdate = exports.unlinkHandler = exports.changeFileHandler = exports.addDirHandler = exports.addFileHandler = exports.deleteFromWebDAV = exports.uploadFileToWebDAV = exports.getRelativePath = void 0;
35
35
  const path_1 = __importStar(require("path"));
36
36
  const form_data_1 = __importDefault(require("form-data"));
37
37
  const fs_extra_1 = __importStar(require("fs-extra"));
@@ -45,6 +45,8 @@ const htmlComponentWcmServices_1 = require("./htmlComponentWcmServices");
45
45
  const metadataServices_1 = require("./metadataServices");
46
46
  const pushWcmDesignLibrary_1 = require("../commands/pushWcmDesignLibrary");
47
47
  const livesyncUtils_1 = require("./livesyncUtils");
48
+ const presentationTemplateWcmServices_1 = require("./presentationTemplateWcmServices");
49
+ const stylesheetComponent_1 = __importDefault(require("./wcmContext/stylesheetComponent"));
48
50
  const getRelativePath = (pathFrom, pathTo) => {
49
51
  let result = '';
50
52
  try {
@@ -290,6 +292,7 @@ exports.retryFileUpdate = retryFileUpdate;
290
292
  const addWCMFolderHandler = (eventQueueItem) => __awaiter(void 0, void 0, void 0, function* () {
291
293
  logger_1.logger.debug('Executing function addWCMFolderHandler');
292
294
  const { chokidarPath, cmdArgs, options } = eventQueueItem;
295
+ const relativeFilePath = path_1.default.relative(cmdArgs.wcmLibraryPath, chokidarPath);
293
296
  const libraryID = options.library.id;
294
297
  const directoryName = path_1.default.parse(chokidarPath).name;
295
298
  const parentDirectoryPath = path_1.default.parse(chokidarPath).dir;
@@ -315,7 +318,7 @@ const addWCMFolderHandler = (eventQueueItem) => __awaiter(void 0, void 0, void 0
315
318
  const response = yield foldersWcmServices_1.createFolder(apiOptions, libraryID, JSON.stringify(folderComponent));
316
319
  switch (response.status) {
317
320
  case constants_1.HttpStatus.CREATED: {
318
- logger_1.logger.info(utils_1.message('LIVESYNC_PUSH_WCM_ONGOING_SYNC_CREATE_FOLDER', { 0: directoryName, 1: options.library.name }));
321
+ logger_1.logger.info(utils_1.message('LIVESYNC_PUSH_WCM_ONGOING_SYNC_CREATE_FOLDER', { 0: relativeFilePath, 1: options.library.name }));
319
322
  response.data.localPath = chokidarPath;
320
323
  response.data.newFolder = true;
321
324
  metadataServices_1.createMetadata(cmdArgs.wcmLibraryPath, response.data, parentID, libraryID);
@@ -323,38 +326,46 @@ const addWCMFolderHandler = (eventQueueItem) => __awaiter(void 0, void 0, void 0
323
326
  break;
324
327
  }
325
328
  case constants_1.HttpStatus.UNAUTHORIZED: {
326
- logger_1.logger.error(utils_1.errorMessage('ERROR_LIVESYNC_PUSH_WCM_CREATE_FOLDER_UNAUTHORIZED', { 0: directoryName }));
329
+ logger_1.logger.error(utils_1.errorMessage('ERROR_LIVESYNC_PUSH_WCM_CREATE_FOLDER_UNAUTHORIZED', { 0: relativeFilePath }));
327
330
  break;
328
331
  }
329
332
  case constants_1.HttpStatus.CONFLICT: {
330
- logger_1.logger.error(utils_1.errorMessage('ERROR_LIVESYNC_PUSH_WCM_CREATE_FOLDER_CONFLICT', { 0: directoryName }));
333
+ logger_1.logger.error(utils_1.errorMessage('ERROR_LIVESYNC_PUSH_WCM_CREATE_FOLDER_CONFLICT', { 0: relativeFilePath }));
331
334
  break;
332
335
  }
333
336
  default: {
334
- logger_1.logger.error(utils_1.errorMessage('ERROR_LIVESYNC_PUSH_WCM_CREATE_FOLDER_DEFAULT', { 0: directoryName, 1: response.statusText }));
337
+ logger_1.logger.error(utils_1.errorMessage('ERROR_LIVESYNC_PUSH_WCM_CREATE_FOLDER_DEFAULT', { 0: relativeFilePath, 1: response.statusText }));
335
338
  logger_1.logger.debug('Execution of createFolder request is unsuccessful: %O', response);
336
339
  break;
337
340
  }
338
341
  }
339
342
  }
340
343
  catch (error) {
341
- logger_1.logger.error(utils_1.errorMessage('ERROR_LIVESYNC_PUSH_WCM_CREATE_FOLDER_DEFAULT', { 0: directoryName, 1: error }));
344
+ logger_1.logger.error(utils_1.errorMessage('ERROR_LIVESYNC_PUSH_WCM_CREATE_FOLDER_DEFAULT', { 0: relativeFilePath, 1: error }));
342
345
  logger_1.logger.debug('Error creating folder: %O', error);
343
346
  }
344
347
  });
345
348
  exports.addWCMFolderHandler = addWCMFolderHandler;
346
- const addWCMHtmlComponentHandler = (eventQueueItem) => __awaiter(void 0, void 0, void 0, function* () {
347
- logger_1.logger.debug('Executing function addWCMHtmlComponentHandler');
349
+ const addWCMHtmlFileHandler = (eventQueueItem) => __awaiter(void 0, void 0, void 0, function* () {
350
+ logger_1.logger.debug('Executing function addWCMHtmlFileHandler');
348
351
  const { chokidarPath, cmdArgs, options, } = eventQueueItem;
349
352
  const libraryID = options.library.id;
350
353
  const fileName = path_1.default.parse(chokidarPath).name;
354
+ const relativeFilePath = path_1.default.relative(cmdArgs.wcmLibraryPath, chokidarPath);
351
355
  const parentDirectoryPath = path_1.default.parse(chokidarPath).dir;
352
356
  const parentDirectoryFileMeta = metadataServices_1.getSavedMetadata(cmdArgs.wcmLibraryPath, parentDirectoryPath, pushWcmDesignLibrary_1.PushWcmDesignLibrary.getCache());
353
357
  const parentID = parentDirectoryFileMeta.id;
354
358
  const fileContent = fs_extra_1.default.readFileSync(chokidarPath, 'utf8');
355
359
  const checkFileMeta = metadataServices_1.getSavedMetadata(cmdArgs.wcmLibraryPath, chokidarPath, pushWcmDesignLibrary_1.PushWcmDesignLibrary.getCache());
360
+ const wcmType = livesyncUtils_1.getWCMType(chokidarPath, cmdArgs.wcmLibraryPath);
361
+ let description;
362
+ let messageType;
363
+ if (!livesyncUtils_1.isTypeEnabled(wcmType)) {
364
+ logger_1.logger.error(utils_1.errorMessage('ERROR_LIVESYNC_PUSH_WCM_INVALID_FILE_TYPE', { 0: relativeFilePath }));
365
+ return;
366
+ }
356
367
  if (checkFileMeta) {
357
- logger_1.logger.debug('File "%O" is an restored file. ', fileName);
368
+ logger_1.logger.debug('File "%O" is an restored file. ', relativeFilePath);
358
369
  return;
359
370
  }
360
371
  const { dxProtocol, hostname, dxPort, contenthandlerPath, dxUsername, dxPassword, virtualPortalContext, wcmProjectName, } = cmdArgs;
@@ -379,6 +390,21 @@ const addWCMHtmlComponentHandler = (eventQueueItem) => __awaiter(void 0, void 0,
379
390
  referenceUrl += `/$project/${apiOptions.wcmProjectName}`;
380
391
  }
381
392
  logger_1.logger.debug('referenceUrl: %s', referenceUrl);
393
+ switch (wcmType) {
394
+ case 'LibraryHTMLComponent':
395
+ logger_1.logger.debug('File "%O" is a LibraryHTMLComponent', relativeFilePath);
396
+ description = 'HTML Component Description';
397
+ messageType = 'HTML_COMPONENT';
398
+ break;
399
+ case 'PresentationTemplate':
400
+ logger_1.logger.debug('File "%O" is a PresentationTemplate', relativeFilePath);
401
+ description = 'Presentation Template Description';
402
+ messageType = 'PRESENTATION_TEMPLATE';
403
+ break;
404
+ default:
405
+ logger_1.logger.error(utils_1.errorMessage('ERROR_LIVESYNC_PUSH_WCM_CREATE_HTML_COMPONENT_DEFAULT', { 0: relativeFilePath }));
406
+ return;
407
+ }
382
408
  const data = JSON.stringify({
383
409
  entry: {
384
410
  title: {
@@ -387,10 +413,10 @@ const addWCMHtmlComponentHandler = (eventQueueItem) => __awaiter(void 0, void 0,
387
413
  },
388
414
  description: {
389
415
  lang: 'en',
390
- value: 'HTML Component Description',
416
+ value: description,
391
417
  },
392
418
  name: fileName,
393
- type: 'LibraryHTMLComponent',
419
+ type: wcmType,
394
420
  link: [
395
421
  {
396
422
  rel: 'library',
@@ -412,10 +438,25 @@ const addWCMHtmlComponentHandler = (eventQueueItem) => __awaiter(void 0, void 0,
412
438
  },
413
439
  });
414
440
  try {
415
- const response = yield htmlComponentWcmServices_1.createHtmlComponent(apiOptions, data);
441
+ let response = { status: 999 };
442
+ switch (wcmType) {
443
+ case 'LibraryHTMLComponent':
444
+ logger_1.logger.debug('Creating "%O" LibraryHTMLComponent', relativeFilePath);
445
+ response = yield htmlComponentWcmServices_1.createHtmlComponent(apiOptions, data);
446
+ messageType = 'HTML_COMPONENT';
447
+ break;
448
+ case 'PresentationTemplate':
449
+ logger_1.logger.debug('Creating "%O" PresentationTemplate', relativeFilePath);
450
+ response = yield presentationTemplateWcmServices_1.createPresentationTemplate(apiOptions, data);
451
+ messageType = 'PRESENTATION_TEMPLATE';
452
+ break;
453
+ default:
454
+ logger_1.logger.error(utils_1.errorMessage('ERROR_LIVESYNC_PUSH_WCM_CREATE_HTML_COMPONENT_DEFAULT', { 0: relativeFilePath }));
455
+ return;
456
+ }
416
457
  switch (response.status) {
417
458
  case constants_1.HttpStatus.CREATED: {
418
- logger_1.logger.info(utils_1.message('LIVESYNC_PUSH_WCM_ONGOING_SYNC_CREATE_HTML_COMPONENT', { 0: fileName, 1: options.library.name }));
459
+ logger_1.logger.info(utils_1.message(`LIVESYNC_PUSH_WCM_ONGOING_SYNC_CREATE_${messageType}`, { 0: relativeFilePath, 1: options.library.name }));
419
460
  const fileMetadata = metadataServices_1.createMetadata(cmdArgs.wcmLibraryPath, response.data, parentID, libraryID);
420
461
  if (chokidarPath !== fileMetadata.localPath) {
421
462
  fs_extra_1.moveSync(chokidarPath, fileMetadata.localPath);
@@ -424,40 +465,130 @@ const addWCMHtmlComponentHandler = (eventQueueItem) => __awaiter(void 0, void 0,
424
465
  break;
425
466
  }
426
467
  case constants_1.HttpStatus.UNAUTHORIZED: {
427
- logger_1.logger.error(utils_1.errorMessage('ERROR_LIVESYNC_PUSH_WCM_CREATE_HTML_UNAUTHORIZED', { 0: fileName }));
468
+ logger_1.logger.error(utils_1.errorMessage(`ERROR_LIVESYNC_PUSH_WCM_CREATE_${messageType}_UNAUTHORIZED`, { 0: relativeFilePath }));
428
469
  break;
429
470
  }
430
471
  case constants_1.HttpStatus.CONFLICT: {
431
- logger_1.logger.error(utils_1.errorMessage('ERROR_LIVESYNC_PUSH_WCM_CREATE_HTML_CONFLICT', { 0: fileName }));
472
+ logger_1.logger.error(utils_1.errorMessage(`ERROR_LIVESYNC_PUSH_WCM_CREATE_${messageType}_CONFLICT`, { 0: relativeFilePath }));
432
473
  break;
433
474
  }
434
475
  default: {
435
- logger_1.logger.error(utils_1.errorMessage('ERROR_LIVESYNC_PUSH_WCM_CREATE_HTML_DEFAULT', { 0: fileName, 1: response.statusText }));
476
+ logger_1.logger.error(utils_1.errorMessage(`ERROR_LIVESYNC_PUSH_WCM_CREATE_${messageType}_DEFAULT`, { 0: relativeFilePath, 1: response.statusText }));
436
477
  logger_1.logger.debug('Execution of createHtmlComponent request is unsuccessful: %O', response);
437
478
  break;
438
479
  }
439
480
  }
440
481
  }
441
482
  catch (error) {
442
- logger_1.logger.error(utils_1.errorMessage('ERROR_LIVESYNC_PUSH_WCM_CREATE_HTML_DEFAULT', { 0: fileName, 1: error }));
483
+ logger_1.logger.error(utils_1.errorMessage(`ERROR_LIVESYNC_PUSH_WCM_CREATE_${messageType}_DEFAULT`, { 0: relativeFilePath, 1: error }));
443
484
  logger_1.logger.debug('Error creating html file: %O', error);
444
485
  }
445
486
  });
446
- exports.addWCMHtmlComponentHandler = addWCMHtmlComponentHandler;
447
- const updateWCMHtmlComponentHandler = (eventQueueItem) => __awaiter(void 0, void 0, void 0, function* () {
448
- logger_1.logger.debug('Executing function updateWCMHtmlComponentHandler');
449
- const { chokidarPath, cmdArgs, options, } = eventQueueItem;
450
- const libraryID = options.library.id;
451
- const fileName = path_1.default.parse(chokidarPath).name;
452
- const parentDirectoryPath = path_1.default.parse(chokidarPath).dir;
453
- const parentDirectoryFileMeta = metadataServices_1.getSavedMetadata(cmdArgs.wcmLibraryPath, parentDirectoryPath, pushWcmDesignLibrary_1.PushWcmDesignLibrary.getCache());
454
- const parentID = parentDirectoryFileMeta.id;
455
- const fileContent = fs_extra_1.readFileSync(chokidarPath, 'utf8');
456
- const fileMeta = metadataServices_1.getSavedMetadata(cmdArgs.wcmLibraryPath, chokidarPath, pushWcmDesignLibrary_1.PushWcmDesignLibrary.getCache());
457
- if (fileContent === fileMeta.content.value) {
458
- logger_1.logger.debug('Skipping file update because file content is the same. Path: %s', chokidarPath);
459
- return;
487
+ exports.addWCMHtmlFileHandler = addWCMHtmlFileHandler;
488
+ const addWCMCssFileHandler = (eventQueueItem) => __awaiter(void 0, void 0, void 0, function* () {
489
+ logger_1.logger.debug('Executing function addWCMCssFileHandler');
490
+ const { dxProtocol, hostname, dxPort, contenthandlerPath, dxUsername, dxPassword, virtualPortalContext, wcmProjectName, } = eventQueueItem.cmdArgs;
491
+ const apiOptions = {
492
+ dxProtocol,
493
+ hostname,
494
+ dxPort,
495
+ contenthandlerPath,
496
+ dxUsername,
497
+ dxPassword,
498
+ virtualPortalContext,
499
+ wcmProjectName,
500
+ };
501
+ const type = livesyncUtils_1.getWCMType(eventQueueItem.cmdArgs.filePath, eventQueueItem.cmdArgs.libraryPath);
502
+ if (!livesyncUtils_1.isTypeEnabled(type)) {
503
+ logger_1.logger.error(utils_1.errorMessage('ERROR_LIVESYNC_PUSH_WCM_INVALID_FILE_TYPE', { 0: eventQueueItem.cmdArgs.filePath }));
504
+ }
505
+ else {
506
+ try {
507
+ const stylesheetComponent = new stylesheetComponent_1.default(eventQueueItem.chokidarPath, undefined, {
508
+ apiOptions,
509
+ libraryId: eventQueueItem.options.library.id,
510
+ libraryPath: eventQueueItem.cmdArgs.wcmLibraryPath,
511
+ libraryMetaData: eventQueueItem.options.library,
512
+ });
513
+ stylesheetComponent.create();
514
+ }
515
+ catch (e) {
516
+ logger_1.logger.error(`Error pushing CSS file to WCM: ${e}`);
517
+ }
518
+ }
519
+ });
520
+ exports.addWCMCssFileHandler = addWCMCssFileHandler;
521
+ const updateWCMCssFileHandler = (eventQueueItem) => __awaiter(void 0, void 0, void 0, function* () {
522
+ logger_1.logger.debug('Executing function updateWCMCssFileHandler');
523
+ const { dxProtocol, hostname, dxPort, contenthandlerPath, dxUsername, dxPassword, virtualPortalContext, wcmProjectName, } = eventQueueItem.cmdArgs;
524
+ const apiOptions = {
525
+ dxProtocol,
526
+ hostname,
527
+ dxPort,
528
+ contenthandlerPath,
529
+ dxUsername,
530
+ dxPassword,
531
+ virtualPortalContext,
532
+ wcmProjectName,
533
+ };
534
+ const fileName = path_1.default.parse(eventQueueItem.chokidarPath).name;
535
+ const type = livesyncUtils_1.getWCMType(eventQueueItem.cmdArgs.filePath, eventQueueItem.cmdArgs.libraryPath);
536
+ if (!livesyncUtils_1.isTypeEnabled(type)) {
537
+ logger_1.logger.error(utils_1.errorMessage('ERROR_LIVESYNC_PUSH_WCM_INVALID_FILE_TYPE', { 0: eventQueueItem.cmdArgs.filePath }));
538
+ }
539
+ else {
540
+ try {
541
+ const fileMeta = metadataServices_1.getSavedMetadata(eventQueueItem.cmdArgs.wcmLibraryPath, eventQueueItem.chokidarPath, pushWcmDesignLibrary_1.PushWcmDesignLibrary.getCache());
542
+ const stylesheetComponent = new stylesheetComponent_1.default(eventQueueItem.chokidarPath, fileMeta, {
543
+ apiOptions,
544
+ libraryId: eventQueueItem.options.library.id,
545
+ libraryPath: eventQueueItem.cmdArgs.wcmLibraryPath,
546
+ libraryMetaData: eventQueueItem.options.library,
547
+ });
548
+ stylesheetComponent.update();
549
+ }
550
+ catch (e) {
551
+ logger_1.logger.error('ERROR_LIVESYNC_PUSH_WCM_UPDATE_STYLESHEET_DEFAULT', { 0: fileName });
552
+ }
460
553
  }
554
+ });
555
+ exports.updateWCMCssFileHandler = updateWCMCssFileHandler;
556
+ const deleteWCMCssFileHandler = (eventQueueItem) => __awaiter(void 0, void 0, void 0, function* () {
557
+ logger_1.logger.debug('Executing function deleteWCMCssFileHandler');
558
+ const { dxProtocol, hostname, dxPort, contenthandlerPath, dxUsername, dxPassword, virtualPortalContext, wcmProjectName, } = eventQueueItem.cmdArgs;
559
+ const apiOptions = {
560
+ dxProtocol,
561
+ hostname,
562
+ dxPort,
563
+ contenthandlerPath,
564
+ dxUsername,
565
+ dxPassword,
566
+ virtualPortalContext,
567
+ wcmProjectName,
568
+ };
569
+ const type = livesyncUtils_1.getWCMType(eventQueueItem.cmdArgs.filePath, eventQueueItem.cmdArgs.libraryPath);
570
+ if (!livesyncUtils_1.isTypeEnabled(type)) {
571
+ logger_1.logger.error(utils_1.errorMessage('ERROR_LIVESYNC_PUSH_WCM_INVALID_FILE_TYPE', { 0: eventQueueItem.cmdArgs.filePath }));
572
+ }
573
+ else {
574
+ try {
575
+ const stylesheetComponent = new stylesheetComponent_1.default(eventQueueItem.chokidarPath, eventQueueItem.options.fileMeta, {
576
+ apiOptions,
577
+ libraryId: eventQueueItem.options.library.id,
578
+ libraryPath: eventQueueItem.cmdArgs.wcmLibraryPath,
579
+ libraryMetaData: eventQueueItem.options.library,
580
+ });
581
+ stylesheetComponent.delete();
582
+ }
583
+ catch (e) {
584
+ logger_1.logger.error(utils_1.errorMessage('ERROR_LIVESYNC_PUSH_WCM_DELETE_CSS_GENERIC', { 0: eventQueueItem.chokidarPath, 1: e.message }));
585
+ }
586
+ }
587
+ });
588
+ exports.deleteWCMCssFileHandler = deleteWCMCssFileHandler;
589
+ const updateWCMHtmlFileHandler = (eventQueueItem) => __awaiter(void 0, void 0, void 0, function* () {
590
+ logger_1.logger.debug('Executing function updateWCMHtmlFileHandler');
591
+ const { chokidarPath, cmdArgs, options, } = eventQueueItem;
461
592
  const { dxProtocol, hostname, dxPort, contenthandlerPath, dxUsername, dxPassword, virtualPortalContext, wcmProjectName, } = cmdArgs;
462
593
  const apiOptions = {
463
594
  dxProtocol,
@@ -469,6 +600,36 @@ const updateWCMHtmlComponentHandler = (eventQueueItem) => __awaiter(void 0, void
469
600
  virtualPortalContext,
470
601
  wcmProjectName,
471
602
  };
603
+ const type = livesyncUtils_1.getWCMType(chokidarPath, cmdArgs.wcmLibraryPath);
604
+ if (!type) {
605
+ logger_1.logger.error(utils_1.errorMessage('ERROR_LIVESYNC_PUSH_WCM_INVALID_FILE_TYPE', { 0: chokidarPath }));
606
+ return;
607
+ }
608
+ const libraryID = options.library.id;
609
+ const relativeFilePath = path_1.default.relative(cmdArgs.wcmLibraryPath, chokidarPath);
610
+ const parentDirectoryPath = path_1.default.parse(chokidarPath).dir;
611
+ const parentDirectoryFileMeta = metadataServices_1.getSavedMetadata(cmdArgs.wcmLibraryPath, parentDirectoryPath, pushWcmDesignLibrary_1.PushWcmDesignLibrary.getCache());
612
+ const parentID = parentDirectoryFileMeta.id;
613
+ const fileContent = fs_extra_1.readFileSync(chokidarPath, 'utf8');
614
+ const fileMeta = metadataServices_1.getSavedMetadata(cmdArgs.wcmLibraryPath, chokidarPath, pushWcmDesignLibrary_1.PushWcmDesignLibrary.getCache());
615
+ let messageType = type === 'LibraryHTMLComponent' ? 'HTML_COMPONENT' : 'PRESENTATION_TEMPLATE';
616
+ if (fileMeta && fileMeta.type === 'LibraryStyleSheetComponent') {
617
+ const stylesheetComponent = new stylesheetComponent_1.default(eventQueueItem.chokidarPath, fileMeta, {
618
+ apiOptions,
619
+ libraryId: eventQueueItem.options.library.id,
620
+ libraryPath: eventQueueItem.cmdArgs.wcmLibraryPath,
621
+ libraryMetaData: eventQueueItem.options.library,
622
+ });
623
+ stylesheetComponent.update();
624
+ }
625
+ if (!livesyncUtils_1.isTypeEnabled(fileMeta.type)) {
626
+ logger_1.logger.error(utils_1.errorMessage('ERROR_LIVESYNC_PUSH_WCM_INVALID_FILE_TYPE', { 0: relativeFilePath }));
627
+ return;
628
+ }
629
+ if (fileContent === fileMeta.content.value) {
630
+ logger_1.logger.debug('Skipping file update because file content is the same. Path: %s', relativeFilePath);
631
+ return;
632
+ }
472
633
  let referenceUrl;
473
634
  if (apiOptions.virtualPortalContext) {
474
635
  referenceUrl = `${apiOptions.contenthandlerPath}/${apiOptions.virtualPortalContext}`;
@@ -481,41 +642,59 @@ const updateWCMHtmlComponentHandler = (eventQueueItem) => __awaiter(void 0, void
481
642
  }
482
643
  logger_1.logger.debug('referenceUrl: %s', referenceUrl);
483
644
  fileMeta.content.value = fileContent.toString();
484
- const data = JSON.stringify({ entry: { content: fileMeta.content } });
645
+ const data = JSON.stringify({ entry: { author: fileMeta.author, owner: fileMeta.owner, content: fileMeta.content } });
485
646
  try {
486
- const response = yield htmlComponentWcmServices_1.updateHtmlComponent(apiOptions, fileMeta.id, data);
647
+ let response = { status: 999 };
648
+ switch (type) {
649
+ case 'LibraryHTMLComponent':
650
+ response = yield htmlComponentWcmServices_1.updateHtmlComponent(apiOptions, fileMeta.id, data);
651
+ messageType = 'HTML_COMPONENT';
652
+ break;
653
+ case 'PresentationTemplate':
654
+ response = yield presentationTemplateWcmServices_1.updatePresentationTemplate(apiOptions, fileMeta.id, data);
655
+ messageType = 'PRESENTATION_TEMPLATE';
656
+ break;
657
+ default:
658
+ logger_1.logger.error(utils_1.errorMessage('ERROR_LIVESYNC_PUSH_WCM_INVALID_FILE_TYPE', { 0: relativeFilePath }));
659
+ break;
660
+ }
487
661
  switch (response.status) {
488
662
  case constants_1.HttpStatus.SUCCESS: {
489
- logger_1.logger.info(utils_1.message('LIVESYNC_PUSH_WCM_ONGOING_SYNC_UPDATE_HTML_COMPONENT', { 0: fileName, 1: options.library.name }));
663
+ if (fileMeta.id !== response.data.id) {
664
+ logger_1.logger.error(utils_1.errorMessage('ERROR_LIVESYNC_PUSH_WCM_UPDATE_HTML_COMPONENT_HAS_DRAFT', { 0: relativeFilePath }));
665
+ break;
666
+ }
667
+ logger_1.logger.info(utils_1.message(`LIVESYNC_PUSH_WCM_ONGOING_SYNC_UPDATE_${messageType}`, { 0: relativeFilePath, 1: options.library.name }));
490
668
  const fileMetadata = metadataServices_1.createMetadata(cmdArgs.wcmLibraryPath, response.data, parentID, libraryID);
491
669
  pushWcmDesignLibrary_1.PushWcmDesignLibrary.updateCache(metadataServices_1.saveMetadata(cmdArgs.wcmLibraryPath, fileMetadata, pushWcmDesignLibrary_1.PushWcmDesignLibrary.getCache()));
492
670
  break;
493
671
  }
494
672
  case constants_1.HttpStatus.UNAUTHORIZED: {
495
- logger_1.logger.error(utils_1.errorMessage('ERROR_LIVESYNC_PUSH_WCM_UPDATE_HTML_UNAUTHORIZED', { 0: fileName }));
673
+ logger_1.logger.error(utils_1.errorMessage(`ERROR_LIVESYNC_PUSH_WCM_UPDATE_${messageType}_UNAUTHORIZED`, { 0: relativeFilePath }));
496
674
  break;
497
675
  }
498
676
  case constants_1.HttpStatus.NOT_FOUND: {
499
- logger_1.logger.error(utils_1.errorMessage('ERROR_LIVESYNC_PUSH_WCM_UPDATE_HTML_NOTFOUND', { 0: fileName }));
677
+ logger_1.logger.error(utils_1.errorMessage(`ERROR_LIVESYNC_PUSH_WCM_UPDATE_${messageType}_NOTFOUND`, { 0: relativeFilePath }));
500
678
  break;
501
679
  }
502
680
  default: {
503
- logger_1.logger.error(utils_1.errorMessage('ERROR_LIVESYNC_PUSH_WCM_UPDATE_HTML_DEFAULT', { 0: fileName, 1: response.statusText }));
681
+ logger_1.logger.error(utils_1.errorMessage(`ERROR_LIVESYNC_PUSH_WCM_UPDATE_${messageType}_DEFAULT`, { 0: relativeFilePath, 1: response.statusText }));
504
682
  logger_1.logger.debug('Execution of UpdateWCMHtmlComponent request is unsuccessful: %O', response);
505
683
  break;
506
684
  }
507
685
  }
508
686
  }
509
687
  catch (error) {
510
- logger_1.logger.error(utils_1.errorMessage('ERROR_LIVESYNC_PUSH_WCM_UPDATE_HTML_DEFAULT', { 0: fileName, 1: error }));
688
+ logger_1.logger.error(utils_1.errorMessage(`ERROR_LIVESYNC_PUSH_WCM_UPDATE_${messageType}_DEFAULT`, { 0: relativeFilePath, 1: error }));
511
689
  logger_1.logger.debug('Error updating html file: %O', error);
512
690
  }
513
691
  });
514
- exports.updateWCMHtmlComponentHandler = updateWCMHtmlComponentHandler;
692
+ exports.updateWCMHtmlFileHandler = updateWCMHtmlFileHandler;
515
693
  const updateWCMFolderHandler = (eventQueueItem) => __awaiter(void 0, void 0, void 0, function* () {
516
694
  logger_1.logger.debug('Executing function updateWCMFolderHandler');
517
695
  const { chokidarPath, cmdArgs, options } = eventQueueItem;
518
696
  const directoryName = path_1.default.parse(chokidarPath).name;
697
+ const relativeFilePath = path_1.default.relative(cmdArgs.wcmLibraryPath, chokidarPath);
519
698
  const parentDirectoryPath = path_1.default.parse(chokidarPath).dir;
520
699
  const parentDirectoryFileMeta = metadataServices_1.getSavedMetadata(cmdArgs.wcmLibraryPath, parentDirectoryPath, pushWcmDesignLibrary_1.PushWcmDesignLibrary.getCache());
521
700
  const parentID = parentDirectoryFileMeta.id;
@@ -551,40 +730,40 @@ const updateWCMFolderHandler = (eventQueueItem) => __awaiter(void 0, void 0, voi
551
730
  const response = yield foldersWcmServices_1.updateFolder(apiOptions, fileMeta.id, JSON.stringify(folderComponent));
552
731
  switch (response.status) {
553
732
  case constants_1.HttpStatus.SUCCESS: {
554
- logger_1.logger.info(utils_1.message('LIVESYNC_PUSH_WCM_ONGOING_SYNC_UPDATE_FOLDER', { 0: directoryName, 1: options.library.name }));
733
+ logger_1.logger.info(utils_1.message('LIVESYNC_PUSH_WCM_ONGOING_SYNC_UPDATE_FOLDER', { 0: relativeFilePath, 1: options.library.name }));
555
734
  response.data.localPath = chokidarPath;
556
735
  metadataServices_1.createMetadata(cmdArgs.wcmLibraryPath, response.data, parentID, options.library.id);
557
736
  pushWcmDesignLibrary_1.PushWcmDesignLibrary.updateCache(metadataServices_1.saveMetadata(cmdArgs.wcmLibraryPath, response.data, pushWcmDesignLibrary_1.PushWcmDesignLibrary.getCache()));
558
737
  break;
559
738
  }
560
739
  case constants_1.HttpStatus.UNAUTHORIZED: {
561
- logger_1.logger.error(utils_1.errorMessage('ERROR_LIVESYNC_PUSH_WCM_UPDATE_FOLDER_UNAUTHORIZED', { 0: directoryName }));
740
+ logger_1.logger.error(utils_1.errorMessage('ERROR_LIVESYNC_PUSH_WCM_UPDATE_FOLDER_UNAUTHORIZED', { 0: relativeFilePath }));
562
741
  break;
563
742
  }
564
743
  case constants_1.HttpStatus.NOT_FOUND: {
565
- logger_1.logger.error(utils_1.errorMessage('ERROR_LIVESYNC_PUSH_WCM_UPDATE_FOLDER_NOTFOUND', { 0: directoryName }));
744
+ logger_1.logger.error(utils_1.errorMessage('ERROR_LIVESYNC_PUSH_WCM_UPDATE_FOLDER_NOTFOUND', { 0: relativeFilePath }));
566
745
  break;
567
746
  }
568
747
  default: {
569
- logger_1.logger.error(utils_1.errorMessage('ERROR_LIVESYNC_PUSH_WCM_UPDATE_FOLDER_DEFAULT', { 0: directoryName, 1: response.statusText }));
748
+ logger_1.logger.error(utils_1.errorMessage('ERROR_LIVESYNC_PUSH_WCM_UPDATE_FOLDER_DEFAULT', { 0: relativeFilePath, 1: response.statusText }));
570
749
  logger_1.logger.debug('Execution of createFolder request is unsuccessful: %O', response);
571
750
  break;
572
751
  }
573
752
  }
574
753
  }
575
754
  catch (error) {
576
- logger_1.logger.error(utils_1.errorMessage('ERROR_LIVESYNC_PUSH_WCM_UPDATE_FOLDER_DEFAULT', { 0: directoryName, 1: error }));
755
+ logger_1.logger.error(utils_1.errorMessage('ERROR_LIVESYNC_PUSH_WCM_UPDATE_FOLDER_DEFAULT', { 0: relativeFilePath, 1: error }));
577
756
  logger_1.logger.debug('Error creating folder: %O', error);
578
757
  }
579
758
  });
580
759
  exports.updateWCMFolderHandler = updateWCMFolderHandler;
581
- const deleteWCMHtmlComponentHandler = (eventQueueItem) => __awaiter(void 0, void 0, void 0, function* () {
760
+ const deleteWCMHtmlFileHandler = (eventQueueItem) => __awaiter(void 0, void 0, void 0, function* () {
582
761
  logger_1.logger.debug('Executing function deleteWCMHtmlComponentHandler');
583
762
  const { chokidarPath, cmdArgs, options, } = eventQueueItem;
584
- const fileName = path_1.default.parse(chokidarPath).name;
763
+ const relativeFilePath = path_1.default.relative(cmdArgs.wcmLibraryPath, chokidarPath);
585
764
  const fileMeta = metadataServices_1.getSavedMetadata(cmdArgs.wcmLibraryPath, chokidarPath, pushWcmDesignLibrary_1.PushWcmDesignLibrary.getCache());
586
765
  if (!fileMeta) {
587
- logger_1.logger.debug('File "%O" is not found in cache', fileName);
766
+ logger_1.logger.debug('File "%O" is not found in cache', relativeFilePath);
588
767
  return;
589
768
  }
590
769
  const { dxProtocol, hostname, dxPort, contenthandlerPath, dxUsername, dxPassword, virtualPortalContext, wcmProjectName, } = cmdArgs;
@@ -598,51 +777,69 @@ const deleteWCMHtmlComponentHandler = (eventQueueItem) => __awaiter(void 0, void
598
777
  virtualPortalContext,
599
778
  wcmProjectName,
600
779
  };
780
+ const wcmType = livesyncUtils_1.getWCMType(chokidarPath, cmdArgs.wcmLibraryPath);
781
+ let messageType = wcmType === 'LibraryHTMLComponent' ? 'HTML_COMPONENT' : 'PRESENTATION_TEMPLATE';
601
782
  try {
602
- const response = yield htmlComponentWcmServices_1.deleteHtmlComponent(apiOptions, fileMeta.id);
783
+ let response;
784
+ switch (wcmType) {
785
+ case 'LibraryHTMLComponent':
786
+ logger_1.logger.debug('File "%O" is a LibraryHTMLComponent', relativeFilePath);
787
+ response = yield htmlComponentWcmServices_1.deleteHtmlComponent(apiOptions, fileMeta.id);
788
+ messageType = 'HTML_COMPONENT';
789
+ break;
790
+ case 'PresentationTemplate':
791
+ logger_1.logger.debug('File "%O" is a PresentationTemplate', relativeFilePath);
792
+ response = yield presentationTemplateWcmServices_1.deletePresentationTemplate(apiOptions, fileMeta.id);
793
+ messageType = 'PRESENTATION_TEMPLATE';
794
+ break;
795
+ default:
796
+ logger_1.logger.error(utils_1.errorMessage('ERROR_LIVESYNC_PUSH_WCM_CREATE_HTML_COMPONENT_DEFAULT', { 0: relativeFilePath }));
797
+ return;
798
+ }
603
799
  switch (response.status) {
604
800
  case constants_1.HttpStatus.NO_CONTENT: {
605
- logger_1.logger.info(utils_1.message('LIVESYNC_PUSH_WCM_ONGOING_SYNC_DELETE_HTML_COMPONENT', { 0: fileName, 1: options.library.name }));
606
- const metadataPath = path_1.join(cmdArgs.wcmLibraryPath, '.library', 'LibraryHTMLComponent', `${fileMeta.id}.json`);
801
+ logger_1.logger.info(utils_1.message(`LIVESYNC_PUSH_WCM_ONGOING_SYNC_DELETE_${messageType}`, { 0: relativeFilePath, 1: options.library.name }));
802
+ const metadataPath = path_1.join(cmdArgs.wcmLibraryPath, '.library', wcmType, `${fileMeta.id}.json`);
607
803
  fs_extra_1.default.rmSync(metadataPath, { recursive: true, force: true });
608
804
  pushWcmDesignLibrary_1.PushWcmDesignLibrary.updateCache(metadataServices_1.saveMetadata(cmdArgs.wcmLibraryPath, fileMeta, pushWcmDesignLibrary_1.PushWcmDesignLibrary.getCache(), true));
609
805
  break;
610
806
  }
611
807
  case constants_1.HttpStatus.UNAUTHORIZED: {
612
- logger_1.logger.error(utils_1.errorMessage('ERROR_LIVESYNC_PUSH_WCM_DELETE_HTML_UNAUTHORIZED', { 0: fileName }));
808
+ logger_1.logger.error(utils_1.errorMessage(`ERROR_LIVESYNC_PUSH_WCM_DELETE_${messageType}_UNAUTHORIZED`, { 0: relativeFilePath }));
613
809
  break;
614
810
  }
615
811
  case constants_1.HttpStatus.NOT_FOUND: {
616
- logger_1.logger.error(utils_1.errorMessage('ERROR_LIVESYNC_PUSH_WCM_DELETE_HTML_NOTFOUND', { 0: fileName }));
812
+ logger_1.logger.error(utils_1.errorMessage(`ERROR_LIVESYNC_PUSH_WCM_DELETE_${messageType}_NOTFOUND`, { 0: relativeFilePath }));
617
813
  break;
618
814
  }
619
815
  case constants_1.HttpStatus.CONFLICT: {
620
- logger_1.logger.error(utils_1.errorMessage('ERROR_LIVESYNC_PUSH_WCM_HTML_CONFLICT', { 0: fileName }));
816
+ logger_1.logger.error(utils_1.errorMessage(`ERROR_LIVESYNC_PUSH_WCM_${messageType}_CONFLICT`, { 0: relativeFilePath }));
621
817
  break;
622
818
  }
623
819
  default: {
624
- logger_1.logger.error(utils_1.errorMessage('ERROR_LIVESYNC_PUSH_WCM_DELETE_HTML_DEFAULT', { 0: fileName, 1: response.statusText }));
820
+ logger_1.logger.error(utils_1.errorMessage(`ERROR_LIVESYNC_PUSH_WCM_DELETE_${messageType}_DEFAULT`, { 0: relativeFilePath, 1: response.statusText }));
625
821
  logger_1.logger.debug('Execution of delete html component request is unsuccessful: %O', response);
626
822
  break;
627
823
  }
628
824
  }
629
825
  }
630
826
  catch (error) {
631
- logger_1.logger.error(utils_1.errorMessage('ERROR_LIVESYNC_PUSH_WCM_DELETE_HTML_DEFAULT', { 0: fileName, 1: error }));
827
+ logger_1.logger.error(utils_1.errorMessage(`ERROR_LIVESYNC_PUSH_WCM_DELETE_${messageType}_DEFAULT`, { 0: relativeFilePath, 1: error }));
632
828
  logger_1.logger.debug('Error delete html component: %O', error);
633
829
  }
634
830
  });
635
- exports.deleteWCMHtmlComponentHandler = deleteWCMHtmlComponentHandler;
831
+ exports.deleteWCMHtmlFileHandler = deleteWCMHtmlFileHandler;
636
832
  const deleteWCMFolderHandle = (eventQueueItem) => __awaiter(void 0, void 0, void 0, function* () {
637
833
  logger_1.logger.debug('Executing function deleteWCMFolderHandle');
638
834
  const { chokidarPath, cmdArgs, options, } = eventQueueItem;
639
835
  const directoryName = path_1.default.parse(chokidarPath).name;
836
+ const relativeFilePath = path_1.default.relative(cmdArgs.wcmLibraryPath, chokidarPath);
640
837
  const fileMeta = metadataServices_1.getSavedMetadata(cmdArgs.wcmLibraryPath, chokidarPath, pushWcmDesignLibrary_1.PushWcmDesignLibrary.getCache());
641
838
  const allowedFolderRegex = /^(New Folder|[Uu]ntitled folder)( \d+)?$/;
642
839
  if (!utils_1.isFeatureEnabled(constants_1.FeaturesEnum.LIVESYNC_WCM_DELETE_FOLDER)
643
840
  && !allowedFolderRegex.test(directoryName)
644
841
  && !(yield livesyncUtils_1.isRecentlyCreated(directoryName))) {
645
- logger_1.logger.error(utils_1.errorMessage('ERROR_LIVESYNC_PUSH_WCM_DELETE_FOLDER_DISABLED', { 0: directoryName }));
842
+ logger_1.logger.error(utils_1.errorMessage('ERROR_LIVESYNC_PUSH_WCM_DELETE_FOLDER_DISABLED', { 0: relativeFilePath }));
646
843
  return;
647
844
  }
648
845
  const { dxProtocol, hostname, dxPort, contenthandlerPath, dxUsername, dxPassword, virtualPortalContext, wcmProjectName, } = cmdArgs;
@@ -660,29 +857,29 @@ const deleteWCMFolderHandle = (eventQueueItem) => __awaiter(void 0, void 0, void
660
857
  const response = yield foldersWcmServices_1.deleteFolder(apiOptions, fileMeta.id);
661
858
  switch (response.status) {
662
859
  case constants_1.HttpStatus.NO_CONTENT: {
663
- logger_1.logger.info(utils_1.message('LIVESYNC_PUSH_WCM_ONGOING_SYNC_DELETE_FOLDER', { 0: directoryName, 1: options.library.name }));
860
+ logger_1.logger.info(utils_1.message('LIVESYNC_PUSH_WCM_ONGOING_SYNC_DELETE_FOLDER', { 0: relativeFilePath, 1: options.library.name }));
664
861
  const metadataPath = path_1.join(cmdArgs.wcmLibraryPath, '.library', 'Folder', `${fileMeta.id}.json`);
665
862
  fs_extra_1.default.rmSync(metadataPath, { recursive: true, force: true });
666
863
  pushWcmDesignLibrary_1.PushWcmDesignLibrary.updateCache(metadataServices_1.saveMetadata(cmdArgs.wcmLibraryPath, fileMeta, pushWcmDesignLibrary_1.PushWcmDesignLibrary.getCache(), true));
667
864
  break;
668
865
  }
669
866
  case constants_1.HttpStatus.UNAUTHORIZED: {
670
- logger_1.logger.error(utils_1.errorMessage('ERROR_LIVESYNC_PUSH_WCM_DELETE_FOLDER_UNAUTHORIZED', { 0: directoryName }));
867
+ logger_1.logger.error(utils_1.errorMessage('ERROR_LIVESYNC_PUSH_WCM_DELETE_FOLDER_UNAUTHORIZED', { 0: relativeFilePath }));
671
868
  break;
672
869
  }
673
870
  case constants_1.HttpStatus.NOT_FOUND: {
674
- logger_1.logger.error(utils_1.errorMessage('ERROR_LIVESYNC_PUSH_WCM_DELETE_FOLDER_NOTFOUND', { 0: directoryName }));
871
+ logger_1.logger.error(utils_1.errorMessage('ERROR_LIVESYNC_PUSH_WCM_DELETE_FOLDER_NOTFOUND', { 0: relativeFilePath }));
675
872
  break;
676
873
  }
677
874
  default: {
678
- logger_1.logger.error(utils_1.errorMessage('ERROR_LIVESYNC_PUSH_WCM_DELETE_FOLDER_DEFAULT', { 0: directoryName, 1: response.statusText }));
875
+ logger_1.logger.error(utils_1.errorMessage('ERROR_LIVESYNC_PUSH_WCM_DELETE_FOLDER_DEFAULT', { 0: relativeFilePath, 1: response.statusText }));
679
876
  logger_1.logger.debug('Execution of delete folder request is unsuccessful: %O', response);
680
877
  break;
681
878
  }
682
879
  }
683
880
  }
684
881
  catch (error) {
685
- logger_1.logger.error(utils_1.errorMessage('ERROR_LIVESYNC_PUSH_WCM_DELETE_FOLDER_DEFAULT', { 0: directoryName, 1: error }));
882
+ logger_1.logger.error(utils_1.errorMessage('ERROR_LIVESYNC_PUSH_WCM_DELETE_FOLDER_DEFAULT', { 0: relativeFilePath, 1: error }));
686
883
  logger_1.logger.debug('Error delete html component: %O', error);
687
884
  }
688
885
  });