mcdev 5.3.0 → 6.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 (127) hide show
  1. package/.eslintrc.json +1 -1
  2. package/.github/ISSUE_TEMPLATE/bug.yml +1 -0
  3. package/.github/workflows/code-test.yml +1 -1
  4. package/.github/workflows/coverage-base-update.yml +1 -1
  5. package/.github/workflows/coverage-develop-branch.yml +2 -2
  6. package/.github/workflows/coverage-main-branch.yml +2 -2
  7. package/.github/workflows/coverage.yml +2 -2
  8. package/.github/workflows/npm-publish.yml +2 -2
  9. package/.prettierrc +7 -0
  10. package/docs/dist/documentation.md +9 -494
  11. package/jsconfig.json +5 -1
  12. package/lib/Builder.js +8 -8
  13. package/lib/Deployer.js +10 -10
  14. package/lib/MetadataTypeDefinitions.js +73 -39
  15. package/lib/MetadataTypeInfo.js +72 -38
  16. package/lib/Retriever.js +8 -8
  17. package/lib/cli.js +6 -6
  18. package/lib/index.js +24 -17
  19. package/lib/metadataTypes/Asset.js +12 -10
  20. package/lib/metadataTypes/AttributeGroup.js +7 -6
  21. package/lib/metadataTypes/AttributeSet.js +8 -7
  22. package/lib/metadataTypes/Automation.js +8 -8
  23. package/lib/metadataTypes/Campaign.js +7 -6
  24. package/lib/metadataTypes/ContentArea.js +7 -6
  25. package/lib/metadataTypes/DataExtension.js +16 -16
  26. package/lib/metadataTypes/DataExtensionField.js +6 -5
  27. package/lib/metadataTypes/DataExtensionTemplate.js +5 -4
  28. package/lib/metadataTypes/DataExtract.js +8 -7
  29. package/lib/metadataTypes/DataExtractType.js +5 -4
  30. package/lib/metadataTypes/Discovery.js +6 -5
  31. package/lib/metadataTypes/Email.js +6 -5
  32. package/lib/metadataTypes/EmailSend.js +7 -6
  33. package/lib/metadataTypes/Event.js +8 -7
  34. package/lib/metadataTypes/FileLocation.js +5 -4
  35. package/lib/metadataTypes/FileTransfer.js +8 -7
  36. package/lib/metadataTypes/Filter.js +5 -4
  37. package/lib/metadataTypes/Folder.js +9 -8
  38. package/lib/metadataTypes/ImportFile.js +8 -7
  39. package/lib/metadataTypes/Journey.js +9 -8
  40. package/lib/metadataTypes/List.js +9 -8
  41. package/lib/metadataTypes/MetadataType.js +37 -29
  42. package/lib/metadataTypes/MobileCode.js +5 -4
  43. package/lib/metadataTypes/MobileKeyword.js +8 -7
  44. package/lib/metadataTypes/MobileMessage.js +8 -7
  45. package/lib/metadataTypes/Query.js +9 -8
  46. package/lib/metadataTypes/Role.js +8 -7
  47. package/lib/metadataTypes/Script.js +7 -6
  48. package/lib/metadataTypes/SendClassification.js +5 -4
  49. package/lib/metadataTypes/TransactionalEmail.js +8 -7
  50. package/lib/metadataTypes/TransactionalMessage.js +6 -5
  51. package/lib/metadataTypes/TransactionalPush.js +7 -6
  52. package/lib/metadataTypes/TransactionalSMS.js +9 -8
  53. package/lib/metadataTypes/TriggeredSend.js +15 -12
  54. package/lib/metadataTypes/User.js +8 -7
  55. package/lib/metadataTypes/Verification.js +8 -8
  56. package/lib/metadataTypes/definitions/Asset.definition.js +1 -1
  57. package/lib/metadataTypes/definitions/AttributeGroup.definition.js +1 -1
  58. package/lib/metadataTypes/definitions/AttributeSet.definition.js +1 -1
  59. package/lib/metadataTypes/definitions/Automation.definition.js +1 -1
  60. package/lib/metadataTypes/definitions/Campaign.definition.js +1 -1
  61. package/lib/metadataTypes/definitions/ContentArea.definition.js +1 -1
  62. package/lib/metadataTypes/definitions/DataExtension.definition.js +1 -1
  63. package/lib/metadataTypes/definitions/DataExtensionField.definition.js +1 -1
  64. package/lib/metadataTypes/definitions/DataExtensionTemplate.definition.js +1 -1
  65. package/lib/metadataTypes/definitions/DataExtract.definition.js +1 -1
  66. package/lib/metadataTypes/definitions/DataExtractType.definition.js +1 -1
  67. package/lib/metadataTypes/definitions/Discovery.definition.js +1 -1
  68. package/lib/metadataTypes/definitions/Email.definition.js +1 -1
  69. package/lib/metadataTypes/definitions/EmailSend.definition.js +1 -1
  70. package/lib/metadataTypes/definitions/Event.definition.js +1 -1
  71. package/lib/metadataTypes/definitions/FileLocation.definition.js +1 -1
  72. package/lib/metadataTypes/definitions/FileTransfer.definition.js +1 -1
  73. package/lib/metadataTypes/definitions/Filter.definition.js +1 -1
  74. package/lib/metadataTypes/definitions/Folder.definition.js +1 -1
  75. package/lib/metadataTypes/definitions/ImportFile.definition.js +1 -1
  76. package/lib/metadataTypes/definitions/Journey.definition.js +1 -1
  77. package/lib/metadataTypes/definitions/List.definition.js +1 -1
  78. package/lib/metadataTypes/definitions/MobileCode.definition.js +1 -1
  79. package/lib/metadataTypes/definitions/MobileKeyword.definition.js +1 -1
  80. package/lib/metadataTypes/definitions/MobileMessage.definition.js +1 -1
  81. package/lib/metadataTypes/definitions/Query.definition.js +1 -1
  82. package/lib/metadataTypes/definitions/Role.definition.js +1 -1
  83. package/lib/metadataTypes/definitions/Script.definition.js +1 -1
  84. package/lib/metadataTypes/definitions/SendClassification.definition.js +1 -1
  85. package/lib/metadataTypes/definitions/TransactionalEmail.definition.js +1 -1
  86. package/lib/metadataTypes/definitions/TransactionalPush.definition.js +1 -1
  87. package/lib/metadataTypes/definitions/TransactionalSMS.definition.js +1 -1
  88. package/lib/metadataTypes/definitions/TriggeredSend.definition.js +1 -1
  89. package/lib/metadataTypes/definitions/User.definition.js +1 -1
  90. package/lib/metadataTypes/definitions/Verification.definition.js +1 -1
  91. package/lib/retrieveChangelog.js +4 -3
  92. package/lib/util/auth.js +11 -8
  93. package/lib/util/businessUnit.js +5 -5
  94. package/lib/util/cache.js +3 -3
  95. package/lib/util/cli.js +15 -13
  96. package/lib/util/config.js +10 -7
  97. package/lib/util/devops.js +12 -11
  98. package/lib/util/file.js +15 -14
  99. package/lib/util/init.config.js +11 -9
  100. package/lib/util/init.git.js +8 -7
  101. package/lib/util/init.js +12 -12
  102. package/lib/util/init.npm.js +7 -5
  103. package/lib/util/util.js +14 -12
  104. package/package.json +31 -26
  105. package/test/general.test.js +4 -6
  106. package/test/mockRoot/.mcdevrc.json +1 -1
  107. package/test/resourceFactory.js +52 -26
  108. package/test/type.attributeGroup.test.js +5 -8
  109. package/test/type.attributeSet.test.js +5 -8
  110. package/test/type.automation.test.js +5 -9
  111. package/test/type.dataExtension.test.js +5 -9
  112. package/test/type.dataExtract.test.js +5 -6
  113. package/test/type.fileTransfer.test.js +5 -6
  114. package/test/type.importFile.test.js +5 -6
  115. package/test/type.journey.test.js +5 -6
  116. package/test/type.mobileKeyword.test.js +5 -7
  117. package/test/type.mobileMessage.test.js +5 -7
  118. package/test/type.query.test.js +5 -8
  119. package/test/type.script.test.js +5 -8
  120. package/test/type.transactionalEmail.test.js +5 -6
  121. package/test/type.transactionalPush.test.js +5 -6
  122. package/test/type.transactionalSMS.test.js +5 -7
  123. package/test/type.triggeredSend.test.js +5 -6
  124. package/test/type.user.test.js +6 -8
  125. package/test/type.verification.test.js +5 -6
  126. package/test/utils.js +61 -47
  127. package/types/mcdev.d.js +2 -2
