summaryrefslogtreecommitdiffstats
path: root/node_modules/in-publish/index.js
diff options
context:
space:
mode:
Diffstat (limited to 'node_modules/in-publish/index.js')
-rw-r--r--node_modules/in-publish/index.js32
1 files changed, 32 insertions, 0 deletions
diff --git a/node_modules/in-publish/index.js b/node_modules/in-publish/index.js
new file mode 100644
index 0000000..8cfc92f
--- /dev/null
+++ b/node_modules/in-publish/index.js
@@ -0,0 +1,32 @@
+'use strict'
+function inCommand (cmd, cmdStr) {
+ if (process.env.npm_command) {
+ return process.env.npm_command === cmdStr
+ }
+
+ try {
+ var npm_config_argv = JSON.parse(process.env['npm_config_argv'])
+ } catch (e) {
+ return false
+ }
+
+ if (typeof npm_config_argv !== 'object') process.exit(1)
+ if (!npm_config_argv.cooked) process.exit(1)
+ if (!npm_config_argv.cooked instanceof Array) process.exit(1)
+
+ var V
+ while ((V = npm_config_argv.cooked.shift()) !== undefined) {
+ if (/^-/.test(V)) continue
+ if (cmd.test(V)) return true
+ return false
+ }
+ return false
+}
+
+exports.inPublish = function () {
+ return inCommand(/^pu(b(l(i(sh?)?)?)?)?$/, 'publish')
+}
+
+exports.inInstall = function () {
+ return inCommand(/^i(n(s(t(a(ll?)?)?)?)?)?$/, 'install')
+}