@fougere/schema 0.6.0-alpha.0 → 0.7.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 (421) hide show
  1. package/README.md +5 -4
  2. package/dist/{schema/Schema.d.ts → Schema.d.ts} +17 -27
  3. package/dist/Schema.d.ts.map +1 -0
  4. package/dist/{schema/Schema.js → Schema.js} +21 -61
  5. package/dist/Schema.js.map +1 -0
  6. package/dist/SchemaDefinition.d.ts +73 -0
  7. package/dist/SchemaDefinition.d.ts.map +1 -0
  8. package/dist/SchemaDefinition.js +184 -0
  9. package/dist/SchemaDefinition.js.map +1 -0
  10. package/dist/SchemaDerivation.d.ts +16 -0
  11. package/dist/SchemaDerivation.d.ts.map +1 -0
  12. package/dist/SchemaDerivation.js +31 -0
  13. package/dist/SchemaDerivation.js.map +1 -0
  14. package/dist/{schema/SchemaView.d.ts → SchemaView.d.ts} +9 -9
  15. package/dist/SchemaView.d.ts.map +1 -0
  16. package/dist/{schema/SchemaView.js.map → SchemaView.js.map} +1 -1
  17. package/dist/{schema/axis → axis}/Axis.d.ts +2 -2
  18. package/dist/axis/Axis.d.ts.map +1 -0
  19. package/dist/axis/Axis.js.map +1 -0
  20. package/dist/axis/Meta.d.ts.map +1 -0
  21. package/dist/{schema/axis → axis}/Meta.js.map +1 -1
  22. package/dist/axis/boundary/Boundaries.d.ts +21 -0
  23. package/dist/axis/boundary/Boundaries.d.ts.map +1 -0
  24. package/dist/axis/boundary/Boundaries.js +25 -0
  25. package/dist/axis/boundary/Boundaries.js.map +1 -0
  26. package/dist/{schema/axis → axis}/boundary/Boundary.d.ts +3 -1
  27. package/dist/axis/boundary/Boundary.d.ts.map +1 -0
  28. package/dist/{schema/axis → axis}/boundary/Boundary.js +8 -6
  29. package/dist/axis/boundary/Boundary.js.map +1 -0
  30. package/dist/axis/boundary/BoundaryAxis.d.ts.map +1 -0
  31. package/dist/{schema/axis → axis}/boundary/BoundaryAxis.js +4 -4
  32. package/dist/axis/boundary/BoundaryAxis.js.map +1 -0
  33. package/dist/{schema/axis → axis}/lifecycle/Clock.d.ts +1 -1
  34. package/dist/axis/lifecycle/Clock.d.ts.map +1 -0
  35. package/dist/{schema/axis → axis}/lifecycle/Clock.js +1 -1
  36. package/dist/axis/lifecycle/Clock.js.map +1 -0
  37. package/dist/axis/lifecycle/Generators.d.ts +10 -0
  38. package/dist/axis/lifecycle/Generators.d.ts.map +1 -0
  39. package/dist/axis/lifecycle/Generators.js +20 -0
  40. package/dist/axis/lifecycle/Generators.js.map +1 -0
  41. package/dist/axis/lifecycle/Lifecycle.d.ts.map +1 -0
  42. package/dist/axis/lifecycle/Lifecycle.js.map +1 -0
  43. package/dist/axis/lifecycle/LifecycleAxis.d.ts.map +1 -0
  44. package/dist/{schema/axis → axis}/lifecycle/LifecycleAxis.js +11 -6
  45. package/dist/axis/lifecycle/LifecycleAxis.js.map +1 -0
  46. package/dist/axis/lifecycle/apply.d.ts +15 -0
  47. package/dist/axis/lifecycle/apply.d.ts.map +1 -0
  48. package/dist/axis/lifecycle/apply.js +50 -0
  49. package/dist/axis/lifecycle/apply.js.map +1 -0
  50. package/dist/{schema/axis → axis}/role/Relation.d.ts +3 -2
  51. package/dist/axis/role/Relation.d.ts.map +1 -0
  52. package/dist/{schema/axis → axis}/role/Relation.js +6 -5
  53. package/dist/axis/role/Relation.js.map +1 -0
  54. package/dist/{schema/axis → axis}/role/Role.d.ts +6 -6
  55. package/dist/axis/role/Role.d.ts.map +1 -0
  56. package/dist/axis/role/Role.js +36 -0
  57. package/dist/axis/role/Role.js.map +1 -0
  58. package/dist/{schema/axis → axis}/role/RoleAxis.d.ts +1 -1
  59. package/dist/axis/role/RoleAxis.d.ts.map +1 -0
  60. package/dist/{schema/axis → axis}/role/RoleAxis.js +28 -36
  61. package/dist/axis/role/RoleAxis.js.map +1 -0
  62. package/dist/axis/shape/Formats.d.ts +11 -0
  63. package/dist/axis/shape/Formats.d.ts.map +1 -0
  64. package/dist/axis/shape/Formats.js +9 -0
  65. package/dist/axis/shape/Formats.js.map +1 -0
  66. package/dist/{schema/axis → axis}/shape/Shape.d.ts +5 -3
  67. package/dist/axis/shape/Shape.d.ts.map +1 -0
  68. package/dist/{schema/axis → axis}/shape/Shape.js +13 -13
  69. package/dist/axis/shape/Shape.js.map +1 -0
  70. package/dist/entity/EntityAdapterSet.d.ts +22 -0
  71. package/dist/entity/EntityAdapterSet.d.ts.map +1 -0
  72. package/dist/entity/EntityAdapterSet.js +63 -0
  73. package/dist/entity/EntityAdapterSet.js.map +1 -0
  74. package/dist/entity/EntityAdapters.d.ts +1 -24
  75. package/dist/entity/EntityAdapters.d.ts.map +1 -1
  76. package/dist/entity/EntityAdapters.js +1 -74
  77. package/dist/entity/EntityAdapters.js.map +1 -1
  78. package/dist/entity/EntityDeclarations.d.ts +1 -1
  79. package/dist/entity/EntityDeclarations.d.ts.map +1 -1
  80. package/dist/entity.d.ts +7 -2
  81. package/dist/entity.d.ts.map +1 -1
  82. package/dist/entity.js +6 -1
  83. package/dist/entity.js.map +1 -1
  84. package/dist/{schema/fields → field}/Field.d.ts +2 -3
  85. package/dist/field/Field.d.ts.map +1 -0
  86. package/dist/field/Field.js +35 -0
  87. package/dist/field/Field.js.map +1 -0
  88. package/dist/field/FieldSet.d.ts +22 -0
  89. package/dist/field/FieldSet.d.ts.map +1 -0
  90. package/dist/field/FieldSet.js +58 -0
  91. package/dist/field/FieldSet.js.map +1 -0
  92. package/dist/index.d.ts +27 -30
  93. package/dist/index.d.ts.map +1 -1
  94. package/dist/index.js +20 -23
  95. package/dist/index.js.map +1 -1
  96. package/dist/lib/Registry.d.ts +12 -0
  97. package/dist/lib/Registry.d.ts.map +1 -0
  98. package/dist/lib/Registry.js +29 -0
  99. package/dist/lib/Registry.js.map +1 -0
  100. package/dist/lib/utils.d.ts.map +1 -0
  101. package/dist/lib/utils.js.map +1 -0
  102. package/dist/projection/Cases.d.ts +9 -20
  103. package/dist/projection/Cases.d.ts.map +1 -1
  104. package/dist/projection/Cases.js +44 -39
  105. package/dist/projection/Cases.js.map +1 -1
  106. package/dist/projection/Visibility.d.ts +2 -1
  107. package/dist/projection/Visibility.d.ts.map +1 -1
  108. package/dist/projection/Visibility.js +4 -3
  109. package/dist/projection/Visibility.js.map +1 -1
  110. package/dist/projection/card/Bundle.d.ts +1 -1
  111. package/dist/projection/card/Bundle.d.ts.map +1 -1
  112. package/dist/projection/card/Bundle.js +7 -7
  113. package/dist/projection/card/Bundle.js.map +1 -1
  114. package/dist/projection/card/Card.d.ts +7 -13
  115. package/dist/projection/card/Card.d.ts.map +1 -1
  116. package/dist/projection/card/Card.js +96 -69
  117. package/dist/projection/card/Card.js.map +1 -1
  118. package/dist/projection/card/Descriptor.d.ts +7 -7
  119. package/dist/projection/card/Descriptor.d.ts.map +1 -1
  120. package/dist/projection/card/admission.d.ts +15 -5
  121. package/dist/projection/card/admission.d.ts.map +1 -1
  122. package/dist/projection/card/admission.js +15 -5
  123. package/dist/projection/card/admission.js.map +1 -1
  124. package/dist/projection/card/diff.d.ts +2 -2
  125. package/dist/projection/card/diff.d.ts.map +1 -1
  126. package/dist/{judge/result.d.ts → validation.d.ts} +1 -1
  127. package/dist/validation.d.ts.map +1 -0
  128. package/dist/validation.js +2 -0
  129. package/dist/validation.js.map +1 -0
  130. package/dist/validator/AdapterFieldValidator.d.ts +14 -0
  131. package/dist/validator/AdapterFieldValidator.d.ts.map +1 -0
  132. package/dist/validator/AdapterFieldValidator.js +36 -0
  133. package/dist/validator/AdapterFieldValidator.js.map +1 -0
  134. package/dist/validator/FieldDeclarationValidator.d.ts +9 -0
  135. package/dist/validator/FieldDeclarationValidator.d.ts.map +1 -0
  136. package/dist/{judge/FieldJudge.js → validator/FieldDeclarationValidator.js} +8 -8
  137. package/dist/validator/FieldDeclarationValidator.js.map +1 -0
  138. package/dist/validator/FieldValueValidator.d.ts +13 -0
  139. package/dist/validator/FieldValueValidator.d.ts.map +1 -0
  140. package/dist/{judge/ValueJudge.js → validator/FieldValueValidator.js} +12 -11
  141. package/dist/validator/FieldValueValidator.js.map +1 -0
  142. package/dist/{judge/RowRefusal.d.ts → validator/InputRefusal.d.ts} +3 -4
  143. package/dist/validator/InputRefusal.d.ts.map +1 -0
  144. package/dist/{judge/RowRefusal.js → validator/InputRefusal.js} +3 -3
  145. package/dist/validator/InputRefusal.js.map +1 -0
  146. package/dist/validator/InputValidator.d.ts +15 -0
  147. package/dist/validator/InputValidator.d.ts.map +1 -0
  148. package/dist/{judge/RowJudge.js → validator/InputValidator.js} +24 -20
  149. package/dist/validator/InputValidator.js.map +1 -0
  150. package/dist/vocabulary/bool.d.ts +6 -1
  151. package/dist/vocabulary/bool.d.ts.map +1 -1
  152. package/dist/vocabulary/bool.js +6 -1
  153. package/dist/vocabulary/bool.js.map +1 -1
  154. package/dist/vocabulary/created.d.ts +6 -1
  155. package/dist/vocabulary/created.d.ts.map +1 -1
  156. package/dist/vocabulary/created.js +5 -0
  157. package/dist/vocabulary/created.js.map +1 -1
  158. package/dist/vocabulary/date.d.ts +6 -1
  159. package/dist/vocabulary/date.d.ts.map +1 -1
  160. package/dist/vocabulary/date.js +6 -1
  161. package/dist/vocabulary/date.js.map +1 -1
  162. package/dist/vocabulary/email.d.ts +6 -1
  163. package/dist/vocabulary/email.d.ts.map +1 -1
  164. package/dist/vocabulary/email.js +5 -0
  165. package/dist/vocabulary/email.js.map +1 -1
  166. package/dist/vocabulary/immutable.d.ts +6 -1
  167. package/dist/vocabulary/immutable.d.ts.map +1 -1
  168. package/dist/vocabulary/immutable.js +5 -0
  169. package/dist/vocabulary/immutable.js.map +1 -1
  170. package/dist/vocabulary/indexed.d.ts +6 -1
  171. package/dist/vocabulary/indexed.d.ts.map +1 -1
  172. package/dist/vocabulary/indexed.js +5 -0
  173. package/dist/vocabulary/indexed.js.map +1 -1
  174. package/dist/vocabulary/json.d.ts +2 -2
  175. package/dist/vocabulary/json.d.ts.map +1 -1
  176. package/dist/vocabulary/json.js +9 -4
  177. package/dist/vocabulary/json.js.map +1 -1
  178. package/dist/vocabulary/list.d.ts +6 -1
  179. package/dist/vocabulary/list.d.ts.map +1 -1
  180. package/dist/vocabulary/list.js +6 -1
  181. package/dist/vocabulary/list.js.map +1 -1
  182. package/dist/vocabulary/many.d.ts +7 -2
  183. package/dist/vocabulary/many.d.ts.map +1 -1
  184. package/dist/vocabulary/many.js +7 -2
  185. package/dist/vocabulary/many.js.map +1 -1
  186. package/dist/vocabulary/nullable.d.ts +6 -1
  187. package/dist/vocabulary/nullable.d.ts.map +1 -1
  188. package/dist/vocabulary/nullable.js +7 -2
  189. package/dist/vocabulary/nullable.js.map +1 -1
  190. package/dist/vocabulary/number.d.ts +6 -1
  191. package/dist/vocabulary/number.d.ts.map +1 -1
  192. package/dist/vocabulary/number.js +6 -1
  193. package/dist/vocabulary/number.js.map +1 -1
  194. package/dist/vocabulary/oneOf.d.ts +1 -1
  195. package/dist/vocabulary/oneOf.d.ts.map +1 -1
  196. package/dist/vocabulary/oneOf.js +6 -1
  197. package/dist/vocabulary/oneOf.js.map +1 -1
  198. package/dist/vocabulary/optional.d.ts +6 -1
  199. package/dist/vocabulary/optional.d.ts.map +1 -1
  200. package/dist/vocabulary/optional.js +7 -2
  201. package/dist/vocabulary/optional.js.map +1 -1
  202. package/dist/vocabulary/primary.d.ts +2 -2
  203. package/dist/vocabulary/primary.d.ts.map +1 -1
  204. package/dist/vocabulary/primary.js +7 -2
  205. package/dist/vocabulary/primary.js.map +1 -1
  206. package/dist/vocabulary/readOnly.d.ts +6 -1
  207. package/dist/vocabulary/readOnly.d.ts.map +1 -1
  208. package/dist/vocabulary/readOnly.js +6 -1
  209. package/dist/vocabulary/readOnly.js.map +1 -1
  210. package/dist/vocabulary/ref.d.ts +7 -2
  211. package/dist/vocabulary/ref.d.ts.map +1 -1
  212. package/dist/vocabulary/ref.js +7 -2
  213. package/dist/vocabulary/ref.js.map +1 -1
  214. package/dist/vocabulary/text.d.ts +7 -2
  215. package/dist/vocabulary/text.d.ts.map +1 -1
  216. package/dist/vocabulary/text.js +6 -1
  217. package/dist/vocabulary/text.js.map +1 -1
  218. package/dist/vocabulary/unique.d.ts +6 -1
  219. package/dist/vocabulary/unique.d.ts.map +1 -1
  220. package/dist/vocabulary/unique.js +7 -3
  221. package/dist/vocabulary/unique.js.map +1 -1
  222. package/dist/vocabulary/updated.d.ts +6 -1
  223. package/dist/vocabulary/updated.d.ts.map +1 -1
  224. package/dist/vocabulary/updated.js +5 -0
  225. package/dist/vocabulary/updated.js.map +1 -1
  226. package/dist/vocabulary/url.d.ts +6 -1
  227. package/dist/vocabulary/url.d.ts.map +1 -1
  228. package/dist/vocabulary/url.js +5 -0
  229. package/dist/vocabulary/url.js.map +1 -1
  230. package/dist/vocabulary/vocabulary.d.ts +6 -1
  231. package/dist/vocabulary/vocabulary.d.ts.map +1 -1
  232. package/dist/vocabulary/vocabulary.js +22 -12
  233. package/dist/vocabulary/vocabulary.js.map +1 -1
  234. package/dist/vocabulary/writeOnly.d.ts +6 -1
  235. package/dist/vocabulary/writeOnly.d.ts.map +1 -1
  236. package/dist/vocabulary/writeOnly.js +6 -1
  237. package/dist/vocabulary/writeOnly.js.map +1 -1
  238. package/package.json +1 -1
  239. package/src/{schema/Schema.ts → Schema.ts} +31 -74
  240. package/src/SchemaDefinition.ts +257 -0
  241. package/src/SchemaDerivation.ts +44 -0
  242. package/src/{schema/SchemaView.ts → SchemaView.ts} +9 -9
  243. package/src/{schema/axis → axis}/Axis.ts +2 -2
  244. package/src/axis/boundary/Boundaries.ts +37 -0
  245. package/src/{schema/axis → axis}/boundary/Boundary.ts +9 -7
  246. package/src/{schema/axis → axis}/boundary/BoundaryAxis.ts +4 -4
  247. package/src/{schema/axis → axis}/lifecycle/Clock.ts +1 -1
  248. package/src/axis/lifecycle/Generators.ts +29 -0
  249. package/src/{schema/axis → axis}/lifecycle/LifecycleAxis.ts +12 -7
  250. package/src/axis/lifecycle/apply.ts +53 -0
  251. package/src/{schema/axis → axis}/role/Relation.ts +6 -5
  252. package/src/axis/role/Role.ts +52 -0
  253. package/src/{schema/axis → axis}/role/RoleAxis.ts +28 -40
  254. package/src/axis/shape/Formats.ts +20 -0
  255. package/src/{schema/axis → axis}/shape/Shape.ts +18 -18
  256. package/src/entity/EntityAdapterSet.ts +81 -0
  257. package/src/entity/EntityAdapters.ts +4 -96
  258. package/src/entity/EntityDeclarations.ts +1 -1
  259. package/src/entity.ts +7 -2
  260. package/src/{schema/fields → field}/Field.ts +8 -26
  261. package/src/field/FieldSet.ts +75 -0
  262. package/src/index.ts +29 -44
  263. package/src/lib/Registry.ts +37 -0
  264. package/src/projection/Cases.ts +56 -55
  265. package/src/projection/Visibility.ts +5 -4
  266. package/src/projection/card/Bundle.ts +9 -9
  267. package/src/projection/card/Card.ts +101 -74
  268. package/src/projection/card/Descriptor.ts +7 -7
  269. package/src/projection/card/admission.ts +16 -6
  270. package/src/projection/card/diff.ts +2 -2
  271. package/src/validator/AdapterFieldValidator.ts +40 -0
  272. package/src/{judge/FieldJudge.ts → validator/FieldDeclarationValidator.ts} +10 -10
  273. package/src/{judge/ValueJudge.ts → validator/FieldValueValidator.ts} +14 -13
  274. package/src/{judge/RowRefusal.ts → validator/InputRefusal.ts} +2 -4
  275. package/src/{judge/RowJudge.ts → validator/InputValidator.ts} +30 -23
  276. package/src/vocabulary/bool.ts +6 -1
  277. package/src/vocabulary/created.ts +6 -1
  278. package/src/vocabulary/date.ts +6 -1
  279. package/src/vocabulary/email.ts +6 -1
  280. package/src/vocabulary/immutable.ts +6 -1
  281. package/src/vocabulary/indexed.ts +6 -1
  282. package/src/vocabulary/json.ts +10 -5
  283. package/src/vocabulary/list.ts +6 -1
  284. package/src/vocabulary/many.ts +7 -2
  285. package/src/vocabulary/nullable.ts +8 -3
  286. package/src/vocabulary/number.ts +6 -1
  287. package/src/vocabulary/oneOf.ts +6 -1
  288. package/src/vocabulary/optional.ts +8 -3
  289. package/src/vocabulary/primary.ts +7 -2
  290. package/src/vocabulary/readOnly.ts +7 -2
  291. package/src/vocabulary/ref.ts +7 -2
  292. package/src/vocabulary/text.ts +7 -2
  293. package/src/vocabulary/unique.ts +8 -4
  294. package/src/vocabulary/updated.ts +6 -1
  295. package/src/vocabulary/url.ts +6 -1
  296. package/src/vocabulary/vocabulary.ts +22 -12
  297. package/src/vocabulary/writeOnly.ts +7 -2
  298. package/dist/judge/FieldJudge.d.ts +0 -9
  299. package/dist/judge/FieldJudge.d.ts.map +0 -1
  300. package/dist/judge/FieldJudge.js.map +0 -1
  301. package/dist/judge/RowJudge.d.ts +0 -12
  302. package/dist/judge/RowJudge.d.ts.map +0 -1
  303. package/dist/judge/RowJudge.js.map +0 -1
  304. package/dist/judge/RowRefusal.d.ts.map +0 -1
  305. package/dist/judge/RowRefusal.js.map +0 -1
  306. package/dist/judge/ValueJudge.d.ts +0 -12
  307. package/dist/judge/ValueJudge.d.ts.map +0 -1
  308. package/dist/judge/ValueJudge.js.map +0 -1
  309. package/dist/judge/options.d.ts +0 -4
  310. package/dist/judge/options.d.ts.map +0 -1
  311. package/dist/judge/options.js +0 -2
  312. package/dist/judge/options.js.map +0 -1
  313. package/dist/judge/result.d.ts.map +0 -1
  314. package/dist/judge/result.js +0 -2
  315. package/dist/judge/result.js.map +0 -1
  316. package/dist/projection/SchemaOrCard.d.ts +0 -7
  317. package/dist/projection/SchemaOrCard.d.ts.map +0 -1
  318. package/dist/projection/SchemaOrCard.js +0 -11
  319. package/dist/projection/SchemaOrCard.js.map +0 -1
  320. package/dist/projection/card/EntityTypeSource.d.ts +0 -12
  321. package/dist/projection/card/EntityTypeSource.d.ts.map +0 -1
  322. package/dist/projection/card/EntityTypeSource.js +0 -78
  323. package/dist/projection/card/EntityTypeSource.js.map +0 -1
  324. package/dist/projection/card/FacadeTypeSource.d.ts +0 -19
  325. package/dist/projection/card/FacadeTypeSource.d.ts.map +0 -1
  326. package/dist/projection/card/FacadeTypeSource.js +0 -40
  327. package/dist/projection/card/FacadeTypeSource.js.map +0 -1
  328. package/dist/schema/Schema.d.ts.map +0 -1
  329. package/dist/schema/Schema.js.map +0 -1
  330. package/dist/schema/SchemaDefinition.d.ts +0 -60
  331. package/dist/schema/SchemaDefinition.d.ts.map +0 -1
  332. package/dist/schema/SchemaDefinition.js +0 -85
  333. package/dist/schema/SchemaDefinition.js.map +0 -1
  334. package/dist/schema/SchemaDerivation.d.ts +0 -34
  335. package/dist/schema/SchemaDerivation.d.ts.map +0 -1
  336. package/dist/schema/SchemaDerivation.js +0 -51
  337. package/dist/schema/SchemaDerivation.js.map +0 -1
  338. package/dist/schema/SchemaView.d.ts.map +0 -1
  339. package/dist/schema/axis/Axis.d.ts.map +0 -1
  340. package/dist/schema/axis/Axis.js.map +0 -1
  341. package/dist/schema/axis/Meta.d.ts.map +0 -1
  342. package/dist/schema/axis/boundary/Boundaries.d.ts +0 -20
  343. package/dist/schema/axis/boundary/Boundaries.d.ts.map +0 -1
  344. package/dist/schema/axis/boundary/Boundaries.js +0 -31
  345. package/dist/schema/axis/boundary/Boundaries.js.map +0 -1
  346. package/dist/schema/axis/boundary/Boundary.d.ts.map +0 -1
  347. package/dist/schema/axis/boundary/Boundary.js.map +0 -1
  348. package/dist/schema/axis/boundary/BoundaryAxis.d.ts.map +0 -1
  349. package/dist/schema/axis/boundary/BoundaryAxis.js.map +0 -1
  350. package/dist/schema/axis/lifecycle/Clock.d.ts.map +0 -1
  351. package/dist/schema/axis/lifecycle/Clock.js.map +0 -1
  352. package/dist/schema/axis/lifecycle/Generators.d.ts +0 -18
  353. package/dist/schema/axis/lifecycle/Generators.d.ts.map +0 -1
  354. package/dist/schema/axis/lifecycle/Generators.js +0 -38
  355. package/dist/schema/axis/lifecycle/Generators.js.map +0 -1
  356. package/dist/schema/axis/lifecycle/Lifecycle.d.ts.map +0 -1
  357. package/dist/schema/axis/lifecycle/Lifecycle.js.map +0 -1
  358. package/dist/schema/axis/lifecycle/LifecycleAxis.d.ts.map +0 -1
  359. package/dist/schema/axis/lifecycle/LifecycleAxis.js.map +0 -1
  360. package/dist/schema/axis/lifecycle/apply.d.ts +0 -6
  361. package/dist/schema/axis/lifecycle/apply.d.ts.map +0 -1
  362. package/dist/schema/axis/lifecycle/apply.js +0 -34
  363. package/dist/schema/axis/lifecycle/apply.js.map +0 -1
  364. package/dist/schema/axis/role/Relation.d.ts.map +0 -1
  365. package/dist/schema/axis/role/Relation.js.map +0 -1
  366. package/dist/schema/axis/role/Role.d.ts.map +0 -1
  367. package/dist/schema/axis/role/Role.js +0 -40
  368. package/dist/schema/axis/role/Role.js.map +0 -1
  369. package/dist/schema/axis/role/RoleAxis.d.ts.map +0 -1
  370. package/dist/schema/axis/role/RoleAxis.js.map +0 -1
  371. package/dist/schema/axis/shape/Formats.d.ts +0 -8
  372. package/dist/schema/axis/shape/Formats.d.ts.map +0 -1
  373. package/dist/schema/axis/shape/Formats.js +0 -10
  374. package/dist/schema/axis/shape/Formats.js.map +0 -1
  375. package/dist/schema/axis/shape/Shape.d.ts.map +0 -1
  376. package/dist/schema/axis/shape/Shape.js.map +0 -1
  377. package/dist/schema/fields/Field.d.ts.map +0 -1
  378. package/dist/schema/fields/Field.js +0 -52
  379. package/dist/schema/fields/Field.js.map +0 -1
  380. package/dist/schema/fields/FieldSet.d.ts +0 -28
  381. package/dist/schema/fields/FieldSet.d.ts.map +0 -1
  382. package/dist/schema/fields/FieldSet.js +0 -55
  383. package/dist/schema/fields/FieldSet.js.map +0 -1
  384. package/dist/schema/fields/constraint/FieldGroup.d.ts +0 -21
  385. package/dist/schema/fields/constraint/FieldGroup.d.ts.map +0 -1
  386. package/dist/schema/fields/constraint/FieldGroup.js +0 -65
  387. package/dist/schema/fields/constraint/FieldGroup.js.map +0 -1
  388. package/dist/schema/fields/constraint/Unique.d.ts +0 -4
  389. package/dist/schema/fields/constraint/Unique.d.ts.map +0 -1
  390. package/dist/schema/fields/constraint/Unique.js +0 -4
  391. package/dist/schema/fields/constraint/Unique.js.map +0 -1
  392. package/dist/utils.d.ts.map +0 -1
  393. package/dist/utils.js.map +0 -1
  394. package/src/judge/options.ts +0 -3
  395. package/src/projection/SchemaOrCard.ts +0 -18
  396. package/src/projection/card/EntityTypeSource.ts +0 -90
  397. package/src/projection/card/FacadeTypeSource.ts +0 -55
  398. package/src/schema/SchemaDefinition.ts +0 -150
  399. package/src/schema/SchemaDerivation.ts +0 -65
  400. package/src/schema/axis/boundary/Boundaries.ts +0 -44
  401. package/src/schema/axis/lifecycle/Generators.ts +0 -46
  402. package/src/schema/axis/lifecycle/apply.ts +0 -39
  403. package/src/schema/axis/role/Role.ts +0 -56
  404. package/src/schema/axis/shape/Formats.ts +0 -22
  405. package/src/schema/fields/FieldSet.ts +0 -63
  406. package/src/schema/fields/constraint/FieldGroup.ts +0 -84
  407. package/src/schema/fields/constraint/Unique.ts +0 -3
  408. /package/dist/{schema/SchemaView.js → SchemaView.js} +0 -0
  409. /package/dist/{schema/axis → axis}/Axis.js +0 -0
  410. /package/dist/{schema/axis → axis}/Meta.d.ts +0 -0
  411. /package/dist/{schema/axis → axis}/Meta.js +0 -0
  412. /package/dist/{schema/axis → axis}/boundary/BoundaryAxis.d.ts +0 -0
  413. /package/dist/{schema/axis → axis}/lifecycle/Lifecycle.d.ts +0 -0
  414. /package/dist/{schema/axis → axis}/lifecycle/Lifecycle.js +0 -0
  415. /package/dist/{schema/axis → axis}/lifecycle/LifecycleAxis.d.ts +0 -0
  416. /package/dist/{utils.d.ts → lib/utils.d.ts} +0 -0
  417. /package/dist/{utils.js → lib/utils.js} +0 -0
  418. /package/src/{schema/axis → axis}/Meta.ts +0 -0
  419. /package/src/{schema/axis → axis}/lifecycle/Lifecycle.ts +0 -0
  420. /package/src/{utils.ts → lib/utils.ts} +0 -0
  421. /package/src/{judge/result.ts → validation.ts} +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FieldSet.d.ts","sourceRoot":"","sources":["../../src/field/FieldSet.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AACvE,OAAO,EAAS,KAAK,SAAS,EAAE,KAAK,MAAM,EAAE,MAAM,YAAY,CAAC;AAEhE,qBAAa,QAAQ,CAAC,OAAO,SAAS,MAAM,GAAG,MAAM;IAC/B,OAAO,CAAC,QAAQ,CAAC,MAAM;IAA3C,OAAO,eAAiD;IAExD,MAAM,CAAC,EAAE,CAAC,OAAO,SAAS,MAAM,EAAE,MAAM,EAAE,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC,CAEpE;IAED;;;;;OAKG;IACH,MAAM,CAAC,SAAS,CAAC,OAAO,SAAS,MAAM,EACrC,QAAQ,EAAE,OAAO,EACjB,MAAM,CAAC,EAAE,eAAe,CAAC,OAAO,CAAC,GAChC;QAAE,MAAM,EAAE,OAAO,CAAC;QAAC,MAAM,EAAE,eAAe,CAAC,OAAO,CAAC,GAAG,SAAS,CAAA;KAAE,CA0BnE;IAED,0FAA0F;IAC1F,IAAI,OAAO,IAAI,SAAS,CAAC,OAAO,CAAC,GAAG,SAAS,CAa5C;CAEF;AAED,qFAAqF;AACrF,wBAAgB,YAAY,CAC1B,MAAM,EAAE,SAAS,CAAC,SAAS,MAAM,EAAE,CAAC,EAAE,GACrC,SAAS,CAAC,SAAS,MAAM,EAAE,CAAC,EAAE,GAAG,SAAS,CAK5C"}