@@ -1,8 +1,8 @@
1
1
  'use strict';
2
2
 
3
- const TYPE = require('../../types/mcdev.d');
4
- const MetadataType = require('./MetadataType');
5
- const Util = require('../util/util');
3
+ import TYPE from '../../types/mcdev.d.js';
4
+ import MetadataType from './MetadataType.js';
5
+ import { Util } from '../util/util.js';
6
6
 
7
7
  /**
8
8
  * TransactionalMessage MetadataType
@@ -115,6 +115,7 @@ class TransactionalMessage extends MetadataType {
115
115
 
116
116
  // Assign definition to static attributes
117
117
  // ! using SMS definitions here as placeholder to have auto completion
118
- TransactionalMessage.definition = require('../MetadataTypeDefinitions').transactionalSMS;
118
+ import MetadataTypeDefinitions from '../MetadataTypeDefinitions.js';
119
+ TransactionalMessage.definition = MetadataTypeDefinitions.transactionalSMS;
119
120
 
120
- module.exports = TransactionalMessage;
121
+ export default TransactionalMessage;
@@ -1,9 +1,9 @@
1
1
  'use strict';
2
2
 
3
- const TYPE = require('../../types/mcdev.d');
4
- const TransactionalMessage = require('./TransactionalMessage');
5
- const Util = require('../util/util');
6
- const cache = require('../util/cache');
3
+ import TYPE from '../../types/mcdev.d.js';
4
+ import TransactionalMessage from './TransactionalMessage.js';
5
+ import { Util } from '../util/util.js';
6
+ import cache from '../util/cache.js';
7
7
 
8
8
  /**
9
9
  * TransactionalPush TransactionalMessage
@@ -72,6 +72,7 @@ class TransactionalPush extends TransactionalMessage {
72
72
  }
73
73
 
74
74
  // Assign definition to static attributes
75
- TransactionalPush.definition = require('../MetadataTypeDefinitions').transactionalPush;
75
+ import MetadataTypeDefinitions from '../MetadataTypeDefinitions.js';
76
+ TransactionalPush.definition = MetadataTypeDefinitions.transactionalPush;
76
77
 
77
- module.exports = TransactionalPush;
78
+ export default TransactionalPush;
@@ -1,11 +1,11 @@
1
1
  'use strict';
2
2
 
3
- const TYPE = require('../../types/mcdev.d');
4
- const TransactionalMessage = require('./TransactionalMessage');
5
- const Util = require('../util/util');
6
- const File = require('../util/file');
7
- const beautifier = require('beauty-amp-core');
8
- const cache = require('../util/cache');
3
+ import TYPE from '../../types/mcdev.d.js';
4
+ import TransactionalMessage from './TransactionalMessage.js';
5
+ import { Util } from '../util/util.js';
6
+ import File from '../util/file.js';
7
+ import beautifier from 'beauty-amp-core';
8
+ import cache from '../util/cache.js';
9
9
 
10
10
  /**
11
11
  * TransactionalSMS MetadataType
@@ -341,6 +341,7 @@ class TransactionalSMS extends TransactionalMessage {
341
341
  }
342
342
 
343
343
  // Assign definition to static attributes
344
- TransactionalSMS.definition = require('../MetadataTypeDefinitions').transactionalSMS;
344
+ import MetadataTypeDefinitions from '../MetadataTypeDefinitions.js';
345
+ TransactionalSMS.definition = MetadataTypeDefinitions.transactionalSMS;
345
346
 
346
- module.exports = TransactionalSMS;
347
+ export default TransactionalSMS;
@@ -1,15 +1,12 @@
1
1
  'use strict';
2
2
 
3
- const TYPE = require('../../types/mcdev.d');
4
- const MetadataType = require('./MetadataType');
5
- const Util = require('../util/util');
6
- const cache = require('../util/cache');
7
-
8
- const cacheTypes = {
9
- asset: require('./Asset'),
10
- folder: require('./Folder'),
11
- list: require('./List'),
12
- };
3
+ import TYPE from '../../types/mcdev.d.js';
4
+ import MetadataType from './MetadataType.js';
5
+ import { Util } from '../util/util.js';
6
+ import cache from '../util/cache.js';
7
+ import asset from './Asset.js';
8
+ import folder from './Folder.js';
9
+ import list from './List.js';
13
10
 
14
11
  /**
15
12
  * MessageSendActivity MetadataType
@@ -273,6 +270,11 @@ class TriggeredSend extends MetadataType {
273
270
  asset: ['message'],
274
271
  list: null,
275
272
  };
273
+ const cacheTypes = {
274
+ asset,
275
+ folder,
276
+ list,
277
+ };
276
278
  for (const [type, subTypeArr] of Object.entries(requiredCache)) {
277
279
  if (type === 'asset' && assetLoaded) {
278
280
  continue;
@@ -406,6 +408,7 @@ class TriggeredSend extends MetadataType {
406
408
  }
407
409
 
408
410
  // Assign definition to static attributes
409
- TriggeredSend.definition = require('../MetadataTypeDefinitions').triggeredSend;
411
+ import MetadataTypeDefinitions from '../MetadataTypeDefinitions.js';
412
+ TriggeredSend.definition = MetadataTypeDefinitions.triggeredSend;
410
413
 
411
- module.exports = TriggeredSend;
414
+ export default TriggeredSend;
@@ -1,10 +1,10 @@
1
1
  'use strict';
2
2
 
3
- const TYPE = require('../../types/mcdev.d');
4
- const MetadataType = require('./MetadataType');
5
- const Util = require('../util/util');
6
- const File = require('../util/file');
7
- const cache = require('../util/cache');
3
+ import TYPE from '../../types/mcdev.d.js';
4
+ import MetadataType from './MetadataType.js';
5
+ import { Util } from '../util/util.js';
6
+ import File from '../util/file.js';
7
+ import cache from '../util/cache.js';
8
8
 
9
9
  /**
10
10
  * MetadataType
@@ -1169,6 +1169,7 @@ class User extends MetadataType {
1169
1169
  }
1170
1170
 
1171
1171
  // Assign definition to static attributes
1172
- User.definition = require('../MetadataTypeDefinitions').user;
1172
+ import MetadataTypeDefinitions from '../MetadataTypeDefinitions.js';
1173
+ User.definition = MetadataTypeDefinitions.user;
1173
1174
 
1174
- module.exports = User;
1175
+ export default User;
@@ -1,11 +1,10 @@
1
1
  'use strict';
2
2
 
3
- const TYPE = require('../../types/mcdev.d');
4
- const MetadataType = require('./MetadataType');
5
- const Automation = require('./Automation');
6
- const Util = require('../util/util');
7
- const cache = require('../util/cache');
8
-
3
+ import Automation from './Automation.js';
4
+ import MetadataType from './MetadataType.js';
5
+ import TYPE from '../../types/mcdev.d.js';
6
+ import { Util } from '../util/util.js';
7
+ import cache from '../util/cache.js';
9
8
  /**
10
9
  * Verification MetadataType
11
10
  *
@@ -225,6 +224,7 @@ class Verification extends MetadataType {
225
224
  }
226
225
 
227
226
  // Assign definition to static attributes
228
- Verification.definition = require('../MetadataTypeDefinitions').verification;
227
+ import MetadataTypeDefinitions from '../MetadataTypeDefinitions.js';
228
+ Verification.definition = MetadataTypeDefinitions.verification;
229
229
 
230
- module.exports = Verification;
230
+ export default Verification;
@@ -1,5 +1,5 @@
1
1
  // asset types https://developer.salesforce.com/docs/atlas.en-us.noversion.mc-apis.meta/mc-apis/base-asset-types.htm
2
- module.exports = {
2
+ export default {
3
3
  bodyIteratorField: 'items',
4
4
  dependencies: ['folder-asset', 'folder-asset-shared'],
5
5
  folderType: 'asset',
@@ -1,4 +1,4 @@
1
- module.exports = {
1
+ export default {
2
2
  bodyIteratorField: 'attributeGroupDefinitions',
3
3
  dependencies: ['attributeSet'], // future may have dependency on Data Extensions
4
4
  hasExtended: false,
@@ -1,4 +1,4 @@
1
- module.exports = {
1
+ export default {
2
2
  bodyIteratorField: 'setDefinition',
3
3
  dependencies: [
4
4
  'folder-hidden',
@@ -1,4 +1,4 @@
1
- module.exports = {
1
+ export default {
2
2
  activityTypeMapping: {
3
3
  dataExtract: 73,
4
4
  dataFactoryUtility: 425,
@@ -1,4 +1,4 @@
1
- module.exports = {
1
+ export default {
2
2
  bodyIteratorField: 'entry',
3
3
  dependencies: [],
4
4
  hasExtended: false,
@@ -1,4 +1,4 @@
1
- module.exports = {
1
+ export default {
2
2
  bodyIteratorField: 'Results',
3
3
  dependencies: ['folder'],
4
4
  hasExtended: false,
@@ -1,4 +1,4 @@
1
- module.exports = {
1
+ export default {
2
2
  bodyIteratorField: 'Results',
3
3
  dependencies: [
4
4
  'folder-hidden',
@@ -1,4 +1,4 @@
1
- module.exports = {
1
+ export default {
2
2
  bodyIteratorField: 'Results',
3
3
  dependencies: [],
4
4
  filter: {},
@@ -1,4 +1,4 @@
1
- module.exports = {
1
+ export default {
2
2
  bodyIteratorField: 'Results',
3
3
  dependencies: [],
4
4
  filter: {},
@@ -1,4 +1,4 @@
1
- module.exports = {
1
+ export default {
2
2
  bodyIteratorField: 'items',
3
3
  dependencies: ['dataExtension', 'dataExtractType'],
4
4
  hasExtended: true,
@@ -1,4 +1,4 @@
1
- module.exports = {
1
+ export default {
2
2
  bodyIteratorField: [],
3
3
  dependencies: [],
4
4
  hasExtended: false,
@@ -1,4 +1,4 @@
1
- module.exports = {
1
+ export default {
2
2
  bodyIteratorField: null,
3
3
  dependencies: [],
4
4
  endPointMapping: {
@@ -1,4 +1,4 @@
1
- module.exports = {
1
+ export default {
2
2
  bodyIteratorField: 'Results',
3
3
  dependencies: ['folder-hidden', 'folder-email', 'folder-shared_email_default'],
4
4
  hasExtended: false,
@@ -1,4 +1,4 @@
1
- module.exports = {
1
+ export default {
2
2
  bodyIteratorField: 'Results',
3
3
  dependencies: ['folder-userinitiatedsends', 'email', 'asset-message', 'dataExtension', 'list'], // filter(+), sendClassification(+), SenderProfile(n/a), DeliveryProfile(n/a)
4
4
  folderType: 'userinitiatedsends',
@@ -1,4 +1,4 @@
1
- module.exports = {
1
+ export default {
2
2
  bodyIteratorField: 'items',
3
3
  dependencies: ['dataExtension'],
4
4
  hasExtended: false,
@@ -1,4 +1,4 @@
1
- module.exports = {
1
+ export default {
2
2
  bodyIteratorField: 'items',
3
3
  dependencies: [],
4
4
  hasExtended: false,
@@ -1,4 +1,4 @@
1
- module.exports = {
1
+ export default {
2
2
  bodyIteratorField: 'items',
3
3
  dependencies: ['fileLocation'],
4
4
  hasExtended: true,
@@ -1,4 +1,4 @@
1
- module.exports = {
1
+ export default {
2
2
  bodyIteratorField: 'items',
3
3
  dependencies: [],
4
4
  hasExtended: false,
@@ -1,4 +1,4 @@
1
- module.exports = {
1
+ export default {
2
2
  bodyIteratorField: 'Results',
3
3
  dependencies: [],
4
4
  subTypes: [
@@ -1,4 +1,4 @@
1
- module.exports = {
1
+ export default {
2
2
  bodyIteratorField: 'items',
3
3
  dependencies: ['fileLocation', 'dataExtension', 'list'],
4
4
  destinationObjectTypeMapping: {
@@ -2,7 +2,7 @@
2
2
  // obj definition: https://developer.salesforce.com/docs/marketing/marketing-cloud/guide/getting-started-spec.html
3
3
  // insert: https://developer.salesforce.com/docs/marketing/marketing-cloud/guide/postCreateInteraction.html
4
4
  // update: https://developer.salesforce.com/docs/marketing/marketing-cloud/guide/putUpdateInteraction.html
5
- module.exports = {
5
+ export default {
6
6
  bodyIteratorField: 'items',
7
7
  dependencies: [
8
8
  'folder-journey',
@@ -1,4 +1,4 @@
1
- module.exports = {
1
+ export default {
2
2
  bodyIteratorField: 'Results',
3
3
  dependencies: ['folder-mysubs', 'folder-list', 'folder-publication'],
4
4
  folderType: 'list',
@@ -1,4 +1,4 @@
1
- module.exports = {
1
+ export default {
2
2
  bodyIteratorField: 'entry',
3
3
  dependencies: [],
4
4
  hasExtended: false,
@@ -1,4 +1,4 @@
1
- module.exports = {
1
+ export default {
2
2
  bodyIteratorField: 'entry',
3
3
  dependencies: ['mobileCode'],
4
4
  hasExtended: false,
@@ -1,4 +1,4 @@
1
- module.exports = {
1
+ export default {
2
2
  bodyIteratorField: 'entry',
3
3
  dependencies: ['mobileCode', 'mobileKeyword', 'campaign'],
4
4
  hasExtended: false,
@@ -1,4 +1,4 @@
1
- module.exports = {
1
+ export default {
2
2
  bodyIteratorField: 'items',
3
3
  dependencies: ['folder-queryactivity', 'dataExtension'],
4
4
  folderType: 'queryactivity',
@@ -1,4 +1,4 @@
1
- module.exports = {
1
+ export default {
2
2
  bodyIteratorField: 'Results',
3
3
  dependencies: [],
4
4
  deployBlacklist: [
@@ -1,4 +1,4 @@
1
- module.exports = {
1
+ export default {
2
2
  bodyIteratorField: 'items',
3
3
  dependencies: ['folder-ssjsactivity'],
4
4
  folderType: 'ssjsactivity',
@@ -1,5 +1,5 @@
1
1
  // https://developer.salesforce.com/docs/marketing/marketing-cloud/guide/sendclassification.html
2
- module.exports = {
2
+ export default {
3
3
  bodyIteratorField: 'Results',
4
4
  dependencies: [],
5
5
  filter: {},
@@ -1,4 +1,4 @@
1
- module.exports = {
1
+ export default {
2
2
  bodyIteratorField: 'definitions',
3
3
  dependencies: ['asset-message', 'dataExtension', 'list', 'journey'],
4
4
  hasExtended: false,
@@ -1,4 +1,4 @@
1
- module.exports = {
1
+ export default {
2
2
  bodyIteratorField: 'definitions',
3
3
  dependencies: ['asset-asset'],
4
4
  hasExtended: false,
@@ -1,4 +1,4 @@
1
- module.exports = {
1
+ export default {
2
2
  bodyIteratorField: 'definitions',
3
3
  dependencies: ['mobileCode', 'mobileKeyword'],
4
4
  hasExtended: false,
@@ -1,4 +1,4 @@
1
- module.exports = {
1
+ export default {
2
2
  bodyIteratorField: 'Results',
3
3
  dependencies: [
4
4
  'folder-hidden',
@@ -1,4 +1,4 @@
1
- module.exports = {
1
+ export default {
2
2
  bodyIteratorField: 'Results',
3
3
  dependencies: ['role'],
4
4
  folderType: null,
@@ -1,4 +1,4 @@
1
- module.exports = {
1
+ export default {
2
2
  bodyIteratorField: 'items',
3
3
  dependencies: ['dataExtension'],
4
4
  hasExtended: false,
@@ -16,9 +16,10 @@
16
16
  }]
17
17
  */
