@coze-arch/cli 0.0.1-alpha.912cd5 → 0.0.1-alpha.9c5406

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 (74) hide show
  1. package/lib/__templates__/expo/.coze +7 -2
  2. package/lib/__templates__/expo/.cozeproj/scripts/dev_build.sh +46 -0
  3. package/lib/__templates__/expo/.cozeproj/scripts/dev_run.sh +220 -0
  4. package/lib/__templates__/expo/.cozeproj/scripts/prod_build.sh +47 -0
  5. package/lib/__templates__/expo/.cozeproj/scripts/prod_run.sh +34 -0
  6. package/lib/__templates__/expo/README.md +66 -7
  7. package/lib/__templates__/expo/_gitignore +1 -1
  8. package/lib/__templates__/expo/_npmrc +3 -5
  9. package/lib/__templates__/expo/client/app/_layout.tsx +1 -1
  10. package/lib/__templates__/expo/client/app/home.tsx +1 -0
  11. package/lib/__templates__/expo/client/app/index.tsx +1 -0
  12. package/lib/__templates__/expo/client/app.config.ts +75 -0
  13. package/lib/__templates__/expo/client/components/ThemedText.tsx +33 -0
  14. package/lib/__templates__/expo/client/components/ThemedView.tsx +38 -0
  15. package/lib/__templates__/expo/client/constants/theme.ts +786 -50
  16. package/lib/__templates__/expo/client/contexts/AuthContext.tsx +14 -107
  17. package/lib/__templates__/expo/client/hooks/useColorScheme.ts +34 -1
  18. package/lib/__templates__/expo/client/hooks/useTheme.ts +1 -1
  19. package/lib/__templates__/expo/client/metro.config.js +121 -0
  20. package/lib/__templates__/expo/client/package.json +93 -0
  21. package/lib/__templates__/expo/client/screens/home/index.tsx +13 -42
  22. package/lib/__templates__/expo/client/screens/home/styles.ts +19 -323
  23. package/lib/__templates__/expo/client/tsconfig.json +24 -0
  24. package/lib/__templates__/expo/client/utils/index.ts +1 -2
  25. package/lib/__templates__/expo/package.json +13 -101
  26. package/lib/__templates__/expo/pnpm-lock.yaml +527 -861
  27. package/lib/__templates__/expo/pnpm-workspace.yaml +3 -0
  28. package/lib/__templates__/expo/server/package.json +32 -0
  29. package/lib/__templates__/expo/{src → server/src}/index.ts +8 -2
  30. package/lib/__templates__/expo/server/tsconfig.json +24 -0
  31. package/lib/__templates__/expo/template.config.js +2 -1
  32. package/lib/__templates__/expo/tsconfig.json +1 -24
  33. package/lib/__templates__/nextjs/.coze +4 -3
  34. package/lib/__templates__/nextjs/_npmrc +2 -1
  35. package/lib/__templates__/nextjs/next.config.ts +12 -0
  36. package/lib/__templates__/nextjs/package.json +11 -4
  37. package/lib/__templates__/nextjs/pnpm-lock.yaml +2505 -1116
  38. package/lib/__templates__/nextjs/scripts/dev.sh +8 -27
  39. package/lib/__templates__/nextjs/scripts/prepare.sh +9 -0
  40. package/lib/__templates__/nextjs/src/app/globals.css +109 -89
  41. package/lib/__templates__/nextjs/src/app/layout.tsx +19 -34
  42. package/lib/__templates__/nextjs/src/app/page.tsx +33 -21
  43. package/lib/__templates__/nextjs/src/components/ui/resizable.tsx +29 -22
  44. package/lib/__templates__/nextjs/src/components/ui/sidebar.tsx +228 -230
  45. package/lib/__templates__/nextjs/template.config.js +31 -1
  46. package/lib/__templates__/templates.json +61 -36
  47. package/lib/__templates__/vite/.coze +4 -3
  48. package/lib/__templates__/vite/README.md +204 -26
  49. package/lib/__templates__/vite/_npmrc +2 -1
  50. package/lib/__templates__/vite/eslint.config.mjs +9 -0
  51. package/lib/__templates__/vite/package.json +6 -2
  52. package/lib/__templates__/vite/pnpm-lock.yaml +3486 -19
  53. package/lib/__templates__/vite/scripts/dev.sh +7 -26
  54. package/lib/__templates__/vite/scripts/prepare.sh +9 -0
  55. package/lib/__templates__/vite/template.config.js +38 -5
  56. package/lib/__templates__/vite/vite.config.ts +3 -3
  57. package/lib/cli.js +611 -314
  58. package/package.json +10 -4
  59. package/lib/__templates__/expo/.cozeproj/scripts/deploy_build.sh +0 -109
  60. package/lib/__templates__/expo/.cozeproj/scripts/deploy_run.sh +0 -257
  61. package/lib/__templates__/expo/app.json +0 -63
  62. package/lib/__templates__/expo/babel.config.js +0 -9
  63. package/lib/__templates__/expo/client/app/(tabs)/_layout.tsx +0 -43
  64. package/lib/__templates__/expo/client/app/(tabs)/home.tsx +0 -1
  65. package/lib/__templates__/expo/client/app/(tabs)/index.tsx +0 -7
  66. package/lib/__templates__/expo/client/app/+not-found.tsx +0 -79
  67. package/lib/__templates__/expo/client/index.js +0 -12
  68. package/lib/__templates__/expo/metro.config.js +0 -53
  69. package/lib/__templates__/nextjs/.babelrc +0 -15
  70. package/lib/__templates__/nextjs/.vscode/settings.json +0 -121
  71. package/lib/__templates__/nextjs/server.mjs +0 -50
  72. package/lib/__templates__/vite/.vscode/settings.json +0 -7
  73. /package/lib/__templates__/expo/{eslint-formatter-simple.mjs → client/eslint-formatter-simple.mjs} +0 -0
  74. /package/lib/__templates__/expo/{eslint.config.mjs → client/eslint.config.mjs} +0 -0
