UNPKG

@dgac/nmb2b-client

Version:

EUROCONTROL Network Manager B2B SOAP client

1 lines 1.59 kB
{"version":3,"file":"fs.mjs","names":[],"sources":["../../src/utils/fs.ts"],"sourcesContent":["import * as fs from 'node:fs/promises';\nimport { createDebugLogger } from './debug.js';\nconst debug = createDebugLogger('dir-exists');\n\nexport async function dirExists(\n path: string,\n { readable, writable }: { readable: boolean; writable?: boolean } = {\n readable: true,\n writable: false,\n },\n): Promise<boolean> {\n debug(\n `Testing if directory ${path} is readable ${writable ? 'and writable ' : ''}...`,\n );\n\n try {\n const stats = await fs.stat(path);\n if (!stats.isDirectory()) {\n // Directory does not exists\n return false;\n }\n\n // Check that the directory is writable and readable\n await fs.access(\n path,\n (writable ? fs.constants.W_OK : 0) | (readable ? fs.constants.R_OK : 0),\n );\n\n debug(`Directory ${path} is accessible`);\n\n return true;\n } catch {\n return false;\n }\n}\n\nexport async function createDir(path: string): Promise<void> {\n debug('Creating directory %s ...', path);\n await fs.mkdir(path, { recursive: true });\n}\n"],"mappings":";;;;AAEA,MAAM,QAAQ,kBAAkB,aAAa;AAE7C,eAAsB,UACpB,MACA,EAAE,UAAU,aAAwD;CAClE,UAAU;CACV,UAAU;CACX,EACiB;AAClB,OACE,wBAAwB,KAAK,eAAe,WAAW,kBAAkB,GAAG,KAC7E;AAED,KAAI;AAEF,MAAI,EADU,MAAM,GAAG,KAAK,KAAK,EACtB,aAAa,CAEtB,QAAO;AAIT,QAAM,GAAG,OACP,OACC,WAAW,GAAG,UAAU,OAAO,MAAM,WAAW,GAAG,UAAU,OAAO,GACtE;AAED,QAAM,aAAa,KAAK,gBAAgB;AAExC,SAAO;SACD;AACN,SAAO;;;AAIX,eAAsB,UAAU,MAA6B;AAC3D,OAAM,6BAA6B,KAAK;AACxC,OAAM,GAAG,MAAM,MAAM,EAAE,WAAW,MAAM,CAAC"}