react-native-cross-components
Version:
Beautiful React-Native components using RN Paper by Callstack
66 lines • 10.2 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
const react_1 = __importDefault(require("react"));
const react_native_paper_1 = require("react-native-paper");
const react_native_masked_text_1 = require("react-native-masked-text");
let maskInput = null;
/**
* A text input supporting mask through {@see ICrossEditorProps.maskProps}.
*
* When using mask the raw value will be exported in the `onChangeText` event, not the masked value.
*
* Default {@see ICrossEditorProps.mode mode} is 'outlined'.
*
* Props are {@see ICrossEditorProps}
*
*
* @example
* ```
<CrossEditor
label='Mobile'
maskProps={{ type: 'cel-phone' }} />
```
*/
class CrossEditor extends react_1.default.Component {
constructor(props) {
super(props);
}
render() {
const paperProps = Object.assign({}, this.props, { mode: this.props.mode || 'outlined' });
console.log('** CrossEditor paper props = ', paperProps);
if (this.props.maskProps && this.props.maskProps.type) {
const maskedProps = Object.assign({}, this.props, this.props.maskProps);
console.log('** CrossEditor masked props = ', maskedProps);
console.log('*** CrossEditor: render TextInputMask');
return (react_1.default.createElement(react_native_masked_text_1.TextInputMask, Object.assign({}, maskedProps, { ref: (comp) => (maskInput = comp),
// @ts-ignore - bad map
customTextInput: react_native_paper_1.TextInput, customTextInputProps: paperProps, onChangeText: () => {
console.log('**** CrossEditor: onChangeText');
if (!maskInput || !maskInput.getRawValue) {
console.log('TextInputMask missing getRawValue', maskInput);
return;
}
// @ts-ignore - bad map
const rawValue = maskInput.getRawValue();
console.log('CrossEditor rawValue = ', rawValue || 'nothing');
if (paperProps.onChangeText) {
paperProps.onChangeText(rawValue);
return;
}
else if (maskedProps && maskedProps.onChangeText) {
maskedProps.onChangeText(rawValue);
return;
}
console.log('CrossEditor: no listener');
} })));
}
console.log('** CrossEditor: render paper TextInput **');
return react_1.default.createElement(react_native_paper_1.TextInput, Object.assign({}, paperProps, { mode: paperProps.mode }));
}
}
exports.CrossEditor = CrossEditor;
exports.default = CrossEditor;
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJmaWxlIjoiL1VzZXJzL3Rob21hcy9Tb3VyY2UvcmVhY3QtbmF0aXZlLWNvcmUvc291cmNlL2NvbXBvbmVudHMvaW5wdXQvQ3Jvc3NFZGl0b3IudHN4IiwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsa0RBQTBCO0FBQzFCLDJEQUErRDtBQUMvRCx1RUFBNkU7QUF3QzdFLElBQUksU0FBUyxHQUFlLElBQUksQ0FBQztBQUVqQzs7Ozs7Ozs7Ozs7Ozs7OztHQWdCRztBQUNILE1BQWEsV0FBWSxTQUFRLGVBQUssQ0FBQyxTQUE0QjtJQUNqRSxZQUFZLEtBQXdCO1FBQ2xDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNmLENBQUM7SUFFRCxNQUFNO1FBQ0osTUFBTSxVQUFVLEdBQUcsa0JBQ2QsSUFBSSxDQUFDLEtBQUssSUFDYixJQUFJLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLElBQUssVUFBa0MsR0FDM0MsQ0FBQztRQUNwQixPQUFPLENBQUMsR0FBRyxDQUFDLCtCQUErQixFQUFFLFVBQVUsQ0FBQyxDQUFDO1FBRXpELElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFO1lBQ3JELE1BQU0sV0FBVyxHQUFHLGtCQUNmLElBQUksQ0FBQyxLQUFLLEVBQ1YsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQ0YsQ0FBQztZQUN4QixPQUFPLENBQUMsR0FBRyxDQUFDLGdDQUFnQyxFQUFFLFdBQVcsQ0FBQyxDQUFDO1lBRTNELE9BQU8sQ0FBQyxHQUFHLENBQUMsdUNBQXVDLENBQUMsQ0FBQztZQUVyRCxPQUFPLENBQ0wsOEJBQUMsd0NBQWEsb0JBQ1IsV0FBVyxJQUNmLEdBQUcsRUFBRSxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDO2dCQUNqQyx1QkFBdUI7Z0JBQ3ZCLGVBQWUsRUFBRSw4QkFBUyxFQUMxQixvQkFBb0IsRUFBRSxVQUFVLEVBQ2hDLFlBQVksRUFBRSxHQUFHLEVBQUU7b0JBQ2pCLE9BQU8sQ0FBQyxHQUFHLENBQUMsZ0NBQWdDLENBQUMsQ0FBQztvQkFDOUMsSUFBSSxDQUFDLFNBQVMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxXQUFXLEVBQUU7d0JBQ3hDLE9BQU8sQ0FBQyxHQUFHLENBQUMsbUNBQW1DLEVBQUUsU0FBUyxDQUFDLENBQUM7d0JBQzVELE9BQU87cUJBQ1I7b0JBRUQsdUJBQXVCO29CQUN2QixNQUFNLFFBQVEsR0FBRyxTQUFTLENBQUMsV0FBVyxFQUFFLENBQUM7b0JBQ3pDLE9BQU8sQ0FBQyxHQUFHLENBQUMseUJBQXlCLEVBQUUsUUFBUSxJQUFJLFNBQVMsQ0FBQyxDQUFDO29CQUU5RCxJQUFJLFVBQVUsQ0FBQyxZQUFZLEVBQUU7d0JBQzNCLFVBQVUsQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLENBQUM7d0JBQ2xDLE9BQU87cUJBQ1I7eUJBQU0sSUFBSSxXQUFXLElBQUksV0FBVyxDQUFDLFlBQVksRUFBRTt3QkFDbEQsV0FBVyxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsQ0FBQzt3QkFDbkMsT0FBTztxQkFDUjtvQkFFRCxPQUFPLENBQUMsR0FBRyxDQUFDLDBCQUEwQixDQUFDLENBQUM7Z0JBQzFDLENBQUMsSUFDRCxDQUNILENBQUM7U0FDSDtRQUVELE9BQU8sQ0FBQyxHQUFHLENBQUMsMkNBQTJDLENBQUMsQ0FBQTtRQUN4RCxPQUFPLDhCQUFDLDhCQUFTLG9CQUFLLFVBQVUsSUFBRSxJQUFJLEVBQUUsVUFBVSxDQUFDLElBQUksSUFBSSxDQUFDO0lBQzlELENBQUM7Q0FDRjtBQXhERCxrQ0F3REM7QUFFRCxrQkFBZSxXQUFXLENBQUMiLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiL1VzZXJzL3Rob21hcy9Tb3VyY2UvcmVhY3QtbmF0aXZlLWNvcmUvc291cmNlL2NvbXBvbmVudHMvaW5wdXQvQ3Jvc3NFZGl0b3IudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBUZXh0SW5wdXQsIFRleHRJbnB1dFByb3BzIH0gZnJvbSAncmVhY3QtbmF0aXZlLXBhcGVyJztcbmltcG9ydCB7IFRleHRJbnB1dE1hc2ssIFRleHRJbnB1dE1hc2tQcm9wcyB9IGZyb20gJ3JlYWN0LW5hdGl2ZS1tYXNrZWQtdGV4dCc7XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgdGhlIHtAbGluayBDcm9zc0VkaXRvcn0gY29tcG9uZW50LiBTdXBwb3J0cyBtYXNraW5nIHRocm91Z2gge0BsaW5rIG1hc2tQcm9wc30uIFRoaXMgYWxsb3dzIGdldHRpbmcgdGhlIG1hc2tlZCB2YWx1ZS5cbiAqXG4gKiBUaGUgYG9uQ2hhbmdlVGV4dGAgZXZlbnQgd2lsbCBpc250ZWFkIGV4cG9ydCB0aGUgcmF3IHZhbHVlLlxuICpcbiAqIEluaGVyaXRzIHJlYWN0LW5hdGl2ZS1wYXBlciB7QGxpbmsgaHR0cHM6Ly9jYWxsc3RhY2suZ2l0aHViLmlvL3JlYWN0LW5hdGl2ZS1wYXBlci90ZXh0LWlucHV0Lmh0bWwgVGV4dElucHV0UHJvcHN9XG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSUNyb3NzRWRpdG9yUHJvcHMgZXh0ZW5kcyBUZXh0SW5wdXRQcm9wcyB7XG4gIC8qKlxuICAgKiBUZXh0IGZvciBmbG9hdGluZyBsYWJlbFxuICAgKiBodHRwczovL2NhbGxzdGFjay5naXRodWIuaW8vcmVhY3QtbmF0aXZlLXBhcGVyL3RleHQtaW5wdXQuaHRtbFxuICAgKi9cbiAgbGFiZWw6IHN0cmluZztcbiAgLyoqXG4gICAqIGBUcnVlYCB0byB1c2UgZXJyb3Igc3R5bGluZ1xuICAgKiBodHRwczovL2NhbGxzdGFjay5naXRodWIuaW8vcmVhY3QtbmF0aXZlLXBhcGVyL3RleHQtaW5wdXQuaHRtbFxuICAgKi9cbiAgZXJyb3I/OiBib29sZWFuIHwgdW5kZWZpbmVkO1xuICAvKipcbiAgICogVmlzdWFsIGFwcGVhcmVuY2UuIERlZmF1bHQgdmFsdWUgaXMgJ291dGxpbmVkJ1xuICAgKlxuICAgKiBodHRwczovL2NhbGxzdGFjay5naXRodWIuaW8vcmVhY3QtbmF0aXZlLXBhcGVyL3RleHQtaW5wdXQuaHRtbFxuICAgKi9cbiAgbW9kZT86ICdmbGF0JyB8ICdvdXRsaW5lZCcgfCB1bmRlZmluZWQ7XG4gIC8qKlxuICAgKiBBbGxvd3MgbWFza2luZyB0aGUgaW5wdXQuXG4gICAqIFxuICAgKiBodHRwczovL2dpdGh1Yi5jb20vYmVuaHVyb3R0L3JlYWN0LW5hdGl2ZS1tYXNrZWQtdGV4dFxuICAgKiBcbiAgICogQGV4YW1wbGVcbiAgICogYGBgXG4gICA8Q3Jvc3NFZGl0b3JcbiAgICBsYWJlbD0nTW9iaWxlJ1xuICAgIG1hc2tQcm9wcz17eyB0eXBlOiAnY2VsLXBob25lJyB9fSAvPmBgYFxuICAgKi9cbiAgbWFza1Byb3BzPzogVGV4dElucHV0TWFza1Byb3BzIHwgdW5kZWZpbmVkO1xufVxuXG5sZXQgbWFza0lucHV0OiBhbnkgfCBudWxsID0gbnVsbDtcblxuLyoqXG4gKiBBIHRleHQgaW5wdXQgc3VwcG9ydGluZyBtYXNrIHRocm91Z2gge0BzZWUgSUNyb3NzRWRpdG9yUHJvcHMubWFza1Byb3BzfS5cbiAqIFxuICogV2hlbiB1c2luZyBtYXNrIHRoZSByYXcgdmFsdWUgd2lsbCBiZSBleHBvcnRlZCBpbiB0aGUgYG9uQ2hhbmdlVGV4dGAgZXZlbnQsIG5vdCB0aGUgbWFza2VkIHZhbHVlLlxuICogXG4gKiBEZWZhdWx0IHtAc2VlIElDcm9zc0VkaXRvclByb3BzLm1vZGUgbW9kZX0gaXMgJ291dGxpbmVkJy5cbiAqXG4gKiBQcm9wcyBhcmUge0BzZWUgSUNyb3NzRWRpdG9yUHJvcHN9XG4gKiBcbiAqIFxuICogQGV4YW1wbGVcbiAqIGBgYFxuIDxDcm9zc0VkaXRvclxuICBsYWJlbD0nTW9iaWxlJ1xuICBtYXNrUHJvcHM9e3sgdHlwZTogJ2NlbC1waG9uZScgfX0gLz5cbiBgYGBcbiAqL1xuZXhwb3J0IGNsYXNzIENyb3NzRWRpdG9yIGV4dGVuZHMgUmVhY3QuQ29tcG9uZW50PElDcm9zc0VkaXRvclByb3BzPiB7XG4gIGNvbnN0cnVjdG9yKHByb3BzOiBJQ3Jvc3NFZGl0b3JQcm9wcykge1xuICAgIHN1cGVyKHByb3BzKTtcbiAgfVxuXG4gIHJlbmRlcigpIHtcbiAgICBjb25zdCBwYXBlclByb3BzID0ge1xuICAgICAgLi4udGhpcy5wcm9wcyxcbiAgICAgIG1vZGU6IHRoaXMucHJvcHMubW9kZSB8fCAoJ291dGxpbmVkJyBhcyAnZmxhdCcgfCAnb3V0bGluZWQnKSxcbiAgICB9IGFzIFRleHRJbnB1dFByb3BzO1xuICAgIGNvbnNvbGUubG9nKCcqKiBDcm9zc0VkaXRvciBwYXBlciBwcm9wcyA9ICcsIHBhcGVyUHJvcHMpO1xuXG4gICAgaWYgKHRoaXMucHJvcHMubWFza1Byb3BzICYmIHRoaXMucHJvcHMubWFza1Byb3BzLnR5cGUpIHtcbiAgICAgIGNvbnN0IG1hc2tlZFByb3BzID0ge1xuICAgICAgICAuLi50aGlzLnByb3BzLFxuICAgICAgICAuLi50aGlzLnByb3BzLm1hc2tQcm9wcyxcbiAgICAgIH0gYXMgVGV4dElucHV0TWFza1Byb3BzO1xuICAgICAgY29uc29sZS5sb2coJyoqIENyb3NzRWRpdG9yIG1hc2tlZCBwcm9wcyA9ICcsIG1hc2tlZFByb3BzKTtcblxuICAgICAgY29uc29sZS5sb2coJyoqKiBDcm9zc0VkaXRvcjogcmVuZGVyIFRleHRJbnB1dE1hc2snKTtcblxuICAgICAgcmV0dXJuIChcbiAgICAgICAgPFRleHRJbnB1dE1hc2tcbiAgICAgICAgICB7Li4ubWFza2VkUHJvcHN9XG4gICAgICAgICAgcmVmPXsoY29tcCkgPT4gKG1hc2tJbnB1dCA9IGNvbXApfVxuICAgICAgICAgIC8vIEB0cy1pZ25vcmUgLSBiYWQgbWFwXG4gICAgICAgICAgY3VzdG9tVGV4dElucHV0PXtUZXh0SW5wdXR9XG4gICAgICAgICAgY3VzdG9tVGV4dElucHV0UHJvcHM9e3BhcGVyUHJvcHN9XG4gICAgICAgICAgb25DaGFuZ2VUZXh0PXsoKSA9PiB7XG4gICAgICAgICAgICBjb25zb2xlLmxvZygnKioqKiBDcm9zc0VkaXRvcjogb25DaGFuZ2VUZXh0Jyk7XG4gICAgICAgICAgICBpZiAoIW1hc2tJbnB1dCB8fCAhbWFza0lucHV0LmdldFJhd1ZhbHVlKSB7XG4gICAgICAgICAgICAgIGNvbnNvbGUubG9nKCdUZXh0SW5wdXRNYXNrIG1pc3NpbmcgZ2V0UmF3VmFsdWUnLCBtYXNrSW5wdXQpO1xuICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIEB0cy1pZ25vcmUgLSBiYWQgbWFwXG4gICAgICAgICAgICBjb25zdCByYXdWYWx1ZSA9IG1hc2tJbnB1dC5nZXRSYXdWYWx1ZSgpO1xuICAgICAgICAgICAgY29uc29sZS5sb2coJ0Nyb3NzRWRpdG9yIHJhd1ZhbHVlID0gJywgcmF3VmFsdWUgfHwgJ25vdGhpbmcnKTtcblxuICAgICAgICAgICAgaWYgKHBhcGVyUHJvcHMub25DaGFuZ2VUZXh0KSB7XG4gICAgICAgICAgICAgIHBhcGVyUHJvcHMub25DaGFuZ2VUZXh0KHJhd1ZhbHVlKTtcbiAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfSBlbHNlIGlmIChtYXNrZWRQcm9wcyAmJiBtYXNrZWRQcm9wcy5vbkNoYW5nZVRleHQpIHtcbiAgICAgICAgICAgICAgbWFza2VkUHJvcHMub25DaGFuZ2VUZXh0KHJhd1ZhbHVlKTtcbiAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBjb25zb2xlLmxvZygnQ3Jvc3NFZGl0b3I6IG5vIGxpc3RlbmVyJyk7XG4gICAgICAgICAgfX1cbiAgICAgICAgLz5cbiAgICAgICk7XG4gICAgfVxuXG4gICAgY29uc29sZS5sb2coJyoqIENyb3NzRWRpdG9yOiByZW5kZXIgcGFwZXIgVGV4dElucHV0ICoqJylcbiAgICByZXR1cm4gPFRleHRJbnB1dCB7Li4ucGFwZXJQcm9wc30gbW9kZT17cGFwZXJQcm9wcy5tb2RlfSAvPjtcbiAgfVxufVxuXG5leHBvcnQgZGVmYXVsdCBDcm9zc0VkaXRvcjtcbiJdLCJ2ZXJzaW9uIjozfQ==