@lynx-js/react 0.117.1 → 0.119.0

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 (217) hide show
  1. package/CHANGELOG.md +62 -0
  2. package/package.json +37 -15
  3. package/refresh/.turbo/turbo-build.log +1 -1
  4. package/runtime/lib/alog/elementPAPICall.js +1 -0
  5. package/runtime/lib/alog/elementPAPICall.js.map +1 -1
  6. package/runtime/lib/debug/component-stack.d.ts +0 -6
  7. package/runtime/lib/debug/component-stack.js.map +1 -1
  8. package/runtime/lib/debug/profile.js +1 -2
  9. package/runtime/lib/debug/profile.js.map +1 -1
  10. package/runtime/lib/gesture/processGesture.js +103 -11
  11. package/runtime/lib/gesture/processGesture.js.map +1 -1
  12. package/runtime/lib/hooks/mainThread.d.ts +17 -0
  13. package/runtime/lib/hooks/mainThread.js +152 -0
  14. package/runtime/lib/hooks/mainThread.js.map +1 -0
  15. package/runtime/lib/hooks/react.js +3 -3
  16. package/runtime/lib/hooks/react.js.map +1 -1
  17. package/runtime/lib/{lifecycleConstant.js → lifecycle/constant.js} +1 -1
  18. package/runtime/lib/lifecycle/constant.js.map +1 -0
  19. package/runtime/lib/lifecycle/event/delayLifecycleEvents.d.ts +1 -1
  20. package/runtime/lib/lifecycle/event/jsReady.js +4 -2
  21. package/runtime/lib/lifecycle/event/jsReady.js.map +1 -1
  22. package/runtime/lib/lifecycle/patch/commit.js +1 -1
  23. package/runtime/lib/lifecycle/patch/commit.js.map +1 -1
  24. package/runtime/lib/lifecycle/patch/updateMainThread.js +2 -2
  25. package/runtime/lib/lifecycle/patch/updateMainThread.js.map +1 -1
  26. package/runtime/lib/lifecycle/reload.js +8 -8
  27. package/runtime/lib/lifecycle/reload.js.map +1 -1
  28. package/runtime/lib/lifecycle/render.js +2 -20
  29. package/runtime/lib/lifecycle/render.js.map +1 -1
  30. package/runtime/lib/{list.d.ts → list/list.d.ts} +1 -1
  31. package/runtime/lib/{list.js → list/list.js} +3 -3
  32. package/runtime/lib/list/list.js.map +1 -0
  33. package/runtime/lib/{listUpdateInfo.d.ts → list/listUpdateInfo.d.ts} +1 -1
  34. package/runtime/lib/{listUpdateInfo.js → list/listUpdateInfo.js} +2 -2
  35. package/runtime/lib/list/listUpdateInfo.js.map +1 -0
  36. package/runtime/lib/list/pendingListUpdates.js.map +1 -0
  37. package/runtime/lib/lynx/calledByNative.js +5 -5
  38. package/runtime/lib/lynx/calledByNative.js.map +1 -1
  39. package/runtime/lib/lynx/suspense.js +2 -2
  40. package/runtime/lib/lynx/suspense.js.map +1 -1
  41. package/runtime/lib/lynx/tt.js +1 -1
  42. package/runtime/lib/lynx/tt.js.map +1 -1
  43. package/runtime/lib/lynx-api.js +1 -1
  44. package/runtime/lib/lynx-api.js.map +1 -1
  45. package/runtime/lib/renderToOpcodes/constants.d.ts +1 -0
  46. package/runtime/lib/renderToOpcodes/constants.js +1 -0
  47. package/runtime/lib/renderToOpcodes/constants.js.map +1 -1
  48. package/runtime/lib/{hydrate.d.ts → renderToOpcodes/hydrate.d.ts} +2 -2
  49. package/runtime/lib/{hydrate.js → renderToOpcodes/hydrate.js} +6 -6
  50. package/runtime/lib/renderToOpcodes/hydrate.js.map +1 -0
  51. package/runtime/lib/renderToOpcodes/index.d.ts +2 -1
  52. package/runtime/lib/renderToOpcodes/index.js +82 -25
  53. package/runtime/lib/renderToOpcodes/index.js.map +1 -1
  54. package/runtime/lib/{opcodes.d.ts → renderToOpcodes/opcodes.d.ts} +1 -2
  55. package/runtime/lib/{opcodes.js → renderToOpcodes/opcodes.js} +54 -54
  56. package/runtime/lib/renderToOpcodes/opcodes.js.map +1 -0
  57. package/runtime/lib/snapshot/backgroundSnapshot.js +4 -4
  58. package/runtime/lib/snapshot/backgroundSnapshot.js.map +1 -1
  59. package/runtime/lib/snapshot/list.js +2 -2
  60. package/runtime/lib/snapshot/list.js.map +1 -1
  61. package/runtime/lib/snapshot/platformInfo.js +2 -2
  62. package/runtime/lib/snapshot/platformInfo.js.map +1 -1
  63. package/runtime/lib/snapshot/snapshot.d.ts +1 -0
  64. package/runtime/lib/snapshot/snapshot.js +17 -4
  65. package/runtime/lib/snapshot/snapshot.js.map +1 -1
  66. package/runtime/lib/snapshot/spread.js +2 -2
  67. package/runtime/lib/snapshot/spread.js.map +1 -1
  68. package/runtime/lib/tsconfig.tsbuildinfo +1 -0
  69. package/runtime/lib/utils.d.ts +1 -0
  70. package/runtime/lib/utils.js +3 -0
  71. package/runtime/lib/utils.js.map +1 -1
  72. package/runtime/lib/worklet/ref/updateInitValue.js +1 -1
  73. package/runtime/lib/worklet/ref/updateInitValue.js.map +1 -1
  74. package/runtime/lib/worklet-runtime/api/animation/animation.js.map +1 -0
  75. package/runtime/lib/worklet-runtime/api/animation/effect.js.map +1 -0
  76. package/runtime/lib/worklet-runtime/api/element.js.map +1 -0
  77. package/{worklet-runtime/lib → runtime/lib/worklet-runtime}/api/lepusQuerySelector.js +10 -2
  78. package/runtime/lib/worklet-runtime/api/lepusQuerySelector.js.map +1 -0
  79. package/runtime/lib/worklet-runtime/api/lynxApi.js.map +1 -0
  80. package/runtime/lib/worklet-runtime/bindings/bindings.js.map +1 -0
  81. package/runtime/lib/worklet-runtime/bindings/events.js.map +1 -0
  82. package/runtime/lib/worklet-runtime/bindings/index.js.map +1 -0
  83. package/runtime/lib/worklet-runtime/bindings/loadRuntime.js.map +1 -0
  84. package/runtime/lib/worklet-runtime/bindings/observers.js.map +1 -0
  85. package/runtime/lib/worklet-runtime/bindings/types.js.map +1 -0
  86. package/runtime/lib/worklet-runtime/delayRunOnBackground.js.map +1 -0
  87. package/runtime/lib/worklet-runtime/delayWorkletEvent.js.map +1 -0
  88. package/runtime/lib/worklet-runtime/eomImpl.js.map +1 -0
  89. package/runtime/lib/worklet-runtime/eventPropagation.js.map +1 -0
  90. package/runtime/lib/worklet-runtime/global.js.map +1 -0
  91. package/runtime/lib/worklet-runtime/hydrate.js.map +1 -0
  92. package/runtime/lib/worklet-runtime/index.js.map +1 -0
  93. package/runtime/lib/worklet-runtime/jsFunctionLifecycle.js.map +1 -0
  94. package/runtime/lib/worklet-runtime/listeners.js.map +1 -0
  95. package/runtime/lib/worklet-runtime/runOnMainThread.js.map +1 -0
  96. package/runtime/lib/worklet-runtime/utils/mainThreadFlushLoopGuard.js.map +1 -0
  97. package/runtime/lib/worklet-runtime/utils/profile.js.map +1 -0
  98. package/runtime/lib/worklet-runtime/utils/version.js.map +1 -0
  99. package/runtime/lib/worklet-runtime/workletRef.js.map +1 -0
  100. package/runtime/lib/worklet-runtime/workletRuntime.js.map +1 -0
  101. package/{worklet-runtime/dist → runtime/worklet-runtime}/dev.js +7 -3
  102. package/{worklet-runtime/dist → runtime/worklet-runtime}/main.js +1 -1
  103. package/testing-library/README.md +48 -9
  104. package/testing-library/dist/0~123.js +43 -0
  105. package/testing-library/dist/881.js +1 -0
  106. package/testing-library/dist/entry.d.ts +1 -0
  107. package/testing-library/dist/env/index.d.ts +2 -0
  108. package/testing-library/dist/env/index.js +661 -0
  109. package/testing-library/dist/env/rstest.d.ts +1 -0
  110. package/testing-library/dist/env/rstest.js +6 -0
  111. package/testing-library/dist/env/vitest.d.ts +3 -0
  112. package/testing-library/dist/env/vitest.js +8 -662
  113. package/testing-library/dist/fire-event.d.ts +111 -0
  114. package/testing-library/dist/index.d.ts +18 -6
  115. package/testing-library/dist/plugins/index.d.ts +2 -0
  116. package/testing-library/dist/plugins/index.js +282 -0
  117. package/testing-library/dist/plugins/vitest.d.ts +26 -0
  118. package/testing-library/dist/pure.js +2 -2
  119. package/testing-library/dist/rstest-config.d.ts +25 -0
  120. package/testing-library/dist/rstest-config.js +61 -0
  121. package/testing-library/dist/setupFiles/common/bootstrap.js +2 -0
  122. package/testing-library/dist/{vitest-global-setup.js → setupFiles/common/runtime-setup.js} +25 -39
  123. package/testing-library/dist/setupFiles/inner/rstest.js +7 -0
  124. package/testing-library/dist/setupFiles/inner/vitest.js +11 -0
  125. package/testing-library/dist/setupFiles/rstest.js +21 -0
  126. package/testing-library/dist/setupFiles/vitest.js +20 -0
  127. package/testing-library/dist/vitest.config.d.ts +6 -0
  128. package/testing-library/dist/vitest.config.js +4 -257
  129. package/transform/dist/wasm.cjs +1 -1
  130. package/transform/index.d.ts +37 -1
  131. package/runtime/lib/hydrate.js.map +0 -1
  132. package/runtime/lib/lifecycleConstant.js.map +0 -1
  133. package/runtime/lib/list.js.map +0 -1
  134. package/runtime/lib/listUpdateInfo.js.map +0 -1
  135. package/runtime/lib/opcodes.js.map +0 -1
  136. package/runtime/lib/pendingListUpdates.js.map +0 -1
  137. package/testing-library/types/vitest-config.d.ts +0 -20
  138. package/worklet-runtime/lib/api/animation/animation.js.map +0 -1
  139. package/worklet-runtime/lib/api/animation/effect.js.map +0 -1
  140. package/worklet-runtime/lib/api/element.js.map +0 -1
  141. package/worklet-runtime/lib/api/lepusQuerySelector.js.map +0 -1
  142. package/worklet-runtime/lib/api/lynxApi.js.map +0 -1
  143. package/worklet-runtime/lib/bindings/bindings.js.map +0 -1
  144. package/worklet-runtime/lib/bindings/events.js.map +0 -1
  145. package/worklet-runtime/lib/bindings/index.js.map +0 -1
  146. package/worklet-runtime/lib/bindings/loadRuntime.js.map +0 -1
  147. package/worklet-runtime/lib/bindings/observers.js.map +0 -1
  148. package/worklet-runtime/lib/bindings/types.js.map +0 -1
  149. package/worklet-runtime/lib/delayRunOnBackground.js.map +0 -1
  150. package/worklet-runtime/lib/delayWorkletEvent.js.map +0 -1
  151. package/worklet-runtime/lib/eomImpl.js.map +0 -1
  152. package/worklet-runtime/lib/eventPropagation.js.map +0 -1
  153. package/worklet-runtime/lib/global.js.map +0 -1
  154. package/worklet-runtime/lib/hydrate.js.map +0 -1
  155. package/worklet-runtime/lib/index.js.map +0 -1
  156. package/worklet-runtime/lib/jsFunctionLifecycle.js.map +0 -1
  157. package/worklet-runtime/lib/listeners.js.map +0 -1
  158. package/worklet-runtime/lib/runOnMainThread.js.map +0 -1
  159. package/worklet-runtime/lib/utils/mainThreadFlushLoopGuard.js.map +0 -1
  160. package/worklet-runtime/lib/utils/profile.js.map +0 -1
  161. package/worklet-runtime/lib/utils/version.js.map +0 -1
  162. package/worklet-runtime/lib/workletRef.js.map +0 -1
  163. package/worklet-runtime/lib/workletRuntime.js.map +0 -1
  164. /package/runtime/lib/{lifecycleConstant.d.ts → lifecycle/constant.d.ts} +0 -0
  165. /package/runtime/lib/{pendingListUpdates.d.ts → list/pendingListUpdates.d.ts} +0 -0
  166. /package/runtime/lib/{pendingListUpdates.js → list/pendingListUpdates.js} +0 -0
  167. /package/{worklet-runtime/lib → runtime/lib/worklet-runtime}/api/animation/animation.d.ts +0 -0
  168. /package/{worklet-runtime/lib → runtime/lib/worklet-runtime}/api/animation/animation.js +0 -0
  169. /package/{worklet-runtime/lib → runtime/lib/worklet-runtime}/api/animation/effect.d.ts +0 -0
  170. /package/{worklet-runtime/lib → runtime/lib/worklet-runtime}/api/animation/effect.js +0 -0
  171. /package/{worklet-runtime/lib → runtime/lib/worklet-runtime}/api/element.d.ts +0 -0
  172. /package/{worklet-runtime/lib → runtime/lib/worklet-runtime}/api/element.js +0 -0
  173. /package/{worklet-runtime/lib → runtime/lib/worklet-runtime}/api/lepusQuerySelector.d.ts +0 -0
  174. /package/{worklet-runtime/lib → runtime/lib/worklet-runtime}/api/lynxApi.d.ts +0 -0
  175. /package/{worklet-runtime/lib → runtime/lib/worklet-runtime}/api/lynxApi.js +0 -0
  176. /package/{worklet-runtime/lib → runtime/lib/worklet-runtime}/bindings/bindings.d.ts +0 -0
  177. /package/{worklet-runtime/lib → runtime/lib/worklet-runtime}/bindings/bindings.js +0 -0
  178. /package/{worklet-runtime/lib → runtime/lib/worklet-runtime}/bindings/events.d.ts +0 -0
  179. /package/{worklet-runtime/lib → runtime/lib/worklet-runtime}/bindings/events.js +0 -0
  180. /package/{worklet-runtime/lib → runtime/lib/worklet-runtime}/bindings/index.d.ts +0 -0
  181. /package/{worklet-runtime/lib → runtime/lib/worklet-runtime}/bindings/index.js +0 -0
  182. /package/{worklet-runtime/lib → runtime/lib/worklet-runtime}/bindings/loadRuntime.d.ts +0 -0
  183. /package/{worklet-runtime/lib → runtime/lib/worklet-runtime}/bindings/loadRuntime.js +0 -0
  184. /package/{worklet-runtime/lib → runtime/lib/worklet-runtime}/bindings/observers.d.ts +0 -0
  185. /package/{worklet-runtime/lib → runtime/lib/worklet-runtime}/bindings/observers.js +0 -0
  186. /package/{worklet-runtime/lib → runtime/lib/worklet-runtime}/bindings/types.d.ts +0 -0
  187. /package/{worklet-runtime/lib → runtime/lib/worklet-runtime}/bindings/types.js +0 -0
  188. /package/{worklet-runtime/lib → runtime/lib/worklet-runtime}/delayRunOnBackground.d.ts +0 -0
  189. /package/{worklet-runtime/lib → runtime/lib/worklet-runtime}/delayRunOnBackground.js +0 -0
  190. /package/{worklet-runtime/lib → runtime/lib/worklet-runtime}/delayWorkletEvent.d.ts +0 -0
  191. /package/{worklet-runtime/lib → runtime/lib/worklet-runtime}/delayWorkletEvent.js +0 -0
  192. /package/{worklet-runtime/lib → runtime/lib/worklet-runtime}/eomImpl.d.ts +0 -0
  193. /package/{worklet-runtime/lib → runtime/lib/worklet-runtime}/eomImpl.js +0 -0
  194. /package/{worklet-runtime/lib → runtime/lib/worklet-runtime}/eventPropagation.d.ts +0 -0
  195. /package/{worklet-runtime/lib → runtime/lib/worklet-runtime}/eventPropagation.js +0 -0
  196. /package/{worklet-runtime/lib → runtime/lib/worklet-runtime}/global.d.ts +0 -0
  197. /package/{worklet-runtime/lib → runtime/lib/worklet-runtime}/global.js +0 -0
  198. /package/{worklet-runtime/lib → runtime/lib/worklet-runtime}/hydrate.d.ts +0 -0
  199. /package/{worklet-runtime/lib → runtime/lib/worklet-runtime}/hydrate.js +0 -0
  200. /package/{worklet-runtime/lib → runtime/lib/worklet-runtime}/index.d.ts +0 -0
  201. /package/{worklet-runtime/lib → runtime/lib/worklet-runtime}/index.js +0 -0
  202. /package/{worklet-runtime/lib → runtime/lib/worklet-runtime}/jsFunctionLifecycle.d.ts +0 -0
  203. /package/{worklet-runtime/lib → runtime/lib/worklet-runtime}/jsFunctionLifecycle.js +0 -0
  204. /package/{worklet-runtime/lib → runtime/lib/worklet-runtime}/listeners.d.ts +0 -0
  205. /package/{worklet-runtime/lib → runtime/lib/worklet-runtime}/listeners.js +0 -0
  206. /package/{worklet-runtime/lib → runtime/lib/worklet-runtime}/runOnMainThread.d.ts +0 -0
  207. /package/{worklet-runtime/lib → runtime/lib/worklet-runtime}/runOnMainThread.js +0 -0
  208. /package/{worklet-runtime/lib → runtime/lib/worklet-runtime}/utils/mainThreadFlushLoopGuard.d.ts +0 -0
  209. /package/{worklet-runtime/lib → runtime/lib/worklet-runtime}/utils/mainThreadFlushLoopGuard.js +0 -0
  210. /package/{worklet-runtime/lib → runtime/lib/worklet-runtime}/utils/profile.d.ts +0 -0
  211. /package/{worklet-runtime/lib → runtime/lib/worklet-runtime}/utils/profile.js +0 -0
  212. /package/{worklet-runtime/lib → runtime/lib/worklet-runtime}/utils/version.d.ts +0 -0
  213. /package/{worklet-runtime/lib → runtime/lib/worklet-runtime}/utils/version.js +0 -0
  214. /package/{worklet-runtime/lib → runtime/lib/worklet-runtime}/workletRef.d.ts +0 -0
  215. /package/{worklet-runtime/lib → runtime/lib/worklet-runtime}/workletRef.js +0 -0
  216. /package/{worklet-runtime/lib → runtime/lib/worklet-runtime}/workletRuntime.d.ts +0 -0
  217. /package/{worklet-runtime/lib → runtime/lib/worklet-runtime}/workletRuntime.js +0 -0
