@idealyst/cli 1.2.30 → 1.2.31

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 (34) hide show
  1. package/dist/constants.js +1 -1
  2. package/dist/generators/core/mobile.js +21 -19
  3. package/dist/generators/core/mobile.js.map +1 -1
  4. package/dist/generators/core/shared.js +21 -12
  5. package/dist/generators/core/shared.js.map +1 -1
  6. package/dist/generators/core/web.js +69 -12
  7. package/dist/generators/core/web.js.map +1 -1
  8. package/dist/templates/copier.js +6 -4
  9. package/dist/templates/copier.js.map +1 -1
  10. package/dist/templates/core/mobile/src/App.tsx +8 -0
  11. package/dist/templates/core/mobile/src/utils/trpc.ts +7 -0
  12. package/dist/templates/core/shared/src/components/App.tsx +13 -0
  13. package/dist/templates/core/shared/src/components/index.ts +1 -0
  14. package/dist/templates/core/shared/src/index.ts +10 -0
  15. package/dist/templates/core/shared/src/layouts/AppLayout.tsx +218 -0
  16. package/dist/templates/core/shared/src/navigation/AppRouter.tsx +103 -0
  17. package/dist/templates/core/shared/src/navigation/index.ts +1 -0
  18. package/dist/templates/core/shared/src/screens/ExploreScreen.tsx +240 -0
  19. package/dist/templates/core/shared/src/screens/HomeScreen.tsx +151 -0
  20. package/dist/templates/core/shared/src/screens/ProfileScreen.tsx +222 -0
  21. package/dist/templates/core/shared/src/screens/SettingsScreen.tsx +218 -0
  22. package/dist/templates/core/shared/src/screens/index.ts +4 -0
  23. package/dist/templates/core/shared/src/styles.ts +45 -0
  24. package/dist/templates/core/web/index.html +25 -0
  25. package/dist/templates/core/web/public/vite.svg +10 -0
  26. package/dist/templates/core/web/src/App.tsx +12 -0
  27. package/dist/templates/core/web/src/main.tsx +16 -0
  28. package/dist/templates/core/workspace/gitignore.template +78 -0
  29. package/dist/templates/core/workspace/package.json +24 -0
  30. package/dist/templates/core/workspace/react-native.config.js +19 -0
  31. package/dist/templates/core/workspace/tsconfig.json +17 -0
  32. package/dist/templates/core/workspace/yarnrc.yml.template +6 -0
  33. package/dist/types/constants.d.ts +5 -5
  34. package/package.json +3 -2
package/dist/constants.js CHANGED
@@ -7,7 +7,7 @@ exports.DEPENDENCIES = exports.IGNORE_PATTERNS = exports.TEMPLATE_EXTENSIONS = e
7
7
  // Package version - updated during build
8
8
  exports.VERSION = '0.1.0';
9
9
  // Current Idealyst framework version to use in templates
10
- exports.IDEALYST_VERSION = '1.2.26';
10
+ exports.IDEALYST_VERSION = '1.2.31';
11
11
  // React Native version
12
12
  exports.REACT_NATIVE_VERSION = '0.83.0';
13
13
  // React version
@@ -29,21 +29,22 @@ async function generateMobilePackage(projectPath, options) {
29
29
  skipInstall: options.skipInstall ?? true,
30
30
  interactive: options.interactive ?? false,
31
31
  });
