signalium 1.2.2 → 2.0.1

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 +37 -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 +14 -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 +14 -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
@@ -1,74 +1,55 @@
1
- import { SignalScope } from './internals/contexts.js';
2
- export interface Signal<T = unknown> {
3
- get(): T;
4
- addListener(listener: SignalListener): () => void;
5
- }
6
- export interface StateSignal<T> extends Signal<T> {
7
- set(value: T): void;
8
- peek(): T;
1
+ export interface Signal<T> {
2
+ value: T;
9
3
  update(updater: (value: T) => T): void;
10
4
  }
11
- /**
12
- * @deprecated Use `StateSignal` instead.
13
- */
14
- export type WriteableSignal<T> = StateSignal<T>;
15
- export type SignalEquals<T> = (prev: T, next: T) => boolean;
16
- export type SignalListener = () => void;
17
- export type SignalSubscription = {
5
+ export type ReactiveFn<T, Args extends unknown[]> = (...args: Args) => ReactiveValue<T>;
6
+ export interface Watcher<T> {
7
+ readonly value: ReactiveValue<T>;
8
+ addListener(listener: () => void): () => void;
9
+ }
10
+ export interface Notifier {
11
+ consume(): void;
12
+ notify(): void;
13
+ }
14
+ export type Equals<T> = (prev: T, next: T) => boolean;
15
+ export type RelayHooks = {
18
16
  update?(): void;
19
- unsubscribe?(): void;
17
+ deactivate?(): void;
20
18
  };
21
- export interface SubscriptionState<T> {
22
- get: () => T | undefined;
23
- set: (value: T | Promise<T>) => void;
19
+ export interface RelayState<T> {
20
+ value: T | undefined;
21
+ setPromise: (promise: Promise<T>) => void;
24
22
  setError: (error: unknown) => void;
25
23
  }
26
- export type SignalSubscribe<T> = (state: SubscriptionState<T>) => SignalSubscription | (() => unknown) | undefined | void;
27
- export interface SignalOptions<T, Args extends unknown[]> {
28
- equals?: SignalEquals<T> | false;
24
+ export type RelayActivate<T> = (state: RelayState<T>) => RelayHooks | (() => unknown) | undefined | void;
25
+ export interface SignalOptions<T> {
26
+ equals?: Equals<T> | false;
29
27
  id?: string;
30
28
  desc?: string;
31
- scope?: SignalScope;
32
- paramKey?: (...args: Args) => string;
33
- /**
34
- * Called when signal's watchCount reaches 0.
35
- * Return `true` to allow GC, `false` to prevent it.
36
- * If not provided, defaults to always allowing GC.
37
- */
38
- shouldGC?: (signal: object, value: T, args: Args) => boolean;
39
- }
40
- export interface SignalOptionsWithInit<T, Args extends unknown[]> extends SignalOptions<T, Args> {
41
- initValue: T extends Promise<infer U> ? U : T extends Generator<any, infer U, any> ? U : T;
42
- }
43
- export interface Thenable<T> {
44
- then(onfulfilled?: (value: T) => void, onrejected?: (reason: unknown) => void): void;
45
- finally: any;
46
- catch: any;
47
- [Symbol.toStringTag]: string;
48
- }
49
- export interface BaseReactivePromise<T> extends Promise<T> {
50
- value: T | undefined;
51
- error: unknown;
52
- isPending: boolean;
53
- isRejected: boolean;
54
- isResolved: boolean;
55
- isSettled: boolean;
56
- isReady: boolean;
57
- rerun(): void;
58
- }
59
- export interface PendingReactivePromise<T> extends BaseReactivePromise<T> {
60
- value: undefined;
61
- isReady: false;
62
- }
63
- export interface ReadyReactivePromise<T> extends BaseReactivePromise<T> {
64
- value: T;
65
- isReady: true;
66
29
  }
67
- export type ReactivePromise<T> = PendingReactivePromise<T> | ReadyReactivePromise<T>;
68
- export type ReactiveTask<T, Args extends unknown[]> = Omit<ReactivePromise<T>, 'notify'> & {
69
- run(...args: Args): ReactivePromise<T>;
30
+ export interface ReactiveOptions<T, Params extends unknown[]> extends SignalOptions<T> {
31
+ paramKey?: (...params: Params) => string | number;
32
+ }
33
+ export interface ReactivePromise<T> extends Promise<T> {
34
+ readonly value: T | undefined;
35
+ readonly error: unknown;
36
+ readonly isPending: boolean;
37
+ readonly isRejected: boolean;
38
+ readonly isResolved: boolean;
39
+ readonly isSettled: boolean;
40
+ readonly isReady: boolean;
41
+ }
42
+ export interface PendingReactivePromise<T> extends ReactivePromise<T> {
43
+ readonly value: undefined;
44
+ readonly isReady: false;
45
+ }
46
+ export interface ReadyReactivePromise<T> extends ReactivePromise<T> {
47
+ readonly value: T;
48
+ readonly isReady: true;
49
+ }
50
+ export type DiscriminatedReactivePromise<T> = PendingReactivePromise<T> | ReadyReactivePromise<T>;
51
+ export type ReactiveTask<T, Params extends unknown[]> = DiscriminatedReactivePromise<T> & {
52
+ run(...params: Params): DiscriminatedReactivePromise<T>;
70
53
  };
71
- export type ReactiveSubscription<T> = Omit<ReactivePromise<T>, 'rerun'>;
72
- export type ReactiveValue<T> = T extends ReactiveTask<infer U, infer Args> ? ReactiveTask<U, Args> : T extends Promise<infer U> ? ReactivePromise<U> : T extends Generator<any, infer U> ? ReactivePromise<U> : T;
73
- export type ReadyReactiveValue<T> = T extends ReactiveTask<infer U, infer Args> ? ReactiveTask<U, Args> : T extends Promise<infer U> ? ReadyReactivePromise<U> : T extends Generator<any, infer U> ? ReadyReactivePromise<U> : T;
54
+ export type ReactiveValue<T> = T extends ReactiveTask<infer U, infer Args> ? ReactiveTask<U, Args> : T extends Promise<infer U> ? DiscriminatedReactivePromise<U> : T extends Generator<any, infer U> ? DiscriminatedReactivePromise<U> : T;
74
55
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export { hashValue, registerCustomHash } from './internals/utils/hash.js';
2
+ //# sourceMappingURL=utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC"}
@@ -0,0 +1,2 @@
1
+ export { hashValue, registerCustomHash } from './internals/utils/hash.js';
2
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC"}
package/package.json CHANGED
@@ -1,70 +1,62 @@
1
1
  {
2
2
  "name": "signalium",
3
- "version": "1.2.2",
3
+ "version": "2.0.1",
4
4
  "type": "module",
5
- "repository": "https://github.com/pzuraq/signalium",
6
- "description": "Chain-reactivity at critical mass",
5
+ "repository": "https://github.com/signalium/signalium",
6
+ "description": "Scalable signals, effortless async. Reactivity at critical mass.",
7
7
  "main": "./dist/cjs/index.js",
8
8
  "module": "./dist/esm/index.js",
9
9
  "exports": {
10
10
  ".": {
11
- "import": {
12
- "development": "./src/index.ts",
13
- "default": "./dist/esm/index.js"
14
- },
15
- "require": {
16
- "default": "./dist/cjs/index.js"
17
- },
18
- "types": {
19
- "development": "./src/index.ts",
20
- "import": "./dist/esm/index.d.ts",
21
- "require": "./dist/cjs/index.d.ts"
22
- }
11
+ "types": "./dist/esm/index.d.ts",
12
+ "import": "./dist/esm/index.js",
13
+ "require": "./dist/cjs/index.js",
14
+ "default": "./dist/esm/index.js"
15
+ },
16
+ "./config": {
17
+ "types": "./dist/esm/config.d.ts",
18
+ "import": "./dist/esm/config.js",
19
+ "require": "./dist/cjs/config.js",
20
+ "default": "./dist/esm/config.js"
21
+ },
22
+ "./utils": {
23
+ "types": "./dist/esm/utils.d.ts",
24
+ "import": "./dist/esm/utils.js",
25
+ "require": "./dist/cjs/utils.js",
26
+ "default": "./dist/esm/utils.js"
23
27
  },
24
28
  "./debug": {
25
- "import": {
26
- "development": "./src/debug.ts",
27
- "default": "./dist/esm/debug.js"
28
- },
29
- "require": {
30
- "default": "./dist/cjs/debug.js"
31
- },
32
- "types": {
33
- "development": "./src/debug.ts",
34
- "import": "./dist/esm/debug.d.ts",
35
- "require": "./dist/cjs/debug.d.ts"
36
- }
29
+ "types": "./dist/esm/debug.d.ts",
30
+ "import": "./dist/esm/debug.js",
31
+ "require": "./dist/cjs/debug.js",
32
+ "default": "./dist/esm/debug.js"
37
33
  },
38
34
  "./react": {
39
- "import": {
40
- "development": "./src/react/index.ts",
41
- "default": "./dist/esm/react/index.js"
42
- },
43
- "require": {
44
- "default": "./dist/cjs/react/index.js"
45
- },
46
- "types": {
47
- "development": "./src/react/index.ts",
48
- "import": "./dist/esm/react/index.d.ts",
49
- "require": "./dist/cjs/react/index.d.ts"
50
- }
35
+ "types": "./dist/esm/react/index.d.ts",
36
+ "import": "./dist/esm/react/index.js",
37
+ "require": "./dist/cjs/react/index.js",
38
+ "default": "./dist/esm/react/index.js"
51
39
  },
52
40
  "./transform": {
53
- "import": {
54
- "development": "./src/transform.ts",
55
- "default": "./dist/esm/transform.js"
56
- },
57
- "require": {
58
- "default": "./dist/cjs/transform.js"
59
- },
60
- "types": {
61
- "development": "./src/transform.ts",
62
- "import": "./dist/esm/transform.d.ts",
63
- "require": "./dist/cjs/transform.d.ts"
64
- }
41
+ "types": "./dist/esm/transform/index.d.ts",
42
+ "import": "./dist/esm/transform/index.js",
43
+ "require": "./dist/cjs/transform/index.js",
44
+ "default": "./dist/esm/transform/index.js"
65
45
  },
66
46
  "./package.json": "./package.json"
67
47
  },
48
+ "files": [
49
+ "dist/esm/**",
50
+ "dist/cjs/**",
51
+ "react.js",
52
+ "transform.js",
53
+ "debug.js",
54
+ "utils.js",
55
+ "config.js",
56
+ "README.md",
57
+ "CHANGELOG.md",
58
+ "LICENSE*"
59
+ ],
68
60
  "peerDependencies": {
69
61
  "react": ">=18.3.1"
70
62
  },
@@ -74,26 +66,32 @@
74
66
  }
75
67
  },
76
68
  "scripts": {
77
- "dev": "vitest",
69
+ "dev": "vitest dev",
70
+ "dev:unit": "vitest dev --project unit",
71
+ "dev:transform": "vitest dev --project transform",
72
+ "dev:react": "vitest dev --project react",
78
73
  "test": "vitest run",
74
+ "test:unit": "vitest run --project unit",
75
+ "test:transform": "vitest run --project transform",
76
+ "test:react": "vitest run --project react",
79
77
  "check-types": "tsc --noEmit",
80
- "prepublishOnly": "cp build/react.js react.js && cp build/transform.js transform.js",
78
+ "prepublishOnly": "node scripts/generate-legacy-entries.cjs",
81
79
  "build": "npm run build:esm && npm run build:cjs",
82
80
  "build:esm": "tsc",
83
81
  "build:cjs": "tsc --module commonjs --outDir dist/cjs --moduleResolution node"
84
82
  },
85
- "author": "",
83
+ "author": "Kristen Hewell Garrett <me@pzuraq.com>",
86
84
  "license": "ISC",
87
85
  "devDependencies": {
88
86
  "@babel/core": "^7.23.6",
89
- "@vitejs/plugin-react": "^4.3.4",
87
+ "@vitejs/plugin-react": "^5.0.0",
90
88
  "@vitest/browser": "^3.0.6",
91
89
  "playwright": "^1.50.1",
92
90
  "react": "^18.3.1",
93
91
  "react-dom": "^18.3.1",
94
- "vite": "^5.4.8",
92
+ "vite": "^7.1.2",
95
93
  "vite-plugin-babel": "^1.3.0",
96
- "vitest": "^3.1.1",
97
- "vitest-browser-react": "^0.1.1"
94
+ "vitest": "^3.2.4",
95
+ "vitest-browser-react": "^1.0.1"
98
96
  }
99
97
  }
package/react.js CHANGED
@@ -1,7 +1,3 @@
1
- // This file is for backwards compatibility with non-module build systems
2
- //
3
- // TODO: Generate this automatically on build/publish
4
-
5
1
  'use strict';
6
2
  Object.defineProperty(exports, '__esModule', {
7
3
  value: true,
package/transform.js CHANGED
@@ -1,12 +1,8 @@
1
- // This file is for backwards compatibility with non-module build systems
2
- //
3
- // TODO: Generate this automatically on build/publish
4
-
5
1
  'use strict';
6
2
  Object.defineProperty(exports, '__esModule', {
7
3
  value: true,
8
4
  });
9
- var _index = require('./dist/cjs/transform.js');
5
+ var _index = require('./dist/cjs/transform/index.js');
10
6
  Object.keys(_index).forEach(function (key) {
11
7
  if (key === 'default' || key === '__esModule') return;
12
8
  if (key in exports && exports[key] === _index[key]) return;
package/utils.js ADDED
@@ -0,0 +1,15 @@
1
+ 'use strict';
2
+ Object.defineProperty(exports, '__esModule', {
3
+ value: true,
4
+ });
5
+ var _index = require('./dist/cjs/utils.js');
6
+ Object.keys(_index).forEach(function (key) {
7
+ if (key === 'default' || key === '__esModule') return;
8
+ if (key in exports && exports[key] === _index[key]) return;
9
+ Object.defineProperty(exports, key, {
10
+ enumerable: true,
11
+ get: function () {
12
+ return _index[key];
13
+ },
14
+ });
15
+ });
@@ -1,12 +0,0 @@
1
-
2
- > signalium@1.2.2 build
3
- > npm run build:esm && npm run build:cjs
4
-
5
-
6
- > signalium@1.2.2 build:esm
7
- > tsc
8
-
9
-
10
- > signalium@1.2.2 build:cjs
11
- > tsc --module commonjs --outDir dist/cjs --moduleResolution node
12
-
@@ -1,16 +0,0 @@
1
- import { ReactiveTask, ReactiveValue, ReadyReactivePromise, ReadyReactiveValue, Signal, SignalOptions, SignalSubscribe, type SignalOptionsWithInit } from './types.js';
2
- import { SignalScope } from './internals/contexts.js';
3
- import { createStateSignal } from './internals/state.js';
4
- import { ReactivePromise } from './internals/async.js';
5
- import { Tracer } from './trace.js';
6
- export declare const state: typeof createStateSignal;
7
- export declare function reactive<T, Args extends unknown[]>(fn: (...args: Args) => T, opts?: Partial<SignalOptionsWithInit<T, Args>>): (...args: Args) => ReactiveValue<T>;
8
- export declare function reactive<T, Args extends unknown[]>(fn: (...args: Args) => T, opts: SignalOptionsWithInit<T, Args>): (...args: Args) => ReadyReactiveValue<T>;
9
- export declare function subscription<T>(subscribe: SignalSubscribe<T>, opts?: SignalOptions<T, unknown[]>): ReactivePromise<T>;
10
- export declare function subscription<T>(subscribe: SignalSubscribe<T>, opts: SignalOptionsWithInit<T, unknown[]>): ReadyReactivePromise<T>;
11
- export declare const task: <T, Args extends unknown[]>(fn: (...args: Args) => Promise<T>, opts?: Partial<SignalOptionsWithInit<T, Args>>) => ReactiveTask<T, Args>;
12
- export declare function watcher<T>(fn: () => T, opts?: SignalOptions<T, unknown[]> & {
13
- scope?: SignalScope;
14
- tracer?: Tracer;
15
- }): Signal<ReactiveValue<T>>;
16
- //# sourceMappingURL=hooks.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../../src/hooks.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EACZ,aAAa,EACb,oBAAoB,EACpB,kBAAkB,EAClB,MAAM,EACN,aAAa,EACb,eAAe,EACf,KAAK,qBAAqB,EAC3B,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAmB,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACvE,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAEzD,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AAGpC,eAAO,MAAM,KAAK,0BAAoB,CAAC;AAEvC,wBAAgB,QAAQ,CAAC,CAAC,EAAE,IAAI,SAAS,OAAO,EAAE,EAChD,EAAE,EAAE,CAAC,GAAG,IAAI,EAAE,IAAI,KAAK,CAAC,EACxB,IAAI,CAAC,EAAE,OAAO,CAAC,qBAAqB,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,GAC7C,CAAC,GAAG,IAAI,EAAE,IAAI,KAAK,aAAa,CAAC,CAAC,CAAC,CAAC;AACvC,wBAAgB,QAAQ,CAAC,CAAC,EAAE,IAAI,SAAS,OAAO,EAAE,EAChD,EAAE,EAAE,CAAC,GAAG,IAAI,EAAE,IAAI,KAAK,CAAC,EACxB,IAAI,EAAE,qBAAqB,CAAC,CAAC,EAAE,IAAI,CAAC,GACnC,CAAC,GAAG,IAAI,EAAE,IAAI,KAAK,kBAAkB,CAAC,CAAC,CAAC,CAAC;AAoB5C,wBAAgB,YAAY,CAAC,CAAC,EAAE,SAAS,EAAE,eAAe,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,aAAa,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,GAAG,eAAe,CAAC,CAAC,CAAC,CAAC;AACvH,wBAAgB,YAAY,CAAC,CAAC,EAC5B,SAAS,EAAE,eAAe,CAAC,CAAC,CAAC,EAC7B,IAAI,EAAE,qBAAqB,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,GACxC,oBAAoB,CAAC,CAAC,CAAC,CAAC;AAU3B,eAAO,MAAM,IAAI,GAAI,CAAC,EAAE,IAAI,SAAS,OAAO,EAAE,MACxC,CAAC,GAAG,IAAI,EAAE,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,SAC1B,OAAO,CAAC,qBAAqB,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,KAC7C,YAAY,CAAC,CAAC,EAAE,IAAI,CAItB,CAAC;AAEF,wBAAgB,OAAO,CAAC,CAAC,EACvB,EAAE,EAAE,MAAM,CAAC,EACX,IAAI,CAAC,EAAE,aAAa,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,GAAG;IAAE,KAAK,CAAC,EAAE,WAAW,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,GAC5E,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAQ1B"}
package/dist/cjs/hooks.js DELETED
@@ -1,44 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.task = exports.state = void 0;
4
- exports.reactive = reactive;
5
- exports.subscription = subscription;
6
- exports.watcher = watcher;
7
- const config_js_1 = require("./config.js");
8
- const contexts_js_1 = require("./internals/contexts.js");
9
- const state_js_1 = require("./internals/state.js");
10
- const derived_js_1 = require("./internals/derived.js");
11
- const async_js_1 = require("./internals/async.js");
12
- const equals_js_1 = require("./internals/utils/equals.js");
13
- exports.state = state_js_1.createStateSignal;
14
- function reactive(fn, opts) {
15
- const def = {
16
- compute: fn,
17
- equals: (0, equals_js_1.equalsFrom)(opts?.equals),
18
- shouldGC: opts?.shouldGC,
19
- isSubscription: false,
20
- };
21
- return (...args) => {
22
- const scope = (0, contexts_js_1.getCurrentScope)();
23
- const signal = scope.get(def, args, opts);
24
- return (0, config_js_1.useDerivedSignal)(signal);
25
- };
26
- }
27
- function subscription(subscribe, opts) {
28
- const scope = (0, contexts_js_1.getCurrentScope)();
29
- return async_js_1.ReactivePromise.createSubscription(subscribe, scope, opts);
30
- }
31
- const task = (fn, opts) => {
32
- const scope = (0, contexts_js_1.getCurrentScope)();
33
- return async_js_1.ReactivePromise.createTask(fn, scope, opts);
34
- };
35
- exports.task = task;
36
- function watcher(fn, opts) {
37
- const def = {
38
- compute: fn,
39
- equals: (0, equals_js_1.equalsFrom)(opts?.equals),
40
- isSubscription: false,
41
- };
42
- return (0, derived_js_1.createDerivedSignal)(def, undefined, undefined, opts?.scope, opts);
43
- }
44
- //# sourceMappingURL=hooks.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"hooks.js","sourceRoot":"","sources":["../../src/hooks.ts"],"names":[],"mappings":";;;AA4BA,4BAiBC;AAOD,oCAOC;AAWD,0BAWC;AAvED,2CAA+C;AAC/C,yDAAuE;AACvE,mDAAyD;AACzD,uDAAsF;AACtF,mDAAuD;AAEvD,2DAAyD;AAE5C,QAAA,KAAK,GAAG,4BAAiB,CAAC;AAUvC,SAAgB,QAAQ,CACtB,EAAwB,EACxB,IAA8C;IAE9C,MAAM,GAAG,GAAqC;QAC5C,OAAO,EAAE,EAAE;QACX,MAAM,EAAE,IAAA,sBAAU,EAAC,IAAI,EAAE,MAAM,CAAC;QAChC,QAAQ,EAAE,IAAI,EAAE,QAAQ;QACxB,cAAc,EAAE,KAAK;KACtB,CAAC;IAEF,OAAO,CAAC,GAAG,IAAI,EAAE,EAAE;QACjB,MAAM,KAAK,GAAG,IAAA,6BAAe,GAAE,CAAC;QAChC,MAAM,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QAE1C,OAAO,IAAA,4BAAgB,EAAC,MAAM,CAAE,CAAC;IACnC,CAAC,CAAC;AACJ,CAAC;AAOD,SAAgB,YAAY,CAC1B,SAA6B,EAC7B,IAAmD;IAEnD,MAAM,KAAK,GAAG,IAAA,6BAAe,GAAE,CAAC;IAEhC,OAAO,0BAAe,CAAC,kBAAkB,CAAC,SAAS,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;AACpE,CAAC;AAEM,MAAM,IAAI,GAAG,CAClB,EAAiC,EACjC,IAA8C,EACvB,EAAE;IACzB,MAAM,KAAK,GAAG,IAAA,6BAAe,GAAE,CAAC;IAEhC,OAAO,0BAAe,CAAC,UAAU,CAAC,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;AACrD,CAAC,CAAC;AAPW,QAAA,IAAI,QAOf;AAEF,SAAgB,OAAO,CACrB,EAAW,EACX,IAA6E;IAE7E,MAAM,GAAG,GAA0C;QACjD,OAAO,EAAE,EAAE;QACX,MAAM,EAAE,IAAA,sBAAU,EAAC,IAAI,EAAE,MAAM,CAAC;QAChC,cAAc,EAAE,KAAK;KACtB,CAAC;IAEF,OAAO,IAAA,gCAAmB,EAAC,GAAG,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;AAC3E,CAAC"}
@@ -1,4 +0,0 @@
1
- import { DerivedSignal } from './derived.js';
2
- export declare function watchSignal(signal: DerivedSignal<any, any>): void;
3
- export declare function unwatchSignal(signal: DerivedSignal<any, any>, count?: number): void;
4
- //# sourceMappingURL=connect.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"connect.d.ts","sourceRoot":"","sources":["../../../src/internals/connect.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAkB,MAAM,cAAc,CAAC;AAG7D,wBAAgB,WAAW,CAAC,MAAM,EAAE,aAAa,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,IAAI,CAoBjE;AAED,wBAAgB,aAAa,CAAC,MAAM,EAAE,aAAa,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,KAAK,SAAI,QAuBvE"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"connect.js","sourceRoot":"","sources":["../../../src/internals/connect.ts"],"names":[],"mappings":";;AAGA,kCAoBC;AAED,sCAuBC;AAhDD,6CAA6D;AAC7D,qCAAuC;AAEvC,SAAgB,WAAW,CAAC,MAA+B;IACzD,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,CAAC;IAC9B,MAAM,aAAa,GAAG,UAAU,GAAG,CAAC,CAAC;IAErC,MAAM,CAAC,UAAU,GAAG,aAAa,CAAC;IAElC,mCAAmC;IACnC,IAAI,UAAU,GAAG,CAAC;QAAE,OAAO;IAE3B,8DAA8D;IAC9D,MAAM,CAAC,KAAK,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC;IAEnC,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC;QACrC,WAAW,CAAC,GAAG,CAAC,CAAC;IACnB,CAAC;IAED,IAAI,IAAA,2BAAc,EAAC,MAAM,CAAC,EAAE,CAAC;QAC3B,6BAA6B;QAC7B,IAAA,oBAAW,EAAC,MAAM,CAAC,CAAC;IACtB,CAAC;AACH,CAAC;AAED,SAAgB,aAAa,CAAC,MAA+B,EAAE,KAAK,GAAG,CAAC;IACtE,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,CAAC;IAC9B,MAAM,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,UAAU,GAAG,KAAK,EAAE,CAAC,CAAC,CAAC;IAEtD,MAAM,CAAC,UAAU,GAAG,aAAa,CAAC;IAElC,IAAI,aAAa,GAAG,CAAC,EAAE,CAAC;QACtB,OAAO;IACT,CAAC;IAED,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC;QACrC,aAAa,CAAC,GAAG,CAAC,CAAC;IACrB,CAAC;IAED,IAAI,IAAA,2BAAc,EAAC,MAAM,CAAC,EAAE,CAAC;QAC3B,4BAA4B;QAC5B,MAAM,CAAC,KAAK,EAAE,EAAE,CAAC;IACnB,CAAC;IAED,oDAAoD;IACpD,IAAI,aAAa,KAAK,CAAC,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;QACxC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;IACjC,CAAC;AACH,CAAC"}
@@ -1,76 +0,0 @@
1
- import { Tracer, TracerMeta } from '../trace.js';
2
- import { ReactiveValue, Signal, SignalEquals, SignalListener, SignalOptionsWithInit } from '../types.js';
3
- import { SignalScope } from './contexts.js';
4
- import { Edge } from './edge.js';
5
- /**
6
- * This file contains computed signal base types and struct definitions.
7
- *
8
- * Computed signals are monomorphic to make them more efficient, but this also
9
- * means that multiple fields differ based on the type of the signal. Defining
10
- * them using this pattern rather than a class allows us to switch on the `type`
11
- * field to get strong typing in branches everywhere else.
12
- *
13
- * "Methods" for this struct are defined in other files for better organization.
14
- */
15
- export type SignalId = number;
16
- export declare const enum SignalState {
17
- Clean = 0,
18
- Pending = 1,
19
- Dirty = 2,
20
- MaybeDirty = 3
21
- }
22
- export declare const enum SignalFlags {
23
- State = 3,
24
- isSubscription = 4,
25
- isListener = 8
26
- }
27
- interface ListenerMeta {
28
- updatedAt: number;
29
- current: Set<SignalListener>;
30
- cachedBoundAdd: (listener: SignalListener) => () => void;
31
- }
32
- /**
33
- * Shared definition for derived signals to reduce memory usage.
34
- * Contains configuration that's common across all instances of a reactive function.
35
- */
36
- export interface DerivedSignalDefinition<T, Args extends unknown[]> {
37
- compute: (...args: Args) => T;
38
- equals: SignalEquals<T>;
39
- shouldGC?: (signal: object, value: T, args: Args) => boolean;
40
- isSubscription: boolean;
41
- }
42
- export declare class DerivedSignal<T, Args extends unknown[]> implements Signal<ReactiveValue<T>> {
43
- private flags;
44
- scope: SignalScope | undefined;
45
- subs: Map<WeakRef<DerivedSignal<any, any>>, Edge>;
46
- deps: Map<DerivedSignal<any, any>, Edge>;
47
- ref: WeakRef<DerivedSignal<T, Args>>;
48
- dirtyHead: Edge | undefined;
49
- updatedCount: number;
50
- computedCount: number;
51
- watchCount: number;
52
- _listeners: ListenerMeta | null;
53
- key: SignalId | undefined;
54
- args: Args;
55
- value: ReactiveValue<T> | undefined;
56
- tracerMeta?: TracerMeta;
57
- def: DerivedSignalDefinition<T, Args>;
58
- constructor(definition: DerivedSignalDefinition<T, Args>, args: Args, key?: SignalId, scope?: SignalScope, opts?: Partial<SignalOptionsWithInit<T, Args>> & {
59
- tracer?: Tracer;
60
- });
61
- get _state(): SignalState;
62
- set _state(state: SignalState);
63
- get _isListener(): boolean;
64
- set _isListener(isListener: boolean);
65
- get listeners(): ListenerMeta;
66
- get(): ReactiveValue<T>;
67
- addListener(listener: SignalListener): () => void;
68
- addListenerLazy(): (listener: SignalListener) => () => void;
69
- }
70
- export declare const runListeners: (signal: DerivedSignal<any, any>) => void;
71
- export declare const isSubscription: (signal: unknown) => boolean;
72
- export declare function createDerivedSignal<T, Args extends unknown[]>(def: DerivedSignalDefinition<T, Args>, args?: Args, key?: SignalId, scope?: SignalScope, opts?: Partial<SignalOptionsWithInit<T, Args>> & {
73
- tracer?: Tracer;
74
- }): DerivedSignal<T, Args>;
75
- export {};
76
- //# sourceMappingURL=derived.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"derived.d.ts","sourceRoot":"","sources":["../../../src/internals/derived.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"derived.js","sourceRoot":"","sources":["../../../src/internals/derived.ts"],"names":[],"mappings":"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"}
@@ -1,18 +0,0 @@
1
- import { SignalEquals, SignalListener, SignalOptions, StateSignal as IStateSignal } from '../types.js';
2
- export declare class StateSignal<T> implements IStateSignal<T> {
3
- private _value;
4
- private _equals;
5
- private _subs;
6
- _desc: string;
7
- _id: number;
8
- private _listeners;
9
- constructor(value: T, equals?: SignalEquals<T>, desc?: string);
10
- get(): T;
11
- update(fn: (value: T) => T): void;
12
- peek(): T;
13
- set(value: T): void;
14
- addListener(listener: SignalListener): () => void;
15
- }
16
- export declare function runListeners(signal: StateSignal<any>): void;
17
- export declare function createStateSignal<T>(initialValue: T, opts?: Omit<SignalOptions<T, unknown[]>, 'paramKey'>): StateSignal<T>;
18
- //# sourceMappingURL=state.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../../../src/internals/state.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,aAAa,EAAE,WAAW,IAAI,YAAY,EAAE,MAAM,aAAa,CAAC;AASvG,qBAAa,WAAW,CAAC,CAAC,CAAE,YAAW,YAAY,CAAC,CAAC,CAAC;IACpD,OAAO,CAAC,MAAM,CAAI;IAClB,OAAO,CAAC,OAAO,CAAkB;IACjC,OAAO,CAAC,KAAK,CAAiE;IAC9E,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;IAEZ,OAAO,CAAC,UAAU,CAAoC;gBAE1C,KAAK,EAAE,CAAC,EAAE,MAAM,GAAE,YAAY,CAAC,CAAC,CAAqB,EAAE,IAAI,GAAE,MAAgB;IAOzF,GAAG,IAAI,CAAC;IAmBR,MAAM,CAAC,EAAE,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC;IAI1B,IAAI,IAAI,CAAC;IAIT,GAAG,CAAC,KAAK,EAAE,CAAC;IAuBZ,WAAW,CAAC,QAAQ,EAAE,cAAc,GAAG,MAAM,IAAI;CAWlD;AAED,wBAAgB,YAAY,CAAC,MAAM,EAAE,WAAW,CAAC,GAAG,CAAC,QAUpD;AAID,wBAAgB,iBAAiB,CAAC,CAAC,EACjC,YAAY,EAAE,CAAC,EACf,IAAI,CAAC,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,UAAU,CAAC,GACnD,WAAW,CAAC,CAAC,CAAC,CAIhB"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"state.js","sourceRoot":"","sources":["../../../src/internals/state.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export declare function setupReact(): void;
2
- //# sourceMappingURL=setup.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../../../src/react/setup.ts"],"names":[],"mappings":"AAIA,wBAAgB,UAAU,SAMzB"}
@@ -1,14 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.setupReact = setupReact;
4
- const config_js_1 = require("../config.js");
5
- const context_js_1 = require("./context.js");
6
- const signal_value_js_1 = require("./signal-value.js");
7
- function setupReact() {
8
- (0, config_js_1.setConfig)({
9
- useDerivedSignal: signal_value_js_1.useDerivedSignal,
10
- useStateSignal: signal_value_js_1.useStateSignal,
11
- getFrameworkScope: context_js_1.useScope,
12
- });
13
- }
14
- //# sourceMappingURL=setup.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"setup.js","sourceRoot":"","sources":["../../../src/react/setup.ts"],"names":[],"mappings":";;AAIA,gCAMC;AAVD,4CAAyC;AACzC,6CAAwC;AACxC,uDAAqE;AAErE,SAAgB,UAAU;IACxB,IAAA,qBAAS,EAAC;QACR,gBAAgB,EAAhB,kCAAgB;QAChB,cAAc,EAAd,gCAAc;QACd,iBAAiB,EAAE,qBAAQ;KAC5B,CAAC,CAAC;AACL,CAAC"}
@@ -1,6 +0,0 @@
1
- import type { DerivedSignal } from '../internals/derived.js';
2
- import type { StateSignal } from '../internals/state.js';
3
- import type { ReactiveValue } from '../types.js';
4
- export declare function useStateSignal<T>(signal: StateSignal<T>): T;
5
- export declare function useDerivedSignal<T, Args extends unknown[]>(signal: DerivedSignal<T, Args>): ReactiveValue<T>;
6
- //# sourceMappingURL=signal-value.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"signal-value.d.ts","sourceRoot":"","sources":["../../../src/react/signal-value.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAKjD,wBAAgB,cAAc,CAAC,CAAC,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,CAU3D;AAED,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,IAAI,SAAS,OAAO,EAAE,EAAE,MAAM,EAAE,aAAa,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,aAAa,CAAC,CAAC,CAAC,CA4B5G"}