kiru 1.3.4 → 1.4.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.
@@ -1 +1 @@
1
- {"version":3,"file":"props.d.ts","sourceRoot":"","sources":["../../src/dom/props.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAA;AAM3C,OAAO,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAe,MAAM,mBAAmB,CAAA;AAEvE,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,aAAa,EAAE,CAAA;AAEzD,KAAK,KAAK,GAAG,IAAI,CAAC,KAAK,CAAA;AA2BvB,iBAAS,cAAc,CAAC,KAAK,EAAE,QAAQ,QAiOtC;AAED,iBAAS,eAAe,CACtB,KAAK,EAAE,QAAQ,EACf,GAAG,EAAE,OAAO,EACZ,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC9B,QAAQ,CAAC,EAAE,QAAQ,CAAC,UAAU,CAAC,QAyDhC;AA2KD,iBAAS,aAAa,CACpB,KAAK,EAAE,KAAK,EACZ,GAAG,EAAE,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,EAC3B,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,EACnB,SAAS,EAAE,OAAO,QAmCnB"}
1
+ {"version":3,"file":"props.d.ts","sourceRoot":"","sources":["../../src/dom/props.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAA;AAM3C,OAAO,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAe,MAAM,mBAAmB,CAAA;AAEvE,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,aAAa,EAAE,CAAA;AAEzD,KAAK,KAAK,GAAG,IAAI,CAAC,KAAK,CAAA;AA2BvB,iBAAS,cAAc,CAAC,KAAK,EAAE,QAAQ,QAiOtC;AAED,iBAAS,eAAe,CACtB,KAAK,EAAE,QAAQ,EACf,GAAG,EAAE,OAAO,EACZ,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC9B,QAAQ,CAAC,EAAE,QAAQ,CAAC,UAAU,CAAC,QAyDhC;AA2KD,iBAAS,aAAa,CACpB,KAAK,EAAE,KAAK,EACZ,GAAG,EAAE,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,EAC3B,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,EACnB,SAAS,EAAE,OAAO,QAqCnB"}
package/dist/dom/props.js CHANGED
@@ -1,4 +1,5 @@
1
1
  import { propToHtmlAttr, getVNodeApp, setRef, registerVNodeCleanup, latest, } from "../utils/index.js";
2
+ import { isHmrUpdate } from "../hmr.js";
2
3
  import { Signal } from "../signals/base.js";
3
4
  import { unwrap } from "../signals/utils.js";
4
5
  import { booleanAttributes, EVENT_PREFIX_REGEX } from "../constants.js";
@@ -440,7 +441,10 @@ function setSignalProp(vNode, dom, key, signal, prevValue) {
440
441
  }
441
442
  const value = signal.peek();
442
443
  const prev = unwrap(prevValue);
443
- if (modifier !== "bind" && value !== prev) {
444
+ if (__DEV__ && isHmrUpdate() && modifier !== "bind") {
445
+ setProp(dom, attr ?? modifier, value, prev);
446
+ }
447
+ else if (modifier !== "bind" && value !== prev) {
444
448
  setProp(dom, attr ?? modifier, value, prev);
445
449
  }
446
450
  }
@@ -1 +1 @@
1
- {"version":3,"file":"props.js","sourceRoot":"","sources":["../../src/dom/props.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"props.js","sourceRoot":"","sources":["../../src/dom/props.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,7 @@ import { Signal } from "../signals/base.js";
2
2
  export interface Setup<Props extends {}> {
3
3
  readonly derive: <T>(selector: (props: Props extends Kiru.FC<infer P> ? P : Props) => T) => Signal<T>;
4
4
  readonly id: Signal<string>;
5
+ readonly props: Readonly<Props extends Kiru.FC<infer P> ? P : Props>;
5
6
  }
6
7
  /**
7
8
  * Creates a per‑VNode setup context that can be used during
@@ -1 +1 @@
1
- {"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../../src/hooks/setup.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,MAAM,EAAE,MAAM,oBAAoB,CAAA;AAUnD,MAAM,WAAW,KAAK,CAAC,KAAK,SAAS,EAAE;IACrC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,EACjB,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,SAAS,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,KAAK,CAAC,KAC/D,MAAM,CAAC,CAAC,CAAC,CAAA;IACd,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC,MAAM,CAAC,CAAA;CAC5B;AAED;;;;;GAKG;AACH,wBAAgB,KAAK,CAAC,KAAK,SAAS,EAAE,KAAK,KAAK,CAAC,KAAK,CAAC,CAkBtD"}
1
+ {"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../../src/hooks/setup.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,MAAM,EAAE,MAAM,oBAAoB,CAAA;AAanD,MAAM,WAAW,KAAK,CAAC,KAAK,SAAS,EAAE;IACrC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,EACjB,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,SAAS,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,KAAK,CAAC,KAC/D,MAAM,CAAC,CAAC,CAAC,CAAA;IACd,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC,MAAM,CAAC,CAAA;IAE3B,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,KAAK,SAAS,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,CAAA;CACrE;AAED;;;;;GAKG;AACH,wBAAgB,KAAK,CAAC,KAAK,SAAS,EAAE,KAAK,KAAK,CAAC,KAAK,CAAC,CAkBtD"}
@@ -1,9 +1,11 @@
1
1
  import { signal, Signal } from "../signals/base.js";
2
- import { createVNodeId } from "../utils/vdom.js";
2
+ import { createVNodeId, isVNodeDeleted } from "../utils/vdom.js";
3
3
  import { __DEV__ } from "../env.js";
4
4
  import { node, setups } from "../globals.js";
5
5
  import { tracking, } from "../signals/tracking.js";
6
6
  import { registerVNodeCleanup } from "../utils/index.js";
7
+ let currentAccessedPaths = null;
8
+ const OWN_KEYS = `__KEYS__`;
7
9
  /**
8
10
  * Creates a per‑VNode setup context that can be used during
9
11
  * component setup to derive props into signals.
@@ -29,6 +31,7 @@ export function setup() {
29
31
  }
30
32
  function createSetup(vNode) {
31
33
  let id;
34
+ let propsProxy;
32
35
  const propSyncs = (vNode.propSyncs = []);
33
36
  let prevIndex = -1;
34
37
  // Always points at latest props (updated in propSync) so selector and subs see current props
@@ -39,8 +42,8 @@ function createSetup(vNode) {
39
42
  const old = currentProps.current;
40
43
  const skip = new Set();
41
44
  for (const entry of deriveEntries) {
42
- if (entry.accessedPaths.size > 0 &&
43
- propsUnchangedAtPaths(old, p, entry.accessedPaths)) {
45
+ if (entry.paths.size > 0 &&
46
+ propsUnchangedAtPaths(old, p, entry.paths)) {
44
47
  skip.add(entry);
45
48
  }
46
49
  }
@@ -62,10 +65,12 @@ function createSetup(vNode) {
62
65
  const accessedPaths = new Set();
63
66
  function sync() {
64
67
  accessedPaths.clear();
65
- const propsProxy = createPropsProxy(currentProps.current, accessedPaths);
68
+ const propsProxy = createProxy(currentProps.current);
66
69
  const observations = new Map();
67
70
  tracking.stack.push(observations);
71
+ currentAccessedPaths = accessedPaths;
68
72
  const value = selector(propsProxy);
73
+ currentAccessedPaths = null;
69
74
  tracking.stack.pop();
70
75
  // Always assign and notify so the component re-renders when the derived value changes
71
76
  // (e.g. when parent passes a different signal ref like toggle switching count/double).
@@ -88,7 +93,7 @@ function createSetup(vNode) {
88
93
  }
89
94
  }
90
95
  sync();
91
- const entry = { run: sync, accessedPaths };
96
+ const entry = { run: sync, paths: accessedPaths };
92
97
  deriveEntries.push(entry);
93
98
  deriveCleanups.push(() => {
94
99
  unsubs.forEach((u) => u());
@@ -102,6 +107,13 @@ function createSetup(vNode) {
102
107
  get id() {
103
108
  if (!id) {
104
109
  id = signal(createVNodeId(vNode));
110
+ if (isVNodeDeleted(vNode)) {
111
+ return id;
112
+ }
113
+ if (node.current !== vNode) {
114
+ // @ts-expect-error
115
+ registerVNodeCleanup(vNode, id.$id, Signal.dispose.bind(null, id));
116
+ }
105
117
  prevIndex = vNode.index;
106
118
  propSyncs.push(() => {
107
119
  if (prevIndex !== vNode.index) {
@@ -112,47 +124,100 @@ function createSetup(vNode) {
112
124
  }
113
125
  return id;
114
126
  },
127
+ get props() {
128
+ return (propsProxy ?? (propsProxy = new Proxy({}, {
129
+ get(_, key) {
130
+ if (typeof key === "symbol")
131
+ return Reflect.get(currentProps.current, key);
132
+ const v = currentProps.current[key];
133
+ if (v !== null && typeof v === "object" && !Signal.isSignal(v)) {
134
+ return createProxy(v);
135
+ }
136
+ return v;
137
+ },
138
+ })));
139
+ },
115
140
  };
116
141
  return setupResult;
117
142
  }
118
- function propsUnchangedAtPaths(oldProps, newProps, paths) {
119
- for (const path of paths) {
120
- if (!Object.is(getAtPath(oldProps, path), getAtPath(newProps, path))) {
121
- return false;
143
+ function propsUnchangedAtPaths(oldProps, newProps, accessedPaths) {
144
+ outer: for (const path of accessedPaths) {
145
+ let a = oldProps;
146
+ let b = newProps;
147
+ for (let i = 0; i < path.length; i++) {
148
+ const key = path[i];
149
+ // Sentinel: caller iterated keys of the object at this path —
150
+ // re-run if the key sets differ
151
+ if (key === OWN_KEYS) {
152
+ if (a === b)
153
+ continue outer;
154
+ if (a == null ||
155
+ b == null ||
156
+ typeof a !== "object" ||
157
+ typeof b !== "object") {
158
+ return false;
159
+ }
160
+ const aKeys = Object.keys(a);
161
+ const bKeys = Object.keys(b);
162
+ if (aKeys.length !== bKeys.length)
163
+ return false;
164
+ for (const k of aKeys) {
165
+ if (!(k in b))
166
+ return false;
167
+ }
168
+ continue outer;
169
+ }
170
+ if (a === b)
171
+ continue outer;
172
+ if (a == null ||
173
+ b == null ||
174
+ typeof a !== "object" ||
175
+ typeof b !== "object") {
176
+ if (!Object.is(a, b))
177
+ return false;
178
+ continue outer;
179
+ }
180
+ a = a[key];
181
+ b = b[key];
122
182
  }
183
+ if (!Object.is(a, b))
184
+ return false;
123
185
  }
124
186
  return true;
125
187
  }
126
- function getAtPath(obj, path) {
127
- let cur = obj;
128
- for (const key of path.split(".")) {
129
- if (cur == null || typeof cur !== "object")
130
- return undefined;
131
- cur = cur[key];
132
- }
133
- return cur;
134
- }
188
+ const proxyCache = new WeakMap();
135
189
  /**
136
- * Proxy that records paths and wraps signals. We only add to accessedPaths when
137
- * we hit a signal (the leaf we subscribe to), so propSync skip only compares
138
- * signal refs. Container objects (e.g. "data") are new every render and would
139
- * always fail the skip.
190
+ * Proxy that records accessed paths and primitives into the current
191
+ * tracking context (currentAccessedPaths).
140
192
  */
141
- function createPropsProxy(props, accessedPaths, pathPrefix) {
142
- return new Proxy(props, {
143
- get(holder, key) {
144
- const path = pathPrefix ? `${pathPrefix}.${key}` : key;
145
- const v = holder[key];
146
- if (Signal.isSignal(v)) {
147
- accessedPaths.add(path); // only record path for signal leaves
193
+ function createProxy(source, path = []) {
194
+ let cached = proxyCache.get(source);
195
+ if (!cached) {
196
+ cached = new Proxy(source, {
197
+ get(holder, key) {
198
+ if (typeof key === "symbol")
199
+ return Reflect.get(holder, key);
200
+ const keyPath = [...path, key];
201
+ const v = holder[key];
202
+ if (v !== null && typeof v === "object" && !Signal.isSignal(v)) {
203
+ return createProxy(v, keyPath);
204
+ }
205
+ currentAccessedPaths?.add(keyPath);
148
206
  return v;
149
- }
150
- if (v !== null && typeof v === "object" && !Array.isArray(v)) {
151
- return createPropsProxy(v, accessedPaths, path);
152
- }
153
- accessedPaths.add(path); // primitive leaf
154
- return v;
155
- },
156
- });
207
+ },
208
+ has(holder, key) {
209
+ if (typeof key === "symbol")
210
+ return Reflect.has(holder, key);
211
+ currentAccessedPaths?.add([...path, key]);
212
+ return key in holder;
213
+ },
214
+ ownKeys(holder) {
215
+ currentAccessedPaths?.add([...path, OWN_KEYS]);
216
+ return Reflect.ownKeys(holder);
217
+ },
218
+ });
219
+ proxyCache.set(source, cached);
220
+ }
221
+ return cached;
157
222
  }
158
223
  //# sourceMappingURL=setup.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"setup.js","sourceRoot":"","sources":["../../src/hooks/setup.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"setup.js","sourceRoot":"","sources":["../../src/hooks/setup.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAA;AACnD,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AAChE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,eAAe,CAAA;AAC5C,OAAO,EACL,QAAQ,GAET,MAAM,wBAAwB,CAAA;AAC/B,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAA;AAExD,IAAI,oBAAoB,GAAyB,IAAI,CAAA;AACrD,MAAM,QAAQ,GAAG,UAAU,CAAA;AAW3B;;;;;GAKG;AACH,MAAM,UAAU,KAAK;IACnB,MAAM,KAAK,GAAG,IAAI,CAAC,OAAQ,CAAA;IAC3B,IAAI,OAAO,EAAE,CAAC;QACZ,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAA;QACnE,CAAC;QACD,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAA;QACpE,CAAC;IACH,CAAC;IAED,IAAI,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;QACtB,OAAO,MAAM,CAAC,GAAG,CAAC,KAAK,CAAE,CAAA;IAC3B,CAAC;IAED,MAAM,KAAK,GAAG,WAAW,CAAQ,KAAK,CAAC,CAAA;IACvC,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA;IACxB,OAAO,KAAK,CAAA;AACd,CAAC;AAED,SAAS,WAAW,CAAmB,KAAiB;IACtD,IAAI,EAAkB,CAAA;IACtB,IAAI,UAAyB,CAAA;IAG7B,MAAM,SAAS,GAAG,CAAC,KAAK,CAAC,SAAS,GAAG,EAAE,CAAuC,CAAA;IAE9E,IAAI,SAAS,GAAG,CAAC,CAAC,CAAA;IAElB,6FAA6F;IAC7F,MAAM,YAAY,GAAG,EAAE,OAAO,EAAE,EAAE,GAAG,KAAK,CAAC,KAAK,EAAmB,EAAE,CAAA;IACrE,MAAM,cAAc,GAAsB,EAAE,CAAA;IAG5C,MAAM,aAAa,GAAkB,EAAE,CAAA;IAEvC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;QACnB,MAAM,GAAG,GAAG,YAAY,CAAC,OAAkC,CAAA;QAC3D,MAAM,IAAI,GAAG,IAAI,GAAG,EAAe,CAAA;QACnC,KAAK,MAAM,KAAK,IAAI,aAAa,EAAE,CAAC;YAClC,IACE,KAAK,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC;gBACpB,qBAAqB,CAAC,GAAG,EAAE,CAA4B,EAAE,KAAK,CAAC,KAAK,CAAC,EACrE,CAAC;gBACD,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;YACjB,CAAC;QACH,CAAC;QACD,YAAY,CAAC,OAAO,GAAG,CAAC,CAAA;QACxB,KAAK,MAAM,KAAK,IAAI,aAAa,EAAE,CAAC;YAClC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC;gBAAE,KAAK,CAAC,GAAG,EAAE,CAAA;QACnC,CAAC;IACH,CAAC,CAAC,CAAA;IAEF,oBAAoB,CAAC,KAAK,EAAE,aAAa,EAAE,GAAG,EAAE;QAC9C,KAAK,MAAM,OAAO,IAAI,cAAc;YAAE,OAAO,EAAE,CAAA;QAC/C,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;IACtB,CAAC,CAAC,CAAA;IAEF,MAAM,WAAW,GAAiB;QAChC,MAAM,CACJ,QAAkE;YAElE,MAAM,SAAS,GAAG,MAAM,CAAC,SAAU,CAAc,CAAA;YACjD,MAAM,MAAM,GAAG,IAAI,GAAG,EAAsB,CAAA;YAC5C,MAAM,aAAa,GAAG,IAAI,GAAG,EAAY,CAAA;YAEzC,SAAS,IAAI;gBACX,aAAa,CAAC,KAAK,EAAE,CAAA;gBACrB,MAAM,UAAU,GAAG,WAAW,CAC5B,YAAY,CAAC,OAAkC,CAC/B,CAAA;gBAClB,MAAM,YAAY,GAA8B,IAAI,GAAG,EAAE,CAAA;gBACzD,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;gBACjC,oBAAoB,GAAG,aAAa,CAAA;gBACpC,MAAM,KAAK,GAAG,QAAQ,CAAC,UAAU,CAAC,CAAA;gBAClC,oBAAoB,GAAG,IAAI,CAAA;gBAC3B,QAAQ,CAAC,KAAK,CAAC,GAAG,EAAE,CAAA;gBACpB,sFAAsF;gBACtF,uFAAuF;gBACvF,SAAS,CAAC,KAAK,GAAG,KAAK,CAAA;gBAEvB,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,EAAE,CAAC;oBAClC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;wBAC3B,KAAK,EAAE,CAAA;wBACP,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;oBACpB,CAAC;gBACH,CAAC;gBACD,KAAK,MAAM,CAAC,GAAG,EAAE,WAAW,CAAC,IAAI,YAAY,EAAE,CAAC;oBAC9C,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;wBACrB,IAAI,CAAC;4BACH,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,WAAW,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAA;wBAC9C,CAAC;wBAAC,MAAM,CAAC;4BACP,qDAAqD;wBACvD,CAAC;oBACH,CAAC;gBACH,CAAC;YACH,CAAC;YAED,IAAI,EAAE,CAAA;YACN,MAAM,KAAK,GAAgB,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,aAAa,EAAE,CAAA;YAC9D,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;YACzB,cAAc,CAAC,IAAI,CAAC,GAAG,EAAE;gBACvB,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAA;gBAC1B,MAAM,CAAC,KAAK,EAAE,CAAA;gBACd,MAAM,CAAC,GAAG,aAAa,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;gBACtC,IAAI,CAAC,KAAK,CAAC,CAAC;oBAAE,aAAa,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;YAC1C,CAAC,CAAC,CAAA;YAEF,OAAO,SAAS,CAAA;QAClB,CAAC;QACD,IAAI,EAAE;YACJ,IAAI,CAAC,EAAE,EAAE,CAAC;gBACR,EAAE,GAAG,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAA;gBACjC,IAAI,cAAc,CAAC,KAAK,CAAC,EAAE,CAAC;oBAC1B,OAAO,EAAE,CAAA;gBACX,CAAC;gBACD,IAAI,IAAI,CAAC,OAAO,KAAK,KAAK,EAAE,CAAC;oBAC3B,mBAAmB;oBACnB,oBAAoB,CAAC,KAAK,EAAE,EAAE,CAAC,GAAG,EAAE,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAA;gBACpE,CAAC;gBACD,SAAS,GAAG,KAAK,CAAC,KAAK,CAAA;gBACvB,SAAS,CAAC,IAAI,CAAC,GAAG,EAAE;oBAClB,IAAI,SAAS,KAAK,KAAK,CAAC,KAAK,EAAE,CAAC;wBAC9B,EAAE,CAAC,KAAK,GAAG,aAAa,CAAC,KAAK,CAAC,CAAA;wBAC/B,SAAS,GAAG,KAAK,CAAC,KAAK,CAAA;oBACzB,CAAC;gBACH,CAAC,CAAC,CAAA;YACJ,CAAC;YAED,OAAO,EAAE,CAAA;QACX,CAAC;QACD,IAAI,KAAK;YACP,OAAO,CAAC,UAAU,KAAV,UAAU,GAAK,IAAI,KAAK,CAC9B,EAAE,EACF;gBACE,GAAG,CAAC,CAAC,EAAE,GAAG;oBACR,IAAI,OAAO,GAAG,KAAK,QAAQ;wBACzB,OAAO,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,OAAc,EAAE,GAAG,CAAC,CAAA;oBACtD,MAAM,CAAC,GAAI,YAAY,CAAC,OAAe,CAAC,GAAG,CAAC,CAAA;oBAC5C,IAAI,CAAC,KAAK,IAAI,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;wBAC/D,OAAO,WAAW,CAAC,CAAC,CAAC,CAAA;oBACvB,CAAC;oBACD,OAAO,CAAC,CAAA;gBACV,CAAC;aACF,CACe,EAAC,CAAA;QACrB,CAAC;KACF,CAAA;IACD,OAAO,WAAW,CAAA;AACpB,CAAC;AAED,SAAS,qBAAqB,CAC5B,QAAiC,EACjC,QAAiC,EACjC,aAA4B;IAE5B,KAAK,EAAE,KAAK,MAAM,IAAI,IAAI,aAAa,EAAE,CAAC;QACxC,IAAI,CAAC,GAAY,QAAQ,CAAA;QACzB,IAAI,CAAC,GAAY,QAAQ,CAAA;QAEzB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACrC,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAA;YAEnB,8DAA8D;YAC9D,gCAAgC;YAChC,IAAI,GAAG,KAAK,QAAQ,EAAE,CAAC;gBACrB,IAAI,CAAC,KAAK,CAAC;oBAAE,SAAS,KAAK,CAAA;gBAC3B,IACE,CAAC,IAAI,IAAI;oBACT,CAAC,IAAI,IAAI;oBACT,OAAO,CAAC,KAAK,QAAQ;oBACrB,OAAO,CAAC,KAAK,QAAQ,EACrB,CAAC;oBACD,OAAO,KAAK,CAAA;gBACd,CAAC;gBACD,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;gBAC5B,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;gBAC5B,IAAI,KAAK,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM;oBAAE,OAAO,KAAK,CAAA;gBAC/C,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;oBACtB,IAAI,CAAC,CAAC,CAAC,IAAK,CAAY,CAAC;wBAAE,OAAO,KAAK,CAAA;gBACzC,CAAC;gBACD,SAAS,KAAK,CAAA;YAChB,CAAC;YAED,IAAI,CAAC,KAAK,CAAC;gBAAE,SAAS,KAAK,CAAA;YAC3B,IACE,CAAC,IAAI,IAAI;gBACT,CAAC,IAAI,IAAI;gBACT,OAAO,CAAC,KAAK,QAAQ;gBACrB,OAAO,CAAC,KAAK,QAAQ,EACrB,CAAC;gBACD,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;oBAAE,OAAO,KAAK,CAAA;gBAClC,SAAS,KAAK,CAAA;YAChB,CAAC;YACD,CAAC,GAAI,CAA6B,CAAC,GAAG,CAAC,CAAA;YACvC,CAAC,GAAI,CAA6B,CAAC,GAAG,CAAC,CAAA;QACzC,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;YAAE,OAAO,KAAK,CAAA;IACpC,CAAC;IAED,OAAO,IAAI,CAAA;AACb,CAAC;AAED,MAAM,UAAU,GAAG,IAAI,OAAO,EAAe,CAAA;AAE7C;;;GAGG;AACH,SAAS,WAAW,CAClB,MAAS,EACT,OAAiB,EAAE;IAEnB,IAAI,MAAM,GAAG,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;IAEnC,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,GAAG,IAAI,KAAK,CAAC,MAAM,EAAE;YACzB,GAAG,CAAC,MAAM,EAAE,GAAoB;gBAC9B,IAAI,OAAO,GAAG,KAAK,QAAQ;oBAAE,OAAO,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;gBAE5D,MAAM,OAAO,GAAG,CAAC,GAAG,IAAI,EAAE,GAAa,CAAC,CAAA;gBACxC,MAAM,CAAC,GAAG,MAAM,CAAC,GAAa,CAAC,CAAA;gBAE/B,IAAI,CAAC,KAAK,IAAI,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;oBAC/D,OAAO,WAAW,CAAC,CAA4B,EAAE,OAAO,CAAC,CAAA;gBAC3D,CAAC;gBAED,oBAAoB,EAAE,GAAG,CAAC,OAAO,CAAC,CAAA;gBAClC,OAAO,CAAC,CAAA;YACV,CAAC;YACD,GAAG,CAAC,MAAM,EAAE,GAAoB;gBAC9B,IAAI,OAAO,GAAG,KAAK,QAAQ;oBAAE,OAAO,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;gBAC5D,oBAAoB,EAAE,GAAG,CAAC,CAAC,GAAG,IAAI,EAAE,GAAa,CAAC,CAAC,CAAA;gBACnD,OAAO,GAAG,IAAI,MAAM,CAAA;YACtB,CAAC;YACD,OAAO,CAAC,MAAM;gBACZ,oBAAoB,EAAE,GAAG,CAAC,CAAC,GAAG,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAA;gBAC9C,OAAO,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;YAChC,CAAC;SACF,CAAC,CAAA;QAEF,UAAU,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAChC,CAAC;IAED,OAAO,MAAM,CAAA;AACf,CAAC"}
package/dist/types.d.ts CHANGED
@@ -16,28 +16,167 @@ type SignalableAriaProps = {
16
16
  [K in keyof ARIAMixin]?: Signalable<ARIAMixin[K] | undefined>;
17
17
  };
18
18
  type SignalableGlobalAttributes = {
19
- [K in keyof GlobalAttributes]: Signalable<GlobalAttributes[K] | undefined>;
19
+ [K in keyof GlobalAttributes]?: Signalable<GlobalAttributes[K] | undefined>;
20
20
  };
21
21
  type SignalableSvgGlobalAttributes = {
22
- [K in keyof SvgGlobalAttributes]: Signalable<SvgGlobalAttributes[K] | undefined>;
22
+ [K in keyof SvgGlobalAttributes]?: Signalable<SvgGlobalAttributes[K] | undefined>;
23
23
  };
24
- type ElementMap = {
25
- [Tag in keyof HtmlElementAttributes]: SignalableHtmlElementAttributes<Tag> & SignalableGlobalAttributes & SignalableAriaProps & Kiru.EventAttributes<HTMLTagToElement<Tag>> & JSX.ElementAttributes & {
26
- ref?: Kiru.Ref<Element | null> | SignalClass<Element | null> | null;
27
- };
28
- } & {
29
- [Tag in keyof SvgElementAttributes]: SignalableSvgElementAttributes<Tag> & SignalableSvgGlobalAttributes & SignalableGlobalAttributes & SignalableAriaProps & Kiru.EventAttributes<SVGTagToElement<Tag>> & JSX.ElementAttributes & {
30
- ref?: Kiru.Ref<Element | null> | SignalClass<Element | null> | null;
31
- };
32
- } & {
33
- [Tag in `${string}-${string}`]: Record<string, any>;
24
+ type HTMLElementProps<Tag extends keyof HtmlElementAttributes> = SignalableHtmlElementAttributes<Tag> & SignalableGlobalAttributes & SignalableAriaProps & Kiru.EventAttributes<HTMLTagToElement<Tag>> & JSX.ElementAttributes & {
25
+ ref?: Kiru.Ref<Element | null> | SignalClass<Element | null> | null;
26
+ };
27
+ type SVGElementProps<Tag extends keyof SvgElementAttributes> = SignalableSvgElementAttributes<Tag> & SignalableSvgGlobalAttributes & SignalableGlobalAttributes & SignalableAriaProps & Kiru.EventAttributes<SVGTagToElement<Tag>> & JSX.ElementAttributes & {
28
+ ref?: Kiru.Ref<Element | null> | SignalClass<Element | null> | null;
34
29
  };
35
30
  declare global {
36
31
  interface Window {
37
32
  __kiru: KiruGlobalContext;
38
33
  }
39
34
  namespace JSX {
40
- interface IntrinsicElements extends ElementMap {
35
+ interface IntrinsicElements {
36
+ a: HTMLElementProps<"a">;
37
+ abbr: HTMLElementProps<"abbr">;
38
+ address: HTMLElementProps<"address">;
39
+ area: HTMLElementProps<"area">;
40
+ article: HTMLElementProps<"article">;
41
+ aside: HTMLElementProps<"aside">;
42
+ audio: HTMLElementProps<"audio">;
43
+ b: HTMLElementProps<"b">;
44
+ base: HTMLElementProps<"base">;
45
+ bdi: HTMLElementProps<"bdi">;
46
+ bdo: HTMLElementProps<"bdo">;
47
+ big: HTMLElementProps<"big">;
48
+ blockquote: HTMLElementProps<"blockquote">;
49
+ body: HTMLElementProps<"body">;
50
+ br: HTMLElementProps<"br">;
51
+ button: HTMLElementProps<"button">;
52
+ canvas: HTMLElementProps<"canvas">;
53
+ caption: HTMLElementProps<"caption">;
54
+ cite: HTMLElementProps<"cite">;
55
+ code: HTMLElementProps<"code">;
56
+ col: HTMLElementProps<"col">;
57
+ colgroup: HTMLElementProps<"colgroup">;
58
+ data: HTMLElementProps<"data">;
59
+ datalist: HTMLElementProps<"datalist">;
60
+ dd: HTMLElementProps<"dd">;
61
+ del: HTMLElementProps<"del">;
62
+ details: HTMLElementProps<"details">;
63
+ dfn: HTMLElementProps<"dfn">;
64
+ dialog: HTMLElementProps<"dialog">;
65
+ div: HTMLElementProps<"div">;
66
+ dl: HTMLElementProps<"dl">;
67
+ dt: HTMLElementProps<"dt">;
68
+ em: HTMLElementProps<"em">;
69
+ embed: HTMLElementProps<"embed">;
70
+ fieldset: HTMLElementProps<"fieldset">;
71
+ figcaption: HTMLElementProps<"figcaption">;
72
+ figure: HTMLElementProps<"figure">;
73
+ footer: HTMLElementProps<"footer">;
74
+ form: HTMLElementProps<"form">;
75
+ h1: HTMLElementProps<"h1">;
76
+ h2: HTMLElementProps<"h2">;
77
+ h3: HTMLElementProps<"h3">;
78
+ h4: HTMLElementProps<"h4">;
79
+ h5: HTMLElementProps<"h5">;
80
+ h6: HTMLElementProps<"h6">;
81
+ head: HTMLElementProps<"head">;
82
+ header: HTMLElementProps<"header">;
83
+ hgroup: HTMLElementProps<"hgroup">;
84
+ hr: HTMLElementProps<"hr">;
85
+ html: HTMLElementProps<"html">;
86
+ i: HTMLElementProps<"i">;
87
+ iframe: HTMLElementProps<"iframe">;
88
+ img: HTMLElementProps<"img">;
89
+ input: HTMLElementProps<"input">;
90
+ ins: HTMLElementProps<"ins">;
91
+ kbd: HTMLElementProps<"kbd">;
92
+ label: HTMLElementProps<"label">;
93
+ legend: HTMLElementProps<"legend">;
94
+ li: HTMLElementProps<"li">;
95
+ link: HTMLElementProps<"link">;
96
+ main: HTMLElementProps<"main">;
97
+ map: HTMLElementProps<"map">;
98
+ mark: HTMLElementProps<"mark">;
99
+ menu: HTMLElementProps<"menu">;
100
+ meta: HTMLElementProps<"meta">;
101
+ meter: HTMLElementProps<"meter">;
102
+ nav: HTMLElementProps<"nav">;
103
+ noscript: HTMLElementProps<"noscript">;
104
+ object: HTMLElementProps<"object">;
105
+ ol: HTMLElementProps<"ol">;
106
+ optgroup: HTMLElementProps<"optgroup">;
107
+ option: HTMLElementProps<"option">;
108
+ output: HTMLElementProps<"output">;
109
+ p: HTMLElementProps<"p">;
110
+ picture: HTMLElementProps<"picture">;
111
+ pre: HTMLElementProps<"pre">;
112
+ progress: HTMLElementProps<"progress">;
113
+ q: HTMLElementProps<"q">;
114
+ rp: HTMLElementProps<"rp">;
115
+ rt: HTMLElementProps<"rt">;
116
+ ruby: HTMLElementProps<"ruby">;
117
+ s: HTMLElementProps<"s">;
118
+ samp: HTMLElementProps<"samp">;
119
+ script: HTMLElementProps<"script">;
120
+ section: HTMLElementProps<"section">;
121
+ select: HTMLElementProps<"select">;
122
+ slot: HTMLElementProps<"slot">;
123
+ small: HTMLElementProps<"small">;
124
+ source: HTMLElementProps<"source">;
125
+ span: HTMLElementProps<"span">;
126
+ strong: HTMLElementProps<"strong">;
127
+ style: HTMLElementProps<"style">;
128
+ sub: HTMLElementProps<"sub">;
129
+ summary: HTMLElementProps<"summary">;
130
+ sup: HTMLElementProps<"sup">;
131
+ table: HTMLElementProps<"table">;
132
+ tbody: HTMLElementProps<"tbody">;
133
+ td: HTMLElementProps<"td">;
134
+ textarea: HTMLElementProps<"textarea">;
135
+ tfoot: HTMLElementProps<"tfoot">;
136
+ th: HTMLElementProps<"th">;
137
+ thead: HTMLElementProps<"thead">;
138
+ time: HTMLElementProps<"time">;
139
+ title: HTMLElementProps<"title">;
140
+ tr: HTMLElementProps<"tr">;
141
+ track: HTMLElementProps<"track">;
142
+ u: HTMLElementProps<"u">;
143
+ ul: HTMLElementProps<"ul">;
144
+ var: HTMLElementProps<"var">;
145
+ video: HTMLElementProps<"video">;
146
+ animateTransform: SVGElementProps<"animateTransform">;
147
+ circle: SVGElementProps<"circle">;
148
+ clipPath: SVGElementProps<"clipPath">;
149
+ defs: SVGElementProps<"defs">;
150
+ desc: SVGElementProps<"desc">;
151
+ ellipse: SVGElementProps<"ellipse">;
152
+ feBlend: SVGElementProps<"feBlend">;
153
+ feComponentTransfer: SVGElementProps<"feComponentTransfer">;
154
+ feDisplacementMap: SVGElementProps<"feDisplacementMap">;
155
+ feDropShadow: SVGElementProps<"feDropShadow">;
156
+ feFlood: SVGElementProps<"feFlood">;
157
+ feFuncA: SVGElementProps<"feFuncA">;
158
+ feFuncB: SVGElementProps<"feFuncB">;
159
+ feFuncG: SVGElementProps<"feFuncG">;
160
+ feFuncR: SVGElementProps<"feFuncR">;
161
+ feGaussianBlur: SVGElementProps<"feGaussianBlur">;
162
+ feTurbulence: SVGElementProps<"feTurbulence">;
163
+ filter: SVGElementProps<"filter">;
164
+ g: SVGElementProps<"g">;
165
+ image: SVGElementProps<"image">;
166
+ line: SVGElementProps<"line">;
167
+ linearGradient: SVGElementProps<"linearGradient">;
168
+ mask: SVGElementProps<"mask">;
169
+ path: SVGElementProps<"path">;
170
+ pattern: SVGElementProps<"pattern">;
171
+ polygon: SVGElementProps<"polygon">;
172
+ polyline: SVGElementProps<"polyline">;
173
+ radialGradient: SVGElementProps<"radialGradient">;
174
+ rect: SVGElementProps<"rect">;
175
+ stop: SVGElementProps<"stop">;
176
+ text: SVGElementProps<"text">;
177
+ textPath: SVGElementProps<"textPath">;
178
+ tspan: SVGElementProps<"tspan">;
179
+ svg: SVGElementProps<"svg">;
41
180
  }
42
181
  interface IntrinsicAttributes {
43
182
  key?: ElementKey;
@@ -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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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "kiru",
3
- "version": "1.3.4",
3
+ "version": "1.4.1",
4
4
  "description": "A batteries-included, easy-to-use rendering library with a tiny footprint",
5
5
  "main": "dist/index.js",
6
6
  "type": "module",
package/src/dom/props.ts CHANGED
@@ -5,6 +5,7 @@ import {
5
5
  registerVNodeCleanup,
6
6
  latest,
7
7
  } from "../utils/index.js"
8
+ import { isHmrUpdate } from "../hmr.js"
8
9
  import { Signal } from "../signals/base.js"
9
10
  import { unwrap } from "../signals/utils.js"
10
11
  import { booleanAttributes, EVENT_PREFIX_REGEX } from "../constants.js"
@@ -538,7 +539,9 @@ function setSignalProp(
538
539
 
539
540
  const value = signal.peek()
540
541
  const prev = unwrap(prevValue)
541
- if (modifier !== "bind" && value !== prev) {
542
+ if (__DEV__ && isHmrUpdate() && modifier !== "bind") {
543
+ setProp(dom, attr ?? modifier, value, prev)
544
+ } else if (modifier !== "bind" && value !== prev) {
542
545
  setProp(dom, attr ?? modifier, value, prev)
543
546
  }
544
547
  }
@@ -1,5 +1,5 @@
1
1
  import { signal, Signal } from "../signals/base.js"
2
- import { createVNodeId } from "../utils/vdom.js"
2
+ import { createVNodeId, isVNodeDeleted } from "../utils/vdom.js"
3
3
  import { __DEV__ } from "../env.js"
4
4
  import { node, setups } from "../globals.js"
5
5
  import {
@@ -8,11 +8,16 @@ import {
8
8
  } from "../signals/tracking.js"
9
9
  import { registerVNodeCleanup } from "../utils/index.js"
10
10
 
11
+ let currentAccessedPaths: Set<string[]> | null = null
12
+ const OWN_KEYS = `__KEYS__`
13
+
11
14
  export interface Setup<Props extends {}> {
12
15
  readonly derive: <T>(
13
16
  selector: (props: Props extends Kiru.FC<infer P> ? P : Props) => T
14
17
  ) => Signal<T>
15
18
  readonly id: Signal<string>
19
+ // Not reactive — for use in render functions only
20
+ readonly props: Readonly<Props extends Kiru.FC<infer P> ? P : Props>
16
21
  }
17
22
 
18
23
  /**
@@ -40,8 +45,10 @@ export function setup<Props extends {}>(): Setup<Props> {
40
45
  setups.set(vNode, setup)
41
46
  return setup
42
47
  }
48
+
43
49
  function createSetup<Props extends {}>(vNode: Kiru.VNode): Setup<Props> {
44
50
  let id: Signal<string>
51
+ let propsProxy: InferredProps
45
52
 
46
53
  type InferredProps = Props extends Kiru.FC<infer R> ? R : Props
47
54
  const propSyncs = (vNode.propSyncs = []) as ((props: InferredProps) => void)[]
@@ -52,7 +59,7 @@ function createSetup<Props extends {}>(vNode: Kiru.VNode): Setup<Props> {
52
59
  const currentProps = { current: { ...vNode.props } as InferredProps }
53
60
  const deriveCleanups: Array<() => void> = []
54
61
 
55
- type DeriveEntry = { run: () => void; accessedPaths: Set<string> }
62
+ type DeriveEntry = { run: () => void; paths: Set<string[]> }
56
63
  const deriveEntries: DeriveEntry[] = []
57
64
 
58
65
  propSyncs.push((p) => {
@@ -60,12 +67,8 @@ function createSetup<Props extends {}>(vNode: Kiru.VNode): Setup<Props> {
60
67
  const skip = new Set<DeriveEntry>()
61
68
  for (const entry of deriveEntries) {
62
69
  if (
63
- entry.accessedPaths.size > 0 &&
64
- propsUnchangedAtPaths(
65
- old,
66
- p as Record<string, unknown>,
67
- entry.accessedPaths
68
- )
70
+ entry.paths.size > 0 &&
71
+ propsUnchangedAtPaths(old, p as Record<string, unknown>, entry.paths)
69
72
  ) {
70
73
  skip.add(entry)
71
74
  }
@@ -87,17 +90,18 @@ function createSetup<Props extends {}>(vNode: Kiru.VNode): Setup<Props> {
87
90
  ) {
88
91
  const resultSig = signal(undefined!) as Signal<T>
89
92
  const unsubs = new Map<string, () => void>()
90
- const accessedPaths = new Set<string>()
93
+ const accessedPaths = new Set<string[]>()
91
94
 
92
95
  function sync() {
93
96
  accessedPaths.clear()
94
- const propsProxy = createPropsProxy(
95
- currentProps.current as Record<string, unknown>,
96
- accessedPaths
97
+ const propsProxy = createProxy(
98
+ currentProps.current as Record<string, unknown>
97
99
  ) as InferredProps
98
100
  const observations: TrackingStackObservations = new Map()
99
101
  tracking.stack.push(observations)
102
+ currentAccessedPaths = accessedPaths
100
103
  const value = selector(propsProxy)
104
+ currentAccessedPaths = null
101
105
  tracking.stack.pop()
102
106
  // Always assign and notify so the component re-renders when the derived value changes
103
107
  // (e.g. when parent passes a different signal ref like toggle switching count/double).
@@ -121,7 +125,7 @@ function createSetup<Props extends {}>(vNode: Kiru.VNode): Setup<Props> {
121
125
  }
122
126
 
123
127
  sync()
124
- const entry: DeriveEntry = { run: sync, accessedPaths }
128
+ const entry: DeriveEntry = { run: sync, paths: accessedPaths }
125
129
  deriveEntries.push(entry)
126
130
  deriveCleanups.push(() => {
127
131
  unsubs.forEach((u) => u())
@@ -135,6 +139,13 @@ function createSetup<Props extends {}>(vNode: Kiru.VNode): Setup<Props> {
135
139
  get id() {
136
140
  if (!id) {
137
141
  id = signal(createVNodeId(vNode))
142
+ if (isVNodeDeleted(vNode)) {
143
+ return id
144
+ }
145
+ if (node.current !== vNode) {
146
+ // @ts-expect-error
147
+ registerVNodeCleanup(vNode, id.$id, Signal.dispose.bind(null, id))
148
+ }
138
149
  prevIndex = vNode.index
139
150
  propSyncs.push(() => {
140
151
  if (prevIndex !== vNode.index) {
@@ -146,59 +157,119 @@ function createSetup<Props extends {}>(vNode: Kiru.VNode): Setup<Props> {
146
157
 
147
158
  return id
148
159
  },
160
+ get props() {
161
+ return (propsProxy ??= new Proxy(
162
+ {},
163
+ {
164
+ get(_, key) {
165
+ if (typeof key === "symbol")
166
+ return Reflect.get(currentProps.current as any, key)
167
+ const v = (currentProps.current as any)[key]
168
+ if (v !== null && typeof v === "object" && !Signal.isSignal(v)) {
169
+ return createProxy(v)
170
+ }
171
+ return v
172
+ },
173
+ }
174
+ ) as InferredProps)
175
+ },
149
176
  }
150
177
  return setupResult
151
178
  }
179
+
152
180
  function propsUnchangedAtPaths(
153
181
  oldProps: Record<string, unknown>,
154
182
  newProps: Record<string, unknown>,
155
- paths: Set<string>
183
+ accessedPaths: Set<string[]>
156
184
  ): boolean {
157
- for (const path of paths) {
158
- if (!Object.is(getAtPath(oldProps, path), getAtPath(newProps, path))) {
159
- return false
185
+ outer: for (const path of accessedPaths) {
186
+ let a: unknown = oldProps
187
+ let b: unknown = newProps
188
+
189
+ for (let i = 0; i < path.length; i++) {
190
+ const key = path[i]
191
+
192
+ // Sentinel: caller iterated keys of the object at this path —
193
+ // re-run if the key sets differ
194
+ if (key === OWN_KEYS) {
195
+ if (a === b) continue outer
196
+ if (
197
+ a == null ||
198
+ b == null ||
199
+ typeof a !== "object" ||
200
+ typeof b !== "object"
201
+ ) {
202
+ return false
203
+ }
204
+ const aKeys = Object.keys(a)
205
+ const bKeys = Object.keys(b)
206
+ if (aKeys.length !== bKeys.length) return false
207
+ for (const k of aKeys) {
208
+ if (!(k in (b as object))) return false
209
+ }
210
+ continue outer
211
+ }
212
+
213
+ if (a === b) continue outer
214
+ if (
215
+ a == null ||
216
+ b == null ||
217
+ typeof a !== "object" ||
218
+ typeof b !== "object"
219
+ ) {
220
+ if (!Object.is(a, b)) return false
221
+ continue outer
222
+ }
223
+ a = (a as Record<string, unknown>)[key]
224
+ b = (b as Record<string, unknown>)[key]
160
225
  }
226
+
227
+ if (!Object.is(a, b)) return false
161
228
  }
229
+
162
230
  return true
163
231
  }
164
232
 
165
- function getAtPath(obj: Record<string, unknown>, path: string): unknown {
166
- let cur: unknown = obj
167
- for (const key of path.split(".")) {
168
- if (cur == null || typeof cur !== "object") return undefined
169
- cur = (cur as Record<string, unknown>)[key]
170
- }
171
- return cur
172
- }
233
+ const proxyCache = new WeakMap<object, any>()
173
234
 
174
235
  /**
175
- * Proxy that records paths and wraps signals. We only add to accessedPaths when
176
- * we hit a signal (the leaf we subscribe to), so propSync skip only compares
177
- * signal refs. Container objects (e.g. "data") are new every render and would
178
- * always fail the skip.
236
+ * Proxy that records accessed paths and primitives into the current
237
+ * tracking context (currentAccessedPaths).
179
238
  */
180
- function createPropsProxy<P extends Record<string, unknown>>(
181
- props: P,
182
- accessedPaths: Set<string>,
183
- pathPrefix?: string
239
+ function createProxy<P extends Record<string, unknown>>(
240
+ source: P,
241
+ path: string[] = []
184
242
  ): P {
185
- return new Proxy(props, {
186
- get(holder, key: string) {
187
- const path = pathPrefix ? `${pathPrefix}.${key}` : key
188
- const v = holder[key]
189
- if (Signal.isSignal(v)) {
190
- accessedPaths.add(path) // only record path for signal leaves
243
+ let cached = proxyCache.get(source)
244
+
245
+ if (!cached) {
246
+ cached = new Proxy(source, {
247
+ get(holder, key: string | symbol) {
248
+ if (typeof key === "symbol") return Reflect.get(holder, key)
249
+
250
+ const keyPath = [...path, key as string]
251
+ const v = holder[key as string]
252
+
253
+ if (v !== null && typeof v === "object" && !Signal.isSignal(v)) {
254
+ return createProxy(v as Record<string, unknown>, keyPath)
255
+ }
256
+
257
+ currentAccessedPaths?.add(keyPath)
191
258
  return v
192
- }
193
- if (v !== null && typeof v === "object" && !Array.isArray(v)) {
194
- return createPropsProxy(
195
- v as Record<string, unknown>,
196
- accessedPaths,
197
- path
198
- ) as P[keyof P]
199
- }
200
- accessedPaths.add(path) // primitive leaf
201
- return v
202
- },
203
- }) as P
259
+ },
260
+ has(holder, key: string | symbol) {
261
+ if (typeof key === "symbol") return Reflect.has(holder, key)
262
+ currentAccessedPaths?.add([...path, key as string])
263
+ return key in holder
264
+ },
265
+ ownKeys(holder) {
266
+ currentAccessedPaths?.add([...path, OWN_KEYS])
267
+ return Reflect.ownKeys(holder)
268
+ },
269
+ })
270
+
271
+ proxyCache.set(source, cached)
272
+ }
273
+
274
+ return cached
204
275
  }
package/src/types.ts CHANGED
@@ -41,24 +41,25 @@ type SignalableAriaProps = {
41
41
  [K in keyof ARIAMixin]?: Signalable<ARIAMixin[K] | undefined>
42
42
  }
43
43
  type SignalableGlobalAttributes = {
44
- [K in keyof GlobalAttributes]: Signalable<GlobalAttributes[K] | undefined>
44
+ [K in keyof GlobalAttributes]?: Signalable<GlobalAttributes[K] | undefined>
45
45
  }
46
46
  type SignalableSvgGlobalAttributes = {
47
- [K in keyof SvgGlobalAttributes]: Signalable<
47
+ [K in keyof SvgGlobalAttributes]?: Signalable<
48
48
  SvgGlobalAttributes[K] | undefined
49
49
  >
50
50
  }
51
51
 
52
- type ElementMap = {
53
- [Tag in keyof HtmlElementAttributes]: SignalableHtmlElementAttributes<Tag> &
52
+ type HTMLElementProps<Tag extends keyof HtmlElementAttributes> =
53
+ SignalableHtmlElementAttributes<Tag> &
54
54
  SignalableGlobalAttributes &
55
55
  SignalableAriaProps &
56
56
  Kiru.EventAttributes<HTMLTagToElement<Tag>> &
57
57
  JSX.ElementAttributes & {
58
58
  ref?: Kiru.Ref<Element | null> | SignalClass<Element | null> | null
59
59
  }
60
- } & {
61
- [Tag in keyof SvgElementAttributes]: SignalableSvgElementAttributes<Tag> &
60
+
61
+ type SVGElementProps<Tag extends keyof SvgElementAttributes> =
62
+ SignalableSvgElementAttributes<Tag> &
62
63
  SignalableSvgGlobalAttributes &
63
64
  SignalableGlobalAttributes &
64
65
  SignalableAriaProps &
@@ -66,16 +67,187 @@ type ElementMap = {
66
67
  JSX.ElementAttributes & {
67
68
  ref?: Kiru.Ref<Element | null> | SignalClass<Element | null> | null
68
69
  }
69
- } & {
70
- [Tag in `${string}-${string}`]: Record<string, any>
71
- }
72
70
 
73
71
  declare global {
74
72
  interface Window {
75
73
  __kiru: KiruGlobalContext
76
74
  }
77
75
  namespace JSX {
78
- interface IntrinsicElements extends ElementMap {}
76
+ interface IntrinsicElements {
77
+ // HTML
78
+ a: HTMLElementProps<"a">
79
+ abbr: HTMLElementProps<"abbr">
80
+ address: HTMLElementProps<"address">
81
+ area: HTMLElementProps<"area">
82
+ article: HTMLElementProps<"article">
83
+ aside: HTMLElementProps<"aside">
84
+ audio: HTMLElementProps<"audio">
85
+ b: HTMLElementProps<"b">
86
+ base: HTMLElementProps<"base">
87
+ bdi: HTMLElementProps<"bdi">
88
+ bdo: HTMLElementProps<"bdo">
89
+ big: HTMLElementProps<"big">
90
+ blockquote: HTMLElementProps<"blockquote">
91
+ body: HTMLElementProps<"body">
92
+ br: HTMLElementProps<"br">
93
+ button: HTMLElementProps<"button">
94
+ canvas: HTMLElementProps<"canvas">
95
+ caption: HTMLElementProps<"caption">
96
+ cite: HTMLElementProps<"cite">
97
+ code: HTMLElementProps<"code">
98
+ col: HTMLElementProps<"col">
99
+ colgroup: HTMLElementProps<"colgroup">
100
+ data: HTMLElementProps<"data">
101
+ datalist: HTMLElementProps<"datalist">
102
+ dd: HTMLElementProps<"dd">
103
+ del: HTMLElementProps<"del">
104
+ details: HTMLElementProps<"details">
105
+ dfn: HTMLElementProps<"dfn">
106
+ dialog: HTMLElementProps<"dialog">
107
+ div: HTMLElementProps<"div">
108
+ dl: HTMLElementProps<"dl">
109
+ dt: HTMLElementProps<"dt">
110
+ em: HTMLElementProps<"em">
111
+ embed: HTMLElementProps<"embed">
112
+ fieldset: HTMLElementProps<"fieldset">
113
+ figcaption: HTMLElementProps<"figcaption">
114
+ figure: HTMLElementProps<"figure">
115
+ footer: HTMLElementProps<"footer">
116
+ form: HTMLElementProps<"form">
117
+ h1: HTMLElementProps<"h1">
118
+ h2: HTMLElementProps<"h2">
119
+ h3: HTMLElementProps<"h3">
120
+ h4: HTMLElementProps<"h4">
121
+ h5: HTMLElementProps<"h5">
122
+ h6: HTMLElementProps<"h6">
123
+ head: HTMLElementProps<"head">
124
+ header: HTMLElementProps<"header">
125
+ hgroup: HTMLElementProps<"hgroup">
126
+ hr: HTMLElementProps<"hr">
127
+ html: HTMLElementProps<"html">
128
+ i: HTMLElementProps<"i">
129
+ iframe: HTMLElementProps<"iframe">
130
+ img: HTMLElementProps<"img">
131
+ input: HTMLElementProps<"input">
132
+ ins: HTMLElementProps<"ins">
133
+ kbd: HTMLElementProps<"kbd">
134
+ //keygen: HTMLElementProps<"keygen">
135
+ label: HTMLElementProps<"label">
136
+ legend: HTMLElementProps<"legend">
137
+ li: HTMLElementProps<"li">
138
+ link: HTMLElementProps<"link">
139
+ main: HTMLElementProps<"main">
140
+ map: HTMLElementProps<"map">
141
+ mark: HTMLElementProps<"mark">
142
+ menu: HTMLElementProps<"menu">
143
+ //menuitem: HTMLElementProps<"menuitem">
144
+ meta: HTMLElementProps<"meta">
145
+ meter: HTMLElementProps<"meter">
146
+ nav: HTMLElementProps<"nav">
147
+ noscript: HTMLElementProps<"noscript">
148
+ object: HTMLElementProps<"object">
149
+ ol: HTMLElementProps<"ol">
150
+ optgroup: HTMLElementProps<"optgroup">
151
+ option: HTMLElementProps<"option">
152
+ output: HTMLElementProps<"output">
153
+ p: HTMLElementProps<"p">
154
+ picture: HTMLElementProps<"picture">
155
+ pre: HTMLElementProps<"pre">
156
+ progress: HTMLElementProps<"progress">
157
+ q: HTMLElementProps<"q">
158
+ rp: HTMLElementProps<"rp">
159
+ rt: HTMLElementProps<"rt">
160
+ ruby: HTMLElementProps<"ruby">
161
+ s: HTMLElementProps<"s">
162
+ samp: HTMLElementProps<"samp">
163
+ script: HTMLElementProps<"script">
164
+ section: HTMLElementProps<"section">
165
+ select: HTMLElementProps<"select">
166
+ slot: HTMLElementProps<"slot">
167
+ small: HTMLElementProps<"small">
168
+ source: HTMLElementProps<"source">
169
+ span: HTMLElementProps<"span">
170
+ strong: HTMLElementProps<"strong">
171
+ style: HTMLElementProps<"style">
172
+ sub: HTMLElementProps<"sub">
173
+ summary: HTMLElementProps<"summary">
174
+ sup: HTMLElementProps<"sup">
175
+ table: HTMLElementProps<"table">
176
+ tbody: HTMLElementProps<"tbody">
177
+ td: HTMLElementProps<"td">
178
+ textarea: HTMLElementProps<"textarea">
179
+ tfoot: HTMLElementProps<"tfoot">
180
+ th: HTMLElementProps<"th">
181
+ thead: HTMLElementProps<"thead">
182
+ time: HTMLElementProps<"time">
183
+ title: HTMLElementProps<"title">
184
+ tr: HTMLElementProps<"tr">
185
+ track: HTMLElementProps<"track">
186
+ u: HTMLElementProps<"u">
187
+ ul: HTMLElementProps<"ul">
188
+ var: HTMLElementProps<"var">
189
+ video: HTMLElementProps<"video">
190
+ //wbr: HTMLElementProps<"wbr">
191
+ //webview: HTMLElementProps<"webview">
192
+
193
+ // SVG
194
+ // animate: SVGElementProps<"animate">
195
+ // animateMotion: SVGElementProps<"animateMotion">
196
+ animateTransform: SVGElementProps<"animateTransform">
197
+ circle: SVGElementProps<"circle">
198
+ clipPath: SVGElementProps<"clipPath">
199
+ defs: SVGElementProps<"defs">
200
+ desc: SVGElementProps<"desc">
201
+ ellipse: SVGElementProps<"ellipse">
202
+ feBlend: SVGElementProps<"feBlend">
203
+ //feColorMatrix: SVGElementProps<"feColorMatrix">
204
+ feComponentTransfer: SVGElementProps<"feComponentTransfer">
205
+ // feComposite: SVGElementProps<"feComposite">
206
+ // feConvolveMatrix: SVGElementProps<"feConvolveMatrix">
207
+ // feDiffuseLighting: SVGElementProps<"feDiffuseLighting">
208
+ feDisplacementMap: SVGElementProps<"feDisplacementMap">
209
+ feDropShadow: SVGElementProps<"feDropShadow">
210
+ feFlood: SVGElementProps<"feFlood">
211
+ feFuncA: SVGElementProps<"feFuncA">
212
+ feFuncB: SVGElementProps<"feFuncB">
213
+ feFuncG: SVGElementProps<"feFuncG">
214
+ feFuncR: SVGElementProps<"feFuncR">
215
+ feGaussianBlur: SVGElementProps<"feGaussianBlur">
216
+ // feImage: SVGElementProps<"feImage">
217
+ // feMerge: SVGElementProps<"feMerge">
218
+ // feMergeNode: SVGElementProps<"feMergeNode">
219
+ // feMorphology: SVGElementProps<"feMorphology">
220
+ // feOffset: SVGElementProps<"feOffset">
221
+ // feSpecularLighting: SVGElementProps<"feSpecularLighting">
222
+ // feTile: SVGElementProps<"feTile">
223
+ feTurbulence: SVGElementProps<"feTurbulence">
224
+ filter: SVGElementProps<"filter">
225
+ // foreignObject: SVGElementProps<"foreignObject">
226
+ g: SVGElementProps<"g">
227
+ image: SVGElementProps<"image">
228
+ line: SVGElementProps<"line">
229
+ linearGradient: SVGElementProps<"linearGradient">
230
+ // marker: SVGElementProps<"marker">
231
+ mask: SVGElementProps<"mask">
232
+ // metadata: SVGElementProps<"metadata">
233
+ // mpath: SVGElementProps<"mpath">
234
+ path: SVGElementProps<"path">
235
+ pattern: SVGElementProps<"pattern">
236
+ polygon: SVGElementProps<"polygon">
237
+ polyline: SVGElementProps<"polyline">
238
+ radialGradient: SVGElementProps<"radialGradient">
239
+ rect: SVGElementProps<"rect">
240
+ // set: SVGElementProps<"set">
241
+ stop: SVGElementProps<"stop">
242
+ // switch: SVGElementProps<"switch">
243
+ // symbol: SVGElementProps<"symbol">
244
+ text: SVGElementProps<"text">
245
+ textPath: SVGElementProps<"textPath">
246
+ tspan: SVGElementProps<"tspan">
247
+ svg: SVGElementProps<"svg">
248
+ // use: SVGElementProps<"use">
249
+ // view: SVGElementProps<"view">
250
+ }
79
251
 
80
252
  interface IntrinsicAttributes {
81
253
  key?: ElementKey