packtory 0.0.5 → 0.0.6

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 (207) hide show
  1. package/artifacts/artifacts-builder.d.ts +7 -7
  2. package/artifacts/artifacts-builder.d.ts.map +1 -1
  3. package/artifacts/artifacts-builder.js +22 -25
  4. package/artifacts/artifacts-builder.js.map +1 -1
  5. package/bundle-emitter/emitter.d.ts +30 -0
  6. package/bundle-emitter/emitter.d.ts.map +1 -0
  7. package/bundle-emitter/emitter.js +35 -0
  8. package/bundle-emitter/emitter.js.map +1 -0
  9. package/{publisher → bundle-emitter}/extract-package-tarball.js +2 -2
  10. package/bundle-emitter/extract-package-tarball.js.map +1 -0
  11. package/{publisher → bundle-emitter}/registry-client.d.ts +5 -5
  12. package/bundle-emitter/registry-client.d.ts.map +1 -0
  13. package/{publisher → bundle-emitter}/registry-client.js +13 -10
  14. package/bundle-emitter/registry-client.js.map +1 -0
  15. package/checks/check-runner.js +13 -0
  16. package/checks/check-runner.js.map +1 -0
  17. package/checks/rules/no-duplicated-files.js +29 -0
  18. package/checks/rules/no-duplicated-files.js.map +1 -0
  19. package/config/additional-files.d.ts +6 -12
  20. package/config/additional-files.d.ts.map +1 -1
  21. package/config/additional-files.js +4 -5
  22. package/config/additional-files.js.map +1 -1
  23. package/config/base-validations.js +2 -2
  24. package/config/base-validations.js.map +1 -1
  25. package/config/config.d.ts +671 -468
  26. package/config/config.d.ts.map +1 -1
  27. package/config/config.js +55 -52
  28. package/config/config.js.map +1 -1
  29. package/config/entry-point.d.ts +6 -12
  30. package/config/entry-point.d.ts.map +1 -1
  31. package/config/entry-point.js +5 -6
  32. package/config/entry-point.js.map +1 -1
  33. package/config/package-json.d.ts +10 -38
  34. package/config/package-json.d.ts.map +1 -1
  35. package/config/package-json.js +9 -20
  36. package/config/package-json.js.map +1 -1
  37. package/config/registry-settings.d.ts +6 -12
  38. package/config/registry-settings.d.ts.map +1 -1
  39. package/config/registry-settings.js +5 -6
  40. package/config/registry-settings.js.map +1 -1
  41. package/config/validation.d.ts +15 -5
  42. package/config/validation.d.ts.map +1 -1
  43. package/config/validation.js +32 -9
  44. package/config/validation.js.map +1 -1
  45. package/config/versioning-settings.d.ts +9 -22
  46. package/config/versioning-settings.d.ts.map +1 -1
  47. package/config/versioning-settings.js +10 -13
  48. package/config/versioning-settings.js.map +1 -1
  49. package/dependency-scanner/dependency-graph.d.ts +15 -13
  50. package/dependency-scanner/dependency-graph.d.ts.map +1 -1
  51. package/dependency-scanner/dependency-graph.js +31 -12
  52. package/dependency-scanner/dependency-graph.js.map +1 -1
  53. package/dependency-scanner/external-dependencies.d.ts +7 -0
  54. package/dependency-scanner/external-dependencies.d.ts.map +1 -0
  55. package/dependency-scanner/external-dependencies.js +18 -0
  56. package/dependency-scanner/external-dependencies.js.map +1 -0
  57. package/dependency-scanner/scanner.d.ts +4 -19
  58. package/dependency-scanner/scanner.d.ts.map +1 -1
  59. package/dependency-scanner/scanner.js +8 -67
  60. package/dependency-scanner/scanner.js.map +1 -1
  61. package/dependency-scanner/source-file-references.js +2 -1
  62. package/dependency-scanner/source-file-references.js.map +1 -1
  63. package/dependency-scanner/source-map-file-locator.d.ts +2 -2
  64. package/dependency-scanner/source-map-file-locator.d.ts.map +1 -1
  65. package/dependency-scanner/typescript-file-host.d.ts.map +1 -1
  66. package/dependency-scanner/typescript-file-host.js +1 -2
  67. package/dependency-scanner/typescript-file-host.js.map +1 -1
  68. package/dependency-scanner/typescript-project-analyzer.d.ts +6 -5
  69. package/dependency-scanner/typescript-project-analyzer.d.ts.map +1 -1
  70. package/dependency-scanner/typescript-project-analyzer.js +3 -0
  71. package/dependency-scanner/typescript-project-analyzer.js.map +1 -1
  72. package/directed-graph/graph.d.ts +12 -10
  73. package/directed-graph/graph.d.ts.map +1 -1
  74. package/directed-graph/graph.js +23 -11
  75. package/directed-graph/graph.js.map +1 -1
  76. package/{file-description → file-manager}/compare.js +2 -2
  77. package/file-manager/compare.js.map +1 -0
  78. package/file-manager/equal.js.map +1 -0
  79. package/file-manager/file-description.d.ts +13 -0
  80. package/file-manager/file-description.d.ts.map +1 -0
  81. package/file-manager/file-manager.d.ts +19 -0
  82. package/file-manager/file-manager.d.ts.map +1 -0
  83. package/{artifacts → file-manager}/file-manager.js +15 -4
  84. package/file-manager/file-manager.js.map +1 -0
  85. package/{file-description → file-manager}/permissions.js +1 -0
  86. package/file-manager/permissions.js.map +1 -0
  87. package/{file-description → file-manager}/sort.js +1 -1
  88. package/file-manager/sort.js.map +1 -0
  89. package/linker/linked-bundle.d.ts +14 -0
  90. package/linker/linked-bundle.d.ts.map +1 -0
  91. package/linker/linker.d.ts +12 -0
  92. package/linker/linker.d.ts.map +1 -0
  93. package/linker/linker.js +25 -0
  94. package/linker/linker.js.map +1 -0
  95. package/linker/resource-graph.js +30 -0
  96. package/linker/resource-graph.js.map +1 -0
  97. package/linker/source-modifier/import-paths.js +36 -0
  98. package/linker/source-modifier/import-paths.js.map +1 -0
  99. package/linker/substitute-bundles.js +75 -0
  100. package/linker/substitute-bundles.js.map +1 -0
  101. package/linker/substituted-resource-graph.js +57 -0
  102. package/linker/substituted-resource-graph.js.map +1 -0
  103. package/list/unique-list.js +5 -0
  104. package/list/unique-list.js.map +1 -0
  105. package/package.json +15 -13
  106. package/packages/packtory/packtory.entry-point.d.ts +3 -3
  107. package/packages/packtory/packtory.entry-point.d.ts.map +1 -1
  108. package/packages/packtory/packtory.entry-point.js +41 -18
  109. package/packages/packtory/packtory.entry-point.js.map +1 -1
  110. package/packtory/map-config.d.ts +25 -0
  111. package/packtory/map-config.d.ts.map +1 -0
  112. package/packtory/map-config.js +29 -13
  113. package/packtory/map-config.js.map +1 -1
  114. package/packtory/package-processor.d.ts +32 -0
  115. package/packtory/package-processor.d.ts.map +1 -0
  116. package/packtory/package-processor.js +86 -0
  117. package/packtory/package-processor.js.map +1 -0
  118. package/packtory/packtory.d.ts +25 -7
  119. package/packtory/packtory.d.ts.map +1 -1
  120. package/packtory/packtory.js +119 -17
  121. package/packtory/packtory.js.map +1 -1
  122. package/packtory/scheduler.d.ts +36 -7
  123. package/packtory/scheduler.d.ts.map +1 -1
  124. package/packtory/scheduler.js +39 -25
  125. package/packtory/scheduler.js.map +1 -1
  126. package/progress/progress-broadcaster.d.ts +8 -0
  127. package/progress/progress-broadcaster.d.ts.map +1 -1
  128. package/progress/progress-broadcaster.js +1 -0
  129. package/progress/progress-broadcaster.js.map +1 -1
  130. package/resource-resolver/content.js +35 -0
  131. package/resource-resolver/content.js.map +1 -0
  132. package/resource-resolver/resolved-bundle.d.ts +21 -0
  133. package/resource-resolver/resolved-bundle.d.ts.map +1 -0
  134. package/resource-resolver/resource-resolve-options.d.ts +13 -0
  135. package/resource-resolver/resource-resolve-options.d.ts.map +1 -0
  136. package/resource-resolver/resource-resolver.d.ts +13 -0
  137. package/resource-resolver/resource-resolver.d.ts.map +1 -0
  138. package/resource-resolver/resource-resolver.js +66 -0
  139. package/resource-resolver/resource-resolver.js.map +1 -0
  140. package/tar/tarball-builder.d.ts +2 -2
  141. package/tar/tarball-builder.d.ts.map +1 -1
  142. package/tar/tarball-builder.js +1 -0
  143. package/tar/tarball-builder.js.map +1 -1
  144. package/version-manager/manager.d.ts +7 -0
  145. package/version-manager/manager.d.ts.map +1 -0
  146. package/version-manager/manager.js +44 -0
  147. package/version-manager/manager.js.map +1 -0
  148. package/version-manager/manifest/builder.d.ts +5 -0
  149. package/version-manager/manifest/builder.d.ts.map +1 -0
  150. package/version-manager/manifest/builder.js +13 -0
  151. package/version-manager/manifest/builder.js.map +1 -0
  152. package/{package-json.js → version-manager/manifest/serialize.js} +3 -2
  153. package/version-manager/manifest/serialize.js.map +1 -0
  154. package/version-manager/versioned-bundle.d.ts +28 -0
  155. package/version-manager/versioned-bundle.d.ts.map +1 -0
  156. package/version-manager/versioned-bundle.js +79 -0
  157. package/version-manager/versioned-bundle.js.map +1 -0
  158. package/LICENSE +0 -21
  159. package/artifacts/file-manager.d.ts +0 -17
  160. package/artifacts/file-manager.d.ts.map +0 -1
  161. package/artifacts/file-manager.js.map +0 -1
  162. package/bundler/bundle-build-options.d.ts +0 -19
  163. package/bundler/bundle-build-options.d.ts.map +0 -1
  164. package/bundler/bundle-build-options.js +0 -25
  165. package/bundler/bundle-build-options.js.map +0 -1
  166. package/bundler/bundle-description.d.ts +0 -27
  167. package/bundler/bundle-description.d.ts.map +0 -1
  168. package/bundler/bundler.d.ts +0 -11
  169. package/bundler/bundler.d.ts.map +0 -1
  170. package/bundler/bundler.js +0 -101
  171. package/bundler/bundler.js.map +0 -1
  172. package/bundler/content.js +0 -53
  173. package/bundler/content.js.map +0 -1
  174. package/bundler/substitute-bundles.js +0 -73
  175. package/bundler/substitute-bundles.js.map +0 -1
  176. package/config/base-validations.d.ts +0 -5
  177. package/config/base-validations.d.ts.map +0 -1
  178. package/file-description/compare.js.map +0 -1
  179. package/file-description/equal.js.map +0 -1
  180. package/file-description/file-description.d.ts +0 -6
  181. package/file-description/file-description.d.ts.map +0 -1
  182. package/file-description/permissions.js.map +0 -1
  183. package/file-description/sort.js.map +0 -1
  184. package/package-json.js.map +0 -1
  185. package/packages/bundler/bundler.entry-point.js +0 -21
  186. package/packages/bundler/bundler.entry-point.js.map +0 -1
  187. package/publisher/extract-package-tarball.js.map +0 -1
  188. package/publisher/publisher.d.ts +0 -39
  189. package/publisher/publisher.d.ts.map +0 -1
  190. package/publisher/publisher.js +0 -73
  191. package/publisher/publisher.js.map +0 -1
  192. package/publisher/registry-client.d.ts.map +0 -1
  193. package/publisher/registry-client.js.map +0 -1
  194. package/publisher/version.js +0 -35
  195. package/publisher/version.js.map +0 -1
  196. package/readme.md +0 -38
  197. package/source-modifier/import-paths.js +0 -17
  198. package/source-modifier/import-paths.js.map +0 -1
  199. package/validation/capitalize.js +0 -7
  200. package/validation/capitalize.js.map +0 -1
  201. package/validation/formatting/ast.js +0 -113
  202. package/validation/formatting/ast.js.map +0 -1
  203. package/validation/formatting.js +0 -98
  204. package/validation/formatting.js.map +0 -1
  205. package/validation/validate.js +0 -17
  206. package/validation/validate.js.map +0 -1
  207. /package/{file-description → file-manager}/equal.js +0 -0
