@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,111 @@
1
+ /**
2
+ * Validators Index
3
+ *
4
+ * Post-generation validation for NextSpark wizard.
5
+ * Validates the generated theme structure, TypeScript compilation, and i18n completeness.
6
+ */
7
+
8
+ import type { WizardConfig } from '../types.js'
9
+ import { validateTypeScript } from './typescript.js'
10
+ import { validateRequiredFiles } from './files.js'
11
+ import { validateI18n } from './i18n.js'
12
+
13
+ /**
14
+ * Represents a validation error that must be fixed
15
+ */
16
+ export interface ValidationError {
17
+ /** Category of the error (typescript, files, i18n, etc.) */
18
+ type: string
19
+ /** Human-readable error message */
20
+ message: string
21
+ /** Optional file path related to the error */
22
+ file?: string
23
+ }
24
+
25
+ /**
26
+ * Represents a validation warning that should be reviewed
27
+ */
28
+ export interface ValidationWarning {
29
+ /** Category of the warning */
30
+ type: string
31
+ /** Human-readable warning message */
32
+ message: string
33
+ }
34
+
35
+ /**
36
+ * Result of the validation process
37
+ */
38
+ export interface ValidationResult {
39
+ /** Whether validation passed with no errors */
40
+ valid: boolean
41
+ /** List of errors that must be fixed */
42
+ errors: ValidationError[]
43
+ /** List of warnings that should be reviewed */
44
+ warnings: ValidationWarning[]
45
+ }
46
+
47
+ /**
48
+ * Validate the generated theme structure and content
49
+ *
50
+ * Runs all validation checks:
51
+ * 1. File structure validation - checks required directories and files
52
+ * 2. TypeScript validation - runs tsc --noEmit to check for type errors
53
+ * 3. i18n validation - verifies translation completeness
54
+ *
55
+ * @param themePath - Absolute path to the generated theme directory
56
+ * @param config - Wizard configuration used during generation
57
+ * @returns ValidationResult with errors and warnings
58
+ *
59
+ * @example
60
+ * ```typescript
61
+ * const result = await validateGeneratedTheme(
62
+ * '/path/to/contents/themes/my-app',
63
+ * wizardConfig
64
+ * )
65
+ *
66
+ * if (!result.valid) {
67
+ * console.error('Validation failed:', result.errors)
68
+ * }
69
+ * ```
70
+ */
71
+ export async function validateGeneratedTheme(
72
+ themePath: string,
73
+ config: WizardConfig
74
+ ): Promise<ValidationResult> {
75
+ const allErrors: ValidationError[] = []
76
+ const allWarnings: ValidationWarning[] = []
77
+
78
+ // 1. Validate file structure first (fast check)
79
+ const filesResult = await validateRequiredFiles(themePath, config)
80
+ allErrors.push(...filesResult.errors)
81
+ allWarnings.push(...filesResult.warnings)
82
+
83
+ // 2. Validate i18n completeness
84
+ const i18nResult = await validateI18n(themePath, config)
85
+ allErrors.push(...i18nResult.errors)
86
+ allWarnings.push(...i18nResult.warnings)
87
+
88
+ // 3. Validate TypeScript (slower, run last)
89
+ // Only run if no critical file structure errors
90
+ const hasCriticalFileErrors = filesResult.errors.some(
91
+ e => e.message.includes('Theme directory not found') ||
92
+ e.message.includes('Required directory missing')
93
+ )
94
+
95
+ if (!hasCriticalFileErrors) {
96
+ const tsResult = await validateTypeScript(themePath)
97
+ allErrors.push(...tsResult.errors)
98
+ allWarnings.push(...tsResult.warnings)
99
+ }
100
+
101
+ return {
102
+ valid: allErrors.length === 0,
103
+ errors: allErrors,
104
+ warnings: allWarnings,
105
+ }
106
+ }
107
+
108
+ // Re-export individual validators for granular usage
109
+ export { validateTypeScript } from './typescript.js'
110
+ export { validateRequiredFiles } from './files.js'
111
+ export { validateI18n } from './i18n.js'
@@ -0,0 +1,133 @@
1
+ /**
2
+ * TypeScript Validator
3
+ *
4
+ * Validates TypeScript compilation for the generated theme.
5
+ */
6
+
7
+ import { exec } from 'child_process'
8
+ import { promisify } from 'util'
9
+ import path from 'path'
10
+ import fs from 'fs-extra'
11
+ import type { ValidationError, ValidationWarning } from './index.js'
12
+
13
+ const execAsync = promisify(exec)
14
+
15
+ /**
16
+ * Parse TypeScript compiler output to extract errors
17
+ */
18
+ function parseTypeScriptErrors(output: string, themePath: string): ValidationError[] {
19
+ const errors: ValidationError[] = []
20
+ const lines = output.split('\n')
21
+
22
+ for (const line of lines) {
23
+ // Match TypeScript error format: file(line,col): error TSxxxx: message
24
+ const match = line.match(/^(.+)\((\d+),(\d+)\):\s*error\s+(TS\d+):\s*(.+)$/)
25
+ if (match) {
26
+ const [, file, lineNum, col, code, message] = match
27
+ errors.push({
28
+ type: 'typescript',
29
+ message: `${code}: ${message} (line ${lineNum}, col ${col})`,
30
+ file: file.replace(themePath, '').replace(/^[/\\]/, ''),
31
+ })
32
+ continue
33
+ }
34
+
35
+ // Match alternative format: file:line:col - error TSxxxx: message
36
+ const altMatch = line.match(/^(.+):(\d+):(\d+)\s*-\s*error\s+(TS\d+):\s*(.+)$/)
37
+ if (altMatch) {
38
+ const [, file, lineNum, col, code, message] = altMatch
39
+ errors.push({
40
+ type: 'typescript',
41
+ message: `${code}: ${message} (line ${lineNum}, col ${col})`,
42
+ file: file.replace(themePath, '').replace(/^[/\\]/, ''),
43
+ })
44
+ }
45
+ }
46
+
47
+ return errors
48
+ }
49
+
50
+ /**
51
+ * Validate TypeScript compilation for the generated theme
52
+ *
53
+ * Runs `tsc --noEmit` to check for type errors without generating output files.
54
+ *
55
+ * @param themePath - Absolute path to the theme directory
56
+ * @returns Object containing errors and warnings from compilation
57
+ */
58
+ export async function validateTypeScript(
59
+ themePath: string
60
+ ): Promise<{ errors: ValidationError[]; warnings: ValidationWarning[] }> {
61
+ const errors: ValidationError[] = []
62
+ const warnings: ValidationWarning[] = []
63
+
64
+ // Check if tsconfig.json exists in project root or theme
65
+ const projectRoot = process.cwd()
66
+ const projectTsConfig = path.join(projectRoot, 'tsconfig.json')
67
+ const themeTsConfig = path.join(themePath, 'tsconfig.json')
68
+
69
+ let tsConfigPath: string | null = null
70
+ if (await fs.pathExists(themeTsConfig)) {
71
+ tsConfigPath = themeTsConfig
72
+ } else if (await fs.pathExists(projectTsConfig)) {
73
+ tsConfigPath = projectTsConfig
74
+ }
75
+
76
+ if (!tsConfigPath) {
77
+ warnings.push({
78
+ type: 'typescript',
79
+ message: 'No tsconfig.json found. TypeScript validation skipped.',
80
+ })
81
+ return { errors, warnings }
82
+ }
83
+
84
+ try {
85
+ // Run tsc --noEmit to check for type errors
86
+ const tscPath = path.join(projectRoot, 'node_modules', '.bin', 'tsc')
87
+ const useLocalTsc = await fs.pathExists(tscPath)
88
+
89
+ const command = useLocalTsc
90
+ ? `"${tscPath}" --noEmit --project "${tsConfigPath}"`
91
+ : `npx tsc --noEmit --project "${tsConfigPath}"`
92
+
93
+ await execAsync(command, {
94
+ cwd: projectRoot,
95
+ timeout: 120000, // 2 minute timeout
96
+ })
97
+
98
+ // If we get here, compilation succeeded
99
+ } catch (error: unknown) {
100
+ // TypeScript exits with non-zero on errors
101
+ if (error && typeof error === 'object' && 'stdout' in error) {
102
+ const execError = error as { stdout?: string; stderr?: string; code?: number }
103
+ const output = execError.stdout || execError.stderr || ''
104
+
105
+ // Parse errors from output
106
+ const parsedErrors = parseTypeScriptErrors(output, themePath)
107
+ if (parsedErrors.length > 0) {
108
+ errors.push(...parsedErrors)
109
+ } else if (output.trim()) {
110
+ // If we couldn't parse but there's output, add generic error
111
+ errors.push({
112
+ type: 'typescript',
113
+ message: `TypeScript compilation failed: ${output.slice(0, 500)}`,
114
+ })
115
+ }
116
+ } else if (error instanceof Error) {
117
+ // Handle execution errors (e.g., tsc not found)
118
+ if (error.message.includes('ENOENT') || error.message.includes('not found')) {
119
+ warnings.push({
120
+ type: 'typescript',
121
+ message: 'TypeScript compiler not found. Run "npm install" first.',
122
+ })
123
+ } else {
124
+ errors.push({
125
+ type: 'typescript',
126
+ message: `TypeScript validation failed: ${error.message}`,
127
+ })
128
+ }
129
+ }
130
+ }
131
+
132
+ return { errors, warnings }
133
+ }
@@ -15,7 +15,7 @@ import { Button } from "../../ui/button";
15
15
  import { ChevronDownIcon, ChevronRightIcon } from "lucide-react";