@@ -3,44 +3,25 @@ set -Eeuo pipefail
3
3
 
4
4
  PORT=<%= port %>
5
5
  COZE_WORKSPACE_PATH="${COZE_WORKSPACE_PATH:-$(pwd)}"
6
+ DEPLOY_RUN_PORT=<%= port %>
6
7
 
7
8
  cd "${COZE_WORKSPACE_PATH}"
8
9
 
9
10
  kill_port_if_listening() {
10
11
  local pids
11
-
12
- # Check if lsof is available (macOS/BSD) or ss (Linux)
13
- if command -v lsof >/dev/null 2>&1; then
14
- # macOS/BSD using lsof
15
- pids=$(lsof -ti:${PORT} 2>/dev/null || true)
16
- elif command -v ss >/dev/null 2>&1; then
17
- # Linux using ss
18
- pids=$(ss -H -lntp 2>/dev/null | awk -v port="${PORT}" '$4 ~ ":"port"$"' | grep -o 'pid=[0-9]*' | cut -d= -f2 | paste -sd' ' - || true)
19
- else
20
- echo "Warning: neither lsof nor ss found, cannot check port ${PORT}"
21
- return
22
- fi
23
-
12
+ pids=$(ss -H -lntp 2>/dev/null | awk -v port="${DEPLOY_RUN_PORT}" '$4 ~ ":"port"$"' | grep -o 'pid=[0-9]*' | cut -d= -f2 | paste -sd' ' - || true)
24
13
  if [[ -z "${pids}" ]]; then
25
- echo "Port ${PORT} is free."
14
+ echo "Port ${DEPLOY_RUN_PORT} is free."
26
15
  return
27
16
  fi
28
-
29
- echo "Port ${PORT} in use by PIDs: ${pids} (SIGKILL)"
17
+ echo "Port ${DEPLOY_RUN_PORT} in use by PIDs: ${pids} (SIGKILL)"
30
18
  echo "${pids}" | xargs -I {} kill -9 {}
31
19
  sleep 1
32
-
33
- # Verify port is cleared
34
- if command -v lsof >/dev/null 2>&1; then
35
- pids=$(lsof -ti:${PORT} 2>/dev/null || true)
36
- elif command -v ss >/dev/null 2>&1; then
37
- pids=$(ss -H -lntp 2>/dev/null | awk -v port="${PORT}" '$4 ~ ":"port"$"' | grep -o 'pid=[0-9]*' | cut -d= -f2 | paste -sd' ' - || true)
38
- fi
39
-
20
+ pids=$(ss -H -lntp 2>/dev/null | awk -v port="${DEPLOY_RUN_PORT}" '$4 ~ ":"port"$"' | grep -o 'pid=[0-9]*' | cut -d= -f2 | paste -sd' ' - || true)
40
21
  if [[ -n "${pids}" ]]; then
41
- echo "Warning: port ${PORT} still busy after SIGKILL, PIDs: ${pids}"
22
+ echo "Warning: port ${DEPLOY_RUN_PORT} still busy after SIGKILL, PIDs: ${pids}"
42
23
  else
43
- echo "Port ${PORT} cleared."
24
+ echo "Port ${DEPLOY_RUN_PORT} cleared."
44
25
  fi
45
26
  }
