kiru 0.54.3 → 1.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 (335) hide show
  1. package/dist/{appContext.d.ts → appHandle.d.ts} +4 -4
  2. package/dist/appHandle.d.ts.map +1 -0
  3. package/dist/{appContext.js → appHandle.js} +12 -9
  4. package/dist/appHandle.js.map +1 -0
  5. package/dist/components/derive.d.ts +10 -8
  6. package/dist/components/derive.d.ts.map +1 -1
  7. package/dist/components/derive.js +50 -47
  8. package/dist/components/derive.js.map +1 -1
  9. package/dist/components/index.d.ts +0 -1
  10. package/dist/components/index.d.ts.map +1 -1
  11. package/dist/components/index.js +0 -1
  12. package/dist/components/index.js.map +1 -1
  13. package/dist/components/lazy.d.ts.map +1 -1
  14. package/dist/components/lazy.js +5 -4
  15. package/dist/components/lazy.js.map +1 -1
  16. package/dist/components/portal.d.ts.map +1 -1
  17. package/dist/components/portal.js +2 -3
  18. package/dist/components/portal.js.map +1 -1
  19. package/dist/components/transition.d.ts +3 -2
  20. package/dist/components/transition.d.ts.map +1 -1
  21. package/dist/components/transition.js +29 -26
  22. package/dist/components/transition.js.map +1 -1
  23. package/dist/constants.d.ts +1 -5
  24. package/dist/constants.d.ts.map +1 -1
  25. package/dist/constants.js +1 -5
  26. package/dist/constants.js.map +1 -1
  27. package/dist/context.d.ts +1 -1
  28. package/dist/context.d.ts.map +1 -1
  29. package/dist/context.js +25 -19
  30. package/dist/context.js.map +1 -1
  31. package/dist/devtools.d.ts +7 -0
  32. package/dist/devtools.d.ts.map +1 -0
  33. package/dist/devtools.js +15 -0
  34. package/dist/devtools.js.map +1 -0
  35. package/dist/dom.d.ts.map +1 -1
  36. package/dist/dom.js +25 -58
  37. package/dist/dom.js.map +1 -1
  38. package/dist/globalContext.d.ts +15 -16
  39. package/dist/globalContext.d.ts.map +1 -1
  40. package/dist/globalContext.js +36 -46
  41. package/dist/globalContext.js.map +1 -1
  42. package/dist/globals.d.ts +1 -4
  43. package/dist/globals.d.ts.map +1 -1
  44. package/dist/globals.js +1 -4
  45. package/dist/globals.js.map +1 -1
  46. package/dist/headlessRender.d.ts +6 -0
  47. package/dist/headlessRender.d.ts.map +1 -0
  48. package/dist/{recursiveRender.js → headlessRender.js} +17 -16
  49. package/dist/headlessRender.js.map +1 -0
  50. package/dist/hmr.d.ts +5 -7
  51. package/dist/hmr.d.ts.map +1 -1
  52. package/dist/hmr.js +27 -32
  53. package/dist/hmr.js.map +1 -1
  54. package/dist/hooks/index.d.ts +3 -14
  55. package/dist/hooks/index.d.ts.map +1 -1
  56. package/dist/hooks/index.js +3 -14
  57. package/dist/hooks/index.js.map +1 -1
  58. package/dist/hooks/onBeforeMount.d.ts +9 -0
  59. package/dist/hooks/onBeforeMount.d.ts.map +1 -0
  60. package/dist/hooks/onBeforeMount.js +12 -0
  61. package/dist/hooks/onBeforeMount.js.map +1 -0
  62. package/dist/hooks/onCleanup.d.ts +8 -0
  63. package/dist/hooks/onCleanup.d.ts.map +1 -0
  64. package/dist/hooks/onCleanup.js +15 -0
  65. package/dist/hooks/onCleanup.js.map +1 -0
  66. package/dist/hooks/onMount.d.ts +9 -0
  67. package/dist/hooks/onMount.d.ts.map +1 -0
  68. package/dist/hooks/onMount.js +12 -0
  69. package/dist/hooks/onMount.js.map +1 -0
  70. package/dist/hooks/utils.d.ts +2 -62
  71. package/dist/hooks/utils.d.ts.map +1 -1
  72. package/dist/hooks/utils.js +22 -144
  73. package/dist/hooks/utils.js.map +1 -1
  74. package/dist/index.d.ts +8 -4
  75. package/dist/index.d.ts.map +1 -1
  76. package/dist/index.js +8 -6
  77. package/dist/index.js.map +1 -1
  78. package/dist/profiling.d.ts +15 -14
  79. package/dist/profiling.d.ts.map +1 -1
  80. package/dist/profiling.js +9 -4
  81. package/dist/profiling.js.map +1 -1
  82. package/dist/reconciler.d.ts.map +1 -1
  83. package/dist/reconciler.js +12 -25
  84. package/dist/reconciler.js.map +1 -1
  85. package/dist/ref.d.ts +4 -0
  86. package/dist/ref.d.ts.map +1 -0
  87. package/dist/ref.js +4 -0
  88. package/dist/ref.js.map +1 -0
  89. package/dist/renderToString.js +1 -1
  90. package/dist/renderToString.js.map +1 -1
  91. package/dist/router/context.d.ts.map +1 -1
  92. package/dist/router/context.js +1 -2
  93. package/dist/router/context.js.map +1 -1
  94. package/dist/router/fileRouter.d.ts +1 -1
  95. package/dist/router/fileRouter.d.ts.map +1 -1
  96. package/dist/router/fileRouter.js +17 -11
  97. package/dist/router/fileRouter.js.map +1 -1
  98. package/dist/router/fileRouterController.d.ts.map +1 -1
  99. package/dist/router/fileRouterController.js +68 -55
  100. package/dist/router/fileRouterController.js.map +1 -1
  101. package/dist/router/link.d.ts.map +1 -1
  102. package/dist/router/link.js +19 -23
  103. package/dist/router/link.js.map +1 -1
  104. package/dist/router/server/index.d.ts.map +1 -1
  105. package/dist/router/server/index.js +14 -11
  106. package/dist/router/server/index.js.map +1 -1
  107. package/dist/router/types.d.ts +11 -6
  108. package/dist/router/types.d.ts.map +1 -1
  109. package/dist/scheduler.d.ts +1 -0
  110. package/dist/scheduler.d.ts.map +1 -1
  111. package/dist/scheduler.js +65 -52
  112. package/dist/scheduler.js.map +1 -1
  113. package/dist/signals/base.d.ts +0 -1
  114. package/dist/signals/base.d.ts.map +1 -1
  115. package/dist/signals/base.js +13 -36
  116. package/dist/signals/base.js.map +1 -1
  117. package/dist/signals/computed.d.ts +0 -2
  118. package/dist/signals/computed.d.ts.map +1 -1
  119. package/dist/signals/computed.js +1 -40
  120. package/dist/signals/computed.js.map +1 -1
  121. package/dist/signals/effect.d.ts +15 -14
  122. package/dist/signals/effect.d.ts.map +1 -1
  123. package/dist/signals/effect.js +65 -37
  124. package/dist/signals/effect.js.map +1 -1
  125. package/dist/signals/globals.d.ts +0 -5
  126. package/dist/signals/globals.d.ts.map +1 -1
  127. package/dist/signals/globals.js +0 -6
  128. package/dist/signals/globals.js.map +1 -1
  129. package/dist/signals/index.d.ts +4 -4
  130. package/dist/signals/index.d.ts.map +1 -1
  131. package/dist/signals/index.js +4 -4
  132. package/dist/signals/index.js.map +1 -1
  133. package/dist/signals/{for.d.ts → jsx.d.ts} +8 -1
  134. package/dist/signals/jsx.d.ts.map +1 -0
  135. package/dist/signals/{for.js → jsx.js} +4 -1
  136. package/dist/signals/jsx.js.map +1 -0
  137. package/dist/signals/tracking.d.ts +23 -0
  138. package/dist/signals/tracking.d.ts.map +1 -0
  139. package/dist/signals/tracking.js +51 -0
  140. package/dist/signals/tracking.js.map +1 -0
  141. package/dist/signals/types.d.ts +1 -1
  142. package/dist/signals/types.d.ts.map +1 -1
  143. package/dist/signals/utils.d.ts +2 -1
  144. package/dist/signals/utils.d.ts.map +1 -1
  145. package/dist/signals/utils.js +9 -2
  146. package/dist/signals/utils.js.map +1 -1
  147. package/dist/ssr/client.d.ts +3 -3
  148. package/dist/ssr/client.d.ts.map +1 -1
  149. package/dist/ssr/client.js.map +1 -1
  150. package/dist/ssr/server.js +1 -1
  151. package/dist/ssr/server.js.map +1 -1
  152. package/dist/statefulPromise.d.ts +22 -0
  153. package/dist/statefulPromise.d.ts.map +1 -0
  154. package/dist/statefulPromise.js +94 -0
  155. package/dist/statefulPromise.js.map +1 -0
  156. package/dist/types.d.ts +36 -50
  157. package/dist/types.d.ts.map +1 -1
  158. package/dist/types.dom.d.ts +4 -7
  159. package/dist/types.dom.d.ts.map +1 -1
  160. package/dist/types.utils.d.ts +3 -4
  161. package/dist/types.utils.d.ts.map +1 -1
  162. package/dist/utils/vdom.d.ts +8 -6
  163. package/dist/utils/vdom.d.ts.map +1 -1
  164. package/dist/utils/vdom.js +32 -9
  165. package/dist/utils/vdom.js.map +1 -1
  166. package/dist/viewTransitions.d.ts +7 -0
  167. package/dist/viewTransitions.d.ts.map +1 -0
  168. package/dist/viewTransitions.js +71 -0
  169. package/dist/viewTransitions.js.map +1 -0
  170. package/package.json +1 -1
  171. package/src/{appContext.ts → appHandle.ts} +21 -16
  172. package/src/components/derive.ts +74 -69
  173. package/src/components/index.ts +0 -1
  174. package/src/components/lazy.ts +5 -4
  175. package/src/components/portal.ts +2 -3
  176. package/src/components/transition.ts +33 -35
  177. package/src/constants.ts +0 -8
  178. package/src/context.ts +30 -23
  179. package/src/devtools.ts +16 -0
  180. package/src/dom.ts +29 -63
  181. package/src/globalContext.ts +57 -74
  182. package/src/globals.ts +1 -5
  183. package/src/{recursiveRender.ts → headlessRender.ts} +18 -18
  184. package/src/hmr.ts +29 -38
  185. package/src/hooks/index.ts +3 -14
  186. package/src/hooks/onBeforeMount.ts +12 -0
  187. package/src/hooks/onCleanup.ts +15 -0
  188. package/src/hooks/onMount.ts +12 -0
  189. package/src/hooks/utils.ts +28 -238
  190. package/src/index.ts +14 -6
  191. package/src/profiling.ts +22 -20
  192. package/src/reconciler.ts +18 -30
  193. package/src/ref.ts +6 -0
  194. package/src/renderToString.ts +1 -1
  195. package/src/router/context.ts +1 -2
  196. package/src/router/fileRouter.ts +23 -13
  197. package/src/router/fileRouterController.ts +72 -64
  198. package/src/router/link.ts +11 -25
  199. package/src/router/server/index.ts +24 -13
  200. package/src/router/types.ts +15 -8
  201. package/src/scheduler.ts +74 -71
  202. package/src/signals/base.ts +12 -41
  203. package/src/signals/computed.ts +1 -62
  204. package/src/signals/effect.ts +95 -48
  205. package/src/signals/globals.ts +0 -7
  206. package/src/signals/index.ts +4 -4
  207. package/src/signals/{for.ts → jsx.ts} +10 -0
  208. package/src/signals/tracking.ts +69 -0
  209. package/src/signals/types.ts +1 -1
  210. package/src/signals/utils.ts +9 -1
  211. package/src/ssr/client.ts +4 -4
  212. package/src/ssr/server.ts +2 -2
  213. package/src/statefulPromise.ts +136 -0
  214. package/src/types.dom.ts +4 -8
  215. package/src/types.ts +45 -58
  216. package/src/types.utils.ts +3 -4
  217. package/src/utils/vdom.ts +44 -15
  218. package/src/viewTransitions.ts +88 -0
  219. package/dist/appContext.d.ts.map +0 -1
  220. package/dist/appContext.js.map +0 -1
  221. package/dist/components/memo.d.ts +0 -10
  222. package/dist/components/memo.d.ts.map +0 -1
  223. package/dist/components/memo.js +0 -23
  224. package/dist/components/memo.js.map +0 -1
  225. package/dist/form/index.d.ts +0 -4
  226. package/dist/form/index.d.ts.map +0 -1
  227. package/dist/form/index.js +0 -518
  228. package/dist/form/index.js.map +0 -1
  229. package/dist/form/types.d.ts +0 -122
  230. package/dist/form/types.d.ts.map +0 -1
  231. package/dist/form/types.js +0 -2
  232. package/dist/form/types.js.map +0 -1
  233. package/dist/form/utils.d.ts +0 -3
  234. package/dist/form/utils.d.ts.map +0 -1
  235. package/dist/form/utils.js +0 -16
  236. package/dist/form/utils.js.map +0 -1
  237. package/dist/hooks/useAsync.d.ts +0 -18
  238. package/dist/hooks/useAsync.d.ts.map +0 -1
  239. package/dist/hooks/useAsync.js +0 -96
  240. package/dist/hooks/useAsync.js.map +0 -1
  241. package/dist/hooks/useCallback.d.ts +0 -7
  242. package/dist/hooks/useCallback.d.ts.map +0 -1
  243. package/dist/hooks/useCallback.js +0 -30
  244. package/dist/hooks/useCallback.js.map +0 -1
  245. package/dist/hooks/useContext.d.ts +0 -7
  246. package/dist/hooks/useContext.d.ts.map +0 -1
  247. package/dist/hooks/useContext.js +0 -59
  248. package/dist/hooks/useContext.js.map +0 -1
  249. package/dist/hooks/useEffect.d.ts +0 -8
  250. package/dist/hooks/useEffect.d.ts.map +0 -1
  251. package/dist/hooks/useEffect.js +0 -34
  252. package/dist/hooks/useEffect.js.map +0 -1
  253. package/dist/hooks/useEffectEvent.d.ts +0 -8
  254. package/dist/hooks/useEffectEvent.d.ts.map +0 -1
  255. package/dist/hooks/useEffectEvent.js +0 -23
  256. package/dist/hooks/useEffectEvent.js.map +0 -1
  257. package/dist/hooks/useId.d.ts +0 -8
  258. package/dist/hooks/useId.d.ts.map +0 -1
  259. package/dist/hooks/useId.js +0 -35
  260. package/dist/hooks/useId.js.map +0 -1
  261. package/dist/hooks/useLayoutEffect.d.ts +0 -8
  262. package/dist/hooks/useLayoutEffect.d.ts.map +0 -1
  263. package/dist/hooks/useLayoutEffect.js +0 -34
  264. package/dist/hooks/useLayoutEffect.js.map +0 -1
  265. package/dist/hooks/useMemo.d.ts +0 -8
  266. package/dist/hooks/useMemo.d.ts.map +0 -1
  267. package/dist/hooks/useMemo.js +0 -31
  268. package/dist/hooks/useMemo.js.map +0 -1
  269. package/dist/hooks/usePromise.d.ts +0 -8
  270. package/dist/hooks/usePromise.d.ts.map +0 -1
  271. package/dist/hooks/usePromise.js +0 -90
  272. package/dist/hooks/usePromise.js.map +0 -1
  273. package/dist/hooks/useReducer.d.ts +0 -7
  274. package/dist/hooks/useReducer.d.ts.map +0 -1
  275. package/dist/hooks/useReducer.js +0 -44
  276. package/dist/hooks/useReducer.js.map +0 -1
  277. package/dist/hooks/useRef.d.ts +0 -10
  278. package/dist/hooks/useRef.d.ts.map +0 -1
  279. package/dist/hooks/useRef.js +0 -29
  280. package/dist/hooks/useRef.js.map +0 -1
  281. package/dist/hooks/useState.d.ts +0 -7
  282. package/dist/hooks/useState.d.ts.map +0 -1
  283. package/dist/hooks/useState.js +0 -54
  284. package/dist/hooks/useState.js.map +0 -1
  285. package/dist/hooks/useSyncExternalStore.d.ts +0 -8
  286. package/dist/hooks/useSyncExternalStore.d.ts.map +0 -1
  287. package/dist/hooks/useSyncExternalStore.js +0 -50
  288. package/dist/hooks/useSyncExternalStore.js.map +0 -1
  289. package/dist/hooks/useViewTransition.d.ts +0 -10
  290. package/dist/hooks/useViewTransition.d.ts.map +0 -1
  291. package/dist/hooks/useViewTransition.js +0 -27
  292. package/dist/hooks/useViewTransition.js.map +0 -1
  293. package/dist/recursiveRender.d.ts +0 -7
  294. package/dist/recursiveRender.d.ts.map +0 -1
  295. package/dist/recursiveRender.js.map +0 -1
  296. package/dist/signals/for.d.ts.map +0 -1
  297. package/dist/signals/for.js.map +0 -1
  298. package/dist/signals/watch.d.ts +0 -21
  299. package/dist/signals/watch.d.ts.map +0 -1
  300. package/dist/signals/watch.js +0 -86
  301. package/dist/signals/watch.js.map +0 -1
  302. package/dist/store.d.ts +0 -28
  303. package/dist/store.d.ts.map +0 -1
  304. package/dist/store.js +0 -166
  305. package/dist/store.js.map +0 -1
  306. package/dist/swr.d.ts +0 -63
  307. package/dist/swr.d.ts.map +0 -1
  308. package/dist/swr.js +0 -236
  309. package/dist/swr.js.map +0 -1
  310. package/dist/utils/promise.d.ts +0 -16
  311. package/dist/utils/promise.d.ts.map +0 -1
  312. package/dist/utils/promise.js +0 -14
  313. package/dist/utils/promise.js.map +0 -1
  314. package/src/components/memo.ts +0 -39
  315. package/src/form/index.ts +0 -676
  316. package/src/form/types.ts +0 -262
  317. package/src/form/utils.ts +0 -19
  318. package/src/hooks/useAsync.ts +0 -121
  319. package/src/hooks/useCallback.ts +0 -32
  320. package/src/hooks/useContext.ts +0 -79
  321. package/src/hooks/useEffect.ts +0 -40
  322. package/src/hooks/useEffectEvent.ts +0 -24
  323. package/src/hooks/useId.ts +0 -42
  324. package/src/hooks/useLayoutEffect.ts +0 -43
  325. package/src/hooks/useMemo.ts +0 -34
  326. package/src/hooks/usePromise.ts +0 -126
  327. package/src/hooks/useReducer.ts +0 -50
  328. package/src/hooks/useRef.ts +0 -41
  329. package/src/hooks/useState.ts +0 -62
  330. package/src/hooks/useSyncExternalStore.ts +0 -59
  331. package/src/hooks/useViewTransition.ts +0 -25
  332. package/src/signals/watch.ts +0 -139
  333. package/src/store.ts +0 -245
  334. package/src/swr.ts +0 -351
  335. package/src/utils/promise.ts +0 -26
