jsir 2.0.5 → 2.0.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/cmd/oaa.js CHANGED
@@ -1,24 +1,26 @@
1
1
  #!/usr/bin/env node
2
- const $lib = require('../util');
3
2
  const path = require('path');
3
+ const {spawnSync} = require('child_process');
4
+ const globalDirectories = require('global-dirs');
5
+ let nodePath = process.env.NODE_PATH ? process.env.NODE_PATH.trim():'';
6
+ let avoidFlag = path.delimiter + path.delimiter + path.delimiter;
7
+ if (!nodePath.endsWith(avoidFlag) && nodePath.indexOf(globalDirectories.npm.packages) === -1) {
8
+ process.env.NODE_PATH = [globalDirectories.npm.packages, nodePath].filter(i => i).join(path.delimiter) + avoidFlag
9
+ process.on('SIGINT', function () {});
10
+ spawnSync(process.argv[0], process.argv.slice(1), {stdio:"inherit"});
11
+ return;
12
+ }
13
+
14
+ const $lib = require('../util');
4
15
  const {
5
16
  getLibDataDir, trim, regEach, getConfig, mkdir, reget,
6
17
  getCbText, e, sleep, objDataFile, vl, md5, BigNumber,
7
18
  info, warn, error, arrayDataFile, infoStr, warnStr, errorStack,
8
19
  getInfo, ei, pad, msgStr, getType,
9
20
  errorTag, isArgsMatch, draftQuery, setConfig,
10
- $log, $draft, getTextComments, globalModulesPath
21
+ $log, $draft, getTextComments
11
22
  } = $lib;
12
- const _args = process.argv.slice(2).map(trim)
13
- let nodePath = trim(process.env.NODE_PATH)
14
- let avoidFlag = path.delimiter + path.delimiter + path.delimiter;
15
- if (!nodePath.endsWith(avoidFlag) && nodePath.indexOf(globalModulesPath) === -1) {
16
- process.env.NODE_PATH = [globalModulesPath, nodePath].filter(i => i).join(path.delimiter) + avoidFlag
17
- process.on('SIGINT', function () {});
18
- ei(`jsir`, _args);
19
- return;
20
- }
21
-
23
+ const _args = process.argv.slice(2).map(trim);
22
24
  const evalCode = require('../evalCode')
23
25
  const _chokidar = require('chokidar');
24
26
  const setting = require('../setting')
@@ -27,7 +29,6 @@ const readline = require("readline");
27
29
 
28
30
  const _workspaceConfigFile = 'workspace.json';
29
31
  const _libDataDir = getLibDataDir()
30
- const _history9 = []
31
32
  const _tipsOnRm = {}
32
33
  const _fileWatcherMap = {}
