mirror of
https://github.com/jakejarvis/jakejarvis.git
synced 2025-04-26 06:35:23 -04:00
try compiling CLI to one dependency-free file
This commit is contained in:
parent
48775edbba
commit
9d488db184
1
cli/.gitignore
vendored
1
cli/.gitignore
vendored
@ -1 +1,2 @@
|
||||
node_modules/
|
||||
dist/
|
||||
|
@ -1,12 +1,20 @@
|
||||
#!/usr/bin/env node
|
||||
|
||||
'use strict';
|
||||
|
||||
const meow = require('meow');
|
||||
const React = require('react');
|
||||
const {Box, Text} = require('ink');
|
||||
const {render, Box, Text} = require('ink');
|
||||
const BigText = require('ink-big-text');
|
||||
const Gradient = require('ink-gradient');
|
||||
const SelectInput = require('ink-select-input').default;
|
||||
const open = require('open');
|
||||
|
||||
meow(`
|
||||
Usage
|
||||
$ npx @jakejarvis/cli
|
||||
`);
|
||||
|
||||
const handleSelect = item => {
|
||||
if (item.url) {
|
||||
open(item.url);
|
||||
@ -62,7 +70,7 @@ const items = createItems([
|
||||
}
|
||||
]);
|
||||
|
||||
const menu = () => (
|
||||
const Menu = () => (
|
||||
<Box flexDirection="column">
|
||||
<Gradient name="pastel">
|
||||
<BigText text="Jake Jarvis"/>
|
||||
@ -74,4 +82,4 @@ const menu = () => (
|
||||
</Box>
|
||||
);
|
||||
|
||||
module.exports = menu;
|
||||
render(<Menu />);
|
@ -22,29 +22,42 @@
|
||||
"node": "^12 || ^14 || >=16"
|
||||
},
|
||||
"files": [
|
||||
"src/*"
|
||||
"dist/index.js"
|
||||
],
|
||||
"bin": {
|
||||
"jakejarvis": "./src/cli.js"
|
||||
"jakejarvis": "./dist/index.js"
|
||||
},
|
||||
"scripts": {
|
||||
"cli": "node ./src/cli.js",
|
||||
"test": "eslint ./src/*.js"
|
||||
"clean": "rimraf dist",
|
||||
"compile": "babel index.js -o dist/babel.js && ncc build dist/babel.js -o dist && rimraf dist/babel.js",
|
||||
"run": "yarn compile && node dist/index.js",
|
||||
"test": "eslint ./src/*.js",
|
||||
"prepublishOnly": "yarn clean && yarn compile"
|
||||
},
|
||||
"dependencies": {
|
||||
"import-jsx": "^4.0.0",
|
||||
"ink": "^3.0.8",
|
||||
"dependencies": {},
|
||||
"devDependencies": {
|
||||
"@babel/cli": "^7.14.8",
|
||||
"@babel/core": "^7.15.0",
|
||||
"@babel/preset-env": "^7.15.0",
|
||||
"@babel/preset-react": "^7.14.5",
|
||||
"@vercel/ncc": "^0.29.0",
|
||||
"eslint": "^7.32.0",
|
||||
"eslint-plugin-react": "^7.24.0",
|
||||
"eslint-plugin-react-hooks": "^4.2.0",
|
||||
"ink": "^3.0.9",
|
||||
"ink-big-text": "^1.2.0",
|
||||
"ink-gradient": "^2.0.0",
|
||||
"ink-select-input": "^4.2.0",
|
||||
"meow": "^9.0.0",
|
||||
"open": "^8.2.0",
|
||||
"react": "^16.x"
|
||||
"open": "^8.2.1",
|
||||
"react": "^16.x",
|
||||
"rimraf": "^3.0.2"
|
||||
},
|
||||
"devDependencies": {
|
||||
"eslint": "^7.27.0",
|
||||
"eslint-plugin-react": "^7.24.0",
|
||||
"eslint-plugin-react-hooks": "^4.2.0"
|
||||
"babel": {
|
||||
"presets": [
|
||||
"@babel/preset-env",
|
||||
"@babel/preset-react"
|
||||
]
|
||||
},
|
||||
"eslintConfig": {
|
||||
"extends": [
|
||||
|
@ -1,17 +0,0 @@
|
||||
#!/usr/bin/env node
|
||||
|
||||
'use strict';
|
||||
|
||||
const meow = require('meow');
|
||||
const importJsx = require('import-jsx');
|
||||
const React = require('react');
|
||||
const {render} = require('ink');
|
||||
|
||||
const menu = importJsx('./menu');
|
||||
|
||||
meow(`
|
||||
Usage
|
||||
$ npx @jakejarvis/cli
|
||||
`);
|
||||
|
||||
render(React.createElement(menu));
|
2313
cli/yarn.lock
2313
cli/yarn.lock
File diff suppressed because it is too large
Load Diff
Loading…
x
Reference in New Issue
Block a user