@ai-stack/payloadcms 3.0.0-beta.104

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 (250) hide show
  1. package/LICENSE.md +21 -0
  2. package/README.md +137 -0
  3. package/dist/ai/analyse.d.ts +2 -0
  4. package/dist/ai/analyse.d.ts.map +1 -0
  5. package/dist/ai/analyse.js +3 -0
  6. package/dist/ai/analyse.js.map +1 -0
  7. package/dist/ai/models/anthropic/generateRichText.d.ts +2 -0
  8. package/dist/ai/models/anthropic/generateRichText.d.ts.map +1 -0
  9. package/dist/ai/models/anthropic/generateRichText.js +38 -0
  10. package/dist/ai/models/anthropic/generateRichText.js.map +1 -0
  11. package/dist/ai/models/anthropic/index.d.ts +3 -0
  12. package/dist/ai/models/anthropic/index.d.ts.map +1 -0
  13. package/dist/ai/models/anthropic/index.js +112 -0
  14. package/dist/ai/models/anthropic/index.js.map +1 -0
  15. package/dist/ai/models/elevenLabs/generateVoice.d.ts +10 -0
  16. package/dist/ai/models/elevenLabs/generateVoice.d.ts.map +1 -0
  17. package/dist/ai/models/elevenLabs/generateVoice.js +20 -0
  18. package/dist/ai/models/elevenLabs/generateVoice.js.map +1 -0
  19. package/dist/ai/models/elevenLabs/index.d.ts +3 -0
  20. package/dist/ai/models/elevenLabs/index.d.ts.map +1 -0
  21. package/dist/ai/models/elevenLabs/index.js +129 -0
  22. package/dist/ai/models/elevenLabs/index.js.map +1 -0
  23. package/dist/ai/models/elevenLabs/voices.d.ts +4 -0
  24. package/dist/ai/models/elevenLabs/voices.d.ts.map +1 -0
  25. package/dist/ai/models/elevenLabs/voices.js +24 -0
  26. package/dist/ai/models/elevenLabs/voices.js.map +1 -0
  27. package/dist/ai/models/example-prompt-rich-text.md +47 -0
  28. package/dist/ai/models/example.d.ts +73 -0
  29. package/dist/ai/models/example.d.ts.map +1 -0
  30. package/dist/ai/models/example.js +126 -0
  31. package/dist/ai/models/example.js.map +1 -0
  32. package/dist/ai/models/index.d.ts +3 -0
  33. package/dist/ai/models/index.d.ts.map +1 -0
  34. package/dist/ai/models/index.js +11 -0
  35. package/dist/ai/models/index.js.map +1 -0
  36. package/dist/ai/models/openai/generateImage.d.ts +10 -0
  37. package/dist/ai/models/openai/generateImage.d.ts.map +1 -0
  38. package/dist/ai/models/openai/generateImage.js +20 -0
  39. package/dist/ai/models/openai/generateImage.js.map +1 -0
  40. package/dist/ai/models/openai/generateRichText.d.ts +2 -0
  41. package/dist/ai/models/openai/generateRichText.d.ts.map +1 -0
  42. package/dist/ai/models/openai/generateRichText.js +38 -0
  43. package/dist/ai/models/openai/generateRichText.js.map +1 -0
  44. package/dist/ai/models/openai/generateVoice.d.ts +7 -0
  45. package/dist/ai/models/openai/generateVoice.d.ts.map +1 -0
  46. package/dist/ai/models/openai/generateVoice.js +19 -0
  47. package/dist/ai/models/openai/generateVoice.js.map +1 -0
  48. package/dist/ai/models/openai/index.d.ts +3 -0
  49. package/dist/ai/models/openai/index.d.ts.map +1 -0
  50. package/dist/ai/models/openai/index.js +276 -0
  51. package/dist/ai/models/openai/index.js.map +1 -0
  52. package/dist/ai/prompts.d.ts +25 -0
  53. package/dist/ai/prompts.d.ts.map +1 -0
  54. package/dist/ai/prompts.js +214 -0
  55. package/dist/ai/prompts.js.map +1 -0
  56. package/dist/ai/schemas/lexical.schema.d.ts +31 -0
  57. package/dist/ai/schemas/lexical.schema.d.ts.map +1 -0
  58. package/dist/ai/schemas/lexical.schema.js +102 -0
  59. package/dist/ai/schemas/lexical.schema.js.map +1 -0
  60. package/dist/ai/utils/generateFileNameByPrompt.d.ts +2 -0
  61. package/dist/ai/utils/generateFileNameByPrompt.d.ts.map +1 -0
  62. package/dist/ai/utils/generateFileNameByPrompt.js +21 -0
  63. package/dist/ai/utils/generateFileNameByPrompt.js.map +1 -0
  64. package/dist/ai/utils/generateSeedPrompt.d.ts +5 -0
  65. package/dist/ai/utils/generateSeedPrompt.d.ts.map +1 -0
  66. package/dist/ai/utils/generateSeedPrompt.js +23 -0
  67. package/dist/ai/utils/generateSeedPrompt.js.map +1 -0
  68. package/dist/collections/Instructions.d.ts +3 -0
  69. package/dist/collections/Instructions.d.ts.map +1 -0
  70. package/dist/collections/Instructions.js +109 -0
  71. package/dist/collections/Instructions.js.map +1 -0
  72. package/dist/defaults.d.ts +10 -0
  73. package/dist/defaults.d.ts.map +1 -0
  74. package/dist/defaults.js +13 -0
  75. package/dist/defaults.js.map +1 -0
  76. package/dist/endpoints/index.d.ts +3 -0
  77. package/dist/endpoints/index.d.ts.map +1 -0
  78. package/dist/endpoints/index.js +141 -0
  79. package/dist/endpoints/index.js.map +1 -0
  80. package/dist/exports/client.d.ts +3 -0
  81. package/dist/exports/client.d.ts.map +1 -0
  82. package/dist/exports/client.js +4 -0
  83. package/dist/exports/client.js.map +1 -0
  84. package/dist/exports/fields.d.ts +4 -0
  85. package/dist/exports/fields.d.ts.map +1 -0
  86. package/dist/exports/fields.js +5 -0
  87. package/dist/exports/fields.js.map +1 -0
  88. package/dist/exports/types.d.ts +3 -0
  89. package/dist/exports/types.d.ts.map +1 -0
  90. package/dist/exports/types.js +3 -0
  91. package/dist/exports/types.js.map +1 -0
  92. package/dist/fields/ComposeField/ComposeField.d.ts +4 -0
  93. package/dist/fields/ComposeField/ComposeField.d.ts.map +1 -0
  94. package/dist/fields/ComposeField/ComposeField.js +18 -0
  95. package/dist/fields/ComposeField/ComposeField.js.map +1 -0
  96. package/dist/fields/LexicalEditor/ComposeFeatureComponent.d.ts +2 -0
  97. package/dist/fields/LexicalEditor/ComposeFeatureComponent.d.ts.map +1 -0
  98. package/dist/fields/LexicalEditor/ComposeFeatureComponent.js +15 -0
  99. package/dist/fields/LexicalEditor/ComposeFeatureComponent.js.map +1 -0
  100. package/dist/fields/LexicalEditor/feature.client.d.ts +2 -0
  101. package/dist/fields/LexicalEditor/feature.client.d.ts.map +1 -0
  102. package/dist/fields/LexicalEditor/feature.client.js +13 -0
  103. package/dist/fields/LexicalEditor/feature.client.js.map +1 -0
  104. package/dist/fields/LexicalEditor/feature.server.d.ts +2 -0
  105. package/dist/fields/LexicalEditor/feature.server.d.ts.map +1 -0
  106. package/dist/fields/LexicalEditor/feature.server.js +12 -0
  107. package/dist/fields/LexicalEditor/feature.server.js.map +1 -0
  108. package/dist/fields/PromptEditorField/PromptEditorField.d.ts +4 -0
  109. package/dist/fields/PromptEditorField/PromptEditorField.d.ts.map +1 -0
  110. package/dist/fields/PromptEditorField/PromptEditorField.js +41 -0
  111. package/dist/fields/PromptEditorField/PromptEditorField.js.map +1 -0
  112. package/dist/fields/SelectField/SelectField.d.ts +10 -0
  113. package/dist/fields/SelectField/SelectField.d.ts.map +1 -0
  114. package/dist/fields/SelectField/SelectField.js +41 -0
  115. package/dist/fields/SelectField/SelectField.js.map +1 -0
  116. package/dist/index.d.ts +10 -0
  117. package/dist/index.d.ts.map +1 -0
  118. package/dist/index.js +10 -0
  119. package/dist/index.js.map +1 -0
  120. package/dist/init.d.ts +4 -0
  121. package/dist/init.d.ts.map +1 -0
  122. package/dist/init.js +81 -0
  123. package/dist/init.js.map +1 -0
  124. package/dist/libraries/autocomplete/AutocompleteTextArea.d.ts +8 -0
  125. package/dist/libraries/autocomplete/AutocompleteTextArea.d.ts.map +1 -0
  126. package/dist/libraries/autocomplete/AutocompleteTextArea.js +437 -0
  127. package/dist/libraries/autocomplete/AutocompleteTextArea.js.map +1 -0
  128. package/dist/libraries/autocomplete/AutocompleteTextArea.module.scss +35 -0
  129. package/dist/libraries/handlebars/asyncHandlebars.d.ts +2 -0
  130. package/dist/libraries/handlebars/asyncHandlebars.d.ts.map +1 -0
  131. package/dist/libraries/handlebars/asyncHandlebars.js +5 -0
  132. package/dist/libraries/handlebars/asyncHandlebars.js.map +1 -0
  133. package/dist/libraries/handlebars/helpers.d.ts +2 -0
  134. package/dist/libraries/handlebars/helpers.d.ts.map +1 -0
  135. package/dist/libraries/handlebars/helpers.js +22 -0
  136. package/dist/libraries/handlebars/helpers.js.map +1 -0
  137. package/dist/libraries/handlebars/helpersMap.d.ts +12 -0
  138. package/dist/libraries/handlebars/helpersMap.d.ts.map +1 -0
  139. package/dist/libraries/handlebars/helpersMap.js +13 -0
  140. package/dist/libraries/handlebars/helpersMap.js.map +1 -0
  141. package/dist/libraries/handlebars/replacePlaceholders.d.ts +2 -0
  142. package/dist/libraries/handlebars/replacePlaceholders.d.ts.map +1 -0
  143. package/dist/libraries/handlebars/replacePlaceholders.js +8 -0
  144. package/dist/libraries/handlebars/replacePlaceholders.js.map +1 -0
  145. package/dist/plugin.d.ts +5 -0
  146. package/dist/plugin.d.ts.map +1 -0
  147. package/dist/plugin.js +121 -0
  148. package/dist/plugin.js.map +1 -0
  149. package/dist/providers/InstructionsProvider/InstructionsProvider.d.ts +6 -0
  150. package/dist/providers/InstructionsProvider/InstructionsProvider.d.ts.map +1 -0
  151. package/dist/providers/InstructionsProvider/InstructionsProvider.js +31 -0
  152. package/dist/providers/InstructionsProvider/InstructionsProvider.js.map +1 -0
  153. package/dist/providers/InstructionsProvider/useInstructions.d.ts +4 -0
  154. package/dist/providers/InstructionsProvider/useInstructions.d.ts.map +1 -0
  155. package/dist/providers/InstructionsProvider/useInstructions.js +38 -0
  156. package/dist/providers/InstructionsProvider/useInstructions.js.map +1 -0
  157. package/dist/styles.d.js +2 -0
  158. package/dist/styles.d.js.map +1 -0
  159. package/dist/translations/en.json +4 -0
  160. package/dist/translations/es.json +4 -0
  161. package/dist/translations/fa.json +4 -0
  162. package/dist/translations/fr.json +4 -0
  163. package/dist/translations/index.d.ts +38 -0
  164. package/dist/translations/index.d.ts.map +1 -0
  165. package/dist/translations/index.js +36 -0
  166. package/dist/translations/index.js.map +1 -0
  167. package/dist/translations/pl.json +4 -0
  168. package/dist/translations/ru.json +4 -0
  169. package/dist/translations/translation-schema.json +16 -0
  170. package/dist/translations/uk.json +4 -0
  171. package/dist/types.d.ts +94 -0
  172. package/dist/types.d.ts.map +1 -0
  173. package/dist/types.js +6 -0
  174. package/dist/types.js.map +1 -0
  175. package/dist/ui/Compose/Compose.d.ts +9 -0
  176. package/dist/ui/Compose/Compose.d.ts.map +1 -0
  177. package/dist/ui/Compose/Compose.js +176 -0
  178. package/dist/ui/Compose/Compose.js.map +1 -0
  179. package/dist/ui/Compose/UndoRedoActions.d.ts +4 -0
  180. package/dist/ui/Compose/UndoRedoActions.d.ts.map +1 -0
  181. package/dist/ui/Compose/UndoRedoActions.js +56 -0
  182. package/dist/ui/Compose/UndoRedoActions.js.map +1 -0
  183. package/dist/ui/Compose/compose.module.scss +19 -0
  184. package/dist/ui/Compose/hooks/menu/Item.d.ts +5 -0
  185. package/dist/ui/Compose/hooks/menu/Item.d.ts.map +1 -0
  186. package/dist/ui/Compose/hooks/menu/Item.js +32 -0
  187. package/dist/ui/Compose/hooks/menu/Item.js.map +1 -0
  188. package/dist/ui/Compose/hooks/menu/TranslateMenu.d.ts +4 -0
  189. package/dist/ui/Compose/hooks/menu/TranslateMenu.d.ts.map +1 -0
  190. package/dist/ui/Compose/hooks/menu/TranslateMenu.js +78 -0
  191. package/dist/ui/Compose/hooks/menu/TranslateMenu.js.map +1 -0
  192. package/dist/ui/Compose/hooks/menu/items.d.ts +9 -0
  193. package/dist/ui/Compose/hooks/menu/items.d.ts.map +1 -0
  194. package/dist/ui/Compose/hooks/menu/items.js +12 -0
  195. package/dist/ui/Compose/hooks/menu/items.js.map +1 -0
  196. package/dist/ui/Compose/hooks/menu/itemsMap.d.ts +11 -0
  197. package/dist/ui/Compose/hooks/menu/itemsMap.d.ts.map +1 -0
  198. package/dist/ui/Compose/hooks/menu/itemsMap.js +68 -0
  199. package/dist/ui/Compose/hooks/menu/itemsMap.js.map +1 -0
  200. package/dist/ui/Compose/hooks/menu/menu.module.scss +109 -0
  201. package/dist/ui/Compose/hooks/menu/useMenu.d.ts +11 -0
  202. package/dist/ui/Compose/hooks/menu/useMenu.d.ts.map +1 -0
  203. package/dist/ui/Compose/hooks/menu/useMenu.js +93 -0
  204. package/dist/ui/Compose/hooks/menu/useMenu.js.map +1 -0
  205. package/dist/ui/Compose/hooks/useGenerate.d.ts +11 -0
  206. package/dist/ui/Compose/hooks/useGenerate.d.ts.map +1 -0
  207. package/dist/ui/Compose/hooks/useGenerate.js +175 -0
  208. package/dist/ui/Compose/hooks/useGenerate.js.map +1 -0
  209. package/dist/ui/Compose/hooks/useHistory.d.ts +9 -0
  210. package/dist/ui/Compose/hooks/useHistory.d.ts.map +1 -0
  211. package/dist/ui/Compose/hooks/useHistory.js +171 -0
  212. package/dist/ui/Compose/hooks/useHistory.js.map +1 -0
  213. package/dist/ui/Icons/Icons.d.ts +45 -0
  214. package/dist/ui/Icons/Icons.d.ts.map +1 -0
  215. package/dist/ui/Icons/Icons.js +154 -0
  216. package/dist/ui/Icons/Icons.js.map +1 -0
  217. package/dist/ui/Icons/LottieAnimation.d.ts +5 -0
  218. package/dist/ui/Icons/LottieAnimation.d.ts.map +1 -0
  219. package/dist/ui/Icons/LottieAnimation.js +100 -0
  220. package/dist/ui/Icons/LottieAnimation.js.map +1 -0
  221. package/dist/ui/Icons/icons.module.css +26 -0
  222. package/dist/utilities/getFieldBySchemaPath.d.ts +3 -0
  223. package/dist/utilities/getFieldBySchemaPath.d.ts.map +1 -0
  224. package/dist/utilities/getFieldBySchemaPath.js +37 -0
  225. package/dist/utilities/getFieldBySchemaPath.js.map +1 -0
  226. package/dist/utilities/getFieldInfo.d.ts +3 -0
  227. package/dist/utilities/getFieldInfo.d.ts.map +1 -0
  228. package/dist/utilities/getFieldInfo.js +14 -0
  229. package/dist/utilities/getFieldInfo.js.map +1 -0
  230. package/dist/utilities/isPluginActivated.d.ts +2 -0
  231. package/dist/utilities/isPluginActivated.d.ts.map +1 -0
  232. package/dist/utilities/isPluginActivated.js +5 -0
  233. package/dist/utilities/isPluginActivated.js.map +1 -0
  234. package/dist/utilities/jsonToZod.d.ts +3 -0
  235. package/dist/utilities/jsonToZod.d.ts.map +1 -0
  236. package/dist/utilities/jsonToZod.js +33 -0
  237. package/dist/utilities/jsonToZod.js.map +1 -0
  238. package/dist/utilities/lexicalToHTML.d.ts +4 -0
  239. package/dist/utilities/lexicalToHTML.d.ts.map +1 -0
  240. package/dist/utilities/lexicalToHTML.js +11 -0
  241. package/dist/utilities/lexicalToHTML.js.map +1 -0
  242. package/dist/utilities/setSafeLexicalState.d.ts +5 -0
  243. package/dist/utilities/setSafeLexicalState.d.ts.map +1 -0
  244. package/dist/utilities/setSafeLexicalState.js +20 -0
  245. package/dist/utilities/setSafeLexicalState.js.map +1 -0
  246. package/dist/utilities/updateFieldsConfig.d.ts +8 -0
  247. package/dist/utilities/updateFieldsConfig.d.ts.map +1 -0
  248. package/dist/utilities/updateFieldsConfig.js +89 -0
  249. package/dist/utilities/updateFieldsConfig.js.map +1 -0
  250. package/package.json +124 -0
