@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,389 @@
1
+ import { isCraftSignal } from './host/craft-signal';
2
+ import { craftToken } from './host/craft-injector';
3
+ function isCallableSignal(value) {
4
+ if (typeof value !== 'function') {
5
+ return false;
6
+ }
7
+ const symbols = Object.getOwnPropertySymbols(value);
8
+ return (symbols.some((symbol) => symbol.description === 'SIGNAL') ||
9
+ 'set' in value ||
10
+ 'update' in value);
11
+ }
12
+ /** Runtime/type brand carried by named reactive values exposed to templates. */
13
+ export const YIELDABLE_VALUE = Symbol('craft-yieldable-value');
14
+ /** Internal marker used by the synchronous Craft generator driver. */
15
+ export const REACTIVE_READ_REQUEST = Symbol('craft-reactive-read-request');
16
+ /** Internal escape hatch used by Craft itself to retain the raw host signal. */
17
+ export const RAW_REACTIVE_VALUE = Symbol('craft-raw-reactive-value');
18
+ const RAW_REACTIVE_ACTION = Symbol('craft-raw-reactive-action');
19
+ /** Type/runtime marker retaining the reader's resolved value type. */
20
+ export const REACTIVE_VALUE_TYPE = Symbol('craft-reactive-value-type');
21
+ /** Type-only carrier identifying the root reader and projected path. */
22
+ export const YIELDABLE_DEPENDENCY = Symbol('craft-yieldable-dependency');
23
+ /** Runtime/type marker for an explicitly adapted deep-yieldable reader. */
24
+ export const DEEP_YIELDABLE = Symbol('craft-deep-yieldable');
25
+ /** Type-only carrier propagated by computed readers. */
26
+ export const REACTIVE_DEPENDENCIES = Symbol('craft-reactive-dependencies');
27
+ /** Marker carried by the opt-in primitive insertion. */
28
+ export const DEEP_YIELDABLE_INSERTION = Symbol('craft-deep-yieldable-insertion');
29
+ export function insertDeepYieldable() {
30
+ const insertion = (() => ({}));
31
+ Object.defineProperty(insertion, DEEP_YIELDABLE_INSERTION, {
32
+ value: true,
33
+ enumerable: false,
34
+ });
35
+ return insertion;
36
+ }
37
+ export function hasDeepYieldableInsertion(insertions) {
38
+ return insertions.some((insertion) => typeof insertion === 'function' && DEEP_YIELDABLE_INSERTION in insertion);
39
+ }
40
+ let activeReactiveReader;
41
+ export function ɵactiveReactiveReader() {
42
+ return activeReactiveReader;
43
+ }
44
+ export function ɵwithActiveReactiveReader(identity, read) {
45
+ const previous = activeReactiveReader;
46
+ activeReactiveReader = identity;
47
+ try {
48
+ return read();
49
+ }
50
+ finally {
51
+ activeReactiveReader = previous;
52
+ }
53
+ }
54
+ /** Observability hook notified whenever a Craft generator resolves a reactive read. */
55
+ export const REACTIVE_READ_OBSERVERS = Object.assign(craftToken('REACTIVE_READ_OBSERVERS'), {
56
+ ɵfactory: () => [],
57
+ });
58
+ export function provideReactiveReadObserver(observer) {
59
+ return { provide: REACTIVE_READ_OBSERVERS, useValue: observer, multi: true };
60
+ }
61
+ export function isReactiveReadRequest(value) {
62
+ return (typeof value === 'object' &&
63
+ value !== null &&
64
+ REACTIVE_READ_REQUEST in value);
65
+ }
66
+ export function isYieldableReactiveValue(value) {
67
+ return (typeof value === 'function' &&
68
+ RAW_REACTIVE_VALUE in value &&
69
+ YIELDABLE_VALUE in value);
70
+ }
71
+ export function rawReactiveValue(value) {
72
+ return value[RAW_REACTIVE_VALUE];
73
+ }
74
+ /** Reconstructs the internal signal-shaped view expected by legacy internals. */
75
+ const rawFacadeCache = new WeakMap();
76
+ export function rawReactiveFacade(value) {
77
+ if (isYieldableReactiveValue(value)) {
78
+ return rawReactiveValue(value);
79
+ }
80
+ if (typeof value === 'function' && RAW_REACTIVE_ACTION in value) {
81
+ return value[RAW_REACTIVE_ACTION];
82
+ }
83
+ if (typeof value !== 'object' || value === null) {
84
+ return value;
85
+ }
86
+ const cached = rawFacadeCache.get(value);
87
+ if (cached)
88
+ return cached;
89
+ const facade = new Proxy(value, {
90
+ get(target, property, receiver) {
91
+ return rawReactiveFacade(Reflect.get(target, property, receiver));
92
+ },
93
+ });
94
+ rawFacadeCache.set(value, facade);
95
+ return facade;
96
+ }
97
+ /** Applies an insertion key to an anonymous craftComputed reader. */
98
+ export function nameInsertedReactiveValue(value, name, primitive, path) {
99
+ if (!isYieldableReactiveValue(value))
100
+ return value;
101
+ if (value[YIELDABLE_VALUE] !== 'computed')
102
+ return value;
103
+ return createYieldableReactiveValue(value[RAW_REACTIVE_VALUE], name, {
104
+ primitive,
105
+ insertion: name,
106
+ computed: name,
107
+ path,
108
+ });
109
+ }
110
+ export function createYieldableReactiveValue(source, name, identity = {}) {
111
+ const reader = function* reactiveReader() {
112
+ const value = yield {
113
+ [REACTIVE_READ_REQUEST]: true,
114
+ identity: { name, ...identity },
115
+ read: source,
116
+ };
117
+ return value;
118
+ };
119
+ Object.defineProperties(reader, {
120
+ [YIELDABLE_VALUE]: {
121
+ value: name,
122
+ enumerable: false,
123
+ configurable: true,
124
+ },
125
+ [RAW_REACTIVE_VALUE]: {
126
+ value: source,
127
+ enumerable: false,
128
+ configurable: true,
129
+ },
130
+ [REACTIVE_VALUE_TYPE]: {
131
+ get: source,
132
+ enumerable: false,
133
+ configurable: true,
134
+ },
135
+ });
136
+ return reader;
137
+ }
138
+ const deepYieldableCache = new WeakMap();
139
+ const deepYieldableRoots = new WeakSet();
140
+ function rawSourceOf(value) {
141
+ const descriptor = Object.getOwnPropertyDescriptor(value, RAW_REACTIVE_VALUE);
142
+ return descriptor?.value;
143
+ }
144
+ function readProjectedPath(source, path) {
145
+ let value = source();
146
+ for (const property of path) {
147
+ value = value == null ? undefined : Reflect.get(Object(value), property);
148
+ }
149
+ return value;
150
+ }
151
+ function createDeepProjection(root, path) {
152
+ const pathText = [
153
+ String(Reflect.get(root, YIELDABLE_VALUE) ?? 'reader'),
154
+ ...path.map(String),
155
+ ].join('.');
156
+ const rootSignal = rawSourceOf(root);
157
+ const reader = function* deepProjectedReader() {
158
+ if (rootSignal) {
159
+ const value = yield {
160
+ [REACTIVE_READ_REQUEST]: true,
161
+ identity: {
162
+ name: String(path[path.length - 1] ?? pathText),
163
+ path: pathText,
164
+ },
165
+ read: () => readProjectedPath(rootSignal, path),
166
+ };
167
+ return value;
168
+ }
169
+ const rootValue = typeof root === 'function'
170
+ ? yield* root()
171
+ : root;
172
+ return readProjectedPath(() => rootValue, path);
173
+ };
174
+ Object.defineProperty(reader, YIELDABLE_VALUE, {
175
+ value: pathText,
176
+ enumerable: false,
177
+ });
178
+ return new Proxy(reader, {
179
+ get(target, property, receiver) {
180
+ if (isFunctionNativeProperty(property)) {
181
+ return Reflect.get(target, property, receiver);
182
+ }
183
+ if (property === '__craftDeepYieldable')
184
+ return true;
185
+ if (property !== 'name' && Reflect.has(target, property)) {
186
+ return Reflect.get(target, property, receiver);
187
+ }
188
+ if (typeof property !== 'string' && typeof property !== 'number') {
189
+ return undefined;
190
+ }
191
+ return getDeepProjection(root, [...path, property]);
192
+ },
193
+ has(target, property) {
194
+ if (isFunctionNativeProperty(property))
195
+ return true;
196
+ return Reflect.has(target, property);
197
+ },
198
+ });
199
+ }
200
+ function getDeepProjection(root, path) {
201
+ const cacheKey = path.map(String).join('.');
202
+ const cached = deepYieldableCache.get(root);
203
+ if (cached && cached instanceof Map && cached.has(cacheKey)) {
204
+ return cached.get(cacheKey);
205
+ }
206
+ const projection = createDeepProjection(root, path);
207
+ const nextCache = cached instanceof Map ? cached : new Map();
208
+ nextCache.set(cacheKey, projection);
209
+ deepYieldableCache.set(root, nextCache);
210
+ return projection;
211
+ }
212
+ function isFunctionNativeProperty(property) {
213
+ return (property === 'prototype' ||
214
+ property === 'arguments' ||
215
+ property === 'caller');
216
+ }
217
+ /**
218
+ * Explicitly adapts a reader so data properties become stable lazy readers.
219
+ * Ordinary readers are deliberately left untouched until this function is
220
+ * called.
221
+ */
222
+ export function deepYieldable(reader) {
223
+ if ((typeof reader !== 'function' &&
224
+ (typeof reader !== 'object' || reader === null)) ||
225
+ deepYieldableRoots.has(reader)) {
226
+ return reader;
227
+ }
228
+ const root = reader;
229
+ const facade = new Proxy(root, {
230
+ get(target, property, receiver) {
231
+ if (isFunctionNativeProperty(property)) {
232
+ return Reflect.get(target, property, receiver);
233
+ }
234
+ if (property === '__craftDeepYieldable')
235
+ return true;
236
+ if (property !== 'name' &&
237
+ rawSourceOf(root) &&
238
+ Reflect.has(target, property)) {
239
+ return Reflect.get(target, property, receiver);
240
+ }
241
+ if (property === YIELDABLE_VALUE)
242
+ return 'deep-yieldable';
243
+ if (property === DEEP_YIELDABLE)
244
+ return true;
245
+ if (typeof property !== 'string' && typeof property !== 'number') {
246
+ return undefined;
247
+ }
248
+ return getDeepProjection(root, [property]);
249
+ },
250
+ has(target, property) {
251
+ if (isFunctionNativeProperty(property))
252
+ return true;
253
+ return (property === '__craftDeepYieldable' ||
254
+ property === YIELDABLE_VALUE ||
255
+ property === DEEP_YIELDABLE ||
256
+ Reflect.has(target, property));
257
+ },
258
+ });
259
+ Object.defineProperty(facade, '__craftDeepYieldable', {
260
+ value: true,
261
+ enumerable: false,
262
+ });
263
+ deepYieldableRoots.add(facade);
264
+ return facade;
265
+ }
266
+ const facadeCache = new WeakMap();
267
+ /**
268
+ * Creates a non-mutating public view of a primitive/ref. Signal calls become
269
+ * reactive read generators; non-reactive methods and values keep their runtime
270
+ * contract. Nested signal properties are adapted lazily and cached.
271
+ */
272
+ export function createYieldableReactiveFacade(value, identity) {
273
+ return createFacade(value, identity, identity.path ?? identity.name);
274
+ }
275
+ /**
276
+ * Creates the deep reader used by resource collections such as
277
+ * `query.exceptions`. Unlike `deepYieldable`, this starts from the raw signal
278
+ * so the primitive can opt one reactive property into deep projection without
279
+ * making the whole primitive deeply yieldable.
280
+ */
281
+ export function createDeepYieldableReactiveValue(source, name, identity = {}) {
282
+ return deepYieldable(createYieldableReactiveValue(source, name, identity));
283
+ }
284
+ function createFacade(value, identity, path, deep = false) {
285
+ if (typeof value !== 'object' && typeof value !== 'function')
286
+ return value;
287
+ if (value === null)
288
+ return value;
289
+ // Generator/iterator instances carry native methods whose receiver must be
290
+ // the original instance. Proxying one (for example, the invocation returned
291
+ // by an insertion method named `select`) makes `yield*` call `.next` with the
292
+ // proxy as receiver and throws "incompatible receiver".
293
+ if ('next' in value &&
294
+ typeof value.next === 'function') {
295
+ return value;
296
+ }
297
+ if (isDeepYieldable(value) || isYieldableReactiveValue(value))
298
+ return value;
299
+ const cacheKey = `${identity.primitive ?? ''}|${identity.computed ?? ''}|${path}`;
300
+ const cachedByPath = facadeCache.get(value);
301
+ if (cachedByPath?.has(cacheKey))
302
+ return cachedByPath.get(cacheKey);
303
+ let facade;
304
+ if (isCraftSignal(value) || isCallableSignal(value)) {
305
+ const pathParts = path.split('.');
306
+ const propertyName = pathParts[pathParts.length - 1] ?? identity.name;
307
+ const reader = createYieldableReactiveValue(value, propertyName, {
308
+ ...identity,
309
+ path,
310
+ });
311
+ facade = deep
312
+ ? deepYieldable(reader)
313
+ : new Proxy(reader, {
314
+ get(_target, property) {
315
+ if (property === YIELDABLE_VALUE ||
316
+ property === RAW_REACTIVE_VALUE) {
317
+ return Reflect.get(reader, property);
318
+ }
319
+ if (!Reflect.has(value, property) && Reflect.has(reader, property)) {
320
+ return createFacade(Reflect.get(reader, property), identity, `${path}.${String(property)}`);
321
+ }
322
+ const child = Reflect.get(value, property);
323
+ if ((property === 'select' || property === 'selectOrCreate') &&
324
+ typeof child === 'function') {
325
+ return (...args) => createFacade(Reflect.apply(child, value, args), identity, `${path}.${String(property)}.${String(args[0] ?? 'selected')}`);
326
+ }
327
+ return createFacade(child, {
328
+ ...identity,
329
+ insertion: identity.insertion ??
330
+ (typeof property === 'string' ? property : undefined),
331
+ }, `${path}.${String(property)}`);
332
+ },
333
+ ownKeys: (target) => [
334
+ ...new Set([...Reflect.ownKeys(target), ...Reflect.ownKeys(value)]),
335
+ ],
336
+ getOwnPropertyDescriptor(_target, property) {
337
+ const targetDescriptor = Reflect.getOwnPropertyDescriptor(reader, property);
338
+ if (targetDescriptor)
339
+ return targetDescriptor;
340
+ const descriptor = Reflect.getOwnPropertyDescriptor(value, property);
341
+ return descriptor
342
+ ? { ...descriptor, configurable: true }
343
+ : undefined;
344
+ },
345
+ has: (_target, property) => property === YIELDABLE_VALUE ||
346
+ property === RAW_REACTIVE_VALUE ||
347
+ Reflect.has(value, property),
348
+ });
349
+ }
350
+ else {
351
+ facade = new Proxy(value, {
352
+ get(target, property, receiver) {
353
+ const child = Reflect.get(target, property, receiver);
354
+ if ((property === 'reload' || property === 'refresh') &&
355
+ typeof child === 'function') {
356
+ const action = function* yieldableReactiveAction(...args) {
357
+ return Reflect.apply(child, target, args);
358
+ };
359
+ Object.defineProperty(action, RAW_REACTIVE_ACTION, { value: child });
360
+ return action;
361
+ }
362
+ if ((property === 'select' || property === 'selectOrCreate') &&
363
+ typeof child === 'function') {
364
+ return (...args) => createFacade(Reflect.apply(child, target, args), identity, `${path}.${String(property)}.${String(args[0] ?? 'selected')}`);
365
+ }
366
+ if (!isCraftSignal(child) &&
367
+ !isCallableSignal(child) &&
368
+ (typeof child !== 'object' || child === null)) {
369
+ return child;
370
+ }
371
+ return createFacade(child, {
372
+ ...identity,
373
+ insertion: identity.insertion ??
374
+ (typeof property === 'string' ? property : undefined),
375
+ }, `${path}.${String(property)}`, property === 'exceptions');
376
+ },
377
+ });
378
+ }
379
+ const nextCache = cachedByPath ?? new Map();
380
+ nextCache.set(cacheKey, facade);
381
+ if (!cachedByPath)
382
+ facadeCache.set(value, nextCache);
383
+ return facade;
384
+ }
385
+ function isDeepYieldable(value) {
386
+ return ((typeof value === 'object' && value !== null) ||
387
+ typeof value === 'function') && '__craftDeepYieldable' in value;
388
+ }
389
+ //# sourceMappingURL=reactive-read.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reactive-read.js","sourceRoot":"","sources":["../../../../../libs/core/src/lib/reactive-read.ts"],"names":[],"mappings":"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","sourcesContent":["import { isCraftSignal, type CraftSignal as Signal } from './host/craft-signal';\nimport { craftToken } from './host/craft-injector';\nimport type { SourceBranded } from './util/util';\n\nfunction isCallableSignal(value: unknown): boolean {\n if (typeof value !== 'function') {\n return false;\n }\n const symbols = Object.getOwnPropertySymbols(value);\n return (\n symbols.some((symbol) => symbol.description === 'SIGNAL') ||\n 'set' in value ||\n 'update' in value\n );\n}\n\n/** Runtime/type brand carried by named reactive values exposed to templates. */\nexport const YIELDABLE_VALUE = Symbol('craft-yieldable-value');\n\n/** Internal marker used by the synchronous Craft generator driver. */\nexport const REACTIVE_READ_REQUEST = Symbol('craft-reactive-read-request');\n\n/** Internal escape hatch used by Craft itself to retain the raw host signal. */\nexport const RAW_REACTIVE_VALUE = Symbol('craft-raw-reactive-value');\nconst RAW_REACTIVE_ACTION = Symbol('craft-raw-reactive-action');\n\n/** Type/runtime marker retaining the reader's resolved value type. */\nexport const REACTIVE_VALUE_TYPE = Symbol('craft-reactive-value-type');\n\n/** Type-only carrier identifying the root reader and projected path. */\nexport const YIELDABLE_DEPENDENCY = Symbol('craft-yieldable-dependency');\n\n/** Runtime/type marker for an explicitly adapted deep-yieldable reader. */\nexport const DEEP_YIELDABLE = Symbol('craft-deep-yieldable');\n\n/** Type-only carrier propagated by computed readers. */\nexport const REACTIVE_DEPENDENCIES = Symbol('craft-reactive-dependencies');\n\n/** Marker carried by the opt-in primitive insertion. */\nexport const DEEP_YIELDABLE_INSERTION = Symbol(\n 'craft-deep-yieldable-insertion',\n);\n\nexport type ReactiveDependencyMap = Readonly<{\n readonly source: unknown;\n readonly path: string;\n}>;\n\nexport type YieldableDependency<Source, Path extends string> = {\n readonly [YIELDABLE_DEPENDENCY]?: {\n readonly source: Source;\n readonly path: Path;\n };\n};\n\ntype DeepYieldableReadRequest<\n Value,\n Source,\n Path extends string,\n> = ReactiveReadRequest<Value> & YieldableDependency<Source, Path>;\n\ntype DeepYieldableObject<\n Value extends object,\n Source,\n Path extends string,\n Depth extends readonly unknown[],\n> = Depth extends readonly []\n ? {}\n : Value extends readonly unknown[]\n ? {}\n : Value extends (...args: any[]) => any\n ? {}\n : {\n readonly [Key in keyof Value as Key extends\n | typeof YIELDABLE_VALUE\n | typeof RAW_REACTIVE_VALUE\n | typeof REACTIVE_VALUE_TYPE\n | typeof YIELDABLE_DEPENDENCY\n | typeof DEEP_YIELDABLE\n ? never\n : Key]: DeepYieldableValue<\n Value[Key],\n Source,\n `${Path}.${Extract<Key, string>}`,\n Depth extends readonly [unknown, ...infer Rest] ? Rest : readonly []\n >;\n };\n\n/** A lazily projected, yieldable view of one value property. */\nexport type DeepYieldableValue<\n Value,\n Source,\n Path extends string,\n Depth extends readonly unknown[] = readonly [\n unknown,\n unknown,\n unknown,\n unknown,\n unknown,\n unknown,\n unknown,\n unknown,\n ],\n> = (() => Generator<\n DeepYieldableReadRequest<Value, Source, Path>,\n Value,\n unknown\n>) &\n YieldableDependency<Source, Path> &\n (Value extends object ? DeepYieldableObject<Value, Source, Path, Depth> : {});\n\ntype ReaderValue<Reader> =\n Reader extends YieldableReactiveValue<infer Value, any, any>\n ? Value\n : Reader extends (...args: any[]) => Generator<any, infer Value, any>\n ? Value\n : never;\n\ntype ReaderName<Reader> =\n Reader extends YieldableReactiveValue<any, infer Name extends string, any>\n ? Name\n : string;\n\n/** Type returned by {@link deepYieldable}. */\nexport type DeepYieldableReaderOf<Reader> = Reader &\n DeepYieldableObject<\n NonNullable<ReaderValue<Reader>> extends object\n ? NonNullable<ReaderValue<Reader>>\n : {},\n Reader,\n ReaderName<Reader>,\n readonly [\n unknown,\n unknown,\n unknown,\n unknown,\n unknown,\n unknown,\n unknown,\n unknown,\n ]\n > &\n DeepYieldableMarker & {\n readonly [DEEP_YIELDABLE]: true;\n };\n\n/**\n * A reactive reader whose object-valued result can be projected property by\n * property (`reader.profile.name`) while keeping every projection yieldable.\n */\nexport type DeepYieldableReactiveValue<\n Value,\n Name extends string = string,\n> = DeepYieldableReaderOf<YieldableReactiveValue<Value, Name>>;\n\n/** Structural companion to the runtime symbol, usable across project references. */\nexport type DeepYieldableMarker = {\n readonly __craftDeepYieldable: true;\n};\n\nexport type ReactiveDependencyMapFromYielded<Yielded> = Yielded extends {\n readonly [YIELDABLE_DEPENDENCY]?: infer Dependency;\n}\n ? Dependency\n : never;\n\nexport type DeepYieldableInsertion = {\n readonly [DEEP_YIELDABLE_INSERTION]: true;\n} & ((context: unknown) => {\n readonly [DEEP_YIELDABLE_INSERTION]: true;\n});\n\nexport function insertDeepYieldable(): DeepYieldableInsertion {\n const insertion = (() => ({})) as unknown as DeepYieldableInsertion;\n Object.defineProperty(insertion, DEEP_YIELDABLE_INSERTION, {\n value: true,\n enumerable: false,\n });\n return insertion;\n}\n\nexport function hasDeepYieldableInsertion(\n insertions: readonly unknown[],\n): boolean {\n return insertions.some(\n (insertion) =>\n typeof insertion === 'function' && DEEP_YIELDABLE_INSERTION in insertion,\n );\n}\n\nexport type NamedYieldableValue<\n Name extends string = string,\n Value = unknown,\n> = Value & {\n readonly [YIELDABLE_VALUE]: Name;\n};\n\nexport type ReactiveReadIdentity = Readonly<{\n /** Stable display name of the reactive value. */\n name: string;\n /** Owning primitive, when the reader comes from one. */\n primitive?: string;\n /** Full property path below the owning primitive. */\n path?: string;\n /** Insertion key, when the value was created by an insertion. */\n insertion?: string;\n /** Computed name, when the value is a craftComputed. */\n computed?: string;\n}>;\n\n/** A request emitted by a public reactive reader and resolved by Craft. */\nexport type ReactiveReadRequest<T = unknown> = Readonly<{\n [REACTIVE_READ_REQUEST]: true;\n identity: ReactiveReadIdentity;\n read: () => T;\n}>;\n\n/** Public contract of every reactive value exposed by Craft. */\nexport type YieldableReactiveValue<\n T,\n Name extends string = string,\n Yielded = never,\n> = NamedYieldableValue<\n Name,\n (() => Generator<ReactiveReadRequest<T> | Yielded, T, unknown>) & {\n readonly [RAW_REACTIVE_VALUE]: Signal<T>;\n readonly [REACTIVE_VALUE_TYPE]: T;\n } & Signal<T>\n>;\n\nexport type YieldableReactiveSignal<\n Value extends Signal<any>,\n Name extends string,\n> = YieldableReactiveValue<\n Value extends Signal<infer State> ? State : never,\n Name\n> &\n Omit<Value, keyof Signal<any>>;\n\nexport type YieldableReactiveAction<Action extends (...args: any[]) => any> = ((\n ...args: Parameters<Action>\n) => Generator<never, ReturnType<Action>, unknown>) & {\n readonly [RAW_REACTIVE_ACTION]: Action;\n};\n\n/** Recursively restores the raw signal-shaped contract used by Craft internals. */\nexport type RawReactiveProperties<Shape> =\n Shape extends YieldableReactiveValue<infer Value, any>\n ? Signal<Value>\n : Shape extends { readonly [RAW_REACTIVE_ACTION]: infer Action }\n ? Action\n : Shape extends (...args: any[]) => any\n ? Shape\n : Shape extends object\n ? {\n [Key in keyof Shape]: Key extends 'select' | 'selectOrCreate'\n ? Shape[Key] extends (...args: infer Args) => infer Result\n ? (...args: Args) => RawReactiveProperties<Result>\n : RawReactiveProperties<Shape[Key]>\n : RawReactiveProperties<Shape[Key]>;\n }\n : Shape;\n\n/** Recursively replaces exposed Angular signals while preserving methods/plain values. */\nexport type YieldableReactiveProperties<Shape> = Shape extends SourceBranded\n ? Shape extends Signal<any>\n ? YieldableReactiveSignal<Shape, string>\n : Shape\n : Shape extends YieldableReactiveValue<any, any>\n ? Shape\n : Shape extends Signal<any>\n ? YieldableReactiveSignal<Shape, string>\n : Shape extends (...args: any[]) => any\n ? Shape\n : Shape extends object\n ? {\n [Key in keyof Shape]: Shape[Key] extends SourceBranded\n ? Shape[Key] extends Signal<any>\n ? YieldableReactiveSignal<\n Shape[Key],\n Key extends string ? Key : string\n >\n : Shape[Key]\n : Shape[Key] extends Signal<any>\n ? Shape[Key] extends YieldableReactiveValue<any, any>\n ? Shape[Key]\n : YieldableReactiveSignal<\n Shape[Key],\n Key extends string ? Key : string\n >\n : Shape[Key] extends YieldableReactiveValue<any, any>\n ? Shape[Key]\n : Shape[Key] extends (...args: any[]) => any\n ? Key extends 'select' | 'selectOrCreate'\n ? (\n ...args: Parameters<Shape[Key]>\n ) => YieldableReactiveProperties<\n ReturnType<Shape[Key]>\n >\n : Key extends 'reload' | 'refresh'\n ? YieldableReactiveAction<Shape[Key]>\n : Shape[Key]\n : Shape[Key] extends object\n ? YieldableReactiveProperties<Shape[Key]>\n : Shape[Key];\n }\n : Shape;\n\nexport type ReactiveReadEdge = Readonly<{\n reader?: ReactiveReadIdentity;\n dependency: ReactiveReadIdentity;\n}>;\n\nexport type ReactiveReadObserver = (edge: ReactiveReadEdge) => void;\n\nlet activeReactiveReader: ReactiveReadIdentity | undefined;\n\nexport function ɵactiveReactiveReader(): ReactiveReadIdentity | undefined {\n return activeReactiveReader;\n}\n\nexport function ɵwithActiveReactiveReader<T>(\n identity: ReactiveReadIdentity,\n read: () => T,\n): T {\n const previous = activeReactiveReader;\n activeReactiveReader = identity;\n try {\n return read();\n } finally {\n activeReactiveReader = previous;\n }\n}\n\n/** Observability hook notified whenever a Craft generator resolves a reactive read. */\nexport const REACTIVE_READ_OBSERVERS = Object.assign(\n craftToken<readonly ReactiveReadObserver[]>('REACTIVE_READ_OBSERVERS'),\n {\n ɵfactory: (): readonly ReactiveReadObserver[] => [],\n },\n);\n\nexport function provideReactiveReadObserver(\n observer: ReactiveReadObserver,\n): {\n provide: typeof REACTIVE_READ_OBSERVERS;\n useValue: ReactiveReadObserver;\n multi: true;\n} {\n return { provide: REACTIVE_READ_OBSERVERS, useValue: observer, multi: true };\n}\n\nexport function isReactiveReadRequest(\n value: unknown,\n): value is ReactiveReadRequest {\n return (\n typeof value === 'object' &&\n value !== null &&\n REACTIVE_READ_REQUEST in value\n );\n}\n\nexport function isYieldableReactiveValue(\n value: unknown,\n): value is YieldableReactiveValue<unknown> {\n return (\n typeof value === 'function' &&\n RAW_REACTIVE_VALUE in value &&\n YIELDABLE_VALUE in value\n );\n}\n\nexport function rawReactiveValue<T>(\n value: YieldableReactiveValue<T>,\n): Signal<T> {\n return value[RAW_REACTIVE_VALUE];\n}\n\n/** Reconstructs the internal signal-shaped view expected by legacy internals. */\nconst rawFacadeCache = new WeakMap<object, unknown>();\n\nexport function rawReactiveFacade<Shape>(\n value: Shape,\n): RawReactiveProperties<Shape> {\n if (isYieldableReactiveValue(value)) {\n return rawReactiveValue(value) as RawReactiveProperties<Shape>;\n }\n if (typeof value === 'function' && RAW_REACTIVE_ACTION in value) {\n return value[RAW_REACTIVE_ACTION] as RawReactiveProperties<Shape>;\n }\n if (typeof value !== 'object' || value === null) {\n return value as RawReactiveProperties<Shape>;\n }\n const cached = rawFacadeCache.get(value);\n if (cached) return cached as RawReactiveProperties<Shape>;\n const facade = new Proxy(value, {\n get(target, property, receiver) {\n return rawReactiveFacade(Reflect.get(target, property, receiver));\n },\n });\n rawFacadeCache.set(value, facade);\n return facade as RawReactiveProperties<Shape>;\n}\n\n/** Applies an insertion key to an anonymous craftComputed reader. */\nexport function nameInsertedReactiveValue<const Name extends string>(\n value: unknown,\n name: Name,\n primitive: string,\n path: string,\n): unknown {\n if (!isYieldableReactiveValue(value)) return value;\n if (value[YIELDABLE_VALUE] !== 'computed') return value;\n return createYieldableReactiveValue(value[RAW_REACTIVE_VALUE], name, {\n primitive,\n insertion: name,\n computed: name,\n path,\n });\n}\n\nexport function createYieldableReactiveValue<T, const Name extends string>(\n source: Signal<T>,\n name: Name,\n identity: Omit<ReactiveReadIdentity, 'name'> = {},\n): YieldableReactiveValue<T, Name> {\n const reader = function* reactiveReader(): Generator<\n ReactiveReadRequest<T>,\n T,\n unknown\n > {\n const value = yield {\n [REACTIVE_READ_REQUEST]: true,\n identity: { name, ...identity },\n read: source,\n };\n return value as T;\n };\n\n Object.defineProperties(reader, {\n [YIELDABLE_VALUE]: {\n value: name,\n enumerable: false,\n configurable: true,\n },\n [RAW_REACTIVE_VALUE]: {\n value: source,\n enumerable: false,\n configurable: true,\n },\n [REACTIVE_VALUE_TYPE]: {\n get: source,\n enumerable: false,\n configurable: true,\n },\n });\n\n return reader as YieldableReactiveValue<T, Name>;\n}\n\nconst deepYieldableCache = new WeakMap<object, unknown>();\nconst deepYieldableRoots = new WeakSet<object>();\n\nfunction rawSourceOf(value: object): Signal<unknown> | undefined {\n const descriptor = Object.getOwnPropertyDescriptor(value, RAW_REACTIVE_VALUE);\n return descriptor?.value as Signal<unknown> | undefined;\n}\n\nfunction readProjectedPath(\n source: () => unknown,\n path: readonly PropertyKey[],\n): unknown {\n let value: unknown = source();\n for (const property of path) {\n value = value == null ? undefined : Reflect.get(Object(value), property);\n }\n return value;\n}\n\nfunction createDeepProjection(\n root: object,\n path: readonly PropertyKey[],\n): unknown {\n const pathText = [\n String(Reflect.get(root, YIELDABLE_VALUE) ?? 'reader'),\n ...path.map(String),\n ].join('.');\n const rootSignal = rawSourceOf(root);\n\n const reader = function* deepProjectedReader(): Generator<\n ReactiveReadRequest<unknown>,\n unknown,\n unknown\n > {\n if (rootSignal) {\n const value = yield {\n [REACTIVE_READ_REQUEST]: true,\n identity: {\n name: String(path[path.length - 1] ?? pathText),\n path: pathText,\n },\n read: () => readProjectedPath(rootSignal, path),\n };\n return value;\n }\n\n const rootValue =\n typeof root === 'function'\n ? yield* (\n root as unknown as () => Generator<\n ReactiveReadRequest<unknown>,\n unknown,\n unknown\n >\n )()\n : root;\n return readProjectedPath(() => rootValue, path);\n };\n\n Object.defineProperty(reader, YIELDABLE_VALUE, {\n value: pathText,\n enumerable: false,\n });\n\n return new Proxy(reader, {\n get(target, property, receiver) {\n if (isFunctionNativeProperty(property)) {\n return Reflect.get(target, property, receiver);\n }\n if (property === '__craftDeepYieldable') return true;\n if (property !== 'name' && Reflect.has(target, property)) {\n return Reflect.get(target, property, receiver);\n }\n if (typeof property !== 'string' && typeof property !== 'number') {\n return undefined;\n }\n return getDeepProjection(root, [...path, property]);\n },\n has(target, property) {\n if (isFunctionNativeProperty(property)) return true;\n return Reflect.has(target, property);\n },\n });\n}\n\nfunction getDeepProjection(\n root: object,\n path: readonly PropertyKey[],\n): unknown {\n const cacheKey = path.map(String).join('.');\n const cached = deepYieldableCache.get(root);\n if (cached && cached instanceof Map && cached.has(cacheKey)) {\n return cached.get(cacheKey);\n }\n\n const projection = createDeepProjection(root, path);\n const nextCache = cached instanceof Map ? cached : new Map<string, unknown>();\n nextCache.set(cacheKey, projection);\n deepYieldableCache.set(root, nextCache);\n return projection;\n}\n\nfunction isFunctionNativeProperty(property: PropertyKey): boolean {\n return (\n property === 'prototype' ||\n property === 'arguments' ||\n property === 'caller'\n );\n}\n\n/**\n * Explicitly adapts a reader so data properties become stable lazy readers.\n * Ordinary readers are deliberately left untouched until this function is\n * called.\n */\nexport function deepYieldable<Reader>(\n reader: Reader,\n): Reader extends object ? DeepYieldableReaderOf<Reader> : Reader {\n if (\n (typeof reader !== 'function' &&\n (typeof reader !== 'object' || reader === null)) ||\n deepYieldableRoots.has(reader as object)\n ) {\n return reader as Reader extends object\n ? DeepYieldableReaderOf<Reader>\n : Reader;\n }\n\n const root = reader as unknown as object;\n const facade = new Proxy(root, {\n get(target, property, receiver) {\n if (isFunctionNativeProperty(property)) {\n return Reflect.get(target, property, receiver);\n }\n if (property === '__craftDeepYieldable') return true;\n if (\n property !== 'name' &&\n rawSourceOf(root) &&\n Reflect.has(target, property)\n ) {\n return Reflect.get(target, property, receiver);\n }\n if (property === YIELDABLE_VALUE) return 'deep-yieldable';\n if (property === DEEP_YIELDABLE) return true;\n if (typeof property !== 'string' && typeof property !== 'number') {\n return undefined;\n }\n return getDeepProjection(root, [property]);\n },\n has(target, property) {\n if (isFunctionNativeProperty(property)) return true;\n return (\n property === '__craftDeepYieldable' ||\n property === YIELDABLE_VALUE ||\n property === DEEP_YIELDABLE ||\n Reflect.has(target, property)\n );\n },\n });\n Object.defineProperty(facade, '__craftDeepYieldable', {\n value: true,\n enumerable: false,\n });\n deepYieldableRoots.add(facade);\n return facade as Reader extends object\n ? DeepYieldableReaderOf<Reader>\n : Reader;\n}\n\nconst facadeCache = new WeakMap<object, Map<string, unknown>>();\n\n/**\n * Creates a non-mutating public view of a primitive/ref. Signal calls become\n * reactive read generators; non-reactive methods and values keep their runtime\n * contract. Nested signal properties are adapted lazily and cached.\n */\nexport function createYieldableReactiveFacade<Shape>(\n value: Shape,\n identity: ReactiveReadIdentity,\n): YieldableReactiveProperties<Shape> {\n return createFacade(\n value,\n identity,\n identity.path ?? identity.name,\n ) as YieldableReactiveProperties<Shape>;\n}\n\n/**\n * Creates the deep reader used by resource collections such as\n * `query.exceptions`. Unlike `deepYieldable`, this starts from the raw signal\n * so the primitive can opt one reactive property into deep projection without\n * making the whole primitive deeply yieldable.\n */\nexport function createDeepYieldableReactiveValue<\n Value,\n const Name extends string,\n>(\n source: Signal<Value>,\n name: Name,\n identity: Omit<ReactiveReadIdentity, 'name'> = {},\n): DeepYieldableReactiveValue<Value, Name> {\n return deepYieldable(\n createYieldableReactiveValue(source, name, identity),\n ) as DeepYieldableReactiveValue<Value, Name>;\n}\n\nfunction createFacade(\n value: unknown,\n identity: ReactiveReadIdentity,\n path: string,\n deep = false,\n): unknown {\n if (typeof value !== 'object' && typeof value !== 'function') return value;\n if (value === null) return value;\n // Generator/iterator instances carry native methods whose receiver must be\n // the original instance. Proxying one (for example, the invocation returned\n // by an insertion method named `select`) makes `yield*` call `.next` with the\n // proxy as receiver and throws \"incompatible receiver\".\n if (\n 'next' in value &&\n typeof (value as { next?: unknown }).next === 'function'\n ) {\n return value;\n }\n if (isDeepYieldable(value) || isYieldableReactiveValue(value)) return value;\n\n const cacheKey = `${identity.primitive ?? ''}|${identity.computed ?? ''}|${path}`;\n const cachedByPath = facadeCache.get(value as object);\n if (cachedByPath?.has(cacheKey)) return cachedByPath.get(cacheKey);\n\n let facade: unknown;\n if (isCraftSignal(value) || isCallableSignal(value)) {\n const pathParts = path.split('.');\n const propertyName = pathParts[pathParts.length - 1] ?? identity.name;\n const reader = createYieldableReactiveValue(\n value as unknown as Signal<unknown>,\n propertyName,\n {\n ...identity,\n path,\n },\n );\n facade = deep\n ? deepYieldable(reader)\n : new Proxy(reader, {\n get(_target, property) {\n if (\n property === YIELDABLE_VALUE ||\n property === RAW_REACTIVE_VALUE\n ) {\n return Reflect.get(reader, property);\n }\n if (!Reflect.has(value, property) && Reflect.has(reader, property)) {\n return createFacade(\n Reflect.get(reader, property),\n identity,\n `${path}.${String(property)}`,\n );\n }\n const child = Reflect.get(value, property);\n if (\n (property === 'select' || property === 'selectOrCreate') &&\n typeof child === 'function'\n ) {\n return (...args: unknown[]) =>\n createFacade(\n Reflect.apply(child, value, args),\n identity,\n `${path}.${String(property)}.${String(args[0] ?? 'selected')}`,\n );\n }\n return createFacade(\n child,\n {\n ...identity,\n insertion:\n identity.insertion ??\n (typeof property === 'string' ? property : undefined),\n },\n `${path}.${String(property)}`,\n );\n },\n ownKeys: (target) => [\n ...new Set([...Reflect.ownKeys(target), ...Reflect.ownKeys(value)]),\n ],\n getOwnPropertyDescriptor(_target, property) {\n const targetDescriptor = Reflect.getOwnPropertyDescriptor(\n reader,\n property,\n );\n if (targetDescriptor) return targetDescriptor;\n const descriptor = Reflect.getOwnPropertyDescriptor(value, property);\n return descriptor\n ? { ...descriptor, configurable: true }\n : undefined;\n },\n has: (_target, property) =>\n property === YIELDABLE_VALUE ||\n property === RAW_REACTIVE_VALUE ||\n Reflect.has(value, property),\n });\n } else {\n facade = new Proxy(value as object, {\n get(target, property, receiver) {\n const child = Reflect.get(target, property, receiver);\n if (\n (property === 'reload' || property === 'refresh') &&\n typeof child === 'function'\n ) {\n const action = function* yieldableReactiveAction(\n ...args: unknown[]\n ): Generator<never, unknown, unknown> {\n return Reflect.apply(child, target, args);\n };\n Object.defineProperty(action, RAW_REACTIVE_ACTION, { value: child });\n return action;\n }\n if (\n (property === 'select' || property === 'selectOrCreate') &&\n typeof child === 'function'\n ) {\n return (...args: unknown[]) =>\n createFacade(\n Reflect.apply(child, target, args),\n identity,\n `${path}.${String(property)}.${String(args[0] ?? 'selected')}`,\n );\n }\n if (\n !isCraftSignal(child) &&\n !isCallableSignal(child) &&\n (typeof child !== 'object' || child === null)\n ) {\n return child;\n }\n return createFacade(\n child,\n {\n ...identity,\n insertion:\n identity.insertion ??\n (typeof property === 'string' ? property : undefined),\n },\n `${path}.${String(property)}`,\n property === 'exceptions',\n );\n },\n });\n }\n\n const nextCache = cachedByPath ?? new Map<string, unknown>();\n nextCache.set(cacheKey, facade);\n if (!cachedByPath) facadeCache.set(value as object, nextCache);\n return facade;\n}\n\nfunction isDeepYieldable(value: unknown): value is DeepYieldableMarker {\n return (\n (typeof value === 'object' && value !== null) ||\n typeof value === 'function'\n ) && '__craftDeepYieldable' in (value as object);\n}\n"]}
@@ -0,0 +1,71 @@
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';
5
+ export type ResourceByIdHandler<GroupIdentifier extends string, State, ResourceParams> = {
6
+ /**
7
+ * Reset all the CraftResourceRef instance stored in the ResourceByIdRef
8
+ */
9
+ reset: () => void;
10
+ /**
11
+ * Reset the CraftResourceRef instance associated with the provided id
12
+ */
13
+ resetResource: (id: GroupIdentifier) => void;
14
+ /**
15
+ * Add a new CraftResourceRef instance
16
+ */
17
+ add: (params: ResourceParams, options?: {
18
+ defaultValue?: State;
19
+ }) => CraftResourceRef<State, ResourceParams>;
20
+ /**
21
+ * ! The added resource may not load immediately if the global params do not match the identifier function.
22
+ * Useful at the app initialization when the resource value is retrieved from a persister for example.
23
+ */
24
+ addById: (id: GroupIdentifier, options?: {
25
+ defaultParam?: ResourceParams;
26
+ defaultValue?: State;
27
+ paramsFromResourceById?: CraftResourceRef<unknown, unknown>;
28
+ }) => CraftResourceRef<State, ResourceParams>;
29
+ /**
30
+ * Set the values of multiple resources. If a resource doesn't exist, it will be created.
31
+ */
32
+ set: (payload: Partial<Record<GroupIdentifier, State>>) => void;
33
+ /**
34
+ * Update values of multiple resources without removing existing ones.
35
+ * If a resource doesn't exist, it will be created.
36
+ */
37
+ update: (payload: (state: Partial<Record<GroupIdentifier, State>>) => Partial<Record<GroupIdentifier, State>>) => void;
38
+ /**
39
+ * Tracks the status and value changes of resources.
40
+ * Provides signals for hasChange, ids, resolved, loading, reloading, error, and onlyValueChange.
41
+ */
42
+ changes: resourceByIdChangesTrackerResult<GroupIdentifier>;
43
+ /**
44
+ * A computed signal that returns a record of all resource states by their group identifier.
45
+ */
46
+ state: Signal<Partial<Record<GroupIdentifier, State>>>;
47
+ };
48
+ export type Identifier<ResourceParams, GroupIdentifier> = (request: NonNullable<ResourceParams>) => GroupIdentifier;
49
+ export type ResourceByIdRef<GroupIdentifier extends string, State, ResourceParams> = Signal<Prettify<Partial<Record<GroupIdentifier, CraftResourceRef<State, ResourceParams>>>>> & ResourceByIdHandler<GroupIdentifier, State, ResourceParams>;
50
+ export type EqualParams<ResourceParams, GroupIdentifier extends string> = 'default' | 'useIdentifier' | ((a: ResourceParams, b: ResourceParams, identifierFn: (params: ResourceParams) => GroupIdentifier) => boolean);
51
+ type ResourceByIdConfig<State, ResourceParams, GroupIdentifier extends string, FromObjectGroupIdentifier extends string, FromObjectState, FromObjectResourceParams> = Omit<ResourceOptions<State, ResourceParams>, 'params'> & {
52
+ /** @internal Shared source name used by the server policy gate. */
53
+ ssrSourceName?: string;
54
+ } & ({
55
+ fromResourceById?: never;
56
+ params: () => ResourceParams;
57
+ identifier: Identifier<NoInfer<ResourceParams>, GroupIdentifier>;
58
+ equalParams?: EqualParams<ResourceParams, GroupIdentifier>;
59
+ } | {
60
+ /**
61
+ * Use it, when you need to bind a ResourceByIdRef to another ResourceByIdRef.
62
+ * It will kill the fromObject keys syncing when the fromObject resource change.
63
+ */
64
+ fromResourceById: ResourceByIdRef<FromObjectGroupIdentifier, FromObjectState, FromObjectResourceParams>;
65
+ params: (entity: CraftResourceRef<NoInfer<FromObjectState>, NoInfer<FromObjectResourceParams>>) => ResourceParams;
66
+ identifier: Identifier<NoInfer<ResourceParams>, GroupIdentifier>;
67
+ equalParams?: EqualParams<ResourceParams, GroupIdentifier>;
68
+ });
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
+ export {};
71
+ //# sourceMappingURL=resource-by-id.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resource-by-id.d.ts","sourceRoot":"","sources":["../../../../../libs/core/src/lib/resource-by-id.ts"],"names":[],"mappings":"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"}