UNPKG

react-native-cross-components

Version:
45 lines 11.2 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; var __importStar = (this && this.__importStar) || function (mod) { if (mod && mod.__esModule) return mod; var result = {}; if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k]; result["default"] = mod; return result; }; Object.defineProperty(exports, "__esModule", { value: true }); const react_1 = __importDefault(require("react")); // @ts-ignore const react_native_paper_1 = require("react-native-paper"); const react_native_1 = require("react-native"); const FontAwesome_1 = __importDefault(require("react-native-vector-icons/FontAwesome")); const lodash_1 = __importDefault(require("lodash")); const styles_1 = __importStar(require("../../styles")); /** * A custom button that displays as an Paper Button with icon or just an icon if {@link ICrossButtonProps.title} is not supplied. * * Remarks: * * * All icons are {@link https://fontawesome.com/v4.7.0/icons/ FontAwesome v4}. * * react-native-paper is currently missing the option to customize `fontSize`. * * Default appearence is "text", see {@link ICrossButtonProps.mode} * * Properties are {@link ICrossButtonProps} */ class CrossButton extends react_1.default.Component { render() { const mode = this.props.mode || 'text'; return (react_1.default.createElement(react_native_1.View, { style: this.props.style ? this.props.style : styles_1.default.container }, lodash_1.default.isNil(this.props.title) && !lodash_1.default.isNil(this.props.iconName) ? (react_1.default.createElement(FontAwesome_1.default.Button, Object.assign({}, this.props, { style: this.props.iconStyle || styles_1.default.container, onPress: () => { if (this.props.onPress) { this.props.onPress(); } }, color: this.props.color || styles_1.Colors.CrossBlack, name: this.props.iconName.toString() }))) : (react_1.default.createElement(react_native_paper_1.Button, Object.assign({ color: this.props.backgroundColor || styles_1.Colors.NextButton, disabled: this.props.disabled || false }, this.props, { icon: ({ size, color }) => this.props.iconName ? (react_1.default.createElement(FontAwesome_1.default, { name: this.props.iconName, size: this.props.size || size, style: { margin: 0, padding: 0 }, color: color })) : null, style: this.props.buttonStyle || styles_1.default.button, onPress: this.props.onPress ? this.props.onPress : () => console.log('** CrossButton press **'), mode: mode }), this.props.title)))); } } exports.CrossButton = CrossButton; exports.default = CrossButton; //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJmaWxlIjoiL1VzZXJzL3Rob21hcy9Tb3VyY2UvcmVhY3QtbmF0aXZlLWNvcmUvc291cmNlL2NvbXBvbmVudHMvYnV0dG9ucy9Dcm9zc0J1dHRvbi50c3giLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7O0FBQUEsa0RBQTBCO0FBQzFCLGFBQWE7QUFDYiwyREFBNEM7QUFDNUMsK0NBQXFFO0FBQ3JFLHdGQUFnRTtBQUVoRSxvREFBdUI7QUFDdkIsdURBQThDO0FBc0U5Qzs7Ozs7Ozs7OztHQVVHO0FBQ0gsTUFBYSxXQUFZLFNBQVEsZUFBSyxDQUFDLFNBQTRCO0lBQ2pFLE1BQU07UUFDSixNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksSUFBSSxNQUFNLENBQUM7UUFDdkMsT0FBTyxDQUNMLDhCQUFDLG1CQUFJLElBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsZ0JBQU0sQ0FBQyxTQUFTLElBQ2hFLGdCQUFDLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxnQkFBQyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUM1RCw4QkFBQyxxQkFBVyxDQUFDLE1BQU0sb0JBQ2IsSUFBSSxDQUFDLEtBQUssSUFDZCxLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLElBQUksZ0JBQU0sQ0FBQyxTQUFzQixFQUM1RCxPQUFPLEVBQUUsR0FBRyxFQUFFO2dCQUNaLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLEVBQUU7b0JBQ3RCLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7aUJBQ3RCO1lBQ0gsQ0FBQyxFQUNELEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssSUFBSSxlQUFNLENBQUMsVUFBVSxFQUM1QyxJQUFJLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLElBQ3BDLENBQ0gsQ0FBQyxDQUFDLENBQUMsQ0FDRiw4QkFBQywyQkFBTSxrQkFDTCxLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxlQUFlLElBQUksZUFBTSxDQUFDLFVBQVUsRUFDdEQsUUFBUSxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxJQUFJLEtBQUssSUFDbEMsSUFBSSxDQUFDLEtBQUssSUFDZCxJQUFJLEVBQUUsQ0FBQyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFFLENBQ3hCLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUNwQiw4QkFBQyxxQkFBVyxJQUNWLElBQUksRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsRUFDekIsSUFBSSxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxJQUFJLElBQUksRUFDN0IsS0FBSyxFQUFFLEVBQUUsTUFBTSxFQUFFLENBQUMsRUFBRSxPQUFPLEVBQUUsQ0FBQyxFQUFFLEVBQ2hDLEtBQUssRUFBRSxLQUFLLEdBQ1osQ0FDSCxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBRVYsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsV0FBVyxJQUFJLGdCQUFNLENBQUMsTUFBTSxFQUM5QyxPQUFPLEVBQ0wsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPO2dCQUNoQixDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPO2dCQUNwQixDQUFDLENBQUMsR0FBRyxFQUFFLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyx5QkFBeUIsQ0FBQyxFQUVsRCxJQUFJLEVBQUUsSUFBSSxLQUVULElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUNWLENBQ1YsQ0FDSSxDQUNSLENBQUM7SUFDSixDQUFDO0NBQ0Y7QUE5Q0Qsa0NBOENDO0FBRUQsa0JBQWUsV0FBVyxDQUFDIiwibmFtZXMiOltdLCJzb3VyY2VzIjpbIi9Vc2Vycy90aG9tYXMvU291cmNlL3JlYWN0LW5hdGl2ZS1jb3JlL3NvdXJjZS9jb21wb25lbnRzL2J1dHRvbnMvQ3Jvc3NCdXR0b24udHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCc7XG4vLyBAdHMtaWdub3JlXG5pbXBvcnQgeyBCdXR0b24gfSBmcm9tICdyZWFjdC1uYXRpdmUtcGFwZXInO1xuaW1wb3J0IHsgVmlld1N0eWxlLCBTdHlsZVByb3AsIFZpZXcsIFRleHRTdHlsZSB9IGZyb20gJ3JlYWN0LW5hdGl2ZSc7XG5pbXBvcnQgRm9udEF3ZXNvbWUgZnJvbSAncmVhY3QtbmF0aXZlLXZlY3Rvci1pY29ucy9Gb250QXdlc29tZSc7XG5pbXBvcnQgeyBDb2xvciB9IGZyb20gJ2Nzc3R5cGUnO1xuaW1wb3J0IF8gZnJvbSAnbG9kYXNoJztcbmltcG9ydCBzdHlsZXMsIHsgQ29sb3JzIH0gZnJvbSAnLi4vLi4vc3R5bGVzJztcblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciB0aGUge0BsaW5rIENyb3NzQnV0dG9ufSBjb21wb25lbnQuXG4gKlxuICogTm90ZSB0aGUgZGlmZmVyZW5jZSBiZXR3ZWVuIHtAbGluayBidXR0b25TdHlsZX0gYW5kIHRoZSByZWd1bGFyIHtAbGluayBzdHlsZX0gcHJvcGVydHkuXG4gKlxuICogUmVtYXJrczogcmVhY3QtbmF0aXZlLXBhcGVyIGlzIGN1cnJlbnRseSBtaXNzaW5nIHRoZSBvcHRpb24gdG8gY3VzdG9taXplIGBmb250U2l6ZWAuXG4gKlxuICoge0BsaW5rIGljb25OYW1lfSBpcyBmb3IgYSB7QGxpbmsgaHR0cHM6Ly9mb250YXdlc29tZS5jb20vdjQuNy4wL2ljb25zLyBGb250QXdlc29tZSB2NCBpY29ufS5cbiAqXG4gKiB7QGxpbmsgbW9kZX0gaXMgJ3RleHQnXG4gKlxuICogQHR5cGVkZWYgSUNyb3NzQnV0dG9uUHJvcHNcbiAqIEB0eXBlIElDcm9zc0J1dHRvblByb3BzXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSUNyb3NzQnV0dG9uUHJvcHMge1xuICAvKipcbiAgICogRm9yZWdyb3VuZCAoaWNvbikgY29sb3IuIERlZmF1bHQgaXMge0BsaW5rIENvbG9ycy5Dcm9zc0JsYWNrfVxuICAgKi9cbiAgY29sb3I/OiBDb2xvcjtcbiAgLyoqXG4gICAqIEZvbnQtQXdlc29tZSA0IGljb24gbmFtZSB1c2luZyBgcmVhY3QtbmF0aXZlLXZlY3Rvci1pY29ucy9Gb250QXdlc29tZWBcbiAgICpcbiAgICogaHR0cHM6Ly9mb250YXdlc29tZS5jb20vdjQuNy4wL2ljb25zL1xuICAgKi9cbiAgaWNvbk5hbWU/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBCYWNrZ3JvdW5kIGNvbG9yLiBEZWZhdWx0IHZhbHVlIGlzIHtAbGluayBDb2xvcnMuTmV4dEJ1dHRvbn0gaWYge0BsaW5rIHRpdGxlfSB3YXMgc3VwcGxpZWRcbiAgICovXG4gIGJhY2tncm91bmRDb2xvcj86IENvbG9yO1xuICAvKipcbiAgICogU3R5bGUgZm9yIG91dGVyIGNvbnRhaW5lci5cbiAgICpcbiAgICogU2VlIGFsc28ge0BsaW5rIGljb25TdHlsZX0sIHtAbGluayBidXR0b25TdHlsZX1cbiAgICovXG4gIHN0eWxlPzogU3R5bGVQcm9wPFZpZXdTdHlsZT47XG4gIC8qKlxuICAgKiBPcHRpb25hbCBzdHlsZSBmb3IgdGhlIGljb25zLiBTZWUgYWxzbyB7QGxpbmsgaWNvbk5hbWV9XG4gICAqXG4gICAqIFNlZSBhbHNvIHtAbGluayBidXR0b25TdHlsZX0sIHtAbGluayBzdHlsZX1cbiAgICovXG4gIGljb25TdHlsZT86IFZpZXdTdHlsZSB8IFRleHRTdHlsZTtcbiAgLyoqXG4gICAqIFRpdGxlIGZvciB0aGUgYnV0dG9uLiBJZiBub3Qgc3VwcGxpZWQgYSBjbGlja2FibGUgaWNvbiB3aWxsIGJlIGRpc3BsYXllZCBpbnN0ZWFkIG9mIHJlYWN0LW5hdGl2ZS1wYXBlciBidXR0b25cbiAgICpcbiAgICogaHR0cHM6Ly9jYWxsc3RhY2suZ2l0aHViLmlvL3JlYWN0LW5hdGl2ZS1wYXBlci9idXR0b24uaHRtbFxuICAgKi9cbiAgdGl0bGU/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBTaXplIG9mIHRoZSBpY29uXG4gICAqL1xuICBzaXplPzogbnVtYmVyO1xuICBkaXNhYmxlZD86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBCdXR0b24gdmlzdWFsIGFwcGVhcmVuY2UuIERlZmF1bHQgaXMgJ3RleHQnXG4gICAqXG4gICAqIGh0dHBzOi8vY2FsbHN0YWNrLmdpdGh1Yi5pby9yZWFjdC1uYXRpdmUtcGFwZXIvYnV0dG9uLmh0bWxcbiAgICovXG4gIG1vZGU/OiAndGV4dCcgfCAnb3V0bGluZWQnIHwgJ2NvbnRhaW5lZCc7XG4gIC8qKlxuICAgKiBPcHRpb25hbCBidXR0b24gc3R5bGVzIHRvIGFwcGx5IHRvIHtAbGluayBodHRwczovL2NhbGxzdGFjay5naXRodWIuaW8vcmVhY3QtbmF0aXZlLXBhcGVyL2J1dHRvbi5odG1sIEJ1dHRvbn0uXG4gICAqXG4gICAqIFNlZSBhbHNvIHtAbGluayBpY29uU3R5bGV9LCB7QGxpbmsgc3R5bGV9XG4gICAqL1xuICBidXR0b25TdHlsZT86IFN0eWxlUHJvcDxWaWV3U3R5bGU+O1xuICBvblByZXNzPzogKCkgPT4gdm9pZDtcbiAgY29tcGFjdD86IGJvb2xlYW47XG59XG5cbi8qKlxuICogQSBjdXN0b20gYnV0dG9uIHRoYXQgZGlzcGxheXMgYXMgYW4gUGFwZXIgQnV0dG9uIHdpdGggaWNvbiBvciBqdXN0IGFuIGljb24gaWYge0BsaW5rIElDcm9zc0J1dHRvblByb3BzLnRpdGxlfSBpcyBub3Qgc3VwcGxpZWQuXG4gKlxuICogUmVtYXJrczpcbiAqXG4gKiAqIEFsbCBpY29ucyBhcmUge0BsaW5rIGh0dHBzOi8vZm9udGF3ZXNvbWUuY29tL3Y0LjcuMC9pY29ucy8gRm9udEF3ZXNvbWUgdjR9LlxuICogKiByZWFjdC1uYXRpdmUtcGFwZXIgaXMgY3VycmVudGx5IG1pc3NpbmcgdGhlIG9wdGlvbiB0byBjdXN0b21pemUgYGZvbnRTaXplYC5cbiAqICogRGVmYXVsdCBhcHBlYXJlbmNlIGlzIFwidGV4dFwiLCBzZWUge0BsaW5rIElDcm9zc0J1dHRvblByb3BzLm1vZGV9XG4gKlxuICogUHJvcGVydGllcyBhcmUge0BsaW5rIElDcm9zc0J1dHRvblByb3BzfVxuICovXG5leHBvcnQgY2xhc3MgQ3Jvc3NCdXR0b24gZXh0ZW5kcyBSZWFjdC5Db21wb25lbnQ8SUNyb3NzQnV0dG9uUHJvcHM+IHtcbiAgcmVuZGVyKCkge1xuICAgIGNvbnN0IG1vZGUgPSB0aGlzLnByb3BzLm1vZGUgfHwgJ3RleHQnO1xuICAgIHJldHVybiAoXG4gICAgICA8VmlldyBzdHlsZT17dGhpcy5wcm9wcy5zdHlsZSA/IHRoaXMucHJvcHMuc3R5bGUgOiBzdHlsZXMuY29udGFpbmVyfT5cbiAgICAgICAge18uaXNOaWwodGhpcy5wcm9wcy50aXRsZSkgJiYgIV8uaXNOaWwodGhpcy5wcm9wcy5pY29uTmFtZSkgPyAoXG4gICAgICAgICAgPEZvbnRBd2Vzb21lLkJ1dHRvblxuICAgICAgICAgICAgey4uLnRoaXMucHJvcHN9XG4gICAgICAgICAgICBzdHlsZT17dGhpcy5wcm9wcy5pY29uU3R5bGUgfHwgc3R5bGVzLmNvbnRhaW5lciBhcyBWaWV3U3R5bGV9XG4gICAgICAgICAgICBvblByZXNzPXsoKSA9PiB7XG4gICAgICAgICAgICAgIGlmICh0aGlzLnByb3BzLm9uUHJlc3MpIHtcbiAgICAgICAgICAgICAgICB0aGlzLnByb3BzLm9uUHJlc3MoKTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfX1cbiAgICAgICAgICAgIGNvbG9yPXt0aGlzLnByb3BzLmNvbG9yIHx8IENvbG9ycy5Dcm9zc0JsYWNrfVxuICAgICAgICAgICAgbmFtZT17dGhpcy5wcm9wcy5pY29uTmFtZS50b1N0cmluZygpfVxuICAgICAgICAgIC8+XG4gICAgICAgICkgOiAoXG4gICAgICAgICAgPEJ1dHRvblxuICAgICAgICAgICAgY29sb3I9e3RoaXMucHJvcHMuYmFja2dyb3VuZENvbG9yIHx8IENvbG9ycy5OZXh0QnV0dG9ufVxuICAgICAgICAgICAgZGlzYWJsZWQ9e3RoaXMucHJvcHMuZGlzYWJsZWQgfHwgZmFsc2V9XG4gICAgICAgICAgICB7Li4udGhpcy5wcm9wc31cbiAgICAgICAgICAgIGljb249eyh7IHNpemUsIGNvbG9yIH0pID0+XG4gICAgICAgICAgICAgIHRoaXMucHJvcHMuaWNvbk5hbWUgPyAoXG4gICAgICAgICAgICAgICAgPEZvbnRBd2Vzb21lXG4gICAgICAgICAgICAgICAgICBuYW1lPXt0aGlzLnByb3BzLmljb25OYW1lfVxuICAgICAgICAgICAgICAgICAgc2l6ZT17dGhpcy5wcm9wcy5zaXplIHx8IHNpemV9XG4gICAgICAgICAgICAgICAgICBzdHlsZT17eyBtYXJnaW46IDAsIHBhZGRpbmc6IDAgfX1cbiAgICAgICAgICAgICAgICAgIGNvbG9yPXtjb2xvcn1cbiAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICApIDogbnVsbFxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgc3R5bGU9e3RoaXMucHJvcHMuYnV0dG9uU3R5bGUgfHwgc3R5bGVzLmJ1dHRvbn1cbiAgICAgICAgICAgIG9uUHJlc3M9e1xuICAgICAgICAgICAgICB0aGlzLnByb3BzLm9uUHJlc3NcbiAgICAgICAgICAgICAgICA/IHRoaXMucHJvcHMub25QcmVzc1xuICAgICAgICAgICAgICAgIDogKCkgPT4gY29uc29sZS5sb2coJyoqIENyb3NzQnV0dG9uIHByZXNzICoqJylcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIG1vZGU9e21vZGV9XG4gICAgICAgICAgPlxuICAgICAgICAgICAge3RoaXMucHJvcHMudGl0bGV9XG4gICAgICAgICAgPC9CdXR0b24+XG4gICAgICAgICl9XG4gICAgICA8L1ZpZXc+XG4gICAgKTtcbiAgfVxufVxuXG5leHBvcnQgZGVmYXVsdCBDcm9zc0J1dHRvbjtcbiJdLCJ2ZXJzaW9uIjozfQ==