16
16
  import { sel } from "../../../lib/test";
17
17
  function ActionsTable({ actions }) {
18
- const t = useTranslations("dev.scheduledActions");
18
+ const t = useTranslations("devtools.scheduledActions");
19
19
  const [expandedRows, setExpandedRows] = useState(/* @__PURE__ */ new Set());
20
20
  const toggleRow = (id) => {
21
21
  setExpandedRows((prev) => {
@@ -11,7 +11,7 @@ import {
11
11
  } from "../../ui/select";
12
12
  import { sel } from "../../../lib/test";
13
13
  function Filters({ filters, onFiltersChange, registeredActionTypes }) {
14
- const t = useTranslations("dev.scheduledActions");
14
+ const t = useTranslations("devtools.scheduledActions");
15
15
  const handleStatusChange = (value) => {
16
16
  onFiltersChange({
17
17
  ...filters,
@@ -1 +1 @@
1
- {"version":3,"file":"useContentTranslation.d.ts","sourceRoot":"","sources":["../../src/hooks/useContentTranslation.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAOH;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,UAAU,EAAE,MAAM,EAAE,oBAAoB,GAAE,MAAM,EAAO;aA8C/E,MAAM,WAAW,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;;;;kBAuBlD,MAAM,KAAG,OAAO;+BAeH,MAAM,OAAO,MAAM,WAAW,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;EAiBlG;AAED;;GAEG;AACH,wBAAgB,0BAA0B,CAAC,UAAU,EAAE,MAAM;aAKhD,MAAM,WAAW,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;;;EAenE;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM;mBAKrD,MAAM;yBAMA,MAAM;kBAMb,MAAM;wBAMA,MAAM,QAAQ,MAAM;qBAUvB,MAAM;uBAMJ,MAAM;aA5HhB,MAAM,WAAW,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;;;;EAuInE;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,UAAU,EAAE,MAAM;yBAK7B,MAAM;yBAKN,MAAM;0BAKL,MAAM;;;sBAeV,MAAM;kBAKV,MAAM;mBAKL,MAAM;aApLZ,MAAM,WAAW,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;;EA4LnE"}
1
+ {"version":3,"file":"useContentTranslation.d.ts","sourceRoot":"","sources":["../../src/hooks/useContentTranslation.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAOH;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,UAAU,EAAE,MAAM,EAAE,oBAAoB,GAAE,MAAM,EAAO;aA0C/E,MAAM,WAAW,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;;;;kBAuBlD,MAAM,KAAG,OAAO;+BAeH,MAAM,OAAO,MAAM,WAAW,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;EAiBlG;AAED;;GAEG;AACH,wBAAgB,0BAA0B,CAAC,UAAU,EAAE,MAAM;aAKhD,MAAM,WAAW,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;;;EAenE;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM;mBAKrD,MAAM;yBAMA,MAAM;kBAMb,MAAM;wBAMA,MAAM,QAAQ,MAAM;qBAUvB,MAAM;uBAMJ,MAAM;aA5HhB,MAAM,WAAW,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;;;;EAuInE;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,UAAU,EAAE,MAAM;yBAK7B,MAAM;yBAKN,MAAM;0BAKL,MAAM;;;sBAeV,MAAM;kBAKV,MAAM;mBAKL,MAAM;aApLZ,MAAM,WAAW,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;;EA4LnE"}
@@ -7,7 +7,6 @@ function useEntityTranslation(entityName, additionalNamespaces = []) {
7
7
  const validationT = useTranslations("validation");
8
8
  const settingsT = useTranslations("settings");
9
9
  const dashboardT = useTranslations("dashboard");
10
- const tasksT = useTranslations("tasks");
11
10
  const authT = useTranslations("auth");
12
11
  const publicT = useTranslations("public");
13
12
  const adminT = useTranslations("admin");
@@ -22,9 +21,6 @@ function useEntityTranslation(entityName, additionalNamespaces = []) {
22
21
  if (additionalNamespaces.includes("dashboard")) {
23
22
  translations.dashboard = dashboardT;
24
23
  }
25
- if (additionalNamespaces.includes("tasks")) {
26
- translations.tasks = tasksT;
27
- }
28
24
  if (additionalNamespaces.includes("auth")) {
29
25
  translations.auth = authT;
30
26
  }
@@ -35,7 +31,7 @@ function useEntityTranslation(entityName, additionalNamespaces = []) {
35
31
  translations.admin = adminT;
36
32
  }
37
33
  return translations;
38
- }, [additionalNamespaces, validationT, settingsT, dashboardT, tasksT, authT, publicT, adminT]);
34
+ }, [additionalNamespaces, validationT, settingsT, dashboardT, authT, publicT, adminT]);
39
35
  return useMemo(() => ({
40
36
  // Entity-specific translations with fallback to common
41
37
  t: (key, values) => {
@@ -1 +1 @@
1
- {"version":3,"file":"useEnsureUserMetadata.d.ts","sourceRoot":"","sources":["../../src/hooks/useEnsureUserMetadata.ts"],"names":[],"mappings":"AAMA,wBAAgB,qBAAqB,SAwEpC"}
1
+ {"version":3,"file":"useEnsureUserMetadata.d.ts","sourceRoot":"","sources":["../../src/hooks/useEnsureUserMetadata.ts"],"names":[],"mappings":"AAMA,wBAAgB,qBAAqB,SAuEpC"}
@@ -29,7 +29,6 @@ function useEnsureUserMetadata() {
29
29
  sidebarCollapsed: false
30
30
  },
31
31
  securityPreferences: {
32
- twoFactorEnabled: false,
33
32
  loginAlertsEnabled: true
34
33
  },
35
34
  notificationsPreferences: {
@@ -1 +1 @@
1
- {"version":3,"file":"useEntityTranslations.d.ts","sourceRoot":"","sources":["../../src/hooks/useEntityTranslations.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAQH;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,UAAU,EAAE,MAAM;;aA0C1B,MAAM,aAAa,MAAM,KAAG,MAAM;0BAkBrB,MAAM,KAAG,OAAO;;;;EAuB1D;AAED;;GAEG;AACH,wBAAgB,wBAAwB;;;;;EAkCvC"}
1
+ {"version":3,"file":"useEntityTranslations.d.ts","sourceRoot":"","sources":["../../src/hooks/useEntityTranslations.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AASH;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,UAAU,EAAE,MAAM;;aAwC1B,MAAM,aAAa,MAAM,KAAG,MAAM;0BAkBrB,MAAM,KAAG,OAAO;;;;EAuB1D;AAED;;GAEG;AACH,wBAAgB,wBAAwB;;;;;EAmCvC"}
@@ -1,6 +1,7 @@
1
1
  import { useCallback, useEffect, useState } from "react";
2
2
  import { useLocale } from "next-intl";
3
- import { translationRegistry } from "../lib/translations/registry";
3
+ import { TranslationService } from "../lib/services/translation.service";
4
+ import { loadMergedTranslations } from "../lib/translations/registry";
4
5
  import { useEnabledEntities } from "./useEnabledEntities";
5
6
  function useEntityTranslations(entityName) {
6
7
  const locale = useLocale();
@@ -17,11 +18,8 @@ function useEntityTranslations(entityName) {
17
18
  setError(`Entity ${entityName} not found`);
18
19
  return;
19
20
  }
20
- const entityTranslations = await translationRegistry.getEntityTranslation(
21
- entityName,
22
- locale,
23
- entity
24
- );
21
+ const activeTheme = process.env.NEXT_PUBLIC_ACTIVE_THEME || "default";
22
+ const entityTranslations = await TranslationService.loadEntity(activeTheme, entityName, locale);
25
23
  setTranslations(entityTranslations);
26
24
  } catch (err) {
27
25
  console.error(`Error loading translations for entity ${entityName}:`, err);
@@ -74,11 +72,11 @@ function useAllEntityTranslations() {
74
72
  const [allTranslations, setAllTranslations] = useState({});
75
73
  const [isLoading, setIsLoading] = useState(true);
76
74
  const [error, setError] = useState(null);
77
- const loadAllTranslations = useCallback(async () => {
75
+ const loadAllTranslationsCallback = useCallback(async () => {
78
76
  try {
79
77
  setIsLoading(true);
80
78
  setError(null);
81
- const translations = await translationRegistry.loadAllTranslations(locale, entities);
79
+ const translations = await loadMergedTranslations(locale);
82
80
  setAllTranslations(translations);
83
81
  } catch (err) {
84
82
  console.error("Error loading all entity translations:", err);
@@ -86,17 +84,17 @@ function useAllEntityTranslations() {
86
84
  } finally {
87
85
  setIsLoading(false);
88
86
  }
89
- }, [locale, entities]);
87
+ }, [locale]);
90
88
  useEffect(() => {
91
89
  if (!entitiesLoading && entities.length > 0) {
92
- loadAllTranslations();
90
+ loadAllTranslationsCallback();
93
91
  }
94
- }, [loadAllTranslations, entitiesLoading, entities.length]);
92
+ }, [loadAllTranslationsCallback, entitiesLoading, entities.length]);
95
93
  return {
96
94
  translations: allTranslations,
97
95
  isLoading: isLoading || entitiesLoading,
98
96
  error,
99
- reload: loadAllTranslations
97
+ reload: loadAllTranslationsCallback
100
98
  };
101
99
  }
102
100
  export {
@@ -1 +1 @@
1
- {"version":3,"file":"i18n.d.ts","sourceRoot":"","sources":["../src/i18n.ts"],"names":[],"mappings":"AASA,QAAA,MAAM,gBAAgB;;;;;CAYrB,CAAC;AAGF,iBAAS,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,EAAE,CA+DrD;;AAYD,wBA4FG;AAGH,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,CAAC;AAC/C,OAAO,EAAE,yBAAyB,EAAE,MAAM,qCAAqC,CAAC"}
1
+ {"version":3,"file":"i18n.d.ts","sourceRoot":"","sources":["../src/i18n.ts"],"names":[],"mappings":"AASA,QAAA,MAAM,gBAAgB;;;;;CAYrB,CAAC;AAGF,iBAAS,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,EAAE,CA+DrD;;AAYD,wBAyDG;AAGH,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,CAAC;AAC/C,OAAO,EAAE,yBAAyB,EAAE,MAAM,qCAAqC,CAAC"}
package/dist/i18n.js CHANGED
@@ -86,48 +86,18 @@ var i18n_default = getRequestConfig(async () => {
86
86
  } catch {
87
87
  console.debug("[i18n] Headers not available, using fallback namespace strategy");
88
88
  }
89
- let messages = {};
90
- try {
91
- messages = await loadMergedTranslations(locale);
92
- console.log(`[i18n] \u2705 Loaded merged translations for ${locale} with ${Object.keys(messages).length} namespaces`);
93
- } catch (importError) {
94
- console.warn(`[i18n] Failed to load merged translations for ${locale}:`, importError);
95
- try {
96
- messages = await loadMergedTranslations("en");
97
- console.log(`[i18n] \u2705 Fallback to English merged translations successful`);
98
- } catch (fallbackError) {
99
- console.error(`[i18n] Critical error - failed to load any messages:`, fallbackError);
100
- messages = {};
101
- }
102
- }
89
+ const messages = await loadMergedTranslations(locale);
90
+ console.log(`[i18n] Loaded merged translations for ${locale} with ${Object.keys(messages).length} namespaces`);
103
91
  return {
104
92
  locale,
105
93
  messages
106
94
  };
107
95
  } catch (error) {
108
- console.warn(`[i18n] \u26A0\uFE0F Failed to load translations for locale "${locale}", falling back to ${I18N_CONFIG.defaultLocale}`, error);
109
- try {
110
- const fallbackMessages = await loadMergedTranslations(I18N_CONFIG.defaultLocale);
111
- console.log(`[i18n] \u2705 Fallback successful - loaded merged message set`);
112
- return {
113
- locale: I18N_CONFIG.defaultLocale,
114
- messages: fallbackMessages
115
- };
116
- } catch (fallbackError) {
117
- console.error("[i18n] \u274C Critical: Failed to load fallback messages:", fallbackError);
118
- try {
119
- const coreMessages = await loadMergedTranslations("en");
120
- return {
121
- locale: I18N_CONFIG.defaultLocale,
122
- messages: coreMessages
123
- };
124
- } catch {
125
- return {
126
- locale: I18N_CONFIG.defaultLocale,
127
- messages: {}
128
- };
129
- }
130
- }
96
+ console.error(`[i18n] Failed to load translations for ${locale}:`, error);
97
+ return {
98
+ locale: I18N_CONFIG.defaultLocale,
99
+ messages: {}
100
+ };
131
101
  }
132
102
  });
133
103
  import { loadOptimizedTranslations } from "./lib/translations/i18n-integration";
@@ -18,7 +18,7 @@ const DEFAULT_APP_CONFIG = {
18
18
  * Supported locales for your project
19
19
  * Add/remove locales as needed
20
20
  */
21
- supportedLocales: ["en", "es"],
21
+ supportedLocales: ["en", "es", "fr", "de", "it", "pt"],
22
22
  /**
23
23
  * Default fallback locale
24
24
  */
@@ -152,7 +152,6 @@ export declare const DEFAULT_DASHBOARD_CONFIG: {
152
152
  icon: string;
153
153
  order: number;
154
154
  features: {
155
- twoFactorAuth: boolean;
156
155
  sessionManagement: boolean;
157
156
  loginHistory: boolean;
158
157
  securityQuestions: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"dashboard.config.d.ts","sourceRoot":"","sources":["../../../src/lib/config/dashboard.config.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAMH,eAAO,MAAM,wBAAwB;;QAKjC;;WAEG;;;;;;QAOH;;WAEG;;;;QAKH;;WAEG;;;;QAKH;;WAEG;;;;;;;;;;;;;;;;;;QAyBH;;WAEG;;;;QAKH;;;WAGG;;;;;QAMH;;;WAGG;;;;QAKH;;WAEG;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAmBH;;WAEG;;;;;QAMH;;WAEG;;;;;;QAOH;;WAEG;;;;;;;;;QAaH;;;WAGG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAmHH;;WAEG;;;;;;;;;QAaH;;WAEG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QA2BH;;WAEG;;;;;;;;;;;;;;;;;;;QAoBH;;;WAGG;;;;QAQH;;WAEG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAiCH;;WAEG;;;;;;;;QAYH;;WAEG;;;;;;;;;;;QAYH;;WAEG;;;;;;QAOH;;WAEG;;;;;;;;;QAaH;;;WAGG;;;;;;;;;;;QAYH;;WAEG;;;;;;QAOH;;WAEG;;;;;;;IAYL;;OAEG;gCACyB,GAAG,WAAW,MAAM,GAAG,OAAO;IAK1D;;OAEG;kCAC2B,GAAG;;;;;IAWjC;;OAEG;iCAC0B,GAAG,WAAW,MAAM,GAAG,OAAO;CAI5D,CAAA;AAMD,MAAM,MAAM,eAAe,GAAG,OAAO,wBAAwB,CAAA;AAC7D,MAAM,MAAM,YAAY,GAAG,OAAO,wBAAwB,CAAC,MAAM,CAAA;AACjE,MAAM,MAAM,aAAa,GAAG,OAAO,wBAAwB,CAAC,OAAO,CAAA;AACnE,MAAM,MAAM,cAAc,GAAG,OAAO,wBAAwB,CAAC,QAAQ,CAAA;AACrE,MAAM,MAAM,cAAc,GAAG,OAAO,wBAAwB,CAAC,QAAQ,CAAA;AACrE,MAAM,MAAM,cAAc,GAAG,OAAO,wBAAwB,CAAC,QAAQ,CAAA"}
1
+ {"version":3,"file":"dashboard.config.d.ts","sourceRoot":"","sources":["../../../src/lib/config/dashboard.config.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAMH,eAAO,MAAM,wBAAwB;;QAKjC;;WAEG;;;;;;QAOH;;WAEG;;;;QAKH;;WAEG;;;;QAKH;;WAEG;;;;;;;;;;;;;;;;;;QAyBH;;WAEG;;;;QAKH;;;WAGG;;;;;QAMH;;;WAGG;;;;QAKH;;WAEG;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAmBH;;WAEG;;;;;QAMH;;WAEG;;;;;;QAOH;;WAEG;;;;;;;;;QAaH;;;WAGG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAkHH;;WAEG;;;;;;;;;QAaH;;WAEG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QA2BH;;WAEG;;;;;;;;;;;;;;;;;;;QAoBH;;;WAGG;;;;QAQH;;WAEG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAiCH;;WAEG;;;;;;;;QAYH;;WAEG;;;;;;;;;;;QAYH;;WAEG;;;;;;QAOH;;WAEG;;;;;;;;;QAaH;;;WAGG;;;;;;;;;;;QAYH;;WAEG;;;;;;QAOH;;WAEG;;;;;;;IAYL;;OAEG;gCACyB,GAAG,WAAW,MAAM,GAAG,OAAO;IAK1D;;OAEG;kCAC2B,GAAG;;;;;IAWjC;;OAEG;iCAC0B,GAAG,WAAW,MAAM,GAAG,OAAO;CAI5D,CAAA;AAMD,MAAM,MAAM,eAAe,GAAG,OAAO,wBAAwB,CAAA;AAC7D,MAAM,MAAM,YAAY,GAAG,OAAO,wBAAwB,CAAC,MAAM,CAAA;AACjE,MAAM,MAAM,aAAa,GAAG,OAAO,wBAAwB,CAAC,OAAO,CAAA;AACnE,MAAM,MAAM,cAAc,GAAG,OAAO,wBAAwB,CAAC,QAAQ,CAAA;AACrE,MAAM,MAAM,cAAc,GAAG,OAAO,wBAAwB,CAAC,QAAQ,CAAA;AACrE,MAAM,MAAM,cAAc,GAAG,OAAO,wBAAwB,CAAC,QAAQ,CAAA"}
@@ -148,7 +148,6 @@ const DEFAULT_DASHBOARD_CONFIG = {
148
148
  icon: "shield",
149
149
  order: 2,
150
150
  features: {
151
- twoFactorAuth: true,
152
151
  sessionManagement: true,
153
152
  loginHistory: true,
154
153
  securityQuestions: false
@@ -25,7 +25,7 @@ export interface NextSparkConfig {
25
25
  };
26
26
  /** Auth configuration */
27
27
  auth?: {
28
- providers: ('email' | 'google' | 'github')[];
28
+ providers: ('email' | 'google')[];
29
29
  requireEmailVerification?: boolean;
30
30
  };
31
31
  /** App metadata */
@@ -1 +1 @@
1
- {"version":3,"file":"nextspark-types.d.ts","sourceRoot":"","sources":["../../../src/lib/config/nextspark-types.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,MAAM,WAAW,eAAe;IAC9B,wBAAwB;IACxB,KAAK,EAAE,MAAM,CAAA;IAEb,sBAAsB;IACtB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;IAElB,oBAAoB;IACpB,QAAQ,CAAC,EAAE;QACT,OAAO,CAAC,EAAE,OAAO,CAAA;QACjB,KAAK,CAAC,EAAE,OAAO,CAAA;QACf,UAAU,CAAC,EAAE,OAAO,CAAA;QACpB,MAAM,CAAC,EAAE,OAAO,CAAA;KACjB,CAAA;IAED,6BAA6B;IAC7B,QAAQ,CAAC,EAAE;QACT,QAAQ,EAAE,UAAU,GAAG,OAAO,GAAG,QAAQ,CAAA;QACzC,aAAa,CAAC,EAAE,OAAO,CAAA;KACxB,CAAA;IAED,yBAAyB;IACzB,IAAI,CAAC,EAAE;QACL,SAAS,EAAE,CAAC,OAAO,GAAG,QAAQ,GAAG,QAAQ,CAAC,EAAE,CAAA;QAC5C,wBAAwB,CAAC,EAAE,OAAO,CAAA;KACnC,CAAA;IAED,mBAAmB;IACnB,GAAG,CAAC,EAAE;QACJ,IAAI,CAAC,EAAE,MAAM,CAAA;QACb,WAAW,CAAC,EAAE,MAAM,CAAA;KACrB,CAAA;CACF;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,eAAe,GAAG,eAAe,CAErE"}
1
+ {"version":3,"file":"nextspark-types.d.ts","sourceRoot":"","sources":["../../../src/lib/config/nextspark-types.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,MAAM,WAAW,eAAe;IAC9B,wBAAwB;IACxB,KAAK,EAAE,MAAM,CAAA;IAEb,sBAAsB;IACtB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;IAElB,oBAAoB;IACpB,QAAQ,CAAC,EAAE;QACT,OAAO,CAAC,EAAE,OAAO,CAAA;QACjB,KAAK,CAAC,EAAE,OAAO,CAAA;QACf,UAAU,CAAC,EAAE,OAAO,CAAA;QACpB,MAAM,CAAC,EAAE,OAAO,CAAA;KACjB,CAAA;IAED,6BAA6B;IAC7B,QAAQ,CAAC,EAAE;QACT,QAAQ,EAAE,UAAU,GAAG,OAAO,GAAG,QAAQ,CAAA;QACzC,aAAa,CAAC,EAAE,OAAO,CAAA;KACxB,CAAA;IAED,yBAAyB;IACzB,IAAI,CAAC,EAAE;QACL,SAAS,EAAE,CAAC,OAAO,GAAG,QAAQ,CAAC,EAAE,CAAA;QACjC,wBAAwB,CAAC,EAAE,OAAO,CAAA;KACnC,CAAA;IAED,mBAAmB;IACnB,GAAG,CAAC,EAAE;QACJ,IAAI,CAAC,EAAE,MAAM,CAAA;QACb,WAAW,CAAC,EAAE,MAAM,CAAA;KACrB,CAAA;CACF;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,eAAe,GAAG,eAAe,CAErE"}
@@ -1,4 +1,4 @@
1
- import { type SupportedLocale, type TranslationNamespace } from './config';
1
+ import { type SupportedLocale } from './config';
2
2
  /**
3
3
  * Validates if a locale string is supported
4
4
  */
@@ -15,8 +15,4 @@ export declare function validateTranslationKey(messages: Record<string, unknown>
15
15
  * Development helper to detect missing translations
16
16
  */
17
17
  export declare function detectMissingTranslations(enMessages: Record<string, unknown>, esMessages: Record<string, unknown>, path?: string): string[];
18
- /**
19
- * Performance helper for lazy loading specific message namespaces
20
- */
21
- export declare function loadNamespaceMessages(locale: SupportedLocale, namespace: TranslationNamespace): Promise<any>;
22
18
  //# sourceMappingURL=i18n-utils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"i18n-utils.d.ts","sourceRoot":"","sources":["../../src/lib/i18n-utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,KAAK,eAAe,EAAE,KAAK,oBAAoB,EAAE,MAAM,UAAU,CAAA;AAEvF;;GAEG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,IAAI,eAAe,CAEvE;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,eAAe,CAGrE;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CACpC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACjC,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,MAAM,GACb,OAAO,CAaT;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CACvC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACnC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACnC,IAAI,GAAE,MAAW,GAChB,MAAM,EAAE,CAuBV;AAED;;GAEG;AACH,wBAAsB,qBAAqB,CACzC,MAAM,EAAE,eAAe,EACvB,SAAS,EAAE,oBAAoB,gBAmBhC"}
1
+ {"version":3,"file":"i18n-utils.d.ts","sourceRoot":"","sources":["../../src/lib/i18n-utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,KAAK,eAAe,EAAE,MAAM,UAAU,CAAA;AAE5D;;GAEG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,IAAI,eAAe,CAEvE;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,eAAe,CAGrE;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CACpC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACjC,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,MAAM,GACb,OAAO,CAaT;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CACvC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACnC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACnC,IAAI,GAAE,MAAW,GAChB,MAAM,EAAE,CAuBV"}
@@ -39,28 +39,9 @@ function detectMissingTranslations(enMessages, esMessages, path = "") {
39
39
  checkMessages(enMessages, esMessages, path);
40
40
  return missing;
41
41
  }
42
- async function loadNamespaceMessages(locale, namespace) {
43
- try {
44
- const messages = await import(`../messages/${locale}/${namespace}.json`);
45
- return messages.default;
46
- } catch (error) {
47
- console.error(`Failed to load ${namespace} messages for ${locale}:`, error);
48
- if (locale !== I18N_CONFIG.defaultLocale) {
49
- try {
50
- const fallbackMessages = await import(`../messages/${I18N_CONFIG.defaultLocale}/${namespace}.json`);
51
- return fallbackMessages.default;
52
- } catch (fallbackError) {
53
- console.error(`Failed to load fallback messages for ${namespace}:`, fallbackError);
54
- return {};
55
- }
56
- }
57
- return {};
58
- }
59
- }
60
42
  export {
61
43
  detectMissingTranslations,
62
44
  getSafeLocale,
63
45
  isValidLocale,
64
- loadNamespaceMessages,
65
46
  validateTranslationKey
66
47
  };
@@ -8,6 +8,7 @@ import { type SupportedLocale, type TranslationNamespace } from './config';
8
8
  import type { NamespaceData, NamespacesMap } from '../messages/types';
9
9
  /**
10
10
  * Load a single namespace with caching
11
+ * Uses registry-based loading: primary locale -> fallback locale -> empty object
11
12
  */
12
13
  export declare function loadNamespace(locale: SupportedLocale, namespace: TranslationNamespace): Promise<NamespaceData>;
13
14
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"namespace-loader.d.ts","sourceRoot":"","sources":["../../src/lib/namespace-loader.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAe,KAAK,eAAe,EAAE,KAAK,oBAAoB,EAAE,MAAM,UAAU,CAAA;AAEvF,OAAO,KAAK,EAAkB,aAAa,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AAwCrF;;GAEG;AACH,wBAAsB,aAAa,CACjC,MAAM,EAAE,eAAe,EACvB,SAAS,EAAE,oBAAoB,GAC9B,OAAO,CAAC,aAAa,CAAC,CAyCxB;AAED;;GAEG;AACH,wBAAsB,cAAc,CAClC,MAAM,EAAE,eAAe,EACvB,UAAU,EAAE,oBAAoB,EAAE,GACjC,OAAO,CAAC,aAAa,CAAC,CAaxB;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,oBAAoB,EAAE,CAsB1E;AAED;;;GAGG;AACH,wBAAsB,gBAAgB,CACpC,MAAM,EAAE,eAAe,EACvB,QAAQ,CAAC,EAAE,MAAM,GAChB,OAAO,CAAC,aAAa,CAAC,CAgBxB;AA2BD;;GAEG;AACH,wBAAsB,yBAAyB,CAAC,MAAM,EAAE,eAAe,iBAWtE;AAED;;GAEG;AACH,wBAAgB,mBAAmB,SAElC;AAED;;GAEG;AACH,wBAAgB,aAAa;;;EAK5B"}
1
+ {"version":3,"file":"namespace-loader.d.ts","sourceRoot":"","sources":["../../src/lib/namespace-loader.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAe,KAAK,eAAe,EAAE,KAAK,oBAAoB,EAAE,MAAM,UAAU,CAAA;AAEvF,OAAO,KAAK,EAAkB,aAAa,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AAwCrF;;;GAGG;AACH,wBAAsB,aAAa,CACjC,MAAM,EAAE,eAAe,EACvB,SAAS,EAAE,oBAAoB,GAC9B,OAAO,CAAC,aAAa,CAAC,CAsCxB;AAED;;GAEG;AACH,wBAAsB,cAAc,CAClC,MAAM,EAAE,eAAe,EACvB,UAAU,EAAE,oBAAoB,EAAE,GACjC,OAAO,CAAC,aAAa,CAAC,CAaxB;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,oBAAoB,EAAE,CAsB1E;AAED;;;GAGG;AACH,wBAAsB,gBAAgB,CACpC,MAAM,EAAE,eAAe,EACvB,QAAQ,CAAC,EAAE,MAAM,GAChB,OAAO,CAAC,aAAa,CAAC,CAgBxB;AA2BD;;GAEG;AACH,wBAAsB,yBAAyB,CAAC,MAAM,EAAE,eAAe,iBAWtE;AAED;;GAEG;AACH,wBAAgB,mBAAmB,SAElC;AAED;;GAEG;AACH,wBAAgB,aAAa;;;EAK5B"}
@@ -36,23 +36,21 @@ async function loadNamespace(locale, namespace) {
36
36
  const namespaceData = messages.default;
37
37
  loadedNamespaces.set(cacheKey, namespaceData);
38
38
  return namespaceData;
39
- } catch (error) {
40
- console.error(`Failed to load ${namespace} for ${locale}:`, error);
39
+ } catch {
41
40
  const fallbackLocale = I18N_CONFIG.defaultLocale;
42
41
  if (locale !== fallbackLocale) {
43
42
  const fallbackCacheKey = getCacheKey(fallbackLocale, namespace);
44
- if (!loadedNamespaces.has(fallbackCacheKey)) {
45
- try {
46
- const fallbackMessages = await import(`../messages/${fallbackLocale}/${namespace}.json`);
47
- const fallbackData = fallbackMessages.default;
48
- loadedNamespaces.set(fallbackCacheKey, fallbackData);
49
- return fallbackData;
50
- } catch (fallbackError) {
51
- console.error(`Failed to load fallback ${namespace}:`, fallbackError);
52
- return {};
53
- }
43
+ if (loadedNamespaces.has(fallbackCacheKey)) {
44
+ return loadedNamespaces.get(fallbackCacheKey);
45
+ }
46
+ try {
47
+ const fallbackMessages = await import(`../messages/${fallbackLocale}/${namespace}.json`);
48
+ const fallbackData = fallbackMessages.default;
49
+ loadedNamespaces.set(fallbackCacheKey, fallbackData);
50
+ return fallbackData;
51
+ } catch {
52
+ console.warn(`[namespace-loader] Namespace ${namespace} not available for ${locale} or ${fallbackLocale}`);
54
53
  }
55
- return loadedNamespaces.get(fallbackCacheKey) || {};
56
54
  }
57
55
  return {};
58
56
  }
@@ -94,15 +92,13 @@ async function loadAllNamespaces(locale) {
94
92
  try {
95
93
  const messages = await import(`../messages/${locale}/index.ts`);
96
94
  return messages.default;
97
- } catch (error) {
98
- console.error(`Failed to load all messages for ${locale}:`, error);
95
+ } catch {
99
96
  if (locale !== I18N_CONFIG.defaultLocale) {
100
97
  try {
101
98
  const fallbackMessages = await import(`../messages/${I18N_CONFIG.defaultLocale}/index.ts`);
102
99
  return fallbackMessages.default;
103
- } catch (fallbackError) {
104
- console.error("Failed to load fallback messages:", fallbackError);
105
- return {};
100
+ } catch {
101
+ console.warn(`[namespace-loader] All namespaces not available for ${locale} or ${I18N_CONFIG.defaultLocale}`);
106
102
  }
107
103
  }
108
104
  return {};