@socketsecurity/cli 0.14.94 → 0.14.96

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (82) hide show
  1. package/dist/constants.js +3 -3
  2. package/dist/constants.js.map +1 -1
  3. package/dist/module-sync/cli.js +178 -159
  4. package/dist/module-sync/cli.js.map +1 -1
  5. package/dist/module-sync/shadow-bin.js +3 -14
  6. package/dist/module-sync/shadow-bin.js.map +1 -1
  7. package/dist/module-sync/shadow-npm-inject.js +68 -59
  8. package/dist/module-sync/shadow-npm-inject.js.map +1 -1
  9. package/dist/module-sync/shadow-npm-paths.js +16 -29
  10. package/dist/module-sync/shadow-npm-paths.js.map +1 -1
  11. package/dist/module-sync/vendor.d.ts +0 -0
  12. package/dist/module-sync/vendor.js +85829 -12598
  13. package/dist/module-sync/vendor.js.map +1 -1
  14. package/dist/require/cli.js +160 -140
  15. package/dist/require/cli.js.map +1 -1
  16. package/dist/require/shadow-bin.d.ts +5 -0
  17. package/dist/require/shadow-bin.js +104 -1
  18. package/dist/require/shadow-bin.js.map +1 -0
  19. package/dist/require/shadow-npm-inject.d.ts +1 -0
  20. package/dist/require/shadow-npm-inject.js +2335 -1
  21. package/dist/require/shadow-npm-inject.js.map +1 -0
  22. package/dist/require/shadow-npm-paths.d.ts +29 -0
  23. package/dist/require/shadow-npm-paths.js +454 -1
  24. package/dist/require/shadow-npm-paths.js.map +1 -0
  25. package/package.json +29 -29
  26. package/dist/blessed/lib/alias.js +0 -521
  27. package/dist/blessed/lib/blessed.js +0 -34
  28. package/dist/blessed/lib/colors.js +0 -492
  29. package/dist/blessed/lib/events.js +0 -197
  30. package/dist/blessed/lib/gpmclient.js +0 -247
  31. package/dist/blessed/lib/helpers.js +0 -172
  32. package/dist/blessed/lib/keys.js +0 -514
  33. package/dist/blessed/lib/program.js +0 -4532
  34. package/dist/blessed/lib/tput.js +0 -3113
  35. package/dist/blessed/lib/unicode.js +0 -914
  36. package/dist/blessed/lib/widget.js +0 -62
  37. package/dist/blessed/lib/widgets/ansiimage.js +0 -175
  38. package/dist/blessed/lib/widgets/bigtext.js +0 -172
  39. package/dist/blessed/lib/widgets/box.js +0 -36
  40. package/dist/blessed/lib/widgets/button.js +0 -64
  41. package/dist/blessed/lib/widgets/checkbox.js +0 -97
  42. package/dist/blessed/lib/widgets/element.js +0 -2873
  43. package/dist/blessed/lib/widgets/filemanager.js +0 -225
  44. package/dist/blessed/lib/widgets/form.js +0 -303
  45. package/dist/blessed/lib/widgets/image.js +0 -73
  46. package/dist/blessed/lib/widgets/input.js +0 -36
  47. package/dist/blessed/lib/widgets/layout.js +0 -251
  48. package/dist/blessed/lib/widgets/line.js +0 -61
  49. package/dist/blessed/lib/widgets/list.js +0 -654
  50. package/dist/blessed/lib/widgets/listbar.js +0 -454
  51. package/dist/blessed/lib/widgets/listtable.js +0 -267
  52. package/dist/blessed/lib/widgets/loading.js +0 -90
  53. package/dist/blessed/lib/widgets/log.js +0 -84
  54. package/dist/blessed/lib/widgets/message.js +0 -147
  55. package/dist/blessed/lib/widgets/node.js +0 -315
  56. package/dist/blessed/lib/widgets/overlayimage.js +0 -796
  57. package/dist/blessed/lib/widgets/progressbar.js +0 -168
  58. package/dist/blessed/lib/widgets/prompt.js +0 -129
  59. package/dist/blessed/lib/widgets/question.js +0 -131
  60. package/dist/blessed/lib/widgets/radiobutton.js +0 -64
  61. package/dist/blessed/lib/widgets/radioset.js +0 -38
  62. package/dist/blessed/lib/widgets/screen.js +0 -2487
  63. package/dist/blessed/lib/widgets/scrollablebox.js +0 -417
  64. package/dist/blessed/lib/widgets/scrollabletext.js +0 -37
  65. package/dist/blessed/lib/widgets/table.js +0 -385
  66. package/dist/blessed/lib/widgets/terminal.js +0 -454
  67. package/dist/blessed/lib/widgets/text.js +0 -37
  68. package/dist/blessed/lib/widgets/textarea.js +0 -378
  69. package/dist/blessed/lib/widgets/textbox.js +0 -81
  70. package/dist/blessed/lib/widgets/video.js +0 -132
  71. package/dist/blessed/usr/fonts/AUTHORS +0 -1
  72. package/dist/blessed/usr/fonts/LICENSE +0 -94
  73. package/dist/blessed/usr/fonts/README +0 -340
  74. package/dist/blessed/usr/fonts/ter-u14b.json +0 -17826
  75. package/dist/blessed/usr/fonts/ter-u14n.json +0 -17826
  76. package/dist/blessed/usr/linux +0 -0
  77. package/dist/blessed/usr/windows-ansi +0 -0
  78. package/dist/blessed/usr/xterm +0 -0
  79. package/dist/blessed/usr/xterm-256color +0 -0
  80. package/dist/blessed/usr/xterm.termcap +0 -243
  81. package/dist/blessed/usr/xterm.terminfo +0 -1977
  82. package/dist/blessed/vendor/tng.js +0 -1878
