mcdev 7.6.3 → 7.7.1

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 (147) hide show
  1. package/.github/ISSUE_TEMPLATE/bug.yml +2 -0
  2. package/.github/ISSUE_TEMPLATE/task.md +1 -1
  3. package/.github/workflows/coverage-base-update.yml +2 -2
  4. package/.github/workflows/coverage-develop-branch.yml +3 -1
  5. package/.github/workflows/coverage-main-branch.yml +3 -1
  6. package/.github/workflows/coverage.yml +5 -3
  7. package/.mcdev-validations.js +0 -0
  8. package/@types/lib/Builder.d.ts +14 -0
  9. package/@types/lib/Builder.d.ts.map +1 -1
  10. package/@types/lib/MetadataTypeDefinitions.d.ts +2 -0
  11. package/@types/lib/MetadataTypeDefinitions.d.ts.map +1 -1
  12. package/@types/lib/MetadataTypeInfo.d.ts +2 -0
  13. package/@types/lib/MetadataTypeInfo.d.ts.map +1 -1
  14. package/@types/lib/index.d.ts +17 -8
  15. package/@types/lib/index.d.ts.map +1 -1
  16. package/@types/lib/metadataTypes/Asset.d.ts +11 -3
  17. package/@types/lib/metadataTypes/Asset.d.ts.map +1 -1
  18. package/@types/lib/metadataTypes/DataExtension.d.ts.map +1 -1
  19. package/@types/lib/metadataTypes/DomainVerification.d.ts +180 -0
  20. package/@types/lib/metadataTypes/DomainVerification.d.ts.map +1 -0
  21. package/@types/lib/metadataTypes/Event.d.ts.map +1 -1
  22. package/@types/lib/metadataTypes/Journey.d.ts +7 -4
  23. package/@types/lib/metadataTypes/Journey.d.ts.map +1 -1
  24. package/@types/lib/metadataTypes/MetadataType.d.ts +15 -7
  25. package/@types/lib/metadataTypes/MetadataType.d.ts.map +1 -1
  26. package/@types/lib/metadataTypes/MobileKeyword.d.ts +2 -10
  27. package/@types/lib/metadataTypes/MobileKeyword.d.ts.map +1 -1
  28. package/@types/lib/metadataTypes/MobileMessage.d.ts +2 -10
  29. package/@types/lib/metadataTypes/MobileMessage.d.ts.map +1 -1
  30. package/@types/lib/metadataTypes/SendClassification.d.ts.map +1 -1
  31. package/@types/lib/metadataTypes/SenderProfile.d.ts +7 -0
  32. package/@types/lib/metadataTypes/SenderProfile.d.ts.map +1 -1
  33. package/@types/lib/metadataTypes/TransactionalEmail.d.ts +2 -2
  34. package/@types/lib/metadataTypes/TransactionalEmail.d.ts.map +1 -1
  35. package/@types/lib/metadataTypes/TriggeredSend.d.ts +8 -0
  36. package/@types/lib/metadataTypes/TriggeredSend.d.ts.map +1 -1
  37. package/@types/lib/metadataTypes/Verification.d.ts +0 -9
  38. package/@types/lib/metadataTypes/Verification.d.ts.map +1 -1
  39. package/@types/lib/metadataTypes/definitions/DomainVerification.definition.d.ts +100 -0
  40. package/@types/lib/metadataTypes/definitions/DomainVerification.definition.d.ts.map +1 -0
  41. package/@types/lib/metadataTypes/definitions/Journey.definition.d.ts +1 -1
  42. package/@types/lib/util/devops.d.ts.map +1 -1
  43. package/@types/lib/util/replaceContentBlockReference.d.ts +2 -1
  44. package/@types/lib/util/replaceContentBlockReference.d.ts.map +1 -1
  45. package/@types/lib/util/util.d.ts +42 -1
  46. package/@types/lib/util/util.d.ts.map +1 -1
  47. package/@types/lib/util/validations.d.ts.map +1 -1
  48. package/@types/types/mcdev.d.d.ts +34 -0
  49. package/@types/types/mcdev.d.d.ts.map +1 -1
  50. package/boilerplate/config.json +11 -0
  51. package/boilerplate/files/eslint.config.js +98 -3
  52. package/boilerplate/forcedUpdates.json +4 -0
  53. package/boilerplate/gitignore-template +1 -1
  54. package/boilerplate/npm-dependencies.json +1 -0
  55. package/eslint.config.js +4 -3
  56. package/lib/Builder.js +114 -54
  57. package/lib/Deployer.js +2 -2
  58. package/lib/MetadataTypeDefinitions.js +2 -0
  59. package/lib/MetadataTypeInfo.js +2 -0
  60. package/lib/cli.js +127 -3
  61. package/lib/index.js +217 -164
  62. package/lib/metadataTypes/Asset.js +76 -22
  63. package/lib/metadataTypes/DataExtension.js +10 -2
  64. package/lib/metadataTypes/DomainVerification.js +246 -0
  65. package/lib/metadataTypes/Event.js +21 -9
  66. package/lib/metadataTypes/Journey.js +339 -223
  67. package/lib/metadataTypes/MetadataType.js +153 -106
  68. package/lib/metadataTypes/MobileKeyword.js +5 -2
  69. package/lib/metadataTypes/MobileMessage.js +5 -2
  70. package/lib/metadataTypes/SendClassification.js +5 -0
  71. package/lib/metadataTypes/SenderProfile.js +102 -3
  72. package/lib/metadataTypes/TransactionalEmail.js +3 -1
  73. package/lib/metadataTypes/Verification.js +3 -1
  74. package/lib/metadataTypes/definitions/DomainVerification.definition.js +71 -0
  75. package/lib/metadataTypes/definitions/Journey.definition.js +7 -1
  76. package/lib/metadataTypes/definitions/SendClassification.definition.js +2 -2
  77. package/lib/metadataTypes/definitions/SenderProfile.definition.js +1 -1
  78. package/lib/util/config.js +6 -0
  79. package/lib/util/devops.js +130 -154
  80. package/lib/util/file.js +3 -3
  81. package/lib/util/replaceContentBlockReference.js +10 -3
  82. package/lib/util/util.js +96 -14
  83. package/lib/util/validations.js +34 -14
  84. package/package.json +10 -10
  85. package/test/general.test.js +339 -96
  86. package/test/mockRoot/.mcdev-validations.js +66 -0
  87. package/test/mockRoot/.mcdevrc.json +30 -2
  88. package/test/mockRoot/deploy/testInstance/testBU/asset/block/testNew_asset_htmlblock.asset-block-meta.html +1 -0
  89. package/test/mockRoot/deploy/testInstance/testBU/asset/block/testNew_asset_htmlblock.asset-block-meta.json +39 -0
  90. package/test/mockRoot/deploy/testInstance/testBU/asset/block/testNew_asset_withCBBK_notexisting.asset-block-meta.html +4 -0
  91. package/test/mockRoot/deploy/testInstance/testBU/asset/block/testNew_asset_withCBBK_notexisting.asset-block-meta.json +39 -0
  92. package/test/mockRoot/deploy/testInstance/testBU/asset/block/testNew_asset_withCBBK_preexisting.asset-block-meta.html +4 -0
  93. package/test/mockRoot/deploy/testInstance/testBU/asset/block/testNew_asset_withCBBK_preexisting.asset-block-meta.json +39 -0
  94. package/test/mockRoot/deploy/testInstance/testBU/asset/message/testNew_assetMessage/testNew_assetMessage.asset-message-meta.json +435 -0
  95. package/test/mockRoot/deploy/testInstance/testBU/asset/message/testNew_assetMessage/views.html.content.asset-message-meta.html +150 -0
  96. package/test/mockRoot/deploy/testInstance/testBU/asset/message/testNew_asset_templatebasedemail/testNew_asset_templatebasedemail.asset-message-meta.json +305 -0
  97. package/test/mockRoot/deploy/testInstance/testBU/asset/message/testNew_asset_templatebasedemail/views.html.content.asset-message-meta.html +150 -0
  98. package/test/mockRoot/deploy/testInstance/testBU/asset/template/testNew_asset_template/content.asset-template-meta.html +150 -0
  99. package/test/mockRoot/deploy/testInstance/testBU/asset/template/testNew_asset_template/testNew_asset_template.asset-template-meta.json +116 -0
  100. package/test/mockRoot/deploy/testInstance/testBU/domainVerification/joern.berkefeld.New@accenture.com.domainVerification-meta.json +6 -0
  101. package/test/mockRoot/deploy/testInstance/testBU/domainVerification/joern.berkefeld@accenture.com.domainVerification-meta.json +6 -0
  102. package/test/mockRoot/deploy/testInstance/testBU/domainVerification/mcdev.accenture.com.domainVerification-meta.json +6 -0
  103. package/test/mockRoot/deploy/testInstance/testBU/journey/testNew_temail_notPublished.journey-meta.json +213 -0
  104. package/test/mockRoot/deploy/testInstance/testBU/senderProfile/testExisting_senderProfile.senderProfile-meta.json +1 -0
  105. package/test/mockRoot/deploy/testInstance/testBU/senderProfile/testNew_senderProfile.senderProfile-meta.json +1 -0
  106. package/test/resourceFactory.js +7 -24
  107. package/test/resources/9999999/asset/v1/content/assets/post-response-key=testNew_assetMessage.json +441 -0
  108. package/test/resources/9999999/asset/v1/content/assets/post-response-key=testNew_asset_htmlblock.json +59 -0
  109. package/test/resources/9999999/asset/v1/content/assets/post-response-key=testNew_asset_template.json +147 -0
  110. package/test/resources/9999999/asset/v1/content/assets/post-response-key=testNew_asset_templatebasedemail.json +322 -0
  111. package/test/resources/9999999/asset/v1/content/assets/post-response-key=testNew_asset_withCBBK_notexisting.json +59 -0
  112. package/test/resources/9999999/asset/v1/content/assets/post-response-key=testNew_asset_withCBBK_preexisting.json +59 -0
  113. package/test/resources/9999999/asset-deploy2/block/testBlacklist_asset_htmlblock.asset-block-meta.html +1 -0
  114. package/test/resources/9999999/asset-deploy2/block/testBlacklist_asset_htmlblock.asset-block-meta.json +39 -0
  115. package/test/resources/9999999/automation/clone-expected.json +61 -0
  116. package/test/resources/9999999/dataExtension/retrieve-CustomerKey=testExisting_dataExtension-response.xml +52 -0
  117. package/test/resources/9999999/dataExtension-deploy/testBlacklist_dataExtension.dataExtension-meta.json +20 -0
  118. package/test/resources/9999999/dataFolder/retrieve-ContentTypeINasset,asset-shared,dataextension,hidden,salesforcedataextension,shared_data,shared_dataextension,shared_salesforcedataextension,synchronizeddataextension-response.xml +137 -0
  119. package/test/resources/9999999/domainVerification/create-expected.json +3 -0
  120. package/test/resources/9999999/domainVerification/get-sap-expected.json +6 -0
  121. package/test/resources/9999999/domainVerification/update-expected.json +6 -0
  122. package/test/resources/9999999/interaction/v1/interactions/key_testExisting_temail/put-response-paused.json +219 -0
  123. package/test/resources/9999999/interaction/v1/interactions/key_testNew_temail_notPublished/get-response.json +218 -0
  124. package/test/resources/9999999/interaction/v1/interactions/post-response.json +216 -0
  125. package/test/resources/9999999/journey/create-transactionaEmail-publish-expected.json +217 -0
  126. package/test/resources/9999999/messaging/v1/domainverification/delete/post-response.txt +1 -0
  127. package/test/resources/9999999/messaging/v1/domainverification/get-response.json +43 -0
  128. package/test/resources/9999999/messaging/v1/domainverification/post-response.txt +1 -0
  129. package/test/resources/9999999/messaging/v1/domainverification/update/post-response.txt +1 -0
  130. package/test/resources/9999999/messaging/v1/email/definitions/get-response.json +7 -0
  131. package/test/resources/9999999/messaging/v1/email/definitions/testNew_temail_notPublished/get-response.json +26 -0
  132. package/test/resources/9999999/query/clone-expected.json +8 -0
  133. package/test/resources/9999999/query/clone-expected.sql +7 -0
  134. package/test/resources/9999999/senderProfile/create-response.xml +1 -1
  135. package/test/resources/9999999/senderProfile/post-expected.json +1 -1
  136. package/test/resources/9999999/transactionalEmail/create-publish-expected.json +20 -0
  137. package/test/type.asset.test.js +216 -9
  138. package/test/type.automation.test.js +1 -1
  139. package/test/type.domainVerification.test.js +169 -0
  140. package/test/type.journey.test.js +107 -21
  141. package/test/type.script.test.js +1 -1
  142. package/test/type.sendClassification.test.js +3 -3
  143. package/test/type.senderProfile.test.js +26 -6
  144. package/test/type.transactionalEmail.test.js +5 -5
  145. package/test/type.triggeredSend.test.js +1 -1
  146. package/test/utils.js +8 -0
  147. package/types/mcdev.d.js +12 -0
