@unispechq/unispec-core 0.3.2 → 0.3.4

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 (440) hide show
  1. package/dist/cache/cache-factory.d.ts +2 -2
  2. package/dist/cache/cache-factory.js +1 -1
  3. package/dist/cache/cache-manager.d.ts +2 -2
  4. package/dist/cache/cache-manager.js +9 -7
  5. package/dist/cache/hash-utils.d.ts +1 -11
  6. package/dist/cache/hash-utils.js +1 -21
  7. package/dist/cache/hashing.d.ts +15 -6
  8. package/dist/cache/hashing.js +8 -12
  9. package/dist/cache/index.d.ts +6 -6
  10. package/dist/cache/index.js +5 -5
  11. package/dist/cache/lru-cache.d.ts +1 -13
  12. package/dist/cache/lru-cache.js +3 -24
  13. package/dist/cjs/cache/cache-factory.js +1 -1
  14. package/dist/cjs/cache/cache-manager.js +9 -7
  15. package/dist/cjs/cache/hash-utils.js +1 -23
  16. package/dist/cjs/cache/hashing.js +7 -13
  17. package/dist/cjs/cache/index.js +6 -8
  18. package/dist/cjs/cache/lru-cache.js +3 -24
  19. package/dist/cjs/diff/annotators.js +3 -2
  20. package/dist/cjs/diff/core.js +2 -2
  21. package/dist/cjs/diff/enhanced-diff.js +7 -21
  22. package/dist/cjs/diff/index.js +8 -8
  23. package/dist/cjs/errors/config-error.js +1 -1
  24. package/dist/cjs/errors/error-factory.js +7 -7
  25. package/dist/cjs/errors/index.js +8 -8
  26. package/dist/cjs/errors/loader-error.js +1 -1
  27. package/dist/cjs/errors/reference-error.js +1 -1
  28. package/dist/cjs/errors/schema-error.js +1 -1
  29. package/dist/cjs/errors/security-error.js +1 -1
  30. package/dist/cjs/errors/semantic-error.js +1 -1
  31. package/dist/cjs/index.js +13 -13
  32. package/dist/cjs/loader/index.js +4 -4
  33. package/dist/cjs/loader/security-validator.js +1 -1
  34. package/dist/cjs/loader/unispec-loader.js +3 -3
  35. package/dist/cjs/loader/yaml-loader.js +1 -1
  36. package/dist/cjs/normalizer/core.js +11 -6
  37. package/dist/cjs/normalizer/index.js +1 -1
  38. package/dist/cjs/normalizer/utils.js +23 -7
  39. package/dist/cjs/optimizer/core.js +35 -10
  40. package/dist/cjs/optimizer/index.js +3 -3
  41. package/dist/cjs/optimizer/optimization-functions.js +2 -2
  42. package/dist/cjs/schemas/dedupe.js +27 -14
  43. package/dist/cjs/schemas/index.js +3 -3
  44. package/dist/cjs/schemas/resolver.js +3 -2
  45. package/dist/cjs/validator/ajv-validator.js +1 -1
  46. package/dist/cjs/validator/config-validator-main.js +4 -4
  47. package/dist/cjs/validator/config-validator.js +1 -1
  48. package/dist/cjs/validator/index.js +7 -7
  49. package/dist/cjs/validator/reference-validator.js +1 -1
  50. package/dist/cjs/validator/tests-validator.js +2 -2
  51. package/dist/cjs/validator/unispec-validator.js +7 -11
  52. package/dist/cjs/validator/validator-factory.js +1 -1
  53. package/dist/diff/annotators.d.ts +1 -1
  54. package/dist/diff/annotators.js +3 -2
  55. package/dist/diff/change-reports.d.ts +1 -1
  56. package/dist/diff/core.d.ts +2 -2
  57. package/dist/diff/core.js +2 -2
  58. package/dist/diff/enhanced-diff.d.ts +3 -3
  59. package/dist/diff/enhanced-diff.js +7 -21
  60. package/dist/diff/impact-strategies-refactored.d.ts +2 -2
  61. package/dist/diff/impact-strategies.d.ts +2 -2
  62. package/dist/diff/index.d.ts +8 -8
  63. package/dist/diff/index.js +8 -8
  64. package/dist/diff/metrics-calculator.d.ts +1 -1
  65. package/dist/diff/risk-calculator.d.ts +1 -1
  66. package/dist/diff/suggestion-generator.d.ts +2 -2
  67. package/dist/errors/config-error.d.ts +1 -1
  68. package/dist/errors/config-error.js +1 -1
  69. package/dist/errors/error-factory.d.ts +7 -7
  70. package/dist/errors/error-factory.js +7 -7
  71. package/dist/errors/index.d.ts +8 -8
  72. package/dist/errors/index.js +8 -8
  73. package/dist/errors/loader-error.d.ts +1 -1
  74. package/dist/errors/loader-error.js +1 -1
  75. package/dist/errors/reference-error.d.ts +1 -1
  76. package/dist/errors/reference-error.js +1 -1
  77. package/dist/errors/schema-error.d.ts +1 -1
  78. package/dist/errors/schema-error.js +1 -1
  79. package/dist/errors/security-error.d.ts +1 -1
  80. package/dist/errors/security-error.js +1 -1
  81. package/dist/errors/semantic-error.d.ts +1 -1
  82. package/dist/errors/semantic-error.js +1 -1
  83. package/dist/index.cjs +13 -13
  84. package/dist/index.d.ts +13 -13
  85. package/dist/index.js +13 -13
  86. package/dist/loader/index.d.ts +5 -5
  87. package/dist/loader/index.js +4 -4
  88. package/dist/loader/security-validator.d.ts +1 -1
  89. package/dist/loader/security-validator.js +1 -1
  90. package/dist/loader/unispec-loader.d.ts +2 -2
  91. package/dist/loader/unispec-loader.js +3 -3
  92. package/dist/loader/yaml-loader.d.ts +1 -1
  93. package/dist/loader/yaml-loader.js +1 -1
  94. package/dist/normalizer/core.d.ts +2 -2
  95. package/dist/normalizer/core.js +11 -6
  96. package/dist/normalizer/graphql-normalizer.d.ts +1 -1
  97. package/dist/normalizer/index.d.ts +2 -2
  98. package/dist/normalizer/index.js +1 -1
  99. package/dist/normalizer/rest-normalizer.d.ts +1 -1
  100. package/dist/normalizer/types.d.ts +1 -1
  101. package/dist/normalizer/utils.d.ts +6 -3
  102. package/dist/normalizer/utils.js +23 -7
  103. package/dist/normalizer/websocket-normalizer.d.ts +1 -1
  104. package/dist/optimizer/core.d.ts +2 -2
  105. package/dist/optimizer/core.js +35 -10
  106. package/dist/optimizer/index.d.ts +4 -4
  107. package/dist/optimizer/index.js +3 -3
  108. package/dist/optimizer/optimization-functions.d.ts +2 -2
  109. package/dist/optimizer/optimization-functions.js +2 -2
  110. package/dist/optimizer/types.d.ts +1 -1
  111. package/dist/schemas/dedupe.d.ts +1 -1
  112. package/dist/schemas/dedupe.js +27 -14
  113. package/dist/schemas/index.d.ts +3 -3
  114. package/dist/schemas/index.js +3 -3
  115. package/dist/schemas/resolver.d.ts +1 -1
  116. package/dist/schemas/resolver.js +3 -2
  117. package/dist/types/index.d.ts +2 -1
  118. package/dist/validator/ajv-validator.d.ts +1 -1
  119. package/dist/validator/ajv-validator.js +1 -1
  120. package/dist/validator/config-validator-main.d.ts +2 -2
  121. package/dist/validator/config-validator-main.js +4 -4
  122. package/dist/validator/config-validator.d.ts +1 -1
  123. package/dist/validator/config-validator.js +1 -1
  124. package/dist/validator/index.d.ts +10 -10
  125. package/dist/validator/index.js +7 -7
  126. package/dist/validator/reference-validator.d.ts +1 -1
  127. package/dist/validator/reference-validator.js +1 -1
  128. package/dist/validator/schema-references.d.ts +1 -1
  129. package/dist/validator/semantic-validator.d.ts +1 -1
  130. package/dist/validator/tests-validator.d.ts +2 -2
  131. package/dist/validator/tests-validator.js +2 -2
  132. package/dist/validator/types.d.ts +3 -3
  133. package/dist/validator/unispec-validator.d.ts +2 -2
  134. package/dist/validator/unispec-validator.js +7 -11
  135. package/dist/validator/validator-factory.d.ts +3 -3
  136. package/dist/validator/validator-factory.js +1 -1
  137. package/package.json +3 -3
  138. package/dist/cjs/src/cache/cache-factory.js +0 -72
  139. package/dist/cjs/src/cache/cache-manager.js +0 -128
  140. package/dist/cjs/src/cache/constants.js +0 -25
  141. package/dist/cjs/src/cache/hash-utils.js +0 -19
  142. package/dist/cjs/src/cache/hashing.js +0 -230
  143. package/dist/cjs/src/cache/index.js +0 -24
  144. package/dist/cjs/src/cache/lru-cache.js +0 -144
  145. package/dist/cjs/src/cache/types.js +0 -5
  146. package/dist/cjs/src/diff/annotators.js +0 -160
  147. package/dist/cjs/src/diff/change-reports.js +0 -369
  148. package/dist/cjs/src/diff/core.js +0 -158
  149. package/dist/cjs/src/diff/enhanced-diff.js +0 -65
  150. package/dist/cjs/src/diff/impact-strategies-refactored.js +0 -230
  151. package/dist/cjs/src/diff/impact-strategies.js +0 -219
  152. package/dist/cjs/src/diff/index.js +0 -27
  153. package/dist/cjs/src/diff/metrics-calculator.js +0 -69
  154. package/dist/cjs/src/diff/risk-calculator.js +0 -58
  155. package/dist/cjs/src/diff/suggestion-generator.js +0 -78
  156. package/dist/cjs/src/diff/types.js +0 -11
  157. package/dist/cjs/src/errors/base-error.js +0 -33
  158. package/dist/cjs/src/errors/config-error.js +0 -11
  159. package/dist/cjs/src/errors/error-factory.js +0 -48
  160. package/dist/cjs/src/errors/index.js +0 -19
  161. package/dist/cjs/src/errors/loader-error.js +0 -11
  162. package/dist/cjs/src/errors/reference-error.js +0 -11
  163. package/dist/cjs/src/errors/schema-error.js +0 -11
  164. package/dist/cjs/src/errors/security-error.js +0 -11
  165. package/dist/cjs/src/errors/semantic-error.js +0 -11
  166. package/dist/cjs/src/generated-schemas.js +0 -2100
  167. package/dist/cjs/src/index.js +0 -59
  168. package/dist/cjs/src/loader/index.js +0 -13
  169. package/dist/cjs/src/loader/security-validator.js +0 -53
  170. package/dist/cjs/src/loader/types.js +0 -11
  171. package/dist/cjs/src/loader/unispec-loader.js +0 -84
  172. package/dist/cjs/src/loader/yaml-loader.js +0 -76
  173. package/dist/cjs/src/normalizer/core.js +0 -37
  174. package/dist/cjs/src/normalizer/graphql-normalizer.js +0 -67
  175. package/dist/cjs/src/normalizer/index.js +0 -7
  176. package/dist/cjs/src/normalizer/rest-normalizer.js +0 -51
  177. package/dist/cjs/src/normalizer/types.js +0 -2
  178. package/dist/cjs/src/normalizer/utils.js +0 -49
  179. package/dist/cjs/src/normalizer/websocket-normalizer.js +0 -81
  180. package/dist/cjs/src/optimizer/core.js +0 -140
  181. package/dist/cjs/src/optimizer/index.js +0 -17
  182. package/dist/cjs/src/optimizer/optimization-functions.js +0 -185
  183. package/dist/cjs/src/optimizer/types.js +0 -2
  184. package/dist/cjs/src/optimizer/utils.js +0 -32
  185. package/dist/cjs/src/schemas/dedupe.js +0 -113
  186. package/dist/cjs/src/schemas/index.js +0 -14
  187. package/dist/cjs/src/schemas/resolver.js +0 -42
  188. package/dist/cjs/src/schemas/utils.js +0 -53
  189. package/dist/cjs/src/types/index.js +0 -2
  190. package/dist/cjs/src/validator/ajv-validator.js +0 -82
  191. package/dist/cjs/src/validator/config-validator-main.js +0 -34
  192. package/dist/cjs/src/validator/config-validator.js +0 -17
  193. package/dist/cjs/src/validator/index.js +0 -23
  194. package/dist/cjs/src/validator/object-traversal.js +0 -112
  195. package/dist/cjs/src/validator/reference-validator.js +0 -233
  196. package/dist/cjs/src/validator/schema-references.js +0 -116
  197. package/dist/cjs/src/validator/semantic-validator.js +0 -328
  198. package/dist/cjs/src/validator/tests-validator.js +0 -16
  199. package/dist/cjs/src/validator/types.js +0 -2
  200. package/dist/cjs/src/validator/unispec-validator.js +0 -80
  201. package/dist/cjs/src/validator/validator-factory.js +0 -77
  202. package/dist/cjs/src/versions.js +0 -147
  203. package/dist/cjs/tests/cache/cache.test.js +0 -274
  204. package/dist/cjs/tests/cache/utils.js +0 -32
  205. package/dist/cjs/tests/concurrency-normalizer-optimizer.test.js +0 -1
  206. package/dist/cjs/tests/diff/diff-annotators.test.js +0 -280
  207. package/dist/cjs/tests/diff/diff-comprehensive.test.js +0 -262
  208. package/dist/cjs/tests/diff/diff-extended.test.js +0 -235
  209. package/dist/cjs/tests/diff/diff.test.js +0 -189
  210. package/dist/cjs/tests/diff/utils.js +0 -8
  211. package/dist/cjs/tests/errors/errors-integration.test.js +0 -173
  212. package/dist/cjs/tests/errors/errors.test.js +0 -280
  213. package/dist/cjs/tests/errors/utils.js +0 -7
  214. package/dist/cjs/tests/loader/integration.test.js +0 -216
  215. package/dist/cjs/tests/loader/loader.test.js +0 -341
  216. package/dist/cjs/tests/normalizer/normalizer-comprehensive.test.js +0 -648
  217. package/dist/cjs/tests/normalizer/normalizer-invalid.test.js +0 -258
  218. package/dist/cjs/tests/normalizer/normalizer-valid.test.js +0 -238
  219. package/dist/cjs/tests/normalizer/utils.js +0 -47
  220. package/dist/cjs/tests/optimizer/compress-references.test.js +0 -304
  221. package/dist/cjs/tests/optimizer/deduplication.test.js +0 -132
  222. package/dist/cjs/tests/optimizer/integration.test.js +0 -131
  223. package/dist/cjs/tests/optimizer/optimization-report.test.js +0 -222
  224. package/dist/cjs/tests/optimizer/optimize-document.test.js +0 -187
  225. package/dist/cjs/tests/optimizer/orphaned-schemas.test.js +0 -194
  226. package/dist/cjs/tests/optimizer/sort-schemas.test.js +0 -131
  227. package/dist/cjs/tests/optimizer/utils.js +0 -209
  228. package/dist/cjs/tests/schemas/schemas-edge-cases.test.js +0 -223
  229. package/dist/cjs/tests/schemas/schemas.test.js +0 -400
  230. package/dist/cjs/tests/schemas/utils.js +0 -7
  231. package/dist/cjs/tests/utils.js +0 -131
  232. package/dist/cjs/tests/validator/config-validator.test.js +0 -78
  233. package/dist/cjs/tests/validator/debug-config.js +0 -1
  234. package/dist/cjs/tests/validator/debug-missing-service.js +0 -1
  235. package/dist/cjs/tests/validator/debug-other-configs.js +0 -1
  236. package/dist/cjs/tests/validator/debug-references.js +0 -1
  237. package/dist/cjs/tests/validator/unispec-validator.test.js +0 -103
  238. package/dist/cjs/tests/validator/utils.js +0 -25
  239. package/dist/src/cache/cache-factory.d.ts +0 -31
  240. package/dist/src/cache/cache-factory.js +0 -65
  241. package/dist/src/cache/cache-manager.d.ts +0 -62
  242. package/dist/src/cache/cache-manager.js +0 -124
  243. package/dist/src/cache/constants.d.ts +0 -21
  244. package/dist/src/cache/constants.js +0 -22
  245. package/dist/src/cache/hash-utils.d.ts +0 -11
  246. package/dist/src/cache/hash-utils.js +0 -15
  247. package/dist/src/cache/hashing.d.ts +0 -28
  248. package/dist/src/cache/hashing.js +0 -193
  249. package/dist/src/cache/index.d.ts +0 -6
  250. package/dist/src/cache/index.js +0 -10
  251. package/dist/src/cache/lru-cache.d.ts +0 -44
  252. package/dist/src/cache/lru-cache.js +0 -140
  253. package/dist/src/cache/types.d.ts +0 -24
  254. package/dist/src/cache/types.js +0 -4
  255. package/dist/src/diff/annotators.d.ts +0 -4
  256. package/dist/src/diff/annotators.js +0 -155
  257. package/dist/src/diff/change-reports.d.ts +0 -37
  258. package/dist/src/diff/change-reports.js +0 -366
  259. package/dist/src/diff/core.d.ts +0 -26
  260. package/dist/src/diff/core.js +0 -155
  261. package/dist/src/diff/enhanced-diff.d.ts +0 -51
  262. package/dist/src/diff/enhanced-diff.js +0 -62
  263. package/dist/src/diff/impact-strategies-refactored.d.ts +0 -69
  264. package/dist/src/diff/impact-strategies-refactored.js +0 -223
  265. package/dist/src/diff/impact-strategies.d.ts +0 -41
  266. package/dist/src/diff/impact-strategies.js +0 -212
  267. package/dist/src/diff/index.d.ts +0 -8
  268. package/dist/src/diff/index.js +0 -11
  269. package/dist/src/diff/metrics-calculator.d.ts +0 -23
  270. package/dist/src/diff/metrics-calculator.js +0 -65
  271. package/dist/src/diff/risk-calculator.d.ts +0 -23
  272. package/dist/src/diff/risk-calculator.js +0 -55
  273. package/dist/src/diff/suggestion-generator.d.ts +0 -18
  274. package/dist/src/diff/suggestion-generator.js +0 -74
  275. package/dist/src/diff/types.d.ts +0 -24
  276. package/dist/src/diff/types.js +0 -8
  277. package/dist/src/errors/base-error.d.ts +0 -20
  278. package/dist/src/errors/base-error.js +0 -29
  279. package/dist/src/errors/config-error.d.ts +0 -4
  280. package/dist/src/errors/config-error.js +0 -7
  281. package/dist/src/errors/error-factory.d.ts +0 -22
  282. package/dist/src/errors/error-factory.js +0 -45
  283. package/dist/src/errors/index.d.ts +0 -8
  284. package/dist/src/errors/index.js +0 -8
  285. package/dist/src/errors/loader-error.d.ts +0 -4
  286. package/dist/src/errors/loader-error.js +0 -7
  287. package/dist/src/errors/reference-error.d.ts +0 -4
  288. package/dist/src/errors/reference-error.js +0 -7
  289. package/dist/src/errors/schema-error.d.ts +0 -4
  290. package/dist/src/errors/schema-error.js +0 -7
  291. package/dist/src/errors/security-error.d.ts +0 -4
  292. package/dist/src/errors/security-error.js +0 -7
  293. package/dist/src/errors/semantic-error.d.ts +0 -4
  294. package/dist/src/errors/semantic-error.js +0 -7
  295. package/dist/src/generated-schemas.d.ts +0 -2073
  296. package/dist/src/generated-schemas.js +0 -2097
  297. package/dist/src/index.d.ts +0 -13
  298. package/dist/src/index.js +0 -43
  299. package/dist/src/loader/index.d.ts +0 -5
  300. package/dist/src/loader/index.js +0 -5
  301. package/dist/src/loader/security-validator.d.ts +0 -5
  302. package/dist/src/loader/security-validator.js +0 -50
  303. package/dist/src/loader/types.d.ts +0 -30
  304. package/dist/src/loader/types.js +0 -8
  305. package/dist/src/loader/unispec-loader.d.ts +0 -10
  306. package/dist/src/loader/unispec-loader.js +0 -81
  307. package/dist/src/loader/yaml-loader.d.ts +0 -10
  308. package/dist/src/loader/yaml-loader.js +0 -39
  309. package/dist/src/normalizer/core.d.ts +0 -24
  310. package/dist/src/normalizer/core.js +0 -34
  311. package/dist/src/normalizer/graphql-normalizer.d.ts +0 -8
  312. package/dist/src/normalizer/graphql-normalizer.js +0 -64
  313. package/dist/src/normalizer/index.d.ts +0 -2
  314. package/dist/src/normalizer/index.js +0 -3
  315. package/dist/src/normalizer/rest-normalizer.d.ts +0 -8
  316. package/dist/src/normalizer/rest-normalizer.js +0 -48
  317. package/dist/src/normalizer/types.d.ts +0 -7
  318. package/dist/src/normalizer/types.js +0 -1
  319. package/dist/src/normalizer/utils.d.ts +0 -17
  320. package/dist/src/normalizer/utils.js +0 -45
  321. package/dist/src/normalizer/websocket-normalizer.d.ts +0 -8
  322. package/dist/src/normalizer/websocket-normalizer.js +0 -78
  323. package/dist/src/optimizer/core.d.ts +0 -17
  324. package/dist/src/optimizer/core.js +0 -136
  325. package/dist/src/optimizer/index.d.ts +0 -4
  326. package/dist/src/optimizer/index.js +0 -7
  327. package/dist/src/optimizer/optimization-functions.d.ts +0 -32
  328. package/dist/src/optimizer/optimization-functions.js +0 -179
  329. package/dist/src/optimizer/types.d.ts +0 -28
  330. package/dist/src/optimizer/types.js +0 -1
  331. package/dist/src/optimizer/utils.d.ts +0 -7
  332. package/dist/src/optimizer/utils.js +0 -29
  333. package/dist/src/schemas/dedupe.d.ts +0 -9
  334. package/dist/src/schemas/dedupe.js +0 -110
  335. package/dist/src/schemas/index.d.ts +0 -3
  336. package/dist/src/schemas/index.js +0 -6
  337. package/dist/src/schemas/resolver.d.ts +0 -19
  338. package/dist/src/schemas/resolver.js +0 -38
  339. package/dist/src/schemas/utils.d.ts +0 -20
  340. package/dist/src/schemas/utils.js +0 -49
  341. package/dist/src/types/index.d.ts +0 -434
  342. package/dist/src/types/index.js +0 -1
  343. package/dist/src/validator/ajv-validator.d.ts +0 -15
  344. package/dist/src/validator/ajv-validator.js +0 -75
  345. package/dist/src/validator/config-validator-main.d.ts +0 -10
  346. package/dist/src/validator/config-validator-main.js +0 -31
  347. package/dist/src/validator/config-validator.d.ts +0 -5
  348. package/dist/src/validator/config-validator.js +0 -14
  349. package/dist/src/validator/index.d.ts +0 -10
  350. package/dist/src/validator/index.js +0 -11
  351. package/dist/src/validator/object-traversal.d.ts +0 -52
  352. package/dist/src/validator/object-traversal.js +0 -104
  353. package/dist/src/validator/reference-validator.d.ts +0 -31
  354. package/dist/src/validator/reference-validator.js +0 -230
  355. package/dist/src/validator/schema-references.d.ts +0 -23
  356. package/dist/src/validator/schema-references.js +0 -111
  357. package/dist/src/validator/semantic-validator.d.ts +0 -26
  358. package/dist/src/validator/semantic-validator.js +0 -325
  359. package/dist/src/validator/tests-validator.d.ts +0 -9
  360. package/dist/src/validator/tests-validator.js +0 -13
  361. package/dist/src/validator/types.d.ts +0 -29
  362. package/dist/src/validator/types.js +0 -1
  363. package/dist/src/validator/unispec-validator.d.ts +0 -15
  364. package/dist/src/validator/unispec-validator.js +0 -77
  365. package/dist/src/validator/validator-factory.d.ts +0 -10
  366. package/dist/src/validator/validator-factory.js +0 -73
  367. package/dist/src/versions.d.ts +0 -10
  368. package/dist/src/versions.js +0 -143
  369. package/dist/tests/cache/cache.test.d.ts +0 -1
  370. package/dist/tests/cache/cache.test.js +0 -269
  371. package/dist/tests/cache/utils.d.ts +0 -4
  372. package/dist/tests/cache/utils.js +0 -24
  373. package/dist/tests/concurrency-normalizer-optimizer.test.d.ts +0 -0
  374. package/dist/tests/concurrency-normalizer-optimizer.test.js +0 -1
  375. package/dist/tests/diff/diff-annotators.test.d.ts +0 -1
  376. package/dist/tests/diff/diff-annotators.test.js +0 -275
  377. package/dist/tests/diff/diff-comprehensive.test.d.ts +0 -1
  378. package/dist/tests/diff/diff-comprehensive.test.js +0 -257
  379. package/dist/tests/diff/diff-extended.test.d.ts +0 -1
  380. package/dist/tests/diff/diff-extended.test.js +0 -230
  381. package/dist/tests/diff/diff.test.d.ts +0 -1
  382. package/dist/tests/diff/diff.test.js +0 -184
  383. package/dist/tests/diff/utils.d.ts +0 -2
  384. package/dist/tests/diff/utils.js +0 -3
  385. package/dist/tests/errors/errors-integration.test.d.ts +0 -1
  386. package/dist/tests/errors/errors-integration.test.js +0 -168
  387. package/dist/tests/errors/errors.test.d.ts +0 -1
  388. package/dist/tests/errors/errors.test.js +0 -275
  389. package/dist/tests/errors/utils.d.ts +0 -2
  390. package/dist/tests/errors/utils.js +0 -3
  391. package/dist/tests/loader/integration.test.d.ts +0 -1
  392. package/dist/tests/loader/integration.test.js +0 -211
  393. package/dist/tests/loader/loader.test.d.ts +0 -1
  394. package/dist/tests/loader/loader.test.js +0 -336
  395. package/dist/tests/normalizer/normalizer-comprehensive.test.d.ts +0 -1
  396. package/dist/tests/normalizer/normalizer-comprehensive.test.js +0 -643
  397. package/dist/tests/normalizer/normalizer-invalid.test.d.ts +0 -1
  398. package/dist/tests/normalizer/normalizer-invalid.test.js +0 -253
  399. package/dist/tests/normalizer/normalizer-valid.test.d.ts +0 -1
  400. package/dist/tests/normalizer/normalizer-valid.test.js +0 -233
  401. package/dist/tests/normalizer/utils.d.ts +0 -18
  402. package/dist/tests/normalizer/utils.js +0 -36
  403. package/dist/tests/optimizer/compress-references.test.d.ts +0 -1
  404. package/dist/tests/optimizer/compress-references.test.js +0 -299
  405. package/dist/tests/optimizer/deduplication.test.d.ts +0 -1
  406. package/dist/tests/optimizer/deduplication.test.js +0 -127
  407. package/dist/tests/optimizer/integration.test.d.ts +0 -1
  408. package/dist/tests/optimizer/integration.test.js +0 -126
  409. package/dist/tests/optimizer/optimization-report.test.d.ts +0 -1
  410. package/dist/tests/optimizer/optimization-report.test.js +0 -217
  411. package/dist/tests/optimizer/optimize-document.test.d.ts +0 -1
  412. package/dist/tests/optimizer/optimize-document.test.js +0 -182
  413. package/dist/tests/optimizer/orphaned-schemas.test.d.ts +0 -1
  414. package/dist/tests/optimizer/orphaned-schemas.test.js +0 -189
  415. package/dist/tests/optimizer/sort-schemas.test.d.ts +0 -1
  416. package/dist/tests/optimizer/sort-schemas.test.js +0 -126
  417. package/dist/tests/optimizer/utils.d.ts +0 -8
  418. package/dist/tests/optimizer/utils.js +0 -199
  419. package/dist/tests/schemas/schemas-edge-cases.test.d.ts +0 -1
  420. package/dist/tests/schemas/schemas-edge-cases.test.js +0 -218
  421. package/dist/tests/schemas/schemas.test.d.ts +0 -1
  422. package/dist/tests/schemas/schemas.test.js +0 -395
  423. package/dist/tests/schemas/utils.d.ts +0 -2
  424. package/dist/tests/schemas/utils.js +0 -3
  425. package/dist/tests/utils.d.ts +0 -10
  426. package/dist/tests/utils.js +0 -118
  427. package/dist/tests/validator/config-validator.test.d.ts +0 -1
  428. package/dist/tests/validator/config-validator.test.js +0 -73
  429. package/dist/tests/validator/debug-config.d.ts +0 -0
  430. package/dist/tests/validator/debug-config.js +0 -1
  431. package/dist/tests/validator/debug-missing-service.d.ts +0 -0
  432. package/dist/tests/validator/debug-missing-service.js +0 -1
  433. package/dist/tests/validator/debug-other-configs.d.ts +0 -0
  434. package/dist/tests/validator/debug-other-configs.js +0 -1
  435. package/dist/tests/validator/debug-references.d.ts +0 -0
  436. package/dist/tests/validator/debug-references.js +0 -1
  437. package/dist/tests/validator/unispec-validator.test.d.ts +0 -1
  438. package/dist/tests/validator/unispec-validator.test.js +0 -98
  439. package/dist/tests/validator/utils.d.ts +0 -6
  440. package/dist/tests/validator/utils.js +0 -20