@@ -1,73 +0,0 @@
1
- import { compareFileDescriptions } from '../file-description/compare.js';
2
- import { increaseVersion, replaceBundleVersion } from './version.js';
3
- // eslint-disable-next-line import/max-dependencies -- needs to be fixed but I don’t have a good idea right now
4
- import { extractPackageTarball } from './extract-package-tarball.js';
5
- export function createPublisher(dependencies) {
6
- const { artifactsBuilder, registryClient, bundler, progressBroadcaster } = dependencies;
7
- async function checkBundleAlreadyPublished(bundle, latestVersion) {
8
- const artifactContents = await artifactsBuilder.collectContents(bundle);
9
- const tarball = await registryClient.fetchTarball(latestVersion.tarballUrl, latestVersion.shasum);
10
- const latestVersionArtifactContents = await extractPackageTarball(tarball);
11
- const result = compareFileDescriptions(artifactContents, latestVersionArtifactContents);
12
- return { alreadyPublishedAsLatest: result.status === 'equal' };
13
- }
14
- async function buildVersion(buildOptions, version, status) {
15
- const bundle = await bundler.build({ ...buildOptions, version });
16
- const tarball = await artifactsBuilder.buildTarball(bundle);
17
- return { status, tarData: tarball.tarData, bundle };
18
- }
19
- async function buildNewVersion(buildOptions, latestVersion, bundleWithLatestVersion, minimumVersion = '0.0.1') {
20
- const newVersion = increaseVersion(latestVersion, minimumVersion);
21
- progressBroadcaster.emit('rebuilding', { packageName: buildOptions.name, version: newVersion });
22
- const bundleWithNewVersion = replaceBundleVersion(bundleWithLatestVersion, newVersion);
23
- const tarballWithNewVersion = await artifactsBuilder.buildTarball(bundleWithNewVersion);
24
- return {
25
- status: 'new-version',
26
- tarData: tarballWithNewVersion.tarData,
27
- bundle: bundleWithNewVersion
28
- };
29
- }
30
- async function buildWithAutomaticVersioning(buildOptions, latestVersion, minimumVersion = '0.0.1') {
31
- if (latestVersion.isNothing) {
32
- progressBroadcaster.emit('building', { packageName: buildOptions.name, version: minimumVersion });
33
- return buildVersion(buildOptions, minimumVersion, 'initial-version');
34
- }
35
- progressBroadcaster.emit('building', { packageName: buildOptions.name, version: latestVersion.value.version });
36
- const bundleWithLatestVersion = await bundler.build({ ...buildOptions, version: latestVersion.value.version });
37
- const result = await checkBundleAlreadyPublished(bundleWithLatestVersion, latestVersion.value);
38
- if (!result.alreadyPublishedAsLatest) {
39
- return buildNewVersion(buildOptions, latestVersion.value.version, bundleWithLatestVersion, minimumVersion);
40
- }
41
- return { status: 'already-published', bundle: bundleWithLatestVersion };
42
- }
43
- async function buildWithManualVersioning(buildOptions, latestVersion, versionToPublish) {
44
- if (latestVersion.isJust && latestVersion.value.version === versionToPublish) {
45
- throw new Error(`Version ${versionToPublish} of package ${buildOptions.name} is already published`);
46
- }
47
- progressBroadcaster.emit('building', { packageName: buildOptions.name, version: versionToPublish });
48
- return buildVersion(buildOptions, versionToPublish, 'new-version');
49
- }
50
- async function tryBuildAndPublish(options) {
51
- const { versioning = { automatic: true }, registrySettings, ...buildOptions } = options;
52
- const latestVersion = await registryClient.fetchLatestVersion(buildOptions.name, registrySettings);
53
- if (versioning.automatic) {
54
- return buildWithAutomaticVersioning(buildOptions, latestVersion, versioning.minimumVersion);
55
- }
56
- return buildWithManualVersioning(buildOptions, latestVersion, versioning.version);
57
- }
58
- return {
59
- tryBuildAndPublish,
60
- async buildAndPublish(options) {
61
- const result = await tryBuildAndPublish(options);
62
- if (result.status !== 'already-published') {
63
- progressBroadcaster.emit('publishing', {
64
- packageName: result.bundle.packageJson.name,
65
- version: result.bundle.packageJson.version
66
- });
67
- await registryClient.publishPackage(result.bundle.packageJson, result.tarData, options.registrySettings);
68
- }
69
- return { status: result.status, bundle: result.bundle };
70
- }
71
- };
72
- }
73
- //# sourceMappingURL=publisher.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"publisher.js","sourceRoot":"","sources":["../../../../source/publisher/publisher.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"registry-client.d.ts","sourceRoot":"","sources":["../../../../source/publisher/registry-client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,SAAS,MAAM,oBAAoB,CAAC;AAChD,OAAO,KAAK,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzD,OAAO,EAAE,KAAK,EAAE,MAAM,WAAW,CAAC;AAElC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AAC1E,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAEvE,KAAK,eAAe,GAAG,OAAO,QAAQ,CAAC;AAEvC,MAAM,MAAM,0BAA0B,GAAG;IACrC,QAAQ,CAAC,QAAQ,EAAE,OAAO,SAAS,CAAC;IACpC,QAAQ,CAAC,OAAO,EAAE,eAAe,CAAC;CACrC,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IACzB,kBAAkB,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,gBAAgB,GAAG,OAAO,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC,CAAC;IACzG,cAAc,CAAC,QAAQ,EAAE,QAAQ,CAAC,iBAAiB,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAChH,YAAY,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;CACrE,CAAC;AAmCF,MAAM,MAAM,qBAAqB,GAAG;IAChC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;CAC/B,CAAC;AAKF,wBAAgB,oBAAoB,CAAC,YAAY,EAAE,QAAQ,CAAC,0BAA0B,CAAC,GAAG,cAAc,CAmFvG"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"registry-client.js","sourceRoot":"","sources":["../../../../source/publisher/registry-client.ts"],"names":[],"mappings":"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"}
@@ -1,35 +0,0 @@
1
- import semver from 'semver';
2
- import { serializePackageJson } from '../package-json.js';
3
- export function increaseVersion(version, minimumVersion) {
4
- if (minimumVersion !== undefined && semver.valid(minimumVersion) === null) {
5
- throw new Error(`Invalid minimumVersion ${minimumVersion} provided`);
6
- }
7
- const newVersion = semver.inc(version, 'patch');
8
- if (newVersion === null) {
9
- throw new Error(`Unable to increase version number ${version}`);
10
- }
11
- if (minimumVersion !== undefined && semver.lt(newVersion, minimumVersion)) {
12
- return minimumVersion;
13
- }
14
- return newVersion;
15
- }
16
- function isNotPackageJsonContentEntry(entry) {
17
- return entry.targetFilePath !== 'package.json';
18
- }
19
- export function replaceBundleVersion(bundle, newVersion) {
20
- const newPackageJson = { ...bundle.packageJson };
21
- newPackageJson.version = newVersion;
22
- const newContents = [
23
- {
24
- kind: 'source',
25
- targetFilePath: 'package.json',
26
- source: serializePackageJson(newPackageJson)
27
- },
28
- ...bundle.contents.filter(isNotPackageJsonContentEntry)
29
- ];
30
- return {
31
- contents: newContents,
32
- packageJson: newPackageJson
33
- };
34
- }
35
- //# sourceMappingURL=version.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"version.js","sourceRoot":"","sources":["../../../../source/publisher/version.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,QAAQ,CAAC;AAG5B,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAI1D,MAAM,UAAU,eAAe,CAAC,OAAe,EAAE,cAAwB;IACrE,IAAI,cAAc,KAAK,SAAS,IAAI,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,KAAK,IAAI,EAAE,CAAC;QACxE,MAAM,IAAI,KAAK,CAAC,0BAA0B,cAAc,WAAW,CAAC,CAAC;IACzE,CAAC;IAED,MAAM,UAAU,GAAG,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAEhD,IAAI,UAAU,KAAK,IAAI,EAAE,CAAC;QACtB,MAAM,IAAI,KAAK,CAAC,qCAAqC,OAAO,EAAE,CAAC,CAAC;IACpE,CAAC;IAED,IAAI,cAAc,KAAK,SAAS,IAAI,MAAM,CAAC,EAAE,CAAC,UAAU,EAAE,cAAc,CAAC,EAAE,CAAC;QACxE,OAAO,cAAc,CAAC;IAC1B,CAAC;IAED,OAAO,UAAU,CAAC;AACtB,CAAC;AAED,SAAS,4BAA4B,CAAC,KAAoB;IACtD,OAAO,KAAK,CAAC,cAAc,KAAK,cAAc,CAAC;AACnD,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,MAAyB,EAAE,UAAkB;IAC9E,MAAM,cAAc,GAAgC,EAAE,GAAG,MAAM,CAAC,WAAW,EAAE,CAAC;IAC9E,cAAc,CAAC,OAAO,GAAG,UAAU,CAAC;IAEpC,MAAM,WAAW,GAAoB;QACjC;YACI,IAAI,EAAE,QAAQ;YACd,cAAc,EAAE,cAAc;YAC9B,MAAM,EAAE,oBAAoB,CAAC,cAAc,CAAC;SAC/C;QACD,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,4BAA4B,CAAC;KAC1D,CAAC;IAEF,OAAO;QACH,QAAQ,EAAE,WAAW;QACrB,WAAW,EAAE,cAAmC;KACnD,CAAC;AACN,CAAC"}
package/readme.md DELETED
@@ -1,38 +0,0 @@
1
- ### packtory
2
-
3
- **API Package for packtory**
4
-
5
- This package provides an API for the `packtory` tool, enabling programmatic usage. It exposes a single function, `buildAndPublishAll(config, options)`, allowing you to integrate packtory into your custom workflows.
6
-
7
- **Installation:**
8
-
9
- ```bash
10
- npm install packtory
11
- ```
12
-
13
- **Usage:**
14
-
15
- ```javascript
16
- import { buildAndPublishAll } from 'packtory';
17
-
18
- const config = {
19
- /* your packtory configuration */
20
- };
21
- const options = { dryRun: true }; // Example options
22
-
23
- (async () => {
24
- const result = await buildAndPublishAll(config, options);
25
- console.log(result);
26
- })();
27
- ```
28
-
29
- **Parameters:**
30
-
31
- - **config:** The packtory configuration object.
32
- - **options:** An options object, currently supporting a `dryRun` boolean.
33
-
34
- **Return Value:**
35
-
36
- - A `PublishAllResult` object containing either a list of successful publish results or a partial error if some packages have failed.
37
-
38
- **Note:** Refer to the [full documentation](https://github.com/enormora/packtory/blob/main/readme.md) for additional details.
@@ -1,17 +0,0 @@
1
- import { resolveSourceFileForLiteral } from '../dependency-scanner/source-file-references.js';
2
- import { getSourcePathFromSourceFile } from '../dependency-scanner/typescript-project-analyzer.js';
3
- export function replaceImportPaths(sourceFile, replacements) {
4
- const importStringLiterals = sourceFile.getImportStringLiterals();
5
- for (const literal of importStringLiterals) {
6
- const sourceFileForLiteral = resolveSourceFileForLiteral(literal, sourceFile);
7
- if (sourceFileForLiteral !== undefined) {
8
- const fullPathForLiteral = getSourcePathFromSourceFile(sourceFileForLiteral);
9
- const replacement = replacements.get(fullPathForLiteral);
10
- if (replacement !== undefined) {
11
- literal.setLiteralValue(replacement);
12
- }
13
- }
14
- }
15
- return sourceFile.getFullText();
16
- }
17
- //# sourceMappingURL=import-paths.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"import-paths.js","sourceRoot":"","sources":["../../../../source/source-modifier/import-paths.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,2BAA2B,EAAE,MAAM,iDAAiD,CAAC;AAC9F,OAAO,EAAE,2BAA2B,EAAE,MAAM,sDAAsD,CAAC;AAInG,MAAM,UAAU,kBAAkB,CAAC,UAAgC,EAAE,YAAoC;IACrG,MAAM,oBAAoB,GAAG,UAAU,CAAC,uBAAuB,EAAE,CAAC;IAElE,KAAK,MAAM,OAAO,IAAI,oBAAoB,EAAE,CAAC;QACzC,MAAM,oBAAoB,GAAG,2BAA2B,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;QAC9E,IAAI,oBAAoB,KAAK,SAAS,EAAE,CAAC;YACrC,MAAM,kBAAkB,GAAG,2BAA2B,CAAC,oBAAoB,CAAC,CAAC;YAC7E,MAAM,WAAW,GAAG,YAAY,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;YAEzD,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;gBAC5B,OAAO,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC;YACzC,CAAC;QACL,CAAC;IACL,CAAC;IAED,OAAO,UAAU,CAAC,WAAW,EAAE,CAAC;AACpC,CAAC"}
@@ -1,7 +0,0 @@
1
- export function capitalize(value) {
2
- const firstLetterCodePoint = value.codePointAt(0);
3
- const firstLetter = firstLetterCodePoint === undefined ? '' : String.fromCodePoint(firstLetterCodePoint);
4
- const remainingLetters = value.slice(firstLetter.length);
5
- return `${firstLetter.toUpperCase()}${remainingLetters}`;
6
- }
7
- //# sourceMappingURL=capitalize.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"capitalize.js","sourceRoot":"","sources":["../../../../source/validation/capitalize.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,UAAU,CAAC,KAAa;IACpC,MAAM,oBAAoB,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;IAClD,MAAM,WAAW,GAAG,oBAAoB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,oBAAoB,CAAC,CAAC;IACzG,MAAM,gBAAgB,GAAG,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;IACzD,OAAO,GAAG,WAAW,CAAC,WAAW,EAAE,GAAG,gBAAgB,EAAE,CAAC;AAC7D,CAAC"}
@@ -1,113 +0,0 @@
1
- import * as Option from 'effect/Option';
2
- import { map, isNonEmptyReadonlyArray, flatMap } from 'effect/ReadonlyArray';
3
- import { getIdentifierAnnotation, getTitleAnnotation, getDescriptionAnnotation, isLiteral } from '@effect/schema/AST';
4
- function getNameFromAnnotation(ast, fallback) {
5
- return getIdentifierAnnotation(ast).pipe(Option.orElse(() => {
6
- return getTitleAnnotation(ast);
7
- }), Option.orElse(() => {
8
- return getDescriptionAnnotation(ast);
9
- }), Option.getOrElse(() => {
10
- return fallback;
11
- }));
12
- }
13
- const astTypeToFormattedType = {
14
- TypeLiteral: 'object',
15
- Tuple: 'array',
16
- StringKeyword: 'string',
17
- NumberKeyword: 'number',
18
- BooleanKeyword: 'boolean',
19
- UndefinedKeyword: 'undefined',
20
- NeverKeyword: 'never',
21
- UnknownKeyword: 'unknown',
22
- AnyKeyword: 'any',
23
- BigIntKeyword: 'bigint',
24
- VoidKeyword: 'void',
25
- UniqueSymbol: 'symbol',
26
- SymbolKeyword: 'symbol',
27
- ObjectKeyword: 'object'
28
- };
29
- function isTupleOfLength(list, length) {
30
- return list.length === length;
31
- }
32
- function isLiteralValue(type, expectedValue) {
33
- return isLiteral(type) && type.literal === expectedValue;
34
- }
35
- export function isBooleanLiteralUnion(types) {
36
- const amountOfMembersInBooleanLiteralUnion = 2;
37
- if (!isTupleOfLength(types, amountOfMembersInBooleanLiteralUnion)) {
38
- return false;
39
- }
40
- const [firstType, secondType] = types;
41
- const isTrueOrFalse = isLiteralValue(firstType, true) && isLiteralValue(secondType, false);
42
- const isFalseOrTrue = isLiteralValue(firstType, false) && isLiteralValue(secondType, true);
43
- return isTrueOrFalse || isFalseOrTrue;
44
- }
45
- function formatTemplateLiteralSpan(span) {
46
- const { _tag: tag } = span.type;
47
- const formattedType = astTypeToFormattedType[tag];
48
- return `\${${formattedType}}${span.literal}`;
49
- }
50
- function formatTemplateLiteralSpans(head, spans) {
51
- const formattedSpans = spans.map(formatTemplateLiteralSpan);
52
- return `${head}${formattedSpans.join('')}`;
53
- }
54
- function formatSimpleAst(ast) {
55
- const { _tag: tag } = ast;
56
- return [astTypeToFormattedType[tag]];
57
- }
58
- const formatters = {
59
- Declaration(ast) {
60
- return [getNameFromAnnotation(ast, '<anonymous declaration schema>')];
61
- },
62
- Literal(ast) {
63
- return [JSON.stringify(ast.literal)];
64
- },
65
- Transform(ast) {
66
- return [getNameFromAnnotation(ast, '<anonymous transform schema>')];
67
- },
68
- Union(ast) {
69
- if (isBooleanLiteralUnion(ast.types)) {
70
- return ['boolean'];
71
- }
72
- // eslint-disable-next-line @typescript-eslint/no-use-before-define -- indirect recursion
73
- return flatMap(ast.types, formatAst);
74
- },
75
- Enums(ast) {
76
- if (isNonEmptyReadonlyArray(ast.enums)) {
77
- return map(ast.enums, (value) => {
78
- return JSON.stringify(value);
79
- });
80
- }
81
- return ['empty enum'];
82
- },
83
- TemplateLiteral(ast) {
84
- return [formatTemplateLiteralSpans(ast.head, ast.spans)];
85
- },
86
- Refinement(ast) {
87
- return [getNameFromAnnotation(ast, '<anonymous refinement schema>')];
88
- },
89
- Suspend(ast) {
90
- // eslint-disable-next-line @typescript-eslint/no-use-before-define -- indirect recursion
91
- return formatAst(ast.f());
92
- },
93
- TypeLiteral: formatSimpleAst,
94
- Tuple: formatSimpleAst,
95
- StringKeyword: formatSimpleAst,
96
- NumberKeyword: formatSimpleAst,
97
- BooleanKeyword: formatSimpleAst,
98
- UndefinedKeyword: formatSimpleAst,
99
- NeverKeyword: formatSimpleAst,
100
- UnknownKeyword: formatSimpleAst,
101
- AnyKeyword: formatSimpleAst,
102
- BigIntKeyword: formatSimpleAst,
103
- VoidKeyword: formatSimpleAst,
104
- UniqueSymbol: formatSimpleAst,
105
- SymbolKeyword: formatSimpleAst,
106
- ObjectKeyword: formatSimpleAst
107
- };
108
- export function formatAst(ast) {
109
- const { _tag: tag } = ast;
110
- const formatter = formatters[tag];
111
- return formatter(ast);
112
- }
113
- //# sourceMappingURL=ast.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ast.js","sourceRoot":"","sources":["../../../../../source/validation/formatting/ast.ts"],"names":[],"mappings":"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"}
@@ -1,98 +0,0 @@
1
- import { map, flatMap, initNonEmpty, lastNonEmpty } from 'effect/ReadonlyArray';
2
- import { capitalize } from './capitalize.js';
3
- import { formatAst, isBooleanLiteralUnion } from './formatting/ast.js';
4
- function uniqueList(values) {
5
- return Array.from(new Set(values));
6
- }
7
- function hasTag(value, expectedTag) {
8
- const { _tag: tag } = value;
9
- return tag === expectedTag;
10
- }
11
- function formatOneOrMany(values) {
12
- const uniqueValues = uniqueList(values);
13
- const last = lastNonEmpty(uniqueValues);
14
- const init = initNonEmpty(uniqueValues);
15
- if (init.length > 0) {
16
- return `one of ${init.join(', ')} or ${last}`;
17
- }
18
- return last;
19
- }
20
- function formatActual(value) {
21
- if (Array.isArray(value)) {
22
- return 'array';
23
- }
24
- if (value === null) {
25
- return 'null';
26
- }
27
- return typeof value;
28
- }
29
- function formatMessageWithPath(path, message) {
30
- if (path.length > 0) {
31
- const formattedPath = path.join('.');
32
- return `At ${formattedPath}: ${message}`;
33
- }
34
- return capitalize(message);
35
- }
36
- function formatMessage(expected, actual) {
37
- return `expected ${formatOneOrMany(expected)}; but got ${formatActual(actual)}`;
38
- }
39
- function isTypeIssue(issue) {
40
- return hasTag(issue, 'Type');
41
- }
42
- function formatUnionIssues(issues, path) {
43
- const parseIssues = map(issues, (issue) => {
44
- if (hasTag(issue, 'Member')) {
45
- return issue.error;
46
- }
47
- return issue;
48
- });
49
- if (parseIssues.every(isTypeIssue)) {
50
- const expectedAsts = map(parseIssues, (issue) => {
51
- return issue.ast;
52
- });
53
- const list = isBooleanLiteralUnion(expectedAsts)
54
- ? ['boolean']
55
- : flatMap(expectedAsts, formatAst);
56
- return [formatMessageWithPath(path, formatMessage(list, parseIssues[0].actual))];
57
- }
58
- return flatMap(parseIssues, (issue) => {
59
- // eslint-disable-next-line @typescript-eslint/no-use-before-define -- indirect recursion
60
- return format(issue, path);
61
- });
62
- }
63
- function isContainerIssue(parseIssue) {
64
- return hasTag(parseIssue, 'Tuple') || hasTag(parseIssue, 'TypeLiteral');
65
- }
66
- function formatContainerIssue(issue, path) {
67
- const newPathItem = hasTag(issue, 'Key') ? issue.key : issue.index;
68
- const newPath = [...path, newPathItem];
69
- if (hasTag(issue.error, 'Missing')) {
70
- return [formatMessageWithPath(newPath, 'missing key or index')];
71
- }
72
- if (hasTag(issue.error, 'Unexpected')) {
73
- return [formatMessageWithPath(newPath, 'unexpected extra key or index')];
74
- }
75
- // eslint-disable-next-line @typescript-eslint/no-use-before-define -- indirect recursion
76
- return format(issue.error, newPath);
77
- }
78
- function format(parseIssue, path) {
79
- if (hasTag(parseIssue, 'Refinement') || hasTag(parseIssue, 'Transform')) {
80
- return format(parseIssue.error, path);
81
- }
82
- if (hasTag(parseIssue, 'Forbidden')) {
83
- return [formatMessageWithPath(path, 'forbidden')];
84
- }
85
- if (isContainerIssue(parseIssue)) {
86
- return flatMap(parseIssue.errors, (error) => {
87
- return formatContainerIssue(error, path);
88
- });
89
- }
90
- if (hasTag(parseIssue, 'Union')) {
91
- return formatUnionIssues(parseIssue.errors, path);
92
- }
93
- return [formatMessageWithPath(path, formatMessage(formatAst(parseIssue.ast), parseIssue.actual))];
94
- }
95
- export function formatAllParseIssues(parseError) {
96
- return uniqueList(format(parseError.error, []));
97
- }
98
- //# sourceMappingURL=formatting.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"formatting.js","sourceRoot":"","sources":["../../../../source/validation/formatting.ts"],"names":[],"mappings":"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"}
@@ -1,17 +0,0 @@
1
- import { parseEither } from '@effect/schema/Schema';
2
- import { Result } from 'true-myth';
3
- import { isRight } from 'effect/Either';
4
- import { formatAllParseIssues } from './formatting.js';
5
- // eslint-disable-next-line @typescript-eslint/no-explicit-any -- https://github.com/microsoft/TypeScript/issues/1213
6
- export function validateAgainstSchema(schema, data) {
7
- const result = parseEither(schema)(data, { errors: 'all', onExcessProperty: 'error' });
8
- if (isRight(result)) {
9
- return Result.ok(result.right);
10
- }
11
- const issues = formatAllParseIssues(result.left);
12
- return Result.err({
13
- issues,
14
- summary: `Validation failed with ${issues.length} issue(s):\n* ${issues.join('\n* ')}`
15
- });
16
- }
17
- //# sourceMappingURL=validate.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"validate.js","sourceRoot":"","sources":["../../../../source/validation/validate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAOvD,qHAAqH;AACrH,MAAM,UAAU,qBAAqB,CACjC,MAAe,EACf,IAAa;IAEb,MAAM,MAAM,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,gBAAgB,EAAE,OAAO,EAAE,CAAC,CAAC;IAEvF,IAAI,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QAClB,OAAO,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACnC,CAAC;IAED,MAAM,MAAM,GAAG,oBAAoB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAEjD,OAAO,MAAM,CAAC,GAAG,CAAC;QACd,MAAM;QACN,OAAO,EAAE,0BAA0B,MAAM,CAAC,MAAM,iBAAiB,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE;KACzF,CAAC,CAAC;AACP,CAAC"}
File without changes