JSPM

  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 2
  • Score
    100M100P100Q28390F
  • License MIT

Reliably write to an unused path.

Package Exports

  • write-unused-path

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (write-unused-path) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

Write Unused Path

Reliably write to an unused path.

It is basically a wrapper around get-unused-path which doesn't just return an unused path, but also writes to it.

Features

  • It reliably retrieves an unused path via get-unused-path.
  • It attempts to write to it, re-trying in case of failure.
  • It writes files atomically.

Install

npm install --save write-unused-path

Usage

It accepts the same options object, and returns the same return value, as get-unused-path.

import * as fs from 'fs';
import writeUnusedPath from 'write-unused-path';

async function example () {

  const content = 'some content';

  const {folderPath, filePath, fileName} = await writeUnusedPath ( content, {
    folderPath: '/x/y/z',
    fileName: 'foo.txt',
    // maxTries: 1000,
    // incrementer: ( name, ext, attempt ) => attempt > 1 ? `${name}-${attempt}${ext}` : `${name}${ext}`
  });

  console.log ( folderPath ); // => '/x/y/z'
  console.log ( filePath ); // => '/x/y/z/foo (3).txt'
  console.log ( fileName ); // => 'foo (3).txt'

  console.log ( fs.readFileSync ( filePath, { encoding: 'utf8' } ) ); // => 'some content'

}

example ();

License

MIT © Fabio Spampinato