@lynx-js/react-canary 0.108.0 → 0.108.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 (51) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/package.json +3 -3
  3. package/refresh/.turbo/turbo-build.log +1 -1
  4. package/runtime/lib/lifecycle/patch/isMainThreadHydrationFinished.d.ts +2 -0
  5. package/runtime/lib/lifecycle/patch/isMainThreadHydrationFinished.js +9 -0
  6. package/runtime/lib/lifecycle/patch/isMainThreadHydrationFinished.js.map +1 -0
  7. package/runtime/lib/lifecycle/patch/updateMainThread.js +4 -3
  8. package/runtime/lib/lifecycle/patch/updateMainThread.js.map +1 -1
  9. package/runtime/lib/lifecycle/reload.js +2 -0
  10. package/runtime/lib/lifecycle/reload.js.map +1 -1
  11. package/runtime/lib/snapshot/ref.js.map +1 -1
  12. package/runtime/lib/snapshot/spread.d.ts +0 -6
  13. package/runtime/lib/snapshot/spread.js +4 -10
  14. package/runtime/lib/snapshot/spread.js.map +1 -1
  15. package/runtime/lib/snapshot/workletEvent.d.ts +2 -1
  16. package/runtime/lib/snapshot/workletEvent.js +1 -1
  17. package/runtime/lib/snapshot/workletEvent.js.map +1 -1
  18. package/runtime/lib/snapshot/workletRef.d.ts +4 -4
  19. package/runtime/lib/snapshot/workletRef.js +8 -6
  20. package/runtime/lib/snapshot/workletRef.js.map +1 -1
  21. package/runtime/lib/worklet/workletRef.d.ts +1 -0
  22. package/runtime/lib/worklet/workletRef.js +14 -12
  23. package/runtime/lib/worklet/workletRef.js.map +1 -1
  24. package/runtime/src/lifecycle/patch/isMainThreadHydrationFinished.ts +10 -0
  25. package/runtime/src/lifecycle/patch/updateMainThread.ts +4 -3
  26. package/runtime/src/lifecycle/reload.ts +2 -0
  27. package/runtime/src/snapshot/ref.ts +2 -2
  28. package/runtime/src/snapshot/spread.ts +15 -5
  29. package/runtime/src/snapshot/workletEvent.ts +3 -2
  30. package/runtime/src/snapshot/workletRef.ts +18 -19
  31. package/runtime/src/worklet/workletRef.ts +15 -12
  32. package/transform/dist/wasm.cjs +1 -1
  33. package/worklet-runtime/dist/dev.js +25 -13
  34. package/worklet-runtime/dist/dev.js.map +3 -3
  35. package/worklet-runtime/dist/main.js +25 -13
  36. package/worklet-runtime/dist/main.js.map +3 -3
  37. package/worklet-runtime/lib/bindings/bindings.d.ts +1 -1
  38. package/worklet-runtime/lib/bindings/bindings.js +2 -2
  39. package/worklet-runtime/lib/bindings/bindings.js.map +1 -1
  40. package/worklet-runtime/lib/bindings/index.d.ts +1 -1
  41. package/worklet-runtime/lib/bindings/index.js +1 -1
  42. package/worklet-runtime/lib/bindings/index.js.map +1 -1
  43. package/worklet-runtime/lib/bindings/types.d.ts +7 -3
  44. package/worklet-runtime/lib/bindings/types.js +3 -0
  45. package/worklet-runtime/lib/bindings/types.js.map +1 -1
  46. package/worklet-runtime/lib/ctxTrace.d.ts +8 -0
  47. package/worklet-runtime/lib/ctxTrace.js +13 -0
  48. package/worklet-runtime/lib/ctxTrace.js.map +1 -0
  49. package/worklet-runtime/lib/global.d.ts +3 -3
  50. package/worklet-runtime/lib/workletRuntime.js +11 -8
  51. package/worklet-runtime/lib/workletRuntime.js.map +1 -1
package/CHANGELOG.md CHANGED
@@ -1,5 +1,11 @@
1
1
  # @lynx-js/react
2
2
 
