axelra-ag / react-native-animateable-text

🆎 A fork of React Native's <Text/> component that supports Animated Values!
https://www.npmjs.com/package/react-native-animateable-text
MIT License
354 stars 27 forks source link

[Android] v0.12.0 incompatible with either Expo SDK51 or react-native 0.74.1 #49

Open RRaideRR opened 3 months ago

RRaideRR commented 3 months ago

I just tried out the latest version of Expo SDK 51 with react-native 0.74.1 and react-native-animateable-text. During the build process on Android npx expo run:android, I receive the following error:

> Task :react-native-animateable-text:compileDebugJavaWithJavac FAILED
/Users/philipp/WebstormProjects/expo-sdk-51/node_modules/react-native-animateable-text/android/src/main/java/com/reactnativereanimatedtext/JBTextShadowNode.java:37: error: cannot find symbol
import com.facebook.react.views.text.ReactAbsoluteSizeSpan;
                                    ^
  symbol:   class ReactAbsoluteSizeSpan
  location: package com.facebook.react.views.text
/Users/philipp/WebstormProjects/expo-sdk-51/node_modules/react-native-animateable-text/android/src/main/java/com/reactnativereanimatedtext/JBTextShadowNode.java:40: error: cannot find symbol
import com.facebook.react.views.text.TextInlineViewPlaceholderSpan;
                                    ^
  symbol:   class TextInlineViewPlaceholderSpan
  location: package com.facebook.react.views.text
/Users/philipp/WebstormProjects/expo-sdk-51/node_modules/react-native-animateable-text/android/src/main/java/com/reactnativereanimatedtext/JBBaseTextShadowNode.java:31: error: cannot find symbol
import com.facebook.react.views.text.CustomLetterSpacingSpan;
                                    ^
  symbol:   class CustomLetterSpacingSpan
  location: package com.facebook.react.views.text
/Users/philipp/WebstormProjects/expo-sdk-51/node_modules/react-native-animateable-text/android/src/main/java/com/reactnativereanimatedtext/JBBaseTextShadowNode.java:32: error: cannot find symbol
import com.facebook.react.views.text.CustomStyleSpan;
                                    ^
  symbol:   class CustomStyleSpan
  location: package com.facebook.react.views.text
/Users/philipp/WebstormProjects/expo-sdk-51/node_modules/react-native-animateable-text/android/src/main/java/com/reactnativereanimatedtext/JBBaseTextShadowNode.java:33: error: cannot find symbol
import com.facebook.react.views.text.ReactAbsoluteSizeSpan;
                                    ^
  symbol:   class ReactAbsoluteSizeSpan
  location: package com.facebook.react.views.text
/Users/philipp/WebstormProjects/expo-sdk-51/node_modules/react-native-animateable-text/android/src/main/java/com/reactnativereanimatedtext/JBBaseTextShadowNode.java:34: error: cannot find symbol
import com.facebook.react.views.text.ReactBackgroundColorSpan;
                                    ^
  symbol:   class ReactBackgroundColorSpan
  location: package com.facebook.react.views.text
/Users/philipp/WebstormProjects/expo-sdk-51/node_modules/react-native-animateable-text/android/src/main/java/com/reactnativereanimatedtext/JBBaseTextShadowNode.java:35: error: cannot find symbol
import com.facebook.react.views.text.ReactForegroundColorSpan;
                                    ^
  symbol:   class ReactForegroundColorSpan
  location: package com.facebook.react.views.text
/Users/philipp/WebstormProjects/expo-sdk-51/node_modules/react-native-animateable-text/android/src/main/java/com/reactnativereanimatedtext/JBBaseTextShadowNode.java:37: error: cannot find symbol
import com.facebook.react.views.text.ReactSpan;
                                    ^
  symbol:   class ReactSpan
  location: package com.facebook.react.views.text
/Users/philipp/WebstormProjects/expo-sdk-51/node_modules/react-native-animateable-text/android/src/main/java/com/reactnativereanimatedtext/JBBaseTextShadowNode.java:38: error: cannot find symbol
import com.facebook.react.views.text.ReactStrikethroughSpan;
                                    ^
  symbol:   class ReactStrikethroughSpan
  location: package com.facebook.react.views.text
