syncpack 13.0.1 → 14.0.0-alpha.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (233) hide show
  1. package/README.md +0 -3
  2. package/index.js +48 -0
  3. package/package.json +16 -73
  4. package/schema.json +917 -0
  5. package/syncpack.d.ts +122 -0
  6. package/LICENSE +0 -20
  7. package/dist/bin-fix-mismatches/fix-mismatches.d.ts +0 -16
  8. package/dist/bin-fix-mismatches/fix-mismatches.js +0 -115
  9. package/dist/bin-fix-mismatches/index.d.ts +0 -2
  10. package/dist/bin-fix-mismatches/index.js +0 -33
  11. package/dist/bin-format/format.d.ts +0 -13
  12. package/dist/bin-format/format.js +0 -92
  13. package/dist/bin-format/index.d.ts +0 -2
  14. package/dist/bin-format/index.js +0 -28
  15. package/dist/bin-lint/index.d.ts +0 -2
  16. package/dist/bin-lint/index.js +0 -17
  17. package/dist/bin-lint/lint.d.ts +0 -11
  18. package/dist/bin-lint/lint.js +0 -52
  19. package/dist/bin-lint-semver-ranges/index.d.ts +0 -2
  20. package/dist/bin-lint-semver-ranges/index.js +0 -30
  21. package/dist/bin-lint-semver-ranges/lint-semver-ranges.d.ts +0 -16
  22. package/dist/bin-lint-semver-ranges/lint-semver-ranges.js +0 -92
  23. package/dist/bin-list/index.d.ts +0 -2
  24. package/dist/bin-list/index.js +0 -27
  25. package/dist/bin-list/list.d.ts +0 -14
  26. package/dist/bin-list/list.js +0 -151
  27. package/dist/bin-list-mismatches/index.d.ts +0 -2
  28. package/dist/bin-list-mismatches/index.js +0 -29
  29. package/dist/bin-list-mismatches/list-mismatches.d.ts +0 -18
  30. package/dist/bin-list-mismatches/list-mismatches.js +0 -224
  31. package/dist/bin-prompt/index.d.ts +0 -2
  32. package/dist/bin-prompt/index.js +0 -29
  33. package/dist/bin-prompt/prompt.d.ts +0 -11
  34. package/dist/bin-prompt/prompt.js +0 -95
  35. package/dist/bin-set-semver-ranges/index.d.ts +0 -2
  36. package/dist/bin-set-semver-ranges/index.js +0 -32
  37. package/dist/bin-set-semver-ranges/set-semver-ranges.d.ts +0 -11
  38. package/dist/bin-set-semver-ranges/set-semver-ranges.js +0 -61
  39. package/dist/bin-update/effects.d.ts +0 -52
  40. package/dist/bin-update/effects.js +0 -282
  41. package/dist/bin-update/index.d.ts +0 -2
  42. package/dist/bin-update/index.js +0 -24
  43. package/dist/bin-update/update.d.ts +0 -6
  44. package/dist/bin-update/update.js +0 -59
  45. package/dist/bin.d.ts +0 -2
  46. package/dist/bin.js +0 -37
  47. package/dist/config/get-custom-types.d.ts +0 -19
  48. package/dist/config/get-custom-types.js +0 -57
  49. package/dist/config/get-enabled-types.d.ts +0 -17
  50. package/dist/config/get-enabled-types.js +0 -109
  51. package/dist/config/get-filter.d.ts +0 -2
  52. package/dist/config/get-filter.js +0 -10
  53. package/dist/config/get-indent.d.ts +0 -2
  54. package/dist/config/get-indent.js +0 -9
  55. package/dist/config/get-sort-az.d.ts +0 -2
  56. package/dist/config/get-sort-az.js +0 -8
  57. package/dist/config/get-sort-exports.d.ts +0 -2
  58. package/dist/config/get-sort-exports.js +0 -9
  59. package/dist/config/get-sort-first.d.ts +0 -2
  60. package/dist/config/get-sort-first.js +0 -8
  61. package/dist/config/get-source.d.ts +0 -2
  62. package/dist/config/get-source.js +0 -8
  63. package/dist/config/tag.d.ts +0 -3
  64. package/dist/config/tag.js +0 -2
  65. package/dist/config/types.d.ts +0 -134
  66. package/dist/config/types.js +0 -1
  67. package/dist/constants.d.ts +0 -106
  68. package/dist/constants.js +0 -103
  69. package/dist/error-handlers/default-error-handlers.d.ts +0 -25
  70. package/dist/error-handlers/default-error-handlers.js +0 -80
  71. package/dist/get-context/index.d.ts +0 -23
  72. package/dist/get-context/index.js +0 -18
  73. package/dist/get-context/lib/key-by.d.ts +0 -6
  74. package/dist/get-context/lib/key-by.js +0 -12
  75. package/dist/get-instances/index.d.ts +0 -14
  76. package/dist/get-instances/index.js +0 -42
  77. package/dist/get-instances/instance.d.ts +0 -26
  78. package/dist/get-instances/instance.js +0 -35
  79. package/dist/get-package-json-files/get-file-paths.d.ts +0 -21
  80. package/dist/get-package-json-files/get-file-paths.js +0 -22
  81. package/dist/get-package-json-files/get-patterns/get-lerna-patterns.d.ts +0 -3
  82. package/dist/get-package-json-files/get-patterns/get-lerna-patterns.js +0 -12
  83. package/dist/get-package-json-files/get-patterns/get-pnpm-patterns.d.ts +0 -3
  84. package/dist/get-package-json-files/get-patterns/get-pnpm-patterns.js +0 -14
  85. package/dist/get-package-json-files/get-patterns/get-yarn-patterns.d.ts +0 -3
  86. package/dist/get-package-json-files/get-patterns/get-yarn-patterns.js +0 -16
  87. package/dist/get-package-json-files/get-patterns/index.d.ts +0 -8
  88. package/dist/get-package-json-files/get-patterns/index.js +0 -23
  89. package/dist/get-package-json-files/index.d.ts +0 -10
  90. package/dist/get-package-json-files/index.js +0 -8
  91. package/dist/get-package-json-files/package-json-file.d.ts +0 -54
  92. package/dist/get-package-json-files/package-json-file.js +0 -44
  93. package/dist/guards/can-add-to-group.d.ts +0 -5
  94. package/dist/guards/can-add-to-group.js +0 -58
  95. package/dist/guards/is-semver.d.ts +0 -2
  96. package/dist/guards/is-semver.js +0 -15
  97. package/dist/guards/is-valid-semver-range.d.ts +0 -3
  98. package/dist/guards/is-valid-semver-range.js +0 -14
  99. package/dist/index.d.ts +0 -2
  100. package/dist/index.js +0 -1
  101. package/dist/io/ask-for-choice.d.ts +0 -14
  102. package/dist/io/ask-for-choice.js +0 -17
  103. package/dist/io/ask-for-input.d.ts +0 -13
  104. package/dist/io/ask-for-input.js +0 -14
  105. package/dist/io/exit-if-invalid.d.ts +0 -4
  106. package/dist/io/exit-if-invalid.js +0 -9
  107. package/dist/io/glob-sync.d.ts +0 -11
  108. package/dist/io/glob-sync.js +0 -14
  109. package/dist/io/index.d.ts +0 -27
  110. package/dist/io/index.js +0 -26
  111. package/dist/io/read-config-file.d.ts +0 -7
  112. package/dist/io/read-config-file.js +0 -24
  113. package/dist/io/read-file-sync.d.ts +0 -12
  114. package/dist/io/read-file-sync.js +0 -9
  115. package/dist/io/read-json-file-sync.d.ts +0 -31
  116. package/dist/io/read-json-file-sync.js +0 -23
  117. package/dist/io/read-yaml-file-sync.d.ts +0 -12
  118. package/dist/io/read-yaml-file-sync.js +0 -9
  119. package/dist/io/to-formatted-json.d.ts +0 -9
  120. package/dist/io/to-formatted-json.js +0 -32
  121. package/dist/io/write-file-sync.d.ts +0 -12
  122. package/dist/io/write-file-sync.js +0 -10
  123. package/dist/io/write-if-changed.d.ts +0 -5
  124. package/dist/io/write-if-changed.js +0 -9
  125. package/dist/lib/format-repository-url.d.ts +0 -1
  126. package/dist/lib/format-repository-url.js +0 -40
  127. package/dist/lib/get-group-header.d.ts +0 -10
  128. package/dist/lib/get-group-header.js +0 -25
  129. package/dist/lib/get.d.ts +0 -11
  130. package/dist/lib/get.js +0 -44
  131. package/dist/lib/pad-start.d.ts +0 -1
  132. package/dist/lib/pad-start.js +0 -3
  133. package/dist/lib/ring-buffer.d.ts +0 -10
  134. package/dist/lib/ring-buffer.js +0 -20
  135. package/dist/lib/set-semver-range.d.ts +0 -3
  136. package/dist/lib/set-semver-range.js +0 -24
  137. package/dist/lib/show-help-on-error.d.ts +0 -2
  138. package/dist/lib/show-help-on-error.js +0 -32
  139. package/dist/lib/sort-by-name.d.ts +0 -5
  140. package/dist/lib/sort-by-name.js +0 -9
  141. package/dist/lib/with-logger.d.ts +0 -2
  142. package/dist/lib/with-logger.js +0 -28
  143. package/dist/option.d.ts +0 -10
  144. package/dist/option.js +0 -30
  145. package/dist/report.d.ts +0 -131
  146. package/dist/report.js +0 -129
  147. package/dist/schema.json +0 -614
  148. package/dist/semver-group/create-semver-groups.d.ts +0 -4
  149. package/dist/semver-group/create-semver-groups.js +0 -83
  150. package/dist/semver-group/disabled.d.ts +0 -26
  151. package/dist/semver-group/disabled.js +0 -28
  152. package/dist/semver-group/filtered-out.d.ts +0 -27
  153. package/dist/semver-group/filtered-out.js +0 -34
  154. package/dist/semver-group/ignored.d.ts +0 -22
  155. package/dist/semver-group/ignored.js +0 -24
  156. package/dist/semver-group/index.d.ts +0 -20
  157. package/dist/semver-group/index.js +0 -7
  158. package/dist/semver-group/with-range.d.ts +0 -22
  159. package/dist/semver-group/with-range.js +0 -45
  160. package/dist/specifier/alias.d.ts +0 -17
  161. package/dist/specifier/alias.js +0 -21
  162. package/dist/specifier/base.d.ts +0 -41
  163. package/dist/specifier/base.js +0 -54
  164. package/dist/specifier/delete.d.ts +0 -17
  165. package/dist/specifier/delete.js +0 -16
  166. package/dist/specifier/exact.d.ts +0 -20
  167. package/dist/specifier/exact.js +0 -21
  168. package/dist/specifier/file.d.ts +0 -8
  169. package/dist/specifier/file.js +0 -7
  170. package/dist/specifier/hosted-git.d.ts +0 -15
  171. package/dist/specifier/hosted-git.js +0 -24
  172. package/dist/specifier/index.d.ts +0 -28
  173. package/dist/specifier/index.js +0 -75
  174. package/dist/specifier/latest.d.ts +0 -19
  175. package/dist/specifier/latest.js +0 -20
  176. package/dist/specifier/lib/non-semver-error.d.ts +0 -11
  177. package/dist/specifier/lib/non-semver-error.js +0 -6
  178. package/dist/specifier/lib/parse-specifier.d.ts +0 -14
  179. package/dist/specifier/lib/parse-specifier.js +0 -18
  180. package/dist/specifier/lib/specific-registry-result.d.ts +0 -9
  181. package/dist/specifier/lib/specific-registry-result.js +0 -1
  182. package/dist/specifier/range.d.ts +0 -19
  183. package/dist/specifier/range.js +0 -20
  184. package/dist/specifier/tag.d.ts +0 -11
  185. package/dist/specifier/tag.js +0 -10
  186. package/dist/specifier/unsupported.d.ts +0 -7
  187. package/dist/specifier/unsupported.js +0 -7
  188. package/dist/specifier/url.d.ts +0 -8
  189. package/dist/specifier/url.js +0 -7
  190. package/dist/specifier/workspace-protocol.d.ts +0 -19
  191. package/dist/specifier/workspace-protocol.js +0 -35
  192. package/dist/strategy/lib/get-non-empty-string-prop.d.ts +0 -3
  193. package/dist/strategy/lib/get-non-empty-string-prop.js +0 -7
  194. package/dist/strategy/name-and-version-props.d.ts +0 -12
  195. package/dist/strategy/name-and-version-props.js +0 -60
  196. package/dist/strategy/named-version-string.d.ts +0 -11
  197. package/dist/strategy/named-version-string.js +0 -52
  198. package/dist/strategy/unnamed-version-string.d.ts +0 -11
  199. package/dist/strategy/unnamed-version-string.js +0 -45
  200. package/dist/strategy/versions-by-name.d.ts +0 -11
  201. package/dist/strategy/versions-by-name.js +0 -27
  202. package/dist/version-group/banned.d.ts +0 -17
  203. package/dist/version-group/banned.js +0 -26
  204. package/dist/version-group/create-version-groups.d.ts +0 -4
  205. package/dist/version-group/create-version-groups.js +0 -118
  206. package/dist/version-group/filtered-out.d.ts +0 -19
  207. package/dist/version-group/filtered-out.js +0 -30
  208. package/dist/version-group/ignored.d.ts +0 -17
  209. package/dist/version-group/ignored.js +0 -23
  210. package/dist/version-group/index.d.ts +0 -26
  211. package/dist/version-group/index.js +0 -7
  212. package/dist/version-group/lib/clean.d.ts +0 -2
  213. package/dist/version-group/lib/clean.js +0 -6
  214. package/dist/version-group/lib/delete.d.ts +0 -2
  215. package/dist/version-group/lib/delete.js +0 -1
  216. package/dist/version-group/lib/get-highest-version.d.ts +0 -6
  217. package/dist/version-group/lib/get-highest-version.js +0 -8
  218. package/dist/version-group/lib/get-lowest-version.d.ts +0 -6
  219. package/dist/version-group/lib/get-lowest-version.js +0 -8
  220. package/dist/version-group/lib/get-preferred-version.d.ts +0 -5
  221. package/dist/version-group/lib/get-preferred-version.js +0 -53
  222. package/dist/version-group/lib/get-range-score.d.ts +0 -2
  223. package/dist/version-group/lib/get-range-score.js +0 -20
  224. package/dist/version-group/lib/group-by.d.ts +0 -5
  225. package/dist/version-group/lib/group-by.js +0 -11
  226. package/dist/version-group/pinned.d.ts +0 -17
  227. package/dist/version-group/pinned.js +0 -26
  228. package/dist/version-group/same-range.d.ts +0 -19
  229. package/dist/version-group/same-range.js +0 -96
  230. package/dist/version-group/snapped-to.d.ts +0 -17
  231. package/dist/version-group/snapped-to.js +0 -71
  232. package/dist/version-group/standard.d.ts +0 -18
  233. package/dist/version-group/standard.js +0 -119
