UNPKG

react-native-cross-components

Version:
59 lines 8.69 kB
"use strict"; 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' }); if (this.props.maskProps && this.props.maskProps.type) { const maskedProps = Object.assign({}, this.props, this.props.maskProps); 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) { return; } // @ts-ignore - bad map const rawValue = maskInput.getRawValue(); console.log('CrossEditor value'); if (this.props.onChangeText) { this.props.onChangeText(rawValue); } if (!this.props.maskProps || !this.props.maskProps.onChangeText) { return; } this.props.maskProps.onChangeText(rawValue); } }))); } 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,eyJmaWxlIjoiL1VzZXJzL3Rob21hcy9Tb3VyY2UvcmVhY3QtbmF0aXZlLWNvcmUvc291cmNlL2NvbXBvbmVudHMvaW5wdXQvQ3Jvc3NFZGl0b3IudHN4IiwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsa0RBQTBCO0FBQzFCLDJEQUErRDtBQUMvRCx1RUFBNkU7QUF3QzdFLElBQUksU0FBUyxHQUF5QixJQUFJLENBQUM7QUFFM0M7Ozs7Ozs7Ozs7Ozs7Ozs7R0FnQkc7QUFDSCxNQUFhLFdBQVksU0FBUSxlQUFLLENBQUMsU0FBNEI7SUFDakUsWUFBWSxLQUF3QjtRQUNsQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDZixDQUFDO0lBRUQsTUFBTTtRQUNKLE1BQU0sVUFBVSxHQUFHLGtCQUNkLElBQUksQ0FBQyxLQUFLLElBQ2IsSUFBSSxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxJQUFLLFVBQWtDLEdBQzNDLENBQUM7UUFFcEIsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUU7WUFDckQsTUFBTSxXQUFXLEdBQUcsa0JBQ2YsSUFBSSxDQUFDLEtBQUssRUFDVixJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FDRixDQUFDO1lBRXhCLE9BQU8sQ0FDTCw4QkFBQyx3Q0FBYSxvQkFDUixXQUFXLElBQ2YsR0FBRyxFQUFFLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUM7Z0JBQ2pDLHVCQUF1QjtnQkFDdkIsZUFBZSxFQUFFLDhCQUFTLEVBQzFCLG9CQUFvQixFQUFFLFVBQVUsRUFDaEMsWUFBWSxFQUFFLEdBQUcsRUFBRTtvQkFDakIsSUFBRyxDQUFDLFNBQVMsRUFBQzt3QkFDWixPQUFPO3FCQUNSO29CQUVELHVCQUF1QjtvQkFDdkIsTUFBTSxRQUFRLEdBQUcsU0FBUyxDQUFDLFdBQVcsRUFBRSxDQUFDO29CQUN6QyxPQUFPLENBQUMsR0FBRyxDQUFDLG1CQUFtQixDQUFHLENBQUE7b0JBRWxDLElBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxZQUFZLEVBQUM7d0JBQ3pCLElBQUksQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxDQUFBO3FCQUNsQztvQkFFRCxJQUNFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTO3dCQUNyQixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLFlBQVksRUFDbEM7d0JBQ0EsT0FBTztxQkFDUjtvQkFFRCxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLENBQUM7Z0JBQzlDLENBQUMsSUFDRCxDQUNILENBQUM7U0FDSDtRQUVELE9BQU8sOEJBQUMsOEJBQVMsb0JBQUssVUFBVSxJQUFFLElBQUksRUFBRSxVQUFVLENBQUMsSUFBSSxJQUFJLENBQUM7SUFDOUQsQ0FBQztDQUNGO0FBcERELGtDQW9EQztBQUVELGtCQUFlLFdBQVcsQ0FBQyIsIm5hbWVzIjpbXSwic291cmNlcyI6WyIvVXNlcnMvdGhvbWFzL1NvdXJjZS9yZWFjdC1uYXRpdmUtY29yZS9zb3VyY2UvY29tcG9uZW50cy9pbnB1dC9Dcm9zc0VkaXRvci50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IFRleHRJbnB1dCwgVGV4dElucHV0UHJvcHMgfSBmcm9tICdyZWFjdC1uYXRpdmUtcGFwZXInO1xuaW1wb3J0IHsgVGV4dElucHV0TWFzaywgVGV4dElucHV0TWFza1Byb3BzIH0gZnJvbSAncmVhY3QtbmF0aXZlLW1hc2tlZC10ZXh0JztcblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciB0aGUge0BsaW5rIENyb3NzRWRpdG9yfSBjb21wb25lbnQuIFN1cHBvcnRzIG1hc2tpbmcgdGhyb3VnaCB7QGxpbmsgbWFza1Byb3BzfS4gVGhpcyBhbGxvd3MgZ2V0dGluZyB0aGUgbWFza2VkIHZhbHVlLlxuICpcbiAqIFRoZSBgb25DaGFuZ2VUZXh0YCBldmVudCB3aWxsIGlzbnRlYWQgZXhwb3J0IHRoZSByYXcgdmFsdWUuXG4gKlxuICogSW5oZXJpdHMgcmVhY3QtbmF0aXZlLXBhcGVyIHtAbGluayBodHRwczovL2NhbGxzdGFjay5naXRodWIuaW8vcmVhY3QtbmF0aXZlLXBhcGVyL3RleHQtaW5wdXQuaHRtbCBUZXh0SW5wdXRQcm9wc31cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJQ3Jvc3NFZGl0b3JQcm9wcyBleHRlbmRzIFRleHRJbnB1dFByb3BzIHtcbiAgLyoqXG4gICAqIFRleHQgZm9yIGZsb2F0aW5nIGxhYmVsXG4gICAqIGh0dHBzOi8vY2FsbHN0YWNrLmdpdGh1Yi5pby9yZWFjdC1uYXRpdmUtcGFwZXIvdGV4dC1pbnB1dC5odG1sXG4gICAqL1xuICBsYWJlbDogc3RyaW5nO1xuICAvKipcbiAgICogYFRydWVgIHRvIHVzZSBlcnJvciBzdHlsaW5nXG4gICAqIGh0dHBzOi8vY2FsbHN0YWNrLmdpdGh1Yi5pby9yZWFjdC1uYXRpdmUtcGFwZXIvdGV4dC1pbnB1dC5odG1sXG4gICAqL1xuICBlcnJvcj86IGJvb2xlYW4gfCB1bmRlZmluZWQ7XG4gIC8qKlxuICAgKiBWaXN1YWwgYXBwZWFyZW5jZS4gRGVmYXVsdCB2YWx1ZSBpcyAnb3V0bGluZWQnXG4gICAqXG4gICAqIGh0dHBzOi8vY2FsbHN0YWNrLmdpdGh1Yi5pby9yZWFjdC1uYXRpdmUtcGFwZXIvdGV4dC1pbnB1dC5odG1sXG4gICAqL1xuICBtb2RlPzogJ2ZsYXQnIHwgJ291dGxpbmVkJyB8IHVuZGVmaW5lZDtcbiAgLyoqXG4gICAqIEFsbG93cyBtYXNraW5nIHRoZSBpbnB1dC5cbiAgICogXG4gICAqIGh0dHBzOi8vZ2l0aHViLmNvbS9iZW5odXJvdHQvcmVhY3QtbmF0aXZlLW1hc2tlZC10ZXh0XG4gICAqIFxuICAgKiBAZXhhbXBsZVxuICAgKiBgYGBcbiAgIDxDcm9zc0VkaXRvclxuICAgIGxhYmVsPSdNb2JpbGUnXG4gICAgbWFza1Byb3BzPXt7IHR5cGU6ICdjZWwtcGhvbmUnIH19IC8+YGBgXG4gICAqL1xuICBtYXNrUHJvcHM/OiBUZXh0SW5wdXRNYXNrUHJvcHMgfCB1bmRlZmluZWQ7XG59XG5cbmxldCBtYXNrSW5wdXQ6IFRleHRJbnB1dE1hc2sgfCBudWxsID0gbnVsbDtcblxuLyoqXG4gKiBBIHRleHQgaW5wdXQgc3VwcG9ydGluZyBtYXNrIHRocm91Z2gge0BzZWUgSUNyb3NzRWRpdG9yUHJvcHMubWFza1Byb3BzfS5cbiAqIFxuICogV2hlbiB1c2luZyBtYXNrIHRoZSByYXcgdmFsdWUgd2lsbCBiZSBleHBvcnRlZCBpbiB0aGUgYG9uQ2hhbmdlVGV4dGAgZXZlbnQsIG5vdCB0aGUgbWFza2VkIHZhbHVlLlxuICogXG4gKiBEZWZhdWx0IHtAc2VlIElDcm9zc0VkaXRvclByb3BzLm1vZGUgbW9kZX0gaXMgJ291dGxpbmVkJy5cbiAqXG4gKiBQcm9wcyBhcmUge0BzZWUgSUNyb3NzRWRpdG9yUHJvcHN9XG4gKiBcbiAqIFxuICogQGV4YW1wbGVcbiAqIGBgYFxuIDxDcm9zc0VkaXRvclxuICBsYWJlbD0nTW9iaWxlJ1xuICBtYXNrUHJvcHM9e3sgdHlwZTogJ2NlbC1waG9uZScgfX0gLz5cbiBgYGBcbiAqL1xuZXhwb3J0IGNsYXNzIENyb3NzRWRpdG9yIGV4dGVuZHMgUmVhY3QuQ29tcG9uZW50PElDcm9zc0VkaXRvclByb3BzPiB7XG4gIGNvbnN0cnVjdG9yKHByb3BzOiBJQ3Jvc3NFZGl0b3JQcm9wcykge1xuICAgIHN1cGVyKHByb3BzKTtcbiAgfVxuXG4gIHJlbmRlcigpIHtcbiAgICBjb25zdCBwYXBlclByb3BzID0ge1xuICAgICAgLi4udGhpcy5wcm9wcyxcbiAgICAgIG1vZGU6IHRoaXMucHJvcHMubW9kZSB8fCAoJ291dGxpbmVkJyBhcyAnZmxhdCcgfCAnb3V0bGluZWQnKSxcbiAgICB9IGFzIFRleHRJbnB1dFByb3BzO1xuXG4gICAgaWYgKHRoaXMucHJvcHMubWFza1Byb3BzICYmIHRoaXMucHJvcHMubWFza1Byb3BzLnR5cGUpIHtcbiAgICAgIGNvbnN0IG1hc2tlZFByb3BzID0ge1xuICAgICAgICAuLi50aGlzLnByb3BzLFxuICAgICAgICAuLi50aGlzLnByb3BzLm1hc2tQcm9wcyxcbiAgICAgIH0gYXMgVGV4dElucHV0TWFza1Byb3BzO1xuXG4gICAgICByZXR1cm4gKFxuICAgICAgICA8VGV4dElucHV0TWFza1xuICAgICAgICAgIHsuLi5tYXNrZWRQcm9wc31cbiAgICAgICAgICByZWY9eyhjb21wKSA9PiAobWFza0lucHV0ID0gY29tcCl9XG4gICAgICAgICAgLy8gQHRzLWlnbm9yZSAtIGJhZCBtYXBcbiAgICAgICAgICBjdXN0b21UZXh0SW5wdXQ9e1RleHRJbnB1dH1cbiAgICAgICAgICBjdXN0b21UZXh0SW5wdXRQcm9wcz17cGFwZXJQcm9wc31cbiAgICAgICAgICBvbkNoYW5nZVRleHQ9eygpID0+IHtcbiAgICAgICAgICAgIGlmKCFtYXNrSW5wdXQpe1xuICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIEB0cy1pZ25vcmUgLSBiYWQgbWFwXG4gICAgICAgICAgICBjb25zdCByYXdWYWx1ZSA9IG1hc2tJbnB1dC5nZXRSYXdWYWx1ZSgpO1xuICAgICAgICAgICAgY29uc29sZS5sb2coJ0Nyb3NzRWRpdG9yIHZhbHVlJywgKVxuXG4gICAgICAgICAgICBpZih0aGlzLnByb3BzLm9uQ2hhbmdlVGV4dCl7XG4gICAgICAgICAgICAgIHRoaXMucHJvcHMub25DaGFuZ2VUZXh0KHJhd1ZhbHVlKVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgICF0aGlzLnByb3BzLm1hc2tQcm9wcyB8fFxuICAgICAgICAgICAgICAhdGhpcy5wcm9wcy5tYXNrUHJvcHMub25DaGFuZ2VUZXh0XG4gICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB0aGlzLnByb3BzLm1hc2tQcm9wcy5vbkNoYW5nZVRleHQocmF3VmFsdWUpO1xuICAgICAgICAgIH19XG4gICAgICAgIC8+XG4gICAgICApO1xuICAgIH1cblxuICAgIHJldHVybiA8VGV4dElucHV0IHsuLi5wYXBlclByb3BzfSBtb2RlPXtwYXBlclByb3BzLm1vZGV9IC8+O1xuICB9XG59XG5cbmV4cG9ydCBkZWZhdWx0IENyb3NzRWRpdG9yO1xuIl0sInZlcnNpb24iOjN9