@lynx-js/react 0.112.2 → 0.112.4

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 +42 -0
  2. package/components/lib/Page.js +1 -1
  3. package/components/lib/Page.js.map +1 -1
  4. package/components/src/Page.ts +1 -1
  5. package/package.json +2 -2
  6. package/refresh/.turbo/turbo-build.log +3 -3
  7. package/refresh/dist/index.js +16 -4
  8. package/refresh/package.json +1 -1
  9. package/runtime/lib/alog/render.js +8 -1
  10. package/runtime/lib/alog/render.js.map +1 -1
  11. package/runtime/lib/backgroundSnapshot.js +2 -2
  12. package/runtime/lib/backgroundSnapshot.js.map +1 -1
  13. package/runtime/lib/compat/initData.js +3 -2
  14. package/runtime/lib/compat/initData.js.map +1 -1
  15. package/runtime/lib/hydrate.js +18 -11
  16. package/runtime/lib/hydrate.js.map +1 -1
  17. package/runtime/lib/lifecycle/render.js +32 -31
  18. package/runtime/lib/lifecycle/render.js.map +1 -1
  19. package/runtime/lib/lynx/env.js +2 -1
  20. package/runtime/lib/lynx/env.js.map +1 -1
  21. package/runtime/lib/lynx/tt.js +1 -1
  22. package/runtime/lib/lynx/tt.js.map +1 -1
  23. package/runtime/lib/renderToOpcodes/index.js +1 -1
  24. package/runtime/lib/renderToOpcodes/index.js.map +1 -1
  25. package/runtime/lib/snapshot.js +1 -1
  26. package/runtime/lib/snapshot.js.map +1 -1
  27. package/testing-library/dist/env/vitest.js +27 -12
  28. package/testing-library/dist/index.d.ts +9 -10
  29. package/testing-library/dist/vitest.config.js +2 -1
  30. package/testing-library/types/entry.d.ts +4 -5
  31. package/transform/dist/wasm.cjs +23 -23
  32. package/worklet-runtime/dist/dev.js +93 -19
  33. package/worklet-runtime/dist/main.js +1 -1
  34. package/worklet-runtime/lib/api/animation/animation.d.ts +17 -0
  35. package/worklet-runtime/lib/api/animation/animation.js +39 -0
  36. package/worklet-runtime/lib/api/animation/animation.js.map +1 -0
  37. package/worklet-runtime/lib/api/animation/effect.d.ts +7 -0
  38. package/worklet-runtime/lib/api/animation/effect.js +11 -0
  39. package/worklet-runtime/lib/api/animation/effect.js.map +1 -0
  40. package/worklet-runtime/lib/api/element.d.ts +3 -1
  41. package/worklet-runtime/lib/api/element.js +14 -4
  42. package/worklet-runtime/lib/api/element.js.map +1 -1
  43. package/worklet-runtime/lib/bindings/bindings.d.ts +1 -1
  44. package/worklet-runtime/lib/bindings/bindings.js +9 -1
  45. package/worklet-runtime/lib/bindings/bindings.js.map +1 -1
  46. package/worklet-runtime/lib/eomImpl.d.ts +4 -0
  47. package/worklet-runtime/lib/eomImpl.js +10 -0
  48. package/worklet-runtime/lib/eomImpl.js.map +1 -0
  49. package/worklet-runtime/lib/global.d.ts +2 -0
  50. package/worklet-runtime/lib/workletRuntime.js +2 -0
  51. package/worklet-runtime/lib/workletRuntime.js.map +1 -1
@@ -1,8 +1,14 @@
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 { Animation } from './animation/animation.js';
5
+ import { KeyframeEffect } from './animation/effect.js';
6
+ let willFlush = false;
7
+ let shouldFlush = true;
8
+ export function setShouldFlush(value) {
9
+ shouldFlush = value;
10
+ }
4
11
  export class Element {
5
- static willFlush = false;
6
12
  // @ts-expect-error set in constructor
7
13
  element;
8
14
  constructor(element) {
@@ -44,6 +50,10 @@ export class Element {
44
50
  return new Element(element);
45
51
  });
46
52
  }
