@salesforce/source-deploy-retrieve 10.5.5 → 10.6.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 (146) hide show
  1. package/lib/src/client/deployMessages.d.ts +20 -0
  2. package/lib/src/client/deployMessages.js +146 -0
  3. package/lib/src/client/deployMessages.js.map +1 -0
  4. package/lib/src/client/diagnosticUtil.d.ts +4 -8
  5. package/lib/src/client/diagnosticUtil.js +53 -112
  6. package/lib/src/client/diagnosticUtil.js.map +1 -1
  7. package/lib/src/client/index.d.ts +2 -2
  8. package/lib/src/client/index.js.map +1 -1
  9. package/lib/src/client/metadataApiDeploy.d.ts +4 -21
  10. package/lib/src/client/metadataApiDeploy.js +66 -200
  11. package/lib/src/client/metadataApiDeploy.js.map +1 -1
  12. package/lib/src/client/metadataApiRetrieve.d.ts +6 -12
  13. package/lib/src/client/metadataApiRetrieve.js +62 -165
  14. package/lib/src/client/metadataApiRetrieve.js.map +1 -1
  15. package/lib/src/client/metadataTransfer.d.ts +6 -6
  16. package/lib/src/client/metadataTransfer.js +58 -52
  17. package/lib/src/client/metadataTransfer.js.map +1 -1
  18. package/lib/src/client/retrieveExtract.d.ts +15 -0
  19. package/lib/src/client/retrieveExtract.js +130 -0
  20. package/lib/src/client/retrieveExtract.js.map +1 -0
  21. package/lib/src/client/types.d.ts +10 -4
  22. package/lib/src/client/types.js +1 -0
  23. package/lib/src/client/types.js.map +1 -1
  24. package/lib/src/collections/componentSet.d.ts +6 -3
  25. package/lib/src/collections/componentSet.js +31 -23
  26. package/lib/src/collections/componentSet.js.map +1 -1
  27. package/lib/src/collections/componentSetBuilder.d.ts +10 -1
  28. package/lib/src/collections/componentSetBuilder.js +139 -133
  29. package/lib/src/collections/componentSetBuilder.js.map +1 -1
  30. package/lib/src/collections/types.d.ts +2 -1
  31. package/lib/src/collections/types.js +2 -1
  32. package/lib/src/collections/types.js.map +1 -1
  33. package/lib/src/common/types.d.ts +2 -2
  34. package/lib/src/convert/convertContext/convertContext.d.ts +13 -0
  35. package/lib/src/convert/convertContext/convertContext.js +27 -0
  36. package/lib/src/convert/convertContext/convertContext.js.map +1 -0
  37. package/lib/src/convert/convertContext/decompositionFinalizer.d.ts +19 -0
  38. package/lib/src/convert/convertContext/decompositionFinalizer.js +27 -0
  39. package/lib/src/convert/convertContext/decompositionFinalizer.js.map +1 -0
  40. package/lib/src/convert/convertContext/nonDecompositionFinalizer.d.ts +42 -0
  41. package/lib/src/convert/convertContext/nonDecompositionFinalizer.js +167 -0
  42. package/lib/src/convert/convertContext/nonDecompositionFinalizer.js.map +1 -0
  43. package/lib/src/convert/convertContext/recompositionFinalizer.d.ts +29 -0
  44. package/lib/src/convert/convertContext/recompositionFinalizer.js +122 -0
  45. package/lib/src/convert/convertContext/recompositionFinalizer.js.map +1 -0
  46. package/lib/src/convert/convertContext/transactionFinalizer.d.ts +5 -0
  47. package/lib/src/convert/convertContext/transactionFinalizer.js +7 -0
  48. package/lib/src/convert/convertContext/transactionFinalizer.js.map +1 -0
  49. package/lib/src/convert/metadataConverter.d.ts +3 -3
  50. package/lib/src/convert/metadataConverter.js +37 -27
  51. package/lib/src/convert/metadataConverter.js.map +1 -1
  52. package/lib/src/convert/replacements.d.ts +1 -1
  53. package/lib/src/convert/streams.d.ts +10 -8
  54. package/lib/src/convert/streams.js +40 -31
  55. package/lib/src/convert/streams.js.map +1 -1
  56. package/lib/src/convert/transformers/baseMetadataTransformer.d.ts +3 -3
  57. package/lib/src/convert/transformers/baseMetadataTransformer.js +3 -3
  58. package/lib/src/convert/transformers/baseMetadataTransformer.js.map +1 -1
  59. package/lib/src/convert/transformers/decomposedMetadataTransformer.d.ts +2 -10
  60. package/lib/src/convert/transformers/decomposedMetadataTransformer.js +172 -164
  61. package/lib/src/convert/transformers/decomposedMetadataTransformer.js.map +1 -1
  62. package/lib/src/convert/transformers/defaultMetadataTransformer.d.ts +1 -1
  63. package/lib/src/convert/transformers/defaultMetadataTransformer.js +9 -9
  64. package/lib/src/convert/transformers/defaultMetadataTransformer.js.map +1 -1
  65. package/lib/src/convert/transformers/metadataTransformerFactory.d.ts +2 -2
  66. package/lib/src/convert/transformers/metadataTransformerFactory.js +1 -1
  67. package/lib/src/convert/transformers/metadataTransformerFactory.js.map +1 -1
  68. package/lib/src/convert/transformers/nonDecomposedMetadataTransformer.d.ts +1 -1
  69. package/lib/src/convert/transformers/nonDecomposedMetadataTransformer.js +7 -7
  70. package/lib/src/convert/transformers/nonDecomposedMetadataTransformer.js.map +1 -1
  71. package/lib/src/convert/transformers/staticResourceMetadataTransformer.d.ts +2 -2
  72. package/lib/src/convert/transformers/staticResourceMetadataTransformer.js +4 -4
  73. package/lib/src/convert/transformers/staticResourceMetadataTransformer.js.map +1 -1
  74. package/lib/src/convert/types.d.ts +13 -1
  75. package/lib/src/registry/coverage.js +10 -10
  76. package/lib/src/registry/coverage.js.map +1 -1
  77. package/lib/src/registry/presets/decomposeCustomLabelsBeta.json +43 -0
  78. package/lib/src/registry/presets/decomposePermissionSetBeta.json +186 -0
  79. package/lib/src/registry/presets/decomposeSharingRulesBeta.json +81 -0
  80. package/lib/src/registry/presets/decomposeWorkflowBeta.json +103 -0
  81. package/lib/src/registry/registry.d.ts +1 -1
  82. package/lib/src/registry/registry.js +2 -2
  83. package/lib/src/registry/registry.js.map +1 -1
  84. package/lib/src/registry/registryAccess.d.ts +2 -1
  85. package/lib/src/registry/registryAccess.js +6 -3
  86. package/lib/src/registry/registryAccess.js.map +1 -1
  87. package/lib/src/registry/standardvalueset.js +2 -2
  88. package/lib/src/registry/standardvalueset.js.map +1 -1
  89. package/lib/src/registry/types.d.ts +1 -1
  90. package/lib/src/registry/variants.d.ts +12 -0
  91. package/lib/src/registry/variants.js +71 -0
  92. package/lib/src/registry/variants.js.map +1 -0
  93. package/lib/src/resolve/adapters/baseSourceAdapter.d.ts +3 -13
  94. package/lib/src/resolve/adapters/baseSourceAdapter.js +61 -61
  95. package/lib/src/resolve/adapters/baseSourceAdapter.js.map +1 -1
  96. package/lib/src/resolve/adapters/bundleSourceAdapter.d.ts +1 -1
  97. package/lib/src/resolve/adapters/decomposedSourceAdapter.d.ts +2 -2
  98. package/lib/src/resolve/adapters/decomposedSourceAdapter.js +13 -12
  99. package/lib/src/resolve/adapters/decomposedSourceAdapter.js.map +1 -1
  100. package/lib/src/resolve/adapters/defaultSourceAdapter.d.ts +1 -1
  101. package/lib/src/resolve/adapters/digitalExperienceSourceAdapter.d.ts +2 -2
  102. package/lib/src/resolve/adapters/digitalExperienceSourceAdapter.js +10 -10
  103. package/lib/src/resolve/adapters/digitalExperienceSourceAdapter.js.map +1 -1
  104. package/lib/src/resolve/adapters/matchingContentSourceAdapter.d.ts +1 -2
  105. package/lib/src/resolve/adapters/matchingContentSourceAdapter.js +4 -7
  106. package/lib/src/resolve/adapters/matchingContentSourceAdapter.js.map +1 -1
  107. package/lib/src/resolve/adapters/mixedContentSourceAdapter.d.ts +1 -1
  108. package/lib/src/resolve/adapters/sourceAdapterFactory.d.ts +2 -1
  109. package/lib/src/resolve/adapters/sourceAdapterFactory.js +6 -16
  110. package/lib/src/resolve/adapters/sourceAdapterFactory.js.map +1 -1
  111. package/lib/src/resolve/connectionResolver.d.ts +1 -1
  112. package/lib/src/resolve/connectionResolver.js +9 -16
  113. package/lib/src/resolve/connectionResolver.js.map +1 -1
  114. package/lib/src/resolve/forceIgnore.d.ts +1 -1
  115. package/lib/src/resolve/manifestResolver.d.ts +1 -1
  116. package/lib/src/resolve/manifestResolver.js +39 -35
  117. package/lib/src/resolve/manifestResolver.js.map +1 -1
  118. package/lib/src/resolve/metadataResolver.d.ts +2 -47
  119. package/lib/src/resolve/metadataResolver.js +206 -215
  120. package/lib/src/resolve/metadataResolver.js.map +1 -1
  121. package/lib/src/resolve/sourceComponent.d.ts +3 -4
  122. package/lib/src/resolve/sourceComponent.js +17 -42
  123. package/lib/src/resolve/sourceComponent.js.map +1 -1
  124. package/lib/src/resolve/treeContainers.js +5 -14
  125. package/lib/src/resolve/treeContainers.js.map +1 -1
  126. package/lib/src/resolve/types.d.ts +2 -2
  127. package/lib/src/utils/decomposed.d.ts +7 -0
  128. package/lib/src/utils/decomposed.js +19 -0
  129. package/lib/src/utils/decomposed.js.map +1 -0
  130. package/lib/src/utils/filePathGenerator.js +2 -2
  131. package/lib/src/utils/filePathGenerator.js.map +1 -1
  132. package/lib/src/utils/fileSystemHandler.d.ts +1 -1
  133. package/lib/src/utils/index.d.ts +1 -1
  134. package/lib/src/utils/index.js +2 -1
  135. package/lib/src/utils/index.js.map +1 -1
  136. package/lib/src/utils/path.d.ts +17 -2
  137. package/lib/src/utils/path.js +44 -1
  138. package/lib/src/utils/path.js.map +1 -1
  139. package/package.json +6 -9
  140. package/LICENSE +0 -29
  141. package/lib/src/convert/convertContext.d.ts +0 -92
  142. package/lib/src/convert/convertContext.js +0 -304
  143. package/lib/src/convert/convertContext.js.map +0 -1
  144. package/lib/src/convert/transformers/index.d.ts +0 -1
  145. package/lib/src/convert/transformers/index.js +0 -12
  146. package/lib/src/convert/transformers/index.js.map +0 -1
