react-native-typerich 0.1.5 → 0.1.7

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.
@@ -364,12 +364,25 @@ class TypeRichTextInputView : AppCompatEditText {
364
364
  fun setValue(value: CharSequence?) {
365
365
  if (value == null) return
366
366
 
367
+ val editText = this
368
+
369
+ // Save current selection BEFORE text change
370
+ val prevStart = editText.selectionStart
371
+ val prevEnd = editText.selectionEnd
372
+
367
373
  runAsATransaction {
368
- setText(value.toString())
369
- setSelection(text?.length ?: 0)
374
+ if (editText.text.toString() != value.toString()) {
375
+ setText(value.toString())
376
+ }
377
+
378
+ val len = editText.text?.length ?: 0
379
+ val start = prevStart.coerceIn(0, len)
380
+ val end = prevEnd.coerceIn(0, len)
381
+
382
+ setSelection(start, end)
370
383
  }
371
384
  }
372
-
385
+
373
386
  fun setAutoFocus(autoFocus: Boolean) {
374
387
  this.autoFocus = autoFocus
375
388
  }
@@ -176,6 +176,15 @@ class TypeRichTextInputViewManager :
176
176
  }
177
177
 
178
178
  override fun setValue(view: TypeRichTextInputView?, text: String) {
179
+ view?.setValue(text)
180
+ }
181
+
182
+ override fun setSelection(
183
+ view: TypeRichTextInputView?,
184
+ start: Int,
185
+ end: Int
186
+ ) {
187
+ view?.setSelection(start, end)
179
188
  }
180
189
 
181
190
  override fun measure(
@@ -48,6 +48,11 @@ const TypeRichTextInput = /*#__PURE__*/forwardRef((props, ref) => {
48
48
  if (nativeRef.current) {
49
49
  Commands.setValue(nativeRef.current, text);
50
50
  }
51
+ },
52
+ setSelection(start, end) {
53
+ if (nativeRef.current) {
54
+ Commands.setSelection(nativeRef.current, start, end);
55
+ }
51
56
  }
52
57
  }));
53
58
 
@@ -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","handlePasteImage","data","undefined","onPasteImageData","handleOnChangeTextEvent","e","onChangeText","value","handleonChangeSelectionEvent","onChangeSelection","start","end","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","TypeRichTextInput","props","ref","nativeRef","focus","current","blur","setValue","text","setSelection","start","end","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":[]}
@@ -78,6 +78,11 @@ interface NativeCommands {
78
78
  focus: (viewRef: React.ElementRef<ComponentType>) => void;
79
79
  blur: (viewRef: React.ElementRef<ComponentType>) => void;
80
80
  setValue: (viewRef: React.ElementRef<ComponentType>, text: string) => void;
81
+ setSelection: (
82
+ viewRef: React.ElementRef<ComponentType>,
83
+ start: Int32,
84
+ end: Int32
85
+ ) => void;
81
86
  }
82
87
 
