]> gerrit.simantics Code Review - simantics/district.git/blobdiff - org.simantics.maps.server/node/node-v4.8.0-win-x64/node_modules/npm/node_modules/init-package-json/node_modules/promzard/example/npm-init/init-input.js
Adding integrated tile server
[simantics/district.git] / org.simantics.maps.server / node / node-v4.8.0-win-x64 / node_modules / npm / node_modules / init-package-json / node_modules / promzard / example / npm-init / init-input.js
diff --git a/org.simantics.maps.server/node/node-v4.8.0-win-x64/node_modules/npm/node_modules/init-package-json/node_modules/promzard/example/npm-init/init-input.js b/org.simantics.maps.server/node/node-v4.8.0-win-x64/node_modules/npm/node_modules/init-package-json/node_modules/promzard/example/npm-init/init-input.js
new file mode 100644 (file)
index 0000000..ba7781b
--- /dev/null
@@ -0,0 +1,191 @@
+var fs = require('fs')
+var path = require('path');
+
+module.exports = {
+  "name" : prompt('name',
+    typeof name === 'undefined'
+    ? basename.replace(/^node-|[.-]js$/g, ''): name),
+  "version" : prompt('version', typeof version !== "undefined"
+                              ? version : '0.0.0'),
+  "description" : (function () {
+      if (typeof description !== 'undefined' && description) {
+        return description
+      }
+      var value;
+      try {
+          var src = fs.readFileSync('README.md', 'utf8');
+          value = src.split('\n').filter(function (line) {
+              return /\s+/.test(line)
+                  && line.trim() !== basename.replace(/^node-/, '')
+                  && !line.trim().match(/^#/)
+              ;
+          })[0]
+              .trim()
+              .replace(/^./, function (c) { return c.toLowerCase() })
+              .replace(/\.$/, '')
+          ;
+      }
+      catch (e) {
+        try {
+          // Wouldn't it be nice if that file mattered?
+          var d = fs.readFileSync('.git/description', 'utf8')
+        } catch (e) {}
+        if (d.trim() && !value) value = d
+      }
+      return prompt('description', value);
+  })(),
+  "main" : (function () {
+    var f
+    try {
+      f = fs.readdirSync(dirname).filter(function (f) {
+        return f.match(/\.js$/)
+      })
+      if (f.indexOf('index.js') !== -1)
+        f = 'index.js'
+      else if (f.indexOf('main.js') !== -1)
+        f = 'main.js'
+      else if (f.indexOf(basename + '.js') !== -1)
+        f = basename + '.js'
+      else
+        f = f[0]
+    } catch (e) {}
+
+    return prompt('entry point', f || 'index.js')
+  })(),
+  "bin" : function (cb) {
+    fs.readdir(dirname + '/bin', function (er, d) {
+      // no bins
+      if (er) return cb()
+      // just take the first js file we find there, or nada
+      return cb(null, d.filter(function (f) {
+        return f.match(/\.js$/)
+      })[0])
+    })
+  },
+  "directories" : function (cb) {
+    fs.readdir('.', function (er, dirs) {
+      if (er) return cb(er)
+      var res = {}
+      dirs.forEach(function (d) {
+        switch (d) {
+          case 'example': case 'examples': return res.example = d
+          case 'test': case 'tests': return res.test = d
+          case 'doc': case 'docs': return res.doc = d
+          case 'man': return res.man = d
+        }
+      })
+      if (Object.keys(res).length === 0) res = undefined
+      return cb(null, res)
+    })
+  },
+  "dependencies" : typeof dependencies !== 'undefined' ? dependencies
+    : function (cb) {
+      fs.readdir('node_modules', function (er, dir) {
+        if (er) return cb()
+        var deps = {}
+        var n = dir.length
+        dir.forEach(function (d) {
+          if (d.match(/^\./)) return next()
+          if (d.match(/^(expresso|mocha|tap|coffee-script|coco|streamline)$/))
+            return next()
+          fs.readFile('node_modules/' + d + '/package.json', function (er, p) {
+            if (er) return next()
+            try { p = JSON.parse(p) } catch (e) { return next() }
+            if (!p.version) return next()
+            deps[d] = '~' + p.version
+            return next()
+          })
+        })
+        function next () {
+          if (--n === 0) return cb(null, deps)
+        }
+      })
+    },
+  "devDependencies" : typeof devDependencies !== 'undefined' ? devDependencies
+    : function (cb) {
+      // same as dependencies but for dev deps
+      fs.readdir('node_modules', function (er, dir) {
+        if (er) return cb()
+        var deps = {}
+        var n = dir.length
+        dir.forEach(function (d) {
+          if (d.match(/^\./)) return next()
+          if (!d.match(/^(expresso|mocha|tap|coffee-script|coco|streamline)$/))
+            return next()
+          fs.readFile('node_modules/' + d + '/package.json', function (er, p) {
+            if (er) return next()
+            try { p = JSON.parse(p) } catch (e) { return next() }
+            if (!p.version) return next()
+            deps[d] = '~' + p.version
+            return next()
+          })
+        })
+        function next () {
+          if (--n === 0) return cb(null, deps)
+        }
+      })
+    },
+  "scripts" : (function () {
+    // check to see what framework is in use, if any
+    try { var d = fs.readdirSync('node_modules') }
+    catch (e) { d = [] }
+    var s = typeof scripts === 'undefined' ? {} : scripts
+
+    if (d.indexOf('coffee-script') !== -1)
+      s.prepublish = prompt('build command',
+                            s.prepublish || 'coffee src/*.coffee -o lib')
+
+    var notest = 'echo "Error: no test specified" && exit 1'
+    function tx (test) {
+      return test || notest
+    }
+
+    if (!s.test || s.test === notest) {
+      if (d.indexOf('tap') !== -1)
+        s.test = prompt('test command', 'tap test/*.js', tx)
+      else if (d.indexOf('expresso') !== -1)
+        s.test = prompt('test command', 'expresso test', tx)
+      else if (d.indexOf('mocha') !== -1)
+        s.test = prompt('test command', 'mocha', tx)
+      else
+        s.test = prompt('test command', tx)
+    }
+
+    return s
+
+  })(),
+
+  "repository" : (function () {
+    try { var gconf = fs.readFileSync('.git/config') }
+    catch (e) { gconf = null }
+    if (gconf) {
+      gconf = gconf.split(/\r?\n/)
+      var i = gconf.indexOf('[remote "origin"]')
+      if (i !== -1) {
+        var u = gconf[i + 1]
+        if (!u.match(/^\s*url =/)) u = gconf[i + 2]
+        if (!u.match(/^\s*url =/)) u = null
+        else u = u.replace(/^\s*url = /, '')
+      }
+      if (u && u.match(/^git@github.com:/))
+        u = u.replace(/^git@github.com:/, 'git://github.com/')
+    }
+
+    return prompt('git repository', u)
+  })(),
+
+  "keywords" : prompt(function (s) {
+    if (!s) return undefined
+    if (Array.isArray(s)) s = s.join(' ')
+    if (typeof s !== 'string') return s
+    return s.split(/[\s,]+/)
+  }),
+  "author" : config['init.author.name']
+    ? {
+        "name" : config['init.author.name'],
+        "email" : config['init.author.email'],
+        "url" : config['init.author.url']
+      }
+    : undefined,
+  "license" : prompt('license', 'BSD')
+}