@craft-ts/core 0.7.0-beta.13 → 0.7.0-beta.16

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 (699) hide show
  1. package/package.json +10 -2
  2. package/src/index.d.ts +156 -148
  3. package/src/index.js +153 -142
  4. package/src/lib/after-recomputation.d.ts +3 -4
  5. package/src/lib/after-recomputation.js +3 -4
  6. package/src/lib/app-checked-di.d.ts +3 -4
  7. package/src/lib/app-checked-di.js +0 -1
  8. package/src/lib/async-process.d.ts +18 -19
  9. package/src/lib/async-process.js +24 -25
  10. package/src/lib/branded-component/branded-component.d.ts +3 -4
  11. package/src/lib/branded-component/branded-component.js +0 -1
  12. package/src/lib/browser-boundaries.d.ts +6 -7
  13. package/src/lib/browser-boundaries.js +5 -6
  14. package/src/lib/client-di-requirement.d.ts +1 -2
  15. package/src/lib/client-di-requirement.js +0 -1
  16. package/src/lib/client-function-middleware.d.ts +8 -92
  17. package/src/lib/client-function-middleware.js +89 -90
  18. package/src/lib/component-monitoring.d.ts +1 -2
  19. package/src/lib/component-monitoring.js +2 -3
  20. package/src/lib/component-register.d.ts +1 -2
  21. package/src/lib/component-register.js +1 -2
  22. package/src/lib/computed-source.d.ts +3 -4
  23. package/src/lib/computed-source.js +2 -3
  24. package/src/lib/correlation-id-plugin.d.ts +1 -2
  25. package/src/lib/correlation-id-plugin.js +6 -7
  26. package/src/lib/correlation-id.d.ts +4 -5
  27. package/src/lib/correlation-id.js +3 -4
  28. package/src/lib/craft-a11y.d.ts +3 -4
  29. package/src/lib/craft-a11y.js +5 -6
  30. package/src/lib/craft-activated-route.d.ts +2 -3
  31. package/src/lib/craft-activated-route.js +2 -3
  32. package/src/lib/craft-app-config.d.ts +4 -5
  33. package/src/lib/craft-app-config.js +3 -4
  34. package/src/lib/craft-codec.d.ts +0 -1
  35. package/src/lib/craft-codec.js +0 -1
  36. package/src/lib/craft-computed.d.ts +6 -7
  37. package/src/lib/craft-computed.js +7 -8
  38. package/src/lib/craft-control-flow.d.ts +0 -1
  39. package/src/lib/craft-control-flow.js +2 -3
  40. package/src/lib/craft-effect.d.ts +2 -3
  41. package/src/lib/craft-effect.js +7 -8
  42. package/src/lib/craft-exception.d.ts +0 -1
  43. package/src/lib/craft-exception.js +0 -1
  44. package/src/lib/craft-gen.d.ts +1 -2
  45. package/src/lib/craft-gen.js +2 -3
  46. package/src/lib/craft-generator-runtime.d.ts +21 -5
  47. package/src/lib/craft-generator-runtime.js +28 -6
  48. package/src/lib/craft-guard-runtime.d.ts +4 -5
  49. package/src/lib/craft-guard-runtime.js +6 -7
  50. package/src/lib/craft-handshake.d.ts +1 -2
  51. package/src/lib/craft-handshake.js +0 -1
  52. package/src/lib/craft-http-client.d.ts +3 -4
  53. package/src/lib/craft-http-client.js +4 -5
  54. package/src/lib/craft-http-trace.d.ts +1 -2
  55. package/src/lib/craft-http-trace.js +5 -2
  56. package/src/lib/craft-hydration.d.ts +11 -0
  57. package/src/lib/craft-hydration.js +2 -0
  58. package/src/lib/craft-lazy.d.ts +3 -4
  59. package/src/lib/craft-lazy.js +5 -6
  60. package/src/lib/craft-load-retry.d.ts +2 -3
  61. package/src/lib/craft-load-retry.js +11 -4
  62. package/src/lib/craft-machine-history.d.ts +6 -7
  63. package/src/lib/craft-machine-history.js +6 -7
  64. package/src/lib/craft-match.d.ts +0 -1
  65. package/src/lib/craft-match.js +0 -1
  66. package/src/lib/craft-method.d.ts +3 -4
  67. package/src/lib/craft-method.js +5 -6
  68. package/src/lib/craft-node-directive.d.ts +3 -4
  69. package/src/lib/craft-node-directive.js +2 -3
  70. package/src/lib/craft-pending.d.ts +3 -4
  71. package/src/lib/craft-pending.js +2 -3
  72. package/src/lib/craft-pipe.d.ts +1 -2
  73. package/src/lib/craft-pipe.js +7 -8
  74. package/src/lib/craft-platform.d.ts +2 -3
  75. package/src/lib/craft-platform.js +2 -3
  76. package/src/lib/craft-primitive-gen.d.ts +7 -8
  77. package/src/lib/craft-primitive-gen.js +4 -5
  78. package/src/lib/craft-primitive-registry.d.ts +4 -2
  79. package/src/lib/craft-primitive-registry.js +5 -3
  80. package/src/lib/craft-program-operators.d.ts +3 -4
  81. package/src/lib/craft-program-operators.js +4 -5
  82. package/src/lib/craft-program-runtime.d.ts +3 -4
  83. package/src/lib/craft-program-runtime.js +7 -8
  84. package/src/lib/craft-register-for-runtime.d.ts +2 -3
  85. package/src/lib/craft-register-for-runtime.js +2 -3
  86. package/src/lib/craft-register-for.d.ts +3 -4
  87. package/src/lib/craft-register-for.js +6 -7
  88. package/src/lib/craft-render-identity.d.ts +0 -1
  89. package/src/lib/craft-render-identity.js +1 -2
  90. package/src/lib/craft-replay.d.ts +0 -1
  91. package/src/lib/craft-replay.js +0 -1
  92. package/src/lib/craft-request-context.d.ts +15 -0
  93. package/src/lib/craft-request-context.js +40 -0
  94. package/src/lib/craft-resolve.d.ts +2 -3
  95. package/src/lib/craft-resolve.js +0 -1
  96. package/src/lib/craft-resource.d.ts +2 -3
  97. package/src/lib/craft-resource.js +14 -6
  98. package/src/lib/craft-route-exceptions.d.ts +27 -28
  99. package/src/lib/craft-route-exceptions.js +3 -4
  100. package/src/lib/craft-route-load-error.d.ts +92 -93
  101. package/src/lib/craft-route-load-error.js +6 -7
  102. package/src/lib/craft-route-meta.d.ts +4 -5
  103. package/src/lib/craft-route-meta.js +0 -1
  104. package/src/lib/craft-route-target.d.ts +1 -2
  105. package/src/lib/craft-route-target.js +1 -2
  106. package/src/lib/craft-router-outlet.d.ts +7 -7
  107. package/src/lib/craft-router-outlet.js +24 -18
  108. package/src/lib/craft-router-tokens.d.ts +3 -4
  109. package/src/lib/craft-router-tokens.js +2 -3
  110. package/src/lib/craft-router-trace.d.ts +3 -4
  111. package/src/lib/craft-router-trace.js +9 -3
  112. package/src/lib/craft-router.d.ts +16 -17
  113. package/src/lib/craft-router.js +75 -74
  114. package/src/lib/craft-routes.d.ts +20 -15
  115. package/src/lib/craft-routes.js +13 -12
  116. package/src/lib/craft-runtime-mode.d.ts +13 -0
  117. package/src/lib/craft-runtime-mode.js +21 -0
  118. package/src/lib/craft-security.d.ts +87 -0
  119. package/src/lib/craft-security.js +117 -0
  120. package/src/lib/craft-service.d.ts +12 -13
  121. package/src/lib/craft-service.js +11 -12
  122. package/src/lib/craft-service.shared.d.ts +0 -1
  123. package/src/lib/craft-service.shared.js +0 -1
  124. package/src/lib/craft-settled.d.ts +23 -16
  125. package/src/lib/craft-settled.js +9 -10
  126. package/src/lib/craft-ssr.d.ts +2 -3
  127. package/src/lib/craft-ssr.js +4 -5
  128. package/src/lib/craft-state-machine-runtime.d.ts +2 -3
  129. package/src/lib/craft-state-machine-runtime.js +3 -4
  130. package/src/lib/craft-state-machine.d.ts +5 -6
  131. package/src/lib/craft-state-machine.js +9 -10
  132. package/src/lib/craft-target-runtime.d.ts +1 -2
  133. package/src/lib/craft-target-runtime.js +2 -3
  134. package/src/lib/craft-transfer-snapshot.d.ts +10 -5
  135. package/src/lib/craft-transfer-snapshot.js +139 -14
  136. package/src/lib/craft-unique.d.ts +0 -1
  137. package/src/lib/craft-unique.js +0 -1
  138. package/src/lib/craft-until-settled.d.ts +5 -6
  139. package/src/lib/craft-until-settled.js +4 -5
  140. package/src/lib/craft-use.d.ts +0 -1
  141. package/src/lib/craft-use.js +2 -3
  142. package/src/lib/craft-view-transition.d.ts +2 -3
  143. package/src/lib/craft-view-transition.js +2 -3
  144. package/src/lib/dev-tools.d.ts +7 -0
  145. package/src/lib/dev-tools.js +244 -0
  146. package/src/lib/dom-event-hook.d.ts +1 -2
  147. package/src/lib/dom-event-hook.js +1 -2
  148. package/src/lib/fn-wrapper.d.ts +2 -3
  149. package/src/lib/fn-wrapper.js +3 -4
  150. package/src/lib/form/craft-field.d.ts +2 -3
  151. package/src/lib/form/craft-field.directive.d.ts +6 -7
  152. package/src/lib/form/craft-field.directive.js +5 -6
  153. package/src/lib/form/craft-field.js +1 -2
  154. package/src/lib/form/field-exception.d.ts +4 -5
  155. package/src/lib/form/field-exception.js +1 -2
  156. package/src/lib/form/field-lens.d.ts +0 -1
  157. package/src/lib/form/field-lens.js +0 -1
  158. package/src/lib/form/insert-form-attributes.d.ts +6 -7
  159. package/src/lib/form/insert-form-attributes.js +5 -6
  160. package/src/lib/form/insert-form-internals.d.ts +11 -12
  161. package/src/lib/form/insert-form-internals.js +9 -10
  162. package/src/lib/form/insert-form-schema.d.ts +3 -4
  163. package/src/lib/form/insert-form-schema.js +4 -5
  164. package/src/lib/form/insert-form-submit.d.ts +7 -8
  165. package/src/lib/form/insert-form-submit.js +3 -4
  166. package/src/lib/form/insert-form.d.ts +6 -7
  167. package/src/lib/form/insert-form.js +8 -9
  168. package/src/lib/form/insert-select-form-tree.d.ts +2 -3
  169. package/src/lib/form/insert-select-form-tree.js +5 -6
  170. package/src/lib/form/insert-sub-form-field.d.ts +3 -4
  171. package/src/lib/form/insert-sub-form-field.js +6 -7
  172. package/src/lib/form/make-form-tree-insert.d.ts +1 -2
  173. package/src/lib/form/make-form-tree-insert.js +3 -4
  174. package/src/lib/form/target-form-field.d.ts +0 -1
  175. package/src/lib/form/target-form-field.js +0 -1
  176. package/src/lib/form/validator.d.ts +5 -6
  177. package/src/lib/form/validator.js +3 -4
  178. package/src/lib/from-event-to-source$.d.ts +2 -3
  179. package/src/lib/from-event-to-source$.js +3 -4
  180. package/src/lib/global-persister-handler.service.d.ts +1 -2
  181. package/src/lib/global-persister-handler.service.js +2 -3
  182. package/src/lib/host/craft-compat.d.ts +2 -3
  183. package/src/lib/host/craft-compat.js +2 -3
  184. package/src/lib/host/craft-dom.d.ts +0 -1
  185. package/src/lib/host/craft-dom.js +0 -1
  186. package/src/lib/host/craft-http.d.ts +0 -1
  187. package/src/lib/host/craft-http.js +0 -1
  188. package/src/lib/host/craft-injector-host.d.ts +2 -3
  189. package/src/lib/host/craft-injector-host.js +1 -2
  190. package/src/lib/host/craft-injector.d.ts +0 -1
  191. package/src/lib/host/craft-injector.js +0 -1
  192. package/src/lib/host/craft-linked-signal.d.ts +1 -2
  193. package/src/lib/host/craft-linked-signal.js +2 -3
  194. package/src/lib/host/craft-router-runtime.d.ts +0 -1
  195. package/src/lib/host/craft-router-runtime.js +0 -1
  196. package/src/lib/host/craft-router-types.d.ts +1 -2
  197. package/src/lib/host/craft-router-types.js +1 -2
  198. package/src/lib/host/craft-signal.d.ts +0 -1
  199. package/src/lib/host/craft-signal.js +1 -2
  200. package/src/lib/host/craft-test-bed.d.ts +2 -3
  201. package/src/lib/host/craft-test-bed.js +2 -3
  202. package/src/lib/host-tag.d.ts +1 -2
  203. package/src/lib/host-tag.js +1 -2
  204. package/src/lib/http-server.d.ts +156 -0
  205. package/src/lib/http-server.js +590 -0
  206. package/src/lib/insert-entities.d.ts +5 -6
  207. package/src/lib/insert-entities.js +1 -2
  208. package/src/lib/insert-noop-typing-anchor.d.ts +1 -2
  209. package/src/lib/insert-noop-typing-anchor.js +0 -1
  210. package/src/lib/insert-pagination-placeholder-data.d.ts +5 -6
  211. package/src/lib/insert-pagination-placeholder-data.js +5 -6
  212. package/src/lib/insert-react-on-mutation.d.ts +5 -6
  213. package/src/lib/insert-react-on-mutation.js +2 -3
  214. package/src/lib/insert-select-resource.d.ts +2 -3
  215. package/src/lib/insert-select-resource.js +1 -2
  216. package/src/lib/insert-select.d.ts +5 -6
  217. package/src/lib/insert-select.js +18 -19
  218. package/src/lib/insert-storage-persister.d.ts +4 -5
  219. package/src/lib/insert-storage-persister.js +2 -3
  220. package/src/lib/insert-typed-pipes.d.ts +3 -4
  221. package/src/lib/insert-typed-pipes.js +2 -3
  222. package/src/lib/lambda-adapter.d.ts +52 -0
  223. package/src/lib/lambda-adapter.js +101 -0
  224. package/src/lib/linked-source.d.ts +3 -4
  225. package/src/lib/linked-source.js +2 -3
  226. package/src/lib/local-storage-persister.d.ts +2 -3
  227. package/src/lib/local-storage-persister.js +3 -4
  228. package/src/lib/middleware-schema-shared.d.ts +9 -21
  229. package/src/lib/middleware-schema-shared.js +6 -1
  230. package/src/lib/mock-http-request-for-route.d.ts +3 -4
  231. package/src/lib/mock-http-request-for-route.js +0 -1
  232. package/src/lib/mutation.d.ts +18 -19
  233. package/src/lib/mutation.js +23 -24
  234. package/src/lib/on$.d.ts +6 -7
  235. package/src/lib/on$.js +4 -5
  236. package/src/lib/portable-server-function.d.ts +8 -9
  237. package/src/lib/portable-server-function.js +12 -5
  238. package/src/lib/preserved-resource.d.ts +2 -3
  239. package/src/lib/preserved-resource.js +4 -5
  240. package/src/lib/primitive-method-runtime-context.d.ts +1 -2
  241. package/src/lib/primitive-method-runtime-context.js +2 -3
  242. package/src/lib/primitive-resource-runtime-context.d.ts +1 -2
  243. package/src/lib/primitive-resource-runtime-context.js +2 -3
  244. package/src/lib/query-params.d.ts +12 -13
  245. package/src/lib/query-params.js +15 -16
  246. package/src/lib/query.core.d.ts +15 -14
  247. package/src/lib/query.core.js +1 -2
  248. package/src/lib/query.d.ts +19 -20
  249. package/src/lib/query.js +23 -24
  250. package/src/lib/reactive-read.d.ts +2 -3
  251. package/src/lib/reactive-read.js +2 -3
  252. package/src/lib/render/channels.d.ts +130 -0
  253. package/src/lib/render/channels.js +0 -0
  254. package/src/lib/resource-by-id.d.ts +4 -5
  255. package/src/lib/resource-by-id.js +4 -5
  256. package/src/lib/resource-exception.d.ts +2 -3
  257. package/src/lib/resource-exception.js +1 -2
  258. package/src/lib/route-checked-di.d.ts +4 -5
  259. package/src/lib/route-checked-di.js +0 -1
  260. package/src/lib/schema-validation.d.ts +4 -5
  261. package/src/lib/schema-validation.js +2 -3
  262. package/src/lib/send-context-to-ai.d.ts +3 -4
  263. package/src/lib/send-context-to-ai.js +1 -2
  264. package/src/lib/send-context-to-ai.tokens.d.ts +1 -2
  265. package/src/lib/send-context-to-ai.tokens.js +0 -1
  266. package/src/lib/server-function-client.d.ts +18 -7
  267. package/src/lib/server-function-client.js +31 -9
  268. package/src/lib/server-function-contract.d.ts +1 -2
  269. package/src/lib/server-function-contract.js +0 -1
  270. package/src/lib/server-function-middleware.d.ts +49 -132
  271. package/src/lib/server-function-middleware.js +83 -103
  272. package/src/lib/server-function.d.ts +58 -8
  273. package/src/lib/server-function.js +20 -6
  274. package/src/lib/server-layer.d.ts +3 -4
  275. package/src/lib/server-layer.js +1 -2
  276. package/src/lib/server.d.ts +39 -6
  277. package/src/lib/server.js +259 -27
  278. package/src/lib/setup-craft-service-test.d.ts +3 -4
  279. package/src/lib/setup-craft-service-test.js +6 -7
  280. package/src/lib/setup-craft-service-testing-by-register.d.ts +4 -5
  281. package/src/lib/setup-craft-service-testing-by-register.js +4 -5
  282. package/src/lib/signal-proxy.d.ts +2 -3
  283. package/src/lib/signal-proxy.js +1 -2
  284. package/src/lib/signal-source.d.ts +3 -4
  285. package/src/lib/signal-source.js +7 -8
  286. package/src/lib/source$.d.ts +3 -4
  287. package/src/lib/source$.js +7 -8
  288. package/src/lib/source-from-event.d.ts +2 -3
  289. package/src/lib/source-from-event.js +2 -3
  290. package/src/lib/stacked-source.d.ts +1 -2
  291. package/src/lib/stacked-source.js +1 -2
  292. package/src/lib/standard-schema.d.ts +0 -1
  293. package/src/lib/standard-schema.js +0 -1
  294. package/src/lib/state-method-runtime-context.d.ts +2 -3
  295. package/src/lib/state-method-runtime-context.js +1 -2
  296. package/src/lib/state.d.ts +13 -14
  297. package/src/lib/state.js +17 -18
  298. package/src/lib/storage-persister.service.d.ts +3 -4
  299. package/src/lib/storage-persister.service.js +3 -4
  300. package/src/lib/take-app-snapshot.d.ts +1 -2
  301. package/src/lib/take-app-snapshot.js +10 -4
  302. package/src/lib/template-trace.d.ts +1 -2
  303. package/src/lib/template-trace.js +5 -2
  304. package/src/lib/temporal-runtime.d.ts +1 -2
  305. package/src/lib/temporal-runtime.js +1 -2
  306. package/src/lib/to-source.d.ts +3 -4
  307. package/src/lib/to-source.js +2 -3
  308. package/src/lib/util/craft-resource-ref.d.ts +2 -3
  309. package/src/lib/util/craft-resource-ref.js +0 -1
  310. package/src/lib/util/craft-resource-status.d.ts +1 -2
  311. package/src/lib/util/craft-resource-status.js +0 -1
  312. package/src/lib/util/entities-util.d.ts +0 -1
  313. package/src/lib/util/entities-util.js +0 -1
  314. package/src/lib/util/explicit-effect.d.ts +1 -2
  315. package/src/lib/util/explicit-effect.js +1 -2
  316. package/src/lib/util/extract-signal-props-and-methods.d.ts +2 -3
  317. package/src/lib/util/extract-signal-props-and-methods.js +0 -1
  318. package/src/lib/util/method-trigger-nonce.d.ts +1 -2
  319. package/src/lib/util/method-trigger-nonce.js +0 -1
  320. package/src/lib/util/persister.type.d.ts +2 -3
  321. package/src/lib/util/persister.type.js +0 -1
  322. package/src/lib/util/persister.util.d.ts +0 -1
  323. package/src/lib/util/persister.util.js +0 -1
  324. package/src/lib/util/react-on-mutation-effect.d.ts +5 -6
  325. package/src/lib/util/react-on-mutation-effect.js +4 -5
  326. package/src/lib/util/resource-by-id-changes-tracker.util.d.ts +2 -3
  327. package/src/lib/util/resource-by-id-changes-tracker.util.js +2 -3
  328. package/src/lib/util/source.type.d.ts +2 -3
  329. package/src/lib/util/source.type.js +0 -1
  330. package/src/lib/util/types/access-type-object-property-by-dotted-path.type.d.ts +1 -2
  331. package/src/lib/util/types/access-type-object-property-by-dotted-path.type.js +0 -1
  332. package/src/lib/util/types/boolean-or-mapper-fn-by-path-by-id.type.d.ts +4 -5
  333. package/src/lib/util/types/boolean-or-mapper-fn-by-path-by-id.type.js +0 -1
  334. package/src/lib/util/types/boolean-or-mapper-fn-by-path.type.d.ts +3 -4
  335. package/src/lib/util/types/boolean-or-mapper-fn-by-path.type.js +0 -1
  336. package/src/lib/util/types/brand.d.ts +0 -1
  337. package/src/lib/util/types/brand.js +0 -1
  338. package/src/lib/util/types/object-deep-path-mapper.type.d.ts +1 -2
  339. package/src/lib/util/types/object-deep-path-mapper.type.js +0 -1
  340. package/src/lib/util/types/resource-by-id-config.type.d.ts +3 -4
  341. package/src/lib/util/types/resource-by-id-config.type.js +0 -1
  342. package/src/lib/util/types/resource-with-params-or-params-fn.type.d.ts +2 -3
  343. package/src/lib/util/types/resource-with-params-or-params-fn.type.js +0 -1
  344. package/src/lib/util/types/shared.type.d.ts +6 -7
  345. package/src/lib/util/types/shared.type.js +0 -1
  346. package/src/lib/util/types/util.d.ts +2 -3
  347. package/src/lib/util/types/util.js +3 -3
  348. package/src/lib/util/types/util.type.d.ts +3 -4
  349. package/src/lib/util/types/util.type.js +0 -1
  350. package/src/lib/util/update-state.util.d.ts +0 -1
  351. package/src/lib/util/update-state.util.js +0 -1
  352. package/src/lib/util/util.d.ts +2 -3
  353. package/src/lib/util/util.js +1 -2
  354. package/src/lib/util/util.type.d.ts +5 -6
  355. package/src/lib/util/util.type.js +0 -1
  356. package/src/lib/worker-adapter.d.ts +8 -0
  357. package/src/lib/worker-adapter.js +8 -0
  358. package/src/lib/yieldable.d.ts +4 -5
  359. package/src/lib/yieldable.js +4 -5
  360. package/src/index.d.ts.map +0 -1
  361. package/src/index.js.map +0 -1
  362. package/src/lib/after-recomputation.d.ts.map +0 -1
  363. package/src/lib/after-recomputation.js.map +0 -1
  364. package/src/lib/app-checked-di.d.ts.map +0 -1
  365. package/src/lib/app-checked-di.js.map +0 -1
  366. package/src/lib/async-process.d.ts.map +0 -1
  367. package/src/lib/async-process.js.map +0 -1
  368. package/src/lib/branded-component/branded-component.d.ts.map +0 -1
  369. package/src/lib/branded-component/branded-component.js.map +0 -1
  370. package/src/lib/browser-boundaries.d.ts.map +0 -1
  371. package/src/lib/browser-boundaries.js.map +0 -1
  372. package/src/lib/client-di-requirement.d.ts.map +0 -1
  373. package/src/lib/client-di-requirement.js.map +0 -1
  374. package/src/lib/client-function-middleware.d.ts.map +0 -1
  375. package/src/lib/client-function-middleware.js.map +0 -1
  376. package/src/lib/component-monitoring.d.ts.map +0 -1
  377. package/src/lib/component-monitoring.js.map +0 -1
  378. package/src/lib/component-register.d.ts.map +0 -1
  379. package/src/lib/component-register.js.map +0 -1
  380. package/src/lib/computed-source.d.ts.map +0 -1
  381. package/src/lib/computed-source.js.map +0 -1
  382. package/src/lib/correlation-id-plugin.d.ts.map +0 -1
  383. package/src/lib/correlation-id-plugin.js.map +0 -1
  384. package/src/lib/correlation-id.d.ts.map +0 -1
  385. package/src/lib/correlation-id.js.map +0 -1
  386. package/src/lib/craft-a11y.d.ts.map +0 -1
  387. package/src/lib/craft-a11y.js.map +0 -1
  388. package/src/lib/craft-activated-route.d.ts.map +0 -1
  389. package/src/lib/craft-activated-route.js.map +0 -1
  390. package/src/lib/craft-app-config.d.ts.map +0 -1
  391. package/src/lib/craft-app-config.js.map +0 -1
  392. package/src/lib/craft-codec.d.ts.map +0 -1
  393. package/src/lib/craft-codec.js.map +0 -1
  394. package/src/lib/craft-computed.d.ts.map +0 -1
  395. package/src/lib/craft-computed.js.map +0 -1
  396. package/src/lib/craft-control-flow.d.ts.map +0 -1
  397. package/src/lib/craft-control-flow.js.map +0 -1
  398. package/src/lib/craft-effect.d.ts.map +0 -1
  399. package/src/lib/craft-effect.js.map +0 -1
  400. package/src/lib/craft-exception.d.ts.map +0 -1
  401. package/src/lib/craft-exception.js.map +0 -1
  402. package/src/lib/craft-gen.d.ts.map +0 -1
  403. package/src/lib/craft-gen.js.map +0 -1
  404. package/src/lib/craft-generator-runtime.d.ts.map +0 -1
  405. package/src/lib/craft-generator-runtime.js.map +0 -1
  406. package/src/lib/craft-guard-runtime.d.ts.map +0 -1
  407. package/src/lib/craft-guard-runtime.js.map +0 -1
  408. package/src/lib/craft-handshake.d.ts.map +0 -1
  409. package/src/lib/craft-handshake.js.map +0 -1
  410. package/src/lib/craft-http-client.d.ts.map +0 -1
  411. package/src/lib/craft-http-client.js.map +0 -1
  412. package/src/lib/craft-http-trace.d.ts.map +0 -1
  413. package/src/lib/craft-http-trace.js.map +0 -1
  414. package/src/lib/craft-lazy.d.ts.map +0 -1
  415. package/src/lib/craft-lazy.js.map +0 -1
  416. package/src/lib/craft-load-retry.d.ts.map +0 -1
  417. package/src/lib/craft-load-retry.js.map +0 -1
  418. package/src/lib/craft-machine-history.d.ts.map +0 -1
  419. package/src/lib/craft-machine-history.js.map +0 -1
  420. package/src/lib/craft-match.d.ts.map +0 -1
  421. package/src/lib/craft-match.js.map +0 -1
  422. package/src/lib/craft-method.d.ts.map +0 -1
  423. package/src/lib/craft-method.js.map +0 -1
  424. package/src/lib/craft-node-directive.d.ts.map +0 -1
  425. package/src/lib/craft-node-directive.js.map +0 -1
  426. package/src/lib/craft-pending.d.ts.map +0 -1
  427. package/src/lib/craft-pending.js.map +0 -1
  428. package/src/lib/craft-pipe.d.ts.map +0 -1
  429. package/src/lib/craft-pipe.js.map +0 -1
  430. package/src/lib/craft-platform.d.ts.map +0 -1
  431. package/src/lib/craft-platform.js.map +0 -1
  432. package/src/lib/craft-primitive-gen.d.ts.map +0 -1
  433. package/src/lib/craft-primitive-gen.js.map +0 -1
  434. package/src/lib/craft-primitive-registry.d.ts.map +0 -1
  435. package/src/lib/craft-primitive-registry.js.map +0 -1
  436. package/src/lib/craft-program-operators.d.ts.map +0 -1
  437. package/src/lib/craft-program-operators.js.map +0 -1
  438. package/src/lib/craft-program-runtime.d.ts.map +0 -1
  439. package/src/lib/craft-program-runtime.js.map +0 -1
  440. package/src/lib/craft-register-for-runtime.d.ts.map +0 -1
  441. package/src/lib/craft-register-for-runtime.js.map +0 -1
  442. package/src/lib/craft-register-for.d.ts.map +0 -1
  443. package/src/lib/craft-register-for.js.map +0 -1
  444. package/src/lib/craft-render-identity.d.ts.map +0 -1
  445. package/src/lib/craft-render-identity.js.map +0 -1
  446. package/src/lib/craft-replay.d.ts.map +0 -1
  447. package/src/lib/craft-replay.js.map +0 -1
  448. package/src/lib/craft-resolve.d.ts.map +0 -1
  449. package/src/lib/craft-resolve.js.map +0 -1
  450. package/src/lib/craft-resource.d.ts.map +0 -1
  451. package/src/lib/craft-resource.js.map +0 -1
  452. package/src/lib/craft-route-exceptions.d.ts.map +0 -1
  453. package/src/lib/craft-route-exceptions.js.map +0 -1
  454. package/src/lib/craft-route-load-error.d.ts.map +0 -1
  455. package/src/lib/craft-route-load-error.js.map +0 -1
  456. package/src/lib/craft-route-meta.d.ts.map +0 -1
  457. package/src/lib/craft-route-meta.js.map +0 -1
  458. package/src/lib/craft-route-target.d.ts.map +0 -1
  459. package/src/lib/craft-route-target.js.map +0 -1
  460. package/src/lib/craft-router-outlet.d.ts.map +0 -1
  461. package/src/lib/craft-router-outlet.js.map +0 -1
  462. package/src/lib/craft-router-tokens.d.ts.map +0 -1
  463. package/src/lib/craft-router-tokens.js.map +0 -1
  464. package/src/lib/craft-router-trace.d.ts.map +0 -1
  465. package/src/lib/craft-router-trace.js.map +0 -1
  466. package/src/lib/craft-router.d.ts.map +0 -1
  467. package/src/lib/craft-router.js.map +0 -1
  468. package/src/lib/craft-routes.d.ts.map +0 -1
  469. package/src/lib/craft-routes.js.map +0 -1
  470. package/src/lib/craft-service.d.ts.map +0 -1
  471. package/src/lib/craft-service.js.map +0 -1
  472. package/src/lib/craft-service.shared.d.ts.map +0 -1
  473. package/src/lib/craft-service.shared.js.map +0 -1
  474. package/src/lib/craft-settled.d.ts.map +0 -1
  475. package/src/lib/craft-settled.js.map +0 -1
  476. package/src/lib/craft-ssr.d.ts.map +0 -1
  477. package/src/lib/craft-ssr.js.map +0 -1
  478. package/src/lib/craft-state-machine-runtime.d.ts.map +0 -1
  479. package/src/lib/craft-state-machine-runtime.js.map +0 -1
  480. package/src/lib/craft-state-machine.d.ts.map +0 -1
  481. package/src/lib/craft-state-machine.js.map +0 -1
  482. package/src/lib/craft-target-runtime.d.ts.map +0 -1
  483. package/src/lib/craft-target-runtime.js.map +0 -1
  484. package/src/lib/craft-transfer-snapshot.d.ts.map +0 -1
  485. package/src/lib/craft-transfer-snapshot.js.map +0 -1
  486. package/src/lib/craft-unique.d.ts.map +0 -1
  487. package/src/lib/craft-unique.js.map +0 -1
  488. package/src/lib/craft-until-settled.d.ts.map +0 -1
  489. package/src/lib/craft-until-settled.js.map +0 -1
  490. package/src/lib/craft-use.d.ts.map +0 -1
  491. package/src/lib/craft-use.js.map +0 -1
  492. package/src/lib/craft-view-transition.d.ts.map +0 -1
  493. package/src/lib/craft-view-transition.js.map +0 -1
  494. package/src/lib/dom-event-hook.d.ts.map +0 -1
  495. package/src/lib/dom-event-hook.js.map +0 -1
  496. package/src/lib/fn-wrapper.d.ts.map +0 -1
  497. package/src/lib/fn-wrapper.js.map +0 -1
  498. package/src/lib/form/craft-field.d.ts.map +0 -1
  499. package/src/lib/form/craft-field.directive.d.ts.map +0 -1
  500. package/src/lib/form/craft-field.directive.js.map +0 -1
  501. package/src/lib/form/craft-field.js.map +0 -1
  502. package/src/lib/form/field-exception.d.ts.map +0 -1
  503. package/src/lib/form/field-exception.js.map +0 -1
  504. package/src/lib/form/field-lens.d.ts.map +0 -1
  505. package/src/lib/form/field-lens.js.map +0 -1
  506. package/src/lib/form/insert-form-attributes.d.ts.map +0 -1
  507. package/src/lib/form/insert-form-attributes.js.map +0 -1
  508. package/src/lib/form/insert-form-internals.d.ts.map +0 -1
  509. package/src/lib/form/insert-form-internals.js.map +0 -1
  510. package/src/lib/form/insert-form-schema.d.ts.map +0 -1
  511. package/src/lib/form/insert-form-schema.js.map +0 -1
  512. package/src/lib/form/insert-form-submit.d.ts.map +0 -1
  513. package/src/lib/form/insert-form-submit.js.map +0 -1
  514. package/src/lib/form/insert-form.d.ts.map +0 -1
  515. package/src/lib/form/insert-form.js.map +0 -1
  516. package/src/lib/form/insert-select-form-tree.d.ts.map +0 -1
  517. package/src/lib/form/insert-select-form-tree.js.map +0 -1
  518. package/src/lib/form/insert-sub-form-field.d.ts.map +0 -1
  519. package/src/lib/form/insert-sub-form-field.js.map +0 -1
  520. package/src/lib/form/make-form-tree-insert.d.ts.map +0 -1
  521. package/src/lib/form/make-form-tree-insert.js.map +0 -1
  522. package/src/lib/form/target-form-field.d.ts.map +0 -1
  523. package/src/lib/form/target-form-field.js.map +0 -1
  524. package/src/lib/form/validator.d.ts.map +0 -1
  525. package/src/lib/form/validator.js.map +0 -1
  526. package/src/lib/from-event-to-source$.d.ts.map +0 -1
  527. package/src/lib/from-event-to-source$.js.map +0 -1
  528. package/src/lib/global-persister-handler.service.d.ts.map +0 -1
  529. package/src/lib/global-persister-handler.service.js.map +0 -1
  530. package/src/lib/host/craft-compat.d.ts.map +0 -1
  531. package/src/lib/host/craft-compat.js.map +0 -1
  532. package/src/lib/host/craft-dom.d.ts.map +0 -1
  533. package/src/lib/host/craft-dom.js.map +0 -1
  534. package/src/lib/host/craft-http.d.ts.map +0 -1
  535. package/src/lib/host/craft-http.js.map +0 -1
  536. package/src/lib/host/craft-injector-host.d.ts.map +0 -1
  537. package/src/lib/host/craft-injector-host.js.map +0 -1
  538. package/src/lib/host/craft-injector.d.ts.map +0 -1
  539. package/src/lib/host/craft-injector.js.map +0 -1
  540. package/src/lib/host/craft-linked-signal.d.ts.map +0 -1
  541. package/src/lib/host/craft-linked-signal.js.map +0 -1
  542. package/src/lib/host/craft-router-runtime.d.ts.map +0 -1
  543. package/src/lib/host/craft-router-runtime.js.map +0 -1
  544. package/src/lib/host/craft-router-types.d.ts.map +0 -1
  545. package/src/lib/host/craft-router-types.js.map +0 -1
  546. package/src/lib/host/craft-signal.d.ts.map +0 -1
  547. package/src/lib/host/craft-signal.js.map +0 -1
  548. package/src/lib/host/craft-test-bed.d.ts.map +0 -1
  549. package/src/lib/host/craft-test-bed.js.map +0 -1
  550. package/src/lib/host-tag.d.ts.map +0 -1
  551. package/src/lib/host-tag.js.map +0 -1
  552. package/src/lib/insert-entities.d.ts.map +0 -1
  553. package/src/lib/insert-entities.js.map +0 -1
  554. package/src/lib/insert-noop-typing-anchor.d.ts.map +0 -1
  555. package/src/lib/insert-noop-typing-anchor.js.map +0 -1
  556. package/src/lib/insert-pagination-placeholder-data.d.ts.map +0 -1
  557. package/src/lib/insert-pagination-placeholder-data.js.map +0 -1
  558. package/src/lib/insert-react-on-mutation.d.ts.map +0 -1
  559. package/src/lib/insert-react-on-mutation.js.map +0 -1
  560. package/src/lib/insert-select-resource.d.ts.map +0 -1
  561. package/src/lib/insert-select-resource.js.map +0 -1
  562. package/src/lib/insert-select.d.ts.map +0 -1
  563. package/src/lib/insert-select.js.map +0 -1
  564. package/src/lib/insert-storage-persister.d.ts.map +0 -1
  565. package/src/lib/insert-storage-persister.js.map +0 -1
  566. package/src/lib/insert-typed-pipes.d.ts.map +0 -1
  567. package/src/lib/insert-typed-pipes.js.map +0 -1
  568. package/src/lib/linked-source.d.ts.map +0 -1
  569. package/src/lib/linked-source.js.map +0 -1
  570. package/src/lib/local-storage-persister.d.ts.map +0 -1
  571. package/src/lib/local-storage-persister.js.map +0 -1
  572. package/src/lib/middleware-schema-shared.d.ts.map +0 -1
  573. package/src/lib/middleware-schema-shared.js.map +0 -1
  574. package/src/lib/mock-http-request-for-route.d.ts.map +0 -1
  575. package/src/lib/mock-http-request-for-route.js.map +0 -1
  576. package/src/lib/mutation.d.ts.map +0 -1
  577. package/src/lib/mutation.js.map +0 -1
  578. package/src/lib/on$.d.ts.map +0 -1
  579. package/src/lib/on$.js.map +0 -1
  580. package/src/lib/portable-server-function.d.ts.map +0 -1
  581. package/src/lib/portable-server-function.js.map +0 -1
  582. package/src/lib/preserved-resource.d.ts.map +0 -1
  583. package/src/lib/preserved-resource.js.map +0 -1
  584. package/src/lib/primitive-method-runtime-context.d.ts.map +0 -1
  585. package/src/lib/primitive-method-runtime-context.js.map +0 -1
  586. package/src/lib/primitive-resource-runtime-context.d.ts.map +0 -1
  587. package/src/lib/primitive-resource-runtime-context.js.map +0 -1
  588. package/src/lib/query-params.d.ts.map +0 -1
  589. package/src/lib/query-params.js.map +0 -1
  590. package/src/lib/query.core.d.ts.map +0 -1
  591. package/src/lib/query.core.js.map +0 -1
  592. package/src/lib/query.d.ts.map +0 -1
  593. package/src/lib/query.js.map +0 -1
  594. package/src/lib/reactive-read.d.ts.map +0 -1
  595. package/src/lib/reactive-read.js.map +0 -1
  596. package/src/lib/resource-by-id.d.ts.map +0 -1
  597. package/src/lib/resource-by-id.js.map +0 -1
  598. package/src/lib/resource-exception.d.ts.map +0 -1
  599. package/src/lib/resource-exception.js.map +0 -1
  600. package/src/lib/route-checked-di.d.ts.map +0 -1
  601. package/src/lib/route-checked-di.js.map +0 -1
  602. package/src/lib/schema-validation.d.ts.map +0 -1
  603. package/src/lib/schema-validation.js.map +0 -1
  604. package/src/lib/send-context-to-ai.d.ts.map +0 -1
  605. package/src/lib/send-context-to-ai.js.map +0 -1
  606. package/src/lib/send-context-to-ai.tokens.d.ts.map +0 -1
  607. package/src/lib/send-context-to-ai.tokens.js.map +0 -1
  608. package/src/lib/server-function-client.d.ts.map +0 -1
  609. package/src/lib/server-function-client.js.map +0 -1
  610. package/src/lib/server-function-contract.d.ts.map +0 -1
  611. package/src/lib/server-function-contract.js.map +0 -1
  612. package/src/lib/server-function-middleware.d.ts.map +0 -1
  613. package/src/lib/server-function-middleware.js.map +0 -1
  614. package/src/lib/server-function.d.ts.map +0 -1
  615. package/src/lib/server-function.js.map +0 -1
  616. package/src/lib/server-layer.d.ts.map +0 -1
  617. package/src/lib/server-layer.js.map +0 -1
  618. package/src/lib/server.d.ts.map +0 -1
  619. package/src/lib/server.js.map +0 -1
  620. package/src/lib/setup-craft-service-test.d.ts.map +0 -1
  621. package/src/lib/setup-craft-service-test.js.map +0 -1
  622. package/src/lib/setup-craft-service-testing-by-register.d.ts.map +0 -1
  623. package/src/lib/setup-craft-service-testing-by-register.js.map +0 -1
  624. package/src/lib/signal-proxy.d.ts.map +0 -1
  625. package/src/lib/signal-proxy.js.map +0 -1
  626. package/src/lib/signal-source.d.ts.map +0 -1
  627. package/src/lib/signal-source.js.map +0 -1
  628. package/src/lib/source$.d.ts.map +0 -1
  629. package/src/lib/source$.js.map +0 -1
  630. package/src/lib/source-from-event.d.ts.map +0 -1
  631. package/src/lib/source-from-event.js.map +0 -1
  632. package/src/lib/stacked-source.d.ts.map +0 -1
  633. package/src/lib/stacked-source.js.map +0 -1
  634. package/src/lib/standard-schema.d.ts.map +0 -1
  635. package/src/lib/standard-schema.js.map +0 -1
  636. package/src/lib/state-method-runtime-context.d.ts.map +0 -1
  637. package/src/lib/state-method-runtime-context.js.map +0 -1
  638. package/src/lib/state.d.ts.map +0 -1
  639. package/src/lib/state.js.map +0 -1
  640. package/src/lib/storage-persister.service.d.ts.map +0 -1
  641. package/src/lib/storage-persister.service.js.map +0 -1
  642. package/src/lib/take-app-snapshot.d.ts.map +0 -1
  643. package/src/lib/take-app-snapshot.js.map +0 -1
  644. package/src/lib/template-trace.d.ts.map +0 -1
  645. package/src/lib/template-trace.js.map +0 -1
  646. package/src/lib/temporal-runtime.d.ts.map +0 -1
  647. package/src/lib/temporal-runtime.js.map +0 -1
  648. package/src/lib/to-source.d.ts.map +0 -1
  649. package/src/lib/to-source.js.map +0 -1
  650. package/src/lib/util/craft-resource-ref.d.ts.map +0 -1
  651. package/src/lib/util/craft-resource-ref.js.map +0 -1
  652. package/src/lib/util/craft-resource-status.d.ts.map +0 -1
  653. package/src/lib/util/craft-resource-status.js.map +0 -1
  654. package/src/lib/util/entities-util.d.ts.map +0 -1
  655. package/src/lib/util/entities-util.js.map +0 -1
  656. package/src/lib/util/explicit-effect.d.ts.map +0 -1
  657. package/src/lib/util/explicit-effect.js.map +0 -1
  658. package/src/lib/util/extract-signal-props-and-methods.d.ts.map +0 -1
  659. package/src/lib/util/extract-signal-props-and-methods.js.map +0 -1
  660. package/src/lib/util/method-trigger-nonce.d.ts.map +0 -1
  661. package/src/lib/util/method-trigger-nonce.js.map +0 -1
  662. package/src/lib/util/persister.type.d.ts.map +0 -1
  663. package/src/lib/util/persister.type.js.map +0 -1
  664. package/src/lib/util/persister.util.d.ts.map +0 -1
  665. package/src/lib/util/persister.util.js.map +0 -1
  666. package/src/lib/util/react-on-mutation-effect.d.ts.map +0 -1
  667. package/src/lib/util/react-on-mutation-effect.js.map +0 -1
  668. package/src/lib/util/resource-by-id-changes-tracker.util.d.ts.map +0 -1
  669. package/src/lib/util/resource-by-id-changes-tracker.util.js.map +0 -1
  670. package/src/lib/util/source.type.d.ts.map +0 -1
  671. package/src/lib/util/source.type.js.map +0 -1
  672. package/src/lib/util/types/access-type-object-property-by-dotted-path.type.d.ts.map +0 -1
  673. package/src/lib/util/types/access-type-object-property-by-dotted-path.type.js.map +0 -1
  674. package/src/lib/util/types/boolean-or-mapper-fn-by-path-by-id.type.d.ts.map +0 -1
  675. package/src/lib/util/types/boolean-or-mapper-fn-by-path-by-id.type.js.map +0 -1
  676. package/src/lib/util/types/boolean-or-mapper-fn-by-path.type.d.ts.map +0 -1
  677. package/src/lib/util/types/boolean-or-mapper-fn-by-path.type.js.map +0 -1
  678. package/src/lib/util/types/brand.d.ts.map +0 -1
  679. package/src/lib/util/types/brand.js.map +0 -1
  680. package/src/lib/util/types/object-deep-path-mapper.type.d.ts.map +0 -1
  681. package/src/lib/util/types/object-deep-path-mapper.type.js.map +0 -1
  682. package/src/lib/util/types/resource-by-id-config.type.d.ts.map +0 -1
  683. package/src/lib/util/types/resource-by-id-config.type.js.map +0 -1
  684. package/src/lib/util/types/resource-with-params-or-params-fn.type.d.ts.map +0 -1
  685. package/src/lib/util/types/resource-with-params-or-params-fn.type.js.map +0 -1
  686. package/src/lib/util/types/shared.type.d.ts.map +0 -1
  687. package/src/lib/util/types/shared.type.js.map +0 -1
  688. package/src/lib/util/types/util.d.ts.map +0 -1
  689. package/src/lib/util/types/util.js.map +0 -1
  690. package/src/lib/util/types/util.type.d.ts.map +0 -1
  691. package/src/lib/util/types/util.type.js.map +0 -1
  692. package/src/lib/util/update-state.util.d.ts.map +0 -1
  693. package/src/lib/util/update-state.util.js.map +0 -1
  694. package/src/lib/util/util.d.ts.map +0 -1
  695. package/src/lib/util/util.js.map +0 -1
  696. package/src/lib/util/util.type.d.ts.map +0 -1
  697. package/src/lib/util/util.type.js.map +0 -1
  698. package/src/lib/yieldable.d.ts.map +0 -1
  699. package/src/lib/yieldable.js.map +0 -1
