react-native-reanimated 4.2.1 → 4.2.3

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 (53) hide show
  1. package/Common/cpp/reanimated/AnimatedSensor/AnimatedSensorModule.cpp +0 -4
  2. package/Common/cpp/reanimated/AnimatedSensor/AnimatedSensorModule.h +0 -1
  3. package/Common/cpp/reanimated/Fabric/updates/AnimatedPropsRegistry.cpp +3 -1
  4. package/Common/cpp/reanimated/Fabric/updates/UpdatesRegistry.cpp +12 -0
  5. package/Common/cpp/reanimated/Fabric/updates/UpdatesRegistry.h +1 -0
  6. package/Common/cpp/reanimated/NativeModules/ReanimatedModuleProxy.cpp +463 -416
  7. package/Common/cpp/reanimated/NativeModules/ReanimatedModuleProxy.h +3 -1
  8. package/android/src/main/cpp/reanimated/android/NativeProxy.cpp +7 -2
  9. package/android/src/main/cpp/reanimated/android/NativeProxy.h +2 -1
  10. package/android/src/main/java/com/swmansion/reanimated/DrawPassDetector.java +82 -0
  11. package/android/src/main/java/com/swmansion/reanimated/NativeProxy.java +4 -2
  12. package/android/src/main/java/com/swmansion/reanimated/NodesManager.java +32 -4
  13. package/apple/reanimated/apple/native/NativeProxy.mm +1 -1
  14. package/compatibility.json +3 -3
  15. package/lib/module/common/style/processors/colors.js +1 -1
  16. package/lib/module/common/style/processors/colors.js.map +1 -1
  17. package/lib/module/createAnimatedComponent/AnimatedComponent.js +10 -6
  18. package/lib/module/createAnimatedComponent/AnimatedComponent.js.map +1 -1
  19. package/lib/module/hook/useComposedEventHandler.js +1 -1
  20. package/lib/module/hook/useComposedEventHandler.js.map +1 -1
  21. package/lib/module/hook/useHandler.js +3 -8
  22. package/lib/module/hook/useHandler.js.map +1 -1
  23. package/lib/module/hook/utils.js +27 -6
  24. package/lib/module/hook/utils.js.map +1 -1
  25. package/lib/module/jestUtils/common.js +18 -0
  26. package/lib/module/jestUtils/common.js.map +1 -0
  27. package/lib/module/{jestUtils.js → jestUtils/index.js} +6 -3
  28. package/lib/module/jestUtils/index.js.map +1 -0
  29. package/lib/module/{jestUtils.web.js → jestUtils/index.web.js} +2 -1
  30. package/lib/module/jestUtils/index.web.js.map +1 -0
  31. package/lib/module/platform-specific/jsVersion.js +1 -1
  32. package/lib/typescript/createAnimatedComponent/AnimatedComponent.d.ts.map +1 -1
  33. package/lib/typescript/hook/utils.d.ts +1 -1
  34. package/lib/typescript/hook/utils.d.ts.map +1 -1
  35. package/lib/typescript/jestUtils/common.d.ts +12 -0
  36. package/lib/typescript/jestUtils/common.d.ts.map +1 -0
  37. package/lib/typescript/{jestUtils.d.ts → jestUtils/index.d.ts} +4 -2
  38. package/lib/typescript/jestUtils/index.d.ts.map +1 -0
  39. package/lib/typescript/platform-specific/jsVersion.d.ts +1 -1
  40. package/package.json +21 -15
  41. package/scripts/worklets-version.json +1 -4
  42. package/src/common/style/processors/colors.ts +1 -1
  43. package/src/createAnimatedComponent/AnimatedComponent.tsx +12 -10
  44. package/src/hook/useComposedEventHandler.ts +1 -1
  45. package/src/hook/useHandler.ts +4 -14
  46. package/src/hook/utils.ts +38 -8
  47. package/src/jestUtils/common.ts +24 -0
  48. package/src/{jestUtils.ts → jestUtils/index.ts} +8 -4
  49. package/src/{jestUtils.web.ts → jestUtils/index.web.ts} +2 -0
  50. package/src/platform-specific/jsVersion.ts +1 -1
  51. package/lib/module/jestUtils.js.map +0 -1
  52. package/lib/module/jestUtils.web.js.map +0 -1
  53. package/lib/typescript/jestUtils.d.ts.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"names":["withReanimatedTimer","advanceAnimationByTime","advanceAnimationByFrame","setUpTests","getAnimatedStyle","worklet"],"sourceRoot":"../../../src","sources":["jestUtils/index.web.ts"],"mappings":"AAAA,YAAY;;AACZ;AACA;AACA;AAEA,OAAO,SAASA,mBAAmBA,CAAA,EAAG;EACpC;AAAA;AAGF,OAAO,SAASC,sBAAsBA,CAAA,EAAG;EACvC;AAAA;AAGF,OAAO,SAASC,uBAAuBA,CAAA,EAAG;EACxC;AAAA;AAGF,OAAO,SAASC,UAAUA,CAAA,EAAG;EAC3B;AAAA;AAGF,OAAO,SAASC,gBAAgBA,CAAA,EAAG;EACjC;AAAA;AAGF,SAASC,OAAO,QAAQ,UAAU","ignoreList":[]}
