respond-framework
Version:
create as fast you think
105 lines (104 loc) • 2.93 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _react2 = require("react");
var React = _react2;
var _respond = require("respond-framework/modules/replayTools/respond.js");
var _reactNative = require("react-native");
var _styles = require("../styles.js");
var _Radio = require("../widgets/Radio.js");
var _Test = require("../widgets/Test.js");
var _SearchInputForm = require("../components/SearchInputForm.js");
var _constants = require("../../../helpers/constants.js");
var _Settings = require("./Settings.js");
const Tests = (0, _react2.memo)(function Tests(props) {
return ((props, state) => {
const {
events,
testsList,
sort,
branch
} = state;
const ref = (0, _react2.useRef)();
(0, _react2.useEffect)(() => {
if (_constants.isNative) return;
ref.current.focus();
}, []);
return /*#__PURE__*/React.createElement(_reactNative.View, {
style: s.c
}, /*#__PURE__*/React.createElement(_reactNative.View, {
style: s.row
}, /*#__PURE__*/React.createElement(_Settings.ModuleDropdown, {
style: {
width: '65.8%',
marginHorizontal: 0,
marginTop: 0
}
}), /*#__PURE__*/React.createElement(_Radio.default, {
options: sortOptions,
event: events.sortTests,
name: "sort",
value: sort,
style: _SearchInputForm.s.radios,
styleLeft: _SearchInputForm.s.left,
styleRight: _SearchInputForm.s.right
})), /*#__PURE__*/React.createElement(_SearchInputForm.default, {
ref: ref
}), /*#__PURE__*/React.createElement(_reactNative.ScrollView, {
style: s.scroll,
showsVerticalScrollIndicator: false
}, testsList.map(id => /*#__PURE__*/(0, _react2.createElement)(_Test.default, {
event: events.test,
run: events.runTestInTerminal,
open: events.openTestFile,
id,
key: id,
deleteTest: events.deleteTest,
name: stripBranchDir(branch, id)
})), testsList.length === 0 && !state.loading && /*#__PURE__*/React.createElement(_reactNative.Text, {
style: s.none
}, "no tests found")));
})(props, (0, _respond.useRespond)());
});
var _default = exports.default = Tests;
const sortOptions = [{
value: 'az',
text: 'A-Z'
}, {
value: 'recent',
text: 'Recent'
}];
const stripBranchDir = (a, b) => a ? b.replace(new RegExp(`^${a.replace(/\./, '/')}\/?`), '') : b;
const s = _reactNative.StyleSheet.create({
c: {
flex: 1
},
scroll: {
flex: 1,
marginBottom: -1
},
row: {
flexDirection: 'row',
justifyContent: 'space-between',
marginHorizontal: 10,
marginTop: 9,
marginBottom: 8,
zIndex: 1000
},
radio: {
height: 26
},
spinner: {
top: '40%',
left: '50%'
},
none: {
fontSize: 16,
lineHeight: 16,
color: _styles.colors.white,
alignSelf: 'center',
marginTop: 180
}
});