@@ -0,0 +1,150 @@
1
+ <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
2
+ <html>
3
+ <head>
4
+ <meta name="viewport" content="width=device-width, initial-scale=1" />
5
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
6
+ <style type="text/css">
7
+ ReadMsgBody{ width: 100%;}
8
+ .ExternalClass {width: 100%;}
9
+ .ExternalClass, .ExternalClass p, .ExternalClass span, .ExternalClass font, .ExternalClass td, .ExternalClass div {line-height: 100%;}
10
+ body {-webkit-text-size-adjust:100%; -ms-text-size-adjust:100%;margin:0 !important;}
11
+ p { margin: 1em 0;}
12
+ table td { border-collapse: collapse;}
13
+ img {outline:0;}
14
+ a img {border:none;}
15
+ @-ms-viewport{ width: device-width;}
16
+ </style>
17
+ <style type="text/css">
18
+ @media only screen and (max-width: 480px) {
19
+ .container {width: 100% !important;}
20
+ .footer { width:auto !important; margin-left:0; }
21
+ .mobile-hidden { display:none !important; }
22
+ .logo { display:block !important; padding:0 !important; }
23
+ img { max-width:100% !important; height:auto !important; max-height:auto !important;}
24
+ .header img{max-width:100% !important;height:auto !important; max-height:auto !important;}
25
+ .photo img { width:100% !important; max-width:100% !important; height:auto !important;}
26
+ .drop { display:block !important; width: 100% !important; float:left; clear:both;}
27
+ .footerlogo { display:block !important; width: 100% !important; padding-top:15px; float:left; clear:both;}
28
+ .nav4, .nav5, .nav6 { display: none !important; }
29
+ .tableBlock {width:100% !important;}
30
+ .responsive-td {width:100% !important; display:block !important; padding:0 !important; }
31
+ .fluid, .fluid-centered {
32
+ width: 100% !important;
33
+ max-width: 100% !important;
34
+ height: auto !important;
35
+ margin-left: auto !important;
36
+ margin-right: auto !important;
37
+ }
38
+ .fluid-centered {
39
+ margin-left: auto !important;
40
+ margin-right: auto !important;
41
+ }
42
+ /* MOBILE GLOBAL STYLES - DO NOT CHANGE */
43
+ body { padding: 0px !important; font-size: 16px !important; line-height: 150% !important;}
44
+ h1 { font-size: 22px !important; line-height: normal !important;}
45
+ h2 { font-size: 20px !important; line-height: normal !important;}
46
+ h3 { font-size: 18px !important; line-height: normal !important;}
47
+ .buttonstyles {
48
+ font-family:arial,helvetica,sans-serif !important;
49
+ font-size: 16px !important;
50
+ color: #FFFFFF !important;
51
+ padding: 10px !important;
52
+ }
53
+ /* END OF MOBILE GLOBAL STYLES - DO NOT CHANGE */
54
+ }
55
+ @media only screen and (max-width: 640px) {
56
+ .container { width:100% !important; }
57
+ .mobile-hidden { display:none !important; }
58
+ .logo { display:block !important; padding:0 !important; }
59
+ .photo img { width:100% !important; height:auto !important;}
60
+ .nav5, .nav6 { display: none !important;}
61
+ .fluid, .fluid-centered {
62
+ width: 100% !important;
63
+ max-width: 100% !important;
64
+ height: auto !important;
65
+ margin-left: auto !important;
66
+ margin-right: auto !important;
67
+ }
68
+ .fluid-centered {
69
+ margin-left: auto !important;
70
+ margin-right: auto !important;
71
+ }
72
+ }
73
+ </style>
74
+ <!--[if mso]>
75
+ <style type="text/css">
76
+ /* Begin Outlook Font Fix */
77
+ body, table, td {
78
+ font-family: Arial, Helvetica, sans-serif ;
79
+ font-size:16px;
80
+ color:#000000;
81
+ line-height:1;
82
+ }
83
+ /* End Outlook Font Fix */
84
+ </style>
85
+ <![endif]-->
86
+ </head>
87
+ <body bgcolor="#ffffff" text="#000000" style="background-color: #ffffff; color: #000000; padding: 0px; -webkit-text-size-adjust:none; font-size: 16px; font-family:arial,helvetica,sans-serif;">
88
+ <div style="font-size:0; line-height:0;"><custom name="opencounter" type="tracking"><custom name="usermatch" type="tracking" /></div>
89
+ <table width="100%" border="0" cellpadding="0" cellspacing="0" align="center">
90
+ <tr>
91
+ <td align="center" valign="top">
92
+ <custom type="header"/>
93
+ </td>
94
+ </tr>
95
+ <tr>
96
+ <td align="center">
97
+ <table cellspacing="0" cellpadding="0" border="0" width="600" class="container" align="center">
98
+ <tr>
99
+ <td>
100
+ <table class="tb_properties border_style" style="background-color:#FFFFFF;" cellspacing="0" cellpadding="0" bgcolor="#ffffff" width="100%">
101
+ <tr>
102
+ <td align="center" valign="top">
103
+ <table align="left" border="0" cellpadding="0" cellspacing="0" width="100%">
104
+ <tr>
105
+ <!-- added padding here -->
106
+ <td class="content_padding" style="">
107
+ <!-- end of comment -->
108
+ <table border="0" cellpadding="0" cellspacing="0" width="100%">
109
+ <tr> <!-- top slot -->
110
+ <td align="center" class="header" valign="top">
111
+ <table align="left" border="0" cellpadding="0" cellspacing="0" width="100%">
112
+ <tbody>
113
+ <tr>
114
+ <td align="left" valign="top">
115
+ <table cellspacing="0" cellpadding="0" style="width:100%">
116
+ <tbody>
117
+ <tr>
118
+ <td class="responsive-td" valign="top" style="width: 100%;">
119
+ <div data-type="slot" data-key="banner">
120
+ </div>
121
+ </td>
122
+ </tr>
123
+ </tbody>
124
+ </table>
125
+ </td>
126
+ </tr>
127
+ </tbody>
128
+ </table>
129
+ </td>
130
+ </tr>
131
+ </table>
132
+ </td>
133
+ </tr>
134
+ </table>
135
+ </td>
136
+ </tr>
137
+ </table>
138
+ </td>
139
+ </tr>
140
+ </table>
141
+ </td>
142
+ </tr>
143
+ <tr>
144
+ <td valign="top">
145
+ <custom type="footer" />
146
+ </td>
147
+ </tr>
148
+ </table>
149
+ </body>
150
+ </html>
@@ -0,0 +1,116 @@
1
+ {
2
+ "customerKey": "testNew_asset_template",
3
+ "assetType": {
4
+ "name": "template",
5
+ "displayName": "Template"
6
+ },
7
+ "fileProperties": {
8
+ "fileName": "testNew_asset_template"
9
+ },
10
+ "name": "testNew_asset_template",
11
+ "createdBy": {},
12
+ "modifiedBy": {},
13
+ "memberId": "9999999",
14
+ "status": {
15
+ "name": "Draft"
16
+ },
17
+ "meta": {
18
+ "globalStyles": {
19
+ "isLocked": false,
20
+ "template": {
21
+ "background-color": "#FFFFFF",
22
+ "border-color": "",
23
+ "border-width": "0px",
24
+ "border-style": "solid"
25
+ },
26
+ "body": {
27
+ "background-color": "#FFFFFF",
28
+ "font-family": "Arial,helvetica,sans-serif",
29
+ "font-size": "16px",
30
+ "color": "#000000",
31
+ "line-height": 1,
32
+ "margin": "0px",
33
+ "padding": "0px",
34
+ "content-padding-top": "0px",
35
+ "content-padding-right": "0px",
36
+ "content-padding-bottom": "0px",
37
+ "content-padding-left": "0px"
38
+ },
39
+ "h1": {
40
+ "font-family": "Arial,helvetica,sans-serif",
41
+ "font-size": "28px",
42
+ "color": "#181818",
43
+ "line-height": 1,
44
+ "font-weight": "bold",
45
+ "font-style": "normal"
46
+ },
47
+ "h2": {
48
+ "font-family": "Arial,helvetica,sans-serif",
49
+ "font-size": "22px",
50
+ "color": "#181818",
51
+ "line-height": 1,
52
+ "font-weight": "bold",
53
+ "font-style": "normal"
54
+ },
55
+ "h3": {
56
+ "font-family": "Arial,helvetica,sans-serif",
57
+ "font-size": "20px",
58
+ "color": "#181818",
59
+ "line-height": 1,
60
+ "font-weight": "bold",
61
+ "font-style": "normal"
62
+ },
63
+ "links": {
64
+ "font-weight": "normal",
65
+ "color": "#0176d3",
66
+ "text-decoration": "none"
67
+ },
68
+ "buttons": {
69
+ "font-family": "Arial,helvetica,sans-serif",
70
+ "font-size": "16px",
71
+ "color": "#FFFFFF",
72
+ "background-color": "#5D5D5D",
73
+ "border-radius": "3px",
74
+ "padding": "10px",
75
+ "border-color": "#5D5D5D",
76
+ "border-width": "1px",
77
+ "border-style": "solid"
78
+ },
79
+ "mobile": {
80
+ "body": {
81
+ "padding": "0px",
82
+ "font-size": "16px",
83
+ "line-height": 1.5
84
+ },
85
+ "h1": {
86
+ "font-size": "22px",
87
+ "line-height": 1
88
+ },
89
+ "h2": {
90
+ "font-size": "20px",
91
+ "line-height": 1
92
+ },
93
+ "h3": {
94
+ "font-size": "18px",
95
+ "line-height": 1
96
+ },
97
+ "buttons": {
98
+ "font-family": "Arial,helvetica,sans-serif",
99
+ "font-size": "16px",
100
+ "color": "#FFFFFF",
101
+ "padding": "10px"
102
+ }
103
+ }
104
+ }
105
+ },
106
+ "availableViews": [],
107
+ "slots": {
108
+ "banner": {
109
+ "thumbnail": {},
110
+ "design": "<p style=\"font-family:Arial;color:#ccc;font-size:12px;text-align:center;vertical-align:middle;font-weight:bold;height:150px;display:flex;flex-direction:column;justify-content:center;padding:10px;margin:0;border: #cccccc dashed 1px;\">Drop blocks or content here</p>",
111
+ "modelVersion": 2
112
+ }
113
+ },
114
+ "modelVersion": 2,
115
+ "r__folder_Path": "Content Builder"
116
+ }
@@ -0,0 +1,6 @@
1
+ {
2
+ "domain": "joern.berkefeld.New@accenture.com",
3
+ "status": "Verified",
4
+ "domainType": "UserDomain",
5
+ "isSendable": true
6
+ }
@@ -0,0 +1,6 @@
1
+ {
2
+ "domain": "joern.berkefeld@accenture.com",
3
+ "status": "Verified",
4
+ "domainType": "UserDomain",
5
+ "isSendable": true
6
+ }
@@ -0,0 +1,6 @@
1
+ {
2
+ "domain": "mcdev.accenture.com",
3
+ "status": "Verified",
4
+ "domainType": "SAP",
5
+ "isSendable": true
6
+ }
@@ -0,0 +1,213 @@
1
+ {
2
+ "key": "testNew_temail_notPublished",
3
+ "name": "testNew_temail_notPublished",
4
+ "description": "",
5
+ "workflowApiVersion": 1,
6
+ "modifiedDate": "2024-12-06T19:36:30.563",
7
+ "activities": [
8
+ {
9
+ "id": "848d91be-faa5-4307-94d7-22c9a5bcfb1d",
10
+ "key": "EMAILV2-1",
11
+ "name": "testNew_temail_notPublished_24Q3",
12
+ "description": "",
13
+ "type": "EMAILV2",
14
+ "outcomes": [
15
+ {
16
+ "key": "920e8b4c-1598-48d0-b2c4-8a5072e0b738",
17
+ "arguments": {},
18
+ "metaData": {
19
+ "invalid": false
20
+ }
21
+ }
22
+ ],
23
+ "arguments": {},
24
+ "configurationArguments": {
25
+ "applicationExtensionKey": "jb-email-activity",
26
+ "isModified": true,
27
+ "triggeredSend": {
28
+ "autoAddSubscribers": true,
29
+ "autoUpdateSubscribers": true,
30
+ "bccEmail": [],
31
+ "c__priority": "Medium",
32
+ "ccEmail": [],
33
+ "created": {},
34
+ "domainExclusions": [],
35
+ "dynamicEmailSubject": "%%=treatascontent(@subject)=%%",
36
+ "emailSubject": "%%=treatascontent(@subject)=%%",
37
+ "exclusionFilter": "",
38
+ "isMultipart": true,
39
+ "isSalesforceTracking": true,
40
+ "isSendLogging": false,
41
+ "isStoppedOnJobError": false,
42
+ "isTrackingClicks": true,
43
+ "modified": {},
44
+ "preHeader": "%%=treatascontent(@preheader)=%%\n",
45
+ "r__asset_key": "testExisting_asset_message",
46
+ "r__deliveryProfile_key": "Default",
47
+ "r__list_PathName": {
48
+ "publicationList": "my subscribers/All Subscribers"
49
+ },
50
+ "r__sendClassification_key": "testExisting_sendClassification",
51
+ "r__senderProfile_key": "testExisting_senderProfile",
52
+ "throttleCloses": "1/1/0001 12:00:00 AM",
53
+ "throttleLimit": 0,
54
+ "throttleOpens": "1/1/0001 12:00:00 AM"
55
+ },
56
+ "r__transactionalEmail_key": "testNew_temail_notPublished"
57
+ },
58
+ "metaData": {
59
+ "highThroughput": {
60
+ "r__dataExtension_key": "testExisting_dataExtension"
61
+ },
62
+ "sections": {},
63
+ "isConfigured": true
64
+ },
65
+ "schema": {
66
+ "arguments": {
67
+ "requestID": {
68
+ "dataType": "Text",
69
+ "isNullable": true,
70
+ "direction": "Out",
71
+ "readOnly": false,
72
+ "access": "Hidden"
73
+ },
74
+ "messageKey": {
75
+ "dataType": "Text",
76
+ "isNullable": true,
77
+ "direction": "Out",
78
+ "readOnly": false,
79
+ "access": "Hidden"
80
+ },
81
+ "activityId": {
82
+ "dataType": "Text",
83
+ "isNullable": true,
84
+ "direction": "In",
85
+ "readOnly": false,
86
+ "access": "Hidden"
87
+ },
88
+ "definitionId": {
89
+ "dataType": "Text",
90
+ "isNullable": true,
91
+ "direction": "In",
92
+ "readOnly": true,
93
+ "access": "Hidden"
94
+ },
95
+ "emailSubjectDataBound": {
96
+ "dataType": "Text",
97
+ "isNullable": true,
98
+ "direction": "In",
99
+ "readOnly": true,
100
+ "access": "Hidden"
101
+ },
102
+ "contactId": {
103
+ "dataType": "Number",
104
+ "isNullable": true,
105
+ "direction": "In",
106
+ "readOnly": false,
107
+ "access": "Hidden"
108
+ },
109
+ "contactKey": {
110
+ "dataType": "Text",
111
+ "isNullable": false,
112
+ "direction": "In",
113
+ "readOnly": false,
114
+ "access": "Hidden"
115
+ },
116
+ "emailAddress": {
117
+ "dataType": "Text",
118
+ "isNullable": false,
119
+ "direction": "In",
120
+ "readOnly": false,
121
+ "access": "Hidden"
122
+ },
123
+ "sourceCustomObjectId": {
124
+ "dataType": "Text",
125
+ "isNullable": true,
126
+ "direction": "In",
127
+ "readOnly": false,
128
+ "access": "Hidden"
129
+ },
130
+ "sourceCustomObjectKey": {
131
+ "dataType": "LongNumber",
132
+ "isNullable": true,
133
+ "direction": "In",
134
+ "readOnly": false,
135
+ "access": "Hidden"
136
+ },
137
+ "fieldType": {
138
+ "dataType": "Text",
139
+ "isNullable": true,
140
+ "direction": "In",
141
+ "readOnly": false,
142
+ "access": "Hidden"
143
+ },
144
+ "eventData": {
145
+ "dataType": "Text",
146
+ "isNullable": true,
147
+ "direction": "In",
148
+ "readOnly": false,
149
+ "access": "Hidden"
150
+ },
151
+ "obfuscationProperties": {
152
+ "dataType": "Text",
153
+ "isNullable": true,
154
+ "direction": "In",
155
+ "readOnly": false,
156
+ "access": "Hidden"
157
+ },
158
+ "customObjectKey": {
159
+ "dataType": "LongNumber",
160
+ "isNullable": true,
161
+ "direction": "In",
162
+ "readOnly": true,
163
+ "access": "Hidden"
164
+ },
165
+ "definitionInstanceId": {
166
+ "dataType": "Text",
167
+ "isNullable": false,
168
+ "direction": "In",
169
+ "readOnly": false,
170
+ "access": "Hidden"
171
+ }
172
+ }
173
+ }
174
+ }
175
+ ],
176
+ "triggers": [
177
+ {
178
+ "key": "TRIGGER",
179
+ "name": "TRIGGER",
180
+ "description": "",
181
+ "type": "transactional-api",
182
+ "outcomes": [],
183
+ "arguments": {},
184
+ "configurationArguments": {},
185
+ "metaData": {
186
+ "chainType": "none",
187
+ "configurationRequired": false,
188
+ "iconUrl": "/images/icon_journeyBuilder-event-transactional-blue.svg",
189
+ "title": "Transactional API Event",
190
+ "category": "Transactional",
191
+ "entrySourceGroupConfigUrl": "null"
192
+ }
193
+ }
194
+ ],
195
+ "goals": [],
196
+ "exits": [],
197
+ "notifiers": [],
198
+ "entryMode": "MultipleEntries",
199
+ "definitionType": "Transactional",
200
+ "channel": "email",
201
+ "defaults": {
202
+ "properties": {}
203
+ },
204
+ "metaData": {
205
+ "dataSource": "ContactsModel",
206
+ "highThroughputSending": {
207
+ "email": false
208
+ }
209
+ },
210
+ "executionMode": "Production",
211
+ "scheduledStatus": "Draft",
212
+ "r__folder_Path": "my journeys"
213
+ }
@@ -4,6 +4,7 @@
4
4
  "Description": "updated via deploy",
