react-native-cross-components
Version:
Beautiful React-Native components using RN Paper by Callstack
65 lines • 9.98 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');
} })));
}
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,eyJmaWxlIjoiL1VzZXJzL3Rob21hcy9Tb3VyY2UvcmVhY3QtbmF0aXZlLWNvcmUvc291cmNlL2NvbXBvbmVudHMvaW5wdXQvQ3Jvc3NFZGl0b3IudHN4IiwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsa0RBQTBCO0FBQzFCLDJEQUErRDtBQUMvRCx1RUFBNkU7QUF3QzdFLElBQUksU0FBUyxHQUFlLElBQUksQ0FBQztBQUVqQzs7Ozs7Ozs7Ozs7Ozs7OztHQWdCRztBQUNILE1BQWEsV0FBWSxTQUFRLGVBQUssQ0FBQyxTQUE0QjtJQUNqRSxZQUFZLEtBQXdCO1FBQ2xDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNmLENBQUM7SUFFRCxNQUFNO1FBQ0osTUFBTSxVQUFVLEdBQUcsa0JBQ2QsSUFBSSxDQUFDLEtBQUssSUFDYixJQUFJLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLElBQUssVUFBa0MsR0FDM0MsQ0FBQztRQUNwQixPQUFPLENBQUMsR0FBRyxDQUFDLDRCQUE0QixFQUFFLFVBQVUsQ0FBQyxDQUFDO1FBRXRELElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFO1lBQ3JELE1BQU0sV0FBVyxHQUFHLGtCQUNmLElBQUksQ0FBQyxLQUFLLEVBQ1YsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQ0YsQ0FBQztZQUN4QixPQUFPLENBQUMsR0FBRyxDQUFDLGdDQUFnQyxFQUFFLFdBQVcsQ0FBQyxDQUFDO1lBRTNELE9BQU8sQ0FBQyxHQUFHLENBQUMsdUNBQXVDLENBQUMsQ0FBQztZQUVyRCxPQUFPLENBQ0wsOEJBQUMsd0NBQWEsb0JBQ1IsV0FBVyxJQUNmLEdBQUcsRUFBRSxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDO2dCQUNqQyx1QkFBdUI7Z0JBQ3ZCLGVBQWUsRUFBRSw4QkFBUyxFQUMxQixvQkFBb0IsRUFBRSxVQUFVLEVBQ2hDLFlBQVksRUFBRSxHQUFHLEVBQUU7b0JBQ2pCLE9BQU8sQ0FBQyxHQUFHLENBQUMsZ0NBQWdDLENBQUMsQ0FBQztvQkFDOUMsSUFBSSxDQUFDLFNBQVMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxXQUFXLEVBQUU7d0JBQ3hDLE9BQU8sQ0FBQyxHQUFHLENBQUMsbUNBQW1DLEVBQUUsU0FBUyxDQUFDLENBQUM7d0JBQzVELE9BQU87cUJBQ1I7b0JBRUQsdUJBQXVCO29CQUN2QixNQUFNLFFBQVEsR0FBRyxTQUFTLENBQUMsV0FBVyxFQUFFLENBQUM7b0JBQ3pDLE9BQU8sQ0FBQyxHQUFHLENBQUMseUJBQXlCLEVBQUUsUUFBUSxJQUFJLFNBQVMsQ0FBQyxDQUFDO29CQUU5RCxJQUFJLFVBQVUsQ0FBQyxZQUFZLEVBQUU7d0JBQzNCLFVBQVUsQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLENBQUM7d0JBQ2xDLE9BQU87cUJBQ1I7eUJBQU0sSUFBSSxXQUFXLElBQUksV0FBVyxDQUFDLFlBQVksRUFBRTt3QkFDbEQsV0FBVyxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsQ0FBQzt3QkFDbkMsT0FBTztxQkFDUjtvQkFFRCxPQUFPLENBQUMsR0FBRyxDQUFDLDBCQUEwQixDQUFDLENBQUM7Z0JBQzFDLENBQUMsSUFDRCxDQUNILENBQUM7U0FDSDtRQUVELE9BQU8sOEJBQUMsOEJBQVMsb0JBQUssVUFBVSxJQUFFLElBQUksRUFBRSxVQUFVLENBQUMsSUFBSSxJQUFJLENBQUM7SUFDOUQsQ0FBQztDQUNGO0FBdkRELGtDQXVEQztBQUVELGtCQUFlLFdBQVcsQ0FBQyIsIm5hbWVzIjpbXSwic291cmNlcyI6WyIvVXNlcnMvdGhvbWFzL1NvdXJjZS9yZWFjdC1uYXRpdmUtY29yZS9zb3VyY2UvY29tcG9uZW50cy9pbnB1dC9Dcm9zc0VkaXRvci50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IFRleHRJbnB1dCwgVGV4dElucHV0UHJvcHMgfSBmcm9tICdyZWFjdC1uYXRpdmUtcGFwZXInO1xuaW1wb3J0IHsgVGV4dElucHV0TWFzaywgVGV4dElucHV0TWFza1Byb3BzIH0gZnJvbSAncmVhY3QtbmF0aXZlLW1hc2tlZC10ZXh0JztcblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciB0aGUge0BsaW5rIENyb3NzRWRpdG9yfSBjb21wb25lbnQuIFN1cHBvcnRzIG1hc2tpbmcgdGhyb3VnaCB7QGxpbmsgbWFza1Byb3BzfS4gVGhpcyBhbGxvd3MgZ2V0dGluZyB0aGUgbWFza2VkIHZhbHVlLlxuICpcbiAqIFRoZSBgb25DaGFuZ2VUZXh0YCBldmVudCB3aWxsIGlzbnRlYWQgZXhwb3J0IHRoZSByYXcgdmFsdWUuXG4gKlxuICogSW5oZXJpdHMgcmVhY3QtbmF0aXZlLXBhcGVyIHtAbGluayBodHRwczovL2NhbGxzdGFjay5naXRodWIuaW8vcmVhY3QtbmF0aXZlLXBhcGVyL3RleHQtaW5wdXQuaHRtbCBUZXh0SW5wdXRQcm9wc31cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJQ3Jvc3NFZGl0b3JQcm9wcyBleHRlbmRzIFRleHRJbnB1dFByb3BzIHtcbiAgLyoqXG4gICAqIFRleHQgZm9yIGZsb2F0aW5nIGxhYmVsXG4gICAqIGh0dHBzOi8vY2FsbHN0YWNrLmdpdGh1Yi5pby9yZWFjdC1uYXRpdmUtcGFwZXIvdGV4dC1pbnB1dC5odG1sXG4gICAqL1xuICBsYWJlbDogc3RyaW5nO1xuICAvKipcbiAgICogYFRydWVgIHRvIHVzZSBlcnJvciBzdHlsaW5nXG4gICAqIGh0dHBzOi8vY2FsbHN0YWNrLmdpdGh1Yi5pby9yZWFjdC1uYXRpdmUtcGFwZXIvdGV4dC1pbnB1dC5odG1sXG4gICAqL1xuICBlcnJvcj86IGJvb2xlYW4gfCB1bmRlZmluZWQ7XG4gIC8qKlxuICAgKiBWaXN1YWwgYXBwZWFyZW5jZS4gRGVmYXVsdCB2YWx1ZSBpcyAnb3V0bGluZWQnXG4gICAqXG4gICAqIGh0dHBzOi8vY2FsbHN0YWNrLmdpdGh1Yi5pby9yZWFjdC1uYXRpdmUtcGFwZXIvdGV4dC1pbnB1dC5odG1sXG4gICAqL1xuICBtb2RlPzogJ2ZsYXQnIHwgJ291dGxpbmVkJyB8IHVuZGVmaW5lZDtcbiAgLyoqXG4gICAqIEFsbG93cyBtYXNraW5nIHRoZSBpbnB1dC5cbiAgICogXG4gICAqIGh0dHBzOi8vZ2l0aHViLmNvbS9iZW5odXJvdHQvcmVhY3QtbmF0aXZlLW1hc2tlZC10ZXh0XG4gICAqIFxuICAgKiBAZXhhbXBsZVxuICAgKiBgYGBcbiAgIDxDcm9zc0VkaXRvclxuICAgIGxhYmVsPSdNb2JpbGUnXG4gICAgbWFza1Byb3BzPXt7IHR5cGU6ICdjZWwtcGhvbmUnIH19IC8+YGBgXG4gICAqL1xuICBtYXNrUHJvcHM/OiBUZXh0SW5wdXRNYXNrUHJvcHMgfCB1bmRlZmluZWQ7XG59XG5cbmxldCBtYXNrSW5wdXQ6IGFueSB8IG51bGwgPSBudWxsO1xuXG4vKipcbiAqIEEgdGV4dCBpbnB1dCBzdXBwb3J0aW5nIG1hc2sgdGhyb3VnaCB7QHNlZSBJQ3Jvc3NFZGl0b3JQcm9wcy5tYXNrUHJvcHN9LlxuICogXG4gKiBXaGVuIHVzaW5nIG1hc2sgdGhlIHJhdyB2YWx1ZSB3aWxsIGJlIGV4cG9ydGVkIGluIHRoZSBgb25DaGFuZ2VUZXh0YCBldmVudCwgbm90IHRoZSBtYXNrZWQgdmFsdWUuXG4gKiBcbiAqIERlZmF1bHQge0BzZWUgSUNyb3NzRWRpdG9yUHJvcHMubW9kZSBtb2RlfSBpcyAnb3V0bGluZWQnLlxuICpcbiAqIFByb3BzIGFyZSB7QHNlZSBJQ3Jvc3NFZGl0b3JQcm9wc31cbiAqIFxuICogXG4gKiBAZXhhbXBsZVxuICogYGBgXG4gPENyb3NzRWRpdG9yXG4gIGxhYmVsPSdNb2JpbGUnXG4gIG1hc2tQcm9wcz17eyB0eXBlOiAnY2VsLXBob25lJyB9fSAvPlxuIGBgYFxuICovXG5leHBvcnQgY2xhc3MgQ3Jvc3NFZGl0b3IgZXh0ZW5kcyBSZWFjdC5Db21wb25lbnQ8SUNyb3NzRWRpdG9yUHJvcHM+IHtcbiAgY29uc3RydWN0b3IocHJvcHM6IElDcm9zc0VkaXRvclByb3BzKSB7XG4gICAgc3VwZXIocHJvcHMpO1xuICB9XG5cbiAgcmVuZGVyKCkge1xuICAgIGNvbnN0IHBhcGVyUHJvcHMgPSB7XG4gICAgICAuLi50aGlzLnByb3BzLFxuICAgICAgbW9kZTogdGhpcy5wcm9wcy5tb2RlIHx8ICgnb3V0bGluZWQnIGFzICdmbGF0JyB8ICdvdXRsaW5lZCcpLFxuICAgIH0gYXMgVGV4dElucHV0UHJvcHM7XG4gICAgY29uc29sZS5sb2coJ0Nyb3NzRWRpdG9yIHBhcGVyIHByb3BzID0gJywgcGFwZXJQcm9wcyk7XG5cbiAgICBpZiAodGhpcy5wcm9wcy5tYXNrUHJvcHMgJiYgdGhpcy5wcm9wcy5tYXNrUHJvcHMudHlwZSkge1xuICAgICAgY29uc3QgbWFza2VkUHJvcHMgPSB7XG4gICAgICAgIC4uLnRoaXMucHJvcHMsXG4gICAgICAgIC4uLnRoaXMucHJvcHMubWFza1Byb3BzLFxuICAgICAgfSBhcyBUZXh0SW5wdXRNYXNrUHJvcHM7XG4gICAgICBjb25zb2xlLmxvZygnKiogQ3Jvc3NFZGl0b3IgbWFza2VkIHByb3BzID0gJywgbWFza2VkUHJvcHMpO1xuXG4gICAgICBjb25zb2xlLmxvZygnKioqIENyb3NzRWRpdG9yOiByZW5kZXIgVGV4dElucHV0TWFzaycpO1xuXG4gICAgICByZXR1cm4gKFxuICAgICAgICA8VGV4dElucHV0TWFza1xuICAgICAgICAgIHsuLi5tYXNrZWRQcm9wc31cbiAgICAgICAgICByZWY9eyhjb21wKSA9PiAobWFza0lucHV0ID0gY29tcCl9XG4gICAgICAgICAgLy8gQHRzLWlnbm9yZSAtIGJhZCBtYXBcbiAgICAgICAgICBjdXN0b21UZXh0SW5wdXQ9e1RleHRJbnB1dH1cbiAgICAgICAgICBjdXN0b21UZXh0SW5wdXRQcm9wcz17cGFwZXJQcm9wc31cbiAgICAgICAgICBvbkNoYW5nZVRleHQ9eygpID0+IHtcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKCcqKioqIENyb3NzRWRpdG9yOiBvbkNoYW5nZVRleHQnKTtcbiAgICAgICAgICAgIGlmICghbWFza0lucHV0IHx8ICFtYXNrSW5wdXQuZ2V0UmF3VmFsdWUpIHtcbiAgICAgICAgICAgICAgY29uc29sZS5sb2coJ1RleHRJbnB1dE1hc2sgbWlzc2luZyBnZXRSYXdWYWx1ZScsIG1hc2tJbnB1dCk7XG4gICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gQHRzLWlnbm9yZSAtIGJhZCBtYXBcbiAgICAgICAgICAgIGNvbnN0IHJhd1ZhbHVlID0gbWFza0lucHV0LmdldFJhd1ZhbHVlKCk7XG4gICAgICAgICAgICBjb25zb2xlLmxvZygnQ3Jvc3NFZGl0b3IgcmF3VmFsdWUgPSAnLCByYXdWYWx1ZSB8fCAnbm90aGluZycpO1xuXG4gICAgICAgICAgICBpZiAocGFwZXJQcm9wcy5vbkNoYW5nZVRleHQpIHtcbiAgICAgICAgICAgICAgcGFwZXJQcm9wcy5vbkNoYW5nZVRleHQocmF3VmFsdWUpO1xuICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9IGVsc2UgaWYgKG1hc2tlZFByb3BzICYmIG1hc2tlZFByb3BzLm9uQ2hhbmdlVGV4dCkge1xuICAgICAgICAgICAgICBtYXNrZWRQcm9wcy5vbkNoYW5nZVRleHQocmF3VmFsdWUpO1xuICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGNvbnNvbGUubG9nKCdDcm9zc0VkaXRvcjogbm8gbGlzdGVuZXInKTtcbiAgICAgICAgICB9fVxuICAgICAgICAvPlxuICAgICAgKTtcbiAgICB9XG5cbiAgICByZXR1cm4gPFRleHRJbnB1dCB7Li4ucGFwZXJQcm9wc30gbW9kZT17cGFwZXJQcm9wcy5tb2RlfSAvPjtcbiAgfVxufVxuXG5leHBvcnQgZGVmYXVsdCBDcm9zc0VkaXRvcjtcbiJdLCJ2ZXJzaW9uIjozfQ==