signalium 1.2.2 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (388) hide show
  1. package/CHANGELOG.md +28 -0
  2. package/{build/transform.js → config.js} +1 -5
  3. package/{build/react.js → debug.js} +1 -5
  4. package/dist/cjs/config.d.ts +1 -21
  5. package/dist/cjs/config.d.ts.map +1 -1
  6. package/dist/cjs/config.js +3 -36
  7. package/dist/cjs/config.js.map +1 -1
  8. package/dist/cjs/debug.d.ts +1 -1
  9. package/dist/cjs/debug.d.ts.map +1 -1
  10. package/dist/cjs/debug.js +1 -1
  11. package/dist/cjs/debug.js.map +1 -1
  12. package/dist/cjs/index.d.ts +5 -6
  13. package/dist/cjs/index.d.ts.map +1 -1
  14. package/dist/cjs/index.js +17 -23
  15. package/dist/cjs/index.js.map +1 -1
  16. package/dist/cjs/internals/async.d.ts +24 -19
  17. package/dist/cjs/internals/async.d.ts.map +1 -1
  18. package/dist/cjs/internals/async.js +264 -137
  19. package/dist/cjs/internals/async.js.map +1 -1
  20. package/dist/cjs/internals/callback.d.ts +13 -0
  21. package/dist/cjs/internals/callback.d.ts.map +1 -0
  22. package/dist/cjs/internals/callback.js +73 -0
  23. package/dist/cjs/internals/callback.js.map +1 -0
  24. package/dist/cjs/internals/config.d.ts +7 -0
  25. package/dist/cjs/internals/config.d.ts.map +1 -0
  26. package/dist/cjs/internals/config.js +17 -0
  27. package/dist/cjs/internals/config.js.map +1 -0
  28. package/dist/cjs/internals/consumer.d.ts +3 -3
  29. package/dist/cjs/internals/consumer.d.ts.map +1 -1
  30. package/dist/cjs/internals/consumer.js.map +1 -1
  31. package/dist/cjs/internals/contexts.d.ts +15 -14
  32. package/dist/cjs/internals/contexts.d.ts.map +1 -1
  33. package/dist/cjs/internals/contexts.js +52 -52
  34. package/dist/cjs/internals/contexts.js.map +1 -1
  35. package/dist/cjs/internals/core-api.d.ts +15 -0
  36. package/dist/cjs/internals/core-api.d.ts.map +1 -0
  37. package/dist/cjs/internals/core-api.js +83 -0
  38. package/dist/cjs/internals/core-api.js.map +1 -0
  39. package/dist/cjs/internals/dirty.d.ts +3 -3
  40. package/dist/cjs/internals/dirty.d.ts.map +1 -1
  41. package/dist/cjs/internals/dirty.js +13 -13
  42. package/dist/cjs/internals/dirty.js.map +1 -1
  43. package/dist/cjs/internals/edge.d.ts +5 -5
  44. package/dist/cjs/internals/edge.d.ts.map +1 -1
  45. package/dist/cjs/internals/edge.js.map +1 -1
  46. package/dist/cjs/internals/generators.d.ts +5 -0
  47. package/dist/cjs/internals/generators.d.ts.map +1 -0
  48. package/dist/cjs/internals/generators.js +83 -0
  49. package/dist/cjs/internals/generators.js.map +1 -0
  50. package/dist/cjs/internals/get.d.ts +5 -8
  51. package/dist/cjs/internals/get.d.ts.map +1 -1
  52. package/dist/cjs/internals/get.js +48 -107
  53. package/dist/cjs/internals/get.js.map +1 -1
  54. package/dist/cjs/internals/reactive.d.ts +77 -0
  55. package/dist/cjs/internals/reactive.d.ts.map +1 -0
  56. package/dist/cjs/internals/{derived.js → reactive.js} +45 -33
  57. package/dist/cjs/internals/reactive.js.map +1 -0
  58. package/dist/cjs/internals/scheduling.d.ts +7 -7
  59. package/dist/cjs/internals/scheduling.d.ts.map +1 -1
  60. package/dist/cjs/internals/scheduling.js +9 -9
  61. package/dist/cjs/internals/scheduling.js.map +1 -1
  62. package/dist/cjs/internals/signal.d.ts +20 -0
  63. package/dist/cjs/internals/signal.d.ts.map +1 -0
  64. package/dist/cjs/internals/{state.js → signal.js} +31 -27
  65. package/dist/cjs/internals/signal.js.map +1 -0
  66. package/dist/{esm → cjs/internals}/trace.d.ts +1 -1
  67. package/dist/cjs/internals/trace.d.ts.map +1 -0
  68. package/dist/cjs/{trace.js → internals/trace.js} +1 -1
  69. package/dist/cjs/internals/trace.js.map +1 -0
  70. package/dist/cjs/internals/utils/equals.d.ts +4 -4
  71. package/dist/cjs/internals/utils/equals.d.ts.map +1 -1
  72. package/dist/cjs/internals/utils/equals.js.map +1 -1
  73. package/dist/cjs/internals/utils/type-utils.d.ts +0 -2
  74. package/dist/cjs/internals/utils/type-utils.d.ts.map +1 -1
  75. package/dist/cjs/internals/utils/type-utils.js +0 -5
  76. package/dist/cjs/internals/utils/type-utils.js.map +1 -1
  77. package/dist/cjs/internals/watch.d.ts +4 -0
  78. package/dist/cjs/internals/watch.d.ts.map +1 -0
  79. package/dist/cjs/internals/{connect.js → watch.js} +7 -7
  80. package/dist/cjs/internals/watch.js.map +1 -0
  81. package/dist/cjs/internals/weakref.d.ts.map +1 -0
  82. package/dist/cjs/internals/weakref.js.map +1 -0
  83. package/dist/cjs/react/component.d.ts +2 -0
  84. package/dist/cjs/react/component.d.ts.map +1 -0
  85. package/dist/cjs/react/component.js +40 -0
  86. package/dist/cjs/react/component.js.map +1 -0
  87. package/dist/cjs/react/context.d.ts +2 -1
  88. package/dist/cjs/react/context.d.ts.map +1 -1
  89. package/dist/cjs/react/context.js +10 -5
  90. package/dist/cjs/react/context.js.map +1 -1
  91. package/dist/cjs/react/index.d.ts +4 -4
  92. package/dist/cjs/react/index.d.ts.map +1 -1
  93. package/dist/cjs/react/index.js +11 -8
  94. package/dist/cjs/react/index.js.map +1 -1
  95. package/dist/cjs/react/provider.d.ts.map +1 -1
  96. package/dist/cjs/react/provider.js +1 -1
  97. package/dist/cjs/react/provider.js.map +1 -1
  98. package/dist/cjs/react/rendering.d.ts +0 -6
  99. package/dist/cjs/react/rendering.d.ts.map +1 -1
  100. package/dist/cjs/react/rendering.js +1 -19
  101. package/dist/cjs/react/rendering.js.map +1 -1
  102. package/dist/cjs/react/use-reactive.d.ts +7 -0
  103. package/dist/cjs/react/use-reactive.d.ts.map +1 -0
  104. package/dist/cjs/react/use-reactive.js +67 -0
  105. package/dist/cjs/react/use-reactive.js.map +1 -0
  106. package/dist/cjs/react/use-signal.d.ts +3 -0
  107. package/dist/cjs/react/use-signal.d.ts.map +1 -0
  108. package/dist/cjs/react/{state.js → use-signal.js} +5 -5
  109. package/dist/cjs/react/use-signal.js.map +1 -0
  110. package/dist/cjs/{transform.d.ts → transform/async.d.ts} +1 -1
  111. package/dist/cjs/transform/async.d.ts.map +1 -0
  112. package/dist/cjs/{transform.js → transform/async.js} +22 -9
  113. package/dist/cjs/transform/async.js.map +1 -0
  114. package/dist/cjs/transform/callback.d.ts +6 -0
  115. package/dist/cjs/transform/callback.d.ts.map +1 -0
  116. package/dist/cjs/transform/callback.js +259 -0
  117. package/dist/cjs/transform/callback.js.map +1 -0
  118. package/dist/cjs/transform/index.d.ts +5 -0
  119. package/dist/cjs/transform/index.d.ts.map +1 -0
  120. package/dist/cjs/transform/index.js +12 -0
  121. package/dist/cjs/transform/index.js.map +1 -0
  122. package/dist/cjs/transform/preset.d.ts +7 -0
  123. package/dist/cjs/transform/preset.d.ts.map +1 -0
  124. package/dist/cjs/transform/preset.js +20 -0
  125. package/dist/cjs/transform/preset.js.map +1 -0
  126. package/dist/cjs/transform/promise.d.ts +6 -0
  127. package/dist/cjs/transform/promise.d.ts.map +1 -0
  128. package/dist/cjs/transform/promise.js +129 -0
  129. package/dist/cjs/transform/promise.js.map +1 -0
  130. package/dist/cjs/types.d.ts +44 -63
  131. package/dist/cjs/types.d.ts.map +1 -1
  132. package/dist/cjs/utils.d.ts +2 -0
  133. package/dist/cjs/utils.d.ts.map +1 -0
  134. package/dist/cjs/utils.js +7 -0
  135. package/dist/cjs/utils.js.map +1 -0
  136. package/dist/esm/config.d.ts +1 -21
  137. package/dist/esm/config.d.ts.map +1 -1
  138. package/dist/esm/config.js +1 -29
  139. package/dist/esm/config.js.map +1 -1
  140. package/dist/esm/debug.d.ts +1 -1
  141. package/dist/esm/debug.d.ts.map +1 -1
  142. package/dist/esm/debug.js +1 -1
  143. package/dist/esm/debug.js.map +1 -1
  144. package/dist/esm/index.d.ts +5 -6
  145. package/dist/esm/index.d.ts.map +1 -1
  146. package/dist/esm/index.js +5 -6
  147. package/dist/esm/index.js.map +1 -1
  148. package/dist/esm/internals/async.d.ts +24 -19
  149. package/dist/esm/internals/async.d.ts.map +1 -1
  150. package/dist/esm/internals/async.js +253 -128
  151. package/dist/esm/internals/async.js.map +1 -1
  152. package/dist/esm/internals/callback.d.ts +13 -0
  153. package/dist/esm/internals/callback.d.ts.map +1 -0
  154. package/dist/esm/internals/callback.js +67 -0
  155. package/dist/esm/internals/callback.js.map +1 -0
  156. package/dist/esm/internals/config.d.ts +7 -0
  157. package/dist/esm/internals/config.d.ts.map +1 -0
  158. package/dist/esm/internals/config.js +11 -0
  159. package/dist/esm/internals/config.js.map +1 -0
  160. package/dist/esm/internals/consumer.d.ts +3 -3
  161. package/dist/esm/internals/consumer.d.ts.map +1 -1
  162. package/dist/esm/internals/consumer.js.map +1 -1
  163. package/dist/esm/internals/contexts.d.ts +15 -14
  164. package/dist/esm/internals/contexts.d.ts.map +1 -1
  165. package/dist/esm/internals/contexts.js +46 -46
  166. package/dist/esm/internals/contexts.js.map +1 -1
  167. package/dist/esm/internals/core-api.d.ts +15 -0
  168. package/dist/esm/internals/core-api.d.ts.map +1 -0
  169. package/dist/esm/internals/core-api.js +74 -0
  170. package/dist/esm/internals/core-api.js.map +1 -0
  171. package/dist/esm/internals/dirty.d.ts +3 -3
  172. package/dist/esm/internals/dirty.d.ts.map +1 -1
  173. package/dist/esm/internals/dirty.js +12 -12
  174. package/dist/esm/internals/dirty.js.map +1 -1
  175. package/dist/esm/internals/edge.d.ts +5 -5
  176. package/dist/esm/internals/edge.d.ts.map +1 -1
  177. package/dist/esm/internals/edge.js.map +1 -1
  178. package/dist/esm/internals/generators.d.ts +5 -0
  179. package/dist/esm/internals/generators.d.ts.map +1 -0
  180. package/dist/esm/internals/generators.js +79 -0
  181. package/dist/esm/internals/generators.js.map +1 -0
  182. package/dist/esm/internals/get.d.ts +5 -8
  183. package/dist/esm/internals/get.d.ts.map +1 -1
  184. package/dist/esm/internals/get.js +43 -100
  185. package/dist/esm/internals/get.js.map +1 -1
  186. package/dist/esm/internals/reactive.d.ts +77 -0
  187. package/dist/esm/internals/reactive.d.ts.map +1 -0
  188. package/dist/esm/internals/{derived.js → reactive.js} +41 -29
  189. package/dist/esm/internals/reactive.js.map +1 -0
  190. package/dist/esm/internals/scheduling.d.ts +7 -7
  191. package/dist/esm/internals/scheduling.d.ts.map +1 -1
  192. package/dist/esm/internals/scheduling.js +6 -6
  193. package/dist/esm/internals/scheduling.js.map +1 -1
  194. package/dist/esm/internals/signal.d.ts +20 -0
  195. package/dist/esm/internals/signal.d.ts.map +1 -0
  196. package/dist/esm/internals/{state.js → signal.js} +25 -22
  197. package/dist/esm/internals/signal.js.map +1 -0
  198. package/dist/{cjs → esm/internals}/trace.d.ts +1 -1
  199. package/dist/esm/internals/trace.d.ts.map +1 -0
  200. package/dist/esm/{trace.js → internals/trace.js} +1 -1
  201. package/dist/esm/internals/trace.js.map +1 -0
  202. package/dist/esm/internals/utils/equals.d.ts +4 -4
  203. package/dist/esm/internals/utils/equals.d.ts.map +1 -1
  204. package/dist/esm/internals/utils/equals.js.map +1 -1
  205. package/dist/esm/internals/utils/type-utils.d.ts +0 -2
  206. package/dist/esm/internals/utils/type-utils.d.ts.map +1 -1
  207. package/dist/esm/internals/utils/type-utils.js +0 -4
  208. package/dist/esm/internals/utils/type-utils.js.map +1 -1
  209. package/dist/esm/internals/watch.d.ts +4 -0
  210. package/dist/esm/internals/watch.d.ts.map +1 -0
  211. package/dist/esm/internals/{connect.js → watch.js} +7 -7
  212. package/dist/esm/internals/watch.js.map +1 -0
  213. package/dist/esm/internals/weakref.d.ts.map +1 -0
  214. package/dist/esm/internals/weakref.js.map +1 -0
  215. package/dist/esm/react/component.d.ts +2 -0
  216. package/dist/esm/react/component.d.ts.map +1 -0
  217. package/dist/esm/react/component.js +37 -0
  218. package/dist/esm/react/component.js.map +1 -0
  219. package/dist/esm/react/context.d.ts +2 -1
  220. package/dist/esm/react/context.d.ts.map +1 -1
  221. package/dist/esm/react/context.js +10 -6
  222. package/dist/esm/react/context.js.map +1 -1
  223. package/dist/esm/react/index.d.ts +4 -4
  224. package/dist/esm/react/index.d.ts.map +1 -1
  225. package/dist/esm/react/index.js +4 -4
  226. package/dist/esm/react/index.js.map +1 -1
  227. package/dist/esm/react/provider.d.ts.map +1 -1
  228. package/dist/esm/react/provider.js +2 -2
  229. package/dist/esm/react/provider.js.map +1 -1
  230. package/dist/esm/react/rendering.d.ts +0 -6
  231. package/dist/esm/react/rendering.d.ts.map +1 -1
  232. package/dist/esm/react/rendering.js +1 -17
  233. package/dist/esm/react/rendering.js.map +1 -1
  234. package/dist/esm/react/use-reactive.d.ts +7 -0
  235. package/dist/esm/react/use-reactive.d.ts.map +1 -0
  236. package/dist/esm/react/use-reactive.js +64 -0
  237. package/dist/esm/react/use-reactive.js.map +1 -0
  238. package/dist/esm/react/use-signal.d.ts +3 -0
  239. package/dist/esm/react/use-signal.d.ts.map +1 -0
  240. package/dist/esm/react/use-signal.js +10 -0
  241. package/dist/esm/react/use-signal.js.map +1 -0
  242. package/dist/esm/{transform.d.ts → transform/async.d.ts} +1 -1
  243. package/dist/esm/transform/async.d.ts.map +1 -0
  244. package/dist/esm/{transform.js → transform/async.js} +22 -9
  245. package/dist/esm/transform/async.js.map +1 -0
  246. package/dist/esm/transform/callback.d.ts +6 -0
  247. package/dist/esm/transform/callback.d.ts.map +1 -0
  248. package/dist/esm/transform/callback.js +256 -0
  249. package/dist/esm/transform/callback.js.map +1 -0
  250. package/dist/esm/transform/index.d.ts +5 -0
  251. package/dist/esm/transform/index.d.ts.map +1 -0
  252. package/dist/esm/transform/index.js +5 -0
  253. package/dist/esm/transform/index.js.map +1 -0
  254. package/dist/esm/transform/preset.d.ts +7 -0
  255. package/dist/esm/transform/preset.d.ts.map +1 -0
  256. package/dist/esm/transform/preset.js +17 -0
  257. package/dist/esm/transform/preset.js.map +1 -0
  258. package/dist/esm/transform/promise.d.ts +6 -0
  259. package/dist/esm/transform/promise.d.ts.map +1 -0
  260. package/dist/esm/transform/promise.js +126 -0
  261. package/dist/esm/transform/promise.js.map +1 -0
  262. package/dist/esm/types.d.ts +44 -63
  263. package/dist/esm/types.d.ts.map +1 -1
  264. package/dist/esm/utils.d.ts +2 -0
  265. package/dist/esm/utils.d.ts.map +1 -0
  266. package/dist/esm/utils.js +2 -0
  267. package/dist/esm/utils.js.map +1 -0
  268. package/package.json +56 -58
  269. package/react.js +0 -4
  270. package/transform.js +1 -5
  271. package/utils.js +15 -0
  272. package/.turbo/turbo-build.log +0 -12
  273. package/dist/cjs/hooks.d.ts +0 -16
  274. package/dist/cjs/hooks.d.ts.map +0 -1
  275. package/dist/cjs/hooks.js +0 -44
  276. package/dist/cjs/hooks.js.map +0 -1
  277. package/dist/cjs/internals/connect.d.ts +0 -4
  278. package/dist/cjs/internals/connect.d.ts.map +0 -1
  279. package/dist/cjs/internals/connect.js.map +0 -1
  280. package/dist/cjs/internals/derived.d.ts +0 -76
  281. package/dist/cjs/internals/derived.d.ts.map +0 -1
  282. package/dist/cjs/internals/derived.js.map +0 -1
  283. package/dist/cjs/internals/state.d.ts +0 -18
  284. package/dist/cjs/internals/state.d.ts.map +0 -1
  285. package/dist/cjs/internals/state.js.map +0 -1
  286. package/dist/cjs/react/setup.d.ts +0 -2
  287. package/dist/cjs/react/setup.d.ts.map +0 -1
  288. package/dist/cjs/react/setup.js +0 -14
  289. package/dist/cjs/react/setup.js.map +0 -1
  290. package/dist/cjs/react/signal-value.d.ts +0 -6
  291. package/dist/cjs/react/signal-value.d.ts.map +0 -1
  292. package/dist/cjs/react/signal-value.js +0 -37
  293. package/dist/cjs/react/signal-value.js.map +0 -1
  294. package/dist/cjs/react/state.d.ts +0 -3
  295. package/dist/cjs/react/state.d.ts.map +0 -1
  296. package/dist/cjs/react/state.js.map +0 -1
  297. package/dist/cjs/trace.d.ts.map +0 -1
  298. package/dist/cjs/trace.js.map +0 -1
  299. package/dist/cjs/transform.d.ts.map +0 -1
  300. package/dist/cjs/transform.js.map +0 -1
  301. package/dist/cjs/weakref.d.ts.map +0 -1
  302. package/dist/cjs/weakref.js.map +0 -1
  303. package/dist/esm/hooks.d.ts +0 -16
  304. package/dist/esm/hooks.d.ts.map +0 -1
  305. package/dist/esm/hooks.js +0 -37
  306. package/dist/esm/hooks.js.map +0 -1
  307. package/dist/esm/internals/connect.d.ts +0 -4
  308. package/dist/esm/internals/connect.d.ts.map +0 -1
  309. package/dist/esm/internals/connect.js.map +0 -1
  310. package/dist/esm/internals/derived.d.ts +0 -76
  311. package/dist/esm/internals/derived.d.ts.map +0 -1
  312. package/dist/esm/internals/derived.js.map +0 -1
  313. package/dist/esm/internals/state.d.ts +0 -18
  314. package/dist/esm/internals/state.d.ts.map +0 -1
  315. package/dist/esm/internals/state.js.map +0 -1
  316. package/dist/esm/react/setup.d.ts +0 -2
  317. package/dist/esm/react/setup.d.ts.map +0 -1
  318. package/dist/esm/react/setup.js +0 -11
  319. package/dist/esm/react/setup.js.map +0 -1
  320. package/dist/esm/react/signal-value.d.ts +0 -6
  321. package/dist/esm/react/signal-value.d.ts.map +0 -1
  322. package/dist/esm/react/signal-value.js +0 -33
  323. package/dist/esm/react/signal-value.js.map +0 -1
  324. package/dist/esm/react/state.d.ts +0 -3
  325. package/dist/esm/react/state.d.ts.map +0 -1
  326. package/dist/esm/react/state.js +0 -10
  327. package/dist/esm/react/state.js.map +0 -1
  328. package/dist/esm/trace.d.ts.map +0 -1
  329. package/dist/esm/trace.js.map +0 -1
  330. package/dist/esm/transform.d.ts.map +0 -1
  331. package/dist/esm/transform.js.map +0 -1
  332. package/dist/esm/weakref.d.ts.map +0 -1
  333. package/dist/esm/weakref.js.map +0 -1
  334. package/src/__tests__/__snapshots__/context.test.ts.snap +0 -2101
  335. package/src/__tests__/__snapshots__/nesting.test.ts.snap +0 -16201
  336. package/src/__tests__/__snapshots__/params-and-state.test.ts.snap +0 -1879
  337. package/src/__tests__/async-task.test.ts +0 -327
  338. package/src/__tests__/context.test.ts +0 -619
  339. package/src/__tests__/gc.test.ts +0 -256
  340. package/src/__tests__/nesting.test.ts +0 -298
  341. package/src/__tests__/params-and-state.test.ts +0 -230
  342. package/src/__tests__/reactive-async.test.ts +0 -548
  343. package/src/__tests__/reactive-sync.test.ts +0 -130
  344. package/src/__tests__/subscription.test.ts +0 -510
  345. package/src/__tests__/utils/async.ts +0 -6
  346. package/src/__tests__/utils/instrumented-hooks.ts +0 -410
  347. package/src/__tests__/utils/permute.ts +0 -85
  348. package/src/config.ts +0 -54
  349. package/src/debug.ts +0 -14
  350. package/src/hooks.ts +0 -82
  351. package/src/index.ts +0 -21
  352. package/src/internals/async.ts +0 -563
  353. package/src/internals/connect.ts +0 -49
  354. package/src/internals/consumer.ts +0 -13
  355. package/src/internals/contexts.ts +0 -177
  356. package/src/internals/derived.ts +0 -217
  357. package/src/internals/dirty.ts +0 -91
  358. package/src/internals/edge.ts +0 -109
  359. package/src/internals/get.ts +0 -298
  360. package/src/internals/scheduling.ts +0 -160
  361. package/src/internals/state.ts +0 -111
  362. package/src/internals/utils/debug-name.ts +0 -14
  363. package/src/internals/utils/equals.ts +0 -12
  364. package/src/internals/utils/hash.ts +0 -221
  365. package/src/internals/utils/stringify.ts +0 -57
  366. package/src/internals/utils/type-utils.ts +0 -19
  367. package/src/react/__tests__/async.test.tsx +0 -704
  368. package/src/react/__tests__/basic.test.tsx +0 -95
  369. package/src/react/__tests__/contexts.test.tsx +0 -181
  370. package/src/react/__tests__/subscriptions.test.tsx +0 -49
  371. package/src/react/__tests__/utils.tsx +0 -40
  372. package/src/react/context.ts +0 -14
  373. package/src/react/index.ts +0 -6
  374. package/src/react/provider.tsx +0 -18
  375. package/src/react/rendering.ts +0 -43
  376. package/src/react/setup.ts +0 -11
  377. package/src/react/signal-value.ts +0 -50
  378. package/src/react/state.ts +0 -13
  379. package/src/trace.ts +0 -454
  380. package/src/transform.ts +0 -113
  381. package/src/types.ts +0 -115
  382. package/src/weakref.ts +0 -9
  383. package/tsconfig.json +0 -13
  384. package/vitest.workspace.ts +0 -61
  385. /package/dist/cjs/{weakref.d.ts → internals/weakref.d.ts} +0 -0
  386. /package/dist/cjs/{weakref.js → internals/weakref.js} +0 -0
  387. /package/dist/esm/{weakref.d.ts → internals/weakref.d.ts} +0 -0
  388. /package/dist/esm/{weakref.js → internals/weakref.js} +0 -0
