@fougere/core 0.16.8-alpha.0 → 0.17.1-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 (174) hide show
  1. package/README.md +1 -1
  2. package/dist/CallIdentity.js +2 -2
  3. package/dist/CallIdentity.js.map +1 -1
  4. package/dist/Declared.d.ts +2 -0
  5. package/dist/Declared.d.ts.map +1 -1
  6. package/dist/FrondDeclaration.d.ts.map +1 -1
  7. package/dist/FrondDeclaration.js +1 -0
  8. package/dist/FrondDeclaration.js.map +1 -1
  9. package/dist/boot/App.d.ts +4 -4
  10. package/dist/boot/App.d.ts.map +1 -1
  11. package/dist/boot/AppLifecycle.d.ts +2 -2
  12. package/dist/boot/AppLifecycle.js +3 -3
  13. package/dist/boot/AppLifecycle.js.map +1 -1
  14. package/dist/boot/bootstrap.d.ts.map +1 -1
  15. package/dist/boot/bootstrap.js +27 -28
  16. package/dist/boot/bootstrap.js.map +1 -1
  17. package/dist/boot/card.d.ts.map +1 -1
  18. package/dist/boot/card.js +30 -29
  19. package/dist/boot/card.js.map +1 -1
  20. package/dist/boot/install.d.ts +1 -1
  21. package/dist/boot/install.d.ts.map +1 -1
  22. package/dist/boot/install.js +15 -7
  23. package/dist/boot/install.js.map +1 -1
  24. package/dist/boot/peerOver.js +2 -2
  25. package/dist/boot/peerOver.js.map +1 -1
  26. package/dist/boot/ports.d.ts +2 -0
  27. package/dist/boot/ports.d.ts.map +1 -1
  28. package/dist/boot/ports.js +2 -0
  29. package/dist/boot/ports.js.map +1 -1
  30. package/dist/boot/remote.d.ts +7 -5
  31. package/dist/boot/remote.d.ts.map +1 -1
  32. package/dist/boot/remote.js +42 -29
  33. package/dist/boot/remote.js.map +1 -1
  34. package/dist/contract.d.ts +2 -2
  35. package/dist/contract.d.ts.map +1 -1
  36. package/dist/contract.js +3 -3
  37. package/dist/contract.js.map +1 -1
  38. package/dist/descriptor/ProviderEntry.d.ts +5 -0
  39. package/dist/descriptor/ProviderEntry.d.ts.map +1 -1
  40. package/dist/descriptor/bases.d.ts +7 -1
  41. package/dist/descriptor/bases.d.ts.map +1 -1
  42. package/dist/descriptor/bases.js +21 -5
  43. package/dist/descriptor/bases.js.map +1 -1
  44. package/dist/dispatch/ArgumentResolver.d.ts +7 -0
  45. package/dist/dispatch/ArgumentResolver.d.ts.map +1 -1
  46. package/dist/dispatch/ArgumentResolver.js +45 -12
  47. package/dist/dispatch/ArgumentResolver.js.map +1 -1
  48. package/dist/dispatch/Dispatcher.js +1 -1
  49. package/dist/dispatch/Dispatcher.js.map +1 -1
  50. package/dist/dispatch/HandlerFacade.d.ts.map +1 -1
  51. package/dist/dispatch/HandlerFacade.js +9 -8
  52. package/dist/dispatch/HandlerFacade.js.map +1 -1
  53. package/dist/dispatch/InFlight.d.ts +1 -1
  54. package/dist/dispatch/InFlight.d.ts.map +1 -1
  55. package/dist/dispatch/InFlight.js +2 -2
  56. package/dist/dispatch/InFlight.js.map +1 -1
  57. package/dist/dispatch/LocalRoutePolicy.d.ts.map +1 -1
  58. package/dist/dispatch/LocalRoutePolicy.js +7 -7
  59. package/dist/dispatch/LocalRoutePolicy.js.map +1 -1
  60. package/dist/dispatch/PresenterExecutor.d.ts +1 -3
  61. package/dist/dispatch/PresenterExecutor.d.ts.map +1 -1
  62. package/dist/dispatch/PresenterExecutor.js +1 -7
  63. package/dist/dispatch/PresenterExecutor.js.map +1 -1
  64. package/dist/dispatch/Release.js +0 -2
  65. package/dist/dispatch/Release.js.map +1 -1
  66. package/dist/dispatch/RouteRegistry.d.ts +1 -1
  67. package/dist/dispatch/RouteRegistry.d.ts.map +1 -1
  68. package/dist/dispatch/RouteRegistry.js +3 -3
  69. package/dist/dispatch/RouteRegistry.js.map +1 -1
  70. package/dist/dispatch/StorageGuard.d.ts.map +1 -1
  71. package/dist/dispatch/StorageGuard.js +3 -9
  72. package/dist/dispatch/StorageGuard.js.map +1 -1
  73. package/dist/dispatch/remoteRoutes.d.ts +1 -1
  74. package/dist/dispatch/remoteRoutes.d.ts.map +1 -1
  75. package/dist/dispatch/remoteRoutes.js +1 -1
  76. package/dist/dispatch/remoteRoutes.js.map +1 -1
  77. package/dist/dispatch/routeNotFound.d.ts.map +1 -1
  78. package/dist/dispatch/routeNotFound.js +6 -5
  79. package/dist/dispatch/routeNotFound.js.map +1 -1
  80. package/dist/dispatch/validateInput.d.ts +1 -1
  81. package/dist/dispatch/validateInput.d.ts.map +1 -1
  82. package/dist/dispatch/validateInput.js +1 -3
  83. package/dist/dispatch/validateInput.js.map +1 -1
  84. package/dist/entry/facade.d.ts +1 -1
  85. package/dist/entry/facade.d.ts.map +1 -1
  86. package/dist/entry/facade.js +2 -2
  87. package/dist/entry/facade.js.map +1 -1
  88. package/dist/entry/transport.js +1 -1
  89. package/dist/entry/transport.js.map +1 -1
  90. package/dist/index.d.ts +1 -1
  91. package/dist/index.d.ts.map +1 -1
  92. package/dist/index.js +1 -1
  93. package/dist/index.js.map +1 -1
  94. package/dist/wire/CallRecord.d.ts +1 -1
  95. package/dist/wire/CallRecord.d.ts.map +1 -1
  96. package/dist/wire/FougereError.d.ts +8 -3
  97. package/dist/wire/FougereError.d.ts.map +1 -1
  98. package/dist/wire/FougereError.js +13 -4
  99. package/dist/wire/FougereError.js.map +1 -1
  100. package/dist/wire/FougereErrorOptions.d.ts +1 -1
  101. package/dist/wire/FougereErrorOptions.d.ts.map +1 -1
  102. package/dist/wire/FrondCall.d.ts +2 -2
  103. package/dist/wire/FrondCall.d.ts.map +1 -1
  104. package/dist/wire/OperationContext.d.ts +2 -2
  105. package/dist/wire/OperationContext.d.ts.map +1 -1
  106. package/dist/wire/RouteAddress.d.ts +1 -1
  107. package/dist/wire/RouteAddress.d.ts.map +1 -1
  108. package/dist/wire/RouteAddress.js +5 -5
  109. package/dist/wire/RouteAddress.js.map +1 -1
  110. package/dist/wire/RouteAddressInput.d.ts +1 -1
  111. package/dist/wire/RouteAddressInput.d.ts.map +1 -1
  112. package/dist/wire/RpcAnswer.d.ts +1 -1
  113. package/dist/wire/RpcAnswer.d.ts.map +1 -1
  114. package/dist/wire/RpcAnswer.js +1 -1
  115. package/dist/wire/RpcAnswer.js.map +1 -1
  116. package/dist/wire/SignedCall.d.ts +1 -1
  117. package/dist/wire/SignedCall.d.ts.map +1 -1
  118. package/dist/wire/StateShape.d.ts +1 -1
  119. package/dist/wire/StateShape.d.ts.map +1 -1
  120. package/dist/wire/StateShape.js +2 -2
  121. package/dist/wire/StateShape.js.map +1 -1
  122. package/dist/wire/card/IdentityCard.d.ts +10 -3
  123. package/dist/wire/card/IdentityCard.d.ts.map +1 -1
  124. package/dist/wire/card/IdentityCard.js +3 -1
  125. package/dist/wire/card/IdentityCard.js.map +1 -1
  126. package/dist/wire/drift.d.ts +2 -1
  127. package/dist/wire/drift.d.ts.map +1 -1
  128. package/dist/wire/drift.js +19 -16
  129. package/dist/wire/drift.js.map +1 -1
  130. package/dist/wire/http-error.js +2 -2
  131. package/dist/wire/http-error.js.map +1 -1
  132. package/package.json +3 -3
  133. package/src/CallIdentity.ts +2 -2
  134. package/src/Declared.ts +2 -0
  135. package/src/FrondDeclaration.ts +1 -0
  136. package/src/boot/App.ts +4 -4
  137. package/src/boot/AppLifecycle.ts +3 -3
  138. package/src/boot/bootstrap.ts +29 -30
  139. package/src/boot/card.ts +38 -29
  140. package/src/boot/install.ts +14 -8
  141. package/src/boot/peerOver.ts +2 -2
  142. package/src/boot/ports.ts +3 -0
  143. package/src/boot/remote.ts +52 -36
  144. package/src/contract.ts +3 -3
  145. package/src/descriptor/ProviderEntry.ts +5 -0
  146. package/src/descriptor/bases.ts +21 -5
  147. package/src/dispatch/ArgumentResolver.ts +49 -10
  148. package/src/dispatch/Dispatcher.ts +1 -1
  149. package/src/dispatch/HandlerFacade.ts +9 -10
  150. package/src/dispatch/InFlight.ts +2 -2
  151. package/src/dispatch/LocalRoutePolicy.ts +7 -7
  152. package/src/dispatch/PresenterExecutor.ts +0 -4
  153. package/src/dispatch/Release.ts +0 -2
  154. package/src/dispatch/RouteRegistry.ts +3 -3
  155. package/src/dispatch/StorageGuard.ts +3 -9
  156. package/src/dispatch/remoteRoutes.ts +2 -2
  157. package/src/dispatch/routeNotFound.ts +6 -5
  158. package/src/dispatch/validateInput.ts +0 -4
  159. package/src/entry/facade.ts +2 -2
  160. package/src/entry/transport.ts +1 -1
  161. package/src/index.ts +1 -1
  162. package/src/wire/CallRecord.ts +1 -1
  163. package/src/wire/FougereError.ts +16 -5
  164. package/src/wire/FougereErrorOptions.ts +1 -1
  165. package/src/wire/FrondCall.ts +2 -2
  166. package/src/wire/OperationContext.ts +2 -2
  167. package/src/wire/RouteAddress.ts +5 -5
  168. package/src/wire/RouteAddressInput.ts +1 -1
  169. package/src/wire/RpcAnswer.ts +1 -1
  170. package/src/wire/SignedCall.ts +1 -1
  171. package/src/wire/StateShape.ts +2 -2
  172. package/src/wire/card/IdentityCard.ts +9 -7
  173. package/src/wire/drift.ts +22 -27
  174. package/src/wire/http-error.ts +2 -2
