react-native-cross-components
Version:
Beautiful React-Native components using RN Paper by Callstack
63 lines • 9.37 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);
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: () => {
if (!maskInput || maskInput.getRawValue) {
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,eyJmaWxlIjoiL1VzZXJzL3Rob21hcy9Tb3VyY2UvcmVhY3QtbmF0aXZlLWNvcmUvc291cmNlL2NvbXBvbmVudHMvaW5wdXQvQ3Jvc3NFZGl0b3IudHN4IiwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsa0RBQTBCO0FBQzFCLDJEQUErRDtBQUMvRCx1RUFBNkU7QUF3QzdFLElBQUksU0FBUyxHQUFlLElBQUksQ0FBQztBQUVqQzs7Ozs7Ozs7Ozs7Ozs7OztHQWdCRztBQUNILE1BQWEsV0FBWSxTQUFRLGVBQUssQ0FBQyxTQUE0QjtJQUNqRSxZQUFZLEtBQXdCO1FBQ2xDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNmLENBQUM7SUFFRCxNQUFNO1FBQ0osTUFBTSxVQUFVLEdBQUcsa0JBQ2QsSUFBSSxDQUFDLEtBQUssSUFDYixJQUFJLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLElBQUssVUFBa0MsR0FDM0MsQ0FBQztRQUNwQixPQUFPLENBQUMsR0FBRyxDQUFDLDRCQUE0QixFQUFFLFVBQVUsQ0FBQyxDQUFDO1FBRXRELElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFO1lBQ3JELE1BQU0sV0FBVyxHQUFHLGtCQUNmLElBQUksQ0FBQyxLQUFLLEVBQ1YsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQ0YsQ0FBQztZQUN4QixPQUFPLENBQUMsR0FBRyxDQUFDLDZCQUE2QixFQUFFLFdBQVcsQ0FBQyxDQUFBO1lBRXZELE9BQU8sQ0FDTCw4QkFBQyx3Q0FBYSxvQkFDUixXQUFXLElBQ2YsR0FBRyxFQUFFLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUM7Z0JBQ2pDLHVCQUF1QjtnQkFDdkIsZUFBZSxFQUFFLDhCQUFTLEVBQzFCLG9CQUFvQixFQUFFLFVBQVUsRUFDaEMsWUFBWSxFQUFFLEdBQUcsRUFBRTtvQkFDakIsSUFBSSxDQUFDLFNBQVMsSUFBSSxTQUFTLENBQUMsV0FBVyxFQUFFO3dCQUN2QyxPQUFPO3FCQUNSO29CQUVELHVCQUF1QjtvQkFDdkIsTUFBTSxRQUFRLEdBQUcsU0FBUyxDQUFDLFdBQVcsRUFBRSxDQUFDO29CQUN6QyxPQUFPLENBQUMsR0FBRyxDQUFDLHlCQUF5QixFQUFFLFFBQVEsSUFBRSxTQUFTLENBQUMsQ0FBQztvQkFFNUQsSUFBSSxVQUFVLENBQUMsWUFBWSxFQUFFO3dCQUMzQixVQUFVLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxDQUFDO3dCQUNsQyxPQUFPO3FCQUNSO3lCQUFNLElBQ0wsV0FBVzt3QkFDWCxXQUFXLENBQUMsWUFBWSxFQUN4Qjt3QkFDQSxXQUFXLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxDQUFDO3dCQUNuQyxPQUFPO3FCQUNSO29CQUVELE9BQU8sQ0FBQyxHQUFHLENBQUMsMEJBQTBCLENBQUMsQ0FBQTtnQkFDekMsQ0FBQyxJQUNELENBQ0gsQ0FBQztTQUNIO1FBRUQsT0FBTyw4QkFBQyw4QkFBUyxvQkFBSyxVQUFVLElBQUUsSUFBSSxFQUFFLFVBQVUsQ0FBQyxJQUFJLElBQUksQ0FBQztJQUM5RCxDQUFDO0NBQ0Y7QUF0REQsa0NBc0RDO0FBRUQsa0JBQWUsV0FBVyxDQUFDIiwibmFtZXMiOltdLCJzb3VyY2VzIjpbIi9Vc2Vycy90aG9tYXMvU291cmNlL3JlYWN0LW5hdGl2ZS1jb3JlL3NvdXJjZS9jb21wb25lbnRzL2lucHV0L0Nyb3NzRWRpdG9yLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgVGV4dElucHV0LCBUZXh0SW5wdXRQcm9wcyB9IGZyb20gJ3JlYWN0LW5hdGl2ZS1wYXBlcic7XG5pbXBvcnQgeyBUZXh0SW5wdXRNYXNrLCBUZXh0SW5wdXRNYXNrUHJvcHMgfSBmcm9tICdyZWFjdC1uYXRpdmUtbWFza2VkLXRleHQnO1xuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIHRoZSB7QGxpbmsgQ3Jvc3NFZGl0b3J9IGNvbXBvbmVudC4gU3VwcG9ydHMgbWFza2luZyB0aHJvdWdoIHtAbGluayBtYXNrUHJvcHN9LiBUaGlzIGFsbG93cyBnZXR0aW5nIHRoZSBtYXNrZWQgdmFsdWUuXG4gKlxuICogVGhlIGBvbkNoYW5nZVRleHRgIGV2ZW50IHdpbGwgaXNudGVhZCBleHBvcnQgdGhlIHJhdyB2YWx1ZS5cbiAqXG4gKiBJbmhlcml0cyByZWFjdC1uYXRpdmUtcGFwZXIge0BsaW5rIGh0dHBzOi8vY2FsbHN0YWNrLmdpdGh1Yi5pby9yZWFjdC1uYXRpdmUtcGFwZXIvdGV4dC1pbnB1dC5odG1sIFRleHRJbnB1dFByb3BzfVxuICovXG5leHBvcnQgaW50ZXJmYWNlIElDcm9zc0VkaXRvclByb3BzIGV4dGVuZHMgVGV4dElucHV0UHJvcHMge1xuICAvKipcbiAgICogVGV4dCBmb3IgZmxvYXRpbmcgbGFiZWxcbiAgICogaHR0cHM6Ly9jYWxsc3RhY2suZ2l0aHViLmlvL3JlYWN0LW5hdGl2ZS1wYXBlci90ZXh0LWlucHV0Lmh0bWxcbiAgICovXG4gIGxhYmVsOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBgVHJ1ZWAgdG8gdXNlIGVycm9yIHN0eWxpbmdcbiAgICogaHR0cHM6Ly9jYWxsc3RhY2suZ2l0aHViLmlvL3JlYWN0LW5hdGl2ZS1wYXBlci90ZXh0LWlucHV0Lmh0bWxcbiAgICovXG4gIGVycm9yPzogYm9vbGVhbiB8IHVuZGVmaW5lZDtcbiAgLyoqXG4gICAqIFZpc3VhbCBhcHBlYXJlbmNlLiBEZWZhdWx0IHZhbHVlIGlzICdvdXRsaW5lZCdcbiAgICpcbiAgICogaHR0cHM6Ly9jYWxsc3RhY2suZ2l0aHViLmlvL3JlYWN0LW5hdGl2ZS1wYXBlci90ZXh0LWlucHV0Lmh0bWxcbiAgICovXG4gIG1vZGU/OiAnZmxhdCcgfCAnb3V0bGluZWQnIHwgdW5kZWZpbmVkO1xuICAvKipcbiAgICogQWxsb3dzIG1hc2tpbmcgdGhlIGlucHV0LlxuICAgKiBcbiAgICogaHR0cHM6Ly9naXRodWIuY29tL2Jlbmh1cm90dC9yZWFjdC1uYXRpdmUtbWFza2VkLXRleHRcbiAgICogXG4gICAqIEBleGFtcGxlXG4gICAqIGBgYFxuICAgPENyb3NzRWRpdG9yXG4gICAgbGFiZWw9J01vYmlsZSdcbiAgICBtYXNrUHJvcHM9e3sgdHlwZTogJ2NlbC1waG9uZScgfX0gLz5gYGBcbiAgICovXG4gIG1hc2tQcm9wcz86IFRleHRJbnB1dE1hc2tQcm9wcyB8IHVuZGVmaW5lZDtcbn1cblxubGV0IG1hc2tJbnB1dDogYW55IHwgbnVsbCA9IG51bGw7XG5cbi8qKlxuICogQSB0ZXh0IGlucHV0IHN1cHBvcnRpbmcgbWFzayB0aHJvdWdoIHtAc2VlIElDcm9zc0VkaXRvclByb3BzLm1hc2tQcm9wc30uXG4gKiBcbiAqIFdoZW4gdXNpbmcgbWFzayB0aGUgcmF3IHZhbHVlIHdpbGwgYmUgZXhwb3J0ZWQgaW4gdGhlIGBvbkNoYW5nZVRleHRgIGV2ZW50LCBub3QgdGhlIG1hc2tlZCB2YWx1ZS5cbiAqIFxuICogRGVmYXVsdCB7QHNlZSBJQ3Jvc3NFZGl0b3JQcm9wcy5tb2RlIG1vZGV9IGlzICdvdXRsaW5lZCcuXG4gKlxuICogUHJvcHMgYXJlIHtAc2VlIElDcm9zc0VkaXRvclByb3BzfVxuICogXG4gKiBcbiAqIEBleGFtcGxlXG4gKiBgYGBcbiA8Q3Jvc3NFZGl0b3JcbiAgbGFiZWw9J01vYmlsZSdcbiAgbWFza1Byb3BzPXt7IHR5cGU6ICdjZWwtcGhvbmUnIH19IC8+XG4gYGBgXG4gKi9cbmV4cG9ydCBjbGFzcyBDcm9zc0VkaXRvciBleHRlbmRzIFJlYWN0LkNvbXBvbmVudDxJQ3Jvc3NFZGl0b3JQcm9wcz4ge1xuICBjb25zdHJ1Y3Rvcihwcm9wczogSUNyb3NzRWRpdG9yUHJvcHMpIHtcbiAgICBzdXBlcihwcm9wcyk7XG4gIH1cblxuICByZW5kZXIoKSB7XG4gICAgY29uc3QgcGFwZXJQcm9wcyA9IHtcbiAgICAgIC4uLnRoaXMucHJvcHMsXG4gICAgICBtb2RlOiB0aGlzLnByb3BzLm1vZGUgfHwgKCdvdXRsaW5lZCcgYXMgJ2ZsYXQnIHwgJ291dGxpbmVkJyksXG4gICAgfSBhcyBUZXh0SW5wdXRQcm9wcztcbiAgICBjb25zb2xlLmxvZygnQ3Jvc3NFZGl0b3IgcGFwZXIgcHJvcHMgPSAnLCBwYXBlclByb3BzKTtcblxuICAgIGlmICh0aGlzLnByb3BzLm1hc2tQcm9wcyAmJiB0aGlzLnByb3BzLm1hc2tQcm9wcy50eXBlKSB7XG4gICAgICBjb25zdCBtYXNrZWRQcm9wcyA9IHtcbiAgICAgICAgLi4udGhpcy5wcm9wcyxcbiAgICAgICAgLi4udGhpcy5wcm9wcy5tYXNrUHJvcHMsXG4gICAgICB9IGFzIFRleHRJbnB1dE1hc2tQcm9wcztcbiAgICAgIGNvbnNvbGUubG9nKCdDcm9zc0VkaXRvciBtYXNrZWQgcHJvcHMgPSAnLCBtYXNrZWRQcm9wcylcblxuICAgICAgcmV0dXJuIChcbiAgICAgICAgPFRleHRJbnB1dE1hc2tcbiAgICAgICAgICB7Li4ubWFza2VkUHJvcHN9XG4gICAgICAgICAgcmVmPXsoY29tcCkgPT4gKG1hc2tJbnB1dCA9IGNvbXApfVxuICAgICAgICAgIC8vIEB0cy1pZ25vcmUgLSBiYWQgbWFwXG4gICAgICAgICAgY3VzdG9tVGV4dElucHV0PXtUZXh0SW5wdXR9XG4gICAgICAgICAgY3VzdG9tVGV4dElucHV0UHJvcHM9e3BhcGVyUHJvcHN9XG4gICAgICAgICAgb25DaGFuZ2VUZXh0PXsoKSA9PiB7XG4gICAgICAgICAgICBpZiAoIW1hc2tJbnB1dCB8fCBtYXNrSW5wdXQuZ2V0UmF3VmFsdWUpIHtcbiAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyBAdHMtaWdub3JlIC0gYmFkIG1hcFxuICAgICAgICAgICAgY29uc3QgcmF3VmFsdWUgPSBtYXNrSW5wdXQuZ2V0UmF3VmFsdWUoKTtcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKCdDcm9zc0VkaXRvciByYXdWYWx1ZSA9ICcsIHJhd1ZhbHVlfHwnbm90aGluZycpO1xuXG4gICAgICAgICAgICBpZiAocGFwZXJQcm9wcy5vbkNoYW5nZVRleHQpIHtcbiAgICAgICAgICAgICAgcGFwZXJQcm9wcy5vbkNoYW5nZVRleHQocmF3VmFsdWUpO1xuICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9IGVsc2UgaWYgKFxuICAgICAgICAgICAgICBtYXNrZWRQcm9wcyAmJlxuICAgICAgICAgICAgICBtYXNrZWRQcm9wcy5vbkNoYW5nZVRleHRcbiAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICBtYXNrZWRQcm9wcy5vbkNoYW5nZVRleHQocmF3VmFsdWUpO1xuICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGNvbnNvbGUubG9nKCdDcm9zc0VkaXRvcjogbm8gbGlzdGVuZXInKVxuICAgICAgICAgIH19XG4gICAgICAgIC8+XG4gICAgICApO1xuICAgIH1cblxuICAgIHJldHVybiA8VGV4dElucHV0IHsuLi5wYXBlclByb3BzfSBtb2RlPXtwYXBlclByb3BzLm1vZGV9IC8+O1xuICB9XG59XG5cbmV4cG9ydCBkZWZhdWx0IENyb3NzRWRpdG9yO1xuIl0sInZlcnNpb24iOjN9