@@ -0,0 +1,58 @@
1
+ import { Role } from '../axis/role/Role.js';
2
+ import { Field } from './Field.js';
3
+ export class FieldSet {
4
+ fields;
5
+ constructor(fields) {
6
+ this.fields = fields;
7
+ }
8
+ static of(fields) {
9
+ return new FieldSet(fields);
10
+ }
11
+ /**
12
+ * So a declared unique lands where it belongs: on the field, or on the schema.
13
+ * FR : pour qu'une unicité déclarée atterrisse sur le champ ou sur le schéma.
14
+ * `declaring(fields, [['email'], ['listId', 'docId']])`
15
+ * → `email` carries `role.unique`, the pair becomes a schema constraint
16
+ */
17
+ static declaring(declared, unique) {
18
+ const fields = {};
19
+ for (const [key, field] of Object.entries(declared))
20
+ fields[key] = new Field(field, key);
21
+ const composite = [];
22
+ for (const group of unique ?? []) {
23
+ const missing = group.filter((key) => !(key in fields));
24
+ if (missing.length)
25
+ throw new Error(`unique: [${group.join(', ')}] names ` +
26
+ `${missing.map((key) => `'${key}'`).join(', ')}, which the entity does not declare.`);
27
+ if (group.length === 1) {
28
+ const key = group[0];
29
+ fields[key] = fields[key].with({ role: { ...fields[key].role, unique: true } });
30
+ continue;
31
+ }
32
+ composite.push([...group]);
33
+ }
34
+ return {
35
+ fields: fields,
36
+ unique: deduplicated(composite),
37
+ };
38
+ }
39
+ /** A second `primary` is refused, naming both, rather than the first winning silently. */
40
+ get primary() {
41
+ const primaries = Object.entries(this.fields)
42
+ .filter(([, field]) => Role.of(field).isPrimary)
43
+ .map(([name]) => name);
44
+ if (primaries.length > 1) {
45
+ throw new Error(`FieldSet.primary: ${primaries.map((name) => JSON.stringify(name)).join(', ')} all declare ` +
46
+ '`primary`; a field set can have only one primary field.');
47
+ }
48
+ return primaries[0];
49
+ }
50
+ }
51
+ /** The order is part of a group: `['a','b']` and `['b','a']` are two constraints. */
52
+ export function deduplicated(groups) {
53
+ const seen = new Map();
54
+ for (const group of groups)
55
+ seen.set(JSON.stringify(group), group);
56
+ return seen.size ? [...seen.values()] : undefined;
57
+ }
58
+ //# sourceMappingURL=FieldSet.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FieldSet.js","sourceRoot":"","sources":["../../src/field/FieldSet.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -1,25 +1,23 @@
1
- export { Field, type Fields } from './schema/fields/Field.js';
2
- export { FieldSet } from './schema/fields/FieldSet.js';
3
- export { type Shape, Anatomy } from './schema/axis/shape/Shape.js';
4
- export { type StringFormat, type FormatPredicate, Formats, } from './schema/axis/shape/Formats.js';
5
- export { Role, type RoleRules } from './schema/axis/role/Role.js';
6
- export { type Relation, type EntityConstructor } from './schema/axis/role/Relation.js';
7
- export { Lifecycle, type LifecycleRules } from './schema/axis/lifecycle/Lifecycle.js';
8
- export { type GeneratorRef, Generators } from './schema/axis/lifecycle/Generators.js';
9
- export { Clock } from './schema/axis/lifecycle/Clock.js';
10
- export { Boundary, type BoundaryRules, type BoundaryRef, } from './schema/axis/boundary/Boundary.js';
11
- export { type Decoder, type Encoder, Boundaries } from './schema/axis/boundary/Boundaries.js';
12
- export { type Meta } from './schema/axis/Meta.js';
13
- export { FieldGroup } from './schema/fields/constraint/FieldGroup.js';
14
- export { Unique } from './schema/fields/constraint/Unique.js';
15
- export { Schema, ANONYMOUS_SCHEMA_NAME, type SchemaConstructor, } from './schema/Schema.js';
16
- export { SchemaDerivation } from './schema/SchemaDerivation.js';
17
- export { Cases, type Case } from './projection/Cases.js';
18
- export { RowRefusal } from './judge/RowRefusal.js';
19
- export { type SchemaView, type Row, type PartialRow } from './schema/SchemaView.js';
20
- export { type FougereEntityAdapters, type EntityAdapters } from './entity/EntityAdapters.js';
1
+ export { Field, type Fields } from './field/Field.js';
2
+ export { FieldSet } from './field/FieldSet.js';
3
+ export { type Shape, Shapes } from './axis/shape/Shape.js';
4
+ export { type StringFormat, type FormatPredicate, Formats, } from './axis/shape/Formats.js';
5
+ export { Role, type RoleRules } from './axis/role/Role.js';
6
+ export { type Relation, type EntityConstructor } from './axis/role/Relation.js';
7
+ export { Lifecycle, type LifecycleRules } from './axis/lifecycle/Lifecycle.js';
8
+ export { type GeneratorRef, Generators } from './axis/lifecycle/Generators.js';
9
+ export { Clock } from './axis/lifecycle/Clock.js';
10
+ export { Boundary, type BoundaryRules, type BoundaryRef, } from './axis/boundary/Boundary.js';
11
+ export { type Decoder, type Encoder, Boundaries } from './axis/boundary/Boundaries.js';
12
+ export { type Meta } from './axis/Meta.js';
13
+ export { Schema, ANONYMOUS_SCHEMA_NAME, type SchemaConstructor } from './Schema.js';
14
+ export { SchemaDerivation } from './SchemaDerivation.js';
15
+ export { Cases, type ValidationCase } from './projection/Cases.js';
16
+ export { InputRefusal } from './validator/InputRefusal.js';
17
+ export { type SchemaView, type Values, type PartialValues } from './SchemaView.js';
18
+ export { type FougereEntityAdapters, type EntityAdapters, } from './entity/EntityAdapters.js';
21
19
  export { type EntityDeclarations, type CompositeUnique, type PreviousNames, } from './entity/EntityDeclarations.js';