3
+ ## 0.108.1
4
+
5
+ ### Patch Changes
6
+
7
+ - Bump swc_core v23.2.0. ([#827](https://github.com/lynx-family/lynx-stack/pull/827))
8
+
3
9
  ## 0.108.0
4
10
 
5
11
  ### Minor Changes
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lynx-js/react-canary",
3
- "version": "0.108.0",
3
+ "version": "0.108.1",
4
4
  "description": "ReactLynx is a framework for developing Lynx applications with familiar React.",
5
5
  "repository": {
6
6
  "type": "git",
@@ -161,8 +161,8 @@
161
161
  "preact": "npm:@hongzhiyuan/preact@10.24.0-319c684e"
162
162
  },
163
163
  "devDependencies": {
164
- "@lynx-js/types": "^3.2.1",
165
- "@microsoft/api-extractor": "7.52.7",
164
+ "@lynx-js/types": "^3.3.0",
165
+ "@microsoft/api-extractor": "7.52.8",
166
166
  "@types/react": "^18.3.21"
167
167
  },
168
168
  "peerDependencies": {
@@ -5,4 +5,4 @@
5
5
 
6
6
  dist/index.js 11.4kb
7
7
 
8
- ⚡ Done in 22ms
8
+ ⚡ Done in 29ms
@@ -0,0 +1,2 @@
1
+ export declare let isMainThreadHydrationFinished: boolean;
2
+ export declare function setMainThreadHydrationFinished(isFinished: boolean): void;
@@ -0,0 +1,9 @@
1
+ import { onHydrationFinished } from '@lynx-js/react/worklet-runtime/bindings';
2
+ export let isMainThreadHydrationFinished = false;
3
+ export function setMainThreadHydrationFinished(isFinished) {
4
+ if (isFinished && !isMainThreadHydrationFinished) {
5
+ onHydrationFinished();
6
+ }
7
+ isMainThreadHydrationFinished = isFinished;
8
+ }
9
+ //# sourceMappingURL=isMainThreadHydrationFinished.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"isMainThreadHydrationFinished.js","sourceRoot":"","sources":["../../../src/lifecycle/patch/isMainThreadHydrationFinished.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,yCAAyC,CAAC;AAE9E,MAAM,CAAC,IAAI,6BAA6B,GAAG,KAAK,CAAC;AAEjD,MAAM,UAAU,8BAA8B,CAAC,UAAmB;IAChE,IAAI,UAAU,IAAI,CAAC,6BAA6B,EAAE,CAAC;QACjD,mBAAmB,EAAE,CAAC;IACxB,CAAC;IACD,6BAA6B,GAAG,UAAU,CAAC;AAC7C,CAAC"}
@@ -1,15 +1,16 @@
1
1
  // Copyright 2025 The Lynx Authors. All rights reserved.
2
2
  // Licensed under the Apache License Version 2.0 that can be found in the
3
3
  // LICENSE file in the root directory of this source tree.
4
- import { clearDelayedWorklets, updateWorkletRefInitValueChanges } from '@lynx-js/react/worklet-runtime/bindings';
4
+ import { updateWorkletRefInitValueChanges } from '@lynx-js/react/worklet-runtime/bindings';
5
5
  import { snapshotPatchApply } from './snapshotPatchApply.js';
6
6
  import { LifecycleConstant } from '../../lifecycleConstant.js';
7
7
  import { __pendingListUpdates } from '../../list.js';
8
- import { PerformanceTimingKeys, markTiming, setPipeline } from '../../lynx/performance.js';
8
+ import { markTiming, PerformanceTimingKeys, setPipeline } from '../../lynx/performance.js';
9
9
  import { takeGlobalRefPatchMap } from '../../snapshot/ref.js';
10
10
  import { __page } from '../../snapshot.js';
11
11
  import { isEmptyObject } from '../../utils.js';
12
12
  import { getReloadVersion } from '../pass.js';
13
+ import { setMainThreadHydrationFinished } from './isMainThreadHydrationFinished.js';
13
14
  function updateMainThread({ data, patchOptions }) {
14
15
  if ((patchOptions.reloadVersion) < getReloadVersion()) {
15
16
  return;
@@ -34,7 +35,7 @@ function updateMainThread({ data, patchOptions }) {
34
35
  markTiming(PerformanceTimingKeys.patchChangesEnd);
35
36
  markTiming(PerformanceTimingKeys.mtsRenderEnd);
36
37
  if (patchOptions.isHydration) {
37
- clearDelayedWorklets();
38
+ setMainThreadHydrationFinished(true);
38
39
  }
39
40
  if (patchOptions.pipelineOptions) {
40
41
  flushOptions.pipelineOptions = patchOptions.pipelineOptions;
@@ -1 +1 @@
1
- {"version":3,"file":"updateMainThread.js","sourceRoot":"","sources":["../../../src/lifecycle/patch/updateMainThread.ts"],"names":[],"mappings":"AAAA,wDAAwD;AACxD,yEAAyE;AACzE,0DAA0D;AAE1D,OAAO,EAAE,oBAAoB,EAAE,gCAAgC,EAAE,MAAM,yCAAyC,CAAC;AAGjH,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AACrD,OAAO,EAAE,qBAAqB,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAC3F,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAE9C,SAAS,gBAAgB,CACvB,EAAE,IAAI,EAAE,YAAY,EAGnB;IAED,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,GAAG,gBAAgB,EAAE,EAAE,CAAC;QACtD,OAAO;IACT,CAAC;IAED,WAAW,CAAC,YAAY,CAAC,eAAe,CAAC,CAAC;IAC1C,UAAU,CAAC,qBAAqB,CAAC,cAAc,CAAC,CAAC;IACjD,UAAU,CAAC,qBAAqB,CAAC,iBAAiB,CAAC,CAAC;IACpD,MAAM,EAAE,SAAS,EAAE,YAAY,GAAG,EAAE,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAc,CAAC;IAEvE,UAAU,CAAC,qBAAqB,CAAC,eAAe,CAAC,CAAC;IAClD,UAAU,CAAC,qBAAqB,CAAC,iBAAiB,CAAC,CAAC;IAEpD,KAAK,MAAM,EAAE,aAAa,EAAE,wBAAwB,EAAE,EAAE,EAAE,IAAI,SAAS,EAAE,CAAC;QACxE,gCAAgC,CAAC,wBAAwB,CAAC,CAAC;QAC3D,oBAAoB,CAAC,KAAK,EAAE,CAAC;QAC7B,IAAI,aAAa,EAAE,CAAC;YAClB,kBAAkB,CAAC,aAAa,CAAC,CAAC;QACpC,CAAC;QACD,oBAAoB,CAAC,KAAK,EAAE,CAAC;QAC7B,kDAAkD;QAClD,kEAAkE;QAElE,2BAA2B,CAAC,EAAE,CAAC,CAAC;IAClC,CAAC;IACD,UAAU,CAAC,qBAAqB,CAAC,eAAe,CAAC,CAAC;IAClD,UAAU,CAAC,qBAAqB,CAAC,YAAY,CAAC,CAAC;IAC/C,IAAI,YAAY,CAAC,WAAW,EAAE,CAAC;QAC7B,oBAAoB,EAAE,CAAC;IACzB,CAAC;IACD,IAAI,YAAY,CAAC,eAAe,EAAE,CAAC;QACjC,YAAY,CAAC,eAAe,GAAG,YAAY,CAAC,eAAe,CAAC;IAC9D,CAAC;IACD,4BAA4B;IAC5B,kBAAkB,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;AAC3C,CAAC;AAED,SAAS,sBAAsB;IAC7B,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,EAAE,CAAC,iBAAiB,CAAC,WAAW,CAAC,EAAE,gBAAgB,EAAE,CAAC,CAAC;AACnF,CAAC;AAED,SAAS,2BAA2B,CAAC,YAAqB;IACxD,MAAM,QAAQ,GAAG,qBAAqB,EAAE,CAAC;IACzC,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC7B,kBAAkB,CAAC,CAAC,iBAAiB,CAAC,GAAG,EAAE,EAAE,YAAY,EAAE,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC;IACpG,CAAC;AACH,CAAC;AAED;;GAEG;AACH,OAAO,EAAE,2BAA2B,EAAE,sBAAsB,EAAE,CAAC"}
1
+ {"version":3,"file":"updateMainThread.js","sourceRoot":"","sources":["../../../src/lifecycle/patch/updateMainThread.ts"],"names":[],"mappings":"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"}
@@ -19,6 +19,7 @@ import { clearJSReadyEventIdSwap, isJSReady } from './event/jsReady.js';
19
19
  import { increaseReloadVersion } from './pass.js';
20
20
  import { deinitGlobalSnapshotPatch } from './patch/snapshotPatch.js';
21
21
  import { renderMainThread } from './render.js';
22
+ import { setMainThreadHydrationFinished } from './patch/isMainThreadHydrationFinished.js';
22
23
  function reloadMainThread(data, options) {
23
24
  if (__PROFILE__) {
24
25
  console.profile('reloadTemplate');
@@ -31,6 +32,7 @@ function reloadMainThread(data, options) {
31
32
  snapshotInstanceManager.clear();
32
33
  __pendingListUpdates.clear();
33
34
  clearJSReadyEventIdSwap();
35
+ setMainThreadHydrationFinished(false);
34
36
  const oldRoot = __root;
35
37
  setRoot(new SnapshotInstance('root'));
36
38
  __root.__jsx = oldRoot.__jsx;
@@ -1 +1 @@
1
- {"version":3,"file":"reload.js","sourceRoot":"","sources":["../../src/lifecycle/reload.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"reload.js","sourceRoot":"","sources":["../../src/lifecycle/reload.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"ref.js","sourceRoot":"","sources":["../../src/snapshot/ref.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ref.js","sourceRoot":"","sources":["../../src/snapshot/ref.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,3 @@
1
- /**
2
- * Handles JSX spread operator in the snapshot system.
3
- *
4
- * Spread operators in JSX (e.g., <div {...props}>) are transformed into
5
- * optimized attribute updates at compile time, avoiding runtime object spreads.
6
- */
7
1
  import { BackgroundSnapshotInstance } from '../backgroundSnapshot.js';
8
2
  import { SnapshotInstance } from '../snapshot.js';
9
3
  declare function updateSpread(snapshot: SnapshotInstance, index: number, oldValue: any, elementIndex: number): void;
@@ -1,14 +1,8 @@
1
1
  // Copyright 2024 The Lynx Authors. All rights reserved.
2
2
  // Licensed under the Apache License Version 2.0 that can be found in the
3
3
  // LICENSE file in the root directory of this source tree.
4
- /**
5
- * Handles JSX spread operator in the snapshot system.
6
- *
7
- * Spread operators in JSX (e.g., <div {...props}>) are transformed into
8
- * optimized attribute updates at compile time, avoiding runtime object spreads.
9
- */
10
4
  import { BackgroundSnapshotInstance } from '../backgroundSnapshot.js';
11
- import { __pendingListUpdates, ListUpdateInfoRecording } from '../list.js';
5
+ import { ListUpdateInfoRecording, __pendingListUpdates } from '../list.js';
12
6
  import { SnapshotInstance } from '../snapshot.js';
13
7
  import { isDirectOrDeepEqual, isEmptyObject, pick } from '../utils.js';
14
8
  import { updateEvent } from './event.js';
@@ -33,7 +27,7 @@ const noFlattenAttributes = /* @__PURE__ */ new Set([
33
27
  'exposure-id',
34
28
  ]);
35
29
  function updateSpread(snapshot, index, oldValue, elementIndex) {
36
- oldValue ||= {};
30
+ oldValue ??= {};
37
31
  let newValue = snapshot.__values[index]; // compiler guarantee this must be an object;
38
32
  // @ts-ignore
39
33
  const list = snapshot.__parent;
@@ -126,7 +120,7 @@ function updateSpread(snapshot, index, oldValue, elementIndex) {
126
120
  };
127
121
  updateGesture(fakeSnapshot, index, oldValue[key], elementIndex, workletType);
128
122
  }
129
- else if ((match = key.match(eventRegExp))) {
123
+ else if ((match = eventRegExp.exec(key))) {
130
124
  const workletType = match[2];
131
125
  const eventType = eventTypeMap[match[3]];
132
126
  const eventName = match[4];
@@ -222,7 +216,7 @@ function updateSpread(snapshot, index, oldValue, elementIndex) {
222
216
  };
223
217
  updateGesture(fakeSnapshot, index, oldValue[key], elementIndex, workletType);
224
218
  }
225
- else if ((match = key.match(eventRegExp))) {
219
+ else if ((match = eventRegExp.exec(key))) {
226
220
  const workletType = match[2];
227
221
  const eventType = eventTypeMap[match[3]];
228
222
  const eventName = match[4];
@@ -1 +1 @@
1
- {"version":3,"file":"spread.js","sourceRoot":"","sources":["../../src/snapshot/spread.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"spread.js","sourceRoot":"","sources":["../../src/snapshot/spread.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import type { Worklet } from '@lynx-js/react/worklet-runtime/bindings';
1
2
  import { SnapshotInstance } from '../snapshot.js';
2
- declare function updateWorkletEvent(snapshot: SnapshotInstance, expIndex: number, _oldValue: any, elementIndex: number, workletType: string, eventType: string, eventName: string): void;
3
+ declare function updateWorkletEvent(snapshot: SnapshotInstance, expIndex: number, _oldValue: Worklet, elementIndex: number, workletType: string, eventType: string, eventName: string): void;
3
4
  export { updateWorkletEvent };
@@ -7,7 +7,7 @@ function updateWorkletEvent(snapshot, expIndex, _oldValue, elementIndex, worklet
7
7
  if (!snapshot.__elements) {
8
8
  return;
9
9
  }
10
- const value = snapshot.__values[expIndex] || {};
10
+ const value = (snapshot.__values[expIndex] || undefined) ?? {};
11
11
  value._workletType = workletType;
12
12
  if (workletType === 'main-thread') {
13
13
  onWorkletCtxUpdate(value, snapshot.__elements[elementIndex]);
@@ -1 +1 @@
1
- {"version":3,"file":"workletEvent.js","sourceRoot":"","sources":["../../src/snapshot/workletEvent.ts"],"names":[],"mappings":"AAAA,wDAAwD;AACxD,yEAAyE;AACzE,0DAA0D;AAC1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,yCAAyC,CAAC;AAE7E,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAElD,SAAS,kBAAkB,CACzB,QAA0B,EAC1B,QAAgB,EAChB,SAAc,EACd,YAAoB,EACpB,WAAmB,EACnB,SAAiB,EACjB,SAAiB;IAEjB,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC;QACzB,OAAO;IACT,CAAC;IACD,MAAM,KAAK,GAAG,QAAQ,CAAC,QAAS,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;IACjD,KAAK,CAAC,YAAY,GAAG,WAAW,CAAC;IAEjC,IAAI,WAAW,KAAK,aAAa,EAAE,CAAC;QAClC,kBAAkB,CAAC,KAAK,EAAE,QAAQ,CAAC,UAAU,CAAC,YAAY,CAAE,CAAC,CAAC;QAC9D,MAAM,KAAK,GAAG;YACZ,IAAI,EAAE,SAAS;YACf,KAAK;SACN,CAAC;QACF,UAAU,CAAC,QAAQ,CAAC,UAAU,CAAC,YAAY,CAAE,EAAE,SAAS,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;IAC9E,CAAC;AACH,CAAC;AAED,OAAO,EAAE,kBAAkB,EAAE,CAAC"}
1
+ {"version":3,"file":"workletEvent.js","sourceRoot":"","sources":["../../src/snapshot/workletEvent.ts"],"names":[],"mappings":"AAAA,wDAAwD;AACxD,yEAAyE;AACzE,0DAA0D;AAC1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,yCAAyC,CAAC;AAG7E,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAElD,SAAS,kBAAkB,CACzB,QAA0B,EAC1B,QAAgB,EAChB,SAAkB,EAClB,YAAoB,EACpB,WAAmB,EACnB,SAAiB,EACjB,SAAiB;IAEjB,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC;QACzB,OAAO;IACT,CAAC;IACD,MAAM,KAAK,GAAG,CAAC,QAAQ,CAAC,QAAS,CAAC,QAAQ,CAAY,IAAI,SAAS,CAAC,IAAI,EAAE,CAAC;IAC3E,KAAK,CAAC,YAAY,GAAG,WAAW,CAAC;IAEjC,IAAI,WAAW,KAAK,aAAa,EAAE,CAAC;QAClC,kBAAkB,CAAC,KAAK,EAAE,QAAQ,CAAC,UAAU,CAAC,YAAY,CAAE,CAAC,CAAC;QAC9D,MAAM,KAAK,GAAG;YACZ,IAAI,EAAE,SAAS;YACf,KAAK;SACN,CAAC;QACF,UAAU,CAAC,QAAQ,CAAC,UAAU,CAAC,YAAY,CAAE,EAAE,SAAS,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;IAC9E,CAAC;AACH,CAAC;AAED,OAAO,EAAE,kBAAkB,EAAE,CAAC"}
@@ -1,5 +1,5 @@
1
- import { type Worklet, type WorkletRef } from '@lynx-js/react/worklet-runtime/bindings';
2
- import { SnapshotInstance } from '../snapshot.js';
3
- declare function workletUnRef(value: Worklet | WorkletRef<unknown>): void;
4
- declare function updateWorkletRef(snapshot: SnapshotInstance, expIndex: number, oldValue: any, elementIndex: number, _workletType: string): void;
1
+ import type { Element, Worklet, WorkletRefImpl } from '@lynx-js/react/worklet-runtime/bindings';
2
+ import type { SnapshotInstance } from '../snapshot.js';
3
+ declare function workletUnRef(value: Worklet | WorkletRefImpl<Element>): void;
4
+ declare function updateWorkletRef(snapshot: SnapshotInstance, expIndex: number, oldValue: WorkletRefImpl<Element> | Worklet | undefined, elementIndex: number, _workletType: string): void;
5
5
  export { updateWorkletRef, workletUnRef };
@@ -1,10 +1,9 @@
1
1
  // Copyright 2024 The Lynx Authors. All rights reserved.
2
2
  // Licensed under the Apache License Version 2.0 that can be found in the
3
3
  // LICENSE file in the root directory of this source tree.
4
- import { runWorkletCtx, updateWorkletRef as update, } from '@lynx-js/react/worklet-runtime/bindings';
5
- import { SnapshotInstance } from '../snapshot.js';
4
+ import { runWorkletCtx, updateWorkletRef as update } from '@lynx-js/react/worklet-runtime/bindings';
6
5
  function workletUnRef(value) {
7
- if ('_wvid' in value) {
6
+ if ('_wvid' in value && value._wvid > 0) {
8
7
  update(value, null);
9
8
  }
10
9
  else if ('_wkltId' in value) {
@@ -29,11 +28,14 @@ function updateWorkletRef(snapshot, expIndex, oldValue, elementIndex, _workletTy
29
28
  // do nothing
30
29
  }
31
30
  else if (value._wvid) {
32
- update(value, snapshot.__elements[elementIndex]);
31
+ if (value._wvid > 0) {
32
+ update(value, snapshot.__elements[elementIndex]);
33
+ }
33
34
  }
34
35
  else if (value._wkltId) {
35
- // @ts-ignore
36
- value._unmount = runWorkletCtx(value, [{ elementRefptr: snapshot.__elements[elementIndex] }]);
36
+ value._unmount = runWorkletCtx(value, [{
37
+ elementRefptr: (snapshot.__elements[elementIndex]),
38
+ }]);
37
39
  }
38
40
  else if (value._type === '__LEPUS__' || value._lepusWorkletHash) {
39
41
  // During the initial render, we will not update the WorkletRef because the background thread is not ready yet.
@@ -1 +1 @@
1
- {"version":3,"file":"workletRef.js","sourceRoot":"","sources":["../../src/snapshot/workletRef.ts"],"names":[],"mappings":"AAAA,wDAAwD;AACxD,yEAAyE;AACzE,0DAA0D;AAC1D,OAAO,EAGL,aAAa,EACb,gBAAgB,IAAI,MAAM,GAC3B,MAAM,yCAAyC,CAAC;AAEjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAElD,SAAS,YAAY,CAAC,KAAoC;IACxD,IAAI,OAAO,IAAI,KAAK,EAAE,CAAC;QACrB,MAAM,CAAC,KAAY,EAAE,IAAI,CAAC,CAAC;IAC7B,CAAC;SAAM,IAAI,SAAS,IAAI,KAAK,EAAE,CAAC;QAC9B,IAAI,OAAO,KAAK,CAAC,QAAQ,IAAI,UAAU,EAAE,CAAC;YACxC,KAAK,CAAC,QAAQ,EAAE,CAAC;QACnB,CAAC;aAAM,CAAC;YACN,aAAa,CAAC,KAAY,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;QACtC,CAAC;IACH,CAAC;AACH,CAAC;AAED,SAAS,gBAAgB,CACvB,QAA0B,EAC1B,QAAgB,EAChB,QAAa,EACb,YAAoB,EACpB,YAAoB;IAEpB,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC;QACzB,OAAO;IACT,CAAC;IAED,IAAI,QAAQ,IAAI,QAAQ,CAAC,iBAAiB,EAAE,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC1D,YAAY,CAAC,QAAQ,CAAC,CAAC;QACvB,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;IAC/C,CAAC;IAED,MAAM,KAAK,GAAG,QAAQ,CAAC,QAAS,CAAC,QAAQ,CAAC,CAAC;IAC3C,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QAC1C,aAAa;IACf,CAAC;SAAM,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;QACvB,MAAM,CAAC,KAAY,EAAE,QAAQ,CAAC,UAAU,CAAC,YAAY,CAAE,CAAC,CAAC;IAC3D,CAAC;SAAM,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;QACzB,aAAa;QACb,KAAK,CAAC,QAAQ,GAAG,aAAa,CAAC,KAAY,EAAE,CAAC,EAAE,aAAa,EAAE,QAAQ,CAAC,UAAU,CAAC,YAAY,CAAE,EAAE,CAAC,CAAC,CAAC;IACxG,CAAC;SAAM,IAAI,KAAK,CAAC,KAAK,KAAK,WAAW,IAAI,KAAK,CAAC,iBAAiB,EAAE,CAAC;QAClE,+GAA+G;IACjH,CAAC;SAAM,CAAC;QACN,MAAM,IAAI,KAAK,CAAC,uFAAuF,CAAC,CAAC;IAC3G,CAAC;IAED,IAAI,KAAK,EAAE,CAAC;QACV,QAAQ,CAAC,iBAAiB,KAAK,IAAI,GAAG,EAAE,CAAC;QACzC,QAAQ,CAAC,iBAAiB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACxC,CAAC;IACD,qEAAqE;IACrE,cAAc,CAAC,QAAQ,CAAC,UAAU,CAAC,YAAY,CAAE,EAAE,eAAe,EAAE,IAAI,CAAC,CAAC;AAC5E,CAAC;AAED,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAAE,CAAC"}
1
+ {"version":3,"file":"workletRef.js","sourceRoot":"","sources":["../../src/snapshot/workletRef.ts"],"names":[],"mappings":"AAAA,wDAAwD;AACxD,yEAAyE;AACzE,0DAA0D;AAC1D,OAAO,EAAE,aAAa,EAAE,gBAAgB,IAAI,MAAM,EAAE,MAAM,yCAAyC,CAAC;AAKpG,SAAS,YAAY,CAAC,KAAwC;IAC5D,IAAI,OAAO,IAAI,KAAK,IAAK,KAAK,CAAC,KAAsB,GAAG,CAAC,EAAE,CAAC;QAC1D,MAAM,CAAC,KAAgC,EAAE,IAAI,CAAC,CAAC;IACjD,CAAC;SAAM,IAAI,SAAS,IAAI,KAAK,EAAE,CAAC;QAC9B,IAAI,OAAO,KAAK,CAAC,QAAQ,IAAI,UAAU,EAAE,CAAC;YACvC,KAAK,CAAC,QAAuB,EAAE,CAAC;QACnC,CAAC;aAAM,CAAC;YACN,aAAa,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;QAC/B,CAAC;IACH,CAAC;AACH,CAAC;AAED,SAAS,gBAAgB,CACvB,QAA0B,EAC1B,QAAgB,EAChB,QAAuD,EACvD,YAAoB,EACpB,YAAoB;IAEpB,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC;QACzB,OAAO;IACT,CAAC;IAED,IAAI,QAAQ,IAAI,QAAQ,CAAC,iBAAiB,EAAE,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC1D,YAAY,CAAC,QAAQ,CAAC,CAAC;QACvB,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;IAC/C,CAAC;IAED,MAAM,KAAK,GAAG,QAAQ,CAAC,QAAS,CAAC,QAAQ,CAAoD,CAAC;IAC9F,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QAC1C,aAAa;IACf,CAAC;SAAM,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;QACvB,IAAK,KAAK,CAAC,KAAsB,GAAG,CAAC,EAAE,CAAC;YACtC,MAAM,CAAC,KAAgC,EAAE,QAAQ,CAAC,UAAU,CAAC,YAAY,CAAE,CAAC,CAAC;QAC/E,CAAC;IACH,CAAC;SAAM,IAAK,KAAiB,CAAC,OAAO,EAAE,CAAC;QACrC,KAAiB,CAAC,QAAQ,GAAG,aAAa,CAAC,KAAgB,EAAE,CAAC;gBAC7D,aAAa,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,YAAY,CAAE,CAAQ;aAC3D,CAAC,CAAe,CAAC;IACpB,CAAC;SAAM,IAAI,KAAK,CAAC,KAAK,KAAK,WAAW,IAAK,KAAiB,CAAC,iBAAiB,EAAE,CAAC;QAC/E,+GAA+G;IACjH,CAAC;SAAM,CAAC;QACN,MAAM,IAAI,KAAK,CAAC,uFAAuF,CAAC,CAAC;IAC3G,CAAC;IAED,IAAI,KAAK,EAAE,CAAC;QACV,QAAQ,CAAC,iBAAiB,KAAK,IAAI,GAAG,EAAE,CAAC;QACzC,QAAQ,CAAC,iBAAiB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACxC,CAAC;IACD,qEAAqE;IACrE,cAAc,CAAC,QAAQ,CAAC,UAAU,CAAC,YAAY,CAAE,EAAE,eAAe,EAAE,IAAI,CAAC,CAAC;AAC5E,CAAC;AAED,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAAE,CAAC"}
@@ -1,4 +1,5 @@
1
1
  import type { RefObject } from 'react';
2
+ export declare function clearWorkletRefLastIdForTesting(): void;
2
3
  declare abstract class WorkletRef<T> {
3
4
  get current(): T;
4
5
  set current(_: T);
@@ -1,12 +1,17 @@
1
1
  import { WorkletEvents } from '@lynx-js/react/worklet-runtime/bindings';
2
2
  import { addWorkletRefInitValue } from './workletRefPool.js';
3
3
  import { useMemo } from '../hooks/react.js';
4
- let lastId = 0;
4
+ // Split into two variables for testing purposes
5
+ let lastIdBG = 0;
6
+ let lastIdMT = 0;
7
+ export function clearWorkletRefLastIdForTesting() {
8
+ lastIdBG = lastIdMT = 0;
9
+ }
5
10
  class WorkletRef {
6
11
  /**
7
12
  * @internal
8
13
  */
9
- _id;
14
+ _wvid;
10
15
  /**
11
16
  * @internal
12
17
  */
@@ -23,17 +28,14 @@ class WorkletRef {
23
28
  * @internal
24
29
  */
25
30
  constructor(initValue, type) {
31
+ this._initValue = initValue;
32
+ this._type = type;
26
33
  if (__JS__) {
27
- this._id = ++lastId;
28
- this._initValue = initValue;
29
- this._type = type;
30
- addWorkletRefInitValue(this._id, initValue);
34
+ this._wvid = ++lastIdBG;
35
+ addWorkletRefInitValue(this._wvid, initValue);
31
36
  }
32
37
  else {
33
- // Out of the js thread, the `WorkletRef` class here is just a placeholder and should not be accessed directly.
34
- // The real WorkletRef will be generated by the worklet runtime.
35
- this._id = -1;
36
- this._type = '__LEPUS__';
38
+ this._wvid = --lastIdMT;
37
39
  }
38
40
  }
39
41
  get current() {
@@ -60,7 +62,7 @@ class WorkletRef {
60
62
  */
61
63
  toJSON() {
62
64
  return {
63
- _wvid: this._id,
65
+ _wvid: this._wvid,
64
66
  };
65
67
  }
66
68
  }
@@ -75,7 +77,7 @@ export class MainThreadRef extends WorkletRef {
75
77
  constructor(initValue) {
76
78
  super(initValue, 'main-thread');
77
79
  if (__JS__) {
78
- const id = this._id;
80
+ const id = this._wvid;
79
81
  this._lifecycleObserver = lynx.getNativeApp().createJSObjectDestructionObserver?.(() => {
80
82
  lynx.getCoreContext?.().dispatchEvent({
81
83
  type: WorkletEvents.releaseWorkletRef,
@@ -1 +1 @@
1
- {"version":3,"file":"workletRef.js","sourceRoot":"","sources":["../../src/worklet/workletRef.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,aAAa,EAAE,MAAM,yCAAyC,CAAC;AAExE,OAAO,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAE5C,IAAI,MAAM,GAAG,CAAC,CAAC;AAEf,MAAe,UAAU;IACvB;;OAEG;IACO,GAAG,CAAS;IACtB;;OAEG;IACO,UAAU,CAAgB;IACpC;;OAEG;IACO,KAAK,CAAS;IACxB;;OAEG;IACO,kBAAkB,CAAU;IAEtC;;OAEG;IACH,YAAsB,SAAY,EAAE,IAAY;QAC9C,IAAI,MAAM,EAAE,CAAC;YACX,IAAI,CAAC,GAAG,GAAG,EAAE,MAAM,CAAC;YACpB,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;YAC5B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;YAClB,sBAAsB,CAAC,IAAI,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;QAC9C,CAAC;aAAM,CAAC;YACN,+GAA+G;YAC/G,gEAAgE;YAChE,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;YACd,IAAI,CAAC,KAAK,GAAG,WAAW,CAAC;QAC3B,CAAC;IACH,CAAC;IAED,IAAI,OAAO;QACT,IAAI,MAAM,IAAI,OAAO,EAAE,CAAC;YACtB,MAAM,IAAI,KAAK,CAAC,sFAAsF,CAAC,CAAC;QAC1G,CAAC;QACD,IAAI,SAAS,IAAI,OAAO,EAAE,CAAC;YACzB,oBAAoB;YACpB,MAAM,IAAI,KAAK,CAAC,2FAA2F,CAAC,CAAC;QAC/G,CAAC;QACD,oBAAoB;QACpB,OAAO,SAAc,CAAC;IACxB,CAAC;IAED,IAAI,OAAO,CAAC,CAAI;QACd,IAAI,MAAM,IAAI,OAAO,EAAE,CAAC;YACtB,MAAM,IAAI,KAAK,CAAC,sFAAsF,CAAC,CAAC;QAC1G,CAAC;QACD,IAAI,SAAS,IAAI,OAAO,EAAE,CAAC;YACzB,MAAM,IAAI,KAAK,CAAC,2FAA2F,CAAC,CAAC;QAC/G,CAAC;IACH,CAAC;IAED;;OAEG;IACH,MAAM;QACJ,OAAO;YACL,KAAK,EAAE,IAAI,CAAC,GAAG;SAChB,CAAC;IACJ,CAAC;CACF;AAED;;;;;;GAMG;AACH,MAAM,OAAO,aAAiB,SAAQ,UAAa;IACjD,YAAY,SAAY;QACtB,KAAK,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;QAChC,IAAI,MAAM,EAAE,CAAC;YACX,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC;YACpB,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC,iCAAiC,EAAE,CAAC,GAAG,EAAE;gBACrF,IAAI,CAAC,cAAc,EAAE,EAAE,CAAC,aAAa,CAAC;oBACpC,IAAI,EAAE,aAAa,CAAC,iBAAiB;oBACrC,IAAI,EAAE;wBACJ,EAAE;qBACH;iBACF,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;QACL,CAAC;IACH,CAAC;CACF;AA2HD,MAAM,UAAU,gBAAgB,CAAI,SAAa;IAC/C,OAAO,OAAO,CAAC,GAAG,EAAE;QAClB,OAAO,IAAI,aAAa,CAAC,SAAS,CAAC,CAAC;IACtC,CAAC,EAAE,EAAE,CAAC,CAAC;AACT,CAAC"}
1
+ {"version":3,"file":"workletRef.js","sourceRoot":"","sources":["../../src/worklet/workletRef.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,aAAa,EAAE,MAAM,yCAAyC,CAAC;AAExE,OAAO,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAE5C,gDAAgD;AAChD,IAAI,QAAQ,GAAG,CAAC,CAAC;AACjB,IAAI,QAAQ,GAAG,CAAC,CAAC;AAEjB,MAAM,UAAU,+BAA+B;IAC7C,QAAQ,GAAG,QAAQ,GAAG,CAAC,CAAC;AAC1B,CAAC;AAED,MAAe,UAAU;IACvB;;OAEG;IACO,KAAK,CAAS;IACxB;;OAEG;IACO,UAAU,CAAgB;IACpC;;OAEG;IACO,KAAK,CAAS;IACxB;;OAEG;IACO,kBAAkB,CAAU;IAEtC;;OAEG;IACH,YAAsB,SAAY,EAAE,IAAY;QAC9C,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;QAC5B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAClB,IAAI,MAAM,EAAE,CAAC;YACX,IAAI,CAAC,KAAK,GAAG,EAAE,QAAQ,CAAC;YACxB,sBAAsB,CAAC,IAAI,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;QAChD,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,KAAK,GAAG,EAAE,QAAQ,CAAC;QAC1B,CAAC;IACH,CAAC;IAED,IAAI,OAAO;QACT,IAAI,MAAM,IAAI,OAAO,EAAE,CAAC;YACtB,MAAM,IAAI,KAAK,CAAC,sFAAsF,CAAC,CAAC;QAC1G,CAAC;QACD,IAAI,SAAS,IAAI,OAAO,EAAE,CAAC;YACzB,oBAAoB;YACpB,MAAM,IAAI,KAAK,CAAC,2FAA2F,CAAC,CAAC;QAC/G,CAAC;QACD,oBAAoB;QACpB,OAAO,SAAc,CAAC;IACxB,CAAC;IAED,IAAI,OAAO,CAAC,CAAI;QACd,IAAI,MAAM,IAAI,OAAO,EAAE,CAAC;YACtB,MAAM,IAAI,KAAK,CAAC,sFAAsF,CAAC,CAAC;QAC1G,CAAC;QACD,IAAI,SAAS,IAAI,OAAO,EAAE,CAAC;YACzB,MAAM,IAAI,KAAK,CAAC,2FAA2F,CAAC,CAAC;QAC/G,CAAC;IACH,CAAC;IAED;;OAEG;IACH,MAAM;QACJ,OAAO;YACL,KAAK,EAAE,IAAI,CAAC,KAAK;SAClB,CAAC;IACJ,CAAC;CACF;AAED;;;;;;GAMG;AACH,MAAM,OAAO,aAAiB,SAAQ,UAAa;IACjD,YAAY,SAAY;QACtB,KAAK,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;QAChC,IAAI,MAAM,EAAE,CAAC;YACX,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC;YACtB,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC,iCAAiC,EAAE,CAAC,GAAG,EAAE;gBACrF,IAAI,CAAC,cAAc,EAAE,EAAE,CAAC,aAAa,CAAC;oBACpC,IAAI,EAAE,aAAa,CAAC,iBAAiB;oBACrC,IAAI,EAAE;wBACJ,EAAE;qBACH;iBACF,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;QACL,CAAC;IACH,CAAC;CACF;AA2HD,MAAM,UAAU,gBAAgB,CAAI,SAAa;IAC/C,OAAO,OAAO,CAAC,GAAG,EAAE;QAClB,OAAO,IAAI,aAAa,CAAC,SAAS,CAAC,CAAC;IACtC,CAAC,EAAE,EAAE,CAAC,CAAC;AACT,CAAC"}
@@ -0,0 +1,10 @@
1
+ import { onHydrationFinished } from '@lynx-js/react/worklet-runtime/bindings';
2
+
3
+ export let isMainThreadHydrationFinished = false;
4
+
5
+ export function setMainThreadHydrationFinished(isFinished: boolean): void {
6
+ if (isFinished && !isMainThreadHydrationFinished) {
7
+ onHydrationFinished();
8
+ }
9
+ isMainThreadHydrationFinished = isFinished;
10
+ }
@@ -2,17 +2,18 @@
2
2
  // Licensed under the Apache License Version 2.0 that can be found in the
3
3
  // LICENSE file in the root directory of this source tree.
4
4
 
5
- import { clearDelayedWorklets, updateWorkletRefInitValueChanges } from '@lynx-js/react/worklet-runtime/bindings';
5
+ import { updateWorkletRefInitValueChanges } from '@lynx-js/react/worklet-runtime/bindings';
6
6
 
7
7
  import type { PatchList, PatchOptions } from './commit.js';
8
8
  import { snapshotPatchApply } from './snapshotPatchApply.js';
9
9
  import { LifecycleConstant } from '../../lifecycleConstant.js';
10
10
  import { __pendingListUpdates } from '../../list.js';
11
- import { PerformanceTimingKeys, markTiming, setPipeline } from '../../lynx/performance.js';
11
+ import { markTiming, PerformanceTimingKeys, setPipeline } from '../../lynx/performance.js';
12
12
  import { takeGlobalRefPatchMap } from '../../snapshot/ref.js';
13
13
  import { __page } from '../../snapshot.js';
14
14
  import { isEmptyObject } from '../../utils.js';
15
15
  import { getReloadVersion } from '../pass.js';
16
+ import { setMainThreadHydrationFinished } from './isMainThreadHydrationFinished.js';
16
17
 
17
18
  function updateMainThread(
18
19
  { data, patchOptions }: {
@@ -47,7 +48,7 @@ function updateMainThread(
47
48
  markTiming(PerformanceTimingKeys.patchChangesEnd);
48
49
  markTiming(PerformanceTimingKeys.mtsRenderEnd);
49
50
  if (patchOptions.isHydration) {
50
- clearDelayedWorklets();
51
+ setMainThreadHydrationFinished(true);
51
52
  }
52
53
  if (patchOptions.pipelineOptions) {
53
54
  flushOptions.pipelineOptions = patchOptions.pipelineOptions;
@@ -22,6 +22,7 @@ import { clearJSReadyEventIdSwap, isJSReady } from './event/jsReady.js';
22
22
  import { increaseReloadVersion } from './pass.js';
23
23
  import { deinitGlobalSnapshotPatch } from './patch/snapshotPatch.js';
24
24
  import { renderMainThread } from './render.js';
25
+ import { setMainThreadHydrationFinished } from './patch/isMainThreadHydrationFinished.js';
25
26
 
26
27
  function reloadMainThread(data: any, options: UpdatePageOption): void {
27
28
  if (__PROFILE__) {
@@ -38,6 +39,7 @@ function reloadMainThread(data: any, options: UpdatePageOption): void {
38
39
  snapshotInstanceManager.clear();
39
40
  __pendingListUpdates.clear();
40
41
  clearJSReadyEventIdSwap();
42
+ setMainThreadHydrationFinished(false);
41
43
 
42
44
  const oldRoot = __root;
43
45
  setRoot(new SnapshotInstance('root'));
@@ -1,7 +1,7 @@
1
1
  // Copyright 2024 The Lynx Authors. All rights reserved.
2
2
  // Licensed under the Apache License Version 2.0 that can be found in the
3
3
  // LICENSE file in the root directory of this source tree.
4
- import type { Worklet, WorkletRef } from '@lynx-js/react/worklet-runtime/bindings';
4
+ import type { Element, Worklet, WorkletRefImpl } from '@lynx-js/react/worklet-runtime/bindings';
5
5
 
6
6
  import { nextCommitTaskId } from '../lifecycle/patch/commit.js';
7
7
  import { SnapshotInstance, backgroundSnapshotInstanceManager } from '../snapshot.js';
@@ -20,7 +20,7 @@ function unref(snapshot: SnapshotInstance, recursive: boolean): void {
20
20
 
21
21
  snapshot.__worklet_ref_set?.forEach(v => {
22
22
  if (v) {
23
- workletUnRef(v as Worklet | WorkletRef<unknown>);
23
+ workletUnRef(v as Worklet | WorkletRefImpl<Element>);
24
24
  }
25
25
  });
26
26
  snapshot.__worklet_ref_set?.clear();
@@ -9,8 +9,10 @@
9
9
  * optimized attribute updates at compile time, avoiding runtime object spreads.
10
10
  */
11
11
 
12
+ import type { Worklet } from '@lynx-js/react/worklet-runtime/bindings';
13
+
12
14
  import { BackgroundSnapshotInstance } from '../backgroundSnapshot.js';
13
- import { __pendingListUpdates, ListUpdateInfoRecording } from '../list.js';
15
+ import { ListUpdateInfoRecording, __pendingListUpdates } from '../list.js';
14
16
  import { SnapshotInstance } from '../snapshot.js';
15
17
  import { isDirectOrDeepEqual, isEmptyObject, pick } from '../utils.js';
16
18
  import { updateEvent } from './event.js';
@@ -37,7 +39,7 @@ const noFlattenAttributes = /* @__PURE__ */ new Set<string>([
37
39
  ]);
38
40
 
39
41
  function updateSpread(snapshot: SnapshotInstance, index: number, oldValue: any, elementIndex: number): void {
40
- oldValue ||= {};
42
+ oldValue ??= {};
41
43
  let newValue: Record<string, any> = snapshot.__values![index]; // compiler guarantee this must be an object;
42
44
 
43
45
  // @ts-ignore
@@ -132,7 +134,7 @@ function updateSpread(snapshot: SnapshotInstance, index: number, oldValue: any,
132
134
  __elements: snapshot.__elements,
133
135
  } as SnapshotInstance;
134
136
  updateGesture(fakeSnapshot, index, oldValue[key], elementIndex, workletType);
135
- } else if ((match = key.match(eventRegExp))) {
137
+ } else if ((match = eventRegExp.exec(key))) {
136
138
  const workletType = match[2];
137
139
  const eventType = eventTypeMap[match[3]!]!;
138
140
  const eventName = match[4]!;
@@ -150,7 +152,15 @@ function updateSpread(snapshot: SnapshotInstance, index: number, oldValue: any,
150
152
  __elements: snapshot.__elements,
151
153
  } as SnapshotInstance;
152
154
  if (workletType) {
153
- updateWorkletEvent(fakeSnapshot, index, oldValue[key], elementIndex, workletType, eventType, eventName);
155
+ updateWorkletEvent(
156
+ fakeSnapshot,
157
+ index,
158
+ oldValue[key] as Worklet,
159
+ elementIndex,
160
+ workletType,
161
+ eventType,
162
+ eventName,
163
+ );
154
164
  } else {
155
165
  updateEvent(fakeSnapshot, index, oldValue[key], elementIndex, eventType, eventName, key);
156
166
  }
@@ -220,7 +230,7 @@ function updateSpread(snapshot: SnapshotInstance, index: number, oldValue: any,
220
230
  __elements: snapshot.__elements,
221
231
  } as SnapshotInstance;
222
232
  updateGesture(fakeSnapshot, index, oldValue[key], elementIndex, workletType);
223
- } else if ((match = key.match(eventRegExp))) {
233
+ } else if ((match = eventRegExp.exec(key))) {
224
234
  const workletType = match[2];
225
235
  const eventType = eventTypeMap[match[3]!]!;
226
236
  const eventName = match[4]!;
@@ -2,13 +2,14 @@
2
2
  // Licensed under the Apache License Version 2.0 that can be found in the
3
3
  // LICENSE file in the root directory of this source tree.
4
4
  import { onWorkletCtxUpdate } from '@lynx-js/react/worklet-runtime/bindings';
5
+ import type { Worklet } from '@lynx-js/react/worklet-runtime/bindings';
5
6
 
6
7
  import { SnapshotInstance } from '../snapshot.js';
7
8
 
8
9
  function updateWorkletEvent(
9
10
  snapshot: SnapshotInstance,
10
11
  expIndex: number,
11
- _oldValue: any,
12
+ _oldValue: Worklet,
12
13
  elementIndex: number,
13
14
  workletType: string,
14
15
  eventType: string,
@@ -17,7 +18,7 @@ function updateWorkletEvent(
17
18
  if (!snapshot.__elements) {
18
19
  return;
19
20
  }
20
- const value = snapshot.__values![expIndex] || {};
21
+ const value = (snapshot.__values![expIndex] as Worklet || undefined) ?? {};
21
22
  value._workletType = workletType;
22
23
 
23
24
  if (workletType === 'main-thread') {