@idealyst/cli 1.2.1 → 1.2.4

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 (44) hide show
  1. package/dist/commands/add.js +2 -2
  2. package/dist/commands/add.js.map +1 -1
  3. package/dist/commands/info.js +25 -26
  4. package/dist/commands/info.js.map +1 -1
  5. package/dist/commands/init.js +2 -2
  6. package/dist/constants.js +13 -4
  7. package/dist/constants.js.map +1 -1
  8. package/dist/generators/core/mobile.js +35 -69
  9. package/dist/generators/core/mobile.js.map +1 -1
  10. package/dist/generators/core/shared.js +283 -16
  11. package/dist/generators/core/shared.js.map +1 -1
  12. package/dist/generators/core/web.js +30 -76
  13. package/dist/generators/core/web.js.map +1 -1
  14. package/dist/generators/extensions/devcontainer.js +90 -25
  15. package/dist/generators/extensions/devcontainer.js.map +1 -1
  16. package/dist/generators/index.js +23 -7
  17. package/dist/generators/index.js.map +1 -1
  18. package/dist/generators/reactNative.js +111 -35
  19. package/dist/generators/reactNative.js.map +1 -1
  20. package/dist/generators/workspace.js +31 -0
  21. package/dist/generators/workspace.js.map +1 -1
  22. package/dist/index.js +3 -3
  23. package/dist/index.js.map +1 -1
  24. package/dist/types/commands/add.d.ts +1 -1
  25. package/dist/types/commands/info.d.ts +1 -1
  26. package/dist/types/commands/init.d.ts +1 -1
  27. package/dist/types/constants.d.ts +16 -7
  28. package/dist/types/generators/core/mobile.d.ts +1 -0
  29. package/dist/types/index.d.ts +1 -1
  30. package/dist/types/types.d.ts +32 -1
  31. package/dist/types/utils/filesystem.d.ts +1 -1
  32. package/dist/types/utils/logger.d.ts +6 -0
  33. package/dist/types.js +35 -2
  34. package/dist/types.js.map +1 -1
  35. package/dist/utils/filesystem.js +1 -1
  36. package/dist/utils/logger.js +11 -0
  37. package/dist/utils/logger.js.map +1 -1
  38. package/dist/utils/shell.js +1 -1
  39. package/dist/utils/shell.js.map +1 -1
  40. package/dist/wizard/steps/devcontainerExtension.js +61 -8
  41. package/dist/wizard/steps/devcontainerExtension.js.map +1 -1
  42. package/dist/wizard/steps/summary.js +12 -0
  43. package/dist/wizard/steps/summary.js.map +1 -1
  44. package/package.json +1 -1
