@salesforce/source-deploy-retrieve 10.5.6 → 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 +5 -8
  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
@@ -9,9 +9,9 @@ exports.MetadataResolver = void 0;
9
9
  */
10
10
  const node_path_1 = require("node:path");
11
11
  const core_1 = require("@salesforce/core");
12
- const utils_1 = require("../utils");
13
- const registry_1 = require("../registry");
14
- const common_1 = require("../common");
12
+ const path_1 = require("../utils/path");
13
+ const registryAccess_1 = require("../registry/registryAccess");
14
+ const constants_1 = require("../common/constants");
15
15
  const sourceAdapterFactory_1 = require("./adapters/sourceAdapterFactory");
16
16
  const forceIgnore_1 = require("./forceIgnore");
17
17
  const treeContainers_1 = require("./treeContainers");
@@ -27,12 +27,10 @@ class MetadataResolver {
27
27
  * @param registry Custom registry data
28
28
  * @param tree `TreeContainer` to traverse with
29
29
  */
30
- constructor(registry = new registry_1.RegistryAccess(), tree = new treeContainers_1.NodeFSTreeContainer(), useFsForceIgnore = true) {
30
+ constructor(registry = new registryAccess_1.RegistryAccess(), tree = new treeContainers_1.NodeFSTreeContainer(), useFsForceIgnore = true) {
31
31
  this.registry = registry;
32
32
  this.tree = tree;
33
33
  this.useFsForceIgnore = useFsForceIgnore;
34
- this.logger = core_1.Logger.childFromRoot(this.constructor.name);
35
- this.sourceAdapterFactory = new sourceAdapterFactory_1.SourceAdapterFactory(this.registry, tree);
36
34
  this.forceIgnoredPaths = new Set();
37
35
  }
38
36
  /**
@@ -47,7 +45,7 @@ class MetadataResolver {
47
45
  }
48
46
  // use the default ignore if we aren't using a real one
49
47
  this.forceIgnore = this.useFsForceIgnore ? forceIgnore_1.ForceIgnore.findAndCreate(fsPath) : new forceIgnore_1.ForceIgnore();
50
- if (this.tree.isDirectory(fsPath) && !this.resolveDirectoryAsComponent(fsPath)) {
48
+ if (this.tree.isDirectory(fsPath) && !resolveDirectoryAsComponent(this.registry)(this.tree)(fsPath)) {
51
49
  return this.getComponentsFromPathRecursive(fsPath, inclusiveFilter);
52
50
  }
53
51
  const component = this.resolveComponent(fsPath, true);
@@ -64,13 +62,12 @@ class MetadataResolver {
64
62
  if (!this.tree.isDirectory(dir) && this.forceIgnore?.denies(dir)) {
65
63
  return components;
66
64
  }
67
- for (const file of this.tree.readDirectory(dir)) {
68
- const fsPath = (0, node_path_1.join)(dir, file);
65
+ for (const fsPath of this.tree.readDirectory(dir).map((0, path_1.fnJoin)(dir))) {
69
66
  if (ignore.has(fsPath)) {
70
67
  continue;
71
68
  }
72
69
  if (this.tree.isDirectory(fsPath)) {
73
- if (this.resolveDirectoryAsComponent(fsPath)) {
70
+ if (resolveDirectoryAsComponent(this.registry)(this.tree)(fsPath)) {
74
71
  const component = this.resolveComponent(fsPath, true);
75
72
  if (component && (!inclusiveFilter || inclusiveFilter.has(component))) {
76
73
  components.push(component);
@@ -81,7 +78,7 @@ class MetadataResolver {
81
78
  dirQueue.push(fsPath);
82
79
  }
83
80
  }
84
- else if (this.isMetadata(fsPath)) {
81
+ else if (isMetadata(this.registry)(this.tree)(fsPath)) {
85
82
  const component = this.resolveComponent(fsPath, false);
86
83
  if (component) {
87
84
  if (!inclusiveFilter || inclusiveFilter.has(component)) {
@@ -112,38 +109,20 @@ class MetadataResolver {
112
109
  this.forceIgnoredPaths.add(fsPath);
113
110
  return;
114
111
  }
115
- const type = this.resolveType(fsPath);
112
+ const type = resolveType(this.registry)(this.tree)(fsPath);
116
113
  if (type) {
117
- const adapter = this.sourceAdapterFactory.getAdapter(type, this.forceIgnore);
114
+ const adapter = new sourceAdapterFactory_1.SourceAdapterFactory(this.registry, this.tree).getAdapter(type, this.forceIgnore);
118
115
  // short circuit the component resolution unless this is a resolve for a
119
116
  // source path or allowed content-only path, otherwise the adapter
120
117
  // knows how to handle it
121
- const shouldResolve = parseAsRootMetadataXml(fsPath) ||
122
- isResolvingSource ||
123
- !this.parseAsContentMetadataXml(fsPath) ||
118
+ const shouldResolve = isResolvingSource ||
119
+ parseAsRootMetadataXml(fsPath) ||
120
+ !parseAsContentMetadataXml(this.registry)(fsPath) ||
124
121
  !adapter.allowMetadataWithContent();
125
122
  return shouldResolve ? adapter.getComponent(fsPath, isResolvingSource) : undefined;
126
123
  }
127
- // Perform some additional checks to see if this is a package manifest
128
- if (fsPath.endsWith('.xml') && !fsPath.endsWith(common_1.META_XML_SUFFIX)) {
129
- // If it is named the default package.xml, assume it is a package manifest
130
- if (fsPath.endsWith('package.xml'))
131
- return undefined;
132
- try {
133
- // If the file contains the string "<Package xmlns", it is a package manifest
134
- if (this.tree.readFileSync(fsPath).toString().includes('<Package xmlns'))
135
- return undefined;
136
- }
137
- catch (err) {
138
- const error = err;
139
- if (error.message === 'Method not implemented') {
140
- // Currently readFileSync is not implemented for zipTreeContainer
141
- // Ignoring since this would have been ignored in the past
142
- this.logger.warn(`Type could not be inferred for ${fsPath}. It is likely this is a package manifest. Skipping...`);
143
- return undefined;
144
- }
145
- }
146
- }
124
+ if (isProbablyPackageManifest(this.tree)(fsPath))
125
+ return undefined;
147
126
  void core_1.Lifecycle.getInstance().emitTelemetry({
148
127
  eventName: 'metadata_resolver_type_inference_error',
149
128
  library: 'SDR',
@@ -152,206 +131,218 @@ class MetadataResolver {
152
131
  });
153
132
  // The metadata type could not be inferred
154
133
  // Attempt to guess the type and throw an error with actions
155
- const actions = this.getSuggestionsForUnresolvedTypes(fsPath);
134
+ const actions = getSuggestionsForUnresolvedTypes(this.registry)(fsPath);
156
135
  throw new core_1.SfError(messages.getMessage('error_could_not_infer_type', [fsPath]), 'TypeInferenceError', actions);
157
136
  }
158
- resolveTypeFromStrictFolder(fsPath) {
159
- const pathParts = fsPath.split(node_path_1.sep);
160
- // first, filter out types that don't appear in the path
161
- // then iterate using for/of to allow for early break
162
- return this.registry
163
- .getStrictFolderTypes()
164
- .filter((type) =>
165
- // the type's directory is in the path, AND
166
- pathParts.includes(type.directoryName) &&
167
- // types with folders only have folder components living at the top level.
168
- // if the fsPath is a folder component, let a future strategy deal with it
169
- (!type.inFolder || (0, utils_1.parentName)(fsPath) !== type.directoryName))
170
- .find((type) =>
171
- // any of the following 3 options is considered a good match
172
- // mixedContent and bundles don't have a suffix to match
173
- (typeof type.strategies?.adapter === 'string' &&
174
- ['mixedContent', 'bundle'].includes(type.strategies.adapter)) ||
175
- // the file suffix (in source or mdapi format) matches the type suffix we think it is
176
- (typeof type.suffix === 'string' &&
177
- [type.suffix, `${type.suffix}${common_1.META_XML_SUFFIX}`].some((s) => fsPath.endsWith(s))) ||
178
- // the type has children and the file suffix (in source format) matches a child type suffix of the type we think it is
179
- (type.children?.types &&
180
- Object.values(type.children?.types)
181
- .map((childType) => `${childType.suffix}${common_1.META_XML_SUFFIX}`)
182
- .some((s) => fsPath.endsWith(s))));
183
- }
184
- resolveType(fsPath) {
185
- // attempt 1 - check if the file is part of a component that requires a strict type folder
186
- let resolvedType = this.resolveTypeFromStrictFolder(fsPath);
187
- // attempt 2 - check if it's a metadata xml file
188
- if (!resolvedType) {
189
- const parsedMetaXml = (0, utils_1.parseMetadataXml)(fsPath);
190
- if (parsedMetaXml?.suffix) {
191
- resolvedType = this.registry.getTypeBySuffix(parsedMetaXml.suffix);
192
- }
193
- }
194
- // attempt 2.5 - test for a folder style xml file
195
- if (!resolvedType) {
196
- const metadataFolder = this.parseAsFolderMetadataXml(fsPath);
197
- if (metadataFolder) {
198
- // multiple matching directories may exist - folder components are not 'inFolder'
199
- resolvedType = this.registry.findType((type) => type.directoryName === metadataFolder && !type.inFolder);
200
- }
201
- }
202
- // attempt 3 - try treating the file extension name as a suffix
203
- if (!resolvedType) {
204
- resolvedType = this.registry.getTypeBySuffix((0, utils_1.extName)(fsPath));
205
- // Metadata types with `strictDirectoryName` should have been caught in "attempt 1".
206
- // If the metadata returned from this lookup has a `strictDirectoryName`, something is wrong.
207
- // It is likely that the metadata file is misspelled or has the wrong suffix.
208
- // A common occurrence is that a misspelled metadata file will fall back to
209
- // `EmailServicesFunction` because that is the default for the `.xml` suffix
210
- if (resolvedType?.strictDirectoryName === true) {
211
- resolvedType = undefined;
212
- }
137
+ }
138
+ exports.MetadataResolver = MetadataResolver;
139
+ const isProbablyPackageManifest = (tree) => (fsPath) => {
140
+ // Perform some additional checks to see if this is a package manifest
141
+ if (fsPath.endsWith('.xml') && !fsPath.endsWith(constants_1.META_XML_SUFFIX)) {
142
+ // If it is named the default package.xml, assume it is a package manifest
143
+ if (fsPath.endsWith('package.xml'))
144
+ return true;
145
+ try {
146
+ // If the file contains the string "<Package xmlns", it is a package manifest
147
+ if (tree.readFileSync(fsPath).toString().includes('<Package xmlns'))
148
+ return true;
213
149
  }
214
- // attempt 4 - try treating the content as metadata
215
- if (!resolvedType) {
216
- const metadata = this.parseAsMetadata(fsPath);
217
- if (metadata) {
218
- resolvedType = this.registry.getTypeByName(metadata);
150
+ catch (err) {
151
+ const error = err;
152
+ if (error.message === 'Method not implemented') {
153
+ // Currently readFileSync is not implemented for zipTreeContainer
154
+ // Ignoring since this would have been ignored in the past
155
+ core_1.Logger.childFromRoot('metadataResolver.isProbablyPackageManifest').warn(`Type could not be inferred for ${fsPath}. It is likely this is a package manifest. Skipping...`);
156
+ return true;
219
157
  }
158
+ return false;
220
159
  }
221
- return resolvedType;
222
160
  }
223
- /**
224
- * Attempt to find similar types for types that could not be inferred
225
- * To be used after executing the resolveType() method
226
- *
227
- * @param fsPath
228
- * @returns an array of suggestions
229
- */
230
- getSuggestionsForUnresolvedTypes(fsPath) {
231
- const parsedMetaXml = (0, utils_1.parseMetadataXml)(fsPath);
232
- const metaSuffix = parsedMetaXml?.suffix;
233
- // Finds close matches for meta suffixes
234
- // Examples: https://regex101.com/r/vbRjwy/1
235
- const closeMetaSuffix = new RegExp(/.+\.([^.-]+)(?:-.*)?\.xml/).exec((0, node_path_1.basename)(fsPath));
236
- let guesses;
237
- if (metaSuffix) {
238
- guesses = this.registry.guessTypeBySuffix(metaSuffix);
239
- }
240
- else if (!metaSuffix && closeMetaSuffix) {
241
- guesses = this.registry.guessTypeBySuffix(closeMetaSuffix[1]);
242
- }
243
- else {
244
- guesses = this.registry.guessTypeBySuffix((0, utils_1.extName)(fsPath));
161
+ return false;
162
+ };
163
+ /**
164
+ * Whether or not a directory that represents a single component should be resolved as one,
165
+ * or if it should be walked for additional components.
166
+ *
167
+ * If a type can be determined from a directory path, and the end part of the path isn't
168
+ * the directoryName of the type itself, infer the path is part of a mixedContent component
169
+ *
170
+ * @param dirPath Path to a directory
171
+ */
172
+ const resolveDirectoryAsComponent = (registry) => (tree) => (dirPath) => {
173
+ const type = resolveType(registry)(tree)(dirPath);
174
+ if (type) {
175
+ const { directoryName, inFolder } = type;
176
+ const parts = dirPath.split(node_path_1.sep);
177
+ const folderOffset = inFolder ? 2 : 1;
178
+ const typeDirectoryIndex = parts.lastIndexOf(directoryName);
179
+ if (typeDirectoryIndex === -1 ||
180
+ parts.length - folderOffset <= typeDirectoryIndex ||
181
+ // ex: /lwc/folder/lwc/cmp
182
+ tree.readDirectory(dirPath).includes(type.directoryName) ||
183
+ // types with children may want to resolve them individually
184
+ type.children) {
185
+ return false;
245
186
  }
246
- // If guesses were found, format an array of strings to be passed to SfError's actions
247
- return guesses && guesses.length > 0
248
- ? [
249
- messages.getMessage('suggest_type_header', [(0, node_path_1.basename)(fsPath)]),
250
- ...guesses.map((guess) => messages.getMessage('suggest_type_did_you_mean', [
251
- guess.suffixGuess,
252
- typeof metaSuffix === 'string' || closeMetaSuffix ? '-meta.xml' : '',
253
- guess.metadataTypeGuess.name,
254
- ])),
255
- '', // A blank line makes this much easier to read (it doesn't seem to be possible to start a markdown message entry with a newline)
256
- messages.getMessage('suggest_type_more_suggestions'),
257
- ]
258
- : [];
259
187
  }
260
- /**
261
- * Whether or not a directory that represents a single component should be resolved as one,
262
- * or if it should be walked for additional components.
263
- *
264
- * If a type can be determined from a directory path, and the end part of the path isn't
265
- * the directoryName of the type itself, infer the path is part of a mixedContent component
266
- *
267
- * @param dirPath Path to a directory
268
- */
269
- resolveDirectoryAsComponent(dirPath) {
270
- let shouldResolve = true;
271
- const type = this.resolveType(dirPath);
272
- if (type) {
273
- const { directoryName, inFolder } = type;
274
- const parts = dirPath.split(node_path_1.sep);
275
- const folderOffset = inFolder ? 2 : 1;
276
- const typeDirectoryIndex = parts.lastIndexOf(directoryName);
277
- if (typeDirectoryIndex === -1 ||
278
- parts.length - folderOffset <= typeDirectoryIndex ||
279
- // ex: /lwc/folder/lwc/cmp
280
- this.tree.readDirectory(dirPath).includes(type.directoryName) ||
281
- // types with children may want to resolve them individually
282
- type.children) {
283
- shouldResolve = false;
284
- }
285
- }
286
- else {
287
- shouldResolve = false;
188
+ else {
189
+ return false;
190
+ }
191
+ return true;
192
+ };
193
+ const isMetadata = (registry) => (tree) => (fsPath) => !!(0, path_1.parseMetadataXml)(fsPath) ||
194
+ parseAsContentMetadataXml(registry)(fsPath) ||
195
+ !!parseAsFolderMetadataXml(registry)(fsPath) ||
196
+ !!parseAsMetadata(registry)(tree)(fsPath);
197
+ /**
198
+ * Attempt to find similar types for types that could not be inferred
199
+ * To be used after executing the resolveType() method
200
+ *
201
+ * @param fsPath
202
+ * @returns an array of suggestions
203
+ */
204
+ const getSuggestionsForUnresolvedTypes = (registry) => (fsPath) => {
205
+ const parsedMetaXml = (0, path_1.parseMetadataXml)(fsPath);
206
+ const metaSuffix = parsedMetaXml?.suffix;
207
+ // Finds close matches for meta suffixes
208
+ // Examples: https://regex101.com/r/vbRjwy/1
209
+ const closeMetaSuffix = new RegExp(/.+\.([^.-]+)(?:-.*)?\.xml/).exec((0, node_path_1.basename)(fsPath));
210
+ let guesses;
211
+ if (metaSuffix) {
212
+ guesses = registry.guessTypeBySuffix(metaSuffix);
213
+ }
214
+ else if (!metaSuffix && closeMetaSuffix) {
215
+ guesses = registry.guessTypeBySuffix(closeMetaSuffix[1]);
216
+ }
217
+ else {
218
+ guesses = registry.guessTypeBySuffix((0, path_1.extName)(fsPath));
219
+ }
220
+ // If guesses were found, format an array of strings to be passed to SfError's actions
221
+ return guesses && guesses.length > 0
222
+ ? [
223
+ messages.getMessage('suggest_type_header', [(0, node_path_1.basename)(fsPath)]),
224
+ ...guesses.map((guess) => messages.getMessage('suggest_type_did_you_mean', [
225
+ guess.suffixGuess,
226
+ typeof metaSuffix === 'string' || closeMetaSuffix ? '-meta.xml' : '',
227
+ guess.metadataTypeGuess.name,
228
+ ])),
229
+ '', // A blank line makes this much easier to read (it doesn't seem to be possible to start a markdown message entry with a newline)
230
+ messages.getMessage('suggest_type_more_suggestions'),
231
+ ]
232
+ : [];
233
+ };
234
+ // Get the array of directoryNames for types that have folderContentType
235
+ const getFolderContentTypeDirNames = (registry) => registry.getFolderContentTypes().map((t) => t.directoryName);
236
+ /**
237
+ * Identify metadata xml for a folder component:
238
+ * .../email/TestFolder-meta.xml
239
+ * .../reports/foo/bar-meta.xml
240
+ *
241
+ * Do not match this pattern:
242
+ * .../tabs/TestFolder.tab-meta.xml
243
+ */
244
+ const parseAsFolderMetadataXml = (registry) => (fsPath) => {
245
+ let folderName;
246
+ const match = new RegExp(/(.+)-meta\.xml/).exec((0, node_path_1.basename)(fsPath));
247
+ if (match && !match[1].includes('.')) {
248
+ const parts = fsPath.split(node_path_1.sep);
249
+ if (parts.length > 1) {
250
+ const folderContentTypesDirs = getFolderContentTypeDirNames(registry);
251
+ // check if the path contains a folder content name as a directory
252
+ // e.g., `/reports/` and if it does return that folder name.
253
+ folderContentTypesDirs.some((dirName) => {
254
+ if (fsPath.includes(`${node_path_1.sep}${dirName}${node_path_1.sep}`)) {
255
+ folderName = dirName;
256
+ }
257
+ });
288
258
  }
289
- return shouldResolve;
290
259
  }
291
- /**
292
- * Any file with a registered suffix is potentially a content metadata file.
293
- *
294
- * @param fsPath File path of a potential content metadata file
295
- */
296
- parseAsContentMetadataXml(fsPath) {
297
- return !!this.registry.getTypeBySuffix((0, utils_1.extName)(fsPath));
260
+ return folderName;
261
+ };
262
+ const resolveType = (registry) => (tree) => (fsPath) => {
263
+ // attempt 1 - check if the file is part of a component that requires a strict type folder
264
+ let resolvedType = resolveTypeFromStrictFolder(registry)(fsPath);
265
+ // attempt 2 - check if it's a metadata xml file
266
+ if (!resolvedType) {
267
+ const parsedMetaXml = (0, path_1.parseMetadataXml)(fsPath);
268
+ if (parsedMetaXml?.suffix) {
269
+ resolvedType = registry.getTypeBySuffix(parsedMetaXml.suffix);
270
+ }
298
271
  }
299
- // Get the array of directoryNames for types that have folderContentType
300
- getFolderContentTypeDirNames() {
301
- if (!this.folderContentTypeDirNames) {
302
- this.folderContentTypeDirNames = this.registry.getFolderContentTypes().map((t) => t.directoryName);
272
+ // attempt 2.5 - test for a folder style xml file
273
+ if (!resolvedType) {
274
+ const metadataFolder = parseAsFolderMetadataXml(registry)(fsPath);
275
+ if (metadataFolder) {
276
+ // multiple matching directories may exist - folder components are not 'inFolder'
277
+ resolvedType = registry.findType((type) => type.directoryName === metadataFolder && !type.inFolder);
303
278
  }
304
- return this.folderContentTypeDirNames;
305
279
  }
306
- /**
307
- * Identify metadata xml for a folder component:
308
- * .../email/TestFolder-meta.xml
309
- * .../reports/foo/bar-meta.xml
310
- *
311
- * Do not match this pattern:
312
- * .../tabs/TestFolder.tab-meta.xml
313
- */
314
- parseAsFolderMetadataXml(fsPath) {
315
- let folderName;
316
- const match = new RegExp(/(.+)-meta\.xml/).exec((0, node_path_1.basename)(fsPath));
317
- if (match && !match[1].includes('.')) {
318
- const parts = fsPath.split(node_path_1.sep);
319
- if (parts.length > 1) {
320
- const folderContentTypesDirs = this.getFolderContentTypeDirNames();
321
- // check if the path contains a folder content name as a directory
322
- // e.g., `/reports/` and if it does return that folder name.
323
- folderContentTypesDirs.some((dirName) => {
324
- if (fsPath.includes(`${node_path_1.sep}${dirName}${node_path_1.sep}`)) {
325
- folderName = dirName;
326
- }
327
- });
328
- }
280
+ // attempt 3 - try treating the file extension name as a suffix
281
+ if (!resolvedType) {
282
+ resolvedType = registry.getTypeBySuffix((0, path_1.extName)(fsPath));
283
+ // Metadata types with `strictDirectoryName` should have been caught in "attempt 1".
284
+ // If the metadata returned from this lookup has a `strictDirectoryName`, something is wrong.
285
+ // It is likely that the metadata file is misspelled or has the wrong suffix.
286
+ // A common occurrence is that a misspelled metadata file will fall back to
287
+ // `EmailServicesFunction` because that is the default for the `.xml` suffix
288
+ if (resolvedType?.strictDirectoryName === true) {
289
+ resolvedType = undefined;
329
290
  }
330
- return folderName;
331
291
  }
332
- /**
333
- * If this file should be considered as a metadata file then return the metadata type
334
- */
335
- parseAsMetadata(fsPath) {
336
- if (this.tree.isDirectory(fsPath)) {
337
- return;
292
+ // attempt 4 - try treating the content as metadata
293
+ if (!resolvedType) {
294
+ const metadata = parseAsMetadata(registry)(tree)(fsPath);
295
+ if (metadata) {
296
+ resolvedType = registry.getTypeByName(metadata);
338
297
  }
339
- return ['DigitalExperience', 'ExperiencePropertyTypeBundle']
340
- .map((type) => this.registry.getTypeByName(type))
341
- .find((type) => fsPath.split(node_path_1.sep).includes(type.directoryName))?.name;
342
298
  }
343
- isMetadata(fsPath) {
344
- return (!!(0, utils_1.parseMetadataXml)(fsPath) ||
345
- this.parseAsContentMetadataXml(fsPath) ||
346
- !!this.parseAsFolderMetadataXml(fsPath) ||
347
- !!this.parseAsMetadata(fsPath));
299
+ return resolvedType;
300
+ };
301
+ /**
302
+ * Any file with a registered suffix is potentially a content metadata file.
303
+ *
304
+ * @param fsPath File path of a potential content metadata file
305
+ */
306
+ const parseAsContentMetadataXml = (registry) => (fsPath) => Boolean(registry.getTypeBySuffix((0, path_1.extName)(fsPath)));
307
+ /**
308
+ * If this file should be considered as a metadata file then return the metadata type
309
+ */
310
+ const parseAsMetadata = (registry) => (tree) => (fsPath) => {
311
+ if (tree.isDirectory(fsPath)) {
312
+ return;
348
313
  }
349
- }
350
- exports.MetadataResolver = MetadataResolver;
314
+ return ['DigitalExperience', 'ExperiencePropertyTypeBundle']
315
+ .map((type) => registry.getTypeByName(type))
316
+ .find((type) => fsPath.split(node_path_1.sep).includes(type.directoryName))?.name;
317
+ };
318
+ const resolveTypeFromStrictFolder = (registry) => (fsPath) => {
319
+ const pathParts = fsPath.split(node_path_1.sep);
320
+ // first, filter out types that don't appear in the path
321
+ // then iterate using for/of to allow for early break
322
+ return registry
323
+ .getStrictFolderTypes()
324
+ .filter(pathIncludesDirName(pathParts)) // the type's directory is in the path
325
+ .filter(folderTypeFilter(fsPath))
326
+ .find((type) =>
327
+ // any of the following 3 options is considered a good match
328
+ isMixedContentOrBundle(type) || suffixMatches(type, fsPath) || childSuffixMatches(type, fsPath));
329
+ };
330
+ /** the type has children and the file suffix (in source format) matches a child type suffix of the type we think it is */
331
+ const childSuffixMatches = (type, fsPath) => Object.values(type.children?.types ?? {})
332
+ .map((childType) => `${childType.suffix}${constants_1.META_XML_SUFFIX}`)
333
+ .some((s) => fsPath.endsWith(s));
334
+ /** the file suffix (in source or mdapi format) matches the type suffix we think it is */
335
+ const suffixMatches = (type, fsPath) => typeof type.suffix === 'string' && [type.suffix, `${type.suffix}${constants_1.META_XML_SUFFIX}`].some((s) => fsPath.endsWith(s));
336
+ const isMixedContentOrBundle = (type) => typeof type.strategies?.adapter === 'string' && ['mixedContent', 'bundle'].includes(type.strategies.adapter);
337
+ /** types with folders only have folder components living at the top level.
338
+ * if the fsPath is a folder component, let a future strategy deal with it
339
+ */
340
+ const folderTypeFilter = (fsPath) => (type) => !type.inFolder || (0, path_1.parentName)(fsPath) !== type.directoryName;
341
+ const pathIncludesDirName = (parts) => (type) => parts.includes(type.directoryName);
351
342
  /**
352
343
  * Any metadata xml file (-meta.xml) is potentially a root metadata file.
353
344
  *
354
345
  * @param fsPath File path of a potential metadata xml file
355
346
  */
356
- const parseAsRootMetadataXml = (fsPath) => Boolean((0, utils_1.parseMetadataXml)(fsPath));
347
+ const parseAsRootMetadataXml = (fsPath) => Boolean((0, path_1.parseMetadataXml)(fsPath));
357
348
  //# sourceMappingURL=metadataResolver.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"metadataResolver.js","sourceRoot":"","sources":["../../../src/resolve/metadataResolver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"metadataResolver.js","sourceRoot":"","sources":["../../../src/resolve/metadataResolver.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import { JsonMap } from '@salesforce/ts-types';
2
- import { SfdxFileFormat } from '../convert';
3
- import { MetadataType } from '../registry';
4
- import { DestructiveChangesType } from '../collections';
2
+ import { SfdxFileFormat } from '../convert/types';
3
+ import { MetadataType } from '../registry/types';
4
+ import { DestructiveChangesType } from '../collections/types';
5
5
  import { MarkedReplacement } from '../convert/types';
6
6
  import { MetadataComponent, VirtualDirectory } from './types';
7
7
  import { TreeContainer } from './treeContainers';
@@ -98,7 +98,6 @@ export declare class SourceComponent implements MetadataComponent {
98
98
  isMarkedForDelete(): boolean;
99
99
  getDestructiveChangesType(): DestructiveChangesType | undefined;
100
100
  setMarkedForDelete(destructiveChangeType?: DestructiveChangesType | boolean): void;
101
- private calculateRelativePath;
102
101
  private parse;
103
102
  private parseAndValidateXML;
104
103
  private getDecomposedChildren;