@@ -5,5 +5,5 @@
5
5
  * version used to build the native part of the library in runtime. Remember to
6
6
  * keep this in sync with the version declared in `package.json`
7
7
  */
8
- export const jsVersion = '4.2.1';
8
+ export const jsVersion = '4.2.3';
9
9
  //# sourceMappingURL=jsVersion.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"AnimatedComponent.d.ts","sourceRoot":"","sources":["../../../src/createAnimatedComponent/AnimatedComponent.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AnimatedComponent.d.ts","sourceRoot":"","sources":["../../../src/createAnimatedComponent/AnimatedComponent.tsx"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import type { WorkletFunction } from 'react-native-worklets';
2
2
  import type { DependencyList } from './commonTypes';
3
3
  export declare function buildWorkletsHash<Args extends unknown[], ReturnValue>(worklets: Record<string, WorkletFunction<Args, ReturnValue>> | WorkletFunction<Args, ReturnValue>[]): string;
4
- export declare function buildDependencies(dependencies: DependencyList, handlers: Record<string, WorkletFunction>): unknown[];
4
+ export declare function buildDependencies(dependencies: DependencyList | undefined, handlers: Record<string, WorkletFunction>): unknown[] | undefined;
5
5
  export declare function areDependenciesEqual(nextDependencies: DependencyList, prevDependencies: DependencyList): boolean;
6
6
  export declare function isAnimated(prop: unknown): boolean;
7
7
  export declare function shallowEqual<T extends Record<string | number | symbol, unknown>>(a: T, b: T): boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/hook/utils.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAI7D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAGpD,wBAAgB,iBAAiB,CAAC,IAAI,SAAS,OAAO,EAAE,EAAE,WAAW,EACnE,QAAQ,EACJ,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC,GAClD,eAAe,CAAC,IAAI,EAAE,WAAW,CAAC,EAAE,UAQzC;AAGD,wBAAgB,iBAAiB,CAC/B,YAAY,EAAE,cAAc,EAC5B,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,aAW1C;AAwBD,wBAAgB,oBAAoB,CAClC,gBAAgB,EAAE,cAAc,EAChC,gBAAgB,EAAE,cAAc,WAoCjC;AAED,wBAAgB,UAAU,CAAC,IAAI,EAAE,OAAO,WAYvC;AAKD,wBAAgB,YAAY,CAC1B,CAAC,SAAS,MAAM,CAAC,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,OAAO,CAAC,EACnD,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,WAaX;AAED,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,QAWhE"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/hook/utils.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAI7D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAGpD,wBAAgB,iBAAiB,CAAC,IAAI,SAAS,OAAO,EAAE,EAAE,WAAW,EACnE,QAAQ,EACJ,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC,GAClD,eAAe,CAAC,IAAI,EAAE,WAAW,CAAC,EAAE,UAQzC;AAGD,wBAAgB,iBAAiB,CAC/B,YAAY,EAAE,cAAc,GAAG,SAAS,EACxC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,yBAyC1C;AAwBD,wBAAgB,oBAAoB,CAClC,gBAAgB,EAAE,cAAc,EAChC,gBAAgB,EAAE,cAAc,WAoCjC;AAED,wBAAgB,UAAU,CAAC,IAAI,EAAE,OAAO,WAYvC;AAKD,wBAAgB,YAAY,CAC1B,CAAC,SAAS,MAAM,CAAC,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,OAAO,CAAC,EACnD,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,WAaX;AAED,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,QAWhE"}
