@freik/node-utils
Version:
My personal set of utilities for NodeJS
6 lines (5 loc) • 1.85 kB
JavaScript
var u=Object.create;var c=Object.defineProperty;var F=Object.getOwnPropertyDescriptor;var A=Object.getOwnPropertyNames;var w=Object.getPrototypeOf,x=Object.prototype.hasOwnProperty;var d=(t,r)=>{for(var s in r)c(t,s,{get:r[s],enumerable:!0})},y=(t,r,s,n)=>{if(r&&typeof r=="object"||typeof r=="function")for(let a of A(r))!x.call(t,a)&&a!==s&&c(t,a,{get:()=>r[a],enumerable:!(n=F(r,a))||n.enumerable});return t};var p=(t,r,s)=>(s=t!=null?u(w(t)):{},y(r||!t||!t.__esModule?c(s,"default",{value:t,enumerable:!0}):s,t)),S=t=>y(c({},"__esModule",{value:!0}),t);var j={};d(j,{arrayToTextFile:()=>m,arrayToTextFileAsync:()=>g,hideFile:()=>z,size:()=>T,sizeAsync:()=>b,textFileToArray:()=>h,textFileToArrayAsync:()=>P,toTextFile:()=>m});module.exports=S(j);var e=p(require("fs")),f=require("fs"),i=p(require("path")),l=require("./ProcUtil.js");const o={readFileAsync:e.promises.readFile,readFileSync:e.readFileSync,writeFileAsync:e.promises.writeFile,writeFileSync:e.writeFileSync,statAsync:e.promises.stat,statSync:e.statSync};function T(t){try{return o.statSync(t).size}catch{return-1}}async function b(t){try{return(await o.statAsync(t)).size}catch{return-1}}function m(t,r){const s=i.sep==="/"?`
`:`\r
`,n=t.join(s);o.writeFileSync(r,n)}const g=async(t,r)=>{const s=i.sep==="/"?`
`:`\r
`,n=t.join(s);await o.writeFileAsync(r,n)};function h(t){return o.readFileSync(t,"utf8").split(/\n|\r/).filter(n=>n.trim().length>0)}async function P(t){return(await o.readFileAsync(t,"utf8")).split(/\n|\r/).filter(n=>n.trim().length>0)}async function z(t){let r=t;return i.basename(t).startsWith(".")||(r=i.join(i.dirname(t),"."+i.basename(t)),await f.promises.rename(t,r)),process.platform==="darwin"?await(0,l.spawnResAsync)("chflags",["hidden",r]):process.platform==="win32"?await(0,l.spawnResAsync)("attrib",["+H",r.replaceAll("/","\\")]):process.platform,r}