@kyro-cms/core 0.9.0 → 0.9.2

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 (265) hide show
  1. package/README.md +55 -593
  2. package/dist/{WebhookService-AefJfqX0.d.cts → WebhookService-BKszZlG0.d.cts} +1 -1
  3. package/dist/{WebhookService-118ZTFis.d.ts → WebhookService-Ccf1j-IN.d.ts} +1 -1
  4. package/dist/api-handler-graphql.cjs +44 -0
  5. package/dist/api-handler-graphql.cjs.map +1 -0
  6. package/dist/api-handler-graphql.d.cts +6 -0
  7. package/dist/api-handler-graphql.d.ts +6 -0
  8. package/dist/api-handler-graphql.js +41 -0
  9. package/dist/api-handler-graphql.js.map +1 -0
  10. package/dist/api-handler-trpc.cjs +38 -0
  11. package/dist/api-handler-trpc.cjs.map +1 -0
  12. package/dist/api-handler-trpc.d.cts +5 -0
  13. package/dist/api-handler-trpc.d.ts +5 -0
  14. package/dist/api-handler-trpc.js +36 -0
  15. package/dist/api-handler-trpc.js.map +1 -0
  16. package/dist/api-handler.cjs +33 -99
  17. package/dist/api-handler.cjs.map +1 -1
  18. package/dist/api-handler.d.cts +2 -1
  19. package/dist/api-handler.d.ts +2 -1
  20. package/dist/api-handler.js +21 -97
  21. package/dist/api-handler.js.map +1 -1
  22. package/dist/{tenant-B1YB0Jy8.d.ts → base-CIuXkrH4.d.cts} +7 -15
  23. package/dist/{tenant-Cpeveji6.d.cts → base-fFo4lqER.d.ts} +7 -15
  24. package/dist/bootstrap-3PV3GJ3S.js +7 -0
  25. package/dist/{bootstrap-JCML6NFO.js.map → bootstrap-3PV3GJ3S.js.map} +1 -1
  26. package/dist/bootstrap-4CELFLJO.cjs +32 -0
  27. package/dist/{bootstrap-AKAUP6F6.cjs.map → bootstrap-4CELFLJO.cjs.map} +1 -1
  28. package/dist/{chunk-VJT6P4N6.cjs → chunk-3HR772HI.cjs} +199 -32
  29. package/dist/chunk-3HR772HI.cjs.map +1 -0
  30. package/dist/chunk-3KTWGODI.cjs +178 -0
  31. package/dist/chunk-3KTWGODI.cjs.map +1 -0
  32. package/dist/{chunk-QXIQWPAP.js → chunk-3UK5XBVJ.js} +4 -134
  33. package/dist/chunk-3UK5XBVJ.js.map +1 -0
  34. package/dist/{chunk-FXYP2HA6.js → chunk-4AO3A3JM.js} +48 -4
  35. package/dist/chunk-4AO3A3JM.js.map +1 -0
  36. package/dist/{chunk-Z6ZWNWWR.js → chunk-4CV4JOE5.js} +3 -9
  37. package/dist/{chunk-Z6ZWNWWR.js.map → chunk-4CV4JOE5.js.map} +1 -1
  38. package/dist/chunk-4M7X5HAB.cjs +173 -0
  39. package/dist/chunk-4M7X5HAB.cjs.map +1 -0
  40. package/dist/chunk-53NYVYVX.js +3243 -0
  41. package/dist/chunk-53NYVYVX.js.map +1 -0
  42. package/dist/{chunk-35U3FROB.js → chunk-5H3MWQJS.js} +714 -184
  43. package/dist/chunk-5H3MWQJS.js.map +1 -0
  44. package/dist/{chunk-YVUJBEXE.cjs → chunk-5PMQQFRE.cjs} +16 -7
  45. package/dist/chunk-5PMQQFRE.cjs.map +1 -0
  46. package/dist/{chunk-57P6MJKC.js → chunk-6UNONDW7.js} +94 -10
  47. package/dist/chunk-6UNONDW7.js.map +1 -0
  48. package/dist/{chunk-Y3N7UUDO.js → chunk-7OGPN7MP.js} +5 -2
  49. package/dist/chunk-7OGPN7MP.js.map +1 -0
  50. package/dist/{chunk-2OL4O2TH.cjs → chunk-7OS7TX2Q.cjs} +68 -62
  51. package/dist/chunk-7OS7TX2Q.cjs.map +1 -0
  52. package/dist/{chunk-3TPQ2BU6.js → chunk-BYBMTIMT.js} +2 -6
  53. package/dist/chunk-BYBMTIMT.js.map +1 -0
  54. package/dist/{chunk-ES5HNFFT.js → chunk-CF7OL6HR.js} +4 -2
  55. package/dist/chunk-CF7OL6HR.js.map +1 -0
  56. package/dist/chunk-CJONKRHJ.js +162 -0
  57. package/dist/chunk-CJONKRHJ.js.map +1 -0
  58. package/dist/{chunk-OHVB4AJ7.js → chunk-CJX74IYK.js} +24 -18
  59. package/dist/chunk-CJX74IYK.js.map +1 -0
  60. package/dist/{chunk-5KVM3WEY.cjs → chunk-CNKT4PME.cjs} +1592 -868
  61. package/dist/chunk-CNKT4PME.cjs.map +1 -0
  62. package/dist/{chunk-G7VZBCD6.cjs → chunk-CZLDE2OZ.cjs} +2 -9
  63. package/dist/{chunk-G7VZBCD6.cjs.map → chunk-CZLDE2OZ.cjs.map} +1 -1
  64. package/dist/{chunk-WQBRWOQT.cjs → chunk-DPA3KWPY.cjs} +4 -3
  65. package/dist/chunk-DPA3KWPY.cjs.map +1 -0
  66. package/dist/{chunk-LINKCEG4.cjs → chunk-E2763JUP.cjs} +726 -196
  67. package/dist/chunk-E2763JUP.cjs.map +1 -0
  68. package/dist/chunk-E5UJBLQ7.js +220 -0
  69. package/dist/chunk-E5UJBLQ7.js.map +1 -0
  70. package/dist/{chunk-DVD5P72E.cjs → chunk-EEJUFDMF.cjs} +2 -6
  71. package/dist/chunk-EEJUFDMF.cjs.map +1 -0
  72. package/dist/chunk-FSKONGCX.cjs +253 -0
  73. package/dist/chunk-FSKONGCX.cjs.map +1 -0
  74. package/dist/{chunk-Y3QQN7PN.js → chunk-GAAHG2Z4.js} +13 -4
  75. package/dist/chunk-GAAHG2Z4.js.map +1 -0
  76. package/dist/chunk-GAOXD3XT.js +175 -0
  77. package/dist/chunk-GAOXD3XT.js.map +1 -0
  78. package/dist/{chunk-SA7NSSIQ.cjs → chunk-GUUB5EAG.cjs} +13 -187
  79. package/dist/chunk-GUUB5EAG.cjs.map +1 -0
  80. package/dist/{chunk-4DA7QPLA.cjs → chunk-GXFOGU7N.cjs} +5 -2
  81. package/dist/chunk-GXFOGU7N.cjs.map +1 -0
  82. package/dist/{chunk-I7HHI6QV.cjs → chunk-IDVRRRAK.cjs} +17 -9
  83. package/dist/chunk-IDVRRRAK.cjs.map +1 -0
  84. package/dist/{chunk-HXRD4B37.js → chunk-IPTZM3VE.js} +1423 -704
  85. package/dist/chunk-IPTZM3VE.js.map +1 -0
  86. package/dist/chunk-KC2GDBLS.cjs +84 -0
  87. package/dist/chunk-KC2GDBLS.cjs.map +1 -0
  88. package/dist/{chunk-QUW2RZTM.cjs → chunk-L46ROHUS.cjs} +51 -7
  89. package/dist/chunk-L46ROHUS.cjs.map +1 -0
  90. package/dist/chunk-L4EZKIEX.js +185 -0
  91. package/dist/chunk-L4EZKIEX.js.map +1 -0
  92. package/dist/{chunk-REK7AYOC.js → chunk-L5UKKZQN.js} +199 -32
  93. package/dist/chunk-L5UKKZQN.js.map +1 -0
  94. package/dist/chunk-NKPKR5BW.cjs +188 -0
  95. package/dist/chunk-NKPKR5BW.cjs.map +1 -0
  96. package/dist/chunk-NWUEVLQT.cjs +99 -0
  97. package/dist/chunk-NWUEVLQT.cjs.map +1 -0
  98. package/dist/{chunk-3AJE4SEG.js → chunk-OHC6UHFY.js} +208 -76
  99. package/dist/chunk-OHC6UHFY.js.map +1 -0
  100. package/dist/chunk-PHJRNPHY.cjs +3291 -0
  101. package/dist/chunk-PHJRNPHY.cjs.map +1 -0
  102. package/dist/{chunk-DXHRBMGB.js → chunk-PQ72Z6WC.js} +67 -112
  103. package/dist/chunk-PQ72Z6WC.js.map +1 -0
  104. package/dist/{chunk-K7JPTH3G.cjs → chunk-PV2I2KMI.cjs} +214 -82
  105. package/dist/chunk-PV2I2KMI.cjs.map +1 -0
  106. package/dist/{chunk-PDYFVNUX.cjs → chunk-Q23GAMLE.cjs} +71 -116
  107. package/dist/chunk-Q23GAMLE.cjs.map +1 -0
  108. package/dist/{chunk-H727JIG7.js → chunk-Q72BOAPK.js} +16 -8
  109. package/dist/chunk-Q72BOAPK.js.map +1 -0
  110. package/dist/{chunk-IBG6V56E.cjs → chunk-QFLB4EIJ.cjs} +2 -139
  111. package/dist/chunk-QFLB4EIJ.cjs.map +1 -0
  112. package/dist/{chunk-2KVHZE6O.cjs → chunk-RFFSZSCL.cjs} +282 -190
  113. package/dist/chunk-RFFSZSCL.cjs.map +1 -0
  114. package/dist/{chunk-V3LKPM3O.cjs → chunk-SHTTJMLT.cjs} +4 -2
  115. package/dist/chunk-SHTTJMLT.cjs.map +1 -0
  116. package/dist/{chunk-WOWUL7ZY.js → chunk-UUDTPZX6.js} +5 -4
  117. package/dist/chunk-UUDTPZX6.js.map +1 -0
  118. package/dist/{chunk-QPPDLRNR.js → chunk-V7KZQIZ6.js} +277 -185
  119. package/dist/chunk-V7KZQIZ6.js.map +1 -0
  120. package/dist/{chunk-3ZFYL34R.js → chunk-WXVB364T.js} +12 -185
  121. package/dist/chunk-WXVB364T.js.map +1 -0
  122. package/dist/chunk-XEB7PH2E.js +81 -0
  123. package/dist/chunk-XEB7PH2E.js.map +1 -0
  124. package/dist/{chunk-IA6AU5PI.cjs → chunk-Y7AQK4R4.cjs} +94 -10
  125. package/dist/chunk-Y7AQK4R4.cjs.map +1 -0
  126. package/dist/chunk-YFAVQQTU.js +92 -0
  127. package/dist/chunk-YFAVQQTU.js.map +1 -0
  128. package/dist/cli/index.cjs +6 -6
  129. package/dist/cli/index.cjs.map +1 -1
  130. package/dist/cli/index.js +6 -6
  131. package/dist/cli/index.js.map +1 -1
  132. package/dist/client.cjs +4 -4
  133. package/dist/client.d.cts +3 -3
  134. package/dist/client.d.ts +3 -3
  135. package/dist/client.js +2 -2
  136. package/dist/drizzle/index.cjs +15 -14
  137. package/dist/drizzle/index.d.cts +10 -14
  138. package/dist/drizzle/index.d.ts +10 -14
  139. package/dist/drizzle/index.js +6 -5
  140. package/dist/fields/index.cjs +22 -38
  141. package/dist/fields/index.d.cts +2 -22
  142. package/dist/fields/index.d.ts +2 -22
  143. package/dist/fields/index.js +2 -2
  144. package/dist/graphql/index.cjs +6 -5
  145. package/dist/graphql/index.d.cts +5 -3
  146. package/dist/graphql/index.d.ts +5 -3
  147. package/dist/graphql/index.js +4 -3
  148. package/dist/index-BKta3cBH.d.cts +277 -0
  149. package/dist/index-ClOqnkTO.d.ts +277 -0
  150. package/dist/index.cjs +310 -168
  151. package/dist/index.cjs.map +1 -1
  152. package/dist/index.d.cts +130 -211
  153. package/dist/index.d.ts +130 -211
  154. package/dist/index.js +174 -35
  155. package/dist/index.js.map +1 -1
  156. package/dist/integration.cjs +3 -3
  157. package/dist/integration.js +2 -2
  158. package/dist/media-7WDX4BDJ.js +4 -0
  159. package/dist/{media-GPPTZ43E.js.map → media-7WDX4BDJ.js.map} +1 -1
  160. package/dist/{media-XNTUFJZR.cjs → media-TUSLVRQ6.cjs} +3 -3
  161. package/dist/{media-XNTUFJZR.cjs.map → media-TUSLVRQ6.cjs.map} +1 -1
  162. package/dist/mongo-auth-adapter-GT4S7SCU.cjs +17 -0
  163. package/dist/{mongo-auth-adapter-NHHUJHVH.cjs.map → mongo-auth-adapter-GT4S7SCU.cjs.map} +1 -1
  164. package/dist/mongo-auth-adapter-M7VV4LNB.js +4 -0
  165. package/dist/{mongo-auth-adapter-NJQUUCTP.js.map → mongo-auth-adapter-M7VV4LNB.js.map} +1 -1
  166. package/dist/mongodb/index.cjs +9 -8
  167. package/dist/mongodb/index.d.cts +6 -13
  168. package/dist/mongodb/index.d.ts +6 -13
  169. package/dist/mongodb/index.js +5 -4
  170. package/dist/postgres-auth-adapter-AFAPISH7.js +5 -0
  171. package/dist/{postgres-auth-adapter-3T2NKTSE.js.map → postgres-auth-adapter-AFAPISH7.js.map} +1 -1
  172. package/dist/postgres-auth-adapter-SFDTLONT.cjs +14 -0
  173. package/dist/{postgres-auth-adapter-7IEENCKQ.cjs.map → postgres-auth-adapter-SFDTLONT.cjs.map} +1 -1
  174. package/dist/redis-adapter-UQX4EE3B.cjs +13 -0
  175. package/dist/{redis-adapter-D2E2S3GB.cjs.map → redis-adapter-UQX4EE3B.cjs.map} +1 -1
  176. package/dist/redis-adapter-XALOGWY3.js +4 -0
  177. package/dist/{redis-adapter-VQXD7ESY.js.map → redis-adapter-XALOGWY3.js.map} +1 -1
  178. package/dist/rest/index.cjs +16 -15
  179. package/dist/rest/index.d.cts +4 -4
  180. package/dist/rest/index.d.ts +4 -4
  181. package/dist/rest/index.js +14 -13
  182. package/dist/{schema-37SE2F4B.cjs → schema-6QL3USNB.cjs} +15 -15
  183. package/dist/{schema-37SE2F4B.cjs.map → schema-6QL3USNB.cjs.map} +1 -1
  184. package/dist/{schema-5PHL5IVB.js → schema-FNNWEAAW.js} +4 -4
  185. package/dist/{schema-5PHL5IVB.js.map → schema-FNNWEAAW.js.map} +1 -1
  186. package/dist/sqlite-adapter-AQB5TCGV.cjs +13 -0
  187. package/dist/{sqlite-adapter-LVK5PS4T.cjs.map → sqlite-adapter-AQB5TCGV.cjs.map} +1 -1
  188. package/dist/sqlite-adapter-N5H6IM2X.js +4 -0
  189. package/dist/{sqlite-adapter-TR3U3W6Q.js.map → sqlite-adapter-N5H6IM2X.js.map} +1 -1
  190. package/dist/templates/index.cjs +134 -32
  191. package/dist/templates/index.d.cts +52 -9
  192. package/dist/templates/index.d.ts +52 -9
  193. package/dist/templates/index.js +4 -2
  194. package/dist/trpc/index.cjs +14 -13
  195. package/dist/trpc/index.d.cts +55 -49
  196. package/dist/trpc/index.d.ts +55 -49
  197. package/dist/trpc/index.js +5 -4
  198. package/dist/{types-D6ZLRGbH.d.cts → types-CpjuXbe7.d.cts} +2 -0
  199. package/dist/{types-D6ZLRGbH.d.ts → types-CpjuXbe7.d.ts} +2 -0
  200. package/dist/{types-VtjUxIMp.d.cts → types-DeSApf9T.d.cts} +36 -14
  201. package/dist/{types-VtjUxIMp.d.ts → types-DeSApf9T.d.ts} +36 -14
  202. package/dist/{types-J3R9nVsZ.d.cts → types-Dgzlftb7.d.ts} +32 -28
  203. package/dist/{types-Bs1up4yP.d.ts → types-Ds0tCA3L.d.cts} +32 -28
  204. package/dist/ws/index.cjs +6 -6
  205. package/dist/ws/index.js +2 -2
  206. package/package.json +22 -4
  207. package/dist/bootstrap-AKAUP6F6.cjs +0 -32
  208. package/dist/bootstrap-JCML6NFO.js +0 -7
  209. package/dist/chunk-2KVHZE6O.cjs.map +0 -1
  210. package/dist/chunk-2OL4O2TH.cjs.map +0 -1
  211. package/dist/chunk-35U3FROB.js.map +0 -1
  212. package/dist/chunk-3AJE4SEG.js.map +0 -1
  213. package/dist/chunk-3J4MFTI3.js +0 -3872
  214. package/dist/chunk-3J4MFTI3.js.map +0 -1
  215. package/dist/chunk-3TPQ2BU6.js.map +0 -1
  216. package/dist/chunk-3ZFYL34R.js.map +0 -1
  217. package/dist/chunk-4DA7QPLA.cjs.map +0 -1
  218. package/dist/chunk-57P6MJKC.js.map +0 -1
  219. package/dist/chunk-5KVM3WEY.cjs.map +0 -1
  220. package/dist/chunk-6IMPH6WV.cjs +0 -3897
  221. package/dist/chunk-6IMPH6WV.cjs.map +0 -1
  222. package/dist/chunk-ATBOUGQP.cjs +0 -513
  223. package/dist/chunk-ATBOUGQP.cjs.map +0 -1
  224. package/dist/chunk-DVD5P72E.cjs.map +0 -1
  225. package/dist/chunk-DXHRBMGB.js.map +0 -1
  226. package/dist/chunk-ES5HNFFT.js.map +0 -1
  227. package/dist/chunk-FXYP2HA6.js.map +0 -1
  228. package/dist/chunk-H727JIG7.js.map +0 -1
  229. package/dist/chunk-HXRD4B37.js.map +0 -1
  230. package/dist/chunk-I7HHI6QV.cjs.map +0 -1
  231. package/dist/chunk-IA6AU5PI.cjs.map +0 -1
  232. package/dist/chunk-IBG6V56E.cjs.map +0 -1
  233. package/dist/chunk-K7JPTH3G.cjs.map +0 -1
  234. package/dist/chunk-LINKCEG4.cjs.map +0 -1
  235. package/dist/chunk-OHVB4AJ7.js.map +0 -1
  236. package/dist/chunk-PDYFVNUX.cjs.map +0 -1
  237. package/dist/chunk-Q23JB3KL.js +0 -488
  238. package/dist/chunk-Q23JB3KL.js.map +0 -1
  239. package/dist/chunk-QPPDLRNR.js.map +0 -1
  240. package/dist/chunk-QUW2RZTM.cjs.map +0 -1
  241. package/dist/chunk-QXIQWPAP.js.map +0 -1
  242. package/dist/chunk-R3XIBBAW.cjs +0 -34
  243. package/dist/chunk-R3XIBBAW.cjs.map +0 -1
  244. package/dist/chunk-REK7AYOC.js.map +0 -1
  245. package/dist/chunk-SA7NSSIQ.cjs.map +0 -1
  246. package/dist/chunk-SDMNUYVU.js +0 -30
  247. package/dist/chunk-SDMNUYVU.js.map +0 -1
  248. package/dist/chunk-V3LKPM3O.cjs.map +0 -1
  249. package/dist/chunk-VJT6P4N6.cjs.map +0 -1
  250. package/dist/chunk-WOWUL7ZY.js.map +0 -1
  251. package/dist/chunk-WQBRWOQT.cjs.map +0 -1
  252. package/dist/chunk-Y3N7UUDO.js.map +0 -1
  253. package/dist/chunk-Y3QQN7PN.js.map +0 -1
  254. package/dist/chunk-YVUJBEXE.cjs.map +0 -1
  255. package/dist/index-CLp-DRKA.d.ts +0 -64
  256. package/dist/index-DfO7G4kN.d.cts +0 -64
  257. package/dist/media-GPPTZ43E.js +0 -4
  258. package/dist/mongo-auth-adapter-NHHUJHVH.cjs +0 -17
  259. package/dist/mongo-auth-adapter-NJQUUCTP.js +0 -4
  260. package/dist/postgres-auth-adapter-3T2NKTSE.js +0 -5
  261. package/dist/postgres-auth-adapter-7IEENCKQ.cjs +0 -14
  262. package/dist/redis-adapter-D2E2S3GB.cjs +0 -13
  263. package/dist/redis-adapter-VQXD7ESY.js +0 -4
  264. package/dist/sqlite-adapter-LVK5PS4T.cjs +0 -13
  265. package/dist/sqlite-adapter-TR3U3W6Q.js +0 -4
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/templates/minimal.ts","../src/templates/starter.ts","../src/templates/blog.ts","../src/templates/ecommerce.ts","../src/templates/kitchen-sink.ts","../src/templates/media.ts","../src/templates/menu.ts","../src/templates/posts.ts","../src/templates/blocks.ts","../src/templates/pages.ts","../src/templates/categories.ts","../src/templates/products.ts","../src/templates/customers.ts","../src/templates/orders.ts","../src/templates/coupons.ts","../src/templates/forms.ts","../src/templates/form-entries.ts","../src/templates/settings/site.ts","../src/templates/settings/seo.ts","../src/templates/settings/social.ts","../src/templates/settings/email.ts","../src/templates/settings/access.ts","../src/templates/settings/store.ts","../src/templates/settings/payments.ts","../src/templates/settings/system.ts","../src/templates/settings/header.ts","../src/templates/settings/footer.ts","../src/templates/settings/index.ts","../src/templates/index.ts"],"names":["storageSettingsGlobal","authCollections"],"mappings":"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","file":"chunk-PHJRNPHY.cjs","sourcesContent":["import type { GlobalConfig } from \"../registry/types.js\";\n\n\nexport const minimalCollections: Record<string, any> = {};\n\nexport const minimalGlobals: GlobalConfig[] = [];\n","import type { GlobalConfig } from \"../registry/types.js\";\n\n\nexport const starterCollections: Record<string, any> = {};\n\nexport const starterGlobals: GlobalConfig[] = [];\n","import type { GlobalConfig } from \"../registry/types.js\";\n\n\nexport const blogCollections: Record<string, any> = {};\n\nexport const blogGlobals: GlobalConfig[] = [];\n","import type { GlobalConfig } from \"../registry/types.js\";\n\n\nexport const ecommerceCollections: Record<string, any> = {};\n\nexport const ecommerceGlobals: GlobalConfig[] = [];\n","import type { CollectionConfig } from \"../registry/types.js\";\n\n\nexport const kitchenSinkCollections: Record<string, CollectionConfig> = {};\n","// ============================================================================\n// Media Collection Template\n// ============================================================================\n\nimport type { CollectionConfig } from \"../registry/types.js\";\n\nexport const mediaCollection: CollectionConfig = {\n slug: \"media\",\n label: \"Media Library\",\n\n admin: {\n useAsTitle: \"title\",\n defaultColumns: [\"thumbnailUrl\", \"title\", \"type\", \"fileSize\", \"createdAt\"],\n group: \"content\",\n },\n\n access: {\n read: () => true,\n create: () => true,\n update: () => true,\n delete: () => true,\n },\n\n fields: [\n {\n name: \"title\",\n type: \"text\",\n label: \"Title\",\n required: true,\n admin: {\n description: \"Descriptive title for the file\",\n },\n },\n {\n name: \"filename\",\n type: \"text\",\n label: \"Filename\",\n required: true,\n admin: {\n readOnly: true,\n description: \"System filename (auto-generated)\",\n },\n },\n {\n name: \"originalName\",\n type: \"text\",\n label: \"Original Name\",\n admin: {\n readOnly: true,\n },\n },\n {\n name: \"alt\",\n type: \"text\",\n label: \"Alt Text\",\n admin: {\n description: \"Alternative text for images (accessibility)\",\n },\n },\n {\n name: \"caption\",\n type: \"richtext\",\n label: \"Caption\",\n admin: {\n description: \"Optional caption or description\",\n },\n },\n {\n name: \"type\",\n type: \"select\",\n label: \"File Type\",\n required: true,\n defaultValue: \"document\",\n options: [\n { label: \"Image\", value: \"image\" },\n { label: \"Video\", value: \"video\" },\n { label: \"Audio\", value: \"audio\" },\n { label: \"Document\", value: \"document\" },\n { label: \"Archive\", value: \"archive\" },\n { label: \"Other\", value: \"other\" },\n ],\n admin: {\n readOnly: true,\n },\n },\n {\n name: \"mimeType\",\n type: \"text\",\n label: \"MIME Type\",\n admin: {\n readOnly: true,\n },\n },\n {\n name: \"url\",\n type: \"text\",\n label: \"URL\",\n required: true,\n admin: {\n readOnly: true,\n description: \"Public URL of the file\",\n },\n },\n {\n name: \"thumbnailUrl\",\n type: \"text\",\n label: \"Thumbnail URL\",\n admin: {\n readOnly: true,\n },\n },\n {\n name: \"width\",\n type: \"number\",\n label: \"Width\",\n admin: {\n readOnly: true,\n description: \"Width in pixels (for images/videos)\",\n },\n },\n {\n name: \"height\",\n type: \"number\",\n label: \"Height\",\n admin: {\n readOnly: true,\n description: \"Height in pixels (for images/videos)\",\n },\n },\n {\n name: \"fileSize\",\n type: \"number\",\n label: \"File Size\",\n admin: {\n readOnly: true,\n description: \"Size in bytes\",\n },\n },\n {\n name: \"folder\",\n type: \"text\",\n label: \"Folder\",\n admin: {\n description: \"Folder path for organization (e.g., /products, /blog)\",\n },\n },\n {\n name: \"tags\",\n type: \"array\",\n label: \"Tags\",\n fields: [\n {\n name: \"tag\",\n type: \"text\",\n label: \"Tag\",\n },\n ],\n },\n {\n name: \"focalPoint\",\n type: \"group\",\n label: \"Focal Point\",\n admin: {\n description: \"Point of interest for cropping\",\n },\n fields: [\n {\n name: \"x\",\n type: \"number\",\n label: \"X\",\n defaultValue: 50,\n },\n {\n name: \"y\",\n type: \"number\",\n label: \"Y\",\n defaultValue: 50,\n },\n ],\n },\n {\n name: \"metadata\",\n type: \"json\",\n label: \"Metadata\",\n admin: {\n readOnly: true,\n description: \"Additional file metadata (EXIF, etc.)\",\n },\n },\n {\n name: \"provider\",\n type: \"select\",\n label: \"Storage Provider\",\n defaultValue: \"local\",\n options: [\n { label: \"Local\", value: \"local\" },\n { label: \"AWS S3\", value: \"s3\" },\n { label: \"Cloudinary\", value: \"cloudinary\" },\n { label: \"Imgix\", value: \"imgix\" },\n ],\n admin: {\n readOnly: true,\n },\n },\n {\n name: \"status\",\n type: \"select\",\n label: \"Status\",\n defaultValue: \"active\",\n options: [\n { label: \"Active\", value: \"active\" },\n { label: \"Archived\", value: \"archived\" },\n ],\n },\n {\n name: \"createdAt\",\n type: \"date\",\n label: \"Created\",\n admin: {\n readOnly: true,\n },\n },\n {\n name: \"updatedAt\",\n type: \"date\",\n label: \"Last Modified\",\n admin: {\n readOnly: true,\n },\n },\n ],\n};\n\n// Export all media collections\nexport const mediaCollections = [mediaCollection];\n","import type { CollectionConfig } from \"../registry/types.js\";\n\nexport const menuCollection: CollectionConfig = {\n slug: \"menu\",\n label: \"Menu\",\n singularLabel: \"Menu Item\",\n admin: {\n useAsTitle: \"title\",\n defaultColumns: [\"title\", \"menu_location\"],\n },\n fields: [\n { name: \"title\", type: \"text\", label: \"Title\", required: true },\n {\n name: \"menu_location\",\n type: \"select\",\n label: \"Menu Location\",\n options: [\n { label: \"Header\", value: \"header\" },\n { label: \"Footer\", value: \"footer\" },\n { label: \"Sidebar\", value: \"sidebar\" },\n { label: \"Primary\", value: \"primary\" },\n { label: \"Secondary\", value: \"secondary\" },\n ],\n required: true,\n admin: { position: \"sidebar\" },\n },\n {\n name: \"order\",\n type: \"number\",\n label: \"Order\",\n admin: { position: \"sidebar\" },\n },\n {\n name: \"menu\",\n type: \"group\",\n fields: [\n {\n name: \"menu_item\",\n label: \"Menu Item\",\n type: \"array\",\n fields: [\n {\n name: \"link_type\",\n type: \"select\",\n label: \"Link Type\",\n options: [\n { label: \"Internal\", value: \"internal\" },\n { label: \"External\", value: \"external\" },\n ],\n },\n {\n name: \"internal_target\",\n type: \"relationship\",\n label: \"Internal Target\",\n relationTo: [\"pages\", \"posts\"],\n admin: {\n condition: { field: \"link_type\", equals: \"internal\" },\n },\n },\n {\n name: \"external_url\",\n type: \"text\",\n label: \"External URL\",\n admin: {\n condition: { field: \"link_type\", equals: \"external\" },\n },\n },\n ],\n },\n ],\n },\n ],\n};\n\nexport const menuCollections: Record<string, CollectionConfig> = {\n menu: menuCollection,\n};\n\nexport default menuCollections;\n","import type { CollectionConfig } from \"../registry/types.js\";\n\n\nexport const postsCollection: CollectionConfig = {\n slug: \"posts\",\n label: \"Posts\",\n labelPlural: \"Posts\",\n singularLabel: \"Post\",\n admin: {\n useAsTitle: \"title\",\n defaultColumns: [\"title\", \"slug\", \"status\", \"createdAt\", \"updatedAt\"],\n description: \"Blog posts and articles\",\n },\n fields: [\n {\n name: \"mainTabs\",\n type: \"tabs\",\n tabs: [\n {\n label: \"Content\",\n fields: [\n {\n name: \"title\",\n type: \"text\",\n required: true,\n label: \"Title\",\n admin: {\n description:\n \"The main title of the post as it will appear publicly.\",\n },\n },\n {\n name: \"content\",\n type: \"richtext\",\n label: \"Content\",\n },\n ],\n },\n\n {\n label: \"Meta\",\n fields: [\n {\n name: \"category\",\n type: \"relationship\",\n label: \"Category\",\n relationTo: \"categories\",\n admin: {\n description:\n \"Select the primary category this post belongs to.\",\n },\n },\n {\n name: \"relatedPosts\",\n type: \"array\",\n label: \"Related Posts\",\n fields: [\n {\n name: \"post\",\n type: \"relationship\",\n relationTo: \"posts\",\n label: \"Post\",\n },\n ],\n admin: { description: \"Select posts related to this one.\" },\n },\n ],\n },\n {\n label: \"SEO\",\n fields: [\n {\n name: \"metaTitle\",\n type: \"text\",\n label: \"Meta Title\",\n admin: {\n autoGenerate: \"title\",\n description:\n \"The title used for SEO and social sharing (recommended < 60 chars).\",\n },\n },\n {\n name: \"metaDescription\",\n type: \"textarea\",\n label: \"Meta Description\",\n admin: {\n autoGenerate: \"content\",\n description:\n \"A brief summary for search engines (recommended < 160 chars).\",\n },\n },\n {\n name: \"ogImage\",\n type: \"upload\",\n label: \"OG Image\",\n relationTo: \"media\",\n admin: {\n description:\n \"The image shown when the post is shared on social media.\",\n },\n },\n ],\n },\n ],\n },\n {\n name: \"slug\",\n type: \"text\",\n required: true,\n label: \"Slug\",\n admin: {\n description: \"The URL-friendly identifier for the post.\",\n position: \"sidebar\",\n autoGenerate: \"title\",\n },\n },\n {\n name: \"tags\",\n type: \"list\",\n label: \"Tags\",\n admin: {\n description: \"Add keywords to help categorize your post.\",\n position: \"sidebar\",\n },\n },\n {\n name: \"authors\",\n type: \"array\",\n label: \"Authors\",\n fields: [\n {\n name: \"user\",\n type: \"relationship\",\n label: \"User\",\n relationTo: \"users\",\n },\n ],\n admin: {\n description: \"Select one or more authors for this post.\",\n position: \"sidebar\",\n },\n },\n {\n name: \"featuredImage\",\n type: \"upload\",\n label: \"Featured Image\",\n relationTo: \"media\",\n admin: {\n description: \"The primary visual used to represent this post.\",\n position: \"sidebar\",\n },\n },\n ],\n timestamps: true,\n versions: {\n drafts: true,\n maxPerDoc: 10,\n },\n};\n\nexport const postsCollections: Record<string, CollectionConfig> = {\n posts: postsCollection,\n};\n\nexport default postsCollections;\n","import type { Field, Block } from \"../fields/types.js\";\n\nfunction withUtilityFields(block: Block) {\n return {\n ...block,\n fields: [...block.fields, ...utilityFields],\n };\n}\n\nexport const buttonFields: Field[] = [\n { name: \"text\", type: \"text\", label: \"Button Label\" },\n { name: \"url\", type: \"text\", label: \"Button Redirection URL\" },\n];\n\nexport const buttonsField: Field = {\n name: \"buttons\",\n type: \"array\",\n label: \"Action Buttons\",\n fields: buttonFields,\n};\n\n// ============================================================================\n// Inline Content Elements (available inside every block)\n// ============================================================================\n\nconst headingElement: Block = {\n slug: \"heading-element\",\n label: \"Heading\",\n admin: { group: \"Basic Content Elements\", description: \"Section heading\" },\n fields: [\n { name: \"content\", type: \"text\", label: \"Content\" },\n ],\n};\n\nconst textElement: Block = {\n slug: \"text-element\",\n label: \"Text\",\n admin: { group: \"Basic Content Elements\", description: \"Plain text paragraph\" },\n fields: [\n { name: \"content\", type: \"textarea\", label: \"Content\" },\n ],\n};\n\nconst imageElement: Block = {\n slug: \"image-element\",\n label: \"Image\",\n admin: { group: \"Basic Content Elements\", description: \"Single image\" },\n fields: [\n { name: \"image\", type: \"upload\", label: \"Image\", relationTo: \"media\" },\n ],\n};\n\nconst richtextElement: Block = {\n slug: \"richtext-element\",\n label: \"Rich Text\",\n admin: { group: \"Basic Content Elements\", description: \"Formatted rich text content\" },\n fields: [\n { name: \"content\", type: \"richtext\", label: \"Content\" },\n ],\n};\n\nconst buttonElement: Block = {\n slug: \"button-element\",\n label: \"Button\",\n admin: { group: \"Basic Content Elements\", description: \"Call-to-action button\" },\n fields: [\n {\n name: \"buttonData\",\n type: \"group\",\n label: \"Button\",\n admin: { inline: true },\n fields: [\n { name: \"text\", type: \"text\", label: \"Label\" },\n { name: \"url\", type: \"text\", label: \"URL\" },\n ],\n },\n ],\n};\n\nconst videoElement: Block = {\n slug: \"video-element\",\n label: \"Video\",\n admin: { group: \"Basic Content Elements\", description: \"Embedded video player\" },\n fields: [\n { name: \"url\", type: \"text\", label: \"Video URL\" },\n { name: \"file\", type: \"upload\", label: \"Video File\", relationTo: \"media\" },\n { name: \"caption\", type: \"text\", label: \"Caption\" },\n ],\n};\n\nconst listElement: Block = {\n slug: \"list-element\",\n label: \"List\",\n admin: { group: \"Basic Content Elements\", description: \"Bulleted or numbered list\" },\n fields: [\n {\n name: \"items\",\n type: \"array\",\n label: \"Items\",\n fields: [\n { name: \"text\", type: \"text\", label: \"Item Text\" },\n ],\n },\n ],\n};\n\nexport const elementBlocks: Block[] = [\n headingElement,\n textElement,\n imageElement,\n richtextElement,\n buttonElement,\n videoElement,\n listElement,\n];\n\nexport const elementsField: Field = {\n name: \"elements\",\n type: \"blocks\",\n label: \"Extra Content Elements\",\n blocks: elementBlocks,\n admin: { pickerMode: \"dropdown\" },\n};\n\nexport const utilityFields: Field[] = [elementsField];\n\n// ============================================================================\n// Core Semantic Blocks\n// ============================================================================\n\nexport const heroBlock = withUtilityFields({\n slug: \"hero\",\n admin: { group: \"Structural Sections\", description: \"Primary landing section with heading, text, media & CTA\" },\n label: \"Hero Section\",\n fields: [\n {\n name: \"isMultiScreen\",\n type: \"checkbox\",\n label: \"Enable Multi-Screen Slides (Carousel)\",\n defaultValue: false,\n },\n {\n name: \"multiSlides\", type: \"group\", label: \"Multi Slides\",\n admin: {\n condition: { field: \"isMultiScreen\", equals: true }\n },\n fields: [\n {\n name: \"multiSlides\",\n type: \"array\",\n label: \"Hero Slides\",\n fields: [\n { name: \"heading\", type: \"text\", label: \"Slide Heading\" },\n { name: \"subheading\", type: \"textarea\", label: \"Slide Subheading\" },\n { name: \"backgroundImage\", type: \"upload\", label: \"Slide Background Image\", relationTo: \"media\" },\n buttonsField,\n ],\n },\n ]\n },\n {\n name: \"singleSlide\", type: \"group\", label: \"Single Slide\",\n admin: {\n condition: { field: \"isMultiScreen\", equals: false }\n },\n fields: [\n { name: \"heading\", type: \"text\", label: \"Heading\" },\n { name: \"subheading\", type: \"textarea\", label: \"Subheading\" },\n { name: \"backgroundImage\", type: \"upload\", label: \"Background Image\", relationTo: \"media\" },\n buttonsField,\n ]\n }\n ],\n});\n\nexport const cardBlock = withUtilityFields({\n slug: \"card\",\n admin: { group: \"Structural Sections\", description: \"Modular card block featuring title, text, and optional media\" },\n label: \"Card Block\",\n fields: [\n {\n name: \"isMultiCard\",\n type: \"checkbox\",\n label: \"Enable Multicard Layout\",\n defaultValue: false,\n },\n {\n name: \"multiCards\", type: \"group\", label: \"Multi Cards\",\n admin: {\n condition: { field: \"isMultiCard\", equals: true }\n },\n fields: [\n {\n name: \"cards\",\n type: \"array\",\n label: \"Cards List\",\n fields: [\n { name: \"title\", type: \"text\", label: \"Card Title\" },\n { name: \"description\", type: \"textarea\", label: \"Card Description\" },\n { name: \"image\", type: \"upload\", label: \"Card Image\", relationTo: \"media\" },\n { name: \"icon\", type: \"text\", label: \"Card Icon (Emoji or Name)\" },\n { name: \"linkText\", type: \"text\", label: \"Link Label Text\" },\n { name: \"link\", type: \"text\", label: \"Link Redirection URL\" },\n ],\n },\n ]\n },\n {\n name: \"singleCard\", type: \"group\", label: \"Single Card\",\n admin: {\n condition: { field: \"isMultiCard\", equals: false }\n },\n fields: [\n { name: \"title\", type: \"text\", label: \"Title\" },\n { name: \"description\", type: \"textarea\", label: \"Description\" },\n { name: \"image\", type: \"upload\", label: \"Image\", relationTo: \"media\" },\n { name: \"icon\", type: \"text\", label: \"Icon (Emoji or Name)\" },\n { name: \"linkText\", type: \"text\", label: \"Link Label Text\" },\n { name: \"link\", type: \"text\", label: \"Link Redirection URL\" },\n ]\n }\n ],\n});\n\nexport const textBlock = withUtilityFields({\n slug: \"text\",\n admin: { group: \"Basic Content Elements\", description: \"Rich text content\" },\n label: \"Text Block\",\n fields: [\n { name: \"content\", type: \"richtext\", label: \"Content\" },\n ],\n});\n\nexport const imageBlock = withUtilityFields({\n slug: \"image\",\n admin: { group: \"Basic Content Elements\", description: \"Image upload container\" },\n label: \"Image\",\n fields: [\n { name: \"image\", type: \"upload\", label: \"Image\", relationTo: \"media\" },\n { name: \"caption\", type: \"text\", label: \"Caption\" },\n { name: \"alt\", type: \"text\", label: \"Alt Text\" },\n {\n name: \"aspectRatio\",\n type: \"select\",\n label: \"Aspect Ratio\",\n defaultValue: \"original\",\n options: [\n { label: \"Original\", value: \"original\" },\n { label: \"16:9 Landscape\", value: \"16-9\" },\n { label: \"4:3 Classic\", value: \"4-3\" },\n { label: \"1:1 Square\", value: \"1-1\" },\n { label: \"2:3 Portrait\", value: \"2-3\" },\n ],\n },\n { name: \"enableLightbox\", type: \"checkbox\", label: \"Enable Zoom / Lightbox\", defaultValue: false },\n ],\n});\n\nexport const featureSplitBlock = withUtilityFields({\n slug: \"feature-split\",\n admin: { group: \"Structural Sections\", description: \"Side-by-side text and media layout\" },\n label: \"Feature Split (Text & Media)\",\n fields: [\n { name: \"title\", type: \"text\", label: \"Title\" },\n { name: \"description\", type: \"richtext\", label: \"Description\" },\n {\n name: \"checkpoints\",\n type: \"array\",\n label: \"Value Checkpoints\",\n fields: [\n { name: \"title\", type: \"text\", label: \"Checkpoint Title\" },\n { name: \"description\", type: \"textarea\", label: \"Checkpoint Description\" },\n { name: \"icon\", type: \"text\", label: \"Icon Name\" },\n { name: \"image\", type: \"upload\", label: \"Image\", relationTo: \"media\" },\n { name: \"itemUrl\", type: \"text\", label: \"Link URL\" },\n ],\n },\n {\n name: \"images\",\n type: \"array\",\n label: \"Images\",\n fields: [\n { name: \"image\", type: \"upload\", label: \"Image\", relationTo: \"media\" },\n ],\n },\n buttonsField,\n ],\n});\n\nexport const featureGridBlock = withUtilityFields({\n slug: \"feature-grid\",\n admin: { group: \"Marketing Grids\", description: \"Multi-column grid showcasing features or services\" },\n label: \"Feature Grid\",\n fields: [\n { name: \"sectionTitle\", type: \"text\", label: \"Section Heading\" },\n { name: \"sectionSubtitle\", type: \"textarea\", label: \"Section Subtitle\" },\n {\n name: \"features\",\n type: \"array\",\n label: \"Features List\",\n fields: [\n { name: \"title\", type: \"text\", label: \"Title\" },\n { name: \"description\", type: \"textarea\", label: \"Description\" },\n { name: \"icon\", type: \"text\", label: \"Icon Name\" },\n { name: \"image\", type: \"upload\", label: \"Feature Image\", relationTo: \"media\" },\n { name: \"itemUrl\", type: \"text\", label: \"Card Redirection URL\" },\n ],\n },\n ],\n});\n\nexport const ctaBannerBlock = withUtilityFields({\n slug: \"cta-banner\",\n admin: { group: \"Structural Sections\", description: \"High-impact call-to-action banner\" },\n label: \"CTA Banner\",\n fields: [\n { name: \"headline\", type: \"text\", label: \"Headline\" },\n { name: \"subheading\", type: \"textarea\", label: \"Subheading\" },\n { name: \"backgroundImage\", type: \"upload\", label: \"Background Image\", relationTo: \"media\" },\n buttonsField,\n ],\n});\n\nexport const testimonialsBlock = withUtilityFields({\n slug: \"testimonials\",\n admin: { group: \"Marketing Grids\", description: \"Customer reviews and quotes carousel\" },\n label: \"Testimonials\",\n fields: [\n { name: \"sectionTitle\", type: \"text\", label: \"Section Heading\" },\n {\n name: \"items\",\n type: \"array\",\n label: \"Testimonials\",\n fields: [\n { name: \"quote\", type: \"textarea\", label: \"Quote\" },\n {\n name: \"rating\",\n type: \"select\",\n label: \"Star Rating\",\n defaultValue: \"5\",\n options: [\n { label: \"5 Stars\", value: \"5\" },\n { label: \"4 Stars\", value: \"4\" },\n { label: \"3 Stars\", value: \"3\" },\n { label: \"2 Stars\", value: \"2\" },\n { label: \"1 Star\", value: \"1\" },\n ],\n },\n { name: \"authorName\", type: \"text\", label: \"Author Name\" },\n { name: \"authorRole\", type: \"text\", label: \"Author Role\" },\n { name: \"avatar\", type: \"upload\", label: \"Avatar\", relationTo: \"media\" },\n { name: \"companyLogo\", type: \"upload\", label: \"Company Logo\", relationTo: \"media\" },\n ],\n },\n ],\n});\n\nexport const faqBlock = withUtilityFields({\n slug: \"faq\",\n admin: { group: \"Lead Capture & Interactive\", description: \"Expandable list of frequently asked questions\" },\n label: \"FAQ Section\",\n fields: [\n { name: \"sectionTitle\", type: \"text\", label: \"Section Heading\" },\n {\n name: \"items\",\n type: \"array\",\n label: \"Questions List\",\n fields: [\n { name: \"tag\", type: \"text\", label: \"Category Tag (e.g. billing, account)\" },\n { name: \"question\", type: \"text\", label: \"Question\" },\n { name: \"answer\", type: \"richtext\", label: \"Answer\" },\n ],\n },\n { name: \"footerHeading\", type: \"text\", label: \"Footer Heading (e.g. Still have questions?)\" },\n { name: \"footerCtaUrl\", type: \"text\", label: \"Footer CTA Redirection URL\" },\n ],\n});\n\nexport const statsBlock = withUtilityFields({\n slug: \"stats\",\n admin: { group: \"Marketing Grids\", description: \"Grid displaying key numerical metrics and stats\" },\n label: \"Stats / Metrics\",\n fields: [\n { name: \"sectionTitle\", type: \"text\", label: \"Section Heading\" },\n {\n name: \"items\",\n type: \"array\",\n label: \"Stats List\",\n fields: [\n { name: \"prefix\", type: \"text\", label: \"Value Prefix (e.g. + or $)\" },\n { name: \"value\", type: \"text\", label: \"Value (e.g. 99.9 or 5M)\" },\n { name: \"suffix\", type: \"text\", label: \"Value Suffix (e.g. % or users)\" },\n { name: \"label\", type: \"text\", label: \"Label (e.g. Uptime)\" },\n { name: \"description\", type: \"textarea\", label: \"Context Description\" },\n ],\n },\n ],\n});\n\nexport const logoCloudBlock = withUtilityFields({\n slug: \"logo-cloud\",\n admin: { group: \"Structural Sections\", description: \"Showcase for partner and client company logos\" },\n label: \"Logo Cloud / Partners\",\n fields: [\n { name: \"sectionTitle\", type: \"text\", label: \"Section Heading\" },\n {\n name: \"logos\",\n type: \"array\",\n label: \"Logos List\",\n fields: [\n { name: \"name\", type: \"text\", label: \"Company Name\" },\n { name: \"logo\", type: \"upload\", label: \"Logo Image\", relationTo: \"media\" },\n { name: \"url\", type: \"text\", label: \"Website URL\" },\n ],\n },\n ],\n});\n\nexport const pricingBlock = withUtilityFields({\n slug: \"pricing\",\n admin: { group: \"Marketing Grids\", description: \"Tiered pricing plans with feature comparisons\" },\n label: \"Pricing Plans\",\n fields: [\n { name: \"sectionTitle\", type: \"text\", label: \"Section Heading\" },\n { name: \"sectionSubtitle\", type: \"textarea\", label: \"Section Subtitle\" },\n { name: \"annualDiscount\", type: \"text\", label: \"Annual Promo Tag (e.g. Save 20%)\" },\n {\n name: \"plans\",\n type: \"array\",\n label: \"Pricing Plans\",\n fields: [\n { name: \"popularBadgeText\", type: \"text\", label: \"Plan Badge (e.g. MOST POPULAR)\" },\n { name: \"name\", type: \"text\", label: \"Plan Name\" },\n { name: \"description\", type: \"textarea\", label: \"Plan Description\" },\n { name: \"currency\", type: \"text\", label: \"Plan Currency (e.g. $)\", defaultValue: \"$\" },\n { name: \"price\", type: \"text\", label: \"Price (e.g. 29)\" },\n { name: \"billingPeriod\", type: \"text\", label: \"Billing Period (e.g. /mo)\" },\n { name: \"features\", type: \"list\", label: \"Features Checklist\" },\n buttonsField,\n { name: \"footnote\", type: \"text\", label: \"Footnote note (e.g. *cancel anytime)\" },\n { name: \"isFeatured\", type: \"checkbox\", label: \"Highlight Plan (Featured)\", defaultValue: false },\n ],\n },\n ],\n});\n\nexport const teamBlock = withUtilityFields({\n slug: \"team\",\n admin: { group: \"Marketing Grids\", description: \"Showcase of team members with photos and roles\" },\n label: \"Team Showcase\",\n fields: [\n { name: \"sectionTitle\", type: \"text\", label: \"Section Heading\" },\n { name: \"sectionSubtitle\", type: \"textarea\", label: \"Section Subtitle\" },\n {\n name: \"members\",\n type: \"array\",\n label: \"Team Members\",\n fields: [\n { name: \"name\", type: \"text\", label: \"Member Name\" },\n { name: \"role\", type: \"text\", label: \"Role / Position\" },\n { name: \"department\", type: \"text\", label: \"Department / Team tag (e.g. engineering, design)\" },\n { name: \"avatar\", type: \"upload\", label: \"Avatar Image\", relationTo: \"media\" },\n { name: \"bio\", type: \"textarea\", label: \"Brief Bio\" },\n { name: \"twitterUrl\", type: \"text\", label: \"Twitter URL\" },\n { name: \"linkedinUrl\", type: \"text\", label: \"LinkedIn URL\" },\n { name: \"githubUrl\", type: \"text\", label: \"GitHub URL\" },\n { name: \"websiteUrl\", type: \"text\", label: \"Website URL\" },\n ],\n },\n ],\n});\n\nexport const recentFeedBlock = withUtilityFields({\n slug: \"recent-feed\",\n admin: { group: \"Dynamic Content\", description: \"Dynamic feed of recent blog posts or articles\" },\n label: \"Recent Posts Feed\",\n fields: [\n { name: \"sectionTitle\", type: \"text\", label: \"Section Heading\" },\n { name: \"sectionSubtitle\", type: \"textarea\", label: \"Section Subtitle\" },\n {\n name: \"collectionType\",\n type: \"select\",\n label: \"Feed Source Collection\",\n dynamicOptions: \"collections\",\n },\n { name: \"categoryFilter\", type: \"text\", label: \"Filter results by category slug / tag\" },\n { name: \"limit\", type: \"number\", label: \"Max Items to Show\", defaultValue: 3 },\n buttonsField,\n ],\n});\n\nexport const processStepsBlock = withUtilityFields({\n slug: \"process-steps\",\n admin: { group: \"Lead Capture & Interactive\", description: \"Numbered sequence illustrating a process or workflow\" },\n label: \"Process Steps / Timeline\",\n fields: [\n { name: \"sectionTitle\", type: \"text\", label: \"Section Heading\" },\n { name: \"sectionSubtitle\", type: \"textarea\", label: \"Section Subtitle\" },\n {\n name: \"steps\",\n type: \"array\",\n label: \"Steps\",\n fields: [\n { name: \"stepNumber\", type: \"text\", label: \"Step Number (e.g. 01)\" },\n { name: \"icon\", type: \"upload\", label: \"Step Icon / Image\", relationTo: \"media\" },\n { name: \"title\", type: \"text\", label: \"Step Title\" },\n { name: \"description\", type: \"textarea\", label: \"Description\" },\n ],\n },\n ],\n});\n\nexport const formEmbedBlock = withUtilityFields({\n slug: \"form-embed\",\n admin: { group: \"Lead Capture & Interactive\", description: \"Embeddable interactive forms for lead capture\" },\n label: \"Form Embed\",\n fields: [\n { name: \"title\", type: \"text\", label: \"Form Title\" },\n { name: \"subtitle\", type: \"textarea\", label: \"Form Subtitle\" },\n {\n name: \"form\",\n type: \"relationship\",\n relationTo: \"forms\",\n label: \"Form\",\n required: true,\n },\n ],\n});\n\nexport const videoShowcaseBlock = withUtilityFields({\n slug: \"video-showcase\",\n admin: { group: \"Structural Sections\", description: \"Cinematic video player with custom thumbnail\" },\n label: \"Cinematic Video Showcase\",\n fields: [\n { name: \"sectionTitle\", type: \"text\", label: \"Section Heading\" },\n { name: \"sectionSubtitle\", type: \"textarea\", label: \"Section Subtitle\" },\n { name: \"coverImage\", type: \"upload\", label: \"Cinematic Cover Image (Thumbnail)\", relationTo: \"media\" },\n { name: \"videoUrl\", type: \"text\", label: \"Video Embed URL (YouTube / Vimeo / MP4)\" },\n { name: \"videoTitle\", type: \"text\", label: \"Video Title (for accessibility & hover text)\" },\n { name: \"durationBadge\", type: \"text\", label: \"Duration Badge (e.g. '▶ 2:34')\" },\n { name: \"isLightbox\", type: \"checkbox\", label: \"Open in Cinematic Lightbox Modal\", defaultValue: true },\n { name: \"autoplay\", type: \"checkbox\", label: \"Autoplay Video (muted)\", defaultValue: false },\n ],\n});\n\n// ============================================================================\n// Combined Blocks List\n// ============================================================================\n\nexport const coreSemanticBlocks = [\n heroBlock,\n cardBlock,\n featureSplitBlock,\n featureGridBlock,\n ctaBannerBlock,\n testimonialsBlock,\n faqBlock,\n statsBlock,\n logoCloudBlock,\n pricingBlock,\n teamBlock,\n recentFeedBlock,\n processStepsBlock,\n formEmbedBlock,\n videoShowcaseBlock,\n];\n","import type { CollectionConfig } from \"../registry/types.js\";\nimport { coreSemanticBlocks } from \"./blocks.js\";\n\n\nexport const pageCollection: CollectionConfig = {\n slug: \"pages\",\n label: \"Pages\",\n labelPlural: \"Pages\",\n singularLabel: \"Page\",\n admin: {\n useAsTitle: \"title\",\n defaultColumns: [\"title\", \"slug\", \"status\", \"updatedAt\"],\n description: \"Static pages\",\n },\n fields: [\n {\n name: \"mainTabs\",\n type: \"tabs\",\n tabs: [\n {\n label: \"Content\",\n fields: [\n {\n name: \"title\",\n type: \"text\",\n required: true,\n label: \"Title\",\n admin: {\n description:\n \"The main title of the page as it will appear publicly.\",\n },\n },\n {\n name: \"content\",\n type: \"blocks\",\n label: \"Content\",\n blocks: coreSemanticBlocks,\n },\n ],\n },\n\n {\n label: \"Meta\",\n fields: [],\n },\n {\n label: \"SEO\",\n fields: [\n {\n name: \"metaTitle\",\n type: \"text\",\n label: \"Meta Title\",\n admin: { autoGenerate: \"title\" },\n },\n {\n name: \"metaDescription\",\n type: \"textarea\",\n label: \"Meta Description\",\n admin: { autoGenerate: \"content\" },\n },\n {\n name: \"ogImage\",\n type: \"upload\",\n label: \"OG Image\",\n relationTo: \"media\",\n },\n ],\n },\n ],\n },\n {\n name: \"slug\",\n type: \"text\",\n required: true,\n label: \"Slug\",\n admin: { position: \"sidebar\", autoGenerate: \"title\" },\n },\n {\n name: \"featuredImage\",\n type: \"upload\",\n label: \"Featured Image\",\n relationTo: \"media\",\n admin: { position: \"sidebar\" },\n },\n ],\n timestamps: true,\n versions: {\n drafts: true,\n maxPerDoc: 10,\n },\n};\n\nexport const pageCollections: Record<string, CollectionConfig> = {\n pages: pageCollection,\n};\n\nexport default pageCollections;\n","import type { CollectionConfig } from \"../registry/types.js\";\n\n\nexport const categoriesCollection: CollectionConfig = {\n slug: \"categories\",\n label: \"Categories\",\n labelPlural: \"Categories\",\n singularLabel: \"Category\",\n admin: {\n useAsTitle: \"name\",\n defaultColumns: [\"name\", \"slug\"],\n description: \"Post categories\",\n layout: \"split\",\n },\n fields: [\n { name: \"name\", type: \"text\", required: true, label: \"Name\" },\n {\n name: \"description\",\n type: \"textarea\",\n label: \"Description\",\n },\n {\n name: \"slug\",\n type: \"text\",\n required: true,\n label: \"Slug\",\n admin: { position: \"sidebar\", autoGenerate: \"name\" },\n },\n {\n name: \"icon\",\n type: \"upload\",\n label: \"Icon\",\n relationTo: \"media\",\n admin: { position: \"sidebar\" },\n },\n {\n name: \"parent\",\n type: \"relationship\",\n label: \"Parent Category\",\n relationTo: \"categories\",\n admin: { position: \"sidebar\" },\n },\n {\n name: \"order\",\n type: \"number\",\n label: \"Order\",\n defaultValue: 0,\n admin: { position: \"sidebar\" },\n },\n ],\n timestamps: true,\n versions: {\n drafts: true,\n maxPerDoc: 5,\n },\n};\n\nexport const categoriesCollections: Record<string, CollectionConfig> = {\n categories: categoriesCollection,\n};\n\nexport const productCategoriesCollection: CollectionConfig = {\n slug: \"product-categories\",\n label: \"Product Categories\",\n labelPlural: \"Product Categories\",\n singularLabel: \"Product Category\",\n admin: {\n useAsTitle: \"name\",\n defaultColumns: [\"name\", \"slug\"],\n description: \"Product categories for organizing your catalog\",\n },\n fields: [\n { name: \"name\", type: \"text\", required: true, label: \"Name\" },\n {\n name: \"slug\",\n type: \"text\",\n required: true,\n label: \"Slug\",\n admin: { position: \"sidebar\", autoGenerate: \"name\" },\n },\n {\n name: \"description\",\n type: \"textarea\",\n label: \"Description\",\n },\n { name: \"image\", type: \"text\", label: \"Image URL\" },\n {\n name: \"parent\",\n type: \"relationship\",\n label: \"Parent Category\",\n relationTo: \"product-categories\",\n admin: { position: \"sidebar\" },\n },\n ],\n timestamps: true,\n versions: {\n drafts: true,\n maxPerDoc: 5,\n },\n};\n\nexport const productCategoriesCollections: Record<string, CollectionConfig> = {\n \"product-categories\": productCategoriesCollection,\n};\n\nexport default categoriesCollections;\n","import type { CollectionConfig } from \"../registry/types.js\";\n\n\nexport const productsCollection: CollectionConfig = {\n slug: \"products\",\n label: \"Products\",\n labelPlural: \"Products\",\n singularLabel: \"Product\",\n admin: {\n useAsTitle: \"title\",\n defaultColumns: [\"title\", \"slug\", \"price\", \"status\", \"inventory\", \"updatedAt\"],\n description: \"Product catalog\",\n },\n fields: [\n { name: \"title\", type: \"text\", required: true, label: \"Title\" },\n {\n name: \"slug\",\n type: \"text\",\n required: true,\n label: \"Slug\",\n admin: { position: \"sidebar\", autoGenerate: \"title\" },\n },\n { name: \"description\", type: \"richtext\", label: \"Description\" },\n { name: \"price\", type: \"number\", required: true, label: \"Price\" },\n {\n name: \"compareAtPrice\",\n type: \"number\",\n label: \"Compare at Price\",\n admin: { description: \"Original price for sale display\" },\n },\n {\n name: \"costPrice\",\n type: \"number\",\n label: \"Cost Price\",\n admin: { description: \"For profit calculation\" },\n },\n { name: \"sku\", type: \"text\", required: true, label: \"SKU\" },\n { name: \"barcode\", type: \"text\", label: \"Barcode\" },\n {\n name: \"images\",\n type: \"array\",\n label: \"Images\",\n fields: [\n { name: \"url\", type: \"text\", label: \"URL\" },\n { name: \"alt\", type: \"text\", label: \"Alt Text\" },\n ],\n },\n {\n name: \"category\",\n type: \"relationship\",\n label: \"Category\",\n relationTo: \"product-categories\",\n },\n {\n name: \"inventory\",\n type: \"number\",\n label: \"Inventory\",\n defaultValue: 0,\n },\n ],\n timestamps: true,\n versions: {\n drafts: true,\n maxPerDoc: 10,\n },\n};\n\nexport const productsCollections: Record<string, CollectionConfig> = {\n products: productsCollection,\n};\n\nexport default productsCollections;\n","import type { CollectionConfig } from \"../registry/types.js\";\n\n\nexport const customersCollection: CollectionConfig = {\n slug: \"customers\",\n label: \"Customers\",\n labelPlural: \"Customers\",\n singularLabel: \"Customer\",\n admin: {\n useAsTitle: \"email\",\n defaultColumns: [\n \"email\",\n \"firstName\",\n \"lastName\",\n \"createdAt\",\n \"updatedAt\",\n ],\n description: \"Customer accounts\",\n },\n fields: [\n { name: \"email\", type: \"email\", required: true, label: \"Email\" },\n { name: \"firstName\", type: \"text\", label: \"First Name\" },\n { name: \"lastName\", type: \"text\", label: \"Last Name\" },\n { name: \"phone\", type: \"text\", label: \"Phone\" },\n {\n name: \"addresses\",\n type: \"array\",\n label: \"Addresses\",\n fields: [\n { name: \"type\", type: \"text\", label: \"Type\" },\n { name: \"line1\", type: \"text\", label: \"Address Line 1\" },\n { name: \"line2\", type: \"text\", label: \"Address Line 2\" },\n { name: \"city\", type: \"text\", label: \"City\" },\n { name: \"state\", type: \"text\", label: \"State\" },\n { name: \"postalCode\", type: \"text\", label: \"Postal Code\" },\n { name: \"country\", type: \"text\", label: \"Country\" },\n ],\n },\n {\n name: \"slug\",\n type: \"text\",\n required: true,\n label: \"Slug\",\n admin: { position: \"sidebar\", autoGenerate: \"email\" },\n },\n ],\n timestamps: true,\n versions: {\n drafts: true,\n maxPerDoc: 5,\n },\n};\n\nexport const customersCollections: Record<string, CollectionConfig> = {\n customers: customersCollection,\n};\n\nexport default customersCollections;\n","import type { CollectionConfig } from \"../registry/types.js\";\n\n\nexport const ordersCollection: CollectionConfig = {\n slug: \"orders\",\n label: \"Orders\",\n labelPlural: \"Orders\",\n singularLabel: \"Order\",\n admin: {\n useAsTitle: \"orderNumber\",\n defaultColumns: [\n \"orderNumber\",\n \"customer\",\n \"status\",\n \"total\",\n \"createdAt\",\n \"updatedAt\",\n ],\n description: \"Customer orders\",\n },\n fields: [\n {\n name: \"orderNumber\",\n type: \"text\",\n required: true,\n label: \"Order Number\",\n },\n {\n name: \"customer\",\n type: \"relationship\",\n required: true,\n label: \"Customer\",\n relationTo: \"customers\",\n },\n {\n name: \"paymentStatus\",\n type: \"select\",\n label: \"Payment Status\",\n options: [\n { label: \"Pending\", value: \"pending\" },\n { label: \"Paid\", value: \"paid\" },\n { label: \"Failed\", value: \"failed\" },\n { label: \"Refunded\", value: \"refunded\" },\n ],\n defaultValue: \"pending\",\n },\n {\n name: \"items\",\n type: \"array\",\n label: \"Items\",\n fields: [\n { name: \"product\", type: \"text\", label: \"Product\" },\n { name: \"quantity\", type: \"number\", label: \"Quantity\" },\n { name: \"unitPrice\", type: \"number\", label: \"Unit Price\" },\n { name: \"total\", type: \"number\", label: \"Total\" },\n ],\n },\n { name: \"subtotal\", type: \"number\", required: true, label: \"Subtotal\" },\n { name: \"tax\", type: \"number\", label: \"Tax\" },\n { name: \"shipping\", type: \"number\", label: \"Shipping\" },\n { name: \"discount\", type: \"number\", label: \"Discount\" },\n { name: \"total\", type: \"number\", required: true, label: \"Total\" },\n { name: \"notes\", type: \"richtext\", label: \"Notes\" },\n {\n name: \"slug\",\n type: \"text\",\n required: true,\n label: \"Slug\",\n admin: { position: \"sidebar\", autoGenerate: \"orderNumber\" },\n },\n ],\n timestamps: true,\n versions: {\n drafts: true,\n maxPerDoc: 10,\n },\n};\n\nexport const ordersCollections: Record<string, CollectionConfig> = {\n orders: ordersCollection,\n};\n\nexport default ordersCollections;\n","import type { CollectionConfig } from \"../registry/types.js\";\n\n\nexport const couponsCollection: CollectionConfig = {\n slug: \"coupons\",\n label: \"Coupons\",\n labelPlural: \"Coupons\",\n singularLabel: \"Coupon\",\n admin: {\n useAsTitle: \"code\",\n defaultColumns: [\"code\", \"type\", \"value\", \"active\", \"expiresAt\"],\n description: \"Discount codes and promotions\",\n },\n fields: [\n { name: \"code\", type: \"text\", required: true, label: \"Code\" },\n {\n name: \"type\",\n type: \"select\",\n required: true,\n label: \"Type\",\n options: [\n { label: \"Percentage\", value: \"percentage\" },\n { label: \"Fixed Amount\", value: \"fixed\" },\n { label: \"Free Shipping\", value: \"freeShipping\" },\n ],\n },\n { name: \"value\", type: \"number\", label: \"Value\" },\n { name: \"minPurchase\", type: \"number\", label: \"Minimum Purchase\" },\n { name: \"maxDiscount\", type: \"number\", label: \"Max Discount\" },\n { name: \"usageLimit\", type: \"number\", label: \"Usage Limit\" },\n {\n name: \"usedCount\",\n type: \"number\",\n defaultValue: 0,\n label: \"Used Count\",\n },\n { name: \"startsAt\", type: \"date\", label: \"Starts At\" },\n { name: \"expiresAt\", type: \"date\", label: \"Expires At\" },\n { name: \"active\", type: \"checkbox\", defaultValue: true, label: \"Active\" },\n ],\n timestamps: true,\n versions: {\n drafts: true,\n maxPerDoc: 5,\n },\n};\n\nexport const couponsCollections: Record<string, CollectionConfig> = {\n coupons: couponsCollection,\n};\n\nexport default couponsCollections;\n","import type { CollectionConfig } from \"../registry/types.js\";\n\n\nexport const formsCollection: CollectionConfig = {\n slug: \"forms\",\n label: \"Forms\",\n labelPlural: \"Forms\",\n singularLabel: \"Form\",\n admin: {\n useAsTitle: \"name\",\n defaultColumns: [\"name\", \"slug\", \"updatedAt\"],\n description: \"Reusable form definitions\",\n },\n fields: [\n { name: \"name\", type: \"text\", required: true, label: \"Name\" },\n { name: \"subtitle\", type: \"textarea\", label: \"Subtitle\" },\n {\n name: \"slug\",\n type: \"text\",\n required: true,\n label: \"Slug\",\n admin: { position: \"sidebar\", autoGenerate: \"name\" },\n },\n {\n name: \"submitButtonText\",\n type: \"text\",\n label: \"Submit Button Text\",\n defaultValue: \"Submit\",\n admin: { position: \"sidebar\" },\n },\n {\n name: \"consentCheckboxText\",\n type: \"text\",\n label: \"Consent Agreement label (e.g. I agree to terms)\",\n admin: { position: \"sidebar\" },\n },\n {\n name: \"redirectUrl\",\n type: \"text\",\n label: \"Success Redirect URL\",\n admin: { position: \"sidebar\" },\n },\n {\n name: \"fields\",\n type: \"array\",\n label: \"Form Fields\",\n fields: [\n {\n name: \"fieldName\",\n type: \"text\",\n label: \"Field API Name (e.g. company)\",\n },\n {\n name: \"inputType\",\n type: \"select\",\n label: \"Input Type\",\n defaultValue: \"text\",\n options: [\n { label: \"Text input\", value: \"text\" },\n { label: \"Email input\", value: \"email\" },\n { label: \"Phone number input\", value: \"tel\" },\n { label: \"Multi-line textarea\", value: \"textarea\" },\n { label: \"Checkbox selector\", value: \"checkbox\" },\n ],\n },\n {\n name: \"placeholder\",\n type: \"text\",\n label: \"Input Placeholder Text\",\n },\n {\n name: \"isRequired\",\n type: \"checkbox\",\n label: \"Make this field required\",\n defaultValue: false,\n },\n ],\n },\n {\n name: \"entries\",\n type: \"relationship\",\n relationTo: \"form-entries\",\n hasMany: true,\n label: \"Entries\",\n admin: {\n description: \"Form submissions linked to this form.\",\n },\n },\n ],\n timestamps: true,\n versions: {\n drafts: true,\n maxPerDoc: 5,\n },\n};\n\nexport const formsCollections: Record<string, CollectionConfig> = {\n forms: formsCollection,\n};\n\nexport default formsCollections;\n","import type { CollectionConfig } from \"../registry/types.js\";\n\n\nexport const formEntriesCollection: CollectionConfig = {\n slug: \"form-entries\",\n label: \"Form Entries\",\n labelPlural: \"Form Entries\",\n singularLabel: \"Form Entry\",\n admin: {\n useAsTitle: \"id\",\n defaultColumns: [\"id\", \"form\", \"createdAt\", \"ipAddress\"],\n description: \"Form submission entries\",\n },\n fields: [\n {\n name: \"form\",\n type: \"relationship\",\n relationTo: \"forms\",\n required: true,\n label: \"Form\",\n admin: {\n position: \"sidebar\",\n readOnly: true,\n description: \"The form this entry belongs to.\",\n },\n },\n {\n name: \"data\",\n type: \"json\",\n label: \"Submitted Data\",\n admin: {\n readOnly: true,\n description: \"All field values submitted with this entry.\",\n },\n },\n {\n name: \"ipAddress\",\n type: \"text\",\n label: \"IP Address\",\n admin: {\n position: \"sidebar\",\n readOnly: true,\n description: \"The IP address of the submitter.\",\n },\n },\n ],\n timestamps: true,\n};\n\nexport const formEntriesCollections: Record<string, CollectionConfig> = {\n \"form-entries\": formEntriesCollection,\n};\n\nexport default formEntriesCollections;\n","// ============================================================================\n// Site Settings Global\n// ============================================================================\n\nimport type { GlobalConfig } from \"../../registry/types.js\";\n\nexport const siteSettingsGlobal: GlobalConfig = {\n slug: \"site-settings\",\n label: \"Site Settings\",\n\n admin: {\n group: \"settings\",\n },\n\n access: {\n read: () => true,\n update: () => true,\n },\n\n fields: [\n {\n name: \"siteName\",\n type: \"text\",\n label: \"Site Name\",\n required: true,\n admin: {},\n },\n {\n name: \"siteDescription\",\n type: \"textarea\",\n label: \"Site Description\",\n admin: {\n placeholder: \"Enter a brief description of your site for SEO and search results.\"\n },\n },\n {\n name: \"siteLogo\",\n type: \"upload\",\n label: \"Site Logo\",\n relationTo: \"media\",\n },\n {\n name: \"siteFavicon\",\n type: \"upload\",\n label: \"Favicon\",\n relationTo: \"media\",\n },\n {\n name: \"siteOgImage\",\n type: \"upload\",\n label: \"Default OG Image\",\n relationTo: \"media\",\n },\n {\n name: \"siteUrl\",\n type: \"text\",\n label: \"Site URL\",\n admin: {},\n },\n {\n name: \"maintenanceEnabled\",\n type: \"checkbox\",\n label: \"Enable Maintenance Mode\",\n defaultValue: false,\n admin: {\n description: \"When enabled, the public site will show a maintenance page.\"\n }\n },\n {\n name: \"maintenance\",\n type: \"group\",\n label: \"Maintenance Configuration\",\n admin: {\n condition: (data: any) => data.maintenanceEnabled === true,\n },\n fields: [\n {\n name: \"message\",\n type: \"textarea\",\n label: \"Maintenance Message\",\n admin: {\n placeholder: \"We'll be back soon! We're performing scheduled maintenance.\"\n }\n },\n {\n name: \"bypassToken\",\n type: \"text\",\n label: \"Bypass Token\",\n admin: {\n description: \"Append ?bypass=YOUR_TOKEN to URL to view the site while in maintenance mode.\"\n }\n }\n ]\n },\n {\n name: \"enableI18n\",\n type: \"checkbox\",\n label: \"Enable Internationalization (i18n)\",\n defaultValue: false,\n admin: {\n description: \"Enable support for multiple languages.\"\n }\n },\n {\n name: \"i18n\",\n type: \"group\",\n label: \"Localization\",\n admin: {\n condition: (data: any) => data.enableI18n === true,\n },\n fields: [\n {\n name: \"language\",\n type: \"select\",\n label: \"Default Language\",\n defaultValue: \"en\",\n options: [\n { label: \"English\", value: \"en\" },\n { label: \"Spanish\", value: \"es\" },\n { label: \"French\", value: \"fr\" },\n { label: \"German\", value: \"de\" },\n { label: \"Portuguese\", value: \"pt\" },\n { label: \"Italian\", value: \"it\" },\n { label: \"Dutch\", value: \"nl\" },\n { label: \"Russian\", value: \"ru\" },\n { label: \"Japanese\", value: \"ja\" },\n { label: \"Chinese\", value: \"zh\" },\n { label: \"Korean\", value: \"ko\" },\n { label: \"Arabic\", value: \"ar\" },\n ],\n },\n {\n name: \"timezone\",\n type: \"text\",\n label: \"Timezone\",\n defaultValue: \"UTC\",\n },\n ]\n },\n {\n name: \"logo\",\n type: \"group\",\n label: \"Logo Display Settings\",\n fields: [\n {\n name: \"width\",\n type: \"number\",\n label: \"Max Width (px)\",\n },\n {\n name: \"height\",\n type: \"number\",\n label: \"Max Height (px)\",\n },\n {\n name: \"altText\",\n type: \"text\",\n label: \"Alt Text\",\n },\n ],\n },\n {\n name: \"analyticsEnabled\",\n type: \"checkbox\",\n label: \"Enable Analytics & Tracking\",\n defaultValue: false,\n },\n {\n name: \"analytics\",\n type: \"group\",\n label: \"Tracking Configurations\",\n admin: {\n condition: (data: any) => data.analyticsEnabled === true,\n },\n fields: [\n {\n name: \"googleAnalyticsId\",\n type: \"text\",\n label: \"Google Analytics ID\",\n },\n {\n name: \"googleTagManagerId\",\n type: \"text\",\n label: \"Google Tag Manager ID\",\n },\n {\n name: \"plausibleDomain\",\n type: \"text\",\n label: \"Plausible Domain\",\n },\n {\n name: \"mixpanelToken\",\n type: \"password\",\n label: \"Mixpanel Token\",\n },\n ],\n },\n ],\n};\n","// ============================================================================\n// SEO Settings Global\n// ============================================================================\n\nimport type { GlobalConfig } from \"../../registry/types.js\";\n\nexport const seoSettingsGlobal: GlobalConfig = {\n slug: \"seo-settings\",\n label: \"SEO Settings\",\n\n admin: {\n group: \"settings\",\n },\n\n access: {\n read: () => true,\n update: () => true,\n },\n\n fields: [\n {\n name: \"seoMode\",\n type: \"select\",\n label: \"Visibility Mode\",\n defaultValue: \"simple\",\n options: [\n { label: \"Simple (Basic Meta)\", value: \"simple\" },\n { label: \"Advanced (Full Technical SEO)\", value: \"advanced\" },\n ],\n admin: {\n description: \"Switch to advanced mode to control robots.txt, canonical URLs, and deep metadata.\"\n }\n },\n {\n name: \"defaultTitle\",\n type: \"text\",\n label: \"Default Title\",\n admin: {},\n },\n {\n name: \"defaultDescription\",\n type: \"textarea\",\n label: \"Default Description\",\n admin: {},\n },\n {\n name: \"titleTemplate\",\n type: \"text\",\n label: \"Title Template\",\n defaultValue: \"{{title}} | {{siteName}}\",\n admin: {},\n },\n {\n name: \"siteNameInTitle\",\n type: \"checkbox\",\n label: \"Include Site Name in Title\",\n defaultValue: true,\n },\n {\n name: \"separator\",\n type: \"text\",\n label: \"Title Separator\",\n defaultValue: \" | \",\n admin: {},\n },\n {\n name: \"meta\",\n type: \"group\",\n label: \"Technical Meta Settings\",\n admin: {\n condition: (data: any) => data.seoMode === \"advanced\",\n },\n fields: [\n {\n name: \"robots\",\n type: \"text\",\n label: \"Robots Meta\",\n defaultValue: \"index, follow\",\n },\n {\n name: \"canonicalUrl\",\n type: \"text\",\n label: \"Canonical URL\",\n },\n {\n name: \"ogType\",\n type: \"select\",\n label: \"Default OG Type\",\n defaultValue: \"website\",\n options: [\n { label: \"Website\", value: \"website\" },\n { label: \"Article\", value: \"article\" },\n { label: \"Product\", value: \"product\" },\n { label: \"Book\", value: \"book\" },\n { label: \"Music\", value: \"music\" },\n { label: \"Video\", value: \"video\" },\n ],\n },\n ],\n },\n {\n name: \"enableSitemap\",\n type: \"checkbox\",\n label: \"Enable XML Sitemap\",\n defaultValue: true,\n },\n {\n name: \"sitemap\",\n type: \"group\",\n label: \"Sitemap Configuration\",\n admin: {\n condition: (data: any) => data.enableSitemap === true && data.seoMode === \"advanced\",\n },\n fields: [\n {\n name: \"sitemapUrls\",\n type: \"number\",\n label: \"Sitemap URL Limit\",\n defaultValue: 50000,\n },\n ],\n },\n {\n name: \"robotsTxt\",\n type: \"textarea\",\n label: \"Custom robots.txt\",\n admin: {\n condition: (data: any) => data.seoMode === \"advanced\",\n },\n },\n {\n name: \"social\",\n type: \"group\",\n label: \"Social Media\",\n fields: [\n {\n name: \"twitterHandle\",\n type: \"text\",\n label: \"Twitter/X Handle\",\n admin: {},\n },\n {\n name: \"twitterCardType\",\n type: \"select\",\n label: \"Twitter Card Type\",\n defaultValue: \"summary_large_image\",\n options: [\n { label: \"Summary\", value: \"summary\" },\n { label: \"Summary with Large Image\", value: \"summary_large_image\" },\n { label: \"App\", value: \"app\" },\n { label: \"Player\", value: \"player\" },\n ],\n },\n {\n name: \"fbAppId\",\n type: \"text\",\n label: \"Facebook App ID\",\n },\n ],\n },\n {\n name: \"advanced\",\n type: \"group\",\n label: \"Advanced\",\n fields: [\n {\n name: \"jsonLdEnabled\",\n type: \"checkbox\",\n label: \"Enable JSON-LD\",\n defaultValue: true,\n admin: {},\n },\n {\n name: \"breadcrumbsEnabled\",\n type: \"checkbox\",\n label: \"Enable Breadcrumbs\",\n defaultValue: true,\n },\n {\n name: \"paginationSize\",\n type: \"number\",\n label: \"Default Pagination Size\",\n defaultValue: 10,\n },\n ],\n },\n ],\n};\n","// ============================================================================\n// Social Media Settings Global\n// ============================================================================\n\nimport type { GlobalConfig } from \"../../registry/types.js\";\n\nexport const socialSettingsGlobal: GlobalConfig = {\n slug: \"social-settings\",\n label: \"Social Media\",\n \n\n admin: {\n group: \"settings\",\n \n },\n\n access: {\n read: () => true,\n update: () => true,\n },\n\n fields: [\n {\n name: \"showAll\",\n type: \"checkbox\",\n label: \"Show All Platforms\",\n defaultValue: false,\n admin: {\n description: \"Toggle to show niche or secondary social platforms.\"\n }\n },\n {\n name: \"facebook\",\n type: \"text\",\n label: \"Facebook\",\n },\n {\n name: \"twitter\",\n type: \"text\",\n label: \"Twitter/X\",\n },\n {\n name: \"instagram\",\n type: \"text\",\n label: \"Instagram\",\n },\n {\n name: \"linkedin\",\n type: \"text\",\n label: \"LinkedIn\",\n },\n {\n name: \"youtube\",\n type: \"text\",\n label: \"YouTube\",\n },\n {\n name: \"tiktok\",\n type: \"text\",\n label: \"TikTok\",\n admin: {\n condition: (data: any) => data.showAll === true,\n }\n },\n {\n name: \"pinterest\",\n type: \"text\",\n label: \"Pinterest\",\n admin: {\n condition: (data: any) => data.showAll === true,\n }\n },\n {\n name: \"discord\",\n type: \"text\",\n label: \"Discord\",\n admin: {\n condition: (data: any) => data.showAll === true,\n }\n },\n {\n name: \"twitch\",\n type: \"text\",\n label: \"Twitch\",\n admin: {\n condition: (data: any) => data.showAll === true,\n }\n },\n {\n name: \"github\",\n type: \"text\",\n label: \"GitHub\",\n admin: {\n condition: (data: any) => data.showAll === true,\n }\n },\n {\n name: \"mastodon\",\n type: \"text\",\n label: \"Mastodon\",\n admin: {\n condition: (data: any) => data.showAll === true,\n }\n },\n ],\n};\n","// ============================================================================\n// Email Settings Global\n// ============================================================================\n\nimport type { GlobalConfig } from \"../../registry/types.js\";\n\nexport const emailSettingsGlobal: GlobalConfig = {\n slug: \"email-settings\",\n label: \"Email Settings\",\n\n admin: {\n group: \"settings\",\n },\n\n access: {\n read: () => true,\n update: () => true,\n },\n\n fields: [\n {\n name: \"fromName\",\n type: \"text\",\n label: \"From Name\",\n admin: {},\n },\n {\n name: \"fromEmail\",\n type: \"email\",\n label: \"From Email\",\n required: true,\n admin: {},\n },\n {\n name: \"replyTo\",\n type: \"email\",\n label: \"Reply-To Email\",\n admin: {},\n },\n {\n name: \"provider\",\n type: \"select\",\n label: \"Email Provider\",\n defaultValue: \"smtp\",\n options: [\n { label: \"SMTP (Standard)\", value: \"smtp\" },\n { label: \"Resend\", value: \"resend\" },\n { label: \"SendGrid\", value: \"sendgrid\" },\n { label: \"Mailgun\", value: \"mailgun\" },\n { label: \"AWS SES\", value: \"ses\" },\n ],\n },\n {\n name: \"smtp\",\n type: \"group\",\n label: \"SMTP Settings\",\n admin: {\n condition: (data) => data.provider === \"smtp\",\n },\n fields: [\n {\n name: \"smtpService\",\n type: \"select\",\n label: \"SMTP Service\",\n defaultValue: \"custom\",\n options: [\n { label: \"Custom SMTP\", value: \"custom\" },\n { label: \"Gmail\", value: \"gmail\" },\n { label: \"Outlook / Office 365\", value: \"outlook\" },\n { label: \"Brevo (Sendinblue)\", value: \"brevo\" },\n { label: \"Mailgun (SMTP)\", value: \"mailgun-smtp\" },\n { label: \"SendGrid (SMTP)\", value: \"sendgrid-smtp\" },\n { label: \"Mandrill / Mailchimp\", value: \"mandrill\" },\n ],\n admin: {\n description:\n \"Selecting a known service will pre-configure host and port settings.\",\n },\n },\n {\n name: \"host\",\n type: \"text\",\n label: \"Host\",\n admin: {\n condition: (data, siblingData) =>\n siblingData.smtpService === \"custom\",\n placeholder: \"smtp.example.com\",\n },\n },\n {\n name: \"port\",\n type: \"number\",\n label: \"Port\",\n defaultValue: 587,\n admin: {\n condition: (data, siblingData) =>\n siblingData.smtpService === \"custom\",\n },\n },\n {\n name: \"username\",\n type: \"text\",\n label: \"Username\",\n },\n {\n name: \"password\",\n type: \"password\",\n label: \"Password\",\n },\n {\n name: \"secure\",\n type: \"checkbox\",\n label: \"Use TLS/SSL\",\n defaultValue: true,\n },\n ],\n },\n {\n name: \"resend\",\n type: \"group\",\n label: \"Resend Settings\",\n admin: {\n condition: (data) => data.provider === \"resend\",\n },\n fields: [\n {\n name: \"apiKey\",\n type: \"password\",\n label: \"API Key\",\n required: true,\n },\n ],\n },\n {\n name: \"sendgrid\",\n type: \"group\",\n label: \"SendGrid Settings\",\n admin: {\n condition: (data) => data.provider === \"sendgrid\",\n },\n fields: [\n {\n name: \"apiKey\",\n type: \"password\",\n label: \"API Key\",\n required: true,\n },\n ],\n },\n {\n name: \"mailgun\",\n type: \"group\",\n label: \"Mailgun Settings\",\n admin: {\n condition: (data) => data.provider === \"mailgun\",\n },\n fields: [\n {\n name: \"apiKey\",\n type: \"password\",\n label: \"API Key\",\n required: true,\n },\n {\n name: \"domain\",\n type: \"text\",\n label: \"Domain\",\n required: true,\n },\n {\n name: \"region\",\n type: \"select\",\n label: \"Region\",\n defaultValue: \"us\",\n options: [\n { label: \"US (United States)\", value: \"us\" },\n { label: \"EU (Europe)\", value: \"eu\" },\n ],\n },\n ],\n },\n {\n name: \"ses\",\n type: \"group\",\n label: \"AWS SES Settings\",\n admin: {\n condition: (data) => data.provider === \"ses\",\n },\n fields: [\n {\n name: \"accessKeyId\",\n type: \"text\",\n label: \"Access Key ID\",\n required: true,\n },\n {\n name: \"secretAccessKey\",\n type: \"password\",\n label: \"Secret Access Key\",\n required: true,\n },\n {\n name: \"region\",\n type: \"text\",\n label: \"Region\",\n defaultValue: \"us-east-1\",\n admin: { placeholder: \"us-east-1\" },\n },\n ],\n },\n {\n name: \"testEmailSection\",\n type: \"row\",\n label: \"Test Email\",\n admin: {\n description: \"Enter an email address to send a test email.\",\n },\n fields: [\n {\n name: \"testEmail\",\n type: \"email\",\n label: \"Email\",\n admin: {\n width: \"300px\",\n },\n },\n {\n name: \"sendTestEmail\",\n type: \"action\",\n label: \"Send Test Email\",\n admin: {\n action: \"/api/globals/email-settings/test\",\n method: \"POST\",\n },\n },\n ],\n },\n ],\n};\n","// ============================================================================\n// Access Control Settings Global\n// ============================================================================\n\nimport type { GlobalConfig } from \"../../registry/types.js\";\n\nexport const accessSettingsGlobal: GlobalConfig = {\n slug: \"access-settings\",\n label: \"Access Control\",\n\n admin: {\n group: \"settings\",\n },\n\n access: {\n read: () => true,\n update: () => true,\n },\n\n fields: [\n {\n name: \"enablePublicAccess\",\n type: \"checkbox\",\n label: \"Enable Public Access\",\n defaultValue: true,\n admin: {},\n },\n {\n name: \"defaultCollectionAccess\",\n type: \"select\",\n label: \"Default Collection Access\",\n defaultValue: \"read\",\n options: [\n { label: \"Read Only\", value: \"read\" },\n { label: \"Read & Create\", value: \"create\" },\n { label: \"Read & Create & Update\", value: \"update\" },\n { label: \"Full Access\", value: \"admin\" },\n { label: \"No Access\", value: \"none\" },\n ],\n admin: {},\n },\n {\n name: \"apiAccess\",\n type: \"group\",\n label: \"API Access\",\n fields: [\n {\n name: \"restEnabled\",\n type: \"checkbox\",\n label: \"Enable REST API\",\n defaultValue: true,\n },\n {\n name: \"graphqlEnabled\",\n type: \"checkbox\",\n label: \"Enable GraphQL\",\n defaultValue: false,\n },\n {\n name: \"trpcEnabled\",\n type: \"checkbox\",\n label: \"Enable tRPC\",\n defaultValue: false,\n },\n {\n name: \"wsEnabled\",\n type: \"checkbox\",\n label: \"Enable WebSocket\",\n defaultValue: false,\n },\n {\n name: \"requireAuth\",\n type: \"checkbox\",\n label: \"Require Authentication\",\n defaultValue: false,\n },\n {\n name: \"cors\",\n type: \"group\",\n label: \"CORS Settings\",\n admin: {\n condition: (data: any) =>\n data.apiAccess?.restEnabled === true ||\n data.apiAccess?.graphqlEnabled === true,\n },\n fields: [\n {\n name: \"allowedOrigins\",\n type: \"textarea\",\n label: \"Allowed Origins (one per line)\",\n admin: {\n placeholder: \"https://example.com\\nhttps://app.example.com\",\n },\n },\n ],\n },\n ],\n },\n {\n name: \"rateLimiting\",\n type: \"group\",\n label: \"Rate Limiting Configuration\",\n admin: {\n condition: (data: any) => data.rateLimiting?.enabled === true,\n },\n fields: [\n {\n name: \"enabled\",\n type: \"checkbox\",\n label: \"Enable Global Rate Limiting\",\n defaultValue: true,\n },\n {\n name: \"maxRequests\",\n type: \"number\",\n label: \"Max Requests\",\n defaultValue: 100,\n admin: {\n condition: (data: any, siblingData: any) =>\n siblingData.enabled === true,\n },\n },\n {\n name: \"windowMs\",\n type: \"number\",\n label: \"Window (ms)\",\n defaultValue: 60000,\n admin: {\n condition: (data: any, siblingData: any) =>\n siblingData.enabled === true,\n },\n },\n ],\n },\n ],\n};\n","// ============================================================================\n// E-commerce Store Settings Global\n// ============================================================================\n\nimport type { GlobalConfig } from \"../../registry/types.js\";\n\nconst countryOptions = [\n { label: \"United States\", value: \"US\" },\n { label: \"United Kingdom\", value: \"GB\" },\n { label: \"Canada\", value: \"CA\" },\n { label: \"Australia\", value: \"AU\" },\n { label: \"Germany\", value: \"DE\" },\n { label: \"France\", value: \"FR\" },\n { label: \"Netherlands\", value: \"NL\" },\n { label: \"Belgium\", value: \"BE\" },\n { label: \"Spain\", value: \"ES\" },\n { label: \"Italy\", value: \"IT\" },\n { label: \"Portugal\", value: \"PT\" },\n { label: \"Sweden\", value: \"SE\" },\n { label: \"Norway\", value: \"NO\" },\n { label: \"Denmark\", value: \"DK\" },\n { label: \"Finland\", value: \"FI\" },\n { label: \"Austria\", value: \"AT\" },\n { label: \"Switzerland\", value: \"CH\" },\n { label: \"Japan\", value: \"JP\" },\n { label: \"South Korea\", value: \"KR\" },\n { label: \"China\", value: \"CN\" },\n { label: \"India\", value: \"IN\" },\n { label: \"Brazil\", value: \"BR\" },\n { label: \"Mexico\", value: \"MX\" },\n];\n\nexport const storeSettingsGlobal: GlobalConfig = {\n slug: \"store-settings\",\n label: \"Store Settings\",\n \n\n admin: {\n group: \"settings\",\n \n },\n\n access: {\n read: () => true,\n update: () => true,\n },\n\n fields: [\n {\n name: \"storeName\",\n type: \"text\",\n label: \"Store Name\",\n required: true,\n },\n {\n name: \"storeEmail\",\n type: \"email\",\n label: \"Contact Email\",\n required: true,\n },\n {\n name: \"storePhone\",\n type: \"text\",\n label: \"Phone Number\",\n },\n {\n name: \"address\",\n type: \"group\",\n label: \"Store Address\",\n fields: [\n {\n name: \"street\",\n type: \"text\",\n label: \"Street Address\",\n },\n {\n name: \"city\",\n type: \"text\",\n label: \"City\",\n },\n {\n name: \"state\",\n type: \"text\",\n label: \"State/Province\",\n },\n {\n name: \"postalCode\",\n type: \"text\",\n label: \"Postal Code\",\n },\n {\n name: \"country\",\n type: \"select\",\n label: \"Country\",\n options: countryOptions,\n },\n ],\n },\n {\n name: \"currency\",\n type: \"group\",\n label: \"Currency\",\n fields: [\n {\n name: \"code\",\n type: \"select\",\n label: \"Currency Code\",\n defaultValue: \"USD\",\n options: [\n { label: \"USD - US Dollar\", value: \"USD\" },\n { label: \"EUR - Euro\", value: \"EUR\" },\n { label: \"GBP - British Pound\", value: \"GBP\" },\n { label: \"CAD - Canadian Dollar\", value: \"CAD\" },\n { label: \"AUD - Australian Dollar\", value: \"AUD\" },\n { label: \"JPY - Japanese Yen\", value: \"JPY\" },\n { label: \"CNY - Chinese Yuan\", value: \"CNY\" },\n { label: \"INR - Indian Rupee\", value: \"INR\" },\n { label: \"BRL - Brazilian Real\", value: \"BRL\" },\n { label: \"MXN - Mexican Peso\", value: \"MXN\" },\n ],\n },\n {\n name: \"symbol\",\n type: \"text\",\n label: \"Symbol\",\n defaultValue: \"$\",\n },\n {\n name: \"position\",\n type: \"select\",\n label: \"Symbol Position\",\n defaultValue: \"before\",\n options: [\n { label: \"Before amount\", value: \"before\" },\n { label: \"After amount\", value: \"after\" },\n ],\n },\n {\n name: \"decimals\",\n type: \"number\",\n label: \"Decimal Places\",\n defaultValue: 2,\n },\n ],\n },\n {\n name: \"tax\",\n type: \"group\",\n label: \"Tax Logistics\",\n admin: {\n condition: (data: any) => data.tax?.enabled === true,\n },\n fields: [\n {\n name: \"enabled\",\n type: \"checkbox\",\n label: \"Enable Tax\",\n defaultValue: true,\n },\n {\n name: \"rate\",\n type: \"number\",\n label: \"Tax Rate (%)\",\n admin: {\n placeholder: \"10\",\n condition: (data: any, siblingData: any) => siblingData.enabled === true,\n },\n },\n {\n name: \"includedInPrice\",\n type: \"checkbox\",\n label: \"Tax Included in Prices\",\n admin: {\n condition: (data: any, siblingData: any) => siblingData.enabled === true,\n },\n },\n {\n name: \"taxId\",\n type: \"text\",\n label: \"Tax ID / VAT Number\",\n admin: {\n condition: (data: any, siblingData: any) => siblingData.enabled === true,\n },\n },\n ],\n },\n {\n name: \"shipping\",\n type: \"group\",\n label: \"Shipping Logic\",\n admin: {\n condition: (data: any) => data.shipping?.enableLocalPickup === true || data.shipping?.flatRate > 0,\n },\n fields: [\n {\n name: \"enableLocalPickup\",\n type: \"checkbox\",\n label: \"Enable Local Pickup\",\n defaultValue: true,\n },\n {\n name: \"flatRate\",\n type: \"number\",\n label: \"Flat Rate Shipping Fee\",\n admin: {\n \n },\n },\n {\n name: \"freeShippingThreshold\",\n type: \"number\",\n label: \"Free Shipping Minimum\",\n admin: {\n condition: (data: any, siblingData: any) => siblingData.flatRate > 0,\n },\n },\n ],\n },\n {\n name: \"orders\",\n type: \"group\",\n label: \"Orders\",\n fields: [\n {\n name: \"orderNumberPrefix\",\n type: \"text\",\n label: \"Order Number Prefix\",\n defaultValue: \"ORD\",\n admin: {\n \n },\n },\n {\n name: \"allowGuestCheckout\",\n type: \"checkbox\",\n label: \"Allow Guest Checkout\",\n defaultValue: true,\n },\n {\n name: \"requirePhone\",\n type: \"checkbox\",\n label: \"Require Phone Number\",\n defaultValue: true,\n },\n ],\n },\n ],\n};\n","// ============================================================================\n// Payment Settings Global\n// ============================================================================\n\nimport type { GlobalConfig } from \"../../registry/types.js\";\n\nexport const paymentSettingsGlobal: GlobalConfig = {\n slug: \"payment-settings\",\n label: \"Payment Settings\",\n \n\n admin: {\n group: \"settings\",\n \n },\n\n access: {\n read: () => true,\n update: () => true,\n },\n\n fields: [\n {\n name: \"testMode\",\n type: \"checkbox\",\n label: \"Test Mode\",\n defaultValue: true,\n admin: {\n \n },\n },\n {\n name: \"provider\",\n type: \"select\",\n label: \"Primary Payment Provider\",\n defaultValue: \"stripe\",\n options: [\n { label: \"Stripe\", value: \"stripe\" },\n { label: \"PayPal\", value: \"paypal\" },\n { label: \"Square\", value: \"square\" },\n { label: \"Manual Methods Only\", value: \"manual\" },\n ],\n },\n {\n name: \"stripe\",\n type: \"group\",\n label: \"Stripe\",\n admin: {\n condition: (data) => data.provider === \"stripe\",\n },\n fields: [\n {\n name: \"enabled\",\n type: \"checkbox\",\n label: \"Enable Stripe\",\n defaultValue: false,\n },\n {\n name: \"publishableKey\",\n type: \"text\",\n label: \"Publishable Key\",\n admin: {\n placeholder: \"pk_live_...\",\n },\n },\n {\n name: \"secretKey\",\n type: \"password\",\n label: \"Secret Key\",\n },\n {\n name: \"webhookSecret\",\n type: \"password\",\n label: \"Webhook Secret\",\n admin: {\n \n },\n },\n ],\n },\n {\n name: \"paypal\",\n type: \"group\",\n label: \"PayPal\",\n admin: {\n condition: (data) => data.provider === \"paypal\",\n },\n fields: [\n {\n name: \"enabled\",\n type: \"checkbox\",\n label: \"Enable PayPal\",\n defaultValue: false,\n },\n {\n name: \"clientId\",\n type: \"text\",\n label: \"Client ID\",\n },\n {\n name: \"clientSecret\",\n type: \"password\",\n label: \"Client Secret\",\n },\n {\n name: \"mode\",\n type: \"select\",\n label: \"Mode\",\n defaultValue: \"sandbox\",\n options: [\n { label: \"Sandbox (Test)\", value: \"sandbox\" },\n { label: \"Live\", value: \"live\" },\n ],\n },\n ],\n },\n {\n name: \"square\",\n type: \"group\",\n label: \"Square\",\n admin: {\n condition: (data) => data.provider === \"square\",\n },\n fields: [\n {\n name: \"enabled\",\n type: \"checkbox\",\n label: \"Enable Square\",\n defaultValue: false,\n },\n {\n name: \"applicationId\",\n type: \"text\",\n label: \"Application ID\",\n },\n {\n name: \"accessToken\",\n type: \"password\",\n label: \"Access Token\",\n },\n {\n name: \"locationId\",\n type: \"text\",\n label: \"Location ID\",\n },\n ],\n },\n {\n name: \"methods\",\n type: \"group\",\n label: \"Manual Payment Methods\",\n fields: [\n {\n name: \"cod\",\n type: \"checkbox\",\n label: \"Cash on Delivery\",\n defaultValue: true,\n },\n {\n name: \"bankTransfer\",\n type: \"checkbox\",\n label: \"Bank Transfer\",\n defaultValue: true,\n },\n {\n name: \"cash\",\n type: \"checkbox\",\n label: \"Cash (Local Pickup)\",\n defaultValue: true,\n },\n {\n name: \"check\",\n type: \"checkbox\",\n label: \"Check\",\n defaultValue: false,\n },\n ],\n },\n {\n name: \"bankTransfer\",\n type: \"group\",\n label: \"Bank Transfer Details\",\n admin: {\n \n },\n fields: [\n {\n name: \"bankName\",\n type: \"text\",\n label: \"Bank Name\",\n },\n {\n name: \"accountName\",\n type: \"text\",\n label: \"Account Name\",\n },\n {\n name: \"accountNumber\",\n type: \"text\",\n label: \"Account Number\",\n },\n {\n name: \"routingNumber\",\n type: \"text\",\n label: \"Routing/Sort Code\",\n },\n {\n name: \"iban\",\n type: \"text\",\n label: \"IBAN\",\n },\n {\n name: \"swift\",\n type: \"text\",\n label: \"SWIFT/BIC\",\n },\n ],\n },\n ],\n};\n","// ============================================================================\n// System Settings Global\n// ============================================================================\n\nimport type { GlobalConfig } from \"../../registry/types.js\";\n\nexport const systemSettingsGlobal: GlobalConfig = {\n slug: \"system\",\n label: \"System\",\n admin: {\n group: \"settings\",\n description: \"Core system configuration and secrets\",\n },\n access: {\n read: () => true,\n update: () => true,\n },\n fields: [\n {\n name: \"appSecret\",\n type: \"secret\",\n label: \"App Secret\",\n required: false,\n admin: {\n description: \"Auto-generated master secret used for encryption and auth. Auto-created if empty on load.\",\n readOnly: true,\n },\n },\n {\n name: \"encryptionKey\",\n type: \"text\",\n label: \"Encryption Key\",\n required: false,\n admin: {\n description: \"Auto-generated key for data encryption at rest.\",\n readOnly: true,\n },\n },\n {\n name: \"sessionMaxAge\",\n type: \"number\",\n label: \"Session Max Age (days)\",\n required: false,\n defaultValue: 7,\n admin: {\n description: \"Maximum session duration in days\",\n },\n },\n {\n name: \"maxSessionsPerUser\",\n type: \"number\",\n label: \"Max Sessions Per User\",\n required: false,\n defaultValue: 3,\n admin: {\n description: \"Maximum concurrent sessions allowed per user\",\n },\n },\n\n ],\n};","// ============================================================================\n// Header Settings Global\n// ============================================================================\n\nimport type { GlobalConfig } from \"../../registry/types.js\";\n\nexport const headerSettingsGlobal: GlobalConfig = {\n slug: \"header-settings\",\n label: \"Header Settings\",\n\n admin: {\n group: \"Header Configuration\",\n description: \"Manage global header settings like the logo and navigation.\",\n },\n\n access: {\n read: () => true,\n update: () => true,\n },\n\n fields: [\n {\n name: \"site_logo\",\n type: \"upload\",\n relationTo: \"media\",\n label: \"Site Logo\",\n },\n {\n name: \"site_menu\",\n type: \"relationship\",\n relationTo: \"menu\",\n label: \"Site Menu\",\n },\n {\n name: \"header_text\",\n type: \"richtext\",\n label: \"Header Text\",\n },\n {\n name: \"header_buttons\",\n type: \"array\",\n label: \"Header Buttons\",\n fields: [\n {\n name: \"button\",\n type: \"group\",\n label: \"Button\",\n fields: [\n {\n name: \"text\",\n type: \"text\",\n label: \"Button Text\",\n },\n {\n name: \"url\",\n type: \"text\",\n label: \"Button URL\",\n },\n ],\n },\n ],\n },\n ],\n};\n","// ============================================================================\n// Footer Settings Global\n// ============================================================================\n\nimport type { GlobalConfig } from \"../../registry/types.js\";\n\nexport const footerSettingsGlobal: GlobalConfig = {\n slug: \"footer-settings\",\n label: \"Footer Settings\",\n\n admin: {\n group: \"Footer Configuration\",\n description: \"Manage global footer settings like the logo, text, and links.\",\n },\n\n access: {\n read: () => true,\n update: () => true,\n },\n\n fields: [\n {\n name: \"footer_logo\",\n type: \"upload\",\n relationTo: \"media\",\n label: \"Footer Logo\",\n },\n {\n name: \"footer_text\",\n type: \"richtext\",\n label: \"Footer Text\",\n },\n {\n name: \"footer_address\",\n type: \"text\",\n label: \"Footer Address\",\n },\n {\n name: \"footer_phone\",\n type: \"text\",\n label: \"Footer Phone\",\n },\n {\n name: \"footer_email\",\n type: \"text\",\n label: \"Footer Email\",\n },\n {\n name: \"footer_hours\",\n type: \"array\",\n label: \"Footer Hours\",\n fields: [\n {\n name: \"hour\",\n type: \"text\",\n label: \"Hour\",\n },\n ],\n },\n {\n name: \"footer_social_links\",\n type: \"array\",\n label: \"Footer Social Links\",\n fields: [\n {\n name: \"social_icon\",\n type: \"text\",\n label: \"Social Icon\",\n },\n {\n name: \"social_url\",\n type: \"text\",\n label: \"Social URL\",\n },\n ],\n },\n {\n name: \"footer_menu\",\n type: \"array\",\n label: \"Footer Menu\",\n fields: [\n {\n name: \"menu\",\n type: \"relationship\",\n relationTo: \"menu\",\n },\n ],\n },\n {\n name: \"footer_buttons\",\n type: \"array\",\n label: \"Footer Buttons\",\n fields: [\n {\n name: \"button\",\n type: \"button\",\n label: \"Button\",\n },\n ],\n },\n {\n name: \"footer_form\",\n type: \"relationship\",\n relationTo: \"forms\",\n label: \"Footer Form\",\n },\n ],\n};\n","// ============================================================================\n// Settings Globals Index\n// ============================================================================\n\nexport { siteSettingsGlobal } from \"./site.js\";\nexport { seoSettingsGlobal } from \"./seo.js\";\nexport { socialSettingsGlobal } from \"./social.js\";\nexport { emailSettingsGlobal } from \"./email.js\";\nexport { accessSettingsGlobal } from \"./access.js\";\nexport { storeSettingsGlobal } from \"./store.js\";\nexport { paymentSettingsGlobal } from \"./payments.js\";\nexport { systemSettingsGlobal } from \"./system.js\";\nexport { storageSettingsGlobal, createStorageSettingsGlobal } from \"./storage.js\";\nexport { headerSettingsGlobal } from \"./header.js\";\nexport { footerSettingsGlobal } from \"./footer.js\";\n\nimport { siteSettingsGlobal } from \"./site.js\";\nimport { seoSettingsGlobal } from \"./seo.js\";\nimport { socialSettingsGlobal } from \"./social.js\";\nimport { emailSettingsGlobal } from \"./email.js\";\nimport { accessSettingsGlobal } from \"./access.js\";\nimport { storeSettingsGlobal } from \"./store.js\";\nimport { paymentSettingsGlobal } from \"./payments.js\";\nimport { systemSettingsGlobal } from \"./system.js\";\nimport { storageSettingsGlobal } from \"./storage.js\";\nimport { headerSettingsGlobal } from \"./header.js\";\nimport { footerSettingsGlobal } from \"./footer.js\";\nimport type { GlobalConfig } from \"../../registry/types.js\";\n\nexport const allSettingsGlobals: GlobalConfig[] = [\n siteSettingsGlobal,\n seoSettingsGlobal,\n socialSettingsGlobal,\n emailSettingsGlobal,\n storageSettingsGlobal,\n accessSettingsGlobal,\n storeSettingsGlobal,\n paymentSettingsGlobal,\n systemSettingsGlobal,\n headerSettingsGlobal,\n footerSettingsGlobal,\n];\n\nexport const coreSettingsGlobals: GlobalConfig[] = [\n siteSettingsGlobal,\n seoSettingsGlobal,\n socialSettingsGlobal,\n emailSettingsGlobal,\n storageSettingsGlobal,\n accessSettingsGlobal,\n systemSettingsGlobal,\n headerSettingsGlobal,\n footerSettingsGlobal,\n];\n\nexport const settingsBySlug: Record<string, GlobalConfig> = {\n [siteSettingsGlobal.slug]: siteSettingsGlobal,\n [seoSettingsGlobal.slug]: seoSettingsGlobal,\n [socialSettingsGlobal.slug]: socialSettingsGlobal,\n [emailSettingsGlobal.slug]: emailSettingsGlobal,\n [storageSettingsGlobal.slug]: storageSettingsGlobal,\n [accessSettingsGlobal.slug]: accessSettingsGlobal,\n [storeSettingsGlobal.slug]: storeSettingsGlobal,\n [paymentSettingsGlobal.slug]: paymentSettingsGlobal,\n [systemSettingsGlobal.slug]: systemSettingsGlobal,\n [headerSettingsGlobal.slug]: headerSettingsGlobal,\n [footerSettingsGlobal.slug]: footerSettingsGlobal,\n};\n\nexport function getSettingsForTemplate(\n template: \"minimal\" | \"starter\" | \"blog\" | \"ecommerce\" | \"kitchen-sink\",\n): GlobalConfig[] {\n switch (template) {\n case \"minimal\":\n return [siteSettingsGlobal, seoSettingsGlobal];\n case \"starter\":\n case \"blog\":\n return coreSettingsGlobals;\n case \"ecommerce\":\n case \"kitchen-sink\":\n return allSettingsGlobals;\n default:\n return coreSettingsGlobals;\n }\n}\n","import type { CollectionConfig, GlobalConfig } from \"../registry/types.js\";\n\nimport { minimalCollections } from \"./minimal\";\nimport { starterCollections } from \"./starter\";\nimport { blogCollections, blogGlobals } from \"./blog\";\nimport { ecommerceCollections, ecommerceGlobals } from \"./ecommerce\";\nimport { kitchenSinkCollections } from \"./kitchen-sink\";\nimport { authCollections } from \"./auth.js\";\nimport { mediaCollections, mediaCollection } from \"./media.js\";\nimport { menuCollections, menuCollection } from \"./menu.js\";\nimport { postsCollections, postsCollection } from \"./posts.js\";\nimport { pageCollections, pageCollection } from \"./pages.js\";\nimport { categoriesCollections, categoriesCollection, productCategoriesCollections, productCategoriesCollection } from \"./categories.js\";\nimport { productsCollections, productsCollection } from \"./products.js\";\nimport { customersCollections, customersCollection } from \"./customers.js\";\nimport { ordersCollections, ordersCollection } from \"./orders.js\";\nimport { couponsCollections, couponsCollection } from \"./coupons.js\";\nimport { formsCollections, formsCollection } from \"./forms.js\";\nimport { formEntriesCollections, formEntriesCollection } from \"./form-entries.js\";\n\nexport { minimalCollections } from \"./minimal\";\nexport { starterCollections } from \"./starter\";\nexport { blogCollections, blogGlobals } from \"./blog\";\nexport { ecommerceCollections, ecommerceGlobals } from \"./ecommerce\";\nexport { kitchenSinkCollections } from \"./kitchen-sink\";\nexport { authCollections } from \"./auth.js\";\n\nexport {\n mediaCollections,\n mediaCollection,\n} from \"./media.js\";\nexport { menuCollections, menuCollection } from \"./menu.js\";\nexport { postsCollections, postsCollection } from \"./posts.js\";\nexport { pageCollections, pageCollection } from \"./pages.js\";\nexport { categoriesCollections, categoriesCollection, productCategoriesCollections, productCategoriesCollection } from \"./categories.js\";\nexport { productsCollections, productsCollection } from \"./products.js\";\nexport { customersCollections, customersCollection } from \"./customers.js\";\nexport { ordersCollections, ordersCollection } from \"./orders.js\";\nexport { couponsCollections, couponsCollection } from \"./coupons.js\";\nexport { formsCollections, formsCollection } from \"./forms.js\";\nexport { formEntriesCollections, formEntriesCollection } from \"./form-entries.js\";\nexport {\n allSettingsGlobals,\n coreSettingsGlobals,\n settingsBySlug,\n getSettingsForTemplate,\n siteSettingsGlobal,\n seoSettingsGlobal,\n socialSettingsGlobal,\n emailSettingsGlobal,\n storageSettingsGlobal,\n accessSettingsGlobal,\n storeSettingsGlobal,\n paymentSettingsGlobal,\n systemSettingsGlobal,\n headerSettingsGlobal,\n footerSettingsGlobal,\n} from \"./settings/index.js\";\n\n\n\nfunction deduplicateCollections(collections: CollectionConfig[]): CollectionConfig[] {\n const map = new Map<string, CollectionConfig>();\n for (const col of collections) {\n if (!map.has(col.slug)) {\n map.set(col.slug, col);\n }\n }\n return Array.from(map.values());\n}\n\nexport const templateCollections = {\n minimal: deduplicateCollections([\n ...Object.values(minimalCollections),\n ...Object.values(postsCollections),\n ...Object.values(pageCollections),\n ...Object.values(categoriesCollections),\n ...Object.values(formsCollections),\n ...Object.values(formEntriesCollections),\n ]),\n starter: deduplicateCollections([\n ...Object.values(starterCollections),\n ...mediaCollections,\n ...Object.values(authCollections),\n ...Object.values(postsCollections),\n ...Object.values(pageCollections),\n ...Object.values(menuCollections),\n ...Object.values(categoriesCollections),\n ...Object.values(formsCollections),\n ...Object.values(formEntriesCollections),\n ]),\n blog: deduplicateCollections([\n ...Object.values(blogCollections),\n ...mediaCollections,\n ...Object.values(authCollections),\n ...Object.values(postsCollections),\n ...Object.values(pageCollections),\n ...Object.values(menuCollections),\n ...Object.values(categoriesCollections),\n ...Object.values(formsCollections),\n ...Object.values(formEntriesCollections),\n ]),\n ecommerce: deduplicateCollections([\n ...Object.values(ecommerceCollections),\n ...Object.values(productsCollections),\n ...Object.values(customersCollections),\n ...Object.values(ordersCollections),\n ...Object.values(couponsCollections),\n ...mediaCollections,\n ...Object.values(authCollections),\n ...Object.values(postsCollections),\n ...Object.values(pageCollections),\n ...Object.values(menuCollections),\n ...Object.values(categoriesCollections),\n ...Object.values(productCategoriesCollections),\n ...Object.values(formsCollections),\n ...Object.values(formEntriesCollections),\n ]),\n \"kitchen-sink\": deduplicateCollections([\n ...Object.values(minimalCollections),\n ...Object.values(starterCollections),\n ...Object.values(blogCollections),\n ...Object.values(ecommerceCollections),\n ...Object.values(kitchenSinkCollections),\n ...Object.values(productsCollections),\n ...Object.values(customersCollections),\n ...Object.values(ordersCollections),\n ...Object.values(couponsCollections),\n ...mediaCollections,\n ...Object.values(authCollections),\n ...Object.values(postsCollections),\n ...Object.values(pageCollections),\n ...Object.values(menuCollections),\n ...Object.values(categoriesCollections),\n ...Object.values(productCategoriesCollections),\n ...Object.values(formsCollections),\n ...Object.values(formEntriesCollections),\n ]),\n} as const;\n\nimport {\n allSettingsGlobals,\n coreSettingsGlobals,\n getSettingsForTemplate,\n settingsBySlug,\n} from \"./settings/index.js\";\n\nexport interface TemplateConfig {\n collections?: CollectionConfig[];\n globals?: GlobalConfig[];\n}\n\nexport type TemplateType = \"minimal\" | \"starter\" | \"blog\" | \"ecommerce\" | \"kitchen-sink\";\n\nexport interface CreateTemplateConfigOptions extends TemplateConfig {\n template?: TemplateType;\n collections?: CollectionConfig[];\n globals?: GlobalConfig[];\n includeMedia?: boolean;\n includeSettings?:\n | \"all\"\n | \"core\"\n | \"site\"\n | \"seo\"\n | \"social\"\n | \"email\"\n | \"storage\"\n | \"access\"\n | \"store\"\n | \"payments\"\n | \"system\"\n | string[];\n excludeSettings?: string[];\n}\n\nexport function createTemplateConfig(\n options: CreateTemplateConfigOptions,\n): TemplateConfig {\n const collections: CollectionConfig[] = options.collections\n ? [...options.collections]\n : [];\n const globals: GlobalConfig[] = options.globals ? [...options.globals] : [];\n\n if (options.includeMedia !== false) {\n collections.push(...mediaCollections);\n }\n\n const templateSettings = options.template\n ? getSettingsForTemplate(options.template)\n : coreSettingsGlobals;\n\n if (options.includeSettings) {\n if (options.includeSettings === \"all\") {\n globals.push(...allSettingsGlobals);\n } else if (options.includeSettings === \"core\") {\n globals.push(...coreSettingsGlobals);\n } else if (Array.isArray(options.includeSettings)) {\n for (const setting of options.includeSettings) {\n const global = settingsBySlug[setting];\n if (global) {\n globals.push(global);\n }\n }\n }\n } else if (!options.globals || options.globals.length === 0) {\n globals.push(...templateSettings);\n }\n\n if (options.excludeSettings && options.excludeSettings.length > 0) {\n const excludeSet = new Set(options.excludeSettings);\n const filtered = globals.filter(\n (g) =>\n !excludeSet.has(g.slug) &&\n !excludeSet.has(g.label?.toLowerCase().replace(/\\s+/g, \"-\") || \"\"),\n );\n globals.length = 0;\n globals.push(...filtered);\n }\n\n return {\n collections: collections.length > 0 ? collections : undefined,\n globals: globals.length > 0 ? globals : undefined,\n };\n}\n"]}