@craft-ts/core 0.7.0-beta.13

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 (682) hide show
  1. package/LICENSE +21 -0
  2. package/package.json +58 -0
  3. package/src/index.d.ts +148 -0
  4. package/src/index.d.ts.map +1 -0
  5. package/src/index.js +150 -0
  6. package/src/index.js.map +1 -0
  7. package/src/lib/after-recomputation.d.ts +327 -0
  8. package/src/lib/after-recomputation.d.ts.map +1 -0
  9. package/src/lib/after-recomputation.js +25 -0
  10. package/src/lib/after-recomputation.js.map +1 -0
  11. package/src/lib/app-checked-di.d.ts +82 -0
  12. package/src/lib/app-checked-di.d.ts.map +1 -0
  13. package/src/lib/app-checked-di.js +1 -0
  14. package/src/lib/app-checked-di.js.map +1 -0
  15. package/src/lib/async-process.d.ts +411 -0
  16. package/src/lib/async-process.d.ts.map +1 -0
  17. package/src/lib/async-process.js +702 -0
  18. package/src/lib/async-process.js.map +1 -0
  19. package/src/lib/branded-component/branded-component.d.ts +129 -0
  20. package/src/lib/branded-component/branded-component.d.ts.map +1 -0
  21. package/src/lib/branded-component/branded-component.js +7 -0
  22. package/src/lib/branded-component/branded-component.js.map +1 -0
  23. package/src/lib/browser-boundaries.d.ts +165 -0
  24. package/src/lib/browser-boundaries.d.ts.map +1 -0
  25. package/src/lib/browser-boundaries.js +550 -0
  26. package/src/lib/browser-boundaries.js.map +1 -0
  27. package/src/lib/client-di-requirement.d.ts +28 -0
  28. package/src/lib/client-di-requirement.d.ts.map +1 -0
  29. package/src/lib/client-di-requirement.js +11 -0
  30. package/src/lib/client-di-requirement.js.map +1 -0
  31. package/src/lib/client-function-middleware.d.ts +130 -0
  32. package/src/lib/client-function-middleware.d.ts.map +1 -0
  33. package/src/lib/client-function-middleware.js +144 -0
  34. package/src/lib/client-function-middleware.js.map +1 -0
  35. package/src/lib/component-monitoring.d.ts +7 -0
  36. package/src/lib/component-monitoring.d.ts.map +1 -0
  37. package/src/lib/component-monitoring.js +28 -0
  38. package/src/lib/component-monitoring.js.map +1 -0
  39. package/src/lib/component-register.d.ts +12 -0
  40. package/src/lib/component-register.d.ts.map +1 -0
  41. package/src/lib/component-register.js +13 -0
  42. package/src/lib/component-register.js.map +1 -0
  43. package/src/lib/computed-source.d.ts +303 -0
  44. package/src/lib/computed-source.d.ts.map +1 -0
  45. package/src/lib/computed-source.js +319 -0
  46. package/src/lib/computed-source.js.map +1 -0
  47. package/src/lib/correlation-id-plugin.d.ts +3 -0
  48. package/src/lib/correlation-id-plugin.d.ts.map +1 -0
  49. package/src/lib/correlation-id-plugin.js +73 -0
  50. package/src/lib/correlation-id-plugin.js.map +1 -0
  51. package/src/lib/correlation-id.d.ts +30 -0
  52. package/src/lib/correlation-id.d.ts.map +1 -0
  53. package/src/lib/correlation-id.js +86 -0
  54. package/src/lib/correlation-id.js.map +1 -0
  55. package/src/lib/craft-a11y.d.ts +22 -0
  56. package/src/lib/craft-a11y.d.ts.map +1 -0
  57. package/src/lib/craft-a11y.js +32 -0
  58. package/src/lib/craft-a11y.js.map +1 -0
  59. package/src/lib/craft-activated-route.d.ts +21 -0
  60. package/src/lib/craft-activated-route.d.ts.map +1 -0
  61. package/src/lib/craft-activated-route.js +20 -0
  62. package/src/lib/craft-activated-route.js.map +1 -0
  63. package/src/lib/craft-app-config.d.ts +91 -0
  64. package/src/lib/craft-app-config.d.ts.map +1 -0
  65. package/src/lib/craft-app-config.js +64 -0
  66. package/src/lib/craft-app-config.js.map +1 -0
  67. package/src/lib/craft-codec.d.ts +16 -0
  68. package/src/lib/craft-codec.d.ts.map +1 -0
  69. package/src/lib/craft-codec.js +1 -0
  70. package/src/lib/craft-codec.js.map +1 -0
  71. package/src/lib/craft-computed.d.ts +31 -0
  72. package/src/lib/craft-computed.d.ts.map +1 -0
  73. package/src/lib/craft-computed.js +81 -0
  74. package/src/lib/craft-computed.js.map +1 -0
  75. package/src/lib/craft-control-flow.d.ts +14 -0
  76. package/src/lib/craft-control-flow.d.ts.map +1 -0
  77. package/src/lib/craft-control-flow.js +18 -0
  78. package/src/lib/craft-control-flow.js.map +1 -0
  79. package/src/lib/craft-effect.d.ts +13 -0
  80. package/src/lib/craft-effect.d.ts.map +1 -0
  81. package/src/lib/craft-effect.js +93 -0
  82. package/src/lib/craft-effect.js.map +1 -0
  83. package/src/lib/craft-exception.d.ts +40 -0
  84. package/src/lib/craft-exception.d.ts.map +1 -0
  85. package/src/lib/craft-exception.js +16 -0
  86. package/src/lib/craft-exception.js.map +1 -0
  87. package/src/lib/craft-gen.d.ts +123 -0
  88. package/src/lib/craft-gen.d.ts.map +1 -0
  89. package/src/lib/craft-gen.js +90 -0
  90. package/src/lib/craft-gen.js.map +1 -0
  91. package/src/lib/craft-generator-runtime.d.ts +110 -0
  92. package/src/lib/craft-generator-runtime.d.ts.map +1 -0
  93. package/src/lib/craft-generator-runtime.js +191 -0
  94. package/src/lib/craft-generator-runtime.js.map +1 -0
  95. package/src/lib/craft-guard-runtime.d.ts +70 -0
  96. package/src/lib/craft-guard-runtime.d.ts.map +1 -0
  97. package/src/lib/craft-guard-runtime.js +195 -0
  98. package/src/lib/craft-guard-runtime.js.map +1 -0
  99. package/src/lib/craft-handshake.d.ts +35 -0
  100. package/src/lib/craft-handshake.d.ts.map +1 -0
  101. package/src/lib/craft-handshake.js +34 -0
  102. package/src/lib/craft-handshake.js.map +1 -0
  103. package/src/lib/craft-http-client.d.ts +236 -0
  104. package/src/lib/craft-http-client.d.ts.map +1 -0
  105. package/src/lib/craft-http-client.js +437 -0
  106. package/src/lib/craft-http-client.js.map +1 -0
  107. package/src/lib/craft-http-trace.d.ts +12 -0
  108. package/src/lib/craft-http-trace.d.ts.map +1 -0
  109. package/src/lib/craft-http-trace.js +28 -0
  110. package/src/lib/craft-http-trace.js.map +1 -0
  111. package/src/lib/craft-lazy.d.ts +42 -0
  112. package/src/lib/craft-lazy.d.ts.map +1 -0
  113. package/src/lib/craft-lazy.js +83 -0
  114. package/src/lib/craft-lazy.js.map +1 -0
  115. package/src/lib/craft-load-retry.d.ts +76 -0
  116. package/src/lib/craft-load-retry.d.ts.map +1 -0
  117. package/src/lib/craft-load-retry.js +160 -0
  118. package/src/lib/craft-load-retry.js.map +1 -0
  119. package/src/lib/craft-machine-history.d.ts +145 -0
  120. package/src/lib/craft-machine-history.d.ts.map +1 -0
  121. package/src/lib/craft-machine-history.js +276 -0
  122. package/src/lib/craft-machine-history.js.map +1 -0
  123. package/src/lib/craft-match.d.ts +49 -0
  124. package/src/lib/craft-match.d.ts.map +1 -0
  125. package/src/lib/craft-match.js +58 -0
  126. package/src/lib/craft-match.js.map +1 -0
  127. package/src/lib/craft-method.d.ts +28 -0
  128. package/src/lib/craft-method.d.ts.map +1 -0
  129. package/src/lib/craft-method.js +45 -0
  130. package/src/lib/craft-method.js.map +1 -0
  131. package/src/lib/craft-node-directive.d.ts +32 -0
  132. package/src/lib/craft-node-directive.d.ts.map +1 -0
  133. package/src/lib/craft-node-directive.js +22 -0
  134. package/src/lib/craft-node-directive.js.map +1 -0
  135. package/src/lib/craft-pending.d.ts +115 -0
  136. package/src/lib/craft-pending.d.ts.map +1 -0
  137. package/src/lib/craft-pending.js +187 -0
  138. package/src/lib/craft-pending.js.map +1 -0
  139. package/src/lib/craft-pipe.d.ts +63 -0
  140. package/src/lib/craft-pipe.d.ts.map +1 -0
  141. package/src/lib/craft-pipe.js +57 -0
  142. package/src/lib/craft-pipe.js.map +1 -0
  143. package/src/lib/craft-platform.d.ts +50 -0
  144. package/src/lib/craft-platform.d.ts.map +1 -0
  145. package/src/lib/craft-platform.js +175 -0
  146. package/src/lib/craft-platform.js.map +1 -0
  147. package/src/lib/craft-primitive-gen.d.ts +137 -0
  148. package/src/lib/craft-primitive-gen.d.ts.map +1 -0
  149. package/src/lib/craft-primitive-gen.js +76 -0
  150. package/src/lib/craft-primitive-gen.js.map +1 -0
  151. package/src/lib/craft-primitive-registry.d.ts +113 -0
  152. package/src/lib/craft-primitive-registry.d.ts.map +1 -0
  153. package/src/lib/craft-primitive-registry.js +159 -0
  154. package/src/lib/craft-primitive-registry.js.map +1 -0
  155. package/src/lib/craft-program-operators.d.ts +101 -0
  156. package/src/lib/craft-program-operators.d.ts.map +1 -0
  157. package/src/lib/craft-program-operators.js +116 -0
  158. package/src/lib/craft-program-operators.js.map +1 -0
  159. package/src/lib/craft-program-runtime.d.ts +80 -0
  160. package/src/lib/craft-program-runtime.d.ts.map +1 -0
  161. package/src/lib/craft-program-runtime.js +166 -0
  162. package/src/lib/craft-program-runtime.js.map +1 -0
  163. package/src/lib/craft-register-for-runtime.d.ts +39 -0
  164. package/src/lib/craft-register-for-runtime.d.ts.map +1 -0
  165. package/src/lib/craft-register-for-runtime.js +96 -0
  166. package/src/lib/craft-register-for-runtime.js.map +1 -0
  167. package/src/lib/craft-register-for.d.ts +57 -0
  168. package/src/lib/craft-register-for.d.ts.map +1 -0
  169. package/src/lib/craft-register-for.js +200 -0
  170. package/src/lib/craft-register-for.js.map +1 -0
  171. package/src/lib/craft-render-identity.d.ts +19 -0
  172. package/src/lib/craft-render-identity.d.ts.map +1 -0
  173. package/src/lib/craft-render-identity.js +23 -0
  174. package/src/lib/craft-render-identity.js.map +1 -0
  175. package/src/lib/craft-replay.d.ts +5 -0
  176. package/src/lib/craft-replay.d.ts.map +1 -0
  177. package/src/lib/craft-replay.js +28 -0
  178. package/src/lib/craft-replay.js.map +1 -0
  179. package/src/lib/craft-resolve.d.ts +39 -0
  180. package/src/lib/craft-resolve.d.ts.map +1 -0
  181. package/src/lib/craft-resolve.js +9 -0
  182. package/src/lib/craft-resolve.js.map +1 -0
  183. package/src/lib/craft-resource.d.ts +11 -0
  184. package/src/lib/craft-resource.d.ts.map +1 -0
  185. package/src/lib/craft-resource.js +264 -0
  186. package/src/lib/craft-resource.js.map +1 -0
  187. package/src/lib/craft-route-exceptions.d.ts +785 -0
  188. package/src/lib/craft-route-exceptions.d.ts.map +1 -0
  189. package/src/lib/craft-route-exceptions.js +86 -0
  190. package/src/lib/craft-route-exceptions.js.map +1 -0
  191. package/src/lib/craft-route-load-error.d.ts +1145 -0
  192. package/src/lib/craft-route-load-error.d.ts.map +1 -0
  193. package/src/lib/craft-route-load-error.js +173 -0
  194. package/src/lib/craft-route-load-error.js.map +1 -0
  195. package/src/lib/craft-route-meta.d.ts +52 -0
  196. package/src/lib/craft-route-meta.d.ts.map +1 -0
  197. package/src/lib/craft-route-meta.js +16 -0
  198. package/src/lib/craft-route-meta.js.map +1 -0
  199. package/src/lib/craft-route-target.d.ts +27 -0
  200. package/src/lib/craft-route-target.d.ts.map +1 -0
  201. package/src/lib/craft-route-target.js +22 -0
  202. package/src/lib/craft-route-target.js.map +1 -0
  203. package/src/lib/craft-router-outlet.d.ts +105 -0
  204. package/src/lib/craft-router-outlet.d.ts.map +1 -0
  205. package/src/lib/craft-router-outlet.js +735 -0
  206. package/src/lib/craft-router-outlet.js.map +1 -0
  207. package/src/lib/craft-router-tokens.d.ts +49 -0
  208. package/src/lib/craft-router-tokens.d.ts.map +1 -0
  209. package/src/lib/craft-router-tokens.js +15 -0
  210. package/src/lib/craft-router-tokens.js.map +1 -0
  211. package/src/lib/craft-router-trace.d.ts +18 -0
  212. package/src/lib/craft-router-trace.d.ts.map +1 -0
  213. package/src/lib/craft-router-trace.js +54 -0
  214. package/src/lib/craft-router-trace.js.map +1 -0
  215. package/src/lib/craft-router.d.ts +248 -0
  216. package/src/lib/craft-router.d.ts.map +1 -0
  217. package/src/lib/craft-router.js +559 -0
  218. package/src/lib/craft-router.js.map +1 -0
  219. package/src/lib/craft-routes.d.ts +755 -0
  220. package/src/lib/craft-routes.d.ts.map +1 -0
  221. package/src/lib/craft-routes.js +510 -0
  222. package/src/lib/craft-routes.js.map +1 -0
  223. package/src/lib/craft-service.d.ts +1034 -0
  224. package/src/lib/craft-service.d.ts.map +1 -0
  225. package/src/lib/craft-service.js +1072 -0
  226. package/src/lib/craft-service.js.map +1 -0
  227. package/src/lib/craft-service.shared.d.ts +35 -0
  228. package/src/lib/craft-service.shared.d.ts.map +1 -0
  229. package/src/lib/craft-service.shared.js +4 -0
  230. package/src/lib/craft-service.shared.js.map +1 -0
  231. package/src/lib/craft-settled.d.ts +171 -0
  232. package/src/lib/craft-settled.d.ts.map +1 -0
  233. package/src/lib/craft-settled.js +130 -0
  234. package/src/lib/craft-settled.js.map +1 -0
  235. package/src/lib/craft-ssr.d.ts +29 -0
  236. package/src/lib/craft-ssr.d.ts.map +1 -0
  237. package/src/lib/craft-ssr.js +27 -0
  238. package/src/lib/craft-ssr.js.map +1 -0
  239. package/src/lib/craft-state-machine-runtime.d.ts +88 -0
  240. package/src/lib/craft-state-machine-runtime.d.ts.map +1 -0
  241. package/src/lib/craft-state-machine-runtime.js +167 -0
  242. package/src/lib/craft-state-machine-runtime.js.map +1 -0
  243. package/src/lib/craft-state-machine.d.ts +233 -0
  244. package/src/lib/craft-state-machine.d.ts.map +1 -0
  245. package/src/lib/craft-state-machine.js +254 -0
  246. package/src/lib/craft-state-machine.js.map +1 -0
  247. package/src/lib/craft-target-runtime.d.ts +20 -0
  248. package/src/lib/craft-target-runtime.d.ts.map +1 -0
  249. package/src/lib/craft-target-runtime.js +42 -0
  250. package/src/lib/craft-target-runtime.js.map +1 -0
  251. package/src/lib/craft-transfer-snapshot.d.ts +19 -0
  252. package/src/lib/craft-transfer-snapshot.d.ts.map +1 -0
  253. package/src/lib/craft-transfer-snapshot.js +90 -0
  254. package/src/lib/craft-transfer-snapshot.js.map +1 -0
  255. package/src/lib/craft-unique.d.ts +7 -0
  256. package/src/lib/craft-unique.d.ts.map +1 -0
  257. package/src/lib/craft-unique.js +16 -0
  258. package/src/lib/craft-unique.js.map +1 -0
  259. package/src/lib/craft-until-settled.d.ts +99 -0
  260. package/src/lib/craft-until-settled.d.ts.map +1 -0
  261. package/src/lib/craft-until-settled.js +81 -0
  262. package/src/lib/craft-until-settled.js.map +1 -0
  263. package/src/lib/craft-use.d.ts +26 -0
  264. package/src/lib/craft-use.d.ts.map +1 -0
  265. package/src/lib/craft-use.js +37 -0
  266. package/src/lib/craft-use.js.map +1 -0
  267. package/src/lib/craft-view-transition.d.ts +102 -0
  268. package/src/lib/craft-view-transition.d.ts.map +1 -0
  269. package/src/lib/craft-view-transition.js +130 -0
  270. package/src/lib/craft-view-transition.js.map +1 -0
  271. package/src/lib/dom-event-hook.d.ts +30 -0
  272. package/src/lib/dom-event-hook.d.ts.map +1 -0
  273. package/src/lib/dom-event-hook.js +16 -0
  274. package/src/lib/dom-event-hook.js.map +1 -0
  275. package/src/lib/fn-wrapper.d.ts +13 -0
  276. package/src/lib/fn-wrapper.d.ts.map +1 -0
  277. package/src/lib/fn-wrapper.js +66 -0
  278. package/src/lib/fn-wrapper.js.map +1 -0
  279. package/src/lib/form/craft-field.d.ts +155 -0
  280. package/src/lib/form/craft-field.d.ts.map +1 -0
  281. package/src/lib/form/craft-field.directive.d.ts +70 -0
  282. package/src/lib/form/craft-field.directive.d.ts.map +1 -0
  283. package/src/lib/form/craft-field.directive.js +549 -0
  284. package/src/lib/form/craft-field.directive.js.map +1 -0
  285. package/src/lib/form/craft-field.js +586 -0
  286. package/src/lib/form/craft-field.js.map +1 -0
  287. package/src/lib/form/field-exception.d.ts +62 -0
  288. package/src/lib/form/field-exception.d.ts.map +1 -0
  289. package/src/lib/form/field-exception.js +37 -0
  290. package/src/lib/form/field-exception.js.map +1 -0
  291. package/src/lib/form/field-lens.d.ts +29 -0
  292. package/src/lib/form/field-lens.d.ts.map +1 -0
  293. package/src/lib/form/field-lens.js +32 -0
  294. package/src/lib/form/field-lens.js.map +1 -0
  295. package/src/lib/form/insert-form-attributes.d.ts +69 -0
  296. package/src/lib/form/insert-form-attributes.d.ts.map +1 -0
  297. package/src/lib/form/insert-form-attributes.js +163 -0
  298. package/src/lib/form/insert-form-attributes.js.map +1 -0
  299. package/src/lib/form/insert-form-internals.d.ts +110 -0
  300. package/src/lib/form/insert-form-internals.d.ts.map +1 -0
  301. package/src/lib/form/insert-form-internals.js +276 -0
  302. package/src/lib/form/insert-form-internals.js.map +1 -0
  303. package/src/lib/form/insert-form-schema.d.ts +10 -0
  304. package/src/lib/form/insert-form-schema.d.ts.map +1 -0
  305. package/src/lib/form/insert-form-schema.js +62 -0
  306. package/src/lib/form/insert-form-schema.js.map +1 -0
  307. package/src/lib/form/insert-form-submit.d.ts +79 -0
  308. package/src/lib/form/insert-form-submit.d.ts.map +1 -0
  309. package/src/lib/form/insert-form-submit.js +126 -0
  310. package/src/lib/form/insert-form-submit.js.map +1 -0
  311. package/src/lib/form/insert-form.d.ts +39 -0
  312. package/src/lib/form/insert-form.d.ts.map +1 -0
  313. package/src/lib/form/insert-form.js +255 -0
  314. package/src/lib/form/insert-form.js.map +1 -0
  315. package/src/lib/form/insert-select-form-tree.d.ts +33 -0
  316. package/src/lib/form/insert-select-form-tree.d.ts.map +1 -0
  317. package/src/lib/form/insert-select-form-tree.js +144 -0
  318. package/src/lib/form/insert-select-form-tree.js.map +1 -0
  319. package/src/lib/form/insert-sub-form-field.d.ts +17 -0
  320. package/src/lib/form/insert-sub-form-field.d.ts.map +1 -0
  321. package/src/lib/form/insert-sub-form-field.js +41 -0
  322. package/src/lib/form/insert-sub-form-field.js.map +1 -0
  323. package/src/lib/form/make-form-tree-insert.d.ts +22 -0
  324. package/src/lib/form/make-form-tree-insert.d.ts.map +1 -0
  325. package/src/lib/form/make-form-tree-insert.js +43 -0
  326. package/src/lib/form/make-form-tree-insert.js.map +1 -0
  327. package/src/lib/form/target-form-field.d.ts +11 -0
  328. package/src/lib/form/target-form-field.d.ts.map +1 -0
  329. package/src/lib/form/target-form-field.js +1 -0
  330. package/src/lib/form/target-form-field.js.map +1 -0
  331. package/src/lib/form/validator.d.ts +174 -0
  332. package/src/lib/form/validator.d.ts.map +1 -0
  333. package/src/lib/form/validator.js +465 -0
  334. package/src/lib/form/validator.js.map +1 -0
  335. package/src/lib/from-event-to-source$.d.ts +210 -0
  336. package/src/lib/from-event-to-source$.d.ts.map +1 -0
  337. package/src/lib/from-event-to-source$.js +29 -0
  338. package/src/lib/from-event-to-source$.js.map +1 -0
  339. package/src/lib/global-persister-handler.service.d.ts +10 -0
  340. package/src/lib/global-persister-handler.service.d.ts.map +1 -0
  341. package/src/lib/global-persister-handler.service.js +40 -0
  342. package/src/lib/global-persister-handler.service.js.map +1 -0
  343. package/src/lib/host/craft-compat.d.ts +242 -0
  344. package/src/lib/host/craft-compat.d.ts.map +1 -0
  345. package/src/lib/host/craft-compat.js +444 -0
  346. package/src/lib/host/craft-compat.js.map +1 -0
  347. package/src/lib/host/craft-dom.d.ts +16 -0
  348. package/src/lib/host/craft-dom.d.ts.map +1 -0
  349. package/src/lib/host/craft-dom.js +24 -0
  350. package/src/lib/host/craft-dom.js.map +1 -0
  351. package/src/lib/host/craft-http.d.ts +22 -0
  352. package/src/lib/host/craft-http.d.ts.map +1 -0
  353. package/src/lib/host/craft-http.js +80 -0
  354. package/src/lib/host/craft-http.js.map +1 -0
  355. package/src/lib/host/craft-injector-host.d.ts +3 -0
  356. package/src/lib/host/craft-injector-host.d.ts.map +1 -0
  357. package/src/lib/host/craft-injector-host.js +2 -0
  358. package/src/lib/host/craft-injector-host.js.map +1 -0
  359. package/src/lib/host/craft-injector.d.ts +40 -0
  360. package/src/lib/host/craft-injector.d.ts.map +1 -0
  361. package/src/lib/host/craft-injector.js +318 -0
  362. package/src/lib/host/craft-injector.js.map +1 -0
  363. package/src/lib/host/craft-linked-signal.d.ts +17 -0
  364. package/src/lib/host/craft-linked-signal.d.ts.map +1 -0
  365. package/src/lib/host/craft-linked-signal.js +86 -0
  366. package/src/lib/host/craft-linked-signal.js.map +1 -0
  367. package/src/lib/host/craft-router-runtime.d.ts +61 -0
  368. package/src/lib/host/craft-router-runtime.d.ts.map +1 -0
  369. package/src/lib/host/craft-router-runtime.js +456 -0
  370. package/src/lib/host/craft-router-runtime.js.map +1 -0
  371. package/src/lib/host/craft-router-types.d.ts +84 -0
  372. package/src/lib/host/craft-router-types.d.ts.map +1 -0
  373. package/src/lib/host/craft-router-types.js +35 -0
  374. package/src/lib/host/craft-router-types.js.map +1 -0
  375. package/src/lib/host/craft-signal.d.ts +45 -0
  376. package/src/lib/host/craft-signal.d.ts.map +1 -0
  377. package/src/lib/host/craft-signal.js +161 -0
  378. package/src/lib/host/craft-signal.js.map +1 -0
  379. package/src/lib/host/craft-test-bed.d.ts +63 -0
  380. package/src/lib/host/craft-test-bed.d.ts.map +1 -0
  381. package/src/lib/host/craft-test-bed.js +114 -0
  382. package/src/lib/host/craft-test-bed.js.map +1 -0
  383. package/src/lib/host-tag.d.ts +2 -0
  384. package/src/lib/host-tag.d.ts.map +1 -0
  385. package/src/lib/host-tag.js +2 -0
  386. package/src/lib/host-tag.js.map +1 -0
  387. package/src/lib/insert-entities.d.ts +131 -0
  388. package/src/lib/insert-entities.d.ts.map +1 -0
  389. package/src/lib/insert-entities.js +159 -0
  390. package/src/lib/insert-entities.js.map +1 -0
  391. package/src/lib/insert-noop-typing-anchor.d.ts +15 -0
  392. package/src/lib/insert-noop-typing-anchor.d.ts.map +1 -0
  393. package/src/lib/insert-noop-typing-anchor.js +16 -0
  394. package/src/lib/insert-noop-typing-anchor.js.map +1 -0
  395. package/src/lib/insert-pagination-placeholder-data.d.ts +122 -0
  396. package/src/lib/insert-pagination-placeholder-data.d.ts.map +1 -0
  397. package/src/lib/insert-pagination-placeholder-data.js +244 -0
  398. package/src/lib/insert-pagination-placeholder-data.js.map +1 -0
  399. package/src/lib/insert-react-on-mutation.d.ts +261 -0
  400. package/src/lib/insert-react-on-mutation.d.ts.map +1 -0
  401. package/src/lib/insert-react-on-mutation.js +227 -0
  402. package/src/lib/insert-react-on-mutation.js.map +1 -0
  403. package/src/lib/insert-select-resource.d.ts +31 -0
  404. package/src/lib/insert-select-resource.d.ts.map +1 -0
  405. package/src/lib/insert-select-resource.js +27 -0
  406. package/src/lib/insert-select-resource.js.map +1 -0
  407. package/src/lib/insert-select.d.ts +126 -0
  408. package/src/lib/insert-select.d.ts.map +1 -0
  409. package/src/lib/insert-select.js +535 -0
  410. package/src/lib/insert-select.js.map +1 -0
  411. package/src/lib/insert-storage-persister.d.ts +27 -0
  412. package/src/lib/insert-storage-persister.d.ts.map +1 -0
  413. package/src/lib/insert-storage-persister.js +65 -0
  414. package/src/lib/insert-storage-persister.js.map +1 -0
  415. package/src/lib/insert-typed-pipes.d.ts +64 -0
  416. package/src/lib/insert-typed-pipes.d.ts.map +1 -0
  417. package/src/lib/insert-typed-pipes.js +32 -0
  418. package/src/lib/insert-typed-pipes.js.map +1 -0
  419. package/src/lib/linked-source.d.ts +8 -0
  420. package/src/lib/linked-source.d.ts.map +1 -0
  421. package/src/lib/linked-source.js +24 -0
  422. package/src/lib/linked-source.js.map +1 -0
  423. package/src/lib/local-storage-persister.d.ts +4 -0
  424. package/src/lib/local-storage-persister.d.ts.map +1 -0
  425. package/src/lib/local-storage-persister.js +342 -0
  426. package/src/lib/local-storage-persister.js.map +1 -0
  427. package/src/lib/middleware-schema-shared.d.ts +67 -0
  428. package/src/lib/middleware-schema-shared.d.ts.map +1 -0
  429. package/src/lib/middleware-schema-shared.js +34 -0
  430. package/src/lib/middleware-schema-shared.js.map +1 -0
  431. package/src/lib/mock-http-request-for-route.d.ts +173 -0
  432. package/src/lib/mock-http-request-for-route.d.ts.map +1 -0
  433. package/src/lib/mock-http-request-for-route.js +127 -0
  434. package/src/lib/mock-http-request-for-route.js.map +1 -0
  435. package/src/lib/mutation.d.ts +332 -0
  436. package/src/lib/mutation.d.ts.map +1 -0
  437. package/src/lib/mutation.js +923 -0
  438. package/src/lib/mutation.js.map +1 -0
  439. package/src/lib/on$.d.ts +26 -0
  440. package/src/lib/on$.d.ts.map +1 -0
  441. package/src/lib/on$.js +19 -0
  442. package/src/lib/on$.js.map +1 -0
  443. package/src/lib/portable-server-function.d.ts +68 -0
  444. package/src/lib/portable-server-function.d.ts.map +1 -0
  445. package/src/lib/portable-server-function.js +97 -0
  446. package/src/lib/portable-server-function.js.map +1 -0
  447. package/src/lib/preserved-resource.d.ts +4 -0
  448. package/src/lib/preserved-resource.d.ts.map +1 -0
  449. package/src/lib/preserved-resource.js +60 -0
  450. package/src/lib/preserved-resource.js.map +1 -0
  451. package/src/lib/primitive-method-runtime-context.d.ts +28 -0
  452. package/src/lib/primitive-method-runtime-context.d.ts.map +1 -0
  453. package/src/lib/primitive-method-runtime-context.js +38 -0
  454. package/src/lib/primitive-method-runtime-context.js.map +1 -0
  455. package/src/lib/primitive-resource-runtime-context.d.ts +46 -0
  456. package/src/lib/primitive-resource-runtime-context.d.ts.map +1 -0
  457. package/src/lib/primitive-resource-runtime-context.js +102 -0
  458. package/src/lib/primitive-resource-runtime-context.js.map +1 -0
  459. package/src/lib/query-params.d.ts +216 -0
  460. package/src/lib/query-params.d.ts.map +1 -0
  461. package/src/lib/query-params.js +324 -0
  462. package/src/lib/query-params.js.map +1 -0
  463. package/src/lib/query.core.d.ts +214 -0
  464. package/src/lib/query.core.d.ts.map +1 -0
  465. package/src/lib/query.core.js +210 -0
  466. package/src/lib/query.core.js.map +1 -0
  467. package/src/lib/query.d.ts +324 -0
  468. package/src/lib/query.d.ts.map +1 -0
  469. package/src/lib/query.js +971 -0
  470. package/src/lib/query.js.map +1 -0
  471. package/src/lib/reactive-read.d.ts +162 -0
  472. package/src/lib/reactive-read.d.ts.map +1 -0
  473. package/src/lib/reactive-read.js +389 -0
  474. package/src/lib/reactive-read.js.map +1 -0
  475. package/src/lib/resource-by-id.d.ts +71 -0
  476. package/src/lib/resource-by-id.d.ts.map +1 -0
  477. package/src/lib/resource-by-id.js +294 -0
  478. package/src/lib/resource-by-id.js.map +1 -0
  479. package/src/lib/resource-exception.d.ts +30 -0
  480. package/src/lib/resource-exception.d.ts.map +1 -0
  481. package/src/lib/resource-exception.js +86 -0
  482. package/src/lib/resource-exception.js.map +1 -0
  483. package/src/lib/route-checked-di.d.ts +229 -0
  484. package/src/lib/route-checked-di.d.ts.map +1 -0
  485. package/src/lib/route-checked-di.js +1 -0
  486. package/src/lib/route-checked-di.js.map +1 -0
  487. package/src/lib/schema-validation.d.ts +89 -0
  488. package/src/lib/schema-validation.d.ts.map +1 -0
  489. package/src/lib/schema-validation.js +110 -0
  490. package/src/lib/schema-validation.js.map +1 -0
  491. package/src/lib/send-context-to-ai.d.ts +20 -0
  492. package/src/lib/send-context-to-ai.d.ts.map +1 -0
  493. package/src/lib/send-context-to-ai.js +18 -0
  494. package/src/lib/send-context-to-ai.js.map +1 -0
  495. package/src/lib/send-context-to-ai.tokens.d.ts +12 -0
  496. package/src/lib/send-context-to-ai.tokens.d.ts.map +1 -0
  497. package/src/lib/send-context-to-ai.tokens.js +1 -0
  498. package/src/lib/send-context-to-ai.tokens.js.map +1 -0
  499. package/src/lib/server-function-client.d.ts +102 -0
  500. package/src/lib/server-function-client.d.ts.map +1 -0
  501. package/src/lib/server-function-client.js +106 -0
  502. package/src/lib/server-function-client.js.map +1 -0
  503. package/src/lib/server-function-contract.d.ts +42 -0
  504. package/src/lib/server-function-contract.d.ts.map +1 -0
  505. package/src/lib/server-function-contract.js +23 -0
  506. package/src/lib/server-function-contract.js.map +1 -0
  507. package/src/lib/server-function-middleware.d.ts +222 -0
  508. package/src/lib/server-function-middleware.d.ts.map +1 -0
  509. package/src/lib/server-function-middleware.js +189 -0
  510. package/src/lib/server-function-middleware.js.map +1 -0
  511. package/src/lib/server-function.d.ts +114 -0
  512. package/src/lib/server-function.d.ts.map +1 -0
  513. package/src/lib/server-function.js +80 -0
  514. package/src/lib/server-function.js.map +1 -0
  515. package/src/lib/server-layer.d.ts +185 -0
  516. package/src/lib/server-layer.d.ts.map +1 -0
  517. package/src/lib/server-layer.js +121 -0
  518. package/src/lib/server-layer.js.map +1 -0
  519. package/src/lib/server.d.ts +83 -0
  520. package/src/lib/server.d.ts.map +1 -0
  521. package/src/lib/server.js +266 -0
  522. package/src/lib/server.js.map +1 -0
  523. package/src/lib/setup-craft-service-test.d.ts +90 -0
  524. package/src/lib/setup-craft-service-test.d.ts.map +1 -0
  525. package/src/lib/setup-craft-service-test.js +193 -0
  526. package/src/lib/setup-craft-service-test.js.map +1 -0
  527. package/src/lib/setup-craft-service-testing-by-register.d.ts +245 -0
  528. package/src/lib/setup-craft-service-testing-by-register.d.ts.map +1 -0
  529. package/src/lib/setup-craft-service-testing-by-register.js +316 -0
  530. package/src/lib/setup-craft-service-testing-by-register.js.map +1 -0
  531. package/src/lib/signal-proxy.d.ts +21 -0
  532. package/src/lib/signal-proxy.d.ts.map +1 -0
  533. package/src/lib/signal-proxy.js +79 -0
  534. package/src/lib/signal-proxy.js.map +1 -0
  535. package/src/lib/signal-source.d.ts +392 -0
  536. package/src/lib/signal-source.d.ts.map +1 -0
  537. package/src/lib/signal-source.js +433 -0
  538. package/src/lib/signal-source.js.map +1 -0
  539. package/src/lib/source$.d.ts +121 -0
  540. package/src/lib/source$.d.ts.map +1 -0
  541. package/src/lib/source$.js +171 -0
  542. package/src/lib/source$.js.map +1 -0
  543. package/src/lib/source-from-event.d.ts +350 -0
  544. package/src/lib/source-from-event.d.ts.map +1 -0
  545. package/src/lib/source-from-event.js +26 -0
  546. package/src/lib/source-from-event.js.map +1 -0
  547. package/src/lib/stacked-source.d.ts +6 -0
  548. package/src/lib/stacked-source.d.ts.map +1 -0
  549. package/src/lib/stacked-source.js +29 -0
  550. package/src/lib/stacked-source.js.map +1 -0
  551. package/src/lib/standard-schema.d.ts +43 -0
  552. package/src/lib/standard-schema.d.ts.map +1 -0
  553. package/src/lib/standard-schema.js +1 -0
  554. package/src/lib/standard-schema.js.map +1 -0
  555. package/src/lib/state-method-runtime-context.d.ts +13 -0
  556. package/src/lib/state-method-runtime-context.d.ts.map +1 -0
  557. package/src/lib/state-method-runtime-context.js +11 -0
  558. package/src/lib/state-method-runtime-context.js.map +1 -0
  559. package/src/lib/state.d.ts +158 -0
  560. package/src/lib/state.d.ts.map +1 -0
  561. package/src/lib/state.js +388 -0
  562. package/src/lib/state.js.map +1 -0
  563. package/src/lib/storage-persister.service.d.ts +25 -0
  564. package/src/lib/storage-persister.service.d.ts.map +1 -0
  565. package/src/lib/storage-persister.service.js +27 -0
  566. package/src/lib/storage-persister.service.js.map +1 -0
  567. package/src/lib/take-app-snapshot.d.ts +31 -0
  568. package/src/lib/take-app-snapshot.d.ts.map +1 -0
  569. package/src/lib/take-app-snapshot.js +93 -0
  570. package/src/lib/take-app-snapshot.js.map +1 -0
  571. package/src/lib/template-trace.d.ts +37 -0
  572. package/src/lib/template-trace.d.ts.map +1 -0
  573. package/src/lib/template-trace.js +37 -0
  574. package/src/lib/template-trace.js.map +1 -0
  575. package/src/lib/temporal-runtime.d.ts +146 -0
  576. package/src/lib/temporal-runtime.d.ts.map +1 -0
  577. package/src/lib/temporal-runtime.js +375 -0
  578. package/src/lib/temporal-runtime.js.map +1 -0
  579. package/src/lib/to-source.d.ts +335 -0
  580. package/src/lib/to-source.d.ts.map +1 -0
  581. package/src/lib/to-source.js +359 -0
  582. package/src/lib/to-source.js.map +1 -0
  583. package/src/lib/util/craft-resource-ref.d.ts +29 -0
  584. package/src/lib/util/craft-resource-ref.d.ts.map +1 -0
  585. package/src/lib/util/craft-resource-ref.js +1 -0
  586. package/src/lib/util/craft-resource-ref.js.map +1 -0
  587. package/src/lib/util/craft-resource-status.d.ts +17 -0
  588. package/src/lib/util/craft-resource-status.d.ts.map +1 -0
  589. package/src/lib/util/craft-resource-status.js +14 -0
  590. package/src/lib/util/craft-resource-status.js.map +1 -0
  591. package/src/lib/util/entities-util.d.ts +340 -0
  592. package/src/lib/util/entities-util.d.ts.map +1 -0
  593. package/src/lib/util/entities-util.js +136 -0
  594. package/src/lib/util/entities-util.js.map +1 -0
  595. package/src/lib/util/explicit-effect.d.ts +42 -0
  596. package/src/lib/util/explicit-effect.d.ts.map +1 -0
  597. package/src/lib/util/explicit-effect.js +37 -0
  598. package/src/lib/util/explicit-effect.js.map +1 -0
  599. package/src/lib/util/extract-signal-props-and-methods.d.ts +20 -0
  600. package/src/lib/util/extract-signal-props-and-methods.d.ts.map +1 -0
  601. package/src/lib/util/extract-signal-props-and-methods.js +1 -0
  602. package/src/lib/util/extract-signal-props-and-methods.js.map +1 -0
  603. package/src/lib/util/method-trigger-nonce.d.ts +45 -0
  604. package/src/lib/util/method-trigger-nonce.d.ts.map +1 -0
  605. package/src/lib/util/method-trigger-nonce.js +58 -0
  606. package/src/lib/util/method-trigger-nonce.js.map +1 -0
  607. package/src/lib/util/persister.type.d.ts +37 -0
  608. package/src/lib/util/persister.type.d.ts.map +1 -0
  609. package/src/lib/util/persister.type.js +1 -0
  610. package/src/lib/util/persister.type.js.map +1 -0
  611. package/src/lib/util/persister.util.d.ts +8 -0
  612. package/src/lib/util/persister.util.d.ts.map +1 -0
  613. package/src/lib/util/persister.util.js +71 -0
  614. package/src/lib/util/persister.util.js.map +1 -0
  615. package/src/lib/util/react-on-mutation-effect.d.ts +16 -0
  616. package/src/lib/util/react-on-mutation-effect.d.ts.map +1 -0
  617. package/src/lib/util/react-on-mutation-effect.js +148 -0
  618. package/src/lib/util/react-on-mutation-effect.js.map +1 -0
  619. package/src/lib/util/resource-by-id-changes-tracker.util.d.ts +27 -0
  620. package/src/lib/util/resource-by-id-changes-tracker.util.d.ts.map +1 -0
  621. package/src/lib/util/resource-by-id-changes-tracker.util.js +97 -0
  622. package/src/lib/util/resource-by-id-changes-tracker.util.js.map +1 -0
  623. package/src/lib/util/source.type.d.ts +6 -0
  624. package/src/lib/util/source.type.d.ts.map +1 -0
  625. package/src/lib/util/source.type.js +1 -0
  626. package/src/lib/util/source.type.js.map +1 -0
  627. package/src/lib/util/types/access-type-object-property-by-dotted-path.type.d.ts +4 -0
  628. package/src/lib/util/types/access-type-object-property-by-dotted-path.type.d.ts.map +1 -0
  629. package/src/lib/util/types/access-type-object-property-by-dotted-path.type.js +1 -0
  630. package/src/lib/util/types/access-type-object-property-by-dotted-path.type.js.map +1 -0
  631. package/src/lib/util/types/boolean-or-mapper-fn-by-path-by-id.type.d.ts +27 -0
  632. package/src/lib/util/types/boolean-or-mapper-fn-by-path-by-id.type.d.ts.map +1 -0
  633. package/src/lib/util/types/boolean-or-mapper-fn-by-path-by-id.type.js +1 -0
  634. package/src/lib/util/types/boolean-or-mapper-fn-by-path-by-id.type.js.map +1 -0
  635. package/src/lib/util/types/boolean-or-mapper-fn-by-path.type.d.ts +24 -0
  636. package/src/lib/util/types/boolean-or-mapper-fn-by-path.type.d.ts.map +1 -0
  637. package/src/lib/util/types/boolean-or-mapper-fn-by-path.type.js +1 -0
  638. package/src/lib/util/types/boolean-or-mapper-fn-by-path.type.js.map +1 -0
  639. package/src/lib/util/types/brand.d.ts +7 -0
  640. package/src/lib/util/types/brand.d.ts.map +1 -0
  641. package/src/lib/util/types/brand.js +9 -0
  642. package/src/lib/util/types/brand.js.map +1 -0
  643. package/src/lib/util/types/object-deep-path-mapper.type.d.ts +13 -0
  644. package/src/lib/util/types/object-deep-path-mapper.type.d.ts.map +1 -0
  645. package/src/lib/util/types/object-deep-path-mapper.type.js +1 -0
  646. package/src/lib/util/types/object-deep-path-mapper.type.js.map +1 -0
  647. package/src/lib/util/types/resource-by-id-config.type.d.ts +115 -0
  648. package/src/lib/util/types/resource-by-id-config.type.d.ts.map +1 -0
  649. package/src/lib/util/types/resource-by-id-config.type.js +1 -0
  650. package/src/lib/util/types/resource-by-id-config.type.js.map +1 -0
  651. package/src/lib/util/types/resource-with-params-or-params-fn.type.d.ts +52 -0
  652. package/src/lib/util/types/resource-with-params-or-params-fn.type.d.ts.map +1 -0
  653. package/src/lib/util/types/resource-with-params-or-params-fn.type.js +1 -0
  654. package/src/lib/util/types/resource-with-params-or-params-fn.type.js.map +1 -0
  655. package/src/lib/util/types/shared.type.d.ts +66 -0
  656. package/src/lib/util/types/shared.type.d.ts.map +1 -0
  657. package/src/lib/util/types/shared.type.js +1 -0
  658. package/src/lib/util/types/shared.type.js.map +1 -0
  659. package/src/lib/util/types/util.d.ts +16 -0
  660. package/src/lib/util/types/util.d.ts.map +1 -0
  661. package/src/lib/util/types/util.js +60 -0
  662. package/src/lib/util/types/util.js.map +1 -0
  663. package/src/lib/util/types/util.type.d.ts +67 -0
  664. package/src/lib/util/types/util.type.d.ts.map +1 -0
  665. package/src/lib/util/types/util.type.js +5 -0
  666. package/src/lib/util/types/util.type.js.map +1 -0
  667. package/src/lib/util/update-state.util.d.ts +10 -0
  668. package/src/lib/util/update-state.util.d.ts.map +1 -0
  669. package/src/lib/util/update-state.util.js +31 -0
  670. package/src/lib/util/update-state.util.js.map +1 -0
  671. package/src/lib/util/util.d.ts +19 -0
  672. package/src/lib/util/util.d.ts.map +1 -0
  673. package/src/lib/util/util.js +50 -0
  674. package/src/lib/util/util.js.map +1 -0
  675. package/src/lib/util/util.type.d.ts +107 -0
  676. package/src/lib/util/util.type.d.ts.map +1 -0
  677. package/src/lib/util/util.type.js +9 -0
  678. package/src/lib/util/util.type.js.map +1 -0
  679. package/src/lib/yieldable.d.ts +94 -0
  680. package/src/lib/yieldable.d.ts.map +1 -0
  681. package/src/lib/yieldable.js +109 -0
  682. package/src/lib/yieldable.js.map +1 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"craft-route-exceptions.d.ts","sourceRoot":"","sources":["../../../../../libs/core/src/lib/craft-route-exceptions.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,cAAc,EAEd,KAAK,MAAM,EACX,KAAK,IAAI,EACT,KAAK,cAAc,EACpB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,WAAW,EACX,KAAK,uBAAuB,EAC5B,KAAK,uBAAuB,EAC5B,KAAK,YAAY,EACjB,KAAK,kBAAkB,EACxB,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAC3E,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,aAAa,CAAC;AAC7D,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,uCAAuC,CAAC;AACnF,OAAO,KAAK,EACV,gBAAgB,EAChB,qBAAqB,EACtB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAKL,KAAK,gCAAgC,EACrC,KAAK,6BAA6B,EAClC,KAAK,2BAA2B,EAChC,KAAK,sBAAsB,EAC3B,KAAK,oBAAoB,EACzB,KAAK,sBAAsB,EAC3B,KAAK,4BAA4B,EAClC,MAAM,iBAAiB,CAAC;AAEzB;;;;;;;;;;;;;GAaG;AAMH,8DAA8D;AAC9D,MAAM,MAAM,iCAAiC,CAAC,aAAa,GAAG,MAAM,IAChE;IACE,QAAQ,CAAC,SAAS,EAAE,qBAAqB,CAAC;IAC1C,QAAQ,CAAC,aAAa,CAAC,EAAE,KAAK,CAAC;IAC/B,wEAAwE;IACxE,QAAQ,CAAC,aAAa,CAAC,EAAE,aAAa,CAAC;CACxC,GACD;IACE,QAAQ,CAAC,SAAS,CAAC,EAAE,KAAK,CAAC;IAC3B,QAAQ,CAAC,aAAa,EAAE,MAAM,OAAO,CACnC,qBAAqB,GAAG;QAAE,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG,gBAAgB,CAAA;KAAE,CACtE,CAAC;IACF,wEAAwE;IACxE,QAAQ,CAAC,aAAa,CAAC,EAAE,aAAa,CAAC;CACxC,CAAC;AAEN,MAAM,MAAM,4BAA4B,GAAG,iCAAiC,CAAC;AAE7E,sEAAsE;AACtE,MAAM,MAAM,0BAA0B,GAClC,qBAAqB,GACrB,CAAC,MAAM,OAAO,CAAC;IAAE,OAAO,EAAE,qBAAqB,CAAA;CAAE,CAAC,CAAC,CAAC;AAExD;;;;;;;;GAQG;AACH,MAAM,MAAM,qBAAqB,GAC7B;IAAE,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,YAAY,GAAG,MAAM,CAAA;CAAE,GACrE;IACE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;IACxB,QAAQ,CAAC,SAAS,EAAE,iCAAiC,CAAC;CACvD,GACD;IAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAA;CAAE,GAC3B;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GACzB;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC;AAE9B,iFAAiF;AACjF,MAAM,MAAM,eAAe,GAAG,OAAO,GAAG,QAAQ,CAAC;AACjD,KAAK,uBAAuB,CAAC,IAAI,SAAS,qBAAqB,CAAC,MAAM,CAAC,IACrE,OAAO,CAAC,qBAAqB,EAAE;IAAE,IAAI,EAAE,IAAI,CAAA;CAAE,CAAC,CAAC;AAEjD;;;;;GAKG;AACH,MAAM,MAAM,4BAA4B,CAAC,SAAS,SAAS,iBAAiB,IAC1E;IACE,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC;IAC9B,QAAQ,CAAC,OAAO,EAAE,SAAS,SAAS;QAAE,OAAO,EAAE,MAAM,OAAO,CAAA;KAAE,GAC1D,OAAO,GACP,OAAO,CAAC;IACZ,gFAAgF;IAChF,QAAQ,CAAC,KAAK,EAAE,eAAe,CAAC;IAChC,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;IAC7B,QAAQ,CAAC,aAAa,EAAE,WAAW,CAAC,eAAe,CAAC,CAAC;IACrD,QAAQ,CAAC,QAAQ,EAAE,WAAW,CAAC,UAAU,CAAC,CAAC;IAC3C,QAAQ,CAAC,aAAa,EAAE,WAAW,CAAC,eAAe,CAAC,CAAC;IACrD,UAAU,CAAC,KAAK,SAAS,uBAAuB,CAAC,kBAAkB,CAAC,EAClE,KAAK,EAAE,KAAK,GACX,SAAS,CACV,uBAAuB,EACvB,uBAAuB,CAAC,UAAU,CAAC,EACnC,OAAO,CACR,CAAC;IACF,WAAW,CACT,MAAM,EAAE,YAAY,GAAG,MAAM,GAC5B,uBAAuB,CAAC,UAAU,CAAC,CAAC;IACvC,eAAe,CACb,SAAS,EAAE,iCAAiC,GAC3C,uBAAuB,CAAC,QAAQ,CAAC,CAAC;IACrC,WAAW,IAAI,uBAAuB,CAAC,QAAQ,CAAC,CAAC;IACjD,IAAI,IAAI,uBAAuB,CAAC,MAAM,CAAC,CAAC;IACxC,IAAI,IAAI,uBAAuB,CAAC,MAAM,CAAC,CAAC;CACzC,CAAC;AAEJ;;;GAGG;AACH,OAAO,CAAC,MAAM,uBAAuB,EAAE,OAAO,MAAM,CAAC;AACrD,KAAK,0BAA0B,CAAC,SAAS,SAAS,iBAAiB,IAAI;IACrE,SAAS;CACV,SAAS,CAAC,KAAK,CAAC,GACb,iBAAiB,GACjB,SAAS,CAAC;AAEd,MAAM,MAAM,qBAAqB,CAC/B,SAAS,SAAS,iBAAiB,EACnC,MAAM,SAAS,SAAS,CAAC,GAAG,EAAE,qBAAqB,EAAE,OAAO,CAAC,GAAG,SAAS,CACvE,OAAO,EACP,qBAAqB,EACrB,OAAO,CACR,IACC,CAAC,CAAC,OAAO,EAAE,4BAA4B,CAAC,SAAS,CAAC,KAAK,MAAM,CAAC,GAAG;IACnE,QAAQ,CAAC,CAAC,uBAAuB,CAAC,EAAE,IAAI,CAAC;CAC1C,CAAC;AAEF,uFAAuF;AACvF,wBAAgB,qBAAqB,CACnC,SAAS,SAAS,iBAAiB,GAAG,iBAAiB,EACvD,MAAM,SAAS,SAAS,CAAC,GAAG,EAAE,qBAAqB,EAAE,OAAO,CAAC,GAAG,SAAS,CACvE,OAAO,EACP,qBAAqB,EACrB,OAAO,CACR,EAED,OAAO,EAAE,CACP,OAAO,EAAE,4BAA4B,CACnC,OAAO,CAAC,0BAA0B,CAAC,SAAS,CAAC,CAAC,CAC/C,KACE,MAAM,GACV,qBAAqB,CAAC,0BAA0B,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC,CAKtE;AAED,oFAAoF;AACpF,eAAO,MAAM,wBAAwB;mCACb,YAAY,GAAG,MAAM;;;;0BAMzC,KAAK,SAAS,uBAAuB,CAAC,kBAAkB,CAAC,SAElD,KAAK,KACX,SAAS,CACV,uBAAuB,EACvB,uBAAuB,CAAC,UAAU,CAAC,EACnC,OAAO,CACR;0CAKY,4BAA4B,KACtC,uBAAuB,CAAC,QAAQ,CAAC;gCACnB,uBAAuB,CAAC,QAAQ,CAAC;yBACxC,uBAAuB,CAAC,MAAM,CAAC;yBAC/B,uBAAuB,CAAC,MAAM,CAAC;CACjC,CAAC;AAMX,KAAK,mBAAmB,CAAC,SAAS,IAAI,SAAS,SAAS;IACtD,IAAI,EAAE,MAAM,IAAI,SAAS,MAAM,CAAC;CACjC,GACG,IAAI,GACJ,KAAK,CAAC;AAEV,KAAK,qBAAqB,CAAC,SAAS,EAAE,IAAI,SAAS,MAAM,IAAI,OAAO,CAClE,SAAS,EACT;IAAE,IAAI,EAAE,IAAI,CAAA;CAAE,CACf,CAAC;AAEF,qFAAqF;AACrF,KAAK,iBAAiB,CAAC,KAAK,IAAI,KAAK,SAAS,CAC5C,GAAG,IAAI,EAAE,GAAG,EAAE,KACX,SAAS,CAAC,MAAM,OAAO,EAAE,GAAG,EAAE,GAAG,CAAC,GACnC,OAAO,GACP,KAAK,CAAC;AAEV,sEAAsE;AACtE,KAAK,oBAAoB,CAAC,KAAK,IAAI,yBAAyB,CAC1D,iBAAiB,CAAC,KAAK,CAAC,CACzB,CAAC;AAEF,KAAK,uBAAuB,CAAC,IAAI,SAAS,MAAM,IAAI,cAAc,CAAC;IACjE,IAAI,EAAE,IAAI,CAAC;IACX,KAAK,EAAE,SAAS,CAAC;CAClB,CAAC,CAAC;AAEH,KAAK,wBAAwB,CAAC,eAAe,IAAI;IAC/C,qBAAqB,CAAC,eAAe,CAAC;CACvC,SAAS,CAAC,KAAK,CAAC,GACb,KAAK,GACL,qBAAqB,CAAC,eAAe,CAAC,SAAS,MAAM,KAAK,SAAS,MAAM,GACvE,uBAAuB,CAAC,KAAK,CAAC,GAC9B,KAAK,CAAC;AAEZ;;;;GAIG;AACH,MAAM,MAAM,mBAAmB,CAAC,eAAe,IAC3C,wBAAwB,CAAC,eAAe,CAAC,GACzC,CAAC,eAAe,SAAS;IAAE,WAAW,EAAE,MAAM,KAAK,CAAA;CAAE,GACjD,oBAAoB,CAAC,KAAK,CAAC,GAC3B,KAAK,CAAC,GACV,CAAC,eAAe,SAAS;IAAE,QAAQ,EAAE,MAAM,KAAK,CAAA;CAAE,GAC9C,oBAAoB,CAAC,KAAK,CAAC,GAC3B,KAAK,CAAC,GACV,CAAC,eAAe,SAAS;IAAE,OAAO,EAAE,MAAM,KAAK,CAAA;CAAE,GAC7C,oBAAoB,CAAC,KAAK,CAAC,GAC3B,KAAK,CAAC,CAAC;AAEf;;;;GAIG;AACH,MAAM,MAAM,yBAAyB,CAAC,SAAS,SAAS,iBAAiB,IAAI;KAC1E,IAAI,IAAI,mBAAmB,CAAC,SAAS,CAAC,GAAG,qBAAqB,CAC7D,OAAO,CAAC,qBAAqB,CAAC,SAAS,EAAE,IAAI,CAAC,EAAE,iBAAiB,CAAC,CACnE;CACF,CAAC;AAEF;;;;GAIG;AACH,MAAM,MAAM,wBAAwB,CAClC,QAAQ,EACR,SAAS,SAAS,iBAAiB,IACjC;KACD,IAAI,IAAI,MAAM,QAAQ,IAAI,IAAI,SAAS,mBAAmB,CAAC,SAAS,CAAC,GAClE,KAAK,GACL,IAAI,GAAG,KAAK;CACjB,CAAC;AAEF;;;;;GAKG;AACH,MAAM,MAAM,sBAAsB,CAAC,eAAe,IAAI;IACpD,mBAAmB,CAAC,eAAe,CAAC;CACrC,SAAS,CAAC,KAAK,CAAC,GACb,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,GACpB,yBAAyB,CACvB,OAAO,CAAC,mBAAmB,CAAC,eAAe,CAAC,EAAE,iBAAiB,CAAC,CACjE,CAAC;AAcN,KAAK,mBAAmB,CAAC,eAAe,IAAI,mBAAmB,CAC7D,OAAO,CAAC,mBAAmB,CAAC,eAAe,CAAC,EAAE,iBAAiB,CAAC,CACjE,CAAC;AAEF,KAAK,iBAAiB,CAAC,eAAe,IAAI,eAAe,SAAS;IAChE,gBAAgB,EAAE,MAAM,QAAQ,CAAC;CAClC,GACG,OAAO,CAAC,MAAM,QAAQ,EAAE,MAAM,CAAC,GAC/B,KAAK,CAAC;AAEV,KAAK,WAAW,CAAC,eAAe,IAAI,eAAe,SAAS;IAC1D,IAAI,EAAE,MAAM,IAAI,SAAS,MAAM,CAAC;CACjC,GACG,IAAI,GACJ,MAAM,CAAC;AAIX,KAAK,oBAAoB,CAAC,eAAe,IAAI;IAC3C,mBAAmB,CAAC,eAAe,CAAC;CACrC,SAAS,CAAC,KAAK,CAAC,GACb,KAAK,GACL;IACI,OAAO,CACL,mBAAmB,CAAC,eAAe,CAAC,EACpC,iBAAiB,CAAC,eAAe,CAAC,CACnC;CACF,SAAS,CAAC,KAAK,CAAC,GACjB;IACE,OAAO,CACL,iBAAiB,CAAC,eAAe,CAAC,EAClC,mBAAmB,CAAC,eAAe,CAAC,CACrC;CACF,SAAS,CAAC,KAAK,CAAC,GACf,KAAK,GACL;IACE,KAAK,EAAE,WAAW,CAAC,eAAe,CAAC,CAAC;IACpC,kBAAkB,EAAE,OAAO,CACzB,iBAAiB,CAAC,eAAe,CAAC,EAClC,mBAAmB,CAAC,eAAe,CAAC,CACrC,CAAC;CACH,GACH;IACE,KAAK,EAAE,WAAW,CAAC,eAAe,CAAC,CAAC;IACpC,eAAe,EAAE,OAAO,CACtB,mBAAmB,CAAC,eAAe,CAAC,EACpC,iBAAiB,CAAC,eAAe,CAAC,CACnC,CAAC;CACH,CAAC;AAER,KAAK,4BAA4B,CAAC,MAAM,IAAI,MAAM,SAAS,SAAS,OAAO,EAAE,GACzE;KAAG,KAAK,IAAI,MAAM,MAAM,GAAG,oBAAoB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;CAAE,CAAC,MAAM,CAAC,GACxE,KAAK,CAAC;AAEV;;;;GAIG;AACH,MAAM,MAAM,6BAA6B,CAAC,SAAS,IAAI,SAAS,SAAS;IACvE,QAAQ,CAAC,OAAO,EAAE,MAAM,MAAM,CAAC;CAChC,GACG,CAAC,OAAO,CAAC,4BAA4B,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,GACpE,OAAO,GACP;IACE,yCAAyC,EAAE,OAAO,CAChD,4BAA4B,CAAC,MAAM,CAAC,EACpC,KAAK,CACN,CAAC;CACH,GACH,OAAO,CAAC;AAEZ;;;;;;;;;;;GAWG;AACH,wBAAgB,+BAA+B,CAAC,SAAS,EACvD,MAAM,EAAE,SAAS,GAAG,6BAA6B,CAAC,SAAS,CAAC,GAC3D,SAAS,CAEX;AAMD;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,WAAW,4BAA4B;CAAG;AAEhD;;;;;GAKG;AACH,MAAM,MAAM,uBAAuB,CACjC,SAAS,EACT,IAAI,SAAS,MAAM,EACnB,IAAI,SAAS,MAAM,IACjB,SAAS,SAAS;IAAE,QAAQ,CAAC,OAAO,EAAE,MAAM,MAAM,CAAA;CAAE,GACpD,MAAM,SAAS,SAAS,OAAO,EAAE,GAC/B,OAAO,CACL,mBAAmB,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE;IAAE,IAAI,EAAE,IAAI,CAAA;CAAE,CAAC,CAAC,EAC5D;IAAE,IAAI,EAAE,IAAI,CAAA;CAAE,CACf,GACD,KAAK,GACP,KAAK,CAAC;AAEV;;;GAGG;AACH,MAAM,MAAM,2BAA2B,GAAG;KACvC,IAAI,IAAI,MAAM,4BAA4B,GAAG,4BAA4B,CAAC,IAAI,CAAC,CAAC,MAAM,4BAA4B,CAAC,IAAI,CAAC,CAAC;CAC3H,CAAC,MAAM,4BAA4B,CAAC,CAAC;AAEtC;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,0DAK7B,CAAC;AAEH;;;;;;;;;GASG;AACH,wBAAgB,sBAAsB,IAAI,MAAM,CAAC,2BAA2B,CAAC,CAI5E;AAkBD;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAA2C,CAAC"}
