kiru 0.47.1 → 0.48.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 (75) hide show
  1. package/dist/appContext.d.ts.map +1 -1
  2. package/dist/appContext.js +3 -5
  3. package/dist/appContext.js.map +1 -1
  4. package/dist/constants.d.ts +4 -2
  5. package/dist/constants.d.ts.map +1 -1
  6. package/dist/constants.js +6 -4
  7. package/dist/constants.js.map +1 -1
  8. package/dist/customEvents.d.ts +6 -0
  9. package/dist/customEvents.d.ts.map +1 -0
  10. package/dist/customEvents.js +12 -0
  11. package/dist/customEvents.js.map +1 -0
  12. package/dist/dom.d.ts +3 -1
  13. package/dist/dom.d.ts.map +1 -1
  14. package/dist/dom.js +102 -102
  15. package/dist/dom.js.map +1 -1
  16. package/dist/globalContext.d.ts +4 -3
  17. package/dist/globalContext.d.ts.map +1 -1
  18. package/dist/globalContext.js +0 -2
  19. package/dist/globalContext.js.map +1 -1
  20. package/dist/hooks/useAsync.d.ts +2 -13
  21. package/dist/hooks/useAsync.d.ts.map +1 -1
  22. package/dist/hooks/useAsync.js.map +1 -1
  23. package/dist/index.d.ts +2 -1
  24. package/dist/index.d.ts.map +1 -1
  25. package/dist/index.js +7 -3
  26. package/dist/index.js.map +1 -1
  27. package/dist/lazy.d.ts +2 -2
  28. package/dist/lazy.d.ts.map +1 -1
  29. package/dist/lazy.js.map +1 -1
  30. package/dist/portal.d.ts +2 -2
  31. package/dist/portal.d.ts.map +1 -1
  32. package/dist/profiling.d.ts +2 -2
  33. package/dist/profiling.d.ts.map +1 -1
  34. package/dist/reconciler.d.ts.map +1 -1
  35. package/dist/reconciler.js +13 -10
  36. package/dist/reconciler.js.map +1 -1
  37. package/dist/scheduler.d.ts +1 -0
  38. package/dist/scheduler.d.ts.map +1 -1
  39. package/dist/scheduler.js +51 -156
  40. package/dist/scheduler.js.map +1 -1
  41. package/dist/swr.d.ts +6 -17
  42. package/dist/swr.d.ts.map +1 -1
  43. package/dist/swr.js +26 -18
  44. package/dist/swr.js.map +1 -1
  45. package/dist/transition.d.ts +2 -2
  46. package/dist/transition.d.ts.map +1 -1
  47. package/dist/types.d.ts +20 -18
  48. package/dist/types.d.ts.map +1 -1
  49. package/dist/types.dom.d.ts +57 -38
  50. package/dist/types.dom.d.ts.map +1 -1
  51. package/dist/types.utils.d.ts +31 -19
  52. package/dist/types.utils.d.ts.map +1 -1
  53. package/dist/utils.d.ts +1 -10
  54. package/dist/utils.d.ts.map +1 -1
  55. package/dist/utils.js +9 -56
  56. package/dist/utils.js.map +1 -1
  57. package/package.json +1 -1
  58. package/src/appContext.ts +3 -5
  59. package/src/constants.ts +9 -4
  60. package/src/customEvents.ts +22 -0
  61. package/src/dom.ts +124 -113
  62. package/src/globalContext.ts +4 -6
  63. package/src/hooks/useAsync.ts +7 -24
  64. package/src/index.ts +7 -4
  65. package/src/lazy.ts +6 -2
  66. package/src/portal.ts +1 -1
  67. package/src/profiling.ts +1 -1
  68. package/src/reconciler.ts +13 -16
  69. package/src/scheduler.ts +69 -158
  70. package/src/swr.ts +28 -37
  71. package/src/transition.ts +1 -1
  72. package/src/types.dom.ts +98 -36
  73. package/src/types.ts +12 -10
  74. package/src/types.utils.ts +43 -14
  75. package/src/utils.ts +7 -74
package/dist/index.d.ts CHANGED
@@ -1,8 +1,9 @@
1
1
  export type * from "./types";
2
2
  export * from "./signals/index.js";
3
3
  export * from "./appContext.js";
4
- export * from "./context.js";
5
4
  export * from "./cloneVNode.js";
5
+ export * from "./context.js";
6
+ export * from "./customEvents.js";
6
7
  export * from "./element.js";
7
8
  export * from "./hooks/index.js";
