@coze-arch/cli 0.0.1-beta.5

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 (126) hide show
  1. package/README.md +142 -0
  2. package/bin/main +2 -0
  3. package/lib/__templates__/expo/.coze +7 -0
  4. package/lib/__templates__/expo/.cozeproj/scripts/deploy_build.sh +109 -0
  5. package/lib/__templates__/expo/.cozeproj/scripts/deploy_run.sh +257 -0
  6. package/lib/__templates__/expo/README.md +13 -0
  7. package/lib/__templates__/expo/_gitignore +11 -0
  8. package/lib/__templates__/expo/app.json +63 -0
  9. package/lib/__templates__/expo/babel.config.js +9 -0
  10. package/lib/__templates__/expo/client/app/(tabs)/_layout.tsx +43 -0
  11. package/lib/__templates__/expo/client/app/(tabs)/home.tsx +1 -0
  12. package/lib/__templates__/expo/client/app/(tabs)/index.tsx +7 -0
  13. package/lib/__templates__/expo/client/app/+not-found.tsx +79 -0
  14. package/lib/__templates__/expo/client/app/_layout.tsx +33 -0
  15. package/lib/__templates__/expo/client/assets/fonts/SpaceMono-Regular.ttf +0 -0
  16. package/lib/__templates__/expo/client/assets/images/adaptive-icon.png +0 -0
  17. package/lib/__templates__/expo/client/assets/images/default-avatar.png +0 -0
  18. package/lib/__templates__/expo/client/assets/images/favicon.png +0 -0
  19. package/lib/__templates__/expo/client/assets/images/icon.png +0 -0
  20. package/lib/__templates__/expo/client/assets/images/partial-react-logo.png +0 -0
  21. package/lib/__templates__/expo/client/assets/images/react-logo.png +0 -0
  22. package/lib/__templates__/expo/client/assets/images/react-logo@2x.png +0 -0
  23. package/lib/__templates__/expo/client/assets/images/react-logo@3x.png +0 -0
  24. package/lib/__templates__/expo/client/assets/images/splash-icon.png +0 -0
  25. package/lib/__templates__/expo/client/components/Screen.tsx +330 -0
  26. package/lib/__templates__/expo/client/components/SmartDateInput.tsx +238 -0
  27. package/lib/__templates__/expo/client/constants/theme.ts +118 -0
  28. package/lib/__templates__/expo/client/contexts/AuthContext.tsx +142 -0
  29. package/lib/__templates__/expo/client/hooks/useColorScheme.ts +1 -0
  30. package/lib/__templates__/expo/client/hooks/useTheme.ts +13 -0
  31. package/lib/__templates__/expo/client/index.js +11 -0
  32. package/lib/__templates__/expo/client/screens/home/index.tsx +54 -0
  33. package/lib/__templates__/expo/client/screens/home/styles.ts +332 -0
  34. package/lib/__templates__/expo/client/scripts/install-missing-deps.js +80 -0
  35. package/lib/__templates__/expo/client/utils/index.ts +55 -0
  36. package/lib/__templates__/expo/eslint-formatter-simple.mjs +49 -0
  37. package/lib/__templates__/expo/eslint.config.mjs +98 -0
  38. package/lib/__templates__/expo/metro.config.js +53 -0
  39. package/lib/__templates__/expo/package.json +100 -0
  40. package/lib/__templates__/expo/pnpm-lock.yaml +13978 -0
  41. package/lib/__templates__/expo/src/index.ts +12 -0
  42. package/lib/__templates__/expo/template.config.js +49 -0
  43. package/lib/__templates__/expo/tsconfig.json +24 -0
  44. package/lib/__templates__/nextjs/.coze +11 -0
  45. package/lib/__templates__/nextjs/.vscode/settings.json +121 -0
  46. package/lib/__templates__/nextjs/README.md +36 -0
  47. package/lib/__templates__/nextjs/_gitignore +99 -0
  48. package/lib/__templates__/nextjs/_npmrc +22 -0
  49. package/lib/__templates__/nextjs/eslint.config.mjs +18 -0
  50. package/lib/__templates__/nextjs/next-env.d.ts +6 -0
  51. package/lib/__templates__/nextjs/next.config.ts +7 -0
  52. package/lib/__templates__/nextjs/package.json +32 -0
  53. package/lib/__templates__/nextjs/pnpm-lock.yaml +4061 -0
  54. package/lib/__templates__/nextjs/postcss.config.mjs +7 -0
  55. package/lib/__templates__/nextjs/public/file.svg +1 -0
  56. package/lib/__templates__/nextjs/public/globe.svg +1 -0
  57. package/lib/__templates__/nextjs/public/next.svg +1 -0
  58. package/lib/__templates__/nextjs/public/vercel.svg +1 -0
  59. package/lib/__templates__/nextjs/public/window.svg +1 -0
  60. package/lib/__templates__/nextjs/scripts/build.sh +14 -0
  61. package/lib/__templates__/nextjs/scripts/dev.sh +51 -0
  62. package/lib/__templates__/nextjs/scripts/start.sh +15 -0
  63. package/lib/__templates__/nextjs/src/app/favicon.ico +0 -0
  64. package/lib/__templates__/nextjs/src/app/globals.css +26 -0
  65. package/lib/__templates__/nextjs/src/app/layout.tsx +34 -0
  66. package/lib/__templates__/nextjs/src/app/page.tsx +66 -0
  67. package/lib/__templates__/nextjs/template.config.js +55 -0
  68. package/lib/__templates__/nextjs/tsconfig.json +34 -0
  69. package/lib/__templates__/react-rsbuild/.coze +11 -0
  70. package/lib/__templates__/react-rsbuild/.vscode/settings.json +121 -0
  71. package/lib/__templates__/react-rsbuild/README.md +61 -0
  72. package/lib/__templates__/react-rsbuild/_gitignore +97 -0
  73. package/lib/__templates__/react-rsbuild/_npmrc +22 -0
  74. package/lib/__templates__/react-rsbuild/package.json +31 -0
  75. package/lib/__templates__/react-rsbuild/pnpm-lock.yaml +997 -0
  76. package/lib/__templates__/react-rsbuild/rsbuild.config.ts +13 -0
  77. package/lib/__templates__/react-rsbuild/scripts/build.sh +14 -0
  78. package/lib/__templates__/react-rsbuild/scripts/dev.sh +51 -0
  79. package/lib/__templates__/react-rsbuild/scripts/start.sh +15 -0
  80. package/lib/__templates__/react-rsbuild/src/App.tsx +60 -0
  81. package/lib/__templates__/react-rsbuild/src/index.css +21 -0
  82. package/lib/__templates__/react-rsbuild/src/index.html +12 -0
  83. package/lib/__templates__/react-rsbuild/src/index.tsx +16 -0
  84. package/lib/__templates__/react-rsbuild/tailwind.config.js +9 -0
  85. package/lib/__templates__/react-rsbuild/template.config.js +54 -0
  86. package/lib/__templates__/react-rsbuild/tsconfig.json +17 -0
  87. package/lib/__templates__/rsbuild/.coze +11 -0
  88. package/lib/__templates__/rsbuild/.vscode/settings.json +7 -0
  89. package/lib/__templates__/rsbuild/README.md +61 -0
  90. package/lib/__templates__/rsbuild/_gitignore +97 -0
  91. package/lib/__templates__/rsbuild/_npmrc +22 -0
  92. package/lib/__templates__/rsbuild/package.json +24 -0
  93. package/lib/__templates__/rsbuild/pnpm-lock.yaml +888 -0
  94. package/lib/__templates__/rsbuild/rsbuild.config.ts +12 -0
  95. package/lib/__templates__/rsbuild/scripts/build.sh +14 -0
  96. package/lib/__templates__/rsbuild/scripts/dev.sh +51 -0
  97. package/lib/__templates__/rsbuild/scripts/start.sh +15 -0
  98. package/lib/__templates__/rsbuild/src/index.css +21 -0
  99. package/lib/__templates__/rsbuild/src/index.html +12 -0
  100. package/lib/__templates__/rsbuild/src/index.ts +5 -0
  101. package/lib/__templates__/rsbuild/src/main.ts +65 -0
  102. package/lib/__templates__/rsbuild/tailwind.config.js +9 -0
  103. package/lib/__templates__/rsbuild/template.config.js +54 -0
  104. package/lib/__templates__/rsbuild/tsconfig.json +16 -0
  105. package/lib/__templates__/templates.json +100 -0
  106. package/lib/__templates__/vite/.coze +11 -0
  107. package/lib/__templates__/vite/.vscode/settings.json +7 -0
  108. package/lib/__templates__/vite/README.md +61 -0
  109. package/lib/__templates__/vite/_gitignore +66 -0
  110. package/lib/__templates__/vite/_npmrc +22 -0
  111. package/lib/__templates__/vite/index.html +13 -0
  112. package/lib/__templates__/vite/package.json +24 -0
  113. package/lib/__templates__/vite/pnpm-lock.yaml +1249 -0
  114. package/lib/__templates__/vite/postcss.config.js +6 -0
  115. package/lib/__templates__/vite/scripts/build.sh +14 -0
  116. package/lib/__templates__/vite/scripts/dev.sh +51 -0
  117. package/lib/__templates__/vite/scripts/start.sh +15 -0
  118. package/lib/__templates__/vite/src/index.css +21 -0
  119. package/lib/__templates__/vite/src/index.ts +5 -0
  120. package/lib/__templates__/vite/src/main.ts +65 -0
  121. package/lib/__templates__/vite/tailwind.config.js +9 -0
  122. package/lib/__templates__/vite/template.config.js +55 -0
  123. package/lib/__templates__/vite/tsconfig.json +16 -0
  124. package/lib/__templates__/vite/vite.config.ts +15 -0
  125. package/lib/cli.js +1575 -0
  126. package/package.json +70 -0