53
+ animate(keyframes, options) {
54
+ const normalizedOptions = typeof options === 'number' ? { duration: options } : options ?? {};
55
+ return new Animation(new KeyframeEffect(this, keyframes, normalizedOptions));
56
+ }
47
57
  invoke(methodName, params) {
48
58
  return new Promise((resolve, reject) => {
49
59
  __InvokeUIMethod(this.element, methodName, params ?? {}, (res) => {
@@ -58,12 +68,12 @@ export class Element {
58
68
  });
59
69
  }
60
70
  flushElementTree() {
61
- if (Element.willFlush) {
71
+ if (willFlush || !shouldFlush) {
62
72
  return;
63
73
  }
64
- Element.willFlush = true;
74
+ willFlush = true;
65
75
  void Promise.resolve().then(() => {
66
- Element.willFlush = false;
76
+ willFlush = false;
67
77
  __FlushElementTree();
68
78
  });
69
79
  }
@@ -1 +1 @@
1
- {"version":3,"file":"element.js","sourceRoot":"","sources":["../../src/api/element.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"element.js","sourceRoot":"","sources":["../../src/api/element.ts"],"names":[],"mappings":"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"}
@@ -11,4 +11,4 @@ declare function runWorkletCtx(worklet: Worklet, params: ClosureValueType[]): un
11
11
  * @param patch - An array containing the index and new value of the worklet value.
12
12
  */
13
13
  declare function updateWorkletRefInitValueChanges(patch?: [number, unknown][]): void;
14
- export { runWorkletCtx, updateWorkletRef, updateWorkletRefInitValueChanges, registerWorklet, delayRunOnBackground };
14
+ export { runWorkletCtx, updateWorkletRef, updateWorkletRefInitValueChanges, registerWorklet, delayRunOnBackground, setEomShouldFlushElementTree, };
@@ -45,5 +45,13 @@ function registerWorklet(type, id, worklet) {
45
45
  function delayRunOnBackground(fnObj, fn) {
46
46
  globalThis.lynxWorkletImpl?._runOnBackgroundDelayImpl.delayRunOnBackground(fnObj, fn);
47
47
  }
48
- export { runWorkletCtx, updateWorkletRef, updateWorkletRefInitValueChanges, registerWorklet, delayRunOnBackground };
48
+ /**
49
+ * Set whether EOM operations should flush the element tree.
50
+ *
51
+ * @internal
52
+ */
53
+ function setEomShouldFlushElementTree(value) {
54
+ globalThis.lynxWorkletImpl?._eomImpl.setShouldFlush(value);
55
+ }
56
+ export { runWorkletCtx, updateWorkletRef, updateWorkletRefInitValueChanges, registerWorklet, delayRunOnBackground, setEomShouldFlushElementTree, };
49
57
  //# sourceMappingURL=bindings.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"bindings.js","sourceRoot":"","sources":["../../src/bindings/bindings.ts"],"names":[],"mappings":"AAAA,wDAAwD;AACxD,yEAAyE;AACzE,0DAA0D;AAK1D;;;;GAIG;AACH,SAAS,aAAa,CAAC,OAAgB,EAAE,MAA0B;IACjE,OAAO,UAAU,CAAC,UAAU,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;AAClD,CAAC;AAED;;;;;;GAMG;AACH,SAAS,gBAAgB,CAAC,UAAmC,EAAE,OAA2B;IACxF,UAAU,CAAC,eAAe,EAAE,QAAQ,CAAC,gBAAgB,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;AAC7E,CAAC;AAED;;;;GAIG;AACH,SAAS,gCAAgC,CAAC,KAA2B;IACnE,IAAI,KAAK,EAAE,CAAC;QACV,UAAU,CAAC,eAAe,EAAE,QAAQ,CAAC,gCAAgC,CAAC,KAAK,CAAC,CAAC;IAC/E,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,SAAS,eAAe,CAAC,IAAY,EAAE,EAAU,EAAE,OAAwC;IACzF,UAAU,CAAC,eAAe,CAAC,IAAI,EAAE,EAAE,EAAE,OAAO,CAAC,CAAC;AAChD,CAAC;AAED;;;;GAIG;AACH,SAAS,oBAAoB,CAAC,KAAiB,EAAE,EAA0C;IACzF,UAAU,CAAC,eAAe,EAAE,yBAAyB,CAAC,oBAAoB,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;AACxF,CAAC;AAED,OAAO,EAAE,aAAa,EAAE,gBAAgB,EAAE,gCAAgC,EAAE,eAAe,EAAE,oBAAoB,EAAE,CAAC"}
1
+ {"version":3,"file":"bindings.js","sourceRoot":"","sources":["../../src/bindings/bindings.ts"],"names":[],"mappings":"AAAA,wDAAwD;AACxD,yEAAyE;AACzE,0DAA0D;AAK1D;;;;GAIG;AACH,SAAS,aAAa,CAAC,OAAgB,EAAE,MAA0B;IACjE,OAAO,UAAU,CAAC,UAAU,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;AAClD,CAAC;AAED;;;;;;GAMG;AACH,SAAS,gBAAgB,CAAC,UAAmC,EAAE,OAA2B;IACxF,UAAU,CAAC,eAAe,EAAE,QAAQ,CAAC,gBAAgB,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;AAC7E,CAAC;AAED;;;;GAIG;AACH,SAAS,gCAAgC,CAAC,KAA2B;IACnE,IAAI,KAAK,EAAE,CAAC;QACV,UAAU,CAAC,eAAe,EAAE,QAAQ,CAAC,gCAAgC,CAAC,KAAK,CAAC,CAAC;IAC/E,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,SAAS,eAAe,CAAC,IAAY,EAAE,EAAU,EAAE,OAAwC;IACzF,UAAU,CAAC,eAAe,CAAC,IAAI,EAAE,EAAE,EAAE,OAAO,CAAC,CAAC;AAChD,CAAC;AAED;;;;GAIG;AACH,SAAS,oBAAoB,CAAC,KAAiB,EAAE,EAA0C;IACzF,UAAU,CAAC,eAAe,EAAE,yBAAyB,CAAC,oBAAoB,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;AACxF,CAAC;AAED;;;;GAIG;AACH,SAAS,4BAA4B,CAAC,KAAc;IAClD,UAAU,CAAC,eAAe,EAAE,QAAQ,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;AAC7D,CAAC;AAED,OAAO,EACL,aAAa,EACb,gBAAgB,EAChB,gCAAgC,EAChC,eAAe,EACf,oBAAoB,EACpB,4BAA4B,GAC7B,CAAC"}
@@ -0,0 +1,4 @@
1
+ export interface EomImpl {
2
+ setShouldFlush(value: boolean): void;
3
+ }
4
+ export declare function initEomImpl(): EomImpl;
@@ -0,0 +1,10 @@
1
+ // Copyright 2025 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
+ import { setShouldFlush } from './api/element.js';
5
+ export function initEomImpl() {
6
+ return {
7
+ setShouldFlush,
8
+ };
9
+ }
10
+ //# sourceMappingURL=eomImpl.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"eomImpl.js","sourceRoot":"","sources":["../src/eomImpl.ts"],"names":[],"mappings":"AAAA,wDAAwD;AACxD,yEAAyE;AACzE,0DAA0D;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAMlD,MAAM,UAAU,WAAW;IACzB,OAAO;QACL,cAAc;KACf,CAAC;AACJ,CAAC"}
@@ -1,6 +1,7 @@
1
1
  import type { ClosureValueType, Worklet } from './bindings/types.js';
2
2
  import type { RunOnBackgroundDelayImpl } from './delayRunOnBackground.js';
3
3
  import type { EventDelayImpl } from './delayWorkletEvent.js';
4
+ import type { EomImpl } from './eomImpl.js';
4
5
  import type { JsFunctionLifecycleManager } from './jsFunctionLifecycle.js';
5
6
  import type { RefImpl } from './workletRef.js';
6
7
  declare global {
@@ -11,6 +12,7 @@ declare global {
11
12
  _refImpl: RefImpl;
12
13
  _runOnBackgroundDelayImpl: RunOnBackgroundDelayImpl;
13
14
  _hydrateCtx: (worklet: Worklet, firstScreenWorklet: Worklet) => void;
15
+ _eomImpl: EomImpl;
14
16
  };
15
17
  function runWorklet(ctx: Worklet, params: ClosureValueType[]): unknown;
16
18
  function registerWorklet(type: string, id: string, worklet: (...args: unknown[]) => unknown): void;
@@ -4,6 +4,7 @@
4
4
  import { Element } from './api/element.js';
5
5
  import { initRunOnBackgroundDelay } from './delayRunOnBackground.js';
6
6
  import { delayExecUntilJsReady, initEventDelay } from './delayWorkletEvent.js';
7
+ import { initEomImpl } from './eomImpl.js';
7
8
  import { hydrateCtx } from './hydrate.js';
8
9
  import { JsFunctionLifecycleManager, isRunOnBackgroundEnabled } from './jsFunctionLifecycle.js';
9
10
  import { profile } from './utils/profile.js';
@@ -15,6 +16,7 @@ function initWorklet() {
15
16
  _runOnBackgroundDelayImpl: initRunOnBackgroundDelay(),
16
17
  _hydrateCtx: hydrateCtx,
17
18
  _eventDelayImpl: initEventDelay(),
19
+ _eomImpl: initEomImpl(),
18
20
  };
19
21
  if (isRunOnBackgroundEnabled()) {
20
22
  globalThis.lynxWorkletImpl._jsFunctionLifecycleManager = new JsFunctionLifecycleManager();
@@ -1 +1 @@
1
- {"version":3,"file":"workletRuntime.js","sourceRoot":"","sources":["../src/workletRuntime.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"workletRuntime.js","sourceRoot":"","sources":["../src/workletRuntime.ts"],"names":[],"mappings":"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"}