@qwickapps/cms 0.2.0

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 (259) hide show
  1. package/LICENSE +45 -0
  2. package/README.md +203 -0
  3. package/dist/admin/components/AccordionItemRowLabel.d.ts +20 -0
  4. package/dist/admin/components/AccordionItemRowLabel.d.ts.map +1 -0
  5. package/dist/admin/components/AccordionItemRowLabel.js +47 -0
  6. package/dist/admin/components/AccordionItemRowLabel.js.map +1 -0
  7. package/dist/admin/components/BlockRowLabel.d.ts +19 -0
  8. package/dist/admin/components/BlockRowLabel.d.ts.map +1 -0
  9. package/dist/admin/components/BlockRowLabel.js +52 -0
  10. package/dist/admin/components/BlockRowLabel.js.map +1 -0
  11. package/dist/admin/components/ButtonRowLabel.d.ts +23 -0
  12. package/dist/admin/components/ButtonRowLabel.d.ts.map +1 -0
  13. package/dist/admin/components/ButtonRowLabel.js +63 -0
  14. package/dist/admin/components/ButtonRowLabel.js.map +1 -0
  15. package/dist/admin/components/CardRowLabel.d.ts +23 -0
  16. package/dist/admin/components/CardRowLabel.d.ts.map +1 -0
  17. package/dist/admin/components/CardRowLabel.js +59 -0
  18. package/dist/admin/components/CardRowLabel.js.map +1 -0
  19. package/dist/admin/components/ContentPreview.d.ts +12 -0
  20. package/dist/admin/components/ContentPreview.d.ts.map +1 -0
  21. package/dist/admin/components/ContentPreview.js +95 -0
  22. package/dist/admin/components/ContentPreview.js.map +1 -0
  23. package/dist/admin/components/Dashboard.d.ts +13 -0
  24. package/dist/admin/components/Dashboard.d.ts.map +1 -0
  25. package/dist/admin/components/Dashboard.js +7 -0
  26. package/dist/admin/components/Dashboard.js.map +1 -0
  27. package/dist/admin/components/DashboardContent.d.ts +11 -0
  28. package/dist/admin/components/DashboardContent.d.ts.map +1 -0
  29. package/dist/admin/components/DashboardContent.js +129 -0
  30. package/dist/admin/components/DashboardContent.js.map +1 -0
  31. package/dist/admin/components/FormFieldRowLabel.d.ts +21 -0
  32. package/dist/admin/components/FormFieldRowLabel.d.ts.map +1 -0
  33. package/dist/admin/components/FormFieldRowLabel.js +47 -0
  34. package/dist/admin/components/FormFieldRowLabel.js.map +1 -0
  35. package/dist/admin/components/Icon.d.ts +10 -0
  36. package/dist/admin/components/Icon.d.ts.map +1 -0
  37. package/dist/admin/components/Icon.js +16 -0
  38. package/dist/admin/components/Icon.js.map +1 -0
  39. package/dist/admin/components/Logo.d.ts +10 -0
  40. package/dist/admin/components/Logo.d.ts.map +1 -0
  41. package/dist/admin/components/Logo.js +16 -0
  42. package/dist/admin/components/Logo.js.map +1 -0
  43. package/dist/admin/components/NavigationItemRowLabel.d.ts +21 -0
  44. package/dist/admin/components/NavigationItemRowLabel.d.ts.map +1 -0
  45. package/dist/admin/components/NavigationItemRowLabel.js +43 -0
  46. package/dist/admin/components/NavigationItemRowLabel.js.map +1 -0
  47. package/dist/admin/components/NavigationSubItemRowLabel.d.ts +19 -0
  48. package/dist/admin/components/NavigationSubItemRowLabel.d.ts.map +1 -0
  49. package/dist/admin/components/NavigationSubItemRowLabel.js +32 -0
  50. package/dist/admin/components/NavigationSubItemRowLabel.js.map +1 -0
  51. package/dist/admin/components/PagesListHeader.d.ts +13 -0
  52. package/dist/admin/components/PagesListHeader.d.ts.map +1 -0
  53. package/dist/admin/components/PagesListHeader.js +48 -0
  54. package/dist/admin/components/PagesListHeader.js.map +1 -0
  55. package/dist/admin/components/ProductsListHeader.d.ts +13 -0
  56. package/dist/admin/components/ProductsListHeader.d.ts.map +1 -0
  57. package/dist/admin/components/ProductsListHeader.js +55 -0
  58. package/dist/admin/components/ProductsListHeader.js.map +1 -0
  59. package/dist/admin/components/styles/CollectionListHeader.css +161 -0
  60. package/dist/admin/components/styles/ContentPreview.css +416 -0
  61. package/dist/admin/components/styles/Dashboard.css +338 -0
  62. package/dist/admin/fields/ColorInput.d.ts +13 -0
  63. package/dist/admin/fields/ColorInput.d.ts.map +1 -0
  64. package/dist/admin/fields/ColorInput.js +201 -0
  65. package/dist/admin/fields/ColorInput.js.map +1 -0
  66. package/dist/admin/fields/index.d.ts +9 -0
  67. package/dist/admin/fields/index.d.ts.map +1 -0
  68. package/dist/admin/fields/index.js +9 -0
  69. package/dist/admin/fields/index.js.map +1 -0
  70. package/dist/admin/index.d.ts +24 -0
  71. package/dist/admin/index.d.ts.map +1 -0
  72. package/dist/admin/index.js +30 -0
  73. package/dist/admin/index.js.map +1 -0
  74. package/dist/blocks/ContentBlocks.d.ts +75 -0
  75. package/dist/blocks/ContentBlocks.d.ts.map +1 -0
  76. package/dist/blocks/ContentBlocks.js +1241 -0
  77. package/dist/blocks/ContentBlocks.js.map +1 -0
  78. package/dist/blocks/index.d.ts +2 -0
  79. package/dist/blocks/index.d.ts.map +1 -0
  80. package/dist/blocks/index.js +3 -0
  81. package/dist/blocks/index.js.map +1 -0
  82. package/dist/client/PayloadAPIClient.d.ts +65 -0
  83. package/dist/client/PayloadAPIClient.d.ts.map +1 -0
  84. package/dist/client/PayloadAPIClient.js +167 -0
  85. package/dist/client/PayloadAPIClient.js.map +1 -0
  86. package/dist/collections/Automations.d.ts +12 -0
  87. package/dist/collections/Automations.d.ts.map +1 -0
  88. package/dist/collections/Automations.js +741 -0
  89. package/dist/collections/Automations.js.map +1 -0
  90. package/dist/collections/Features.d.ts +3 -0
  91. package/dist/collections/Features.d.ts.map +1 -0
  92. package/dist/collections/Features.js +69 -0
  93. package/dist/collections/Features.js.map +1 -0
  94. package/dist/collections/Footer.d.ts +11 -0
  95. package/dist/collections/Footer.d.ts.map +1 -0
  96. package/dist/collections/Footer.js +130 -0
  97. package/dist/collections/Footer.js.map +1 -0
  98. package/dist/collections/FormSubmissions.d.ts +3 -0
  99. package/dist/collections/FormSubmissions.d.ts.map +1 -0
  100. package/dist/collections/FormSubmissions.js +119 -0
  101. package/dist/collections/FormSubmissions.js.map +1 -0
  102. package/dist/collections/Forms.d.ts +16 -0
  103. package/dist/collections/Forms.d.ts.map +1 -0
  104. package/dist/collections/Forms.js +308 -0
  105. package/dist/collections/Forms.js.map +1 -0
  106. package/dist/collections/HeroBlocks.d.ts +3 -0
  107. package/dist/collections/HeroBlocks.d.ts.map +1 -0
  108. package/dist/collections/HeroBlocks.js +115 -0
  109. package/dist/collections/HeroBlocks.js.map +1 -0
  110. package/dist/collections/Media.d.ts +3 -0
  111. package/dist/collections/Media.d.ts.map +1 -0
  112. package/dist/collections/Media.js +26 -0
  113. package/dist/collections/Media.js.map +1 -0
  114. package/dist/collections/Navigation.d.ts +3 -0
  115. package/dist/collections/Navigation.d.ts.map +1 -0
  116. package/dist/collections/Navigation.js +106 -0
  117. package/dist/collections/Navigation.js.map +1 -0
  118. package/dist/collections/Pages.d.ts +3 -0
  119. package/dist/collections/Pages.d.ts.map +1 -0
  120. package/dist/collections/Pages.js +94 -0
  121. package/dist/collections/Pages.js.map +1 -0
  122. package/dist/collections/Posts.d.ts +3 -0
  123. package/dist/collections/Posts.d.ts.map +1 -0
  124. package/dist/collections/Posts.js +134 -0
  125. package/dist/collections/Posts.js.map +1 -0
  126. package/dist/collections/Products.d.ts +3 -0
  127. package/dist/collections/Products.d.ts.map +1 -0
  128. package/dist/collections/Products.js +264 -0
  129. package/dist/collections/Products.js.map +1 -0
  130. package/dist/collections/Users.d.ts +3 -0
  131. package/dist/collections/Users.d.ts.map +1 -0
  132. package/dist/collections/Users.js +53 -0
  133. package/dist/collections/Users.js.map +1 -0
  134. package/dist/collections/hooks/index.d.ts +9 -0
  135. package/dist/collections/hooks/index.d.ts.map +1 -0
  136. package/dist/collections/hooks/index.js +9 -0
  137. package/dist/collections/hooks/index.js.map +1 -0
  138. package/dist/collections/hooks/loggingHooks.d.ts +45 -0
  139. package/dist/collections/hooks/loggingHooks.d.ts.map +1 -0
  140. package/dist/collections/hooks/loggingHooks.js +109 -0
  141. package/dist/collections/hooks/loggingHooks.js.map +1 -0
  142. package/dist/collections/index.d.ts +14 -0
  143. package/dist/collections/index.d.ts.map +1 -0
  144. package/dist/collections/index.js +16 -0
  145. package/dist/collections/index.js.map +1 -0
  146. package/dist/components/index.d.ts +2 -0
  147. package/dist/components/index.d.ts.map +1 -0
  148. package/dist/components/index.js +4 -0
  149. package/dist/components/index.js.map +1 -0
  150. package/dist/globals/AdvancedSettings.d.ts +8 -0
  151. package/dist/globals/AdvancedSettings.d.ts.map +1 -0
  152. package/dist/globals/AdvancedSettings.js +157 -0
  153. package/dist/globals/AdvancedSettings.js.map +1 -0
  154. package/dist/globals/Integrations.d.ts +8 -0
  155. package/dist/globals/Integrations.d.ts.map +1 -0
  156. package/dist/globals/Integrations.js +270 -0
  157. package/dist/globals/Integrations.js.map +1 -0
  158. package/dist/globals/SiteSettings.d.ts +8 -0
  159. package/dist/globals/SiteSettings.d.ts.map +1 -0
  160. package/dist/globals/SiteSettings.js +258 -0
  161. package/dist/globals/SiteSettings.js.map +1 -0
  162. package/dist/globals/ThemeSettings.d.ts +11 -0
  163. package/dist/globals/ThemeSettings.d.ts.map +1 -0
  164. package/dist/globals/ThemeSettings.js +92 -0
  165. package/dist/globals/ThemeSettings.js.map +1 -0
  166. package/dist/globals/index.d.ts +5 -0
  167. package/dist/globals/index.d.ts.map +1 -0
  168. package/dist/globals/index.js +6 -0
  169. package/dist/globals/index.js.map +1 -0
  170. package/dist/index.d.ts +9 -0
  171. package/dist/index.d.ts.map +1 -0
  172. package/dist/index.js +14 -0
  173. package/dist/index.js.map +1 -0
  174. package/dist/logging/index.d.ts +73 -0
  175. package/dist/logging/index.d.ts.map +1 -0
  176. package/dist/logging/index.js +190 -0
  177. package/dist/logging/index.js.map +1 -0
  178. package/dist/nextjs/BlockRenderer.d.ts +227 -0
  179. package/dist/nextjs/BlockRenderer.d.ts.map +1 -0
  180. package/dist/nextjs/BlockRenderer.js +358 -0
  181. package/dist/nextjs/BlockRenderer.js.map +1 -0
  182. package/dist/nextjs/ClientHomePage.d.ts +6 -0
  183. package/dist/nextjs/ClientHomePage.d.ts.map +1 -0
  184. package/dist/nextjs/ClientHomePage.js +17 -0
  185. package/dist/nextjs/ClientHomePage.js.map +1 -0
  186. package/dist/nextjs/ClientSideQwickApp.d.ts +23 -0
  187. package/dist/nextjs/ClientSideQwickApp.d.ts.map +1 -0
  188. package/dist/nextjs/ClientSideQwickApp.js +50 -0
  189. package/dist/nextjs/ClientSideQwickApp.js.map +1 -0
  190. package/dist/nextjs/DynamicQwickApp.d.ts +9 -0
  191. package/dist/nextjs/DynamicQwickApp.d.ts.map +1 -0
  192. package/dist/nextjs/DynamicQwickApp.js +19 -0
  193. package/dist/nextjs/DynamicQwickApp.js.map +1 -0
  194. package/dist/nextjs/FooterFromSettings.d.ts +6 -0
  195. package/dist/nextjs/FooterFromSettings.d.ts.map +1 -0
  196. package/dist/nextjs/FooterFromSettings.js +72 -0
  197. package/dist/nextjs/FooterFromSettings.js.map +1 -0
  198. package/dist/nextjs/FormBlockComponent.d.ts +25 -0
  199. package/dist/nextjs/FormBlockComponent.d.ts.map +1 -0
  200. package/dist/nextjs/FormBlockComponent.js +110 -0
  201. package/dist/nextjs/FormBlockComponent.js.map +1 -0
  202. package/dist/nextjs/HomePageContent.d.ts +6 -0
  203. package/dist/nextjs/HomePageContent.d.ts.map +1 -0
  204. package/dist/nextjs/HomePageContent.js +50 -0
  205. package/dist/nextjs/HomePageContent.js.map +1 -0
  206. package/dist/nextjs/LivePreviewClient.d.ts +40 -0
  207. package/dist/nextjs/LivePreviewClient.d.ts.map +1 -0
  208. package/dist/nextjs/LivePreviewClient.js +35 -0
  209. package/dist/nextjs/LivePreviewClient.js.map +1 -0
  210. package/dist/nextjs/RefreshRouteOnSave.d.ts +31 -0
  211. package/dist/nextjs/RefreshRouteOnSave.d.ts.map +1 -0
  212. package/dist/nextjs/RefreshRouteOnSave.js +59 -0
  213. package/dist/nextjs/RefreshRouteOnSave.js.map +1 -0
  214. package/dist/nextjs/ScriptsInjector.d.ts +2 -0
  215. package/dist/nextjs/ScriptsInjector.d.ts.map +1 -0
  216. package/dist/nextjs/ScriptsInjector.js +73 -0
  217. package/dist/nextjs/ScriptsInjector.js.map +1 -0
  218. package/dist/nextjs/ServerQwickApp.d.ts +13 -0
  219. package/dist/nextjs/ServerQwickApp.d.ts.map +1 -0
  220. package/dist/nextjs/ServerQwickApp.js +159 -0
  221. package/dist/nextjs/ServerQwickApp.js.map +1 -0
  222. package/dist/nextjs/SettingsProvider.d.ts +110 -0
  223. package/dist/nextjs/SettingsProvider.d.ts.map +1 -0
  224. package/dist/nextjs/SettingsProvider.js +107 -0
  225. package/dist/nextjs/SettingsProvider.js.map +1 -0
  226. package/dist/nextjs/SiteLogo.d.ts +35 -0
  227. package/dist/nextjs/SiteLogo.d.ts.map +1 -0
  228. package/dist/nextjs/SiteLogo.js +105 -0
  229. package/dist/nextjs/SiteLogo.js.map +1 -0
  230. package/dist/nextjs/framework.d.ts +19 -0
  231. package/dist/nextjs/framework.d.ts.map +1 -0
  232. package/dist/nextjs/framework.js +35 -0
  233. package/dist/nextjs/framework.js.map +1 -0
  234. package/dist/nextjs/index.d.ts +38 -0
  235. package/dist/nextjs/index.d.ts.map +1 -0
  236. package/dist/nextjs/index.js +47 -0
  237. package/dist/nextjs/index.js.map +1 -0
  238. package/dist/nextjs/metadata.d.ts +20 -0
  239. package/dist/nextjs/metadata.d.ts.map +1 -0
  240. package/dist/nextjs/metadata.js +107 -0
  241. package/dist/nextjs/metadata.js.map +1 -0
  242. package/dist/plugins/index.d.ts +2 -0
  243. package/dist/plugins/index.d.ts.map +1 -0
  244. package/dist/plugins/index.js +3 -0
  245. package/dist/plugins/index.js.map +1 -0
  246. package/dist/plugins/qwickapps-plugin.d.ts +78 -0
  247. package/dist/plugins/qwickapps-plugin.d.ts.map +1 -0
  248. package/dist/plugins/qwickapps-plugin.js +154 -0
  249. package/dist/plugins/qwickapps-plugin.js.map +1 -0
  250. package/dist/providers/PayloadDataProvider.d.ts +72 -0
  251. package/dist/providers/PayloadDataProvider.d.ts.map +1 -0
  252. package/dist/providers/PayloadDataProvider.js +222 -0
  253. package/dist/providers/PayloadDataProvider.js.map +1 -0
  254. package/dist/providers/index.d.ts +2 -0
  255. package/dist/providers/index.d.ts.map +1 -0
  256. package/dist/providers/index.js +3 -0
  257. package/dist/providers/index.js.map +1 -0
  258. package/dist/styles/admin-theme.css +352 -0
  259. package/package.json +104 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/nextjs/index.ts"],"names":[],"mappings":"AACA;;;;;;;;;;;;;;;;;;;GAmBG;AACH,OAAO,sCAAsC,CAAC;AAG9C,OAAO,EAAE,cAAc,EAAE,KAAK,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC/E,OAAO,EAAE,kBAAkB,EAAE,KAAK,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAC3F,OAAO,EAAE,eAAe,EAAE,KAAK,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAGlF,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAG7D,OAAO,EAAE,cAAc,EAAE,KAAK,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC/E,OAAO,EAAE,eAAe,EAAE,KAAK,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAGlF,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAE,KAAK,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACrF,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,QAAQ,EAAE,KAAK,aAAa,EAAE,MAAM,eAAe,CAAC;AAG7D,OAAO,EAAE,kBAAkB,EAAE,KAAK,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAC3F,OAAO,EAAE,iBAAiB,EAAE,KAAK,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAGxF,OAAO,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAG5F,cAAc,gBAAgB,CAAC;AAG/B,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC"}
