react-native-enriched 0.2.0 → 0.2.1
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 +1 -5
- package/android/generated/java/com/facebook/react/viewmanagers/EnrichedTextInputViewManagerDelegate.java +3 -0
- package/android/generated/java/com/facebook/react/viewmanagers/EnrichedTextInputViewManagerInterface.java +1 -0
- package/android/generated/jni/react/renderer/components/RNEnrichedTextInputViewSpec/EventEmitters.cpp +10 -0
- package/android/generated/jni/react/renderer/components/RNEnrichedTextInputViewSpec/EventEmitters.h +7 -0
- package/android/src/main/java/com/swmansion/enriched/EnrichedTextInputView.kt +92 -0
- package/android/src/main/java/com/swmansion/enriched/EnrichedTextInputViewManager.kt +6 -0
- package/android/src/main/java/com/swmansion/enriched/events/MentionHandler.kt +1 -1
- package/android/src/main/java/com/swmansion/enriched/events/OnRequestHtmlResultEvent.kt +33 -0
- package/android/src/main/java/com/swmansion/enriched/spans/EnrichedBlockQuoteSpan.kt +6 -0
- package/android/src/main/java/com/swmansion/enriched/spans/EnrichedBoldSpan.kt +6 -0
- package/android/src/main/java/com/swmansion/enriched/spans/EnrichedCodeBlockSpan.kt +6 -0
- package/android/src/main/java/com/swmansion/enriched/spans/EnrichedH1Span.kt +6 -0
- package/android/src/main/java/com/swmansion/enriched/spans/EnrichedH2Span.kt +6 -0
- package/android/src/main/java/com/swmansion/enriched/spans/EnrichedH3Span.kt +6 -0
- package/android/src/main/java/com/swmansion/enriched/spans/EnrichedImageSpan.kt +5 -0
- package/android/src/main/java/com/swmansion/enriched/spans/EnrichedInlineCodeSpan.kt +6 -0
- package/android/src/main/java/com/swmansion/enriched/spans/EnrichedItalicSpan.kt +5 -0
- package/android/src/main/java/com/swmansion/enriched/spans/EnrichedLinkSpan.kt +6 -0
- package/android/src/main/java/com/swmansion/enriched/spans/EnrichedMentionSpan.kt +6 -0
- package/android/src/main/java/com/swmansion/enriched/spans/EnrichedOrderedListSpan.kt +6 -0
- package/android/src/main/java/com/swmansion/enriched/spans/EnrichedSpans.kt +9 -3
- package/android/src/main/java/com/swmansion/enriched/spans/EnrichedStrikeThroughSpan.kt +5 -0
- package/android/src/main/java/com/swmansion/enriched/spans/EnrichedUnderlineSpan.kt +5 -0
- package/android/src/main/java/com/swmansion/enriched/spans/EnrichedUnorderedListSpan.kt +6 -0
- package/android/src/main/java/com/swmansion/enriched/spans/interfaces/EnrichedSpan.kt +4 -0
- package/android/src/main/java/com/swmansion/enriched/styles/HtmlStyle.kt +78 -0
- package/android/src/main/java/com/swmansion/enriched/styles/ParagraphStyles.kt +80 -4
- package/android/src/main/java/com/swmansion/enriched/utils/EnrichedParser.java +8 -0
- package/android/src/main/new_arch/RNEnrichedTextInputViewSpec.cpp +6 -6
- package/android/src/main/new_arch/RNEnrichedTextInputViewSpec.h +6 -6
- package/android/src/main/new_arch/react/renderer/components/RNEnrichedTextInputViewSpec/EnrichedTextInputComponentDescriptor.h +19 -19
- package/android/src/main/new_arch/react/renderer/components/RNEnrichedTextInputViewSpec/EnrichedTextInputMeasurementManager.cpp +40 -51
- package/android/src/main/new_arch/react/renderer/components/RNEnrichedTextInputViewSpec/EnrichedTextInputMeasurementManager.h +13 -15
- package/android/src/main/new_arch/react/renderer/components/RNEnrichedTextInputViewSpec/EnrichedTextInputShadowNode.cpp +23 -21
- package/android/src/main/new_arch/react/renderer/components/RNEnrichedTextInputViewSpec/EnrichedTextInputShadowNode.h +35 -36
- package/android/src/main/new_arch/react/renderer/components/RNEnrichedTextInputViewSpec/EnrichedTextInputState.cpp +4 -4
- package/android/src/main/new_arch/react/renderer/components/RNEnrichedTextInputViewSpec/EnrichedTextInputState.h +13 -14
- package/android/src/main/new_arch/react/renderer/components/RNEnrichedTextInputViewSpec/conversions.h +12 -13
- package/ios/EnrichedTextInputView.h +25 -13
- package/ios/EnrichedTextInputView.mm +872 -581
- package/ios/attachments/ImageAttachment.h +10 -0
- package/ios/attachments/ImageAttachment.mm +34 -0
- package/ios/attachments/MediaAttachment.h +23 -0
- package/ios/attachments/MediaAttachment.mm +31 -0
- package/ios/config/InputConfig.h +6 -6
- package/ios/config/InputConfig.mm +39 -33
- package/ios/generated/RNEnrichedTextInputViewSpec/EventEmitters.cpp +10 -0
- package/ios/generated/RNEnrichedTextInputViewSpec/EventEmitters.h +7 -0
- package/ios/generated/RNEnrichedTextInputViewSpec/RCTComponentViewHelpers.h +21 -0
- package/ios/inputParser/InputParser.h +5 -5
- package/ios/inputParser/InputParser.mm +789 -378
- package/ios/inputTextView/InputTextView.h +1 -1
- package/ios/inputTextView/InputTextView.mm +100 -59
- package/ios/internals/EnrichedTextInputViewComponentDescriptor.h +11 -9
- package/ios/internals/EnrichedTextInputViewShadowNode.h +28 -25
- package/ios/internals/EnrichedTextInputViewShadowNode.mm +45 -40
- package/ios/internals/EnrichedTextInputViewState.h +3 -1
- package/ios/styles/BlockQuoteStyle.mm +189 -118
- package/ios/styles/BoldStyle.mm +95 -63
- package/ios/styles/CodeBlockStyle.mm +204 -128
- package/ios/styles/H1Style.mm +10 -4
- package/ios/styles/H2Style.mm +10 -4
- package/ios/styles/H3Style.mm +10 -4
- package/ios/styles/HeadingStyleBase.mm +129 -84
- package/ios/styles/ImageStyle.mm +75 -73
- package/ios/styles/InlineCodeStyle.mm +148 -85
- package/ios/styles/ItalicStyle.mm +76 -52
- package/ios/styles/LinkStyle.mm +348 -227
- package/ios/styles/MentionStyle.mm +363 -246
- package/ios/styles/OrderedListStyle.mm +171 -106
- package/ios/styles/StrikethroughStyle.mm +52 -35
- package/ios/styles/UnderlineStyle.mm +68 -46
- package/ios/styles/UnorderedListStyle.mm +169 -106
- package/ios/utils/BaseStyleProtocol.h +2 -2
- package/ios/utils/ColorExtension.mm +7 -5
- package/ios/utils/FontExtension.mm +42 -27
- package/ios/utils/LayoutManagerExtension.h +1 -1
- package/ios/utils/LayoutManagerExtension.mm +280 -170
- package/ios/utils/MentionParams.h +0 -1
- package/ios/utils/MentionStyleProps.h +1 -1
- package/ios/utils/MentionStyleProps.mm +27 -20
- package/ios/utils/OccurenceUtils.h +42 -42
- package/ios/utils/OccurenceUtils.mm +142 -119
- package/ios/utils/ParagraphAttributesUtils.h +6 -2
- package/ios/utils/ParagraphAttributesUtils.mm +115 -71
- package/ios/utils/ParagraphsUtils.h +2 -1
- package/ios/utils/ParagraphsUtils.mm +40 -26
- package/ios/utils/StringExtension.h +1 -1
- package/ios/utils/StringExtension.mm +19 -16
- package/ios/utils/StyleHeaders.h +27 -15
- package/ios/utils/TextInsertionUtils.h +13 -2
- package/ios/utils/TextInsertionUtils.mm +38 -20
- package/ios/utils/WordsUtils.h +2 -1
- package/ios/utils/WordsUtils.mm +32 -22
- package/ios/utils/ZeroWidthSpaceUtils.h +3 -1
- package/ios/utils/ZeroWidthSpaceUtils.mm +145 -79
- package/lib/module/EnrichedTextInput.js +39 -1
- package/lib/module/EnrichedTextInput.js.map +1 -1
- package/lib/module/EnrichedTextInputNativeComponent.ts +11 -0
- package/lib/typescript/src/EnrichedTextInput.d.ts +1 -0
- package/lib/typescript/src/EnrichedTextInput.d.ts.map +1 -1
- package/lib/typescript/src/EnrichedTextInputNativeComponent.d.ts +6 -0
- package/lib/typescript/src/EnrichedTextInputNativeComponent.d.ts.map +1 -1
- package/package.json +8 -1
- package/src/EnrichedTextInput.tsx +45 -0
- package/src/EnrichedTextInputNativeComponent.ts +11 -0
|
@@ -4,16 +4,19 @@
|
|
|
4
4
|
@implementation UIFont (FontExtension)
|
|
5
5
|
|
|
6
6
|
- (BOOL)isBold {
|
|
7
|
-
return (self.fontDescriptor.symbolicTraits & UIFontDescriptorTraitBold) ==
|
|
7
|
+
return (self.fontDescriptor.symbolicTraits & UIFontDescriptorTraitBold) ==
|
|
8
|
+
UIFontDescriptorTraitBold;
|
|
8
9
|
}
|
|
9
10
|
|
|
10
11
|
- (UIFont *)setBold {
|
|
11
|
-
if([self isBold]) {
|
|
12
|
+
if ([self isBold]) {
|
|
12
13
|
return self;
|
|
13
14
|
}
|
|
14
|
-
UIFontDescriptorSymbolicTraits newTraits =
|
|
15
|
-
|
|
16
|
-
|
|
15
|
+
UIFontDescriptorSymbolicTraits newTraits =
|
|
16
|
+
(self.fontDescriptor.symbolicTraits | UIFontDescriptorTraitBold);
|
|
17
|
+
UIFontDescriptor *fontDescriptor =
|
|
18
|
+
[self.fontDescriptor fontDescriptorWithSymbolicTraits:newTraits];
|
|
19
|
+
if (fontDescriptor != nullptr) {
|
|
17
20
|
return [UIFont fontWithDescriptor:fontDescriptor size:0];
|
|
18
21
|
} else {
|
|
19
22
|
RCTLogWarn(@"[EnrichedTextInput]: Couldn't apply bold trait to the font.");
|
|
@@ -22,68 +25,80 @@
|
|
|
22
25
|
}
|
|
23
26
|
|
|
24
27
|
- (UIFont *)removeBold {
|
|
25
|
-
if(![self isBold]) {
|
|
28
|
+
if (![self isBold]) {
|
|
26
29
|
return self;
|
|
27
30
|
}
|
|
28
|
-
UIFontDescriptorSymbolicTraits newTraits =
|
|
29
|
-
|
|
30
|
-
|
|
31
|
+
UIFontDescriptorSymbolicTraits newTraits =
|
|
32
|
+
(self.fontDescriptor.symbolicTraits ^ UIFontDescriptorTraitBold);
|
|
33
|
+
UIFontDescriptor *fontDescriptor =
|
|
34
|
+
[self.fontDescriptor fontDescriptorWithSymbolicTraits:newTraits];
|
|
35
|
+
if (fontDescriptor != nullptr) {
|
|
31
36
|
return [UIFont fontWithDescriptor:fontDescriptor size:0];
|
|
32
37
|
} else {
|
|
33
|
-
RCTLogWarn(
|
|
38
|
+
RCTLogWarn(
|
|
39
|
+
@"[EnrichedTextInput]: Couldn't remove bold trait from the font.");
|
|
34
40
|
return self;
|
|
35
41
|
}
|
|
36
42
|
}
|
|
37
43
|
|
|
38
44
|
- (BOOL)isItalic {
|
|
39
|
-
return (self.fontDescriptor.symbolicTraits & UIFontDescriptorTraitItalic) ==
|
|
45
|
+
return (self.fontDescriptor.symbolicTraits & UIFontDescriptorTraitItalic) ==
|
|
46
|
+
UIFontDescriptorTraitItalic;
|
|
40
47
|
}
|
|
41
48
|
|
|
42
49
|
- (UIFont *)setItalic {
|
|
43
|
-
if([self isItalic]) {
|
|
50
|
+
if ([self isItalic]) {
|
|
44
51
|
return self;
|
|
45
52
|
}
|
|
46
|
-
UIFontDescriptorSymbolicTraits newTraits =
|
|
47
|
-
|
|
48
|
-
|
|
53
|
+
UIFontDescriptorSymbolicTraits newTraits =
|
|
54
|
+
(self.fontDescriptor.symbolicTraits | UIFontDescriptorTraitItalic);
|
|
55
|
+
UIFontDescriptor *fontDescriptor =
|
|
56
|
+
[self.fontDescriptor fontDescriptorWithSymbolicTraits:newTraits];
|
|
57
|
+
if (fontDescriptor != nullptr) {
|
|
49
58
|
return [UIFont fontWithDescriptor:fontDescriptor size:0];
|
|
50
59
|
} else {
|
|
51
|
-
RCTLogWarn(
|
|
60
|
+
RCTLogWarn(
|
|
61
|
+
@"[EnrichedTextInput]: Couldn't apply italic trait to the font.");
|
|
52
62
|
return self;
|
|
53
63
|
}
|
|
54
64
|
}
|
|
55
65
|
|
|
56
66
|
- (UIFont *)removeItalic {
|
|
57
|
-
if(![self isItalic]) {
|
|
67
|
+
if (![self isItalic]) {
|
|
58
68
|
return self;
|
|
59
69
|
}
|
|
60
|
-
UIFontDescriptorSymbolicTraits newTraits =
|
|
61
|
-
|
|
62
|
-
|
|
70
|
+
UIFontDescriptorSymbolicTraits newTraits =
|
|
71
|
+
(self.fontDescriptor.symbolicTraits ^ UIFontDescriptorTraitItalic);
|
|
72
|
+
UIFontDescriptor *fontDescriptor =
|
|
73
|
+
[self.fontDescriptor fontDescriptorWithSymbolicTraits:newTraits];
|
|
74
|
+
if (fontDescriptor != nullptr) {
|
|
63
75
|
return [UIFont fontWithDescriptor:fontDescriptor size:0];
|
|
64
76
|
} else {
|
|
65
|
-
RCTLogWarn(
|
|
77
|
+
RCTLogWarn(
|
|
78
|
+
@"[EnrichedTextInput]: Couldn't remove italic trait from the font.");
|
|
66
79
|
return self;
|
|
67
80
|
}
|
|
68
81
|
}
|
|
69
82
|
|
|
70
83
|
- (UIFont *)withFontTraits:(UIFont *)from {
|
|
71
|
-
UIFont*
|
|
72
|
-
if([from isBold]) {
|
|
84
|
+
UIFont *newFont = self;
|
|
85
|
+
if ([from isBold]) {
|
|
73
86
|
newFont = [newFont setBold];
|
|
74
87
|
}
|
|
75
|
-
if([from isItalic]) {
|
|
88
|
+
if ([from isItalic]) {
|
|
76
89
|
newFont = [newFont setItalic];
|
|
77
90
|
}
|
|
78
91
|
return newFont;
|
|
79
92
|
}
|
|
80
93
|
|
|
81
94
|
- (UIFont *)setSize:(CGFloat)size {
|
|
82
|
-
UIFontDescriptor *newFontDescriptor =
|
|
83
|
-
|
|
95
|
+
UIFontDescriptor *newFontDescriptor =
|
|
96
|
+
[self.fontDescriptor fontDescriptorWithSize:size];
|
|
97
|
+
if (newFontDescriptor != nullptr) {
|
|
84
98
|
return [UIFont fontWithDescriptor:newFontDescriptor size:0];
|
|
85
99
|
} else {
|
|
86
|
-
RCTLogWarn(
|
|
100
|
+
RCTLogWarn(
|
|
101
|
+
@"[EnrichedTextInput]: Couldn't apply heading style to the font.");
|
|
87
102
|
return self;
|
|
88
103
|
}
|
|
89
104
|
}
|