22
- export { lowerFirst, upperFirst, isObject } from './utils.js';
20
+ export { lowerFirst, upperFirst, isObject } from './lib/utils.js';
23
21
  export { primary } from './vocabulary/primary.js';
24
22
  export { text } from './vocabulary/text.js';
25
23
  export { email } from './vocabulary/email.js';
@@ -41,20 +39,19 @@ export { indexed } from './vocabulary/indexed.js';
41
39
  export { readOnly } from './vocabulary/readOnly.js';
42
40
  export { writeOnly } from './vocabulary/writeOnly.js';
43
41
  export { json } from './vocabulary/json.js';
44
- export { applyCreate, applyUpdate } from './schema/axis/lifecycle/apply.js';
42
+ export { applyCreate, applyUpdate } from './axis/lifecycle/apply.js';
45
43
  export { Visibility } from './projection/Visibility.js';
46
44
  export { Card } from './projection/card/Card.js';
47
45
  export { Bundle } from './projection/card/Bundle.js';
48
46
  export type { Change, Diff, DiffOptions, SetDiff, SetDiffOptions, RenameCandidate, TypeSet, } from './projection/card/diff.js';
49
- export { EntityTypeSource, type EntityTypeSourceOptions, } from './projection/card/EntityTypeSource.js';
50
- export { FacadeTypeSource, type FacadeTypeSourceOptions, type OpDescriptor, } from './projection/card/FacadeTypeSource.js';
51
47
  export { type SchemaBundle, type SchemaDescriptor, type FieldDescriptor, type FieldExtension, type RoleDescriptor, type RelationDescriptor, } from './projection/card/Descriptor.js';
