@fougere/core 0.8.3-alpha.0 → 0.9.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 (279) hide show
  1. package/dist/boot/AppLifecycle.d.ts +8 -0
  2. package/dist/boot/AppLifecycle.d.ts.map +1 -1
  3. package/dist/boot/AppLifecycle.js.map +1 -1
  4. package/dist/boot/Emissions.d.ts +26 -0
  5. package/dist/boot/Emissions.d.ts.map +1 -1
  6. package/dist/boot/Emissions.js +144 -9
  7. package/dist/boot/Emissions.js.map +1 -1
  8. package/dist/boot/auth.d.ts +1 -1
  9. package/dist/boot/auth.d.ts.map +1 -1
  10. package/dist/boot/bootstrap.d.ts.map +1 -1
  11. package/dist/boot/bootstrap.js +401 -598
  12. package/dist/boot/bootstrap.js.map +1 -1
  13. package/dist/boot/card.js +1 -1
  14. package/dist/boot/card.js.map +1 -1
  15. package/dist/boot/hosted.d.ts +1 -1
  16. package/dist/boot/hosted.d.ts.map +1 -1
  17. package/dist/boot/hosted.js +1 -0
  18. package/dist/boot/hosted.js.map +1 -1
  19. package/dist/boot/install.d.ts +42 -0
  20. package/dist/boot/install.d.ts.map +1 -0
  21. package/dist/boot/install.js +327 -0
  22. package/dist/boot/install.js.map +1 -0
  23. package/dist/boot/ownership.d.ts +1 -1
  24. package/dist/boot/ownership.d.ts.map +1 -1
  25. package/dist/boot/ownership.js +14 -1
  26. package/dist/boot/ownership.js.map +1 -1
  27. package/dist/boot/ports.d.ts +12 -3
  28. package/dist/boot/ports.d.ts.map +1 -1
  29. package/dist/boot/ports.js +51 -21
  30. package/dist/boot/ports.js.map +1 -1
  31. package/dist/boot/remote.d.ts.map +1 -1
  32. package/dist/boot/remote.js +3 -3
  33. package/dist/boot/remote.js.map +1 -1
  34. package/dist/boot/seed.d.ts +7 -1
  35. package/dist/boot/seed.d.ts.map +1 -1
  36. package/dist/boot/seed.js +7 -2
  37. package/dist/boot/seed.js.map +1 -1
  38. package/dist/boot/statement-drift.d.ts +1 -1
  39. package/dist/boot/statement-drift.d.ts.map +1 -1
  40. package/dist/boot/together.d.ts +1 -1
  41. package/dist/boot/together.d.ts.map +1 -1
  42. package/dist/boot/together.js +1 -1
  43. package/dist/boot/together.js.map +1 -1
  44. package/dist/boot/types.d.ts +18 -3
  45. package/dist/boot/types.d.ts.map +1 -1
  46. package/dist/builtin/LogLine.d.ts +38 -0
  47. package/dist/builtin/LogLine.d.ts.map +1 -0
  48. package/dist/builtin/LogLine.js +37 -0
  49. package/dist/builtin/LogLine.js.map +1 -0
  50. package/dist/builtin/logger.d.ts +57 -0
  51. package/dist/builtin/logger.d.ts.map +1 -1
  52. package/dist/builtin/logger.js +72 -17
  53. package/dist/builtin/logger.js.map +1 -1
  54. package/dist/config-loader.d.ts +3 -2
  55. package/dist/config-loader.d.ts.map +1 -1
  56. package/dist/config-loader.js.map +1 -1
  57. package/dist/contract.d.ts +3 -7
  58. package/dist/contract.d.ts.map +1 -1
  59. package/dist/contract.js +3 -4
  60. package/dist/contract.js.map +1 -1
  61. package/dist/{scan/conventions.d.ts → conventions.d.ts} +6 -0
  62. package/dist/conventions.d.ts.map +1 -0
  63. package/dist/{scan/conventions.js → conventions.js} +3 -2
  64. package/dist/conventions.js.map +1 -0
  65. package/dist/crypto/encoding.d.ts +0 -1
  66. package/dist/crypto/encoding.d.ts.map +1 -1
  67. package/dist/crypto/encoding.js +0 -7
  68. package/dist/crypto/encoding.js.map +1 -1
  69. package/dist/declare.d.ts +11 -1
  70. package/dist/declare.d.ts.map +1 -1
  71. package/dist/declare.js +10 -1
  72. package/dist/declare.js.map +1 -1
  73. package/dist/descriptor/frond.d.ts +34 -0
  74. package/dist/descriptor/frond.d.ts.map +1 -1
  75. package/dist/descriptor/index.d.ts +15 -0
  76. package/dist/descriptor/index.d.ts.map +1 -0
  77. package/dist/descriptor/index.js +14 -0
  78. package/dist/descriptor/index.js.map +1 -0
  79. package/dist/descriptor/surface.d.ts +8 -0
  80. package/dist/descriptor/surface.d.ts.map +1 -0
  81. package/dist/descriptor/surface.js +16 -0
  82. package/dist/descriptor/surface.js.map +1 -0
  83. package/dist/dispatch/ArgumentResolver.d.ts.map +1 -1
  84. package/dist/dispatch/ArgumentResolver.js +6 -2
  85. package/dist/dispatch/ArgumentResolver.js.map +1 -1
  86. package/dist/dispatch/HandlerFacade.d.ts +2 -0
  87. package/dist/dispatch/HandlerFacade.d.ts.map +1 -1
  88. package/dist/dispatch/HandlerFacade.js +9 -4
  89. package/dist/dispatch/HandlerFacade.js.map +1 -1
  90. package/dist/dispatch/StorageGuard.d.ts.map +1 -1
  91. package/dist/dispatch/StorageGuard.js +9 -23
  92. package/dist/dispatch/StorageGuard.js.map +1 -1
  93. package/dist/dispatch/presenterArguments.d.ts +7 -1
  94. package/dist/dispatch/presenterArguments.d.ts.map +1 -1
  95. package/dist/dispatch/presenterArguments.js +15 -4
  96. package/dist/dispatch/presenterArguments.js.map +1 -1
  97. package/dist/dispatch/validateInput.d.ts.map +1 -1
  98. package/dist/dispatch/validateInput.js +2 -2
  99. package/dist/dispatch/validateInput.js.map +1 -1
  100. package/dist/effective-operation.d.ts +1 -1
  101. package/dist/effective-operation.d.ts.map +1 -1
  102. package/dist/effective-operation.js +13 -19
  103. package/dist/effective-operation.js.map +1 -1
  104. package/dist/frond-config.d.ts +24 -0
  105. package/dist/frond-config.d.ts.map +1 -1
  106. package/dist/frond-config.js.map +1 -1
  107. package/dist/index.d.ts +35 -40
  108. package/dist/index.d.ts.map +1 -1
  109. package/dist/index.js +17 -14
  110. package/dist/index.js.map +1 -1
  111. package/dist/node.d.ts +2 -12
  112. package/dist/node.d.ts.map +1 -1
  113. package/dist/node.js +2 -12
  114. package/dist/node.js.map +1 -1
  115. package/dist/prefab/crud.d.ts +1 -1
  116. package/dist/prefab/crud.d.ts.map +1 -1
  117. package/dist/prefab/mirror.d.ts +10 -11
  118. package/dist/prefab/mirror.d.ts.map +1 -1
  119. package/dist/prefab/mirror.js +1 -27
  120. package/dist/prefab/mirror.js.map +1 -1
  121. package/dist/prefab/repository.d.ts +1 -1
  122. package/dist/prefab/repository.d.ts.map +1 -1
  123. package/dist/{scan/result.d.ts → scan.d.ts} +2 -2
  124. package/dist/scan.d.ts.map +1 -0
  125. package/dist/scan.js +2 -0
  126. package/dist/scan.js.map +1 -0
  127. package/dist/source.d.ts +1 -1
  128. package/dist/source.d.ts.map +1 -1
  129. package/dist/storage/criterion.d.ts.map +1 -0
  130. package/dist/{criterion.js → storage/criterion.js} +2 -2
  131. package/dist/storage/criterion.js.map +1 -0
  132. package/dist/{storage.d.ts → storage/port.d.ts} +6 -3
  133. package/dist/storage/port.d.ts.map +1 -0
  134. package/dist/{storage.js → storage/port.js} +13 -6
  135. package/dist/storage/port.js.map +1 -0
  136. package/dist/{store.d.ts → storage/store.d.ts} +1 -1
  137. package/dist/storage/store.d.ts.map +1 -0
  138. package/dist/{store.js → storage/store.js} +33 -17
  139. package/dist/storage/store.js.map +1 -0
  140. package/dist/verify.js +1 -1
  141. package/dist/verify.js.map +1 -1
  142. package/dist/wire/Invocation.d.ts +1 -3
  143. package/dist/wire/Invocation.d.ts.map +1 -1
  144. package/dist/wire/Invocation.js +1 -5
  145. package/dist/wire/Invocation.js.map +1 -1
  146. package/dist/wire/binding.d.ts +9 -0
  147. package/dist/wire/binding.d.ts.map +1 -1
  148. package/dist/wire/binding.js +11 -6
  149. package/dist/wire/binding.js.map +1 -1
  150. package/dist/wire/emit.d.ts +45 -0
  151. package/dist/wire/emit.d.ts.map +1 -0
  152. package/dist/wire/emit.js +44 -0
  153. package/dist/wire/emit.js.map +1 -0
  154. package/dist/wire/errors.js +2 -2
  155. package/dist/wire/errors.js.map +1 -1
  156. package/dist/wire/loggerMiddleware.d.ts.map +1 -1
  157. package/dist/wire/loggerMiddleware.js +6 -0
  158. package/dist/wire/loggerMiddleware.js.map +1 -1
  159. package/package.json +10 -4
  160. package/src/boot/AppLifecycle.ts +8 -0
  161. package/src/boot/Emissions.ts +177 -9
  162. package/src/boot/auth.ts +1 -1
  163. package/src/boot/bootstrap.ts +456 -672
  164. package/src/boot/card.ts +1 -1
  165. package/src/boot/hosted.ts +4 -2
  166. package/src/boot/install.ts +421 -0
  167. package/src/boot/ownership.ts +17 -2
  168. package/src/boot/ports.ts +71 -27
  169. package/src/boot/remote.ts +3 -3
  170. package/src/boot/seed.ts +18 -3
  171. package/src/boot/statement-drift.ts +1 -1
  172. package/src/boot/together.ts +1 -1
  173. package/src/boot/types.ts +18 -3
  174. package/src/builtin/LogLine.ts +38 -0
  175. package/src/builtin/logger.ts +109 -17
  176. package/src/config-loader.ts +3 -2
  177. package/src/contract.ts +5 -9
  178. package/src/{scan/conventions.ts → conventions.ts} +9 -2
  179. package/src/crypto/encoding.ts +0 -7
  180. package/src/declare.ts +20 -2
  181. package/src/descriptor/frond.ts +31 -0
  182. package/src/descriptor/index.ts +15 -0
  183. package/src/descriptor/surface.ts +23 -0
  184. package/src/dispatch/ArgumentResolver.ts +6 -2
  185. package/src/dispatch/HandlerFacade.ts +11 -4
  186. package/src/dispatch/StorageGuard.ts +8 -21
  187. package/src/dispatch/presenterArguments.ts +21 -9
  188. package/src/dispatch/validateInput.ts +2 -2
  189. package/src/effective-operation.ts +16 -21
  190. package/src/frond-config.ts +20 -0
  191. package/src/index.ts +44 -57
  192. package/src/node.ts +2 -16
  193. package/src/prefab/crud.ts +1 -1
  194. package/src/prefab/mirror.ts +12 -38
  195. package/src/prefab/repository.ts +1 -1
  196. package/src/{scan/result.ts → scan.ts} +1 -1
  197. package/src/source.ts +1 -1
  198. package/src/{criterion.ts → storage/criterion.ts} +2 -2
  199. package/src/{storage.ts → storage/port.ts} +20 -5
  200. package/src/{store.ts → storage/store.ts} +35 -16
  201. package/src/verify.ts +1 -1
  202. package/src/wire/Invocation.ts +2 -7
  203. package/src/wire/binding.ts +17 -6
  204. package/src/wire/call.ts +1 -1
  205. package/src/wire/emit.ts +84 -0
  206. package/src/wire/errors.ts +2 -2
  207. package/src/wire/loggerMiddleware.ts +6 -0
  208. package/dist/boot/boot.d.ts +0 -45
  209. package/dist/boot/boot.d.ts.map +0 -1
  210. package/dist/boot/boot.js +0 -63
  211. package/dist/boot/boot.js.map +0 -1
  212. package/dist/criterion.d.ts.map +0 -1
  213. package/dist/criterion.js.map +0 -1
  214. package/dist/declarations.d.ts +0 -34
  215. package/dist/declarations.d.ts.map +0 -1
  216. package/dist/declarations.js +0 -75
  217. package/dist/declarations.js.map +0 -1
  218. package/dist/emit.d.ts +0 -13
  219. package/dist/emit.d.ts.map +0 -1
  220. package/dist/emit.js +0 -21
  221. package/dist/emit.js.map +0 -1
  222. package/dist/imports.d.ts +0 -16
  223. package/dist/imports.d.ts.map +0 -1
  224. package/dist/imports.js +0 -78
  225. package/dist/imports.js.map +0 -1
  226. package/dist/placement.d.ts +0 -25
  227. package/dist/placement.d.ts.map +0 -1
  228. package/dist/placement.js +0 -69
  229. package/dist/placement.js.map +0 -1
  230. package/dist/scan/adapters.d.ts +0 -3
  231. package/dist/scan/adapters.d.ts.map +0 -1
  232. package/dist/scan/adapters.js +0 -25
  233. package/dist/scan/adapters.js.map +0 -1
  234. package/dist/scan/bundling.d.ts +0 -3
  235. package/dist/scan/bundling.d.ts.map +0 -1
  236. package/dist/scan/bundling.js +0 -15
  237. package/dist/scan/bundling.js.map +0 -1
  238. package/dist/scan/contract.d.ts +0 -27
  239. package/dist/scan/contract.d.ts.map +0 -1
  240. package/dist/scan/contract.js +0 -46
  241. package/dist/scan/contract.js.map +0 -1
  242. package/dist/scan/conventions.d.ts.map +0 -1
  243. package/dist/scan/conventions.js.map +0 -1
  244. package/dist/scan/emit.d.ts +0 -10
  245. package/dist/scan/emit.d.ts.map +0 -1
  246. package/dist/scan/emit.js +0 -144
  247. package/dist/scan/emit.js.map +0 -1
  248. package/dist/scan/handler-parser.d.ts +0 -26
  249. package/dist/scan/handler-parser.d.ts.map +0 -1
  250. package/dist/scan/handler-parser.js +0 -607
  251. package/dist/scan/handler-parser.js.map +0 -1
  252. package/dist/scan/result.d.ts.map +0 -1
  253. package/dist/scan/result.js +0 -2
  254. package/dist/scan/result.js.map +0 -1
  255. package/dist/scan/scanner.d.ts +0 -12
  256. package/dist/scan/scanner.d.ts.map +0 -1
  257. package/dist/scan/scanner.js +0 -573
  258. package/dist/scan/scanner.js.map +0 -1
  259. package/dist/scan/statement.d.ts +0 -4
  260. package/dist/scan/statement.d.ts.map +0 -1
  261. package/dist/scan/statement.js +0 -135
  262. package/dist/scan/statement.js.map +0 -1
  263. package/dist/storage.d.ts.map +0 -1
  264. package/dist/storage.js.map +0 -1
  265. package/dist/store.d.ts.map +0 -1
  266. package/dist/store.js.map +0 -1
  267. package/src/boot/boot.ts +0 -110
  268. package/src/declarations.ts +0 -110
  269. package/src/emit.ts +0 -32
  270. package/src/imports.ts +0 -94
  271. package/src/placement.ts +0 -86
  272. package/src/scan/adapters.ts +0 -32
  273. package/src/scan/bundling.ts +0 -14
  274. package/src/scan/contract.ts +0 -80
  275. package/src/scan/emit.ts +0 -160
  276. package/src/scan/handler-parser.ts +0 -695
  277. package/src/scan/scanner.ts +0 -698
  278. package/src/scan/statement.ts +0 -159
  279. /package/dist/{criterion.d.ts → storage/criterion.d.ts} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"bootstrap.js","sourceRoot":"","sources":["../../src/boot/bootstrap.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bootstrap.js","sourceRoot":"","sources":["../../src/boot/bootstrap.ts"],"names":[],"mappings":"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"}
