@payloadcms/richtext-slate 3.0.0 → 3.0.1-canary.9494866

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.
@@ -1,4 +1,5 @@
1
- import type { Field, PayloadRequest, PopulateType } from 'payload';
1
+ import type { Field, PayloadRequest, PopulateType, RichTextAdapter, RichTextField } from 'payload';
2
+ import type { AdapterArguments } from '../types.js';
2
3
  type NestedRichTextFieldsArgs = {
3
4
  currentDepth?: number;
4
5
  data: unknown;
@@ -12,5 +13,20 @@ type NestedRichTextFieldsArgs = {
12
13
  showHiddenFields: boolean;
13
14
  };
14
15
  export declare const recurseNestedFields: ({ currentDepth, data, depth, draft, fields, overrideAccess, populateArg, populationPromises, req, showHiddenFields, }: NestedRichTextFieldsArgs) => void;
16
+ export type Args = Parameters<RichTextAdapter<any[], AdapterArguments>['graphQLPopulationPromises']>[0];
17
+ type RecurseRichTextArgs = {
18
+ children: unknown[];
19
+ currentDepth: number;
20
+ depth: number;
21
+ draft: boolean;
22
+ field: RichTextField<any[], any, any>;
23
+ overrideAccess: boolean;
24
+ populateArg?: PopulateType;
25
+ populationPromises: Promise<void>[];
26
+ req: PayloadRequest;
27
+ showHiddenFields: boolean;
28
+ };
29
+ export declare const recurseRichText: ({ children, currentDepth, depth, draft, field, overrideAccess, populateArg, populationPromises, req, showHiddenFields, }: RecurseRichTextArgs) => void;
30
+ export declare const richTextRelationshipPromise: ({ currentDepth, depth, draft, field, overrideAccess, populateArg, populationPromises, req, showHiddenFields, siblingDoc, }: Args) => void;
15
31
  export {};
16
32
  //# sourceMappingURL=recurseNestedFields.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"recurseNestedFields.d.ts","sourceRoot":"","sources":["../../src/data/recurseNestedFields.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AAOlE,KAAK,wBAAwB,GAAG;IAC9B,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,IAAI,EAAE,OAAO,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,OAAO,CAAA;IACd,MAAM,EAAE,KAAK,EAAE,CAAA;IACf,cAAc,EAAE,OAAO,CAAA;IACvB,WAAW,CAAC,EAAE,YAAY,CAAA;IAC1B,kBAAkB,EAAE,OAAO,CAAC,IAAI,CAAC,EAAE,CAAA;IACnC,GAAG,EAAE,cAAc,CAAA;IACnB,gBAAgB,EAAE,OAAO,CAAA;CAC1B,CAAA;AAED,eAAO,MAAM,mBAAmB,0HAW7B,wBAAwB,KAAG,IAqM7B,CAAA"}
1
+ {"version":3,"file":"recurseNestedFields.d.ts","sourceRoot":"","sources":["../../src/data/recurseNestedFields.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,cAAc,EAAE,YAAY,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAIlG,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;AAInD,KAAK,wBAAwB,GAAG;IAC9B,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,IAAI,EAAE,OAAO,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,OAAO,CAAA;IACd,MAAM,EAAE,KAAK,EAAE,CAAA;IACf,cAAc,EAAE,OAAO,CAAA;IACvB,WAAW,CAAC,EAAE,YAAY,CAAA;IAC1B,kBAAkB,EAAE,OAAO,CAAC,IAAI,CAAC,EAAE,CAAA;IACnC,GAAG,EAAE,cAAc,CAAA;IACnB,gBAAgB,EAAE,OAAO,CAAA;CAC1B,CAAA;AAED,eAAO,MAAM,mBAAmB,0HAW7B,wBAAwB,KAAG,IAqM7B,CAAA;AAED,MAAM,MAAM,IAAI,GAAG,UAAU,CAC3B,eAAe,CAAC,GAAG,EAAE,EAAE,gBAAgB,CAAC,CAAC,2BAA2B,CAAC,CACtE,CAAC,CAAC,CAAC,CAAA;AAEJ,KAAK,mBAAmB,GAAG;IACzB,QAAQ,EAAE,OAAO,EAAE,CAAA;IACnB,YAAY,EAAE,MAAM,CAAA;IACpB,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,OAAO,CAAA;IACd,KAAK,EAAE,aAAa,CAAC,GAAG,EAAE,EAAE,GAAG,EAAE,GAAG,CAAC,CAAA;IACrC,cAAc,EAAE,OAAO,CAAA;IACvB,WAAW,CAAC,EAAE,YAAY,CAAA;IAC1B,kBAAkB,EAAE,OAAO,CAAC,IAAI,CAAC,EAAE,CAAA;IACnC,GAAG,EAAE,cAAc,CAAA;IACnB,gBAAgB,EAAE,OAAO,CAAA;CAC1B,CAAA;AAED,eAAO,MAAM,eAAe,6HAWzB,mBAAmB,KAAG,IA6GxB,CAAA;AAED,eAAO,MAAM,2BAA2B,+HAWrC,IAAI,SAaN,CAAA"}
@@ -1,6 +1,5 @@
1
1
  import { fieldAffectsData, fieldHasSubFields, fieldIsArrayType, tabHasName } from 'payload/shared';
2
2
  import { populate } from './populate.js';
3
- import { recurseRichText } from './richTextRelationshipPromise.js';
4
3
  export const recurseNestedFields = ({ currentDepth = 0, data, depth, draft, fields, overrideAccess = false, populateArg, populationPromises, req, showHiddenFields })=>{
5
4
  fields.forEach((field)=>{
6
5
  if (field.type === 'relationship' || field.type === 'upload') {
@@ -183,5 +182,110 @@ export const recurseNestedFields = ({ currentDepth = 0, data, depth, draft, fiel
183
182
  }
184
183
  });
185
184
  };
185
+ export const recurseRichText = ({ children, currentDepth = 0, depth, draft, field, overrideAccess = false, populateArg, populationPromises, req, showHiddenFields })=>{
186
+ if (depth <= 0 || currentDepth > depth) {
187
+ return;
188
+ }
189
+ if (Array.isArray(children)) {
190
+ children.forEach((element)=>{
191
+ if ((element.type === 'relationship' || element.type === 'upload') && element?.value?.id) {
192
+ const collection = req.payload.collections[element?.relationTo];
193
+ if (collection) {
194
+ populationPromises.push(populate({
195
+ id: element.value.id,
196
+ collection,
197
+ currentDepth,
198
+ data: element,
199
+ depth,
200
+ draft,
201
+ field,
202
+ key: 'value',
203
+ overrideAccess,
204
+ req,
205
+ select: req.payloadAPI !== 'GraphQL' ? populateArg?.[collection.config.slug] ?? collection.config.defaultPopulate : undefined,
206
+ showHiddenFields
207
+ }));
208
+ }
209
+ if (element.type === 'upload' && Array.isArray(field.admin?.upload?.collections?.[element?.relationTo]?.fields)) {
210
+ recurseNestedFields({
211
+ currentDepth,
212
+ data: element.fields || {},
213
+ depth,
214
+ draft,
215
+ fields: field.admin.upload.collections[element.relationTo].fields,
216
+ overrideAccess,
217
+ populateArg,
218
+ populationPromises,
219
+ req,
220
+ showHiddenFields
221
+ });
222
+ }
223
+ }
224
+ if (element.type === 'link') {
225
+ if (element?.doc?.value && element?.doc?.relationTo) {
226
+ const collection = req.payload.collections[element?.doc?.relationTo];
227
+ if (collection) {
228
+ populationPromises.push(populate({
229
+ id: element.doc.value,
230
+ collection,
231
+ currentDepth,
232
+ data: element.doc,
233
+ depth,
234
+ draft,
235
+ field,
236
+ key: 'value',
237
+ overrideAccess,
238
+ req,
239
+ select: req.payloadAPI !== 'GraphQL' ? populateArg?.[collection.config.slug] ?? collection.config.defaultPopulate : undefined,
240
+ showHiddenFields
241
+ }));
242
+ }
243
+ }
244
+ if (Array.isArray(field.admin?.link?.fields)) {
245
+ recurseNestedFields({
246
+ currentDepth,
247
+ data: element.fields || {},
248
+ depth,
249
+ draft,
250
+ fields: field.admin?.link?.fields,
251
+ overrideAccess,
252
+ populateArg,
253
+ populationPromises,
254
+ req,
255
+ showHiddenFields
256
+ });
257
+ }
258
+ }
259
+ if (element?.children) {
260
+ recurseRichText({
261
+ children: element.children,
262
+ currentDepth,
263
+ depth,
264
+ draft,
265
+ field,
266
+ overrideAccess,
267
+ populateArg,
268
+ populationPromises,
269
+ req,
270
+ showHiddenFields
271
+ });
272
+ }
273
+ });
274
+ }
275
+ };
276
+ export const richTextRelationshipPromise = ({ currentDepth, depth, draft, field, overrideAccess, populateArg, populationPromises, req, showHiddenFields, siblingDoc })=>{
277
+ recurseRichText({
278
+ children: siblingDoc[field.name],
279
+ currentDepth,
280
+ depth,
281
+ draft,
282
+ field,
283
+ overrideAccess,
284
+ populateArg,
285
+ populationPromises,
286
+ req,
287
+ showHiddenFields
288
+ });
289
+ };
186
290
 
187
291
  //# sourceMappingURL=recurseNestedFields.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/data/recurseNestedFields.ts"],"sourcesContent":["import type { Field, PayloadRequest, PopulateType } from 'payload'\n\nimport { fieldAffectsData, fieldHasSubFields, fieldIsArrayType, tabHasName } from 'payload/shared'\n\nimport { populate } from './populate.js'\nimport { recurseRichText } from './richTextRelationshipPromise.js'\n\ntype NestedRichTextFieldsArgs = {\n currentDepth?: number\n data: unknown\n depth: number\n draft: boolean\n fields: Field[]\n overrideAccess: boolean\n populateArg?: PopulateType\n populationPromises: Promise<void>[]\n req: PayloadRequest\n showHiddenFields: boolean\n}\n\nexport const recurseNestedFields = ({\n currentDepth = 0,\n data,\n depth,\n draft,\n fields,\n overrideAccess = false,\n populateArg,\n populationPromises,\n req,\n showHiddenFields,\n}: NestedRichTextFieldsArgs): void => {\n fields.forEach((field) => {\n if (field.type === 'relationship' || field.type === 'upload') {\n if (field.type === 'relationship') {\n if (field.hasMany && Array.isArray(data[field.name])) {\n if (Array.isArray(field.relationTo)) {\n data[field.name].forEach(({ relationTo, value }, i) => {\n const collection = req.payload.collections[relationTo]\n if (collection) {\n populationPromises.push(\n populate({\n id: value,\n collection,\n currentDepth,\n data: data[field.name],\n depth,\n draft,\n field,\n key: i,\n overrideAccess,\n req,\n select:\n populateArg?.[collection.config.slug] ?? collection.config.defaultPopulate,\n showHiddenFields,\n }),\n )\n }\n })\n } else {\n data[field.name].forEach((id, i) => {\n const collection = req.payload.collections[field.relationTo as string]\n if (collection) {\n populationPromises.push(\n populate({\n id,\n collection,\n currentDepth,\n data: data[field.name],\n depth,\n draft,\n field,\n key: i,\n overrideAccess,\n req,\n select:\n populateArg?.[collection.config.slug] ?? collection.config.defaultPopulate,\n showHiddenFields,\n }),\n )\n }\n })\n }\n } else if (\n Array.isArray(field.relationTo) &&\n data[field.name]?.value &&\n data[field.name]?.relationTo\n ) {\n if (!('hasMany' in field) || !field.hasMany) {\n const collection = req.payload.collections[data[field.name].relationTo]\n populationPromises.push(\n populate({\n id: data[field.name].value,\n collection,\n currentDepth,\n data: data[field.name],\n depth,\n draft,\n field,\n key: 'value',\n overrideAccess,\n req,\n select: populateArg?.[collection.config.slug] ?? collection.config.defaultPopulate,\n showHiddenFields,\n }),\n )\n }\n }\n }\n if (typeof data[field.name] !== 'undefined' && typeof field.relationTo === 'string') {\n const collection = req.payload.collections[field.relationTo]\n populationPromises.push(\n populate({\n id: data[field.name],\n collection,\n currentDepth,\n data,\n depth,\n draft,\n field,\n key: field.name,\n overrideAccess,\n req,\n select: populateArg?.[collection.config.slug] ?? collection.config.defaultPopulate,\n showHiddenFields,\n }),\n )\n }\n } else if (fieldHasSubFields(field) && !fieldIsArrayType(field)) {\n if (fieldAffectsData(field) && typeof data[field.name] === 'object') {\n recurseNestedFields({\n currentDepth,\n data: data[field.name],\n depth,\n draft,\n fields: field.fields,\n overrideAccess,\n populateArg,\n populationPromises,\n req,\n showHiddenFields,\n })\n } else {\n recurseNestedFields({\n currentDepth,\n data,\n depth,\n draft,\n fields: field.fields,\n overrideAccess,\n populateArg,\n populationPromises,\n req,\n showHiddenFields,\n })\n }\n } else if (field.type === 'tabs') {\n field.tabs.forEach((tab) => {\n recurseNestedFields({\n currentDepth,\n data: tabHasName(tab) ? data[tab.name] : data,\n depth,\n draft,\n fields: tab.fields,\n overrideAccess,\n populateArg,\n populationPromises,\n req,\n showHiddenFields,\n })\n })\n } else if (Array.isArray(data[field.name])) {\n if (field.type === 'blocks') {\n data[field.name].forEach((row, i) => {\n const block = field.blocks.find(({ slug }) => slug === row?.blockType)\n if (block) {\n recurseNestedFields({\n currentDepth,\n data: data[field.name][i],\n depth,\n draft,\n fields: block.fields,\n overrideAccess,\n populateArg,\n populationPromises,\n req,\n showHiddenFields,\n })\n }\n })\n }\n\n if (field.type === 'array') {\n data[field.name].forEach((_, i) => {\n recurseNestedFields({\n currentDepth,\n data: data[field.name][i],\n depth,\n draft,\n fields: field.fields,\n overrideAccess,\n populateArg,\n populationPromises,\n req,\n showHiddenFields,\n })\n })\n }\n }\n\n if (field.type === 'richText' && Array.isArray(data[field.name])) {\n data[field.name].forEach((node) => {\n if (Array.isArray(node.children)) {\n recurseRichText({\n children: node.children,\n currentDepth,\n depth,\n draft,\n field,\n overrideAccess,\n populationPromises,\n req,\n showHiddenFields,\n })\n }\n })\n }\n })\n}\n"],"names":["fieldAffectsData","fieldHasSubFields","fieldIsArrayType","tabHasName","populate","recurseRichText","recurseNestedFields","currentDepth","data","depth","draft","fields","overrideAccess","populateArg","populationPromises","req","showHiddenFields","forEach","field","type","hasMany","Array","isArray","name","relationTo","value","i","collection","payload","collections","push","id","key","select","config","slug","defaultPopulate","tabs","tab","row","block","blocks","find","blockType","_","node","children"],"mappings":"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"}
1
+ {"version":3,"sources":["../../src/data/recurseNestedFields.ts"],"sourcesContent":["import type { Field, PayloadRequest, PopulateType, RichTextAdapter, RichTextField } from 'payload'\n\nimport { fieldAffectsData, fieldHasSubFields, fieldIsArrayType, tabHasName } from 'payload/shared'\n\nimport type { AdapterArguments } from '../types.js'\n\nimport { populate } from './populate.js'\n\ntype NestedRichTextFieldsArgs = {\n currentDepth?: number\n data: unknown\n depth: number\n draft: boolean\n fields: Field[]\n overrideAccess: boolean\n populateArg?: PopulateType\n populationPromises: Promise<void>[]\n req: PayloadRequest\n showHiddenFields: boolean\n}\n\nexport const recurseNestedFields = ({\n currentDepth = 0,\n data,\n depth,\n draft,\n fields,\n overrideAccess = false,\n populateArg,\n populationPromises,\n req,\n showHiddenFields,\n}: NestedRichTextFieldsArgs): void => {\n fields.forEach((field) => {\n if (field.type === 'relationship' || field.type === 'upload') {\n if (field.type === 'relationship') {\n if (field.hasMany && Array.isArray(data[field.name])) {\n if (Array.isArray(field.relationTo)) {\n data[field.name].forEach(({ relationTo, value }, i) => {\n const collection = req.payload.collections[relationTo]\n if (collection) {\n populationPromises.push(\n populate({\n id: value,\n collection,\n currentDepth,\n data: data[field.name],\n depth,\n draft,\n field,\n key: i,\n overrideAccess,\n req,\n select:\n populateArg?.[collection.config.slug] ?? collection.config.defaultPopulate,\n showHiddenFields,\n }),\n )\n }\n })\n } else {\n data[field.name].forEach((id, i) => {\n const collection = req.payload.collections[field.relationTo as string]\n if (collection) {\n populationPromises.push(\n populate({\n id,\n collection,\n currentDepth,\n data: data[field.name],\n depth,\n draft,\n field,\n key: i,\n overrideAccess,\n req,\n select:\n populateArg?.[collection.config.slug] ?? collection.config.defaultPopulate,\n showHiddenFields,\n }),\n )\n }\n })\n }\n } else if (\n Array.isArray(field.relationTo) &&\n data[field.name]?.value &&\n data[field.name]?.relationTo\n ) {\n if (!('hasMany' in field) || !field.hasMany) {\n const collection = req.payload.collections[data[field.name].relationTo]\n populationPromises.push(\n populate({\n id: data[field.name].value,\n collection,\n currentDepth,\n data: data[field.name],\n depth,\n draft,\n field,\n key: 'value',\n overrideAccess,\n req,\n select: populateArg?.[collection.config.slug] ?? collection.config.defaultPopulate,\n showHiddenFields,\n }),\n )\n }\n }\n }\n if (typeof data[field.name] !== 'undefined' && typeof field.relationTo === 'string') {\n const collection = req.payload.collections[field.relationTo]\n populationPromises.push(\n populate({\n id: data[field.name],\n collection,\n currentDepth,\n data,\n depth,\n draft,\n field,\n key: field.name,\n overrideAccess,\n req,\n select: populateArg?.[collection.config.slug] ?? collection.config.defaultPopulate,\n showHiddenFields,\n }),\n )\n }\n } else if (fieldHasSubFields(field) && !fieldIsArrayType(field)) {\n if (fieldAffectsData(field) && typeof data[field.name] === 'object') {\n recurseNestedFields({\n currentDepth,\n data: data[field.name],\n depth,\n draft,\n fields: field.fields,\n overrideAccess,\n populateArg,\n populationPromises,\n req,\n showHiddenFields,\n })\n } else {\n recurseNestedFields({\n currentDepth,\n data,\n depth,\n draft,\n fields: field.fields,\n overrideAccess,\n populateArg,\n populationPromises,\n req,\n showHiddenFields,\n })\n }\n } else if (field.type === 'tabs') {\n field.tabs.forEach((tab) => {\n recurseNestedFields({\n currentDepth,\n data: tabHasName(tab) ? data[tab.name] : data,\n depth,\n draft,\n fields: tab.fields,\n overrideAccess,\n populateArg,\n populationPromises,\n req,\n showHiddenFields,\n })\n })\n } else if (Array.isArray(data[field.name])) {\n if (field.type === 'blocks') {\n data[field.name].forEach((row, i) => {\n const block = field.blocks.find(({ slug }) => slug === row?.blockType)\n if (block) {\n recurseNestedFields({\n currentDepth,\n data: data[field.name][i],\n depth,\n draft,\n fields: block.fields,\n overrideAccess,\n populateArg,\n populationPromises,\n req,\n showHiddenFields,\n })\n }\n })\n }\n\n if (field.type === 'array') {\n data[field.name].forEach((_, i) => {\n recurseNestedFields({\n currentDepth,\n data: data[field.name][i],\n depth,\n draft,\n fields: field.fields,\n overrideAccess,\n populateArg,\n populationPromises,\n req,\n showHiddenFields,\n })\n })\n }\n }\n\n if (field.type === 'richText' && Array.isArray(data[field.name])) {\n data[field.name].forEach((node) => {\n if (Array.isArray(node.children)) {\n recurseRichText({\n children: node.children,\n currentDepth,\n depth,\n draft,\n field,\n overrideAccess,\n populationPromises,\n req,\n showHiddenFields,\n })\n }\n })\n }\n })\n}\n\nexport type Args = Parameters<\n RichTextAdapter<any[], AdapterArguments>['graphQLPopulationPromises']\n>[0]\n\ntype RecurseRichTextArgs = {\n children: unknown[]\n currentDepth: number\n depth: number\n draft: boolean\n field: RichTextField<any[], any, any>\n overrideAccess: boolean\n populateArg?: PopulateType\n populationPromises: Promise<void>[]\n req: PayloadRequest\n showHiddenFields: boolean\n}\n\nexport const recurseRichText = ({\n children,\n currentDepth = 0,\n depth,\n draft,\n field,\n overrideAccess = false,\n populateArg,\n populationPromises,\n req,\n showHiddenFields,\n}: RecurseRichTextArgs): void => {\n if (depth <= 0 || currentDepth > depth) {\n return\n }\n\n if (Array.isArray(children)) {\n ;(children as any[]).forEach((element) => {\n if ((element.type === 'relationship' || element.type === 'upload') && element?.value?.id) {\n const collection = req.payload.collections[element?.relationTo]\n\n if (collection) {\n populationPromises.push(\n populate({\n id: element.value.id,\n collection,\n currentDepth,\n data: element,\n depth,\n draft,\n field,\n key: 'value',\n overrideAccess,\n req,\n select:\n req.payloadAPI !== 'GraphQL'\n ? (populateArg?.[collection.config.slug] ?? collection.config.defaultPopulate)\n : undefined,\n showHiddenFields,\n }),\n )\n }\n if (\n element.type === 'upload' &&\n Array.isArray(field.admin?.upload?.collections?.[element?.relationTo]?.fields)\n ) {\n recurseNestedFields({\n currentDepth,\n data: element.fields || {},\n depth,\n draft,\n fields: field.admin.upload.collections[element.relationTo].fields,\n overrideAccess,\n populateArg,\n populationPromises,\n req,\n showHiddenFields,\n })\n }\n }\n\n if (element.type === 'link') {\n if (element?.doc?.value && element?.doc?.relationTo) {\n const collection = req.payload.collections[element?.doc?.relationTo]\n\n if (collection) {\n populationPromises.push(\n populate({\n id: element.doc.value,\n collection,\n currentDepth,\n data: element.doc,\n depth,\n draft,\n field,\n key: 'value',\n overrideAccess,\n req,\n select:\n req.payloadAPI !== 'GraphQL'\n ? (populateArg?.[collection.config.slug] ?? collection.config.defaultPopulate)\n : undefined,\n showHiddenFields,\n }),\n )\n }\n }\n\n if (Array.isArray(field.admin?.link?.fields)) {\n recurseNestedFields({\n currentDepth,\n data: element.fields || {},\n depth,\n draft,\n fields: field.admin?.link?.fields,\n overrideAccess,\n populateArg,\n populationPromises,\n req,\n showHiddenFields,\n })\n }\n }\n\n if (element?.children) {\n recurseRichText({\n children: element.children,\n currentDepth,\n depth,\n draft,\n field,\n overrideAccess,\n populateArg,\n populationPromises,\n req,\n showHiddenFields,\n })\n }\n })\n }\n}\n\nexport const richTextRelationshipPromise = ({\n currentDepth,\n depth,\n draft,\n field,\n overrideAccess,\n populateArg,\n populationPromises,\n req,\n showHiddenFields,\n siblingDoc,\n}: Args) => {\n recurseRichText({\n children: siblingDoc[field.name] as unknown[],\n currentDepth,\n depth,\n draft,\n field,\n overrideAccess,\n populateArg,\n populationPromises,\n req,\n showHiddenFields,\n })\n}\n"],"names":["fieldAffectsData","fieldHasSubFields","fieldIsArrayType","tabHasName","populate","recurseNestedFields","currentDepth","data","depth","draft","fields","overrideAccess","populateArg","populationPromises","req","showHiddenFields","forEach","field","type","hasMany","Array","isArray","name","relationTo","value","i","collection","payload","collections","push","id","key","select","config","slug","defaultPopulate","tabs","tab","row","block","blocks","find","blockType","_","node","children","recurseRichText","element","payloadAPI","undefined","admin","upload","doc","link","richTextRelationshipPromise","siblingDoc"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"rscEntry.d.ts","sourceRoot":"","sources":["../../src/field/rscEntry.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,oBAAoB,EAGpB,UAAU,EAEX,oBAAoB,EAAE,MAAM,SAAS,CAAA;AAItC,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,KAAK,EAAE,gBAAgB,EAA6C,MAAM,aAAa,CAAA;AAQ9F,eAAO,MAAM,kBAAkB,EAAE,KAAK,CAAC,EAAE,CACvC;IACE,IAAI,EAAE,gBAAgB,CAAA;CACvB,GAAG,oBAAoB,GACtB,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,GACxB,oBAAoB,CA8KvB,CAAA"}
1
+ {"version":3,"file":"rscEntry.d.ts","sourceRoot":"","sources":["../../src/field/rscEntry.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,oBAAoB,EAGpB,UAAU,EAEV,oBAAoB,EACrB,MAAM,SAAS,CAAA;AAIhB,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,KAAK,EAAE,gBAAgB,EAA6C,MAAM,aAAa,CAAA;AAQ9F,eAAO,MAAM,kBAAkB,EAAE,KAAK,CAAC,EAAE,CACvC;IACE,IAAI,EAAE,gBAAgB,CAAA;CACvB,GAAG,oBAAoB,GACtB,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,GACxB,oBAAoB,CA8KvB,CAAA"}
@@ -23,20 +23,20 @@ export const RscEntrySlateField = ({ args, clientField, forceRender, i18n, path,
23
23
  if (leafObject) {
24
24
  const LeafButton = leafObject.Button;
25
25
  const LeafComponent = leafObject.Leaf;
26
- componentMap.set(`leaf.button.${leafObject.name}`, /*#__PURE__*/ _jsx(RenderServerComponent, {
27
- clientProps: clientProps,
26
+ componentMap.set(`leaf.button.${leafObject.name}`, RenderServerComponent({
27
+ clientProps,
28
28
  Component: LeafButton,
29
29
  importMap: payload.importMap
30
30
  }));
31
- componentMap.set(`leaf.component.${leafObject.name}`, /*#__PURE__*/ _jsx(RenderServerComponent, {
32
- clientProps: clientProps,
31
+ componentMap.set(`leaf.component.${leafObject.name}`, RenderServerComponent({
32
+ clientProps,
33
33
  Component: LeafComponent,
34
34
  importMap: payload.importMap
35
35
  }));
36
36
  if (Array.isArray(leafObject.plugins)) {
37
37
  leafObject.plugins.forEach((Plugin, i)=>{
38
- componentMap.set(`leaf.plugin.${leafObject.name}.${i}`, /*#__PURE__*/ _jsx(RenderServerComponent, {
39
- clientProps: clientProps,
38
+ componentMap.set(`leaf.plugin.${leafObject.name}.${i}`, RenderServerComponent({
39
+ clientProps,
40
40
  Component: Plugin,
41
41
  importMap: payload.importMap
42
42
  }));
@@ -55,21 +55,21 @@ export const RscEntrySlateField = ({ args, clientField, forceRender, i18n, path,
55
55
  const ElementButton = element.Button;
56
56
  const ElementComponent = element.Element;
57
57
  if (ElementButton) {
58
- componentMap.set(`element.button.${element.name}`, /*#__PURE__*/ _jsx(RenderServerComponent, {
59
- clientProps: clientProps,
58
+ componentMap.set(`element.button.${element.name}`, RenderServerComponent({
59
+ clientProps,
60
60
  Component: ElementButton,
61
61
  importMap: payload.importMap
62
62
  }));
63
63
  }
64
- componentMap.set(`element.component.${element.name}`, /*#__PURE__*/ _jsx(RenderServerComponent, {
65
- clientProps: clientProps,
64
+ componentMap.set(`element.component.${element.name}`, RenderServerComponent({
65
+ clientProps,
66
66
  Component: ElementComponent,
67
67
  importMap: payload.importMap
68
68
  }));
69
69
  if (Array.isArray(element.plugins)) {
70
70
  element.plugins.forEach((Plugin, i)=>{
71
- componentMap.set(`element.plugin.${element.name}.${i}`, /*#__PURE__*/ _jsx(RenderServerComponent, {
72
- clientProps: clientProps,
71
+ componentMap.set(`element.plugin.${element.name}.${i}`, RenderServerComponent({
72
+ clientProps,
73
73
  Component: Plugin,
74
74
  importMap: payload.importMap
75
75
  }));
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/field/rscEntry.tsx"],"sourcesContent":["import type {\n ClientComponentProps,\n ClientField,\n Field,\n FieldPaths,\n RichTextFieldClient,\n ServerComponentProps } from 'payload'\n\nimport { RenderServerComponent } from '@payloadcms/ui/elements/RenderServerComponent'\nimport { createClientFields, deepCopyObjectSimple } from 'payload'\nimport React from 'react'\n\nimport type { AdapterArguments, RichTextCustomElement, RichTextCustomLeaf } from '../types.js'\n\n// eslint-disable-next-line payload/no-imports-from-exports-dir\nimport { RichTextField } from '../exports/client/index.js'\nimport { elements as elementTypes } from '../field/elements/index.js'\nimport { defaultLeaves as leafTypes } from '../field/leaves/index.js'\nimport { linkFieldsSchemaPath } from './elements/link/shared.js'\nimport { uploadFieldsSchemaPath } from './elements/upload/shared.js'\nexport const RscEntrySlateField: React.FC<\n {\n args: AdapterArguments\n } & ClientComponentProps &\n Pick<FieldPaths, 'path'> &\n ServerComponentProps\n> = ({\n args,\n clientField,\n forceRender,\n i18n,\n path,\n payload,\n readOnly,\n renderedBlocks,\n schemaPath,\n}) => {\n const componentMap: Map<string, ClientField[] | React.ReactNode> = new Map()\n\n const clientProps = {\n schemaPath,\n }\n\n ;(args?.admin?.leaves || Object.values(leafTypes)).forEach((leaf) => {\n let leafObject: RichTextCustomLeaf\n\n if (typeof leaf === 'object' && leaf !== null) {\n leafObject = leaf\n } else if (typeof leaf === 'string' && leafTypes[leaf]) {\n leafObject = leafTypes[leaf]\n }\n\n if (leafObject) {\n const LeafButton = leafObject.Button\n const LeafComponent = leafObject.Leaf\n\n componentMap.set(\n `leaf.button.${leafObject.name}`,\n <RenderServerComponent\n clientProps={clientProps}\n Component={LeafButton}\n importMap={payload.importMap}\n />,\n )\n\n componentMap.set(\n `leaf.component.${leafObject.name}`,\n <RenderServerComponent\n clientProps={clientProps}\n Component={LeafComponent}\n importMap={payload.importMap}\n />,\n )\n\n if (Array.isArray(leafObject.plugins)) {\n leafObject.plugins.forEach((Plugin, i) => {\n componentMap.set(\n `leaf.plugin.${leafObject.name}.${i}`,\n <RenderServerComponent\n clientProps={clientProps}\n Component={Plugin}\n importMap={payload.importMap}\n />,\n )\n })\n }\n }\n })\n ;(args?.admin?.elements || Object.values(elementTypes)).forEach((el) => {\n let element: RichTextCustomElement\n\n if (typeof el === 'object' && el !== null) {\n element = el\n } else if (typeof el === 'string' && elementTypes[el]) {\n element = elementTypes[el]\n }\n\n if (element) {\n const ElementButton = element.Button\n const ElementComponent = element.Element\n\n if (ElementButton) {\n componentMap.set(\n `element.button.${element.name}`,\n <RenderServerComponent\n clientProps={clientProps}\n Component={ElementButton}\n importMap={payload.importMap}\n />,\n )\n }\n componentMap.set(\n `element.component.${element.name}`,\n <RenderServerComponent\n clientProps={clientProps}\n Component={ElementComponent}\n importMap={payload.importMap}\n />,\n )\n\n if (Array.isArray(element.plugins)) {\n element.plugins.forEach((Plugin, i) => {\n componentMap.set(\n `element.plugin.${element.name}.${i}`,\n <RenderServerComponent\n clientProps={clientProps}\n Component={Plugin}\n importMap={payload.importMap}\n />,\n )\n })\n }\n\n switch (element.name) {\n case 'link': {\n let clientFields = deepCopyObjectSimple(\n args.admin?.link?.fields,\n ) as unknown as ClientField[]\n clientFields = createClientFields({\n clientFields,\n defaultIDType: payload.config.db.defaultIDType,\n fields: args.admin?.link?.fields as Field[],\n i18n,\n importMap: payload.importMap,\n })\n\n componentMap.set(linkFieldsSchemaPath, clientFields)\n\n break\n }\n\n case 'relationship':\n break\n\n case 'upload': {\n const uploadEnabledCollections = payload.config.collections.filter(\n ({ admin: { enableRichTextRelationship, hidden }, upload }) => {\n if (hidden === true) {\n return false\n }\n\n return enableRichTextRelationship && Boolean(upload) === true\n },\n )\n\n uploadEnabledCollections.forEach((collection) => {\n if (args?.admin?.upload?.collections[collection.slug]?.fields) {\n let clientFields = deepCopyObjectSimple(\n args?.admin?.upload?.collections[collection.slug]?.fields,\n ) as unknown as ClientField[]\n clientFields = createClientFields({\n clientFields,\n defaultIDType: payload.config.db.defaultIDType,\n fields: args?.admin?.upload?.collections[collection.slug]?.fields,\n i18n,\n importMap: payload.importMap,\n })\n\n componentMap.set(`${uploadFieldsSchemaPath}.${collection.slug}`, clientFields)\n }\n })\n\n break\n }\n }\n }\n })\n\n return (\n <RichTextField\n componentMap={Object.fromEntries(componentMap)}\n field={clientField as RichTextFieldClient}\n forceRender={forceRender}\n path={path}\n readOnly={readOnly}\n renderedBlocks={renderedBlocks}\n schemaPath={schemaPath}\n />\n )\n}\n"],"names":["RenderServerComponent","createClientFields","deepCopyObjectSimple","React","RichTextField","elements","elementTypes","defaultLeaves","leafTypes","linkFieldsSchemaPath","uploadFieldsSchemaPath","RscEntrySlateField","args","clientField","forceRender","i18n","path","payload","readOnly","renderedBlocks","schemaPath","componentMap","Map","clientProps","admin","leaves","Object","values","forEach","leaf","leafObject","LeafButton","Button","LeafComponent","Leaf","set","name","Component","importMap","Array","isArray","plugins","Plugin","i","el","element","ElementButton","ElementComponent","Element","clientFields","link","fields","defaultIDType","config","db","uploadEnabledCollections","collections","filter","enableRichTextRelationship","hidden","upload","Boolean","collection","slug","fromEntries","field"],"mappings":"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"}
1
+ {"version":3,"sources":["../../src/field/rscEntry.tsx"],"sourcesContent":["import type {\n ClientComponentProps,\n ClientField,\n Field,\n FieldPaths,\n RichTextFieldClient,\n ServerComponentProps,\n} from 'payload'\n\nimport { RenderServerComponent } from '@payloadcms/ui/elements/RenderServerComponent'\nimport { createClientFields, deepCopyObjectSimple } from 'payload'\nimport React from 'react'\n\nimport type { AdapterArguments, RichTextCustomElement, RichTextCustomLeaf } from '../types.js'\n\n// eslint-disable-next-line payload/no-imports-from-exports-dir\nimport { RichTextField } from '../exports/client/index.js'\nimport { elements as elementTypes } from '../field/elements/index.js'\nimport { defaultLeaves as leafTypes } from '../field/leaves/index.js'\nimport { linkFieldsSchemaPath } from './elements/link/shared.js'\nimport { uploadFieldsSchemaPath } from './elements/upload/shared.js'\nexport const RscEntrySlateField: React.FC<\n {\n args: AdapterArguments\n } & ClientComponentProps &\n Pick<FieldPaths, 'path'> &\n ServerComponentProps\n> = ({\n args,\n clientField,\n forceRender,\n i18n,\n path,\n payload,\n readOnly,\n renderedBlocks,\n schemaPath,\n}) => {\n const componentMap: Map<string, ClientField[] | React.ReactNode> = new Map()\n\n const clientProps = {\n schemaPath,\n }\n\n ;(args?.admin?.leaves || Object.values(leafTypes)).forEach((leaf) => {\n let leafObject: RichTextCustomLeaf\n\n if (typeof leaf === 'object' && leaf !== null) {\n leafObject = leaf\n } else if (typeof leaf === 'string' && leafTypes[leaf]) {\n leafObject = leafTypes[leaf]\n }\n\n if (leafObject) {\n const LeafButton = leafObject.Button\n const LeafComponent = leafObject.Leaf\n\n componentMap.set(\n `leaf.button.${leafObject.name}`,\n RenderServerComponent({\n clientProps,\n Component: LeafButton,\n importMap: payload.importMap,\n }),\n )\n\n componentMap.set(\n `leaf.component.${leafObject.name}`,\n RenderServerComponent({\n clientProps,\n Component: LeafComponent,\n importMap: payload.importMap,\n }),\n )\n\n if (Array.isArray(leafObject.plugins)) {\n leafObject.plugins.forEach((Plugin, i) => {\n componentMap.set(\n `leaf.plugin.${leafObject.name}.${i}`,\n RenderServerComponent({\n clientProps,\n Component: Plugin,\n importMap: payload.importMap,\n }),\n )\n })\n }\n }\n })\n ;(args?.admin?.elements || Object.values(elementTypes)).forEach((el) => {\n let element: RichTextCustomElement\n\n if (typeof el === 'object' && el !== null) {\n element = el\n } else if (typeof el === 'string' && elementTypes[el]) {\n element = elementTypes[el]\n }\n\n if (element) {\n const ElementButton = element.Button\n const ElementComponent = element.Element\n\n if (ElementButton) {\n componentMap.set(\n `element.button.${element.name}`,\n RenderServerComponent({\n clientProps,\n Component: ElementButton,\n importMap: payload.importMap,\n }),\n )\n }\n componentMap.set(\n `element.component.${element.name}`,\n RenderServerComponent({\n clientProps,\n Component: ElementComponent,\n importMap: payload.importMap,\n }),\n )\n\n if (Array.isArray(element.plugins)) {\n element.plugins.forEach((Plugin, i) => {\n componentMap.set(\n `element.plugin.${element.name}.${i}`,\n RenderServerComponent({\n clientProps,\n Component: Plugin,\n importMap: payload.importMap,\n }),\n )\n })\n }\n\n switch (element.name) {\n case 'link': {\n let clientFields = deepCopyObjectSimple(\n args.admin?.link?.fields,\n ) as unknown as ClientField[]\n clientFields = createClientFields({\n clientFields,\n defaultIDType: payload.config.db.defaultIDType,\n fields: args.admin?.link?.fields as Field[],\n i18n,\n importMap: payload.importMap,\n })\n\n componentMap.set(linkFieldsSchemaPath, clientFields)\n\n break\n }\n\n case 'relationship':\n break\n\n case 'upload': {\n const uploadEnabledCollections = payload.config.collections.filter(\n ({ admin: { enableRichTextRelationship, hidden }, upload }) => {\n if (hidden === true) {\n return false\n }\n\n return enableRichTextRelationship && Boolean(upload) === true\n },\n )\n\n uploadEnabledCollections.forEach((collection) => {\n if (args?.admin?.upload?.collections[collection.slug]?.fields) {\n let clientFields = deepCopyObjectSimple(\n args?.admin?.upload?.collections[collection.slug]?.fields,\n ) as unknown as ClientField[]\n clientFields = createClientFields({\n clientFields,\n defaultIDType: payload.config.db.defaultIDType,\n fields: args?.admin?.upload?.collections[collection.slug]?.fields,\n i18n,\n importMap: payload.importMap,\n })\n\n componentMap.set(`${uploadFieldsSchemaPath}.${collection.slug}`, clientFields)\n }\n })\n\n break\n }\n }\n }\n })\n\n return (\n <RichTextField\n componentMap={Object.fromEntries(componentMap)}\n field={clientField as RichTextFieldClient}\n forceRender={forceRender}\n path={path}\n readOnly={readOnly}\n renderedBlocks={renderedBlocks}\n schemaPath={schemaPath}\n />\n )\n}\n"],"names":["RenderServerComponent","createClientFields","deepCopyObjectSimple","React","RichTextField","elements","elementTypes","defaultLeaves","leafTypes","linkFieldsSchemaPath","uploadFieldsSchemaPath","RscEntrySlateField","args","clientField","forceRender","i18n","path","payload","readOnly","renderedBlocks","schemaPath","componentMap","Map","clientProps","admin","leaves","Object","values","forEach","leaf","leafObject","LeafButton","Button","LeafComponent","Leaf","set","name","Component","importMap","Array","isArray","plugins","Plugin","i","el","element","ElementButton","ElementComponent","Element","clientFields","link","fields","defaultIDType","config","db","uploadEnabledCollections","collections","filter","enableRichTextRelationship","hidden","upload","Boolean","collection","slug","fromEntries","field"],"mappings":"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"}
package/dist/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import { sanitizeFields, withNullableJSONSchemaType } from 'payload';
2
- import { richTextRelationshipPromise } from './data/richTextRelationshipPromise.js';
2
+ import { richTextRelationshipPromise } from './data/recurseNestedFields.js';
3
3
  import { richTextValidate } from './data/validation.js';
4
4
  import { elements as elementTypes } from './field/elements/index.js';
5
5
  import { transformExtraFields } from './field/elements/link/utilities.js';
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.tsx"],"sourcesContent":["import type { Config, RichTextAdapterProvider } from 'payload'\n\nimport { sanitizeFields, withNullableJSONSchemaType } from 'payload'\n\nimport type { AdapterArguments } from './types.js'\n\nimport { richTextRelationshipPromise } from './data/richTextRelationshipPromise.js'\nimport { richTextValidate } from './data/validation.js'\nimport { elements as elementTypes } from './field/elements/index.js'\nimport { transformExtraFields } from './field/elements/link/utilities.js'\nimport { defaultLeaves as leafTypes } from './field/leaves/index.js'\nimport { getGenerateSchemaMap } from './generateSchemaMap.js'\n\nexport function slateEditor(\n args: AdapterArguments,\n): RichTextAdapterProvider<any[], AdapterArguments, any> {\n return async ({ config }) => {\n const validRelationships = config.collections.map((c) => c.slug) || []\n\n if (!args.admin) {\n args.admin = {}\n }\n if (!args.admin.link) {\n args.admin.link = {}\n }\n if (!args.admin.link.fields) {\n args.admin.link.fields = []\n }\n args.admin.link.fields = await sanitizeFields({\n config: config as unknown as Config,\n fields: transformExtraFields(args.admin?.link?.fields, config),\n parentIsLocalized: false,\n validRelationships,\n })\n\n if (args?.admin?.upload?.collections) {\n for (const collection of Object.keys(args.admin.upload.collections)) {\n if (args?.admin?.upload?.collections[collection]?.fields) {\n args.admin.upload.collections[collection].fields = await sanitizeFields({\n config: config as unknown as Config,\n fields: args.admin?.upload?.collections[collection]?.fields,\n parentIsLocalized: false,\n validRelationships,\n })\n }\n }\n }\n\n return {\n CellComponent: '@payloadcms/richtext-slate/rsc#RscEntrySlateCell',\n FieldComponent: {\n path: '@payloadcms/richtext-slate/rsc#RscEntrySlateField',\n serverProps: {\n args,\n },\n },\n generateImportMap: ({ addToImportMap }) => {\n addToImportMap('@payloadcms/richtext-slate/rsc#RscEntrySlateCell')\n addToImportMap('@payloadcms/richtext-slate/rsc#RscEntrySlateField')\n Object.values(leafTypes).forEach((leaf) => {\n if (leaf.Button) {\n addToImportMap(leaf.Button)\n }\n if (leaf.Leaf) {\n addToImportMap(leaf.Leaf)\n }\n if (Array.isArray(leaf.plugins) && leaf.plugins?.length) {\n addToImportMap(leaf.plugins)\n }\n })\n args?.admin?.leaves?.forEach((leaf) => {\n if (typeof leaf === 'object') {\n if (leaf.Button) {\n addToImportMap(leaf.Button)\n }\n if (leaf.Leaf) {\n addToImportMap(leaf.Leaf)\n }\n if (Array.isArray(leaf.plugins) && leaf.plugins?.length) {\n addToImportMap(leaf.plugins)\n }\n }\n })\n\n Object.values(elementTypes).forEach((element) => {\n if (element.Button) {\n addToImportMap(element.Button)\n }\n if (element.Element) {\n addToImportMap(element.Element)\n }\n if (Array.isArray(element.plugins) && element.plugins?.length) {\n addToImportMap(element.plugins)\n }\n })\n\n args?.admin?.elements?.forEach((element) => {\n if (typeof element === 'object') {\n if (element.Button) {\n addToImportMap(element.Button)\n }\n if (element.Element) {\n addToImportMap(element.Element)\n }\n if (Array.isArray(element.plugins) && element.plugins?.length) {\n addToImportMap(element.plugins)\n }\n }\n })\n },\n generateSchemaMap: getGenerateSchemaMap(args),\n graphQLPopulationPromises({\n context,\n currentDepth,\n depth,\n draft,\n field,\n fieldPromises,\n findMany,\n flattenLocales,\n overrideAccess,\n populationPromises,\n req,\n showHiddenFields,\n siblingDoc,\n }) {\n if (\n field.admin?.elements?.includes('relationship') ||\n field.admin?.elements?.includes('upload') ||\n field.admin?.elements?.includes('link') ||\n !field?.admin?.elements\n ) {\n richTextRelationshipPromise({\n context,\n currentDepth,\n depth,\n draft,\n field,\n fieldPromises,\n findMany,\n flattenLocales,\n overrideAccess,\n populationPromises,\n req,\n showHiddenFields,\n siblingDoc,\n })\n }\n },\n hooks: {\n afterRead: [\n ({\n context: _context,\n currentDepth,\n depth,\n draft,\n field: _field,\n fieldPromises,\n findMany,\n flattenLocales,\n overrideAccess,\n populate,\n populationPromises,\n req,\n showHiddenFields,\n siblingData,\n }) => {\n const context: any = _context\n const field = _field as any\n if (\n field.admin?.elements?.includes('relationship') ||\n field.admin?.elements?.includes('upload') ||\n field.admin?.elements?.includes('link') ||\n !field?.admin?.elements\n ) {\n richTextRelationshipPromise({\n context,\n currentDepth,\n depth,\n draft,\n field,\n fieldPromises,\n findMany,\n flattenLocales,\n overrideAccess,\n populateArg: populate,\n populationPromises,\n req,\n showHiddenFields,\n siblingDoc: siblingData,\n })\n }\n },\n ],\n },\n outputSchema: ({ isRequired }) => {\n return {\n type: withNullableJSONSchemaType('array', isRequired),\n items: {\n type: 'object',\n },\n }\n },\n validate: richTextValidate,\n }\n }\n}\n\nexport type {\n AdapterArguments,\n ElementNode,\n RichTextCustomElement,\n RichTextCustomLeaf,\n RichTextElement,\n RichTextLeaf,\n RichTextPlugin,\n RichTextPluginComponent,\n SlateFieldProps,\n TextNode,\n} from './types.js'\n\nexport { nodeIsTextNode } from './types.js'\n"],"names":["sanitizeFields","withNullableJSONSchemaType","richTextRelationshipPromise","richTextValidate","elements","elementTypes","transformExtraFields","defaultLeaves","leafTypes","getGenerateSchemaMap","slateEditor","args","config","validRelationships","collections","map","c","slug","admin","link","fields","parentIsLocalized","upload","collection","Object","keys","CellComponent","FieldComponent","path","serverProps","generateImportMap","addToImportMap","values","forEach","leaf","Button","Leaf","Array","isArray","plugins","length","leaves","element","Element","generateSchemaMap","graphQLPopulationPromises","context","currentDepth","depth","draft","field","fieldPromises","findMany","flattenLocales","overrideAccess","populationPromises","req","showHiddenFields","siblingDoc","includes","hooks","afterRead","_context","_field","populate","siblingData","populateArg","outputSchema","isRequired","type","items","validate","nodeIsTextNode"],"mappings":"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"}
1
+ {"version":3,"sources":["../src/index.tsx"],"sourcesContent":["import type { Config, RichTextAdapterProvider } from 'payload'\n\nimport { sanitizeFields, withNullableJSONSchemaType } from 'payload'\n\nimport type { AdapterArguments } from './types.js'\n\nimport { richTextRelationshipPromise } from './data/recurseNestedFields.js'\nimport { richTextValidate } from './data/validation.js'\nimport { elements as elementTypes } from './field/elements/index.js'\nimport { transformExtraFields } from './field/elements/link/utilities.js'\nimport { defaultLeaves as leafTypes } from './field/leaves/index.js'\nimport { getGenerateSchemaMap } from './generateSchemaMap.js'\n\nexport function slateEditor(\n args: AdapterArguments,\n): RichTextAdapterProvider<any[], AdapterArguments, any> {\n return async ({ config }) => {\n const validRelationships = config.collections.map((c) => c.slug) || []\n\n if (!args.admin) {\n args.admin = {}\n }\n if (!args.admin.link) {\n args.admin.link = {}\n }\n if (!args.admin.link.fields) {\n args.admin.link.fields = []\n }\n args.admin.link.fields = await sanitizeFields({\n config: config as unknown as Config,\n fields: transformExtraFields(args.admin?.link?.fields, config),\n parentIsLocalized: false,\n validRelationships,\n })\n\n if (args?.admin?.upload?.collections) {\n for (const collection of Object.keys(args.admin.upload.collections)) {\n if (args?.admin?.upload?.collections[collection]?.fields) {\n args.admin.upload.collections[collection].fields = await sanitizeFields({\n config: config as unknown as Config,\n fields: args.admin?.upload?.collections[collection]?.fields,\n parentIsLocalized: false,\n validRelationships,\n })\n }\n }\n }\n\n return {\n CellComponent: '@payloadcms/richtext-slate/rsc#RscEntrySlateCell',\n FieldComponent: {\n path: '@payloadcms/richtext-slate/rsc#RscEntrySlateField',\n serverProps: {\n args,\n },\n },\n generateImportMap: ({ addToImportMap }) => {\n addToImportMap('@payloadcms/richtext-slate/rsc#RscEntrySlateCell')\n addToImportMap('@payloadcms/richtext-slate/rsc#RscEntrySlateField')\n Object.values(leafTypes).forEach((leaf) => {\n if (leaf.Button) {\n addToImportMap(leaf.Button)\n }\n if (leaf.Leaf) {\n addToImportMap(leaf.Leaf)\n }\n if (Array.isArray(leaf.plugins) && leaf.plugins?.length) {\n addToImportMap(leaf.plugins)\n }\n })\n args?.admin?.leaves?.forEach((leaf) => {\n if (typeof leaf === 'object') {\n if (leaf.Button) {\n addToImportMap(leaf.Button)\n }\n if (leaf.Leaf) {\n addToImportMap(leaf.Leaf)\n }\n if (Array.isArray(leaf.plugins) && leaf.plugins?.length) {\n addToImportMap(leaf.plugins)\n }\n }\n })\n\n Object.values(elementTypes).forEach((element) => {\n if (element.Button) {\n addToImportMap(element.Button)\n }\n if (element.Element) {\n addToImportMap(element.Element)\n }\n if (Array.isArray(element.plugins) && element.plugins?.length) {\n addToImportMap(element.plugins)\n }\n })\n\n args?.admin?.elements?.forEach((element) => {\n if (typeof element === 'object') {\n if (element.Button) {\n addToImportMap(element.Button)\n }\n if (element.Element) {\n addToImportMap(element.Element)\n }\n if (Array.isArray(element.plugins) && element.plugins?.length) {\n addToImportMap(element.plugins)\n }\n }\n })\n },\n generateSchemaMap: getGenerateSchemaMap(args),\n graphQLPopulationPromises({\n context,\n currentDepth,\n depth,\n draft,\n field,\n fieldPromises,\n findMany,\n flattenLocales,\n overrideAccess,\n populationPromises,\n req,\n showHiddenFields,\n siblingDoc,\n }) {\n if (\n field.admin?.elements?.includes('relationship') ||\n field.admin?.elements?.includes('upload') ||\n field.admin?.elements?.includes('link') ||\n !field?.admin?.elements\n ) {\n richTextRelationshipPromise({\n context,\n currentDepth,\n depth,\n draft,\n field,\n fieldPromises,\n findMany,\n flattenLocales,\n overrideAccess,\n populationPromises,\n req,\n showHiddenFields,\n siblingDoc,\n })\n }\n },\n hooks: {\n afterRead: [\n ({\n context: _context,\n currentDepth,\n depth,\n draft,\n field: _field,\n fieldPromises,\n findMany,\n flattenLocales,\n overrideAccess,\n populate,\n populationPromises,\n req,\n showHiddenFields,\n siblingData,\n }) => {\n const context: any = _context\n const field = _field as any\n if (\n field.admin?.elements?.includes('relationship') ||\n field.admin?.elements?.includes('upload') ||\n field.admin?.elements?.includes('link') ||\n !field?.admin?.elements\n ) {\n richTextRelationshipPromise({\n context,\n currentDepth,\n depth,\n draft,\n field,\n fieldPromises,\n findMany,\n flattenLocales,\n overrideAccess,\n populateArg: populate,\n populationPromises,\n req,\n showHiddenFields,\n siblingDoc: siblingData,\n })\n }\n },\n ],\n },\n outputSchema: ({ isRequired }) => {\n return {\n type: withNullableJSONSchemaType('array', isRequired),\n items: {\n type: 'object',\n },\n }\n },\n validate: richTextValidate,\n }\n }\n}\n\nexport type {\n AdapterArguments,\n ElementNode,\n RichTextCustomElement,\n RichTextCustomLeaf,\n RichTextElement,\n RichTextLeaf,\n RichTextPlugin,\n RichTextPluginComponent,\n SlateFieldProps,\n TextNode,\n} from './types.js'\n\nexport { nodeIsTextNode } from './types.js'\n"],"names":["sanitizeFields","withNullableJSONSchemaType","richTextRelationshipPromise","richTextValidate","elements","elementTypes","transformExtraFields","defaultLeaves","leafTypes","getGenerateSchemaMap","slateEditor","args","config","validRelationships","collections","map","c","slug","admin","link","fields","parentIsLocalized","upload","collection","Object","keys","CellComponent","FieldComponent","path","serverProps","generateImportMap","addToImportMap","values","forEach","leaf","Button","Leaf","Array","isArray","plugins","length","leaves","element","Element","generateSchemaMap","graphQLPopulationPromises","context","currentDepth","depth","draft","field","fieldPromises","findMany","flattenLocales","overrideAccess","populationPromises","req","showHiddenFields","siblingDoc","includes","hooks","afterRead","_context","_field","populate","siblingData","populateArg","outputSchema","isRequired","type","items","validate","nodeIsTextNode"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@payloadcms/richtext-slate",
3
- "version": "3.0.0",
3
+ "version": "3.0.1-canary.9494866",
4
4
  "description": "The officially supported Slate richtext adapter for Payload",
5
5
  "homepage": "https://payloadcms.com",
6
6
  "repository": {
@@ -46,20 +46,20 @@
46
46
  "slate-history": "0.86.0",
47
47
  "slate-hyperscript": "0.81.3",
48
48
  "slate-react": "0.92.0",
49
- "@payloadcms/translations": "3.0.0",
50
- "@payloadcms/ui": "3.0.0"
49
+ "@payloadcms/translations": "3.0.1-canary.9494866",
50
+ "@payloadcms/ui": "3.0.1-canary.9494866"
51
51
  },
52
52
  "devDependencies": {
53
53
  "@types/is-hotkey": "^0.1.10",
54
54
  "@types/node": "22.5.4",
55
55
  "@types/react": "npm:types-react@19.0.0-rc.1",
56
56
  "@types/react-dom": "npm:types-react-dom@19.0.0-rc.1",
57
- "@payloadcms/eslint-config": "3.0.0-beta.112",
58
- "payload": "3.0.0"
57
+ "@payloadcms/eslint-config": "3.0.0",
58
+ "payload": "3.0.1-canary.9494866"
59
59
  },
60
60
  "peerDependencies": {
61
61
  "react": "^19.0.0 || ^19.0.0-rc-65a56d0e-20241020",
62
- "payload": "3.0.0"
62
+ "payload": "3.0.1-canary.9494866"
63
63
  },
64
64
  "engines": {
65
65
  "node": "^18.20.2 || >=20.9.0"
@@ -1,19 +0,0 @@
1
- import type { PayloadRequest, PopulateType, RichTextAdapter, RichTextField } from 'payload';
2
- import type { AdapterArguments } from '../types.js';
3
- export type Args = Parameters<RichTextAdapter<any[], AdapterArguments>['graphQLPopulationPromises']>[0];
4
- type RecurseRichTextArgs = {
5
- children: unknown[];
6
- currentDepth: number;
7
- depth: number;
8
- draft: boolean;
9
- field: RichTextField<any[], any, any>;
10
- overrideAccess: boolean;
11
- populateArg?: PopulateType;
12
- populationPromises: Promise<void>[];
13
- req: PayloadRequest;
14
- showHiddenFields: boolean;
15
- };
16
- export declare const recurseRichText: ({ children, currentDepth, depth, draft, field, overrideAccess, populateArg, populationPromises, req, showHiddenFields, }: RecurseRichTextArgs) => void;
17
- export declare const richTextRelationshipPromise: ({ currentDepth, depth, draft, field, overrideAccess, populateArg, populationPromises, req, showHiddenFields, siblingDoc, }: Args) => void;
18
- export {};
19
- //# sourceMappingURL=richTextRelationshipPromise.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"richTextRelationshipPromise.d.ts","sourceRoot":"","sources":["../../src/data/richTextRelationshipPromise.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,cAAc,EACd,YAAY,EACZ,eAAe,EACf,aAAa,EACd,MAAM,SAAS,CAAA;AAEhB,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;AAKnD,MAAM,MAAM,IAAI,GAAG,UAAU,CAC3B,eAAe,CAAC,GAAG,EAAE,EAAE,gBAAgB,CAAC,CAAC,2BAA2B,CAAC,CACtE,CAAC,CAAC,CAAC,CAAA;AAEJ,KAAK,mBAAmB,GAAG;IACzB,QAAQ,EAAE,OAAO,EAAE,CAAA;IACnB,YAAY,EAAE,MAAM,CAAA;IACpB,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,OAAO,CAAA;IACd,KAAK,EAAE,aAAa,CAAC,GAAG,EAAE,EAAE,GAAG,EAAE,GAAG,CAAC,CAAA;IACrC,cAAc,EAAE,OAAO,CAAA;IACvB,WAAW,CAAC,EAAE,YAAY,CAAA;IAC1B,kBAAkB,EAAE,OAAO,CAAC,IAAI,CAAC,EAAE,CAAA;IACnC,GAAG,EAAE,cAAc,CAAA;IACnB,gBAAgB,EAAE,OAAO,CAAA;CAC1B,CAAA;AAED,eAAO,MAAM,eAAe,6HAWzB,mBAAmB,KAAG,IA6GxB,CAAA;AAED,eAAO,MAAM,2BAA2B,+HAWrC,IAAI,SAaN,CAAA"}
@@ -1,109 +0,0 @@
1
- import { populate } from './populate.js';
2
- import { recurseNestedFields } from './recurseNestedFields.js';
3
- export const recurseRichText = ({ children, currentDepth = 0, depth, draft, field, overrideAccess = false, populateArg, populationPromises, req, showHiddenFields })=>{
4
- if (depth <= 0 || currentDepth > depth) {
5
- return;
6
- }
7
- if (Array.isArray(children)) {
8
- children.forEach((element)=>{
9
- if ((element.type === 'relationship' || element.type === 'upload') && element?.value?.id) {
10
- const collection = req.payload.collections[element?.relationTo];
11
- if (collection) {
12
- populationPromises.push(populate({
13
- id: element.value.id,
14
- collection,
15
- currentDepth,
16
- data: element,
17
- depth,
18
- draft,
19
- field,
20
- key: 'value',
21
- overrideAccess,
22
- req,
23
- select: req.payloadAPI !== 'GraphQL' ? populateArg?.[collection.config.slug] ?? collection.config.defaultPopulate : undefined,
24
- showHiddenFields
25
- }));
26
- }
27
- if (element.type === 'upload' && Array.isArray(field.admin?.upload?.collections?.[element?.relationTo]?.fields)) {
28
- recurseNestedFields({
29
- currentDepth,
30
- data: element.fields || {},
31
- depth,
32
- draft,
33
- fields: field.admin.upload.collections[element.relationTo].fields,
34
- overrideAccess,
35
- populateArg,
36
- populationPromises,
37
- req,
38
- showHiddenFields
39
- });
40
- }
41
- }
42
- if (element.type === 'link') {
43
- if (element?.doc?.value && element?.doc?.relationTo) {
44
- const collection = req.payload.collections[element?.doc?.relationTo];
45
- if (collection) {
46
- populationPromises.push(populate({
47
- id: element.doc.value,
48
- collection,
49
- currentDepth,
50
- data: element.doc,
51
- depth,
52
- draft,
53
- field,
54
- key: 'value',
55
- overrideAccess,
56
- req,
57
- select: req.payloadAPI !== 'GraphQL' ? populateArg?.[collection.config.slug] ?? collection.config.defaultPopulate : undefined,
58
- showHiddenFields
59
- }));
60
- }
61
- }
62
- if (Array.isArray(field.admin?.link?.fields)) {
63
- recurseNestedFields({
64
- currentDepth,
65
- data: element.fields || {},
66
- depth,
67
- draft,
68
- fields: field.admin?.link?.fields,
69
- overrideAccess,
70
- populateArg,
71
- populationPromises,
72
- req,
73
- showHiddenFields
74
- });
75
- }
76
- }
77
- if (element?.children) {
78
- recurseRichText({
79
- children: element.children,
80
- currentDepth,
81
- depth,
82
- draft,
83
- field,
84
- overrideAccess,
85
- populateArg,
86
- populationPromises,
87
- req,
88
- showHiddenFields
89
- });
90
- }
91
- });
92
- }
93
- };
94
- export const richTextRelationshipPromise = ({ currentDepth, depth, draft, field, overrideAccess, populateArg, populationPromises, req, showHiddenFields, siblingDoc })=>{
95
- recurseRichText({
96
- children: siblingDoc[field.name],
97
- currentDepth,
98
- depth,
99
- draft,
100
- field,
101
- overrideAccess,
102
- populateArg,
103
- populationPromises,
104
- req,
105
- showHiddenFields
106
- });
107
- };
108
-
109
- //# sourceMappingURL=richTextRelationshipPromise.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/data/richTextRelationshipPromise.ts"],"sourcesContent":["import type {\n CollectionConfig,\n PayloadRequest,\n PopulateType,\n RichTextAdapter,\n RichTextField,\n} from 'payload'\n\nimport type { AdapterArguments } from '../types.js'\n\nimport { populate } from './populate.js'\nimport { recurseNestedFields } from './recurseNestedFields.js'\n\nexport type Args = Parameters<\n RichTextAdapter<any[], AdapterArguments>['graphQLPopulationPromises']\n>[0]\n\ntype RecurseRichTextArgs = {\n children: unknown[]\n currentDepth: number\n depth: number\n draft: boolean\n field: RichTextField<any[], any, any>\n overrideAccess: boolean\n populateArg?: PopulateType\n populationPromises: Promise<void>[]\n req: PayloadRequest\n showHiddenFields: boolean\n}\n\nexport const recurseRichText = ({\n children,\n currentDepth = 0,\n depth,\n draft,\n field,\n overrideAccess = false,\n populateArg,\n populationPromises,\n req,\n showHiddenFields,\n}: RecurseRichTextArgs): void => {\n if (depth <= 0 || currentDepth > depth) {\n return\n }\n\n if (Array.isArray(children)) {\n ;(children as any[]).forEach((element) => {\n if ((element.type === 'relationship' || element.type === 'upload') && element?.value?.id) {\n const collection = req.payload.collections[element?.relationTo]\n\n if (collection) {\n populationPromises.push(\n populate({\n id: element.value.id,\n collection,\n currentDepth,\n data: element,\n depth,\n draft,\n field,\n key: 'value',\n overrideAccess,\n req,\n select:\n req.payloadAPI !== 'GraphQL'\n ? (populateArg?.[collection.config.slug] ?? collection.config.defaultPopulate)\n : undefined,\n showHiddenFields,\n }),\n )\n }\n if (\n element.type === 'upload' &&\n Array.isArray(field.admin?.upload?.collections?.[element?.relationTo]?.fields)\n ) {\n recurseNestedFields({\n currentDepth,\n data: element.fields || {},\n depth,\n draft,\n fields: field.admin.upload.collections[element.relationTo].fields,\n overrideAccess,\n populateArg,\n populationPromises,\n req,\n showHiddenFields,\n })\n }\n }\n\n if (element.type === 'link') {\n if (element?.doc?.value && element?.doc?.relationTo) {\n const collection = req.payload.collections[element?.doc?.relationTo]\n\n if (collection) {\n populationPromises.push(\n populate({\n id: element.doc.value,\n collection,\n currentDepth,\n data: element.doc,\n depth,\n draft,\n field,\n key: 'value',\n overrideAccess,\n req,\n select:\n req.payloadAPI !== 'GraphQL'\n ? (populateArg?.[collection.config.slug] ?? collection.config.defaultPopulate)\n : undefined,\n showHiddenFields,\n }),\n )\n }\n }\n\n if (Array.isArray(field.admin?.link?.fields)) {\n recurseNestedFields({\n currentDepth,\n data: element.fields || {},\n depth,\n draft,\n fields: field.admin?.link?.fields,\n overrideAccess,\n populateArg,\n populationPromises,\n req,\n showHiddenFields,\n })\n }\n }\n\n if (element?.children) {\n recurseRichText({\n children: element.children,\n currentDepth,\n depth,\n draft,\n field,\n overrideAccess,\n populateArg,\n populationPromises,\n req,\n showHiddenFields,\n })\n }\n })\n }\n}\n\nexport const richTextRelationshipPromise = ({\n currentDepth,\n depth,\n draft,\n field,\n overrideAccess,\n populateArg,\n populationPromises,\n req,\n showHiddenFields,\n siblingDoc,\n}: Args) => {\n recurseRichText({\n children: siblingDoc[field.name] as unknown[],\n currentDepth,\n depth,\n draft,\n field,\n overrideAccess,\n populateArg,\n populationPromises,\n req,\n showHiddenFields,\n })\n}\n"],"names":["populate","recurseNestedFields","recurseRichText","children","currentDepth","depth","draft","field","overrideAccess","populateArg","populationPromises","req","showHiddenFields","Array","isArray","forEach","element","type","value","id","collection","payload","collections","relationTo","push","data","key","select","payloadAPI","config","slug","defaultPopulate","undefined","admin","upload","fields","doc","link","richTextRelationshipPromise","siblingDoc","name"],"mappings":"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"}