@r3l/app
Version:
322 lines (291 loc) • 11.2 kB
JavaScript
"use strict";
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
var _react = _interopRequireDefault(require("react"));
var _reactNativeWeb = require("react-native-web");
var _global = require("../../../styles/global");
var _utils = require("../../../utils");
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
var styles;
/* eslint react/prop-types: 0 */
exports.data = {};
exports.text = {}; // list of tooltips to initalize on app load
exports.tooltips = ['relevance', 'coin', 'topics', 'subscriptions', 'activity', 'shareTip', 'vote'];
exports.data.default = {
vertical: 'top',
horizontal: 'right',
horizontalOffset: 1,
verticalOffset: 15
};
exports.data.relevance = {
name: 'relevance',
vertical: 'bottom',
horizontal: 'right',
horizontalOffset: 0,
verticalOffset: 10
};
function renderRow(props, txt) {
return /*#__PURE__*/_react.default.createElement(_reactNativeWeb.View, {
key: txt,
style: {
flexDirection: 'row'
}
}, /*#__PURE__*/_react.default.createElement(_reactNativeWeb.Text, {
allowFontScaling: false,
style: [props.style]
}, "\u2022"), /*#__PURE__*/_react.default.createElement(_reactNativeWeb.Text, {
allowFontScaling: false,
style: [props.style, styles.ul]
}, txt));
}
exports.text.relevance = function relevance(props) {
if (!props.auth.user) return null;
var data = ['Your reputation score reflects your contributions to the community.', 'Your reputation goes down when you post spam.'];
var dataEl = data.map(function (txt) {
return renderRow(props, txt);
});
var user = props.auth.user;
var rel = user.relevance ? user.relevance.pagerank || 0 : 0;
return /*#__PURE__*/_react.default.createElement(_reactNativeWeb.View, null, /*#__PURE__*/_react.default.createElement(_reactNativeWeb.View, {
style: [styles.textRow]
}, /*#__PURE__*/_react.default.createElement(_reactNativeWeb.Text, {
allowFontScaling: false,
style: [props.style, styles.title]
}, "This is your Reputation:", ' '), /*#__PURE__*/_react.default.createElement(_reactNativeWeb.Image, {
resizeMode: 'contain',
style: [styles.r, {
width: 19,
height: 16,
marginBottom: 1
}],
source: require("../../../../public/img/rWhite.png")
}), /*#__PURE__*/_react.default.createElement(_reactNativeWeb.Text, {
allowFontScaling: false,
style: [styles.bebas, props.style, _reactNativeWeb.Platform.OS === 'android' ? {
marginBottom: 0
} : null, styles.title]
}, _utils.numbers.abbreviateNumber(rel))), /*#__PURE__*/_react.default.createElement(_reactNativeWeb.View, {
style: styles.ulParent
}, dataEl));
};
exports.data.coin = {
name: 'coin',
vertical: 'bottom',
horizontal: 'right',
horizontalOffset: 0,
verticalOffset: 10
};
exports.text.coin = function coin(props) {
if (!props.auth.user) return null;
var data = ['Get coins by upvoting quality links. ', "The more coins you have, the more rewards you'll be able to earn"];
var dataEl = data.map(function (txt) {
return renderRow(props, txt);
});
return /*#__PURE__*/_react.default.createElement(_reactNativeWeb.View, null, /*#__PURE__*/_react.default.createElement(_reactNativeWeb.View, {
allowFontScaling: false,
style: [styles.textRow]
}, /*#__PURE__*/_react.default.createElement(_reactNativeWeb.Text, {
style: [props.style, styles.title]
}, "These are your coins: "), /*#__PURE__*/_react.default.createElement(_reactNativeWeb.Image, {
resizeMode: 'contain',
style: [styles.r, {
width: 20,
height: 18,
marginBottom: 1
}],
source: require("../../../../public/img/relevantcoin.png")
}), /*#__PURE__*/_react.default.createElement(_reactNativeWeb.Text, {
allowFontScaling: false,
style: [styles.bebas, props.style, _reactNativeWeb.Platform.OS === 'android' ? {
marginBottom: 0
} : null, styles.title]
}, _utils.numbers.abbreviateNumber(props.auth.user.balance + props.auth.user.tokenBalance))), /*#__PURE__*/_react.default.createElement(_reactNativeWeb.View, {
style: styles.ulParent
}, dataEl));
};
exports.data.topics = {
name: 'topics',
vertical: 'bottom',
horizontal: 'right',
horizontalOffset: 0,
verticalOffset: 10
};
exports.text.topics = function topics(props) {
if (!props.auth.user) return null;
return /*#__PURE__*/_react.default.createElement(_reactNativeWeb.Text, {
style: [props.style, {
textAlign: 'center'
}]
}, "Press on Discover to toggle specific topics");
};
exports.data.subscriptions = {
name: 'subscriptions',
vertical: 'bottom',
horizontal: 'right',
horizontalOffset: 0,
verticalOffset: 10
};
exports.text.subscriptions = function subscription(props) {
if (!props.auth.user) return null;
return /*#__PURE__*/_react.default.createElement(_reactNativeWeb.Text, {
allowFontScaling: false,
style: [props.style, {
textAlign: 'center'
}]
}, "When you upvote a post, you subscribe to the next 3 posts from the author");
};
exports.data.vote = {
name: 'vote',
vertical: 'top',
horizontal: 'right',
horizontalOffset: 1,
verticalOffset: 15
};
exports.text.vote = function vote(props) {
if (!props.auth.user) return null;
var data = ['Upvote articles and that are worth reading, downvote spam.', "Voters will earn coins based on the article's ranking after 3 days"];
var dataEl = data.map(function (txt) {
return renderRow(props, txt);
});
return /*#__PURE__*/_react.default.createElement(_reactNativeWeb.View, null, /*#__PURE__*/_react.default.createElement(_reactNativeWeb.Text, {
allowFontScaling: false,
style: [props.style, styles.title]
}, "Was it worth reading?"), /*#__PURE__*/_react.default.createElement(_reactNativeWeb.View, {
style: styles.ulParent
}, dataEl));
};
exports.data.activity = {
name: 'activity',
vertical: 'top',
horizontal: 'right',
horizontalOffset: 0,
verticalOffset: 0
};
exports.text.activity = function activity(props) {
if (!props.auth.user) return null;
var data = ['When others upvote your posts your Relevance goes up', 'You earn more Relevance from users that are more Relevant than you'];
if (props.type && props.type.match('partial')) {
data = ['You earn Relevance when you are one of the first to upvote a quality article', 'For best results find new posts no one upvoted yet'];
}
var dataEl = data.map(function (txt) {
return renderRow(props, txt);
});
return /*#__PURE__*/_react.default.createElement(_reactNativeWeb.View, null, /*#__PURE__*/_react.default.createElement(_reactNativeWeb.Text, {
allowFontScaling: false,
style: [props.style, styles.title]
}, "Relevance"), /*#__PURE__*/_react.default.createElement(_reactNativeWeb.View, {
style: styles.ulParent
}, dataEl));
};
exports.data.shareTip = {
name: 'shareTip',
vertical: 'top',
horizontal: 'right',
horizontalOffset: 0,
verticalOffset: 4,
noButton: true
};
exports.text.shareTip = function shareTip() {
var width = _global.fullWidth / 2.4;
var Video = require('react-native-video').default;
return /*#__PURE__*/_react.default.createElement(_reactNativeWeb.View, {
style: styles.videoTip
}, /*#__PURE__*/_react.default.createElement(_reactNativeWeb.View, {
style: {
flex: 1
}
}, /*#__PURE__*/_react.default.createElement(_reactNativeWeb.View, {
style: styles.ol
}, /*#__PURE__*/_react.default.createElement(_reactNativeWeb.Text, {
allowFontScaling: false,
style: [styles.textP, {
fontWeight: 'bold',
fontSize: 14
}]
}, "Enable posting from Chrome, Safari and other apps:")), /*#__PURE__*/_react.default.createElement(_reactNativeWeb.View, {
style: styles.ol
}, /*#__PURE__*/_react.default.createElement(_reactNativeWeb.Text, {
allowFontScaling: false,
style: styles.textP
}, "1", ' '), /*#__PURE__*/_react.default.createElement(_reactNativeWeb.Text, {
allowFontScaling: false,
style: styles.textP
}, "Tap on share icon")), /*#__PURE__*/_react.default.createElement(_reactNativeWeb.View, {
style: styles.ol
}, /*#__PURE__*/_react.default.createElement(_reactNativeWeb.Text, {
allowFontScaling: false,
style: styles.textP
}, "2", ' '), /*#__PURE__*/_react.default.createElement(_reactNativeWeb.Text, {
allowFontScaling: false,
style: styles.textP
}, "Tap on 'More'")), /*#__PURE__*/_react.default.createElement(_reactNativeWeb.View, {
style: styles.ol
}, /*#__PURE__*/_react.default.createElement(_reactNativeWeb.Text, {
allowFontScaling: false,
style: styles.textP
}, "3", ' '), /*#__PURE__*/_react.default.createElement(_reactNativeWeb.Text, {
allowFontScaling: false,
style: styles.textP
}, "Find and toggle Relevant app")), /*#__PURE__*/_react.default.createElement(_reactNativeWeb.View, {
style: styles.ol
}, /*#__PURE__*/_react.default.createElement(_reactNativeWeb.Text, {
allowFontScaling: false,
style: styles.textP
}, "4", ' '), /*#__PURE__*/_react.default.createElement(_reactNativeWeb.Text, {
allowFontScaling: false,
style: styles.textP
}, "Rearrange Relevant icon as you like"))), /*#__PURE__*/_react.default.createElement(_reactNativeWeb.View, {
style: {
flex: 0,
width: width,
height: width + 40,
overflow: 'hidden'
}
}, /*#__PURE__*/_react.default.createElement(Video, {
resizeMode: 'contain',
source: require("../../../../public/img/shareTip.mp4"),
style: {
width: width,
height: width * 16 / 9,
bottom: 0,
position: 'absolute'
},
repeat: true
})));
};
var localStyles = _reactNativeWeb.StyleSheet.create({
ol: {
flexDirection: 'row',
paddingRight: 15
},
tooltipText: {
fontSize: 15
},
title: {
fontSize: 20,
lineHeight: 22,
fontWeight: 'bold'
},
textP: {
fontSize: 12,
flex: 0,
marginBottom: 10,
color: 'white'
},
videoTip: {
flexDirection: 'row',
alignItems: 'center'
},
ul: {
flex: 1,
paddingLeft: 10,
marginBottom: 10
},
ulParent: {
flexDirection: 'column',
marginTop: 20
}
});
styles = _objectSpread(_objectSpread({}, _global.globalStyles), localStyles);
//# sourceMappingURL=tooltip.helper.js.map