/Users/philipp/WebstormProjects/expo-sdk-51/node_modules/react-native-animateable-text/android/src/main/java/com/reactnativereanimatedtext/JBBaseTextShadowNode.java:39: error: cannot find symbol
import com.facebook.react.views.text.ReactTagSpan;
                                    ^
  symbol:   class ReactTagSpan
  location: package com.facebook.react.views.text
/Users/philipp/WebstormProjects/expo-sdk-51/node_modules/react-native-animateable-text/android/src/main/java/com/reactnativereanimatedtext/JBBaseTextShadowNode.java:40: error: cannot find symbol
import com.facebook.react.views.text.ReactTextInlineImageShadowNode;
                                    ^
  symbol:   class ReactTextInlineImageShadowNode
  location: package com.facebook.react.views.text
/Users/philipp/WebstormProjects/expo-sdk-51/node_modules/react-native-animateable-text/android/src/main/java/com/reactnativereanimatedtext/JBBaseTextShadowNode.java:43: error: cannot find symbol
import com.facebook.react.views.text.ReactUnderlineSpan;
                                    ^
  symbol:   class ReactUnderlineSpan
  location: package com.facebook.react.views.text
/Users/philipp/WebstormProjects/expo-sdk-51/node_modules/react-native-animateable-text/android/src/main/java/com/reactnativereanimatedtext/JBBaseTextShadowNode.java:44: error: cannot find symbol
import com.facebook.react.views.text.ShadowStyleSpan;
                                    ^
  symbol:   class ShadowStyleSpan
  location: package com.facebook.react.views.text
/Users/philipp/WebstormProjects/expo-sdk-51/node_modules/react-native-animateable-text/android/src/main/java/com/reactnativereanimatedtext/JBBaseTextShadowNode.java:46: error: cannot find symbol
import com.facebook.react.views.text.TextInlineImageSpan;
                                    ^
  symbol:   class TextInlineImageSpan
  location: package com.facebook.react.views.text
/Users/philipp/WebstormProjects/expo-sdk-51/node_modules/react-native-animateable-text/android/src/main/java/com/reactnativereanimatedtext/JBBaseTextShadowNode.java:47: error: cannot find symbol
import com.facebook.react.views.text.TextInlineViewPlaceholderSpan;
                                    ^
  symbol:   class TextInlineViewPlaceholderSpan
  location: package com.facebook.react.views.text
/Users/philipp/WebstormProjects/expo-sdk-51/node_modules/react-native-animateable-text/android/src/main/java/com/reactnativereanimatedtext/JBBaseTextShadowNode.java:90: error: cannot find symbol
    protected ReactSpan what;
              ^
  symbol:   class ReactSpan
  location: class SetSpanOperation
/Users/philipp/WebstormProjects/expo-sdk-51/node_modules/react-native-animateable-text/android/src/main/java/com/reactnativereanimatedtext/JBBaseTextShadowNode.java:92: error: cannot find symbol
    SetSpanOperation(int start, int end, ReactSpan what) {
                                         ^
  symbol:   class ReactSpan
  location: class SetSpanOperation
/Users/philipp/WebstormProjects/expo-sdk-51/node_modules/react-native-animateable-text/android/src/main/java/com/reactnativereanimatedtext/JBTextViewManager.java:32: error: cannot find symbol
import com.facebook.react.views.text.TextInlineImageSpan;
                                    ^
  symbol:   class TextInlineImageSpan
  location: package com.facebook.react.views.text
/Users/philipp/WebstormProjects/expo-sdk-51/node_modules/react-native-animateable-text/android/src/main/java/com/reactnativereanimatedtext/CustomLineHeightSpan.java:13: error: cannot find symbol
import com.facebook.react.views.text.ReactSpan;
                                    ^
  symbol:   class ReactSpan
  location: package com.facebook.react.views.text
/Users/philipp/WebstormProjects/expo-sdk-51/node_modules/react-native-animateable-text/android/src/main/java/com/reactnativereanimatedtext/CustomLineHeightSpan.java:19: error: cannot find symbol
public class CustomLineHeightSpan implements LineHeightSpan, ReactSpan {
                                                             ^
  symbol: class ReactSpan
/Users/philipp/WebstormProjects/expo-sdk-51/node_modules/react-native-animateable-text/android/src/main/java/com/reactnativereanimatedtext/JBBaseTextShadowNode.java:138: error: cannot find symbol
          new SetSpanOperation(start, end, new ReactForegroundColorSpan(textShadowNode.mColor)));
                                               ^
  symbol:   class ReactForegroundColorSpan
  location: class JBBaseTextShadowNode
/Users/philipp/WebstormProjects/expo-sdk-51/node_modules/react-native-animateable-text/android/src/main/java/com/reactnativereanimatedtext/JBBaseTextShadowNode.java:143: error: cannot find symbol
            start, end, new ReactBackgroundColorSpan(textShadowNode.mBackgroundColor)));
                            ^
  symbol:   class ReactBackgroundColorSpan
  location: class JBBaseTextShadowNode
