@x12i/docify-export 1.1.2 → 1.2.0

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/dist/index.d.ts CHANGED
@@ -6,5 +6,5 @@ export { assembleWebTree, type AssembleWebTreeOptions, } from "./assemble-web.js
6
6
  export { checkPackageCompleteness, type PackageCheckReport, } from "./check-package.js";
7
7
  export { waitForServer, openInBrowser, startDocifyServer, runDocifyDocs, type WaitForServerResult, type DocifyServerHandle, type StartDocifyServerOptions, type RunDocifyDocsOptions, type RunDocifyDocsResult, } from "./serve-site.js";
8
8
  export { DOCIFY_PUBLISH_ORDER, planDocifyRelease, bumpDocifyPackages, publishDocifyPackagesOrdered, type PackageRef, type ReleasePlan, type BumpResult, type PublishOrderedOptions, type PublishOrderedResult, } from "./release.js";
9
- export { createDocifyPublisher, publishDocifySite, type Publisher, type PublishResult, type PublisherDeps, } from "./publish.js";
9
+ export { createDocifyPublisher, publishDocifySite, failedMessage, parseWhoamiAccounts, parsePagesProjectList, type Publisher, type PublishResult, type PublisherDeps, type ExecResult, type CloudflareAccount, type PagesProjectInfo, } from "./publish.js";
10
10
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,uBAAuB,EACvB,kBAAkB,EAClB,cAAc,EACd,KAAK,kBAAkB,GACxB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,kBAAkB,EAClB,KAAK,uBAAuB,GAC7B,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,iBAAiB,EACjB,KAAK,oBAAoB,EACzB,KAAK,mBAAmB,GACzB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,gBAAgB,EAChB,mBAAmB,EACnB,eAAe,EACf,qBAAqB,EACrB,KAAK,UAAU,EACf,KAAK,SAAS,EACd,KAAK,WAAW,EAChB,KAAK,cAAc,GACpB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,eAAe,EACf,KAAK,sBAAsB,GAC5B,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,wBAAwB,EACxB,KAAK,kBAAkB,GACxB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,aAAa,EACb,aAAa,EACb,iBAAiB,EACjB,aAAa,EACb,KAAK,mBAAmB,EACxB,KAAK,kBAAkB,EACvB,KAAK,wBAAwB,EAC7B,KAAK,oBAAoB,EACzB,KAAK,mBAAmB,GACzB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,oBAAoB,EACpB,iBAAiB,EACjB,kBAAkB,EAClB,4BAA4B,EAC5B,KAAK,UAAU,EACf,KAAK,WAAW,EAChB,KAAK,UAAU,EACf,KAAK,qBAAqB,EAC1B,KAAK,oBAAoB,GAC1B,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,qBAAqB,EACrB,iBAAiB,EACjB,KAAK,SAAS,EACd,KAAK,aAAa,EAClB,KAAK,aAAa,GACnB,MAAM,cAAc,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,uBAAuB,EACvB,kBAAkB,EAClB,cAAc,EACd,KAAK,kBAAkB,GACxB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,kBAAkB,EAClB,KAAK,uBAAuB,GAC7B,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,iBAAiB,EACjB,KAAK,oBAAoB,EACzB,KAAK,mBAAmB,GACzB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,gBAAgB,EAChB,mBAAmB,EACnB,eAAe,EACf,qBAAqB,EACrB,KAAK,UAAU,EACf,KAAK,SAAS,EACd,KAAK,WAAW,EAChB,KAAK,cAAc,GACpB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,eAAe,EACf,KAAK,sBAAsB,GAC5B,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,wBAAwB,EACxB,KAAK,kBAAkB,GACxB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,aAAa,EACb,aAAa,EACb,iBAAiB,EACjB,aAAa,EACb,KAAK,mBAAmB,EACxB,KAAK,kBAAkB,EACvB,KAAK,wBAAwB,EAC7B,KAAK,oBAAoB,EACzB,KAAK,mBAAmB,GACzB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,oBAAoB,EACpB,iBAAiB,EACjB,kBAAkB,EAClB,4BAA4B,EAC5B,KAAK,UAAU,EACf,KAAK,WAAW,EAChB,KAAK,UAAU,EACf,KAAK,qBAAqB,EAC1B,KAAK,oBAAoB,GAC1B,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,qBAAqB,EACrB,iBAAiB,EACjB,aAAa,EACb,mBAAmB,EACnB,qBAAqB,EACrB,KAAK,SAAS,EACd,KAAK,aAAa,EAClB,KAAK,aAAa,EAClB,KAAK,UAAU,EACf,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,GACtB,MAAM,cAAc,CAAC"}
package/dist/index.js CHANGED
@@ -6,5 +6,5 @@ export { assembleWebTree, } from "./assemble-web.js";
6
6
  export { checkPackageCompleteness, } from "./check-package.js";
7
7
  export { waitForServer, openInBrowser, startDocifyServer, runDocifyDocs, } from "./serve-site.js";
8
8
  export { DOCIFY_PUBLISH_ORDER, planDocifyRelease, bumpDocifyPackages, publishDocifyPackagesOrdered, } from "./release.js";
