@payloadcms/richtext-lexical 3.0.0-beta.130 → 3.0.0-beta.131
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/dist/exports/client/bundled.css +1 -1
- package/dist/exports/client/{chunk-AE5XKHR4.js → chunk-D7PD5DUW.js} +2 -2
- package/dist/exports/client/component-KLNTKKNE.js +2 -0
- package/dist/exports/client/component-KLNTKKNE.js.map +7 -0
- package/dist/exports/client/index.js +7 -7
- package/dist/exports/client/index.js.map +3 -3
- package/dist/features/blocks/client/component/BlockContent.d.ts.map +1 -1
- package/dist/features/blocks/client/component/BlockContent.js +2 -11
- package/dist/features/blocks/client/component/BlockContent.js.map +1 -1
- package/dist/features/blocks/client/component/index.d.ts.map +1 -1
- package/dist/features/blocks/client/component/index.js +4 -2
- package/dist/features/blocks/client/component/index.js.map +1 -1
- package/dist/features/link/client/plugins/floatingLinkEditor/LinkEditor/index.d.ts.map +1 -1
- package/dist/features/link/client/plugins/floatingLinkEditor/LinkEditor/index.js +17 -11
- package/dist/features/link/client/plugins/floatingLinkEditor/LinkEditor/index.js.map +1 -1
- package/dist/features/toolbars/fixed/client/Toolbar/index.js.map +1 -1
- package/dist/features/toolbars/shared/ToolbarDropdown/DropDown.d.ts +3 -2
- package/dist/features/toolbars/shared/ToolbarDropdown/DropDown.d.ts.map +1 -1
- package/dist/features/toolbars/shared/ToolbarDropdown/DropDown.js +11 -3
- package/dist/features/toolbars/shared/ToolbarDropdown/DropDown.js.map +1 -1
- package/dist/features/toolbars/shared/ToolbarDropdown/index.d.ts.map +1 -1
- package/dist/features/toolbars/shared/ToolbarDropdown/index.js +22 -25
- package/dist/features/toolbars/shared/ToolbarDropdown/index.js.map +1 -1
- package/dist/field/bundled.css +1 -1
- package/dist/types.d.ts +1 -1
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js.map +1 -1
- package/package.json +7 -7
- package/dist/exports/client/component-YNHK5J3P.js +0 -2
- package/dist/exports/client/component-YNHK5J3P.js.map +0 -7
- /package/dist/exports/client/{chunk-AE5XKHR4.js.map → chunk-D7PD5DUW.js.map} +0 -0
package/dist/types.d.ts
CHANGED
|
@@ -69,7 +69,7 @@ export type LexicalRichTextFieldProps = {
|
|
|
69
69
|
featureClientSchemaMap: FeatureClientSchemaMap;
|
|
70
70
|
lexicalEditorConfig: LexicalEditorConfig;
|
|
71
71
|
} & Pick<ServerFieldBase, 'permissions'> & RichTextFieldClientProps<SerializedEditorState, AdapterProps, object>;
|
|
72
|
-
export type LexicalRichTextCellProps = DefaultCellComponentProps<
|
|
72
|
+
export type LexicalRichTextCellProps = DefaultCellComponentProps<RichTextFieldClient<SerializedEditorState, AdapterProps, object>, SerializedEditorState>;
|
|
73
73
|
export type AdapterProps = {
|
|
74
74
|
editorConfig: SanitizedServerEditorConfig;
|
|
75
75
|
};
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,IAAI,mBAAmB,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAA;AACzF,OAAO,KAAK,EACV,WAAW,EACX,yBAAyB,EACzB,eAAe,EACf,mBAAmB,EACnB,wBAAwB,EACxB,eAAe,EACf,eAAe,EAChB,MAAM,SAAS,CAAA;AAEhB,OAAO,KAAK,EACV,sBAAsB,EACtB,6BAA6B,EAC9B,MAAM,2BAA2B,CAAA;AAClC,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAA;AACtE,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,2BAA2B,CAAA;AAE5E,MAAM,MAAM,sBAAsB,GAAG;IACnC;;OAEG;IACH,UAAU,CAAC,EAAE,OAAO,CAAA;CACrB,CAAA;AAED,MAAM,MAAM,kBAAkB,GAAG;IAC/B,KAAK,CAAC,EAAE,sBAAsB,CAAA;IAC9B,QAAQ,CAAC,EACL,CAAC,CAAC,EACA,eAAe,EACf,YAAY,GACb,EAAE;QACD;;;;;;;;;;WAUG;QACH,eAAe,EAAE,qBAAqB,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,CAAA;QACvD;;;;;;;;;;;WAWG;QACH,YAAY,EAAE,qBAAqB,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,CAAA;KACrD,KAAK,qBAAqB,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC,GAC7C,qBAAqB,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,CAAA;IAC1C,OAAO,CAAC,EAAE,mBAAmB,CAAA;CAC9B,CAAA;AAED,MAAM,MAAM,sBAAsB,GAAG;IACnC,YAAY,EAAE,2BAA2B,CAAA;IACzC,QAAQ,EAAE,qBAAqB,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,CAAA;CACjD,GAAG,eAAe,CAAC,qBAAqB,EAAE,YAAY,CAAC,CAAA;AAExD,MAAM,MAAM,8BAA8B;AACxC;;GAEG;AACH,CAAC,EACC,MAAM,EACN,MAAM,EACN,iBAAiB,GAClB,EAAE;IACD,MAAM,EAAE,eAAe,CAAA;IACvB,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,iBAAiB,EAAE,OAAO,CAAA;CAC3B,KAAK,OAAO,CAAC,sBAAsB,CAAC,CAAA;AAEvC,MAAM,MAAM,sBAAsB,GAAG;IACnC,CAAC,UAAU,EAAE,MAAM,GAAG;QACpB,CAAC,GAAG,EAAE,MAAM,GAAG,WAAW,EAAE,CAAA;KAC7B,CAAA;CACF,CAAA;AAED,MAAM,MAAM,yBAAyB,GAAG;IACtC,KAAK,EAAE,sBAAsB,CAAA;IAE7B,cAAc,EAAE;QACd,CAAC,UAAU,EAAE,MAAM,GAAG;YACpB,kBAAkB,CAAC,EAAE,MAAM,CAAA;YAC3B,qBAAqB,CAAC,EAAE,6BAA6B,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;SAChE,CAAA;KACF,CAAA;IACD,sBAAsB,EAAE,sBAAsB,CAAA;IAC9C,mBAAmB,EAAE,mBAAmB,CAAA;CACzC,GAAG,IAAI,CAAC,eAAe,EAAE,aAAa,CAAC,GACtC,wBAAwB,CAAC,qBAAqB,EAAE,YAAY,EAAE,MAAM,CAAC,CAAA;AAEvE,MAAM,MAAM,wBAAwB,GAAG,yBAAyB,CAC9D,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/dist/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","names":[],"sources":["../src/types.ts"],"sourcesContent":["import type { EditorConfig as LexicalEditorConfig, SerializedEditorState } from 'lexical'\nimport type {\n ClientField,\n DefaultCellComponentProps,\n RichTextAdapter,\n RichTextFieldClient,\n RichTextFieldClientProps,\n SanitizedConfig,\n ServerFieldBase,\n} from 'payload'\n\nimport type {\n BaseClientFeatureProps,\n FeatureProviderProviderClient,\n} from './features/typesClient.js'\nimport type { FeatureProviderServer } from './features/typesServer.js'\nimport type { SanitizedServerEditorConfig } from './lexical/config/types.js'\n\nexport type LexicalFieldAdminProps = {\n /**\n * Controls if the gutter (padding to the left & gray vertical line) should be hidden. @default false\n */\n hideGutter?: boolean\n}\n\nexport type LexicalEditorProps = {\n admin?: LexicalFieldAdminProps\n features?:\n | (({\n defaultFeatures,\n rootFeatures,\n }: {\n /**\n * This opinionated array contains all \"recommended\" default features.\n *\n * @Example\n *\n * ```ts\n * editor: lexicalEditor({\n * features: ({ defaultFeatures }) => [...defaultFeatures, FixedToolbarFeature()],\n * })\n * ```\n */\n defaultFeatures: FeatureProviderServer<any, any, any>[]\n /**\n * This array contains all features that are enabled in the root richText editor (the one defined in the payload.config.ts).\n * If this field is the root richText editor, or if the root richText editor is not a lexical editor, this array will be empty.\n *\n * @Example\n *\n * ```ts\n * editor: lexicalEditor({\n * features: ({ rootFeatures }) => [...rootFeatures, FixedToolbarFeature()],\n * })\n * ```\n */\n rootFeatures: FeatureProviderServer<any, any, any>[]\n }) => FeatureProviderServer<any, any, any>[])\n | FeatureProviderServer<any, any, any>[]\n lexical?: LexicalEditorConfig\n}\n\nexport type LexicalRichTextAdapter = {\n editorConfig: SanitizedServerEditorConfig\n features: FeatureProviderServer<any, any, any>[]\n} & RichTextAdapter<SerializedEditorState, AdapterProps>\n\nexport type LexicalRichTextAdapterProvider =\n /**\n * This is being called during the payload sanitization process\n */\n ({\n config,\n isRoot,\n parentIsLocalized,\n }: {\n config: SanitizedConfig\n isRoot?: boolean\n parentIsLocalized: boolean\n }) => Promise<LexicalRichTextAdapter>\n\nexport type FeatureClientSchemaMap = {\n [featureKey: string]: {\n [key: string]: ClientField[]\n }\n}\n\nexport type LexicalRichTextFieldProps = {\n admin: LexicalFieldAdminProps\n // clientFeatures is added through the rsc field\n clientFeatures: {\n [featureKey: string]: {\n clientFeatureProps?: object\n clientFeatureProvider?: FeatureProviderProviderClient<any, any>\n }\n }\n featureClientSchemaMap: FeatureClientSchemaMap\n lexicalEditorConfig: LexicalEditorConfig\n} & Pick<ServerFieldBase, 'permissions'> &\n RichTextFieldClientProps<SerializedEditorState, AdapterProps, object>\n\nexport type LexicalRichTextCellProps = DefaultCellComponentProps<\n
|
|
1
|
+
{"version":3,"file":"types.js","names":[],"sources":["../src/types.ts"],"sourcesContent":["import type { EditorConfig as LexicalEditorConfig, SerializedEditorState } from 'lexical'\nimport type {\n ClientField,\n DefaultCellComponentProps,\n RichTextAdapter,\n RichTextFieldClient,\n RichTextFieldClientProps,\n SanitizedConfig,\n ServerFieldBase,\n} from 'payload'\n\nimport type {\n BaseClientFeatureProps,\n FeatureProviderProviderClient,\n} from './features/typesClient.js'\nimport type { FeatureProviderServer } from './features/typesServer.js'\nimport type { SanitizedServerEditorConfig } from './lexical/config/types.js'\n\nexport type LexicalFieldAdminProps = {\n /**\n * Controls if the gutter (padding to the left & gray vertical line) should be hidden. @default false\n */\n hideGutter?: boolean\n}\n\nexport type LexicalEditorProps = {\n admin?: LexicalFieldAdminProps\n features?:\n | (({\n defaultFeatures,\n rootFeatures,\n }: {\n /**\n * This opinionated array contains all \"recommended\" default features.\n *\n * @Example\n *\n * ```ts\n * editor: lexicalEditor({\n * features: ({ defaultFeatures }) => [...defaultFeatures, FixedToolbarFeature()],\n * })\n * ```\n */\n defaultFeatures: FeatureProviderServer<any, any, any>[]\n /**\n * This array contains all features that are enabled in the root richText editor (the one defined in the payload.config.ts).\n * If this field is the root richText editor, or if the root richText editor is not a lexical editor, this array will be empty.\n *\n * @Example\n *\n * ```ts\n * editor: lexicalEditor({\n * features: ({ rootFeatures }) => [...rootFeatures, FixedToolbarFeature()],\n * })\n * ```\n */\n rootFeatures: FeatureProviderServer<any, any, any>[]\n }) => FeatureProviderServer<any, any, any>[])\n | FeatureProviderServer<any, any, any>[]\n lexical?: LexicalEditorConfig\n}\n\nexport type LexicalRichTextAdapter = {\n editorConfig: SanitizedServerEditorConfig\n features: FeatureProviderServer<any, any, any>[]\n} & RichTextAdapter<SerializedEditorState, AdapterProps>\n\nexport type LexicalRichTextAdapterProvider =\n /**\n * This is being called during the payload sanitization process\n */\n ({\n config,\n isRoot,\n parentIsLocalized,\n }: {\n config: SanitizedConfig\n isRoot?: boolean\n parentIsLocalized: boolean\n }) => Promise<LexicalRichTextAdapter>\n\nexport type FeatureClientSchemaMap = {\n [featureKey: string]: {\n [key: string]: ClientField[]\n }\n}\n\nexport type LexicalRichTextFieldProps = {\n admin: LexicalFieldAdminProps\n // clientFeatures is added through the rsc field\n clientFeatures: {\n [featureKey: string]: {\n clientFeatureProps?: object\n clientFeatureProvider?: FeatureProviderProviderClient<any, any>\n }\n }\n featureClientSchemaMap: FeatureClientSchemaMap\n lexicalEditorConfig: LexicalEditorConfig\n} & Pick<ServerFieldBase, 'permissions'> &\n RichTextFieldClientProps<SerializedEditorState, AdapterProps, object>\n\nexport type LexicalRichTextCellProps = DefaultCellComponentProps<\n RichTextFieldClient<SerializedEditorState, AdapterProps, object>,\n SerializedEditorState\n>\n\nexport type AdapterProps = {\n editorConfig: SanitizedServerEditorConfig\n}\n\nexport type GeneratedFeatureProviderComponent = {\n clientFeature: FeatureProviderProviderClient<any, any>\n clientFeatureProps: BaseClientFeatureProps<object>\n}\n"],"mappings":"AA8GA","ignoreList":[]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@payloadcms/richtext-lexical",
|
|
3
|
-
"version": "3.0.0-beta.
|
|
3
|
+
"version": "3.0.0-beta.131",
|
|
4
4
|
"description": "The officially supported Lexical richtext adapter for Payload",
|
|
5
5
|
"homepage": "https://payloadcms.com",
|
|
6
6
|
"repository": {
|
|
@@ -64,8 +64,8 @@
|
|
|
64
64
|
"react-error-boundary": "4.0.13",
|
|
65
65
|
"ts-essentials": "10.0.3",
|
|
66
66
|
"uuid": "10.0.0",
|
|
67
|
-
"@payloadcms/translations": "3.0.0-beta.
|
|
68
|
-
"@payloadcms/ui": "3.0.0-beta.
|
|
67
|
+
"@payloadcms/translations": "3.0.0-beta.131",
|
|
68
|
+
"@payloadcms/ui": "3.0.0-beta.131"
|
|
69
69
|
},
|
|
70
70
|
"devDependencies": {
|
|
71
71
|
"@babel/cli": "^7.24.5",
|
|
@@ -85,8 +85,8 @@
|
|
|
85
85
|
"esbuild-sass-plugin": "3.3.1",
|
|
86
86
|
"eslint-plugin-react-compiler": "19.0.0-beta-a7bf2bd-20241110",
|
|
87
87
|
"swc-plugin-transform-remove-imports": "1.15.0",
|
|
88
|
-
"
|
|
89
|
-
"
|
|
88
|
+
"@payloadcms/eslint-config": "3.0.0-beta.112",
|
|
89
|
+
"payload": "3.0.0-beta.131"
|
|
90
90
|
},
|
|
91
91
|
"peerDependencies": {
|
|
92
92
|
"@faceless-ui/modal": "3.0.0-beta.2",
|
|
@@ -104,8 +104,8 @@
|
|
|
104
104
|
"lexical": "0.20.0",
|
|
105
105
|
"react": "^19.0.0 || ^19.0.0-rc-65a56d0e-20241020",
|
|
106
106
|
"react-dom": "^19.0.0 || ^19.0.0-rc-65a56d0e-20241020",
|
|
107
|
-
"@payloadcms/next": "3.0.0-beta.
|
|
108
|
-
"payload": "3.0.0-beta.
|
|
107
|
+
"@payloadcms/next": "3.0.0-beta.131",
|
|
108
|
+
"payload": "3.0.0-beta.131"
|
|
109
109
|
},
|
|
110
110
|
"engines": {
|
|
111
111
|
"node": "^18.20.2 || >=20.9.0"
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
"use client";import{c as M}from"./chunk-AE5XKHR4.js";import{b as w}from"./chunk-CUIBIFW2.js";import{jsx as k,jsxs as de}from"react/jsx-runtime";import{Collapsible as me,Form as ue,Pill as fe,SectionTitle as pe,ShimmerEffect as be,useDocumentInfo as U,useFormSubmitted as he,useServerFunctions as ke,useTranslation as ye}from"@payloadcms/ui";import{abortAndIgnore as D}from"@payloadcms/ui/shared";import{useCallback as _e,useEffect as W,useMemo as Ce,useRef as ge,useState as Se}from"react";import{getTranslation as ve}from"@payloadcms/translations";import{v4 as Pe}from"uuid";import{jsx as C,jsxs as R}from"react/jsx-runtime";import{useLexicalComposerContext as X}from"@lexical/react/LexicalComposerContext.js";import{getTranslation as Y}from"@payloadcms/translations";import{Button as Z,Collapsible as ee,ErrorPill as oe,Pill as te,RenderFields as le,SectionTitle as se,useDocumentInfo as re,useFormSubmitted as ne,useTranslation as ie}from"@payloadcms/ui";import{dequal as ae}from"dequal/lite";import{$getNodeByKey as q}from"lexical";import j,{useCallback as I,useEffect as ce}from"react";import{c as z}from"react/compiler-runtime";import{useAllFormFields as G}from"@payloadcms/ui";import{reduceFieldsToValues as J}from"payload/shared";import{useEffect as Q}from"react";function V({fields:l}){for(let e in l){let o=l[e];Array.isArray(o.rows)&&"value"in o&&(o.disableFormData=!0)}return l}var K=l=>{let e=z(8),{onChange:o}=l,[i]=G(),u,s;e[0]!==i?(s=V({fields:i}),u=J(s,!0),e[0]=i,e[1]=u,e[2]=s):(u=e[1],s=e[2]);let a=u,_,p;return e[3]!==o||e[4]!==s||e[5]!==a?(_=()=>{o&&o({fullFieldsWithValues:s,newFormData:a})},p=[a,o,s],e[3]=o,e[4]=s,e[5]=a,e[6]=_,e[7]=p):(_=e[6],p=e[7]),Q(_,p),null};function O(l){for(let e in l){let o=l[e];Array.isArray(o)&&!o?.length?delete l[e]:o&&typeof o=="object"?O(o):o==null&&delete l[e]}}var H=l=>{let{baseClass:e,clientBlock:o,field:i,formSchema:u,Label:s,nodeKey:a,path:_,schemaPath:p}=l,{formData:t}=l,{fieldProps:{permissions:$}}=w(),{i18n:g}=ie(),[f]=X(),{docPermissions:P,getDocPreferences:b,setDocFieldPreferences:S}=re(),[N,h]=j.useState();ce(()=>{b().then(m=>{let c=m?.fields[i.name]?.collapsed;h(c?c.includes(t.id):!1)})},[i.name,t.id,b]);let x=ne(),[B,L]=j.useState(0),r=x&&B>0,A=[`${e}__row`,r?`${e}__row--has-errors`:`${e}__row--no-errors`].filter(Boolean).join(" "),F=I(({fullFieldsWithValues:m,newFormData:n})=>{if(n.id=t.id,n.blockType=t.blockType,O(n),O(t),ae(t,n)||setTimeout(()=>{f.update(()=>{let c=q(a);c&&M(c)&&(t=n,c.setFields(n))})},0),x){let c=0;for(let d of Object.values(m))d?.valid===!1&&c++;L(c)}},[f,a,x,t]),T=I(m=>{b().then(n=>{let d=n?.fields[i.name]?.collapsed,v=d&&d?.length?d:[];m?v.includes(t.id)||v.push(t.id):v.includes(t.id)&&v.splice(v.indexOf(t.id),1),S(i.name,{collapsed:v,hello:"hi"})})},[b,i.name,S,t.id]),E=I(()=>{f.update(()=>{q(a)?.remove()})},[f,a]);return typeof N!="boolean"?null:R(j.Fragment,{children:[C(ee,{className:A,collapsibleStyle:r?"error":"default",header:s||R("div",{className:`${e}__block-header`,children:[R("div",{children:[C(te,{className:`${e}__block-pill ${e}__block-pill-${t?.blockType}`,pillStyle:"white",children:typeof o?.labels?.singular=="string"?Y(o?.labels.singular,g):o.slug}),C(se,{path:"blockName",readOnly:i?.admin?.readOnly||!1}),r&&C(oe,{count:B,i18n:g,withMessage:!0})]}),f.isEditable()&&C(Z,{buttonStyle:"icon-label",className:`${e}__removeButton`,disabled:i?.admin?.readOnly,icon:"x",onClick:m=>{m.preventDefault(),E()},round:!0,tooltip:"Remove Block"})]}),isCollapsed:N,onToggle:m=>{T(m),h(m)},children:C(le,{fields:u,forceRender:!0,parentIndexPath:"",parentPath:"",parentSchemaPath:"",permissions:$})},0),C(K,{onChange:F})]})};var y="lexical-block",Ye=l=>{let{formData:e,nodeKey:o}=l,i=he(),{id:u,collectionSlug:s,globalSlug:a}=U(),{fieldProps:{featureClientSchemaMap:_,field:p,path:t,schemaPath:$}}=w(),g=ge(new AbortController),{docPermissions:f,getDocPreferences:P}=U(),{getFormState:b}=ke(),[S,N]=Se(!1),h=`${$}.lexical_internal_feature.blocks.lexical_blocks.${e.blockType}.fields`,x=`${$}.lexical_internal_feature.blocks.lexical_blocks.${e.blockType}`,r=_.blocks[x][0].blocks[0],{i18n:A}=ye();W(()=>{let n=new AbortController;return e&&(async()=>{let{state:d}=await b({id:u,collectionSlug:s,data:e,docPermissions:f,docPreferences:await P(),globalSlug:a,operation:"update",renderAllFields:!0,schemaPath:h,signal:n.signal});d&&(d.blockName={initialValue:"",passesCondition:!0,valid:!0,value:e.blockName},N(d))})(),()=>{D(n)}},[b,h,u,s,a,P,f]);let F=_e(async({formState:n})=>{D(g.current);let c=new AbortController;g.current=c;let{state:d}=await b({id:u,collectionSlug:s,docPermissions:f,docPreferences:await P(),formState:n,globalSlug:a,operation:"update",schemaPath:h,signal:c.signal});return d?(d.blockName={initialValue:"",passesCondition:!0,valid:!0,value:e.blockName},d):n},[b,u,s,f,P,a,h,e.blockName]);W(()=>()=>{D(g.current)},[]);let T=[`${y}__row`,`${y}__row--no-errors`].filter(Boolean).join(" "),E=r?.admin?.components?.Label,m=Ce(()=>r&&S!==!1?k(ue,{beforeSubmit:[F],fields:r.fields,initialState:S,onChange:[F],submitted:i,uuid:Pe(),children:k(H,{baseClass:y,clientBlock:r,field:p,formData:e,formSchema:r.fields,nodeKey:o,path:`${t}.lexical_internal_feature.blocks.${e.blockType}`,schemaPath:h})}):k(me,{className:T,collapsibleStyle:"default",header:r?.admin?.components?.Label?E:k("div",{className:`${y}__block-header`,children:de("div",{children:[k(fe,{className:`${y}__block-pill ${y}__block-pill-${e?.blockType}`,pillStyle:"white",children:r&&typeof r.labels?.singular=="string"?ve(r.labels.singular,A):r?.slug}),k(pe,{path:"blockName",readOnly:p?.admin?.readOnly||!1})]})}),children:k(be,{height:"35vh"})},0),[r,S,F,i,p,o,t,h,T,A]);return k("div",{className:y+" "+y+"-"+e.blockType,children:m})};export{Ye as BlockComponent};
|
|
2
|
-
//# sourceMappingURL=component-YNHK5J3P.js.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../src/features/blocks/client/component/index.tsx", "../../../src/features/blocks/client/component/BlockContent.tsx", "../../../src/features/blocks/client/component/FormSavePlugin.tsx", "../../../src/features/blocks/client/component/removeEmptyArrayValues.ts"],
|
|
4
|
-
"sourcesContent": ["'use client'\n\nimport {\n Collapsible,\n Form,\n Pill,\n SectionTitle,\n ShimmerEffect,\n useDocumentInfo,\n useFormSubmitted,\n useServerFunctions,\n useTranslation,\n} from '@payloadcms/ui'\nimport { abortAndIgnore } from '@payloadcms/ui/shared'\nimport React, { useCallback, useEffect, useMemo, useRef, useState } from 'react'\n\nconst baseClass = 'lexical-block'\nimport { getTranslation } from '@payloadcms/translations'\nimport { type BlocksFieldClient, type FormState } from 'payload'\nimport { v4 as uuid } from 'uuid'\n\nimport type { BlockFields } from '../../server/nodes/BlocksNode.js'\n\nimport { useEditorConfigContext } from '../../../../lexical/config/client/EditorConfigProvider.js'\nimport { BlockContent } from './BlockContent.js'\nimport './index.scss'\n\ntype Props = {\n readonly children?: React.ReactNode\n readonly formData: BlockFields\n readonly nodeKey: string\n}\n\nexport const BlockComponent: React.FC<Props> = (props) => {\n const { formData, nodeKey } = props\n const submitted = useFormSubmitted()\n const { id, collectionSlug, globalSlug } = useDocumentInfo()\n const {\n fieldProps: { featureClientSchemaMap, field: parentLexicalRichTextField, path, schemaPath },\n } = useEditorConfigContext()\n const onChangeAbortControllerRef = useRef(new AbortController())\n const { docPermissions, getDocPreferences } = useDocumentInfo()\n\n const { getFormState } = useServerFunctions()\n\n const [initialState, setInitialState] = useState<false | FormState | undefined>(false)\n\n const schemaFieldsPath = `${schemaPath}.lexical_internal_feature.blocks.lexical_blocks.${formData.blockType}.fields`\n\n const componentMapRenderedBlockPath = `${schemaPath}.lexical_internal_feature.blocks.lexical_blocks.${formData.blockType}`\n\n const clientSchemaMap = featureClientSchemaMap['blocks']\n\n const blocksField: BlocksFieldClient = clientSchemaMap[\n componentMapRenderedBlockPath\n ][0] as BlocksFieldClient\n\n const clientBlock = blocksField.blocks[0]\n\n const { i18n } = useTranslation()\n\n // Field Schema\n useEffect(() => {\n const abortController = new AbortController()\n\n const awaitInitialState = async () => {\n const { state } = await getFormState({\n id,\n collectionSlug,\n data: formData,\n docPermissions,\n docPreferences: await getDocPreferences(),\n globalSlug,\n operation: 'update',\n renderAllFields: true,\n schemaPath: schemaFieldsPath,\n signal: abortController.signal,\n })\n\n if (state) {\n state.blockName = {\n initialValue: '',\n passesCondition: true,\n valid: true,\n value: formData.blockName,\n }\n\n setInitialState(state)\n }\n }\n\n if (formData) {\n void awaitInitialState()\n }\n\n return () => {\n abortAndIgnore(abortController)\n }\n }, [\n getFormState,\n schemaFieldsPath,\n id,\n collectionSlug,\n globalSlug,\n getDocPreferences,\n docPermissions,\n // DO NOT ADD FORMDATA HERE! Adding formData will kick you out of sub block editors while writing.\n ])\n\n const onChange = useCallback(\n async ({ formState: prevFormState }) => {\n abortAndIgnore(onChangeAbortControllerRef.current)\n\n const controller = new AbortController()\n onChangeAbortControllerRef.current = controller\n\n const { state: newFormState } = await getFormState({\n id,\n collectionSlug,\n docPermissions,\n docPreferences: await getDocPreferences(),\n formState: prevFormState,\n globalSlug,\n operation: 'update',\n schemaPath: schemaFieldsPath,\n signal: controller.signal,\n })\n\n if (!newFormState) {\n return prevFormState\n }\n\n newFormState.blockName = {\n initialValue: '',\n passesCondition: true,\n valid: true,\n value: formData.blockName,\n }\n\n return newFormState\n },\n\n [\n getFormState,\n id,\n collectionSlug,\n docPermissions,\n getDocPreferences,\n globalSlug,\n schemaFieldsPath,\n formData.blockName,\n ],\n )\n\n useEffect(() => {\n return () => {\n abortAndIgnore(onChangeAbortControllerRef.current)\n }\n }, [])\n\n const classNames = [`${baseClass}__row`, `${baseClass}__row--no-errors`].filter(Boolean).join(' ')\n\n const Label = clientBlock?.admin?.components?.Label\n\n // Memoized Form JSX\n const formContent = useMemo(() => {\n return clientBlock && initialState !== false ? (\n <Form\n beforeSubmit={[onChange]}\n fields={clientBlock.fields}\n initialState={initialState}\n onChange={[onChange]}\n submitted={submitted}\n uuid={uuid()}\n >\n <BlockContent\n baseClass={baseClass}\n clientBlock={clientBlock}\n field={parentLexicalRichTextField}\n formData={formData}\n formSchema={clientBlock.fields}\n nodeKey={nodeKey}\n path={`${path}.lexical_internal_feature.blocks.${formData.blockType}`}\n schemaPath={schemaFieldsPath}\n />\n </Form>\n ) : (\n <Collapsible\n className={classNames}\n collapsibleStyle=\"default\"\n header={\n clientBlock?.admin?.components?.Label ? (\n Label\n ) : (\n <div className={`${baseClass}__block-header`}>\n <div>\n <Pill\n className={`${baseClass}__block-pill ${baseClass}__block-pill-${formData?.blockType}`}\n pillStyle=\"white\"\n >\n {clientBlock && typeof clientBlock.labels?.singular === 'string'\n ? getTranslation(clientBlock.labels.singular, i18n)\n : clientBlock?.slug}\n </Pill>\n <SectionTitle\n path=\"blockName\"\n readOnly={parentLexicalRichTextField?.admin?.readOnly || false}\n />\n </div>\n </div>\n )\n }\n key={0}\n >\n <ShimmerEffect height=\"35vh\" />\n </Collapsible>\n )\n }, [\n clientBlock,\n initialState,\n onChange,\n submitted,\n parentLexicalRichTextField,\n nodeKey,\n path,\n schemaFieldsPath,\n classNames,\n i18n,\n // DO NOT ADD FORMDATA HERE! Adding formData will kick you out of sub block editors while writing.\n ])\n\n return <div className={baseClass + ' ' + baseClass + '-' + formData.blockType}>{formContent}</div>\n}\n", "'use client'\nimport type { ClientBlock, ClientField, CollapsedPreferences, FormState } from 'payload'\n\nimport { useLexicalComposerContext } from '@lexical/react/LexicalComposerContext.js'\nimport { getTranslation } from '@payloadcms/translations'\nimport {\n Button,\n Collapsible,\n ErrorPill,\n Pill,\n RenderFields,\n SectionTitle,\n useDocumentInfo,\n useFormSubmitted,\n useTranslation,\n} from '@payloadcms/ui'\nimport { dequal } from 'dequal/lite'\nimport { $getNodeByKey } from 'lexical'\nimport React, { useCallback, useEffect } from 'react'\n\nimport type { LexicalRichTextFieldProps } from '../../../../types.js'\nimport type { BlockFields } from '../../server/nodes/BlocksNode.js'\n\nimport { useEditorConfigContext } from '../../../../lexical/config/client/EditorConfigProvider.js'\nimport { $isBlockNode } from '../nodes/BlocksNode.js'\nimport { FormSavePlugin } from './FormSavePlugin.js'\n\ntype Props = {\n baseClass: string\n clientBlock: ClientBlock\n field: LexicalRichTextFieldProps['field']\n formData: BlockFields\n formSchema: ClientField[]\n Label?: React.ReactNode\n nodeKey: string\n path: string\n schemaPath: string\n}\n\n// Recursively remove all undefined values from even being present in formData, as they will\n// cause isDeepEqual to return false if, for example, formData has a key that fields.data\n// does not have, even if it's undefined.\n// Currently, this happens if a block has another sub-blocks field. Inside formData, that sub-blocks field has an undefined blockName property.\n// Inside of fields.data however, that sub-blocks blockName property does not exist at all.\nfunction removeUndefinedAndNullAndEmptyArraysRecursively(obj: object) {\n for (const key in obj) {\n const value = obj[key]\n if (Array.isArray(value) && !value?.length) {\n delete obj[key]\n } else if (value && typeof value === 'object') {\n removeUndefinedAndNullAndEmptyArraysRecursively(value)\n } else if (value === undefined || value === null) {\n delete obj[key]\n }\n }\n}\n\n/**\n * The actual content of the Block. This should be INSIDE a Form component,\n * scoped to the block. All format operations in here are thus scoped to the block's form, and\n * not the whole document.\n */\nexport const BlockContent: React.FC<Props> = (props) => {\n const { baseClass, clientBlock, field, formSchema, Label, nodeKey, path, schemaPath } = props\n let { formData } = props\n const {\n fieldProps: { permissions },\n } = useEditorConfigContext()\n\n const { i18n } = useTranslation()\n const [editor] = useLexicalComposerContext()\n // Used for saving collapsed to preferences (and gettin' it from there again)\n // Remember, these preferences are scoped to the whole document, not just this form. This\n // is important to consider for the data path used in setDocFieldPreferences\n const { docPermissions, getDocPreferences, setDocFieldPreferences } = useDocumentInfo()\n\n const [isCollapsed, setIsCollapsed] = React.useState<boolean>()\n\n useEffect(() => {\n void getDocPreferences().then((currentDocPreferences) => {\n const currentFieldPreferences = currentDocPreferences?.fields[field.name]\n const collapsedArray = currentFieldPreferences?.collapsed\n setIsCollapsed(collapsedArray ? collapsedArray.includes(formData.id) : false)\n })\n }, [field.name, formData.id, getDocPreferences])\n\n const hasSubmitted = useFormSubmitted()\n\n const [errorCount, setErrorCount] = React.useState(0)\n\n const fieldHasErrors = hasSubmitted && errorCount > 0\n\n const classNames = [\n `${baseClass}__row`,\n fieldHasErrors ? `${baseClass}__row--has-errors` : `${baseClass}__row--no-errors`,\n ]\n .filter(Boolean)\n .join(' ')\n\n const onFormChange = useCallback(\n ({\n fullFieldsWithValues,\n newFormData,\n }: {\n fullFieldsWithValues: FormState\n newFormData: BlockFields\n }) => {\n newFormData.id = formData.id\n newFormData.blockType = formData.blockType\n\n removeUndefinedAndNullAndEmptyArraysRecursively(newFormData)\n removeUndefinedAndNullAndEmptyArraysRecursively(formData)\n\n // Only update if the data has actually changed. Otherwise, we may be triggering an unnecessary value change,\n // which would trigger the \"Leave without saving\" dialog unnecessarily\n if (!dequal(formData, newFormData)) {\n // Running this in the next tick in the meantime fixes this issue: https://github.com/payloadcms/payload/issues/4108\n // I don't know why. When this is called immediately, it might focus out of a nested lexical editor field if an update is made there.\n // My hypothesis is that the nested editor might not have fully finished its update cycle yet. By updating in the next tick, we\n // ensure that the nested editor has finished its update cycle before we update the block node.\n setTimeout(() => {\n editor.update(() => {\n const node = $getNodeByKey(nodeKey)\n if (node && $isBlockNode(node)) {\n formData = newFormData\n node.setFields(newFormData)\n }\n })\n }, 0)\n }\n\n // update error count\n if (hasSubmitted) {\n let rowErrorCount = 0\n for (const formField of Object.values(fullFieldsWithValues)) {\n if (formField?.valid === false) {\n rowErrorCount++\n }\n }\n setErrorCount(rowErrorCount)\n }\n },\n [editor, nodeKey, hasSubmitted, formData],\n )\n\n const onCollapsedChange = useCallback(\n (changedCollapsed: boolean) => {\n void getDocPreferences().then((currentDocPreferences) => {\n const currentFieldPreferences = currentDocPreferences?.fields[field.name]\n\n const collapsedArray = currentFieldPreferences?.collapsed\n\n const newCollapsed: CollapsedPreferences =\n collapsedArray && collapsedArray?.length ? collapsedArray : []\n\n if (changedCollapsed) {\n if (!newCollapsed.includes(formData.id)) {\n newCollapsed.push(formData.id)\n }\n } else {\n if (newCollapsed.includes(formData.id)) {\n newCollapsed.splice(newCollapsed.indexOf(formData.id), 1)\n }\n }\n\n setDocFieldPreferences(field.name, {\n collapsed: newCollapsed,\n hello: 'hi',\n })\n })\n },\n [getDocPreferences, field.name, setDocFieldPreferences, formData.id],\n )\n\n const removeBlock = useCallback(() => {\n editor.update(() => {\n $getNodeByKey(nodeKey)?.remove()\n })\n }, [editor, nodeKey])\n\n if (typeof isCollapsed !== 'boolean') {\n return null\n }\n\n return (\n <React.Fragment>\n <Collapsible\n className={classNames}\n collapsibleStyle={fieldHasErrors ? 'error' : 'default'}\n header={\n Label || (\n <div className={`${baseClass}__block-header`}>\n <div>\n <Pill\n className={`${baseClass}__block-pill ${baseClass}__block-pill-${formData?.blockType}`}\n pillStyle=\"white\"\n >\n {typeof clientBlock?.labels?.singular === 'string'\n ? getTranslation(clientBlock?.labels.singular, i18n)\n : clientBlock.slug}\n </Pill>\n <SectionTitle path=\"blockName\" readOnly={field?.admin?.readOnly || false} />\n {fieldHasErrors && <ErrorPill count={errorCount} i18n={i18n} withMessage />}\n </div>\n {editor.isEditable() && (\n <Button\n buttonStyle=\"icon-label\"\n className={`${baseClass}__removeButton`}\n disabled={field?.admin?.readOnly}\n icon=\"x\"\n onClick={(e) => {\n e.preventDefault()\n removeBlock()\n }}\n round\n tooltip=\"Remove Block\"\n />\n )}\n </div>\n )\n }\n isCollapsed={isCollapsed}\n key={0}\n onToggle={(incomingCollapsedState) => {\n onCollapsedChange(incomingCollapsedState)\n setIsCollapsed(incomingCollapsedState)\n }}\n >\n <RenderFields\n fields={formSchema}\n forceRender={true}\n parentIndexPath=\"\"\n parentPath={''}\n parentSchemaPath=\"\"\n permissions={permissions} // TODO: Pass field permissions\n />\n </Collapsible>\n\n <FormSavePlugin onChange={onFormChange} />\n </React.Fragment>\n )\n}\n", "'use client'\nimport type { Data, FormState } from 'payload'\nimport type React from 'react'\n\nimport { useAllFormFields } from '@payloadcms/ui'\nimport { reduceFieldsToValues } from 'payload/shared'\nimport { useEffect } from 'react'\n\nimport { removeEmptyArrayValues } from './removeEmptyArrayValues.js'\n\ntype Props = {\n onChange?: ({\n fullFieldsWithValues,\n newFormData,\n }: {\n fullFieldsWithValues: FormState\n newFormData: Data\n }) => void\n}\n\nexport const FormSavePlugin: React.FC<Props> = (props) => {\n const { onChange } = props\n\n const [_fields] = useAllFormFields()\n\n const fields = removeEmptyArrayValues({ fields: _fields })\n\n // Pass in fields, and indicate if you'd like to \"unflatten\" field data.\n // The result below will reflect the data stored in the form at the given time\n const newFormData = reduceFieldsToValues(fields, true)\n\n useEffect(() => {\n if (onChange) {\n onChange({ fullFieldsWithValues: fields, newFormData })\n }\n }, [newFormData, onChange, fields])\n\n return null\n}\n", "'use client'\nimport type { FormState } from 'payload'\n\n/**\n * By default, if an array field is empty, it will be included in the form state with a value of 0.\n * We do not need this behavior here, By setting `disableFormData` to true, we can prevent the field from being included in the form state\n * like that.\n * @param fields form state\n */\nexport function removeEmptyArrayValues({ fields }: { fields: FormState }): FormState {\n for (const key in fields) {\n const field = fields[key]\n if (Array.isArray(field.rows) && 'value' in field) {\n field.disableFormData = true\n }\n }\n return fields\n}\n"],
|
|
5
|
-
"mappings": "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",
|
|
6
|
-
"names": ["Collapsible", "Form", "Pill", "SectionTitle", "ShimmerEffect", "useDocumentInfo", "useFormSubmitted", "useServerFunctions", "useTranslation", "abortAndIgnore", "useCallback", "useEffect", "useMemo", "useRef", "useState", "getTranslation", "v4", "uuid", "useLexicalComposerContext", "getTranslation", "Button", "Collapsible", "ErrorPill", "Pill", "RenderFields", "SectionTitle", "useDocumentInfo", "useFormSubmitted", "useTranslation", "dequal", "$getNodeByKey", "React", "useCallback", "useEffect", "c", "_c", "useAllFormFields", "reduceFieldsToValues", "useEffect", "removeEmptyArrayValues", "fields", "key", "field", "Array", "isArray", "rows", "disableFormData", "FormSavePlugin", "props", "$", "_c", "onChange", "_fields", "useAllFormFields", "t0", "fields", "removeEmptyArrayValues", "reduceFieldsToValues", "newFormData", "t1", "t2", "fullFieldsWithValues", "useEffect", "removeUndefinedAndNullAndEmptyArraysRecursively", "obj", "key", "value", "Array", "isArray", "length", "BlockContent", "props", "baseClass", "clientBlock", "field", "formSchema", "Label", "nodeKey", "path", "schemaPath", "formData", "fieldProps", "permissions", "useEditorConfigContext", "i18n", "useTranslation", "editor", "useLexicalComposerContext", "docPermissions", "getDocPreferences", "setDocFieldPreferences", "useDocumentInfo", "isCollapsed", "setIsCollapsed", "React", "useState", "useEffect", "then", "currentDocPreferences", "collapsedArray", "fields", "name", "collapsed", "includes", "id", "hasSubmitted", "useFormSubmitted", "errorCount", "setErrorCount", "fieldHasErrors", "classNames", "filter", "Boolean", "join", "onFormChange", "useCallback", "fullFieldsWithValues", "newFormData", "blockType", "dequal", "setTimeout", "update", "node", "$getNodeByKey", "$isBlockNode", "setFields", "rowErrorCount", "formField", "Object", "values", "valid", "onCollapsedChange", "changedCollapsed", "newCollapsed", "push", "splice", "indexOf", "hello", "removeBlock", "remove", "_jsxs", "Fragment", "_jsx", "Collapsible", "className", "collapsibleStyle", "header", "Pill", "pillStyle", "labels", "singular", "getTranslation", "slug", "SectionTitle", "readOnly", "admin", "ErrorPill", "count", "withMessage", "isEditable", "Button", "buttonStyle", "disabled", "icon", "onClick", "e", "preventDefault", "round", "tooltip", "onToggle", "incomingCollapsedState", "RenderFields", "forceRender", "parentIndexPath", "parentPath", "parentSchemaPath", "FormSavePlugin", "onChange", "baseClass", "BlockComponent", "props", "formData", "nodeKey", "submitted", "useFormSubmitted", "id", "collectionSlug", "globalSlug", "useDocumentInfo", "fieldProps", "featureClientSchemaMap", "field", "parentLexicalRichTextField", "path", "schemaPath", "useEditorConfigContext", "onChangeAbortControllerRef", "useRef", "AbortController", "docPermissions", "getDocPreferences", "getFormState", "useServerFunctions", "initialState", "setInitialState", "useState", "schemaFieldsPath", "blockType", "componentMapRenderedBlockPath", "clientBlock", "blocks", "i18n", "useTranslation", "useEffect", "abortController", "state", "data", "docPreferences", "operation", "renderAllFields", "signal", "blockName", "initialValue", "passesCondition", "valid", "value", "abortAndIgnore", "onChange", "useCallback", "formState", "prevFormState", "current", "controller", "newFormState", "classNames", "filter", "Boolean", "join", "Label", "admin", "components", "formContent", "useMemo", "_jsx", "Form", "beforeSubmit", "fields", "uuid", "BlockContent", "formSchema", "Collapsible", "className", "collapsibleStyle", "header", "_jsxs", "Pill", "pillStyle", "labels", "singular", "getTranslation", "slug", "SectionTitle", "readOnly", "ShimmerEffect", "height"]
|
|
7
|
-
}
|
|
File without changes
|