@nerax-ai/storage 0.0.1 → 0.0.3
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/dist/index.js +59 -53
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +61 -0
- package/dist/index.mjs.map +1 -0
- package/package.json +5 -9
package/dist/index.js
CHANGED
|
@@ -1,58 +1,64 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var path = require('path');
|
|
4
|
+
var os = require('os');
|
|
5
|
+
var fs$1 = require('fs/promises');
|
|
6
|
+
var fs = require('fs');
|
|
7
|
+
|
|
8
|
+
"use strict";
|
|
5
9
|
function createDir(base) {
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
10
|
+
function ensure(dir) {
|
|
11
|
+
if (!fs.existsSync(dir))
|
|
12
|
+
fs.mkdirSync(dir, { recursive: true });
|
|
13
|
+
}
|
|
14
|
+
return {
|
|
15
|
+
path: base,
|
|
16
|
+
async read(file) {
|
|
17
|
+
const p = path.join(base, file);
|
|
18
|
+
if (!fs.existsSync(p))
|
|
19
|
+
return void 0;
|
|
20
|
+
return fs$1.readFile(p, "utf8");
|
|
21
|
+
},
|
|
22
|
+
async write(file, content) {
|
|
23
|
+
ensure(path.join(base, path.dirname(file)));
|
|
24
|
+
await fs$1.writeFile(path.join(base, file), content, "utf8");
|
|
25
|
+
},
|
|
26
|
+
async readJSON(file) {
|
|
27
|
+
const raw = await this.read(file);
|
|
28
|
+
if (raw === void 0)
|
|
29
|
+
return void 0;
|
|
30
|
+
try {
|
|
31
|
+
return JSON.parse(raw);
|
|
32
|
+
} catch {
|
|
33
|
+
return void 0;
|
|
34
|
+
}
|
|
35
|
+
},
|
|
36
|
+
async writeJSON(file, data) {
|
|
37
|
+
await this.write(file, JSON.stringify(data, null, 2));
|
|
38
|
+
},
|
|
39
|
+
async delete(file) {
|
|
40
|
+
const p = path.join(base, file);
|
|
41
|
+
if (fs.existsSync(p))
|
|
42
|
+
await fs$1.unlink(p);
|
|
9
43
|
}
|
|
10
|
-
|
|
11
|
-
path: base,
|
|
12
|
-
async read(file) {
|
|
13
|
-
const p = path.join(base, file);
|
|
14
|
-
if (!existsSync(p))
|
|
15
|
-
return undefined;
|
|
16
|
-
return fs.readFile(p, 'utf8');
|
|
17
|
-
},
|
|
18
|
-
async write(file, content) {
|
|
19
|
-
ensure(path.join(base, path.dirname(file)));
|
|
20
|
-
await fs.writeFile(path.join(base, file), content, 'utf8');
|
|
21
|
-
},
|
|
22
|
-
async readJSON(file) {
|
|
23
|
-
const raw = await this.read(file);
|
|
24
|
-
if (raw === undefined)
|
|
25
|
-
return undefined;
|
|
26
|
-
try {
|
|
27
|
-
return JSON.parse(raw);
|
|
28
|
-
}
|
|
29
|
-
catch {
|
|
30
|
-
return undefined;
|
|
31
|
-
}
|
|
32
|
-
},
|
|
33
|
-
async writeJSON(file, data) {
|
|
34
|
-
await this.write(file, JSON.stringify(data, null, 2));
|
|
35
|
-
},
|
|
36
|
-
async delete(file) {
|
|
37
|
-
const p = path.join(base, file);
|
|
38
|
-
if (existsSync(p))
|
|
39
|
-
await fs.unlink(p);
|
|
40
|
-
},
|
|
41
|
-
};
|
|
44
|
+
};
|
|
42
45
|
}
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
46
|
+
function createStorage(appName) {
|
|
47
|
+
const home = os.homedir();
|
|
48
|
+
return {
|
|
49
|
+
data: createDir(path.join(process.env.XDG_DATA_HOME ?? path.join(home, ".local", "share"), appName)),
|
|
50
|
+
config: createDir(path.join(process.env.XDG_CONFIG_HOME ?? path.join(home, ".config"), appName)),
|
|
51
|
+
cache: createDir(path.join(process.env.XDG_CACHE_HOME ?? path.join(home, ".cache"), appName)),
|
|
52
|
+
state: createDir(path.join(process.env.XDG_STATE_HOME ?? path.join(home, ".local", "state"), appName))
|
|
53
|
+
};
|
|
51
54
|
}
|
|
52
|
-
const _cache = new Map();
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
55
|
+
const _cache = /* @__PURE__ */ new Map();
|
|
56
|
+
function getStorage(appName) {
|
|
57
|
+
if (!_cache.has(appName))
|
|
58
|
+
_cache.set(appName, createStorage(appName));
|
|
59
|
+
return _cache.get(appName);
|
|
57
60
|
}
|
|
58
|
-
|
|
61
|
+
|
|
62
|
+
exports.createStorage = createStorage;
|
|
63
|
+
exports.getStorage = getStorage;
|
|
64
|
+
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../src/index.ts"],"sourcesContent":[null],"names":["existsSync","mkdirSync","fs"],"mappings":"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"}
|
package/dist/index.mjs
ADDED
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import path from 'path';
|
|
2
|
+
import os from 'os';
|
|
3
|
+
import fs from 'fs/promises';
|
|
4
|
+
import { existsSync, mkdirSync } from 'fs';
|
|
5
|
+
|
|
6
|
+
"use strict";
|
|
7
|
+
function createDir(base) {
|
|
8
|
+
function ensure(dir) {
|
|
9
|
+
if (!existsSync(dir))
|
|
10
|
+
mkdirSync(dir, { recursive: true });
|
|
11
|
+
}
|
|
12
|
+
return {
|
|
13
|
+
path: base,
|
|
14
|
+
async read(file) {
|
|
15
|
+
const p = path.join(base, file);
|
|
16
|
+
if (!existsSync(p))
|
|
17
|
+
return void 0;
|
|
18
|
+
return fs.readFile(p, "utf8");
|
|
19
|
+
},
|
|
20
|
+
async write(file, content) {
|
|
21
|
+
ensure(path.join(base, path.dirname(file)));
|
|
22
|
+
await fs.writeFile(path.join(base, file), content, "utf8");
|
|
23
|
+
},
|
|
24
|
+
async readJSON(file) {
|
|
25
|
+
const raw = await this.read(file);
|
|
26
|
+
if (raw === void 0)
|
|
27
|
+
return void 0;
|
|
28
|
+
try {
|
|
29
|
+
return JSON.parse(raw);
|
|
30
|
+
} catch {
|
|
31
|
+
return void 0;
|
|
32
|
+
}
|
|
33
|
+
},
|
|
34
|
+
async writeJSON(file, data) {
|
|
35
|
+
await this.write(file, JSON.stringify(data, null, 2));
|
|
36
|
+
},
|
|
37
|
+
async delete(file) {
|
|
38
|
+
const p = path.join(base, file);
|
|
39
|
+
if (existsSync(p))
|
|
40
|
+
await fs.unlink(p);
|
|
41
|
+
}
|
|
42
|
+
};
|
|
43
|
+
}
|
|
44
|
+
function createStorage(appName) {
|
|
45
|
+
const home = os.homedir();
|
|
46
|
+
return {
|
|
47
|
+
data: createDir(path.join(process.env.XDG_DATA_HOME ?? path.join(home, ".local", "share"), appName)),
|
|
48
|
+
config: createDir(path.join(process.env.XDG_CONFIG_HOME ?? path.join(home, ".config"), appName)),
|
|
49
|
+
cache: createDir(path.join(process.env.XDG_CACHE_HOME ?? path.join(home, ".cache"), appName)),
|
|
50
|
+
state: createDir(path.join(process.env.XDG_STATE_HOME ?? path.join(home, ".local", "state"), appName))
|
|
51
|
+
};
|
|
52
|
+
}
|
|
53
|
+
const _cache = /* @__PURE__ */ new Map();
|
|
54
|
+
function getStorage(appName) {
|
|
55
|
+
if (!_cache.has(appName))
|
|
56
|
+
_cache.set(appName, createStorage(appName));
|
|
57
|
+
return _cache.get(appName);
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
export { createStorage, getStorage };
|
|
61
|
+
//# sourceMappingURL=index.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../src/index.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,14 +1,17 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@nerax-ai/storage",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.3",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
7
|
+
"source": "./src/index.ts",
|
|
8
|
+
"module": "./dist/index.mjs",
|
|
7
9
|
"types": "./dist/index.d.ts",
|
|
8
10
|
"exports": {
|
|
9
11
|
".": {
|
|
10
12
|
"types": "./dist/index.d.ts",
|
|
11
|
-
"
|
|
13
|
+
"require": "./dist/index.js",
|
|
14
|
+
"import": "./dist/index.mjs"
|
|
12
15
|
}
|
|
13
16
|
},
|
|
14
17
|
"files": [
|
|
@@ -16,12 +19,5 @@
|
|
|
16
19
|
],
|
|
17
20
|
"publishConfig": {
|
|
18
21
|
"access": "public"
|
|
19
|
-
},
|
|
20
|
-
"scripts": {
|
|
21
|
-
"build": "rm -rf dist tsconfig.tsbuildinfo && tsc",
|
|
22
|
-
"dev": "tsc --watch",
|
|
23
|
-
"lint": "tsc --noEmit",
|
|
24
|
-
"test": "bun test",
|
|
25
|
-
"clean": "rm -rf dist"
|
|
26
22
|
}
|
|
27
23
|
}
|