52
- export { type SchemaOrCard, schemaOf, fieldsOf } from './projection/SchemaOrCard.js';
53
48
  export type { StandardSchemaV1 } from './projection/standard.js';
54
49
  export { entity } from './entity.js';
55
- export { FieldJudge } from './judge/FieldJudge.js';
56
- export { ValueJudge } from './judge/ValueJudge.js';
57
- export { RowJudge } from './judge/RowJudge.js';
58
- export { type ValidateOptions } from './judge/options.js';
59
- export { type ValidationError, type ValidationResult, type Checked, } from './judge/result.js';
50
+ export { FieldDeclarationValidator } from './validator/FieldDeclarationValidator.js';
51
+ export { FieldValueValidator } from './validator/FieldValueValidator.js';
52
+ export { InputValidator } from './validator/InputValidator.js';
53
+ export { AdapterFieldValidator } from './validator/AdapterFieldValidator.js';
54
+ export { Registry } from './lib/Registry.js';
55
+ export { type ValidateOptions } from './validator/InputValidator.js';
56
+ export { type ValidationError, type ValidationResult, type Checked } from './validation.js';
60
57
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -1,20 +1,18 @@
1
- export { Field } from './schema/fields/Field.js';
2
- export { FieldSet } from './schema/fields/FieldSet.js';
3
- export { Anatomy } from './schema/axis/shape/Shape.js';
4
- export { Formats, } from './schema/axis/shape/Formats.js';
5
- export { Role } from './schema/axis/role/Role.js';
6
- export { Lifecycle } from './schema/axis/lifecycle/Lifecycle.js';
7
- export { Generators } from './schema/axis/lifecycle/Generators.js';
8
- export { Clock } from './schema/axis/lifecycle/Clock.js';
9
- export { Boundary, } from './schema/axis/boundary/Boundary.js';
10
- export { Boundaries } from './schema/axis/boundary/Boundaries.js';
11
- export { FieldGroup } from './schema/fields/constraint/FieldGroup.js';
12
- export { Unique } from './schema/fields/constraint/Unique.js';
13
- export { Schema, ANONYMOUS_SCHEMA_NAME, } from './schema/Schema.js';
14
- export { SchemaDerivation } from './schema/SchemaDerivation.js';
1
+ export { Field } from './field/Field.js';
2
+ export { FieldSet } from './field/FieldSet.js';
3
+ export { Shapes } from './axis/shape/Shape.js';
4
+ export { Formats, } from './axis/shape/Formats.js';
5
+ export { Role } from './axis/role/Role.js';
6
+ export { Lifecycle } from './axis/lifecycle/Lifecycle.js';
7
+ export { Generators } from './axis/lifecycle/Generators.js';
8
+ export { Clock } from './axis/lifecycle/Clock.js';
9
+ export { Boundary, } from './axis/boundary/Boundary.js';
10
+ export { Boundaries } from './axis/boundary/Boundaries.js';
11
+ export { Schema, ANONYMOUS_SCHEMA_NAME } from './Schema.js';
12
+ export { SchemaDerivation } from './SchemaDerivation.js';
15
13
  export { Cases } from './projection/Cases.js';
