UNPKG

is-fs-case-sensitive

Version:
2 lines (1 loc) 829 B
"use strict";var u=Object.defineProperty;var c=(i,e)=>u(i,"name",{value:e,configurable:!0});var y=require("fs"),h=require("os"),p=require("path");const a=c(i=>{let e="";for(let r=0;r<i.length;r+=1){const t=i[r],s=t.toUpperCase();e+=t===s?t.toLowerCase():s}return e},"invertCase"),o=new Map,l=c((i,e)=>{const r=p.join(i,`.is-fs-case-sensitive-test-${process.pid}`);try{return e.writeFileSync(r,""),!e.existsSync(a(r))}finally{try{e.unlinkSync(r)}catch{}}},"checkDirectoryCaseWithWrite"),v=c((i,e,r)=>{try{return l(i,r)}catch(t){if(e===void 0)return l(h.tmpdir(),r);throw t}},"checkDirectoryCaseWithFallback"),S=c((i,e=y,r=!0)=>{const t=i??process.cwd();if(r&&o.has(t))return o.get(t);let s;const n=a(t);return n!==t&&e.existsSync(t)?s=!e.existsSync(n):s=v(t,i,e),r&&o.set(t,s),s},"isFsCaseSensitive");exports.isFsCaseSensitive=S;