UNPKG

@stryke/fs

Version:

A package containing various file system utilities that expand the functionality of NodeJs's built-in `fs` module.

2 lines (1 loc) 780 B
import{accessSync as c,chmodSync as a,constants as e,statSync as s}from"node:fs";import{access as i,chmod as u}from"node:fs/promises";export function chmodXSync(t){if(process.platform==="win32")return;const r=s(t),n=r.mode|64|8|1;if(r.mode===n)return;const o=n.toString(8).slice(-3);a(t,o)}export async function chmodX(t){if(process.platform==="win32")return;const r=s(t),n=r.mode|64|8|1;if(r.mode===n)return;const o=n.toString(8).slice(-3);return u(t,o)}export async function isWritable(t){try{return await i(t,e.W_OK),!0}catch{return!1}}export function isWritableSync(t){try{return c(t,e.W_OK),!0}catch{return!1}}export async function isExecutable(t){try{return await i(t,e.X_OK),!0}catch{return!1}}export function isExecutableSync(t){try{return c(t,e.X_OK),!0}catch{return!1}}