@@ -10,7 +10,7 @@ import { targetOf } from '../prefab/prefab.js';
10
10
  import { ownersOf, sharedNames, storageInUserCode, crudOnOwned } from './ownership.js';
11
11
  import { refuseArityDrift } from './arity.js';
12
12
  import { StorageGuard } from '../dispatch/StorageGuard.js';
13
- import { portBindings, seamChains, wrapping, SEAMS } from './ports.js';
13
+ import { heldKeyOf, portBindings, seamChains, wrapping, SEAMS } from './ports.js';
14
14
  import { contractsKeyOf, facadeKeyOf } from '../wire/Facade.js';
15
15
  import { inheritsCrud, subjectOf } from '../prefab/CrudConstructor.js';
16
16
  import { repositoryKeyOf } from '../prefab/RepositoryConstructor.js';
@@ -191,17 +191,25 @@ function registerProviders(frond, scope, ports, boundPorts, refused, ownLogger,
191
191
  // Registered from the INSIDE OUT, each wrapper asking for the one it stands in front
192
192
  // of: the container resolves a dep by NAME, so wrapping is a substituted key and
193
193
  // needs nothing of the container itself. The outermost answers under the port.
194
- let inner = nameOf(chain.at(-1));
195
- for (const wrapper of chain.slice(0, -1).reverse()) {
194
+ const realization = chain.at(-1);
195
+ const held = realization.deps.includes(port);
196
+ const wrappers = held ? chain : chain.slice(0, -1);
197
+ let inner = held ? heldKeyOf(port) : nameOf(realization);
198
+ if (held)
199
+ scope.registerValue(inner, scope.resolve(port));
200
+ for (const wrapper of wrappers.slice(1).reverse()) {
196
201
  const deps = ownLogger(nameOf(wrapper), wrapper.deps).map((dep) => (dep === port ? inner : dep));
197
202
  inner = nameOf(wrapper);
198
203
  scope.register(inner, wrapper.ctor, { deps, ...lifetimeOf(wrapper.ctor) });
199
204
  }
200
205
  const outermost = chain[0];
201
- scope.register(port, outermost.ctor, {
202
- deps: ownLogger(nameOf(outermost), outermost.deps).map((dep) => (dep === port ? nameOf(chain[1]) : dep)),
206
+ const outermostOptions = {
207
+ deps: ownLogger(nameOf(outermost), outermost.deps).map((dep) => (dep === port ? inner : dep)),
203
208
  ...lifetimeOf(outermost.ctor),
204
- });
209
+ };
210
+ if (wrappers.length > 0)
211
+ scope.register(nameOf(outermost), outermost.ctor, outermostOptions);
212
+ scope.register(port, outermost.ctor, outermostOptions);
205
213
  boundPorts.add(port);
206
214
  frondLog.debug(`port ${port} → ${chain.map((one) => one.ctor.name).join(' → ')}`);
207
215
  }
@@ -282,7 +290,7 @@ function buildFacadeInto({ frond, assembly, scope, collectorTypeNames, presenter
282
290
  for (const operation of facade.contracts.keys()) {
283
291
  for (const surface of servedSurfaces(frond, handler)) {
284
292
  routeRegistry.register(new OperationRoute('local', new RouteAddress({
285
- entity: handler.address,
293
+ address: handler.address,
286
294
  operation,
287
295
  ...(surface !== undefined ? { surface } : {}),
288
296
  }), (call) => facade.execute(operation, call.invocation)));
@@ -1 +1 @@
1
- {"version":3,"file":"install.js","sourceRoot":"","sources":["../../src/boot/install.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"install.js","sourceRoot":"","sources":["../../src/boot/install.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,8 @@
1
1
  /** The two readings core serves everywhere, asked of one process over one transport. */
2
2
  import { Invocation } from '../wire/Invocation.js';
3
- import { RPC_ENTITY } from '../wire/RpcAnswer.js';
3
+ import { RPC_ADDRESS } from '../wire/RpcAnswer.js';
4
4
  export function peerOver(transport) {
5
- const ask = (op, params) => transport({ entity: RPC_ENTITY, op }, { ...Invocation.empty, params: params });
5
+ const ask = (op, params) => transport({ address: RPC_ADDRESS, op }, { ...Invocation.empty, params: params });
6
6
  return {
7
7
  missing: async (entity, keys) => (await ask('holds', { entity, keys })).missing,
8
8
  dependents: (entity) => ask('dependents', { entity }),
@@ -1 +1 @@
1
- {"version":3,"file":"peerOver.js","sourceRoot":"","sources":["../../src/boot/peerOver.ts"],"names":[],"mappings":"AAAA,wFAAwF;AACxF,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAIlD,MAAM,UAAU,QAAQ,CAAC,SAAoB;IAC3C,MAAM,GAAG,GAAG,CAAC,EAAU,EAAE,MAA+B,EAAE,EAAE,CAC1D,SAAS,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,MAAe,EAAE,CAAC,CAAC;IAE1F,OAAO;QACL,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,CAC7B,CAAC,MAAM,GAAG,CAAC,OAAO,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAqC,CAAC,OAAO;QACrF,UAAU,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,GAAG,CAAC,YAAY,EAAE,EAAE,MAAM,EAAE,CAAC;QACrD,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE,GAAG,MAAM,GAAG,CAAC,SAAS,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;KAC7F,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"peerOver.js","sourceRoot":"","sources":["../../src/boot/peerOver.ts"],"names":[],"mappings":"AAAA,wFAAwF;AACxF,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAInD,MAAM,UAAU,QAAQ,CAAC,SAAoB;IAC3C,MAAM,GAAG,GAAG,CAAC,EAAU,EAAE,MAA+B,EAAE,EAAE,CAC1D,SAAS,CAAC,EAAE,OAAO,EAAE,WAAW,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,MAAe,EAAE,CAAC,CAAC;IAE5F,OAAO;QACL,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,CAC7B,CAAC,MAAM,GAAG,CAAC,OAAO,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAqC,CAAC,OAAO;QACrF,UAAU,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,GAAG,CAAC,YAAY,EAAE,EAAE,MAAM,EAAE,CAAC;QACrD,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE,GAAG,MAAM,GAAG,CAAC,SAAS,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;KAC7F,CAAC;AACJ,CAAC"}
@@ -16,6 +16,8 @@ import type { Diagnostic } from '../diagnostic.js';
16
16
  * Documented: [ports](https://fougere.dev/docs/business/ports).
17
17
  */
18
18
  export declare const SEAMS: Set<string>;
19
+ /** Where a chain of wrappers finds what the scope already answered under its port — a builtin's own instance. */
20
+ export declare const heldKeyOf: (port: string) => string;
19
21
  /**
20
22
  * What stands in front of each seam, outermost first — the same reading `portBindings`
21
23
  * does, with no realization to find.
@@ -1 +1 @@
1
- {"version":3,"file":"ports.d.ts","sourceRoot":"","sources":["../../src/boot/ports.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAEpE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAEnD;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,KAAK,aAAuB,CAAC;AAE1C;;;GAGG;AACH,wBAAgB,UAAU,CACxB,SAAS,EAAE,aAAa,EAAE,EAC1B,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,MAAM,EAAE,CAAC,GAAG,SAAS,EAC9D,OAAO,EAAE,UAAU,EAAE,GACpB,GAAG,CAAC,MAAM,EAAE,aAAa,EAAE,CAAC,CAwB9B;AAED,uGAAuG;AACvG,wBAAgB,QAAQ,CAAC,CAAC,SAAS,MAAM,EACvC,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,SAAS,aAAa,EAAE,EAC/B,KAAK,EAAE,CAAC,EACR,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,GACjC,CAAC,CAUH;AAED;;;;;;;;;GASG;AACH,wBAAgB,YAAY,CAC1B,SAAS,EAAE,aAAa,EAAE,EAC1B,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,EAClC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,MAAM,EAAE,CAAC,GAAG,SAAS,EAC9D,OAAO,EAAE,UAAU,EAAE,GACpB,GAAG,CAAC,MAAM,EAAE,aAAa,EAAE,CAAC,CAe9B"}
1
+ {"version":3,"file":"ports.d.ts","sourceRoot":"","sources":["../../src/boot/ports.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAEpE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAEnD;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,KAAK,aAAuB,CAAC;AAE1C,iHAAiH;AACjH,eAAO,MAAM,SAAS,GAAI,MAAM,MAAM,KAAG,MAAwB,CAAC;AAElE;;;GAGG;AACH,wBAAgB,UAAU,CACxB,SAAS,EAAE,aAAa,EAAE,EAC1B,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,MAAM,EAAE,CAAC,GAAG,SAAS,EAC9D,OAAO,EAAE,UAAU,EAAE,GACpB,GAAG,CAAC,MAAM,EAAE,aAAa,EAAE,CAAC,CAwB9B;AAED,uGAAuG;AACvG,wBAAgB,QAAQ,CAAC,CAAC,SAAS,MAAM,EACvC,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,SAAS,aAAa,EAAE,EAC/B,KAAK,EAAE,CAAC,EACR,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,GACjC,CAAC,CAUH;AAED;;;;;;;;;GASG;AACH,wBAAgB,YAAY,CAC1B,SAAS,EAAE,aAAa,EAAE,EAC1B,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,EAClC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,MAAM,EAAE,CAAC,GAAG,SAAS,EAC9D,OAAO,EAAE,UAAU,EAAE,GACpB,GAAG,CAAC,MAAM,EAAE,aAAa,EAAE,CAAC,CAe9B"}
@@ -16,6 +16,8 @@ import { basesOf } from '../descriptor/bases.js';
16
16
  * Documented: [ports](https://fougere.dev/docs/business/ports).
17
17
  */
18
18
  export const SEAMS = new Set(['Storage']);
19
+ /** Where a chain of wrappers finds what the scope already answered under its port — a builtin's own instance. */
20
+ export const heldKeyOf = (port) => `held:${port}`;
19
21
  /**
20
22
  * What stands in front of each seam, outermost first — the same reading `portBindings`
21
23
  * does, with no realization to find.
@@ -1 +1 @@
1
- {"version":3,"file":"ports.js","sourceRoot":"","sources":["../../src/boot/ports.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ports.js","sourceRoot":"","sources":["../../src/boot/ports.ts"],"names":[],"mappings":"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"}
@@ -7,17 +7,19 @@ interface Route {
7
7
  frond: string;
8
8
  transport: Transport;
9
9
  /**
10
- * The entity's schema, rebuilt from the identity card — the same `SchemaConstructor` shape
11
- * `entity({...})` produces, live validation included.
10
+ * What each operation answers, rebuilt from the identity card — the same `SchemaConstructor`
11
+ * shape `entity({...})` produces, live validation included.
12
12
  */
13
- schema?: SchemaView;
13
+ outputs: Map<string, SchemaView>;
14
14
  }
15
15
  export interface RemoteRouter {
16
- route(entity: string): Promise<Route>;
16
+ route(address: string): Promise<Route>;
17
+ /** The schema a remote STORES under an entity's name — `undefined` when none does. */
18
+ schemaOf(entity: string): Promise<SchemaView | undefined>;
17
19
  }
18
20
  export declare function createRemoteRouter(remotes: Record<string, string>, makeTransport: (url: string) => Transport): RemoteRouter;
19
21
  type Facade = Record<string, (invocation?: InvocationContext) => Promise<unknown>>;
20
22
  /** Façade-shaped stand-in — the consumer can't tell it from a local facade. */
21
- export declare function createRemoteFacade(entity: string, router: RemoteRouter, middlewaresFor: (address: string) => AppMiddleware[], shape: StateShape): Facade;
23
+ export declare function createRemoteFacade(address: string, router: RemoteRouter, middlewaresFor: (address: string) => AppMiddleware[], shape: StateShape): Facade;
22
24
  export {};
23
25
  //# sourceMappingURL=remote.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"remote.d.ts","sourceRoot":"","sources":["../../src/boot/remote.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAGtD,OAAO,EAAkB,KAAK,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAG9E,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AAGtE,OAAO,EAAQ,KAAK,UAAU,EAAyB,MAAM,iBAAiB,CAAC;AAI/E,UAAU,KAAK;IACb,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,SAAS,CAAC;IACrB;;;OAGG;IACH,MAAM,CAAC,EAAE,UAAU,CAAC;CACrB;AAED,MAAM,WAAW,YAAY;IAC3B,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;CACvC;AAED,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAC/B,aAAa,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,SAAS,GACxC,YAAY,CA4Dd;AAED,KAAK,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,UAAU,CAAC,EAAE,iBAAiB,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;AAEnF,+EAA+E;AAC/E,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,YAAY,EACpB,cAAc,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,aAAa,EAAE,EACpD,KAAK,EAAE,UAAU,GAChB,MAAM,CAqBR"}
1
+ {"version":3,"file":"remote.d.ts","sourceRoot":"","sources":["../../src/boot/remote.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAGtD,OAAO,EAAkB,KAAK,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAG9E,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AAGtE,OAAO,EAAQ,KAAK,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAIxD,UAAU,KAAK;IACb,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,SAAS,CAAC;IACrB;;;OAGG;IACH,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;CAClC;AAED,MAAM,WAAW,YAAY;IAC3B,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;IACvC,sFAAsF;IACtF,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,GAAG,SAAS,CAAC,CAAC;CAC3D;AAED,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAC/B,aAAa,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,SAAS,GACxC,YAAY,CAmEd;AAED,KAAK,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,UAAU,CAAC,EAAE,iBAAiB,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;AAEnF,+EAA+E;AAC/E,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,YAAY,EACpB,cAAc,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,aAAa,EAAE,EACpD,KAAK,EAAE,UAAU,GAChB,MAAM,CAoBR"}
@@ -1,4 +1,4 @@
1
- import { RPC_ENTITY } from '../wire/RpcAnswer.js';
1
+ import { RPC_ADDRESS } from '../wire/RpcAnswer.js';
2
2
  import { assertIdentityCard } from '../wire/card/IdentityCard.js';
3
3
  import { runMiddlewares } from '../wire/AppMiddleware.js';
4
4
  import { Invocation } from '../wire/Invocation.js';
@@ -8,9 +8,10 @@ import { Card } from '@fougere/schema';
8
8
  import { dynamicOperations } from '../entry/facade.js';
9
9
  import { decoded } from '../dispatch/decoded.js';
10
10
  export function createRemoteRouter(remotes, makeTransport) {
11
- const byEntity = new Map();
11
+ const byAddress = new Map();
12
+ const stored = new Map();
12
13
  // The remotes config key is a label for the address — the identity card is
13
- // what decides which entities live behind it.
14
+ // what decides which addresses answer behind it.
14
15
  const pending = new Map(Object.entries(remotes));
15
16
  const transports = new Map();
16
17
  /** Which remote label claimed a facade name — so a second claim can name the first. */
@@ -23,7 +24,7 @@ export function createRemoteRouter(remotes, makeTransport) {
23
24
  const transport = transports.get(url) ?? makeTransport(url);
24
25
  transports.set(url, transport);
25
26
  try {
26
- const answer = await transport({ entity: RPC_ENTITY, op: 'discover' }, Invocation.empty);
27
+ const answer = await transport({ address: RPC_ADDRESS, op: 'discover' }, Invocation.empty);
27
28
  // Judged below and not here: this catch means "unreachable, retry", and a
28
29
  // refusal thrown inside it would be swallowed into another silent retry.
29
30
  return { label, url, transport, answer };
@@ -37,50 +38,55 @@ export function createRemoteRouter(remotes, makeTransport) {
37
38
  if (!answered)
38
39
  continue;
39
40
  pending.delete(answered.label);
40
- claimFacades(answered, byEntity, claimedBy);
41
+ claimFacades(answered, byAddress, claimedBy);
42
+ storedBy(answered, stored);
41
43
  }
42
44
  };
43
45
  return {
44
- async route(entity) {
45
- if (!byEntity.has(entity) && pending.size > 0)
46
+ async schemaOf(entity) {
47
+ if (!stored.has(entity) && pending.size > 0)
46
48
  await discover();
47
- const hit = byEntity.get(entity);
49
+ return stored.get(entity);
50
+ },
51
+ async route(address) {
52
+ if (!byAddress.has(address) && pending.size > 0)
53
+ await discover();
54
+ const hit = byAddress.get(address);
48
55
  if (hit)
49
56
  return hit;
50
57
  if (pending.size > 0) {
51
58
  throw new FougereError({
52
59
  code: ErrorCode.SERVICE_UNAVAILABLE,
53
- message: `No reachable remote hosts '${entity}' — unreachable: ${[...pending.keys()].join(', ')}.\n`
60
+ message: `No reachable remote serves '${address}' — unreachable: ${[...pending.keys()].join(', ')}.\n`
54
61
  + ' Named in `remotes:`, and did not answer.',
55
- entity,
62
+ address,
56
63
  });
57
64
  }
58
65
  throw new FougereError({
59
66
  code: ErrorCode.NOT_FOUND,
60
- message: `No declared remote hosts '${entity}'.\n`
67
+ message: `No declared remote serves '${address}'.\n`
61
68
  + ' Nothing here serves it either — add its frond to `fronds:`/`scan:`, or name the frond that does in `remotes:`.',
62
- entity,
69
+ address,
63
70
  });
64
71
  },
65
72
  };
66
73
  }
67
74
  /** Façade-shaped stand-in — the consumer can't tell it from a local facade. */
68
- export function createRemoteFacade(entity, router, middlewaresFor, shape) {
75
+ export function createRemoteFacade(address, router, middlewaresFor, shape) {
69
76
  const opFn = (op) => async (received = Invocation.empty) => {
70
- const { frond, transport, schema } = await router.route(entity);
71
- const call = { frond, entity, op };
72
- const state = received.crossed ? { ...received.state } : shape.judge(received.state, entity, op);
77
+ const { frond, transport, outputs } = await router.route(address);
78
+ const call = { frond, address, op };
79
+ const state = received.crossed ? { ...received.state } : shape.judge(received.state, address, op);
73
80
  const invocation = { ...received, state };
74
81
  const entered = { ...state };
75
82
  const ctx = {
76
- entity, frond, operation: op, args: [], state, invocation, crosses: true,
83
+ address, frond, operation: op, args: [], state, invocation, crosses: true,
77
84
  };
78
- const answer = await runMiddlewares(middlewaresFor(entity), ctx, () => transport(call, { ...(ctx.invocation ?? invocation), state: shape.judge(ctx.state, entity, op, entered) }));
79
- // The schema the card carried, put to work: a row crosses as data and comes back through
80
- // the same codecs a local facade applies, so a placement does not decide what a caller
81
- // holds. It is the ENTITY's — an op serving a narrower view is the far side's business,
82
- // and what this card names is the shape it publishes.
83
- return decoded(schema, answer);
85
+ const answer = await runMiddlewares(middlewaresFor(address), ctx, () => transport(call, { ...(ctx.invocation ?? invocation), state: shape.judge(ctx.state, address, op, entered) }))
86
+ .catch((error) => { throw error instanceof FougereError ? error.at(address, op) : error; });
87
+ // What the op says it answers, put to work: a row crosses as data and comes back through
88
+ // the same codecs a local facade applies, so a placement does not decide what a caller holds.
89
+ return decoded(outputs.get(op), answer);
84
90
  };
85
91
  return dynamicOperations(opFn);
86
92
  }
@@ -89,7 +95,7 @@ export function createRemoteFacade(entity, router, middlewaresFor, shape) {
89
95
  * arrives — so adding one here would answer a call with a transport to a facade that does not
90
96
  * exist. Two remotes claiming one name is refused, never silently arbitrated.
91
97
  */
92
- function claimFacades({ label, url, transport, answer }, byEntity, claimedBy) {
98
+ function claimFacades({ label, url, transport, answer }, byAddress, claimedBy) {
93
99
  const card = assertIdentityCard(answer, `Remote '${label}' (${url})`);
94
100
  for (const frond of card.fronds) {
95
101
  for (const facade of frond.facades) {
@@ -98,19 +104,26 @@ function claimFacades({ label, url, transport, answer }, byEntity, claimedBy) {
98
104
  throw new FougereError({
99
105
  code: ErrorCode.INTERNAL_ERROR,
100
106
  message: `[claim] Two remotes serve '${facade.name}': '${first}' and '${label}'.\n`
101
- + ` A call names an entity, not a frond, so nothing could choose between them.\n`
107
+ + ` A call names an address, not a frond, so nothing could choose between them.\n`
102
108
  + ` - Keep one of the two out of \`remotes:\`, or\n`
103
- + ` - expose one of them under a different entity name.`,
104
- entity: facade.name,
109
+ + ` - expose one of them under a different address.`,
110
+ address: facade.name,
105
111
  });
106
112
  }
107
113
  claimedBy.set(facade.name, label);
108
- byEntity.set(facade.name, {
114
+ byAddress.set(facade.name, {
109
115
  frond: frond.name,
110
116
  transport,
111
- ...(facade.schema ? { schema: Card.fromDescriptor(facade.schema).toSchema() } : {}),
117
+ outputs: new Map(facade.ops.flatMap((op) => op.output ? [[op.name, Card.fromDescriptor(op.output).toSchema()]] : [])),
112
118
  });
113
119
  }
114
120
  }
115
121
  }
122
+ /** What each remote stores, by entity name — what `schemaFor` answers for a row kept elsewhere. */
123
+ function storedBy({ label, url, answer }, stored) {
124
+ for (const frond of assertIdentityCard(answer, `Remote '${label}' (${url})`).fronds) {
125
+ for (const entity of frond.entities)
126
+ stored.set(entity.name, Card.fromDescriptor(entity.schema).toSchema());
127
+ }
128
+ }
116
129
  //# sourceMappingURL=remote.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"remote.js","sourceRoot":"","sources":["../../src/boot/remote.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"remote.js","sourceRoot":"","sources":["../../src/boot/remote.ts"],"names":[],"mappings":"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"}
@@ -14,7 +14,7 @@ export type { FrondCall } from './wire/FrondCall.js';
14
14
  export type { SignedCall } from './wire/SignedCall.js';
15
15
  export type { Transport } from './wire/Transport.js';
16
16
  export { ENVELOPE_BYTES, maxBodyBytes, maxFrameBytes, setMaxBodyBytes } from './wire/BodyLimit.js';
17
- export { RPC_ENTITY } from './wire/RpcAnswer.js';
17
+ export { RPC_ADDRESS } from './wire/RpcAnswer.js';
18
18
  export type { CallPage } from './wire/CallPage.js';
19
19
  export { pageOf, asPage, type Page } from './wire/Page.js';
20
20
  export type { CallRecord } from './wire/CallRecord.js';
@@ -50,7 +50,7 @@ export interface CallValue {
50
50
  }
51
51
  /**
52
52
  * Fabricate the call value — one designation, two spellings: `callValueOf(Post, 'list', { query
53
- * })` (class + verb) or `callValueOf({ entity, op }, input)` (raw, for dynamic bridges).
53
+ * })` (class + verb) or `callValueOf({ address, op }, input)` (raw, for dynamic bridges).
54
54
  */
55
55
  export declare function callValueOf(target: {
56
56
  name: string;
@@ -1 +1 @@
1
- {"version":3,"file":"contract.d.ts","sourceRoot":"","sources":["../src/contract.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"contract.d.ts","sourceRoot":"","sources":["../src/contract.ts"],"names":[],"mappings":"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"}
package/dist/contract.js CHANGED
@@ -18,7 +18,7 @@ export { RouteAddress } from './wire/RouteAddress.js';
18
18
  export { ENVELOPE_BYTES, maxBodyBytes, maxFrameBytes, setMaxBodyBytes } from './wire/BodyLimit.js';
19
19
  // The reserved entity, VALUE and not type: a consumer that wants to leave it alone — a
20
20
  // call log ignoring its own reader — has to be able to name it.
21
- export { RPC_ENTITY } from './wire/RpcAnswer.js';
21
+ export { RPC_ADDRESS } from './wire/RpcAnswer.js';
22
22
  export { pageOf, asPage } from './wire/Page.js';
23
23
  // The comparison of two cards, which a consumer runs about a producer — browser-safe on
24
24
  // purpose: a panel showing the drift holds only the two cards, never the app.
@@ -31,11 +31,11 @@ export { decoded } from './dispatch/decoded.js';
31
31
  export { lowerFirst } from '@fougere/schema';
32
32
  /**
33
33
  * Fabricate the call value — one designation, two spellings: `callValueOf(Post, 'list', { query
34
- * })` (class + verb) or `callValueOf({ entity, op }, input)` (raw, for dynamic bridges).
34
+ * })` (class + verb) or `callValueOf({ address, op }, input)` (raw, for dynamic bridges).
35
35
  */
36
36
  export function callValueOf(target, opOrInput, input) {
37
37
  const [call, given] = typeof opOrInput === 'string'
38
- ? [{ entity: lowerFirst(target.name), op: opOrInput }, input]
38
+ ? [{ address: lowerFirst(target.name), op: opOrInput }, input]
39
39
  : [target, opOrInput];
40
40
  return { call, invocation: Invocation.from(given) };
41
41
  }
@@ -1 +1 @@
1
- {"version":3,"file":"contract.js","sourceRoot":"","sources":["../src/contract.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAIlD,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC1E,qFAAqF;AACrF,uEAAuE;AACvE,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAEtE,mFAAmF;AACnF,sFAAsF;AACtF,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAGlD,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AACtC,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAItD,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACnG,uFAAuF;AACvF,gEAAgE;AAChE,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEjD,OAAO,EAAE,MAAM,EAAE,MAAM,EAAa,MAAM,gBAAgB,CAAC;AAE3D,wFAAwF;AACxF,8EAA8E;AAC9E,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAG3D,mCAAmC;AACnC,OAAO,EAAE,UAAU,EAAkB,MAAM,oBAAoB,CAAC;AAkBhE,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AACjE,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAEhD,6DAA6D;AAC7D,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAQ7C;;;GAGG;AACH,MAAM,UAAU,WAAW,CACzB,MAAoC,EACpC,SAA+C,EAC/C,KAAkC;IAElC,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,GACjB,OAAO,SAAS,KAAK,QAAQ;QAC3B,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,UAAU,CAAE,MAA2B,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,KAAK,CAAC;QACnF,CAAC,CAAC,CAAC,MAAmB,EAAE,SAAS,CAAC,CAAC;IAEvC,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;AACtD,CAAC"}
1
+ {"version":3,"file":"contract.js","sourceRoot":"","sources":["../src/contract.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAIlD,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC1E,qFAAqF;AACrF,uEAAuE;AACvE,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAEtE,mFAAmF;AACnF,sFAAsF;AACtF,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAGlD,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AACtC,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAItD,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACnG,uFAAuF;AACvF,gEAAgE;AAChE,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAElD,OAAO,EAAE,MAAM,EAAE,MAAM,EAAa,MAAM,gBAAgB,CAAC;AAE3D,wFAAwF;AACxF,8EAA8E;AAC9E,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAG3D,mCAAmC;AACnC,OAAO,EAAE,UAAU,EAAkB,MAAM,oBAAoB,CAAC;AAkBhE,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AACjE,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAEhD,6DAA6D;AAC7D,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAQ7C;;;GAGG;AACH,MAAM,UAAU,WAAW,CACzB,MAAoC,EACpC,SAA+C,EAC/C,KAAkC;IAElC,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,GACjB,OAAO,SAAS,KAAK,QAAQ;QAC3B,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,UAAU,CAAE,MAA2B,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,KAAK,CAAC;QACpF,CAAC,CAAC,CAAC,MAAmB,EAAE,SAAS,CAAC,CAAC;IAEvC,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;AACtD,CAAC"}
@@ -15,5 +15,10 @@ export interface ProviderEntry {
15
15
  deps: string[];
16
16
  /** Absolute file path (for debugging). */
17
17
  filePath: string;
18
+ /**
19
+ * What the source said and the runtime erased: a port, which a class below answers for and
20
+ * nothing may instantiate — never a candidate for the ports above it.
21
+ */
22
+ abstract?: true;
18
23
  }
19
24
  //# sourceMappingURL=ProviderEntry.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ProviderEntry.d.ts","sourceRoot":"","sources":["../../src/descriptor/ProviderEntry.ts"],"names":[],"mappings":"AAAA,8FAA8F;AAC9F,MAAM,WAAW,aAAa;IAC5B;;;;;;;OAOG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,0DAA0D;IAC1D,IAAI,EAAE,KAAK,GAAG,IAAI,EAAE,KAAK,EAAE,KAAK,OAAO,CAAC;IACxC,yDAAyD;IACzD,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,0CAA0C;IAC1C,QAAQ,EAAE,MAAM,CAAC;CAClB"}
1
+ {"version":3,"file":"ProviderEntry.d.ts","sourceRoot":"","sources":["../../src/descriptor/ProviderEntry.ts"],"names":[],"mappings":"AAAA,8FAA8F;AAC9F,MAAM,WAAW,aAAa;IAC5B;;;;;;;OAOG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,0DAA0D;IAC1D,IAAI,EAAE,KAAK,GAAG,IAAI,EAAE,KAAK,EAAE,KAAK,OAAO,CAAC;IACxC,yDAAyD;IACzD,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,0CAA0C;IAC1C,QAAQ,EAAE,MAAM,CAAC;IACjB;;;OAGG;IACH,QAAQ,CAAC,EAAE,IAAI,CAAC;CACjB"}
@@ -1,12 +1,18 @@
1
1
  import { type ProviderEntry } from './ProviderEntry.js';
2
2
  /**
3
- * Port class name → the classes that extend it, in scan order.
3
+ * Port class name → every concrete class below it, in scan order.
4
4
  *
5
5
  * ONE condition, and the caller owns it: something already answers under that name. The boot
6
6
  * asks its container, where the providers sit in the frond's scope and the builtins in its
7
7
  * parent — so a neighbour service and `Logger` both count, a framework class being a port like
8
8
  * any other, which is what makes a default overridable.
9
9
  *
10
+ * A provider is ranked under the highest ancestor that answers AND under every class it crossed
11
+ * to reach it: a class something extends is a port, declared or not. `StripePayment extends
12
+ * CardPayment extends Payment` answers both, so an abstract `CardPayment` nobody registers is
13
+ * still a key, and a DECLARED abstract one is never a candidate. A wrapper stops at the class it asks for — it stands in front of that one and
14
+ * realizes nothing above it.
15
+ *
10
16
  * It is also what excludes a prefab: a repository extends the class `Repository(Post)`
11
17
  * returned (`RepositoryBase`), and no key is ever that name.
12
18
  *
@@ -1 +1 @@
1
- {"version":3,"file":"bases.d.ts","sourceRoot":"","sources":["../../src/descriptor/bases.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAExD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,OAAO,CACrB,SAAS,EAAE,aAAa,EAAE,EAC1B,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,GACjC,GAAG,CAAC,MAAM,EAAE,aAAa,EAAE,CAAC,CAU9B"}
1
+ {"version":3,"file":"bases.d.ts","sourceRoot":"","sources":["../../src/descriptor/bases.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAExD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,OAAO,CACrB,SAAS,EAAE,aAAa,EAAE,EAC1B,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,GACjC,GAAG,CAAC,MAAM,EAAE,aAAa,EAAE,CAAC,CAQ9B"}
@@ -1,11 +1,17 @@
1
1
  /**
2
- * Port class name → the classes that extend it, in scan order.
2
+ * Port class name → every concrete class below it, in scan order.
3
3
  *
4
4
  * ONE condition, and the caller owns it: something already answers under that name. The boot
5
5
  * asks its container, where the providers sit in the frond's scope and the builtins in its
6
6
  * parent — so a neighbour service and `Logger` both count, a framework class being a port like
7
7
  * any other, which is what makes a default overridable.
8
8
  *
9
+ * A provider is ranked under the highest ancestor that answers AND under every class it crossed
10
+ * to reach it: a class something extends is a port, declared or not. `StripePayment extends
11
+ * CardPayment extends Payment` answers both, so an abstract `CardPayment` nobody registers is
12
+ * still a key, and a DECLARED abstract one is never a candidate. A wrapper stops at the class it asks for — it stands in front of that one and
13
+ * realizes nothing above it.
14
+ *
9
15
  * It is also what excludes a prefab: a repository extends the class `Repository(Post)`
10
16
  * returned (`RepositoryBase`), and no key is ever that name.
11
17
  *
@@ -15,12 +21,22 @@
15
21
  export function basesOf(providers, answers) {
16
22
  const bases = new Map();
17
23
  for (const provider of providers) {
18
- const base = Object.getPrototypeOf(provider.ctor);
19
- const port = base?.name;
20
- if (!port || !answers(port))
24
+ if (provider.abstract)
21
25
  continue;
22
- bases.set(port, [...(bases.get(port) ?? []), provider]);
26
+ for (const port of portsOf(provider, answers))
27
+ bases.set(port, [...(bases.get(port) ?? []), provider]);
23
28
  }
24
29
  return bases;
25
30
  }
31
+ /** The ancestors a provider answers under, nearest first, up to the last one that answers. */
32
+ function portsOf(provider, answers) {
33
+ const crossed = [];
34
+ for (let base = Object.getPrototypeOf(provider.ctor); base?.name; base = Object.getPrototypeOf(base)) {
35
+ if (provider.deps.includes(base.name))
36
+ return [base.name];
37
+ crossed.push(base.name);
38
+ }
39
+ const last = crossed.findLastIndex(answers);
40
+ return crossed.slice(0, last + 1);
41
+ }
26
42
  //# sourceMappingURL=bases.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"bases.js","sourceRoot":"","sources":["../../src/descriptor/bases.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,OAAO,CACrB,SAA0B,EAC1B,OAAkC;IAElC,MAAM,KAAK,GAAG,IAAI,GAAG,EAA2B,CAAC;IACjD,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;QACjC,MAAM,IAAI,GAAG,MAAM,CAAC,cAAc,CAAC,QAAQ,CAAC,IAAI,CAA6B,CAAC;QAC9E,MAAM,IAAI,GAAG,IAAI,EAAE,IAAI,CAAC;QACxB,IAAI,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;YAAE,SAAS;QACtC,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC;IAC1D,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC"}
1
+ {"version":3,"file":"bases.js","sourceRoot":"","sources":["../../src/descriptor/bases.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,UAAU,OAAO,CACrB,SAA0B,EAC1B,OAAkC;IAElC,MAAM,KAAK,GAAG,IAAI,GAAG,EAA2B,CAAC;IACjD,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;QACjC,IAAI,QAAQ,CAAC,QAAQ;YAAE,SAAS;QAChC,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC;YAAE,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC;IACzG,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED,8FAA8F;AAC9F,SAAS,OAAO,CAAC,QAAuB,EAAE,OAAkC;IAC1E,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,KAAK,IAAI,IAAI,GAAG,MAAM,CAAC,cAAc,CAAC,QAAQ,CAAC,IAAI,CAA6B,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,GAAG,MAAM,CAAC,cAAc,CAAC,IAAI,CAA6B,EAAE,CAAC;QAC7J,IAAI,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC;YAAE,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC1D,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;IACD,MAAM,IAAI,GAAG,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;IAE5C,OAAO,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,CAAC,CAAC;AACpC,CAAC"}