@delmaredigital/payload-puck 0.6.10 → 0.6.13

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 (583) hide show
  1. package/README.md +79 -1
  2. package/dist/admin/EditWithPuckButton.d.ts +1 -1
  3. package/dist/admin/EditWithPuckButton.d.ts.map +1 -1
  4. package/dist/admin/EditWithPuckButton.js +65 -25
  5. package/dist/admin/EditWithPuckButton.js.map +1 -1
  6. package/dist/admin/EditWithPuckCell.js +43 -13
  7. package/dist/admin/EditWithPuckCell.js.map +1 -1
  8. package/dist/admin/PuckEditorView.d.ts +1 -1
  9. package/dist/admin/PuckEditorView.d.ts.map +1 -1
  10. package/dist/admin/PuckEditorView.js +118 -32
  11. package/dist/admin/PuckEditorView.js.map +1 -1
  12. package/dist/admin/client.d.ts +2 -2
  13. package/dist/admin/client.d.ts.map +1 -1
  14. package/dist/admin/client.js +4 -4
  15. package/dist/admin/client.js.map +1 -1
  16. package/dist/admin/generateAdminComponents.js +7 -7
  17. package/dist/admin/generateAdminComponents.js.map +1 -1
  18. package/dist/admin/index.d.ts +5 -5
  19. package/dist/admin/index.d.ts.map +1 -1
  20. package/dist/admin/index.js +3 -2
  21. package/dist/admin/index.js.map +1 -1
  22. package/dist/ai/collections/AiContext.js +56 -29
  23. package/dist/ai/collections/AiContext.js.map +1 -1
  24. package/dist/ai/collections/AiPrompts.js +24 -19
  25. package/dist/ai/collections/AiPrompts.js.map +1 -1
  26. package/dist/ai/createAiApiRoutes.js +28 -19
  27. package/dist/ai/createAiApiRoutes.js.map +1 -1
  28. package/dist/ai/createAiGenerate.js +7 -8
  29. package/dist/ai/createAiGenerate.js.map +1 -1
  30. package/dist/ai/createAiPlugin.js +7 -9
  31. package/dist/ai/createAiPlugin.js.map +1 -1
  32. package/dist/ai/hooks/useAiContext.js +50 -39
  33. package/dist/ai/hooks/useAiContext.js.map +1 -1
  34. package/dist/ai/hooks/useAiPrompts.js +33 -25
  35. package/dist/ai/hooks/useAiPrompts.js.map +1 -1
  36. package/dist/ai/index.js +9 -10
  37. package/dist/ai/index.js.map +1 -1
  38. package/dist/ai/plugins/ContextEditorPanel.d.ts +1 -1
  39. package/dist/ai/plugins/ContextEditorPanel.d.ts.map +1 -1
  40. package/dist/ai/plugins/ContextEditorPanel.js +399 -107
  41. package/dist/ai/plugins/ContextEditorPanel.js.map +1 -1
  42. package/dist/ai/plugins/PromptEditorPanel.d.ts +1 -1
  43. package/dist/ai/plugins/PromptEditorPanel.d.ts.map +1 -1
  44. package/dist/ai/plugins/PromptEditorPanel.js +237 -51
  45. package/dist/ai/plugins/PromptEditorPanel.js.map +1 -1
  46. package/dist/ai/plugins/contextEditorPlugin.js +12 -5
  47. package/dist/ai/plugins/contextEditorPlugin.js.map +1 -1
  48. package/dist/ai/plugins/promptApiRoutes.js +119 -50
  49. package/dist/ai/plugins/promptApiRoutes.js.map +1 -1
  50. package/dist/ai/plugins/promptEditorPlugin.js +12 -5
  51. package/dist/ai/plugins/promptEditorPlugin.js.map +1 -1
  52. package/dist/ai/presets/componentAiDefaults.js +108 -83
  53. package/dist/ai/presets/componentAiDefaults.js.map +1 -1
  54. package/dist/ai/presets/index.js +12 -18
  55. package/dist/ai/presets/index.js.map +1 -1
  56. package/dist/ai/presets/instructions/interactive.js +85 -75
  57. package/dist/ai/presets/instructions/interactive.js.map +1 -1
  58. package/dist/ai/presets/instructions/layout.js +122 -117
  59. package/dist/ai/presets/instructions/layout.js.map +1 -1
  60. package/dist/ai/presets/instructions/media.js +31 -29
  61. package/dist/ai/presets/instructions/media.js.map +1 -1
  62. package/dist/ai/presets/instructions/pagePatterns.js +4 -6
  63. package/dist/ai/presets/instructions/pagePatterns.js.map +1 -1
  64. package/dist/ai/presets/instructions/schemas.js +495 -137
  65. package/dist/ai/presets/instructions/schemas.js.map +1 -1
  66. package/dist/ai/presets/instructions/typography.js +38 -33
  67. package/dist/ai/presets/instructions/typography.js.map +1 -1
  68. package/dist/ai/tools/index.js +92 -55
  69. package/dist/ai/tools/index.js.map +1 -1
  70. package/dist/ai/types.js +7 -1
  71. package/dist/ai/types.js.map +1 -1
  72. package/dist/ai/utils/injectAiConfig.js +33 -40
  73. package/dist/ai/utils/injectAiConfig.js.map +1 -1
  74. package/dist/api/createPuckApiRoutes.d.ts +1 -1
  75. package/dist/api/createPuckApiRoutes.d.ts.map +1 -1
  76. package/dist/api/createPuckApiRoutes.js +123 -65
  77. package/dist/api/createPuckApiRoutes.js.map +1 -1
  78. package/dist/api/createPuckApiRoutesVersions.d.ts +1 -1
  79. package/dist/api/createPuckApiRoutesVersions.d.ts.map +1 -1
  80. package/dist/api/createPuckApiRoutesVersions.js +88 -37
  81. package/dist/api/createPuckApiRoutesVersions.js.map +1 -1
  82. package/dist/api/createPuckApiRoutesWithId.d.ts +1 -1
  83. package/dist/api/createPuckApiRoutesWithId.d.ts.map +1 -1
  84. package/dist/api/createPuckApiRoutesWithId.js +166 -72
  85. package/dist/api/createPuckApiRoutesWithId.js.map +1 -1
  86. package/dist/api/index.d.ts +5 -5
  87. package/dist/api/index.d.ts.map +1 -1
  88. package/dist/api/index.js +6 -6
  89. package/dist/api/index.js.map +1 -1
  90. package/dist/api/payload-config.d.js +15 -0
  91. package/dist/api/payload-config.d.js.map +1 -0
  92. package/dist/api/types.js +4 -1
  93. package/dist/api/types.js.map +1 -1
  94. package/dist/api/utils/mapRootProps.d.ts +1 -1
  95. package/dist/api/utils/mapRootProps.d.ts.map +1 -1
  96. package/dist/api/utils/mapRootProps.js +77 -44
  97. package/dist/api/utils/mapRootProps.js.map +1 -1
  98. package/dist/collections/Templates.js +24 -20
  99. package/dist/collections/Templates.js.map +1 -1
  100. package/dist/components/AccordionClient.d.ts +2 -2
  101. package/dist/components/AccordionClient.d.ts.map +1 -1
  102. package/dist/components/AccordionClient.js +81 -22
  103. package/dist/components/AccordionClient.js.map +1 -1
  104. package/dist/components/AnimatedWrapper.d.ts +2 -2
  105. package/dist/components/AnimatedWrapper.d.ts.map +1 -1
  106. package/dist/components/AnimatedWrapper.js +31 -16
  107. package/dist/components/AnimatedWrapper.js.map +1 -1
  108. package/dist/components/exports.js +2 -2
  109. package/dist/components/exports.js.map +1 -1
  110. package/dist/components/index.d.ts +5 -5
  111. package/dist/components/index.d.ts.map +1 -1
  112. package/dist/components/index.js +7 -7
  113. package/dist/components/index.js.map +1 -1
  114. package/dist/components/interactive/Accordion.d.ts +1 -1
  115. package/dist/components/interactive/Accordion.d.ts.map +1 -1
  116. package/dist/components/interactive/Accordion.js +149 -55
  117. package/dist/components/interactive/Accordion.js.map +1 -1
  118. package/dist/components/interactive/Accordion.server.d.ts +1 -1
  119. package/dist/components/interactive/Accordion.server.d.ts.map +1 -1
  120. package/dist/components/interactive/Accordion.server.js +25 -7
  121. package/dist/components/interactive/Accordion.server.js.map +1 -1
  122. package/dist/components/interactive/Button.d.ts +3 -3
  123. package/dist/components/interactive/Button.d.ts.map +1 -1
  124. package/dist/components/interactive/Button.js +89 -43
  125. package/dist/components/interactive/Button.js.map +1 -1
  126. package/dist/components/interactive/Button.server.d.ts +2 -2
  127. package/dist/components/interactive/Button.server.d.ts.map +1 -1
  128. package/dist/components/interactive/Button.server.js +40 -20
  129. package/dist/components/interactive/Button.server.js.map +1 -1
  130. package/dist/components/interactive/Card.d.ts +3 -3
  131. package/dist/components/interactive/Card.d.ts.map +1 -1
  132. package/dist/components/interactive/Card.js +131 -39
  133. package/dist/components/interactive/Card.js.map +1 -1
  134. package/dist/components/interactive/Card.server.d.ts +3 -3
  135. package/dist/components/interactive/Card.server.d.ts.map +1 -1
  136. package/dist/components/interactive/Card.server.js +72 -11
  137. package/dist/components/interactive/Card.server.js.map +1 -1
  138. package/dist/components/interactive/Divider.d.ts +1 -1
  139. package/dist/components/interactive/Divider.d.ts.map +1 -1
  140. package/dist/components/interactive/Divider.js +54 -26
  141. package/dist/components/interactive/Divider.js.map +1 -1
  142. package/dist/components/interactive/Divider.server.d.ts +1 -1
  143. package/dist/components/interactive/Divider.server.d.ts.map +1 -1
  144. package/dist/components/interactive/Divider.server.js +28 -12
  145. package/dist/components/interactive/Divider.server.js.map +1 -1
  146. package/dist/components/interactive/index.d.ts +4 -4
  147. package/dist/components/interactive/index.d.ts.map +1 -1
  148. package/dist/components/interactive/index.js +5 -5
  149. package/dist/components/interactive/index.js.map +1 -1
  150. package/dist/components/layout/Container.d.ts +1 -1
  151. package/dist/components/layout/Container.d.ts.map +1 -1
  152. package/dist/components/layout/Container.js +101 -47
  153. package/dist/components/layout/Container.js.map +1 -1
  154. package/dist/components/layout/Container.server.d.ts +1 -1
  155. package/dist/components/layout/Container.server.d.ts.map +1 -1
  156. package/dist/components/layout/Container.server.js +67 -19
  157. package/dist/components/layout/Container.server.js.map +1 -1
  158. package/dist/components/layout/Flex.d.ts +2 -2
  159. package/dist/components/layout/Flex.d.ts.map +1 -1
  160. package/dist/components/layout/Flex.js +124 -55
  161. package/dist/components/layout/Flex.js.map +1 -1
  162. package/dist/components/layout/Flex.server.d.ts +1 -1
  163. package/dist/components/layout/Flex.server.d.ts.map +1 -1
  164. package/dist/components/layout/Flex.server.js +50 -14
  165. package/dist/components/layout/Flex.server.js.map +1 -1
  166. package/dist/components/layout/Grid.d.ts +1 -1
  167. package/dist/components/layout/Grid.d.ts.map +1 -1
  168. package/dist/components/layout/Grid.js +93 -44
  169. package/dist/components/layout/Grid.js.map +1 -1
  170. package/dist/components/layout/Grid.server.d.ts +1 -1
  171. package/dist/components/layout/Grid.server.d.ts.map +1 -1
  172. package/dist/components/layout/Grid.server.js +56 -14
  173. package/dist/components/layout/Grid.server.js.map +1 -1
  174. package/dist/components/layout/Section.d.ts +1 -1
  175. package/dist/components/layout/Section.d.ts.map +1 -1
  176. package/dist/components/layout/Section.js +147 -64
  177. package/dist/components/layout/Section.js.map +1 -1
  178. package/dist/components/layout/Section.server.d.ts +1 -1
  179. package/dist/components/layout/Section.server.d.ts.map +1 -1
  180. package/dist/components/layout/Section.server.js +92 -28
  181. package/dist/components/layout/Section.server.js.map +1 -1
  182. package/dist/components/layout/Spacer.d.ts +1 -1
  183. package/dist/components/layout/Spacer.d.ts.map +1 -1
  184. package/dist/components/layout/Spacer.js +80 -30
  185. package/dist/components/layout/Spacer.js.map +1 -1
  186. package/dist/components/layout/Spacer.server.d.ts +1 -1
  187. package/dist/components/layout/Spacer.server.d.ts.map +1 -1
  188. package/dist/components/layout/Spacer.server.js +31 -9
  189. package/dist/components/layout/Spacer.server.js.map +1 -1
  190. package/dist/components/layout/Template.d.ts +1 -1
  191. package/dist/components/layout/Template.d.ts.map +1 -1
  192. package/dist/components/layout/Template.js +58 -30
  193. package/dist/components/layout/Template.js.map +1 -1
  194. package/dist/components/layout/Template.server.d.ts +1 -1
  195. package/dist/components/layout/Template.server.d.ts.map +1 -1
  196. package/dist/components/layout/Template.server.js +43 -11
  197. package/dist/components/layout/Template.server.js.map +1 -1
  198. package/dist/components/layout/index.d.ts +8 -8
  199. package/dist/components/layout/index.d.ts.map +1 -1
  200. package/dist/components/layout/index.js +8 -8
  201. package/dist/components/layout/index.js.map +1 -1
  202. package/dist/components/media/Image.d.ts +3 -3
  203. package/dist/components/media/Image.d.ts.map +1 -1
  204. package/dist/components/media/Image.js +122 -39
  205. package/dist/components/media/Image.js.map +1 -1
  206. package/dist/components/media/Image.server.d.ts +3 -3
  207. package/dist/components/media/Image.server.d.ts.map +1 -1
  208. package/dist/components/media/Image.server.js +76 -13
  209. package/dist/components/media/Image.server.js.map +1 -1
  210. package/dist/components/media/index.d.ts +1 -1
  211. package/dist/components/media/index.d.ts.map +1 -1
  212. package/dist/components/media/index.js +2 -2
  213. package/dist/components/media/index.js.map +1 -1
  214. package/dist/components/typography/Heading.d.ts +2 -2
  215. package/dist/components/typography/Heading.d.ts.map +1 -1
  216. package/dist/components/typography/Heading.js +45 -25
  217. package/dist/components/typography/Heading.js.map +1 -1
  218. package/dist/components/typography/Heading.server.d.ts +2 -2
  219. package/dist/components/typography/Heading.server.d.ts.map +1 -1
  220. package/dist/components/typography/Heading.server.js +16 -10
  221. package/dist/components/typography/Heading.server.js.map +1 -1
  222. package/dist/components/typography/RichText.editor.d.ts +1 -1
  223. package/dist/components/typography/RichText.editor.d.ts.map +1 -1
  224. package/dist/components/typography/RichText.editor.js +44 -19
  225. package/dist/components/typography/RichText.editor.js.map +1 -1
  226. package/dist/components/typography/RichText.server.d.ts +2 -2
  227. package/dist/components/typography/RichText.server.d.ts.map +1 -1
  228. package/dist/components/typography/RichText.server.js +33 -14
  229. package/dist/components/typography/RichText.server.js.map +1 -1
  230. package/dist/components/typography/Text.d.ts +2 -2
  231. package/dist/components/typography/Text.d.ts.map +1 -1
  232. package/dist/components/typography/Text.js +49 -23
  233. package/dist/components/typography/Text.js.map +1 -1
  234. package/dist/components/typography/Text.server.d.ts +2 -2
  235. package/dist/components/typography/Text.server.d.ts.map +1 -1
  236. package/dist/components/typography/Text.server.js +21 -8
  237. package/dist/components/typography/Text.server.js.map +1 -1
  238. package/dist/components/typography/index.d.ts +4 -4
  239. package/dist/components/typography/index.d.ts.map +1 -1
  240. package/dist/components/typography/index.js +5 -5
  241. package/dist/components/typography/index.js.map +1 -1
  242. package/dist/config/config.editor.d.ts +3 -3
  243. package/dist/config/config.editor.d.ts.map +1 -1
  244. package/dist/config/config.editor.js +119 -54
  245. package/dist/config/config.editor.js.map +1 -1
  246. package/dist/config/index.d.ts +4 -4
  247. package/dist/config/index.d.ts.map +1 -1
  248. package/dist/config/index.js +62 -35
  249. package/dist/config/index.js.map +1 -1
  250. package/dist/config/merge.d.ts +1 -1
  251. package/dist/config/merge.d.ts.map +1 -1
  252. package/dist/config/merge.js +23 -26
  253. package/dist/config/merge.js.map +1 -1
  254. package/dist/config/presets.d.ts +4 -4
  255. package/dist/config/presets.js +195 -75
  256. package/dist/config/presets.js.map +1 -1
  257. package/dist/config/types.js +6 -2
  258. package/dist/config/types.js.map +1 -1
  259. package/dist/editor/PuckEditor.d.ts +12 -4
  260. package/dist/editor/PuckEditor.d.ts.map +1 -1
  261. package/dist/editor/PuckEditor.js +168 -67
  262. package/dist/editor/PuckEditor.js.map +1 -1
  263. package/dist/editor/PuckEditorImpl.client.d.ts +4 -4
  264. package/dist/editor/PuckEditorImpl.client.d.ts.map +1 -1
  265. package/dist/editor/PuckEditorImpl.client.js +304 -152
  266. package/dist/editor/PuckEditorImpl.client.js.map +1 -1
  267. package/dist/editor/components/DarkModeStyles.js +11 -12
  268. package/dist/editor/components/DarkModeStyles.js.map +1 -1
  269. package/dist/editor/components/HeaderActions.js +308 -64
  270. package/dist/editor/components/HeaderActions.js.map +1 -1
  271. package/dist/editor/components/IframeWrapper.d.ts +1 -1
  272. package/dist/editor/components/IframeWrapper.d.ts.map +1 -1
  273. package/dist/editor/components/IframeWrapper.js +82 -58
  274. package/dist/editor/components/IframeWrapper.js.map +1 -1
  275. package/dist/editor/components/LoadingState.d.ts +1 -1
  276. package/dist/editor/components/LoadingState.d.ts.map +1 -1
  277. package/dist/editor/components/LoadingState.js +17 -3
  278. package/dist/editor/components/LoadingState.js.map +1 -1
  279. package/dist/editor/components/PreviewModal.js +234 -78
  280. package/dist/editor/components/PreviewModal.js.map +1 -1
  281. package/dist/editor/components/PreviewModeToggle.js +43 -15
  282. package/dist/editor/components/PreviewModeToggle.js.map +1 -1
  283. package/dist/editor/components/VersionHistory.js +219 -71
  284. package/dist/editor/components/VersionHistory.js.map +1 -1
  285. package/dist/editor/hooks/useDarkMode.js +36 -23
  286. package/dist/editor/hooks/useDarkMode.js.map +1 -1
  287. package/dist/editor/hooks/useUnsavedChanges.js +8 -8
  288. package/dist/editor/hooks/useUnsavedChanges.js.map +1 -1
  289. package/dist/editor/index.js +5 -6
  290. package/dist/editor/index.js.map +1 -1
  291. package/dist/editor/plugins/VersionHistoryPanel.js +236 -75
  292. package/dist/editor/plugins/VersionHistoryPanel.js.map +1 -1
  293. package/dist/editor/plugins/index.js +4 -4
  294. package/dist/editor/plugins/index.js.map +1 -1
  295. package/dist/editor/plugins/versionHistoryPlugin.js +10 -8
  296. package/dist/editor/plugins/versionHistoryPlugin.js.map +1 -1
  297. package/dist/editor/utils/detectPageTree.js +5 -5
  298. package/dist/editor/utils/detectPageTree.js.map +1 -1
  299. package/dist/editor/utils/index.js +1 -0
  300. package/dist/editor/utils/index.js.map +1 -1
  301. package/dist/editor/utils/injectPageTreeFields.js +13 -9
  302. package/dist/editor/utils/injectPageTreeFields.js.map +1 -1
  303. package/dist/endpoints/ai.js +58 -34
  304. package/dist/endpoints/ai.js.map +1 -1
  305. package/dist/endpoints/context.js +86 -40
  306. package/dist/endpoints/context.js.map +1 -1
  307. package/dist/endpoints/index.js +153 -76
  308. package/dist/endpoints/index.js.map +1 -1
  309. package/dist/endpoints/postcss.d.js +5 -0
  310. package/dist/endpoints/postcss.d.js.map +1 -0
  311. package/dist/endpoints/prompts.js +81 -39
  312. package/dist/endpoints/prompts.js.map +1 -1
  313. package/dist/endpoints/styles.js +34 -36
  314. package/dist/endpoints/styles.js.map +1 -1
  315. package/dist/exports/client.js +2 -2
  316. package/dist/exports/client.js.map +1 -1
  317. package/dist/exports/rsc.js +2 -2
  318. package/dist/exports/rsc.js.map +1 -1
  319. package/dist/fields/AlignmentField.d.ts +1 -1
  320. package/dist/fields/AlignmentField.d.ts.map +1 -1
  321. package/dist/fields/AlignmentField.js +93 -30
  322. package/dist/fields/AlignmentField.js.map +1 -1
  323. package/dist/fields/AnimationField.d.ts +2 -2
  324. package/dist/fields/AnimationField.d.ts.map +1 -1
  325. package/dist/fields/AnimationField.js +558 -84
  326. package/dist/fields/AnimationField.js.map +1 -1
  327. package/dist/fields/BackgroundField.d.ts +2 -2
  328. package/dist/fields/BackgroundField.d.ts.map +1 -1
  329. package/dist/fields/BackgroundField.js +754 -120
  330. package/dist/fields/BackgroundField.js.map +1 -1
  331. package/dist/fields/BorderField.d.ts +2 -2
  332. package/dist/fields/BorderField.d.ts.map +1 -1
  333. package/dist/fields/BorderField.js +275 -73
  334. package/dist/fields/BorderField.js.map +1 -1
  335. package/dist/fields/ColorPickerField.d.ts +2 -2
  336. package/dist/fields/ColorPickerField.d.ts.map +1 -1
  337. package/dist/fields/ColorPickerField.js +210 -68
  338. package/dist/fields/ColorPickerField.js.map +1 -1
  339. package/dist/fields/ContentAlignmentField.d.ts +1 -1
  340. package/dist/fields/ContentAlignmentField.d.ts.map +1 -1
  341. package/dist/fields/ContentAlignmentField.js +161 -75
  342. package/dist/fields/ContentAlignmentField.js.map +1 -1
  343. package/dist/fields/DimensionsField.d.ts +2 -2
  344. package/dist/fields/DimensionsField.d.ts.map +1 -1
  345. package/dist/fields/DimensionsField.js +575 -146
  346. package/dist/fields/DimensionsField.js.map +1 -1
  347. package/dist/fields/FlexAlignmentField.d.ts +2 -2
  348. package/dist/fields/FlexAlignmentField.d.ts.map +1 -1
  349. package/dist/fields/FlexAlignmentField.js +189 -51
  350. package/dist/fields/FlexAlignmentField.js.map +1 -1
  351. package/dist/fields/FolderPickerField.d.ts +8 -1
  352. package/dist/fields/FolderPickerField.d.ts.map +1 -1
  353. package/dist/fields/FolderPickerField.js +288 -75
  354. package/dist/fields/FolderPickerField.js.map +1 -1
  355. package/dist/fields/GradientEditor.d.ts +2 -2
  356. package/dist/fields/GradientEditor.d.ts.map +1 -1
  357. package/dist/fields/GradientEditor.js +462 -86
  358. package/dist/fields/GradientEditor.js.map +1 -1
  359. package/dist/fields/LockedField.d.ts +15 -2
  360. package/dist/fields/LockedField.d.ts.map +1 -1
  361. package/dist/fields/LockedField.js +180 -49
  362. package/dist/fields/LockedField.js.map +1 -1
  363. package/dist/fields/MarginField.d.ts +2 -2
  364. package/dist/fields/MarginField.d.ts.map +1 -1
  365. package/dist/fields/MarginField.js +144 -46
  366. package/dist/fields/MarginField.js.map +1 -1
  367. package/dist/fields/MediaField.d.ts +1 -1
  368. package/dist/fields/MediaField.d.ts.map +1 -1
  369. package/dist/fields/MediaField.js +688 -186
  370. package/dist/fields/MediaField.js.map +1 -1
  371. package/dist/fields/PaddingField.d.ts +2 -2
  372. package/dist/fields/PaddingField.d.ts.map +1 -1
  373. package/dist/fields/PaddingField.js +144 -46
  374. package/dist/fields/PaddingField.js.map +1 -1
  375. package/dist/fields/PageSegmentField.d.ts +15 -2
  376. package/dist/fields/PageSegmentField.d.ts.map +1 -1
  377. package/dist/fields/PageSegmentField.js +156 -54
  378. package/dist/fields/PageSegmentField.js.map +1 -1
  379. package/dist/fields/ResetField.d.ts +1 -1
  380. package/dist/fields/ResetField.d.ts.map +1 -1
  381. package/dist/fields/ResetField.js +59 -31
  382. package/dist/fields/ResetField.js.map +1 -1
  383. package/dist/fields/ResponsiveField.d.ts +1 -1
  384. package/dist/fields/ResponsiveField.d.ts.map +1 -1
  385. package/dist/fields/ResponsiveField.js +233 -90
  386. package/dist/fields/ResponsiveField.js.map +1 -1
  387. package/dist/fields/ResponsiveVisibilityField.d.ts +2 -2
  388. package/dist/fields/ResponsiveVisibilityField.d.ts.map +1 -1
  389. package/dist/fields/ResponsiveVisibilityField.js +119 -36
  390. package/dist/fields/ResponsiveVisibilityField.js.map +1 -1
  391. package/dist/fields/SizeField.d.ts +3 -3
  392. package/dist/fields/SizeField.d.ts.map +1 -1
  393. package/dist/fields/SizeField.js +226 -52
  394. package/dist/fields/SizeField.js.map +1 -1
  395. package/dist/fields/SlugPreviewField.d.ts +8 -1
  396. package/dist/fields/SlugPreviewField.d.ts.map +1 -1
  397. package/dist/fields/SlugPreviewField.js +65 -16
  398. package/dist/fields/SlugPreviewField.js.map +1 -1
  399. package/dist/fields/TemplateField.d.ts +1 -1
  400. package/dist/fields/TemplateField.d.ts.map +1 -1
  401. package/dist/fields/TemplateField.js +362 -120
  402. package/dist/fields/TemplateField.js.map +1 -1
  403. package/dist/fields/TransformField.d.ts +2 -2
  404. package/dist/fields/TransformField.d.ts.map +1 -1
  405. package/dist/fields/TransformField.js +517 -81
  406. package/dist/fields/TransformField.js.map +1 -1
  407. package/dist/fields/VerticalAlignmentField.d.ts +1 -1
  408. package/dist/fields/VerticalAlignmentField.d.ts.map +1 -1
  409. package/dist/fields/VerticalAlignmentField.js +93 -30
  410. package/dist/fields/VerticalAlignmentField.js.map +1 -1
  411. package/dist/fields/WidthField.d.ts +2 -2
  412. package/dist/fields/WidthField.d.ts.map +1 -1
  413. package/dist/fields/WidthField.js +278 -81
  414. package/dist/fields/WidthField.js.map +1 -1
  415. package/dist/fields/index.d.ts +41 -41
  416. package/dist/fields/index.d.ts.map +1 -1
  417. package/dist/fields/index.js +37 -43
  418. package/dist/fields/index.js.map +1 -1
  419. package/dist/fields/richtext/controls/ColorPickerControl.d.ts +13 -2
  420. package/dist/fields/richtext/controls/ColorPickerControl.d.ts.map +1 -1
  421. package/dist/fields/richtext/controls/ColorPickerControl.js +212 -47
  422. package/dist/fields/richtext/controls/ColorPickerControl.js.map +1 -1
  423. package/dist/fields/richtext/controls/DropdownPortal.d.ts +2 -2
  424. package/dist/fields/richtext/controls/DropdownPortal.d.ts.map +1 -1
  425. package/dist/fields/richtext/controls/DropdownPortal.js +36 -4
  426. package/dist/fields/richtext/controls/DropdownPortal.js.map +1 -1
  427. package/dist/fields/richtext/controls/FontSizeControl.d.ts +9 -1
  428. package/dist/fields/richtext/controls/FontSizeControl.d.ts.map +1 -1
  429. package/dist/fields/richtext/controls/FontSizeControl.js +109 -24
  430. package/dist/fields/richtext/controls/FontSizeControl.js.map +1 -1
  431. package/dist/fields/richtext/controls/HighlightControl.d.ts +12 -1
  432. package/dist/fields/richtext/controls/HighlightControl.d.ts.map +1 -1
  433. package/dist/fields/richtext/controls/HighlightControl.js +54 -17
  434. package/dist/fields/richtext/controls/HighlightControl.js.map +1 -1
  435. package/dist/fields/richtext/controls/index.d.ts +5 -5
  436. package/dist/fields/richtext/controls/index.d.ts.map +1 -1
  437. package/dist/fields/richtext/controls/index.js +8 -11
  438. package/dist/fields/richtext/controls/index.js.map +1 -1
  439. package/dist/fields/richtext/controls/shared.js +108 -63
  440. package/dist/fields/richtext/controls/shared.js.map +1 -1
  441. package/dist/fields/richtext/createRichTextField.d.ts +18 -4
  442. package/dist/fields/richtext/createRichTextField.d.ts.map +1 -1
  443. package/dist/fields/richtext/createRichTextField.js +113 -26
  444. package/dist/fields/richtext/createRichTextField.js.map +1 -1
  445. package/dist/fields/richtext/extensions/FontSize.js +26 -20
  446. package/dist/fields/richtext/extensions/FontSize.js.map +1 -1
  447. package/dist/fields/richtext/extensions/index.d.ts +1 -1
  448. package/dist/fields/richtext/extensions/index.d.ts.map +1 -1
  449. package/dist/fields/richtext/extensions/index.js +2 -2
  450. package/dist/fields/richtext/extensions/index.js.map +1 -1
  451. package/dist/fields/richtext/index.d.ts +6 -6
  452. package/dist/fields/richtext/index.d.ts.map +1 -1
  453. package/dist/fields/richtext/index.js +8 -8
  454. package/dist/fields/richtext/index.js.map +1 -1
  455. package/dist/fields/shared.d.ts +1 -1
  456. package/dist/fields/shared.d.ts.map +1 -1
  457. package/dist/fields/shared.js +915 -478
  458. package/dist/fields/shared.js.map +1 -1
  459. package/dist/hooks/index.d.ts +2 -2
  460. package/dist/hooks/index.d.ts.map +1 -1
  461. package/dist/hooks/index.js +3 -3
  462. package/dist/hooks/index.js.map +1 -1
  463. package/dist/hooks/useResponsiveStyles.d.ts +1 -1
  464. package/dist/hooks/useResponsiveStyles.d.ts.map +1 -1
  465. package/dist/hooks/useResponsiveStyles.js +36 -32
  466. package/dist/hooks/useResponsiveStyles.js.map +1 -1
  467. package/dist/hooks/useScrollAnimation.js +26 -24
  468. package/dist/hooks/useScrollAnimation.js.map +1 -1
  469. package/dist/index.d.ts +4 -4
  470. package/dist/index.d.ts.map +1 -1
  471. package/dist/index.js +5 -5
  472. package/dist/index.js.map +1 -1
  473. package/dist/layouts/LayoutWrapper.d.ts +3 -3
  474. package/dist/layouts/LayoutWrapper.d.ts.map +1 -1
  475. package/dist/layouts/LayoutWrapper.js +115 -51
  476. package/dist/layouts/LayoutWrapper.js.map +1 -1
  477. package/dist/layouts/defaults.d.ts +1 -1
  478. package/dist/layouts/defaults.d.ts.map +1 -1
  479. package/dist/layouts/defaults.js +23 -31
  480. package/dist/layouts/defaults.js.map +1 -1
  481. package/dist/layouts/index.d.ts +4 -4
  482. package/dist/layouts/index.d.ts.map +1 -1
  483. package/dist/layouts/index.js +5 -4
  484. package/dist/layouts/index.js.map +1 -1
  485. package/dist/layouts/types.js +4 -2
  486. package/dist/layouts/types.js.map +1 -1
  487. package/dist/layouts/utils.d.ts +1 -1
  488. package/dist/layouts/utils.d.ts.map +1 -1
  489. package/dist/layouts/utils.js +32 -40
  490. package/dist/layouts/utils.js.map +1 -1
  491. package/dist/next/index.js +31 -34
  492. package/dist/next/index.js.map +1 -1
  493. package/dist/plugin/collections/Pages.d.ts +2 -2
  494. package/dist/plugin/collections/Pages.d.ts.map +1 -1
  495. package/dist/plugin/collections/Pages.js +46 -43
  496. package/dist/plugin/collections/Pages.js.map +1 -1
  497. package/dist/plugin/fields/index.d.ts +3 -3
  498. package/dist/plugin/fields/index.d.ts.map +1 -1
  499. package/dist/plugin/fields/index.js +100 -78
  500. package/dist/plugin/fields/index.js.map +1 -1
  501. package/dist/plugin/fields/types.d.ts +1 -1
  502. package/dist/plugin/fields/types.d.ts.map +1 -1
  503. package/dist/plugin/fields/types.js +26 -2
  504. package/dist/plugin/fields/types.js.map +1 -1
  505. package/dist/plugin/hooks/index.d.ts +1 -1
  506. package/dist/plugin/hooks/index.d.ts.map +1 -1
  507. package/dist/plugin/hooks/index.js +2 -2
  508. package/dist/plugin/hooks/index.js.map +1 -1
  509. package/dist/plugin/hooks/isHomepageUnique.js +28 -19
  510. package/dist/plugin/hooks/isHomepageUnique.js.map +1 -1
  511. package/dist/plugin/index.d.ts +8 -8
  512. package/dist/plugin/index.d.ts.map +1 -1
  513. package/dist/plugin/index.js +192 -188
  514. package/dist/plugin/index.js.map +1 -1
  515. package/dist/render/HybridPageRenderer.d.ts +2 -2
  516. package/dist/render/HybridPageRenderer.d.ts.map +1 -1
  517. package/dist/render/HybridPageRenderer.js +58 -10
  518. package/dist/render/HybridPageRenderer.js.map +1 -1
  519. package/dist/render/PageRenderer.d.ts +2 -2
  520. package/dist/render/PageRenderer.d.ts.map +1 -1
  521. package/dist/render/PageRenderer.js +31 -14
  522. package/dist/render/PageRenderer.js.map +1 -1
  523. package/dist/render/PuckEditor.client.d.ts +1 -1
  524. package/dist/render/PuckEditor.client.d.ts.map +1 -1
  525. package/dist/render/PuckEditor.client.js +33 -16
  526. package/dist/render/PuckEditor.client.js.map +1 -1
  527. package/dist/render/index.d.ts +5 -5
  528. package/dist/render/index.d.ts.map +1 -1
  529. package/dist/render/index.js +5 -6
  530. package/dist/render/index.js.map +1 -1
  531. package/dist/styles/puck-dark-mode.css +101 -0
  532. package/dist/theme/context.d.ts +2 -2
  533. package/dist/theme/context.d.ts.map +1 -1
  534. package/dist/theme/context.js +21 -18
  535. package/dist/theme/context.js.map +1 -1
  536. package/dist/theme/defaults.d.ts +1 -1
  537. package/dist/theme/defaults.d.ts.map +1 -1
  538. package/dist/theme/defaults.js +83 -37
  539. package/dist/theme/defaults.js.map +1 -1
  540. package/dist/theme/example.d.ts +1 -1
  541. package/dist/theme/example.d.ts.map +1 -1
  542. package/dist/theme/example.js +68 -30
  543. package/dist/theme/example.js.map +1 -1
  544. package/dist/theme/index.d.ts +5 -5
  545. package/dist/theme/index.d.ts.map +1 -1
  546. package/dist/theme/index.js +6 -5
  547. package/dist/theme/index.js.map +1 -1
  548. package/dist/theme/types.js +6 -2
  549. package/dist/theme/types.js.map +1 -1
  550. package/dist/theme/utils.d.ts +1 -1
  551. package/dist/theme/utils.d.ts.map +1 -1
  552. package/dist/theme/utils.js +24 -25
  553. package/dist/theme/utils.js.map +1 -1
  554. package/dist/types/index.d.ts +42 -6
  555. package/dist/types/index.d.ts.map +1 -1
  556. package/dist/types/index.js +3 -1
  557. package/dist/types/index.js.map +1 -1
  558. package/dist/utils/index.d.ts +2 -2
  559. package/dist/utils/index.d.ts.map +1 -1
  560. package/dist/utils/index.js +13 -22
  561. package/dist/utils/index.js.map +1 -1
  562. package/dist/utils/migration.d.ts +1 -1
  563. package/dist/utils/migration.d.ts.map +1 -1
  564. package/dist/utils/migration.js +43 -49
  565. package/dist/utils/migration.js.map +1 -1
  566. package/dist/utils/validation.d.ts +1 -1
  567. package/dist/utils/validation.d.ts.map +1 -1
  568. package/dist/utils/validation.js +36 -43
  569. package/dist/utils/validation.js.map +1 -1
  570. package/dist/version.d.ts +1 -1
  571. package/dist/version.js +2 -1
  572. package/dist/version.js.map +1 -1
  573. package/dist/views/PuckConfigContext.d.ts +1 -1
  574. package/dist/views/PuckConfigContext.d.ts.map +1 -1
  575. package/dist/views/PuckConfigContext.js +25 -10
  576. package/dist/views/PuckConfigContext.js.map +1 -1
  577. package/dist/views/PuckEditorView.d.ts +1 -1
  578. package/dist/views/PuckEditorView.d.ts.map +1 -1
  579. package/dist/views/PuckEditorView.js +137 -41
  580. package/dist/views/PuckEditorView.js.map +1 -1
  581. package/dist/views/index.js +2 -2
  582. package/dist/views/index.js.map +1 -1
  583. package/package.json +62 -42
