tmemory
Version:
A terminal-based Memory card game built with React Ink. Features multiple grid sizes, AI opponent, and high scores.
43 lines (42 loc) • 2.23 kB
JavaScript
import { Box, Text } from 'ink';
import React from 'react';
import { COLORS } from '../../../constants/colors.js';
export const Controls = ({ gridSelectionMode, onlineEnabled, }) => {
return (React.createElement(Box, { flexDirection: "column", marginY: 1, minWidth: 40 },
React.createElement(Text, { bold: true, color: COLORS.warn }, "Controls:"),
React.createElement(Text, null,
React.createElement(Text, { bold: true }, "G"),
" ",
React.createElement(Text, { dimColor: true }, "Change game mode")),
React.createElement(Text, null,
React.createElement(Text, { bold: true }, "L"),
" ",
React.createElement(Text, { dimColor: true }, "View leaderboard")),
React.createElement(Text, null,
React.createElement(Text, { bold: true }, "O"),
' ',
React.createElement(Text, { dimColor: true },
"Toggle online leaderboard (",
onlineEnabled ? (React.createElement(Text, { color: COLORS.info }, "Enabled")) : (React.createElement(Text, { color: COLORS.warn }, "Disabled")),
")")),
React.createElement(Text, null,
React.createElement(Text, { bold: true }, "M"),
' ',
React.createElement(Text, { dimColor: true },
"Switch ",
gridSelectionMode === 'preset' ? 'to custom' : 'to preset',
' ',
"mode")),
gridSelectionMode === 'preset' ? (React.createElement(Text, null,
React.createElement(Text, { bold: true }, "\u2191/\u2193"),
" ",
React.createElement(Text, { dimColor: true }, "Cycle through grid sizes"))) : (React.createElement(React.Fragment, null,
React.createElement(Text, null,
React.createElement(Text, { bold: true }, "\u2190/\u2192"),
" ",
React.createElement(Text, { dimColor: true }, "Adjust columns")),
React.createElement(Text, null,
React.createElement(Text, { bold: true }, "\u2191/\u2193"),
" ",
React.createElement(Text, { dimColor: true }, "Adjust rows"))))));
};