46
27
 
@@ -0,0 +1,9 @@
1
+ #!/bin/bash
2
+ set -Eeuo pipefail
3
+
4
+ COZE_WORKSPACE_PATH="${COZE_WORKSPACE_PATH:-$(pwd)}"
5
+
6
+ cd "${COZE_WORKSPACE_PATH}"
7
+
8
+ echo "Installing dependencies..."
9
+ pnpm install --prefer-frozen-lockfile --prefer-offline --loglevel debug --reporter=append-only
@@ -7,6 +7,7 @@
7
7
 
8
8
 
9
9
 
10
+
10
11
  export const paramsSchema = {
11
12
  type: 'object',
12
13
  properties: {
@@ -24,17 +25,29 @@ export const paramsSchema = {
24
25
  maximum: 65535,
25
26
  description: 'Development server port',
26
27
  },
28
+ hmrPort: {
29
+ type: 'number',
30
+ default: 6000,
31
+ minimum: 1024,
32
+ maximum: 65535,
33
+ description: 'Development HMR server port',
34
+ },
27
35
  },
28
36
  required: [],
29
37
  additionalProperties: false,
30
38
  };
31
39
 
40
+ const description = `Vite(简单项目):\`coze init \${COZE_WORKSPACE_PATH} --template vite\`
41
+ - 适用:轻量级 SPA、纯前端交互、仪表盘等轻量级项目。`;
42
+
32
43
  const config = {
44
+ description: description,
33
45
  paramsSchema,
34
46
 
35
47
  defaultParams: {
36
48
  port: 5000,
37
- appName: 'app',
49
+ hmrPort: 6000,
50
+ appName: 'projects',
38
51
  },
39
52
 
40
53
  onBeforeRender: async context => {
@@ -46,11 +59,31 @@ const config = {
46
59
 
47
60
  onAfterRender: async (context, outputPath) => {
48
61
  console.log(`\nProject created at: ${outputPath}`);
49
- console.log(`\nConfiguration:`);
50
- console.log(` - TypeScript: enabled`);
51
- console.log(` - Framework: None (Vanilla JS/TS)`);
52
- console.log(` - Build Tool: Vite`);
62
+ console.log('\nConfiguration:');
63
+ console.log(' - Framework: vite');
64
+ console.log(' - TypeScript: enabled');
65
+ console.log(' - App Router: enabled');
53
66
  console.log(` - Port: ${context.port}`);
67
+
68
+ // Skip pnpm add in test environment to avoid monorepo workspace issues
69
+ if (process.env.NODE_ENV === 'test') {
70
+ console.log('⊘ Skipping dependency update in test environment');
71
+ return;
72
+ }
73
+
74
+ const cmd = `pnpm add coze-coding-dev-sdk@"^0.7.0"`;
75
+ console.log(`${cmd}`);
76
+ try {
77
+ const projectRoot = resolve(outputPath);
78
+ execSync(cmd, {
79
+ cwd: projectRoot,
80
+ stdio: 'inherit',
81
+ });
82
+ console.log('✓ coze-coding-dev-sdk updated successfully');
83
+ } catch (error) {
84
+ console.error('✗ Failed to update coze-coding-dev-sdk:', error);
85
+ throw error;
86
+ }
54
87
  },
55
88
  };
56
89
 
@@ -1,13 +1,13 @@
1
1
  import { defineConfig } from 'vite';
2
2
 
3
3
  export default defineConfig({
4
- port: '<%= port %>',
5
- host: '0.0.0.0',
6
4
  server: {
5
+ port: <%= port %>,
6
+ host: '0.0.0.0',
7
7
  hmr: {
8
8
  overlay: true,
9
9
  path: '/hot/vite-hmr',
10
- port: '<%= port %>',
10
+ port: <%= hmrPort %>,
11
11
  clientPort: 443,
12
12
  timeout: 30000,
13
13
  },