@theholocron/holocron-config 7.2.3 → 7.3.1
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 +13 -17
- package/dist/configs/node.d.ts +6 -12
- package/dist/configs/node.js +6 -12
- package/package.json +6 -5
package/README.md
CHANGED
|
@@ -14,33 +14,29 @@ In your repo's `holocron.config.ts`, import the preset and spread each fragment
|
|
|
14
14
|
|
|
15
15
|
```ts
|
|
16
16
|
import { defineConfig } from "@theholocron/cli";
|
|
17
|
+
import type { HolocronConfig } from "@theholocron/cli";
|
|
17
18
|
import { node } from "@theholocron/holocron-config";
|
|
18
19
|
|
|
19
|
-
const
|
|
20
|
+
const { repo, workflows, providers } = node();
|
|
20
21
|
export default defineConfig({
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
...defaults.repo,
|
|
28
|
-
},
|
|
29
|
-
workflows: [
|
|
30
|
-
...defaults.workflows,
|
|
31
|
-
{ name: "release", with: { "run-build": true } },
|
|
32
|
-
],
|
|
22
|
+
name: "my-repo",
|
|
23
|
+
description: "What this repo does.",
|
|
24
|
+
repo: {
|
|
25
|
+
name: "theholocron/my-repo",
|
|
26
|
+
topics: ["nodejs", "typescript"],
|
|
27
|
+
...repo,
|
|
33
28
|
},
|
|
34
|
-
|
|
35
|
-
|
|
29
|
+
workflows: [...workflows, { name: "release", with: { "run-build": true } }],
|
|
30
|
+
providers,
|
|
31
|
+
} satisfies HolocronConfig);
|
|
36
32
|
```
|
|
37
33
|
|
|
38
34
|
`node()` returns three fragments:
|
|
39
35
|
|
|
40
36
|
| Fragment | Contents |
|
|
41
37
|
| ----------- | ------------------------------------------------------------------------------------------------------- |
|
|
42
|
-
| `providers` | `source: "github"`, `ci: "github"`, `issues: ["github", { labels: … }]` |
|
|
43
38
|
| `repo` | `protection: "strict"`, `properties: { lifecycle: "active", … }` |
|
|
44
39
|
| `workflows` | `lint`, `test`, `typecheck`, `codeql`, `review`, `stale`, `greetings`, `dependencies`, `bookkeeping-pr` |
|
|
40
|
+
| `providers` | `source: "github"`, `ci: "github"`, `issues: ["github", { labels: … }]` |
|
|
45
41
|
|
|
46
|
-
Everything else — `
|
|
42
|
+
Everything else — `name`, `repo.name`, `repo.topics`, and any per-repo workflow overrides (e.g. `release`) — stays in the consuming repo's config.
|
package/dist/configs/node.d.ts
CHANGED
|
@@ -3,25 +3,19 @@ import { HolocronConfig, RepoConfig } from "@theholocron/cli";
|
|
|
3
3
|
interface HolocronPreset {
|
|
4
4
|
providers: HolocronConfig["providers"];
|
|
5
5
|
repo: Omit<RepoConfig, "name" | "requiredChecks">;
|
|
6
|
-
workflows: NonNullable<HolocronConfig["
|
|
6
|
+
workflows: NonNullable<HolocronConfig["workflows"]>;
|
|
7
7
|
}
|
|
8
8
|
/**
|
|
9
9
|
* Shared defaults for theholocron Node.js repositories.
|
|
10
10
|
* Spread the returned fragments into `defineConfig()` — only add what's unique per repo.
|
|
11
11
|
*
|
|
12
12
|
* @example
|
|
13
|
-
* const
|
|
13
|
+
* const { repo, workflows, providers } = node();
|
|
14
14
|
* export default defineConfig({
|
|
15
|
-
*
|
|
16
|
-
*
|
|
17
|
-
*
|
|
18
|
-
*
|
|
19
|
-
* topics: ["typescript"],
|
|
20
|
-
* ...defaults.repo,
|
|
21
|
-
* },
|
|
22
|
-
* workflows: [...defaults.workflows, { name: "release", with: { "run-build": true } }],
|
|
23
|
-
* },
|
|
24
|
-
* providers: defaults.providers,
|
|
15
|
+
* name: "my-repo",
|
|
16
|
+
* repo: { name: "theholocron/my-repo", topics: ["typescript"], ...repo },
|
|
17
|
+
* workflows: [...workflows, { name: "release", with: { "run-build": true } }],
|
|
18
|
+
* providers,
|
|
25
19
|
* });
|
|
26
20
|
*/
|
|
27
21
|
declare function node(): HolocronPreset;
|
package/dist/configs/node.js
CHANGED
|
@@ -4,18 +4,12 @@
|
|
|
4
4
|
* Spread the returned fragments into `defineConfig()` — only add what's unique per repo.
|
|
5
5
|
*
|
|
6
6
|
* @example
|
|
7
|
-
* const
|
|
7
|
+
* const { repo, workflows, providers } = node();
|
|
8
8
|
* export default defineConfig({
|
|
9
|
-
*
|
|
10
|
-
*
|
|
11
|
-
*
|
|
12
|
-
*
|
|
13
|
-
* topics: ["typescript"],
|
|
14
|
-
* ...defaults.repo,
|
|
15
|
-
* },
|
|
16
|
-
* workflows: [...defaults.workflows, { name: "release", with: { "run-build": true } }],
|
|
17
|
-
* },
|
|
18
|
-
* providers: defaults.providers,
|
|
9
|
+
* name: "my-repo",
|
|
10
|
+
* repo: { name: "theholocron/my-repo", topics: ["typescript"], ...repo },
|
|
11
|
+
* workflows: [...workflows, { name: "release", with: { "run-build": true } }],
|
|
12
|
+
* providers,
|
|
19
13
|
* });
|
|
20
14
|
*/
|
|
21
15
|
function node() {
|
|
@@ -46,7 +40,7 @@ function node() {
|
|
|
46
40
|
"stale",
|
|
47
41
|
"greetings",
|
|
48
42
|
"dependencies",
|
|
49
|
-
"bookkeeping
|
|
43
|
+
"bookkeeping"
|
|
50
44
|
]
|
|
51
45
|
};
|
|
52
46
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@theholocron/holocron-config",
|
|
3
|
-
"version": "7.
|
|
3
|
+
"version": "7.3.1",
|
|
4
4
|
"description": "Shareable holocron configuration presets for theholocron repositories.",
|
|
5
5
|
"homepage": "https://github.com/theholocron/configs/tree/main/packages/holocron-config#readme",
|
|
6
6
|
"bugs": "https://github.com/theholocron/configs/issues",
|
|
@@ -18,12 +18,13 @@
|
|
|
18
18
|
],
|
|
19
19
|
"type": "module",
|
|
20
20
|
"devDependencies": {
|
|
21
|
-
"@theholocron/cli": "2.0.0-alpha.
|
|
21
|
+
"@theholocron/cli": "2.0.0-alpha.56",
|
|
22
22
|
"tsdown": "^0.22.8",
|
|
23
23
|
"typescript": "^5.9.3",
|
|
24
|
-
"vitest": "^4.
|
|
25
|
-
"@
|
|
26
|
-
"@theholocron/
|
|
24
|
+
"vitest": "^4.1.10",
|
|
25
|
+
"@vitest/coverage-v8": "^4.1.10",
|
|
26
|
+
"@theholocron/tsconfig": "7.3.1",
|
|
27
|
+
"@theholocron/vitest-config": "7.3.1"
|
|
27
28
|
},
|
|
28
29
|
"peerDependencies": {
|
|
29
30
|
"@theholocron/cli": ">=2.0.0-alpha.1"
|