HEX
Server: nginx/1.18.0
System: Linux test-ipsremont 5.4.0-214-generic #234-Ubuntu SMP Fri Mar 14 23:50:27 UTC 2025 x86_64
User: ips (1000)
PHP: 8.0.30
Disabled: pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
Upload Files
File: /var/www/quadcode-site/node_modules/npm/node_modules/promzard/example/npm-init/init.js
var PZ = require('../../promzard').PromZard
var path = require('path')
var input = path.resolve(__dirname, 'init-input.js')

var fs = require('fs')
var package = path.resolve(__dirname, 'package.json')
var pkg

fs.readFile(package, 'utf8', function (er, d) {
  if (er) ctx = {}
  try { ctx = JSON.parse(d); pkg = JSON.parse(d) }
  catch (e) { ctx = {} }

  ctx.dirname = path.dirname(package)
  ctx.basename = path.basename(ctx.dirname)
  if (!ctx.version) ctx.version = undefined

  // this should be replaced with the npm conf object
  ctx.config = {}

  console.error('ctx=', ctx)

  var pz = new PZ(input, ctx)

  pz.on('data', function (data) {
    console.error('pz data', data)
    if (!pkg) pkg = {}
    Object.keys(data).forEach(function (k) {
      if (data[k] !== undefined && data[k] !== null) pkg[k] = data[k]
    })
    console.error('package data %s', JSON.stringify(data, null, 2))
    fs.writeFile(package, JSON.stringify(pkg, null, 2), function (er) {
      if (er) throw er
      console.log('ok')
    })
  })
})