diff options
| author | Adam Mathes <adam@adammathes.com> | 2026-02-14 14:46:37 -0800 |
|---|---|---|
| committer | Adam Mathes <adam@adammathes.com> | 2026-02-14 14:46:37 -0800 |
| commit | afa87af01c79a9baa539f2992d32154d2a4739bd (patch) | |
| tree | 92c7416db734270a2fee1d72ee9cc119379ff8e1 /vanilla/node_modules/make-dir/index.js | |
| parent | 3b927e84d200402281f68181cd4253bc77e5528d (diff) | |
| download | neko-afa87af01c79a9baa539f2992d32154d2a4739bd.tar.gz neko-afa87af01c79a9baa539f2992d32154d2a4739bd.tar.bz2 neko-afa87af01c79a9baa539f2992d32154d2a4739bd.zip | |
task: delete vanilla js prototype\n\n- Removed vanilla/ directory and web/dist/vanilla directory\n- Updated Makefile, Dockerfile, and CI workflow to remove vanilla references\n- Cleaned up web/web.go to remove vanilla embed and routes\n- Verified build and tests pass\n\nCloses NK-2tcnmq
Diffstat (limited to 'vanilla/node_modules/make-dir/index.js')
| -rw-r--r-- | vanilla/node_modules/make-dir/index.js | 155 |
1 files changed, 0 insertions, 155 deletions
diff --git a/vanilla/node_modules/make-dir/index.js b/vanilla/node_modules/make-dir/index.js deleted file mode 100644 index 2c0814e..0000000 --- a/vanilla/node_modules/make-dir/index.js +++ /dev/null @@ -1,155 +0,0 @@ -'use strict'; -const fs = require('fs'); -const path = require('path'); -const {promisify} = require('util'); -const semverGte = require('semver/functions/gte'); - -const useNativeRecursiveOption = semverGte(process.version, '10.12.0'); - -// https://github.com/nodejs/node/issues/8987 -// https://github.com/libuv/libuv/pull/1088 -const checkPath = pth => { - if (process.platform === 'win32') { - const pathHasInvalidWinCharacters = /[<>:"|?*]/.test(pth.replace(path.parse(pth).root, '')); - - if (pathHasInvalidWinCharacters) { - const error = new Error(`Path contains invalid characters: ${pth}`); - error.code = 'EINVAL'; - throw error; - } - } -}; - -const processOptions = options => { - const defaults = { - mode: 0o777, - fs - }; - - return { - ...defaults, - ...options - }; -}; - -const permissionError = pth => { - // This replicates the exception of `fs.mkdir` with native the - // `recusive` option when run on an invalid drive under Windows. - const error = new Error(`operation not permitted, mkdir '${pth}'`); - error.code = 'EPERM'; - error.errno = -4048; - error.path = pth; - error.syscall = 'mkdir'; - return error; -}; - -const makeDir = async (input, options) => { - checkPath(input); - options = processOptions(options); - - const mkdir = promisify(options.fs.mkdir); - const stat = promisify(options.fs.stat); - - if (useNativeRecursiveOption && options.fs.mkdir === fs.mkdir) { - const pth = path.resolve(input); - - await mkdir(pth, { - mode: options.mode, - recursive: true - }); - - return pth; - } - - const make = async pth => { - try { - await mkdir(pth, options.mode); - - return pth; - } catch (error) { - if (error.code === 'EPERM') { - throw error; - } - - if (error.code === 'ENOENT') { - if (path.dirname(pth) === pth) { - throw permissionError(pth); - } - - if (error.message.includes('null bytes')) { - throw error; - } - - await make(path.dirname(pth)); - - return make(pth); - } - - try { - const stats = await stat(pth); - if (!stats.isDirectory()) { - throw new Error('The path is not a directory'); - } - } catch { - throw error; - } - - return pth; - } - }; - - return make(path.resolve(input)); -}; - -module.exports = makeDir; - -module.exports.sync = (input, options) => { - checkPath(input); - options = processOptions(options); - - if (useNativeRecursiveOption && options.fs.mkdirSync === fs.mkdirSync) { - const pth = path.resolve(input); - - fs.mkdirSync(pth, { - mode: options.mode, - recursive: true - }); - - return pth; - } - - const make = pth => { - try { - options.fs.mkdirSync(pth, options.mode); - } catch (error) { - if (error.code === 'EPERM') { - throw error; - } - - if (error.code === 'ENOENT') { - if (path.dirname(pth) === pth) { - throw permissionError(pth); - } - - if (error.message.includes('null bytes')) { - throw error; - } - - make(path.dirname(pth)); - return make(pth); - } - - try { - if (!options.fs.statSync(pth).isDirectory()) { - throw new Error('The path is not a directory'); - } - } catch { - throw error; - } - } - - return pth; - }; - - return make(path.resolve(input)); -}; |
