Nie możesz wybrać więcej, niż 25 tematów Tematy muszą się zaczynać od litery lub cyfry, mogą zawierać myślniki ('-') i mogą mieć do 35 znaków.

16 wiersze
476 B

  1. import * as fs from 'fs/promises';
  2. import * as p from 'path';
  3. export const mkdirp = (path: string) => {
  4. const pathFragments = path.replaceAll('\\', '/').split('/');
  5. const directoriesToCheck = pathFragments.reduce(
  6. (theDirectories, fragment, i) => [
  7. ...theDirectories,
  8. theDirectories.length > 0 ? p.join(theDirectories[i - 1], fragment) : fragment,
  9. ],
  10. [] as string[],
  11. )
  12. return Promise.allSettled(directoriesToCheck.map((d) => fs.mkdir(d)));
  13. }