8
9
  export * from "./lazy.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAGA,mBAAmB,SAAS,CAAA;AAC5B,cAAc,oBAAoB,CAAA;AAClC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,cAAc,CAAA;AAC5B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,cAAc,CAAA;AAC5B,cAAc,kBAAkB,CAAA;AAChC,cAAc,WAAW,CAAA;AACzB,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,cAAc,aAAa,CAAA;AAC3B,cAAc,qBAAqB,CAAA;AACnC,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AACnE,cAAc,YAAY,CAAA;AAC1B,cAAc,iBAAiB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAGA,mBAAmB,SAAS,CAAA;AAC5B,cAAc,oBAAoB,CAAA;AAClC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,cAAc,CAAA;AAC5B,cAAc,mBAAmB,CAAA;AACjC,cAAc,cAAc,CAAA;AAC5B,cAAc,kBAAkB,CAAA;AAChC,cAAc,WAAW,CAAA;AACzB,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,cAAc,aAAa,CAAA;AAC3B,cAAc,qBAAqB,CAAA;AACnC,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AACnE,cAAc,YAAY,CAAA;AAC1B,cAAc,iBAAiB,CAAA"}
package/dist/index.js CHANGED
@@ -1,9 +1,11 @@
1
1
  var _a;
2
+ import { __DEV__ } from "./env.js";
2
3
  import { createKiruGlobalContext } from "./globalContext.js";
3
4
  export * from "./signals/index.js";
4
5
  export * from "./appContext.js";
5
- export * from "./context.js";
6
6
  export * from "./cloneVNode.js";
7
+ export * from "./context.js";
8
+ export * from "./customEvents.js";
7
9
  export * from "./element.js";
8
10
  export * from "./hooks/index.js";
9
11
  export * from "./lazy.js";
@@ -13,7 +15,9 @@ export * from "./renderToString.js";
13
15
  export { nextIdle, flushSync, requestUpdate } from "./scheduler.js";
14
16
  export * from "./store.js";
15
17
  export * from "./transition.js";
