From 2d8620162f0d877e774ef79465f5738d45fc8eb7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?duom=E9=9D=92=E6=BA=90?= Date: Mon, 29 Apr 2024 15:23:32 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E6=B7=BB=E5=8A=A0selectionChange?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- example/src/App.tsx | 16 +++++++ ios/VariableTextInput.h | 1 + ios/VariableTextInput.m | 4 ++ ios/VariableTextInputViewManager.m | 1 + lib/commonjs/VariableTextInputView.js | 40 +++++++----------- lib/commonjs/VariableTextInputView.js.map | 2 +- lib/module/VariableTextInputView.js | 42 +++++++------------ lib/module/VariableTextInputView.js.map | 2 +- lib/typescript/VariableTextInputView.d.ts.map | 2 +- src/VariableTextInputView.tsx | 17 ++++++++ src/exTypes.ts | 6 +++ 11 files changed, 77 insertions(+), 56 deletions(-) diff --git a/example/src/App.tsx b/example/src/App.tsx index e42e0a2..8a87720 100644 --- a/example/src/App.tsx +++ b/example/src/App.tsx @@ -7,9 +7,13 @@ import { TouchableOpacity, Text, Image, + TextInput, + NativeSyntheticEvent, + TextInputKeyPressEventData, } from 'react-native'; import { IATTextViewBase, + IVSelection, IonMentionData, VariableTextInputView, } from 'react-native-variable-text-input'; @@ -72,11 +76,22 @@ export const App = () => { data, ]); }; + const onSelectionChange = (e: IVSelection) => { + console.log('==ddd===>', e.nativeEvent); + }; + const onKeyPress = (e: NativeSyntheticEvent) => { + console.log('==onKeyPress==>', e.nativeEvent.key); + }; return ( {'测试方法'} + { onFocus={() => { console.log('==onFocus=='); }} + onSelectionChange={onSelectionChange} /> { const [currentHeight, setCurrentHeight] = (0, _react.useState)(undefined); const nativeRef = (0, _react.useRef)(null); @@ -42,15 +41,6 @@ const VariableTextInputView = /*#__PURE__*/(0, _react.forwardRef)((props, ref) = props.onChangeText && props.onChangeText(text); props.onChange && props.onChange(e); }; - // useEffect(() => { - // if (!!props.text) { - // const attStrArr: IInserTextAttachmentItem[] = getAttributedTextArr( - // props.text, - // !!props.emojiData ? props.emojiData : [] - // ); - // changeAttributedText(attStrArr); - // } - // }, [props.text]); const clearMention = () => { if (!!mention) { setMention(''); @@ -58,25 +48,17 @@ const VariableTextInputView = /*#__PURE__*/(0, _react.forwardRef)((props, ref) = } }; const focus = () => { - if (_reactNative.Platform.OS === 'android') { - callNativeMethod('focus'); - } else { - VariableTextInputViewManager.focus(); - } + callNativeMethod('focus'); }; const blur = () => { - if (_reactNative.Platform.OS === 'android') { - callNativeMethod('blur'); - } else { - VariableTextInputViewManager.blur(); - } + callNativeMethod('blur'); clearMention(); }; const callNativeMethod = (methodName, data) => { const reactTag = (0, _reactNative.findNodeHandle)(nativeRef.current); const Commands = _reactNative.UIManager.getViewManagerConfig('VariableTextInputView').Commands; - const commandId = Commands[methodName] || ''; - _reactNative.UIManager.dispatchViewManagerCommand(reactTag, commandId, !!data ? data : []); + const commandId = Commands[methodName]; + _reactNative.UIManager.dispatchViewManagerCommand(reactTag, commandId || 0, !!data ? data : []); }; const insertEmoji = data => { const sendData = { @@ -86,7 +68,9 @@ const VariableTextInputView = /*#__PURE__*/(0, _react.forwardRef)((props, ref) = if (_reactNative.Platform.OS === 'android') { callNativeMethod('insertEmoji', [sendData]); } else { - VariableTextInputViewManager.insertEmoji(sendData); + callNativeMethod('insertEmoji', [{ + data: [sendData] + }]); } }; const insertMentions = data => { @@ -95,7 +79,9 @@ const VariableTextInputView = /*#__PURE__*/(0, _react.forwardRef)((props, ref) = color: (0, _reactNative.processColor)(data.color) }; if (_reactNative.Platform.OS === 'ios') { - VariableTextInputViewManager.insertMentions(sendData); + callNativeMethod('insertMentions', [{ + data: sendData + }]); } else { callNativeMethod('insertMentions', [sendData]); } @@ -106,7 +92,7 @@ const VariableTextInputView = /*#__PURE__*/(0, _react.forwardRef)((props, ref) = data.forEach(item => { const newItem = { ...item, - color: (0, _reactNative.processColor)(item.color) + color: (0, _reactNative.processColor)(item.color || '#000') }; sendData.push(newItem); }); @@ -114,7 +100,9 @@ const VariableTextInputView = /*#__PURE__*/(0, _react.forwardRef)((props, ref) = if (_reactNative.Platform.OS === 'android') { callNativeMethod('changeAttributedText', sendData); } else { - VariableTextInputViewManager.changeAttributedText(sendData); + callNativeMethod('changeAttributedText', [{ + data: sendData + }]); } }; const onContentSizeChange = event => { diff --git a/lib/commonjs/VariableTextInputView.js.map b/lib/commonjs/VariableTextInputView.js.map index 204fa3d..feb9703 100644 --- a/lib/commonjs/VariableTextInputView.js.map +++ b/lib/commonjs/VariableTextInputView.js.map @@ -1 +1 @@ -{"version":3,"names":["_reactNative","require","_react","_interopRequireWildcard","_Util","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","VariableTextInputViewManager","NativeModules","VariableTextInputView","forwardRef","props","ref","currentHeight","setCurrentHeight","useState","undefined","nativeRef","useRef","mention","setMention","keyWord","setKeyWord","textValue","setTextValue","_onChange","e","text","nativeEvent","mentions","lastStr","slice","includes","onMention","result","split","pop","mentionData","onChangeText","onChange","clearMention","focus","Platform","OS","callNativeMethod","blur","methodName","data","reactTag","findNodeHandle","current","Commands","UIManager","getViewManagerConfig","commandId","dispatchViewManagerCommand","insertEmoji","sendData","color","processColor","insertMentions","changeAttributedText","forEach","item","newItem","push","onContentSizeChange","event","style","styles","StyleSheet","flatten","height","contentSizeHeight","contentSize","maxHeight","parseFloat","minHeight","insertMentionAndDelateKeyword","type","str","deletKeyBord","arr","getAttributedTextArr","emojiData","newAttArr","useImperativeHandle","_onSubmitEditing","onSubmitEditing","onAndroidSubmitEditing","onAndroidTextInput","onTextInput","createElement","RNTVariableTextInputView","onAndroidChange","onAndroidContentSizeChange","onAndroidBlur","onBlur","onAndroidFocus","onFocus","exports","requireNativeComponent"],"sourceRoot":"../../src","sources":["VariableTextInputView.tsx"],"mappings":"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"} \ No newline at end of file +{"version":3,"names":["_reactNative","require","_react","_interopRequireWildcard","_Util","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","VariableTextInputView","forwardRef","props","ref","currentHeight","setCurrentHeight","useState","undefined","nativeRef","useRef","mention","setMention","keyWord","setKeyWord","textValue","setTextValue","_onChange","e","text","nativeEvent","mentions","lastStr","slice","includes","onMention","result","split","pop","mentionData","onChangeText","onChange","clearMention","focus","callNativeMethod","blur","methodName","data","reactTag","findNodeHandle","current","Commands","UIManager","getViewManagerConfig","commandId","dispatchViewManagerCommand","insertEmoji","sendData","color","processColor","Platform","OS","insertMentions","changeAttributedText","forEach","item","newItem","push","onContentSizeChange","event","style","styles","StyleSheet","flatten","height","contentSizeHeight","contentSize","maxHeight","parseFloat","minHeight","insertMentionAndDelateKeyword","type","str","deletKeyBord","arr","getAttributedTextArr","emojiData","newAttArr","useImperativeHandle","_onSubmitEditing","onSubmitEditing","onAndroidSubmitEditing","onAndroidTextInput","onTextInput","createElement","RNTVariableTextInputView","onAndroidChange","onAndroidContentSizeChange","onAndroidBlur","onBlur","onAndroidFocus","onFocus","exports","requireNativeComponent"],"sourceRoot":"../../src","sources":["VariableTextInputView.tsx"],"mappings":"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"} \ No newline at end of file diff --git a/lib/module/VariableTextInputView.js b/lib/module/VariableTextInputView.js index cfd2000..8d0137c 100644 --- a/lib/module/VariableTextInputView.js +++ b/lib/module/VariableTextInputView.js @@ -1,10 +1,9 @@ function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } -import { requireNativeComponent, NativeModules, StyleSheet, processColor, Platform } from 'react-native'; +import { requireNativeComponent, StyleSheet, processColor, Platform } from 'react-native'; import React, { forwardRef, useImperativeHandle, useRef, useState } from 'react'; import { UIManager } from 'react-native'; import { findNodeHandle } from 'react-native'; import { deletKeyBord, getAttributedTextArr } from './Util'; -const VariableTextInputViewManager = NativeModules.VariableTextInputViewManager; const VariableTextInputView = /*#__PURE__*/forwardRef((props, ref) => { const [currentHeight, setCurrentHeight] = useState(undefined); const nativeRef = useRef(null); @@ -36,15 +35,6 @@ const VariableTextInputView = /*#__PURE__*/forwardRef((props, ref) => { props.onChangeText && props.onChangeText(text); props.onChange && props.onChange(e); }; - // useEffect(() => { - // if (!!props.text) { - // const attStrArr: IInserTextAttachmentItem[] = getAttributedTextArr( - // props.text, - // !!props.emojiData ? props.emojiData : [] - // ); - // changeAttributedText(attStrArr); - // } - // }, [props.text]); const clearMention = () => { if (!!mention) { setMention(''); @@ -52,25 +42,17 @@ const VariableTextInputView = /*#__PURE__*/forwardRef((props, ref) => { } }; const focus = () => { - if (Platform.OS === 'android') { - callNativeMethod('focus'); - } else { - VariableTextInputViewManager.focus(); - } + callNativeMethod('focus'); }; const blur = () => { - if (Platform.OS === 'android') { - callNativeMethod('blur'); - } else { - VariableTextInputViewManager.blur(); - } + callNativeMethod('blur'); clearMention(); }; const callNativeMethod = (methodName, data) => { const reactTag = findNodeHandle(nativeRef.current); const Commands = UIManager.getViewManagerConfig('VariableTextInputView').Commands; - const commandId = Commands[methodName] || ''; - UIManager.dispatchViewManagerCommand(reactTag, commandId, !!data ? data : []); + const commandId = Commands[methodName]; + UIManager.dispatchViewManagerCommand(reactTag, commandId || 0, !!data ? data : []); }; const insertEmoji = data => { const sendData = { @@ -80,7 +62,9 @@ const VariableTextInputView = /*#__PURE__*/forwardRef((props, ref) => { if (Platform.OS === 'android') { callNativeMethod('insertEmoji', [sendData]); } else { - VariableTextInputViewManager.insertEmoji(sendData); + callNativeMethod('insertEmoji', [{ + data: [sendData] + }]); } }; const insertMentions = data => { @@ -89,7 +73,9 @@ const VariableTextInputView = /*#__PURE__*/forwardRef((props, ref) => { color: processColor(data.color) }; if (Platform.OS === 'ios') { - VariableTextInputViewManager.insertMentions(sendData); + callNativeMethod('insertMentions', [{ + data: sendData + }]); } else { callNativeMethod('insertMentions', [sendData]); } @@ -100,7 +86,7 @@ const VariableTextInputView = /*#__PURE__*/forwardRef((props, ref) => { data.forEach(item => { const newItem = { ...item, - color: processColor(item.color) + color: processColor(item.color || '#000') }; sendData.push(newItem); }); @@ -108,7 +94,9 @@ const VariableTextInputView = /*#__PURE__*/forwardRef((props, ref) => { if (Platform.OS === 'android') { callNativeMethod('changeAttributedText', sendData); } else { - VariableTextInputViewManager.changeAttributedText(sendData); + callNativeMethod('changeAttributedText', [{ + data: sendData + }]); } }; const onContentSizeChange = event => { diff --git a/lib/module/VariableTextInputView.js.map b/lib/module/VariableTextInputView.js.map index a6640ae..3f06ed4 100644 --- a/lib/module/VariableTextInputView.js.map +++ b/lib/module/VariableTextInputView.js.map @@ -1 +1 @@ -{"version":3,"names":["requireNativeComponent","NativeModules","StyleSheet","processColor","Platform","React","forwardRef","useImperativeHandle","useRef","useState","UIManager","findNodeHandle","deletKeyBord","getAttributedTextArr","VariableTextInputViewManager","VariableTextInputView","props","ref","currentHeight","setCurrentHeight","undefined","nativeRef","mention","setMention","keyWord","setKeyWord","textValue","setTextValue","_onChange","e","text","nativeEvent","mentions","length","lastStr","slice","includes","onMention","result","split","pop","mentionData","onChangeText","onChange","clearMention","focus","OS","callNativeMethod","blur","methodName","data","reactTag","current","Commands","getViewManagerConfig","commandId","dispatchViewManagerCommand","insertEmoji","sendData","color","insertMentions","changeAttributedText","forEach","item","newItem","push","onContentSizeChange","event","style","styles","flatten","height","contentSizeHeight","contentSize","maxHeight","parseFloat","minHeight","insertMentionAndDelateKeyword","type","str","arr","emojiData","newAttArr","_onSubmitEditing","onSubmitEditing","onAndroidSubmitEditing","onAndroidTextInput","onTextInput","createElement","RNTVariableTextInputView","_extends","onAndroidChange","onAndroidContentSizeChange","onAndroidBlur","onBlur","onAndroidFocus","onFocus"],"sourceRoot":"../../src","sources":["VariableTextInputView.tsx"],"mappings":";AAAA,SACEA,sBAAsB,EAMtBC,aAAa,EACbC,UAAU,EACVC,YAAY,EAEZC,QAAQ,QAGH,cAAc;AACrB,OAAOC,KAAK,IACVC,UAAU,EACVC,mBAAmB,EACnBC,MAAM,EACNC,QAAQ,QACH,OAAO;AACd,SAASC,SAAS,QAAQ,cAAc;AACxC,SAASC,cAAc,QAAQ,cAAc;AAU7C,SAASC,YAAY,EAAEC,oBAAoB,QAAQ,QAAQ;AAC3D,MAAMC,4BAA4B,GAAGb,aAAa,CAACa,4BAA4B;AA2D/E,MAAMC,qBAAqB,gBAAGT,UAAU,CACtC,CAACU,KAAa,EAAEC,GAAmB,KAAK;EACtC,MAAM,CAACC,aAAa,EAAEC,gBAAgB,CAAC,GAAGV,QAAQ,CAChDW,SAAS,CACV;EACD,MAAMC,SAAS,GAAGb,MAAM,CAAC,IAAI,CAAC;EAC9B,MAAM,CAACc,OAAO,EAAEC,UAAU,CAAC,GAAGd,QAAQ,CAAS,EAAE,CAAC;EAClD,MAAM,CAACe,OAAO,EAAEC,UAAU,CAAC,GAAGhB,QAAQ,CAAS,EAAE,CAAC;EAClD,MAAM,CAACiB,SAAS,EAAEC,YAAY,CAAC,GAAGlB,QAAQ,CAAS,EAAE,CAAC;EACtD,MAAMmB,SAAS,GAAIC,CAAiD,IAAK;IACvE,MAAMC,IAAI,GAAGD,CAAC,CAACE,WAAW,CAACD,IAAI;IAC/BH,YAAY,CAACG,IAAI,CAAC;IAClB,IAAI,CAAC,CAACd,KAAK,CAACgB,QAAQ,IAAIhB,KAAK,CAACgB,QAAQ,CAACC,MAAM,GAAG,CAAC,IAAIH,IAAI,CAACG,MAAM,GAAG,CAAC,EAAE;MACpE,MAAMC,OAAO,GAAGJ,IAAI,CAACK,KAAK,CAAC,CAAC,CAAC,CAAC;MAC9B,IAAInB,KAAK,CAACgB,QAAQ,CAACI,QAAQ,CAACF,OAAO,CAAC,EAAE;QACpCX,UAAU,CAACW,OAAO,CAAC;QACnBlB,KAAK,CAACqB,SAAS,IAAIrB,KAAK,CAACqB,SAAS,CAAC;UAAEf,OAAO,EAAEY,OAAO;UAAEV,OAAO,EAAE;QAAG,CAAC,CAAC;MACvE;MACA,IAAI,CAAC,CAACF,OAAO,EAAE;QACb,MAAMgB,MAAM,GAAGR,IAAI,CAACS,KAAK,CAACjB,OAAO,CAAC,CAACkB,GAAG,EAAE;QACxC,MAAMC,WAA2B,GAAG;UAClCnB,OAAO;UACPE,OAAO,EAAEc,MAAM,IAAI;QACrB,CAAC;QACDb,UAAU,CAACa,MAAM,IAAI,EAAE,CAAC;QACxBtB,KAAK,CAACqB,SAAS,IAAIrB,KAAK,CAACqB,SAAS,CAACI,WAAW,CAAC;MACjD;IACF;IACAzB,KAAK,CAAC0B,YAAY,IAAI1B,KAAK,CAAC0B,YAAY,CAACZ,IAAI,CAAC;IAC9Cd,KAAK,CAAC2B,QAAQ,IAAI3B,KAAK,CAAC2B,QAAQ,CAACd,CAAC,CAAC;EACrC,CAAC;EACD;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA,MAAMe,YAAY,GAAGA,CAAA,KAAM;IACzB,IAAI,CAAC,CAACtB,OAAO,EAAE;MACbC,UAAU,CAAC,EAAE,CAAC;MACdE,UAAU,CAAC,EAAE,CAAC;IAChB;EACF,CAAC;EACD,MAAMoB,KAAK,GAAGA,CAAA,KAAM;IAClB,IAAIzC,QAAQ,CAAC0C,EAAE,KAAK,SAAS,EAAE;MAC7BC,gBAAgB,CAAC,OAAO,CAAC;IAC3B,CAAC,MAAM;MACLjC,4BAA4B,CAAC+B,KAAK,EAAE;IACtC;EACF,CAAC;EACD,MAAMG,IAAI,GAAGA,CAAA,KAAM;IACjB,IAAI5C,QAAQ,CAAC0C,EAAE,KAAK,SAAS,EAAE;MAC7BC,gBAAgB,CAAC,MAAM,CAAC;IAC1B,CAAC,MAAM;MACLjC,4BAA4B,CAACkC,IAAI,EAAE;IACrC;IACAJ,YAAY,EAAE;EAChB,CAAC;EACD,MAAMG,gBAAgB,GAAGA,CAACE,UAAkB,EAAEC,IAAU,KAAK;IAC3D,MAAMC,QAAQ,GAAGxC,cAAc,CAACU,SAAS,CAAC+B,OAAO,CAAC;IAClD,MAAMC,QAAQ,GAAG3C,SAAS,CAAC4C,oBAAoB,CAC7C,uBAAuB,CACxB,CAACD,QAAQ;IACV,MAAME,SAAS,GAAGF,QAAQ,CAACJ,UAAU,CAAC,IAAI,EAAE;IAC5CvC,SAAS,CAAC8C,0BAA0B,CAClCL,QAAQ,EACRI,SAAS,EACT,CAAC,CAACL,IAAI,GAAGA,IAAI,GAAG,EAAE,CACnB;EACH,CAAC;EACD,MAAMO,WAAW,GAAIP,IAA8B,IAAK;IACtD,MAAMQ,QAAyB,GAAG;MAChC,GAAGR,IAAI;MACPS,KAAK,EAAExD,YAAY,CAAC+C,IAAI,CAACS,KAAK;IAChC,CAAC;IACD,IAAIvD,QAAQ,CAAC0C,EAAE,KAAK,SAAS,EAAE;MAC7BC,gBAAgB,CAAC,aAAa,EAAE,CAACW,QAAQ,CAAC,CAAC;IAC7C,CAAC,MAAM;MACL5C,4BAA4B,CAAC2C,WAAW,CAACC,QAAQ,CAAC;IACpD;EACF,CAAC;EACD,MAAME,cAAc,GAAIV,IAA8B,IAAK;IACzD,MAAMQ,QAAyB,GAAG;MAChC,GAAGR,IAAI;MACPS,KAAK,EAAExD,YAAY,CAAC+C,IAAI,CAACS,KAAK;IAChC,CAAC;IACD,IAAIvD,QAAQ,CAAC0C,EAAE,KAAK,KAAK,EAAE;MACzBhC,4BAA4B,CAAC8C,cAAc,CAACF,QAAQ,CAAC;IACvD,CAAC,MAAM;MACLX,gBAAgB,CAAC,gBAAgB,EAAE,CAACW,QAAQ,CAAC,CAAC;IAChD;EACF,CAAC;EACD,MAAMG,oBAAoB,GAAIX,IAAgC,IAAK;IACjE,MAAMQ,QAA2B,GAAG,EAAE;IACtC,IAAIR,IAAI,CAACjB,MAAM,GAAG,CAAC,EAAE;MACnBiB,IAAI,CAACY,OAAO,CAAEC,IAAI,IAAK;QACrB,MAAMC,OAAwB,GAAG;UAC/B,GAAGD,IAAI;UACPJ,KAAK,EAAExD,YAAY,CAAC4D,IAAI,CAACJ,KAAK;QAChC,CAAC;QACDD,QAAQ,CAACO,IAAI,CAACD,OAAO,CAAC;MACxB,CAAC,CAAC;IACJ;IACA,IAAI5D,QAAQ,CAAC0C,EAAE,KAAK,SAAS,EAAE;MAC7BC,gBAAgB,CAAC,sBAAsB,EAAEW,QAAQ,CAAC;IACpD,CAAC,MAAM;MACL5C,4BAA4B,CAAC+C,oBAAoB,CAACH,QAAQ,CAAC;IAC7D;EACF,CAAC;EACD,MAAMQ,mBAAmB,GAAIC,KAAU,IAAK;IAC1C,MAAM;MAAEC;IAAM,CAAC,GAAGpD,KAAK;IACvB,MAAMqD,MAAM,GAAGnE,UAAU,CAACoE,OAAO,CAACF,KAAK,CAAC;IACxC,IAAIC,MAAM,CAACE,MAAM,KAAKnD,SAAS,EAAE;MAC/B,MAAMoD,iBAAiB,GAAGL,KAAK,CAACpC,WAAW,CAAC0C,WAAW,CAACF,MAAM;MAC9D,IAAI,CAAC,CAACF,MAAM,CAACK,SAAS,IAAIF,iBAAiB,IAAIH,MAAM,CAACK,SAAS,EAAE;QAC/DvD,gBAAgB,CAACwD,UAAU,CAAE,GAAEN,MAAM,CAACK,SAAU,EAAC,CAAC,CAAC;QACnD;MACF;MACA,IAAI,CAAC,CAACL,MAAM,CAACO,SAAS,IAAIJ,iBAAiB,IAAIH,MAAM,CAACO,SAAS,EAAE;QAC/DzD,gBAAgB,CAACwD,UAAU,CAAE,GAAEN,MAAM,CAACO,SAAU,EAAC,CAAC,CAAC;QACnD;MACF;MACAzD,gBAAgB,CAACgD,KAAK,CAACpC,WAAW,CAAC0C,WAAW,CAACF,MAAM,CAAC;IACxD;EACF,CAAC;EACD,MAAMM,6BAA6B,GAAI3B,IAAiB,IAAK;IAC3D,MAAMa,IAA8B,GAAG;MACrCe,IAAI,EAAE,CAAC;MACP,GAAG5B;IACL,CAAC;IACD,MAAM6B,GAAG,GAAGnE,YAAY,CAACc,SAAS,EAAG,GAAEJ,OAAQ,GAAEE,OAAQ,EAAC,CAAC;IAC3D,MAAMwD,GAAG,GAAGnE,oBAAoB,CAACkE,GAAG,EAAE/D,KAAK,CAACiE,SAAS,CAAC;IACtD,MAAMC,SAAS,GAAG,CAAC,GAAGF,GAAG,EAAEjB,IAAI,CAAC;IAChCF,oBAAoB,CAACqB,SAAS,CAAC;IAC/BtC,YAAY,EAAE;EAChB,CAAC;EACDrC,mBAAmB,CAACU,GAAG,EAAE,MAAM;IAC7B,OAAO;MACL4B,KAAK,EAAEA,KAAK;MACZG,IAAI,EAAEA,IAAI;MACVS,WAAW,EAAEA,WAAW;MACxBG,cAAc,EAAEA,cAAc;MAC9BC,oBAAoB,EAAEA,oBAAoB;MAC1CgB,6BAA6B,EAAEA;IACjC,CAAC;EACH,CAAC,CAAC;EACF,MAAMM,gBAAgB,GACpBtD,CAAiD,IAC9C;IACHb,KAAK,CAACoE,eAAe,IAAIpE,KAAK,CAACoE,eAAe,CAACvD,CAAC,CAACE,WAAW,CAACD,IAAI,CAAC;EACpE,CAAC;EACD,MAAMuD,sBAAsB,GAAIxD,CAAmB,IAAK;IACtDb,KAAK,CAACoE,eAAe,IAAIpE,KAAK,CAACoE,eAAe,CAACvD,CAAC,CAACE,WAAW,CAACD,IAAI,CAAC;EACpE,CAAC;EACD,MAAMwD,kBAAkB,GAAIzD,CAAmB,IAAK;IAClDb,KAAK,CAACuE,WAAW,IAAIvE,KAAK,CAACuE,WAAW,CAAC1D,CAAC,CAAC;EAC3C,CAAC;EACD,MAAMuC,KAAK,GAAGlE,UAAU,CAACoE,OAAO,CAAC,CAACtD,KAAK,CAACoD,KAAK,EAAE;IAAEG,MAAM,EAAErD;EAAc,CAAC,CAAC,CAAC;EAC1E,oBACEb,KAAA,CAAAmF,aAAA,CAACC,wBAAwB,EAAAC,QAAA;IACvBzE,GAAG,EAAEI,SAAU;IACfsB,QAAQ,EAAEf,SAAU;IACpBsC,mBAAmB,EAAEA,mBAAoB;IACzCyB,eAAe,EAAE/D,SAAU;IAC3BgE,0BAA0B,EAAE1B;EAAoB,GAC5ClD,KAAK;IACToE,eAAe,EAAED,gBAAiB;IAClCE,sBAAsB,EAAEA,sBAAuB;IAC/CC,kBAAkB,EAAEA,kBAAmB;IACvCO,aAAa,EAAE7E,KAAK,CAAC8E,MAAO;IAC5BC,cAAc,EAAE/E,KAAK,CAACgF,OAAQ;IAC9B5B,KAAK,EAAEA;EAAM,GACb;AAEN,CAAC,CACF;AACD,MAAMqB,wBAAwB,GAAGzF,sBAAsB,CACrD,uBAAuB,CACxB;AACD,SAASe,qBAAqB"} \ No newline at end of file +{"version":3,"names":["requireNativeComponent","StyleSheet","processColor","Platform","React","forwardRef","useImperativeHandle","useRef","useState","UIManager","findNodeHandle","deletKeyBord","getAttributedTextArr","VariableTextInputView","props","ref","currentHeight","setCurrentHeight","undefined","nativeRef","mention","setMention","keyWord","setKeyWord","textValue","setTextValue","_onChange","e","text","nativeEvent","mentions","length","lastStr","slice","includes","onMention","result","split","pop","mentionData","onChangeText","onChange","clearMention","focus","callNativeMethod","blur","methodName","data","reactTag","current","Commands","getViewManagerConfig","commandId","dispatchViewManagerCommand","insertEmoji","sendData","color","OS","insertMentions","changeAttributedText","forEach","item","newItem","push","onContentSizeChange","event","style","styles","flatten","height","contentSizeHeight","contentSize","maxHeight","parseFloat","minHeight","insertMentionAndDelateKeyword","type","str","arr","emojiData","newAttArr","_onSubmitEditing","onSubmitEditing","onAndroidSubmitEditing","onAndroidTextInput","onTextInput","createElement","RNTVariableTextInputView","_extends","onAndroidChange","onAndroidContentSizeChange","onAndroidBlur","onBlur","onAndroidFocus","onFocus"],"sourceRoot":"../../src","sources":["VariableTextInputView.tsx"],"mappings":"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"} \ No newline at end of file diff --git a/lib/typescript/VariableTextInputView.d.ts.map b/lib/typescript/VariableTextInputView.d.ts.map index ff9d658..aa88e9c 100644 --- a/lib/typescript/VariableTextInputView.d.ts.map +++ b/lib/typescript/VariableTextInputView.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"VariableTextInputView.d.ts","sourceRoot":"","sources":["../../src/VariableTextInputView.tsx"],"names":[],"mappings":"AAAA,OAAO,EAEL,SAAS,EACT,SAAS,EACT,UAAU,EACV,oBAAoB,EACpB,wBAAwB,EAIxB,mCAAmC,EAEnC,mBAAmB,EACnB,oBAAoB,EACrB,MAAM,cAAc,CAAC;AACtB,OAAO,KAKN,MAAM,OAAO,CAAC;AAGf,OAAO,KAAK,EACV,eAAe,EACf,UAAU,EAEV,gBAAgB,EAChB,cAAc,EAGf,MAAM,WAAW,CAAC;AAkCnB,UAAU,MAAM;IACd,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,GAAG,SAAS,CAAC;IACzC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,oBAAoB,CAAC,EAAE,UAAU,CAAC;IAClC,kBAAkB,CAAC,EAAE,SAAS,GAAG,OAAO,GAAG,MAAM,CAAC;IAClD,QAAQ,CAAC,EAAE,CAAC,CAAC,EAAE,oBAAoB,CAAC,wBAAwB,CAAC,KAAK,IAAI,CAAC;IACvE,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACtC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,gBAAgB,KAAK,IAAI,CAAC;IAChD,mBAAmB,CAAC,EAAE,CACpB,CAAC,EAAE,oBAAoB,CAAC,mCAAmC,CAAC,KACzD,IAAI,CAAC;IACV,qBAAqB,CAAC,EAAE,UAAU,CAAC;IACnC,YAAY,CAAC,EAAE,mBAAmB,GAAG,SAAS,CAAC;IAC/C,eAAe,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACzC,cAAc,CAAC,EAAE,QAAQ,CAAC;IAC1B,SAAS,CAAC,EAAE,UAAU,EAAE,CAAC;IACzB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,cAAc,KAAK,IAAI,CAAC;IAC3C,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,aAAa,CAAC,EAAE,oBAAoB,GAAG,SAAS,CAAC;CAClD;AACD,MAAM,MAAM,cAAc,GAAG,KAAK,CAAC,YAAY,CAAC,eAAe,CAAC,CAAC;AAEjE,QAAA,MAAM,qBAAqB,gFAkL1B,CAAC;AAIF,OAAO,EAAE,qBAAqB,EAAE,CAAC"} \ No newline at end of file +{"version":3,"file":"VariableTextInputView.d.ts","sourceRoot":"","sources":["../../src/VariableTextInputView.tsx"],"names":[],"mappings":"AAAA,OAAO,EAEL,SAAS,EACT,SAAS,EACT,UAAU,EACV,oBAAoB,EACpB,wBAAwB,EAGxB,mCAAmC,EAEnC,mBAAmB,EACnB,oBAAoB,EACrB,MAAM,cAAc,CAAC;AACtB,OAAO,KAKN,MAAM,OAAO,CAAC;AAGf,OAAO,KAAK,EACV,eAAe,EACf,UAAU,EAEV,gBAAgB,EAChB,cAAc,EAGf,MAAM,WAAW,CAAC;AAiCnB,UAAU,MAAM;IACd,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,GAAG,SAAS,CAAC;IACzC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,oBAAoB,CAAC,EAAE,UAAU,CAAC;IAClC,kBAAkB,CAAC,EAAE,SAAS,GAAG,OAAO,GAAG,MAAM,CAAC;IAClD,QAAQ,CAAC,EAAE,CAAC,CAAC,EAAE,oBAAoB,CAAC,wBAAwB,CAAC,KAAK,IAAI,CAAC;IACvE,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACtC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,gBAAgB,KAAK,IAAI,CAAC;IAChD,mBAAmB,CAAC,EAAE,CACpB,CAAC,EAAE,oBAAoB,CAAC,mCAAmC,CAAC,KACzD,IAAI,CAAC;IACV,qBAAqB,CAAC,EAAE,UAAU,CAAC;IACnC,YAAY,CAAC,EAAE,mBAAmB,GAAG,SAAS,CAAC;IAC/C,eAAe,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACzC,cAAc,CAAC,EAAE,QAAQ,CAAC;IAC1B,SAAS,CAAC,EAAE,UAAU,EAAE,CAAC;IACzB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,cAAc,KAAK,IAAI,CAAC;IAC3C,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,aAAa,CAAC,EAAE,oBAAoB,GAAG,SAAS,CAAC;CAClD;AACD,MAAM,MAAM,cAAc,GAAG,KAAK,CAAC,YAAY,CAAC,eAAe,CAAC,CAAC;AAEjE,QAAA,MAAM,qBAAqB,gFAiK1B,CAAC;AAIF,OAAO,EAAE,qBAAqB,EAAE,CAAC"} \ No newline at end of file diff --git a/src/VariableTextInputView.tsx b/src/VariableTextInputView.tsx index ca3fcaf..d86642e 100644 --- a/src/VariableTextInputView.tsx +++ b/src/VariableTextInputView.tsx @@ -11,6 +11,7 @@ import { Platform, KeyboardTypeOptions, ReturnKeyTypeOptions, + TextInputSelectionChangeEventData, } from 'react-native'; import React, { forwardRef, @@ -24,6 +25,7 @@ import type { IATTextViewBase, IEmojiData, IInserTextAttachmentItem, + IVSelection, IVTTextInputData, IonMentionData, MentionData, @@ -60,6 +62,12 @@ interface INativeProps { onAndroidFocus?: () => void; onAndroidBlur?: () => void; returnKeyType?: ReturnKeyTypeOptions | undefined; + onIOSSelectionChange?: ( + e: NativeSyntheticEvent + ) => void; + onAndroidSelectionChange?: ( + e: NativeSyntheticEvent + ) => void; } interface IProps { style?: StyleProp | undefined; @@ -85,6 +93,7 @@ interface IProps { onBlur?: () => void; onFocus?: () => void; returnKeyType?: ReturnKeyTypeOptions | undefined; + onSelectionChange?: (e: IVSelection) => void; } export type IATTextViewRef = React.ForwardedRef; @@ -231,6 +240,12 @@ const VariableTextInputView = forwardRef( const onAndroidTextInput = (e: IVTTextInputData) => { props.onTextInput && props.onTextInput(e); }; + const _onSelectionChange = ( + e: NativeSyntheticEvent + ) => { + props.onSelectionChange && + props.onSelectionChange({ nativeEvent: e.nativeEvent.selection }); + }; const style = StyleSheet.flatten([props.style, { height: currentHeight }]); return ( ); diff --git a/src/exTypes.ts b/src/exTypes.ts index 57388d5..97441b2 100644 --- a/src/exTypes.ts +++ b/src/exTypes.ts @@ -21,6 +21,12 @@ export interface IVTTextInputData { text: string; }; } +export interface IVSelection { + nativeEvent: { + start: number; + end: number; + }; +} export enum ITextType { emoji = 1, normal = 0,