sfdx-git-delta 6.41.1 → 6.41.2

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 (55) hide show
  1. package/README.md +1 -2
  2. package/lib/adapter/GitAdapter.d.ts +3 -1
  3. package/lib/adapter/GitAdapter.js +62 -52
  4. package/lib/adapter/GitAdapter.js.map +1 -1
  5. package/lib/adapter/gitBatchCatFile.d.ts +4 -1
  6. package/lib/adapter/gitBatchCatFile.js +30 -8
  7. package/lib/adapter/gitBatchCatFile.js.map +1 -1
  8. package/lib/adapter/treeIndex.d.ts +18 -0
  9. package/lib/adapter/treeIndex.js +75 -0
  10. package/lib/adapter/treeIndex.js.map +1 -0
  11. package/lib/metadata/MetadataRepository.d.ts +1 -0
  12. package/lib/metadata/MetadataRepositoryImpl.d.ts +1 -0
  13. package/lib/metadata/MetadataRepositoryImpl.js +13 -12
  14. package/lib/metadata/MetadataRepositoryImpl.js.map +1 -1
  15. package/lib/metadata/metadataManager.js +22 -14
  16. package/lib/metadata/metadataManager.js.map +1 -1
  17. package/lib/post-processor/flowTranslationProcessor.d.ts +1 -1
  18. package/lib/post-processor/flowTranslationProcessor.js.map +1 -1
  19. package/lib/post-processor/packageGenerator.js +13 -4
  20. package/lib/post-processor/packageGenerator.js.map +1 -1
  21. package/lib/service/inBundleHandler.js +7 -1
  22. package/lib/service/inBundleHandler.js.map +1 -1
  23. package/lib/service/inResourceHandler.js +9 -1
  24. package/lib/service/inResourceHandler.js.map +1 -1
  25. package/lib/service/reportingFolderHandler.js +4 -0
  26. package/lib/service/reportingFolderHandler.js.map +1 -1
  27. package/lib/service/sharedFolderHandler.js +4 -0
  28. package/lib/service/sharedFolderHandler.js.map +1 -1
  29. package/lib/service/typeHandlerFactory.d.ts +1 -2
  30. package/lib/service/typeHandlerFactory.js +8 -9
  31. package/lib/service/typeHandlerFactory.js.map +1 -1
  32. package/lib/utils/LoggingDecorator.d.ts +1 -1
  33. package/lib/utils/LoggingDecorator.js +26 -10
  34. package/lib/utils/LoggingDecorator.js.map +1 -1
  35. package/lib/utils/configValidator.js +4 -6
  36. package/lib/utils/configValidator.js.map +1 -1
  37. package/lib/utils/fsHelper.d.ts +1 -0
  38. package/lib/utils/fsHelper.js +3 -0
  39. package/lib/utils/fsHelper.js.map +1 -1
  40. package/lib/utils/ignoreHelper.d.ts +2 -0
  41. package/lib/utils/ignoreHelper.js +21 -19
  42. package/lib/utils/ignoreHelper.js.map +1 -1
  43. package/lib/utils/metadataDiff.js +2 -1
  44. package/lib/utils/metadataDiff.js.map +1 -1
  45. package/lib/utils/metadataElement.js +1 -3
  46. package/lib/utils/metadataElement.js.map +1 -1
  47. package/lib/utils/packageHelper.js +7 -3
  48. package/lib/utils/packageHelper.js.map +1 -1
  49. package/lib/utils/repoGitDiff.js +3 -4
  50. package/lib/utils/repoGitDiff.js.map +1 -1
  51. package/lib/utils/xmlHelper.js +7 -5
  52. package/lib/utils/xmlHelper.js.map +1 -1
  53. package/npm-shrinkwrap.json +159 -166
  54. package/oclif.manifest.json +1 -1
  55. package/package.json +14 -11