@@ -13,5 +13,6 @@ export declare function renderRootSync(rootNode: VNode): void;
13
13
  * Queues a node for an update. Has no effect if the node is already deleted or marked for deletion.
14
14
  */
15
15
  export declare function requestUpdate(vNode: VNode): void;
16
+ export declare function useRequestUpdate(): () => void;
16
17
  export {};
17
18
  //# sourceMappingURL=scheduler.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"scheduler.d.ts","sourceRoot":"","sources":["../src/scheduler.ts"],"names":[],"mappings":"AA0CA,KAAK,KAAK,GAAG,IAAI,CAAC,KAAK,CAAA;AAevB;;;GAGG;AACH,wBAAgB,QAAQ,CAAC,EAAE,EAAE,MAAM,IAAI,GAAG,IAAI,CAM7C;AAED;;GAEG;AACH,wBAAgB,SAAS,IAAI,IAAI,CAIhC;AAED,wBAAgB,cAAc,CAAC,QAAQ,EAAE,KAAK,GAAG,IAAI,CAMpD;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI,CAKhD"}
1
+ {"version":3,"file":"scheduler.d.ts","sourceRoot":"","sources":["../src/scheduler.ts"],"names":[],"mappings":"AAiCA,KAAK,KAAK,GAAG,IAAI,CAAC,KAAK,CAAA;AAevB;;;GAGG;AACH,wBAAgB,QAAQ,CAAC,EAAE,EAAE,MAAM,IAAI,GAAG,IAAI,CAM7C;AAED;;GAEG;AACH,wBAAgB,SAAS,IAAI,IAAI,CAIhC;AAED,wBAAgB,cAAc,CAAC,QAAQ,EAAE,KAAK,GAAG,IAAI,CAMpD;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI,CAKhD;AAED,wBAAgB,gBAAgB,IAAI,MAAM,IAAI,CAM7C"}
package/dist/scheduler.js CHANGED
@@ -1,13 +1,13 @@
1
- import { $CONTEXT_PROVIDER, $ERROR_BOUNDARY, $MEMO, CONSECUTIVE_DIRTY_LIMIT, FLAG_DELETION, FLAG_DIRTY, FLAG_MEMO, FLAG_NOOP, } from "./constants.js";
1
+ import { $ERROR_BOUNDARY, CONSECUTIVE_DIRTY_LIMIT, FLAG_DELETION, FLAG_DIRTY, } from "./constants.js";
2
2
  import { commitDeletion, commitWork, createDom, hydrateDom, onAfterFlushDomChanges, onBeforeFlushDomChanges, } from "./dom.js";
