Skip to content

Commit f289b3a

Browse files
committed
chore: update repo
1 parent 8c508e0 commit f289b3a

11 files changed

Lines changed: 3901 additions & 3214 deletions

File tree

.eslintrc

Lines changed: 0 additions & 9 deletions
This file was deleted.

.github/workflows/autofix.yml

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
name: autofix.ci # needed to securely identify the workflow
2+
3+
on:
4+
pull_request:
5+
push:
6+
branches: ["main"]
7+
8+
permissions:
9+
contents: read
10+
11+
jobs:
12+
autofix:
13+
runs-on: ubuntu-latest
14+
steps:
15+
- uses: actions/checkout@v4
16+
- run: corepack enable
17+
- uses: actions/setup-node@v4
18+
with:
19+
node-version: 20
20+
cache: "pnpm"
21+
- run: pnpm install
22+
- run: pnpm lint:fix
23+
- uses: autofix-ci/action@ea32e3a12414e6d3183163c3424a7d7a8631ad84
24+
with:
25+
commit-message: "chore: apply automated updates"

.github/workflows/ci.yml

Lines changed: 4 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -9,32 +9,18 @@ on:
99
- main
1010

1111
jobs:
12-
lint:
12+
ci:
1313
runs-on: ubuntu-latest
1414
steps:
1515
- uses: actions/checkout@v4
1616
- run: corepack enable
1717
- uses: actions/setup-node@v4
1818
with:
19-
node-version: 16
19+
node-version: 20
2020
cache: "pnpm"
2121
- run: pnpm install
2222
- run: pnpm lint
23-
24-
ci:
25-
strategy:
26-
matrix:
27-
os: [ubuntu-latest, windows-latest]
28-
runs-on: ${{ matrix.os }}
29-
steps:
30-
- uses: actions/checkout@v4
31-
- run: corepack enable
32-
- uses: actions/setup-node@v4
33-
with:
34-
node-version: 16
35-
cache: "pnpm"
36-
- run: pnpm install
37-
- run: pnpm prepack
38-
- run: pnpm test
3923
- run: pnpm test:types
24+
- run: pnpm build
25+
- run: pnpm vitest --coverage
4026
- uses: codecov/codecov-action@v4

README.md

Lines changed: 55 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -1,96 +1,110 @@
11
# pkg-types
22

3-
> Node.js utilities and TypeScript definitions for `package.json` and `tsconfig.json`
3+
<!-- automd:badges color=yellow codecov -->
44