@@ -0,0 +1,130 @@
1
+ /**
2
+ * Two opaque contract channels the render tree carries from a node to its
3
+ * ancestors. The core never looks inside them: it only knows how to union them
4
+ * (`accumulate`), how to subtract a discharge from an obligation
5
+ * (`obligations`), and how to intersect an obligation with a violation
6
+ * (`violates`).
7
+ *
8
+ * Everything that gives those payloads a meaning — CSS names, error wording,
9
+ * the fact that an obligation is about `overflow` at all — lives outside the
10
+ * core, in `@craft-ts/style`. Keeping the algebra here and the vocabulary there
11
+ * is what lets a second vocabulary reuse the same plumbing without the core
12
+ * growing a single CSS identifier.
13
+ */
14
+ export interface CraftChannels {
15
+ /** Facts that survive every ancestor: they only ever grow upwards. */
16
+ readonly accumulate: unknown;
17
+ /** Demands a node makes on some ancestor, still unmet at this point. */
18
+ readonly obligations: unknown;
19
+ /** Demands this subtree already answered — they cancel matching obligations. */
20
+ readonly discharges: unknown;
21
+ /** Demands this subtree actively breaks, should one cross it. */
22
+ readonly violates: unknown;
23
+ }
24
+ /**
25
+ * The neutral element. A node that says nothing about style resolves to this,
26
+ * which is what keeps the channel invisible in the printed type of every
27
+ * component written before the style system existed.
28
+ */
29
+ export type EmptyChannels = {
30
+ readonly accumulate: never;
31
+ readonly obligations: never;
32
+ readonly discharges: never;
33
+ readonly violates: never;
34
+ };
35
+ /**
36
+ * Merges two sibling (or parent/child) channel sets.
37
+ *
38
+ * `obligations` is the only asymmetric field: a discharge coming from *either*
39
+ * side cancels an obligation coming from *either* side. That is deliberate —
40
+ * the parent that provides a scroll port and the child that requires one meet
41
+ * exactly once, at the node that contains them both, and the demand must not
42
+ * survive past it.
43
+ */
44
+ export type MergeChannels<L extends CraftChannels, R extends CraftChannels> = {
45
+ readonly accumulate: L['accumulate'] | R['accumulate'];
46
+ readonly obligations: Exclude<L['obligations'] | R['obligations'], L['discharges'] | R['discharges']>;
47
+ readonly discharges: L['discharges'] | R['discharges'];
48
+ readonly violates: L['violates'] | R['violates'];
49
+ };
50
+ /**
51
+ * Merges a *union* of channel sets — the shape siblings arrive in, since the
52
+ * render tree collects children as a union rather than a tuple.
53
+ *
54
+ * Equivalent to folding {@link MergeChannels} over the same sets in any order:
55
+ * `Exclude` distributes, so a discharge in the third child still cancels an
56
+ * obligation raised by the first. Written as a union merge because that is
57
+ * cheaper than a recursive fold and because the node types have no tuple to
58
+ * fold over.
59
+ */
60
+ export type MergeChannelUnion<Channels extends CraftChannels> = {
61
+ readonly accumulate: Channels['accumulate'];
62
+ readonly obligations: Exclude<Channels['obligations'], Channels['discharges']>;
63
+ readonly discharges: Channels['discharges'];
64
+ readonly violates: Channels['violates'];
65
+ };
66
+ /**
67
+ * Non-empty when some node on the path violates an obligation that is still
68
+ * open beneath it — the clip-inside-a-scroll-port case. It is `Extract` and not
69
+ * `Exclude` on purpose: we want the offending demand itself, so the message can
70
+ * name it.
71
+ */
72
+ export type PathViolations<C extends CraftChannels> = Extract<C['obligations'], C['violates']>;
73
+ /** Obligations that reach a sealing boundary without ever being answered. */
74
+ export type UndischargedObligations<C extends CraftChannels> = C['obligations'];
75
+ export declare const CRAFT_REQUIREMENT: unique symbol;
76
+ /**
77
+ * The shape a channel payload takes when it wants to explain itself.
78
+ *
79
+ * The core still knows nothing about CSS: an id and a sentence, both opaque
80
+ * strings it never interprets. What it gains is the ability to *quote* a
81
+ * payload in an error message instead of printing an anonymous type — which is
82
+ * the difference between "something in this subtree is unsatisfied" and a
83
+ * message that says which thing, and what to do about it.
84
+ *
85
+ * Required, not optional. An optional marker would match every payload and hand
86
+ * back the constraint, so every message would be built from `string`.
87
+ */
88
+ export interface CraftRequirement<Id extends string = string, Explain extends string = string> {
89
+ readonly [CRAFT_REQUIREMENT]: {
90
+ readonly id: Id;
91
+ readonly explain: Explain;
92
+ };
93
+ }
94
+ /**
95
+ * One payload, rendered as a sentence.
96
+ *
97
+ * The bare parameter matters: a conditional distributes only over a naked type
98
+ * parameter, and `never extends CraftRequirement<infer Id, …>` is **true** —
99
+ * `Id` then falls back to its constraint and the message talks about a
100
+ * requirement named `string`. A tree with nothing open would fail to seal.
101
+ */
102
+ export type RequirementMessage<Payload> = Payload extends CraftRequirement<infer Id, infer Explain> ? `'${Id}' is required by this subtree and nothing above it provides one. ${Explain}` : never;
103
+ /** Every unmet requirement of a channel set, as sentences. */
104
+ export type UnmetRequirements<C extends CraftChannels> = RequirementMessage<C['obligations']>;
105
+ /** Reads a channel set off a carrier, falling back to the neutral element. */
106
+ export type ChannelsOf<Value> = [HasChannels<Value>] extends [never] ? EmptyChannels : HasChannels<Value>;
107
+ /**
108
+ * The channel set a value declares, or `never` if it declares none.
109
+ *
110
+ * The `keyof` guard is what makes this sound. Testing `Value extends
111
+ * CraftChannelsCarrier<infer C>` alone is not enough: the carrier property is
112
+ * optional, so *every* type passes the check, and for one that has no
113
+ * inference site — a bare `string` child, say — TypeScript falls back to the
114
+ * constraint and hands back `CraftChannels` itself. That set has `unknown` for
115
+ * `discharges`, and one `Exclude<…, unknown>` downstream silently erases every
116
+ * obligation in the tree. Asking whether the key is actually there first is
117
+ * the difference between a channel that works and one that reports `never`
118
+ * everywhere while looking correct.
119
+ */
120
+ type HasChannels<Value> = Value extends object ? typeof CRAFT_CHANNELS extends keyof Value ? Value extends CraftChannelsCarrier<infer Channels extends CraftChannels> ? Channels : never : never : never;
121
+ export declare const CRAFT_CHANNELS: unique symbol;
122
+ /**
123
+ * Type-only carrier. Optional, so an untouched node stays structurally
124
+ * assignable to one that carries channels and nothing in the existing tree has
125
+ * to be updated to keep compiling.
126
+ */
127
+ export type CraftChannelsCarrier<Channels extends CraftChannels = EmptyChannels> = {
128
+ readonly [CRAFT_CHANNELS]?: Channels;
129
+ };
130
+ export {};
File without changes
@@ -1,7 +1,7 @@
1
- import { ResourceOptions, Signal } from './host/craft-compat';
2
- import { Prettify } from './util/util.type';
3
- import { CraftResourceRef } from './util/craft-resource-ref';
4
- import { resourceByIdChangesTrackerResult } from './util/resource-by-id-changes-tracker.util';
1
+ import { ResourceOptions, Signal } from './host/craft-compat.js';
2
+ import { Prettify } from './util/util.type.js';
3
+ import { CraftResourceRef } from './util/craft-resource-ref.js';
4
+ import { resourceByIdChangesTrackerResult } from './util/resource-by-id-changes-tracker.util.js';
5
5
  export type ResourceByIdHandler<GroupIdentifier extends string, State, ResourceParams> = {
6
6
  /**
7
7
  * Reset all the CraftResourceRef instance stored in the ResourceByIdRef
@@ -68,4 +68,3 @@ type ResourceByIdConfig<State, ResourceParams, GroupIdentifier extends string, F
68
68
  });
69
69
  export declare function resourceById<State, ResourceParams, GroupIdentifier extends string, FromObjectGroupIdentifier extends string, FromObjectState, FromObjectResourceParams>(config: ResourceByIdConfig<State, ResourceParams, GroupIdentifier, FromObjectGroupIdentifier, FromObjectState, FromObjectResourceParams>): ResourceByIdRef<GroupIdentifier, State, ResourceParams>;
70
70
  export {};
71
- //# sourceMappingURL=resource-by-id.d.ts.map
@@ -1,7 +1,7 @@
1
- import { inject, signal, effect, untracked, Injector, InjectionToken, computed, } from './host/craft-compat';
2
- import { craftLinkedSignal as linkedSignal } from './host/craft-linked-signal';
3
- import { preservedResource } from './preserved-resource';
4
- import { resourceByIdChangesTracker, } from './util/resource-by-id-changes-tracker.util';
1
+ import { inject, signal, effect, untracked, Injector, InjectionToken, computed, } from './host/craft-compat.js';
2
+ import { craftLinkedSignal as linkedSignal } from './host/craft-linked-signal.js';
3
+ import { preservedResource } from './preserved-resource.js';
4
+ import { resourceByIdChangesTracker, } from './util/resource-by-id-changes-tracker.util.js';
5
5
  export function resourceById(config) {
6
6
  const injector = inject(Injector);
7
7
  const { identifier, params, loader, stream, equalParams, ssrSourceName } = config;
@@ -291,4 +291,3 @@ function createDynamicResource(parentInjector, resourceConfig) {
291
291
  const CraftResourceRef = injector.get(RESOURCE_INSTANCE_TOKEN);
292
292
  return CraftResourceRef;
293
293
  }
294
- //# sourceMappingURL=resource-by-id.js.map
@@ -1,5 +1,5 @@
1
- import { Signal } from './host/craft-compat';
2
- import { AnyCraftException } from './craft-exception';
1
+ import { Signal } from './host/craft-compat.js';
2
+ import { AnyCraftException } from './craft-exception.js';
3
3
  type ResourceExceptionScope = 'params' | 'loader';
4
4
  type ResourceExceptionsNoId = {
5
5
  list: AnyCraftException[];
@@ -27,4 +27,3 @@ export declare function createResourceExceptionsRuntime({ isUsingIdentifier, par
27
27
  createSelectHasException: (id: string) => import("..").ɵCraftSignal<true>;
28
28
  };
29
29
  export {};
30
- //# sourceMappingURL=resource-exception.d.ts.map
@@ -1,4 +1,4 @@
1
- import { computed, signal } from './host/craft-compat';
1
+ import { computed, signal } from './host/craft-compat.js';
2
2
  export function enrichResourceException(exception, meta) {
3
3
  const nextException = {
4
4
  ...exception,
@@ -83,4 +83,3 @@ export function createResourceExceptionsRuntime({ isUsingIdentifier, paramsExcep
83
83
  createSelectHasException,
84
84
  };
85
85
  }
86
- //# sourceMappingURL=resource-exception.js.map
@@ -1,7 +1,7 @@
1
- import type { Simplify, UnionToTuple } from './craft-service.shared';
2
- import type { MissingProvidersFromDepsMap } from './branded-component/branded-component';
3
- import type { NamedBrandedServiceProvider } from './craft-service';
4
- import type { AppConfigProvidedDependencyValuesKey, AppConfigProvidedServiceNamesKey } from './craft-app-config';
1
+ import type { Simplify, UnionToTuple } from './craft-service.shared.js';
2
+ import type { MissingProvidersFromDepsMap } from './branded-component/branded-component.js';
3
+ import type { NamedBrandedServiceProvider } from './craft-service.js';
4
+ import type { AppConfigProvidedDependencyValuesKey, AppConfigProvidedServiceNamesKey } from './craft-app-config.js';
5
5
  /**
6
6
  * `RouteCheckedDI` is a per-route DI validation primitive meant to be used as
7
7
  * an alternative to `AppCheckedDI` when route volume makes the global check
@@ -226,4 +226,3 @@ export type ValidateCascadeRoutesFile<ParentNames extends string, ParentValues,
226
226
  META_DATA: infer Meta extends readonly unknown[];
227
227
  } ? AggregateCascadeErrorsByIndex<ParentNames, ParentValues, Meta, ParentInputNames> extends infer Errors extends readonly string[] ? Errors extends readonly [] ? true : Errors : never : never;
228
228
  export {};
229
- //# sourceMappingURL=route-checked-di.d.ts.map
@@ -1 +0,0 @@
1
- //# sourceMappingURL=route-checked-di.js.map
@@ -1,6 +1,6 @@
1
- import { InjectionToken, type Provider, type Signal } from './host/craft-compat';
2
- import { type AnyCraftException } from './craft-exception';
3
- import type { StandardSchemaV1, StandardSchemaV1InferInput, StandardSchemaV1InferOutput, StandardSchemaV1Issue } from './standard-schema';
1
+ import { InjectionToken, type Provider, type Signal } from './host/craft-compat.js';
2
+ import { type AnyCraftException } from './craft-exception.js';
3
+ import type { StandardSchemaV1, StandardSchemaV1InferInput, StandardSchemaV1InferOutput, StandardSchemaV1Issue } from './standard-schema.js';
4
4
  export type CraftSchema = StandardSchemaV1<any, any>;
5
5
  export type SchemaInput<Schema extends CraftSchema> = StandardSchemaV1InferInput<Schema>;
6
6
  export type SchemaOutput<Schema extends CraftSchema> = StandardSchemaV1InferOutput<Schema>;
@@ -61,7 +61,7 @@ export declare function decideSchemaValidation(result: SchemaParseResult<unknown
61
61
  accepted: false;
62
62
  exception: SchemaValidationException;
63
63
  };
64
- export declare function createSchemaExceptionSignal(): import("./host/craft-signal").CraftWritableSignal<AnyCraftException | undefined>;
64
+ export declare function createSchemaExceptionSignal(): import("./host/craft-signal.js").CraftWritableSignal<AnyCraftException | undefined>;
65
65
  export type SchemaExceptionSignal = Signal<AnyCraftException | undefined>;
66
66
  export type SchemaValidationRuntime = ReturnType<typeof createSchemaValidationRuntime>;
67
67
  export declare function createSchemaValidationRuntime({ schema, primitive, name, policy, setException, }: {
@@ -86,4 +86,3 @@ export declare function createSchemaValidationRuntime({ schema, primitive, name,
86
86
  exception: AnyCraftException;
87
87
  }>;
88
88
  };
89
- //# sourceMappingURL=schema-validation.d.ts.map
@@ -1,5 +1,5 @@
1
- import { InjectionToken, isDevMode, signal, } from './host/craft-compat';
2
- import { craftException } from './craft-exception';
1
+ import { InjectionToken, isDevMode, signal, } from './host/craft-compat.js';
2
+ import { craftException } from './craft-exception.js';
3
3
  export const CRAFT_SCHEMA_VALIDATION_POLICY = new InjectionToken('CRAFT_SCHEMA_VALIDATION_POLICY', {
4
4
  providedIn: 'root',
5
5
  factory: () => (context) => {
@@ -107,4 +107,3 @@ export function createSchemaValidationRuntime({ schema, primitive, name, policy,
107
107
  };
108
108
  return { parseSync, parseAsync };
109
109
  }
110
- //# sourceMappingURL=schema-validation.js.map
@@ -1,6 +1,6 @@
1
- import type { GetDeps } from './branded-component/branded-component';
2
- import { type SendContextPayload } from './send-context-to-ai.tokens';
3
- import { type AppSnapshotRegistry, type SnapshotReport } from './take-app-snapshot';
1
+ import type { GetDeps } from './branded-component/branded-component.js';
2
+ import { type SendContextPayload } from './send-context-to-ai.tokens.js';
3
+ import { type AppSnapshotRegistry, type SnapshotReport } from './take-app-snapshot.js';
4
4
  export { type SendContextPayload };
5
5
  /**
6
6
  * Collects app snapshot reports so the AI overlay has something to send.
@@ -17,4 +17,3 @@ export type GenDeps_SendContextToAiBuffer = GetDeps<{
17
17
  deps: {};
18
18
  provided: {};
19
19
  }>;
20
- //# sourceMappingURL=send-context-to-ai.d.ts.map
@@ -1,5 +1,5 @@
1
1
  import { debounceTime, Subject } from 'rxjs';
2
- import { craftToken } from './host/craft-injector';
2
+ import { craftToken } from './host/craft-injector.js';
3
3
  export const SEND_CONTEXT_TO_AI_BUFFER = craftToken('SendContextToAiBuffer');
4
4
  export function createSendContextToAiBuffer(registry) {
5
5
  const buffer = { latestReports: [] };
@@ -15,4 +15,3 @@ export function createSendContextToAiBuffer(registry) {
15
15
  });
16
16
  return buffer;
17
17
  }
18
- //# sourceMappingURL=send-context-to-ai.js.map
@@ -1,4 +1,4 @@
1
- import type { SnapshotReport } from './take-app-snapshot';
1
+ import type { SnapshotReport } from './take-app-snapshot.js';
2
2
  export interface SendContextPayload {
3
3
  hostName: string;
4
4
  tagList: unknown;
@@ -9,4 +9,3 @@ export interface SendContextPayload {
9
9
  outerHTML: string;
10
10
  snapshot: SnapshotReport[];
11
11
  }
12
- //# sourceMappingURL=send-context-to-ai.tokens.d.ts.map
@@ -1 +0,0 @@
1
- //# sourceMappingURL=send-context-to-ai.tokens.js.map
@@ -1,9 +1,9 @@
1
- import type { ServerFunctionContract, ServerFunctionContractInput, ServerFunctionContractOutput } from './server-function-contract';
2
- import type { ServerFunctionDefinition, ServerFunctionExpectedClientContext, ServerFunctionInput, ServerFunctionError, ServerFunctionSuccess } from './server-function';
3
- import { type AnyCraftClientMiddleware, type ClientMiddlewareContextOf } from './client-function-middleware';
4
- import type { UnionToIntersection } from './middleware-schema-shared';
5
- import { type CraftServiceProvider } from './craft-service';
6
- import { type CraftExceptionResult } from './craft-exception';
1
+ import type { ServerFunctionContract, ServerFunctionContractInput, ServerFunctionContractOutput } from './server-function-contract.js';
2
+ import type { ServerFunctionDefinition, ServerFunctionExpectedClientContext, ServerFunctionInput, ServerFunctionError, ServerFunctionSuccess } from './server-function.js';
3
+ import { type AnyCraftClientMiddleware, type ClientMiddlewareContextOf } from './client-function-middleware.js';
4
+ import type { UnionToIntersection } from './middleware-schema-shared.js';
5
+ import { type CraftServiceProvider } from './craft-service.js';
6
+ import { type CraftExceptionResult } from './craft-exception.js';
7
7
  export type ServerFunctionRequest = {
8
8
  readonly id: string;
9
9
  readonly input: unknown;
@@ -17,9 +17,21 @@ export type ServerFunctionRequest = {
17
17
  readonly protocolVersion?: 1;
18
18
  };
19
19
  export type ServerFunctionTransport = (request: ServerFunctionRequest) => unknown | Promise<unknown>;
20
+ export type ServerFunctionEndpoint = string | URL | ((serverFunctionId: string) => string | URL);
21
+ export type ServerFunctionFetchTransportOptions = Readonly<{
22
+ endpoint: ServerFunctionEndpoint;
23
+ fetch?: typeof globalThis.fetch;
24
+ headers?: Readonly<Record<string, string>>;
25
+ }>;
20
26
  export declare const ServerFunctionTransport: () => Generator<unknown, ServerFunctionTransport, unknown>;
21
27
  export declare function provideServerFunctionTransport(transport: ServerFunctionTransport): CraftServiceProvider;
22
28
  export declare function provideDefaultServerFunctionTransport(): CraftServiceProvider;
29
+ /**
30
+ * Creates a transport for an embedded endpoint, Worker route or Lambda
31
+ * Function URL. The protocol and typed server-function contract stay the
32
+ * same; only the endpoint resolution changes.
33
+ */
34
+ export declare function createServerFunctionFetchTransport(options: ServerFunctionFetchTransportOptions): ServerFunctionTransport;
23
35
  export type ServerFunctionHttpError = CraftExceptionResult<{
24
36
  _tag: 'HttpError';
25
37
  scope: 'ServerFunctionClient';
@@ -99,4 +111,3 @@ export declare function readServerFunctionFailure(body: unknown): ({
99
111
  readonly _tag: string;
100
112
  } & Record<string, unknown>) | undefined;
101
113
  export {};
102
- //# sourceMappingURL=server-function-client.d.ts.map
@@ -1,8 +1,8 @@
1
- import { collectClientMiddlewareSchemas, isCraftClientMiddleware, runClientMiddlewareChainAsync, validateClientContext, } from './client-function-middleware';
2
- import { inject, Injector } from './host/craft-compat';
3
- import { abstract, craftService, } from './craft-service';
4
- import { craftUse } from './craft-use';
5
- import { craftException, } from './craft-exception';
1
+ import { collectClientMiddlewareSchemas, isCraftClientMiddleware, runClientMiddlewareChainAsync, validateClientContext, } from './client-function-middleware.js';
2
+ import { inject, Injector } from './host/craft-compat.js';
3
+ import { abstract, craftService, } from './craft-service.js';
4
+ import { craftUse } from './craft-use.js';
5
+ import { craftException } from './craft-exception.js';
6
6
  const serverFunctionTransportService = craftService({ name: 'ServerFunctionTransport', providedIn: 'abstract' }, abstract());
7
7
  export const ServerFunctionTransport = serverFunctionTransportService.ServerFunctionTransport;
8
8
  export function provideServerFunctionTransport(transport) {
@@ -11,6 +11,19 @@ export function provideServerFunctionTransport(transport) {
11
11
  export function provideDefaultServerFunctionTransport() {
12
12
  return provideServerFunctionTransport(defaultServerFunctionTransport);
13
13
  }
14
+ /**
15
+ * Creates a transport for an embedded endpoint, Worker route or Lambda
16
+ * Function URL. The protocol and typed server-function contract stay the
17
+ * same; only the endpoint resolution changes.
18
+ */
19
+ export function createServerFunctionFetchTransport(options) {
20
+ return (request) => {
21
+ const endpoint = typeof options.endpoint === 'function'
22
+ ? options.endpoint(request.id)
23
+ : options.endpoint;
24
+ return fetchServerFunctionRequest(request, endpoint, options);
25
+ };
26
+ }
14
27
  /** Déclare ce que le navigateur enverra à une server function. */
15
28
  export function craftClientMiddleware(...attachments) {
16
29
  return Object.freeze({
@@ -51,7 +64,11 @@ function captureInjector() {
51
64
  }
52
65
  }
53
66
  async function defaultServerFunctionTransport(request) {
54
- if (typeof fetch !== 'function') {
67
+ return fetchServerFunctionRequest(request, '/__server-functions');
68
+ }
69
+ async function fetchServerFunctionRequest(request, endpoint, options = {}) {
70
+ const fetcher = options.fetch ?? globalThis.fetch;
71
+ if (typeof fetcher !== 'function') {
55
72
  return craftException({
56
73
  _tag: 'HttpError',
57
74
  scope: 'ServerFunctionClient',
@@ -63,9 +80,15 @@ async function defaultServerFunctionTransport(request) {
63
80
  body: `No server function transport configured for "${request.id}".`,
64
81
  });
65
82
  }
66
- const response = await fetch('/__server-functions', {
83
+ const response = await fetcher(endpoint, {
67
84
  method: 'POST',
68
- headers: { 'content-type': 'application/json' },
85
+ headers: {
86
+ 'content-type': 'application/json',
87
+ // En-tête non « simple » : il force un préflight CORS, donc un site
88
+ // tiers ne peut pas rejouer l'appel avec les cookies de l'utilisateur.
89
+ 'x-craft-protocol': '1',
90
+ ...options.headers,
91
+ },
69
92
  body: JSON.stringify(request),
70
93
  });
71
94
  const body = await response.json().catch(() => undefined);
@@ -103,4 +126,3 @@ export function readServerFunctionFailure(body) {
103
126
  return undefined;
104
127
  return error;
105
128
  }
106
- //# sourceMappingURL=server-function-client.js.map
@@ -1,4 +1,4 @@
1
- import type { CraftSchema, SchemaInput, SchemaOutput } from './schema-validation';
1
+ import type { CraftSchema, SchemaInput, SchemaOutput } from './schema-validation.js';
2
2
  export type ServerFunctionExposure = 'server' | 'client';
3
3
  export interface ServerFunctionContractOptions<InputSchema extends CraftSchema = CraftSchema, OutputSchema extends CraftSchema | undefined = undefined, Id extends string = string, ClientContextSchema extends CraftSchema | undefined = undefined> {
4
4
  readonly id: Id;
@@ -39,4 +39,3 @@ export declare function serverFunctionContract<const Id extends string, InputSch
39
39
  }): ServerFunctionContract<InputSchema, Exposure, OutputSchema, Id, ClientContextSchema>;
40
40
  export declare function isServerFunctionContract(value: unknown): value is ServerFunctionContract;
41
41
  export declare function assertServerFunctionId(id: string): void;
42
- //# sourceMappingURL=server-function-contract.d.ts.map
@@ -20,4 +20,3 @@ export function assertServerFunctionId(id) {
20
20
  throw new Error(`Invalid server function id "${id}". Use a stable dotted identifier.`);
21
21
  }
22
22
  }
23
- //# sourceMappingURL=server-function-contract.js.map