@@ -36,19 +36,41 @@ async function generateSharedPackage(projectPath, data) {
36
36
  async function generateSharedFiles(sharedDir, data) {
37
37
  // Create directory structure
38
38
  await fs_extra_1.default.ensureDir(path_1.default.join(sharedDir, 'src', 'components'));
39
- await fs_extra_1.default.ensureDir(path_1.default.join(sharedDir, 'src', 'utils'));
39
+ await fs_extra_1.default.ensureDir(path_1.default.join(sharedDir, 'src', 'screens'));
40
+ await fs_extra_1.default.ensureDir(path_1.default.join(sharedDir, 'src', 'navigation'));
41
+ // Create utils directory for tRPC client if enabled
42
+ if (data.hasTrpc) {
43
+ await fs_extra_1.default.ensureDir(path_1.default.join(sharedDir, 'src', 'utils'));
44
+ }
40
45
  // Create package.json
41
46
  await fs_extra_1.default.writeJson(path_1.default.join(sharedDir, 'package.json'), createSharedPackageJson(data), { spaces: 2 });
42
47
  // Create tsconfig.json
43
48
  await fs_extra_1.default.writeJson(path_1.default.join(sharedDir, 'tsconfig.json'), createSharedTsConfig(), { spaces: 2 });
44
49
  // Create src/index.ts
45
- await fs_extra_1.default.writeFile(path_1.default.join(sharedDir, 'src', 'index.ts'), createSharedIndex());
50
+ await fs_extra_1.default.writeFile(path_1.default.join(sharedDir, 'src', 'index.ts'), createSharedIndex(data));
46
51
  // Create src/theme.ts
47
52
  await fs_extra_1.default.writeFile(path_1.default.join(sharedDir, 'src', 'theme.ts'), createThemeConfig());
48
53
  // Create src/components/HelloWorld.tsx
49
54
  await fs_extra_1.default.writeFile(path_1.default.join(sharedDir, 'src', 'components', 'HelloWorld.tsx'), createHelloWorldComponent());
50
55
  // Create src/components/index.ts
51
56
  await fs_extra_1.default.writeFile(path_1.default.join(sharedDir, 'src', 'components', 'index.ts'), `export * from './HelloWorld';\n`);
57
+ // Create src/screens/Home.tsx
58
+ await fs_extra_1.default.writeFile(path_1.default.join(sharedDir, 'src', 'screens', 'Home.tsx'), createHomeScreen(data));
59
+ // Create src/screens/About.tsx
60
+ await fs_extra_1.default.writeFile(path_1.default.join(sharedDir, 'src', 'screens', 'About.tsx'), createAboutScreen());
61
+ // Create src/screens/index.ts
62
+ await fs_extra_1.default.writeFile(path_1.default.join(sharedDir, 'src', 'screens', 'index.ts'), `export { default as Home } from './Home';\nexport { default as About } from './About';\n`);
63
+ // Create src/navigation/AppRouter.ts
64
+ await fs_extra_1.default.writeFile(path_1.default.join(sharedDir, 'src', 'navigation', 'AppRouter.ts'), createAppRouter(data));
65
+ // Create src/navigation/index.ts
66
+ await fs_extra_1.default.writeFile(path_1.default.join(sharedDir, 'src', 'navigation', 'index.ts'), `export { AppRouter } from './AppRouter';\n`);
67
+ // Create src/App.tsx - main app with all providers
68
+ await fs_extra_1.default.writeFile(path_1.default.join(sharedDir, 'src', 'App.tsx'), createAppComponent(data));
69
+ // Create tRPC client if enabled
70
+ if (data.hasTrpc) {
71
+ await fs_extra_1.default.writeFile(path_1.default.join(sharedDir, 'src', 'utils', 'trpc.ts'), createTrpcClient(data));
72
+ await fs_extra_1.default.writeFile(path_1.default.join(sharedDir, 'src', 'utils', 'index.ts'), `export * from './trpc';\n`);
73
+ }
52
74
  }
53
75
  /**
54
76
  * Create shared package.json
@@ -107,17 +129,22 @@ function createSharedTsConfig() {
107
129
  /**
108
130
  * Create shared index.ts
109
131
  */
110
- function createSharedIndex() {
111
- return `/**
112
- * Shared package exports
113
- */
114
-
115
- export * from './components';
116
-
117
- // Re-export Idealyst components for convenience
118
- export * from '@idealyst/components';
119
- export * from '@idealyst/theme';
120
- `;
132
+ function createSharedIndex(data) {
133
+ const exports = [
134
+ `/**`,
135
+ ` * Shared package exports`,
136
+ ` */`,
137
+ ``,
138
+ `export { default as App } from './App';`,
139
+ `export * from './components';`,
140
+ `export * from './screens';`,
141
+ `export * from './navigation';`,
142
+ ];
143
+ if (data.hasTrpc) {
144
+ exports.push(`export * from './utils';`);
145
+ }
146
+ exports.push(``, `// Re-export Idealyst components for convenience`, `export * from '@idealyst/components';`, `export * from '@idealyst/theme';`);
147
+ return exports.join('\n') + '\n';
121
148
  }
122
149
  /**
123
150
  * Create theme configuration
@@ -130,12 +157,15 @@ function createThemeConfig() {
130
157
  import { StyleSheet } from 'react-native-unistyles';
131
158
  import { fromTheme, lightTheme, darkTheme } from '@idealyst/theme';
132
159
 
160
+ // Build themes as separate variables for babel plugin compatibility
161
+ const light = fromTheme(lightTheme).build();
162
+ const dark = fromTheme(darkTheme).build();
163
+
133
164
  // Configure unistyles with the Idealyst themes
134
- // fromTheme().build() is required for babel transpilation
135
165
  StyleSheet.configure({
136
166
  themes: {
137
- light: fromTheme(lightTheme).build(),
138
- dark: fromTheme(darkTheme).build(),
167
+ light,
168
+ dark,
139
169
  },
140
170
  settings: {
141
171
  initialTheme: 'light',
@@ -204,4 +234,241 @@ export function HelloWorld({ name = 'World', onPress }: HelloWorldProps) {
204
234
  }
205
235
  `;
206
236
  }
237
+ /**
238
+ * Create Home screen
239
+ */
240
+ function createHomeScreen(data) {
241
+ return `/**
242
+ * Home screen - shared between web and mobile
243
+ */
244
+
245
+ import React from 'react';
246
+ import { useNavigator } from '@idealyst/navigation';
247
+ import { HelloWorld } from '../components';
248
+
249
+ export default function Home() {
250
+ const { navigate } = useNavigator();
251
+
252
+ return (
253
+ <HelloWorld
254
+ name="${data.appDisplayName}"
255
+ onPress={() => navigate('/about')}
256
+ />
257
+ );
258
+ }
259
+ `;
260
+ }
261
+ /**
262
+ * Create AppRouter - shared navigation configuration
263
+ */
264
+ function createAppRouter(data) {
265
+ return `/**
266
+ * Application navigation router
267
+ * Shared between web and mobile platforms
268
+ */
269
+
270
+ import { NavigatorParam } from '@idealyst/navigation';
271
+ import Home from '../screens/Home';
272
+ import About from '../screens/About';
273
+
274
+ export const AppRouter: NavigatorParam = {
275
+ path: '/',
276
+ type: 'navigator',
277
+ layout: 'stack',
278
+ options: {
279
+ headerShown: false,
280
+ },
281
+ routes: [
282
+ {
283
+ path: '/',
284
+ type: 'screen',
285
+ component: Home,
286
+ options: { title: '${data.appDisplayName}' },
287
+ },
288
+ {
289
+ path: '/about',
290
+ type: 'screen',
291
+ component: About,
292
+ options: { title: 'About Idealyst' },
293
+ },
294
+ ],
295
+ };
296
+
297
+ export default AppRouter;
298
+ `;
299
+ }
300
+ /**
301
+ * Create About screen
302
+ */
303
+ function createAboutScreen() {
304
+ return `/**
305
+ * About screen - explains what Idealyst is
306
+ */
307
+
308
+ import React from 'react';
309
+ import { View, Text, Button } from '@idealyst/components';
310
+ import { useNavigator } from '@idealyst/navigation';
311
+ import { useUnistyles } from 'react-native-unistyles';
312
+
313
+ export default function About() {
314
+ const { theme } = useUnistyles();
315
+ const { goBack } = useNavigator();
316
+
317
+ return (
318
+ <View
319
+ style={{
320
+ flex: 1,
321
+ padding: 24,
322
+ backgroundColor: theme.colors.surface.primary,
323
+ }}
324
+ >
325
+ <Text
326
+ style={{
327
+ fontSize: 28,
328
+ fontWeight: 'bold',
329
+ color: theme.colors.text.primary,
330
+ marginBottom: 16,
331
+ }}
332
+ >
333
+ What is Idealyst?
334
+ </Text>
335
+
336
+ <Text
337
+ style={{
338
+ fontSize: 16,
339
+ color: theme.colors.text.secondary,
340
+ marginBottom: 16,
341
+ lineHeight: 24,
342
+ }}
343
+ >
344
+ Idealyst is a cross-platform framework for building React applications that run on both web and mobile from a single codebase.
345
+ </Text>
346
+
347
+ <Text
348
+ style={{
349
+ fontSize: 16,
350
+ color: theme.colors.text.secondary,
351
+ marginBottom: 16,
352
+ lineHeight: 24,
353
+ }}
354
+ >
355
+ Key features:
356
+ </Text>
357
+
358
+ <View style={{ marginLeft: 16, marginBottom: 16 }}>
359
+ <Text style={{ fontSize: 16, color: theme.colors.text.secondary, marginBottom: 8 }}>
360
+ • Unified component library for web and mobile
361
+ </Text>
362
+ <Text style={{ fontSize: 16, color: theme.colors.text.secondary, marginBottom: 8 }}>
363
+ • Shared navigation system across platforms
364
+ </Text>
365
+ <Text style={{ fontSize: 16, color: theme.colors.text.secondary, marginBottom: 8 }}>
366
+ • Theme system with light/dark mode support
367
+ </Text>
368
+ <Text style={{ fontSize: 16, color: theme.colors.text.secondary, marginBottom: 8 }}>
369
+ • Type-safe API integration with tRPC
370
+ </Text>
371
+ <Text style={{ fontSize: 16, color: theme.colors.text.secondary, marginBottom: 8 }}>
372
+ • Monorepo structure for code sharing
373
+ </Text>
374
+ </View>
375
+
376
+ <Text
377
+ style={{
378
+ fontSize: 16,
379
+ color: theme.colors.text.secondary,
380
+ marginBottom: 24,
381
+ lineHeight: 24,
382
+ }}
383
+ >
384
+ Write once, run everywhere - with native performance and consistent design.
385
+ </Text>
386
+
387
+ <Button onPress={goBack} intent="secondary">
388
+ Go Back
389
+ </Button>
390
+ </View>
391
+ );
392
+ }
393
+ `;
394
+ }
395
+ /**
396
+ * Create App component with all providers
397
+ */
398
+ function createAppComponent(data) {
399
+ if (data.hasTrpc) {
400
+ return `/**
401
+ * Main App component with all providers
402
+ * Platform packages wrap this with their specific router (e.g., BrowserRouter for web)
403
+ */
404
+
405
+ import React, { useMemo } from 'react';
406
+ import { NavigatorProvider } from '@idealyst/navigation';
407
+ import { QueryClient, QueryClientProvider } from '@tanstack/react-query';
408
+ import { AppRouter } from './navigation';
409
+ import { trpc, createTrpcClient } from './utils/trpc';
410
+
411
+ export interface AppProps {
412
+ /** Base URL for the API server (e.g., 'http://localhost:3001') */
413
+ apiBaseUrl: string;
414
+ }
415
+
416
+ export default function App({ apiBaseUrl }: AppProps) {
417
+ const queryClient = useMemo(() => new QueryClient(), []);
418
+ const trpcClient = useMemo(() => createTrpcClient(apiBaseUrl), [apiBaseUrl]);
419
+
420
+ return (
421
+ <trpc.Provider client={trpcClient} queryClient={queryClient}>
422
+ <QueryClientProvider client={queryClient}>
423
+ <NavigatorProvider route={AppRouter} />
424
+ </QueryClientProvider>
425
+ </trpc.Provider>
426
+ );
427
+ }
428
+ `;
429
+ }
430
+ return `/**
431
+ * Main App component with all providers
432
+ * Platform packages wrap this with their specific router (e.g., BrowserRouter for web)
433
+ */
434
+
435
+ import React from 'react';
436
+ import { NavigatorProvider } from '@idealyst/navigation';
437
+ import { AppRouter } from './navigation';
438
+
439
+ export default function App() {
440
+ return <NavigatorProvider route={AppRouter} />;
441
+ }
442
+ `;
443
+ }
444
+ /**
445
+ * Create tRPC client for shared package
446
+ */
447
+ function createTrpcClient(data) {
448
+ return `/**
449
+ * tRPC client configuration
450
+ * Shared between web and mobile platforms
451
+ */
452
+
453
+ import { createTRPCReact } from '@trpc/react-query';
454
+ import { httpBatchLink } from '@trpc/client';
455
+ import type { AppRouter } from '@${data.workspaceScope}/api';
456
+
457
+ export const trpc = createTRPCReact<AppRouter>();
458
+
459
+ /**
460
+ * Create a tRPC client with the specified base URL
461
+ * @param baseUrl - The API server base URL (e.g., 'http://localhost:3001')
462
+ */
463
+ export function createTrpcClient(baseUrl: string) {
464
+ return trpc.createClient({
465
+ links: [
466
+ httpBatchLink({
467
+ url: \`\${baseUrl}/trpc\`,
468
+ }),
469
+ ],
470
+ });
471
+ }
472
+ `;
473
+ }
207
474
  //# sourceMappingURL=shared.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"shared.js","sourceRoot":"","sources":["../../../src/generators/core/shared.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;;AAYH,sDAqBC;AA/BD,wDAA0B;AAC1B,gDAAwB;AAExB,mDAAoG;AACpG,+CAAiE;AACjE,+CAA4C;AAE5C;;GAEG;AACI,KAAK,UAAU,qBAAqB,CACzC,WAAmB,EACnB,IAAkB;IAElB,MAAM,SAAS,GAAG,cAAI,CAAC,IAAI,CAAC,WAAW,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAC;IAE/D,eAAM,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC;IAE1C,MAAM,kBAAE,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;IAE9B,0DAA0D;IAC1D,MAAM,YAAY,GAAG,IAAA,wBAAe,EAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IAEvD,IAAI,MAAM,IAAA,2BAAkB,EAAC,YAAY,CAAC,EAAE,CAAC;QAC3C,MAAM,IAAA,8BAAqB,EAAC,YAAY,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;IAC7D,CAAC;SAAM,CAAC;QACN,4BAA4B;QAC5B,MAAM,mBAAmB,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;IAC7C,CAAC;IAED,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;AAC3B,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,mBAAmB,CAChC,SAAiB,EACjB,IAAkB;IAElB,6BAA6B;IAC7B,MAAM,kBAAE,CAAC,SAAS,CAAC,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC;IAC9D,MAAM,kBAAE,CAAC,SAAS,CAAC,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC;IAEzD,sBAAsB;IACtB,MAAM,kBAAE,CAAC,SAAS,CAChB,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,cAAc,CAAC,EACpC,uBAAuB,CAAC,IAAI,CAAC,EAC7B,EAAE,MAAM,EAAE,CAAC,EAAE,CACd,CAAC;IAEF,uBAAuB;IACvB,MAAM,kBAAE,CAAC,SAAS,CAChB,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,eAAe,CAAC,EACrC,oBAAoB,EAAE,EACtB,EAAE,MAAM,EAAE,CAAC,EAAE,CACd,CAAC;IAEF,sBAAsB;IACtB,MAAM,kBAAE,CAAC,SAAS,CAChB,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,EAAE,UAAU,CAAC,EACvC,iBAAiB,EAAE,CACpB,CAAC;IAEF,sBAAsB;IACtB,MAAM,kBAAE,CAAC,SAAS,CAChB,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,EAAE,UAAU,CAAC,EACvC,iBAAiB,EAAE,CACpB,CAAC;IAEF,uCAAuC;IACvC,MAAM,kBAAE,CAAC,SAAS,CAChB,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,EAAE,YAAY,EAAE,gBAAgB,CAAC,EAC3D,yBAAyB,EAAE,CAC5B,CAAC;IAEF,iCAAiC;IACjC,MAAM,kBAAE,CAAC,SAAS,CAChB,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,EAAE,YAAY,EAAE,UAAU,CAAC,EACrD,iCAAiC,CAClC,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,SAAS,uBAAuB,CAAC,IAAkB;IACjD,MAAM,YAAY,GAA2B,EAAE,CAAC;IAChD,MAAM,gBAAgB,GAA2B;QAC/C,GAAG,wBAAY,CAAC,IAAI;QACpB,OAAO,EAAE,IAAI,wBAAY,CAAC,GAAG,CAAC,KAAK,EAAE;QACrC,cAAc,EAAE,IAAI,wBAAY,CAAC,MAAM,CAAC,cAAc,CAAC,EAAE;KAC1D,CAAC;IAEF,mCAAmC;IACnC,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;QACjB,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,wBAAY,CAAC,IAAI,CAAC,CAAC;IACjD,CAAC;IAED,sCAAsC;IACtC,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;QACpB,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,wBAAY,CAAC,OAAO,CAAC,CAAC;IACpD,CAAC;IAED,OAAO;QACL,IAAI,EAAE,IAAI,IAAI,CAAC,cAAc,SAAS;QACtC,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,IAAI,EAAE,cAAc;QACpB,KAAK,EAAE,cAAc;QACrB,OAAO,EAAE;YACP,GAAG,EAAE,gBAAgB;YACrB,SAAS,EAAE,gBAAgB;SAC5B;QACD,OAAO,EAAE;YACP,OAAO,EAAE,KAAK;YACd,MAAM,EAAE,MAAM;SACf;QACD,YAAY;QACZ,gBAAgB;QAChB,eAAe,EAAE;YACf,YAAY,EAAE,QAAQ;YACtB,cAAc,EAAE,SAAS;SAC1B;KACF,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,SAAS,oBAAoB;IAC3B,OAAO;QACL,OAAO,EAAE,qBAAqB;QAC9B,eAAe,EAAE;YACf,MAAM,EAAE,QAAQ;YAChB,OAAO,EAAE,OAAO;YAChB,GAAG,EAAE,WAAW;SACjB;QACD,OAAO,EAAE,CAAC,UAAU,CAAC;QACrB,OAAO,EAAE,CAAC,cAAc,EAAE,MAAM,CAAC;KAClC,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,SAAS,iBAAiB;IACxB,OAAO;;;;;;;;;CASR,CAAC;AACF,CAAC;AAED;;GAEG;AACH,SAAS,iBAAiB;IACxB,OAAO;;;;;;;;;;;;;;;;;;;;CAoBR,CAAC;AACF,CAAC;AAED;;GAEG;AACH,SAAS,yBAAyB;IAChC,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqDR,CAAC;AACF,CAAC"}
1
+ {"version":3,"file":"shared.js","sourceRoot":"","sources":["../../../src/generators/core/shared.ts"],"names":[],"mappings":"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"}
@@ -35,8 +35,7 @@ async function generateWebPackage(projectPath, data) {
35
35
  */
36
36
  async function generateWebFiles(webDir, data) {
37
37
  // Create directory structure
38
- await fs_extra_1.default.ensureDir(path_1.default.join(webDir, 'src', 'pages'));
39
- await fs_extra_1.default.ensureDir(path_1.default.join(webDir, 'src', 'navigation'));
38
+ await fs_extra_1.default.ensureDir(path_1.default.join(webDir, 'src'));
40
39
  await fs_extra_1.default.ensureDir(path_1.default.join(webDir, 'public'));
41
40
  // Create package.json
42
41
  await fs_extra_1.default.writeJson(path_1.default.join(webDir, 'package.json'), createWebPackageJson(data), { spaces: 2 });
@@ -52,10 +51,6 @@ async function generateWebFiles(webDir, data) {
52
51
  await fs_extra_1.default.writeFile(path_1.default.join(webDir, 'src', 'main.tsx'), createMainTsx(data));
53
52
  // Create src/App.tsx
54
53
  await fs_extra_1.default.writeFile(path_1.default.join(webDir, 'src', 'App.tsx'), createAppTsx(data));
55
- // Create src/pages/Home.tsx
56
- await fs_extra_1.default.writeFile(path_1.default.join(webDir, 'src', 'pages', 'Home.tsx'), createHomePage(data));
57
- // Create src/navigation/AppRouter.tsx
58
- await fs_extra_1.default.writeFile(path_1.default.join(webDir, 'src', 'navigation', 'AppRouter.tsx'), createAppRouter(data));
59
54
  }
60
55
  /**
61
56
  * Create web package.json
@@ -86,6 +81,7 @@ function createWebPackageJson(data) {
86
81
  },
87
82
  dependencies,
88
83
  devDependencies: {
84
+ ...constants_1.DEPENDENCIES.tooling,
89
85
  '@babel/core': '^7.24.0',
90
86
  '@babel/preset-react': '^7.24.0',
91
87
  '@babel/preset-typescript': '^7.24.0',
@@ -287,91 +283,49 @@ ReactDOM.createRoot(document.getElementById('root')!).render(
287
283
  }
288
284
  /**
289
285
  * Create App.tsx
286
+ * Web just wraps the shared App with BrowserRouter for web routing
290
287
  */
291
288
  function createAppTsx(data) {
292
- const imports = [
293
- `import React from 'react';`,
294
- `import { BrowserRouter } from 'react-router-dom';`,
295
- `import { NavigatorProvider } from '@idealyst/navigation';`,
296
- `import { AppRouter } from './navigation/AppRouter';`,
297
- ];
298
289
  if (data.hasTrpc) {
299
- imports.push(`import { QueryClient, QueryClientProvider } from '@tanstack/react-query';`);
300
- imports.push(`import { trpc, trpcClient } from './utils/trpc';`);
301
- }
302
- let appContent = `
303
- export default function App() {
290
+ return `/**
291
+ * Web App entry point
292
+ * Wraps the shared App with BrowserRouter for web routing
293
+ */
294
+
295
+ import React from 'react';
296
+ import { BrowserRouter } from 'react-router-dom';
297
+ import { App } from '@${data.workspaceScope}/shared';
298
+
299
+ // API base URL for web - uses same origin in production, localhost in development
300
+ const API_BASE_URL = window.location.hostname === 'localhost'
301
+ ? 'http://localhost:3001'
302
+ : window.location.origin;
303
+
304
+ export default function WebApp() {
304
305
  return (
305
306
  <BrowserRouter>
306
- <NavigatorProvider route={AppRouter} />
307
+ <App apiBaseUrl={API_BASE_URL} />
307
308
  </BrowserRouter>
308
309
  );
309
310
  }
310
- `;
311
- if (data.hasTrpc) {
312
- appContent = `
313
- const queryClient = new QueryClient();
314
-
315
- export default function App() {
316
- return (
317
- <trpc.Provider client={trpcClient} queryClient={queryClient}>
318
- <QueryClientProvider client={queryClient}>
319
- <BrowserRouter>
320
- <NavigatorProvider route={AppRouter} />
321
- </BrowserRouter>
322
- </QueryClientProvider>
323
- </trpc.Provider>
324
- );
325
- }
326
311
  `;
327
312
  }
328
- return imports.join('\n') + '\n' + appContent;
329
- }
330
- /**
331
- * Create Home page
313
+ return `/**
314
+ * Web App entry point
315
+ * Wraps the shared App with BrowserRouter for web routing
332
316
  */
333
- function createHomePage(data) {
334
- return `import React from 'react';
335
- import { HelloWorld } from '@${data.workspaceScope}/shared';
336
317
 
337
- export default function Home() {
318
+ import React from 'react';
319
+ import { BrowserRouter } from 'react-router-dom';
320
+ import { App } from '@${data.workspaceScope}/shared';
321
+
322
+ export default function WebApp() {
338
323
  return (
339
- <HelloWorld
340
- name="${data.appDisplayName}"
341
- onPress={() => console.log('Get Started pressed!')}
342
- />
324
+ <BrowserRouter>
325
+ <App />
326
+ </BrowserRouter>
343
327
  );
344
328
  }
345
329
  `;
346
330
  }
347
- /**
348
- * Create AppRouter
349
- */
350
- function createAppRouter(data) {
351
- return `import { NavigatorParam } from '@idealyst/navigation';
352
- import Home from '../pages/Home';
353
-
354
- /**
355
- * Application navigation router
356
- */
357
- export const AppRouter: NavigatorParam = {
358
- path: '/',
359
- type: 'navigator',
360
- layout: 'stack',
361
- options: {
362
- headerShown: false,
363
- },
364
- routes: [
365
- {
366
- path: '/',
367
- type: 'screen',
368
- component: Home,
369
- options: { title: 'Home' },
370
- },
371
- ],
372
- };
373
-
374
- export default AppRouter;
375
- `;
376
- }
377
331
  //# sourceMappingURL=web.js.map
@@ -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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"}