react-native-enriched 0.4.0 → 0.5.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/README.md +27 -2
- package/ReactNativeEnriched.podspec +5 -1
- package/android/generated/java/com/facebook/react/viewmanagers/EnrichedTextInputViewManagerDelegate.java +12 -0
- package/android/generated/java/com/facebook/react/viewmanagers/EnrichedTextInputViewManagerInterface.java +4 -0
- package/android/generated/jni/react/renderer/components/ReactNativeEnrichedSpec/EventEmitters.cpp +149 -0
- package/android/generated/jni/react/renderer/components/ReactNativeEnrichedSpec/EventEmitters.h +146 -0
- package/android/generated/jni/react/renderer/components/ReactNativeEnrichedSpec/Props.cpp +16 -1
- package/android/generated/jni/react/renderer/components/ReactNativeEnrichedSpec/Props.h +46 -0
- package/android/src/main/java/com/swmansion/enriched/common/GumboNormalizer.kt +5 -0
- package/android/src/main/java/com/swmansion/enriched/common/spans/EnrichedCheckboxListSpan.kt +3 -2
- package/android/src/main/java/com/swmansion/enriched/common/spans/EnrichedUnorderedListSpan.kt +2 -1
- package/android/src/main/java/com/swmansion/enriched/textinput/EnrichedTextInputView.kt +166 -20
- package/android/src/main/java/com/swmansion/enriched/textinput/EnrichedTextInputViewManager.kt +32 -0
- package/android/src/main/java/com/swmansion/enriched/textinput/MeasurementStore.kt +19 -2
- package/android/src/main/java/com/swmansion/enriched/textinput/events/OnContextMenuItemPressEvent.kt +35 -0
- package/android/src/main/java/com/swmansion/enriched/textinput/spans/EnrichedLineHeightSpan.kt +44 -0
- package/android/src/main/java/com/swmansion/enriched/textinput/styles/ParagraphStyles.kt +19 -14
- package/android/src/main/java/com/swmansion/enriched/textinput/styles/ParametrizedStyles.kt +16 -0
- package/android/src/main/java/com/swmansion/enriched/textinput/utils/EnrichedSpanState.kt +18 -12
- package/android/src/main/new_arch/CMakeLists.txt +9 -13
- package/android/src/main/new_arch/GumboNormalizerJni.cpp +14 -0
- package/android/src/main/new_arch/react/renderer/components/ReactNativeEnrichedSpec/conversions.h +2 -21
- package/cpp/CMakeLists.txt +50 -0
- package/cpp/GumboParser/GumboParser.h +34043 -0
- package/cpp/README.md +59 -0
- package/cpp/parser/GumboNormalizer.c +915 -0
- package/cpp/parser/GumboParser.cpp +16 -0
- package/cpp/parser/GumboParser.hpp +23 -0
- package/cpp/tests/GumboParserTest.cpp +457 -0
- package/ios/EnrichedTextInputView.h +2 -0
- package/ios/EnrichedTextInputView.mm +160 -2
- package/ios/config/InputConfig.h +3 -0
- package/ios/config/InputConfig.mm +15 -0
- package/ios/extensions/LayoutManagerExtension.mm +34 -11
- package/ios/generated/ReactNativeEnrichedSpec/EventEmitters.cpp +149 -0
- package/ios/generated/ReactNativeEnrichedSpec/EventEmitters.h +146 -0
- package/ios/generated/ReactNativeEnrichedSpec/Props.cpp +16 -1
- package/ios/generated/ReactNativeEnrichedSpec/Props.h +46 -0
- package/ios/generated/ReactNativeEnrichedSpec/RCTComponentViewHelpers.h +29 -0
- package/ios/inputParser/InputParser.mm +27 -0
- package/ios/interfaces/ImageAttachment.mm +29 -0
- package/lib/module/EnrichedTextInput.js +43 -30
- package/lib/module/EnrichedTextInput.js.map +1 -1
- package/lib/module/spec/EnrichedTextInputNativeComponent.ts +118 -22
- package/lib/typescript/src/EnrichedTextInput.d.ts +24 -6
- package/lib/typescript/src/EnrichedTextInput.d.ts.map +1 -1
- package/lib/typescript/src/index.d.ts +1 -1
- package/lib/typescript/src/index.d.ts.map +1 -1
- package/lib/typescript/src/spec/EnrichedTextInputNativeComponent.d.ts +111 -21
- package/lib/typescript/src/spec/EnrichedTextInputNativeComponent.d.ts.map +1 -1
- package/package.json +5 -5
- package/src/EnrichedTextInput.tsx +79 -40
- package/src/index.tsx +0 -1
- package/src/spec/EnrichedTextInputNativeComponent.ts +118 -22
package/cpp/README.md
ADDED
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
# C++ – Gumbo HTML Normalizer
|
|
2
|
+
|
|
3
|
+
## Gumbo-parser setup
|
|
4
|
+
|
|
5
|
+
The normalizer depends on a single amalgamation file `GumboParser/GumboParser.h`.
|
|
6
|
+
|
|
7
|
+
This file was created from the [gumbo-parser](https://codeberg.org/gumbo-parser/gumbo-parser) repository — an actively maintained fork of the original Google gumbo-parser.
|
|
8
|
+
|
|
9
|
+
### Updating gumbo-parser
|
|
10
|
+
|
|
11
|
+
If you want to upgrade to a newer version:
|
|
12
|
+
|
|
13
|
+
1. Clone the repository:
|
|
14
|
+
```bash
|
|
15
|
+
git clone https://codeberg.org/gumbo-parser/gumbo-parser.git
|
|
16
|
+
```
|
|
17
|
+
2. Create a new amalgamation from the cloned source files.
|
|
18
|
+
3. Replace the existing `cpp/GumboParser/GumboParser.h` with the newly generated amalgamation.
|
|
19
|
+
|
|
20
|
+
## Building and running tests
|
|
21
|
+
|
|
22
|
+
Prerequisites: **CMake ≥ 3.14** and a C/C++ compiler (Clang or GCC).
|
|
23
|
+
|
|
24
|
+
```bash
|
|
25
|
+
cd cpp
|
|
26
|
+
|
|
27
|
+
# Configure (only needed once, or after editing CMakeLists.txt)
|
|
28
|
+
cmake -B build -DCMAKE_BUILD_TYPE=Debug
|
|
29
|
+
|
|
30
|
+
# Build
|
|
31
|
+
cmake --build build
|
|
32
|
+
|
|
33
|
+
# Run tests
|
|
34
|
+
ctest --test-dir build --output-on-failure
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
## Upgrading Google Test
|
|
38
|
+
|
|
39
|
+
GTest is fetched automatically by CMake via `FetchContent`. To change the
|
|
40
|
+
version, edit the `GIT_TAG` in `cpp/CMakeLists.txt`:
|
|
41
|
+
|
|
42
|
+
```cmake
|
|
43
|
+
FetchContent_Declare(
|
|
44
|
+
googletest
|
|
45
|
+
GIT_REPOSITORY https://github.com/google/googletest.git
|
|
46
|
+
GIT_TAG v1.17.0 # ← change this to the desired version/tag
|
|
47
|
+
)
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
Then re-configure and rebuild:
|
|
51
|
+
|
|
52
|
+
```bash
|
|
53
|
+
cd cpp
|
|
54
|
+
rm -rf build
|
|
55
|
+
cmake -B build -DCMAKE_BUILD_TYPE=Debug
|
|
56
|
+
cmake --build build
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
Available tags can be found at https://github.com/google/googletest/tags.
|