5
5
  "FromName": "Jörn Berkefeld",
6
6
  "FromAddress": "joern.berkefeld@accenture.com",
7
+ "FallbackFromAddress": "",
7
8
  "UseDefaultRMMRules": false,
8
9
  "AutoForwardToEmailAddress": "joern.berkefeld@accenture.com",
9
10
  "AutoForwardToName": "Jörn Berkefeld",
@@ -4,6 +4,7 @@
4
4
  "Description": "created on deploy",
5
5
  "FromName": "Jörn Berkefeld",
6
6
  "FromAddress": "joern.berkefeld@accenture.com",
7
+ "FallbackFromAddress": "joern.berkefeld.New@accenture.com",
7
8
  "UseDefaultRMMRules": false,
8
9
  "AutoForwardToEmailAddress": "joern.berkefeld@accenture.com",
9
10
  "AutoForwardToName": "Jörn Berkefeld",
@@ -12,30 +12,7 @@ const projectRoot = projectRootHelper.join(path.sep) + path.sep;
12
12
  const parser = new XMLParser();
13
13
  const attributeParser = new XMLParser({ ignoreAttributes: false });
14
14
  /** @type {typeof Util.color} */
15
- let color;
16
-
17
- /* eslint-disable unicorn/prefer-ternary */
18
- if (Util.isRunViaVSCodeExtension) {
19
- // when we execute the test in a VSCode extension host, we don't want CLI color codes.
20
- // @ts-expect-error hacky way to get rid of colors - ts doesn't appreciate the hack
21
- color = new Proxy(
22
- {},
23
- {
24
- /**
25
- * catch-all for color
26
- *
27
- * @returns {string} empty string
28
- */
29
- get() {
30
- return '';
31
- },
32
- }
33
- );
34
- } else {
35
- // test is executed directly in a command prompt. Use colors.
36
- color = Util.color;
37
- }
38
- /* eslint-enable unicorn/prefer-ternary */
15
+ const color = Util.color;
39
16
 
40
17
  export const tWarn = `${color.bgYellow}${color.fgBlack}TEST-WARNING${color.reset}`;
41
18
  export const tError = `${color.bgRed}${color.fgBlack}TEST-ERROR${color.reset}`;
@@ -322,6 +299,12 @@ export const handleRESTRequest = async (config) => {
322
299
  filterBody = Object.keys(data)
323
300
  .map((key) => `${key}=${data[key]}`)
324
301
  .join(',');
302
+ } else if (config.url === '/asset/v1/content/assets/') {
303
+ const data = JSON.parse(config.data);
304
+
305
+ if (data.customerKey) {
306
+ filterBody = 'key=' + data.customerKey;
307
+ }
325
308
  }
326
309
  }
327
310
  const testPathFilterBody = filterBody ? testPath + '-' + filterBody : null;