@alwatr/node-fs 5.5.31 → 5.5.32

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -3,6 +3,16 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ ## [5.5.32](https://github.com/Alwatr/nanolib/compare/@alwatr/node-fs@5.5.31...@alwatr/node-fs@5.5.32) (2026-03-16)
7
+
8
+ ### 🔨 Code Refactoring
9
+
10
+ * migrate build scripts from yarn to bun across multiple packages ([d90e962](https://github.com/Alwatr/nanolib/commit/d90e962f15e5c951e191d5f02341279b6472abc3))
11
+
12
+ ### 🔗 Dependencies update
13
+
14
+ * bump the npm-dependencies group with 10 updates ([c48d9ba](https://github.com/Alwatr/nanolib/commit/c48d9baa1cd7c2dc144b3e01e0fda60bf87c074c))
15
+
6
16
  ## [5.5.31](https://github.com/Alwatr/nanolib/compare/@alwatr/node-fs@5.5.30...@alwatr/node-fs@5.5.31) (2026-02-18)
7
17
 
8
18
  ### 🔗 Dependencies update
package/dist/main.cjs CHANGED
@@ -1,4 +1,3 @@
1
- /** 📦 @alwatr/node-fs v5.5.31 */
2
- __dev_mode__: console.debug("📦 @alwatr/node-fs v5.5.31");
1
+ /** 📦 @alwatr/node-fs v5.5.32 */
3
2
  "use strict";var __defProp=Object.defineProperty;var __getOwnPropDesc=Object.getOwnPropertyDescriptor;var __getOwnPropNames=Object.getOwnPropertyNames;var __hasOwnProp=Object.prototype.hasOwnProperty;var __export=(target,all)=>{for(var name in all)__defProp(target,name,{get:all[name],enumerable:true})};var __copyProps=(to,from,except,desc)=>{if(from&&typeof from==="object"||typeof from==="function"){for(let key of __getOwnPropNames(from))if(!__hasOwnProp.call(to,key)&&key!==except)__defProp(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable})}return to};var __toCommonJS=mod=>__copyProps(__defProp({},"__esModule",{value:true}),mod);var main_exports={};__export(main_exports,{existsSync:()=>import_node_fs4.existsSync,makeEmptyFile:()=>makeEmptyFile,readFile:()=>readFile,readFileSync:()=>readFileSync,readJson:()=>readJson,resolve:()=>import_node_path3.resolve,unlink:()=>import_promises4.unlink,writeFile:()=>writeFile,writeFileSync:()=>writeFileSync,writeJson:()=>writeJson});module.exports=__toCommonJS(main_exports);var import_node_fs=require("node:fs");var import_promises=require("node:fs/promises");var import_flat_string=require("@alwatr/flat-string");var import_async_queue=require("@alwatr/async-queue");var import_logger=require("@alwatr/logger");var logger=(0,import_logger.createLogger)("@alwatr/node-fs");var asyncQueue=new import_async_queue.AsyncQueue;function readFileSync(path){logger.logMethodArgs?.("readFileSync","..."+path.slice(-32));try{return(0,import_flat_string.flatString)((0,import_node_fs.readFileSync)(path,{encoding:"utf-8",flag:"r"}))}catch(err){logger.error("readFileSync","read_file_failed",{path},err);throw new Error("read_file_failed",{cause:err.cause})}}function readFile(path){logger.logMethodArgs?.("readFile","..."+path.slice(-32));return asyncQueue.push(path,async()=>{try{return(0,import_flat_string.flatString)(await(0,import_promises.readFile)(path,{encoding:"utf-8",flag:"r"}))}catch(err){logger.error("readFile","read_file_failed",{path},err);throw new Error("read_file_failed",{cause:err.cause})}})}var import_node_fs2=require("node:fs");var import_promises2=require("node:fs/promises");var import_node_path=require("node:path");function writeFileSync(path,content){logger.logMethodArgs?.("writeFileSync","..."+path.slice(-32));try{const pathExists=(0,import_node_fs2.existsSync)(path);if(!pathExists){const dir=(0,import_node_path.dirname)(path);if(!(0,import_node_fs2.existsSync)(dir)){(0,import_node_fs2.mkdirSync)(dir,{recursive:true})}}(0,import_node_fs2.writeFileSync)(path+".tmp",content,{encoding:"utf-8",flag:"w"});if(pathExists){(0,import_node_fs2.renameSync)(path,path+".bak")}(0,import_node_fs2.renameSync)(path+".tmp",path);logger.logOther?.("writeFileSync success","..."+path.slice(-32))}catch(err){logger.error("writeFileSync","write_file_failed",{path},err);throw new Error("write_file_failed",{cause:err.cause})}}function writeFile(path,content){logger.logMethodArgs?.("writeFile","..."+path.slice(-32));return asyncQueue.push(path,async()=>{try{logger.logOther?.("writeFile start","..."+path.slice(-32));const pathExists=(0,import_node_fs2.existsSync)(path);if(!pathExists){const dir=(0,import_node_path.dirname)(path);if(!(0,import_node_fs2.existsSync)(dir)){await(0,import_promises2.mkdir)(dir,{recursive:true})}}await(0,import_promises2.writeFile)(path+".tmp",content,{encoding:"utf-8",flag:"w"});if(pathExists){await(0,import_promises2.rename)(path,path+".bak")}await(0,import_promises2.rename)(path+".tmp",path);logger.logOther?.("writeFile success","..."+path.slice(-32))}catch(err){logger.error("writeFile","write_file_failed",{path},err);throw new Error("write_file_failed",{cause:err.cause})}})}function parseJson(content){try{return JSON.parse(content)}catch(err){logger.error("parseJson","invalid_json",err);throw new Error("invalid_json",{cause:err.cause})}}function jsonStringify(data){try{return JSON.stringify(data)}catch(err){logger.error("jsonStringify","stringify_failed",err);throw new Error("stringify_failed",{cause:err.cause})}}function readJson(path,sync=false){logger.logMethodArgs?.("readJson",{path:path.slice(-32),sync});if(sync===true){return parseJson(readFileSync(path))}else{return readFile(path).then(content=>parseJson(content))}}var import_flat_string2=require("@alwatr/flat-string");function writeJson(path,data,sync=false){logger.logMethodArgs?.("writeJson","..."+path.slice(-32));const content=(0,import_flat_string2.flatString)(jsonStringify(data));return sync===true?writeFileSync(path,content):writeFile(path,content)}var import_node_fs3=require("node:fs");var import_promises3=require("node:fs/promises");var import_node_path2=require("node:path");async function makeEmptyFile(path){logger.logMethodArgs?.("makeEmptyFile","..."+path.slice(-32));try{const pathExists=(0,import_node_fs3.existsSync)(path);if(!pathExists){const dir=(0,import_node_path2.dirname)(path);if(!(0,import_node_fs3.existsSync)(dir)){await(0,import_promises3.mkdir)(dir,{recursive:true})}}await(await(0,import_promises3.open)(path,"w")).close()}catch(err){logger.error("makeEmptyFile","make_file_failed",{path},err);throw new Error("make_file_failed",{cause:err.cause})}}var import_node_path3=require("node:path");var import_node_fs4=require("node:fs");var import_promises4=require("node:fs/promises");0&&(module.exports={existsSync,makeEmptyFile,readFile,readFileSync,readJson,resolve,unlink,writeFile,writeFileSync,writeJson});
4
3
  //# sourceMappingURL=main.cjs.map
package/dist/main.cjs.map CHANGED
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../src/main.ts", "../src/read-file.ts", "../src/common.ts", "../src/write-file.ts", "../src/json.ts", "../src/read-json.ts", "../src/write-json.ts", "../src/make-file.ts"],
4
4
  "sourcesContent": ["export * from './read-file.js';\nexport * from './write-file.js';\nexport * from './read-json.js';\nexport * from './write-json.js';\nexport * from './make-file.js';\n\nexport {resolve} from 'node:path';\nexport {existsSync} from 'node:fs';\nexport {unlink} from 'node:fs/promises';\n", "import {readFileSync as readFileSync_} from 'node:fs';\nimport {readFile as readFile_} from 'node:fs/promises';\n\nimport {flatString} from '@alwatr/flat-string';\n\nimport {asyncQueue, logger} from './common.js';\n\n/**\n * Enhanced read File (Synchronous).\n *\n * @param path - file path\n * @returns file content\n * @example\n * ```typescript\n * const fileContent = readFileSync('./file.txt', sync);\n * ```\n */\nexport function readFileSync(path: string): string {\n logger.logMethodArgs?.('readFileSync', '...' + path.slice(-32));\n // if (!existsSync(path)) throw new Error('file_not_found');\n try {\n return flatString(readFileSync_(path, {encoding: 'utf-8', flag: 'r'}));\n }\n catch (err) {\n logger.error('readFileSync', 'read_file_failed', {path}, err);\n throw new Error('read_file_failed', {cause: (err as Error).cause});\n }\n}\n\n/**\n * Enhanced read File (Asynchronous).\n *\n * - If writing queue is running for target path, it will wait for it to finish.\n *\n * @param path - file path\n * @returns file content\n * @example\n * ```typescript\n * const fileContent = await readFile('./file.txt', sync);\n * ```\n */\nexport function readFile(path: string): Promise<string> {\n logger.logMethodArgs?.('readFile', '...' + path.slice(-32));\n // if (!existsSync(path)) throw new Error('file_not_found');\n return asyncQueue.push(path, async () => {\n try {\n return flatString(await readFile_(path, {encoding: 'utf-8', flag: 'r'}));\n }\n catch (err) {\n logger.error('readFile', 'read_file_failed', {path}, err);\n throw new Error('read_file_failed', {cause: (err as Error).cause});\n }\n });\n}\n", "import {AsyncQueue} from '@alwatr/async-queue';\nimport {createLogger} from '@alwatr/logger';\n\nimport type {} from '@alwatr/type-helper';\n\nexport const logger = createLogger('@alwatr/node-fs');\n\nexport const asyncQueue = new AsyncQueue();\n", "import {writeFileSync as writeFileSync_, existsSync, mkdirSync, renameSync} from 'node:fs';\nimport {mkdir, rename, writeFile as writeFile_} from 'node:fs/promises';\nimport {dirname} from 'node:path';\n\nimport {asyncQueue, logger} from './common.js';\n\n/**\n * Enhanced write file (Synchronous).\n *\n * - If directory not exists, create it recursively.\n * - Write file to `path.tmp` before write success.\n * - If file exists, renamed (keep) to `path.bak`.\n * - If write failed, original file will not be changed.\n *\n * @param path - file path\n * @param content - file content\n * @example\n * ```typescript\n * writeFileSync('./file.txt', 'Hello World!');\n * ```\n */\nexport function writeFileSync(path: string, content: Buffer | string): void {\n logger.logMethodArgs?.('writeFileSync', '...' + path.slice(-32));\n try {\n const pathExists = existsSync(path);\n if (!pathExists) {\n const dir = dirname(path);\n if (!existsSync(dir)) {\n mkdirSync(dir, {recursive: true});\n }\n }\n writeFileSync_(path + '.tmp', content, {encoding: 'utf-8', flag: 'w'});\n if (pathExists) {\n renameSync(path, path + '.bak');\n }\n renameSync(path + '.tmp', path);\n logger.logOther?.('writeFileSync success', '...' + path.slice(-32));\n }\n catch (err) {\n logger.error('writeFileSync', 'write_file_failed', {path}, err);\n throw new Error('write_file_failed', {cause: (err as Error).cause});\n }\n}\n\n/**\n * Enhanced write file (Asynchronous).\n *\n * - If directory not exists, create it recursively.\n * - Write file to `path.tmp` before write success.\n * - If file exists, renamed (keep) to `path.bak`.\n * - If write failed, original file will not be changed.\n *\n * @param path - file path\n * @param content - file content\n * @example\n * ```typescript\n * await writeFile('./file.txt', 'Hello World!');\n * ```\n */\nexport function writeFile(path: string, content: Buffer | string): Promise<void> {\n logger.logMethodArgs?.('writeFile', '...' + path.slice(-32));\n return asyncQueue.push(path, async () => {\n try {\n logger.logOther?.('writeFile start', '...' + path.slice(-32));\n const pathExists = existsSync(path);\n if (!pathExists) {\n const dir = dirname(path);\n if (!existsSync(dir)) {\n await mkdir(dir, {recursive: true});\n }\n }\n await writeFile_(path + '.tmp', content, {encoding: 'utf-8', flag: 'w'});\n if (pathExists) {\n await rename(path, path + '.bak');\n }\n await rename(path + '.tmp', path);\n logger.logOther?.('writeFile success', '...' + path.slice(-32));\n }\n catch (err) {\n logger.error('writeFile', 'write_file_failed', {path}, err);\n throw new Error('write_file_failed', {cause: (err as Error).cause});\n }\n });\n}\n", "import {logger} from './common.js';\n\n/**\n * Parse json string.\n *\n * @param content - json string\n * @returns json object\n * @example\n * ```typescript\n * const json = parseJson('{\"a\":1,\"b\":2}');\n * console.log(json.a); // 1\n * ```\n */\nexport function parseJson<T extends JsonValue>(content: string): T {\n try {\n return JSON.parse(content);\n }\n catch (err) {\n logger.error('parseJson', 'invalid_json', err);\n throw new Error('invalid_json', {cause: (err as Error).cause});\n }\n}\n\n/**\n * Stringify json object.\n *\n * @param data - json object\n * @returns json string\n * @example\n * ```typescript\n * const json = jsonStringify({a:1, b:2});\n * console.log(json); // '{\"a\":1,\"b\":2}'\n * ```\n */\nexport function jsonStringify<T extends JsonValue>(data: T): string {\n try {\n return JSON.stringify(data);\n }\n catch (err) {\n logger.error('jsonStringify', 'stringify_failed', err);\n throw new Error('stringify_failed', {cause: (err as Error).cause});\n }\n}\n", "import {logger} from './common.js';\nimport {parseJson} from './json.js';\nimport {readFile, readFileSync} from './read-file.js';\n\n/**\n * Enhanced read json file (async).\n *\n * @param path - file path\n * @returns json object\n * @example\n * ```typescript\n * const fileContent = await readJson('./file.json');\n * ```\n */\nexport function readJson<T extends JsonValue>(path: string): Promise<T>;\n/**\n * Enhanced read json file (sync).\n *\n * @param path - file path\n * @param sync - sync mode\n * @returns json object\n * @example\n * ```typescript\n * const fileContent = readJson('./file.json', true);\n * ```\n */\nexport function readJson<T extends JsonValue>(path: string, sync: true): T;\n/**\n * Enhanced read json file.\n *\n * @param path - file path\n * @param sync - sync mode\n * @returns json object\n * @example\n * ```typescript\n * const fileContent = await readJson('./file.json', sync);\n * ```\n */\nexport function readJson<T extends JsonValue>(path: string, sync: boolean): Awaitable<T>;\n/**\n * Enhanced read json file.\n *\n * @param path - file path\n * @param sync - sync mode\n * @returns json object\n * @example\n * ```typescript\n * const fileContent = await readJson('./file.json');\n * ```\n */\nexport function readJson<T extends JsonValue>(path: string, sync = false): Awaitable<T> {\n logger.logMethodArgs?.('readJson', {path: path.slice(-32), sync});\n if (sync === true) {\n return parseJson<T>(readFileSync(path));\n }\n else {\n return readFile(path).then((content) => parseJson<T>(content));\n }\n}\n", "import {flatString} from '@alwatr/flat-string';\n\nimport {logger} from './common.js';\nimport {jsonStringify} from './json.js';\nimport {writeFile, writeFileSync} from './write-file.js';\n\n/**\n * Enhanced write json file (Asynchronous).\n *\n * @param path - file path\n * @param data - json object\n * @example\n * ```typescript\n * await writeJsonFile('./file.json', { a:1, b:2, c:3 });\n * ```\n */\nexport function writeJson<T extends JsonValue>(path: string, data: T, sync?: false): Promise<void>;\n/**\n * Enhanced write json file (Synchronous).\n *\n * @param path - file path\n * @param data - json object\n * @param sync - sync mode\n * @example\n * ```typescript\n * writeJsonFile('./file.json', { a:1, b:2, c:3 }, true);\n * ```\n */\nexport function writeJson<T extends JsonValue>(path: string, data: T, sync: true): void;\n/**\n * Enhanced write json file.\n *\n * @param path - file path\n * @param data - json object\n * @param sync - sync mode\n * @example\n * ```typescript\n * await writeJsonFile('./file.json', { a:1, b:2, c:3 }, sync);\n * ```\n */\nexport function writeJson<T extends JsonValue>(path: string, data: T, sync: boolean): Awaitable<void>;\n/**\n * Enhanced write json file.\n *\n * @param path - file path\n * @param data - json object\n * @param sync - sync mode\n * @example\n * ```typescript\n * await writeJsonFile('./file.json', { a:1, b:2, c:3 });\n * ```\n */\nexport function writeJson<T extends JsonValue>(path: string, data: T, sync = false): Awaitable<void> {\n logger.logMethodArgs?.('writeJson', '...' + path.slice(-32));\n const content = flatString(jsonStringify(data));\n return sync === true ? writeFileSync(path, content) : writeFile(path, content);\n}\n", "import {existsSync} from 'node:fs';\nimport {mkdir, open} from 'node:fs/promises';\nimport {dirname} from 'node:path';\n\nimport {logger} from './common.js';\n\n/**\n * Make empty file.\n *\n * @param path - file path\n *\n * @example\n * ```ts\n * await makeFile('./dir/file.txt');\n * ```\n */\nexport async function makeEmptyFile(path: string): Promise<void> {\n logger.logMethodArgs?.('makeEmptyFile', '...' + path.slice(-32));\n try {\n const pathExists = existsSync(path);\n if (!pathExists) {\n const dir = dirname(path);\n if (!existsSync(dir)) {\n await mkdir(dir, {recursive: true});\n }\n }\n await (await open(path, 'w')).close();\n }\n catch (err) {\n logger.error('makeEmptyFile', 'make_file_failed', {path}, err);\n throw new Error('make_file_failed', {cause: (err as Error).cause});\n }\n}\n"],
5
- "mappings": "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",
5
+ "mappings": "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",
6
6
  "names": ["readFileSync_", "readFile_", "import_node_fs", "import_promises", "writeFileSync_", "writeFile_", "import_flat_string", "import_node_fs", "import_promises", "import_node_path", "import_node_path", "import_node_fs", "import_promises"]
7
7
  }
package/dist/main.mjs CHANGED
@@ -1,4 +1,3 @@
1
- /** 📦 @alwatr/node-fs v5.5.31 */
2
- __dev_mode__: console.debug("📦 @alwatr/node-fs v5.5.31");
1
+ /** 📦 @alwatr/node-fs v5.5.32 */
3
2
  import{readFileSync as readFileSync_}from"node:fs";import{readFile as readFile_}from"node:fs/promises";import{flatString}from"@alwatr/flat-string";import{AsyncQueue}from"@alwatr/async-queue";import{createLogger}from"@alwatr/logger";var logger=createLogger("@alwatr/node-fs");var asyncQueue=new AsyncQueue;function readFileSync(path){logger.logMethodArgs?.("readFileSync","..."+path.slice(-32));try{return flatString(readFileSync_(path,{encoding:"utf-8",flag:"r"}))}catch(err){logger.error("readFileSync","read_file_failed",{path},err);throw new Error("read_file_failed",{cause:err.cause})}}function readFile(path){logger.logMethodArgs?.("readFile","..."+path.slice(-32));return asyncQueue.push(path,async()=>{try{return flatString(await readFile_(path,{encoding:"utf-8",flag:"r"}))}catch(err){logger.error("readFile","read_file_failed",{path},err);throw new Error("read_file_failed",{cause:err.cause})}})}import{writeFileSync as writeFileSync_,existsSync,mkdirSync,renameSync}from"node:fs";import{mkdir,rename,writeFile as writeFile_}from"node:fs/promises";import{dirname}from"node:path";function writeFileSync(path,content){logger.logMethodArgs?.("writeFileSync","..."+path.slice(-32));try{const pathExists=existsSync(path);if(!pathExists){const dir=dirname(path);if(!existsSync(dir)){mkdirSync(dir,{recursive:true})}}writeFileSync_(path+".tmp",content,{encoding:"utf-8",flag:"w"});if(pathExists){renameSync(path,path+".bak")}renameSync(path+".tmp",path);logger.logOther?.("writeFileSync success","..."+path.slice(-32))}catch(err){logger.error("writeFileSync","write_file_failed",{path},err);throw new Error("write_file_failed",{cause:err.cause})}}function writeFile(path,content){logger.logMethodArgs?.("writeFile","..."+path.slice(-32));return asyncQueue.push(path,async()=>{try{logger.logOther?.("writeFile start","..."+path.slice(-32));const pathExists=existsSync(path);if(!pathExists){const dir=dirname(path);if(!existsSync(dir)){await mkdir(dir,{recursive:true})}}await writeFile_(path+".tmp",content,{encoding:"utf-8",flag:"w"});if(pathExists){await rename(path,path+".bak")}await rename(path+".tmp",path);logger.logOther?.("writeFile success","..."+path.slice(-32))}catch(err){logger.error("writeFile","write_file_failed",{path},err);throw new Error("write_file_failed",{cause:err.cause})}})}function parseJson(content){try{return JSON.parse(content)}catch(err){logger.error("parseJson","invalid_json",err);throw new Error("invalid_json",{cause:err.cause})}}function jsonStringify(data){try{return JSON.stringify(data)}catch(err){logger.error("jsonStringify","stringify_failed",err);throw new Error("stringify_failed",{cause:err.cause})}}function readJson(path,sync=false){logger.logMethodArgs?.("readJson",{path:path.slice(-32),sync});if(sync===true){return parseJson(readFileSync(path))}else{return readFile(path).then(content=>parseJson(content))}}import{flatString as flatString2}from"@alwatr/flat-string";function writeJson(path,data,sync=false){logger.logMethodArgs?.("writeJson","..."+path.slice(-32));const content=flatString2(jsonStringify(data));return sync===true?writeFileSync(path,content):writeFile(path,content)}import{existsSync as existsSync2}from"node:fs";import{mkdir as mkdir2,open}from"node:fs/promises";import{dirname as dirname2}from"node:path";async function makeEmptyFile(path){logger.logMethodArgs?.("makeEmptyFile","..."+path.slice(-32));try{const pathExists=existsSync2(path);if(!pathExists){const dir=dirname2(path);if(!existsSync2(dir)){await mkdir2(dir,{recursive:true})}}await(await open(path,"w")).close()}catch(err){logger.error("makeEmptyFile","make_file_failed",{path},err);throw new Error("make_file_failed",{cause:err.cause})}}import{resolve}from"node:path";import{existsSync as existsSync3}from"node:fs";import{unlink}from"node:fs/promises";export{existsSync3 as existsSync,makeEmptyFile,readFile,readFileSync,readJson,resolve,unlink,writeFile,writeFileSync,writeJson};
4
3
  //# sourceMappingURL=main.mjs.map
package/dist/main.mjs.map CHANGED
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../src/read-file.ts", "../src/common.ts", "../src/write-file.ts", "../src/json.ts", "../src/read-json.ts", "../src/write-json.ts", "../src/make-file.ts", "../src/main.ts"],
4
4
  "sourcesContent": ["import {readFileSync as readFileSync_} from 'node:fs';\nimport {readFile as readFile_} from 'node:fs/promises';\n\nimport {flatString} from '@alwatr/flat-string';\n\nimport {asyncQueue, logger} from './common.js';\n\n/**\n * Enhanced read File (Synchronous).\n *\n * @param path - file path\n * @returns file content\n * @example\n * ```typescript\n * const fileContent = readFileSync('./file.txt', sync);\n * ```\n */\nexport function readFileSync(path: string): string {\n logger.logMethodArgs?.('readFileSync', '...' + path.slice(-32));\n // if (!existsSync(path)) throw new Error('file_not_found');\n try {\n return flatString(readFileSync_(path, {encoding: 'utf-8', flag: 'r'}));\n }\n catch (err) {\n logger.error('readFileSync', 'read_file_failed', {path}, err);\n throw new Error('read_file_failed', {cause: (err as Error).cause});\n }\n}\n\n/**\n * Enhanced read File (Asynchronous).\n *\n * - If writing queue is running for target path, it will wait for it to finish.\n *\n * @param path - file path\n * @returns file content\n * @example\n * ```typescript\n * const fileContent = await readFile('./file.txt', sync);\n * ```\n */\nexport function readFile(path: string): Promise<string> {\n logger.logMethodArgs?.('readFile', '...' + path.slice(-32));\n // if (!existsSync(path)) throw new Error('file_not_found');\n return asyncQueue.push(path, async () => {\n try {\n return flatString(await readFile_(path, {encoding: 'utf-8', flag: 'r'}));\n }\n catch (err) {\n logger.error('readFile', 'read_file_failed', {path}, err);\n throw new Error('read_file_failed', {cause: (err as Error).cause});\n }\n });\n}\n", "import {AsyncQueue} from '@alwatr/async-queue';\nimport {createLogger} from '@alwatr/logger';\n\nimport type {} from '@alwatr/type-helper';\n\nexport const logger = createLogger('@alwatr/node-fs');\n\nexport const asyncQueue = new AsyncQueue();\n", "import {writeFileSync as writeFileSync_, existsSync, mkdirSync, renameSync} from 'node:fs';\nimport {mkdir, rename, writeFile as writeFile_} from 'node:fs/promises';\nimport {dirname} from 'node:path';\n\nimport {asyncQueue, logger} from './common.js';\n\n/**\n * Enhanced write file (Synchronous).\n *\n * - If directory not exists, create it recursively.\n * - Write file to `path.tmp` before write success.\n * - If file exists, renamed (keep) to `path.bak`.\n * - If write failed, original file will not be changed.\n *\n * @param path - file path\n * @param content - file content\n * @example\n * ```typescript\n * writeFileSync('./file.txt', 'Hello World!');\n * ```\n */\nexport function writeFileSync(path: string, content: Buffer | string): void {\n logger.logMethodArgs?.('writeFileSync', '...' + path.slice(-32));\n try {\n const pathExists = existsSync(path);\n if (!pathExists) {\n const dir = dirname(path);\n if (!existsSync(dir)) {\n mkdirSync(dir, {recursive: true});\n }\n }\n writeFileSync_(path + '.tmp', content, {encoding: 'utf-8', flag: 'w'});\n if (pathExists) {\n renameSync(path, path + '.bak');\n }\n renameSync(path + '.tmp', path);\n logger.logOther?.('writeFileSync success', '...' + path.slice(-32));\n }\n catch (err) {\n logger.error('writeFileSync', 'write_file_failed', {path}, err);\n throw new Error('write_file_failed', {cause: (err as Error).cause});\n }\n}\n\n/**\n * Enhanced write file (Asynchronous).\n *\n * - If directory not exists, create it recursively.\n * - Write file to `path.tmp` before write success.\n * - If file exists, renamed (keep) to `path.bak`.\n * - If write failed, original file will not be changed.\n *\n * @param path - file path\n * @param content - file content\n * @example\n * ```typescript\n * await writeFile('./file.txt', 'Hello World!');\n * ```\n */\nexport function writeFile(path: string, content: Buffer | string): Promise<void> {\n logger.logMethodArgs?.('writeFile', '...' + path.slice(-32));\n return asyncQueue.push(path, async () => {\n try {\n logger.logOther?.('writeFile start', '...' + path.slice(-32));\n const pathExists = existsSync(path);\n if (!pathExists) {\n const dir = dirname(path);\n if (!existsSync(dir)) {\n await mkdir(dir, {recursive: true});\n }\n }\n await writeFile_(path + '.tmp', content, {encoding: 'utf-8', flag: 'w'});\n if (pathExists) {\n await rename(path, path + '.bak');\n }\n await rename(path + '.tmp', path);\n logger.logOther?.('writeFile success', '...' + path.slice(-32));\n }\n catch (err) {\n logger.error('writeFile', 'write_file_failed', {path}, err);\n throw new Error('write_file_failed', {cause: (err as Error).cause});\n }\n });\n}\n", "import {logger} from './common.js';\n\n/**\n * Parse json string.\n *\n * @param content - json string\n * @returns json object\n * @example\n * ```typescript\n * const json = parseJson('{\"a\":1,\"b\":2}');\n * console.log(json.a); // 1\n * ```\n */\nexport function parseJson<T extends JsonValue>(content: string): T {\n try {\n return JSON.parse(content);\n }\n catch (err) {\n logger.error('parseJson', 'invalid_json', err);\n throw new Error('invalid_json', {cause: (err as Error).cause});\n }\n}\n\n/**\n * Stringify json object.\n *\n * @param data - json object\n * @returns json string\n * @example\n * ```typescript\n * const json = jsonStringify({a:1, b:2});\n * console.log(json); // '{\"a\":1,\"b\":2}'\n * ```\n */\nexport function jsonStringify<T extends JsonValue>(data: T): string {\n try {\n return JSON.stringify(data);\n }\n catch (err) {\n logger.error('jsonStringify', 'stringify_failed', err);\n throw new Error('stringify_failed', {cause: (err as Error).cause});\n }\n}\n", "import {logger} from './common.js';\nimport {parseJson} from './json.js';\nimport {readFile, readFileSync} from './read-file.js';\n\n/**\n * Enhanced read json file (async).\n *\n * @param path - file path\n * @returns json object\n * @example\n * ```typescript\n * const fileContent = await readJson('./file.json');\n * ```\n */\nexport function readJson<T extends JsonValue>(path: string): Promise<T>;\n/**\n * Enhanced read json file (sync).\n *\n * @param path - file path\n * @param sync - sync mode\n * @returns json object\n * @example\n * ```typescript\n * const fileContent = readJson('./file.json', true);\n * ```\n */\nexport function readJson<T extends JsonValue>(path: string, sync: true): T;\n/**\n * Enhanced read json file.\n *\n * @param path - file path\n * @param sync - sync mode\n * @returns json object\n * @example\n * ```typescript\n * const fileContent = await readJson('./file.json', sync);\n * ```\n */\nexport function readJson<T extends JsonValue>(path: string, sync: boolean): Awaitable<T>;\n/**\n * Enhanced read json file.\n *\n * @param path - file path\n * @param sync - sync mode\n * @returns json object\n * @example\n * ```typescript\n * const fileContent = await readJson('./file.json');\n * ```\n */\nexport function readJson<T extends JsonValue>(path: string, sync = false): Awaitable<T> {\n logger.logMethodArgs?.('readJson', {path: path.slice(-32), sync});\n if (sync === true) {\n return parseJson<T>(readFileSync(path));\n }\n else {\n return readFile(path).then((content) => parseJson<T>(content));\n }\n}\n", "import {flatString} from '@alwatr/flat-string';\n\nimport {logger} from './common.js';\nimport {jsonStringify} from './json.js';\nimport {writeFile, writeFileSync} from './write-file.js';\n\n/**\n * Enhanced write json file (Asynchronous).\n *\n * @param path - file path\n * @param data - json object\n * @example\n * ```typescript\n * await writeJsonFile('./file.json', { a:1, b:2, c:3 });\n * ```\n */\nexport function writeJson<T extends JsonValue>(path: string, data: T, sync?: false): Promise<void>;\n/**\n * Enhanced write json file (Synchronous).\n *\n * @param path - file path\n * @param data - json object\n * @param sync - sync mode\n * @example\n * ```typescript\n * writeJsonFile('./file.json', { a:1, b:2, c:3 }, true);\n * ```\n */\nexport function writeJson<T extends JsonValue>(path: string, data: T, sync: true): void;\n/**\n * Enhanced write json file.\n *\n * @param path - file path\n * @param data - json object\n * @param sync - sync mode\n * @example\n * ```typescript\n * await writeJsonFile('./file.json', { a:1, b:2, c:3 }, sync);\n * ```\n */\nexport function writeJson<T extends JsonValue>(path: string, data: T, sync: boolean): Awaitable<void>;\n/**\n * Enhanced write json file.\n *\n * @param path - file path\n * @param data - json object\n * @param sync - sync mode\n * @example\n * ```typescript\n * await writeJsonFile('./file.json', { a:1, b:2, c:3 });\n * ```\n */\nexport function writeJson<T extends JsonValue>(path: string, data: T, sync = false): Awaitable<void> {\n logger.logMethodArgs?.('writeJson', '...' + path.slice(-32));\n const content = flatString(jsonStringify(data));\n return sync === true ? writeFileSync(path, content) : writeFile(path, content);\n}\n", "import {existsSync} from 'node:fs';\nimport {mkdir, open} from 'node:fs/promises';\nimport {dirname} from 'node:path';\n\nimport {logger} from './common.js';\n\n/**\n * Make empty file.\n *\n * @param path - file path\n *\n * @example\n * ```ts\n * await makeFile('./dir/file.txt');\n * ```\n */\nexport async function makeEmptyFile(path: string): Promise<void> {\n logger.logMethodArgs?.('makeEmptyFile', '...' + path.slice(-32));\n try {\n const pathExists = existsSync(path);\n if (!pathExists) {\n const dir = dirname(path);\n if (!existsSync(dir)) {\n await mkdir(dir, {recursive: true});\n }\n }\n await (await open(path, 'w')).close();\n }\n catch (err) {\n logger.error('makeEmptyFile', 'make_file_failed', {path}, err);\n throw new Error('make_file_failed', {cause: (err as Error).cause});\n }\n}\n", "export * from './read-file.js';\nexport * from './write-file.js';\nexport * from './read-json.js';\nexport * from './write-json.js';\nexport * from './make-file.js';\n\nexport {resolve} from 'node:path';\nexport {existsSync} from 'node:fs';\nexport {unlink} from 'node:fs/promises';\n"],
5
- "mappings": "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",
5
+ "mappings": "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",
6
6
  "names": ["flatString", "flatString", "existsSync", "mkdir", "dirname", "existsSync", "dirname", "mkdir", "existsSync"]
7
7
  }
package/package.json CHANGED
@@ -1,20 +1,20 @@
1
1
  {
2
2
  "name": "@alwatr/node-fs",
3
3
  "description": "Enhanced file system operations in Node.js with asynchronous queue to prevent parallel writes.",
4
- "version": "5.5.31",
4
+ "version": "5.5.32",
5
5
  "author": "S. Ali Mihandoost <ali.mihandoost@gmail.com>",
6
6
  "bugs": "https://github.com/Alwatr/nanolib/issues",
7
7
  "dependencies": {
8
- "@alwatr/async-queue": "5.5.28",
9
- "@alwatr/flat-string": "5.5.28",
10
- "@alwatr/logger": "6.0.17"
8
+ "@alwatr/async-queue": "5.5.29",
9
+ "@alwatr/flat-string": "5.5.29",
10
+ "@alwatr/logger": "6.0.18"
11
11
  },
12
12
  "devDependencies": {
13
- "@alwatr/nano-build": "6.4.1",
13
+ "@alwatr/nano-build": "6.4.2",
14
14
  "@alwatr/prettier-config": "6.0.2",
15
15
  "@alwatr/tsconfig-base": "6.0.4",
16
- "@alwatr/type-helper": "7.0.1",
17
- "@types/node": "^24.10.13",
16
+ "@alwatr/type-helper": "7.0.2",
17
+ "@types/node": "^24.12.0",
18
18
  "typescript": "^5.9.3"
19
19
  },
20
20
  "exports": {
@@ -70,21 +70,21 @@
70
70
  "directory": "packages/node-fs"
71
71
  },
72
72
  "scripts": {
73
- "b": "yarn run build",
74
- "build": "yarn run build:ts && yarn run build:es",
73
+ "b": "bun run build",
74
+ "build": "bun run build:ts && bun run build:es",
75
75
  "build:es": "nano-build --preset=module",
76
76
  "build:ts": "tsc --build",
77
- "c": "yarn run clean",
78
- "cb": "yarn run clean && yarn run build",
77
+ "c": "bun run clean",
78
+ "cb": "bun run clean && bun run build",
79
79
  "clean": "rm -rfv dist *.tsbuildinfo",
80
- "d": "yarn run build:es && yarn node --enable-source-maps --trace-warnings",
81
- "w": "yarn run watch",
82
- "watch": "yarn run watch:ts & yarn run watch:es",
83
- "watch:es": "yarn run build:es --watch",
84
- "watch:ts": "yarn run build:ts --watch --preserveWatchOutput"
80
+ "d": "bun run build:es && bun --enable-source-maps --trace-warnings",
81
+ "w": "bun run watch",
82
+ "watch": "bun run watch:ts & bun run watch:es",
83
+ "watch:es": "bun run build:es --watch",
84
+ "watch:ts": "bun run build:ts --watch --preserveWatchOutput"
85
85
  },
86
86
  "sideEffects": false,
87
87
  "type": "module",
88
88
  "types": "./dist/main.d.ts",
89
- "gitHead": "f9f9ba54b319ce8ccc6968059b222e89f4b5d149"
89
+ "gitHead": "c3889e3756b0a0f9b935a1b702a1373ac52cb379"
90
90
  }