16
- export { RowRefusal } from './judge/RowRefusal.js';
17
- export { lowerFirst, upperFirst, isObject } from './utils.js';
14
+ export { InputRefusal } from './validator/InputRefusal.js';
15
+ export { lowerFirst, upperFirst, isObject } from './lib/utils.js';
18
16
  export { primary } from './vocabulary/primary.js';
19
17
  export { text } from './vocabulary/text.js';
20
18
  export { email } from './vocabulary/email.js';
@@ -36,15 +34,14 @@ export { indexed } from './vocabulary/indexed.js';
36
34
  export { readOnly } from './vocabulary/readOnly.js';
37
35
  export { writeOnly } from './vocabulary/writeOnly.js';
38
36
  export { json } from './vocabulary/json.js';
39
- export { applyCreate, applyUpdate } from './schema/axis/lifecycle/apply.js';
37
+ export { applyCreate, applyUpdate } from './axis/lifecycle/apply.js';
40
38
  export { Visibility } from './projection/Visibility.js';
41
39
  export { Card } from './projection/card/Card.js';
42
40
  export { Bundle } from './projection/card/Bundle.js';
43
- export { EntityTypeSource, } from './projection/card/EntityTypeSource.js';
44
- export { FacadeTypeSource, } from './projection/card/FacadeTypeSource.js';
45
- export { schemaOf, fieldsOf } from './projection/SchemaOrCard.js';
46
41
  export { entity } from './entity.js';
