syncpack 11.2.1 → 12.0.0-alpha.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 (273) hide show
  1. package/dist/bin-fix-mismatches/fix-mismatches.d.ts +15 -3
  2. package/dist/bin-fix-mismatches/fix-mismatches.js +119 -35
  3. package/dist/bin-fix-mismatches/index.js +12 -32
  4. package/dist/bin-format/format.d.ts +11 -3
  5. package/dist/bin-format/format.js +46 -61
  6. package/dist/bin-format/index.js +11 -31
  7. package/dist/bin-lint/index.js +8 -28
  8. package/dist/bin-lint/lint.d.ts +10 -3
  9. package/dist/bin-lint/lint.js +11 -35
  10. package/dist/bin-lint-semver-ranges/index.js +11 -39
  11. package/dist/bin-lint-semver-ranges/lint-semver-ranges.d.ts +15 -3
  12. package/dist/bin-lint-semver-ranges/lint-semver-ranges.js +93 -34
  13. package/dist/bin-list/index.js +11 -31
  14. package/dist/bin-list/list.d.ts +11 -3
  15. package/dist/bin-list/list.js +120 -34
  16. package/dist/bin-list-mismatches/index.js +11 -31
  17. package/dist/bin-list-mismatches/list-mismatches.d.ts +18 -3
  18. package/dist/bin-list-mismatches/list-mismatches.js +253 -34
  19. package/dist/bin-prompt/index.js +15 -31
  20. package/dist/bin-prompt/prompt.d.ts +10 -3
  21. package/dist/bin-prompt/prompt.js +82 -33
  22. package/dist/bin-set-semver-ranges/index.js +12 -40
  23. package/dist/bin-set-semver-ranges/set-semver-ranges.d.ts +10 -3
  24. package/dist/bin-set-semver-ranges/set-semver-ranges.js +49 -35
  25. package/dist/bin-update/effects.d.ts +45 -5
  26. package/dist/bin-update/effects.js +214 -128
  27. package/dist/bin-update/index.js +4 -27
  28. package/dist/bin-update/update.d.ts +5 -3
  29. package/dist/bin-update/update.js +51 -37
  30. package/dist/bin.js +0 -1
  31. package/dist/config/get-custom-types.d.ts +11 -1
  32. package/dist/config/get-custom-types.js +26 -21
  33. package/dist/config/get-enabled-types.d.ts +7 -8
  34. package/dist/config/get-enabled-types.js +63 -73
  35. package/dist/config/get-indent.js +1 -1
  36. package/dist/config/tag.d.ts +1 -1
  37. package/dist/config/tag.js +2 -25
  38. package/dist/config/types.d.ts +8 -9
  39. package/dist/constants.d.ts +4 -1
  40. package/dist/constants.js +4 -2
  41. package/dist/create-program/effects.d.ts +51 -29
  42. package/dist/error-handlers/default-error-handlers.d.ts +38 -2
  43. package/dist/error-handlers/default-error-handlers.js +80 -37
  44. package/dist/get-context/index.d.ts +12 -6
  45. package/dist/get-context/index.js +13 -30
  46. package/dist/get-context/lib/key-by.d.ts +6 -0
  47. package/dist/get-context/lib/key-by.js +16 -0
  48. package/dist/get-instances/index.d.ts +14 -0
  49. package/dist/get-instances/index.js +46 -0
  50. package/dist/get-instances/instance.d.ts +25 -0
  51. package/dist/get-instances/instance.js +20 -0
  52. package/dist/get-package-json-files/get-file-paths.d.ts +6 -7
  53. package/dist/get-package-json-files/get-file-paths.js +10 -33
  54. package/dist/get-package-json-files/get-patterns/get-lerna-patterns.d.ts +3 -4
  55. package/dist/get-package-json-files/get-patterns/get-lerna-patterns.js +6 -32
  56. package/dist/get-package-json-files/get-patterns/get-pnpm-patterns.d.ts +3 -4
  57. package/dist/get-package-json-files/get-patterns/get-pnpm-patterns.js +6 -32
  58. package/dist/get-package-json-files/get-patterns/get-yarn-patterns.d.ts +3 -4
  59. package/dist/get-package-json-files/get-patterns/get-yarn-patterns.js +11 -40
  60. package/dist/get-package-json-files/get-patterns/index.d.ts +3 -5
  61. package/dist/get-package-json-files/get-patterns/index.js +6 -33
  62. package/dist/get-package-json-files/index.d.ts +6 -5
  63. package/dist/get-package-json-files/index.js +4 -28
  64. package/dist/get-package-json-files/package-json-file.d.ts +16 -16
  65. package/dist/get-package-json-files/package-json-file.js +13 -18
  66. package/dist/guards/can-add-to-group.d.ts +5 -4
  67. package/dist/guards/can-add-to-group.js +8 -4
  68. package/dist/guards/is-semver.d.ts +1 -1
  69. package/dist/guards/is-semver.js +1 -1
  70. package/dist/guards/is-valid-semver-range.d.ts +1 -1
  71. package/dist/guards/is-valid-semver-range.js +1 -1
  72. package/dist/io/ask-for-choice.d.ts +14 -0
  73. package/dist/io/ask-for-choice.js +22 -0
  74. package/dist/io/ask-for-input.d.ts +13 -0
  75. package/dist/io/ask-for-input.js +19 -0
  76. package/dist/io/exit-if-invalid.d.ts +4 -0
  77. package/dist/io/exit-if-invalid.js +13 -0
  78. package/dist/io/glob-sync.d.ts +11 -0
  79. package/dist/io/glob-sync.js +19 -0
  80. package/dist/io/index.d.ts +28 -0
  81. package/dist/{env/exit-if-invalid.js → io/index.js} +27 -9
  82. package/dist/io/read-config-file-sync.d.ts +7 -0
  83. package/dist/io/read-config-file-sync.js +26 -0
  84. package/dist/io/read-file-sync.d.ts +12 -0
  85. package/dist/io/read-file-sync.js +14 -0
  86. package/dist/io/read-json-file-sync.d.ts +30 -0
  87. package/dist/io/read-json-file-sync.js +25 -0
  88. package/dist/io/read-yaml-file-sync.d.ts +12 -0
  89. package/dist/io/read-yaml-file-sync.js +14 -0
  90. package/dist/io/write-file-sync.d.ts +12 -0
  91. package/dist/io/write-file-sync.js +15 -0
  92. package/dist/{env → io}/write-if-changed.d.ts +4 -4
  93. package/dist/io/write-if-changed.js +45 -0
  94. package/dist/lib/get-group-header.d.ts +10 -0
  95. package/dist/lib/get-group-header.js +31 -0
  96. package/dist/lib/get.d.ts +11 -0
  97. package/dist/lib/get.js +40 -0
  98. package/dist/lib/pad-start.d.ts +1 -0
  99. package/dist/lib/pad-start.js +7 -0
  100. package/dist/lib/ring-buffer.d.ts +10 -0
  101. package/dist/lib/ring-buffer.js +22 -0
  102. package/dist/lib/set-semver-range.d.ts +1 -1
  103. package/dist/lib/set-semver-range.js +7 -11
  104. package/dist/lib/with-logger.d.ts +2 -0
  105. package/dist/lib/with-logger.js +35 -0
  106. package/dist/option.d.ts +0 -1
  107. package/dist/option.js +0 -4
  108. package/dist/report.d.ts +166 -0
  109. package/dist/report.js +67 -0
  110. package/dist/schema.json +51 -20
  111. package/dist/semver-group/create-semver-groups.d.ts +4 -0
  112. package/dist/semver-group/create-semver-groups.js +77 -0
  113. package/dist/semver-group/disabled.d.ts +26 -0
  114. package/dist/semver-group/disabled.js +34 -0
  115. package/dist/semver-group/filtered-out.d.ts +27 -0
  116. package/dist/semver-group/filtered-out.js +40 -0
  117. package/dist/semver-group/ignored.d.ts +22 -0
  118. package/dist/semver-group/ignored.js +30 -0
  119. package/dist/semver-group/index.d.ts +22 -0
  120. package/dist/semver-group/index.js +10 -0
  121. package/dist/semver-group/with-range.d.ts +22 -0
  122. package/dist/semver-group/with-range.js +57 -0
  123. package/dist/specifier/alias.d.ts +15 -0
  124. package/dist/specifier/alias.js +25 -0
  125. package/dist/specifier/base.d.ts +39 -0
  126. package/dist/specifier/base.js +38 -0
  127. package/dist/specifier/delete.d.ts +15 -0
  128. package/dist/specifier/delete.js +16 -0
  129. package/dist/specifier/file.d.ts +6 -0
  130. package/dist/specifier/file.js +12 -0
  131. package/dist/specifier/hosted-git.d.ts +13 -0
  132. package/dist/specifier/hosted-git.js +27 -0
  133. package/dist/specifier/index.d.ts +27 -0
  134. package/dist/specifier/index.js +62 -0
  135. package/dist/specifier/lib/non-semver-error.d.ts +11 -0
  136. package/dist/specifier/lib/non-semver-error.js +10 -0
  137. package/dist/specifier/lib/parse-specifier.d.ts +14 -0
  138. package/dist/specifier/lib/parse-specifier.js +23 -0
  139. package/dist/specifier/lib/specific-registry-result.d.ts +9 -0
  140. package/dist/specifier/lib/specific-registry-result.js +2 -0
  141. package/dist/specifier/range.d.ts +18 -0
  142. package/dist/specifier/range.js +26 -0
  143. package/dist/specifier/tag.d.ts +9 -0
  144. package/dist/specifier/tag.js +15 -0
  145. package/dist/specifier/unsupported.d.ts +5 -0
  146. package/dist/specifier/unsupported.js +12 -0
  147. package/dist/specifier/url.d.ts +6 -0
  148. package/dist/specifier/url.js +13 -0
  149. package/dist/specifier/version.d.ts +18 -0
  150. package/dist/specifier/version.js +26 -0
  151. package/dist/specifier/workspace-protocol.d.ts +17 -0
  152. package/dist/specifier/workspace-protocol.js +38 -0
  153. package/dist/strategy/lib/get-non-empty-string-prop.d.ts +2 -2
  154. package/dist/strategy/lib/get-non-empty-string-prop.js +4 -5
  155. package/dist/strategy/name-and-version-props.d.ts +4 -4
  156. package/dist/strategy/name-and-version-props.js +32 -21
  157. package/dist/strategy/named-version-string.d.ts +4 -4
  158. package/dist/strategy/named-version-string.js +22 -24
  159. package/dist/strategy/unnamed-version-string.d.ts +4 -4
  160. package/dist/strategy/unnamed-version-string.js +20 -21
  161. package/dist/strategy/versions-by-name.d.ts +4 -4
  162. package/dist/strategy/versions-by-name.js +9 -11
  163. package/dist/version-group/banned.d.ts +17 -0
  164. package/dist/version-group/banned.js +32 -0
  165. package/dist/version-group/create-version-groups.d.ts +4 -0
  166. package/dist/version-group/create-version-groups.js +107 -0
  167. package/dist/version-group/filtered-out.d.ts +19 -0
  168. package/dist/version-group/filtered-out.js +34 -0
  169. package/dist/version-group/ignored.d.ts +17 -0
  170. package/dist/version-group/ignored.js +27 -0
  171. package/dist/version-group/index.d.ts +28 -0
  172. package/dist/version-group/index.js +10 -0
  173. package/dist/version-group/lib/get-highest-version.d.ts +6 -0
  174. package/dist/version-group/lib/get-highest-version.js +12 -0
  175. package/dist/version-group/lib/get-lowest-version.d.ts +6 -0
  176. package/dist/version-group/lib/get-lowest-version.js +12 -0
  177. package/dist/version-group/lib/get-preferred-version.d.ts +5 -0
  178. package/dist/{get-version-groups/lib/compare-semver.js → version-group/lib/get-preferred-version.js} +14 -2
  179. package/dist/version-group/lib/group-by.d.ts +5 -0
  180. package/dist/{get-version-groups → version-group}/lib/group-by.js +4 -0
  181. package/dist/version-group/pinned.d.ts +17 -0
  182. package/dist/version-group/pinned.js +30 -0
  183. package/dist/version-group/same-range.d.ts +19 -0
  184. package/dist/version-group/same-range.js +108 -0
  185. package/dist/version-group/snapped-to.d.ts +17 -0
  186. package/dist/version-group/snapped-to.js +83 -0
  187. package/dist/version-group/standard.d.ts +18 -0
  188. package/dist/version-group/standard.js +131 -0
  189. package/package.json +24 -23
  190. package/dist/bin-fix-mismatches/effects.d.ts +0 -2
  191. package/dist/bin-fix-mismatches/effects.js +0 -112
  192. package/dist/bin-format/format-cli.d.ts +0 -4
  193. package/dist/bin-format/format-cli.js +0 -42
  194. package/dist/bin-lint-semver-ranges/effects.d.ts +0 -2
  195. package/dist/bin-lint-semver-ranges/effects.js +0 -70
  196. package/dist/bin-list/effects.d.ts +0 -2
  197. package/dist/bin-list/effects.js +0 -114
  198. package/dist/bin-list-mismatches/effects.d.ts +0 -2
  199. package/dist/bin-list-mismatches/effects.js +0 -136
  200. package/dist/bin-prompt/effects.d.ts +0 -2
  201. package/dist/bin-prompt/effects.js +0 -110
  202. package/dist/bin-set-semver-ranges/effects.d.ts +0 -2
  203. package/dist/bin-set-semver-ranges/effects.js +0 -61
  204. package/dist/config/get-semver-range.d.ts +0 -3
  205. package/dist/config/get-semver-range.js +0 -12
  206. package/dist/create-program/semver-ranges.d.ts +0 -7
  207. package/dist/create-program/semver-ranges.js +0 -55
  208. package/dist/create-program/versions.d.ts +0 -7
  209. package/dist/create-program/versions.js +0 -70
  210. package/dist/env/create-env.d.ts +0 -21
  211. package/dist/env/create-env.js +0 -81
  212. package/dist/env/default-env.d.ts +0 -18
  213. package/dist/env/default-env.js +0 -100
  214. package/dist/env/exit-if-invalid.d.ts +0 -4
  215. package/dist/env/tags.d.ts +0 -58
  216. package/dist/env/tags.js +0 -50
  217. package/dist/env/write-if-changed.js +0 -73
  218. package/dist/error-handlers/create-error-handlers.d.ts +0 -20
  219. package/dist/error-handlers/create-error-handlers.js +0 -60
  220. package/dist/get-package-json-files/get-patterns/read-json-safe.d.ts +0 -23
  221. package/dist/get-package-json-files/get-patterns/read-json-safe.js +0 -43
  222. package/dist/get-semver-groups/filtered-out.d.ts +0 -19
  223. package/dist/get-semver-groups/filtered-out.js +0 -55
  224. package/dist/get-semver-groups/ignored.d.ts +0 -17
  225. package/dist/get-semver-groups/ignored.js +0 -48
  226. package/dist/get-semver-groups/index.d.ts +0 -84
  227. package/dist/get-semver-groups/index.js +0 -139
  228. package/dist/get-semver-groups/with-range.d.ts +0 -18
  229. package/dist/get-semver-groups/with-range.js +0 -79
  230. package/dist/get-version-groups/banned.d.ts +0 -17
  231. package/dist/get-version-groups/banned.js +0 -50
  232. package/dist/get-version-groups/filtered-out.d.ts +0 -19
  233. package/dist/get-version-groups/filtered-out.js +0 -57
  234. package/dist/get-version-groups/ignored.d.ts +0 -17
  235. package/dist/get-version-groups/ignored.js +0 -50
  236. package/dist/get-version-groups/index.d.ts +0 -187
  237. package/dist/get-version-groups/index.js +0 -246
  238. package/dist/get-version-groups/lib/compare-semver.d.ts +0 -1
  239. package/dist/get-version-groups/lib/get-highest-version.d.ts +0 -2
  240. package/dist/get-version-groups/lib/get-highest-version.js +0 -13
  241. package/dist/get-version-groups/lib/get-lowest-version.d.ts +0 -2
  242. package/dist/get-version-groups/lib/get-lowest-version.js +0 -13
  243. package/dist/get-version-groups/lib/get-unique-specifiers.d.ts +0 -2
  244. package/dist/get-version-groups/lib/get-unique-specifiers.js +0 -11
  245. package/dist/get-version-groups/lib/group-by.d.ts +0 -1
  246. package/dist/get-version-groups/pinned.d.ts +0 -17
  247. package/dist/get-version-groups/pinned.js +0 -66
  248. package/dist/get-version-groups/same-range.d.ts +0 -17
  249. package/dist/get-version-groups/same-range.js +0 -73
  250. package/dist/get-version-groups/snapped-to.d.ts +0 -17
  251. package/dist/get-version-groups/snapped-to.js +0 -78
  252. package/dist/get-version-groups/standard.d.ts +0 -18
  253. package/dist/get-version-groups/standard.js +0 -109
  254. package/dist/guards/is-loose-semver.d.ts +0 -2
  255. package/dist/guards/is-loose-semver.js +0 -10
  256. package/dist/instance/create.d.ts +0 -4
  257. package/dist/instance/create.js +0 -142
  258. package/dist/instance/index.d.ts +0 -122
  259. package/dist/instance/index.js +0 -154
  260. package/dist/lib/$R.d.ts +0 -12
  261. package/dist/lib/$R.js +0 -34
  262. package/dist/lib/log-group-header.d.ts +0 -6
  263. package/dist/lib/log-group-header.js +0 -34
  264. package/dist/lib/log-verbose.d.ts +0 -1
  265. package/dist/lib/log-verbose.js +0 -24
  266. package/dist/lib/split-name-and-version.d.ts +0 -5
  267. package/dist/lib/split-name-and-version.js +0 -12
  268. /package/dist/{get-version-groups → version-group}/lib/clean.d.ts +0 -0
  269. /package/dist/{get-version-groups → version-group}/lib/clean.js +0 -0
  270. /package/dist/{get-version-groups → version-group}/lib/delete.d.ts +0 -0
  271. /package/dist/{get-version-groups → version-group}/lib/delete.js +0 -0
  272. /package/dist/{get-version-groups → version-group}/lib/get-range-score.d.ts +0 -0
  273. /package/dist/{get-version-groups → version-group}/lib/get-range-score.js +0 -0