3
3
  import { __DEV__ } from "./env.js";
4
4
  import { KiruError } from "./error.js";
5
- import { hookIndex, node, renderMode } from "./globals.js";
5
+ import { node, renderMode } from "./globals.js";
6
6
  import { hydrationStack } from "./hydration.js";
7
7
  import { reconcileChildren } from "./reconciler.js";
8
- import { assertValidElementProps, latest, traverseApply, isExoticType, getVNodeAppContext, findParentErrorBoundary, call, } from "./utils/index.js";
8
+ import { assertValidElementProps, latest, traverseApply, isExoticType, getVNodeApp, findParentErrorBoundary, call, propsChanged, } from "./utils/index.js";
9
9
  import { isHmrUpdate } from "./hmr.js";
10
- let appCtx;
10
+ let app;
11
11
  let treesInProgress = [];
12
12
  let isRunningOrQueued = false;
13
13
  let nextIdleEffects = [];
@@ -54,6 +54,13 @@ export function requestUpdate(vNode) {
54
54
  }
55
55
  queueUpdate(vNode);
56
56
  }
57
+ export function useRequestUpdate() {
58
+ const n = node.current;
59
+ if (!n) {
60
+ throw new Error("useRequestUpdate must be called inside a Kiru component");
61
+ }
62
+ return () => requestUpdate(n);
63
+ }
57
64
  function queueBeginWork() {
58
65
  if (isRunningOrQueued)
59
66
  return;
@@ -74,7 +81,7 @@ function queueUpdate(vNode) {
74
81
  // If this node is currently being rendered, just mark it dirty
75
82
  if (node.current === vNode) {
76
83
  if (__DEV__) {
77
- window.__kiru.profilingContext?.emit("updateDirtied", appCtx);
84
+ window.__kiru.profilingContext?.emit("updateDirtied", app);
78
85
  }
79
86
  isRenderDirtied = true;
80
87
  return;
@@ -98,11 +105,11 @@ function doWork() {
98
105
  if (__DEV__) {
99
106
  const n = deletions[0] ?? treesInProgress[0];
100
107
  if (n) {
101
- appCtx = getVNodeAppContext(n);
102
- window.__kiru.profilingContext?.beginTick(appCtx);
108
+ app = getVNodeApp(n);
109
+ window.__kiru.profilingContext?.beginTick(app);
103
110
  }
104
111
  else {
105
- appCtx = null;
112
+ app = null;
106
113
  }
107
114
  }
108
115
  let len = 1;
@@ -136,8 +143,8 @@ function doWork() {
136
143
  immediateEffectDirtiedRender = false;
137
144
  consecutiveDirtyCount++;
138
145
  if (__DEV__) {
139
- window.__kiru.profilingContext?.endTick(appCtx);
140
- window.__kiru.profilingContext?.emit("updateDirtied", appCtx);
146
+ window.__kiru.profilingContext?.endTick(app);
147
+ window.__kiru.profilingContext?.emit("updateDirtied", app);
141
148
  }
142
149
  return flushSync();
143
150
  }
@@ -145,9 +152,9 @@ function doWork() {
145
152
  onWorkFinished();
146
153
  queueMicrotask(() => flushEffects(postEffects));
147
154
  if (__DEV__) {
148
- window.__kiru.emit("update", appCtx);
149
- window.__kiru.profilingContext?.emit("update", appCtx);
150
- window.__kiru.profilingContext?.endTick(appCtx);
155
+ window.__kiru.emit("update", app);
156
+ window.__kiru.profilingContext?.emit("update", app);
157
+ window.__kiru.profilingContext?.endTick(app);
151
158
  }
152
159
  }
153
160
  function performUnitOfWork(vNode) {
@@ -162,13 +169,12 @@ function performUnitOfWork(vNode) {
162
169
  let nextNode = vNode;
163
170
  while (nextNode) {
164
171
  // queue effects upon ascent
165
- if (nextNode.immediateEffects) {
166
- preEffects.push(...nextNode.immediateEffects);
167
- nextNode.immediateEffects = undefined;
168
- }
169
- if (nextNode.effects) {
170
- postEffects.push(...nextNode.effects);
171
- nextNode.effects = undefined;
172
+ const { hooks } = nextNode;
173
+ if (hooks) {
174
+ preEffects.push(...hooks.pre);
175
+ postEffects.push(...hooks.post);
176
+ hooks.pre.length = 0;
177
+ hooks.post.length = 0;
172
178
  }
173
179
  if (nextNode === currentWorkRoot)
174
180
  return null;
@@ -186,7 +192,9 @@ function updateVNode(vNode) {
186
192
  const { type, props, prev, flags } = vNode;
187
193
  if (__DEV__ && isHmrUpdate()) {
188
194
  }
189
- else if ((flags & FLAG_DIRTY) === 0 && props === prev?.props) {
195
+ else if (prev &&
196
+ (flags & FLAG_DIRTY) === 0 &&
197
+ (prev.props === props || !propsChanged(prev.props, props))) {
190
198
  return null;
191
199
  }
192
200
  try {
@@ -202,7 +210,7 @@ function updateVNode(vNode) {
202
210
  }
203
211
  catch (error) {
204
212
  if (__DEV__) {
205
- window.__kiru.emit("error", appCtx, error instanceof Error ? error : new Error(String(error)));
213
+ window.__kiru.emit("error", app, error instanceof Error ? error : new Error(String(error)));
206
214
  }
207
215
  const handler = findParentErrorBoundary(vNode);
208
216
  if (handler) {
@@ -235,13 +243,7 @@ function updateVNode(vNode) {
235
243
  function updateExoticComponent(vNode) {
236
244
  const { props, type } = vNode;
237
245
  let children = props.children;
238
- if (type === $CONTEXT_PROVIDER) {
239
- const { props: { dependents, value }, prev, } = vNode;
240
- if (dependents.size && prev && prev.props.value !== value) {
241
- dependents.forEach(queueUpdate);
242
- }
243
- }
244
- else if (type === $ERROR_BOUNDARY) {
246
+ if (type === $ERROR_BOUNDARY) {
245
247
  const n = vNode;
246
248
  const { error } = n;
247
249
  if (error) {
@@ -255,16 +257,7 @@ function updateExoticComponent(vNode) {
255
257
  return (vNode.child = reconcileChildren(vNode, children));
256
258
  }
257
259
  function updateFunctionComponent(vNode) {
258
- const { type, props, subs, prev, flags } = vNode;
259
- if (flags & FLAG_MEMO) {
260
- if (prev &&
261
- type[$MEMO](prev.props, props) &&
262
- !(__DEV__ && isHmrUpdate())) {
263
- vNode.flags |= FLAG_NOOP;
264
- return null;
265
- }
266
- vNode.flags &= ~FLAG_NOOP;
267
- }
260
+ const { type, props, subs } = vNode;
268
261
  try {
269
262
  node.current = vNode;
270
263
  let newChild;
@@ -272,7 +265,6 @@ function updateFunctionComponent(vNode) {
272
265
  do {
273
266
  vNode.flags &= ~FLAG_DIRTY;
274
267
  isRenderDirtied = false;
275
- hookIndex.current = 0;
276
268
  /**
277
269
  * remove previous signal subscriptions (if any) every render.
278
270
  * this prevents no-longer-observed signals from triggering updates
@@ -287,17 +279,29 @@ function updateFunctionComponent(vNode) {
287
279
  subs.clear();
288
280
  }
289
281
  if (__DEV__) {
290
- newChild = latest(type)(props);
291
- if (isHmrUpdate() && vNode.hooks && vNode.hookSig) {
292
- const len = vNode.hooks.length;
293
- if (hookIndex.current < len) {
294
- // clean up any hooks that were removed
295
- for (let i = hookIndex.current; i < len; i++) {
296
- const hook = vNode.hooks[i];
297
- hook.cleanup?.();
298
- }
299
- vNode.hooks.length = hookIndex.current;
300
- vNode.hookSig.length = hookIndex.current;
282
+ if (isHmrUpdate()) {
283
+ const { hooks } = vNode;
284
+ if (vNode.cleanups) {
285
+ Object.values(vNode.cleanups).forEach(call);
286
+ delete vNode.cleanups;
287
+ }
288
+ if (hooks) {
289
+ const { preCleanups, postCleanups } = hooks;
290
+ preCleanups.forEach(call);
291
+ postCleanups.forEach(call);
292
+ preCleanups.length = postCleanups.length = 0;
293
+ }
294
+ delete vNode.render;
295
+ }
296
+ if (vNode.render) {
297
+ newChild = vNode.render(props);
298
+ }
299
+ else {
300
+ newChild = latest(type)(props);
301
+ if (typeof newChild === "function") {
302
+ vNode.subs?.forEach(call);
303
+ vNode.render = newChild;
304
+ newChild = vNode.render(props);
301
305
  }
302
306
  }
303
307
  if (++renderTryCount > CONSECUTIVE_DIRTY_LIMIT) {
@@ -309,7 +313,16 @@ function updateFunctionComponent(vNode) {
309
313
  }
310
314
  continue;
311
315
  }
312
- newChild = type(props);
316
+ if (vNode.render) {
317
+ newChild = vNode.render(props);
318
+ }
319
+ else {
320
+ newChild = type(props);
321
+ if (typeof newChild === "function") {
322
+ vNode.render = newChild;
323
+ newChild = vNode.render(props);
324
+ }
325
+ }
313
326
  } while (isRenderDirtied);
314
327
  return (vNode.child = reconcileChildren(vNode, newChild));
315
328
  }
@@ -1 +1 @@
1
- {"version":3,"file":"scheduler.js","sourceRoot":"","sources":["../src/scheduler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"scheduler.js","sourceRoot":"","sources":["../src/scheduler.ts"],"names":[],"mappings":"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"}
@@ -28,5 +28,4 @@ export declare class Signal<T> {
28
28
  static dispose(signal: Signal<any>): void;
29
29
  }
30
30
  export declare const signal: <T>(initial: T, displayName?: string) => Signal<T>;
31
- export declare const useSignal: <T>(initial: T, displayName?: string) => Signal<T>;
32
31
  //# sourceMappingURL=base.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../src/signals/base.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAA;AAMtD,OAAO,KAAK,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAClE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,WAAW,CAAA;AAE1C,qBAAa,MAAM,CAAC,CAAC;IACnB,CAAC,OAAO,CAAC,UAAQ;IACjB,CAAC,WAAW,CAAC,CAAC,EAAE,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAA;IACtC,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,SAAS,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAA;IAC5C,SAAS,CAAC,GAAG,EAAE,MAAM,CAAA;IACrB,SAAS,CAAC,MAAM,EAAE,CAAC,CAAA;IACnB,SAAS,CAAC,UAAU,CAAC,EAAE,CAAC,CAAA;IACxB,SAAS,CAAC,aAAa,CAAC,EAAE,MAAM,CAAA;IAChC,SAAS,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAA;IAC5B,SAAS,CAAC,WAAW,CAAC,EAAE,OAAO,CAAA;gBAEnB,OAAO,EAAE,CAAC,EAAE,WAAW,CAAC,EAAE,MAAM;IAiC5C,IAAI,KAAK,IAUO,CAAC,CAFhB;IAED,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,EAahB;IAED,IAAI;IAOJ,KAAK,CAAC,QAAQ,EAAE,CAAC;IAWjB,QAAQ;IAUR,SAAS,CAAC,EAAE,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,SAAS,CAAC,EAAE,CAAC,KAAK,IAAI,GAAG,MAAM,IAAI;IAU5D,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,EAAE,gBAAgB,KAAK,OAAO;IAclD,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC;IAIzC,MAAM,CAAC,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC;IAOtC,MAAM,CAAC,YAAY,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,GAAG,cAAc,CAAC,CAAC,CAAC;IAY5D,MAAM,CAAC,YAAY,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC;IAgBpD,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IAcpC,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC;CAQnC;AAED,eAAO,MAAM,MAAM,GAAI,CAAC,EAAE,SAAS,CAAC,EAAE,cAAc,MAAM,cAEzD,CAAA;AAED,eAAO,MAAM,SAAS,GAAI,CAAC,EAAE,SAAS,CAAC,EAAE,cAAc,MAAM,cAqC5D,CAAA"}
1
+ {"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../src/signals/base.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAA;AAMtD,OAAO,KAAK,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAClE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,WAAW,CAAA;AAE1C,qBAAa,MAAM,CAAC,CAAC;IACnB,CAAC,OAAO,CAAC,UAAQ;IACjB,CAAC,WAAW,CAAC,CAAC,EAAE,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAA;IACtC,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,SAAS,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAA;IAC5C,SAAS,CAAC,GAAG,EAAE,MAAM,CAAA;IACrB,SAAS,CAAC,MAAM,EAAE,CAAC,CAAA;IACnB,SAAS,CAAC,UAAU,CAAC,EAAE,CAAC,CAAA;IACxB,SAAS,CAAC,aAAa,CAAC,EAAE,MAAM,CAAA;IAChC,SAAS,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAA;IAC5B,SAAS,CAAC,WAAW,CAAC,EAAE,OAAO,CAAA;gBAEnB,OAAO,EAAE,CAAC,EAAE,WAAW,CAAC,EAAE,MAAM;IAuC5C,IAAI,KAAK,IAUO,CAAC,CAFhB;IAED,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,EAahB;IAED,IAAI;IAOJ,KAAK,CAAC,QAAQ,EAAE,CAAC;IAWjB,QAAQ;IAUR,SAAS,CAAC,EAAE,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,SAAS,CAAC,EAAE,CAAC,KAAK,IAAI,GAAG,MAAM,IAAI;IAU5D,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,EAAE,gBAAgB,KAAK,OAAO;IAclD,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC;IAIzC,MAAM,CAAC,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC;IAOtC,MAAM,CAAC,YAAY,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,GAAG,cAAc,CAAC,CAAC,CAAC;IAY5D,MAAM,CAAC,YAAY,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC;IAgBpD,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IAgBpC,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC;CASnC;AAED,eAAO,MAAM,MAAM,GAAI,CAAC,EAAE,SAAS,CAAC,EAAE,cAAc,MAAM,cAEzD,CAAA"}
@@ -1,11 +1,11 @@
1
1
  var _a;
2
- import { latest, safeStringify, sideEffectsEnabled, generateRandomID, } from "../utils/index.js";
2
+ import { latest, safeStringify, sideEffectsEnabled, generateRandomID, registerVNodeCleanup, } from "../utils/index.js";
3
3
  import { $HMR_ACCEPT, $SIGNAL } from "../constants.js";
4
4
  import { __DEV__ } from "../env.js";
5
5
  import { node } from "../globals.js";
6
- import { useHook } from "../hooks/utils.js";
7
6
  import { requestUpdate } from "../scheduler.js";
8
- import { tracking, signalSubsMap } from "./globals.js";
7
+ import { signalSubsMap } from "./globals.js";
8
+ import { tracking } from "./tracking.js";
9
9
  export class Signal {
10
10
  constructor(initial, displayName) {
11
11
  this[_a] = true;
@@ -21,6 +21,8 @@ export class Signal {
21
21
  return this;
22
22
  },
23
23
  inject: (prev) => {
24
+ if ("window" in globalThis)
25
+ window.__kiru.devtools?.untrack(prev);
24
26
  signalSubsMap.get(this.$id)?.clear?.();
25
27
  signalSubsMap.delete(this.$id);
26
28
  this.$id = prev.$id;
@@ -40,6 +42,10 @@ export class Signal {
40
42
  else {
41
43
  this.$subs = new Set();
42
44
  }
45
+ const n = node.current;
46
+ if (n) {
47
+ registerVNodeCleanup(n, this.$id, Signal.dispose.bind(null, this));
48
+ }
43
49
  }
44
50
  get value() {
45
51
  if (__DEV__) {
@@ -153,6 +159,8 @@ export class Signal {
153
159
  });
154
160
  }
155
161
  static entangle(signal) {
162
+ if (tracking.enabled === false)
163
+ return;
156
164
  const vNode = node.current;
157
165
  const trackedSignalObservations = tracking.current();
158
166
  if (trackedSignalObservations) {
@@ -170,6 +178,8 @@ export class Signal {
170
178
  signal.$isDisposed = true;
171
179
  if (__DEV__) {
172
180
  signalSubsMap.delete(signal.$id);
181
+ if ("window" in globalThis)
182
+ window.__kiru.devtools?.untrack(signal);
173
183
  return;
174
184
  }
175
185
  signal.$subs.clear();
@@ -179,37 +189,4 @@ _a = $SIGNAL;
179
189
  export const signal = (initial, displayName) => {
180
190
  return new Signal(initial, displayName);
181
191
  };
182
- export const useSignal = (initial, displayName) => {
183
- return useHook("useSignal", { signal: null }, ({ hook, isInit, isHMR }) => {
184
- if (__DEV__) {
185
- if (isInit) {
186
- hook.dev = {
187
- devtools: {
188
- get: () => ({
189
- displayName: hook.signal.displayName,
190
- value: hook.signal.peek(),
191
- }),
192
- set: ({ value }) => {
193
- hook.signal.value = value;
194
- },
195
- },
196
- initialArgs: [initial, displayName],
197
- };
198
- }
199
- if (isHMR) {
200
- const [v, name] = hook.dev.initialArgs;
201
- if (v !== initial || name !== displayName) {
202
- hook.cleanup?.();
203
- isInit = true;
204
- hook.dev.initialArgs = [initial, displayName];
205
- }
206
- }
207
- }
208
- if (isInit) {
209
- hook.cleanup = () => Signal.dispose(hook.signal);
210
- hook.signal = new Signal(initial, displayName);
211
- }
212
- return hook.signal;
213
- });
214
- };
215
192
  //# sourceMappingURL=base.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"base.js","sourceRoot":"","sources":["../../src/signals/base.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"base.js","sourceRoot":"","sources":["../../src/signals/base.ts"],"names":[],"mappings":"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"}
@@ -16,6 +16,4 @@ export declare class ComputedSignal<T> extends Signal<T> {
16
16
  private ensureNotDirty;
17
17
  }
18
18
  export declare function computed<T>(getter: (prev?: T) => T, displayName?: string): ComputedSignal<T>;
19
- export declare function useComputed<T>(getter: (prev?: T) => T, displayName?: string): ComputedSignal<T>;
20
- export declare function useComputed<T>(getter: (prev?: T) => T, deps?: unknown[], displayName?: string): ComputedSignal<T>;
21
19
  //# sourceMappingURL=computed.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"computed.d.ts","sourceRoot":"","sources":["../../src/signals/computed.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AAGlC,qBAAa,cAAc,CAAC,CAAC,CAAE,SAAQ,MAAM,CAAC,CAAC,CAAC;IAC9C,SAAS,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,CAAA;IAClC,SAAS,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;IACxC,SAAS,CAAC,QAAQ,EAAE,OAAO,CAAA;gBACf,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,WAAW,CAAC,EAAE,MAAM;IAuBzD,IAAI,KAAK,IAgBO,CAAC,CAbhB;IAED,QAAQ;IAKR,IAAI;IAMJ,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,EAAI;IAErB,SAAS,CAAC,EAAE,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,SAAS,CAAC,EAAE,CAAC,KAAK,IAAI,GAAG,MAAM,IAAI;IAO5D,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,cAAc,CAAC,GAAG,CAAC,GAAG,IAAI;IAKjD,MAAM,CAAC,YAAY,CAAC,CAAC,EAAE,MAAM,EAAE,cAAc,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC;IAUzE,OAAO,CAAC,MAAM,CAAC,IAAI;IASnB,OAAO,CAAC,MAAM,CAAC,GAAG;IAwBlB,OAAO,CAAC,cAAc;CAgBvB;AAED,wBAAgB,QAAQ,CAAC,CAAC,EACxB,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,EACvB,WAAW,CAAC,EAAE,MAAM,GACnB,cAAc,CAAC,CAAC,CAAC,CAEnB;AAED,wBAAgB,WAAW,CAAC,CAAC,EAC3B,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,EACvB,WAAW,CAAC,EAAE,MAAM,GACnB,cAAc,CAAC,CAAC,CAAC,CAAA;AAEpB,wBAAgB,WAAW,CAAC,CAAC,EAC3B,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,EACvB,IAAI,CAAC,EAAE,OAAO,EAAE,EAChB,WAAW,CAAC,EAAE,MAAM,GACnB,cAAc,CAAC,CAAC,CAAC,CAAA"}
1
+ {"version":3,"file":"computed.d.ts","sourceRoot":"","sources":["../../src/signals/computed.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AAGlC,qBAAa,cAAc,CAAC,CAAC,CAAE,SAAQ,MAAM,CAAC,CAAC,CAAC;IAC9C,SAAS,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,CAAA;IAClC,SAAS,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;IACxC,SAAS,CAAC,QAAQ,EAAE,OAAO,CAAA;gBACf,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,WAAW,CAAC,EAAE,MAAM;IAuBzD,IAAI,KAAK,IAgBO,CAAC,CAbhB;IAED,QAAQ;IAKR,IAAI;IAMJ,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,EAAI;IAErB,SAAS,CAAC,EAAE,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,SAAS,CAAC,EAAE,CAAC,KAAK,IAAI,GAAG,MAAM,IAAI;IAO5D,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,cAAc,CAAC,GAAG,CAAC,GAAG,IAAI;IAKjD,MAAM,CAAC,YAAY,CAAC,CAAC,EAAE,MAAM,EAAE,cAAc,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC;IAUzE,OAAO,CAAC,MAAM,CAAC,IAAI;IASnB,OAAO,CAAC,MAAM,CAAC,GAAG;IAwBlB,OAAO,CAAC,cAAc;CAgBvB;AAED,wBAAgB,QAAQ,CAAC,CAAC,EACxB,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,EACvB,WAAW,CAAC,EAAE,MAAM,GACnB,cAAc,CAAC,CAAC,CAAC,CAEnB"}
@@ -1,9 +1,8 @@
1
1
  import { __DEV__ } from "../env.js";
2
2
  import { $HMR_ACCEPT } from "../constants.js";
3
- import { depsRequireChange, useHook } from "../hooks/utils.js";
4
3
  import { call, latest } from "../utils/index.js";
5
4
  import { effectQueue, signalSubsMap } from "./globals.js";
6
- import { executeWithTracking } from "./effect.js";
5
+ import { executeWithTracking } from "./tracking.js";
7
6
  import { Signal } from "./base.js";
8
7
  export class ComputedSignal extends Signal {
9
8
  constructor(getter, displayName) {
@@ -115,42 +114,4 @@ export class ComputedSignal extends Signal {
115
114
  export function computed(getter, displayName) {
116
115
  return new ComputedSignal(getter, displayName);
117
116
  }
118
- export function useComputed(getter, depsOrDisplayName, displayName) {
119
- return useHook("useComputedSignal", {
120
- signal: null,
121
- deps: void 0,
122
- }, ({ hook, isInit, isHMR }) => {
123
- if (__DEV__) {
124
- hook.dev = {
125
- devtools: {
126
- get: () => ({
127
- displayName: hook.signal.displayName,
128
- value: hook.signal.peek(),
129
- }),
130
- },
131
- };
132
- if (isHMR) {
133
- // useComputed is always considered side-effecty, so we need to re-run
134
- hook.cleanup?.();
135
- isInit = true;
136
- }
137
- }
138
- if (isInit) {
139
- if (typeof depsOrDisplayName === "string") {
140
- displayName = depsOrDisplayName;
141
- depsOrDisplayName = void 0;
142
- }
143
- hook.deps = depsOrDisplayName;
144
- hook.cleanup = () => ComputedSignal.dispose(hook.signal);
145
- hook.signal = computed(getter, displayName);
146
- }
147
- else if (hook.deps &&
148
- typeof depsOrDisplayName !== "string" &&
149
- depsRequireChange(hook.deps, depsOrDisplayName)) {
150
- hook.deps = depsOrDisplayName;
151
- ComputedSignal.updateGetter(hook.signal, getter);
152
- }
153
- return hook.signal;
154
- });
155
- }
156
117
  //# sourceMappingURL=computed.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"computed.js","sourceRoot":"","sources":["../../src/signals/computed.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"computed.js","sourceRoot":"","sources":["../../src/signals/computed.ts"],"names":[],"mappings":"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"}
@@ -1,18 +1,19 @@
1
1
  import type { Signal } from "./base.js";
2
2
  import type { SignalValues } from "./types.js";
3
- type TrackedExecutionContext<T, Deps extends readonly Signal<unknown>[]> = {
4
- id: string;
5
- subs: Map<string, Function>;
6
- fn: (...values: SignalValues<Deps>) => T;
7
- deps?: Deps;
8
- onDepChanged: () => void;
9
- };
10
- /**
11
- * Executes an effect function with dependency tracking enabled, and manages
12
- * the effect's subscriptions.
13
- * @param ctx - The execution context
14
- * @returns The result of the effect function
15
- */
16
- export declare function executeWithTracking<T, Deps extends readonly Signal<unknown>[]>(ctx: TrackedExecutionContext<T, Deps>): T;
3
+ type EffectCallbackReturn = (() => void) | void;
4
+ export declare class Effect<const Deps extends readonly Signal<unknown>[] = []> {
5
+ protected id: string;
6
+ protected callback: (...values: SignalValues<Deps>) => EffectCallbackReturn;
7
+ protected deps?: Deps;
8
+ protected unsubs: Map<string, Function>;
9
+ protected cleanup: (() => void) | null;
10
+ protected isRunning?: boolean;
11
+ constructor(callback: (...values: SignalValues<Deps>) => EffectCallbackReturn, deps?: Deps);
12
+ start(): void;
13
+ stop(): void;
14
+ private static run;
15
+ }
16
+ export declare function effect(callback: () => EffectCallbackReturn): Effect;
17
+ export declare function effect<const Deps extends readonly Signal<unknown>[]>(dependencies: Deps, callback: (...values: SignalValues<Deps>) => EffectCallbackReturn): Effect<Deps>;
17
18
  export {};
18
19
  //# sourceMappingURL=effect.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"effect.d.ts","sourceRoot":"","sources":["../../src/signals/effect.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AACvC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAE9C,KAAK,uBAAuB,CAAC,CAAC,EAAE,IAAI,SAAS,SAAS,MAAM,CAAC,OAAO,CAAC,EAAE,IAAI;IACzE,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;IAC3B,EAAE,EAAE,CAAC,GAAG,MAAM,EAAE,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IACxC,IAAI,CAAC,EAAE,IAAI,CAAA;IACX,YAAY,EAAE,MAAM,IAAI,CAAA;CACzB,CAAA;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,CAAC,EAAE,IAAI,SAAS,SAAS,MAAM,CAAC,OAAO,CAAC,EAAE,EAC5E,GAAG,EAAE,uBAAuB,CAAC,CAAC,EAAE,IAAI,CAAC,GACpC,CAAC,CAqCH"}
1
+ {"version":3,"file":"effect.d.ts","sourceRoot":"","sources":["../../src/signals/effect.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AACvC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAG9C,KAAK,oBAAoB,GAAG,CAAC,MAAM,IAAI,CAAC,GAAG,IAAI,CAAA;AAE/C,qBAAa,MAAM,CAAC,KAAK,CAAC,IAAI,SAAS,SAAS,MAAM,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE;IACpE,SAAS,CAAC,EAAE,EAAE,MAAM,CAAA;IACpB,SAAS,CAAC,QAAQ,EAAE,CAAC,GAAG,MAAM,EAAE,YAAY,CAAC,IAAI,CAAC,KAAK,oBAAoB,CAAA;IAC3E,SAAS,CAAC,IAAI,CAAC,EAAE,IAAI,CAAA;IACrB,SAAS,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;IACvC,SAAS,CAAC,OAAO,EAAE,CAAC,MAAM,IAAI,CAAC,GAAG,IAAI,CAAA;IACtC,SAAS,CAAC,SAAS,CAAC,EAAE,OAAO,CAAA;gBAG3B,QAAQ,EAAE,CAAC,GAAG,MAAM,EAAE,YAAY,CAAC,IAAI,CAAC,KAAK,oBAAoB,EACjE,IAAI,CAAC,EAAE,IAAI;IAkBb,KAAK;IAsBL,IAAI;IASJ,OAAO,CAAC,MAAM,CAAC,GAAG;CAgBnB;AAED,wBAAgB,MAAM,CAAC,QAAQ,EAAE,MAAM,oBAAoB,GAAG,MAAM,CAAA;AACpE,wBAAgB,MAAM,CAAC,KAAK,CAAC,IAAI,SAAS,SAAS,MAAM,CAAC,OAAO,CAAC,EAAE,EAClE,YAAY,EAAE,IAAI,EAClB,QAAQ,EAAE,CAAC,GAAG,MAAM,EAAE,YAAY,CAAC,IAAI,CAAC,KAAK,oBAAoB,GAChE,MAAM,CAAC,IAAI,CAAC,CAAA"}