9
- export { createDocifyPublisher, publishDocifySite, } from "./publish.js";
9
+ export { createDocifyPublisher, publishDocifySite, failedMessage, parseWhoamiAccounts, parsePagesProjectList, } from "./publish.js";
10
10
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,uBAAuB,EACvB,kBAAkB,EAClB,cAAc,GAEf,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,kBAAkB,GAEnB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,iBAAiB,GAGlB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,gBAAgB,EAChB,mBAAmB,EACnB,eAAe,EACf,qBAAqB,GAKtB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,eAAe,GAEhB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,wBAAwB,GAEzB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,aAAa,EACb,aAAa,EACb,iBAAiB,EACjB,aAAa,GAMd,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,oBAAoB,EACpB,iBAAiB,EACjB,kBAAkB,EAClB,4BAA4B,GAM7B,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,qBAAqB,EACrB,iBAAiB,GAIlB,MAAM,cAAc,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,uBAAuB,EACvB,kBAAkB,EAClB,cAAc,GAEf,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,kBAAkB,GAEnB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,iBAAiB,GAGlB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,gBAAgB,EAChB,mBAAmB,EACnB,eAAe,EACf,qBAAqB,GAKtB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,eAAe,GAEhB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,wBAAwB,GAEzB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,aAAa,EACb,aAAa,EACb,iBAAiB,EACjB,aAAa,GAMd,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,oBAAoB,EACpB,iBAAiB,EACjB,kBAAkB,EAClB,4BAA4B,GAM7B,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,qBAAqB,EACrB,iBAAiB,EACjB,aAAa,EACb,mBAAmB,EACnB,qBAAqB,GAOtB,MAAM,cAAc,CAAC"}
package/dist/publish.d.ts CHANGED
@@ -15,18 +15,22 @@ export type PublishResult = {
15
15
  dashboardUrl?: string;
16
16
  message?: string;
17
17
  };
18
+ export type ExecResult = {
19
+ status: number | null;
20
+ stdout: string;
21
+ stderr: string;
22
+ error?: Error;
23
+ };
18
24
  export type PublisherDeps = {
19
25
  exec?: (command: string, args: string[], opts?: {
20
26
  env?: NodeJS.ProcessEnv;
21
27
  interactive?: boolean;
22
- }) => {
23
- status: number | null;
24
- stdout: string;
25
- stderr: string;
26
- };
28
+ }) => ExecResult;
27
29
  fetchFn?: typeof fetch;
28
30
  confirm?: (message: string) => Promise<boolean>;
29
31
  log?: (message: string) => void;
32
+ /** Override config.publish.adoptExistingProject for this run (CLI --adopt). */
33
+ adoptExistingProject?: boolean;
30
34
  };
31
35
  export type Publisher = {
32
36
  validateConfig(): DocifyConfig;
@@ -48,6 +52,24 @@ export type Publisher = {
48
52
  branch?: string;
49
53
  }): Promise<PublishResult>;
50
54
  };
