effects-as-data-generate
Advanced tools
Comparing version 1.1.0 to 2.0.0
76
index.js
@@ -1,63 +0,31 @@ | ||
const prompt = require('prompt') | ||
const fs = require('fs') | ||
const { snake, pascal } = require('case') | ||
const program = require('commander'); | ||
const fxns = require('./effects'); | ||
const chalk = require('chalk'); | ||
const {failure, isFailure} = require('effects-as-data'); | ||
function fnTemplate (name) { | ||
return `function * ${name} () { | ||
program.version('0.0.1').command('init').action(function() { | ||
fxns.init().then(printResult).catch(printFailure); | ||
}); | ||
} | ||
program.version('0.0.1').command('fn').action(function(fn) { | ||
fxns.newFn(fn).then(printResult).catch(printFailure); | ||
}); | ||
module.exports = { | ||
${name} | ||
function printResult(result) { | ||
if (isFailure(result)) printFailure(result); | ||
else printSuccess(result); | ||
} | ||
` | ||
} | ||
function specTemplate (name) { | ||
const fileName = snake(name) | ||
const nameCapitalized = pascal(name) | ||
return `const { testIt } = require('effects-as-data/test') | ||
const { ${name} } = require('./${fileName}') | ||
const test${nameCapitalized} = testIt(${name}) | ||
describe('${fileName}.js', () => { | ||
describe('${name}()', () => { | ||
it('should...', test${nameCapitalized}(() => { | ||
return [ | ||
[] | ||
] | ||
})) | ||
}) | ||
}) | ||
` | ||
function printSuccess(result) { | ||
console.error(chalk.green(result.payload.message)); | ||
} | ||
prompt.start() | ||
prompt.get(['Enter the function name'], function (err, result) { | ||
if (err) { | ||
console.error(err) | ||
process.exit(1) | ||
function printFailure(result) { | ||
const f = failure(result); | ||
console.error(chalk.red(f.error.message)); | ||
if (f.error.stack) { | ||
console.error(f.error.stack); | ||
} | ||
} | ||
const name = result['Enter the function name'] | ||
const fileName = snake(name) | ||
if (!name) { | ||
console.error('A function name is required!') | ||
process.exit(1) | ||
} | ||
if (fs.existsSync(`${fileName}.js`)) { | ||
console.error(`${fileName}.js already exists.`) | ||
process.exit(1) | ||
} | ||
fs.writeFileSync(`${fileName}.js`, fnTemplate(name)) | ||
if (fs.existsSync(`${fileName}.spec.js`)) { | ||
console.error(`${fileName}.spec.js already exists.`) | ||
process.exit(1) | ||
} | ||
fs.writeFileSync(`${fileName}.spec.js`, specTemplate(name)) | ||
}) | ||
program.parse(process.argv); |
{ | ||
"name": "effects-as-data-generate", | ||
"version": "1.1.0", | ||
"version": "2.0.0", | ||
"description": "", | ||
@@ -13,3 +13,9 @@ "main": "index.js", | ||
"case": "^1.5.2", | ||
"prompt": "^1.0.0" | ||
"chalk": "^1.1.3", | ||
"commander": "^2.9.0", | ||
"effects-as-data": "^1.14.1", | ||
"ncp": "^2.0.0", | ||
"prompt": "^1.0.0", | ||
"ramda": "^0.23.0", | ||
"safe-errors": "^0.7.0" | ||
}, | ||
@@ -16,0 +22,0 @@ "bin": { |
Sorry, the diff of this file is not supported yet
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
AI-detected potential malware
Supply chain riskAI has identified this package as malware. This is a strong signal that the package may be malicious.
Found 1 instance in 1 package
Major refactor
Supply chain riskPackage has recently undergone a major refactor. It may be unstable or indicate significant internal changes. Use caution when updating to versions that include significant changes.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
10363
21
268
8
1
1
+ Addedchalk@^1.1.3
+ Addedcommander@^2.9.0
+ Addedeffects-as-data@^1.14.1
+ Addedncp@^2.0.0
+ Addedramda@^0.23.0
+ Addedsafe-errors@^0.7.0
+ Addedansi-regex@2.1.1(transitive)
+ Addedansi-styles@2.2.1(transitive)
+ Addedbluebird@3.7.2(transitive)
+ Addedchalk@1.1.3(transitive)
+ Addedcommander@2.20.3(transitive)
+ Addedeffects-as-data@1.17.7(transitive)
+ Addedencoding@0.1.13(transitive)
+ Addedescape-string-regexp@1.0.5(transitive)
+ Addedfetch-everywhere@1.0.5(transitive)
+ Addedhas-ansi@2.0.0(transitive)
+ Addediconv-lite@0.6.3(transitive)
+ Addedis-stream@1.1.0(transitive)
+ Addedncp@2.0.0(transitive)
+ Addednode-fetch@1.7.3(transitive)
+ Addedramda@0.23.0(transitive)
+ Addedreadline@1.3.0(transitive)
+ Addedsafe-errors@0.7.0(transitive)
+ Addedsafer-buffer@2.1.2(transitive)
+ Addedsimple-protocol-helpers@0.3.01.0.1(transitive)
+ Addedsimple-protocol-http@0.15.0(transitive)
+ Addedstrip-ansi@3.0.1(transitive)
+ Addedsupports-color@2.0.0(transitive)
+ Addeduuid@3.4.0(transitive)
+ Addedwhatwg-fetch@3.6.20(transitive)