83
88
  export const Commands: NativeCommands = codegenNativeCommands<NativeCommands>({
@@ -86,6 +91,7 @@ export const Commands: NativeCommands = codegenNativeCommands<NativeCommands>({
86
91
  'focus',
87
92
  'blur',
88
93
  'setValue',
94
+ 'setSelection',
89
95
  ],
90
96
  });
91
97
 
@@ -1,5 +1,6 @@
1
1
  "use strict";
2
2
 
3
3
  export { default as TypeRichTextInput } from "./TypeRichTextInput.js";
4
+ export * from './TypeRichTextInputNativeComponent';
4
5
  export * from "./TypeRichTextInput.js";
5
6
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["default","TypeRichTextInput"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":";;AAAA,SAASA,OAAO,IAAIC,iBAAiB,QAAQ,wBAAqB;AAClE,cAAc,wBAAqB","ignoreList":[]}
1
+ {"version":3,"names":["default","TypeRichTextInput"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":";;AAAA,SAASA,OAAO,IAAIC,iBAAiB,QAAQ,wBAAqB;AAClE,cAAc,oCAAoC;AAClD,cAAc,wBAAqB","ignoreList":[]}
@@ -18,6 +18,7 @@ export interface TypeRichTextInputRef {
18
18
  focus: () => void;
19
19
  blur: () => void;
20
20
  setValue: (text: string) => void;
21
+ setSelection: (start: number, end: number) => void;
21
22
  }
22
23
  /**
23
24
  * TypeRichTextInput
@@ -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;CAClC;AAED;;;;;;;;;;GAUG;AACH,QAAA,MAAM,iBAAiB,yHA4EtB,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;CACpD;AAED;;;;;;;;;;GAUG;AACH,QAAA,MAAM,iBAAiB,yHAiFtB,CAAC;AAEF,eAAe,iBAAiB,CAAC"}
@@ -52,6 +52,7 @@ interface NativeCommands {
52
52
  focus: (viewRef: React.ElementRef<ComponentType>) => void;
53
53
  blur: (viewRef: React.ElementRef<ComponentType>) => void;
54
54
  setValue: (viewRef: React.ElementRef<ComponentType>, text: string) => void;
55
+ setSelection: (viewRef: React.ElementRef<ComponentType>, start: Int32, end: Int32) => void;
55
56
  }
56
57
  export declare const Commands: NativeCommands;
57
58
  declare const _default: HostComponent<TypeRichTextInputNativeProps>;
@@ -1 +1 @@
1
- {"version":3,"file":"TypeRichTextInputNativeComponent.d.ts","sourceRoot":"","sources":["../../../src/TypeRichTextInputNativeComponent.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,EAGL,KAAK,SAAS,EACf,MAAM,cAAc,CAAC;AACtB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,KAAK,EACV,oBAAoB,EACpB,MAAM,EACN,WAAW,EACX,kBAAkB,EAClB,KAAK,EACL,KAAK,EACN,MAAM,2CAA2C,CAAC;AAEnD,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,sBAAsB;IACrC,KAAK,EAAE,KAAK,CAAC;IACb,GAAG,EAAE,KAAK,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;CACd;AACD,MAAM,WAAW,qBAAqB;IACpC,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,UAAU,GAAG,WAAW,GAAG,cAAc,CAAC;IAClD,KAAK,CAAC,EAAE;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;CAC7B;AAED,MAAM,WAAW,4BAA6B,SAAQ,SAAS;IAE7D,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,oBAAoB,CAAC,EAAE,UAAU,CAAC;IAClC,WAAW,CAAC,EAAE,UAAU,CAAC;IACzB,cAAc,CAAC,EAAE,UAAU,CAAC;IAC5B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,aAAa,CAAC,EAAE,KAAK,CAAC;IACtB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,kBAAkB,CAAC,EAAE,WAAW,CAAC,SAAS,GAAG,OAAO,GAAG,MAAM,EAAE,SAAS,CAAC,CAAC;IAM1E,YAAY,CAAC,EAAE,kBAAkB,CAAC,IAAI,CAAC,CAAC;IACxC,WAAW,CAAC,EAAE,kBAAkB,CAAC,IAAI,CAAC,CAAC;IACvC,YAAY,CAAC,EAAE,kBAAkB,CAAC,iBAAiB,CAAC,CAAC;IACrD,iBAAiB,CAAC,EAAE,kBAAkB,CAAC,sBAAsB,CAAC,CAAC;IAC/D,YAAY,CAAC,EAAE,oBAAoB,CAAC,qBAAqB,CAAC,CAAC;IAI3D,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,QAAQ,CAAC,EAAE,KAAK,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,KAAK,CAAC;IAGnB,oCAAoC,CAAC,EAAE,OAAO,CAAC;CAChD;AAED,KAAK,aAAa,GAAG,aAAa,CAAC,4BAA4B,CAAC,CAAC;AAEjE,UAAU,cAAc;IAEtB,KAAK,EAAE,CAAC,OAAO,EAAE,KAAK,CAAC,UAAU,CAAC,aAAa,CAAC,KAAK,IAAI,CAAC;IAC1D,IAAI,EAAE,CAAC,OAAO,EAAE,KAAK,CAAC,UAAU,CAAC,aAAa,CAAC,KAAK,IAAI,CAAC;IACzD,QAAQ,EAAE,CAAC,OAAO,EAAE,KAAK,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;CAC5E;AAED,eAAO,MAAM,QAAQ,EAAE,cAOrB,CAAC;wBAOE,aAAa,CAAC,4BAA4B,CAAC;AALhD,wBAKiD"}
1
+ {"version":3,"file":"TypeRichTextInputNativeComponent.d.ts","sourceRoot":"","sources":["../../../src/TypeRichTextInputNativeComponent.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  export { default as TypeRichTextInput } from './TypeRichTextInput';
2
+ export * from './TypeRichTextInputNativeComponent';
2
3
  export * from './TypeRichTextInput';
3
4
  export type { OnChangeTextEvent, OnChangeSelectionEvent, onPasteImageEventData, } from './TypeRichTextInputNativeComponent';
4
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACnE,cAAc,qBAAqB,CAAC;AACpC,YAAY,EACV,iBAAiB,EACjB,sBAAsB,EACtB,qBAAqB,GACtB,MAAM,oCAAoC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACnE,cAAc,oCAAoC,CAAC;AACnD,cAAc,qBAAqB,CAAC;AACpC,YAAY,EACV,iBAAiB,EACjB,sBAAsB,EACtB,qBAAqB,GACtB,MAAM,oCAAoC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-native-typerich",
3
- "version": "0.1.5",
3
+ "version": "0.1.7",
4
4
  "description": "Textinput replacement",
5
5
  "main": "./lib/module/index.js",
6
6
  "types": "./lib/typescript/src/index.d.ts",
@@ -55,6 +55,7 @@ export interface TypeRichTextInputRef {
55
55
  focus: () => void;
56
56
  blur: () => void;
57
57
  setValue: (text: string) => void;
58
+ setSelection: (start: number, end: number) => void;
58
59
  }
59
60
 
60
61
  /**
@@ -88,6 +89,11 @@ const TypeRichTextInput = forwardRef(
88
89
  Commands.setValue(nativeRef.current, text);
89
90
  }
90
91
  },
92
+ setSelection(start, end) {
93
+ if (nativeRef.current) {
94
+ Commands.setSelection(nativeRef.current, start, end);
95
+ }
96
+ },
91
97
  }));
92
98
 
93
99
  /**
@@ -78,6 +78,11 @@ interface NativeCommands {
78
78
  focus: (viewRef: React.ElementRef<ComponentType>) => void;
79
79
  blur: (viewRef: React.ElementRef<ComponentType>) => void;
80
80
  setValue: (viewRef: React.ElementRef<ComponentType>, text: string) => void;
81
+ setSelection: (
82
+ viewRef: React.ElementRef<ComponentType>,
83
+ start: Int32,
84
+ end: Int32
85
+ ) => void;
81
86
  }
82
87
 
83
88
  export const Commands: NativeCommands = codegenNativeCommands<NativeCommands>({
@@ -86,6 +91,7 @@ export const Commands: NativeCommands = codegenNativeCommands<NativeCommands>({
86
91
  'focus',
87
92
  'blur',
88
93
  'setValue',
94
+ 'setSelection',
89
95
  ],
90
96
  });
91
97
 
package/src/index.tsx CHANGED
@@ -1,4 +1,5 @@
1
1
  export { default as TypeRichTextInput } from './TypeRichTextInput';
2
+ export * from './TypeRichTextInputNativeComponent';
2
3
  export * from './TypeRichTextInput';
3
4
  export type {
4
5
  OnChangeTextEvent,