@nextsparkjs/core 0.1.0-beta.190 → 0.1.0-beta.192

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 (2997) hide show
  1. package/README.md +1 -1
  2. package/dist/components/app/layouts/CurrentYear.d.ts +10 -0
  3. package/dist/components/app/layouts/CurrentYear.d.ts.map +1 -0
  4. package/dist/components/app/layouts/CurrentYear.js +8 -0
  5. package/dist/components/app/layouts/PublicFooter.d.ts.map +1 -1
  6. package/dist/components/app/layouts/PublicFooter.js +3 -3
  7. package/dist/components/app/layouts/PublicNavbar.js +1 -1
  8. package/dist/components/auth/DevKeyring.js +1 -1
  9. package/dist/components/auth/forms/LoginForm.d.ts.map +1 -1
  10. package/dist/components/auth/forms/LoginForm.js +47 -12
  11. package/dist/components/auth/forms/SignupForm.d.ts.map +1 -1
  12. package/dist/components/auth/forms/SignupForm.js +57 -5
  13. package/dist/components/dashboard/block-editor/block-picker.d.ts.map +1 -1
  14. package/dist/components/dashboard/block-editor/block-picker.js +2 -1
  15. package/dist/components/dashboard/block-editor/dynamic-form.d.ts.map +1 -1
  16. package/dist/components/dashboard/block-editor/dynamic-form.js +2 -2
  17. package/dist/components/dashboard/block-editor/pattern-card.js +2 -2
  18. package/dist/components/dashboard/block-editor/pattern-reference-preview.js +2 -2
  19. package/dist/components/dashboard/layouts/AuthenticatedDashboardLayout.d.ts +5 -0
  20. package/dist/components/dashboard/layouts/AuthenticatedDashboardLayout.d.ts.map +1 -0
  21. package/dist/components/dashboard/layouts/AuthenticatedDashboardLayout.js +37 -0
  22. package/dist/components/dashboard/layouts/Sidebar.js +1 -1
  23. package/dist/components/dashboard/layouts/TopNavbar.js +2 -2
  24. package/dist/components/dashboard/mobile/MobileBottomNav.js +1 -1
  25. package/dist/components/dashboard/mobile/MobileMoreSheet.js +1 -1
  26. package/dist/components/dashboard/mobile/MobileTopBar.js +8 -7
  27. package/dist/components/dashboard/mobile/QuickCreateSheet.js +5 -5
  28. package/dist/components/dashboard/navigation/DynamicNavigation.d.ts.map +1 -1
  29. package/dist/components/dashboard/navigation/DynamicNavigation.js +6 -9
  30. package/dist/components/devtools/BlockDetailViewer.js +2 -2
  31. package/dist/components/devtools/BlocksViewer.js +1 -1
  32. package/dist/components/docs/docs-sidebar.d.ts.map +1 -1
  33. package/dist/components/docs/docs-sidebar.js +2 -5
  34. package/dist/components/entities/EntityChildManager.js +8 -8
  35. package/dist/components/entities/EntityDetail.js +8 -8
  36. package/dist/components/entities/ErrorBoundary.js +2 -2
  37. package/dist/components/entities/wrappers/EntityDetailWrapper.js +22 -22
  38. package/dist/components/entities/wrappers/EntityFormWrapper.d.ts +1 -1
  39. package/dist/components/entities/wrappers/EntityFormWrapper.js +3 -3
  40. package/dist/components/entities/wrappers/EntityListWrapper.js +2 -2
  41. package/dist/components/settings/layouts/SettingsSidebar.js +2 -2
  42. package/dist/components/teams/InviteMemberDialog.js +1 -1
  43. package/dist/components/teams/TeamMembersList.js +1 -1
  44. package/dist/components/ui/accordion.js +1 -1
  45. package/dist/components/ui/avatar.js +1 -1
  46. package/dist/components/ui/badge.js +1 -1
  47. package/dist/components/ui/button.js +1 -1
  48. package/dist/components/ui/calendar.d.ts.map +1 -1
  49. package/dist/components/ui/calendar.js +22 -30
  50. package/dist/components/ui/card.js +1 -1
  51. package/dist/components/ui/checkbox.js +1 -1
  52. package/dist/components/ui/command.d.ts +7 -7
  53. package/dist/components/ui/input.js +1 -1
  54. package/dist/components/ui/label.js +1 -1
  55. package/dist/components/ui/progress.js +1 -1
  56. package/dist/components/ui/relation-display.js +1 -1
  57. package/dist/components/ui/separator.js +1 -1
  58. package/dist/components/ui/sheet.d.ts +1 -1
  59. package/dist/components/ui/simple-relation-select.js +1 -1
  60. package/dist/components/ui/skeleton.js +1 -1
  61. package/dist/components/ui/slider.js +1 -1
  62. package/dist/components/ui/switch.js +1 -1
  63. package/dist/components/ui/tabs.js +1 -1
  64. package/dist/components/ui/textarea.js +1 -1
  65. package/dist/contexts/TeamContext.js +1 -1
  66. package/dist/emails/otp-verification.d.ts +1 -1
  67. package/dist/emails/otp-verification.d.ts.map +1 -1
  68. package/dist/emails/otp-verification.js +1 -1
  69. package/dist/emails/reset-password.d.ts +1 -1
  70. package/dist/emails/reset-password.d.ts.map +1 -1
  71. package/dist/emails/reset-password.js +1 -1
  72. package/dist/emails/team-invitation.d.ts +1 -1
  73. package/dist/emails/team-invitation.d.ts.map +1 -1
  74. package/dist/emails/team-invitation.js +1 -1
  75. package/dist/emails/verify-email.d.ts +2 -2
  76. package/dist/emails/verify-email.d.ts.map +1 -1
  77. package/dist/emails/verify-email.js +1 -1
  78. package/dist/hooks/index.d.ts +1 -0
  79. package/dist/hooks/index.d.ts.map +1 -1
  80. package/dist/hooks/index.js +1 -0
  81. package/dist/hooks/useAccountPreferencesSync.d.ts.map +1 -1
  82. package/dist/hooks/useAccountPreferencesSync.js +1 -1
  83. package/dist/hooks/useAuth.d.ts.map +1 -1
  84. package/dist/hooks/useAuth.js +1 -1
  85. package/dist/hooks/useAuthReadiness.d.ts +15 -0
  86. package/dist/hooks/useAuthReadiness.d.ts.map +1 -0
  87. package/dist/hooks/useAuthReadiness.js +62 -0
  88. package/dist/hooks/useContentTranslation.d.ts +7 -7
  89. package/dist/hooks/useContextAwareTranslations.js +10 -10
  90. package/dist/hooks/useEnabledEntities.js +2 -2
  91. package/dist/hooks/useEnsureUserMetadata.js +1 -1
  92. package/dist/hooks/useEntityConfig.js +4 -4
  93. package/dist/hooks/useEntityTranslations.d.ts.map +1 -1
  94. package/dist/hooks/useEntityTranslations.js +6 -2
  95. package/dist/hooks/useLocale.d.ts +3 -1
  96. package/dist/hooks/useLocale.d.ts.map +1 -1
  97. package/dist/hooks/useLocale.js +1 -1
  98. package/dist/hooks/useSubscription.d.ts +1 -1
  99. package/dist/hooks/useSubscription.d.ts.map +1 -1
  100. package/dist/hooks/useTeamsConfig.js +1 -1
  101. package/dist/hooks/useTranslationPreload.js +5 -5
  102. package/dist/i18n.d.ts +1 -14
  103. package/dist/i18n.d.ts.map +1 -1
  104. package/dist/i18n.js +13 -54
  105. package/dist/lib/actions/entity.actions.js +8 -8
  106. package/dist/lib/actions/team.actions.js +7 -7
  107. package/dist/lib/api/auth/devtools-auth.d.ts +2 -2
  108. package/dist/lib/api/auth/devtools-auth.d.ts.map +1 -1
  109. package/dist/lib/api/auth/devtools-auth.js +3 -3
  110. package/dist/lib/api/entities.js +5 -5
  111. package/dist/lib/api/entity/audit-log.d.ts.map +1 -1
  112. package/dist/lib/api/entity/audit-log.js +12 -3
  113. package/dist/lib/api/entity/generic-handler.d.ts.map +1 -1
  114. package/dist/lib/api/entity/generic-handler.js +29 -43
  115. package/dist/lib/api/entity/resolver.d.ts +1 -3
  116. package/dist/lib/api/entity/resolver.d.ts.map +1 -1
  117. package/dist/lib/api/entity/resolver.js +0 -25
  118. package/dist/lib/api/helpers.d.ts +2 -2
  119. package/dist/lib/api/helpers.d.ts.map +1 -1
  120. package/dist/lib/api/helpers.js +1 -4
  121. package/dist/lib/api/keys.js +1 -1
  122. package/dist/lib/api/permission-middleware.js +1 -1
  123. package/dist/lib/api/rate-limit.d.ts.map +1 -1
  124. package/dist/lib/api/rate-limit.js +2 -0
  125. package/dist/lib/auth/readiness.d.ts +92 -0
  126. package/dist/lib/auth/readiness.d.ts.map +1 -0
  127. package/dist/lib/auth/readiness.js +192 -0
  128. package/dist/lib/auth/registration-guard-plugin.d.ts.map +1 -1
  129. package/dist/lib/auth/registration-guard-plugin.js +2 -2
  130. package/dist/lib/auth/request-session.d.ts +15 -0
  131. package/dist/lib/auth/request-session.d.ts.map +1 -0
  132. package/dist/lib/auth/request-session.js +22 -0
  133. package/dist/lib/auth/runtime-readiness.d.ts +49 -0
  134. package/dist/lib/auth/runtime-readiness.d.ts.map +1 -0
  135. package/dist/lib/auth/runtime-readiness.js +183 -0
  136. package/dist/lib/auth-client.d.ts +2 -2
  137. package/dist/lib/auth-email-callbacks.d.ts +3 -1
  138. package/dist/lib/auth-email-callbacks.d.ts.map +1 -1
  139. package/dist/lib/auth-email-callbacks.js +8 -2
  140. package/dist/lib/auth.d.ts.map +1 -1
  141. package/dist/lib/auth.js +20 -15
  142. package/dist/lib/billing/gateways/factory.d.ts +1 -1
  143. package/dist/lib/billing/gateways/stripe.js +1 -1
  144. package/dist/lib/billing/schema.d.ts +5 -5
  145. package/dist/lib/config/app.config.d.ts.map +1 -1
  146. package/dist/lib/config/app.config.js +3 -52
  147. package/dist/lib/config/config-client.d.ts +554 -0
  148. package/dist/lib/config/config-client.d.ts.map +1 -0
  149. package/dist/lib/config/config-client.js +68 -0
  150. package/dist/lib/config/config-sync.d.ts.map +1 -1
  151. package/dist/lib/config/config-sync.js +4 -28
  152. package/dist/lib/config/i18n-config-client.d.ts +9 -0
  153. package/dist/lib/config/i18n-config-client.d.ts.map +1 -0
  154. package/dist/lib/config/i18n-config-client.js +7 -0
  155. package/dist/lib/config/i18n.defaults.d.ts +7 -0
  156. package/dist/lib/config/i18n.defaults.d.ts.map +1 -0
  157. package/dist/lib/config/i18n.defaults.js +54 -0
  158. package/dist/lib/config/index.d.ts +2 -2
  159. package/dist/lib/config/index.d.ts.map +1 -1
  160. package/dist/lib/config/index.js +3 -2
  161. package/dist/lib/config/nextspark-types.d.ts +49 -20
  162. package/dist/lib/config/nextspark-types.d.ts.map +1 -1
  163. package/dist/lib/config/nextspark-types.js +174 -1
  164. package/dist/lib/config/public-config-client.d.ts +22 -0
  165. package/dist/lib/config/public-config-client.d.ts.map +1 -0
  166. package/dist/lib/config/public-config-client.js +25 -0
  167. package/dist/lib/config/types.d.ts +1 -1
  168. package/dist/lib/db.d.ts +1 -0
  169. package/dist/lib/db.d.ts.map +1 -1
  170. package/dist/lib/db.js +19 -9
  171. package/dist/lib/email/templates.d.ts +1 -1
  172. package/dist/lib/entities/client-config.d.ts +10 -0
  173. package/dist/lib/entities/client-config.d.ts.map +1 -0
  174. package/dist/lib/entities/client-config.js +44 -0
  175. package/dist/lib/entities/client-entity-meta.d.ts +41 -0
  176. package/dist/lib/entities/client-entity-meta.d.ts.map +1 -0
  177. package/dist/lib/entities/client-entity-meta.js +30 -0
  178. package/dist/lib/entities/hooks.js +1 -1
  179. package/dist/lib/entities/portable/media-ref.d.ts +21 -0
  180. package/dist/lib/entities/portable/media-ref.d.ts.map +1 -0
  181. package/dist/lib/entities/portable/media-ref.js +13 -0
  182. package/dist/lib/entities/portable/response-shape.d.ts +57 -0
  183. package/dist/lib/entities/portable/response-shape.d.ts.map +1 -0
  184. package/dist/lib/entities/portable/response-shape.js +50 -0
  185. package/dist/lib/entities/portable/schema-generator.d.ts +48 -0
  186. package/dist/lib/entities/portable/schema-generator.d.ts.map +1 -0
  187. package/dist/lib/entities/portable/schema-generator.js +758 -0
  188. package/dist/lib/entities/portable/system-fields.d.ts +10 -0
  189. package/dist/lib/entities/portable/system-fields.d.ts.map +1 -0
  190. package/dist/lib/entities/portable/system-fields.js +4 -0
  191. package/dist/lib/entities/portable/types.d.ts +81 -0
  192. package/dist/lib/entities/portable/types.d.ts.map +1 -0
  193. package/dist/lib/entities/queries.d.ts +2 -2
  194. package/dist/lib/entities/queries.d.ts.map +1 -1
  195. package/dist/lib/entities/queries.js +2 -2
  196. package/dist/lib/entities/registry.client.js +2 -2
  197. package/dist/lib/entities/registry.d.ts +1 -1
  198. package/dist/lib/entities/registry.js +2 -2
  199. package/dist/lib/entities/schema-generator.d.ts +6 -19
  200. package/dist/lib/entities/schema-generator.d.ts.map +1 -1
  201. package/dist/lib/entities/schema-generator.js +1 -764
  202. package/dist/lib/entities/system-fields.d.ts +3 -5
  203. package/dist/lib/entities/system-fields.d.ts.map +1 -1
  204. package/dist/lib/entities/system-fields.js +1 -1
  205. package/dist/lib/entities/types.d.ts +1 -1
  206. package/dist/lib/entities/types.d.ts.map +1 -1
  207. package/dist/lib/i18n/client-messages.d.ts +49 -0
  208. package/dist/lib/i18n/client-messages.d.ts.map +1 -0
  209. package/dist/lib/i18n/client-messages.js +80 -0
  210. package/dist/lib/locale-client.d.ts +1 -2
  211. package/dist/lib/locale-client.d.ts.map +1 -1
  212. package/dist/lib/locale-client.js +1 -1
  213. package/dist/lib/media/schemas.d.ts +1 -1
  214. package/dist/lib/middleware/index.d.ts +6 -19
  215. package/dist/lib/middleware/index.d.ts.map +1 -1
  216. package/dist/lib/middleware/index.js +11 -14
  217. package/dist/lib/plugins/env-loader.d.ts +1 -1
  218. package/dist/lib/plugins/env-loader.js +1 -1
  219. package/dist/lib/plugins/nav-items.d.ts +3 -0
  220. package/dist/lib/plugins/nav-items.d.ts.map +1 -0
  221. package/dist/lib/plugins/nav-items.js +16 -0
  222. package/dist/lib/scheduled-actions/initializer.d.ts +7 -7
  223. package/dist/lib/scheduled-actions/initializer.d.ts.map +1 -1
  224. package/dist/lib/scheduled-actions/initializer.js +6 -12
  225. package/dist/lib/selectors/auth-sel.d.ts +8 -0
  226. package/dist/lib/selectors/auth-sel.d.ts.map +1 -0
  227. package/dist/lib/selectors/auth-sel.js +6 -0
  228. package/dist/lib/selectors/core-selectors.d.ts +12 -0
  229. package/dist/lib/selectors/core-selectors.d.ts.map +1 -1
  230. package/dist/lib/selectors/domains/auth.selectors.d.ts +12 -0
  231. package/dist/lib/selectors/domains/auth.selectors.d.ts.map +1 -1
  232. package/dist/lib/selectors/domains/auth.selectors.js +18 -3
  233. package/dist/lib/selectors/selectors.d.ts +24 -0
  234. package/dist/lib/selectors/selectors.d.ts.map +1 -1
  235. package/dist/lib/services/index.d.ts +1 -5
  236. package/dist/lib/services/index.d.ts.map +1 -1
  237. package/dist/lib/services/index.js +1 -14
  238. package/dist/lib/services/plugin.service.d.ts +20 -3
  239. package/dist/lib/services/plugin.service.d.ts.map +1 -1
  240. package/dist/lib/services/plugin.service.js +31 -5
  241. package/dist/lib/services/theme.service.d.ts +8 -87
  242. package/dist/lib/services/theme.service.d.ts.map +1 -1
  243. package/dist/lib/services/theme.service.js +16 -128
  244. package/dist/lib/teams/dashboard-team.d.ts +1 -3
  245. package/dist/lib/teams/dashboard-team.d.ts.map +1 -1
  246. package/dist/lib/teams/dashboard-team.js +2 -4
  247. package/dist/lib/teams/schema.d.ts +1 -1
  248. package/dist/lib/theme/ThemeProvider.d.ts +2 -5
  249. package/dist/lib/theme/ThemeProvider.d.ts.map +1 -1
  250. package/dist/lib/theme/ThemeProvider.js +21 -66
  251. package/dist/lib/theme/forced-theme.d.ts +1 -1
  252. package/dist/lib/theme/get-default-theme-mode.d.ts.map +1 -1
  253. package/dist/lib/theme/get-default-theme-mode.js +2 -3
  254. package/dist/lib/theme/import-resolver.js +2 -2
  255. package/dist/lib/theme/override-resolver.js +9 -9
  256. package/dist/lib/theme/theme-styles.d.ts +12 -0
  257. package/dist/lib/theme/theme-styles.d.ts.map +1 -0
  258. package/dist/lib/theme/theme-styles.js +58 -0
  259. package/dist/lib/theme/types.d.ts +0 -2
  260. package/dist/lib/theme/types.d.ts.map +1 -1
  261. package/dist/lib/translations/i18n-integration.d.ts.map +1 -1
  262. package/dist/lib/translations/i18n-integration.js +11 -11
  263. package/dist/lib/translations/registry.d.ts +1 -1
  264. package/dist/lib/translations/registry.d.ts.map +1 -1
  265. package/dist/lib/translations/registry.js +10 -10
  266. package/dist/lib/utils/environment.server.d.ts +0 -1
  267. package/dist/lib/utils/environment.server.d.ts.map +1 -1
  268. package/dist/lib/utils/environment.server.js +5 -1
  269. package/dist/lib/utils/uuid.d.ts +2 -0
  270. package/dist/lib/utils/uuid.d.ts.map +1 -0
  271. package/dist/lib/utils/uuid.js +7 -0
  272. package/dist/lib/validation/invoices.d.ts +2 -2
  273. package/dist/messages/de/auth.json +11 -1
  274. package/dist/messages/de/index.d.ts +10 -0
  275. package/dist/messages/de/index.d.ts.map +1 -1
  276. package/dist/messages/en/auth.json +11 -1
  277. package/dist/messages/en/devtools.json +1 -1
  278. package/dist/messages/en/index.d.ts +10 -0
  279. package/dist/messages/en/index.d.ts.map +1 -1
  280. package/dist/messages/es/auth.json +11 -1
  281. package/dist/messages/es/index.d.ts +10 -0
  282. package/dist/messages/es/index.d.ts.map +1 -1
  283. package/dist/messages/fr/auth.json +11 -1
  284. package/dist/messages/fr/index.d.ts +10 -0
  285. package/dist/messages/fr/index.d.ts.map +1 -1
  286. package/dist/messages/it/auth.json +11 -1
  287. package/dist/messages/it/index.d.ts +10 -0
  288. package/dist/messages/it/index.d.ts.map +1 -1
  289. package/dist/messages/pt/auth.json +11 -1
  290. package/dist/messages/pt/index.d.ts +10 -0
  291. package/dist/messages/pt/index.d.ts.map +1 -1
  292. package/dist/migrations/028_api_audit_log_insert_policy.sql +18 -0
  293. package/dist/migrations/090_sample_data.sql +2 -2
  294. package/dist/migrations/README.md +7 -7
  295. package/dist/nextspark-registries.d.ts +83 -44
  296. package/dist/providers/PluginProvider.js +2 -2
  297. package/dist/providers/static-intl-provider.d.ts +6 -0
  298. package/dist/providers/static-intl-provider.d.ts.map +1 -1
  299. package/dist/providers/static-intl-provider.js +7 -2
  300. package/dist/providers/theme-provider.d.ts.map +1 -1
  301. package/dist/providers/theme-provider.js +7 -1
  302. package/dist/routes/(auth)/accept-invite/[token]/page.d.ts +3 -0
  303. package/dist/routes/(auth)/accept-invite/[token]/page.d.ts.map +1 -0
  304. package/dist/routes/(auth)/accept-invite/[token]/page.js +240 -0
  305. package/dist/routes/(auth)/auth-error/page.d.ts +5 -0
  306. package/dist/routes/(auth)/auth-error/page.d.ts.map +1 -0
  307. package/dist/routes/(auth)/auth-error/page.js +12 -0
  308. package/dist/routes/(auth)/forgot-password/page.d.ts +3 -0
  309. package/dist/routes/(auth)/forgot-password/page.d.ts.map +1 -0
  310. package/dist/routes/(auth)/forgot-password/page.js +203 -0
  311. package/dist/routes/(auth)/layout.cc.d.ts +7 -0
  312. package/dist/routes/(auth)/layout.cc.d.ts.map +1 -0
  313. package/dist/routes/(auth)/layout.cc.js +5 -0
  314. package/dist/routes/(auth)/layout.d.ts +7 -0
  315. package/dist/routes/(auth)/layout.d.ts.map +1 -0
  316. package/dist/routes/(auth)/layout.js +4 -0
  317. package/dist/routes/(auth)/login/page.cc.d.ts +9 -0
  318. package/dist/routes/(auth)/login/page.cc.d.ts.map +1 -0
  319. package/dist/routes/(auth)/login/page.cc.js +1 -0
  320. package/dist/routes/(auth)/login/page.d.ts +6 -0
  321. package/dist/routes/(auth)/login/page.d.ts.map +1 -0
  322. package/dist/routes/(auth)/login/page.js +12 -0
  323. package/dist/routes/(auth)/reset-password/page.d.ts +3 -0
  324. package/dist/routes/(auth)/reset-password/page.d.ts.map +1 -0
  325. package/dist/routes/(auth)/reset-password/page.js +153 -0
  326. package/dist/routes/(auth)/signup/page.cc.d.ts +9 -0
  327. package/dist/routes/(auth)/signup/page.cc.d.ts.map +1 -0
  328. package/dist/routes/(auth)/signup/page.cc.js +1 -0
  329. package/dist/routes/(auth)/signup/page.d.ts +6 -0
  330. package/dist/routes/(auth)/signup/page.d.ts.map +1 -0
  331. package/dist/routes/(auth)/signup/page.js +34 -0
  332. package/dist/routes/(auth)/verify-email/page.d.ts +3 -0
  333. package/dist/routes/(auth)/verify-email/page.d.ts.map +1 -0
  334. package/dist/routes/(auth)/verify-email/page.js +138 -0
  335. package/dist/routes/(public)/docs/[section]/[page]/page.cc.d.ts +12 -0
  336. package/dist/routes/(public)/docs/[section]/[page]/page.cc.d.ts.map +1 -0
  337. package/dist/routes/(public)/docs/[section]/[page]/page.cc.js +64 -0
  338. package/dist/routes/(public)/docs/[section]/[page]/page.d.ts +13 -0
  339. package/dist/routes/(public)/docs/[section]/[page]/page.d.ts.map +1 -0
  340. package/dist/routes/(public)/docs/[section]/[page]/page.js +64 -0
  341. package/dist/routes/(public)/docs/layout.d.ts +4 -0
  342. package/dist/routes/(public)/docs/layout.d.ts.map +1 -0
  343. package/dist/routes/(public)/docs/layout.js +15 -0
  344. package/dist/routes/(public)/docs/page.d.ts +4 -0
  345. package/dist/routes/(public)/docs/page.d.ts.map +1 -0
  346. package/dist/routes/(public)/docs/page.js +53 -0
  347. package/dist/routes/(public)/layout.cc.d.ts +7 -0
  348. package/dist/routes/(public)/layout.cc.d.ts.map +1 -0
  349. package/dist/routes/(public)/layout.cc.js +5 -0
  350. package/dist/routes/(public)/layout.d.ts +7 -0
  351. package/dist/routes/(public)/layout.d.ts.map +1 -0
  352. package/dist/routes/(public)/layout.js +4 -0
  353. package/dist/routes/(public)/page.d.ts +12 -0
  354. package/dist/routes/(public)/page.d.ts.map +1 -0
  355. package/dist/routes/(public)/page.js +5 -0
  356. package/dist/routes/403/page.d.ts +3 -0
  357. package/dist/routes/403/page.d.ts.map +1 -0
  358. package/dist/routes/403/page.js +51 -0
  359. package/dist/routes/_internal/area-access.d.ts +61 -0
  360. package/dist/routes/_internal/area-access.d.ts.map +1 -0
  361. package/dist/routes/_internal/area-access.js +84 -0
  362. package/dist/routes/_internal/auth-layout.cc.d.ts +8 -0
  363. package/dist/routes/_internal/auth-layout.cc.d.ts.map +1 -0
  364. package/dist/routes/_internal/auth-layout.cc.js +2 -0
  365. package/dist/routes/_internal/auth-layout.d.ts +19 -0
  366. package/dist/routes/_internal/auth-layout.d.ts.map +1 -0
  367. package/dist/routes/_internal/auth-layout.js +22 -0
  368. package/dist/routes/_internal/billing-webhooks.d.ts +19 -0
  369. package/dist/routes/_internal/billing-webhooks.d.ts.map +1 -0
  370. package/dist/routes/_internal/billing-webhooks.js +14 -0
  371. package/dist/routes/_internal/default-auth-layout.d.ts +8 -0
  372. package/dist/routes/_internal/default-auth-layout.d.ts.map +1 -0
  373. package/dist/routes/_internal/default-auth-layout.js +15 -0
  374. package/dist/routes/_internal/default-public-layout.d.ts +8 -0
  375. package/dist/routes/_internal/default-public-layout.d.ts.map +1 -0
  376. package/dist/routes/_internal/default-public-layout.js +13 -0
  377. package/dist/routes/_internal/devtools-layout.cc.d.ts +19 -0
  378. package/dist/routes/_internal/devtools-layout.cc.d.ts.map +1 -0
  379. package/dist/routes/_internal/devtools-layout.cc.js +5 -0
  380. package/dist/routes/_internal/devtools-layout.d.ts +36 -0
  381. package/dist/routes/_internal/devtools-layout.d.ts.map +1 -0
  382. package/dist/routes/_internal/devtools-layout.js +41 -0
  383. package/dist/routes/_internal/entity-create-route.d.ts +18 -0
  384. package/dist/routes/_internal/entity-create-route.d.ts.map +1 -0
  385. package/dist/routes/_internal/entity-create-route.js +11 -0
  386. package/dist/routes/_internal/entity-create-view.d.ts +8 -0
  387. package/dist/routes/_internal/entity-create-view.d.ts.map +1 -0
  388. package/dist/routes/_internal/entity-create-view.js +72 -0
  389. package/dist/routes/_internal/entity-dashboard.d.ts +9 -0
  390. package/dist/routes/_internal/entity-dashboard.d.ts.map +1 -0
  391. package/dist/routes/_internal/entity-dashboard.js +8 -0
  392. package/dist/routes/_internal/entity-detail-metadata.d.ts +7 -0
  393. package/dist/routes/_internal/entity-detail-metadata.d.ts.map +1 -0
  394. package/dist/routes/_internal/entity-detail-metadata.js +4 -0
  395. package/dist/routes/_internal/entity-detail-route.d.ts +24 -0
  396. package/dist/routes/_internal/entity-detail-route.d.ts.map +1 -0
  397. package/dist/routes/_internal/entity-detail-route.js +14 -0
  398. package/dist/routes/_internal/entity-edit-route.d.ts +23 -0
  399. package/dist/routes/_internal/entity-edit-route.d.ts.map +1 -0
  400. package/dist/routes/_internal/entity-edit-route.js +12 -0
  401. package/dist/routes/_internal/entity-edit-view.d.ts +9 -0
  402. package/dist/routes/_internal/entity-edit-view.d.ts.map +1 -0
  403. package/dist/routes/_internal/entity-edit-view.js +88 -0
  404. package/dist/routes/_internal/entity-error.d.ts +7 -0
  405. package/dist/routes/_internal/entity-error.d.ts.map +1 -0
  406. package/dist/routes/_internal/entity-error.js +41 -0
  407. package/dist/routes/_internal/entity-layout-route.d.ts +13 -0
  408. package/dist/routes/_internal/entity-layout-route.d.ts.map +1 -0
  409. package/dist/routes/_internal/entity-layout-route.js +7 -0
  410. package/dist/routes/_internal/entity-list-metadata.d.ts +7 -0
  411. package/dist/routes/_internal/entity-list-metadata.d.ts.map +1 -0
  412. package/dist/routes/_internal/entity-list-metadata.js +4 -0
  413. package/dist/routes/_internal/entity-list-route.d.ts +31 -0
  414. package/dist/routes/_internal/entity-list-route.d.ts.map +1 -0
  415. package/dist/routes/_internal/entity-list-route.js +11 -0
  416. package/dist/routes/_internal/entity-loading.d.ts +3 -0
  417. package/dist/routes/_internal/entity-loading.d.ts.map +1 -0
  418. package/dist/routes/_internal/entity-loading.js +48 -0
  419. package/dist/routes/_internal/entity-permission-layout.d.ts +10 -0
  420. package/dist/routes/_internal/entity-permission-layout.d.ts.map +1 -0
  421. package/dist/routes/_internal/entity-permission-layout.js +50 -0
  422. package/dist/routes/_internal/group-layouts.cc.d.ts +35 -0
  423. package/dist/routes/_internal/group-layouts.cc.d.ts.map +1 -0
  424. package/dist/routes/_internal/group-layouts.cc.js +37 -0
  425. package/dist/routes/_internal/polar-webhook.d.ts +27 -0
  426. package/dist/routes/_internal/polar-webhook.d.ts.map +1 -0
  427. package/dist/routes/_internal/polar-webhook.js +321 -0
  428. package/dist/routes/_internal/public-archive-route.d.ts +20 -0
  429. package/dist/routes/_internal/public-archive-route.d.ts.map +1 -0
  430. package/dist/routes/_internal/public-archive-route.js +29 -0
  431. package/dist/routes/_internal/public-entity-shared.d.ts +61 -0
  432. package/dist/routes/_internal/public-entity-shared.d.ts.map +1 -0
  433. package/dist/routes/_internal/public-entity-shared.js +57 -0
  434. package/dist/routes/_internal/public-item-route.cc.d.ts +5 -0
  435. package/dist/routes/_internal/public-item-route.cc.d.ts.map +1 -0
  436. package/dist/routes/_internal/public-item-route.cc.js +32 -0
  437. package/dist/routes/_internal/public-item-route.d.ts +49 -0
  438. package/dist/routes/_internal/public-item-route.d.ts.map +1 -0
  439. package/dist/routes/_internal/public-item-route.js +60 -0
  440. package/dist/routes/_internal/public-layout.cc.d.ts +8 -0
  441. package/dist/routes/_internal/public-layout.cc.d.ts.map +1 -0
  442. package/dist/routes/_internal/public-layout.cc.js +2 -0
  443. package/dist/routes/_internal/public-layout.d.ts +19 -0
  444. package/dist/routes/_internal/public-layout.d.ts.map +1 -0
  445. package/dist/routes/_internal/public-layout.js +18 -0
  446. package/dist/routes/_internal/root-layout.d.ts +13 -0
  447. package/dist/routes/_internal/root-layout.d.ts.map +1 -0
  448. package/dist/routes/_internal/root-layout.js +7 -0
  449. package/dist/routes/_internal/root-layout.ppr.d.ts +11 -0
  450. package/dist/routes/_internal/root-layout.ppr.d.ts.map +1 -0
  451. package/dist/routes/_internal/root-layout.ppr.js +7 -0
  452. package/dist/routes/_internal/superadmin-layout.cc.d.ts +19 -0
  453. package/dist/routes/_internal/superadmin-layout.cc.d.ts.map +1 -0
  454. package/dist/routes/_internal/superadmin-layout.cc.js +5 -0
  455. package/dist/routes/_internal/superadmin-layout.d.ts +35 -0
  456. package/dist/routes/_internal/superadmin-layout.d.ts.map +1 -0
  457. package/dist/routes/_internal/superadmin-layout.js +53 -0
  458. package/dist/routes/api/auth/[...all]/route.d.ts +9 -0
  459. package/dist/routes/api/auth/[...all]/route.d.ts.map +1 -0
  460. package/dist/routes/api/auth/[...all]/route.js +124 -0
  461. package/dist/routes/api/cron/billing/lifecycle/route.d.ts +22 -0
  462. package/dist/routes/api/cron/billing/lifecycle/route.d.ts.map +1 -0
  463. package/dist/routes/api/cron/billing/lifecycle/route.js +60 -0
  464. package/dist/routes/api/csp-report/route.d.ts +4 -0
  465. package/dist/routes/api/csp-report/route.d.ts.map +1 -0
  466. package/dist/routes/api/csp-report/route.js +111 -0
  467. package/dist/routes/api/devtools/config/entities/route.d.ts +9 -0
  468. package/dist/routes/api/devtools/config/entities/route.d.ts.map +1 -0
  469. package/dist/routes/api/devtools/config/entities/route.js +63 -0
  470. package/dist/routes/api/devtools/config/theme/route.d.ts +9 -0
  471. package/dist/routes/api/devtools/config/theme/route.d.ts.map +1 -0
  472. package/dist/routes/api/devtools/config/theme/route.js +48 -0
  473. package/dist/routes/api/devtools/tests/[...path]/route.d.ts +15 -0
  474. package/dist/routes/api/devtools/tests/[...path]/route.d.ts.map +1 -0
  475. package/dist/routes/api/devtools/tests/[...path]/route.js +93 -0
  476. package/dist/routes/api/devtools/tests/route.d.ts +9 -0
  477. package/dist/routes/api/devtools/tests/route.d.ts.map +1 -0
  478. package/dist/routes/api/devtools/tests/route.js +89 -0
  479. package/dist/routes/api/health/route.d.ts +3 -0
  480. package/dist/routes/api/health/route.d.ts.map +1 -0
  481. package/dist/routes/api/health/route.js +39 -0
  482. package/dist/routes/api/internal/user-metadata/route.d.ts +3 -0
  483. package/dist/routes/api/internal/user-metadata/route.d.ts.map +1 -0
  484. package/dist/routes/api/internal/user-metadata/route.js +33 -0
  485. package/dist/routes/api/mcp/route.d.ts +27 -0
  486. package/dist/routes/api/mcp/route.d.ts.map +1 -0
  487. package/dist/routes/api/mcp/route.js +108 -0
  488. package/dist/routes/api/superadmin/subscriptions/route.d.ts +9 -0
  489. package/dist/routes/api/superadmin/subscriptions/route.d.ts.map +1 -0
  490. package/dist/routes/api/superadmin/subscriptions/route.js +235 -0
  491. package/dist/routes/api/superadmin/teams/[teamId]/route.d.ts +13 -0
  492. package/dist/routes/api/superadmin/teams/[teamId]/route.d.ts.map +1 -0
  493. package/dist/routes/api/superadmin/teams/[teamId]/route.js +204 -0
  494. package/dist/routes/api/superadmin/teams/route.d.ts +20 -0
  495. package/dist/routes/api/superadmin/teams/route.d.ts.map +1 -0
  496. package/dist/routes/api/superadmin/teams/route.js +131 -0
  497. package/dist/routes/api/superadmin/users/[userId]/route.d.ts +45 -0
  498. package/dist/routes/api/superadmin/users/[userId]/route.d.ts.map +1 -0
  499. package/dist/routes/api/superadmin/users/[userId]/route.js +362 -0
  500. package/dist/routes/api/superadmin/users/route.d.ts +37 -0
  501. package/dist/routes/api/superadmin/users/route.d.ts.map +1 -0
  502. package/dist/routes/api/superadmin/users/route.js +239 -0
  503. package/dist/routes/api/user/delete-account/route.d.ts +3 -0
  504. package/dist/routes/api/user/delete-account/route.d.ts.map +1 -0
  505. package/dist/routes/api/user/delete-account/route.js +44 -0
  506. package/dist/routes/api/user/plan-flags/route.d.ts +23 -0
  507. package/dist/routes/api/user/plan-flags/route.d.ts.map +1 -0
  508. package/dist/routes/api/user/plan-flags/route.js +201 -0
  509. package/dist/routes/api/user/profile/route.d.ts +4 -0
  510. package/dist/routes/api/user/profile/route.d.ts.map +1 -0
  511. package/dist/routes/api/user/profile/route.js +96 -0
  512. package/dist/routes/api/v1/[entity]/[id]/child/[childType]/[childId]/route.d.ts +20 -0
  513. package/dist/routes/api/v1/[entity]/[id]/child/[childType]/[childId]/route.d.ts.map +1 -0
  514. package/dist/routes/api/v1/[entity]/[id]/child/[childType]/[childId]/route.js +144 -0
  515. package/dist/routes/api/v1/[entity]/[id]/child/[childType]/route.d.ts +19 -0
  516. package/dist/routes/api/v1/[entity]/[id]/child/[childType]/route.d.ts.map +1 -0
  517. package/dist/routes/api/v1/[entity]/[id]/child/[childType]/route.js +249 -0
  518. package/dist/routes/api/v1/[entity]/[id]/route.d.ts +35 -0
  519. package/dist/routes/api/v1/[entity]/[id]/route.d.ts.map +1 -0
  520. package/dist/routes/api/v1/[entity]/[id]/route.js +14 -0
  521. package/dist/routes/api/v1/[entity]/route.d.ts +17 -0
  522. package/dist/routes/api/v1/[entity]/route.d.ts.map +1 -0
  523. package/dist/routes/api/v1/[entity]/route.js +12 -0
  524. package/dist/routes/api/v1/api-keys/[id]/route.d.ts +30 -0
  525. package/dist/routes/api/v1/api-keys/[id]/route.d.ts.map +1 -0
  526. package/dist/routes/api/v1/api-keys/[id]/route.js +189 -0
  527. package/dist/routes/api/v1/api-keys/route.d.ts +5 -0
  528. package/dist/routes/api/v1/api-keys/route.d.ts.map +1 -0
  529. package/dist/routes/api/v1/api-keys/route.js +177 -0
  530. package/dist/routes/api/v1/auth/signup-with-invite/route.d.ts +4 -0
  531. package/dist/routes/api/v1/auth/signup-with-invite/route.d.ts.map +1 -0
  532. package/dist/routes/api/v1/auth/signup-with-invite/route.js +187 -0
  533. package/dist/routes/api/v1/billing/cancel/route.d.ts +19 -0
  534. package/dist/routes/api/v1/billing/cancel/route.d.ts.map +1 -0
  535. package/dist/routes/api/v1/billing/cancel/route.js +153 -0
  536. package/dist/routes/api/v1/billing/change-plan/route.d.ts +19 -0
  537. package/dist/routes/api/v1/billing/change-plan/route.d.ts.map +1 -0
  538. package/dist/routes/api/v1/billing/change-plan/route.js +63 -0
  539. package/dist/routes/api/v1/billing/check-action/route.d.ts +13 -0
  540. package/dist/routes/api/v1/billing/check-action/route.d.ts.map +1 -0
  541. package/dist/routes/api/v1/billing/check-action/route.js +55 -0
  542. package/dist/routes/api/v1/billing/checkout/route.d.ts +11 -0
  543. package/dist/routes/api/v1/billing/checkout/route.d.ts.map +1 -0
  544. package/dist/routes/api/v1/billing/checkout/route.js +114 -0
  545. package/dist/routes/api/v1/billing/plans/route.d.ts +10 -0
  546. package/dist/routes/api/v1/billing/plans/route.d.ts.map +1 -0
  547. package/dist/routes/api/v1/billing/plans/route.js +61 -0
  548. package/dist/routes/api/v1/billing/portal/route.d.ts +11 -0
  549. package/dist/routes/api/v1/billing/portal/route.d.ts.map +1 -0
  550. package/dist/routes/api/v1/billing/portal/route.js +66 -0
  551. package/dist/routes/api/v1/billing/webhooks/polar/route.d.ts +17 -0
  552. package/dist/routes/api/v1/billing/webhooks/polar/route.d.ts.map +1 -0
  553. package/dist/routes/api/v1/billing/webhooks/polar/route.js +3 -0
  554. package/dist/routes/api/v1/billing/webhooks/stripe/route.d.ts +17 -0
  555. package/dist/routes/api/v1/billing/webhooks/stripe/route.d.ts.map +1 -0
  556. package/dist/routes/api/v1/billing/webhooks/stripe/route.js +8 -0
  557. package/dist/routes/api/v1/blocks/[slug]/route.d.ts +7 -0
  558. package/dist/routes/api/v1/blocks/[slug]/route.d.ts.map +1 -0
  559. package/dist/routes/api/v1/blocks/[slug]/route.js +25 -0
  560. package/dist/routes/api/v1/blocks/docs.md +173 -0
  561. package/dist/routes/api/v1/blocks/route.d.ts +3 -0
  562. package/dist/routes/api/v1/blocks/route.d.ts.map +1 -0
  563. package/dist/routes/api/v1/blocks/route.js +44 -0
  564. package/dist/routes/api/v1/blocks/validate/route.d.ts +3 -0
  565. package/dist/routes/api/v1/blocks/validate/route.d.ts.map +1 -0
  566. package/dist/routes/api/v1/blocks/validate/route.js +38 -0
  567. package/dist/routes/api/v1/cron/process/route.d.ts +20 -0
  568. package/dist/routes/api/v1/cron/process/route.d.ts.map +1 -0
  569. package/dist/routes/api/v1/cron/process/route.js +73 -0
  570. package/dist/routes/api/v1/devtools/blocks/route.d.ts +12 -0
  571. package/dist/routes/api/v1/devtools/blocks/route.d.ts.map +1 -0
  572. package/dist/routes/api/v1/devtools/blocks/route.js +60 -0
  573. package/dist/routes/api/v1/devtools/docs/route.d.ts +14 -0
  574. package/dist/routes/api/v1/devtools/docs/route.d.ts.map +1 -0
  575. package/dist/routes/api/v1/devtools/docs/route.js +108 -0
  576. package/dist/routes/api/v1/devtools/docs.md +204 -0
  577. package/dist/routes/api/v1/devtools/features/route.d.ts +12 -0
  578. package/dist/routes/api/v1/devtools/features/route.d.ts.map +1 -0
  579. package/dist/routes/api/v1/devtools/features/route.js +45 -0
  580. package/dist/routes/api/v1/devtools/flows/route.d.ts +12 -0
  581. package/dist/routes/api/v1/devtools/flows/route.d.ts.map +1 -0
  582. package/dist/routes/api/v1/devtools/flows/route.js +45 -0
  583. package/dist/routes/api/v1/devtools/presets.ts +113 -0
  584. package/dist/routes/api/v1/devtools/scheduled-actions/route.d.ts +24 -0
  585. package/dist/routes/api/v1/devtools/scheduled-actions/route.d.ts.map +1 -0
  586. package/dist/routes/api/v1/devtools/scheduled-actions/route.js +180 -0
  587. package/dist/routes/api/v1/devtools/scheduled-actions/run/route.d.ts +12 -0
  588. package/dist/routes/api/v1/devtools/scheduled-actions/run/route.d.ts.map +1 -0
  589. package/dist/routes/api/v1/devtools/scheduled-actions/run/route.js +82 -0
  590. package/dist/routes/api/v1/devtools/testing/route.d.ts +12 -0
  591. package/dist/routes/api/v1/devtools/testing/route.d.ts.map +1 -0
  592. package/dist/routes/api/v1/devtools/testing/route.js +64 -0
  593. package/dist/routes/api/v1/media/[id]/route.d.ts +47 -0
  594. package/dist/routes/api/v1/media/[id]/route.d.ts.map +1 -0
  595. package/dist/routes/api/v1/media/[id]/route.js +86 -0
  596. package/dist/routes/api/v1/media/[id]/tags/route.d.ts +45 -0
  597. package/dist/routes/api/v1/media/[id]/tags/route.d.ts.map +1 -0
  598. package/dist/routes/api/v1/media/[id]/tags/route.js +126 -0
  599. package/dist/routes/api/v1/media/check-duplicates/route.d.ts +12 -0
  600. package/dist/routes/api/v1/media/check-duplicates/route.d.ts.map +1 -0
  601. package/dist/routes/api/v1/media/check-duplicates/route.js +45 -0
  602. package/dist/routes/api/v1/media/route.d.ts +20 -0
  603. package/dist/routes/api/v1/media/route.d.ts.map +1 -0
  604. package/dist/routes/api/v1/media/route.js +33 -0
  605. package/dist/routes/api/v1/media/upload/route.d.ts +24 -0
  606. package/dist/routes/api/v1/media/upload/route.d.ts.map +1 -0
  607. package/dist/routes/api/v1/media/upload/route.js +196 -0
  608. package/dist/routes/api/v1/media-tags/route.d.ts +19 -0
  609. package/dist/routes/api/v1/media-tags/route.d.ts.map +1 -0
  610. package/dist/routes/api/v1/media-tags/route.js +49 -0
  611. package/dist/routes/api/v1/patterns/[id]/usages/route.d.ts +23 -0
  612. package/dist/routes/api/v1/patterns/[id]/usages/route.d.ts.map +1 -0
  613. package/dist/routes/api/v1/patterns/[id]/usages/route.js +69 -0
  614. package/dist/routes/api/v1/post-categories/[id]/route.d.ts +17 -0
  615. package/dist/routes/api/v1/post-categories/[id]/route.d.ts.map +1 -0
  616. package/dist/routes/api/v1/post-categories/[id]/route.js +203 -0
  617. package/dist/routes/api/v1/post-categories/route.d.ts +4 -0
  618. package/dist/routes/api/v1/post-categories/route.d.ts.map +1 -0
  619. package/dist/routes/api/v1/post-categories/route.js +94 -0
  620. package/dist/routes/api/v1/team-invitations/[token]/accept/route.d.ts +8 -0
  621. package/dist/routes/api/v1/team-invitations/[token]/accept/route.d.ts.map +1 -0
  622. package/dist/routes/api/v1/team-invitations/[token]/accept/route.js +130 -0
  623. package/dist/routes/api/v1/team-invitations/[token]/decline/route.d.ts +8 -0
  624. package/dist/routes/api/v1/team-invitations/[token]/decline/route.d.ts.map +1 -0
  625. package/dist/routes/api/v1/team-invitations/[token]/decline/route.js +90 -0
  626. package/dist/routes/api/v1/team-invitations/[token]/route.d.ts +8 -0
  627. package/dist/routes/api/v1/team-invitations/[token]/route.d.ts.map +1 -0
  628. package/dist/routes/api/v1/team-invitations/[token]/route.js +66 -0
  629. package/dist/routes/api/v1/team-invitations/route.d.ts +4 -0
  630. package/dist/routes/api/v1/team-invitations/route.d.ts.map +1 -0
  631. package/dist/routes/api/v1/team-invitations/route.js +82 -0
  632. package/dist/routes/api/v1/teams/[teamId]/invitations/route.d.ts +13 -0
  633. package/dist/routes/api/v1/teams/[teamId]/invitations/route.d.ts.map +1 -0
  634. package/dist/routes/api/v1/teams/[teamId]/invitations/route.js +126 -0
  635. package/dist/routes/api/v1/teams/[teamId]/invoices/[invoiceNumber]/route.d.ts +9 -0
  636. package/dist/routes/api/v1/teams/[teamId]/invoices/[invoiceNumber]/route.d.ts.map +1 -0
  637. package/dist/routes/api/v1/teams/[teamId]/invoices/[invoiceNumber]/route.js +80 -0
  638. package/dist/routes/api/v1/teams/[teamId]/invoices/route.d.ts +8 -0
  639. package/dist/routes/api/v1/teams/[teamId]/invoices/route.d.ts.map +1 -0
  640. package/dist/routes/api/v1/teams/[teamId]/invoices/route.js +98 -0
  641. package/dist/routes/api/v1/teams/[teamId]/members/[memberId]/route.d.ts +15 -0
  642. package/dist/routes/api/v1/teams/[teamId]/members/[memberId]/route.d.ts.map +1 -0
  643. package/dist/routes/api/v1/teams/[teamId]/members/[memberId]/route.js +188 -0
  644. package/dist/routes/api/v1/teams/[teamId]/members/route.d.ts +13 -0
  645. package/dist/routes/api/v1/teams/[teamId]/members/route.d.ts.map +1 -0
  646. package/dist/routes/api/v1/teams/[teamId]/members/route.js +266 -0
  647. package/dist/routes/api/v1/teams/[teamId]/route.d.ts +18 -0
  648. package/dist/routes/api/v1/teams/[teamId]/route.d.ts.map +1 -0
  649. package/dist/routes/api/v1/teams/[teamId]/route.js +222 -0
  650. package/dist/routes/api/v1/teams/[teamId]/subscription/route.d.ts +14 -0
  651. package/dist/routes/api/v1/teams/[teamId]/subscription/route.d.ts.map +1 -0
  652. package/dist/routes/api/v1/teams/[teamId]/subscription/route.js +30 -0
  653. package/dist/routes/api/v1/teams/[teamId]/usage/[limitSlug]/route.d.ts +17 -0
  654. package/dist/routes/api/v1/teams/[teamId]/usage/[limitSlug]/route.d.ts.map +1 -0
  655. package/dist/routes/api/v1/teams/[teamId]/usage/[limitSlug]/route.js +67 -0
  656. package/dist/routes/api/v1/teams/route.d.ts +5 -0
  657. package/dist/routes/api/v1/teams/route.d.ts.map +1 -0
  658. package/dist/routes/api/v1/teams/route.js +231 -0
  659. package/dist/routes/api/v1/teams/switch/route.d.ts +4 -0
  660. package/dist/routes/api/v1/teams/switch/route.d.ts.map +1 -0
  661. package/dist/routes/api/v1/teams/switch/route.js +80 -0
  662. package/dist/routes/api/v1/users/[id]/meta/[key]/route.d.ts +89 -0
  663. package/dist/routes/api/v1/users/[id]/meta/[key]/route.d.ts.map +1 -0
  664. package/dist/routes/api/v1/users/[id]/meta/[key]/route.js +180 -0
  665. package/dist/routes/api/v1/users/[id]/route.d.ts +18 -0
  666. package/dist/routes/api/v1/users/[id]/route.d.ts.map +1 -0
  667. package/dist/routes/api/v1/users/[id]/route.js +189 -0
  668. package/dist/routes/api/v1/users/route.d.ts +5 -0
  669. package/dist/routes/api/v1/users/route.d.ts.map +1 -0
  670. package/dist/routes/api/v1/users/route.js +145 -0
  671. package/dist/routes/dashboard/(main)/layout.d.ts +5 -0
  672. package/dist/routes/dashboard/(main)/layout.d.ts.map +1 -0
  673. package/dist/routes/dashboard/(main)/layout.js +50 -0
  674. package/dist/routes/dashboard/(main)/loading.d.ts +3 -0
  675. package/dist/routes/dashboard/(main)/loading.d.ts.map +1 -0
  676. package/dist/routes/dashboard/(main)/loading.js +6 -0
  677. package/dist/routes/dashboard/(main)/media/page.d.ts +3 -0
  678. package/dist/routes/dashboard/(main)/media/page.d.ts.map +1 -0
  679. package/dist/routes/dashboard/(main)/media/page.js +548 -0
  680. package/dist/routes/dashboard/(main)/page.d.ts +3 -0
  681. package/dist/routes/dashboard/(main)/page.d.ts.map +1 -0
  682. package/dist/routes/dashboard/(main)/page.js +168 -0
  683. package/dist/routes/dashboard/(main)/patterns/[id]/edit/page.d.ts +8 -0
  684. package/dist/routes/dashboard/(main)/patterns/[id]/edit/page.d.ts.map +1 -0
  685. package/dist/routes/dashboard/(main)/patterns/[id]/edit/page.js +85 -0
  686. package/dist/routes/dashboard/(main)/patterns/[id]/page.d.ts +13 -0
  687. package/dist/routes/dashboard/(main)/patterns/[id]/page.d.ts.map +1 -0
  688. package/dist/routes/dashboard/(main)/patterns/[id]/page.js +6 -0
  689. package/dist/routes/dashboard/(main)/patterns/[id]/reports/page.d.ts +9 -0
  690. package/dist/routes/dashboard/(main)/patterns/[id]/reports/page.d.ts.map +1 -0
  691. package/dist/routes/dashboard/(main)/patterns/[id]/reports/page.js +128 -0
  692. package/dist/routes/dashboard/(main)/patterns/create/page.d.ts +8 -0
  693. package/dist/routes/dashboard/(main)/patterns/create/page.d.ts.map +1 -0
  694. package/dist/routes/dashboard/(main)/patterns/create/page.js +64 -0
  695. package/dist/routes/dashboard/(main)/patterns/page.d.ts +9 -0
  696. package/dist/routes/dashboard/(main)/patterns/page.d.ts.map +1 -0
  697. package/dist/routes/dashboard/(main)/patterns/page.js +334 -0
  698. package/dist/routes/dashboard/features/analytics/page.d.ts +3 -0
  699. package/dist/routes/dashboard/features/analytics/page.d.ts.map +1 -0
  700. package/dist/routes/dashboard/features/analytics/page.js +32 -0
  701. package/dist/routes/dashboard/features/automation/page.d.ts +3 -0
  702. package/dist/routes/dashboard/features/automation/page.d.ts.map +1 -0
  703. package/dist/routes/dashboard/features/automation/page.js +32 -0
  704. package/dist/routes/dashboard/features/layout.d.ts +7 -0
  705. package/dist/routes/dashboard/features/layout.d.ts.map +1 -0
  706. package/dist/routes/dashboard/features/layout.js +5 -0
  707. package/dist/routes/dashboard/features/loading.d.ts +3 -0
  708. package/dist/routes/dashboard/features/loading.d.ts.map +1 -0
  709. package/dist/routes/dashboard/features/loading.js +6 -0
  710. package/dist/routes/dashboard/features/webhooks/page.d.ts +3 -0
  711. package/dist/routes/dashboard/features/webhooks/page.d.ts.map +1 -0
  712. package/dist/routes/dashboard/features/webhooks/page.js +32 -0
  713. package/dist/routes/dashboard/layout.cc.d.ts +6 -0
  714. package/dist/routes/dashboard/layout.cc.d.ts.map +1 -0
  715. package/dist/routes/dashboard/layout.cc.js +3 -0
  716. package/dist/routes/dashboard/layout.d.ts +9 -0
  717. package/dist/routes/dashboard/layout.d.ts.map +1 -0
  718. package/dist/routes/dashboard/layout.js +15 -0
  719. package/dist/routes/dashboard/permission-denied/page.d.ts +9 -0
  720. package/dist/routes/dashboard/permission-denied/page.d.ts.map +1 -0
  721. package/dist/routes/dashboard/permission-denied/page.js +17 -0
  722. package/dist/routes/dashboard/settings/api-keys/loading.d.ts +3 -0
  723. package/dist/routes/dashboard/settings/api-keys/loading.d.ts.map +1 -0
  724. package/dist/routes/dashboard/settings/api-keys/loading.js +6 -0
  725. package/dist/routes/dashboard/settings/api-keys/page.d.ts +3 -0
  726. package/dist/routes/dashboard/settings/api-keys/page.d.ts.map +1 -0
  727. package/dist/routes/dashboard/settings/api-keys/page.js +391 -0
  728. package/dist/routes/dashboard/settings/billing/loading.d.ts +3 -0
  729. package/dist/routes/dashboard/settings/billing/loading.d.ts.map +1 -0
  730. package/dist/routes/dashboard/settings/billing/loading.js +6 -0
  731. package/dist/routes/dashboard/settings/billing/page.d.ts +3 -0
  732. package/dist/routes/dashboard/settings/billing/page.d.ts.map +1 -0
  733. package/dist/routes/dashboard/settings/billing/page.js +240 -0
  734. package/dist/routes/dashboard/settings/invoices/[invoiceNumber]/page.d.ts +8 -0
  735. package/dist/routes/dashboard/settings/invoices/[invoiceNumber]/page.d.ts.map +1 -0
  736. package/dist/routes/dashboard/settings/invoices/[invoiceNumber]/page.js +151 -0
  737. package/dist/routes/dashboard/settings/invoices/loading.d.ts +3 -0
  738. package/dist/routes/dashboard/settings/invoices/loading.d.ts.map +1 -0
  739. package/dist/routes/dashboard/settings/invoices/loading.js +6 -0
  740. package/dist/routes/dashboard/settings/invoices/page.d.ts +3 -0
  741. package/dist/routes/dashboard/settings/invoices/page.d.ts.map +1 -0
  742. package/dist/routes/dashboard/settings/invoices/page.js +65 -0
  743. package/dist/routes/dashboard/settings/layout.d.ts +5 -0
  744. package/dist/routes/dashboard/settings/layout.d.ts.map +1 -0
  745. package/dist/routes/dashboard/settings/layout.js +142 -0
  746. package/dist/routes/dashboard/settings/loading.d.ts +3 -0
  747. package/dist/routes/dashboard/settings/loading.d.ts.map +1 -0
  748. package/dist/routes/dashboard/settings/loading.js +6 -0
  749. package/dist/routes/dashboard/settings/notifications/loading.d.ts +3 -0
  750. package/dist/routes/dashboard/settings/notifications/loading.d.ts.map +1 -0
  751. package/dist/routes/dashboard/settings/notifications/loading.js +6 -0
  752. package/dist/routes/dashboard/settings/notifications/page.d.ts +3 -0
  753. package/dist/routes/dashboard/settings/notifications/page.d.ts.map +1 -0
  754. package/dist/routes/dashboard/settings/notifications/page.js +399 -0
  755. package/dist/routes/dashboard/settings/page.d.ts +3 -0
  756. package/dist/routes/dashboard/settings/page.d.ts.map +1 -0
  757. package/dist/routes/dashboard/settings/page.js +82 -0
  758. package/dist/routes/dashboard/settings/password/loading.d.ts +3 -0
  759. package/dist/routes/dashboard/settings/password/loading.d.ts.map +1 -0
  760. package/dist/routes/dashboard/settings/password/loading.js +6 -0
  761. package/dist/routes/dashboard/settings/password/page.d.ts +3 -0
  762. package/dist/routes/dashboard/settings/password/page.d.ts.map +1 -0
  763. package/dist/routes/dashboard/settings/password/page.js +302 -0
  764. package/dist/routes/dashboard/settings/plans/loading.d.ts +3 -0
  765. package/dist/routes/dashboard/settings/plans/loading.d.ts.map +1 -0
  766. package/dist/routes/dashboard/settings/plans/loading.js +6 -0
  767. package/dist/routes/dashboard/settings/plans/page.d.ts +9 -0
  768. package/dist/routes/dashboard/settings/plans/page.d.ts.map +1 -0
  769. package/dist/routes/dashboard/settings/plans/page.js +43 -0
  770. package/dist/routes/dashboard/settings/profile/loading.d.ts +3 -0
  771. package/dist/routes/dashboard/settings/profile/loading.d.ts.map +1 -0
  772. package/dist/routes/dashboard/settings/profile/loading.js +6 -0
  773. package/dist/routes/dashboard/settings/profile/page.d.ts +3 -0
  774. package/dist/routes/dashboard/settings/profile/page.d.ts.map +1 -0
  775. package/dist/routes/dashboard/settings/profile/page.js +615 -0
  776. package/dist/routes/dashboard/settings/security/loading.d.ts +3 -0
  777. package/dist/routes/dashboard/settings/security/loading.d.ts.map +1 -0
  778. package/dist/routes/dashboard/settings/security/loading.js +6 -0
  779. package/dist/routes/dashboard/settings/security/page.d.ts +3 -0
  780. package/dist/routes/dashboard/settings/security/page.d.ts.map +1 -0
  781. package/dist/routes/dashboard/settings/security/page.js +400 -0
  782. package/dist/routes/dashboard/settings/teams/loading.d.ts +3 -0
  783. package/dist/routes/dashboard/settings/teams/loading.d.ts.map +1 -0
  784. package/dist/routes/dashboard/settings/teams/loading.js +6 -0
  785. package/dist/routes/dashboard/settings/teams/page.d.ts +3 -0
  786. package/dist/routes/dashboard/settings/teams/page.d.ts.map +1 -0
  787. package/dist/routes/dashboard/settings/teams/page.js +205 -0
  788. package/dist/routes/dashboard/settings/teams/permissions/page.d.ts +9 -0
  789. package/dist/routes/dashboard/settings/teams/permissions/page.d.ts.map +1 -0
  790. package/dist/routes/dashboard/settings/teams/permissions/page.js +50 -0
  791. package/dist/routes/devtools/api/[[...endpoint]]/page.d.ts +19 -0
  792. package/dist/routes/devtools/api/[[...endpoint]]/page.d.ts.map +1 -0
  793. package/dist/routes/devtools/api/[[...endpoint]]/page.js +14 -0
  794. package/dist/routes/devtools/api/layout.d.ts +20 -0
  795. package/dist/routes/devtools/api/layout.d.ts.map +1 -0
  796. package/dist/routes/devtools/api/layout.js +6 -0
  797. package/dist/routes/devtools/blocks/[slug]/page.d.ts +20 -0
  798. package/dist/routes/devtools/blocks/[slug]/page.d.ts.map +1 -0
  799. package/dist/routes/devtools/blocks/[slug]/page.js +16 -0
  800. package/dist/routes/devtools/blocks/page.d.ts +2 -0
  801. package/dist/routes/devtools/blocks/page.d.ts.map +1 -0
  802. package/dist/routes/devtools/blocks/page.js +21 -0
  803. package/dist/routes/devtools/config/page.d.ts +2 -0
  804. package/dist/routes/devtools/config/page.d.ts.map +1 -0
  805. package/dist/routes/devtools/config/page.js +21 -0
  806. package/dist/routes/devtools/features/page.d.ts +2 -0
  807. package/dist/routes/devtools/features/page.d.ts.map +1 -0
  808. package/dist/routes/devtools/features/page.js +21 -0
  809. package/dist/routes/devtools/flows/page.d.ts +2 -0
  810. package/dist/routes/devtools/flows/page.d.ts.map +1 -0
  811. package/dist/routes/devtools/flows/page.js +21 -0
  812. package/dist/routes/devtools/layout.cc.d.ts +7 -0
  813. package/dist/routes/devtools/layout.cc.d.ts.map +1 -0
  814. package/dist/routes/devtools/layout.cc.js +4 -0
  815. package/dist/routes/devtools/layout.d.ts +5 -0
  816. package/dist/routes/devtools/layout.d.ts.map +1 -0
  817. package/dist/routes/devtools/layout.js +3 -0
  818. package/dist/routes/devtools/page.d.ts +2 -0
  819. package/dist/routes/devtools/page.d.ts.map +1 -0
  820. package/dist/routes/devtools/page.js +92 -0
  821. package/dist/routes/devtools/plugins/[plugin]/page.d.ts +8 -0
  822. package/dist/routes/devtools/plugins/[plugin]/page.d.ts.map +1 -0
  823. package/dist/routes/devtools/plugins/[plugin]/page.js +11 -0
  824. package/dist/routes/devtools/scheduled-actions/page.d.ts +15 -0
  825. package/dist/routes/devtools/scheduled-actions/page.d.ts.map +1 -0
  826. package/dist/routes/devtools/scheduled-actions/page.js +121 -0
  827. package/dist/routes/devtools/style/page.d.ts +8 -0
  828. package/dist/routes/devtools/style/page.d.ts.map +1 -0
  829. package/dist/routes/devtools/style/page.js +241 -0
  830. package/dist/routes/devtools/tags/page.d.ts +2 -0
  831. package/dist/routes/devtools/tags/page.d.ts.map +1 -0
  832. package/dist/routes/devtools/tags/page.js +21 -0
  833. package/dist/routes/devtools/tests/[[...path]]/page.d.ts +8 -0
  834. package/dist/routes/devtools/tests/[[...path]]/page.d.ts.map +1 -0
  835. package/dist/routes/devtools/tests/[[...path]]/page.js +30 -0
  836. package/dist/routes/layout.d.ts +10 -0
  837. package/dist/routes/layout.d.ts.map +1 -0
  838. package/dist/routes/layout.js +73 -0
  839. package/dist/routes/layout.ppr.d.ts +26 -0
  840. package/dist/routes/layout.ppr.d.ts.map +1 -0
  841. package/dist/routes/layout.ppr.js +58 -0
  842. package/dist/routes/manifest.json +784 -0
  843. package/dist/routes/public/page.d.ts +3 -0
  844. package/dist/routes/public/page.d.ts.map +1 -0
  845. package/dist/routes/public/page.js +12 -0
  846. package/dist/routes/superadmin/docs/[section]/[page]/page.cc.d.ts +15 -0
  847. package/dist/routes/superadmin/docs/[section]/[page]/page.cc.d.ts.map +1 -0
  848. package/dist/routes/superadmin/docs/[section]/[page]/page.cc.js +63 -0
  849. package/dist/routes/superadmin/docs/[section]/[page]/page.d.ts +16 -0
  850. package/dist/routes/superadmin/docs/[section]/[page]/page.d.ts.map +1 -0
  851. package/dist/routes/superadmin/docs/[section]/[page]/page.js +61 -0
  852. package/dist/routes/superadmin/docs/page.d.ts +4 -0
  853. package/dist/routes/superadmin/docs/page.d.ts.map +1 -0
  854. package/dist/routes/superadmin/docs/page.js +50 -0
  855. package/dist/routes/superadmin/layout.cc.d.ts +7 -0
  856. package/dist/routes/superadmin/layout.cc.d.ts.map +1 -0
  857. package/dist/routes/superadmin/layout.cc.js +4 -0
  858. package/dist/routes/superadmin/layout.d.ts +5 -0
  859. package/dist/routes/superadmin/layout.d.ts.map +1 -0
  860. package/dist/routes/superadmin/layout.js +3 -0
  861. package/dist/routes/superadmin/page.d.ts +8 -0
  862. package/dist/routes/superadmin/page.d.ts.map +1 -0
  863. package/dist/routes/superadmin/page.js +91 -0
  864. package/dist/routes/superadmin/plugins/[plugin]/page.d.ts +8 -0
  865. package/dist/routes/superadmin/plugins/[plugin]/page.d.ts.map +1 -0
  866. package/dist/routes/superadmin/plugins/[plugin]/page.js +11 -0
  867. package/dist/routes/superadmin/subscriptions/page.d.ts +9 -0
  868. package/dist/routes/superadmin/subscriptions/page.d.ts.map +1 -0
  869. package/dist/routes/superadmin/subscriptions/page.js +470 -0
  870. package/dist/routes/superadmin/team-roles/page.d.ts +12 -0
  871. package/dist/routes/superadmin/team-roles/page.d.ts.map +1 -0
  872. package/dist/routes/superadmin/team-roles/page.js +385 -0
  873. package/dist/routes/superadmin/teams/[teamId]/page.d.ts +8 -0
  874. package/dist/routes/superadmin/teams/[teamId]/page.d.ts.map +1 -0
  875. package/dist/routes/superadmin/teams/[teamId]/page.js +429 -0
  876. package/dist/routes/superadmin/teams/page.d.ts +9 -0
  877. package/dist/routes/superadmin/teams/page.d.ts.map +1 -0
  878. package/dist/routes/superadmin/teams/page.js +259 -0
  879. package/dist/routes/superadmin/users/[userId]/page.d.ts +8 -0
  880. package/dist/routes/superadmin/users/[userId]/page.d.ts.map +1 -0
  881. package/dist/routes/superadmin/users/[userId]/page.js +342 -0
  882. package/dist/routes/superadmin/users/page.d.ts +9 -0
  883. package/dist/routes/superadmin/users/page.d.ts.map +1 -0
  884. package/dist/routes/superadmin/users/page.js +410 -0
  885. package/dist/routes/variants.json +86 -0
  886. package/dist/templates/blocks/README.md +6 -12
  887. package/dist/templates/blocks/cta-section/config.ts +0 -1
  888. package/dist/templates/blocks/cta-section/thumbnail.png +0 -0
  889. package/dist/templates/blocks/features-grid/config.ts +0 -1
  890. package/dist/templates/blocks/features-grid/thumbnail.png +0 -0
  891. package/dist/templates/blocks/hero/config.ts +0 -1
  892. package/dist/templates/blocks/hero/thumbnail.png +0 -0
  893. package/dist/templates/blocks/testimonials/config.ts +0 -1
  894. package/dist/templates/blocks/testimonials/thumbnail.png +0 -0
  895. package/dist/templates/blocks/text-content/config.ts +0 -1
  896. package/dist/templates/blocks/text-content/thumbnail.png +0 -0
  897. package/dist/templates/ci-workflows/README.md +4 -5
  898. package/dist/templates/ci-workflows/github/cypress-regression.yml +7 -14
  899. package/dist/templates/ci-workflows/github/cypress-smoke.yml +3 -5
  900. package/dist/templates/eslint.config.mjs +3 -3
  901. package/dist/templates/features/blog/blocks/post-content/config.ts +0 -1
  902. package/dist/templates/features/blog/entities/posts/posts.config.ts +1 -1
  903. package/dist/templates/features/pages/blocks/hero/config.ts +0 -1
  904. package/dist/templates/features/pages/entities/pages/pages.config.ts +1 -1
  905. package/dist/templates/instrumentation.ts +9 -0
  906. package/dist/templates/migrations/README.md +2 -2
  907. package/dist/templates/next.config.mjs +34 -8
  908. package/dist/templates/plugins/README.md +42 -0
  909. package/dist/templates/plugins/starter/plugin/README.md.template +97 -0
  910. package/dist/templates/plugins/starter/plugin/api/example/route.ts.template +94 -0
  911. package/dist/templates/plugins/starter/plugin/hooks/usePlugin.ts.template +102 -0
  912. package/dist/templates/pnpm-workspace.yaml +3 -5
  913. package/dist/templates/projects/blog/README.md +62 -0
  914. package/dist/templates/projects/blog/about.md +93 -0
  915. package/dist/templates/projects/blog/api/authors/[username]/route.ts +153 -0
  916. package/dist/templates/projects/blog/api/authors/docs.md +135 -0
  917. package/dist/templates/projects/blog/api/authors/presets.ts +45 -0
  918. package/dist/templates/projects/blog/api/authors/route.ts +66 -0
  919. package/dist/templates/projects/blog/api/posts/public/docs.md +124 -0
  920. package/dist/templates/projects/blog/api/posts/public/presets.ts +65 -0
  921. package/dist/templates/projects/blog/api/posts/public/route.ts +154 -0
  922. package/dist/templates/projects/blog/components/ExportPostsButton.tsx +103 -0
  923. package/dist/templates/projects/blog/components/ImportPostsDialog.tsx +285 -0
  924. package/dist/templates/projects/blog/components/PostsToolbar.tsx +24 -0
  925. package/dist/templates/projects/blog/components/editor/FeaturedImageUpload.tsx +186 -0
  926. package/dist/templates/projects/blog/components/editor/WysiwygEditor.tsx +389 -0
  927. package/dist/templates/projects/blog/components/index.ts +4 -0
  928. package/dist/templates/projects/blog/components/public/AuthorBio.tsx +106 -0
  929. package/dist/templates/projects/blog/components/public/AuthorCard.tsx +131 -0
  930. package/dist/templates/projects/blog/components/public/BlogFooter.tsx +186 -0
  931. package/dist/templates/projects/blog/components/public/BlogNavbar.tsx +201 -0
  932. package/dist/templates/projects/blog/components/public/PostCard.tsx +307 -0
  933. package/dist/templates/projects/blog/components/public/ReadingProgress.tsx +70 -0
  934. package/dist/templates/projects/blog/components/public/RelatedPosts.tsx +79 -0
  935. package/dist/templates/projects/blog/config/app.config.ts +193 -0
  936. package/dist/templates/projects/blog/config/billing.config.ts +143 -0
  937. package/dist/templates/projects/blog/config/dashboard.config.ts +346 -0
  938. package/dist/templates/projects/blog/config/dev.config.ts +48 -0
  939. package/dist/templates/projects/blog/config/features.config.ts +196 -0
  940. package/dist/templates/projects/blog/config/flows.config.ts +333 -0
  941. package/dist/templates/projects/blog/config/permissions.config.ts +112 -0
  942. package/dist/templates/projects/blog/config/theme.config.ts +128 -0
  943. package/dist/templates/projects/blog/entities/categories/api/docs.md +119 -0
  944. package/dist/templates/projects/blog/entities/categories/api/presets.ts +67 -0
  945. package/dist/templates/projects/blog/entities/categories/categories.config.ts +60 -0
  946. package/dist/templates/projects/blog/entities/categories/categories.fields.ts +115 -0
  947. package/dist/templates/projects/blog/entities/categories/categories.service.ts +333 -0
  948. package/dist/templates/projects/blog/entities/categories/categories.types.ts +58 -0
  949. package/dist/templates/projects/blog/entities/categories/messages/en.json +33 -0
  950. package/dist/templates/projects/blog/entities/categories/messages/es.json +33 -0
  951. package/dist/templates/projects/blog/entities/posts/api/docs.md +174 -0
  952. package/dist/templates/projects/blog/entities/posts/api/presets.ts +137 -0
  953. package/dist/templates/projects/blog/entities/posts/messages/en.json +100 -0
  954. package/dist/templates/projects/blog/entities/posts/messages/es.json +100 -0
  955. package/dist/templates/projects/blog/entities/posts/migrations/001_posts_table.sql +110 -0
  956. package/dist/templates/projects/blog/entities/posts/migrations/002_add_featured.sql +19 -0
  957. package/dist/templates/projects/blog/entities/posts/migrations/003_post_categories_pivot.sql +47 -0
  958. package/dist/templates/projects/blog/entities/posts/posts.config.ts +61 -0
  959. package/dist/templates/projects/blog/entities/posts/posts.fields.ts +234 -0
  960. package/dist/templates/projects/blog/entities/posts/posts.service.ts +464 -0
  961. package/dist/templates/projects/blog/entities/posts/posts.types.ts +80 -0
  962. package/dist/templates/projects/blog/lib/sanitize-post-html.ts +52 -0
  963. package/dist/templates/projects/blog/lib/selectors.ts +178 -0
  964. package/dist/templates/projects/blog/messages/en.json +113 -0
  965. package/dist/templates/projects/blog/messages/es.json +113 -0
  966. package/dist/templates/projects/blog/migrations/002_author_profile_fields.sql +37 -0
  967. package/dist/templates/projects/blog/migrations/003_categories_table.sql +90 -0
  968. package/dist/templates/projects/blog/migrations/090_billing_sample_data.sql +99 -0
  969. package/dist/templates/projects/blog/migrations/999_sample_data.sql +412 -0
  970. package/dist/templates/projects/blog/migrations/999_theme_sample_data.sql +1070 -0
  971. package/dist/templates/projects/blog/package.json +30 -0
  972. package/dist/templates/projects/blog/permissions-matrix.md +63 -0
  973. package/dist/templates/projects/blog/styles/article.css +333 -0
  974. package/dist/templates/projects/blog/styles/components.css +204 -0
  975. package/dist/templates/projects/blog/styles/globals.css +384 -0
  976. package/dist/templates/projects/blog/styles/theme.css +167 -0
  977. package/dist/templates/projects/blog/templates/(public)/author/[username]/page.tsx +248 -0
  978. package/dist/templates/projects/blog/templates/(public)/authors/page.tsx +162 -0
  979. package/dist/templates/projects/blog/templates/(public)/layout.tsx +44 -0
  980. package/dist/templates/projects/blog/templates/(public)/page.tsx +277 -0
  981. package/dist/templates/projects/blog/templates/(public)/posts/[slug]/page.tsx +344 -0
  982. package/dist/templates/projects/blog/templates/dashboard/(main)/page.tsx +386 -0
  983. package/dist/templates/projects/blog/templates/dashboard/(main)/posts/[id]/edit/page.tsx +530 -0
  984. package/dist/templates/projects/blog/templates/dashboard/(main)/posts/[id]/page.tsx +33 -0
  985. package/dist/templates/projects/blog/templates/dashboard/(main)/posts/create/page.tsx +354 -0
  986. package/dist/templates/projects/blog/templates/dashboard/(main)/posts/page.tsx +834 -0
  987. package/dist/templates/projects/blog/tests/cypress/e2e/README.md +170 -0
  988. package/dist/templates/projects/blog/tests/cypress/e2e/categories/categories-crud.cy.ts +322 -0
  989. package/dist/templates/projects/blog/tests/cypress/e2e/categories/categories-crud.md +73 -0
  990. package/dist/templates/projects/blog/tests/cypress/e2e/posts/posts-crud.cy.ts +460 -0
  991. package/dist/templates/projects/blog/tests/cypress/e2e/posts/posts-crud.md +115 -0
  992. package/dist/templates/projects/blog/tests/cypress/e2e/posts/posts-editor.cy.ts +290 -0
  993. package/dist/templates/projects/blog/tests/cypress/e2e/posts/posts-editor.md +139 -0
  994. package/dist/templates/projects/blog/tests/cypress/e2e/posts/posts-status-workflow.cy.ts +302 -0
  995. package/dist/templates/projects/blog/tests/cypress/e2e/posts/posts-status-workflow.md +83 -0
  996. package/dist/templates/projects/blog/tests/cypress/fixtures/blocks.json +9 -0
  997. package/dist/templates/projects/blog/tests/cypress/fixtures/entities.json +51 -0
  998. package/dist/templates/projects/blog/tests/cypress/src/FeaturedImageUpload.js +131 -0
  999. package/dist/templates/projects/blog/tests/cypress/src/PostEditor.js +386 -0
  1000. package/dist/templates/projects/blog/tests/cypress/src/PostsList.js +350 -0
  1001. package/dist/templates/projects/blog/tests/cypress/src/WysiwygEditor.js +373 -0
  1002. package/dist/templates/projects/blog/tests/cypress/src/components/EntityForm.ts +378 -0
  1003. package/dist/templates/projects/blog/tests/cypress/src/components/EntityList.ts +378 -0
  1004. package/dist/templates/projects/blog/tests/cypress/src/components/PostEditorPOM.ts +447 -0
  1005. package/dist/templates/projects/blog/tests/cypress/src/components/PostsPOM.ts +362 -0
  1006. package/dist/templates/projects/blog/tests/cypress/src/components/index.ts +18 -0
  1007. package/dist/templates/projects/blog/tests/cypress/src/index.js +33 -0
  1008. package/dist/templates/projects/blog/tests/cypress/src/selectors.ts +49 -0
  1009. package/dist/templates/projects/blog/tests/cypress/src/session-helpers.ts +151 -0
  1010. package/dist/templates/projects/blog/tests/cypress/support/e2e.ts +90 -0
  1011. package/dist/templates/projects/blog/tests/cypress.config.ts +149 -0
  1012. package/dist/templates/projects/blog/tests/jest/components/WysiwygEditor.test.tsx +118 -0
  1013. package/dist/templates/projects/blog/tests/jest/jest.config.cjs +104 -0
  1014. package/dist/templates/projects/blog/tests/jest/lib/sanitize-post-html.test.ts +48 -0
  1015. package/dist/templates/projects/blog/tests/jest/setup.ts +170 -0
  1016. package/dist/templates/projects/blog/tests/jest/tsconfig.jest.json +6 -0
  1017. package/dist/templates/projects/blog/tests/tsconfig.json +7 -0
  1018. package/dist/templates/projects/crm/CRM_PLAN.md +343 -0
  1019. package/dist/templates/projects/crm/about.md +122 -0
  1020. package/dist/templates/projects/crm/config/app.config.ts +178 -0
  1021. package/dist/templates/projects/crm/config/billing.config.ts +184 -0
  1022. package/dist/templates/projects/crm/config/dashboard.config.ts +385 -0
  1023. package/dist/templates/projects/crm/config/dev.config.ts +55 -0
  1024. package/dist/templates/projects/crm/config/features.config.ts +336 -0
  1025. package/dist/templates/projects/crm/config/flows.config.ts +511 -0
  1026. package/dist/templates/projects/crm/config/permissions.config.ts +308 -0
  1027. package/dist/templates/projects/crm/config/theme.config.ts +111 -0
  1028. package/dist/templates/projects/crm/entities/activities/activities.config.ts +61 -0
  1029. package/dist/templates/projects/crm/entities/activities/activities.fields.ts +362 -0
  1030. package/dist/templates/projects/crm/entities/activities/activities.service.ts +503 -0
  1031. package/dist/templates/projects/crm/entities/activities/activities.types.ts +117 -0
  1032. package/dist/templates/projects/crm/entities/activities/api/docs.md +146 -0
  1033. package/dist/templates/projects/crm/entities/activities/api/presets.ts +132 -0
  1034. package/dist/templates/projects/crm/entities/activities/messages/en.json +123 -0
  1035. package/dist/templates/projects/crm/entities/activities/messages/es.json +123 -0
  1036. package/dist/templates/projects/crm/entities/activities/migrations/020_activities_table.sql +123 -0
  1037. package/dist/templates/projects/crm/entities/activities/migrations/021_activities_metas.sql +114 -0
  1038. package/dist/templates/projects/crm/entities/activities/migrations/022_activities_sample_data.sql +420 -0
  1039. package/dist/templates/projects/crm/entities/campaigns/api/docs.md +140 -0
  1040. package/dist/templates/projects/crm/entities/campaigns/api/presets.ts +147 -0
  1041. package/dist/templates/projects/crm/entities/campaigns/campaigns.config.ts +61 -0
  1042. package/dist/templates/projects/crm/entities/campaigns/campaigns.fields.ts +413 -0
  1043. package/dist/templates/projects/crm/entities/campaigns/campaigns.service.ts +426 -0
  1044. package/dist/templates/projects/crm/entities/campaigns/campaigns.types.ts +124 -0
  1045. package/dist/templates/projects/crm/entities/campaigns/messages/en.json +145 -0
  1046. package/dist/templates/projects/crm/entities/campaigns/messages/es.json +145 -0
  1047. package/dist/templates/projects/crm/entities/campaigns/migrations/001_campaigns_table.sql +127 -0
  1048. package/dist/templates/projects/crm/entities/campaigns/migrations/002_campaigns_metas.sql +114 -0
  1049. package/dist/templates/projects/crm/entities/campaigns/migrations/003_campaigns_sample_data.sql +364 -0
  1050. package/dist/templates/projects/crm/entities/companies/api/docs.md +139 -0
  1051. package/dist/templates/projects/crm/entities/companies/api/presets.ts +107 -0
  1052. package/dist/templates/projects/crm/entities/companies/companies.config.ts +61 -0
  1053. package/dist/templates/projects/crm/entities/companies/companies.fields.ts +429 -0
  1054. package/dist/templates/projects/crm/entities/companies/companies.service.ts +566 -0
  1055. package/dist/templates/projects/crm/entities/companies/companies.types.ts +125 -0
  1056. package/dist/templates/projects/crm/entities/companies/messages/en.json +146 -0
  1057. package/dist/templates/projects/crm/entities/companies/messages/es.json +146 -0
  1058. package/dist/templates/projects/crm/entities/companies/migrations/001_companies_table.sql +150 -0
  1059. package/dist/templates/projects/crm/entities/companies/migrations/002_companies_metas.sql +114 -0
  1060. package/dist/templates/projects/crm/entities/companies/migrations/003_companies_sample_data.sql +246 -0
  1061. package/dist/templates/projects/crm/entities/contacts/api/docs.md +139 -0
  1062. package/dist/templates/projects/crm/entities/contacts/api/presets.ts +98 -0
  1063. package/dist/templates/projects/crm/entities/contacts/contacts.config.ts +61 -0
  1064. package/dist/templates/projects/crm/entities/contacts/contacts.fields.ts +359 -0
  1065. package/dist/templates/projects/crm/entities/contacts/contacts.service.ts +509 -0
  1066. package/dist/templates/projects/crm/entities/contacts/contacts.types.ts +108 -0
  1067. package/dist/templates/projects/crm/entities/contacts/messages/en.json +117 -0
  1068. package/dist/templates/projects/crm/entities/contacts/messages/es.json +117 -0
  1069. package/dist/templates/projects/crm/entities/contacts/migrations/001_contacts_table.sql +134 -0
  1070. package/dist/templates/projects/crm/entities/contacts/migrations/002_contacts_metas.sql +114 -0
  1071. package/dist/templates/projects/crm/entities/contacts/migrations/003_contacts_sample_data.sql +421 -0
  1072. package/dist/templates/projects/crm/entities/leads/api/docs.md +132 -0
  1073. package/dist/templates/projects/crm/entities/leads/api/presets.ts +109 -0
  1074. package/dist/templates/projects/crm/entities/leads/leads.config.ts +61 -0
  1075. package/dist/templates/projects/crm/entities/leads/leads.fields.ts +336 -0
  1076. package/dist/templates/projects/crm/entities/leads/leads.service.ts +496 -0
  1077. package/dist/templates/projects/crm/entities/leads/leads.types.ts +114 -0
  1078. package/dist/templates/projects/crm/entities/leads/messages/en.json +132 -0
  1079. package/dist/templates/projects/crm/entities/leads/messages/es.json +132 -0
  1080. package/dist/templates/projects/crm/entities/leads/migrations/001_leads_table.sql +150 -0
  1081. package/dist/templates/projects/crm/entities/leads/migrations/002_leads_metas.sql +120 -0
  1082. package/dist/templates/projects/crm/entities/leads/migrations/003_leads_sample_data.sql +242 -0
  1083. package/dist/templates/projects/crm/entities/notes/api/docs.md +135 -0
  1084. package/dist/templates/projects/crm/entities/notes/api/presets.ts +115 -0
  1085. package/dist/templates/projects/crm/entities/notes/messages/en.json +114 -0
  1086. package/dist/templates/projects/crm/entities/notes/messages/es.json +114 -0
  1087. package/dist/templates/projects/crm/entities/notes/migrations/020_notes_table.sql +118 -0
  1088. package/dist/templates/projects/crm/entities/notes/migrations/021_notes_metas.sql +114 -0
  1089. package/dist/templates/projects/crm/entities/notes/migrations/022_notes_sample_data.sql +275 -0
  1090. package/dist/templates/projects/crm/entities/notes/notes.config.ts +61 -0
  1091. package/dist/templates/projects/crm/entities/notes/notes.fields.ts +283 -0
  1092. package/dist/templates/projects/crm/entities/notes/notes.service.ts +320 -0
  1093. package/dist/templates/projects/crm/entities/notes/notes.types.ts +102 -0
  1094. package/dist/templates/projects/crm/entities/opportunities/api/docs.md +151 -0
  1095. package/dist/templates/projects/crm/entities/opportunities/api/presets.ts +151 -0
  1096. package/dist/templates/projects/crm/entities/opportunities/messages/en.json +107 -0
  1097. package/dist/templates/projects/crm/entities/opportunities/messages/es.json +107 -0
  1098. package/dist/templates/projects/crm/entities/opportunities/migrations/010_opportunities_table.sql +145 -0
  1099. package/dist/templates/projects/crm/entities/opportunities/migrations/011_opportunities_metas.sql +114 -0
  1100. package/dist/templates/projects/crm/entities/opportunities/migrations/012_opportunities_sample_data.sql +438 -0
  1101. package/dist/templates/projects/crm/entities/opportunities/opportunities.config.ts +61 -0
  1102. package/dist/templates/projects/crm/entities/opportunities/opportunities.fields.ts +416 -0
  1103. package/dist/templates/projects/crm/entities/opportunities/opportunities.service.ts +525 -0
  1104. package/dist/templates/projects/crm/entities/opportunities/opportunities.types.ts +135 -0
  1105. package/dist/templates/projects/crm/entities/pipelines/api/docs.md +145 -0
  1106. package/dist/templates/projects/crm/entities/pipelines/api/presets.ts +118 -0
  1107. package/dist/templates/projects/crm/entities/pipelines/messages/en.json +115 -0
  1108. package/dist/templates/projects/crm/entities/pipelines/messages/es.json +115 -0
  1109. package/dist/templates/projects/crm/entities/pipelines/migrations/001_pipelines_table.sql +106 -0
  1110. package/dist/templates/projects/crm/entities/pipelines/migrations/002_pipelines_metas.sql +114 -0
  1111. package/dist/templates/projects/crm/entities/pipelines/migrations/003_pipelines_sample_data.sql +91 -0
  1112. package/dist/templates/projects/crm/entities/pipelines/pipelines.config.ts +62 -0
  1113. package/dist/templates/projects/crm/entities/pipelines/pipelines.fields.ts +193 -0
  1114. package/dist/templates/projects/crm/entities/pipelines/pipelines.service.ts +383 -0
  1115. package/dist/templates/projects/crm/entities/pipelines/pipelines.types.ts +78 -0
  1116. package/dist/templates/projects/crm/entities/products/api/docs.md +137 -0
  1117. package/dist/templates/projects/crm/entities/products/api/presets.ts +132 -0
  1118. package/dist/templates/projects/crm/entities/products/messages/en.json +135 -0
  1119. package/dist/templates/projects/crm/entities/products/messages/es.json +135 -0
  1120. package/dist/templates/projects/crm/entities/products/migrations/001_products_table.sql +117 -0
  1121. package/dist/templates/projects/crm/entities/products/migrations/002_products_metas.sql +114 -0
  1122. package/dist/templates/projects/crm/entities/products/migrations/003_products_sample_data.sql +247 -0
  1123. package/dist/templates/projects/crm/entities/products/products.config.ts +62 -0
  1124. package/dist/templates/projects/crm/entities/products/products.fields.ts +361 -0
  1125. package/dist/templates/projects/crm/entities/products/products.service.ts +437 -0
  1126. package/dist/templates/projects/crm/entities/products/products.types.ts +125 -0
  1127. package/dist/templates/projects/crm/lib/crm-constants.ts +77 -0
  1128. package/dist/templates/projects/crm/lib/crm-utils.ts +185 -0
  1129. package/dist/templates/projects/crm/lib/selectors.ts +332 -0
  1130. package/dist/templates/projects/crm/messages/en.json +131 -0
  1131. package/dist/templates/projects/crm/messages/es.json +131 -0
  1132. package/dist/templates/projects/crm/migrations/090_billing_sample_data.sql +99 -0
  1133. package/dist/templates/projects/crm/migrations/999_theme_sample_data.sql +473 -0
  1134. package/dist/templates/projects/crm/package.json +26 -0
  1135. package/dist/templates/projects/crm/pendings.md +204 -0
  1136. package/dist/templates/projects/crm/permissions-matrix.md +216 -0
  1137. package/dist/templates/projects/crm/styles/components.css +414 -0
  1138. package/dist/templates/projects/crm/styles/crm-theme.css +358 -0
  1139. package/dist/templates/projects/crm/styles/globals.css +624 -0
  1140. package/dist/templates/projects/crm/styles/variables.css +111 -0
  1141. package/dist/templates/projects/crm/templates/dashboard/(main)/activities/components/ActivityCard.tsx +169 -0
  1142. package/dist/templates/projects/crm/templates/dashboard/(main)/activities/components/ActivityTimeline.tsx +165 -0
  1143. package/dist/templates/projects/crm/templates/dashboard/(main)/activities/page.tsx +297 -0
  1144. package/dist/templates/projects/crm/templates/dashboard/(main)/campaigns/page.tsx +373 -0
  1145. package/dist/templates/projects/crm/templates/dashboard/(main)/companies/page.tsx +296 -0
  1146. package/dist/templates/projects/crm/templates/dashboard/(main)/contacts/page.tsx +347 -0
  1147. package/dist/templates/projects/crm/templates/dashboard/(main)/layout.tsx +98 -0
  1148. package/dist/templates/projects/crm/templates/dashboard/(main)/leads/page.tsx +335 -0
  1149. package/dist/templates/projects/crm/templates/dashboard/(main)/opportunities/[id]/edit/page.tsx +95 -0
  1150. package/dist/templates/projects/crm/templates/dashboard/(main)/opportunities/create/page.tsx +94 -0
  1151. package/dist/templates/projects/crm/templates/dashboard/(main)/opportunities/page.tsx +350 -0
  1152. package/dist/templates/projects/crm/templates/dashboard/(main)/pipelines/[id]/edit/page.tsx +95 -0
  1153. package/dist/templates/projects/crm/templates/dashboard/(main)/pipelines/[id]/page.tsx +143 -0
  1154. package/dist/templates/projects/crm/templates/dashboard/(main)/pipelines/create/page.tsx +94 -0
  1155. package/dist/templates/projects/crm/templates/dashboard/(main)/pipelines/page.tsx +235 -0
  1156. package/dist/templates/projects/crm/templates/dashboard/(main)/products/[id]/edit/page.tsx +97 -0
  1157. package/dist/templates/projects/crm/templates/dashboard/(main)/products/[id]/page.tsx +510 -0
  1158. package/dist/templates/projects/crm/templates/dashboard/(main)/products/create/page.tsx +96 -0
  1159. package/dist/templates/projects/crm/templates/dashboard/(main)/products/page.tsx +308 -0
  1160. package/dist/templates/projects/crm/templates/shared/ActionButtons.tsx +41 -0
  1161. package/dist/templates/projects/crm/templates/shared/CRMDashboard.tsx +519 -0
  1162. package/dist/templates/projects/crm/templates/shared/CRMDataTable.tsx +441 -0
  1163. package/dist/templates/projects/crm/templates/shared/CRMMetricCard.tsx +76 -0
  1164. package/dist/templates/projects/crm/templates/shared/CRMMobileNav.tsx +172 -0
  1165. package/dist/templates/projects/crm/templates/shared/CRMSidebar.tsx +347 -0
  1166. package/dist/templates/projects/crm/templates/shared/CRMTopBar.tsx +266 -0
  1167. package/dist/templates/projects/crm/templates/shared/DealCard.tsx +123 -0
  1168. package/dist/templates/projects/crm/templates/shared/EntityCard.tsx +58 -0
  1169. package/dist/templates/projects/crm/templates/shared/OpportunityForm.tsx +649 -0
  1170. package/dist/templates/projects/crm/templates/shared/PipelineForm.tsx +367 -0
  1171. package/dist/templates/projects/crm/templates/shared/PipelineKanban.tsx +194 -0
  1172. package/dist/templates/projects/crm/templates/shared/QuickFilters.tsx +47 -0
  1173. package/dist/templates/projects/crm/templates/shared/StageColumn.tsx +175 -0
  1174. package/dist/templates/projects/crm/templates/shared/StageSelect.tsx +177 -0
  1175. package/dist/templates/projects/crm/templates/shared/StagesRepeater.tsx +317 -0
  1176. package/dist/templates/projects/crm/templates/shared/index.ts +9 -0
  1177. package/dist/templates/projects/crm/tests/cypress/e2e/api/activities/activities-crud.cy.ts +686 -0
  1178. package/dist/templates/projects/crm/tests/cypress/e2e/api/campaigns/campaigns-crud.cy.ts +592 -0
  1179. package/dist/templates/projects/crm/tests/cypress/e2e/api/companies/companies-crud.cy.ts +682 -0
  1180. package/dist/templates/projects/crm/tests/cypress/e2e/api/contacts/contacts-crud.cy.ts +668 -0
  1181. package/dist/templates/projects/crm/tests/cypress/e2e/api/leads/leads-crud.cy.ts +648 -0
  1182. package/dist/templates/projects/crm/tests/cypress/e2e/api/notes/notes-crud.cy.ts +424 -0
  1183. package/dist/templates/projects/crm/tests/cypress/e2e/api/opportunities/opportunities-crud.cy.ts +865 -0
  1184. package/dist/templates/projects/crm/tests/cypress/e2e/api/pipelines/pipelines-crud.cy.ts +545 -0
  1185. package/dist/templates/projects/crm/tests/cypress/e2e/api/products/products-crud.cy.ts +447 -0
  1186. package/dist/templates/projects/crm/tests/cypress/e2e/ui/activities/activities-admin.cy.ts +268 -0
  1187. package/dist/templates/projects/crm/tests/cypress/e2e/ui/activities/activities-member.cy.ts +257 -0
  1188. package/dist/templates/projects/crm/tests/cypress/e2e/ui/activities/activities-owner.cy.ts +268 -0
  1189. package/dist/templates/projects/crm/tests/cypress/e2e/ui/companies/companies-admin.cy.ts +188 -0
  1190. package/dist/templates/projects/crm/tests/cypress/e2e/ui/companies/companies-member.cy.ts +166 -0
  1191. package/dist/templates/projects/crm/tests/cypress/e2e/ui/companies/companies-owner.cy.ts +189 -0
  1192. package/dist/templates/projects/crm/tests/cypress/e2e/ui/contacts/contacts-admin.cy.ts +252 -0
  1193. package/dist/templates/projects/crm/tests/cypress/e2e/ui/contacts/contacts-member.cy.ts +224 -0
  1194. package/dist/templates/projects/crm/tests/cypress/e2e/ui/contacts/contacts-owner.cy.ts +236 -0
  1195. package/dist/templates/projects/crm/tests/cypress/e2e/ui/leads/leads-admin.cy.ts +286 -0
  1196. package/dist/templates/projects/crm/tests/cypress/e2e/ui/leads/leads-member.cy.ts +193 -0
  1197. package/dist/templates/projects/crm/tests/cypress/e2e/ui/leads/leads-owner.cy.ts +210 -0
  1198. package/dist/templates/projects/crm/tests/cypress/e2e/ui/opportunities/opportunities-admin.cy.ts +197 -0
  1199. package/dist/templates/projects/crm/tests/cypress/e2e/ui/opportunities/opportunities-member.cy.ts +229 -0
  1200. package/dist/templates/projects/crm/tests/cypress/e2e/ui/opportunities/opportunities-owner.cy.ts +196 -0
  1201. package/dist/templates/projects/crm/tests/cypress/e2e/ui/pipelines/pipelines-admin.cy.ts +320 -0
  1202. package/dist/templates/projects/crm/tests/cypress/e2e/ui/pipelines/pipelines-member.cy.ts +262 -0
  1203. package/dist/templates/projects/crm/tests/cypress/e2e/ui/pipelines/pipelines-owner.cy.ts +282 -0
  1204. package/dist/templates/projects/crm/tests/cypress/fixtures/blocks.json +9 -0
  1205. package/dist/templates/projects/crm/tests/cypress/fixtures/entities.json +240 -0
  1206. package/dist/templates/projects/crm/tests/cypress/src/components/CRMDataTable.js +223 -0
  1207. package/dist/templates/projects/crm/tests/cypress/src/components/CRMMobileNav.js +138 -0
  1208. package/dist/templates/projects/crm/tests/cypress/src/components/CRMSidebar.js +145 -0
  1209. package/dist/templates/projects/crm/tests/cypress/src/components/CRMTopBar.js +194 -0
  1210. package/dist/templates/projects/crm/tests/cypress/src/components/DealCard.js +197 -0
  1211. package/dist/templates/projects/crm/tests/cypress/src/components/EntityDetail.ts +290 -0
  1212. package/dist/templates/projects/crm/tests/cypress/src/components/EntityForm.ts +357 -0
  1213. package/dist/templates/projects/crm/tests/cypress/src/components/EntityList.ts +360 -0
  1214. package/dist/templates/projects/crm/tests/cypress/src/components/PipelineKanban.js +204 -0
  1215. package/dist/templates/projects/crm/tests/cypress/src/components/StageColumn.js +196 -0
  1216. package/dist/templates/projects/crm/tests/cypress/src/components/index.js +13 -0
  1217. package/dist/templates/projects/crm/tests/cypress/src/components/index.ts +22 -0
  1218. package/dist/templates/projects/crm/tests/cypress/src/controllers/ActivityAPIController.ts +113 -0
  1219. package/dist/templates/projects/crm/tests/cypress/src/controllers/BaseAPIController.ts +307 -0
  1220. package/dist/templates/projects/crm/tests/cypress/src/controllers/CampaignAPIController.ts +114 -0
  1221. package/dist/templates/projects/crm/tests/cypress/src/controllers/CompanyAPIController.ts +112 -0
  1222. package/dist/templates/projects/crm/tests/cypress/src/controllers/ContactAPIController.ts +104 -0
  1223. package/dist/templates/projects/crm/tests/cypress/src/controllers/LeadAPIController.ts +96 -0
  1224. package/dist/templates/projects/crm/tests/cypress/src/controllers/NoteAPIController.ts +130 -0
  1225. package/dist/templates/projects/crm/tests/cypress/src/controllers/OpportunityAPIController.ts +134 -0
  1226. package/dist/templates/projects/crm/tests/cypress/src/controllers/PipelineAPIController.ts +116 -0
  1227. package/dist/templates/projects/crm/tests/cypress/src/controllers/ProductAPIController.ts +113 -0
  1228. package/dist/templates/projects/crm/tests/cypress/src/controllers/index.ts +35 -0
  1229. package/dist/templates/projects/crm/tests/cypress/src/entities/ActivitiesPOM.ts +130 -0
  1230. package/dist/templates/projects/crm/tests/cypress/src/entities/CompaniesPOM.ts +117 -0
  1231. package/dist/templates/projects/crm/tests/cypress/src/entities/ContactsPOM.ts +117 -0
  1232. package/dist/templates/projects/crm/tests/cypress/src/entities/LeadsPOM.ts +129 -0
  1233. package/dist/templates/projects/crm/tests/cypress/src/entities/OpportunitiesPOM.ts +178 -0
  1234. package/dist/templates/projects/crm/tests/cypress/src/entities/PipelinesPOM.ts +341 -0
  1235. package/dist/templates/projects/crm/tests/cypress/src/entities/index.ts +31 -0
  1236. package/dist/templates/projects/crm/tests/cypress/src/forms/OpportunityForm.js +316 -0
  1237. package/dist/templates/projects/crm/tests/cypress/src/forms/PipelineForm.js +243 -0
  1238. package/dist/templates/projects/crm/tests/cypress/src/forms/index.js +8 -0
  1239. package/dist/templates/projects/crm/tests/cypress/src/index.js +22 -0
  1240. package/dist/templates/projects/crm/tests/cypress/src/index.ts +68 -0
  1241. package/dist/templates/projects/crm/tests/cypress/src/selectors.ts +50 -0
  1242. package/dist/templates/projects/crm/tests/cypress/src/session-helpers.ts +176 -0
  1243. package/dist/templates/projects/crm/tests/cypress/support/e2e.ts +90 -0
  1244. package/dist/templates/projects/crm/tests/cypress.config.ts +149 -0
  1245. package/dist/templates/projects/crm/tests/tsconfig.json +7 -0
  1246. package/dist/templates/projects/productivity/README.md +73 -0
  1247. package/dist/templates/projects/productivity/about.md +123 -0
  1248. package/dist/templates/projects/productivity/components/CardDetailModal.tsx +318 -0
  1249. package/dist/templates/projects/productivity/components/KanbanBoard.tsx +613 -0
  1250. package/dist/templates/projects/productivity/components/KanbanCard.tsx +218 -0
  1251. package/dist/templates/projects/productivity/components/KanbanColumn.tsx +264 -0
  1252. package/dist/templates/projects/productivity/components/SortableList.tsx +46 -0
  1253. package/dist/templates/projects/productivity/components/index.ts +4 -0
  1254. package/dist/templates/projects/productivity/config/app.config.ts +165 -0
  1255. package/dist/templates/projects/productivity/config/billing.config.ts +184 -0
  1256. package/dist/templates/projects/productivity/config/dashboard.config.ts +370 -0
  1257. package/dist/templates/projects/productivity/config/dev.config.ts +55 -0
  1258. package/dist/templates/projects/productivity/config/features.config.ts +256 -0
  1259. package/dist/templates/projects/productivity/config/flows.config.ts +484 -0
  1260. package/dist/templates/projects/productivity/config/permissions.config.ts +178 -0
  1261. package/dist/templates/projects/productivity/config/theme.config.ts +106 -0
  1262. package/dist/templates/projects/productivity/entities/boards/api/docs.md +131 -0
  1263. package/dist/templates/projects/productivity/entities/boards/api/presets.ts +113 -0
  1264. package/dist/templates/projects/productivity/entities/boards/boards.config.ts +61 -0
  1265. package/dist/templates/projects/productivity/entities/boards/boards.fields.ts +154 -0
  1266. package/dist/templates/projects/productivity/entities/boards/boards.service.ts +256 -0
  1267. package/dist/templates/projects/productivity/entities/boards/boards.types.ts +57 -0
  1268. package/dist/templates/projects/productivity/entities/boards/messages/en.json +80 -0
  1269. package/dist/templates/projects/productivity/entities/boards/messages/es.json +80 -0
  1270. package/dist/templates/projects/productivity/entities/boards/migrations/001_boards_table.sql +83 -0
  1271. package/dist/templates/projects/productivity/entities/cards/api/docs.md +162 -0
  1272. package/dist/templates/projects/productivity/entities/cards/api/presets.ts +172 -0
  1273. package/dist/templates/projects/productivity/entities/cards/cards.config.ts +61 -0
  1274. package/dist/templates/projects/productivity/entities/cards/cards.fields.ts +242 -0
  1275. package/dist/templates/projects/productivity/entities/cards/cards.service.ts +336 -0
  1276. package/dist/templates/projects/productivity/entities/cards/cards.types.ts +79 -0
  1277. package/dist/templates/projects/productivity/entities/cards/messages/en.json +114 -0
  1278. package/dist/templates/projects/productivity/entities/cards/messages/es.json +114 -0
  1279. package/dist/templates/projects/productivity/entities/cards/migrations/020_cards_table.sql +92 -0
  1280. package/dist/templates/projects/productivity/entities/lists/api/docs.md +143 -0
  1281. package/dist/templates/projects/productivity/entities/lists/api/presets.ts +81 -0
  1282. package/dist/templates/projects/productivity/entities/lists/lists.config.ts +61 -0
  1283. package/dist/templates/projects/productivity/entities/lists/lists.fields.ts +105 -0
  1284. package/dist/templates/projects/productivity/entities/lists/lists.service.ts +252 -0
  1285. package/dist/templates/projects/productivity/entities/lists/lists.types.ts +55 -0
  1286. package/dist/templates/projects/productivity/entities/lists/messages/en.json +60 -0
  1287. package/dist/templates/projects/productivity/entities/lists/messages/es.json +60 -0
  1288. package/dist/templates/projects/productivity/entities/lists/migrations/010_lists_table.sql +79 -0
  1289. package/dist/templates/projects/productivity/lib/selectors.ts +205 -0
  1290. package/dist/templates/projects/productivity/messages/en.json +79 -0
  1291. package/dist/templates/projects/productivity/messages/es.json +79 -0
  1292. package/dist/templates/projects/productivity/migrations/090_billing_sample_data.sql +100 -0
  1293. package/dist/templates/projects/productivity/migrations/999_theme_sample_data.sql +922 -0
  1294. package/dist/templates/projects/productivity/migrations/999a_initial_sample_data.sql +377 -0
  1295. package/dist/templates/projects/productivity/migrations/999b_abundant_sample_data.sql +346 -0
  1296. package/dist/templates/projects/productivity/package.json +29 -0
  1297. package/dist/templates/projects/productivity/permissions-matrix.md +122 -0
  1298. package/dist/templates/projects/productivity/styles/components.css +460 -0
  1299. package/dist/templates/projects/productivity/styles/globals.css +608 -0
  1300. package/dist/templates/projects/productivity/templates/dashboard/(main)/boards/[id]/[cardId]/page.tsx +239 -0
  1301. package/dist/templates/projects/productivity/templates/dashboard/(main)/boards/[id]/edit/page.tsx +391 -0
  1302. package/dist/templates/projects/productivity/templates/dashboard/(main)/boards/[id]/page.tsx +237 -0
  1303. package/dist/templates/projects/productivity/templates/dashboard/(main)/boards/create/page.tsx +237 -0
  1304. package/dist/templates/projects/productivity/templates/dashboard/(main)/boards/page.tsx +336 -0
  1305. package/dist/templates/projects/productivity/templates/dashboard/(main)/layout.tsx +32 -0
  1306. package/dist/templates/projects/productivity/templates/dashboard/(main)/page.tsx +593 -0
  1307. package/dist/templates/projects/productivity/templates/shared/ProductivityMobileNav.tsx +411 -0
  1308. package/dist/templates/projects/productivity/templates/shared/ProductivitySidebar.tsx +539 -0
  1309. package/dist/templates/projects/productivity/templates/shared/ProductivityTopBar.tsx +318 -0
  1310. package/dist/templates/projects/productivity/tests/cypress/e2e/ui/boards/boards-owner.cy.ts +349 -0
  1311. package/dist/templates/projects/productivity/tests/cypress/e2e/ui/cards/cards-modal.cy.ts +369 -0
  1312. package/dist/templates/projects/productivity/tests/cypress/e2e/ui/kanban/kanban-cards.cy.ts +280 -0
  1313. package/dist/templates/projects/productivity/tests/cypress/e2e/ui/kanban/kanban-columns.cy.ts +243 -0
  1314. package/dist/templates/projects/productivity/tests/cypress/fixtures/blocks.json +9 -0
  1315. package/dist/templates/projects/productivity/tests/cypress/fixtures/entities.json +60 -0
  1316. package/dist/templates/projects/productivity/tests/cypress/src/components/BoardsPOM.ts +353 -0
  1317. package/dist/templates/projects/productivity/tests/cypress/src/components/CardsPOM.ts +383 -0
  1318. package/dist/templates/projects/productivity/tests/cypress/src/components/KanbanPOM.ts +399 -0
  1319. package/dist/templates/projects/productivity/tests/cypress/src/components/index.ts +9 -0
  1320. package/dist/templates/projects/productivity/tests/cypress/src/controllers/BoardsAPIController.js +302 -0
  1321. package/dist/templates/projects/productivity/tests/cypress/src/controllers/CardsAPIController.js +406 -0
  1322. package/dist/templates/projects/productivity/tests/cypress/src/controllers/ListsAPIController.js +299 -0
  1323. package/dist/templates/projects/productivity/tests/cypress/src/index.ts +25 -0
  1324. package/dist/templates/projects/productivity/tests/cypress/src/selectors.ts +50 -0
  1325. package/dist/templates/projects/productivity/tests/cypress/src/session-helpers.ts +176 -0
  1326. package/dist/templates/projects/productivity/tests/cypress/support/e2e.ts +90 -0
  1327. package/dist/templates/projects/productivity/tests/cypress.config.ts +149 -0
  1328. package/dist/templates/projects/productivity/tests/tsconfig.json +7 -0
  1329. package/dist/templates/projects/starter/blocks/cta-section/config.ts +10 -0
  1330. package/dist/templates/projects/starter/blocks/features-grid/config.ts +10 -0
  1331. package/dist/templates/projects/starter/blocks/hero/config.ts +10 -0
  1332. package/dist/templates/projects/starter/blocks/testimonials/config.ts +10 -0
  1333. package/dist/templates/projects/starter/blocks/text-content/config.ts +10 -0
  1334. package/dist/templates/projects/starter/emails/_README.md +69 -0
  1335. package/dist/templates/projects/starter/entities/pages/pages.config.ts +95 -0
  1336. package/dist/templates/projects/starter/entities/posts/posts.config.ts +102 -0
  1337. package/dist/templates/projects/starter/entities/tasks/tasks.config.ts +82 -0
  1338. package/dist/templates/projects/starter/styles/globals.css +213 -0
  1339. package/dist/templates/projects/starter/templates/(public)/page.tsx +49 -0
  1340. package/dist/templates/projects/starter/tests/cypress/e2e/_utils/docs/README.md +215 -0
  1341. package/dist/templates/projects/starter/tests/cypress/e2e/_utils/selectors/block-editor.bdd.md +491 -0
  1342. package/dist/templates/projects/starter/tests/cypress/e2e/_utils/selectors/dashboard-navigation.bdd.md +147 -0
  1343. package/dist/templates/projects/starter/tests/cypress/e2e/_utils/selectors/dashboard-sidebar.bdd.md +76 -0
  1344. package/dist/templates/projects/starter/tests/cypress/e2e/_utils/selectors/dashboard-topnav.bdd.md +326 -0
  1345. package/dist/templates/projects/starter/tests/cypress/e2e/_utils/selectors/patterns.bdd.md +388 -0
  1346. package/dist/templates/projects/starter/tests/cypress/e2e/_utils/selectors/settings-api-keys.bdd.md +266 -0
  1347. package/dist/templates/projects/starter/tests/cypress/e2e/_utils/selectors/settings-billing.bdd.md +78 -0
  1348. package/dist/templates/projects/starter/tests/cypress/e2e/_utils/selectors/settings-layout.bdd.md +129 -0
  1349. package/dist/templates/projects/starter/tests/cypress/e2e/_utils/selectors/settings-password.bdd.md +82 -0
  1350. package/dist/templates/projects/starter/tests/cypress/e2e/_utils/selectors/settings-profile.bdd.md +77 -0
  1351. package/dist/templates/projects/starter/tests/cypress/e2e/_utils/selectors/settings-teams.bdd.md +130 -0
  1352. package/dist/templates/projects/starter/tests/cypress/e2e/_utils/selectors/superadmin.bdd.md +261 -0
  1353. package/dist/templates/projects/starter/tests/cypress/e2e/_utils/selectors/tasks.bdd.md +593 -0
  1354. package/dist/templates/projects/starter/tests/cypress/e2e/_utils/selectors/teams.bdd.md +278 -0
  1355. package/dist/templates/projects/starter/tests/cypress/src/session-helpers.ts +548 -0
  1356. package/dist/templates/projects/starter/tests/cypress.config.ts +215 -0
  1357. package/dist/templates/projects/starter/tests/jest/example.test.tsx +87 -0
  1358. package/dist/templates/projects/starter/tests/jest/jest.config.cjs +92 -0
  1359. package/dist/templates/projects/starter/tests/jest/services/tasks.service.test.ts +547 -0
  1360. package/dist/templates/projects/starter/tests/jest/tsconfig.jest.json +8 -0
  1361. package/dist/templates/projects/starter/tests/tsconfig.json +7 -0
  1362. package/dist/templates/proxy.ts +366 -107
  1363. package/dist/templates/public/uploads/README.md +1 -1
  1364. package/dist/templates/scripts/cy-run-prod.cjs +6 -34
  1365. package/dist/templates/tsconfig.cypress.json +4 -5
  1366. package/dist/templates/tsconfig.json +8 -16
  1367. package/dist/types/api-presets.d.ts +2 -2
  1368. package/dist/types/blocks.d.ts +15 -18
  1369. package/dist/types/blocks.d.ts.map +1 -1
  1370. package/dist/types/blocks.js +1 -8
  1371. package/dist/types/index.d.ts +2 -0
  1372. package/dist/types/index.d.ts.map +1 -1
  1373. package/dist/types/index.js +3 -0
  1374. package/dist/types/plugin.d.ts +40 -0
  1375. package/dist/types/plugin.d.ts.map +1 -1
  1376. package/dist/types/plugin.js +23 -0
  1377. package/dist/types/theme.d.ts +0 -25
  1378. package/dist/types/theme.d.ts.map +1 -1
  1379. package/dist/types/user.types.d.ts +3 -3
  1380. package/dist/types/user.types.d.ts.map +1 -1
  1381. package/dist/types/user.types.js +6 -6
  1382. package/globals.css +5 -7
  1383. package/migrations/028_api_audit_log_insert_policy.sql +18 -0
  1384. package/migrations/090_sample_data.sql +2 -2
  1385. package/migrations/README.md +7 -7
  1386. package/package.json +22 -20
  1387. package/scripts/build/auth-readiness-load.mjs +57 -0
  1388. package/scripts/build/auth-readiness.mjs +210 -0
  1389. package/scripts/build/config-loader.mjs +36 -60
  1390. package/scripts/build/docs-registry.mjs +6 -84
  1391. package/scripts/build/mobile-boundary.mjs +525 -0
  1392. package/scripts/build/registry/__tests__/api-docs-colocated.test.mjs +105 -0
  1393. package/scripts/build/registry/__tests__/billing-registry.test.mjs +8 -4
  1394. package/scripts/build/registry/__tests__/block-registry.test.mjs +101 -5
  1395. package/scripts/build/registry/__tests__/build-output.test.mjs +12 -87
  1396. package/scripts/build/registry/__tests__/config-loader-root-first.test.mjs +33 -0
  1397. package/scripts/build/registry/__tests__/icons-discovery.test.mjs +99 -29
  1398. package/scripts/build/registry/__tests__/mcp-registry.test.mjs +6 -6
  1399. package/scripts/build/registry/__tests__/packaged-plugin-discovery.test.mjs +42 -0
  1400. package/scripts/build/registry/__tests__/plugin-capabilities.test.mjs +1030 -0
  1401. package/scripts/build/registry/__tests__/plugin-registry-types.test.mjs +69 -0
  1402. package/scripts/build/registry/__tests__/project-mode-root-first.test.mjs +175 -0
  1403. package/scripts/build/registry/__tests__/safe-fs.test.mjs +5 -29
  1404. package/scripts/build/registry/__tests__/scheduled-actions-registry.test.mjs +2 -2
  1405. package/scripts/build/registry/__tests__/theme-registry.test.mjs +117 -0
  1406. package/scripts/build/registry/__tests__/translation-registry-root-first.test.mjs +38 -0
  1407. package/scripts/build/registry/__tests__/write-places.test.mjs +52 -119
  1408. package/scripts/build/registry/config.mjs +29 -167
  1409. package/scripts/build/registry/contracts/README.md +120 -0
  1410. package/scripts/build/registry/contracts/__tests__/contracts-wire.test.mjs +168 -0
  1411. package/scripts/build/registry/contracts/__tests__/contracts.test.mjs +590 -0
  1412. package/scripts/build/registry/contracts/index.mjs +162 -0
  1413. package/scripts/build/registry/contracts/portable.mjs +58 -0
  1414. package/scripts/build/registry/contracts/publish.mjs +191 -0
  1415. package/scripts/build/registry/contracts/read-columns.mjs +96 -0
  1416. package/scripts/build/registry/contracts/read-entities.mjs +418 -0
  1417. package/scripts/build/registry/contracts/render.mjs +341 -0
  1418. package/scripts/build/registry/discovery/all-entities.mjs +57 -0
  1419. package/scripts/build/registry/discovery/api-presets.mjs +23 -46
  1420. package/scripts/build/registry/discovery/auth.mjs +3 -4
  1421. package/scripts/build/registry/discovery/blocks.mjs +126 -17
  1422. package/scripts/build/registry/discovery/core-routes.mjs +23 -73
  1423. package/scripts/build/registry/discovery/emails.mjs +14 -19
  1424. package/scripts/build/registry/discovery/entities.mjs +14 -18
  1425. package/scripts/build/registry/discovery/icons.mjs +6 -15
  1426. package/scripts/build/registry/discovery/index.mjs +0 -1
  1427. package/scripts/build/registry/discovery/mcp-overrides.mjs +6 -12
  1428. package/scripts/build/registry/discovery/mcp-overrides.test.mjs +24 -63
  1429. package/scripts/build/registry/discovery/middlewares.mjs +21 -82
  1430. package/scripts/build/registry/discovery/parent-child.mjs +2 -6
  1431. package/scripts/build/registry/discovery/permissions.mjs +8 -13
  1432. package/scripts/build/registry/discovery/plugin-capabilities.mjs +912 -0
  1433. package/scripts/build/registry/discovery/plugins.mjs +55 -90
  1434. package/scripts/build/registry/discovery/themes.mjs +79 -385
  1435. package/scripts/build/registry/generators/api-presets-registry.mjs +4 -4
  1436. package/scripts/build/registry/generators/billing-registry.mjs +17 -40
  1437. package/scripts/build/registry/generators/block-registry.mjs +42 -3
  1438. package/scripts/build/registry/generators/docs-registry.mjs +11 -30
  1439. package/scripts/build/registry/generators/email-registry.mjs +4 -4
  1440. package/scripts/build/registry/generators/entity-registry.mjs +3 -3
  1441. package/scripts/build/registry/generators/feature-registry.mjs +5 -7
  1442. package/scripts/build/registry/generators/index.mjs +2 -2
  1443. package/scripts/build/registry/generators/middleware-registry.mjs +2 -2
  1444. package/scripts/build/registry/generators/permissions-registry.mjs +5 -11
  1445. package/scripts/build/registry/generators/plugin-catalog.mjs +73 -0
  1446. package/scripts/build/registry/generators/plugin-registry.mjs +3 -1
  1447. package/scripts/build/registry/generators/route-handlers.mjs +11 -105
  1448. package/scripts/build/registry/generators/theme-registry.mjs +170 -1
  1449. package/scripts/build/registry/generators/translation-registry.mjs +37 -71
  1450. package/scripts/build/registry/generators/unified-registry.mjs +4 -10
  1451. package/scripts/build/registry/host/README.md +296 -0
  1452. package/scripts/build/registry/host/__tests__/diag-write-child.mjs +6 -0
  1453. package/scripts/build/registry/host/__tests__/facade-emitter.test.mjs +659 -0
  1454. package/scripts/build/registry/host/__tests__/host-area-access.test.mjs +278 -0
  1455. package/scripts/build/registry/host/__tests__/host-composition.test.mjs +286 -0
  1456. package/scripts/build/registry/host/__tests__/host-entities.test.mjs +886 -0
  1457. package/scripts/build/registry/host/__tests__/host-generation.test.mjs +382 -0
  1458. package/scripts/build/registry/host/__tests__/host-helpers.mjs +88 -0
  1459. package/scripts/build/registry/host/__tests__/host-mode.test.mjs +153 -0
  1460. package/scripts/build/registry/host/__tests__/host-plan.test.mjs +362 -0
  1461. package/scripts/build/registry/host/__tests__/host-project-composition.test.mjs +269 -0
  1462. package/scripts/build/registry/host/__tests__/host-project.test.mjs +80 -0
  1463. package/scripts/build/registry/host/__tests__/host-proxy-areas.test.mjs +69 -0
  1464. package/scripts/build/registry/host/__tests__/host-robustness.test.mjs +525 -0
  1465. package/scripts/build/registry/host/__tests__/host-watch.test.mjs +162 -0
  1466. package/scripts/build/registry/host/__tests__/lock-race-child.mjs +19 -0
  1467. package/scripts/build/registry/host/__tests__/publish-crash-child.mjs +6 -0
  1468. package/scripts/build/registry/host/__tests__/static-imports.test.mjs +254 -0
  1469. package/scripts/build/registry/host/core-routes.mjs +307 -0
  1470. package/scripts/build/registry/host/entity-routes.mjs +392 -0
  1471. package/scripts/build/registry/host/facade-emitter.mjs +666 -0
  1472. package/scripts/build/registry/host/generation.mjs +723 -0
  1473. package/scripts/build/registry/host/mode.mjs +57 -0
  1474. package/scripts/build/registry/host/next-literal.mjs +87 -0
  1475. package/scripts/build/registry/host/next-route-exports.json +366 -0
  1476. package/scripts/build/registry/host/plan.mjs +668 -0
  1477. package/scripts/build/registry/host/prepare-cli.mjs +191 -0
  1478. package/scripts/build/registry/host/prepare.mjs +722 -0
  1479. package/scripts/build/registry/host/proxy-areas.mjs +56 -0
  1480. package/scripts/build/registry/host/render.mjs +437 -0
  1481. package/scripts/build/registry/host/static-imports.mjs +317 -0
  1482. package/scripts/build/registry/host/webhooks.mjs +93 -0
  1483. package/scripts/build/registry/index.mjs +4 -13
  1484. package/scripts/build/registry/post-build/index.mjs +1 -8
  1485. package/scripts/build/registry/post-build/own-gitignores.mjs +3 -4
  1486. package/scripts/build/registry/post-build/test-fixtures.mjs +20 -30
  1487. package/scripts/build/registry/post-build/tree-display.mjs +6 -6
  1488. package/scripts/build/registry/project-mode.mjs +224 -51
  1489. package/scripts/build/registry/validate-env.test.mjs +4 -89
  1490. package/scripts/build/registry/validation/entity-validator.mjs +5 -6
  1491. package/scripts/build/registry/write-places.mjs +34 -79
  1492. package/scripts/build/registry.mjs +54 -143
  1493. package/scripts/build/routes-manifest.mjs +214 -0
  1494. package/scripts/build/safe-fs.mjs +1 -2
  1495. package/scripts/build/update-tsconfig.mjs +26 -204
  1496. package/scripts/create-plugin.mjs +10 -8
  1497. package/scripts/create-theme.mjs +2 -305
  1498. package/scripts/db/run-migrations.mjs +24 -86
  1499. package/scripts/db/theme-location.mjs +23 -44
  1500. package/scripts/db/verify-theme-migrations.mjs +16 -5
  1501. package/scripts/deploy/vercel-deploy.mjs +8 -10
  1502. package/scripts/dev/watch-plugins.mjs +39 -130
  1503. package/scripts/maintenance/core-updater.mjs +29 -36
  1504. package/scripts/maintenance/step-guard.mjs +1 -1
  1505. package/scripts/postinstall.mjs +25 -43
  1506. package/scripts/setup/setup-ci.mjs +2 -3
  1507. package/scripts/test/build-entities.mjs +27 -107
  1508. package/scripts/test/cy.mjs +29 -125
  1509. package/scripts/test/jest.mjs +22 -50
  1510. package/scripts/update-registry-imports.mjs +0 -1
  1511. package/scripts/validation/check-imports.sh +33 -213
  1512. package/src/lib/entities/portable/media-ref.ts +24 -0
  1513. package/src/lib/entities/portable/response-shape.ts +80 -0
  1514. package/src/lib/entities/portable/schema-generator.ts +965 -0
  1515. package/src/lib/entities/portable/system-fields.ts +11 -0
  1516. package/src/lib/entities/portable/types.ts +71 -0
  1517. package/templates/blocks/README.md +6 -12
  1518. package/templates/blocks/cta-section/config.ts +0 -1
  1519. package/templates/blocks/cta-section/thumbnail.png +0 -0
  1520. package/templates/blocks/features-grid/config.ts +0 -1
  1521. package/templates/blocks/features-grid/thumbnail.png +0 -0
  1522. package/templates/blocks/hero/config.ts +0 -1
  1523. package/templates/blocks/hero/thumbnail.png +0 -0
  1524. package/templates/blocks/testimonials/config.ts +0 -1
  1525. package/templates/blocks/testimonials/thumbnail.png +0 -0
  1526. package/templates/blocks/text-content/config.ts +0 -1
  1527. package/templates/blocks/text-content/thumbnail.png +0 -0
  1528. package/templates/ci-workflows/README.md +4 -5
  1529. package/templates/ci-workflows/github/cypress-regression.yml +7 -14
  1530. package/templates/ci-workflows/github/cypress-smoke.yml +3 -5
  1531. package/templates/eslint.config.mjs +3 -3
  1532. package/templates/features/blog/blocks/post-content/config.ts +0 -1
  1533. package/templates/features/blog/entities/posts/posts.config.ts +1 -1
  1534. package/templates/features/pages/blocks/hero/config.ts +0 -1
  1535. package/templates/features/pages/entities/pages/pages.config.ts +1 -1
  1536. package/templates/instrumentation.ts +9 -0
  1537. package/templates/migrations/README.md +2 -2
  1538. package/templates/next.config.mjs +34 -8
  1539. package/templates/plugins/README.md +42 -0
  1540. package/templates/plugins/starter/plugin/README.md.template +97 -0
  1541. package/templates/plugins/starter/plugin/api/example/route.ts.template +94 -0
  1542. package/templates/plugins/starter/plugin/hooks/usePlugin.ts.template +102 -0
  1543. package/templates/pnpm-workspace.yaml +3 -5
  1544. package/templates/projects/blog/README.md +62 -0
  1545. package/templates/projects/blog/about.md +93 -0
  1546. package/templates/projects/blog/api/authors/[username]/route.ts +153 -0
  1547. package/templates/projects/blog/api/authors/docs.md +135 -0
  1548. package/templates/projects/blog/api/authors/presets.ts +45 -0
  1549. package/templates/projects/blog/api/authors/route.ts +66 -0
  1550. package/templates/projects/blog/api/posts/public/docs.md +124 -0
  1551. package/templates/projects/blog/api/posts/public/presets.ts +65 -0
  1552. package/templates/projects/blog/api/posts/public/route.ts +154 -0
  1553. package/templates/projects/blog/components/ExportPostsButton.tsx +103 -0
  1554. package/templates/projects/blog/components/ImportPostsDialog.tsx +285 -0
  1555. package/templates/projects/blog/components/PostsToolbar.tsx +24 -0
  1556. package/templates/projects/blog/components/editor/FeaturedImageUpload.tsx +186 -0
  1557. package/templates/projects/blog/components/editor/WysiwygEditor.tsx +389 -0
  1558. package/templates/projects/blog/components/index.ts +4 -0
  1559. package/templates/projects/blog/components/public/AuthorBio.tsx +106 -0
  1560. package/templates/projects/blog/components/public/AuthorCard.tsx +131 -0
  1561. package/templates/projects/blog/components/public/BlogFooter.tsx +186 -0
  1562. package/templates/projects/blog/components/public/BlogNavbar.tsx +201 -0
  1563. package/templates/projects/blog/components/public/PostCard.tsx +307 -0
  1564. package/templates/projects/blog/components/public/ReadingProgress.tsx +70 -0
  1565. package/templates/projects/blog/components/public/RelatedPosts.tsx +79 -0
  1566. package/templates/projects/blog/config/app.config.ts +193 -0
  1567. package/templates/projects/blog/config/billing.config.ts +143 -0
  1568. package/templates/projects/blog/config/dashboard.config.ts +346 -0
  1569. package/templates/projects/blog/config/dev.config.ts +48 -0
  1570. package/templates/projects/blog/config/features.config.ts +196 -0
  1571. package/templates/projects/blog/config/flows.config.ts +333 -0
  1572. package/templates/projects/blog/config/permissions.config.ts +112 -0
  1573. package/templates/projects/blog/config/theme.config.ts +128 -0
  1574. package/templates/projects/blog/entities/categories/api/docs.md +119 -0
  1575. package/templates/projects/blog/entities/categories/api/presets.ts +67 -0
  1576. package/templates/projects/blog/entities/categories/categories.config.ts +60 -0
  1577. package/templates/projects/blog/entities/categories/categories.fields.ts +115 -0
  1578. package/templates/projects/blog/entities/categories/categories.service.ts +333 -0
  1579. package/templates/projects/blog/entities/categories/categories.types.ts +58 -0
  1580. package/templates/projects/blog/entities/categories/messages/en.json +33 -0
  1581. package/templates/projects/blog/entities/categories/messages/es.json +33 -0
  1582. package/templates/projects/blog/entities/posts/api/docs.md +174 -0
  1583. package/templates/projects/blog/entities/posts/api/presets.ts +137 -0
  1584. package/templates/projects/blog/entities/posts/messages/en.json +100 -0
  1585. package/templates/projects/blog/entities/posts/messages/es.json +100 -0
  1586. package/templates/projects/blog/entities/posts/migrations/001_posts_table.sql +110 -0
  1587. package/templates/projects/blog/entities/posts/migrations/002_add_featured.sql +19 -0
  1588. package/templates/projects/blog/entities/posts/migrations/003_post_categories_pivot.sql +47 -0
  1589. package/templates/projects/blog/entities/posts/posts.config.ts +61 -0
  1590. package/templates/projects/blog/entities/posts/posts.fields.ts +234 -0
  1591. package/templates/projects/blog/entities/posts/posts.service.ts +464 -0
  1592. package/templates/projects/blog/entities/posts/posts.types.ts +80 -0
  1593. package/templates/projects/blog/lib/sanitize-post-html.ts +52 -0
  1594. package/templates/projects/blog/lib/selectors.ts +178 -0
  1595. package/templates/projects/blog/messages/en.json +113 -0
  1596. package/templates/projects/blog/messages/es.json +113 -0
  1597. package/templates/projects/blog/migrations/002_author_profile_fields.sql +37 -0
  1598. package/templates/projects/blog/migrations/003_categories_table.sql +90 -0
  1599. package/templates/projects/blog/migrations/090_billing_sample_data.sql +99 -0
  1600. package/templates/projects/blog/migrations/999_sample_data.sql +412 -0
  1601. package/templates/projects/blog/migrations/999_theme_sample_data.sql +1070 -0
  1602. package/templates/projects/blog/package.json +30 -0
  1603. package/templates/projects/blog/permissions-matrix.md +63 -0
  1604. package/templates/projects/blog/styles/article.css +333 -0
  1605. package/templates/projects/blog/styles/components.css +204 -0
  1606. package/templates/projects/blog/styles/globals.css +384 -0
  1607. package/templates/projects/blog/styles/theme.css +167 -0
  1608. package/templates/projects/blog/templates/(public)/author/[username]/page.tsx +248 -0
  1609. package/templates/projects/blog/templates/(public)/authors/page.tsx +162 -0
  1610. package/templates/projects/blog/templates/(public)/layout.tsx +44 -0
  1611. package/templates/projects/blog/templates/(public)/page.tsx +277 -0
  1612. package/templates/projects/blog/templates/(public)/posts/[slug]/page.tsx +344 -0
  1613. package/templates/projects/blog/templates/dashboard/(main)/page.tsx +386 -0
  1614. package/templates/projects/blog/templates/dashboard/(main)/posts/[id]/edit/page.tsx +530 -0
  1615. package/templates/projects/blog/templates/dashboard/(main)/posts/[id]/page.tsx +33 -0
  1616. package/templates/projects/blog/templates/dashboard/(main)/posts/create/page.tsx +354 -0
  1617. package/templates/projects/blog/templates/dashboard/(main)/posts/page.tsx +834 -0
  1618. package/templates/projects/blog/tests/cypress/e2e/README.md +170 -0
  1619. package/templates/projects/blog/tests/cypress/e2e/categories/categories-crud.cy.ts +322 -0
  1620. package/templates/projects/blog/tests/cypress/e2e/categories/categories-crud.md +73 -0
  1621. package/templates/projects/blog/tests/cypress/e2e/posts/posts-crud.cy.ts +460 -0
  1622. package/templates/projects/blog/tests/cypress/e2e/posts/posts-crud.md +115 -0
  1623. package/templates/projects/blog/tests/cypress/e2e/posts/posts-editor.cy.ts +290 -0
  1624. package/templates/projects/blog/tests/cypress/e2e/posts/posts-editor.md +139 -0
  1625. package/templates/projects/blog/tests/cypress/e2e/posts/posts-status-workflow.cy.ts +302 -0
  1626. package/templates/projects/blog/tests/cypress/e2e/posts/posts-status-workflow.md +83 -0
  1627. package/templates/projects/blog/tests/cypress/fixtures/blocks.json +9 -0
  1628. package/templates/projects/blog/tests/cypress/fixtures/entities.json +51 -0
  1629. package/templates/projects/blog/tests/cypress/src/FeaturedImageUpload.js +131 -0
  1630. package/templates/projects/blog/tests/cypress/src/PostEditor.js +386 -0
  1631. package/templates/projects/blog/tests/cypress/src/PostsList.js +350 -0
  1632. package/templates/projects/blog/tests/cypress/src/WysiwygEditor.js +373 -0
  1633. package/templates/projects/blog/tests/cypress/src/components/EntityForm.ts +378 -0
  1634. package/templates/projects/blog/tests/cypress/src/components/EntityList.ts +378 -0
  1635. package/templates/projects/blog/tests/cypress/src/components/PostEditorPOM.ts +447 -0
  1636. package/templates/projects/blog/tests/cypress/src/components/PostsPOM.ts +362 -0
  1637. package/templates/projects/blog/tests/cypress/src/components/index.ts +18 -0
  1638. package/templates/projects/blog/tests/cypress/src/index.js +33 -0
  1639. package/templates/projects/blog/tests/cypress/src/selectors.ts +49 -0
  1640. package/templates/projects/blog/tests/cypress/src/session-helpers.ts +151 -0
  1641. package/templates/projects/blog/tests/cypress/support/e2e.ts +90 -0
  1642. package/templates/projects/blog/tests/cypress.config.ts +149 -0
  1643. package/templates/projects/blog/tests/jest/__mocks__/jose.js +22 -0
  1644. package/templates/projects/blog/tests/jest/__mocks__/next-server.js +56 -0
  1645. package/templates/projects/blog/tests/jest/components/WysiwygEditor.test.tsx +118 -0
  1646. package/templates/projects/blog/tests/jest/jest.config.cjs +104 -0
  1647. package/templates/projects/blog/tests/jest/lib/sanitize-post-html.test.ts +48 -0
  1648. package/templates/projects/blog/tests/jest/setup.ts +170 -0
  1649. package/templates/projects/blog/tests/jest/tsconfig.jest.json +6 -0
  1650. package/templates/projects/blog/tests/tsconfig.json +7 -0
  1651. package/templates/projects/crm/CRM_PLAN.md +343 -0
  1652. package/templates/projects/crm/about.md +122 -0
  1653. package/templates/projects/crm/config/app.config.ts +178 -0
  1654. package/templates/projects/crm/config/billing.config.ts +184 -0
  1655. package/templates/projects/crm/config/dashboard.config.ts +385 -0
  1656. package/templates/projects/crm/config/dev.config.ts +55 -0
  1657. package/templates/projects/crm/config/features.config.ts +336 -0
  1658. package/templates/projects/crm/config/flows.config.ts +511 -0
  1659. package/templates/projects/crm/config/permissions.config.ts +308 -0
  1660. package/templates/projects/crm/config/theme.config.ts +111 -0
  1661. package/templates/projects/crm/entities/activities/activities.config.ts +61 -0
  1662. package/templates/projects/crm/entities/activities/activities.fields.ts +362 -0
  1663. package/templates/projects/crm/entities/activities/activities.service.ts +503 -0
  1664. package/templates/projects/crm/entities/activities/activities.types.ts +117 -0
  1665. package/templates/projects/crm/entities/activities/api/docs.md +146 -0
  1666. package/templates/projects/crm/entities/activities/api/presets.ts +132 -0
  1667. package/templates/projects/crm/entities/activities/messages/en.json +123 -0
  1668. package/templates/projects/crm/entities/activities/messages/es.json +123 -0
  1669. package/templates/projects/crm/entities/activities/migrations/020_activities_table.sql +123 -0
  1670. package/templates/projects/crm/entities/activities/migrations/021_activities_metas.sql +114 -0
  1671. package/templates/projects/crm/entities/activities/migrations/022_activities_sample_data.sql +420 -0
  1672. package/templates/projects/crm/entities/campaigns/api/docs.md +140 -0
  1673. package/templates/projects/crm/entities/campaigns/api/presets.ts +147 -0
  1674. package/templates/projects/crm/entities/campaigns/campaigns.config.ts +61 -0
  1675. package/templates/projects/crm/entities/campaigns/campaigns.fields.ts +413 -0
  1676. package/templates/projects/crm/entities/campaigns/campaigns.service.ts +426 -0
  1677. package/templates/projects/crm/entities/campaigns/campaigns.types.ts +124 -0
  1678. package/templates/projects/crm/entities/campaigns/messages/en.json +145 -0
  1679. package/templates/projects/crm/entities/campaigns/messages/es.json +145 -0
  1680. package/templates/projects/crm/entities/campaigns/migrations/001_campaigns_table.sql +127 -0
  1681. package/templates/projects/crm/entities/campaigns/migrations/002_campaigns_metas.sql +114 -0
  1682. package/templates/projects/crm/entities/campaigns/migrations/003_campaigns_sample_data.sql +364 -0
  1683. package/templates/projects/crm/entities/companies/api/docs.md +139 -0
  1684. package/templates/projects/crm/entities/companies/api/presets.ts +107 -0
  1685. package/templates/projects/crm/entities/companies/companies.config.ts +61 -0
  1686. package/templates/projects/crm/entities/companies/companies.fields.ts +429 -0
  1687. package/templates/projects/crm/entities/companies/companies.service.ts +566 -0
  1688. package/templates/projects/crm/entities/companies/companies.types.ts +125 -0
  1689. package/templates/projects/crm/entities/companies/messages/en.json +146 -0
  1690. package/templates/projects/crm/entities/companies/messages/es.json +146 -0
  1691. package/templates/projects/crm/entities/companies/migrations/001_companies_table.sql +150 -0
  1692. package/templates/projects/crm/entities/companies/migrations/002_companies_metas.sql +114 -0
  1693. package/templates/projects/crm/entities/companies/migrations/003_companies_sample_data.sql +246 -0
  1694. package/templates/projects/crm/entities/contacts/api/docs.md +139 -0
  1695. package/templates/projects/crm/entities/contacts/api/presets.ts +98 -0
  1696. package/templates/projects/crm/entities/contacts/contacts.config.ts +61 -0
  1697. package/templates/projects/crm/entities/contacts/contacts.fields.ts +359 -0
  1698. package/templates/projects/crm/entities/contacts/contacts.service.ts +509 -0
  1699. package/templates/projects/crm/entities/contacts/contacts.types.ts +108 -0
  1700. package/templates/projects/crm/entities/contacts/messages/en.json +117 -0
  1701. package/templates/projects/crm/entities/contacts/messages/es.json +117 -0
  1702. package/templates/projects/crm/entities/contacts/migrations/001_contacts_table.sql +134 -0
  1703. package/templates/projects/crm/entities/contacts/migrations/002_contacts_metas.sql +114 -0
  1704. package/templates/projects/crm/entities/contacts/migrations/003_contacts_sample_data.sql +421 -0
  1705. package/templates/projects/crm/entities/leads/api/docs.md +132 -0
  1706. package/templates/projects/crm/entities/leads/api/presets.ts +109 -0
  1707. package/templates/projects/crm/entities/leads/leads.config.ts +61 -0
  1708. package/templates/projects/crm/entities/leads/leads.fields.ts +336 -0
  1709. package/templates/projects/crm/entities/leads/leads.service.ts +496 -0
  1710. package/templates/projects/crm/entities/leads/leads.types.ts +114 -0
  1711. package/templates/projects/crm/entities/leads/messages/en.json +132 -0
  1712. package/templates/projects/crm/entities/leads/messages/es.json +132 -0
  1713. package/templates/projects/crm/entities/leads/migrations/001_leads_table.sql +150 -0
  1714. package/templates/projects/crm/entities/leads/migrations/002_leads_metas.sql +120 -0
  1715. package/templates/projects/crm/entities/leads/migrations/003_leads_sample_data.sql +242 -0
  1716. package/templates/projects/crm/entities/notes/api/docs.md +135 -0
  1717. package/templates/projects/crm/entities/notes/api/presets.ts +115 -0
  1718. package/templates/projects/crm/entities/notes/messages/en.json +114 -0
  1719. package/templates/projects/crm/entities/notes/messages/es.json +114 -0
  1720. package/templates/projects/crm/entities/notes/migrations/020_notes_table.sql +118 -0
  1721. package/templates/projects/crm/entities/notes/migrations/021_notes_metas.sql +114 -0
  1722. package/templates/projects/crm/entities/notes/migrations/022_notes_sample_data.sql +275 -0
  1723. package/templates/projects/crm/entities/notes/notes.config.ts +61 -0
  1724. package/templates/projects/crm/entities/notes/notes.fields.ts +283 -0
  1725. package/templates/projects/crm/entities/notes/notes.service.ts +320 -0
  1726. package/templates/projects/crm/entities/notes/notes.types.ts +102 -0
  1727. package/templates/projects/crm/entities/opportunities/api/docs.md +151 -0
  1728. package/templates/projects/crm/entities/opportunities/api/presets.ts +151 -0
  1729. package/templates/projects/crm/entities/opportunities/messages/en.json +107 -0
  1730. package/templates/projects/crm/entities/opportunities/messages/es.json +107 -0
  1731. package/templates/projects/crm/entities/opportunities/migrations/010_opportunities_table.sql +145 -0
  1732. package/templates/projects/crm/entities/opportunities/migrations/011_opportunities_metas.sql +114 -0
  1733. package/templates/projects/crm/entities/opportunities/migrations/012_opportunities_sample_data.sql +438 -0
  1734. package/templates/projects/crm/entities/opportunities/opportunities.config.ts +61 -0
  1735. package/templates/projects/crm/entities/opportunities/opportunities.fields.ts +416 -0
  1736. package/templates/projects/crm/entities/opportunities/opportunities.service.ts +525 -0
  1737. package/templates/projects/crm/entities/opportunities/opportunities.types.ts +135 -0
  1738. package/templates/projects/crm/entities/pipelines/api/docs.md +145 -0
  1739. package/templates/projects/crm/entities/pipelines/api/presets.ts +118 -0
  1740. package/templates/projects/crm/entities/pipelines/messages/en.json +115 -0
  1741. package/templates/projects/crm/entities/pipelines/messages/es.json +115 -0
  1742. package/templates/projects/crm/entities/pipelines/migrations/001_pipelines_table.sql +106 -0
  1743. package/templates/projects/crm/entities/pipelines/migrations/002_pipelines_metas.sql +114 -0
  1744. package/templates/projects/crm/entities/pipelines/migrations/003_pipelines_sample_data.sql +91 -0
  1745. package/templates/projects/crm/entities/pipelines/pipelines.config.ts +62 -0
  1746. package/templates/projects/crm/entities/pipelines/pipelines.fields.ts +193 -0
  1747. package/templates/projects/crm/entities/pipelines/pipelines.service.ts +383 -0
  1748. package/templates/projects/crm/entities/pipelines/pipelines.types.ts +78 -0
  1749. package/templates/projects/crm/entities/products/api/docs.md +137 -0
  1750. package/templates/projects/crm/entities/products/api/presets.ts +132 -0
  1751. package/templates/projects/crm/entities/products/messages/en.json +135 -0
  1752. package/templates/projects/crm/entities/products/messages/es.json +135 -0
  1753. package/templates/projects/crm/entities/products/migrations/001_products_table.sql +117 -0
  1754. package/templates/projects/crm/entities/products/migrations/002_products_metas.sql +114 -0
  1755. package/templates/projects/crm/entities/products/migrations/003_products_sample_data.sql +247 -0
  1756. package/templates/projects/crm/entities/products/products.config.ts +62 -0
  1757. package/templates/projects/crm/entities/products/products.fields.ts +361 -0
  1758. package/templates/projects/crm/entities/products/products.service.ts +437 -0
  1759. package/templates/projects/crm/entities/products/products.types.ts +125 -0
  1760. package/templates/projects/crm/lib/crm-constants.ts +77 -0
  1761. package/templates/projects/crm/lib/crm-utils.ts +185 -0
  1762. package/templates/projects/crm/lib/selectors.ts +332 -0
  1763. package/templates/projects/crm/messages/en.json +131 -0
  1764. package/templates/projects/crm/messages/es.json +131 -0
  1765. package/templates/projects/crm/migrations/090_billing_sample_data.sql +99 -0
  1766. package/templates/projects/crm/migrations/999_theme_sample_data.sql +473 -0
  1767. package/templates/projects/crm/package.json +26 -0
  1768. package/templates/projects/crm/pendings.md +204 -0
  1769. package/templates/projects/crm/permissions-matrix.md +216 -0
  1770. package/templates/projects/crm/styles/components.css +414 -0
  1771. package/templates/projects/crm/styles/crm-theme.css +358 -0
  1772. package/templates/projects/crm/styles/globals.css +624 -0
  1773. package/templates/projects/crm/styles/variables.css +111 -0
  1774. package/templates/projects/crm/templates/dashboard/(main)/activities/components/ActivityCard.tsx +169 -0
  1775. package/templates/projects/crm/templates/dashboard/(main)/activities/components/ActivityTimeline.tsx +165 -0
  1776. package/templates/projects/crm/templates/dashboard/(main)/activities/page.tsx +297 -0
  1777. package/templates/projects/crm/templates/dashboard/(main)/campaigns/page.tsx +373 -0
  1778. package/templates/projects/crm/templates/dashboard/(main)/companies/page.tsx +296 -0
  1779. package/templates/projects/crm/templates/dashboard/(main)/contacts/page.tsx +347 -0
  1780. package/templates/projects/crm/templates/dashboard/(main)/layout.tsx +98 -0
  1781. package/templates/projects/crm/templates/dashboard/(main)/leads/page.tsx +335 -0
  1782. package/templates/projects/crm/templates/dashboard/(main)/opportunities/[id]/edit/page.tsx +95 -0
  1783. package/templates/projects/crm/templates/dashboard/(main)/opportunities/create/page.tsx +94 -0
  1784. package/templates/projects/crm/templates/dashboard/(main)/opportunities/page.tsx +350 -0
  1785. package/templates/projects/crm/templates/dashboard/(main)/pipelines/[id]/edit/page.tsx +95 -0
  1786. package/templates/projects/crm/templates/dashboard/(main)/pipelines/[id]/page.tsx +143 -0
  1787. package/templates/projects/crm/templates/dashboard/(main)/pipelines/create/page.tsx +94 -0
  1788. package/templates/projects/crm/templates/dashboard/(main)/pipelines/page.tsx +235 -0
  1789. package/templates/projects/crm/templates/dashboard/(main)/products/[id]/edit/page.tsx +97 -0
  1790. package/templates/projects/crm/templates/dashboard/(main)/products/[id]/page.tsx +510 -0
  1791. package/templates/projects/crm/templates/dashboard/(main)/products/create/page.tsx +96 -0
  1792. package/templates/projects/crm/templates/dashboard/(main)/products/page.tsx +308 -0
  1793. package/templates/projects/crm/templates/shared/ActionButtons.tsx +41 -0
  1794. package/templates/projects/crm/templates/shared/CRMDashboard.tsx +519 -0
  1795. package/templates/projects/crm/templates/shared/CRMDataTable.tsx +441 -0
  1796. package/templates/projects/crm/templates/shared/CRMMetricCard.tsx +76 -0
  1797. package/templates/projects/crm/templates/shared/CRMMobileNav.tsx +172 -0
  1798. package/templates/projects/crm/templates/shared/CRMSidebar.tsx +347 -0
  1799. package/templates/projects/crm/templates/shared/CRMTopBar.tsx +266 -0
  1800. package/templates/projects/crm/templates/shared/DealCard.tsx +123 -0
  1801. package/templates/projects/crm/templates/shared/EntityCard.tsx +58 -0
  1802. package/templates/projects/crm/templates/shared/OpportunityForm.tsx +649 -0
  1803. package/templates/projects/crm/templates/shared/PipelineForm.tsx +367 -0
  1804. package/templates/projects/crm/templates/shared/PipelineKanban.tsx +194 -0
  1805. package/templates/projects/crm/templates/shared/QuickFilters.tsx +47 -0
  1806. package/templates/projects/crm/templates/shared/StageColumn.tsx +175 -0
  1807. package/templates/projects/crm/templates/shared/StageSelect.tsx +177 -0
  1808. package/templates/projects/crm/templates/shared/StagesRepeater.tsx +317 -0
  1809. package/templates/projects/crm/templates/shared/index.ts +9 -0
  1810. package/templates/projects/crm/tests/cypress/e2e/api/activities/activities-crud.cy.ts +686 -0
  1811. package/templates/projects/crm/tests/cypress/e2e/api/campaigns/campaigns-crud.cy.ts +592 -0
  1812. package/templates/projects/crm/tests/cypress/e2e/api/companies/companies-crud.cy.ts +682 -0
  1813. package/templates/projects/crm/tests/cypress/e2e/api/contacts/contacts-crud.cy.ts +668 -0
  1814. package/templates/projects/crm/tests/cypress/e2e/api/leads/leads-crud.cy.ts +648 -0
  1815. package/templates/projects/crm/tests/cypress/e2e/api/notes/notes-crud.cy.ts +424 -0
  1816. package/templates/projects/crm/tests/cypress/e2e/api/opportunities/opportunities-crud.cy.ts +865 -0
  1817. package/templates/projects/crm/tests/cypress/e2e/api/pipelines/pipelines-crud.cy.ts +545 -0
  1818. package/templates/projects/crm/tests/cypress/e2e/api/products/products-crud.cy.ts +447 -0
  1819. package/templates/projects/crm/tests/cypress/e2e/ui/activities/activities-admin.cy.ts +268 -0
  1820. package/templates/projects/crm/tests/cypress/e2e/ui/activities/activities-member.cy.ts +257 -0
  1821. package/templates/projects/crm/tests/cypress/e2e/ui/activities/activities-owner.cy.ts +268 -0
  1822. package/templates/projects/crm/tests/cypress/e2e/ui/companies/companies-admin.cy.ts +188 -0
  1823. package/templates/projects/crm/tests/cypress/e2e/ui/companies/companies-member.cy.ts +166 -0
  1824. package/templates/projects/crm/tests/cypress/e2e/ui/companies/companies-owner.cy.ts +189 -0
  1825. package/templates/projects/crm/tests/cypress/e2e/ui/contacts/contacts-admin.cy.ts +252 -0
  1826. package/templates/projects/crm/tests/cypress/e2e/ui/contacts/contacts-member.cy.ts +224 -0
  1827. package/templates/projects/crm/tests/cypress/e2e/ui/contacts/contacts-owner.cy.ts +236 -0
  1828. package/templates/projects/crm/tests/cypress/e2e/ui/leads/leads-admin.cy.ts +286 -0
  1829. package/templates/projects/crm/tests/cypress/e2e/ui/leads/leads-member.cy.ts +193 -0
  1830. package/templates/projects/crm/tests/cypress/e2e/ui/leads/leads-owner.cy.ts +210 -0
  1831. package/templates/projects/crm/tests/cypress/e2e/ui/opportunities/opportunities-admin.cy.ts +197 -0
  1832. package/templates/projects/crm/tests/cypress/e2e/ui/opportunities/opportunities-member.cy.ts +229 -0
  1833. package/templates/projects/crm/tests/cypress/e2e/ui/opportunities/opportunities-owner.cy.ts +196 -0
  1834. package/templates/projects/crm/tests/cypress/e2e/ui/pipelines/pipelines-admin.cy.ts +320 -0
  1835. package/templates/projects/crm/tests/cypress/e2e/ui/pipelines/pipelines-member.cy.ts +262 -0
  1836. package/templates/projects/crm/tests/cypress/e2e/ui/pipelines/pipelines-owner.cy.ts +282 -0
  1837. package/templates/projects/crm/tests/cypress/fixtures/blocks.json +9 -0
  1838. package/templates/projects/crm/tests/cypress/fixtures/entities.json +240 -0
  1839. package/templates/projects/crm/tests/cypress/src/components/CRMDataTable.js +223 -0
  1840. package/templates/projects/crm/tests/cypress/src/components/CRMMobileNav.js +138 -0
  1841. package/templates/projects/crm/tests/cypress/src/components/CRMSidebar.js +145 -0
  1842. package/templates/projects/crm/tests/cypress/src/components/CRMTopBar.js +194 -0
  1843. package/templates/projects/crm/tests/cypress/src/components/DealCard.js +197 -0
  1844. package/templates/projects/crm/tests/cypress/src/components/EntityDetail.ts +290 -0
  1845. package/templates/projects/crm/tests/cypress/src/components/EntityForm.ts +357 -0
  1846. package/templates/projects/crm/tests/cypress/src/components/EntityList.ts +360 -0
  1847. package/templates/projects/crm/tests/cypress/src/components/PipelineKanban.js +204 -0
  1848. package/templates/projects/crm/tests/cypress/src/components/StageColumn.js +196 -0
  1849. package/templates/projects/crm/tests/cypress/src/components/index.js +13 -0
  1850. package/templates/projects/crm/tests/cypress/src/components/index.ts +22 -0
  1851. package/templates/projects/crm/tests/cypress/src/controllers/ActivityAPIController.ts +113 -0
  1852. package/templates/projects/crm/tests/cypress/src/controllers/BaseAPIController.ts +307 -0
  1853. package/templates/projects/crm/tests/cypress/src/controllers/CampaignAPIController.ts +114 -0
  1854. package/templates/projects/crm/tests/cypress/src/controllers/CompanyAPIController.ts +112 -0
  1855. package/templates/projects/crm/tests/cypress/src/controllers/ContactAPIController.ts +104 -0
  1856. package/templates/projects/crm/tests/cypress/src/controllers/LeadAPIController.ts +96 -0
  1857. package/templates/projects/crm/tests/cypress/src/controllers/NoteAPIController.ts +130 -0
  1858. package/templates/projects/crm/tests/cypress/src/controllers/OpportunityAPIController.ts +134 -0
  1859. package/templates/projects/crm/tests/cypress/src/controllers/PipelineAPIController.ts +116 -0
  1860. package/templates/projects/crm/tests/cypress/src/controllers/ProductAPIController.ts +113 -0
  1861. package/templates/projects/crm/tests/cypress/src/controllers/index.ts +35 -0
  1862. package/templates/projects/crm/tests/cypress/src/entities/ActivitiesPOM.ts +130 -0
  1863. package/templates/projects/crm/tests/cypress/src/entities/CompaniesPOM.ts +117 -0
  1864. package/templates/projects/crm/tests/cypress/src/entities/ContactsPOM.ts +117 -0
  1865. package/templates/projects/crm/tests/cypress/src/entities/LeadsPOM.ts +129 -0
  1866. package/templates/projects/crm/tests/cypress/src/entities/OpportunitiesPOM.ts +178 -0
  1867. package/templates/projects/crm/tests/cypress/src/entities/PipelinesPOM.ts +341 -0
  1868. package/templates/projects/crm/tests/cypress/src/entities/index.ts +31 -0
  1869. package/templates/projects/crm/tests/cypress/src/forms/OpportunityForm.js +316 -0
  1870. package/templates/projects/crm/tests/cypress/src/forms/PipelineForm.js +243 -0
  1871. package/templates/projects/crm/tests/cypress/src/forms/index.js +8 -0
  1872. package/templates/projects/crm/tests/cypress/src/index.js +22 -0
  1873. package/templates/projects/crm/tests/cypress/src/index.ts +68 -0
  1874. package/templates/projects/crm/tests/cypress/src/selectors.ts +50 -0
  1875. package/templates/projects/crm/tests/cypress/src/session-helpers.ts +176 -0
  1876. package/templates/projects/crm/tests/cypress/support/e2e.ts +90 -0
  1877. package/templates/projects/crm/tests/cypress.config.ts +149 -0
  1878. package/templates/projects/crm/tests/tsconfig.json +7 -0
  1879. package/templates/projects/productivity/README.md +73 -0
  1880. package/templates/projects/productivity/about.md +123 -0
  1881. package/templates/projects/productivity/components/CardDetailModal.tsx +318 -0
  1882. package/templates/projects/productivity/components/KanbanBoard.tsx +613 -0
  1883. package/templates/projects/productivity/components/KanbanCard.tsx +218 -0
  1884. package/templates/projects/productivity/components/KanbanColumn.tsx +264 -0
  1885. package/templates/projects/productivity/components/SortableList.tsx +46 -0
  1886. package/templates/projects/productivity/components/index.ts +4 -0
  1887. package/templates/projects/productivity/config/app.config.ts +165 -0
  1888. package/templates/projects/productivity/config/billing.config.ts +184 -0
  1889. package/templates/projects/productivity/config/dashboard.config.ts +370 -0
  1890. package/templates/projects/productivity/config/dev.config.ts +55 -0
  1891. package/templates/projects/productivity/config/features.config.ts +256 -0
  1892. package/templates/projects/productivity/config/flows.config.ts +484 -0
  1893. package/templates/projects/productivity/config/permissions.config.ts +178 -0
  1894. package/templates/projects/productivity/config/theme.config.ts +106 -0
  1895. package/templates/projects/productivity/entities/boards/api/docs.md +131 -0
  1896. package/templates/projects/productivity/entities/boards/api/presets.ts +113 -0
  1897. package/templates/projects/productivity/entities/boards/boards.config.ts +61 -0
  1898. package/templates/projects/productivity/entities/boards/boards.fields.ts +154 -0
  1899. package/templates/projects/productivity/entities/boards/boards.service.ts +256 -0
  1900. package/templates/projects/productivity/entities/boards/boards.types.ts +57 -0
  1901. package/templates/projects/productivity/entities/boards/messages/en.json +80 -0
  1902. package/templates/projects/productivity/entities/boards/messages/es.json +80 -0
  1903. package/templates/projects/productivity/entities/boards/migrations/001_boards_table.sql +83 -0
  1904. package/templates/projects/productivity/entities/cards/api/docs.md +162 -0
  1905. package/templates/projects/productivity/entities/cards/api/presets.ts +172 -0
  1906. package/templates/projects/productivity/entities/cards/cards.config.ts +61 -0
  1907. package/templates/projects/productivity/entities/cards/cards.fields.ts +242 -0
  1908. package/templates/projects/productivity/entities/cards/cards.service.ts +336 -0
  1909. package/templates/projects/productivity/entities/cards/cards.types.ts +79 -0
  1910. package/templates/projects/productivity/entities/cards/messages/en.json +114 -0
  1911. package/templates/projects/productivity/entities/cards/messages/es.json +114 -0
  1912. package/templates/projects/productivity/entities/cards/migrations/020_cards_table.sql +92 -0
  1913. package/templates/projects/productivity/entities/lists/api/docs.md +143 -0
  1914. package/templates/projects/productivity/entities/lists/api/presets.ts +81 -0
  1915. package/templates/projects/productivity/entities/lists/lists.config.ts +61 -0
  1916. package/templates/projects/productivity/entities/lists/lists.fields.ts +105 -0
  1917. package/templates/projects/productivity/entities/lists/lists.service.ts +252 -0
  1918. package/templates/projects/productivity/entities/lists/lists.types.ts +55 -0
  1919. package/templates/projects/productivity/entities/lists/messages/en.json +60 -0
  1920. package/templates/projects/productivity/entities/lists/messages/es.json +60 -0
  1921. package/templates/projects/productivity/entities/lists/migrations/010_lists_table.sql +79 -0
  1922. package/templates/projects/productivity/lib/selectors.ts +205 -0
  1923. package/templates/projects/productivity/messages/en.json +79 -0
  1924. package/templates/projects/productivity/messages/es.json +79 -0
  1925. package/templates/projects/productivity/migrations/090_billing_sample_data.sql +100 -0
  1926. package/templates/projects/productivity/migrations/999_theme_sample_data.sql +922 -0
  1927. package/templates/projects/productivity/migrations/999a_initial_sample_data.sql +377 -0
  1928. package/templates/projects/productivity/migrations/999b_abundant_sample_data.sql +346 -0
  1929. package/templates/projects/productivity/package.json +29 -0
  1930. package/templates/projects/productivity/permissions-matrix.md +122 -0
  1931. package/templates/projects/productivity/styles/components.css +460 -0
  1932. package/templates/projects/productivity/styles/globals.css +608 -0
  1933. package/templates/projects/productivity/templates/dashboard/(main)/boards/[id]/[cardId]/page.tsx +239 -0
  1934. package/templates/projects/productivity/templates/dashboard/(main)/boards/[id]/edit/page.tsx +391 -0
  1935. package/templates/projects/productivity/templates/dashboard/(main)/boards/[id]/page.tsx +237 -0
  1936. package/templates/projects/productivity/templates/dashboard/(main)/boards/create/page.tsx +237 -0
  1937. package/templates/projects/productivity/templates/dashboard/(main)/boards/page.tsx +336 -0
  1938. package/templates/projects/productivity/templates/dashboard/(main)/layout.tsx +32 -0
  1939. package/templates/projects/productivity/templates/dashboard/(main)/page.tsx +593 -0
  1940. package/templates/projects/productivity/templates/shared/ProductivityMobileNav.tsx +411 -0
  1941. package/templates/projects/productivity/templates/shared/ProductivitySidebar.tsx +539 -0
  1942. package/templates/projects/productivity/templates/shared/ProductivityTopBar.tsx +318 -0
  1943. package/templates/projects/productivity/tests/cypress/e2e/ui/boards/boards-owner.cy.ts +349 -0
  1944. package/templates/projects/productivity/tests/cypress/e2e/ui/cards/cards-modal.cy.ts +369 -0
  1945. package/templates/projects/productivity/tests/cypress/e2e/ui/kanban/kanban-cards.cy.ts +280 -0
  1946. package/templates/projects/productivity/tests/cypress/e2e/ui/kanban/kanban-columns.cy.ts +243 -0
  1947. package/templates/projects/productivity/tests/cypress/fixtures/blocks.json +9 -0
  1948. package/templates/projects/productivity/tests/cypress/fixtures/entities.json +60 -0
  1949. package/templates/projects/productivity/tests/cypress/src/components/BoardsPOM.ts +353 -0
  1950. package/templates/projects/productivity/tests/cypress/src/components/CardsPOM.ts +383 -0
  1951. package/templates/projects/productivity/tests/cypress/src/components/KanbanPOM.ts +399 -0
  1952. package/templates/projects/productivity/tests/cypress/src/components/index.ts +9 -0
  1953. package/templates/projects/productivity/tests/cypress/src/controllers/BoardsAPIController.js +302 -0
  1954. package/templates/projects/productivity/tests/cypress/src/controllers/CardsAPIController.js +406 -0
  1955. package/templates/projects/productivity/tests/cypress/src/controllers/ListsAPIController.js +299 -0
  1956. package/templates/projects/productivity/tests/cypress/src/index.ts +25 -0
  1957. package/templates/projects/productivity/tests/cypress/src/selectors.ts +50 -0
  1958. package/templates/projects/productivity/tests/cypress/src/session-helpers.ts +176 -0
  1959. package/templates/projects/productivity/tests/cypress/support/e2e.ts +90 -0
  1960. package/templates/projects/productivity/tests/cypress.config.ts +149 -0
  1961. package/templates/projects/productivity/tests/tsconfig.json +7 -0
  1962. package/templates/projects/starter/blocks/cta-section/config.ts +10 -0
  1963. package/templates/projects/starter/blocks/features-grid/config.ts +10 -0
  1964. package/templates/projects/starter/blocks/hero/config.ts +10 -0
  1965. package/templates/projects/starter/blocks/testimonials/config.ts +10 -0
  1966. package/templates/projects/starter/blocks/text-content/config.ts +10 -0
  1967. package/templates/projects/starter/emails/_README.md +69 -0
  1968. package/templates/projects/starter/entities/pages/pages.config.ts +95 -0
  1969. package/templates/projects/starter/entities/posts/posts.config.ts +102 -0
  1970. package/templates/projects/starter/entities/tasks/tasks.config.ts +82 -0
  1971. package/templates/projects/starter/styles/globals.css +213 -0
  1972. package/templates/projects/starter/templates/(public)/page.tsx +49 -0
  1973. package/templates/projects/starter/tests/cypress/e2e/_utils/docs/README.md +215 -0
  1974. package/templates/projects/starter/tests/cypress/e2e/_utils/selectors/block-editor.bdd.md +491 -0
  1975. package/templates/projects/starter/tests/cypress/e2e/_utils/selectors/dashboard-navigation.bdd.md +147 -0
  1976. package/templates/projects/starter/tests/cypress/e2e/_utils/selectors/dashboard-sidebar.bdd.md +76 -0
  1977. package/templates/projects/starter/tests/cypress/e2e/_utils/selectors/dashboard-topnav.bdd.md +326 -0
  1978. package/templates/projects/starter/tests/cypress/e2e/_utils/selectors/patterns.bdd.md +388 -0
  1979. package/templates/projects/starter/tests/cypress/e2e/_utils/selectors/settings-api-keys.bdd.md +266 -0
  1980. package/templates/projects/starter/tests/cypress/e2e/_utils/selectors/settings-billing.bdd.md +78 -0
  1981. package/templates/projects/starter/tests/cypress/e2e/_utils/selectors/settings-layout.bdd.md +129 -0
  1982. package/templates/projects/starter/tests/cypress/e2e/_utils/selectors/settings-password.bdd.md +82 -0
  1983. package/templates/projects/starter/tests/cypress/e2e/_utils/selectors/settings-profile.bdd.md +77 -0
  1984. package/templates/projects/starter/tests/cypress/e2e/_utils/selectors/settings-teams.bdd.md +130 -0
  1985. package/templates/projects/starter/tests/cypress/e2e/_utils/selectors/superadmin.bdd.md +261 -0
  1986. package/templates/projects/starter/tests/cypress/e2e/_utils/selectors/tasks.bdd.md +593 -0
  1987. package/templates/projects/starter/tests/cypress/e2e/_utils/selectors/teams.bdd.md +278 -0
  1988. package/templates/projects/starter/tests/cypress/src/session-helpers.ts +548 -0
  1989. package/templates/projects/starter/tests/cypress.config.ts +215 -0
  1990. package/templates/projects/starter/tests/jest/__mocks__/jose.js +22 -0
  1991. package/templates/projects/starter/tests/jest/__mocks__/next-server.js +56 -0
  1992. package/templates/projects/starter/tests/jest/example.test.tsx +87 -0
  1993. package/templates/projects/starter/tests/jest/jest.config.cjs +92 -0
  1994. package/templates/projects/starter/tests/jest/services/tasks.service.test.ts +547 -0
  1995. package/templates/projects/starter/tests/jest/tsconfig.jest.json +8 -0
  1996. package/templates/projects/starter/tests/tsconfig.json +7 -0
  1997. package/templates/proxy.ts +366 -107
  1998. package/templates/public/uploads/README.md +1 -1
  1999. package/templates/scripts/cy-run-prod.cjs +6 -34
  2000. package/templates/tsconfig.cypress.json +4 -5
  2001. package/templates/tsconfig.json +8 -16
  2002. package/tests/jest/__mocks__/@nextsparkjs/registries/app-config.client.ts +3 -0
  2003. package/tests/jest/__mocks__/@nextsparkjs/registries/block-schemas.ts +5 -0
  2004. package/tests/jest/__mocks__/@nextsparkjs/registries/dashboard-config.client.ts +2 -0
  2005. package/tests/jest/__mocks__/@nextsparkjs/registries/dev-keyring.client.ts +2 -0
  2006. package/tests/jest/__mocks__/@nextsparkjs/registries/docs-registry.ts +7 -7
  2007. package/tests/jest/__mocks__/@nextsparkjs/registries/plugin-catalog.ts +21 -0
  2008. package/tests/jest/__mocks__/@nextsparkjs/registries/plugin-registry.client.ts +9 -0
  2009. package/tests/jest/__mocks__/@nextsparkjs/registries/route-handlers.ts +1 -11
  2010. package/tests/jest/__mocks__/@nextsparkjs/registries/theme-registry.client.ts +41 -0
  2011. package/tests/jest/__mocks__/@nextsparkjs/registries/theme-registry.ts +2 -3
  2012. package/tests/jest/__mocks__/@nextsparkjs/registries/translation-registry.ts +6 -0
  2013. package/tests/jest/__mocks__/next-intl-server.js +3 -3
  2014. package/dist/lib/api/entity/public-resolver.d.ts +0 -28
  2015. package/dist/lib/api/entity/public-resolver.d.ts.map +0 -1
  2016. package/dist/lib/api/entity/public-resolver.js +0 -95
  2017. package/dist/lib/services/middleware.service.d.ts +0 -66
  2018. package/dist/lib/services/middleware.service.d.ts.map +0 -1
  2019. package/dist/lib/services/middleware.service.js +0 -111
  2020. package/dist/lib/services/route-handler.service.d.ts +0 -155
  2021. package/dist/lib/services/route-handler.service.d.ts.map +0 -1
  2022. package/dist/lib/services/route-handler.service.js +0 -160
  2023. package/dist/lib/services/template.service.d.ts +0 -148
  2024. package/dist/lib/services/template.service.d.ts.map +0 -1
  2025. package/dist/lib/services/template.service.js +0 -184
  2026. package/dist/lib/template-resolver.d.ts +0 -103
  2027. package/dist/lib/template-resolver.d.ts.map +0 -1
  2028. package/dist/lib/template-resolver.js +0 -120
  2029. package/dist/lib/theme/theme-loader.d.ts +0 -59
  2030. package/dist/lib/theme/theme-loader.d.ts.map +0 -1
  2031. package/dist/lib/theme/theme-loader.js +0 -191
  2032. package/dist/templates/app/(auth)/accept-invite/[token]/page.tsx +0 -339
  2033. package/dist/templates/app/(auth)/auth-error/page.tsx +0 -25
  2034. package/dist/templates/app/(auth)/forgot-password/page.tsx +0 -215
  2035. package/dist/templates/app/(auth)/layout.tsx +0 -54
  2036. package/dist/templates/app/(auth)/login/page.tsx +0 -22
  2037. package/dist/templates/app/(auth)/reset-password/page.tsx +0 -211
  2038. package/dist/templates/app/(auth)/signup/page.tsx +0 -63
  2039. package/dist/templates/app/(auth)/verify-email/page.tsx +0 -190
  2040. package/dist/templates/app/(public)/[...slug]/page.tsx +0 -386
  2041. package/dist/templates/app/(public)/docs/[section]/[page]/page.tsx +0 -101
  2042. package/dist/templates/app/(public)/docs/layout.tsx +0 -25
  2043. package/dist/templates/app/(public)/docs/page.tsx +0 -81
  2044. package/dist/templates/app/(public)/layout.tsx +0 -44
  2045. package/dist/templates/app/(public)/page.tsx +0 -19
  2046. package/dist/templates/app/403/page.tsx +0 -89
  2047. package/dist/templates/app/api/auth/[...all]/route.ts +0 -214
  2048. package/dist/templates/app/api/cron/billing/lifecycle/route.ts +0 -98
  2049. package/dist/templates/app/api/csp-report/route.ts +0 -181
  2050. package/dist/templates/app/api/devtools/config/entities/route.ts +0 -115
  2051. package/dist/templates/app/api/devtools/config/theme/route.ts +0 -67
  2052. package/dist/templates/app/api/devtools/tests/[...path]/route.ts +0 -131
  2053. package/dist/templates/app/api/devtools/tests/route.ts +0 -135
  2054. package/dist/templates/app/api/health/route.ts +0 -53
  2055. package/dist/templates/app/api/internal/user-metadata/route.ts +0 -47
  2056. package/dist/templates/app/api/mcp/route.ts +0 -176
  2057. package/dist/templates/app/api/superadmin/subscriptions/route.ts +0 -315
  2058. package/dist/templates/app/api/superadmin/teams/[teamId]/route.ts +0 -292
  2059. package/dist/templates/app/api/superadmin/teams/route.ts +0 -187
  2060. package/dist/templates/app/api/superadmin/users/[userId]/route.ts +0 -542
  2061. package/dist/templates/app/api/superadmin/users/route.ts +0 -322
  2062. package/dist/templates/app/api/user/delete-account/route.ts +0 -58
  2063. package/dist/templates/app/api/user/plan-flags/route.ts +0 -270
  2064. package/dist/templates/app/api/user/profile/route.ts +0 -129
  2065. package/dist/templates/app/api/v1/[entity]/[id]/child/[childType]/[childId]/route.ts +0 -208
  2066. package/dist/templates/app/api/v1/[entity]/[id]/child/[childType]/route.ts +0 -329
  2067. package/dist/templates/app/api/v1/[entity]/[id]/route.ts +0 -33
  2068. package/dist/templates/app/api/v1/[entity]/route.ts +0 -29
  2069. package/dist/templates/app/api/v1/api-keys/[id]/route.ts +0 -283
  2070. package/dist/templates/app/api/v1/api-keys/route.ts +0 -241
  2071. package/dist/templates/app/api/v1/auth/signup-with-invite/route.ts +0 -243
  2072. package/dist/templates/app/api/v1/billing/cancel/route.ts +0 -206
  2073. package/dist/templates/app/api/v1/billing/change-plan/route.ts +0 -99
  2074. package/dist/templates/app/api/v1/billing/check-action/route.ts +0 -85
  2075. package/dist/templates/app/api/v1/billing/checkout/route.ts +0 -153
  2076. package/dist/templates/app/api/v1/billing/plans/route.ts +0 -82
  2077. package/dist/templates/app/api/v1/billing/portal/route.ts +0 -93
  2078. package/dist/templates/app/api/v1/billing/webhooks/polar/route.ts +0 -495
  2079. package/dist/templates/app/api/v1/billing/webhooks/stripe/route.ts +0 -34
  2080. package/dist/templates/app/api/v1/blocks/[slug]/route.ts +0 -30
  2081. package/dist/templates/app/api/v1/blocks/docs.md +0 -173
  2082. package/dist/templates/app/api/v1/blocks/route.ts +0 -46
  2083. package/dist/templates/app/api/v1/blocks/validate/route.ts +0 -47
  2084. package/dist/templates/app/api/v1/cron/process/route.ts +0 -106
  2085. package/dist/templates/app/api/v1/devtools/blocks/route.ts +0 -84
  2086. package/dist/templates/app/api/v1/devtools/docs/route.ts +0 -153
  2087. package/dist/templates/app/api/v1/devtools/docs.md +0 -204
  2088. package/dist/templates/app/api/v1/devtools/features/route.ts +0 -63
  2089. package/dist/templates/app/api/v1/devtools/flows/route.ts +0 -63
  2090. package/dist/templates/app/api/v1/devtools/presets.ts +0 -113
  2091. package/dist/templates/app/api/v1/devtools/scheduled-actions/route.ts +0 -244
  2092. package/dist/templates/app/api/v1/devtools/scheduled-actions/run/route.ts +0 -111
  2093. package/dist/templates/app/api/v1/devtools/testing/route.ts +0 -84
  2094. package/dist/templates/app/api/v1/media/[id]/route.ts +0 -168
  2095. package/dist/templates/app/api/v1/media/[id]/tags/route.ts +0 -212
  2096. package/dist/templates/app/api/v1/media/check-duplicates/route.ts +0 -66
  2097. package/dist/templates/app/api/v1/media/route.ts +0 -64
  2098. package/dist/templates/app/api/v1/media/upload/route.ts +0 -274
  2099. package/dist/templates/app/api/v1/media-tags/route.ts +0 -81
  2100. package/dist/templates/app/api/v1/patterns/[id]/usages/route.ts +0 -108
  2101. package/dist/templates/app/api/v1/plugin/[...path]/route.ts +0 -374
  2102. package/dist/templates/app/api/v1/plugin/docs.md +0 -79
  2103. package/dist/templates/app/api/v1/plugin/presets.ts +0 -21
  2104. package/dist/templates/app/api/v1/plugin/route.ts +0 -97
  2105. package/dist/templates/app/api/v1/post-categories/[id]/route.ts +0 -258
  2106. package/dist/templates/app/api/v1/post-categories/route.ts +0 -121
  2107. package/dist/templates/app/api/v1/team-invitations/[token]/accept/route.ts +0 -177
  2108. package/dist/templates/app/api/v1/team-invitations/[token]/decline/route.ts +0 -118
  2109. package/dist/templates/app/api/v1/team-invitations/[token]/route.ts +0 -90
  2110. package/dist/templates/app/api/v1/team-invitations/route.ts +0 -113
  2111. package/dist/templates/app/api/v1/teams/[teamId]/invitations/route.ts +0 -181
  2112. package/dist/templates/app/api/v1/teams/[teamId]/invoices/[invoiceNumber]/route.ts +0 -105
  2113. package/dist/templates/app/api/v1/teams/[teamId]/invoices/route.ts +0 -125
  2114. package/dist/templates/app/api/v1/teams/[teamId]/members/[memberId]/route.ts +0 -260
  2115. package/dist/templates/app/api/v1/teams/[teamId]/members/route.ts +0 -350
  2116. package/dist/templates/app/api/v1/teams/[teamId]/route.ts +0 -289
  2117. package/dist/templates/app/api/v1/teams/[teamId]/subscription/route.ts +0 -51
  2118. package/dist/templates/app/api/v1/teams/[teamId]/usage/[limitSlug]/route.ts +0 -96
  2119. package/dist/templates/app/api/v1/teams/route.ts +0 -305
  2120. package/dist/templates/app/api/v1/teams/switch/route.ts +0 -106
  2121. package/dist/templates/app/api/v1/theme/[...path]/route.ts +0 -383
  2122. package/dist/templates/app/api/v1/theme/docs.md +0 -74
  2123. package/dist/templates/app/api/v1/theme/presets.ts +0 -21
  2124. package/dist/templates/app/api/v1/theme/route.ts +0 -97
  2125. package/dist/templates/app/api/v1/users/[id]/meta/[key]/route.ts +0 -313
  2126. package/dist/templates/app/api/v1/users/[id]/route.ts +0 -270
  2127. package/dist/templates/app/api/v1/users/route.ts +0 -194
  2128. package/dist/templates/app/dashboard/(main)/[entity]/[id]/edit/page.tsx +0 -117
  2129. package/dist/templates/app/dashboard/(main)/[entity]/[id]/page.tsx +0 -85
  2130. package/dist/templates/app/dashboard/(main)/[entity]/create/page.tsx +0 -95
  2131. package/dist/templates/app/dashboard/(main)/[entity]/error.tsx +0 -51
  2132. package/dist/templates/app/dashboard/(main)/[entity]/layout.tsx +0 -115
  2133. package/dist/templates/app/dashboard/(main)/[entity]/loading.tsx +0 -64
  2134. package/dist/templates/app/dashboard/(main)/[entity]/page.tsx +0 -71
  2135. package/dist/templates/app/dashboard/(main)/layout.tsx +0 -99
  2136. package/dist/templates/app/dashboard/(main)/loading.tsx +0 -8
  2137. package/dist/templates/app/dashboard/(main)/media/page.tsx +0 -621
  2138. package/dist/templates/app/dashboard/(main)/page.tsx +0 -201
  2139. package/dist/templates/app/dashboard/(main)/patterns/[id]/edit/page.tsx +0 -117
  2140. package/dist/templates/app/dashboard/(main)/patterns/[id]/page.tsx +0 -23
  2141. package/dist/templates/app/dashboard/(main)/patterns/[id]/reports/page.tsx +0 -174
  2142. package/dist/templates/app/dashboard/(main)/patterns/create/page.tsx +0 -89
  2143. package/dist/templates/app/dashboard/(main)/patterns/page.tsx +0 -447
  2144. package/dist/templates/app/dashboard/features/analytics/page.tsx +0 -38
  2145. package/dist/templates/app/dashboard/features/automation/page.tsx +0 -38
  2146. package/dist/templates/app/dashboard/features/layout.tsx +0 -16
  2147. package/dist/templates/app/dashboard/features/loading.tsx +0 -8
  2148. package/dist/templates/app/dashboard/features/webhooks/page.tsx +0 -38
  2149. package/dist/templates/app/dashboard/layout.tsx +0 -87
  2150. package/dist/templates/app/dashboard/permission-denied/page.tsx +0 -32
  2151. package/dist/templates/app/dashboard/settings/api-keys/loading.tsx +0 -8
  2152. package/dist/templates/app/dashboard/settings/api-keys/page.tsx +0 -516
  2153. package/dist/templates/app/dashboard/settings/billing/loading.tsx +0 -8
  2154. package/dist/templates/app/dashboard/settings/billing/page.tsx +0 -289
  2155. package/dist/templates/app/dashboard/settings/invoices/[invoiceNumber]/page.tsx +0 -222
  2156. package/dist/templates/app/dashboard/settings/invoices/loading.tsx +0 -8
  2157. package/dist/templates/app/dashboard/settings/invoices/page.tsx +0 -82
  2158. package/dist/templates/app/dashboard/settings/layout.tsx +0 -151
  2159. package/dist/templates/app/dashboard/settings/loading.tsx +0 -8
  2160. package/dist/templates/app/dashboard/settings/notifications/loading.tsx +0 -8
  2161. package/dist/templates/app/dashboard/settings/notifications/page.tsx +0 -462
  2162. package/dist/templates/app/dashboard/settings/page.tsx +0 -93
  2163. package/dist/templates/app/dashboard/settings/password/loading.tsx +0 -8
  2164. package/dist/templates/app/dashboard/settings/password/page.tsx +0 -305
  2165. package/dist/templates/app/dashboard/settings/plans/loading.tsx +0 -8
  2166. package/dist/templates/app/dashboard/settings/plans/page.tsx +0 -62
  2167. package/dist/templates/app/dashboard/settings/profile/loading.tsx +0 -8
  2168. package/dist/templates/app/dashboard/settings/profile/page.tsx +0 -688
  2169. package/dist/templates/app/dashboard/settings/security/loading.tsx +0 -8
  2170. package/dist/templates/app/dashboard/settings/security/page.tsx +0 -506
  2171. package/dist/templates/app/dashboard/settings/teams/loading.tsx +0 -8
  2172. package/dist/templates/app/dashboard/settings/teams/page.tsx +0 -272
  2173. package/dist/templates/app/dashboard/settings/teams/permissions/page.tsx +0 -95
  2174. package/dist/templates/app/devtools/api/[[...endpoint]]/page.tsx +0 -33
  2175. package/dist/templates/app/devtools/api/layout.tsx +0 -23
  2176. package/dist/templates/app/devtools/blocks/[slug]/page.tsx +0 -39
  2177. package/dist/templates/app/devtools/blocks/page.tsx +0 -40
  2178. package/dist/templates/app/devtools/config/page.tsx +0 -40
  2179. package/dist/templates/app/devtools/features/page.tsx +0 -40
  2180. package/dist/templates/app/devtools/flows/page.tsx +0 -40
  2181. package/dist/templates/app/devtools/layout.tsx +0 -65
  2182. package/dist/templates/app/devtools/page.tsx +0 -130
  2183. package/dist/templates/app/devtools/plugins/[plugin]/page.tsx +0 -17
  2184. package/dist/templates/app/devtools/scheduled-actions/page.tsx +0 -158
  2185. package/dist/templates/app/devtools/style/page.tsx +0 -330
  2186. package/dist/templates/app/devtools/tags/page.tsx +0 -40
  2187. package/dist/templates/app/devtools/tests/[[...path]]/page.tsx +0 -56
  2188. package/dist/templates/app/favicon.ico +0 -0
  2189. package/dist/templates/app/globals.css +0 -12
  2190. package/dist/templates/app/layout.ppr.tsx +0 -105
  2191. package/dist/templates/app/layout.tsx +0 -118
  2192. package/dist/templates/app/public/page.tsx +0 -30
  2193. package/dist/templates/app/superadmin/docs/[section]/[page]/page.tsx +0 -93
  2194. package/dist/templates/app/superadmin/docs/page.tsx +0 -75
  2195. package/dist/templates/app/superadmin/layout.tsx +0 -96
  2196. package/dist/templates/app/superadmin/page.tsx +0 -149
  2197. package/dist/templates/app/superadmin/plugins/[plugin]/page.tsx +0 -17
  2198. package/dist/templates/app/superadmin/subscriptions/page.tsx +0 -658
  2199. package/dist/templates/app/superadmin/team-roles/page.tsx +0 -493
  2200. package/dist/templates/app/superadmin/teams/[teamId]/page.tsx +0 -691
  2201. package/dist/templates/app/superadmin/teams/page.tsx +0 -302
  2202. package/dist/templates/app/superadmin/users/[userId]/page.tsx +0 -549
  2203. package/dist/templates/app/superadmin/users/page.tsx +0 -529
  2204. package/dist/templates/contents/plugins/README.md +0 -42
  2205. package/dist/templates/contents/plugins/starter/plugin/README.md.template +0 -97
  2206. package/dist/templates/contents/plugins/starter/plugin/api/example/route.ts.template +0 -94
  2207. package/dist/templates/contents/plugins/starter/plugin/hooks/usePlugin.ts.template +0 -102
  2208. package/dist/templates/contents/themes/starter/blocks/cta-section/config.ts +0 -11
  2209. package/dist/templates/contents/themes/starter/blocks/features-grid/config.ts +0 -11
  2210. package/dist/templates/contents/themes/starter/blocks/hero/config.ts +0 -11
  2211. package/dist/templates/contents/themes/starter/blocks/testimonials/config.ts +0 -11
  2212. package/dist/templates/contents/themes/starter/blocks/text-content/config.ts +0 -11
  2213. package/dist/templates/contents/themes/starter/emails/_README.md +0 -69
  2214. package/dist/templates/contents/themes/starter/entities/pages/pages.config.ts +0 -95
  2215. package/dist/templates/contents/themes/starter/entities/posts/posts.config.ts +0 -102
  2216. package/dist/templates/contents/themes/starter/entities/tasks/tasks.config.ts +0 -82
  2217. package/dist/templates/contents/themes/starter/public/theme/blocks/hero/thumbnail.png +0 -1
  2218. package/dist/templates/contents/themes/starter/styles/globals.css +0 -214
  2219. package/dist/templates/contents/themes/starter/templates/(public)/loading.tsx +0 -5
  2220. package/dist/templates/contents/themes/starter/templates/(public)/page.tsx +0 -37
  2221. package/dist/templates/contents/themes/starter/tests/cypress/e2e/_utils/docs/README.md +0 -215
  2222. package/dist/templates/contents/themes/starter/tests/cypress/e2e/_utils/selectors/block-editor.bdd.md +0 -491
  2223. package/dist/templates/contents/themes/starter/tests/cypress/e2e/_utils/selectors/dashboard-navigation.bdd.md +0 -147
  2224. package/dist/templates/contents/themes/starter/tests/cypress/e2e/_utils/selectors/dashboard-sidebar.bdd.md +0 -76
  2225. package/dist/templates/contents/themes/starter/tests/cypress/e2e/_utils/selectors/dashboard-topnav.bdd.md +0 -326
  2226. package/dist/templates/contents/themes/starter/tests/cypress/e2e/_utils/selectors/patterns.bdd.md +0 -388
  2227. package/dist/templates/contents/themes/starter/tests/cypress/e2e/_utils/selectors/settings-api-keys.bdd.md +0 -266
  2228. package/dist/templates/contents/themes/starter/tests/cypress/e2e/_utils/selectors/settings-billing.bdd.md +0 -78
  2229. package/dist/templates/contents/themes/starter/tests/cypress/e2e/_utils/selectors/settings-layout.bdd.md +0 -129
  2230. package/dist/templates/contents/themes/starter/tests/cypress/e2e/_utils/selectors/settings-password.bdd.md +0 -82
  2231. package/dist/templates/contents/themes/starter/tests/cypress/e2e/_utils/selectors/settings-profile.bdd.md +0 -77
  2232. package/dist/templates/contents/themes/starter/tests/cypress/e2e/_utils/selectors/settings-teams.bdd.md +0 -130
  2233. package/dist/templates/contents/themes/starter/tests/cypress/e2e/_utils/selectors/superadmin.bdd.md +0 -261
  2234. package/dist/templates/contents/themes/starter/tests/cypress/e2e/_utils/selectors/tasks.bdd.md +0 -593
  2235. package/dist/templates/contents/themes/starter/tests/cypress/e2e/_utils/selectors/teams.bdd.md +0 -278
  2236. package/dist/templates/contents/themes/starter/tests/cypress/src/session-helpers.ts +0 -549
  2237. package/dist/templates/contents/themes/starter/tests/cypress.config.ts +0 -220
  2238. package/dist/templates/contents/themes/starter/tests/jest/example.test.tsx +0 -87
  2239. package/dist/templates/contents/themes/starter/tests/jest/jest.config.cjs +0 -95
  2240. package/dist/templates/contents/themes/starter/tests/jest/services/tasks.service.test.ts +0 -547
  2241. package/dist/templates/contents/themes/starter/tests/jest/tsconfig.jest.json +0 -8
  2242. package/dist/templates/contents/themes/starter/tests/tsconfig.json +0 -15
  2243. package/dist/templates/public/theme/blocks/cta-section/thumbnail.png +0 -1
  2244. package/dist/templates/public/theme/blocks/features-grid/thumbnail.png +0 -1
  2245. package/dist/templates/public/theme/blocks/hero/thumbnail.png +0 -1
  2246. package/dist/templates/public/theme/blocks/testimonials/thumbnail.png +0 -1
  2247. package/dist/templates/public/theme/blocks/text-content/thumbnail.png +0 -1
  2248. package/scripts/build/registry/__tests__/globals-css-tag.test.mjs +0 -66
  2249. package/scripts/build/registry/__tests__/page-generator.test.mjs +0 -604
  2250. package/scripts/build/registry/__tests__/published-signatures.test.mjs +0 -239
  2251. package/scripts/build/registry/__tests__/route-file-rule.test.mjs +0 -170
  2252. package/scripts/build/registry/__tests__/template-analysis.test.mjs +0 -142
  2253. package/scripts/build/registry/__tests__/template-registry.test.mjs +0 -359
  2254. package/scripts/build/registry/__tests__/templates-plan.test.mjs +0 -128
  2255. package/scripts/build/registry/__tests__/templates-tree.test.mjs +0 -367
  2256. package/scripts/build/registry/discovery/templates.mjs +0 -250
  2257. package/scripts/build/registry/generators/template-registry.mjs +0 -367
  2258. package/scripts/build/registry/post-build/page-generator.mjs +0 -1066
  2259. package/scripts/build/registry/post-build/route-cleanup.mjs +0 -199
  2260. package/scripts/build/registry/watch.mjs +0 -80
  2261. package/scripts/build/templates-plan.mjs +0 -44
  2262. package/scripts/build/theme.mjs +0 -452
  2263. package/scripts/generate-app.mjs +0 -190
  2264. package/scripts/setup/npm-postinstall.mjs +0 -193
  2265. package/scripts/setup/postinstall.mjs +0 -155
  2266. package/scripts/test/jest-theme.mjs +0 -65
  2267. package/scripts/utils/generated-tag.mjs +0 -66
  2268. package/templates/app/(auth)/accept-invite/[token]/page.tsx +0 -339
  2269. package/templates/app/(auth)/auth-error/page.tsx +0 -25
  2270. package/templates/app/(auth)/forgot-password/page.tsx +0 -215
  2271. package/templates/app/(auth)/layout.tsx +0 -54
  2272. package/templates/app/(auth)/login/page.tsx +0 -22
  2273. package/templates/app/(auth)/reset-password/page.tsx +0 -211
  2274. package/templates/app/(auth)/signup/page.tsx +0 -63
  2275. package/templates/app/(auth)/verify-email/page.tsx +0 -190
  2276. package/templates/app/(public)/[...slug]/page.tsx +0 -386
  2277. package/templates/app/(public)/docs/[section]/[page]/page.tsx +0 -101
  2278. package/templates/app/(public)/docs/layout.tsx +0 -25
  2279. package/templates/app/(public)/docs/page.tsx +0 -81
  2280. package/templates/app/(public)/layout.tsx +0 -44
  2281. package/templates/app/(public)/page.tsx +0 -19
  2282. package/templates/app/403/page.tsx +0 -89
  2283. package/templates/app/api/auth/[...all]/route.ts +0 -214
  2284. package/templates/app/api/cron/billing/lifecycle/route.ts +0 -98
  2285. package/templates/app/api/csp-report/route.ts +0 -181
  2286. package/templates/app/api/devtools/config/entities/route.ts +0 -115
  2287. package/templates/app/api/devtools/config/theme/route.ts +0 -67
  2288. package/templates/app/api/devtools/tests/[...path]/route.ts +0 -131
  2289. package/templates/app/api/devtools/tests/route.ts +0 -135
  2290. package/templates/app/api/health/route.ts +0 -53
  2291. package/templates/app/api/internal/user-metadata/route.ts +0 -47
  2292. package/templates/app/api/mcp/route.ts +0 -176
  2293. package/templates/app/api/superadmin/subscriptions/route.ts +0 -315
  2294. package/templates/app/api/superadmin/teams/[teamId]/route.ts +0 -292
  2295. package/templates/app/api/superadmin/teams/route.ts +0 -187
  2296. package/templates/app/api/superadmin/users/[userId]/route.ts +0 -542
  2297. package/templates/app/api/superadmin/users/route.ts +0 -322
  2298. package/templates/app/api/user/delete-account/route.ts +0 -58
  2299. package/templates/app/api/user/plan-flags/route.ts +0 -270
  2300. package/templates/app/api/user/profile/route.ts +0 -129
  2301. package/templates/app/api/v1/[entity]/[id]/child/[childType]/[childId]/route.ts +0 -208
  2302. package/templates/app/api/v1/[entity]/[id]/child/[childType]/route.ts +0 -329
  2303. package/templates/app/api/v1/[entity]/[id]/route.ts +0 -33
  2304. package/templates/app/api/v1/[entity]/docs.md +0 -369
  2305. package/templates/app/api/v1/[entity]/presets.ts +0 -194
  2306. package/templates/app/api/v1/[entity]/route.ts +0 -29
  2307. package/templates/app/api/v1/api-keys/[id]/route.ts +0 -283
  2308. package/templates/app/api/v1/api-keys/docs.md +0 -101
  2309. package/templates/app/api/v1/api-keys/presets.ts +0 -31
  2310. package/templates/app/api/v1/api-keys/route.ts +0 -241
  2311. package/templates/app/api/v1/auth/docs.md +0 -184
  2312. package/templates/app/api/v1/auth/presets.ts +0 -44
  2313. package/templates/app/api/v1/auth/signup-with-invite/route.ts +0 -243
  2314. package/templates/app/api/v1/billing/cancel/route.ts +0 -206
  2315. package/templates/app/api/v1/billing/change-plan/route.ts +0 -99
  2316. package/templates/app/api/v1/billing/check-action/route.ts +0 -85
  2317. package/templates/app/api/v1/billing/checkout/route.ts +0 -153
  2318. package/templates/app/api/v1/billing/docs.md +0 -209
  2319. package/templates/app/api/v1/billing/plans/route.ts +0 -82
  2320. package/templates/app/api/v1/billing/portal/route.ts +0 -93
  2321. package/templates/app/api/v1/billing/presets.ts +0 -121
  2322. package/templates/app/api/v1/billing/webhooks/polar/route.ts +0 -495
  2323. package/templates/app/api/v1/billing/webhooks/stripe/route.ts +0 -34
  2324. package/templates/app/api/v1/blocks/[slug]/route.ts +0 -30
  2325. package/templates/app/api/v1/blocks/docs.md +0 -173
  2326. package/templates/app/api/v1/blocks/presets.ts +0 -121
  2327. package/templates/app/api/v1/blocks/route.ts +0 -46
  2328. package/templates/app/api/v1/blocks/validate/route.ts +0 -47
  2329. package/templates/app/api/v1/cron/docs.md +0 -116
  2330. package/templates/app/api/v1/cron/presets.ts +0 -26
  2331. package/templates/app/api/v1/cron/process/route.ts +0 -106
  2332. package/templates/app/api/v1/devtools/blocks/route.ts +0 -84
  2333. package/templates/app/api/v1/devtools/docs/route.ts +0 -153
  2334. package/templates/app/api/v1/devtools/docs.md +0 -204
  2335. package/templates/app/api/v1/devtools/features/route.ts +0 -63
  2336. package/templates/app/api/v1/devtools/flows/route.ts +0 -63
  2337. package/templates/app/api/v1/devtools/presets.ts +0 -113
  2338. package/templates/app/api/v1/devtools/scheduled-actions/route.ts +0 -244
  2339. package/templates/app/api/v1/devtools/scheduled-actions/run/route.ts +0 -111
  2340. package/templates/app/api/v1/devtools/testing/route.ts +0 -84
  2341. package/templates/app/api/v1/media/[id]/route.ts +0 -168
  2342. package/templates/app/api/v1/media/[id]/tags/route.ts +0 -212
  2343. package/templates/app/api/v1/media/check-duplicates/route.ts +0 -66
  2344. package/templates/app/api/v1/media/docs.md +0 -117
  2345. package/templates/app/api/v1/media/presets.ts +0 -24
  2346. package/templates/app/api/v1/media/route.ts +0 -64
  2347. package/templates/app/api/v1/media/upload/route.ts +0 -274
  2348. package/templates/app/api/v1/media-tags/route.ts +0 -81
  2349. package/templates/app/api/v1/patterns/[id]/usages/route.ts +0 -108
  2350. package/templates/app/api/v1/plugin/[...path]/route.ts +0 -374
  2351. package/templates/app/api/v1/plugin/docs.md +0 -79
  2352. package/templates/app/api/v1/plugin/presets.ts +0 -21
  2353. package/templates/app/api/v1/plugin/route.ts +0 -97
  2354. package/templates/app/api/v1/post-categories/[id]/route.ts +0 -258
  2355. package/templates/app/api/v1/post-categories/docs.md +0 -134
  2356. package/templates/app/api/v1/post-categories/presets.ts +0 -78
  2357. package/templates/app/api/v1/post-categories/route.ts +0 -121
  2358. package/templates/app/api/v1/team-invitations/[token]/accept/route.ts +0 -177
  2359. package/templates/app/api/v1/team-invitations/[token]/decline/route.ts +0 -118
  2360. package/templates/app/api/v1/team-invitations/[token]/route.ts +0 -90
  2361. package/templates/app/api/v1/team-invitations/docs.md +0 -88
  2362. package/templates/app/api/v1/team-invitations/presets.ts +0 -43
  2363. package/templates/app/api/v1/team-invitations/route.ts +0 -113
  2364. package/templates/app/api/v1/teams/[teamId]/invitations/route.ts +0 -181
  2365. package/templates/app/api/v1/teams/[teamId]/invoices/[invoiceNumber]/route.ts +0 -105
  2366. package/templates/app/api/v1/teams/[teamId]/invoices/route.ts +0 -125
  2367. package/templates/app/api/v1/teams/[teamId]/members/[memberId]/route.ts +0 -260
  2368. package/templates/app/api/v1/teams/[teamId]/members/route.ts +0 -350
  2369. package/templates/app/api/v1/teams/[teamId]/route.ts +0 -289
  2370. package/templates/app/api/v1/teams/[teamId]/subscription/route.ts +0 -51
  2371. package/templates/app/api/v1/teams/[teamId]/usage/[limitSlug]/route.ts +0 -96
  2372. package/templates/app/api/v1/teams/docs.md +0 -315
  2373. package/templates/app/api/v1/teams/presets.ts +0 -178
  2374. package/templates/app/api/v1/teams/route.ts +0 -305
  2375. package/templates/app/api/v1/teams/switch/route.ts +0 -106
  2376. package/templates/app/api/v1/theme/[...path]/route.ts +0 -383
  2377. package/templates/app/api/v1/theme/docs.md +0 -74
  2378. package/templates/app/api/v1/theme/presets.ts +0 -21
  2379. package/templates/app/api/v1/theme/route.ts +0 -97
  2380. package/templates/app/api/v1/users/[id]/meta/[key]/route.ts +0 -313
  2381. package/templates/app/api/v1/users/[id]/route.ts +0 -270
  2382. package/templates/app/api/v1/users/docs.md +0 -93
  2383. package/templates/app/api/v1/users/presets.ts +0 -59
  2384. package/templates/app/api/v1/users/route.ts +0 -194
  2385. package/templates/app/dashboard/(main)/[entity]/[id]/edit/page.tsx +0 -117
  2386. package/templates/app/dashboard/(main)/[entity]/[id]/page.tsx +0 -85
  2387. package/templates/app/dashboard/(main)/[entity]/create/page.tsx +0 -95
  2388. package/templates/app/dashboard/(main)/[entity]/error.tsx +0 -51
  2389. package/templates/app/dashboard/(main)/[entity]/layout.tsx +0 -115
  2390. package/templates/app/dashboard/(main)/[entity]/loading.tsx +0 -64
  2391. package/templates/app/dashboard/(main)/[entity]/page.tsx +0 -71
  2392. package/templates/app/dashboard/(main)/layout.tsx +0 -99
  2393. package/templates/app/dashboard/(main)/loading.tsx +0 -8
  2394. package/templates/app/dashboard/(main)/media/page.tsx +0 -621
  2395. package/templates/app/dashboard/(main)/page.tsx +0 -201
  2396. package/templates/app/dashboard/(main)/patterns/[id]/edit/page.tsx +0 -117
  2397. package/templates/app/dashboard/(main)/patterns/[id]/page.tsx +0 -23
  2398. package/templates/app/dashboard/(main)/patterns/[id]/reports/page.tsx +0 -174
  2399. package/templates/app/dashboard/(main)/patterns/create/page.tsx +0 -89
  2400. package/templates/app/dashboard/(main)/patterns/page.tsx +0 -447
  2401. package/templates/app/dashboard/features/analytics/page.tsx +0 -38
  2402. package/templates/app/dashboard/features/automation/page.tsx +0 -38
  2403. package/templates/app/dashboard/features/layout.tsx +0 -16
  2404. package/templates/app/dashboard/features/loading.tsx +0 -8
  2405. package/templates/app/dashboard/features/webhooks/page.tsx +0 -38
  2406. package/templates/app/dashboard/layout.tsx +0 -87
  2407. package/templates/app/dashboard/permission-denied/page.tsx +0 -32
  2408. package/templates/app/dashboard/settings/api-keys/loading.tsx +0 -8
  2409. package/templates/app/dashboard/settings/api-keys/page.tsx +0 -516
  2410. package/templates/app/dashboard/settings/billing/loading.tsx +0 -8
  2411. package/templates/app/dashboard/settings/billing/page.tsx +0 -289
  2412. package/templates/app/dashboard/settings/invoices/[invoiceNumber]/page.tsx +0 -222
  2413. package/templates/app/dashboard/settings/invoices/loading.tsx +0 -8
  2414. package/templates/app/dashboard/settings/invoices/page.tsx +0 -82
  2415. package/templates/app/dashboard/settings/layout.tsx +0 -151
  2416. package/templates/app/dashboard/settings/loading.tsx +0 -8
  2417. package/templates/app/dashboard/settings/notifications/loading.tsx +0 -8
  2418. package/templates/app/dashboard/settings/notifications/page.tsx +0 -462
  2419. package/templates/app/dashboard/settings/page.tsx +0 -93
  2420. package/templates/app/dashboard/settings/password/loading.tsx +0 -8
  2421. package/templates/app/dashboard/settings/password/page.tsx +0 -305
  2422. package/templates/app/dashboard/settings/plans/loading.tsx +0 -8
  2423. package/templates/app/dashboard/settings/plans/page.tsx +0 -62
  2424. package/templates/app/dashboard/settings/profile/loading.tsx +0 -8
  2425. package/templates/app/dashboard/settings/profile/page.tsx +0 -688
  2426. package/templates/app/dashboard/settings/security/loading.tsx +0 -8
  2427. package/templates/app/dashboard/settings/security/page.tsx +0 -506
  2428. package/templates/app/dashboard/settings/teams/loading.tsx +0 -8
  2429. package/templates/app/dashboard/settings/teams/page.tsx +0 -272
  2430. package/templates/app/dashboard/settings/teams/permissions/page.tsx +0 -95
  2431. package/templates/app/devtools/api/[[...endpoint]]/page.tsx +0 -33
  2432. package/templates/app/devtools/api/layout.tsx +0 -23
  2433. package/templates/app/devtools/blocks/[slug]/page.tsx +0 -39
  2434. package/templates/app/devtools/blocks/page.tsx +0 -40
  2435. package/templates/app/devtools/config/page.tsx +0 -40
  2436. package/templates/app/devtools/features/page.tsx +0 -40
  2437. package/templates/app/devtools/flows/page.tsx +0 -40
  2438. package/templates/app/devtools/layout.tsx +0 -65
  2439. package/templates/app/devtools/page.tsx +0 -130
  2440. package/templates/app/devtools/plugins/[plugin]/page.tsx +0 -17
  2441. package/templates/app/devtools/scheduled-actions/page.tsx +0 -158
  2442. package/templates/app/devtools/style/page.tsx +0 -330
  2443. package/templates/app/devtools/tags/page.tsx +0 -40
  2444. package/templates/app/devtools/tests/[[...path]]/page.tsx +0 -56
  2445. package/templates/app/favicon.ico +0 -0
  2446. package/templates/app/globals.css +0 -12
  2447. package/templates/app/layout.ppr.tsx +0 -105
  2448. package/templates/app/layout.tsx +0 -118
  2449. package/templates/app/public/page.tsx +0 -30
  2450. package/templates/app/superadmin/docs/[section]/[page]/page.tsx +0 -93
  2451. package/templates/app/superadmin/docs/page.tsx +0 -75
  2452. package/templates/app/superadmin/layout.tsx +0 -96
  2453. package/templates/app/superadmin/page.tsx +0 -149
  2454. package/templates/app/superadmin/plugins/[plugin]/page.tsx +0 -17
  2455. package/templates/app/superadmin/subscriptions/page.tsx +0 -658
  2456. package/templates/app/superadmin/team-roles/page.tsx +0 -493
  2457. package/templates/app/superadmin/teams/[teamId]/page.tsx +0 -691
  2458. package/templates/app/superadmin/teams/page.tsx +0 -302
  2459. package/templates/app/superadmin/users/[userId]/page.tsx +0 -549
  2460. package/templates/app/superadmin/users/page.tsx +0 -529
  2461. package/templates/contents/plugins/README.md +0 -42
  2462. package/templates/contents/plugins/starter/plugin/README.md.template +0 -97
  2463. package/templates/contents/plugins/starter/plugin/api/example/route.ts.template +0 -94
  2464. package/templates/contents/plugins/starter/plugin/hooks/usePlugin.ts.template +0 -102
  2465. package/templates/contents/themes/.gitkeep +0 -0
  2466. package/templates/contents/themes/starter/blocks/.gitkeep +0 -0
  2467. package/templates/contents/themes/starter/blocks/cta-section/config.ts +0 -11
  2468. package/templates/contents/themes/starter/blocks/features-grid/config.ts +0 -11
  2469. package/templates/contents/themes/starter/blocks/hero/config.ts +0 -11
  2470. package/templates/contents/themes/starter/blocks/testimonials/config.ts +0 -11
  2471. package/templates/contents/themes/starter/blocks/text-content/config.ts +0 -11
  2472. package/templates/contents/themes/starter/emails/_README.md +0 -69
  2473. package/templates/contents/themes/starter/entities/pages/pages.config.ts +0 -95
  2474. package/templates/contents/themes/starter/entities/posts/posts.config.ts +0 -102
  2475. package/templates/contents/themes/starter/entities/tasks/tasks.config.ts +0 -82
  2476. package/templates/contents/themes/starter/public/brand/.gitkeep +0 -0
  2477. package/templates/contents/themes/starter/public/theme/blocks/hero/thumbnail.png +0 -1
  2478. package/templates/contents/themes/starter/styles/globals.css +0 -214
  2479. package/templates/contents/themes/starter/templates/(public)/loading.tsx +0 -5
  2480. package/templates/contents/themes/starter/templates/(public)/page.tsx +0 -37
  2481. package/templates/contents/themes/starter/tests/cypress/e2e/_utils/docs/README.md +0 -215
  2482. package/templates/contents/themes/starter/tests/cypress/e2e/_utils/selectors/block-editor.bdd.md +0 -491
  2483. package/templates/contents/themes/starter/tests/cypress/e2e/_utils/selectors/dashboard-navigation.bdd.md +0 -147
  2484. package/templates/contents/themes/starter/tests/cypress/e2e/_utils/selectors/dashboard-sidebar.bdd.md +0 -76
  2485. package/templates/contents/themes/starter/tests/cypress/e2e/_utils/selectors/dashboard-topnav.bdd.md +0 -326
  2486. package/templates/contents/themes/starter/tests/cypress/e2e/_utils/selectors/patterns.bdd.md +0 -388
  2487. package/templates/contents/themes/starter/tests/cypress/e2e/_utils/selectors/settings-api-keys.bdd.md +0 -266
  2488. package/templates/contents/themes/starter/tests/cypress/e2e/_utils/selectors/settings-billing.bdd.md +0 -78
  2489. package/templates/contents/themes/starter/tests/cypress/e2e/_utils/selectors/settings-layout.bdd.md +0 -129
  2490. package/templates/contents/themes/starter/tests/cypress/e2e/_utils/selectors/settings-password.bdd.md +0 -82
  2491. package/templates/contents/themes/starter/tests/cypress/e2e/_utils/selectors/settings-profile.bdd.md +0 -77
  2492. package/templates/contents/themes/starter/tests/cypress/e2e/_utils/selectors/settings-teams.bdd.md +0 -130
  2493. package/templates/contents/themes/starter/tests/cypress/e2e/_utils/selectors/superadmin.bdd.md +0 -261
  2494. package/templates/contents/themes/starter/tests/cypress/e2e/_utils/selectors/tasks.bdd.md +0 -593
  2495. package/templates/contents/themes/starter/tests/cypress/e2e/_utils/selectors/teams.bdd.md +0 -278
  2496. package/templates/contents/themes/starter/tests/cypress/src/session-helpers.ts +0 -549
  2497. package/templates/contents/themes/starter/tests/cypress.config.ts +0 -220
  2498. package/templates/contents/themes/starter/tests/jest/example.test.tsx +0 -87
  2499. package/templates/contents/themes/starter/tests/jest/jest.config.cjs +0 -95
  2500. package/templates/contents/themes/starter/tests/jest/services/tasks.service.test.ts +0 -547
  2501. package/templates/contents/themes/starter/tests/jest/tsconfig.jest.json +0 -8
  2502. package/templates/contents/themes/starter/tests/tsconfig.json +0 -15
  2503. package/templates/public/theme/blocks/cta-section/thumbnail.png +0 -1
  2504. package/templates/public/theme/blocks/features-grid/thumbnail.png +0 -1
  2505. package/templates/public/theme/blocks/hero/thumbnail.png +0 -1
  2506. package/templates/public/theme/blocks/testimonials/thumbnail.png +0 -1
  2507. package/templates/public/theme/blocks/text-content/thumbnail.png +0 -1
  2508. package/tests/jest/__mocks__/@nextsparkjs/registries/template-registry.client.ts +0 -11
  2509. package/tests/jest/__mocks__/@nextsparkjs/registries/template-registry.ts +0 -11
  2510. /package/dist/{templates/contents/plugins/.gitkeep → lib/entities/portable/types.js} +0 -0
  2511. /package/dist/{templates/app → routes}/api/v1/[entity]/docs.md +0 -0
  2512. /package/dist/{templates/app → routes}/api/v1/[entity]/presets.ts +0 -0
  2513. /package/dist/{templates/app → routes}/api/v1/api-keys/docs.md +0 -0
  2514. /package/dist/{templates/app → routes}/api/v1/api-keys/presets.ts +0 -0
  2515. /package/dist/{templates/app → routes}/api/v1/auth/docs.md +0 -0
  2516. /package/dist/{templates/app → routes}/api/v1/auth/presets.ts +0 -0
  2517. /package/dist/{templates/app → routes}/api/v1/billing/docs.md +0 -0
  2518. /package/dist/{templates/app → routes}/api/v1/billing/presets.ts +0 -0
  2519. /package/dist/{templates/app → routes}/api/v1/blocks/presets.ts +0 -0
  2520. /package/dist/{templates/app → routes}/api/v1/cron/docs.md +0 -0
  2521. /package/dist/{templates/app → routes}/api/v1/cron/presets.ts +0 -0
  2522. /package/dist/{templates/app → routes}/api/v1/media/docs.md +0 -0
  2523. /package/dist/{templates/app → routes}/api/v1/media/presets.ts +0 -0
  2524. /package/dist/{templates/app → routes}/api/v1/post-categories/docs.md +0 -0
  2525. /package/dist/{templates/app → routes}/api/v1/post-categories/presets.ts +0 -0
  2526. /package/dist/{templates/app → routes}/api/v1/team-invitations/docs.md +0 -0
  2527. /package/dist/{templates/app → routes}/api/v1/team-invitations/presets.ts +0 -0
  2528. /package/dist/{templates/app → routes}/api/v1/teams/docs.md +0 -0
  2529. /package/dist/{templates/app → routes}/api/v1/teams/presets.ts +0 -0
  2530. /package/dist/{templates/app → routes}/api/v1/users/docs.md +0 -0
  2531. /package/dist/{templates/app → routes}/api/v1/users/presets.ts +0 -0
  2532. /package/dist/templates/{contents/plugins → plugins}/starter/plugin/components/ExampleWidget.tsx.template +0 -0
  2533. /package/dist/templates/{contents/plugins → plugins}/starter/plugin/entities/.gitkeep +0 -0
  2534. /package/dist/templates/{contents/plugins → plugins}/starter/plugin/lib/core.ts.template +0 -0
  2535. /package/dist/templates/{contents/plugins → plugins}/starter/plugin/lib/types.ts.template +0 -0
  2536. /package/dist/templates/{contents/plugins → plugins}/starter/plugin/messages/de.json +0 -0
  2537. /package/dist/templates/{contents/plugins → plugins}/starter/plugin/messages/en.json +0 -0
  2538. /package/dist/templates/{contents/plugins → plugins}/starter/plugin/messages/es.json +0 -0
  2539. /package/dist/templates/{contents/plugins → plugins}/starter/plugin/messages/fr.json +0 -0
  2540. /package/dist/templates/{contents/plugins → plugins}/starter/plugin/messages/it.json +0 -0
  2541. /package/dist/templates/{contents/plugins → plugins}/starter/plugin/messages/pt.json +0 -0
  2542. /package/dist/templates/{contents/plugins → plugins}/starter/plugin/migrations/README.md +0 -0
  2543. /package/dist/templates/{contents/plugins → plugins}/starter/plugin/plugin.config.ts.template +0 -0
  2544. /package/dist/templates/{contents/plugins → plugins}/starter/plugin/tests/plugin.test.ts.template +0 -0
  2545. /package/dist/templates/{contents/themes/starter → projects/blog}/tests/jest/__mocks__/jose.js +0 -0
  2546. /package/dist/templates/{contents/themes/starter → projects/blog}/tests/jest/__mocks__/next-server.js +0 -0
  2547. /package/dist/templates/{contents/themes → projects}/starter/README.md +0 -0
  2548. /package/dist/templates/{contents/themes → projects}/starter/about/business.md +0 -0
  2549. /package/dist/templates/{contents/themes → projects}/starter/about/features.json +0 -0
  2550. /package/dist/templates/{contents/themes → projects/starter/blocks}/.gitkeep +0 -0
  2551. /package/dist/templates/{contents/themes → projects}/starter/blocks/cta-section/component.tsx +0 -0
  2552. /package/dist/templates/{contents/themes → projects}/starter/blocks/cta-section/fields.ts +0 -0
  2553. /package/dist/templates/{contents/themes → projects}/starter/blocks/cta-section/index.ts +0 -0
  2554. /package/dist/templates/{contents/themes → projects}/starter/blocks/cta-section/schema.ts +0 -0
  2555. /package/dist/templates/{contents/themes → projects}/starter/blocks/cta-section/thumbnail.png +0 -0
  2556. /package/dist/templates/{contents/themes → projects}/starter/blocks/features-grid/component.tsx +0 -0
  2557. /package/dist/templates/{contents/themes → projects}/starter/blocks/features-grid/fields.ts +0 -0
  2558. /package/dist/templates/{contents/themes → projects}/starter/blocks/features-grid/index.ts +0 -0
  2559. /package/dist/templates/{contents/themes → projects}/starter/blocks/features-grid/schema.ts +0 -0
  2560. /package/dist/templates/{contents/themes → projects}/starter/blocks/features-grid/thumbnail.png +0 -0
  2561. /package/dist/templates/{contents/themes → projects}/starter/blocks/hero/component.tsx +0 -0
  2562. /package/dist/templates/{contents/themes → projects}/starter/blocks/hero/fields.ts +0 -0
  2563. /package/dist/templates/{contents/themes → projects}/starter/blocks/hero/index.ts +0 -0
  2564. /package/dist/templates/{contents/themes → projects}/starter/blocks/hero/schema.ts +0 -0
  2565. /package/dist/templates/{contents/themes → projects}/starter/blocks/hero/thumbnail.png +0 -0
  2566. /package/dist/templates/{contents/themes → projects}/starter/blocks/testimonials/component.tsx +0 -0
  2567. /package/dist/templates/{contents/themes → projects}/starter/blocks/testimonials/fields.ts +0 -0
  2568. /package/dist/templates/{contents/themes → projects}/starter/blocks/testimonials/index.ts +0 -0
  2569. /package/dist/templates/{contents/themes → projects}/starter/blocks/testimonials/schema.ts +0 -0
  2570. /package/dist/templates/{contents/themes → projects}/starter/blocks/testimonials/thumbnail.png +0 -0
  2571. /package/dist/templates/{contents/themes → projects}/starter/blocks/text-content/component.tsx +0 -0
  2572. /package/dist/templates/{contents/themes → projects}/starter/blocks/text-content/fields.ts +0 -0
  2573. /package/dist/templates/{contents/themes → projects}/starter/blocks/text-content/index.ts +0 -0
  2574. /package/dist/templates/{contents/themes → projects}/starter/blocks/text-content/schema.ts +0 -0
  2575. /package/dist/templates/{contents/themes → projects}/starter/blocks/text-content/thumbnail.png +0 -0
  2576. /package/dist/templates/{contents/themes → projects}/starter/components/.gitkeep +0 -0
  2577. /package/dist/templates/{contents/themes → projects}/starter/components/analytics/RecentActivity.tsx +0 -0
  2578. /package/dist/templates/{contents/themes → projects}/starter/components/analytics/StatsCard.tsx +0 -0
  2579. /package/dist/templates/{contents/themes → projects}/starter/components/analytics/TasksChart.tsx +0 -0
  2580. /package/dist/templates/{contents/themes → projects}/starter/components/analytics/index.ts +0 -0
  2581. /package/dist/templates/{contents/themes → projects}/starter/config/app.config.ts +0 -0
  2582. /package/dist/templates/{contents/themes → projects}/starter/config/billing.config.ts +0 -0
  2583. /package/dist/templates/{contents/themes → projects}/starter/config/dashboard.config.ts +0 -0
  2584. /package/dist/templates/{contents/themes → projects}/starter/config/dev.config.ts +0 -0
  2585. /package/dist/templates/{contents/themes → projects}/starter/config/features.config.ts +0 -0
  2586. /package/dist/templates/{contents/themes → projects}/starter/config/permissions.config.ts +0 -0
  2587. /package/dist/templates/{contents/themes → projects}/starter/config/theme.config.ts +0 -0
  2588. /package/dist/templates/{contents/themes → projects}/starter/docs/public/01-overview/01-introduction.md +0 -0
  2589. /package/dist/templates/{contents/themes → projects}/starter/docs/public/01-overview/02-customization.md +0 -0
  2590. /package/dist/templates/{contents/themes → projects}/starter/docs/superadmin/01-setup/01-configuration.md +0 -0
  2591. /package/dist/templates/{contents/themes → projects}/starter/docs/superadmin/02-entities/01-tasks.md +0 -0
  2592. /package/dist/templates/{contents/themes → projects}/starter/emails/verify-email.ts +0 -0
  2593. /package/dist/templates/{contents/themes → projects}/starter/entities/pages/api/docs.md +0 -0
  2594. /package/dist/templates/{contents/themes → projects}/starter/entities/pages/api/presets.ts +0 -0
  2595. /package/dist/templates/{contents/themes → projects}/starter/entities/pages/messages/en.json +0 -0
  2596. /package/dist/templates/{contents/themes → projects}/starter/entities/pages/messages/es.json +0 -0
  2597. /package/dist/templates/{contents/themes → projects}/starter/entities/pages/migrations/001_pages_table.sql +0 -0
  2598. /package/dist/templates/{contents/themes → projects}/starter/entities/pages/migrations/002_pages_metas.sql +0 -0
  2599. /package/dist/templates/{contents/themes → projects}/starter/entities/pages/migrations/003_add_status.sql +0 -0
  2600. /package/dist/templates/{contents/themes → projects}/starter/entities/pages/pages-management.service.ts +0 -0
  2601. /package/dist/templates/{contents/themes → projects}/starter/entities/pages/pages.fields.ts +0 -0
  2602. /package/dist/templates/{contents/themes → projects}/starter/entities/pages/pages.service.ts +0 -0
  2603. /package/dist/templates/{contents/themes → projects}/starter/entities/pages/pages.types.ts +0 -0
  2604. /package/dist/templates/{contents/themes → projects}/starter/entities/posts/api/docs.md +0 -0
  2605. /package/dist/templates/{contents/themes → projects}/starter/entities/posts/api/presets.ts +0 -0
  2606. /package/dist/templates/{contents/themes → projects}/starter/entities/posts/components/post-header.tsx +0 -0
  2607. /package/dist/templates/{contents/themes → projects}/starter/entities/posts/messages/en.json +0 -0
  2608. /package/dist/templates/{contents/themes → projects}/starter/entities/posts/messages/es.json +0 -0
  2609. /package/dist/templates/{contents/themes → projects}/starter/entities/posts/migrations/001_posts_table.sql +0 -0
  2610. /package/dist/templates/{contents/themes → projects}/starter/entities/posts/migrations/003_add_status.sql +0 -0
  2611. /package/dist/templates/{contents/themes → projects}/starter/entities/posts/migrations/004_entity_taxonomy_relations.sql +0 -0
  2612. /package/dist/templates/{contents/themes → projects}/starter/entities/posts/migrations/006_posts_metas.sql +0 -0
  2613. /package/dist/templates/{contents/themes → projects}/starter/entities/posts/posts.fields.ts +0 -0
  2614. /package/dist/templates/{contents/themes → projects}/starter/entities/posts/posts.service.ts +0 -0
  2615. /package/dist/templates/{contents/themes → projects}/starter/entities/posts/posts.types.ts +0 -0
  2616. /package/dist/templates/{contents/themes → projects}/starter/entities/tasks/api/docs.md +0 -0
  2617. /package/dist/templates/{contents/themes → projects}/starter/entities/tasks/api/presets.ts +0 -0
  2618. /package/dist/templates/{contents/themes → projects}/starter/entities/tasks/messages/de.json +0 -0
  2619. /package/dist/templates/{contents/themes → projects}/starter/entities/tasks/messages/en.json +0 -0
  2620. /package/dist/templates/{contents/themes → projects}/starter/entities/tasks/messages/es.json +0 -0
  2621. /package/dist/templates/{contents/themes → projects}/starter/entities/tasks/messages/fr.json +0 -0
  2622. /package/dist/templates/{contents/themes → projects}/starter/entities/tasks/messages/it.json +0 -0
  2623. /package/dist/templates/{contents/themes → projects}/starter/entities/tasks/messages/pt.json +0 -0
  2624. /package/dist/templates/{contents/themes → projects}/starter/entities/tasks/migrations/001_tasks_table.sql +0 -0
  2625. /package/dist/templates/{contents/themes → projects}/starter/entities/tasks/migrations/002_task_metas.sql +0 -0
  2626. /package/dist/templates/{contents/themes → projects}/starter/entities/tasks/tasks.fields.ts +0 -0
  2627. /package/dist/templates/{contents/themes → projects}/starter/entities/tasks/tasks.service.ts +0 -0
  2628. /package/dist/templates/{contents/themes → projects}/starter/entities/tasks/tasks.types.ts +0 -0
  2629. /package/dist/templates/{contents/themes → projects}/starter/lib/.gitkeep +0 -0
  2630. /package/dist/templates/{contents/themes → projects}/starter/lib/hooks/index.ts +0 -0
  2631. /package/dist/templates/{contents/themes → projects}/starter/lib/hooks/useAnalyticsData.ts +0 -0
  2632. /package/dist/templates/{contents/themes → projects}/starter/lib/hooks/useTaskStats.ts +0 -0
  2633. /package/dist/templates/{contents/themes → projects}/starter/lib/index.ts +0 -0
  2634. /package/dist/templates/{contents/themes → projects}/starter/lib/selectors.ts +0 -0
  2635. /package/dist/templates/{contents/themes → projects}/starter/lib/utils.ts +0 -0
  2636. /package/dist/templates/{contents/themes → projects}/starter/messages/de/analytics.json +0 -0
  2637. /package/dist/templates/{contents/themes → projects}/starter/messages/de/common.json +0 -0
  2638. /package/dist/templates/{contents/themes → projects}/starter/messages/de/dev.json +0 -0
  2639. /package/dist/templates/{contents/themes → projects}/starter/messages/de/features.json +0 -0
  2640. /package/dist/templates/{contents/themes → projects}/starter/messages/de/home.json +0 -0
  2641. /package/dist/templates/{contents/themes → projects}/starter/messages/de/index.ts +0 -0
  2642. /package/dist/templates/{contents/themes → projects}/starter/messages/de/navigation.json +0 -0
  2643. /package/dist/templates/{contents/themes → projects}/starter/messages/de/public.json +0 -0
  2644. /package/dist/templates/{contents/themes → projects}/starter/messages/en/analytics.json +0 -0
  2645. /package/dist/templates/{contents/themes → projects}/starter/messages/en/common.json +0 -0
  2646. /package/dist/templates/{contents/themes → projects}/starter/messages/en/dev.json +0 -0
  2647. /package/dist/templates/{contents/themes → projects}/starter/messages/en/features.json +0 -0
  2648. /package/dist/templates/{contents/themes → projects}/starter/messages/en/home.json +0 -0
  2649. /package/dist/templates/{contents/themes → projects}/starter/messages/en/index.ts +0 -0
  2650. /package/dist/templates/{contents/themes → projects}/starter/messages/en/navigation.json +0 -0
  2651. /package/dist/templates/{contents/themes → projects}/starter/messages/en/public.json +0 -0
  2652. /package/dist/templates/{contents/themes → projects}/starter/messages/es/analytics.json +0 -0
  2653. /package/dist/templates/{contents/themes → projects}/starter/messages/es/common.json +0 -0
  2654. /package/dist/templates/{contents/themes → projects}/starter/messages/es/dev.json +0 -0
  2655. /package/dist/templates/{contents/themes → projects}/starter/messages/es/features.json +0 -0
  2656. /package/dist/templates/{contents/themes → projects}/starter/messages/es/home.json +0 -0
  2657. /package/dist/templates/{contents/themes → projects}/starter/messages/es/index.ts +0 -0
  2658. /package/dist/templates/{contents/themes → projects}/starter/messages/es/navigation.json +0 -0
  2659. /package/dist/templates/{contents/themes → projects}/starter/messages/es/public.json +0 -0
  2660. /package/dist/templates/{contents/themes → projects}/starter/messages/fr/analytics.json +0 -0
  2661. /package/dist/templates/{contents/themes → projects}/starter/messages/fr/common.json +0 -0
  2662. /package/dist/templates/{contents/themes → projects}/starter/messages/fr/dev.json +0 -0
  2663. /package/dist/templates/{contents/themes → projects}/starter/messages/fr/features.json +0 -0
  2664. /package/dist/templates/{contents/themes → projects}/starter/messages/fr/home.json +0 -0
  2665. /package/dist/templates/{contents/themes → projects}/starter/messages/fr/index.ts +0 -0
  2666. /package/dist/templates/{contents/themes → projects}/starter/messages/fr/navigation.json +0 -0
  2667. /package/dist/templates/{contents/themes → projects}/starter/messages/fr/public.json +0 -0
  2668. /package/dist/templates/{contents/themes → projects}/starter/messages/it/analytics.json +0 -0
  2669. /package/dist/templates/{contents/themes → projects}/starter/messages/it/common.json +0 -0
  2670. /package/dist/templates/{contents/themes → projects}/starter/messages/it/dev.json +0 -0
  2671. /package/dist/templates/{contents/themes → projects}/starter/messages/it/features.json +0 -0
  2672. /package/dist/templates/{contents/themes → projects}/starter/messages/it/home.json +0 -0
  2673. /package/dist/templates/{contents/themes → projects}/starter/messages/it/index.ts +0 -0
  2674. /package/dist/templates/{contents/themes → projects}/starter/messages/it/navigation.json +0 -0
  2675. /package/dist/templates/{contents/themes → projects}/starter/messages/pt/analytics.json +0 -0
  2676. /package/dist/templates/{contents/themes → projects}/starter/messages/pt/common.json +0 -0
  2677. /package/dist/templates/{contents/themes → projects}/starter/messages/pt/dev.json +0 -0
  2678. /package/dist/templates/{contents/themes → projects}/starter/messages/pt/features.json +0 -0
  2679. /package/dist/templates/{contents/themes → projects}/starter/messages/pt/home.json +0 -0
  2680. /package/dist/templates/{contents/themes → projects}/starter/messages/pt/index.ts +0 -0
  2681. /package/dist/templates/{contents/themes → projects}/starter/messages/pt/navigation.json +0 -0
  2682. /package/dist/templates/{contents/themes → projects}/starter/migrations/README.md +0 -0
  2683. /package/dist/templates/{contents/themes/starter/blocks → projects/starter/public/brand}/.gitkeep +0 -0
  2684. /package/dist/templates/{contents/themes → projects}/starter/styles/components.css +0 -0
  2685. /package/dist/templates/{contents/themes → projects}/starter/templates/(public)/layout.tsx +0 -0
  2686. /package/dist/templates/{contents/themes → projects}/starter/templates/(public)/support/page.tsx +0 -0
  2687. /package/dist/templates/{contents/themes → projects}/starter/templates/dashboard/analytics/loading.tsx +0 -0
  2688. /package/dist/templates/{contents/themes → projects}/starter/templates/dashboard/analytics/page.tsx +0 -0
  2689. /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/devtools/access.bdd.md +0 -0
  2690. /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/devtools/access.cy.ts +0 -0
  2691. /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/devtools/navigation.bdd.md +0 -0
  2692. /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/devtools/navigation.cy.ts +0 -0
  2693. /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/devtools/pages.bdd.md +0 -0
  2694. /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/devtools/pages.cy.ts +0 -0
  2695. /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/auth.bdd.md +0 -0
  2696. /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/auth.cy.ts +0 -0
  2697. /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/billing.bdd.md +0 -0
  2698. /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/billing.cy.ts +0 -0
  2699. /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/block-editor.cy.ts +0 -0
  2700. /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/dashboard-container.cy.ts +0 -0
  2701. /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/dashboard-mobile.bdd.md +0 -0
  2702. /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/dashboard-mobile.cy.ts +0 -0
  2703. /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/dashboard-navigation.cy.ts +0 -0
  2704. /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/dashboard-sidebar.cy.ts +0 -0
  2705. /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/dashboard-topnav.cy.ts +0 -0
  2706. /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/devtools.bdd.md +0 -0
  2707. /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/devtools.cy.ts +0 -0
  2708. /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/global-search.bdd.md +0 -0
  2709. /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/global-search.cy.ts +0 -0
  2710. /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/patterns.cy.ts +0 -0
  2711. /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/settings-api-keys.cy.ts +0 -0
  2712. /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/settings-billing.cy.ts +0 -0
  2713. /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/settings-layout.cy.ts +0 -0
  2714. /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/settings-password.cy.ts +0 -0
  2715. /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/settings-profile.cy.ts +0 -0
  2716. /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/settings-teams.cy.ts +0 -0
  2717. /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/superadmin.cy.ts +0 -0
  2718. /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/tasks.cy.ts +0 -0
  2719. /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/teams.cy.ts +0 -0
  2720. /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/superadmin/all-teams.bdd.md +0 -0
  2721. /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/superadmin/all-teams.cy.ts +0 -0
  2722. /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/superadmin/all-users.bdd.md +0 -0
  2723. /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/superadmin/all-users.cy.ts +0 -0
  2724. /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/superadmin/dashboard.bdd.md +0 -0
  2725. /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/superadmin/dashboard.cy.ts +0 -0
  2726. /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/superadmin/subscriptions-overview.bdd.md +0 -0
  2727. /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/superadmin/subscriptions-overview.cy.ts +0 -0
  2728. /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/e2e/api/entities/tasks/TaskAPIController.js +0 -0
  2729. /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/e2e/uat/entities/tasks/tasks-crud.bdd.md +0 -0
  2730. /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/e2e/uat/entities/tasks/tasks-crud.cy.ts +0 -0
  2731. /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/fixtures/entities.json +0 -0
  2732. /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/src/components/DevKeyringPOM.ts +0 -0
  2733. /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/src/components/EntityForm.ts +0 -0
  2734. /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/src/components/EntityList.ts +0 -0
  2735. /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/src/components/TeamSwitcherPOM.ts +0 -0
  2736. /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/src/components/index.ts +0 -0
  2737. /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/src/controllers/BaseAPIController.js +0 -0
  2738. /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/src/controllers/index.js +0 -0
  2739. /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/src/core/AuthPOM.ts +0 -0
  2740. /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/src/core/BasePOM.ts +0 -0
  2741. /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/src/core/BlockEditorBasePOM.ts +0 -0
  2742. /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/src/core/DashboardEntityPOM.ts +0 -0
  2743. /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/src/core/index.ts +0 -0
  2744. /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/src/entities/PagesPOM.ts +0 -0
  2745. /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/src/entities/PatternsPOM.ts +0 -0
  2746. /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/src/entities/TasksPOM.ts +0 -0
  2747. /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/src/entities/index.ts +0 -0
  2748. /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/src/features/BillingPOM.ts +0 -0
  2749. /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/src/features/DashboardPOM.ts +0 -0
  2750. /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/src/features/DevtoolsPOM.ts +0 -0
  2751. /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/src/features/PageBuilderPOM.ts +0 -0
  2752. /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/src/features/PostEditorPOM.ts +0 -0
  2753. /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/src/features/ScheduledActionsPOM.ts +0 -0
  2754. /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/src/features/SettingsPOM.ts +0 -0
  2755. /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/src/features/SuperadminPOM.ts +0 -0
  2756. /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/src/features/SuperadminTeamRolesPOM.ts +0 -0
  2757. /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/src/features/index.ts +0 -0
  2758. /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/src/helpers/ApiInterceptor.ts +0 -0
  2759. /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/src/index.ts +0 -0
  2760. /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/src/selectors.ts +0 -0
  2761. /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/support/commands.ts +0 -0
  2762. /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/support/doc-commands.ts +0 -0
  2763. /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/support/e2e.ts +0 -0
  2764. /package/{templates/contents/themes → dist/templates/projects}/starter/tests/jest/__mocks__/jose.js +0 -0
  2765. /package/{templates/contents/themes → dist/templates/projects}/starter/tests/jest/__mocks__/next-server.js +0 -0
  2766. /package/dist/templates/{contents/themes → projects}/starter/tests/jest/setup.ts +0 -0
  2767. /package/templates/{contents/plugins → plugins}/starter/plugin/components/ExampleWidget.tsx.template +0 -0
  2768. /package/templates/{contents/plugins → plugins}/starter/plugin/entities/.gitkeep +0 -0
  2769. /package/templates/{contents/plugins → plugins}/starter/plugin/lib/core.ts.template +0 -0
  2770. /package/templates/{contents/plugins → plugins}/starter/plugin/lib/types.ts.template +0 -0
  2771. /package/templates/{contents/plugins → plugins}/starter/plugin/messages/de.json +0 -0
  2772. /package/templates/{contents/plugins → plugins}/starter/plugin/messages/en.json +0 -0
  2773. /package/templates/{contents/plugins → plugins}/starter/plugin/messages/es.json +0 -0
  2774. /package/templates/{contents/plugins → plugins}/starter/plugin/messages/fr.json +0 -0
  2775. /package/templates/{contents/plugins → plugins}/starter/plugin/messages/it.json +0 -0
  2776. /package/templates/{contents/plugins → plugins}/starter/plugin/messages/pt.json +0 -0
  2777. /package/templates/{contents/plugins → plugins}/starter/plugin/migrations/README.md +0 -0
  2778. /package/templates/{contents/plugins → plugins}/starter/plugin/plugin.config.ts.template +0 -0
  2779. /package/templates/{contents/plugins → plugins}/starter/plugin/tests/plugin.test.ts.template +0 -0
  2780. /package/templates/{contents/themes → projects}/starter/README.md +0 -0
  2781. /package/templates/{contents/themes → projects}/starter/about/business.md +0 -0
  2782. /package/templates/{contents/themes → projects}/starter/about/features.json +0 -0
  2783. /package/{dist/templates/contents/themes/starter/public/brand → templates/projects/starter/blocks}/.gitkeep +0 -0
  2784. /package/templates/{contents/themes → projects}/starter/blocks/cta-section/component.tsx +0 -0
  2785. /package/templates/{contents/themes → projects}/starter/blocks/cta-section/fields.ts +0 -0
  2786. /package/templates/{contents/themes → projects}/starter/blocks/cta-section/index.ts +0 -0
  2787. /package/templates/{contents/themes → projects}/starter/blocks/cta-section/schema.ts +0 -0
  2788. /package/templates/{contents/themes → projects}/starter/blocks/cta-section/thumbnail.png +0 -0
  2789. /package/templates/{contents/themes → projects}/starter/blocks/features-grid/component.tsx +0 -0
  2790. /package/templates/{contents/themes → projects}/starter/blocks/features-grid/fields.ts +0 -0
  2791. /package/templates/{contents/themes → projects}/starter/blocks/features-grid/index.ts +0 -0
  2792. /package/templates/{contents/themes → projects}/starter/blocks/features-grid/schema.ts +0 -0
  2793. /package/templates/{contents/themes → projects}/starter/blocks/features-grid/thumbnail.png +0 -0
  2794. /package/templates/{contents/themes → projects}/starter/blocks/hero/component.tsx +0 -0
  2795. /package/templates/{contents/themes → projects}/starter/blocks/hero/fields.ts +0 -0
  2796. /package/templates/{contents/themes → projects}/starter/blocks/hero/index.ts +0 -0
  2797. /package/templates/{contents/themes → projects}/starter/blocks/hero/schema.ts +0 -0
  2798. /package/templates/{contents/themes → projects}/starter/blocks/hero/thumbnail.png +0 -0
  2799. /package/templates/{contents/themes → projects}/starter/blocks/testimonials/component.tsx +0 -0
  2800. /package/templates/{contents/themes → projects}/starter/blocks/testimonials/fields.ts +0 -0
  2801. /package/templates/{contents/themes → projects}/starter/blocks/testimonials/index.ts +0 -0
  2802. /package/templates/{contents/themes → projects}/starter/blocks/testimonials/schema.ts +0 -0
  2803. /package/templates/{contents/themes → projects}/starter/blocks/testimonials/thumbnail.png +0 -0
  2804. /package/templates/{contents/themes → projects}/starter/blocks/text-content/component.tsx +0 -0
  2805. /package/templates/{contents/themes → projects}/starter/blocks/text-content/fields.ts +0 -0
  2806. /package/templates/{contents/themes → projects}/starter/blocks/text-content/index.ts +0 -0
  2807. /package/templates/{contents/themes → projects}/starter/blocks/text-content/schema.ts +0 -0
  2808. /package/templates/{contents/themes → projects}/starter/blocks/text-content/thumbnail.png +0 -0
  2809. /package/templates/{contents/themes → projects}/starter/components/.gitkeep +0 -0
  2810. /package/templates/{contents/themes → projects}/starter/components/analytics/RecentActivity.tsx +0 -0
  2811. /package/templates/{contents/themes → projects}/starter/components/analytics/StatsCard.tsx +0 -0
  2812. /package/templates/{contents/themes → projects}/starter/components/analytics/TasksChart.tsx +0 -0
  2813. /package/templates/{contents/themes → projects}/starter/components/analytics/index.ts +0 -0
  2814. /package/templates/{contents/themes → projects}/starter/config/app.config.ts +0 -0
  2815. /package/templates/{contents/themes → projects}/starter/config/billing.config.ts +0 -0
  2816. /package/templates/{contents/themes → projects}/starter/config/dashboard.config.ts +0 -0
  2817. /package/templates/{contents/themes → projects}/starter/config/dev.config.ts +0 -0
  2818. /package/templates/{contents/themes → projects}/starter/config/features.config.ts +0 -0
  2819. /package/templates/{contents/themes → projects}/starter/config/permissions.config.ts +0 -0
  2820. /package/templates/{contents/themes → projects}/starter/config/theme.config.ts +0 -0
  2821. /package/templates/{contents/themes → projects}/starter/docs/public/01-overview/01-introduction.md +0 -0
  2822. /package/templates/{contents/themes → projects}/starter/docs/public/01-overview/02-customization.md +0 -0
  2823. /package/templates/{contents/themes → projects}/starter/docs/superadmin/01-setup/01-configuration.md +0 -0
  2824. /package/templates/{contents/themes → projects}/starter/docs/superadmin/02-entities/01-tasks.md +0 -0
  2825. /package/templates/{contents/themes → projects}/starter/emails/verify-email.ts +0 -0
  2826. /package/templates/{contents/themes → projects}/starter/entities/pages/api/docs.md +0 -0
  2827. /package/templates/{contents/themes → projects}/starter/entities/pages/api/presets.ts +0 -0
  2828. /package/templates/{contents/themes → projects}/starter/entities/pages/messages/en.json +0 -0
  2829. /package/templates/{contents/themes → projects}/starter/entities/pages/messages/es.json +0 -0
  2830. /package/templates/{contents/themes → projects}/starter/entities/pages/migrations/001_pages_table.sql +0 -0
  2831. /package/templates/{contents/themes → projects}/starter/entities/pages/migrations/002_pages_metas.sql +0 -0
  2832. /package/templates/{contents/themes → projects}/starter/entities/pages/migrations/003_add_status.sql +0 -0
  2833. /package/templates/{contents/themes → projects}/starter/entities/pages/pages-management.service.ts +0 -0
  2834. /package/templates/{contents/themes → projects}/starter/entities/pages/pages.fields.ts +0 -0
  2835. /package/templates/{contents/themes → projects}/starter/entities/pages/pages.service.ts +0 -0
  2836. /package/templates/{contents/themes → projects}/starter/entities/pages/pages.types.ts +0 -0
  2837. /package/templates/{contents/themes → projects}/starter/entities/posts/api/docs.md +0 -0
  2838. /package/templates/{contents/themes → projects}/starter/entities/posts/api/presets.ts +0 -0
  2839. /package/templates/{contents/themes → projects}/starter/entities/posts/components/post-header.tsx +0 -0
  2840. /package/templates/{contents/themes → projects}/starter/entities/posts/messages/en.json +0 -0
  2841. /package/templates/{contents/themes → projects}/starter/entities/posts/messages/es.json +0 -0
  2842. /package/templates/{contents/themes → projects}/starter/entities/posts/migrations/001_posts_table.sql +0 -0
  2843. /package/templates/{contents/themes → projects}/starter/entities/posts/migrations/003_add_status.sql +0 -0
  2844. /package/templates/{contents/themes → projects}/starter/entities/posts/migrations/004_entity_taxonomy_relations.sql +0 -0
  2845. /package/templates/{contents/themes → projects}/starter/entities/posts/migrations/006_posts_metas.sql +0 -0
  2846. /package/templates/{contents/themes → projects}/starter/entities/posts/posts.fields.ts +0 -0
  2847. /package/templates/{contents/themes → projects}/starter/entities/posts/posts.service.ts +0 -0
  2848. /package/templates/{contents/themes → projects}/starter/entities/posts/posts.types.ts +0 -0
  2849. /package/templates/{contents/themes → projects}/starter/entities/tasks/api/docs.md +0 -0
  2850. /package/templates/{contents/themes → projects}/starter/entities/tasks/api/presets.ts +0 -0
  2851. /package/templates/{contents/themes → projects}/starter/entities/tasks/messages/de.json +0 -0
  2852. /package/templates/{contents/themes → projects}/starter/entities/tasks/messages/en.json +0 -0
  2853. /package/templates/{contents/themes → projects}/starter/entities/tasks/messages/es.json +0 -0
  2854. /package/templates/{contents/themes → projects}/starter/entities/tasks/messages/fr.json +0 -0
  2855. /package/templates/{contents/themes → projects}/starter/entities/tasks/messages/it.json +0 -0
  2856. /package/templates/{contents/themes → projects}/starter/entities/tasks/messages/pt.json +0 -0
  2857. /package/templates/{contents/themes → projects}/starter/entities/tasks/migrations/001_tasks_table.sql +0 -0
  2858. /package/templates/{contents/themes → projects}/starter/entities/tasks/migrations/002_task_metas.sql +0 -0
  2859. /package/templates/{contents/themes → projects}/starter/entities/tasks/tasks.fields.ts +0 -0
  2860. /package/templates/{contents/themes → projects}/starter/entities/tasks/tasks.service.ts +0 -0
  2861. /package/templates/{contents/themes → projects}/starter/entities/tasks/tasks.types.ts +0 -0
  2862. /package/templates/{contents/themes → projects}/starter/lib/.gitkeep +0 -0
  2863. /package/templates/{contents/themes → projects}/starter/lib/hooks/index.ts +0 -0
  2864. /package/templates/{contents/themes → projects}/starter/lib/hooks/useAnalyticsData.ts +0 -0
  2865. /package/templates/{contents/themes → projects}/starter/lib/hooks/useTaskStats.ts +0 -0
  2866. /package/templates/{contents/themes → projects}/starter/lib/index.ts +0 -0
  2867. /package/templates/{contents/themes → projects}/starter/lib/selectors.ts +0 -0
  2868. /package/templates/{contents/themes → projects}/starter/lib/utils.ts +0 -0
  2869. /package/templates/{contents/themes → projects}/starter/messages/de/analytics.json +0 -0
  2870. /package/templates/{contents/themes → projects}/starter/messages/de/common.json +0 -0
  2871. /package/templates/{contents/themes → projects}/starter/messages/de/dev.json +0 -0
  2872. /package/templates/{contents/themes → projects}/starter/messages/de/features.json +0 -0
  2873. /package/templates/{contents/themes → projects}/starter/messages/de/home.json +0 -0
  2874. /package/templates/{contents/themes → projects}/starter/messages/de/index.ts +0 -0
  2875. /package/templates/{contents/themes → projects}/starter/messages/de/navigation.json +0 -0
  2876. /package/templates/{contents/themes → projects}/starter/messages/de/public.json +0 -0
  2877. /package/templates/{contents/themes → projects}/starter/messages/en/analytics.json +0 -0
  2878. /package/templates/{contents/themes → projects}/starter/messages/en/common.json +0 -0
  2879. /package/templates/{contents/themes → projects}/starter/messages/en/dev.json +0 -0
  2880. /package/templates/{contents/themes → projects}/starter/messages/en/features.json +0 -0
  2881. /package/templates/{contents/themes → projects}/starter/messages/en/home.json +0 -0
  2882. /package/templates/{contents/themes → projects}/starter/messages/en/index.ts +0 -0
  2883. /package/templates/{contents/themes → projects}/starter/messages/en/navigation.json +0 -0
  2884. /package/templates/{contents/themes → projects}/starter/messages/en/public.json +0 -0
  2885. /package/templates/{contents/themes → projects}/starter/messages/es/analytics.json +0 -0
  2886. /package/templates/{contents/themes → projects}/starter/messages/es/common.json +0 -0
  2887. /package/templates/{contents/themes → projects}/starter/messages/es/dev.json +0 -0
  2888. /package/templates/{contents/themes → projects}/starter/messages/es/features.json +0 -0
  2889. /package/templates/{contents/themes → projects}/starter/messages/es/home.json +0 -0
  2890. /package/templates/{contents/themes → projects}/starter/messages/es/index.ts +0 -0
  2891. /package/templates/{contents/themes → projects}/starter/messages/es/navigation.json +0 -0
  2892. /package/templates/{contents/themes → projects}/starter/messages/es/public.json +0 -0
  2893. /package/templates/{contents/themes → projects}/starter/messages/fr/analytics.json +0 -0
  2894. /package/templates/{contents/themes → projects}/starter/messages/fr/common.json +0 -0
  2895. /package/templates/{contents/themes → projects}/starter/messages/fr/dev.json +0 -0
  2896. /package/templates/{contents/themes → projects}/starter/messages/fr/features.json +0 -0
  2897. /package/templates/{contents/themes → projects}/starter/messages/fr/home.json +0 -0
  2898. /package/templates/{contents/themes → projects}/starter/messages/fr/index.ts +0 -0
  2899. /package/templates/{contents/themes → projects}/starter/messages/fr/navigation.json +0 -0
  2900. /package/templates/{contents/themes → projects}/starter/messages/fr/public.json +0 -0
  2901. /package/templates/{contents/themes → projects}/starter/messages/it/analytics.json +0 -0
  2902. /package/templates/{contents/themes → projects}/starter/messages/it/common.json +0 -0
  2903. /package/templates/{contents/themes → projects}/starter/messages/it/dev.json +0 -0
  2904. /package/templates/{contents/themes → projects}/starter/messages/it/features.json +0 -0
  2905. /package/templates/{contents/themes → projects}/starter/messages/it/home.json +0 -0
  2906. /package/templates/{contents/themes → projects}/starter/messages/it/index.ts +0 -0
  2907. /package/templates/{contents/themes → projects}/starter/messages/it/navigation.json +0 -0
  2908. /package/templates/{contents/themes → projects}/starter/messages/pt/analytics.json +0 -0
  2909. /package/templates/{contents/themes → projects}/starter/messages/pt/common.json +0 -0
  2910. /package/templates/{contents/themes → projects}/starter/messages/pt/dev.json +0 -0
  2911. /package/templates/{contents/themes → projects}/starter/messages/pt/features.json +0 -0
  2912. /package/templates/{contents/themes → projects}/starter/messages/pt/home.json +0 -0
  2913. /package/templates/{contents/themes → projects}/starter/messages/pt/index.ts +0 -0
  2914. /package/templates/{contents/themes → projects}/starter/messages/pt/navigation.json +0 -0
  2915. /package/templates/{contents/themes → projects}/starter/migrations/README.md +0 -0
  2916. /package/templates/{contents/plugins → projects/starter/public/brand}/.gitkeep +0 -0
  2917. /package/templates/{contents/themes → projects}/starter/styles/components.css +0 -0
  2918. /package/templates/{contents/themes → projects}/starter/templates/(public)/layout.tsx +0 -0
  2919. /package/templates/{contents/themes → projects}/starter/templates/(public)/support/page.tsx +0 -0
  2920. /package/templates/{contents/themes → projects}/starter/templates/dashboard/analytics/loading.tsx +0 -0
  2921. /package/templates/{contents/themes → projects}/starter/templates/dashboard/analytics/page.tsx +0 -0
  2922. /package/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/devtools/access.bdd.md +0 -0
  2923. /package/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/devtools/access.cy.ts +0 -0
  2924. /package/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/devtools/navigation.bdd.md +0 -0
  2925. /package/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/devtools/navigation.cy.ts +0 -0
  2926. /package/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/devtools/pages.bdd.md +0 -0
  2927. /package/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/devtools/pages.cy.ts +0 -0
  2928. /package/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/auth.bdd.md +0 -0
  2929. /package/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/auth.cy.ts +0 -0
  2930. /package/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/billing.bdd.md +0 -0
  2931. /package/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/billing.cy.ts +0 -0
  2932. /package/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/block-editor.cy.ts +0 -0
  2933. /package/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/dashboard-container.cy.ts +0 -0
  2934. /package/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/dashboard-mobile.bdd.md +0 -0
  2935. /package/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/dashboard-mobile.cy.ts +0 -0
  2936. /package/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/dashboard-navigation.cy.ts +0 -0
  2937. /package/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/dashboard-sidebar.cy.ts +0 -0
  2938. /package/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/dashboard-topnav.cy.ts +0 -0
  2939. /package/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/devtools.bdd.md +0 -0
  2940. /package/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/devtools.cy.ts +0 -0
  2941. /package/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/global-search.bdd.md +0 -0
  2942. /package/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/global-search.cy.ts +0 -0
  2943. /package/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/patterns.cy.ts +0 -0
  2944. /package/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/settings-api-keys.cy.ts +0 -0
  2945. /package/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/settings-billing.cy.ts +0 -0
  2946. /package/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/settings-layout.cy.ts +0 -0
  2947. /package/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/settings-password.cy.ts +0 -0
  2948. /package/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/settings-profile.cy.ts +0 -0
  2949. /package/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/settings-teams.cy.ts +0 -0
  2950. /package/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/superadmin.cy.ts +0 -0
  2951. /package/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/tasks.cy.ts +0 -0
  2952. /package/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/teams.cy.ts +0 -0
  2953. /package/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/superadmin/all-teams.bdd.md +0 -0
  2954. /package/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/superadmin/all-teams.cy.ts +0 -0
  2955. /package/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/superadmin/all-users.bdd.md +0 -0
  2956. /package/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/superadmin/all-users.cy.ts +0 -0
  2957. /package/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/superadmin/dashboard.bdd.md +0 -0
  2958. /package/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/superadmin/dashboard.cy.ts +0 -0
  2959. /package/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/superadmin/subscriptions-overview.bdd.md +0 -0
  2960. /package/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/superadmin/subscriptions-overview.cy.ts +0 -0
  2961. /package/templates/{contents/themes → projects}/starter/tests/cypress/e2e/api/entities/tasks/TaskAPIController.js +0 -0
  2962. /package/templates/{contents/themes → projects}/starter/tests/cypress/e2e/uat/entities/tasks/tasks-crud.bdd.md +0 -0
  2963. /package/templates/{contents/themes → projects}/starter/tests/cypress/e2e/uat/entities/tasks/tasks-crud.cy.ts +0 -0
  2964. /package/templates/{contents/themes → projects}/starter/tests/cypress/fixtures/entities.json +0 -0
  2965. /package/templates/{contents/themes → projects}/starter/tests/cypress/src/components/DevKeyringPOM.ts +0 -0
  2966. /package/templates/{contents/themes → projects}/starter/tests/cypress/src/components/EntityForm.ts +0 -0
  2967. /package/templates/{contents/themes → projects}/starter/tests/cypress/src/components/EntityList.ts +0 -0
  2968. /package/templates/{contents/themes → projects}/starter/tests/cypress/src/components/TeamSwitcherPOM.ts +0 -0
  2969. /package/templates/{contents/themes → projects}/starter/tests/cypress/src/components/index.ts +0 -0
  2970. /package/templates/{contents/themes → projects}/starter/tests/cypress/src/controllers/BaseAPIController.js +0 -0
  2971. /package/templates/{contents/themes → projects}/starter/tests/cypress/src/controllers/index.js +0 -0
  2972. /package/templates/{contents/themes → projects}/starter/tests/cypress/src/core/AuthPOM.ts +0 -0
  2973. /package/templates/{contents/themes → projects}/starter/tests/cypress/src/core/BasePOM.ts +0 -0
  2974. /package/templates/{contents/themes → projects}/starter/tests/cypress/src/core/BlockEditorBasePOM.ts +0 -0
  2975. /package/templates/{contents/themes → projects}/starter/tests/cypress/src/core/DashboardEntityPOM.ts +0 -0
  2976. /package/templates/{contents/themes → projects}/starter/tests/cypress/src/core/index.ts +0 -0
  2977. /package/templates/{contents/themes → projects}/starter/tests/cypress/src/entities/PagesPOM.ts +0 -0
  2978. /package/templates/{contents/themes → projects}/starter/tests/cypress/src/entities/PatternsPOM.ts +0 -0
  2979. /package/templates/{contents/themes → projects}/starter/tests/cypress/src/entities/TasksPOM.ts +0 -0
  2980. /package/templates/{contents/themes → projects}/starter/tests/cypress/src/entities/index.ts +0 -0
  2981. /package/templates/{contents/themes → projects}/starter/tests/cypress/src/features/BillingPOM.ts +0 -0
  2982. /package/templates/{contents/themes → projects}/starter/tests/cypress/src/features/DashboardPOM.ts +0 -0
  2983. /package/templates/{contents/themes → projects}/starter/tests/cypress/src/features/DevtoolsPOM.ts +0 -0
  2984. /package/templates/{contents/themes → projects}/starter/tests/cypress/src/features/PageBuilderPOM.ts +0 -0
  2985. /package/templates/{contents/themes → projects}/starter/tests/cypress/src/features/PostEditorPOM.ts +0 -0
  2986. /package/templates/{contents/themes → projects}/starter/tests/cypress/src/features/ScheduledActionsPOM.ts +0 -0
  2987. /package/templates/{contents/themes → projects}/starter/tests/cypress/src/features/SettingsPOM.ts +0 -0
  2988. /package/templates/{contents/themes → projects}/starter/tests/cypress/src/features/SuperadminPOM.ts +0 -0
  2989. /package/templates/{contents/themes → projects}/starter/tests/cypress/src/features/SuperadminTeamRolesPOM.ts +0 -0
  2990. /package/templates/{contents/themes → projects}/starter/tests/cypress/src/features/index.ts +0 -0
  2991. /package/templates/{contents/themes → projects}/starter/tests/cypress/src/helpers/ApiInterceptor.ts +0 -0
  2992. /package/templates/{contents/themes → projects}/starter/tests/cypress/src/index.ts +0 -0
  2993. /package/templates/{contents/themes → projects}/starter/tests/cypress/src/selectors.ts +0 -0
  2994. /package/templates/{contents/themes → projects}/starter/tests/cypress/support/commands.ts +0 -0
  2995. /package/templates/{contents/themes → projects}/starter/tests/cypress/support/doc-commands.ts +0 -0
  2996. /package/templates/{contents/themes → projects}/starter/tests/cypress/support/e2e.ts +0 -0
  2997. /package/templates/{contents/themes → projects}/starter/tests/jest/setup.ts +0 -0