@@ -1,4 +1,4 @@
1
- import { colorSchema, alignmentSchema, sizeSchema, transformSchema, backgroundSchema, borderSchema, } from './schemas.js';
1
+ import { colorSchema, alignmentSchema, sizeSchema, transformSchema, backgroundSchema, borderSchema } from './schemas.js';
2
2
  /**
3
3
  * Comprehensive AI instructions for interactive components
4
4
  *
@@ -6,8 +6,7 @@ import { colorSchema, alignmentSchema, sizeSchema, transformSchema, backgroundSc
6
6
  * - Button, Card, Accordion, and Divider usage
7
7
  * - Correct field names and recommended values
8
8
  * - Common patterns and compositions
9
- */
10
- export const interactiveInstructions = {
9
+ */ export const interactiveInstructions = {
11
10
  Button: {
12
11
  ai: {
13
12
  instructions: `Button component for calls-to-action and links.
@@ -40,66 +39,66 @@ COMMON PATTERNS:
40
39
 
41
40
  COMPOSITION:
42
41
  - Flex (row, gap: 16) > Button (default) + Button (outline) for button pairs
43
- - Section > Flex (column, center) > Content + Button for section CTAs`,
42
+ - Section > Flex (column, center) > Content + Button for section CTAs`
44
43
  },
45
44
  fields: {
46
45
  text: {
47
46
  ai: {
48
47
  required: true,
49
- instructions: 'Button text. Use action verbs: "Get Started", "Learn More", "Contact Us", "Sign Up", "Download Now".',
50
- },
48
+ instructions: 'Button text. Use action verbs: "Get Started", "Learn More", "Contact Us", "Sign Up", "Download Now".'
49
+ }
51
50
  },
52
51
  link: {
53
52
  ai: {
54
53
  required: true,
55
- instructions: 'URL the button links to. Use "#" as placeholder if URL is unknown. Use "/" for home, "/contact" for contact page, etc.',
56
- },
54
+ instructions: 'URL the button links to. Use "#" as placeholder if URL is unknown. Use "/" for home, "/contact" for contact page, etc.'
55
+ }
57
56
  },
58
57
  variant: {
59
58
  ai: {
60
- instructions: "'default' (primary, filled), 'secondary' (alternate style), 'outline' (bordered, transparent). Use 'default' for main CTAs.",
61
- },
59
+ instructions: "'default' (primary, filled), 'secondary' (alternate style), 'outline' (bordered, transparent). Use 'default' for main CTAs."
60
+ }
62
61
  },
63
62
  size: {
64
63
  ai: {
65
64
  instructions: `Button size preset. Use 'lg' for hero buttons, 'default' elsewhere.
66
65
  Example: { mode: 'lg' } or { mode: 'default' }`,
67
- schema: sizeSchema,
68
- },
66
+ schema: sizeSchema
67
+ }
69
68
  },
70
69
  openInNewTab: {
71
70
  ai: {
72
- instructions: "'yes' or 'no'. Use 'yes' for external links, 'no' for internal navigation.",
73
- },
71
+ instructions: "'yes' or 'no'. Use 'yes' for external links, 'no' for internal navigation."
72
+ }
74
73
  },
75
74
  alignment: {
76
75
  ai: {
77
76
  instructions: "'left', 'center', or 'right'. Typically 'center' for standalone buttons, 'left' in content areas.",
78
- schema: alignmentSchema,
79
- },
77
+ schema: alignmentSchema
78
+ }
80
79
  },
81
80
  customBackgroundColor: {
82
81
  ai: {
83
82
  instructions: `Custom background color (overrides variant). Use sparingly.
84
83
  Example: { hex: '#3b82f6', opacity: 100 }`,
85
- schema: colorSchema,
86
- },
84
+ schema: colorSchema
85
+ }
87
86
  },
88
87
  customTextColor: {
89
88
  ai: {
90
89
  instructions: `Custom text color (overrides variant). Use sparingly.
91
90
  Example: { hex: '#ffffff', opacity: 100 }`,
92
- schema: colorSchema,
93
- },
91
+ schema: colorSchema
92
+ }
94
93
  },
95
94
  transform: {
96
95
  ai: {
97
96
  instructions: `CSS transforms for rotation, scale, etc. Usually leave unset.
98
97
  Example: { rotate: 0, scaleX: 1, scaleY: 1, origin: 'center' }`,
99
- schema: transformSchema,
100
- },
101
- },
102
- },
98
+ schema: transformSchema
99
+ }
100
+ }
101
+ }
103
102
  },
104
103
  Card: {
105
104
  ai: {
@@ -133,69 +132,69 @@ STYLING:
133
132
  COMPOSITION:
134
133
  - Grid (3 columns) > Card + Card + Card (feature grid)
135
134
  - Grid (4 columns) > Card + Card + Card + Card (team grid)
136
- - Flex (row) > Card + Card + Card (scrollable row)`,
135
+ - Flex (row) > Card + Card + Card (scrollable row)`
137
136
  },
138
137
  fields: {
139
138
  heading: {
140
139
  ai: {
141
140
  required: true,
142
- instructions: 'Card title. Keep concise - 2-5 words typically. For features: "Fast Performance". For team: "Jane Smith".',
143
- },
141
+ instructions: 'Card title. Keep concise - 2-5 words typically. For features: "Fast Performance". For team: "Jane Smith".'
142
+ }
144
143
  },
145
144
  text: {
146
145
  ai: {
147
- instructions: 'Card description. 1-3 sentences. For features: explain the benefit. For team: job title and brief bio.',
148
- },
146
+ instructions: 'Card description. 1-3 sentences. For features: explain the benefit. For team: job title and brief bio.'
147
+ }
149
148
  },
150
149
  image: {
151
150
  ai: {
152
151
  exclude: true,
153
- instructions: 'AI cannot select images from media library. Leave unset or provide alt text.',
154
- },
152
+ instructions: 'AI cannot select images from media library. Leave unset or provide alt text.'
153
+ }
155
154
  },
156
155
  link: {
157
156
  ai: {
158
- instructions: 'Optional URL to make card clickable. Use for blog posts, products, or "learn more" functionality.',
159
- },
157
+ instructions: 'Optional URL to make card clickable. Use for blog posts, products, or "learn more" functionality.'
158
+ }
160
159
  },
161
160
  openInNewTab: {
162
161
  ai: {
163
- instructions: "'yes' or 'no'. Use 'no' for internal links.",
164
- },
162
+ instructions: "'yes' or 'no'. Use 'no' for internal links."
163
+ }
165
164
  },
166
165
  shadow: {
167
166
  ai: {
168
- instructions: "'none', 'sm', 'md', 'lg', 'xl'. Use 'md' for subtle elevation, 'lg' for prominent cards.",
169
- },
167
+ instructions: "'none', 'sm', 'md', 'lg', 'xl'. Use 'md' for subtle elevation, 'lg' for prominent cards."
168
+ }
170
169
  },
171
170
  alignment: {
172
171
  ai: {
173
172
  instructions: "'left', 'center', or 'right'. Usually 'left' for cards.",
174
- schema: alignmentSchema,
175
- },
173
+ schema: alignmentSchema
174
+ }
176
175
  },
177
176
  background: {
178
177
  ai: {
179
178
  instructions: `Custom background color for the card.
180
179
  Example: { type: 'solid', solid: { hex: '#f8fafc' } }`,
181
- schema: backgroundSchema,
182
- },
180
+ schema: backgroundSchema
181
+ }
183
182
  },
184
183
  border: {
185
184
  ai: {
186
185
  instructions: `Border styling for the card.
187
186
  Example: { style: 'solid', width: 1, color: { hex: '#e5e7eb' }, radius: 12, sides: { top: true, right: true, bottom: true, left: true } }`,
188
- schema: borderSchema,
189
- },
187
+ schema: borderSchema
188
+ }
190
189
  },
191
190
  transform: {
192
191
  ai: {
193
192
  instructions: `CSS transforms for rotation, scale, etc. Usually leave unset.
194
193
  Example: { rotate: 0, scaleX: 1, scaleY: 1, origin: 'center' }`,
195
- schema: transformSchema,
196
- },
197
- },
198
- },
194
+ schema: transformSchema
195
+ }
196
+ }
197
+ }
199
198
  },
200
199
  Accordion: {
201
200
  ai: {
@@ -228,7 +227,7 @@ Each item in the items array needs:
228
227
 
229
228
  COMPOSITION:
230
229
  - Section > Container > Heading (h2 "FAQ") + Accordion
231
- - Section > Flex (column) > Heading + Text + Accordion`,
230
+ - Section > Flex (column) > Heading + Text + Accordion`
232
231
  },
233
232
  fields: {
234
233
  items: {
@@ -248,33 +247,39 @@ Example: [
248
247
  items: {
249
248
  type: 'object',
250
249
  properties: {
251
- title: { type: 'string' },
252
- content: { type: 'string' },
253
- defaultOpen: { type: 'boolean' },
254
- },
255
- },
256
- },
257
- },
250
+ title: {
251
+ type: 'string'
252
+ },
253
+ content: {
254
+ type: 'string'
255
+ },
256
+ defaultOpen: {
257
+ type: 'boolean'
258
+ }
259
+ }
260
+ }
261
+ }
262
+ }
258
263
  },
259
264
  allowMultiple: {
260
265
  ai: {
261
- instructions: "'yes' to allow multiple items open simultaneously, 'no' for FAQ-style (one at a time). Default: no.",
262
- },
266
+ instructions: "'yes' to allow multiple items open simultaneously, 'no' for FAQ-style (one at a time). Default: no."
267
+ }
263
268
  },
264
269
  textColor: {
265
270
  ai: {
266
271
  instructions: `Optional text color for accordion headers and content.
267
272
  Example: { hex: '#1f2937', opacity: 100 }`,
268
- schema: colorSchema,
269
- },
273
+ schema: colorSchema
274
+ }
270
275
  },
271
276
  transform: {
272
277
  ai: {
273
278
  instructions: `CSS transforms. Usually leave unset for accordions.`,
274
- schema: transformSchema,
275
- },
276
- },
277
- },
279
+ schema: transformSchema
280
+ }
281
+ }
282
+ }
278
283
  },
279
284
  Divider: {
280
285
  ai: {
@@ -303,32 +308,37 @@ WHEN TO USE:
303
308
  WHEN NOT TO USE:
304
309
  - Between page sections (use Section component backgrounds)
305
310
  - Above every heading (use spacing instead)
306
- - As decoration without purpose`,
311
+ - As decoration without purpose`
307
312
  },
308
313
  fields: {
309
314
  style: {
310
315
  ai: {
311
- instructions: "'solid' (default), 'dashed', or 'dotted'.",
312
- },
316
+ instructions: "'solid' (default), 'dashed', or 'dotted'."
317
+ }
313
318
  },
314
319
  color: {
315
320
  ai: {
316
321
  instructions: `Optional color for the divider line.
317
322
  Example: { hex: '#e5e7eb', opacity: 100 }`,
318
- schema: colorSchema,
319
- },
323
+ schema: colorSchema
324
+ }
320
325
  },
321
326
  transform: {
322
327
  ai: {
323
328
  instructions: `CSS transforms. Usually leave unset for dividers.`,
324
- schema: transformSchema,
325
- },
326
- },
327
- },
328
- },
329
+ schema: transformSchema
330
+ }
331
+ }
332
+ }
333
+ }
329
334
  };
330
335
  /**
331
336
  * Interactive component names for reference
332
- */
333
- export const interactiveComponents = ['Button', 'Card', 'Accordion', 'Divider'];
337
+ */ export const interactiveComponents = [
338
+ 'Button',
339
+ 'Card',
340
+ 'Accordion',
341
+ 'Divider'
342
+ ];
343
+
334
344
  //# sourceMappingURL=interactive.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"interactive.js","sourceRoot":"","sources":["../../../../src/ai/presets/instructions/interactive.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"sources":["../../../../src/ai/presets/instructions/interactive.ts"],"sourcesContent":["import type { ComponentAiOverrides } from '../../types.js'\nimport {\n colorSchema,\n alignmentSchema,\n sizeSchema,\n transformSchema,\n backgroundSchema,\n borderSchema,\n} from './schemas.js'\n\n/**\n * Comprehensive AI instructions for interactive components\n *\n * These instructions teach the AI:\n * - Button, Card, Accordion, and Divider usage\n * - Correct field names and recommended values\n * - Common patterns and compositions\n */\nexport const interactiveInstructions: ComponentAiOverrides = {\n Button: {\n ai: {\n instructions: `Button component for calls-to-action and links.\n\nPURPOSE:\n- Primary and secondary call-to-action buttons\n- Navigation links styled as buttons\n- Form submission triggers (visual only - actual forms need implementation)\n\nUSAGE GUIDELINES:\n- Use action-oriented text: \"Get Started\", \"Learn More\", \"Contact Us\", \"Sign Up\"\n- Avoid generic text like \"Click Here\" or \"Submit\"\n- Primary variant for main CTA, secondary/outline for supporting actions\n\nVARIANTS:\n- 'default': Primary button with filled background (use for main CTAs)\n- 'secondary': Secondary styling (use for less important actions)\n- 'outline': Bordered with transparent background (use for subtle actions)\n\nSIZES:\n- 'sm': Small, compact buttons\n- 'default': Standard size (recommended for most uses)\n- 'lg': Large, prominent buttons (hero CTAs)\n\nCOMMON PATTERNS:\n- Hero CTA: Two buttons in Flex(row) - primary \"Get Started\" + outline \"Learn More\"\n- Card CTA: Single button at bottom of card\n- Section CTA: Centered button below section content\n- Navigation: Multiple outline buttons in a row\n\nCOMPOSITION:\n- Flex (row, gap: 16) > Button (default) + Button (outline) for button pairs\n- Section > Flex (column, center) > Content + Button for section CTAs`,\n },\n fields: {\n text: {\n ai: {\n required: true,\n instructions:\n 'Button text. Use action verbs: \"Get Started\", \"Learn More\", \"Contact Us\", \"Sign Up\", \"Download Now\".',\n },\n },\n link: {\n ai: {\n required: true,\n instructions:\n 'URL the button links to. Use \"#\" as placeholder if URL is unknown. Use \"/\" for home, \"/contact\" for contact page, etc.',\n },\n },\n variant: {\n ai: {\n instructions:\n \"'default' (primary, filled), 'secondary' (alternate style), 'outline' (bordered, transparent). Use 'default' for main CTAs.\",\n },\n },\n size: {\n ai: {\n instructions: `Button size preset. Use 'lg' for hero buttons, 'default' elsewhere.\nExample: { mode: 'lg' } or { mode: 'default' }`,\n schema: sizeSchema,\n },\n },\n openInNewTab: {\n ai: {\n instructions:\n \"'yes' or 'no'. Use 'yes' for external links, 'no' for internal navigation.\",\n },\n },\n alignment: {\n ai: {\n instructions:\n \"'left', 'center', or 'right'. Typically 'center' for standalone buttons, 'left' in content areas.\",\n schema: alignmentSchema,\n },\n },\n customBackgroundColor: {\n ai: {\n instructions: `Custom background color (overrides variant). Use sparingly.\nExample: { hex: '#3b82f6', opacity: 100 }`,\n schema: colorSchema,\n },\n },\n customTextColor: {\n ai: {\n instructions: `Custom text color (overrides variant). Use sparingly.\nExample: { hex: '#ffffff', opacity: 100 }`,\n schema: colorSchema,\n },\n },\n transform: {\n ai: {\n instructions: `CSS transforms for rotation, scale, etc. Usually leave unset.\nExample: { rotate: 0, scaleX: 1, scaleY: 1, origin: 'center' }`,\n schema: transformSchema,\n },\n },\n },\n },\n\n Card: {\n ai: {\n instructions: `Card component for featured content blocks.\n\nPURPOSE:\n- Feature cards with image, title, and description\n- Team member profiles\n- Product or service highlights\n- Testimonial cards\n- Blog post previews\n\nUSAGE GUIDELINES:\n- Always include a heading - it's the card's title\n- Text is optional but recommended for context\n- Image is optional but adds visual appeal\n- Link makes the entire card clickable\n\nCOMMON PATTERNS:\n- Feature Card: heading + text (no image for icon-style features)\n- Team Card: image (avatar) + heading (name) + text (role/bio)\n- Product Card: image + heading (product name) + text (description) + link\n- Testimonial Card: text (quote) + heading (person name)\n- Blog Card: image + heading (title) + text (excerpt) + link\n\nSTYLING:\n- shadow: 'none', 'sm', 'md', 'lg', 'xl' - use 'md' for subtle elevation\n- border: Optional border for flat design\n- background: Optional custom background color\n\nCOMPOSITION:\n- Grid (3 columns) > Card + Card + Card (feature grid)\n- Grid (4 columns) > Card + Card + Card + Card (team grid)\n- Flex (row) > Card + Card + Card (scrollable row)`,\n },\n fields: {\n heading: {\n ai: {\n required: true,\n instructions:\n 'Card title. Keep concise - 2-5 words typically. For features: \"Fast Performance\". For team: \"Jane Smith\".',\n },\n },\n text: {\n ai: {\n instructions:\n 'Card description. 1-3 sentences. For features: explain the benefit. For team: job title and brief bio.',\n },\n },\n image: {\n ai: {\n exclude: true,\n instructions: 'AI cannot select images from media library. Leave unset or provide alt text.',\n },\n },\n link: {\n ai: {\n instructions:\n 'Optional URL to make card clickable. Use for blog posts, products, or \"learn more\" functionality.',\n },\n },\n openInNewTab: {\n ai: {\n instructions: \"'yes' or 'no'. Use 'no' for internal links.\",\n },\n },\n shadow: {\n ai: {\n instructions:\n \"'none', 'sm', 'md', 'lg', 'xl'. Use 'md' for subtle elevation, 'lg' for prominent cards.\",\n },\n },\n alignment: {\n ai: {\n instructions: \"'left', 'center', or 'right'. Usually 'left' for cards.\",\n schema: alignmentSchema,\n },\n },\n background: {\n ai: {\n instructions: `Custom background color for the card.\nExample: { type: 'solid', solid: { hex: '#f8fafc' } }`,\n schema: backgroundSchema,\n },\n },\n border: {\n ai: {\n instructions: `Border styling for the card.\nExample: { style: 'solid', width: 1, color: { hex: '#e5e7eb' }, radius: 12, sides: { top: true, right: true, bottom: true, left: true } }`,\n schema: borderSchema,\n },\n },\n transform: {\n ai: {\n instructions: `CSS transforms for rotation, scale, etc. Usually leave unset.\nExample: { rotate: 0, scaleX: 1, scaleY: 1, origin: 'center' }`,\n schema: transformSchema,\n },\n },\n },\n },\n\n Accordion: {\n ai: {\n instructions: `Accordion component for collapsible content sections.\n\nPURPOSE:\n- FAQ (Frequently Asked Questions) sections\n- Expandable feature lists\n- Terms and conditions sections\n- Step-by-step guides\n- Collapsible documentation\n\nUSAGE GUIDELINES:\n- Each item needs a title (question/header) and content (answer/body)\n- Set defaultOpen: true for items that should be expanded initially\n- Use allowMultiple: false for FAQ style (one open at a time)\n- Use allowMultiple: true for reference/docs style (multiple can be open)\n\nCOMMON PATTERNS:\n- FAQ Section: 5-10 items, allowMultiple: false\n- Feature Details: 3-5 items explaining features in depth\n- Pricing FAQ: Common billing/pricing questions\n- Support/Help: Troubleshooting steps\n\nITEM STRUCTURE:\nEach item in the items array needs:\n- title: The clickable header (e.g., \"How do I reset my password?\")\n- content: The expandable content (can be multiple paragraphs)\n- defaultOpen: Boolean, whether expanded by default\n\nCOMPOSITION:\n- Section > Container > Heading (h2 \"FAQ\") + Accordion\n- Section > Flex (column) > Heading + Text + Accordion`,\n },\n fields: {\n items: {\n ai: {\n required: true,\n instructions: `Array of accordion items. Each item needs:\n- title (string): The clickable header text\n- content (string): The expandable body content\n- defaultOpen (boolean): Whether to show expanded initially\n\nExample: [\n { title: \"What is your return policy?\", content: \"We offer 30-day returns...\", defaultOpen: false },\n { title: \"How do I contact support?\", content: \"Email us at support@...\", defaultOpen: false }\n]`,\n schema: {\n type: 'array',\n items: {\n type: 'object',\n properties: {\n title: { type: 'string' },\n content: { type: 'string' },\n defaultOpen: { type: 'boolean' },\n },\n },\n },\n },\n },\n allowMultiple: {\n ai: {\n instructions:\n \"'yes' to allow multiple items open simultaneously, 'no' for FAQ-style (one at a time). Default: no.\",\n },\n },\n textColor: {\n ai: {\n instructions: `Optional text color for accordion headers and content.\nExample: { hex: '#1f2937', opacity: 100 }`,\n schema: colorSchema,\n },\n },\n transform: {\n ai: {\n instructions: `CSS transforms. Usually leave unset for accordions.`,\n schema: transformSchema,\n },\n },\n },\n },\n\n Divider: {\n ai: {\n instructions: `Divider component for horizontal line separators.\n\nPURPOSE:\n- Visual separation between content sections\n- Breaking up long content areas\n- Subtle section boundaries\n\nUSAGE GUIDELINES:\n- Use sparingly - whitespace often works better\n- Good for separating distinct content within a Section\n- Not needed between Sections (use Section backgrounds instead)\n\nSTYLES:\n- 'solid': Standard line (default)\n- 'dashed': Dashed line (subtle, informal)\n- 'dotted': Dotted line (decorative)\n\nWHEN TO USE:\n- Between paragraphs of distinct topics\n- Above or below a quote/callout\n- In footer to separate sections\n\nWHEN NOT TO USE:\n- Between page sections (use Section component backgrounds)\n- Above every heading (use spacing instead)\n- As decoration without purpose`,\n },\n fields: {\n style: {\n ai: {\n instructions: \"'solid' (default), 'dashed', or 'dotted'.\",\n },\n },\n color: {\n ai: {\n instructions: `Optional color for the divider line.\nExample: { hex: '#e5e7eb', opacity: 100 }`,\n schema: colorSchema,\n },\n },\n transform: {\n ai: {\n instructions: `CSS transforms. Usually leave unset for dividers.`,\n schema: transformSchema,\n },\n },\n },\n },\n}\n\n/**\n * Interactive component names for reference\n */\nexport const interactiveComponents = ['Button', 'Card', 'Accordion', 'Divider'] as const\n"],"names":["colorSchema","alignmentSchema","sizeSchema","transformSchema","backgroundSchema","borderSchema","interactiveInstructions","Button","ai","instructions","fields","text","required","link","variant","size","schema","openInNewTab","alignment","customBackgroundColor","customTextColor","transform","Card","heading","image","exclude","shadow","background","border","Accordion","items","type","properties","title","content","defaultOpen","allowMultiple","textColor","Divider","style","color","interactiveComponents"],"mappings":"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"}