@nextsparkjs/core 0.1.0-beta.1 → 0.1.0-beta.3

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 (972) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +8 -2
  3. package/bin/dist/doctor/checks/config.d.ts +11 -0
  4. package/bin/dist/doctor/checks/config.d.ts.map +1 -0
  5. package/bin/dist/doctor/checks/config.js +111 -0
  6. package/bin/dist/doctor/checks/config.js.map +1 -0
  7. package/bin/dist/doctor/checks/database.d.ts +11 -0
  8. package/bin/dist/doctor/checks/database.d.ts.map +1 -0
  9. package/bin/dist/doctor/checks/database.js +115 -0
  10. package/bin/dist/doctor/checks/database.js.map +1 -0
  11. package/bin/dist/doctor/checks/dependencies.d.ts +11 -0
  12. package/bin/dist/doctor/checks/dependencies.d.ts.map +1 -0
  13. package/bin/dist/doctor/checks/dependencies.js +88 -0
  14. package/bin/dist/doctor/checks/dependencies.js.map +1 -0
  15. package/bin/dist/doctor/checks/imports.d.ts +11 -0
  16. package/bin/dist/doctor/checks/imports.d.ts.map +1 -0
  17. package/bin/dist/doctor/checks/imports.js +176 -0
  18. package/bin/dist/doctor/checks/imports.js.map +1 -0
  19. package/bin/dist/doctor/index.d.ts +32 -0
  20. package/bin/dist/doctor/index.d.ts.map +1 -0
  21. package/bin/dist/doctor/index.js +117 -0
  22. package/bin/dist/doctor/index.js.map +1 -0
  23. package/bin/dist/init.d.ts +19 -0
  24. package/bin/dist/init.d.ts.map +1 -0
  25. package/bin/dist/init.js +95 -308
  26. package/bin/dist/init.js.map +1 -0
  27. package/bin/dist/test-wizard.d.ts +18 -0
  28. package/bin/dist/test-wizard.d.ts.map +1 -0
  29. package/bin/dist/test-wizard.js +724 -0
  30. package/bin/dist/test-wizard.js.map +1 -0
  31. package/bin/dist/tsup.config.d.ts +3 -0
  32. package/bin/dist/tsup.config.d.ts.map +1 -0
  33. package/bin/dist/tsup.config.js +13 -0
  34. package/bin/dist/tsup.config.js.map +1 -0
  35. package/bin/dist/wizard/banner.d.ts +30 -0
  36. package/bin/dist/wizard/banner.d.ts.map +1 -0
  37. package/bin/dist/wizard/banner.js +60 -0
  38. package/bin/dist/wizard/banner.js.map +1 -0
  39. package/bin/dist/wizard/generators/config-generator.d.ts +36 -0
  40. package/bin/dist/wizard/generators/config-generator.d.ts.map +1 -0
  41. package/bin/dist/wizard/generators/config-generator.js +210 -0
  42. package/bin/dist/wizard/generators/config-generator.js.map +1 -0
  43. package/bin/dist/wizard/generators/content-features-generator.d.ts +19 -0
  44. package/bin/dist/wizard/generators/content-features-generator.d.ts.map +1 -0
  45. package/bin/dist/wizard/generators/content-features-generator.js +96 -0
  46. package/bin/dist/wizard/generators/content-features-generator.js.map +1 -0
  47. package/bin/dist/wizard/generators/demo-installer.d.ts +13 -0
  48. package/bin/dist/wizard/generators/demo-installer.d.ts.map +1 -0
  49. package/bin/dist/wizard/generators/demo-installer.js +164 -0
  50. package/bin/dist/wizard/generators/demo-installer.js.map +1 -0
  51. package/bin/dist/wizard/generators/env-setup.d.ts +16 -0
  52. package/bin/dist/wizard/generators/env-setup.d.ts.map +1 -0
  53. package/bin/dist/wizard/generators/env-setup.js +163 -0
  54. package/bin/dist/wizard/generators/env-setup.js.map +1 -0
  55. package/bin/dist/wizard/generators/git-init.d.ts +16 -0
  56. package/bin/dist/wizard/generators/git-init.d.ts.map +1 -0
  57. package/bin/dist/wizard/generators/git-init.js +174 -0
  58. package/bin/dist/wizard/generators/git-init.js.map +1 -0
  59. package/bin/dist/wizard/generators/index.d.ts +19 -0
  60. package/bin/dist/wizard/generators/index.d.ts.map +1 -0
  61. package/bin/dist/wizard/generators/index.js +203 -0
  62. package/bin/dist/wizard/generators/index.js.map +1 -0
  63. package/bin/dist/wizard/generators/messages-generator.d.ts +28 -0
  64. package/bin/dist/wizard/generators/messages-generator.d.ts.map +1 -0
  65. package/bin/dist/wizard/generators/messages-generator.js +131 -0
  66. package/bin/dist/wizard/generators/messages-generator.js.map +1 -0
  67. package/bin/dist/wizard/generators/theme-renamer.d.ts +35 -0
  68. package/bin/dist/wizard/generators/theme-renamer.d.ts.map +1 -0
  69. package/bin/dist/wizard/generators/theme-renamer.js +323 -0
  70. package/bin/dist/wizard/generators/theme-renamer.js.map +1 -0
  71. package/bin/dist/wizard/index.d.ts +12 -0
  72. package/bin/dist/wizard/index.d.ts.map +1 -0
  73. package/bin/dist/wizard/index.js +254 -0
  74. package/bin/dist/wizard/index.js.map +1 -0
  75. package/bin/dist/wizard/presets.d.ts +55 -0
  76. package/bin/dist/wizard/presets.d.ts.map +1 -0
  77. package/bin/dist/wizard/presets.js +232 -0
  78. package/bin/dist/wizard/presets.js.map +1 -0
  79. package/bin/dist/wizard/preview.d.ts +15 -0
  80. package/bin/dist/wizard/preview.d.ts.map +1 -0
  81. package/bin/dist/wizard/preview.js +192 -0
  82. package/bin/dist/wizard/preview.js.map +1 -0
  83. package/bin/dist/wizard/prompts/auth-config.d.ts +16 -0
  84. package/bin/dist/wizard/prompts/auth-config.d.ts.map +1 -0
  85. package/bin/dist/wizard/prompts/auth-config.js +78 -0
  86. package/bin/dist/wizard/prompts/auth-config.js.map +1 -0
  87. package/bin/dist/wizard/prompts/billing-config.d.ts +11 -0
  88. package/bin/dist/wizard/prompts/billing-config.d.ts.map +1 -0
  89. package/bin/dist/wizard/prompts/billing-config.js +66 -0
  90. package/bin/dist/wizard/prompts/billing-config.js.map +1 -0
  91. package/bin/dist/wizard/prompts/content-features-config.d.ts +15 -0
  92. package/bin/dist/wizard/prompts/content-features-config.d.ts.map +1 -0
  93. package/bin/dist/wizard/prompts/content-features-config.js +58 -0
  94. package/bin/dist/wizard/prompts/content-features-config.js.map +1 -0
  95. package/bin/dist/wizard/prompts/dashboard-config.d.ts +15 -0
  96. package/bin/dist/wizard/prompts/dashboard-config.d.ts.map +1 -0
  97. package/bin/dist/wizard/prompts/dashboard-config.js +104 -0
  98. package/bin/dist/wizard/prompts/dashboard-config.js.map +1 -0
  99. package/bin/dist/wizard/prompts/demo-install.d.ts +14 -0
  100. package/bin/dist/wizard/prompts/demo-install.d.ts.map +1 -0
  101. package/bin/dist/wizard/prompts/demo-install.js +42 -0
  102. package/bin/dist/wizard/prompts/demo-install.js.map +1 -0
  103. package/bin/dist/wizard/prompts/dev-config.d.ts +15 -0
  104. package/bin/dist/wizard/prompts/dev-config.d.ts.map +1 -0
  105. package/bin/dist/wizard/prompts/dev-config.js +66 -0
  106. package/bin/dist/wizard/prompts/dev-config.js.map +1 -0
  107. package/bin/dist/wizard/prompts/env-config.d.ts +22 -0
  108. package/bin/dist/wizard/prompts/env-config.d.ts.map +1 -0
  109. package/bin/dist/wizard/prompts/env-config.js +65 -0
  110. package/bin/dist/wizard/prompts/env-config.js.map +1 -0
  111. package/bin/dist/wizard/prompts/features-config.d.ts +11 -0
  112. package/bin/dist/wizard/prompts/features-config.d.ts.map +1 -0
  113. package/bin/dist/wizard/prompts/features-config.js +68 -0
  114. package/bin/dist/wizard/prompts/features-config.js.map +1 -0
  115. package/bin/dist/wizard/prompts/git-config.d.ts +22 -0
  116. package/bin/dist/wizard/prompts/git-config.d.ts.map +1 -0
  117. package/bin/dist/wizard/prompts/git-config.js +72 -0
  118. package/bin/dist/wizard/prompts/git-config.js.map +1 -0
  119. package/bin/dist/wizard/prompts/i18n-config.d.ts +11 -0
  120. package/bin/dist/wizard/prompts/i18n-config.d.ts.map +1 -0
  121. package/bin/dist/wizard/prompts/i18n-config.js +55 -0
  122. package/bin/dist/wizard/prompts/i18n-config.js.map +1 -0
  123. package/bin/dist/wizard/prompts/index.d.ts +34 -0
  124. package/bin/dist/wizard/prompts/index.d.ts.map +1 -0
  125. package/bin/dist/wizard/prompts/index.js +126 -0
  126. package/bin/dist/wizard/prompts/index.js.map +1 -0
  127. package/bin/dist/wizard/prompts/project-info.d.ts +11 -0
  128. package/bin/dist/wizard/prompts/project-info.d.ts.map +1 -0
  129. package/bin/dist/wizard/prompts/project-info.js +80 -0
  130. package/bin/dist/wizard/prompts/project-info.js.map +1 -0
  131. package/bin/dist/wizard/prompts/team-config.d.ts +11 -0
  132. package/bin/dist/wizard/prompts/team-config.d.ts.map +1 -0
  133. package/bin/dist/wizard/prompts/team-config.js +77 -0
  134. package/bin/dist/wizard/prompts/team-config.js.map +1 -0
  135. package/bin/dist/wizard/types.d.ts +110 -0
  136. package/bin/dist/wizard/types.d.ts.map +1 -0
  137. package/bin/dist/wizard/types.js +31 -0
  138. package/bin/dist/wizard/types.js.map +1 -0
  139. package/bin/dist/wizard/validators/files.d.ts +26 -0
  140. package/bin/dist/wizard/validators/files.d.ts.map +1 -0
  141. package/bin/dist/wizard/validators/files.js +202 -0
  142. package/bin/dist/wizard/validators/files.js.map +1 -0
  143. package/bin/dist/wizard/validators/i18n.d.ts +24 -0
  144. package/bin/dist/wizard/validators/i18n.d.ts.map +1 -0
  145. package/bin/dist/wizard/validators/i18n.js +318 -0
  146. package/bin/dist/wizard/validators/i18n.js.map +1 -0
  147. package/bin/dist/wizard/validators/index.d.ts +67 -0
  148. package/bin/dist/wizard/validators/index.d.ts.map +1 -0
  149. package/bin/dist/wizard/validators/index.js +64 -0
  150. package/bin/dist/wizard/validators/index.js.map +1 -0
  151. package/bin/dist/wizard/validators/typescript.d.ts +19 -0
  152. package/bin/dist/wizard/validators/typescript.d.ts.map +1 -0
  153. package/bin/dist/wizard/validators/typescript.js +120 -0
  154. package/bin/dist/wizard/validators/typescript.js.map +1 -0
  155. package/dist/bin/dist/doctor/checks/config.d.ts +11 -0
  156. package/dist/bin/dist/doctor/checks/config.d.ts.map +1 -0
  157. package/dist/bin/dist/doctor/checks/config.js +111 -0
  158. package/dist/bin/dist/doctor/checks/config.js.map +1 -0
  159. package/dist/bin/dist/doctor/checks/database.d.ts +11 -0
  160. package/dist/bin/dist/doctor/checks/database.d.ts.map +1 -0
  161. package/dist/bin/dist/doctor/checks/database.js +115 -0
  162. package/dist/bin/dist/doctor/checks/database.js.map +1 -0
  163. package/dist/bin/dist/doctor/checks/dependencies.d.ts +11 -0
  164. package/dist/bin/dist/doctor/checks/dependencies.d.ts.map +1 -0
  165. package/dist/bin/dist/doctor/checks/dependencies.js +88 -0
  166. package/dist/bin/dist/doctor/checks/dependencies.js.map +1 -0
  167. package/dist/bin/dist/doctor/checks/imports.d.ts +11 -0
  168. package/dist/bin/dist/doctor/checks/imports.d.ts.map +1 -0
  169. package/dist/bin/dist/doctor/checks/imports.js +176 -0
  170. package/dist/bin/dist/doctor/checks/imports.js.map +1 -0
  171. package/dist/bin/dist/doctor/index.d.ts +32 -0
  172. package/dist/bin/dist/doctor/index.d.ts.map +1 -0
  173. package/dist/bin/dist/doctor/index.js +117 -0
  174. package/dist/bin/dist/doctor/index.js.map +1 -0
  175. package/dist/bin/dist/init.d.ts +19 -0
  176. package/dist/bin/dist/init.d.ts.map +1 -0
  177. package/dist/bin/dist/init.js +95 -308
  178. package/dist/bin/dist/init.js.map +1 -0
  179. package/dist/bin/dist/test-wizard.d.ts +18 -0
  180. package/dist/bin/dist/test-wizard.d.ts.map +1 -0
  181. package/dist/bin/dist/test-wizard.js +724 -0
  182. package/dist/bin/dist/test-wizard.js.map +1 -0
  183. package/dist/bin/dist/tsup.config.d.ts +3 -0
  184. package/dist/bin/dist/tsup.config.d.ts.map +1 -0
  185. package/dist/bin/dist/tsup.config.js +13 -0
  186. package/dist/bin/dist/tsup.config.js.map +1 -0
  187. package/dist/bin/dist/wizard/banner.d.ts +30 -0
  188. package/dist/bin/dist/wizard/banner.d.ts.map +1 -0
  189. package/dist/bin/dist/wizard/banner.js +60 -0
  190. package/dist/bin/dist/wizard/banner.js.map +1 -0
  191. package/dist/bin/dist/wizard/generators/config-generator.d.ts +36 -0
  192. package/dist/bin/dist/wizard/generators/config-generator.d.ts.map +1 -0
  193. package/dist/bin/dist/wizard/generators/config-generator.js +210 -0
  194. package/dist/bin/dist/wizard/generators/config-generator.js.map +1 -0
  195. package/dist/bin/dist/wizard/generators/content-features-generator.d.ts +19 -0
  196. package/dist/bin/dist/wizard/generators/content-features-generator.d.ts.map +1 -0
  197. package/dist/bin/dist/wizard/generators/content-features-generator.js +96 -0
  198. package/dist/bin/dist/wizard/generators/content-features-generator.js.map +1 -0
  199. package/dist/bin/dist/wizard/generators/demo-installer.d.ts +13 -0
  200. package/dist/bin/dist/wizard/generators/demo-installer.d.ts.map +1 -0
  201. package/dist/bin/dist/wizard/generators/demo-installer.js +128 -0
  202. package/dist/bin/dist/wizard/generators/demo-installer.js.map +1 -0
  203. package/dist/bin/dist/wizard/generators/env-setup.d.ts +16 -0
  204. package/dist/bin/dist/wizard/generators/env-setup.d.ts.map +1 -0
  205. package/dist/bin/dist/wizard/generators/env-setup.js +163 -0
  206. package/dist/bin/dist/wizard/generators/env-setup.js.map +1 -0
  207. package/dist/bin/dist/wizard/generators/git-init.d.ts +16 -0
  208. package/dist/bin/dist/wizard/generators/git-init.d.ts.map +1 -0
  209. package/dist/bin/dist/wizard/generators/git-init.js +174 -0
  210. package/dist/bin/dist/wizard/generators/git-init.js.map +1 -0
  211. package/dist/bin/dist/wizard/generators/index.d.ts +19 -0
  212. package/dist/bin/dist/wizard/generators/index.d.ts.map +1 -0
  213. package/dist/bin/dist/wizard/generators/index.js +199 -0
  214. package/dist/bin/dist/wizard/generators/index.js.map +1 -0
  215. package/dist/bin/dist/wizard/generators/messages-generator.d.ts +28 -0
  216. package/dist/bin/dist/wizard/generators/messages-generator.d.ts.map +1 -0
  217. package/dist/bin/dist/wizard/generators/messages-generator.js +131 -0
  218. package/dist/bin/dist/wizard/generators/messages-generator.js.map +1 -0
  219. package/dist/bin/dist/wizard/generators/theme-renamer.d.ts +35 -0
  220. package/dist/bin/dist/wizard/generators/theme-renamer.d.ts.map +1 -0
  221. package/dist/bin/dist/wizard/generators/theme-renamer.js +323 -0
  222. package/dist/bin/dist/wizard/generators/theme-renamer.js.map +1 -0
  223. package/dist/bin/dist/wizard/index.d.ts +12 -0
  224. package/dist/bin/dist/wizard/index.d.ts.map +1 -0
  225. package/dist/bin/dist/wizard/index.js +254 -0
  226. package/dist/bin/dist/wizard/index.js.map +1 -0
  227. package/dist/bin/dist/wizard/presets.d.ts +55 -0
  228. package/dist/bin/dist/wizard/presets.d.ts.map +1 -0
  229. package/dist/bin/dist/wizard/presets.js +232 -0
  230. package/dist/bin/dist/wizard/presets.js.map +1 -0
  231. package/dist/bin/dist/wizard/preview.d.ts +15 -0
  232. package/dist/bin/dist/wizard/preview.d.ts.map +1 -0
  233. package/dist/bin/dist/wizard/preview.js +192 -0
  234. package/dist/bin/dist/wizard/preview.js.map +1 -0
  235. package/dist/bin/dist/wizard/prompts/auth-config.d.ts +16 -0
  236. package/dist/bin/dist/wizard/prompts/auth-config.d.ts.map +1 -0
  237. package/dist/bin/dist/wizard/prompts/auth-config.js +78 -0
  238. package/dist/bin/dist/wizard/prompts/auth-config.js.map +1 -0
  239. package/dist/bin/dist/wizard/prompts/billing-config.d.ts +11 -0
  240. package/dist/bin/dist/wizard/prompts/billing-config.d.ts.map +1 -0
  241. package/dist/bin/dist/wizard/prompts/billing-config.js +66 -0
  242. package/dist/bin/dist/wizard/prompts/billing-config.js.map +1 -0
  243. package/dist/bin/dist/wizard/prompts/content-features-config.d.ts +15 -0
  244. package/dist/bin/dist/wizard/prompts/content-features-config.d.ts.map +1 -0
  245. package/dist/bin/dist/wizard/prompts/content-features-config.js +58 -0
  246. package/dist/bin/dist/wizard/prompts/content-features-config.js.map +1 -0
  247. package/dist/bin/dist/wizard/prompts/dashboard-config.d.ts +15 -0
  248. package/dist/bin/dist/wizard/prompts/dashboard-config.d.ts.map +1 -0
  249. package/dist/bin/dist/wizard/prompts/dashboard-config.js +104 -0
  250. package/dist/bin/dist/wizard/prompts/dashboard-config.js.map +1 -0
  251. package/dist/bin/dist/wizard/prompts/demo-install.d.ts +14 -0
  252. package/dist/bin/dist/wizard/prompts/demo-install.d.ts.map +1 -0
  253. package/dist/bin/dist/wizard/prompts/demo-install.js +42 -0
  254. package/dist/bin/dist/wizard/prompts/demo-install.js.map +1 -0
  255. package/dist/bin/dist/wizard/prompts/dev-config.d.ts +15 -0
  256. package/dist/bin/dist/wizard/prompts/dev-config.d.ts.map +1 -0
  257. package/dist/bin/dist/wizard/prompts/dev-config.js +66 -0
  258. package/dist/bin/dist/wizard/prompts/dev-config.js.map +1 -0
  259. package/dist/bin/dist/wizard/prompts/env-config.d.ts +22 -0
  260. package/dist/bin/dist/wizard/prompts/env-config.d.ts.map +1 -0
  261. package/dist/bin/dist/wizard/prompts/env-config.js +65 -0
  262. package/dist/bin/dist/wizard/prompts/env-config.js.map +1 -0
  263. package/dist/bin/dist/wizard/prompts/features-config.d.ts +11 -0
  264. package/dist/bin/dist/wizard/prompts/features-config.d.ts.map +1 -0
  265. package/dist/bin/dist/wizard/prompts/features-config.js +68 -0
  266. package/dist/bin/dist/wizard/prompts/features-config.js.map +1 -0
  267. package/dist/bin/dist/wizard/prompts/git-config.d.ts +22 -0
  268. package/dist/bin/dist/wizard/prompts/git-config.d.ts.map +1 -0
  269. package/dist/bin/dist/wizard/prompts/git-config.js +72 -0
  270. package/dist/bin/dist/wizard/prompts/git-config.js.map +1 -0
  271. package/dist/bin/dist/wizard/prompts/i18n-config.d.ts +11 -0
  272. package/dist/bin/dist/wizard/prompts/i18n-config.d.ts.map +1 -0
  273. package/dist/bin/dist/wizard/prompts/i18n-config.js +55 -0
  274. package/dist/bin/dist/wizard/prompts/i18n-config.js.map +1 -0
  275. package/dist/bin/dist/wizard/prompts/index.d.ts +34 -0
  276. package/dist/bin/dist/wizard/prompts/index.d.ts.map +1 -0
  277. package/dist/bin/dist/wizard/prompts/index.js +126 -0
  278. package/dist/bin/dist/wizard/prompts/index.js.map +1 -0
  279. package/dist/bin/dist/wizard/prompts/project-info.d.ts +11 -0
  280. package/dist/bin/dist/wizard/prompts/project-info.d.ts.map +1 -0
  281. package/dist/bin/dist/wizard/prompts/project-info.js +80 -0
  282. package/dist/bin/dist/wizard/prompts/project-info.js.map +1 -0
  283. package/dist/bin/dist/wizard/prompts/team-config.d.ts +11 -0
  284. package/dist/bin/dist/wizard/prompts/team-config.d.ts.map +1 -0
  285. package/dist/bin/dist/wizard/prompts/team-config.js +77 -0
  286. package/dist/bin/dist/wizard/prompts/team-config.js.map +1 -0
  287. package/dist/bin/dist/wizard/types.d.ts +110 -0
  288. package/dist/bin/dist/wizard/types.d.ts.map +1 -0
  289. package/dist/bin/dist/wizard/types.js +31 -0
  290. package/dist/bin/dist/wizard/types.js.map +1 -0
  291. package/dist/bin/dist/wizard/validators/files.d.ts +26 -0
  292. package/dist/bin/dist/wizard/validators/files.d.ts.map +1 -0
  293. package/dist/bin/dist/wizard/validators/files.js +202 -0
  294. package/dist/bin/dist/wizard/validators/files.js.map +1 -0
  295. package/dist/bin/dist/wizard/validators/i18n.d.ts +24 -0
  296. package/dist/bin/dist/wizard/validators/i18n.d.ts.map +1 -0
  297. package/dist/bin/dist/wizard/validators/i18n.js +318 -0
  298. package/dist/bin/dist/wizard/validators/i18n.js.map +1 -0
  299. package/dist/bin/dist/wizard/validators/index.d.ts +67 -0
  300. package/dist/bin/dist/wizard/validators/index.d.ts.map +1 -0
  301. package/dist/bin/dist/wizard/validators/index.js +64 -0
  302. package/dist/bin/dist/wizard/validators/index.js.map +1 -0
  303. package/dist/bin/dist/wizard/validators/typescript.d.ts +19 -0
  304. package/dist/bin/dist/wizard/validators/typescript.d.ts.map +1 -0
  305. package/dist/bin/dist/wizard/validators/typescript.js +120 -0
  306. package/dist/bin/dist/wizard/validators/typescript.js.map +1 -0
  307. package/dist/bin/doctor/checks/config.ts +123 -0
  308. package/dist/bin/doctor/checks/database.ts +133 -0
  309. package/dist/bin/doctor/checks/dependencies.ts +99 -0
  310. package/dist/bin/doctor/checks/imports.ts +203 -0
  311. package/dist/bin/doctor/index.ts +151 -0
  312. package/dist/bin/init.ts +99 -406
  313. package/dist/bin/test-local.sh +3 -1
  314. package/dist/bin/test-wizard.ts +879 -0
  315. package/dist/bin/tsconfig.json +26 -0
  316. package/dist/bin/wizard/banner.ts +67 -0
  317. package/dist/bin/wizard/generators/config-generator.ts +341 -0
  318. package/dist/bin/wizard/generators/content-features-generator.ts +111 -0
  319. package/dist/bin/wizard/generators/demo-installer.ts +200 -0
  320. package/dist/bin/wizard/generators/env-setup.ts +208 -0
  321. package/dist/bin/wizard/generators/git-init.ts +187 -0
  322. package/dist/bin/wizard/generators/index.ts +271 -0
  323. package/dist/bin/wizard/generators/messages-generator.ts +159 -0
  324. package/dist/bin/wizard/generators/theme-renamer.ts +419 -0
  325. package/dist/bin/wizard/index.ts +288 -0
  326. package/dist/bin/wizard/presets.ts +274 -0
  327. package/dist/bin/wizard/preview.ts +220 -0
  328. package/dist/bin/wizard/prompts/auth-config.ts +93 -0
  329. package/dist/bin/wizard/prompts/billing-config.ts +75 -0
  330. package/dist/bin/wizard/prompts/content-features-config.ts +70 -0
  331. package/dist/bin/wizard/prompts/dashboard-config.ts +117 -0
  332. package/dist/bin/wizard/prompts/demo-install.ts +45 -0
  333. package/dist/bin/wizard/prompts/dev-config.ts +78 -0
  334. package/dist/bin/wizard/prompts/env-config.ts +83 -0
  335. package/dist/bin/wizard/prompts/features-config.ts +75 -0
  336. package/dist/bin/wizard/prompts/git-config.ts +90 -0
  337. package/dist/bin/wizard/prompts/i18n-config.ts +62 -0
  338. package/dist/bin/wizard/prompts/index.ts +173 -0
  339. package/dist/bin/wizard/prompts/project-info.ts +89 -0
  340. package/dist/bin/wizard/prompts/team-config.ts +88 -0
  341. package/dist/bin/wizard/types.ts +150 -0
  342. package/dist/bin/wizard/validators/files.ts +227 -0
  343. package/dist/bin/wizard/validators/i18n.ts +394 -0
  344. package/dist/bin/wizard/validators/index.ts +111 -0
  345. package/dist/bin/wizard/validators/typescript.ts +133 -0
  346. package/dist/components/devtools/scheduled-actions/actions-table.js +1 -1
  347. package/dist/components/devtools/scheduled-actions/filters.js +1 -1
  348. package/dist/hooks/useContentTranslation.d.ts.map +1 -1
  349. package/dist/hooks/useContentTranslation.js +1 -5
  350. package/dist/hooks/useEnsureUserMetadata.d.ts.map +1 -1
  351. package/dist/hooks/useEnsureUserMetadata.js +0 -1
  352. package/dist/hooks/useEntityTranslations.d.ts.map +1 -1
  353. package/dist/hooks/useEntityTranslations.js +10 -12
  354. package/dist/i18n.d.ts.map +1 -1
  355. package/dist/i18n.js +7 -37
  356. package/dist/lib/config/app.config.js +1 -1
  357. package/dist/lib/config/dashboard.config.d.ts +0 -1
  358. package/dist/lib/config/dashboard.config.d.ts.map +1 -1
  359. package/dist/lib/config/dashboard.config.js +0 -1
  360. package/dist/lib/config/nextspark-types.d.ts +1 -1
  361. package/dist/lib/config/nextspark-types.d.ts.map +1 -1
  362. package/dist/lib/i18n-utils.d.ts +1 -5
  363. package/dist/lib/i18n-utils.d.ts.map +1 -1
  364. package/dist/lib/i18n-utils.js +0 -19
  365. package/dist/lib/namespace-loader.d.ts +1 -0
  366. package/dist/lib/namespace-loader.d.ts.map +1 -1
  367. package/dist/lib/namespace-loader.js +14 -18
  368. package/dist/lib/services/translation.service.d.ts +92 -0
  369. package/dist/lib/services/translation.service.d.ts.map +1 -1
  370. package/dist/lib/services/translation.service.js +135 -1
  371. package/dist/lib/test/index.d.ts +4 -4
  372. package/dist/lib/test/index.d.ts.map +1 -1
  373. package/dist/lib/test/index.js +4 -4
  374. package/dist/lib/test/selectors.d.ts +12 -12
  375. package/dist/lib/test/selectors.d.ts.map +1 -1
  376. package/dist/lib/test/selectors.js +2 -2
  377. package/dist/lib/translations/i18n-integration.d.ts +3 -1
  378. package/dist/lib/translations/i18n-integration.d.ts.map +1 -1
  379. package/dist/lib/translations/i18n-integration.js +19 -38
  380. package/dist/lib/translations/registry.d.ts +7 -61
  381. package/dist/lib/translations/registry.d.ts.map +1 -1
  382. package/dist/lib/translations/registry.js +21 -163
  383. package/dist/messages/de/admin.json +219 -0
  384. package/dist/messages/de/auth.json +103 -0
  385. package/dist/messages/de/billing.json +167 -0
  386. package/dist/messages/de/buttons.json +19 -0
  387. package/dist/messages/de/common.json +172 -0
  388. package/dist/messages/de/dashboard.json +41 -0
  389. package/dist/messages/de/devtools.json +285 -0
  390. package/dist/messages/de/docs.json +24 -0
  391. package/dist/messages/de/entities.json +52 -0
  392. package/dist/messages/de/footer.json +23 -0
  393. package/dist/messages/de/home.json +13 -0
  394. package/dist/messages/de/index.d.ts +1934 -0
  395. package/dist/messages/de/index.d.ts.map +1 -0
  396. package/dist/messages/de/index.js +41 -0
  397. package/dist/messages/de/index.ts +39 -0
  398. package/dist/messages/de/navigation.json +11 -0
  399. package/dist/messages/de/permissions.json +27 -0
  400. package/dist/messages/de/public.json +14 -0
  401. package/dist/messages/de/settings.json +404 -0
  402. package/dist/messages/de/superadmin.json +194 -0
  403. package/dist/messages/de/teams.json +140 -0
  404. package/dist/messages/de/validation.json +48 -0
  405. package/dist/messages/en/admin.json +219 -0
  406. package/dist/messages/en/buttons.json +19 -0
  407. package/dist/messages/en/devtools.json +35 -0
  408. package/dist/messages/en/entities.json +52 -0
  409. package/dist/messages/en/index.d.ts +1292 -954
  410. package/dist/messages/en/index.d.ts.map +1 -1
  411. package/dist/messages/en/index.js +22 -16
  412. package/dist/messages/en/index.ts +22 -16
  413. package/dist/messages/en/public.json +14 -1
  414. package/dist/messages/es/admin.json +219 -0
  415. package/dist/messages/es/buttons.json +19 -0
  416. package/dist/messages/es/devtools.json +35 -0
  417. package/dist/messages/es/entities.json +52 -0
  418. package/dist/messages/es/index.d.ts +1292 -954
  419. package/dist/messages/es/index.d.ts.map +1 -1
  420. package/dist/messages/es/index.js +22 -16
  421. package/dist/messages/es/index.ts +22 -16
  422. package/dist/messages/es/public.json +14 -1
  423. package/dist/messages/fr/admin.json +219 -0
  424. package/dist/messages/fr/auth.json +103 -0
  425. package/dist/messages/fr/billing.json +167 -0
  426. package/dist/messages/fr/buttons.json +19 -0
  427. package/dist/messages/fr/common.json +172 -0
  428. package/dist/messages/fr/dashboard.json +41 -0
  429. package/dist/messages/fr/devtools.json +285 -0
  430. package/dist/messages/fr/docs.json +24 -0
  431. package/dist/messages/fr/entities.json +52 -0
  432. package/dist/messages/fr/footer.json +23 -0
  433. package/dist/messages/fr/home.json +13 -0
  434. package/dist/messages/fr/index.d.ts +1934 -0
  435. package/dist/messages/fr/index.d.ts.map +1 -0
  436. package/dist/messages/fr/index.js +41 -0
  437. package/dist/messages/fr/index.ts +39 -0
  438. package/dist/messages/fr/navigation.json +11 -0
  439. package/dist/messages/fr/permissions.json +27 -0
  440. package/dist/messages/fr/public.json +14 -0
  441. package/dist/messages/fr/settings.json +404 -0
  442. package/dist/messages/fr/superadmin.json +194 -0
  443. package/dist/messages/fr/teams.json +140 -0
  444. package/dist/messages/fr/validation.json +48 -0
  445. package/dist/messages/index.d.ts +4 -0
  446. package/dist/messages/index.d.ts.map +1 -1
  447. package/dist/messages/index.js +9 -1
  448. package/dist/messages/index.ts +4 -0
  449. package/dist/messages/it/admin.json +219 -0
  450. package/dist/messages/it/auth.json +103 -0
  451. package/dist/messages/it/billing.json +167 -0
  452. package/dist/messages/it/buttons.json +19 -0
  453. package/dist/messages/it/common.json +172 -0
  454. package/dist/messages/it/dashboard.json +41 -0
  455. package/dist/messages/it/devtools.json +285 -0
  456. package/dist/messages/it/docs.json +24 -0
  457. package/dist/messages/it/entities.json +52 -0
  458. package/dist/messages/it/footer.json +23 -0
  459. package/dist/messages/it/home.json +13 -0
  460. package/dist/messages/it/index.d.ts +1934 -0
  461. package/dist/messages/it/index.d.ts.map +1 -0
  462. package/dist/messages/it/index.js +41 -0
  463. package/dist/messages/it/index.ts +39 -0
  464. package/dist/messages/it/navigation.json +11 -0
  465. package/dist/messages/it/permissions.json +27 -0
  466. package/dist/messages/it/public.json +14 -0
  467. package/dist/messages/it/settings.json +404 -0
  468. package/dist/messages/it/superadmin.json +194 -0
  469. package/dist/messages/it/teams.json +140 -0
  470. package/dist/messages/it/validation.json +48 -0
  471. package/dist/messages/pt/admin.json +219 -0
  472. package/dist/messages/pt/auth.json +103 -0
  473. package/dist/messages/pt/billing.json +167 -0
  474. package/dist/messages/pt/buttons.json +19 -0
  475. package/dist/messages/pt/common.json +172 -0
  476. package/dist/messages/pt/dashboard.json +41 -0
  477. package/dist/messages/pt/devtools.json +285 -0
  478. package/dist/messages/pt/docs.json +24 -0
  479. package/dist/messages/pt/entities.json +52 -0
  480. package/dist/messages/pt/footer.json +23 -0
  481. package/dist/messages/pt/home.json +13 -0
  482. package/dist/messages/pt/index.d.ts +1934 -0
  483. package/dist/messages/pt/index.d.ts.map +1 -0
  484. package/dist/messages/pt/index.js +41 -0
  485. package/dist/messages/pt/index.ts +39 -0
  486. package/dist/messages/pt/navigation.json +11 -0
  487. package/dist/messages/pt/permissions.json +27 -0
  488. package/dist/messages/pt/public.json +14 -0
  489. package/dist/messages/pt/settings.json +404 -0
  490. package/dist/messages/pt/superadmin.json +194 -0
  491. package/dist/messages/pt/teams.json +140 -0
  492. package/dist/messages/pt/validation.json +48 -0
  493. package/dist/presets/plugin/messages/de.json +20 -0
  494. package/dist/presets/plugin/messages/fr.json +20 -0
  495. package/dist/presets/plugin/messages/it.json +20 -0
  496. package/dist/presets/plugin/messages/pt.json +20 -0
  497. package/dist/presets/theme/entities/tasks/messages/de.json +204 -0
  498. package/dist/presets/theme/entities/tasks/messages/fr.json +204 -0
  499. package/dist/presets/theme/entities/tasks/messages/it.json +204 -0
  500. package/dist/presets/theme/entities/tasks/messages/pt.json +204 -0
  501. package/dist/presets/theme/messages/de.json +96 -0
  502. package/dist/presets/theme/messages/fr.json +96 -0
  503. package/dist/presets/theme/messages/it.json +96 -0
  504. package/dist/presets/theme/messages/pt.json +96 -0
  505. package/dist/styles/classes.json +1 -1
  506. package/dist/styles/ui.css +1 -1
  507. package/dist/templates/contents/themes/default/entities/customers/messages/de.json +66 -0
  508. package/dist/templates/contents/themes/default/entities/customers/messages/fr.json +66 -0
  509. package/dist/templates/contents/themes/default/entities/customers/messages/it.json +66 -0
  510. package/dist/templates/contents/themes/default/entities/customers/messages/pt.json +66 -0
  511. package/dist/templates/contents/themes/default/entities/pages/messages/de.json +41 -0
  512. package/dist/templates/contents/themes/default/entities/pages/messages/fr.json +41 -0
  513. package/dist/templates/contents/themes/default/entities/pages/messages/it.json +41 -0
  514. package/dist/templates/contents/themes/default/entities/pages/messages/pt.json +41 -0
  515. package/dist/templates/contents/themes/default/entities/posts/messages/de.json +55 -0
  516. package/dist/templates/contents/themes/default/entities/posts/messages/fr.json +55 -0
  517. package/dist/templates/contents/themes/default/entities/posts/messages/it.json +55 -0
  518. package/dist/templates/contents/themes/default/entities/posts/messages/pt.json +55 -0
  519. package/dist/templates/contents/themes/default/entities/tasks/messages/de.json +204 -0
  520. package/dist/templates/contents/themes/default/entities/tasks/messages/fr.json +204 -0
  521. package/dist/templates/contents/themes/default/entities/tasks/messages/it.json +204 -0
  522. package/dist/templates/contents/themes/default/entities/tasks/messages/pt.json +204 -0
  523. package/dist/templates/contents/themes/default/messages/de/admin.json +219 -0
  524. package/dist/templates/contents/themes/default/messages/de/aiUsage.json +36 -0
  525. package/dist/templates/contents/themes/default/messages/de/buttons.json +19 -0
  526. package/dist/templates/contents/themes/default/messages/de/categories.json +35 -0
  527. package/dist/templates/contents/themes/default/messages/de/common.json +16 -0
  528. package/dist/templates/contents/themes/default/messages/de/dev.json +106 -0
  529. package/dist/templates/contents/themes/default/messages/de/docs.json +27 -0
  530. package/dist/templates/contents/themes/default/messages/de/entities.json +7 -0
  531. package/dist/templates/contents/themes/default/messages/de/features.json +119 -0
  532. package/dist/templates/contents/themes/default/messages/de/footer.json +22 -0
  533. package/dist/templates/contents/themes/default/messages/de/home.json +57 -0
  534. package/dist/templates/contents/themes/default/messages/de/index.ts +39 -0
  535. package/dist/templates/contents/themes/default/messages/de/mobileNav.json +13 -0
  536. package/dist/templates/contents/themes/default/messages/de/navigation.json +8 -0
  537. package/dist/templates/contents/themes/default/messages/de/observability.json +74 -0
  538. package/dist/templates/contents/themes/default/messages/de/posts.json +54 -0
  539. package/dist/templates/contents/themes/default/messages/de/pricing.json +102 -0
  540. package/dist/templates/contents/themes/default/messages/de/support.json +9 -0
  541. package/dist/templates/contents/themes/default/messages/de/teams.json +8 -0
  542. package/dist/templates/contents/themes/default/messages/es/admin.json +219 -0
  543. package/dist/templates/contents/themes/default/messages/es/aiUsage.json +36 -0
  544. package/dist/templates/contents/themes/default/messages/es/buttons.json +19 -0
  545. package/dist/templates/contents/themes/default/messages/es/categories.json +35 -0
  546. package/dist/templates/contents/themes/default/messages/es/common.json +16 -0
  547. package/dist/templates/contents/themes/default/messages/es/dev.json +101 -0
  548. package/dist/templates/contents/themes/default/messages/es/docs.json +27 -0
  549. package/dist/templates/contents/themes/default/messages/es/entities.json +7 -0
  550. package/dist/templates/contents/themes/default/messages/es/features.json +119 -0
  551. package/dist/templates/contents/themes/default/messages/es/footer.json +22 -0
  552. package/dist/templates/contents/themes/default/messages/es/home.json +57 -0
  553. package/dist/templates/contents/themes/default/messages/es/index.ts +39 -0
  554. package/dist/templates/contents/themes/default/messages/es/mobileNav.json +13 -0
  555. package/dist/templates/contents/themes/default/messages/es/navigation.json +8 -0
  556. package/dist/templates/contents/themes/default/messages/es/observability.json +74 -0
  557. package/dist/templates/contents/themes/default/messages/es/posts.json +54 -0
  558. package/dist/templates/contents/themes/default/messages/es/pricing.json +102 -0
  559. package/dist/templates/contents/themes/default/messages/es/support.json +9 -0
  560. package/dist/templates/contents/themes/default/messages/es/teams.json +8 -0
  561. package/dist/templates/contents/themes/default/messages/fr/admin.json +219 -0
  562. package/dist/templates/contents/themes/default/messages/fr/aiUsage.json +36 -0
  563. package/dist/templates/contents/themes/default/messages/fr/buttons.json +19 -0
  564. package/dist/templates/contents/themes/default/messages/fr/categories.json +35 -0
  565. package/dist/templates/contents/themes/default/messages/fr/common.json +16 -0
  566. package/dist/templates/contents/themes/default/messages/fr/dev.json +106 -0
  567. package/dist/templates/contents/themes/default/messages/fr/docs.json +27 -0
  568. package/dist/templates/contents/themes/default/messages/fr/entities.json +7 -0
  569. package/dist/templates/contents/themes/default/messages/fr/features.json +119 -0
  570. package/dist/templates/contents/themes/default/messages/fr/footer.json +22 -0
  571. package/dist/templates/contents/themes/default/messages/fr/home.json +57 -0
  572. package/dist/templates/contents/themes/default/messages/fr/index.ts +39 -0
  573. package/dist/templates/contents/themes/default/messages/fr/mobileNav.json +13 -0
  574. package/dist/templates/contents/themes/default/messages/fr/navigation.json +8 -0
  575. package/dist/templates/contents/themes/default/messages/fr/observability.json +74 -0
  576. package/dist/templates/contents/themes/default/messages/fr/posts.json +54 -0
  577. package/dist/templates/contents/themes/default/messages/fr/pricing.json +102 -0
  578. package/dist/templates/contents/themes/default/messages/fr/support.json +9 -0
  579. package/dist/templates/contents/themes/default/messages/fr/teams.json +8 -0
  580. package/dist/templates/contents/themes/default/messages/it/admin.json +219 -0
  581. package/dist/templates/contents/themes/default/messages/it/aiUsage.json +36 -0
  582. package/dist/templates/contents/themes/default/messages/it/buttons.json +19 -0
  583. package/dist/templates/contents/themes/default/messages/it/categories.json +35 -0
  584. package/dist/templates/contents/themes/default/messages/it/common.json +16 -0
  585. package/dist/templates/contents/themes/default/messages/it/dev.json +106 -0
  586. package/dist/templates/contents/themes/default/messages/it/docs.json +27 -0
  587. package/dist/templates/contents/themes/default/messages/it/entities.json +7 -0
  588. package/dist/templates/contents/themes/default/messages/it/features.json +119 -0
  589. package/dist/templates/contents/themes/default/messages/it/footer.json +22 -0
  590. package/dist/templates/contents/themes/default/messages/it/home.json +57 -0
  591. package/dist/templates/contents/themes/default/messages/it/index.ts +39 -0
  592. package/dist/templates/contents/themes/default/messages/it/mobileNav.json +13 -0
  593. package/dist/templates/contents/themes/default/messages/it/navigation.json +8 -0
  594. package/dist/templates/contents/themes/default/messages/it/observability.json +74 -0
  595. package/dist/templates/contents/themes/default/messages/it/posts.json +54 -0
  596. package/dist/templates/contents/themes/default/messages/it/pricing.json +102 -0
  597. package/dist/templates/contents/themes/default/messages/it/support.json +9 -0
  598. package/dist/templates/contents/themes/default/messages/it/teams.json +8 -0
  599. package/dist/templates/contents/themes/default/messages/pt/admin.json +219 -0
  600. package/dist/templates/contents/themes/default/messages/pt/aiUsage.json +36 -0
  601. package/dist/templates/contents/themes/default/messages/pt/buttons.json +19 -0
  602. package/dist/templates/contents/themes/default/messages/pt/categories.json +35 -0
  603. package/dist/templates/contents/themes/default/messages/pt/common.json +16 -0
  604. package/dist/templates/contents/themes/default/messages/pt/dev.json +106 -0
  605. package/dist/templates/contents/themes/default/messages/pt/docs.json +27 -0
  606. package/dist/templates/contents/themes/default/messages/pt/entities.json +7 -0
  607. package/dist/templates/contents/themes/default/messages/pt/features.json +119 -0
  608. package/dist/templates/contents/themes/default/messages/pt/footer.json +22 -0
  609. package/dist/templates/contents/themes/default/messages/pt/home.json +57 -0
  610. package/dist/templates/contents/themes/default/messages/pt/index.ts +39 -0
  611. package/dist/templates/contents/themes/default/messages/pt/mobileNav.json +13 -0
  612. package/dist/templates/contents/themes/default/messages/pt/navigation.json +8 -0
  613. package/dist/templates/contents/themes/default/messages/pt/observability.json +74 -0
  614. package/dist/templates/contents/themes/default/messages/pt/posts.json +54 -0
  615. package/dist/templates/contents/themes/default/messages/pt/pricing.json +102 -0
  616. package/dist/templates/contents/themes/default/messages/pt/support.json +9 -0
  617. package/dist/templates/contents/themes/default/messages/pt/teams.json +8 -0
  618. package/dist/templates/contents/themes/starter/README.md +35 -0
  619. package/dist/templates/contents/themes/starter/about/business.md +16 -0
  620. package/dist/templates/contents/themes/starter/about/features.json +28 -0
  621. package/dist/templates/contents/themes/starter/blocks/hero/component.tsx +112 -0
  622. package/dist/templates/contents/themes/starter/blocks/hero/config.ts +11 -0
  623. package/dist/templates/contents/themes/starter/blocks/hero/fields.ts +74 -0
  624. package/dist/templates/contents/themes/starter/blocks/hero/index.ts +6 -0
  625. package/dist/templates/contents/themes/starter/blocks/hero/schema.ts +34 -0
  626. package/dist/templates/contents/themes/starter/config/app.config.ts +193 -0
  627. package/dist/templates/contents/themes/starter/config/billing.config.ts +93 -0
  628. package/dist/templates/contents/themes/starter/config/dashboard.config.ts +419 -0
  629. package/dist/templates/contents/themes/starter/config/dev.config.ts +74 -0
  630. package/dist/templates/contents/themes/starter/config/permissions.config.ts +64 -0
  631. package/dist/templates/contents/themes/starter/config/theme.config.ts +83 -0
  632. package/dist/templates/contents/themes/starter/docs/01-overview/01-introduction.md +33 -0
  633. package/dist/templates/contents/themes/starter/docs/01-overview/02-customization.md +46 -0
  634. package/dist/templates/contents/themes/starter/entities/tasks/messages/de.json +263 -0
  635. package/dist/templates/contents/themes/starter/entities/tasks/messages/en.json +263 -0
  636. package/dist/templates/contents/themes/starter/entities/tasks/messages/es.json +263 -0
  637. package/dist/templates/contents/themes/starter/entities/tasks/messages/fr.json +263 -0
  638. package/dist/templates/contents/themes/starter/entities/tasks/messages/it.json +263 -0
  639. package/dist/templates/contents/themes/starter/entities/tasks/messages/pt.json +263 -0
  640. package/dist/templates/contents/themes/starter/entities/tasks/migrations/001_tasks_table.sql +104 -0
  641. package/dist/templates/contents/themes/starter/entities/tasks/migrations/002_task_metas.sql +84 -0
  642. package/dist/templates/contents/themes/starter/entities/tasks/migrations/003_tasks_sample_data.sql +172 -0
  643. package/dist/templates/contents/themes/starter/entities/tasks/tasks.config.ts +131 -0
  644. package/dist/templates/contents/themes/starter/entities/tasks/tasks.fields.ts +188 -0
  645. package/dist/templates/contents/themes/starter/entities/tasks/tasks.service.ts +390 -0
  646. package/dist/templates/contents/themes/starter/entities/tasks/tasks.types.ts +82 -0
  647. package/dist/templates/contents/themes/starter/lib/hooks/index.ts +1 -0
  648. package/dist/templates/contents/themes/starter/lib/hooks/useTaskStats.ts +57 -0
  649. package/dist/templates/contents/themes/starter/lib/index.ts +8 -0
  650. package/dist/templates/contents/themes/starter/lib/selectors.ts +94 -0
  651. package/dist/templates/contents/themes/starter/lib/utils.ts +154 -0
  652. package/dist/templates/contents/themes/starter/messages/de/analytics.json +39 -0
  653. package/dist/templates/contents/themes/starter/messages/de/common.json +33 -0
  654. package/dist/templates/contents/themes/starter/messages/de/home.json +30 -0
  655. package/dist/templates/contents/themes/starter/messages/de/navigation.json +16 -0
  656. package/dist/templates/contents/themes/starter/messages/en/analytics.json +39 -0
  657. package/dist/templates/contents/themes/starter/messages/en/common.json +33 -0
  658. package/dist/templates/contents/themes/starter/messages/en/home.json +30 -0
  659. package/dist/templates/contents/themes/starter/messages/en/navigation.json +16 -0
  660. package/dist/templates/contents/themes/starter/messages/es/analytics.json +39 -0
  661. package/dist/templates/contents/themes/starter/messages/es/common.json +33 -0
  662. package/dist/templates/contents/themes/starter/messages/es/home.json +30 -0
  663. package/dist/templates/contents/themes/starter/messages/es/navigation.json +16 -0
  664. package/dist/templates/contents/themes/starter/messages/fr/analytics.json +39 -0
  665. package/dist/templates/contents/themes/starter/messages/fr/common.json +33 -0
  666. package/dist/templates/contents/themes/starter/messages/fr/home.json +30 -0
  667. package/dist/templates/contents/themes/starter/messages/fr/navigation.json +16 -0
  668. package/dist/templates/contents/themes/starter/messages/it/analytics.json +39 -0
  669. package/dist/templates/contents/themes/starter/messages/it/common.json +33 -0
  670. package/dist/templates/contents/themes/starter/messages/it/home.json +30 -0
  671. package/dist/templates/contents/themes/starter/messages/it/navigation.json +16 -0
  672. package/dist/templates/contents/themes/starter/messages/pt/analytics.json +39 -0
  673. package/dist/templates/contents/themes/starter/messages/pt/common.json +33 -0
  674. package/dist/templates/contents/themes/starter/messages/pt/home.json +30 -0
  675. package/dist/templates/contents/themes/starter/messages/pt/navigation.json +16 -0
  676. package/dist/templates/contents/themes/starter/migrations/001_starter_users.sql +17 -0
  677. package/dist/templates/contents/themes/starter/migrations/README.md +19 -0
  678. package/dist/templates/contents/themes/starter/public/brand/.gitkeep +0 -0
  679. package/dist/templates/contents/themes/starter/public/theme/blocks/hero/thumbnail.png +1 -0
  680. package/dist/templates/contents/themes/starter/styles/components.css +16 -0
  681. package/dist/templates/contents/themes/starter/styles/globals.css +20 -0
  682. package/dist/templates/contents/themes/starter/templates/(dashboard)/analytics/_hooks/useAnalyticsData.ts +41 -0
  683. package/dist/templates/contents/themes/starter/templates/(dashboard)/analytics/components/RecentActivity.tsx +78 -0
  684. package/dist/templates/contents/themes/starter/templates/(dashboard)/analytics/components/StatsCard.tsx +58 -0
  685. package/dist/templates/contents/themes/starter/templates/(dashboard)/analytics/components/TasksChart.tsx +80 -0
  686. package/dist/templates/contents/themes/starter/templates/(dashboard)/analytics/page.tsx +45 -0
  687. package/dist/templates/contents/themes/starter/templates/(public)/layout.tsx +15 -0
  688. package/dist/templates/contents/themes/starter/templates/(public)/page.tsx +37 -0
  689. package/dist/templates/contents/themes/starter/templates/(public)/support/page.tsx +14 -0
  690. package/dist/templates/contents/themes/starter/tests/cypress/e2e/tasks/TaskAPIController.js +240 -0
  691. package/dist/templates/contents/themes/starter/tests/cypress/e2e/tasks/TasksPOM.ts +246 -0
  692. package/dist/templates/contents/themes/starter/tests/cypress/e2e/tasks/tasks-crud.cy.ts +423 -0
  693. package/dist/templates/contents/themes/starter/tests/cypress/fixtures/entities.json +63 -0
  694. package/dist/templates/contents/themes/starter/tests/cypress/src/controllers/BaseAPIController.js +317 -0
  695. package/dist/templates/contents/themes/starter/tests/cypress/src/controllers/index.js +12 -0
  696. package/dist/templates/contents/themes/starter/tests/cypress/src/core/AuthPOM.ts +464 -0
  697. package/dist/templates/contents/themes/starter/tests/cypress/src/core/BasePOM.ts +130 -0
  698. package/dist/templates/contents/themes/starter/tests/cypress/src/core/DashboardEntityPOM.ts +761 -0
  699. package/dist/templates/contents/themes/starter/tests/cypress/src/core/index.ts +12 -0
  700. package/dist/templates/contents/themes/starter/tests/cypress/src/helpers/ApiInterceptor.ts +170 -0
  701. package/dist/templates/contents/themes/starter/tests/cypress/src/selectors.ts +155 -0
  702. package/dist/templates/contents/themes/starter/tests/cypress/src/session-helpers.ts +255 -0
  703. package/dist/templates/contents/themes/starter/tests/cypress/support/commands.ts +192 -0
  704. package/dist/templates/contents/themes/starter/tests/cypress/support/doc-commands.ts +260 -0
  705. package/dist/templates/contents/themes/starter/tests/cypress/support/e2e.ts +21 -0
  706. package/dist/templates/contents/themes/starter/tests/cypress.config.ts +155 -0
  707. package/dist/templates/contents/themes/starter/tests/tsconfig.json +15 -0
  708. package/dist/templates/eslint.config.mjs +16 -0
  709. package/dist/templates/features/blog/blocks/post-content/component.tsx +197 -0
  710. package/dist/templates/features/blog/blocks/post-content/config.ts +11 -0
  711. package/dist/templates/features/blog/blocks/post-content/examples.ts +33 -0
  712. package/dist/templates/features/blog/blocks/post-content/fields.ts +165 -0
  713. package/dist/templates/features/blog/blocks/post-content/index.ts +4 -0
  714. package/dist/templates/features/blog/blocks/post-content/schema.ts +46 -0
  715. package/dist/templates/features/blog/entities/posts/components/post-header.tsx +97 -0
  716. package/dist/templates/features/blog/entities/posts/messages/en.json +55 -0
  717. package/dist/templates/features/blog/entities/posts/messages/es.json +55 -0
  718. package/dist/templates/features/blog/entities/posts/migrations/001_posts_table.sql +115 -0
  719. package/dist/templates/features/blog/entities/posts/migrations/003_add_status.sql +44 -0
  720. package/dist/templates/features/blog/entities/posts/migrations/004_entity_taxonomy_relations.sql +129 -0
  721. package/dist/templates/features/blog/entities/posts/migrations/006_posts_metas.sql +56 -0
  722. package/dist/templates/features/blog/entities/posts/posts.config.ts +112 -0
  723. package/dist/templates/features/blog/entities/posts/posts.fields.ts +116 -0
  724. package/dist/templates/features/blog/entities/posts/posts.service.ts +376 -0
  725. package/dist/templates/features/blog/entities/posts/posts.types.ts +74 -0
  726. package/dist/templates/features/pages/entities/pages/messages/en.json +41 -0
  727. package/dist/templates/features/pages/entities/pages/messages/es.json +41 -0
  728. package/dist/templates/features/pages/entities/pages/migrations/001_pages_table.sql +112 -0
  729. package/dist/templates/features/pages/entities/pages/migrations/002_pages_metas.sql +56 -0
  730. package/dist/templates/features/pages/entities/pages/migrations/003_add_status.sql +50 -0
  731. package/dist/templates/features/pages/entities/pages/pages-management.service.ts +610 -0
  732. package/dist/templates/features/pages/entities/pages/pages.config.ts +105 -0
  733. package/dist/templates/features/pages/entities/pages/pages.fields.ts +101 -0
  734. package/dist/templates/features/pages/entities/pages/pages.service.ts +290 -0
  735. package/dist/templates/features/pages/entities/pages/pages.types.ts +124 -0
  736. package/package.json +33 -2
  737. package/scripts/build/registry/generators/translation-registry.mjs +135 -18
  738. package/templates/contents/themes/default/entities/customers/messages/de.json +66 -0
  739. package/templates/contents/themes/default/entities/customers/messages/fr.json +66 -0
  740. package/templates/contents/themes/default/entities/customers/messages/it.json +66 -0
  741. package/templates/contents/themes/default/entities/customers/messages/pt.json +66 -0
  742. package/templates/contents/themes/default/entities/pages/messages/de.json +41 -0
  743. package/templates/contents/themes/default/entities/pages/messages/fr.json +41 -0
  744. package/templates/contents/themes/default/entities/pages/messages/it.json +41 -0
  745. package/templates/contents/themes/default/entities/pages/messages/pt.json +41 -0
  746. package/templates/contents/themes/default/entities/posts/messages/de.json +55 -0
  747. package/templates/contents/themes/default/entities/posts/messages/fr.json +55 -0
  748. package/templates/contents/themes/default/entities/posts/messages/it.json +55 -0
  749. package/templates/contents/themes/default/entities/posts/messages/pt.json +55 -0
  750. package/templates/contents/themes/default/entities/tasks/messages/de.json +204 -0
  751. package/templates/contents/themes/default/entities/tasks/messages/fr.json +204 -0
  752. package/templates/contents/themes/default/entities/tasks/messages/it.json +204 -0
  753. package/templates/contents/themes/default/entities/tasks/messages/pt.json +204 -0
  754. package/templates/contents/themes/default/messages/de/admin.json +219 -0
  755. package/templates/contents/themes/default/messages/de/aiUsage.json +36 -0
  756. package/templates/contents/themes/default/messages/de/buttons.json +19 -0
  757. package/templates/contents/themes/default/messages/de/categories.json +35 -0
  758. package/templates/contents/themes/default/messages/de/common.json +16 -0
  759. package/templates/contents/themes/default/messages/de/dev.json +106 -0
  760. package/templates/contents/themes/default/messages/de/docs.json +27 -0
  761. package/templates/contents/themes/default/messages/de/entities.json +7 -0
  762. package/templates/contents/themes/default/messages/de/features.json +119 -0
  763. package/templates/contents/themes/default/messages/de/footer.json +22 -0
  764. package/templates/contents/themes/default/messages/de/home.json +57 -0
  765. package/templates/contents/themes/default/messages/de/index.ts +39 -0
  766. package/templates/contents/themes/default/messages/de/mobileNav.json +13 -0
  767. package/templates/contents/themes/default/messages/de/navigation.json +8 -0
  768. package/templates/contents/themes/default/messages/de/observability.json +74 -0
  769. package/templates/contents/themes/default/messages/de/posts.json +54 -0
  770. package/templates/contents/themes/default/messages/de/pricing.json +102 -0
  771. package/templates/contents/themes/default/messages/de/support.json +9 -0
  772. package/templates/contents/themes/default/messages/de/teams.json +8 -0
  773. package/templates/contents/themes/default/messages/es/admin.json +219 -0
  774. package/templates/contents/themes/default/messages/es/aiUsage.json +36 -0
  775. package/templates/contents/themes/default/messages/es/buttons.json +19 -0
  776. package/templates/contents/themes/default/messages/es/categories.json +35 -0
  777. package/templates/contents/themes/default/messages/es/common.json +16 -0
  778. package/templates/contents/themes/default/messages/es/dev.json +101 -0
  779. package/templates/contents/themes/default/messages/es/docs.json +27 -0
  780. package/templates/contents/themes/default/messages/es/entities.json +7 -0
  781. package/templates/contents/themes/default/messages/es/features.json +119 -0
  782. package/templates/contents/themes/default/messages/es/footer.json +22 -0
  783. package/templates/contents/themes/default/messages/es/home.json +57 -0
  784. package/templates/contents/themes/default/messages/es/index.ts +39 -0
  785. package/templates/contents/themes/default/messages/es/mobileNav.json +13 -0
  786. package/templates/contents/themes/default/messages/es/navigation.json +8 -0
  787. package/templates/contents/themes/default/messages/es/observability.json +74 -0
  788. package/templates/contents/themes/default/messages/es/posts.json +54 -0
  789. package/templates/contents/themes/default/messages/es/pricing.json +102 -0
  790. package/templates/contents/themes/default/messages/es/support.json +9 -0
  791. package/templates/contents/themes/default/messages/es/teams.json +8 -0
  792. package/templates/contents/themes/default/messages/fr/admin.json +219 -0
  793. package/templates/contents/themes/default/messages/fr/aiUsage.json +36 -0
  794. package/templates/contents/themes/default/messages/fr/buttons.json +19 -0
  795. package/templates/contents/themes/default/messages/fr/categories.json +35 -0
  796. package/templates/contents/themes/default/messages/fr/common.json +16 -0
  797. package/templates/contents/themes/default/messages/fr/dev.json +106 -0
  798. package/templates/contents/themes/default/messages/fr/docs.json +27 -0
  799. package/templates/contents/themes/default/messages/fr/entities.json +7 -0
  800. package/templates/contents/themes/default/messages/fr/features.json +119 -0
  801. package/templates/contents/themes/default/messages/fr/footer.json +22 -0
  802. package/templates/contents/themes/default/messages/fr/home.json +57 -0
  803. package/templates/contents/themes/default/messages/fr/index.ts +39 -0
  804. package/templates/contents/themes/default/messages/fr/mobileNav.json +13 -0
  805. package/templates/contents/themes/default/messages/fr/navigation.json +8 -0
  806. package/templates/contents/themes/default/messages/fr/observability.json +74 -0
  807. package/templates/contents/themes/default/messages/fr/posts.json +54 -0
  808. package/templates/contents/themes/default/messages/fr/pricing.json +102 -0
  809. package/templates/contents/themes/default/messages/fr/support.json +9 -0
  810. package/templates/contents/themes/default/messages/fr/teams.json +8 -0
  811. package/templates/contents/themes/default/messages/it/admin.json +219 -0
  812. package/templates/contents/themes/default/messages/it/aiUsage.json +36 -0
  813. package/templates/contents/themes/default/messages/it/buttons.json +19 -0
  814. package/templates/contents/themes/default/messages/it/categories.json +35 -0
  815. package/templates/contents/themes/default/messages/it/common.json +16 -0
  816. package/templates/contents/themes/default/messages/it/dev.json +106 -0
  817. package/templates/contents/themes/default/messages/it/docs.json +27 -0
  818. package/templates/contents/themes/default/messages/it/entities.json +7 -0
  819. package/templates/contents/themes/default/messages/it/features.json +119 -0
  820. package/templates/contents/themes/default/messages/it/footer.json +22 -0
  821. package/templates/contents/themes/default/messages/it/home.json +57 -0
  822. package/templates/contents/themes/default/messages/it/index.ts +39 -0
  823. package/templates/contents/themes/default/messages/it/mobileNav.json +13 -0
  824. package/templates/contents/themes/default/messages/it/navigation.json +8 -0
  825. package/templates/contents/themes/default/messages/it/observability.json +74 -0
  826. package/templates/contents/themes/default/messages/it/posts.json +54 -0
  827. package/templates/contents/themes/default/messages/it/pricing.json +102 -0
  828. package/templates/contents/themes/default/messages/it/support.json +9 -0
  829. package/templates/contents/themes/default/messages/it/teams.json +8 -0
  830. package/templates/contents/themes/default/messages/pt/admin.json +219 -0
  831. package/templates/contents/themes/default/messages/pt/aiUsage.json +36 -0
  832. package/templates/contents/themes/default/messages/pt/buttons.json +19 -0
  833. package/templates/contents/themes/default/messages/pt/categories.json +35 -0
  834. package/templates/contents/themes/default/messages/pt/common.json +16 -0
  835. package/templates/contents/themes/default/messages/pt/dev.json +106 -0
  836. package/templates/contents/themes/default/messages/pt/docs.json +27 -0
  837. package/templates/contents/themes/default/messages/pt/entities.json +7 -0
  838. package/templates/contents/themes/default/messages/pt/features.json +119 -0
  839. package/templates/contents/themes/default/messages/pt/footer.json +22 -0
  840. package/templates/contents/themes/default/messages/pt/home.json +57 -0
  841. package/templates/contents/themes/default/messages/pt/index.ts +39 -0
  842. package/templates/contents/themes/default/messages/pt/mobileNav.json +13 -0
  843. package/templates/contents/themes/default/messages/pt/navigation.json +8 -0
  844. package/templates/contents/themes/default/messages/pt/observability.json +74 -0
  845. package/templates/contents/themes/default/messages/pt/posts.json +54 -0
  846. package/templates/contents/themes/default/messages/pt/pricing.json +102 -0
  847. package/templates/contents/themes/default/messages/pt/support.json +9 -0
  848. package/templates/contents/themes/default/messages/pt/teams.json +8 -0
  849. package/templates/contents/themes/starter/README.md +35 -0
  850. package/templates/contents/themes/starter/about/business.md +16 -0
  851. package/templates/contents/themes/starter/about/features.json +28 -0
  852. package/templates/contents/themes/starter/blocks/hero/component.tsx +112 -0
  853. package/templates/contents/themes/starter/blocks/hero/config.ts +11 -0
  854. package/templates/contents/themes/starter/blocks/hero/fields.ts +74 -0
  855. package/templates/contents/themes/starter/blocks/hero/index.ts +6 -0
  856. package/templates/contents/themes/starter/blocks/hero/schema.ts +34 -0
  857. package/templates/contents/themes/starter/config/app.config.ts +193 -0
  858. package/templates/contents/themes/starter/config/billing.config.ts +93 -0
  859. package/templates/contents/themes/starter/config/dashboard.config.ts +419 -0
  860. package/templates/contents/themes/starter/config/dev.config.ts +74 -0
  861. package/templates/contents/themes/starter/config/permissions.config.ts +64 -0
  862. package/templates/contents/themes/starter/config/theme.config.ts +83 -0
  863. package/templates/contents/themes/starter/docs/01-overview/01-introduction.md +33 -0
  864. package/templates/contents/themes/starter/docs/01-overview/02-customization.md +46 -0
  865. package/templates/contents/themes/starter/entities/tasks/messages/de.json +263 -0
  866. package/templates/contents/themes/starter/entities/tasks/messages/en.json +263 -0
  867. package/templates/contents/themes/starter/entities/tasks/messages/es.json +263 -0
  868. package/templates/contents/themes/starter/entities/tasks/messages/fr.json +263 -0
  869. package/templates/contents/themes/starter/entities/tasks/messages/it.json +263 -0
  870. package/templates/contents/themes/starter/entities/tasks/messages/pt.json +263 -0
  871. package/templates/contents/themes/starter/entities/tasks/migrations/001_tasks_table.sql +104 -0
  872. package/templates/contents/themes/starter/entities/tasks/migrations/002_task_metas.sql +84 -0
  873. package/templates/contents/themes/starter/entities/tasks/migrations/003_tasks_sample_data.sql +172 -0
  874. package/templates/contents/themes/starter/entities/tasks/tasks.config.ts +131 -0
  875. package/templates/contents/themes/starter/entities/tasks/tasks.fields.ts +188 -0
  876. package/templates/contents/themes/starter/entities/tasks/tasks.service.ts +390 -0
  877. package/templates/contents/themes/starter/entities/tasks/tasks.types.ts +82 -0
  878. package/templates/contents/themes/starter/lib/hooks/index.ts +1 -0
  879. package/templates/contents/themes/starter/lib/hooks/useTaskStats.ts +57 -0
  880. package/templates/contents/themes/starter/lib/index.ts +8 -0
  881. package/templates/contents/themes/starter/lib/selectors.ts +94 -0
  882. package/templates/contents/themes/starter/lib/utils.ts +154 -0
  883. package/templates/contents/themes/starter/messages/de/analytics.json +39 -0
  884. package/templates/contents/themes/starter/messages/de/common.json +33 -0
  885. package/templates/contents/themes/starter/messages/de/home.json +30 -0
  886. package/templates/contents/themes/starter/messages/de/navigation.json +16 -0
  887. package/templates/contents/themes/starter/messages/en/analytics.json +39 -0
  888. package/templates/contents/themes/starter/messages/en/common.json +33 -0
  889. package/templates/contents/themes/starter/messages/en/home.json +30 -0
  890. package/templates/contents/themes/starter/messages/en/navigation.json +16 -0
  891. package/templates/contents/themes/starter/messages/es/analytics.json +39 -0
  892. package/templates/contents/themes/starter/messages/es/common.json +33 -0
  893. package/templates/contents/themes/starter/messages/es/home.json +30 -0
  894. package/templates/contents/themes/starter/messages/es/navigation.json +16 -0
  895. package/templates/contents/themes/starter/messages/fr/analytics.json +39 -0
  896. package/templates/contents/themes/starter/messages/fr/common.json +33 -0
  897. package/templates/contents/themes/starter/messages/fr/home.json +30 -0
  898. package/templates/contents/themes/starter/messages/fr/navigation.json +16 -0
  899. package/templates/contents/themes/starter/messages/it/analytics.json +39 -0
  900. package/templates/contents/themes/starter/messages/it/common.json +33 -0
  901. package/templates/contents/themes/starter/messages/it/home.json +30 -0
  902. package/templates/contents/themes/starter/messages/it/navigation.json +16 -0
  903. package/templates/contents/themes/starter/messages/pt/analytics.json +39 -0
  904. package/templates/contents/themes/starter/messages/pt/common.json +33 -0
  905. package/templates/contents/themes/starter/messages/pt/home.json +30 -0
  906. package/templates/contents/themes/starter/messages/pt/navigation.json +16 -0
  907. package/templates/contents/themes/starter/migrations/001_starter_users.sql +17 -0
  908. package/templates/contents/themes/starter/migrations/README.md +19 -0
  909. package/templates/contents/themes/starter/public/brand/.gitkeep +0 -0
  910. package/templates/contents/themes/starter/public/theme/blocks/hero/thumbnail.png +1 -0
  911. package/templates/contents/themes/starter/styles/components.css +16 -0
  912. package/templates/contents/themes/starter/styles/globals.css +20 -0
  913. package/templates/contents/themes/starter/templates/(dashboard)/analytics/_hooks/useAnalyticsData.ts +41 -0
  914. package/templates/contents/themes/starter/templates/(dashboard)/analytics/components/RecentActivity.tsx +78 -0
  915. package/templates/contents/themes/starter/templates/(dashboard)/analytics/components/StatsCard.tsx +58 -0
  916. package/templates/contents/themes/starter/templates/(dashboard)/analytics/components/TasksChart.tsx +80 -0
  917. package/templates/contents/themes/starter/templates/(dashboard)/analytics/page.tsx +45 -0
  918. package/templates/contents/themes/starter/templates/(public)/layout.tsx +15 -0
  919. package/templates/contents/themes/starter/templates/(public)/page.tsx +37 -0
  920. package/templates/contents/themes/starter/templates/(public)/support/page.tsx +14 -0
  921. package/templates/contents/themes/starter/tests/cypress/e2e/tasks/TaskAPIController.js +240 -0
  922. package/templates/contents/themes/starter/tests/cypress/e2e/tasks/TasksPOM.ts +246 -0
  923. package/templates/contents/themes/starter/tests/cypress/e2e/tasks/tasks-crud.cy.ts +423 -0
  924. package/templates/contents/themes/starter/tests/cypress/fixtures/entities.json +63 -0
  925. package/templates/contents/themes/starter/tests/cypress/src/controllers/BaseAPIController.js +317 -0
  926. package/templates/contents/themes/starter/tests/cypress/src/controllers/index.js +12 -0
  927. package/templates/contents/themes/starter/tests/cypress/src/core/AuthPOM.ts +464 -0
  928. package/templates/contents/themes/starter/tests/cypress/src/core/BasePOM.ts +130 -0
  929. package/templates/contents/themes/starter/tests/cypress/src/core/DashboardEntityPOM.ts +761 -0
  930. package/templates/contents/themes/starter/tests/cypress/src/core/index.ts +12 -0
  931. package/templates/contents/themes/starter/tests/cypress/src/helpers/ApiInterceptor.ts +170 -0
  932. package/templates/contents/themes/starter/tests/cypress/src/selectors.ts +155 -0
  933. package/templates/contents/themes/starter/tests/cypress/src/session-helpers.ts +255 -0
  934. package/templates/contents/themes/starter/tests/cypress/support/commands.ts +192 -0
  935. package/templates/contents/themes/starter/tests/cypress/support/doc-commands.ts +260 -0
  936. package/templates/contents/themes/starter/tests/cypress/support/e2e.ts +21 -0
  937. package/templates/contents/themes/starter/tests/cypress.config.ts +155 -0
  938. package/templates/contents/themes/starter/tests/tsconfig.json +15 -0
  939. package/templates/eslint.config.mjs +16 -0
  940. package/templates/features/blog/blocks/post-content/component.tsx +197 -0
  941. package/templates/features/blog/blocks/post-content/config.ts +11 -0
  942. package/templates/features/blog/blocks/post-content/examples.ts +33 -0
  943. package/templates/features/blog/blocks/post-content/fields.ts +165 -0
  944. package/templates/features/blog/blocks/post-content/index.ts +4 -0
  945. package/templates/features/blog/blocks/post-content/schema.ts +46 -0
  946. package/templates/features/blog/entities/posts/components/post-header.tsx +97 -0
  947. package/templates/features/blog/entities/posts/messages/en.json +55 -0
  948. package/templates/features/blog/entities/posts/messages/es.json +55 -0
  949. package/templates/features/blog/entities/posts/migrations/001_posts_table.sql +115 -0
  950. package/templates/features/blog/entities/posts/migrations/003_add_status.sql +44 -0
  951. package/templates/features/blog/entities/posts/migrations/004_entity_taxonomy_relations.sql +129 -0
  952. package/templates/features/blog/entities/posts/migrations/006_posts_metas.sql +56 -0
  953. package/templates/features/blog/entities/posts/posts.config.ts +112 -0
  954. package/templates/features/blog/entities/posts/posts.fields.ts +116 -0
  955. package/templates/features/blog/entities/posts/posts.service.ts +376 -0
  956. package/templates/features/blog/entities/posts/posts.types.ts +74 -0
  957. package/templates/features/pages/entities/pages/messages/en.json +41 -0
  958. package/templates/features/pages/entities/pages/messages/es.json +41 -0
  959. package/templates/features/pages/entities/pages/migrations/001_pages_table.sql +112 -0
  960. package/templates/features/pages/entities/pages/migrations/002_pages_metas.sql +56 -0
  961. package/templates/features/pages/entities/pages/migrations/003_add_status.sql +50 -0
  962. package/templates/features/pages/entities/pages/pages-management.service.ts +610 -0
  963. package/templates/features/pages/entities/pages/pages.config.ts +105 -0
  964. package/templates/features/pages/entities/pages/pages.fields.ts +101 -0
  965. package/templates/features/pages/entities/pages/pages.service.ts +290 -0
  966. package/templates/features/pages/entities/pages/pages.types.ts +124 -0
  967. package/dist/templates/contents/themes/default/messages/en.json +0 -934
  968. package/dist/templates/contents/themes/default/messages/en.json.backup +0 -934
  969. package/dist/templates/contents/themes/default/messages/es.json +0 -929
  970. package/templates/contents/themes/default/messages/en.json +0 -934
  971. package/templates/contents/themes/default/messages/en.json.backup +0 -934
  972. package/templates/contents/themes/default/messages/es.json +0 -929
