@nghinv/react-native-app-tour
Version:
React Native app tour Library
64 lines (54 loc) • 1.8 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _react = _interopRequireDefault(require("react"));
var _reactNative = require("react-native");
var _reactFastCompare = _interopRequireDefault(require("react-fast-compare"));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
function ButtonText(props) {
const {
title,
disabled,
onPress,
style,
titleStyle,
buttonProps,
titleProps,
titleColor = 'green'
} = props;
const ButtonComponent = disabled || !onPress ? _reactNative.View : _reactNative.TouchableOpacity;
return /*#__PURE__*/_react.default.createElement(ButtonComponent, _extends({
hitSlop: {
top: 4,
bottom: 4,
left: 4,
right: 4
}
}, buttonProps, {
onPress: onPress,
style: [styles.container, {
opacity: disabled ? 0.6 : 1
}, style]
}), /*#__PURE__*/_react.default.createElement(_reactNative.Text, _extends({}, titleProps, {
style: [styles.title, {
color: titleColor
}, titleStyle]
}), title));
}
const styles = _reactNative.StyleSheet.create({
container: {
justifyContent: 'center',
alignItems: 'center',
padding: 8
},
title: {
fontSize: 16,
fontWeight: '500'
}
});
var _default = /*#__PURE__*/_react.default.memo(ButtonText, _reactFastCompare.default);
exports.default = _default;
//# sourceMappingURL=ButtonText.js.map