UNPKG

react95-native

Version:

Refreshed Windows 95 style UI components for your React Native app

150 lines (138 loc) 4.22 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _react = _interopRequireDefault(require("react")); var _reactNative = require("react-native"); var _theming = require("../../core/theming"); var _styleElements = require("../../styles/styleElements"); 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); } const Desktop = ({ children, style, screenStyle, theme, ...rest }) => { return /*#__PURE__*/_react.default.createElement(_reactNative.View, _extends({ style: [styles.wrapper, style] }, rest), /*#__PURE__*/_react.default.createElement(_reactNative.View, { style: [styles.monitor, { backgroundColor: theme.material }] }, /*#__PURE__*/_react.default.createElement(_styleElements.Border, { theme: theme, variant: "raised" }, /*#__PURE__*/_react.default.createElement(_reactNative.View, { style: [styles.monitorShadowBorder, { borderColor: theme.borderDark }] }, /*#__PURE__*/_react.default.createElement(_reactNative.View, { style: [styles.monitorShadowBorder, { borderColor: theme.borderDark }] }))), /*#__PURE__*/_react.default.createElement(_reactNative.View, { style: [styles.screen, screenStyle], testID: "desktopScreen" }, /*#__PURE__*/_react.default.createElement(_styleElements.Border, { theme: theme, variant: "cutout" }), children), /*#__PURE__*/_react.default.createElement(_reactNative.View, { style: [styles.light] })), /*#__PURE__*/_react.default.createElement(_reactNative.View, { style: [styles.stand] }, /*#__PURE__*/_react.default.createElement(_reactNative.View, { style: [styles.standSegmentOne, { borderTopColor: theme.borderDark }] }, /*#__PURE__*/_react.default.createElement(_styleElements.Border, { theme: theme, variant: "raised", style: { backgroundColor: theme.material } })), /*#__PURE__*/_react.default.createElement(_reactNative.View, { style: [styles.standSegmentTwo, { backgroundColor: theme.material }] }, /*#__PURE__*/_react.default.createElement(_styleElements.Border, { theme: theme, variant: "default" })), /*#__PURE__*/_react.default.createElement(_reactNative.View, { style: [styles.standSegmentThree] }, /*#__PURE__*/_react.default.createElement(_styleElements.Border, { theme: theme, variant: "raised" })))); }; const styles = _reactNative.StyleSheet.create({ wrapper: { position: 'relative', width: 'auto', alignSelf: 'center' }, monitor: { position: 'relative', zIndex: 1, width: 195, height: 155, padding: 18 }, monitorShadowBorder: { position: 'absolute', top: 0, left: 0, bottom: 0, right: 0, borderWidth: 1, borderStyle: 'dotted' // TODO: left and top dotted border shoulg be of light color // borderTopColor: theme.borderLightest, // borderLeftColor: theme.borderLightest, // borderBottomColor: theme.borderDark, // borderRightColor: theme.borderDark, }, screen: { flex: 1, padding: 4 }, light: { position: 'absolute', right: 20, top: 140, width: 10, borderWidth: 2, borderTopColor: '#4d9046', borderBottomColor: '#07ff00', borderLeftColor: '#4d9046', borderRightColor: '#07ff00' }, stand: { display: 'flex', position: 'relative', alignItems: 'center' }, standSegmentOne: { width: '50%', height: 14, borderWidth: 2, borderColor: 'transparent', zIndex: 1 }, standSegmentTwo: { width: '40%', height: 12, position: 'relative', top: -4 }, standSegmentThree: { width: '75%', height: 8, position: 'relative', top: -6 } }); var _default = (0, _theming.withTheme)(Desktop); exports.default = _default; //# sourceMappingURL=Desktop.js.map