@pkgr/core 0.3.1 → 0.3.2

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/lib/helpers.d.ts CHANGED
@@ -15,7 +15,5 @@ export interface FindUpOptions {
15
15
  search?: string[] | string;
16
16
  type?: FileTypes;
17
17
  stop?: string;
18
- throwOnStopNotFound?: boolean;
19
- throwOnInvalidStop?: boolean;
20
18
  }
21
19
  export declare const findUp: (entryOrOptions?: FindUpOptions | string, options?: FindUpOptions) => string;
package/lib/helpers.js CHANGED
@@ -16,7 +16,11 @@ export const tryFileStats = (filename, type = 'file', base = CWD) => {
16
16
  }
17
17
  if (typeof filename === 'string') {
18
18
  const filepath = path.resolve(base, filename);
19
- const stats = fs.statSync(filepath, { throwIfNoEntry: false });
19
+ let stats;
20
+ try {
21
+ stats = fs.statSync(filepath, { throwIfNoEntry: false });
22
+ }
23
+ catch { }
20
24
  return stats &&
21
25
  (isAnyFileType(type) ||
22
26
  (Array.isArray(type) ? type : [type]).some(type => stats[`is${type[0].toUpperCase()}${type.slice(1)}`]()))
@@ -42,41 +46,8 @@ export const findUp = (entryOrOptions, options) => {
42
46
  ...options,
43
47
  };
44
48
  }
45
- let { entry = CWD, search = 'package.json', type, stop, throwOnStopNotFound, throwOnInvalidStop, } = options ?? {};
49
+ let { entry = CWD, search = 'package.json', type, stop } = options ?? {};
46
50
  search = Array.isArray(search) ? search : [search];
47
- if (stop) {
48
- const stopStats = tryFileStats(stop, ['file', 'directory']);
49
- if (!stopStats) {
50
- const message = `Cannot find stop path: ${stop}`;
51
- if (throwOnStopNotFound) {
52
- throw new Error(message);
53
- }
54
- else if (throwOnStopNotFound !== false) {
55
- console.warn(message);
56
- }
57
- return '';
58
- }
59
- stop = stopStats.stats.isDirectory()
60
- ? stopStats.filepath
61
- : path.dirname(stopStats.filepath);
62
- if (entry !== stop && !entry.startsWith(stop + path.sep)) {
63
- const message = `Invalid stop path: ${stop} is not a parent of ${entry}`;
64
- if (throwOnInvalidStop) {
65
- throw new Error(message);
66
- }
67
- else if (throwOnInvalidStop !== false) {
68
- console.warn(message);
69
- }
70
- return '';
71
- }
72
- }
73
- const entryStats = tryFileStats(entry, ['file', 'directory']);
74
- if (!entryStats) {
75
- return '';
76
- }
77
- entry = entryStats.stats.isDirectory()
78
- ? entryStats.filepath
79
- : path.dirname(entryStats.filepath);
80
51
  do {
81
52
  const searched = tryFile(search, type, entry);
82
53
  if (searched) {
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../src/helpers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../src/helpers.ts"],"names":[],"mappings":"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"}
package/lib/index.cjs CHANGED
@@ -26,7 +26,11 @@ const tryFileStats = (filename, type = "file", base = CWD) => {
26
26
  }
27
27
  if (typeof filename === "string") {
28
28
  const filepath = path.resolve(base, filename);
29
- const stats = fs.statSync(filepath, { throwIfNoEntry: false });
29
+ let stats;
30
+ try {
31
+ stats = fs.statSync(filepath, { throwIfNoEntry: false });
32
+ } catch {
33
+ }
30
34
  return stats && (isAnyFileType(type) || (Array.isArray(type) ? type : [type]).some(
31
35
  (type2) => stats[`is${type2[0].toUpperCase()}${type2.slice(1)}`]()
32
36
  )) ? { filepath, stats } : void 0;
@@ -50,42 +54,8 @@ const findUp = (entryOrOptions, options) => {
50
54
  ...options
51
55
  };
52
56
  }
53
- let {
54
- entry = CWD,
55
- search = "package.json",
56
- type,
57
- stop,
58
- throwOnStopNotFound,
59
- throwOnInvalidStop
60
- } = options ?? {};
57
+ let { entry = CWD, search = "package.json", type, stop } = options ?? {};
61
58
  search = Array.isArray(search) ? search : [search];
62
- if (stop) {
63
- const stopStats = tryFileStats(stop, ["file", "directory"]);
64
- if (!stopStats) {
65
- const message = `Cannot find stop path: ${stop}`;
66
- if (throwOnStopNotFound) {
67
- throw new Error(message);
68
- } else if (throwOnStopNotFound !== false) {
69
- console.warn(message);
70
- }
71
- return "";
72
- }
73
- stop = stopStats.stats.isDirectory() ? stopStats.filepath : path.dirname(stopStats.filepath);
74
- if (entry !== stop && !entry.startsWith(stop + path.sep)) {
75
- const message = `Invalid stop path: ${stop} is not a parent of ${entry}`;
76
- if (throwOnInvalidStop) {
77
- throw new Error(message);
78
- } else if (throwOnInvalidStop !== false) {
79
- console.warn(message);
80
- }
81
- return "";
82
- }
83
- }
84
- const entryStats = tryFileStats(entry, ["file", "directory"]);
85
- if (!entryStats) {
86
- return "";
87
- }
88
- entry = entryStats.stats.isDirectory() ? entryStats.filepath : path.dirname(entryStats.filepath);
89
59
  do {
90
60
  const searched = tryFile(search, type, entry);
91
61
  if (searched) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pkgr/core",
3
- "version": "0.3.1",
3
+ "version": "0.3.2",
4
4
  "type": "module",
5
5
  "description": "Shared core module for `@pkgr` packages or any package else",
6
6
  "repository": "git+https://github.com/un-ts/pkgr.git",