Repositorio del curso CCOM4030 el semestre B91 del proyecto Artesanías con el Instituto de Cultura

init.js 1.0KB

12345678910111213141516171819202122232425262728293031323334353637
  1. var PZ = require('../../promzard').PromZard
  2. var path = require('path')
  3. var input = path.resolve(__dirname, 'init-input.js')
  4. var fs = require('fs')
  5. var package = path.resolve(__dirname, 'package.json')
  6. var pkg
  7. fs.readFile(package, 'utf8', function (er, d) {
  8. if (er) ctx = {}
  9. try { ctx = JSON.parse(d); pkg = JSON.parse(d) }
  10. catch (e) { ctx = {} }
  11. ctx.dirname = path.dirname(package)
  12. ctx.basename = path.basename(ctx.dirname)
  13. if (!ctx.version) ctx.version = undefined
  14. // this should be replaced with the npm conf object
  15. ctx.config = {}
  16. console.error('ctx=', ctx)
  17. var pz = new PZ(input, ctx)
  18. pz.on('data', function (data) {
  19. console.error('pz data', data)
  20. if (!pkg) pkg = {}
  21. Object.keys(data).forEach(function (k) {
  22. if (data[k] !== undefined && data[k] !== null) pkg[k] = data[k]
  23. })
  24. console.error('package data %s', JSON.stringify(data, null, 2))
  25. fs.writeFile(package, JSON.stringify(pkg, null, 2), function (er) {
  26. if (er) throw er
  27. console.log('ok')
  28. })
  29. })
  30. })