@kikiutils/fs-extra v4.0.2
@kikiutils/fs-extra
Wraps node:fs, node:fs/promises, and fs-extra functions with try-catch, returning success/failure indicators. Includes additional file and path utilities.
Features
- 🛡️ Wraps
node:fs,node:fs/promises, andfs-extrafunctions with try-catch for error prevention - ✔️ Returns
trueon success andfalseon failure for functions that originally return void - 📊 Returns data on success and
undefinedon failure for functions that originally return data - 🌐 Provides support for most
node:fs,node:fs/promises, andfs-extrafunctions - 🔧 Additional utility functions for file and path operations
Environmental Requirements
- Node.js version 18 or higher
Installation
Add dependency (example using pnpm).
pnpm add @kikiutils/fs-extraYou can also use yarn, npm, or bun to add the dependency.
That's it! You're ready to use this package in your project. Check out the usage instructions below ✨.
Usage
When using node:fs, node:fs/promises, or fs-extra functions, you may only care about whether the operation succeeds, not the reason for any errors.
This package wraps these functions with try-catch to prevent errors from stopping the entire program.
Functions that originally return void now return true on success and false on failure.
Functions that originally return data now return the data on success and undefined on failure.
!IMPORTANT If the function you are executing does not have a corresponding feature in the runtime, it will throw a
ToWrapFunctionIsUndefinedErrorerror.
import {
readJson,
rename
} from '@kikiutils/fs-extra';
const data = await readJson(path);
// Any json data - successfully read
// undefined - an error occurred
const result = await rename(oldPath, newPath);
// true - successfully renamed
// false - an error occurredSee the description below to find out which functions are available.
Available Functions
You can use most of the functions provided by node:fs, node:fs/promises, and fs-extra, but all functions that do not end with "Sync" will return a Promise.
All functions do not have a callback parameter because errors are passed to the callback if used.
If you need to use the callback functionality, please import and use the functions directly from the original package.
Additional Functions
The following functions have corresponding sync versions.
- getFileSize - Uses
statto get the file size. - pathIsBlockDevice - Uses
statto check if a path is a block device. - pathIsCharacterDevice - Uses
statto check if a path is a character device. - pathIsDirectory, pathIsDir - Uses
statto check if a path is a directory. - pathIsFifo - Uses
statto check if a path is a FIFO (named pipe). - pathIsFile - Uses
statto check if a path is a file. - pathIsSocket - Uses
statto check if a path is a socket. - pathIsSymbolicLink - Uses
statto check if a path is a symbolic link. - readFileToBlob - Reads a file and returns its contents as a Blob.
Unexported Functions
Deprecated functions are not exported.
The following functions do not need to be wrapped with try-catch. If you need to use them, please import them directly from node:fs or node:fs/promises:
- fs.watch
- fs.watchFile
- fs.promise.watch
License
9 months ago
9 months ago
1 year ago
1 year ago
1 year ago
9 months ago
8 months ago
8 months ago
8 months ago
12 months ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago