@mrts/common-node 0.3.38 → 0.3.40

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.
@@ -1 +1 @@
1
- {"version":3,"file":"DataBuilder.d.ts","sourceRoot":"","sources":["../../src/paths/DataBuilder.ts"],"names":[],"mappings":"AACA,OAAO,EAGL,IAAI,EAEJ,KAAK,YAAY,EAClB,MAAM,WAAW,CAAC;AACnB,OAAO,EAAE,MAAM,SAAS,CAAC;AAEzB,MAAM,MAAM,eAAe,CAAC,CAAC,IAAI;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC;CAC1C,CAAC;AAEF,MAAM,MAAM,kBAAkB,CAAC,CAAC,IAAI;IAClC,OAAO,EAAE,YAAY,CAAC;IACtB,YAAY,CAAC,EAAE,CAAC,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACrD,MAAM,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,KAAK,CAAC,CAAC;IACxB,MAAM,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,KAAK,IAAI,CAAC;CACrC,CAAC;AAcF,KAAK,QAAQ,CAAC,CAAC,IAAI,eAAe,CAAC,CAAC,CAAC,GAAG;IACtC,KAAK,EAAE,EAAE,CAAC,KAAK,GAAG,SAAS,CAAC;IAC5B,IAAI,EAAE,CAAC,GAAG,SAAS,CAAC;CACrB,CAAC;AAEF,qBAAa,WAAW,CAAC,CAAC,GAAG,GAAG;IAC9B,OAAO,EAAE,IAAI,CAAC;IACd,YAAY,EAAE,CAAC,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACpD,MAAM,EAAE,CAAC,CAAC,EAAE,IAAI,KAAK,CAAC,CAAC;IACvB,MAAM,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,KAAK,IAAI,CAAC;IACnC,OAAO,CAAC,KAAK,CAAmC;gBAG9C,KAAK,EAAE,eAAe,CAAC,CAAC,CAAC,EAAE,EAC3B,OAAO,EAAE,YAAY,GAAG,kBAAkB,CAAC,CAAC,CAAC;IAa/C,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAI1B,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,CAAC;IAepB,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC;IAM9B,SAAS,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC;IAsB/B,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAI/B,IAAI,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC;CAGjB"}
1
+ {"version":3,"file":"DataBuilder.d.ts","sourceRoot":"","sources":["../../src/paths/DataBuilder.ts"],"names":[],"mappings":"AACA,OAAO,EAGL,IAAI,EACJ,KAAK,YAAY,EAClB,MAAM,WAAW,CAAC;AACnB,OAAO,EAAE,MAAM,SAAS,CAAC;AAGzB,MAAM,MAAM,eAAe,CAAC,CAAC,IAAI;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC;CAC1C,CAAC;AAEF,MAAM,MAAM,kBAAkB,CAAC,CAAC,IAAI;IAClC,OAAO,EAAE,YAAY,CAAC;IACtB,YAAY,CAAC,EAAE,CAAC,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACrD,MAAM,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,KAAK,CAAC,CAAC;IACxB,MAAM,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,KAAK,IAAI,CAAC;CACrC,CAAC;AAcF,KAAK,QAAQ,CAAC,CAAC,IAAI,eAAe,CAAC,CAAC,CAAC,GAAG;IACtC,KAAK,EAAE,EAAE,CAAC,KAAK,GAAG,SAAS,CAAC;IAC5B,IAAI,EAAE,CAAC,GAAG,SAAS,CAAC;CACrB,CAAC;AAEF,qBAAa,WAAW,CAAC,CAAC,GAAG,GAAG;IAC9B,OAAO,EAAE,IAAI,CAAC;IACd,YAAY,EAAE,CAAC,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACpD,MAAM,EAAE,CAAC,CAAC,EAAE,IAAI,KAAK,CAAC,CAAC;IACvB,MAAM,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,KAAK,IAAI,CAAC;IACnC,OAAO,CAAC,KAAK,CAAmC;gBAG9C,KAAK,EAAE,eAAe,CAAC,CAAC,CAAC,EAAE,EAC3B,OAAO,EAAE,YAAY,GAAG,kBAAkB,CAAC,CAAC,CAAC;IAa/C,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAI1B,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,CAAC;IAepB,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC;IAM9B,SAAS,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC;IAsB/B,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAI/B,IAAI,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC;CAGjB"}
@@ -1,6 +1,7 @@
1
1
  import { scryptSync } from "node:crypto";
