@theholocron/holocron-plugin-fern 5.0.0-alpha.16 → 5.0.0-alpha.161
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 +2 -2
- package/dist/index.d.mts +4 -4
- package/dist/index.mjs +8 -4
- package/package.json +12 -9
package/README.md
CHANGED
|
@@ -42,7 +42,7 @@ pnpm add -D @theholocron/holocron-plugin-fern
|
|
|
42
42
|
| `domain` | No | Base domain (`"wiki.theholocron.dev"`) or full path (`"wiki.theholocron.dev/myrepo"`). When a base domain is given, the repo name is appended automatically as a basepath. |
|
|
43
43
|
| `fernOrg` | No | Fern workspace slug. Defaults to `config.org`. Set this when the Fern workspace name differs from the GitHub org (e.g. workspace `"holocron"`, org `"theholocron"`). |
|
|
44
44
|
|
|
45
|
-
## What `holocron setup` does
|
|
45
|
+
## What `holocron repo setup` does
|
|
46
46
|
|
|
47
47
|
1. **Writes `fern/fern.config.json`** — Fern workspace org name and pinned
|
|
48
48
|
CLI version. Always overwritten.
|
|
@@ -79,7 +79,7 @@ DNS: add one CNAME record — `wiki.theholocron.dev` →
|
|
|
79
79
|
Password protection is configured in the **Fern Dashboard**
|
|
80
80
|
(`dashboard.buildwithfern.com`) — it is not configurable via `docs.yml` or
|
|
81
81
|
any CLI flag. Configure access control manually in the dashboard after
|
|
82
|
-
running `holocron setup`.
|
|
82
|
+
running `holocron repo setup`.
|
|
83
83
|
|
|
84
84
|
## CI secrets
|
|
85
85
|
|
package/dist/index.d.mts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { AuthError, ResolveTokenInput, Wiki,
|
|
1
|
+
import { AuthError, DnsRecordRequest, ResolveTokenInput, Wiki, WikiProvisionOpts, WikiProxyConfig } from "@theholocron/cli";
|
|
2
2
|
//#region src/capabilities/wiki.d.ts
|
|
3
3
|
declare const FERN_VERSION = "5.114.1";
|
|
4
4
|
interface FernWikiOptions {
|
|
@@ -36,12 +36,12 @@ interface FernWikiOptions {
|
|
|
36
36
|
/**
|
|
37
37
|
* One-line description shown on the global product switcher card.
|
|
38
38
|
* Falls back to the top-level `description` field in `holocron.config.ts`
|
|
39
|
-
* when omitted. Only used by `holocron sync --steps wiki`.
|
|
39
|
+
* when omitted. Only used by `holocron repo sync --steps wiki`.
|
|
40
40
|
*/
|
|
41
41
|
subtitle?: string;
|
|
42
42
|
/**
|
|
43
43
|
* Font Awesome icon class for the product switcher card (e.g. `"fa-duotone fa-gear"`).
|
|
44
|
-
* Only used by `holocron sync --steps wiki`.
|
|
44
|
+
* Only used by `holocron repo sync --steps wiki`.
|
|
45
45
|
*/
|
|
46
46
|
icon?: string;
|
|
47
47
|
}
|
|
@@ -52,7 +52,7 @@ declare class FernWiki implements Wiki {
|
|
|
52
52
|
constructor(opts: FernWikiOptions);
|
|
53
53
|
provision(callOpts?: WikiProvisionOpts): Promise<string>;
|
|
54
54
|
proxyConfig(): WikiProxyConfig | null;
|
|
55
|
-
dnsRecord():
|
|
55
|
+
dnsRecord(): DnsRecordRequest | null;
|
|
56
56
|
}
|
|
57
57
|
//#endregion
|
|
58
58
|
//#region src/auth.d.ts
|
package/dist/index.mjs
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { mkdir, readFile, writeFile } from "node:fs/promises";
|
|
2
2
|
import { join } from "node:path";
|
|
3
|
+
import { stringifyJson } from "@theholocron/json-utils";
|
|
3
4
|
import { AuthError, createResolveToken } from "@theholocron/cli";
|
|
4
5
|
//#region src/capabilities/wiki.ts
|
|
5
6
|
const FERN_VERSION = "5.114.1";
|
|
@@ -40,8 +41,11 @@ var FernWiki = class {
|
|
|
40
41
|
const hostname = domain.split("/")[0];
|
|
41
42
|
return {
|
|
42
43
|
zone: hostname.split(".").slice(-2).join("."),
|
|
43
|
-
|
|
44
|
-
|
|
44
|
+
record: {
|
|
45
|
+
type: "CNAME",
|
|
46
|
+
name: hostname,
|
|
47
|
+
content: `${resolvedFernOrg}.docs.buildwithfern.com`
|
|
48
|
+
}
|
|
45
49
|
};
|
|
46
50
|
}
|
|
47
51
|
};
|
|
@@ -49,10 +53,10 @@ async function writeFernConfig({ repoRoot, fernOrg }) {
|
|
|
49
53
|
const fernDir = join(repoRoot, "fern");
|
|
50
54
|
await mkdir(fernDir, { recursive: true });
|
|
51
55
|
const org = fernOrg ?? "holocron";
|
|
52
|
-
const content =
|
|
56
|
+
const content = stringifyJson({
|
|
53
57
|
organization: org,
|
|
54
58
|
version: FERN_VERSION
|
|
55
|
-
}
|
|
59
|
+
});
|
|
56
60
|
await writeFile(join(fernDir, "fern.config.json"), content, "utf8");
|
|
57
61
|
return `fern.config.json: org=${org}, version=${FERN_VERSION}`;
|
|
58
62
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@theholocron/holocron-plugin-fern",
|
|
3
|
-
"version": "5.0.0-alpha.
|
|
3
|
+
"version": "5.0.0-alpha.161",
|
|
4
4
|
"description": "Holocron plugin for Fern. Implements the wiki capability for engineering knowledge publishing.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"fern",
|
|
@@ -8,12 +8,12 @@
|
|
|
8
8
|
"plugin",
|
|
9
9
|
"wiki"
|
|
10
10
|
],
|
|
11
|
-
"homepage": "https://github.com/theholocron/holocron/tree/main/
|
|
11
|
+
"homepage": "https://github.com/theholocron/holocron/tree/main/plugins/holocron-plugin-fern#readme",
|
|
12
12
|
"bugs": "https://github.com/theholocron/holocron/issues",
|
|
13
13
|
"repository": {
|
|
14
14
|
"type": "git",
|
|
15
15
|
"url": "git+https://github.com/theholocron/holocron.git",
|
|
16
|
-
"directory": "
|
|
16
|
+
"directory": "plugins/holocron-plugin-fern"
|
|
17
17
|
},
|
|
18
18
|
"license": "MIT",
|
|
19
19
|
"author": "Newton Koumantzelis",
|
|
@@ -29,11 +29,14 @@
|
|
|
29
29
|
"files": [
|
|
30
30
|
"dist"
|
|
31
31
|
],
|
|
32
|
+
"dependencies": {
|
|
33
|
+
"@theholocron/json-utils": "^1.15.1"
|
|
34
|
+
},
|
|
32
35
|
"devDependencies": {
|
|
33
|
-
"@theholocron/eslint-config": "^8.
|
|
34
|
-
"@theholocron/tsconfig": "^8.
|
|
35
|
-
"@theholocron/tsdown-config": "^8.
|
|
36
|
-
"@theholocron/vitest-config": "^8.
|
|
36
|
+
"@theholocron/eslint-config": "^8.8.0",
|
|
37
|
+
"@theholocron/tsconfig": "^8.8.0",
|
|
38
|
+
"@theholocron/tsdown-config": "^8.8.0",
|
|
39
|
+
"@theholocron/vitest-config": "^8.8.0",
|
|
37
40
|
"@types/node": "^26",
|
|
38
41
|
"@vitest/coverage-v8": "^4.1.11",
|
|
39
42
|
"@vitest/eslint-plugin": "^1.6.27",
|
|
@@ -44,10 +47,10 @@
|
|
|
44
47
|
"tsx": "4.23.12",
|
|
45
48
|
"typescript": "^5.9.3",
|
|
46
49
|
"vitest": "^4.1.11",
|
|
47
|
-
"@theholocron/cli": "5.0.0-alpha.
|
|
50
|
+
"@theholocron/cli": "5.0.0-alpha.161"
|
|
48
51
|
},
|
|
49
52
|
"peerDependencies": {
|
|
50
|
-
"@theholocron/cli": "5.0.0-alpha.
|
|
53
|
+
"@theholocron/cli": "5.0.0-alpha.161"
|
|
51
54
|
},
|
|
52
55
|
"engines": {
|
|
53
56
|
"node": ">=22"
|