package/CHANGELOG.md CHANGED
@@ -1,5 +1,67 @@
1
1
  # @lynx-js/react
2
2
 
3
+ ## 0.119.0
4
+
5
+ ### Minor Changes
6
+
7
+ - Simplify hooks for main-thread runtime, which only can run during the first screen. ([#2441](https://github.com/lynx-family/lynx-stack/pull/2441))
8
+
9
+ ### Patch Changes
10
+
11
+ - Remove stale gestures when gestures are removed ([#2297](https://github.com/lynx-family/lynx-stack/pull/2297))
12
+
13
+ - Trace refactor ([#2466](https://github.com/lynx-family/lynx-stack/pull/2466))
14
+
15
+ - Remove `ReactLynx::renderOpcodes` from the trace
16
+ - Use `ReactLynx::transferRoot` to measure the time spent transferring the root to the background thread
17
+
18
+ - refactor: set state of suspense to render fallback ([#2450](https://github.com/lynx-family/lynx-stack/pull/2450))
19
+
20
+ - Support rstest for testing library, you can use rstest with RLTL now: ([#2328](https://github.com/lynx-family/lynx-stack/pull/2328))
21
+
22
+ Create a config file `rstest.config.ts` with the following content:
23
+
24
+ ```ts
25
+ import { defineConfig } from '@rstest/core';
26
+ import { withLynxConfig } from '@lynx-js/react/testing-library/rstest-config';
27
+
28
+ export default defineConfig({
29
+ extends: withLynxConfig(),
30
+ });
31
+ ```
32
+
33
+ `@lynx-js/react/testing-library/rstest-config` will automatically load your `lynx.config.ts` and apply the same configuration to rstest, so you can keep your test environment consistent with your development environment.
34
+
35
+ And then use rstest as usual:
36
+
37
+ ```bash
38
+ $ rstest
39
+ ```
40
+
41
+ For more usage detail, see https://rstest.rs/
42
+
43
+ - Update preact version ([#2456](https://github.com/lynx-family/lynx-stack/pull/2456))
44
+
45
+ - Add `nodeIndex` to generated FiberElement creation calls and expose React transform debug metadata as `uiSourceMapRecords`. ([#2402](https://github.com/lynx-family/lynx-stack/pull/2402))
46
+
47
+ ## 0.118.0
48
+
49
+ ### Minor Changes
50
+
51
+ - refactor: create SnapshotInstance in renderToString directly ([#2393](https://github.com/lynx-family/lynx-stack/pull/2393))
52
+
53
+ - Add `removeCall` for shake function calls. Its initial default value matches the hooks that were previously in `removeCallParams`, and `removeCallParams` now defaults to empty. ([#2423](https://github.com/lynx-family/lynx-stack/pull/2423))
54
+
55
+ `removeCall` removes matched runtime hook calls entirely, replacing them with `undefined` in expression positions and dropping them in statement positions. `removeCallParams` keeps the existing behavior of preserving the call while stripping its arguments.
56
+
57
+ ### Patch Changes
58
+
59
+ - Improve `shake.removeCall` and `shake.removeCallParams` in the React transform so they also match aliased runtime imports such as `import { useEffect as myUseEffect } ...` and member calls such as `ReactLynxRuntime.useEffect(...)` from default or namespace runtime imports. ([#2437](https://github.com/lynx-family/lynx-stack/pull/2437))
60
+
61
+ - Create element without ref for suspense in main thread. ([#2426](https://github.com/lynx-family/lynx-stack/pull/2426))
62
+
63
+ - refactor: make `useEffect`, `useLayoutEffect` and `useImperativeHandle` no-op on the main thread ([#2424](https://github.com/lynx-family/lynx-stack/pull/2424))
64
+
3
65
  ## 0.117.1
4
66
 
5
67
  ### Patch Changes
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lynx-js/react",
3
- "version": "0.117.1",
3
+ "version": "0.119.0",
4
4
  "description": "ReactLynx is a framework for developing Lynx applications with familiar React.",
5
5
  "repository": {
6
6
  "type": "git",
@@ -55,6 +55,14 @@
55
55
  "types": "./runtime/jsx-runtime/index.d.ts",
56
56
  "default": "./runtime/lepus/jsx-runtime/index.js"
57
57
  },
58
+ "./hooks": {
59
+ "types": "./runtime/lib/hooks/react.d.ts",
60
+ "default": "./runtime/lib/hooks/react.js"
61
+ },
62
+ "./lepus/hooks": {
63
+ "types": "./runtime/lib/hooks/react.d.ts",
64
+ "default": "./runtime/lib/hooks/mainThread.js"
65
+ },
58
66
  "./lepus": {
59
67
  "types": "./runtime/lepus/index.d.ts",
60
68
  "lazy": "./runtime/lazy/react-lepus.js",
@@ -76,16 +84,16 @@
76
84
  }
77
85
  },
78
86
  "./worklet-runtime": {
79
- "types": "./worklet-runtime/lib/index.d.ts",
80
- "default": "./worklet-runtime/dist/main.js"
87
+ "types": "./runtime/lib/worklet-runtime/index.d.ts",
88
+ "default": "./runtime/worklet-runtime/main.js"
81
89
  },
82
90
  "./worklet-dev-runtime": {
83
- "types": "./worklet-runtime/lib/index.d.ts",
84
- "default": "./worklet-runtime/dist/dev.js"
91
+ "types": "./runtime/lib/worklet-runtime/index.d.ts",
92
+ "default": "./runtime/worklet-runtime/dev.js"
85
93
  },
86
94
  "./worklet-runtime/bindings": {
87
- "types": "./worklet-runtime/lib/bindings/index.d.ts",
88
- "default": "./worklet-runtime/lib/bindings/index.js"
95
+ "types": "./runtime/lib/worklet-runtime/bindings/index.d.ts",
96
+ "default": "./runtime/lib/worklet-runtime/bindings/index.js"
89
97
  },
90
98
  "./legacy-react-runtime": {
91
99
  "types": "./runtime/lib/legacy-react-runtime/index.d.ts",
@@ -101,9 +109,17 @@
101
109
  "default": "./testing-library/dist/pure.js"
102
110
  },
103
111
  "./testing-library/vitest-config": {
104
- "types": "./testing-library/types/vitest-config.d.ts",
112
+ "types": "./testing-library/dist/vitest.config.d.ts",
105
113
  "default": "./testing-library/dist/vitest.config.js"
106
114
  },
115
+ "./testing-library/plugins": {
116
+ "types": "./testing-library/dist/plugins/index.d.ts",
117
+ "default": "./testing-library/dist/plugins/index.js"
118
+ },
119
+ "./testing-library/rstest-config": {
120
+ "types": "./testing-library/dist/rstest-config.d.ts",
121
+ "default": "./testing-library/dist/rstest-config.js"
122
+ },
107
123
  "./package.json": "./package.json"
108
124
  },
109
125
  "types": "./types/react.d.ts",
@@ -115,6 +131,12 @@
115
131
  "experimental/lazy/import": [
116
132
  "./runtime/lazy/import.d.ts"
117
133
  ],
134
+ "hooks": [
135
+ "./runtime/lib/hooks/react.d.ts"
136
+ ],
137
+ "lepus/hooks": [
138
+ "./runtime/lib/hooks/react.d.ts"
139
+ ],
118
140
  "internal": [
119
141
  "./runtime/lib/internal.d.ts"
120
142
  ],
@@ -143,13 +165,13 @@
143
165
  "./components/lib/index.d.ts"
144
166
  ],
145
167
  "worklet-runtime": [
146
- "./worklet-runtime/lib/index.d.ts"
168
+ "./runtime/lib/worklet-runtime/index.d.ts"
147
169
  ],
148
170
  "worklet-dev-runtime": [
149
- "./worklet-runtime/lib/index.d.ts"
171
+ "./runtime/lib/worklet-runtime/index.d.ts"
150
172
  ],
151
173
  "worklet-runtime/bindings": [
152
- "./worklet-runtime/lib/bindings/index.d.ts"
174
+ "./runtime/lib/worklet-runtime/bindings/index.d.ts"
153
175
  ],
154
176
  "legacy-react-runtime": [
155
177
  "./runtime/lib/legacy-react-runtime/index.d.ts"
@@ -163,7 +185,6 @@
163
185
  "transform",
164
186
  "types",
165
187
  "docs",
166
- "worklet-runtime",
167
188
  "testing-library",
168
189
  "CHANGELOG.md",
169
190
  "internal.js",
@@ -171,11 +192,11 @@
171
192
  "README.zh.md"
172
193
  ],
173
194
  "dependencies": {
174
- "preact": "npm:@lynx-js/internal-preact@10.28.4-4842985"
195
+ "preact": "npm:@lynx-js/internal-preact@10.28.4-2d1d67a"
175
196
  },
176
197
  "devDependencies": {
177
198
  "@lynx-js/types": "3.7.0",
178
- "@microsoft/api-extractor": "7.57.6",
199
+ "@microsoft/api-extractor": "7.58.2",
179
200
  "@types/react": "^18.3.28"
180
201
  },
181
202
  "peerDependencies": {
@@ -188,6 +209,7 @@
188
209
  }
189
210
  },
190
211
  "scripts": {
191
- "api-extractor": "api-extractor run --verbose"
212
+ "api-extractor": "api-extractor run --verbose",
213
+ "build": "rslib build"
192
214
  }
193
215
  }
@@ -5,7 +5,7 @@
5
5
  Rslib v0.19.6
6
6
 
7
7
  info build started...
8
- ready built in 0.15 s
8
+ ready built in 0.17 s
9
9
 
10
10
  File (esm) Size 
11
11
  dist/index.js 10.1 kB
@@ -40,6 +40,7 @@ const fiberElementPAPINameList = [
40
40
  '__OnLifecycleEvent',
41
41
  '__QueryComponent',
42
42
  '__SetGestureDetector',
43
+ '__RemoveGestureDetector',
43
44
  ];
44
45
  export function initElementPAPICallAlog(globalWithIndex = globalThis) {
45
46
  let count = 0;
@@ -1 +1 @@
1
- {"version":3,"file":"elementPAPICall.js","sourceRoot":"","sources":["../../src/alog/elementPAPICall.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"elementPAPICall.js","sourceRoot":"","sources":["../../src/alog/elementPAPICall.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,4 @@
1
1
  import type { VNode } from 'preact';
2
- declare module 'preact' {
3
- interface Options {
4
- /** _root */
5
- __?(vnode: VNode, parent: any): void;
6
- }
7
- }
8
2
  interface PatchedVNode extends VNode {
9
3
  _owner?: PatchedVNode | null;
10
4
  __source?: {
@@ -1 +1 @@
1
- {"version":3,"file":"component-stack.js","sourceRoot":"","sources":["../../src/debug/component-stack.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"component-stack.js","sourceRoot":"","sources":["../../src/debug/component-stack.ts"],"names":[],"mappings":"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"}
@@ -1,9 +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
- /* eslint-disable @typescript-eslint/no-unnecessary-type-assertion */
4
+ import { noop } from '../utils.js';
5
5
  export const isProfiling = /* @__PURE__ */ Boolean(lynx.performance?.isProfileRecording?.());
6
- const noop = () => { };
7
6
  const noopFlowId = () => 0;
8
7
  export const profileStart = /* @__PURE__ */ ((() => {
9
8
  let p;
@@ -1 +1 @@
1
- {"version":3,"file":"profile.js","sourceRoot":"","sources":["../../src/debug/profile.ts"],"names":[],"mappings":"AAAA,wDAAwD;AACxD,yEAAyE;AACzE,0DAA0D;AAE1D,qEAAqE;AAErE,MAAM,CAAC,MAAM,WAAW,GAAY,eAAe,CAAC,OAAO,CACzD,IAAI,CAAC,WAAW,EAAE,kBAAkB,EAAE,EAAE,CACzC,CAAC;AAEF,MAAM,IAAI,GAAG,GAAG,EAAE,GAAE,CAAC,CAAC;AACtB,MAAM,UAAU,GAAG,GAAG,EAAE,CAAC,CAAC,CAAC;AAE3B,MAAM,CAAC,MAAM,YAAY,GAAG,eAAe,CAAC,CAAC,CAAC,GAAG,EAAE;IACjD,IAAI,CAAC,CAAC;IACN,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,OAAO,CAAC,CAAC,YAAY,KAAK,UAAU,EAAE,CAAC;QACpE,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAChC,CAAC,CAAC,EAAE,CAAyC,CAAC;AAE9C,MAAM,CAAC,MAAM,UAAU,GAAG,eAAe,CAAC,CAAC,CAAC,GAAG,EAAE;IAC/C,IAAI,CAAC,CAAC;IACN,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,OAAO,CAAC,CAAC,UAAU,KAAK,UAAU,EAAE,CAAC;QAClE,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAC9B,CAAC,CAAC,EAAE,CAAuC,CAAC;AAE5C,MAAM,CAAC,MAAM,aAAa,GAAG,eAAe,CAAC,CAAC,CAAC,GAAG,EAAE;IAClD,IAAI,CAAC,CAAC;IACN,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,OAAO,CAAC,CAAC,aAAa,KAAK,UAAU,EAAE,CAAC;QACrE,OAAO,UAAU,CAAC;IACpB,CAAC;IACD,OAAO,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACjC,CAAC,CAAC,EAAE,CAA0C,CAAC"}
1
+ {"version":3,"file":"profile.js","sourceRoot":"","sources":["../../src/debug/profile.ts"],"names":[],"mappings":"AAAA,wDAAwD;AACxD,yEAAyE;AACzE,0DAA0D;AAE1D,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AAEnC,MAAM,CAAC,MAAM,WAAW,GAAY,eAAe,CAAC,OAAO,CACzD,IAAI,CAAC,WAAW,EAAE,kBAAkB,EAAE,EAAE,CACzC,CAAC;AAEF,MAAM,UAAU,GAAG,GAAG,EAAE,CAAC,CAAC,CAAC;AAE3B,MAAM,CAAC,MAAM,YAAY,GAAG,eAAe,CAAC,CAAC,CAAC,GAAG,EAAE;IACjD,IAAI,CAAC,CAAC;IACN,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,OAAO,CAAC,CAAC,YAAY,KAAK,UAAU,EAAE,CAAC;QACpE,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAChC,CAAC,CAAC,EAAE,CAAyC,CAAC;AAE9C,MAAM,CAAC,MAAM,UAAU,GAAG,eAAe,CAAC,CAAC,CAAC,GAAG,EAAE;IAC/C,IAAI,CAAC,CAAC;IACN,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,OAAO,CAAC,CAAC,UAAU,KAAK,UAAU,EAAE,CAAC;QAClE,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAC9B,CAAC,CAAC,EAAE,CAAuC,CAAC;AAE5C,MAAM,CAAC,MAAM,aAAa,GAAG,eAAe,CAAC,CAAC,CAAC,GAAG,EAAE;IAClD,IAAI,CAAC,CAAC;IACN,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,OAAO,CAAC,CAAC,aAAa,KAAK,UAAU,EAAE,CAAC;QACrE,OAAO,UAAU,CAAC;IACpB,CAAC;IACD,OAAO,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACjC,CAAC,CAAC,EAAE,CAA0C,CAAC"}
@@ -6,6 +6,76 @@ import { GestureTypeInner } from './types.js';
6
6
  function isSerializedGesture(gesture) {
7
7
  return gesture.__isSerialized ?? false;
8
8
  }
9
+ function getSerializedBaseGesture(gesture) {
10
+ if (!gesture || !isSerializedGesture(gesture)) {
11
+ return undefined;
12
+ }
13
+ if (gesture.type !== GestureTypeInner.COMPOSED) {
14
+ return gesture;
15
+ }
16
+ return undefined;
17
+ }
18
+ function appendUniqueSerializedBaseGestures(gesture, out, seenIds) {
19
+ if (!gesture || !isSerializedGesture(gesture)) {
20
+ return;
21
+ }
22
+ if (gesture.type === GestureTypeInner.COMPOSED) {
23
+ for (const subGesture of gesture.gestures) {
24
+ appendUniqueSerializedBaseGestures(subGesture, out, seenIds);
25
+ }
26
+ return;
27
+ }
28
+ const baseGesture = gesture;
29
+ if (seenIds.has(baseGesture.id)) {
30
+ return;
31
+ }
32
+ seenIds.add(baseGesture.id);
33
+ out.push(baseGesture);
34
+ }
35
+ function collectOldGestureInfo(oldGesture) {
36
+ const uniqOldBaseGestures = [];
37
+ const oldBaseGesturesById = new Map();
38
+ appendOldGestureInfo(oldGesture, uniqOldBaseGestures, oldBaseGesturesById);
39
+ return {
40
+ uniqOldBaseGestures,
41
+ oldBaseGesturesById,
42
+ };
43
+ }
44
+ function appendOldGestureInfo(gesture, out, byId) {
45
+ if (!gesture || !isSerializedGesture(gesture)) {
46
+ return;
47
+ }
48
+ if (gesture.type === GestureTypeInner.COMPOSED) {
49
+ for (const subGesture of gesture.gestures) {
50
+ appendOldGestureInfo(subGesture, out, byId);
51
+ }
52
+ return;
53
+ }
54
+ const oldBaseGesture = gesture;
55
+ if (!byId.has(oldBaseGesture.id)) {
56
+ byId.set(oldBaseGesture.id, oldBaseGesture);
57
+ out.push(oldBaseGesture);
58
+ }
59
+ }
60
+ function consumeOldBaseGesture(baseGesture, uniqOldBaseGestures, oldBaseGesturesById) {
61
+ const idMatchedOldBaseGesture = oldBaseGesturesById.get(baseGesture.id);
62
+ if (idMatchedOldBaseGesture) {
63
+ oldBaseGesturesById.delete(baseGesture.id);
64
+ return idMatchedOldBaseGesture;
65
+ }
66
+ const fallbackOldBaseGesture = uniqOldBaseGestures.find(oldBaseGesture => oldBaseGesturesById.has(oldBaseGesture.id));
67
+ if (!fallbackOldBaseGesture) {
68
+ return undefined;
69
+ }
70
+ oldBaseGesturesById.delete(fallbackOldBaseGesture.id);
71
+ return fallbackOldBaseGesture;
72
+ }
73
+ function removeGestureDetector(dom, id) {
74
+ // Keep compatibility with old runtimes where remove API is not exposed.
75
+ if (typeof __RemoveGestureDetector === 'function') {
76
+ __RemoveGestureDetector(dom, id);
77
+ }
78
+ }
9
79
  function getGestureInfo(gesture, oldGesture, isFirstScreen, dom) {
10
80
  const config = {
11
81
  callbacks: [],
@@ -34,23 +104,45 @@ function getGestureInfo(gesture, oldGesture, isFirstScreen, dom) {
34
104
  };
35
105
  }
36
106
  export function processGesture(dom, gesture, oldGesture, isFirstScreen, gestureOptions) {
37
- if (!gesture || !isSerializedGesture(gesture)) {
107
+ const domSet = gestureOptions?.domSet === true;
108
+ const { uniqOldBaseGestures, oldBaseGesturesById } = collectOldGestureInfo(oldGesture);
109
+ // Fast path for the most common case: single base gesture update.
110
+ const singleBaseGesture = getSerializedBaseGesture(gesture);
111
+ const singleOldBaseGesture = getSerializedBaseGesture(oldGesture);
112
+ if (singleBaseGesture && (!oldGesture || singleOldBaseGesture)) {
113
+ if (!domSet) {
114
+ __SetAttribute(dom, 'has-react-gesture', true);
115
+ __SetAttribute(dom, 'flatten', false);
116
+ }
117
+ if (singleOldBaseGesture) {
118
+ // On update, remove old detector first to avoid stale callbacks.
119
+ removeGestureDetector(dom, singleOldBaseGesture.id);
120
+ }
121
+ const { config, relationMap } = getGestureInfo(singleBaseGesture, singleOldBaseGesture, isFirstScreen, dom);
122
+ __SetGestureDetector(dom, singleBaseGesture.id, singleBaseGesture.type, config, relationMap);
123
+ return;
124
+ }
125
+ const uniqBaseGestures = [];
126
+ appendUniqueSerializedBaseGestures(gesture, uniqBaseGestures, new Set());
127
+ if (uniqBaseGestures.length === 0) {
128
+ for (const oldBaseGesture of oldBaseGesturesById.values()) {
129
+ removeGestureDetector(dom, oldBaseGesture.id);
130
+ }
131
+ if (!domSet) {
132
+ __SetAttribute(dom, 'has-react-gesture', null);
133
+ }
38
134
  return;
39
135
  }
40
- if (!(gestureOptions && gestureOptions.domSet)) {
136
+ if (!domSet) {
41
137
  __SetAttribute(dom, 'has-react-gesture', true);
42
138
  __SetAttribute(dom, 'flatten', false);
43
139
  }
44
- if (gesture.type === GestureTypeInner.COMPOSED) {
45
- for (const [index, subGesture] of gesture.gestures.entries()) {
46
- processGesture(dom, subGesture, oldGesture?.gestures[index], isFirstScreen, {
47
- domSet: true,
48
- });
49
- }
140
+ // On update, remove old detectors first to avoid stale callbacks.
141
+ for (const oldBaseGesture of oldBaseGesturesById.values()) {
142
+ removeGestureDetector(dom, oldBaseGesture.id);
50
143
  }
51
- else {
52
- const baseGesture = gesture;
53
- const oldBaseGesture = oldGesture;
144
+ for (const baseGesture of uniqBaseGestures) {
145
+ const oldBaseGesture = consumeOldBaseGesture(baseGesture, uniqOldBaseGestures, oldBaseGesturesById);
54
146
  const { config, relationMap } = getGestureInfo(baseGesture, oldBaseGesture, isFirstScreen, dom);
55
147
  __SetGestureDetector(dom, baseGesture.id, baseGesture.type, config, relationMap);
56
148
  }
@@ -1 +1 @@
1
- {"version":3,"file":"processGesture.js","sourceRoot":"","sources":["../../src/gesture/processGesture.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"processGesture.js","sourceRoot":"","sources":["../../src/gesture/processGesture.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ import type { ErrorInfo, PreactContext } from 'preact';
2
+ import type { Dispatch, useEffect as useEffectType, useErrorBoundary as useErrorBoundaryType, useImperativeHandle as useImperativeHandleType, useLayoutEffect as useLayoutEffectType } from 'preact/hooks';
3
+ declare function useState<S>(initialState: S | (() => S)): [S, Dispatch<unknown>];
4
+ declare function useReducer<S, A>(_reducer: (prevState: S, action: A) => S, initialState: S | (() => S), init?: (initialState: S) => S): [S, Dispatch<A>];
5
+ declare function useRef<T>(initialValue?: T): {
6
+ current: T | undefined;
7
+ };
8
+ declare function useMemo<T>(factory: () => T, _args: ReadonlyArray<unknown>): T;
9
+ declare function useCallback<T>(callback: T, args: ReadonlyArray<unknown>): T;
10
+ declare function useContext<T>(context: PreactContext<T>): T;
11
+ declare function useDebugValue<T>(value: T, formatter?: (value: T) => string | number): void;
12
+ declare function useErrorBoundary(cb: (error: any, errorInfo: ErrorInfo) => Promise<void> | void): ReturnType<typeof useErrorBoundaryType>;
13
+ declare function useId(): string;
14
+ declare const useEffect: typeof useEffectType;
15
+ declare const useLayoutEffect: typeof useLayoutEffectType;
16
+ declare const useImperativeHandle: typeof useImperativeHandleType;
17
+ export { useCallback, useContext, useDebugValue, useEffect, useErrorBoundary, useId, useImperativeHandle, useLayoutEffect, useMemo, useReducer, useRef, useState, };
@@ -0,0 +1,152 @@
1
+ // Copyright 2026 The Lynx Authors. All rights reserved.
2
+ // Licensed under the Apache License Version 2.0 that can be found in the
3
+ // LICENSE file in the root directory of this source tree.
4
+ /**
5
+ * Implements hooks in main thread.
6
+ * This module is modified from preact/hooks
7
+ *
8
+ * internal-preact/hooks/dist/hooks.mjs
9
+ */
10
+ import { options } from 'preact';
11
+ import { CHILDREN, COMPONENT, DIFF, DIFFED, HOOK, HOOKS, LIST, MASK, PARENT, PENDING_EFFECTS, RENDER, ROOT, VALUE, VNODE, } from '../renderToOpcodes/constants.js';
12
+ import { noop } from '../utils.js';
13
+ let currentIndex;
14
+ let currentComponent;
15
+ let currentHook;
16
+ const oldBeforeDiff = options[DIFF];
17
+ const oldBeforeRender = options[RENDER];
18
+ const oldAfterDiff = options[DIFFED];
19
+ const oldRoot = options[ROOT];
20
+ options[DIFF] = function (vnode) {
21
+ currentComponent = null;
22
+ if (oldBeforeDiff)
23
+ oldBeforeDiff(vnode);
24
+ };
25
+ /* v8 ignore start */
26
+ options[ROOT] = function (vnode, parentDom) {
27
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access
28
+ if (vnode && parentDom[CHILDREN] && parentDom[CHILDREN][MASK]) {
29
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access
30
+ vnode[MASK] = parentDom[CHILDREN][MASK];
31
+ }
32
+ if (oldRoot)
33
+ oldRoot(vnode, parentDom);
34
+ };
35
+ /* v8 ignore stop */
36
+ options[RENDER] = function (vnode) {
37
+ if (oldBeforeRender)
38
+ oldBeforeRender(vnode);
39
+ currentComponent = vnode[COMPONENT];
40
+ currentIndex = 0;
41
+ };
42
+ options[DIFFED] = function (vnode) {
43
+ if (oldAfterDiff)
44
+ oldAfterDiff(vnode);
45
+ currentComponent = null;
46
+ };
47
+ function getHookState(index, type) {
48
+ if (options[HOOK]) {
49
+ options[HOOK](currentComponent, index, currentHook || type);
50
+ }
51
+ currentHook = 0;
52
+ const hooks = currentComponent[HOOKS] ?? (currentComponent[HOOKS] = {
53
+ [LIST]: [],
54
+ [PENDING_EFFECTS]: [],
55
+ });
56
+ if (index >= hooks[LIST].length) {
57
+ hooks[LIST].push({});
58
+ }
59
+ return hooks[LIST][index];
60
+ }
61
+ function invokeOrReturn(arg, f) {
62
+ return typeof f == 'function' ? f(arg) : f;
63
+ }
64
+ function useState(initialState) {
65
+ currentHook = 1;
66
+ return useReducer(noop, initialState);
67
+ }
68
+ function useReducer(_reducer, initialState, init) {
69
+ const hookState = getHookState(currentIndex++, 2);
70
+ if (!hookState[COMPONENT]) {
71
+ hookState[VALUE] = [
72
+ /* v8 ignore start */
73
+ init ? init(initialState) : invokeOrReturn(undefined, initialState),
74
+ /* v8 ignore stop */
75
+ function (_action) {
76
+ if (__DEV__) {
77
+ console.error('Cannot update state in main thread!');
78
+ }
79
+ },
80
+ ];
81
+ hookState[COMPONENT] = currentComponent;
82
+ }
83
+ return hookState[VALUE];
84
+ }
85
+ function useRef(initialValue) {
86
+ currentHook = 5;
87
+ return useMemo(function () {
88
+ return {
89
+ current: initialValue,
90
+ };
91
+ }, []);
92
+ }
93
+ // used for first screen and need not to cache value by args
94
+ function useMemo(factory, _args) {
95
+ const state = getHookState(currentIndex++, 7);
96
+ state[VALUE] = factory();
97
+ return state[VALUE];
98
+ }
99
+ function useCallback(callback, args) {
100
+ currentHook = 8;
101
+ return useMemo(function () {
102
+ return callback;
103
+ }, args);
104
+ }
105
+ function useContext(context) {
106
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access
107
+ const provider = currentComponent.context[context.__c];
108
+ const state = getHookState(currentIndex++, 9);
109
+ state['c'] = context;
110
+ /* v8 ignore start */
111
+ if (!provider)
112
+ return context.__;
113
+ /* v8 ignore stop */
114
+ state[VALUE] = true;
115
+ return provider.props.value;
116
+ }
117
+ function useDebugValue(value, formatter) {
118
+ if (options.useDebugValue) {
119
+ /* v8 ignore start */
120
+ options.useDebugValue(formatter ? formatter(value) : value);
121
+ /* v8 ignore stop */
122
+ }
123
+ }
124
+ function useErrorBoundary(cb) {
125
+ const state = getHookState(currentIndex++, 10);
126
+ state[VALUE] = cb;
127
+ return [undefined, noop];
128
+ }
129
+ function useId() {
130
+ const state = getHookState(currentIndex++, 11);
131
+ if (!state[VALUE]) {
132
+ // Grab either the root node or the nearest async boundary node.
133
+ let root = currentComponent[VNODE];
134
+ while (root !== null && !root[MASK] && root[PARENT] !== null) {
135
+ root = root[PARENT];
136
+ }
137
+ /**
138
+ * init mask to [0, 0]
139
+ * mask[0] will not change
140
+ * mask[1] will auto increase
141
+ */
142
+ const mask = root[MASK] ?? (root[MASK] = [0, 0]);
143
+ state[VALUE] = 'P' + mask[0] + '-' + mask[1]++;
144
+ }
145
+ return state[VALUE];
146
+ }
147
+ // background hooks
148
+ const useEffect = noop;
149
+ const useLayoutEffect = noop;
150
+ const useImperativeHandle = noop;
151
+ export { useCallback, useContext, useDebugValue, useEffect, useErrorBoundary, useId, useImperativeHandle, useLayoutEffect, useMemo, useReducer, useRef, useState, };
152
+ //# sourceMappingURL=mainThread.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mainThread.js","sourceRoot":"","sources":["../../src/hooks/mainThread.ts"],"names":[],"mappings":"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"}
@@ -86,7 +86,7 @@ function useStateWithProfile(initialState) {
86
86
  stateSetterTraceCache?.set(genericSetState, tracedSetState);
87
87
  return [state, tracedSetState];
88
88
  }
89
- const useState = isProfiling
89
+ const useState = (__BACKGROUND__ && isProfiling)
90
90
  ? useStateWithProfile
91
91
  : usePreactState;
92
92
  /**
@@ -98,7 +98,7 @@ const useState = isProfiling
98
98
  *
99
99
  * @public
100
100
  */
101
- const useEffect = isProfiling
101
+ const useEffect = (__BACKGROUND__ && isProfiling)
102
102
  ? useEffectProfiled
103
103
  : usePreactEffect;
104
104
  /**
@@ -113,7 +113,7 @@ const useEffect = isProfiling
113
113
  *
114
114
  * @deprecated `useLayoutEffect` in the background thread cannot offer the precise timing for reading layout information and synchronously re-render, which is different from React.
115
115
  */
116
- const useLayoutEffect = isProfiling
116
+ const useLayoutEffect = (__BACKGROUND__ && isProfiling)
117
117
  ? useLayoutEffectProfiled
118
118
  : usePreactEffect;
119
119
  export {