@fougere/core 0.17.3-alpha.0 → 0.18.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 (181) hide show
  1. package/dist/Declared.d.ts +2 -5
  2. package/dist/Declared.d.ts.map +1 -1
  3. package/dist/DeclaredHandler.d.ts +3 -8
  4. package/dist/DeclaredHandler.d.ts.map +1 -1
  5. package/dist/DeclaredSubject.d.ts +2 -5
  6. package/dist/DeclaredSubject.d.ts.map +1 -1
  7. package/dist/EffectiveOperation.d.ts +7 -6
  8. package/dist/EffectiveOperation.d.ts.map +1 -1
  9. package/dist/EffectiveOperationModel.d.ts.map +1 -1
  10. package/dist/EffectiveOperationModel.js +9 -6
  11. package/dist/EffectiveOperationModel.js.map +1 -1
  12. package/dist/FrondConfig.d.ts +0 -2
  13. package/dist/FrondConfig.d.ts.map +1 -1
  14. package/dist/FrondConfig.js.map +1 -1
  15. package/dist/FrondDeclaration.d.ts +3 -8
  16. package/dist/FrondDeclaration.d.ts.map +1 -1
  17. package/dist/FrondDeclaration.js +2 -1
  18. package/dist/FrondDeclaration.js.map +1 -1
  19. package/dist/OperationOverride.d.ts +5 -3
  20. package/dist/OperationOverride.d.ts.map +1 -1
  21. package/dist/SourceView.d.ts +10 -8
  22. package/dist/SourceView.d.ts.map +1 -1
  23. package/dist/SourceView.js +10 -1
  24. package/dist/SourceView.js.map +1 -1
  25. package/dist/boot/bootstrap.d.ts.map +1 -1
  26. package/dist/boot/bootstrap.js +6 -5
  27. package/dist/boot/bootstrap.js.map +1 -1
  28. package/dist/boot/install.d.ts.map +1 -1
  29. package/dist/boot/install.js +8 -4
  30. package/dist/boot/install.js.map +1 -1
  31. package/dist/boot/unregistered.d.ts +11 -0
  32. package/dist/boot/unregistered.d.ts.map +1 -0
  33. package/dist/boot/unregistered.js +35 -0
  34. package/dist/boot/unregistered.js.map +1 -0
  35. package/dist/contract.d.ts +3 -0
  36. package/dist/contract.d.ts.map +1 -1
  37. package/dist/contract.js +3 -0
  38. package/dist/contract.js.map +1 -1
  39. package/dist/descriptor/CollectorEntry.d.ts +2 -7
  40. package/dist/descriptor/CollectorEntry.d.ts.map +1 -1
  41. package/dist/descriptor/FrondDescriptor.d.ts +5 -23
  42. package/dist/descriptor/FrondDescriptor.d.ts.map +1 -1
  43. package/dist/descriptor/FrondDescriptor.js.map +1 -1
  44. package/dist/descriptor/HandlerEntry.d.ts +2 -7
  45. package/dist/descriptor/HandlerEntry.d.ts.map +1 -1
  46. package/dist/descriptor/MiddlewareEntry.d.ts +2 -7
  47. package/dist/descriptor/MiddlewareEntry.d.ts.map +1 -1
  48. package/dist/descriptor/PresenterEntry.d.ts +2 -7
  49. package/dist/descriptor/PresenterEntry.d.ts.map +1 -1
  50. package/dist/descriptor/ProviderEntry.d.ts +2 -7
  51. package/dist/descriptor/ProviderEntry.d.ts.map +1 -1
  52. package/dist/descriptor/Subject.d.ts +10 -0
  53. package/dist/descriptor/Subject.d.ts.map +1 -0
  54. package/dist/descriptor/Subject.js +2 -0
  55. package/dist/descriptor/Subject.js.map +1 -0
  56. package/dist/descriptor/index.d.ts +1 -0
  57. package/dist/descriptor/index.d.ts.map +1 -1
  58. package/dist/descriptor/index.js +1 -0
  59. package/dist/descriptor/index.js.map +1 -1
  60. package/dist/index.d.ts +3 -1
  61. package/dist/index.d.ts.map +1 -1
  62. package/dist/index.js +2 -0
  63. package/dist/index.js.map +1 -1
  64. package/dist/prefab/AggregateConstructor.d.ts +2 -2
  65. package/dist/prefab/AggregateConstructor.d.ts.map +1 -1
  66. package/dist/prefab/AggregateOf.d.ts +2 -2
  67. package/dist/prefab/AggregateOf.d.ts.map +1 -1
  68. package/dist/prefab/AggregateShape.d.ts +2 -2
  69. package/dist/prefab/AggregateShape.d.ts.map +1 -1
  70. package/dist/prefab/CrudConstructor.d.ts +2 -2
  71. package/dist/prefab/CrudConstructor.d.ts.map +1 -1
  72. package/dist/prefab/CrudConstructor.js +12 -10
  73. package/dist/prefab/CrudConstructor.js.map +1 -1
  74. package/dist/prefab/CrudOps.d.ts +2 -2
  75. package/dist/prefab/CrudOps.d.ts.map +1 -1
  76. package/dist/prefab/CrudViews.d.ts +2 -2
  77. package/dist/prefab/CrudViews.d.ts.map +1 -1
  78. package/dist/prefab/MirrorConstructor.d.ts +2 -2
  79. package/dist/prefab/MirrorConstructor.d.ts.map +1 -1
  80. package/dist/prefab/MirrorConstructor.js.map +1 -1
  81. package/dist/prefab/RepositoryConstructor.d.ts +4 -4
  82. package/dist/prefab/RepositoryConstructor.d.ts.map +1 -1
  83. package/dist/prefab/RepositoryConstructor.js.map +1 -1
  84. package/dist/prefab/collector.d.ts +2 -1
  85. package/dist/prefab/collector.d.ts.map +1 -1
  86. package/dist/prefab/collector.js.map +1 -1
  87. package/dist/prefab/opsOf.d.ts +4 -0
  88. package/dist/prefab/opsOf.d.ts.map +1 -0
  89. package/dist/prefab/opsOf.js +5 -0
  90. package/dist/prefab/opsOf.js.map +1 -0
  91. package/dist/prefab/prefab.d.ts +3 -3
  92. package/dist/prefab/prefab.d.ts.map +1 -1
  93. package/dist/prefab/presenter.d.ts +3 -3
  94. package/dist/prefab/presenter.d.ts.map +1 -1
  95. package/dist/prefab/presenter.js.map +1 -1
  96. package/dist/wire/Addresses.d.ts +4 -4
  97. package/dist/wire/Addresses.d.ts.map +1 -1
  98. package/dist/wire/Cardinality.d.ts +4 -0
  99. package/dist/wire/Cardinality.d.ts.map +1 -0
  100. package/dist/wire/Cardinality.js +3 -0
  101. package/dist/wire/Cardinality.js.map +1 -0
  102. package/dist/wire/OperationContract.d.ts +2 -1
  103. package/dist/wire/OperationContract.d.ts.map +1 -1
  104. package/dist/wire/OperationContract.js.map +1 -1
  105. package/dist/wire/OperationKind.d.ts +3 -1
  106. package/dist/wire/OperationKind.d.ts.map +1 -1
  107. package/dist/wire/OperationKind.js +2 -1
  108. package/dist/wire/OperationKind.js.map +1 -1
  109. package/dist/wire/Placement.d.ts +4 -0
  110. package/dist/wire/Placement.d.ts.map +1 -0
  111. package/dist/wire/Placement.js +3 -0
  112. package/dist/wire/Placement.js.map +1 -0
  113. package/dist/wire/RouteKind.d.ts +2 -1
  114. package/dist/wire/RouteKind.d.ts.map +1 -1
  115. package/dist/wire/StateShape.d.ts +1 -2
  116. package/dist/wire/StateShape.d.ts.map +1 -1
  117. package/dist/wire/StateShape.js +11 -11
  118. package/dist/wire/StateShape.js.map +1 -1
  119. package/dist/wire/TypeRef.d.ts +5 -0
  120. package/dist/wire/TypeRef.d.ts.map +1 -1
  121. package/dist/wire/binding.d.ts +4 -1
  122. package/dist/wire/binding.d.ts.map +1 -1
  123. package/dist/wire/binding.js +4 -2
  124. package/dist/wire/binding.js.map +1 -1
  125. package/dist/wire/card/CardOp.d.ts +4 -10
  126. package/dist/wire/card/CardOp.d.ts.map +1 -1
  127. package/dist/wire/refusals.d.ts +2 -1
  128. package/dist/wire/refusals.d.ts.map +1 -1
  129. package/dist/wire/refusals.js.map +1 -1
  130. package/dist/wire/topology/DeclaredFrond.d.ts +2 -1
  131. package/dist/wire/topology/DeclaredFrond.d.ts.map +1 -1
  132. package/dist/wire/topology/FrondPlacement.d.ts +2 -1
  133. package/dist/wire/topology/FrondPlacement.d.ts.map +1 -1
  134. package/package.json +3 -3
  135. package/src/Declared.ts +3 -7
  136. package/src/DeclaredHandler.ts +3 -8
  137. package/src/DeclaredSubject.ts +3 -5
  138. package/src/EffectiveOperation.ts +7 -6
  139. package/src/EffectiveOperationModel.ts +11 -7
  140. package/src/FrondConfig.ts +0 -2
  141. package/src/FrondDeclaration.ts +5 -8
  142. package/src/OperationOverride.ts +5 -3
  143. package/src/SourceView.ts +21 -3
  144. package/src/boot/bootstrap.ts +8 -5
  145. package/src/boot/install.ts +7 -4
  146. package/src/boot/unregistered.ts +40 -0
  147. package/src/contract.ts +3 -0
  148. package/src/descriptor/CollectorEntry.ts +2 -7
  149. package/src/descriptor/FrondDescriptor.ts +5 -19
  150. package/src/descriptor/HandlerEntry.ts +2 -7
  151. package/src/descriptor/MiddlewareEntry.ts +2 -7
  152. package/src/descriptor/PresenterEntry.ts +2 -7
  153. package/src/descriptor/ProviderEntry.ts +2 -7
  154. package/src/descriptor/Subject.ts +10 -0
  155. package/src/descriptor/index.ts +1 -0
  156. package/src/index.ts +3 -1
  157. package/src/prefab/AggregateConstructor.ts +2 -2
  158. package/src/prefab/AggregateOf.ts +2 -2
  159. package/src/prefab/AggregateShape.ts +2 -2
  160. package/src/prefab/CrudConstructor.ts +17 -13
  161. package/src/prefab/CrudOps.ts +3 -3
  162. package/src/prefab/CrudViews.ts +2 -2
  163. package/src/prefab/MirrorConstructor.ts +2 -2
  164. package/src/prefab/RepositoryConstructor.ts +9 -9
  165. package/src/prefab/collector.ts +4 -3
  166. package/src/prefab/opsOf.ts +6 -0
  167. package/src/prefab/prefab.ts +5 -5
  168. package/src/prefab/presenter.ts +3 -3
  169. package/src/wire/Addresses.ts +4 -4
  170. package/src/wire/Cardinality.ts +4 -0
  171. package/src/wire/OperationContract.ts +2 -1
  172. package/src/wire/OperationKind.ts +4 -1
  173. package/src/wire/Placement.ts +4 -0
  174. package/src/wire/RouteKind.ts +3 -1
  175. package/src/wire/StateShape.ts +9 -11
  176. package/src/wire/TypeRef.ts +2 -0
  177. package/src/wire/binding.ts +7 -2
  178. package/src/wire/card/CardOp.ts +4 -10
  179. package/src/wire/refusals.ts +2 -1
  180. package/src/wire/topology/DeclaredFrond.ts +3 -1
  181. package/src/wire/topology/FrondPlacement.ts +3 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/descriptor/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,yBAAyB,CAAC;AACxC,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAErC,OAAO,EAAE,aAAa,EAAE,KAAK,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACrF,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,kBAAkB,EAAE,KAAK,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAC1E,YAAY,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAClE,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AAG9E,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/descriptor/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,yBAAyB,CAAC;AACxC,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAErC,OAAO,EAAE,aAAa,EAAE,KAAK,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACrF,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,kBAAkB,EAAE,KAAK,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAC1E,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,YAAY,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAClE,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AAG9E,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC"}