@@ -1,55 +0,0 @@
1
- /**
2
- * Calculator for determining risk levels based on change impact.
3
- */
4
- export const RiskLevelCalculator = {
5
- /**
6
- * Calculate risk level based on impact.
7
- */
8
- calculate(impact) {
9
- // Critical: Breaking changes with high client impact
10
- if (impact.backwardCompatibility === "incompatible" &&
11
- impact.clientImpact === "high") {
12
- return "critical";
13
- }
14
- // High: Any breaking change
15
- if (impact.backwardCompatibility === "incompatible") {
16
- return "high";
17
- }
18
- // Medium: Medium impact on client or server
19
- if (impact.clientImpact === "medium" || impact.serverImpact === "medium") {
20
- return "medium";
21
- }
22
- // Low: Everything else
23
- return "low";
24
- },
25
- /**
26
- * Get risk level weight for sorting.
27
- */
28
- getWeight(riskLevel) {
29
- const weights = {
30
- critical: 4,
31
- high: 3,
32
- medium: 2,
33
- low: 1,
34
- };
35
- return weights[riskLevel];
36
- },
37
- /**
38
- * Check if risk level requires immediate attention.
39
- */
40
- requiresImmediateAttention(riskLevel) {
41
- return riskLevel === "critical" || riskLevel === "high";
42
- },
43
- /**
44
- * Get risk level description.
45
- */
46
- getDescription(riskLevel) {
47
- const descriptions = {
48
- critical: "Critical breaking change requiring immediate action",
49
- high: "Breaking change that requires attention",
50
- medium: "Moderate change with some impact",
51
- low: "Minor change with minimal impact",
52
- };
53
- return descriptions[riskLevel];
54
- },
55
- };
@@ -1,18 +0,0 @@
1
- import type { ChangeImpact } from "./enhanced-diff.js";
2
- import type { UniSpecChange } from "./index.js";
3
- /**
4
- * Service for generating migration suggestions based on change impact.
5
- */
6
- export declare class SuggestionGeneratorService {
7
- /**
8
- * Generate migration suggestions based on change impact.
9
- */
10
- generateSuggestions(change: UniSpecChange, impact: ChangeImpact): string[];
11
- private addBreakingChangeSuggestions;
12
- private addRestBreakingSuggestions;
13
- private addGraphQLBreakingSuggestions;
14
- private addWebSocketBreakingSuggestions;
15
- private addClientImpactSuggestions;
16
- private addServerImpactSuggestions;
17
- private addMigrationComplexitySuggestions;
18
- }
@@ -1,74 +0,0 @@
1
- /**
2
- * Service for generating migration suggestions based on change impact.
3
- */
4
- export class SuggestionGeneratorService {
5
- /**
6
- * Generate migration suggestions based on change impact.
7
- */
8
- generateSuggestions(change, impact) {
9
- const suggestions = [];
10
- this.addBreakingChangeSuggestions(suggestions, change, impact);
11
- this.addClientImpactSuggestions(suggestions, impact);
12
- this.addServerImpactSuggestions(suggestions, impact);
13
- this.addMigrationComplexitySuggestions(suggestions, impact);
14
- return suggestions;
15
- }
16
- addBreakingChangeSuggestions(suggestions, change, impact) {
17
- if (impact.backwardCompatibility !== "incompatible")
18
- return;
19
- suggestions.push("This is a breaking change that requires client updates");
20
- if (change.protocol === "rest") {
21
- this.addRestBreakingSuggestions(suggestions, change);
22
- }
23
- else if (change.protocol === "graphql") {
24
- this.addGraphQLBreakingSuggestions(suggestions, change);
25
- }
26
- else if (change.protocol === "websocket") {
27
- this.addWebSocketBreakingSuggestions(suggestions, change);
28
- }
29
- }
30
- addRestBreakingSuggestions(suggestions, change) {
31
- if (change.kind?.includes("route.removed")) {
32
- suggestions.push("Consider deprecating the route before removal");
33
- suggestions.push("Provide alternative endpoint if functionality is still needed");
34
- }
35
- if (change.path.includes("/path")) {
36
- suggestions.push("Maintain backward compatibility by supporting old path");
37
- suggestions.push("Document migration path for clients");
38
- }
39
- }
40
- addGraphQLBreakingSuggestions(suggestions, change) {
41
- if (change.kind?.includes("operation.removed")) {
42
- suggestions.push("Mark operation as @deprecated before removal");
43
- suggestions.push("Provide alternative query/mutation if possible");
44
- }
45
- if (change.path.includes("/returnType")) {
46
- suggestions.push("Consider adding new field instead of changing return type");
47
- suggestions.push("Use union types for multiple possible return types");
48
- }
49
- }
50
- addWebSocketBreakingSuggestions(suggestions, change) {
51
- if (change.kind?.includes("channel.removed")) {
52
- suggestions.push("Notify clients before closing channel");
53
- suggestions.push("Provide grace period for migration");
54
- }
55
- }
56
- addClientImpactSuggestions(suggestions, impact) {
57
- if (impact.clientImpact === "high") {
58
- suggestions.push("Client code changes are required");
59
- suggestions.push("Update client documentation");
60
- }
61
- }
62
- addServerImpactSuggestions(suggestions, impact) {
63
- if (impact.serverImpact === "medium" || impact.serverImpact === "high") {
64
- suggestions.push("Server implementation changes required");
65
- suggestions.push("Update server-side documentation");
66
- }
67
- }
68
- addMigrationComplexitySuggestions(suggestions, impact) {
69
- if (impact.migrationComplexity === "complex") {
70
- suggestions.push("Plan migration in phases");
71
- suggestions.push("Consider feature flags for gradual rollout");
72
- }
73
- }
74
- }
@@ -1,24 +0,0 @@
1
- export type ChangeSeverity = "breaking" | "non-breaking" | "unknown";
2
- export interface UniSpecChange {
3
- path: string;
4
- description: string;
5
- severity: ChangeSeverity;
6
- protocol?: "rest" | "graphql" | "websocket";
7
- kind?: string;
8
- }
9
- export interface DiffResult {
10
- changes: UniSpecChange[];
11
- }
12
- export interface DiffOptions {
13
- /**
14
- * Custom paths for named collections that should be compared by name instead of index.
15
- * Defaults to standard UniSpec paths if not provided.
16
- */
17
- namedCollectionPaths?: string[];
18
- /**
19
- * Whether to enable deep comparison of nested objects.
20
- * @default true
21
- */
22
- deepComparison?: boolean;
23
- }
24
- export declare const DEFAULT_NAMED_COLLECTION_PATHS: readonly ["/service/protocols/rest/routes", "/service/protocols/websocket/channels", "/service/protocols/graphql/queries", "/service/protocols/graphql/mutations", "/service/protocols/graphql/subscriptions"];
@@ -1,8 +0,0 @@
1
- // Default named collection paths for UniSpec
2
- export const DEFAULT_NAMED_COLLECTION_PATHS = [
3
- "/service/protocols/rest/routes",
4
- "/service/protocols/websocket/channels",
5
- "/service/protocols/graphql/queries",
6
- "/service/protocols/graphql/mutations",
7
- "/service/protocols/graphql/subscriptions",
8
- ];
@@ -1,20 +0,0 @@
1
- /**
2
- * Base validation error class for UniSpec validation.
3
- * Provides better error context and handling.
4
- */
5
- export declare class UniSpecValidationError extends Error {
6
- readonly code: string;
7
- readonly path: string;
8
- readonly severity: "error" | "warning" | "info";
9
- readonly details?: Record<string, unknown>;
10
- constructor(message: string, code: string, path?: string, severity?: "error" | "warning" | "info", details?: Record<string, unknown>);
11
- toJSON(): {
12
- name: string;
13
- message: string;
14
- code: string;
15
- path: string;
16
- severity: "info" | "error" | "warning";
17
- details: Record<string, unknown> | undefined;
18
- stack: string | undefined;
19
- };
20
- }
@@ -1,29 +0,0 @@
1
- /**
2
- * Base validation error class for UniSpec validation.
3
- * Provides better error context and handling.
4
- */
5
- export class UniSpecValidationError extends Error {
6
- constructor(message, code, path = "", severity = "error", details) {
7
- super(message);
8
- this.name = "UniSpecValidationError";
9
- this.code = code;
10
- this.path = path;
11
- this.severity = severity;
12
- this.details = details;
13
- // Maintains proper stack trace for where our error was thrown (only available on V8)
14
- if (Error.captureStackTrace) {
15
- Error.captureStackTrace(this, UniSpecValidationError);
16
- }
17
- }
18
- toJSON() {
19
- return {
20
- name: this.name,
21
- message: this.message,
22
- code: this.code,
23
- path: this.path,
24
- severity: this.severity,
25
- details: this.details,
26
- stack: this.stack,
27
- };
28
- }
29
- }
@@ -1,4 +0,0 @@
1
- import { UniSpecValidationError } from "./base-error.js";
2
- export declare class UniSpecConfigError extends UniSpecValidationError {
3
- constructor(message: string, path?: string, details?: Record<string, unknown>);
4
- }
@@ -1,7 +0,0 @@
1
- import { UniSpecValidationError } from "./base-error.js";
2
- export class UniSpecConfigError extends UniSpecValidationError {
3
- constructor(message, path = "", details) {
4
- super(message, "config_error", path, "error", details);
5
- this.name = "UniSpecConfigError";
6
- }
7
- }
@@ -1,22 +0,0 @@
1
- import { UniSpecValidationError } from "./base-error.js";
2
- import { UniSpecConfigError } from "./config-error.js";
3
- import { UniSpecLoaderError } from "./loader-error.js";
4
- import { UniSpecReferenceError } from "./reference-error.js";
5
- import { UniSpecSchemaError } from "./schema-error.js";
6
- import { UniSpecSecurityError } from "./security-error.js";
7
- import { UniSpecSemanticError } from "./semantic-error.js";
8
- /**
9
- * Error factory for creating specific error types.
10
- */
11
- export declare const ErrorFactory: {
12
- createSchemaError(message: string, path?: string, details?: Record<string, unknown>): UniSpecSchemaError;
13
- createSemanticError(message: string, path?: string, details?: Record<string, unknown>): UniSpecSemanticError;
14
- createReferenceError(message: string, path?: string, details?: Record<string, unknown>): UniSpecReferenceError;
15
- createConfigError(message: string, path?: string, details?: Record<string, unknown>): UniSpecConfigError;
16
- createSecurityError(message: string, path?: string, details?: Record<string, unknown>): UniSpecSecurityError;
17
- createLoaderError(message: string, path?: string, details?: Record<string, unknown>): UniSpecLoaderError;
18
- /**
19
- * Convert generic error to UniSpecValidationError
20
- */
21
- fromError(error: unknown, defaultCode?: string): UniSpecValidationError;
22
- };
@@ -1,45 +0,0 @@
1
- import { UniSpecValidationError } from "./base-error.js";
2
- import { UniSpecConfigError } from "./config-error.js";
3
- import { UniSpecLoaderError } from "./loader-error.js";
4
- import { UniSpecReferenceError } from "./reference-error.js";
5
- import { UniSpecSchemaError } from "./schema-error.js";
6
- import { UniSpecSecurityError } from "./security-error.js";
7
- import { UniSpecSemanticError } from "./semantic-error.js";
8
- /**
9
- * Error factory for creating specific error types.
10
- */
11
- export const ErrorFactory = {
12
- createSchemaError(message, path, details) {
13
- return new UniSpecSchemaError(message, path, details);
14
- },
15
- createSemanticError(message, path, details) {
16
- return new UniSpecSemanticError(message, path, details);
17
- },
18
- createReferenceError(message, path, details) {
19
- return new UniSpecReferenceError(message, path, details);
20
- },
21
- createConfigError(message, path, details) {
22
- return new UniSpecConfigError(message, path, details);
23
- },
24
- createSecurityError(message, path, details) {
25
- return new UniSpecSecurityError(message, path, details);
26
- },
27
- createLoaderError(message, path, details) {
28
- return new UniSpecLoaderError(message, path, details);
29
- },
30
- /**
31
- * Convert generic error to UniSpecValidationError
32
- */
33
- fromError(error, defaultCode = "validation_error") {
34
- if (error instanceof UniSpecValidationError) {
35
- return error;
36
- }
37
- if (error instanceof Error) {
38
- return new UniSpecValidationError(error.message, defaultCode, "", "error", { originalError: error.name, stack: error.stack });
39
- }
40
- if (typeof error === "string") {
41
- return new UniSpecValidationError(error, defaultCode);
42
- }
43
- return new UniSpecValidationError(`Unknown validation error: ${String(error)}`, defaultCode, "", "error", { originalError: error });
44
- },
45
- };
@@ -1,8 +0,0 @@
1
- export { UniSpecValidationError } from "./base-error.js";
2
- export { UniSpecConfigError } from "./config-error.js";
3
- export { ErrorFactory } from "./error-factory.js";
4
- export { UniSpecLoaderError } from "./loader-error.js";
5
- export { UniSpecReferenceError } from "./reference-error.js";
6
- export { UniSpecSchemaError } from "./schema-error.js";
7
- export { UniSpecSecurityError } from "./security-error.js";
8
- export { UniSpecSemanticError } from "./semantic-error.js";
@@ -1,8 +0,0 @@
1
- export { UniSpecValidationError } from "./base-error.js";
2
- export { UniSpecConfigError } from "./config-error.js";
3
- export { ErrorFactory } from "./error-factory.js";
4
- export { UniSpecLoaderError } from "./loader-error.js";
5
- export { UniSpecReferenceError } from "./reference-error.js";
6
- export { UniSpecSchemaError } from "./schema-error.js";
7
- export { UniSpecSecurityError } from "./security-error.js";
8
- export { UniSpecSemanticError } from "./semantic-error.js";
@@ -1,4 +0,0 @@
1
- import { UniSpecValidationError } from "./base-error.js";
2
- export declare class UniSpecLoaderError extends UniSpecValidationError {
3
- constructor(message: string, path?: string, details?: Record<string, unknown>);
4
- }
@@ -1,7 +0,0 @@
1
- import { UniSpecValidationError } from "./base-error.js";
2
- export class UniSpecLoaderError extends UniSpecValidationError {
3
- constructor(message, path = "", details) {
4
- super(message, "loader_error", path, "error", details);
5
- this.name = "UniSpecLoaderError";
6
- }
7
- }
@@ -1,4 +0,0 @@
1
- import { UniSpecValidationError } from "./base-error.js";
2
- export declare class UniSpecReferenceError extends UniSpecValidationError {
3
- constructor(message: string, path?: string, details?: Record<string, unknown>);
4
- }
@@ -1,7 +0,0 @@
1
- import { UniSpecValidationError } from "./base-error.js";
2
- export class UniSpecReferenceError extends UniSpecValidationError {
3
- constructor(message, path = "", details) {
4
- super(message, "reference_error", path, "error", details);
5
- this.name = "UniSpecReferenceError";
6
- }
7
- }
@@ -1,4 +0,0 @@
1
- import { UniSpecValidationError } from "./base-error.js";
2
- export declare class UniSpecSchemaError extends UniSpecValidationError {
3
- constructor(message: string, path?: string, details?: Record<string, unknown>);
4
- }
@@ -1,7 +0,0 @@
1
- import { UniSpecValidationError } from "./base-error.js";
2
- export class UniSpecSchemaError extends UniSpecValidationError {
3
- constructor(message, path = "", details) {
4
- super(message, "schema_error", path, "error", details);
5
- this.name = "UniSpecSchemaError";
6
- }
7
- }
@@ -1,4 +0,0 @@
1
- import { UniSpecValidationError } from "./base-error.js";
2
- export declare class UniSpecSecurityError extends UniSpecValidationError {
3
- constructor(message: string, path?: string, details?: Record<string, unknown>);
4
- }
@@ -1,7 +0,0 @@
1
- import { UniSpecValidationError } from "./base-error.js";
2
- export class UniSpecSecurityError extends UniSpecValidationError {
3
- constructor(message, path = "", details) {
4
- super(message, "security_error", path, "error", details);
5
- this.name = "UniSpecSecurityError";
6
- }
7
- }
@@ -1,4 +0,0 @@
1
- import { UniSpecValidationError } from "./base-error.js";
2
- export declare class UniSpecSemanticError extends UniSpecValidationError {
3
- constructor(message: string, path?: string, details?: Record<string, unknown>);
4
- }
@@ -1,7 +0,0 @@
1
- import { UniSpecValidationError } from "./base-error.js";
2
- export class UniSpecSemanticError extends UniSpecValidationError {
3
- constructor(message, path = "", details) {
4
- super(message, "semantic_error", path, "error", details);
5
- this.name = "UniSpecSemanticError";
6
- }
7
- }