16
- if ("window" in globalThis) {
17
- (_a = globalThis.window).__kiru ?? (_a.__kiru = createKiruGlobalContext());
18
+ if (__DEV__) {
19
+ if ("window" in globalThis) {
20
+ (_a = globalThis.window).__kiru ?? (_a.__kiru = createKiruGlobalContext());
21
+ }
18
22
  }
19
23
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAA;AAI5D,cAAc,oBAAoB,CAAA;AAClC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,cAAc,CAAA;AAC5B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,cAAc,CAAA;AAC5B,cAAc,kBAAkB,CAAA;AAChC,cAAc,WAAW,CAAA;AACzB,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,cAAc,aAAa,CAAA;AAC3B,cAAc,qBAAqB,CAAA;AACnC,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AACnE,cAAc,YAAY,CAAA;AAC1B,cAAc,iBAAiB,CAAA;AAE/B,IAAI,QAAQ,IAAI,UAAU,EAAE,CAAC;IAC3B,MAAA,UAAU,CAAC,MAAM,EAAC,MAAM,QAAN,MAAM,GAAK,uBAAuB,EAAE,EAAA;AACxD,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAA;AAClC,OAAO,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAA;AAG5D,cAAc,oBAAoB,CAAA;AAClC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,cAAc,CAAA;AAC5B,cAAc,mBAAmB,CAAA;AACjC,cAAc,cAAc,CAAA;AAC5B,cAAc,kBAAkB,CAAA;AAChC,cAAc,WAAW,CAAA;AACzB,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,cAAc,aAAa,CAAA;AAC3B,cAAc,qBAAqB,CAAA;AACnC,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AACnE,cAAc,YAAY,CAAA;AAC1B,cAAc,iBAAiB,CAAA;AAE/B,IAAI,OAAO,EAAE,CAAC;IACZ,IAAI,QAAQ,IAAI,UAAU,EAAE,CAAC;QAC3B,MAAA,UAAU,CAAC,MAAM,EAAC,MAAM,QAAN,MAAM,GAAK,uBAAuB,EAAE,EAAA;IACxD,CAAC;AACH,CAAC"}
package/dist/lazy.d.ts CHANGED
@@ -1,6 +1,6 @@
1
- type FCModule = {
1
+ interface FCModule {
2
2
  default: Kiru.FC<any>;
3
- };
3
+ }
4
4
  type LazyImportValue = Kiru.FC<any> | FCModule;
5
5
  type InferLazyImportProps<T extends LazyImportValue> = T extends FCModule ? Kiru.InferProps<T["default"]> : Kiru.InferProps<T>;
6
6
  type LazyComponentProps<T extends LazyImportValue> = InferLazyImportProps<T> & {
@@ -1 +1 @@
1
- {"version":3,"file":"lazy.d.ts","sourceRoot":"","sources":["../src/lazy.ts"],"names":[],"mappings":"AAgBA,KAAK,QAAQ,GAAG;IAAE,OAAO,EAAE,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,CAAA;CAAE,CAAA;AACzC,KAAK,eAAe,GAAG,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAA;AAC9C,KAAK,oBAAoB,CAAC,CAAC,SAAS,eAAe,IAAI,CAAC,SAAS,QAAQ,GACrE,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,GAC7B,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAA;AAQtB,KAAK,kBAAkB,CAAC,CAAC,SAAS,eAAe,IAAI,oBAAoB,CAAC,CAAC,CAAC,GAAG;IAC7E,QAAQ,CAAC,EAAE,GAAG,CAAC,OAAO,CAAA;CACvB,CAAA;AAqDD,wBAAgB,IAAI,CAAC,CAAC,SAAS,eAAe,EAC5C,kBAAkB,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GACnC,IAAI,CAAC,EAAE,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,CA2IhC"}
1
+ {"version":3,"file":"lazy.d.ts","sourceRoot":"","sources":["../src/lazy.ts"],"names":[],"mappings":"AAgBA,UAAU,QAAQ;IAChB,OAAO,EAAE,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,CAAA;CACtB;AAED,KAAK,eAAe,GAAG,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAA;AAE9C,KAAK,oBAAoB,CAAC,CAAC,SAAS,eAAe,IAAI,CAAC,SAAS,QAAQ,GACrE,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,GAC7B,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAA;AAQtB,KAAK,kBAAkB,CAAC,CAAC,SAAS,eAAe,IAAI,oBAAoB,CAAC,CAAC,CAAC,GAAG;IAC7E,QAAQ,CAAC,EAAE,GAAG,CAAC,OAAO,CAAA;CACvB,CAAA;AAqDD,wBAAgB,IAAI,CAAC,CAAC,SAAS,eAAe,EAC5C,kBAAkB,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GACnC,IAAI,CAAC,EAAE,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,CA2IhC"}
package/dist/lazy.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"lazy.js","sourceRoot":"","sources":["../src/lazy.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lazy.js","sourceRoot":"","sources":["../src/lazy.ts"],"names":[],"mappings":"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"}
package/dist/portal.d.ts CHANGED
@@ -1,7 +1,7 @@
1
- type PortalProps = {
1
+ interface PortalProps {
2
2
  children?: JSX.Children;
3
3
  container: HTMLElement | (() => HTMLElement);
4
- };
4
+ }
5
5
  export declare function Portal({ children, container }: PortalProps): JSX.Children;
6
6
  export {};
7
7
  //# sourceMappingURL=portal.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"portal.d.ts","sourceRoot":"","sources":["../src/portal.ts"],"names":[],"mappings":"AAOA,KAAK,WAAW,GAAG;IACjB,QAAQ,CAAC,EAAE,GAAG,CAAC,QAAQ,CAAA;IACvB,SAAS,EAAE,WAAW,GAAG,CAAC,MAAM,WAAW,CAAC,CAAA;CAC7C,CAAA;AAED,wBAAgB,MAAM,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,WAAW,gBAyB1D"}
1
+ {"version":3,"file":"portal.d.ts","sourceRoot":"","sources":["../src/portal.ts"],"names":[],"mappings":"AAOA,UAAU,WAAW;IACnB,QAAQ,CAAC,EAAE,GAAG,CAAC,QAAQ,CAAA;IACvB,SAAS,EAAE,WAAW,GAAG,CAAC,MAAM,WAAW,CAAC,CAAA;CAC7C;AAED,wBAAgB,MAAM,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,WAAW,gBAyB1D"}
@@ -1,10 +1,10 @@
1
1
  import type { AppContext } from "./appContext";
2
2
  declare const ProfilingEvents: readonly ["updateNode", "createNode", "removeNode", "update", "updateDirtied", "signalTextUpdate", "signalAttrUpdate"];
3
3
  export type ProfilingEvent = (typeof ProfilingEvents)[number];
4
- type TickTS = {
4
+ interface TickTS {
5
5
  start: number;
6
6
  end: number;
7
- };
7
+ }
8
8
  type ProfilingEventListener = (app: AppContext) => void;
9
9
  export declare function createProfilingContext(): {
10
10
  appStats: Map<AppContext, {
@@ -1 +1 @@
1
- {"version":3,"file":"profiling.d.ts","sourceRoot":"","sources":["../src/profiling.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAI9C,QAAA,MAAM,eAAe,wHAQX,CAAA;AAEV,MAAM,MAAM,cAAc,GAAG,CAAC,OAAO,eAAe,CAAC,CAAC,MAAM,CAAC,CAAA;AAE7D,KAAK,MAAM,GAAG;IACZ,KAAK,EAAE,MAAM,CAAA;IACb,GAAG,EAAE,MAAM,CAAA;CACZ,CAAA;AAED,KAAK,sBAAsB,GAAG,CAAC,GAAG,EAAE,UAAU,KAAK,IAAI,CAAA;AAEvD,wBAAgB,sBAAsB;;oBAKpB,MAAM,EAAE;uBACL,MAAM;oBACT,MAAM;;kBAKN,cAAc,OAAO,UAAU;8BAIpC,cAAc,YACX,sBAAsB;iCAQzB,cAAc,YACX,sBAAsB;yBAKb,UAAU;sBAKb,UAAU;4BAKJ,UAAU;+BAMP,UAAU;qBASpB,UAAU;mBAYZ,UAAU;EAa5B"}
1
+ {"version":3,"file":"profiling.d.ts","sourceRoot":"","sources":["../src/profiling.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAI9C,QAAA,MAAM,eAAe,wHAQX,CAAA;AAEV,MAAM,MAAM,cAAc,GAAG,CAAC,OAAO,eAAe,CAAC,CAAC,MAAM,CAAC,CAAA;AAE7D,UAAU,MAAM;IACd,KAAK,EAAE,MAAM,CAAA;IACb,GAAG,EAAE,MAAM,CAAA;CACZ;AAED,KAAK,sBAAsB,GAAG,CAAC,GAAG,EAAE,UAAU,KAAK,IAAI,CAAA;AAEvD,wBAAgB,sBAAsB;;oBAKpB,MAAM,EAAE;uBACL,MAAM;oBACT,MAAM;;kBAKN,cAAc,OAAO,UAAU;8BAIpC,cAAc,YACX,sBAAsB;iCAQzB,cAAc,YACX,sBAAsB;yBAKb,UAAU;sBAKb,UAAU;4BAKJ,UAAU;+BAMP,UAAU;qBASpB,UAAU;mBAYZ,UAAU;EAa5B"}
@@ -1 +1 @@
1
- {"version":3,"file":"reconciler.d.ts","sourceRoot":"","sources":["../src/reconciler.ts"],"names":[],"mappings":"AAaA,KAAK,KAAK,GAAG,IAAI,CAAC,KAAK,CAAA;AAGvB,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,qBAejE"}
1
+ {"version":3,"file":"reconciler.d.ts","sourceRoot":"","sources":["../src/reconciler.ts"],"names":[],"mappings":"AAOA,KAAK,KAAK,GAAG,IAAI,CAAC,KAAK,CAAA;AAGvB,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,qBAejE"}
@@ -1,4 +1,4 @@
1
- import { $FRAGMENT, FLAG_HAS_MEMO_ANCESTOR, FLAG_MEMO, FLAG_PLACEMENT, FLAG_UPDATE, } from "./constants.js";
1
+ import { $FRAGMENT, FLAG_PLACEMENT, FLAG_UPDATE } from "./constants.js";
2
2
  import { getVNodeAppContext, isVNode, latest } from "./utils.js";
3
3
  import { Signal } from "./signals/base.js";
4
4
  import { __DEV__ } from "./env.js";
@@ -21,7 +21,6 @@ export function reconcileChildren(parent, children) {
21
21
  return reconcileSingleChild(parent, children);
22
22
  }
23
23
  function reconcileSingleChild(parent, child) {
24
- const deletions = (parent.deletions = []);
25
24
  const oldChild = parent.child;
26
25
  if (oldChild === null) {
27
26
  return createChild(parent, child);
@@ -50,12 +49,11 @@ function reconcileSingleChild(parent, child) {
50
49
  }
51
50
  placeChild(newNode, 0, 0);
52
51
  }
53
- existingChildren.forEach((child) => deletions.push(child));
52
+ existingChildren.forEach((child) => deleteChild(parent, child));
54
53
  return newNode;
55
54
  }
56
55
  }
57
56
  function reconcileChildrenArray(parent, children) {
58
- const deletions = (parent.deletions = []);
59
57
  let resultingChild = null;
60
58
  let prevNewChild = null;
61
59
  let oldChild = parent.child;
@@ -78,7 +76,7 @@ function reconcileChildrenArray(parent, children) {
78
76
  break;
79
77
  }
80
78
  if (oldChild && !newChild.prev) {
81
- deletions.push(oldChild);
79
+ deleteChild(parent, oldChild);
82
80
  }
83
81
  lastPlacedIndex = placeChild(newChild, lastPlacedIndex, newIdx);
84
82
  if (prevNewChild === null) {
@@ -133,7 +131,7 @@ function reconcileChildrenArray(parent, children) {
133
131
  prevNewChild = newNode;
134
132
  }
135
133
  }
136
- existingChildren.forEach((child) => deletions.push(child));
134
+ existingChildren.forEach((child) => deleteChild(parent, child));
137
135
  return resultingChild;
138
136
  }
139
137
  function updateSlot(parent, oldChild, child) {
@@ -400,9 +398,6 @@ function propsChanged(oldProps, newProps) {
400
398
  function setParent(child, parent) {
401
399
  child.parent = parent;
402
400
  child.depth = parent.depth + 1;
403
- if (parent.flags & (FLAG_MEMO | FLAG_HAS_MEMO_ANCESTOR)) {
404
- child.flags |= FLAG_HAS_MEMO_ANCESTOR;
405
- }
406
401
  }
407
402
  function dev_emitUpdateNode() {
408
403
  if (!("window" in globalThis))
@@ -427,9 +422,17 @@ function mapRemainingChildren(child) {
427
422
  }
428
423
  return map;
429
424
  }
425
+ function deleteChild(parent, child) {
426
+ if (parent.deletions === null) {
427
+ parent.deletions = [child];
428
+ }
429
+ else {
430
+ parent.deletions.push(child);
431
+ }
432
+ }
430
433
  function deleteRemainingChildren(parent, child) {
431
434
  while (child) {
432
- parent.deletions.push(child);
435
+ deleteChild(parent, child);
433
436
  child = child.sibling;
434
437
  }
435
438
  }
@@ -1 +1 @@
1
- {"version":3,"file":"reconciler.js","sourceRoot":"","sources":["../src/reconciler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"reconciler.js","sourceRoot":"","sources":["../src/reconciler.ts"],"names":[],"mappings":"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"}
@@ -8,6 +8,7 @@ export declare function nextIdle(fn: () => void): void;
8
8
  * Syncronously flushes any pending work.
9
9
  */
10
10
  export declare function flushSync(): void;
11
+ export declare function renderRootSync(rootNode: VNode): void;
11
12
  /**
12
13
  * Queues a node for an update. Has no effect if the node is already deleted or marked for deletion.
13
14
  */
@@ -1 +1 @@
1
- {"version":3,"file":"scheduler.d.ts","sourceRoot":"","sources":["../src/scheduler.ts"],"names":[],"mappings":"AA4BA,KAAK,KAAK,GAAG,IAAI,CAAC,KAAK,CAAA;AAkBvB;;;GAGG;AACH,wBAAgB,QAAQ,CAAC,EAAE,EAAE,MAAM,IAAI,QAMtC;AAED;;GAEG;AACH,wBAAgB,SAAS,SAIxB;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI,CAQhD"}
1
+ {"version":3,"file":"scheduler.d.ts","sourceRoot":"","sources":["../src/scheduler.ts"],"names":[],"mappings":"AAmCA,KAAK,KAAK,GAAG,IAAI,CAAC,KAAK,CAAA;AAevB;;;GAGG;AACH,wBAAgB,QAAQ,CAAC,EAAE,EAAE,MAAM,IAAI,QAMtC;AAED;;GAEG;AACH,wBAAgB,SAAS,SAIxB;AAED,wBAAgB,cAAc,CAAC,QAAQ,EAAE,KAAK,QAO7C;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI,CAKhD"}
package/dist/scheduler.js CHANGED
@@ -1,16 +1,14 @@
1
- import { $CONTEXT_PROVIDER, CONSECUTIVE_DIRTY_LIMIT, FLAG_DELETION, FLAG_MEMO, } from "./constants.js";
2
- import { commitDeletion, commitWork, createDom, hydrateDom } from "./dom.js";
1
+ import { $CONTEXT_PROVIDER, CONSECUTIVE_DIRTY_LIMIT, FLAG_DELETION, FLAG_DIRTY, FLAG_MEMO, FLAG_NOOP, } from "./constants.js";
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
5
  import { hookIndex, node, renderMode } from "./globals.js";
6
6
  import { hydrationStack } from "./hydration.js";
7
7
  import { assertValidElementProps } from "./props.js";
8
8
  import { reconcileChildren } from "./reconciler.js";
9
- import { willMemoBlockUpdate, latest, traverseApply, vNodeContains, isExoticType, getVNodeAppContext, } from "./utils.js";
9
+ import { latest, traverseApply, isExoticType, getVNodeAppContext, } from "./utils.js";
10
10
  let appCtx;
11
- let nextUnitOfWork = null;
12
11
  let treesInProgress = [];
13
- let currentTreeIndex = 0;
14
12
  let isRunningOrQueued = false;
15
13
  let nextIdleEffects = [];
16
14
  let deletions = [];
@@ -18,7 +16,6 @@ let isImmediateEffectsMode = false;
18
16
  let immediateEffectDirtiedRender = false;
19
17
  let isRenderDirtied = false;
20
18
  let consecutiveDirtyCount = 0;
21
- let pendingContextChanges = new Set();
22
19
  let preEffects = [];
23
20
  let postEffects = [];
24
21
  let animationFrameHandle = -1;
@@ -42,16 +39,20 @@ export function flushSync() {
42
39
  window.cancelAnimationFrame(animationFrameHandle);
43
40
  doWork();
44
41
  }
42
+ export function renderRootSync(rootNode) {
43
+ rootNode.flags |= FLAG_DIRTY;
44
+ treesInProgress.push(rootNode);
45
+ if (!isRunningOrQueued) {
46
+ isRunningOrQueued = true;
47
+ doWork();
48
+ }
49
+ }
45
50
  /**
46
51
  * Queues a node for an update. Has no effect if the node is already deleted or marked for deletion.
47
52
  */
48
53
  export function requestUpdate(vNode) {
49
- if (vNode.flags & FLAG_DELETION)
50
- return;
51
54
  if (renderMode.current === "hydrate") {
52
- return nextIdle(() => {
53
- vNode.flags & FLAG_DELETION || queueUpdate(vNode);
54
- });
55
+ return nextIdle(() => queueUpdate(vNode));
55
56
  }
56
57
  queueUpdate(vNode);
57
58
  }
@@ -80,100 +81,24 @@ function queueUpdate(vNode) {
80
81
  isRenderDirtied = true;
81
82
  return;
82
83
  }
83
- // If it's already the next unit of work, no need to queue again
84
- if (nextUnitOfWork === vNode) {
84
+ if (vNode.flags & (FLAG_DIRTY | FLAG_DELETION))
85
85
  return;
86
- }
87
- if (nextUnitOfWork === null) {
86
+ vNode.flags |= FLAG_DIRTY;
87
+ if (!treesInProgress.length) {
88
88
  treesInProgress.push(vNode);
89
- nextUnitOfWork = vNode;
90
89
  return queueBeginWork();
91
90
  }
92
- for (let i = 0; i < treesInProgress.length; i++) {
93
- const tree = treesInProgress[i];
94
- if (tree !== vNode)
95
- continue;
96
- if (i < currentTreeIndex) {
97
- // It was already processed; requeue it to the end
98
- currentTreeIndex--;
99
- treesInProgress.splice(i, 1);
100
- treesInProgress.push(tree);
101
- }
102
- return;
103
- }
104
- // Check if this node is a descendant of any trees already queued
105
- for (let i = 0; i < treesInProgress.length; i++) {
106
- const tree = treesInProgress[i];
107
- if (!vNodeContains(tree, vNode))
108
- continue;
109
- if (i === currentTreeIndex) {
110
- // It's a child of the currently worked-on tree
111
- // If it's deeper within the same tree, we can skip
112
- if (vNodeContains(nextUnitOfWork, vNode))
113
- return;
114
- // If it's not in the current work subtree, move back up to it
115
- nextUnitOfWork = vNode;
116
- }
117
- else if (i < currentTreeIndex) {
118
- // It's a descendant of an already processed tree; treat as a new update
119
- treesInProgress.push(vNode);
120
- }
121
- return;
122
- }
123
- // Check if this node contains any of the currently queued trees
124
- let didReplaceTree = false;
125
- let shouldQueueAtEnd = false;
126
- for (let i = 0; i < treesInProgress.length;) {
127
- const tree = treesInProgress[i];
128
- if (!vNodeContains(vNode, tree)) {
129
- i++;
130
- continue;
131
- }
132
- // This node contains another update root, replace it
133
- if (i === currentTreeIndex) {
134
- if (!didReplaceTree) {
135
- treesInProgress.splice(i, 1, vNode);
136
- nextUnitOfWork = vNode;
137
- didReplaceTree = true;
138
- i++; // advance past replaced node
139
- }
140
- else {
141
- treesInProgress.splice(i, 1);
142
- // no increment
143
- }
144
- }
145
- else if (i < currentTreeIndex) {
146
- currentTreeIndex--;
147
- treesInProgress.splice(i, 1);
148
- if (!didReplaceTree) {
149
- shouldQueueAtEnd = true;
150
- didReplaceTree = true;
151
- }
152
- // no increment
153
- }
154
- else {
155
- // i > currentTreeIndex
156
- treesInProgress.splice(i, 1);
157
- if (!didReplaceTree) {
158
- shouldQueueAtEnd = true;
159
- didReplaceTree = true;
160
- }
161
- // no increment
162
- }
163
- }
164
- if (!shouldQueueAtEnd && didReplaceTree) {
165
- return;
166
- }
167
- // If it doesn't overlap with any queued tree, queue as new independent update root
168
91
  treesInProgress.push(vNode);
169
92
  }
170
93
  function queueDelete(vNode) {
171
94
  traverseApply(vNode, (n) => (n.flags |= FLAG_DELETION));
172
95
  deletions.push(vNode);
173
96
  }
97
+ const depthSort = (a, b) => b.depth - a.depth;
98
+ let currentWorkRoot = null;
174
99
  function doWork() {
175
100
  if (__DEV__) {
176
- const n = nextUnitOfWork ?? deletions[0] ?? treesInProgress[0];
101
+ const n = deletions[0] ?? treesInProgress[0];
177
102
  if (n) {
178
103
  appCtx = getVNodeAppContext(n);
179
104
  window.__kiru?.profilingContext?.beginTick(appCtx);
@@ -182,21 +107,28 @@ function doWork() {
182
107
  appCtx = null;
183
108
  }
184
109
  }
185
- while (nextUnitOfWork) {
186
- nextUnitOfWork =
187
- performUnitOfWork(nextUnitOfWork) ??
188
- treesInProgress[++currentTreeIndex] ??
189
- queueBlockedContextDependencyRoots();
190
- }
191
- while (deletions.length) {
192
- commitDeletion(deletions.shift());
193
- }
194
- const workRoots = [...treesInProgress];
195
- treesInProgress.length = 0;
196
- currentTreeIndex = 0;
197
- for (const root of workRoots) {
198
- commitWork(root);
110
+ let len = 1;
111
+ onBeforeFlushDomChanges();
112
+ while (treesInProgress.length) {
113
+ if (treesInProgress.length > len) {
114
+ treesInProgress.sort(depthSort);
115
+ }
116
+ currentWorkRoot = treesInProgress.shift();
117
+ len = treesInProgress.length;
118
+ const flags = currentWorkRoot.flags;
119
+ if (flags & FLAG_DELETION)
120
+ continue;
121
+ if (flags & FLAG_DIRTY) {
122
+ let n = currentWorkRoot;
123
+ while ((n = performUnitOfWork(n))) { }
124
+ while (deletions.length) {
125
+ commitDeletion(deletions.pop());
126
+ }
127
+ commitWork(currentWorkRoot);
128
+ currentWorkRoot.flags &= ~FLAG_DIRTY;
129
+ }
199
130
  }
131
+ onAfterFlushDomChanges();
200
132
  isImmediateEffectsMode = true;
201
133
  flushEffects(preEffects);
202
134
  isImmediateEffectsMode = false;
@@ -220,38 +152,6 @@ function doWork() {
220
152
  window.__kiru?.profilingContext?.endTick(appCtx);
221
153
  }
222
154
  }
223
- function queueBlockedContextDependencyRoots() {
224
- if (pendingContextChanges.size === 0)
225
- return null;
226
- // TODO: it's possible that a 'job' created by this process is
227
- // blocked by a parent memo after a queueUpdate -> replaceTree action.
228
- // To prevent this, we might need to add these to a distinct queue.
229
- const jobRoots = [];
230
- pendingContextChanges.forEach((provider) => {
231
- provider.props.dependents.forEach((dep) => {
232
- if (!willMemoBlockUpdate(provider, dep))
233
- return;
234
- for (let i = 0; i < jobRoots.length; i++) {
235
- const root = jobRoots[i];
236
- if (vNodeContains(root, dep)) {
237
- if (willMemoBlockUpdate(root, dep)) {
238
- // root is a parent of dep and there's a memo between them, prevent consolidation and queue as new root
239
- break;
240
- }
241
- return;
242
- }
243
- if (vNodeContains(dep, root)) {
244
- jobRoots[i] = dep;
245
- return;
246
- }
247
- }
248
- jobRoots.push(dep);
249
- });
250
- });
251
- pendingContextChanges.clear();
252
- treesInProgress.push(...jobRoots);
253
- return jobRoots[0] ?? null;
254
- }
255
155
  function performUnitOfWork(vNode) {
256
156
  let renderChild = true;
257
157
  try {
@@ -260,17 +160,13 @@ function performUnitOfWork(vNode) {
260
160
  updateHostComponent(vNode);
261
161
  }
262
162
  else if (isExoticType(vNode.type)) {
263
- if (vNode.type === $CONTEXT_PROVIDER) {
264
- const asProvider = vNode;
265
- const { dependents, value } = asProvider.props;
266
- if (dependents.size &&
267
- asProvider.prev &&
268
- asProvider.prev.props.value !== value) {
269
- pendingContextChanges.add(asProvider);
163
+ if (vNode?.type === $CONTEXT_PROVIDER) {
164
+ const { props: { dependents, value }, prev, } = vNode;
165
+ if (dependents.size && prev && prev.props.value !== value) {
166
+ dependents.forEach(queueUpdate);
270
167
  }
271
168
  }
272
169
  vNode.child = reconcileChildren(vNode, props.children);
273
- queueNodeChildDeletions(vNode);
274
170
  }
275
171
  else {
276
172
  renderChild = updateFunctionComponent(vNode);
@@ -296,6 +192,10 @@ function performUnitOfWork(vNode) {
296
192
  throw error;
297
193
  });
298
194
  }
195
+ if (vNode.deletions !== null) {
196
+ vNode.deletions.forEach(queueDelete);
197
+ vNode.deletions = null;
198
+ }
299
199
  if (renderChild && vNode.child) {
300
200
  return vNode.child;
301
201
  }
@@ -310,7 +210,7 @@ function performUnitOfWork(vNode) {
310
210
  postEffects.push(...nextNode.effects);
311
211
  nextNode.effects = undefined;
312
212
  }
313
- if (nextNode === treesInProgress[currentTreeIndex])
213
+ if (nextNode === currentWorkRoot)
314
214
  return;
315
215
  if (nextNode.sibling) {
316
216
  return nextNode.sibling;
@@ -328,14 +228,17 @@ function updateFunctionComponent(vNode) {
328
228
  if (prev?.memoizedProps &&
329
229
  vNode.arePropsEqual(prev.memoizedProps, props) &&
330
230
  !vNode.hmrUpdated) {
231
+ vNode.flags |= FLAG_NOOP;
331
232
  return false;
332
233
  }
234
+ vNode.flags &= ~FLAG_NOOP;
333
235
  }
334
236
  try {
335
237
  node.current = vNode;
336
238
  let newChild;
337
239
  let renderTryCount = 0;
338
240
  do {
241
+ vNode.flags &= ~FLAG_DIRTY;
339
242
  isRenderDirtied = false;
340
243
  hookIndex.current = 0;
341
244
  /**
@@ -366,7 +269,6 @@ function updateFunctionComponent(vNode) {
366
269
  newChild = type(props);
367
270
  } while (isRenderDirtied);
368
271
  vNode.child = reconcileChildren(vNode, newChild);
369
- queueNodeChildDeletions(vNode);
370
272
  return true;
371
273
  }
372
274
  finally {
@@ -394,18 +296,11 @@ function updateHostComponent(vNode) {
394
296
  // text should _never_ have children
395
297
  if (type !== "#text") {
396
298
  vNode.child = reconcileChildren(vNode, props.children);
397
- queueNodeChildDeletions(vNode);
398
299
  if (vNode.child && renderMode.current === "hydrate") {
399
300
  hydrationStack.push(vNode.dom);
400
301
  }
401
302
  }
402
303
  }
403
- function queueNodeChildDeletions(vNode) {
404
- if (vNode.deletions) {
405
- vNode.deletions.forEach(queueDelete);
406
- vNode.deletions = null;
407
- }
408
- }
409
304
  function checkForTooManyConsecutiveDirtyRenders() {
410
305
  if (consecutiveDirtyCount > CONSECUTIVE_DIRTY_LIMIT) {
411
306
  throw new KiruError("Maximum update depth exceeded. This can happen when a component repeatedly calls setState during render or in useLayoutEffect. Kiru limits the number of nested updates to prevent infinite loops.");