@@ -17,6 +17,7 @@ export * from './FrondDescriptor.js';
17
17
  export { Fronds } from './Fronds.js';
18
18
  export { cardinalityOf } from '../wire/OperationContract.js';
19
19
  export { computeBindingPlan } from '../wire/binding.js';
20
+ export { opsOf } from '../prefab/opsOf.js';
20
21
  export { awaitKeyOf, emitKeyOf } from '../wire/Emit.js';
21
22
  export { addressOf } from '../wire/Facade.js';
22
23
  export { storageKeyOf } from '../storage/Storage.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/descriptor/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,yBAAyB,CAAC;AACxC,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAErC,OAAO,EAAE,aAAa,EAA0B,MAAM,8BAA8B,CAAC;AAIrF,OAAO,EAAE,kBAAkB,EAAoB,MAAM,oBAAoB,CAAC;AAE1E,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAClE,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AAE9E,4FAA4F;AAC5F,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/descriptor/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,yBAAyB,CAAC;AACxC,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAErC,OAAO,EAAE,aAAa,EAA0B,MAAM,8BAA8B,CAAC;AAIrF,OAAO,EAAE,kBAAkB,EAAoB,MAAM,oBAAoB,CAAC;AAC1E,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAE3C,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAClE,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AAE9E,4FAA4F;AAC5F,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC"}
package/dist/index.d.ts CHANGED
@@ -61,6 +61,7 @@ export type { AppMiddleware } from './wire/AppMiddleware.js';
61
61
  export type { AppNext } from './wire/AppNext.js';
62
62
  export type { OperationContext } from './wire/OperationContext.js';
63
63
  export { assertIdentityCard, RPC_ADDRESS, ENVELOPE_BYTES, maxBodyBytes, maxFrameBytes, setMaxBodyBytes } from './contract.js';
64
+ export { OPERATION_KINDS, CARDINALITIES, PLACEMENTS, type OperationKind, type Cardinality, type Placement } from './contract.js';
64
65
  export { createLocalRunner, createAppRunner } from './boot/runner.js';
65
66
  export { frond } from './FrondDeclaration.js';
66
67
  export type { Declared } from './Declared.js';
@@ -69,6 +70,7 @@ export type { FrondDeclaration } from './FrondDeclaration.js';
69
70
  export { identityCardOf } from './boot/card.js';
70
71
  export { declaredTopologyOf } from './boot/declared.js';
71
72
  export { refusalsOf, type Refusable } from './wire/refusals.js';
73
+ export type { Binding } from './Binding.js';
72
74
  export type { Addresses } from './wire/Addresses.js';
73
75
  export type { Answer } from './wire/Answer.js';
74
76
  export type { AnyHandler } from './wire/AnyHandler.js';
@@ -102,7 +104,7 @@ export { Storage, togetherKeyOf } from './storage/Storage.js';
102
104
  export type { Constraint } from './Constraint.js';
103
105
  export type { Source } from './Source.js';
104
106
  export type { SourceConfig } from './SourceConfig.js';
105
- export type { SourceView } from './SourceView.js';
107
+ export { sourceViewOf, type SourceView } from './SourceView.js';
106
108
  export { Sources } from './Source.js';
107
109
  export { storageOver } from './storage/Store.js';
108
110
  export type { Store } from './storage/Store.js';
@@ -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
@@ -28,6 +28,7 @@ export { driftOf, agrees, explain } from './contract.js';
28
28
  export { resolveEffectiveOperations } from './EffectiveOperationModel.js';
29
29
  export { FougereError, ErrorCode, validationErrorsOf } from './contract.js';
30
30
  export { assertIdentityCard, RPC_ADDRESS, ENVELOPE_BYTES, maxBodyBytes, maxFrameBytes, setMaxBodyBytes } from './contract.js';