2
- import { ensurePath, isPathArgument, Path, updateNeededSync, } from "./Path.js";
2
+ import { ensurePath, isPathArgument, Path, } from "./Path.js";
3
3
  import fs from "node:fs";
4
+ import { updateNeededSync } from "./updateNeeded.js";
4
5
  function defaultPathResolver(baseDir, name) {
5
6
  return baseDir.join(`${name}.json`);
6
7
  }
@@ -1 +1 @@
1
- {"version":3,"file":"DataBuilder.js","sourceRoot":"","sources":["../../src/paths/DataBuilder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DataBuilder.js","sourceRoot":"","sources":["../../src/paths/DataBuilder.ts"],"names":[],"mappings":"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"}
@@ -7,14 +7,14 @@ export type StatsConditions = {
7
7
  export declare class Path {
8
8
  private p;
9
9
  private _parts;
10
- private statsLoaded;
11
- private _stats?;
10
+ private _parent;
12
11
  constructor(p: string | Path);
13
12
  get parts(): path.ParsedPath;
13
+ get parent(): Path;
14
14
  join(...steps: PathArgument[]): Path;
15
15
  resolve(...paths: PathArgument[]): Path;
16
16
  relative(parg: PathArgument): Path;
17
- stats(reload?: boolean): Promise<fs.Stats | undefined>;
17
+ stats(): Promise<fs.Stats | undefined>;
18
18
  statsSync(reload?: boolean): fs.Stats | undefined;
19
19
  exists(conditions?: StatsConditions): Promise<boolean>;
20
20
  existsSync(conditions?: {
@@ -40,6 +40,10 @@ export declare class Path {
40
40
  mkdirSync(options?: fs.MakeDirectoryOptions & {
41
41
  existOk?: boolean;
42
42
  }): string | undefined;
43
+ createFile(): Promise<void>;
44
+ createFileSync(): void;
45
+ touch(): Promise<void>;
46
+ touchSync(): void;
43
47
  accessible(mode?: number): boolean;
44
48
  }
45
49
  export type PathArgument = Path | string;
@@ -50,8 +54,4 @@ export declare function pathArgumentToString(arg: PathArgument): string;
50
54
  export declare function pathArgumentToString(arg: undefined): undefined;
51
55
  export declare function pathArgumentToString(arg: PathArgument | undefined): string | undefined;
52
56
  export declare function pathArgumentToStringDefined(arg: PathArgument): string;
53
- export declare function updateNeededSync(source: PathArgument | PathArgument[], dest: PathArgument | PathArgument[], options?: {
54
- onMissingDest?: boolean;
55
- onMissingSource?: boolean;
56
- }): boolean;
57
57
  //# sourceMappingURL=Path.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Path.d.ts","sourceRoot":"","sources":["../../src/paths/Path.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Path.d.ts","sourceRoot":"","sources":["../../src/paths/Path.ts"],"names":[],"mappings":"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"}
@@ -4,8 +4,7 @@ import fs, { constants } from "node:fs";
4
4
  export class Path {
5
5
  p;
6
6
  _parts;
7
- statsLoaded = false;
8
- _stats;
7
+ _parent;
9
8
  constructor(p) {
10
9
  if (p instanceof Path) {
11
10
  this.p = p.p;
@@ -18,6 +17,12 @@ export class Path {
18
17
  get parts() {
19
18
  return this._parts;
20
19
  }
20
+ get parent() {
21
+ if (this._parent == undefined) {
22
+ this._parent = new Path(path.dirname(this.p));
23
+ }
24
+ return this._parent;
25
+ }
21
26
  join(...steps) {
22
27
  return new Path(path.join(this.p, ...steps.map(pathArgumentToStringDefined)));
23
28
  }
@@ -34,43 +39,36 @@ export class Path {
34
39
  return new Path(relPath);
35
40
  }
36
41
  }
37
- async stats(reload = false) {
38
- if (!reload && this.statsLoaded) {
39
- return this._stats;
40
- }
42
+ async stats() {
41
43
  try {
42
- this._stats = await fsp.stat(this.p);
43
- this.statsLoaded = true;
44
+ const stats = await fsp.stat(this.p);
45
+ return stats;
44
46
  }
45
47
  catch (err) {
46
48
  if ((err.code = "ENOENT")) {
47
- this.statsLoaded = true;
48
- this._stats = undefined;
49
+ return undefined;
49
50
  }
50
51
  else {
51
52
  throw err;
52
53
  }
53
54
  }
54
- return this._stats;
55
55
  }
56
56
  statsSync(reload = false) {
57
- if (!reload && this.statsLoaded) {
58
- return this._stats;
59
- }
57
+ // if (!reload && this.statsLoaded) {
58
+ // return this._stats;
59
+ // }
60
60
  try {
61
- this._stats = fs.statSync(this.p);
62
- this.statsLoaded = true;
61
+ const stats = fs.statSync(this.p);
62
+ return stats;
63
63
  }
64
64
  catch (err) {
65
65
  if ((err.code = "ENOENT")) {
66
- this.statsLoaded = true;
67
- this._stats = undefined;
66
+ return undefined;
68
67
  }
69
68
  else {
70
69
  throw err;
71
70
  }
72
71
  }
73
- return this._stats;
74
72
  }
75
73
  async exists(conditions = {}) {
76
74
  const stats = await this.stats();
@@ -85,12 +83,12 @@ export class Path {
85
83
  return false;
86
84
  }
87
85
  if (conditions.isDir != undefined) {
88
- if (stats.isDirectory() != conditions.isDir) {
86
+ if (!!stats.isDirectory() != conditions.isDir) {
89
87
  return false;
90
88
  }
91
89
  }
92
90
  if (conditions.isFile != undefined) {
93
- if (stats.isFile() != conditions.isFile) {
91
+ if (!!stats.isFile() != conditions.isFile) {
94
92
  return false;
95
93
  }
96
94
  }
@@ -166,6 +164,40 @@ export class Path {
166
164
  }
167
165
  }
168
166
  }
167
+ async createFile() {
168
+ const stats = await this.stats();
169
+ if (stats && stats.isFile())
170
+ return;
171
+ const dir = this.parent;
172
+ const dirStats = await dir.stats();
173
+ if (!dirStats || !dirStats.isDirectory()) {
174
+ // parent is not a directory
175
+ throw new Error(`Parent directory not available for ${this.s}`);
176
+ }
177
+ await fsp.writeFile(this.s, "");
178
+ }
179
+ createFileSync() {
180
+ const stats = this.statsSync();
181
+ if (stats && stats.isFile())
182
+ return;
183
+ const dir = this.parent;
184
+ const dirStats = dir.statsSync();
185
+ if (!dirStats || !dirStats.isDirectory()) {
186
+ // parent is not a directory
187
+ throw new Error(`Parent directory not available for ${this.s}`);
188
+ }
189
+ fs.writeFileSync(this.s, "");
190
+ }
191
+ async touch() {
192
+ await this.createFile();
193
+ const now = Date.now();
194
+ await fsp.utimes(this.s, now, now);
195
+ }
196
+ touchSync() {
197
+ this.createFileSync();
198
+ const now = new Date();
199
+ fs.utimesSync(this.s, now, now);
200
+ }
169
201
  accessible(mode) {
170
202
  mode ??= constants.R_OK;
171
203
  try {
@@ -193,77 +225,4 @@ export function pathArgumentToString(arg) {
193
225
  export function pathArgumentToStringDefined(arg) {
194
226
  return typeof arg == "string" ? arg : arg.toString();
195
227
  }
196
- export function updateNeededSync(source, dest, options = {}) {
197
- const opt = { onMissingDest: true, onMissingSource: true, ...options };
198
- let srcFound = 0;
199
- let srcMTime = 0;
200
- let dstFound = 0;
201
- let dstMTime = 0;
202
- const sourceList = Array.isArray(source) ? source : [source];
203
- for (const src of sourceList) {
204
- const srcPath = ensurePath(src);
205
- const stats = srcPath.statsSync(true); // undefined if not exists
206
- if (stats != undefined) {
207
- if (srcFound == 0) {
208
- srcMTime = stats.mtimeMs;
209
- }
210
- srcFound += 1;
211
- if (stats.mtimeMs > srcMTime) {
212
- srcMTime = stats.mtimeMs;
213
- }
214
- }
215
- }
216
- const destList = Array.isArray(dest) ? dest : [dest];
217
- for (const dst of destList) {
218
- const dstPath = ensurePath(dst);
219
- const stats = dstPath.statsSync(true); // undefined if not exists
220
- if (stats != undefined) {
221
- if (dstFound == 0) {
222
- dstMTime = stats.mtimeMs;
223
- }
224
- dstFound += 1;
225
- if (stats.mtimeMs < dstMTime) {
226
- dstMTime = stats.mtimeMs;
227
- }
228
- }
229
- }
230
- if (destList.length == 0) {
231
- return true;
232
- }
233
- else if (sourceList.length == 0) {
234
- if (dstFound == destList.length) {
235
- return false;
236
- }
237
- else {
238
- return opt.onMissingDest;
239
- }
240
- }
241
- // destList.length > 0 && sourceList.length > 0
242
- if (srcFound == sourceList.length) {
243
- if (dstFound == destList.length) {
244
- return srcMTime > dstMTime;
245
- }
246
- else if (dstFound > 0) {
247
- return opt.onMissingDest ? true : srcMTime > dstMTime;
248
- }
249
- else {
250
- return true;
251
- }
252
- }
253
- else {
254
- // srcFound < expected
255
- if (opt.onMissingSource) {
256
- return true;
257
- }
258
- if (dstFound == destList.length) {
259
- return srcMTime > dstMTime;
260
- }
261
- else if (dstFound > 0) {
262
- return opt.onMissingDest ? true : srcMTime > dstMTime;
263
- }
264
- else {
265
- return true;
266
- }
267
- }
268
- }
269
228
  //# sourceMappingURL=Path.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Path.js","sourceRoot":"","sources":["../../src/paths/Path.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Path.js","sourceRoot":"","sources":["../../src/paths/Path.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
1
  export * from "./Path.js";
2
+ export * from "./updateNeeded.js";
2
3
  export * from "./DataBuilder.js";
3
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/paths/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAA;AACzB,cAAc,kBAAkB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/paths/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC;AAC1B,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC"}
@@ -1,3 +1,4 @@
1
1
  export * from "./Path.js";
2
+ export * from "./updateNeeded.js";
2
3
  export * from "./DataBuilder.js";
3
4
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/paths/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAA;AACzB,cAAc,kBAAkB,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/paths/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC;AAC1B,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC"}
@@ -0,0 +1,7 @@
1
+ import { type PathArgument } from "./Path.js";
2
+ type TOnMissingSource = "fail" | "update" | "ignore";
3
+ export declare function updateNeededSync(source: PathArgument | PathArgument[], dest: PathArgument | PathArgument[], options?: {
4
+ onMissingSource: TOnMissingSource;
5
+ } | TOnMissingSource): boolean;
6
+ export {};
7
+ //# sourceMappingURL=updateNeeded.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"updateNeeded.d.ts","sourceRoot":"","sources":["../../src/paths/updateNeeded.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,KAAK,YAAY,EAAE,MAAM,WAAW,CAAC;AAE1D,KAAK,gBAAgB,GAAG,MAAM,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAErD,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,YAAY,GAAG,YAAY,EAAE,EACrC,IAAI,EAAE,YAAY,GAAG,YAAY,EAAE,EAEnC,OAAO,GACH;IACE,eAAe,EAAE,gBAAgB,CAAC;CACnC,GACD,gBAA2B,GAC9B,OAAO,CA6ET"}
@@ -0,0 +1,70 @@
1
+ import { ensurePath } from "./Path.js";
2
+ export function updateNeededSync(source, dest, options = "update") {
3
+ const opt = typeof options == "string" ? { onMissingSource: options } : options;
4
+ // collect data
5
+ let srcFound = 0;
6
+ let srcMTime = 0;
7
+ let dstFound = 0;
8
+ let dstMTime = 0;
9
+ const srcList = Array.isArray(source) ? source : [source];
10
+ for (const src of srcList) {
11
+ const srcPath = ensurePath(src);
12
+ const stats = srcPath.statsSync(true); // undefined if not exists
13
+ if (stats != undefined) {
14
+ if (srcFound == 0) {
15
+ srcMTime = stats.mtimeMs;
16
+ }
17
+ srcFound += 1;
18
+ if (stats.mtimeMs > srcMTime) {
19
+ srcMTime = stats.mtimeMs;
20
+ }
21
+ }
22
+ }
23
+ const dstList = Array.isArray(dest) ? dest : [dest];
24
+ for (const dst of dstList) {
25
+ const dstPath = ensurePath(dst);
26
+ const stats = dstPath.statsSync(true); // undefined if not exists
27
+ if (stats != undefined) {
28
+ if (dstFound == 0) {
29
+ dstMTime = stats.mtimeMs;
30
+ }
31
+ dstFound += 1;
32
+ if (stats.mtimeMs < dstMTime) {
33
+ dstMTime = stats.mtimeMs;
34
+ }
35
+ }
36
+ }
37
+ // decide
38
+ if (dstList.length == 0) {
39
+ return false;
40
+ }
41
+ if (dstFound < dstList.length) {
42
+ return true;
43
+ }
44
+ if (srcList.length == 0) {
45
+ // dstFound == dstList.
46
+ return false;
47
+ }
48
+ if (srcFound < srcList.length) {
49
+ if (opt.onMissingSource == "fail") {
50
+ throw new Error(`Missing source files : ${srcFound}/${srcList.length}`);
51
+ }
52
+ else if (opt.onMissingSource == "update") {
53
+ return true;
54
+ }
55
+ else {
56
+ // opt.onMissingSource == "ignore"
57
+ if (srcFound > 0) {
58
+ return srcMTime > dstMTime;
59
+ }
60
+ else {
61
+ return false;
62
+ }
63
+ }
64
+ }
65
+ // here:
66
+ // - dstList.length > 0 && srcList.length > 0
67
+ // - dstFound == dstList.length && srcFound == srcList.length
68
+ return srcMTime > dstMTime;
69
+ }
70
+ //# sourceMappingURL=updateNeeded.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"updateNeeded.js","sourceRoot":"","sources":["../../src/paths/updateNeeded.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mrts/common-node",
3
- "version": "0.3.38",
3
+ "version": "0.3.40",
4
4
  "description": "MRTS - common-node",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -36,7 +36,7 @@
36
36
  "publishConfig": {
37
37
  "access": "public"
38
38
  },
39
- "gitHead": "2fd8751fda55c04a902abee423d331a4b12625f7",
39
+ "gitHead": "1735cf87f4f1994063ee7e4aef701f415fe1756a",
40
40
  "dependencies": {
41
41
  "@mrts/common": "^0.3.36"
42
42
  }