package/README.md CHANGED
@@ -4,7 +4,6 @@
4
4
  [![npm](https://badgen.net/npm/v/sfdx-git-delta)](https://badgen.net/npm/v/sfdx-git-delta)
5
5
  [![Maintainability](https://api.codeclimate.com/v1/badges/95619399c7bb2cf60da4/maintainability)](https://codeclimate.com/github/scolladon/sfdx-git-delta/maintainability)
6
6
  [![Code Coverage](https://codecov.io/gh/scolladon/sfdx-git-delta/branch/main/graph/badge.svg?token=92T8XKKBHN)](https://codecov.io/gh/scolladon/sfdx-git-delta)
7
- [![Known Vulnerabilities](https://snyk.io//test/github/scolladon/sfdx-git-delta/badge.svg?targetFile=package.json)](https://snyk.io//test/github/scolladon/sfdx-git-delta?targetFile=package.json)
8
7
  [![downloads](https://badgen.net/npm/dw/sfdx-git-delta)](https://badgen.net/npm/dw/sfdx-git-delta)
9
8
  ![GitHub Sponsors](https://img.shields.io/github/sponsors/scolladon)
10
9
 
@@ -201,7 +200,7 @@ FLAG DESCRIPTIONS
201
200
  of a diff, in which case changes may still be picked up.
202
201
  ```
203
202
 
204
- _See code: [src/commands/sgd/source/delta.ts](https://github.com/scolladon/sfdx-git-delta/blob/v6.41.1/src/commands/sgd/source/delta.ts)_
203
+ _See code: [src/commands/sgd/source/delta.ts](https://github.com/scolladon/sfdx-git-delta/blob/v6.41.2/src/commands/sgd/source/delta.ts)_
205
204
  <!-- commandsstop -->
206
205
 
207
206
  ### Windows users
@@ -2,12 +2,14 @@ import { SimpleGit } from 'simple-git';
2
2
  import type { Config } from '../types/config.js';
3
3
  import type { FileGitRef } from '../types/git.js';
4
4
  import { GitBatchCatFile } from './gitBatchCatFile.js';
5
+ import { TreeIndex } from './treeIndex.js';
5
6
  export default class GitAdapter {
6
7
  protected readonly config: Config;
7
8
  private static instances;
9
+ private static keyFor;
8
10
  static getInstance(config: Config): GitAdapter;
9
11
  protected readonly simpleGit: SimpleGit;
10
- protected readonly treeIndex: Map<string, Set<string>>;
12
+ protected readonly treeIndex: Map<string, TreeIndex>;
11
13
  protected batchCatFile: GitBatchCatFile | null;
12
14
  private constructor();
13
15
  protected getBatchCatFile(): GitBatchCatFile;
@@ -2,7 +2,7 @@ import { __decorate } from "tslib";
2
2
  import { readFile } from 'node:fs/promises';
3
3
  import { join } from 'node:path/posix';
4
4
  import { simpleGit } from 'simple-git';
5
- import { PATH_SEP, UTF8_ENCODING } from '../constant/fsConstants.js';
5
+ import { UTF8_ENCODING } from '../constant/fsConstants.js';
6
6
  import { ADDITION, DELETION, HEAD, IGNORE_WHITESPACE_PARAMS, MODIFICATION, NUM_STAT_CHANGE_INFORMATION, } from '../constant/gitConstants.js';
7
7
  import { pushAll } from '../utils/arrayUtils.js';
8
8
  import { getErrorMessage } from '../utils/errorUtils.js';
@@ -11,17 +11,24 @@ import { getLFSObjectContentPath, isLFS } from '../utils/gitLfsHelper.js';
11
11
  import { log } from '../utils/LoggingDecorator.js';
12
12
  import { Logger, lazy } from '../utils/LoggingService.js';
13
13
  import { GitBatchCatFile } from './gitBatchCatFile.js';
14
- const EOL = new RegExp(/\r?\n/);
14
+ import { TreeIndex } from './treeIndex.js';
15
+ const EOL = /\r?\n/;
15
16
  const ROOT_PATHS = new Set(['', '.', './']);
16
17
  export default class GitAdapter {
17
18
  config;
18
19
  static instances = new Map();
20
+ // Keyed by repo+to so spread copies of the same config (e.g. ioExecutor's
21
+ // per-revision {...config, to: rev}) share one adapter instead of spawning
22
+ // a fresh git cat-file subprocess per call.
23
+ static keyFor(config) {
24
+ return `${config.repo}\0${config.to}`;
25
+ }
19
26
  static getInstance(config) {
20
- if (!GitAdapter.instances.has(config)) {
21
- const instance = new GitAdapter(config);
22
- GitAdapter.instances.set(config, instance);
27
+ const key = GitAdapter.keyFor(config);
28
+ if (!GitAdapter.instances.has(key)) {
29
+ GitAdapter.instances.set(key, new GitAdapter(config));
23
30
  }
24
- return GitAdapter.instances.get(config);
31
+ return GitAdapter.instances.get(key);
25
32
  }
26
33
  simpleGit;
27
34
  treeIndex;
@@ -64,31 +71,24 @@ export default class GitAdapter {
64
71
  args.push('--', ...scopePaths);
65
72
  }
66
73
  const output = await this.simpleGit.raw(args);
67
- const files = new Set(output
68
- .split(EOL)
69
- .filter(line => line)
70
- .map(line => treatPathSep(line)));
71
- this.treeIndex.set(revision, files);
74
+ const index = new TreeIndex();
75
+ for (const line of output.split(EOL)) {
76
+ if (line)
77
+ index.add(treatPathSep(line));
78
+ }
79
+ this.treeIndex.set(revision, index);
72
80
  }
73
81
  catch (error) {
74
82
  Logger.debug(lazy `preBuildTreeIndex: scoped ls-tree for '${revision}' failed: ${() => getErrorMessage(error)}`);
75
83
  }
76
84
  }
77
85
  pathExistsImpl(path, revision) {
78
- const index = this.treeIndex.get(revision) ?? new Set();
79
- if (ROOT_PATHS.has(path)) {
86
+ const index = this.treeIndex.get(revision);
87
+ if (!index)
88
+ return false;
89
+ if (ROOT_PATHS.has(path))
80
90
  return index.size > 0;
81
- }
82
- if (index.has(path)) {
83
- return true;
84
- }
85
- const dirPrefix = `${path}${PATH_SEP}`;
86
- for (const filePath of index) {
87
- if (filePath.startsWith(dirPrefix)) {
88
- return true;
89
- }
90
- }
91
- return false;
91
+ return index.hasPath(path);
92
92
  }
93
93
  async pathExists(path, revision = this.config.to) {
94
94
  return this.pathExistsImpl(path, revision);
@@ -109,21 +109,14 @@ export default class GitAdapter {
109
109
  return content.toString(UTF8_ENCODING);
110
110
  }
111
111
  getFilesPathCached(path, revision) {
112
- const index = this.treeIndex.get(revision) ?? new Set();
113
- if (ROOT_PATHS.has(path)) {
114
- return Array.from(index);
115
- }
116
- if (index.has(path)) {
112
+ const index = this.treeIndex.get(revision);
113
+ if (!index)
114
+ return [];
115
+ if (ROOT_PATHS.has(path))
116
+ return index.allPaths();
117
+ if (index.has(path))
117
118
  return [path];
118
- }
119
- const dirPrefix = `${path}${PATH_SEP}`;
120
- const result = [];
121
- for (const filePath of index) {
122
- if (filePath.startsWith(dirPrefix)) {
123
- result.push(filePath);
124
- }
125
- }
126
- return result;
119
+ return index.getFilesUnder(path);
127
120
  }
128
121
  async getFilesPath(paths, revision = this.config.to) {
129
122
  if (typeof paths === 'string') {
@@ -131,23 +124,15 @@ export default class GitAdapter {
131
124
  }
132
125
  const result = [];
133
126
  for (const path of paths) {
134
- const filesPath = await this.getFilesPathCached(path, revision);
135
- pushAll(result, filesPath);
127
+ pushAll(result, this.getFilesPathCached(path, revision));
136
128
  }
137
129
  return result;
138
130
  }
139
131
  async listDirAtRevision(dir, revision) {
140
- const index = this.treeIndex.get(revision) ?? new Set();
141
- const dirPrefix = dir ? `${dir}${PATH_SEP}` : '';
142
- const children = new Set();
143
- for (const filePath of index) {
144
- if (filePath.startsWith(dirPrefix)) {
145
- const rest = filePath.slice(dirPrefix.length);
146
- const firstSegment = rest.split(PATH_SEP)[0];
147
- children.add(firstSegment);
148
- }
149
- }
150
- return Array.from(children);
132
+ const index = this.treeIndex.get(revision);
133
+ if (!index)
134
+ return [];
135
+ return index.listChildren(dir);
151
136
  }
152
137
  async gitGrep(pattern, path, revision = this.config.to) {
153
138
  try {
@@ -170,13 +155,38 @@ export default class GitAdapter {
170
155
  return [];
171
156
  }
172
157
  }
158
+ // Fast path (no whitespace ignore): one `git diff --name-status` call.
159
+ //
160
+ // Whitespace path: three parallel `git diff --numstat --diff-filter=X`
161
+ // calls. `--name-status` does NOT honor `--ignore-all-space` — git decides
162
+ // A/M/D from blob SHAs for that mode, so a whitespace-only change still
163
+ // appears as `M`. Only `--numstat` computes a real content diff under the
164
+ // whitespace flags, so files with 0/0 line changes drop out naturally.
165
+ // A and D can't produce whitespace-only false positives, so the expensive
166
+ // path is only needed to correctly filter M.
173
167
  async getDiffLines() {
168
+ if (!this.config.ignoreWhitespace) {
169
+ const output = await this.simpleGit.raw([
170
+ 'diff',
171
+ '--name-status',
172
+ '--no-renames',
173
+ '--diff-filter=AMD',
174
+ this.config.from,
175
+ this.config.to,
176
+ '--',
177
+ ...this.config.source,
178
+ ]);
179
+ return output
180
+ .split(EOL)
181
+ .filter(Boolean)
182
+ .map(line => treatPathSep(line));
183
+ }
174
184
  const results = await Promise.all([ADDITION, MODIFICATION, DELETION].map(async (changeType) => {
175
185
  const output = await this.simpleGit.raw([
176
186
  'diff',
177
187
  '--numstat',
178
188
  '--no-renames',
179
- ...(this.config.ignoreWhitespace ? IGNORE_WHITESPACE_PARAMS : []),
189
+ ...IGNORE_WHITESPACE_PARAMS,
180
190
  `--diff-filter=${changeType}`,
181
191
  this.config.from,
182
192
  this.config.to,
@@ -1 +1 @@
1
- {"version":3,"file":"GitAdapter.js","sourceRoot":"","sources":["../../src/adapter/GitAdapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"GitAdapter.js","sourceRoot":"","sources":["../../src/adapter/GitAdapter.ts"],"names":[],"mappings":"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"}
@@ -6,11 +6,14 @@ type PendingRequest = {
6
6
  export declare class GitBatchCatFile {
7
7
  protected process: ChildProcessWithoutNullStreams;
8
8
  protected queue: PendingRequest[];
9
- protected buffer: Buffer;
9
+ protected chunks: Buffer[];
10
+ protected totalLength: number;
10
11
  protected pendingSize: number;
11
12
  constructor(cwd: string);
12
13
  getContent(revision: string, path: string): Promise<Buffer>;
13
14
  protected _onData(chunk: Buffer): void;
15
+ protected _materializeBuffer(): Buffer;
16
+ protected _advance(buffer: Buffer, consumed: number): Buffer;
14
17
  protected _processBuffer(): void;
15
18
  close(): void;
16
19
  }
@@ -5,7 +5,8 @@ import { Logger, lazy } from '../utils/LoggingService.js';
5
5
  export class GitBatchCatFile {
6
6
  process;
7
7
  queue = [];
8
- buffer = Buffer.alloc(0);
8
+ chunks = [];
9
+ totalLength = 0;
9
10
  pendingSize = -1;
10
11
  constructor(cwd) {
11
12
  this.process = spawn('git', ['cat-file', '--batch'], {
@@ -36,17 +37,38 @@ export class GitBatchCatFile {
36
37
  });
37
38
  }
38
39
  _onData(chunk) {
39
- this.buffer = Buffer.concat([this.buffer, chunk]);
40
+ this.chunks.push(chunk);
41
+ this.totalLength += chunk.length;
40
42
  this._processBuffer();
41
43
  }
44
+ _materializeBuffer() {
45
+ if (this.chunks.length === 1)
46
+ return this.chunks[0];
47
+ const merged = Buffer.concat(this.chunks, this.totalLength);
48
+ this.chunks = [merged];
49
+ return merged;
50
+ }
51
+ _advance(buffer, consumed) {
52
+ const rest = buffer.subarray(consumed);
53
+ if (rest.length === 0) {
54
+ this.chunks = [];
55
+ this.totalLength = 0;
56
+ }
57
+ else {
58
+ this.chunks = [rest];
59
+ this.totalLength = rest.length;
60
+ }
61
+ return rest;
62
+ }
42
63
  _processBuffer() {
64
+ let buffer = this._materializeBuffer();
43
65
  while (this.queue.length > 0) {
44
66
  if (this.pendingSize === -1) {
45
- const newlineIdx = this.buffer.indexOf(0x0a);
67
+ const newlineIdx = buffer.indexOf(0x0a);
46
68
  if (newlineIdx === -1)
47
69
  return;
48
- const header = this.buffer.subarray(0, newlineIdx).toString();
49
- this.buffer = this.buffer.subarray(newlineIdx + 1);
70
+ const header = buffer.subarray(0, newlineIdx).toString();
71
+ buffer = this._advance(buffer, newlineIdx + 1);
50
72
  if (header.endsWith('missing')) {
51
73
  this.queue.shift().reject(new Error(`Object not found: ${header}`));
52
74
  continue;
@@ -59,10 +81,10 @@ export class GitBatchCatFile {
59
81
  continue;
60
82
  }
61
83
  }
62
- if (this.buffer.length < this.pendingSize + 1)
84
+ if (buffer.length < this.pendingSize + 1)
63
85
  return;
64
- const content = Buffer.from(this.buffer.subarray(0, this.pendingSize));
65
- this.buffer = this.buffer.subarray(this.pendingSize + 1);
86
+ const content = Buffer.from(buffer.subarray(0, this.pendingSize));
87
+ buffer = this._advance(buffer, this.pendingSize + 1);
66
88
  this.pendingSize = -1;
67
89
  this.queue.shift().resolve(content);
68
90
  }
@@ -1 +1 @@
1
- {"version":3,"file":"gitBatchCatFile.js","sourceRoot":"","sources":["../../src/adapter/gitBatchCatFile.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"gitBatchCatFile.js","sourceRoot":"","sources":["../../src/adapter/gitBatchCatFile.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ type TrieNode = {
2
+ children: Map<string, TrieNode>;
3
+ isFile: boolean;
4
+ };
5
+ export declare class TreeIndex {
6
+ protected readonly root: TrieNode;
7
+ protected fileCount: number;
8
+ add(path: string): void;
9
+ has(path: string): boolean;
10
+ hasPath(path: string): boolean;
11
+ listChildren(dir: string): string[];
12
+ getFilesUnder(dir: string): string[];
13
+ allPaths(): string[];
14
+ get size(): number;
15
+ protected navigate(path: string): TrieNode | undefined;
16
+ protected collectFiles(node: TrieNode, prefix: string, out: string[]): void;
17
+ }
18
+ export {};
@@ -0,0 +1,75 @@
1
+ 'use strict';
2
+ import { PATH_SEP } from '../constant/fsConstants.js';
3
+ const createNode = () => ({
4
+ children: new Map(),
5
+ isFile: false,
6
+ });
7
+ export class TreeIndex {
8
+ root = createNode();
9
+ fileCount = 0;
10
+ add(path) {
11
+ const parts = path.split(PATH_SEP);
12
+ let node = this.root;
13
+ for (const part of parts) {
14
+ let child = node.children.get(part);
15
+ if (!child) {
16
+ child = createNode();
17
+ node.children.set(part, child);
18
+ }
19
+ node = child;
20
+ }
21
+ if (!node.isFile) {
22
+ node.isFile = true;
23
+ this.fileCount++;
24
+ }
25
+ }
26
+ has(path) {
27
+ return this.navigate(path)?.isFile === true;
28
+ }
29
+ hasPath(path) {
30
+ return this.navigate(path) !== undefined;
31
+ }
32
+ listChildren(dir) {
33
+ const node = this.navigate(dir);
34
+ return node ? Array.from(node.children.keys()) : [];
35
+ }
36
+ getFilesUnder(dir) {
37
+ const node = this.navigate(dir);
38
+ if (!node)
39
+ return [];
40
+ const result = [];
41
+ this.collectFiles(node, dir, result);
42
+ return result;
43
+ }
44
+ allPaths() {
45
+ const result = [];
46
+ this.collectFiles(this.root, '', result);
47
+ return result;
48
+ }
49
+ get size() {
50
+ return this.fileCount;
51
+ }
52
+ navigate(path) {
53
+ if (!path)
54
+ return this.root;
55
+ const parts = path.split(PATH_SEP);
56
+ let node = this.root;
57
+ for (const part of parts) {
58
+ node = node.children.get(part);
59
+ if (!node)
60
+ return undefined;
61
+ }
62
+ return node;
63
+ }
64
+ // Recursion depth is bounded by path segment count, not file count.
65
+ // Worst case under OS PATH_MAX (~4096 bytes) is well under V8's stack limit.
66
+ collectFiles(node, prefix, out) {
67
+ if (node.isFile)
68
+ out.push(prefix);
69
+ for (const [segment, child] of node.children) {
70
+ const childPath = prefix ? `${prefix}${PATH_SEP}${segment}` : segment;
71
+ this.collectFiles(child, childPath, out);
72
+ }
73
+ }
74
+ }
75
+ //# sourceMappingURL=treeIndex.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"treeIndex.js","sourceRoot":"","sources":["../../src/adapter/treeIndex.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,7 @@ import type { Metadata } from '../types/metadata.js';
2
2
  export interface MetadataRepository {
3
3
  has(path: string): boolean;
4
4
  get(path: string): Metadata | undefined;
5
+ getByXmlName(xmlName: string): Metadata | undefined;
5
6
  getFullyQualifiedName(path: string): string;
6
7
  values(): Metadata[];
7
8
  }
@@ -15,6 +15,7 @@ export declare class MetadataRepositoryImpl implements MetadataRepository {
15
15
  protected searchByExtension(parts: string[]): Metadata | undefined;
16
16
  protected searchByDirectory(parts: string[]): Metadata | undefined;
17
17
  protected searchByXmlName(xmlName: string): Metadata | undefined;
18
+ getByXmlName(xmlName: string): Metadata | undefined;
18
19
  getFullyQualifiedName(path: string): string;
19
20
  values(): Metadata[];
20
21
  private static UNSAFE_EXTENSION;
@@ -4,6 +4,7 @@ import { parse } from 'node:path/posix';
4
4
  import { DOT, PATH_SEP } from '../constant/fsConstants.js';
5
5
  import { CUSTOM_APPLICATION_SUFFIX, CUSTOM_METADATA_SUFFIX, EMAIL_SERVICES_FUNCTION_SUFFIX, METAFILE_SUFFIX, OBJECT_TRANSLATION_TYPE, OBJECT_TYPE, PERMISSIONSET_TYPE, SHARING_RULE_TYPE, SUB_OBJECT_TYPES, WORKFLOW_TYPE, } from '../constant/metadataConstants.js';
6
6
  import { log } from '../utils/LoggingDecorator.js';
7
+ const PATH_SEP_GLOBAL = new RegExp(PATH_SEP, 'g');
7
8
  export class MetadataRepositoryImpl {
8
9
  metadatas;
9
10
  metadataPerExt;
@@ -32,17 +33,14 @@ export class MetadataRepositoryImpl {
32
33
  this.addSharedFolderSuffix(metadata);
33
34
  }
34
35
  addSharedFolderSuffix(metadata) {
35
- if (metadata.content) {
36
- const metadataWithoutContent = {
37
- ...metadata,
38
- content: undefined,
39
- };
40
- for (const sharedFolderMetadataDef of metadata.content) {
41
- this.addSuffix({
42
- ...metadataWithoutContent,
43
- suffix: sharedFolderMetadataDef.suffix,
44
- });
45
- }
36
+ if (!metadata.content)
37
+ return;
38
+ const { content: _content, ...metadataWithoutContent } = metadata;
39
+ for (const sharedFolderMetadataDef of metadata.content) {
40
+ this.addSuffix({
41
+ ...metadataWithoutContent,
42
+ suffix: sharedFolderMetadataDef.suffix,
43
+ });
46
44
  }
47
45
  }
48
46
  addFolder(metadata) {
@@ -86,6 +84,9 @@ export class MetadataRepositoryImpl {
86
84
  searchByXmlName(xmlName) {
87
85
  return this.metadataPerXmlName.get(xmlName);
88
86
  }
87
+ getByXmlName(xmlName) {
88
+ return this.metadataPerXmlName.get(xmlName);
89
+ }
89
90
  getFullyQualifiedName(path) {
90
91
  let fullyQualifiedName = parse(path).base;
91
92
  const type = this.get(path);
@@ -95,7 +96,7 @@ export class MetadataRepositoryImpl {
95
96
  .find(part => this.metadataPerDir.has(part));
96
97
  fullyQualifiedName = path
97
98
  .slice(path.indexOf(parentType))
98
- .replace(new RegExp(PATH_SEP, 'g'), '');
99
+ .replace(PATH_SEP_GLOBAL, '');
99
100
  }
100
101
  return fullyQualifiedName;
101
102
  }
@@ -1 +1 @@
1
- {"version":3,"file":"MetadataRepositoryImpl.js","sourceRoot":"","sources":["../../src/metadata/MetadataRepositoryImpl.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MetadataRepositoryImpl.js","sourceRoot":"","sources":["../../src/metadata/MetadataRepositoryImpl.ts"],"names":[],"mappings":"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"}
@@ -9,13 +9,15 @@ import { MetadataDefinitionMerger } from './metadataDefinitionMerger.js';
9
9
  import { SDRMetadataAdapter } from './sdrMetadataAdapter.js';
10
10
  let inFileMetadata = new Map();
11
11
  let sharedFolderMetadata = new Map();
12
+ let packableByXmlName = new Map();
12
13
  // For testing - clears the cached metadata maps
13
14
  export const resetMetadataCache = () => {
14
15
  inFileMetadata = new Map();
15
16
  sharedFolderMetadata = new Map();
17
+ packableByXmlName = new Map();
16
18
  };
17
19
  export const getLatestSupportedVersion = async () => {
18
- return parseInt(await SDRMetadataAdapter.getLatestApiVersion());
20
+ return parseInt(await SDRMetadataAdapter.getLatestApiVersion(), 10);
19
21
  };
20
22
  export const getDefinition = async (config) => {
21
23
  const { additionalMetadataRegistryPath } = config;
@@ -61,27 +63,33 @@ export const getDefinition = async (config) => {
61
63
  const metadataRepository = new MetadataRepositoryImpl(finalMetadata);
62
64
  return metadataRepository;
63
65
  };
64
- export const isPackable = (type) => Array.from(inFileMetadata.values()).find((inFileDef) => inFileDef.xmlName === type)?.excluded !== true;
66
+ export const isPackable = (type) => packableByXmlName.get(type) !== false;
65
67
  const granularExcludedTypes = new Set([
66
68
  'Translations',
67
69
  'StandardValueSetTranslation',
68
70
  'GlobalValueSetTranslation',
69
71
  ]);
70
- export const getInFileAttributes = (metadata) => inFileMetadata.size
71
- ? inFileMetadata
72
- : metadata
73
- .values()
74
- .filter((meta) => meta.xmlTag)
75
- .reduce((acc, meta) => {
72
+ export const getInFileAttributes = (metadata) => {
73
+ if (inFileMetadata.size)
74
+ return inFileMetadata;
75
+ for (const meta of metadata.values()) {
76
+ if (!meta.xmlTag)
77
+ continue;
76
78
  const isExcluded = granularExcludedTypes.has(meta.parentXmlName || '') ||
77
- granularExcludedTypes.has(meta.xmlName || '');
78
- acc.set(meta.xmlTag, {
79
+ granularExcludedTypes.has(meta.xmlName || '') ||
80
+ !!meta.excluded;
81
+ const entry = {
79
82
  xmlName: meta.xmlName,
80
83
  key: meta.key,
81
- excluded: isExcluded || !!meta.excluded,
82
- });
83
- return acc;
84
- }, inFileMetadata);
84
+ excluded: isExcluded,
85
+ };
86
+ inFileMetadata.set(meta.xmlTag, entry);
87
+ if (meta.xmlName) {
88
+ packableByXmlName.set(meta.xmlName, !isExcluded);
89
+ }
90
+ }
91
+ return inFileMetadata;
92
+ };
85
93
  export const getSharedFolderMetadata = (metadata) => sharedFolderMetadata.size
86
94
  ? sharedFolderMetadata
87
95
  : metadata
@@ -1 +1 @@
1
- {"version":3,"file":"metadataManager.js","sourceRoot":"","sources":["../../src/metadata/metadataManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"metadataManager.js","sourceRoot":"","sources":["../../src/metadata/metadataManager.ts"],"names":[],"mappings":"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"}