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,44 +1,78 @@
1
1
  'use strict';
2
2
 
3
+ import asset from './metadataTypes/definitions/Asset.definition.js';
4
+ import attributeGroup from './metadataTypes/definitions/AttributeGroup.definition.js';
5
+ import attributeSet from './metadataTypes/definitions/AttributeSet.definition.js';
6
+ import automation from './metadataTypes/definitions/Automation.definition.js';
7
+ import campaign from './metadataTypes/definitions/Campaign.definition.js';
8
+ import contentArea from './metadataTypes/definitions/ContentArea.definition.js';
9
+ import dataExtension from './metadataTypes/definitions/DataExtension.definition.js';
10
+ import dataExtensionField from './metadataTypes/definitions/DataExtensionField.definition.js';
11
+ import dataExtensionTemplate from './metadataTypes/definitions/DataExtensionTemplate.definition.js';
12
+ import dataExtract from './metadataTypes/definitions/DataExtract.definition.js';
13
+ import dataExtractType from './metadataTypes/definitions/DataExtractType.definition.js';
14
+ import discovery from './metadataTypes/definitions/Discovery.definition.js';
15
+ import email from './metadataTypes/definitions/Email.definition.js';
16
+ import emailSend from './metadataTypes/definitions/EmailSend.definition.js';
17
+ import event from './metadataTypes/definitions/Event.definition.js';
18
+ import fileLocation from './metadataTypes/definitions/FileLocation.definition.js';
19
+ import fileTransfer from './metadataTypes/definitions/FileTransfer.definition.js';
20
+ import filter from './metadataTypes/definitions/Filter.definition.js';
21
+ import folder from './metadataTypes/definitions/Folder.definition.js';
22
+ import importFile from './metadataTypes/definitions/ImportFile.definition.js';
23
+ import journey from './metadataTypes/definitions/Journey.definition.js';
24
+ import list from './metadataTypes/definitions/List.definition.js';
25
+ import mobileCode from './metadataTypes/definitions/MobileCode.definition.js';
26
+ import mobileKeyword from './metadataTypes/definitions/MobileKeyword.definition.js';
27
+ import mobileMessage from './metadataTypes/definitions/MobileMessage.definition.js';
28
+ import query from './metadataTypes/definitions/Query.definition.js';
29
+ import role from './metadataTypes/definitions/Role.definition.js';
30
+ import script from './metadataTypes/definitions/Script.definition.js';
31
+ import sendClassification from './metadataTypes/definitions/SendClassification.definition.js';
32
+ import transactionalEmail from './metadataTypes/definitions/TransactionalEmail.definition.js';
33
+ import transactionalPush from './metadataTypes/definitions/TransactionalPush.definition.js';
34
+ import transactionalSMS from './metadataTypes/definitions/TransactionalSMS.definition.js';
35
+ import triggeredSend from './metadataTypes/definitions/TriggeredSend.definition.js';
36
+ import user from './metadataTypes/definitions/User.definition.js';
37
+ import verification from './metadataTypes/definitions/Verification.definition.js';
38
+
3
39
  /**
4
- * Provides access to all metadataType classes
40
+ * Provides access to definitions of all metadataType classes
5
41
  */