18
18
 
19
- const mcdev = require('./index');
20
- const Definition = require('./MetadataTypeDefinitions');
21
- const MetadataType = require('./MetadataTypeInfo');
19
+ import mcdev from './index.js';
20
+
21
+ import Definition from './MetadataTypeDefinitions.js';
22
+ import MetadataType from './MetadataTypeInfo.js';
22
23
 
23
24
  // disable cli logs
24
25
  // mcdev._setLoggingLevel({ silent: true });
package/lib/util/auth.js CHANGED
@@ -1,10 +1,13 @@
1
- const TYPE = require('../../types/mcdev.d');
2
- const Util = require('./util');
3
- const File = require('./file');
4
- const SDK = require('sfmc-sdk');
5
- const Conf = require('conf');
6
- const credentialStore = new Conf({ configName: 'sessions', clearInvalidConfig: true });
7
- // const currentMID = null;
1
+ import TYPE from '../../types/mcdev.d.js';
2
+ import { Util } from './util.js';
3
+ import File from './file.js';
4
+ import SDK from 'sfmc-sdk';
5
+ import Conf from 'conf';
6
+ const credentialStore = new Conf({
7
+ projectName: 'mcdev',
8
+ configName: 'sessions',
9
+ clearInvalidConfig: true,
10
+ });
8
11
  const initializedSDKs = {};
