@modern-js/main-doc 2.0.0-beta.1 → 2.0.0-beta.2
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/.turbo/turbo-build.log +1 -1
- package/en/docusaurus-plugin-content-docs/current/apis/app/commands/build.md +1 -1
- package/en/docusaurus-plugin-content-docs/current/apis/app/commands/dev.md +1 -1
- package/en/docusaurus-plugin-content-docs/current/apis/app/commands/lint.md +1 -1
- package/en/docusaurus-plugin-content-docs/current/apis/app/commands/new.md +1 -2
- package/en/docusaurus-plugin-content-docs/current/apis/app/commands/start.md +1 -1
- package/en/docusaurus-plugin-content-docs/current/apis/app/commands/test.md +1 -1
- package/en/docusaurus-plugin-content-docs/current/apis/app/overview.md +1 -1
- package/en/docusaurus-plugin-content-docs/current/apis/app/runtime/model/auto-actions.md +1 -1
- package/en/docusaurus-plugin-content-docs/current/apis/app/runtime/model/connect.md +1 -1
- package/en/docusaurus-plugin-content-docs/current/apis/app/runtime/model/create-app.md +1 -1
- package/en/docusaurus-plugin-content-docs/current/apis/app/runtime/model/create-store.md +1 -1
- package/en/docusaurus-plugin-content-docs/current/apis/app/runtime/model/handle-effect.md +1 -1
- package/en/docusaurus-plugin-content-docs/current/apis/app/runtime/model/model_.md +1 -1
- package/en/docusaurus-plugin-content-docs/current/apis/app/runtime/model/use-local-model.md +1 -1
- package/en/docusaurus-plugin-content-docs/current/apis/app/runtime/model/use-model.md +1 -1
- package/en/docusaurus-plugin-content-docs/current/apis/app/runtime/model/use-static-model.md +1 -1
- package/en/docusaurus-plugin-content-docs/current/apis/app/runtime/model/use-store.md +1 -1
- package/en/docusaurus-plugin-content-docs/current/components/command-tip.md +56 -0
- package/en/docusaurus-plugin-content-docs/current/components/reduck-tip.md +5 -0
- package/en/docusaurus-plugin-content-docs/current/configure/app/output/disable-css-extract.md +12 -0
- package/en/docusaurus-plugin-content-docs/current/configure/app/runtime/router.md +1 -1
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/generator/_category_.json +4 -0
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/generator/codesmith/_category_.json +4 -0
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/generator/codesmith/api/_category_.json +4 -0
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/generator/codesmith/api/app.md +152 -0
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/generator/codesmith/api/ejs.md +56 -0
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/generator/codesmith/api/fs.md +54 -0
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/generator/codesmith/api/git.md +49 -0
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/generator/codesmith/api/handlebars.md +58 -0
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/generator/codesmith/api/json.md +59 -0
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/generator/codesmith/api/npm.md +49 -0
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/generator/codesmith/develop.md +52 -0
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/generator/codesmith/introduce.md +46 -0
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/generator/codesmith/run-in-js.md +48 -0
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/generator/codesmith/structure.md +87 -0
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/generator/config/_category_.json +4 -0
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/generator/config/common.md +106 -0
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/generator/config/module.md +39 -0
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/generator/config/monorepo.md +28 -0
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/generator/config/mwa.md +89 -0
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/generator/plugin/_category_.json +4 -0
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/generator/plugin/abstract.md +26 -0
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/generator/plugin/api/_category_.json +4 -0
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/generator/plugin/api/file/_category_.json +4 -0
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/generator/plugin/api/file/addFile.md +52 -0
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/generator/plugin/api/file/addHelper.md +26 -0
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/generator/plugin/api/file/addManyFile.md +58 -0
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/generator/plugin/api/file/addPartial.md +26 -0
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/generator/plugin/api/file/introduce.md +38 -0
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/generator/plugin/api/file/rmDir.md +24 -0
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/generator/plugin/api/file/rmFile.md +24 -0
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/generator/plugin/api/file/updateJSONFile.md +54 -0
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/generator/plugin/api/file/updateModernConfig.md +26 -0
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/generator/plugin/api/file/updateTextRawFile.md +33 -0
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/generator/plugin/api/git/_category_.json +4 -0
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/generator/plugin/api/git/gitAddAndCommit.md +20 -0
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/generator/plugin/api/git/initGitRepo.md +16 -0
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/generator/plugin/api/git/isInGitRepo.md +16 -0
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/generator/plugin/api/hook/_category_.json +4 -0
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/generator/plugin/api/hook/afterForged.md +35 -0
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/generator/plugin/api/hook/onForged.md +36 -0
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/generator/plugin/api/info/_category_.json +4 -0
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/generator/plugin/api/info/isFileExit.md +22 -0
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/generator/plugin/api/info/locale.md +17 -0
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/generator/plugin/api/info/readDir.md +22 -0
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/generator/plugin/api/input/_category_.json +4 -0
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/generator/plugin/api/input/addInputAfter.md +57 -0
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/generator/plugin/api/input/addInputBefore.md +56 -0
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/generator/plugin/api/input/setInput.md +42 -0
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/generator/plugin/api/input/setInputValue.md +30 -0
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/generator/plugin/api/input/type.md +65 -0
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/generator/plugin/api/introduce.md +91 -0
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/generator/plugin/api/new/_category_.json +4 -0
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/generator/plugin/api/new/createElement.md +33 -0
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/generator/plugin/api/new/createSubProject.md +35 -0
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/generator/plugin/api/new/enableFunc.md +44 -0
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/generator/plugin/api/new/introduce.md +15 -0
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/generator/plugin/api/npm/_category_.json +4 -0
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/generator/plugin/api/npm/install.md +18 -0
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/generator/plugin/develop.md +125 -0
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/generator/plugin/use.md +61 -0
- package/en/docusaurus-plugin-content-docs/current/guides/topic-detail/generator/project.md +118 -0
- package/en/docusaurus-plugin-content-docs/current.json +39 -3
- package/package.json +3 -3
- package/scripts/summary.en.json +1 -1
- package/scripts/summary.zh.json +1 -1
- package/zh/apis/app/commands/new.md +0 -1
- package/zh/apis/app/hooks/server/test.md +2 -2
- package/zh/apis/app/runtime/web-server/hook.md +4 -4
- package/zh/apis/app/runtime/web-server/middleware.md +4 -4
- package/zh/configure/app/output/disable-css-extract.md +12 -0
- package/zh/guides/advanced-features/bff/_category_.json +5 -1
- package/zh/guides/advanced-features/bff/bff-proxy.md +5 -3
- package/zh/guides/advanced-features/bff/frameworks.md +72 -51
- package/zh/guides/advanced-features/bff/function.md +16 -30
- package/zh/guides/advanced-features/bff/index.md +20 -0
- package/zh/guides/advanced-features/bff/type.md +43 -0
- package/zh/guides/advanced-features/custom-app.md +63 -1
- package/zh/guides/advanced-features/web-server.md +21 -110
- package/zh/guides/basic-features/data-fetch.md +61 -0
- package/zh/guides/basic-features/env-vars.md +88 -41
- package/zh/guides/basic-features/routes.md +267 -0
- package/zh/guides/concept/entries.md +112 -0
- package/zh/guides/concept/lifecycle.md +10 -0
- package/zh/guides/get-started/quick-start.md +199 -1
- package/zh/guides/get-started/upgrade.md +75 -1
- package/zh/guides/topic-detail/generator/codesmith/api/_category_.json +4 -0
- package/zh/guides/topic-detail/generator/codesmith/api/app.md +152 -0
- package/zh/guides/topic-detail/generator/codesmith/api/ejs.md +56 -0
- package/zh/guides/topic-detail/generator/codesmith/api/fs.md +54 -0
- package/zh/guides/topic-detail/generator/codesmith/api/git.md +48 -0
- package/zh/guides/topic-detail/generator/codesmith/api/handlebars.md +56 -0
- package/zh/guides/topic-detail/generator/codesmith/api/json.md +58 -0
- package/zh/guides/topic-detail/generator/codesmith/api/npm.md +45 -0
- package/zh/guides/topic-detail/generator/codesmith/develop.md +52 -0
- package/zh/guides/topic-detail/generator/codesmith/introduce.md +42 -1
- package/zh/guides/topic-detail/generator/codesmith/run-in-js.md +48 -0
- package/zh/guides/topic-detail/generator/codesmith/structure.md +86 -0
- package/zh/guides/topic-detail/generator/config/mwa.md +4 -8
- package/zh/guides/topic-detail/generator/plugin/api/file/addFile.md +1 -1
- package/zh/guides/topic-detail/generator/plugin/api/file/addHelper.md +1 -1
- package/zh/guides/topic-detail/generator/plugin/api/file/addPartial.md +2 -2
- package/zh/guides/topic-detail/generator/plugin/api/file/introduce.md +1 -1
- package/zh/guides/topic-detail/generator/plugin/api/file/rmDir.md +1 -1
- package/zh/guides/topic-detail/generator/plugin/api/file/rmFile.md +1 -1
- package/zh/guides/topic-detail/generator/plugin/api/file/updateJSONFile.md +3 -2
- package/zh/guides/topic-detail/generator/plugin/api/file/updateModernConfig.md +2 -2
- package/zh/guides/topic-detail/generator/plugin/api/file/updateTextRawFile.md +1 -1
- package/zh/guides/topic-detail/generator/plugin/api/hook/afterForged.md +3 -3
- package/zh/guides/topic-detail/generator/plugin/api/hook/onForged.md +3 -3
- package/zh/guides/topic-detail/generator/plugin/api/input/addInputAfter.md +1 -1
- package/zh/guides/topic-detail/generator/plugin/api/input/addInputBefore.md +1 -1
- package/zh/guides/topic-detail/generator/plugin/api/input/type.md +1 -1
- package/zh/guides/topic-detail/generator/plugin/api/new/createElement.md +1 -1
- package/zh/guides/topic-detail/generator/plugin/api/new/createSubProject.md +1 -1
- package/zh/guides/topic-detail/generator/plugin/api/new/enableFunc.md +1 -1
- package/zh/guides/topic-detail/generator/plugin/api/npm/install.md +1 -1
- package/zh/guides/topic-detail/generator/plugin/develop.md +11 -7
- package/zh/guides/topic-detail/monorepo/sub-project-interface.md +0 -2
- package/zh/tutorials/first-app/c01-getting-started/1.1-prerequisites.md +2 -2
- package/zh/tutorials/first-app/c02-generator-and-studio/2.1-generator.md +0 -8
- package/zh/tutorials/first-app/c02-generator-and-studio/2.2-boilerplates.md +15 -7
- package/zh/tutorials/first-app/c07-app-entry/7.1-intro.md +1 -1
- package/zh/tutorials/first-app/c07-app-entry/7.2-add-entry-in-cli.md +1 -5
- package/zh/tutorials/first-app/c08-client-side-routing/8.2-file-based-routing.md +0 -8
- package/en/docusaurus-plugin-content-docs/current/apis/app/runtime/env.md +0 -72
- package/zh/apis/app/runtime/env.md +0 -70
- package/zh/components/deploy.md +0 -60
- package/zh/components/dev-ide.md +0 -1
- package/zh/components/entry-name.md +0 -15
- package/zh/components/env-prepare.md +0 -1
- package/zh/components/launch-bff-choices.md +0 -6
- package/zh/guides/advanced-features/bff/bff-server.md +0 -142
- package/zh/guides/advanced-features/typescript.md +0 -4
- package/zh/guides/concept/integrated.md +0 -4
- package/zh/guides/concept/solutions.md +0 -4
@@ -0,0 +1,52 @@
|
|
1
|
+
---
|
2
|
+
sidebar_position: 4
|
3
|
+
---
|
4
|
+
|
5
|
+
# addFile
|
6
|
+
|
7
|
+
Add a single file. Use to add a single template file to the `templates` directory or add to a template file directly using templates.
|
8
|
+
|
9
|
+
This method can be used with any file type, for file types other than binary, Handlebars render is performed when files are added.
|
10
|
+
|
11
|
+
This method is available on the `onForged` time to live API parameter.
|
12
|
+
|
13
|
+
Its type is defined as:
|
14
|
+
|
15
|
+
```ts
|
16
|
+
export interface AddFileParams {
|
17
|
+
type: FileType;
|
18
|
+
file: string;
|
19
|
+
template?: string;
|
20
|
+
templateFile?: string;
|
21
|
+
force?: boolean;
|
22
|
+
data?: Record<string, string>;
|
23
|
+
}
|
24
|
+
export type ForgedAPI = {
|
25
|
+
addFile: (params: AddFileParams) => Promise<void>;
|
26
|
+
...
|
27
|
+
};
|
28
|
+
```
|
29
|
+
|
30
|
+
## type
|
31
|
+
|
32
|
+
File type, specific viewable[File type](/docs/guides/topic-detail/generator/plugin/api/file/introduce).
|
33
|
+
|
34
|
+
## file
|
35
|
+
|
36
|
+
The path to the created target file.
|
37
|
+
|
38
|
+
## template
|
39
|
+
|
40
|
+
File template, configuration This field value can be used directly for template render files. The priority is lower than `templateFile`.
|
41
|
+
|
42
|
+
## templateFile
|
43
|
+
|
44
|
+
Template file, the template file path used for rendering, its value is the relative path of `templates`.
|
45
|
+
|
46
|
+
## force
|
47
|
+
|
48
|
+
Whether to force coverage, when the added file already exists, an error will be reported in conflict by default. When setting this value to true, coverage can be forced.
|
49
|
+
|
50
|
+
## data
|
51
|
+
|
52
|
+
Handlebars renders data.
|
@@ -0,0 +1,26 @@
|
|
1
|
+
---
|
2
|
+
sidebar_position: 2
|
3
|
+
---
|
4
|
+
|
5
|
+
# addHelper
|
6
|
+
|
7
|
+
For text files, add a customized Help function of Handlebars,the specific viewable document[Custom Helpers](https://handlebarsjs.com/guide/#custom-helpers).
|
8
|
+
|
9
|
+
This method is available on the `onForged` time to live API parameter.
|
10
|
+
|
11
|
+
Its type is defined as:
|
12
|
+
|
13
|
+
```ts
|
14
|
+
export type ForgedAPI = {
|
15
|
+
addHelper: (name: string, fn: Handlebars.HelperDelegate) => void;
|
16
|
+
...
|
17
|
+
};
|
18
|
+
```
|
19
|
+
|
20
|
+
## name
|
21
|
+
|
22
|
+
help function name.
|
23
|
+
|
24
|
+
## fn
|
25
|
+
|
26
|
+
help function.
|
@@ -0,0 +1,58 @@
|
|
1
|
+
---
|
2
|
+
sidebar_position: 5
|
3
|
+
---
|
4
|
+
|
5
|
+
# addManyFile
|
6
|
+
|
7
|
+
Import in batches file. Multiple files for adding the `templates` directory.
|
8
|
+
|
9
|
+
This method can be used with any file type, for file types other than binary, Handlebars render is performed when files are added.
|
10
|
+
|
11
|
+
This method is available on the `onForged` time to live API parameter.
|
12
|
+
|
13
|
+
Its type is defined as:
|
14
|
+
|
15
|
+
```ts
|
16
|
+
export interface AddManyFilesParams {
|
17
|
+
type: FileType;
|
18
|
+
destination: string;
|
19
|
+
templateFiles: string[] | (() => string[]);
|
20
|
+
templateBase?: string;
|
21
|
+
fileNameFunc?: (name: string) => string;
|
22
|
+
data?: Record<string, string>; // template data
|
23
|
+
}
|
24
|
+
export type ForgedAPI = {
|
25
|
+
addManyFiles: (params: AddManyFilesParams) => Promise<void>;
|
26
|
+
...
|
27
|
+
};
|
28
|
+
```
|
29
|
+
|
30
|
+
## type
|
31
|
+
|
32
|
+
File type, specific viewable[File type](/docs/guides/topic-detail/generator/plugin/api/file/introduce).
|
33
|
+
|
34
|
+
## destination
|
35
|
+
|
36
|
+
Create the target folder path. Since it is an import in batches file, fill in the folder path that needs to be written here.
|
37
|
+
|
38
|
+
## templateFiles
|
39
|
+
|
40
|
+
List of template files.
|
41
|
+
|
42
|
+
This parameter supports the function parameter, as well as [globby](https://www.npmjs.com/package/globby).
|
43
|
+
|
44
|
+
## templateBase
|
45
|
+
|
46
|
+
Template base path.
|
47
|
+
|
48
|
+
The template path is usually the template file in the same directory. If the render result needs to remove the template file prefix directory, this field can be used.
|
49
|
+
|
50
|
+
Template render file content will be equal to `templateFiles - templateBase`
|
51
|
+
|
52
|
+
## fileNameFunc
|
53
|
+
|
54
|
+
Rename file function, where the file name of render is passed in once, and can be renamed in this function.
|
55
|
+
|
56
|
+
## data
|
57
|
+
|
58
|
+
Handlebars renders data.
|
@@ -0,0 +1,26 @@
|
|
1
|
+
---
|
2
|
+
sidebar_position: 3
|
3
|
+
---
|
4
|
+
|
5
|
+
# addPartial
|
6
|
+
|
7
|
+
For text files, add a customized Partial fragment of Handlebars, the specific viewable document [Partials](https://handlebarsjs.com/guide/#partials).
|
8
|
+
|
9
|
+
This method is available on the `onForged` time to live API parameter.
|
10
|
+
|
11
|
+
Its type is defined as:
|
12
|
+
|
13
|
+
```ts
|
14
|
+
export type ForgedAPI = {
|
15
|
+
addPartial: (name: string, str: Handlebars.Template) => void;
|
16
|
+
...
|
17
|
+
};
|
18
|
+
```
|
19
|
+
|
20
|
+
## name
|
21
|
+
|
22
|
+
partial name.
|
23
|
+
|
24
|
+
## str
|
25
|
+
|
26
|
+
partial template string.
|
@@ -0,0 +1,38 @@
|
|
1
|
+
---
|
2
|
+
sidebar_position: 1
|
3
|
+
---
|
4
|
+
|
5
|
+
# Introduction
|
6
|
+
|
7
|
+
The file operation API can be used in the `onForged` time to live function, which can add, delete and change the current project file.
|
8
|
+
|
9
|
+
File operation API related path to fill in the project relative path, generator plugin will automatically add the current project path prefix.
|
10
|
+
|
11
|
+
## File type
|
12
|
+
|
13
|
+
The generator plugin divides file types into the following categories:
|
14
|
+
|
15
|
+
- Text files: plain text content files, files that can be templated using handlebars.
|
16
|
+
|
17
|
+
- Binary files: pictures, audio, video and other files.
|
18
|
+
|
19
|
+
:::warning
|
20
|
+
The jsx or tsx file using the variable is a binary file, and its syntax conflicts with handlebars render, which will cause the template file failed to create.
|
21
|
+
:::
|
22
|
+
|
23
|
+
- JSON files: Files in JSON format, such as `package.json`, `tsconfig.json`.
|
24
|
+
|
25
|
+
- 文Text List File: A file consisting of lines of text, such as `.gitignore`, `.editorconfig`, `.npmrc`.
|
26
|
+
|
27
|
+
The file manipulation API for the generator plugin will operate on these four file types.
|
28
|
+
|
29
|
+
Its type is defined as:
|
30
|
+
|
31
|
+
```ts
|
32
|
+
export enum FileType {
|
33
|
+
Text = 'text',
|
34
|
+
Binary = 'binary',
|
35
|
+
Json = 'json',
|
36
|
+
TextRaw = 'textRaw',
|
37
|
+
}
|
38
|
+
```
|
@@ -0,0 +1,24 @@
|
|
1
|
+
---
|
2
|
+
sidebar_position: 10
|
3
|
+
---
|
4
|
+
|
5
|
+
# rmDir
|
6
|
+
|
7
|
+
Delete folder. This method deletes all files under the folder in recursion.
|
8
|
+
|
9
|
+
This method can be used for any file type.
|
10
|
+
|
11
|
+
This method is available on the `onForged` time to live API parameter.
|
12
|
+
|
13
|
+
Its type is defined as:
|
14
|
+
|
15
|
+
```ts
|
16
|
+
export type ForgedAPI = {
|
17
|
+
rmDir: (dirName: string) => Promise<void>;
|
18
|
+
...
|
19
|
+
};
|
20
|
+
```
|
21
|
+
|
22
|
+
## dirName
|
23
|
+
|
24
|
+
The folder name or folder path to delete.
|
@@ -0,0 +1,24 @@
|
|
1
|
+
---
|
2
|
+
sidebar_position: 9
|
3
|
+
---
|
4
|
+
|
5
|
+
# rmFile
|
6
|
+
|
7
|
+
Delete the file.
|
8
|
+
|
9
|
+
This method can be used for any file type.
|
10
|
+
|
11
|
+
This method is available on the `onForged` time to live API parameter.
|
12
|
+
|
13
|
+
Its type is defined as:
|
14
|
+
|
15
|
+
```ts
|
16
|
+
export type ForgedAPI = {
|
17
|
+
rmFile: (fileName: string) => Promise<void>;
|
18
|
+
...
|
19
|
+
};
|
20
|
+
```
|
21
|
+
|
22
|
+
## fileName
|
23
|
+
|
24
|
+
File name or file path to delete.
|
@@ -0,0 +1,54 @@
|
|
1
|
+
---
|
2
|
+
sidebar_position: 6
|
3
|
+
---
|
4
|
+
|
5
|
+
# updateJSONFile
|
6
|
+
|
7
|
+
Update the JSON file fields.
|
8
|
+
|
9
|
+
This method is suitable for JSON file types, and can batch update field values in JSON files.
|
10
|
+
|
11
|
+
This method is available on the `onForged` time to live API parameter.
|
12
|
+
|
13
|
+
Its type is defined as:
|
14
|
+
|
15
|
+
```ts
|
16
|
+
export type ForgedAPI = {
|
17
|
+
updateJSONFile: (
|
18
|
+
fileName: string,
|
19
|
+
updateInfo: Record<string, unknown>,
|
20
|
+
) => Promise<void>;
|
21
|
+
...
|
22
|
+
};
|
23
|
+
```
|
24
|
+
|
25
|
+
## fileName
|
26
|
+
|
27
|
+
The filename or file path of the JSON file.
|
28
|
+
|
29
|
+
## updateInfo
|
30
|
+
|
31
|
+
Field update information.
|
32
|
+
|
33
|
+
This information is represented in Record form.
|
34
|
+
|
35
|
+
For example, the name field needs to be updated:
|
36
|
+
|
37
|
+
|
38
|
+
```ts
|
39
|
+
api.updateJSONFile(file, {
|
40
|
+
name: "new name"
|
41
|
+
})
|
42
|
+
```
|
43
|
+
|
44
|
+
Nested fields need to be updated:
|
45
|
+
|
46
|
+
```ts
|
47
|
+
api.updateJSONFile(file, {
|
48
|
+
"dependencies.name": "new name"
|
49
|
+
})
|
50
|
+
```
|
51
|
+
|
52
|
+
:::warning
|
53
|
+
Pay attention to the field name when updating the nested field. If it is not a total volume update, the nested key should also be written into the field name.
|
54
|
+
:::
|
@@ -0,0 +1,26 @@
|
|
1
|
+
---
|
2
|
+
sidebar_position: 8
|
3
|
+
---
|
4
|
+
|
5
|
+
# updateModernConfig
|
6
|
+
|
7
|
+
Update the `modernConfig` field in `package.json`.
|
8
|
+
|
9
|
+
This method is available on the `onForged` time to live API parameter.
|
10
|
+
|
11
|
+
Its type is defined as:
|
12
|
+
|
13
|
+
```ts
|
14
|
+
export type ForgedAPI = {
|
15
|
+
updateModernConfig: (updateInfo: Record<string, any>) => Promise<void>;
|
16
|
+
...
|
17
|
+
};
|
18
|
+
```
|
19
|
+
|
20
|
+
## updateInfo
|
21
|
+
|
22
|
+
Field update information.
|
23
|
+
|
24
|
+
:::info
|
25
|
+
This function is the package of updateJSONFile, which will automatically update the `modernConfig` field of `package.json`. Just fill in the update information relative to `modernConfig` in the updateInfo.
|
26
|
+
:::
|
@@ -0,0 +1,33 @@
|
|
1
|
+
---
|
2
|
+
sidebar_position: 7
|
3
|
+
---
|
4
|
+
|
5
|
+
# updateTextRawFile
|
6
|
+
|
7
|
+
Update the text list file content.
|
8
|
+
|
9
|
+
This method works with the text list file type.
|
10
|
+
|
11
|
+
This method is available on the `onForged` time to live API parameter.
|
12
|
+
|
13
|
+
Its type is defined as:
|
14
|
+
|
15
|
+
```ts
|
16
|
+
export type ForgedAPI = {
|
17
|
+
updateTextRawFile: (
|
18
|
+
fileName: string,
|
19
|
+
update: (content: string[]) => string[],
|
20
|
+
) => Promise<void>;
|
21
|
+
...
|
22
|
+
};
|
23
|
+
```
|
24
|
+
|
25
|
+
## fileName
|
26
|
+
|
27
|
+
The filename or file path of the text list file.
|
28
|
+
|
29
|
+
## update
|
30
|
+
|
31
|
+
Update function.
|
32
|
+
|
33
|
+
The function parameter is the current file content. The content will be divided by `\n` and passed into function in the form of array. The return value of function is also array. The internal will be automatically merged with `\n` and written to the source file.
|
@@ -0,0 +1,20 @@
|
|
1
|
+
---
|
2
|
+
sidebar_position: 3
|
3
|
+
---
|
4
|
+
|
5
|
+
# gitAddAndCommit
|
6
|
+
|
7
|
+
Commit the current repository changes.
|
8
|
+
|
9
|
+
Its type is defined as:
|
10
|
+
|
11
|
+
```ts
|
12
|
+
export type AfterForgedAPI = {
|
13
|
+
gitAddAndCommit: (commitMessage: string) => Promise<void>;
|
14
|
+
...
|
15
|
+
};
|
16
|
+
```
|
17
|
+
|
18
|
+
## commitMessage
|
19
|
+
|
20
|
+
Commit information.
|
@@ -0,0 +1,35 @@
|
|
1
|
+
---
|
2
|
+
sidebar_position: 2
|
3
|
+
---
|
4
|
+
|
5
|
+
# AfterForged
|
6
|
+
|
7
|
+
`afterForged` function is the generator plugin time to live function, which is usually used to define operations such as installation dependency and Git. Professional operations will be performed after the onForged function is executed.
|
8
|
+
|
9
|
+
The method is available directly on the context.
|
10
|
+
|
11
|
+
Its type is defined as:
|
12
|
+
|
13
|
+
```ts
|
14
|
+
export type PluginAfterForgedFunc = (
|
15
|
+
api: AfterForgedAPI,
|
16
|
+
inputData: Record<string, unknown>,
|
17
|
+
) => Promise<void>;
|
18
|
+
|
19
|
+
export interface IPluginContext {
|
20
|
+
afterForged: (func: PluginAfterForgedFunc) => void;
|
21
|
+
...
|
22
|
+
}
|
23
|
+
```
|
24
|
+
|
25
|
+
## func
|
26
|
+
|
27
|
+
The onForged parameter is a callback function, and the function parameters are `api` and `inputData`.
|
28
|
+
|
29
|
+
### api
|
30
|
+
|
31
|
+
A list of supported functions in `afterForged` time to live, specifically viewabl [Git API](/docs/guides/topic-detail/generator/plugin/api/git/isInGitRepo) 和 [NPM API](/docs/guides/topic-detail/generator/plugin/api/npm/install).
|
32
|
+
|
33
|
+
### inputData
|
34
|
+
|
35
|
+
Current user input, the user can be used to obtain the current input information and configuration information.
|
@@ -0,0 +1,36 @@
|
|
1
|
+
---
|
2
|
+
sidebar_position: 1
|
3
|
+
---
|
4
|
+
|
5
|
+
# OnForged
|
6
|
+
|
7
|
+
`onForged` function is the generator plugin time to live function, which is usually used to define file type operations that will be performed after the completion of the base project solution file operation.
|
8
|
+
|
9
|
+
The method is available directly on the context.
|
10
|
+
|
11
|
+
Its type is defined as:
|
12
|
+
|
13
|
+
```ts
|
14
|
+
export type PluginForgedFunc = (
|
15
|
+
api: ForgedAPI,
|
16
|
+
inputData: Record<string, unknown>,
|
17
|
+
) => void | Promise<void>;
|
18
|
+
|
19
|
+
export interface IPluginContext {
|
20
|
+
onForged: (func: PluginForgedFunc) => void;
|
21
|
+
...
|
22
|
+
}
|
23
|
+
```
|
24
|
+
|
25
|
+
## func
|
26
|
+
|
27
|
+
The onForged parameter is a callback function, and the function parameters are `api` and `inputData`.
|
28
|
+
|
29
|
+
### api
|
30
|
+
|
31
|
+
A list of supported functions in `onForged` time to live, specifically viewable [File API] (/docs/guides/topic-detail/generator/plugin/api/file/introduce) and [Enable function API] (/docs/guides/topic-detail/generator/plugin/api/new/introduce).
|
32
|
+
|
33
|
+
|
34
|
+
### inputData
|
35
|
+
|
36
|
+
Current user input, the user can be used to obtain the current input information and configuration information.
|
@@ -0,0 +1,22 @@
|
|
1
|
+
---
|
2
|
+
sidebar_position: 2
|
3
|
+
---
|
4
|
+
|
5
|
+
# isFileExit
|
6
|
+
|
7
|
+
Determine if the file exists.
|
8
|
+
|
9
|
+
The method is available directly on the context.
|
10
|
+
|
11
|
+
Its type is defined as:
|
12
|
+
|
13
|
+
```ts
|
14
|
+
export interface IPluginContext {
|
15
|
+
isFileExit: (fileName: string) => Promise<boolean>;
|
16
|
+
...
|
17
|
+
}
|
18
|
+
```
|
19
|
+
|
20
|
+
## fileName
|
21
|
+
|
22
|
+
The file name or file path that needs to be judged is based on the relative path of the created project.
|
@@ -0,0 +1,17 @@
|
|
1
|
+
---
|
2
|
+
sidebar_position: 1
|
3
|
+
---
|
4
|
+
|
5
|
+
# locale
|
6
|
+
|
7
|
+
Current language.
|
8
|
+
|
9
|
+
The method is available directly on the context.
|
10
|
+
|
11
|
+
There are two values for this field:
|
12
|
+
|
13
|
+
- zh: Chinese
|
14
|
+
|
15
|
+
- en: English
|
16
|
+
|
17
|
+
The generator plugin can adjust the value of the relevant display field according to this field.
|
@@ -0,0 +1,22 @@
|
|
1
|
+
---
|
2
|
+
sidebar_position: 3
|
3
|
+
---
|
4
|
+
|
5
|
+
# readDir
|
6
|
+
|
7
|
+
Read the folder and get the file list.
|
8
|
+
|
9
|
+
The method is available directly on the context.
|
10
|
+
|
11
|
+
Its type is defined as:
|
12
|
+
|
13
|
+
```ts
|
14
|
+
export interface IPluginContext {
|
15
|
+
readDir: (dir: string) => Promise<string[]>;
|
16
|
+
...
|
17
|
+
}
|
18
|
+
```
|
19
|
+
|
20
|
+
## dir
|
21
|
+
|
22
|
+
Its type is defined as: folder name or path, based on the relative path of the created project.
|
@@ -0,0 +1,57 @@
|
|
1
|
+
---
|
2
|
+
sidebar_position: 3
|
3
|
+
---
|
4
|
+
|
5
|
+
# addInputAfter
|
6
|
+
|
7
|
+
Add input question after default input.
|
8
|
+
|
9
|
+
The method is available directly on the context.
|
10
|
+
|
11
|
+
Its type is defined as:
|
12
|
+
|
13
|
+
```ts
|
14
|
+
export interface IPluginContext {
|
15
|
+
addInputAfter: (key: string, input: Schema) => void;
|
16
|
+
...
|
17
|
+
}
|
18
|
+
```
|
19
|
+
|
20
|
+
## key
|
21
|
+
|
22
|
+
Modern.js the problem keyword of the configuration of the engineering solution, the specific configuration viewable [Generator Configuration](/docs/guides/topic-detail/generator/config/common).
|
23
|
+
|
24
|
+
## input
|
25
|
+
|
26
|
+
Questions that need to be added, specific type definition viewable [Customize input related type definition](/docs/guides/topic-detail/generator/plugin/api/input/type).
|
27
|
+
|
28
|
+
|
29
|
+
## Example
|
30
|
+
|
31
|
+
Add input after package management tool:
|
32
|
+
|
33
|
+
```ts
|
34
|
+
context.addInputAfter('packageManager', {
|
35
|
+
type: 'object',
|
36
|
+
properties: {
|
37
|
+
language: {
|
38
|
+
type: 'string',
|
39
|
+
title: 'Develop Language',
|
40
|
+
enum: [
|
41
|
+
{ label: 'TS', value: 'ts' },
|
42
|
+
{ label: 'ES6+', value: 'js' },
|
43
|
+
],
|
44
|
+
},
|
45
|
+
},
|
46
|
+
})
|
47
|
+
```
|
48
|
+
|
49
|
+
:::info Notes
|
50
|
+
1. The key of the added question cannot be duplicated with the key of the question of the item type itself provided by the Modern.js.
|
51
|
+
|
52
|
+
|
53
|
+
2. The priority of adding the problem `addInputAfter` is higher than `addInputBefore`. When adding After problem to one `key` and Before problem to the next key at the same time, After problem will be before Before.
|
54
|
+
|
55
|
+
|
56
|
+
3. When multiple questions need to be added before or after the same `key`, the method can be called multiple times, and the order of questions will be permutated in the order in which they are called.
|
57
|
+
:::
|