File Explorer

/proc/thread-self/root/var/lang/lib/node_modules/npm/node_modules/@npmcli/fs/lib/cp

This explorer reads the filesystem of the server it runs on, so /workspace/user isn't present here. Browsing and the terminal still work against this server's own disk from /.

errors.js3.3 KB · 130 lines
'use strict'const { inspect } = require('util') // adapted from node's internal/errors// https://github.com/nodejs/node/blob/c8a04049/lib/internal/errors.js // close copy of node's internal SystemError class.class SystemError {  constructor (code, prefix, context) {    // XXX context.code is undefined in all constructors used in cp/polyfill    // that may be a bug copied from node, maybe the constructor should use    // `code` not `errno`?  nodejs/node#41104    let message = `${prefix}: ${context.syscall} returned ` +                  `${context.code} (${context.message})`     if (context.path !== undefined) {      message += ` ${context.path}`    }    if (context.dest !== undefined) {      message += ` => ${context.dest}`    }     this.code = code    Object.defineProperties(this, {      name: {        value: 'SystemError',        enumerable: false,        writable: true,        configurable: true,      },      message: {        value: message,        enumerable: false,        writable: true,        configurable: true,      },      info: {        value: context,        enumerable: true,        configurable: true,        writable: false,      },      errno: {        get () {          return context.errno        },        set (value) {          context.errno = value        },        enumerable: true,        configurable: true,      },      syscall: {        get () {          return context.syscall        },        set (value) {          context.syscall = value        },        enumerable: true,        configurable: true,      },    })     if (context.path !== undefined) {      Object.defineProperty(this, 'path', {        get () {          return context.path        },        set (value) {          context.path = value        },        enumerable: true,        configurable: true,      })    }     if (context.dest !== undefined) {      Object.defineProperty(this, 'dest', {        get () {          return context.dest        },        set (value) {          context.dest = value        },        enumerable: true,        configurable: true,      })    }  }   toString () {    return `${this.name} [${this.code}]: ${this.message}`  }   [Symbol.for('nodejs.util.inspect.custom')] (_recurseTimes, ctx) {    return inspect(this, {      ...ctx,      getters: true,      customInspect: false,    })  }} function E (code, message) {  module.exports[code] = class NodeError extends SystemError {    constructor (ctx) {      super(code, message, ctx)    }  }} E('ERR_FS_CP_DIR_TO_NON_DIR', 'Cannot overwrite directory with non-directory')E('ERR_FS_CP_EEXIST', 'Target already exists')E('ERR_FS_CP_EINVAL', 'Invalid src or dest')E('ERR_FS_CP_FIFO_PIPE', 'Cannot copy a FIFO pipe')E('ERR_FS_CP_NON_DIR_TO_DIR', 'Cannot overwrite non-directory with directory')E('ERR_FS_CP_SOCKET', 'Cannot copy a socket file')E('ERR_FS_CP_SYMLINK_TO_SUBDIRECTORY', 'Cannot overwrite symlink in subdirectory of self')E('ERR_FS_CP_UNKNOWN', 'Cannot copy an unknown file type')E('ERR_FS_EISDIR', 'Path is a directory') module.exports.ERR_INVALID_ARG_TYPE = class ERR_INVALID_ARG_TYPE extends Error {  constructor (name, expected, actual) {    super()    this.code = 'ERR_INVALID_ARG_TYPE'    this.message = `The ${name} argument must be ${expected}. Received ${typeof actual}`  }}