9
12
  let authfile;
10
13
 
@@ -159,4 +162,4 @@ function setupSDK(sessionKey, authObject) {
159
162
  });
160
163
  }
161
164
 
162
- module.exports = Auth;
165
+ export default Auth;
@@ -1,9 +1,9 @@
1
1
  'use strict';
2
2
 
3
- const TYPE = require('../../types/mcdev.d');
4
- const Util = require('./util');
5
- const File = require('./file');
6
- const auth = require('./auth');
3
+ import TYPE from '../../types/mcdev.d.js';
4
+ import { Util } from './util.js';
5
+ import File from './file.js';
6
+ import auth from './auth.js';
7
7
 
8
8
  /**
9
9
  * Helper that handles retrieval of BU info
@@ -104,4 +104,4 @@ const BusinessUnit = {
104
104
  },
105
105
  };
106
106
 
107
- module.exports = BusinessUnit;
107
+ export default BusinessUnit;
package/lib/util/cache.js CHANGED
@@ -1,11 +1,11 @@
1
- const TYPE = require('../../types/mcdev.d');
2
- const Util = require('./util');
1
+ import TYPE from '../../types/mcdev.d.js';
2
+ import { Util } from './util.js';
3
3
 
4
4
  /** @type {TYPE.Cache} */
5
5
  const dataStore = {};