@@ -1,1066 +0,0 @@
1
- /**
2
- * Page Generator
3
- *
4
- * Generates missing pages from template definitions
5
- *
6
- * @module core/scripts/build/registry/post-build/page-generator
7
- */
8
-
9
- import { createRequire } from 'node:module'
10
- import { constants, existsSync } from 'fs'
11
- import { lstat, readdir, readFile } from 'fs/promises'
12
- import { join, dirname, relative, sep } from 'path'
13
- import { fileURLToPath } from 'url'
14
-
15
- import { errorWithLines, log, verbose } from '../../../utils/index.mjs'
16
- import { getProtectionLevel, ProtectionLevel } from '../../../../dist/config/protected-paths.js'
17
- import { selectTypeScriptModule, loadTypeScriptFor } from '../shared/typescript-compiler.mjs'
18
- import { ensureBackupsGitignore } from './own-gitignores.mjs'
19
- import { projectFiles } from '../../safe-fs.mjs'
20
-
21
- export { selectTypeScriptModule }
22
-
23
- const __filename = fileURLToPath(import.meta.url)
24
- const __dirname = dirname(__filename)
25
- // Default rootDir - use cwd() for NPM compatibility (will be overridden by config.projectRoot if provided)
26
- let rootDir = process.cwd()
27
-
28
- /**
29
- * Convert string to PascalCase
30
- */
31
- function toPascalCase(str) {
32
- return str
33
- .replace(/[^a-zA-Z0-9]/g, ' ')
34
- .split(' ')
35
- .map(word => word.charAt(0).toUpperCase() + word.slice(1).toLowerCase())
36
- .join('')
37
- }
38
-
39
- /**
40
- * Next.js route segment config keys (the `AppSegmentConfigSchema` keys from
41
- * `next/dist/build/segment-config/app/app-segment-config`). Next.js only
42
- * reads these when they're declared as a literal `export const` directly in
43
- * the route file — a re-export doesn't work, so the generated route file
44
- * must re-declare the value itself rather than forward it.
45
- */
46
- export const SEGMENT_CONFIG_EXPORTS = [
47
- 'revalidate',
48
- 'dynamicParams',
49
- 'dynamic',
50
- 'fetchCache',
51
- 'preferredRegion',
52
- 'experimental_ppr',
53
- 'runtime',
54
- 'maxDuration',
55
- ]
56
-
57
- /**
58
- * Next.js module-level route exports that Next.js is happy to pick up
59
- * through a re-export (`export { x } from '...'`), unlike segment config.
60
- */
61
- export const MODULE_LEVEL_EXPORTS = [
62
- 'generateMetadata',
63
- 'generateStaticParams',
64
- 'generateViewport',
65
- 'metadata',
66
- 'viewport',
67
- ]
68
-
69
- /**
70
- * Per-key validators for the segment config schema. A value that parses as a
71
- * literal but doesn't match here would still make Next.js throw at build
72
- * time (via `parseAppSegmentConfig`), just later and with less context about
73
- * which theme template caused it.
74
- */
75
- const SEGMENT_CONFIG_VALIDATORS = {
76
- revalidate: value => value === false || (typeof value === 'number' && Number.isInteger(value) && value >= 0),
77
- dynamicParams: value => typeof value === 'boolean',
78
- dynamic: value => ['auto', 'error', 'force-static', 'force-dynamic'].includes(value),
79
- fetchCache: value =>
80
- ['auto', 'default-cache', 'only-cache', 'force-cache', 'force-no-store', 'default-no-store', 'only-no-store'].includes(value),
81
- preferredRegion: value => typeof value === 'string' || (Array.isArray(value) && value.every(item => typeof item === 'string')),
82
- experimental_ppr: value => typeof value === 'boolean',
83
- runtime: value => ['edge', 'nodejs'].includes(value),
84
- maxDuration: value => typeof value === 'number' && Number.isInteger(value) && value >= 0,
85
- }
86
-
87
- let nextParseModulePromise = null
88
-
89
- /**
90
- * Next.js's own module parser and SWC binding loader, resolved from the project
91
- * and then from core, or null when neither has Next.js.
92
- */
93
- function loadNextParseModule() {
94
- if (!nextParseModulePromise) {
95
- const parseModulePath = 'next/dist/build/analysis/parse-module'
96
- const swcPath = 'next/dist/build/swc'
97
- const loadFrom = require => ({
98
- parseModule: require(parseModulePath).parseModule,
99
- loadBindings: require(swcPath).loadBindings,
100
- })
101
- nextParseModulePromise = Promise.resolve()
102
- .then(() => loadFrom(createRequire(join(rootDir, 'package.json'))))
103
- .catch(() => loadFrom(createRequire(import.meta.url)))
104
- .then(async ({ parseModule, loadBindings }) => {
105
- await loadBindings()
106
- return parseModule
107
- }, () => null)
108
- }
109
- return nextParseModulePromise
110
- }
111
-
112
- /** Whether Next.js parses `source`; its parser answers null for a module it cannot. */
113
- async function nextParses(filePath, source) {
114
- const parseModule = await loadNextParseModule()
115
- return Boolean(parseModule && (await parseModule(filePath, source)))
116
- }
117
-
118
- /**
119
- * Unwrap the syntactic wrappers around a literal that don't change its
120
- * runtime value: parentheses, `as const`, and `satisfies`.
121
- */
122
- function unwrapExpression(expression, ts) {
123
- let current = expression
124
- while (true) {
125
- if (ts.isParenthesizedExpression(current)) {
126
- current = current.expression
127
- } else if (ts.isAsExpression(current) || ts.isSatisfiesExpression(current)) {
128
- current = current.expression
129
- } else {
130
- return current
131
- }
132
- }
133
- }
134
-
135
- /**
136
- * Evaluate an expression node as a JSON-compatible literal. Returns
137
- * `{ ok: false }` for anything that isn't a literal Next.js could read
138
- * statically - an expression, an identifier reference, a call, etc.
139
- */
140
- function evaluateLiteral(expression, ts) {
141
- const node = unwrapExpression(expression, ts)
142
-
143
- if (node.kind === ts.SyntaxKind.TrueKeyword) return { ok: true, value: true }
144
- if (node.kind === ts.SyntaxKind.FalseKeyword) return { ok: true, value: false }
145
- if (ts.isNumericLiteral(node)) return { ok: true, value: Number(node.text.replace(/_/g, '')) }
146
- if (ts.isStringLiteralLike(node)) return { ok: true, value: node.text }
147
-
148
- if (ts.isPrefixUnaryExpression(node) && node.operator === ts.SyntaxKind.MinusToken) {
149
- const operand = evaluateLiteral(node.operand, ts)
150
- return operand.ok && typeof operand.value === 'number' ? { ok: true, value: -operand.value } : { ok: false }
151
- }
152
-
153
- if (ts.isArrayLiteralExpression(node)) {
154
- const values = []
155
- for (const element of node.elements) {
156
- const item = evaluateLiteral(element, ts)
157
- if (!item.ok) return { ok: false }
158
- values.push(item.value)
159
- }
160
- return { ok: true, value: values }
161
- }
162
-
163
- return { ok: false }
164
- }
165
-
166
- function isExported(node, ts) {
167
- return Boolean(node.modifiers?.some(modifier => modifier.kind === ts.SyntaxKind.ExportKeyword))
168
- }
169
-
170
- /**
171
- * Whether a module has a runtime default export: `export default <expr>`,
172
- * `export default function`/`class`, or `default` named in an export clause
173
- * (`export { Layout as default }`, `export { default } from './shell'`).
174
- * Type-only exports give the route no component.
175
- */
176
- function declaresDefaultExport(sourceFile, ts) {
177
- return sourceFile.statements.some(statement => {
178
- if (ts.isExportAssignment(statement)) return !statement.isExportEquals
179
- if (ts.isFunctionDeclaration(statement) || ts.isClassDeclaration(statement)) {
180
- return isExported(statement, ts) && Boolean(statement.modifiers?.some(modifier => modifier.kind === ts.SyntaxKind.DefaultKeyword))
181
- }
182
- if (ts.isExportDeclaration(statement) && !statement.isTypeOnly && statement.exportClause && ts.isNamedExports(statement.exportClause)) {
183
- return statement.exportClause.elements.some(element => !element.isTypeOnly && element.name.text === 'default')
184
- }
185
- return false
186
- })
187
- }
188
-
189
- /**
190
- * Parse a theme template's source into a TypeScript AST.
191
- *
192
- * The parser recovers from a syntax error by skipping code, exports included. A
193
- * template Next.js cannot parse either is reported rather than read in part. One
194
- * it can is read from what TypeScript recovered, with a warning: Next.js compiles
195
- * templates with SWC, which may know syntax the installed TypeScript does not.
196
- */
197
- async function parseTemplateSource(source, filePath) {
198
- const ts = await loadTypeScriptFor(rootDir)
199
- // Parsed as its own kind of file: a TSX parse reads TypeScript-only syntax in a
200
- // .ts template (`<T>(props) => ...`, `<Props>value`) as JSX and loses what follows
201
- const sourceFile = ts.createSourceFile(filePath, source, ts.ScriptTarget.Latest, true, ts.getScriptKindFromFileName(filePath))
202
-
203
- const [parseError] = sourceFile.parseDiagnostics ?? []
204
- if (parseError) {
205
- const { line } = sourceFile.getLineAndCharacterOfPosition(parseError.start ?? 0)
206
- const where = `${filePath}:${line + 1}`
207
- const reason = ts.flattenDiagnosticMessageText(parseError.messageText, ' ')
208
- if (!(await nextParses(filePath, source))) {
209
- throw new Error(`${where}: the template does not parse (${reason}), so its route-level exports cannot be read.`)
210
- }
211
- console.warn(
212
- `${where}: TypeScript cannot parse the template (${reason}) but Next.js can; its route-level exports are read from what TypeScript parsed.`
213
- )
214
- }
215
-
216
- return { ts, sourceFile }
217
- }
218
-
219
- /**
220
- * Split a parsed theme template's route-level exports into:
221
- * - `segmentConfig`: segment config keys that resolve to a literal value the
222
- * generated route file can re-declare (`{ name: value }`).
223
- * - `moduleExports`: exported names (functions, `metadata`, etc.) the
224
- * generated route file can safely forward with `export { ... } from`.
225
- * - `hasDefaultExport`: whether it exports a component as default, read from
226
- * the syntax tree so a comment or string mentioning `export default` doesn't
227
- * count and `export { Layout as default }` does.
228
- *
229
- * - `errors`: one per segment config key that IS exported but not as a
230
- * literal `export const` (an expression, an identifier, `let`/`var`, a
231
- * re-export, or a value the Next.js schema rejects). Next.js would ignore
232
- * such a value and fall back to its default, and nothing in the build would
233
- * say so beyond a console warning, so a route file generated from the
234
- * template must not be written with it. They are returned rather than
235
- * thrown because a template whose app route already exists gets no route
236
- * file, and nothing reads its segment config.
237
- */
238
- function collectRouteExports(sourceFile, ts, filePath) {
239
- const segmentConfig = {}
240
- const moduleExports = []
241
- const seenModuleExports = new Set()
242
- const errors = []
243
-
244
- const lineOf = node => sourceFile.getLineAndCharacterOfPosition(node.getStart(sourceFile)).line + 1
245
-
246
- const addModuleExport = name => {
247
- if (!seenModuleExports.has(name)) {
248
- seenModuleExports.add(name)
249
- moduleExports.push(name)
250
- }
251
- }
252
-
253
- const recordSegmentError = (name, node, reason) => {
254
- errors.push(
255
- `${filePath}:${lineOf(node)}: segment config export "${name}" ${reason}. ` +
256
- `Next.js only reads segment config when it's a literal declared directly in the route file ` +
257
- `(\`export const ${name} = ...\`) - anything else is silently ignored and the default is used instead. ` +
258
- `Use a literal.`
259
- )
260
- }
261
-
262
- for (const statement of sourceFile.statements) {
263
- if (ts.isVariableStatement(statement) && isExported(statement, ts)) {
264
- const isConst = (statement.declarationList.flags & ts.NodeFlags.Const) !== 0
265
-
266
- for (const declaration of statement.declarationList.declarations) {
267
- if (!ts.isIdentifier(declaration.name)) continue
268
- const name = declaration.name.text
269
-
270
- if (SEGMENT_CONFIG_EXPORTS.includes(name)) {
271
- if (!isConst) {
272
- recordSegmentError(name, declaration, 'is declared with "let" or "var"')
273
- continue
274
- }
275
- if (!declaration.initializer) {
276
- recordSegmentError(name, declaration, 'has no initializer')
277
- continue
278
- }
279
-
280
- const literal = evaluateLiteral(declaration.initializer, ts)
281
- if (!literal.ok) {
282
- recordSegmentError(name, declaration, 'is not a literal (an expression or identifier)')
283
- continue
284
- }
285
-
286
- const validate = SEGMENT_CONFIG_VALIDATORS[name]
287
- if (!validate(literal.value)) {
288
- recordSegmentError(name, declaration, `has a value (${JSON.stringify(literal.value)}) outside what Next.js accepts for "${name}"`)
289
- continue
290
- }
291
-
292
- segmentConfig[name] = literal.value
293
- } else if (MODULE_LEVEL_EXPORTS.includes(name)) {
294
- addModuleExport(name)
295
- }
296
- }
297
- } else if (ts.isFunctionDeclaration(statement) && statement.name && isExported(statement, ts)) {
298
- const name = statement.name.text
299
- if (SEGMENT_CONFIG_EXPORTS.includes(name)) {
300
- recordSegmentError(name, statement, 'is declared as a function, not a literal')
301
- } else if (MODULE_LEVEL_EXPORTS.includes(name)) {
302
- addModuleExport(name)
303
- }
304
- } else if (ts.isExportDeclaration(statement) && statement.exportClause && ts.isNamedExports(statement.exportClause)) {
305
- for (const element of statement.exportClause.elements) {
306
- const exportedName = element.name.text
307
-
308
- if (SEGMENT_CONFIG_EXPORTS.includes(exportedName)) {
309
- recordSegmentError(
310
- exportedName,
311
- element,
312
- statement.moduleSpecifier
313
- ? 'is re-exported from another module'
314
- : 'is exported via `export { }` instead of an inline `export const`'
315
- )
316
- } else if (MODULE_LEVEL_EXPORTS.includes(exportedName)) {
317
- addModuleExport(exportedName)
318
- }
319
- }
320
- }
321
- }
322
-
323
- return { segmentConfig, moduleExports, hasDefaultExport: declaresDefaultExport(sourceFile, ts), errors }
324
- }
325
-
326
- /**
327
- * Parse a theme template's source and return its route-level exports as
328
- * `collectRouteExports` splits them, throwing on segment config Next.js
329
- * wouldn't read.
330
- */
331
- export async function extractRouteExports(source, filePath) {
332
- const { ts, sourceFile } = await parseTemplateSource(source, filePath)
333
- const { errors, ...routeExports } = collectRouteExports(sourceFile, ts, filePath)
334
-
335
- if (errors.length > 0) {
336
- throw errorWithLines(errors)
337
- }
338
-
339
- return routeExports
340
- }
341
-
342
- /**
343
- * Resolve a `@/contents/...` template import path to its file on disk,
344
- * trying both TSX and TS extensions.
345
- */
346
- function resolveTemplateFilePath(templatePath, root) {
347
- const baseTemplatePath = templatePath
348
- .replace('@/', root + '/')
349
- .replace(/\.(tsx|ts)$/, '')
350
- return existsSync(baseTemplatePath + '.tsx') ? baseTemplatePath + '.tsx' : baseTemplatePath + '.ts'
351
- }
352
-
353
- /**
354
- * Read a template file and collect its route-level exports. A missing file
355
- * is treated as having none and as having a default export - a build-time
356
- * override may point at a template that hasn't been generated yet, and
357
- * assuming a component exists there keeps that case importing it rather than
358
- * silently downgrading to metadata-only.
359
- */
360
- async function readTemplateExports(templatePath, root) {
361
- const absoluteTemplatePath = resolveTemplateFilePath(templatePath, root)
362
-
363
- let templateContent
364
- try {
365
- templateContent = await readFile(absoluteTemplatePath, 'utf8')
366
- } catch {
367
- return { segmentConfig: {}, moduleExports: [], hasDefaultExport: true, errors: [] }
368
- }
369
-
370
- const { ts, sourceFile } = await parseTemplateSource(templateContent, absoluteTemplatePath)
371
- return collectRouteExports(sourceFile, ts, absoluteTemplatePath)
372
- }
373
-
374
- /**
375
- * Render the segment config keys a template exports as re-declared literals.
376
- */
377
- function renderSegmentConfigBlock(segmentConfig) {
378
- return Object.entries(segmentConfig)
379
- .map(([name, value]) => `export const ${name} = ${JSON.stringify(value)}\n`)
380
- .join('')
381
- }
382
-
383
- /**
384
- * Render the module-level exports a template exports as a re-export from it.
385
- */
386
- function renderModuleExportsBlock(moduleExports, templatePathWithoutExtension) {
387
- return moduleExports.length > 0
388
- ? `export { ${moduleExports.join(', ')} } from '${templatePathWithoutExtension}'\n`
389
- : ''
390
- }
391
-
392
- /**
393
- * Generate content for a regular page (page.tsx, error.tsx, etc.)
394
- */
395
- function generateRegularPageContent(appPath, templatePath, { segmentConfig, moduleExports }) {
396
- // Remove .tsx/.ts extension from import path (TypeScript doesn't allow file extensions in imports)
397
- const templatePathWithoutExtension = templatePath.replace(/\.(tsx|ts)$/, '')
398
-
399
- const segmentConfigBlock = renderSegmentConfigBlock(segmentConfig)
400
- const segmentConfigSection = segmentConfigBlock
401
- ? `\n// Segment config re-declared as literals: Next.js only reads these when they're declared directly in the route file, not re-exported\n${segmentConfigBlock}`
402
- : ''
403
-
404
- const moduleExportsBlock = renderModuleExportsBlock(moduleExports, templatePathWithoutExtension)
405
- const moduleExportsSection = moduleExportsBlock
406
- ? `\n// Re-export Next.js route-level exports from the theme template\n${moduleExportsBlock}`
407
- : ''
408
-
409
- return `/**
410
- * Template page - directly imports from theme
411
- * Template: ${appPath}
412
- * Generated by: scripts/build-registry.mjs
413
- */
414
- import TemplateComponent from '${templatePathWithoutExtension}'
415
-
416
- // Direct export of the theme template (no fallback)
417
- export default TemplateComponent
418
- ${segmentConfigSection}${moduleExportsSection}`
419
- }
420
-
421
- /**
422
- * Generate content for a layout page
423
- */
424
- function generateLayoutPageContent(appPath, componentName, templatePath, routeExports) {
425
- if (templatePath) {
426
- // Remove .tsx/.ts extension from import path (TypeScript doesn't allow file extensions in imports)
427
- const templatePathWithoutExtension = templatePath.replace(/\.(tsx|ts)$/, '')
428
-
429
- // Whether the template has a default export (component), and what
430
- // route-level exports it defines alongside (or instead of) it
431
- const { hasDefaultExport, segmentConfig, moduleExports } = routeExports
432
-
433
- const segmentConfigBlock = renderSegmentConfigBlock(segmentConfig)
434
- const moduleExportsBlock = renderModuleExportsBlock(moduleExports, templatePathWithoutExtension)
435
-
436
- if (hasDefaultExport) {
437
- // Template has a component - import and re-export it, plus any route-level exports it defines
438
- const forwardedExportsSection = segmentConfigBlock || moduleExportsBlock
439
- ? `\n// Re-export Next.js route-level exports from the theme template\n${segmentConfigBlock}${moduleExportsBlock}`
440
- : ''
441
-
442
- return `/**
443
- * Layout template - directly imports from theme
444
- * Template: ${appPath}
445
- * Generated by: scripts/build-registry.mjs
446
- */
447
- import TemplateComponent from '${templatePathWithoutExtension}'
448
-
449
- // Direct export of the theme template (no fallback)
450
- export default TemplateComponent
451
- ${forwardedExportsSection}`
452
- } else if (segmentConfigBlock || moduleExportsBlock) {
453
- // No component, but the template still defines segment config and/or metadata -
454
- // re-export those and provide a pass-through component. Only a PROTECTED_RENDER
455
- // path is labeled as one; anywhere else the template simply has no default export.
456
- const renderProtected = getProtectionLevel(appPath) === ProtectionLevel.PROTECTED_RENDER
457
- const description = renderProtected
458
- ? 'metadata-only (PROTECTED_RENDER)'
459
- : 'route-level exports only (the theme template has no default export)'
460
- const passThroughNote = renderProtected
461
- ? 'actual rendering blocked by PROTECTED_RENDER'
462
- : 'the theme template exports no component, so this layout renders its children'
463
- return `/**
464
- * Layout template - ${description}
465
- * Template: ${appPath}
466
- * Generated by: scripts/build-registry.mjs
467
- */
468
- import type { ReactNode } from 'react'
469
-
470
- // Re-export Next.js route-level exports from the theme template
471
- ${segmentConfigBlock}${moduleExportsBlock}
472
- // Pass-through component (${passThroughNote})
473
- interface ${componentName}Props {
474
- children: ReactNode
475
- }
476
-
477
- export default function ${componentName}({ children }: ${componentName}Props) {
478
- return <>{children}</>
479
- }
480
- `
481
- } else {
482
- // Empty template file - provide basic wrapper
483
- return `/**
484
- * Layout template - empty template file
485
- * Template: ${appPath}
486
- * Generated by: scripts/build-registry.mjs
487
- */
488
- interface ${componentName}Props {
489
- children: React.ReactNode
490
- }
491
-
492
- export default function ${componentName}({ children }: ${componentName}Props) {
493
- return <>{children}</>
494
- }
495
- `
496
- }
497
- } else {
498
- // Basic layout wrapper for parent directory structure (when no template exists)
499
- return `/**
500
- * Basic layout wrapper - maintains Next.js structure
501
- * Generated by: scripts/build-registry.mjs
502
- */
503
- interface ${componentName}Props {
504
- children: React.ReactNode
505
- }
506
-
507
- export default function ${componentName}({ children }: ${componentName}Props) {
508
- return <>{children}</>
509
- }
510
- `
511
- }
512
- }
513
-
514
- /**
515
- * Add template resolver to existing layout content
516
- * Respects React directives and import order
517
- */
518
- function addTemplateResolverToLayout(content, layoutPath) {
519
- let modifiedContent = content
520
-
521
- // Skip if already has template resolver
522
- if (content.includes("from '@/core/lib/template-resolver'") || content.includes("from '@/core/lib/registries/template-registry.client'")) {
523
- return content
524
- }
525
-
526
- // Find React directives ('use client', 'use server') at the start
527
- const directiveRegex = /^(\s*['"`]use (client|server)['"`]\s*\n?)/
528
- const directiveMatch = content.match(directiveRegex)
529
- const isClientComponent = directiveMatch && directiveMatch[2] === 'client'
530
-
531
- // Use client-safe resolver for client components
532
- const importStatement = isClientComponent
533
- ? `import { getTemplateOrDefaultClient } from '@/core/lib/registries/template-registry.client'\n`
534
- : `import { getTemplateOrDefault } from '@/core/lib/template-resolver'\n`
535
-
536
- const resolverFunction = isClientComponent ? 'getTemplateOrDefaultClient' : 'getTemplateOrDefault'
537
-
538
- if (directiveMatch) {
539
- // Insert import after directive
540
- const directive = directiveMatch[0]
541
- const afterDirective = content.substring(directive.length)
542
- modifiedContent = directive + `\n${importStatement}` + afterDirective
543
- } else {
544
- // Insert import at the beginning
545
- modifiedContent = importStatement + content
546
- }
547
-
548
- // Handle different export patterns
549
- // Pattern 1: export default function FunctionName(...) { ... }
550
- const inlineFunctionMatch = modifiedContent.match(/export\s+default\s+function\s+([^\s(]+)/)
551
- if (inlineFunctionMatch) {
552
- const componentName = inlineFunctionMatch[1]
553
- // Convert to: function FunctionName(...) { ... } then add wrapped export at end
554
- modifiedContent = modifiedContent.replace(/export\s+default\s+function/, 'function')
555
- modifiedContent += `\nexport default ${resolverFunction}('${layoutPath}', ${componentName})\n`
556
- return modifiedContent
557
- }
558
-
559
- // Pattern 2: export default ComponentName (component already declared)
560
- const exportMatch = modifiedContent.match(/export\s+default\s+([^\s;({]+)/)
561
- if (exportMatch) {
562
- const componentName = exportMatch[1]
563
- const newExport = `export default ${resolverFunction}('${layoutPath}', ${componentName})`
564
- modifiedContent = modifiedContent.replace(/export\s+default\s+[^\s;({]+/, newExport)
565
- }
566
-
567
- return modifiedContent
568
- }
569
-
570
- /**
571
- * The comment a copy of an app/ layout in app/(templates)/ starts with. A
572
- * comment is not a statement, so a 'use client' directive right after it is
573
- * still the file's directive.
574
- */
575
- function layoutCopyHeader(layoutPath) {
576
- return `/**
577
- * Generated by the NextSpark registry build: a copy of ${layoutPath}, so theme
578
- * routes under app/(templates) render inside the same layout. Rewritten on every build.
579
- */
580
- `
581
- }
582
-
583
- /**
584
- * The content of the copy of an app/ layout in app/(templates)/. A layout that
585
- * can't be read is replaced by a pass-through, which keeps the hierarchy.
586
- */
587
- async function layoutCopyContent(layoutPath, appFiles) {
588
- const layout = await projectFileContent(layoutPath, appFiles)
589
- if (layout !== null) {
590
- return layoutCopyHeader(layoutPath) + layout
591
- } else {
592
- const componentName = `PassThroughLayout${toPascalCase(layoutPath.replace(/[^\w]/g, '_'))}`
593
- return `/**
594
- * Basic layout wrapper - maintains Next.js structure
595
- * Generated by: scripts/build-registry.mjs
596
- */
597
- interface ${componentName}Props {
598
- children: React.ReactNode
599
- }
600
-
601
- export default function ${componentName}({ children }: ${componentName}Props) {
602
- return <>{children}</>
603
- }
604
- `
605
- }
606
- }
607
-
608
- /**
609
- * The app/ layouts above a route directory, outermost first, that exist in the
610
- * project: the ones a route generated into app/(templates)/ needs copied beside
611
- * it to render inside the same hierarchy.
612
- *
613
- * @param {string} directory - App directory of a route (e.g. 'app/dashboard/(main)/posts')
614
- */
615
- function requiredLayoutPaths(directory, appFiles) {
616
- const layoutPaths = []
617
- let currentPath = ''
618
- for (const part of directory.replace(/^app\/?/, '').split('/')) {
619
- if (!part) continue
620
- currentPath = currentPath ? `${currentPath}/${part}` : part
621
- const layoutPath = `app/${currentPath}/layout.tsx`
622
- const exists = appFiles?.has(layoutPath) ? appFiles.get(layoutPath) !== null : existsSync(join(rootDir, layoutPath))
623
- if (exists) {
624
- layoutPaths.push(layoutPath)
625
- }
626
- }
627
- return layoutPaths
628
- }
629
-
630
- /**
631
- * A file's content, by path from the project root: what `appFiles` gives when
632
- * it has the path - null standing for a file that is gone - and otherwise what
633
- * is on disk; null when there is no such file.
634
- */
635
- async function projectFileContent(path, appFiles) {
636
- if (appFiles?.has(path)) return appFiles.get(path)
637
- try {
638
- return await readFile(join(rootDir, path), 'utf8')
639
- } catch {
640
- return null
641
- }
642
- }
643
-
644
- /**
645
- * Generate a single template page with template override system
646
- *
647
- * What `routeFileAction` decides applies: a template over a route the app
648
- * already has gets no file, and the result says so; one whose route file would
649
- * break is rejected before anything is written.
650
- *
651
- * @param {Object} template - The template to generate a route file from
652
- * @param {string} outputPath - Where to write it
653
- * @param {Map} [analysis] - What `analyzeTemplates` read from the build's templates; taken for this
654
- * template when omitted
655
- * @returns {Promise<{ written: boolean, reason?: string }>}
656
- */
657
- export async function generateTemplatePage(template, outputPath, analysis = null) {
658
- const routeExports = analysis ? templateAnalysisFor(analysis, template) : await analyzeTemplate(template, rootDir)
659
-
660
- if (routeFileAction(template, routeExports) === 'skip') {
661
- return { written: false, reason: `the app already has ${template.appPath}, so no route file is generated for this template` }
662
- }
663
-
664
- const files = projectFiles(rootDir)
665
- await files.mkdir(dirname(outputPath), { recursive: true })
666
- await files.writeFile(outputPath, routeFileContent(template, routeExports), 'utf8')
667
- verbose(`Generated: ${outputPath.replace(rootDir, '')}`)
668
- return { written: true }
669
- }
670
-
671
- /**
672
- * Whether `generateMissingPages` will write a route file at `appPath` -
673
- * importing the template's default export - rather than leaving the app's
674
- * own file in place and letting the override resolve at runtime through
675
- * `getTemplateOrDefault`. A layout is always written, since build-time
676
- * override resolution duplicates it into `app/(templates)/` regardless of
677
- * whether the app already has one; anything else is only written when the
678
- * app doesn't already have that route.
679
- *
680
- * @param {Map<string, string | null>} [appFiles] - Files under app/, by path from the project root, to take as
681
- * having this content instead of what is on disk (null: removed)
682
- */
683
- export function willGenerateRoute(appPath, templateType, root = rootDir, appFiles = undefined) {
684
- if (templateType === 'layout') return true
685
- if (appFiles?.has(appPath)) return appFiles.get(appPath) === null
686
- return !existsSync(join(root, appPath))
687
- }
688
-
689
- /**
690
- * Parse each template once and record what it contributes to the build: its
691
- * route-level exports, whether it has a default export, and whether the page
692
- * generator writes a route file for it (`generatesRoute`). The server template
693
- * registry, the client template registry and the page generator all take
694
- * these from the result instead of reading the template themselves, so a
695
- * template that changes while a build runs can't look one way to one of them
696
- * and another way to the next.
697
- *
698
- * Throws for a template the page generator writes a route file for when that
699
- * file can't work: segment config Next.js wouldn't read, or a page (or any
700
- * other non-layout route) with no default export to import - a plain .tsx/.ts
701
- * as much as a standalone .meta.ts, which never has one. A layout with no
702
- * default export gets a pass-through component instead. A template whose app
703
- * route already exists gets no route file, so neither applies to it: the
704
- * override resolves at runtime, metadata included.
705
- *
706
- * @param {Array} templates - List of template definitions
707
- * @param {Object} config - Configuration object with projectRoot
708
- * @param {Map<string, string | null>} [appFiles] - Files under app/, by path from the project root, to take as
709
- * having this content instead of what is on disk (null: removed), so `generatesRoute` answers for the app as
710
- * a sync about to run leaves it rather than for the app the analysis runs against
711
- * @returns {Promise<Map<string, Object>>} Each template's analysis, keyed by its templatePath
712
- */
713
- export async function analyzeTemplates(templates, config = null, appFiles = undefined) {
714
- if (config?.projectRoot) {
715
- rootDir = config.projectRoot
716
- }
717
-
718
- const analysis = new Map()
719
-
720
- for (const template of templates) {
721
- if (!analysis.has(template.templatePath)) {
722
- analysis.set(template.templatePath, await analyzeTemplate(template, rootDir, appFiles))
723
- }
724
- }
725
-
726
- return analysis
727
- }
728
-
729
- /**
730
- * Parse one template and collect what `analyzeTemplates` records for it,
731
- * rejecting it when the route file generated from it can't work: segment
732
- * config Next.js wouldn't read, or what `routeFileAction` rejects. Every
733
- * generator that has no analysis to hand reads a template through here.
734
- *
735
- * @param {Object} template - The template to read
736
- * @param {string} root - The project root its path resolves against
737
- * @param {Map<string, string | null>} [appFiles] - Files under app/ to take as having this content, as for
738
- * `analyzeTemplates`
739
- */
740
- async function analyzeTemplate(template, root, appFiles) {
741
- const { appPath, templateType, templatePath } = template
742
- const generatesRoute = willGenerateRoute(appPath, templateType, root, appFiles)
743
- const { errors, ...routeExports } = await readTemplateExports(templatePath, root)
744
-
745
- if (generatesRoute && errors.length > 0) {
746
- throw errorWithLines(errors)
747
- }
748
-
749
- const entry = { ...routeExports, generatesRoute }
750
- routeFileAction(template, entry)
751
- return entry
752
- }
753
-
754
- /**
755
- * What becomes of a template's route file, decided from its analysis in this
756
- * one place for every generator that writes route files or registers template
757
- * components:
758
- * - 'write': a route file is generated for it in app/(templates)
759
- * - 'skip': the app already has that route, which stays; the override resolves
760
- * at runtime, and nothing is written for it
761
- *
762
- * A page (or any other non-layout route) whose route file would import a default
763
- * export it doesn't have - a plain .tsx/.ts as much as a standalone .meta.ts,
764
- * which never has one - is rejected. A layout with no default export gets a
765
- * pass-through component instead.
766
- *
767
- * @param {Object} template - The template
768
- * @param {Object} entry - Its analysis, as `analyzeTemplates` records it
769
- * @returns {'write' | 'skip'}
770
- */
771
- export function routeFileAction(template, entry) {
772
- const { appPath, templateType, templatePath } = template
773
-
774
- if (!entry.generatesRoute) {
775
- return 'skip'
776
- }
777
-
778
- if (templateType !== 'layout' && !entry.hasDefaultExport) {
779
- throw new Error(
780
- `${templatePath} has no default export, and the app has no existing route at "${appPath}" ` +
781
- `for a metadata-only override to attach to - the registry build generates "${appPath}" importing this ` +
782
- `template's default export, which doesn't exist. A page template needs a default export. For a ` +
783
- `metadata-only override, add one to an app page that already exists at "${appPath}" (a ".meta.ts" file, ` +
784
- `or a template with no default export, next to it).`
785
- )
786
- }
787
-
788
- return 'write'
789
- }
790
-
791
- /**
792
- * The analysis `analyzeTemplates` recorded for a template. Missing means the
793
- * caller is generating from templates other than the ones it analyzed, and
794
- * reading the template here would bring back a second, possibly different,
795
- * answer - so it fails instead.
796
- */
797
- export function templateAnalysisFor(analysis, template) {
798
- const entry = analysis?.get(template.templatePath)
799
- if (!entry) {
800
- throw new Error(
801
- `${template.templatePath} was not read by analyzeTemplates() - pass the analysis of the same templates being generated.`
802
- )
803
- }
804
- return entry
805
- }
806
-
807
- /**
808
- * Generate missing pages for templates with layout duplication
809
- * Creates pages in app/(templates)/ with necessary layouts duplicated
810
- * Only generates pages for templates that actually exist
811
- *
812
- * @param {Array} templates - List of template definitions
813
- * @param {Object} config - Configuration object with projectRoot
814
- * @param {Map} [analysis] - What `analyzeTemplates` read from these templates; taken for this call when omitted
815
- * @returns {Promise<{ created: number, updated: number, removed: number, backupDir: string | null, skipped: string[] }>}
816
- * What changed in app/(templates), and the app paths of the templates that got no route file
817
- */
818
- export async function generateMissingPages(templates, config = null, analysis = null) {
819
- // Use config.projectRoot if provided, otherwise fall back to default rootDir
820
- if (config?.projectRoot) {
821
- rootDir = config.projectRoot
822
- }
823
- const templatesDir = join(rootDir, 'app', '(templates)')
824
-
825
- // Every template has to pass routeFileAction before anything is written or deleted
826
- analysis = analysis ?? (await analyzeTemplates(templates, config))
827
- const skipped = templates
828
- .filter(template => routeFileAction(template, templateAnalysisFor(analysis, template)) === 'skip')
829
- .map(({ appPath }) => appPath)
830
-
831
- const { created, updated, removed, backupDir } = await reconcileTemplatesTree(
832
- templatesDir,
833
- await planTemplatesTree(templates, analysis)
834
- )
835
-
836
- if (created > 0 || updated > 0 || removed > 0) {
837
- log(`app/(templates): ${created} new, ${updated} updated, ${removed} removed`, 'success')
838
- } else {
839
- verbose('app/(templates) is up to date')
840
- }
841
- if (backupDir) {
842
- log(`app/(templates): what was replaced or removed is backed up in ${relative(rootDir, backupDir)}`, 'warning')
843
- }
844
-
845
- return { created, updated, removed, backupDir, skipped }
846
- }
847
-
848
- /**
849
- * What `generateMissingPages` would change in app/(templates), worked out
850
- * without writing anything: the files it would create, the ones it would
851
- * replace and the ones it would remove - backing up both of those first - as
852
- * paths from the project root.
853
- *
854
- * `appFiles` reaches the analysis too: whether a template gets a route file at
855
- * all turns on whether the app has one at that path, so a route the sync is
856
- * about to write - or remove - decides the plan the same way it decides the run.
857
- *
858
- * @param {Array} templates - List of template definitions
859
- * @param {Object} config - Configuration object with projectRoot
860
- * @param {Map<string, string | null>} [appFiles] - Files under app/, by path from the project root, to take as
861
- * having this content instead of what is on disk (null: removed), to plan against changes not written yet
862
- * @returns {Promise<{ create: string[], replace: string[], remove: string[] }>}
863
- */
864
- export async function planMissingPages(templates, config = null, appFiles = undefined) {
865
- if (config?.projectRoot) {
866
- rootDir = config.projectRoot
867
- }
868
- const templatesDir = join(rootDir, 'app', '(templates)')
869
-
870
- const analysis = await analyzeTemplates(templates, config, appFiles)
871
- const { create, replace, remove } = await diffTemplatesTree(templatesDir, await planTemplatesTree(templates, analysis, appFiles))
872
-
873
- const fromRoot = path => relative(rootDir, path).split(sep).join('/')
874
- return { create: create.map(fromRoot), replace: replace.map(fromRoot), remove: remove.map(fromRoot) }
875
- }
876
-
877
- /**
878
- * The route file generated from a template, with its component named after the
879
- * last static segment of the template's route.
880
- */
881
- function routeFileContent(template, routeExports) {
882
- const { appPath, templateType, name, templatePath } = template
883
- const routeSegments = name.split('/').filter(segment => !segment.startsWith('[') && !segment.endsWith(']'))
884
- const routeName = routeSegments[routeSegments.length - 1] || 'page'
885
- const componentName = `AutoGenerated${toPascalCase(routeName)}${toPascalCase(templateType)}`
886
-
887
- return templateType === 'layout'
888
- ? generateLayoutPageContent(appPath, componentName, templatePath, routeExports)
889
- : generateRegularPageContent(appPath, templatePath, routeExports)
890
- }
891
-
892
- /** Where a file under app/ is generated inside app/(templates)/. */
893
- function templatesTreePath(appPath) {
894
- return join(rootDir, 'app', '(templates)', appPath.replace(/^app\//, ''))
895
- }
896
-
897
- /**
898
- * Everything the registry build puts in app/(templates), as absolute path to
899
- * content: a copy of each app/ layout above a template's route, and the route
900
- * file of each template that gets one. A layout template's route file takes the
901
- * place of the copy of the app layout at the same path.
902
- */
903
- async function planTemplatesTree(templates, analysis, appFiles) {
904
- const files = new Map()
905
-
906
- const directories = new Set(templates.map(({ appPath }) => appPath.replace(/\/[^\/]+$/, '')))
907
- for (const directory of directories) {
908
- for (const layoutPath of requiredLayoutPaths(directory, appFiles)) {
909
- const copyPath = templatesTreePath(layoutPath)
910
- if (!files.has(copyPath)) {
911
- files.set(copyPath, await layoutCopyContent(layoutPath, appFiles))
912
- }
913
- }
914
- }
915
-
916
- for (const template of templates) {
917
- const routeExports = templateAnalysisFor(analysis, template)
918
- if (routeFileAction(template, routeExports) === 'write') {
919
- files.set(templatesTreePath(template.appPath), routeFileContent(template, routeExports))
920
- }
921
- }
922
-
923
- return files
924
- }
925
-
926
- /**
927
- * Every file under a directory, recursively, dotfiles included; none when it
928
- * doesn't exist. Finder's .DS_Store is nobody's output and nobody's edit, and
929
- * is left alone.
930
- */
931
- async function listFiles(directory) {
932
- if (!existsSync(directory)) return []
933
-
934
- const files = []
935
- for (const entry of await readdir(directory, { withFileTypes: true })) {
936
- if (entry.name === '.DS_Store') continue
937
- const path = join(directory, entry.name)
938
- if (entry.isDirectory()) {
939
- files.push(...(await listFiles(path)))
940
- } else if (entry.isFile()) {
941
- files.push(path)
942
- }
943
- }
944
- return files
945
- }
946
-
947
- /**
948
- * Remove a directory the tree needs a file in place of, once the files in it
949
- * are backed up and removed: the directories left in it, and any .DS_Store.
950
- */
951
- async function removeDirectoryInTheWay(directory) {
952
- const files = projectFiles(rootDir)
953
- for (const entry of await readdir(directory, { withFileTypes: true })) {
954
- const path = join(directory, entry.name)
955
- if (entry.isDirectory()) {
956
- await removeDirectoryInTheWay(path)
957
- } else if (entry.name === '.DS_Store') {
958
- await files.unlink(path)
959
- }
960
- }
961
- await files.rmdir(directory)
962
- }
963
-
964
- /** Remove the empty directories under `directory`, deepest first, keeping `directory` itself. */
965
- async function removeEmptyDirectories(directory) {
966
- if (!existsSync(directory)) return
967
-
968
- for (const entry of await readdir(directory, { withFileTypes: true })) {
969
- if (!entry.isDirectory()) continue
970
- const path = join(directory, entry.name)
971
- await removeEmptyDirectories(path)
972
- if ((await readdir(path)).length === 0) {
973
- await projectFiles(rootDir).rmdir(path)
974
- }
975
- }
976
- }
977
-
978
- /**
979
- * How app/(templates) differs from `files`, as absolute paths: the files
980
- * `files` has that don't exist yet - a directory where one goes counts as none,
981
- * since the files in it are removed - the ones that exist with other content,
982
- * and the files in the tree that `files` doesn't have.
983
- */
984
- async function diffTemplatesTree(templatesDir, files) {
985
- const create = []
986
- const replace = []
987
- for (const [path, content] of files) {
988
- if (!existsSync(path) || (await lstat(path)).isDirectory()) {
989
- create.push(path)
990
- } else if ((await readFile(path, 'utf8')) !== content) {
991
- replace.push(path)
992
- }
993
- }
994
-
995
- const remove = (await listFiles(templatesDir)).filter(path => !files.has(path))
996
- return { create, replace, remove }
997
- }
998
-
999
- /**
1000
- * Make app/(templates) hold exactly `contents`. The registry build owns that tree,
1001
- * but a file about to be replaced with different content, or removed because
1002
- * this build didn't produce it, may hold someone's edit: it is first copied into
1003
- * a directory under .nextspark/backups/ that belongs to this run alone - the
1004
- * time, and a suffix no other run gets - and named in the output. A backup is
1005
- * never written over.
1006
- *
1007
- * Whatever runs the build - build, dev, registry:build or sync:app - the
1008
- * backups are kept out of git by .nextspark/backups/.gitignore, put in place
1009
- * before anything in the tree is written; when one already there can't do
1010
- * that, nothing in the tree is written at all.
1011
- */
1012
- async function reconcileTemplatesTree(templatesDir, contents) {
1013
- const { create, replace, remove } = await diffTemplatesTree(templatesDir, contents)
1014
- if (replace.length > 0 || remove.length > 0) {
1015
- await ensureBackupsGitignore(rootDir)
1016
- }
1017
- let backupDir = null
1018
- const files = projectFiles(rootDir)
1019
-
1020
- const backUp = async absolutePath => {
1021
- if (!backupDir) {
1022
- const backupsRoot = join(rootDir, '.nextspark', 'backups')
1023
- await files.mkdir(backupsRoot, { recursive: true })
1024
- backupDir = await files.mkdtemp(join(backupsRoot, `${new Date().toISOString().replace(/[:.]/g, '-')}-`))
1025
- }
1026
- const relativePath = relative(rootDir, absolutePath)
1027
- const backupPath = join(backupDir, relativePath)
1028
- await files.mkdir(dirname(backupPath), { recursive: true })
1029
- await files.copyFile(absolutePath, backupPath, constants.COPYFILE_EXCL)
1030
- log(`app/(templates): backed up ${relativePath} to ${relative(rootDir, backupPath)}`, 'warning')
1031
- }
1032
-
1033
- // What stands where a file goes - a file where the tree needs a directory,
1034
- // or the files of a directory where it needs a file - is backed up and
1035
- // removed before anything is created, and new files still come before the
1036
- // rest is replaced or removed
1037
- const inTheWay = new Set(remove.filter(path =>
1038
- create.some(created => created.startsWith(`${path}${sep}`) || path.startsWith(`${created}${sep}`))
1039
- ))
1040
- for (const path of inTheWay) {
1041
- await backUp(path)
1042
- await files.unlink(path)
1043
- }
1044
-
1045
- for (const path of create) {
1046
- if (existsSync(path)) {
1047
- await removeDirectoryInTheWay(path)
1048
- }
1049
- await files.mkdir(dirname(path), { recursive: true })
1050
- await files.writeFile(path, contents.get(path), 'utf8')
1051
- }
1052
-
1053
- for (const path of replace) {
1054
- await backUp(path)
1055
- await files.writeFile(path, contents.get(path), 'utf8')
1056
- }
1057
-
1058
- for (const path of remove.filter(path => !inTheWay.has(path))) {
1059
- await backUp(path)
1060
- await files.unlink(path)
1061
- }
1062
-
1063
- await removeEmptyDirectories(templatesDir)
1064
-
1065
- return { created: create.length, updated: replace.length, removed: remove.length, backupDir }
1066
- }