55
+ export type CloudflareAccount = {
56
+ id: string;
57
+ name?: string;
58
+ };
59
+ export type PagesProjectInfo = {
60
+ name: string;
61
+ domains: string[];
62
+ };
63
+ /** Never return an empty failure message when status ends with -failed. */
64
+ export declare function failedMessage(r: Pick<ExecResult, "stdout" | "stderr" | "error" | "status">, fallback: string): string;
65
+ export declare function defaultExec(command: string, args: string[], opts?: {
66
+ env?: NodeJS.ProcessEnv;
67
+ interactive?: boolean;
68
+ }): ExecResult;
69
+ /** Parse account ids (and optional names) from `wrangler whoami` text or JSON. */
70
+ export declare function parseWhoamiAccounts(output: string): CloudflareAccount[];
71
+ /** Parse Pages projects + custom domains from list --json or text. */
72
+ export declare function parsePagesProjectList(output: string): PagesProjectInfo[];
51
73
  /**
52
74
  * Provider-neutral Docify publisher. Cloudflare Pages is the first adapter,
53
75
  * using Wrangler Direct Upload (no credentials written to the repo).
@@ -1 +1 @@
1
- {"version":3,"file":"publish.d.ts","sourceRoot":"","sources":["../src/publish.ts"],"names":[],"mappings":"AAGA,OAAO,EAGL,KAAK,YAAY,EAClB,MAAM,mBAAmB,CAAC;AAE3B,MAAM,MAAM,aAAa,GAAG;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,YAAY,GAAG,SAAS,CAAC;IACtC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE;QAAE,EAAE,EAAE,OAAO,CAAC;QAAC,OAAO,EAAE,MAAM,EAAE,CAAC;QAAC,MAAM,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;IACpE,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IAC1B,IAAI,CAAC,EAAE,CACL,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,MAAM,EAAE,EACd,IAAI,CAAC,EAAE;QAAE,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;QAAC,WAAW,CAAC,EAAE,OAAO,CAAA;KAAE,KACtD;QAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IAC/D,OAAO,CAAC,EAAE,OAAO,KAAK,CAAC;IACvB,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IAChD,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;CACjC,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG;IACtB,cAAc,IAAI,YAAY,CAAC;IAC/B,OAAO,IAAI,OAAO,CAAC,aAAa,CAAC,CAAC;IAClC,KAAK,IAAI,OAAO,CAAC,aAAa,CAAC,CAAC;IAChC,MAAM,IAAI,OAAO,CAAC,aAAa,CAAC,CAAC;IACjC,SAAS,IAAI,aAAa,CAAC;IAC3B,gBAAgB,IAAI,OAAO,CAAC,aAAa,CAAC,CAAC;IAC3C,aAAa,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;IACvD,SAAS,IAAI,OAAO,CAAC,aAAa,CAAC,CAAC;IACpC,eAAe,IAAI,OAAO,CAAC,aAAa,GAAG;QAAE,WAAW,CAAC,EAAE,OAAO,EAAE,CAAA;KAAE,CAAC,CAAC;IACxE,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;IAClD,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;IAC1D,kBAAkB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;IACvD,OAAO,CAAC,IAAI,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,OAAO,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;CAChF,CAAC;AA0CF;;;GAGG;AACH,wBAAgB,qBAAqB,CACnC,WAAW,EAAE,OAAO,EACpB,IAAI,GAAE,aAAkB,GACvB,SAAS,CAsTX;AAED,wBAAsB,iBAAiB,CACrC,MAAM,EAAE,OAAO,EACf,IAAI,CAAC,EAAE;IAAE,OAAO,CAAC,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,aAAa,GAC5D,OAAO,CAAC,aAAa,CAAC,CAIxB"}
1
+ {"version":3,"file":"publish.d.ts","sourceRoot":"","sources":["../src/publish.ts"],"names":[],"mappings":"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"}
package/dist/publish.js CHANGED
@@ -4,20 +4,207 @@ import { join } from "node:path";
4
4
  import { DocifyConfigSchema, resolvePublishHostname, } from "@x12i/docify-core";
5
5
  const PAGES_MAX_FILES = 20_000;
6
6
  const PAGES_MAX_FILE_BYTES = 25 * 1024 * 1024;
7
- function defaultExec(command, args, opts) {
7
+ const ACCOUNT_ID_RE = /\b([a-f0-9]{32})\b/gi;
8
+ /** Never return an empty failure message when status ends with -failed. */
9
+ export function failedMessage(r, fallback) {
10
+ const text = [r.stderr, r.stdout, r.error?.message]
11
+ .map((s) => (typeof s === "string" ? s.trim() : ""))
12
+ .find((s) => s.length > 0);
13
+ if (text)
14
+ return text;
15
+ if (r.status === null && r.error)
16
+ return r.error.message;
17
+ return fallback;
18
+ }
19
+ export function defaultExec(command, args, opts) {
8
20
  // Interactive commands (OAuth consent) must reach the terminal, otherwise the
9
21
  // login URL and prompt are captured and the user sees nothing to approve.
22
+ // On Windows, npx is typically a .cmd shim — spawn without shell yields empty pipes.
23
+ const useShell = process.platform === "win32" || command === "npx";
10
24
  const r = spawnSync(command, args, {
11
25
  encoding: "utf8",
12
26
  env: { ...process.env, ...opts?.env },
13
27
  stdio: opts?.interactive ? "inherit" : "pipe",
28
+ shell: useShell,
14
29
  });
15
30
  return {
16
31
  status: r.status,
17
32
  stdout: r.stdout ?? "",
18
33
  stderr: r.stderr ?? "",
34
+ error: r.error,
19
35
  };
20
36
  }
