National Poetry Month

    to-vfile
    TypeScript icon, indicating that this package has built-in type declarations

    7.2.3 • Public • Published

    to-vfile

    Build Coverage Downloads Sponsors Backers Chat

    Create a vfile from a filepath. Optionally populates them from the file system as well. Can write virtual files to file system too.

    Install

    This package is ESM only: Node 12+ is needed to use it and it must be imported instead of required.

    npm:

    npm install to-vfile

    Use

    import {toVFile, readSync} from 'to-vfile'
    
    console.log(toVFile('readme.md'))
    console.log(toVFile(new URL('./readme.md', import.meta.url)))
    console.log(readSync('.git/HEAD'))
    console.log(readSync('.git/HEAD', 'utf8'))

    Yields:

    VFile {
      data: {},
      messages: [],
      history: ['readme.md'],
      cwd: '/Users/tilde/projects/oss/to-vfile'
    }
    VFile {
      data: {},
      messages: [],
      history: ['readme.md'],
      cwd: '/Users/tilde/projects/oss/to-vfile'
    }
    VFile {
      data: {},
      messages: [],
      history: ['.git/HEAD'],
      cwd: '/Users/tilde/projects/oss/to-vfile',
      value: <Buffer 72 65 66 3a 20 72 65 66 73 2f 68 65 61 64 73 2f 6d 61 73 74 65 72 0a>
    }
    VFile {
      data: {},
      messages: [],
      history: ['.git/HEAD'],
      cwd: '/Users/tilde/projects/oss/to-vfile',
      value: 'ref: refs/heads/main\n'
    }

    API

    This package exports the following identifiers: toVFile, read, readSync, write, and writeSync. There is no default export.

    toVFile(options)

    Create a virtual file. Works like the vfile constructor, except when options is string or Buffer, in which case it’s treated as {path: options} instead of {value: options}, or when options is a WHATWG URL object, in which case it’s treated as {path: fileURLToPath(options)}.

    read(options[, encoding][, callback])

    Creates a virtual file from options (toVFile(options)), reads the file from the file system and populates file.value with the result. If encoding is specified, it’s passed to fs.readFile. If callback is given, invokes it with either an error or the populated virtual file. If callback is not given, returns a Promise that is rejected with an error or resolved with the populated virtual file.

    readSync(options[, encoding])

    Like read but synchronous. Either throws an error or returns a populated virtual file.

    write(options[, fsOptions][, callback])

    Creates a virtual file from options (toVFile(options)), writes the file to the file system. fsOptions are passed to fs.writeFile. If callback is given, invokes it with an error, if any. If callback is not given, returns a Promise that is rejected with an error or resolved with the written virtual file.

    writeSync(options[, fsOptions])

    Like write but synchronous. Either throws an error or returns a populated virtual file.

    Contribute

    See contributing.md in vfile/.github for ways to get started. See support.md for ways to get help.

    This project has a code of conduct. By interacting with this repository, organization, or community you agree to abide by its terms.

    License

    MIT © Titus Wormer

    Install

    npm i to-vfile

    DownloadsWeekly Downloads

    134,053

    Version

    7.2.3

    License

    MIT

    Unpacked Size

    16.5 kB

    Total Files

    7

    Last publish

    Collaborators

    • wooorm