@@ -0,0 +1,47 @@
1
+ // @ts-nocheck
2
+ /**
3
+ * QwickApps CMS - Next.js Integration Components
4
+ *
5
+ * This module provides ready-to-use Next.js components for integrating
6
+ * Payload CMS with the QwickApps Framework.
7
+ *
8
+ * Components included:
9
+ * - ServerQwickApp: Server component that fetches navigation and settings from CMS
10
+ * - ClientSideQwickApp: Client wrapper for QwickApp with PayloadDataProvider
11
+ * - ClientQwickApp: Simple client QwickApp wrapper (deprecated - use ServerQwickApp)
12
+ * - BlockRenderer: Renders Payload blocks as QwickApps Framework components
13
+ * - FormBlockComponent: Form renderer with CAPTCHA support
14
+ * - ScriptsInjector: Injects analytics and custom scripts
15
+ * - SettingsProvider: React Context for site settings
16
+ * - ClientHomePage: Homepage client component
17
+ * - HomePageContent: Homepage content component
18
+ * - DynamicQwickApp: Dynamic QwickApp loader
19
+ *
20
+ * Copyright (c) 2025 QwickApps.com. All rights reserved.
21
+ */
22
+ import '@qwickapps/react-framework/index.css';
23
+ // Main app wrappers
24
+ export { ServerQwickApp } from './ServerQwickApp.js';
25
+ export { ClientSideQwickApp } from './ClientSideQwickApp.js';
26
+ export { DynamicQwickApp } from './DynamicQwickApp.js';
27
+ // Content rendering
28
+ export { BlockRenderer } from './BlockRenderer.js';
29
+ export { FormBlockComponent } from './FormBlockComponent.js';
30
+ // Homepage components
31
+ export { ClientHomePage } from './ClientHomePage.js';
32
+ export { HomePageContent } from './HomePageContent.js';
33
+ // Providers and utilities
34
+ export { SettingsProvider, useSettings } from './SettingsProvider.js';
35
+ export { ScriptsInjector } from './ScriptsInjector.js';
36
+ export { FooterFromSettings } from './FooterFromSettings.js';
37
+ export { SiteLogo } from './SiteLogo.js';
38
+ // Live Preview support
39
+ export { RefreshRouteOnSave } from './RefreshRouteOnSave.js';
40
+ export { LivePreviewClient } from './LivePreviewClient.js';
41
+ // Metadata utilities
42
+ export { generateRootMetadata, mergePageMetadata, getFaviconMetadata } from './metadata.js';
43
+ // Re-export framework components for convenience
44
+ export * from './framework.js';
45
+ // Re-export theme and palette providers for admin usage
46
+ export { ThemeProvider, PaletteProvider, useTheme, usePalette } from '@qwickapps/react-framework';
47
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/nextjs/index.ts"],"names":[],"mappings":"AAAA,cAAc;AACd;;;;;;;;;;;;;;;;;;;GAmBG;AACH,OAAO,sCAAsC,CAAC;AAE9C,oBAAoB;AACpB,OAAO,EAAE,cAAc,EAA4B,MAAM,qBAAqB,CAAC;AAC/E,OAAO,EAAE,kBAAkB,EAAgC,MAAM,yBAAyB,CAAC;AAC3F,OAAO,EAAE,eAAe,EAA6B,MAAM,sBAAsB,CAAC;AAElF,oBAAoB;AACpB,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAE7D,sBAAsB;AACtB,OAAO,EAAE,cAAc,EAA4B,MAAM,qBAAqB,CAAC;AAC/E,OAAO,EAAE,eAAe,EAA6B,MAAM,sBAAsB,CAAC;AAElF,0BAA0B;AAC1B,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAiB,MAAM,uBAAuB,CAAC;AACrF,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,QAAQ,EAAsB,MAAM,eAAe,CAAC;AAE7D,uBAAuB;AACvB,OAAO,EAAE,kBAAkB,EAAgC,MAAM,yBAAyB,CAAC;AAC3F,OAAO,EAAE,iBAAiB,EAA+B,MAAM,wBAAwB,CAAC;AAExF,qBAAqB;AACrB,OAAO,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAE5F,iDAAiD;AACjD,cAAc,gBAAgB,CAAC;AAE/B,wDAAwD;AACxD,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC"}
@@ -0,0 +1,20 @@
1
+ export declare const dynamic = "force-dynamic";
2
+ import type { Config } from 'payload';
3
+ import type { Metadata } from 'next';
4
+ import type { Settings } from './SettingsProvider';
5
+ /**
6
+ * Generate root layout metadata from CMS settings
7
+ * Used in app/layout.tsx for site-wide defaults
8
+ */
9
+ export declare function generateRootMetadata(config: Config): Promise<Metadata>;
10
+ /**
11
+ * Merge page-specific metadata with site defaults
12
+ * Used in individual page generateMetadata functions
13
+ */
14
+ export declare function mergePageMetadata(pageData: any, settings: Settings | null): Metadata;
15
+ /**
16
+ * Get favicon metadata from settings
17
+ * Helper for extracting favicon configuration
18
+ */
19
+ export declare function getFaviconMetadata(settings: Settings | null): Metadata['icons'];
20
+ //# sourceMappingURL=metadata.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"metadata.d.ts","sourceRoot":"","sources":["../../src/nextjs/metadata.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,OAAO,kBAAkB,CAAC;AAavC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACtC,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAC;AACrC,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAEnD;;;GAGG;AACH,wBAAsB,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,CA8C5E;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAC/B,QAAQ,EAAE,GAAG,EACb,QAAQ,EAAE,QAAQ,GAAG,IAAI,GACxB,QAAQ,CA4BV;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,QAAQ,GAAG,IAAI,GAAG,QAAQ,CAAC,OAAO,CAAC,CAU/E"}
@@ -0,0 +1,107 @@
1
+ export const dynamic = 'force-dynamic';
2
+ // @ts-nocheck
3
+ /**
4
+ * Metadata Generation Utilities
5
+ *
6
+ * Server-side utilities for generating Next.js metadata from Payload CMS settings.
7
+ * Used for SEO, social sharing, and browser metadata.
8
+ *
9
+ * Copyright (c) 2025 QwickApps.com. All rights reserved.
10
+ */
11
+ import { getPayload } from 'payload';
12
+ /**
13
+ * Generate root layout metadata from CMS settings
14
+ * Used in app/layout.tsx for site-wide defaults
15
+ */
16
+ export async function generateRootMetadata(config) {
17
+ try {
18
+ const payload = await getPayload({ config: config });
19
+ const [siteSettings, advancedSettings] = await Promise.all([
20
+ payload.findGlobal({ slug: 'site-settings', draft: false }).catch(() => ({})),
21
+ payload.findGlobal({ slug: 'advanced-settings', draft: false }).catch(() => ({})),
22
+ ]);
23
+ const siteName = siteSettings.siteName || 'QwickPress';
24
+ const siteDescription = siteSettings.siteDescription;
25
+ const faviconUrl = siteSettings.favicon?.url;
26
+ const defaultOgImageUrl = advancedSettings.seo?.defaultOgImage?.url;
27
+ const twitterHandle = siteSettings.socialMedia?.twitter;
28
+ return {
29
+ title: {
30
+ template: `%s | ${siteName}`,
31
+ default: siteName,
32
+ },
33
+ description: siteDescription,
34
+ icons: faviconUrl ? {
35
+ icon: faviconUrl,
36
+ shortcut: faviconUrl,
37
+ apple: faviconUrl,
38
+ } : undefined,
39
+ openGraph: {
40
+ siteName,
41
+ type: 'website',
42
+ images: defaultOgImageUrl ? [defaultOgImageUrl] : undefined,
43
+ },
44
+ twitter: {
45
+ card: 'summary_large_image',
46
+ site: twitterHandle,
47
+ },
48
+ };
49
+ }
50
+ catch (error) {
51
+ console.error('Error generating root metadata:', error);
52
+ // Return minimal fallback metadata
53
+ return {
54
+ title: {
55
+ template: '%s | QwickPress',
56
+ default: 'QwickPress',
57
+ },
58
+ };
59
+ }
60
+ }
61
+ /**
62
+ * Merge page-specific metadata with site defaults
63
+ * Used in individual page generateMetadata functions
64
+ */
65
+ export function mergePageMetadata(pageData, settings) {
66
+ const siteName = settings?.siteName || 'QwickPress';
67
+ const defaultDescription = settings?.seo?.defaultDescription;
68
+ const defaultKeywords = settings?.seo?.defaultKeywords;
69
+ const defaultOgImage = settings?.seo?.defaultOgImage?.url;
70
+ return {
71
+ title: pageData.seo?.title || pageData.title,
72
+ description: pageData.seo?.description || defaultDescription,
73
+ keywords: pageData.seo?.keywords || defaultKeywords,
74
+ openGraph: {
75
+ title: pageData.seo?.title || pageData.title,
76
+ description: pageData.seo?.description || defaultDescription,
77
+ siteName,
78
+ type: 'website',
79
+ images: pageData.seo?.ogImage?.url || defaultOgImage
80
+ ? [pageData.seo?.ogImage?.url || defaultOgImage]
81
+ : undefined,
82
+ },
83
+ twitter: {
84
+ card: 'summary_large_image',
85
+ title: pageData.seo?.title || pageData.title,
86
+ description: pageData.seo?.description || defaultDescription,
87
+ images: pageData.seo?.ogImage?.url || defaultOgImage
88
+ ? [pageData.seo?.ogImage?.url || defaultOgImage]
89
+ : undefined,
90
+ },
91
+ };
92
+ }
93
+ /**
94
+ * Get favicon metadata from settings
95
+ * Helper for extracting favicon configuration
96
+ */
97
+ export function getFaviconMetadata(settings) {
98
+ if (!settings?.favicon?.url) {
99
+ return undefined;
100
+ }
101
+ return {
102
+ icon: settings.favicon.url,
103
+ shortcut: settings.favicon.url,
104
+ apple: settings.favicon.url,
105
+ };
106
+ }
107
+ //# sourceMappingURL=metadata.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"metadata.js","sourceRoot":"","sources":["../../src/nextjs/metadata.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export { qwickappsPlugin } from './qwickapps-plugin.js';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/plugins/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA"}
@@ -0,0 +1,3 @@
1
+ // QwickApps CMS - Plugins
2
+ export { qwickappsPlugin } from './qwickapps-plugin.js';
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/plugins/index.ts"],"names":[],"mappings":"AAAA,0BAA0B;AAC1B,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA"}
@@ -0,0 +1,78 @@
1
+ import type { Plugin } from 'payload';
2
+ /**
3
+ * QwickApps Integration Plugin for Payload CMS
4
+ *
5
+ * This plugin integrates QwickApps React Framework components
6
+ * with Payload CMS, enabling visual page building and component
7
+ * serialization.
8
+ *
9
+ * Features:
10
+ * - Component serialization/deserialization
11
+ * - Visual builder UI
12
+ * - Live preview
13
+ * - Component library management
14
+ */
15
+ export interface QwickAppsPluginOptions {
16
+ /**
17
+ * Enable the visual builder UI
18
+ */
19
+ enableVisualBuilder?: boolean;
20
+ /**
21
+ * Custom component registry
22
+ */
23
+ components?: Record<string, any>;
24
+ /**
25
+ * Enable AI integration
26
+ */
27
+ enableAI?: boolean;
28
+ /**
29
+ * AI providers configuration
30
+ */
31
+ aiProviders?: string[];
32
+ /**
33
+ * Collections to enable QwickApps integration
34
+ */
35
+ collections?: string[];
36
+ }
37
+ export declare const qwickappsPlugin: (options?: QwickAppsPluginOptions) => Plugin;
38
+ /**
39
+ * Component Serialization Utilities
40
+ *
41
+ * These utilities help serialize and deserialize QwickApps components
42
+ * for storage in Payload CMS.
43
+ */
44
+ export declare const serializeComponent: (component: any) => string;
45
+ export declare const deserializeComponent: (data: string) => any;
46
+ /**
47
+ * Component Library
48
+ *
49
+ * Registry of available QwickApps components for the visual builder
50
+ */
51
+ export declare const getComponentLibrary: () => {
52
+ layout: {
53
+ id: string;
54
+ name: string;
55
+ category: string;
56
+ }[];
57
+ content: {
58
+ id: string;
59
+ name: string;
60
+ category: string;
61
+ }[];
62
+ media: {
63
+ id: string;
64
+ name: string;
65
+ category: string;
66
+ }[];
67
+ features: {
68
+ id: string;
69
+ name: string;
70
+ category: string;
71
+ }[];
72
+ navigation: {
73
+ id: string;
74
+ name: string;
75
+ category: string;
76
+ }[];
77
+ };
78
+ //# sourceMappingURL=qwickapps-plugin.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"qwickapps-plugin.d.ts","sourceRoot":"","sources":["../../src/plugins/qwickapps-plugin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAU,MAAM,EAAE,MAAM,SAAS,CAAC;AAE9C;;;;;;;;;;;;GAYG;AAEH,MAAM,WAAW,sBAAsB;IACrC;;OAEG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAE9B;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAEjC;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IAEvB;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;CACxB;AAED,eAAO,MAAM,eAAe,GAAI,UAAS,sBAA2B,KAAG,MAgHtE,CAAC;AAEF;;;;;GAKG;AAEH,eAAO,MAAM,kBAAkB,GAAI,WAAW,GAAG,KAAG,MAGnD,CAAC;AAEF,eAAO,MAAM,oBAAoB,GAAI,MAAM,MAAM,KAAG,GAGnD,CAAC;AAEF;;;;GAIG;AAEH,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;CA6B/B,CAAC"}
@@ -0,0 +1,154 @@
1
+ export const qwickappsPlugin = (options = {}) => {
2
+ const { enableVisualBuilder = true, components = {}, enableAI = false, aiProviders = [], collections = ['pages', 'posts'], } = options;
3
+ return (config) => {
4
+ // Add custom fields to collections
5
+ const enhancedCollections = config.collections?.map((collection) => {
6
+ // Only enhance specified collections
7
+ if (!collections.includes(collection.slug)) {
8
+ return collection;
9
+ }
10
+ return {
11
+ ...collection,
12
+ fields: [
13
+ ...collection.fields,
14
+ // Add QwickApps-specific fields if not already present
15
+ ...(collection.fields.some((f) => f.name === 'qwickappsBuilder')
16
+ ? []
17
+ : [
18
+ {
19
+ name: 'qwickappsBuilder',
20
+ type: 'group',
21
+ label: 'QwickApps Builder',
22
+ fields: [
23
+ {
24
+ name: 'enabled',
25
+ type: 'checkbox',
26
+ label: 'Use QwickApps Visual Builder',
27
+ defaultValue: true,
28
+ },
29
+ {
30
+ name: 'layout',
31
+ type: 'select',
32
+ label: 'Layout Template',
33
+ options: [
34
+ { label: 'Default', value: 'default' },
35
+ { label: 'Full Width', value: 'full-width' },
36
+ { label: 'Narrow', value: 'narrow' },
37
+ { label: 'Custom', value: 'custom' },
38
+ ],
39
+ defaultValue: 'default',
40
+ },
41
+ {
42
+ name: 'theme',
43
+ type: 'select',
44
+ label: 'Theme',
45
+ options: [
46
+ { label: 'Default', value: 'default' },
47
+ { label: 'Ocean', value: 'ocean' },
48
+ { label: 'Autumn', value: 'autumn' },
49
+ { label: 'Winter', value: 'winter' },
50
+ { label: 'Spring', value: 'spring' },
51
+ ],
52
+ defaultValue: 'default',
53
+ },
54
+ ],
55
+ },
56
+ ]),
57
+ ],
58
+ // Add custom admin components for visual builder
59
+ ...(enableVisualBuilder
60
+ ? {
61
+ admin: {
62
+ ...collection.admin,
63
+ components: {
64
+ ...collection.admin?.components,
65
+ // TODO: Add custom visual builder component
66
+ // views: {
67
+ // Edit: VisualBuilderView,
68
+ // },
69
+ },
70
+ },
71
+ }
72
+ : {}),
73
+ };
74
+ });
75
+ return {
76
+ ...config,
77
+ collections: enhancedCollections,
78
+ // Add custom endpoints for AI integration
79
+ ...(enableAI
80
+ ? {
81
+ endpoints: [
82
+ ...(config.endpoints || []),
83
+ {
84
+ path: '/ai/generate-content',
85
+ method: 'post',
86
+ handler: async (req) => {
87
+ // TODO: Implement AI content generation
88
+ return Response.json({ message: 'AI content generation endpoint' });
89
+ },
90
+ },
91
+ {
92
+ path: '/ai/optimize-seo',
93
+ method: 'post',
94
+ handler: async (req) => {
95
+ // TODO: Implement AI SEO optimization
96
+ return Response.json({ message: 'AI SEO optimization endpoint' });
97
+ },
98
+ },
99
+ ],
100
+ }
101
+ : {}),
102
+ };
103
+ };
104
+ };
105
+ /**
106
+ * Component Serialization Utilities
107
+ *
108
+ * These utilities help serialize and deserialize QwickApps components
109
+ * for storage in Payload CMS.
110
+ */
111
+ export const serializeComponent = (component) => {
112
+ // TODO: Integrate with @qwickapps/react-framework ComponentTransformer
113
+ return JSON.stringify(component);
114
+ };
115
+ export const deserializeComponent = (data) => {
116
+ // TODO: Integrate with @qwickapps/react-framework ComponentTransformer
117
+ return JSON.parse(data);
118
+ };
119
+ /**
120
+ * Component Library
121
+ *
122
+ * Registry of available QwickApps components for the visual builder
123
+ */
124
+ export const getComponentLibrary = () => {
125
+ return {
126
+ layout: [
127
+ { id: 'HeroBlock', name: 'Hero Block', category: 'Layout' },
128
+ { id: 'Section', name: 'Section', category: 'Layout' },
129
+ { id: 'GridLayout', name: 'Grid Layout', category: 'Layout' },
130
+ { id: 'CollapsibleLayout', name: 'Collapsible Layout', category: 'Layout' },
131
+ ],
132
+ content: [
133
+ { id: 'Text', name: 'Text', category: 'Content' },
134
+ { id: 'Content', name: 'Content Block', category: 'Content' },
135
+ { id: 'Article', name: 'Article', category: 'Content' },
136
+ { id: 'Html', name: 'HTML', category: 'Content' },
137
+ { id: 'Markdown', name: 'Markdown', category: 'Content' },
138
+ ],
139
+ media: [
140
+ { id: 'Image', name: 'Image', category: 'Media' },
141
+ { id: 'Code', name: 'Code Block', category: 'Media' },
142
+ ],
143
+ features: [
144
+ { id: 'FeatureGrid', name: 'Feature Grid', category: 'Features' },
145
+ { id: 'FeatureCard', name: 'Feature Card', category: 'Features' },
146
+ { id: 'ProductCard', name: 'Product Card', category: 'Features' },
147
+ ],
148
+ navigation: [
149
+ { id: 'ResponsiveMenu', name: 'Responsive Menu', category: 'Navigation' },
150
+ { id: 'Breadcrumbs', name: 'Breadcrumbs', category: 'Navigation' },
151
+ ],
152
+ };
153
+ };
154
+ //# sourceMappingURL=qwickapps-plugin.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"qwickapps-plugin.js","sourceRoot":"","sources":["../../src/plugins/qwickapps-plugin.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,72 @@
1
+ /**
2
+ * Payload CMS Data Provider Implementation
3
+ *
4
+ * Integrates Payload CMS with QwickApps React Framework data binding system.
5
+ * Fetches content from Payload REST API and transforms it to match framework schemas.
6
+ *
7
+ * Copyright (c) 2025 QwickApps.com. All rights reserved.
8
+ */
9
+ import { Model } from '@qwickapps/schema';
10
+ import { DataResponse, IDataProvider, SelectOptions } from '@qwickapps/schema';
11
+ /**
12
+ * Configuration for Payload Data Provider
13
+ */
14
+ export interface PayloadDataProviderConfig {
15
+ /** Base URL for Payload API (e.g., "http://localhost:3000/api") */
16
+ apiUrl?: string;
17
+ /** Enable debug logging */
18
+ debug?: boolean;
19
+ }
20
+ /**
21
+ * Payload CMS-based data provider for QwickApps Framework
22
+ *
23
+ * Fetches data from Payload REST API and provides it to framework components
24
+ * via the standard IDataProvider interface.
25
+ *
26
+ * Usage:
27
+ * ```tsx
28
+ * const payloadProvider = new PayloadDataProvider({
29
+ * apiUrl: 'http://localhost:3000/api'
30
+ * });
31
+ *
32
+ * <DataProvider dataSource={{ dataProvider: payloadProvider }}>
33
+ * <HeroBlock dataSource="hero-blocks" />
34
+ * </DataProvider>
35
+ * ```
36
+ */
37
+ export declare class PayloadDataProvider implements IDataProvider {
38
+ private apiUrl;
39
+ private debug;
40
+ constructor(config?: PayloadDataProviderConfig);
41
+ /**
42
+ * Get single data item by slug
43
+ *
44
+ * For Payload, slug can be:
45
+ * - Collection name (e.g., "hero-blocks") - returns first item
46
+ * - Collection with ID (e.g., "hero-blocks/1") - returns specific item
47
+ * - Nested path (e.g., "pages.home.hero") - navigates nested structure
48
+ */
49
+ get<T extends Model>(slug: string): Promise<DataResponse<T>>;
50
+ /**
51
+ * Select multiple data items with query options
52
+ *
53
+ * Maps framework SelectOptions to Payload API query parameters
54
+ */
55
+ select<T extends Model>(schema: string, options?: SelectOptions): Promise<DataResponse<T[]>>;
56
+ /**
57
+ * Parse slug into collection, ID, and nested path
58
+ */
59
+ private parseSlug;
60
+ /**
61
+ * Navigate nested path in object
62
+ */
63
+ private navigatePath;
64
+ /**
65
+ * Transform Payload data to match framework expectations
66
+ *
67
+ * Payload returns data with metadata (id, createdAt, updatedAt, etc.)
68
+ * This method can transform it to match framework component props
69
+ */
70
+ private transformPayloadData;
71
+ }
72
+ //# sourceMappingURL=PayloadDataProvider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PayloadDataProvider.d.ts","sourceRoot":"","sources":["../../src/providers/PayloadDataProvider.ts"],"names":[],"mappings":"AACA;;;;;;;GAOG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAE/E;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACxC,mEAAmE;IACnE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,2BAA2B;IAC3B,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,qBAAa,mBAAoB,YAAW,aAAa;IACvD,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,KAAK,CAAU;gBAEX,MAAM,GAAE,yBAA8B;IAKlD;;;;;;;OAOG;IACG,GAAG,CAAC,CAAC,SAAS,KAAK,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IAsElE;;;;OAIG;IACG,MAAM,CAAC,CAAC,SAAS,KAAK,EAC1B,MAAM,EAAE,MAAM,EACd,OAAO,GAAE,aAAkB,GAC1B,OAAO,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC;IA0D7B;;OAEG;IACH,OAAO,CAAC,SAAS;IAuBjB;;OAEG;IACH,OAAO,CAAC,YAAY;IAepB;;;;;OAKG;IACH,OAAO,CAAC,oBAAoB;CAsB7B"}