@underpeaks/generator-flutter 1.0.19

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 (277) hide show
  1. package/dist/adapters/bloc/bloc.d.ts +3 -0
  2. package/dist/adapters/bloc/bloc.d.ts.map +1 -0
  3. package/dist/adapters/bloc/bloc.js +283 -0
  4. package/dist/adapters/bloc/bloc.js.map +1 -0
  5. package/dist/adapters/provider/provider.d.ts +3 -0
  6. package/dist/adapters/provider/provider.d.ts.map +1 -0
  7. package/dist/adapters/provider/provider.js +182 -0
  8. package/dist/adapters/provider/provider.js.map +1 -0
  9. package/dist/adapters/riverpod/provider.d.ts +3 -0
  10. package/dist/adapters/riverpod/provider.d.ts.map +1 -0
  11. package/dist/adapters/riverpod/provider.js +230 -0
  12. package/dist/adapters/riverpod/provider.js.map +1 -0
  13. package/dist/generator.d.ts +3 -0
  14. package/dist/generator.d.ts.map +1 -0
  15. package/dist/generator.js +199 -0
  16. package/dist/generator.js.map +1 -0
  17. package/dist/index.d.ts +2 -0
  18. package/dist/index.d.ts.map +1 -0
  19. package/dist/index.js +6 -0
  20. package/dist/index.js.map +1 -0
  21. package/dist/integrations/algolia.d.ts +3 -0
  22. package/dist/integrations/algolia.d.ts.map +1 -0
  23. package/dist/integrations/algolia.js +51 -0
  24. package/dist/integrations/algolia.js.map +1 -0
  25. package/dist/integrations/anthropic.d.ts +3 -0
  26. package/dist/integrations/anthropic.d.ts.map +1 -0
  27. package/dist/integrations/anthropic.js +49 -0
  28. package/dist/integrations/anthropic.js.map +1 -0
  29. package/dist/integrations/aws-s3.d.ts +3 -0
  30. package/dist/integrations/aws-s3.d.ts.map +1 -0
  31. package/dist/integrations/aws-s3.js +67 -0
  32. package/dist/integrations/aws-s3.js.map +1 -0
  33. package/dist/integrations/clerk.d.ts +3 -0
  34. package/dist/integrations/clerk.d.ts.map +1 -0
  35. package/dist/integrations/clerk.js +68 -0
  36. package/dist/integrations/clerk.js.map +1 -0
  37. package/dist/integrations/cloudinary.d.ts +3 -0
  38. package/dist/integrations/cloudinary.d.ts.map +1 -0
  39. package/dist/integrations/cloudinary.js +64 -0
  40. package/dist/integrations/cloudinary.js.map +1 -0
  41. package/dist/integrations/crisp.d.ts +3 -0
  42. package/dist/integrations/crisp.d.ts.map +1 -0
  43. package/dist/integrations/crisp.js +42 -0
  44. package/dist/integrations/crisp.js.map +1 -0
  45. package/dist/integrations/firebase.d.ts +3 -0
  46. package/dist/integrations/firebase.d.ts.map +1 -0
  47. package/dist/integrations/firebase.js +78 -0
  48. package/dist/integrations/firebase.js.map +1 -0
  49. package/dist/integrations/flutterwave.d.ts +3 -0
  50. package/dist/integrations/flutterwave.d.ts.map +1 -0
  51. package/dist/integrations/flutterwave.js +58 -0
  52. package/dist/integrations/flutterwave.js.map +1 -0
  53. package/dist/integrations/gemini.d.ts +3 -0
  54. package/dist/integrations/gemini.d.ts.map +1 -0
  55. package/dist/integrations/gemini.js +49 -0
  56. package/dist/integrations/gemini.js.map +1 -0
  57. package/dist/integrations/github.d.ts +3 -0
  58. package/dist/integrations/github.d.ts.map +1 -0
  59. package/dist/integrations/github.js +58 -0
  60. package/dist/integrations/github.js.map +1 -0
  61. package/dist/integrations/hubspot.d.ts +3 -0
  62. package/dist/integrations/hubspot.d.ts.map +1 -0
  63. package/dist/integrations/hubspot.js +70 -0
  64. package/dist/integrations/hubspot.js.map +1 -0
  65. package/dist/integrations/index.d.ts +3 -0
  66. package/dist/integrations/index.d.ts.map +1 -0
  67. package/dist/integrations/index.js +63 -0
  68. package/dist/integrations/index.js.map +1 -0
  69. package/dist/integrations/lemonsqueezy.d.ts +3 -0
  70. package/dist/integrations/lemonsqueezy.d.ts.map +1 -0
  71. package/dist/integrations/lemonsqueezy.js +49 -0
  72. package/dist/integrations/lemonsqueezy.js.map +1 -0
  73. package/dist/integrations/mailchimp.d.ts +3 -0
  74. package/dist/integrations/mailchimp.d.ts.map +1 -0
  75. package/dist/integrations/mailchimp.js +49 -0
  76. package/dist/integrations/mailchimp.js.map +1 -0
  77. package/dist/integrations/openai.d.ts +3 -0
  78. package/dist/integrations/openai.d.ts.map +1 -0
  79. package/dist/integrations/openai.js +55 -0
  80. package/dist/integrations/openai.js.map +1 -0
  81. package/dist/integrations/payfast.d.ts +3 -0
  82. package/dist/integrations/payfast.d.ts.map +1 -0
  83. package/dist/integrations/payfast.js +55 -0
  84. package/dist/integrations/payfast.js.map +1 -0
  85. package/dist/integrations/pusher.d.ts +3 -0
  86. package/dist/integrations/pusher.d.ts.map +1 -0
  87. package/dist/integrations/pusher.js +64 -0
  88. package/dist/integrations/pusher.js.map +1 -0
  89. package/dist/integrations/resend.d.ts +3 -0
  90. package/dist/integrations/resend.d.ts.map +1 -0
  91. package/dist/integrations/resend.js +51 -0
  92. package/dist/integrations/resend.js.map +1 -0
  93. package/dist/integrations/sendgrid.d.ts +3 -0
  94. package/dist/integrations/sendgrid.d.ts.map +1 -0
  95. package/dist/integrations/sendgrid.js +49 -0
  96. package/dist/integrations/sendgrid.js.map +1 -0
  97. package/dist/integrations/sentry.d.ts +3 -0
  98. package/dist/integrations/sentry.d.ts.map +1 -0
  99. package/dist/integrations/sentry.js +62 -0
  100. package/dist/integrations/sentry.js.map +1 -0
  101. package/dist/integrations/slack.d.ts +3 -0
  102. package/dist/integrations/slack.d.ts.map +1 -0
  103. package/dist/integrations/slack.js +41 -0
  104. package/dist/integrations/slack.js.map +1 -0
  105. package/dist/integrations/storage.d.ts +3 -0
  106. package/dist/integrations/storage.d.ts.map +1 -0
  107. package/dist/integrations/storage.js +106 -0
  108. package/dist/integrations/storage.js.map +1 -0
  109. package/dist/integrations/stripe.d.ts +3 -0
  110. package/dist/integrations/stripe.d.ts.map +1 -0
  111. package/dist/integrations/stripe.js +78 -0
  112. package/dist/integrations/stripe.js.map +1 -0
  113. package/dist/integrations/twilio.d.ts +3 -0
  114. package/dist/integrations/twilio.d.ts.map +1 -0
  115. package/dist/integrations/twilio.js +54 -0
  116. package/dist/integrations/twilio.js.map +1 -0
  117. package/dist/integrations/uploadthing.d.ts +3 -0
  118. package/dist/integrations/uploadthing.d.ts.map +1 -0
  119. package/dist/integrations/uploadthing.js +57 -0
  120. package/dist/integrations/uploadthing.js.map +1 -0
  121. package/dist/templates/api-builder.d.ts +12 -0
  122. package/dist/templates/api-builder.d.ts.map +1 -0
  123. package/dist/templates/api-builder.js +104 -0
  124. package/dist/templates/api-builder.js.map +1 -0
  125. package/dist/templates/api-config.d.ts +3 -0
  126. package/dist/templates/api-config.d.ts.map +1 -0
  127. package/dist/templates/api-config.js +60 -0
  128. package/dist/templates/api-config.js.map +1 -0
  129. package/dist/templates/env.d.ts +3 -0
  130. package/dist/templates/env.d.ts.map +1 -0
  131. package/dist/templates/env.js +27 -0
  132. package/dist/templates/env.js.map +1 -0
  133. package/dist/templates/gitignore.d.ts +3 -0
  134. package/dist/templates/gitignore.d.ts.map +1 -0
  135. package/dist/templates/gitignore.js +61 -0
  136. package/dist/templates/gitignore.js.map +1 -0
  137. package/dist/templates/main.d.ts +3 -0
  138. package/dist/templates/main.d.ts.map +1 -0
  139. package/dist/templates/main.js +66 -0
  140. package/dist/templates/main.js.map +1 -0
  141. package/dist/templates/model.d.ts +3 -0
  142. package/dist/templates/model.d.ts.map +1 -0
  143. package/dist/templates/model.js +104 -0
  144. package/dist/templates/model.js.map +1 -0
  145. package/dist/templates/navigation.d.ts +3 -0
  146. package/dist/templates/navigation.d.ts.map +1 -0
  147. package/dist/templates/navigation.js +306 -0
  148. package/dist/templates/navigation.js.map +1 -0
  149. package/dist/templates/page-auth.d.ts +3 -0
  150. package/dist/templates/page-auth.d.ts.map +1 -0
  151. package/dist/templates/page-auth.js +523 -0
  152. package/dist/templates/page-auth.js.map +1 -0
  153. package/dist/templates/page-blog-post.d.ts +3 -0
  154. package/dist/templates/page-blog-post.d.ts.map +1 -0
  155. package/dist/templates/page-blog-post.js +118 -0
  156. package/dist/templates/page-blog-post.js.map +1 -0
  157. package/dist/templates/page-calendar.d.ts +3 -0
  158. package/dist/templates/page-calendar.d.ts.map +1 -0
  159. package/dist/templates/page-calendar.js +173 -0
  160. package/dist/templates/page-calendar.js.map +1 -0
  161. package/dist/templates/page-cart.d.ts +3 -0
  162. package/dist/templates/page-cart.d.ts.map +1 -0
  163. package/dist/templates/page-cart.js +151 -0
  164. package/dist/templates/page-cart.js.map +1 -0
  165. package/dist/templates/page-chat.d.ts +3 -0
  166. package/dist/templates/page-chat.d.ts.map +1 -0
  167. package/dist/templates/page-chat.js +158 -0
  168. package/dist/templates/page-chat.js.map +1 -0
  169. package/dist/templates/page-checkout.d.ts +3 -0
  170. package/dist/templates/page-checkout.d.ts.map +1 -0
  171. package/dist/templates/page-checkout.js +180 -0
  172. package/dist/templates/page-checkout.js.map +1 -0
  173. package/dist/templates/page-contact.d.ts +1 -0
  174. package/dist/templates/page-contact.d.ts.map +1 -0
  175. package/dist/templates/page-contact.js +143 -0
  176. package/dist/templates/page-contact.js.map +1 -0
  177. package/dist/templates/page-custom.d.ts +3 -0
  178. package/dist/templates/page-custom.d.ts.map +1 -0
  179. package/dist/templates/page-custom.js +45 -0
  180. package/dist/templates/page-custom.js.map +1 -0
  181. package/dist/templates/page-dashboard.d.ts +3 -0
  182. package/dist/templates/page-dashboard.d.ts.map +1 -0
  183. package/dist/templates/page-dashboard.js +157 -0
  184. package/dist/templates/page-dashboard.js.map +1 -0
  185. package/dist/templates/page-detail.d.ts +3 -0
  186. package/dist/templates/page-detail.d.ts.map +1 -0
  187. package/dist/templates/page-detail.js +165 -0
  188. package/dist/templates/page-detail.js.map +1 -0
  189. package/dist/templates/page-feed.d.ts +3 -0
  190. package/dist/templates/page-feed.d.ts.map +1 -0
  191. package/dist/templates/page-feed.js +168 -0
  192. package/dist/templates/page-feed.js.map +1 -0
  193. package/dist/templates/page-form.d.ts +3 -0
  194. package/dist/templates/page-form.d.ts.map +1 -0
  195. package/dist/templates/page-form.js +205 -0
  196. package/dist/templates/page-form.js.map +1 -0
  197. package/dist/templates/page-gallery.d.ts +3 -0
  198. package/dist/templates/page-gallery.d.ts.map +1 -0
  199. package/dist/templates/page-gallery.js +152 -0
  200. package/dist/templates/page-gallery.js.map +1 -0
  201. package/dist/templates/page-invoice.d.ts +3 -0
  202. package/dist/templates/page-invoice.d.ts.map +1 -0
  203. package/dist/templates/page-invoice.js +144 -0
  204. package/dist/templates/page-invoice.js.map +1 -0
  205. package/dist/templates/page-kanban.d.ts +3 -0
  206. package/dist/templates/page-kanban.d.ts.map +1 -0
  207. package/dist/templates/page-kanban.js +114 -0
  208. package/dist/templates/page-kanban.js.map +1 -0
  209. package/dist/templates/page-list.d.ts +3 -0
  210. package/dist/templates/page-list.d.ts.map +1 -0
  211. package/dist/templates/page-list.js +284 -0
  212. package/dist/templates/page-list.js.map +1 -0
  213. package/dist/templates/page-map.d.ts +3 -0
  214. package/dist/templates/page-map.d.ts.map +1 -0
  215. package/dist/templates/page-map.js +94 -0
  216. package/dist/templates/page-map.js.map +1 -0
  217. package/dist/templates/page-messages.d.ts +3 -0
  218. package/dist/templates/page-messages.d.ts.map +1 -0
  219. package/dist/templates/page-messages.js +48 -0
  220. package/dist/templates/page-messages.js.map +1 -0
  221. package/dist/templates/page-onboarding.d.ts +3 -0
  222. package/dist/templates/page-onboarding.d.ts.map +1 -0
  223. package/dist/templates/page-onboarding.js +164 -0
  224. package/dist/templates/page-onboarding.js.map +1 -0
  225. package/dist/templates/page-otp.d.ts +3 -0
  226. package/dist/templates/page-otp.d.ts.map +1 -0
  227. package/dist/templates/page-otp.js +216 -0
  228. package/dist/templates/page-otp.js.map +1 -0
  229. package/dist/templates/page-profile.d.ts +3 -0
  230. package/dist/templates/page-profile.d.ts.map +1 -0
  231. package/dist/templates/page-profile.js +159 -0
  232. package/dist/templates/page-profile.js.map +1 -0
  233. package/dist/templates/page-reset-password.d.ts +3 -0
  234. package/dist/templates/page-reset-password.d.ts.map +1 -0
  235. package/dist/templates/page-reset-password.js +168 -0
  236. package/dist/templates/page-reset-password.js.map +1 -0
  237. package/dist/templates/page-search.d.ts +3 -0
  238. package/dist/templates/page-search.d.ts.map +1 -0
  239. package/dist/templates/page-search.js +112 -0
  240. package/dist/templates/page-search.js.map +1 -0
  241. package/dist/templates/page-settings.d.ts +3 -0
  242. package/dist/templates/page-settings.d.ts.map +1 -0
  243. package/dist/templates/page-settings.js +123 -0
  244. package/dist/templates/page-settings.js.map +1 -0
  245. package/dist/templates/page-splash.d.ts +3 -0
  246. package/dist/templates/page-splash.d.ts.map +1 -0
  247. package/dist/templates/page-splash.js +93 -0
  248. package/dist/templates/page-splash.js.map +1 -0
  249. package/dist/templates/page-wallet.d.ts +3 -0
  250. package/dist/templates/page-wallet.d.ts.map +1 -0
  251. package/dist/templates/page-wallet.js +97 -0
  252. package/dist/templates/page-wallet.js.map +1 -0
  253. package/dist/templates/pubspec.d.ts +3 -0
  254. package/dist/templates/pubspec.d.ts.map +1 -0
  255. package/dist/templates/pubspec.js +72 -0
  256. package/dist/templates/pubspec.js.map +1 -0
  257. package/dist/templates/readme.d.ts +3 -0
  258. package/dist/templates/readme.d.ts.map +1 -0
  259. package/dist/templates/readme.js +111 -0
  260. package/dist/templates/readme.js.map +1 -0
  261. package/dist/templates/repository.d.ts +3 -0
  262. package/dist/templates/repository.d.ts.map +1 -0
  263. package/dist/templates/repository.js +224 -0
  264. package/dist/templates/repository.js.map +1 -0
  265. package/dist/templates/theme.d.ts +3 -0
  266. package/dist/templates/theme.d.ts.map +1 -0
  267. package/dist/templates/theme.js +163 -0
  268. package/dist/templates/theme.js.map +1 -0
  269. package/dist/templates/validators.d.ts +3 -0
  270. package/dist/templates/validators.d.ts.map +1 -0
  271. package/dist/templates/validators.js +38 -0
  272. package/dist/templates/validators.js.map +1 -0
  273. package/dist/templates/widget-card.d.ts +3 -0
  274. package/dist/templates/widget-card.d.ts.map +1 -0
  275. package/dist/templates/widget-card.js +91 -0
  276. package/dist/templates/widget-card.js.map +1 -0
  277. package/package.json +24 -0
