react-native-reanimated 3.13.0-rc.2 → 3.13.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.
- package/Common/cpp/LayoutAnimations/LayoutAnimationsManager.cpp +8 -2
- package/Common/cpp/LayoutAnimations/LayoutAnimationsManager.h +3 -1
- package/Common/cpp/LayoutAnimations/LayoutAnimationsProxy.cpp +58 -33
- package/Common/cpp/LayoutAnimations/LayoutAnimationsProxy.h +19 -9
- package/Common/cpp/LayoutAnimations/LayoutAnimationsUtils.cpp +11 -7
- package/Common/cpp/LayoutAnimations/LayoutAnimationsUtils.h +14 -6
- package/Common/cpp/NativeModules/NativeReanimatedModule.cpp +1 -1
- package/Common/cpp/NativeModules/NativeReanimatedModule.h +1 -1
- package/Common/cpp/ReanimatedRuntime/WorkletRuntime.cpp +1 -1
- package/Common/cpp/ReanimatedRuntime/WorkletRuntime.h +1 -1
- package/Common/cpp/ReanimatedRuntime/WorkletRuntimeDecorator.cpp +6 -6
- package/Common/cpp/SharedItems/Shareables.cpp +25 -8
- package/Common/cpp/SharedItems/Shareables.h +12 -7
- package/android/CMakeLists.txt +1 -1
- package/android/src/main/cpp/LayoutAnimations.cpp +14 -0
- package/android/src/main/cpp/LayoutAnimations.h +5 -0
- package/android/src/main/cpp/NativeProxy.cpp +10 -0
- package/android/src/main/java/com/swmansion/reanimated/layoutReanimation/AnimationsManager.java +10 -2
- package/android/src/main/java/com/swmansion/reanimated/layoutReanimation/LayoutAnimations.java +2 -0
- package/android/src/main/java/com/swmansion/reanimated/layoutReanimation/NativeMethodsHolder.java +2 -0
- package/android/src/main/java/com/swmansion/reanimated/layoutReanimation/ReanimatedNativeHierarchyManager.java +10 -0
- package/android/src/main/java/com/swmansion/reanimated/layoutReanimation/ScreensHelper.java +83 -0
- package/android/src/main/java/com/swmansion/reanimated/layoutReanimation/SharedTransitionManager.java +130 -31
- package/android/src/main/java/com/swmansion/reanimated/layoutReanimation/Snapshot.java +36 -0
- package/android/src/main/java/com/swmansion/reanimated/layoutReanimation/TabNavigatorObserver.java +128 -0
- package/android/src/paper/java/com/swmansion/reanimated/NativeProxy.java +8 -0
- package/android/src/reactNativeVersionPatch/RuntimeExecutor/73/com/swmansion/reanimated/NativeProxy.java +6 -0
- package/android/src/reactNativeVersionPatch/RuntimeExecutor/latest/com/swmansion/reanimated/NativeProxy.java +6 -0
- package/apple/LayoutReanimation/REAAnimationsManager.h +2 -0
- package/apple/LayoutReanimation/REAAnimationsManager.m +5 -0
- package/apple/LayoutReanimation/REAScreensHelper.h +6 -0
- package/apple/LayoutReanimation/REAScreensHelper.m +92 -4
- package/apple/LayoutReanimation/REASharedTransitionManager.h +1 -0
- package/apple/LayoutReanimation/REASharedTransitionManager.m +254 -55
- package/apple/native/NativeProxy.mm +12 -0
- package/lib/module/Colors.js +5 -2
- package/lib/module/Colors.js.map +1 -1
- package/lib/module/UpdateProps.js +8 -8
- package/lib/module/UpdateProps.js.map +1 -1
- package/lib/module/ViewDescriptorsSet.js +0 -27
- package/lib/module/ViewDescriptorsSet.js.map +1 -1
- package/lib/module/createAnimatedComponent/InlinePropManager.js +1 -7
- package/lib/module/createAnimatedComponent/InlinePropManager.js.map +1 -1
- package/lib/module/createAnimatedComponent/PropsFilter.js +1 -6
- package/lib/module/createAnimatedComponent/PropsFilter.js.map +1 -1
- package/lib/module/createAnimatedComponent/commonTypes.js.map +1 -1
- package/lib/module/createAnimatedComponent/createAnimatedComponent.js +1 -5
- package/lib/module/createAnimatedComponent/createAnimatedComponent.js.map +1 -1
- package/lib/module/hook/commonTypes.js.map +1 -1
- package/lib/module/hook/useAnimatedStyle.js +12 -15
- package/lib/module/hook/useAnimatedStyle.js.map +1 -1
- package/lib/module/hook/useFrameCallback.js +2 -2
- package/lib/module/hook/useFrameCallback.js.map +1 -1
- package/lib/module/hook/useWorkletCallback.js +1 -1
- package/lib/module/hook/useWorkletCallback.js.map +1 -1
- package/lib/module/js-reanimated/index.js +3 -28
- package/lib/module/js-reanimated/index.js.map +1 -1
- package/lib/module/js-reanimated/webUtils.js +9 -0
- package/lib/module/js-reanimated/webUtils.js.map +1 -0
- package/lib/module/js-reanimated/webUtils.web.js +25 -0
- package/lib/module/js-reanimated/webUtils.web.js.map +1 -0
- package/lib/module/layoutReanimation/defaultTransitions/CurvedTransition.js +1 -0
- package/lib/module/layoutReanimation/defaultTransitions/CurvedTransition.js.map +1 -1
- package/lib/module/layoutReanimation/defaultTransitions/EntryExitTransition.js +1 -0
- package/lib/module/layoutReanimation/defaultTransitions/EntryExitTransition.js.map +1 -1
- package/lib/module/layoutReanimation/defaultTransitions/FadingTransition.js +11 -10
- package/lib/module/layoutReanimation/defaultTransitions/FadingTransition.js.map +1 -1
- package/lib/module/layoutReanimation/defaultTransitions/JumpingTransition.js +1 -0
- package/lib/module/layoutReanimation/defaultTransitions/JumpingTransition.js.map +1 -1
- package/lib/module/layoutReanimation/defaultTransitions/LinearTransition.js +1 -0
- package/lib/module/layoutReanimation/defaultTransitions/LinearTransition.js.map +1 -1
- package/lib/module/layoutReanimation/defaultTransitions/SequencedTransition.js +1 -0
- package/lib/module/layoutReanimation/defaultTransitions/SequencedTransition.js.map +1 -1
- package/lib/module/layoutReanimation/web/Easing.web.js +14 -0
- package/lib/module/layoutReanimation/web/Easing.web.js.map +1 -0
- package/lib/module/layoutReanimation/web/animationParser.js +16 -1
- package/lib/module/layoutReanimation/web/animationParser.js.map +1 -1
- package/lib/module/layoutReanimation/web/animationsManager.js +25 -8
- package/lib/module/layoutReanimation/web/animationsManager.js.map +1 -1
- package/lib/module/layoutReanimation/web/componentStyle.js +12 -16
- package/lib/module/layoutReanimation/web/componentStyle.js.map +1 -1
- package/lib/module/layoutReanimation/web/componentUtils.js +53 -18
- package/lib/module/layoutReanimation/web/componentUtils.js.map +1 -1
- package/lib/module/layoutReanimation/web/config.js +1 -12
- package/lib/module/layoutReanimation/web/config.js.map +1 -1
- package/lib/module/layoutReanimation/web/createAnimation.js +21 -2
- package/lib/module/layoutReanimation/web/createAnimation.js.map +1 -1
- package/lib/module/layoutReanimation/web/domUtils.js +6 -5
- package/lib/module/layoutReanimation/web/domUtils.js.map +1 -1
- package/lib/module/layoutReanimation/web/transition/Jumping.web.js +43 -0
- package/lib/module/layoutReanimation/web/transition/Jumping.web.js.map +1 -0
- package/lib/module/platform-specific/RNRenderer.web.js +1 -1
- package/lib/module/platform-specific/RNRenderer.web.js.map +1 -1
- package/lib/module/platform-specific/jsVersion.js +1 -1
- package/lib/module/platform-specific/jsVersion.js.map +1 -1
- package/lib/module/platformFunctions/setNativeProps.web.js +1 -3
- package/lib/module/platformFunctions/setNativeProps.web.js.map +1 -1
- package/lib/typescript/UpdateProps.d.ts +2 -3
- package/lib/typescript/ViewDescriptorsSet.d.ts +0 -9
- package/lib/typescript/createAnimatedComponent/commonTypes.d.ts +1 -2
- package/lib/typescript/hook/commonTypes.d.ts +3 -6
- package/lib/typescript/hook/useWorkletCallback.d.ts +1 -1
- package/lib/typescript/js-reanimated/index.d.ts +2 -4
- package/lib/typescript/js-reanimated/webUtils.d.ts +3 -0
- package/lib/typescript/js-reanimated/webUtils.web.d.ts +3 -0
- package/lib/typescript/layoutReanimation/defaultTransitions/CurvedTransition.d.ts +1 -0
- package/lib/typescript/layoutReanimation/defaultTransitions/EntryExitTransition.d.ts +1 -0
- package/lib/typescript/layoutReanimation/defaultTransitions/FadingTransition.d.ts +1 -0
- package/lib/typescript/layoutReanimation/defaultTransitions/JumpingTransition.d.ts +1 -0
- package/lib/typescript/layoutReanimation/defaultTransitions/LinearTransition.d.ts +1 -0
- package/lib/typescript/layoutReanimation/defaultTransitions/SequencedTransition.d.ts +1 -0
- package/lib/typescript/layoutReanimation/web/Easing.web.d.ts +10 -0
- package/lib/typescript/layoutReanimation/web/animationParser.d.ts +1 -2
- package/lib/typescript/layoutReanimation/web/componentStyle.d.ts +1 -1
- package/lib/typescript/layoutReanimation/web/componentUtils.d.ts +4 -3
- package/lib/typescript/layoutReanimation/web/config.d.ts +5 -12
- package/lib/typescript/layoutReanimation/web/createAnimation.d.ts +2 -0
- package/lib/typescript/layoutReanimation/web/domUtils.d.ts +1 -1
- package/lib/typescript/layoutReanimation/web/transition/Jumping.web.d.ts +29 -0
- package/lib/typescript/platform-specific/jsVersion.d.ts +1 -1
- package/package.json +4 -3
- package/src/Colors.ts +5 -2
- package/src/UpdateProps.ts +8 -11
- package/src/ViewDescriptorsSet.ts +0 -42
- package/src/createAnimatedComponent/InlinePropManager.ts +2 -8
- package/src/createAnimatedComponent/PropsFilter.tsx +0 -4
- package/src/createAnimatedComponent/commonTypes.ts +1 -2
- package/src/createAnimatedComponent/createAnimatedComponent.tsx +1 -5
- package/src/hook/commonTypes.ts +3 -6
- package/src/hook/useAnimatedStyle.ts +9 -26
- package/src/hook/useFrameCallback.ts +2 -2
- package/src/hook/useWorkletCallback.ts +1 -1
- package/src/js-reanimated/index.ts +11 -37
- package/src/js-reanimated/webUtils.ts +8 -0
- package/src/js-reanimated/webUtils.web.ts +27 -0
- package/src/layoutReanimation/defaultTransitions/CurvedTransition.ts +2 -0
- package/src/layoutReanimation/defaultTransitions/EntryExitTransition.ts +2 -0
- package/src/layoutReanimation/defaultTransitions/FadingTransition.ts +12 -10
- package/src/layoutReanimation/defaultTransitions/JumpingTransition.ts +2 -0
- package/src/layoutReanimation/defaultTransitions/LinearTransition.ts +2 -0
- package/src/layoutReanimation/defaultTransitions/SequencedTransition.ts +2 -0
- package/src/layoutReanimation/web/Easing.web.ts +15 -0
- package/src/layoutReanimation/web/animationParser.ts +30 -2
- package/src/layoutReanimation/web/animationsManager.ts +45 -12
- package/src/layoutReanimation/web/componentStyle.ts +13 -16
- package/src/layoutReanimation/web/componentUtils.ts +68 -25
- package/src/layoutReanimation/web/config.ts +5 -14
- package/src/layoutReanimation/web/createAnimation.ts +38 -4
- package/src/layoutReanimation/web/domUtils.ts +15 -5
- package/src/layoutReanimation/web/transition/Jumping.web.ts +44 -0
- package/src/platform-specific/RNRenderer.web.ts +1 -1
- package/src/platform-specific/jsVersion.ts +1 -1
- package/src/platformFunctions/setNativeProps.web.ts +1 -1
package/lib/module/Colors.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["makeShareable","isAndroid","isWeb","NUMBER","PERCENTAGE","call","args","join","callWithSlashSeparator","slice","length","commaSeparatedCall","MATCHERS","rgb","RegExp","rgba","hsl","hsla","hwb","hex3","hex4","hex6","hex8","hue2rgb","p","q","t","hslToRgb","h","s","l","r","g","b","Math","round","hwbToRgb","w","gray","red","green","blue","parse255","str","int","Number","parseInt","parse360","parseFloat","parse1","num","parsePercentage","names","transparent","aliceblue","antiquewhite","aqua","aquamarine","azure","beige","bisque","black","blanchedalmond","blueviolet","brown","burlywood","burntsienna","cadetblue","chartreuse","chocolate","coral","cornflowerblue","cornsilk","crimson","cyan","darkblue","darkcyan","darkgoldenrod","darkgray","darkgreen","darkgrey","darkkhaki","darkmagenta","darkolivegreen","darkorange","darkorchid","darkred","darksalmon","darkseagreen","darkslateblue","darkslategray","darkslategrey","darkturquoise","darkviolet","deeppink","deepskyblue","dimgray","dimgrey","dodgerblue","firebrick","floralwhite","forestgreen","fuchsia","gainsboro","ghostwhite","gold","goldenrod","greenyellow","grey","honeydew","hotpink","indianred","indigo","ivory","khaki","lavender","lavenderblush","lawngreen","lemonchiffon","lightblue","lightcoral","lightcyan","lightgoldenrodyellow","lightgray","lightgreen","lightgrey","lightpink","lightsalmon","lightseagreen","lightskyblue","lightslategray","lightslategrey","lightsteelblue","lightyellow","lime","limegreen","linen","magenta","maroon","mediumaquamarine","mediumblue","mediumorchid","mediumpurple","mediumseagreen","mediumslateblue","mediumspringgreen","mediumturquoise","mediumvioletred","midnightblue","mintcream","mistyrose","moccasin","navajowhite","navy","oldlace","olive","olivedrab","orange","orangered","orchid","palegoldenrod","palegreen","paleturquoise","palevioletred","papayawhip","peachpuff","peru","pink","plum","powderblue","purple","rebeccapurple","rosybrown","royalblue","saddlebrown","salmon","sandybrown","seagreen","seashell","sienna","silver","skyblue","slateblue","slategray","slategrey","snow","springgreen","steelblue","tan","teal","thistle","tomato","turquoise","violet","wheat","white","whitesmoke","yellow","yellowgreen","ColorProperties","normalizeColor","color","match","exec","undefined","opacity","c","IS_WEB","IS_ANDROID","rgbaColor","alpha","_WORKLET","RGBtoHSV","max","min","d","v","HSVtoRGB","i","floor","f","hsvToColor","a","processColorInitially","normalizedColor","isColor","value","processColor","processColorsInProps","props","key","includes","convertToRGBA","processedColor","rgbaArrayToRGBAColor","RGBA","toLinearSpace","gamma","res","push","pow","toGammaSpace"],"sources":["Colors.ts"],"sourcesContent":["'use strict';\n/**\n * Copied from:\n * react-native/Libraries/StyleSheet/normalizeColor.js\n * react-native/Libraries/StyleSheet/processColor.js\n * https://github.com/wcandillon/react-native-redash/blob/master/src/Colors.ts\n */\n\n/* eslint no-bitwise: 0 */\nimport type { StyleProps } from './commonTypes';\nimport { makeShareable } from './core';\nimport { isAndroid, isWeb } from './PlatformChecker';\n\ninterface RGB {\n r: number;\n g: number;\n b: number;\n}\n\ninterface HSV {\n h: number;\n s: number;\n v: number;\n}\n\nconst NUMBER: string = '[-+]?\\\\d*\\\\.?\\\\d+';\nconst PERCENTAGE = NUMBER + '%';\n\nfunction call(...args: (RegExp | string)[]) {\n return '\\\\(\\\\s*(' + args.join(')\\\\s*,?\\\\s*(') + ')\\\\s*\\\\)';\n}\n\nfunction callWithSlashSeparator(...args: (RegExp | string)[]) {\n return (\n '\\\\(\\\\s*(' +\n args.slice(0, args.length - 1).join(')\\\\s*,?\\\\s*(') +\n ')\\\\s*/\\\\s*(' +\n args[args.length - 1] +\n ')\\\\s*\\\\)'\n );\n}\n\nfunction commaSeparatedCall(...args: (RegExp | string)[]) {\n return '\\\\(\\\\s*(' + args.join(')\\\\s*,\\\\s*(') + ')\\\\s*\\\\)';\n}\n\nconst MATCHERS = {\n rgb: new RegExp('rgb' + call(NUMBER, NUMBER, NUMBER)),\n rgba: new RegExp(\n 'rgba(' +\n commaSeparatedCall(NUMBER, NUMBER, NUMBER, NUMBER) +\n '|' +\n callWithSlashSeparator(NUMBER, NUMBER, NUMBER, NUMBER) +\n ')'\n ),\n hsl: new RegExp('hsl' + call(NUMBER, PERCENTAGE, PERCENTAGE)),\n hsla: new RegExp(\n 'hsla(' +\n commaSeparatedCall(NUMBER, PERCENTAGE, PERCENTAGE, NUMBER) +\n '|' +\n callWithSlashSeparator(NUMBER, PERCENTAGE, PERCENTAGE, NUMBER) +\n ')'\n ),\n hwb: new RegExp('hwb' + call(NUMBER, PERCENTAGE, PERCENTAGE)),\n hex3: /^#([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,\n hex4: /^#([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,\n hex6: /^#([0-9a-fA-F]{6})$/,\n hex8: /^#([0-9a-fA-F]{8})$/,\n};\n\nfunction hue2rgb(p: number, q: number, t: number): number {\n 'worklet';\n if (t < 0) {\n t += 1;\n }\n if (t > 1) {\n t -= 1;\n }\n if (t < 1 / 6) {\n return p + (q - p) * 6 * t;\n }\n if (t < 1 / 2) {\n return q;\n }\n if (t < 2 / 3) {\n return p + (q - p) * (2 / 3 - t) * 6;\n }\n return p;\n}\n\nfunction hslToRgb(h: number, s: number, l: number): number {\n 'worklet';\n const q = l < 0.5 ? l * (1 + s) : l + s - l * s;\n const p = 2 * l - q;\n const r = hue2rgb(p, q, h + 1 / 3);\n const g = hue2rgb(p, q, h);\n const b = hue2rgb(p, q, h - 1 / 3);\n\n return (\n (Math.round(r * 255) << 24) |\n (Math.round(g * 255) << 16) |\n (Math.round(b * 255) << 8)\n );\n}\n\nfunction hwbToRgb(h: number, w: number, b: number): number {\n 'worklet';\n if (w + b >= 1) {\n const gray = Math.round((w * 255) / (w + b));\n\n return (gray << 24) | (gray << 16) | (gray << 8);\n }\n\n const red = hue2rgb(0, 1, h + 1 / 3) * (1 - w - b) + w;\n const green = hue2rgb(0, 1, h) * (1 - w - b) + w;\n const blue = hue2rgb(0, 1, h - 1 / 3) * (1 - w - b) + w;\n\n return (\n (Math.round(red * 255) << 24) |\n (Math.round(green * 255) << 16) |\n (Math.round(blue * 255) << 8)\n );\n}\n\nfunction parse255(str: string): number {\n 'worklet';\n const int = Number.parseInt(str, 10);\n if (int < 0) {\n return 0;\n }\n if (int > 255) {\n return 255;\n }\n return int;\n}\n\nfunction parse360(str: string): number {\n 'worklet';\n const int = Number.parseFloat(str);\n return (((int % 360) + 360) % 360) / 360;\n}\n\nfunction parse1(str: string): number {\n 'worklet';\n const num = Number.parseFloat(str);\n if (num < 0) {\n return 0;\n }\n if (num > 1) {\n return 255;\n }\n return Math.round(num * 255);\n}\n\nfunction parsePercentage(str: string): number {\n 'worklet';\n // parseFloat conveniently ignores the final %\n const int = Number.parseFloat(str);\n if (int < 0) {\n return 0;\n }\n if (int > 100) {\n return 1;\n }\n return int / 100;\n}\n\nconst names: Record<string, number> = makeShareable({\n transparent: 0x00000000,\n\n /* spell-checker: disable */\n // http://www.w3.org/TR/css3-color/#svg-color\n aliceblue: 0xf0f8ffff,\n antiquewhite: 0xfaebd7ff,\n aqua: 0x00ffffff,\n aquamarine: 0x7fffd4ff,\n azure: 0xf0ffffff,\n beige: 0xf5f5dcff,\n bisque: 0xffe4c4ff,\n black: 0x000000ff,\n blanchedalmond: 0xffebcdff,\n blue: 0x0000ffff,\n blueviolet: 0x8a2be2ff,\n brown: 0xa52a2aff,\n burlywood: 0xdeb887ff,\n burntsienna: 0xea7e5dff,\n cadetblue: 0x5f9ea0ff,\n chartreuse: 0x7fff00ff,\n chocolate: 0xd2691eff,\n coral: 0xff7f50ff,\n cornflowerblue: 0x6495edff,\n cornsilk: 0xfff8dcff,\n crimson: 0xdc143cff,\n cyan: 0x00ffffff,\n darkblue: 0x00008bff,\n darkcyan: 0x008b8bff,\n darkgoldenrod: 0xb8860bff,\n darkgray: 0xa9a9a9ff,\n darkgreen: 0x006400ff,\n darkgrey: 0xa9a9a9ff,\n darkkhaki: 0xbdb76bff,\n darkmagenta: 0x8b008bff,\n darkolivegreen: 0x556b2fff,\n darkorange: 0xff8c00ff,\n darkorchid: 0x9932ccff,\n darkred: 0x8b0000ff,\n darksalmon: 0xe9967aff,\n darkseagreen: 0x8fbc8fff,\n darkslateblue: 0x483d8bff,\n darkslategray: 0x2f4f4fff,\n darkslategrey: 0x2f4f4fff,\n darkturquoise: 0x00ced1ff,\n darkviolet: 0x9400d3ff,\n deeppink: 0xff1493ff,\n deepskyblue: 0x00bfffff,\n dimgray: 0x696969ff,\n dimgrey: 0x696969ff,\n dodgerblue: 0x1e90ffff,\n firebrick: 0xb22222ff,\n floralwhite: 0xfffaf0ff,\n forestgreen: 0x228b22ff,\n fuchsia: 0xff00ffff,\n gainsboro: 0xdcdcdcff,\n ghostwhite: 0xf8f8ffff,\n gold: 0xffd700ff,\n goldenrod: 0xdaa520ff,\n gray: 0x808080ff,\n green: 0x008000ff,\n greenyellow: 0xadff2fff,\n grey: 0x808080ff,\n honeydew: 0xf0fff0ff,\n hotpink: 0xff69b4ff,\n indianred: 0xcd5c5cff,\n indigo: 0x4b0082ff,\n ivory: 0xfffff0ff,\n khaki: 0xf0e68cff,\n lavender: 0xe6e6faff,\n lavenderblush: 0xfff0f5ff,\n lawngreen: 0x7cfc00ff,\n lemonchiffon: 0xfffacdff,\n lightblue: 0xadd8e6ff,\n lightcoral: 0xf08080ff,\n lightcyan: 0xe0ffffff,\n lightgoldenrodyellow: 0xfafad2ff,\n lightgray: 0xd3d3d3ff,\n lightgreen: 0x90ee90ff,\n lightgrey: 0xd3d3d3ff,\n lightpink: 0xffb6c1ff,\n lightsalmon: 0xffa07aff,\n lightseagreen: 0x20b2aaff,\n lightskyblue: 0x87cefaff,\n lightslategray: 0x778899ff,\n lightslategrey: 0x778899ff,\n lightsteelblue: 0xb0c4deff,\n lightyellow: 0xffffe0ff,\n lime: 0x00ff00ff,\n limegreen: 0x32cd32ff,\n linen: 0xfaf0e6ff,\n magenta: 0xff00ffff,\n maroon: 0x800000ff,\n mediumaquamarine: 0x66cdaaff,\n mediumblue: 0x0000cdff,\n mediumorchid: 0xba55d3ff,\n mediumpurple: 0x9370dbff,\n mediumseagreen: 0x3cb371ff,\n mediumslateblue: 0x7b68eeff,\n mediumspringgreen: 0x00fa9aff,\n mediumturquoise: 0x48d1ccff,\n mediumvioletred: 0xc71585ff,\n midnightblue: 0x191970ff,\n mintcream: 0xf5fffaff,\n mistyrose: 0xffe4e1ff,\n moccasin: 0xffe4b5ff,\n navajowhite: 0xffdeadff,\n navy: 0x000080ff,\n oldlace: 0xfdf5e6ff,\n olive: 0x808000ff,\n olivedrab: 0x6b8e23ff,\n orange: 0xffa500ff,\n orangered: 0xff4500ff,\n orchid: 0xda70d6ff,\n palegoldenrod: 0xeee8aaff,\n palegreen: 0x98fb98ff,\n paleturquoise: 0xafeeeeff,\n palevioletred: 0xdb7093ff,\n papayawhip: 0xffefd5ff,\n peachpuff: 0xffdab9ff,\n peru: 0xcd853fff,\n pink: 0xffc0cbff,\n plum: 0xdda0ddff,\n powderblue: 0xb0e0e6ff,\n purple: 0x800080ff,\n rebeccapurple: 0x663399ff,\n red: 0xff0000ff,\n rosybrown: 0xbc8f8fff,\n royalblue: 0x4169e1ff,\n saddlebrown: 0x8b4513ff,\n salmon: 0xfa8072ff,\n sandybrown: 0xf4a460ff,\n seagreen: 0x2e8b57ff,\n seashell: 0xfff5eeff,\n sienna: 0xa0522dff,\n silver: 0xc0c0c0ff,\n skyblue: 0x87ceebff,\n slateblue: 0x6a5acdff,\n slategray: 0x708090ff,\n slategrey: 0x708090ff,\n snow: 0xfffafaff,\n springgreen: 0x00ff7fff,\n steelblue: 0x4682b4ff,\n tan: 0xd2b48cff,\n teal: 0x008080ff,\n thistle: 0xd8bfd8ff,\n tomato: 0xff6347ff,\n turquoise: 0x40e0d0ff,\n violet: 0xee82eeff,\n wheat: 0xf5deb3ff,\n white: 0xffffffff,\n whitesmoke: 0xf5f5f5ff,\n yellow: 0xffff00ff,\n yellowgreen: 0x9acd32ff,\n /* spell-checker: enable */\n});\n\n// copied from react-native/Libraries/Components/View/ReactNativeStyleAttributes\nexport const ColorProperties = makeShareable([\n 'backgroundColor',\n 'borderBottomColor',\n 'borderColor',\n 'borderLeftColor',\n 'borderRightColor',\n 'borderTopColor',\n 'borderStartColor',\n 'borderEndColor',\n 'borderBlockColor',\n 'borderBlockEndColor',\n 'borderBlockStartColor',\n 'color',\n 'shadowColor',\n 'textDecorationColor',\n 'tintColor',\n 'textShadowColor',\n 'overlayColor',\n]);\n\n// // ts-prune-ignore-next Exported for the purpose of tests only\nexport function normalizeColor(color: unknown): number | null {\n 'worklet';\n\n if (typeof color === 'number') {\n if (color >>> 0 === color && color >= 0 && color <= 0xffffffff) {\n return color;\n }\n return null;\n }\n\n if (typeof color !== 'string') {\n return null;\n }\n\n let match: RegExpExecArray | null | undefined;\n\n // Ordered based on occurrences on Facebook codebase\n if ((match = MATCHERS.hex6.exec(color))) {\n return Number.parseInt(match[1] + 'ff', 16) >>> 0;\n }\n\n if (names[color] !== undefined) {\n return names[color];\n }\n\n if ((match = MATCHERS.rgb.exec(color))) {\n return (\n // b\n ((parse255(match[1]) << 24) | // r\n (parse255(match[2]) << 16) | // g\n (parse255(match[3]) << 8) |\n 0x000000ff) >>> // a\n 0\n );\n }\n\n if ((match = MATCHERS.rgba.exec(color))) {\n // rgba(R G B / A) notation\n if (match[6] !== undefined) {\n return (\n ((parse255(match[6]) << 24) | // r\n (parse255(match[7]) << 16) | // g\n (parse255(match[8]) << 8) | // b\n parse1(match[9])) >>> // a\n 0\n );\n }\n\n // rgba(R, G, B, A) notation\n return (\n ((parse255(match[2]) << 24) | // r\n (parse255(match[3]) << 16) | // g\n (parse255(match[4]) << 8) | // b\n parse1(match[5])) >>> // a\n 0\n );\n }\n\n if ((match = MATCHERS.hex3.exec(color))) {\n return (\n Number.parseInt(\n match[1] +\n match[1] + // r\n match[2] +\n match[2] + // g\n match[3] +\n match[3] + // b\n 'ff', // a\n 16\n ) >>> 0\n );\n }\n\n // https://drafts.csswg.org/css-color-4/#hex-notation\n if ((match = MATCHERS.hex8.exec(color))) {\n return Number.parseInt(match[1], 16) >>> 0;\n }\n\n if ((match = MATCHERS.hex4.exec(color))) {\n return (\n Number.parseInt(\n match[1] +\n match[1] + // r\n match[2] +\n match[2] + // g\n match[3] +\n match[3] + // b\n match[4] +\n match[4], // a\n 16\n ) >>> 0\n );\n }\n\n if ((match = MATCHERS.hsl.exec(color))) {\n return (\n (hslToRgb(\n parse360(match[1]), // h\n parsePercentage(match[2]), // s\n parsePercentage(match[3]) // l\n ) |\n 0x000000ff) >>> // a\n 0\n );\n }\n\n if ((match = MATCHERS.hsla.exec(color))) {\n // hsla(H S L / A) notation\n if (match[6] !== undefined) {\n return (\n (hslToRgb(\n parse360(match[6]), // h\n parsePercentage(match[7]), // s\n parsePercentage(match[8]) // l\n ) |\n parse1(match[9])) >>> // a\n 0\n );\n }\n\n // hsla(H, S, L, A) notation\n return (\n (hslToRgb(\n parse360(match[2]), // h\n parsePercentage(match[3]), // s\n parsePercentage(match[4]) // l\n ) |\n parse1(match[5])) >>> // a\n 0\n );\n }\n\n if ((match = MATCHERS.hwb.exec(color))) {\n return (\n (hwbToRgb(\n parse360(match[1]), // h\n parsePercentage(match[2]), // w\n parsePercentage(match[3]) // b\n ) |\n 0x000000ff) >>> // a\n 0\n );\n }\n\n return null;\n}\n\nexport const opacity = (c: number): number => {\n 'worklet';\n return ((c >> 24) & 255) / 255;\n};\n\nexport const red = (c: number): number => {\n 'worklet';\n return (c >> 16) & 255;\n};\n\nexport const green = (c: number): number => {\n 'worklet';\n return (c >> 8) & 255;\n};\n\nexport const blue = (c: number): number => {\n 'worklet';\n return c & 255;\n};\n\nconst IS_WEB = isWeb();\nconst IS_ANDROID = isAndroid();\n\nexport const rgbaColor = (\n r: number,\n g: number,\n b: number,\n alpha = 1\n): number | string => {\n 'worklet';\n if (IS_WEB || !_WORKLET) {\n return `rgba(${r}, ${g}, ${b}, ${alpha})`;\n }\n\n const c =\n Math.round(alpha * 255) * (1 << 24) +\n Math.round(r) * (1 << 16) +\n Math.round(g) * (1 << 8) +\n Math.round(b);\n if (IS_ANDROID) {\n // on Android color is represented as signed 32 bit int\n return c < (1 << 31) >>> 0 ? c : c - 4294967296; // 4294967296 == Math.pow(2, 32);\n }\n return c;\n};\n\n/**\n *\n * @param r - red value (0-255)\n * @param g - green value (0-255)\n * @param b - blue value (0-255)\n * @returns \\{h: hue (0-1), s: saturation (0-1), v: value (0-1)\\}\n */\nexport function RGBtoHSV(r: number, g: number, b: number): HSV {\n 'worklet';\n const max = Math.max(r, g, b);\n const min = Math.min(r, g, b);\n const d = max - min;\n const s = max === 0 ? 0 : d / max;\n const v = max / 255;\n\n let h = 0;\n\n switch (max) {\n case min:\n break;\n case r:\n h = g - b + d * (g < b ? 6 : 0);\n h /= 6 * d;\n break;\n case g:\n h = b - r + d * 2;\n h /= 6 * d;\n break;\n case b:\n h = r - g + d * 4;\n h /= 6 * d;\n break;\n }\n\n return { h, s, v };\n}\n\n/**\n *\n * @param h - hue (0-1)\n * @param s - saturation (0-1)\n * @param v - value (0-1)\n * @returns \\{r: red (0-255), g: green (0-255), b: blue (0-255)\\}\n */\nfunction HSVtoRGB(h: number, s: number, v: number): RGB {\n 'worklet';\n let r, g, b;\n\n const i = Math.floor(h * 6);\n const f = h * 6 - i;\n const p = v * (1 - s);\n const q = v * (1 - f * s);\n const t = v * (1 - (1 - f) * s);\n switch ((i % 6) as 0 | 1 | 2 | 3 | 4 | 5) {\n case 0:\n [r, g, b] = [v, t, p];\n break;\n case 1:\n [r, g, b] = [q, v, p];\n break;\n case 2:\n [r, g, b] = [p, v, t];\n break;\n case 3:\n [r, g, b] = [p, q, v];\n break;\n case 4:\n [r, g, b] = [t, p, v];\n break;\n case 5:\n [r, g, b] = [v, p, q];\n break;\n }\n return {\n r: Math.round(r * 255),\n g: Math.round(g * 255),\n b: Math.round(b * 255),\n };\n}\n\nexport const hsvToColor = (\n h: number,\n s: number,\n v: number,\n a: number\n): number | string => {\n 'worklet';\n const { r, g, b } = HSVtoRGB(h, s, v);\n return rgbaColor(r, g, b, a);\n};\n\nfunction processColorInitially(color: unknown): number | null | undefined {\n 'worklet';\n if (color === null || color === undefined || typeof color === 'number') {\n return color;\n }\n\n let normalizedColor = normalizeColor(color);\n\n if (normalizedColor === null || normalizedColor === undefined) {\n return undefined;\n }\n\n if (typeof normalizedColor !== 'number') {\n return null;\n }\n\n normalizedColor = ((normalizedColor << 24) | (normalizedColor >>> 8)) >>> 0; // alpha rgb\n return normalizedColor;\n}\n\nexport function isColor(value: unknown): boolean {\n 'worklet';\n if (typeof value !== 'string') {\n return false;\n }\n return processColorInitially(value) != null;\n}\n\nexport function processColor(color: unknown): number | null | undefined {\n 'worklet';\n let normalizedColor = processColorInitially(color);\n if (normalizedColor === null || normalizedColor === undefined) {\n return undefined;\n }\n\n if (typeof normalizedColor !== 'number') {\n return null;\n }\n\n if (IS_ANDROID) {\n // Android use 32 bit *signed* integer to represent the color\n // We utilize the fact that bitwise operations in JS also operates on\n // signed 32 bit integers, so that we can use those to convert from\n // *unsigned* to *signed* 32bit int that way.\n normalizedColor = normalizedColor | 0x0;\n }\n\n return normalizedColor;\n}\n\nexport function processColorsInProps(props: StyleProps) {\n 'worklet';\n for (const key in props) {\n if (ColorProperties.includes(key)) {\n props[key] = processColor(props[key]);\n }\n }\n}\n\nexport type ParsedColorArray = [number, number, number, number];\n\nexport function convertToRGBA(color: unknown): ParsedColorArray {\n 'worklet';\n const processedColor = processColorInitially(color)!; // alpha rgb;\n const a = (processedColor >>> 24) / 255;\n const r = ((processedColor << 8) >>> 24) / 255;\n const g = ((processedColor << 16) >>> 24) / 255;\n const b = ((processedColor << 24) >>> 24) / 255;\n return [r, g, b, a];\n}\n\nexport function rgbaArrayToRGBAColor(RGBA: ParsedColorArray): string {\n 'worklet';\n return `rgba(${Math.round(RGBA[0] * 255)}, ${Math.round(\n RGBA[1] * 255\n )}, ${Math.round(RGBA[2] * 255)}, ${RGBA[3]})`;\n}\n\nexport function toLinearSpace(\n RGBA: ParsedColorArray,\n gamma = 2.2\n): ParsedColorArray {\n 'worklet';\n const res = [];\n for (let i = 0; i < 3; ++i) {\n res.push(Math.pow(RGBA[i], gamma));\n }\n res.push(RGBA[3]);\n return res as ParsedColorArray;\n}\n\nexport function toGammaSpace(\n RGBA: ParsedColorArray,\n gamma = 2.2\n): ParsedColorArray {\n 'worklet';\n const res = [];\n for (let i = 0; i < 3; ++i) {\n res.push(Math.pow(RGBA[i], 1 / gamma));\n }\n res.push(RGBA[3]);\n return res as ParsedColorArray;\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["makeShareable","isAndroid","isWeb","NUMBER","PERCENTAGE","call","args","join","callWithSlashSeparator","slice","length","commaSeparatedCall","MATCHERS","rgb","RegExp","rgba","hsl","hsla","hwb","hex3","hex4","hex6","hex8","hue2rgb","p","q","t","hslToRgb","h","s","l","r","g","b","Math","round","hwbToRgb","w","gray","red","green","blue","parse255","str","int","Number","parseInt","parse360","parseFloat","parse1","num","parsePercentage","names","transparent","aliceblue","antiquewhite","aqua","aquamarine","azure","beige","bisque","black","blanchedalmond","blueviolet","brown","burlywood","burntsienna","cadetblue","chartreuse","chocolate","coral","cornflowerblue","cornsilk","crimson","cyan","darkblue","darkcyan","darkgoldenrod","darkgray","darkgreen","darkgrey","darkkhaki","darkmagenta","darkolivegreen","darkorange","darkorchid","darkred","darksalmon","darkseagreen","darkslateblue","darkslategray","darkslategrey","darkturquoise","darkviolet","deeppink","deepskyblue","dimgray","dimgrey","dodgerblue","firebrick","floralwhite","forestgreen","fuchsia","gainsboro","ghostwhite","gold","goldenrod","greenyellow","grey","honeydew","hotpink","indianred","indigo","ivory","khaki","lavender","lavenderblush","lawngreen","lemonchiffon","lightblue","lightcoral","lightcyan","lightgoldenrodyellow","lightgray","lightgreen","lightgrey","lightpink","lightsalmon","lightseagreen","lightskyblue","lightslategray","lightslategrey","lightsteelblue","lightyellow","lime","limegreen","linen","magenta","maroon","mediumaquamarine","mediumblue","mediumorchid","mediumpurple","mediumseagreen","mediumslateblue","mediumspringgreen","mediumturquoise","mediumvioletred","midnightblue","mintcream","mistyrose","moccasin","navajowhite","navy","oldlace","olive","olivedrab","orange","orangered","orchid","palegoldenrod","palegreen","paleturquoise","palevioletred","papayawhip","peachpuff","peru","pink","plum","powderblue","purple","rebeccapurple","rosybrown","royalblue","saddlebrown","salmon","sandybrown","seagreen","seashell","sienna","silver","skyblue","slateblue","slategray","slategrey","snow","springgreen","steelblue","tan","teal","thistle","tomato","turquoise","violet","wheat","white","whitesmoke","yellow","yellowgreen","ColorProperties","normalizeColor","color","match","exec","undefined","opacity","c","IS_WEB","IS_ANDROID","rgbaColor","alpha","_WORKLET","safeAlpha","RGBtoHSV","max","min","d","v","HSVtoRGB","i","floor","f","hsvToColor","a","processColorInitially","normalizedColor","isColor","value","processColor","processColorsInProps","props","key","includes","convertToRGBA","processedColor","rgbaArrayToRGBAColor","RGBA","toLinearSpace","gamma","res","push","pow","toGammaSpace"],"sources":["Colors.ts"],"sourcesContent":["'use strict';\n/**\n * Copied from:\n * react-native/Libraries/StyleSheet/normalizeColor.js\n * react-native/Libraries/StyleSheet/processColor.js\n * https://github.com/wcandillon/react-native-redash/blob/master/src/Colors.ts\n */\n\n/* eslint no-bitwise: 0 */\nimport type { StyleProps } from './commonTypes';\nimport { makeShareable } from './core';\nimport { isAndroid, isWeb } from './PlatformChecker';\n\ninterface RGB {\n r: number;\n g: number;\n b: number;\n}\n\ninterface HSV {\n h: number;\n s: number;\n v: number;\n}\n\nconst NUMBER: string = '[-+]?\\\\d*\\\\.?\\\\d+';\nconst PERCENTAGE = NUMBER + '%';\n\nfunction call(...args: (RegExp | string)[]) {\n return '\\\\(\\\\s*(' + args.join(')\\\\s*,?\\\\s*(') + ')\\\\s*\\\\)';\n}\n\nfunction callWithSlashSeparator(...args: (RegExp | string)[]) {\n return (\n '\\\\(\\\\s*(' +\n args.slice(0, args.length - 1).join(')\\\\s*,?\\\\s*(') +\n ')\\\\s*/\\\\s*(' +\n args[args.length - 1] +\n ')\\\\s*\\\\)'\n );\n}\n\nfunction commaSeparatedCall(...args: (RegExp | string)[]) {\n return '\\\\(\\\\s*(' + args.join(')\\\\s*,\\\\s*(') + ')\\\\s*\\\\)';\n}\n\nconst MATCHERS = {\n rgb: new RegExp('rgb' + call(NUMBER, NUMBER, NUMBER)),\n rgba: new RegExp(\n 'rgba(' +\n commaSeparatedCall(NUMBER, NUMBER, NUMBER, NUMBER) +\n '|' +\n callWithSlashSeparator(NUMBER, NUMBER, NUMBER, NUMBER) +\n ')'\n ),\n hsl: new RegExp('hsl' + call(NUMBER, PERCENTAGE, PERCENTAGE)),\n hsla: new RegExp(\n 'hsla(' +\n commaSeparatedCall(NUMBER, PERCENTAGE, PERCENTAGE, NUMBER) +\n '|' +\n callWithSlashSeparator(NUMBER, PERCENTAGE, PERCENTAGE, NUMBER) +\n ')'\n ),\n hwb: new RegExp('hwb' + call(NUMBER, PERCENTAGE, PERCENTAGE)),\n hex3: /^#([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,\n hex4: /^#([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,\n hex6: /^#([0-9a-fA-F]{6})$/,\n hex8: /^#([0-9a-fA-F]{8})$/,\n};\n\nfunction hue2rgb(p: number, q: number, t: number): number {\n 'worklet';\n if (t < 0) {\n t += 1;\n }\n if (t > 1) {\n t -= 1;\n }\n if (t < 1 / 6) {\n return p + (q - p) * 6 * t;\n }\n if (t < 1 / 2) {\n return q;\n }\n if (t < 2 / 3) {\n return p + (q - p) * (2 / 3 - t) * 6;\n }\n return p;\n}\n\nfunction hslToRgb(h: number, s: number, l: number): number {\n 'worklet';\n const q = l < 0.5 ? l * (1 + s) : l + s - l * s;\n const p = 2 * l - q;\n const r = hue2rgb(p, q, h + 1 / 3);\n const g = hue2rgb(p, q, h);\n const b = hue2rgb(p, q, h - 1 / 3);\n\n return (\n (Math.round(r * 255) << 24) |\n (Math.round(g * 255) << 16) |\n (Math.round(b * 255) << 8)\n );\n}\n\nfunction hwbToRgb(h: number, w: number, b: number): number {\n 'worklet';\n if (w + b >= 1) {\n const gray = Math.round((w * 255) / (w + b));\n\n return (gray << 24) | (gray << 16) | (gray << 8);\n }\n\n const red = hue2rgb(0, 1, h + 1 / 3) * (1 - w - b) + w;\n const green = hue2rgb(0, 1, h) * (1 - w - b) + w;\n const blue = hue2rgb(0, 1, h - 1 / 3) * (1 - w - b) + w;\n\n return (\n (Math.round(red * 255) << 24) |\n (Math.round(green * 255) << 16) |\n (Math.round(blue * 255) << 8)\n );\n}\n\nfunction parse255(str: string): number {\n 'worklet';\n const int = Number.parseInt(str, 10);\n if (int < 0) {\n return 0;\n }\n if (int > 255) {\n return 255;\n }\n return int;\n}\n\nfunction parse360(str: string): number {\n 'worklet';\n const int = Number.parseFloat(str);\n return (((int % 360) + 360) % 360) / 360;\n}\n\nfunction parse1(str: string): number {\n 'worklet';\n const num = Number.parseFloat(str);\n if (num < 0) {\n return 0;\n }\n if (num > 1) {\n return 255;\n }\n return Math.round(num * 255);\n}\n\nfunction parsePercentage(str: string): number {\n 'worklet';\n // parseFloat conveniently ignores the final %\n const int = Number.parseFloat(str);\n if (int < 0) {\n return 0;\n }\n if (int > 100) {\n return 1;\n }\n return int / 100;\n}\n\nconst names: Record<string, number> = makeShareable({\n transparent: 0x00000000,\n\n /* spell-checker: disable */\n // http://www.w3.org/TR/css3-color/#svg-color\n aliceblue: 0xf0f8ffff,\n antiquewhite: 0xfaebd7ff,\n aqua: 0x00ffffff,\n aquamarine: 0x7fffd4ff,\n azure: 0xf0ffffff,\n beige: 0xf5f5dcff,\n bisque: 0xffe4c4ff,\n black: 0x000000ff,\n blanchedalmond: 0xffebcdff,\n blue: 0x0000ffff,\n blueviolet: 0x8a2be2ff,\n brown: 0xa52a2aff,\n burlywood: 0xdeb887ff,\n burntsienna: 0xea7e5dff,\n cadetblue: 0x5f9ea0ff,\n chartreuse: 0x7fff00ff,\n chocolate: 0xd2691eff,\n coral: 0xff7f50ff,\n cornflowerblue: 0x6495edff,\n cornsilk: 0xfff8dcff,\n crimson: 0xdc143cff,\n cyan: 0x00ffffff,\n darkblue: 0x00008bff,\n darkcyan: 0x008b8bff,\n darkgoldenrod: 0xb8860bff,\n darkgray: 0xa9a9a9ff,\n darkgreen: 0x006400ff,\n darkgrey: 0xa9a9a9ff,\n darkkhaki: 0xbdb76bff,\n darkmagenta: 0x8b008bff,\n darkolivegreen: 0x556b2fff,\n darkorange: 0xff8c00ff,\n darkorchid: 0x9932ccff,\n darkred: 0x8b0000ff,\n darksalmon: 0xe9967aff,\n darkseagreen: 0x8fbc8fff,\n darkslateblue: 0x483d8bff,\n darkslategray: 0x2f4f4fff,\n darkslategrey: 0x2f4f4fff,\n darkturquoise: 0x00ced1ff,\n darkviolet: 0x9400d3ff,\n deeppink: 0xff1493ff,\n deepskyblue: 0x00bfffff,\n dimgray: 0x696969ff,\n dimgrey: 0x696969ff,\n dodgerblue: 0x1e90ffff,\n firebrick: 0xb22222ff,\n floralwhite: 0xfffaf0ff,\n forestgreen: 0x228b22ff,\n fuchsia: 0xff00ffff,\n gainsboro: 0xdcdcdcff,\n ghostwhite: 0xf8f8ffff,\n gold: 0xffd700ff,\n goldenrod: 0xdaa520ff,\n gray: 0x808080ff,\n green: 0x008000ff,\n greenyellow: 0xadff2fff,\n grey: 0x808080ff,\n honeydew: 0xf0fff0ff,\n hotpink: 0xff69b4ff,\n indianred: 0xcd5c5cff,\n indigo: 0x4b0082ff,\n ivory: 0xfffff0ff,\n khaki: 0xf0e68cff,\n lavender: 0xe6e6faff,\n lavenderblush: 0xfff0f5ff,\n lawngreen: 0x7cfc00ff,\n lemonchiffon: 0xfffacdff,\n lightblue: 0xadd8e6ff,\n lightcoral: 0xf08080ff,\n lightcyan: 0xe0ffffff,\n lightgoldenrodyellow: 0xfafad2ff,\n lightgray: 0xd3d3d3ff,\n lightgreen: 0x90ee90ff,\n lightgrey: 0xd3d3d3ff,\n lightpink: 0xffb6c1ff,\n lightsalmon: 0xffa07aff,\n lightseagreen: 0x20b2aaff,\n lightskyblue: 0x87cefaff,\n lightslategray: 0x778899ff,\n lightslategrey: 0x778899ff,\n lightsteelblue: 0xb0c4deff,\n lightyellow: 0xffffe0ff,\n lime: 0x00ff00ff,\n limegreen: 0x32cd32ff,\n linen: 0xfaf0e6ff,\n magenta: 0xff00ffff,\n maroon: 0x800000ff,\n mediumaquamarine: 0x66cdaaff,\n mediumblue: 0x0000cdff,\n mediumorchid: 0xba55d3ff,\n mediumpurple: 0x9370dbff,\n mediumseagreen: 0x3cb371ff,\n mediumslateblue: 0x7b68eeff,\n mediumspringgreen: 0x00fa9aff,\n mediumturquoise: 0x48d1ccff,\n mediumvioletred: 0xc71585ff,\n midnightblue: 0x191970ff,\n mintcream: 0xf5fffaff,\n mistyrose: 0xffe4e1ff,\n moccasin: 0xffe4b5ff,\n navajowhite: 0xffdeadff,\n navy: 0x000080ff,\n oldlace: 0xfdf5e6ff,\n olive: 0x808000ff,\n olivedrab: 0x6b8e23ff,\n orange: 0xffa500ff,\n orangered: 0xff4500ff,\n orchid: 0xda70d6ff,\n palegoldenrod: 0xeee8aaff,\n palegreen: 0x98fb98ff,\n paleturquoise: 0xafeeeeff,\n palevioletred: 0xdb7093ff,\n papayawhip: 0xffefd5ff,\n peachpuff: 0xffdab9ff,\n peru: 0xcd853fff,\n pink: 0xffc0cbff,\n plum: 0xdda0ddff,\n powderblue: 0xb0e0e6ff,\n purple: 0x800080ff,\n rebeccapurple: 0x663399ff,\n red: 0xff0000ff,\n rosybrown: 0xbc8f8fff,\n royalblue: 0x4169e1ff,\n saddlebrown: 0x8b4513ff,\n salmon: 0xfa8072ff,\n sandybrown: 0xf4a460ff,\n seagreen: 0x2e8b57ff,\n seashell: 0xfff5eeff,\n sienna: 0xa0522dff,\n silver: 0xc0c0c0ff,\n skyblue: 0x87ceebff,\n slateblue: 0x6a5acdff,\n slategray: 0x708090ff,\n slategrey: 0x708090ff,\n snow: 0xfffafaff,\n springgreen: 0x00ff7fff,\n steelblue: 0x4682b4ff,\n tan: 0xd2b48cff,\n teal: 0x008080ff,\n thistle: 0xd8bfd8ff,\n tomato: 0xff6347ff,\n turquoise: 0x40e0d0ff,\n violet: 0xee82eeff,\n wheat: 0xf5deb3ff,\n white: 0xffffffff,\n whitesmoke: 0xf5f5f5ff,\n yellow: 0xffff00ff,\n yellowgreen: 0x9acd32ff,\n /* spell-checker: enable */\n});\n\n// copied from react-native/Libraries/Components/View/ReactNativeStyleAttributes\nexport const ColorProperties = makeShareable([\n 'backgroundColor',\n 'borderBottomColor',\n 'borderColor',\n 'borderLeftColor',\n 'borderRightColor',\n 'borderTopColor',\n 'borderStartColor',\n 'borderEndColor',\n 'borderBlockColor',\n 'borderBlockEndColor',\n 'borderBlockStartColor',\n 'color',\n 'shadowColor',\n 'textDecorationColor',\n 'tintColor',\n 'textShadowColor',\n 'overlayColor',\n]);\n\n// // ts-prune-ignore-next Exported for the purpose of tests only\nexport function normalizeColor(color: unknown): number | null {\n 'worklet';\n\n if (typeof color === 'number') {\n if (color >>> 0 === color && color >= 0 && color <= 0xffffffff) {\n return color;\n }\n return null;\n }\n\n if (typeof color !== 'string') {\n return null;\n }\n\n let match: RegExpExecArray | null | undefined;\n\n // Ordered based on occurrences on Facebook codebase\n if ((match = MATCHERS.hex6.exec(color))) {\n return Number.parseInt(match[1] + 'ff', 16) >>> 0;\n }\n\n if (names[color] !== undefined) {\n return names[color];\n }\n\n if ((match = MATCHERS.rgb.exec(color))) {\n return (\n // b\n ((parse255(match[1]) << 24) | // r\n (parse255(match[2]) << 16) | // g\n (parse255(match[3]) << 8) |\n 0x000000ff) >>> // a\n 0\n );\n }\n\n if ((match = MATCHERS.rgba.exec(color))) {\n // rgba(R G B / A) notation\n if (match[6] !== undefined) {\n return (\n ((parse255(match[6]) << 24) | // r\n (parse255(match[7]) << 16) | // g\n (parse255(match[8]) << 8) | // b\n parse1(match[9])) >>> // a\n 0\n );\n }\n\n // rgba(R, G, B, A) notation\n return (\n ((parse255(match[2]) << 24) | // r\n (parse255(match[3]) << 16) | // g\n (parse255(match[4]) << 8) | // b\n parse1(match[5])) >>> // a\n 0\n );\n }\n\n if ((match = MATCHERS.hex3.exec(color))) {\n return (\n Number.parseInt(\n match[1] +\n match[1] + // r\n match[2] +\n match[2] + // g\n match[3] +\n match[3] + // b\n 'ff', // a\n 16\n ) >>> 0\n );\n }\n\n // https://drafts.csswg.org/css-color-4/#hex-notation\n if ((match = MATCHERS.hex8.exec(color))) {\n return Number.parseInt(match[1], 16) >>> 0;\n }\n\n if ((match = MATCHERS.hex4.exec(color))) {\n return (\n Number.parseInt(\n match[1] +\n match[1] + // r\n match[2] +\n match[2] + // g\n match[3] +\n match[3] + // b\n match[4] +\n match[4], // a\n 16\n ) >>> 0\n );\n }\n\n if ((match = MATCHERS.hsl.exec(color))) {\n return (\n (hslToRgb(\n parse360(match[1]), // h\n parsePercentage(match[2]), // s\n parsePercentage(match[3]) // l\n ) |\n 0x000000ff) >>> // a\n 0\n );\n }\n\n if ((match = MATCHERS.hsla.exec(color))) {\n // hsla(H S L / A) notation\n if (match[6] !== undefined) {\n return (\n (hslToRgb(\n parse360(match[6]), // h\n parsePercentage(match[7]), // s\n parsePercentage(match[8]) // l\n ) |\n parse1(match[9])) >>> // a\n 0\n );\n }\n\n // hsla(H, S, L, A) notation\n return (\n (hslToRgb(\n parse360(match[2]), // h\n parsePercentage(match[3]), // s\n parsePercentage(match[4]) // l\n ) |\n parse1(match[5])) >>> // a\n 0\n );\n }\n\n if ((match = MATCHERS.hwb.exec(color))) {\n return (\n (hwbToRgb(\n parse360(match[1]), // h\n parsePercentage(match[2]), // w\n parsePercentage(match[3]) // b\n ) |\n 0x000000ff) >>> // a\n 0\n );\n }\n\n return null;\n}\n\nexport const opacity = (c: number): number => {\n 'worklet';\n return ((c >> 24) & 255) / 255;\n};\n\nexport const red = (c: number): number => {\n 'worklet';\n return (c >> 16) & 255;\n};\n\nexport const green = (c: number): number => {\n 'worklet';\n return (c >> 8) & 255;\n};\n\nexport const blue = (c: number): number => {\n 'worklet';\n return c & 255;\n};\n\nconst IS_WEB = isWeb();\nconst IS_ANDROID = isAndroid();\n\nexport const rgbaColor = (\n r: number,\n g: number,\n b: number,\n alpha = 1\n): number | string => {\n 'worklet';\n if (IS_WEB || !_WORKLET) {\n // Replace tiny values like 1.234e-11 with 0:\n const safeAlpha = alpha < 0.001 ? 0 : alpha;\n return `rgba(${r}, ${g}, ${b}, ${safeAlpha})`;\n }\n\n const c =\n Math.round(alpha * 255) * (1 << 24) +\n Math.round(r) * (1 << 16) +\n Math.round(g) * (1 << 8) +\n Math.round(b);\n if (IS_ANDROID) {\n // on Android color is represented as signed 32 bit int\n return c < (1 << 31) >>> 0 ? c : c - 4294967296; // 4294967296 == Math.pow(2, 32);\n }\n return c;\n};\n\n/**\n *\n * @param r - red value (0-255)\n * @param g - green value (0-255)\n * @param b - blue value (0-255)\n * @returns \\{h: hue (0-1), s: saturation (0-1), v: value (0-1)\\}\n */\nexport function RGBtoHSV(r: number, g: number, b: number): HSV {\n 'worklet';\n const max = Math.max(r, g, b);\n const min = Math.min(r, g, b);\n const d = max - min;\n const s = max === 0 ? 0 : d / max;\n const v = max / 255;\n\n let h = 0;\n\n switch (max) {\n case min:\n break;\n case r:\n h = g - b + d * (g < b ? 6 : 0);\n h /= 6 * d;\n break;\n case g:\n h = b - r + d * 2;\n h /= 6 * d;\n break;\n case b:\n h = r - g + d * 4;\n h /= 6 * d;\n break;\n }\n\n return { h, s, v };\n}\n\n/**\n *\n * @param h - hue (0-1)\n * @param s - saturation (0-1)\n * @param v - value (0-1)\n * @returns \\{r: red (0-255), g: green (0-255), b: blue (0-255)\\}\n */\nfunction HSVtoRGB(h: number, s: number, v: number): RGB {\n 'worklet';\n let r, g, b;\n\n const i = Math.floor(h * 6);\n const f = h * 6 - i;\n const p = v * (1 - s);\n const q = v * (1 - f * s);\n const t = v * (1 - (1 - f) * s);\n switch ((i % 6) as 0 | 1 | 2 | 3 | 4 | 5) {\n case 0:\n [r, g, b] = [v, t, p];\n break;\n case 1:\n [r, g, b] = [q, v, p];\n break;\n case 2:\n [r, g, b] = [p, v, t];\n break;\n case 3:\n [r, g, b] = [p, q, v];\n break;\n case 4:\n [r, g, b] = [t, p, v];\n break;\n case 5:\n [r, g, b] = [v, p, q];\n break;\n }\n return {\n r: Math.round(r * 255),\n g: Math.round(g * 255),\n b: Math.round(b * 255),\n };\n}\n\nexport const hsvToColor = (\n h: number,\n s: number,\n v: number,\n a: number\n): number | string => {\n 'worklet';\n const { r, g, b } = HSVtoRGB(h, s, v);\n return rgbaColor(r, g, b, a);\n};\n\nfunction processColorInitially(color: unknown): number | null | undefined {\n 'worklet';\n if (color === null || color === undefined || typeof color === 'number') {\n return color;\n }\n\n let normalizedColor = normalizeColor(color);\n\n if (normalizedColor === null || normalizedColor === undefined) {\n return undefined;\n }\n\n if (typeof normalizedColor !== 'number') {\n return null;\n }\n\n normalizedColor = ((normalizedColor << 24) | (normalizedColor >>> 8)) >>> 0; // alpha rgb\n return normalizedColor;\n}\n\nexport function isColor(value: unknown): boolean {\n 'worklet';\n if (typeof value !== 'string') {\n return false;\n }\n return processColorInitially(value) != null;\n}\n\nexport function processColor(color: unknown): number | null | undefined {\n 'worklet';\n let normalizedColor = processColorInitially(color);\n if (normalizedColor === null || normalizedColor === undefined) {\n return undefined;\n }\n\n if (typeof normalizedColor !== 'number') {\n return null;\n }\n\n if (IS_ANDROID) {\n // Android use 32 bit *signed* integer to represent the color\n // We utilize the fact that bitwise operations in JS also operates on\n // signed 32 bit integers, so that we can use those to convert from\n // *unsigned* to *signed* 32bit int that way.\n normalizedColor = normalizedColor | 0x0;\n }\n\n return normalizedColor;\n}\n\nexport function processColorsInProps(props: StyleProps) {\n 'worklet';\n for (const key in props) {\n if (ColorProperties.includes(key)) {\n props[key] = processColor(props[key]);\n }\n }\n}\n\nexport type ParsedColorArray = [number, number, number, number];\n\nexport function convertToRGBA(color: unknown): ParsedColorArray {\n 'worklet';\n const processedColor = processColorInitially(color)!; // alpha rgb;\n const a = (processedColor >>> 24) / 255;\n const r = ((processedColor << 8) >>> 24) / 255;\n const g = ((processedColor << 16) >>> 24) / 255;\n const b = ((processedColor << 24) >>> 24) / 255;\n return [r, g, b, a];\n}\n\nexport function rgbaArrayToRGBAColor(RGBA: ParsedColorArray): string {\n 'worklet';\n const alpha = RGBA[3] < 0.001 ? 0 : RGBA[3];\n return `rgba(${Math.round(RGBA[0] * 255)}, ${Math.round(\n RGBA[1] * 255\n )}, ${Math.round(RGBA[2] * 255)}, ${alpha})`;\n}\n\nexport function toLinearSpace(\n RGBA: ParsedColorArray,\n gamma = 2.2\n): ParsedColorArray {\n 'worklet';\n const res = [];\n for (let i = 0; i < 3; ++i) {\n res.push(Math.pow(RGBA[i], gamma));\n }\n res.push(RGBA[3]);\n return res as ParsedColorArray;\n}\n\nexport function toGammaSpace(\n RGBA: ParsedColorArray,\n gamma = 2.2\n): ParsedColorArray {\n 'worklet';\n const res = [];\n for (let i = 0; i < 3; ++i) {\n res.push(Math.pow(RGBA[i], 1 / gamma));\n }\n res.push(RGBA[3]);\n return res as ParsedColorArray;\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -7,14 +7,14 @@ import { isFabric, isJest, shouldBeUseWeb } from './PlatformChecker';
|
|
|
7
7
|
import { runOnUIImmediately } from './threads';
|
|
8
8
|
let updateProps;
|
|
9
9
|
if (shouldBeUseWeb()) {
|
|
10
|
-
updateProps = (
|
|
10
|
+
updateProps = (viewDescriptors, updates, isAnimatedProps) => {
|
|
11
11
|
'worklet';
|
|
12
12
|
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
}
|
|
13
|
+
var _viewDescriptors$valu;
|
|
14
|
+
(_viewDescriptors$valu = viewDescriptors.value) === null || _viewDescriptors$valu === void 0 || _viewDescriptors$valu.forEach(viewDescriptor => {
|
|
15
|
+
const component = viewDescriptor.tag;
|
|
16
|
+
_updatePropsJS(updates, component, isAnimatedProps);
|
|
17
|
+
});
|
|
18
18
|
};
|
|
19
19
|
} else {
|
|
20
20
|
updateProps = (viewDescriptors, updates) => {
|
|
@@ -24,7 +24,7 @@ if (shouldBeUseWeb()) {
|
|
|
24
24
|
global.UpdatePropsManager.update(viewDescriptors, updates);
|
|
25
25
|
};
|
|
26
26
|
}
|
|
27
|
-
export const updatePropsJestWrapper = (viewDescriptors, updates,
|
|
27
|
+
export const updatePropsJestWrapper = (viewDescriptors, updates, animatedStyle, adapters) => {
|
|
28
28
|
adapters.forEach(adapter => {
|
|
29
29
|
adapter(updates);
|
|
30
30
|
});
|
|
@@ -32,7 +32,7 @@ export const updatePropsJestWrapper = (viewDescriptors, updates, maybeViewRef, a
|
|
|
32
32
|
...animatedStyle.current.value,
|
|
33
33
|
...updates
|
|
34
34
|
};
|
|
35
|
-
updateProps(viewDescriptors, updates
|
|
35
|
+
updateProps(viewDescriptors, updates);
|
|
36
36
|
};
|
|
37
37
|
export default updateProps;
|
|
38
38
|
const createUpdatePropsManager = isFabric() ? () => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["processColorsInProps","_updatePropsJS","isFabric","isJest","shouldBeUseWeb","runOnUIImmediately","updateProps","
|
|
1
|
+
{"version":3,"names":["processColorsInProps","_updatePropsJS","isFabric","isJest","shouldBeUseWeb","runOnUIImmediately","updateProps","viewDescriptors","updates","isAnimatedProps","_viewDescriptors$valu","value","forEach","viewDescriptor","component","tag","global","UpdatePropsManager","update","updatePropsJestWrapper","animatedStyle","adapters","adapter","current","createUpdatePropsManager","operations","push","shadowNodeWrapper","length","queueMicrotask","flush","_updatePropsFabric","name","_updatePropsPaper","maybeThrowError","Error","Proxy","get","set"],"sources":["UpdateProps.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-redundant-type-constituents */\n'use strict';\nimport type { MutableRefObject } from 'react';\nimport { processColorsInProps } from './Colors';\nimport type { ShadowNodeWrapper, SharedValue, StyleProps } from './commonTypes';\nimport type { AnimatedStyle } from './helperTypes';\nimport type { Descriptor } from './hook/commonTypes';\nimport type { ReanimatedHTMLElement } from './js-reanimated';\nimport { _updatePropsJS } from './js-reanimated';\nimport { isFabric, isJest, shouldBeUseWeb } from './PlatformChecker';\nimport { runOnUIImmediately } from './threads';\n\nlet updateProps: (\n viewDescriptor: SharedValue<Descriptor[]>,\n updates: StyleProps | AnimatedStyle<any>,\n isAnimatedProps?: boolean\n) => void;\n\nif (shouldBeUseWeb()) {\n updateProps = (viewDescriptors, updates, isAnimatedProps) => {\n 'worklet';\n viewDescriptors.value?.forEach((viewDescriptor) => {\n const component = viewDescriptor.tag as ReanimatedHTMLElement;\n _updatePropsJS(updates, component, isAnimatedProps);\n });\n };\n} else {\n updateProps = (viewDescriptors, updates) => {\n 'worklet';\n processColorsInProps(updates);\n global.UpdatePropsManager.update(viewDescriptors, updates);\n };\n}\n\nexport const updatePropsJestWrapper = (\n viewDescriptors: SharedValue<Descriptor[]>,\n updates: AnimatedStyle<any>,\n animatedStyle: MutableRefObject<AnimatedStyle<any>>,\n adapters: ((updates: AnimatedStyle<any>) => void)[]\n): void => {\n adapters.forEach((adapter) => {\n adapter(updates);\n });\n animatedStyle.current.value = {\n ...animatedStyle.current.value,\n ...updates,\n };\n\n updateProps(viewDescriptors, updates);\n};\n\nexport default updateProps;\n\nconst createUpdatePropsManager = isFabric()\n ? () => {\n 'worklet';\n // Fabric\n const operations: {\n shadowNodeWrapper: ShadowNodeWrapper;\n updates: StyleProps | AnimatedStyle<any>;\n }[] = [];\n return {\n update(\n viewDescriptors: SharedValue<Descriptor[]>,\n updates: StyleProps | AnimatedStyle<any>\n ) {\n viewDescriptors.value.forEach((viewDescriptor) => {\n operations.push({\n shadowNodeWrapper: viewDescriptor.shadowNodeWrapper,\n updates,\n });\n if (operations.length === 1) {\n queueMicrotask(this.flush);\n }\n });\n },\n flush(this: void) {\n global._updatePropsFabric!(operations);\n operations.length = 0;\n },\n };\n }\n : () => {\n 'worklet';\n // Paper\n const operations: {\n tag: number;\n name: string;\n updates: StyleProps | AnimatedStyle<any>;\n }[] = [];\n return {\n update(\n viewDescriptors: SharedValue<Descriptor[]>,\n updates: StyleProps | AnimatedStyle<any>\n ) {\n viewDescriptors.value.forEach((viewDescriptor) => {\n operations.push({\n tag: viewDescriptor.tag as number,\n name: viewDescriptor.name || 'RCTView',\n updates,\n });\n if (operations.length === 1) {\n queueMicrotask(this.flush);\n }\n });\n },\n flush(this: void) {\n global._updatePropsPaper!(operations);\n operations.length = 0;\n },\n };\n };\n\nif (shouldBeUseWeb()) {\n const maybeThrowError = () => {\n // Jest attempts to access a property of this object to check if it is a Jest mock\n // so we can't throw an error in the getter.\n if (!isJest()) {\n throw new Error(\n '[Reanimated] `UpdatePropsManager` is not available on non-native platform.'\n );\n }\n };\n global.UpdatePropsManager = new Proxy({} as UpdatePropsManager, {\n get: maybeThrowError,\n set: () => {\n maybeThrowError();\n return false;\n },\n });\n} else {\n runOnUIImmediately(() => {\n 'worklet';\n global.UpdatePropsManager = createUpdatePropsManager();\n })();\n}\n\nexport interface UpdatePropsManager {\n update(\n viewDescriptors: SharedValue<Descriptor[]>,\n updates: StyleProps | AnimatedStyle<any>\n ): void;\n flush(): void;\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,8 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
import { useRef } from 'react';
|
|
4
3
|
import { makeMutable } from './core';
|
|
5
|
-
import { shouldBeUseWeb } from './PlatformChecker';
|
|
6
4
|
export function makeViewDescriptorsSet() {
|
|
7
5
|
const shareableViewDescriptors = makeMutable([]);
|
|
8
6
|
const data = {
|
|
@@ -34,29 +32,4 @@ export function makeViewDescriptorsSet() {
|
|
|
34
32
|
};
|
|
35
33
|
return data;
|
|
36
34
|
}
|
|
37
|
-
const SHOULD_BE_USE_WEB = shouldBeUseWeb();
|
|
38
|
-
export const useViewRefSet = SHOULD_BE_USE_WEB ? useViewRefSetJS : useViewRefSetNative;
|
|
39
|
-
function useViewRefSetNative() {
|
|
40
|
-
// Stub native implementation.
|
|
41
|
-
return undefined;
|
|
42
|
-
}
|
|
43
|
-
function useViewRefSetJS() {
|
|
44
|
-
const ref = useRef(null);
|
|
45
|
-
if (ref.current === null) {
|
|
46
|
-
const data = {
|
|
47
|
-
items: new Set(),
|
|
48
|
-
add: item => {
|
|
49
|
-
if (data.items.has(item)) {
|
|
50
|
-
return;
|
|
51
|
-
}
|
|
52
|
-
data.items.add(item);
|
|
53
|
-
},
|
|
54
|
-
remove: item => {
|
|
55
|
-
data.items.delete(item);
|
|
56
|
-
}
|
|
57
|
-
};
|
|
58
|
-
ref.current = data;
|
|
59
|
-
}
|
|
60
|
-
return ref.current;
|
|
61
|
-
}
|
|
62
35
|
//# sourceMappingURL=ViewDescriptorsSet.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["
|
|
1
|
+
{"version":3,"names":["makeMutable","makeViewDescriptorsSet","shareableViewDescriptors","data","add","item","modify","descriptors","index","findIndex","descriptor","tag","push","remove","viewTag","splice"],"sources":["ViewDescriptorsSet.ts"],"sourcesContent":["'use strict';\nimport { makeMutable } from './core';\nimport type { SharedValue } from './commonTypes';\nimport type { Descriptor } from './hook/commonTypes';\n\nexport interface ViewDescriptorsSet {\n shareableViewDescriptors: SharedValue<Descriptor[]>;\n add: (item: Descriptor) => void;\n remove: (viewTag: number) => void;\n}\n\nexport function makeViewDescriptorsSet(): ViewDescriptorsSet {\n const shareableViewDescriptors = makeMutable<Descriptor[]>([]);\n const data: ViewDescriptorsSet = {\n shareableViewDescriptors,\n add: (item: Descriptor) => {\n shareableViewDescriptors.modify((descriptors) => {\n 'worklet';\n const index = descriptors.findIndex(\n (descriptor) => descriptor.tag === item.tag\n );\n if (index !== -1) {\n descriptors[index] = item;\n } else {\n descriptors.push(item);\n }\n return descriptors;\n }, false);\n },\n\n remove: (viewTag: number) => {\n shareableViewDescriptors.modify((descriptors) => {\n 'worklet';\n const index = descriptors.findIndex(\n (descriptor) => descriptor.tag === viewTag\n );\n if (index !== -1) {\n descriptors.splice(index, 1);\n }\n return descriptors;\n }, false);\n },\n };\n return data;\n}\n"],"mappings":"AAAA,YAAY;;AACZ,SAASA,WAAW,QAAQ,QAAQ;AAUpC,OAAO,SAASC,sBAAsBA,CAAA,EAAuB;EAC3D,MAAMC,wBAAwB,GAAGF,WAAW,CAAe,EAAE,CAAC;EAC9D,MAAMG,IAAwB,GAAG;IAC/BD,wBAAwB;IACxBE,GAAG,EAAGC,IAAgB,IAAK;MACzBH,wBAAwB,CAACI,MAAM,CAAEC,WAAW,IAAK;QAC/C,SAAS;;QACT,MAAMC,KAAK,GAAGD,WAAW,CAACE,SAAS,CAChCC,UAAU,IAAKA,UAAU,CAACC,GAAG,KAAKN,IAAI,CAACM,GAC1C,CAAC;QACD,IAAIH,KAAK,KAAK,CAAC,CAAC,EAAE;UAChBD,WAAW,CAACC,KAAK,CAAC,GAAGH,IAAI;QAC3B,CAAC,MAAM;UACLE,WAAW,CAACK,IAAI,CAACP,IAAI,CAAC;QACxB;QACA,OAAOE,WAAW;MACpB,CAAC,EAAE,KAAK,CAAC;IACX,CAAC;IAEDM,MAAM,EAAGC,OAAe,IAAK;MAC3BZ,wBAAwB,CAACI,MAAM,CAAEC,WAAW,IAAK;QAC/C,SAAS;;QACT,MAAMC,KAAK,GAAGD,WAAW,CAACE,SAAS,CAChCC,UAAU,IAAKA,UAAU,CAACC,GAAG,KAAKG,OACrC,CAAC;QACD,IAAIN,KAAK,KAAK,CAAC,CAAC,EAAE;UAChBD,WAAW,CAACQ,MAAM,CAACP,KAAK,EAAE,CAAC,CAAC;QAC9B;QACA,OAAOD,WAAW;MACpB,CAAC,EAAE,KAAK,CAAC;IACX;EACF,CAAC;EACD,OAAOJ,IAAI;AACb","ignoreList":[]}
|
|
@@ -9,8 +9,6 @@ import { adaptViewConfig } from '../ConfigHelper';
|
|
|
9
9
|
import updateProps from '../UpdateProps';
|
|
10
10
|
import { stopMapper, startMapper } from '../mappers';
|
|
11
11
|
import { isSharedValue } from '../isSharedValue';
|
|
12
|
-
import { shouldBeUseWeb } from '../PlatformChecker';
|
|
13
|
-
const SHOULD_BE_USE_WEB = shouldBeUseWeb();
|
|
14
12
|
function isInlineStyleTransform(transform) {
|
|
15
13
|
if (!Array.isArray(transform)) {
|
|
16
14
|
return false;
|
|
@@ -120,15 +118,11 @@ export class InlinePropManager {
|
|
|
120
118
|
});
|
|
121
119
|
}
|
|
122
120
|
const shareableViewDescriptors = this._inlinePropsViewDescriptors.shareableViewDescriptors;
|
|
123
|
-
const maybeViewRef = SHOULD_BE_USE_WEB ? {
|
|
124
|
-
items: new Set([animatedComponent])
|
|
125
|
-
} // see makeViewsRefSet
|
|
126
|
-
: undefined;
|
|
127
121
|
const updaterFunction = () => {
|
|
128
122
|
'worklet';
|
|
129
123
|
|
|
130
124
|
const update = getInlinePropsUpdate(newInlineProps);
|
|
131
|
-
updateProps(shareableViewDescriptors, update
|
|
125
|
+
updateProps(shareableViewDescriptors, update);
|
|
132
126
|
};
|
|
133
127
|
this._inlineProps = newInlineProps;
|
|
134
128
|
if (this._inlinePropsMapperId) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_defineProperty","obj","key","value","_toPropertyKey","Object","defineProperty","enumerable","configurable","writable","t","i","_toPrimitive","r","e","Symbol","toPrimitive","call","TypeError","String","Number","flattenArray","makeViewDescriptorsSet","adaptViewConfig","updateProps","stopMapper","startMapper","isSharedValue","shouldBeUseWeb","SHOULD_BE_USE_WEB","isInlineStyleTransform","transform","Array","isArray","some","hasInlineStyles","inlinePropsHasChanged","styles1","styles2","keys","length","getInlinePropsUpdate","inlineProps","update","styleValue","entries","map","item","extractSharedValuesMapFromProps","props","styles","style","forEach","styleKey","getInlineStyle","shouldGetInitialStyle","newStyle","InlinePropManager","constructor","attachInlineProps","animatedComponent","viewInfo","newInlineProps","hasChanged","_inlineProps","_inlinePropsViewDescriptors","viewTag","viewName","shadowNodeWrapper","viewConfig","add","tag","name","shareableViewDescriptors","maybeViewRef","items","Set","undefined","updaterFunction","_inlinePropsMapperId","values","detachInlineProps"],"sources":["InlinePropManager.ts"],"sourcesContent":["'use strict';\nimport type { StyleProps } from '../commonTypes';\nimport type {\n IAnimatedComponentInternal,\n AnimatedComponentProps,\n IInlinePropManager,\n ViewInfo,\n} from './commonTypes';\nimport { flattenArray } from './utils';\nimport { makeViewDescriptorsSet } from '../ViewDescriptorsSet';\nimport type { ViewDescriptorsSet, ViewRefSet } from '../ViewDescriptorsSet';\nimport { adaptViewConfig } from '../ConfigHelper';\nimport updateProps from '../UpdateProps';\nimport { stopMapper, startMapper } from '../mappers';\nimport { isSharedValue } from '../isSharedValue';\nimport { shouldBeUseWeb } from '../PlatformChecker';\n\nconst SHOULD_BE_USE_WEB = shouldBeUseWeb();\n\nfunction isInlineStyleTransform(transform: unknown): boolean {\n if (!Array.isArray(transform)) {\n return false;\n }\n\n return transform.some((t: Record<string, unknown>) => hasInlineStyles(t));\n}\n\nfunction inlinePropsHasChanged(\n styles1: StyleProps,\n styles2: StyleProps\n): boolean {\n if (Object.keys(styles1).length !== Object.keys(styles2).length) {\n return true;\n }\n\n for (const key of Object.keys(styles1)) {\n if (styles1[key] !== styles2[key]) {\n return true;\n }\n }\n\n return false;\n}\n\nfunction getInlinePropsUpdate(inlineProps: Record<string, unknown>) {\n 'worklet';\n const update: Record<string, unknown> = {};\n for (const [key, styleValue] of Object.entries(inlineProps)) {\n if (isSharedValue(styleValue)) {\n update[key] = styleValue.value;\n } else if (Array.isArray(styleValue)) {\n update[key] = styleValue.map((item) => {\n return getInlinePropsUpdate(item);\n });\n } else if (typeof styleValue === 'object') {\n update[key] = getInlinePropsUpdate(styleValue as Record<string, unknown>);\n } else {\n update[key] = styleValue;\n }\n }\n return update;\n}\n\nfunction extractSharedValuesMapFromProps(\n props: AnimatedComponentProps<\n Record<string, unknown> /* Initial component props */\n >\n): Record<string, unknown> {\n const inlineProps: Record<string, unknown> = {};\n\n for (const key in props) {\n const value = props[key];\n if (key === 'style') {\n const styles = flattenArray<StyleProps>(props.style ?? []);\n styles.forEach((style) => {\n if (!style) {\n return;\n }\n for (const [styleKey, styleValue] of Object.entries(style)) {\n if (isSharedValue(styleValue)) {\n inlineProps[styleKey] = styleValue;\n } else if (\n styleKey === 'transform' &&\n isInlineStyleTransform(styleValue)\n ) {\n inlineProps[styleKey] = styleValue;\n }\n }\n });\n } else if (isSharedValue(value)) {\n inlineProps[key] = value;\n }\n }\n\n return inlineProps;\n}\n\nexport function hasInlineStyles(style: StyleProps): boolean {\n if (!style) {\n return false;\n }\n return Object.keys(style).some((key) => {\n const styleValue = style[key];\n return (\n isSharedValue(styleValue) ||\n (key === 'transform' && isInlineStyleTransform(styleValue))\n );\n });\n}\n\nexport function getInlineStyle(\n style: Record<string, unknown>,\n shouldGetInitialStyle: boolean\n) {\n if (shouldGetInitialStyle) {\n return getInlinePropsUpdate(style);\n }\n const newStyle: StyleProps = {};\n for (const [key, styleValue] of Object.entries(style)) {\n if (\n !isSharedValue(styleValue) &&\n !(key === 'transform' && isInlineStyleTransform(styleValue))\n ) {\n newStyle[key] = styleValue;\n }\n }\n return newStyle;\n}\n\nexport class InlinePropManager implements IInlinePropManager {\n _inlinePropsViewDescriptors: ViewDescriptorsSet | null = null;\n _inlinePropsMapperId: number | null = null;\n _inlineProps: StyleProps = {};\n\n public attachInlineProps(\n animatedComponent: React.Component<unknown, unknown> &\n IAnimatedComponentInternal,\n viewInfo: ViewInfo\n ) {\n const newInlineProps: Record<string, unknown> =\n extractSharedValuesMapFromProps(animatedComponent.props);\n const hasChanged = inlinePropsHasChanged(newInlineProps, this._inlineProps);\n\n if (hasChanged) {\n if (!this._inlinePropsViewDescriptors) {\n this._inlinePropsViewDescriptors = makeViewDescriptorsSet();\n\n const { viewTag, viewName, shadowNodeWrapper, viewConfig } = viewInfo;\n\n if (Object.keys(newInlineProps).length && viewConfig) {\n adaptViewConfig(viewConfig);\n }\n\n this._inlinePropsViewDescriptors.add({\n tag: viewTag as number,\n name: viewName!,\n shadowNodeWrapper: shadowNodeWrapper!,\n });\n }\n const shareableViewDescriptors =\n this._inlinePropsViewDescriptors.shareableViewDescriptors;\n\n const maybeViewRef = SHOULD_BE_USE_WEB\n ? ({ items: new Set([animatedComponent]) } as ViewRefSet<unknown>) // see makeViewsRefSet\n : undefined;\n const updaterFunction = () => {\n 'worklet';\n const update = getInlinePropsUpdate(newInlineProps);\n updateProps(shareableViewDescriptors, update, maybeViewRef);\n };\n this._inlineProps = newInlineProps;\n if (this._inlinePropsMapperId) {\n stopMapper(this._inlinePropsMapperId);\n }\n this._inlinePropsMapperId = null;\n if (Object.keys(newInlineProps).length) {\n this._inlinePropsMapperId = startMapper(\n updaterFunction,\n Object.values(newInlineProps)\n );\n }\n }\n }\n\n public detachInlineProps() {\n if (this._inlinePropsMapperId) {\n stopMapper(this._inlinePropsMapperId);\n }\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_defineProperty","obj","key","value","_toPropertyKey","Object","defineProperty","enumerable","configurable","writable","t","i","_toPrimitive","r","e","Symbol","toPrimitive","call","TypeError","String","Number","flattenArray","makeViewDescriptorsSet","adaptViewConfig","updateProps","stopMapper","startMapper","isSharedValue","isInlineStyleTransform","transform","Array","isArray","some","hasInlineStyles","inlinePropsHasChanged","styles1","styles2","keys","length","getInlinePropsUpdate","inlineProps","update","styleValue","entries","map","item","extractSharedValuesMapFromProps","props","styles","style","forEach","styleKey","getInlineStyle","shouldGetInitialStyle","newStyle","InlinePropManager","constructor","attachInlineProps","animatedComponent","viewInfo","newInlineProps","hasChanged","_inlineProps","_inlinePropsViewDescriptors","viewTag","viewName","shadowNodeWrapper","viewConfig","add","tag","name","shareableViewDescriptors","updaterFunction","_inlinePropsMapperId","values","detachInlineProps"],"sources":["InlinePropManager.ts"],"sourcesContent":["'use strict';\nimport type { StyleProps } from '../commonTypes';\nimport type {\n IAnimatedComponentInternal,\n AnimatedComponentProps,\n IInlinePropManager,\n ViewInfo,\n} from './commonTypes';\nimport { flattenArray } from './utils';\nimport { makeViewDescriptorsSet } from '../ViewDescriptorsSet';\nimport type { ViewDescriptorsSet } from '../ViewDescriptorsSet';\nimport { adaptViewConfig } from '../ConfigHelper';\nimport updateProps from '../UpdateProps';\nimport { stopMapper, startMapper } from '../mappers';\nimport { isSharedValue } from '../isSharedValue';\n\nfunction isInlineStyleTransform(transform: unknown): boolean {\n if (!Array.isArray(transform)) {\n return false;\n }\n\n return transform.some((t: Record<string, unknown>) => hasInlineStyles(t));\n}\n\nfunction inlinePropsHasChanged(\n styles1: StyleProps,\n styles2: StyleProps\n): boolean {\n if (Object.keys(styles1).length !== Object.keys(styles2).length) {\n return true;\n }\n\n for (const key of Object.keys(styles1)) {\n if (styles1[key] !== styles2[key]) {\n return true;\n }\n }\n\n return false;\n}\n\nfunction getInlinePropsUpdate(inlineProps: Record<string, unknown>) {\n 'worklet';\n const update: Record<string, unknown> = {};\n for (const [key, styleValue] of Object.entries(inlineProps)) {\n if (isSharedValue(styleValue)) {\n update[key] = styleValue.value;\n } else if (Array.isArray(styleValue)) {\n update[key] = styleValue.map((item) => {\n return getInlinePropsUpdate(item);\n });\n } else if (typeof styleValue === 'object') {\n update[key] = getInlinePropsUpdate(styleValue as Record<string, unknown>);\n } else {\n update[key] = styleValue;\n }\n }\n return update;\n}\n\nfunction extractSharedValuesMapFromProps(\n props: AnimatedComponentProps<\n Record<string, unknown> /* Initial component props */\n >\n): Record<string, unknown> {\n const inlineProps: Record<string, unknown> = {};\n\n for (const key in props) {\n const value = props[key];\n if (key === 'style') {\n const styles = flattenArray<StyleProps>(props.style ?? []);\n styles.forEach((style) => {\n if (!style) {\n return;\n }\n for (const [styleKey, styleValue] of Object.entries(style)) {\n if (isSharedValue(styleValue)) {\n inlineProps[styleKey] = styleValue;\n } else if (\n styleKey === 'transform' &&\n isInlineStyleTransform(styleValue)\n ) {\n inlineProps[styleKey] = styleValue;\n }\n }\n });\n } else if (isSharedValue(value)) {\n inlineProps[key] = value;\n }\n }\n\n return inlineProps;\n}\n\nexport function hasInlineStyles(style: StyleProps): boolean {\n if (!style) {\n return false;\n }\n return Object.keys(style).some((key) => {\n const styleValue = style[key];\n return (\n isSharedValue(styleValue) ||\n (key === 'transform' && isInlineStyleTransform(styleValue))\n );\n });\n}\n\nexport function getInlineStyle(\n style: Record<string, unknown>,\n shouldGetInitialStyle: boolean\n) {\n if (shouldGetInitialStyle) {\n return getInlinePropsUpdate(style);\n }\n const newStyle: StyleProps = {};\n for (const [key, styleValue] of Object.entries(style)) {\n if (\n !isSharedValue(styleValue) &&\n !(key === 'transform' && isInlineStyleTransform(styleValue))\n ) {\n newStyle[key] = styleValue;\n }\n }\n return newStyle;\n}\n\nexport class InlinePropManager implements IInlinePropManager {\n _inlinePropsViewDescriptors: ViewDescriptorsSet | null = null;\n _inlinePropsMapperId: number | null = null;\n _inlineProps: StyleProps = {};\n\n public attachInlineProps(\n animatedComponent: React.Component<unknown, unknown> &\n IAnimatedComponentInternal,\n viewInfo: ViewInfo\n ) {\n const newInlineProps: Record<string, unknown> =\n extractSharedValuesMapFromProps(animatedComponent.props);\n const hasChanged = inlinePropsHasChanged(newInlineProps, this._inlineProps);\n\n if (hasChanged) {\n if (!this._inlinePropsViewDescriptors) {\n this._inlinePropsViewDescriptors = makeViewDescriptorsSet();\n\n const { viewTag, viewName, shadowNodeWrapper, viewConfig } = viewInfo;\n\n if (Object.keys(newInlineProps).length && viewConfig) {\n adaptViewConfig(viewConfig);\n }\n\n this._inlinePropsViewDescriptors.add({\n tag: viewTag as number,\n name: viewName!,\n shadowNodeWrapper: shadowNodeWrapper!,\n });\n }\n const shareableViewDescriptors =\n this._inlinePropsViewDescriptors.shareableViewDescriptors;\n\n const updaterFunction = () => {\n 'worklet';\n const update = getInlinePropsUpdate(newInlineProps);\n updateProps(shareableViewDescriptors, update);\n };\n this._inlineProps = newInlineProps;\n if (this._inlinePropsMapperId) {\n stopMapper(this._inlinePropsMapperId);\n }\n this._inlinePropsMapperId = null;\n if (Object.keys(newInlineProps).length) {\n this._inlinePropsMapperId = startMapper(\n updaterFunction,\n Object.values(newInlineProps)\n );\n }\n }\n }\n\n public detachInlineProps() {\n if (this._inlinePropsMapperId) {\n stopMapper(this._inlinePropsMapperId);\n }\n }\n}\n"],"mappings":"AAAA,YAAY;;AAAC,SAAAA,gBAAAC,GAAA,EAAAC,GAAA,EAAAC,KAAA,IAAAD,GAAA,GAAAE,cAAA,CAAAF,GAAA,OAAAA,GAAA,IAAAD,GAAA,IAAAI,MAAA,CAAAC,cAAA,CAAAL,GAAA,EAAAC,GAAA,IAAAC,KAAA,EAAAA,KAAA,EAAAI,UAAA,QAAAC,YAAA,QAAAC,QAAA,oBAAAR,GAAA,CAAAC,GAAA,IAAAC,KAAA,WAAAF,GAAA;AAAA,SAAAG,eAAAM,CAAA,QAAAC,CAAA,GAAAC,YAAA,CAAAF,CAAA,uCAAAC,CAAA,GAAAA,CAAA,GAAAA,CAAA;AAAA,SAAAC,aAAAF,CAAA,EAAAG,CAAA,2BAAAH,CAAA,KAAAA,CAAA,SAAAA,CAAA,MAAAI,CAAA,GAAAJ,CAAA,CAAAK,MAAA,CAAAC,WAAA,kBAAAF,CAAA,QAAAH,CAAA,GAAAG,CAAA,CAAAG,IAAA,CAAAP,CAAA,EAAAG,CAAA,uCAAAF,CAAA,SAAAA,CAAA,YAAAO,SAAA,yEAAAL,CAAA,GAAAM,MAAA,GAAAC,MAAA,EAAAV,CAAA;AAQb,SAASW,YAAY,QAAQ,SAAS;AACtC,SAASC,sBAAsB,QAAQ,uBAAuB;AAE9D,SAASC,eAAe,QAAQ,iBAAiB;AACjD,OAAOC,WAAW,MAAM,gBAAgB;AACxC,SAASC,UAAU,EAAEC,WAAW,QAAQ,YAAY;AACpD,SAASC,aAAa,QAAQ,kBAAkB;AAEhD,SAASC,sBAAsBA,CAACC,SAAkB,EAAW;EAC3D,IAAI,CAACC,KAAK,CAACC,OAAO,CAACF,SAAS,CAAC,EAAE;IAC7B,OAAO,KAAK;EACd;EAEA,OAAOA,SAAS,CAACG,IAAI,CAAEtB,CAA0B,IAAKuB,eAAe,CAACvB,CAAC,CAAC,CAAC;AAC3E;AAEA,SAASwB,qBAAqBA,CAC5BC,OAAmB,EACnBC,OAAmB,EACV;EACT,IAAI/B,MAAM,CAACgC,IAAI,CAACF,OAAO,CAAC,CAACG,MAAM,KAAKjC,MAAM,CAACgC,IAAI,CAACD,OAAO,CAAC,CAACE,MAAM,EAAE;IAC/D,OAAO,IAAI;EACb;EAEA,KAAK,MAAMpC,GAAG,IAAIG,MAAM,CAACgC,IAAI,CAACF,OAAO,CAAC,EAAE;IACtC,IAAIA,OAAO,CAACjC,GAAG,CAAC,KAAKkC,OAAO,CAAClC,GAAG,CAAC,EAAE;MACjC,OAAO,IAAI;IACb;EACF;EAEA,OAAO,KAAK;AACd;AAEA,SAASqC,oBAAoBA,CAACC,WAAoC,EAAE;EAClE,SAAS;;EACT,MAAMC,MAA+B,GAAG,CAAC,CAAC;EAC1C,KAAK,MAAM,CAACvC,GAAG,EAAEwC,UAAU,CAAC,IAAIrC,MAAM,CAACsC,OAAO,CAACH,WAAW,CAAC,EAAE;IAC3D,IAAIb,aAAa,CAACe,UAAU,CAAC,EAAE;MAC7BD,MAAM,CAACvC,GAAG,CAAC,GAAGwC,UAAU,CAACvC,KAAK;IAChC,CAAC,MAAM,IAAI2B,KAAK,CAACC,OAAO,CAACW,UAAU,CAAC,EAAE;MACpCD,MAAM,CAACvC,GAAG,CAAC,GAAGwC,UAAU,CAACE,GAAG,CAAEC,IAAI,IAAK;QACrC,OAAON,oBAAoB,CAACM,IAAI,CAAC;MACnC,CAAC,CAAC;IACJ,CAAC,MAAM,IAAI,OAAOH,UAAU,KAAK,QAAQ,EAAE;MACzCD,MAAM,CAACvC,GAAG,CAAC,GAAGqC,oBAAoB,CAACG,UAAqC,CAAC;IAC3E,CAAC,MAAM;MACLD,MAAM,CAACvC,GAAG,CAAC,GAAGwC,UAAU;IAC1B;EACF;EACA,OAAOD,MAAM;AACf;AAEA,SAASK,+BAA+BA,CACtCC,KAEC,EACwB;EACzB,MAAMP,WAAoC,GAAG,CAAC,CAAC;EAE/C,KAAK,MAAMtC,GAAG,IAAI6C,KAAK,EAAE;IACvB,MAAM5C,KAAK,GAAG4C,KAAK,CAAC7C,GAAG,CAAC;IACxB,IAAIA,GAAG,KAAK,OAAO,EAAE;MACnB,MAAM8C,MAAM,GAAG3B,YAAY,CAAa0B,KAAK,CAACE,KAAK,IAAI,EAAE,CAAC;MAC1DD,MAAM,CAACE,OAAO,CAAED,KAAK,IAAK;QACxB,IAAI,CAACA,KAAK,EAAE;UACV;QACF;QACA,KAAK,MAAM,CAACE,QAAQ,EAAET,UAAU,CAAC,IAAIrC,MAAM,CAACsC,OAAO,CAACM,KAAK,CAAC,EAAE;UAC1D,IAAItB,aAAa,CAACe,UAAU,CAAC,EAAE;YAC7BF,WAAW,CAACW,QAAQ,CAAC,GAAGT,UAAU;UACpC,CAAC,MAAM,IACLS,QAAQ,KAAK,WAAW,IACxBvB,sBAAsB,CAACc,UAAU,CAAC,EAClC;YACAF,WAAW,CAACW,QAAQ,CAAC,GAAGT,UAAU;UACpC;QACF;MACF,CAAC,CAAC;IACJ,CAAC,MAAM,IAAIf,aAAa,CAACxB,KAAK,CAAC,EAAE;MAC/BqC,WAAW,CAACtC,GAAG,CAAC,GAAGC,KAAK;IAC1B;EACF;EAEA,OAAOqC,WAAW;AACpB;AAEA,OAAO,SAASP,eAAeA,CAACgB,KAAiB,EAAW;EAC1D,IAAI,CAACA,KAAK,EAAE;IACV,OAAO,KAAK;EACd;EACA,OAAO5C,MAAM,CAACgC,IAAI,CAACY,KAAK,CAAC,CAACjB,IAAI,CAAE9B,GAAG,IAAK;IACtC,MAAMwC,UAAU,GAAGO,KAAK,CAAC/C,GAAG,CAAC;IAC7B,OACEyB,aAAa,CAACe,UAAU,CAAC,IACxBxC,GAAG,KAAK,WAAW,IAAI0B,sBAAsB,CAACc,UAAU,CAAE;EAE/D,CAAC,CAAC;AACJ;AAEA,OAAO,SAASU,cAAcA,CAC5BH,KAA8B,EAC9BI,qBAA8B,EAC9B;EACA,IAAIA,qBAAqB,EAAE;IACzB,OAAOd,oBAAoB,CAACU,KAAK,CAAC;EACpC;EACA,MAAMK,QAAoB,GAAG,CAAC,CAAC;EAC/B,KAAK,MAAM,CAACpD,GAAG,EAAEwC,UAAU,CAAC,IAAIrC,MAAM,CAACsC,OAAO,CAACM,KAAK,CAAC,EAAE;IACrD,IACE,CAACtB,aAAa,CAACe,UAAU,CAAC,IAC1B,EAAExC,GAAG,KAAK,WAAW,IAAI0B,sBAAsB,CAACc,UAAU,CAAC,CAAC,EAC5D;MACAY,QAAQ,CAACpD,GAAG,CAAC,GAAGwC,UAAU;IAC5B;EACF;EACA,OAAOY,QAAQ;AACjB;AAEA,OAAO,MAAMC,iBAAiB,CAA+B;EAAAC,YAAA;IAAAxD,eAAA,sCACF,IAAI;IAAAA,eAAA,+BACvB,IAAI;IAAAA,eAAA,uBACf,CAAC,CAAC;EAAA;EAEtByD,iBAAiBA,CACtBC,iBAC4B,EAC5BC,QAAkB,EAClB;IACA,MAAMC,cAAuC,GAC3Cd,+BAA+B,CAACY,iBAAiB,CAACX,KAAK,CAAC;IAC1D,MAAMc,UAAU,GAAG3B,qBAAqB,CAAC0B,cAAc,EAAE,IAAI,CAACE,YAAY,CAAC;IAE3E,IAAID,UAAU,EAAE;MACd,IAAI,CAAC,IAAI,CAACE,2BAA2B,EAAE;QACrC,IAAI,CAACA,2BAA2B,GAAGzC,sBAAsB,CAAC,CAAC;QAE3D,MAAM;UAAE0C,OAAO;UAAEC,QAAQ;UAAEC,iBAAiB;UAAEC;QAAW,CAAC,GAAGR,QAAQ;QAErE,IAAItD,MAAM,CAACgC,IAAI,CAACuB,cAAc,CAAC,CAACtB,MAAM,IAAI6B,UAAU,EAAE;UACpD5C,eAAe,CAAC4C,UAAU,CAAC;QAC7B;QAEA,IAAI,CAACJ,2BAA2B,CAACK,GAAG,CAAC;UACnCC,GAAG,EAAEL,OAAiB;UACtBM,IAAI,EAAEL,QAAS;UACfC,iBAAiB,EAAEA;QACrB,CAAC,CAAC;MACJ;MACA,MAAMK,wBAAwB,GAC5B,IAAI,CAACR,2BAA2B,CAACQ,wBAAwB;MAE3D,MAAMC,eAAe,GAAGA,CAAA,KAAM;QAC5B,SAAS;;QACT,MAAM/B,MAAM,GAAGF,oBAAoB,CAACqB,cAAc,CAAC;QACnDpC,WAAW,CAAC+C,wBAAwB,EAAE9B,MAAM,CAAC;MAC/C,CAAC;MACD,IAAI,CAACqB,YAAY,GAAGF,cAAc;MAClC,IAAI,IAAI,CAACa,oBAAoB,EAAE;QAC7BhD,UAAU,CAAC,IAAI,CAACgD,oBAAoB,CAAC;MACvC;MACA,IAAI,CAACA,oBAAoB,GAAG,IAAI;MAChC,IAAIpE,MAAM,CAACgC,IAAI,CAACuB,cAAc,CAAC,CAACtB,MAAM,EAAE;QACtC,IAAI,CAACmC,oBAAoB,GAAG/C,WAAW,CACrC8C,eAAe,EACfnE,MAAM,CAACqE,MAAM,CAACd,cAAc,CAC9B,CAAC;MACH;IACF;EACF;EAEOe,iBAAiBA,CAAA,EAAG;IACzB,IAAI,IAAI,CAACF,oBAAoB,EAAE;MAC7BhD,UAAU,CAAC,IAAI,CAACgD,oBAAoB,CAAC;IACvC;EACF;AACF","ignoreList":[]}
|
|
@@ -35,10 +35,7 @@ export class PropsFilter {
|
|
|
35
35
|
}
|
|
36
36
|
const processedStyle = styles.map(style => {
|
|
37
37
|
if (style && style.viewDescriptors) {
|
|
38
|
-
var _style$viewsRef;
|
|
39
38
|
// this is how we recognize styles returned by useAnimatedStyle
|
|
40
|
-
// TODO - refactor, since `viewsRef` is only present on Web
|
|
41
|
-
(_style$viewsRef = style.viewsRef) === null || _style$viewsRef === void 0 || _style$viewsRef.add(component);
|
|
42
39
|
if (this._requiresNewInitials) {
|
|
43
40
|
this._initialStyle = {
|
|
44
41
|
...style.initial.value,
|
|
@@ -58,10 +55,8 @@ export class PropsFilter {
|
|
|
58
55
|
const animatedProp = inputProps.animatedProps;
|
|
59
56
|
if (animatedProp.initial !== undefined) {
|
|
60
57
|
Object.keys(animatedProp.initial.value).forEach(initialValueKey => {
|
|
61
|
-
var _animatedProp$initial
|
|
58
|
+
var _animatedProp$initial;
|
|
62
59
|
props[initialValueKey] = (_animatedProp$initial = animatedProp.initial) === null || _animatedProp$initial === void 0 ? void 0 : _animatedProp$initial.value[initialValueKey];
|
|
63
|
-
// TODO - refacotr, since `viewsRef` is only present on Web
|
|
64
|
-
(_animatedProp$viewsRe = animatedProp.viewsRef) === null || _animatedProp$viewsRe === void 0 || _animatedProp$viewsRe.add(component);
|
|
65
60
|
});
|
|
66
61
|
}
|
|
67
62
|
} else if (has('workletEventHandler', value) && value.workletEventHandler instanceof WorkletEventHandler) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_defineProperty","obj","key","value","_toPropertyKey","Object","defineProperty","enumerable","configurable","writable","t","i","_toPrimitive","r","e","Symbol","toPrimitive","call","TypeError","String","Number","shallowEqual","isSharedValue","isChromeDebugger","WorkletEventHandler","initialUpdaterRun","hasInlineStyles","getInlineStyle","flattenArray","has","StyleSheet","dummyListener","PropsFilter","constructor","filterNonAnimatedProps","component","inputProps","props","_maybePrepareForNewInitials","styleProp","style","styles","_requiresNewInitials","_initialStyle","processedStyle","map","viewDescriptors","
|
|
1
|
+
{"version":3,"names":["_defineProperty","obj","key","value","_toPropertyKey","Object","defineProperty","enumerable","configurable","writable","t","i","_toPrimitive","r","e","Symbol","toPrimitive","call","TypeError","String","Number","shallowEqual","isSharedValue","isChromeDebugger","WorkletEventHandler","initialUpdaterRun","hasInlineStyles","getInlineStyle","flattenArray","has","StyleSheet","dummyListener","PropsFilter","constructor","filterNonAnimatedProps","component","inputProps","props","_maybePrepareForNewInitials","styleProp","style","styles","_requiresNewInitials","_initialStyle","processedStyle","map","viewDescriptors","initial","updater","flatten","animatedProp","animatedProps","undefined","keys","forEach","initialValueKey","_animatedProp$initial","workletEventHandler","eventNames","length","eventName","listeners","_previousProps"],"sources":["PropsFilter.tsx"],"sourcesContent":["'use strict';\n\nimport { shallowEqual } from '../hook/utils';\nimport type { StyleProps } from '../commonTypes';\nimport { isSharedValue } from '../isSharedValue';\nimport { isChromeDebugger } from '../PlatformChecker';\nimport { WorkletEventHandler } from '../WorkletEventHandler';\nimport { initialUpdaterRun } from '../animation';\nimport { hasInlineStyles, getInlineStyle } from './InlinePropManager';\nimport type {\n AnimatedComponentProps,\n AnimatedProps,\n InitialComponentProps,\n IAnimatedComponentInternal,\n IPropsFilter,\n} from './commonTypes';\nimport { flattenArray, has } from './utils';\nimport { StyleSheet } from 'react-native';\n\nfunction dummyListener() {\n // empty listener we use to assign to listener properties for which animated\n // event is used.\n}\n\nexport class PropsFilter implements IPropsFilter {\n private _initialStyle = {};\n private _previousProps: React.Component['props'] | null = null;\n private _requiresNewInitials = true;\n\n public filterNonAnimatedProps(\n component: React.Component<unknown, unknown> & IAnimatedComponentInternal\n ): Record<string, unknown> {\n const inputProps =\n component.props as AnimatedComponentProps<InitialComponentProps>;\n\n this._maybePrepareForNewInitials(inputProps);\n\n const props: Record<string, unknown> = {};\n for (const key in inputProps) {\n const value = inputProps[key];\n if (key === 'style') {\n const styleProp = inputProps.style;\n const styles = flattenArray<StyleProps>(styleProp ?? []);\n if (this._requiresNewInitials) {\n this._initialStyle = {};\n }\n const processedStyle: StyleProps = styles.map((style) => {\n if (style && style.viewDescriptors) {\n // this is how we recognize styles returned by useAnimatedStyle\n if (this._requiresNewInitials) {\n this._initialStyle = {\n ...style.initial.value,\n ...this._initialStyle,\n ...initialUpdaterRun<StyleProps>(style.initial.updater),\n };\n }\n return this._initialStyle;\n } else if (hasInlineStyles(style)) {\n return getInlineStyle(style, this._requiresNewInitials);\n } else {\n return style;\n }\n });\n props[key] = StyleSheet.flatten(processedStyle);\n } else if (key === 'animatedProps') {\n const animatedProp = inputProps.animatedProps as Partial<\n AnimatedComponentProps<AnimatedProps>\n >;\n if (animatedProp.initial !== undefined) {\n Object.keys(animatedProp.initial.value).forEach((initialValueKey) => {\n props[initialValueKey] =\n animatedProp.initial?.value[initialValueKey];\n });\n }\n } else if (\n has('workletEventHandler', value) &&\n value.workletEventHandler instanceof WorkletEventHandler\n ) {\n if (value.workletEventHandler.eventNames.length > 0) {\n value.workletEventHandler.eventNames.forEach((eventName) => {\n props[eventName] = has('listeners', value.workletEventHandler)\n ? (\n value.workletEventHandler.listeners as Record<string, unknown>\n )[eventName]\n : dummyListener;\n });\n } else {\n props[key] = dummyListener;\n }\n } else if (isSharedValue(value)) {\n if (this._requiresNewInitials) {\n props[key] = value.value;\n }\n } else if (key !== 'onGestureHandlerStateChange' || !isChromeDebugger()) {\n props[key] = value;\n }\n }\n this._requiresNewInitials = false;\n return props;\n }\n\n private _maybePrepareForNewInitials(\n inputProps: AnimatedComponentProps<InitialComponentProps>\n ) {\n if (this._previousProps && inputProps.style) {\n this._requiresNewInitials = !shallowEqual(\n this._previousProps,\n inputProps\n );\n }\n this._previousProps = inputProps;\n }\n}\n"],"mappings":"AAAA,YAAY;;AAAC,SAAAA,gBAAAC,GAAA,EAAAC,GAAA,EAAAC,KAAA,IAAAD,GAAA,GAAAE,cAAA,CAAAF,GAAA,OAAAA,GAAA,IAAAD,GAAA,IAAAI,MAAA,CAAAC,cAAA,CAAAL,GAAA,EAAAC,GAAA,IAAAC,KAAA,EAAAA,KAAA,EAAAI,UAAA,QAAAC,YAAA,QAAAC,QAAA,oBAAAR,GAAA,CAAAC,GAAA,IAAAC,KAAA,WAAAF,GAAA;AAAA,SAAAG,eAAAM,CAAA,QAAAC,CAAA,GAAAC,YAAA,CAAAF,CAAA,uCAAAC,CAAA,GAAAA,CAAA,GAAAA,CAAA;AAAA,SAAAC,aAAAF,CAAA,EAAAG,CAAA,2BAAAH,CAAA,KAAAA,CAAA,SAAAA,CAAA,MAAAI,CAAA,GAAAJ,CAAA,CAAAK,MAAA,CAAAC,WAAA,kBAAAF,CAAA,QAAAH,CAAA,GAAAG,CAAA,CAAAG,IAAA,CAAAP,CAAA,EAAAG,CAAA,uCAAAF,CAAA,SAAAA,CAAA,YAAAO,SAAA,yEAAAL,CAAA,GAAAM,MAAA,GAAAC,MAAA,EAAAV,CAAA;AAEb,SAASW,YAAY,QAAQ,eAAe;AAE5C,SAASC,aAAa,QAAQ,kBAAkB;AAChD,SAASC,gBAAgB,QAAQ,oBAAoB;AACrD,SAASC,mBAAmB,QAAQ,wBAAwB;AAC5D,SAASC,iBAAiB,QAAQ,cAAc;AAChD,SAASC,eAAe,EAAEC,cAAc,QAAQ,qBAAqB;AAQrE,SAASC,YAAY,EAAEC,GAAG,QAAQ,SAAS;AAC3C,SAASC,UAAU,QAAQ,cAAc;AAEzC,SAASC,aAAaA,CAAA,EAAG;EACvB;EACA;AAAA;AAGF,OAAO,MAAMC,WAAW,CAAyB;EAAAC,YAAA;IAAAjC,eAAA,wBACvB,CAAC,CAAC;IAAAA,eAAA,yBACgC,IAAI;IAAAA,eAAA,+BAC/B,IAAI;EAAA;EAE5BkC,sBAAsBA,CAC3BC,SAAyE,EAChD;IACzB,MAAMC,UAAU,GACdD,SAAS,CAACE,KAAsD;IAElE,IAAI,CAACC,2BAA2B,CAACF,UAAU,CAAC;IAE5C,MAAMC,KAA8B,GAAG,CAAC,CAAC;IACzC,KAAK,MAAMnC,GAAG,IAAIkC,UAAU,EAAE;MAC5B,MAAMjC,KAAK,GAAGiC,UAAU,CAAClC,GAAG,CAAC;MAC7B,IAAIA,GAAG,KAAK,OAAO,EAAE;QACnB,MAAMqC,SAAS,GAAGH,UAAU,CAACI,KAAK;QAClC,MAAMC,MAAM,GAAGb,YAAY,CAAaW,SAAS,IAAI,EAAE,CAAC;QACxD,IAAI,IAAI,CAACG,oBAAoB,EAAE;UAC7B,IAAI,CAACC,aAAa,GAAG,CAAC,CAAC;QACzB;QACA,MAAMC,cAA0B,GAAGH,MAAM,CAACI,GAAG,CAAEL,KAAK,IAAK;UACvD,IAAIA,KAAK,IAAIA,KAAK,CAACM,eAAe,EAAE;YAClC;YACA,IAAI,IAAI,CAACJ,oBAAoB,EAAE;cAC7B,IAAI,CAACC,aAAa,GAAG;gBACnB,GAAGH,KAAK,CAACO,OAAO,CAAC5C,KAAK;gBACtB,GAAG,IAAI,CAACwC,aAAa;gBACrB,GAAGlB,iBAAiB,CAAae,KAAK,CAACO,OAAO,CAACC,OAAO;cACxD,CAAC;YACH;YACA,OAAO,IAAI,CAACL,aAAa;UAC3B,CAAC,MAAM,IAAIjB,eAAe,CAACc,KAAK,CAAC,EAAE;YACjC,OAAOb,cAAc,CAACa,KAAK,EAAE,IAAI,CAACE,oBAAoB,CAAC;UACzD,CAAC,MAAM;YACL,OAAOF,KAAK;UACd;QACF,CAAC,CAAC;QACFH,KAAK,CAACnC,GAAG,CAAC,GAAG4B,UAAU,CAACmB,OAAO,CAACL,cAAc,CAAC;MACjD,CAAC,MAAM,IAAI1C,GAAG,KAAK,eAAe,EAAE;QAClC,MAAMgD,YAAY,GAAGd,UAAU,CAACe,aAE/B;QACD,IAAID,YAAY,CAACH,OAAO,KAAKK,SAAS,EAAE;UACtC/C,MAAM,CAACgD,IAAI,CAACH,YAAY,CAACH,OAAO,CAAC5C,KAAK,CAAC,CAACmD,OAAO,CAAEC,eAAe,IAAK;YAAA,IAAAC,qBAAA;YACnEnB,KAAK,CAACkB,eAAe,CAAC,IAAAC,qBAAA,GACpBN,YAAY,CAACH,OAAO,cAAAS,qBAAA,uBAApBA,qBAAA,CAAsBrD,KAAK,CAACoD,eAAe,CAAC;UAChD,CAAC,CAAC;QACJ;MACF,CAAC,MAAM,IACL1B,GAAG,CAAC,qBAAqB,EAAE1B,KAAK,CAAC,IACjCA,KAAK,CAACsD,mBAAmB,YAAYjC,mBAAmB,EACxD;QACA,IAAIrB,KAAK,CAACsD,mBAAmB,CAACC,UAAU,CAACC,MAAM,GAAG,CAAC,EAAE;UACnDxD,KAAK,CAACsD,mBAAmB,CAACC,UAAU,CAACJ,OAAO,CAAEM,SAAS,IAAK;YAC1DvB,KAAK,CAACuB,SAAS,CAAC,GAAG/B,GAAG,CAAC,WAAW,EAAE1B,KAAK,CAACsD,mBAAmB,CAAC,GAExDtD,KAAK,CAACsD,mBAAmB,CAACI,SAAS,CACnCD,SAAS,CAAC,GACZ7B,aAAa;UACnB,CAAC,CAAC;QACJ,CAAC,MAAM;UACLM,KAAK,CAACnC,GAAG,CAAC,GAAG6B,aAAa;QAC5B;MACF,CAAC,MAAM,IAAIT,aAAa,CAACnB,KAAK,CAAC,EAAE;QAC/B,IAAI,IAAI,CAACuC,oBAAoB,EAAE;UAC7BL,KAAK,CAACnC,GAAG,CAAC,GAAGC,KAAK,CAACA,KAAK;QAC1B;MACF,CAAC,MAAM,IAAID,GAAG,KAAK,6BAA6B,IAAI,CAACqB,gBAAgB,CAAC,CAAC,EAAE;QACvEc,KAAK,CAACnC,GAAG,CAAC,GAAGC,KAAK;MACpB;IACF;IACA,IAAI,CAACuC,oBAAoB,GAAG,KAAK;IACjC,OAAOL,KAAK;EACd;EAEQC,2BAA2BA,CACjCF,UAAyD,EACzD;IACA,IAAI,IAAI,CAAC0B,cAAc,IAAI1B,UAAU,CAACI,KAAK,EAAE;MAC3C,IAAI,CAACE,oBAAoB,GAAG,CAACrB,YAAY,CACvC,IAAI,CAACyC,cAAc,EACnB1B,UACF,CAAC;IACH;IACA,IAAI,CAAC0B,cAAc,GAAG1B,UAAU;EAClC;AACF","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":[],"sources":["commonTypes.ts"],"sourcesContent":["'use strict';\nimport type { Ref, Component } from 'react';\nimport type {\n ShadowNodeWrapper,\n SharedValue,\n StyleProps,\n} from '../commonTypes';\nimport type { ViewConfig } from '../ConfigHelper';\nimport type { ViewDescriptorsSet
|
|
1
|
+
{"version":3,"names":[],"sources":["commonTypes.ts"],"sourcesContent":["'use strict';\nimport type { Ref, Component } from 'react';\nimport type {\n ShadowNodeWrapper,\n SharedValue,\n StyleProps,\n} from '../commonTypes';\nimport type { ViewConfig } from '../ConfigHelper';\nimport type { ViewDescriptorsSet } from '../ViewDescriptorsSet';\nimport type {\n BaseAnimationBuilder,\n EntryExitAnimationFunction,\n ILayoutAnimationBuilder,\n SharedTransition,\n} from '../layoutReanimation';\nimport type { SkipEnteringContext } from '../component/LayoutAnimationConfig';\n\nexport interface AnimatedProps extends Record<string, unknown> {\n viewDescriptors?: ViewDescriptorsSet;\n initial?: SharedValue<StyleProps>;\n}\n\nexport interface ViewInfo {\n viewTag: number | HTMLElement | null;\n viewName: string | null;\n shadowNodeWrapper: ShadowNodeWrapper | null;\n viewConfig: ViewConfig;\n}\n\nexport interface IInlinePropManager {\n attachInlineProps(\n animatedComponent: React.Component<unknown, unknown>,\n viewInfo: ViewInfo\n ): void;\n detachInlineProps(): void;\n}\n\nexport interface IPropsFilter {\n filterNonAnimatedProps: (\n component: React.Component<unknown, unknown> & IAnimatedComponentInternal\n ) => Record<string, unknown>;\n}\n\nexport interface IJSPropsUpdater {\n addOnJSPropsChangeListener(\n animatedComponent: React.Component<unknown, unknown> &\n IAnimatedComponentInternal\n ): void;\n removeOnJSPropsChangeListener(\n animatedComponent: React.Component<unknown, unknown> &\n IAnimatedComponentInternal\n ): void;\n}\n\nexport interface INativeEventsManager {\n attachEvents(): void;\n detachEvents(): void;\n updateEvents(prevProps: AnimatedComponentProps<InitialComponentProps>): void;\n}\n\nexport type LayoutAnimationStaticContext = {\n presetName: string;\n};\n\nexport type AnimatedComponentProps<P extends Record<string, unknown>> = P & {\n forwardedRef?: Ref<Component>;\n style?: NestedArray<StyleProps>;\n animatedProps?: Partial<AnimatedComponentProps<AnimatedProps>>;\n animatedStyle?: StyleProps;\n layout?: (\n | BaseAnimationBuilder\n | ILayoutAnimationBuilder\n | typeof BaseAnimationBuilder\n ) &\n LayoutAnimationStaticContext;\n entering?: (\n | BaseAnimationBuilder\n | typeof BaseAnimationBuilder\n | EntryExitAnimationFunction\n | Keyframe\n ) &\n LayoutAnimationStaticContext;\n exiting?: (\n | BaseAnimationBuilder\n | typeof BaseAnimationBuilder\n | EntryExitAnimationFunction\n | Keyframe\n ) &\n LayoutAnimationStaticContext;\n sharedTransitionTag?: string;\n sharedTransitionStyle?: SharedTransition;\n};\n\nexport interface AnimatedComponentRef extends Component {\n setNativeProps?: (props: Record<string, unknown>) => void;\n getScrollableNode?: () => AnimatedComponentRef;\n getAnimatableRef?: () => AnimatedComponentRef;\n}\n\nexport interface IAnimatedComponentInternal {\n _styles: StyleProps[] | null;\n _animatedProps?: Partial<AnimatedComponentProps<AnimatedProps>>;\n /**\n * Used for Shared Element Transitions, Layout Animations and Animated Styles. It is not related to event handling.\n */\n _componentViewTag: number;\n _isFirstRender: boolean;\n jestAnimatedStyle: { value: StyleProps };\n _component: AnimatedComponentRef | HTMLElement | null;\n _sharedElementTransition: SharedTransition | null;\n _jsPropsUpdater: IJSPropsUpdater;\n _InlinePropManager: IInlinePropManager;\n _PropsFilter: IPropsFilter;\n /**\n * Doesn't exist on web.\n */\n _NativeEventsManager?: INativeEventsManager;\n _viewInfo?: ViewInfo;\n context: React.ContextType<typeof SkipEnteringContext>;\n}\n\nexport type NestedArray<T> = T | NestedArray<T>[];\n\nexport interface InitialComponentProps extends Record<string, unknown> {\n ref?: Ref<Component>;\n collapsable?: boolean;\n}\n"],"mappings":"AAAA,YAAY;;AAAC","ignoreList":[]}
|
|
@@ -176,11 +176,7 @@ export function createAnimatedComponent(Component, options) {
|
|
|
176
176
|
return this._getViewInfo().viewTag;
|
|
177
177
|
}
|
|
178
178
|
_detachStyles() {
|
|
179
|
-
if (
|
|
180
|
-
for (const style of this._styles) {
|
|
181
|
-
style.viewsRef.remove(this);
|
|
182
|
-
}
|
|
183
|
-
} else if (this._componentViewTag !== -1 && this._styles !== null) {
|
|
179
|
+
if (this._componentViewTag !== -1 && this._styles !== null) {
|
|
184
180
|
var _this$props$animatedP;
|
|
185
181
|
for (const style of this._styles) {
|
|
186
182
|
style.viewDescriptors.remove(this._componentViewTag);
|