@tobi-or-not/docpress 0.6.1 → 0.7.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/dist/cli.js +415 -349
- package/dist/cli.js.map +1 -1
- package/dist/templates/theme/index.ts +2 -0
- package/package.json +25 -22
- package/types/public/templates/theme/index.d.ts +1 -1
- package/types/src/cli.d.ts +9 -0
- package/types/src/commands/build.d.ts +17 -0
- package/types/src/commands/fetch.d.ts +11 -0
- package/types/src/commands/global.d.ts +3 -0
- package/types/src/commands/prepare.d.ts +11 -0
- package/types/src/lib/fetch.d.ts +57 -0
- package/types/src/lib/git.d.ts +38 -1
- package/types/src/lib/prepare.d.ts +145 -3
- package/types/src/lib/vitepress.d.ts +8 -0
- package/types/src/schemas/build.d.ts +7 -23
- package/types/src/schemas/fetch.d.ts +19 -54
- package/types/src/schemas/global.d.ts +54 -180
- package/types/src/schemas/prepare.d.ts +20 -64
- package/types/src/utils/commands.d.ts +54 -189
- package/types/src/utils/const.d.ts +30 -0
- package/types/src/utils/functions.d.ts +90 -0
- package/types/src/utils/logger.d.ts +10 -0
- package/types/src/utils/regex.d.ts +12 -0
- package/types/src/utils/templates.d.ts +6 -0
package/types/src/lib/fetch.d.ts
CHANGED
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
import type { GlobalOpts } from '../schemas/global.js';
|
|
2
2
|
import type { FetchOpts, FetchOptsUser } from '../schemas/fetch.js';
|
|
3
3
|
import { getInfos } from './git.js';
|
|
4
|
+
/**
|
|
5
|
+
* Enhanced repository type with DocPress-specific metadata
|
|
6
|
+
*/
|
|
4
7
|
export type EnhancedRepository = Awaited<ReturnType<typeof getInfos>>['repos'][number] & {
|
|
5
8
|
docpress: {
|
|
6
9
|
branch: string;
|
|
@@ -11,14 +14,55 @@ export type EnhancedRepository = Awaited<ReturnType<typeof getInfos>>['repos'][n
|
|
|
11
14
|
replace_url: string;
|
|
12
15
|
};
|
|
13
16
|
};
|
|
17
|
+
/**
|
|
18
|
+
* Checks for the existence of documentation files in a repository
|
|
19
|
+
*
|
|
20
|
+
* @param repoOwner - Owner of the repository (username)
|
|
21
|
+
* @param repoName - Name of the repository
|
|
22
|
+
* @param branch - Branch to check for documentation
|
|
23
|
+
* @returns Object containing HTTP status codes for different documentation paths
|
|
24
|
+
*/
|
|
14
25
|
export declare function checkDoc(repoOwner: GlobalOpts['usernames'][number], repoName: string, branch: FetchOpts['branch']): Promise<{
|
|
15
26
|
rootReadmeStatus: number;
|
|
16
27
|
docsFolderStatus: number;
|
|
17
28
|
docsReadmeStatus: number;
|
|
18
29
|
}>;
|
|
30
|
+
/**
|
|
31
|
+
* Fetches documentation from a user's repositories
|
|
32
|
+
*
|
|
33
|
+
* @param options - Options for fetching documentation
|
|
34
|
+
* @param options.username - GitHub username
|
|
35
|
+
* @param options.branch - Branch to use for documentation
|
|
36
|
+
* @param options.reposFilter - Optional filter for repositories
|
|
37
|
+
* @param options.token - GitHub API token
|
|
38
|
+
*/
|
|
19
39
|
export declare function fetchDoc({ username, branch, reposFilter, token }: FetchOptsUser): Promise<void>;
|
|
40
|
+
/**
|
|
41
|
+
* Enhances repository information with DocPress metadata
|
|
42
|
+
*
|
|
43
|
+
* @param repos - List of repositories from Git provider
|
|
44
|
+
* @param branch - Branch to use for documentation
|
|
45
|
+
* @param reposFilter - Optional filter for repositories
|
|
46
|
+
* @returns Array of enhanced repositories with DocPress metadata
|
|
47
|
+
*/
|
|
20
48
|
export declare function enhanceRepositories(repos: Awaited<ReturnType<typeof getInfos>>['repos'], branch?: FetchOpts['branch'], reposFilter?: FetchOpts['reposFilter']): Promise<EnhancedRepository[]>;
|
|
49
|
+
/**
|
|
50
|
+
* Determines which files to include in the sparse checkout based on repository structure
|
|
51
|
+
*
|
|
52
|
+
* @param repo - Repository information
|
|
53
|
+
* @param branch - Branch to check for documentation
|
|
54
|
+
* @returns Array of file patterns to include in sparse checkout
|
|
55
|
+
*/
|
|
21
56
|
export declare function getSparseCheckout(repo: Awaited<ReturnType<typeof getInfos>>['repos'][number], branch: FetchOpts['branch']): Promise<string[]>;
|
|
57
|
+
/**
|
|
58
|
+
* Generates and saves user and repository information
|
|
59
|
+
*
|
|
60
|
+
* @param user - User information from Git provider
|
|
61
|
+
* @param repos - List of repositories from Git provider
|
|
62
|
+
* @param branch - Branch to use for documentation
|
|
63
|
+
* @param reposFilter - Optional filter for repositories
|
|
64
|
+
* @returns Object containing user and enhanced repository information
|
|
65
|
+
*/
|
|
22
66
|
export declare function generateInfos(user: Awaited<ReturnType<typeof getInfos>>['user'], repos: Awaited<ReturnType<typeof getInfos>>['repos'], branch?: FetchOpts['branch'], reposFilter?: FetchOpts['reposFilter']): Promise<{
|
|
23
67
|
user: {
|
|
24
68
|
login: string;
|
|
@@ -118,5 +162,18 @@ export declare function generateInfos(user: Awaited<ReturnType<typeof getInfos>>
|
|
|
118
162
|
};
|
|
119
163
|
repos: EnhancedRepository[];
|
|
120
164
|
}>;
|
|
165
|
+
/**
|
|
166
|
+
* Fetches documentation from repositories
|
|
167
|
+
*
|
|
168
|
+
* @param repos - List of enhanced repositories
|
|
169
|
+
* @param reposFilter - Optional filter for repositories
|
|
170
|
+
*/
|
|
121
171
|
export declare function getDoc(repos?: EnhancedRepository[], reposFilter?: FetchOpts['reposFilter']): Promise<void>;
|
|
172
|
+
/**
|
|
173
|
+
* Determines if a repository should be filtered out based on filter rules
|
|
174
|
+
*
|
|
175
|
+
* @param repo - Repository information
|
|
176
|
+
* @param reposFilter - Optional filter for repositories
|
|
177
|
+
* @returns True if the repository should be filtered out, false otherwise
|
|
178
|
+
*/
|
|
122
179
|
export declare function isRepoFiltered(repo: EnhancedRepository | Awaited<ReturnType<typeof getInfos>>['repos'][number], reposFilter?: FetchOpts['reposFilter']): boolean;
|
package/types/src/lib/git.d.ts
CHANGED
|
@@ -1,6 +1,15 @@
|
|
|
1
1
|
import type { GlobalOpts } from '../schemas/global.js';
|
|
2
2
|
import type { FetchOpts } from '../schemas/fetch.js';
|
|
3
3
|
import type { EnhancedRepository } from './fetch.js';
|
|
4
|
+
/**
|
|
5
|
+
* Fetches user and repository information from GitHub
|
|
6
|
+
*
|
|
7
|
+
* @param options - Options for retrieving GitHub data
|
|
8
|
+
* @param options.username - GitHub username
|
|
9
|
+
* @param options.token - GitHub API token
|
|
10
|
+
* @param options.branch - Branch to use for documentation
|
|
11
|
+
* @returns Object containing user information, repositories, and branch
|
|
12
|
+
*/
|
|
4
13
|
export declare function getInfos({ username, token, branch }: Pick<FetchOpts, 'branch'> & Pick<GlobalOpts, 'token'> & {
|
|
5
14
|
username: GlobalOpts['usernames'][number];
|
|
6
15
|
}): Promise<{
|
|
@@ -232,6 +241,9 @@ export declare function getInfos({ username, token, branch }: Pick<FetchOpts, 'b
|
|
|
232
241
|
advanced_security?: {
|
|
233
242
|
status?: "enabled" | "disabled";
|
|
234
243
|
};
|
|
244
|
+
code_security?: {
|
|
245
|
+
status?: "enabled" | "disabled";
|
|
246
|
+
};
|
|
235
247
|
dependabot_security_updates?: {
|
|
236
248
|
status?: "enabled" | "disabled";
|
|
237
249
|
};
|
|
@@ -249,8 +261,16 @@ export declare function getInfos({ username, token, branch }: Pick<FetchOpts, 'b
|
|
|
249
261
|
};
|
|
250
262
|
} | null;
|
|
251
263
|
}[];
|
|
252
|
-
branch:
|
|
264
|
+
branch: any;
|
|
253
265
|
}>;
|
|
266
|
+
/**
|
|
267
|
+
* Gets contributors for a repository
|
|
268
|
+
*
|
|
269
|
+
* @param options - Options for retrieving contributors
|
|
270
|
+
* @param options.repository - Repository information
|
|
271
|
+
* @param options.token - GitHub API token
|
|
272
|
+
* @returns Object with source repository and contributors list
|
|
273
|
+
*/
|
|
254
274
|
export declare function getContributors({ repository, token, }: {
|
|
255
275
|
repository: EnhancedRepository;
|
|
256
276
|
token: GlobalOpts['token'];
|
|
@@ -387,6 +407,10 @@ export declare function getContributors({ repository, token, }: {
|
|
|
387
407
|
master_branch?: string;
|
|
388
408
|
starred_at?: string;
|
|
389
409
|
anonymous_access_enabled?: boolean;
|
|
410
|
+
code_search_index_status?: {
|
|
411
|
+
lexical_search_ok?: boolean;
|
|
412
|
+
lexical_commit_sha?: string;
|
|
413
|
+
};
|
|
390
414
|
} | undefined;
|
|
391
415
|
contributors: never[];
|
|
392
416
|
} | {
|
|
@@ -522,7 +546,20 @@ export declare function getContributors({ repository, token, }: {
|
|
|
522
546
|
master_branch?: string;
|
|
523
547
|
starred_at?: string;
|
|
524
548
|
anonymous_access_enabled?: boolean;
|
|
549
|
+
code_search_index_status?: {
|
|
550
|
+
lexical_search_ok?: boolean;
|
|
551
|
+
lexical_commit_sha?: string;
|
|
552
|
+
};
|
|
525
553
|
};
|
|
526
554
|
contributors: any[];
|
|
527
555
|
}>;
|
|
556
|
+
/**
|
|
557
|
+
* Clones a repository with sparse checkout
|
|
558
|
+
*
|
|
559
|
+
* @param name - Repository name
|
|
560
|
+
* @param url - Repository URL
|
|
561
|
+
* @param projectDir - Directory to clone into
|
|
562
|
+
* @param branch - Branch to clone
|
|
563
|
+
* @param includes - Patterns to include in sparse checkout
|
|
564
|
+
*/
|
|
528
565
|
export declare function cloneRepo(name: string, url: string, projectDir: string, branch: string, includes: string[]): Promise<void>;
|
|
@@ -4,36 +4,80 @@ import type { GlobalOpts } from '../schemas/global.js';
|
|
|
4
4
|
import { getUserInfos } from '../utils/functions.js';
|
|
5
5
|
import type { EnhancedRepository } from './fetch.js';
|
|
6
6
|
import type { getInfos } from './git.js';
|
|
7
|
+
/**
|
|
8
|
+
* Represents a navigation page item with text and link
|
|
9
|
+
*/
|
|
7
10
|
export interface Page {
|
|
8
11
|
text: string;
|
|
9
12
|
link: string;
|
|
10
13
|
}
|
|
14
|
+
/**
|
|
15
|
+
* Represents a sidebar project with nested items
|
|
16
|
+
*/
|
|
11
17
|
export interface SidebarProject {
|
|
12
18
|
text: string;
|
|
13
19
|
collapsed: boolean;
|
|
14
|
-
items: Page[];
|
|
20
|
+
items: (Page | SidebarProject)[];
|
|
15
21
|
}
|
|
22
|
+
/**
|
|
23
|
+
* Represents a feature to display on the index page
|
|
24
|
+
*/
|
|
16
25
|
export interface Feature {
|
|
17
26
|
title: string;
|
|
18
27
|
details: string;
|
|
19
28
|
link: string;
|
|
20
29
|
}
|
|
30
|
+
/**
|
|
31
|
+
* Represents the structure of the VitePress index page
|
|
32
|
+
*/
|
|
21
33
|
export interface Index {
|
|
22
34
|
layout: string;
|
|
23
35
|
hero: {
|
|
24
36
|
name: string;
|
|
25
37
|
tagline?: string;
|
|
26
38
|
};
|
|
39
|
+
/** List of features to display */
|
|
27
40
|
features: Feature[];
|
|
28
41
|
}
|
|
42
|
+
/**
|
|
43
|
+
* Prepares the documentation structure for a user's repositories
|
|
44
|
+
*
|
|
45
|
+
* @param options - Options for documentation preparation
|
|
46
|
+
* @param options.extraHeaderPages - Array of paths to additional header pages
|
|
47
|
+
* @param options.extraPublicContent - Array of paths to additional public content
|
|
48
|
+
* @param options.extraTheme - Array of paths to additional theme files
|
|
49
|
+
* @param options.vitepressConfig - Path to the VitePress configuration file
|
|
50
|
+
* @param options.forks - Flag to include forked repositories
|
|
51
|
+
* @param options.token - GitHub token for API access
|
|
52
|
+
* @param options.username - GitHub username to fetch repositories for
|
|
53
|
+
* @param options.websiteTitle - Custom title for the documentation website
|
|
54
|
+
* @param options.websiteTagline - Custom tagline for the documentation website
|
|
55
|
+
*/
|
|
29
56
|
export declare function prepareDoc({ extraHeaderPages, extraPublicContent, extraTheme, vitepressConfig, forks, token, username, websiteTitle, websiteTagline }: Omit<PrepareOpts, 'usernames' | 'branch' | 'gitProvider' | 'reposFilter'> & {
|
|
30
57
|
username: PrepareOpts['usernames'][number];
|
|
31
58
|
}): Promise<void>;
|
|
59
|
+
/**
|
|
60
|
+
* Adds a source reference section to a markdown file
|
|
61
|
+
*
|
|
62
|
+
* @param repoUrl - URL of the GitHub repository
|
|
63
|
+
* @param outputPath - Path to the markdown file where sources will be added
|
|
64
|
+
*/
|
|
32
65
|
export declare function addSources(repoUrl: string, outputPath: string): void;
|
|
66
|
+
/**
|
|
67
|
+
* Information about website title and tagline
|
|
68
|
+
*/
|
|
33
69
|
export interface WebsiteInfos {
|
|
34
70
|
title?: string;
|
|
35
71
|
tagline?: string;
|
|
36
72
|
}
|
|
73
|
+
/**
|
|
74
|
+
* Generates the index page content for the documentation site
|
|
75
|
+
*
|
|
76
|
+
* @param features - Array of features to display on the homepage
|
|
77
|
+
* @param user - User information retrieved from GitHub
|
|
78
|
+
* @param websiteInfos - Custom title and tagline information
|
|
79
|
+
* @returns An object with index page configuration
|
|
80
|
+
*/
|
|
37
81
|
export declare function generateIndex(features: Feature[], user: ReturnType<typeof getUserInfos>, websiteInfos: WebsiteInfos): {
|
|
38
82
|
layout: string;
|
|
39
83
|
hero: {
|
|
@@ -42,13 +86,67 @@ export declare function generateIndex(features: Feature[], user: ReturnType<type
|
|
|
42
86
|
};
|
|
43
87
|
features: Feature[];
|
|
44
88
|
};
|
|
89
|
+
/**
|
|
90
|
+
* Generates feature cards for the homepage
|
|
91
|
+
*
|
|
92
|
+
* @param repoName - Name of the repository
|
|
93
|
+
* @param description - Description of the repository
|
|
94
|
+
* @param features - Optional existing features to append to
|
|
95
|
+
* @returns Array of feature objects for the homepage
|
|
96
|
+
*/
|
|
45
97
|
export declare function generateFeatures(repoName: string, description: string, features?: Feature[]): Feature[];
|
|
46
|
-
|
|
98
|
+
/**
|
|
99
|
+
* Generates a sidebar project entry for the documentation navigation
|
|
100
|
+
*
|
|
101
|
+
* @param repoName - Name of the repository
|
|
102
|
+
* @param sidebarPages - Array of sidebar pages to include in this project
|
|
103
|
+
* @returns A sidebar project configuration object
|
|
104
|
+
*/
|
|
105
|
+
export declare function generateSidebarProject(repoName: string, sidebarPages: (SidebarProject | Page)[]): {
|
|
47
106
|
text: string;
|
|
48
107
|
collapsed: boolean;
|
|
49
|
-
items: Page[];
|
|
108
|
+
items: (SidebarProject | Page)[];
|
|
50
109
|
};
|
|
110
|
+
/**
|
|
111
|
+
* Generates sidebar page entries for the documentation navigation
|
|
112
|
+
*
|
|
113
|
+
* @param repoName - Name of the repository
|
|
114
|
+
* @param fileName - Name of the file
|
|
115
|
+
* @param sidebarPages - Optional existing sidebar pages to append to
|
|
116
|
+
* @returns Array of page objects for the sidebar
|
|
117
|
+
*/
|
|
51
118
|
export declare function generateSidebarPages(repoName: string, fileName: string, sidebarPages?: Page[]): Page[];
|
|
119
|
+
/**
|
|
120
|
+
* Generates sidebar items from a repository's file structure
|
|
121
|
+
*
|
|
122
|
+
* @param repository - Repository information
|
|
123
|
+
* @param obj - Object representing the file tree structure
|
|
124
|
+
* @returns Array of sidebar items (projects and pages)
|
|
125
|
+
*/
|
|
126
|
+
export declare function generateSidebarItems(repository: EnhancedRepository, obj: any): (SidebarProject | Page)[];
|
|
127
|
+
/**
|
|
128
|
+
* Builds a tree structure from an array of file paths
|
|
129
|
+
*
|
|
130
|
+
* @param files - Array of file paths to be organized into a tree
|
|
131
|
+
* @returns A nested object representing the directory structure
|
|
132
|
+
*/
|
|
133
|
+
export declare function buildTree(files: string[]): any;
|
|
134
|
+
/**
|
|
135
|
+
* Flattens a nested tree structure into an array of file paths
|
|
136
|
+
*
|
|
137
|
+
* @param subtree - The tree object to flatten
|
|
138
|
+
* @param prefix - Optional path prefix to prepend to each result
|
|
139
|
+
* @returns An array of file paths
|
|
140
|
+
*/
|
|
141
|
+
export declare function flattenTree(subtree: any, prefix?: string): string[];
|
|
142
|
+
/**
|
|
143
|
+
* Transforms repository data into documentation structure
|
|
144
|
+
*
|
|
145
|
+
* @param repositories - Array of enhanced repositories
|
|
146
|
+
* @param user - User information retrieved from GitHub
|
|
147
|
+
* @param websiteInfos - Custom title and tagline information
|
|
148
|
+
* @returns Object containing sidebar and index page configurations
|
|
149
|
+
*/
|
|
52
150
|
export declare function transformDoc(repositories: EnhancedRepository[], user: ReturnType<typeof getUserInfos>, websiteInfos: WebsiteInfos): {
|
|
53
151
|
sidebar: SidebarProject[];
|
|
54
152
|
index: {
|
|
@@ -60,13 +158,57 @@ export declare function transformDoc(repositories: EnhancedRepository[], user: R
|
|
|
60
158
|
features: Feature[];
|
|
61
159
|
};
|
|
62
160
|
};
|
|
161
|
+
/**
|
|
162
|
+
* Adds extra pages to the documentation from specified paths
|
|
163
|
+
*
|
|
164
|
+
* @param paths - Array of paths to markdown files
|
|
165
|
+
* @returns Array of navigation page objects
|
|
166
|
+
*/
|
|
63
167
|
export declare function addExtraPages(paths: string[]): Page[];
|
|
168
|
+
/**
|
|
169
|
+
* Adds content from specified paths to a target directory
|
|
170
|
+
*
|
|
171
|
+
* @param paths - String or array of paths to content
|
|
172
|
+
* @param dir - Target directory to copy content to
|
|
173
|
+
* @param fn - Optional callback function to execute for each file
|
|
174
|
+
*/
|
|
64
175
|
export declare function addContent(paths: string | string[], dir: string, fn?: () => void): void;
|
|
176
|
+
/**
|
|
177
|
+
* Creates a fork page to display external contributions
|
|
178
|
+
*
|
|
179
|
+
* @param forks - Array of repositories and contribution counts
|
|
180
|
+
*/
|
|
65
181
|
export declare function addForkPage(forks: {
|
|
66
182
|
repository: Awaited<ReturnType<typeof getInfos>>['repos'][number];
|
|
67
183
|
contributions: number;
|
|
68
184
|
}[]): void;
|
|
185
|
+
/**
|
|
186
|
+
* Processes forked repositories to generate contribution information
|
|
187
|
+
*
|
|
188
|
+
* @param repositories - Array of enhanced repositories
|
|
189
|
+
* @param username - GitHub username
|
|
190
|
+
* @param token - Optional GitHub API token
|
|
191
|
+
*/
|
|
69
192
|
export declare function processForks(repositories: EnhancedRepository[], username: GlobalOpts['usernames'][number], token?: GlobalOpts['token']): Promise<void>;
|
|
193
|
+
/**
|
|
194
|
+
* Parses a VitePress configuration file
|
|
195
|
+
*
|
|
196
|
+
* @param path - Path to the VitePress config file
|
|
197
|
+
* @returns The parsed configuration object
|
|
198
|
+
*/
|
|
70
199
|
export declare function parseVitepressConfig(path: string): Promise<Partial<ReturnType<typeof defineConfig>>>;
|
|
200
|
+
/**
|
|
201
|
+
* Parses a VitePress index file
|
|
202
|
+
*
|
|
203
|
+
* @param path - Path to the index file
|
|
204
|
+
* @returns The parsed index object
|
|
205
|
+
*/
|
|
71
206
|
export declare function parseVitepressIndex(path: string): Promise<Index>;
|
|
207
|
+
/**
|
|
208
|
+
* Generates VitePress configuration and index files
|
|
209
|
+
*
|
|
210
|
+
* @param vitepressConfig - VitePress configuration object
|
|
211
|
+
* @param index - Index page configuration
|
|
212
|
+
* @returns The list of theme files that were generated
|
|
213
|
+
*/
|
|
72
214
|
export declare function generateVitepressFiles(vitepressConfig: Partial<ReturnType<typeof defineConfig>>, index: Index): void;
|
|
@@ -1,3 +1,11 @@
|
|
|
1
1
|
import type { defineConfig } from 'vitepress';
|
|
2
2
|
import type { Page, SidebarProject } from './prepare.js';
|
|
3
|
+
/**
|
|
4
|
+
* Generates VitePress configuration by merging default and custom configs
|
|
5
|
+
*
|
|
6
|
+
* @param sidebar - Sidebar configuration
|
|
7
|
+
* @param nav - Navigation configuration
|
|
8
|
+
* @param vitepressConfig - Optional custom VitePress configuration
|
|
9
|
+
* @returns Merged VitePress configuration
|
|
10
|
+
*/
|
|
3
11
|
export declare function getVitepressConfig(sidebar: SidebarProject[], nav: Page[], vitepressConfig?: ReturnType<typeof defineConfig>): Partial<ReturnType<typeof defineConfig>>;
|
|
@@ -1,23 +1,7 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
extraTheme: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString, "many">>;
|
|
9
|
-
forks: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodBoolean>>;
|
|
10
|
-
vitepressConfig: import("zod").ZodOptional<import("zod").ZodAny>;
|
|
11
|
-
websiteTitle: import("zod").ZodOptional<import("zod").ZodString>;
|
|
12
|
-
websiteTagline: import("zod").ZodOptional<import("zod").ZodString>;
|
|
13
|
-
}, {
|
|
14
|
-
config: import("zod").ZodOptional<import("zod").ZodString>;
|
|
15
|
-
token: import("zod").ZodOptional<import("zod").ZodString>;
|
|
16
|
-
usernames: import("zod").ZodOptional<import("zod").ZodEffects<import("zod").ZodString, string[], string>>;
|
|
17
|
-
reposFilter: import("zod").ZodOptional<import("zod").ZodEffects<import("zod").ZodString, string[], string>>;
|
|
18
|
-
extraHeaderPages: import("zod").ZodOptional<import("zod").ZodEffects<import("zod").ZodString, string[], string>>;
|
|
19
|
-
extraPublicContent: import("zod").ZodOptional<import("zod").ZodEffects<import("zod").ZodString, string[], string>>;
|
|
20
|
-
extraTheme: import("zod").ZodOptional<import("zod").ZodEffects<import("zod").ZodString, string[], string>>;
|
|
21
|
-
vitepressConfig: import("zod").ZodOptional<import("zod").ZodString>;
|
|
22
|
-
}>, never>, "strip", import("zod").ZodTypeAny, {}, {}>;
|
|
23
|
-
export type BuildOpts = Zod.infer<typeof buildOptsSchema>;
|
|
1
|
+
import type { z } from 'zod';
|
|
2
|
+
/**
|
|
3
|
+
* Schema for build command options
|
|
4
|
+
* Currently empty as build doesn't require specific options
|
|
5
|
+
*/
|
|
6
|
+
export declare const buildOptsSchema: z.ZodObject<{}, z.core.$strip>;
|
|
7
|
+
export type BuildOpts = z.infer<typeof buildOptsSchema>;
|
|
@@ -1,60 +1,25 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
import type { GlobalOpts } from './global.js';
|
|
2
|
+
/**
|
|
3
|
+
* Schema for fetch command options
|
|
4
|
+
* Includes options related to Git repository fetching
|
|
5
|
+
*/
|
|
6
|
+
export declare const fetchOptsSchema: import("zod").ZodObject<{
|
|
7
|
+
usernames: import("zod").ZodOptional<import("zod").ZodPipe<import("zod").ZodString, import("zod").ZodTransform<string[], string>>>;
|
|
3
8
|
branch: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodString>>;
|
|
4
|
-
gitProvider: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodEnum<
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
extraTheme: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString, "many">>;
|
|
9
|
-
forks: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodBoolean>>;
|
|
10
|
-
vitepressConfig: import("zod").ZodOptional<import("zod").ZodAny>;
|
|
11
|
-
websiteTitle: import("zod").ZodOptional<import("zod").ZodString>;
|
|
12
|
-
websiteTagline: import("zod").ZodOptional<import("zod").ZodString>;
|
|
13
|
-
}, {
|
|
9
|
+
gitProvider: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodEnum<{
|
|
10
|
+
github: "github";
|
|
11
|
+
}>>>;
|
|
12
|
+
reposFilter: import("zod").ZodOptional<import("zod").ZodPipe<import("zod").ZodString, import("zod").ZodTransform<string[], string>>>;
|
|
14
13
|
config: import("zod").ZodOptional<import("zod").ZodString>;
|
|
15
14
|
token: import("zod").ZodOptional<import("zod").ZodString>;
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
branch?: string | undefined;
|
|
25
|
-
gitProvider?: "github" | undefined;
|
|
26
|
-
reposFilter?: string[] | undefined;
|
|
27
|
-
config?: string | undefined;
|
|
28
|
-
token?: string | undefined;
|
|
29
|
-
}, {
|
|
30
|
-
usernames?: string | undefined;
|
|
31
|
-
branch?: string | undefined;
|
|
32
|
-
gitProvider?: "github" | undefined;
|
|
33
|
-
reposFilter?: string | undefined;
|
|
34
|
-
config?: string | undefined;
|
|
35
|
-
token?: string | undefined;
|
|
36
|
-
}>, {
|
|
37
|
-
token: string | undefined;
|
|
38
|
-
usernames: string[];
|
|
39
|
-
branch?: string | undefined;
|
|
40
|
-
gitProvider?: "github" | undefined;
|
|
41
|
-
reposFilter?: string[] | undefined;
|
|
42
|
-
extraHeaderPages?: string[] | undefined;
|
|
43
|
-
extraPublicContent?: string[] | undefined;
|
|
44
|
-
extraTheme?: string[] | undefined;
|
|
45
|
-
forks?: boolean | undefined;
|
|
46
|
-
vitepressConfig?: any;
|
|
47
|
-
websiteTitle?: string | undefined;
|
|
48
|
-
websiteTagline?: string | undefined;
|
|
49
|
-
}, {
|
|
50
|
-
usernames?: string | undefined;
|
|
51
|
-
branch?: string | undefined;
|
|
52
|
-
gitProvider?: "github" | undefined;
|
|
53
|
-
reposFilter?: string | undefined;
|
|
54
|
-
config?: string | undefined;
|
|
55
|
-
token?: string | undefined;
|
|
56
|
-
}>;
|
|
57
|
-
export type FetchOpts = Zod.infer<typeof fetchOptsSchema>;
|
|
15
|
+
}, import("zod/v4/core").$strip>;
|
|
16
|
+
/**
|
|
17
|
+
* Type for fetch options
|
|
18
|
+
*/
|
|
19
|
+
export type FetchOpts = GlobalOpts;
|
|
20
|
+
/**
|
|
21
|
+
* Type for fetch options with username instead of usernames array
|
|
22
|
+
*/
|
|
58
23
|
export type FetchOptsUser = Omit<FetchOpts, 'usernames'> & {
|
|
59
24
|
username: FetchOpts['usernames'][number];
|
|
60
25
|
};
|