@edgeros/fs 0.1.7 → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
package/jsre/fs.d.ts ADDED
@@ -0,0 +1,6 @@
1
+ import fs = require("fs");
2
+ export function createWriteStream(path: any, options: any): fs.WriteStream;
3
+ export function stat(path: any): Promise<any>;
4
+ export function rename(oldPath: any, newPath: any): Promise<void>;
5
+ export function mkdir(path: any, options: any): Promise<void>;
6
+ export function mkdirSync(path: any, options: any): void;
package/jsre/fs.js ADDED
@@ -0,0 +1,43 @@
1
+ "use strict";
2
+ const fs = require('fs');
3
+ const brokerFs = {
4
+ createWriteStream: (path, options) => fs.createWriteStream(path, options),
5
+ stat: async (path) => await new Promise((resolve, reject) => {
6
+ try {
7
+ const stats = fs.statSync(path);
8
+ resolve(stats);
9
+ }
10
+ catch (error) {
11
+ reject(new Error((error).message));
12
+ }
13
+ }),
14
+ rename: async (oldPath, newPath) => {
15
+ await new Promise((resolve, reject) => {
16
+ fs.rename(oldPath, newPath, (err) => {
17
+ if (err) {
18
+ reject(err);
19
+ }
20
+ else {
21
+ resolve(undefined);
22
+ }
23
+ });
24
+ });
25
+ },
26
+ mkdir: async (path, options) => {
27
+ await new Promise((resolve, reject) => {
28
+ fs.mkdir(path, options, (err) => {
29
+ if (err) {
30
+ reject(err);
31
+ }
32
+ else {
33
+ resolve(undefined);
34
+ }
35
+ });
36
+ });
37
+ },
38
+ mkdirSync: (path, options) => {
39
+ fs.mkdir(path, options.mode, !!options.recursive);
40
+ },
41
+ };
42
+ module.exports = brokerFs;
43
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvanNyZS9mcy5qcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsTUFBTSxFQUFFLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFBO0FBRXhCLE1BQU0sUUFBUSxHQUFHO0lBRWYsaUJBQWlCLEVBQUUsQ0FBQyxJQUFJLEVBQUUsT0FBTyxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsaUJBQWlCLENBQUMsSUFBSSxFQUFFLE9BQU8sQ0FBQztJQUV6RSxJQUFJLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxFQUFFLENBQUMsTUFBTSxJQUFJLE9BQU8sQ0FBQyxDQUFDLE9BQU8sRUFBRSxNQUFNLEVBQUUsRUFBRTtRQUMxRCxJQUFJLENBQUM7WUFDSCxNQUFNLEtBQUssR0FBRyxFQUFFLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFBO1lBQy9CLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQTtRQUNoQixDQUFDO1FBQUMsT0FBTyxLQUFLLEVBQUUsQ0FBQztZQUNmLE1BQU0sQ0FBQyxJQUFJLEtBQUssQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUE7UUFDcEMsQ0FBQztJQUNILENBQUMsQ0FBQztJQUVGLE1BQU0sRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxFQUFFO1FBQ2pDLE1BQU0sSUFBSSxPQUFPLENBQUMsQ0FBQyxPQUFPLEVBQUUsTUFBTSxFQUFFLEVBQUU7WUFDcEMsRUFBRSxDQUFDLE1BQU0sQ0FBQyxPQUFPLEVBQUUsT0FBTyxFQUFFLENBQUMsR0FBRyxFQUFFLEVBQUU7Z0JBQ2xDLElBQUksR0FBRyxFQUFFLENBQUM7b0JBQ1IsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFBO2dCQUNiLENBQUM7cUJBQU0sQ0FBQztvQkFDTixPQUFPLENBQUMsU0FBUyxDQUFDLENBQUE7Z0JBQ3BCLENBQUM7WUFDSCxDQUFDLENBQUMsQ0FBQTtRQUNKLENBQUMsQ0FBQyxDQUFBO0lBQ0osQ0FBQztJQUVELEtBQUssRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxFQUFFO1FBQzdCLE1BQU0sSUFBSSxPQUFPLENBQUMsQ0FBQyxPQUFPLEVBQUUsTUFBTSxFQUFFLEVBQUU7WUFDcEMsRUFBRSxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsR0FBRyxFQUFFLEVBQUU7Z0JBQzlCLElBQUksR0FBRyxFQUFFLENBQUM7b0JBQ1IsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFBO2dCQUNiLENBQUM7cUJBQU0sQ0FBQztvQkFDTixPQUFPLENBQUMsU0FBUyxDQUFDLENBQUE7Z0JBQ3BCLENBQUM7WUFDSCxDQUFDLENBQUMsQ0FBQTtRQUNKLENBQUMsQ0FBQyxDQUFBO0lBQ0osQ0FBQztJQUNELFNBQVMsRUFBRSxDQUFDLElBQUksRUFBRSxPQUFPLEVBQUUsRUFBRTtRQUMzQixFQUFFLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxPQUFPLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLENBQUE7SUFDbkQsQ0FBQztDQUNGLENBQUE7QUFFRCxNQUFNLENBQUMsT0FBTyxHQUFHLFFBQVEsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImNvbnN0IGZzID0gcmVxdWlyZSgnZnMnKVxyXG5cclxuY29uc3QgYnJva2VyRnMgPSB7XHJcblxyXG4gIGNyZWF0ZVdyaXRlU3RyZWFtOiAocGF0aCwgb3B0aW9ucykgPT4gZnMuY3JlYXRlV3JpdGVTdHJlYW0ocGF0aCwgb3B0aW9ucyksXHJcblxyXG4gIHN0YXQ6IGFzeW5jIChwYXRoKSA9PiBhd2FpdCBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XHJcbiAgICB0cnkge1xyXG4gICAgICBjb25zdCBzdGF0cyA9IGZzLnN0YXRTeW5jKHBhdGgpXHJcbiAgICAgIHJlc29sdmUoc3RhdHMpXHJcbiAgICB9IGNhdGNoIChlcnJvcikge1xyXG4gICAgICByZWplY3QobmV3IEVycm9yKChlcnJvcikubWVzc2FnZSkpXHJcbiAgICB9XHJcbiAgfSksXHJcblxyXG4gIHJlbmFtZTogYXN5bmMgKG9sZFBhdGgsIG5ld1BhdGgpID0+IHtcclxuICAgIGF3YWl0IG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcclxuICAgICAgZnMucmVuYW1lKG9sZFBhdGgsIG5ld1BhdGgsIChlcnIpID0+IHtcclxuICAgICAgICBpZiAoZXJyKSB7XHJcbiAgICAgICAgICByZWplY3QoZXJyKVxyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICByZXNvbHZlKHVuZGVmaW5lZClcclxuICAgICAgICB9XHJcbiAgICAgIH0pXHJcbiAgICB9KVxyXG4gIH0sXHJcblxyXG4gIG1rZGlyOiBhc3luYyAocGF0aCwgb3B0aW9ucykgPT4ge1xyXG4gICAgYXdhaXQgbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xyXG4gICAgICBmcy5ta2RpcihwYXRoLCBvcHRpb25zLCAoZXJyKSA9PiB7XHJcbiAgICAgICAgaWYgKGVycikge1xyXG4gICAgICAgICAgcmVqZWN0KGVycilcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgcmVzb2x2ZSh1bmRlZmluZWQpXHJcbiAgICAgICAgfVxyXG4gICAgICB9KVxyXG4gICAgfSlcclxuICB9LFxyXG4gIG1rZGlyU3luYzogKHBhdGgsIG9wdGlvbnMpID0+IHtcclxuICAgIGZzLm1rZGlyKHBhdGgsIG9wdGlvbnMubW9kZSwgISFvcHRpb25zLnJlY3Vyc2l2ZSlcclxuICB9LFxyXG59XHJcblxyXG5tb2R1bGUuZXhwb3J0cyA9IGJyb2tlckZzXHJcbiJdfQ==
package/node/fs.d.ts ADDED
@@ -0,0 +1,10 @@
1
+ import { type PathLike, type WriteStream } from 'fs';
2
+ export interface BrokerFs {
3
+ createWriteStream: (options?: any) => WriteStream;
4
+ stat: (path: PathLike) => Promise<any>;
5
+ rename: (oldPath: PathLike, newPath: any) => Promise<void>;
6
+ mkdir: (path: PathLike, options?: string | number) => Promise<void>;
7
+ mkdirSync: (path: PathLike, options: string | number) => void;
8
+ }
9
+ declare const brokerFs: BrokerFs;
10
+ export default brokerFs;
package/node/fs.js ADDED
@@ -0,0 +1,47 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ const fs = __importStar(require("fs/promises"));
37
+ const fs_1 = require("fs");
38
+ const brokerFs = {
39
+ ...fs,
40
+ createWriteStream: fs_1.createWriteStream,
41
+ stat: fs.stat,
42
+ rename: fs.rename,
43
+ mkdir: fs.mkdir,
44
+ mkdirSync: fs_1.mkdirSync,
45
+ };
46
+ exports.default = brokerFs;
47
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbm9kZS9mcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLGdEQUFpQztBQUNqQywyQkFBa0Y7QUFTbEYsTUFBTSxRQUFRLEdBQWE7SUFDekIsR0FBRyxFQUFFO0lBQ0wsaUJBQWlCLEVBQWpCLHNCQUFpQjtJQUNqQixJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUk7SUFDYixNQUFNLEVBQUUsRUFBRSxDQUFDLE1BQU07SUFDakIsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLO0lBQ2YsU0FBUyxFQUFULGNBQVM7Q0FDVixDQUFBO0FBRUQsa0JBQWUsUUFBUSxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgZnMgZnJvbSAnZnMvcHJvbWlzZXMnXHJcbmltcG9ydCB7IHR5cGUgUGF0aExpa2UsIHR5cGUgV3JpdGVTdHJlYW0sIGNyZWF0ZVdyaXRlU3RyZWFtLCBta2RpclN5bmMgfSBmcm9tICdmcydcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgQnJva2VyRnMge1xyXG4gIGNyZWF0ZVdyaXRlU3RyZWFtOiAob3B0aW9ucz86IGFueSkgPT4gV3JpdGVTdHJlYW1cclxuICBzdGF0OiAocGF0aDogUGF0aExpa2UpID0+IFByb21pc2U8YW55PlxyXG4gIHJlbmFtZTogKG9sZFBhdGg6IFBhdGhMaWtlLCBuZXdQYXRoOiBhbnkpID0+IFByb21pc2U8dm9pZD5cclxuICBta2RpcjogKHBhdGg6IFBhdGhMaWtlLCBvcHRpb25zPzogc3RyaW5nIHwgbnVtYmVyKSA9PiBQcm9taXNlPHZvaWQ+XHJcbiAgbWtkaXJTeW5jOiAocGF0aDogUGF0aExpa2UsIG9wdGlvbnM6IHN0cmluZyB8IG51bWJlcikgPT4gdm9pZFxyXG59XHJcbmNvbnN0IGJyb2tlckZzOiBCcm9rZXJGcyA9IHtcclxuICAuLi5mcyxcclxuICBjcmVhdGVXcml0ZVN0cmVhbSxcclxuICBzdGF0OiBmcy5zdGF0LFxyXG4gIHJlbmFtZTogZnMucmVuYW1lLFxyXG4gIG1rZGlyOiBmcy5ta2RpcixcclxuICBta2RpclN5bmMsXHJcbn1cclxuXHJcbmV4cG9ydCBkZWZhdWx0IGJyb2tlckZzXHJcbiJdfQ==
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@edgeros/fs",
3
- "version": "0.1.7",
3
+ "version": "0.2.0",
4
4
  "main" :"index.js",
