listpage_cli 0.0.187

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.
Files changed (45) hide show
  1. package/bin/cli.js +219 -0
  2. package/package.json +25 -0
  3. package/templates/.gitattributes +14 -0
  4. package/templates/.github/workflows/ci.yml +27 -0
  5. package/templates/app-templates/backend-tempalte/.prettierrc +4 -0
  6. package/templates/app-templates/backend-tempalte/README.md +98 -0
  7. package/templates/app-templates/backend-tempalte/nest-cli.json +8 -0
  8. package/templates/app-templates/backend-tempalte/package.json.tmpl +41 -0
  9. package/templates/app-templates/backend-tempalte/src/app.controller.ts +12 -0
  10. package/templates/app-templates/backend-tempalte/src/app.module.ts +10 -0
  11. package/templates/app-templates/backend-tempalte/src/app.service.ts +8 -0
  12. package/templates/app-templates/backend-tempalte/src/main.ts +8 -0
  13. package/templates/app-templates/backend-tempalte/tsconfig.build.json +4 -0
  14. package/templates/app-templates/backend-tempalte/tsconfig.json +25 -0
  15. package/templates/app-templates/frontend-template/.prettierignore +4 -0
  16. package/templates/app-templates/frontend-template/.prettierrc +3 -0
  17. package/templates/app-templates/frontend-template/AGENTS.md +20 -0
  18. package/templates/app-templates/frontend-template/README.md +36 -0
  19. package/templates/app-templates/frontend-template/package.json.tmpl +36 -0
  20. package/templates/app-templates/frontend-template/public/favicon.png +0 -0
  21. package/templates/app-templates/frontend-template/rsbuild.config.ts +9 -0
  22. package/templates/app-templates/frontend-template/src/App.css +6 -0
  23. package/templates/app-templates/frontend-template/src/App.tsx +8 -0
  24. package/templates/app-templates/frontend-template/src/Layout.tsx +12 -0
  25. package/templates/app-templates/frontend-template/src/api/config.tsx +25 -0
  26. package/templates/app-templates/frontend-template/src/api/index.ts +0 -0
  27. package/templates/app-templates/frontend-template/src/env.d.ts +11 -0
  28. package/templates/app-templates/frontend-template/src/index.tsx +13 -0
  29. package/templates/app-templates/frontend-template/src/router/index.tsx +12 -0
  30. package/templates/app-templates/frontend-template/tsconfig.json +25 -0
  31. package/templates/common/config/rush/.npmrc-publish +26 -0
  32. package/templates/common/config/rush/.pnpmfile.cjs +38 -0
  33. package/templates/common/config/rush/artifactory.json +109 -0
  34. package/templates/common/config/rush/build-cache.json +160 -0
  35. package/templates/common/config/rush/cobuild.json +22 -0
  36. package/templates/common/config/rush/command-line.json +407 -0
  37. package/templates/common/config/rush/common-versions.json +77 -0
  38. package/templates/common/config/rush/custom-tips.json +29 -0
  39. package/templates/common/config/rush/experiments.json +121 -0
  40. package/templates/common/config/rush/pnpm-config.json +363 -0
  41. package/templates/common/config/rush/rush-plugins.json +29 -0
  42. package/templates/common/config/rush/subspaces.json +35 -0
  43. package/templates/common/config/rush/version-policies.json +102 -0
  44. package/templates/common/git-hooks/commit-msg.sample +25 -0
  45. package/templates/rush.json +444 -0