@@ -0,0 +1,274 @@
1
+ /**
2
+ * NextSpark Wizard Presets
3
+ *
4
+ * Pre-configured project templates for common use cases.
5
+ * Presets pre-fill all configuration values but still allow customization.
6
+ */
7
+
8
+ import type {
9
+ WizardConfig,
10
+ PresetName,
11
+ TeamMode,
12
+ BillingModel,
13
+ FeatureFlags,
14
+ ContentFeaturesConfig,
15
+ AuthConfig,
16
+ DashboardConfig,
17
+ DevConfig,
18
+ } from './types.js'
19
+
20
+ /**
21
+ * Partial preset configuration (projectName, projectSlug, projectDescription
22
+ * are always prompted even with presets)
23
+ */
24
+ export interface PresetConfig {
25
+ teamMode: TeamMode
26
+ teamRoles: string[]
27
+ defaultLocale: string
28
+ supportedLocales: string[]
29
+ billingModel: BillingModel
30
+ currency: string
31
+ features: FeatureFlags
32
+ contentFeatures: ContentFeaturesConfig
33
+ auth: AuthConfig
34
+ dashboard: DashboardConfig
35
+ dev: DevConfig
36
+ }
37
+
38
+ /**
39
+ * SaaS Preset
40
+ *
41
+ * Multi-tenant SaaS application with freemium billing,
42
+ * team management, and authentication options.
43
+ */
44
+ const SAAS_PRESET: PresetConfig = {
45
+ teamMode: 'multi-tenant',
46
+ teamRoles: ['owner', 'admin', 'member', 'viewer'],
47
+ defaultLocale: 'en',
48
+ supportedLocales: ['en'],
49
+ billingModel: 'freemium',
50
+ currency: 'usd',
51
+ features: {
52
+ analytics: true,
53
+ teams: true,
54
+ billing: true,
55
+ api: true,
56
+ docs: false,
57
+ },
58
+ contentFeatures: {
59
+ pages: false,
60
+ blog: false,
61
+ },
62
+ auth: {
63
+ emailPassword: true,
64
+ googleOAuth: true,
65
+ emailVerification: true,
66
+ },
67
+ dashboard: {
68
+ search: true,
69
+ notifications: true,
70
+ themeToggle: true,
71
+ support: true,
72
+ quickCreate: true,
73
+ superadminAccess: true,
74
+ devtoolsAccess: true,
75
+ sidebarCollapsed: false,
76
+ },
77
+ dev: {
78
+ devKeyring: true,
79
+ debugMode: false,
80
+ },
81
+ }
82
+
83
+ /**
84
+ * Blog Preset
85
+ *
86
+ * Single-user blog or content site with no billing,
87
+ * minimal authentication, and simple dashboard.
88
+ */
89
+ const BLOG_PRESET: PresetConfig = {
90
+ teamMode: 'single-user',
91
+ teamRoles: ['owner'],
92
+ defaultLocale: 'en',
93
+ supportedLocales: ['en'],
94
+ billingModel: 'free',
95
+ currency: 'usd',
96
+ features: {
97
+ analytics: true,
98
+ teams: false,
99
+ billing: false,
100
+ api: false,
101
+ docs: true,
102
+ },
103
+ contentFeatures: {
104
+ pages: false,
105
+ blog: true,
106
+ },
107
+ auth: {
108
+ emailPassword: true,
109
+ googleOAuth: false,
110
+ emailVerification: false,
111
+ },
112
+ dashboard: {
113
+ search: false,
114
+ notifications: false,
115
+ themeToggle: true,
116
+ support: true,
117
+ quickCreate: false,
118
+ superadminAccess: true,
119
+ devtoolsAccess: true,
120
+ sidebarCollapsed: false,
121
+ },
122
+ dev: {
123
+ devKeyring: true,
124
+ debugMode: false,
125
+ },
126
+ }
127
+
128
+ /**
129
+ * CRM Preset
130
+ *
131
+ * Single-tenant CRM or internal tool with paid subscription,
132
+ * team roles, and full dashboard features.
133
+ */
134
+ const CRM_PRESET: PresetConfig = {
135
+ teamMode: 'single-tenant',
136
+ teamRoles: ['owner', 'admin', 'member'],
137
+ defaultLocale: 'en',
138
+ supportedLocales: ['en'],
139
+ billingModel: 'paid',
140
+ currency: 'usd',
141
+ features: {
142
+ analytics: true,
143
+ teams: true,
144
+ billing: true,
145
+ api: true,
146
+ docs: false,
147
+ },
148
+ contentFeatures: {
149
+ pages: true,
150
+ blog: false,
151
+ },
152
+ auth: {
153
+ emailPassword: true,
154
+ googleOAuth: true,
155
+ emailVerification: true,
156
+ },
157
+ dashboard: {
158
+ search: true,
159
+ notifications: true,
160
+ themeToggle: true,
161
+ support: true,
162
+ quickCreate: true,
163
+ superadminAccess: true,
164
+ devtoolsAccess: true,
165
+ sidebarCollapsed: false,
166
+ },
167
+ dev: {
168
+ devKeyring: true,
169
+ debugMode: false,
170
+ },
171
+ }
172
+
173
+ /**
174
+ * All available presets
175
+ */
176
+ export const PRESETS: Record<PresetName, PresetConfig> = {
177
+ saas: SAAS_PRESET,
178
+ blog: BLOG_PRESET,
179
+ crm: CRM_PRESET,
180
+ }
181
+
182
+ /**
183
+ * Preset descriptions for display
184
+ */
185
+ export const PRESET_DESCRIPTIONS: Record<PresetName, string> = {
186
+ saas: 'Multi-tenant SaaS with freemium billing and team management',
187
+ blog: 'Single-user blog or content site with minimal features',
188
+ crm: 'Single-tenant CRM or internal tool with paid subscription',
189
+ }
190
+
191
+ /**
192
+ * Get a preset configuration by name
193
+ */
194
+ export function getPreset(name: PresetName): PresetConfig {
195
+ const preset = PRESETS[name]
196
+ if (!preset) {
197
+ throw new Error(`Unknown preset: ${name}. Available presets: ${Object.keys(PRESETS).join(', ')}`)
198
+ }
199
+ return preset
200
+ }
201
+
202
+ /**
203
+ * Check if a preset name is valid
204
+ */
205
+ export function isValidPreset(name: string): name is PresetName {
206
+ return name in PRESETS
207
+ }
208
+
209
+ /**
210
+ * Get all available preset names
211
+ */
212
+ export function getAvailablePresets(): PresetName[] {
213
+ return Object.keys(PRESETS) as PresetName[]
214
+ }
215
+
216
+ /**
217
+ * Apply preset to partial config
218
+ * (merges project info with preset defaults)
219
+ */
220
+ export function applyPreset(
221
+ projectInfo: Pick<WizardConfig, 'projectName' | 'projectSlug' | 'projectDescription'>,
222
+ presetName: PresetName
223
+ ): WizardConfig {
224
+ const preset = getPreset(presetName)
225
+ return {
226
+ ...projectInfo,
227
+ ...preset,
228
+ }
229
+ }
230
+
231
+ /**
232
+ * Get default configuration (used when no preset is specified)
233
+ * This provides sensible defaults for all fields.
234
+ */
235
+ export function getDefaultConfig(): PresetConfig {
236
+ return {
237
+ teamMode: 'multi-tenant',
238
+ teamRoles: ['owner', 'admin', 'member', 'viewer'],
239
+ defaultLocale: 'en',
240
+ supportedLocales: ['en'],
241
+ billingModel: 'freemium',
242
+ currency: 'usd',
243
+ features: {
244
+ analytics: true,
245
+ teams: true,
246
+ billing: true,
247
+ api: true,
248
+ docs: false,
249
+ },
250
+ contentFeatures: {
251
+ pages: false,
252
+ blog: false,
253
+ },
254
+ auth: {
255
+ emailPassword: true,
256
+ googleOAuth: false,
257
+ emailVerification: true,
258
+ },
259
+ dashboard: {
260
+ search: true,
261
+ notifications: true,
262
+ themeToggle: true,
263
+ support: true,
264
+ quickCreate: true,
265
+ superadminAccess: true,
266
+ devtoolsAccess: true,
267
+ sidebarCollapsed: false,
268
+ },
269
+ dev: {
270
+ devKeyring: true,
271
+ debugMode: false,
272
+ },
273
+ }
274
+ }
@@ -0,0 +1,220 @@
1
+ /**
2
+ * NextSpark Interactive Theme Preview
3
+ *
4
+ * Provides visual preview of files that will be generated based on wizard configuration.
5
+ */
6
+
7
+ import chalk from 'chalk'
8
+ import type { WizardConfig } from './types.js'
9
+
10
+ /**
11
+ * Box drawing characters for tree visualization
12
+ */
13
+ const BOX = {
14
+ vertical: '\u2502', // |
15
+ horizontal: '\u2500', // -
16
+ corner: '\u2514', // L
17
+ tee: '\u251C', // |-
18
+ topLeft: '\u250C', // top-left corner
19
+ topRight: '\u2510', // top-right corner
20
+ bottomLeft: '\u2514', // bottom-left corner
21
+ bottomRight: '\u2518', // bottom-right corner
22
+ } as const
23
+
24
+ /**
25
+ * Get the list of files that will be created based on configuration
26
+ */
27
+ export function getFileTree(config: WizardConfig): string[] {
28
+ const files: string[] = []
29
+ const themeDir = `contents/themes/${config.projectSlug}`
30
+
31
+ // Config files
32
+ files.push(`${themeDir}/config/app.config.ts`)
33
+ files.push(`${themeDir}/config/billing.config.ts`)
34
+ files.push(`${themeDir}/config/dashboard.config.ts`)
35
+ files.push(`${themeDir}/config/dev.config.ts`)
36
+ files.push(`${themeDir}/config/permissions.config.ts`)
37
+ files.push(`${themeDir}/config/theme.config.ts`)
38
+ files.push(`${themeDir}/config/auth.config.ts`)
39
+ files.push(`${themeDir}/config/dashboard-ui.config.ts`)
40
+ files.push(`${themeDir}/config/dev-tools.config.ts`)
41
+
42
+ // Entity files (tasks example entity)
43
+ files.push(`${themeDir}/entities/tasks/entity.ts`)
44
+ files.push(`${themeDir}/entities/tasks/schema.ts`)
45
+ files.push(`${themeDir}/entities/tasks/permissions.ts`)
46
+
47
+ // Block files (hero example block)
48
+ files.push(`${themeDir}/blocks/hero/block.tsx`)
49
+ files.push(`${themeDir}/blocks/hero/schema.ts`)
50
+ files.push(`${themeDir}/blocks/hero/styles.ts`)
51
+
52
+ // Messages files - only for supported locales
53
+ for (const locale of config.supportedLocales) {
54
+ files.push(`${themeDir}/messages/${locale}/common.json`)
55
+ files.push(`${themeDir}/messages/${locale}/auth.json`)
56
+ files.push(`${themeDir}/messages/${locale}/dashboard.json`)
57
+ files.push(`${themeDir}/messages/${locale}/errors.json`)
58
+ }
59
+
60
+ // Migration files
61
+ files.push(`${themeDir}/migrations/0001_initial_schema.sql`)
62
+ files.push(`${themeDir}/migrations/0002_auth_tables.sql`)
63
+ files.push(`${themeDir}/migrations/0003_tasks_entity.sql`)
64
+
65
+ // Style files
66
+ files.push(`${themeDir}/styles/globals.css`)
67
+ files.push(`${themeDir}/styles/theme.css`)
68
+ files.push(`${themeDir}/styles/components.css`)
69
+
70
+ // Test files
71
+ files.push(`${themeDir}/tests/cypress.config.ts`)
72
+ files.push(`${themeDir}/tests/jest/jest.config.ts`)
73
+ files.push(`${themeDir}/tests/cypress/e2e/auth.cy.ts`)
74
+ files.push(`${themeDir}/tests/cypress/e2e/dashboard.cy.ts`)
75
+ files.push(`${themeDir}/tests/jest/components/hero.test.tsx`)
76
+
77
+ return files
78
+ }
79
+
80
+ /**
81
+ * Group files by category for display
82
+ */
83
+ function groupFilesByCategory(files: string[]): Record<string, string[]> {
84
+ const groups: Record<string, string[]> = {
85
+ config: [],
86
+ entities: [],
87
+ blocks: [],
88
+ messages: [],
89
+ migrations: [],
90
+ styles: [],
91
+ tests: [],
92
+ }
93
+
94
+ for (const file of files) {
95
+ if (file.includes('/config/')) {
96
+ groups.config.push(file)
97
+ } else if (file.includes('/entities/')) {
98
+ groups.entities.push(file)
99
+ } else if (file.includes('/blocks/')) {
100
+ groups.blocks.push(file)
101
+ } else if (file.includes('/messages/')) {
102
+ groups.messages.push(file)
103
+ } else if (file.includes('/migrations/')) {
104
+ groups.migrations.push(file)
105
+ } else if (file.includes('/styles/')) {
106
+ groups.styles.push(file)
107
+ } else if (file.includes('/tests/')) {
108
+ groups.tests.push(file)
109
+ }
110
+ }
111
+
112
+ return groups
113
+ }
114
+
115
+ /**
116
+ * Format file path for display (extract relative part after theme dir)
117
+ */
118
+ function formatFilePath(file: string, themeDir: string): string {
119
+ return file.replace(`${themeDir}/`, '')
120
+ }
121
+
122
+ /**
123
+ * Display configuration preview with visual tree
124
+ */
125
+ export function showConfigPreview(config: WizardConfig): void {
126
+ const files = getFileTree(config)
127
+ const groups = groupFilesByCategory(files)
128
+ const themeDir = `contents/themes/${config.projectSlug}`
129
+
130
+ console.log('')
131
+ console.log(chalk.cyan.bold(' Theme Preview'))
132
+ console.log(chalk.gray(' ' + '='.repeat(50)))
133
+ console.log('')
134
+
135
+ // Display theme directory header
136
+ console.log(chalk.white.bold(` ${BOX.topLeft}${'─'.repeat(48)}${BOX.topRight}`))
137
+ console.log(chalk.white.bold(` ${BOX.vertical}`) + chalk.cyan(` ${themeDir}/`) + ' '.repeat(48 - themeDir.length - 2) + chalk.white.bold(BOX.vertical))
138
+ console.log(chalk.white.bold(` ${BOX.vertical}${'─'.repeat(48)}${BOX.vertical}`))
139
+
140
+ // Display each category
141
+ const categoryLabels: Record<string, string> = {
142
+ config: 'Configuration',
143
+ entities: 'Entities',
144
+ blocks: 'Blocks',
145
+ messages: 'Messages (i18n)',
146
+ migrations: 'Migrations',
147
+ styles: 'Styles',
148
+ tests: 'Tests',
149
+ }
150
+
151
+ const categoryIcons: Record<string, string> = {
152
+ config: '*',
153
+ entities: '@',
154
+ blocks: '#',
155
+ messages: '%',
156
+ migrations: '~',
157
+ styles: '&',
158
+ tests: '!',
159
+ }
160
+
161
+ const categoryOrder = ['config', 'entities', 'blocks', 'messages', 'migrations', 'styles', 'tests']
162
+
163
+ for (const category of categoryOrder) {
164
+ const categoryFiles = groups[category]
165
+ if (categoryFiles.length === 0) continue
166
+
167
+ const label = categoryLabels[category]
168
+ const icon = categoryIcons[category]
169
+
170
+ console.log(chalk.white.bold(` ${BOX.vertical} `) + chalk.yellow(`[${icon}] ${label}`) + chalk.gray(` (${categoryFiles.length} files)`))
171
+
172
+ for (let i = 0; i < categoryFiles.length; i++) {
173
+ const file = categoryFiles[i]
174
+ const isLast = i === categoryFiles.length - 1
175
+ const prefix = isLast ? BOX.corner : BOX.tee
176
+ const formattedPath = formatFilePath(file, themeDir)
177
+
178
+ console.log(chalk.white.bold(` ${BOX.vertical} `) + chalk.gray(` ${prefix}${BOX.horizontal} `) + chalk.white(formattedPath))
179
+ }
180
+
181
+ console.log(chalk.white.bold(` ${BOX.vertical}`))
182
+ }
183
+
184
+ console.log(chalk.white.bold(` ${BOX.bottomLeft}${'─'.repeat(48)}${BOX.bottomRight}`))
185
+ console.log('')
186
+
187
+ // Display summary
188
+ console.log(chalk.cyan.bold(' Summary'))
189
+ console.log(chalk.gray(' ' + '-'.repeat(30)))
190
+ console.log('')
191
+
192
+ const totalFiles = files.length
193
+ const estimatedSize = '~350KB'
194
+
195
+ console.log(chalk.white(` Total files: `) + chalk.green.bold(totalFiles.toString()))
196
+ console.log(chalk.white(` Estimated size: `) + chalk.green.bold(estimatedSize))
197
+ console.log('')
198
+
199
+ // Category breakdown
200
+ console.log(chalk.gray(' By category:'))
201
+ for (const category of categoryOrder) {
202
+ const count = groups[category].length
203
+ if (count > 0) {
204
+ const label = categoryLabels[category].padEnd(16)
205
+ console.log(chalk.gray(` ${label}`) + chalk.white(count.toString().padStart(3)) + chalk.gray(' files'))
206
+ }
207
+ }
208
+
209
+ console.log('')
210
+
211
+ // Locale information
212
+ console.log(chalk.gray(' Locales configured:'))
213
+ for (const locale of config.supportedLocales) {
214
+ const isDefault = locale === config.defaultLocale
215
+ const suffix = isDefault ? chalk.cyan(' (default)') : ''
216
+ console.log(chalk.gray(` - `) + chalk.white(locale) + suffix)
217
+ }
218
+
219
+ console.log('')
220
+ }
@@ -0,0 +1,93 @@
1
+ /**
2
+ * Authentication Configuration Prompts (Step 6)
3
+ *
4
+ * Collects authentication method preferences and security settings.
5
+ * Currently supports: Email/Password and Google OAuth
6
+ */
7
+
8
+ import { checkbox } from '@inquirer/prompts'
9
+ import { showSection, showInfo } from '../banner.js'
10
+ import type { WizardConfig, AuthConfig, WizardMode } from '../types.js'
11
+
12
+ /**
13
+ * Authentication method options
14
+ * Note: Only email/password and Google OAuth are currently implemented
15
+ */
16
+ const AUTH_METHOD_OPTIONS = [
17
+ {
18
+ name: 'Email & Password',
19
+ value: 'emailPassword',
20
+ description: 'Traditional email and password authentication',
21
+ checked: true,
22
+ },
23
+ {
24
+ name: 'Google OAuth',
25
+ value: 'googleOAuth',
26
+ description: 'Sign in with Google accounts',
27
+ checked: false,
28
+ },
29
+ ]
30
+
31
+ /**
32
+ * Security feature options
33
+ */
34
+ const SECURITY_OPTIONS = [
35
+ {
36
+ name: 'Email Verification',
37
+ value: 'emailVerification',
38
+ description: 'Require users to verify their email address',
39
+ checked: true,
40
+ },
41
+ ]
42
+
43
+ /**
44
+ * Get default auth configuration
45
+ */
46
+ export function getDefaultAuthConfig(): AuthConfig {
47
+ return {
48
+ emailPassword: true,
49
+ googleOAuth: false,
50
+ emailVerification: true,
51
+ }
52
+ }
53
+
54
+ /**
55
+ * Run authentication configuration prompts
56
+ */
57
+ export async function promptAuthConfig(
58
+ mode: WizardMode = 'interactive',
59
+ totalSteps: number = 8
60
+ ): Promise<Pick<WizardConfig, 'auth'>> {
61
+ showSection('Authentication', 6, totalSteps)
62
+
63
+ showInfo('Configure how users will authenticate to your application.')
64
+ console.log('')
65
+
66
+ // Select authentication methods
67
+ const selectedMethods = await checkbox({
68
+ message: 'Which authentication methods do you want to enable?',
69
+ choices: AUTH_METHOD_OPTIONS,
70
+ })
71
+
72
+ // In expert mode, also ask about security features
73
+ let selectedSecurity: string[] = ['emailVerification']
74
+
75
+ if (mode === 'expert') {
76
+ console.log('')
77
+ showInfo('Configure additional security features.')
78
+ console.log('')
79
+
80
+ selectedSecurity = await checkbox({
81
+ message: 'Which security features do you want to enable?',
82
+ choices: SECURITY_OPTIONS,
83
+ })
84
+ }
85
+
86
+ const auth: AuthConfig = {
87
+ emailPassword: selectedMethods.includes('emailPassword'),
88
+ googleOAuth: selectedMethods.includes('googleOAuth'),
89
+ emailVerification: selectedSecurity.includes('emailVerification'),
90
+ }
91
+
92
+ return { auth }
93
+ }
@@ -0,0 +1,75 @@
1
+ /**
2
+ * Billing Configuration Prompts (Step 4)
3
+ *
4
+ * Collects billing model and payment configuration.
5
+ */
6
+
7
+ import { select } from '@inquirer/prompts'
8
+ import { showSection, showInfo } from '../banner.js'
9
+ import type { WizardConfig, BillingModel } from '../types.js'
10
+ import { CURRENCIES } from '../types.js'
11
+
12
+ /**
13
+ * Billing model options with descriptions
14
+ */
15
+ const BILLING_MODEL_OPTIONS = [
16
+ {
17
+ name: 'Free (No payments)',
18
+ value: 'free' as BillingModel,
19
+ description: 'All features are free. No payment processing needed.',
20
+ },
21
+ {
22
+ name: 'Freemium (Free + Paid tiers)',
23
+ value: 'freemium' as BillingModel,
24
+ description: 'Free tier with optional paid upgrades (Free + Pro plans).',
25
+ },
26
+ {
27
+ name: 'Paid (Subscription required)',
28
+ value: 'paid' as BillingModel,
29
+ description: 'Subscription-based access with optional trial period.',
30
+ },
31
+ ]
32
+
33
+ /**
34
+ * Run billing configuration prompts
35
+ */
36
+ export async function promptBillingConfig(): Promise<Pick<WizardConfig, 'billingModel' | 'currency'>> {
37
+ showSection('Billing Configuration', 4, 5)
38
+
39
+ // Select billing model
40
+ const billingModel = await select({
41
+ message: 'What billing model do you want to use?',
42
+ choices: BILLING_MODEL_OPTIONS,
43
+ default: 'freemium',
44
+ })
45
+
46
+ // Show info about selected model
47
+ const selectedOption = BILLING_MODEL_OPTIONS.find(o => o.value === billingModel)
48
+ if (selectedOption) {
49
+ showInfo(selectedOption.description)
50
+ }
51
+
52
+ // Only ask for currency if not free
53
+ let currency = 'usd'
54
+
55
+ if (billingModel !== 'free') {
56
+ console.log('')
57
+ currency = await select({
58
+ message: 'What currency will you use?',
59
+ choices: CURRENCIES.map(c => ({
60
+ name: c.label,
61
+ value: c.value,
62
+ })),
63
+ default: 'usd',
64
+ })
65
+ }
66
+
67
+ // Show info about customizing plans
68
+ console.log('')
69
+ showInfo('You can customize plans and pricing in billing.config.ts')
70
+
71
+ return {
72
+ billingModel,
73
+ currency,
74
+ }
75
+ }