@fougere/core 0.5.0-alpha.1 → 0.6.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 (219) hide show
  1. package/dist/boot/Emissions.d.ts +2 -2
  2. package/dist/boot/Emissions.d.ts.map +1 -1
  3. package/dist/boot/Emissions.js +1 -1
  4. package/dist/boot/HandlerFacade.d.ts +1 -1
  5. package/dist/boot/HandlerFacade.d.ts.map +1 -1
  6. package/dist/boot/HandlerFacade.js +1 -1
  7. package/dist/boot/HandlerFacade.js.map +1 -1
  8. package/dist/boot/auth.d.ts +6 -6
  9. package/dist/boot/auth.d.ts.map +1 -1
  10. package/dist/boot/boot.d.ts +2 -2
  11. package/dist/boot/boot.d.ts.map +1 -1
  12. package/dist/boot/boot.js +1 -1
  13. package/dist/boot/boot.js.map +1 -1
  14. package/dist/boot/bootstrap.d.ts.map +1 -1
  15. package/dist/boot/bootstrap.js +47 -38
  16. package/dist/boot/bootstrap.js.map +1 -1
  17. package/dist/boot/card.d.ts +21 -0
  18. package/dist/boot/card.d.ts.map +1 -0
  19. package/dist/boot/card.js +100 -0
  20. package/dist/boot/card.js.map +1 -0
  21. package/dist/boot/frame.d.ts +3 -3
  22. package/dist/boot/frame.d.ts.map +1 -1
  23. package/dist/boot/frame.js +7 -7
  24. package/dist/boot/frame.js.map +1 -1
  25. package/dist/boot/hosted.d.ts +8 -2
  26. package/dist/boot/hosted.d.ts.map +1 -1
  27. package/dist/boot/hosted.js +10 -10
  28. package/dist/boot/hosted.js.map +1 -1
  29. package/dist/boot/ownership.d.ts +7 -5
  30. package/dist/boot/ownership.d.ts.map +1 -1
  31. package/dist/boot/ownership.js +9 -14
  32. package/dist/boot/ownership.js.map +1 -1
  33. package/dist/boot/ports.d.ts +2 -2
  34. package/dist/boot/ports.d.ts.map +1 -1
  35. package/dist/boot/ports.js +1 -1
  36. package/dist/boot/runner.d.ts +28 -0
  37. package/dist/boot/runner.d.ts.map +1 -0
  38. package/dist/boot/runner.js +26 -0
  39. package/dist/boot/runner.js.map +1 -0
  40. package/dist/boot/seed.d.ts +2 -2
  41. package/dist/boot/seed.d.ts.map +1 -1
  42. package/dist/boot/seed.js +5 -5
  43. package/dist/boot/seed.js.map +1 -1
  44. package/dist/boot/statement-drift.d.ts +2 -1
  45. package/dist/boot/statement-drift.d.ts.map +1 -1
  46. package/dist/boot/statement-drift.js.map +1 -1
  47. package/dist/boot/together.d.ts +4 -4
  48. package/dist/boot/together.d.ts.map +1 -1
  49. package/dist/boot/together.js +17 -19
  50. package/dist/boot/together.js.map +1 -1
  51. package/dist/boot/types.d.ts +12 -11
  52. package/dist/boot/types.d.ts.map +1 -1
  53. package/dist/contract/CallLog.d.ts +2 -2
  54. package/dist/contract/CallLog.d.ts.map +1 -1
  55. package/dist/contract/RouteAddress.d.ts +2 -0
  56. package/dist/contract/RouteAddress.d.ts.map +1 -1
  57. package/dist/contract/RouteAddress.js.map +1 -1
  58. package/dist/{scan/declare.d.ts → declare.d.ts} +3 -3
  59. package/dist/declare.d.ts.map +1 -0
  60. package/dist/{scan/declare.js → declare.js} +3 -3
  61. package/dist/declare.js.map +1 -0
  62. package/dist/{scan → descriptor}/Fronds.d.ts +6 -7
  63. package/dist/descriptor/Fronds.d.ts.map +1 -0
  64. package/dist/{scan → descriptor}/Fronds.js +6 -7
  65. package/dist/descriptor/Fronds.js.map +1 -0
  66. package/dist/{scan → descriptor}/frond.d.ts +7 -47
  67. package/dist/descriptor/frond.d.ts.map +1 -0
  68. package/dist/{scan → descriptor}/frond.js.map +1 -1
  69. package/dist/dispatch/ArgumentResolver.d.ts +5 -2
  70. package/dist/dispatch/ArgumentResolver.d.ts.map +1 -1
  71. package/dist/dispatch/ArgumentResolver.js +48 -3
  72. package/dist/dispatch/ArgumentResolver.js.map +1 -1
  73. package/dist/dispatch/DispatchEvent.d.ts +1 -1
  74. package/dist/dispatch/DispatchEvent.d.ts.map +1 -1
  75. package/dist/dispatch/PresenterArgumentResolver.d.ts +1 -1
  76. package/dist/dispatch/PresenterArgumentResolver.d.ts.map +1 -1
  77. package/dist/dispatch/PresenterArgumentResolver.js +1 -1
  78. package/dist/dispatch/Route.d.ts +1 -2
  79. package/dist/dispatch/Route.d.ts.map +1 -1
  80. package/dist/dispatch/StorageGuard.d.ts +2 -2
  81. package/dist/dispatch/StorageGuard.d.ts.map +1 -1
  82. package/dist/dispatch/StorageGuard.js +7 -7
  83. package/dist/dispatch/StorageGuard.js.map +1 -1
  84. package/dist/effective-operation.d.ts +29 -3
  85. package/dist/effective-operation.d.ts.map +1 -1
  86. package/dist/effective-operation.js +52 -1
  87. package/dist/effective-operation.js.map +1 -1
  88. package/dist/emit.d.ts +1 -1
  89. package/dist/frond-config.d.ts +2 -2
  90. package/dist/graph.d.ts +1 -1
  91. package/dist/graph.d.ts.map +1 -1
  92. package/dist/imports.d.ts +1 -1
  93. package/dist/imports.d.ts.map +1 -1
  94. package/dist/index.d.ts +15 -10
  95. package/dist/index.d.ts.map +1 -1
  96. package/dist/index.js +9 -6
  97. package/dist/index.js.map +1 -1
  98. package/dist/prefab/collector.d.ts +2 -2
  99. package/dist/prefab/collector.js +2 -2
  100. package/dist/prefab/crud.d.ts +5 -5
  101. package/dist/prefab/crud.d.ts.map +1 -1
  102. package/dist/prefab/crud.js +12 -12
  103. package/dist/prefab/crud.js.map +1 -1
  104. package/dist/prefab/mirror.d.ts +5 -5
  105. package/dist/prefab/mirror.d.ts.map +1 -1
  106. package/dist/prefab/mirror.js +5 -5
  107. package/dist/prefab/mirror.js.map +1 -1
  108. package/dist/prefab/presenter.d.ts +2 -2
  109. package/dist/prefab/presenter.js +2 -2
  110. package/dist/prefab/repository.d.ts +14 -14
  111. package/dist/prefab/repository.d.ts.map +1 -1
  112. package/dist/prefab/repository.js +19 -19
  113. package/dist/prefab/repository.js.map +1 -1
  114. package/dist/rows.d.ts +40 -0
  115. package/dist/rows.d.ts.map +1 -0
  116. package/dist/rows.js +146 -0
  117. package/dist/rows.js.map +1 -0
  118. package/dist/scan/emit.d.ts +1 -1
  119. package/dist/scan/emit.d.ts.map +1 -1
  120. package/dist/scan/emit.js +1 -1
  121. package/dist/scan/emit.js.map +1 -1
  122. package/dist/scan/handler-parser.d.ts +11 -56
  123. package/dist/scan/handler-parser.d.ts.map +1 -1
  124. package/dist/scan/handler-parser.js +2 -2
  125. package/dist/scan/handler-parser.js.map +1 -1
  126. package/dist/scan/result.d.ts +41 -0
  127. package/dist/scan/result.d.ts.map +1 -0
  128. package/dist/scan/result.js +2 -0
  129. package/dist/scan/result.js.map +1 -0
  130. package/dist/scan/scanner.d.ts +1 -1
  131. package/dist/scan/scanner.d.ts.map +1 -1
  132. package/dist/scan/scanner.js +17 -17
  133. package/dist/scan/scanner.js.map +1 -1
  134. package/dist/scan/statement.d.ts +1 -1
  135. package/dist/scan/statement.d.ts.map +1 -1
  136. package/dist/scan/statement.js.map +1 -1
  137. package/dist/{orm.d.ts → storage.d.ts} +98 -16
  138. package/dist/storage.d.ts.map +1 -0
  139. package/dist/{orm.js → storage.js} +53 -5
  140. package/dist/storage.js.map +1 -0
  141. package/dist/verify.d.ts +1 -1
  142. package/dist/verify.d.ts.map +1 -1
  143. package/dist/verify.js +2 -2
  144. package/dist/verify.js.map +1 -1
  145. package/dist/{boot → wire}/binding.d.ts +2 -10
  146. package/dist/wire/binding.d.ts.map +1 -0
  147. package/dist/{boot → wire}/binding.js +0 -52
  148. package/dist/wire/binding.js.map +1 -0
  149. package/dist/wire/call.d.ts +2 -40
  150. package/dist/wire/call.d.ts.map +1 -1
  151. package/dist/wire/call.js +0 -125
  152. package/dist/wire/call.js.map +1 -1
  153. package/dist/wire/operation.d.ts +5 -31
  154. package/dist/wire/operation.d.ts.map +1 -1
  155. package/dist/wire/operation.js +0 -51
  156. package/dist/wire/operation.js.map +1 -1
  157. package/dist/wire/signature.d.ts +58 -0
  158. package/dist/wire/signature.d.ts.map +1 -0
  159. package/dist/wire/signature.js +2 -0
  160. package/dist/wire/signature.js.map +1 -0
  161. package/package.json +3 -3
  162. package/src/boot/Emissions.ts +2 -2
  163. package/src/boot/HandlerFacade.ts +3 -3
  164. package/src/boot/auth.ts +6 -6
  165. package/src/boot/boot.ts +3 -3
  166. package/src/boot/bootstrap.ts +50 -39
  167. package/src/boot/card.ts +113 -0
  168. package/src/boot/frame.ts +7 -7
  169. package/src/boot/hosted.ts +11 -14
  170. package/src/boot/ownership.ts +14 -15
  171. package/src/boot/ports.ts +2 -2
  172. package/src/boot/runner.ts +34 -0
  173. package/src/boot/seed.ts +6 -6
  174. package/src/boot/statement-drift.ts +5 -4
  175. package/src/boot/together.ts +24 -25
  176. package/src/boot/types.ts +12 -11
  177. package/src/contract/CallLog.ts +2 -2
  178. package/src/contract/RouteAddress.ts +3 -0
  179. package/src/{scan/declare.ts → declare.ts} +5 -5
  180. package/src/{scan → descriptor}/Fronds.ts +6 -7
  181. package/src/{scan → descriptor}/frond.ts +7 -48
  182. package/src/dispatch/ArgumentResolver.ts +53 -7
  183. package/src/dispatch/DispatchEvent.ts +1 -1
  184. package/src/dispatch/PresenterArgumentResolver.ts +2 -2
  185. package/src/dispatch/Route.ts +1 -3
  186. package/src/dispatch/StorageGuard.ts +7 -7
  187. package/src/effective-operation.ts +63 -11
  188. package/src/emit.ts +1 -1
  189. package/src/frond-config.ts +2 -2
  190. package/src/graph.ts +1 -1
  191. package/src/imports.ts +1 -1
  192. package/src/index.ts +15 -13
  193. package/src/prefab/collector.ts +2 -2
  194. package/src/prefab/crud.ts +18 -18
  195. package/src/prefab/mirror.ts +8 -8
  196. package/src/prefab/presenter.ts +2 -2
  197. package/src/prefab/repository.ts +32 -32
  198. package/src/rows.ts +155 -0
  199. package/src/scan/emit.ts +3 -5
  200. package/src/scan/handler-parser.ts +14 -67
  201. package/src/scan/result.ts +42 -0
  202. package/src/scan/scanner.ts +22 -21
  203. package/src/scan/statement.ts +2 -1
  204. package/src/{orm.ts → storage.ts} +126 -17
  205. package/src/verify.ts +3 -3
  206. package/src/{boot → wire}/binding.ts +2 -66
  207. package/src/wire/call.ts +1 -129
  208. package/src/wire/operation.ts +5 -62
  209. package/src/wire/signature.ts +59 -0
  210. package/dist/boot/binding.d.ts.map +0 -1
  211. package/dist/boot/binding.js.map +0 -1
  212. package/dist/orm.d.ts.map +0 -1
  213. package/dist/orm.js.map +0 -1
  214. package/dist/scan/Fronds.d.ts.map +0 -1
  215. package/dist/scan/Fronds.js.map +0 -1
  216. package/dist/scan/declare.d.ts.map +0 -1
  217. package/dist/scan/declare.js.map +0 -1
  218. package/dist/scan/frond.d.ts.map +0 -1
  219. /package/dist/{scan → descriptor}/frond.js +0 -0
