@delmaredigital/payload-puck 0.3.1 → 0.6.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 (467) hide show
  1. package/README.md +396 -19
  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 +2 -2
  5. package/dist/admin/EditWithPuckButton.js.map +1 -1
  6. package/dist/admin/EditWithPuckCell.js +1 -1
  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 +1 -1
  11. package/dist/admin/PuckEditorView.js.map +1 -1
  12. package/dist/admin/generateAdminComponents.d.ts +1 -1
  13. package/dist/admin/generateAdminComponents.js +1 -1
  14. package/dist/admin/generateAdminComponents.js.map +1 -1
  15. package/dist/ai/collections/AiContext.d.ts +16 -0
  16. package/dist/ai/collections/AiContext.d.ts.map +1 -0
  17. package/dist/ai/collections/AiContext.js +87 -0
  18. package/dist/ai/collections/AiContext.js.map +1 -0
  19. package/dist/ai/collections/AiPrompts.d.ts +10 -0
  20. package/dist/ai/collections/AiPrompts.d.ts.map +1 -0
  21. package/dist/ai/collections/AiPrompts.js +63 -0
  22. package/dist/ai/collections/AiPrompts.js.map +1 -0
  23. package/dist/ai/createAiApiRoutes.d.ts +40 -0
  24. package/dist/ai/createAiApiRoutes.d.ts.map +1 -0
  25. package/dist/ai/createAiApiRoutes.js +106 -0
  26. package/dist/ai/createAiApiRoutes.js.map +1 -0
  27. package/dist/ai/createAiGenerate.d.ts +65 -0
  28. package/dist/ai/createAiGenerate.d.ts.map +1 -0
  29. package/dist/ai/createAiGenerate.js +106 -0
  30. package/dist/ai/createAiGenerate.js.map +1 -0
  31. package/dist/ai/createAiPlugin.d.ts +39 -0
  32. package/dist/ai/createAiPlugin.d.ts.map +1 -0
  33. package/dist/ai/createAiPlugin.js +61 -0
  34. package/dist/ai/createAiPlugin.js.map +1 -0
  35. package/dist/ai/hooks/useAiContext.d.ts +63 -0
  36. package/dist/ai/hooks/useAiContext.d.ts.map +1 -0
  37. package/dist/ai/hooks/useAiContext.js +146 -0
  38. package/dist/ai/hooks/useAiContext.js.map +1 -0
  39. package/dist/ai/hooks/useAiPrompts.d.ts +25 -0
  40. package/dist/ai/hooks/useAiPrompts.d.ts.map +1 -0
  41. package/dist/ai/hooks/useAiPrompts.js +74 -0
  42. package/dist/ai/hooks/useAiPrompts.js.map +1 -0
  43. package/dist/ai/index.d.ts +51 -0
  44. package/dist/ai/index.d.ts.map +1 -0
  45. package/dist/ai/index.js +69 -0
  46. package/dist/ai/index.js.map +1 -0
  47. package/dist/ai/plugins/ContextEditorPanel.d.ts +9 -0
  48. package/dist/ai/plugins/ContextEditorPanel.d.ts.map +1 -0
  49. package/dist/ai/plugins/ContextEditorPanel.js +399 -0
  50. package/dist/ai/plugins/ContextEditorPanel.js.map +1 -0
  51. package/dist/ai/plugins/PromptEditorPanel.d.ts +9 -0
  52. package/dist/ai/plugins/PromptEditorPanel.d.ts.map +1 -0
  53. package/dist/ai/plugins/PromptEditorPanel.js +270 -0
  54. package/dist/ai/plugins/PromptEditorPanel.js.map +1 -0
  55. package/dist/ai/plugins/contextEditorPlugin.d.ts +30 -0
  56. package/dist/ai/plugins/contextEditorPlugin.d.ts.map +1 -0
  57. package/dist/ai/plugins/contextEditorPlugin.js +40 -0
  58. package/dist/ai/plugins/contextEditorPlugin.js.map +1 -0
  59. package/dist/ai/plugins/promptApiRoutes.d.ts +68 -0
  60. package/dist/ai/plugins/promptApiRoutes.d.ts.map +1 -0
  61. package/dist/ai/plugins/promptApiRoutes.js +181 -0
  62. package/dist/ai/plugins/promptApiRoutes.js.map +1 -0
  63. package/dist/ai/plugins/promptEditorPlugin.d.ts +29 -0
  64. package/dist/ai/plugins/promptEditorPlugin.d.ts.map +1 -0
  65. package/dist/ai/plugins/promptEditorPlugin.js +39 -0
  66. package/dist/ai/plugins/promptEditorPlugin.js.map +1 -0
  67. package/dist/ai/presets/componentAiDefaults.d.ts +40 -0
  68. package/dist/ai/presets/componentAiDefaults.d.ts.map +1 -0
  69. package/dist/ai/presets/componentAiDefaults.js +239 -0
  70. package/dist/ai/presets/componentAiDefaults.js.map +1 -0
  71. package/dist/ai/presets/index.d.ts +94 -0
  72. package/dist/ai/presets/index.d.ts.map +1 -0
  73. package/dist/ai/presets/index.js +110 -0
  74. package/dist/ai/presets/index.js.map +1 -0
  75. package/dist/ai/presets/instructions/interactive.d.ts +15 -0
  76. package/dist/ai/presets/instructions/interactive.d.ts.map +1 -0
  77. package/dist/ai/presets/instructions/interactive.js +334 -0
  78. package/dist/ai/presets/instructions/interactive.js.map +1 -0
  79. package/dist/ai/presets/instructions/layout.d.ts +16 -0
  80. package/dist/ai/presets/instructions/layout.d.ts.map +1 -0
  81. package/dist/ai/presets/instructions/layout.js +486 -0
  82. package/dist/ai/presets/instructions/layout.js.map +1 -0
  83. package/dist/ai/presets/instructions/media.d.ts +15 -0
  84. package/dist/ai/presets/instructions/media.d.ts.map +1 -0
  85. package/dist/ai/presets/instructions/media.js +136 -0
  86. package/dist/ai/presets/instructions/media.js.map +1 -0
  87. package/dist/ai/presets/instructions/pagePatterns.d.ts +20 -0
  88. package/dist/ai/presets/instructions/pagePatterns.d.ts.map +1 -0
  89. package/dist/ai/presets/instructions/pagePatterns.js +290 -0
  90. package/dist/ai/presets/instructions/pagePatterns.js.map +1 -0
  91. package/dist/ai/presets/instructions/schemas.d.ts +1247 -0
  92. package/dist/ai/presets/instructions/schemas.d.ts.map +1 -0
  93. package/dist/ai/presets/instructions/schemas.js +240 -0
  94. package/dist/ai/presets/instructions/schemas.js.map +1 -0
  95. package/dist/ai/presets/instructions/typography.d.ts +16 -0
  96. package/dist/ai/presets/instructions/typography.d.ts.map +1 -0
  97. package/dist/ai/presets/instructions/typography.js +192 -0
  98. package/dist/ai/presets/instructions/typography.js.map +1 -0
  99. package/dist/ai/tools/index.d.ts +116 -0
  100. package/dist/ai/tools/index.d.ts.map +1 -0
  101. package/dist/ai/tools/index.js +214 -0
  102. package/dist/ai/tools/index.js.map +1 -0
  103. package/dist/ai/types.d.ts +507 -0
  104. package/dist/ai/types.d.ts.map +1 -0
  105. package/dist/ai/types.js +2 -0
  106. package/dist/ai/types.js.map +1 -0
  107. package/dist/ai/utils/injectAiConfig.d.ts +67 -0
  108. package/dist/ai/utils/injectAiConfig.d.ts.map +1 -0
  109. package/dist/ai/utils/injectAiConfig.js +216 -0
  110. package/dist/ai/utils/injectAiConfig.js.map +1 -0
  111. package/dist/api/createPuckApiRoutesWithId.d.ts.map +1 -1
  112. package/dist/api/createPuckApiRoutesWithId.js +12 -5
  113. package/dist/api/createPuckApiRoutesWithId.js.map +1 -1
  114. package/dist/api/types.d.ts +1 -1
  115. package/dist/api/types.d.ts.map +1 -1
  116. package/dist/components/exports.d.ts +1 -1
  117. package/dist/components/exports.d.ts.map +1 -1
  118. package/dist/components/exports.js +1 -1
  119. package/dist/components/exports.js.map +1 -1
  120. package/dist/components/interactive/Accordion.d.ts +1 -1
  121. package/dist/components/interactive/Accordion.d.ts.map +1 -1
  122. package/dist/components/interactive/Accordion.js +4 -4
  123. package/dist/components/interactive/Accordion.js.map +1 -1
  124. package/dist/components/interactive/Accordion.server.d.ts +1 -1
  125. package/dist/components/interactive/Accordion.server.d.ts.map +1 -1
  126. package/dist/components/interactive/Button.d.ts +1 -1
  127. package/dist/components/interactive/Button.d.ts.map +1 -1
  128. package/dist/components/interactive/Button.server.d.ts +2 -3
  129. package/dist/components/interactive/Button.server.d.ts.map +1 -1
  130. package/dist/components/interactive/Button.server.js +1 -2
  131. package/dist/components/interactive/Button.server.js.map +1 -1
  132. package/dist/components/interactive/Card.d.ts +1 -1
  133. package/dist/components/interactive/Card.d.ts.map +1 -1
  134. package/dist/components/interactive/Card.server.d.ts +1 -1
  135. package/dist/components/interactive/Card.server.d.ts.map +1 -1
  136. package/dist/components/interactive/Divider.d.ts +1 -1
  137. package/dist/components/interactive/Divider.d.ts.map +1 -1
  138. package/dist/components/interactive/Divider.server.d.ts +1 -1
  139. package/dist/components/interactive/Divider.server.d.ts.map +1 -1
  140. package/dist/components/layout/Container.d.ts +3 -1
  141. package/dist/components/layout/Container.d.ts.map +1 -1
  142. package/dist/components/layout/Container.js +16 -2
  143. package/dist/components/layout/Container.js.map +1 -1
  144. package/dist/components/layout/Container.server.d.ts +3 -1
  145. package/dist/components/layout/Container.server.d.ts.map +1 -1
  146. package/dist/components/layout/Container.server.js +5 -2
  147. package/dist/components/layout/Container.server.js.map +1 -1
  148. package/dist/components/layout/Flex.d.ts +3 -1
  149. package/dist/components/layout/Flex.d.ts.map +1 -1
  150. package/dist/components/layout/Flex.js +18 -2
  151. package/dist/components/layout/Flex.js.map +1 -1
  152. package/dist/components/layout/Flex.server.d.ts +3 -1
  153. package/dist/components/layout/Flex.server.d.ts.map +1 -1
  154. package/dist/components/layout/Flex.server.js +5 -2
  155. package/dist/components/layout/Flex.server.js.map +1 -1
  156. package/dist/components/layout/Grid.d.ts +3 -1
  157. package/dist/components/layout/Grid.d.ts.map +1 -1
  158. package/dist/components/layout/Grid.js +15 -2
  159. package/dist/components/layout/Grid.js.map +1 -1
  160. package/dist/components/layout/Grid.server.d.ts +3 -1
  161. package/dist/components/layout/Grid.server.d.ts.map +1 -1
  162. package/dist/components/layout/Grid.server.js +5 -2
  163. package/dist/components/layout/Grid.server.js.map +1 -1
  164. package/dist/components/layout/Section.d.ts +3 -1
  165. package/dist/components/layout/Section.d.ts.map +1 -1
  166. package/dist/components/layout/Section.js +32 -5
  167. package/dist/components/layout/Section.js.map +1 -1
  168. package/dist/components/layout/Section.server.d.ts +3 -1
  169. package/dist/components/layout/Section.server.d.ts.map +1 -1
  170. package/dist/components/layout/Section.server.js +16 -4
  171. package/dist/components/layout/Section.server.js.map +1 -1
  172. package/dist/components/layout/Spacer.d.ts +1 -1
  173. package/dist/components/layout/Spacer.d.ts.map +1 -1
  174. package/dist/components/layout/Spacer.server.d.ts +1 -1
  175. package/dist/components/layout/Spacer.server.d.ts.map +1 -1
  176. package/dist/components/layout/Template.d.ts +1 -1
  177. package/dist/components/layout/Template.d.ts.map +1 -1
  178. package/dist/components/layout/Template.server.d.ts +1 -1
  179. package/dist/components/layout/Template.server.d.ts.map +1 -1
  180. package/dist/components/media/Image.d.ts +1 -1
  181. package/dist/components/media/Image.d.ts.map +1 -1
  182. package/dist/components/media/Image.server.d.ts +1 -1
  183. package/dist/components/media/Image.server.d.ts.map +1 -1
  184. package/dist/components/typography/Heading.d.ts +1 -1
  185. package/dist/components/typography/Heading.d.ts.map +1 -1
  186. package/dist/components/typography/Heading.server.d.ts +1 -1
  187. package/dist/components/typography/Heading.server.d.ts.map +1 -1
  188. package/dist/components/typography/RichText.editor.d.ts +15 -2
  189. package/dist/components/typography/RichText.editor.d.ts.map +1 -1
  190. package/dist/components/typography/RichText.editor.js +18 -11
  191. package/dist/components/typography/RichText.editor.js.map +1 -1
  192. package/dist/components/typography/RichText.server.d.ts +3 -2
  193. package/dist/components/typography/RichText.server.d.ts.map +1 -1
  194. package/dist/components/typography/RichText.server.js +10 -5
  195. package/dist/components/typography/RichText.server.js.map +1 -1
  196. package/dist/components/typography/Text.d.ts +1 -1
  197. package/dist/components/typography/Text.d.ts.map +1 -1
  198. package/dist/components/typography/Text.server.d.ts +1 -1
  199. package/dist/components/typography/Text.server.d.ts.map +1 -1
  200. package/dist/components/typography/index.d.ts +1 -1
  201. package/dist/components/typography/index.d.ts.map +1 -1
  202. package/dist/components/typography/index.js +1 -1
  203. package/dist/components/typography/index.js.map +1 -1
  204. package/dist/config/config.editor.d.ts +4 -4
  205. package/dist/config/config.editor.d.ts.map +1 -1
  206. package/dist/config/index.d.ts +1 -1
  207. package/dist/config/index.d.ts.map +1 -1
  208. package/dist/config/merge.d.ts +4 -4
  209. package/dist/config/merge.d.ts.map +1 -1
  210. package/dist/config/merge.js +3 -3
  211. package/dist/config/presets.d.ts +15 -15
  212. package/dist/config/presets.d.ts.map +1 -1
  213. package/dist/editor/PuckEditor.d.ts +255 -0
  214. package/dist/editor/PuckEditor.d.ts.map +1 -0
  215. package/dist/editor/PuckEditor.js +205 -0
  216. package/dist/editor/PuckEditor.js.map +1 -0
  217. package/dist/editor/{PuckEditorCore.client.d.ts → PuckEditorImpl.client.d.ts} +53 -30
  218. package/dist/editor/PuckEditorImpl.client.d.ts.map +1 -0
  219. package/dist/editor/{PuckEditorCore.client.js → PuckEditorImpl.client.js} +194 -39
  220. package/dist/editor/PuckEditorImpl.client.js.map +1 -0
  221. package/dist/editor/ai-plugin-overrides.css +20 -0
  222. package/dist/editor/components/HeaderActions.d.ts +7 -2
  223. package/dist/editor/components/HeaderActions.d.ts.map +1 -1
  224. package/dist/editor/components/HeaderActions.js +18 -4
  225. package/dist/editor/components/HeaderActions.js.map +1 -1
  226. package/dist/editor/components/IframeWrapper.d.ts +13 -0
  227. package/dist/editor/components/IframeWrapper.d.ts.map +1 -1
  228. package/dist/editor/components/IframeWrapper.js +60 -4
  229. package/dist/editor/components/IframeWrapper.js.map +1 -1
  230. package/dist/editor/components/PreviewModal.d.ts +9 -1
  231. package/dist/editor/components/PreviewModal.d.ts.map +1 -1
  232. package/dist/editor/components/PreviewModal.js +36 -1
  233. package/dist/editor/components/PreviewModal.js.map +1 -1
  234. package/dist/editor/index.d.ts +34 -19
  235. package/dist/editor/index.d.ts.map +1 -1
  236. package/dist/editor/index.js +37 -21
  237. package/dist/editor/index.js.map +1 -1
  238. package/dist/editor/plugins/VersionHistoryPanel.d.ts +43 -0
  239. package/dist/editor/plugins/VersionHistoryPanel.d.ts.map +1 -0
  240. package/dist/editor/plugins/VersionHistoryPanel.js +303 -0
  241. package/dist/editor/plugins/VersionHistoryPanel.js.map +1 -0
  242. package/dist/editor/plugins/index.d.ts +6 -3
  243. package/dist/editor/plugins/index.d.ts.map +1 -1
  244. package/dist/editor/plugins/index.js +7 -3
  245. package/dist/editor/plugins/index.js.map +1 -1
  246. package/dist/editor/plugins/versionHistoryPlugin.d.ts +37 -0
  247. package/dist/editor/plugins/versionHistoryPlugin.d.ts.map +1 -0
  248. package/dist/editor/plugins/versionHistoryPlugin.js +36 -0
  249. package/dist/editor/plugins/versionHistoryPlugin.js.map +1 -0
  250. package/dist/editor/utils/detectPageTree.d.ts +22 -0
  251. package/dist/editor/utils/detectPageTree.d.ts.map +1 -0
  252. package/dist/editor/utils/detectPageTree.js +36 -0
  253. package/dist/editor/utils/detectPageTree.js.map +1 -0
  254. package/dist/editor/utils/index.d.ts +3 -0
  255. package/dist/editor/utils/index.d.ts.map +1 -0
  256. package/dist/editor/utils/index.js +3 -0
  257. package/dist/editor/utils/index.js.map +1 -0
  258. package/dist/editor/utils/injectPageTreeFields.d.ts +10 -0
  259. package/dist/editor/utils/injectPageTreeFields.d.ts.map +1 -0
  260. package/dist/editor/utils/injectPageTreeFields.js +35 -0
  261. package/dist/editor/utils/injectPageTreeFields.js.map +1 -0
  262. package/dist/endpoints/ai.d.ts +36 -0
  263. package/dist/endpoints/ai.d.ts.map +1 -0
  264. package/dist/endpoints/ai.js +315 -0
  265. package/dist/endpoints/ai.js.map +1 -0
  266. package/dist/endpoints/context.d.ts +30 -0
  267. package/dist/endpoints/context.d.ts.map +1 -0
  268. package/dist/endpoints/context.js +123 -0
  269. package/dist/endpoints/context.js.map +1 -0
  270. package/dist/endpoints/prompts.d.ts +28 -0
  271. package/dist/endpoints/prompts.d.ts.map +1 -0
  272. package/dist/endpoints/prompts.js +118 -0
  273. package/dist/endpoints/prompts.js.map +1 -0
  274. package/dist/endpoints/styles.d.ts +19 -0
  275. package/dist/endpoints/styles.d.ts.map +1 -0
  276. package/dist/endpoints/styles.js +116 -0
  277. package/dist/endpoints/styles.js.map +1 -0
  278. package/dist/exports/client.d.ts +7 -6
  279. package/dist/exports/client.d.ts.map +1 -1
  280. package/dist/exports/client.js +9 -8
  281. package/dist/exports/client.js.map +1 -1
  282. package/dist/fields/AlignmentField.d.ts +1 -1
  283. package/dist/fields/AlignmentField.d.ts.map +1 -1
  284. package/dist/fields/AlignmentField.js +1 -0
  285. package/dist/fields/AlignmentField.js.map +1 -1
  286. package/dist/fields/AnimationField.d.ts +1 -1
  287. package/dist/fields/AnimationField.d.ts.map +1 -1
  288. package/dist/fields/BackgroundField.d.ts +1 -1
  289. package/dist/fields/BackgroundField.d.ts.map +1 -1
  290. package/dist/fields/BackgroundField.js +9 -4
  291. package/dist/fields/BackgroundField.js.map +1 -1
  292. package/dist/fields/BorderField.d.ts +1 -1
  293. package/dist/fields/BorderField.d.ts.map +1 -1
  294. package/dist/fields/BorderField.js +1 -0
  295. package/dist/fields/BorderField.js.map +1 -1
  296. package/dist/fields/ColorPickerField.d.ts +1 -1
  297. package/dist/fields/ColorPickerField.d.ts.map +1 -1
  298. package/dist/fields/ColorPickerField.js +4 -2
  299. package/dist/fields/ColorPickerField.js.map +1 -1
  300. package/dist/fields/ContentAlignmentField.d.ts +66 -0
  301. package/dist/fields/ContentAlignmentField.d.ts.map +1 -0
  302. package/dist/fields/ContentAlignmentField.js +255 -0
  303. package/dist/fields/ContentAlignmentField.js.map +1 -0
  304. package/dist/fields/DimensionsField.d.ts +1 -1
  305. package/dist/fields/DimensionsField.d.ts.map +1 -1
  306. package/dist/fields/DimensionsField.js +8 -2
  307. package/dist/fields/DimensionsField.js.map +1 -1
  308. package/dist/fields/FlexAlignmentField.d.ts +1 -1
  309. package/dist/fields/FlexAlignmentField.d.ts.map +1 -1
  310. package/dist/fields/FolderPickerField.d.ts +1 -1
  311. package/dist/fields/FolderPickerField.d.ts.map +1 -1
  312. package/dist/fields/GradientEditor.d.ts.map +1 -1
  313. package/dist/fields/GradientEditor.js +3 -0
  314. package/dist/fields/GradientEditor.js.map +1 -1
  315. package/dist/fields/LockedField.d.ts +1 -1
  316. package/dist/fields/LockedField.d.ts.map +1 -1
  317. package/dist/fields/MarginField.d.ts +1 -1
  318. package/dist/fields/MarginField.d.ts.map +1 -1
  319. package/dist/fields/MediaField.d.ts +1 -1
  320. package/dist/fields/MediaField.d.ts.map +1 -1
  321. package/dist/fields/MediaField.js +3 -2
  322. package/dist/fields/MediaField.js.map +1 -1
  323. package/dist/fields/PaddingField.d.ts +1 -1
  324. package/dist/fields/PaddingField.d.ts.map +1 -1
  325. package/dist/fields/PageSegmentField.d.ts +1 -1
  326. package/dist/fields/PageSegmentField.d.ts.map +1 -1
  327. package/dist/fields/ResetField.d.ts +1 -1
  328. package/dist/fields/ResetField.d.ts.map +1 -1
  329. package/dist/fields/ResetField.js +1 -1
  330. package/dist/fields/ResetField.js.map +1 -1
  331. package/dist/fields/ResponsiveField.d.ts +1 -1
  332. package/dist/fields/ResponsiveField.d.ts.map +1 -1
  333. package/dist/fields/ResponsiveField.js +5 -2
  334. package/dist/fields/ResponsiveField.js.map +1 -1
  335. package/dist/fields/ResponsiveVisibilityField.d.ts +1 -1
  336. package/dist/fields/ResponsiveVisibilityField.d.ts.map +1 -1
  337. package/dist/fields/ResponsiveVisibilityField.js +4 -3
  338. package/dist/fields/ResponsiveVisibilityField.js.map +1 -1
  339. package/dist/fields/SizeField.d.ts +3 -25
  340. package/dist/fields/SizeField.d.ts.map +1 -1
  341. package/dist/fields/SizeField.js +8 -34
  342. package/dist/fields/SizeField.js.map +1 -1
  343. package/dist/fields/SlugPreviewField.d.ts +1 -1
  344. package/dist/fields/SlugPreviewField.d.ts.map +1 -1
  345. package/dist/fields/TemplateField.d.ts +1 -1
  346. package/dist/fields/TemplateField.d.ts.map +1 -1
  347. package/dist/fields/TemplateField.js +1 -1
  348. package/dist/fields/TemplateField.js.map +1 -1
  349. package/dist/fields/TransformField.d.ts +1 -1
  350. package/dist/fields/TransformField.d.ts.map +1 -1
  351. package/dist/fields/TransformField.js +2 -0
  352. package/dist/fields/TransformField.js.map +1 -1
  353. package/dist/fields/VerticalAlignmentField.d.ts +1 -1
  354. package/dist/fields/VerticalAlignmentField.d.ts.map +1 -1
  355. package/dist/fields/WidthField.d.ts +1 -1
  356. package/dist/fields/WidthField.d.ts.map +1 -1
  357. package/dist/fields/index.d.ts +8 -36
  358. package/dist/fields/index.d.ts.map +1 -1
  359. package/dist/fields/index.js +20 -78
  360. package/dist/fields/index.js.map +1 -1
  361. package/dist/fields/richtext/controls/ColorPickerControl.d.ts +16 -0
  362. package/dist/fields/richtext/controls/ColorPickerControl.d.ts.map +1 -0
  363. package/dist/fields/richtext/controls/ColorPickerControl.js +116 -0
  364. package/dist/fields/richtext/controls/ColorPickerControl.js.map +1 -0
  365. package/dist/fields/richtext/controls/DropdownPortal.d.ts +17 -0
  366. package/dist/fields/richtext/controls/DropdownPortal.d.ts.map +1 -0
  367. package/dist/fields/richtext/controls/DropdownPortal.js +90 -0
  368. package/dist/fields/richtext/controls/DropdownPortal.js.map +1 -0
  369. package/dist/fields/richtext/controls/FontSizeControl.d.ts +8 -0
  370. package/dist/fields/richtext/controls/FontSizeControl.d.ts.map +1 -0
  371. package/dist/fields/richtext/controls/FontSizeControl.js +62 -0
  372. package/dist/fields/richtext/controls/FontSizeControl.js.map +1 -0
  373. package/dist/fields/richtext/controls/HighlightControl.d.ts +9 -0
  374. package/dist/fields/richtext/controls/HighlightControl.d.ts.map +1 -0
  375. package/dist/fields/richtext/controls/HighlightControl.js +44 -0
  376. package/dist/fields/richtext/controls/HighlightControl.js.map +1 -0
  377. package/dist/fields/richtext/controls/index.d.ts +11 -0
  378. package/dist/fields/richtext/controls/index.d.ts.map +1 -0
  379. package/dist/fields/richtext/controls/index.js +16 -0
  380. package/dist/fields/richtext/controls/index.js.map +1 -0
  381. package/dist/fields/richtext/controls/shared.d.ts +97 -0
  382. package/dist/fields/richtext/controls/shared.d.ts.map +1 -0
  383. package/dist/fields/richtext/controls/shared.js +344 -0
  384. package/dist/fields/richtext/controls/shared.js.map +1 -0
  385. package/dist/fields/richtext/createRichTextField.d.ts +165 -0
  386. package/dist/fields/richtext/createRichTextField.d.ts.map +1 -0
  387. package/dist/fields/richtext/createRichTextField.js +139 -0
  388. package/dist/fields/richtext/createRichTextField.js.map +1 -0
  389. package/dist/fields/richtext/extensions/FontSize.d.ts +23 -0
  390. package/dist/fields/richtext/extensions/FontSize.d.ts.map +1 -0
  391. package/dist/fields/richtext/extensions/FontSize.js +47 -0
  392. package/dist/fields/richtext/extensions/FontSize.js.map +1 -0
  393. package/dist/fields/richtext/extensions/index.d.ts +5 -0
  394. package/dist/fields/richtext/extensions/index.d.ts.map +1 -0
  395. package/dist/fields/richtext/extensions/index.js +5 -0
  396. package/dist/fields/richtext/extensions/index.js.map +1 -0
  397. package/dist/fields/richtext/index.d.ts +14 -0
  398. package/dist/fields/richtext/index.d.ts.map +1 -0
  399. package/dist/fields/richtext/index.js +19 -0
  400. package/dist/fields/richtext/index.js.map +1 -0
  401. package/dist/fields/richtext/richtext-menu.css +50 -0
  402. package/dist/fields/shared.d.ts +27 -1
  403. package/dist/fields/shared.d.ts.map +1 -1
  404. package/dist/fields/shared.js +34 -0
  405. package/dist/fields/shared.js.map +1 -1
  406. package/dist/layouts/types.d.ts +30 -0
  407. package/dist/layouts/types.d.ts.map +1 -1
  408. package/dist/plugin/index.d.ts +1 -0
  409. package/dist/plugin/index.d.ts.map +1 -1
  410. package/dist/plugin/index.js +112 -2
  411. package/dist/plugin/index.js.map +1 -1
  412. package/dist/render/HybridPageRenderer.d.ts +1 -1
  413. package/dist/render/HybridPageRenderer.d.ts.map +1 -1
  414. package/dist/render/PageRenderer.d.ts +1 -1
  415. package/dist/render/PageRenderer.d.ts.map +1 -1
  416. package/dist/render/PageRenderer.js +1 -1
  417. package/dist/render/PageRenderer.js.map +1 -1
  418. package/dist/render/PuckEditor.client.d.ts +2 -2
  419. package/dist/render/PuckEditor.client.d.ts.map +1 -1
  420. package/dist/render/PuckEditor.client.js +2 -2
  421. package/dist/render/PuckEditor.client.js.map +1 -1
  422. package/dist/types/index.d.ts +37 -12
  423. package/dist/types/index.d.ts.map +1 -1
  424. package/dist/version.d.ts +2 -0
  425. package/dist/version.d.ts.map +1 -0
  426. package/dist/version.js +3 -0
  427. package/dist/version.js.map +1 -0
  428. package/dist/views/PuckConfigContext.d.ts +56 -2
  429. package/dist/views/PuckConfigContext.d.ts.map +1 -1
  430. package/dist/views/PuckConfigContext.js +6 -3
  431. package/dist/views/PuckConfigContext.js.map +1 -1
  432. package/dist/views/PuckEditorView.d.ts.map +1 -1
  433. package/dist/views/PuckEditorView.js +29 -2
  434. package/dist/views/PuckEditorView.js.map +1 -1
  435. package/dist/views/index.d.ts +0 -2
  436. package/dist/views/index.d.ts.map +1 -1
  437. package/dist/views/index.js +0 -2
  438. package/dist/views/index.js.map +1 -1
  439. package/package.json +42 -12
  440. package/dist/components/typography/RichText.d.ts +0 -20
  441. package/dist/components/typography/RichText.d.ts.map +0 -1
  442. package/dist/components/typography/RichText.js +0 -73
  443. package/dist/components/typography/RichText.js.map +0 -1
  444. package/dist/editor/PuckEditor.client.d.ts +0 -131
  445. package/dist/editor/PuckEditor.client.d.ts.map +0 -1
  446. package/dist/editor/PuckEditor.client.js +0 -42
  447. package/dist/editor/PuckEditor.client.js.map +0 -1
  448. package/dist/editor/PuckEditorCore.client.d.ts.map +0 -1
  449. package/dist/editor/PuckEditorCore.client.js.map +0 -1
  450. package/dist/fields/TiptapField.d.ts +0 -40
  451. package/dist/fields/TiptapField.d.ts.map +0 -1
  452. package/dist/fields/TiptapField.js +0 -857
  453. package/dist/fields/TiptapField.js.map +0 -1
  454. package/dist/fields/TiptapModal.d.ts +0 -10
  455. package/dist/fields/TiptapModal.d.ts.map +0 -1
  456. package/dist/fields/TiptapModal.js +0 -114
  457. package/dist/fields/TiptapModal.js.map +0 -1
  458. package/dist/fields/TiptapModalField.d.ts +0 -23
  459. package/dist/fields/TiptapModalField.d.ts.map +0 -1
  460. package/dist/fields/TiptapModalField.js +0 -55
  461. package/dist/fields/TiptapModalField.js.map +0 -1
  462. package/dist/fields/richtext-output.css +0 -219
  463. package/dist/fields/tiptap-styles.css +0 -248
  464. package/dist/views/PuckEditorClient.d.ts +0 -73
  465. package/dist/views/PuckEditorClient.d.ts.map +0 -1
  466. package/dist/views/PuckEditorClient.js +0 -130
  467. package/dist/views/PuckEditorClient.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schemas.d.ts","sourceRoot":"","sources":["../../../../src/ai/presets/instructions/schemas.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAMH,iCAAiC;AACjC,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;CAOvB,CAAA;AAED,iDAAiD;AACjD,eAAO,MAAM,eAAe;;;;CAI3B,CAAA;AAED,4CAA4C;AAC5C,eAAO,MAAM,oBAAoB;;;;CAIhC,CAAA;AAED,wCAAwC;AACxC,eAAO,MAAM,gBAAgB;;;;CAI5B,CAAA;AAMD,0DAA0D;AAC1D,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAWzB,CAAA;AAED,oDAAoD;AACpD,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAUnC,CAAA;AAMD,0CAA0C;AAC1C,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;CAQrC,CAAA;AAED,sCAAsC;AACtC,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAW5B,CAAA;AAED,uDAAuD;AACvD,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAUtC,CAAA;AAMD,mCAAmC;AACnC,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;CAO9B,CAAA;AAED,oCAAoC;AACpC,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAU1B,CAAA;AAED,sCAAsC;AACtC,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAS5B,CAAA;AAMD,kCAAkC;AAClC,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmBxB,CAAA;AAMD,yDAAyD;AACzD,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAe3B,CAAA;AAMD,sCAAsC;AACtC,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;CAU5B,CAAA;AAMD,gCAAgC;AAChC,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAWtB,CAAA;AAMD,qCAAqC;AACrC,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAsB3B,CAAA"}
