sfdx-git-delta 7.1.0 → 7.3.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 (134) hide show
  1. package/README.md +27 -5
  2. package/lib/adapter/GitAdapter.d.ts +26 -12
  3. package/lib/adapter/GitAdapter.js +162 -175
  4. package/lib/adapter/GitAdapter.js.map +1 -1
  5. package/lib/adapter/ioExecutor.d.ts +6 -7
  6. package/lib/adapter/ioExecutor.js +22 -22
  7. package/lib/adapter/ioExecutor.js.map +1 -1
  8. package/lib/adapter/pathMatching.d.ts +9 -0
  9. package/lib/adapter/pathMatching.js +83 -0
  10. package/lib/adapter/pathMatching.js.map +1 -0
  11. package/lib/adapter/treeIndex.d.ts +7 -4
  12. package/lib/adapter/treeIndex.js +34 -0
  13. package/lib/adapter/treeIndex.js.map +1 -1
  14. package/lib/adapter/treeReader.d.ts +8 -0
  15. package/lib/adapter/treeReader.js +22 -0
  16. package/lib/adapter/treeReader.js.map +1 -0
  17. package/lib/commands/sgd/source/delta.d.ts +1 -0
  18. package/lib/commands/sgd/source/delta.js +5 -0
  19. package/lib/commands/sgd/source/delta.js.map +1 -1
  20. package/lib/main.d.ts +2 -2
  21. package/lib/main.js +84 -37
  22. package/lib/main.js.map +1 -1
  23. package/lib/post-processor/baseProcessor.d.ts +11 -8
  24. package/lib/post-processor/baseProcessor.js +8 -8
  25. package/lib/post-processor/baseProcessor.js.map +1 -1
  26. package/lib/post-processor/changesManifestProcessor.d.ts +3 -2
  27. package/lib/post-processor/changesManifestProcessor.js +5 -4
  28. package/lib/post-processor/changesManifestProcessor.js.map +1 -1
  29. package/lib/post-processor/flowTranslationProcessor.d.ts +6 -8
  30. package/lib/post-processor/flowTranslationProcessor.js +18 -20
  31. package/lib/post-processor/flowTranslationProcessor.js.map +1 -1
  32. package/lib/post-processor/includeProcessor.d.ts +6 -6
  33. package/lib/post-processor/includeProcessor.js +8 -7
  34. package/lib/post-processor/includeProcessor.js.map +1 -1
  35. package/lib/post-processor/packageGenerator.d.ts +3 -2
  36. package/lib/post-processor/packageGenerator.js +5 -4
  37. package/lib/post-processor/packageGenerator.js.map +1 -1
  38. package/lib/post-processor/postProcessorManager.d.ts +5 -8
  39. package/lib/post-processor/postProcessorManager.js +24 -32
  40. package/lib/post-processor/postProcessorManager.js.map +1 -1
  41. package/lib/service/botHandler.d.ts +1 -2
  42. package/lib/service/botHandler.js +17 -10
  43. package/lib/service/botHandler.js.map +1 -1
  44. package/lib/service/containedDecomposedHandler.d.ts +4 -5
  45. package/lib/service/containedDecomposedHandler.js +14 -13
  46. package/lib/service/containedDecomposedHandler.js.map +1 -1
  47. package/lib/service/customFieldHandler.d.ts +1 -2
  48. package/lib/service/customFieldHandler.js +7 -6
  49. package/lib/service/customFieldHandler.js.map +1 -1
  50. package/lib/service/customLabelHandler.d.ts +1 -2
  51. package/lib/service/customLabelHandler.js +3 -3
  52. package/lib/service/customLabelHandler.js.map +1 -1
  53. package/lib/service/customObjectHandler.d.ts +3 -4
  54. package/lib/service/customObjectHandler.js +11 -10
  55. package/lib/service/customObjectHandler.js.map +1 -1
  56. package/lib/service/decomposedHandler.d.ts +3 -4
  57. package/lib/service/decomposedHandler.js +5 -4
  58. package/lib/service/decomposedHandler.js.map +1 -1
  59. package/lib/service/diffLineInterpreter.d.ts +3 -5
  60. package/lib/service/diffLineInterpreter.js +17 -16
  61. package/lib/service/diffLineInterpreter.js.map +1 -1
  62. package/lib/service/flowHandler.d.ts +1 -2
  63. package/lib/service/flowHandler.js +9 -4
  64. package/lib/service/flowHandler.js.map +1 -1
  65. package/lib/service/inFileHandler.d.ts +8 -9
  66. package/lib/service/inFileHandler.js +25 -25
  67. package/lib/service/inFileHandler.js.map +1 -1
  68. package/lib/service/inFolderHandler.d.ts +4 -5
  69. package/lib/service/inFolderHandler.js +7 -6
  70. package/lib/service/inFolderHandler.js.map +1 -1
  71. package/lib/service/inResourceHandler.d.ts +4 -5
  72. package/lib/service/inResourceHandler.js +11 -9
  73. package/lib/service/inResourceHandler.js.map +1 -1
  74. package/lib/service/objectTranslationHandler.d.ts +1 -2
  75. package/lib/service/objectTranslationHandler.js +6 -5
  76. package/lib/service/objectTranslationHandler.js.map +1 -1
  77. package/lib/service/reportingFolderHandler.d.ts +6 -7
  78. package/lib/service/reportingFolderHandler.js +6 -6
  79. package/lib/service/reportingFolderHandler.js.map +1 -1
  80. package/lib/service/sharedFolderHandler.d.ts +4 -5
  81. package/lib/service/sharedFolderHandler.js +6 -6
  82. package/lib/service/sharedFolderHandler.js.map +1 -1
  83. package/lib/service/standardHandler.d.ts +8 -10
  84. package/lib/service/standardHandler.js +34 -36
  85. package/lib/service/standardHandler.js.map +1 -1
  86. package/lib/service/typeHandlerFactory.d.ts +7 -5
  87. package/lib/service/typeHandlerFactory.js +13 -12
  88. package/lib/service/typeHandlerFactory.js.map +1 -1
  89. package/lib/types/config.d.ts +6 -1
  90. package/lib/types/handlerResult.d.ts +7 -7
  91. package/lib/types/handlerResult.js +10 -1
  92. package/lib/types/handlerResult.js.map +1 -1
  93. package/lib/types/runContext.d.ts +21 -0
  94. package/lib/types/runContext.js +12 -0
  95. package/lib/types/runContext.js.map +1 -0
  96. package/lib/types/work.d.ts +1 -1
  97. package/lib/utils/arrayUtils.d.ts +1 -1
  98. package/lib/utils/arrayUtils.js.map +1 -1
  99. package/lib/utils/bundleRollup.d.ts +6 -0
  100. package/lib/utils/bundleRollup.js +62 -0
  101. package/lib/utils/bundleRollup.js.map +1 -0
  102. package/lib/utils/changeSet.d.ts +12 -15
  103. package/lib/utils/changeSet.js +23 -120
  104. package/lib/utils/changeSet.js.map +1 -1
  105. package/lib/utils/changesAssembly.d.ts +8 -0
  106. package/lib/utils/changesAssembly.js +21 -0
  107. package/lib/utils/changesAssembly.js.map +1 -0
  108. package/lib/utils/configValidator.d.ts +8 -6
  109. package/lib/utils/configValidator.js +56 -13
  110. package/lib/utils/configValidator.js.map +1 -1
  111. package/lib/utils/fsHelper.d.ts +5 -3
  112. package/lib/utils/fsHelper.js +12 -9
  113. package/lib/utils/fsHelper.js.map +1 -1
  114. package/lib/utils/messageSanitizer.d.ts +1 -0
  115. package/lib/utils/messageSanitizer.js +48 -0
  116. package/lib/utils/messageSanitizer.js.map +1 -0
  117. package/lib/utils/metadataBoundaryResolver.d.ts +7 -5
  118. package/lib/utils/metadataBoundaryResolver.js +18 -21
  119. package/lib/utils/metadataBoundaryResolver.js.map +1 -1
  120. package/lib/utils/pathspec.d.ts +15 -0
  121. package/lib/utils/pathspec.js +71 -0
  122. package/lib/utils/pathspec.js.map +1 -0
  123. package/lib/utils/renameResolver.d.ts +6 -7
  124. package/lib/utils/renameResolver.js +10 -9
  125. package/lib/utils/renameResolver.js.map +1 -1
  126. package/lib/utils/repoGitDiff.d.ts +3 -0
  127. package/lib/utils/repoGitDiff.js +30 -1
  128. package/lib/utils/repoGitDiff.js.map +1 -1
  129. package/messages/delta.md +38 -0
  130. package/oclif.manifest.json +10 -3
  131. package/package.json +23 -22
  132. package/lib/post-processor/bundleRollupProcessor.d.ts +0 -7
  133. package/lib/post-processor/bundleRollupProcessor.js +0 -81
  134. package/lib/post-processor/bundleRollupProcessor.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"inFileHandler.js","sourceRoot":"","sources":["../../src/service/inFileHandler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"inFileHandler.js","sourceRoot":"","sources":["../../src/service/inFileHandler.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,9 @@
1
- import type { HandlerResult } from '../types/handlerResult.js';
2
- import type ChangeSet from '../utils/changeSet.js';
1
+ import type { CopyOperation, HandlerResult } from '../types/handlerResult.js';
3
2
  import StandardHandler from './standardHandler.js';
4
3
  export default class InFolderHandler extends StandardHandler {
5
- collectAddition(sink?: ChangeSet): Promise<HandlerResult>;
6
- protected _collectFolderMetaCopies(copies: import('../types/handlerResult.js').CopyOperation[]): void;
7
- protected _collectSpecialExtensionCopies(copies: import('../types/handlerResult.js').CopyOperation[]): Promise<void>;
4
+ collectAddition(): Promise<HandlerResult>;
5
+ protected _collectFolderMetaCopies(copies: CopyOperation[]): void;
6
+ protected _collectSpecialExtensionCopies(copies: CopyOperation[]): Promise<void>;
8
7
  protected _getElementName(): string;
9
8
  protected _isProcessable(): boolean;
10
9
  }
@@ -6,11 +6,12 @@ import { readDirs } from '../utils/fsHelper.js';
6
6
  import StandardHandler from './standardHandler.js';
7
7
  const INFOLDER_SUFFIX_REGEX = new RegExp(`${INFOLDER_SUFFIX}$`);
8
8
  export default class InFolderHandler extends StandardHandler {
9
- async collectAddition(sink) {
10
- const result = await super.collectAddition(sink);
11
- this._collectFolderMetaCopies(result.copies);
12
- await this._collectSpecialExtensionCopies(result.copies);
13
- return result;
9
+ async collectAddition() {
10
+ const result = await super.collectAddition();
11
+ const copies = [...result.copies];
12
+ this._collectFolderMetaCopies(copies);
13
+ await this._collectSpecialExtensionCopies(copies);
14
+ return { ...result, copies };
14
15
  }
15
16
  _collectFolderMetaCopies(copies) {
16
17
  const folderPath = this.element.typeDirectoryPath;
@@ -25,7 +26,7 @@ export default class InFolderHandler extends StandardHandler {
25
26
  if (!this._shouldCollectCopies())
26
27
  return;
27
28
  const parsedLine = parse(this.element.basePath);
28
- const dirContent = await readDirs(parsedLine.dir, this.config);
29
+ const dirContent = await readDirs(parsedLine.dir, this.ctx);
29
30
  for (const file of dirContent) {
30
31
  if (file.includes(parsedLine.name)) {
31
32
  this._collectCopyWithMetaFile(copies, file);
@@ -1 +1 @@
1
- {"version":3,"file":"inFolderHandler.js","sourceRoot":"","sources":["../../src/service/inFolderHandler.ts"],"names":[],"mappings":"AAAA,YAAY,CAAA;AACZ,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAA;AAC7C,OAAO,EAAE,sBAAsB,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAA;AAC7E,OAAO,EACL,eAAe,EACf,UAAU,EACV,eAAe,GAChB,MAAM,kCAAkC,CAAA;AAGzC,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAA;AAC/C,OAAO,eAAe,MAAM,sBAAsB,CAAA;AAElD,MAAM,qBAAqB,GAAG,IAAI,MAAM,CAAC,GAAG,eAAe,GAAG,CAAC,CAAA;AAC/D,MAAM,CAAC,OAAO,OAAO,eAAgB,SAAQ,eAAe;IAC1C,KAAK,CAAC,eAAe,CACnC,IAAgB;QAEhB,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,eAAe,CAAC,IAAI,CAAC,CAAA;QAChD,IAAI,CAAC,wBAAwB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;QAC5C,MAAM,IAAI,CAAC,8BAA8B,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;QACxD,OAAO,MAAM,CAAA;IACf,CAAC;IAES,wBAAwB,CAChC,MAA2D;QAE3D,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAA;QACjD,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,CAAA;QAEhD,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,eAAe,CAAC;YACjD,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAO,CAAC,WAAW,EAAE,EAAE,CAAA;QAEjD,MAAM,cAAc,GAAG,GAAG,UAAU,GAAG,MAAM,GAAG,eAAe,EAAE,CAAA;QACjE,IAAI,CAAC,wBAAwB,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC,CAAA;IACzE,CAAC;IAES,KAAK,CAAC,8BAA8B,CAC5C,MAA2D;QAE3D,IAAI,CAAC,IAAI,CAAC,oBAAoB,EAAE;YAAE,OAAM;QACxC,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAA;QAC/C,MAAM,UAAU,GAAG,MAAM,QAAQ,CAAC,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;QAE9D,KAAK,MAAM,IAAI,IAAI,UAAU,EAAE,CAAC;YAC9B,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;gBACnC,IAAI,CAAC,wBAAwB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;YAC7C,CAAC;QACH,CAAC;IACH,CAAC;IAEkB,eAAe;QAChC,OAAO,IAAI,CAAC,OAAO,CAAC,aAAa;aAC9B,IAAI,CAAC,QAAQ,CAAC;aACd,OAAO,CACN,UAAU;QACV,kNAAkN;QAClN,EAAE,CACH;aACA,OAAO,CAAC,qBAAqB,EAAE,EAAE,CAAC;aAClC,OAAO,CAAC,sBAAsB,EAAE,EAAE,CAAC,CAAA;IACxC,CAAC;IAEkB,cAAc;QAC/B,OAAO,CACL,KAAK,CAAC,cAAc,EAAE;YACtB,IAAI,CAAC,yBAAyB,EAAE;YAChC,IAAI,CAAC,OAAO,CAAC,SAAU,CAAC,QAAQ,CAAC,eAAe,CAAC,CAClD,CAAA;IACH,CAAC;CACF"}
1
+ {"version":3,"file":"inFolderHandler.js","sourceRoot":"","sources":["../../src/service/inFolderHandler.ts"],"names":[],"mappings":"AAAA,YAAY,CAAA;AACZ,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAA;AAC7C,OAAO,EAAE,sBAAsB,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAA;AAC7E,OAAO,EACL,eAAe,EACf,UAAU,EACV,eAAe,GAChB,MAAM,kCAAkC,CAAA;AAEzC,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAA;AAC/C,OAAO,eAAe,MAAM,sBAAsB,CAAA;AAElD,MAAM,qBAAqB,GAAG,IAAI,MAAM,CAAC,GAAG,eAAe,GAAG,CAAC,CAAA;AAC/D,MAAM,CAAC,OAAO,OAAO,eAAgB,SAAQ,eAAe;IAC1C,KAAK,CAAC,eAAe;QACnC,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,eAAe,EAAE,CAAA;QAC5C,MAAM,MAAM,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,CAAA;QACjC,IAAI,CAAC,wBAAwB,CAAC,MAAM,CAAC,CAAA;QACrC,MAAM,IAAI,CAAC,8BAA8B,CAAC,MAAM,CAAC,CAAA;QACjD,OAAO,EAAE,GAAG,MAAM,EAAE,MAAM,EAAE,CAAA;IAC9B,CAAC;IAES,wBAAwB,CAAC,MAAuB;QACxD,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAA;QACjD,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,CAAA;QAEhD,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,eAAe,CAAC;YACjD,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAO,CAAC,WAAW,EAAE,EAAE,CAAA;QAEjD,MAAM,cAAc,GAAG,GAAG,UAAU,GAAG,MAAM,GAAG,eAAe,EAAE,CAAA;QACjE,IAAI,CAAC,wBAAwB,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC,CAAA;IACzE,CAAC;IAES,KAAK,CAAC,8BAA8B,CAC5C,MAAuB;QAEvB,IAAI,CAAC,IAAI,CAAC,oBAAoB,EAAE;YAAE,OAAM;QACxC,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAA;QAC/C,MAAM,UAAU,GAAG,MAAM,QAAQ,CAAC,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,CAAA;QAE3D,KAAK,MAAM,IAAI,IAAI,UAAU,EAAE,CAAC;YAC9B,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;gBACnC,IAAI,CAAC,wBAAwB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;YAC7C,CAAC;QACH,CAAC;IACH,CAAC;IAEkB,eAAe;QAChC,OAAO,IAAI,CAAC,OAAO,CAAC,aAAa;aAC9B,IAAI,CAAC,QAAQ,CAAC;aACd,OAAO,CACN,UAAU;QACV,kNAAkN;QAClN,EAAE,CACH;aACA,OAAO,CAAC,qBAAqB,EAAE,EAAE,CAAC;aAClC,OAAO,CAAC,sBAAsB,EAAE,EAAE,CAAC,CAAA;IACxC,CAAC;IAEkB,cAAc;QAC/B,OAAO,CACL,KAAK,CAAC,cAAc,EAAE;YACtB,IAAI,CAAC,yBAAyB,EAAE;YAChC,IAAI,CAAC,OAAO,CAAC,SAAU,CAAC,QAAQ,CAAC,eAAe,CAAC,CAClD,CAAA;IACH,CAAC;CACF"}
@@ -1,11 +1,10 @@
1
- import type { HandlerResult } from '../types/handlerResult.js';
2
- import type ChangeSet from '../utils/changeSet.js';
1
+ import type { CopyOperation, HandlerResult } from '../types/handlerResult.js';
3
2
  import StandardHandler from './standardHandler.js';
4
3
  export default class ResourceHandler extends StandardHandler {
5
4
  protected metadataName: string | undefined;
6
- collectAddition(sink?: ChangeSet): Promise<HandlerResult>;
7
- collectDeletion(sink?: ChangeSet): Promise<HandlerResult>;
8
- protected _collectResourceCopies(copies: import('../types/handlerResult.js').CopyOperation[]): Promise<void>;
5
+ collectAddition(): Promise<HandlerResult>;
6
+ collectDeletion(): Promise<HandlerResult>;
7
+ protected _collectResourceCopies(copies: CopyOperation[]): Promise<void>;
9
8
  protected _getElementName(): string;
10
9
  protected _isProcessable(): boolean;
11
10
  protected _getMetadataName(): string;
@@ -10,32 +10,34 @@ value.replace(REGEX_SPECIAL_CHARS, '\\$&');
10
10
  const resourceRegexCache = new Map();
11
11
  export default class ResourceHandler extends StandardHandler {
12
12
  metadataName;
13
- async collectAddition(sink) {
13
+ async collectAddition() {
14
14
  this.metadataName = this._getMetadataName();
15
- const result = await super.collectAddition(sink);
16
- await this._collectResourceCopies(result.copies);
17
- return result;
15
+ const result = await super.collectAddition();
16
+ const copies = [...result.copies];
17
+ await this._collectResourceCopies(copies);
18
+ return { ...result, copies };
18
19
  }
19
- async collectDeletion(sink) {
20
+ async collectDeletion() {
20
21
  this.metadataName = this._getMetadataName();
21
22
  const componentPath = this.metadataName;
22
- const exists = await pathExists(componentPath, this.config);
23
+ const exists = await pathExists(componentPath, this.ctx);
23
24
  if (exists) {
24
- return await this.collectModification(sink);
25
+ return await this.collectModification();
25
26
  }
26
- return await super.collectDeletion(sink);
27
+ return await super.collectDeletion();
27
28
  }
28
29
  async _collectResourceCopies(copies) {
29
30
  // Stryker disable next-line ConditionalExpression -- equivalent: shouldCollectCopies guard; flipping to false continues into the resource scan even when copies aren't needed (e.g. generateDelta=false), but the empty path branch still produces no copies because the test fixtures for the generateDelta=false case don't fixture matching resource files
30
31
  if (!this._shouldCollectCopies())
31
32
  return;
32
33
  const staticResourcePath = this.metadataName.substring(0, this.metadataName.lastIndexOf(PATH_SEP));
33
- const allStaticResources = await readDirs(staticResourcePath, this.config);
34
+ const allStaticResources = await readDirs(staticResourcePath, this.ctx);
34
35
  const cacheKey = this.metadataName;
35
36
  let startsWithMetadataName = resourceRegexCache.get(cacheKey);
36
37
  // Stryker disable next-line ConditionalExpression -- equivalent: cache short-circuit; flipping to true rebuilds the regex on every call, but the rebuild is deterministic so the resulting RegExp behaviour is identical
37
38
  if (!startsWithMetadataName) {
38
39
  startsWithMetadataName = new RegExp(`${escapeRegex(cacheKey)}[${PATH_SEP}${DOT}]`);
40
+ // Stryker disable next-line CallExpression -- equivalent: cache population; dropping the set() only means the regex is rebuilt on every call from the deterministic construction directly above, so the resulting RegExp behaviour is identical — the same reasoning the cache-check flip above is already documented under
39
41
  resourceRegexCache.set(cacheKey, startsWithMetadataName);
40
42
  }
41
43
  const resourceFiles = allStaticResources.filter((file) => startsWithMetadataName.test(file));
@@ -1 +1 @@
1
- {"version":3,"file":"inResourceHandler.js","sourceRoot":"","sources":["../../src/service/inResourceHandler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"inResourceHandler.js","sourceRoot":"","sources":["../../src/service/inResourceHandler.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,7 @@
1
1
  import type { HandlerResult } from '../types/handlerResult.js';
2
- import type ChangeSet from '../utils/changeSet.js';
3
2
  import ResourceHandler from './inResourceHandler.js';
4
3
  export default class ObjectTranslationHandler extends ResourceHandler {
5
- collectAddition(sink?: ChangeSet): Promise<HandlerResult>;
4
+ collectAddition(): Promise<HandlerResult>;
6
5
  protected _getObjectTranslationWriter(path: string): Promise<((out: import("node:stream").Writable) => Promise<void>) | undefined>;
7
6
  protected _getObjectTranslationPath(): string;
8
7
  protected _delegateFileCopy(): boolean;
@@ -7,8 +7,8 @@ import MetadataDiff from '../utils/metadataDiff/index.js';
7
7
  import ResourceHandler from './inResourceHandler.js';
8
8
  import StandardHandler from './standardHandler.js';
9
9
  export default class ObjectTranslationHandler extends ResourceHandler {
10
- async collectAddition(sink) {
11
- const result = await StandardHandler.prototype.collectAddition.call(this, sink);
10
+ async collectAddition() {
11
+ const result = await StandardHandler.prototype.collectAddition.call(this);
12
12
  if (!this._shouldCollectCopies())
13
13
  return result;
14
14
  // RATIONALE: Why include objectTranslation file even when pruned content is empty?
@@ -16,17 +16,18 @@ export default class ObjectTranslationHandler extends ResourceHandler {
16
16
  // See: https://github.com/scolladon/sfdx-git-delta/wiki/Metadata-Specificities#object-translations
17
17
  const objectTranslationPath = this._getObjectTranslationPath();
18
18
  const writer = await this._getObjectTranslationWriter(objectTranslationPath);
19
+ const copies = [...result.copies];
19
20
  if (writer) {
20
- result.copies.push({
21
+ copies.push({
21
22
  kind: CopyOperationKind.StreamedContent,
22
23
  path: objectTranslationPath,
23
24
  writer,
24
25
  });
25
26
  }
26
27
  else {
27
- this._collectCopy(result.copies, objectTranslationPath);
28
+ this._collectCopy(copies, objectTranslationPath);
28
29
  }
29
- return result;
30
+ return { ...result, copies };
30
31
  }
31
32
  async _getObjectTranslationWriter(path) {
32
33
  const inFileMetadata = this.element.getInFileAttributes();
@@ -1 +1 @@
1
- {"version":3,"file":"objectTranslationHandler.js","sourceRoot":"","sources":["../../src/service/objectTranslationHandler.ts"],"names":[],"mappings":"AAAA,YAAY,CAAA;AACZ,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAA;AACvC,OAAO,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAA;AACrD,OAAO,EAAE,kCAAkC,EAAE,MAAM,kCAAkC,CAAA;AAErF,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAA;AAE7D,OAAO,YAAY,MAAM,gCAAgC,CAAA;AACzD,OAAO,eAAe,MAAM,wBAAwB,CAAA;AACpD,OAAO,eAAe,MAAM,sBAAsB,CAAA;AAElD,MAAM,CAAC,OAAO,OAAO,wBAAyB,SAAQ,eAAe;IACnD,KAAK,CAAC,eAAe,CACnC,IAAgB;QAEhB,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,SAAS,CAAC,eAAe,CAAC,IAAI,CACjE,IAAI,EACJ,IAAI,CACL,CAAA;QACD,IAAI,CAAC,IAAI,CAAC,oBAAoB,EAAE;YAAE,OAAO,MAAM,CAAA;QAE/C,mFAAmF;QACnF,uFAAuF;QACvF,mGAAmG;QACnG,MAAM,qBAAqB,GAAG,IAAI,CAAC,yBAAyB,EAAE,CAAA;QAC9D,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,2BAA2B,CAAC,qBAAqB,CAAC,CAAA;QAC5E,IAAI,MAAM,EAAE,CAAC;YACX,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC;gBACjB,IAAI,EAAE,iBAAiB,CAAC,eAAe;gBACvC,IAAI,EAAE,qBAAqB;gBAC3B,MAAM;aACP,CAAC,CAAA;QACJ,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAA;QACzD,CAAC;QACD,OAAO,MAAM,CAAA;IACf,CAAC;IAES,KAAK,CAAC,2BAA2B,CAAC,IAAY;QACtD,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,mBAAmB,EAAE,CAAA;QACzD,MAAM,YAAY,GAAG,IAAI,YAAY,CAAC,IAAI,CAAC,MAAM,EAAE,cAAc,CAAC,CAAA;QAClE,MAAM,OAAO,GAAG,MAAM,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;QAC5C,OAAO,OAAO,CAAC,MAAM,CAAA;IACvB,CAAC;IAES,yBAAyB;QACjC,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,GAAG,GAAG,QAAQ,GACnD,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAClD,IAAI,kCAAkC,EAAE,CAAA;IAC1C,CAAC;IAEkB,iBAAiB;QAClC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,kCAAkC,CAAC,CAAA;IAC5E,CAAC;IAED,wEAAwE;IACxE,+EAA+E;IAC/E,6EAA6E;IAC7E,6DAA6D;IAC1C,mBAAmB;QACpC,OAAO,KAAK,CAAA;IACd,CAAC;IAEkB,eAAe;QAChC,OAAO,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,CAAA;IACtC,CAAC;CACF"}
1
+ {"version":3,"file":"objectTranslationHandler.js","sourceRoot":"","sources":["../../src/service/objectTranslationHandler.ts"],"names":[],"mappings":"AAAA,YAAY,CAAA;AACZ,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAA;AACvC,OAAO,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAA;AACrD,OAAO,EAAE,kCAAkC,EAAE,MAAM,kCAAkC,CAAA;AAErF,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAA;AAC7D,OAAO,YAAY,MAAM,gCAAgC,CAAA;AACzD,OAAO,eAAe,MAAM,wBAAwB,CAAA;AACpD,OAAO,eAAe,MAAM,sBAAsB,CAAA;AAElD,MAAM,CAAC,OAAO,OAAO,wBAAyB,SAAQ,eAAe;IACnD,KAAK,CAAC,eAAe;QACnC,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,SAAS,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACzE,IAAI,CAAC,IAAI,CAAC,oBAAoB,EAAE;YAAE,OAAO,MAAM,CAAA;QAE/C,mFAAmF;QACnF,uFAAuF;QACvF,mGAAmG;QACnG,MAAM,qBAAqB,GAAG,IAAI,CAAC,yBAAyB,EAAE,CAAA;QAC9D,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,2BAA2B,CAAC,qBAAqB,CAAC,CAAA;QAC5E,MAAM,MAAM,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,CAAA;QACjC,IAAI,MAAM,EAAE,CAAC;YACX,MAAM,CAAC,IAAI,CAAC;gBACV,IAAI,EAAE,iBAAiB,CAAC,eAAe;gBACvC,IAAI,EAAE,qBAAqB;gBAC3B,MAAM;aACP,CAAC,CAAA;QACJ,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAA;QAClD,CAAC;QACD,OAAO,EAAE,GAAG,MAAM,EAAE,MAAM,EAAE,CAAA;IAC9B,CAAC;IAES,KAAK,CAAC,2BAA2B,CAAC,IAAY;QACtD,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,mBAAmB,EAAE,CAAA;QACzD,MAAM,YAAY,GAAG,IAAI,YAAY,CAAC,IAAI,CAAC,MAAM,EAAE,cAAc,CAAC,CAAA;QAClE,MAAM,OAAO,GAAG,MAAM,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;QAC5C,OAAO,OAAO,CAAC,MAAM,CAAA;IACvB,CAAC;IAES,yBAAyB;QACjC,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,GAAG,GAAG,QAAQ,GACnD,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAClD,IAAI,kCAAkC,EAAE,CAAA;IAC1C,CAAC;IAEkB,iBAAiB;QAClC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,kCAAkC,CAAC,CAAA;IAC5E,CAAC;IAED,wEAAwE;IACxE,+EAA+E;IAC/E,6EAA6E;IAC7E,6DAA6D;IAC1C,mBAAmB;QACpC,OAAO,KAAK,CAAA;IACd,CAAC;IAEkB,eAAe;QAChC,OAAO,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,CAAA;IACtC,CAAC;CACF"}
@@ -1,14 +1,13 @@
1
- import type { HandlerResult } from '../types/handlerResult.js';
2
- import type { Work } from '../types/work.js';
3
- import type ChangeSet from '../utils/changeSet.js';
1
+ import type { CopyOperation, HandlerResult } from '../types/handlerResult.js';
2
+ import type { RunContext } from '../types/runContext.js';
4
3
  import type { MetadataElement } from '../utils/metadataElement.js';
5
4
  import InFolderHandler from './inFolderHandler.js';
6
5
  export default class ReportingFolderHandler extends InFolderHandler {
7
6
  protected readonly resolvedType: string | undefined;
8
- constructor(changeType: string, element: MetadataElement, work: Work);
9
- collectAddition(sink?: ChangeSet): Promise<HandlerResult>;
10
- collectDeletion(sink?: ChangeSet): Promise<HandlerResult>;
11
- protected _collectFolderMetaCopies(copies: import('../types/handlerResult.js').CopyOperation[]): void;
7
+ constructor(changeType: string, element: MetadataElement, ctx: RunContext);
8
+ collectAddition(): Promise<HandlerResult>;
9
+ collectDeletion(): Promise<HandlerResult>;
10
+ protected _collectFolderMetaCopies(copies: CopyOperation[]): void;
12
11
  getElementDescriptor(): {
13
12
  type: string;
14
13
  member: string;
@@ -5,20 +5,20 @@ import { emptyResult } from '../types/handlerResult.js';
5
5
  import InFolderHandler from './inFolderHandler.js';
6
6
  export default class ReportingFolderHandler extends InFolderHandler {
7
7
  resolvedType;
8
- constructor(changeType, element, work) {
9
- super(changeType, element, work);
8
+ constructor(changeType, element, ctx) {
9
+ super(changeType, element, ctx);
10
10
  this.resolvedType = element.getSharedFolderMetadata().get(element.extension);
11
11
  }
12
12
  /* jscpd:ignore-start */
13
- async collectAddition(sink) {
13
+ async collectAddition() {
14
14
  if (!this.resolvedType)
15
15
  return emptyResult();
16
- return await super.collectAddition(sink);
16
+ return await super.collectAddition();
17
17
  }
18
- async collectDeletion(sink) {
18
+ async collectDeletion() {
19
19
  if (!this.resolvedType)
20
20
  return emptyResult();
21
- return await super.collectDeletion(sink);
21
+ return await super.collectDeletion();
22
22
  }
23
23
  /* jscpd:ignore-end */
24
24
  _collectFolderMetaCopies(copies) {
@@ -1 +1 @@
1
- {"version":3,"file":"reportingFolderHandler.js","sourceRoot":"","sources":["../../src/service/reportingFolderHandler.ts"],"names":[],"mappings":"AAAA,YAAY,CAAA;AAEZ,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAA;AACtC,OAAO,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAA;AAElE,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAA;AAIvD,OAAO,eAAe,MAAM,sBAAsB,CAAA;AAElD,MAAM,CAAC,OAAO,OAAO,sBAAuB,SAAQ,eAAe;IAC9C,YAAY,CAAoB;IAEnD,YAAY,UAAkB,EAAE,OAAwB,EAAE,IAAU;QAClE,KAAK,CAAC,UAAU,EAAE,OAAO,EAAE,IAAI,CAAC,CAAA;QAChC,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC,uBAAuB,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,CAAA;IAC9E,CAAC;IAED,wBAAwB;IACR,KAAK,CAAC,eAAe,CACnC,IAAgB;QAEhB,IAAI,CAAC,IAAI,CAAC,YAAY;YAAE,OAAO,WAAW,EAAE,CAAA;QAC5C,OAAO,MAAM,KAAK,CAAC,eAAe,CAAC,IAAI,CAAC,CAAA;IAC1C,CAAC;IAEe,KAAK,CAAC,eAAe,CACnC,IAAgB;QAEhB,IAAI,CAAC,IAAI,CAAC,YAAY;YAAE,OAAO,WAAW,EAAE,CAAA;QAC5C,OAAO,MAAM,KAAK,CAAC,eAAe,CAAC,IAAI,CAAC,CAAA;IAC1C,CAAC;IACD,sBAAsB;IAEH,wBAAwB,CACzC,MAA2D;QAE3D,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAA;QACjD,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,CAAA;QAChD,MAAM,cAAc,GAAG,GAAG,UAAU,GAAG,eAAe,EAAE,CAAA;QACxD,IAAI,CAAC,wBAAwB,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC,CAAA;IACzE,CAAC;IAEe,oBAAoB;QAClC,+RAA+R;QAC/R,sEAAsE;QACtE,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;YACvB,MAAM,IAAI,KAAK,CACb,uDAAuD,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAC/E,CAAA;QACH,CAAC;QACD,qEAAqE;QACrE,OAAO;YACL,IAAI,EAAE,IAAI,CAAC,YAAY;YACvB,MAAM,EAAE,IAAI,CAAC,eAAe,EAAE;SAC/B,CAAA;IACH,CAAC;CACF"}
1
+ {"version":3,"file":"reportingFolderHandler.js","sourceRoot":"","sources":["../../src/service/reportingFolderHandler.ts"],"names":[],"mappings":"AAAA,YAAY,CAAA;AAEZ,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAA;AACtC,OAAO,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAA;AAElE,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAA;AAGvD,OAAO,eAAe,MAAM,sBAAsB,CAAA;AAElD,MAAM,CAAC,OAAO,OAAO,sBAAuB,SAAQ,eAAe;IAC9C,YAAY,CAAoB;IAEnD,YAAY,UAAkB,EAAE,OAAwB,EAAE,GAAe;QACvE,KAAK,CAAC,UAAU,EAAE,OAAO,EAAE,GAAG,CAAC,CAAA;QAC/B,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC,uBAAuB,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,CAAA;IAC9E,CAAC;IAED,wBAAwB;IACR,KAAK,CAAC,eAAe;QACnC,IAAI,CAAC,IAAI,CAAC,YAAY;YAAE,OAAO,WAAW,EAAE,CAAA;QAC5C,OAAO,MAAM,KAAK,CAAC,eAAe,EAAE,CAAA;IACtC,CAAC;IAEe,KAAK,CAAC,eAAe;QACnC,IAAI,CAAC,IAAI,CAAC,YAAY;YAAE,OAAO,WAAW,EAAE,CAAA;QAC5C,OAAO,MAAM,KAAK,CAAC,eAAe,EAAE,CAAA;IACtC,CAAC;IACD,sBAAsB;IAEH,wBAAwB,CAAC,MAAuB;QACjE,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAA;QACjD,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,CAAA;QAChD,MAAM,cAAc,GAAG,GAAG,UAAU,GAAG,eAAe,EAAE,CAAA;QACxD,IAAI,CAAC,wBAAwB,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC,CAAA;IACzE,CAAC;IAEe,oBAAoB;QAClC,+RAA+R;QAC/R,sEAAsE;QACtE,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;YACvB,MAAM,IAAI,KAAK,CACb,uDAAuD,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAC/E,CAAA;QACH,CAAC;QACD,qEAAqE;QACrE,OAAO;YACL,IAAI,EAAE,IAAI,CAAC,YAAY;YACvB,MAAM,EAAE,IAAI,CAAC,eAAe,EAAE;SAC/B,CAAA;IACH,CAAC;CACF"}
@@ -1,17 +1,16 @@
1
1
  import type { HandlerResult } from '../types/handlerResult.js';
2
- import type { Work } from '../types/work.js';
3
- import type ChangeSet from '../utils/changeSet.js';
2
+ import type { RunContext } from '../types/runContext.js';
4
3
  import type { MetadataElement } from '../utils/metadataElement.js';
5
4
  import StandardHandler from './standardHandler.js';
6
5
  export default class SharedFolderHandler extends StandardHandler {
7
6
  protected readonly resolvedType: string | undefined;
8
- constructor(changeType: string, element: MetadataElement, work: Work);
7
+ constructor(changeType: string, element: MetadataElement, ctx: RunContext);
9
8
  getElementDescriptor(): {
10
9
  type: string;
11
10
  member: string;
12
11
  };
13
- collectAddition(sink?: ChangeSet): Promise<HandlerResult>;
14
- collectDeletion(sink?: ChangeSet): Promise<HandlerResult>;
12
+ collectAddition(): Promise<HandlerResult>;
13
+ collectDeletion(): Promise<HandlerResult>;
15
14
  protected _isProcessable(): boolean;
16
15
  protected _getMetaTypeFilePath(path: string): string;
17
16
  }
@@ -5,8 +5,8 @@ import { emptyResult } from '../types/handlerResult.js';
5
5
  import StandardHandler from './standardHandler.js';
6
6
  export default class SharedFolderHandler extends StandardHandler {
7
7
  resolvedType;
8
- constructor(changeType, element, work) {
9
- super(changeType, element, work);
8
+ constructor(changeType, element, ctx) {
9
+ super(changeType, element, ctx);
10
10
  this.resolvedType = element.getSharedFolderMetadata().get(element.extension);
11
11
  }
12
12
  getElementDescriptor() {
@@ -21,15 +21,15 @@ export default class SharedFolderHandler extends StandardHandler {
21
21
  member: this._getElementName(),
22
22
  };
23
23
  }
24
- async collectAddition(sink) {
24
+ async collectAddition() {
25
25
  if (!this.resolvedType)
26
26
  return emptyResult();
27
- return await super.collectAddition(sink);
27
+ return await super.collectAddition();
28
28
  }
29
- async collectDeletion(sink) {
29
+ async collectDeletion() {
30
30
  if (!this.resolvedType)
31
31
  return emptyResult();
32
- return await super.collectDeletion(sink);
32
+ return await super.collectDeletion();
33
33
  }
34
34
  _isProcessable() {
35
35
  // Stryker disable next-line ConditionalExpression -- equivalent: this falls back to resolvedType when super's check fails; flipping to true would always process, but TypeHandlerFactory routing ensures this handler is selected only for resolvable types where resolvedType is populated, so super._isProcessable() is the dominant arm and the OR-fallback is mostly defensive
@@ -1 +1 @@
1
- {"version":3,"file":"sharedFolderHandler.js","sourceRoot":"","sources":["../../src/service/sharedFolderHandler.ts"],"names":[],"mappings":"AAAA,YAAY,CAAA;AACZ,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAA;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAA;AAElE,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAA;AAKvD,OAAO,eAAe,MAAM,sBAAsB,CAAA;AAElD,MAAM,CAAC,OAAO,OAAO,mBAAoB,SAAQ,eAAe;IAC3C,YAAY,CAAoB;IAEnD,YAAY,UAAkB,EAAE,OAAwB,EAAE,IAAU;QAClE,KAAK,CAAC,UAAU,EAAE,OAAO,EAAE,IAAI,CAAC,CAAA;QAChC,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC,uBAAuB,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,CAAA;IAC9E,CAAC;IAEe,oBAAoB;QAClC,4RAA4R;QAC5R,sEAAsE;QACtE,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;YACvB,MAAM,IAAI,KAAK,CACb,oDAAoD,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAC5E,CAAA;QACH,CAAC;QACD,qEAAqE;QACrE,OAAO;YACL,IAAI,EAAE,IAAI,CAAC,YAAY;YACvB,MAAM,EAAE,IAAI,CAAC,eAAe,EAAE;SAC/B,CAAA;IACH,CAAC;IAEe,KAAK,CAAC,eAAe,CACnC,IAAgB;QAEhB,IAAI,CAAC,IAAI,CAAC,YAAY;YAAE,OAAO,WAAW,EAAE,CAAA;QAC5C,OAAO,MAAM,KAAK,CAAC,eAAe,CAAC,IAAI,CAAC,CAAA;IAC1C,CAAC;IAEe,KAAK,CAAC,eAAe,CACnC,IAAgB;QAEhB,IAAI,CAAC,IAAI,CAAC,YAAY;YAAE,OAAO,WAAW,EAAE,CAAA;QAC5C,OAAO,MAAM,KAAK,CAAC,eAAe,CAAC,IAAI,CAAC,CAAA;IAC1C,CAAC;IAEkB,cAAc;QAC/B,mXAAmX;QACnX,OAAO,KAAK,CAAC,cAAc,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,YAAY,CAAA;IACtD,CAAC;IAEkB,oBAAoB,CAAC,IAAY;QAClD,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,CAAA;QAC9B,OAAO,IAAI,CACT,UAAU,CAAC,GAAG,EACd,GAAG,UAAU,CAAC,IAAI,GAAG,UAAU,CAAC,GAAG,GAAG,eAAe,EAAE,CACxD,CAAA;IACH,CAAC;CACF"}
1
+ {"version":3,"file":"sharedFolderHandler.js","sourceRoot":"","sources":["../../src/service/sharedFolderHandler.ts"],"names":[],"mappings":"AAAA,YAAY,CAAA;AACZ,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAA;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAA;AAElE,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAA;AAIvD,OAAO,eAAe,MAAM,sBAAsB,CAAA;AAElD,MAAM,CAAC,OAAO,OAAO,mBAAoB,SAAQ,eAAe;IAC3C,YAAY,CAAoB;IAEnD,YAAY,UAAkB,EAAE,OAAwB,EAAE,GAAe;QACvE,KAAK,CAAC,UAAU,EAAE,OAAO,EAAE,GAAG,CAAC,CAAA;QAC/B,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC,uBAAuB,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,CAAA;IAC9E,CAAC;IAEe,oBAAoB;QAClC,4RAA4R;QAC5R,sEAAsE;QACtE,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;YACvB,MAAM,IAAI,KAAK,CACb,oDAAoD,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAC5E,CAAA;QACH,CAAC;QACD,qEAAqE;QACrE,OAAO;YACL,IAAI,EAAE,IAAI,CAAC,YAAY;YACvB,MAAM,EAAE,IAAI,CAAC,eAAe,EAAE;SAC/B,CAAA;IACH,CAAC;IAEe,KAAK,CAAC,eAAe;QACnC,IAAI,CAAC,IAAI,CAAC,YAAY;YAAE,OAAO,WAAW,EAAE,CAAA;QAC5C,OAAO,MAAM,KAAK,CAAC,eAAe,EAAE,CAAA;IACtC,CAAC;IAEe,KAAK,CAAC,eAAe;QACnC,IAAI,CAAC,IAAI,CAAC,YAAY;YAAE,OAAO,WAAW,EAAE,CAAA;QAC5C,OAAO,MAAM,KAAK,CAAC,eAAe,EAAE,CAAA;IACtC,CAAC;IAEkB,cAAc;QAC/B,mXAAmX;QACnX,OAAO,KAAK,CAAC,cAAc,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,YAAY,CAAA;IACtD,CAAC;IAEkB,oBAAoB,CAAC,IAAY;QAClD,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,CAAA;QAC9B,OAAO,IAAI,CACT,UAAU,CAAC,GAAG,EACd,GAAG,UAAU,CAAC,IAAI,GAAG,UAAU,CAAC,GAAG,GAAG,eAAe,EAAE,CACxD,CAAA;IACH,CAAC;CACF"}
@@ -1,8 +1,7 @@
1
1
  import type { Config } from '../types/config.js';
2
2
  import type { AddKind, CopyOperation, HandlerResult } from '../types/handlerResult.js';
3
3
  import { ManifestTarget } from '../types/handlerResult.js';
4
- import type { Work } from '../types/work.js';
5
- import type ChangeSet from '../utils/changeSet.js';
4
+ import type { RunContext } from '../types/runContext.js';
6
5
  import type { MetadataElement } from '../utils/metadataElement.js';
7
6
  /**
8
7
  * Strategy pattern base for metadata type handlers.
@@ -16,14 +15,13 @@ import type { MetadataElement } from '../utils/metadataElement.js';
16
15
  export default class StandardHandler {
17
16
  protected readonly changeType: string;
18
17
  protected readonly element: MetadataElement;
19
- protected readonly work: Work;
20
- protected readonly config: Config;
21
- constructor(changeType: string, element: MetadataElement, work: Work);
22
- collect(sink?: ChangeSet): Promise<HandlerResult>;
23
- collectAddition(sink?: ChangeSet): Promise<HandlerResult>;
24
- collectDeletion(sink?: ChangeSet): Promise<HandlerResult>;
25
- collectModification(sink?: ChangeSet): Promise<HandlerResult>;
26
- protected _emptyResultFor(sink?: ChangeSet): HandlerResult;
18
+ protected readonly ctx: RunContext;
19
+ constructor(changeType: string, element: MetadataElement, ctx: RunContext);
20
+ protected get config(): Config;
21
+ collect(): Promise<HandlerResult>;
22
+ collectAddition(): Promise<HandlerResult>;
23
+ collectDeletion(): Promise<HandlerResult>;
24
+ collectModification(): Promise<HandlerResult>;
27
25
  protected _getElementName(): string;
28
26
  getElementDescriptor(): {
29
27
  type: string;
@@ -29,65 +29,63 @@ const CHANGE_KIND_BY_GIT_TYPE = {
29
29
  export default class StandardHandler {
30
30
  changeType;
31
31
  element;
32
- work;
33
- config;
34
- constructor(changeType, element, work) {
32
+ ctx;
33
+ constructor(changeType, element, ctx) {
35
34
  this.changeType = changeType;
36
35
  this.element = element;
37
- this.work = work;
38
- this.config = work.config;
39
- }
40
- // `sink` lets the orchestrator (DiffLineInterpreter) share one ChangeSet
41
- // across every handler in a pass, eliminating ~N per-handler ChangeSet
42
- // allocations and their later merge. When omitted (tests, ad-hoc callers)
43
- // each call still gets its own fresh ChangeSet via `emptyResult()`, so the
44
- // existing test API (`await sut.collectAddition()`) stays unchanged.
45
- async collect(sink) {
36
+ this.ctx = ctx;
37
+ }
38
+ get config() {
39
+ return this.ctx.config;
40
+ }
41
+ async collect() {
46
42
  if (!this._isProcessable()) {
47
- return this._emptyResultFor(sink);
43
+ return emptyResult();
48
44
  }
49
45
  try {
50
46
  switch (this.changeType) {
51
47
  case ADDITION:
52
- return await this.collectAddition(sink);
48
+ return await this.collectAddition();
53
49
  case DELETION:
54
- return await this.collectDeletion(sink);
50
+ return await this.collectDeletion();
55
51
  case MODIFICATION:
56
- return await this.collectModification(sink);
52
+ return await this.collectModification();
57
53
  default:
58
- return this._emptyResultFor(sink);
54
+ return emptyResult();
59
55
  }
60
56
  }
61
57
  catch (error) {
62
58
  const message = `${this.element.basePath}: ${getErrorMessage(error)}`;
59
+ // Stryker disable CallExpression -- equivalent: removing either log call entirely is unobservable, because this file's tests mock LoggingService and assert on the wrapped warning in result.warnings via wrapError; asserting the emission itself would couple them to logging plumbing, which this project deliberately avoids
63
60
  // Stryker disable next-line StringLiteral -- equivalent: lazy log content is observability only; tests assert on the wrapped warning message in result.warnings via wrapError, not on the lazy log line
64
61
  Logger.warn(lazy `${message}`);
65
62
  Logger.debug(
66
63
  // Stryker disable next-line StringLiteral,ArrowFunction -- equivalent: same as above, debug log is observability only
67
64
  lazy `${this.constructor.name}.collect: ${this.changeType} ${this.element.type.xmlName} '${this.element.basePath}' failed: ${() => getErrorMessage(error)}`);
68
- const failed = this._emptyResultFor(sink);
69
- failed.warnings.push(wrapError(message, error));
70
- return failed;
65
+ // Stryker restore CallExpression
66
+ return { elements: [], copies: [], warnings: [wrapError(message, error)] };
71
67
  }
72
68
  }
73
- async collectAddition(sink) {
74
- const result = this._emptyResultFor(sink);
75
- result.changes.addElement(this._collectManifestElement(ManifestTarget.Package));
76
- this._collectCopyWithMetaFile(result.copies, this.element.basePath);
77
- return result;
78
- }
79
- async collectDeletion(sink) {
80
- const result = this._emptyResultFor(sink);
81
- result.changes.addElement(this._collectManifestElement(ManifestTarget.DestructiveChanges));
82
- return result;
69
+ async collectAddition() {
70
+ const copies = [];
71
+ this._collectCopyWithMetaFile(copies, this.element.basePath);
72
+ return {
73
+ elements: [this._collectManifestElement(ManifestTarget.Package)],
74
+ copies,
75
+ warnings: [],
76
+ };
83
77
  }
84
- async collectModification(sink) {
85
- return await this.collectAddition(sink);
78
+ async collectDeletion() {
79
+ return {
80
+ elements: [
81
+ this._collectManifestElement(ManifestTarget.DestructiveChanges),
82
+ ],
83
+ copies: [],
84
+ warnings: [],
85
+ };
86
86
  }
87
- _emptyResultFor(sink) {
88
- // Stryker disable next-line ObjectLiteral,ArrayDeclaration -- equivalent: see v8 ignore — production callers always pass a sink, so the truthy branch is the only reachable one and the {changes,copies,warnings} shape is asserted by the consumer via specific keys
89
- /* v8 ignore next -- defensive: production callers always pass a sink; the no-sink fallback exists for legacy / direct-handler tests */
90
- return sink ? { changes: sink, copies: [], warnings: [] } : emptyResult();
87
+ async collectModification() {
88
+ return await this.collectAddition();
91
89
  }
92
90
  _getElementName() {
93
91
  return this.element.componentName;
@@ -1 +1 @@
1
- {"version":3,"file":"standardHandler.js","sourceRoot":"","sources":["../../src/service/standardHandler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"standardHandler.js","sourceRoot":"","sources":["../../src/service/standardHandler.ts"],"names":[],"mappings":"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"}
@@ -1,14 +1,16 @@
1
- import { MetadataRepository } from '../metadata/MetadataRepository.js';
2
- import type { Work } from '../types/work.js';
1
+ import type { MetadataRepository } from '../metadata/MetadataRepository.js';
2
+ import type { Config } from '../types/config.js';
3
+ import type { RunContext } from '../types/runContext.js';
3
4
  import { MetadataBoundaryResolver } from '../utils/metadataBoundaryResolver.js';
4
5
  import Standard from './standardHandler.js';
5
6
  export default class TypeHandlerFactory {
6
- protected readonly work: Work;
7
- protected readonly metadata: MetadataRepository;
7
+ protected readonly ctx: RunContext;
8
8
  protected readonly resolver: MetadataBoundaryResolver;
9
9
  private readonly inFileParentXmlNames;
10
10
  private readonly handlerCache;
11
- constructor(work: Work, metadata: MetadataRepository);
11
+ constructor(ctx: RunContext);
12
+ protected get config(): Config;
13
+ protected get metadata(): MetadataRepository;
12
14
  getTypeHandler(line: string): Promise<Standard>;
13
15
  private buildInFileParentIndex;
14
16
  private resolveHandler;
@@ -5,7 +5,6 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
5
5
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
6
  return c > 3 && r && Object.defineProperty(target, key, r), r;
7
7
  };
8
- import GitAdapter from '../adapter/GitAdapter.js';
9
8
  import { DELETION, GIT_DIFF_TYPE_REGEX } from '../constant/gitConstants.js';
10
9
  import { log } from '../utils/LoggingDecorator.js';
11
10
  import { MetadataBoundaryResolver } from '../utils/metadataBoundaryResolver.js';
@@ -58,8 +57,7 @@ const adapterHandlerMap = {
58
57
  mixedContent: InResource,
59
58
  };
60
59
  export default class TypeHandlerFactory {
61
- work;
62
- metadata;
60
+ ctx;
63
61
  resolver;
64
62
  inFileParentXmlNames;
65
63
  // Memoizes resolveHandler(metadata) → handler-class. The dispatch
@@ -70,15 +68,19 @@ export default class TypeHandlerFactory {
70
68
  // stays trivially small.
71
69
  handlerCache = new Map();
72
70
  // Stryker disable BlockStatement -- equivalent: constructor body wires the resolver and pre-builds the inFileParent index; tests instantiate via factory paths that exercise the indexed lookups indirectly, but the mutant `{}` constructor would fail at first getTypeHandler call (resolver undefined), and that failure surfaces only outside the unit test surface for the factory's pure-routing tests
73
- constructor(work, metadata) {
74
- this.work = work;
75
- this.metadata = metadata;
76
- const gitAdapter = GitAdapter.getInstance(work.config);
77
- this.resolver = new MetadataBoundaryResolver(metadata, gitAdapter);
71
+ constructor(ctx) {
72
+ this.ctx = ctx;
73
+ this.resolver = new MetadataBoundaryResolver(ctx);
78
74
  this.inFileParentXmlNames = new Set();
79
75
  this.buildInFileParentIndex();
80
76
  }
81
77
  // Stryker restore BlockStatement
78
+ get config() {
79
+ return this.ctx.config;
80
+ }
81
+ get metadata() {
82
+ return this.ctx.metadata;
83
+ }
82
84
  async getTypeHandler(line) {
83
85
  // Stryker disable next-line MethodExpression -- equivalent: line.charAt(0) extracts the first character (A/M/D/R); mutating to `line` returns the full line which is then matched against DELETION constant — only the first-char comparison logic matters and the rest of the path proceeds with the now-truthy changeType assignment
84
86
  const changeType = line.charAt(0);
@@ -91,12 +93,10 @@ export default class TypeHandlerFactory {
91
93
  throw new Error(`Unknown metadata type for path: ${path}`);
92
94
  }
93
95
  // Stryker restore ConditionalExpression,BlockStatement,StringLiteral
94
- // Stryker disable ConditionalExpression,EqualityOperator -- equivalent: the conditional picks `from` for deletions and `to` for additions/modifications; the test surface uses identical from/to values via getWork() defaults so the swap is unobservable
95
- const revision = changeType === DELETION ? this.work.config.from : this.work.config.to;
96
- // Stryker restore ConditionalExpression,EqualityOperator
96
+ const revision = changeType === DELETION ? this.config.from : this.config.to;
97
97
  const element = await this.resolver.createElement(path, type, revision);
98
98
  const Handler = this.resolveHandler(type);
99
- return new Handler(changeType, element, this.work);
99
+ return new Handler(changeType, element, this.ctx);
100
100
  }
101
101
  // Stryker disable next-line BlockStatement -- equivalent: emptying the body produces an empty inFileParent index; downstream resolveHandler falls back to Standard for inFile parents, which still routes correctly for the pure-routing test surface
102
102
  buildInFileParentIndex() {
@@ -118,6 +118,7 @@ export default class TypeHandlerFactory {
118
118
  if (cached !== undefined)
119
119
  return cached;
120
120
  const resolved = this._computeHandler(type);
121
+ // Stryker disable next-line CallExpression -- equivalent: cache population; dropping the set() only means resolveHandler recomputes through the deterministic _computeHandler(type) on every call, which is the same situation the cache-check flip above is already documented as equivalent for
121
122
  this.handlerCache.set(type, resolved);
122
123
  return resolved;
123
124
  }