6
6
  let currentMID = null;
7
7
 
8
- module.exports = {
8
+ export default {
9
9
  /**
10
10
  * Method to setup buObject
11
11
  * NOTE: in future this may need to restore, rather than wipe the cache
package/lib/util/cli.js CHANGED
@@ -1,14 +1,16 @@
1
1
  'use strict';
2
2
 
3
- const TYPE = require('../../types/mcdev.d');
4
- const BuHelper = require('./businessUnit');
5
- const File = require('./file');
6
- const config = require('./config');
7
- const inquirer = require('inquirer');
8
- const MetadataDefinitions = require('./../MetadataTypeDefinitions');
9
- const Util = require('./util');
10
- const auth = require('./auth');
11
- require('console.table');
3
+ import TYPE from '../../types/mcdev.d.js';
4
+ import BuHelper from './businessUnit.js';
5
+ import File from './file.js';
6
+ import config from './config.js';
7
+ import inquirer from 'inquirer';
8
+ import MetadataDefinitions from './../MetadataTypeDefinitions.js';
9
+ import { Util } from './util.js';
10
+ import auth from './auth.js';
11
+ import 'console.table';
12
+ import MetadataTypeInfo from './../MetadataTypeInfo.js';
13
+ import TransactionalMessage from './../metadataTypes/TransactionalMessage.js';
12
14
 
13
15
  /**
14
16
  * CLI helper class
@@ -321,7 +323,9 @@ const Cli = {
321
323
  businessUnits: {},
322
324
  };
323
325
  } catch (ex) {
324
- Util.logger.error(ex.message);
326
+ Util.logger.error(
327
+ `We could not verify your credential due to a problem (${ex.message}). Please try again.`
328
+ );
325
329
  credentialsGood = false;
326
330
  if (skipInteraction) {
327
331
  // break the otherwise infinite loop
@@ -570,8 +574,6 @@ const Cli = {
570
574
  * @returns {object[]} list of supported types with their apiNames
571
575
  */
572
576
  explainTypes() {
573
- const MetadataTypeInfo = require('./../MetadataTypeInfo');
574
- const TransactionalMessage = require('./../metadataTypes/TransactionalMessage');
575
577
  const json = [];
576
578
  const apiNameArr = Object.keys(MetadataDefinitions);
577
579
 
@@ -669,4 +671,4 @@ const Cli = {
669
671
  },
670
672
  };
671
673
 
672
- module.exports = Cli;
674
+ export default Cli;
@@ -1,9 +1,12 @@
1
- const TYPE = require('../../types/mcdev.d');
2
- const Util = require('./util');
3
- const File = require('./file');
4
- const inquirer = require('inquirer');
5
- const semver = require('semver');
6
- const path = require('node:path');
1
+ import TYPE from '../../types/mcdev.d.js';
2
+ import { Util } from './util.js';
3
+ import File from './file.js';
4
+ import inquirer from 'inquirer';
5
+ import semver from 'semver';
6
+ import path from 'node:path';
7
+ import { fileURLToPath } from 'node:url';
8
+ const __dirname = path.dirname(fileURLToPath(import.meta.url));
9
+
7
10
  /**
8
11
  * Central class for loading and validating properties from config and auth
9
12
  */
@@ -300,4 +303,4 @@ const config = {
300
303
  return defaultProperties;
301
304
  },
302
305
  };
303
- module.exports = config;
306
+ export default config;
@@ -1,13 +1,14 @@
1
- const TYPE = require('../../types/mcdev.d');
2
- const File = require('./file');
3
- const path = require('node:path');
4
- const inquirer = require('inquirer');
5
- const Util = require('./util');
6
- const Cli = require('./cli');
7
- const git = require('simple-git')();
8
- const Builder = require('../Builder');
9
- const MetadataType = require('../MetadataTypeInfo');
10
- const jsonToTable = require('json-to-table');
1
+ import TYPE from '../../types/mcdev.d.js';
2
+ import File from './file.js';
3
+ import path from 'node:path';
4
+ import inquirer from 'inquirer';
5
+ import { Util } from './util.js';
6
+ import Cli from './cli.js';
7
+ import gitFactory from 'simple-git';
8
+ const git = gitFactory();
9
+ import Builder from '../Builder.js';
10
+ import MetadataType from '../MetadataTypeInfo.js';
11
+ import jsonToTable from 'json-to-table';
11
12
  /**
12
13
  * DevOps helper class
13
14
  */
@@ -570,4 +571,4 @@ const DevOps = {
570
571
  },
571
572
  };
572
573
 
573
- module.exports = DevOps;
574
+ export default DevOps;