/Users/philipp/WebstormProjects/expo-sdk-51/node_modules/react-native-animateable-text/android/src/main/java/com/reactnativereanimatedtext/JBBaseTextShadowNode.java:152: error: cannot find symbol
              start, end, new CustomLetterSpacingSpan(effectiveLetterSpacing)));
                              ^
  symbol:   class CustomLetterSpacingSpan
  location: class JBBaseTextShadowNode
/Users/philipp/WebstormProjects/expo-sdk-51/node_modules/react-native-animateable-text/android/src/main/java/com/reactnativereanimatedtext/JBBaseTextShadowNode.java:160: error: cannot find symbol
        ops.add(new SetSpanOperation(start, end, new ReactAbsoluteSizeSpan(effectiveFontSize)));
                                                     ^
  symbol:   class ReactAbsoluteSizeSpan
  location: class JBBaseTextShadowNode
/Users/philipp/WebstormProjects/expo-sdk-51/node_modules/react-native-animateable-text/android/src/main/java/com/reactnativereanimatedtext/JBBaseTextShadowNode.java:169: error: cannot find symbol
            new CustomStyleSpan(
                ^
  symbol:   class CustomStyleSpan
  location: class JBBaseTextShadowNode
/Users/philipp/WebstormProjects/expo-sdk-51/node_modules/react-native-animateable-text/android/src/main/java/com/reactnativereanimatedtext/JBBaseTextShadowNode.java:177: error: cannot find symbol
        ops.add(new SetSpanOperation(start, end, new ReactUnderlineSpan()));
                                                     ^
  symbol:   class ReactUnderlineSpan
  location: class JBBaseTextShadowNode
/Users/philipp/WebstormProjects/expo-sdk-51/node_modules/react-native-animateable-text/android/src/main/java/com/reactnativereanimatedtext/JBBaseTextShadowNode.java:180: error: cannot find symbol
        ops.add(new SetSpanOperation(start, end, new ReactStrikethroughSpan()));
                                                     ^
  symbol:   class ReactStrikethroughSpan
  location: class JBBaseTextShadowNode
/Users/philipp/WebstormProjects/expo-sdk-51/node_modules/react-native-animateable-text/android/src/main/java/com/reactnativereanimatedtext/JBBaseTextShadowNode.java:190: error: cannot find symbol
            new ShadowStyleSpan(
                ^
  symbol:   class ShadowStyleSpan
  location: class JBBaseTextShadowNode
/Users/philipp/WebstormProjects/expo-sdk-51/node_modules/react-native-animateable-text/android/src/main/java/com/reactnativereanimatedtext/JBBaseTextShadowNode.java:202: error: cannot find symbol
      ops.add(new SetSpanOperation(start, end, new ReactTagSpan(textShadowNode.getReactTag())));
                                                   ^
  symbol:   class ReactTagSpan
  location: class JBBaseTextShadowNode
/Users/philipp/WebstormProjects/expo-sdk-51/node_modules/react-native-animateable-text/android/src/main/java/com/reactnativereanimatedtext/JBBaseTextShadowNode.java:242: error: cannot find symbol
      boolean isInlineImage = op.what instanceof TextInlineImageSpan;
                                                 ^
  symbol:   class TextInlineImageSpan
  location: class JBBaseTextShadowNode
/Users/philipp/WebstormProjects/expo-sdk-51/node_modules/react-native-animateable-text/android/src/main/java/com/reactnativereanimatedtext/JBBaseTextShadowNode.java:243: error: cannot find symbol
      if (isInlineImage || op.what instanceof TextInlineViewPlaceholderSpan) {
                                              ^
  symbol:   class TextInlineViewPlaceholderSpan
  location: class JBBaseTextShadowNode
/Users/philipp/WebstormProjects/expo-sdk-51/node_modules/react-native-animateable-text/android/src/main/java/com/reactnativereanimatedtext/JBBaseTextShadowNode.java:246: error: cannot find symbol
          height = ((TextInlineImageSpan) op.what).getHeight();
                     ^
  symbol:   class TextInlineImageSpan
  location: class JBBaseTextShadowNode
/Users/philipp/WebstormProjects/expo-sdk-51/node_modules/react-native-animateable-text/android/src/main/java/com/reactnativereanimatedtext/JBBaseTextShadowNode.java:249: error: cannot find symbol
          TextInlineViewPlaceholderSpan placeholder = (TextInlineViewPlaceholderSpan) op.what;
          ^
  symbol:   class TextInlineViewPlaceholderSpan
  location: class JBBaseTextShadowNode
/Users/philipp/WebstormProjects/expo-sdk-51/node_modules/react-native-animateable-text/android/src/main/java/com/reactnativereanimatedtext/JBBaseTextShadowNode.java:249: error: cannot find symbol
          TextInlineViewPlaceholderSpan placeholder = (TextInlineViewPlaceholderSpan) op.what;
                                                       ^
  symbol:   class TextInlineViewPlaceholderSpan
  location: class JBBaseTextShadowNode
/Users/philipp/WebstormProjects/expo-sdk-51/node_modules/react-native-animateable-text/android/src/main/java/com/reactnativereanimatedtext/JBTextShadowNode.java:97: error: cannot find symbol
            ReactAbsoluteSizeSpan[] sizeSpans =
            ^
  symbol: class ReactAbsoluteSizeSpan
/Users/philipp/WebstormProjects/expo-sdk-51/node_modules/react-native-animateable-text/android/src/main/java/com/reactnativereanimatedtext/JBTextShadowNode.java:98: error: cannot find symbol
              text.getSpans(0, text.length(), ReactAbsoluteSizeSpan.class);
                                              ^
  symbol: class ReactAbsoluteSizeSpan
/Users/philipp/WebstormProjects/expo-sdk-51/node_modules/react-native-animateable-text/android/src/main/java/com/reactnativereanimatedtext/JBTextShadowNode.java:99: error: cannot find symbol
            for (ReactAbsoluteSizeSpan span : sizeSpans) {
                 ^
  symbol: class ReactAbsoluteSizeSpan
/Users/philipp/WebstormProjects/expo-sdk-51/node_modules/react-native-animateable-text/android/src/main/java/com/reactnativereanimatedtext/JBTextShadowNode.java:101: error: cannot find symbol
                new ReactAbsoluteSizeSpan(
                    ^
  symbol: class ReactAbsoluteSizeSpan
/Users/philipp/WebstormProjects/expo-sdk-51/node_modules/react-native-animateable-text/android/src/main/java/com/reactnativereanimatedtext/JBTextShadowNode.java:320: error: cannot find symbol
    TextInlineViewPlaceholderSpan[] placeholders =
    ^
  symbol:   class TextInlineViewPlaceholderSpan
  location: class JBTextShadowNode
/Users/philipp/WebstormProjects/expo-sdk-51/node_modules/react-native-animateable-text/android/src/main/java/com/reactnativereanimatedtext/JBTextShadowNode.java:321: error: cannot find symbol
      text.getSpans(0, text.length(), TextInlineViewPlaceholderSpan.class);
                                      ^
  symbol:   class TextInlineViewPlaceholderSpan
  location: class JBTextShadowNode
/Users/philipp/WebstormProjects/expo-sdk-51/node_modules/react-native-animateable-text/android/src/main/java/com/reactnativereanimatedtext/JBTextShadowNode.java:324: error: cannot find symbol
    for (TextInlineViewPlaceholderSpan placeholder : placeholders) {
         ^
  symbol:   class TextInlineViewPlaceholderSpan
  location: class JBTextShadowNode
/Users/philipp/WebstormProjects/expo-sdk-51/node_modules/react-native-animateable-text/android/src/main/java/com/reactnativereanimatedtext/JBTextViewManager.java:65: error: cannot find symbol
      TextInlineImageSpan.possiblyUpdateInlineImageSpans(spannable, view);
      ^
  symbol:   variable TextInlineImageSpan
  location: class JBTextViewManager
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: Some input files use unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
42 errors

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':react-native-animateable-text:compileDebugJavaWithJavac'.
> Compilation failed; see the compiler error output for details.

Minimal reproducible example: https://github.com/RRaideRR/android-bug-react-native-animateable-text/tree/main

liy010 commented 3 months ago

same issue

d-moreira commented 3 months ago

Those files got moved to another folder internally on RN 0.74. Here's patch with the fix:

react-native-animateable-text+0.12.0.patch ```js diff --git a/node_modules/react-native-animateable-text/android/src/main/java/com/reactnativereanimatedtext/CustomLineHeightSpan.java b/node_modules/react-native-animateable-text/android/src/main/java/com/reactnativereanimatedtext/CustomLineHeightSpan.java index 2319176..d9f0be5 100644 --- a/node_modules/react-native-animateable-text/android/src/main/java/com/reactnativereanimatedtext/CustomLineHeightSpan.java +++ b/node_modules/react-native-animateable-text/android/src/main/java/com/reactnativereanimatedtext/CustomLineHeightSpan.java @@ -10,7 +10,7 @@ package com.reactnativereanimatedtext; import android.graphics.Paint; import android.text.style.LineHeightSpan; -import com.facebook.react.views.text.ReactSpan; +import com.facebook.react.views.text.internal.span.ReactSpan; /** * We use a custom {@link LineHeightSpan}, because `lineSpacingExtra` is broken. Details here: diff --git a/node_modules/react-native-animateable-text/android/src/main/java/com/reactnativereanimatedtext/JBBaseTextShadowNode.java b/node_modules/react-native-animateable-text/android/src/main/java/com/reactnativereanimatedtext/JBBaseTextShadowNode.java index 063e7dd..e12b9de 100644 --- a/node_modules/react-native-animateable-text/android/src/main/java/com/reactnativereanimatedtext/JBBaseTextShadowNode.java +++ b/node_modules/react-native-animateable-text/android/src/main/java/com/reactnativereanimatedtext/JBBaseTextShadowNode.java @@ -16,39 +16,36 @@ import android.text.Spannable; import android.text.SpannableStringBuilder; import android.text.TextUtils; import android.view.Gravity; + import androidx.annotation.Nullable; + import com.facebook.infer.annotation.Assertions; import com.facebook.react.bridge.JSApplicationIllegalArgumentException; import com.facebook.react.bridge.ReadableArray; import com.facebook.react.bridge.ReadableMap; -import com.facebook.react.uimanager.IllegalViewOperationException; import com.facebook.react.uimanager.LayoutShadowNode; import com.facebook.react.uimanager.NativeViewHierarchyOptimizer; import com.facebook.react.uimanager.PixelUtil; import com.facebook.react.uimanager.ReactShadowNode; import com.facebook.react.uimanager.ViewProps; import com.facebook.react.uimanager.annotations.ReactProp; -import com.facebook.react.views.text.CustomLetterSpacingSpan; -import com.facebook.react.views.text.CustomStyleSpan; -import com.facebook.react.views.text.ReactAbsoluteSizeSpan; -import com.facebook.react.views.text.ReactBackgroundColorSpan; -import com.facebook.react.views.text.ReactForegroundColorSpan; -import com.facebook.react.views.text.ReactRawTextShadowNode; -import com.facebook.react.views.text.ReactSpan; -import com.facebook.react.views.text.ReactStrikethroughSpan; -import com.facebook.react.views.text.ReactTagSpan; -import com.facebook.react.views.text.ReactTextInlineImageShadowNode; import com.facebook.react.views.text.ReactTextViewManagerCallback; import com.facebook.react.views.text.ReactTypefaceUtils; -import com.facebook.react.views.text.ReactUnderlineSpan; -import com.facebook.react.views.text.ShadowStyleSpan; -import com.facebook.react.views.text.TextAttributes; -import com.facebook.react.views.text.TextInlineImageSpan; -import com.facebook.react.views.text.TextInlineViewPlaceholderSpan; import com.facebook.react.views.text.TextTransform; +import com.facebook.react.views.text.internal.span.CustomLetterSpacingSpan; +import com.facebook.react.views.text.internal.span.CustomStyleSpan; +import com.facebook.react.views.text.internal.span.ReactAbsoluteSizeSpan; +import com.facebook.react.views.text.internal.span.ReactBackgroundColorSpan; +import com.facebook.react.views.text.internal.span.ReactForegroundColorSpan; +import com.facebook.react.views.text.internal.span.ReactSpan; +import com.facebook.react.views.text.internal.span.ReactStrikethroughSpan; +import com.facebook.react.views.text.internal.span.ReactTagSpan; +import com.facebook.react.views.text.internal.span.ReactUnderlineSpan; +import com.facebook.react.views.text.internal.span.ShadowStyleSpan; +import com.facebook.react.views.text.internal.span.TextInlineImageSpan; +import com.facebook.react.views.text.internal.span.TextInlineViewPlaceholderSpan; import com.facebook.yoga.YogaDirection; -import com.facebook.yoga.YogaUnit; -import com.facebook.yoga.YogaValue; + import java.util.ArrayList; import java.util.HashMap; import java.util.List; diff --git a/node_modules/react-native-animateable-text/android/src/main/java/com/reactnativereanimatedtext/JBTextShadowNode.java b/node_modules/react-native-animateable-text/android/src/main/java/com/reactnativereanimatedtext/JBTextShadowNode.java index e93a51d..eba97d3 100644 --- a/node_modules/react-native-animateable-text/android/src/main/java/com/reactnativereanimatedtext/JBTextShadowNode.java +++ b/node_modules/react-native-animateable-text/android/src/main/java/com/reactnativereanimatedtext/JBTextShadowNode.java @@ -34,10 +34,10 @@ import com.facebook.react.uimanager.UIViewOperationQueue; import com.facebook.react.uimanager.annotations.ReactProp; import com.facebook.react.uimanager.events.RCTEventEmitter; import com.facebook.react.views.text.FontMetricsUtil; -import com.facebook.react.views.text.ReactAbsoluteSizeSpan; +import com.facebook.react.views.text.internal.span.ReactAbsoluteSizeSpan; import com.facebook.react.views.text.ReactTextUpdate; import com.facebook.react.views.text.ReactTextViewManagerCallback; -import com.facebook.react.views.text.TextInlineViewPlaceholderSpan; +import com.facebook.react.views.text.internal.span.TextInlineViewPlaceholderSpan; import com.facebook.yoga.YogaConstants; import com.facebook.yoga.YogaDirection; import com.facebook.yoga.YogaMeasureFunction; diff --git a/node_modules/react-native-animateable-text/android/src/main/java/com/reactnativereanimatedtext/JBTextViewManager.java b/node_modules/react-native-animateable-text/android/src/main/java/com/reactnativereanimatedtext/JBTextViewManager.java index d2b971a..e847071 100644 --- a/node_modules/react-native-animateable-text/android/src/main/java/com/reactnativereanimatedtext/JBTextViewManager.java +++ b/node_modules/react-native-animateable-text/android/src/main/java/com/reactnativereanimatedtext/JBTextViewManager.java @@ -29,8 +29,8 @@ import com.facebook.react.views.text.ReactTextView; import com.facebook.react.views.text.ReactTextViewManager; import com.facebook.react.views.text.ReactTextViewManagerCallback; import com.facebook.react.views.text.TextAttributeProps; -import com.facebook.react.views.text.TextInlineImageSpan; import com.facebook.react.views.text.TextLayoutManager; +import com.facebook.react.views.text.internal.span.TextInlineImageSpan; import com.facebook.yoga.YogaMeasureMode; import java.util.Map; ```
RayKay91 commented 2 months ago

Those files got moved to another folder internally on RN 0.74. Here's patch with the fix:

react-native-animateable-text+0.12.0.patch

diff --git a/node_modules/react-native-animateable-text/android/src/main/java/com/reactnativereanimatedtext/CustomLineHeightSpan.java b/node_modules/react-native-animateable-text/android/src/main/java/com/reactnativereanimatedtext/CustomLineHeightSpan.java
index 2319176..d9f0be5 100644
--- a/node_modules/react-native-animateable-text/android/src/main/java/com/reactnativereanimatedtext/CustomLineHeightSpan.java
+++ b/node_modules/react-native-animateable-text/android/src/main/java/com/reactnativereanimatedtext/CustomLineHeightSpan.java
@@ -10,7 +10,7 @@ package com.reactnativereanimatedtext;
 import android.graphics.Paint;
 import android.text.style.LineHeightSpan;

-import com.facebook.react.views.text.ReactSpan;
+import com.facebook.react.views.text.internal.span.ReactSpan;

 /**
  * We use a custom {@link LineHeightSpan}, because `lineSpacingExtra` is broken. Details here:
diff --git a/node_modules/react-native-animateable-text/android/src/main/java/com/reactnativereanimatedtext/JBBaseTextShadowNode.java b/node_modules/react-native-animateable-text/android/src/main/java/com/reactnativereanimatedtext/JBBaseTextShadowNode.java
index 063e7dd..e12b9de 100644
--- a/node_modules/react-native-animateable-text/android/src/main/java/com/reactnativereanimatedtext/JBBaseTextShadowNode.java
+++ b/node_modules/react-native-animateable-text/android/src/main/java/com/reactnativereanimatedtext/JBBaseTextShadowNode.java
@@ -16,39 +16,36 @@ import android.text.Spannable;
 import android.text.SpannableStringBuilder;
 import android.text.TextUtils;
 import android.view.Gravity;
+
 import androidx.annotation.Nullable;
+
 import com.facebook.infer.annotation.Assertions;
 import com.facebook.react.bridge.JSApplicationIllegalArgumentException;
 import com.facebook.react.bridge.ReadableArray;
 import com.facebook.react.bridge.ReadableMap;
-import com.facebook.react.uimanager.IllegalViewOperationException;
 import com.facebook.react.uimanager.LayoutShadowNode;
 import com.facebook.react.uimanager.NativeViewHierarchyOptimizer;
 import com.facebook.react.uimanager.PixelUtil;
 import com.facebook.react.uimanager.ReactShadowNode;
 import com.facebook.react.uimanager.ViewProps;
 import com.facebook.react.uimanager.annotations.ReactProp;
-import com.facebook.react.views.text.CustomLetterSpacingSpan;
-import com.facebook.react.views.text.CustomStyleSpan;
-import com.facebook.react.views.text.ReactAbsoluteSizeSpan;
-import com.facebook.react.views.text.ReactBackgroundColorSpan;
-import com.facebook.react.views.text.ReactForegroundColorSpan;
-import com.facebook.react.views.text.ReactRawTextShadowNode;
-import com.facebook.react.views.text.ReactSpan;
-import com.facebook.react.views.text.ReactStrikethroughSpan;
-import com.facebook.react.views.text.ReactTagSpan;
-import com.facebook.react.views.text.ReactTextInlineImageShadowNode;
 import com.facebook.react.views.text.ReactTextViewManagerCallback;
 import com.facebook.react.views.text.ReactTypefaceUtils;
-import com.facebook.react.views.text.ReactUnderlineSpan;
-import com.facebook.react.views.text.ShadowStyleSpan;
-import com.facebook.react.views.text.TextAttributes;
-import com.facebook.react.views.text.TextInlineImageSpan;
-import com.facebook.react.views.text.TextInlineViewPlaceholderSpan;
 import com.facebook.react.views.text.TextTransform;
+import com.facebook.react.views.text.internal.span.CustomLetterSpacingSpan;
+import com.facebook.react.views.text.internal.span.CustomStyleSpan;
+import com.facebook.react.views.text.internal.span.ReactAbsoluteSizeSpan;
+import com.facebook.react.views.text.internal.span.ReactBackgroundColorSpan;
+import com.facebook.react.views.text.internal.span.ReactForegroundColorSpan;
+import com.facebook.react.views.text.internal.span.ReactSpan;
+import com.facebook.react.views.text.internal.span.ReactStrikethroughSpan;
+import com.facebook.react.views.text.internal.span.ReactTagSpan;
+import com.facebook.react.views.text.internal.span.ReactUnderlineSpan;
+import com.facebook.react.views.text.internal.span.ShadowStyleSpan;
+import com.facebook.react.views.text.internal.span.TextInlineImageSpan;
+import com.facebook.react.views.text.internal.span.TextInlineViewPlaceholderSpan;
 import com.facebook.yoga.YogaDirection;
-import com.facebook.yoga.YogaUnit;
-import com.facebook.yoga.YogaValue;
+
 import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.List;
diff --git a/node_modules/react-native-animateable-text/android/src/main/java/com/reactnativereanimatedtext/JBTextShadowNode.java b/node_modules/react-native-animateable-text/android/src/main/java/com/reactnativereanimatedtext/JBTextShadowNode.java
index e93a51d..eba97d3 100644
--- a/node_modules/react-native-animateable-text/android/src/main/java/com/reactnativereanimatedtext/JBTextShadowNode.java
+++ b/node_modules/react-native-animateable-text/android/src/main/java/com/reactnativereanimatedtext/JBTextShadowNode.java
@@ -34,10 +34,10 @@ import com.facebook.react.uimanager.UIViewOperationQueue;
 import com.facebook.react.uimanager.annotations.ReactProp;
 import com.facebook.react.uimanager.events.RCTEventEmitter;
 import com.facebook.react.views.text.FontMetricsUtil;
-import com.facebook.react.views.text.ReactAbsoluteSizeSpan;
+import com.facebook.react.views.text.internal.span.ReactAbsoluteSizeSpan;
 import com.facebook.react.views.text.ReactTextUpdate;
 import com.facebook.react.views.text.ReactTextViewManagerCallback;
-import com.facebook.react.views.text.TextInlineViewPlaceholderSpan;
+import com.facebook.react.views.text.internal.span.TextInlineViewPlaceholderSpan;
 import com.facebook.yoga.YogaConstants;
 import com.facebook.yoga.YogaDirection;
 import com.facebook.yoga.YogaMeasureFunction;
diff --git a/node_modules/react-native-animateable-text/android/src/main/java/com/reactnativereanimatedtext/JBTextViewManager.java b/node_modules/react-native-animateable-text/android/src/main/java/com/reactnativereanimatedtext/JBTextViewManager.java
index d2b971a..e847071 100644
--- a/node_modules/react-native-animateable-text/android/src/main/java/com/reactnativereanimatedtext/JBTextViewManager.java
+++ b/node_modules/react-native-animateable-text/android/src/main/java/com/reactnativereanimatedtext/JBTextViewManager.java
@@ -29,8 +29,8 @@ import com.facebook.react.views.text.ReactTextView;
 import com.facebook.react.views.text.ReactTextViewManager;
 import com.facebook.react.views.text.ReactTextViewManagerCallback;
 import com.facebook.react.views.text.TextAttributeProps;
-import com.facebook.react.views.text.TextInlineImageSpan;
 import com.facebook.react.views.text.TextLayoutManager;
+import com.facebook.react.views.text.internal.span.TextInlineImageSpan;
 import com.facebook.yoga.YogaMeasureMode;
 import java.util.Map;

Can we get a PR for this please! 🙏