6
- const MetadataTypeDefinitions = {
7
- asset: require('./metadataTypes/definitions/Asset.definition'),
8
- attributeGroup: require('./metadataTypes/definitions/AttributeGroup.definition'),
9
- attributeSet: require('./metadataTypes/definitions/AttributeSet.definition'),
10
- automation: require('./metadataTypes/definitions/Automation.definition'),
11
- campaign: require('./metadataTypes/definitions/Campaign.definition'),
12
- contentArea: require('./metadataTypes/definitions/ContentArea.definition'),
13
- dataExtension: require('./metadataTypes/definitions/DataExtension.definition'),
14
- dataExtensionField: require('./metadataTypes/definitions/DataExtensionField.definition'),
15
- dataExtensionTemplate: require('./metadataTypes/definitions/DataExtensionTemplate.definition'),
16
- dataExtract: require('./metadataTypes/definitions/DataExtract.definition'),
17
- dataExtractType: require('./metadataTypes/definitions/DataExtractType.definition'),
18
- discovery: require('./metadataTypes/definitions/Discovery.definition'),
19
- email: require('./metadataTypes/definitions/Email.definition'),
20
- emailSend: require('./metadataTypes/definitions/EmailSend.definition'),
21
- event: require('./metadataTypes/definitions/Event.definition'),
22
- fileLocation: require('./metadataTypes/definitions/FileLocation.definition'),
23
- fileTransfer: require('./metadataTypes/definitions/FileTransfer.definition'),
24
- filter: require('./metadataTypes/definitions/Filter.definition'),
25
- folder: require('./metadataTypes/definitions/Folder.definition'),
26
- importFile: require('./metadataTypes/definitions/ImportFile.definition'),
27
- journey: require('./metadataTypes/definitions/Journey.definition'),
28
- list: require('./metadataTypes/definitions/List.definition'),
29
- mobileCode: require('./metadataTypes/definitions/MobileCode.definition'),
30
- mobileKeyword: require('./metadataTypes/definitions/MobileKeyword.definition'),
31
- mobileMessage: require('./metadataTypes/definitions/MobileMessage.definition'),
32
- query: require('./metadataTypes/definitions/Query.definition'),
33
- role: require('./metadataTypes/definitions/Role.definition'),
34
- script: require('./metadataTypes/definitions/Script.definition'),
35
- sendClassification: require('./metadataTypes/definitions/SendClassification.definition'),
36
- transactionalEmail: require('./metadataTypes/definitions/TransactionalEmail.definition'),
37
- transactionalPush: require('./metadataTypes/definitions/TransactionalPush.definition'),
38
- transactionalSMS: require('./metadataTypes/definitions/TransactionalSMS.definition'),
39
- triggeredSend: require('./metadataTypes/definitions/TriggeredSend.definition'),
40
- user: require('./metadataTypes/definitions/User.definition'),
41
- verification: require('./metadataTypes/definitions/Verification.definition'),
42
+ export default {
43
+ asset,
44
+ attributeGroup,
45
+ attributeSet,
46
+ automation,
47
+ campaign,
48
+ contentArea,
49
+ dataExtension,
50
+ dataExtensionField,
51
+ dataExtensionTemplate,
52
+ dataExtract,
53
+ dataExtractType,
54
+ discovery,
55
+ email,
56
+ emailSend,
57
+ event,
58
+ fileLocation,
59
+ fileTransfer,
60
+ filter,
61
+ folder,
62
+ importFile,
63
+ journey,
64
+ list,
65
+ mobileCode,
66
+ mobileKeyword,
67
+ mobileMessage,
68
+ query,
69
+ role,
70
+ script,
71
+ sendClassification,
72
+ transactionalEmail,
73
+ transactionalPush,
74
+ transactionalSMS,
75
+ triggeredSend,
76
+ user,
77
+ verification,
42
78
  };
43
-
44
- module.exports = MetadataTypeDefinitions;
@@ -1,44 +1,78 @@
1
1
  'use strict';
2
2
 
3
+ import asset from './metadataTypes/Asset.js';
4
+ import attributeGroup from './metadataTypes/AttributeGroup.js';
5
+ import attributeSet from './metadataTypes/AttributeSet.js';
6
+ import automation from './metadataTypes/Automation.js';
7
+ import campaign from './metadataTypes/Campaign.js';
8
+ import contentArea from './metadataTypes/ContentArea.js';
9
+ import dataExtension from './metadataTypes/DataExtension.js';
10
+ import dataExtensionField from './metadataTypes/DataExtensionField.js';
11
+ import dataExtensionTemplate from './metadataTypes/DataExtensionTemplate.js';
12
+ import dataExtract from './metadataTypes/DataExtract.js';
13
+ import dataExtractType from './metadataTypes/DataExtractType.js';
14
+ import discovery from './metadataTypes/Discovery.js';
15
+ import email from './metadataTypes/Email.js';
16
+ import emailSend from './metadataTypes/EmailSend.js';
17
+ import event from './metadataTypes/Event.js';
18
+ import fileLocation from './metadataTypes/FileLocation.js';
19
+ import fileTransfer from './metadataTypes/FileTransfer.js';
20
+ import filter from './metadataTypes/Filter.js';
21
+ import folder from './metadataTypes/Folder.js';
22
+ import importFile from './metadataTypes/ImportFile.js';
23
+ import journey from './metadataTypes/Journey.js';
24
+ import list from './metadataTypes/List.js';
25
+ import mobileCode from './metadataTypes/MobileCode.js';
26
+ import mobileKeyword from './metadataTypes/MobileKeyword.js';
27
+ import mobileMessage from './metadataTypes/MobileMessage.js';
28
+ import query from './metadataTypes/Query.js';
29
+ import role from './metadataTypes/Role.js';
30
+ import script from './metadataTypes/Script.js';
31
+ import sendClassification from './metadataTypes/SendClassification.js';
32
+ import transactionalEmail from './metadataTypes/TransactionalEmail.js';
33
+ import transactionalPush from './metadataTypes/TransactionalPush.js';
34
+ import transactionalSMS from './metadataTypes/TransactionalSMS.js';
35
+ import triggeredSend from './metadataTypes/TriggeredSend.js';
36
+ import user from './metadataTypes/User.js';
37
+ import verification from './metadataTypes/Verification.js';
38
+
3
39
  /**
4
40
  * Provides access to all metadataType classes
5
41
  */
6
- const MetadataTypeInfo = {
7
- asset: require('./metadataTypes/Asset'),
8
- attributeGroup: require('./metadataTypes/AttributeGroup'),
9
- attributeSet: require('./metadataTypes/AttributeSet'),
10
- automation: require('./metadataTypes/Automation'),
11
- campaign: require('./metadataTypes/Campaign'),
12
- contentArea: require('./metadataTypes/ContentArea'),
13
- dataExtension: require('./metadataTypes/DataExtension'),
14
- dataExtensionField: require('./metadataTypes/DataExtensionField'),
15
- dataExtensionTemplate: require('./metadataTypes/DataExtensionTemplate'),
16
- dataExtract: require('./metadataTypes/DataExtract'),
17
- dataExtractType: require('./metadataTypes/DataExtractType'),
18
- discovery: require('./metadataTypes/Discovery'),
19
- email: require('./metadataTypes/Email'),
20
- emailSend: require('./metadataTypes/EmailSend'),
21
- event: require('./metadataTypes/Event'),
22
- fileLocation: require('./metadataTypes/FileLocation'),
23
- fileTransfer: require('./metadataTypes/FileTransfer'),
24
- filter: require('./metadataTypes/Filter'),
25
- folder: require('./metadataTypes/Folder'),
26
- importFile: require('./metadataTypes/ImportFile'),
27
- journey: require('./metadataTypes/Journey'),
28
- list: require('./metadataTypes/List'),
29
- mobileCode: require('./metadataTypes/MobileCode'),
30
- mobileKeyword: require('./metadataTypes/MobileKeyword'),
31
- mobileMessage: require('./metadataTypes/MobileMessage'),
32
- query: require('./metadataTypes/Query'),
33
- role: require('./metadataTypes/Role'),
34
- script: require('./metadataTypes/Script'),
35
- sendClassification: require('./metadataTypes/SendClassification'),
36
- transactionalEmail: require('./metadataTypes/TransactionalEmail'),
37
- transactionalPush: require('./metadataTypes/TransactionalPush'),
38
- transactionalSMS: require('./metadataTypes/TransactionalSMS'),
39
- triggeredSend: require('./metadataTypes/TriggeredSend'),
40
- user: require('./metadataTypes/User'),
41
- verification: require('./metadataTypes/Verification'),
42
+ export default {
43
+ asset,
44
+ attributeGroup,
45
+ attributeSet,
46
+ automation,
47
+ campaign,
48
+ contentArea,
49
+ dataExtension,
50
+ dataExtensionField,
51
+ dataExtensionTemplate,
52
+ dataExtract,
53
+ dataExtractType,
54
+ discovery,
55
+ email,
56
+ emailSend,
57
+ event,
58
+ fileLocation,
59
+ fileTransfer,
60
+ filter,
61
+ folder,
62
+ importFile,
63
+ journey,
64
+ list,
65
+ mobileCode,
66
+ mobileKeyword,
67
+ mobileMessage,
68
+ query,
69
+ role,
70
+ script,
71
+ sendClassification,
72
+ transactionalEmail,
73
+ transactionalPush,
74
+ transactionalSMS,
75
+ triggeredSend,
76
+ user,
77
+ verification,
42
78
  };
43
-
44
- module.exports = MetadataTypeInfo;
package/lib/Retriever.js CHANGED
@@ -1,12 +1,12 @@
1
1
  'use strict';
2
2
 
3
- const TYPE = require('../types/mcdev.d');
4
- const MetadataTypeInfo = require('./MetadataTypeInfo');
5
- const MetadataDefinitions = require('./MetadataTypeDefinitions');
6
- const Util = require('./util/util');
7
- const File = require('./util/file');
8
- const cache = require('./util/cache');
9
- const auth = require('./util/auth');
3
+ import TYPE from '../types/mcdev.d.js';
4
+ import MetadataTypeInfo from './MetadataTypeInfo.js';
5
+ import MetadataDefinitions from './MetadataTypeDefinitions.js';
6
+ import { Util } from './util/util.js';
7
+ import File from './util/file.js';
8
+ import cache from './util/cache.js';
9
+ import auth from './util/auth.js';
10
10
  /**
11
11
  * Retrieves metadata from a business unit and saves it to the local filesystem.
12
12
  */
@@ -210,4 +210,4 @@ class Retriever {
210
210
  }
211
211
  }
212
212
 
213
- module.exports = Retriever;
213
+ export default Retriever;
package/lib/cli.js CHANGED
@@ -1,15 +1,15 @@
1
1
  #!/usr/bin/env node
2
- 'use strict';
3
2
 
4
3
  /**
5
4
  * CLI entry for SFMC DevTools
6
5
  */
7
6
 
8
- const Util = require('./util/util');
9
- const yargs = require('yargs');
10
- const Mcdev = require('./index');
7
+ import { Util } from './util/util.js';
11
8
 
12
- yargs
9
+ import yargs from 'yargs';
10
+ import { hideBin } from 'yargs/helpers';
11
+ import Mcdev from './index.js';
12
+ yargs(hideBin(process.argv))
13
13
  .scriptName('mcdev')
14
14
  .usage('$0 <command> [options]')
15
15
  .command({
@@ -600,7 +600,7 @@ yargs
600
600
  .demandCommand(1, 'Please enter a valid command')
601
601
  .strict()
602
602
  .recommendCommands()
603
- .wrap(yargs.terminalWidth())
603
+ .wrap(yargs(hideBin(process.argv)).terminalWidth())
604
604
  .epilog(
605
605
  'Copyright 2023. Accenture. Get support at https://github.com/Accenture/sfmc-devtools/issues'
606
606
  )
package/lib/index.js CHANGED
@@ -1,26 +1,33 @@
1
1
  'use strict';
2
2
 
3
- const TYPE = require('../types/mcdev.d');
4
- const Util = require('./util/util');
5
- const auth = require('./util/auth');
6
- const File = require('./util/file');
7
- const config = require('./util/config');
8
- const Init = require('./util/init');
9
- const InitGit = require('./util/init.git');
10
- const Cli = require('./util/cli');
11
- const DevOps = require('./util/devops');
12
- const BuHelper = require('./util/businessUnit');
13
- const Builder = require('./Builder');
14
- const Deployer = require('./Deployer');
15
- const MetadataTypeInfo = require('./MetadataTypeInfo');
16
- const MetadataTypeDefinitions = require('./MetadataTypeDefinitions');
17
- const Retriever = require('./Retriever');
18
- const cache = require('./util/cache');
3
+ import TYPE from '../types/mcdev.d.js';
4
+ import { Util } from './util/util.js';
5
+ import auth from './util/auth.js';
6
+ import File from './util/file.js';
7
+ import config from './util/config.js';
8
+ import Init from './util/init.js';
9
+ import InitGit from './util/init.git.js';
10
+ import Cli from './util/cli.js';
11
+ import DevOps from './util/devops.js';
12
+ import BuHelper from './util/businessUnit.js';
13
+ import Builder from './Builder.js';
14
+ import Deployer from './Deployer.js';
15
+ import MetadataTypeInfo from './MetadataTypeInfo.js';
16
+ import MetadataTypeDefinitions from './MetadataTypeDefinitions.js';
17
+ import Retriever from './Retriever.js';
18
+ import cache from './util/cache.js';
19
19
 
20
20
  /**
21
21
  * main class
22
22
  */
23
23
  class Mcdev {
24
+ /**
25
+ * @returns {string} current version of mcdev
26
+ */
27
+ static version() {
28
+ console.log('mcdev v' + Util.packageJsonMcdev.version); // eslint-disable-line no-console
29
+ return Util.packageJsonMcdev.version;
30
+ }
24
31
  /**
25
32
  * helper method to use unattended mode when including mcdev as a package
26
33
  *
@@ -1158,4 +1165,4 @@ class Mcdev {
1158
1165
  }
1159
1166
  }
1160
1167
 
1161
- module.exports = Mcdev;
1168
+ export default Mcdev;
@@ -1,12 +1,13 @@
1
1
  'use strict';
2
2
 
3
- const MetadataType = require('./MetadataType');
4
- const TYPE = require('../../types/mcdev.d');
5
- const Util = require('../util/util');
6
- const File = require('../util/file');
7
- const pLimit = require('p-limit');
8
- const cliProgress = require('cli-progress');
9
- const cache = require('../util/cache');
3
+ import MetadataType from './MetadataType.js';
4
+ import TYPE from '../../types/mcdev.d.js';
5
+ import { Util } from '../util/util.js';
6
+ import File from '../util/file.js';
7
+ import pLimit from 'p-limit';
8
+ import cliProgress from 'cli-progress';
9
+ import cache from '../util/cache.js';
10
+ import TriggeredSend from './TriggeredSend.js';
10
11
 
11
12
  /**
12
13
  * FileTransfer MetadataType
@@ -539,7 +540,6 @@ class Asset extends MetadataType {
539
540
  return;
540
541
  }
541
542
  // prep triggeredSendDefinition class
542
- const TriggeredSend = require('./TriggeredSend');
543
543
  TriggeredSend.properties = this.properties;
544
544
  TriggeredSend.buObject = this.buObject;
545
545
  TriggeredSend.client = this.client;
@@ -1632,6 +1632,8 @@ class Asset extends MetadataType {
1632
1632
  }
1633
1633
 
1634
1634
  // Assign definition to static attributes
1635
- Asset.definition = require('../MetadataTypeDefinitions').asset;
1635
+ import MetadataTypeDefinitions from '../MetadataTypeDefinitions.js';
1636
1636
 
1637
- module.exports = Asset;
1637
+ Asset.definition = MetadataTypeDefinitions.asset;
1638
+
1639
+ export default Asset;
@@ -1,9 +1,9 @@
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');
3
+ import MetadataType from './MetadataType.js';
4
+ import TYPE from '../../types/mcdev.d.js';
5
+ import { Util } from '../util/util.js';
6
+ import cache from '../util/cache.js';
7
7
 
8
8
  /**
9
9
  * AttributeGroup MetadataType
@@ -111,6 +111,7 @@ class AttributeGroup extends MetadataType {
111
111
  }
112
112
 
113
113
  // Assign definition to static attributes
114
- AttributeGroup.definition = require('../MetadataTypeDefinitions').attributeGroup;
114
+ import MetadataTypeDefinitions from '../MetadataTypeDefinitions.js';
115
+ AttributeGroup.definition = MetadataTypeDefinitions.attributeGroup;
115
116
 
116
- module.exports = AttributeGroup;
117
+ export default AttributeGroup;
@@ -1,10 +1,10 @@
1
1
  'use strict';
2
2
 
3
- const TYPE = require('../../types/mcdev.d');
4
- const MetadataType = require('./MetadataType');
5
- const AttributeGroup = require('./AttributeGroup');
6
- const Util = require('../util/util');
7
- const cache = require('../util/cache');
3
+ import AttributeGroup from './AttributeGroup.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';
8
8
 
9
9
  /**
10
10
  * AttributeSet MetadataType
@@ -362,6 +362,7 @@ class AttributeSet extends MetadataType {
362
362
  }
363
363
 
364
364
  // Assign definition to static attributes
365
- AttributeSet.definition = require('../MetadataTypeDefinitions').attributeSet;
365
+ import MetadataTypeDefinitions from '../MetadataTypeDefinitions.js';
366
+ AttributeSet.definition = MetadataTypeDefinitions.attributeSet;
366
367
 
367
- module.exports = AttributeSet;
368
+ export default AttributeSet;
@@ -1,12 +1,12 @@
1
1
  'use strict';
2
2
 
3
- const MetadataType = require('./MetadataType');
4
- const TYPE = require('../../types/mcdev.d');
5
- const Util = require('../util/util');
6
- const File = require('../util/file');
7
- const Definitions = require('../MetadataTypeDefinitions');
8
- const cache = require('../util/cache');
9
- const pLimit = require('p-limit');
3
+ import MetadataType from './MetadataType.js';
4
+ import TYPE from '../../types/mcdev.d.js';
5
+ import { Util } from '../util/util.js';
6
+ import File from '../util/file.js';
7
+ import Definitions from '../MetadataTypeDefinitions.js';
8
+ import cache from '../util/cache.js';
9
+ import pLimit from 'p-limit';
10
10
 
11
11
  /**
12
12
  * Automation MetadataType
@@ -1612,4 +1612,4 @@ class Automation extends MetadataType {
1612
1612
  // Assign definition to static attributes
1613
1613
  Automation.definition = Definitions.automation;
1614
1614
 
1615
- module.exports = Automation;
1615
+ export default Automation;
@@ -1,9 +1,9 @@
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');
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
7
 
8
8
  /**
9
9
  * Campaign MetadataType
@@ -71,6 +71,7 @@ class Campaign extends MetadataType {
71
71
  }
72
72
  }
73
73
  // Assign definition to static attributes
74
- Campaign.definition = require('../MetadataTypeDefinitions').campaign;
74
+ import MetadataTypeDefinitions from '../MetadataTypeDefinitions.js';
75
+ Campaign.definition = MetadataTypeDefinitions.campaign;
75
76
 
76
- module.exports = Campaign;
77
+ export default Campaign;
@@ -1,9 +1,9 @@
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');
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
7
 
8
8
  /**
9
9
  * ContentArea MetadataType
@@ -99,6 +99,7 @@ class ContentArea extends MetadataType {
99
99
  }
100
100
 
101
101
  // Assign definition to static attributes
102
- ContentArea.definition = require('../MetadataTypeDefinitions').contentArea;
102
+ import MetadataTypeDefinitions from '../MetadataTypeDefinitions.js';
103
+ ContentArea.definition = MetadataTypeDefinitions.contentArea;
103
104
 
104
- module.exports = ContentArea;
105
+ export default ContentArea;
@@ -1,17 +1,17 @@
1
1
  'use strict';
2
2
 
3
- const jsonToTable = require('json-to-table');
4
- const TYPE = require('../../types/mcdev.d');
5
- const MetadataType = require('./MetadataType');
6
- const DataExtensionField = require('./DataExtensionField');
7
- const Folder = require('./Folder');
8
- const AttributeSet = require('./AttributeSet');
9
- const Util = require('../util/util');
10
- const File = require('../util/file');
11
- const auth = require('../util/auth');
12
- const cache = require('../util/cache');
13
- const pLimit = require('p-limit');
14
- const inquirer = require('inquirer');
3
+ import jsonToTable from 'json-to-table';
4
+ import TYPE from '../../types/mcdev.d.js';
5
+ import MetadataType from './MetadataType.js';
6
+ import AttributeSet from './AttributeSet.js';
7
+ import DataExtensionField from './DataExtensionField.js';
8
+ import Folder from './Folder.js';
9
+ import { Util } from '../util/util.js';
10
+ import File from '../util/file.js';
11
+ import auth from '../util/auth.js';
12
+ import cache from '../util/cache.js';
13
+ import pLimit from 'p-limit';
14
+ import inquirer from 'inquirer';
15
15
 
16
16
  /**
17
17
  * DataExtension MetadataType
@@ -822,8 +822,7 @@ class DataExtension extends MetadataType {
822
822
  cache.mergeMetadata('folder', result.metadata, this.buObject.eid);
823
823
 
824
824
  // get the types and clean out non-shared ones
825
- const folderTypesFromParent = require('../MetadataTypeDefinitions').folder
826
- .folderTypesFromParent;
825
+ const folderTypesFromParent = MetadataTypeDefinitions.folder.folderTypesFromParent;
827
826
  for (const metadataEntry in metadataParentBu) {
828
827
  try {
829
828
  // get the data extension type from the folder
@@ -1510,6 +1509,7 @@ class DataExtension extends MetadataType {
1510
1509
  }
1511
1510
 
1512
1511
  // Assign definition to static attributes
1513
- DataExtension.definition = require('../MetadataTypeDefinitions').dataExtension;
1512
+ import MetadataTypeDefinitions from '../MetadataTypeDefinitions.js';
1513
+ DataExtension.definition = MetadataTypeDefinitions.dataExtension;
1514
1514
 
1515
- module.exports = DataExtension;
1515
+ export default DataExtension;
@@ -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
  * DataExtensionField MetadataType
@@ -350,6 +350,7 @@ class DataExtensionField extends MetadataType {
350
350
  }
351
351
 
352
352
  // Assign definition to static attributes
353
- DataExtensionField.definition = require('../MetadataTypeDefinitions').dataExtensionField;
353
+ import MetadataTypeDefinitions from '../MetadataTypeDefinitions.js';
354
+ DataExtensionField.definition = MetadataTypeDefinitions.dataExtensionField;
354
355
 
355
- module.exports = DataExtensionField;
356
+ export default DataExtensionField;
@@ -1,7 +1,7 @@
1
1
  'use strict';
2
2
 
3
- const TYPE = require('../../types/mcdev.d');
4
- const MetadataType = require('./MetadataType');
3
+ import TYPE from '../../types/mcdev.d.js';
4
+ import MetadataType from './MetadataType.js';
5
5
 
6
6
  /**
7
7
  * DataExtensionTemplate MetadataType
@@ -35,6 +35,7 @@ class DataExtensionTemplate extends MetadataType {
35
35
  }
36
36
 
37
37
  // Assign definition to static attributes
38
- DataExtensionTemplate.definition = require('../MetadataTypeDefinitions').dataExtensionTemplate;
38
+ import MetadataTypeDefinitions from '../MetadataTypeDefinitions.js';
39
+ DataExtensionTemplate.definition = MetadataTypeDefinitions.dataExtensionTemplate;
39
40
 
40
- module.exports = DataExtensionTemplate;
41
+ export default DataExtensionTemplate;