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.
@@ -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,4 +1,3 @@
1
-
2
1
  #import <React/RCTViewComponentView.h>
3
2
  #import <UIKit/UIKit.h>
4
3
 
@@ -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 * _view;
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
- if (self = [super initWithFrame:frame]) {
28
- static const auto defaultProps = std::make_shared<const TypeRichTextInputViewProps>();
29
- _props = defaultProps;
20
+ if (self = [super initWithFrame:frame]) {
21
+ static const auto defaultProps = std::make_shared<const TypeRichTextInputViewProps>();
22
+ _props = defaultProps;
30
23
 
31
- _view = [[UIView alloc] init];
24
+ _view = [[UIView alloc] init];
25
+ _view.backgroundColor = [UIColor lightGrayColor]; // Visual indicator it's a dummy view
32
26
 
33
- self.contentView = _view;
34
- }
27
+ self.contentView = _view;
28
+ }
35
29
 
36
- return self;
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
- Class<RCTComponentViewProtocol> TypeRichTextInputViewCls(void)
43
+ // Dummy command implementations (no-op)
44
+ - (void)handleCommand:(NSString *)commandName args:(NSArray *)args
48
45
  {
49
- return TypeRichTextInputView.class;
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/RCTComponentViewFactory.h>
4
- #import "TypeRichTextInputView.h"
2
+ #import <React/RCTUIManager.h>
3
+ #import "RCTFabricComponentsPlugins.h"
5
4
 
6
- @interface TypeRichTextInputViewManager : NSObject <RCTComponentViewProtocol>
5
+ @interface TypeRichTextInputViewManager : RCTViewManager
7
6
  @end
8
7
 
9
8
  @implementation TypeRichTextInputViewManager
10
9
 
11
- + (NSString *)componentName
10
+ RCT_EXPORT_MODULE(TypeRichTextInputView)
11
+
12
+ + (BOOL)requiresMainQueueSetup
12
13
  {
13
- return @"TypeRichTextInputView";
14
+ return NO;
14
15
  }
15
16
 
16
- + (Class)componentViewClass
17
+ - (UIView *)view
17
18
  {
18
- return [TypeRichTextInputView class];
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","onInputFocus","onFocus","onInputBlur","onBlur","onPasteImage"],"sourceRoot":"../../src","sources":["TypeRichTextInput.tsx"],"mappings":"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","ignoreList":[]}
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":";;AAAA,SAASA,UAAU,EAAEC,mBAAmB,EAAEC,MAAM,QAAkB,OAAO;AAGzE,SAASC,QAAQ,EAAEC,IAAI,QAAQ,cAAc;AAE7C,SACEC,QAAQ,QAKH,oCAAoC;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAE5C,IAAIC,uBAA4B;AAEhC,IAAIL,QAAQ,CAACM,EAAE,KAAK,SAAS,EAAE;EAC7BD,uBAAuB,GACrBE,OAAO,CAAC,oCAAoC,CAAC,CAACC,OAAO;AACzD,CAAC,MAAM;EACL;EACAH,uBAAuB,GAAGJ,IAAI;AAChC;AAGA,OAAO,SAASQ,cAAcA,CAAIC,KAA0B,EAAK;EAC/D,IAAIA,KAAK,IAAI,OAAOA,KAAK,KAAK,QAAQ,IAAI,aAAa,IAAIA,KAAK,EAAE;IAChE,OAAQA,KAAK,CAAwBC,WAAW;EAClD;EACA,OAAOD,KAAK;AACd;;AAEA;;AA8BA,MAAME,SAAS,GAAGZ,QAAQ,CAACM,EAAE,KAAK,SAAS;;AAE3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMO,iBAAiB,gBAAGhB,UAAU,CAClC,CAACiB,KAA6B,EAAEC,GAA8B,KAAK;EACjE,MAAMC,SAAS,GAAGjB,MAAM,CAAC,IAAI,CAAC;EAE9BD,mBAAmB,CAACiB,GAAG,EAAE,OAAO;IAC9BE,KAAK,EAAEA,CAAA,KAAM;MACX,IAAIL,SAAS,IAAII,SAAS,CAACE,OAAO,EAAE;QAClChB,QAAQ,CAACe,KAAK,CAACD,SAAS,CAACE,OAAO,CAAC;MACnC;IACF,CAAC;IACDC,IAAI,EAAEA,CAAA,KAAM;MACV,IAAIP,SAAS,IAAII,SAAS,CAACE,OAAO,EAAE;QAClChB,QAAQ,CAACiB,IAAI,CAACH,SAAS,CAACE,OAAO,CAAC;MAClC;IACF,CAAC;IACDE,QAAQ,EAAGC,IAAY,IAAK;MAC1B,IAAIT,SAAS,IAAII,SAAS,CAACE,OAAO,EAAE;QAClChB,QAAQ,CAACkB,QAAQ,CAACJ,SAAS,CAACE,OAAO,EAAEG,IAAI,CAAC;MAC5C;IACF,CAAC;IACDC,YAAYA,CAACC,KAAK,EAAEC,GAAG,EAAE;MACvB,IAAIZ,SAAS,IAAII,SAAS,CAACE,OAAO,EAAE;QAClChB,QAAQ,CAACoB,YAAY,CAACN,SAAS,CAACE,OAAO,EAAEK,KAAK,EAAEC,GAAG,CAAC;MACtD;IACF,CAAC;IACDC,YAAY,EAAEA,CAAA,KAAMT,SAAS,CAACE;EAChC,CAAC,CAAC,CAAC;;EAEH;AACJ;AACA;EACI,SAASQ,gBAAgBA,CACvBhB,KAIO,EACD;IACN;IACA,MAAMiB,IAAuC,GAC3CjB,KAAK,IAAI,OAAOA,KAAK,KAAK,QAAQ,GAC9BA,KAAK,CAACC,WAAW,IAAID,KAAK,GAC1BkB,SAAS;IAEf,IAAID,IAAI,EAAE;MACRb,KAAK,CAACe,gBAAgB,GAAGF,IAA6B,CAAC;IACzD;EACF;EAEA,SAASG,uBAAuBA,CAC9BpB,KAA6D,EAC7D;IACA,MAAMqB,CAAC,GAAGtB,cAAc,CAACC,KAAK,CAAC;IAC/BI,KAAK,CAACkB,YAAY,GAAGD,CAAC,CAACE,KAAK,CAAC;EAC/B;EAEA,SAASC,4BAA4BA,CACnCxB,KAAuE,EACvE;IACA,MAAMqB,CAAC,GAAGtB,cAAc,CAACC,KAAK,CAAC;IAC/BI,KAAK,CAACqB,iBAAiB,GAAG;MACxBZ,KAAK,EAAEQ,CAAC,CAACR,KAAK;MACdC,GAAG,EAAEO,CAAC,CAACP,GAAG;MACVH,IAAI,EAAEU,CAAC,CAACV;IACV,CAAC,CAAC;EACJ;;EAEA;EACA,MAAM;IACJ;IACAe,oCAAoC;IACpCD,iBAAiB;IACjBH,YAAY;IACZH,gBAAgB;IAChBQ,OAAO;IACPC,MAAM;IAEN;IACA,GAAGC;EACL,CAAC,GAAGzB,KAAK;EACT;;EAEA,oBACEV,IAAA,CAACC,uBAAuB;IACtBU,GAAG,EAAEC,SAAU;IAAA,IACVJ,SAAS,GAAGE,KAAK,GAAGyB,SAAS;IAClCC,YAAY,EAAEA,CAAA,KAAM1B,KAAK,CAACuB,OAAO,GAAG,CAAE;IACtCI,WAAW,EAAEA,CAAA,KAAM3B,KAAK,CAACwB,MAAM,GAAG,CAAE;IACpCN,YAAY,EAAEF,uBAAwB;IACtCK,iBAAiB,EAAED,4BAA6B;IAChDQ,YAAY,EAAEhB;EAAiB,CAChC,CAAC;AAEN,CACF,CAAC;AAED,eAAeb,iBAAiB","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;AAED;;;;;;;;;;GAUG;AACH,QAAA,MAAM,iBAAiB,yHAkFtB,CAAC;AAEF,eAAe,iBAAiB,CAAC"}
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
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-native-typerich",
3
- "version": "0.1.9",
3
+ "version": "0.1.11",
4
4
  "description": "Textinput replacement",
5
5
  "main": "./lib/module/index.js",
6
6
  "types": "./lib/typescript/src/index.d.ts",
@@ -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}