47
- export { FieldJudge } from './judge/FieldJudge.js';
48
- export { ValueJudge } from './judge/ValueJudge.js';
49
- export { RowJudge } from './judge/RowJudge.js';
42
+ export { FieldDeclarationValidator } from './validator/FieldDeclarationValidator.js';
43
+ export { FieldValueValidator } from './validator/FieldValueValidator.js';
44
+ export { InputValidator } from './validator/InputValidator.js';
45
+ export { AdapterFieldValidator } from './validator/AdapterFieldValidator.js';
46
+ export { Registry } from './lib/Registry.js';
50
47
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ export declare class Registry<T> {
2
+ private readonly label;
3
+ private readonly hint?;
4
+ private readonly entries;
5
+ /** `Unknown boundary decoder 'celsius' — call Boundaries.decoders.register(name, fn).` */
6
+ constructor(label: string, hint?: string | undefined, builtins?: Iterable<readonly [string, T]>);
7
+ register(name: string, value: T): T;
8
+ find(name: string): T | undefined;
9
+ resolve(name: string, path?: string): T;
10
+ private get names();
11
+ }
12
+ //# sourceMappingURL=Registry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Registry.d.ts","sourceRoot":"","sources":["../../src/lib/Registry.ts"],"names":[],"mappings":"AAAA,qBAAa,QAAQ,CAAC,CAAC;IAKnB,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC;IALxB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAiB;IAEzC,0FAA0F;IAC1F,YACmB,KAAK,EAAE,MAAM,EACb,IAAI,CAAC,EAAE,MAAM,YAAA,EAC9B,QAAQ,CAAC,EAAE,QAAQ,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAG1C;IAED,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC,CAIlC;IAED,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,CAAC,GAAG,SAAS,CAEhC;IAED,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,CAAC,CAStC;IAED,OAAO,KAAK,KAAK,GAEhB;CACF"}
@@ -0,0 +1,29 @@
1
+ export class Registry {
2
+ label;
3
+ hint;
4
+ entries;
5
+ /** `Unknown boundary decoder 'celsius' — call Boundaries.decoders.register(name, fn).` */
6
+ constructor(label, hint, builtins) {
7
+ this.label = label;
8
+ this.hint = hint;
9
+ this.entries = new Map(builtins);
10
+ }
11
+ register(name, value) {
12
+ this.entries.set(name, value);
13
+ return value;
14
+ }
15
+ find(name) {
16
+ return this.entries.get(name);
17
+ }
18
+ resolve(name, path) {
19
+ const found = this.find(name);
20
+ if (found !== undefined)
21
+ return found;
22
+ throw new Error(`${path ? `${path}: ` : ''}Unknown ${this.label} '${name}'${this.hint ? ` — ${this.hint}` : ''}. ` +
23
+ `This process answers ${this.names.join(', ') || 'nothing yet'}.`);
24
+ }
25
+ get names() {
26
+ return [...this.entries.keys()];
27
+ }
28
+ }
29
+ //# sourceMappingURL=Registry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Registry.js","sourceRoot":"","sources":["../../src/lib/Registry.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,QAAQ;IAKA,KAAK;IACL,IAAI;IALN,OAAO,CAAiB;IAEzC,0FAA0F;IAC1F,YACmB,KAAa,EACb,IAAa,EAC9B,QAAyC;qBAFxB,KAAK;oBACL,IAAI;QAGrB,IAAI,CAAC,OAAO,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAC;IACnC,CAAC;IAED,QAAQ,CAAC,IAAY,EAAE,KAAQ;QAC7B,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QAE9B,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,CAAC,IAAY;QACf,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAChC,CAAC;IAED,OAAO,CAAC,IAAY,EAAE,IAAa;QACjC,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAE9B,IAAI,KAAK,KAAK,SAAS;YAAE,OAAO,KAAK,CAAC;QAEtC,MAAM,IAAI,KAAK,CACb,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,WAAW,IAAI,CAAC,KAAK,KAAK,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI;YAChG,wBAAwB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,aAAa,GAAG,CACpE,CAAC;IACJ,CAAC;IAED,IAAY,KAAK;QACf,OAAO,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;IAClC,CAAC;CACF"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/lib/utils.ts"],"names":[],"mappings":"AAAA,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAE/C;AAED,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAE/C;AAED,wBAAgB,KAAK,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAIlE;AAED,eAAO,MAAM,QAAQ,UAAW,OAAO,KAAG,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CACH,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/lib/utils.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,UAAU,CAAC,IAAY;IACrC,OAAO,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AAC7D,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,IAAY;IACrC,OAAO,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AAC7D,CAAC;AAED,MAAM,UAAU,KAAK,CAAoC,GAAM;IAC7D,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC;QAAE,IAAI,GAAG,CAAC,GAAG,CAAC,KAAK,SAAS;YAAE,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC;IAEhF,OAAO,GAAG,CAAC;AACb,CAAC;AAED,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,KAAc,EAAoC,EAAE,CAC3E,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC"}
@@ -1,21 +1,17 @@
1
- import type { SchemaView } from '../schema/SchemaView.js';
1
+ import type { SchemaView } from '../SchemaView.js';
2
2
  /**
3
- * One input, and what the judge must answer.
3
+ * One input, and what the validator must answer.
4
4
  *
5
5
  * `expect` carries the PATH of the field at fault and never the message. We know which
6
6
  * field must be refused because we are the ones who broke it; naming the message would
7
- * make this list a second judge, and the two would then have to be kept in step by hand —
7
+ * make this list a second validator, and the two would then have to be kept in step by hand —
8
8
  * which is the duplication the whole thing exists to remove.
9
9
  */