package/dist/boot/card.js CHANGED
@@ -1,6 +1,6 @@
1
1
  /** What an app says about ITSELF — the `rpc.discover` answer, built from the app. */
2
2
  import { Card } from '@fougere/schema';
3
- import { factsAnnouncedBy } from '../emit.js';
3
+ import { factsAnnouncedBy } from '../wire/emit.js';
4
4
  import { facadeKeyOf } from '../wire/call.js';
5
5
  /** Serialize what the app hosts, for one audience. */
6
6
  export function identityCardOf(app, surface) {
@@ -1 +1 @@
1
- {"version":3,"file":"card.js","sourceRoot":"","sources":["../../src/boot/card.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"card.js","sourceRoot":"","sources":["../../src/boot/card.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  /** What this app hosts — what it STATED, or what a scan FOUND. */
2
2
  import type { FrondDescriptor } from '../descriptor/frond.js';
3
- import type { ScanResult } from '../scan/result.js';
3
+ import type { ScanResult } from '../scan.js';
4
4
  /** Where an app's fronds come from — either, or both. */
5
5
  export interface HostedSources {
6
6
  /** What the app states. No disk was read, so no diagnostic can come from it. */
@@ -1 +1 @@
1
- {"version":3,"file":"hosted.d.ts","sourceRoot":"","sources":["../../src/boot/hosted.ts"],"names":[],"mappings":"AAAA,kEAAkE;AAClE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAGpD,yDAAyD;AACzD,MAAM,WAAW,aAAa;IAC5B,gFAAgF;IAChF,MAAM,CAAC,EAAE,SAAS,eAAe,EAAE,CAAC;IACpC,sDAAsD;IACtD,IAAI,CAAC,EAAE,UAAU,GAAG,CAAC,MAAM,OAAO,CAAC,UAAU,CAAC,GAAG,UAAU,CAAC,CAAC;CAC9D;AA2BD,wEAAwE;AACxE,wBAAsB,QAAQ,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,UAAU,CAAC,CAY1E"}
1
+ {"version":3,"file":"hosted.d.ts","sourceRoot":"","sources":["../../src/boot/hosted.ts"],"names":[],"mappings":"AAAA,kEAAkE;AAClE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAG7C,yDAAyD;AACzD,MAAM,WAAW,aAAa;IAC5B,gFAAgF;IAChF,MAAM,CAAC,EAAE,SAAS,eAAe,EAAE,CAAC;IACpC,sDAAsD;IACtD,IAAI,CAAC,EAAE,UAAU,GAAG,CAAC,MAAM,OAAO,CAAC,UAAU,CAAC,GAAG,UAAU,CAAC,CAAC;CAC9D;AA6BD,wEAAwE;AACxE,wBAAsB,QAAQ,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,UAAU,CAAC,CAY1E"}
@@ -16,6 +16,7 @@ function completed(given, found) {
16
16
  presenters: fill('presenters'),
17
17
  collectors: fill('collectors'),
18
18
  seeds: fill('seeds'),
19
+ middlewares: fill('middlewares'),
19
20
  };
20
21
  }
21
22
  /** What the app hosts, and what the scan — if it ran — could not do. */
@@ -1 +1 @@
1
- {"version":3,"file":"hosted.js","sourceRoot":"","sources":["../../src/boot/hosted.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AAajD,mFAAmF;AACnF,SAAS,SAAS,CAAC,KAAsB,EAAE,KAAkC;IAC3E,IAAI,CAAC,KAAK;QAAE,OAAO,KAAK,CAAC;IAEzB,qFAAqF;IACrF,sFAAsF;IACtF,sFAAsF;IACtF,MAAM,IAAI,GAAG,CAAqB,MAAS,EAAsB,EAAE,CACjE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;IAE/D,OAAO;QACL,GAAG,KAAK;QACR,GAAG,KAAK;QACR,SAAS,EAAE,IAAI,CAAC,WAAW,CAAC;QAC5B,QAAQ,EAAE,IAAI,CAAC,UAAU,CAAC;QAC1B,QAAQ,EAAE,IAAI,CAAC,UAAU,CAAC;QAC1B,UAAU,EAAE,IAAI,CAAC,YAAY,CAAC;QAC9B,UAAU,EAAE,IAAI,CAAC,YAAY,CAAC;QAC9B,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC;KACrB,CAAC;AACJ,CAAC;AAED,wEAAwE;AACxE,MAAM,CAAC,KAAK,UAAU,QAAQ,CAAC,OAAsB;IACnD,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI;QAC1B,CAAC,CAAC,MAAM,CAAC,OAAO,OAAO,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;QAC5E,CAAC,CAAC,SAAS,CAAC;IAEd,IAAI,CAAC,OAAO,CAAC,MAAM;QAAE,OAAO,OAAO,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC;IAEvF,MAAM,KAAK,GAAG,OAAO,EAAE,MAAM,IAAI,EAAE,CAAC;IACpC,MAAM,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,CAAC,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACjG,MAAM,UAAU,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,MAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;IAExF,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC,GAAG,UAAU,EAAE,GAAG,UAAU,CAAC,CAAC,EAAE,WAAW,EAAE,OAAO,EAAE,WAAW,IAAI,EAAE,EAAE,CAAC;AAC7G,CAAC"}
1
+ {"version":3,"file":"hosted.js","sourceRoot":"","sources":["../../src/boot/hosted.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AAcjD,mFAAmF;AACnF,SAAS,SAAS,CAAC,KAAsB,EAAE,KAAkC;IAC3E,IAAI,CAAC,KAAK;QAAE,OAAO,KAAK,CAAC;IAEzB,qFAAqF;IACrF,sFAAsF;IACtF,sFAAsF;IACtF,MAAM,IAAI,GAAG,CAAqB,MAAS,EAAsB,EAAE,CACjE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;IAE/D,OAAO;QACL,GAAG,KAAK;QACR,GAAG,KAAK;QACR,SAAS,EAAE,IAAI,CAAC,WAAW,CAAC;QAC5B,QAAQ,EAAE,IAAI,CAAC,UAAU,CAAC;QAC1B,QAAQ,EAAE,IAAI,CAAC,UAAU,CAAC;QAC1B,UAAU,EAAE,IAAI,CAAC,YAAY,CAAC;QAC9B,UAAU,EAAE,IAAI,CAAC,YAAY,CAAC;QAC9B,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC;QACpB,WAAW,EAAE,IAAI,CAAC,aAAa,CAAC;KACjC,CAAC;AACJ,CAAC;AAED,wEAAwE;AACxE,MAAM,CAAC,KAAK,UAAU,QAAQ,CAAC,OAAsB;IACnD,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI;QAC1B,CAAC,CAAC,MAAM,CAAC,OAAO,OAAO,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;QAC5E,CAAC,CAAC,SAAS,CAAC;IAEd,IAAI,CAAC,OAAO,CAAC,MAAM;QAAE,OAAO,OAAO,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC;IAEvF,MAAM,KAAK,GAAG,OAAO,EAAE,MAAM,IAAI,EAAE,CAAC;IACpC,MAAM,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,CAAC,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACjG,MAAM,UAAU,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,MAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;IAExF,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC,GAAG,UAAU,EAAE,GAAG,UAAU,CAAC,CAAC,EAAE,WAAW,EAAE,OAAO,EAAE,WAAW,IAAI,EAAE,EAAE,CAAC;AAC7G,CAAC"}
@@ -0,0 +1,42 @@
1
+ /** Putting one frond into the app being built: its scope, what it serves, what it takes. */
2
+ import type { Container } from '@fougere/container';
3
+ import { type SchemaView } from '@fougere/schema';
4
+ import type { Logger } from '../builtin/logger.js';
5
+ import type { Dispatcher } from '../dispatch/Dispatcher.js';
6
+ import type { RouteRegistry } from '../dispatch/RouteRegistry.js';
7
+ import type { Emissions } from './Emissions.js';
8
+ import type { EffectiveOperationsMap, EffectiveOperationModel } from '../effective-operation.js';
9
+ import type { FrondDescriptor } from '../descriptor/frond.js';
10
+ import type { OperationsMap } from '../wire/operation.js';
11
+ import type { AppMiddleware } from '../wire/middleware.js';
12
+ import type { CreateAppOptions } from './types.js';
13
+ /**
14
+ * What the app is made of while it is still being made. `createApp` builds these, hands
15
+ * them to every frond in turn, and the App it returns is assembled FROM them — so a frond
16
+ * adds to the same container, the same routes and the same tables the next one will read.
17
+ */
18
+ export interface Assembly {
19
+ container: Container;
20
+ routeRegistry: RouteRegistry;
21
+ emissions: Emissions;
22
+ dispatcher: Dispatcher;
23
+ /** A door under a named surface answers only what that surface serves. */
24
+ localDispatcher: Dispatcher;
25
+ /** Filled per façade key, read back by `operationsFor` and the identity card. */
26
+ effectiveByKey: Map<string, EffectiveOperationsMap>;
27
+ /** Every `ports:` key some frond actually settled — what is left is a typo. */
28
+ boundPorts: Set<string>;
29
+ /** What the model resolved before the boot performed any side effect. */
30
+ operationModel: EffectiveOperationModel;
31
+ entityByName: Map<string, SchemaView>;
32
+ frondOf: Map<string, string>;
33
+ contractsOf: (operations: EffectiveOperationsMap) => OperationsMap;
34
+ /** Read at call time and never at boot, so a late registration still applies. */
35
+ getMiddlewares: (entity: string) => AppMiddleware[];
36
+ /** Take a middleware on — every entity when no entity is named. */
37
+ use: (middleware: AppMiddleware, entity?: string) => void;
38
+ log: Logger;
39
+ options: CreateAppOptions;
40
+ }
41
+ export declare function installFrond(frond: FrondDescriptor, assembly: Assembly): Promise<void>;
42
+ //# sourceMappingURL=install.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"install.d.ts","sourceRoot":"","sources":["../../src/boot/install.ts"],"names":[],"mappings":"AAAA,4FAA4F;AAC5F,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAA2B,KAAK,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC3E,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAC5D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAClE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,KAAK,EAAE,sBAAsB,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AAEjG,OAAO,KAAK,EAAe,eAAe,EAAgB,MAAM,wBAAwB,CAAC;AACzF,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAmBnD;;;;GAIG;AACH,MAAM,WAAW,QAAQ;IACvB,SAAS,EAAE,SAAS,CAAC;IACrB,aAAa,EAAE,aAAa,CAAC;IAC7B,SAAS,EAAE,SAAS,CAAC;IACrB,UAAU,EAAE,UAAU,CAAC;IACvB,0EAA0E;IAC1E,eAAe,EAAE,UAAU,CAAC;IAC5B,iFAAiF;IACjF,cAAc,EAAE,GAAG,CAAC,MAAM,EAAE,sBAAsB,CAAC,CAAC;IACpD,+EAA+E;IAC/E,UAAU,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACxB,yEAAyE;IACzE,cAAc,EAAE,uBAAuB,CAAC;IACxC,YAAY,EAAE,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IACtC,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC7B,WAAW,EAAE,CAAC,UAAU,EAAE,sBAAsB,KAAK,aAAa,CAAC;IACnE,iFAAiF;IACjF,cAAc,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,aAAa,EAAE,CAAC;IACpD,mEAAmE;IACnE,GAAG,EAAE,CAAC,UAAU,EAAE,aAAa,EAAE,MAAM,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IAC1D,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,gBAAgB,CAAC;CAC3B;AAED,wBAAsB,YAAY,CAAC,KAAK,EAAE,eAAe,EAAE,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAwW5F"}
@@ -0,0 +1,327 @@
1
+ import { lowerFirst } from '@fougere/schema';
2
+ import { nameOf } from '../descriptor/frond.js';
3
+ import { registerFrames } from './together.js';
4
+ import { HandlerFacade } from '../dispatch/HandlerFacade.js';
5
+ import { targetOf } from '../prefab/prefab.js';
6
+ import { ownersOf, refuseStorageInUserCode, refuseCrudOnOwned } from './ownership.js';
7
+ import { StorageGuard } from '../dispatch/StorageGuard.js';
8
+ import { portBindings } from './ports.js';
9
+ import { facadeKeyOf, contractsKeyOf } from '../wire/call.js';
10
+ import { inheritsCrud, subjectOf } from '../prefab/crud.js';
11
+ import { repositoryKeyOf } from '../prefab/repository.js';
12
+ import { storageKeyOf } from '../storage/port.js';
13
+ import { declares } from '../source.js';
14
+ import { presenterKeyOf } from '../prefab/presenter.js';
15
+ import { collectorKeyOf } from '../prefab/collector.js';
16
+ import { RouteAddress } from '../wire/RouteAddress.js';
17
+ import { servedSurfaces } from '../descriptor/surface.js';
18
+ import { OperationRoute } from '../dispatch/OperationRoute.js';
19
+ import { facadeOperations } from '../entry/facade.js';
20
+ export async function installFrond(frond, assembly) {
21
+ const { container, routeRegistry, emissions, dispatcher, localDispatcher, effectiveByKey, boundPorts, operationModel, entityByName, frondOf, contractsOf, getMiddlewares, use, log, options, } = assembly;
22
+ // Declared remote: keep the scanned metadata (bridges route with it),
23
+ // register nothing locally — resolve() falls through to the remote façade.
24
+ if (options.remotes && frond.name in options.remotes) {
25
+ log.child(frond.name).info('declared remote — not hosted locally');
26
+ // Its doors answer elsewhere, but what they LISTEN to was read here.
27
+ for (const handler of frond.handlers) {
28
+ const key = facadeKeyOf(handler.address, handler.surface);
29
+ const operations = operationModel.forHandler(handler);
30
+ effectiveByKey.set(key, operations);
31
+ emissions.note(contractsOf(operations), key);
32
+ }
33
+ return;
34
+ }
35
+ const scope = container.createScope();
36
+ const frondLog = log.child(frond.name);
37
+ // `reads:` is what makes a cross-source reader exist here, and the list IS its
38
+ // environment — a source holding none of these is never opened. Registered under
39
+ // the type's own name, which is the key `depKeyOf` already derives for a plain
40
+ // parameter: `constructor(private reads: Reads)` and nothing else to say.
41
+ // Declaring `reads:` with nothing to build the reader is a boot that ignores a
42
+ // clause: the handler asking for `Reads` then dies at its first call, on a
43
+ // container message that names neither the clause nor what is missing.
44
+ if (frond.reads?.length && !options.sourcesFactory) {
45
+ frondLog.warn(`[reads] ${frond.reads.join(', ')} — declared in frond.config.ts, but this boot passes no `
46
+ + '`sourcesFactory`, so no reader is registered and a handler asking for `Reads` will fail '
47
+ + 'at its first call. Pass one (`@fougere/adapter-duckdb`), or drop the clause.');
48
+ }
49
+ if (frond.reads?.length && options.sourcesFactory) {
50
+ // Resolved across the WHOLE app, not this frond's own entities: a cross-source
51
+ // query joins entities from different fronds by definition — `Progress` here,
52
+ // `Book` next door — so restricting the list to its own would make it useless.
53
+ // Naming one IS the authorization; that is what the declaration is for.
54
+ const named = frond.reads
55
+ .map((name) => entityByName.get(lowerFirst(name)))
56
+ .filter((entity) => entity !== undefined);
57
+ if (named.length !== frond.reads.length) {
58
+ const missing = frond.reads.filter((name) => !entityByName.has(lowerFirst(name)));
59
+ frondLog.warn(`[reads] ${missing.join(', ')} — named in frond.config.ts but scanned nowhere in this app, `
60
+ + 'so a query naming one would find no table. Check the spelling, or the entity file.');
61
+ }
62
+ scope.registerValue('Reads', await options.sourcesFactory(named, frond.name));
63
+ frondLog.debug(`cross-source reader over ${named.length} entit(ies)`);
64
+ }
65
+ // Who owns what, and the rule that makes owning mean something. Before anything is
66
+ // registered, so a bad line is named by this refusal rather than by the container's.
67
+ const owners = ownersOf(frond.providers);
68
+ refuseStorageInUserCode(frond, owners, (entity) => entityByName.has(entity));
69
+ refuseCrudOnOwned(frond, owners);
70
+ for (const provider of frond.providers) {
71
+ scope.register(nameOf(provider), provider.ctor, { deps: provider.deps });
72
+ }
73
+ // …and again under the port each one extends, so `private payment: Payment`
74
+ // reaches the realization instead of the base class it is declared against.
75
+ // Registered AFTER the loop above so a port key always wins over the base's
76
+ // own registration — same precedence as a declared repository over its default.
77
+ for (const [port, chain] of portBindings(frond.providers, (n) => scope.has(n), options.ports)) {
78
+ // Registered from the INSIDE OUT, each wrapper asking for the one it stands in front
79
+ // of: the container resolves a dep by NAME, so wrapping is a substituted key and
80
+ // needs nothing of the container itself. The outermost answers under the port.
81
+ let inner = nameOf(chain.at(-1));
82
+ for (const wrapper of [...chain.slice(0, -1)].reverse()) {
83
+ const deps = wrapper.deps.map((dep) => (dep === port ? inner : dep));
84
+ inner = nameOf(wrapper);
85
+ scope.register(inner, wrapper.ctor, { deps });
86
+ }
87
+ const outermost = chain[0];
88
+ scope.register(port, outermost.ctor, {
89
+ deps: outermost.deps.map((dep) => (dep === port ? nameOf(chain[1]) : dep)),
90
+ });
91
+ boundPorts.add(port);
92
+ frondLog.debug(`port ${port} → ${chain.map((one) => one.ctor.name).join(' → ')}`);
93
+ }
94
+ if (frond.providers.length > 0) {
95
+ frondLog.debug(`${frond.providers.length} provider(s): ${frond.providers.map(nameOf).join(', ')}`);
96
+ }
97
+ // Register Storage for each entity — PascalCase type name (e.g. 'PostStorage')
98
+ // When a handler declares Crud(Entity, Output), scope the storage via .output(Output)
99
+ if (options.storageFactory) {
100
+ const unenforced = [];
101
+ for (const entity of frond.entities) {
102
+ const key = storageKeyOf(entity.name);
103
+ const source = options.sourceOf?.(entity.name) ?? 'db';
104
+ if (declares(entity.entityClass, 'unique') && options.enforces?.(source, 'unique') === false) {
105
+ unenforced.push(`${entity.name} in '${source}'`);
106
+ }
107
+ const baseStorage = options.storageFactory(entity.entityClass, entity.name);
108
+ // Check if the default handler (no surface) declares an output override
109
+ const defaultHandler = frond.handlers.find((h) => h.address === entity.name && !h.surface);
110
+ const outputSchema = defaultHandler?.outputOverride ?? defaultHandler?.ctor?.__output;
111
+ const scoped = outputSchema && outputSchema !== entity.entityClass
112
+ ? baseStorage.output(outputSchema)
113
+ : baseStorage;
114
+ // Storage is a way out like the client surface — see `StorageGuard`.
115
+ const guarded = new StorageGuard(entity.entityClass.getFields(), entity.name).guard(scoped);
116
+ scope.registerValue(key, guarded);
117
+ // The default repository IS the guarded port — it already answers every gesture a
118
+ // declared one forwards, so the two forms have the same shape and a handler reads
119
+ // `repo.list()` either way. The wrapper that used to sit here (`{ storage: guarded }`)
120
+ // existed to make `repo.storage` true in both, back when `.storage` was the way in.
121
+ //
122
+ // Not registered for an OWNED entity: an aggregate's members are reached through it
123
+ // and nowhere else, and the default would be a second door under a name a handler
124
+ // can spell. Every member is skipped, not just the one the key is named after —
125
+ // that asymmetry was the whole hole.
126
+ const repoKey = repositoryKeyOf(entity.name);
127
+ const owner = owners.get(entity.name);
128
+ if (owner) {
129
+ frondLog.debug(`${entity.name} — owned by ${owner}, no default repository`);
130
+ }
131
+ else if (!scope.has(repoKey)) {
132
+ scope.registerValue(repoKey, guarded);
133
+ }
134
+ }
135
+ if (frond.entities.length > 0) {
136
+ frondLog.debug(`${frond.entities.length} entity storage(s): ${frond.entities.map((e) => e.name).join(', ')}`);
137
+ }
138
+ // The judge refuses a duplicate it can SEE — the row already stored. Two writes arriving
139
+ // together see the same absence, and only the place they land can refuse the second.
140
+ if (unenforced.length > 0) {
141
+ frondLog.warn(`unique declared, and the source does not enforce it: ${unenforced.join(', ')} — `
142
+ + 'two concurrent writes can both pass');
143
+ }
144
+ }
145
+ // Frames, after the ORMs and before anything that may ask for one. A frame is read
146
+ // from the same `deps` every other port is read from — asking for it IS declaring it,
147
+ // so nothing is registered for a frame nobody wants.
148
+ registerFrames(scope, [...frond.handlers, ...frond.providers, ...frond.presenters, ...frond.collectors].flatMap((d) => d.deps), frond.providers, {
149
+ entityByName,
150
+ frondOf,
151
+ hostedHere: (name) => !(options.remotes && name in options.remotes),
152
+ storageFactory: options.storageFactory,
153
+ sourceOf: options.sourceOf,
154
+ transacts: options.transacts,
155
+ transacted: options.transacted,
156
+ log: frondLog,
157
+ });
158
+ // Register presenters in scope — PascalCase type name (e.g. 'PostPresenter')
159
+ const presenterMap = new Map(frond.presenters.map((p) => [p.entityName, p]));
160
+ for (const presenter of frond.presenters) {
161
+ scope.register(presenterKeyOf(presenter.entityName), presenter.ctor, { deps: presenter.deps });
162
+ }
163
+ if (frond.presenters.length > 0) {
164
+ frondLog.debug(`${frond.presenters.length} presenter(s): ${frond.presenters.map((p) => p.entityName).join(', ')}`);
165
+ }
166
+ // Register collectors in scope — PascalCase type name (e.g. 'UserCollector')
167
+ const collectorTypeNames = new Set(frond.collectors.map((c) => c.typeName));
168
+ for (const collector of frond.collectors) {
169
+ const key = collectorKeyOf(collector.typeName);
170
+ scope.register(key, collector.ctor, { deps: collector.deps });
171
+ }
172
+ if (frond.collectors.length > 0) {
173
+ frondLog.debug(`${frond.collectors.length} collector(s): ${frond.collectors.map((c) => c.typeName).join(', ')}`);
174
+ }
175
+ // Register middlewares in scope, then take them on. Resolved per call and never here:
176
+ // a middleware asking for something request-scoped would otherwise be handed the one
177
+ // instance the boot built — the same reason `getMiddlewares` is read at call time.
178
+ for (const middleware of frond.middlewares) {
179
+ scope.register(middleware.name, middleware.ctor, { deps: middleware.deps });
180
+ const around = (context, next) => scope.resolve(middleware.name).around(context, next);
181
+ if (middleware.scope === 'app')
182
+ use(around);
183
+ // Its own frond means every address its handlers answer to — wider than its entities,
184
+ // since a handler without one runs behind it too.
185
+ else
186
+ for (const address of new Set(frond.handlers.map((h) => h.address)))
187
+ use(around, address);
188
+ }
189
+ if (frond.middlewares.length > 0) {
190
+ frondLog.debug(`${frond.middlewares.length} middleware(s): ${frond.middlewares.map((m) => `${m.name} (${m.scope})`).join(', ')}`);
191
+ }
192
+ // Build handler facades → registered in ROOT container (public contract)
193
+ const defaultHandlers = frond.handlers.filter((h) => !h.surface);
194
+ const surfaceHandlers = frond.handlers.filter((h) => h.surface);
195
+ const defaultHandlerMap = new Map(defaultHandlers.map((h) => [h.address, h]));
196
+ /** Build the door of a handler and register it under the audience it serves. */
197
+ const buildFacade = (entity, handler, targetScope, facadeKey) => {
198
+ if (inheritsCrud(handler.ctor) && !entity) {
199
+ // An installed Crud subject may be absent from the local scan.
200
+ frondLog.debug(`${handler.ctor.name} extends Crud() and no scanned entity is named `
201
+ + `'${subjectOf(handler.ctor, handler.address)}' — installed entity, or a missing `
202
+ + `one: no storage will be injected`);
203
+ }
204
+ const facade = new HandlerFacade(handler, targetScope, {
205
+ key: facadeKey,
206
+ frond: frond.name,
207
+ handlers: frond.handlers,
208
+ operations: operationModel.forHandler(handler),
209
+ collectors: collectorTypeNames,
210
+ presenter: presenterMap.get(handler.address),
211
+ presenterScope: scope,
212
+ middlewares: () => getMiddlewares(handler.address),
213
+ });
214
+ // Emissions use the same contracts and execution path as direct calls.
215
+ emissions.note(facade.contracts, facadeKey);
216
+ // The terms alongside the door, under the same audience — a surface that serves
217
+ // fewer ops describes fewer ops.
218
+ container.registerValue(contractsKeyOf(handler.address, handler.surface), facade.contracts);
219
+ effectiveByKey.set(facadeKey, facade.effectiveOperations);
220
+ const surfaces = servedSurfaces(frond, handler);
221
+ for (const operation of facade.contracts.keys()) {
222
+ for (const surface of surfaces) {
223
+ const address = new RouteAddress({
224
+ entity: handler.address,
225
+ operation,
226
+ ...(surface !== undefined ? { surface } : {}),
227
+ });
228
+ routeRegistry.register(new OperationRoute('local', address, (call) => facade.execute(operation, call.invocation)));
229
+ }
230
+ }
231
+ const operations = facadeOperations(handler.surface ? localDispatcher : dispatcher, handler.address, routeRegistry.operationNames(handler.address, handler.surface), handler.surface);
232
+ container.registerValue(facadeKey, operations);
233
+ };
234
+ // A presenter is about an entity — computed fields sit on a shape — so this walks
235
+ // entities. Exposing the instance lazily; the bridge resolves it on first access.
236
+ for (const entity of frond.entities) {
237
+ if (!presenterMap.has(entity.name))
238
+ continue;
239
+ const presenterKey = presenterKeyOf(entity.name);
240
+ let presenterInstance;
241
+ container.registerValue(presenterKey, new Proxy({}, {
242
+ get(_target, prop) {
243
+ if (!presenterInstance)
244
+ presenterInstance = scope.resolve(presenterKey);
245
+ return presenterInstance[prop];
246
+ },
247
+ }));
248
+ }
249
+ // A facade is about a handler, so this walks HANDLERS. It walked entities before,
250
+ // which made an entity a precondition for being callable at all: a handler naming
251
+ // none was scanned, then never built, and nothing said so.
252
+ for (const handler of defaultHandlers) {
253
+ // Two ways to know the subject, and the explicit one wins: `Crud(Item)` names the
254
+ // entity it was built on, whatever the handler is called. Otherwise the handler's
255
+ // own name is the only thing pointing at one — and pointing at nothing is legal.
256
+ //
257
+ // By NAME, not by identity: the scanner loads an entity through its own loader and
258
+ // the handler imports it through the runtime's, so the same class arrives as two
259
+ // objects. `===` compares module instances, which is not the question being asked.
260
+ const crudTarget = targetOf(handler.ctor);
261
+ const subject = crudTarget?.name ? lowerFirst(crudTarget.name) : handler.address;
262
+ const entity = frond.entities.find((e) => e.name === subject);
263
+ const facadeKey = facadeKeyOf(handler.address);
264
+ buildFacade(entity, handler, scope, facadeKey);
265
+ frondLog.debug(`${facadeKey} [${Object.keys(container.resolve(facadeKey)).join(', ')}]`
266
+ + (entity ? '' : ' — no entity of that name: no storage, no projection, no presenter'));
267
+ }
268
+ // The dual, and it stays: a shape that declares no operation answers nothing. Said
269
+ // once per entity rather than deduced from a silence.
270
+ for (const entity of frond.entities) {
271
+ if (!defaultHandlerMap.has(entity.name)) {
272
+ frondLog.debug(`${entity.name} — entity only, no handler: exposes nothing`);
273
+ }
274
+ }
275
+ // Surface handlers — create sub-scope per surface handler with scoped storage
276
+ //
277
+ // Pointing at nothing is legal HERE TOO. This loop used to `continue` when no entity
278
+ // carried the handler's name, so `handlers/public/SearchHandler.ts` with no `Search`
279
+ // entity got no door at all and no line saying why — while the very same handler at
280
+ // the default surface is built and logged. One rule, both surfaces.
281
+ for (const handler of surfaceHandlers) {
282
+ const entity = frond.entities.find((e) => e.name === handler.address);
283
+ const surfaceScope = scope.createScope();
284
+ // Register scoped storage if output override differs from entity — under the REPOSITORY
285
+ // key, which is what a Crud handler asks for, and under the port's own for a holder
286
+ // that legitimately names it. Registering only the latter left a named surface with
287
+ // no door at all once the façade stopped spelling the storage.
288
+ if (entity && options.storageFactory) {
289
+ const baseStorage = options.storageFactory(entity.entityClass, entity.name);
290
+ const outputSchema = handler.outputOverride ?? handler.ctor.__output;
291
+ const scoped = outputSchema && outputSchema !== entity.entityClass
292
+ ? baseStorage.output(outputSchema)
293
+ : baseStorage;
294
+ // The view is handed over so a filter on a field this door hides is SAID. The
295
+ // guard holds no logger — a warning is the boot's to voice, as a seed's report is.
296
+ const guarded = new StorageGuard(entity.entityClass.getFields(), entity.name, {
297
+ ...(outputSchema && outputSchema !== entity.entityClass
298
+ ? { view: outputSchema.getFields() }
299
+ : {}),
300
+ outOfView: (message) => frondLog.warn(message),
301
+ }).guard(scoped);
302
+ surfaceScope.registerValue(storageKeyOf(entity.name), guarded);
303
+ surfaceScope.registerValue(repositoryKeyOf(entity.name), guarded);
304
+ }
305
+ const facadeKey = facadeKeyOf(handler.address, handler.surface);
306
+ buildFacade(entity, handler, surfaceScope, facadeKey);
307
+ frondLog.debug(`${facadeKey} [${Object.keys(container.resolve(facadeKey)).join(', ')}]`
308
+ + (entity ? '' : ' — no entity of that name: no storage, no projection, no presenter'));
309
+ }
310
+ // A named surface is closed, so what it contains is a fact worth stating.
311
+ // Saying it at boot is the difference between a rule and a rule you can
312
+ // check: an entity you meant to serve and never wrote a handler for is
313
+ // absent HERE, in one line, instead of being discovered missing later.
314
+ const surfaceNames = [...new Set(surfaceHandlers.map((h) => h.surface))].sort();
315
+ for (const surfaceName of surfaceNames) {
316
+ const served = surfaceHandlers
317
+ .filter((h) => h.surface === surfaceName)
318
+ .map((h) => h.address)
319
+ .sort();
320
+ const absent = frond.entities.map((e) => e.name).filter((n) => !served.includes(n));
321
+ frondLog.info(`surface '${surfaceName}' — ${served.length} entit${served.length === 1 ? 'y' : 'ies'}: ${served.join(', ')}` +
322
+ (absent.length > 0 ? ` (not served: ${absent.join(', ')})` : ''));
323
+ }
324
+ container.registerValue(`frond:${frond.name}`, scope);
325
+ frondLog.info(`registered — ${frond.entities.length} entities, ${frond.handlers.length} handlers, ${frond.seeds.length} seeds`);
326
+ }
327
+ //# sourceMappingURL=install.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"install.js","sourceRoot":"","sources":["../../src/boot/install.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { FrondDescriptor, ProviderEntry } from '../descriptor/frond.js';
1
+ import { type FrondDescriptor, type ProviderEntry } from '../descriptor/frond.js';
2
2
  /** Who owns an entity's storage. */
3
3
  export declare function ownersOf(providers: readonly ProviderEntry[]): Map<string, string>;
4
4
  /** `Storage<E>` is not a word of the user's vocabulary — `<E>Repository` is the one way in. */
@@ -1 +1 @@
1
- {"version":3,"file":"ownership.d.ts","sourceRoot":"","sources":["../../src/boot/ownership.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAM7E,oCAAoC;AACpC,wBAAgB,QAAQ,CAAC,SAAS,EAAE,SAAS,aAAa,EAAE,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAqBjF;AAaD,+FAA+F;AAC/F,wBAAgB,uBAAuB,CACrC,KAAK,EAAE,eAAe,EACtB,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EAC3B,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,GACjC,IAAI,CAoCN;AAED,sFAAsF;AACtF,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,eAAe,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,CAe3F"}
1
+ {"version":3,"file":"ownership.d.ts","sourceRoot":"","sources":["../../src/boot/ownership.ts"],"names":[],"mappings":"AACA,OAAO,EAAU,KAAK,eAAe,EAAE,KAAK,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAM1F,oCAAoC;AACpC,wBAAgB,QAAQ,CAAC,SAAS,EAAE,SAAS,aAAa,EAAE,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAqBjF;AAaD,+FAA+F;AAC/F,wBAAgB,uBAAuB,CACrC,KAAK,EAAE,eAAe,EACtB,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EAC3B,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,GACjC,IAAI,CAmDN;AAED,sFAAsF;AACtF,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,eAAe,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,CAe3F"}