@@ -0,0 +1,12 @@
1
+ import type { WorkletFunction } from 'react-native-worklets';
2
+ /**
3
+ * Converts any callback function to a mock worklet function for testing
4
+ * purposes. This function simulates a worklet by adding the required internal
5
+ * properties.
6
+ *
7
+ * @param callback - Optional callback function to wrap as a worklet. If not
8
+ * provided, returns an empty worklet.
9
+ * @returns A mock worklet function with the required worklet properties.
10
+ */
11
+ export declare const worklet: <Args extends unknown[] = [], ReturnValue = void>(callback?: (...args: Args) => ReturnValue) => WorkletFunction<Args, ReturnValue>;
12
+ //# sourceMappingURL=common.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../../../src/jestUtils/common.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAE7D;;;;;;;;GAQG;AACH,eAAO,MAAM,OAAO,GAAI,IAAI,SAAS,OAAO,EAAE,GAAG,EAAE,EAAE,WAAW,GAAG,IAAI,EACrE,WAAW,CAAC,GAAG,IAAI,EAAE,IAAI,KAAK,WAAW,KACxC,eAAe,CAAC,IAAI,EAAE,WAAW,CAQnC,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import type { ReactTestInstance } from 'react-test-renderer';
2
- import type { DefaultStyle } from './hook/commonTypes';
2
+ import type { DefaultStyle } from '../hook/commonTypes';
3
3
  declare global {
4
4
  namespace jest {
5
5
  interface Matchers<R> {
@@ -15,4 +15,6 @@ export declare const advanceAnimationByTime: (time?: number) => void;
15
15
  export declare const advanceAnimationByFrame: (count: number) => void;
16
16
  export declare const setUpTests: (userFramerateConfig?: {}) => void;
17
17
  export declare const getAnimatedStyle: (component: ReactTestInstance) => DefaultStyle;
18
- //# sourceMappingURL=jestUtils.d.ts.map
18
+ /** @knipIgnore */
19
+ export { worklet } from './common';
20
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/jestUtils/index.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAS7D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAExD,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,IAAI,CAAC;QACb,UAAU,QAAQ,CAAC,CAAC;YAClB,mBAAmB,CACjB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC1D,MAAM,CAAC,EAAE;gBACP,mBAAmB,CAAC,EAAE,OAAO,CAAC;aAC/B,GACA,CAAC,CAAC;YACL,mBAAmB,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC;SACxD;KACF;CACF;AAiOD,eAAO,MAAM,mBAAmB,GAAI,eAAe,MAAM,IAAI,SAO5D,CAAC;AAEF,eAAO,MAAM,sBAAsB,GAAI,aAAgB,SAMtD,CAAC;AAEF,eAAO,MAAM,uBAAuB,GAAI,OAAO,MAAM,SAMpD,CAAC;AAcF,eAAO,MAAM,UAAU,GAAI,wBAAwB,SAiDlD,CAAC;AAWF,eAAO,MAAM,gBAAgB,GAAI,WAAW,iBAAiB,iBAM5D,CAAC;AAEF,kBAAkB;AAClB,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC"}
@@ -3,5 +3,5 @@
3
3
  * version used to build the native part of the library in runtime. Remember to
4
4
  * keep this in sync with the version declared in `package.json`
5
5
  */
6
- export declare const jsVersion = "4.2.1";
6
+ export declare const jsVersion = "4.2.3";
7
7
  //# sourceMappingURL=jsVersion.d.ts.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-native-reanimated",
3
- "version": "4.2.1",
3
+ "version": "4.2.3",
4
4
  "description": "More powerful alternative to Animated library for React Native.",
5
5
  "keywords": [
6
6
  "react-native",
@@ -37,7 +37,8 @@
37
37
  "build": "yarn workspace react-native-worklets build && bob build",
38
38
  "circular-dependency-check": "yarn madge --extensions js,jsx --circular lib",
39
39
  "prepack": "cp ../../README.md ./README.md",
40
- "postpack": "rm ./README.md"
40
+ "postpack": "rm ./README.md",
41
+ "validate-peers": "node ../../scripts/validate-compatibility-peer-dependencies.js"
41
42
  },
42
43
  "main": "lib/module/index",
43
44
  "module": "lib/module/index",
@@ -92,22 +93,25 @@
92
93
  },
93
94
  "homepage": "https://docs.swmansion.com/react-native-reanimated",
94
95
  "dependencies": {
95
- "react-native-is-edge-to-edge": "1.2.1",
96
- "semver": "7.7.3"
96
+ "react-native-is-edge-to-edge": "^1.2.1",
97
+ "semver": "^7.7.3"
97
98
  },
98
99
  "peerDependencies": {
99
100
  "react": "*",
100
- "react-native": "*",
101
- "react-native-worklets": ">=0.7.0"
101
+ "react-native": "0.80 - 0.84",
102
+ "react-native-worklets": "0.7 - 0.8"
102
103
  },
103
104
  "devDependencies": {
104
105
  "@babel/core": "7.28.4",
105
106
  "@babel/preset-env": "7.28.3",
106
- "@react-native/babel-preset": "0.82.0",
107
- "@react-native/eslint-config": "0.82.0",
108
- "@react-native/metro-config": "0.82.0",
109
- "@react-native/typescript-config": "0.82.0",
107
+ "@react-native/babel-preset": "0.84.0",
108
+ "@react-native/eslint-config": "0.84.0",
109
+ "@react-native/metro-config": "0.84.0",
110
+ "@react-native/typescript-config": "0.84.0",
111
+ "@shopify/flash-list": "2.1.0",
112
+ "@testing-library/dom": "10.4.0",
110
113
  "@testing-library/jest-native": "5.4.3",
114
+ "@testing-library/react": "16.1.0",
111
115
  "@testing-library/react-hooks": "8.0.1",
112
116
  "@testing-library/react-native": "13.3.3",
113
117
  "@types/convert-source-map": "2.0.3",
@@ -119,16 +123,18 @@
119
123
  "clang-format-node": "1.3.5",
120
124
  "eslint": "9.37.0",
121
125
  "jest": "30.2.0",
126
+ "jest-expo": "52.0.5",
122
127
  "knip": "5.61.3",
123
128
  "madge": "8.0.0",
124
129
  "prettier": "3.6.2",
125
- "react": "19.1.1",
126
- "react-dom": "19.1.1",
127
- "react-native": "0.82.0",
130
+ "react": "19.2.3",
131
+ "react-dom": "19.2.3",
132
+ "react-native": "0.84.0",
128
133
  "react-native-builder-bob": "0.40.13",
134
+ "react-native-svg": "15.14.0",
129
135
  "react-native-web": "0.21.1",
130
- "react-native-worklets": "workspace:*",
131
- "react-test-renderer": "19.1.1",
136
+ "react-native-worklets": "0.8.0",
137
+ "react-test-renderer": "19.2.3",
132
138
  "typescript": "5.8.3"
133
139
  },
134
140
  "react-native-builder-bob": {
@@ -1,4 +1 @@
1
- {
2
- "min": "0.7.0",
3
- "max": "0.7"
4
- }
1
+ { "min": "0.7.0", "max": "0.8" }
@@ -89,7 +89,7 @@ export function processColorNumber(value: unknown): number | null {
89
89
  }
90
90
 
91
91
  function unprocessColorNumber(value: number): string {
92
- const a = value >>> 24;
92
+ const a = (value >>> 24) / 255;
93
93
  const r = (value << 8) >>> 24;
94
94
  const g = (value << 16) >>> 24;
95
95
  const b = (value << 24) >>> 24;
@@ -506,16 +506,18 @@ export default class AnimatedComponent
506
506
  }
507
507
 
508
508
  const skipEntering = this.context?.current;
509
- const nativeID = skipEntering ? undefined : `${this.reanimatedID}`;
510
-
511
- const jestProps = IS_JEST
512
- ? {
513
- jestInlineStyle:
514
- this.props.style && filterOutAnimatedStyles(this.props.style),
515
- jestAnimatedStyle: this.jestAnimatedStyle,
516
- jestAnimatedProps: this.jestAnimatedProps,
517
- }
518
- : {};
509
+ let nativeID, jestProps;
510
+
511
+ if (IS_JEST) {
512
+ jestProps = {
513
+ jestInlineStyle:
514
+ this.props.style && filterOutAnimatedStyles(this.props.style),
515
+ jestAnimatedStyle: this.jestAnimatedStyle,
516
+ jestAnimatedProps: this.jestAnimatedProps,
517
+ };
518
+ } else if (!skipEntering && !IS_WEB) {
519
+ nativeID = `${this.reanimatedID}`;
520
+ }
519
521
 
520
522
  if (FORCE_REACT_RENDER_FOR_SETTLED_ANIMATIONS) {
521
523
  const flatStyles = StyleSheet.flatten(filteredProps.style as object);
@@ -72,7 +72,7 @@ export function useComposedEventHandler<
72
72
  }
73
73
  });
74
74
 
75
- const { doDependenciesDiffer } = useHandler(workletsRecord);
75
+ const { doDependenciesDiffer } = useHandler(workletsRecord, handlers);
76
76
 
77
77
  return useEvent<Event, Context>(
78
78
  (event) => {
@@ -1,9 +1,9 @@
1
1
  'use strict';
2
2
  import { useEffect, useRef } from 'react';
3
3
  import type { WorkletFunction } from 'react-native-worklets';
4
- import { isWorkletFunction, makeShareable } from 'react-native-worklets';
4
+ import { makeShareable } from 'react-native-worklets';
5
5
 
6
- import { IS_JEST, IS_WEB, ReanimatedError } from '../common';
6
+ import { IS_JEST, IS_WEB } from '../common';
7
7
  import type { DependencyList, ReanimatedEvent } from './commonTypes';
8
8
  import { areDependenciesEqual, buildDependencies } from './utils';
9
9
 
@@ -83,23 +83,13 @@ export function useHandler<
83
83
 
84
84
  const { context, savedDependencies } = initRef.current;
85
85
 
86
- for (const handlerName in handlers) {
87
- if (!isWorkletFunction(handlers[handlerName])) {
88
- throw new ReanimatedError(
89
- 'Passed a function that is not a worklet. Please provide a worklet function.'
90
- );
91
- }
92
- }
93
-
94
86
  dependencies = buildDependencies(
95
87
  dependencies,
96
88
  handlers as Record<string, WorkletFunction>
97
89
  );
98
90
 
99
- const doDependenciesDiffer = !areDependenciesEqual(
100
- dependencies,
101
- savedDependencies
102
- );
91
+ const doDependenciesDiffer =
92
+ !areDependenciesEqual(dependencies, savedDependencies) || !dependencies;
103
93
  initRef.current.savedDependencies = dependencies;
104
94
  const useWeb = IS_WEB || IS_JEST;
105
95
 
package/src/hook/utils.ts CHANGED
@@ -2,7 +2,7 @@
2
2
  import type { WorkletFunction } from 'react-native-worklets';
3
3
  import { isWorkletFunction } from 'react-native-worklets';
4
4
 
5
- import { ReanimatedError } from '../common';
5
+ import { IS_WEB, logger, ReanimatedError } from '../common';
6
6
  import type { DependencyList } from './commonTypes';
7
7
 
8
8
  // Builds one big hash from multiple worklets' hashes.
@@ -21,18 +21,48 @@ export function buildWorkletsHash<Args extends unknown[], ReturnValue>(
21
21
 
22
22
  // Builds dependencies array for useEvent handlers.
23
23
  export function buildDependencies(
24
- dependencies: DependencyList,
24
+ dependencies: DependencyList | undefined,
25
25
  handlers: Record<string, WorkletFunction>
26
26
  ) {
27
- const handlersList = Object.values(handlers).filter(
28
- (handler) => handler !== undefined
27
+ const result = dependencies ?? [];
28
+
29
+ const nonWorkletHandlerNames = Object.entries(handlers).reduce<string[]>(
30
+ (acc, [name, handler]) => {
31
+ if (!isWorkletFunction(handler)) {
32
+ acc.push(name);
33
+ }
34
+ return acc;
35
+ },
36
+ []
29
37
  );
30
- if (!dependencies) {
31
- return handlersList;
38
+
39
+ if (nonWorkletHandlerNames.length === 0) {
40
+ result.push(buildWorkletsHash(handlers));
41
+ return result;
42
+ }
43
+
44
+ if (!__DEV__) {
45
+ return result;
46
+ }
47
+
48
+ const handlerNames = nonWorkletHandlerNames.join(', ');
49
+
50
+ // On native, only worklets are allowed
51
+ if (!IS_WEB) {
52
+ throw new ReanimatedError(
53
+ `Passed handlers that are not worklets. Only worklet functions are allowed. Handlers "${handlerNames}" are not worklets.`
54
+ );
55
+ }
56
+
57
+ // On web, non-worklets are allowed only when dependencies are provided
58
+ if (__DEV__ && !dependencies) {
59
+ logger.warn(
60
+ `Non-worklet handlers ("${handlerNames}") were passed without a dependency array. This will cause the hook to update on every render. Please provide a dependency array or use only worklet functions instead.`
61
+ );
62
+ return undefined;
32
63
  }
33
64
 
34
- dependencies.push(buildWorkletsHash(handlersList));
35
- return dependencies;
65
+ return result;
36
66
  }
37
67
 
38
68
  function areWorkletsEqual(
@@ -0,0 +1,24 @@
1
+ 'use strict';
2
+
3
+ import type { WorkletFunction } from 'react-native-worklets';
4
+
5
+ /**
6
+ * Converts any callback function to a mock worklet function for testing
7
+ * purposes. This function simulates a worklet by adding the required internal
8
+ * properties.
9
+ *
10
+ * @param callback - Optional callback function to wrap as a worklet. If not
11
+ * provided, returns an empty worklet.
12
+ * @returns A mock worklet function with the required worklet properties.
13
+ */
14
+ export const worklet = <Args extends unknown[] = [], ReturnValue = void>(
15
+ callback?: (...args: Args) => ReturnValue
16
+ ): WorkletFunction<Args, ReturnValue> => {
17
+ const fn = (callback ?? (() => undefined)) as WorkletFunction<
18
+ Args,
19
+ ReturnValue
20
+ >;
21
+ fn.__workletHash = Math.random();
22
+ fn.__closure = {};
23
+ return fn;
24
+ };
@@ -1,16 +1,17 @@
1
1
  /* eslint-disable @typescript-eslint/no-namespace */
2
2
  'use strict';
3
3
 
4
+ import type React from 'react';
4
5
  import type { ReactTestInstance } from 'react-test-renderer';
5
6
 
6
- import { IS_JEST, logger, ReanimatedError } from './common';
7
+ import { IS_JEST, logger, ReanimatedError } from '../common';
7
8
  import type {
8
9
  AnimatedComponentProps,
9
10
  AnimatedProps,
10
11
  IAnimatedComponentInternal,
11
12
  InitialComponentProps,
12
- } from './createAnimatedComponent/commonTypes';
13
- import type { DefaultStyle } from './hook/commonTypes';
13
+ } from '../createAnimatedComponent/commonTypes';
14
+ import type { DefaultStyle } from '../hook/commonTypes';
14
15
 
15
16
  declare global {
16
17
  namespace jest {
@@ -79,7 +80,7 @@ const getCurrentStyle = (component: TestComponent): DefaultStyle => {
79
80
 
80
81
  if (Array.isArray(jestInlineStyles)) {
81
82
  for (const obj of jestInlineStyles) {
82
- if ('jestAnimatedValues' in obj) {
83
+ if (!obj || 'jestAnimatedValues' in obj) {
83
84
  continue;
84
85
  }
85
86
 
@@ -353,3 +354,6 @@ export const getAnimatedStyle = (component: ReactTestInstance) => {
353
354
  component as unknown as TestComponent
354
355
  );
355
356
  };
357
+
358
+ /** @knipIgnore */
359
+ export { worklet } from './common';
@@ -22,3 +22,5 @@ export function setUpTests() {
22
22
  export function getAnimatedStyle() {
23
23
  // NOOP
24
24
  }
25
+
26
+ export { worklet } from './common';
@@ -4,4 +4,4 @@
4
4
  * version used to build the native part of the library in runtime. Remember to
5
5
  * keep this in sync with the version declared in `package.json`
6
6
  */
7
- export const jsVersion = '4.2.1';
7
+ export const jsVersion = '4.2.3';
@@ -1 +0,0 @@
1
- {"version":3,"names":["IS_JEST","logger","ReanimatedError","defaultFramerateConfig","fps","isEmpty","obj","Object","keys","length","getStylesFromObject","undefined","fromEntries","entries","map","property","value","_isReanimatedSharedValue","getCurrentProps","component","propsObject","props","jestAnimatedProps","getCurrentStyle","styleObject","style","currentStyle","Array","isArray","forEach","jestInlineStyles","jestInlineStyle","jestAnimatedStyleValue","jestAnimatedStyle","inlineStyles","checkEqual","current","expected","i","findStyleDiff","shouldMatchAllProps","diffs","isEqual","push","expect","compareAndFormatDifferences","currentValues","expectedValues","message","pass","currentValuesStr","JSON","stringify","expectedValuesStr","differences","diff","join","compareProps","expectedProps","currentProps","compareStyle","expectedStyle","config","frameTime","Math","round","beforeTest","jest","useFakeTimers","afterTest","runOnlyPendingTimers","useRealTimers","withReanimatedTimer","animationTest","warn","advanceAnimationByTime","time","advanceTimersByTime","advanceAnimationByFrame","count","requireFunction","require","setUpTests","userFramerateConfig","global","expectModule","jestGlobals","extend","default","framerateConfig","toHaveAnimatedProps","toHaveAnimatedStyle","getAnimatedStyle"],"sourceRoot":"../../src","sources":["jestUtils.ts"],"mappings":"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","ignoreList":[]}
@@ -1 +0,0 @@
1
- {"version":3,"names":["withReanimatedTimer","advanceAnimationByTime","advanceAnimationByFrame","setUpTests","getAnimatedStyle"],"sourceRoot":"../../src","sources":["jestUtils.web.ts"],"mappings":"AAAA,YAAY;;AACZ;AACA;AACA;AAEA,OAAO,SAASA,mBAAmBA,CAAA,EAAG;EACpC;AAAA;AAGF,OAAO,SAASC,sBAAsBA,CAAA,EAAG;EACvC;AAAA;AAGF,OAAO,SAASC,uBAAuBA,CAAA,EAAG;EACxC;AAAA;AAGF,OAAO,SAASC,UAAUA,CAAA,EAAG;EAC3B;AAAA;AAGF,OAAO,SAASC,gBAAgBA,CAAA,EAAG;EACjC;AAAA","ignoreList":[]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"jestUtils.d.ts","sourceRoot":"","sources":["../../src/jestUtils.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAS7D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAEvD,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,IAAI,CAAC;QACb,UAAU,QAAQ,CAAC,CAAC;YAClB,mBAAmB,CACjB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC1D,MAAM,CAAC,EAAE;gBACP,mBAAmB,CAAC,EAAE,OAAO,CAAC;aAC/B,GACA,CAAC,CAAC;YACL,mBAAmB,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC;SACxD;KACF;CACF;AAiOD,eAAO,MAAM,mBAAmB,GAAI,eAAe,MAAM,IAAI,SAO5D,CAAC;AAEF,eAAO,MAAM,sBAAsB,GAAI,aAAgB,SAMtD,CAAC;AAEF,eAAO,MAAM,uBAAuB,GAAI,OAAO,MAAM,SAMpD,CAAC;AAcF,eAAO,MAAM,UAAU,GAAI,wBAAwB,SAiDlD,CAAC;AAWF,eAAO,MAAM,gBAAgB,GAAI,WAAW,iBAAiB,iBAM5D,CAAC"}