react-native-typerich 0.1.9 → 0.1.11
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/TypeRichTextInput.podspec +1 -2
- package/ios/TypeRichTextInputView.h +0 -1
- package/ios/TypeRichTextInputView.mm +20 -18
- package/ios/TypeRichTextInputViewManager.mm +15 -9
- package/lib/module/TypeRichTextInput.js +22 -6
- package/lib/module/TypeRichTextInput.js.map +1 -1
- package/lib/typescript/src/TypeRichTextInput.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/TypeRichTextInput.tsx +22 -8
|
@@ -14,8 +14,7 @@ Pod::Spec.new do |s|
|
|
|
14
14
|
s.source = { :git => "https://github.com/divyanshu-patil/react-native-typerich.git", :tag => "#{s.version}" }
|
|
15
15
|
|
|
16
16
|
# s.source_files = "ios/**/*.{h,m,mm,swift,cpp}"
|
|
17
|
-
s.source_files =
|
|
18
|
-
s.private_header_files = "ios/**/*.h"
|
|
17
|
+
s.source_files = "ios/**/*.{h,m,mm,cpp}"
|
|
19
18
|
|
|
20
19
|
install_modules_dependencies(s)
|
|
21
20
|
end
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
#import "TypeRichTextInputView.h"
|
|
2
2
|
|
|
3
|
-
#import <react/renderer/components/TypeRichTextInputViewSpec/ComponentDescriptors.h>
|
|
4
3
|
#import <react/renderer/components/TypeRichTextInputViewSpec/EventEmitters.h>
|
|
5
4
|
#import <react/renderer/components/TypeRichTextInputViewSpec/Props.h>
|
|
6
5
|
#import <react/renderer/components/TypeRichTextInputViewSpec/RCTComponentViewHelpers.h>
|
|
@@ -10,30 +9,25 @@
|
|
|
10
9
|
using namespace facebook::react;
|
|
11
10
|
|
|
12
11
|
@interface TypeRichTextInputView () <RCTTypeRichTextInputViewViewProtocol>
|
|
13
|
-
|
|
14
12
|
@end
|
|
15
13
|
|
|
16
14
|
@implementation TypeRichTextInputView {
|
|
17
|
-
UIView *
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
+ (ComponentDescriptorProvider)componentDescriptorProvider
|
|
21
|
-
{
|
|
22
|
-
return concreteComponentDescriptorProvider<TypeRichTextInputViewComponentDescriptor>();
|
|
15
|
+
UIView *_view;
|
|
23
16
|
}
|
|
24
17
|
|
|
25
18
|
- (instancetype)initWithFrame:(CGRect)frame
|
|
26
19
|
{
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
20
|
+
if (self = [super initWithFrame:frame]) {
|
|
21
|
+
static const auto defaultProps = std::make_shared<const TypeRichTextInputViewProps>();
|
|
22
|
+
_props = defaultProps;
|
|
30
23
|
|
|
31
|
-
|
|
24
|
+
_view = [[UIView alloc] init];
|
|
25
|
+
_view.backgroundColor = [UIColor lightGrayColor]; // Visual indicator it's a dummy view
|
|
32
26
|
|
|
33
|
-
|
|
34
|
-
|
|
27
|
+
self.contentView = _view;
|
|
28
|
+
}
|
|
35
29
|
|
|
36
|
-
|
|
30
|
+
return self;
|
|
37
31
|
}
|
|
38
32
|
|
|
39
33
|
- (void)updateProps:(Props::Shared const &)props oldProps:(Props::Shared const &)oldProps
|
|
@@ -41,12 +35,20 @@ using namespace facebook::react;
|
|
|
41
35
|
const auto &oldViewProps = *std::static_pointer_cast<TypeRichTextInputViewProps const>(_props);
|
|
42
36
|
const auto &newViewProps = *std::static_pointer_cast<TypeRichTextInputViewProps const>(props);
|
|
43
37
|
|
|
38
|
+
// No-op: just accept props without doing anything
|
|
39
|
+
|
|
44
40
|
[super updateProps:props oldProps:oldProps];
|
|
45
41
|
}
|
|
46
42
|
|
|
47
|
-
|
|
43
|
+
// Dummy command implementations (no-op)
|
|
44
|
+
- (void)handleCommand:(NSString *)commandName args:(NSArray *)args
|
|
48
45
|
{
|
|
49
|
-
|
|
46
|
+
// Commands like focus, blur, setValue, setSelection do nothing
|
|
50
47
|
}
|
|
51
48
|
|
|
52
|
-
@end
|
|
49
|
+
@end
|
|
50
|
+
|
|
51
|
+
Class<RCTComponentViewProtocol> TypeRichTextInputViewCls(void)
|
|
52
|
+
{
|
|
53
|
+
return TypeRichTextInputView.class;
|
|
54
|
+
}
|
|
@@ -1,21 +1,27 @@
|
|
|
1
|
-
|
|
2
1
|
#import <React/RCTViewManager.h>
|
|
3
|
-
#import <React/
|
|
4
|
-
#import "
|
|
2
|
+
#import <React/RCTUIManager.h>
|
|
3
|
+
#import "RCTFabricComponentsPlugins.h"
|
|
5
4
|
|
|
6
|
-
@interface TypeRichTextInputViewManager :
|
|
5
|
+
@interface TypeRichTextInputViewManager : RCTViewManager
|
|
7
6
|
@end
|
|
8
7
|
|
|
9
8
|
@implementation TypeRichTextInputViewManager
|
|
10
9
|
|
|
11
|
-
|
|
10
|
+
RCT_EXPORT_MODULE(TypeRichTextInputView)
|
|
11
|
+
|
|
12
|
+
+ (BOOL)requiresMainQueueSetup
|
|
12
13
|
{
|
|
13
|
-
|
|
14
|
+
return NO;
|
|
14
15
|
}
|
|
15
16
|
|
|
16
|
-
|
|
17
|
+
- (UIView *)view
|
|
17
18
|
{
|
|
18
|
-
|
|
19
|
+
// For Paper (old architecture) - return a simple UIView
|
|
20
|
+
UIView *view = [[UIView alloc] init];
|
|
21
|
+
view.backgroundColor = [UIColor lightGrayColor];
|
|
22
|
+
return view;
|
|
19
23
|
}
|
|
20
24
|
|
|
21
|
-
@end
|
|
25
|
+
@end
|
|
26
|
+
|
|
27
|
+
Class<RCTComponentViewProtocol> TypeRichTextInputViewCls(void);
|
|
@@ -20,6 +20,8 @@ export function normalizeEvent(event) {
|
|
|
20
20
|
|
|
21
21
|
// Public facing props (same as NativeProps but events normalized)
|
|
22
22
|
|
|
23
|
+
const isAndroid = Platform.OS === 'android';
|
|
24
|
+
|
|
23
25
|
/**
|
|
24
26
|
* TypeRichTextInput
|
|
25
27
|
*
|
|
@@ -35,22 +37,22 @@ const TypeRichTextInput = /*#__PURE__*/forwardRef((props, ref) => {
|
|
|
35
37
|
const nativeRef = useRef(null);
|
|
36
38
|
useImperativeHandle(ref, () => ({
|
|
37
39
|
focus: () => {
|
|
38
|
-
if (nativeRef.current) {
|
|
40
|
+
if (isAndroid && nativeRef.current) {
|
|
39
41
|
Commands.focus(nativeRef.current);
|
|
40
42
|
}
|
|
41
43
|
},
|
|
42
44
|
blur: () => {
|
|
43
|
-
if (nativeRef.current) {
|
|
45
|
+
if (isAndroid && nativeRef.current) {
|
|
44
46
|
Commands.blur(nativeRef.current);
|
|
45
47
|
}
|
|
46
48
|
},
|
|
47
49
|
setValue: text => {
|
|
48
|
-
if (nativeRef.current) {
|
|
50
|
+
if (isAndroid && nativeRef.current) {
|
|
49
51
|
Commands.setValue(nativeRef.current, text);
|
|
50
52
|
}
|
|
51
53
|
},
|
|
52
54
|
setSelection(start, end) {
|
|
53
|
-
if (nativeRef.current) {
|
|
55
|
+
if (isAndroid && nativeRef.current) {
|
|
54
56
|
Commands.setSelection(nativeRef.current, start, end);
|
|
55
57
|
}
|
|
56
58
|
},
|
|
@@ -79,10 +81,24 @@ const TypeRichTextInput = /*#__PURE__*/forwardRef((props, ref) => {
|
|
|
79
81
|
text: e.text
|
|
80
82
|
});
|
|
81
83
|
}
|
|
84
|
+
|
|
85
|
+
/* eslint-disable @typescript-eslint/no-unused-vars */
|
|
86
|
+
const {
|
|
87
|
+
// native-only / android-only props we never want on <View />
|
|
88
|
+
androidExperimentalSynchronousEvents,
|
|
89
|
+
onChangeSelection,
|
|
90
|
+
onChangeText,
|
|
91
|
+
onPasteImageData,
|
|
92
|
+
onFocus,
|
|
93
|
+
onBlur,
|
|
94
|
+
// everything else
|
|
95
|
+
...restProps
|
|
96
|
+
} = props;
|
|
97
|
+
/* eslint-enable @typescript-eslint/no-unused-vars */
|
|
98
|
+
|
|
82
99
|
return /*#__PURE__*/_jsx(NativeTypeRichTextInput, {
|
|
83
|
-
androidExperimentalSynchronousEvents: props.androidExperimentalSynchronousEvents,
|
|
84
100
|
ref: nativeRef,
|
|
85
|
-
...props,
|
|
101
|
+
...(isAndroid ? props : restProps),
|
|
86
102
|
onInputFocus: () => props.onFocus?.(),
|
|
87
103
|
onInputBlur: () => props.onBlur?.(),
|
|
88
104
|
onChangeText: handleOnChangeTextEvent,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["forwardRef","useImperativeHandle","useRef","Platform","View","Commands","jsx","_jsx","NativeTypeRichTextInput","OS","require","default","normalizeEvent","event","nativeEvent","TypeRichTextInput","props","ref","nativeRef","focus","current","blur","setValue","text","setSelection","start","end","getNativeRef","handlePasteImage","data","undefined","onPasteImageData","handleOnChangeTextEvent","e","onChangeText","value","handleonChangeSelectionEvent","onChangeSelection","androidExperimentalSynchronousEvents","
|
|
1
|
+
{"version":3,"names":["forwardRef","useImperativeHandle","useRef","Platform","View","Commands","jsx","_jsx","NativeTypeRichTextInput","OS","require","default","normalizeEvent","event","nativeEvent","isAndroid","TypeRichTextInput","props","ref","nativeRef","focus","current","blur","setValue","text","setSelection","start","end","getNativeRef","handlePasteImage","data","undefined","onPasteImageData","handleOnChangeTextEvent","e","onChangeText","value","handleonChangeSelectionEvent","onChangeSelection","androidExperimentalSynchronousEvents","onFocus","onBlur","restProps","onInputFocus","onInputBlur","onPasteImage"],"sourceRoot":"../../src","sources":["TypeRichTextInput.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TypeRichTextInput.d.ts","sourceRoot":"","sources":["../../../src/TypeRichTextInput.tsx"],"names":[],"mappings":"AAKA,OAAO,EAIL,KAAK,qBAAqB,EAC1B,KAAK,4BAA4B,EAClC,MAAM,oCAAoC,CAAC;AAW5C,KAAK,gBAAgB,CAAC,CAAC,IAAI,CAAC,GAAG;IAAE,WAAW,EAAE,CAAC,CAAA;CAAE,CAAC;AAElD,wBAAgB,cAAc,CAAC,CAAC,EAAE,KAAK,EAAE,gBAAgB,CAAC,CAAC,CAAC,GAAG,CAAC,CAK/D;AAGD,MAAM,WAAW,sBACf,SAAQ,IAAI,CACV,4BAA4B,EAC1B,cAAc,GACd,mBAAmB,GACnB,cAAc,GACd,aAAa,GACb,cAAc,CACjB;IAED,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACvC,iBAAiB,CAAC,EAAE,CAAC,KAAK,EAAE;QAC1B,KAAK,EAAE,MAAM,CAAC;QACd,GAAG,EAAE,MAAM,CAAC;QACZ,IAAI,EAAE,MAAM,CAAC;KACd,KAAK,IAAI,CAAC;IACX,gBAAgB,CAAC,EAAE,CAAC,IAAI,EAAE,qBAAqB,KAAK,IAAI,CAAC;CAC1D;AAED,MAAM,WAAW,oBAAoB;IACnC,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB,IAAI,EAAE,MAAM,IAAI,CAAC;IACjB,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACjC,YAAY,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IACnD,YAAY,EAAE,MAAM,GAAG,GAAG,IAAI,CAAC;CAChC;
|
|
1
|
+
{"version":3,"file":"TypeRichTextInput.d.ts","sourceRoot":"","sources":["../../../src/TypeRichTextInput.tsx"],"names":[],"mappings":"AAKA,OAAO,EAIL,KAAK,qBAAqB,EAC1B,KAAK,4BAA4B,EAClC,MAAM,oCAAoC,CAAC;AAW5C,KAAK,gBAAgB,CAAC,CAAC,IAAI,CAAC,GAAG;IAAE,WAAW,EAAE,CAAC,CAAA;CAAE,CAAC;AAElD,wBAAgB,cAAc,CAAC,CAAC,EAAE,KAAK,EAAE,gBAAgB,CAAC,CAAC,CAAC,GAAG,CAAC,CAK/D;AAGD,MAAM,WAAW,sBACf,SAAQ,IAAI,CACV,4BAA4B,EAC1B,cAAc,GACd,mBAAmB,GACnB,cAAc,GACd,aAAa,GACb,cAAc,CACjB;IAED,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACvC,iBAAiB,CAAC,EAAE,CAAC,KAAK,EAAE;QAC1B,KAAK,EAAE,MAAM,CAAC;QACd,GAAG,EAAE,MAAM,CAAC;QACZ,IAAI,EAAE,MAAM,CAAC;KACd,KAAK,IAAI,CAAC;IACX,gBAAgB,CAAC,EAAE,CAAC,IAAI,EAAE,qBAAqB,KAAK,IAAI,CAAC;CAC1D;AAED,MAAM,WAAW,oBAAoB;IACnC,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB,IAAI,EAAE,MAAM,IAAI,CAAC;IACjB,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACjC,YAAY,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IACnD,YAAY,EAAE,MAAM,GAAG,GAAG,IAAI,CAAC;CAChC;AAID;;;;;;;;;;GAUG;AACH,QAAA,MAAM,iBAAiB,yHA8FtB,CAAC;AAEF,eAAe,iBAAiB,CAAC"}
|
package/package.json
CHANGED
|
@@ -59,6 +59,8 @@ export interface TypeRichTextInputRef {
|
|
|
59
59
|
getNativeRef: () => any | null;
|
|
60
60
|
}
|
|
61
61
|
|
|
62
|
+
const isAndroid = Platform.OS === 'android';
|
|
63
|
+
|
|
62
64
|
/**
|
|
63
65
|
* TypeRichTextInput
|
|
64
66
|
*
|
|
@@ -76,22 +78,22 @@ const TypeRichTextInput = forwardRef(
|
|
|
76
78
|
|
|
77
79
|
useImperativeHandle(ref, () => ({
|
|
78
80
|
focus: () => {
|
|
79
|
-
if (nativeRef.current) {
|
|
81
|
+
if (isAndroid && nativeRef.current) {
|
|
80
82
|
Commands.focus(nativeRef.current);
|
|
81
83
|
}
|
|
82
84
|
},
|
|
83
85
|
blur: () => {
|
|
84
|
-
if (nativeRef.current) {
|
|
86
|
+
if (isAndroid && nativeRef.current) {
|
|
85
87
|
Commands.blur(nativeRef.current);
|
|
86
88
|
}
|
|
87
89
|
},
|
|
88
90
|
setValue: (text: string) => {
|
|
89
|
-
if (nativeRef.current) {
|
|
91
|
+
if (isAndroid && nativeRef.current) {
|
|
90
92
|
Commands.setValue(nativeRef.current, text);
|
|
91
93
|
}
|
|
92
94
|
},
|
|
93
95
|
setSelection(start, end) {
|
|
94
|
-
if (nativeRef.current) {
|
|
96
|
+
if (isAndroid && nativeRef.current) {
|
|
95
97
|
Commands.setSelection(nativeRef.current, start, end);
|
|
96
98
|
}
|
|
97
99
|
},
|
|
@@ -137,13 +139,25 @@ const TypeRichTextInput = forwardRef(
|
|
|
137
139
|
});
|
|
138
140
|
}
|
|
139
141
|
|
|
142
|
+
/* eslint-disable @typescript-eslint/no-unused-vars */
|
|
143
|
+
const {
|
|
144
|
+
// native-only / android-only props we never want on <View />
|
|
145
|
+
androidExperimentalSynchronousEvents,
|
|
146
|
+
onChangeSelection,
|
|
147
|
+
onChangeText,
|
|
148
|
+
onPasteImageData,
|
|
149
|
+
onFocus,
|
|
150
|
+
onBlur,
|
|
151
|
+
|
|
152
|
+
// everything else
|
|
153
|
+
...restProps
|
|
154
|
+
} = props;
|
|
155
|
+
/* eslint-enable @typescript-eslint/no-unused-vars */
|
|
156
|
+
|
|
140
157
|
return (
|
|
141
158
|
<NativeTypeRichTextInput
|
|
142
|
-
androidExperimentalSynchronousEvents={
|
|
143
|
-
props.androidExperimentalSynchronousEvents
|
|
144
|
-
}
|
|
145
159
|
ref={nativeRef}
|
|
146
|
-
{...props}
|
|
160
|
+
{...(isAndroid ? props : restProps)}
|
|
147
161
|
onInputFocus={() => props.onFocus?.()}
|
|
148
162
|
onInputBlur={() => props.onBlur?.()}
|
|
149
163
|
onChangeText={handleOnChangeTextEvent}
|