10
- export interface Case {
10
+ export interface ValidationCase {
11
11
  /** What this input does, in one clause — carried into the assertion so a failure reads. */
12
12
  why: string;
13
- body: unknown;
14
- /**
15
- * Judged as an update rather than a creation. The two modes refuse different things:
16
- * an absence is `Required` on create and legal on patch, an immutable field is legal
17
- * on create and refused on patch.
18
- */
13
+ input: unknown;
14
+ /** Judged as an update rather than a creation. */
19
15
  patch: boolean;
20
16
  expect: 'accept' | {
21
17
  reject: string;
@@ -28,23 +24,16 @@ export interface Case {
28
24
  * supplies a valid row; generating data belongs to the testing package.
29
25
  */
30
26
  export declare class Cases {
31
- readonly all: readonly Case[];
27
+ readonly all: readonly ValidationCase[];
32
28
  private constructor();
33
29
  static of(entity: SchemaView, valid: Record<string, unknown>): Cases;
34
- /**
35
- * Whether a verdict is the one a case expected.
36
- *
37
- * Takes the RESULT rather than the input so the same reader serves the local judge, the
38
- * façade and a door — the three that have to agree.
39
- */
40
- static holds(expected: Case['expect'], result: {
30
+ static holds(expected: ValidationCase['expect'], result: {
41
31
  success: boolean;
42
32
  errors?: {
43
33
  path: string;
44
34
  }[];
45
35
  }): boolean;
46
- /** Every way a row is refused for its structure — the closed set this table must cover. */
47
36
  static get refusals(): string[];
48
- [Symbol.iterator](): Iterator<Case>;
37
+ [Symbol.iterator](): Iterator<ValidationCase>;
49
38
  }
50
39
  //# sourceMappingURL=Cases.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Cases.d.ts","sourceRoot":"","sources":["../../src/projection/Cases.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAI1D;;;;;;;GAOG;AACH,MAAM,WAAW,IAAI;IACnB,2FAA2F;IAC3F,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,OAAO,CAAC;IACd;;;;OAIG;IACH,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,QAAQ,GAAG;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;CACvC;AAyCD;;;;;GAKG;AACH,qBAAa,KAAK;IACI,QAAQ,CAAC,GAAG,EAAE,SAAS,IAAI,EAAE;IAAjD,OAAO,eAA8C;IAErD,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,KAAK,CAEnE;IAED;;;;;OAKG;IACH,MAAM,CAAC,KAAK,CACV,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,EACxB,MAAM,EAAE;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,MAAM,CAAC,EAAE;YAAE,IAAI,EAAE,MAAM,CAAA;SAAE,EAAE,CAAA;KAAE,GACxD,OAAO,CAIT;IAED,2FAA2F;IAC3F,MAAM,KAAK,QAAQ,IAAI,MAAM,EAAE,CAE9B;IAED,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,CAElC;CACF"}
1
+ {"version":3,"file":"Cases.d.ts","sourceRoot":"","sources":["../../src/projection/Cases.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAInD;;;;;;;GAOG;AACH,MAAM,WAAW,cAAc;IAC7B,2FAA2F;IAC3F,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,OAAO,CAAC;IACf,kDAAkD;IAClD,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,QAAQ,GAAG;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;CACvC;AAiDD;;;;;GAKG;AACH,qBAAa,KAAK;IACI,QAAQ,CAAC,GAAG,EAAE,SAAS,cAAc,EAAE;IAA3D,OAAO,eAAwD;IAE/D,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,KAAK,CAEnE;IAED,MAAM,CAAC,KAAK,CACV,QAAQ,EAAE,cAAc,CAAC,QAAQ,CAAC,EAClC,MAAM,EAAE;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,MAAM,CAAC,EAAE;YAAE,IAAI,EAAE,MAAM,CAAA;SAAE,EAAE,CAAA;KAAE,GACxD,OAAO,CAIT;IAED,MAAM,KAAK,QAAQ,IAAI,MAAM,EAAE,CAE9B;IAED,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,cAAc,CAAC,CAE5C;CACF"}
@@ -1,46 +1,54 @@
1
- import { Anatomy } from '../schema/axis/shape/Shape.js';
2
- import { Boundary } from '../schema/axis/boundary/Boundary.js';
3
- import { Lifecycle } from '../schema/axis/lifecycle/Lifecycle.js';
4
- import { Role } from '../schema/axis/role/Role.js';
5
- import { RowJudge } from '../judge/RowJudge.js';
6
- import { RowRefusal } from '../judge/RowRefusal.js';
7
- /** A value of the wrong type for the declared shape — the one violation every field has. */
1
+ import { Shapes } from '../axis/shape/Shape.js';
2
+ import { Boundary } from '../axis/boundary/Boundary.js';
3
+ import { Lifecycle } from '../axis/lifecycle/Lifecycle.js';
4
+ import { Role } from '../axis/role/Role.js';
5
+ import { InputValidator } from '../validator/InputValidator.js';
6
+ import { InputRefusal } from '../validator/InputRefusal.js';
7
+ /**
8
+ * So every field has at least one case, whatever else it declares.
9
+ * FR : pour que chaque champ ait un cas, quoi qu'il déclare par ailleurs.
10
+ * `text()` → `42`; `number()` → `'not-a-value-of-this-shape'`
11
+ */
8
12
  function wrongTypeFor(field) {
9
13
  const declared = field.shape.type;
10
14
  const names = Array.isArray(declared) ? declared : [declared];
11
15
  return names.includes('string') ? 42 : 'not-a-value-of-this-shape';
12
16
  }
13
- /** Values that break a stated bound. Empty when the field states none. */
17
+ /**
18
+ * So a bound stated in a shape produces the case that breaks it, and none is invented.
19
+ * FR : pour qu'une borne énoncée produise le cas qui la casse, et aucun autre.
20
+ * `text({ maxLength: 3 })` → one case with `'xxxx'`; `text()` → no case
21
+ */
14
22
  function outOfBoundsFor(field) {
15
- // Through `Anatomy`, not a cast: the cast admitted any keyword, and it declared
23
+ // Through `Shapes`, not a cast: the cast admitted any keyword, and it declared
16
24
  // `maxItems` — which no branch below ever produced. In the one function whose job is
17
25
  // to be exhaustive, a bound the type does not carry is a case nobody notices missing.
18
- const shape = Anatomy.of(field.shape).base;
19
- const out = [];
26
+ const shape = Shapes.of(field.shape).base;
27
+ const cases = [];
20
28
  if (shape?.type === 'string') {
21
29
  if (typeof shape.minLength === 'number' && shape.minLength > 0)
22
- out.push({ why: 'shorter than min', value: 'x'.repeat(shape.minLength - 1) });
30
+ cases.push({ why: 'shorter than min', value: 'x'.repeat(shape.minLength - 1) });
23
31
  if (typeof shape.maxLength === 'number')
24
- out.push({ why: 'longer than max', value: 'x'.repeat(shape.maxLength + 1) });
32
+ cases.push({ why: 'longer than max', value: 'x'.repeat(shape.maxLength + 1) });
25
33
  if (shape.enum)
26
- out.push({ why: 'outside the stated set', value: '__not-in-enum__' });
34
+ cases.push({ why: 'outside the stated set', value: '__not-in-enum__' });
27
35
  }
28
36
  if (shape?.type === 'number' || shape?.type === 'integer') {
29
37
  if (typeof shape.minimum === 'number')
30
- out.push({ why: 'below minimum', value: shape.minimum - 1 });
38
+ cases.push({ why: 'below minimum', value: shape.minimum - 1 });
31
39
  if (typeof shape.maximum === 'number')
32
- out.push({ why: 'above maximum', value: shape.maximum + 1 });
40
+ cases.push({ why: 'above maximum', value: shape.maximum + 1 });
33
41
  }
34
42
  if (shape?.type === 'array') {
35
43
  if (typeof shape.minItems === 'number' && shape.minItems > 0)
36
- out.push({ why: 'fewer items than min', value: [] });
44
+ cases.push({ why: 'fewer items than min', value: [] });
37
45
  if (typeof shape.maxItems === 'number')
38
- out.push({
46
+ cases.push({
39
47
  why: 'more items than max',
40
48
  value: Array.from({ length: shape.maxItems + 1 }, () => null),
41
49
  });
42
50
  }
43
- return out;
51
+ return cases;
44
52
  }
45
53
  /**
46
54
  * The decision table, enumerated on the entity's own fields.
@@ -56,12 +64,6 @@ export class Cases {
56
64
  static of(entity, valid) {
57
65
  return new Cases(enumerate(entity, valid));
58
66
  }
59
- /**
60
- * Whether a verdict is the one a case expected.
61
- *
62
- * Takes the RESULT rather than the input so the same reader serves the local judge, the
63
- * façade and a door — the three that have to agree.
64
- */
65
67
  static holds(expected, result) {
66
68
  if (expected === 'accept')
67
69
  return result.success;
@@ -69,29 +71,32 @@ export class Cases {
69
71
  return false;
70
72
  return (result.errors ?? []).some((error) => error.path === expected.reject);
71
73
  }
72
- /** Every way a row is refused for its structure — the closed set this table must cover. */
73
74
  static get refusals() {
74
- return Object.values(RowRefusal);
75
+ return Object.values(InputRefusal);
75
76
  }
76
77
  [Symbol.iterator]() {
77
78
  return this.all[Symbol.iterator]();
78
79
  }
79
80
  }
81
+ /**
82
+ * So the four axes decide which cases exist, and no list of them is maintained by hand.
83
+ * FR : pour que les axes décident des cas, sans liste tenue à la main.
84
+ */
80
85
  function enumerate(entity, valid) {
81
86
  const fields = entity.getFields();
82
- const judge = RowJudge.of(fields);
87
+ const validator = InputValidator.of(fields);
83
88
  const cases = [];
84
89
  const withField = (name, value) => ({ ...valid, [name]: value });
85
- cases.push({ why: 'a valid body', body: valid, patch: false, expect: 'accept' });
90
+ cases.push({ why: 'a valid input', input: valid, patch: false, expect: 'accept' });
86
91
  cases.push({
87
92
  why: 'a key outside the contract',
88
- body: { ...valid, __unknown__: 'x' },
93
+ input: { ...valid, __unknown__: 'x' },
89
94
  patch: false,
90
95
  expect: { reject: '__unknown__' },
91
96
  });
92
97
  cases.push({
93
98
  why: 'not an object at all',
94
- body: 'a string',
99
+ input: 'a string',
95
100
  patch: false,
96
101
  expect: { reject: '.' },
97
102
  });
@@ -99,15 +104,15 @@ function enumerate(entity, valid) {
99
104
  // A reference names a row that must exist; the caller supplied its id and we do not
100
105
  // get to invent a second one, so the only case we can state about it is the bound one.
101
106
  const isRef = Role.of(field).isReference;
102
- if (judge.onAbsent(field) === null && name in valid) {
103
- const body = { ...valid };
104
- delete body[name];
105
- cases.push({ why: `${name} absent`, body, patch: false, expect: { reject: name } });
107
+ if (validator.onAbsent(field) === null && name in valid) {
108
+ const input = { ...valid };
109
+ delete input[name];
110
+ cases.push({ why: `${name} absent`, input, patch: false, expect: { reject: name } });
106
111
  }
107
112
  if (Boundary.of(field).readOnly) {
108
113
  cases.push({
109
114
  why: `${name} supplied although read-only`,
110
- body: withField(name, wrongTypeFor(field)),
115
+ input: withField(name, wrongTypeFor(field)),
111
116
  patch: false,
112
117
  expect: { reject: name },
113
118
  });
@@ -115,7 +120,7 @@ function enumerate(entity, valid) {
115
120
  if (Lifecycle.of(field).immutable && !Role.of(field).isPrimary) {
116
121
  cases.push({
117
122
  why: `${name} supplied on an update`,
118
- body: { [name]: valid[name] ?? wrongTypeFor(field) },
123
+ input: { [name]: valid[name] ?? wrongTypeFor(field) },
119
124
  patch: true,
120
125
  expect: { reject: name },
121
126
  });
@@ -123,14 +128,14 @@ function enumerate(entity, valid) {
123
128
  if (name in valid && !isRef) {
124
129
  cases.push({
125
130
  why: `${name} of the wrong type`,
126
- body: withField(name, wrongTypeFor(field)),
131
+ input: withField(name, wrongTypeFor(field)),
127
132
  patch: false,
128
133
  expect: { reject: name },
129
134
  });
130
135
  for (const { why, value } of outOfBoundsFor(field))
131
136
  cases.push({
132
137
  why: `${name} ${why}`,
133
- body: withField(name, value),
138
+ input: withField(name, value),
134
139
  patch: false,
135
140
  expect: { reject: name },
136
141
  });
@@ -1 +1 @@
1
- {"version":3,"file":"Cases.js","sourceRoot":"","sources":["../../src/projection/Cases.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Cases.js","sourceRoot":"","sources":["../../src/projection/Cases.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,9 @@
1
- import type { Fields } from '../schema/fields/Field.js';
1
+ import type { Fields } from '../field/Field.js';
2
2
  export declare class Visibility {
3
3
  private readonly fields;
4
4
  private constructor();
5
5
  static of(fields: Fields): Visibility;
6
+ /** A write-only secret is absent from the type, not just from the value. */
6
7
  get input(): Fields;
7
8
  get output(): Fields;
8
9
  encode(record: Record<string, unknown>): Record<string, unknown>;
@@ -1 +1 @@
1
- {"version":3,"file":"Visibility.d.ts","sourceRoot":"","sources":["../../src/projection/Visibility.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAC;AAExD,qBAAa,UAAU;IACD,OAAO,CAAC,QAAQ,CAAC,MAAM;IAA3C,OAAO,eAAgD;IAEvD,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,GAAG,UAAU,CAEpC;IAED,IAAI,KAAK,IAAI,MAAM,CAWlB;IAED,IAAI,MAAM,IAAI,MAAM,CAOnB;IAED,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAc/D;CACF"}
1
+ {"version":3,"file":"Visibility.d.ts","sourceRoot":"","sources":["../../src/projection/Visibility.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAEhD,qBAAa,UAAU;IACD,OAAO,CAAC,QAAQ,CAAC,MAAM;IAA3C,OAAO,eAAgD;IAEvD,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,GAAG,UAAU,CAEpC;IAED,4EAA4E;IAC5E,IAAI,KAAK,IAAI,MAAM,CAWlB;IAED,IAAI,MAAM,IAAI,MAAM,CAOnB;IAED,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAc/D;CACF"}
@@ -1,6 +1,6 @@
1
- import { Boundary } from '../schema/axis/boundary/Boundary.js';
2
- import { Lifecycle } from '../schema/axis/lifecycle/Lifecycle.js';
3
- import { Role } from '../schema/axis/role/Role.js';
1
+ import { Boundary } from '../axis/boundary/Boundary.js';
2
+ import { Lifecycle } from '../axis/lifecycle/Lifecycle.js';
3
+ import { Role } from '../axis/role/Role.js';
4
4
  export class Visibility {
5
5
  fields;
6
6
  constructor(fields) {
@@ -9,6 +9,7 @@ export class Visibility {
9
9
  static of(fields) {
10
10
  return new Visibility(fields);
11
11
  }
12
+ /** A write-only secret is absent from the type, not just from the value. */
12
13
  get input() {
13
14
  const result = {};
14
15
  for (const [name, field] of Object.entries(this.fields)) {