@@ -1,12 +1,57 @@
1
- import { resolveArgs, } from '../boot/binding.js';
2
1
  /** Resolves an operation's declared binding plan against one invocation. */
3
2
  export class ArgumentResolver {
4
3
  collectors;
5
4
  constructor(collectors) {
6
5
  this.collectors = collectors;
7
6
  }
8
- resolve(plan, invocation) {
9
- return resolveArgs(plan, invocation, this.collectors);
7
+ async resolve(plan, ctx) {
8
+ const args = [];
9
+ for (const binding of plan) {
10
+ switch (binding.source.kind) {
11
+ case 'collector': {
12
+ const collector = this.collectors?.(binding.source.typeName);
13
+ args.push(collector ? await collector.collect(ctx) : undefined);
14
+ break;
15
+ }
16
+ case 'context': {
17
+ args.push(ctx);
18
+ break;
19
+ }
20
+ case 'param': {
21
+ // `null` is a value, not a miss. Nullish coalescing used to make an explicit
22
+ // nullable path/GraphQL argument fall through to query (or become undefined),
23
+ // collapsing `T | null` into `T | undefined`. Only undefined means absent.
24
+ const fromParams = ctx.params[binding.source.name];
25
+ let val = fromParams === undefined
26
+ ? ctx.query[binding.source.name]
27
+ : fromParams;
28
+ if (val != null && binding.source.coerce === 'number')
29
+ val = Number(val);
30
+ if (val != null && binding.source.coerce === 'boolean')
31
+ val = val === 'true' || val === '1' || val === true;
32
+ args.push(val);
33
+ break;
34
+ }
35
+ case 'fact': {
36
+ // A fact IS the payload — the whole of what happened, never a piece of it.
37
+ // Identical to `body` today, and deliberately not sharing its branch: the two
38
+ // agree by coincidence, not by rule, and the day `body` learns to look up a
39
+ // value by parameter name a subscriber would receive ONE FIELD of the fact it
40
+ // subscribed to. Splitting it costs nothing and removes that trap.
41
+ args.push(ctx.body);
42
+ break;
43
+ }
44
+ case 'body': {
45
+ args.push(ctx.body);
46
+ break;
47
+ }
48
+ case 'query': {
49
+ args.push(ctx.query);
50
+ break;
51
+ }
52
+ }
53
+ }
54
+ return args;
10
55
  }
11
56
  }
12
57
  //# sourceMappingURL=ArgumentResolver.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ArgumentResolver.js","sourceRoot":"","sources":["../../src/dispatch/ArgumentResolver.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,WAAW,GAGZ,MAAM,oBAAoB,CAAC;AAK5B,4EAA4E;AAC5E,MAAM,OAAO,gBAAgB;IACE;IAA7B,YAA6B,UAA4B;QAA5B,eAAU,GAAV,UAAU,CAAkB;IAAG,CAAC;IAE7D,OAAO,CAAC,IAAiB,EAAE,UAA6B;QACtD,OAAO,WAAW,CAAC,IAAI,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;IACxD,CAAC;CACF"}
1
+ {"version":3,"file":"ArgumentResolver.js","sourceRoot":"","sources":["../../src/dispatch/ArgumentResolver.ts"],"names":[],"mappings":"AASA,4EAA4E;AAC5E,MAAM,OAAO,gBAAgB;IACE;IAA7B,YAA6B,UAA4B;QAA5B,eAAU,GAAV,UAAU,CAAkB;IAAG,CAAC;IAE7D,KAAK,CAAC,OAAO,CAAC,IAAiB,EAAE,GAAsB;QACrD,MAAM,IAAI,GAAc,EAAE,CAAC;QAE3B,KAAK,MAAM,OAAO,IAAI,IAAI,EAAE,CAAC;YAC3B,QAAQ,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;gBAC5B,KAAK,WAAW,CAAC,CAAC,CAAC;oBACjB,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;oBAC7D,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;oBAChE,MAAM;gBACR,CAAC;gBACD,KAAK,SAAS,CAAC,CAAC,CAAC;oBACf,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;oBACf,MAAM;gBACR,CAAC;gBACD,KAAK,OAAO,CAAC,CAAC,CAAC;oBACb,6EAA6E;oBAC7E,8EAA8E;oBAC9E,2EAA2E;oBAC3E,MAAM,UAAU,GAAG,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;oBACnD,IAAI,GAAG,GAAY,UAAU,KAAK,SAAS;wBACzC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC;wBAChC,CAAC,CAAC,UAAU,CAAC;oBACf,IAAI,GAAG,IAAI,IAAI,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,KAAK,QAAQ;wBAAE,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;oBACzE,IAAI,GAAG,IAAI,IAAI,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,KAAK,SAAS;wBAAE,GAAG,GAAG,GAAG,KAAK,MAAM,IAAI,GAAG,KAAK,GAAG,IAAI,GAAG,KAAK,IAAI,CAAC;oBAC5G,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;oBACf,MAAM;gBACR,CAAC;gBACD,KAAK,MAAM,CAAC,CAAC,CAAC;oBACZ,2EAA2E;oBAC3E,8EAA8E;oBAC9E,4EAA4E;oBAC5E,8EAA8E;oBAC9E,mEAAmE;oBACnE,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;oBACpB,MAAM;gBACR,CAAC;gBACD,KAAK,MAAM,CAAC,CAAC,CAAC;oBACZ,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;oBACpB,MAAM;gBACR,CAAC;gBACD,KAAK,OAAO,CAAC,CAAC,CAAC;oBACb,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;oBACrB,MAAM;gBACR,CAAC;YACH,CAAC;QACH,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;CACF"}
@@ -1,5 +1,5 @@
1
1
  import type { Call } from '../contract/Call.js';
2
- import type { RouteKind } from './Route.js';
2
+ import type { RouteKind } from '../contract/RouteAddress.js';
3
3
  export type DispatchStage = 'received' | 'resolved' | 'completed' | 'failed' | 'settled';
4
4
  /** Immutable transition observed across one dispatch lifecycle. */
5
5
  export declare class DispatchEvent {
@@ -1 +1 @@
1
- {"version":3,"file":"DispatchEvent.d.ts","sourceRoot":"","sources":["../../src/dispatch/DispatchEvent.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAE5C,MAAM,MAAM,aAAa,GAAG,UAAU,GAAG,UAAU,GAAG,WAAW,GAAG,QAAQ,GAAG,SAAS,CAAC;AAEzF,mEAAmE;AACnE,qBAAa,aAAa;IAEtB,QAAQ,CAAC,KAAK,EAAE,aAAa;IAC7B,QAAQ,CAAC,IAAI,EAAE,IAAI;IACnB,QAAQ,CAAC,SAAS,CAAC,EAAE,SAAS;IAC9B,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO;IAJ1B,OAAO;IASP,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,GAAG,aAAa;IAI1C,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,SAAS,GAAG,aAAa;IAIhE,MAAM,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,SAAS,GAAG,aAAa;IAIjE,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,CAAC,EAAE,SAAS,GAAG,aAAa;IAI/E,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,SAAS,CAAC,EAAE,SAAS,GAAG,aAAa;CAGjE;AAED,MAAM,MAAM,gBAAgB,GAAG,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,CAAC"}
1
+ {"version":3,"file":"DispatchEvent.d.ts","sourceRoot":"","sources":["../../src/dispatch/DispatchEvent.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AAE7D,MAAM,MAAM,aAAa,GAAG,UAAU,GAAG,UAAU,GAAG,WAAW,GAAG,QAAQ,GAAG,SAAS,CAAC;AAEzF,mEAAmE;AACnE,qBAAa,aAAa;IAEtB,QAAQ,CAAC,KAAK,EAAE,aAAa;IAC7B,QAAQ,CAAC,IAAI,EAAE,IAAI;IACnB,QAAQ,CAAC,SAAS,CAAC,EAAE,SAAS;IAC9B,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO;IAJ1B,OAAO;IASP,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,GAAG,aAAa;IAI1C,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,SAAS,GAAG,aAAa;IAIhE,MAAM,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,SAAS,GAAG,aAAa;IAIjE,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,CAAC,EAAE,SAAS,GAAG,aAAa;IAI/E,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,SAAS,CAAC,EAAE,SAAS,GAAG,aAAa;CAGjE;AAED,MAAM,MAAM,gBAAgB,GAAG,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import type { InvocationContext } from '../contract/Invocation.js';
2
- import type { PresenterEntry } from '../scan/frond.js';
2
+ import type { PresenterEntry } from '../descriptor/frond.js';
3
3
  import type { ArgumentResolver } from './ArgumentResolver.js';
4
4
  import type { PresenterArgs } from './PresenterExecutor.js';
5
5
  /** Resolves the invocation-dependent arguments of every computed presenter field. */
@@ -1 +1 @@
1
- {"version":3,"file":"PresenterArgumentResolver.d.ts","sourceRoot":"","sources":["../../src/dispatch/PresenterArgumentResolver.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AACnE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAE5D,qFAAqF;AACrF,qBAAa,yBAAyB;IAElC,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IAClC,OAAO,CAAC,QAAQ,CAAC,cAAc;gBADd,iBAAiB,EAAE,gBAAgB,EACnC,cAAc,EAAE,GAAG,CAAC,MAAM,CAAC;IAGxC,OAAO,CAAC,IAAI,EAAE,cAAc,EAAE,UAAU,EAAE,iBAAiB,GAAG,OAAO,CAAC,aAAa,CAAC;CAW3F"}
1
+ {"version":3,"file":"PresenterArgumentResolver.d.ts","sourceRoot":"","sources":["../../src/dispatch/PresenterArgumentResolver.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AACnE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAE5D,qFAAqF;AACrF,qBAAa,yBAAyB;IAElC,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IAClC,OAAO,CAAC,QAAQ,CAAC,cAAc;gBADd,iBAAiB,EAAE,gBAAgB,EACnC,cAAc,EAAE,GAAG,CAAC,MAAM,CAAC;IAGxC,OAAO,CAAC,IAAI,EAAE,cAAc,EAAE,UAAU,EAAE,iBAAiB,GAAG,OAAO,CAAC,aAAa,CAAC;CAW3F"}
@@ -1,4 +1,4 @@
1
- import { computeBindingPlan } from '../boot/binding.js';
1
+ import { computeBindingPlan } from '../wire/binding.js';
2
2
  /** Resolves the invocation-dependent arguments of every computed presenter field. */
3
3
  export class PresenterArgumentResolver {
4
4
  argumentsResolver;
@@ -1,6 +1,5 @@
1
1
  import type { Call } from '../contract/Call.js';
2
- import type { RouteAddress } from '../contract/RouteAddress.js';
3
- export type RouteKind = 'local' | 'remote' | 'system';
2
+ import type { RouteAddress, RouteKind } from '../contract/RouteAddress.js';
4
3
  /** Executable destination known by the dispatcher. */
5
4
  export interface Route {
6
5
  readonly kind: RouteKind;
@@ -1 +1 @@
1
- {"version":3,"file":"Route.d.ts","sourceRoot":"","sources":["../../src/dispatch/Route.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAEhE,MAAM,MAAM,SAAS,GAAG,OAAO,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAEtD,sDAAsD;AACtD,MAAM,WAAW,KAAK;IACpB,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IACzB,QAAQ,CAAC,OAAO,EAAE,YAAY,CAAC;IAC/B,OAAO,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CACvC"}
1
+ {"version":3,"file":"Route.d.ts","sourceRoot":"","sources":["../../src/dispatch/Route.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AAE3E,sDAAsD;AACtD,MAAM,WAAW,KAAK;IACpB,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IACzB,QAAQ,CAAC,OAAO,EAAE,YAAY,CAAC;IAC/B,OAAO,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CACvC"}
@@ -1,6 +1,6 @@
1
1
  import { type Fields } from '@fougere/schema';
2
2
  /**
3
- * Judges storage writes and list options without narrowing the ORM interface.
3
+ * Judges storage writes and list options without narrowing the storage interface.
4
4
  *
5
5
  * Storage is a way out like the client surface, so what goes to it is judged too — the
6
6
  * same rule `OutputProjector` applies on the other exit.
@@ -9,7 +9,7 @@ export declare class StorageGuard {
9
9
  private readonly fields;
10
10
  private readonly entity;
11
11
  constructor(fields: Fields, entity: string);
12
- guard<T extends object>(orm: T): T;
12
+ guard<T extends object>(storage: T): T;
13
13
  private judge;
14
14
  }
15
15
  //# sourceMappingURL=StorageGuard.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"StorageGuard.d.ts","sourceRoot":"","sources":["../../src/dispatch/StorageGuard.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,KAAK,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAS1D;;;;;GAKG;AACH,qBAAa,YAAY;IAErB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,MAAM;gBADN,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM;IAGjC,KAAK,CAAC,CAAC,SAAS,MAAM,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC;IA4BlC,OAAO,CAAC,KAAK;CAqBd"}
1
+ {"version":3,"file":"StorageGuard.d.ts","sourceRoot":"","sources":["../../src/dispatch/StorageGuard.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,KAAK,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAS1D;;;;;GAKG;AACH,qBAAa,YAAY;IAErB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,MAAM;gBADN,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM;IAGjC,KAAK,CAAC,CAAC,SAAS,MAAM,EAAE,OAAO,EAAE,CAAC,GAAG,CAAC;IA4BtC,OAAO,CAAC,KAAK;CAqBd"}
@@ -1,8 +1,8 @@
1
1
  import { ValueJudge } from '@fougere/schema';
2
- import { assertListOptions } from '../orm.js';
2
+ import { assertListOptions } from '../storage.js';
3
3
  import { ErrorCode, FougereError } from '../wire/errors.js';
4
4
  /**
5
- * Judges storage writes and list options without narrowing the ORM interface.
5
+ * Judges storage writes and list options without narrowing the storage interface.
6
6
  *
7
7
  * Storage is a way out like the client surface, so what goes to it is judged too — the
8
8
  * same rule `OutputProjector` applies on the other exit.
@@ -14,12 +14,12 @@ export class StorageGuard {
14
14
  this.fields = fields;
15
15
  this.entity = entity;
16
16
  }
17
- guard(orm) {
18
- const writer = orm;
17
+ guard(storage) {
18
+ const writer = storage;
19
19
  if (typeof writer.create !== 'function' || typeof writer.update !== 'function')
20
- return orm;
20
+ return storage;
21
21
  const validation = this;
22
- const guarded = Object.create(orm);
22
+ const guarded = Object.create(storage);
23
23
  guarded.create = async function (...args) {
24
24
  validation.judge(args[0], 'create');
25
25
  return writer.create.apply(this, args);
@@ -28,7 +28,7 @@ export class StorageGuard {
28
28
  validation.judge(args[1], 'update');
29
29
  return writer.update.apply(this, args);
30
30
  };
31
- const reader = orm;
31
+ const reader = storage;
32
32
  if (typeof reader.list === 'function') {
33
33
  guarded.list = async function (...args) {
34
34
  assertListOptions(args[0], validation.entity);
@@ -1 +1 @@
1
- {"version":3,"file":"StorageGuard.js","sourceRoot":"","sources":["../../src/dispatch/StorageGuard.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAe,MAAM,iBAAiB,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAC9C,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAO5D;;;;;GAKG;AACH,MAAM,OAAO,YAAY;IAEJ;IACA;IAFnB,YACmB,MAAc,EACd,MAAc;QADd,WAAM,GAAN,MAAM,CAAQ;QACd,WAAM,GAAN,MAAM,CAAQ;IAC9B,CAAC;IAEJ,KAAK,CAAmB,GAAM;QAC5B,MAAM,MAAM,GAAG,GAAwB,CAAC;QACxC,IAAI,OAAO,MAAM,CAAC,MAAM,KAAK,UAAU,IAAI,OAAO,MAAM,CAAC,MAAM,KAAK,UAAU;YAAE,OAAO,GAAG,CAAC;QAE3F,MAAM,UAAU,GAAG,IAAI,CAAC;QACxB,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,CAAe,CAAC;QAEjD,OAAO,CAAC,MAAM,GAAG,KAAK,WAAW,GAAG,IAAI;YACtC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;YACpC,OAAO,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACzC,CAAC,CAAC;QAEF,OAAO,CAAC,MAAM,GAAG,KAAK,WAAW,GAAG,IAAI;YACtC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;YACpC,OAAO,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACzC,CAAC,CAAC;QAEF,MAAM,MAAM,GAAG,GAA4D,CAAC;QAC5E,IAAI,OAAO,MAAM,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;YACrC,OAAoC,CAAC,IAAI,GAAG,KAAK,WAAW,GAAG,IAAe;gBAC7E,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAuB,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC;gBACpE,OAAQ,MAAM,CAAC,IAAiB,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YACrD,CAAC,CAAC;QACJ,CAAC;QAED,OAAO,OAAO,CAAC;IACjB,CAAC;IAEO,KAAK,CAAC,KAAc,EAAE,SAAiB;QAC7C,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI;YAAE,OAAO;QAExD,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,KAAK,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAgC,CAAC,EAAE,CAAC;YAC3E,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YAC/B,IAAI,CAAC,KAAK,IAAI,IAAI,KAAK,SAAS;gBAAE,SAAS;YAC3C,MAAM,OAAO,GAAG,UAAU,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACjD,IAAI,OAAO,IAAI,OAAO;gBAAE,MAAM,CAAC,IAAI,CAAC,GAAG,GAAG,KAAK,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;QAClE,CAAC;QAED,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtB,MAAM,IAAI,YAAY,CAAC;gBACrB,IAAI,EAAE,SAAS,CAAC,cAAc;gBAC9B,OAAO,EAAE,4BAA4B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;gBACxD,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,SAAS;gBACT,OAAO,EAAE,MAAM;aAChB,CAAC,CAAC;QACL,CAAC;IACH,CAAC;CACF"}
1
+ {"version":3,"file":"StorageGuard.js","sourceRoot":"","sources":["../../src/dispatch/StorageGuard.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAe,MAAM,iBAAiB,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAO5D;;;;;GAKG;AACH,MAAM,OAAO,YAAY;IAEJ;IACA;IAFnB,YACmB,MAAc,EACd,MAAc;QADd,WAAM,GAAN,MAAM,CAAQ;QACd,WAAM,GAAN,MAAM,CAAQ;IAC9B,CAAC;IAEJ,KAAK,CAAmB,OAAU;QAChC,MAAM,MAAM,GAAG,OAA4B,CAAC;QAC5C,IAAI,OAAO,MAAM,CAAC,MAAM,KAAK,UAAU,IAAI,OAAO,MAAM,CAAC,MAAM,KAAK,UAAU;YAAE,OAAO,OAAO,CAAC;QAE/F,MAAM,UAAU,GAAG,IAAI,CAAC;QACxB,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,OAAO,CAAe,CAAC;QAErD,OAAO,CAAC,MAAM,GAAG,KAAK,WAAW,GAAG,IAAI;YACtC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;YACpC,OAAO,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACzC,CAAC,CAAC;QAEF,OAAO,CAAC,MAAM,GAAG,KAAK,WAAW,GAAG,IAAI;YACtC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;YACpC,OAAO,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACzC,CAAC,CAAC;QAEF,MAAM,MAAM,GAAG,OAAgE,CAAC;QAChF,IAAI,OAAO,MAAM,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;YACrC,OAAoC,CAAC,IAAI,GAAG,KAAK,WAAW,GAAG,IAAe;gBAC7E,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAuB,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC;gBACpE,OAAQ,MAAM,CAAC,IAAiB,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YACrD,CAAC,CAAC;QACJ,CAAC;QAED,OAAO,OAAO,CAAC;IACjB,CAAC;IAEO,KAAK,CAAC,KAAc,EAAE,SAAiB;QAC7C,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI;YAAE,OAAO;QAExD,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,KAAK,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAgC,CAAC,EAAE,CAAC;YAC3E,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YAC/B,IAAI,CAAC,KAAK,IAAI,IAAI,KAAK,SAAS;gBAAE,SAAS;YAC3C,MAAM,OAAO,GAAG,UAAU,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACjD,IAAI,OAAO,IAAI,OAAO;gBAAE,MAAM,CAAC,IAAI,CAAC,GAAG,GAAG,KAAK,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;QAClE,CAAC;QAED,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtB,MAAM,IAAI,YAAY,CAAC;gBACrB,IAAI,EAAE,SAAS,CAAC,cAAc;gBAC9B,OAAO,EAAE,4BAA4B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;gBACxD,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,SAAS;gBACT,OAAO,EAAE,MAAM;aAChB,CAAC,CAAC;QACL,CAAC;IACH,CAAC;CACF"}
@@ -1,6 +1,7 @@
1
- import type { BindingPlan } from './boot/binding.js';
2
- import type { FrondDescriptor, HandlerEntry, ScanDiagnostic } from './scan/frond.js';
3
- import { type OperationContract, type OperationKind } from './wire/operation.js';
1
+ import { type BindingPlan } from './wire/binding.js';
2
+ import type { FrondDescriptor, HandlerEntry } from './descriptor/frond.js';
3
+ import type { ScanDiagnostic } from './scan/result.js';
4
+ import { type OperationContract, type OperationKind, type OperationsMap } from './wire/operation.js';
4
5
  type Binding = BindingPlan[number];
5
6
  export interface EffectiveParameter {
6
7
  /** Position in the TypeScript signature. Never used to infer provenance. */
@@ -86,5 +87,30 @@ export declare class EffectiveOperationModel {
86
87
  }
87
88
  /** Resolve the complete operation model without starting the application. */
88
89
  export declare function resolveEffectiveOperations(fronds: readonly FrondDescriptor[], options?: EffectiveOperationOptions): EffectiveOperationModel;
90
+ /**
91
+ * The contract of every operation a handler serves — the three producers, merged once.
92
+ *
93
+ * This lived inline in `buildFacade`, which made the façade the only thing that could
94
+ * answer "what is this op's contract, really?". Anything else asking — a checker, a
95
+ * client generator, a descriptor — had to redo the merge, and a second opinion that
96
+ * drifts reports nothing wrong while looking at the wrong thing.
97
+ *
98
+ * The order is a claim about authority, not a convenience:
99
+ *
100
+ * 1. a prefab DECLARES what it built (`Crud(E).__ops`) — runtime, so it survives a
101
+ * scan that resolved nothing;
102
+ * 2. the scan DERIVES from source — a method written in this very file is the
103
+ * author's own word and beats everything; a method it merely READ on a base
104
+ * class is a guess about someone else's code, and yields to that code's own
105
+ * declaration;
106
+ * 3. `frond.config.ts` STATES — the most explicit statement, made by whoever
107
+ * assembles the app, and the only answer for an op inherited from an installed
108
+ * base class the workspace-only scan cannot see. Merged per key, so stating a
109
+ * `binding` alone does not erase an `input` the scan found.
110
+ *
111
+ * Pure: no container, no instance, no disk. The binding plan is resolved here, so
112
+ * nothing downstream ever meets an AST.
113
+ */
114
+ export declare function resolveContracts(handler: Pick<HandlerEntry, 'ctor' | 'operations'>, overrides: FrondDescriptor['operationsOverrides'], collectorTypeNames: Set<string>): OperationsMap;
89
115
  export {};
90
116
  //# sourceMappingURL=effective-operation.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"effective-operation.d.ts","sourceRoot":"","sources":["../src/effective-operation.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAErD,OAAO,KAAK,EAEV,eAAe,EACf,YAAY,EACZ,cAAc,EACf,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAGL,KAAK,iBAAiB,EACtB,KAAK,aAAa,EAGnB,MAAM,qBAAqB,CAAC;AAE7B,KAAK,OAAO,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;AAEnC,MAAM,WAAW,kBAAkB;IACjC,4EAA4E;IAC5E,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,QAAQ,EAAE,OAAO,CAAC;IAClB,QAAQ,EAAE,OAAO,CAAC;IAClB,yDAAyD;IACzD,WAAW,EAAE,OAAO,CAAC;IACrB,iDAAiD;IACjD,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,kBAAkB;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,kBAAmB,SAAQ,iBAAiB;IAC3D,6DAA6D;IAC7D,EAAE,EAAE,MAAM,CAAC;IACX,sEAAsE;IACtE,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,aAAa,CAAC;IACpB,UAAU,EAAE,UAAU,GAAG,YAAY,CAAC;IACtC,OAAO,EAAE;QACP,SAAS,EAAE,MAAM,CAAC;QAClB,OAAO,EAAE,MAAM,CAAC;QAChB,QAAQ,EAAE,MAAM,CAAC;KAClB,CAAC;IACF,8EAA8E;IAC9E,cAAc,EAAE;QACd,SAAS,EAAE,MAAM,CAAC;QAClB,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,EAAE,MAAM,CAAC;QACf,QAAQ,EAAE,MAAM,CAAC;KAClB,CAAC;IACF,kEAAkE;IAClE,OAAO,EAAE,WAAW,CAAC;IACrB,UAAU,EAAE,kBAAkB,EAAE,CAAC;IACjC,UAAU,EAAE,kBAAkB,EAAE,CAAC;IACjC,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,SAAS,EAAE;QACT,KAAK,EAAE,MAAM,CAAC;QACd,OAAO,EAAE,OAAO,GAAG,QAAQ,CAAC;QAC5B,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC;IACF,QAAQ,EAAE;QACR,QAAQ,EAAE,MAAM,EAAE,CAAC;QACnB,QAAQ,EAAE,MAAM,EAAE,CAAC;KACpB,CAAC;IACF,iEAAiE;IACjE,YAAY,EAAE,OAAO,CAAC;IACtB,SAAS,EAAE,OAAO,6BAA6B,CAAC;CACjD;AAED,MAAM,MAAM,sBAAsB,GAAG,GAAG,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC;AAErE,gFAAgF;AAChF,eAAO,MAAM,6BAA6B;;;;;EAKxC,CAAC;AAEH,MAAM,WAAW,yBAAyB;IACxC,WAAW,CAAC,EAAE,SAAS,cAAc,EAAE,CAAC;IACxC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,GAAG,SAAS,CAAC,CAAC;CAChD;AAED;;;GAGG;AACH,qBAAa,uBAAuB;IAShC,OAAO,CAAC,QAAQ,CAAC,SAAS;IAR5B,QAAQ,CAAC,UAAU,EAAE,kBAAkB,EAAE,CAAC;IAC1C,QAAQ,CAAC,WAAW,EAAE,cAAc,EAAE,CAAC;IACvC,QAAQ,CAAC,qBAAqB,EAAE,cAAc,EAAE,CAAC;gBAG/C,UAAU,EAAE,kBAAkB,EAAE,EAChC,WAAW,EAAE,cAAc,EAAE,EAC7B,qBAAqB,EAAE,cAAc,EAAE,EACtB,SAAS,EAAE,GAAG,CAAC,YAAY,EAAE,sBAAsB,CAAC;IAOvE,UAAU,CAAC,OAAO,EAAE,YAAY,GAAG,sBAAsB;CAG1D;AAED,6EAA6E;AAC7E,wBAAgB,0BAA0B,CACxC,MAAM,EAAE,SAAS,eAAe,EAAE,EAClC,OAAO,GAAE,yBAA8B,GACtC,uBAAuB,CAiMzB"}
1
+ {"version":3,"file":"effective-operation.d.ts","sourceRoot":"","sources":["../src/effective-operation.ts"],"names":[],"mappings":"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"}
@@ -7,9 +7,10 @@
7
7
  */
8
8
  import { lowerFirst } from '@fougere/schema';
9
9
  import { statementDrift } from './boot/statement-drift.js';
10
+ import { computeBindingPlan } from './wire/binding.js';
10
11
  import { targetOf } from './prefab/prefab.js';
11
12
  import { verify } from './verify.js';
12
- import { inferOperationKind, resolveContracts, knownVerbs, } from './wire/operation.js';
13
+ import { inferOperationKind, knownVerbs, } from './wire/operation.js';
13
14
  /** The absence rules every door normalises to before the handler is invoked. */
14
15
  export const EFFECTIVE_OPERATION_SEMANTICS = Object.freeze({
15
16
  optional: 'undefined',
@@ -450,4 +451,54 @@ function uniqueDiagnostics(diagnostics) {
450
451
  return true;
451
452
  });
452
453
  }
454
+ /**
455
+ * The contract of every operation a handler serves — the three producers, merged once.
456
+ *
457
+ * This lived inline in `buildFacade`, which made the façade the only thing that could
458
+ * answer "what is this op's contract, really?". Anything else asking — a checker, a
459
+ * client generator, a descriptor — had to redo the merge, and a second opinion that
460
+ * drifts reports nothing wrong while looking at the wrong thing.
461
+ *
462
+ * The order is a claim about authority, not a convenience:
463
+ *
464
+ * 1. a prefab DECLARES what it built (`Crud(E).__ops`) — runtime, so it survives a
465
+ * scan that resolved nothing;
466
+ * 2. the scan DERIVES from source — a method written in this very file is the
467
+ * author's own word and beats everything; a method it merely READ on a base
468
+ * class is a guess about someone else's code, and yields to that code's own
469
+ * declaration;
470
+ * 3. `frond.config.ts` STATES — the most explicit statement, made by whoever
471
+ * assembles the app, and the only answer for an op inherited from an installed
472
+ * base class the workspace-only scan cannot see. Merged per key, so stating a
473
+ * `binding` alone does not erase an `input` the scan found.
474
+ *
475
+ * Pure: no container, no instance, no disk. The binding plan is resolved here, so
476
+ * nothing downstream ever meets an AST.
477
+ */
478
+ export function resolveContracts(handler, overrides, collectorTypeNames) {
479
+ const declared = handler.ctor.__ops ?? {};
480
+ const contracts = new Map(Object.entries(declared));
481
+ for (const [opName, scanned] of handler.operations) {
482
+ if (scanned.signature?.inherited && opName in declared)
483
+ continue;
484
+ contracts.set(opName, {
485
+ ...scanned,
486
+ binding: scanned.binding
487
+ ?? (scanned.signature ? computeBindingPlan(scanned.signature.params, collectorTypeNames) : undefined),
488
+ });
489
+ }
490
+ for (const [opName, override] of Object.entries(overrides ?? {})) {
491
+ const { input, output, binding, description } = override;
492
+ if (input === undefined && output === undefined && binding === undefined && description === undefined)
493
+ continue;
494
+ contracts.set(opName, {
495
+ ...contracts.get(opName),
496
+ ...(input !== undefined && { input }),
497
+ ...(output !== undefined && { output }),
498
+ ...(binding !== undefined && { binding }),
499
+ ...(description !== undefined && { description }),
500
+ });
501
+ }
502
+ return contracts;
503
+ }
453
504
  //# sourceMappingURL=effective-operation.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"effective-operation.js","sourceRoot":"","sources":["../src/effective-operation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"effective-operation.js","sourceRoot":"","sources":["../src/effective-operation.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,EAAE,UAAU,EAAmB,MAAM,iBAAiB,CAAC;AAC9D,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAC3D,OAAO,EAAE,kBAAkB,EAAoB,MAAM,mBAAmB,CAAC;AACzE,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAG9C,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EACL,kBAAkB,EAKlB,UAAU,GACX,MAAM,qBAAqB,CAAC;AAkE7B,gFAAgF;AAChF,MAAM,CAAC,MAAM,6BAA6B,GAAG,MAAM,CAAC,MAAM,CAAC;IACzD,QAAQ,EAAE,WAAoB;IAC9B,SAAS,EAAE,SAAkB;IAC7B,IAAI,EAAE,gBAAyB;IAC/B,mBAAmB,EAAE,SAAkB;CACxC,CAAC,CAAC;AAQH;;;GAGG;AACH,MAAM,OAAO,uBAAuB;IASf;IARV,UAAU,CAAuB;IACjC,WAAW,CAAmB;IAC9B,qBAAqB,CAAmB;IAEjD,YACE,UAAgC,EAChC,WAA6B,EAC7B,qBAAuC,EACtB,SAAoD;QAApD,cAAS,GAAT,SAAS,CAA2C;QAErE,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,qBAAqB,GAAG,qBAAqB,CAAC;IACrD,CAAC;IAED,UAAU,CAAC,OAAqB;QAC9B,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,IAAI,GAAG,EAAE,CAAC;IAClD,CAAC;CACF;AAED,6EAA6E;AAC7E,MAAM,UAAU,0BAA0B,CACxC,MAAkC,EAClC,UAAqC,EAAE;IAEvC,MAAM,UAAU,GAAyB,EAAE,CAAC;IAC5C,MAAM,SAAS,GAAG,IAAI,GAAG,EAAwC,CAAC;IAClE,MAAM,qBAAqB,GAAqB,EAAE,CAAC;IACnD,MAAM,eAAe,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,CAAC;IACzD,MAAM,OAAO,GAAG,IAAI,GAAG,CACrB,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,WAAW,CAAU,CAAC,CAAC,CACtG,CAAC;IAEF,qFAAqF;IACrF,oFAAoF;IACpF,qBAAqB,CAAC,IAAI,CAAC,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC,UAAU,EAAE,EAAE,CAClE,UAAU,CAAC,IAAI,KAAK,0BAA0B,CAAC,CAAC,CAAC;IAEnD,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,MAAM,gBAAgB,GAAG,iBAAiB,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QAC7D,KAAK,MAAM,CAAC,QAAQ,EAAE,UAAU,CAAC,IAAI,gBAAgB,EAAE,CAAC;YACtD,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC;gBAAE,SAAS;YACpC,qBAAqB,CAAC,IAAI,CAAC;gBACzB,QAAQ,EAAE,UAAU;gBACpB,IAAI,EAAE,qBAAqB;gBAC3B,QAAQ,EAAE,UAAU,CAAC,CAAC,CAAE,CAAC,QAAQ;gBACjC,KAAK,EAAE,KAAK,CAAC,IAAI;gBACjB,OAAO,EAAE,QAAQ;gBACjB,OAAO,EAAE,UAAU,KAAK,CAAC,IAAI,cAAc,UAAU,CAAC,MAAM,oBAAoB,QAAQ,MAAM;sBAC1F,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI;sBAC3E,kDAAkD;aACvD,CAAC,CAAC;QACL,CAAC;QAED,MAAM,cAAc,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC;QACxF,KAAK,MAAM,OAAO,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;YACrC,MAAM,SAAS,GAAG,IAAI,GAAG,EAA8B,CAAC;YACxD,SAAS,CAAC,GAAG,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;YAClC,MAAM,SAAS,GAAG,gBAAgB,CAAC,OAAO,EAAE,KAAK,CAAC,mBAAmB,EAAE,cAAc,CAAC,CAAC;YACvF,kFAAkF;YAClF,4EAA4E;YAC5E,qBAAqB,CAAC,IAAI,CAAC,GAAG,cAAc,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC;YAE9D,KAAK,MAAM,CAAC,IAAI,EAAE,WAAW,CAAC,IAAI,SAAS,EAAE,CAAC;gBAC5C,MAAM,OAAO,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,EAAE,CAAC;gBAC/C,MAAM,QAAQ,GAAG,gBAAgB,CAAC,WAAW,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,qBAAqB,CAAC,CAAC;gBAC5F,IAAI,CAAC,QAAQ;oBAAE,SAAS;gBAExB,MAAM,QAAQ,GAAG,KAAK,CAAC,mBAAmB,EAAE,CAAC,IAAI,CAAC,CAAC;gBACnD,MAAM,SAAS,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC;gBAC3C,MAAM,aAAa,GAAG,IAAI,GAAG,EAAiB,CAAC;gBAC/C,IAAI,SAAS,CAAC,IAAI;oBAAE,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;gBACtD,IAAI,SAAS,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC;oBAAE,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;gBAClE,IAAI,SAAS,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC;oBAAE,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;gBACtE,MAAM,IAAI,GAAG,QAAQ,EAAE,IAAI;uBACtB,CAAC,aAAa,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;gBACpE,IAAI,CAAC,IAAI,EAAE,CAAC;oBACV,MAAM,SAAS,GAAG,aAAa,CAAC,IAAI,GAAG,CAAC,CAAC;oBACzC,qBAAqB,CAAC,IAAI,CAAC;wBACzB,QAAQ,EAAE,UAAU;wBACpB,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,0BAA0B,CAAC,CAAC,CAAC,wBAAwB;wBACvE,QAAQ,EAAE,OAAO,CAAC,QAAQ;wBAC1B,KAAK,EAAE,KAAK,CAAC,IAAI;wBACjB,OAAO;wBACP,OAAO,EAAE,SAAS;4BAChB,CAAC,CAAC,8BAA8B,OAAO,oCAAoC;kCACvE,IAAI,SAAS,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,yBAAyB;kCAC9D,IAAI,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK;kCAC5C,sBAAsB,IAAI,QAAQ;4BACtC,CAAC,CAAC,8BAA8B,OAAO,MAAM,IAAI,8BAA8B;kCAC3E,qDAAqD,IAAI,WAAW;kCACpE,gCAAgC,UAAU,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;kCAC/D,gBAAgB,UAAU,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;qBACxD,CAAC,CAAC;oBACH,SAAS;gBACX,CAAC;gBAED,MAAM,cAAc,GAAG,gBAAgB,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,qBAAqB,CAAC,CAAC;gBACrF,IAAI,CAAC,cAAc;oBAAE,SAAS;gBAE9B,MAAM,MAAM,GAAG,QAAQ,CAAC,SAAS,EAAE,MAAM,IAAI,EAAE,CAAC;gBAChD,MAAM,UAAU,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,QAAQ,EAAE,EAAE;oBAC5D,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC;oBAC/B,MAAM,WAAW,GAAG,OAAO,CAAC,QAAQ;2BAC/B,KAAK,EAAE,QAAQ,KAAK,IAAI;2BACxB,KAAK,EAAE,IAAI,CAAC,SAAS,KAAK,IAAI,CAAC;oBACpC,OAAO;wBACL,QAAQ;wBACR,IAAI,EAAE,KAAK,EAAE,IAAI,IAAI,OAAO,CAAC,IAAI;wBACjC,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,GAAG,IAAI,IAAI;wBAC7B,QAAQ,EAAE,WAAW;wBACrB,QAAQ,EAAE,KAAK,EAAE,IAAI,CAAC,QAAQ,KAAK,IAAI;wBACvC,WAAW;wBACX,OAAO;qBACqB,CAAC;gBACjC,CAAC,CAAC,CAAC;gBAEH,IAAI,CAAC,kBAAkB,CACrB,MAAM,EACN,KAAK,EACL,OAAO,EACP,IAAI,EACJ,QAAQ,EACR,UAAU,EACV,gBAAgB,EAChB,qBAAqB,CACtB;oBAAE,SAAS;gBAEZ,4EAA4E;gBAC5E,yEAAyE;gBACzE,IAAI,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC;gBAC3B,IAAI,CAAC,KAAK,EAAE,CAAC;oBACX,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC;oBAChF,IAAI,IAAI,EAAE,MAAM,CAAC,IAAI,KAAK,MAAM;wBAAE,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;gBAC9E,CAAC;gBAED,MAAM,MAAM,GAAG,eAAe,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;gBAC/D,MAAM,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC;oBACrD,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC;oBAC/C,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC;gBACtB,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC;gBACrE,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBAC7C,MAAM,EAAE,GAAuB;oBAC7B,GAAG,QAAQ;oBACX,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBAC3B,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBACnD,EAAE,EAAE,GAAG,KAAK,CAAC,IAAI,GAAG,OAAO,IAAI,SAAS,IAAI,IAAI,EAAE;oBAClD,SAAS,EAAE,GAAG,SAAS,IAAI,IAAI,EAAE;oBACjC,IAAI;oBACJ,IAAI;oBACJ,UAAU,EAAE,QAAQ,EAAE,IAAI;wBACxB,CAAC,CAAC,UAAU;wBACZ,CAAC,CAAC,YAAY;oBAChB,OAAO,EAAE;wBACP,SAAS,EAAE,OAAO,CAAC,IAAI,CAAC,IAAI;wBAC5B,OAAO,EAAE,OAAO,CAAC,OAAO;wBACxB,QAAQ,EAAE,OAAO,CAAC,QAAQ;qBAC3B;oBACD,cAAc;oBACd,OAAO,EAAE,QAAQ,CAAC,OAAO;oBACzB,UAAU;oBACV,UAAU,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,EAAE;wBAC3C,IAAI,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,WAAW;4BAAE,OAAO,EAAE,CAAC;wBAC7D,MAAM,SAAS,GAAG,gBAAgB,CAAC,GAAG,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;wBAC/E,OAAO,SAAS,CAAC,CAAC,CAAC,CAAC;gCAClB,SAAS,EAAE,SAAS,CAAC,IAAI;gCACzB,QAAQ,EAAE,SAAS,CAAC,QAAQ;gCAC5B,SAAS,EAAE,SAAS,CAAC,IAAI,CAAC,IAAI;gCAC9B,KAAK,EAAE,KAAK,CAAC,IAAI;gCACjB,QAAQ,EAAE,SAAS,CAAC,QAAQ;6BAC7B,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;oBACV,CAAC,CAAC;oBACF,QAAQ,EAAE,UAAU;yBACjB,MAAM,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,SAAS,CAAC;yBAClE,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC;oBACrC,SAAS,EAAE;wBACT,KAAK,EAAE,KAAK,CAAC,IAAI;wBACjB,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO;wBACpC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;qBAC9B;oBACD,QAAQ,EAAE;wBACR,QAAQ,EAAE,UAAU,CAAC,KAAK,EAAE,OAAO,CAAC;wBACpC,QAAQ,EAAE,eAAe,CAAC,OAAO,EAAE,OAAO,CAAC,QAAQ,CAAC;qBACrD;oBACD,YAAY,EAAE,MAAM,CAAC,MAAM;oBAC3B,SAAS,EAAE,6BAA6B;iBACzC,CAAC;gBACF,SAAS,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;gBACxB,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACtB,CAAC;QACH,CAAC;IACH,CAAC;IAED,oFAAoF;IACpF,qFAAqF;IACrF,KAAK,MAAM,SAAS,IAAI,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;QAC3C,MAAM,cAAc,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,SAAS;eAClE,OAAO,CAAC,OAAO,EAAE,CAAC,SAAS,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,SAAS,CAAC;QAChE,qBAAqB,CAAC,IAAI,CAAC;YACzB,QAAQ,EAAE,cAAc,IAAI,SAAS,CAAC,IAAI,KAAK,wBAAwB;gBACrE,CAAC,CAAC,UAAU;gBACZ,CAAC,CAAC,SAAS,CAAC,QAAQ;YACtB,IAAI,EAAE,SAAS,CAAC,IAAI;YACpB,QAAQ,EAAE,SAAS,CAAC,QAAQ;YAC5B,KAAK,EAAE,SAAS,CAAC,KAAK;YACtB,OAAO,EAAE,SAAS,CAAC,OAAO;YAC1B,OAAO,EAAE,SAAS,CAAC,OAAO;SAC3B,CAAC,CAAC;IACL,CAAC;IAED,MAAM,UAAU,GAAG,iBAAiB,CAAC,qBAAqB,CAAC,CAAC;IAC5D,OAAO,IAAI,uBAAuB,CAChC,UAAU,EACV,iBAAiB,CAAC,CAAC,GAAG,eAAe,EAAE,GAAG,UAAU,CAAC,CAAC,EACtD,UAAU,EACV,SAAS,CACV,CAAC;AACJ,CAAC;AAED,SAAS,iBAAiB,CAAC,UAAqC;IAC9D,MAAM,OAAO,GAAG,IAAI,GAAG,EAA4B,CAAC;IACpD,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;QACnC,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;QACnD,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACrB,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;IACxC,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAS,gBAAgB,CACvB,QAA2B,EAC3B,OAAqB,EACrB,KAAsB,EACtB,IAAY,EACZ,WAA6B;IAE7B,MAAM,MAAM,GAAG,QAAQ,CAAC,SAAS,EAAE,MAAM,IAAI,EAAE,CAAC;IAChD,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;QACtB,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,GAAG,QAAQ,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;QAC7D,WAAW,CAAC,IAAI,CAAC;YACf,QAAQ,EAAE,UAAU;YACpB,IAAI,EAAE,mBAAmB;YACzB,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,KAAK,EAAE,KAAK,CAAC,IAAI;YACjB,OAAO,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,EAAE;YACvC,OAAO,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,aAAa,MAAM,CAAC,MAAM,wCAAwC;SACxG,CAAC,CAAC;QACH,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,GAAG,QAAQ,EAAE,OAAO,EAAE,QAAQ,CAAC,OAAO,EAAE,CAAC;IAE3E,mFAAmF;IACnF,6DAA6D;IAC7D,MAAM,MAAM,GAAG,IAAI,GAAG,EAAqB,CAAC;IAC5C,KAAK,MAAM,OAAO,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;QACvC,MAAM,IAAI,GAAG,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;QAC5C,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACnB,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IACjC,CAAC;IACD,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;IAC5D,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;IACtF,MAAM,MAAM,GAAG,CAAC,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC;IAC9E,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5C,WAAW,CAAC,IAAI,CAAC;YACf,QAAQ,EAAE,UAAU;YACpB,IAAI,EAAE,2BAA2B;YACjC,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,KAAK,EAAE,KAAK,CAAC,IAAI;YACjB,OAAO,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,EAAE;YACvC,OAAO,EAAE,oBAAoB,OAAO,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,mDAAmD;kBACrG,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,YAAY,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;kBACxF,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,YAAY,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;SAC/D,CAAC,CAAC;QACH,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,OAAO;QACL,GAAG,QAAQ;QACX,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAE,CAAC,CAAC,CAAE,CAAC;KAC5D,CAAC;AACJ,CAAC;AAED,SAAS,kBAAkB,CACzB,MAAkC,EAClC,KAAsB,EACtB,OAAqB,EACrB,IAAY,EACZ,QAAsD,EACtD,UAAgC,EAChC,eAA8C,EAC9C,WAA6B;IAE7B,IAAI,KAAK,GAAG,IAAI,CAAC;IACjB,MAAM,QAAQ,GAAI,OAAO,CAAC,IAAsD,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,CAAC;IAC/F,MAAM,eAAe,GAAG,QAAQ,EAAE,OAAO,KAAK,SAAS;WAClD,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,OAAO,KAAK,SAAS;WACnD,KAAK,CAAC,mBAAmB,EAAE,CAAC,IAAI,CAAC,EAAE,OAAO,KAAK,SAAS,CAAC;IAC9D,MAAM,cAAc,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,EAAE,CACrD,UAAU,CAAC,IAAI,KAAK,0BAA0B;WAC3C,UAAU,CAAC,OAAO,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,EAAE,CAAC,CAAC;IAC5D,MAAM,IAAI,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC;IACxF,MAAM,YAAY,GAAG,IAAI,GAAG,EAAsB,CAAC;IAEnD,IAAI,CAAC,eAAe,IAAI,CAAC,cAAc,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;QAC1D,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACtB,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAE,CAAC,CAAC;QAC7B,CAAC;aAAM,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC3B,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE,EAAE,CACxC,aAAa,CAAC,QAAQ,CAAC,KAAM,EAAE,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;YACxF,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACvB,WAAW,CAAC,IAAI,CAAC;oBACf,QAAQ,EAAE,UAAU;oBACpB,IAAI,EAAE,6BAA6B;oBACnC,QAAQ,EAAE,OAAO,CAAC,QAAQ;oBAC1B,KAAK,EAAE,KAAK,CAAC,IAAI;oBACjB,OAAO,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,EAAE;oBACvC,OAAO,EAAE,qCAAqC,OAAO,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,sBAAsB;0BACzF,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,GAAG,SAAS,CAAC,IAAI,KAAK,SAAS,CAAC,IAAI,IAAI,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG;0BAChG,0EAA0E;iBAC/E,CAAC,CAAC;gBACH,OAAO,KAAK,CAAC;YACf,CAAC;YACD,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;gBAAE,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAE,CAAC,CAAC;QAC1D,CAAC;IACH,CAAC;IAED,sFAAsF;IACtF,gFAAgF;IAChF,6CAA6C;IAC7C,KAAK,MAAM,SAAS,IAAI,IAAI,EAAE,CAAC;QAC7B,IAAI,UAAU,CAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC;YAAE,YAAY,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IACpG,CAAC;IAED,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;QACnC,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC;QACxC,IAAI,MAAM,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;YAChC,MAAM,OAAO,GAAG,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YAC3D,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACzB,KAAK,GAAG,KAAK,CAAC;gBACd,WAAW,CAAC,IAAI,CAAC;oBACf,QAAQ,EAAE,UAAU;oBACpB,IAAI,EAAE,OAAO,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC,qBAAqB;oBAC5E,QAAQ,EAAE,OAAO,CAAC,QAAQ;oBAC1B,KAAK,EAAE,KAAK,CAAC,IAAI;oBACjB,OAAO,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,IAAI,SAAS,CAAC,IAAI,GAAG;oBAC1D,OAAO,EAAE,OAAO,CAAC,MAAM,KAAK,CAAC;wBAC3B,CAAC,CAAC,0BAA0B,KAAK,CAAC,IAAI,cAAc,SAAS,CAAC,IAAI,KAAK,SAAS,CAAC,IAAI,IAAI,MAAM,CAAC,QAAQ,GAAG;wBAC3G,CAAC,CAAC,GAAG,OAAO,CAAC,MAAM,yBAAyB,KAAK,CAAC,IAAI,cAAc,MAAM,CAAC,QAAQ,IAAI;iBAC1F,CAAC,CAAC;YACL,CAAC;YACD,SAAS;QACX,CAAC;QACD,IAAI,MAAM,CAAC,IAAI,KAAK,MAAM,IAAI,eAAe,IAAI,cAAc;YAAE,SAAS;QAE1E,MAAM,QAAQ,GAAG,UAAU,CAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;QAC7F,MAAM,SAAS,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,KAAK,KAAK;YACjE,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC;QACjF,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACzB,iFAAiF;YACjF,mBAAmB;YACnB,SAAS;QACX,CAAC;QAED,mFAAmF;QACnF,oFAAoF;QACpF,+EAA+E;QAC/E,MAAM,UAAU,GAAG,eAAe,IAAI,YAAY,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAClE,IAAI,UAAU;YAAE,SAAS;QACzB,KAAK,GAAG,KAAK,CAAC;QACd,WAAW,CAAC,IAAI,CAAC;YACf,QAAQ,EAAE,UAAU;YACpB,IAAI,EAAE,2BAA2B;YACjC,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,KAAK,EAAE,KAAK,CAAC,IAAI;YACjB,OAAO,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,IAAI,SAAS,CAAC,IAAI,GAAG;YAC1D,OAAO,EAAE,mCAAmC,OAAO,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,GAAG;kBACpE,GAAG,SAAS,CAAC,IAAI,KAAK,SAAS,CAAC,IAAI,IAAI,SAAS,2CAA2C;kBAC5F,wEAAwE;SAC7E,CAAC,CAAC;IACL,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,UAAU,CAAC,IAAyB;IAC3C,OAAO,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;AACtD,CAAC;AAED,SAAS,aAAa,CAAC,MAAkB,EAAE,IAAyB;IAClE,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;IACpF,IAAI,IAAI,EAAE,IAAI,IAAI,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC;IACpD,OAAO,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,IAAI,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK,CAAC;AAC7F,CAAC;AAED,SAAS,gBAAgB,CACvB,KAAsB,EACtB,OAAqB,EACrB,IAAY,EACZ,WAA6B;IAE7B,MAAM,QAAQ,GAAG,KAAK,CAAC,mBAAmB,EAAE,CAAC,IAAI,CAAC,CAAC;IACnD,MAAM,UAAU,GAAG,QAAQ,EAAE,WAAW;QACtC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,KAAK,QAAQ,CAAC,WAAW,CAAC;QACpF,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;IACd,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC5B,WAAW,CAAC,IAAI,CAAC;YACf,QAAQ,EAAE,UAAU;YACpB,IAAI,EAAE,UAAU,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,8BAA8B,CAAC,CAAC,CAAC,6BAA6B;YAC9F,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,KAAK,EAAE,KAAK,CAAC,IAAI;YACjB,OAAO,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,EAAE;YACvC,OAAO,EAAE,aAAa,OAAO,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,mBAAmB,QAAQ,EAAE,WAAW,KAAK;kBACxF,OAAO,UAAU,CAAC,MAAM,gCAAgC;SAC7D,CAAC,CAAC;QACH,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,MAAM,cAAc,GAAG,UAAU,CAAC,CAAC,CAAE,CAAC;IACtC,MAAM,MAAM,GAAG,QAAQ,EAAE,MAAM,IAAI,IAAI,CAAC;IACxC,MAAM,QAAQ,GAAG,cAAc,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC;WACjD,OAAQ,cAAc,CAAC,IAAgD,CAAC,SAAS,EAAE,CAAC,MAAM,CAAC,KAAK,UAAU;WAC1G,MAAM,IAAI,CAAE,cAAc,CAAC,IAA4C,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;IAC1F,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,WAAW,CAAC,IAAI,CAAC;YACf,QAAQ,EAAE,UAAU;YACpB,IAAI,EAAE,6BAA6B;YACnC,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,KAAK,EAAE,KAAK,CAAC,IAAI;YACjB,OAAO,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,EAAE;YACvC,OAAO,EAAE,aAAa,OAAO,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,eAAe;kBAC1D,GAAG,cAAc,CAAC,IAAI,CAAC,IAAI,IAAI,MAAM,mCAAmC;SAC7E,CAAC,CAAC;QACH,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,OAAO;QACL,SAAS,EAAE,cAAc,CAAC,IAAI,CAAC,IAAI;QACnC,OAAO,EAAE,cAAc,CAAC,OAAO;QAC/B,MAAM;QACN,QAAQ,EAAE,cAAc,CAAC,QAAQ;KAClC,CAAC;AACJ,CAAC;AAED,SAAS,eAAe,CACtB,KAAsB,EACtB,OAAqB,EACrB,IAAY,EACZ,QAA2B;IAE3B,MAAM,YAAY,GAAI,OAAO,CAAC,IAAqD,CAAC,WAAW,EAAE,CAAC,IAAI,CAAC,CAAC;IACxG,IAAI,YAAY;QAAE,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;IAChE,IAAI,QAAQ,CAAC,MAAM;QAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;IACvE,MAAM,WAAW,GAAG,OAAO,CAAC,cAAc;WACpC,OAAO,CAAC,IAAkC,CAAC,QAAQ,CAAC;IAC1D,IAAI,WAAW;QAAE,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;IAE/D,MAAM,MAAM,GAAG,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAkC,CAAC;IACvE,MAAM,OAAO,GAAG,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;IACzE,MAAM,MAAM,GAAG,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC;IAC9E,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;AAC9E,CAAC;AAED,SAAS,UAAU,CAAC,KAAsB,EAAE,OAAqB;IAC/D,IAAI,OAAO,CAAC,OAAO;QAAE,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAC9C,MAAM,QAAQ,GAAG,CAAC,SAAS,CAAC,CAAC;IAC7B,KAAK,MAAM,CAAC,OAAO,EAAE,SAAS,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,IAAI,EAAE,CAAC,EAAE,CAAC;QACxE,MAAM,SAAS,GAAG,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAClD,SAAS,CAAC,OAAO,KAAK,OAAO,CAAC,OAAO,IAAI,SAAS,CAAC,OAAO,KAAK,OAAO,CAAC,CAAC;QAC1E,IAAI,CAAC,SAAS,IAAI,SAAS,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAC3C,OAAO,CAAC,WAAW,EAAE,KAAK,OAAO,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;YAAE,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACrF,CAAC;IACD,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAE,EAAE,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;AACrD,CAAC;AAED,SAAS,eAAe,CACtB,OAAqB,EACrB,QAAyD;IAEzD,IAAI,OAAO,CAAC,OAAO,KAAK,KAAK,IAAI,CAAC,OAAO,CAAC,OAAO;QAAE,OAAO,EAAE,CAAC;IAC7D,OAAO,MAAM,CAAC,OAAO,CAAC,QAAQ,IAAI,EAAE,CAAC;SAClC,MAAM,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC,OAAO,KAAK,IAAI,CAAC;SACzC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC;SAC3B,IAAI,EAAE,CAAC;AACZ,CAAC;AAED,SAAS,iBAAiB,CAAC,WAAsC;IAC/D,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,OAAO,WAAW,CAAC,MAAM,CAAC,CAAC,UAAU,EAAE,EAAE;QACvC,MAAM,GAAG,GAAG,CAAC,UAAU,CAAC,IAAI,EAAE,UAAU,CAAC,QAAQ,EAAE,UAAU,CAAC,OAAO,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACtG,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;YAAE,OAAO,KAAK,CAAC;QAChC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACd,OAAO,IAAI,CAAC;IACd,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,UAAU,gBAAgB,CAC9B,OAAkD,EAClD,SAAiD,EACjD,kBAA+B;IAE/B,MAAM,QAAQ,GAAI,OAAO,CAAC,IAAsD,CAAC,KAAK,IAAI,EAAE,CAAC;IAC7F,MAAM,SAAS,GAAkB,IAAI,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC;IAEnE,KAAK,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;QACnD,IAAI,OAAO,CAAC,SAAS,EAAE,SAAS,IAAI,MAAM,IAAI,QAAQ;YAAE,SAAS;QACjE,SAAS,CAAC,GAAG,CAAC,MAAM,EAAE;YACpB,GAAG,OAAO;YACV,OAAO,EAAE,OAAO,CAAC,OAAO;mBACnB,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,kBAAkB,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;SACxG,CAAC,CAAC;IACL,CAAC;IAED,KAAK,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,SAAS,IAAI,EAAE,CAAC,EAAE,CAAC;QACjE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,GAAG,QAAQ,CAAC;QACzD,IAAI,KAAK,KAAK,SAAS,IAAI,MAAM,KAAK,SAAS,IAAI,OAAO,KAAK,SAAS,IAAI,WAAW,KAAK,SAAS;YAAE,SAAS;QAChH,SAAS,CAAC,GAAG,CAAC,MAAM,EAAE;YACpB,GAAG,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC;YACxB,GAAG,CAAC,KAAK,KAAK,SAAS,IAAI,EAAE,KAAK,EAAE,CAAC;YACrC,GAAG,CAAC,MAAM,KAAK,SAAS,IAAI,EAAE,MAAM,EAAE,CAAC;YACvC,GAAG,CAAC,OAAO,KAAK,SAAS,IAAI,EAAE,OAAO,EAAE,CAAC;YACzC,GAAG,CAAC,WAAW,KAAK,SAAS,IAAI,EAAE,WAAW,EAAE,CAAC;SAClD,CAAC,CAAC;IACL,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC"}
package/dist/emit.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * What an emitter injects. Resolved by type, like `EntityOrm<Post>` and `Facade<T>`.
2
+ * What an emitter injects. Resolved by type, like `Storage<Post>` and `Facade<T>`.
3
3
  *
4
4
  * The returned promise settles when the fact has been **dispatched**, never when it has
5
5
  * been handled: a subscriber's failure is its own. The `EventBus` this replaces did
@@ -1,5 +1,5 @@
1
1
  import type { EntityConstructor, SchemaView } from '@fougere/schema';
2
- import type { BindingPlan } from './boot/binding.js';
2
+ import type { BindingPlan } from './wire/binding.js';
3
3
  /**
4
4
  * Per-operation override. Config takes precedence over conventions (isReadOp, facade lookup).
5
5
  *
@@ -81,7 +81,7 @@ export interface FrondConfig {
81
81
  * door on purpose ("it would publish the auth tables to anyone who asks"), and a SQL
82
82
  * door at app scope would hand them over; this is what keeps it shut.
83
83
  *
84
- * Declaring it is what makes `Sources` injectable here. A frond that declares none
84
+ * Declaring it is what makes `Reads` injectable here. A frond that declares none
85
85
  * asks for none, and nothing is attached on its behalf.
86
86
  */
87
87
  reads?: string[];
package/dist/graph.d.ts CHANGED
@@ -2,7 +2,7 @@
2
2
  * Entity dependency graph — analyzes ref() links between entities
3
3
  * to suggest domain boundaries for splitting fronds.
4
4
  */
5
- import type { FrondDescriptor } from './scan/frond.js';
5
+ import type { FrondDescriptor } from './descriptor/frond.js';
6
6
  export interface EntityNode {
7
7
  name: string;
8
8
  frond: string;
@@ -1 +1 @@
1
- {"version":3,"file":"graph.d.ts","sourceRoot":"","sources":["../src/graph.ts"],"names":[],"mappings":"AACA;;;GAGG;AACH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAEvD,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,YAAY,EAAE,MAAM,EAAE,CAAC;CACxB;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,SAAS,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAC;QAAC,aAAa,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;CAClE;AAED,kEAAkE;AAClE,wBAAgB,UAAU,CAAC,MAAM,EAAE,eAAe,EAAE,GAAG,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,CA6B7E;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,GAAG,aAAa,EAAE,CAwC/E;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAC1B,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,EAC9B,cAAc,SAAI,GACjB,aAAa,EAAE,CAmDjB"}
1
+ {"version":3,"file":"graph.d.ts","sourceRoot":"","sources":["../src/graph.ts"],"names":[],"mappings":"AACA;;;GAGG;AACH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAE7D,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,YAAY,EAAE,MAAM,EAAE,CAAC;CACxB;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,SAAS,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAC;QAAC,aAAa,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;CAClE;AAED,kEAAkE;AAClE,wBAAgB,UAAU,CAAC,MAAM,EAAE,eAAe,EAAE,GAAG,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,CA6B7E;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,GAAG,aAAa,EAAE,CAwC/E;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAC1B,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,EAC9B,cAAc,SAAI,GACjB,aAAa,EAAE,CAmDjB"}
package/dist/imports.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import type { FrondDescriptor } from './scan/frond.js';
1
+ import type { FrondDescriptor } from './descriptor/frond.js';
2
2
  export interface CrossFrondImport {
3
3
  /** Stable rule name — the same vocabulary `verify()` uses. */
4
4
  rule: 'cross-frond-import';
@@ -1 +1 @@
1
- {"version":3,"file":"imports.d.ts","sourceRoot":"","sources":["../src/imports.ts"],"names":[],"mappings":"AA2BA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAQvD,MAAM,WAAW,gBAAgB;IAC/B,8DAA8D;IAC9D,IAAI,EAAE,oBAAoB,CAAC;IAC3B,oCAAoC;IACpC,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,gCAAgC;IAChC,SAAS,EAAE,MAAM,CAAC;IAClB,8EAA8E;IAC9E,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;CACjB;AA2BD;;;;;;GAMG;AACH,wBAAsB,iBAAiB,CACrC,MAAM,EAAE,SAAS,IAAI,CAAC,eAAe,EAAE,MAAM,GAAG,QAAQ,CAAC,EAAE,GAC1D,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAwC7B"}
1
+ {"version":3,"file":"imports.d.ts","sourceRoot":"","sources":["../src/imports.ts"],"names":[],"mappings":"AA2BA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAQ7D,MAAM,WAAW,gBAAgB;IAC/B,8DAA8D;IAC9D,IAAI,EAAE,oBAAoB,CAAC;IAC3B,oCAAoC;IACpC,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,gCAAgC;IAChC,SAAS,EAAE,MAAM,CAAC;IAClB,8EAA8E;IAC9E,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;CACjB;AA2BD;;;;;;GAMG;AACH,wBAAsB,iBAAiB,CACrC,MAAM,EAAE,SAAS,IAAI,CAAC,eAAe,EAAE,MAAM,GAAG,QAAQ,CAAC,EAAE,GAC1D,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAwC7B"}
package/dist/index.d.ts CHANGED
@@ -36,17 +36,19 @@ export type { CallPage, CallRecord } from './contract/CallLog.js';
36
36
  export { driftOf, agrees, explain, type CardDrift } from './wire/drift.js';
37
37
  export type { DispatchObserver } from './dispatch/DispatchEvent.js';
38
38
  export type { DispatchPort } from './dispatch/DispatchPort.js';
39
- export { inferOperationKind, resolveContracts, resolveIsReadOp, resolveOperationKind, } from './wire/operation.js';
40
- export type { OperationContract, OperationKind, OperationKindInference, OperationsMap, ParsedParam, ParsedType, } from './wire/operation.js';
39
+ export { inferOperationKind, resolveIsReadOp, resolveOperationKind, } from './wire/operation.js';
40
+ export { resolveContracts } from './effective-operation.js';
41
+ export type { OperationContract, OperationKind, OperationKindInference, OperationsMap, Param, TypeRef, } from './wire/operation.js';
41
42
  export { EFFECTIVE_OPERATION_SEMANTICS, EffectiveOperationModel, resolveEffectiveOperations, } from './effective-operation.js';
42
43
  export type { EffectiveCollector, EffectiveOperation, EffectiveOperationOptions, EffectiveOperationsMap, EffectiveParameter, } from './effective-operation.js';
43
44
  export type { ModuleLoader } from './loader.js';
44
45
  export { FougereError, ErrorCode, validationErrorsOf, type FougereErrorOptions } from './wire/errors.js';
45
46
  export type { OperationContext, AppNext, AppMiddleware } from './wire/middleware.js';
46
- export { createLocalRunner, createAppRunner, assertIdentityCard, RPC_ENTITY, MAX_BODY_BYTES } from './wire/call.js';
47
- export { frond } from './scan/declare.js';
48
- export type { FrondDeclaration, Declared, DeclaredSubject } from './scan/declare.js';
49
- export { identityCardOf } from './wire/call.js';
47
+ export { assertIdentityCard, RPC_ENTITY, MAX_BODY_BYTES } from './wire/call.js';
48
+ export { createLocalRunner, createAppRunner } from './boot/runner.js';
49
+ export { frond } from './declare.js';
50
+ export type { FrondDeclaration, Declared, DeclaredSubject } from './declare.js';
51
+ export { identityCardOf } from './boot/card.js';
50
52
  export type { FrondCall, Transport, IdentityCard, CardOp, Facade, RpcAnswer, TopologyReport, FrondPlacement, Edge, } from './wire/call.js';
51
53
  export { type Emit, type Fact } from './emit.js';
52
54
  export { callValueOf } from './contract.js';
@@ -57,12 +59,15 @@ export { Logger, setLogLevel, logLevel, envLevel, onLog } from './builtins/logge
57
59
  export type { LogLevel, LogRecord, LogSink } from './builtins/logger.js';
58
60
  export { applyConfig, type ConfigApplication } from './boot/apply.js';
59
61
  export { Config } from './builtins/config.js';
60
- export type { EntityOrm, OrmFactory, ListOptions, ListResult, Together } from './orm.js';
61
- export { togetherKeyOf, membersOfTogetherKey } from './orm.js';
62
+ export type { Storage, StorageFactory, Source, SourceConfig, SourceView, ListOptions, ListResult, Together } from './storage.js';
63
+ export { Sources, togetherKeyOf, membersOfTogetherKey } from './storage.js';
64
+ export { storageOver } from './rows.js';
65
+ export type { Rows, Row } from './rows.js';
62
66
  export type { App, CreateAppOptions } from './boot/types.js';
63
- export type { ScanResult, ScanDiagnostic, FrondDescriptor, FrondSource, ProviderEntry, EntityEntry, HandlerEntry, SeedEntry, SeedFactory, PresenterEntry, PresenterFieldMeta, CollectorEntry, } from './scan/frond.js';
67
+ export type { ScanResult, ScanDiagnostic } from './scan/result.js';
68
+ export type { FrondDescriptor, FrondSource, ProviderEntry, EntityEntry, HandlerEntry, SeedEntry, SeedFactory, PresenterEntry, PresenterFieldMeta, CollectorEntry, } from './descriptor/frond.js';
64
69
  export type { AuthConfig, AuthContext, AuthRuntime } from './boot/auth.js';
65
- export { Fronds } from './scan/Fronds.js';
70
+ export { Fronds } from './descriptor/Fronds.js';
66
71
  export { verify, assertSplittable, type Violation } from './verify.js';
67
72
  export type { CrossFrondImport } from './imports.js';
68
73
  export { signEnvelope, verifyEnvelope, identityFromEnv } from './identity.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
@@ -27,17 +27,19 @@ export { Dispatcher } from './dispatch/Dispatcher.js';
27
27
  // them — or a test of one — has to be able to make one through the door.
28
28
  export { DispatchEvent } from './dispatch/DispatchEvent.js';
29
29
  export { driftOf, agrees, explain } from './wire/drift.js';
30
- export { inferOperationKind, resolveContracts, resolveIsReadOp, resolveOperationKind, } from './wire/operation.js';
30
+ export { inferOperationKind, resolveIsReadOp, resolveOperationKind, } from './wire/operation.js';
31
+ export { resolveContracts } from './effective-operation.js';
31
32
  export { EFFECTIVE_OPERATION_SEMANTICS, EffectiveOperationModel, resolveEffectiveOperations, } from './effective-operation.js';
32
33
  export { FougereError, ErrorCode, validationErrorsOf } from './wire/errors.js';
33
- export { createLocalRunner, createAppRunner, assertIdentityCard, RPC_ENTITY, MAX_BODY_BYTES } from './wire/call.js';
34
+ export { assertIdentityCard, RPC_ENTITY, MAX_BODY_BYTES } from './wire/call.js';
35
+ export { createLocalRunner, createAppRunner } from './boot/runner.js';
34
36
  // A frond an app STATES, for a boot that will not scan. No disk, no `typescript` — which
35
37
  // is why it sits here and not in `/node`, beside the scanner that reads a project.
36
- export { frond } from './scan/declare.js';
38
+ export { frond } from './declare.js';
37
39
  // What this app would answer to `rpc.discover`. Served by the boot, and reached until now
38
40
  // only by tests through a deep path — a consumer comparing its own card to a producer's
39
41
  // had to dispatch a call to ask a question about itself.
40
- export { identityCardOf } from './wire/call.js';
42
+ export { identityCardOf } from './boot/card.js';
41
43
  export { callValueOf } from './contract.js';
42
44
  export { toHttpError, toPublicError } from './wire/http-error.js';
43
45
  export { loggerMiddleware } from './wire/loggerMiddleware.js';
@@ -45,8 +47,9 @@ export { Logger, setLogLevel, logLevel, envLevel, onLog } from './builtins/logge
45
47
  // What a re-read config changes in a running process — and what it cannot.
46
48
  export { applyConfig } from './boot/apply.js';
47
49
  export { Config } from './builtins/config.js';
48
- export { togetherKeyOf, membersOfTogetherKey } from './orm.js';
49
- export { Fronds } from './scan/Fronds.js';
50
+ export { Sources, togetherKeyOf, membersOfTogetherKey } from './storage.js';
51
+ export { storageOver } from './rows.js';
52
+ export { Fronds } from './descriptor/Fronds.js';
50
53
  export { verify, assertSplittable } from './verify.js';
51
54
  // Who is calling, established rather than accepted — the proof beside `state`'s claim.
52
55
  // `generateKeyPair` and `issueGrant` are NOT here: they make keys at a deployment and
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,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,YAAY,IAAI,SAAS,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAE5F,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAG5C,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,YAAY,EAAuC,MAAM,YAAY,CAAC;AAC5G,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAExC,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAE5C,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAElD,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EAAE,UAAU,EAA8F,MAAM,wBAAwB,CAAC;AAChJ,OAAO,EAAE,UAAU,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAE7F,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAE1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,uFAAuF;AACvF,yEAAyE;AACzE,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAE5D,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAkB,MAAM,iBAAiB,CAAC;AAG3E,OAAO,EACL,kBAAkB,EAClB,gBAAgB,EAChB,eAAe,EACf,oBAAoB,GACrB,MAAM,qBAAqB,CAAC;AAS7B,OAAO,EACL,6BAA6B,EAC7B,uBAAuB,EACvB,0BAA0B,GAC3B,MAAM,0BAA0B,CAAC;AASlC,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,kBAAkB,EAA4B,MAAM,kBAAkB,CAAC;AAEzG,OAAO,EAAE,iBAAiB,EAAE,eAAe,EAAE,kBAAkB,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAEpH,yFAAyF;AACzF,mFAAmF;AACnF,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAE1C,0FAA0F;AAC1F,wFAAwF;AACxF,yDAAyD;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAMhD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAClE,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAEtF,2EAA2E;AAC3E,OAAO,EAAE,WAAW,EAA0B,MAAM,iBAAiB,CAAC;AACtE,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAE9C,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAiB/D,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAE,MAAM,EAAE,gBAAgB,EAAkB,MAAM,aAAa,CAAC;AAGvE,uFAAuF;AACvF,sFAAsF;AACtF,mFAAmF;AACnF,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}