@@ -0,0 +1,306 @@
1
+ "use strict";
2
+ // File: underpeaks_codegen/packages/generator-flutter/src/templates/navigation.ts
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.generateNavigation = generateNavigation;
5
+ const generator_core_1 = require("@underpeaks/generator-core");
6
+ const TEMPLATE_ICONS = {
7
+ list: 'Icons.list_alt_outlined',
8
+ grid: 'Icons.grid_view_outlined',
9
+ detail: 'Icons.article_outlined',
10
+ form: 'Icons.edit_outlined',
11
+ dashboard: 'Icons.dashboard_outlined',
12
+ profile: 'Icons.person_outlined',
13
+ chat: 'Icons.chat_bubble_outline',
14
+ map: 'Icons.map_outlined',
15
+ cart: 'Icons.shopping_cart_outlined',
16
+ search: 'Icons.search_outlined',
17
+ settings: 'Icons.settings_outlined',
18
+ blog_post: 'Icons.article_outlined',
19
+ feed: 'Icons.dynamic_feed_outlined',
20
+ messages: 'Icons.mail_outline',
21
+ sign_in: 'Icons.login_outlined',
22
+ sign_up: 'Icons.person_add_outlined',
23
+ landing: 'Icons.home_outlined',
24
+ default: 'Icons.circle_outlined',
25
+ };
26
+ // FIX: only template types that are genuinely nav-bar-appropriate should
27
+ // ever be assigned a default nav_type or appear in nav. Fixed
28
+ // single-screen pages (splash, onboarding, auth, checkout, wallet, etc.)
29
+ // must never appear in nav, even when they have no nav_type set.
30
+ const NAV_ELIGIBLE_TEMPLATE_TYPES = new Set(['list', 'grid', 'dashboard', 'feed', 'profile', 'chat', 'messages', 'map', 'search', 'settings']);
31
+ // FIX: of the nav-eligible types above, only these are genuinely
32
+ // list-style pages with a matching detail/form page to auto-derive
33
+ // routes for. The rest (dashboard, chat, messages, map, search, settings,
34
+ // profile) can appear in nav but must NOT get detail/create/edit routes
35
+ // auto-generated — they aren't list-of-records pages.
36
+ const CRUD_DERIVABLE_TEMPLATE_TYPES = new Set(['list', 'grid']);
37
+ function getIcon(templateType) {
38
+ return TEMPLATE_ICONS[templateType] ?? TEMPLATE_ICONS['default'];
39
+ }
40
+ function toRoutePath(slug) {
41
+ return slug.replace(/^\//, '');
42
+ }
43
+ // ── Page → {import path, class name} resolution ────────────────────────────
44
+ const AUTH_PAGES = {
45
+ sign_in: { file: 'auth/sign_in_view.dart', className: 'SignInView' },
46
+ sign_up: { file: 'auth/sign_up_view.dart', className: 'SignUpView' },
47
+ forgot_password: { file: 'auth/forgot_password_view.dart', className: 'ForgotPasswordView' },
48
+ reset_password: { file: 'auth/reset_password_view.dart', className: 'ResetPasswordView' },
49
+ otp_request: { file: 'auth/otp_request_view.dart', className: 'OtpRequestView' },
50
+ otp_entry: { file: 'auth/otp_entry_view.dart', className: 'OtpEntryView' },
51
+ };
52
+ const FIXED_PAGES = {
53
+ checkout: { file: 'checkout_view.dart', className: 'CheckoutView' },
54
+ wallet: { file: 'wallet_view.dart', className: 'WalletView' },
55
+ chat: { file: 'chat_view.dart', className: 'ChatView' },
56
+ messages: { file: 'messages_view.dart', className: 'MessagesView' },
57
+ map: { file: 'map_view.dart', className: 'MapView' },
58
+ settings: { file: 'settings_view.dart', className: 'SettingsView' },
59
+ splash: { file: 'splash_view.dart', className: 'SplashView' },
60
+ onboarding: { file: 'onboarding_view.dart', className: 'OnboardingView' },
61
+ };
62
+ const MODEL_FILE_SUFFIX = {
63
+ list: 'list',
64
+ grid: 'list',
65
+ detail: 'detail',
66
+ form: 'form',
67
+ gallery: 'gallery',
68
+ dashboard: 'dashboard',
69
+ profile: 'profile',
70
+ 'blog-post': 'blog_post',
71
+ cart: 'cart',
72
+ invoice: 'invoice',
73
+ feed: 'feed',
74
+ search: 'search',
75
+ kanban: 'kanban',
76
+ calendar: 'calendar',
77
+ };
78
+ function getPageInfo(page, models) {
79
+ const auth = AUTH_PAGES[page.template_type];
80
+ if (auth)
81
+ return { importPath: auth.file, className: auth.className };
82
+ const fixed = FIXED_PAGES[page.template_type];
83
+ if (fixed)
84
+ return { importPath: fixed.file, className: fixed.className };
85
+ if (page.template_type === 'custom') {
86
+ const slugFile = page.slug.replace(/\//g, '_').replace(/-/g, '_').replace(/^_/, '');
87
+ return {
88
+ importPath: `${slugFile}_custom_view.dart`,
89
+ className: page.name.replace(/\s+/g, '') + 'View',
90
+ };
91
+ }
92
+ const suffix = MODEL_FILE_SUFFIX[page.template_type];
93
+ if (!suffix)
94
+ return null;
95
+ const model = models.find((m) => m.sm_id === page.model_id);
96
+ if (!model)
97
+ return null;
98
+ const fileBase = (0, generator_core_1.modelToFileName)(model.name);
99
+ const classSuffix = page.template_type === 'detail' ? 'DetailView' :
100
+ page.template_type === 'form' ? 'FormView' :
101
+ 'View';
102
+ return {
103
+ importPath: `${fileBase}_${suffix}_view.dart`,
104
+ className: page.name.replace(/\s+/g, '') + classSuffix,
105
+ };
106
+ }
107
+ function generateNavigation(pages, routes, models, stateManager) {
108
+ // FIX: previously, pages with no nav_type at all were only picked up by
109
+ // a count-based fallback (3+ pages with none set → default bottom-nav
110
+ // for ALL of them, including non-nav-eligible types). Now every
111
+ // individual nav-eligible page with no nav_type gets defaulted to
112
+ // bottom-nav directly — no count threshold, and never applied to
113
+ // fixed single-screen pages like splash/onboarding/auth.
114
+ const effectiveNavType = (page) => {
115
+ if (page.nav_type && page.nav_type !== 'none')
116
+ return page.nav_type;
117
+ if (NAV_ELIGIBLE_TEMPLATE_TYPES.has(page.template_type))
118
+ return 'bottom-nav';
119
+ return undefined;
120
+ };
121
+ const bottomNavPages = pages.filter((p) => effectiveNavType(p) === 'bottom-nav');
122
+ const drawerPages = pages.filter((p) => effectiveNavType(p) === 'drawer-nav');
123
+ const sidebarPages = pages.filter((p) => effectiveNavType(p) === 'sidebar-nav');
124
+ const navPages = bottomNavPages;
125
+ const firstNavRoute = navPages[0]
126
+ ? `'/${toRoutePath(navPages[0].slug)}'`
127
+ : `'/home'`;
128
+ const pageInfoMap = new Map();
129
+ for (const page of pages) {
130
+ const info = getPageInfo(page, models);
131
+ if (info)
132
+ pageInfoMap.set(page, info);
133
+ }
134
+ const lines = [];
135
+ lines.push(`// GENERATED FILE — DO NOT EDIT MANUALLY`);
136
+ lines.push(`// Generated by Underpeaks CodeGen v1.0.0`);
137
+ lines.push(`// Regenerate: nxf generate flutter`);
138
+ lines.push(`// ignore_for_file: lines_longer_than_80_chars`);
139
+ lines.push(``);
140
+ lines.push(`import 'package:flutter/material.dart';`);
141
+ lines.push(`import 'package:go_router/go_router.dart';`);
142
+ lines.push(``);
143
+ const seenImports = new Set();
144
+ for (const page of pages) {
145
+ const info = pageInfoMap.get(page);
146
+ if (!info)
147
+ continue;
148
+ const importLine = `import '../../presentation/views/${info.importPath}';`;
149
+ if (seenImports.has(importLine))
150
+ continue;
151
+ seenImports.add(importLine);
152
+ lines.push(importLine);
153
+ }
154
+ lines.push(``);
155
+ lines.push(`// ── Router ───────────────────────────────────────────────────────────────`);
156
+ lines.push(``);
157
+ lines.push(`final appRouter = GoRouter(`);
158
+ lines.push(` initialLocation: ${firstNavRoute},`);
159
+ lines.push(` routes: [`);
160
+ if (navPages.length > 0) {
161
+ lines.push(``);
162
+ lines.push(` // ── Shell route — persistent navigation ──────────────────────────────`);
163
+ lines.push(` ShellRoute(`);
164
+ lines.push(` builder: (context, state, child) => AppShell(child: child),`);
165
+ lines.push(` routes: [`);
166
+ for (const page of navPages) {
167
+ const info = pageInfoMap.get(page);
168
+ if (!info)
169
+ continue;
170
+ const path = toRoutePath(page.slug);
171
+ lines.push(` GoRoute(`);
172
+ lines.push(` path: '/${path}',`);
173
+ lines.push(` builder: (context, state) => const ${info.className}(),`);
174
+ lines.push(` ),`);
175
+ }
176
+ lines.push(` ],`);
177
+ lines.push(` ),`);
178
+ }
179
+ lines.push(``);
180
+ lines.push(` // ── Standalone routes — no nav bar ───────────────────────────────────`);
181
+ for (const page of pages) {
182
+ const info = pageInfoMap.get(page);
183
+ if (!info)
184
+ continue;
185
+ if (navPages.includes(page))
186
+ continue;
187
+ const path = toRoutePath(page.slug);
188
+ lines.push(` GoRoute(`);
189
+ lines.push(` path: '/${path}',`);
190
+ lines.push(` builder: (context, state) => const ${info.className}(),`);
191
+ lines.push(` ),`);
192
+ }
193
+ for (const page of navPages.filter((p) => CRUD_DERIVABLE_TEMPLATE_TYPES.has(p.template_type))) {
194
+ const basePath = toRoutePath(page.slug);
195
+ const modelName = page.name.replace(/\s+/g, '');
196
+ lines.push(` GoRoute(`);
197
+ lines.push(` path: '/${basePath}/:id',`);
198
+ lines.push(` builder: (context, state) => ${modelName}DetailView(`);
199
+ lines.push(` id: state.pathParameters['id']!,`);
200
+ lines.push(` ),`);
201
+ lines.push(` ),`);
202
+ lines.push(` GoRoute(`);
203
+ lines.push(` path: '/${basePath}/create',`);
204
+ lines.push(` builder: (context, state) => const ${modelName}FormView(),`);
205
+ lines.push(` ),`);
206
+ lines.push(` GoRoute(`);
207
+ lines.push(` path: '/${basePath}/:id/edit',`);
208
+ lines.push(` builder: (context, state) => ${modelName}FormView(`);
209
+ lines.push(` id: state.pathParameters['id'],`);
210
+ lines.push(` ),`);
211
+ lines.push(` ),`);
212
+ }
213
+ lines.push(` ],`);
214
+ lines.push(`);`);
215
+ lines.push(``);
216
+ lines.push(`// ── App Shell — bottom navigation ────────────────────────────────────────`);
217
+ lines.push(``);
218
+ lines.push(`class AppShell extends StatefulWidget {`);
219
+ lines.push(` final Widget child;`);
220
+ lines.push(` const AppShell({super.key, required this.child});`);
221
+ lines.push(``);
222
+ lines.push(` @override`);
223
+ lines.push(` State<AppShell> createState() => _AppShellState();`);
224
+ lines.push(`}`);
225
+ lines.push(``);
226
+ lines.push(`class _AppShellState extends State<AppShell> {`);
227
+ lines.push(` int _selectedIndex = 0;`);
228
+ lines.push(``);
229
+ lines.push(` static const _routes = [`);
230
+ for (const page of navPages) {
231
+ lines.push(` '/${toRoutePath(page.slug)}',`);
232
+ }
233
+ lines.push(` ];`);
234
+ lines.push(``);
235
+ lines.push(` @override`);
236
+ lines.push(` Widget build(BuildContext context) {`);
237
+ lines.push(` return Scaffold(`);
238
+ lines.push(` body: widget.child,`);
239
+ lines.push(` bottomNavigationBar: NavigationBar(`);
240
+ lines.push(` selectedIndex: _selectedIndex,`);
241
+ lines.push(` onDestinationSelected: (index) {`);
242
+ lines.push(` setState(() => _selectedIndex = index);`);
243
+ lines.push(` context.go(_routes[index]);`);
244
+ lines.push(` },`);
245
+ lines.push(` destinations: [`);
246
+ for (const page of navPages) {
247
+ const icon = getIcon(page.template_type);
248
+ lines.push(` NavigationDestination(`);
249
+ lines.push(` icon: const Icon(${icon}),`);
250
+ lines.push(` label: '${page.name}',`);
251
+ lines.push(` ),`);
252
+ }
253
+ lines.push(` ],`);
254
+ lines.push(` ),`);
255
+ lines.push(` );`);
256
+ lines.push(` }`);
257
+ lines.push(`}`);
258
+ if (drawerPages.length > 0) {
259
+ lines.push(``);
260
+ lines.push(`// ── Drawer Shell ─────────────────────────────────────────────────────────`);
261
+ lines.push(``);
262
+ lines.push(`class DrawerShell extends StatelessWidget {`);
263
+ lines.push(` final Widget child;`);
264
+ lines.push(` const DrawerShell({super.key, required this.child});`);
265
+ lines.push(``);
266
+ lines.push(` @override`);
267
+ lines.push(` Widget build(BuildContext context) {`);
268
+ lines.push(` return Scaffold(`);
269
+ lines.push(` drawer: Drawer(`);
270
+ lines.push(` child: ListView(`);
271
+ lines.push(` padding: EdgeInsets.zero,`);
272
+ lines.push(` children: [`);
273
+ lines.push(` const DrawerHeader(`);
274
+ lines.push(` decoration: BoxDecoration(color: Colors.black),`);
275
+ lines.push(` child: Text(`);
276
+ lines.push(` 'Menu',`);
277
+ lines.push(` style: TextStyle(color: Colors.white, fontSize: 24),`);
278
+ lines.push(` ),`);
279
+ lines.push(` ),`);
280
+ for (const page of drawerPages) {
281
+ const icon = getIcon(page.template_type);
282
+ const path = toRoutePath(page.slug);
283
+ lines.push(` ListTile(`);
284
+ lines.push(` leading: const Icon(${icon}),`);
285
+ lines.push(` title: const Text('${page.name}'),`);
286
+ lines.push(` onTap: () {`);
287
+ lines.push(` Navigator.pop(context);`);
288
+ lines.push(` context.go('/${path}');`);
289
+ lines.push(` },`);
290
+ lines.push(` ),`);
291
+ }
292
+ lines.push(` ],`);
293
+ lines.push(` ),`);
294
+ lines.push(` ),`);
295
+ lines.push(` body: child,`);
296
+ lines.push(` );`);
297
+ lines.push(` }`);
298
+ lines.push(`}`);
299
+ }
300
+ return {
301
+ path: 'lib/generated/navigation/router.g.dart',
302
+ content: lines.join('\n'),
303
+ category: 'generated',
304
+ };
305
+ }
306
+ //# sourceMappingURL=navigation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"navigation.js","sourceRoot":"","sources":["../../src/templates/navigation.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import type { PageDef, GeneratedFile } from '@underpeaks/generator-core';
2
+ export declare function generateAuthPages(page: PageDef, stateManager: string, pages: PageDef[]): GeneratedFile[];
3
+ //# sourceMappingURL=page-auth.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"page-auth.d.ts","sourceRoot":"","sources":["../../src/templates/page-auth.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAiBxE,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,aAAa,EAAE,CA+fxG"}