@ai-stack/payloadcms 3.0.0-beta.95.1 → 3.2.1-beta
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.
- package/LICENSE.md +2 -2
- package/README.md +19 -17
- package/dist/ai/models/anthropic/generateRichText.d.ts.map +1 -1
- package/dist/ai/models/anthropic/generateRichText.js +2 -2
- package/dist/ai/models/anthropic/generateRichText.js.map +1 -1
- package/dist/ai/models/anthropic/index.d.ts.map +1 -1
- package/dist/ai/models/anthropic/index.js +8 -32
- package/dist/ai/models/anthropic/index.js.map +1 -1
- package/dist/ai/models/elevenLabs/generateVoice.d.ts +1 -1
- package/dist/ai/models/elevenLabs/index.d.ts.map +1 -1
- package/dist/ai/models/elevenLabs/index.js +4 -3
- package/dist/ai/models/elevenLabs/index.js.map +1 -1
- package/dist/ai/models/openai/generateImage.d.ts +1 -1
- package/dist/ai/models/openai/generateRichText.js +2 -2
- package/dist/ai/models/openai/generateRichText.js.map +1 -1
- package/dist/ai/models/openai/generateVoice.d.ts +1 -1
- package/dist/ai/models/openai/index.d.ts.map +1 -1
- package/dist/ai/models/openai/index.js +9 -35
- package/dist/ai/models/openai/index.js.map +1 -1
- package/dist/ai/prompts.d.ts +1 -1
- package/dist/ai/prompts.d.ts.map +1 -1
- package/dist/ai/prompts.js +6 -3
- package/dist/ai/prompts.js.map +1 -1
- package/dist/ai/schemas/lexicalJsonSchema.d.ts +2 -0
- package/dist/ai/schemas/lexicalJsonSchema.d.ts.map +1 -0
- package/dist/ai/schemas/lexicalJsonSchema.js +317 -0
- package/dist/ai/schemas/lexicalJsonSchema.js.map +1 -0
- package/dist/ai/utils/generateFileNameByPrompt.js.map +1 -1
- package/dist/ai/utils/systemGenerate.d.ts +5 -0
- package/dist/ai/utils/systemGenerate.d.ts.map +1 -0
- package/dist/ai/utils/{generateSeedPrompt.js → systemGenerate.js} +2 -2
- package/dist/ai/utils/systemGenerate.js.map +1 -0
- package/dist/collections/Instructions.d.ts +1 -1
- package/dist/collections/Instructions.d.ts.map +1 -1
- package/dist/collections/Instructions.js +177 -85
- package/dist/collections/Instructions.js.map +1 -1
- package/dist/defaults.d.ts +1 -1
- package/dist/defaults.d.ts.map +1 -1
- package/dist/defaults.js +1 -1
- package/dist/defaults.js.map +1 -1
- package/dist/endpoints/fetchFields.d.ts +3 -0
- package/dist/endpoints/fetchFields.d.ts.map +1 -0
- package/dist/endpoints/fetchFields.js +21 -0
- package/dist/endpoints/fetchFields.js.map +1 -0
- package/dist/endpoints/index.d.ts.map +1 -1
- package/dist/endpoints/index.js +12 -18
- package/dist/endpoints/index.js.map +1 -1
- package/dist/exports/client.d.ts +0 -1
- package/dist/exports/client.d.ts.map +1 -1
- package/dist/exports/client.js +0 -1
- package/dist/exports/client.js.map +1 -1
- package/dist/exports/fields.d.ts +2 -0
- package/dist/exports/fields.d.ts.map +1 -1
- package/dist/exports/fields.js +2 -0
- package/dist/exports/fields.js.map +1 -1
- package/dist/fields/ComposeField/ComposeField.d.ts +3 -0
- package/dist/fields/ComposeField/ComposeField.d.ts.map +1 -0
- package/dist/fields/ComposeField/ComposeField.js +24 -0
- package/dist/fields/ComposeField/ComposeField.js.map +1 -0
- package/dist/fields/LexicalEditor/ComposeFeatureComponent.d.ts +2 -0
- package/dist/fields/LexicalEditor/ComposeFeatureComponent.d.ts.map +1 -0
- package/dist/fields/LexicalEditor/ComposeFeatureComponent.js +28 -0
- package/dist/fields/LexicalEditor/ComposeFeatureComponent.js.map +1 -0
- package/dist/fields/LexicalEditor/feature.client.d.ts +4 -1
- package/dist/fields/LexicalEditor/feature.client.d.ts.map +1 -1
- package/dist/fields/LexicalEditor/feature.client.js +15 -7
- package/dist/fields/LexicalEditor/feature.client.js.map +1 -1
- package/dist/fields/PromptEditorField/PromptEditorField.d.ts +2 -2
- package/dist/fields/PromptEditorField/PromptEditorField.d.ts.map +1 -1
- package/dist/fields/PromptEditorField/PromptEditorField.js +4 -8
- package/dist/fields/PromptEditorField/PromptEditorField.js.map +1 -1
- package/dist/fields/SelectField/SelectField.d.ts +3 -2
- package/dist/fields/SelectField/SelectField.d.ts.map +1 -1
- package/dist/fields/SelectField/SelectField.js +2 -3
- package/dist/fields/SelectField/SelectField.js.map +1 -1
- package/dist/index.d.ts +1 -6
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -6
- package/dist/index.js.map +1 -1
- package/dist/init.d.ts +2 -1
- package/dist/init.d.ts.map +1 -1
- package/dist/init.js +22 -21
- package/dist/init.js.map +1 -1
- package/dist/libraries/autocomplete/AutocompleteTextArea.js +9 -7
- package/dist/libraries/autocomplete/AutocompleteTextArea.js.map +1 -1
- package/dist/libraries/handlebars/asyncHandlebars.js +1 -1
- package/dist/libraries/handlebars/asyncHandlebars.js.map +1 -1
- package/dist/libraries/handlebars/helpers.js.map +1 -1
- package/dist/plugin.d.ts.map +1 -1
- package/dist/plugin.js +30 -41
- package/dist/plugin.js.map +1 -1
- package/dist/providers/FieldProvider/FieldProvider.d.ts +15 -0
- package/dist/providers/FieldProvider/FieldProvider.d.ts.map +1 -0
- package/dist/providers/FieldProvider/FieldProvider.js +33 -0
- package/dist/providers/FieldProvider/FieldProvider.js.map +1 -0
- package/dist/providers/FieldProvider/useFieldProps.d.ts +6 -0
- package/dist/providers/FieldProvider/useFieldProps.d.ts.map +1 -0
- package/dist/providers/FieldProvider/useFieldProps.js +12 -0
- package/dist/providers/FieldProvider/useFieldProps.js.map +1 -0
- package/dist/providers/InstructionsProvider/InstructionsProvider.d.ts +5 -1
- package/dist/providers/InstructionsProvider/InstructionsProvider.d.ts.map +1 -1
- package/dist/providers/InstructionsProvider/InstructionsProvider.js +12 -7
- package/dist/providers/InstructionsProvider/InstructionsProvider.js.map +1 -1
- package/dist/providers/InstructionsProvider/useInstructions.d.ts +2 -2
- package/dist/providers/InstructionsProvider/useInstructions.d.ts.map +1 -1
- package/dist/providers/InstructionsProvider/useInstructions.js +17 -4
- package/dist/providers/InstructionsProvider/useInstructions.js.map +1 -1
- package/dist/types.d.ts +9 -41
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +1 -4
- package/dist/types.js.map +1 -1
- package/dist/ui/Compose/Compose.d.ts +9 -0
- package/dist/ui/Compose/Compose.d.ts.map +1 -0
- package/dist/ui/{Actions/Actions.js → Compose/Compose.js} +49 -39
- package/dist/ui/Compose/Compose.js.map +1 -0
- package/dist/ui/{Actions → Compose}/UndoRedoActions.d.ts.map +1 -1
- package/dist/ui/{Actions → Compose}/UndoRedoActions.js +15 -2
- package/dist/ui/Compose/UndoRedoActions.js.map +1 -0
- package/dist/ui/{Actions → Compose}/hooks/menu/Item.d.ts +1 -1
- package/dist/ui/{Actions → Compose}/hooks/menu/Item.d.ts.map +1 -1
- package/dist/ui/{Actions → Compose}/hooks/menu/Item.js +2 -2
- package/dist/ui/{Actions → Compose}/hooks/menu/Item.js.map +1 -1
- package/dist/ui/Compose/hooks/menu/TranslateMenu.d.ts.map +1 -0
- package/dist/ui/{Actions → Compose}/hooks/menu/TranslateMenu.js +11 -11
- package/dist/ui/Compose/hooks/menu/TranslateMenu.js.map +1 -0
- package/dist/ui/{Actions → Compose}/hooks/menu/items.d.ts +8 -8
- package/dist/ui/{Actions → Compose}/hooks/menu/items.d.ts.map +1 -1
- package/dist/ui/{Actions → Compose}/hooks/menu/items.js.map +1 -1
- package/dist/ui/{Actions → Compose}/hooks/menu/itemsMap.d.ts +1 -1
- package/dist/ui/Compose/hooks/menu/itemsMap.d.ts.map +1 -0
- package/dist/ui/{Actions → Compose}/hooks/menu/itemsMap.js +1 -2
- package/dist/ui/Compose/hooks/menu/itemsMap.js.map +1 -0
- package/dist/ui/Compose/hooks/menu/useMenu.d.ts.map +1 -0
- package/dist/ui/{Actions → Compose}/hooks/menu/useMenu.js +2 -1
- package/dist/ui/Compose/hooks/menu/useMenu.js.map +1 -0
- package/dist/ui/{Actions → Compose}/hooks/useGenerate.d.ts +3 -1
- package/dist/ui/Compose/hooks/useGenerate.d.ts.map +1 -0
- package/dist/ui/{Actions → Compose}/hooks/useGenerate.js +19 -24
- package/dist/ui/Compose/hooks/useGenerate.js.map +1 -0
- package/dist/ui/Compose/hooks/useHistory.d.ts.map +1 -0
- package/dist/ui/{Actions → Compose}/hooks/useHistory.js +6 -3
- package/dist/ui/Compose/hooks/useHistory.js.map +1 -0
- package/dist/utilities/setSafeLexicalState.d.ts +2 -2
- package/dist/utilities/setSafeLexicalState.d.ts.map +1 -1
- package/dist/utilities/setSafeLexicalState.js +5 -12
- package/dist/utilities/setSafeLexicalState.js.map +1 -1
- package/dist/utilities/updateFieldsConfig.d.ts.map +1 -1
- package/dist/utilities/updateFieldsConfig.js +18 -6
- package/dist/utilities/updateFieldsConfig.js.map +1 -1
- package/package.json +32 -37
- package/dist/ai/schemas/lexical.schema.d.ts +0 -31
- package/dist/ai/schemas/lexical.schema.d.ts.map +0 -1
- package/dist/ai/schemas/lexical.schema.js +0 -102
- package/dist/ai/schemas/lexical.schema.js.map +0 -1
- package/dist/ai/utils/generateSeedPrompt.d.ts +0 -5
- package/dist/ai/utils/generateSeedPrompt.d.ts.map +0 -1
- package/dist/ai/utils/generateSeedPrompt.js.map +0 -1
- package/dist/fields/DescriptionField/DescriptionField.d.ts +0 -2
- package/dist/fields/DescriptionField/DescriptionField.d.ts.map +0 -1
- package/dist/fields/DescriptionField/DescriptionField.js +0 -16
- package/dist/fields/DescriptionField/DescriptionField.js.map +0 -1
- package/dist/fields/DescriptionField/DescriptionFieldComponent.d.ts +0 -3
- package/dist/fields/DescriptionField/DescriptionFieldComponent.d.ts.map +0 -1
- package/dist/fields/DescriptionField/DescriptionFieldComponent.js +0 -19
- package/dist/fields/DescriptionField/DescriptionFieldComponent.js.map +0 -1
- package/dist/fields/LexicalEditor/ActionsFeatureComponent.d.ts +0 -2
- package/dist/fields/LexicalEditor/ActionsFeatureComponent.d.ts.map +0 -1
- package/dist/fields/LexicalEditor/ActionsFeatureComponent.js +0 -15
- package/dist/fields/LexicalEditor/ActionsFeatureComponent.js.map +0 -1
- package/dist/ui/Actions/Actions.d.ts +0 -5
- package/dist/ui/Actions/Actions.d.ts.map +0 -1
- package/dist/ui/Actions/Actions.js.map +0 -1
- package/dist/ui/Actions/UndoRedoActions.js.map +0 -1
- package/dist/ui/Actions/hooks/menu/TranslateMenu.d.ts.map +0 -1
- package/dist/ui/Actions/hooks/menu/TranslateMenu.js.map +0 -1
- package/dist/ui/Actions/hooks/menu/itemsMap.d.ts.map +0 -1
- package/dist/ui/Actions/hooks/menu/itemsMap.js.map +0 -1
- package/dist/ui/Actions/hooks/menu/useMenu.d.ts.map +0 -1
- package/dist/ui/Actions/hooks/menu/useMenu.js.map +0 -1
- package/dist/ui/Actions/hooks/useGenerate.d.ts.map +0 -1
- package/dist/ui/Actions/hooks/useGenerate.js.map +0 -1
- package/dist/ui/Actions/hooks/useHistory.d.ts.map +0 -1
- package/dist/ui/Actions/hooks/useHistory.js.map +0 -1
- package/dist/utilities/jsonToZod.d.ts +0 -3
- package/dist/utilities/jsonToZod.d.ts.map +0 -1
- package/dist/utilities/jsonToZod.js +0 -33
- package/dist/utilities/jsonToZod.js.map +0 -1
- /package/dist/ui/{Actions → Compose}/UndoRedoActions.d.ts +0 -0
- /package/dist/ui/{Actions/actions.module.scss → Compose/compose.module.scss} +0 -0
- /package/dist/ui/{Actions → Compose}/hooks/menu/TranslateMenu.d.ts +0 -0
- /package/dist/ui/{Actions → Compose}/hooks/menu/items.js +0 -0
- /package/dist/ui/{Actions → Compose}/hooks/menu/menu.module.scss +0 -0
- /package/dist/ui/{Actions → Compose}/hooks/menu/useMenu.d.ts +0 -0
- /package/dist/ui/{Actions → Compose}/hooks/useHistory.d.ts +0 -0
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
3
|
+
import React from 'react';
|
|
4
|
+
import { FieldProvider } from '../../providers/FieldProvider/FieldProvider.js';
|
|
5
|
+
import { useInstructions } from '../../providers/InstructionsProvider/useInstructions.js';
|
|
6
|
+
import { Compose } from '../../ui/Compose/Compose.js';
|
|
7
|
+
export const ComposeField = (props)=>{
|
|
8
|
+
const { id: instructionId } = useInstructions({
|
|
9
|
+
schemaPath: props?.schemaPath
|
|
10
|
+
});
|
|
11
|
+
return /*#__PURE__*/ _jsx(FieldProvider, {
|
|
12
|
+
context: {
|
|
13
|
+
type: props?.field.type,
|
|
14
|
+
path: props?.path,
|
|
15
|
+
schemaPath: props?.schemaPath
|
|
16
|
+
},
|
|
17
|
+
children: /*#__PURE__*/ _jsx(Compose, {
|
|
18
|
+
descriptionProps: props,
|
|
19
|
+
instructionId: instructionId
|
|
20
|
+
})
|
|
21
|
+
});
|
|
22
|
+
};
|
|
23
|
+
|
|
24
|
+
//# sourceMappingURL=ComposeField.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/fields/ComposeField/ComposeField.tsx"],"sourcesContent":["'use client'\n\nimport type { FieldDescriptionServerProps } from 'payload'\n\nimport React from 'react'\n\nimport { FieldProvider } from '../../providers/FieldProvider/FieldProvider.js'\nimport { useInstructions } from '../../providers/InstructionsProvider/useInstructions.js'\nimport { Compose } from '../../ui/Compose/Compose.js'\n\nexport const ComposeField = (props: FieldDescriptionServerProps) => {\n const { id: instructionId } = useInstructions({\n schemaPath: props?.schemaPath,\n })\n\n return (\n <FieldProvider\n context={{\n type: props?.field.type,\n path: props?.path,\n schemaPath: props?.schemaPath,\n }}\n >\n <Compose descriptionProps={props as any} instructionId={instructionId} />\n </FieldProvider>\n )\n}\n"],"names":["React","FieldProvider","useInstructions","Compose","ComposeField","props","id","instructionId","schemaPath","context","type","field","path","descriptionProps"],"mappings":"AAAA;;AAIA,OAAOA,WAAW,QAAO;AAEzB,SAASC,aAAa,QAAQ,iDAAgD;AAC9E,SAASC,eAAe,QAAQ,0DAAyD;AACzF,SAASC,OAAO,QAAQ,8BAA6B;AAErD,OAAO,MAAMC,eAAe,CAACC;IAC3B,MAAM,EAAEC,IAAIC,aAAa,EAAE,GAAGL,gBAAgB;QAC5CM,YAAYH,OAAOG;IACrB;IAEA,qBACE,KAACP;QACCQ,SAAS;YACPC,MAAML,OAAOM,MAAMD;YACnBE,MAAMP,OAAOO;YACbJ,YAAYH,OAAOG;QACrB;kBAEA,cAAA,KAACL;YAAQU,kBAAkBR;YAAcE,eAAeA;;;AAG9D,EAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ComposeFeatureComponent.d.ts","sourceRoot":"","sources":["../../../src/fields/LexicalEditor/ComposeFeatureComponent.tsx"],"names":[],"mappings":"AAMA,eAAO,MAAM,uBAAuB,UAAW,GAAG,4CAwBjD,CAAA"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import React from 'react';
|
|
3
|
+
import { FieldProvider } from '../../providers/FieldProvider/FieldProvider.js';
|
|
4
|
+
import { useInstructions } from '../../providers/InstructionsProvider/useInstructions.js';
|
|
5
|
+
import { Compose } from '../../ui/Compose/Compose.js';
|
|
6
|
+
export const ComposeFeatureComponent = (props)=>{
|
|
7
|
+
const { id: instructionId } = useInstructions({
|
|
8
|
+
schemaPath: props?.clientProps?.schemaPath
|
|
9
|
+
});
|
|
10
|
+
return /*#__PURE__*/ _jsx(FieldProvider, {
|
|
11
|
+
context: {
|
|
12
|
+
type: props?.clientProps?.field?.type,
|
|
13
|
+
path: props?.clientProps?.path,
|
|
14
|
+
schemaPath: props?.clientProps?.schemaPath
|
|
15
|
+
},
|
|
16
|
+
children: /*#__PURE__*/ _jsx(Compose, {
|
|
17
|
+
descriptionProps: {
|
|
18
|
+
field: props?.clientProps?.field,
|
|
19
|
+
path: props?.clientProps?.path,
|
|
20
|
+
schemaPath: props?.clientProps?.schemaPath,
|
|
21
|
+
...props?.clientProps
|
|
22
|
+
},
|
|
23
|
+
instructionId: instructionId
|
|
24
|
+
})
|
|
25
|
+
});
|
|
26
|
+
};
|
|
27
|
+
|
|
28
|
+
//# sourceMappingURL=ComposeFeatureComponent.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/fields/LexicalEditor/ComposeFeatureComponent.tsx"],"sourcesContent":["import React from 'react'\n\nimport { FieldProvider } from '../../providers/FieldProvider/FieldProvider.js'\nimport { useInstructions } from '../../providers/InstructionsProvider/useInstructions.js'\nimport { Compose } from '../../ui/Compose/Compose.js'\n\nexport const ComposeFeatureComponent = (props: any) => {\n const { id: instructionId } = useInstructions({\n schemaPath: props?.clientProps?.schemaPath,\n })\n\n return (\n <FieldProvider\n context={{\n type: props?.clientProps?.field?.type,\n path: props?.clientProps?.path,\n schemaPath: props?.clientProps?.schemaPath,\n }}\n >\n <Compose\n descriptionProps={{\n field: props?.clientProps?.field,\n path: props?.clientProps?.path,\n schemaPath: props?.clientProps?.schemaPath,\n ...props?.clientProps,\n }}\n instructionId={instructionId}\n />\n </FieldProvider>\n )\n}\n"],"names":["React","FieldProvider","useInstructions","Compose","ComposeFeatureComponent","props","id","instructionId","schemaPath","clientProps","context","type","field","path","descriptionProps"],"mappings":";AAAA,OAAOA,WAAW,QAAO;AAEzB,SAASC,aAAa,QAAQ,iDAAgD;AAC9E,SAASC,eAAe,QAAQ,0DAAyD;AACzF,SAASC,OAAO,QAAQ,8BAA6B;AAErD,OAAO,MAAMC,0BAA0B,CAACC;IACtC,MAAM,EAAEC,IAAIC,aAAa,EAAE,GAAGL,gBAAgB;QAC5CM,YAAYH,OAAOI,aAAaD;IAClC;IAEA,qBACE,KAACP;QACCS,SAAS;YACPC,MAAMN,OAAOI,aAAaG,OAAOD;YACjCE,MAAMR,OAAOI,aAAaI;YAC1BL,YAAYH,OAAOI,aAAaD;QAClC;kBAEA,cAAA,KAACL;YACCW,kBAAkB;gBAChBF,OAAOP,OAAOI,aAAaG;gBAC3BC,MAAMR,OAAOI,aAAaI;gBAC1BL,YAAYH,OAAOI,aAAaD;gBAChC,GAAGH,OAAOI,WAAW;YACvB;YACAF,eAAeA;;;AAIvB,EAAC"}
|
|
@@ -1,5 +1,8 @@
|
|
|
1
|
-
export declare const LexicalEditorFeatureClient: import("
|
|
1
|
+
export declare const LexicalEditorFeatureClient: import("@payloadcms/richtext-lexical").FeatureProviderProviderClient<undefined, {
|
|
2
2
|
featureKey: string;
|
|
3
3
|
order: number;
|
|
4
|
+
field: import("payload").RichTextFieldClient;
|
|
5
|
+
path: string;
|
|
6
|
+
schemaPath: string;
|
|
4
7
|
}>;
|
|
5
8
|
//# sourceMappingURL=feature.client.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"feature.client.d.ts","sourceRoot":"","sources":["../../../src/fields/LexicalEditor/feature.client.tsx"],"names":[],"mappings":"AAMA,eAAO,MAAM,0BAA0B
|
|
1
|
+
{"version":3,"file":"feature.client.d.ts","sourceRoot":"","sources":["../../../src/fields/LexicalEditor/feature.client.tsx"],"names":[],"mappings":"AAMA,eAAO,MAAM,0BAA0B;;;;;;EAerC,CAAA"}
|
|
@@ -1,13 +1,21 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
import { createClientFeature } from '@payloadcms/richtext-lexical/client';
|
|
3
|
-
import {
|
|
4
|
-
export const LexicalEditorFeatureClient = createClientFeature({
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
3
|
+
import { ComposeFeatureComponent } from './ComposeFeatureComponent.js';
|
|
4
|
+
export const LexicalEditorFeatureClient = createClientFeature((props)=>{
|
|
5
|
+
return {
|
|
6
|
+
plugins: [
|
|
7
|
+
{
|
|
8
|
+
Component: ComposeFeatureComponent,
|
|
9
|
+
position: 'belowContainer'
|
|
10
|
+
}
|
|
11
|
+
],
|
|
12
|
+
sanitizedClientFeatureProps: {
|
|
13
|
+
field: props.field,
|
|
14
|
+
path: props.field?.name,
|
|
15
|
+
schemaPath: props.schemaPath,
|
|
16
|
+
...props?.props
|
|
9
17
|
}
|
|
10
|
-
|
|
18
|
+
};
|
|
11
19
|
});
|
|
12
20
|
|
|
13
21
|
//# sourceMappingURL=feature.client.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/fields/LexicalEditor/feature.client.tsx"],"sourcesContent":["'use client'\n\nimport { createClientFeature } from '@payloadcms/richtext-lexical/client'\n\nimport {
|
|
1
|
+
{"version":3,"sources":["../../../src/fields/LexicalEditor/feature.client.tsx"],"sourcesContent":["'use client'\n\nimport { createClientFeature } from '@payloadcms/richtext-lexical/client'\n\nimport { ComposeFeatureComponent } from './ComposeFeatureComponent.js'\n\nexport const LexicalEditorFeatureClient = createClientFeature((props) => {\n return {\n plugins: [\n {\n Component: ComposeFeatureComponent,\n position: 'belowContainer',\n },\n ],\n sanitizedClientFeatureProps: {\n field: props.field,\n path: props.field?.name,\n schemaPath: props.schemaPath,\n ...props?.props,\n },\n }\n})\n"],"names":["createClientFeature","ComposeFeatureComponent","LexicalEditorFeatureClient","props","plugins","Component","position","sanitizedClientFeatureProps","field","path","name","schemaPath"],"mappings":"AAAA;AAEA,SAASA,mBAAmB,QAAQ,sCAAqC;AAEzE,SAASC,uBAAuB,QAAQ,+BAA8B;AAEtE,OAAO,MAAMC,6BAA6BF,oBAAoB,CAACG;IAC7D,OAAO;QACLC,SAAS;YACP;gBACEC,WAAWJ;gBACXK,UAAU;YACZ;SACD;QACDC,6BAA6B;YAC3BC,OAAOL,MAAMK,KAAK;YAClBC,MAAMN,MAAMK,KAAK,EAAEE;YACnBC,YAAYR,MAAMQ,UAAU;YAC5B,GAAGR,OAAOA,KAAK;QACjB;IACF;AACF,GAAE"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { TextareaFieldClientProps } from 'payload';
|
|
2
2
|
import React from 'react';
|
|
3
|
-
export declare const PromptEditorField: React.FC<
|
|
3
|
+
export declare const PromptEditorField: React.FC<TextareaFieldClientProps>;
|
|
4
4
|
//# sourceMappingURL=PromptEditorField.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PromptEditorField.d.ts","sourceRoot":"","sources":["../../../src/fields/PromptEditorField/PromptEditorField.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"PromptEditorField.d.ts","sourceRoot":"","sources":["../../../src/fields/PromptEditorField/PromptEditorField.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,SAAS,CAAA;AAGvD,OAAO,KAAK,MAAM,OAAO,CAAA;AAMzB,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAAE,CAAC,wBAAwB,CAyBhE,CAAA"}
|
|
@@ -1,24 +1,20 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
|
-
import { FieldLabel, useField
|
|
3
|
+
import { FieldLabel, useField } from '@payloadcms/ui';
|
|
4
4
|
import React from 'react';
|
|
5
|
-
import { useInstructions } from '../../providers/InstructionsProvider/useInstructions.js';
|
|
6
5
|
import { AutocompleteTextField } from '../../libraries/autocomplete/AutocompleteTextArea.js';
|
|
6
|
+
import { useInstructions } from '../../providers/InstructionsProvider/useInstructions.js';
|
|
7
7
|
//NOTE: HMR does not work for plugin components anymore, I think it has to do with importMap/ string path
|
|
8
8
|
export const PromptEditorField = (props)=>{
|
|
9
|
-
const { field } = props;
|
|
10
|
-
const { path: pathFromContext } = useFieldProps();
|
|
9
|
+
const { field, path: pathFromContext } = props;
|
|
11
10
|
const { setValue, value } = useField({
|
|
12
11
|
path: pathFromContext
|
|
13
12
|
});
|
|
14
|
-
const { promptEditorSuggestions } = useInstructions(
|
|
15
|
-
path: pathFromContext
|
|
16
|
-
});
|
|
13
|
+
const { promptEditorSuggestions } = useInstructions();
|
|
17
14
|
return /*#__PURE__*/ _jsxs("div", {
|
|
18
15
|
className: "field-type textarea",
|
|
19
16
|
children: [
|
|
20
17
|
/*#__PURE__*/ _jsx(FieldLabel, {
|
|
21
|
-
field: field,
|
|
22
18
|
label: field.label
|
|
23
19
|
}),
|
|
24
20
|
/*#__PURE__*/ _jsx(AutocompleteTextField, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/fields/PromptEditorField/PromptEditorField.tsx"],"sourcesContent":["'use client'\n\nimport type {
|
|
1
|
+
{"version":3,"sources":["../../../src/fields/PromptEditorField/PromptEditorField.tsx"],"sourcesContent":["'use client'\n\nimport type { TextareaFieldClientProps } from 'payload'\n\nimport { FieldLabel, useField } from '@payloadcms/ui'\nimport React from 'react'\n\nimport { AutocompleteTextField } from '../../libraries/autocomplete/AutocompleteTextArea.js'\nimport { useInstructions } from '../../providers/InstructionsProvider/useInstructions.js'\n\n//NOTE: HMR does not work for plugin components anymore, I think it has to do with importMap/ string path\nexport const PromptEditorField: React.FC<TextareaFieldClientProps> = (props) => {\n const { field, path: pathFromContext } = props\n\n const { setValue, value } = useField<string>({\n path: pathFromContext,\n })\n\n const { promptEditorSuggestions } = useInstructions()\n\n return (\n <div className=\"field-type textarea\">\n <FieldLabel label={field.label} />\n <AutocompleteTextField\n changeOnSelect={(trigger, selected) => {\n return trigger + selected + ' }}'\n }}\n onChange={(val: string) => {\n setValue(val)\n }}\n options={promptEditorSuggestions}\n trigger={['{{ ']}\n value={value}\n />\n </div>\n )\n}\n"],"names":["FieldLabel","useField","React","AutocompleteTextField","useInstructions","PromptEditorField","props","field","path","pathFromContext","setValue","value","promptEditorSuggestions","div","className","label","changeOnSelect","trigger","selected","onChange","val","options"],"mappings":"AAAA;;AAIA,SAASA,UAAU,EAAEC,QAAQ,QAAQ,iBAAgB;AACrD,OAAOC,WAAW,QAAO;AAEzB,SAASC,qBAAqB,QAAQ,uDAAsD;AAC5F,SAASC,eAAe,QAAQ,0DAAyD;AAEzF,yGAAyG;AACzG,OAAO,MAAMC,oBAAwD,CAACC;IACpE,MAAM,EAAEC,KAAK,EAAEC,MAAMC,eAAe,EAAE,GAAGH;IAEzC,MAAM,EAAEI,QAAQ,EAAEC,KAAK,EAAE,GAAGV,SAAiB;QAC3CO,MAAMC;IACR;IAEA,MAAM,EAAEG,uBAAuB,EAAE,GAAGR;IAEpC,qBACE,MAACS;QAAIC,WAAU;;0BACb,KAACd;gBAAWe,OAAOR,MAAMQ,KAAK;;0BAC9B,KAACZ;gBACCa,gBAAgB,CAACC,SAASC;oBACxB,OAAOD,UAAUC,WAAW;gBAC9B;gBACAC,UAAU,CAACC;oBACTV,SAASU;gBACX;gBACAC,SAAST;gBACTK,SAAS;oBAAC;iBAAM;gBAChBN,OAAOA;;;;AAIf,EAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { SelectFieldClientProps } from 'payload';
|
|
2
2
|
export declare const SelectField: (props: {
|
|
3
3
|
filterByField: string;
|
|
4
4
|
options: {
|
|
@@ -6,5 +6,6 @@ export declare const SelectField: (props: {
|
|
|
6
6
|
label: string;
|
|
7
7
|
value: string;
|
|
8
8
|
}[];
|
|
9
|
-
|
|
9
|
+
path: string;
|
|
10
|
+
} & SelectFieldClientProps) => import("react/jsx-runtime").JSX.Element;
|
|
10
11
|
//# sourceMappingURL=SelectField.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SelectField.d.ts","sourceRoot":"","sources":["../../../src/fields/SelectField/SelectField.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAgB,
|
|
1
|
+
{"version":3,"file":"SelectField.d.ts","sourceRoot":"","sources":["../../../src/fields/SelectField/SelectField.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAgB,sBAAsB,EAAE,MAAM,SAAS,CAAA;AAMnE,eAAO,MAAM,WAAW,UACf;IACL,aAAa,EAAE,MAAM,CAAA;IACrB,OAAO,EAAE;QAAE,MAAM,EAAE,MAAM,EAAE,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,EAAE,CAAA;IAC7D,IAAI,EAAE,MAAM,CAAA;CACb,GAAG,sBAAsB,4CAoC3B,CAAA"}
|
|
@@ -1,11 +1,10 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
3
|
-
import { SelectInput, useField
|
|
3
|
+
import { SelectInput, useField } from '@payloadcms/ui';
|
|
4
4
|
import React, { useEffect, useState } from 'react';
|
|
5
5
|
// Use to filter model options in settings based on field types
|
|
6
6
|
export const SelectField = (props)=>{
|
|
7
|
-
const { field, filterByField, options } = props;
|
|
8
|
-
const { path } = useFieldProps();
|
|
7
|
+
const { field, filterByField, options, path } = props;
|
|
9
8
|
const { value: relatedField } = useField({
|
|
10
9
|
path: filterByField
|
|
11
10
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/fields/SelectField/SelectField.tsx"],"sourcesContent":["'use client'\n\nimport type { OptionObject,
|
|
1
|
+
{"version":3,"sources":["../../../src/fields/SelectField/SelectField.tsx"],"sourcesContent":["'use client'\n\nimport type { OptionObject, SelectFieldClientProps } from 'payload'\n\nimport { SelectInput, useField } from '@payloadcms/ui'\nimport React, { useEffect, useState } from 'react'\n\n// Use to filter model options in settings based on field types\nexport const SelectField = (\n props: {\n filterByField: string\n options: { fields: string[]; label: string; value: string }[]\n path: string\n } & SelectFieldClientProps,\n) => {\n const { field, filterByField, options, path } = props\n const { value: relatedField } = useField<string>({\n path: filterByField,\n })\n\n const [filterOptions, setFilterOptions] = useState<OptionObject[]>([])\n\n useEffect(() => {\n if (!Array.isArray(options)) return\n\n const opts = options.filter((option) => {\n if (!relatedField || !option.fields) return true\n\n if (Array.isArray(option.fields)) {\n return option.fields.includes(relatedField)\n }\n })\n setFilterOptions(opts)\n }, [relatedField, options])\n\n const { setValue, value: selectValue } = useField<string>({ path })\n\n return (\n <SelectInput\n label={field.label}\n name={path}\n onChange={(e: OptionObject) => {\n setValue(e.value)\n }}\n options={filterOptions}\n path={path}\n value={selectValue}\n />\n )\n}\n"],"names":["SelectInput","useField","React","useEffect","useState","SelectField","props","field","filterByField","options","path","value","relatedField","filterOptions","setFilterOptions","Array","isArray","opts","filter","option","fields","includes","setValue","selectValue","label","name","onChange","e"],"mappings":"AAAA;;AAIA,SAASA,WAAW,EAAEC,QAAQ,QAAQ,iBAAgB;AACtD,OAAOC,SAASC,SAAS,EAAEC,QAAQ,QAAQ,QAAO;AAElD,+DAA+D;AAC/D,OAAO,MAAMC,cAAc,CACzBC;IAMA,MAAM,EAAEC,KAAK,EAAEC,aAAa,EAAEC,OAAO,EAAEC,IAAI,EAAE,GAAGJ;IAChD,MAAM,EAAEK,OAAOC,YAAY,EAAE,GAAGX,SAAiB;QAC/CS,MAAMF;IACR;IAEA,MAAM,CAACK,eAAeC,iBAAiB,GAAGV,SAAyB,EAAE;IAErED,UAAU;QACR,IAAI,CAACY,MAAMC,OAAO,CAACP,UAAU;QAE7B,MAAMQ,OAAOR,QAAQS,MAAM,CAAC,CAACC;YAC3B,IAAI,CAACP,gBAAgB,CAACO,OAAOC,MAAM,EAAE,OAAO;YAE5C,IAAIL,MAAMC,OAAO,CAACG,OAAOC,MAAM,GAAG;gBAChC,OAAOD,OAAOC,MAAM,CAACC,QAAQ,CAACT;YAChC;QACF;QACAE,iBAAiBG;IACnB,GAAG;QAACL;QAAcH;KAAQ;IAE1B,MAAM,EAAEa,QAAQ,EAAEX,OAAOY,WAAW,EAAE,GAAGtB,SAAiB;QAAES;IAAK;IAEjE,qBACE,KAACV;QACCwB,OAAOjB,MAAMiB,KAAK;QAClBC,MAAMf;QACNgB,UAAU,CAACC;YACTL,SAASK,EAAEhB,KAAK;QAClB;QACAF,SAASI;QACTH,MAAMA;QACNC,OAAOY;;AAGb,EAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,10 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @license This software is licensed under the MIT License.
|
|
3
|
-
* redistribution, or embedding in proprietary systems, please refer to the
|
|
4
|
-
* COMMERCIAL-LICENSE.md. Unauthorized commercial use or resale of modified versions
|
|
5
|
-
* without appropriate licensing is prohibited.
|
|
2
|
+
* @license This software is licensed under the MIT License.
|
|
6
3
|
*/
|
|
7
4
|
export { payloadAiPlugin } from './plugin.js';
|
|
8
|
-
export { PayloadAiPluginLexicalEditorFeature } from './fields/LexicalEditor/feature.server.js';
|
|
9
|
-
export { LexicalBaseNode } from './ai/schemas/lexical.schema.js';
|
|
10
5
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA"}
|
package/dist/index.js
CHANGED
|
@@ -1,10 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @license This software is licensed under the MIT License.
|
|
3
|
-
* redistribution, or embedding in proprietary systems, please refer to the
|
|
4
|
-
* COMMERCIAL-LICENSE.md. Unauthorized commercial use or resale of modified versions
|
|
5
|
-
* without appropriate licensing is prohibited.
|
|
2
|
+
* @license This software is licensed under the MIT License.
|
|
6
3
|
*/ export { payloadAiPlugin } from './plugin.js';
|
|
7
|
-
export { PayloadAiPluginLexicalEditorFeature } from './fields/LexicalEditor/feature.server.js';
|
|
8
|
-
export { LexicalBaseNode } from './ai/schemas/lexical.schema.js';
|
|
9
4
|
|
|
10
5
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/index.ts"],"sourcesContent":["/**\n * @license This software is licensed under the MIT License
|
|
1
|
+
{"version":3,"sources":["../src/index.ts"],"sourcesContent":["/**\n * @license This software is licensed under the MIT License.\n */\n\nexport { payloadAiPlugin } from './plugin.js'\n"],"names":["payloadAiPlugin"],"mappings":"AAAA;;CAEC,GAED,SAASA,eAAe,QAAQ,cAAa"}
|
package/dist/init.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
1
|
import type { Payload } from 'payload';
|
|
2
|
-
|
|
2
|
+
import type { PluginConfig } from './types.js';
|
|
3
|
+
export declare const init: (payload: Payload, fieldSchemaPaths: any, pluginConfig: PluginConfig) => Promise<void>;
|
|
3
4
|
//# sourceMappingURL=init.d.ts.map
|
package/dist/init.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../src/init.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;
|
|
1
|
+
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../src/init.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AAEtC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAO9C,eAAO,MAAM,IAAI,YAAmB,OAAO,uCAAkC,YAAY,kBAuFxF,CAAA"}
|
package/dist/init.js
CHANGED
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
import { GenerationModels } from './ai/models/index.js';
|
|
2
2
|
import { seedPrompts } from './ai/prompts.js';
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
export const init = async (payload, fieldSchemaPaths)=>{
|
|
3
|
+
import { systemGenerate } from './ai/utils/systemGenerate.js';
|
|
4
|
+
import { PLUGIN_INSTRUCTIONS_TABLE } from './defaults.js';
|
|
5
|
+
export const init = async (payload, fieldSchemaPaths, pluginConfig)=>{
|
|
6
6
|
payload.logger.info(`— AI Plugin: Initializing...`);
|
|
7
7
|
const paths = Object.keys(fieldSchemaPaths);
|
|
8
8
|
const fieldInstructionsMap = {};
|
|
9
9
|
for(let i = 0; i < paths.length; i++){
|
|
10
10
|
const path = paths[i];
|
|
11
|
-
const { type: fieldType, label: fieldLabel } = fieldSchemaPaths[path];
|
|
12
|
-
//TODO: if global is broken the plugin doesn't know and does not run reindexing
|
|
11
|
+
const { type: fieldType, label: fieldLabel, relationTo } = fieldSchemaPaths[path];
|
|
13
12
|
const entry = await payload.find({
|
|
14
13
|
collection: PLUGIN_INSTRUCTIONS_TABLE,
|
|
14
|
+
pagination: false,
|
|
15
15
|
where: {
|
|
16
16
|
'field-type': {
|
|
17
17
|
equals: fieldType
|
|
@@ -28,11 +28,14 @@ export const init = async (payload, fieldSchemaPaths)=>{
|
|
|
28
28
|
fieldType,
|
|
29
29
|
path
|
|
30
30
|
});
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
31
|
+
let generatedPrompt = '{{ title }}';
|
|
32
|
+
if (pluginConfig.generatePromptOnInit) {
|
|
33
|
+
generatedPrompt = await systemGenerate({
|
|
34
|
+
prompt,
|
|
35
|
+
system
|
|
36
|
+
});
|
|
37
|
+
payload.logger.info(`\nPrompt generated for "${fieldLabel}" field:\nprompt: ${generatedPrompt}\n\n`);
|
|
38
|
+
}
|
|
36
39
|
const instructions = await payload.create({
|
|
37
40
|
collection: PLUGIN_INSTRUCTIONS_TABLE,
|
|
38
41
|
data: {
|
|
@@ -41,10 +44,11 @@ export const init = async (payload, fieldSchemaPaths)=>{
|
|
|
41
44
|
return a.fields.includes(fieldType);
|
|
42
45
|
})?.id,
|
|
43
46
|
prompt: generatedPrompt,
|
|
47
|
+
'relation-to': relationTo,
|
|
44
48
|
'schema-path': path
|
|
45
49
|
}
|
|
46
|
-
}).then((a)=>a).catch((
|
|
47
|
-
console.log('
|
|
50
|
+
}).then((a)=>a).catch((err)=>{
|
|
51
|
+
console.log('— AI Plugin: Error creating Compose settings-', err);
|
|
48
52
|
});
|
|
49
53
|
// @ts-expect-error
|
|
50
54
|
if (instructions?.id) {
|
|
@@ -61,16 +65,13 @@ export const init = async (payload, fieldSchemaPaths)=>{
|
|
|
61
65
|
};
|
|
62
66
|
}
|
|
63
67
|
}
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
data: {
|
|
68
|
-
map: fieldInstructionsMap
|
|
69
|
-
},
|
|
70
|
-
depth: 2
|
|
71
|
-
});
|
|
68
|
+
if (pluginConfig.debugging) {
|
|
69
|
+
payload.logger.info(`— AI Plugin: Enabled fields map: ${JSON.stringify(fieldInstructionsMap, null, 2)}`);
|
|
70
|
+
}
|
|
72
71
|
payload.logger.info(`— AI Plugin: Initialized!`);
|
|
73
|
-
|
|
72
|
+
if (pluginConfig.generatePromptOnInit) {
|
|
73
|
+
payload.logger.info('\n\n-AI Plugin: Example prompts are added to get you started, Now go break some code 🚀🚀🚀\n\n');
|
|
74
|
+
}
|
|
74
75
|
};
|
|
75
76
|
|
|
76
77
|
//# sourceMappingURL=init.js.map
|
package/dist/init.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/init.ts"],"sourcesContent":["import type { Payload } from 'payload'\n\nimport { GenerationModels } from './ai/models/index.js'\nimport { seedPrompts } from './ai/prompts.js'\nimport {
|
|
1
|
+
{"version":3,"sources":["../src/init.ts"],"sourcesContent":["import type { Payload } from 'payload'\n\nimport type { PluginConfig } from './types.js'\n\nimport { GenerationModels } from './ai/models/index.js'\nimport { seedPrompts } from './ai/prompts.js'\nimport { systemGenerate } from './ai/utils/systemGenerate.js'\nimport { PLUGIN_INSTRUCTIONS_TABLE } from './defaults.js'\n\nexport const init = async (payload: Payload, fieldSchemaPaths, pluginConfig: PluginConfig) => {\n payload.logger.info(`— AI Plugin: Initializing...`)\n\n const paths = Object.keys(fieldSchemaPaths)\n\n const fieldInstructionsMap = {}\n for (let i = 0; i < paths.length; i++) {\n const path = paths[i]\n const { type: fieldType, label: fieldLabel, relationTo } = fieldSchemaPaths[path]\n const entry = await payload.find({\n collection: PLUGIN_INSTRUCTIONS_TABLE,\n pagination: false,\n where: {\n 'field-type': {\n equals: fieldType,\n },\n 'schema-path': {\n equals: path,\n },\n },\n })\n\n if (!entry?.docs?.length) {\n const { prompt, system } = seedPrompts({\n fieldLabel,\n fieldSchemaPaths,\n fieldType,\n path,\n })\n\n let generatedPrompt = '{{ title }}'\n if (pluginConfig.generatePromptOnInit) {\n generatedPrompt = await systemGenerate({\n prompt,\n system,\n })\n payload.logger.info(\n `\\nPrompt generated for \"${fieldLabel}\" field:\\nprompt: ${generatedPrompt}\\n\\n`,\n )\n }\n\n const instructions = await payload\n .create({\n collection: PLUGIN_INSTRUCTIONS_TABLE,\n data: {\n 'field-type': fieldType,\n 'model-id': GenerationModels.find((a) => {\n return a.fields.includes(fieldType)\n })?.id,\n prompt: generatedPrompt,\n 'relation-to': relationTo,\n 'schema-path': path,\n },\n })\n .then((a) => a)\n .catch((err) => {\n console.log('— AI Plugin: Error creating Compose settings-', err)\n })\n\n // @ts-expect-error\n if (instructions?.id) {\n fieldInstructionsMap[path] = {\n id: instructions.id,\n fieldType,\n }\n }\n } else {\n const [instructions] = entry.docs\n fieldInstructionsMap[path] = {\n id: instructions.id,\n fieldType,\n }\n }\n }\n\n if (pluginConfig.debugging) {\n payload.logger.info(\n `— AI Plugin: Enabled fields map: ${JSON.stringify(fieldInstructionsMap, null, 2)}`,\n )\n }\n\n payload.logger.info(`— AI Plugin: Initialized!`)\n if (pluginConfig.generatePromptOnInit) {\n payload.logger.info(\n '\\n\\n-AI Plugin: Example prompts are added to get you started, Now go break some code 🚀🚀🚀\\n\\n',\n )\n }\n}\n"],"names":["GenerationModels","seedPrompts","systemGenerate","PLUGIN_INSTRUCTIONS_TABLE","init","payload","fieldSchemaPaths","pluginConfig","logger","info","paths","Object","keys","fieldInstructionsMap","i","length","path","type","fieldType","label","fieldLabel","relationTo","entry","find","collection","pagination","where","equals","docs","prompt","system","generatedPrompt","generatePromptOnInit","instructions","create","data","a","fields","includes","id","then","catch","err","console","log","debugging","JSON","stringify"],"mappings":"AAIA,SAASA,gBAAgB,QAAQ,uBAAsB;AACvD,SAASC,WAAW,QAAQ,kBAAiB;AAC7C,SAASC,cAAc,QAAQ,+BAA8B;AAC7D,SAASC,yBAAyB,QAAQ,gBAAe;AAEzD,OAAO,MAAMC,OAAO,OAAOC,SAAkBC,kBAAkBC;IAC7DF,QAAQG,MAAM,CAACC,IAAI,CAAC,CAAC,4BAA4B,CAAC;IAElD,MAAMC,QAAQC,OAAOC,IAAI,CAACN;IAE1B,MAAMO,uBAAuB,CAAC;IAC9B,IAAK,IAAIC,IAAI,GAAGA,IAAIJ,MAAMK,MAAM,EAAED,IAAK;QACrC,MAAME,OAAON,KAAK,CAACI,EAAE;QACrB,MAAM,EAAEG,MAAMC,SAAS,EAAEC,OAAOC,UAAU,EAAEC,UAAU,EAAE,GAAGf,gBAAgB,CAACU,KAAK;QACjF,MAAMM,QAAQ,MAAMjB,QAAQkB,IAAI,CAAC;YAC/BC,YAAYrB;YACZsB,YAAY;YACZC,OAAO;gBACL,cAAc;oBACZC,QAAQT;gBACV;gBACA,eAAe;oBACbS,QAAQX;gBACV;YACF;QACF;QAEA,IAAI,CAACM,OAAOM,MAAMb,QAAQ;YACxB,MAAM,EAAEc,MAAM,EAAEC,MAAM,EAAE,GAAG7B,YAAY;gBACrCmB;gBACAd;gBACAY;gBACAF;YACF;YAEA,IAAIe,kBAAkB;YACtB,IAAIxB,aAAayB,oBAAoB,EAAE;gBACrCD,kBAAkB,MAAM7B,eAAe;oBACrC2B;oBACAC;gBACF;gBACAzB,QAAQG,MAAM,CAACC,IAAI,CACjB,CAAC,wBAAwB,EAAEW,WAAW,kBAAkB,EAAEW,gBAAgB,IAAI,CAAC;YAEnF;YAEA,MAAME,eAAe,MAAM5B,QACxB6B,MAAM,CAAC;gBACNV,YAAYrB;gBACZgC,MAAM;oBACJ,cAAcjB;oBACd,YAAYlB,iBAAiBuB,IAAI,CAAC,CAACa;wBACjC,OAAOA,EAAEC,MAAM,CAACC,QAAQ,CAACpB;oBAC3B,IAAIqB;oBACJV,QAAQE;oBACR,eAAeV;oBACf,eAAeL;gBACjB;YACF,GACCwB,IAAI,CAAC,CAACJ,IAAMA,GACZK,KAAK,CAAC,CAACC;gBACNC,QAAQC,GAAG,CAAC,iDAAiDF;YAC/D;YAEF,mBAAmB;YACnB,IAAIT,cAAcM,IAAI;gBACpB1B,oBAAoB,CAACG,KAAK,GAAG;oBAC3BuB,IAAIN,aAAaM,EAAE;oBACnBrB;gBACF;YACF;QACF,OAAO;YACL,MAAM,CAACe,aAAa,GAAGX,MAAMM,IAAI;YACjCf,oBAAoB,CAACG,KAAK,GAAG;gBAC3BuB,IAAIN,aAAaM,EAAE;gBACnBrB;YACF;QACF;IACF;IAEA,IAAIX,aAAasC,SAAS,EAAE;QAC1BxC,QAAQG,MAAM,CAACC,IAAI,CACjB,CAAC,iCAAiC,EAAEqC,KAAKC,SAAS,CAAClC,sBAAsB,MAAM,IAAI;IAEvF;IAEAR,QAAQG,MAAM,CAACC,IAAI,CAAC,CAAC,yBAAyB,CAAC;IAC/C,IAAIF,aAAayB,oBAAoB,EAAE;QACrC3B,QAAQG,MAAM,CAACC,IAAI,CACjB;IAEJ;AACF,EAAC"}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* Github: https://github.com/yury-dymov/react-autocomplete-input
|
|
4
4
|
*
|
|
5
5
|
* Modified to only be use for PromptEditorField
|
|
6
|
-
*/ import { jsx as _jsx, jsxs as _jsxs
|
|
6
|
+
*/ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
7
7
|
import * as inputSelection from 'get-input-selection';
|
|
8
8
|
import isEqual from 'lodash.isequal';
|
|
9
9
|
import React, { useCallback, useEffect, useRef, useState } from 'react';
|
|
@@ -159,8 +159,10 @@ export const AutocompleteTextField = (props)=>{
|
|
|
159
159
|
matchAny
|
|
160
160
|
]);
|
|
161
161
|
const updateCaretPosition = useCallback((newCaret)=>{
|
|
162
|
-
|
|
163
|
-
|
|
162
|
+
requestAnimationFrame(()=>{
|
|
163
|
+
setCaret(newCaret);
|
|
164
|
+
inputSelection.default.setCaretPosition(inputRef.current, newCaret);
|
|
165
|
+
});
|
|
164
166
|
}, []);
|
|
165
167
|
const updateHelper = useCallback((str, caretPos, helperOptions)=>{
|
|
166
168
|
const slug = getMatch(str, caretPos, helperOptions);
|
|
@@ -183,6 +185,7 @@ export const AutocompleteTextField = (props)=>{
|
|
|
183
185
|
}
|
|
184
186
|
resetHelper();
|
|
185
187
|
}
|
|
188
|
+
updateCaretPosition(caretPos);
|
|
186
189
|
} else {
|
|
187
190
|
resetHelper();
|
|
188
191
|
}
|
|
@@ -190,7 +193,8 @@ export const AutocompleteTextField = (props)=>{
|
|
|
190
193
|
getMatch,
|
|
191
194
|
minChars,
|
|
192
195
|
requestOnlyIfNoOptions,
|
|
193
|
-
onRequestOptions
|
|
196
|
+
onRequestOptions,
|
|
197
|
+
updateCaretPosition
|
|
194
198
|
]);
|
|
195
199
|
const resetHelper = useCallback(()=>{
|
|
196
200
|
setHelperVisible(false);
|
|
@@ -203,8 +207,6 @@ export const AutocompleteTextField = (props)=>{
|
|
|
203
207
|
setHelperVisible(false);
|
|
204
208
|
}
|
|
205
209
|
recentValue.current = str;
|
|
206
|
-
setCaret(caretPos);
|
|
207
|
-
setValue(e.target.value);
|
|
208
210
|
if (!str.length || !caretPos) {
|
|
209
211
|
return onChange(e.target.value);
|
|
210
212
|
}
|
|
@@ -348,7 +350,7 @@ export const AutocompleteTextField = (props)=>{
|
|
|
348
350
|
if (!val.startsWith(text)) {
|
|
349
351
|
return text;
|
|
350
352
|
}
|
|
351
|
-
return /*#__PURE__*/ _jsxs(
|
|
353
|
+
return /*#__PURE__*/ _jsxs(React.Fragment, {
|
|
352
354
|
children: [
|
|
353
355
|
text.slice(0, highlightStart),
|
|
354
356
|
/*#__PURE__*/ _jsx("strong", {
|