5-
```
6-
\⍩⃝/
7-
```
5+
[![npm version](https://img.shields.io/npm/v/pkg-types?color=yellow)](https://npmjs.com/package/pkg-types)
6+
[![npm downloads](https://img.shields.io/npm/dm/pkg-types?color=yellow)](https://npmjs.com/package/pkg-types)
7+
[![codecov](https://img.shields.io/codecov/c/gh/unjs/pkg-types?color=yellow)](https://codecov.io/gh/unjs/pkg-types)
8+
9+
<!-- /automd -->
10+
11+
Node.js utilities and TypeScript definitions for `package.json` and `tsconfig.json`.
812

913
## Install
1014

15+
<!-- automd:pm-i -->
16+
1117
```sh
18+
# ✨ Auto-detect
19+
npx nypm install pkg-types
20+
1221
# npm
13-
npm i pkg-types
22+
npm install pkg-types
1423

1524
# yarn
1625
yarn add pkg-types
1726

1827
# pnpm
19-
pnpm add pkg-types
28+
pnpm install pkg-types
29+
30+
# bun
31+
bun install pkg-types
2032
```
2133

34+
<!-- /automd -->
35+
2236
## Usage
2337

2438
### `readPackageJSON`
2539

2640
```js
27-
import { readPackageJSON } from 'pkg-types'
28-
const localPackageJson = await readPackageJSON()
41+
import { readPackageJSON } from "pkg-types";
42+
const localPackageJson = await readPackageJSON();
2943
// or
30-
const packageJson = await readPackageJSON('/fully/resolved/path/to/folder')
44+
const packageJson = await readPackageJSON("/fully/resolved/path/to/folder");
3145
```
3246

3347
### `writePackageJSON`
3448

3549
```js
36-
import { writePackageJSON } from 'pkg-types'
50+
import { writePackageJSON } from "pkg-types";
3751

38-
await writePackageJSON('path/to/package.json', pkg)
52+
await writePackageJSON("path/to/package.json", pkg);
3953
```
4054

4155
### `resolvePackageJSON`
4256

4357
```js
44-
import { resolvePackageJSON } from 'pkg-types'
45-
const filename = await resolvePackageJSON()
58+
import { resolvePackageJSON } from "pkg-types";
59+
const filename = await resolvePackageJSON();
4660
// or
47-
const packageJson = await resolvePackageJSON('/fully/resolved/path/to/folder')
61+
const packageJson = await resolvePackageJSON("/fully/resolved/path/to/folder");
4862
```
4963

5064
### `readTSConfig`
5165

5266
```js
53-
import { readTSConfig } from 'pkg-types'
54-
const tsconfig = await readTSConfig()
67+
import { readTSConfig } from "pkg-types";
68+
const tsconfig = await readTSConfig();
5569
// or
56-
const tsconfig = await readTSConfig('/fully/resolved/path/to/folder')
70+
const tsconfig2 = await readTSConfig("/fully/resolved/path/to/folder");
5771
```
5872

5973
### `writeTSConfig`
6074

6175
```js
62-
import { writeTSConfig } from 'pkg-types'
76+
import { writeTSConfig } from "pkg-types";
6377

64-
await writeTSConfig('path/to/tsconfig.json', tsconfig)
78+
await writeTSConfig("path/to/tsconfig.json", tsconfig);
6579
```
6680

6781
### `resolveTSConfig`
6882

6983
```js
70-
import { resolveTSConfig } from 'pkg-types'
71-
const filename = await resolveTSConfig()
84+
import { resolveTSConfig } from "pkg-types";
85+
const filename = await resolveTSConfig();
7286
// or
73-
const tsconfig = await resolveTSConfig('/fully/resolved/path/to/folder')
87+
const tsconfig = await resolveTSConfig("/fully/resolved/path/to/folder");
7488
```
7589

7690
### `resolveFile`
7791

7892
```js
79-
import { resolveFile } from 'pkg-types'
80-
const filename = await resolveFile('README.md', {
93+
import { resolveFile } from "pkg-types";
94+
const filename = await resolveFile("README.md", {
8195
startingFrom: id,
8296
rootPattern: /^node_modules$/,
83-
matcher: filename => filename.endsWith('.md'),
84-
})
97+
matcher: (filename) => filename.endsWith(".md"),
98+
});
8599
```
86100

87101
### `resolveLockFile`
88102

89103
Find path to the lock file (`yarn.lock`, `package-lock.json`, `pnpm-lock.yaml`, `npm-shrinkwrap.json`) or throws an error.
90104

91105
```js
92-
import { resolveLockFile } from 'pkg-types'
93-
const lockfile = await resolveLockFile('.')
106+
import { resolveLockFile } from "pkg-types";
107+
const lockfile = await resolveLockFile(".");
94108
```
95109

96110
### `findWorkspaceDir`
@@ -104,8 +118,8 @@ Try to detect workspace dir by in order:
104118
If fails, throws an error.
105119

106120
```js
107-
import { findWorkspaceDir } from 'pkg-types'
108-
const workspaceDir = await findWorkspaceDir('.')
121+
import { findWorkspaceDir } from "pkg-types";
122+
const workspaceDir = await findWorkspaceDir(".");
109123
```
110124

111125
## Types
@@ -115,7 +129,7 @@ const workspaceDir = await findWorkspaceDir('.')
115129
You can directly use typed interfaces:
116130

117131
```ts
118-
import type { TSConfig, PackageJSON } from 'pkg-types'
132+
import type { TSConfig, PackageJSON } from "pkg-types";
119133
```
120134

121135
You can also use define utils for type support for using in plain `.js` files and auto-complete in IDE.
@@ -138,4 +152,13 @@ const pkg = defineTSConfig({})
138152

139153
## License
140154

141-
MIT - Made with 💛
155+
<!-- automd:contributors license=MIT author="pi0,danielroe" -->
156+
157+
Published under the [MIT](https://github.com/unjs/pkg-types/blob/main/LICENSE) license.
158+
Made by [@pi0](https://github.com/pi0), [@danielroe](https://github.com/danielroe) and [community](https://github.com/unjs/pkg-types/graphs/contributors) 💛
159+
<br><br>
160+
<a href="https://github.com/unjs/pkg-types/graphs/contributors">
161+
<img src="https://contrib.rocks/image?repo=unjs/pkg-types" />
162+
</a>
163+
164+
<!-- /automd -->

eslint.config.mjs

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
import unjs from 'eslint-config-unjs';
2+
3+
export default unjs(
4+
{
5+
ignores: [
6+
]
7+
},
8+
{
9+
rules: {}
10+
}
11+
);

package.json

Lines changed: 11 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,8 @@
1919
"prepack": "unbuild",
2020
"dev": "vitest",
2121
"release": "pnpm test && changelogen --release && npm publish && git push --follow-tags",
22-
"lint": "eslint --ext .ts,.js,.mjs,.cjs . && prettier -c src test",
23-
"lint:fix": "eslint --fix --ext .ts,.js,.mjs,.cjs . && prettier -w src test",
22+
"lint": "eslint && prettier -c src test",
23+
"lint:fix": "automd && eslint --fix . && prettier -w src test",
2424
"test": "vitest run --coverage",
2525
"test:types": "tsc --noEmit --module esnext --skipLibCheck --moduleResolution node ./test/*.test.ts"
2626
},
@@ -30,17 +30,18 @@
3030
"pathe": "^1.1.2"
3131
},
3232
"devDependencies": {
33-
"@types/node": "^20.12.4",
34-
"@vitest/coverage-v8": "^1.4.0",
33+
"@types/node": "^20.12.7",
34+
"@vitest/coverage-v8": "^1.5.0",
35+
"automd": "^0.3.7",
3536
"changelogen": "^0.5.5",
36-
"eslint": "^8.57.0",
37-
"eslint-config-unjs": "^0.2.1",
37+
"eslint": "^9.0.0",
38+
"eslint-config-unjs": "^0.3.0-rc.6",
3839
"expect-type": "^0.19.0",
3940
"jiti": "^1.21.0",
40-
"prettier": "^2.8.8",
41-
"typescript": "^5.4.4",
41+
"prettier": "^3.2.5",
42+
"typescript": "^5.4.5",
4243
"unbuild": "^2.0.0",
43-
"vitest": "^1.4.0"
44+
"vitest": "^1.5.0"
4445
},
45-
"packageManager": "pnpm@8.15.6"
46+
"packageManager": "pnpm@9.0.1"
4647
}

0 commit comments

Comments
 (0)