@@ -0,0 +1,20 @@
1
+ import { SourceComponent, ComponentLike } from '../resolve';
2
+ import { ComponentStatus, DeployMessage, FileResponse, MetadataApiDeployStatus } from './types';
3
+ type DeployMessageWithComponentType = DeployMessage & {
4
+ componentType: string;
5
+ };
6
+ /**
7
+ * Fix any issues with the deploy message returned by the api.
8
+ * TODO: remove cases if fixes are made in the api.
9
+ */
10
+ export declare const sanitizeDeployMessage: (message: DeployMessage) => DeployMessageWithComponentType;
11
+ export declare const createResponses: (component: SourceComponent, responseMessages: DeployMessage[]) => FileResponse[];
12
+ /**
13
+ * Groups messages from the deploy result by component fullName and type
14
+ */
15
+ export declare const getDeployMessages: (result: MetadataApiDeployStatus) => Map<string, DeployMessage[]>;
16
+ export declare const getState: (message: DeployMessage) => ComponentStatus;
17
+ export declare const isComponentNotFoundWarningMessage: (message: DeployMessage) => message is DeployMessage & Required<Pick<DeployMessage, "componentType" | "problem" | "problemType">>;
18
+ export declare const toKey: (component: ComponentLike) => string;
19
+ export declare const shouldConvertPaths: boolean;
20
+ export {};
@@ -0,0 +1,146 @@
1
+ "use strict";
2
+ /*
3
+ * Copyright (c) 2023, salesforce.com, inc.
4
+ * All rights reserved.
5
+ * Licensed under the BSD 3-Clause license.
6
+ * For full license text, see LICENSE.txt file in the repo root or https://opensource.org/licenses/BSD-3-Clause
7
+ */
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.shouldConvertPaths = exports.toKey = exports.isComponentNotFoundWarningMessage = exports.getState = exports.getDeployMessages = exports.createResponses = exports.sanitizeDeployMessage = void 0;
10
+ const posix_1 = require("node:path/posix");
11
+ const posix_2 = require("node:path/posix");
12
+ const core_1 = require("@salesforce/core");
13
+ const kit_1 = require("@salesforce/kit");
14
+ const registry_1 = require("../registry/registry");
15
+ const types_1 = require("./types");
16
+ const diagnosticUtil_1 = require("./diagnosticUtil");
17
+ /**
18
+ * Fix any issues with the deploy message returned by the api.
19
+ * TODO: remove cases if fixes are made in the api.
20
+ */
21
+ const sanitizeDeployMessage = (message) => {
22
+ if (!hasComponentType(message)) {
23
+ throw new core_1.SfError(`Missing componentType in deploy message ${message.fullName} ${message.fileName}`);
24
+ }
25
+ // mdapi error messages have the type as "FooSettings" but SDR only recognizes "Settings"
26
+ if (message.componentType.endsWith('Settings') && message.fileName.endsWith('.settings')) {
27
+ return {
28
+ ...message,
29
+ componentType: 'Settings',
30
+ };
31
+ }
32
+ if (message.componentType === registry_1.registry.types.lightningcomponentbundle.name) {
33
+ return {
34
+ ...message,
35
+ fullName: message.fullName.replace(/markup:\/\/[a-z|0-9|_]+:/i, ''),
36
+ };
37
+ }
38
+ if (message.componentType === registry_1.registry.types.document.name) {
39
+ return {
40
+ ...message,
41
+ // strip document extension from fullName
42
+ fullName: (0, posix_1.join)((0, posix_1.dirname)(message.fullName), (0, posix_1.basename)(message.fullName, (0, posix_1.extname)(message.fullName))),
43
+ };
44
+ }
45
+ // Treat emailTemplateFolder as EmailFolder
46
+ if (message.componentType === registry_1.registry.types.emailtemplatefolder.name) {
47
+ return {
48
+ ...message,
49
+ // strip document extension from fullName
50
+ componentType: registry_1.registry.types.emailfolder.name,
51
+ };
52
+ }
53
+ return message;
54
+ };
55
+ exports.sanitizeDeployMessage = sanitizeDeployMessage;
56
+ // components with children are already taken care of through the messages, so don't walk their content directories.
57
+ const shouldWalkContent = (component) => typeof component.content === 'string' &&
58
+ (!component.type.children ||
59
+ Object.values(component.type.children.types).some((t) => t.unaddressableWithoutParent === true || t.isAddressable === false));
60
+ const createResponses = (component, responseMessages) => {
61
+ const responses = responseMessages.flatMap((message) => {
62
+ const state = (0, exports.getState)(message);
63
+ const base = { fullName: component.fullName, type: component.type.name };
64
+ if (state === types_1.ComponentStatus.Failed) {
65
+ return [{ ...base, state, ...(0, diagnosticUtil_1.parseDeployDiagnostic)(component, message) }];
66
+ }
67
+ else {
68
+ return [
69
+ ...(shouldWalkContent(component)
70
+ ? component.walkContent().map((filePath) => ({ ...base, state, filePath }))
71
+ : []),
72
+ ...(component.xml ? [{ ...base, state, filePath: component.xml }] : []),
73
+ ];
74
+ }
75
+ });
76
+ return responses;
77
+ };
78
+ exports.createResponses = createResponses;
79
+ /**
80
+ * Groups messages from the deploy result by component fullName and type
81
+ */
82
+ const getDeployMessages = (result) => {
83
+ const messageMap = new Map();
84
+ const failedComponentKeys = new Set();
85
+ const failureMessages = (0, kit_1.ensureArray)(result.details.componentFailures);
86
+ const successMessages = (0, kit_1.ensureArray)(result.details.componentSuccesses);
87
+ for (const failure of failureMessages) {
88
+ const sanitized = (0, exports.sanitizeDeployMessage)(failure);
89
+ const componentLike = {
90
+ fullName: sanitized.fullName,
91
+ type: sanitized.componentType,
92
+ };
93
+ const key = (0, exports.toKey)(componentLike);
94
+ if (!messageMap.has(key)) {
95
+ messageMap.set(key, []);
96
+ }
97
+ messageMap.get(key)?.push(sanitized);
98
+ failedComponentKeys.add(key);
99
+ }
100
+ for (const success of successMessages) {
101
+ const sanitized = (0, exports.sanitizeDeployMessage)(success);
102
+ const componentLike = {
103
+ fullName: sanitized.fullName,
104
+ type: sanitized.componentType,
105
+ };
106
+ const key = (0, exports.toKey)(componentLike);
107
+ // this will ensure successes aren't reported if there is a failure for
108
+ // the same component. e.g. lwc returns failures and successes
109
+ if (!failedComponentKeys.has(key)) {
110
+ messageMap.set(key, [sanitized]);
111
+ }
112
+ }
113
+ return messageMap;
114
+ };
115
+ exports.getDeployMessages = getDeployMessages;
116
+ const getState = (message) => {
117
+ if (isTrue(message.created)) {
118
+ return types_1.ComponentStatus.Created;
119
+ }
120
+ else if (isTrue(message.changed)) {
121
+ return types_1.ComponentStatus.Changed;
122
+ }
123
+ else if (isTrue(message.deleted)) {
124
+ return types_1.ComponentStatus.Deleted;
125
+ }
126
+ else if (!isTrue(message.success)) {
127
+ return types_1.ComponentStatus.Failed;
128
+ }
129
+ return types_1.ComponentStatus.Unchanged;
130
+ };
131
+ exports.getState = getState;
132
+ /* Type guard for asserting that a DeployMessages has a componentType, problem, and problemType === Warning*/
133
+ const isComponentNotFoundWarningMessage = (message) => hasComponentType(message) &&
134
+ message.problemType === 'Warning' &&
135
+ typeof message.problem === 'string' &&
136
+ message.problem?.startsWith(`No ${message.componentType} named: `);
137
+ exports.isComponentNotFoundWarningMessage = isComponentNotFoundWarningMessage;
138
+ const hasComponentType = (message) => typeof message.componentType === 'string';
139
+ const toKey = (component) => {
140
+ const type = typeof component.type === 'string' ? component.type : component.type.name;
141
+ return `${type}#${exports.shouldConvertPaths ? component.fullName.split(posix_2.sep).join(posix_2.posix.sep) : component.fullName}`;
142
+ };
143
+ exports.toKey = toKey;
144
+ const isTrue = (value) => value === 'true' || value === true;
145
+ exports.shouldConvertPaths = posix_2.sep !== posix_2.posix.sep;
146
+ //# sourceMappingURL=deployMessages.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deployMessages.js","sourceRoot":"","sources":["../../../src/client/deployMessages.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,5 @@
1
- import { SourceComponent } from '../resolve';
1
+ import { SourceComponent } from '../resolve/sourceComponent';
2
2
  import { ComponentDiagnostic, DeployMessage } from './types';