@@ -1,84 +0,0 @@
1
- import * as Data from '@effect/data/Data';
2
- import * as Effect from '@effect/io/Effect';
3
- import type { Union } from 'ts-toolbelt';
4
- import type { DeprecatedTypesError, RenamedWorkspaceTypeError } from '../config/get-enabled-types';
5
- import type { Ctx } from '../get-context';
6
- import type { Instance } from '../instance';
7
- import { FilteredOutSemverGroup } from './filtered-out';
8
- import { IgnoredSemverGroup } from './ignored';
9
- import { WithRangeSemverGroup } from './with-range';
10
- export type AnySemverGroup = Union.Strict<FilteredOutSemverGroup | IgnoredSemverGroup | WithRangeSemverGroup>;
11
- export declare namespace SemverGroupReport {
12
- const FilteredOut_base: new <A extends Record<string, any>>(args: Data.IsEqualTo<Omit<A, keyof import("@effect/data/Equal").Equal>, {}> extends true ? void : Omit<A, keyof import("@effect/data/Equal").Equal>) => Data.Data<A & {
13
- _tag: "FilteredOut";
14
- }>;
15
- export class FilteredOut extends FilteredOut_base<{
16
- name: string;
17
- instance: Instance.Any;
18
- readonly isValid: true;
19
- }> {
20
- }
21
- const Ignored_base: new <A extends Record<string, any>>(args: Data.IsEqualTo<Omit<A, keyof import("@effect/data/Equal").Equal>, {}> extends true ? void : Omit<A, keyof import("@effect/data/Equal").Equal>) => Data.Data<A & {
22
- _tag: "Ignored";
23
- }>;
24
- export class Ignored extends Ignored_base<{
25
- name: string;
26
- instance: Instance.Any;
27
- readonly isValid: true;
28
- }> {
29
- }
30
- const Valid_base: new <A extends Record<string, any>>(args: Data.IsEqualTo<Omit<A, keyof import("@effect/data/Equal").Equal>, {}> extends true ? void : Omit<A, keyof import("@effect/data/Equal").Equal>) => Data.Data<A & {
31
- _tag: "Valid";
32
- }>;
33
- export class Valid extends Valid_base<{
34
- name: string;
35
- instance: Instance.Any;
36
- readonly isValid: true;
37
- }> {
38
- }
39
- const LocalPackageSemverRangeMismatch_base: new <A extends Record<string, any>>(args: Data.IsEqualTo<Omit<A, keyof import("@effect/data/Equal").Equal>, {}> extends true ? void : Omit<A, keyof import("@effect/data/Equal").Equal>) => Data.Data<A & {
40
- _tag: "LocalPackageSemverRangeMismatch";
41
- }>;
42
- export class LocalPackageSemverRangeMismatch extends LocalPackageSemverRangeMismatch_base<{
43
- name: string;
44
- instance: Instance.Any;
45
- readonly isValid: false;
46
- readonly expectedVersion: string;
47
- }> {
48
- }
49
- const SemverRangeMismatch_base: new <A extends Record<string, any>>(args: Data.IsEqualTo<Omit<A, keyof import("@effect/data/Equal").Equal>, {}> extends true ? void : Omit<A, keyof import("@effect/data/Equal").Equal>) => Data.Data<A & {
50
- _tag: "SemverRangeMismatch";
51
- }>;
52
- export class SemverRangeMismatch extends SemverRangeMismatch_base<{
53
- name: string;
54
- instance: Instance.Any;
55
- readonly isValid: false;
56
- readonly expectedVersion: string;
57
- }> {
58
- }
59
- const NonSemverVersion_base: new <A extends Record<string, any>>(args: Data.IsEqualTo<Omit<A, keyof import("@effect/data/Equal").Equal>, {}> extends true ? void : Omit<A, keyof import("@effect/data/Equal").Equal>) => Data.Data<A & {
60
- _tag: "NonSemverVersion";
61
- }>;
62
- export class NonSemverVersion extends NonSemverVersion_base<{
63
- name: string;
64
- instance: Instance.Any;
65
- readonly isValid: false;
66
- }> {
67
- }
68
- export type ValidCases = Union.Strict<FilteredOut | Ignored | Valid>;
69
- export type InvalidCases = Union.Strict<SemverRangeMismatch | NonSemverVersion | LocalPackageSemverRangeMismatch>;
70
- export type FixableCases = Union.Strict<SemverRangeMismatch | LocalPackageSemverRangeMismatch>;
71
- export type UnfixableCases = Union.Strict<NonSemverVersion>;
72
- export type Any = Union.Strict<ValidCases | InvalidCases>;
73
- export {};
74
- }
75
- declare const SemverGroupConfigError_base: new <A extends Record<string, any>>(args: Data.IsEqualTo<Omit<A, keyof import("@effect/data/Equal").Equal>, {}> extends true ? void : Omit<A, keyof import("@effect/data/Equal").Equal>) => Data.Data<A & {
76
- _tag: "SemverGroupConfigError";
77
- }>;
78
- export declare class SemverGroupConfigError extends SemverGroupConfigError_base<{
79
- readonly config: unknown;
80
- readonly error: string;
81
- }> {
82
- }
83
- export declare function getSemverGroups(ctx: Ctx): Effect.Effect<never, SemverGroupConfigError | DeprecatedTypesError | RenamedWorkspaceTypeError, AnySemverGroup[]>;
84
- export {};
@@ -1,139 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
- Object.defineProperty(exports, "__esModule", { value: true });
26
- exports.getSemverGroups = exports.SemverGroupConfigError = exports.SemverGroupReport = void 0;
27
- const Data = __importStar(require("@effect/data/Data"));
28
- const Function_1 = require("@effect/data/Function");
29
- const Effect = __importStar(require("@effect/io/Effect"));
30
- const is_array_of_strings_1 = require("tightrope/guard/is-array-of-strings");
31
- const is_non_empty_array_1 = require("tightrope/guard/is-non-empty-array");
32
- const is_non_empty_string_1 = require("tightrope/guard/is-non-empty-string");
33
- const is_object_1 = require("tightrope/guard/is-object");
34
- const get_enabled_types_1 = require("../config/get-enabled-types");
35
- const get_semver_range_1 = require("../config/get-semver-range");
36
- const can_add_to_group_1 = require("../guards/can-add-to-group");
37
- const is_valid_semver_range_1 = require("../guards/is-valid-semver-range");
38
- const sort_by_name_1 = require("../lib/sort-by-name");
39
- const filtered_out_1 = require("./filtered-out");
40
- const ignored_1 = require("./ignored");
41
- const with_range_1 = require("./with-range");
42
- var SemverGroupReport;
43
- (function (SemverGroupReport) {
44
- class FilteredOut extends Data.TaggedClass('FilteredOut') {
45
- }
46
- SemverGroupReport.FilteredOut = FilteredOut;
47
- class Ignored extends Data.TaggedClass('Ignored') {
48
- }
49
- SemverGroupReport.Ignored = Ignored;
50
- class Valid extends Data.TaggedClass('Valid') {
51
- }
52
- SemverGroupReport.Valid = Valid;
53
- class LocalPackageSemverRangeMismatch extends Data.TaggedClass('LocalPackageSemverRangeMismatch') {
54
- }
55
- SemverGroupReport.LocalPackageSemverRangeMismatch = LocalPackageSemverRangeMismatch;
56
- class SemverRangeMismatch extends Data.TaggedClass('SemverRangeMismatch') {
57
- }
58
- SemverGroupReport.SemverRangeMismatch = SemverRangeMismatch;
59
- class NonSemverVersion extends Data.TaggedClass('NonSemverVersion') {
60
- }
61
- SemverGroupReport.NonSemverVersion = NonSemverVersion;
62
- })(SemverGroupReport || (exports.SemverGroupReport = SemverGroupReport = {}));
63
- class SemverGroupConfigError extends Data.TaggedClass('SemverGroupConfigError') {
64
- }
65
- exports.SemverGroupConfigError = SemverGroupConfigError;
66
- function getSemverGroups(ctx) {
67
- return (0, Function_1.pipe)(Effect.Do, Effect.bind('enabledTypes', () => (0, get_enabled_types_1.getEnabledTypes)(ctx.config)), Effect.bind('semverGroups', () => createSemverGroups(ctx)), Effect.flatMap(({ enabledTypes, semverGroups }) => {
68
- for (const file of ctx.packageJsonFiles) {
69
- instances: for (const instance of file.getInstances(enabledTypes)) {
70
- for (const group of semverGroups) {
71
- if ((0, can_add_to_group_1.canAddToGroup)(group, instance)) {
72
- group.instances.push(instance);
73
- continue instances;
74
- }
75
- }
76
- }
77
- }
78
- return Effect.succeed(semverGroups.filter((group) => (0, is_non_empty_array_1.isNonEmptyArray)(group.instances.sort(sort_by_name_1.sortByName))));
79
- }));
80
- }
81
- exports.getSemverGroups = getSemverGroups;
82
- function createSemverGroups(ctx) {
83
- const { cli, rcFile } = ctx.config;
84
- const semverGroups = [
85
- Effect.succeed(new filtered_out_1.FilteredOutSemverGroup(ctx)),
86
- ];
87
- if ((0, is_non_empty_array_1.isNonEmptyArray)(rcFile.semverGroups)) {
88
- rcFile.semverGroups.forEach((config) => {
89
- if (!(0, is_object_1.isObject)(config)) {
90
- return semverGroups.push(Effect.fail(new SemverGroupConfigError({
91
- config,
92
- error: 'config is not an object',
93
- })));
94
- }
95
- if (!(0, is_array_of_strings_1.isArrayOfStrings)(config.dependencies)) {
96
- return semverGroups.push(Effect.fail(new SemverGroupConfigError({
97
- config,
98
- error: 'config.dependencies is not an array of strings',
99
- })));
100
- }
101
- if (!(0, is_array_of_strings_1.isArrayOfStrings)(config.packages)) {
102
- return semverGroups.push(Effect.fail(new SemverGroupConfigError({
103
- config,
104
- error: 'config.packages is not an array of strings',
105
- })));
106
- }
107
- const { dependencies, packages } = config;
108
- const label = (0, is_non_empty_string_1.isNonEmptyString)(config.label) ? config.label : '';
109
- const dependencyTypes = (0, is_array_of_strings_1.isArrayOfStrings)(config.dependencyTypes)
110
- ? config.dependencyTypes
111
- : [];
112
- if (config.isIgnored === true) {
113
- semverGroups.push(Effect.succeed(new ignored_1.IgnoredSemverGroup({
114
- dependencies,
115
- dependencyTypes,
116
- isIgnored: true,
117
- label,
118
- packages,
119
- })));
120
- }
121
- else if ((0, is_valid_semver_range_1.isValidSemverRange)(config.range)) {
122
- semverGroups.push(Effect.succeed(new with_range_1.WithRangeSemverGroup(false, {
123
- dependencies,
124
- dependencyTypes,
125
- label,
126
- packages,
127
- range: config.range,
128
- })));
129
- }
130
- });
131
- }
132
- semverGroups.push(Effect.succeed(new with_range_1.WithRangeSemverGroup(true, {
133
- dependencies: ['**'],
134
- label: '',
135
- packages: ['**'],
136
- range: (0, get_semver_range_1.getSemverRange)({ cli, rcFile }),
137
- })));
138
- return Effect.all(semverGroups);
139
- }
@@ -1,18 +0,0 @@
1
- import * as Data from '@effect/data/Data';
2
- import * as Effect from '@effect/io/Effect';
3
- import { SemverGroupReport } from '.';
4
- import type { SemverGroupConfig } from '../config/types';
5
- import type { Instance } from '../instance';
6
- declare const WithRangeSemverGroup_base: new <A extends Record<string, any>>(args: Data.IsEqualTo<Omit<A, keyof import("@effect/data/Equal").Equal>, {}> extends true ? void : Omit<A, keyof import("@effect/data/Equal").Equal>) => Data.Data<A & {
7
- _tag: "WithRange";
8
- }>;
9
- export declare class WithRangeSemverGroup extends WithRangeSemverGroup_base<{
10
- config: SemverGroupConfig.WithRange;
11
- instances: Instance.Any[];
12
- isCatchAll: boolean;
13
- }> {
14
- constructor(isCatchAll: boolean, config: SemverGroupConfig.WithRange);
15
- canAdd(_: Instance.Any): boolean;
16
- inspect(): Effect.Effect<never, SemverGroupReport.NonSemverVersion | SemverGroupReport.LocalPackageSemverRangeMismatch | SemverGroupReport.SemverRangeMismatch, SemverGroupReport.Valid>[];
17
- }
18
- export {};
@@ -1,79 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
- Object.defineProperty(exports, "__esModule", { value: true });
26
- exports.WithRangeSemverGroup = void 0;
27
- const Data = __importStar(require("@effect/data/Data"));
28
- const Option = __importStar(require("@effect/data/Option"));
29
- const Effect = __importStar(require("@effect/io/Effect"));
30
- const _1 = require(".");
31
- const set_semver_range_1 = require("../lib/set-semver-range");
32
- class WithRangeSemverGroup extends Data.TaggedClass('WithRange') {
33
- constructor(isCatchAll, config) {
34
- super({
35
- config,
36
- instances: [],
37
- isCatchAll,
38
- });
39
- }
40
- canAdd(_) {
41
- return true;
42
- }
43
- inspect() {
44
- return this.instances.map((instance) => {
45
- if (Option.isNone(instance.getSemverSpecifier())) {
46
- return Effect.fail(new _1.SemverGroupReport.NonSemverVersion({
47
- name: instance.name,
48
- instance,
49
- isValid: false,
50
- }));
51
- }
52
- const isLocalPackageInstance = instance.strategy.name === 'local';
53
- const exactVersion = (0, set_semver_range_1.setSemverRange)('', instance.specifier);
54
- const expectedVersion = (0, set_semver_range_1.setSemverRange)(this.config.range, instance.specifier);
55
- if (isLocalPackageInstance && instance.specifier !== exactVersion) {
56
- return Effect.fail(new _1.SemverGroupReport.LocalPackageSemverRangeMismatch({
57
- name: instance.name,
58
- instance,
59
- isValid: false,
60
- expectedVersion: exactVersion,
61
- }));
62
- }
63
- if (instance.specifier === expectedVersion) {
64
- return Effect.succeed(new _1.SemverGroupReport.Valid({
65
- name: instance.name,
66
- instance,
67
- isValid: true,
68
- }));
69
- }
70
- return Effect.fail(new _1.SemverGroupReport.SemverRangeMismatch({
71
- name: instance.name,
72
- instance,
73
- isValid: false,
74
- expectedVersion,
75
- }));
76
- });
77
- }
78
- }
79
- exports.WithRangeSemverGroup = WithRangeSemverGroup;
@@ -1,17 +0,0 @@
1
- import * as Data from '@effect/data/Data';
2
- import * as Effect from '@effect/io/Effect';
3
- import { VersionGroupReport } from '.';
4
- import type { VersionGroupConfig } from '../config/types';
5
- import type { Instance } from '../instance';
6
- declare const BannedVersionGroup_base: new <A extends Record<string, any>>(args: Data.IsEqualTo<Omit<A, keyof import("@effect/data/Equal").Equal>, {}> extends true ? void : Omit<A, keyof import("@effect/data/Equal").Equal>) => Data.Data<A & {
7
- _tag: "Banned";
8
- }>;
9
- export declare class BannedVersionGroup extends BannedVersionGroup_base<{
10
- config: VersionGroupConfig.Banned;
11
- instances: Instance.Any[];
12
- }> {
13
- constructor(config: VersionGroupConfig.Banned);
14
- canAdd(_: Instance.Any): boolean;
15
- inspect(): Effect.Effect<never, VersionGroupReport.Banned, never>[];
16
- }
17
- export {};
@@ -1,50 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
- Object.defineProperty(exports, "__esModule", { value: true });
26
- exports.BannedVersionGroup = void 0;
27
- const Data = __importStar(require("@effect/data/Data"));
28
- const Effect = __importStar(require("@effect/io/Effect"));
29
- const _1 = require(".");
30
- const group_by_1 = require("./lib/group-by");
31
- class BannedVersionGroup extends Data.TaggedClass('Banned') {
32
- constructor(config) {
33
- super({
34
- config,
35
- instances: [],
36
- });
37
- }
38
- canAdd(_) {
39
- return true;
40
- }
41
- inspect() {
42
- const instancesByName = (0, group_by_1.groupBy)('name', this.instances);
43
- return Object.entries(instancesByName).map(([name, instances]) => Effect.fail(new _1.VersionGroupReport.Banned({
44
- name,
45
- instances,
46
- isValid: false,
47
- })));
48
- }
49
- }
50
- exports.BannedVersionGroup = BannedVersionGroup;
@@ -1,19 +0,0 @@
1
- import * as Data from '@effect/data/Data';
2
- import * as Effect from '@effect/io/Effect';
3
- import { VersionGroupReport } from '.';
4
- import type { GroupConfig } from '../config/types';
5
- import type { Ctx } from '../get-context';
6
- import type { Instance } from '../instance';
7
- declare const FilteredOutVersionGroup_base: new <A extends Record<string, any>>(args: Data.IsEqualTo<Omit<A, keyof import("@effect/data/Equal").Equal>, {}> extends true ? void : Omit<A, keyof import("@effect/data/Equal").Equal>) => Data.Data<A & {
8
- _tag: "FilteredOut";
9
- }>;
10
- export declare class FilteredOutVersionGroup extends FilteredOutVersionGroup_base<{
11
- config: GroupConfig;
12
- filter: string;
13
- instances: Instance.Any[];
14
- }> {
15
- constructor(ctx: Ctx);
16
- canAdd(instance: Instance.Any): boolean;
17
- inspect(): Effect.Effect<never, never, VersionGroupReport.FilteredOut>[];
18
- }
19
- export {};
@@ -1,57 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
- Object.defineProperty(exports, "__esModule", { value: true });
26
- exports.FilteredOutVersionGroup = void 0;
27
- const Data = __importStar(require("@effect/data/Data"));
28
- const Effect = __importStar(require("@effect/io/Effect"));
29
- const _1 = require(".");
30
- const get_filter_1 = require("../config/get-filter");
31
- const group_by_1 = require("./lib/group-by");
32
- class FilteredOutVersionGroup extends Data.TaggedClass('FilteredOut') {
33
- constructor(ctx) {
34
- super({
35
- config: {
36
- dependencies: ['**'],
37
- dependencyTypes: ['**'],
38
- label: 'Filtered out',
39
- packages: ['**'],
40
- },
41
- filter: (0, get_filter_1.getFilter)(ctx.config),
42
- instances: [],
43
- });
44
- }
45
- canAdd(instance) {
46
- return instance.name.search(new RegExp(this.filter)) === -1;
47
- }
48
- inspect() {
49
- const instancesByName = (0, group_by_1.groupBy)('name', this.instances);
50
- return Object.entries(instancesByName).map(([name, instances]) => Effect.succeed(new _1.VersionGroupReport.FilteredOut({
51
- name,
52
- instances,
53
- isValid: true,
54
- })));
55
- }
56
- }
57
- exports.FilteredOutVersionGroup = FilteredOutVersionGroup;
@@ -1,17 +0,0 @@
1
- import * as Data from '@effect/data/Data';
2
- import * as Effect from '@effect/io/Effect';
3
- import { VersionGroupReport } from '.';
4
- import type { VersionGroupConfig } from '../config/types';
5
- import type { Instance } from '../instance';
6
- declare const IgnoredVersionGroup_base: new <A extends Record<string, any>>(args: Data.IsEqualTo<Omit<A, keyof import("@effect/data/Equal").Equal>, {}> extends true ? void : Omit<A, keyof import("@effect/data/Equal").Equal>) => Data.Data<A & {
7
- _tag: "Ignored";
8
- }>;
9
- export declare class IgnoredVersionGroup extends IgnoredVersionGroup_base<{
10
- config: VersionGroupConfig.Ignored;
11
- instances: Instance.Any[];
12
- }> {
13
- constructor(config: VersionGroupConfig.Ignored);
14
- canAdd(_: Instance.Any): boolean;
15
- inspect(): Effect.Effect<never, never, VersionGroupReport.Ignored>[];
16
- }
17
- export {};
@@ -1,50 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
- Object.defineProperty(exports, "__esModule", { value: true });
26
- exports.IgnoredVersionGroup = void 0;
27
- const Data = __importStar(require("@effect/data/Data"));
28
- const Effect = __importStar(require("@effect/io/Effect"));
29
- const _1 = require(".");
30
- const group_by_1 = require("./lib/group-by");
31
- class IgnoredVersionGroup extends Data.TaggedClass('Ignored') {
32
- constructor(config) {
33
- super({
34
- config,
35
- instances: [],
36
- });
37
- }
38
- canAdd(_) {
39
- return true;
40
- }
41
- inspect() {
42
- const instancesByName = (0, group_by_1.groupBy)('name', this.instances);
43
- return Object.entries(instancesByName).map(([name, instances]) => Effect.succeed(new _1.VersionGroupReport.Ignored({
44
- name,
45
- instances,
46
- isValid: true,
47
- })));
48
- }
49
- }
50
- exports.IgnoredVersionGroup = IgnoredVersionGroup;