@@ -0,0 +1,12 @@
1
+ import express from "express";
2
+
3
+ const app = express();
4
+ const port = process.env.PORT || 9091;
5
+
6
+ app.get('/api/hello', (req, res) => {
7
+ res.status(200).json({ message: 'hello world' });
8
+ });
9
+
10
+ app.listen(port, () => {
11
+ console.log(`Server listening at http://localhost:${port}/`);
12
+ });
@@ -0,0 +1,49 @@
1
+
2
+
3
+
4
+
5
+
6
+
7
+
8
+
9
+ export const paramsSchema = {
10
+ type: 'object',
11
+ properties: {
12
+ appName: {
13
+ type: 'string',
14
+ minLength: 1,
15
+ pattern: '^[a-z0-9-]+$',
16
+ description:
17
+ 'Application name (lowercase, alphanumeric and hyphens only)',
18
+ },
19
+ port: {
20
+ type: 'number',
21
+ default: 8081,
22
+ minimum: 1024,
23
+ maximum: 65535,
24
+ description: 'Metro bundler port',
25
+ },
26
+ },
27
+ required: [],
28
+ additionalProperties: false,
29
+ };
30
+
31
+ const config = {
32
+ paramsSchema,
33
+ defaultParams: {
34
+ port: 8081,
35
+ appName: 'my-expo-app',
36
+ },
37
+ onBeforeRender: async context => {
38
+ console.log(`Creating Expo project: ${context.appName}`);
39
+ return context;
40
+ },
41
+ onAfterRender: async (context, outputPath) => {
42
+ console.log(`\nProject created at: ${outputPath}`);
43
+ console.log(`\nConfiguration:`);
44
+ console.log(` - Framework: Expo`);
45
+ console.log(` - Port: ${context.port}`);
46
+ },
47
+ };
48
+
49
+ export default config;
@@ -0,0 +1,24 @@
1
+ {
2
+ "extends": "expo/tsconfig.base",
3
+ "compilerOptions": {
4
+ "skipLibCheck": true,
5
+ "jsx": "react-jsx",
6
+ "baseUrl": ".",
7
+ "strict": true,
8
+ "noEmit": true,
9
+ "paths": {
10
+ "@/*": ["./client/*"]
11
+ }
12
+ },
13
+ "include": ["**/*.ts", "**/*.tsx", ".expo/types/**/*.ts", "expo-env.d.ts"],
14
+ "exclude": [
15
+ "node_modules",
16
+ "**/*.spec.ts",
17
+ "**/*.test.ts",
18
+ "**/*.spec.tsx",
19
+ "**/*.test.tsx",
20
+ "dist",
21
+ "build",
22
+ "client/.expo"
23
+ ]
24
+ }
@@ -0,0 +1,11 @@
1
+ [project]
2
+ requires = ["nodejs-24"]
3
+
4
+ [dev]
5
+ run = ["npm", "run", "dev"]
6
+ deps = ["git"] # -> apt install git
7
+
8
+ [deploy]
9
+ build = ["npm", "run", "build"]
10
+ run = ["npm", "run", "start"]
11
+ deps = ["git"] # -> apt install git
@@ -0,0 +1,121 @@
1
+ {
2
+ "[css]": {
3
+ "editor.defaultFormatter": "esbenp.prettier-vscode"
4
+ },
5
+ "[dotenv]": {
6
+ "editor.defaultFormatter": "foxundermoon.shell-format"
7
+ },
8
+ "[html]": {
9
+ "editor.defaultFormatter": "esbenp.prettier-vscode"
10
+ },
11
+ "[ignore]": {
12
+ "editor.defaultFormatter": "foxundermoon.shell-format"
13
+ },
14
+ "[javascript]": {
15
+ "editor.defaultFormatter": "esbenp.prettier-vscode"
16
+ },
17
+ "[javascriptreact]": {
18
+ "editor.defaultFormatter": "esbenp.prettier-vscode"
19
+ },
20
+ "[json]": {
21
+ "editor.defaultFormatter": "esbenp.prettier-vscode"
22
+ },
23
+ "[jsonc]": {
24
+ "editor.defaultFormatter": "esbenp.prettier-vscode"
25
+ },
26
+ "[less]": {
27
+ "editor.defaultFormatter": "stylelint.vscode-stylelint"
28
+ },
29
+ "[scss]": {
30
+ "editor.defaultFormatter": "esbenp.prettier-vscode"
31
+ },
32
+ "[shellscript]": {
33
+ "editor.defaultFormatter": "foxundermoon.shell-format"
34
+ },
35
+ "[sql]": {
36
+ "editor.defaultFormatter": "adpyke.vscode-sql-formatter"
37
+ },
38
+ "[svg]": {
39
+ "editor.defaultFormatter": "jock.svg"
40
+ },
41
+ "[typescript]": {
42
+ "editor.defaultFormatter": "esbenp.prettier-vscode"
43
+ },
44
+ "[typescriptreact]": {
45
+ "editor.defaultFormatter": "esbenp.prettier-vscode"
46
+ },
47
+ "[xml]": {
48
+ "editor.defaultFormatter": "mblode.pretty-formatter"
49
+ },
50
+ "[yaml]": {
51
+ "editor.defaultFormatter": "esbenp.prettier-vscode"
52
+ },
53
+ "cSpell.diagnosticLevel": "Warning",
54
+ "css.validate": false,
55
+ "editor.codeActionsOnSave": {
56
+ "source.fixAll": "never",
57
+ "source.fixAll.eslint": "explicit",
58
+ "source.organizeImports": "never",
59
+ "source.removeUnused": "never",
60
+ "source.removeUnused.ts": "never",
61
+ "source.removeUnusedImports": "never",
62
+ "source.sort.json": "never"
63
+ // "source.sortImports": "always"
64
+ },
65
+ "editor.defaultFormatter": "esbenp.prettier-vscode",
66
+ "editor.formatOnPaste": false,
67
+ "editor.formatOnSave": true,
68
+ "editor.formatOnType": false,
69
+ "editor.insertSpaces": true,
70
+ "editor.minimap.enabled": true,
71
+ //
72
+ "editor.rulers": [80, 120],
73
+ "editor.semanticHighlighting.enabled": false,
74
+ "editor.tabSize": 2,
75
+ "emmet.triggerExpansionOnTab": true,
76
+ "files.associations": {
77
+ ".babelrc": "json",
78
+ ".code-workspace": "jsonc",
79
+ ".eslintrc": "jsonc",
80
+ ".eslintrc*.json": "jsonc",
81
+ ".htmlhintrc": "jsonc",
82
+ ".stylelintrc": "javascript",
83
+ "*.json": "jsonc",
84
+ "*.log": "plaintext",
85
+ "*.map": "plaintext",
86
+ "**/coverage/**/*.*": "plaintext",
87
+ "**/pnpm-lock.yaml": "plaintext",
88
+ "htmlhintrc": "jsonc",
89
+ "package.json": "json",
90
+ "README": "markdown",
91
+ "stylelintrc": "jsonc",
92
+ ".coze": "toml"
93
+ },
94
+ "files.defaultLanguage": "plaintext",
95
+ "files.eol": "\n",
96
+ "files.exclude": {
97
+ "**/.DS_Store": true,
98
+ "**/.git": true,
99
+ "**/.hg": true,
100
+ "**/.svn": true,
101
+ // "**/.lintcache": true,
102
+ "**/.swc": true,
103
+ "**/CVS": true,
104
+ "**/Thumbs.db": true
105
+ },
106
+ "files.insertFinalNewline": true,
107
+ "files.trimTrailingWhitespace": true,
108
+ "files.watcherExclude": {
109
+ "**/.git/objects/**": true,
110
+ "**/.git/subtree-cache/**": true,
111
+ "**/node_modules/*/**": true
112
+ },
113
+ "git.openRepositoryInParentFolders": "always",
114
+ "search.exclude": {
115
+ "**/dist": true,
116
+ "**/node_modules": true
117
+ },
118
+ // "editor.formatOnSaveMode": "modificationsIfAvailable",
119
+ "search.followSymlinks": false,
120
+ "search.useIgnoreFiles": true
121
+ }
@@ -0,0 +1,36 @@
1
+ # <%= appName %>
2
+
3
+ This is a [Next.js](https://nextjs.org) project created with coze-coding CLI.
4
+
5
+ ## Getting Started
6
+
7
+ First, run the development server:
8
+
9
+ ```bash
10
+ npm run dev
11
+ # or
12
+ pnpm dev
13
+ # or
14
+ yarn dev
15
+ ```
16
+
17
+ Open [http://localhost:<%= port %>](http://localhost:<%= port %>) with your browser to see the result.
18
+
19
+ You can start editing the page by modifying `app/page.tsx`. The page auto-updates as you edit the file.
20
+
21
+ This project uses [`next/font`](https://nextjs.org/docs/app/building-your-application/optimizing/fonts) to automatically optimize and load [Geist](https://vercel.com/font), a new font family for Vercel.
22
+
23
+ ## Learn More
24
+
25
+ To learn more about Next.js, take a look at the following resources:
26
+
27
+ - [Next.js Documentation](https://nextjs.org/docs) - learn about Next.js features and API.
28
+ - [Learn Next.js](https://nextjs.org/learn) - an interactive Next.js tutorial.
29
+
30
+ You can check out [the Next.js GitHub repository](https://github.com/vercel/next.js) - your feedback and contributions are welcome!
31
+
32
+ ## Deploy on Vercel
33
+
34
+ The easiest way to deploy your Next.js app is to use the [Vercel Platform](https://vercel.com/new?utm_medium=default-template&filter=next.js&utm_source=create-next-app&utm_campaign=create-next-app-readme) from the creators of Next.js.
35
+
36
+ Check out our [Next.js deployment documentation](https://nextjs.org/docs/app/building-your-application/deploying) for more details.
@@ -0,0 +1,99 @@
1
+ .next
2
+
3
+ # Dependencies
4
+ node_modules/
5
+ .pnp
6
+ .pnp.js
7
+
8
+ # Production build
9
+ dist/
10
+ build/
11
+ out/
12
+ .next/
13
+ .rsbuild/
14
+
15
+ # Testing
16
+ coverage/
17
+ *.lcov
18
+ .nyc_output
19
+
20
+ # Environment variables
21
+ .env
22
+ .env.local
23
+ .env.development.local
24
+ .env.test.local
25
+ .env.production.local
26
+
27
+ # Logs
28
+ logs/
29
+ *.log
30
+ npm-debug.log*
31
+ yarn-debug.log*
32
+ yarn-error.log*
33
+ pnpm-debug.log*
34
+ lerna-debug.log*
35
+
36
+ # Runtime data
37
+ pids
38
+ *.pid
39
+ *.seed
40
+ *.pid.lock
41
+
42
+ # Diagnostic reports
43
+ report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json
44
+
45
+ # Cache
46
+ .cache/
47
+ .parcel-cache/
48
+ .eslintcache
49
+ .stylelintcache
50
+ .npm
51
+ .yarn/cache
52
+ .yarn/unplugged
53
+ .yarn/build-state.yml
54
+ .yarn/install-state.gz
55
+
56
+ # Editor directories and files
57
+ .vscode/*
58
+ !.vscode/extensions.json
59
+ !.vscode/settings.json
60
+ .idea/
61
+ *.suo
62
+ *.ntvs*
63
+ *.njsproj
64
+ *.sln
65
+ *.sw?
66
+ *.swp
67
+ *.swo
68
+ *~
69
+
70
+ # OS files
71
+ .DS_Store
72
+ .DS_Store?
73
+ ._*
74
+ .Spotlight-V100
75
+ .Trashes
76
+ ehthumbs.db
77
+ Thumbs.db
78
+ Desktop.ini
79
+
80
+ # Temporary files
81
+ *.tmp
82
+ *.temp
83
+ .tmp/
84
+ .temp/
85
+
86
+ # Optional files
87
+ *.tgz
88
+ *.gz
89
+ *.zip
90
+ *.tar
91
+
92
+ # TypeScript
93
+ *.tsbuildinfo
94
+
95
+ # Misc
96
+ .vercel
97
+ .turbo
98
+
99
+ .coze-logs
@@ -0,0 +1,22 @@
1
+ registry=https://registry.npmjs.org
2
+
3
+ strictStorePkgContentCheck=false
4
+ verifyStoreIntegrity=false
5
+
6
+ # 网络优化
7
+ network-concurrency=16
8
+ fetch-retries=3
9
+ fetch-timeout=60000
10
+
11
+ # 严格使用 peer dependencies
12
+ strict-peer-dependencies=false
13
+
14
+ # 自动生成 lockfile
15
+ auto-install-peers=true
16
+
17
+ # lockfile 配置
18
+ lockfile=true
19
+ prefer-frozen-lockfile=true
20
+
21
+ # 如果 lockfile 存在但过期,更新而不是失败
22
+ resolution-mode=highest
@@ -0,0 +1,18 @@
1
+ import nextTs from 'eslint-config-next/typescript';
2
+ import nextVitals from 'eslint-config-next/core-web-vitals';
3
+ import { defineConfig, globalIgnores } from 'eslint/config';
4
+
5
+ const eslintConfig = defineConfig([
6
+ ...nextVitals,
7
+ ...nextTs,
8
+ // Override default ignores of eslint-config-next.
9
+ globalIgnores([
10
+ // Default ignores of eslint-config-next:
11
+ '.next/**',
12
+ 'out/**',
13
+ 'build/**',
14
+ 'next-env.d.ts',
15
+ ]),
16
+ ]);
17
+
18
+ export default eslintConfig;
@@ -0,0 +1,6 @@
1
+ /// <reference types="next" />
2
+ /// <reference types="next/image-types/global" />
3
+ import "./.next/types/routes.d.ts";
4
+
5
+ // NOTE: This file should not be edited
6
+ // see https://nextjs.org/docs/app/api-reference/config/typescript for more information.
@@ -0,0 +1,7 @@
1
+ import type { NextConfig } from 'next';
2
+
3
+ const nextConfig: NextConfig = {
4
+ /* config options here */
5
+ };
6
+
7
+ export default nextConfig;
@@ -0,0 +1,32 @@
1
+ {
2
+ "name": "<%= appName %>",
3
+ "version": "0.1.0",
4
+ "private": true,
5
+ "scripts": {
6
+ "build": "bash ./scripts/build.sh",
7
+ "dev": "bash ./scripts/dev.sh",
8
+ "preinstall": "npx only-allow pnpm",
9
+ "lint": "eslint",
10
+ "start": "bash ./scripts/start.sh"
11
+ },
12
+ "dependencies": {
13
+ "next": "16.1.1",
14
+ "react": "19.2.3",
15
+ "react-dom": "19.2.3"
16
+ },
17
+ "devDependencies": {
18
+ "@tailwindcss/postcss": "^4",
19
+ "@types/node": "^20",
20
+ "@types/react": "^19",
21
+ "@types/react-dom": "^19",
22
+ "eslint": "^9",
23
+ "eslint-config-next": "16.1.1",
24
+ "only-allow": "^1.2.2",
25
+ "tailwindcss": "^4",
26
+ "typescript": "^5"
27
+ },
28
+ "packageManager": "pnpm@9.0.0",
29
+ "engines": {
30
+ "pnpm": ">=9.0.0"
31
+ }
32
+ }