3
- export declare class DiagnosticUtil {
4
- private api;
5
- constructor(api: 'metadata' | 'tooling');
6
- parseDeployDiagnostic(component: SourceComponent, message: string | DeployMessage): ComponentDiagnostic;
7
- private parseLwc;
8
- private parseAura;
9
- }
3
+ type RelevantMessageProps = Pick<DeployMessage, 'problem' | 'problemType' | 'fileName' | 'lineNumber' | 'columnNumber'>;
4
+ export declare const parseDeployDiagnostic: (component: SourceComponent, message: string | RelevantMessageProps) => ComponentDiagnostic;
5
+ export {};
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.DiagnosticUtil = void 0;
3
+ exports.parseDeployDiagnostic = void 0;
4
4
  /*
5
5
  * Copyright (c) 2020, salesforce.com, inc.
6
6
  * All rights reserved.
@@ -9,123 +9,64 @@ exports.DiagnosticUtil = void 0;
9
9
  */
10
10
  const node_path_1 = require("node:path");
11
11
  const core_1 = require("@salesforce/core");
12
- const registry_1 = require("../registry");
13
- class DiagnosticUtil {
14
- constructor(api) {
15
- this.api = api;
16
- }
17
- parseDeployDiagnostic(component, message) {
18
- const { name: typeName } = component.type;
19
- switch (typeName) {
20
- case registry_1.registry.types.lightningcomponentbundle.name:
21
- return this.parseLwc(component, message);
22
- case registry_1.registry.types.auradefinitionbundle.name:
23
- return this.parseAura(component, message);
24
- default:
25
- if (typeof message !== 'string') {
26
- return parseDefault(component, message);
27
- }
28
- throw new core_1.SfError(`Unable to parse deploy diagnostic with string message: ${message} for component ${component.fullName}`);
29
- }
30
- }
31
- parseLwc(component, message) {
32
- const problem = getProblemFromMessage(message, component);
33
- const diagnostic = {
34
- error: problem,
35
- problemType: 'Error',
36
- };
37
- if (this.api === 'metadata') {
38
- const deployMessage = message;
39
- if (deployMessage.fileName) {
40
- diagnostic.filePath = component.walkContent().find((f) => f.includes(message.fileName));
41
- }
42
- const matches = new RegExp(/(\[Line: (\d+), Col: (\d+)] )?(.*)/).exec(problem);
43
- if (matches?.[2] && matches[3] && matches[4]) {
44
- diagnostic.lineNumber = Number(matches[2]);
45
- diagnostic.columnNumber = Number(matches[3]);
46
- diagnostic.error = appendErrorWithLocation(matches[4], diagnostic.lineNumber, diagnostic.columnNumber);
47
- }
48
- else {
49
- diagnostic.error = problem;
50
- }
51
- }
52
- else {
53
- try {
54
- const pathParts = problem.split(/[\s\n\t]+/);
55
- const msgStartIndex = pathParts.findIndex((part) => part.includes(':'));
56
- const fileObject = pathParts[msgStartIndex];
57
- const errLocation = fileObject.slice(fileObject.indexOf(':') + 1);
58
- const fileName = fileObject.slice(0, fileObject.indexOf(':'));
59
- diagnostic.error = pathParts.slice(msgStartIndex + 2).join(' ');
60
- diagnostic.filePath = component.walkContent().find((f) => f.includes(fileName));
61
- diagnostic.lineNumber = Number(errLocation.split(',')[0]);
62
- diagnostic.columnNumber = Number(errLocation.split(',')[1]);
63
- diagnostic.error = appendErrorWithLocation(diagnostic.error, diagnostic.lineNumber, diagnostic.columnNumber);
64
- }
65
- catch (e) {
66
- // TODO: log error with parsing error message
67
- diagnostic.error = problem;
68
- }
69
- }
70
- return diagnostic;
71
- }
72
- parseAura(component, message) {
73
- const problem = getProblemFromMessage(message, component);
74
- const diagnostic = {
75
- error: problem,
76
- problemType: 'Error',
77
- };
78
- let filePath;
79
- if (this.api === 'tooling') {
80
- const errorParts = problem.split(' ');
81
- const fileType = errorParts.find((part) => {
82
- part = part.toLowerCase();
83
- return part.includes('controller') || part.includes('renderer') || part.includes('helper');
84
- });
85
- filePath = fileType
86
- ? component.walkContent().find((s) => s.toLowerCase().includes(fileType.toLowerCase()))
87
- : undefined;
88
- }
89
- else {
90
- const deployMessage = message;
91
- if (deployMessage.fileName) {
92
- filePath = component.walkContent().find((f) => f.endsWith((0, node_path_1.basename)(deployMessage.fileName)));
93
- }
94
- }
95
- if (filePath) {
96
- diagnostic.filePath = filePath;
97
- const matches = new RegExp(/(\d+),\s?(\d+)/).exec(problem);
98
- if (matches) {
99
- const lineNumber = Number(matches[1]);
100
- const columnNumber = Number(matches[2]);
101
- diagnostic.lineNumber = lineNumber;
102
- diagnostic.columnNumber = columnNumber;
103
- diagnostic.error = appendErrorWithLocation(diagnostic.error, lineNumber, columnNumber);
12
+ const registry_1 = require("../registry/registry");
13
+ const parseDeployDiagnostic = (component, message) => {
14
+ const { name: typeName } = component.type;
15
+ const problem = getProblemFromMessage(message, component);
16
+ switch (typeName) {
17
+ case registry_1.registry.types.lightningcomponentbundle.name:
18
+ return parseLwc(component, message, problem);
19
+ case registry_1.registry.types.auradefinitionbundle.name:
20
+ return parseAura(component, message, problem);
21
+ default:
22
+ if (typeof message !== 'string') {
23
+ return parseDefault(component, message, problem);
104
24
  }
105
- }
106
- return diagnostic;
25
+ throw new core_1.SfError(`Unable to parse deploy diagnostic with string message: ${message} for component ${component.fullName}`);
107
26
  }
108
- }
109
- exports.DiagnosticUtil = DiagnosticUtil;
110
- const appendErrorWithLocation = (error, line, column) => `${error} (${line}:${column})`;
111
- const parseDefault = (component, message) => {
27
+ };
28
+ exports.parseDeployDiagnostic = parseDeployDiagnostic;
29
+ const parseLwc = (component, message, problem) => {
30
+ const filePath = messageHasProblemAndFilename(message) ? getFileEndingWith(message.fileName)(component) : undefined;
31
+ const [line, col, lwcError] = (new RegExp(/(\[Line: (\d+), Col: (\d+)] )?(.*)/).exec(problem) ?? []).slice(2, 5);
32
+ const [lineNumber, columnNumber] = [line, col].map(Number);
33
+ return {
34
+ problemType: 'Error',
35
+ ...(filePath ? { filePath } : {}),
36
+ ...(lineNumber && columnNumber && lwcError
37
+ ? { lineNumber, columnNumber, error: appendErrorWithLocation(lwcError, lineNumber, columnNumber) }
38
+ : { error: problem }),
39
+ };
40
+ };
41
+ const parseAura = (component, message, problem) => {
42
+ const filePath = messageHasProblemAndFilename(message) ? getFileEndingWith(message.fileName)(component) : undefined;
43
+ const [lineNumber, columnNumber] = (new RegExp(/(\d+),\s?(\d+)/).exec(problem) ?? []).slice(1, 3).map(Number);
44
+ return {
45
+ problemType: 'Error',
46
+ ...(filePath ? { filePath } : {}),
47
+ ...(lineNumber >= 0 && columnNumber >= 0
48
+ ? { lineNumber, columnNumber, error: appendErrorWithLocation(problem, lineNumber, columnNumber) }
49
+ : { error: problem }),
50
+ };
51
+ };
52
+ const parseDefault = (component, message, problem) => {
112
53
  const { problemType, fileName, lineNumber, columnNumber } = message;
113
- const problem = getProblemFromMessage(message, component);
114
- const diagnostic = {
115
- error: problem,
54
+ return {
116
55
  problemType: problemType ?? 'Error',
56
+ ...(fileName ? { filePath: getFileEndingWith(fileName)(component) } : {}),
57
+ ...(lineNumber && columnNumber
58
+ ? {
59
+ lineNumber: Number(lineNumber),
60
+ columnNumber: Number(columnNumber),
61
+ error: appendErrorWithLocation(problem, lineNumber, columnNumber),
62
+ }
63
+ : { error: problem }),
117
64
  };
118
- if (fileName) {
119
- const localProblemFile = component.walkContent().find((f) => f.endsWith((0, node_path_1.basename)(message.fileName)));
120
- diagnostic.filePath = localProblemFile ?? component.xml;
121
- }
122
- if (lineNumber && columnNumber) {
123
- diagnostic.lineNumber = Number(lineNumber);
124
- diagnostic.columnNumber = Number(columnNumber);
125
- diagnostic.error = appendErrorWithLocation(diagnostic.error, lineNumber, columnNumber);
126
- }
127
- return diagnostic;
128
65
  };
66
+ const appendErrorWithLocation = (error, line, column) => `${error} (${line}:${column})`;
67
+ const messageHasProblemAndFilename = (message) => typeof message === 'object' && 'problem' in message && 'fileName' in message;
68
+ const getFileEndingWith = (fileName) => (component) => component.walkContent().find(endsWith((0, node_path_1.basename)(fileName))) ?? component.xml;
69
+ const endsWith = (ending) => (f) => f.endsWith(ending);
129
70
  const getProblemFromMessage = (message, component) => {
130
71
  const problem = typeof message === 'string' ? message : message.problem;
131
72
  if (!problem) {
@@ -1 +1 @@
1
- {"version":3,"file":"diagnosticUtil.js","sourceRoot":"","sources":["../../../src/client/diagnosticUtil.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"diagnosticUtil.js","sourceRoot":"","sources":["../../../src/client/diagnosticUtil.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,3 @@
1
1
  export { MetadataApiDeploy, MetadataApiDeployOptions, DeployResult, ScopedPreDeploy, ScopedPostDeploy, } from './metadataApiDeploy';
2
- export { MetadataApiRetrieve, MetadataApiRetrieveOptions, RetrieveResult, ScopedPostRetrieve, ScopedPreRetrieve, } from './metadataApiRetrieve';
3
- export { ComponentDeployment, ComponentRetrieval, ComponentDiagnostic, FileResponse, FileResponseFailure, FileResponseSuccess, AsyncResult, RequestStatus, MetadataRequestStatus, RetrieveFailure, RetrieveSuccess, MetadataApiDeployStatus, DeployDetails, RunTestResult, CodeCoverage, LocationsNotCovered, CodeCoverageWarnings, Failures, Successes, DeployMessage, RetrieveRequest, RetrieveMessage, FileProperties, ComponentStatus, MetadataApiRetrieveStatus, PackageOption, PackageOptions, RetrieveOptions, DeployVersionData, RetrieveVersionData, } from './types';
2
+ export { MetadataApiRetrieve, RetrieveResult, ScopedPostRetrieve, ScopedPreRetrieve } from './metadataApiRetrieve';
3
+ export { ComponentDeployment, ComponentRetrieval, ComponentDiagnostic, FileResponse, FileResponseFailure, FileResponseSuccess, AsyncResult, RequestStatus, MetadataRequestStatus, RetrieveFailure, RetrieveSuccess, MetadataApiDeployStatus, DeployDetails, RunTestResult, CodeCoverage, LocationsNotCovered, CodeCoverageWarnings, Failures, Successes, DeployMessage, RetrieveRequest, RetrieveMessage, FileProperties, ComponentStatus, MetadataApiRetrieveStatus, PackageOption, PackageOptions, RetrieveOptions, DeployVersionData, RetrieveVersionData, MetadataApiRetrieveOptions, } from './types';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/client/index.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAEH,yDAM6B;AAL3B,sHAAA,iBAAiB,OAAA;AAEjB,iHAAA,YAAY,OAAA;AAId,6DAM+B;AAL7B,0HAAA,mBAAmB,OAAA;AAEnB,qHAAA,cAAc,OAAA;AAIhB,iCA+BiB;AAvBf,sGAAA,aAAa,OAAA;AAgBb,wGAAA,eAAe,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/client/index.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAEH,yDAM6B;AAL3B,sHAAA,iBAAiB,OAAA;AAEjB,iHAAA,YAAY,OAAA;AAId,6DAAmH;AAA1G,0HAAA,mBAAmB,OAAA;AAAE,qHAAA,cAAc,OAAA;AAC5C,iCAgCiB;AAxBf,sGAAA,aAAa,OAAA;AAgBb,wGAAA,eAAe,OAAA"}
@@ -1,33 +1,14 @@
1
- import { ComponentSet } from '../collections';
1
+ import { RegistryAccess } from '../registry/registryAccess';
2
+ import { ComponentSet } from '../collections/componentSet';
2
3
  import { MetadataTransfer, MetadataTransferOptions } from './metadataTransfer';
3
4
  import { AsyncResult, FileResponse, MetadataApiDeployOptions as ApiOptions, MetadataApiDeployStatus, MetadataTransferResult } from './types';
4
5
  export declare class DeployResult implements MetadataTransferResult {
5
6
  readonly response: MetadataApiDeployStatus;
6
7
  readonly components?: ComponentSet | undefined;
7
8
  readonly replacements: Map<string, string[]>;
8
- private readonly diagnosticUtil;
9
9
  private fileResponses?;
10
- private readonly shouldConvertPaths;
11
10
  constructor(response: MetadataApiDeployStatus, components?: ComponentSet | undefined, replacements?: Map<string, string[]>);
12
11
  getFileResponses(): FileResponse[];
13
- private createResponses;
14
- /**
15
- * Groups messages from the deploy result by component fullName and type
16
- */
17
- private getDeployMessages;
18
- /**
19
- * If a component fails to delete because it doesn't exist in the org, you get a message like
20
- * key: 'ApexClass#destructiveChanges.xml'
21
- * value:[{
22
- * fullName: 'destructiveChanges.xml',
23
- * fileName: 'destructiveChanges.xml',
24
- * componentType: 'ApexClass',
25
- * problem: 'No ApexClass named: test1 found',
26
- * problemType: 'Warning'
27
- * }]
28
- */
29
- private deleteNotFoundToFileResponses;
30
- private key;
31
12
  }
32
13
  export interface MetadataApiDeployOptions extends MetadataTransferOptions {
33
14
  apiOptions?: ApiOptions;
@@ -39,6 +20,7 @@ export interface MetadataApiDeployOptions extends MetadataTransferOptions {
39
20
  * Path to a directory containing mdapi-formatted code and a package.xml
40
21
  */
41
22
  mdapiPath?: string;
23
+ registry?: RegistryAccess;
42
24
  }
43
25
  export declare class MetadataApiDeploy extends MetadataTransfer<MetadataApiDeployStatus, DeployResult, MetadataApiDeployOptions> {
44
26
  static readonly DEFAULT_OPTIONS: Partial<MetadataApiDeployOptions>;
@@ -46,6 +28,7 @@ export declare class MetadataApiDeploy extends MetadataTransfer<MetadataApiDeplo
46
28
  private replacements;
47
29
  private orgId?;
48
30
  private isRestDeploy;
31
+ private registry;
49
32
  constructor(options: MetadataApiDeployOptions);
50
33
  /**
51
34
  * Deploy recently validated components without running Apex tests. Requires the operation to have been