@@ -2,23 +2,37 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ReactivePromise = void 0;
4
4
  exports.isReactivePromise = isReactivePromise;
5
- exports.isReactiveTask = isReactiveTask;
6
- exports.isReactiveSubscription = isReactiveSubscription;
7
- const derived_js_1 = require("./derived.js");
5
+ exports.isRelay = isRelay;
6
+ exports.createPromise = createPromise;
7
+ exports.createRelay = createRelay;
8
+ exports.createTask = createTask;
9
+ const reactive_js_1 = require("./reactive.js");
8
10
  const get_js_1 = require("./get.js");
9
11
  const dirty_js_1 = require("./dirty.js");
10
12
  const scheduling_js_1 = require("./scheduling.js");
11
13
  const edge_js_1 = require("./edge.js");
12
- const contexts_js_1 = require("./contexts.js");
13
- const state_js_1 = require("./state.js");
14
- const type_utils_js_1 = require("./utils/type-utils.js");
14
+ const signal_js_1 = require("./signal.js");
15
15
  const equals_js_1 = require("./utils/equals.js");
16
+ const consumer_js_1 = require("./consumer.js");
17
+ const callback_js_1 = require("./callback.js");
18
+ const arrayFrom = Array.from;
19
+ function isThenable(v) {
20
+ return v !== null && typeof v === 'object' && typeof v.then === 'function';
21
+ }
22
+ function thenLoop(v, onFulfill, onReject) {
23
+ if (isThenable(v)) {
24
+ v.then(onFulfill, onReject);
25
+ }
26
+ else {
27
+ onFulfill(v);
28
+ }
29
+ }
16
30
  class ReactivePromise {
17
31
  _value = undefined;
18
32
  _error = undefined;
19
- _flags = 0;
33
+ _flags = 1 /* AsyncFlags.Pending */;
20
34
  _signal = undefined;
21
- _equals;
35
+ _equals = equals_js_1.DEFAULT_EQUALS;
22
36
  _promise;
23
37
  _pending = [];
24
38
  _stateSubs = new Map();
@@ -27,113 +41,184 @@ class ReactivePromise {
27
41
  // with non-signal code, it's sometimes needed to entangle changes to the promise.
28
42
  // For example, in React we need to entangle each promise immediately after it
29
43
  // was used because we can't dynamically call hooks.
30
- _version = (0, state_js_1.createStateSignal)(0);
31
- _boundRun;
32
- static createPromise(promise, signal, initValue) {
44
+ _version = (0, signal_js_1.signal)(0);
45
+ // Private but exposed for the ReactiveTask interface so we don't have to create a new
46
+ // class and make all this code polypmorphic
47
+ run = undefined;
48
+ constructor(executor) {
49
+ // If an executor is provided, behave like Promise constructor
50
+ if (executor) {
51
+ const resolve = (value) => {
52
+ if (value && typeof value.then === 'function') {
53
+ this._setPromise(value);
54
+ }
55
+ else {
56
+ this._setValue(value);
57
+ }
58
+ };
59
+ const reject = (reason) => {
60
+ this._setError(reason);
61
+ };
62
+ try {
63
+ executor(resolve, reject);
64
+ }
65
+ catch (e) {
66
+ reject(e);
67
+ }
68
+ }
69
+ }
70
+ static all(values) {
33
71
  const p = new ReactivePromise();
34
- p._signal = signal;
35
- p._equals = signal?.def.equals ?? equals_js_1.DEFAULT_EQUALS;
36
- p._initFlags(1 /* AsyncFlags.Pending */, initValue);
37
- if (promise) {
38
- p._setPromise(promise);
72
+ const arr = arrayFrom(values);
73
+ const len = arr.length;
74
+ if (len === 0) {
75
+ p._setValue([]);
76
+ return p;
77
+ }
78
+ const results = new Array(len);
79
+ let remaining = len;
80
+ let rejected = false;
81
+ const onFulfillAt = (i) => (v) => {
82
+ if (rejected)
83
+ return;
84
+ results[i] = v;
85
+ if (--remaining === 0)
86
+ p._setValue(results);
87
+ };
88
+ const onReject = (r) => {
89
+ if (rejected)
90
+ return;
91
+ rejected = true;
92
+ p._setError(r);
93
+ };
94
+ for (let i = 0; i < len; i++) {
95
+ thenLoop(arr[i], onFulfillAt(i), onReject);
39
96
  }
40
97
  return p;
41
98
  }
42
- static createSubscription(subscribe, scope, opts) {
99
+ static race(values) {
43
100
  const p = new ReactivePromise();
44
- const initValue = opts?.initValue;
45
- let active = false;
46
- let currentSub;
47
- const unsubscribe = () => {
48
- if (typeof currentSub === 'function') {
49
- currentSub();
50
- }
51
- else if (currentSub !== undefined) {
52
- currentSub.unsubscribe?.();
53
- }
54
- const signal = p._signal;
55
- // Reset the signal state, preparing it for next activation
56
- signal.subs = new Map();
57
- signal._state = 2 /* SignalState.Dirty */;
58
- signal.watchCount = 0;
59
- active = false;
60
- currentSub = undefined;
61
- };
62
- const state = {
63
- get: () => p._value,
64
- set: (value) => {
65
- if (value !== null && typeof value === 'object' && (0, type_utils_js_1.isPromise)(value)) {
66
- p._setPromise(value);
67
- }
68
- else {
69
- p._setValue(value);
70
- }
71
- },
72
- setError: (error) => {
73
- p._setError(error);
74
- },
101
+ const arr = arrayFrom(values);
102
+ const len = arr.length;
103
+ if (len === 0)
104
+ return p;
105
+ let settled = false;
106
+ const onFulfill = (v) => {
107
+ if (settled)
108
+ return;
109
+ settled = true;
110
+ p._setValue(v);
75
111
  };
76
- const def = {
77
- compute: () => {
78
- if (active === false) {
79
- currentSub = subscribe(state);
80
- active = true;
81
- }
82
- else if (typeof currentSub === 'function' || currentSub === undefined) {
83
- currentSub?.();
84
- currentSub = subscribe(state);
85
- }
86
- else {
87
- currentSub.update?.();
88
- }
89
- return unsubscribe;
90
- },
91
- equals: equals_js_1.DEFAULT_EQUALS,
92
- isSubscription: true,
112
+ const onReject = (r) => {
113
+ if (settled)
114
+ return;
115
+ settled = true;
116
+ p._setError(r);
93
117
  };
94
- p._signal = (0, derived_js_1.createDerivedSignal)(def, [], undefined, scope, opts);
95
- p._equals = (0, equals_js_1.equalsFrom)(opts?.equals);
96
- p._initFlags(128 /* AsyncFlags.isSubscription */ | 1 /* AsyncFlags.Pending */, initValue);
118
+ for (let i = 0; i < len; i++) {
119
+ thenLoop(arr[i], onFulfill, onReject);
120
+ }
97
121
  return p;
98
122
  }
99
- static createTask(task, scope, opts) {
123
+ static any(values) {
100
124
  const p = new ReactivePromise();
101
- const initValue = opts?.initValue;
102
- p._signal = (...args) => {
103
- return (0, contexts_js_1.withScope)(scope, () => {
104
- const result = task(...args);
105
- return typeof result === 'object' && result !== null && (0, type_utils_js_1.isGeneratorResult)(result)
106
- ? (0, get_js_1.generatorResultToPromise)(result, undefined)
107
- : result;
108
- });
125
+ const arr = arrayFrom(values);
126
+ const len = arr.length;
127
+ if (len === 0) {
128
+ // Like native Promise.any([]): reject with AggregateError
129
+ p._setError(new AggregateError([], 'No promises were provided to ReactivePromise.any'));
130
+ return p;
131
+ }
132
+ let pending = len;
133
+ const errors = new Array(len);
134
+ let fulfilled = false;
135
+ const onFulfill = (value) => {
136
+ if (fulfilled)
137
+ return;
138
+ fulfilled = true;
139
+ p._setValue(value);
109
140
  };
110
- p._equals = (0, equals_js_1.equalsFrom)(opts?.equals);
111
- p._initFlags(64 /* AsyncFlags.isRunnable */, initValue);
141
+ const onRejectAt = (index) => (reason) => {
142
+ if (fulfilled)
143
+ return;
144
+ errors[index] = reason;
145
+ if (--pending === 0) {
146
+ p._setError(new AggregateError(errors, 'All promises were rejected in ReactivePromise.any'));
147
+ }
148
+ };
149
+ for (let i = 0; i < len; i++) {
150
+ thenLoop(arr[i], onFulfill, onRejectAt(i));
151
+ }
112
152
  return p;
113
153
  }
114
- _initFlags(baseFlags, initValue) {
115
- let flags = baseFlags;
116
- if (initValue !== undefined) {
117
- flags |= 8 /* AsyncFlags.Ready */;
154
+ static allSettled(values) {
155
+ const p = new ReactivePromise();
156
+ const arr = arrayFrom(values);
157
+ const len = arr.length;
158
+ if (len === 0) {
159
+ p._setValue([]);
160
+ return p;
118
161
  }
119
- this._flags = flags;
120
- this._value = initValue;
162
+ const results = new Array(len);
163
+ let remaining = len;
164
+ const onFulfillAt = (index) => (value) => {
165
+ results[index] = { status: 'fulfilled', value };
166
+ if (--remaining === 0)
167
+ p._setValue(results);
168
+ };
169
+ const onRejectAt = (index) => (reason) => {
170
+ results[index] = { status: 'rejected', reason };
171
+ if (--remaining === 0)
172
+ p._setValue(results);
173
+ };
174
+ for (let i = 0; i < len; i++) {
175
+ thenLoop(arr[i], onFulfillAt(i), onRejectAt(i));
176
+ }
177
+ return p;
178
+ }
179
+ static resolve(value) {
180
+ if (value instanceof ReactivePromise)
181
+ return value;
182
+ return new ReactivePromise(resolve => resolve(value));
183
+ }
184
+ static reject(reason) {
185
+ return new ReactivePromise((_resolve, reject) => reject(reason));
186
+ }
187
+ static withResolvers() {
188
+ const p = new ReactivePromise();
189
+ p._equals = equals_js_1.DEFAULT_EQUALS;
190
+ p._initFlags(1 /* AsyncFlags.Pending */);
191
+ const resolve = (value) => {
192
+ if (value && typeof value.then === 'function') {
193
+ p._setPromise(value);
194
+ }
195
+ else {
196
+ p._setValue(value);
197
+ }
198
+ };
199
+ const reject = (reason) => {
200
+ p._setError(reason);
201
+ };
202
+ return { promise: p, resolve, reject };
203
+ }
204
+ _initFlags(baseFlags) {
205
+ this._flags = baseFlags;
121
206
  }
122
207
  _consumeFlags(flags) {
123
- if (get_js_1.CURRENT_CONSUMER === undefined)
208
+ if (consumer_js_1.CURRENT_CONSUMER === undefined)
124
209
  return;
125
- if ((this._flags & 128 /* AsyncFlags.isSubscription */) !== 0) {
210
+ if ((this._flags & 128 /* AsyncFlags.isRelay */) !== 0) {
126
211
  this._connect();
127
212
  }
128
- const ref = get_js_1.CURRENT_CONSUMER.ref;
213
+ const ref = consumer_js_1.CURRENT_CONSUMER.ref;
129
214
  const subs = this._stateSubs;
130
215
  const subbedFlags = subs.get(ref) ?? 0;
131
216
  subs.set(ref, subbedFlags | flags);
132
217
  }
133
218
  _connect() {
134
219
  const signal = this._signal;
135
- if (get_js_1.CURRENT_CONSUMER?.watchCount === 0) {
136
- const { ref, computedCount, deps } = get_js_1.CURRENT_CONSUMER;
220
+ if (consumer_js_1.CURRENT_CONSUMER?.watchCount === 0) {
221
+ const { ref, computedCount, deps } = consumer_js_1.CURRENT_CONSUMER;
137
222
  const prevEdge = deps.get(signal);
138
223
  if (prevEdge?.consumedAt !== computedCount) {
139
224
  const newEdge = (0, edge_js_1.createEdge)(prevEdge, 0 /* EdgeType.Signal */, signal, signal.updatedCount, computedCount);
@@ -246,7 +331,7 @@ class ReactivePromise {
246
331
  // consumers are not notified and end up back in the same state as before the promise
247
332
  // was set (because nothing changed), and instead they will be scheduled to continue
248
333
  // the computation from where they left off.
249
- const newState = dirty ? 2 /* SignalState.Dirty */ : 3 /* SignalState.MaybeDirty */;
334
+ const newState = dirty ? 2 /* ReactiveFnState.Dirty */ : 3 /* ReactiveFnState.MaybeDirty */;
250
335
  for (const ref of awaitSubs.keys()) {
251
336
  const signal = ref.deref();
252
337
  if (signal === undefined) {
@@ -284,52 +369,18 @@ class ReactivePromise {
284
369
  this._consumeFlags(6 /* AsyncFlags.Settled */);
285
370
  return (this._flags & 6 /* AsyncFlags.Settled */) !== 0;
286
371
  }
287
- // Aliases for backwards compatibility (TODO: Figure out how to do this better)
288
- get data() {
289
- return this.value;
290
- }
291
- get isFetching() {
292
- return this.isPending;
293
- }
294
- get isSuccess() {
295
- return this.isResolved;
296
- }
297
- get isError() {
298
- return this.isRejected;
299
- }
300
- get isFetched() {
301
- return this.isSettled;
302
- }
303
- _run(...args) {
304
- const flags = this._flags;
305
- const signal = this._signal;
306
- if ((flags & 64 /* AsyncFlags.isRunnable */) !== 0) {
307
- this._setPromise(signal(...args));
308
- }
309
- else if (signal) {
310
- (0, dirty_js_1.dirtySignal)(signal);
311
- }
312
- else {
313
- throw new Error('ReactivePromise is not runnable. If you are using run() on a ReactivePromise, make sure you used `task` to create this promise. If you are using rerun(), make sure its a promise that was generated by a reactive async function.');
314
- }
315
- return this;
316
- }
317
- run = this._run.bind(this);
318
- get rerun() {
319
- return this.run;
320
- }
321
372
  then(onfulfilled, onrejected) {
322
373
  const flags = this._flags;
323
374
  // Create a new Promise that will be returned
324
375
  return new Promise((resolve, reject) => {
325
376
  let ref, edge;
326
- if (get_js_1.CURRENT_CONSUMER !== undefined) {
327
- if ((flags & 128 /* AsyncFlags.isSubscription */) !== 0) {
377
+ if (consumer_js_1.CURRENT_CONSUMER !== undefined) {
378
+ if ((flags & 128 /* AsyncFlags.isRelay */) !== 0) {
328
379
  this._connect();
329
380
  }
330
- ref = get_js_1.CURRENT_CONSUMER.ref;
331
- const prevEdge = this._awaitSubs.get(ref) ?? (0, edge_js_1.findAndRemoveDirty)(get_js_1.CURRENT_CONSUMER, this);
332
- edge = (0, edge_js_1.createEdge)(prevEdge, 1 /* EdgeType.Promise */, this, -1, get_js_1.CURRENT_CONSUMER.computedCount);
381
+ ref = consumer_js_1.CURRENT_CONSUMER.ref;
382
+ const prevEdge = this._awaitSubs.get(ref) ?? (0, edge_js_1.findAndRemoveDirty)(consumer_js_1.CURRENT_CONSUMER, this);
383
+ edge = (0, edge_js_1.createEdge)(prevEdge, 1 /* EdgeType.Promise */, this, -1, consumer_js_1.CURRENT_CONSUMER.computedCount);
333
384
  }
334
385
  // Create wrapper functions that will call the original callbacks and then resolve/reject the new Promise
335
386
  const wrappedFulfilled = onfulfilled
@@ -383,17 +434,93 @@ class ReactivePromise {
383
434
  });
384
435
  }
385
436
  get [Symbol.toStringTag]() {
386
- return 'ReactivePromise';
437
+ return `ReactivePromise`;
387
438
  }
388
439
  }
389
440
  exports.ReactivePromise = ReactivePromise;
390
- function isReactivePromise(obj) {
391
- return obj instanceof ReactivePromise && (obj['_flags'] & (128 /* AsyncFlags.isSubscription */ & 64 /* AsyncFlags.isRunnable */)) === 0;
441
+ function isReactivePromise(value) {
442
+ return value.constructor === ReactivePromise;
392
443
  }
393
- function isReactiveTask(obj) {
394
- return obj instanceof ReactivePromise && (obj['_flags'] & 64 /* AsyncFlags.isRunnable */) !== 0;
444
+ function isRelay(obj) {
445
+ return obj instanceof ReactivePromise && (obj['_flags'] & 128 /* AsyncFlags.isRelay */) !== 0;
395
446
  }
396
- function isReactiveSubscription(obj) {
397
- return obj instanceof ReactivePromise && (obj['_flags'] & 128 /* AsyncFlags.isSubscription */) !== 0;
447
+ function createPromise(promise, signal) {
448
+ const p = new ReactivePromise();
449
+ p['_signal'] = signal;
450
+ p['_equals'] = signal.def.equals;
451
+ p['_initFlags'](1 /* AsyncFlags.Pending */);
452
+ p['_setPromise'](promise);
453
+ return p;
454
+ }
455
+ function createRelay(activate, scope, opts) {
456
+ const p = new ReactivePromise();
457
+ let active = false;
458
+ let currentSub;
459
+ const unsubscribe = () => {
460
+ if (typeof currentSub === 'function') {
461
+ currentSub();
462
+ }
463
+ else if (currentSub !== undefined) {
464
+ currentSub.deactivate?.();
465
+ }
466
+ const signal = p['_signal'];
467
+ // Reset the signal state, preparing it for next activation
468
+ signal.subs = new Map();
469
+ signal._state = 2 /* ReactiveFnState.Dirty */;
470
+ signal.watchCount = 0;
471
+ active = false;
472
+ currentSub = undefined;
473
+ };
474
+ const state = {
475
+ get value() {
476
+ return p['_value'];
477
+ },
478
+ set value(value) {
479
+ p['_setValue'](value);
480
+ },
481
+ setPromise: (promise) => {
482
+ p['_setPromise'](promise);
483
+ },
484
+ setError: (error) => {
485
+ p['_setError'](error);
486
+ },
487
+ };
488
+ const def = {
489
+ compute: () => {
490
+ if (active === false) {
491
+ currentSub = activate(state);
492
+ active = true;
493
+ }
494
+ else if (typeof currentSub === 'function' || currentSub === undefined) {
495
+ currentSub?.();
496
+ currentSub = activate(state);
497
+ }
498
+ else {
499
+ currentSub.update?.();
500
+ }
501
+ return unsubscribe;
502
+ },
503
+ equals: equals_js_1.DEFAULT_EQUALS,
504
+ isRelay: true,
505
+ paramKey: opts?.paramKey,
506
+ id: opts?.id,
507
+ desc: opts?.desc,
508
+ tracer: undefined,
509
+ };
510
+ p['_signal'] = (0, reactive_js_1.createReactiveFnSignal)(def, [], undefined, scope);
511
+ p['_equals'] = (0, equals_js_1.equalsFrom)(opts?.equals);
512
+ p['_initFlags'](128 /* AsyncFlags.isRelay */ | 1 /* AsyncFlags.Pending */);
513
+ return p;
514
+ }
515
+ function createTask(task, scope, opts) {
516
+ const p = new ReactivePromise();
517
+ const { fn } = (0, callback_js_1.createCallback)(task, scope);
518
+ p['_equals'] = (0, equals_js_1.equalsFrom)(opts?.equals);
519
+ p['_initFlags'](64 /* AsyncFlags.isRunnable */);
520
+ p['run'] = ((...args) => {
521
+ p._setPromise(fn(...args));
522
+ return p;
523
+ });
524
+ return p;
398
525
  }
399
526
  //# sourceMappingURL=async.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"async.js","sourceRoot":"","sources":["../../../src/internals/async.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"async.js","sourceRoot":"","sources":["../../../src/internals/async.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ import { SignalScope } from './contexts.js';
2
+ export declare class Callback<T extends Function = Function> {
3
+ scope: SignalScope;
4
+ deps: unknown[] | undefined;
5
+ _callbacks: Callback[] | undefined;
6
+ fn: T;
7
+ constructor(fn: T, scope: SignalScope, deps?: unknown[]);
8
+ get callbacks(): Callback<Function>[];
9
+ setFn(fn: T): void;
10
+ }
11
+ export declare function createCallback<T extends Function>(fn: T, scope: SignalScope, deps?: unknown[] | undefined): Callback<T>;
12
+ export declare function callback<T extends Function>(fn: T, idx: number, deps?: unknown[] | undefined): T;
13
+ //# sourceMappingURL=callback.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"callback.d.ts","sourceRoot":"","sources":["../../../src/internals/callback.ts"],"names":[],"mappings":"AACA,OAAO,EAAmD,WAAW,EAAE,MAAM,eAAe,CAAC;AAO7F,qBAAa,QAAQ,CAAC,CAAC,SAAS,QAAQ,GAAG,QAAQ;IACjD,KAAK,EAAE,WAAW,CAAC;IACnB,IAAI,EAAE,OAAO,EAAE,GAAG,SAAS,CAAC;IAC5B,UAAU,EAAE,QAAQ,EAAE,GAAG,SAAS,CAAC;IACnC,EAAE,EAAG,CAAC,CAAC;gBAEK,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,CAAC,EAAE,OAAO,EAAE;IAOvD,IAAI,SAAS,yBAEZ;IAED,KAAK,CAAC,EAAE,EAAE,CAAC;CAsBZ;AAGD,wBAAgB,cAAc,CAAC,CAAC,SAAS,QAAQ,EAC/C,EAAE,EAAE,CAAC,EACL,KAAK,EAAE,WAAW,EAClB,IAAI,CAAC,EAAE,OAAO,EAAE,GAAG,SAAS,GAC3B,QAAQ,CAAC,CAAC,CAAC,CAEb;AAGD,wBAAgB,QAAQ,CAAC,CAAC,SAAS,QAAQ,EAAE,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,EAAE,GAAG,SAAS,GAAG,CAAC,CAuBhG"}
@@ -0,0 +1,73 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Callback = void 0;
4
+ exports.createCallback = createCallback;
5
+ exports.callback = callback;
6
+ const consumer_js_1 = require("./consumer.js");
7
+ const contexts_js_1 = require("./contexts.js");
8
+ const generators_js_1 = require("./generators.js");
9
+ const type_utils_js_1 = require("./utils/type-utils.js");
10
+ let CURRENT_CALLBACK = undefined;
11
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-function-type
12
+ class Callback {
13
+ scope;
14
+ deps;
15
+ _callbacks;
16
+ fn;
17
+ constructor(fn, scope, deps) {
18
+ this.deps = deps;
19
+ this.scope = scope;
20
+ this.setFn(fn);
21
+ }
22
+ get callbacks() {
23
+ return this._callbacks ?? (this._callbacks = []);
24
+ }
25
+ setFn(fn) {
26
+ this.fn = ((...args) => {
27
+ const scope = this.scope;
28
+ const prevScope = contexts_js_1.CURRENT_SCOPE;
29
+ const prevCallback = CURRENT_CALLBACK;
30
+ try {
31
+ // eslint-disable-next-line @typescript-eslint/no-this-alias
32
+ CURRENT_CALLBACK = this;
33
+ (0, contexts_js_1.setCurrentScope)(scope);
34
+ const result = fn(...args);
35
+ return typeof result === 'object' && result !== null && (0, type_utils_js_1.isGeneratorResult)(result)
36
+ ? (0, generators_js_1.generatorResultToPromiseWithScope)(result, scope)
37
+ : result;
38
+ }
39
+ finally {
40
+ CURRENT_CALLBACK = prevCallback;
41
+ (0, contexts_js_1.setCurrentScope)(prevScope);
42
+ }
43
+ });
44
+ }
45
+ }
46
+ exports.Callback = Callback;
47
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-function-type
48
+ function createCallback(fn, scope, deps) {
49
+ return new Callback(fn, scope, deps);
50
+ }
51
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-function-type
52
+ function callback(fn, idx, deps) {
53
+ let callbacks;
54
+ if (CURRENT_CALLBACK !== undefined) {
55
+ callbacks = CURRENT_CALLBACK.callbacks;
56
+ }
57
+ else {
58
+ if (consumer_js_1.CURRENT_CONSUMER === undefined) {
59
+ throw new Error('callback must be used within a reactive function, component, or nested callback');
60
+ }
61
+ callbacks = consumer_js_1.CURRENT_CONSUMER.callbacks ?? (consumer_js_1.CURRENT_CONSUMER.callbacks = []);
62
+ }
63
+ let callback = callbacks[idx];
64
+ if (callback === undefined) {
65
+ callback = callbacks[idx] = createCallback(fn, (0, contexts_js_1.getCurrentScope)(), deps);
66
+ }
67
+ else if (deps && callback.deps?.findIndex((dep, i) => dep !== deps[i]) !== -1) {
68
+ callback.setFn(fn);
69
+ callback.deps = deps;
70
+ }
71
+ return callback.fn;
72
+ }
73
+ //# sourceMappingURL=callback.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"callback.js","sourceRoot":"","sources":["../../../src/internals/callback.ts"],"names":[],"mappings":";;;AAkDA,wCAMC;AAGD,4BAuBC;AAlFD,+CAAiD;AACjD,+CAA6F;AAC7F,mDAAoE;AACpE,yDAA0D;AAE1D,IAAI,gBAAgB,GAAyB,SAAS,CAAC;AAEvD,sEAAsE;AACtE,MAAa,QAAQ;IACnB,KAAK,CAAc;IACnB,IAAI,CAAwB;IAC5B,UAAU,CAAyB;IACnC,EAAE,CAAK;IAEP,YAAY,EAAK,EAAE,KAAkB,EAAE,IAAgB;QACrD,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QAEnB,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC;IAED,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,UAAU,IAAI,CAAC,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC,CAAC;IACnD,CAAC;IAED,KAAK,CAAC,EAAK;QACT,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC,GAAG,IAAe,EAAE,EAAE;YAChC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;YACzB,MAAM,SAAS,GAAG,2BAAa,CAAC;YAChC,MAAM,YAAY,GAAG,gBAAgB,CAAC;YAEtC,IAAI,CAAC;gBACH,4DAA4D;gBAC5D,gBAAgB,GAAG,IAAI,CAAC;gBACxB,IAAA,6BAAe,EAAC,KAAK,CAAC,CAAC;gBAEvB,MAAM,MAAM,GAAG,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC;gBAE3B,OAAO,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,IAAI,IAAI,IAAA,iCAAiB,EAAC,MAAM,CAAC;oBAC/E,CAAC,CAAC,IAAA,iDAAiC,EAAC,MAAM,EAAE,KAAK,CAAC;oBAClD,CAAC,CAAC,MAAM,CAAC;YACb,CAAC;oBAAS,CAAC;gBACT,gBAAgB,GAAG,YAAY,CAAC;gBAChC,IAAA,6BAAe,EAAC,SAAS,CAAC,CAAC;YAC7B,CAAC;QACH,CAAC,CAAiB,CAAC;IACrB,CAAC;CACF;AAvCD,4BAuCC;AAED,sEAAsE;AACtE,SAAgB,cAAc,CAC5B,EAAK,EACL,KAAkB,EAClB,IAA4B;IAE5B,OAAO,IAAI,QAAQ,CAAC,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;AACvC,CAAC;AAED,sEAAsE;AACtE,SAAgB,QAAQ,CAAqB,EAAK,EAAE,GAAW,EAAE,IAA4B;IAC3F,IAAI,SAAqB,CAAC;IAE1B,IAAI,gBAAgB,KAAK,SAAS,EAAE,CAAC;QACnC,SAAS,GAAG,gBAAgB,CAAC,SAAS,CAAC;IACzC,CAAC;SAAM,CAAC;QACN,IAAI,8BAAgB,KAAK,SAAS,EAAE,CAAC;YACnC,MAAM,IAAI,KAAK,CAAC,iFAAiF,CAAC,CAAC;QACrG,CAAC;QAED,SAAS,GAAG,8BAAgB,CAAC,SAAS,IAAI,CAAC,8BAAgB,CAAC,SAAS,GAAG,EAAE,CAAC,CAAC;IAC9E,CAAC;IAED,IAAI,QAAQ,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC;IAE9B,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC3B,QAAQ,GAAG,SAAS,CAAC,GAAG,CAAC,GAAG,cAAc,CAAC,EAAE,EAAE,IAAA,6BAAe,GAAE,EAAE,IAAI,CAAC,CAAC;IAC1E,CAAC;SAAM,IAAI,IAAI,IAAI,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;QAChF,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACnB,QAAQ,CAAC,IAAI,GAAG,IAAiB,CAAC;IACpC,CAAC;IAED,OAAO,QAAQ,CAAC,EAAO,CAAC;AAC1B,CAAC"}
@@ -0,0 +1,7 @@
1
+ export declare let scheduleFlush: (fn: () => void) => void;
2
+ export declare let runBatch: (fn: () => void) => void;
3
+ export declare function setConfig(cfg: Partial<{
4
+ scheduleFlush: (fn: () => void) => void;
5
+ runBatch: (fn: () => void) => void;
6
+ }>): void;
7
+ //# sourceMappingURL=config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../src/internals/config.ts"],"names":[],"mappings":"AAAA,eAAO,IAAI,aAAa,EAAE,CAAC,EAAE,EAAE,MAAM,IAAI,KAAK,IAI7C,CAAC;AAEF,eAAO,IAAI,QAAQ,EAAE,CAAC,EAAE,EAAE,MAAM,IAAI,KAAK,IAAiB,CAAC;AAE3D,wBAAgB,SAAS,CACvB,GAAG,EAAE,OAAO,CAAC;IACX,aAAa,EAAE,CAAC,EAAE,EAAE,MAAM,IAAI,KAAK,IAAI,CAAC;IACxC,QAAQ,EAAE,CAAC,EAAE,EAAE,MAAM,IAAI,KAAK,IAAI,CAAC;CACpC,CAAC,QAIH"}