5
5
  "scripts": {
6
6
  "build": "npx tsc",
package/Makefile DELETED
@@ -1,21 +0,0 @@
1
- .PHONY: compile install clean publish ts-clean
2
-
3
- TS_OUTDIR= ./dist
4
-
5
- install:
6
- npm i
7
-
8
- ts-clean:
9
- node -e "require('fs').rmSync('./dist', { recursive: true, force: true });"
10
-
11
- compile: ts-clean
12
- npm run build
13
-
14
- clean:
15
- rm -rf ./dist
16
- rm -rf ./node_modules
17
-
18
- publish: compile
19
- copy .npmrc dist
20
- copy package.json dist
21
- copy dist && npm publish
package/eslint.config.js DELETED
@@ -1,45 +0,0 @@
1
- const { parse } = require('@typescript-eslint/parser')
2
- const stylistic = require('@stylistic/eslint-plugin')
3
-
4
- const files = [
5
- 'src/**/*.ts',
6
- 'src/**/*.js',
7
- ]
8
-
9
- module.exports = (async () => {
10
- const { default: love} = await import('eslint-config-love')
11
-
12
- return [
13
- {
14
- ignores: [
15
- 'coverage/**',
16
- 'src/deps/jsre/**',
17
- ],
18
- },
19
- {
20
- files,
21
- languageOptions: {
22
- parser: parse,
23
- },
24
- ...love,
25
- }, {
26
- files,
27
- ...stylistic.configs.customize({
28
- braceStyle: '1tbs'
29
- }),
30
- }, {
31
- rules: {
32
- '@typescript-eslint/explicit-function-return-type': 'off',
33
- '@typescript-eslint/no-magic-numbers': 'off',
34
- '@typescript-eslint/no-invalid-void-type': 'off',
35
- '@typescript-eslint/no-unsafe-type-assertion': 'off',
36
- '@typescript-eslint/no-unsafe-return': 'off',
37
- '@typescript-eslint/strict-boolean-expressions': 'off',
38
- '@typescript-eslint/no-explicit-any': 'off',
39
- '@typescript-eslint/prefer-nullish-coalescing': 'off',
40
- '@typescript-eslint/prefer-destructuring': 'off',
41
- 'promise/avoid-new': 'off',
42
- },
43
- },
44
- ]
45
- })()
package/src/_require.ts DELETED
@@ -1,21 +0,0 @@
1
- // eslint-disable @typescript-eslint/no-unnecessary-type-parameters -- ignore
2
- const isJSRE = () => {
3
- try {
4
- // eslint-disable-next-line @typescript-eslint/no-require-imports -- ignore
5
- require('iosched')
6
- } catch (e) {
7
- return false
8
- }
9
-
10
- return true
11
- }
12
- // eslint-disable-next-line @typescript-eslint/no-unnecessary-type-parameters -- ignore
13
- export default function<T = any> (moduleName: string): T {
14
- if (isJSRE()) {
15
- // eslint-disable-next-line @typescript-eslint/no-require-imports -- require is needed for dynamic imports
16
- return require(`./jsre/${moduleName}`)
17
- } else {
18
- // eslint-disable-next-line @typescript-eslint/no-require-imports, @typescript-eslint/no-unsafe-member-access -- require is needed for dynamic imports and accessing default export
19
- return require(`./node/${moduleName}`).default
20
- }
21
- }
package/src/fs.ts DELETED
@@ -1,40 +0,0 @@
1
- import _require from './_require'
2
- import type { PathLike, WriteStream, Stats } from 'fs'
3
- export default _require<IFs>('fs')
4
- export type { WriteStream } from 'fs'
5
- export interface IFs {
6
- WriteStream: WriteStream
7
- createWriteStream: (path: PathLike, options?: StreamOptions) => WriteStream
8
- stat: (path: PathLike) => Promise<Stats>
9
- rename: (oldPath: PathLike, newPath: PathLike) => Promise<void>
10
- mkdir: (path: PathLike, options?: any) => Promise<void>
11
- mkdirSync: (path: PathLike, options: any) => void
12
- }
13
-
14
- export function createWriteStream(path: PathLike, options?: StreamOptions): WriteStream {
15
- return _require<IFs>('fs').createWriteStream(path, options)
16
- }
17
-
18
- export async function stat(path: PathLike): Promise<Stats> {
19
- return await _require<IFs>('fs').stat(path)
20
- }
21
-
22
- export async function rename(oldPath: PathLike, newPath: PathLike): Promise<void> {
23
- await _require<IFs>('fs').rename(oldPath, newPath)
24
- }
25
-
26
- export async function mkdir(path: PathLike, options?: any): Promise<void> {
27
- await _require<IFs>('fs').mkdir(path, options)
28
- }
29
-
30
- export function mkdirSync(path: PathLike, options: any): void {
31
- _require<IFs>('fs').mkdirSync(path, options)
32
- }
33
-
34
- interface StreamOptions {
35
- flags?: string | undefined
36
- mode?: string | undefined
37
- start?: number | undefined
38
- autoClose?: boolean | undefined
39
- emitClose?: boolean | undefined
40
- }
package/src/index.ts DELETED
@@ -1 +0,0 @@
1
- export * from './fs'
package/src/jsre/fs.js DELETED
@@ -1,44 +0,0 @@
1
- const fs = require('fs')
2
-
3
- const brokerFs = {
4
-
5
- createWriteStream: (path, options) => fs.createWriteStream(path, options),
6
-
7
- stat: async (path) => await new Promise((resolve, reject) => {
8
- try {
9
- const stats = fs.statSync(path)
10
- resolve(stats)
11
- } catch (error) {
12
- reject(new Error((error).message))
13
- }
14
- }),
15
-
16
- rename: async (oldPath, newPath) => {
17
- await new Promise((resolve, reject) => {
18
- fs.rename(oldPath, newPath, (err) => {
19
- if (err) {
20
- reject(err)
21
- } else {
22
- resolve(undefined)
23
- }
24
- })
25
- })
26
- },
27
-
28
- mkdir: async (path, options) => {
29
- await new Promise((resolve, reject) => {
30
- fs.mkdir(path, options, (err) => {
31
- if (err) {
32
- reject(err)
33
- } else {
34
- resolve(undefined)
35
- }
36
- })
37
- })
38
- },
39
- mkdirSync: (path, options) => {
40
- fs.mkdir(path, options.mode, !!options.recursive)
41
- },
42
- }
43
-
44
- module.exports = brokerFs
package/src/node/fs.ts DELETED
@@ -1,20 +0,0 @@
1
- import * as fs from 'fs/promises'
2
- import { type PathLike, type WriteStream, createWriteStream, mkdirSync } from 'fs'
3
-
4
- export interface BrokerFs {
5
- createWriteStream: (options?: any) => WriteStream
6
- stat: (path: PathLike) => Promise<any>
7
- rename: (oldPath: PathLike, newPath: any) => Promise<void>
8
- mkdir: (path: PathLike, options?: string | number) => Promise<void>
9
- mkdirSync: (path: PathLike, options: string | number) => void
10
- }
11
- const brokerFs: BrokerFs = {
12
- ...fs,
13
- createWriteStream,
14
- stat: fs.stat,
15
- rename: fs.rename,
16
- mkdir: fs.mkdir,
17
- mkdirSync,
18
- }
19
-
20
- export default brokerFs
package/tsconfig.json DELETED
@@ -1,19 +0,0 @@
1
- {
2
- "extends": "@tsconfig/node20/tsconfig.json",
3
- "compilerOptions": {
4
- "declaration": true,
5
- "outDir": "dist",
6
- "inlineSourceMap": true,
7
- "inlineSources": true,
8
- "experimentalDecorators": true,
9
- "emitDecoratorMetadata": true,
10
- "allowJs": true,
11
- "checkJs": false,
12
- "strictNullChecks": true,
13
- "module": "commonjs",
14
- "moduleResolution": "node"
15
- },
16
- "include": [
17
- "src/*",
18
- ]
19
- }