1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677 |
- import * as fs from 'fs'
- export function directoryExistsSync(path: string, required?: boolean): boolean {
- if (!path) {
- throw new Error("Arg 'path' must not be empty")
- }
- let stats: fs.Stats
- try {
- stats = fs.statSync(path)
- } catch (error) {
- if (error.code === 'ENOENT') {
- if (!required) {
- return false
- }
- throw new Error(`Directory '${path}' does not exist`)
- }
- throw new Error(
- `Encountered an error when checking whether path '${path}' exists: ${error.message}`
- )
- }
- if (stats.isDirectory()) {
- return true
- } else if (!required) {
- return false
- }
- throw new Error(`Directory '${path}' does not exist`)
- }
- export function existsSync(path: string): boolean {
- if (!path) {
- throw new Error("Arg 'path' must not be empty")
- }
- try {
- fs.statSync(path)
- } catch (error) {
- if (error.code === 'ENOENT') {
- return false
- }
- throw new Error(
- `Encountered an error when checking whether path '${path}' exists: ${error.message}`
- )
- }
- return true
- }
- export function fileExistsSync(path: string): boolean {
- if (!path) {
- throw new Error("Arg 'path' must not be empty")
- }
- let stats: fs.Stats
- try {
- stats = fs.statSync(path)
- } catch (error) {
- if (error.code === 'ENOENT') {
- return false
- }
- throw new Error(
- `Encountered an error when checking whether path '${path}' exists: ${error.message}`
- )
- }
- if (!stats.isDirectory()) {
- return true
- }
- return false
- }
|