31
+ export { OPERATION_KINDS, CARDINALITIES, PLACEMENTS } from './contract.js';
31
32
  export { createLocalRunner, createAppRunner } from './boot/runner.js';
32
33
  // A frond an app STATES, for a boot that will not scan. No disk, no `typescript` — which
33
34
  // is why it sits here and not in `/node`, beside the scanner that reads a project.
@@ -55,6 +56,7 @@ export { applyConfig } from './boot/apply.js';
55
56
  export { Config } from './builtin/config.js';
56
57
  // A VALUE as well as a type: it is what a wrapper extends, which is the whole of declaring one.
57
58
  export { Storage, togetherKeyOf } from './storage/Storage.js';
59
+ export { sourceViewOf } from './SourceView.js';
58
60
  export { Sources } from './Source.js';
59
61
  export { storageOver } from './storage/Store.js';
60
62
  export { DEFAULT_CONVENTIONS, frondDirsOf, frondPackage, providerDirsOf, resolveConventions } from './Conventions.js';
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,gDAAgD;AAChD,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAE3E,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAG5C,OAAO,EAAE,YAAY,EAAuC,MAAM,mBAAmB,CAAC;AACtF,OAAO,EAAE,YAAY,EAAoB,MAAM,kBAAkB,CAAC;AAClE,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAQ3C,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,YAAY,EAAsB,MAAM,oBAAoB,CAAC;AAEnG,OAAO,EAAE,IAAI,EAAE,MAAM,6BAA6B,CAAC;AAKnD,OAAO,EAAE,MAAM,EAAE,MAAM,+BAA+B,CAAC;AAIvD,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAElD,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAGlD,OAAO,EAAE,UAAU,EAA8B,MAAM,mCAAmC,CAAC;AAE3F,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAG3C,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AACrC,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,OAAO,EAAkB,MAAM,uBAAuB,CAAC;AAChE,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAEhD,OAAO,EAAE,OAAO,EAAgB,MAAM,uBAAuB,CAAC;AAC9D,uFAAuF;AACvF,2EAA2E;AAC3E,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAE5D,OAAO,EAAE,MAAM,EAAE,MAAM,EAAa,MAAM,eAAe,CAAC;AAC1D,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAkB,MAAM,eAAe,CAAC;AAKzE,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAG1E,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAI5E,OAAO,EAAE,kBAAkB,EAAE,WAAW,EAAE,cAAc,EAAE,YAAY,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAC9H,OAAO,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAEtE,yFAAyF;AACzF,mFAAmF;AACnF,OAAO,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAI9C,0FAA0F;AAC1F,wFAAwF;AACxF,yDAAyD;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,mFAAmF;AACnF,iFAAiF;AACjF,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACxD,4FAA4F;AAC5F,gEAAgE;AAChE,OAAO,EAAE,UAAU,EAAkB,MAAM,oBAAoB,CAAC;AAWhE,OAAO,EAAE,SAAS,EAAe,MAAM,kBAAkB,CAAC;AAgB1D,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAIzF,wFAAwF;AACxF,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAClF,2EAA2E;AAC3E,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAK7C,gGAAgG;AAChG,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAK9D,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AACtC,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAOjD,OAAO,EAAE,mBAAmB,EAAE,WAAW,EAAE,YAAY,EAAE,cAAc,EAAE,kBAAkB,EAAoB,MAAM,kBAAkB,CAAC;AAWxI,OAAO,EAAE,IAAI,EAAoB,MAAM,uBAAuB,CAAC;AAC/D,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAChD,OAAO,EAAE,MAAM,EAAkB,MAAM,aAAa,CAAC;AACrD,iFAAiF;AACjF,uFAAuF;AACvF,sFAAsF;AACtF,mFAAmF;AACnF,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import type { AggregateShape } from './AggregateShape.js';
2
- import { type EntityConstructor } from '@fougere/schema';
3
- export type AggregateConstructor<E extends readonly EntityConstructor[]> = (new (...storages: unknown[]) => AggregateShape<E>) & {
2
+ import { type Entity } from '@fougere/schema';
3
+ export type AggregateConstructor<E extends readonly Entity[]> = (new (...storages: unknown[]) => AggregateShape<E>) & {
4
4
  readonly __entity: unknown;
5
5
  /** The entities this class owns. Present from two on — an owner of one owns nothing. */
6
6
  readonly __owns: E;
@@ -1 +1 @@
1
- {"version":3,"file":"AggregateConstructor.d.ts","sourceRoot":"","sources":["../../src/prefab/AggregateConstructor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAEzD,MAAM,MAAM,oBAAoB,CAAC,CAAC,SAAS,SAAS,iBAAiB,EAAE,IACrE,CAAC,KAAK,GAAG,QAAQ,EAAE,OAAO,EAAE,KAAK,cAAc,CAAC,CAAC,CAAC,CAAC,GAAG;IACpD,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B,wFAAwF;IACxF,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;CACpB,CAAC"}
1
+ {"version":3,"file":"AggregateConstructor.d.ts","sourceRoot":"","sources":["../../src/prefab/AggregateConstructor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAE9C,MAAM,MAAM,oBAAoB,CAAC,CAAC,SAAS,SAAS,MAAM,EAAE,IAC1D,CAAC,KAAK,GAAG,QAAQ,EAAE,OAAO,EAAE,KAAK,cAAc,CAAC,CAAC,CAAC,CAAC,GAAG;IACpD,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B,wFAAwF;IACxF,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;CACpB,CAAC"}
@@ -1,7 +1,7 @@
1
- import { type EntityConstructor } from '@fougere/schema';
1
+ import { type Entity } from '@fougere/schema';
2
2
  import type { Storage } from '../storage/Storage.js';
3
3
  /** The tuple an aggregate holds — the readable form of {@link AggregateShape}'s member. */
4
- export type AggregateOf<E extends readonly EntityConstructor[]> = {
4
+ export type AggregateOf<E extends readonly Entity[]> = {
5
5
  [K in keyof E]: Storage<InstanceType<E[K]>>;
6
6
  };
7
7
  //# sourceMappingURL=AggregateOf.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"AggregateOf.d.ts","sourceRoot":"","sources":["../../src/prefab/AggregateOf.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAErD,2FAA2F;AAC3F,MAAM,MAAM,WAAW,CAAC,CAAC,SAAS,SAAS,iBAAiB,EAAE,IAC5D;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CAAE,CAAC"}
1
+ {"version":3,"file":"AggregateOf.d.ts","sourceRoot":"","sources":["../../src/prefab/AggregateOf.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAErD,2FAA2F;AAC3F,MAAM,MAAM,WAAW,CAAC,CAAC,SAAS,SAAS,MAAM,EAAE,IACjD;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CAAE,CAAC"}
@@ -1,7 +1,7 @@
1
1
  import type { Storage } from '../storage/Storage.js';
2
- import type { EntityConstructor } from '@fougere/schema';
2
+ import type { Entity } from '@fougere/schema';
3
3
  /** What an aggregate's subclass sees. */
4
- export declare abstract class AggregateShape<E extends readonly EntityConstructor[]> {
4
+ export declare abstract class AggregateShape<E extends readonly Entity[]> {
5
5
  protected storages: {
6
6
  [K in keyof E]: Storage<InstanceType<E[K]>>;
7
7
  };
@@ -1 +1 @@
1
- {"version":3,"file":"AggregateShape.d.ts","sourceRoot":"","sources":["../../src/prefab/AggregateShape.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAEzD,yCAAyC;AACzC,MAAM,CAAC,OAAO,CAAC,QAAQ,OAAO,cAAc,CAAC,CAAC,SAAS,SAAS,iBAAiB,EAAE;IACjF,SAAS,CAAC,QAAQ,EAAE;SAAG,CAAC,IAAI,MAAM,CAAC,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;KAAE,CAAC;CACrE"}
1
+ {"version":3,"file":"AggregateShape.d.ts","sourceRoot":"","sources":["../../src/prefab/AggregateShape.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAE9C,yCAAyC;AACzC,MAAM,CAAC,OAAO,CAAC,QAAQ,OAAO,cAAc,CAAC,CAAC,SAAS,SAAS,MAAM,EAAE;IACtE,SAAS,CAAC,QAAQ,EAAE;SAAG,CAAC,IAAI,MAAM,CAAC,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;KAAE,CAAC;CACrE"}
@@ -1,4 +1,4 @@
1
- import { type EntityConstructor } from '@fougere/schema';
1
+ import { type Entity } from '@fougere/schema';
2
2
  import type { Storage } from '../storage/Storage.js';
3
3
  import type { OperationContract } from '../wire/OperationContract.js';
4
4
  import type { CrudViews } from './CrudViews.js';
@@ -28,5 +28,5 @@ export interface CrudConstructor<T, V = {}> {
28
28
  *
29
29
  * Documented: [handlers](https://fougere.dev/docs/business/handlers).
30
30
  */
31
- export declare function Crud<E extends EntityConstructor, V extends CrudViews | EntityConstructor = {}>(entity: E, output?: V): CrudConstructor<InstanceType<E>, V>;
31
+ export declare function Crud<E extends Entity, V extends CrudViews | Entity = {}>(entity: E, output?: V): CrudConstructor<InstanceType<E>, V>;
32
32
  //# sourceMappingURL=CrudConstructor.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"CrudConstructor.d.ts","sourceRoot":"","sources":["../../src/prefab/CrudConstructor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,KAAK,iBAAiB,EAAmB,MAAM,iBAAiB,CAAC;AAEtF,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AAEtE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAEhD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAE5C;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,CAInD;AAED;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAIhE;AA2DD,4FAA4F;AAC5F,MAAM,WAAW,eAAe,CAAC,CAAC,EAAE,CAAC,GAAG,EAAE;IAIxC,KAAK,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC5C,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,WAAW,CAAC,EAAE,SAAS,CAAC;IACjC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC;CACnD;AAED;;;;GAIG;AACH,wBAAgB,IAAI,CAAC,CAAC,SAAS,iBAAiB,EAAE,CAAC,SAAS,SAAS,GAAG,iBAAiB,GAAG,EAAE,EAC5F,MAAM,EAAE,CAAC,EACT,MAAM,CAAC,EAAE,CAAC,GACT,eAAe,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAgCrC"}
1
+ {"version":3,"file":"CrudConstructor.d.ts","sourceRoot":"","sources":["../../src/prefab/CrudConstructor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAwB,KAAK,MAAM,EAAmB,MAAM,iBAAiB,CAAC;AAErF,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AAEtE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAEhD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAE5C;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,CAInD;AAED;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAIhE;AA+DD,4FAA4F;AAC5F,MAAM,WAAW,eAAe,CAAC,CAAC,EAAE,CAAC,GAAG,EAAE;IAIxC,KAAK,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC5C,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,WAAW,CAAC,EAAE,SAAS,CAAC;IACjC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC;CACnD;AAED;;;;GAIG;AACH,wBAAgB,IAAI,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,SAAS,GAAG,MAAM,GAAG,EAAE,EACtE,MAAM,EAAE,CAAC,EACT,MAAM,CAAC,EAAE,CAAC,GACT,eAAe,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAgCrC"}
@@ -1,4 +1,4 @@
1
- import { lowerFirst } from '@fougere/schema';
1
+ import { FieldSet, lowerFirst } from '@fougere/schema';
2
2
  import { targetOf } from './prefab.js';
3
3
  import { pageOf } from '../wire/Page.js';
4
4
  /**
@@ -19,11 +19,11 @@ export function subjectOf(ctor, address) {
19
19
  const target = targetOf(ctor);
20
20
  return target?.name ? lowerFirst(target.name) : address;
21
21
  }
22
- /** The id of the row an op acts on — a route segment, or a query fallback. */
23
- const byId = { name: 'id', source: { kind: 'param', name: 'id' }, optional: false };
22
+ /** The id of the row an op acts on — `id: Post['id']`, which a route places before the op. */
23
+ const byId = (entity) => ({ name: 'id', source: { kind: 'param', name: 'id', identifies: entity }, optional: false });
24
24
  const fromBody = { name: 'input', source: { kind: 'input' }, optional: false };
25
25
  /** The same five, written as the scan would have written them. */
26
- const idParam = { name: 'id', type: { raw: 'string', name: 'string' } };
26
+ const idParam = (entity, field) => ({ name: 'id', type: { raw: `${entity}['${field}']`, name: 'string', identifies: { entity, field } } });
27
27
  const inputParam = (entity) => ({ name: 'input', type: { raw: `Partial<${entity}>`, name: entity } });
28
28
  const returns = (raw, name, extra) => ({ raw, name, ...extra });
29
29
  /**
@@ -34,6 +34,8 @@ const returns = (raw, name, extra) => ({ raw, name, ...extra });
34
34
  function crudOps(entity) {
35
35
  const name = entity.name ?? 'Entity';
36
36
  const input = inputParam(name);
37
+ const id = byId(name);
38
+ const idSignature = idParam(name, FieldSet.of(entity.getFields()).primary ?? 'id');
37
39
  return {
38
40
  list: {
39
41
  output: entity, cardinality: 'page',
@@ -44,8 +46,8 @@ function crudOps(entity) {
44
46
  },
45
47
  },
46
48
  findById: {
47
- output: entity, cardinality: 'maybe', binding: [byId],
48
- signature: { name: 'findById', returnType: returns(`${name} | undefined`, name, { nullable: true }), params: [idParam] },
49
+ output: entity, cardinality: 'maybe', binding: [id],
50
+ signature: { name: 'findById', returnType: returns(`${name} | undefined`, name, { nullable: true }), params: [idSignature] },
49
51
  },
50
52
  create: {
51
53
  input: entity, output: entity, cardinality: 'one', binding: [fromBody],
@@ -54,12 +56,12 @@ function crudOps(entity) {
54
56
  // The patch view carries its own mode: an absent field is untouched, an
55
57
  // immutable one re-supplied is refused.
56
58
  update: {
57
- input: entity.partial?.(), output: entity, cardinality: 'one', binding: [byId, fromBody],
58
- signature: { name: 'update', returnType: returns(name, name), params: [idParam, input] },
59
+ input: entity.partial?.(), output: entity, cardinality: 'one', binding: [id, fromBody],
60
+ signature: { name: 'update', returnType: returns(name, name), params: [idSignature, input] },
59
61
  },
60
62
  delete: {
61
- cardinality: 'none', binding: [byId],
62
- signature: { name: 'delete', returnType: returns('boolean', 'boolean'), params: [idParam] },
63
+ cardinality: 'none', binding: [id],
64
+ signature: { name: 'delete', returnType: returns('boolean', 'boolean'), params: [idSignature] },
63
65
  },
64
66
  };
65
67
  }
@@ -1 +1 @@
1
- {"version":3,"file":"CrudConstructor.js","sourceRoot":"","sources":["../../src/prefab/CrudConstructor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CrudConstructor.js","sourceRoot":"","sources":["../../src/prefab/CrudConstructor.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,11 @@
1
1
  import type { CrudOpName } from './CrudOpName.js';
2
- import type { EntityConstructor } from '@fougere/schema';
2
+ import type { Entity } from '@fougere/schema';
3
3
  import type { ListOptions } from '../storage/ListOptions.js';
4
4
  import type { Page } from '../wire/Page.js';
5
5
  /** The view an op emits, fabricated. */
6
6
  type OutOf<V, K extends CrudOpName, T> = [
7
7
  V
8
- ] extends [EntityConstructor] ? InstanceType<V & EntityConstructor> : K extends keyof V ? (V[K] extends EntityConstructor ? InstanceType<V[K]> : T) : T;
8
+ ] extends [Entity] ? InstanceType<V & Entity> : K extends keyof V ? (V[K] extends Entity ? InstanceType<V[K]> : T) : T;
9
9
  /** The five ops, typed from the entity and its views. */
10
10
  export interface CrudOps<T, V = {}> {
11
11
  list(options?: ListOptions, ...collected: never[]): Promise<Page<OutOf<V, 'list', T>>>;
@@ -1 +1 @@
1
- {"version":3,"file":"CrudOps.d.ts","sourceRoot":"","sources":["../../src/prefab/CrudOps.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAC7D,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AAE5C,wCAAwC;AACxC,KAAK,KAAK,CAAC,CAAC,EAAE,CAAC,SAAS,UAAU,EAAE,CAAC,IAInC;IAAC,CAAC;CAAC,SAAS,CAAC,iBAAiB,CAAC,GAAG,YAAY,CAAC,CAAC,GAAG,iBAAiB,CAAC,GACnE,CAAC,SAAS,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,iBAAiB,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAC7E,CAAC,CAAC;AAEN,yDAAyD;AACzD,MAAM,WAAW,OAAO,CAAC,CAAC,EAAE,CAAC,GAAG,EAAE;IAChC,IAAI,CAAC,OAAO,CAAC,EAAE,WAAW,EAAE,GAAG,SAAS,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IACvF,QAAQ,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,SAAS,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC;IAC1F,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,GAAG,SAAS,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC;IACjF,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,GAAG,SAAS,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC;IAC7F,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,SAAS,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CAC7D"}
1
+ {"version":3,"file":"CrudOps.d.ts","sourceRoot":"","sources":["../../src/prefab/CrudOps.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAC7D,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AAE5C,wCAAwC;AACxC,KAAK,KAAK,CAAC,CAAC,EAAE,CAAC,SAAS,UAAU,EAAE,CAAC,IAInC;IAAC,CAAC;CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,YAAY,CAAC,CAAC,GAAG,MAAM,CAAC,GAC7C,CAAC,SAAS,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,MAAM,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAClE,CAAC,CAAC;AAEN,yDAAyD;AACzD,MAAM,WAAW,OAAO,CAAC,CAAC,EAAE,CAAC,GAAG,EAAE;IAChC,IAAI,CAAC,OAAO,CAAC,EAAE,WAAW,EAAE,GAAG,SAAS,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IACvF,QAAQ,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,SAAS,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC;IAC1F,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,GAAG,SAAS,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC;IACjF,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,GAAG,SAAS,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC;IAC7F,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,SAAS,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CAC7D"}
@@ -1,5 +1,5 @@
1
- import { type EntityConstructor } from '@fougere/schema';
1
+ import { type Entity } from '@fougere/schema';
2
2
  import type { CrudOpName } from './CrudOpName.js';
3
3
  /** Which view each op speaks — omitted ops speak the entity, the trivial view. */
4
- export type CrudViews = Partial<Record<CrudOpName, EntityConstructor>>;
4
+ export type CrudViews = Partial<Record<CrudOpName, Entity>>;
5
5
  //# sourceMappingURL=CrudViews.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"CrudViews.d.ts","sourceRoot":"","sources":["../../src/prefab/CrudViews.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAElD,kFAAkF;AAClF,MAAM,MAAM,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,UAAU,EAAE,iBAAiB,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"CrudViews.d.ts","sourceRoot":"","sources":["../../src/prefab/CrudViews.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAElD,kFAAkF;AAClF,MAAM,MAAM,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC"}
@@ -1,9 +1,9 @@
1
- import type { EntityConstructor } from '@fougere/schema';
1
+ import type { Entity } from '@fougere/schema';
2
2
  import type { Storage } from '../storage/Storage.js';
3
3
  import type { MirrorOf } from './MirrorOf.js';
4
4
  export interface MirrorConstructor<T> {
5
5
  new (storage: Storage<T>): MirrorOf<T>;
6
6
  readonly __entity: unknown;
7
7
  }
8
- export declare function Mirror<E extends EntityConstructor>(shape: E): MirrorConstructor<InstanceType<E>>;
8
+ export declare function Mirror<E extends Entity>(shape: E): MirrorConstructor<InstanceType<E>>;
9
9
  //# sourceMappingURL=MirrorConstructor.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"MirrorConstructor.d.ts","sourceRoot":"","sources":["../../src/prefab/MirrorConstructor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAErD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAE9C,MAAM,WAAW,iBAAiB,CAAC,CAAC;IAClC,KAAK,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IACvC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;CAC5B;AAED,wBAAgB,MAAM,CAAC,CAAC,SAAS,iBAAiB,EAAE,KAAK,EAAE,CAAC,GAAG,iBAAiB,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAwBhG"}
1
+ {"version":3,"file":"MirrorConstructor.d.ts","sourceRoot":"","sources":["../../src/prefab/MirrorConstructor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAErD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAE9C,MAAM,WAAW,iBAAiB,CAAC,CAAC;IAClC,KAAK,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IACvC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;CAC5B;AAED,wBAAgB,MAAM,CAAC,CAAC,SAAS,MAAM,EAAE,KAAK,EAAE,CAAC,GAAG,iBAAiB,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAwBrF"}
@@ -1 +1 @@
1
- {"version":3,"file":"MirrorConstructor.js","sourceRoot":"","sources":["../../src/prefab/MirrorConstructor.ts"],"names":[],"mappings":"AAUA,MAAM,UAAU,MAAM,CAA8B,KAAQ;IAG1D,MAAe,UAAU;QAGJ;QAFnB,MAAM,CAAU,QAAQ,GAAG,KAAK,CAAC;QAEjC,YAAmB,OAAmB;YAAnB,YAAO,GAAP,OAAO,CAAY;QAAG,CAAC;QAI1C,KAAK,CAAC,OAAO,CAAC,KAAY;YACxB,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YAC3B,IAAI,OAAO,GAAG,CAAC,CAAC;YAChB,sEAAsE;YACtE,IAAI,KAAK,EAAE,MAAM,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC1C,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;oBAAE,SAAS;gBAChC,OAAO,IAAI,MAAM,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;YAChD,CAAC;YAED,OAAO,EAAE,OAAO,EAAE,GAAG,CAAC,KAAK,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO,EAAE,CAAC;QAC7F,CAAC;;IAGH,OAAO,UAA6C,CAAC;AACvD,CAAC"}
1
+ {"version":3,"file":"MirrorConstructor.js","sourceRoot":"","sources":["../../src/prefab/MirrorConstructor.ts"],"names":[],"mappings":"AAUA,MAAM,UAAU,MAAM,CAAmB,KAAQ;IAG/C,MAAe,UAAU;QAGJ;QAFnB,MAAM,CAAU,QAAQ,GAAG,KAAK,CAAC;QAEjC,YAAmB,OAAmB;YAAnB,YAAO,GAAP,OAAO,CAAY;QAAG,CAAC;QAI1C,KAAK,CAAC,OAAO,CAAC,KAAY;YACxB,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YAC3B,IAAI,OAAO,GAAG,CAAC,CAAC;YAChB,sEAAsE;YACtE,IAAI,KAAK,EAAE,MAAM,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC1C,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;oBAAE,SAAS;gBAChC,OAAO,IAAI,MAAM,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;YAChD,CAAC;YAED,OAAO,EAAE,OAAO,EAAE,GAAG,CAAC,KAAK,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO,EAAE,CAAC;QAC7F,CAAC;;IAGH,OAAO,UAA6C,CAAC;AACvD,CAAC"}
@@ -1,4 +1,4 @@
1
- import { type EntityConstructor } from '@fougere/schema';
1
+ import { type Entity } from '@fougere/schema';
2
2
  import type { Storage } from '../storage/Storage.js';
3
3
  import type { AggregateConstructor } from './AggregateConstructor.js';
4
4
  /** The single-entity form: the port, plus whatever the subclass names. */
@@ -6,10 +6,10 @@ export interface RepositoryConstructor<T> {
6
6
  new (storage: Storage<T>): Storage<T>;
7
7
  readonly __entity: unknown;
8
8
  }
9
- export declare function Repository<E extends EntityConstructor>(entity: E): RepositoryConstructor<InstanceType<E>>;
10
- export declare function Repository<E extends readonly [EntityConstructor, EntityConstructor, ...EntityConstructor[]]>(...entities: E): AggregateConstructor<E>;
9
+ export declare function Repository<E extends Entity>(entity: E): RepositoryConstructor<InstanceType<E>>;
10
+ export declare function Repository<E extends readonly [Entity, Entity, ...Entity[]]>(...entities: E): AggregateConstructor<E>;
11
11
  /** Container key of an entity's repository — 'reading' → 'ReadingRepository'. */
12
12
  export declare function repositoryKeyOf(entity: string): string;
13
13
  /** The entities a class owns — empty for anything that is not an aggregate. */
14
- export declare function ownedBy(ctor: unknown): readonly EntityConstructor[];
14
+ export declare function ownedBy(ctor: unknown): readonly Entity[];
15
15
  //# sourceMappingURL=RepositoryConstructor.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"RepositoryConstructor.d.ts","sourceRoot":"","sources":["../../src/prefab/RepositoryConstructor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,KAAK,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAIrE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAGrD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAEtE,0EAA0E;AAC1E,MAAM,WAAW,qBAAqB,CAAC,CAAC;IACtC,KAAK,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IACtC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;CAC5B;AAOD,wBAAgB,UAAU,CAAC,CAAC,SAAS,iBAAiB,EAAE,MAAM,EAAE,CAAC,GAAG,qBAAqB,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;AAE3G,wBAAgB,UAAU,CAAC,CAAC,SAAS,SAAS,CAAC,iBAAiB,EAAE,iBAAiB,EAAE,GAAG,iBAAiB,EAAE,CAAC,EAC1G,GAAG,QAAQ,EAAE,CAAC,GACb,oBAAoB,CAAC,CAAC,CAAC,CAAC;AAiD3B,iFAAiF;AACjF,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAEtD;AAED,+EAA+E;AAC/E,wBAAgB,OAAO,CAAC,IAAI,EAAE,OAAO,GAAG,SAAS,iBAAiB,EAAE,CAEnE"}
1
+ {"version":3,"file":"RepositoryConstructor.d.ts","sourceRoot":"","sources":["../../src/prefab/RepositoryConstructor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,KAAK,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAI1D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAGrD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAEtE,0EAA0E;AAC1E,MAAM,WAAW,qBAAqB,CAAC,CAAC;IACtC,KAAK,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IACtC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;CAC5B;AAOD,wBAAgB,UAAU,CAAC,CAAC,SAAS,MAAM,EAAE,MAAM,EAAE,CAAC,GAAG,qBAAqB,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;AAEhG,wBAAgB,UAAU,CAAC,CAAC,SAAS,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC,EACzE,GAAG,QAAQ,EAAE,CAAC,GACb,oBAAoB,CAAC,CAAC,CAAC,CAAC;AAiD3B,iFAAiF;AACjF,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAEtD;AAED,+EAA+E;AAC/E,wBAAgB,OAAO,CAAC,IAAI,EAAE,OAAO,GAAG,SAAS,MAAM,EAAE,CAExD"}
@@ -1 +1 @@
1
- {"version":3,"file":"RepositoryConstructor.js","sourceRoot":"","sources":["../../src/prefab/RepositoryConstructor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RepositoryConstructor.js","sourceRoot":"","sources":["../../src/prefab/RepositoryConstructor.ts"],"names":[],"mappings":"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"}
@@ -3,7 +3,8 @@
3
3
  *
4
4
  * Documented: [collectors](https://fougere.dev/docs/business/collectors).
5
5
  */
6
- export declare function Collector<T extends abstract new (...args: any[]) => any>(target: T): {
6
+ import type { AbstractCtor } from '../Ctor.js';
7
+ export declare function Collector<T extends AbstractCtor>(target: T): {
7
8
  new (): {};
8
9
  readonly __entity: T;
9
10
  };
@@ -1 +1 @@
1
- {"version":3,"file":"collector.d.ts","sourceRoot":"","sources":["../../src/prefab/collector.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAMH,wBAAgB,SAAS,CAAC,CAAC,SAAS,QAAQ,MAAM,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,EAAE,MAAM,EAAE,CAAC;;;EAMlF;AAED,+FAA+F;AAC/F,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEnD;AAID;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,OAAO,CAiBtE"}
1
+ {"version":3,"file":"collector.d.ts","sourceRoot":"","sources":["../../src/prefab/collector.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAK/C,wBAAgB,SAAS,CAAC,CAAC,SAAS,YAAY,EAAE,MAAM,EAAE,CAAC;;;EAM1D;AAED,+FAA+F;AAC/F,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEnD;AAID;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,OAAO,CAiBtE"}
@@ -1 +1 @@
1
- {"version":3,"file":"collector.js","sourceRoot":"","sources":["../../src/prefab/collector.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,mBAAmB,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAA+B,MAAM,iBAAiB,CAAC;AAC7G,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAEvD,MAAM,UAAU,SAAS,CAAiD,MAAS;IACjF,MAAM,aAAa;QACjB,MAAM,CAAU,QAAQ,GAAG,MAAM,CAAC;;IAGpC,OAAO,aAAa,CAAC;AACvB,CAAC;AAED,+FAA+F;AAC/F,MAAM,UAAU,cAAc,CAAC,IAAY;IACzC,OAAO,GAAG,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC;AACxC,CAAC;AAED,MAAM,OAAO,GAAG,IAAI,OAAO,EAAiB,CAAC;AAE7C;;;;GAIG;AACH,MAAM,UAAU,WAAW,CAAC,SAAiB,EAAE,KAAc;IAC3D,MAAM,MAAM,GAAI,SAAS,CAAC,WAAkD,CAAC,QAAQ,CAAC;IACtF,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS,IAAI,OAAO,MAAM,EAAE,SAAS,KAAK,UAAU;QAAE,OAAO,KAAK,CAAC;IAEnG,IAAI,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACjC,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,GAAG,IAAI,CAAC,MAA0C,CAAC,CAAC;QAC1D,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC9B,CAAC;IAED,MAAM,OAAO,GAAG,mBAAmB,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAC5D,IAAI,OAAO,IAAI,OAAO;QAAE,OAAO,OAAO,CAAC,KAAK,CAAC;IAE7C,MAAM,IAAI,YAAY,CAAC;QACrB,IAAI,EAAE,SAAS,CAAC,iBAAiB;QACjC,OAAO,EAAE,GAAG,SAAS,CAAC,WAAW,CAAC,IAAI,KAAK,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,OAAO,CAAC,OAAO,EAAE;KACvH,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"collector.js","sourceRoot":"","sources":["../../src/prefab/collector.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,mBAAmB,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAA4C,MAAM,iBAAiB,CAAC;AAC1H,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAEvD,MAAM,UAAU,SAAS,CAAyB,MAAS;IACzD,MAAM,aAAa;QACjB,MAAM,CAAU,QAAQ,GAAG,MAAM,CAAC;;IAGpC,OAAO,aAAa,CAAC;AACvB,CAAC;AAED,+FAA+F;AAC/F,MAAM,UAAU,cAAc,CAAC,IAAY;IACzC,OAAO,GAAG,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC;AACxC,CAAC;AAED,MAAM,OAAO,GAAG,IAAI,OAAO,EAAiB,CAAC;AAE7C;;;;GAIG;AACH,MAAM,UAAU,WAAW,CAAC,SAAiB,EAAE,KAAc;IAC3D,MAAM,MAAM,GAAI,SAAS,CAAC,WAAkD,CAAC,QAAQ,CAAC;IACtF,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS,IAAI,OAAO,MAAM,EAAE,SAAS,KAAK,UAAU;QAAE,OAAO,KAAK,CAAC;IAEnG,IAAI,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACjC,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,GAAG,IAAI,CAAC,MAAgB,CAAC,CAAC;QAChC,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC9B,CAAC;IAED,MAAM,OAAO,GAAG,mBAAmB,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAC5D,IAAI,OAAO,IAAI,OAAO;QAAE,OAAO,OAAO,CAAC,KAAK,CAAC;IAE7C,MAAM,IAAI,YAAY,CAAC;QACrB,IAAI,EAAE,SAAS,CAAC,iBAAiB;QACjC,OAAO,EAAE,GAAG,SAAS,CAAC,WAAW,CAAC,IAAI,KAAK,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,OAAO,CAAC,OAAO,EAAE;KACvH,CAAC,CAAC;AACL,CAAC"}
@@ -0,0 +1,4 @@
1
+ import type { OperationContract } from '../wire/OperationContract.js';
2
+ /** The contracts a class carries on itself — `Crud(Post)` states its five as `__ops`. */
3
+ export declare function opsOf(ctor: unknown): Record<string, OperationContract>;
4
+ //# sourceMappingURL=opsOf.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"opsOf.d.ts","sourceRoot":"","sources":["../../src/prefab/opsOf.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AAEtE,yFAAyF;AACzF,wBAAgB,KAAK,CAAC,IAAI,EAAE,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAEtE"}
@@ -0,0 +1,5 @@
1
+ /** The contracts a class carries on itself — `Crud(Post)` states its five as `__ops`. */
2
+ export function opsOf(ctor) {
3
+ return ctor.__ops ?? {};
4
+ }
5
+ //# sourceMappingURL=opsOf.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"opsOf.js","sourceRoot":"","sources":["../../src/prefab/opsOf.ts"],"names":[],"mappings":"AAEA,yFAAyF;AACzF,MAAM,UAAU,KAAK,CAAC,IAAa;IACjC,OAAQ,IAAsD,CAAC,KAAK,IAAI,EAAE,CAAC;AAC7E,CAAC"}
@@ -1,9 +1,9 @@
1
- import type { EntityConstructor } from '@fougere/schema';
1
+ import type { Entity } from '@fougere/schema';
2
2
  import type { PresenterViews } from './presenter.js';
3
3
  /** The shape a prefab was built on, or `undefined` when the class is not one. */
4
- export declare function targetOf(ctor: unknown): EntityConstructor | undefined;
4
+ export declare function targetOf(ctor: unknown): Entity | undefined;
5
5
  /** The views a prefab declares, same rule. */
6
6
  export declare function viewsOf(ctor: unknown): PresenterViews | undefined;
7
7
  /** The handler-wide view a prefab declares, same rule. */
8
- export declare function outputOf(ctor: unknown): EntityConstructor | undefined;
8
+ export declare function outputOf(ctor: unknown): Entity | undefined;
9
9
  //# sourceMappingURL=prefab.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"prefab.d.ts","sourceRoot":"","sources":["../../src/prefab/prefab.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAYrD,iFAAiF;AACjF,wBAAgB,QAAQ,CAAC,IAAI,EAAE,OAAO,GAAG,iBAAiB,GAAG,SAAS,CAErE;AAED,8CAA8C;AAC9C,wBAAgB,OAAO,CAAC,IAAI,EAAE,OAAO,GAAG,cAAc,GAAG,SAAS,CAEjE;AAED,0DAA0D;AAC1D,wBAAgB,QAAQ,CAAC,IAAI,EAAE,OAAO,GAAG,iBAAiB,GAAG,SAAS,CAErE"}
1
+ {"version":3,"file":"prefab.d.ts","sourceRoot":"","sources":["../../src/prefab/prefab.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAYrD,iFAAiF;AACjF,wBAAgB,QAAQ,CAAC,IAAI,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAE1D;AAED,8CAA8C;AAC9C,wBAAgB,OAAO,CAAC,IAAI,EAAE,OAAO,GAAG,cAAc,GAAG,SAAS,CAEjE;AAED,0DAA0D;AAC1D,wBAAgB,QAAQ,CAAC,IAAI,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAE1D"}
@@ -3,14 +3,14 @@
3
3
  *
4
4
  * Documented: [presenters](https://fougere.dev/docs/business/presenters).
5
5
  */
6
- import { type EntityConstructor } from '@fougere/schema';
6
+ import { type Entity } from '@fougere/schema';
7
7
  /**
8
8
  * The view a computed field emits — `OrderItemView` for one, `[OrderItemView]` for many.
9
9
  * A view is a schema, so it derives: `Order.pick('id', 'status')`, never a hand-written type.
10
10
  */
11
- export type PresenterViews = Record<string, EntityConstructor | [EntityConstructor]>;
11
+ export type PresenterViews = Record<string, Entity | [Entity]>;
12
12
  /** `Presenter(Order, { items: [OrderItemView] })` — the views its computed fields emit. */
13
- export declare function Presenter<E extends EntityConstructor>(entity: E, views?: PresenterViews): {
13
+ export declare function Presenter<E extends Entity>(entity: E, views?: PresenterViews): {
14
14
  new (): {};
15
15
  readonly __entity: E;
16
16
  readonly __views: PresenterViews | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"presenter.d.ts","sourceRoot":"","sources":["../../src/prefab/presenter.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAc,KAAK,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAErE;;;GAGG;AACH,MAAM,MAAM,cAAc,GAAG,MAAM,CAAC,MAAM,EAAE,iBAAiB,GAAG,CAAC,iBAAiB,CAAC,CAAC,CAAC;AAErF,2FAA2F;AAC3F,wBAAgB,SAAS,CAAC,CAAC,SAAS,iBAAiB,EAAE,MAAM,EAAE,CAAC,EAAE,KAAK,CAAC,EAAE,cAAc;;;;EAOvF;AAED,wFAAwF;AACxF,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,QAAQ,GAAG,MAAM,EAAE,CAG3D;AAED,yEAAyE;AACzE,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAErD"}
1
+ {"version":3,"file":"presenter.d.ts","sourceRoot":"","sources":["../../src/prefab/presenter.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAc,KAAK,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAE1D;;;GAGG;AACH,MAAM,MAAM,cAAc,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;AAE/D,2FAA2F;AAC3F,wBAAgB,SAAS,CAAC,CAAC,SAAS,MAAM,EAAE,MAAM,EAAE,CAAC,EAAE,KAAK,CAAC,EAAE,cAAc;;;;EAO5E;AAED,wFAAwF;AACxF,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,QAAQ,GAAG,MAAM,EAAE,CAG3D;AAED,yEAAyE;AACzE,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAErD"}
@@ -1 +1 @@
1
- {"version":3,"file":"presenter.js","sourceRoot":"","sources":["../../src/prefab/presenter.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,UAAU,EAA0B,MAAM,iBAAiB,CAAC;AAQrE,2FAA2F;AAC3F,MAAM,UAAU,SAAS,CAA8B,MAAS,EAAE,KAAsB;IACtF,MAAM,aAAa;QACjB,MAAM,CAAU,QAAQ,GAAG,MAAM,CAAC;QAClC,MAAM,CAAU,OAAO,GAAG,KAAK,CAAC;;IAGlC,OAAO,aAAa,CAAC;AACvB,CAAC;AAED,wFAAwF;AACxF,MAAM,UAAU,kBAAkB,CAAC,IAAc;IAC/C,OAAO,MAAM,CAAC,mBAAmB,CAAC,IAAI,CAAC,SAAS,CAAC;SAC9C,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,aAAa,IAAI,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,UAAU,CAAC,CAAC;AAC5F,CAAC;AAED,yEAAyE;AACzE,MAAM,UAAU,cAAc,CAAC,MAAc;IAC3C,OAAO,GAAG,UAAU,CAAC,MAAM,CAAC,WAAW,CAAC;AAC1C,CAAC"}
1
+ {"version":3,"file":"presenter.js","sourceRoot":"","sources":["../../src/prefab/presenter.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,UAAU,EAAe,MAAM,iBAAiB,CAAC;AAQ1D,2FAA2F;AAC3F,MAAM,UAAU,SAAS,CAAmB,MAAS,EAAE,KAAsB;IAC3E,MAAM,aAAa;QACjB,MAAM,CAAU,QAAQ,GAAG,MAAM,CAAC;QAClC,MAAM,CAAU,OAAO,GAAG,KAAK,CAAC;;IAGlC,OAAO,aAAa,CAAC;AACvB,CAAC;AAED,wFAAwF;AACxF,MAAM,UAAU,kBAAkB,CAAC,IAAc;IAC/C,OAAO,MAAM,CAAC,mBAAmB,CAAC,IAAI,CAAC,SAAS,CAAC;SAC9C,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,aAAa,IAAI,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,UAAU,CAAC,CAAC;AAC5F,CAAC;AAED,yEAAyE;AACzE,MAAM,UAAU,cAAc,CAAC,MAAc;IAC3C,OAAO,GAAG,UAAU,CAAC,MAAM,CAAC,WAAW,CAAC;AAC1C,CAAC"}
@@ -1,16 +1,16 @@
1
1
  import type { FougereOperations } from './FougereOperations.js';
2
- type Served = keyof FougereOperations & string;
2
+ type Generated = keyof FougereOperations & string;
3
3
  /**
4
4
  * Both halves below take the union through a type PARAMETER, which is what makes the
5
- * conditional distribute: `Served` is an alias, and an alias is matched whole — `'a.x' | 'b.y'`
5
+ * conditional distribute: `Generated` is an alias, and an alias is matched whole — `'a.x' | 'b.y'`
6
6
  * does not extend `` `${string}.${string}` `` as one thing, so the naive form answers `never`.
7
7
  */
8
8
  type AddressIn<Key> = Key extends `${infer Address}.${string}` ? Address : never;
9
9
  /**
10
10
  * The addresses this app answers at — or any string, until a scan has said otherwise. The
11
- * `[Served] extends [never]` form is what keeps an ungenerated project compiling: a bare `never`
11
+ * `[Generated] extends [never]` form is what keeps an ungenerated project compiling: a bare `never`
12
12
  * in a parameter position refuses every call, the correct ones included.
13
13
  */
14
- export type Addresses = [Served] extends [never] ? string : AddressIn<Served>;
14
+ export type Addresses = [Generated] extends [never] ? string : AddressIn<Generated>;
15
15
  export {};
16
16
  //# sourceMappingURL=Addresses.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Addresses.d.ts","sourceRoot":"","sources":["../../src/wire/Addresses.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAEhE,KAAK,MAAM,GAAG,MAAM,iBAAiB,GAAG,MAAM,CAAC;AAE/C;;;;GAIG;AACH,KAAK,SAAS,CAAC,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,OAAO,IAAI,MAAM,EAAE,GAAG,OAAO,GAAG,KAAK,CAAC;AAEjF;;;;GAIG;AACH,MAAM,MAAM,SAAS,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC"}
1
+ {"version":3,"file":"Addresses.d.ts","sourceRoot":"","sources":["../../src/wire/Addresses.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAEhE,KAAK,SAAS,GAAG,MAAM,iBAAiB,GAAG,MAAM,CAAC;AAElD;;;;GAIG;AACH,KAAK,SAAS,CAAC,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,OAAO,IAAI,MAAM,EAAE,GAAG,OAAO,GAAG,KAAK,CAAC;AAEjF;;;;GAIG;AACH,MAAM,MAAM,SAAS,GAAG,CAAC,SAAS,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,MAAM,GAAG,SAAS,CAAC,SAAS,CAAC,CAAC"}
@@ -0,0 +1,4 @@
1
+ /** How MUCH an operation answers — the half of a return type that a view cannot say. */
2
+ export declare const CARDINALITIES: readonly ["one", "maybe", "many", "page", "none"];
3
+ export type Cardinality = (typeof CARDINALITIES)[number];
4
+ //# sourceMappingURL=Cardinality.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Cardinality.d.ts","sourceRoot":"","sources":["../../src/wire/Cardinality.ts"],"names":[],"mappings":"AAAA,wFAAwF;AACxF,eAAO,MAAM,aAAa,mDAAoD,CAAC;AAE/E,MAAM,MAAM,WAAW,GAAG,CAAC,OAAO,aAAa,CAAC,CAAC,MAAM,CAAC,CAAC"}
@@ -0,0 +1,3 @@
1
+ /** How MUCH an operation answers — the half of a return type that a view cannot say. */
2
+ export const CARDINALITIES = ['one', 'maybe', 'many', 'page', 'none'];
3
+ //# sourceMappingURL=Cardinality.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Cardinality.js","sourceRoot":"","sources":["../../src/wire/Cardinality.ts"],"names":[],"mappings":"AAAA,wFAAwF;AACxF,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAU,CAAC"}
@@ -5,6 +5,7 @@ import type { TypeRef } from './TypeRef.js';
5
5
  import type { ErrorCode } from './ErrorCode.js';
6
6
  import type { OperationKind } from './OperationKind.js';
7
7
  import type { OperationKindInference } from './OperationKindInference.js';
8
+ import type { Cardinality } from './Cardinality.js';
8
9
  /** The contract of one operation — everything the façade needs to serve a call. */
9
10
  export interface OperationContract {
10
11
  /** Judged on the way in. The view carries its own mode (`partial()` → patch). */
@@ -16,7 +17,7 @@ export interface OperationContract {
16
17
  /** The operation in words, for a caller that meets it over the wire and has to choose. */
17
18
  description?: string;
18
19
  /** How MUCH comes back — the half of the return type that `output` cannot say. */
19
- cardinality?: 'one' | 'maybe' | 'many' | 'page' | 'none';
20
+ cardinality?: Cardinality;
20
21
  /** The argument names and TYPES — the one thing `binding` cannot say. */
21
22
  signature?: Signature;
22
23
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"OperationContract.d.ts","sourceRoot":"","sources":["../../src/wire/OperationContract.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AAE1E,mFAAmF;AACnF,MAAM,WAAW,iBAAiB;IAChC,iFAAiF;IACjF,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,gCAAgC;IAChC,MAAM,CAAC,EAAE,UAAU,CAAC;IACpB,0DAA0D;IAC1D,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,0FAA0F;IAC1F,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,kFAAkF;IAClF,WAAW,CAAC,EAAE,KAAK,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;IACzD,yEAAyE;IACzE,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB;;;;;;;OAOG;IACH,MAAM,CAAC,EAAE,SAAS,EAAE,CAAC;CACtB;AAED,2DAA2D;AAC3D,wBAAgB,aAAa,CAAC,IAAI,EAAE,OAAO,GAAG,SAAS,GAAG,iBAAiB,CAAC,aAAa,CAAC,CASzF;AA0BD,oFAAoF;AACpF,wBAAgB,UAAU,IAAI;IAAE,KAAK,EAAE,MAAM,EAAE,CAAC;IAAC,OAAO,EAAE,MAAM,EAAE,CAAA;CAAE,CAEnE;AAYD;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,sBAAsB,CA4BvE;AAUD;;;GAGG;AACH,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAE9C;AAED,sFAAsF;AACtF,wBAAgB,eAAe,CAC7B,IAAI,EAAE,MAAM,EACZ,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE;IAAE,IAAI,CAAC,EAAE,aAAa,CAAA;CAAE,CAAC,GACnD,OAAO,CAET"}
1
+ {"version":3,"file":"OperationContract.d.ts","sourceRoot":"","sources":["../../src/wire/OperationContract.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AAC1E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAEpD,mFAAmF;AACnF,MAAM,WAAW,iBAAiB;IAChC,iFAAiF;IACjF,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,gCAAgC;IAChC,MAAM,CAAC,EAAE,UAAU,CAAC;IACpB,0DAA0D;IAC1D,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,0FAA0F;IAC1F,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,kFAAkF;IAClF,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,yEAAyE;IACzE,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB;;;;;;;OAOG;IACH,MAAM,CAAC,EAAE,SAAS,EAAE,CAAC;CACtB;AAED,2DAA2D;AAC3D,wBAAgB,aAAa,CAAC,IAAI,EAAE,OAAO,GAAG,SAAS,GAAG,iBAAiB,CAAC,aAAa,CAAC,CASzF;AA0BD,oFAAoF;AACpF,wBAAgB,UAAU,IAAI;IAAE,KAAK,EAAE,MAAM,EAAE,CAAC;IAAC,OAAO,EAAE,MAAM,EAAE,CAAA;CAAE,CAEnE;AAYD;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,sBAAsB,CA4BvE;AAUD;;;GAGG;AACH,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAE9C;AAED,sFAAsF;AACtF,wBAAgB,eAAe,CAC7B,IAAI,EAAE,MAAM,EACZ,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE;IAAE,IAAI,CAAC,EAAE,aAAa,CAAA;CAAE,CAAC,GACnD,OAAO,CAET"}