@@ -0,0 +1,25 @@
1
+ import { HttpClient } from 'listpage-next';
2
+
3
+ const isDev = process.env.NODE_ENV === 'development';
4
+
5
+ // 创建axios实例
6
+ const apiClient = new HttpClient({
7
+ token: 'admin',
8
+ successCodes: [20000, 200],
9
+ server: {
10
+ protocol: undefined,
11
+ host: isDev ? 'localhost' : undefined,
12
+ port: isDev ? '3000' : undefined,
13
+ publicPath: '/api/v1/mbti',
14
+ },
15
+ config: {
16
+ timeout: 10000,
17
+ headers: {
18
+ 'Content-Type': 'application/json',
19
+ },
20
+ },
21
+ });
22
+
23
+ apiClient.setup();
24
+
25
+ export default apiClient;
@@ -0,0 +1,11 @@
1
+ /// <reference types="@rsbuild/core/types" />
2
+
3
+ /**
4
+ * Imports the SVG file as a React component.
5
+ * @requires [@rsbuild/plugin-svgr](https://npmjs.com/package/@rsbuild/plugin-svgr)
6
+ */
7
+ declare module '*.svg?react' {
8
+ import type React from 'react';
9
+ const ReactComponent: React.FunctionComponent<React.SVGProps<SVGSVGElement>>;
10
+ export default ReactComponent;
11
+ }
@@ -0,0 +1,13 @@
1
+ import React from 'react';
2
+ import ReactDOM from 'react-dom/client';
3
+ import App from './App';
4
+
5
+ const rootEl = document.getElementById('root');
6
+ if (rootEl) {
7
+ const root = ReactDOM.createRoot(rootEl);
8
+ root.render(
9
+ <React.StrictMode>
10
+ <App />
11
+ </React.StrictMode>,
12
+ );
13
+ }
@@ -0,0 +1,12 @@
1
+ import { createBrowserRouter } from 'react-router-dom';
2
+ import Layout from '../Layout';
3
+
4
+ export const router = createBrowserRouter([
5
+ {
6
+ path: '/',
7
+ element: <Layout />,
8
+ children: [],
9
+ },
10
+ ]);
11
+
12
+ export default router;
@@ -0,0 +1,25 @@
1
+ {
2
+ "compilerOptions": {
3
+ "lib": ["DOM", "ES2020"],
4
+ "jsx": "react-jsx",
5
+ "target": "ES2020",
6
+ "noEmit": true,
7
+ "skipLibCheck": true,
8
+ "useDefineForClassFields": true,
9
+
10
+ /* modules */
11
+ "module": "ESNext",
12
+ "moduleDetection": "force",
13
+ "moduleResolution": "bundler",
14
+ "verbatimModuleSyntax": true,
15
+ "resolveJsonModule": true,
16
+ "allowImportingTsExtensions": true,
17
+ "noUncheckedSideEffectImports": true,
18
+
19
+ /* type checking */
20
+ "strict": true,
21
+ "noUnusedLocals": true,
22
+ "noUnusedParameters": true
23
+ },
24
+ "include": ["src"]
25
+ }
@@ -0,0 +1,26 @@
1
+ # This config file is very similar to common/config/rush/.npmrc, except that .npmrc-publish
2
+ # is used by the "rush publish" command, as publishing often involves different credentials
3
+ # and registries than other operations.
4
+ #
5
+ # Before invoking the package manager, Rush will copy this file to "common/temp/publish-home/.npmrc"
6
+ # and then temporarily map that folder as the "home directory" for the current user account.
7
+ # This enables the same settings to apply for each project folder that gets published. The copied file
8
+ # will omit any config lines that reference environment variables that are undefined in that session;
9
+ # this avoids problems that would otherwise result due to a missing variable being replaced by
10
+ # an empty string.
11
+ #
12
+ # * * * SECURITY WARNING * * *
13
+ #
14
+ # It is NOT recommended to store authentication tokens in a text file on a lab machine, because
15
+ # other unrelated processes may be able to read the file. Also, the file may persist indefinitely,
16
+ # for example if the machine loses power. A safer practice is to pass the token via an
17
+ # environment variable, which can be referenced from .npmrc using ${} expansion. For example:
18
+ #
19
+ # //registry.npmjs.org/:_authToken=${NPM_AUTH_TOKEN}
20
+ #
21
+
22
+ # Explicitly specify the NPM registry that "rush publish" will use by default:
23
+ registry=https://registry.npmjs.org/
24
+
25
+ # Provide an authentication token for the above registry URL:
26
+ # //registry.npmjs.org/:_authToken=${NPM_AUTH_TOKEN}
@@ -0,0 +1,38 @@
1
+ 'use strict';
2
+
3
+ /**
4
+ * When using the PNPM package manager, you can use pnpmfile.js to workaround
5
+ * dependencies that have mistakes in their package.json file. (This feature is
6
+ * functionally similar to Yarn's "resolutions".)
7
+ *
8
+ * For details, see the PNPM documentation:
9
+ * https://pnpm.io/pnpmfile#hooks
10
+ *
11
+ * IMPORTANT: SINCE THIS FILE CONTAINS EXECUTABLE CODE, MODIFYING IT IS LIKELY TO INVALIDATE
12
+ * ANY CACHED DEPENDENCY ANALYSIS. After any modification to pnpmfile.js, it's recommended to run
13
+ * "rush update --full" so that PNPM will recalculate all version selections.
14
+ */
15
+ module.exports = {
16
+ hooks: {
17
+ readPackage
18
+ }
19
+ };
20
+
21
+ /**
22
+ * This hook is invoked during installation before a package's dependencies
23
+ * are selected.
24
+ * The `packageJson` parameter is the deserialized package.json
25
+ * contents for the package that is about to be installed.
26
+ * The `context` parameter provides a log() function.
27
+ * The return value is the updated object.
28
+ */
29
+ function readPackage(packageJson, context) {
30
+
31
+ // // The karma types have a missing dependency on typings from the log4js package.
32
+ // if (packageJson.name === '@types/karma') {
33
+ // context.log('Fixed up dependencies for @types/karma');
34
+ // packageJson.dependencies['log4js'] = '0.6.38';
35
+ // }
36
+
37
+ return packageJson;
38
+ }
@@ -0,0 +1,109 @@
1
+ /**
2
+ * This configuration file manages Rush integration with JFrog Artifactory services.
3
+ * More documentation is available on the Rush website: https://rushjs.io
4
+ */
5
+ {
6
+ "$schema": "https://developer.microsoft.com/json-schemas/rush/v5/artifactory.schema.json",
7
+
8
+ "packageRegistry": {
9
+ /**
10
+ * (Required) Set this to "true" to enable Rush to manage tokens for an Artifactory NPM registry.
11
+ * When enabled, "rush install" will automatically detect when the user's ~/.npmrc
12
+ * authentication token is missing or expired. And "rush setup" will prompt the user to
13
+ * renew their token.
14
+ *
15
+ * The default value is false.
16
+ */
17
+ "enabled": false,
18
+
19
+ /**
20
+ * (Required) Specify the URL of your NPM registry. This is the same URL that appears in
21
+ * your .npmrc file. It should look something like this example:
22
+ *
23
+ * https://your-company.jfrog.io/your-project/api/npm/npm-private/
24
+ */
25
+ "registryUrl": "",
26
+
27
+ /**
28
+ * A list of custom strings that "rush setup" should add to the user's ~/.npmrc file at the time
29
+ * when the token is updated. This could be used for example to configure the company registry
30
+ * to be used whenever NPM is invoked as a standalone command (but it's not needed for Rush
31
+ * operations like "rush add" and "rush install", which get their mappings from the monorepo's
32
+ * common/config/rush/.npmrc file).
33
+ *
34
+ * NOTE: The ~/.npmrc settings are global for the user account on a given machine, so be careful
35
+ * about adding settings that may interfere with other work outside the monorepo.
36
+ */
37
+ "userNpmrcLinesToAdd": [
38
+ // "@example:registry=https://your-company.jfrog.io/your-project/api/npm/npm-private/"
39
+ ],
40
+
41
+ /**
42
+ * (Required) Specifies the URL of the Artifactory control panel where the user can generate
43
+ * an API key. This URL is printed after the "visitWebsite" message.
44
+ * It should look something like this example: https://your-company.jfrog.io/
45
+ * Specify an empty string to suppress this line entirely.
46
+ */
47
+ "artifactoryWebsiteUrl": "",
48
+
49
+ /**
50
+ * Uncomment this line to specify the type of credential to save in the user's ~/.npmrc file.
51
+ * The default is "password", which means the user's API token will be traded in for an
52
+ * npm password specific to that registry. Optionally you can specify "authToken", which
53
+ * will save the user's API token as credentials instead.
54
+ */
55
+ // "credentialType": "password",
56
+
57
+ /**
58
+ * These settings allow the "rush setup" interactive prompts to be customized, for
59
+ * example with messages specific to your team or configuration. Specify an empty string
60
+ * to suppress that message entirely.
61
+ */
62
+ "messageOverrides": {
63
+ /**
64
+ * Overrides the message that normally says:
65
+ * "This monorepo consumes packages from an Artifactory private NPM registry."
66
+ */
67
+ // "introduction": "",
68
+
69
+ /**
70
+ * Overrides the message that normally says:
71
+ * "Please contact the repository maintainers for help with setting up an Artifactory user account."
72
+ */
73
+ // "obtainAnAccount": "",
74
+
75
+ /**
76
+ * Overrides the message that normally says:
77
+ * "Please open this URL in your web browser:"
78
+ *
79
+ * The "artifactoryWebsiteUrl" string is printed after this message.
80
+ */
81
+ // "visitWebsite": "",
82
+
83
+ /**
84
+ * Overrides the message that normally says:
85
+ * "Your user name appears in the upper-right corner of the JFrog website."
86
+ */
87
+ // "locateUserName": "",
88
+
89
+ /**
90
+ * Overrides the message that normally says:
91
+ * "Click 'Edit Profile' on the JFrog website. Click the 'Generate API Key'
92
+ * button if you haven't already done so previously."
93
+ */
94
+ // "locateApiKey": ""
95
+
96
+ /**
97
+ * Overrides the message that normally prompts:
98
+ * "What is your Artifactory user name?"
99
+ */
100
+ // "userNamePrompt": ""
101
+
102
+ /**
103
+ * Overrides the message that normally prompts:
104
+ * "What is your Artifactory API key?"
105
+ */
106
+ // "apiKeyPrompt": ""
107
+ }
108
+ }
109
+ }
@@ -0,0 +1,160 @@
1
+ /**
2
+ * This configuration file manages Rush's build cache feature.
3
+ * More documentation is available on the Rush website: https://rushjs.io
4
+ */
5
+ {
6
+ "$schema": "https://developer.microsoft.com/json-schemas/rush/v5/build-cache.schema.json",
7
+
8
+ /**
9
+ * (Required) EXPERIMENTAL - Set this to true to enable the build cache feature.
10
+ *
11
+ * See https://rushjs.io/pages/maintainer/build_cache/ for details about this experimental feature.
12
+ */
13
+ "buildCacheEnabled": false,
14
+
15
+ /**
16
+ * (Required) Choose where project build outputs will be cached.
17
+ *
18
+ * Possible values: "local-only", "azure-blob-storage", "amazon-s3"
19
+ */
20
+ "cacheProvider": "local-only",
21
+
22
+ /**
23
+ * Setting this property overrides the cache entry ID. If this property is set, it must contain
24
+ * a [hash] token.
25
+ *
26
+ * Other available tokens:
27
+ * - [projectName] Example: "@my-scope/my-project"
28
+ * - [projectName:normalize] Example: "my-scope+my-project"
29
+ * - [phaseName] Example: "_phase:test/api"
30
+ * - [phaseName:normalize] Example: "_phase:test+api"
31
+ * - [phaseName:trimPrefix] Example: "test/api"
32
+ * - [os] Example: "win32"
33
+ * - [arch] Example: "x64"
34
+ */
35
+ // "cacheEntryNamePattern": "[projectName:normalize]-[phaseName:normalize]-[hash]"
36
+
37
+ /**
38
+ * (Optional) Salt to inject during calculation of the cache key. This can be used to invalidate the cache for all projects when the salt changes.
39
+ */
40
+ // "cacheHashSalt": "1",
41
+
42
+ /**
43
+ * Use this configuration with "cacheProvider"="azure-blob-storage"
44
+ */
45
+ "azureBlobStorageConfiguration": {
46
+ /**
47
+ * (Required) The name of the the Azure storage account to use for build cache.
48
+ */
49
+ // "storageAccountName": "example",
50
+
51
+ /**
52
+ * (Required) The name of the container in the Azure storage account to use for build cache.
53
+ */
54
+ // "storageContainerName": "my-container",
55
+
56
+ /**
57
+ * The Azure environment the storage account exists in. Defaults to AzurePublicCloud.
58
+ *
59
+ * Possible values: "AzurePublicCloud", "AzureChina", "AzureGermany", "AzureGovernment"
60
+ */
61
+ // "azureEnvironment": "AzurePublicCloud",
62
+
63
+ /**
64
+ * An optional prefix for cache item blob names.
65
+ */
66
+ // "blobPrefix": "my-prefix",
67
+
68
+ /**
69
+ * If set to true, allow writing to the cache. Defaults to false.
70
+ */
71
+ // "isCacheWriteAllowed": true,
72
+
73
+ /**
74
+ * The Entra ID login flow to use. Defaults to 'AdoCodespacesAuth' on GitHub Codespaces, 'InteractiveBrowser' otherwise.
75
+ */
76
+ // "loginFlow": "InteractiveBrowser",
77
+
78
+ /**
79
+ * If set to true, reading the cache requires authentication. Defaults to false.
80
+ */
81
+ // "readRequiresAuthentication": true
82
+ },
83
+
84
+ /**
85
+ * Use this configuration with "cacheProvider"="amazon-s3"
86
+ */
87
+ "amazonS3Configuration": {
88
+ /**
89
+ * (Required unless s3Endpoint is specified) The name of the bucket to use for build cache.
90
+ * Example: "my-bucket"
91
+ */
92
+ // "s3Bucket": "my-bucket",
93
+
94
+ /**
95
+ * (Required unless s3Bucket is specified) The Amazon S3 endpoint of the bucket to use for build cache.
96
+ * This should not include any path; use the s3Prefix to set the path.
97
+ * Examples: "my-bucket.s3.us-east-2.amazonaws.com" or "http://localhost:9000"
98
+ */
99
+ // "s3Endpoint": "https://my-bucket.s3.us-east-2.amazonaws.com",
100
+
101
+ /**
102
+ * (Required) The Amazon S3 region of the bucket to use for build cache.
103
+ * Example: "us-east-1"
104
+ */
105
+ // "s3Region": "us-east-1",
106
+
107
+ /**
108
+ * An optional prefix ("folder") for cache items. It should not start with "/".
109
+ */
110
+ // "s3Prefix": "my-prefix",
111
+
112
+ /**
113
+ * If set to true, allow writing to the cache. Defaults to false.
114
+ */
115
+ // "isCacheWriteAllowed": true
116
+ },
117
+
118
+ /**
119
+ * Use this configuration with "cacheProvider"="http"
120
+ */
121
+ "httpConfiguration": {
122
+ /**
123
+ * (Required) The URL of the server that stores the caches.
124
+ * Example: "https://build-cacches.example.com/"
125
+ */
126
+ // "url": "https://build-cacches.example.com/",
127
+
128
+ /**
129
+ * (Optional) The HTTP method to use when writing to the cache (defaults to PUT).
130
+ * Should be one of PUT, POST, or PATCH.
131
+ * Example: "PUT"
132
+ */
133
+ // "uploadMethod": "PUT",
134
+
135
+ /**
136
+ * (Optional) HTTP headers to pass to the cache server.
137
+ * Example: { "X-HTTP-Company-Id": "109283" }
138
+ */
139
+ // "headers": {},
140
+
141
+ /**
142
+ * (Optional) Shell command that prints the authorization token needed to communicate with the
143
+ * cache server, and exits with exit code 0. This command will be executed from the root of
144
+ * the monorepo.
145
+ * Example: { "exec": "node", "args": ["common/scripts/auth.js"] }
146
+ */
147
+ // "tokenHandler": { "exec": "node", "args": ["common/scripts/auth.js"] },
148
+
149
+ /**
150
+ * (Optional) Prefix for cache keys.
151
+ * Example: "my-company-"
152
+ */
153
+ // "cacheKeyPrefix": "",
154
+
155
+ /**
156
+ * (Optional) If set to true, allow writing to the cache. Defaults to false.
157
+ */
158
+ // "isCacheWriteAllowed": true
159
+ }
160
+ }
@@ -0,0 +1,22 @@
1
+ /**
2
+ * This configuration file manages Rush's cobuild feature.
3
+ * More documentation is available on the Rush website: https://rushjs.io
4
+ */
5
+ {
6
+ "$schema": "https://developer.microsoft.com/json-schemas/rush/v5/cobuild.schema.json",
7
+
8
+ /**
9
+ * (Required) EXPERIMENTAL - Set this to true to enable the cobuild feature.
10
+ * RUSH_COBUILD_CONTEXT_ID should always be specified as an environment variable with an non-empty string,
11
+ * otherwise the cobuild feature will be disabled.
12
+ */
13
+ "cobuildFeatureEnabled": false,
14
+
15
+ /**
16
+ * (Required) Choose where cobuild lock will be acquired.
17
+ *
18
+ * The lock provider is registered by the rush plugins.
19
+ * For example, @rushstack/rush-redis-cobuild-plugin registers the "redis" lock provider.
20
+ */
21
+ "cobuildLockProvider": "redis"
22
+ }