package/dist/schema.json DELETED
@@ -1,614 +0,0 @@
1
- {
2
- "$schema": "http://json-schema.org/draft-07/schema#",
3
- "additionalProperties": false,
4
- "definitions": {
5
- "CustomTypeConfig.Any": {
6
- "anyOf": [
7
- {
8
- "$ref": "#/definitions/CustomTypeConfig.NameAndVersionProps"
9
- },
10
- {
11
- "$ref": "#/definitions/CustomTypeConfig.NamedVersionString"
12
- },
13
- {
14
- "$ref": "#/definitions/CustomTypeConfig.UnnamedVersionString"
15
- },
16
- {
17
- "$ref": "#/definitions/CustomTypeConfig.VersionsByName"
18
- }
19
- ]
20
- },
21
- "CustomTypeConfig.NameAndVersionProps": {
22
- "additionalProperties": false,
23
- "properties": {
24
- "namePath": {
25
- "type": "string"
26
- },
27
- "path": {
28
- "type": "string"
29
- },
30
- "strategy": {
31
- "const": "name~version",
32
- "type": "string"
33
- }
34
- },
35
- "type": "object"
36
- },
37
- "CustomTypeConfig.NamedVersionString": {
38
- "additionalProperties": false,
39
- "properties": {
40
- "path": {
41
- "type": "string"
42
- },
43
- "strategy": {
44
- "const": "name@version",
45
- "type": "string"
46
- }
47
- },
48
- "type": "object"
49
- },
50
- "CustomTypeConfig.UnnamedVersionString": {
51
- "additionalProperties": false,
52
- "properties": {
53
- "path": {
54
- "type": "string"
55
- },
56
- "strategy": {
57
- "const": "version",
58
- "type": "string"
59
- }
60
- },
61
- "type": "object"
62
- },
63
- "CustomTypeConfig.VersionsByName": {
64
- "additionalProperties": false,
65
- "properties": {
66
- "path": {
67
- "type": "string"
68
- },
69
- "strategy": {
70
- "const": "versionsByName",
71
- "type": "string"
72
- }
73
- },
74
- "type": "object"
75
- },
76
- "DependencyType": {
77
- "anyOf": [
78
- {
79
- "additionalProperties": false,
80
- "properties": {},
81
- "type": "object"
82
- },
83
- {
84
- "enum": [
85
- "!dev",
86
- "!local",
87
- "!overrides",
88
- "!peer",
89
- "!pnpmOverrides",
90
- "!prod",
91
- "!resolutions",
92
- "dev",
93
- "local",
94
- "overrides",
95
- "peer",
96
- "pnpmOverrides",
97
- "prod",
98
- "resolutions"
99
- ],
100
- "type": "string"
101
- }
102
- ]
103
- },
104
- "SemverGroupConfig.Any": {
105
- "anyOf": [
106
- {
107
- "$ref": "#/definitions/SemverGroupConfig.Disabled"
108
- },
109
- {
110
- "$ref": "#/definitions/SemverGroupConfig.Ignored"
111
- },
112
- {
113
- "$ref": "#/definitions/SemverGroupConfig.WithRange"
114
- }
115
- ]
116
- },
117
- "SemverGroupConfig.Disabled": {
118
- "additionalProperties": false,
119
- "properties": {
120
- "dependencies": {
121
- "items": {
122
- "type": "string"
123
- },
124
- "type": "array"
125
- },
126
- "dependencyTypes": {
127
- "items": {
128
- "$ref": "#/definitions/DependencyType"
129
- },
130
- "type": "array"
131
- },
132
- "isDisabled": {
133
- "const": true,
134
- "type": "boolean"
135
- },
136
- "label": {
137
- "type": "string"
138
- },
139
- "packages": {
140
- "items": {
141
- "type": "string"
142
- },
143
- "type": "array"
144
- },
145
- "specifierTypes": {
146
- "items": {
147
- "$ref": "#/definitions/SpecifierType"
148
- },
149
- "type": "array"
150
- }
151
- },
152
- "type": "object"
153
- },
154
- "SemverGroupConfig.Ignored": {
155
- "additionalProperties": false,
156
- "properties": {
157
- "dependencies": {
158
- "items": {
159
- "type": "string"
160
- },
161
- "type": "array"
162
- },
163
- "dependencyTypes": {
164
- "items": {
165
- "$ref": "#/definitions/DependencyType"
166
- },
167
- "type": "array"
168
- },
169
- "isIgnored": {
170
- "const": true,
171
- "type": "boolean"
172
- },
173
- "label": {
174
- "type": "string"
175
- },
176
- "packages": {
177
- "items": {
178
- "type": "string"
179
- },
180
- "type": "array"
181
- },
182
- "specifierTypes": {
183
- "items": {
184
- "$ref": "#/definitions/SpecifierType"
185
- },
186
- "type": "array"
187
- }
188
- },
189
- "type": "object"
190
- },
191
- "SemverGroupConfig.WithRange": {
192
- "additionalProperties": false,
193
- "properties": {
194
- "dependencies": {
195
- "items": {
196
- "type": "string"
197
- },
198
- "type": "array"
199
- },
200
- "dependencyTypes": {
201
- "items": {
202
- "$ref": "#/definitions/DependencyType"
203
- },
204
- "type": "array"
205
- },
206
- "label": {
207
- "type": "string"
208
- },
209
- "packages": {
210
- "items": {
211
- "type": "string"
212
- },
213
- "type": "array"
214
- },
215
- "range": {
216
- "$ref": "#/definitions/SemverRange"
217
- },
218
- "specifierTypes": {
219
- "items": {
220
- "$ref": "#/definitions/SpecifierType"
221
- },
222
- "type": "array"
223
- }
224
- },
225
- "type": "object"
226
- },
227
- "SemverRange": {
228
- "default": "",
229
- "description": "Aliases for semver range formats supported by syncpack\n\nDefaults to `\"\"` to ensure that exact dependency versions are used instead of\nloose ranges, but this can be overridden in your config file.\n\n| Supported Range | Example |\n| --------------- | --------: |\n| `\"<\"` | `<1.4.2` |\n| `\"<=\"` | `<=1.4.2` |\n| `\"\"` | `1.4.2` |\n| `\"~\"` | `~1.4.2` |\n| `\"^\"` | `^1.4.2` |\n| `\">=\"` | `>=1.4.2` |\n| `\">\"` | `>1.4.2` |\n| `\"*\"` | `*` |",
230
- "enum": [
231
- "",
232
- "*",
233
- ".x",
234
- "<",
235
- "<=",
236
- ">",
237
- ">=",
238
- "^",
239
- "workspace:",
240
- "~"
241
- ],
242
- "type": "string"
243
- },
244
- "SpecifierType": {
245
- "anyOf": [
246
- {
247
- "additionalProperties": false,
248
- "properties": {},
249
- "type": "object"
250
- },
251
- {
252
- "enum": [
253
- "!alias",
254
- "!delete",
255
- "!exact",
256
- "!file",
257
- "!hosted-git",
258
- "!latest",
259
- "!range",
260
- "!tag",
261
- "!unsupported",
262
- "!url",
263
- "!workspace-protocol",
264
- "alias",
265
- "delete",
266
- "exact",
267
- "file",
268
- "hosted-git",
269
- "latest",
270
- "range",
271
- "tag",
272
- "unsupported",
273
- "url",
274
- "workspace-protocol"
275
- ],
276
- "type": "string"
277
- }
278
- ]
279
- },
280
- "VersionGroupConfig.Any": {
281
- "anyOf": [
282
- {
283
- "$ref": "#/definitions/VersionGroupConfig.Banned"
284
- },
285
- {
286
- "$ref": "#/definitions/VersionGroupConfig.Ignored"
287
- },
288
- {
289
- "$ref": "#/definitions/VersionGroupConfig.Pinned"
290
- },
291
- {
292
- "$ref": "#/definitions/VersionGroupConfig.SameRange"
293
- },
294
- {
295
- "$ref": "#/definitions/VersionGroupConfig.SnappedTo"
296
- },
297
- {
298
- "$ref": "#/definitions/VersionGroupConfig.Standard"
299
- }
300
- ]
301
- },
302
- "VersionGroupConfig.Banned": {
303
- "additionalProperties": false,
304
- "properties": {
305
- "dependencies": {
306
- "items": {
307
- "type": "string"
308
- },
309
- "type": "array"
310
- },
311
- "dependencyTypes": {
312
- "items": {
313
- "$ref": "#/definitions/DependencyType"
314
- },
315
- "type": "array"
316
- },
317
- "isBanned": {
318
- "const": true,
319
- "type": "boolean"
320
- },
321
- "label": {
322
- "type": "string"
323
- },
324
- "packages": {
325
- "items": {
326
- "type": "string"
327
- },
328
- "type": "array"
329
- },
330
- "specifierTypes": {
331
- "items": {
332
- "$ref": "#/definitions/SpecifierType"
333
- },
334
- "type": "array"
335
- }
336
- },
337
- "type": "object"
338
- },
339
- "VersionGroupConfig.Ignored": {
340
- "additionalProperties": false,
341
- "properties": {
342
- "dependencies": {
343
- "items": {
344
- "type": "string"
345
- },
346
- "type": "array"
347
- },
348
- "dependencyTypes": {
349
- "items": {
350
- "$ref": "#/definitions/DependencyType"
351
- },
352
- "type": "array"
353
- },
354
- "isIgnored": {
355
- "const": true,
356
- "type": "boolean"
357
- },
358
- "label": {
359
- "type": "string"
360
- },
361
- "packages": {
362
- "items": {
363
- "type": "string"
364
- },
365
- "type": "array"
366
- },
367
- "specifierTypes": {
368
- "items": {
369
- "$ref": "#/definitions/SpecifierType"
370
- },
371
- "type": "array"
372
- }
373
- },
374
- "type": "object"
375
- },
376
- "VersionGroupConfig.Pinned": {
377
- "additionalProperties": false,
378
- "properties": {
379
- "dependencies": {
380
- "items": {
381
- "type": "string"
382
- },
383
- "type": "array"
384
- },
385
- "dependencyTypes": {
386
- "items": {
387
- "$ref": "#/definitions/DependencyType"
388
- },
389
- "type": "array"
390
- },
391
- "label": {
392
- "type": "string"
393
- },
394
- "packages": {
395
- "items": {
396
- "type": "string"
397
- },
398
- "type": "array"
399
- },
400
- "pinVersion": {
401
- "type": "string"
402
- },
403
- "specifierTypes": {
404
- "items": {
405
- "$ref": "#/definitions/SpecifierType"
406
- },
407
- "type": "array"
408
- }
409
- },
410
- "type": "object"
411
- },
412
- "VersionGroupConfig.SameRange": {
413
- "additionalProperties": false,
414
- "properties": {
415
- "dependencies": {
416
- "items": {
417
- "type": "string"
418
- },
419
- "type": "array"
420
- },
421
- "dependencyTypes": {
422
- "items": {
423
- "$ref": "#/definitions/DependencyType"
424
- },
425
- "type": "array"
426
- },
427
- "label": {
428
- "type": "string"
429
- },
430
- "packages": {
431
- "items": {
432
- "type": "string"
433
- },
434
- "type": "array"
435
- },
436
- "policy": {
437
- "const": "sameRange",
438
- "type": "string"
439
- },
440
- "specifierTypes": {
441
- "items": {
442
- "$ref": "#/definitions/SpecifierType"
443
- },
444
- "type": "array"
445
- }
446
- },
447
- "type": "object"
448
- },
449
- "VersionGroupConfig.SnappedTo": {
450
- "additionalProperties": false,
451
- "properties": {
452
- "dependencies": {
453
- "items": {
454
- "type": "string"
455
- },
456
- "type": "array"
457
- },
458
- "dependencyTypes": {
459
- "items": {
460
- "$ref": "#/definitions/DependencyType"
461
- },
462
- "type": "array"
463
- },
464
- "label": {
465
- "type": "string"
466
- },
467
- "packages": {
468
- "items": {
469
- "type": "string"
470
- },
471
- "type": "array"
472
- },
473
- "snapTo": {
474
- "items": {
475
- "type": "string"
476
- },
477
- "type": "array"
478
- },
479
- "specifierTypes": {
480
- "items": {
481
- "$ref": "#/definitions/SpecifierType"
482
- },
483
- "type": "array"
484
- }
485
- },
486
- "type": "object"
487
- },
488
- "VersionGroupConfig.Standard": {
489
- "additionalProperties": false,
490
- "properties": {
491
- "dependencies": {
492
- "items": {
493
- "type": "string"
494
- },
495
- "type": "array"
496
- },
497
- "dependencyTypes": {
498
- "items": {
499
- "$ref": "#/definitions/DependencyType"
500
- },
501
- "type": "array"
502
- },
503
- "label": {
504
- "type": "string"
505
- },
506
- "packages": {
507
- "items": {
508
- "type": "string"
509
- },
510
- "type": "array"
511
- },
512
- "preferVersion": {
513
- "enum": [
514
- "highestSemver",
515
- "lowestSemver"
516
- ],
517
- "type": "string"
518
- },
519
- "specifierTypes": {
520
- "items": {
521
- "$ref": "#/definitions/SpecifierType"
522
- },
523
- "type": "array"
524
- }
525
- },
526
- "type": "object"
527
- }
528
- },
529
- "properties": {
530
- "$schema": {
531
- "type": "string"
532
- },
533
- "customTypes": {
534
- "additionalProperties": {
535
- "$ref": "#/definitions/CustomTypeConfig.Any"
536
- },
537
- "type": "object"
538
- },
539
- "dependencyTypes": {
540
- "items": {
541
- "$ref": "#/definitions/DependencyType"
542
- },
543
- "type": "array"
544
- },
545
- "filter": {
546
- "type": "string"
547
- },
548
- "formatBugs": {
549
- "type": "boolean"
550
- },
551
- "formatRepository": {
552
- "type": "boolean"
553
- },
554
- "indent": {
555
- "type": "string"
556
- },
557
- "lintFormatting": {
558
- "type": "boolean"
559
- },
560
- "lintSemverRanges": {
561
- "type": "boolean"
562
- },
563
- "lintVersions": {
564
- "type": "boolean"
565
- },
566
- "semverGroups": {
567
- "items": {
568
- "$ref": "#/definitions/SemverGroupConfig.Any"
569
- },
570
- "type": "array"
571
- },
572
- "sortAz": {
573
- "items": {
574
- "type": "string"
575
- },
576
- "type": "array"
577
- },
578
- "sortExports": {
579
- "items": {
580
- "type": "string"
581
- },
582
- "type": "array"
583
- },
584
- "sortFirst": {
585
- "items": {
586
- "type": "string"
587
- },
588
- "type": "array"
589
- },
590
- "sortPackages": {
591
- "type": "boolean"
592
- },
593
- "source": {
594
- "items": {
595
- "type": "string"
596
- },
597
- "type": "array"
598
- },
599
- "specifierTypes": {
600
- "items": {
601
- "$ref": "#/definitions/SpecifierType"
602
- },
603
- "type": "array"
604
- },
605
- "versionGroups": {
606
- "items": {
607
- "$ref": "#/definitions/VersionGroupConfig.Any"
608
- },
609
- "type": "array"
610
- }
611
- },
612
- "type": "object"
613
- }
614
-
@@ -1,4 +0,0 @@
1
- import { Effect } from 'effect';
2
- import type { Ctx } from '../get-context/index.js';
3
- import { SemverGroup } from './index.js';
4
- export declare function createSemverGroups(ctx: Ctx): Effect.Effect<SemverGroup.Any[], SemverGroup.ConfigError>;
@@ -1,83 +0,0 @@
1
- import { Effect } from 'effect';
2
- import { isArrayOfStrings } from 'tightrope/guard/is-array-of-strings.js';
3
- import { isNonEmptyArray } from 'tightrope/guard/is-non-empty-array.js';
4
- import { isNonEmptyString } from 'tightrope/guard/is-non-empty-string.js';
5
- import { isObject } from 'tightrope/guard/is-object.js';
6
- import { isValidSemverRange } from '../guards/is-valid-semver-range.js';
7
- import { DisabledSemverGroup } from './disabled.js';
8
- import { FilteredOutSemverGroup } from './filtered-out.js';
9
- import { IgnoredSemverGroup } from './ignored.js';
10
- import { SemverGroup } from './index.js';
11
- import { WithRangeSemverGroup } from './with-range.js';
12
- export function createSemverGroups(ctx) {
13
- const { rcFile } = ctx.config;
14
- const semverGroups = [
15
- Effect.succeed(new FilteredOutSemverGroup(ctx)),
16
- Effect.succeed(new WithRangeSemverGroup(false, {
17
- dependencies: ['**'],
18
- dependencyTypes: ['local'],
19
- label: 'the version property of package.json files must always be exact',
20
- packages: ['**'],
21
- range: '',
22
- })),
23
- ];
24
- if (isNonEmptyArray(rcFile.semverGroups)) {
25
- rcFile.semverGroups.forEach((config) => {
26
- if (!isObject(config)) {
27
- return semverGroups.push(Effect.fail(new SemverGroup.ConfigError({
28
- config,
29
- error: 'config is not an object',
30
- })));
31
- }
32
- const mutuallyExclusiveProps = ['isIgnored', 'range'].filter(prop => Boolean(config[prop]));
33
- if (mutuallyExclusiveProps.length > 1) {
34
- return semverGroups.push(Effect.fail(new SemverGroup.ConfigError({
35
- config,
36
- error: `it's unclear what kind of semver group you want, as it contains both ${mutuallyExclusiveProps.join(' and ')}`,
37
- })));
38
- }
39
- const label = isNonEmptyString(config.label) ? config.label : '';
40
- const dependencyTypes = isArrayOfStrings(config.dependencyTypes)
41
- ? config.dependencyTypes
42
- : ['**'];
43
- const dependencies = isArrayOfStrings(config.dependencies)
44
- ? config.dependencies
45
- : ['**'];
46
- const packages = isArrayOfStrings(config.packages)
47
- ? config.packages
48
- : ['**'];
49
- const specifierTypes = isArrayOfStrings(config.specifierTypes)
50
- ? config.specifierTypes
51
- : ['**'];
52
- if (config.isIgnored === true) {
53
- semverGroups.push(Effect.succeed(new IgnoredSemverGroup({
54
- dependencies,
55
- dependencyTypes,
56
- specifierTypes,
57
- isIgnored: true,
58
- label,
59
- packages,
60
- })));
61
- }
62
- else if (isValidSemverRange(config.range)) {
63
- semverGroups.push(Effect.succeed(new WithRangeSemverGroup(false, {
64
- dependencies,
65
- dependencyTypes,
66
- specifierTypes,
67
- label,
68
- packages,
69
- range: config.range,
70
- })));
71
- }
72
- });
73
- }
74
- semverGroups.push(Effect.succeed(new DisabledSemverGroup(true, {
75
- dependencies: ['**'],
76
- dependencyTypes: ['**'],
77
- specifierTypes: ['**'],
78
- label: 'Default Semver Group',
79
- packages: ['**'],
80
- isDisabled: true,
81
- })));
82
- return Effect.all(semverGroups);
83
- }