@@ -0,0 +1,240 @@
1
+ /**
2
+ * Shared JSON Schemas for AI Field Generation
3
+ *
4
+ * Puck Cloud requires JSON schemas for custom fields to know what format to generate.
5
+ * These schemas are used across all component instruction files.
6
+ */
7
+ // =============================================================================
8
+ // Basic Types
9
+ // =============================================================================
10
+ /** JSON Schema for ColorValue */
11
+ export const colorSchema = {
12
+ type: 'object',
13
+ properties: {
14
+ hex: { type: 'string', description: 'Hex color code, e.g., "#3b82f6"' },
15
+ opacity: { type: 'number', minimum: 0, maximum: 100, description: 'Opacity 0-100, default 100' },
16
+ },
17
+ required: ['hex'],
18
+ };
19
+ /** JSON Schema for Alignment (text alignment) */
20
+ export const alignmentSchema = {
21
+ type: 'string',
22
+ enum: ['left', 'center', 'right'],
23
+ description: "Text/content alignment: 'left', 'center', or 'right'",
24
+ };
25
+ /** JSON Schema for JustifyContent (flex) */
26
+ export const justifyContentSchema = {
27
+ type: 'string',
28
+ enum: ['flex-start', 'center', 'flex-end', 'space-between', 'space-around'],
29
+ description: 'Main-axis distribution: flex-start (default), center, flex-end, space-between, space-around',
30
+ };
31
+ /** JSON Schema for AlignItems (flex) */
32
+ export const alignItemsSchema = {
33
+ type: 'string',
34
+ enum: ['flex-start', 'center', 'flex-end', 'stretch'],
35
+ description: 'Cross-axis alignment: flex-start, center, flex-end, stretch',
36
+ };
37
+ // =============================================================================
38
+ // Padding/Margin Types
39
+ // =============================================================================
40
+ /** JSON Schema for PaddingValue (also used for margin) */
41
+ export const paddingSchema = {
42
+ type: 'object',
43
+ properties: {
44
+ top: { type: 'number', description: 'Top padding in units' },
45
+ right: { type: 'number', description: 'Right padding in units' },
46
+ bottom: { type: 'number', description: 'Bottom padding in units' },
47
+ left: { type: 'number', description: 'Left padding in units' },
48
+ unit: { type: 'string', enum: ['px', 'rem', 'em', '%'], description: 'Unit for all values' },
49
+ linked: { type: 'boolean', description: 'Whether all sides sync together' },
50
+ },
51
+ required: ['top', 'right', 'bottom', 'left', 'unit'],
52
+ };
53
+ /** JSON Schema for ResponsiveValue<PaddingValue> */
54
+ export const responsivePaddingSchema = {
55
+ type: 'object',
56
+ properties: {
57
+ xs: { ...paddingSchema, description: 'Base (mobile) value - required' },
58
+ sm: { ...paddingSchema, description: 'Small screens (640px+) - optional override' },
59
+ md: { ...paddingSchema, description: 'Medium screens (768px+) - optional override' },
60
+ lg: { ...paddingSchema, description: 'Large screens (1024px+) - optional override' },
61
+ xl: { ...paddingSchema, description: 'Extra large screens (1280px+) - optional override' },
62
+ },
63
+ required: ['xs'],
64
+ };
65
+ // =============================================================================
66
+ // Dimensions Types
67
+ // =============================================================================
68
+ /** JSON Schema for DimensionConstraint */
69
+ export const dimensionConstraintSchema = {
70
+ type: 'object',
71
+ properties: {
72
+ value: { type: 'number', description: 'Numeric value' },
73
+ unit: { type: 'string', enum: ['px', 'rem', '%', 'vw', 'vh'], description: 'CSS unit' },
74
+ enabled: { type: 'boolean', description: 'Whether this constraint is active' },
75
+ },
76
+ required: ['value', 'unit', 'enabled'],
77
+ };
78
+ /** JSON Schema for DimensionsValue */
79
+ export const dimensionsSchema = {
80
+ type: 'object',
81
+ properties: {
82
+ mode: { type: 'string', enum: ['full', 'contained', 'custom'], description: 'Width mode' },
83
+ alignment: { type: 'string', enum: ['left', 'center', 'right'], description: 'Content alignment' },
84
+ maxWidth: { ...dimensionConstraintSchema, description: 'Maximum width constraint' },
85
+ minWidth: { ...dimensionConstraintSchema, description: 'Minimum width constraint (optional)' },
86
+ minHeight: { ...dimensionConstraintSchema, description: 'Minimum height constraint (optional)' },
87
+ maxHeight: { ...dimensionConstraintSchema, description: 'Maximum height constraint (optional)' },
88
+ },
89
+ required: ['mode', 'alignment', 'maxWidth'],
90
+ };
91
+ /** JSON Schema for ResponsiveValue<DimensionsValue> */
92
+ export const responsiveDimensionsSchema = {
93
+ type: 'object',
94
+ properties: {
95
+ xs: { ...dimensionsSchema, description: 'Base (mobile) value - required' },
96
+ sm: { ...dimensionsSchema, description: 'Small screens (640px+) - optional override' },
97
+ md: { ...dimensionsSchema, description: 'Medium screens (768px+) - optional override' },
98
+ lg: { ...dimensionsSchema, description: 'Large screens (1024px+) - optional override' },
99
+ xl: { ...dimensionsSchema, description: 'Extra large screens (1280px+) - optional override' },
100
+ },
101
+ required: ['xs'],
102
+ };
103
+ // =============================================================================
104
+ // Background Types
105
+ // =============================================================================
106
+ /** JSON Schema for GradientStop */
107
+ export const gradientStopSchema = {
108
+ type: 'object',
109
+ properties: {
110
+ color: colorSchema,
111
+ position: { type: 'number', minimum: 0, maximum: 100, description: 'Position 0-100%' },
112
+ },
113
+ required: ['color', 'position'],
114
+ };
115
+ /** JSON Schema for GradientValue */
116
+ export const gradientSchema = {
117
+ type: 'object',
118
+ properties: {
119
+ type: { type: 'string', enum: ['linear', 'radial'], description: 'Gradient type' },
120
+ angle: { type: 'number', minimum: 0, maximum: 360, description: 'Angle in degrees (linear)' },
121
+ stops: { type: 'array', items: gradientStopSchema, description: 'Color stops' },
122
+ radialShape: { type: 'string', enum: ['circle', 'ellipse'], description: 'Radial shape' },
123
+ radialPosition: { type: 'string', enum: ['center', 'top', 'bottom', 'left', 'right'] },
124
+ },
125
+ required: ['type', 'stops'],
126
+ };
127
+ /** JSON Schema for BackgroundValue */
128
+ export const backgroundSchema = {
129
+ type: 'object',
130
+ properties: {
131
+ type: { type: 'string', enum: ['none', 'solid', 'gradient', 'image'], description: 'Background type' },
132
+ solid: { ...colorSchema, description: 'Solid color (when type="solid")' },
133
+ gradient: { ...gradientSchema, description: 'Gradient (when type="gradient")' },
134
+ // Note: image backgrounds require media selection, AI should use solid/gradient
135
+ },
136
+ required: ['type'],
137
+ };
138
+ // =============================================================================
139
+ // Border Types
140
+ // =============================================================================
141
+ /** JSON Schema for BorderValue */
142
+ export const borderSchema = {
143
+ type: 'object',
144
+ properties: {
145
+ style: { type: 'string', enum: ['none', 'solid', 'dashed', 'dotted'], description: 'Border style' },
146
+ width: { type: 'number', description: 'Border width in pixels' },
147
+ color: { ...colorSchema, description: 'Border color' },
148
+ radius: { type: 'number', description: 'Border radius in pixels' },
149
+ sides: {
150
+ type: 'object',
151
+ properties: {
152
+ top: { type: 'boolean' },
153
+ right: { type: 'boolean' },
154
+ bottom: { type: 'boolean' },
155
+ left: { type: 'boolean' },
156
+ },
157
+ description: 'Which sides have borders',
158
+ },
159
+ },
160
+ required: ['style', 'width', 'radius', 'sides'],
161
+ };
162
+ // =============================================================================
163
+ // Animation Types
164
+ // =============================================================================
165
+ /** JSON Schema for AnimationValue (simplified for AI) */
166
+ export const animationSchema = {
167
+ type: 'object',
168
+ properties: {
169
+ mode: { type: 'string', enum: ['preset', 'custom'], description: 'Animation mode' },
170
+ entrance: {
171
+ type: 'string',
172
+ enum: ['none', 'fade-in', 'fade-up', 'fade-down', 'fade-left', 'fade-right', 'fade-scale',
173
+ 'scale-in', 'scale-up', 'scale-down', 'slide-up', 'slide-down', 'slide-left', 'slide-right'],
174
+ description: 'Entrance animation preset',
175
+ },
176
+ entranceDuration: { type: 'number', description: 'Duration in ms, default 500' },
177
+ entranceDelay: { type: 'number', description: 'Delay in ms, default 0' },
178
+ triggerOnScroll: { type: 'boolean', description: 'Trigger when scrolled into view' },
179
+ triggerOnce: { type: 'boolean', description: 'Only animate once' },
180
+ },
181
+ };
182
+ // =============================================================================
183
+ // Visibility Types
184
+ // =============================================================================
185
+ /** JSON Schema for VisibilityValue */
186
+ export const visibilitySchema = {
187
+ type: 'object',
188
+ properties: {
189
+ xs: { type: 'boolean', description: 'Visible on mobile (default true)' },
190
+ sm: { type: 'boolean', description: 'Visible on small screens 640px+' },
191
+ md: { type: 'boolean', description: 'Visible on medium screens 768px+' },
192
+ lg: { type: 'boolean', description: 'Visible on large screens 1024px+' },
193
+ xl: { type: 'boolean', description: 'Visible on extra large screens 1280px+' },
194
+ },
195
+ required: ['xs'],
196
+ };
197
+ // =============================================================================
198
+ // Size Types (for Button, etc.)
199
+ // =============================================================================
200
+ /** JSON Schema for SizeValue */
201
+ export const sizeSchema = {
202
+ type: 'object',
203
+ properties: {
204
+ mode: { type: 'string', enum: ['sm', 'default', 'lg', 'custom'], description: 'Size preset or custom' },
205
+ height: { type: 'number', description: 'Custom height in units (only when mode="custom")' },
206
+ paddingX: { type: 'number', description: 'Custom horizontal padding (only when mode="custom")' },
207
+ paddingY: { type: 'number', description: 'Custom vertical padding (only when mode="custom")' },
208
+ fontSize: { type: 'number', description: 'Custom font size (only when mode="custom")' },
209
+ unit: { type: 'string', enum: ['px', 'rem'], description: 'Unit for custom values' },
210
+ },
211
+ required: ['mode'],
212
+ };
213
+ // =============================================================================
214
+ // Transform Types
215
+ // =============================================================================
216
+ /** JSON Schema for TransformValue */
217
+ export const transformSchema = {
218
+ type: 'object',
219
+ properties: {
220
+ rotate: { type: 'number', minimum: -360, maximum: 360, description: 'Rotation in degrees' },
221
+ scaleX: { type: 'number', minimum: 0.1, maximum: 3, description: 'Horizontal scale factor' },
222
+ scaleY: { type: 'number', minimum: 0.1, maximum: 3, description: 'Vertical scale factor' },
223
+ scaleLocked: { type: 'boolean', description: 'Lock X and Y scale together' },
224
+ skewX: { type: 'number', minimum: -45, maximum: 45, description: 'Horizontal skew in degrees' },
225
+ skewY: { type: 'number', minimum: -45, maximum: 45, description: 'Vertical skew in degrees' },
226
+ translateX: { type: 'number', description: 'Horizontal translation' },
227
+ translateY: { type: 'number', description: 'Vertical translation' },
228
+ translateUnit: { type: 'string', enum: ['px', 'rem', '%'], description: 'Unit for translation' },
229
+ origin: {
230
+ type: 'string',
231
+ enum: ['center', 'top', 'bottom', 'left', 'right', 'top-left', 'top-right', 'bottom-left', 'bottom-right'],
232
+ description: 'Transform origin point',
233
+ },
234
+ enable3D: { type: 'boolean', description: 'Enable 3D transforms' },
235
+ perspective: { type: 'number', description: '3D perspective in pixels' },
236
+ rotateX: { type: 'number', description: '3D rotation around X axis' },
237
+ rotateY: { type: 'number', description: '3D rotation around Y axis' },
238
+ },
239
+ };
240
+ //# sourceMappingURL=schemas.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schemas.js","sourceRoot":"","sources":["../../../../src/ai/presets/instructions/schemas.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ import type { ComponentAiOverrides } from '../../types.js';
2
+ /**
3
+ * Comprehensive AI instructions for typography components
4
+ *
5
+ * These instructions teach the AI:
6
+ * - What each component is for
7
+ * - Correct field names and values
8
+ * - When to use each component
9
+ * - How to compose them with other components
10
+ */
11
+ export declare const typographyInstructions: ComponentAiOverrides;
12
+ /**
13
+ * Typography component names for reference
14
+ */
15
+ export declare const typographyComponents: readonly ["Heading", "Text", "RichText"];
16
+ //# sourceMappingURL=typography.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"typography.d.ts","sourceRoot":"","sources":["../../../../src/ai/presets/instructions/typography.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAA;AAG1D;;;;;;;;GAQG;AACH,eAAO,MAAM,sBAAsB,EAAE,oBAwLpC,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,oBAAoB,0CAA2C,CAAA"}
@@ -0,0 +1,192 @@
1
+ import { colorSchema, alignmentSchema } from './schemas.js';
2
+ /**
3
+ * Comprehensive AI instructions for typography components
4
+ *
5
+ * These instructions teach the AI:
6
+ * - What each component is for
7
+ * - Correct field names and values
8
+ * - When to use each component
9
+ * - How to compose them with other components
10
+ */
11
+ export const typographyInstructions = {
12
+ Heading: {
13
+ ai: {
14
+ instructions: `Heading component for titles and section headings.
15
+
16
+ PURPOSE:
17
+ - Page titles, section headings, and subsection titles
18
+ - Establishes content hierarchy and structure
19
+ - Improves accessibility and SEO
20
+
21
+ USAGE GUIDELINES:
22
+ - Use h1 ONLY ONCE per page for the main page title (in the hero section)
23
+ - Use h2 for major section headings (Features, Testimonials, FAQ, etc.)
24
+ - Use h3 for subsection headings or card titles within sections
25
+ - Use h4-h6 rarely, only for deeply nested content
26
+
27
+ COMMON PATTERNS:
28
+ - Hero headline: h1 level, centered alignment
29
+ - Section title: h2 level, often centered
30
+ - Card/feature title: h3 level, left or center aligned
31
+ - Sidebar heading: h4 level
32
+
33
+ COMPOSITION:
34
+ - Place inside Section > Container for centered section headings
35
+ - Place inside Flex (column) for grouped text content
36
+ - Pair with Text component for headline + description combos`,
37
+ },
38
+ fields: {
39
+ text: {
40
+ ai: {
41
+ required: true,
42
+ instructions: 'The heading text content. Keep headlines concise and impactful - typically 3-8 words for h1/h2, can be longer for h3+.',
43
+ },
44
+ },
45
+ level: {
46
+ ai: {
47
+ instructions: 'Heading level (h1-h6). Follow hierarchy: h1 once for page title, h2 for sections, h3 for subsections. Default: h2.',
48
+ },
49
+ },
50
+ textColor: {
51
+ ai: {
52
+ instructions: `Optional text color. Use for emphasis or brand colors.
53
+ Example: { hex: '#3b82f6', opacity: 100 }`,
54
+ schema: colorSchema,
55
+ },
56
+ },
57
+ alignment: {
58
+ ai: {
59
+ instructions: "Text alignment: 'left', 'center', or 'right'. Use 'center' for hero/section headings, 'left' for content areas.",
60
+ schema: alignmentSchema,
61
+ },
62
+ },
63
+ },
64
+ },
65
+ Text: {
66
+ ai: {
67
+ instructions: `Text component for paragraphs and body content.
68
+
69
+ PURPOSE:
70
+ - Body text, descriptions, and supporting content
71
+ - Single paragraphs or short text blocks
72
+ - Subtitles and secondary text under headings
73
+
74
+ USAGE GUIDELINES:
75
+ - Use for 1-3 paragraphs of plain text
76
+ - For longer formatted content with lists/links, use RichText instead
77
+ - Size options: xs, sm, base (default), lg, xl
78
+
79
+ COMMON PATTERNS:
80
+ - Hero subtitle: lg or xl size, centered, below h1
81
+ - Section description: base size, centered, below h2
82
+ - Card description: sm or base size, left-aligned
83
+ - Feature text: base size, often paired with heading
84
+
85
+ COMPOSITION:
86
+ - Usually follows a Heading component
87
+ - Place inside Flex (column) with Heading for text blocks
88
+ - Place inside Card for card descriptions`,
89
+ },
90
+ fields: {
91
+ content: {
92
+ ai: {
93
+ required: true,
94
+ instructions: 'The text content. Write clear, concise copy. Use line breaks for multiple paragraphs if needed.',
95
+ },
96
+ },
97
+ size: {
98
+ ai: {
99
+ instructions: "Text size: 'xs', 'sm', 'base' (default), 'lg', 'xl'. Use 'lg' or 'xl' for hero subtitles, 'sm' for secondary text.",
100
+ },
101
+ },
102
+ textColor: {
103
+ ai: {
104
+ instructions: `Optional text color. Use for emphasis or brand colors.
105
+ Example: { hex: '#64748b', opacity: 100 }`,
106
+ schema: colorSchema,
107
+ },
108
+ },
109
+ alignment: {
110
+ ai: {
111
+ instructions: "Text alignment: 'left', 'center', or 'right'. Match the alignment of the heading above it.",
112
+ schema: alignmentSchema,
113
+ },
114
+ },
115
+ },
116
+ },
117
+ RichText: {
118
+ ai: {
119
+ instructions: `RichText component - TipTap-powered rich text with advanced formatting.
120
+
121
+ PURPOSE:
122
+ - Long-form content with sophisticated formatting
123
+ - Content needing font sizes, colors, highlights
124
+ - Blog posts, about pages, formatted descriptions
125
+ - Any content needing more than plain text
126
+
127
+ USAGE GUIDELINES:
128
+ - Use RichText over Text when you need ANY formatting
129
+ - Supports font sizes from xs to 5xl
130
+ - Supports text colors with opacity
131
+ - Supports highlights/background colors
132
+ - Content is HTML with data attributes for styling
133
+
134
+ TIPTAP FEATURES AVAILABLE:
135
+ - Font sizes: text-xs, text-sm, text-base, text-lg, text-xl, text-2xl, text-3xl, text-4xl, text-5xl
136
+ - Text colors: Any hex color with opacity (via data attributes)
137
+ - Highlights: Background color highlights on text
138
+ - Formatting: bold, italic, underline, strikethrough
139
+ - Special: superscript, subscript
140
+ - Blocks: blockquotes, code blocks
141
+ - Lists: bullet lists, numbered lists
142
+ - Links: clickable hyperlinks
143
+
144
+ COMMON PATTERNS:
145
+ - Hero subtitle with large colorful text
146
+ - Feature descriptions with highlights
147
+ - Blog content with mixed formatting
148
+ - FAQ answers with styled callouts
149
+ - About page with branded text colors
150
+
151
+ HTML STRUCTURE:
152
+ - <p>Paragraph text</p>
153
+ - <p><span style="font-size:...">Sized text</span></p>
154
+ - <p><span style="color:...">Colored text</span></p>
155
+ - <p><mark>Highlighted text</mark></p>
156
+ - <ul><li>Bullet item</li></ul>
157
+ - <ol><li>Numbered item</li></ol>
158
+ - <blockquote>Quote text</blockquote>
159
+ - <pre><code>Code block</code></pre>
160
+ - <a href="url">Link text</a>
161
+ - <strong>Bold</strong>, <em>Italic</em>, <u>Underline</u>, <s>Strikethrough</s>
162
+ - <sup>Superscript</sup>, <sub>Subscript</sub>
163
+
164
+ COMPOSITION:
165
+ - Place inside Container for constrained width
166
+ - Use in Accordion items for formatted FAQ answers
167
+ - Combine with Section backgrounds for contrast`,
168
+ },
169
+ fields: {
170
+ content: {
171
+ ai: {
172
+ required: true,
173
+ schema: { type: 'string' },
174
+ instructions: `HTML content for the TipTap rich text editor. Structure with proper HTML tags:
175
+ - <p>Paragraph text</p>
176
+ - <p><span style="font-size: 1.5rem">Large text</span></p>
177
+ - <p><span style="color: #3b82f6">Colored text</span></p>
178
+ - <ul><li>Bullet item</li></ul>
179
+ - <ol><li>Numbered item</li></ol>
180
+ - <blockquote>Quote</blockquote>
181
+ - <a href="url">Link text</a>
182
+ - <strong>Bold</strong>, <em>Italic</em>`,
183
+ },
184
+ },
185
+ },
186
+ },
187
+ };
188
+ /**
189
+ * Typography component names for reference
190
+ */
191
+ export const typographyComponents = ['Heading', 'Text', 'RichText'];
192
+ //# sourceMappingURL=typography.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"typography.js","sourceRoot":"","sources":["../../../../src/ai/presets/instructions/typography.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAE3D;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAyB;IAC1D,OAAO,EAAE;QACP,EAAE,EAAE;YACF,YAAY,EAAE;;;;;;;;;;;;;;;;;;;;;;6DAsByC;SACxD;QACD,MAAM,EAAE;YACN,IAAI,EAAE;gBACJ,EAAE,EAAE;oBACF,QAAQ,EAAE,IAAI;oBACd,YAAY,EACV,wHAAwH;iBAC3H;aACF;YACD,KAAK,EAAE;gBACL,EAAE,EAAE;oBACF,YAAY,EACV,oHAAoH;iBACvH;aACF;YACD,SAAS,EAAE;gBACT,EAAE,EAAE;oBACF,YAAY,EAAE;0CACkB;oBAChC,MAAM,EAAE,WAAW;iBACpB;aACF;YACD,SAAS,EAAE;gBACT,EAAE,EAAE;oBACF,YAAY,EACV,iHAAiH;oBACnH,MAAM,EAAE,eAAe;iBACxB;aACF;SACF;KACF;IAED,IAAI,EAAE;QACJ,EAAE,EAAE;YACF,YAAY,EAAE;;;;;;;;;;;;;;;;;;;;;0CAqBsB;SACrC;QACD,MAAM,EAAE;YACN,OAAO,EAAE;gBACP,EAAE,EAAE;oBACF,QAAQ,EAAE,IAAI;oBACd,YAAY,EACV,iGAAiG;iBACpG;aACF;YACD,IAAI,EAAE;gBACJ,EAAE,EAAE;oBACF,YAAY,EACV,oHAAoH;iBACvH;aACF;YACD,SAAS,EAAE;gBACT,EAAE,EAAE;oBACF,YAAY,EAAE;0CACkB;oBAChC,MAAM,EAAE,WAAW;iBACpB;aACF;YACD,SAAS,EAAE;gBACT,EAAE,EAAE;oBACF,YAAY,EACV,4FAA4F;oBAC9F,MAAM,EAAE,eAAe;iBACxB;aACF;SACF;KACF;IAED,QAAQ,EAAE;QACR,EAAE,EAAE;YACF,YAAY,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gDAgD4B;SAC3C;QACD,MAAM,EAAE;YACN,OAAO,EAAE;gBACP,EAAE,EAAE;oBACF,QAAQ,EAAE,IAAI;oBACd,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBAC1B,YAAY,EAAE;;;;;;;;yCAQiB;iBAChC;aACF;SACF;KACF;CACF,CAAA;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,CAAU,CAAA"}
@@ -0,0 +1,116 @@
1
+ /**
2
+ * Pre-built AI tools for Payload CMS integration
3
+ *
4
+ * These tools allow the AI to query your Payload database during page generation,
5
+ * enabling it to use real content instead of placeholder text.
6
+ *
7
+ * @example
8
+ * ```typescript
9
+ * import { createPayloadTools } from '@delmaredigital/payload-puck/ai'
10
+ *
11
+ * createPuckPlugin({
12
+ * ai: {
13
+ * enabled: true,
14
+ * tools: createPayloadTools({
15
+ * collections: ['products', 'team-members', 'testimonials'],
16
+ * media: true,
17
+ * pages: 'pages',
18
+ * }),
19
+ * },
20
+ * })
21
+ * ```
22
+ */
23
+ import type { AiTool } from '../types.js';
24
+ /**
25
+ * Configuration for createPayloadTools
26
+ */
27
+ export interface PayloadToolsConfig {
28
+ /**
29
+ * Collections the AI can query.
30
+ * Pass an array of collection slugs, or an object mapping slugs to descriptions.
31
+ *
32
+ * @example
33
+ * ```typescript
34
+ * // Simple - just collection names
35
+ * collections: ['products', 'team-members']
36
+ *
37
+ * // With descriptions - helps AI understand when to use each
38
+ * collections: {
39
+ * products: 'Product catalog with name, price, description, and image',
40
+ * 'team-members': 'Staff profiles with name, role, bio, and headshot',
41
+ * }
42
+ * ```
43
+ */
44
+ collections?: string[] | Record<string, string>;
45
+ /**
46
+ * Enable media library tool.
47
+ * When true, AI can search for images by filename or alt text.
48
+ * @default false
49
+ */
50
+ media?: boolean | string;
51
+ /**
52
+ * Pages collection slug for internal linking.
53
+ * When set, AI can look up page URLs for navigation/links.
54
+ */
55
+ pages?: string;
56
+ /**
57
+ * Globals the AI can read.
58
+ * Useful for site settings, contact info, etc.
59
+ *
60
+ * @example
61
+ * ```typescript
62
+ * globals: ['site-settings', 'contact-info']
63
+ * ```
64
+ */
65
+ globals?: string[];
66
+ }
67
+ /**
68
+ * Creates a set of AI tools for querying Payload CMS
69
+ *
70
+ * IMPORTANT: These tools need the `payload` instance at runtime.
71
+ * The plugin automatically injects `payload` into the tool execution context.
72
+ *
73
+ * @example
74
+ * ```typescript
75
+ * import { createPayloadTools } from '@delmaredigital/payload-puck/ai'
76
+ *
77
+ * createPuckPlugin({
78
+ * ai: {
79
+ * enabled: true,
80
+ * context: 'You are building pages for Acme Corp...',
81
+ * tools: createPayloadTools({
82
+ * collections: {
83
+ * products: 'Products with name, price, description, and image',
84
+ * testimonials: 'Customer testimonials with quote, author, and company',
85
+ * },
86
+ * media: true,
87
+ * pages: 'pages',
88
+ * globals: ['site-settings'],
89
+ * }),
90
+ * },
91
+ * })
92
+ * ```
93
+ */
94
+ export declare function createPayloadTools(config: PayloadToolsConfig): Record<string, AiTool<any, any>>;
95
+ /**
96
+ * Create a custom AI tool with proper typing
97
+ *
98
+ * @example
99
+ * ```typescript
100
+ * import { createTool } from '@delmaredigital/payload-puck/ai'
101
+ * import { z } from 'zod'
102
+ *
103
+ * const getWeather = createTool({
104
+ * description: 'Get current weather for a location',
105
+ * inputSchema: z.object({
106
+ * city: z.string().describe('City name'),
107
+ * }),
108
+ * execute: async ({ city }, context) => {
109
+ * const response = await fetch(`https://api.weather.com/...`)
110
+ * return response.json()
111
+ * },
112
+ * })
113
+ * ```
114
+ */
115
+ export declare function createTool<TInput, TOutput>(tool: AiTool<TInput, TOutput>): AiTool<TInput, TOutput>;
116
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/ai/tools/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAGH,OAAO,KAAK,EAAE,MAAM,EAAiB,MAAM,aAAa,CAAA;AAoBxD;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC;;;;;;;;;;;;;;;OAeG;IACH,WAAW,CAAC,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAE/C;;;;OAIG;IACH,KAAK,CAAC,EAAE,OAAO,GAAG,MAAM,CAAA;IAExB;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAA;IAEd;;;;;;;;OAQG;IACH,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;CACnB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,kBAAkB,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAmL/F;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,UAAU,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAElG"}