@jayf0x/npm-exists 2.0.4 → 2.0.6

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/README.md CHANGED
@@ -34,12 +34,6 @@ const url = await npmExists('my-pkg', 'https://my.private.registry.io')
34
34
  const url = await npmExists('react', { silent: true })
35
35
  ```
36
36
 
37
- ```js
38
- // Full metadata (GET instead of HEAD)
39
- const meta = await npmExists('react', { full: true })
40
- // → { name, description, 'dist-tags', versions, ... } | false
41
- ```
42
-
43
37
  ```js
44
38
  // Build your own fetch
45
39
  import { getNpmUrl } from '@jayf0x/npm-exists'
@@ -64,10 +58,10 @@ Exit codes: `0` exists · `1` not found · `2` bad usage
64
58
  | Param | Type | Description |
65
59
  |---|---|---|
66
60
  | `pkg` | `string` | Package name |
67
- | `registryOrOptions` | `string \| { registry?, silent?, full? }` | Registry URL or options object |
68
- | `options` | `{ silent?, full? }` | `silent`: errors `false`; `full`: GET full metadata instead of HEAD |
61
+ | `registryOrOptions` | `string \| { registry?, silent? }` | Registry URL or options object |
62
+ | `options` | `{ silent? }` | `silent: true` returns `false` instead of throwing on error |
69
63
 
70
- Returns `Promise<string \| Record<string, unknown> \| false>`
64
+ Returns `Promise<string \| false>`
71
65
 
72
66
  ### `getNpmUrl(pkg, registry?)`
73
67
 
package/bin/npm-exists.js CHANGED
File without changes
package/dist/index.cjs CHANGED
@@ -12,23 +12,18 @@ function getPageUrl(pkg, registry) {
12
12
  async function npmExists(pkg, registryOrOptions, options) {
13
13
  let registry = DEFAULT_REGISTRY;
14
14
  let silent = false;
15
- let full = false;
16
15
  if (typeof registryOrOptions === "string") {
17
16
  registry = registryOrOptions;
18
17
  silent = options?.silent ?? false;
19
- full = options?.full ?? false;
20
18
  } else if (registryOrOptions != null) {
21
19
  registry = registryOrOptions.registry ?? DEFAULT_REGISTRY;
22
20
  silent = registryOrOptions.silent ?? false;
23
- full = registryOrOptions.full ?? false;
24
21
  }
25
22
  try {
26
- const res = await fetch(getNpmUrl(pkg, registry), {
27
- method: full ? "GET" : "HEAD"
28
- });
23
+ const res = await fetch(getNpmUrl(pkg, registry), { method: "HEAD" });
29
24
  if (res.status === 404) return false;
30
25
  if (!res.ok) throw new Error(`npm registry error: HTTP ${res.status}`);
31
- return full ? res.json() : getPageUrl(pkg, registry);
26
+ return getPageUrl(pkg, registry);
32
27
  } catch (err) {
33
28
  if (silent) return false;
34
29
  throw err;
package/dist/index.d.ts CHANGED
@@ -4,18 +4,16 @@ export interface NpmExistsOptions {
4
4
  registry?: string
5
5
  /** Suppress errors — network/registry failures return false instead of throwing */
6
6
  silent?: boolean
7
- /** Fetch full registry metadata instead of a lightweight HEAD check */
8
- full?: boolean
9
7
  }
10
8
 
11
9
  /**
12
10
  * Checks if an npm package exists.
13
- * Returns the npm page URL by default, or full registry metadata with `full: true`.
11
+ * Returns the npm page URL, or false if not found.
14
12
  */
15
13
  export declare function npmExists(
16
14
  pkg: string,
17
15
  registryOrOptions?: string | NpmExistsOptions,
18
- options?: Pick<NpmExistsOptions, 'silent' | 'full'>
19
- ): Promise<string | Record<string, unknown> | false>
16
+ options?: NpmExistsOptions
17
+ ): Promise<string | false>
20
18
 
21
19
  export default npmExists
package/dist/index.js CHANGED
@@ -10,23 +10,18 @@ function getPageUrl(pkg, registry) {
10
10
  async function npmExists(pkg, registryOrOptions, options) {
11
11
  let registry = DEFAULT_REGISTRY;
12
12
  let silent = false;
13
- let full = false;
14
13
  if (typeof registryOrOptions === "string") {
15
14
  registry = registryOrOptions;
16
15
  silent = options?.silent ?? false;
17
- full = options?.full ?? false;
18
16
  } else if (registryOrOptions != null) {
19
17
  registry = registryOrOptions.registry ?? DEFAULT_REGISTRY;
20
18
  silent = registryOrOptions.silent ?? false;
21
- full = registryOrOptions.full ?? false;
22
19
  }
23
20
  try {
24
- const res = await fetch(getNpmUrl(pkg, registry), {
25
- method: full ? "GET" : "HEAD"
26
- });
21
+ const res = await fetch(getNpmUrl(pkg, registry), { method: "HEAD" });
27
22
  if (res.status === 404) return false;
28
23
  if (!res.ok) throw new Error(`npm registry error: HTTP ${res.status}`);
29
- return full ? res.json() : getPageUrl(pkg, registry);
24
+ return getPageUrl(pkg, registry);
30
25
  } catch (err) {
31
26
  if (silent) return false;
32
27
  throw err;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jayf0x/npm-exists",
3
- "version": "2.0.4",
3
+ "version": "2.0.6",
4
4
  "description": "Check if an npm package name is taken. Zero dependencies, uses native fetch.",
5
5
  "type": "module",
6
6
  "main": "./dist/index.cjs",
@@ -52,11 +52,11 @@
52
52
  "license": "MIT",
53
53
  "repository": {
54
54
  "type": "git",
55
- "url": "git+https://github.com/jayverstraete/npm-exists.git"
55
+ "url": "git+https://github.com/jayF0x/npm-exists.git"
56
56
  },
57
- "homepage": "https://github.com/jayverstraete/npm-exists#readme",
57
+ "homepage": "https://github.com/jayF0x/npm-exists#readme",
58
58
  "bugs": {
59
- "url": "https://github.com/jayverstraete/npm-exists/issues"
59
+ "url": "https://github.com/jayF0x/npm-exists/issues"
60
60
  },
61
61
  "engines": {
62
62
  "node": ">=18"