payload-forgeai 0.2.0 → 0.3.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.
@@ -16,7 +16,7 @@ export const ForgeAIField = (props)=>{
16
16
  const endpoint = useMemo(()=>{
17
17
  if (!collectionSlug) return null;
18
18
  const base = config?.serverURL || '';
19
- return `${base}/api/forge-ai/${collectionSlug}/${path}`;
19
+ return `${base}/api/forgeai/${collectionSlug}/${path}`;
20
20
  }, [
21
21
  collectionSlug,
22
22
  config?.serverURL,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/components/ForgeAIField.tsx"],"sourcesContent":["'use client'\n\nimport React, { useCallback, useMemo, useState } from 'react'\nimport { type TextFieldClientComponent } from 'payload'\nimport { useConfig, useDocumentInfo, useField, FieldLabel, useFormFields } from '@payloadcms/ui'\n\nexport const ForgeAIField: TextFieldClientComponent = (props) => {\n const { path, field, readOnly } = props\n\n const { setValue, value, errorMessage, showError, formProcessing } = useField<string>({ path })\n const { collectionSlug, id: docId } = useDocumentInfo()\n const { config } = useConfig()\n \n // Access all form fields for context\n const allFields = useFormFields(([fields]) => fields)\n\n const [isGenerating, setIsGenerating] = useState(false)\n const [genError, setGenError] = useState<string | null>(null)\n\n const endpoint = useMemo(() => {\n if (!collectionSlug) return null\n const base = config?.serverURL || ''\n return `${base}/api/forge-ai/${collectionSlug}/${path}`\n }, [collectionSlug, config?.serverURL, path])\n\n const generate = useCallback(async () => {\n if (!endpoint) return\n setIsGenerating(true)\n setGenError(null)\n try {\n // Gather context from form fields\n const contextData: Record<string, any> = {}\n if (allFields) {\n Object.entries(allFields).forEach(([fieldPath, fieldState]) => {\n contextData[fieldPath] = fieldState.value\n })\n }\n\n const res = await fetch(endpoint, {\n method: 'POST',\n credentials: 'include',\n headers: {\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify({\n context: contextData,\n documentId: docId,\n currentValue: value, // Include current value so AI can generate something different\n }),\n })\n\n if (!res.ok) throw new Error(await res.text())\n\n const generated = await res.json()\n setValue(generated)\n } catch (e) {\n setGenError(e instanceof Error ? e.message : String(e))\n } finally {\n setIsGenerating(false)\n }\n }, [endpoint, setValue, allFields, docId])\n\n return (\n <div className=\"field-type\">\n <FieldLabel htmlFor={path} label={field.label ?? field.name} required={field.required} />\n\n <div>\n <input\n id={path}\n style={{ width: '100%' }}\n disabled={readOnly || formProcessing}\n value={value ?? ''}\n onChange={(e) => setValue(e.target.value)}\n />\n\n <button\n type=\"button\"\n onClick={generate}\n disabled={readOnly || formProcessing || isGenerating || !endpoint}\n style={{\n marginTop: 8,\n padding: '6px 12px',\n border: '1px solid var(--theme-elevation-400)',\n borderRadius: 4,\n background: 'var(--theme-elevation-50)',\n cursor: readOnly || formProcessing || isGenerating || !endpoint ? 'not-allowed' : 'pointer',\n display: 'inline-flex',\n alignItems: 'center',\n gap: 6,\n fontSize: 13,\n color: 'var(--theme-elevation-800)',\n transition: 'all 0.2s ease',\n opacity: readOnly || formProcessing || !endpoint ? 0.5 : 1,\n }}\n onMouseEnter={(e) => {\n if (!readOnly && !formProcessing && !isGenerating && endpoint) {\n e.currentTarget.style.background = 'var(--theme-elevation-100)'\n e.currentTarget.style.borderColor = 'var(--theme-elevation-500)'\n }\n }}\n onMouseLeave={(e) => {\n e.currentTarget.style.background = 'var(--theme-elevation-50)'\n e.currentTarget.style.borderColor = 'var(--theme-elevation-400)'\n }}\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n style={{\n animation: isGenerating ? 'spin 1s linear infinite' : 'none',\n }}\n >\n <path d=\"M21.5 2v6h-6M2.5 22v-6h6M2 11.5a10 10 0 0 1 18.8-4.3M22 12.5a10 10 0 0 1-18.8 4.2\" />\n </svg>\n {isGenerating ? 'Generating…' : 'Generate with AI'}\n </button>\n\n <style>{`\n @keyframes spin {\n from {\n transform: rotate(0deg);\n }\n to {\n transform: rotate(360deg);\n }\n }\n `}</style>\n </div>\n\n {genError ? (\n <div style={{ marginTop: 6, color: 'var(--theme-error-500)' }}>{genError}</div>\n ) : null}\n {showError && errorMessage ? (\n <div style={{ marginTop: 6, color: 'var(--theme-error-500)' }}>{errorMessage}</div>\n ) : null}\n </div>\n )\n}\n"],"names":["React","useCallback","useMemo","useState","useConfig","useDocumentInfo","useField","FieldLabel","useFormFields","ForgeAIField","props","path","field","readOnly","setValue","value","errorMessage","showError","formProcessing","collectionSlug","id","docId","config","allFields","fields","isGenerating","setIsGenerating","genError","setGenError","endpoint","base","serverURL","generate","contextData","Object","entries","forEach","fieldPath","fieldState","res","fetch","method","credentials","headers","body","JSON","stringify","context","documentId","currentValue","ok","Error","text","generated","json","e","message","String","div","className","htmlFor","label","name","required","input","style","width","disabled","onChange","target","button","type","onClick","marginTop","padding","border","borderRadius","background","cursor","display","alignItems","gap","fontSize","color","transition","opacity","onMouseEnter","currentTarget","borderColor","onMouseLeave","svg","xmlns","height","viewBox","fill","stroke","strokeWidth","strokeLinecap","strokeLinejoin","animation","d"],"mappings":"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"}
1
+ {"version":3,"sources":["../../src/components/ForgeAIField.tsx"],"sourcesContent":["'use client'\n\nimport React, { useCallback, useMemo, useState } from 'react'\nimport { type TextFieldClientComponent } from 'payload'\nimport { useConfig, useDocumentInfo, useField, FieldLabel, useFormFields } from '@payloadcms/ui'\n\nexport const ForgeAIField: TextFieldClientComponent = (props) => {\n const { path, field, readOnly } = props\n\n const { setValue, value, errorMessage, showError, formProcessing } = useField<string>({ path })\n const { collectionSlug, id: docId } = useDocumentInfo()\n const { config } = useConfig()\n\n // Access all form fields for context\n const allFields = useFormFields(([fields]) => fields)\n\n const [isGenerating, setIsGenerating] = useState(false)\n const [genError, setGenError] = useState<string | null>(null)\n\n const endpoint = useMemo(() => {\n if (!collectionSlug) return null\n const base = config?.serverURL || ''\n return `${base}/api/forgeai/${collectionSlug}/${path}`\n }, [collectionSlug, config?.serverURL, path])\n\n const generate = useCallback(async () => {\n if (!endpoint) return\n setIsGenerating(true)\n setGenError(null)\n try {\n // Gather context from form fields\n const contextData: Record<string, any> = {}\n if (allFields) {\n Object.entries(allFields).forEach(([fieldPath, fieldState]) => {\n contextData[fieldPath] = fieldState.value\n })\n }\n\n const res = await fetch(endpoint, {\n method: 'POST',\n credentials: 'include',\n headers: {\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify({\n context: contextData,\n documentId: docId,\n currentValue: value, // Include current value so AI can generate something different\n }),\n })\n\n if (!res.ok) throw new Error(await res.text())\n\n const generated = await res.json()\n setValue(generated)\n } catch (e) {\n setGenError(e instanceof Error ? e.message : String(e))\n } finally {\n setIsGenerating(false)\n }\n }, [endpoint, setValue, allFields, docId])\n\n return (\n <div className=\"field-type\">\n <FieldLabel htmlFor={path} label={field.label ?? field.name} required={field.required} />\n\n <div>\n <input\n id={path}\n style={{ width: '100%' }}\n disabled={readOnly || formProcessing}\n value={value ?? ''}\n onChange={(e) => setValue(e.target.value)}\n />\n\n <button\n type=\"button\"\n onClick={generate}\n disabled={readOnly || formProcessing || isGenerating || !endpoint}\n style={{\n marginTop: 8,\n padding: '6px 12px',\n border: '1px solid var(--theme-elevation-400)',\n borderRadius: 4,\n background: 'var(--theme-elevation-50)',\n cursor:\n readOnly || formProcessing || isGenerating || !endpoint ? 'not-allowed' : 'pointer',\n display: 'inline-flex',\n alignItems: 'center',\n gap: 6,\n fontSize: 13,\n color: 'var(--theme-elevation-800)',\n transition: 'all 0.2s ease',\n opacity: readOnly || formProcessing || !endpoint ? 0.5 : 1,\n }}\n onMouseEnter={(e) => {\n if (!readOnly && !formProcessing && !isGenerating && endpoint) {\n e.currentTarget.style.background = 'var(--theme-elevation-100)'\n e.currentTarget.style.borderColor = 'var(--theme-elevation-500)'\n }\n }}\n onMouseLeave={(e) => {\n e.currentTarget.style.background = 'var(--theme-elevation-50)'\n e.currentTarget.style.borderColor = 'var(--theme-elevation-400)'\n }}\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n style={{\n animation: isGenerating ? 'spin 1s linear infinite' : 'none',\n }}\n >\n <path d=\"M21.5 2v6h-6M2.5 22v-6h6M2 11.5a10 10 0 0 1 18.8-4.3M22 12.5a10 10 0 0 1-18.8 4.2\" />\n </svg>\n {isGenerating ? 'Generating…' : 'Generate with AI'}\n </button>\n\n <style>{`\n @keyframes spin {\n from {\n transform: rotate(0deg);\n }\n to {\n transform: rotate(360deg);\n }\n }\n `}</style>\n </div>\n\n {genError ? (\n <div style={{ marginTop: 6, color: 'var(--theme-error-500)' }}>{genError}</div>\n ) : null}\n {showError && errorMessage ? (\n <div style={{ marginTop: 6, color: 'var(--theme-error-500)' }}>{errorMessage}</div>\n ) : null}\n </div>\n )\n}\n"],"names":["React","useCallback","useMemo","useState","useConfig","useDocumentInfo","useField","FieldLabel","useFormFields","ForgeAIField","props","path","field","readOnly","setValue","value","errorMessage","showError","formProcessing","collectionSlug","id","docId","config","allFields","fields","isGenerating","setIsGenerating","genError","setGenError","endpoint","base","serverURL","generate","contextData","Object","entries","forEach","fieldPath","fieldState","res","fetch","method","credentials","headers","body","JSON","stringify","context","documentId","currentValue","ok","Error","text","generated","json","e","message","String","div","className","htmlFor","label","name","required","input","style","width","disabled","onChange","target","button","type","onClick","marginTop","padding","border","borderRadius","background","cursor","display","alignItems","gap","fontSize","color","transition","opacity","onMouseEnter","currentTarget","borderColor","onMouseLeave","svg","xmlns","height","viewBox","fill","stroke","strokeWidth","strokeLinecap","strokeLinejoin","animation","d"],"mappings":"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"}
@@ -1 +1 @@
1
- export { ForgeAIField } from '../components/ForgeAIField.js';
1
+ export { ForgeAIField } from '../components/ForgeAIField.jsx';
@@ -1,3 +1,3 @@
1
- export { ForgeAIField } from '../components/ForgeAIField.js';
1
+ export { ForgeAIField } from '../components/ForgeAIField.jsx';
2
2
 
3
3
  //# sourceMappingURL=ForgeAIField.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/exports/ForgeAIField.ts"],"sourcesContent":["export { ForgeAIField } from '../components/ForgeAIField.js'\n"],"names":["ForgeAIField"],"mappings":"AAAA,SAASA,YAAY,QAAQ,gCAA+B"}
1
+ {"version":3,"sources":["../../src/exports/ForgeAIField.ts"],"sourcesContent":["export { ForgeAIField } from '../components/ForgeAIField.jsx'\n"],"names":["ForgeAIField"],"mappings":"AAAA,SAASA,YAAY,QAAQ,iCAAgC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "payload-forgeai",
3
- "version": "0.2.0",
3
+ "version": "0.3.0",
4
4
  "description": "A plugin for Payload CMS to generate content with AI",
5
5
  "license": "MIT",
6
6
  "type": "module",