@@ -0,0 +1,5 @@
1
+ declare function shadowBin(
2
+ binName: 'npm' | 'npx',
3
+ args?: string[]
4
+ ): Promise<void>
5
+ export { shadowBin as default }
@@ -1,3 +1,106 @@
1
1
  'use strict'
2
2
 
3
- module.exports = require('../module-sync/shadow-bin.js')
3
+ const process = require('node:process')
4
+ const debug = require('@socketsecurity/registry/lib/debug')
5
+ const npm = require('@socketsecurity/registry/lib/npm')
6
+ const spawn = require('@socketsecurity/registry/lib/spawn')
7
+ const path = require('node:path')
8
+ const vendor = require('./vendor.js')
9
+ const shadowNpmPaths = require('./shadow-npm-paths.js')
10
+ const constants = require('./constants.js')
11
+
12
+ const { CLI, NPX } = constants
13
+ async function installLinks(realBinPath, binName) {
14
+ const isNpx = binName === NPX
15
+ // Find package manager being shadowed by this process.
16
+ const binPath = isNpx
17
+ ? shadowNpmPaths.getNpxBinPath()
18
+ : shadowNpmPaths.getNpmBinPath()
19
+ // Lazily access constants.WIN32.
20
+ const { WIN32 } = constants
21
+ // TODO: Is this early exit needed?
22
+ if (WIN32 && binPath) {
23
+ return binPath
24
+ }
25
+ const shadowed = isNpx
26
+ ? shadowNpmPaths.isNpxBinPathShadowed()
27
+ : shadowNpmPaths.isNpmBinPathShadowed()
28
+ // Move our bin directory to front of PATH so its found first.
29
+ if (!shadowed) {
30
+ if (WIN32) {
31
+ await vendor.libExports(
32
+ // Lazily access constants.rootDistPath.
33
+ path.join(constants.rootDistPath, `${binName}-${CLI}.js`),
34
+ path.join(realBinPath, binName)
35
+ )
36
+ }
37
+ const { env } = process
38
+ env['PATH'] = `${realBinPath}${path.delimiter}${env['PATH']}`
39
+ }
40
+ return binPath
41
+ }
42
+
43
+ const { SOCKET_CLI_SAFE_BIN, SOCKET_CLI_SAFE_PROGRESS, SOCKET_IPC_HANDSHAKE } =
44
+ constants
45
+ async function shadowBin(binName, args = process.argv.slice(2)) {
46
+ process.exitCode = 1
47
+ const useDebug = debug.isDebug()
48
+ const terminatorPos = args.indexOf('--')
49
+ const rawBinArgs = terminatorPos === -1 ? args : args.slice(0, terminatorPos)
50
+ const progressArg =
51
+ rawBinArgs.findLast(npm.isProgressFlag) !== '--no-progress'
52
+ const binArgs = rawBinArgs.filter(a => !npm.isProgressFlag(a))
53
+ const otherArgs = terminatorPos === -1 ? [] : args.slice(terminatorPos)
54
+ const isSilent = !useDebug && !binArgs.some(npm.isLoglevelFlag)
55
+ // The default value of loglevel is "notice". We default to "error" which is
56
+ // two levels quieter.
57
+ const logLevelArgs = isSilent ? ['--loglevel', 'error'] : []
58
+ const spawnPromise = spawn.spawn(
59
+ // Lazily access constants.execPath.
60
+ constants.execPath,
61
+ [
62
+ // Lazily access constants.nodeHardenFlags.
63
+ ...constants.nodeHardenFlags,
64
+ // Lazily access constants.nodeNoWarningsFlags.
65
+ ...constants.nodeNoWarningsFlags,
66
+ // Lazily access false.
67
+ ...[],
68
+ '--require',
69
+ // Lazily access constants.distShadowNpmInjectPath.
70
+ constants.distShadowNpmInjectPath,
71
+ // Lazily access constants.shadowBinPath.
72
+ await installLinks(constants.shadowBinPath, binName),
73
+ // Add '--no-progress' to fix input being swallowed by the npm spinner.
74
+ '--no-progress',
75
+ // Add '--loglevel=error' if a loglevel flag is not provided and the
76
+ // SOCKET_CLI_DEBUG environment variable is not truthy.
77
+ ...logLevelArgs,
78
+ ...binArgs,
79
+ ...otherArgs
80
+ ],
81
+ {
82
+ // 'inherit' + 'ipc'
83
+ stdio: [0, 1, 2, 'ipc']
84
+ }
85
+ )
86
+ // See https://nodejs.org/api/all.html#all_child_process_event-exit.
87
+ spawnPromise.process.on('exit', (code, signalName) => {
88
+ if (signalName) {
89
+ process.kill(process.pid, signalName)
90
+ } else if (code !== null) {
91
+ // eslint-disable-next-line n/no-process-exit
92
+ process.exit(code)
93
+ }
94
+ })
95
+ spawnPromise.process.send({
96
+ [SOCKET_IPC_HANDSHAKE]: {
97
+ [SOCKET_CLI_SAFE_BIN]: binName,
98
+ [SOCKET_CLI_SAFE_PROGRESS]: progressArg
99
+ }
100
+ })
101
+ await spawnPromise
102
+ }
103
+
104
+ module.exports = shadowBin
105
+ //# debugId=c07c77d4-8583-4c6b-9a6a-0361d5c81ac7
106
+ //# sourceMappingURL=shadow-bin.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shadow-bin.js","sources":["../../src/shadow/npm/link.ts","../../src/shadow/npm/bin.ts"],"sourcesContent":["import path from 'node:path'\nimport process from 'node:process'\n\nimport cmdShim from 'cmd-shim'\n\nimport {\n getNpmBinPath,\n getNpxBinPath,\n isNpmBinPathShadowed,\n isNpxBinPathShadowed\n} from './paths'\nimport constants from '../../constants'\n\nconst { CLI, NPX } = constants\n\nexport async function installLinks(\n realBinPath: string,\n binName: 'npm' | 'npx'\n): Promise<string> {\n const isNpx = binName === NPX\n // Find package manager being shadowed by this process.\n const binPath = isNpx ? getNpxBinPath() : getNpmBinPath()\n // Lazily access constants.WIN32.\n const { WIN32 } = constants\n // TODO: Is this early exit needed?\n if (WIN32 && binPath) {\n return binPath\n }\n const shadowed = isNpx ? isNpxBinPathShadowed() : isNpmBinPathShadowed()\n // Move our bin directory to front of PATH so its found first.\n if (!shadowed) {\n if (WIN32) {\n await cmdShim(\n // Lazily access constants.rootDistPath.\n path.join(constants.rootDistPath, `${binName}-${CLI}.js`),\n path.join(realBinPath, binName)\n )\n }\n const { env } = process\n env['PATH'] = `${realBinPath}${path.delimiter}${env['PATH']}`\n }\n return binPath\n}\n","import process from 'node:process'\n\nimport { isDebug } from '@socketsecurity/registry/lib/debug'\nimport {\n isLoglevelFlag,\n isProgressFlag\n} from '@socketsecurity/registry/lib/npm'\nimport { spawn } from '@socketsecurity/registry/lib/spawn'\n\nimport { installLinks } from './link'\nimport constants from '../../constants'\n\nconst { SOCKET_CLI_SAFE_BIN, SOCKET_CLI_SAFE_PROGRESS, SOCKET_IPC_HANDSHAKE } =\n constants\n\nexport default async function shadowBin(\n binName: 'npm' | 'npx',\n args = process.argv.slice(2)\n) {\n process.exitCode = 1\n const useDebug = isDebug()\n const terminatorPos = args.indexOf('--')\n const rawBinArgs = terminatorPos === -1 ? args : args.slice(0, terminatorPos)\n const progressArg = rawBinArgs.findLast(isProgressFlag) !== '--no-progress'\n const binArgs = rawBinArgs.filter(a => !isProgressFlag(a))\n const otherArgs = terminatorPos === -1 ? [] : args.slice(terminatorPos)\n const isSilent = !useDebug && !binArgs.some(isLoglevelFlag)\n // The default value of loglevel is \"notice\". We default to \"error\" which is\n // two levels quieter.\n const logLevelArgs = isSilent ? ['--loglevel', 'error'] : []\n const spawnPromise = spawn(\n // Lazily access constants.execPath.\n constants.execPath,\n [\n // Lazily access constants.nodeHardenFlags.\n ...constants.nodeHardenFlags,\n // Lazily access constants.nodeNoWarningsFlags.\n ...constants.nodeNoWarningsFlags,\n // Lazily access process.env['INLINED_SOCKET_CLI_SENTRY_BUILD'].\n ...(process.env['INLINED_SOCKET_CLI_SENTRY_BUILD']\n ? [\n '--require',\n // Lazily access constants.distInstrumentWithSentryPath.\n constants.distInstrumentWithSentryPath\n ]\n : []),\n '--require',\n // Lazily access constants.distShadowNpmInjectPath.\n constants.distShadowNpmInjectPath,\n // Lazily access constants.shadowBinPath.\n await installLinks(constants.shadowBinPath, binName),\n // Add '--no-progress' to fix input being swallowed by the npm spinner.\n '--no-progress',\n // Add '--loglevel=error' if a loglevel flag is not provided and the\n // SOCKET_CLI_DEBUG environment variable is not truthy.\n ...logLevelArgs,\n ...binArgs,\n ...otherArgs\n ],\n {\n // 'inherit' + 'ipc'\n stdio: [0, 1, 2, 'ipc']\n }\n )\n // See https://nodejs.org/api/all.html#all_child_process_event-exit.\n spawnPromise.process.on('exit', (code, signalName) => {\n if (signalName) {\n process.kill(process.pid, signalName)\n } else if (code !== null) {\n // eslint-disable-next-line n/no-process-exit\n process.exit(code)\n }\n })\n spawnPromise.process.send({\n [SOCKET_IPC_HANDSHAKE]: {\n [SOCKET_CLI_SAFE_BIN]: binName,\n [SOCKET_CLI_SAFE_PROGRESS]: progressArg\n }\n })\n await spawnPromise\n}\n"],"names":["NPX","WIN32","env","SOCKET_IPC_HANDSHAKE","constants","process","spawnPromise"],"mappings":";;;;;;;;;;;AAaA;;AAAaA;AAAI;AAEV;AAIL;AACA;;AAEA;;AACQC;AAAM;AACd;;AAEE;AACF;;AAEA;;AAEE;AACE;AACE;;AAIJ;;AACQC;AAAI;AACZA;AACF;AACA;AACF;;AC9BA;;;AAAuDC;AAAqB;AAG7D;;AAKb;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;;AAGE;;AAGE;;AAEA;;AAEA;;AASA;AACAC;AACA;AACA;AACA;;AAEA;AACA;;AAMA;;AAEF;AAEF;;AAEE;;AAEA;AACE;AACAC;AACF;AACF;AACAC;AACE;;AAEE;AACF;AACF;AACA;AACF;;","debugId":"c07c77d4-8583-4c6b-9a6a-0361d5c81ac7"}
@@ -0,0 +1 @@
1
+ export {}