37
+ /** Parse account ids (and optional names) from `wrangler whoami` text or JSON. */
38
+ export function parseWhoamiAccounts(output) {
39
+ const trimmed = (output || "").trim();
40
+ if (!trimmed)
41
+ return [];
42
+ // JSON forms: { accounts: [{ id, name }] } or array of accounts
43
+ if (trimmed.startsWith("{") || trimmed.startsWith("[")) {
44
+ try {
45
+ const data = JSON.parse(trimmed);
46
+ const list = Array.isArray(data)
47
+ ? data
48
+ : data &&
49
+ typeof data === "object" &&
50
+ Array.isArray(data.accounts)
51
+ ? data.accounts
52
+ : null;
53
+ if (list) {
54
+ const fromJson = [];
55
+ for (const item of list) {
56
+ if (!item || typeof item !== "object")
57
+ continue;
58
+ const id = typeof item.id === "string"
59
+ ? item.id
60
+ : typeof item.account_id === "string"
61
+ ? item.account_id
62
+ : "";
63
+ if (!/^[a-f0-9]{32}$/i.test(id))
64
+ continue;
65
+ const name = typeof item.name === "string"
66
+ ? item.name
67
+ : undefined;
68
+ fromJson.push({ id: id.toLowerCase(), name });
69
+ }
70
+ if (fromJson.length)
71
+ return uniqueAccounts(fromJson);
72
+ }
73
+ }
74
+ catch {
75
+ // fall through to text parse
76
+ }
77
+ }
78
+ const accounts = [];
79
+ const lines = trimmed.split(/\r?\n/);
80
+ for (const line of lines) {
81
+ const ids = [...line.matchAll(ACCOUNT_ID_RE)].map((m) => m[1].toLowerCase());
82
+ if (!ids.length)
83
+ continue;
84
+ // Prefer last hex token on the line (typical whoami table: name … id)
85
+ const id = ids[ids.length - 1];
86
+ const namePart = line
87
+ .replace(ACCOUNT_ID_RE, "")
88
+ .replace(/[|\u2502]/g, " ")
89
+ .replace(/\s+/g, " ")
90
+ .trim();
91
+ accounts.push({
92
+ id,
93
+ name: namePart || undefined,
94
+ });
95
+ }
96
+ return uniqueAccounts(accounts);
97
+ }
98
+ function uniqueAccounts(list) {
99
+ const seen = new Set();
100
+ const out = [];
101
+ for (const a of list) {
102
+ if (seen.has(a.id))
103
+ continue;
104
+ seen.add(a.id);
105
+ out.push(a);
106
+ }
107
+ return out;
108
+ }
109
+ /** Parse Pages projects + custom domains from list --json or text. */
110
+ export function parsePagesProjectList(output) {
111
+ const trimmed = (output || "").trim();
112
+ if (!trimmed)
113
+ return [];
114
+ if (trimmed.startsWith("{") || trimmed.startsWith("[")) {
115
+ try {
116
+ const data = JSON.parse(trimmed);
117
+ const list = Array.isArray(data)
118
+ ? data
119
+ : data &&
120
+ typeof data === "object" &&
121
+ Array.isArray(data.projects)
122
+ ? data.projects
123
+ : data &&
124
+ typeof data === "object" &&
125
+ Array.isArray(data.result)
126
+ ? data.result
127
+ : null;
128
+ if (list) {
129
+ const projects = [];
130
+ for (const item of list) {
131
+ if (!item || typeof item !== "object")
132
+ continue;
133
+ const name = typeof item.name === "string"
134
+ ? item.name
135
+ : typeof item.project_name ===
136
+ "string"
137
+ ? item.project_name
138
+ : "";
139
+ if (!name)
140
+ continue;
141
+ const domains = collectDomains(item);
142
+ projects.push({ name, domains });
143
+ }
144
+ if (projects.length)
145
+ return projects;
146
+ }
147
+ }
148
+ catch {
149
+ // fall through
150
+ }
151
+ }
152
+ // Text fallback: lines that look like "name domain1, domain2" or include *.pages.dev
153
+ const projects = [];
154
+ for (const line of trimmed.split(/\r?\n/)) {
155
+ const domainMatches = [
156
+ ...line.matchAll(/\b([a-z0-9][a-z0-9.-]*\.(?:pages\.dev|[a-z0-9.-]+\.[a-z]{2,}))\b/gi),
157
+ ].map((m) => m[1].toLowerCase());
158
+ const nameMatch = /^[\s|]*([a-z0-9][a-z0-9_-]*)/i.exec(line);
159
+ if (!nameMatch)
160
+ continue;
161
+ const name = nameMatch[1];
162
+ if (/^(name|project|id|created|account)$/i.test(name) ||
163
+ name.length < 2) {
164
+ continue;
165
+ }
166
+ projects.push({ name, domains: domainMatches });
167
+ }
168
+ return projects;
169
+ }
170
+ function collectDomains(item) {
171
+ const domains = [];
172
+ const push = (v) => {
173
+ if (typeof v === "string" && v.trim())
174
+ domains.push(v.trim().toLowerCase());
175
+ };
176
+ const rec = item;
177
+ push(rec.subdomain);
178
+ push(rec.domain);
179
+ if (Array.isArray(rec.domains)) {
180
+ for (const d of rec.domains) {
181
+ if (typeof d === "string")
182
+ push(d);
183
+ else if (d && typeof d === "object") {
184
+ push(d.name);
185
+ push(d.domain);
186
+ }
187
+ }
188
+ }
189
+ if (Array.isArray(rec.aliases)) {
190
+ for (const a of rec.aliases)
191
+ push(a);
192
+ }
193
+ if (rec.canonical_deployment && typeof rec.canonical_deployment === "object") {
194
+ const cd = rec.canonical_deployment;
195
+ if (Array.isArray(cd.aliases))
196
+ for (const a of cd.aliases)
197
+ push(a);
198
+ }
199
+ return [...new Set(domains)];
200
+ }
201
+ function findProjectByHostname(projects, hostname) {
202
+ const host = hostname.toLowerCase().replace(/^https?:\/\//, "");
203
+ return projects.find((p) => p.domains.some((d) => {
204
+ const domain = d.toLowerCase().replace(/^https?:\/\//, "");
205
+ return domain === host;
206
+ }));
207
+ }
21
208
  function countFiles(dir) {
22
209
  let count = 0;
23
210
  const tooLarge = [];
@@ -38,6 +225,11 @@ function countFiles(dir) {
38
225
  walk(dir);
39
226
  return { count, tooLarge };
40
227
  }
228
+ function formatAccountTable(accounts) {
229
+ return accounts
230
+ .map((a) => (a.name ? ` - ${a.name} (${a.id})` : ` - ${a.id}`))
231
+ .join("\n");
232
+ }
41
233
  /**
42
234
  * Provider-neutral Docify publisher. Cloudflare Pages is the first adapter,
43
235
  * using Wrangler Direct Upload (no credentials written to the repo).
@@ -54,25 +246,82 @@ export function createDocifyPublisher(configInput, deps = {}) {
54
246
  const publishCfg = publish;
55
247
  const hostname = resolvePublishHostname(publishCfg);
56
248
  const customDomainUrl = `https://${hostname}`;
57
- const project = publishCfg.projectName;
249
+ let project = publishCfg.projectName;
58
250
  const outputDir = config.build.outputDir;
59
- const accountId = publishCfg.accountId ||
251
+ const configuredAccountId = publishCfg.accountId ||
60
252
  process.env.CLOUDFLARE_ACCOUNT_ID ||
61
253
  process.env.CF_ACCOUNT_ID ||
62
254
  "";
63
- const wranglerEnv = () => accountId ? { CLOUDFLARE_ACCOUNT_ID: accountId } : {};
255
+ let effectiveAccountId = configuredAccountId;
256
+ const adoptExisting = deps.adoptExistingProject === true ||
257
+ publishCfg.adoptExistingProject === true;
258
+ const wranglerEnv = () => effectiveAccountId ? { CLOUDFLARE_ACCOUNT_ID: effectiveAccountId } : {};
64
259
  const wrangler = (args, opts) => exec("npx", ["--yes", "wrangler", ...args], {
65
260
  env: wranglerEnv(),
66
261
  interactive: opts?.interactive,
67
262
  });
263
+ const dashboardFor = (proj) => effectiveAccountId
264
+ ? `https://dash.cloudflare.com/${effectiveAccountId}/pages/view/${proj}`
265
+ : `https://dash.cloudflare.com/?to=/:account/pages/view/${proj}`;
68
266
  const baseResult = (environment, extra = {}) => ({
69
267
  provider: publishCfg.provider,
70
268
  project,
71
269
  environment,
72
270
  customDomainUrl,
73
271
  status: "ok",
272
+ dashboardUrl: dashboardFor(project),
74
273
  ...extra,
75
274
  });
275
+ function resolveAccount() {
276
+ if (configuredAccountId) {
277
+ effectiveAccountId = configuredAccountId;
278
+ return {
279
+ ok: true,
280
+ accountId: configuredAccountId,
281
+ accounts: [{ id: configuredAccountId }],
282
+ };
283
+ }
284
+ // Prefer JSON when Wrangler supports it; fall back to text.
285
+ let who = wrangler(["whoami", "--json"]);
286
+ let combined = `${who.stdout || ""}\n${who.stderr || ""}`;
287
+ let accounts = parseWhoamiAccounts(combined);
288
+ if (who.status !== 0 || accounts.length === 0) {
289
+ who = wrangler(["whoami"]);
290
+ combined = `${who.stdout || ""}\n${who.stderr || ""}`;
291
+ accounts = parseWhoamiAccounts(combined);
292
+ }
293
+ if (who.status !== 0 && accounts.length === 0) {
294
+ return {
295
+ ok: false,
296
+ status: "preflight-failed",
297
+ message: failedMessage(who, "Not logged in to Cloudflare. Run `docify publish connect`, then retry."),
298
+ };
299
+ }
300
+ if (accounts.length === 0) {
301
+ return {
302
+ ok: false,
303
+ status: "preflight-failed",
304
+ message: "No Cloudflare accounts visible. Run `docify publish connect`, then retry.",
305
+ };
306
+ }
307
+ if (accounts.length >= 2) {
308
+ const first = accounts[0].id;
309
+ return {
310
+ ok: false,
311
+ status: "preflight-failed",
312
+ message: [
313
+ "More than one Cloudflare account is available; set publish.accountId (or CLOUDFLARE_ACCOUNT_ID) for non-interactive deploy.",
314
+ "Accounts:",
315
+ formatAccountTable(accounts),
316
+ "Add to docify.config.json:",
317
+ JSON.stringify({ publish: { accountId: first } }, null, 2),
318
+ "(Pick the correct account id from the list above.)",
319
+ ].join("\n"),
320
+ };
321
+ }
322
+ effectiveAccountId = accounts[0].id;
323
+ return { ok: true, accountId: effectiveAccountId, accounts };
324
+ }
76
325
  async function verifyDeployment(baseUrl) {
77
326
  const checked = [];
78
327
  const failed = [];
@@ -94,7 +343,7 @@ export function createDocifyPublisher(configInput, deps = {}) {
94
343
  providerUrl: baseUrl,
95
344
  });
96
345
  }
97
- function preflight() {
346
+ function preflightBuildLimits() {
98
347
  if (!existsSync(outputDir)) {
99
348
  throw new Error(`Build output missing: ${outputDir}. Run build first.`);
100
349
  }
@@ -108,12 +357,7 @@ export function createDocifyPublisher(configInput, deps = {}) {
108
357
  }
109
358
  function runPreflight() {
110
359
  try {
111
- preflight();
112
- const { count } = countFiles(outputDir);
113
- return baseResult("production", {
114
- status: "preflight-ok",
115
- message: `${count} files under ${PAGES_MAX_FILES}; account=${accountId || "(default wrangler session)"}`,
116
- });
360
+ preflightBuildLimits();
117
361
  }
118
362
  catch (e) {
119
363
  return baseResult("production", {
@@ -121,10 +365,47 @@ export function createDocifyPublisher(configInput, deps = {}) {
121
365
  message: e instanceof Error ? e.message : String(e),
122
366
  });
123
367
  }
368
+ const account = resolveAccount();
369
+ if (!account.ok) {
370
+ return baseResult("production", {
371
+ status: account.status,
372
+ message: account.message,
373
+ });
374
+ }
375
+ const { count } = countFiles(outputDir);
376
+ return baseResult("production", {
377
+ status: "preflight-ok",
378
+ message: `${count} files under ${PAGES_MAX_FILES}; account=${account.accountId}`,
379
+ });
380
+ }
381
+ function ensureAccountOrFail(environment = "production") {
382
+ const account = resolveAccount();
383
+ if (!account.ok) {
384
+ return baseResult(environment, {
385
+ status: account.status,
386
+ message: account.message,
387
+ });
388
+ }
389
+ return null;
390
+ }
391
+ function listProjects() {
392
+ let list = wrangler(["pages", "project", "list", "--json"]);
393
+ let projects = parsePagesProjectList(list.stdout || list.stderr || "");
394
+ if (list.status !== 0 || projects.length === 0) {
395
+ list = wrangler(["pages", "project", "list"]);
396
+ if (list.status !== 0) {
397
+ return {
398
+ ok: false,
399
+ result: baseResult("production", {
400
+ status: "setup-failed",
401
+ message: failedMessage(list, "Failed to list Cloudflare Pages projects"),
402
+ }),
403
+ };
404
+ }
405
+ projects = parsePagesProjectList(list.stdout || list.stderr || "");
406
+ }
407
+ return { ok: true, projects };
124
408
  }
125
- const dashboard = accountId
126
- ? `https://dash.cloudflare.com/${accountId}/pages/view/${project}`
127
- : `https://dash.cloudflare.com/?to=/:account/pages/view/${project}`;
128
409
  return {
129
410
  validateConfig() {
130
411
  return config;
@@ -136,61 +417,118 @@ export function createDocifyPublisher(configInput, deps = {}) {
136
417
  if (r.status !== 0) {
137
418
  return baseResult("production", {
138
419
  status: "connect-failed",
139
- message: r.stderr || r.stdout || "wrangler login failed",
420
+ message: failedMessage(r, "wrangler login failed"),
140
421
  });
141
422
  }
142
423
  const who = wrangler(["whoami"]);
143
424
  return baseResult("production", {
144
425
  status: "connected",
145
- message: (who.stdout || "Connected").trim(),
426
+ message: (who.stdout || who.stderr || "Connected").trim() || "Connected",
146
427
  });
147
428
  },
148
429
  async whoami() {
149
430
  const who = wrangler(["whoami"]);
150
431
  return baseResult("production", {
151
432
  status: who.status === 0 ? "ok" : "whoami-failed",
152
- message: (who.stdout || who.stderr || "").trim(),
153
- dashboardUrl: dashboard,
433
+ message: who.status === 0
434
+ ? (who.stdout || who.stderr || "").trim() || "ok"
435
+ : failedMessage(who, "wrangler whoami failed"),
436
+ dashboardUrl: dashboardFor(project),
154
437
  });
155
438
  },
156
439
  preflight: runPreflight,
157
440
  async setup() {
441
+ const accountFail = ensureAccountOrFail();
442
+ if (accountFail) {
443
+ return { ...accountFail, status: "setup-failed", message: accountFail.message };
444
+ }
158
445
  log(`Setting up Cloudflare Pages project "${project}" for ${hostname}…`);
159
- const list = wrangler(["pages", "project", "list"]);
160
- const exists = (list.stdout || "").includes(project);
161
- if (!exists) {
162
- const confirmed = deps.confirm == null
163
- ? true
164
- : await deps.confirm(`Create Cloudflare Pages project "${project}"? Direct Upload projects cannot later switch to Git integration.`);
165
- if (!confirmed) {
446
+ const listed = listProjects();
447
+ if (!listed.ok)
448
+ return listed.result;
449
+ const { projects } = listed;
450
+ const byHostname = findProjectByHostname(projects, hostname);
451
+ const nameExists = projects.some((p) => p.name === project);
452
+ if (byHostname) {
453
+ if (byHostname.name === project) {
166
454
  return baseResult("production", {
167
- status: "setup-cancelled",
168
- message: "User cancelled project creation",
455
+ status: "adopted-existing-project",
456
+ message: `Hostname ${hostname} is already on Pages project "${project}". Associate custom domain in the dashboard if needed. Docify will not delete other domains.`,
457
+ dashboardUrl: dashboardFor(project),
169
458
  });
170
459
  }
171
- const created = wrangler([
172
- "pages",
173
- "project",
174
- "create",
175
- project,
176
- "--production-branch",
177
- publishCfg.productionBranch,
178
- ]);
179
- if (created.status !== 0) {
460
+ if (!adoptExisting) {
180
461
  return baseResult("production", {
181
462
  status: "setup-failed",
182
- message: created.stderr || created.stdout,
463
+ message: [
464
+ `Hostname ${hostname} is already bound to Pages project "${byHostname.name}", but docify.config.json has projectName "${project}".`,
465
+ `Set "projectName": "${byHostname.name}" (or pass --adopt / publish.adoptExistingProject: true) and retry.`,
466
+ ].join("\n"),
467
+ project: byHostname.name,
468
+ dashboardUrl: dashboardFor(byHostname.name),
183
469
  });
184
470
  }
471
+ project = byHostname.name;
472
+ return baseResult("production", {
473
+ status: "adopted-existing-project",
474
+ message: `Adopted existing Pages project "${project}" that already serves ${hostname} (config projectName differed).`,
475
+ dashboardUrl: dashboardFor(project),
476
+ });
477
+ }
478
+ if (nameExists) {
479
+ return baseResult("production", {
480
+ status: "adopted-existing-project",
481
+ message: `Associate custom domain ${hostname} in Cloudflare Pages if not already linked. Docify will not delete other domains.`,
482
+ dashboardUrl: dashboardFor(project),
483
+ });
484
+ }
485
+ const confirmed = deps.confirm == null
486
+ ? true
487
+ : await deps.confirm(`Create Cloudflare Pages project "${project}"? Direct Upload projects cannot later switch to Git integration.`);
488
+ if (!confirmed) {
489
+ return baseResult("production", {
490
+ status: "setup-cancelled",
491
+ message: "User cancelled project creation",
492
+ });
493
+ }
494
+ const created = wrangler([
495
+ "pages",
496
+ "project",
497
+ "create",
498
+ project,
499
+ "--production-branch",
500
+ publishCfg.productionBranch,
501
+ ]);
502
+ if (created.status !== 0) {
503
+ return baseResult("production", {
504
+ status: "setup-failed",
505
+ message: failedMessage(created, "pages project create failed"),
506
+ });
185
507
  }
186
508
  return baseResult("production", {
187
- status: exists ? "adopted-existing-project" : "project-created",
509
+ status: "project-created",
188
510
  message: `Associate custom domain ${hostname} in Cloudflare Pages if not already linked. Docify will not delete other domains.`,
189
- dashboardUrl: dashboard,
511
+ dashboardUrl: dashboardFor(project),
190
512
  });
191
513
  },
192
514
  async deployProduction() {
193
- preflight();
515
+ try {
516
+ preflightBuildLimits();
517
+ }
518
+ catch (e) {
519
+ return baseResult("production", {
520
+ status: "deploy-failed",
521
+ message: e instanceof Error ? e.message : String(e),
522
+ });
523
+ }
524
+ const accountFail = ensureAccountOrFail();
525
+ if (accountFail) {
526
+ return {
527
+ ...accountFail,
528
+ status: "deploy-failed",
529
+ message: accountFail.message,
530
+ };
531
+ }
194
532
  log(`Deploying ${outputDir} → Pages project ${project} (production)…`);
195
533
  const r = wrangler([
196
534
  "pages",
@@ -205,7 +543,7 @@ export function createDocifyPublisher(configInput, deps = {}) {
205
543
  if (r.status !== 0) {
206
544
  return baseResult("production", {
207
545
  status: "deploy-failed",
208
- message: r.stderr || r.stdout,
546
+ message: failedMessage(r, "pages deploy failed"),
209
547
  });
210
548
  }
211
549
  const urlMatch = /https:\/\/[^\s]+/.exec(r.stdout);
@@ -220,12 +558,28 @@ export function createDocifyPublisher(configInput, deps = {}) {
220
558
  return {
221
559
  ...verified,
222
560
  providerUrl: providerUrl ?? verified.providerUrl,
223
- message: r.stdout.trim(),
224
- dashboardUrl: dashboard,
561
+ message: r.stdout.trim() || verified.message,
562
+ dashboardUrl: dashboardFor(project),
225
563
  };
226
564
  },
227
565
  async deployPreview(branch = "preview") {
228
- preflight();
566
+ try {
567
+ preflightBuildLimits();
568
+ }
569
+ catch (e) {
570
+ return baseResult("preview", {
571
+ status: "deploy-failed",
572
+ message: e instanceof Error ? e.message : String(e),
573
+ });
574
+ }
575
+ const accountFail = ensureAccountOrFail("preview");
576
+ if (accountFail) {
577
+ return {
578
+ ...accountFail,
579
+ status: "deploy-failed",
580
+ message: accountFail.message,
581
+ };
582
+ }
229
583
  const r = wrangler([
230
584
  "pages",
231
585
  "deploy",
@@ -239,7 +593,7 @@ export function createDocifyPublisher(configInput, deps = {}) {
239
593
  if (r.status !== 0) {
240
594
  return baseResult("preview", {
241
595
  status: "deploy-failed",
242
- message: r.stderr || r.stdout,
596
+ message: failedMessage(r, "pages deploy failed"),
243
597
  });
244
598
  }
245
599
  const urlMatch = /https:\/\/[^\s]+/.exec(r.stdout);
@@ -248,10 +602,18 @@ export function createDocifyPublisher(configInput, deps = {}) {
248
602
  status: "deployed",
249
603
  providerUrl,
250
604
  message: r.stdout.trim(),
251
- dashboardUrl: dashboard,
605
+ dashboardUrl: dashboardFor(project),
252
606
  });
253
607
  },
254
608
  async getStatus() {
609
+ const accountFail = ensureAccountOrFail();
610
+ if (accountFail) {
611
+ return {
612
+ ...accountFail,
613
+ status: "status-failed",
614
+ message: accountFail.message,
615
+ };
616
+ }
255
617
  const r = wrangler([
256
618
  "pages",
257
619
  "deployment",
@@ -261,11 +623,22 @@ export function createDocifyPublisher(configInput, deps = {}) {
261
623
  ]);
262
624
  return baseResult("production", {
263
625
  status: r.status === 0 ? "ok" : "status-failed",
264
- message: (r.stdout || r.stderr).trim(),
265
- dashboardUrl: dashboard,
626
+ message: r.status === 0
627
+ ? (r.stdout || r.stderr).trim() || "ok"
628
+ : failedMessage(r, "deployment list failed"),
629
+ dashboardUrl: dashboardFor(project),
266
630
  });
267
631
  },
268
632
  async listDeployments() {
633
+ const accountFail = ensureAccountOrFail();
634
+ if (accountFail) {
635
+ return {
636
+ ...accountFail,
637
+ status: "list-failed",
638
+ message: accountFail.message,
639
+ deployments: [],
640
+ };
641
+ }
269
642
  const r = wrangler([
270
643
  "pages",
271
644
  "deployment",
@@ -276,8 +649,10 @@ export function createDocifyPublisher(configInput, deps = {}) {
276
649
  return {
277
650
  ...baseResult("production", {
278
651
  status: r.status === 0 ? "ok" : "list-failed",
279
- message: (r.stdout || r.stderr).trim(),
280
- dashboardUrl: dashboard,
652
+ message: r.status === 0
653
+ ? (r.stdout || r.stderr).trim() || "ok"
654
+ : failedMessage(r, "deployment list failed"),
655
+ dashboardUrl: dashboardFor(project),
281
656
  }),
282
657
  deployments: [],
283
658
  };
@@ -287,11 +662,20 @@ export function createDocifyPublisher(configInput, deps = {}) {
287
662
  deploymentId: id,
288
663
  status: "ok",
289
664
  message: `Inspect deployment ${id} in the Cloudflare dashboard`,
290
- dashboardUrl: dashboard,
665
+ dashboardUrl: dashboardFor(project),
291
666
  });
292
667
  },
293
668
  verifyDeployment,
294
669
  async rollbackDeployment(id) {
670
+ const accountFail = ensureAccountOrFail();
671
+ if (accountFail) {
672
+ return {
673
+ ...accountFail,
674
+ deploymentId: id,
675
+ status: "rollback-failed",
676
+ message: accountFail.message,
677
+ };
678
+ }
295
679
  const r = wrangler([
296
680
  "pages",
297
681
  "deployment",
@@ -304,14 +688,13 @@ export function createDocifyPublisher(configInput, deps = {}) {
304
688
  return baseResult("production", {
305
689
  deploymentId: id,
306
690
  status: "rollback-failed",
307
- message: (r.stderr || r.stdout).trim() ||
308
- "Rollback failed. Use the Cloudflare Pages Deployments API rollback endpoint with a scoped API token.",
691
+ message: failedMessage(r, "Rollback failed. Use the Cloudflare Pages Deployments API rollback endpoint with a scoped API token."),
309
692
  });
310
693
  }
311
694
  return baseResult("production", {
312
695
  deploymentId: id,
313
696
  status: "rolled-back",
314
- message: r.stdout.trim(),
697
+ message: r.stdout.trim() || `Rolled back ${id}`,
315
698
  });
316
699
  },
317
700
  async publish(opts = {}) {
@@ -1 +1 @@
1
- {"version":3,"file":"publish.js","sourceRoot":"","sources":["../src/publish.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"publish.js","sourceRoot":"","sources":["../src/publish.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@x12i/docify-export",
3
- "version": "1.1.2",
3
+ "version": "1.2.0",
4
4
  "description": "Build content bundles, open Markdown/indexes/packs, and Cloudflare Pages publishing for x12i docify.",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",