33
34
  const _types = {
@@ -50,16 +51,22 @@ let _exit = false
50
51
  const _data = {}
51
52
  const $data = {
52
53
  get: (key, defaultVal) => {
53
- if (!(key in _data) && defaultVal !== undefined) {
54
- _data[key] = defaultVal
54
+ if (!vl(_data[key]) && vl(defaultVal)) {
55
+ return defaultVal
55
56
  }
56
57
  return _data[key]
57
58
  },
58
- set: (key, val) => {
59
- _data[key] = val
59
+ gos: (key, defaultVal) => {
60
+ if (!vl(_data[key]) && vl(defaultVal)) {
61
+ _data[key] = defaultVal
62
+ }
63
+ return _data[key]
60
64
  },
65
+ set: (key, val) => _data[key] = val,
61
66
  del: (key) => {
67
+ let val = _data[key]
62
68
  delete _data[key]
69
+ return val
63
70
  },
64
71
  keys: () => Object.keys(_data)
65
72
  }
@@ -79,12 +86,11 @@ function getFileOpenExe(fileName) {
79
86
  if (strs.length > 1) {
80
87
  suffix = strs[strs.length - 1]
81
88
  }
89
+ let defaultExe = getConfig("defaultExe", "idea");
82
90
  if (!suffix) {
83
- return 'idea'
91
+ return defaultExe
84
92
  }
85
-
86
- let exe = getConfig(`${suffix}_exe`)
87
- return exe || 'idea';
93
+ return getConfig(`${suffix}_exe`, defaultExe);
88
94
  }
89
95
 
90
96
  function checkWorkspaces() {
@@ -110,10 +116,8 @@ function checkWorkspaces() {
110
116
  async function start() {
111
117
  checkWorkspaces()
112
118
 
119
+ _cmdMap = objDataFile(_cmdMapFile)
113
120
  if (_args[0]) {
114
- if (_noAppendNextLine) {
115
- _cmdMap = objDataFile(_cmdMapFile)
116
- }
117
121
  let line = _args.map(i => {
118
122
  if (/\s+/.test(i) || !i) {
119
123
  i = `"${i}"`
@@ -122,8 +126,7 @@ async function start() {
122
126
  }).join(' ')
123
127
  await wrapperInput(line)
124
128
  } else {
125
- _noAppendNextLine = false
126
- console.log(warnStr("You can start with .help, use * to expand context"))
129
+ await wrapperInput(getConfig("defaultAction", ".repl"))
127
130
  }
128
131
  }
129
132
 
@@ -262,7 +265,7 @@ function initRl(callback, preStr, hidden) {
262
265
  if (promptStr !== '') {
263
266
  promptStr = (preStr
264
267
  || ((callback && callback !== wrapperInput) ? "-> ":"")
265
- || [Object.values(global.$tips).filter(i => String(i)).join(','), $defaultSpace].filter(i => i).join(':') + `> `)
268
+ || [Object.values(global.$tips).map(String).filter(i => i).map(i => i.replace(/,/g, '-')).join(','), $defaultSpace].filter(i => i).join(':') + `> `)
266
269
  promptStr = infoStr(promptStr)
267
270
  }
268
271
  if (hidden) {
@@ -411,26 +414,6 @@ function rename(dir, oldName, newName) {
411
414
  listCmd()
412
415
  }
413
416
 
414
- function putHis(x) {
415
- if (_history9.indexOf(x) !== -1) {
416
- _history9.splice(_history9.indexOf(x), 1)
417
- }
418
- _history9.push(x)
419
- if (_history9.length > 9) {
420
- _history9.shift()
421
- }
422
- }
423
-
424
- function hisToCmdMap() {
425
- let i = 1
426
- let cmdMap = {}
427
- for (let item of _history9) {
428
- cmdMap[i] = item
429
- i ++
430
- }
431
- _cmdMap = cmdMap
432
- }
433
-
434
417
  function listCmd() {
435
418
  let items = Object.values(_cmdMap)
436
419
  .filter(item => _fs.existsSync(getFullPath(item)))
@@ -542,18 +525,14 @@ async function _wrapperInput(str) {
542
525
  if (!text) {
543
526
  text = '$context';
544
527
  }
545
- let items = text.split(/\s+/).map(trim).filter(i => i)
546
- let result = await evalText('return ' + items[0])
528
+ let result = await evalText('return ' + text)
547
529
  if (!result || typeof result === 'string' || Object.keys(result).length === 0) {
548
530
  console.nable([getInfo(result)])
549
531
  return
550
532
  }
551
533
  let rows = []
552
- let matchs = items.slice(1)
553
534
  for (let key of Object.keys(result)) {
554
- if (matchs.length === 0 || isArgsMatch(key, [matchs.join(' ')])){
555
- rows.push(getInfo(result[key], key))
556
- }
535
+ rows.push(getInfo(result[key], key))
557
536
  }
558
537
  if (rows.length === 0) {
559
538
  warn("no items")
@@ -576,7 +555,6 @@ async function _wrapperInput(str) {
576
555
  } else {
577
556
  let strs = str.split(/\s+/)
578
557
  if (_cmdMap[strs[0]]) {
579
- putHis(_cmdMap[strs[0]])
580
558
  let path = getFullPath(_cmdMap[strs[0]])
581
559
  let uniqueName = trim(_cmdMap[strs[0]]);
582
560
  let fileName = parseUniqueName(uniqueName)[1]
@@ -714,7 +692,7 @@ const keywordDef = {
714
692
  exeFn: (args) => {
715
693
  help()
716
694
  },
717
- short: 'H'
695
+ short: 'h'
718
696
  },
719
697
  list: {
720
698
  comment: '查看文件列表',
@@ -725,7 +703,7 @@ const keywordDef = {
725
703
  listCmd()
726
704
  },
727
705
  args: {
728
- queryParams: '条件参数(param1,param2 param3 ...), [,]代表全部'
706
+ queryParams: '字符串匹配,[,]代表全部,关键字可以省略'
729
707
  },
730
708
  short: 'l'
731
709
  },
@@ -888,14 +866,6 @@ const keywordDef = {
888
866
  // },
889
867
  // short: 'd'
890
868
  // },
891
- history: {
892
- comment: '查看执行记录',
893
- exeFn: (args) => {
894
- hisToCmdMap()
895
- listCmd()
896
- },
897
- short: 'h'
898
- },
899
869
  file: {
900
870
  comment: '工作文件模式',
901
871
  exeFn: async (args) => {
@@ -1024,6 +994,17 @@ const keywordDef = {
1024
994
  process.exit(0)
1025
995
  },
1026
996
  short: 'q'
997
+ },
998
+ repl: {
999
+ comment: '交互式界面',
1000
+ exeFn: (args) => {
1001
+ _noAppendNextLine = false
1002
+ console.log(warnStr("You can start with .help, use * to expand context"))
1003
+ if (Object.keys(_cmdMap).length > 0) {
1004
+ listCmd()
1005
+ }
1006
+ },
1007
+ short: 'p'
1027
1008
  }
1028
1009
  }
1029
1010
 
@@ -1179,7 +1160,9 @@ function initWorkspace(space) {
1179
1160
  if (!$workspaceMap[current]) {
1180
1161
  workspace = 'local'
1181
1162
  }
1182
- setConfig("workspace", workspace)
1163
+ if (workspace !== current) {
1164
+ setConfig("workspace", workspace)
1165
+ }
1183
1166
  global.$defaultSpace = workspace;
1184
1167
  }
1185
1168
 
@@ -1511,6 +1494,8 @@ async function _requireSource(currSpace, cmdMatchStr, printLog = false) {
1511
1494
  result = async (argsStr) => {
1512
1495
  return await runCmd(trim(argsStr), uniqueName, text)
1513
1496
  }
1497
+ } else {
1498
+ result = text;
1514
1499
  }
1515
1500
  if (!vl(result)) {
1516
1501
  if (nullable) {
package/index.js CHANGED
@@ -1,5 +1,4 @@
1
1
 
2
2
  module.exports = {
3
- ...require('util'),
4
- ...require('sol')
3
+ ...require('util')
5
4
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "jsir",
3
- "version": "2.0.5",
3
+ "version": "2.0.7",
4
4
  "description": "js script manager tool",
5
5
  "main": "index.js",
6
6
  "scripts": {
package/util.js CHANGED
@@ -135,7 +135,7 @@ function vl(obj) {
135
135
  return !Number.isNaN(obj)
136
136
  }
137
137
  if (typeof obj === 'string') {
138
- obj = trim(obj)
138
+ obj = obj.trim()
139
139
  }
140
140
  return !(obj === null || obj === undefined || obj === '')
141
141
  }
@@ -400,9 +400,6 @@ function aesDecipher(str, key){
400
400
  }
401
401
 
402
402
  function getConfig(key, defaultVal) {
403
- if (typeof defaultVal === "string") {
404
- defaultVal = trim(defaultVal)
405
- }
406
403
  let configInit = {}
407
404
  let configFile = getLibDataDir() + '/config.json';
408
405
  if (!fs.existsSync(configFile)) {
@@ -414,13 +411,20 @@ function getConfig(key, defaultVal) {
414
411
  return config
415
412
  }
416
413
  let writeFlag = false
417
- if (!(key in config) && defaultVal !== undefined) {
414
+ if (!(key in config)) {
418
415
  writeFlag = true
419
- config[key] = defaultVal
416
+ config[key] = null
420
417
  }
421
418
  if (writeFlag) {
422
419
  fs.writeFileSync(configFile, JSON.stringify(config, null, 2))
423
420
  }
421
+
422
+ if (typeof defaultVal === "string") {
423
+ defaultVal = trim(defaultVal)
424
+ }
425
+ if (!vl(config[key]) && vl(defaultVal)) {
426
+ return defaultVal
427
+ }
424
428
  let val = config[key]
425
429
  if (typeof val === "string") {
426
430
  val = trim(val)
@@ -1,31 +0,0 @@
1
- #!/usr/bin/env node
2
- let {$config, run, lisPid} = require('../util')
3
-
4
- const server = require('server');
5
- let address = require('address');
6
- const { get } = server.router;
7
- const {send} = server.reply
8
-
9
- let port = Number(process.argv[2] || 9563 )
10
- let router = [
11
- get('/', () => {
12
- return send($config.localConfig)
13
- }),
14
- get('/:key', (ctx) => {
15
- if (!$config.localConfig.hasOwnProperty(ctx.params.key)) {
16
- return send(null)
17
- }
18
- return send($config.getLocal(ctx.params.key))
19
- })
20
- ]
21
-
22
- lisPid('configServer_' + port)
23
-
24
- run(async () => {
25
- await $config.build()
26
- await server({
27
- port
28
- },router);
29
- console.log("http://localhost:"+port);
30
- console.log("http://" + address.ip()+":"+port);
31
- })
package/cmd/dirServer.js DELETED
@@ -1,61 +0,0 @@
1
- #!/usr/bin/env node
2
- let http = require('http');
3
- let url=require('url');
4
- let fs=require('fs');
5
- let mine=require('../source/mine').types;
6
- let path=require('path');
7
- let address = require('address');
8
- let urlencode = require('urlencode');
9
- let {lisPid} = require('../util')
10
-
11
- let server = http.createServer(function (request, response) {
12
- let pathname = urlencode.decode(url.parse(request.url).pathname, "utf8");
13
- let realPath = process.cwd() + pathname;
14
- let ext = path.extname(realPath);
15
- ext = ext ? ext.slice(1) : 'unknown';
16
- if (fs.existsSync(realPath)) {
17
- if (fs.statSync(realPath).isFile()) {
18
- fs.readFile(realPath, "binary", function (err, file) {
19
- if (err) {
20
- response.writeHead(500, {
21
- 'Content-Type': 'text/plain'
22
- });
23
- response.end(err);
24
- } else {
25
- let contentType = mine[ext] || "text/plain";
26
- response.writeHead(200, {
27
- 'Content-Type': contentType
28
- });
29
- response.write(file, "binary");
30
- response.end();
31
- }
32
- });
33
- } else {
34
- let paths = fs.readdirSync(realPath)
35
- response.writeHead(200, {
36
- 'Content-Type': 'text/html'
37
- });
38
- response.write('<head><meta charset="utf-8"/></head>');
39
- paths.forEach(path => {
40
- response.write(`
41
- <a href="/${(request.url + '/').replace(/^\/+/, '')}${path}">${path}</a><br/>
42
- `)
43
- })
44
- response.end();
45
- }
46
- } else {
47
- response.writeHead(404, {
48
- 'Content-Type': 'text/plain'
49
- });
50
- response.write("This request URL " + pathname + " was not found on this server.");
51
- response.end();
52
- }
53
- });
54
-
55
- let port = process.argv[2] || 8088;
56
- server.listen(port);
57
-
58
- console.log("http://localhost:"+port);
59
- console.log("http://" + address.ip()+":"+port);
60
-
61
- lisPid('dirServer_' + port)
@@ -1,77 +0,0 @@
1
- #!/usr/bin/env node
2
- let {getPrice, eFn, lisPid} = require('../util')
3
- let Web3 = require('web3');
4
- let web3 = new Web3("https://http-mainnet-node.huobichain.com");
5
- web3.eth.transactionPollingTimeout = 49
6
- global.web3 = web3
7
- const server = require('server');
8
- let address = require('address');
9
-
10
- let usdt = '0xa71edc38d189767582c38a3145b5873052c3e47a'
11
- let wht = '0x5545153ccfca01fbd7dd11c0b23ba694d9509a6f'
12
- let mdxFact = '0xb0b670fc1F7724119963018DB0BfA86aDb22d941'
13
-
14
- const { get } = server.router;
15
- let port = 9589
16
-
17
- let data = {
18
- gasList: [],
19
- htPrice: 0,
20
- cost: 0,
21
- timestamp: 0
22
- }
23
-
24
- let router = [
25
- get('/', ctx => {
26
- return data
27
- })
28
- ]
29
-
30
- lisPid('ethDataServer_' + port)
31
-
32
- setTimeout(() => {
33
- refreshData().catch()
34
- server({port},router);
35
- console.log("http://localhost:"+port);
36
- console.log("http://" + address.ip()+":"+port);
37
- }, 1000 * 5)
38
-
39
- async function refreshData() {
40
- let time = Date.now()
41
- try {
42
- data.htPrice = await getPrice(wht, usdt, mdxFact);
43
- await refreshGasList()
44
- } catch (e) {
45
- console.log(String(e))
46
- } finally {
47
- let cost = Date.now() - time
48
- console.log('Refresh Data Cost: ' + cost)
49
- data.cost = cost
50
- data.timestamp = Date.now()
51
- }
52
- setTimeout(() => refreshData(), 1000)
53
- }
54
-
55
- async function refreshGasList() {
56
- let blockInfo = await web3.eth.getBlock("pending")
57
- if (blockInfo != null) {
58
- let map = {}
59
- let items = []
60
- for (let txHash of blockInfo.transactions) {
61
- items.push(eFn(async (txHash) => {
62
- let rawTransaction = await web3.eth.getTransaction(txHash);
63
- if (rawTransaction) {
64
- map[Number(rawTransaction.gasPrice) / (1000 * 1000 * 1000)] = true
65
- }
66
- }, txHash))
67
- }
68
- await Promise.all(items)
69
- let list = Object.keys(map)
70
- list = list.sort((a, b) => Number(b) - Number(a));
71
- list = list.slice(0, 10)
72
-
73
- if (list.length > 0) {
74
- data.gasList = list
75
- }
76
- }
77
- }
package/cmd/mockServer.js DELETED
@@ -1,119 +0,0 @@
1
- #!/usr/bin/env node
2
- let fs = require('fs')
3
- const server = require('server');
4
- let address = require('address');
5
- let {lisPid, getLibDataDir, trim, fileCleaner, getCbText} = require('../util')
6
- let libRoot = getLibDataDir()
7
- let home = libRoot + '/mock'
8
- let readline = require('readline')
9
- try {
10
- fs.mkdirSync(home)
11
- } catch (e) {}
12
- const { get, post } = server.router;
13
- let mockServerLog = libRoot + '/mockServer.log'
14
- let port = 9549
15
- let cmd = {
16
- path,
17
- start
18
- }
19
- if (!cmd[trim(process.argv[2])]) {
20
- console.log(`ARGS EXAMPLE:
21
- path
22
- start [9549]`)
23
- return;
24
- }
25
- cmd[trim(process.argv[2])]()
26
-
27
- function getPathMap() {
28
- let pathMap = {}
29
- let i = 1
30
- fs.readdirSync(home).forEach(item => {
31
- pathMap[String(i)] = item
32
- i ++
33
- })
34
- return pathMap
35
- }
36
- function path(){
37
- let map = getPathMap()
38
- Object.keys(map).forEach(i => {
39
- console.log(i + ": " + map[i].replace(/_-sep-_/g, '/'))
40
- })
41
-
42
- let rl = readline.createInterface({
43
- input: process.stdin,
44
- output: process.stdout
45
- })
46
- process.stdout.write("> ")
47
- rl.on('line', async (str) => {
48
- str = trim(str)
49
- if (map[str]) {
50
- try {
51
- console.log(String(fs.readFileSync(home + '/' + map[str].replace(/\//g, '_-sep-_'))))
52
- } catch (e) {}
53
- } else {
54
- if (str) {
55
- let url = `${home}/${str.replace(/\//g, '_-sep-_')}`
56
- let textStr = await getCbText()
57
- if (!textStr) {
58
- try {
59
- fs.unlinkSync(url)
60
- } catch (e) {}
61
- } else {
62
- fs.writeFileSync(url, textStr)
63
- }
64
- }
65
-
66
- map = getPathMap()
67
- Object.keys(map).forEach(i => {
68
- console.log(i + ": " + map[i].replace(/_-sep-_/g, '/'))
69
- })
70
- }
71
-
72
- process.stdout.write("> ")
73
- })
74
- }
75
-
76
- function start() {
77
- if (process.argv[3]) {
78
- port = trim(process.argv[3])
79
- }
80
- let router = [
81
- get('/', ctx => {
82
- let map = getPathMap();
83
- return Object.values(map).map(item => item.replace(/_-sep-_/g, '/'))
84
- }),
85
- post('/', ctx => {
86
- log(ctx.data);
87
- let map = getPathMap();
88
- return Object.values(map).map(item => item.replace(/_-sep-_/g, '/'))
89
- })
90
- ]
91
- fs.readdirSync(home).forEach(item => {
92
- let fn = ctx => {
93
- let text = fs.readFileSync(`${home}/${item}`)
94
- try {
95
- (eval(`(()=>{${text}})()`))
96
- return ((typeof ctx.return === 'object') ? ctx.return : String(ctx.return)) || {}
97
- } catch (e) {
98
- log(e)
99
- return String(e)
100
- }
101
- }
102
- let url = item.replace(/_-sep-_/g, '/')
103
- router.push(get('/' + url, fn))
104
- router.push(post('/' + url, fn))
105
- })
106
-
107
- fileCleaner(mockServerLog)
108
- lisPid('mockServer_' + port)
109
-
110
- console.log("http://localhost:"+port);
111
- console.log("http://" + address.ip()+":"+port);
112
- setTimeout(() => {
113
- server({port},router);
114
- }, 1000 * 5)
115
- }
116
-
117
- function log(s) {
118
- fs.appendFileSync(mockServerLog, s + '\n')
119
- }
package/cmd/see.js DELETED
@@ -1,67 +0,0 @@
1
- #!/usr/bin/env node
2
- let fs = require('fs');
3
- let path = require('path')
4
- let {getLibDataDir, cleanFile} = require("../util")
5
- let readline = require('readline');
6
- let gua = require('../source/gua');
7
- let posJson = require('../source/pos');
8
- let desc = process.argv.splice(2).join(" ");
9
- let dataLibDir = getLibDataDir()
10
- let get = n => Math.floor(Math.random()*n) + 1;
11
- let down = get(8);
12
- let up = get(8);
13
- let pos = get(6);
14
- let result = down + "," + up + "," + pos;
15
- console.log(result);
16
-
17
- function save(content) {
18
- let seeTxt = dataLibDir + "/see.txt";
19
- fs.writeFileSync(seeTxt, content,
20
- { encoding: 'utf8', flag: 'a' });
21
- cleanFile(seeTxt)
22
- }
23
- if (desc) save(new Date() + "\t" + result + "\t" + desc + "\n");
24
-
25
- let key = `${gua[String(up)]}上${gua[String(down)]}下`;
26
- let changeStream = fs.createReadStream(path.resolve(__dirname, '../source/change.txt'));
27
- let changeLine = readline.createInterface({
28
- input:changeStream
29
- });
30
- let found = false;
31
- let use = false;
32
- let text = '';
33
- changeLine.on('line',function (line) {
34
- line = line.trim().replace(/-/g, "");
35
- if (!line) return;
36
-
37
- if (line.match(/^初[六九]/)) {
38
- use = false;
39
- }
40
-
41
- let two = line.substr(0, 2);
42
- if (use && (two.indexOf("六") !== -1 || two.indexOf("九") !== -1)) {
43
- use = false;
44
- }
45
- if (two.indexOf(posJson[String(pos)]) !== -1
46
- && (two.indexOf("六") !== -1 || two.indexOf("九") !== -1)) {
47
- use = true;
48
- }
49
- if (line.match(/^第[一二三四五六七八九十]/)){
50
- found = false;
51
- }
52
- if (found && use) {
53
- text += line + "\n";
54
- }
55
- if (line.indexOf(key) !== -1) {
56
- found = true;
57
- use = true;
58
- }
59
- });
60
-
61
- changeLine.on('close', () => {
62
- console.log(text);
63
- if (desc) save(text);
64
- });
65
-
66
-
67
-
package/cmd/solCd.js DELETED
@@ -1,5 +0,0 @@
1
- #!/usr/bin/env node
2
- let {sc, sd} = require('../sol')
3
-
4
- sc(...(process.argv.slice(2)))
5
- sd(...(process.argv.slice(2)))
package/cmd/solComplie.js DELETED
@@ -1,4 +0,0 @@
1
- #!/usr/bin/env node
2
- let {sc} = require('../sol')
3
-
4
- sc(...process.argv.slice(2))
package/cmd/solDeploy.js DELETED
@@ -1,4 +0,0 @@
1
- #!/usr/bin/env node
2
- let {sd} = require('../sol')
3
-
4
- sd(...process.argv.slice(2))
package/cmd/solTest.js DELETED
@@ -1,7 +0,0 @@
1
- #!/usr/bin/env node
2
- let {st} = require('../sol')
3
-
4
- st(...(process.argv.slice(2)))
5
-
6
-
7
-