@@ -0,0 +1,2 @@
1
+ export declare const registerEditorHelper: (payload: any, schemaPath: any) => void;
2
+ //# sourceMappingURL=helpers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../src/libraries/handlebars/helpers.ts"],"names":[],"mappings":"AAOA,eAAO,MAAM,oBAAoB,yCAqBhC,CAAA"}
@@ -0,0 +1,22 @@
1
+ import { getFieldInfo } from '../../utilities/getFieldInfo.js';
2
+ import { lexicalToHTML } from '../../utilities/lexicalToHTML.js';
3
+ import { asyncHandlebars } from './asyncHandlebars.js';
4
+ import { handlebarsHelpersMap } from './helpersMap.js';
5
+ export const registerEditorHelper = (payload, schemaPath)=>{
6
+ //TODO: add autocomplete ability using handlebars template on PromptEditorField and include custom helpers in dropdown
7
+ let fieldInfo = getFieldInfo(payload.collections, schemaPath);
8
+ const schemaPathChunks = schemaPath.split('.');
9
+ asyncHandlebars.registerHelper(handlebarsHelpersMap.toHTML.name, async function(content, options) {
10
+ const collectionSlug = schemaPathChunks[0];
11
+ const { ids } = options;
12
+ for (const id of ids){
13
+ //TODO: Find a better way to get schemaPath of defined field in prompt editor
14
+ const path = `${collectionSlug}.${id}`;
15
+ fieldInfo = getFieldInfo(payload.collections, path);
16
+ }
17
+ const html = await lexicalToHTML(content, fieldInfo.editor?.editorConfig);
18
+ return new asyncHandlebars.SafeString(html);
19
+ });
20
+ };
21
+
22
+ //# sourceMappingURL=helpers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/libraries/handlebars/helpers.ts"],"sourcesContent":["import type { SerializedEditorState } from 'lexical'\n\nimport { getFieldInfo } from '../../utilities/getFieldInfo.js'\nimport { lexicalToHTML } from '../../utilities/lexicalToHTML.js'\nimport { asyncHandlebars } from './asyncHandlebars.js'\nimport { handlebarsHelpersMap } from './helpersMap.js'\n\nexport const registerEditorHelper = (payload, schemaPath) => {\n //TODO: add autocomplete ability using handlebars template on PromptEditorField and include custom helpers in dropdown\n\n let fieldInfo = getFieldInfo(payload.collections, schemaPath)\n const schemaPathChunks = schemaPath.split('.')\n\n asyncHandlebars.registerHelper(\n handlebarsHelpersMap.toHTML.name,\n async function (content: SerializedEditorState, options) {\n const collectionSlug = schemaPathChunks[0]\n const { ids } = options\n for (const id of ids) {\n //TODO: Find a better way to get schemaPath of defined field in prompt editor\n const path = `${collectionSlug}.${id}`\n fieldInfo = getFieldInfo(payload.collections, path)\n }\n\n const html = await lexicalToHTML(content, fieldInfo.editor?.editorConfig)\n return new asyncHandlebars.SafeString(html)\n },\n )\n}\n"],"names":["getFieldInfo","lexicalToHTML","asyncHandlebars","handlebarsHelpersMap","registerEditorHelper","payload","schemaPath","fieldInfo","collections","schemaPathChunks","split","registerHelper","toHTML","name","content","options","collectionSlug","ids","id","path","html","editor","editorConfig","SafeString"],"mappings":"AAEA,SAASA,YAAY,QAAQ,kCAAiC;AAC9D,SAASC,aAAa,QAAQ,mCAAkC;AAChE,SAASC,eAAe,QAAQ,uBAAsB;AACtD,SAASC,oBAAoB,QAAQ,kBAAiB;AAEtD,OAAO,MAAMC,uBAAuB,CAACC,SAASC;IAC5C,sHAAsH;IAEtH,IAAIC,YAAYP,aAAaK,QAAQG,WAAW,EAAEF;IAClD,MAAMG,mBAAmBH,WAAWI,KAAK,CAAC;IAE1CR,gBAAgBS,cAAc,CAC5BR,qBAAqBS,MAAM,CAACC,IAAI,EAChC,eAAgBC,OAA8B,EAAEC,OAAO;QACrD,MAAMC,iBAAiBP,gBAAgB,CAAC,EAAE;QAC1C,MAAM,EAAEQ,GAAG,EAAE,GAAGF;QAChB,KAAK,MAAMG,MAAMD,IAAK;YACpB,6EAA6E;YAC7E,MAAME,OAAO,CAAC,EAAEH,eAAe,CAAC,EAAEE,GAAG,CAAC;YACtCX,YAAYP,aAAaK,QAAQG,WAAW,EAAEW;QAChD;QAEA,MAAMC,OAAO,MAAMnB,cAAca,SAASP,UAAUc,MAAM,EAAEC;QAC5D,OAAO,IAAIpB,gBAAgBqB,UAAU,CAACH;IACxC;AAEJ,EAAC"}
@@ -0,0 +1,12 @@
1
+ type SupportedHelpers = 'toHTML' | 'toText';
2
+ interface HelperFieldConfig {
3
+ field: string;
4
+ name: string;
5
+ }
6
+ type HandlebarsHelpers = {
7
+ [K in SupportedHelpers]: HelperFieldConfig;
8
+ };
9
+ export declare const handlebarsHelpersMap: HandlebarsHelpers;
10
+ export declare const handlebarsHelpers: string[];
11
+ export {};
12
+ //# sourceMappingURL=helpersMap.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"helpersMap.d.ts","sourceRoot":"","sources":["../../../src/libraries/handlebars/helpersMap.ts"],"names":[],"mappings":"AAAA,KAAK,gBAAgB,GAAG,QAAQ,GAAG,QAAQ,CAAA;AAE3C,UAAU,iBAAiB;IACzB,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;CACb;AAED,KAAK,iBAAiB,GAAG;KACtB,CAAC,IAAI,gBAAgB,GAAG,iBAAiB;CAC3C,CAAA;AAED,eAAO,MAAM,oBAAoB,EAAE,iBASlC,CAAA;AAED,eAAO,MAAM,iBAAiB,UAAoC,CAAA"}
@@ -0,0 +1,13 @@
1
+ export const handlebarsHelpersMap = {
2
+ toHTML: {
3
+ name: 'toHTML',
4
+ field: 'richText'
5
+ },
6
+ toText: {
7
+ name: 'toText',
8
+ field: '-'
9
+ }
10
+ };
11
+ export const handlebarsHelpers = Object.keys(handlebarsHelpersMap);
12
+
13
+ //# sourceMappingURL=helpersMap.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/libraries/handlebars/helpersMap.ts"],"sourcesContent":["type SupportedHelpers = 'toHTML' | 'toText'\n\ninterface HelperFieldConfig {\n field: string\n name: string\n}\n\ntype HandlebarsHelpers = {\n [K in SupportedHelpers]: HelperFieldConfig\n}\n\nexport const handlebarsHelpersMap: HandlebarsHelpers = {\n toHTML: {\n name: 'toHTML',\n field: 'richText',\n },\n toText: {\n name: 'toText',\n field: '-',\n },\n}\n\nexport const handlebarsHelpers = Object.keys(handlebarsHelpersMap)\n"],"names":["handlebarsHelpersMap","toHTML","name","field","toText","handlebarsHelpers","Object","keys"],"mappings":"AAWA,OAAO,MAAMA,uBAA0C;IACrDC,QAAQ;QACNC,MAAM;QACNC,OAAO;IACT;IACAC,QAAQ;QACNF,MAAM;QACNC,OAAO;IACT;AACF,EAAC;AAED,OAAO,MAAME,oBAAoBC,OAAOC,IAAI,CAACP,sBAAqB"}
@@ -0,0 +1,2 @@
1
+ export declare const replacePlaceholders: (prompt: string, values: object) => any;
2
+ //# sourceMappingURL=replacePlaceholders.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"replacePlaceholders.d.ts","sourceRoot":"","sources":["../../../src/libraries/handlebars/replacePlaceholders.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,mBAAmB,WAAY,MAAM,UAAU,MAAM,QAEjE,CAAA"}
@@ -0,0 +1,8 @@
1
+ import { asyncHandlebars } from './asyncHandlebars.js';
2
+ export const replacePlaceholders = (prompt, values)=>{
3
+ return asyncHandlebars.compile(prompt, {
4
+ trackIds: true
5
+ })(values);
6
+ };
7
+
8
+ //# sourceMappingURL=replacePlaceholders.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/libraries/handlebars/replacePlaceholders.ts"],"sourcesContent":["import { asyncHandlebars } from './asyncHandlebars.js'\n\nexport const replacePlaceholders = (prompt: string, values: object) => {\n return asyncHandlebars.compile(prompt, { trackIds: true })(values)\n}\n"],"names":["asyncHandlebars","replacePlaceholders","prompt","values","compile","trackIds"],"mappings":"AAAA,SAASA,eAAe,QAAQ,uBAAsB;AAEtD,OAAO,MAAMC,sBAAsB,CAACC,QAAgBC;IAClD,OAAOH,gBAAgBI,OAAO,CAACF,QAAQ;QAAEG,UAAU;IAAK,GAAGF;AAC7D,EAAC"}
@@ -0,0 +1,5 @@
1
+ import type { Config } from 'payload';
2
+ import type { PluginConfig } from './types.js';
3
+ declare const payloadAiPlugin: (pluginConfig: PluginConfig) => (incomingConfig: Config) => Config;
4
+ export { payloadAiPlugin };
5
+ //# sourceMappingURL=plugin.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,SAAS,CAAA;AAKrC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAgB9C,QAAA,MAAM,eAAe,iBACJ,YAAY,sBACV,MAAM,KAAG,MAuGzB,CAAA;AAEH,OAAO,EAAE,eAAe,EAAE,CAAA"}
package/dist/plugin.js ADDED
@@ -0,0 +1,121 @@
1
+ import { deepMerge } from 'payload/shared';
2
+ import { zodToJsonSchema } from 'zod-to-json-schema';
3
+ import { lexicalSchema } from './ai/schemas/lexical.schema.js';
4
+ import { Instructions } from './collections/Instructions.js';
5
+ import { PLUGIN_INSTRUCTIONS_MAP_GLOBAL, PLUGIN_NAME } from './defaults.js';
6
+ import { endpoints } from './endpoints/index.js';
7
+ import { init } from './init.js';
8
+ import { translations } from './translations/index.js';
9
+ import { isPluginActivated } from './utilities/isPluginActivated.js';
10
+ import { updateFieldsConfig } from './utilities/updateFieldsConfig.js';
11
+ const defaultPluginConfig = {
12
+ generatePromptOnInit: true,
13
+ collections: {}
14
+ };
15
+ const payloadAiPlugin = (pluginConfig)=>(incomingConfig)=>{
16
+ pluginConfig = {
17
+ ...defaultPluginConfig,
18
+ ...pluginConfig
19
+ };
20
+ const isActivated = isPluginActivated();
21
+ let updatedConfig = {
22
+ ...incomingConfig
23
+ };
24
+ let collectionsFieldPathMap = {};
25
+ if (isActivated) {
26
+ // Inject editor schema to config, so that it can be accessed when /textarea endpoint will hit
27
+ const zodLexicalSchema = lexicalSchema(pluginConfig.editorConfig?.nodes);
28
+ if (pluginConfig.debugging) {
29
+ Instructions.admin.hidden = false;
30
+ }
31
+ Instructions.admin.custom = {
32
+ ...Instructions.admin.custom || {},
33
+ [PLUGIN_NAME]: {
34
+ editorConfig: {
35
+ // Used in admin client for useObject hook
36
+ schema: zodToJsonSchema(zodLexicalSchema)
37
+ }
38
+ }
39
+ };
40
+ Instructions.custom = {
41
+ ...Instructions.custom || {},
42
+ [PLUGIN_NAME]: {
43
+ editorConfig: {
44
+ // Used in textarea endpoint for llm
45
+ schema: zodLexicalSchema
46
+ }
47
+ }
48
+ };
49
+ const collections = [
50
+ ...incomingConfig.collections ?? [],
51
+ Instructions
52
+ ];
53
+ const { collections: collectionSlugs = [] } = pluginConfig;
54
+ incomingConfig.admin.components.providers = [
55
+ ...incomingConfig.admin.components.providers ?? [],
56
+ {
57
+ clientProps: {},
58
+ path: '@ai-stack/payloadcms/client#InstructionsProvider',
59
+ serverProps: {}
60
+ }
61
+ ];
62
+ updatedConfig = {
63
+ ...incomingConfig,
64
+ collections: collections.map((collection)=>{
65
+ if (collectionSlugs[collection.slug]) {
66
+ const { schemaPathMap, updatedCollectionConfig } = updateFieldsConfig(collection);
67
+ collectionsFieldPathMap = {
68
+ ...collectionsFieldPathMap,
69
+ ...schemaPathMap
70
+ };
71
+ return updatedCollectionConfig;
72
+ }
73
+ return collection;
74
+ }),
75
+ endpoints: [
76
+ ...incomingConfig.endpoints ?? [],
77
+ endpoints.textarea,
78
+ endpoints.upload
79
+ ],
80
+ globals: [
81
+ ...incomingConfig.globals || [],
82
+ {
83
+ slug: PLUGIN_INSTRUCTIONS_MAP_GLOBAL,
84
+ access: {
85
+ read: ()=>true
86
+ },
87
+ admin: {
88
+ hidden: !pluginConfig.debugging
89
+ },
90
+ fields: [
91
+ {
92
+ name: 'map',
93
+ type: 'json'
94
+ }
95
+ ]
96
+ }
97
+ ],
98
+ i18n: {
99
+ ...incomingConfig.i18n,
100
+ translations: {
101
+ ...deepMerge(translations, incomingConfig.i18n?.translations)
102
+ }
103
+ }
104
+ };
105
+ }
106
+ updatedConfig.onInit = async (payload)=>{
107
+ if (incomingConfig.onInit) await incomingConfig.onInit(payload);
108
+ if (!isActivated) {
109
+ payload.logger.warn(`— AI Plugin: Not activated. Please verify your environment keys.`);
110
+ return;
111
+ }
112
+ await init(payload, collectionsFieldPathMap, pluginConfig).catch((error)=>{
113
+ console.error(error);
114
+ payload.logger.error(`— AI Plugin: Initialization Error: ${error}`);
115
+ });
116
+ };
117
+ return updatedConfig;
118
+ };
119
+ export { payloadAiPlugin };
120
+
121
+ //# sourceMappingURL=plugin.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/plugin.ts"],"sourcesContent":["import type { Config } from 'payload'\n\nimport { deepMerge } from 'payload/shared'\nimport { zodToJsonSchema } from 'zod-to-json-schema'\n\nimport type { PluginConfig } from './types.js'\n\nimport { lexicalSchema } from './ai/schemas/lexical.schema.js'\nimport { Instructions } from './collections/Instructions.js'\nimport { PLUGIN_INSTRUCTIONS_MAP_GLOBAL, PLUGIN_NAME } from './defaults.js'\nimport { endpoints } from './endpoints/index.js'\nimport { init } from './init.js'\nimport { translations } from './translations/index.js'\nimport { isPluginActivated } from './utilities/isPluginActivated.js'\nimport { updateFieldsConfig } from './utilities/updateFieldsConfig.js'\n\nconst defaultPluginConfig: PluginConfig = {\n generatePromptOnInit: true,\n collections: {},\n}\n\nconst payloadAiPlugin =\n (pluginConfig: PluginConfig) =>\n (incomingConfig: Config): Config => {\n pluginConfig = { ...defaultPluginConfig, ...pluginConfig }\n const isActivated = isPluginActivated()\n let updatedConfig: Config = { ...incomingConfig }\n let collectionsFieldPathMap = {}\n\n if (isActivated) {\n // Inject editor schema to config, so that it can be accessed when /textarea endpoint will hit\n const zodLexicalSchema = lexicalSchema(pluginConfig.editorConfig?.nodes)\n\n if (pluginConfig.debugging) {\n Instructions.admin.hidden = false\n }\n\n Instructions.admin.custom = {\n ...(Instructions.admin.custom || {}),\n [PLUGIN_NAME]: {\n editorConfig: {\n // Used in admin client for useObject hook\n schema: zodToJsonSchema(zodLexicalSchema),\n },\n },\n }\n\n Instructions.custom = {\n ...(Instructions.custom || {}),\n [PLUGIN_NAME]: {\n editorConfig: {\n // Used in textarea endpoint for llm\n schema: zodLexicalSchema,\n },\n },\n }\n\n const collections = [...(incomingConfig.collections ?? []), Instructions]\n const { collections: collectionSlugs = [] } = pluginConfig\n\n incomingConfig.admin.components.providers = [\n ...(incomingConfig.admin.components.providers ?? []),\n {\n clientProps: {},\n path: '@ai-stack/payloadcms/client#InstructionsProvider',\n serverProps: {},\n },\n ]\n\n updatedConfig = {\n ...incomingConfig,\n collections: collections.map((collection) => {\n if (collectionSlugs[collection.slug]) {\n const { schemaPathMap, updatedCollectionConfig } = updateFieldsConfig(collection)\n collectionsFieldPathMap = {\n ...collectionsFieldPathMap,\n ...schemaPathMap,\n }\n return updatedCollectionConfig\n }\n\n return collection\n }),\n endpoints: [...(incomingConfig.endpoints ?? []), endpoints.textarea, endpoints.upload],\n globals: [\n ...(incomingConfig.globals || []),\n {\n slug: PLUGIN_INSTRUCTIONS_MAP_GLOBAL,\n access: {\n read: () => true,\n },\n admin: {\n hidden: !pluginConfig.debugging,\n },\n fields: [\n {\n name: 'map',\n type: 'json',\n },\n ],\n },\n ],\n i18n: {\n ...incomingConfig.i18n,\n translations: {\n ...deepMerge(translations, incomingConfig.i18n?.translations),\n },\n },\n }\n }\n\n updatedConfig.onInit = async (payload) => {\n if (incomingConfig.onInit) await incomingConfig.onInit(payload)\n\n if (!isActivated) {\n payload.logger.warn(`— AI Plugin: Not activated. Please verify your environment keys.`)\n return\n }\n\n await init(payload, collectionsFieldPathMap, pluginConfig).catch((error) => {\n console.error(error)\n payload.logger.error(`— AI Plugin: Initialization Error: ${error}`)\n })\n }\n\n return updatedConfig\n }\n\nexport { payloadAiPlugin }\n"],"names":["deepMerge","zodToJsonSchema","lexicalSchema","Instructions","PLUGIN_INSTRUCTIONS_MAP_GLOBAL","PLUGIN_NAME","endpoints","init","translations","isPluginActivated","updateFieldsConfig","defaultPluginConfig","generatePromptOnInit","collections","payloadAiPlugin","pluginConfig","incomingConfig","isActivated","updatedConfig","collectionsFieldPathMap","zodLexicalSchema","editorConfig","nodes","debugging","admin","hidden","custom","schema","collectionSlugs","components","providers","clientProps","path","serverProps","map","collection","slug","schemaPathMap","updatedCollectionConfig","textarea","upload","globals","access","read","fields","name","type","i18n","onInit","payload","logger","warn","catch","error","console"],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ import React from 'react';
2
+ export declare const InstructionsContext: React.Context<{
3
+ instructions: any;
4
+ }>;
5
+ export declare const InstructionsProvider: React.FC;
6
+ //# sourceMappingURL=InstructionsProvider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"InstructionsProvider.d.ts","sourceRoot":"","sources":["../../../src/providers/InstructionsProvider/InstructionsProvider.tsx"],"names":[],"mappings":"AAEA,OAAO,KAA6C,MAAM,OAAO,CAAA;AAQjE,eAAO,MAAM,mBAAmB;;EAAgC,CAAA;AAEhE,eAAO,MAAM,oBAAoB,EAAE,KAAK,CAAC,EAqBxC,CAAA"}
@@ -0,0 +1,31 @@
1
+ 'use client';
2
+ import { jsx as _jsx } from "react/jsx-runtime";
3
+ import React, { createContext, useEffect, useState } from 'react';
4
+ import { PLUGIN_INSTRUCTIONS_MAP_GLOBAL } from '../../defaults.js';
5
+ const initialContext = {
6
+ instructions: undefined
7
+ };
8
+ export const InstructionsContext = /*#__PURE__*/ createContext(initialContext);
9
+ export const InstructionsProvider = ({ children })=>{
10
+ const [instructions, setInstructionsState] = useState({});
11
+ // This is here because each field have separate instructions and
12
+ // their ID is needed to edit them for Drawer, so instead of fetching it
13
+ // one by one its map is saved in globals during build
14
+ useEffect(()=>{
15
+ fetch(`/api/globals/${PLUGIN_INSTRUCTIONS_MAP_GLOBAL}`).then((res)=>{
16
+ res.json().then((data)=>{
17
+ setInstructionsState(data.map);
18
+ });
19
+ }).catch((err)=>{
20
+ console.error('InstructionsProvider:', err);
21
+ });
22
+ }, []);
23
+ return /*#__PURE__*/ _jsx(InstructionsContext.Provider, {
24
+ value: {
25
+ instructions
26
+ },
27
+ children: children
28
+ });
29
+ };
30
+
31
+ //# sourceMappingURL=InstructionsProvider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/providers/InstructionsProvider/InstructionsProvider.tsx"],"sourcesContent":["'use client'\n\nimport React, { createContext, useEffect, useState } from 'react'\n\nimport { PLUGIN_INSTRUCTIONS_MAP_GLOBAL } from '../../defaults.js'\n\nconst initialContext = {\n instructions: undefined,\n}\n\nexport const InstructionsContext = createContext(initialContext)\n\nexport const InstructionsProvider: React.FC = ({ children }: { children: React.ReactNode }) => {\n const [instructions, setInstructionsState] = useState({})\n\n // This is here because each field have separate instructions and\n // their ID is needed to edit them for Drawer, so instead of fetching it\n // one by one its map is saved in globals during build\n useEffect(() => {\n fetch(`/api/globals/${PLUGIN_INSTRUCTIONS_MAP_GLOBAL}`)\n .then((res) => {\n res.json().then((data) => {\n setInstructionsState(data.map)\n })\n })\n .catch((err) => {\n console.error('InstructionsProvider:', err)\n })\n }, [])\n\n return (\n <InstructionsContext.Provider value={{ instructions }}>{children}</InstructionsContext.Provider>\n )\n}\n"],"names":["React","createContext","useEffect","useState","PLUGIN_INSTRUCTIONS_MAP_GLOBAL","initialContext","instructions","undefined","InstructionsContext","InstructionsProvider","children","setInstructionsState","fetch","then","res","json","data","map","catch","err","console","error","Provider","value"],"mappings":"AAAA;;AAEA,OAAOA,SAASC,aAAa,EAAEC,SAAS,EAAEC,QAAQ,QAAQ,QAAO;AAEjE,SAASC,8BAA8B,QAAQ,oBAAmB;AAElE,MAAMC,iBAAiB;IACrBC,cAAcC;AAChB;AAEA,OAAO,MAAMC,oCAAsBP,cAAcI,gBAAe;AAEhE,OAAO,MAAMI,uBAAiC,CAAC,EAAEC,QAAQ,EAAiC;IACxF,MAAM,CAACJ,cAAcK,qBAAqB,GAAGR,SAAS,CAAC;IAEvD,iEAAiE;IACjE,wEAAwE;IACxE,sDAAsD;IACtDD,UAAU;QACRU,MAAM,CAAC,aAAa,EAAER,+BAA+B,CAAC,EACnDS,IAAI,CAAC,CAACC;YACLA,IAAIC,IAAI,GAAGF,IAAI,CAAC,CAACG;gBACfL,qBAAqBK,KAAKC,GAAG;YAC/B;QACF,GACCC,KAAK,CAAC,CAACC;YACNC,QAAQC,KAAK,CAAC,yBAAyBF;QACzC;IACJ,GAAG,EAAE;IAEL,qBACE,KAACX,oBAAoBc,QAAQ;QAACC,OAAO;YAAEjB;QAAa;kBAAII;;AAE5D,EAAC"}
@@ -0,0 +1,4 @@
1
+ export declare const useInstructions: ({ path }: {
2
+ path: any;
3
+ }) => any;
4
+ //# sourceMappingURL=useInstructions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useInstructions.d.ts","sourceRoot":"","sources":["../../../src/providers/InstructionsProvider/useInstructions.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,eAAe;;SAuC3B,CAAA"}
@@ -0,0 +1,38 @@
1
+ import { useContext } from 'react';
2
+ import { InstructionsContext } from './InstructionsProvider.js';
3
+ import { handlebarsHelpers, handlebarsHelpersMap } from '../../libraries/handlebars/helpersMap.js';
4
+ export const useInstructions = ({ path })=>{
5
+ const context = useContext(InstructionsContext);
6
+ //Fields are used for autocompletion in PromptTextareaField
7
+ const fields = Object.keys(context.instructions || {}).map((key)=>{
8
+ return key.split('.').slice(1).join('.');
9
+ });
10
+ const promptEditorSuggestions = [
11
+ ...fields
12
+ ].reduce((acc, f)=>{
13
+ const fieldKey = Object.keys(context.instructions).find((k)=>k.endsWith(f));
14
+ const fieldInfo = context.instructions[fieldKey];
15
+ // Currently, Upload fields are excluded from suggestions
16
+ if (fieldInfo.fieldType === 'upload') {
17
+ return acc;
18
+ }
19
+ const helpers = handlebarsHelpers.filter((h)=>handlebarsHelpersMap[h]?.field === fieldInfo.fieldType);
20
+ if (helpers.length) {
21
+ for (const helper of helpers){
22
+ acc.push(helper + ` ${f}`);
23
+ }
24
+ return acc;
25
+ }
26
+ acc.push(f);
27
+ return acc;
28
+ }, []);
29
+ return {
30
+ ...context,
31
+ ...context.instructions[path] || {},
32
+ fields,
33
+ map: context.instructions,
34
+ promptEditorSuggestions
35
+ };
36
+ };
37
+
38
+ //# sourceMappingURL=useInstructions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/providers/InstructionsProvider/useInstructions.ts"],"sourcesContent":["import { useContext } from 'react'\n\nimport { InstructionsContext } from './InstructionsProvider.js'\nimport { handlebarsHelpers, handlebarsHelpersMap } from '../../libraries/handlebars/helpersMap.js'\n\nexport const useInstructions = ({ path }) => {\n const context = useContext(InstructionsContext)\n\n //Fields are used for autocompletion in PromptTextareaField\n const fields = Object.keys(context.instructions || {}).map((key) => {\n return key.split('.').slice(1).join('.')\n })\n\n const promptEditorSuggestions = [...fields].reduce((acc, f) => {\n const fieldKey = Object.keys(context.instructions).find((k) => k.endsWith(f))\n const fieldInfo = context.instructions[fieldKey]\n\n // Currently, Upload fields are excluded from suggestions\n if (fieldInfo.fieldType === 'upload') {\n return acc\n }\n\n const helpers = handlebarsHelpers.filter(\n (h) => handlebarsHelpersMap[h]?.field === fieldInfo.fieldType,\n )\n\n if (helpers.length) {\n for (const helper of helpers) {\n acc.push(helper + ` ${f}`)\n }\n return acc\n }\n\n acc.push(f)\n return acc\n }, [])\n\n return {\n ...context,\n ...(context.instructions[path] || {}),\n fields,\n map: context.instructions,\n promptEditorSuggestions,\n }\n}\n"],"names":["useContext","InstructionsContext","handlebarsHelpers","handlebarsHelpersMap","useInstructions","path","context","fields","Object","keys","instructions","map","key","split","slice","join","promptEditorSuggestions","reduce","acc","f","fieldKey","find","k","endsWith","fieldInfo","fieldType","helpers","filter","h","field","length","helper","push"],"mappings":"AAAA,SAASA,UAAU,QAAQ,QAAO;AAElC,SAASC,mBAAmB,QAAQ,4BAA2B;AAC/D,SAASC,iBAAiB,EAAEC,oBAAoB,QAAQ,2CAA0C;AAElG,OAAO,MAAMC,kBAAkB,CAAC,EAAEC,IAAI,EAAE;IACtC,MAAMC,UAAUN,WAAWC;IAE3B,2DAA2D;IAC3D,MAAMM,SAASC,OAAOC,IAAI,CAACH,QAAQI,YAAY,IAAI,CAAC,GAAGC,GAAG,CAAC,CAACC;QAC1D,OAAOA,IAAIC,KAAK,CAAC,KAAKC,KAAK,CAAC,GAAGC,IAAI,CAAC;IACtC;IAEA,MAAMC,0BAA0B;WAAIT;KAAO,CAACU,MAAM,CAAC,CAACC,KAAKC;QACvD,MAAMC,WAAWZ,OAAOC,IAAI,CAACH,QAAQI,YAAY,EAAEW,IAAI,CAAC,CAACC,IAAMA,EAAEC,QAAQ,CAACJ;QAC1E,MAAMK,YAAYlB,QAAQI,YAAY,CAACU,SAAS;QAEhD,yDAAyD;QACzD,IAAII,UAAUC,SAAS,KAAK,UAAU;YACpC,OAAOP;QACT;QAEA,MAAMQ,UAAUxB,kBAAkByB,MAAM,CACtC,CAACC,IAAMzB,oBAAoB,CAACyB,EAAE,EAAEC,UAAUL,UAAUC,SAAS;QAG/D,IAAIC,QAAQI,MAAM,EAAE;YAClB,KAAK,MAAMC,UAAUL,QAAS;gBAC5BR,IAAIc,IAAI,CAACD,SAAS,CAAC,CAAC,EAAEZ,EAAE,CAAC;YAC3B;YACA,OAAOD;QACT;QAEAA,IAAIc,IAAI,CAACb;QACT,OAAOD;IACT,GAAG,EAAE;IAEL,OAAO;QACL,GAAGZ,OAAO;QACV,GAAIA,QAAQI,YAAY,CAACL,KAAK,IAAI,CAAC,CAAC;QACpCE;QACAI,KAAKL,QAAQI,YAAY;QACzBM;IACF;AACF,EAAC"}
@@ -0,0 +1,2 @@
1
+
2
+ //# sourceMappingURL=styles.d.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/styles.d.ts"],"names":[],"mappings":""}
@@ -0,0 +1,4 @@
1
+ {
2
+ "$schema": "./translation-schema.json",
3
+ "ai-plugin": {}
4
+ }
@@ -0,0 +1,4 @@
1
+ {
2
+ "$schema": "./translation-schema.json",
3
+ "ai-plugin": {}
4
+ }
@@ -0,0 +1,4 @@
1
+ {
2
+ "$schema": "./translation-schema.json",
3
+ "ai-plugin": {}
4
+ }
@@ -0,0 +1,4 @@
1
+ {
2
+ "$schema": "./translation-schema.json",
3
+ "ai-plugin": {}
4
+ }
@@ -0,0 +1,38 @@
1
+ import type { NestedKeysStripped } from '@payloadcms/translations';
2
+ export declare const translations: {
3
+ en: {
4
+ $schema: string;
5
+ 'ai-plugin': {};
6
+ };
7
+ es: {
8
+ $schema: string;
9
+ 'ai-plugin': {};
10
+ };
11
+ fa: {
12
+ $schema: string;
13
+ 'ai-plugin': {};
14
+ };
15
+ fr: {
16
+ $schema: string;
17
+ 'ai-plugin': {};
18
+ };
19
+ nb: {
20
+ $schema: string;
21
+ 'ai-plugin': {};
22
+ };
23
+ pl: {
24
+ $schema: string;
25
+ 'ai-plugin': {};
26
+ };
27
+ ru: {
28
+ $schema: string;
29
+ 'ai-plugin': {};
30
+ };
31
+ uk: {
32
+ $schema: string;
33
+ 'ai-plugin': {};
34
+ };
35
+ };
36
+ export type PluginAITranslations = typeof translations.en;
37
+ export type PluginAITranslationKeys = NestedKeysStripped<PluginAITranslations>;
38
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/translations/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAA;AAElE,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiCxB,CAAA;AAED,MAAM,MAAM,oBAAoB,GAAG,OAAO,YAAY,CAAC,EAAE,CAAA;AAEzD,MAAM,MAAM,uBAAuB,GAAG,kBAAkB,CAAC,oBAAoB,CAAC,CAAA"}
@@ -0,0 +1,36 @@
1
+ export const translations = {
2
+ en: {
3
+ $schema: './translation-schema.json',
4
+ 'ai-plugin': {}
5
+ },
6
+ es: {
7
+ $schema: './translation-schema.json',
8
+ 'ai-plugin': {}
9
+ },
10
+ fa: {
11
+ $schema: './translation-schema.json',
12
+ 'ai-plugin': {}
13
+ },
14
+ fr: {
15
+ $schema: './translation-schema.json',
16
+ 'ai-plugin': {}
17
+ },
18
+ nb: {
19
+ $schema: './translation-schema.json',
20
+ 'ai-plugin': {}
21
+ },
22
+ pl: {
23
+ $schema: './translation-schema.json',
24
+ 'ai-plugin': {}
25
+ },
26
+ ru: {
27
+ $schema: './translation-schema.json',
28
+ 'ai-plugin': {}
29
+ },
30
+ uk: {
31
+ $schema: './translation-schema.json',
32
+ 'ai-plugin': {}
33
+ }
34
+ };
35
+
36
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/translations/index.ts"],"sourcesContent":["import type { NestedKeysStripped } from '@payloadcms/translations'\n\nexport const translations = {\n en: {\n $schema: './translation-schema.json',\n 'ai-plugin': {},\n },\n es: {\n $schema: './translation-schema.json',\n 'ai-plugin': {},\n },\n fa: {\n $schema: './translation-schema.json',\n 'ai-plugin': {},\n },\n fr: {\n $schema: './translation-schema.json',\n 'ai-plugin': {},\n },\n nb: {\n $schema: './translation-schema.json',\n 'ai-plugin': {},\n },\n pl: {\n $schema: './translation-schema.json',\n 'ai-plugin': {},\n },\n ru: {\n $schema: './translation-schema.json',\n 'ai-plugin': {},\n },\n uk: {\n $schema: './translation-schema.json',\n 'ai-plugin': {},\n },\n}\n\nexport type PluginAITranslations = typeof translations.en\n\nexport type PluginAITranslationKeys = NestedKeysStripped<PluginAITranslations>\n"],"names":["translations","en","$schema","es","fa","fr","nb","pl","ru","uk"],"mappings":"AAEA,OAAO,MAAMA,eAAe;IAC1BC,IAAI;QACFC,SAAS;QACT,aAAa,CAAC;IAChB;IACAC,IAAI;QACFD,SAAS;QACT,aAAa,CAAC;IAChB;IACAE,IAAI;QACFF,SAAS;QACT,aAAa,CAAC;IAChB;IACAG,IAAI;QACFH,SAAS;QACT,aAAa,CAAC;IAChB;IACAI,IAAI;QACFJ,SAAS;QACT,aAAa,CAAC;IAChB;IACAK,IAAI;QACFL,SAAS;QACT,aAAa,CAAC;IAChB;IACAM,IAAI;QACFN,SAAS;QACT,aAAa,CAAC;IAChB;IACAO,IAAI;QACFP,SAAS;QACT,aAAa,CAAC;IAChB;AACF,EAAC"}
@@ -0,0 +1,4 @@
1
+ {
2
+ "$schema": "./translation-schema.json",
3
+ "ai-plugin": {}
4
+ }
@@ -0,0 +1,4 @@
1
+ {
2
+ "$schema": "./translation-schema.json",
3
+ "ai-plugin": {}
4
+ }
@@ -0,0 +1,16 @@
1
+ {
2
+ "type": "object",
3
+ "$schema": "http://json-schema.org/draft-04/schema#",
4
+ "additionalProperties": false,
5
+ "properties": {
6
+ "$schema": {
7
+ "type": "string"
8
+ },
9
+ "ai-plugin": {
10
+ "type": "object",
11
+ "additionalProperties": false,
12
+ "properties": {}
13
+ }
14
+ },
15
+ "required": ["ai-plugin"]
16
+ }
@@ -0,0 +1,4 @@
1
+ {
2
+ "$schema": "./translation-schema.json",
3
+ "ai-plugin": {}
4
+ }
@@ -0,0 +1,94 @@
1
+ import type { Endpoint, Field, GroupField } from 'payload';
2
+ import { CSSProperties, MouseEventHandler } from 'react';
3
+ import { LexicalBaseNode } from './ai/schemas/lexical.schema.js';
4
+ export interface PluginConfig {
5
+ collections: {
6
+ [key: string]: boolean;
7
+ };
8
+ fields?: Field[];
9
+ globals?: string[];
10
+ interfaceName?: string;
11
+ editorConfig?: {
12
+ nodes: (typeof LexicalBaseNode)[];
13
+ };
14
+ debugging?: boolean;
15
+ generatePromptOnInit?: boolean;
16
+ }
17
+ export interface GenerationModel {
18
+ fields: string[];
19
+ handler?: (payload: any, options: any) => Promise<any>;
20
+ id: string;
21
+ name: string;
22
+ output: 'audio' | 'file' | 'image' | 'json' | 'text' | 'video';
23
+ settings?: GroupField;
24
+ supportsPromptOptimization?: boolean;
25
+ }
26
+ export interface GenerationConfig {
27
+ models: GenerationModel[];
28
+ provider: string;
29
+ }
30
+ export type GenerateTextarea<T = any> = (args: {
31
+ doc: T;
32
+ locale?: string;
33
+ options?: any;
34
+ }) => Promise<string> | string;
35
+ export interface Instructions {
36
+ 'collection-slug': string;
37
+ id: string;
38
+ 'model-id': string;
39
+ prompt: string;
40
+ }
41
+ export interface Endpoints {
42
+ textarea: Omit<Endpoint, 'root'>;
43
+ upload: Omit<Endpoint, 'root'>;
44
+ }
45
+ export type ActionMenuItems = 'Compose' | 'Expand' | 'Proofread' | 'Rephrase' | 'Settings' | 'Simplify' | 'Summarize' | 'Tone' | 'Translate';
46
+ export type ActionMenuEvents = 'onCompose' | 'onExpand' | 'onProofread' | 'onRephrase' | 'onSettings' | 'onSimplify' | 'onSummarize' | 'onTone' | 'onTranslate';
47
+ export type UseMenuEvents = {
48
+ [key in ActionMenuEvents]?: (data?: unknown) => void;
49
+ };
50
+ export type BaseItemProps<T = any> = {
51
+ children?: React.ReactNode;
52
+ disabled?: boolean;
53
+ hideIcon?: boolean;
54
+ onClick: (data?: unknown) => void;
55
+ onMouseEnter?: MouseEventHandler<T> | undefined;
56
+ onMouseLeave?: MouseEventHandler<T> | undefined;
57
+ style?: CSSProperties | undefined;
58
+ isMenu?: boolean;
59
+ isActive?: boolean;
60
+ };
61
+ /**
62
+ * This interface was referenced by `Config`'s JSON-Schema
63
+ * via the `definition` "plugin-ai-instructions".
64
+ */
65
+ export interface PluginAiInstruction {
66
+ id: string;
67
+ 'schema-path'?: string | null;
68
+ 'field-type'?: ('text' | 'textarea' | 'upload' | 'richText') | null;
69
+ 'model-id'?: ('openai-gpt-text' | 'dall-e' | 'tts' | 'openai-gpt-object') | null;
70
+ prompt?: string | null;
71
+ 'openai-gpt-text-settings'?: {
72
+ model?: ('gpt-4o' | 'gpt-4-turbo' | 'gpt-4o-mini' | 'gpt-3.5-turbo') | null;
73
+ };
74
+ 'dalle-e-settings'?: {
75
+ version?: ('dall-e-3' | 'dall-e-2') | null;
76
+ size?: ('256x256' | '512x512' | '1024x1024' | '1792x1024' | '1024x1792') | null;
77
+ style?: ('vivid' | 'natural') | null;
78
+ 'enable-prompt-optimization'?: boolean | null;
79
+ };
80
+ 'openai-tts-settings'?: {
81
+ voice?: ('alloy' | 'echo' | 'fable' | 'onyx' | 'nova' | 'shimmer') | null;
82
+ model?: ('tts-1' | 'tts-1-hd') | null;
83
+ response_format?: ('mp3' | 'opus' | 'aac' | 'flac' | 'wav' | 'pcm') | null;
84
+ speed?: number | null;
85
+ };
86
+ 'openai-gpt-object-settings'?: {
87
+ model?: ('gpt-4o' | 'gpt-4-turbo' | 'gpt-4o-mini' | 'gpt-4o-2024-08-06') | null;
88
+ system?: string | null;
89
+ layout?: string | null;
90
+ };
91
+ updatedAt: string;
92
+ createdAt: string;
93
+ }
94
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/dist/types.js ADDED
@@ -0,0 +1,6 @@
1
+ /**
2
+ * This interface was referenced by `Config`'s JSON-Schema
3
+ * via the `definition` "plugin-ai-instructions".
4
+ */ export { };
5
+
6
+ //# sourceMappingURL=types.js.map