32
- // Now overlay Idealyst-specific files or generate programmatically
33
- const templatePath = (0, copier_1.getTemplatePath)('core', 'mobile');
34
- if (await (0, copier_1.templateHasContent)(templatePath)) {
35
- if (rnResult.success) {
36
- // Overlay on top of RN-generated project
37
- await (0, reactNative_1.overlayIdealystFiles)(mobileDir, templatePath, options);
38
- }
39
- else {
40
- // No RN init, copy full template
41
- await (0, copier_1.copyTemplateDirectory)(templatePath, mobileDir, options);
42
- }
32
+ // Always generate config files programmatically
33
+ await generateMobileConfigFiles(mobileDir, options);
34
+ // Try to use template src/ files first, or generate programmatically
35
+ const templateSrcPath = (0, copier_1.getTemplatePath)('core', 'mobile', 'src');
36
+ if (await (0, copier_1.templateHasContent)(templateSrcPath)) {
37
+ // Copy src/ from templates (showcase-based)
38
+ await (0, copier_1.copyTemplateDirectory)(templateSrcPath, path_1.default.join(mobileDir, 'src'), options);
39
+ logger_1.logger.dim('Using showcase-based source files');
43
40
  }
44
41
  else {
45
- // Generate programmatically
46
- await generateMobileFiles(mobileDir, options, rnResult.success);
42
+ // Generate src/ programmatically (fallback)
43
+ await generateMobileSrcFiles(mobileDir, options);
44
+ }
45
+ if (!rnResult.success) {
46
+ logger_1.logger.warn('Native folders (android/ios) were not created.');
47
+ logger_1.logger.dim('Run "npx react-native init" in the mobile directory to create them.');
47
48
  }
48
49
  return {
49
50
  success: true,
@@ -51,9 +52,9 @@ async function generateMobilePackage(projectPath, options) {
51
52
  };
52
53
  }
53
54
  /**
54
- * Generate mobile package files programmatically
55
+ * Generate mobile package config files (package.json, app.json, configs)
55
56
  */
56
- async function generateMobileFiles(mobileDir, data, hasNative) {
57
+ async function generateMobileConfigFiles(mobileDir, data) {
57
58
  // Create directory structure
58
59
  await fs_extra_1.default.ensureDir(path_1.default.join(mobileDir, 'src'));
59
60
  // Create package.json
@@ -68,12 +69,13 @@ async function generateMobileFiles(mobileDir, data, hasNative) {
68
69
  await fs_extra_1.default.writeJson(path_1.default.join(mobileDir, 'tsconfig.json'), createMobileTsConfig(), { spaces: 2 });
69
70
  // Create index.js (entry point)
70
71
  await fs_extra_1.default.writeFile(path_1.default.join(mobileDir, 'index.js'), createIndexJs(data));
72
+ }
73
+ /**
74
+ * Generate mobile package src files programmatically (fallback)
75
+ */
76
+ async function generateMobileSrcFiles(mobileDir, data) {
71
77
  // Create src/App.tsx
72
78
  await fs_extra_1.default.writeFile(path_1.default.join(mobileDir, 'src', 'App.tsx'), createAppTsx(data));
73
- if (!hasNative) {
74
- logger_1.logger.warn('Native folders (android/ios) were not created.');
75
- logger_1.logger.dim('Run "npx react-native init" in the mobile directory to create them.');
76
- }
77
79
  }
78
80
  /**
79
81
  * Create mobile package.json
@@ -1 +1 @@
1
- {"version":3,"file":"mobile.js","sourceRoot":"","sources":["../../../src/generators/core/mobile.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mobile.js","sourceRoot":"","sources":["../../../src/generators/core/mobile.ts"],"names":[],"mappings":"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"}
@@ -19,21 +19,34 @@ async function generateSharedPackage(projectPath, data) {
19
19
  const sharedDir = path_1.default.join(projectPath, 'packages', 'shared');
20
20
  logger_1.logger.info('Creating shared package...');
21
21
  await fs_extra_1.default.ensureDir(sharedDir);
22
- // Try to use template first, or generate programmatically
23
- const templatePath = (0, copier_1.getTemplatePath)('core', 'shared');
24
- if (await (0, copier_1.templateHasContent)(templatePath)) {
25
- await (0, copier_1.copyTemplateDirectory)(templatePath, sharedDir, data);
22
+ // Always generate config files programmatically (package.json, tsconfig, etc.)
23
+ await generateSharedConfigFiles(sharedDir, data);
24
+ // Try to use template src/ files first, or generate programmatically
25
+ const templateSrcPath = (0, copier_1.getTemplatePath)('core', 'shared', 'src');
26
+ if (await (0, copier_1.templateHasContent)(templateSrcPath)) {
27
+ // Copy src/ from templates (showcase-based)
28
+ await (0, copier_1.copyTemplateDirectory)(templateSrcPath, path_1.default.join(sharedDir, 'src'), data);
29
+ logger_1.logger.dim('Using showcase-based source files');
26
30
  }
27
31
  else {
28
- // Generate programmatically
29
- await generateSharedFiles(sharedDir, data);
32
+ // Generate src/ programmatically (fallback)
33
+ await generateSharedSrcFiles(sharedDir, data);
30
34
  }
31
35
  return { success: true };
32
36
  }
33
37
  /**
34
- * Generate shared package files programmatically
38
+ * Generate shared package config files (package.json, tsconfig)
35
39
  */
36
- async function generateSharedFiles(sharedDir, data) {
40
+ async function generateSharedConfigFiles(sharedDir, data) {
41
+ // Create package.json
42
+ await fs_extra_1.default.writeJson(path_1.default.join(sharedDir, 'package.json'), createSharedPackageJson(data), { spaces: 2 });
43
+ // Create tsconfig.json
44
+ await fs_extra_1.default.writeJson(path_1.default.join(sharedDir, 'tsconfig.json'), createSharedTsConfig(), { spaces: 2 });
45
+ }
46
+ /**
47
+ * Generate shared package src files programmatically (fallback when no template)
48
+ */
49
+ async function generateSharedSrcFiles(sharedDir, data) {
37
50
  // Create directory structure
38
51
  await fs_extra_1.default.ensureDir(path_1.default.join(sharedDir, 'src', 'components'));
39
52
  await fs_extra_1.default.ensureDir(path_1.default.join(sharedDir, 'src', 'screens'));
@@ -42,10 +55,6 @@ async function generateSharedFiles(sharedDir, data) {
42
55
  if (data.hasTrpc) {
43
56
  await fs_extra_1.default.ensureDir(path_1.default.join(sharedDir, 'src', 'utils'));
44
57
  }
45
- // Create package.json
46
- await fs_extra_1.default.writeJson(path_1.default.join(sharedDir, 'package.json'), createSharedPackageJson(data), { spaces: 2 });
47
- // Create tsconfig.json
48
- await fs_extra_1.default.writeJson(path_1.default.join(sharedDir, 'tsconfig.json'), createSharedTsConfig(), { spaces: 2 });
49
58
  // Create src/index.ts
50
59
  await fs_extra_1.default.writeFile(path_1.default.join(sharedDir, 'src', 'index.ts'), createSharedIndex(data));
51
60
  // Create src/theme.ts
@@ -1 +1 @@
1
- {"version":3,"file":"shared.js","sourceRoot":"","sources":["../../../src/generators/core/shared.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"shared.js","sourceRoot":"","sources":["../../../src/generators/core/shared.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,39 @@
2
2
  /**
3
3
  * Web package generator
4
4
  */
5
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ var desc = Object.getOwnPropertyDescriptor(m, k);
8
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
9
+ desc = { enumerable: true, get: function() { return m[k]; } };
10
+ }
11
+ Object.defineProperty(o, k2, desc);
12
+ }) : (function(o, m, k, k2) {
13
+ if (k2 === undefined) k2 = k;
14
+ o[k2] = m[k];
15
+ }));
16
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
17
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
18
+ }) : function(o, v) {
19
+ o["default"] = v;
20
+ });
21
+ var __importStar = (this && this.__importStar) || (function () {
22
+ var ownKeys = function(o) {
23
+ ownKeys = Object.getOwnPropertyNames || function (o) {
24
+ var ar = [];
25
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
26
+ return ar;
27
+ };
28
+ return ownKeys(o);
29
+ };
30
+ return function (mod) {
31
+ if (mod && mod.__esModule) return mod;
32
+ var result = {};
33
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
34
+ __setModuleDefault(result, mod);
35
+ return result;
36
+ };
37
+ })();
5
38
  var __importDefault = (this && this.__importDefault) || function (mod) {
6
39
  return (mod && mod.__esModule) ? mod : { "default": mod };
7
40
  };
@@ -19,24 +52,45 @@ async function generateWebPackage(projectPath, data) {
19
52
  const webDir = path_1.default.join(projectPath, 'packages', 'web');
20
53
  logger_1.logger.info('Creating web package...');
21
54
  await fs_extra_1.default.ensureDir(webDir);
22
- // Try to use template first, or generate programmatically
55
+ await fs_extra_1.default.ensureDir(path_1.default.join(webDir, 'src'));
56
+ await fs_extra_1.default.ensureDir(path_1.default.join(webDir, 'public'));
57
+ // Always generate config files programmatically
58
+ await generateWebConfigFiles(webDir, data);
59
+ // Try to use template src/ and index.html first, or generate programmatically
23
60
  const templatePath = (0, copier_1.getTemplatePath)('core', 'web');
24
- if (await (0, copier_1.templateHasContent)(templatePath)) {
25
- await (0, copier_1.copyTemplateDirectory)(templatePath, webDir, data);
61
+ const templateSrcPath = (0, copier_1.getTemplatePath)('core', 'web', 'src');
62
+ const templateIndexHtml = path_1.default.join(templatePath, 'index.html');
63
+ const templatePublicPath = path_1.default.join(templatePath, 'public');
64
+ if (await (0, copier_1.templateHasContent)(templateSrcPath)) {
65
+ // Copy src/ from templates (showcase-based)
66
+ await (0, copier_1.copyTemplateDirectory)(templateSrcPath, path_1.default.join(webDir, 'src'), data);
67
+ logger_1.logger.dim('Using showcase-based source files');
26
68
  }
27
69
  else {
28
- // Generate programmatically
29
- await generateWebFiles(webDir, data);
70
+ // Generate src/ programmatically (fallback)
71
+ await generateWebSrcFiles(webDir, data);
72
+ }
73
+ // Copy index.html from template if exists
74
+ if (await fs_extra_1.default.pathExists(templateIndexHtml)) {
75
+ await fs_extra_1.default.copy(templateIndexHtml, path_1.default.join(webDir, 'index.html'));
76
+ // Process template variables in index.html
77
+ const content = await fs_extra_1.default.readFile(path_1.default.join(webDir, 'index.html'), 'utf8');
78
+ const { processTemplateContent } = await Promise.resolve().then(() => __importStar(require('../../templates/processor')));
79
+ await fs_extra_1.default.writeFile(path_1.default.join(webDir, 'index.html'), processTemplateContent(content, data));
80
+ }
81
+ else {
82
+ await fs_extra_1.default.writeFile(path_1.default.join(webDir, 'index.html'), createIndexHtml(data));
83
+ }
84
+ // Copy public/ from template if exists
85
+ if (await (0, copier_1.templateHasContent)(templatePublicPath)) {
86
+ await (0, copier_1.copyTemplateDirectory)(templatePublicPath, path_1.default.join(webDir, 'public'), data);
30
87
  }
31
88
  return { success: true };
32
89
  }
33
90
  /**
34
- * Generate web package files programmatically
91
+ * Generate web package config files (package.json, vite.config, tsconfig)
35
92
  */
36
- async function generateWebFiles(webDir, data) {
37
- // Create directory structure
38
- await fs_extra_1.default.ensureDir(path_1.default.join(webDir, 'src'));
39
- await fs_extra_1.default.ensureDir(path_1.default.join(webDir, 'public'));
93
+ async function generateWebConfigFiles(webDir, data) {
40
94
  // Create package.json
41
95
  await fs_extra_1.default.writeJson(path_1.default.join(webDir, 'package.json'), createWebPackageJson(data), { spaces: 2 });
42
96
  // Create vite.config.ts
@@ -45,8 +99,11 @@ async function generateWebFiles(webDir, data) {
45
99
  await fs_extra_1.default.writeJson(path_1.default.join(webDir, 'tsconfig.json'), createWebTsConfig(), { spaces: 2 });
46
100
  // Create tsconfig.node.json (for Vite config)
47
101
  await fs_extra_1.default.writeJson(path_1.default.join(webDir, 'tsconfig.node.json'), createWebTsConfigNode(), { spaces: 2 });
48
- // Create index.html
49
- await fs_extra_1.default.writeFile(path_1.default.join(webDir, 'index.html'), createIndexHtml(data));
102
+ }
103
+ /**
104
+ * Generate web package src files programmatically (fallback)
105
+ */
106
+ async function generateWebSrcFiles(webDir, data) {
50
107
  // Create src/main.tsx
51
108
  await fs_extra_1.default.writeFile(path_1.default.join(webDir, 'src', 'main.tsx'), createMainTsx(data));
52
109
  // Create src/App.tsx
@@ -1 +1 @@
1
- {"version":3,"file":"web.js","sourceRoot":"","sources":["../../../src/generators/core/web.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"web.js","sourceRoot":"","sources":["../../../src/generators/core/web.ts"],"names":[],"mappings":"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"}
@@ -101,10 +101,12 @@ async function copyTemplateFile(sourceFile, destFile, data) {
101
101
  * Get the path to a template directory
102
102
  */
103
103
  function getTemplatePath(...segments) {
104
- // In production, templates are in dist/templates
105
- // In development, they're in templates/
106
- const distPath = path_1.default.resolve(__dirname, '..', '..', 'templates', ...segments);
107
- const devPath = path_1.default.resolve(__dirname, '..', '..', '..', 'templates', ...segments);
104
+ // The compiled copier.js lives in dist/templates/copier.js
105
+ // The templates are in dist/templates/core/... and dist/templates/extensions/...
106
+ // So from __dirname (dist/templates), we just need to add the segments directly
107
+ const distPath = path_1.default.resolve(__dirname, ...segments);
108
+ // In development (running from src/templates), templates are at ../../templates
109
+ const devPath = path_1.default.resolve(__dirname, '..', '..', 'templates', ...segments);
108
110
  if (fs_extra_1.default.existsSync(distPath)) {
109
111
  return distPath;
110
112
  }
@@ -1 +1 @@
1
- {"version":3,"file":"copier.js","sourceRoot":"","sources":["../../src/templates/copier.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"copier.js","sourceRoot":"","sources":["../../src/templates/copier.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ import React from 'react';
2
+ import { App } from '@{{workspaceScope}}/shared';
3
+
4
+ function NativeApp() {
5
+ return <App />;
6
+ }
7
+
8
+ export default NativeApp;
@@ -0,0 +1,7 @@
1
+ // Import tRPC client utilities from shared package
2
+ export {
3
+ trpc,
4
+ createTRPCClient,
5
+ createVanillaTRPCClient
6
+ } from '@test-select-demo/shared';
7
+ export type { TRPCClientConfig, AppRouter } from '@test-select-demo/shared';
@@ -0,0 +1,13 @@
1
+ import React from 'react';
2
+ import { NavigatorProvider } from '@idealyst/navigation';
3
+ import { AppRouter } from '../navigation/AppRouter';
4
+
5
+ /**
6
+ * Main App component for the {{appDisplayName}}
7
+ * Sets up navigation with the AppRouter
8
+ */
9
+ export const App: React.FC = () => {
10
+ return <NavigatorProvider route={AppRouter} />;
11
+ };
12
+
13
+ export default App;
@@ -0,0 +1 @@
1
+ export { App, default } from './App';
@@ -0,0 +1,10 @@
1
+ import './styles';
2
+
3
+ // Export the unified App component
4
+ export { App } from './components';
5
+
6
+ // Export navigation router
7
+ export { AppRouter } from './navigation';
8
+
9
+ // Export screens for direct use if needed
10
+ export * from './screens';
@@ -0,0 +1,218 @@
1
+ import React from 'react';
2
+ import { View, Text, Button, IconButton, Icon, Badge } from '@idealyst/components';
3
+ import { useNavigator, Outlet } from '@idealyst/navigation';
4
+ import type { TabLayoutProps, StackLayoutProps } from '@idealyst/navigation';
5
+ import { UnistylesRuntime, useUnistyles } from 'react-native-unistyles';
6
+
7
+ /**
8
+ * Custom Tab Layout for the {{appDisplayName}} app.
9
+ * Features:
10
+ * - Header with app title, theme toggle, and settings
11
+ * - Bottom tab bar navigation
12
+ * - Centered content area with max-width
13
+ */
14
+ export const AppTabLayout: React.FC<TabLayoutProps> = ({
15
+ routes,
16
+ currentPath,
17
+ }) => {
18
+ const navigator = useNavigator();
19
+ const { theme } = useUnistyles();
20
+ const currentTheme = UnistylesRuntime.themeName || 'light';
21
+
22
+ const cycleTheme = () => {
23
+ const nextTheme = currentTheme === 'light' ? 'dark' : 'light';
24
+ UnistylesRuntime.setTheme(nextTheme as any);
25
+ };
26
+
27
+ // Check if a route is active
28
+ const isRouteActive = (routePath: string) => {
29
+ const fullPath = routePath || '/';
30
+
31
+ // Trim leading slash for comparison
32
+ const trimmedCurrentPath = currentPath.startsWith('/') ? currentPath.slice(1) : currentPath;
33
+ const trimmedRoutePath = fullPath.startsWith('/') ? fullPath.slice(1) : fullPath;
34
+ return trimmedCurrentPath === trimmedRoutePath;
35
+ };
36
+
37
+ return (
38
+ <View
39
+ background="primary"
40
+ style={{ height: '100vh', flexDirection: 'column', alignItems: 'center', overflow: 'hidden' }}
41
+ >
42
+ {/* Header */}
43
+ <View
44
+ style={{
45
+ paddingHorizontal: 16,
46
+ paddingVertical: 12,
47
+ borderBottomWidth: 1,
48
+ borderBottomColor: theme.colors.border.primary,
49
+ flexDirection: 'row',
50
+ alignItems: 'center',
51
+ justifyContent: 'space-between',
52
+ maxWidth: 800,
53
+ width: '100%',
54
+ }}
55
+ >
56
+ <View padding={'md'} style={{ flexDirection: 'row', alignItems: 'center', gap: 8 }}>
57
+ <Icon name="cube-outline" size={24} intent="primary" />
58
+ <Text typography='h4'>
59
+ {{appDisplayName}}
60
+ </Text>
61
+ <Badge color={currentTheme === 'dark' ? 'purple' : 'blue'}>
62
+ {currentTheme === 'dark' ? 'Dark' : 'Light'}
63
+ </Badge>
64
+ </View>
65
+
66
+ <View style={{ flexDirection: 'row', gap: 8, alignItems: 'center' }}>
67
+ <IconButton
68
+ type="outlined"
69
+ size="sm"
70
+ icon={currentTheme === 'dark' ? 'weather-sunny' : 'weather-night'}
71
+ onPress={cycleTheme}
72
+ accessibilityLabel="Toggle theme"
73
+ />
74
+ <IconButton
75
+ type="text"
76
+ icon="cog-outline"
77
+ size="md"
78
+ onPress={() => navigator.navigate({ path: '/settings' })}
79
+ accessibilityLabel="Settings"
80
+ />
81
+ </View>
82
+ </View>
83
+
84
+ {/* Content Area */}
85
+ <View
86
+ style={{
87
+ flex: 1,
88
+ overflowY: 'auto',
89
+ width: '100%',
90
+ }}
91
+ >
92
+ <View
93
+ style={{
94
+ maxWidth: 800,
95
+ width: '100%',
96
+ marginLeft: 'auto',
97
+ marginRight: 'auto',
98
+ }}
99
+ >
100
+ <Outlet />
101
+ </View>
102
+ </View>
103
+
104
+ {/* Bottom Tab Bar */}
105
+ <View
106
+ style={{
107
+ alignSelf: 'stretch',
108
+ borderTopWidth: 1,
109
+ borderTopStyle: 'solid',
110
+ borderTopColor: theme.colors.border.primary,
111
+ backgroundColor: theme.colors.surface.primary,
112
+ paddingVertical: 8,
113
+ paddingHorizontal: 16,
114
+ }}
115
+ >
116
+ <View style={{ alignItems: 'center', width: '100%' }}>
117
+ <View
118
+ style={{
119
+ flexDirection: 'row',
120
+ justifyContent: 'space-around',
121
+ alignItems: 'center',
122
+ maxWidth: 400,
123
+ width: '100%',
124
+ }}
125
+ >
126
+ {routes.map((route) => {
127
+ const isActive = isRouteActive(route.fullPath);
128
+ const tabOptions = route.options as any;
129
+
130
+ return (
131
+ <Button
132
+ key={route.path || 'home'}
133
+ type="text"
134
+ intent={isActive ? 'primary' : 'neutral'}
135
+ size="sm"
136
+ style={{
137
+ flexDirection: 'column',
138
+ gap: 4,
139
+ paddingVertical: 8,
140
+ paddingHorizontal: 16,
141
+ minWidth: 64,
142
+ }}
143
+ onPress={() => {
144
+ navigator.navigate({ path: route.fullPath || '/' })
145
+ }}
146
+ >
147
+ <View style={{ alignItems: 'center', gap: 4 }}>
148
+ {tabOptions?.tabBarIcon?.({
149
+ focused: isActive,
150
+ color: isActive
151
+ ? theme.intents.primary.primary
152
+ : theme.colors.text.secondary,
153
+ size: 24,
154
+ })}
155
+ <Text
156
+ typography="caption"
157
+ weight={isActive ? 'semibold' : 'normal'}
158
+ color={isActive ? 'primary' : 'secondary'}
159
+ >
160
+ {tabOptions?.tabBarLabel || route.options?.headerTitle || route.path || 'Home'}
161
+ </Text>
162
+ </View>
163
+ </Button>
164
+ );
165
+ })}
166
+ </View>
167
+ </View>
168
+ </View>
169
+ </View>
170
+ );
171
+ };
172
+
173
+ /**
174
+ * Custom Stack Layout for the {{appDisplayName}} app.
175
+ * Features:
176
+ * - Centered content with max-width of 800px
177
+ * - Full height layout
178
+ * - Left/right borders on content area
179
+ */
180
+ export const AppStackLayout: React.FC<StackLayoutProps> = ({
181
+ options,
182
+ routes,
183
+ }) => {
184
+ const { theme } = useUnistyles();
185
+
186
+ return (
187
+ <View
188
+ background="secondary"
189
+ style={{
190
+ height: '100vh',
191
+ flexDirection: 'column',
192
+ overflow: 'hidden',
193
+ alignItems: 'center',
194
+ }}
195
+ >
196
+ {/* Content Area */}
197
+ <View
198
+ background="primary"
199
+ style={{
200
+ flex: 1,
201
+ overflowY: 'auto',
202
+ maxWidth: 800,
203
+ width: '100%',
204
+ borderLeftWidth: 1,
205
+ borderRightWidth: 1,
206
+ borderLeftColor: theme.colors.border.primary,
207
+ borderRightColor: theme.colors.border.primary,
208
+ borderLeftStyle: 'solid',
209
+ borderRightStyle: 'solid',
210
+ }}
211
+ >
212
+ <Outlet />
213
+ </View>
214
+ </View>
215
+ );
216
+ };
217
+
218
+ export default AppTabLayout;