@@ -0,0 +1,86 @@
1
+ import { inject, InjectionToken, signal, } from './host/craft-compat';
2
+ import { CraftRouter, } from './craft-router';
3
+ import { ɵtoCraftService as toCraftService, } from './craft-service';
4
+ /** Brands a generator as a route exception handler while preserving its exact type. */
5
+ export function craftExceptionHandler(handler) {
6
+ return handler;
7
+ }
8
+ /** The pure outcome constructors, merged into the handler context by the driver. */
9
+ export const craftExceptionOutcomeApi = {
10
+ redirectUrl: (target) => ({
11
+ kind: 'redirect',
12
+ target,
13
+ }),
14
+ redirectTo: function* (input) {
15
+ const target = yield* CraftRouter.createUrlTree(input);
16
+ return { kind: 'redirect', target };
17
+ },
18
+ renderComponent: (component) => ({ kind: 'render', component }),
19
+ globalError: () => ({ kind: 'global' }),
20
+ stay: () => ({ kind: 'stay' }),
21
+ noop: () => ({ kind: 'noop' }),
22
+ };
23
+ /**
24
+ * Asserts (at compile time) that every route's `handleExceptions` covers exactly
25
+ * the exception codes reachable from its component and its
26
+ * `canActivate` / `canMatch` / `resolve`.
27
+ * A missing or extra code makes `routes` un-assignable, surfacing the offending
28
+ * route + codes in the error.
29
+ *
30
+ * ```ts
31
+ * export const { demoRoutes } = craftRoutes('demo', [ … ]);
32
+ * assertExhaustiveRouteExceptions(demoRoutes);
33
+ * ```
34
+ */
35
+ export function assertExhaustiveRouteExceptions(routes) {
36
+ return routes;
37
+ }
38
+ /**
39
+ * The signal the outlet fills with the active global exception just before it
40
+ * renders the global error component. Runtime-typed loosely; the typed view is
41
+ * exposed by {@link injectCraftGlobalError}.
42
+ */
43
+ export const CRAFT_GLOBAL_ERROR = new InjectionToken('CRAFT_GLOBAL_ERROR', {
44
+ providedIn: 'root',
45
+ factory: () => signal(null),
46
+ });
47
+ /**
48
+ * Reads the exception that routed to the global error component, typed as the
49
+ * exhaustive union of everything the {@link CraftGlobalExceptionRegistry}
50
+ * records. Discriminate on `error().code`.
51
+ *
52
+ * ```ts
53
+ * readonly error = injectCraftGlobalError();
54
+ * // switch (this.error().code) { case 'USER_DISABLED': … }
55
+ * ```
56
+ */
57
+ export function injectCraftGlobalError() {
58
+ return inject(CRAFT_GLOBAL_ERROR);
59
+ }
60
+ /**
61
+ * Adapts the same {@link CRAFT_GLOBAL_ERROR} token as a craft dependency named
62
+ * `CraftGlobalError`, so the global exception can be read from a generator body
63
+ * the way a `toCraftService` dependency is — see {@link CraftGlobalError}.
64
+ * Typed as the exhaustive {@link CraftGlobalHandledException} view, matching
65
+ * {@link injectCraftGlobalError}.
66
+ */
67
+ const craftGlobalErrorService = toCraftService({
68
+ name: 'CraftGlobalError',
69
+ providedIn: 'global',
70
+ inject: () => inject(CRAFT_GLOBAL_ERROR),
71
+ });
72
+ /**
73
+ * Generator counterpart to {@link injectCraftGlobalError}. Reads the exception
74
+ * routed to the global error component from inside a `function*` body:
75
+ *
76
+ * ```ts
77
+ * const error = yield* CraftGlobalError();
78
+ * // switch (error().code) { case 'USER_DISABLED': … }
79
+ * ```
80
+ *
81
+ * Same typed view as {@link injectCraftGlobalError} — the exhaustive union
82
+ * recorded in {@link CraftGlobalExceptionRegistry} — and it tracks as a
83
+ * `CraftGlobalError` dependency, exactly like the property form.
84
+ */
85
+ export const CraftGlobalError = craftGlobalErrorService.CraftGlobalError;
86
+ //# sourceMappingURL=craft-route-exceptions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"craft-route-exceptions.js","sourceRoot":"","sources":["../../../../../libs/core/src/lib/craft-route-exceptions.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,MAAM,EACN,cAAc,EACd,MAAM,GAIP,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,WAAW,GAKZ,MAAM,gBAAgB,CAAC;AAQxB,OAAO,EACL,eAAe,IAAI,cAAc,GAWlC,MAAM,iBAAiB,CAAC;AA+HzB,uFAAuF;AACvF,MAAM,UAAU,qBAAqB,CAQnC,OAIW;IAEX,OAAO,OAGN,CAAC;AACJ,CAAC;AAED,oFAAoF;AACpF,MAAM,CAAC,MAAM,wBAAwB,GAAG;IACtC,WAAW,EAAE,CAAC,MAA6B,EAAE,EAAE,CAC7C,CAAC;QACC,IAAI,EAAE,UAAU;QAChB,MAAM;KACP,CAAU;IACb,UAAU,EAAE,QAAQ,CAAC,EAGnB,KAAY;QAMZ,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,WAAW,CAAC,aAAa,CAAC,KAAc,CAAC,CAAC;QAChE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC;IACtC,CAAC;IACD,eAAe,EAAE,CACf,SAAuC,EACJ,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC;IACvE,WAAW,EAAE,GAAsC,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;IAC1E,IAAI,EAAE,GAAoC,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;IAC/D,IAAI,EAAE,GAAoC,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;CACvD,CAAC;AAsLX;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,+BAA+B,CAC7C,MAA4D;IAE5D,OAAO,MAAM,CAAC;AAChB,CAAC;AAoDD;;;;GAIG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,IAAI,cAAc,CAElD,oBAAoB,EAAE;IACtB,UAAU,EAAE,MAAM;IAClB,OAAO,EAAE,GAAG,EAAE,CAAC,MAAM,CAA2B,IAAI,CAAC;CACtD,CAAC,CAAC;AAEH;;;;;;;;;GASG;AACH,MAAM,UAAU,sBAAsB;IACpC,OAAO,MAAM,CACX,kBAAkB,CAC+B,CAAC;AACtD,CAAC;AAED;;;;;;GAMG;AACH,MAAM,uBAAuB,GAAG,cAAc,CAAC;IAC7C,IAAI,EAAE,kBAAkB;IACxB,UAAU,EAAE,QAAQ;IACpB,MAAM,EAAE,GAAwC,EAAE,CAChD,MAAM,CACJ,kBAAkB,CAC+B;CACtD,CAAC,CAAC;AAEH;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,uBAAuB,CAAC,gBAAgB,CAAC","sourcesContent":["import {\n inject,\n InjectionToken,\n signal,\n type Signal,\n type Type,\n type WritableSignal,\n} from './host/craft-compat';\nimport {\n CraftRouter,\n type CraftRouterUrlTreeInput,\n type CraftRouterYieldRequest,\n type CraftUrlTree,\n type NavigableRoutePath,\n} from './craft-router';\nimport type { AnyCraftException, CraftException } from './craft-exception';\nimport type { ExtractCraftGenExceptions } from './craft-gen';\nimport type { ComponentExceptionsOf } from './branded-component/branded-component';\nimport type {\n CraftRouteTarget,\n CraftRouteTargetInput,\n} from './craft-route-target';\nimport {\n ɵtoCraftService as toCraftService,\n // These marker symbols are imported type-only so the generated\n // `CraftGlobalError` helper's inferred type is nameable in this\n // module's `.d.ts` (otherwise TS4023 — same recipe as `craft-router.ts`).\n type SERVICE_DEPENDENCY_ACCESS_MARKER,\n type SERVICE_EXPOSURE_TOKEN_MARKER,\n type SERVICE_HELPER_DEPENDENCIES,\n type SERVICE_META_DATA_TYPE,\n type SERVICE_RUNTIME_META,\n type SERVICE_YIELD_METADATA,\n type SERVICE_YIELD_REQUEST_MARKER,\n} from './craft-service';\n\n/**\n * Centralised, typed exception handling for craft routes.\n *\n * A craft route keeps `canActivate` / `canMatch` / `resolve` as its writing API\n * — each may throw a `craftException`. Instead of an inline resolver map per\n * guard, a single **`handleExceptions`** map on the route resolves the **union**\n * of every code reachable from those three steps, exhaustively (a missing or\n * extra code is a compile error). Each handler picks an {@link CraftExceptionOutcome}.\n *\n * Outcomes delegated to the application-wide error component (`globalError()`)\n * are mirrored into the {@link CraftGlobalExceptionRegistry} by an ESLint\n * autofix, so the global error component can read **all** of its possible\n * exceptions, typed, via {@link injectCraftGlobalError}.\n */\n\n// ---------------------------------------------------------------------------\n// Outcomes (issues) a handler can choose\n// ---------------------------------------------------------------------------\n\n/** A DI-checked component rendered on an exception branch. */\nexport type CraftExceptionComponentDescriptor<ComponentDeps = object> =\n | {\n readonly component: CraftRouteTargetInput;\n readonly loadComponent?: never;\n /** @deprecated Functional components carry this metadata themselves. */\n readonly componentDeps?: ComponentDeps;\n }\n | {\n readonly component?: never;\n readonly loadComponent: () => Promise<\n CraftRouteTargetInput | { default: Type<unknown> | CraftRouteTarget }\n >;\n /** @deprecated Functional components carry this metadata themselves. */\n readonly componentDeps?: ComponentDeps;\n };\n\nexport type CraftExceptionComponentInput = CraftExceptionComponentDescriptor;\n\n/** Existing pending-component input; pending DI has its own check. */\nexport type CraftPendingComponentInput =\n | CraftRouteTargetInput\n | (() => Promise<{ default: CraftRouteTargetInput }>);\n\n/**\n * What a route exception handler resolves an exception to:\n *\n * - `redirect` — navigate to a typed internal route or an explicit opaque URL.\n * - `render` — render a dedicated component instead of the target.\n * - `global` — render the application-wide error component (see the registry).\n * - `stay` — cancel the navigation; stay on the triggering page (restore URL).\n * - `noop` — render the target anyway, with resolve data left `undefined`.\n */\nexport type CraftExceptionOutcome =\n | { readonly kind: 'redirect'; readonly target: CraftUrlTree | string }\n | {\n readonly kind: 'render';\n readonly component: CraftExceptionComponentDescriptor;\n }\n | { readonly kind: 'global' }\n | { readonly kind: 'stay' }\n | { readonly kind: 'noop' };\n\n/** Distinguishes the initial route entry from a reactive guard re-evaluation. */\nexport type CraftRoutePhase = 'enter' | 'active';\ntype CraftExceptionOutcomeOf<Kind extends CraftExceptionOutcome['kind']> =\n Extract<CraftExceptionOutcome, { kind: Kind }>;\n\n/**\n * The argument handed to each `handleExceptions` handler: the typed exception\n * being handled, the navigation `phase`, the Angular-native redirect helpers,\n * and the outcome constructors (`redirectTo`, `redirectUrl`, `renderComponent`, `globalError`,\n * `stay`, `noop`).\n */\nexport type CraftExceptionHandlerContext<Exception extends AnyCraftException> =\n {\n readonly exception: Exception;\n readonly payload: Exception extends { payload: infer Payload }\n ? Payload\n : unknown;\n /** `'enter'` for the initial activation, `'active'` for a reactive re-check. */\n readonly phase: CraftRoutePhase;\n readonly router: CraftRouter;\n readonly createUrlTree: CraftRouter['createUrlTree'];\n readonly navigate: CraftRouter['navigate'];\n readonly navigateByUrl: CraftRouter['navigateByUrl'];\n redirectTo<Input extends CraftRouterUrlTreeInput<NavigableRoutePath>>(\n input: Input,\n ): Generator<\n CraftRouterYieldRequest,\n CraftExceptionOutcomeOf<'redirect'>,\n unknown\n >;\n redirectUrl(\n target: CraftUrlTree | string,\n ): CraftExceptionOutcomeOf<'redirect'>;\n renderComponent(\n component: CraftExceptionComponentDescriptor,\n ): CraftExceptionOutcomeOf<'render'>;\n globalError(): CraftExceptionOutcomeOf<'global'>;\n stay(): CraftExceptionOutcomeOf<'stay'>;\n noop(): CraftExceptionOutcomeOf<'noop'>;\n };\n\n/**\n * A single branded generator handler. Its service yields are preserved exactly\n * and folded into the route's DI and HTTP dependency maps.\n */\ndeclare const CRAFT_EXCEPTION_HANDLER: unique symbol;\ntype NormalizedHandlerException<Exception extends AnyCraftException> = [\n Exception,\n] extends [never]\n ? AnyCraftException\n : Exception;\n\nexport type CraftExceptionHandler<\n Exception extends AnyCraftException,\n Result extends Generator<any, CraftExceptionOutcome, unknown> = Generator<\n unknown,\n CraftExceptionOutcome,\n unknown\n >,\n> = ((context: CraftExceptionHandlerContext<Exception>) => Result) & {\n readonly [CRAFT_EXCEPTION_HANDLER]: true;\n};\n\n/** Brands a generator as a route exception handler while preserving its exact type. */\nexport function craftExceptionHandler<\n Exception extends AnyCraftException = AnyCraftException,\n Result extends Generator<any, CraftExceptionOutcome, unknown> = Generator<\n unknown,\n CraftExceptionOutcome,\n unknown\n >,\n>(\n handler: (\n context: CraftExceptionHandlerContext<\n NoInfer<NormalizedHandlerException<Exception>>\n >,\n ) => Result,\n): CraftExceptionHandler<NormalizedHandlerException<Exception>, Result> {\n return handler as CraftExceptionHandler<\n NormalizedHandlerException<Exception>,\n Result\n >;\n}\n\n/** The pure outcome constructors, merged into the handler context by the driver. */\nexport const craftExceptionOutcomeApi = {\n redirectUrl: (target: CraftUrlTree | string) =>\n ({\n kind: 'redirect',\n target,\n }) as const,\n redirectTo: function* <\n Input extends CraftRouterUrlTreeInput<NavigableRoutePath>,\n >(\n input: Input,\n ): Generator<\n CraftRouterYieldRequest,\n CraftExceptionOutcomeOf<'redirect'>,\n unknown\n > {\n const target = yield* CraftRouter.createUrlTree(input as never);\n return { kind: 'redirect', target };\n },\n renderComponent: (\n component: CraftExceptionComponentInput,\n ): CraftExceptionOutcomeOf<'render'> => ({ kind: 'render', component }),\n globalError: (): CraftExceptionOutcomeOf<'global'> => ({ kind: 'global' }),\n stay: (): CraftExceptionOutcomeOf<'stay'> => ({ kind: 'stay' }),\n noop: (): CraftExceptionOutcomeOf<'noop'> => ({ kind: 'noop' }),\n} as const;\n\n// ---------------------------------------------------------------------------\n// Exception-union extraction + exhaustive handler map\n// ---------------------------------------------------------------------------\n\ntype CraftExceptionCodes<Exception> = Exception extends {\n _tag: infer Code extends string;\n}\n ? Code\n : never;\n\ntype CraftExceptionForCode<Exception, Code extends string> = Extract<\n Exception,\n { _tag: Code }\n>;\n\n/** `Yielded` of a generator-returning route field (canActivate/canMatch/resolve). */\ntype RouteFieldYielded<Field> = Field extends (\n ...args: any[]\n) => Generator<infer Yielded, any, any>\n ? Yielded\n : never;\n\n/** The `craftException`s a single guard/resolve field may produce. */\ntype RouteFieldExceptions<Field> = ExtractCraftGenExceptions<\n RouteFieldYielded<Field>\n>;\n\ntype ComponentRouteException<Code extends string> = CraftException<{\n _tag: Code;\n scope: undefined;\n}>;\n\ntype RouteComponentExceptions<RouteDefinition> = [\n ComponentExceptionsOf<RouteDefinition>,\n] extends [never]\n ? never\n : ComponentExceptionsOf<RouteDefinition> extends infer Codes extends string\n ? ComponentRouteException<Codes>\n : never;\n\n/**\n * The full union of `craftException`s reachable from a route's component,\n * `canActivate ∪ canMatch ∪ resolve`. `handleExceptions` must resolve exactly\n * these codes.\n */\nexport type RouteExceptionUnion<RouteDefinition> =\n | RouteComponentExceptions<RouteDefinition>\n | (RouteDefinition extends { canActivate: infer Field }\n ? RouteFieldExceptions<Field>\n : never)\n | (RouteDefinition extends { canMatch: infer Field }\n ? RouteFieldExceptions<Field>\n : never)\n | (RouteDefinition extends { resolve: infer Field }\n ? RouteFieldExceptions<Field>\n : never);\n\n/**\n * The exhaustive handler map for an exception union: one handler per reachable\n * code. A missing key is a compile error; pair with {@link NoExtraExceptionHandlers}\n * at the definition site to also reject codes that cannot occur.\n */\nexport type HandledExceptionsForUnion<Exception extends AnyCraftException> = {\n [Code in CraftExceptionCodes<Exception>]: CraftExceptionHandler<\n Extract<CraftExceptionForCode<Exception, Code>, AnyCraftException>\n >;\n};\n\n/**\n * Forces every key of the supplied `Handlers` literal that is **not** a reachable\n * code to `never`, so an extra handler is a compile error. Intersect with\n * {@link HandledExceptionsForUnion} at the field's definition site.\n */\nexport type NoExtraExceptionHandlers<\n Handlers,\n Exception extends AnyCraftException,\n> = {\n [Code in keyof Handlers as Code extends CraftExceptionCodes<Exception>\n ? never\n : Code]: never;\n};\n\n/**\n * The `handleExceptions` field type for a route definition: exhaustive over the\n * union of its guard/resolve exception codes. `[Exception] extends [never]`\n * short-circuits to an empty object so a route without typed exceptions needs no\n * `handleExceptions`.\n */\nexport type RouteHandledExceptions<RouteDefinition> = [\n RouteExceptionUnion<RouteDefinition>,\n] extends [never]\n ? Record<never, never>\n : HandledExceptionsForUnion<\n Extract<RouteExceptionUnion<RouteDefinition>, AnyCraftException>\n >;\n\n// ---------------------------------------------------------------------------\n// Post-inference exhaustiveness check\n//\n// `handleExceptions` cannot be validated by a self-referential field constraint\n// at `craftRoute(path, def)` — the reachable-code union is derived from the *same*\n// `def` being inferred, which TypeScript can only resolve as `never` (the\n// contextual type is needed before inference completes). Instead the field is\n// typed loosely (so handlers stay usable) and exhaustiveness is asserted once the\n// whole collection is inferred, mirroring this codebase's `ValidateCascadeRoutesFile`\n// DI check: `assertExhaustiveRouteExceptions(demoRoutes)`.\n// ---------------------------------------------------------------------------\n\ntype RouteReachableCodes<RouteDefinition> = CraftExceptionCodes<\n Extract<RouteExceptionUnion<RouteDefinition>, AnyCraftException>\n>;\n\ntype RouteHandledCodes<RouteDefinition> = RouteDefinition extends {\n handleExceptions: infer Handlers;\n}\n ? Extract<keyof Handlers, string>\n : never;\n\ntype RoutePathOf<RouteDefinition> = RouteDefinition extends {\n path: infer Path extends string;\n}\n ? Path\n : string;\n\n// `never` when a route's handlers cover exactly its reachable codes; otherwise an\n// object describing the missing or unexpected codes (surfaced in the type error).\ntype RouteExceptionsError<RouteDefinition> = [\n RouteReachableCodes<RouteDefinition>,\n] extends [never]\n ? never\n : [\n Exclude<\n RouteReachableCodes<RouteDefinition>,\n RouteHandledCodes<RouteDefinition>\n >,\n ] extends [never]\n ? [\n Exclude<\n RouteHandledCodes<RouteDefinition>,\n RouteReachableCodes<RouteDefinition>\n >,\n ] extends [never]\n ? never\n : {\n route: RoutePathOf<RouteDefinition>;\n unexpectedHandlers: Exclude<\n RouteHandledCodes<RouteDefinition>,\n RouteReachableCodes<RouteDefinition>\n >;\n }\n : {\n route: RoutePathOf<RouteDefinition>;\n missingHandlers: Exclude<\n RouteReachableCodes<RouteDefinition>,\n RouteHandledCodes<RouteDefinition>\n >;\n };\n\ntype CollectRouteExceptionsErrors<Routes> = Routes extends readonly unknown[]\n ? { [Index in keyof Routes]: RouteExceptionsError<Routes[Index]> }[number]\n : never;\n\n/**\n * `unknown` when every route in the collection handles exactly its reachable\n * exception codes; otherwise an error object listing the offending routes. Used\n * by {@link assertExhaustiveRouteExceptions}.\n */\nexport type AssertRoutesExceptionsHandled<RoutesApp> = RoutesApp extends {\n readonly _routes: infer Routes;\n}\n ? [Exclude<CollectRouteExceptionsErrors<Routes>, never>] extends [never]\n ? unknown\n : {\n ERROR_unhandled_or_extra_route_exceptions: Exclude<\n CollectRouteExceptionsErrors<Routes>,\n never\n >;\n }\n : unknown;\n\n/**\n * Asserts (at compile time) that every route's `handleExceptions` covers exactly\n * the exception codes reachable from its component and its\n * `canActivate` / `canMatch` / `resolve`.\n * A missing or extra code makes `routes` un-assignable, surfacing the offending\n * route + codes in the error.\n *\n * ```ts\n * export const { demoRoutes } = craftRoutes('demo', [ … ]);\n * assertExhaustiveRouteExceptions(demoRoutes);\n * ```\n */\nexport function assertExhaustiveRouteExceptions<RoutesApp>(\n routes: RoutesApp & AssertRoutesExceptionsHandled<RoutesApp>,\n): RoutesApp {\n return routes;\n}\n\n// ---------------------------------------------------------------------------\n// Global exception registry + global error component access\n// ---------------------------------------------------------------------------\n\n/**\n * Mirrors the codes a route delegates to the global error component (handlers\n * that call `globalError()`), keyed by route path:\n *\n * ```ts\n * declare module '@craft-ts/core' {\n * interface CraftGlobalExceptionRegistry {\n * 'user/:userId': {\n * USER_DISABLED: CraftRouteExceptionType<typeof demoRoutes, 'user/:userId', 'USER_DISABLED'>;\n * };\n * }\n * }\n * ```\n *\n * Maintained automatically by the `global-exception-registry-match` ESLint\n * autofix — do not edit by hand.\n */\nexport interface CraftGlobalExceptionRegistry {}\n\n/**\n * The typed exception object for a `code` on a route `Path` of a `craftRoutes`\n * collection. Resolves through the collection's phantom `_routes`, so the ESLint\n * autofix can write `CraftRouteExceptionType<typeof demoRoutes, '<path>', '<code>'>`\n * from literals alone (no type checker needed).\n */\nexport type CraftRouteExceptionType<\n RoutesApp,\n Path extends string,\n Code extends string,\n> = RoutesApp extends { readonly _routes: infer Routes }\n ? Routes extends readonly unknown[]\n ? Extract<\n RouteExceptionUnion<Extract<Routes[number], { path: Path }>>,\n { _tag: Code }\n >\n : never\n : never;\n\n/**\n * The union of every exception delegated to the global error component, across\n * all registered routes and codes. `never` until the registry is augmented.\n */\nexport type CraftGlobalHandledException = {\n [Path in keyof CraftGlobalExceptionRegistry]: CraftGlobalExceptionRegistry[Path][keyof CraftGlobalExceptionRegistry[Path]];\n}[keyof CraftGlobalExceptionRegistry];\n\n/**\n * The signal the outlet fills with the active global exception just before it\n * renders the global error component. Runtime-typed loosely; the typed view is\n * exposed by {@link injectCraftGlobalError}.\n */\nexport const CRAFT_GLOBAL_ERROR = new InjectionToken<\n WritableSignal<AnyCraftException | null>\n>('CRAFT_GLOBAL_ERROR', {\n providedIn: 'root',\n factory: () => signal<AnyCraftException | null>(null),\n});\n\n/**\n * Reads the exception that routed to the global error component, typed as the\n * exhaustive union of everything the {@link CraftGlobalExceptionRegistry}\n * records. Discriminate on `error().code`.\n *\n * ```ts\n * readonly error = injectCraftGlobalError();\n * // switch (this.error().code) { case 'USER_DISABLED': … }\n * ```\n */\nexport function injectCraftGlobalError(): Signal<CraftGlobalHandledException> {\n return inject(\n CRAFT_GLOBAL_ERROR,\n ) as unknown as Signal<CraftGlobalHandledException>;\n}\n\n/**\n * Adapts the same {@link CRAFT_GLOBAL_ERROR} token as a craft dependency named\n * `CraftGlobalError`, so the global exception can be read from a generator body\n * the way a `toCraftService` dependency is — see {@link CraftGlobalError}.\n * Typed as the exhaustive {@link CraftGlobalHandledException} view, matching\n * {@link injectCraftGlobalError}.\n */\nconst craftGlobalErrorService = toCraftService({\n name: 'CraftGlobalError',\n providedIn: 'global',\n inject: (): Signal<CraftGlobalHandledException> =>\n inject(\n CRAFT_GLOBAL_ERROR,\n ) as unknown as Signal<CraftGlobalHandledException>,\n});\n\n/**\n * Generator counterpart to {@link injectCraftGlobalError}. Reads the exception\n * routed to the global error component from inside a `function*` body:\n *\n * ```ts\n * const error = yield* CraftGlobalError();\n * // switch (error().code) { case 'USER_DISABLED': … }\n * ```\n *\n * Same typed view as {@link injectCraftGlobalError} — the exhaustive union\n * recorded in {@link CraftGlobalExceptionRegistry} — and it tracks as a\n * `CraftGlobalError` dependency, exactly like the property form.\n */\nexport const CraftGlobalError = craftGlobalErrorService.CraftGlobalError;\n"]}