@payloadcms/ui 3.0.0-beta.88 → 3.0.0-beta.89

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (189) hide show
  1. package/dist/elements/AddNewRelation/index.d.ts.map +1 -0
  2. package/dist/{fields/Relationship/AddNew → elements/AddNewRelation}/index.js +98 -82
  3. package/dist/elements/AddNewRelation/index.js.map +1 -0
  4. package/dist/{fields/Relationship/AddNew → elements/AddNewRelation}/index.scss +7 -3
  5. package/dist/elements/AddNewRelation/types.d.ts +11 -0
  6. package/dist/elements/AddNewRelation/types.d.ts.map +1 -0
  7. package/dist/elements/AddNewRelation/types.js.map +1 -0
  8. package/dist/elements/AddNewRelation/useRelatedCollections.d.ts.map +1 -0
  9. package/dist/{fields/Relationship/AddNew → elements/AddNewRelation}/useRelatedCollections.js +1 -1
  10. package/dist/elements/AddNewRelation/useRelatedCollections.js.map +1 -0
  11. package/dist/elements/BulkUpload/ActionsBar/index.d.ts +9 -0
  12. package/dist/elements/BulkUpload/ActionsBar/index.d.ts.map +1 -0
  13. package/dist/elements/BulkUpload/ActionsBar/index.js +186 -0
  14. package/dist/elements/BulkUpload/ActionsBar/index.js.map +1 -0
  15. package/dist/elements/BulkUpload/ActionsBar/index.scss +59 -0
  16. package/dist/elements/BulkUpload/AddFilesView/index.d.ts +9 -0
  17. package/dist/elements/BulkUpload/AddFilesView/index.d.ts.map +1 -0
  18. package/dist/elements/BulkUpload/AddFilesView/index.js +44 -0
  19. package/dist/elements/BulkUpload/AddFilesView/index.js.map +1 -0
  20. package/dist/elements/BulkUpload/AddFilesView/index.scss +15 -0
  21. package/dist/elements/BulkUpload/AddingFilesView/index.d.ts +4 -0
  22. package/dist/elements/BulkUpload/AddingFilesView/index.d.ts.map +1 -0
  23. package/dist/elements/BulkUpload/AddingFilesView/index.js +98 -0
  24. package/dist/elements/BulkUpload/AddingFilesView/index.js.map +1 -0
  25. package/dist/elements/BulkUpload/AddingFilesView/index.scss +23 -0
  26. package/dist/elements/BulkUpload/DiscardWithoutSaving/index.d.ts +4 -0
  27. package/dist/elements/BulkUpload/DiscardWithoutSaving/index.d.ts.map +1 -0
  28. package/dist/elements/BulkUpload/DiscardWithoutSaving/index.js +89 -0
  29. package/dist/elements/BulkUpload/DiscardWithoutSaving/index.js.map +1 -0
  30. package/dist/elements/BulkUpload/DrawerCloseButton/index.d.ts +9 -0
  31. package/dist/elements/BulkUpload/DrawerCloseButton/index.d.ts.map +1 -0
  32. package/dist/elements/BulkUpload/DrawerCloseButton/index.js +38 -0
  33. package/dist/elements/BulkUpload/DrawerCloseButton/index.js.map +1 -0
  34. package/dist/elements/BulkUpload/DrawerCloseButton/index.scss +27 -0
  35. package/dist/elements/BulkUpload/EditForm/index.d.ts +5 -0
  36. package/dist/elements/BulkUpload/EditForm/index.d.ts.map +1 -0
  37. package/dist/elements/BulkUpload/EditForm/index.js +176 -0
  38. package/dist/elements/BulkUpload/EditForm/index.js.map +1 -0
  39. package/dist/elements/BulkUpload/EditForm/index.scss +9 -0
  40. package/dist/elements/BulkUpload/EditForm/types.d.ts +4 -0
  41. package/dist/elements/BulkUpload/EditForm/types.d.ts.map +1 -0
  42. package/dist/elements/BulkUpload/EditForm/types.js +2 -0
  43. package/dist/elements/BulkUpload/EditForm/types.js.map +1 -0
  44. package/dist/elements/BulkUpload/FileSidebar/index.d.ts +4 -0
  45. package/dist/elements/BulkUpload/FileSidebar/index.d.ts.map +1 -0
  46. package/dist/elements/BulkUpload/FileSidebar/index.js +242 -0
  47. package/dist/elements/BulkUpload/FileSidebar/index.js.map +1 -0
  48. package/dist/elements/BulkUpload/FileSidebar/index.scss +275 -0
  49. package/dist/elements/BulkUpload/FormsManager/createFormData.d.ts +3 -0
  50. package/dist/elements/BulkUpload/FormsManager/createFormData.d.ts.map +1 -0
  51. package/dist/elements/BulkUpload/FormsManager/createFormData.js +22 -0
  52. package/dist/elements/BulkUpload/FormsManager/createFormData.js.map +1 -0
  53. package/dist/elements/BulkUpload/FormsManager/index.d.ts +35 -0
  54. package/dist/elements/BulkUpload/FormsManager/index.d.ts.map +1 -0
  55. package/dist/elements/BulkUpload/FormsManager/index.js +308 -0
  56. package/dist/elements/BulkUpload/FormsManager/index.js.map +1 -0
  57. package/dist/elements/BulkUpload/FormsManager/reducer.d.ts +30 -0
  58. package/dist/elements/BulkUpload/FormsManager/reducer.d.ts.map +1 -0
  59. package/dist/elements/BulkUpload/FormsManager/reducer.js +69 -0
  60. package/dist/elements/BulkUpload/FormsManager/reducer.js.map +1 -0
  61. package/dist/elements/BulkUpload/Header/index.d.ts +9 -0
  62. package/dist/elements/BulkUpload/Header/index.d.ts.map +1 -0
  63. package/dist/elements/BulkUpload/Header/index.js +22 -0
  64. package/dist/elements/BulkUpload/Header/index.js.map +1 -0
  65. package/dist/elements/BulkUpload/Header/index.scss +12 -0
  66. package/dist/elements/BulkUpload/index.d.ts +10 -0
  67. package/dist/elements/BulkUpload/index.d.ts.map +1 -0
  68. package/dist/elements/BulkUpload/index.js +114 -0
  69. package/dist/elements/BulkUpload/index.js.map +1 -0
  70. package/dist/elements/BulkUpload/index.scss +0 -0
  71. package/dist/elements/Button/index.d.ts.map +1 -1
  72. package/dist/elements/Button/index.js +127 -79
  73. package/dist/elements/Button/index.js.map +1 -1
  74. package/dist/elements/Button/index.scss +109 -43
  75. package/dist/elements/Button/types.d.ts +2 -1
  76. package/dist/elements/Button/types.d.ts.map +1 -1
  77. package/dist/elements/Button/types.js.map +1 -1
  78. package/dist/elements/DocumentDrawer/DrawerContent.js +1 -1
  79. package/dist/elements/DocumentDrawer/DrawerContent.js.map +1 -1
  80. package/dist/elements/DocumentDrawer/index.js +1 -1
  81. package/dist/elements/DocumentDrawer/index.js.map +1 -1
  82. package/dist/elements/Dropzone/index.scss +2 -0
  83. package/dist/elements/FileDetails/DraggableFileDetails/index.d.ts +20 -0
  84. package/dist/elements/FileDetails/DraggableFileDetails/index.d.ts.map +1 -0
  85. package/dist/elements/FileDetails/DraggableFileDetails/index.js +116 -0
  86. package/dist/elements/FileDetails/DraggableFileDetails/index.js.map +1 -0
  87. package/dist/elements/FileDetails/DraggableFileDetails/index.scss +33 -0
  88. package/dist/elements/FileDetails/StaticFileDetails/index.d.ts +17 -0
  89. package/dist/elements/FileDetails/StaticFileDetails/index.d.ts.map +1 -0
  90. package/dist/elements/FileDetails/StaticFileDetails/index.js +71 -0
  91. package/dist/elements/FileDetails/StaticFileDetails/index.js.map +1 -0
  92. package/dist/elements/FileDetails/{index.scss → StaticFileDetails/index.scss} +1 -1
  93. package/dist/elements/FileDetails/index.d.ts +19 -4
  94. package/dist/elements/FileDetails/index.d.ts.map +1 -1
  95. package/dist/elements/FileDetails/index.js +11 -62
  96. package/dist/elements/FileDetails/index.js.map +1 -1
  97. package/dist/elements/FullscreenModal/index.d.ts +4 -0
  98. package/dist/elements/FullscreenModal/index.d.ts.map +1 -0
  99. package/dist/elements/FullscreenModal/index.js +38 -0
  100. package/dist/elements/FullscreenModal/index.js.map +1 -0
  101. package/dist/elements/ListControls/index.d.ts.map +1 -1
  102. package/dist/elements/ListControls/index.js +15 -10
  103. package/dist/elements/ListControls/index.js.map +1 -1
  104. package/dist/elements/ListDrawer/DrawerContent.d.ts.map +1 -1
  105. package/dist/elements/ListDrawer/DrawerContent.js +45 -33
  106. package/dist/elements/ListDrawer/DrawerContent.js.map +1 -1
  107. package/dist/elements/ListDrawer/index.d.ts.map +1 -1
  108. package/dist/elements/ListDrawer/index.js.map +1 -1
  109. package/dist/elements/ListDrawer/types.d.ts +4 -1
  110. package/dist/elements/ListDrawer/types.d.ts.map +1 -1
  111. package/dist/elements/ListDrawer/types.js.map +1 -1
  112. package/dist/elements/ListHeader/index.d.ts +10 -0
  113. package/dist/elements/ListHeader/index.d.ts.map +1 -0
  114. package/dist/elements/ListHeader/index.js +17 -0
  115. package/dist/elements/ListHeader/index.js.map +1 -0
  116. package/dist/elements/ListHeader/index.scss +10 -0
  117. package/dist/elements/Popup/PopupButtonList/index.d.ts +1 -1
  118. package/dist/elements/Popup/PopupButtonList/index.d.ts.map +1 -1
  119. package/dist/elements/Popup/PopupButtonList/index.js +4 -4
  120. package/dist/elements/Popup/PopupButtonList/index.js.map +1 -1
  121. package/dist/elements/Popup/PopupTrigger/index.d.ts +2 -0
  122. package/dist/elements/Popup/PopupTrigger/index.d.ts.map +1 -1
  123. package/dist/elements/Popup/PopupTrigger/index.js +5 -2
  124. package/dist/elements/Popup/PopupTrigger/index.js.map +1 -1
  125. package/dist/elements/Popup/PopupTrigger/index.scss +4 -1
  126. package/dist/elements/Popup/index.d.ts +2 -0
  127. package/dist/elements/Popup/index.d.ts.map +1 -1
  128. package/dist/elements/Popup/index.js +6 -0
  129. package/dist/elements/Popup/index.js.map +1 -1
  130. package/dist/elements/SelectMany/index.d.ts +6 -0
  131. package/dist/elements/SelectMany/index.d.ts.map +1 -0
  132. package/dist/elements/SelectMany/index.js +29 -0
  133. package/dist/elements/SelectMany/index.js.map +1 -0
  134. package/dist/elements/ViewDescription/index.d.ts +3 -2
  135. package/dist/elements/ViewDescription/index.d.ts.map +1 -1
  136. package/dist/elements/ViewDescription/index.js +39 -16
  137. package/dist/elements/ViewDescription/index.js.map +1 -1
  138. package/dist/exports/client/index.d.ts +4 -0
  139. package/dist/exports/client/index.d.ts.map +1 -1
  140. package/dist/exports/client/index.js +19 -19
  141. package/dist/exports/client/index.js.map +4 -4
  142. package/dist/fields/Blocks/SectionTitle/index.scss +1 -1
  143. package/dist/fields/Relationship/index.d.ts.map +1 -1
  144. package/dist/fields/Relationship/index.js +1 -3
  145. package/dist/fields/Relationship/index.js.map +1 -1
  146. package/dist/fields/Upload/HasMany/index.d.ts +4 -0
  147. package/dist/fields/Upload/HasMany/index.d.ts.map +1 -0
  148. package/dist/fields/Upload/HasMany/index.js +474 -0
  149. package/dist/fields/Upload/HasMany/index.js.map +1 -0
  150. package/dist/fields/Upload/HasMany/index.scss +47 -0
  151. package/dist/fields/Upload/{Input.d.ts → HasOne/Input.d.ts} +1 -1
  152. package/dist/fields/Upload/HasOne/Input.d.ts.map +1 -0
  153. package/dist/fields/Upload/{Input.js → HasOne/Input.js} +12 -12
  154. package/dist/fields/Upload/HasOne/Input.js.map +1 -0
  155. package/dist/fields/Upload/HasOne/index.d.ts +12 -0
  156. package/dist/fields/Upload/HasOne/index.d.ts.map +1 -0
  157. package/dist/fields/Upload/HasOne/index.js +131 -0
  158. package/dist/fields/Upload/HasOne/index.js.map +1 -0
  159. package/dist/fields/Upload/{index.scss → HasOne/index.scss} +1 -1
  160. package/dist/fields/Upload/index.d.ts +4 -4
  161. package/dist/fields/Upload/index.d.ts.map +1 -1
  162. package/dist/fields/Upload/index.js +84 -98
  163. package/dist/fields/Upload/index.js.map +1 -1
  164. package/dist/forms/buildStateFromSchema/addFieldStatePromise.d.ts.map +1 -1
  165. package/dist/forms/buildStateFromSchema/addFieldStatePromise.js +1 -27
  166. package/dist/forms/buildStateFromSchema/addFieldStatePromise.js.map +1 -1
  167. package/dist/providers/Config/createClientConfig/collections.d.ts.map +1 -1
  168. package/dist/providers/Config/createClientConfig/collections.js +3 -4
  169. package/dist/providers/Config/createClientConfig/collections.js.map +1 -1
  170. package/dist/providers/ListInfo/index.d.ts +6 -0
  171. package/dist/providers/ListInfo/index.d.ts.map +1 -1
  172. package/dist/providers/ListInfo/index.js.map +1 -1
  173. package/dist/providers/Selection/index.d.ts +5 -3
  174. package/dist/providers/Selection/index.d.ts.map +1 -1
  175. package/dist/providers/Selection/index.js.map +1 -1
  176. package/dist/styles.css +1 -1
  177. package/package.json +4 -4
  178. package/dist/fields/Relationship/AddNew/index.d.ts.map +0 -1
  179. package/dist/fields/Relationship/AddNew/index.js.map +0 -1
  180. package/dist/fields/Relationship/AddNew/types.d.ts +0 -12
  181. package/dist/fields/Relationship/AddNew/types.d.ts.map +0 -1
  182. package/dist/fields/Relationship/AddNew/types.js.map +0 -1
  183. package/dist/fields/Relationship/AddNew/useRelatedCollections.d.ts.map +0 -1
  184. package/dist/fields/Relationship/AddNew/useRelatedCollections.js.map +0 -1
  185. package/dist/fields/Upload/Input.d.ts.map +0 -1
  186. package/dist/fields/Upload/Input.js.map +0 -1
  187. /package/dist/{fields/Relationship/AddNew → elements/AddNewRelation}/index.d.ts +0 -0
  188. /package/dist/{fields/Relationship/AddNew → elements/AddNewRelation}/types.js +0 -0
  189. /package/dist/{fields/Relationship/AddNew → elements/AddNewRelation}/useRelatedCollections.d.ts +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"addFieldStatePromise.js","names":["ObjectIdImport","fieldAffectsData","fieldHasSubFields","tabHasName","getFilterOptionsQuery","iterateFields","ObjectId","default","addFieldStatePromise","args","id","addErrorPathToParent","addErrorPathToParentArg","anyParentLocalized","collectionSlug","data","field","fieldIndex","filter","forceFullValue","fullData","includeSchema","omitParents","operation","passesCondition","path","preferences","req","skipConditionChecks","skipValidation","state","validate","fieldState","errorPaths","fieldSchema","undefined","initialValue","valid","value","validationResult","jsonError","type","name","JSON","parse","e","siblingData","errorPath","includes","push","errorMessage","arrayValue","Array","isArray","promises","rowMetadata","reduce","acc","row","i","rowPath","toHexString","fields","find","localized","parentPassesCondition","collapsedRowIDs","collapsed","admin","initCollapsed","Promise","all","length","disableFormData","rows","blocksValue","block","blocks","blockType","slug","blockField","blockName","filterOptions","relationTo","relation","query","user","hasMany","relationshipValue","map","relationship","tabs","tab","isNamedTab"],"sources":["../../../src/forms/buildStateFromSchema/addFieldStatePromise.ts"],"sourcesContent":["import type {\n Data,\n DocumentPreferences,\n Field,\n FilterOptionsResult,\n FormField,\n FormState,\n PayloadRequest,\n} from 'payload'\n\nimport ObjectIdImport from 'bson-objectid'\nimport { fieldAffectsData, fieldHasSubFields, tabHasName } from 'payload/shared'\n\nimport { getFilterOptionsQuery } from './getFilterOptionsQuery.js'\nimport { iterateFields } from './iterateFields.js'\n\nconst ObjectId = (ObjectIdImport.default ||\n ObjectIdImport) as unknown as typeof ObjectIdImport.default\n\nexport type AddFieldStatePromiseArgs = {\n addErrorPathToParent: (path: string) => void\n /**\n * if all parents are localized, then the field is localized\n */\n anyParentLocalized?: boolean\n collectionSlug?: string\n data: Data\n field: Field\n fieldIndex: number\n /**\n * You can use this to filter down to only `localized` fields that require translation (type: text, textarea, etc.). Another plugin might want to look for only `point` type fields to do some GIS function. With the filter function you can go in like a surgeon.\n */\n filter?: (args: AddFieldStatePromiseArgs) => boolean\n /**\n * Force the value of fields like arrays or blocks to be the full value instead of the length @default false\n */\n forceFullValue?: boolean\n fullData: Data\n id: number | string\n /**\n * Whether the field schema should be included in the state\n */\n includeSchema?: boolean\n /**\n * Whether to omit parent fields in the state. @default false\n */\n omitParents?: boolean\n operation: 'create' | 'update'\n passesCondition: boolean\n path: string\n\n preferences: DocumentPreferences\n /**\n * Req is used for validation and defaultValue calculation. If you don't need validation,\n * just create your own req and pass in the locale and the user\n */\n req: PayloadRequest\n /**\n * Whether to skip checking the field's condition. @default false\n */\n skipConditionChecks?: boolean\n /**\n * Whether to skip validating the field. @default false\n */\n skipValidation?: boolean\n state: FormState\n}\n\n/**\n * Flattens the fields schema and fields data.\n * The output is the field path (e.g. array.0.name) mapped to a FormField object.\n */\nexport const addFieldStatePromise = async (args: AddFieldStatePromiseArgs): Promise<void> => {\n const {\n id,\n addErrorPathToParent: addErrorPathToParentArg,\n anyParentLocalized = false,\n collectionSlug,\n data,\n field,\n fieldIndex,\n filter,\n forceFullValue = false,\n fullData,\n includeSchema = false,\n omitParents = false,\n operation,\n passesCondition,\n path,\n preferences,\n req,\n skipConditionChecks = false,\n skipValidation = false,\n state,\n } = args\n\n if (fieldAffectsData(field)) {\n const validate = field.validate\n\n const fieldState: FormField = {\n errorPaths: [],\n fieldSchema: includeSchema ? field : undefined,\n initialValue: undefined,\n passesCondition,\n valid: true,\n value: undefined,\n }\n\n let validationResult: string | true = true\n\n if (typeof validate === 'function' && !skipValidation && passesCondition) {\n let jsonError\n\n if (field.type === 'json' && typeof data[field.name] === 'string') {\n try {\n JSON.parse(data[field.name] as string)\n } catch (e) {\n jsonError = e\n }\n }\n\n validationResult = await validate(data?.[field.name], {\n ...field,\n id,\n collectionSlug,\n data: fullData,\n operation,\n req,\n siblingData: data,\n // @ts-expect-error-next-line\n jsonError,\n preferences,\n })\n }\n\n const addErrorPathToParent = (errorPath: string) => {\n if (typeof addErrorPathToParentArg === 'function') {\n addErrorPathToParentArg(errorPath)\n }\n\n if (!fieldState.errorPaths.includes(errorPath)) {\n fieldState.errorPaths.push(errorPath)\n fieldState.valid = false\n }\n }\n\n if (typeof validationResult === 'string') {\n fieldState.errorMessage = validationResult\n fieldState.valid = false\n addErrorPathToParent(`${path}${field.name}`)\n } else {\n fieldState.valid = true\n }\n\n switch (field.type) {\n case 'array': {\n const arrayValue = Array.isArray(data[field.name]) ? data[field.name] : []\n\n const { promises, rowMetadata } = arrayValue.reduce(\n (acc, row, i) => {\n const rowPath = `${path}${field.name}.${i}.`\n row.id = row?.id || new ObjectId().toHexString()\n\n if (!omitParents && (!filter || filter(args))) {\n state[`${rowPath}id`] = {\n fieldSchema: includeSchema\n ? field.fields.find((field) => 'name' in field && field.name === 'id')\n : undefined,\n initialValue: row.id,\n valid: true,\n value: row.id,\n }\n }\n\n acc.promises.push(\n iterateFields({\n id,\n addErrorPathToParent,\n anyParentLocalized: field.localized || anyParentLocalized,\n data: row,\n fields: field.fields,\n filter,\n forceFullValue,\n fullData,\n includeSchema,\n omitParents,\n operation,\n parentPassesCondition: passesCondition,\n path: rowPath,\n preferences,\n req,\n skipConditionChecks,\n skipValidation,\n state,\n }),\n )\n\n const collapsedRowIDs = preferences?.fields?.[`${path}${field.name}`]?.collapsed\n\n acc.rowMetadata.push({\n id: row.id,\n collapsed:\n collapsedRowIDs === undefined\n ? field.admin.initCollapsed\n : collapsedRowIDs.includes(row.id),\n })\n\n return acc\n },\n {\n promises: [],\n rowMetadata: [],\n },\n )\n\n await Promise.all(promises)\n\n // Add values to field state\n if (data[field.name] === null) {\n fieldState.value = null\n fieldState.initialValue = null\n } else {\n fieldState.value = forceFullValue ? arrayValue : arrayValue.length\n fieldState.initialValue = forceFullValue ? arrayValue : arrayValue.length\n\n if (arrayValue.length > 0) {\n fieldState.disableFormData = true\n }\n }\n\n fieldState.rows = rowMetadata\n\n // Add field to state\n if (!omitParents && (!filter || filter(args))) {\n state[`${path}${field.name}`] = fieldState\n }\n\n break\n }\n\n case 'blocks': {\n const blocksValue = Array.isArray(data[field.name]) ? data[field.name] : []\n\n const { promises, rowMetadata } = blocksValue.reduce(\n (acc, row, i) => {\n const block = field.blocks.find((blockType) => blockType.slug === row.blockType)\n const rowPath = `${path}${field.name}.${i}.`\n\n if (block) {\n row.id = row?.id || new ObjectId().toHexString()\n\n if (!omitParents && (!filter || filter(args))) {\n state[`${rowPath}id`] = {\n fieldSchema: includeSchema\n ? block.fields.find(\n (blockField) => 'name' in blockField && blockField.name === 'id',\n )\n : undefined,\n initialValue: row.id,\n valid: true,\n value: row.id,\n }\n\n state[`${rowPath}blockType`] = {\n fieldSchema: includeSchema\n ? block.fields.find(\n (blockField) => 'name' in blockField && blockField.name === 'blockType',\n )\n : undefined,\n initialValue: row.blockType,\n valid: true,\n value: row.blockType,\n }\n\n state[`${rowPath}blockName`] = {\n fieldSchema: includeSchema\n ? block.fields.find(\n (blockField) => 'name' in blockField && blockField.name === 'blockName',\n )\n : undefined,\n initialValue: row.blockName,\n valid: true,\n value: row.blockName,\n }\n }\n\n acc.promises.push(\n iterateFields({\n id,\n addErrorPathToParent,\n anyParentLocalized: field.localized || anyParentLocalized,\n data: row,\n fields: block.fields,\n filter,\n forceFullValue,\n fullData,\n includeSchema,\n omitParents,\n operation,\n parentPassesCondition: passesCondition,\n path: rowPath,\n preferences,\n req,\n skipConditionChecks,\n skipValidation,\n state,\n }),\n )\n\n const collapsedRowIDs = preferences?.fields?.[`${path}${field.name}`]?.collapsed\n\n acc.rowMetadata.push({\n id: row.id,\n blockType: row.blockType,\n collapsed:\n collapsedRowIDs === undefined\n ? field.admin.initCollapsed\n : collapsedRowIDs.includes(row.id),\n })\n }\n\n return acc\n },\n {\n promises: [],\n rowMetadata: [],\n },\n )\n\n await Promise.all(promises)\n\n // Add values to field state\n if (data[field.name] === null) {\n fieldState.value = null\n fieldState.initialValue = null\n } else {\n fieldState.value = forceFullValue ? blocksValue : blocksValue.length\n fieldState.initialValue = forceFullValue ? blocksValue : blocksValue.length\n\n if (blocksValue.length > 0) {\n fieldState.disableFormData = true\n }\n }\n\n fieldState.rows = rowMetadata\n\n // Add field to state\n if (!omitParents && (!filter || filter(args))) {\n state[`${path}${field.name}`] = fieldState\n }\n\n break\n }\n\n case 'group': {\n if (!filter || filter(args)) {\n fieldState.disableFormData = true\n state[`${path}${field.name}`] = fieldState\n }\n\n await iterateFields({\n id,\n addErrorPathToParent,\n anyParentLocalized: field.localized || anyParentLocalized,\n data: data?.[field.name] || {},\n fields: field.fields,\n filter,\n forceFullValue,\n fullData,\n includeSchema,\n omitParents,\n operation,\n parentPassesCondition: passesCondition,\n path: `${path}${field.name}.`,\n preferences,\n req,\n skipConditionChecks,\n skipValidation,\n state,\n })\n\n break\n }\n\n case 'relationship': {\n if (field.filterOptions) {\n if (typeof field.filterOptions === 'object') {\n if (typeof field.relationTo === 'string') {\n fieldState.filterOptions = {\n [field.relationTo]: field.filterOptions,\n }\n } else {\n fieldState.filterOptions = field.relationTo.reduce((acc, relation) => {\n acc[relation] = field.filterOptions\n return acc\n }, {})\n }\n }\n\n if (typeof field.filterOptions === 'function') {\n const query = await getFilterOptionsQuery(field.filterOptions, {\n id,\n data: fullData,\n relationTo: field.relationTo,\n siblingData: data,\n user: req.user,\n })\n\n fieldState.filterOptions = query\n }\n }\n\n if (field.hasMany) {\n const relationshipValue = Array.isArray(data[field.name])\n ? data[field.name].map((relationship) => {\n if (Array.isArray(field.relationTo)) {\n return {\n relationTo: relationship.relationTo,\n value:\n relationship.value && typeof relationship.value === 'object'\n ? relationship.value?.id\n : relationship.value,\n }\n }\n if (typeof relationship === 'object' && relationship !== null) {\n return relationship.id\n }\n return relationship\n })\n : undefined\n\n fieldState.value = relationshipValue\n fieldState.initialValue = relationshipValue\n } else if (Array.isArray(field.relationTo)) {\n if (\n data[field.name] &&\n typeof data[field.name] === 'object' &&\n 'relationTo' in data[field.name] &&\n 'value' in data[field.name]\n ) {\n const value =\n typeof data[field.name]?.value === 'object' &&\n data[field.name]?.value &&\n 'id' in data[field.name].value\n ? data[field.name].value.id\n : data[field.name].value\n const relationshipValue = {\n relationTo: data[field.name]?.relationTo,\n value,\n }\n fieldState.value = relationshipValue\n fieldState.initialValue = relationshipValue\n }\n } else {\n const relationshipValue =\n data[field.name] && typeof data[field.name] === 'object' && 'id' in data[field.name]\n ? data[field.name].id\n : data[field.name]\n fieldState.value = relationshipValue\n fieldState.initialValue = relationshipValue\n }\n\n if (!filter || filter(args)) {\n state[`${path}${field.name}`] = fieldState\n }\n\n break\n }\n\n case 'upload': {\n if (field.filterOptions) {\n if (typeof field.filterOptions === 'object') {\n fieldState.filterOptions = {\n [field.relationTo]: field.filterOptions,\n }\n }\n\n if (typeof field.filterOptions === 'function') {\n const query = await getFilterOptionsQuery(field.filterOptions, {\n id,\n data: fullData,\n relationTo: field.relationTo,\n siblingData: data,\n user: req.user,\n })\n\n fieldState.filterOptions = query\n }\n }\n\n const relationshipValue =\n data[field.name] && typeof data[field.name] === 'object' && 'id' in data[field.name]\n ? data[field.name].id\n : data[field.name]\n fieldState.value = relationshipValue\n fieldState.initialValue = relationshipValue\n\n if (!filter || filter(args)) {\n state[`${path}${field.name}`] = fieldState\n }\n\n break\n }\n\n default: {\n fieldState.value = data[field.name]\n fieldState.initialValue = data[field.name]\n\n // Add field to state\n if (!filter || filter(args)) {\n state[`${path}${field.name}`] = fieldState\n }\n\n break\n }\n }\n } else if (fieldHasSubFields(field)) {\n // Handle field types that do not use names (row, etc)\n\n if (!filter || filter(args)) {\n state[`${path}_index-${fieldIndex}`] = {\n disableFormData: true,\n errorPaths: [],\n initialValue: undefined,\n passesCondition,\n valid: true,\n value: undefined,\n }\n }\n\n await iterateFields({\n id,\n // passthrough parent functionality\n addErrorPathToParent: addErrorPathToParentArg,\n anyParentLocalized: field.localized || anyParentLocalized,\n data,\n fields: field.fields,\n filter,\n forceFullValue,\n fullData,\n includeSchema,\n omitParents,\n operation,\n parentPassesCondition: passesCondition,\n path,\n preferences,\n req,\n skipConditionChecks,\n skipValidation,\n state,\n })\n } else if (field.type === 'tabs') {\n const promises = field.tabs.map((tab) => {\n const isNamedTab = tabHasName(tab)\n\n return iterateFields({\n id,\n // passthrough parent functionality\n addErrorPathToParent: addErrorPathToParentArg,\n anyParentLocalized: tab.localized || anyParentLocalized,\n data: isNamedTab ? data?.[tab.name] || {} : data,\n fields: tab.fields,\n filter,\n forceFullValue,\n fullData,\n includeSchema,\n omitParents,\n operation,\n parentPassesCondition: passesCondition,\n path: isNamedTab ? `${path}${tab.name}.` : path,\n preferences,\n req,\n skipConditionChecks,\n skipValidation,\n state,\n })\n })\n\n await Promise.all(promises)\n } else if (field.type === 'ui') {\n if (!filter || filter(args)) {\n state[`${path}_index-${fieldIndex}`] = {\n disableFormData: true,\n errorPaths: [],\n initialValue: undefined,\n passesCondition,\n valid: true,\n value: undefined,\n }\n }\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"addFieldStatePromise.js","names":["ObjectIdImport","fieldAffectsData","fieldHasSubFields","tabHasName","getFilterOptionsQuery","iterateFields","ObjectId","default","addFieldStatePromise","args","id","addErrorPathToParent","addErrorPathToParentArg","anyParentLocalized","collectionSlug","data","field","fieldIndex","filter","forceFullValue","fullData","includeSchema","omitParents","operation","passesCondition","path","preferences","req","skipConditionChecks","skipValidation","state","validate","fieldState","errorPaths","fieldSchema","undefined","initialValue","valid","value","validationResult","jsonError","type","name","JSON","parse","e","siblingData","errorPath","includes","push","errorMessage","arrayValue","Array","isArray","promises","rowMetadata","reduce","acc","row","i","rowPath","toHexString","fields","find","localized","parentPassesCondition","collapsedRowIDs","collapsed","admin","initCollapsed","Promise","all","length","disableFormData","rows","blocksValue","block","blocks","blockType","slug","blockField","blockName","filterOptions","relationTo","relation","query","user","hasMany","relationshipValue","map","relationship","tabs","tab","isNamedTab"],"sources":["../../../src/forms/buildStateFromSchema/addFieldStatePromise.ts"],"sourcesContent":["import type {\n Data,\n DocumentPreferences,\n Field,\n FilterOptionsResult,\n FormField,\n FormState,\n PayloadRequest,\n} from 'payload'\n\nimport ObjectIdImport from 'bson-objectid'\nimport { fieldAffectsData, fieldHasSubFields, tabHasName } from 'payload/shared'\n\nimport { getFilterOptionsQuery } from './getFilterOptionsQuery.js'\nimport { iterateFields } from './iterateFields.js'\n\nconst ObjectId = (ObjectIdImport.default ||\n ObjectIdImport) as unknown as typeof ObjectIdImport.default\n\nexport type AddFieldStatePromiseArgs = {\n addErrorPathToParent: (path: string) => void\n /**\n * if all parents are localized, then the field is localized\n */\n anyParentLocalized?: boolean\n collectionSlug?: string\n data: Data\n field: Field\n fieldIndex: number\n /**\n * You can use this to filter down to only `localized` fields that require translation (type: text, textarea, etc.). Another plugin might want to look for only `point` type fields to do some GIS function. With the filter function you can go in like a surgeon.\n */\n filter?: (args: AddFieldStatePromiseArgs) => boolean\n /**\n * Force the value of fields like arrays or blocks to be the full value instead of the length @default false\n */\n forceFullValue?: boolean\n fullData: Data\n id: number | string\n /**\n * Whether the field schema should be included in the state\n */\n includeSchema?: boolean\n /**\n * Whether to omit parent fields in the state. @default false\n */\n omitParents?: boolean\n operation: 'create' | 'update'\n passesCondition: boolean\n path: string\n\n preferences: DocumentPreferences\n /**\n * Req is used for validation and defaultValue calculation. If you don't need validation,\n * just create your own req and pass in the locale and the user\n */\n req: PayloadRequest\n /**\n * Whether to skip checking the field's condition. @default false\n */\n skipConditionChecks?: boolean\n /**\n * Whether to skip validating the field. @default false\n */\n skipValidation?: boolean\n state: FormState\n}\n\n/**\n * Flattens the fields schema and fields data.\n * The output is the field path (e.g. array.0.name) mapped to a FormField object.\n */\nexport const addFieldStatePromise = async (args: AddFieldStatePromiseArgs): Promise<void> => {\n const {\n id,\n addErrorPathToParent: addErrorPathToParentArg,\n anyParentLocalized = false,\n collectionSlug,\n data,\n field,\n fieldIndex,\n filter,\n forceFullValue = false,\n fullData,\n includeSchema = false,\n omitParents = false,\n operation,\n passesCondition,\n path,\n preferences,\n req,\n skipConditionChecks = false,\n skipValidation = false,\n state,\n } = args\n\n if (fieldAffectsData(field)) {\n const validate = field.validate\n\n const fieldState: FormField = {\n errorPaths: [],\n fieldSchema: includeSchema ? field : undefined,\n initialValue: undefined,\n passesCondition,\n valid: true,\n value: undefined,\n }\n\n let validationResult: string | true = true\n\n if (typeof validate === 'function' && !skipValidation && passesCondition) {\n let jsonError\n\n if (field.type === 'json' && typeof data[field.name] === 'string') {\n try {\n JSON.parse(data[field.name] as string)\n } catch (e) {\n jsonError = e\n }\n }\n\n validationResult = await validate(data?.[field.name], {\n ...field,\n id,\n collectionSlug,\n data: fullData,\n operation,\n req,\n siblingData: data,\n // @ts-expect-error-next-line\n jsonError,\n preferences,\n })\n }\n\n const addErrorPathToParent = (errorPath: string) => {\n if (typeof addErrorPathToParentArg === 'function') {\n addErrorPathToParentArg(errorPath)\n }\n\n if (!fieldState.errorPaths.includes(errorPath)) {\n fieldState.errorPaths.push(errorPath)\n fieldState.valid = false\n }\n }\n\n if (typeof validationResult === 'string') {\n fieldState.errorMessage = validationResult\n fieldState.valid = false\n addErrorPathToParent(`${path}${field.name}`)\n } else {\n fieldState.valid = true\n }\n\n switch (field.type) {\n case 'array': {\n const arrayValue = Array.isArray(data[field.name]) ? data[field.name] : []\n\n const { promises, rowMetadata } = arrayValue.reduce(\n (acc, row, i) => {\n const rowPath = `${path}${field.name}.${i}.`\n row.id = row?.id || new ObjectId().toHexString()\n\n if (!omitParents && (!filter || filter(args))) {\n state[`${rowPath}id`] = {\n fieldSchema: includeSchema\n ? field.fields.find((field) => 'name' in field && field.name === 'id')\n : undefined,\n initialValue: row.id,\n valid: true,\n value: row.id,\n }\n }\n\n acc.promises.push(\n iterateFields({\n id,\n addErrorPathToParent,\n anyParentLocalized: field.localized || anyParentLocalized,\n data: row,\n fields: field.fields,\n filter,\n forceFullValue,\n fullData,\n includeSchema,\n omitParents,\n operation,\n parentPassesCondition: passesCondition,\n path: rowPath,\n preferences,\n req,\n skipConditionChecks,\n skipValidation,\n state,\n }),\n )\n\n const collapsedRowIDs = preferences?.fields?.[`${path}${field.name}`]?.collapsed\n\n acc.rowMetadata.push({\n id: row.id,\n collapsed:\n collapsedRowIDs === undefined\n ? field.admin.initCollapsed\n : collapsedRowIDs.includes(row.id),\n })\n\n return acc\n },\n {\n promises: [],\n rowMetadata: [],\n },\n )\n\n await Promise.all(promises)\n\n // Add values to field state\n if (data[field.name] === null) {\n fieldState.value = null\n fieldState.initialValue = null\n } else {\n fieldState.value = forceFullValue ? arrayValue : arrayValue.length\n fieldState.initialValue = forceFullValue ? arrayValue : arrayValue.length\n\n if (arrayValue.length > 0) {\n fieldState.disableFormData = true\n }\n }\n\n fieldState.rows = rowMetadata\n\n // Add field to state\n if (!omitParents && (!filter || filter(args))) {\n state[`${path}${field.name}`] = fieldState\n }\n\n break\n }\n\n case 'blocks': {\n const blocksValue = Array.isArray(data[field.name]) ? data[field.name] : []\n\n const { promises, rowMetadata } = blocksValue.reduce(\n (acc, row, i) => {\n const block = field.blocks.find((blockType) => blockType.slug === row.blockType)\n const rowPath = `${path}${field.name}.${i}.`\n\n if (block) {\n row.id = row?.id || new ObjectId().toHexString()\n\n if (!omitParents && (!filter || filter(args))) {\n state[`${rowPath}id`] = {\n fieldSchema: includeSchema\n ? block.fields.find(\n (blockField) => 'name' in blockField && blockField.name === 'id',\n )\n : undefined,\n initialValue: row.id,\n valid: true,\n value: row.id,\n }\n\n state[`${rowPath}blockType`] = {\n fieldSchema: includeSchema\n ? block.fields.find(\n (blockField) => 'name' in blockField && blockField.name === 'blockType',\n )\n : undefined,\n initialValue: row.blockType,\n valid: true,\n value: row.blockType,\n }\n\n state[`${rowPath}blockName`] = {\n fieldSchema: includeSchema\n ? block.fields.find(\n (blockField) => 'name' in blockField && blockField.name === 'blockName',\n )\n : undefined,\n initialValue: row.blockName,\n valid: true,\n value: row.blockName,\n }\n }\n\n acc.promises.push(\n iterateFields({\n id,\n addErrorPathToParent,\n anyParentLocalized: field.localized || anyParentLocalized,\n data: row,\n fields: block.fields,\n filter,\n forceFullValue,\n fullData,\n includeSchema,\n omitParents,\n operation,\n parentPassesCondition: passesCondition,\n path: rowPath,\n preferences,\n req,\n skipConditionChecks,\n skipValidation,\n state,\n }),\n )\n\n const collapsedRowIDs = preferences?.fields?.[`${path}${field.name}`]?.collapsed\n\n acc.rowMetadata.push({\n id: row.id,\n blockType: row.blockType,\n collapsed:\n collapsedRowIDs === undefined\n ? field.admin.initCollapsed\n : collapsedRowIDs.includes(row.id),\n })\n }\n\n return acc\n },\n {\n promises: [],\n rowMetadata: [],\n },\n )\n\n await Promise.all(promises)\n\n // Add values to field state\n if (data[field.name] === null) {\n fieldState.value = null\n fieldState.initialValue = null\n } else {\n fieldState.value = forceFullValue ? blocksValue : blocksValue.length\n fieldState.initialValue = forceFullValue ? blocksValue : blocksValue.length\n\n if (blocksValue.length > 0) {\n fieldState.disableFormData = true\n }\n }\n\n fieldState.rows = rowMetadata\n\n // Add field to state\n if (!omitParents && (!filter || filter(args))) {\n state[`${path}${field.name}`] = fieldState\n }\n\n break\n }\n\n case 'group': {\n if (!filter || filter(args)) {\n fieldState.disableFormData = true\n state[`${path}${field.name}`] = fieldState\n }\n\n await iterateFields({\n id,\n addErrorPathToParent,\n anyParentLocalized: field.localized || anyParentLocalized,\n data: data?.[field.name] || {},\n fields: field.fields,\n filter,\n forceFullValue,\n fullData,\n includeSchema,\n omitParents,\n operation,\n parentPassesCondition: passesCondition,\n path: `${path}${field.name}.`,\n preferences,\n req,\n skipConditionChecks,\n skipValidation,\n state,\n })\n\n break\n }\n case 'upload':\n case 'relationship': {\n if (field.filterOptions) {\n if (typeof field.filterOptions === 'object') {\n if (typeof field.relationTo === 'string') {\n fieldState.filterOptions = {\n [field.relationTo]: field.filterOptions,\n }\n } else {\n fieldState.filterOptions = field.relationTo.reduce((acc, relation) => {\n acc[relation] = field.filterOptions\n return acc\n }, {})\n }\n }\n\n if (typeof field.filterOptions === 'function') {\n const query = await getFilterOptionsQuery(field.filterOptions, {\n id,\n data: fullData,\n relationTo: field.relationTo,\n siblingData: data,\n user: req.user,\n })\n\n fieldState.filterOptions = query\n }\n }\n\n if (field.hasMany) {\n const relationshipValue = Array.isArray(data[field.name])\n ? data[field.name].map((relationship) => {\n if (Array.isArray(field.relationTo)) {\n return {\n relationTo: relationship.relationTo,\n value:\n relationship.value && typeof relationship.value === 'object'\n ? relationship.value?.id\n : relationship.value,\n }\n }\n if (typeof relationship === 'object' && relationship !== null) {\n return relationship.id\n }\n return relationship\n })\n : undefined\n\n fieldState.value = relationshipValue\n fieldState.initialValue = relationshipValue\n } else if (Array.isArray(field.relationTo)) {\n if (\n data[field.name] &&\n typeof data[field.name] === 'object' &&\n 'relationTo' in data[field.name] &&\n 'value' in data[field.name]\n ) {\n const value =\n typeof data[field.name]?.value === 'object' &&\n data[field.name]?.value &&\n 'id' in data[field.name].value\n ? data[field.name].value.id\n : data[field.name].value\n const relationshipValue = {\n relationTo: data[field.name]?.relationTo,\n value,\n }\n fieldState.value = relationshipValue\n fieldState.initialValue = relationshipValue\n }\n } else {\n const relationshipValue =\n data[field.name] && typeof data[field.name] === 'object' && 'id' in data[field.name]\n ? data[field.name].id\n : data[field.name]\n fieldState.value = relationshipValue\n fieldState.initialValue = relationshipValue\n }\n\n if (!filter || filter(args)) {\n state[`${path}${field.name}`] = fieldState\n }\n\n break\n }\n\n default: {\n fieldState.value = data[field.name]\n fieldState.initialValue = data[field.name]\n\n // Add field to state\n if (!filter || filter(args)) {\n state[`${path}${field.name}`] = fieldState\n }\n\n break\n }\n }\n } else if (fieldHasSubFields(field)) {\n // Handle field types that do not use names (row, etc)\n\n if (!filter || filter(args)) {\n state[`${path}_index-${fieldIndex}`] = {\n disableFormData: true,\n errorPaths: [],\n initialValue: undefined,\n passesCondition,\n valid: true,\n value: undefined,\n }\n }\n\n await iterateFields({\n id,\n // passthrough parent functionality\n addErrorPathToParent: addErrorPathToParentArg,\n anyParentLocalized: field.localized || anyParentLocalized,\n data,\n fields: field.fields,\n filter,\n forceFullValue,\n fullData,\n includeSchema,\n omitParents,\n operation,\n parentPassesCondition: passesCondition,\n path,\n preferences,\n req,\n skipConditionChecks,\n skipValidation,\n state,\n })\n } else if (field.type === 'tabs') {\n const promises = field.tabs.map((tab) => {\n const isNamedTab = tabHasName(tab)\n\n return iterateFields({\n id,\n // passthrough parent functionality\n addErrorPathToParent: addErrorPathToParentArg,\n anyParentLocalized: tab.localized || anyParentLocalized,\n data: isNamedTab ? data?.[tab.name] || {} : data,\n fields: tab.fields,\n filter,\n forceFullValue,\n fullData,\n includeSchema,\n omitParents,\n operation,\n parentPassesCondition: passesCondition,\n path: isNamedTab ? `${path}${tab.name}.` : path,\n preferences,\n req,\n skipConditionChecks,\n skipValidation,\n state,\n })\n })\n\n await Promise.all(promises)\n } else if (field.type === 'ui') {\n if (!filter || filter(args)) {\n state[`${path}_index-${fieldIndex}`] = {\n disableFormData: true,\n errorPaths: [],\n initialValue: undefined,\n passesCondition,\n valid: true,\n value: undefined,\n }\n }\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"collections.d.ts","sourceRoot":"","sources":["../../../../src/providers/Config/createClientConfig/collections.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAC1D,OAAO,KAAK,EACV,cAAc,EACd,sBAAsB,EACtB,qBAAqB,EAErB,aAAa,EACb,SAAS,EAET,OAAO,EACP,yBAAyB,EAG1B,MAAM,SAAS,CAAA;AAChB,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAM9B,eAAO,MAAM,4BAA4B,yHAStC;IACD,eAAe,EAAE,KAAK,CAAC,EAAE,CAAC,aAAa,CAAC,CAAA;IACxC,eAAe,EAAE,KAAK,CAAC,EAAE,CAAC,cAAc,CAAC,CAAA;IACzC,gBAAgB,EAAE,sBAAsB,CAAA;IACxC,UAAU,EAAE,yBAAyB,CAAA;IACrC,qBAAqB,EAAE,qBAAqB,CAAA;IAC5C,IAAI,EAAE,UAAU,CAAA;IAChB,SAAS,EAAE,SAAS,CAAA;IACpB,OAAO,EAAE,OAAO,CAAA;CACjB,KAAG,sBAmUH,CAAA;AAED,eAAO,MAAM,6BAA6B,2HASvC;IACD,eAAe,EAAE,KAAK,CAAC,EAAE,CAAC,aAAa,CAAC,CAAA;IACxC,eAAe,EAAE,KAAK,CAAC,EAAE,CAAC,cAAc,CAAC,CAAA;IACzC,iBAAiB,EAAE,sBAAsB,EAAE,CAAA;IAC3C,WAAW,EAAE,yBAAyB,EAAE,CAAA;IACxC,qBAAqB,EAAE,qBAAqB,CAAA;IAC5C,IAAI,EAAE,UAAU,CAAA;IAChB,SAAS,EAAE,SAAS,CAAA;IACpB,OAAO,EAAE,OAAO,CAAA;CACjB,KAAG,sBAAsB,EAiBzB,CAAA"}
1
+ {"version":3,"file":"collections.d.ts","sourceRoot":"","sources":["../../../../src/providers/Config/createClientConfig/collections.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAC1D,OAAO,KAAK,EACV,cAAc,EACd,sBAAsB,EACtB,qBAAqB,EAErB,aAAa,EACb,SAAS,EAET,OAAO,EACP,yBAAyB,EAG1B,MAAM,SAAS,CAAA;AAChB,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAM9B,eAAO,MAAM,4BAA4B,yHAStC;IACD,eAAe,EAAE,KAAK,CAAC,EAAE,CAAC,aAAa,CAAC,CAAA;IACxC,eAAe,EAAE,KAAK,CAAC,EAAE,CAAC,cAAc,CAAC,CAAA;IACzC,gBAAgB,EAAE,sBAAsB,CAAA;IACxC,UAAU,EAAE,yBAAyB,CAAA;IACrC,qBAAqB,EAAE,qBAAqB,CAAA;IAC5C,IAAI,EAAE,UAAU,CAAA;IAChB,SAAS,EAAE,SAAS,CAAA;IACpB,OAAO,EAAE,OAAO,CAAA;CACjB,KAAG,sBAiUH,CAAA;AAED,eAAO,MAAM,6BAA6B,2HASvC;IACD,eAAe,EAAE,KAAK,CAAC,EAAE,CAAC,aAAa,CAAC,CAAA;IACxC,eAAe,EAAE,KAAK,CAAC,EAAE,CAAC,cAAc,CAAC,CAAA;IACzC,iBAAiB,EAAE,sBAAsB,EAAE,CAAA;IAC3C,WAAW,EAAE,yBAAyB,EAAE,CAAA;IACxC,qBAAqB,EAAE,qBAAqB,CAAA;IAC5C,IAAI,EAAE,UAAU,CAAA;IAChB,SAAS,EAAE,SAAS,CAAA;IACpB,OAAO,EAAE,OAAO,CAAA;CACjB,KAAG,sBAAsB,EAiBzB,CAAA"}
@@ -106,14 +106,13 @@ export const createClientCollectionConfig = ({
106
106
  }
107
107
  }
108
108
  clientCollection.admin.description = description;
109
- if (collection.admin.components.edit?.Description) {
110
- clientCollection.admin.components.edit.Description = createMappedComponent(collection.admin.components.edit.Description, {
109
+ if (collection.admin.components?.Description) {
110
+ clientCollection.admin.components.Description = createMappedComponent(collection.admin.components.Description, {
111
111
  clientProps: {
112
112
  description
113
113
  }
114
- }, undefined, 'collection.admin.components.edit.Description');
114
+ }, undefined, 'collection.admin.components.Description');
115
115
  }
116
- clientCollection.admin.description = description;
117
116
  clientCollection.admin.components.views = collection?.admin?.components?.views ? deepCopyObjectSimple(collection?.admin?.components?.views) : {};
118
117
  const hasEditView = 'admin' in collection && 'components' in collection.admin && 'views' in collection.admin.components && 'edit' in collection.admin.components.views && 'default' in collection.admin.components.views.edit;
119
118
  if (!clientCollection.admin.components.views.edit) {
@@ -1 +1 @@
1
- {"version":3,"file":"collections.js","names":["deepCopyObjectSimple","createClientFields","createClientCollectionConfig","DefaultEditView","DefaultListView","clientCollection","collection","createMappedComponent","i18n","importMap","payload","fields","clientFields","serverOnlyCollectionProperties","forEach","key","upload","handlers","adminThumbnail","externalFileHeaderFilter","withMetadata","imageSizes","length","map","size","sanitizedSize","generateImageName","auth","strategies","forgotPassword","verify","labels","Object","entries","labelType","collectionLabel","t","serverOnlyCollectionAdminProperties","admin","preview","_isPreviewEnabled","components","edit","PreviewButton","undefined","PublishButton","SaveButton","SaveDraftButton","Upload","beforeList","Component","beforeListTable","afterList","afterListTable","description","Description","clientProps","views","hasEditView","default","collectionSlug","slug","view","actions","hasListView","list","livePreview","url","createClientCollectionConfigs","clientCollections","collections","i"],"sources":["../../../../src/providers/Config/createClientConfig/collections.tsx"],"sourcesContent":["import type { I18nClient } from '@payloadcms/translations'\nimport type {\n AdminViewProps,\n ClientCollectionConfig,\n CreateMappedComponent,\n EditViewConfig,\n EditViewProps,\n ImportMap,\n MappedView,\n Payload,\n SanitizedCollectionConfig,\n ServerOnlyCollectionAdminProperties,\n ServerOnlyCollectionProperties,\n} from 'payload'\nimport type React from 'react'\n\nimport { deepCopyObjectSimple } from 'payload'\n\nimport { createClientFields } from './fields.js'\n\nexport const createClientCollectionConfig = ({\n DefaultEditView,\n DefaultListView,\n clientCollection,\n collection,\n createMappedComponent,\n i18n,\n importMap,\n payload,\n}: {\n DefaultEditView: React.FC<EditViewProps>\n DefaultListView: React.FC<AdminViewProps>\n clientCollection: ClientCollectionConfig\n collection: SanitizedCollectionConfig\n createMappedComponent: CreateMappedComponent\n i18n: I18nClient\n importMap: ImportMap\n payload: Payload\n}): ClientCollectionConfig => {\n clientCollection.fields = createClientFields({\n clientFields: clientCollection.fields,\n createMappedComponent,\n fields: collection.fields,\n i18n,\n importMap,\n payload,\n })\n\n const serverOnlyCollectionProperties: Partial<ServerOnlyCollectionProperties>[] = [\n 'hooks',\n 'access',\n 'endpoints',\n 'custom',\n // `upload`\n // `admin`\n // are all handled separately\n ]\n\n serverOnlyCollectionProperties.forEach((key) => {\n if (key in clientCollection) {\n delete clientCollection[key]\n }\n })\n\n if ('upload' in clientCollection && typeof clientCollection.upload === 'object') {\n delete clientCollection.upload.handlers\n delete clientCollection.upload.adminThumbnail\n delete clientCollection.upload.externalFileHeaderFilter\n delete clientCollection.upload.withMetadata\n\n if ('imageSizes' in clientCollection.upload && clientCollection.upload.imageSizes.length) {\n clientCollection.upload.imageSizes = clientCollection.upload.imageSizes.map((size) => {\n const sanitizedSize = { ...size }\n if ('generateImageName' in sanitizedSize) delete sanitizedSize.generateImageName\n return sanitizedSize\n })\n }\n }\n\n if ('auth' in clientCollection && typeof clientCollection.auth === 'object') {\n delete clientCollection.auth.strategies\n delete clientCollection.auth.forgotPassword\n delete clientCollection.auth.verify\n }\n\n if (collection.labels) {\n Object.entries(collection.labels).forEach(([labelType, collectionLabel]) => {\n if (typeof collectionLabel === 'function') {\n clientCollection.labels[labelType] = collectionLabel({ t: i18n.t })\n }\n })\n }\n\n const serverOnlyCollectionAdminProperties: Partial<ServerOnlyCollectionAdminProperties>[] = [\n 'hidden',\n 'preview',\n // `livePreview` is handled separately\n ]\n\n serverOnlyCollectionAdminProperties.forEach((key) => {\n if (key in clientCollection.admin) {\n delete clientCollection.admin[key]\n }\n })\n\n if (collection.admin.preview) {\n clientCollection._isPreviewEnabled = true\n }\n\n clientCollection.admin.components = {} as ClientCollectionConfig['admin']['components']\n\n if (collection?.admin?.components) {\n if (collection.admin.components?.edit) {\n clientCollection.admin.components.edit =\n {} as ClientCollectionConfig['admin']['components']['edit']\n\n if (collection.admin.components.edit?.PreviewButton) {\n clientCollection.admin.components.edit.PreviewButton = createMappedComponent(\n collection.admin.components.edit.PreviewButton,\n undefined,\n undefined,\n 'collection.admin.components.edit.PreviewButton',\n )\n }\n\n if (collection.admin.components.edit?.PublishButton) {\n clientCollection.admin.components.edit.PublishButton = createMappedComponent(\n collection.admin.components.edit.PublishButton,\n undefined,\n undefined,\n 'collection.admin.components.edit.PublishButton',\n )\n }\n\n if (collection.admin.components.edit?.SaveButton) {\n clientCollection.admin.components.edit.SaveButton = createMappedComponent(\n collection.admin.components.edit.SaveButton,\n undefined,\n undefined,\n 'collection.admin.components.edit.SaveButton',\n )\n }\n\n if (collection.admin.components.edit?.SaveDraftButton) {\n clientCollection.admin.components.edit.SaveDraftButton = createMappedComponent(\n collection.admin.components.edit.SaveDraftButton,\n undefined,\n undefined,\n 'collection.admin.components.edit.SaveDraftButton',\n )\n }\n\n if (collection.admin.components.edit?.Upload) {\n clientCollection.admin.components.edit.Upload = createMappedComponent(\n collection.admin.components.edit.Upload,\n undefined,\n undefined,\n 'collection.admin.components.edit.Upload',\n )\n }\n }\n\n if (collection.admin.components?.beforeList) {\n clientCollection.admin.components.beforeList = collection.admin.components.beforeList.map(\n (Component) =>\n createMappedComponent(\n Component,\n undefined,\n undefined,\n 'collection.admin.components.beforeList',\n ),\n )\n }\n\n if (collection.admin.components?.beforeListTable) {\n clientCollection.admin.components.beforeListTable =\n collection.admin.components.beforeListTable.map((Component) =>\n createMappedComponent(\n Component,\n undefined,\n undefined,\n 'collection.admin.components.beforeListTable',\n ),\n )\n }\n\n if (collection.admin.components?.afterList) {\n clientCollection.admin.components.afterList = collection.admin.components.afterList.map(\n (Component) =>\n createMappedComponent(\n Component,\n undefined,\n undefined,\n 'collection.admin.components.afterList',\n ),\n )\n }\n\n if (collection.admin.components?.afterListTable) {\n clientCollection.admin.components.afterListTable =\n collection.admin.components.afterListTable.map((Component) =>\n createMappedComponent(\n Component,\n undefined,\n undefined,\n 'collection.admin.components.afterListTable',\n ),\n )\n }\n }\n\n let description = undefined\n\n if (collection.admin?.description) {\n if (\n typeof collection.admin?.description === 'string' ||\n typeof collection.admin?.description === 'object'\n ) {\n description = collection.admin.description\n } else if (typeof collection.admin?.description === 'function') {\n description = collection.admin?.description({ t: i18n.t })\n }\n }\n\n clientCollection.admin.description = description\n\n if (collection.admin.components.edit?.Description) {\n clientCollection.admin.components.edit.Description = createMappedComponent(\n collection.admin.components.edit.Description,\n {\n clientProps: {\n description,\n },\n },\n undefined,\n 'collection.admin.components.edit.Description',\n )\n }\n\n clientCollection.admin.description = description\n\n clientCollection.admin.components.views = (\n collection?.admin?.components?.views\n ? deepCopyObjectSimple(collection?.admin?.components?.views)\n : {}\n ) as ClientCollectionConfig['admin']['components']['views']\n\n const hasEditView =\n 'admin' in collection &&\n 'components' in collection.admin &&\n 'views' in collection.admin.components &&\n 'edit' in collection.admin.components.views &&\n 'default' in collection.admin.components.views.edit\n\n if (!clientCollection.admin.components.views.edit) {\n clientCollection.admin.components.views.edit =\n {} as ClientCollectionConfig['admin']['components']['views']['edit']\n }\n\n clientCollection.admin.components.views.edit.default = {\n Component: createMappedComponent(\n hasEditView &&\n 'Component' in collection.admin.components.views.edit.default &&\n collection.admin.components.views.edit.default.Component\n ? collection.admin.components.views.edit.default.Component\n : null,\n {\n clientProps: {\n collectionSlug: collection.slug,\n },\n },\n DefaultEditView,\n 'collection.admin.components.views.edit.default',\n ),\n }\n\n if (collection?.admin?.components?.views?.edit) {\n for (const key in collection.admin.components.views.edit) {\n const view: EditViewConfig = collection.admin.components.views.edit[key]\n\n if (!clientCollection.admin.components.views.edit[key]) {\n clientCollection.admin.components.views.edit[key] = {} as MappedView\n }\n\n if ('Component' in view && key !== 'default') {\n clientCollection.admin.components.views.edit[key].Component = createMappedComponent(\n view.Component,\n {\n clientProps: {\n collectionSlug: collection.slug,\n },\n },\n undefined,\n 'collection.admin.components.views.edit.key.Component',\n )\n }\n\n if ('actions' in view && view.actions?.length) {\n clientCollection.admin.components.views.edit[key].actions = view.actions.map((Component) =>\n createMappedComponent(\n Component,\n undefined,\n undefined,\n 'collection.admin.components.views.key.admin',\n ),\n )\n }\n }\n }\n\n const hasListView =\n 'admin' in collection &&\n 'components' in collection.admin &&\n 'views' in collection.admin.components &&\n 'list' in collection.admin.components.views\n\n if (!clientCollection.admin.components.views.list) {\n clientCollection.admin.components.views.list =\n {} as ClientCollectionConfig['admin']['components']['views']['list']\n }\n\n clientCollection.admin.components.views.list.Component = createMappedComponent(\n hasListView &&\n 'Component' in collection.admin.components.views.list &&\n collection.admin.components.views.list.Component\n ? collection.admin.components.views.list.Component\n : null,\n {\n clientProps: {\n collectionSlug: collection.slug,\n },\n },\n DefaultListView,\n 'collection.admin.components.views.list',\n )\n\n if (\n hasListView &&\n 'actions' in collection.admin.components.views.list &&\n collection.admin.components.views.list.actions\n ) {\n clientCollection.admin.components.views.list.actions =\n collection.admin.components.views.list.actions.map((Component) =>\n createMappedComponent(\n Component,\n undefined,\n undefined,\n 'collection.admin.components.views.list',\n ),\n )\n }\n\n if (\n 'livePreview' in clientCollection.admin &&\n clientCollection.admin.livePreview &&\n 'url' in clientCollection.admin.livePreview\n ) {\n delete clientCollection.admin.livePreview.url\n }\n\n return clientCollection\n}\n\nexport const createClientCollectionConfigs = ({\n DefaultEditView,\n DefaultListView,\n clientCollections,\n collections,\n createMappedComponent,\n i18n,\n importMap,\n payload,\n}: {\n DefaultEditView: React.FC<EditViewProps>\n DefaultListView: React.FC<AdminViewProps>\n clientCollections: ClientCollectionConfig[]\n collections: SanitizedCollectionConfig[]\n createMappedComponent: CreateMappedComponent\n i18n: I18nClient\n importMap: ImportMap\n payload: Payload\n}): ClientCollectionConfig[] => {\n for (let i = 0; i < collections.length; i++) {\n const collection = collections[i]\n const clientCollection = clientCollections[i]\n clientCollections[i] = createClientCollectionConfig({\n DefaultEditView,\n DefaultListView,\n clientCollection,\n collection,\n createMappedComponent,\n i18n,\n importMap,\n payload,\n })\n }\n\n return clientCollections\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"collections.js","names":["deepCopyObjectSimple","createClientFields","createClientCollectionConfig","DefaultEditView","DefaultListView","clientCollection","collection","createMappedComponent","i18n","importMap","payload","fields","clientFields","serverOnlyCollectionProperties","forEach","key","upload","handlers","adminThumbnail","externalFileHeaderFilter","withMetadata","imageSizes","length","map","size","sanitizedSize","generateImageName","auth","strategies","forgotPassword","verify","labels","Object","entries","labelType","collectionLabel","t","serverOnlyCollectionAdminProperties","admin","preview","_isPreviewEnabled","components","edit","PreviewButton","undefined","PublishButton","SaveButton","SaveDraftButton","Upload","beforeList","Component","beforeListTable","afterList","afterListTable","description","Description","clientProps","views","hasEditView","default","collectionSlug","slug","view","actions","hasListView","list","livePreview","url","createClientCollectionConfigs","clientCollections","collections","i"],"sources":["../../../../src/providers/Config/createClientConfig/collections.tsx"],"sourcesContent":["import type { I18nClient } from '@payloadcms/translations'\nimport type {\n AdminViewProps,\n ClientCollectionConfig,\n CreateMappedComponent,\n EditViewConfig,\n EditViewProps,\n ImportMap,\n MappedView,\n Payload,\n SanitizedCollectionConfig,\n ServerOnlyCollectionAdminProperties,\n ServerOnlyCollectionProperties,\n} from 'payload'\nimport type React from 'react'\n\nimport { deepCopyObjectSimple } from 'payload'\n\nimport { createClientFields } from './fields.js'\n\nexport const createClientCollectionConfig = ({\n DefaultEditView,\n DefaultListView,\n clientCollection,\n collection,\n createMappedComponent,\n i18n,\n importMap,\n payload,\n}: {\n DefaultEditView: React.FC<EditViewProps>\n DefaultListView: React.FC<AdminViewProps>\n clientCollection: ClientCollectionConfig\n collection: SanitizedCollectionConfig\n createMappedComponent: CreateMappedComponent\n i18n: I18nClient\n importMap: ImportMap\n payload: Payload\n}): ClientCollectionConfig => {\n clientCollection.fields = createClientFields({\n clientFields: clientCollection.fields,\n createMappedComponent,\n fields: collection.fields,\n i18n,\n importMap,\n payload,\n })\n\n const serverOnlyCollectionProperties: Partial<ServerOnlyCollectionProperties>[] = [\n 'hooks',\n 'access',\n 'endpoints',\n 'custom',\n // `upload`\n // `admin`\n // are all handled separately\n ]\n\n serverOnlyCollectionProperties.forEach((key) => {\n if (key in clientCollection) {\n delete clientCollection[key]\n }\n })\n\n if ('upload' in clientCollection && typeof clientCollection.upload === 'object') {\n delete clientCollection.upload.handlers\n delete clientCollection.upload.adminThumbnail\n delete clientCollection.upload.externalFileHeaderFilter\n delete clientCollection.upload.withMetadata\n\n if ('imageSizes' in clientCollection.upload && clientCollection.upload.imageSizes.length) {\n clientCollection.upload.imageSizes = clientCollection.upload.imageSizes.map((size) => {\n const sanitizedSize = { ...size }\n if ('generateImageName' in sanitizedSize) delete sanitizedSize.generateImageName\n return sanitizedSize\n })\n }\n }\n\n if ('auth' in clientCollection && typeof clientCollection.auth === 'object') {\n delete clientCollection.auth.strategies\n delete clientCollection.auth.forgotPassword\n delete clientCollection.auth.verify\n }\n\n if (collection.labels) {\n Object.entries(collection.labels).forEach(([labelType, collectionLabel]) => {\n if (typeof collectionLabel === 'function') {\n clientCollection.labels[labelType] = collectionLabel({ t: i18n.t })\n }\n })\n }\n\n const serverOnlyCollectionAdminProperties: Partial<ServerOnlyCollectionAdminProperties>[] = [\n 'hidden',\n 'preview',\n // `livePreview` is handled separately\n ]\n\n serverOnlyCollectionAdminProperties.forEach((key) => {\n if (key in clientCollection.admin) {\n delete clientCollection.admin[key]\n }\n })\n\n if (collection.admin.preview) {\n clientCollection._isPreviewEnabled = true\n }\n\n clientCollection.admin.components = {} as ClientCollectionConfig['admin']['components']\n\n if (collection?.admin?.components) {\n if (collection.admin.components?.edit) {\n clientCollection.admin.components.edit =\n {} as ClientCollectionConfig['admin']['components']['edit']\n\n if (collection.admin.components.edit?.PreviewButton) {\n clientCollection.admin.components.edit.PreviewButton = createMappedComponent(\n collection.admin.components.edit.PreviewButton,\n undefined,\n undefined,\n 'collection.admin.components.edit.PreviewButton',\n )\n }\n\n if (collection.admin.components.edit?.PublishButton) {\n clientCollection.admin.components.edit.PublishButton = createMappedComponent(\n collection.admin.components.edit.PublishButton,\n undefined,\n undefined,\n 'collection.admin.components.edit.PublishButton',\n )\n }\n\n if (collection.admin.components.edit?.SaveButton) {\n clientCollection.admin.components.edit.SaveButton = createMappedComponent(\n collection.admin.components.edit.SaveButton,\n undefined,\n undefined,\n 'collection.admin.components.edit.SaveButton',\n )\n }\n\n if (collection.admin.components.edit?.SaveDraftButton) {\n clientCollection.admin.components.edit.SaveDraftButton = createMappedComponent(\n collection.admin.components.edit.SaveDraftButton,\n undefined,\n undefined,\n 'collection.admin.components.edit.SaveDraftButton',\n )\n }\n\n if (collection.admin.components.edit?.Upload) {\n clientCollection.admin.components.edit.Upload = createMappedComponent(\n collection.admin.components.edit.Upload,\n undefined,\n undefined,\n 'collection.admin.components.edit.Upload',\n )\n }\n }\n\n if (collection.admin.components?.beforeList) {\n clientCollection.admin.components.beforeList = collection.admin.components.beforeList.map(\n (Component) =>\n createMappedComponent(\n Component,\n undefined,\n undefined,\n 'collection.admin.components.beforeList',\n ),\n )\n }\n\n if (collection.admin.components?.beforeListTable) {\n clientCollection.admin.components.beforeListTable =\n collection.admin.components.beforeListTable.map((Component) =>\n createMappedComponent(\n Component,\n undefined,\n undefined,\n 'collection.admin.components.beforeListTable',\n ),\n )\n }\n\n if (collection.admin.components?.afterList) {\n clientCollection.admin.components.afterList = collection.admin.components.afterList.map(\n (Component) =>\n createMappedComponent(\n Component,\n undefined,\n undefined,\n 'collection.admin.components.afterList',\n ),\n )\n }\n\n if (collection.admin.components?.afterListTable) {\n clientCollection.admin.components.afterListTable =\n collection.admin.components.afterListTable.map((Component) =>\n createMappedComponent(\n Component,\n undefined,\n undefined,\n 'collection.admin.components.afterListTable',\n ),\n )\n }\n }\n\n let description = undefined\n\n if (collection.admin?.description) {\n if (\n typeof collection.admin?.description === 'string' ||\n typeof collection.admin?.description === 'object'\n ) {\n description = collection.admin.description\n } else if (typeof collection.admin?.description === 'function') {\n description = collection.admin?.description({ t: i18n.t })\n }\n }\n\n clientCollection.admin.description = description\n\n if (collection.admin.components?.Description) {\n clientCollection.admin.components.Description = createMappedComponent(\n collection.admin.components.Description,\n {\n clientProps: {\n description,\n },\n },\n undefined,\n 'collection.admin.components.Description',\n )\n }\n\n clientCollection.admin.components.views = (\n collection?.admin?.components?.views\n ? deepCopyObjectSimple(collection?.admin?.components?.views)\n : {}\n ) as ClientCollectionConfig['admin']['components']['views']\n\n const hasEditView =\n 'admin' in collection &&\n 'components' in collection.admin &&\n 'views' in collection.admin.components &&\n 'edit' in collection.admin.components.views &&\n 'default' in collection.admin.components.views.edit\n\n if (!clientCollection.admin.components.views.edit) {\n clientCollection.admin.components.views.edit =\n {} as ClientCollectionConfig['admin']['components']['views']['edit']\n }\n\n clientCollection.admin.components.views.edit.default = {\n Component: createMappedComponent(\n hasEditView &&\n 'Component' in collection.admin.components.views.edit.default &&\n collection.admin.components.views.edit.default.Component\n ? collection.admin.components.views.edit.default.Component\n : null,\n {\n clientProps: {\n collectionSlug: collection.slug,\n },\n },\n DefaultEditView,\n 'collection.admin.components.views.edit.default',\n ),\n }\n\n if (collection?.admin?.components?.views?.edit) {\n for (const key in collection.admin.components.views.edit) {\n const view: EditViewConfig = collection.admin.components.views.edit[key]\n\n if (!clientCollection.admin.components.views.edit[key]) {\n clientCollection.admin.components.views.edit[key] = {} as MappedView\n }\n\n if ('Component' in view && key !== 'default') {\n clientCollection.admin.components.views.edit[key].Component = createMappedComponent(\n view.Component,\n {\n clientProps: {\n collectionSlug: collection.slug,\n },\n },\n undefined,\n 'collection.admin.components.views.edit.key.Component',\n )\n }\n\n if ('actions' in view && view.actions?.length) {\n clientCollection.admin.components.views.edit[key].actions = view.actions.map((Component) =>\n createMappedComponent(\n Component,\n undefined,\n undefined,\n 'collection.admin.components.views.key.admin',\n ),\n )\n }\n }\n }\n\n const hasListView =\n 'admin' in collection &&\n 'components' in collection.admin &&\n 'views' in collection.admin.components &&\n 'list' in collection.admin.components.views\n\n if (!clientCollection.admin.components.views.list) {\n clientCollection.admin.components.views.list =\n {} as ClientCollectionConfig['admin']['components']['views']['list']\n }\n\n clientCollection.admin.components.views.list.Component = createMappedComponent(\n hasListView &&\n 'Component' in collection.admin.components.views.list &&\n collection.admin.components.views.list.Component\n ? collection.admin.components.views.list.Component\n : null,\n {\n clientProps: {\n collectionSlug: collection.slug,\n },\n },\n DefaultListView,\n 'collection.admin.components.views.list',\n )\n\n if (\n hasListView &&\n 'actions' in collection.admin.components.views.list &&\n collection.admin.components.views.list.actions\n ) {\n clientCollection.admin.components.views.list.actions =\n collection.admin.components.views.list.actions.map((Component) =>\n createMappedComponent(\n Component,\n undefined,\n undefined,\n 'collection.admin.components.views.list',\n ),\n )\n }\n\n if (\n 'livePreview' in clientCollection.admin &&\n clientCollection.admin.livePreview &&\n 'url' in clientCollection.admin.livePreview\n ) {\n delete clientCollection.admin.livePreview.url\n }\n\n return clientCollection\n}\n\nexport const createClientCollectionConfigs = ({\n DefaultEditView,\n DefaultListView,\n clientCollections,\n collections,\n createMappedComponent,\n i18n,\n importMap,\n payload,\n}: {\n DefaultEditView: React.FC<EditViewProps>\n DefaultListView: React.FC<AdminViewProps>\n clientCollections: ClientCollectionConfig[]\n collections: SanitizedCollectionConfig[]\n createMappedComponent: CreateMappedComponent\n i18n: I18nClient\n importMap: ImportMap\n payload: Payload\n}): ClientCollectionConfig[] => {\n for (let i = 0; i < collections.length; i++) {\n const collection = collections[i]\n const clientCollection = clientCollections[i]\n clientCollections[i] = createClientCollectionConfig({\n DefaultEditView,\n DefaultListView,\n clientCollection,\n collection,\n createMappedComponent,\n i18n,\n importMap,\n payload,\n })\n }\n\n return clientCollections\n}\n"],"mappings":"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","ignoreList":[]}
@@ -4,15 +4,21 @@ import type { Column } from '../../elements/Table/index.js';
4
4
  export type ColumnPreferences = Pick<Column, 'accessor' | 'active'>[];
5
5
  export type ListInfoProps = {
6
6
  readonly Header?: React.ReactNode;
7
+ readonly beforeActions?: React.ReactNode[];
7
8
  readonly collectionConfig: ClientConfig['collections'][0];
8
9
  readonly collectionSlug: SanitizedCollectionConfig['slug'];
10
+ readonly disableBulkDelete?: boolean;
11
+ readonly disableBulkEdit?: boolean;
9
12
  readonly hasCreatePermission: boolean;
10
13
  readonly newDocumentURL: string;
11
14
  readonly titleField?: FieldAffectingData;
12
15
  };
13
16
  export type ListInfoContext = {
14
17
  readonly Header?: React.ReactNode;
18
+ readonly beforeActions?: React.ReactNode[];
15
19
  readonly collectionSlug: string;
20
+ readonly disableBulkDelete?: boolean;
21
+ readonly disableBulkEdit?: boolean;
16
22
  readonly hasCreatePermission: boolean;
17
23
  readonly newDocumentURL: string;
18
24
  } & ListInfoProps;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/providers/ListInfo/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,kBAAkB,EAAE,yBAAyB,EAAE,MAAM,SAAS,CAAA;AAE1F,OAAO,KAAoC,MAAM,OAAO,CAAA;AAExD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,+BAA+B,CAAA;AAE3D,MAAM,MAAM,iBAAiB,GAAG,IAAI,CAAC,MAAM,EAAE,UAAU,GAAG,QAAQ,CAAC,EAAE,CAAA;AAErE,MAAM,MAAM,aAAa,GAAG;IAC1B,QAAQ,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IACjC,QAAQ,CAAC,gBAAgB,EAAE,YAAY,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAA;IACzD,QAAQ,CAAC,cAAc,EAAE,yBAAyB,CAAC,MAAM,CAAC,CAAA;IAC1D,QAAQ,CAAC,mBAAmB,EAAE,OAAO,CAAA;IACrC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAA;IAC/B,QAAQ,CAAC,UAAU,CAAC,EAAE,kBAAkB,CAAA;CACzC,CAAA;AAED,MAAM,MAAM,eAAe,GAAG;IAC5B,QAAQ,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IACjC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAA;IAC/B,QAAQ,CAAC,mBAAmB,EAAE,OAAO,CAAA;IACrC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAA;CAChC,GAAG,aAAa,CAAA;AAIjB,eAAO,MAAM,WAAW,QAAO,eAAsC,CAAA;AAErE,eAAO,MAAM,gBAAgB,EAAE,KAAK,CAAC,EAAE,CACrC;IACE,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;CACnC,GAAG,aAAa,CAGlB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/providers/ListInfo/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,kBAAkB,EAAE,yBAAyB,EAAE,MAAM,SAAS,CAAA;AAE1F,OAAO,KAAoC,MAAM,OAAO,CAAA;AAExD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,+BAA+B,CAAA;AAE3D,MAAM,MAAM,iBAAiB,GAAG,IAAI,CAAC,MAAM,EAAE,UAAU,GAAG,QAAQ,CAAC,EAAE,CAAA;AAErE,MAAM,MAAM,aAAa,GAAG;IAC1B,QAAQ,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IACjC,QAAQ,CAAC,aAAa,CAAC,EAAE,KAAK,CAAC,SAAS,EAAE,CAAA;IAC1C,QAAQ,CAAC,gBAAgB,EAAE,YAAY,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAA;IACzD,QAAQ,CAAC,cAAc,EAAE,yBAAyB,CAAC,MAAM,CAAC,CAAA;IAC1D,QAAQ,CAAC,iBAAiB,CAAC,EAAE,OAAO,CAAA;IACpC,QAAQ,CAAC,eAAe,CAAC,EAAE,OAAO,CAAA;IAClC,QAAQ,CAAC,mBAAmB,EAAE,OAAO,CAAA;IACrC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAA;IAC/B,QAAQ,CAAC,UAAU,CAAC,EAAE,kBAAkB,CAAA;CACzC,CAAA;AAED,MAAM,MAAM,eAAe,GAAG;IAC5B,QAAQ,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IACjC,QAAQ,CAAC,aAAa,CAAC,EAAE,KAAK,CAAC,SAAS,EAAE,CAAA;IAC1C,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAA;IAC/B,QAAQ,CAAC,iBAAiB,CAAC,EAAE,OAAO,CAAA;IACpC,QAAQ,CAAC,eAAe,CAAC,EAAE,OAAO,CAAA;IAClC,QAAQ,CAAC,mBAAmB,EAAE,OAAO,CAAA;IACrC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAA;CAChC,GAAG,aAAa,CAAA;AAIjB,eAAO,MAAM,WAAW,QAAO,eAAsC,CAAA;AAErE,eAAO,MAAM,gBAAgB,EAAE,KAAK,CAAC,EAAE,CACrC;IACE,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;CACnC,GAAG,aAAa,CAGlB,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["React","createContext","useContext","Context","useListInfo","ListInfoProvider","children","props","_jsx","Provider","value"],"sources":["../../../src/providers/ListInfo/index.tsx"],"sourcesContent":["'use client'\nimport type { ClientConfig, FieldAffectingData, SanitizedCollectionConfig } from 'payload'\n\nimport React, { createContext, useContext } from 'react'\n\nimport type { Column } from '../../elements/Table/index.js'\n\nexport type ColumnPreferences = Pick<Column, 'accessor' | 'active'>[]\n\nexport type ListInfoProps = {\n readonly Header?: React.ReactNode\n readonly collectionConfig: ClientConfig['collections'][0]\n readonly collectionSlug: SanitizedCollectionConfig['slug']\n readonly hasCreatePermission: boolean\n readonly newDocumentURL: string\n readonly titleField?: FieldAffectingData\n}\n\nexport type ListInfoContext = {\n readonly Header?: React.ReactNode\n readonly collectionSlug: string\n readonly hasCreatePermission: boolean\n readonly newDocumentURL: string\n} & ListInfoProps\n\nconst Context = createContext({} as ListInfoContext)\n\nexport const useListInfo = (): ListInfoContext => useContext(Context)\n\nexport const ListInfoProvider: React.FC<\n {\n readonly children: React.ReactNode\n } & ListInfoProps\n> = ({ children, ...props }) => {\n return <Context.Provider value={props}>{children}</Context.Provider>\n}\n"],"mappings":"AAAA;;;AAGA,OAAOA,KAAA,IAASC,aAAa,EAAEC,UAAU,QAAQ;AAsBjD,MAAMC,OAAA,gBAAUF,aAAA,CAAc,CAAC;AAE/B,OAAO,MAAMG,WAAA,GAAcA,CAAA;EAAA,OAAuBF,UAAA,CAAAC,OAAW;AAAA;AAE7D,OAAO,MAAME,gBAAA,GAITA,CAAC;EAAEC,QAAQ;EAAE,GAAGC;AAAA,CAAO;EACzB,oBAAOC,IAAA,CAACL,OAAA,CAAQM,QAAQ;IAACC,KAAA,EAAOH,KAAA;cAAQD;;AAC1C","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["React","createContext","useContext","Context","useListInfo","ListInfoProvider","children","props","_jsx","Provider","value"],"sources":["../../../src/providers/ListInfo/index.tsx"],"sourcesContent":["'use client'\nimport type { ClientConfig, FieldAffectingData, SanitizedCollectionConfig } from 'payload'\n\nimport React, { createContext, useContext } from 'react'\n\nimport type { Column } from '../../elements/Table/index.js'\n\nexport type ColumnPreferences = Pick<Column, 'accessor' | 'active'>[]\n\nexport type ListInfoProps = {\n readonly Header?: React.ReactNode\n readonly beforeActions?: React.ReactNode[]\n readonly collectionConfig: ClientConfig['collections'][0]\n readonly collectionSlug: SanitizedCollectionConfig['slug']\n readonly disableBulkDelete?: boolean\n readonly disableBulkEdit?: boolean\n readonly hasCreatePermission: boolean\n readonly newDocumentURL: string\n readonly titleField?: FieldAffectingData\n}\n\nexport type ListInfoContext = {\n readonly Header?: React.ReactNode\n readonly beforeActions?: React.ReactNode[]\n readonly collectionSlug: string\n readonly disableBulkDelete?: boolean\n readonly disableBulkEdit?: boolean\n readonly hasCreatePermission: boolean\n readonly newDocumentURL: string\n} & ListInfoProps\n\nconst Context = createContext({} as ListInfoContext)\n\nexport const useListInfo = (): ListInfoContext => useContext(Context)\n\nexport const ListInfoProvider: React.FC<\n {\n readonly children: React.ReactNode\n } & ListInfoProps\n> = ({ children, ...props }) => {\n return <Context.Provider value={props}>{children}</Context.Provider>\n}\n"],"mappings":"AAAA;;;AAGA,OAAOA,KAAA,IAASC,aAAa,EAAEC,UAAU,QAAQ;AA4BjD,MAAMC,OAAA,gBAAUF,aAAA,CAAc,CAAC;AAE/B,OAAO,MAAMG,WAAA,GAAcA,CAAA;EAAA,OAAuBF,UAAA,CAAAC,OAAW;AAAA;AAE7D,OAAO,MAAME,gBAAA,GAITA,CAAC;EAAEC,QAAQ;EAAE,GAAGC;AAAA,CAAO;EACzB,oBAAOC,IAAA,CAACL,OAAA,CAAQM,QAAQ;IAACC,KAAA,EAAOH,KAAA;cAAQD;;AAC1C","ignoreList":[]}
@@ -8,6 +8,8 @@ export declare enum SelectAllStatus {
8
8
  }
9
9
  type SelectionContext = {
10
10
  count: number;
11
+ disableBulkDelete?: boolean;
12
+ disableBulkEdit?: boolean;
11
13
  getQueryParams: (additionalParams?: Where) => string;
12
14
  selectAll: SelectAllStatus;
13
15
  selected: Record<number | string, boolean>;
@@ -16,9 +18,9 @@ type SelectionContext = {
16
18
  totalDocs: number;
17
19
  };
18
20
  type Props = {
19
- children: React.ReactNode;
20
- docs: any[];
21
- totalDocs: number;
21
+ readonly children: React.ReactNode;
22
+ readonly docs: any[];
23
+ readonly totalDocs: number;
22
24
  };
23
25
  export declare const SelectionProvider: React.FC<Props>;
24
26
  export declare const useSelection: () => SelectionContext;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/providers/Selection/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAGpC,OAAO,KAA8E,MAAM,OAAO,CAAA;AAKlG,oBAAY,eAAe;IACzB,YAAY,iBAAiB;IAC7B,SAAS,cAAc;IACvB,IAAI,SAAS;IACb,IAAI,SAAS;CACd;AAED,KAAK,gBAAgB,GAAG;IACtB,KAAK,EAAE,MAAM,CAAA;IACb,cAAc,EAAE,CAAC,gBAAgB,CAAC,EAAE,KAAK,KAAK,MAAM,CAAA;IACpD,SAAS,EAAE,eAAe,CAAA;IAC1B,QAAQ,EAAE,MAAM,CAAC,MAAM,GAAG,MAAM,EAAE,OAAO,CAAC,CAAA;IAC1C,YAAY,EAAE,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,KAAK,IAAI,CAAA;IAC3C,SAAS,EAAE,CAAC,YAAY,CAAC,EAAE,OAAO,KAAK,IAAI,CAAA;IAC3C,SAAS,EAAE,MAAM,CAAA;CAClB,CAAA;AAID,KAAK,KAAK,GAAG;IACX,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;IACzB,IAAI,EAAE,GAAG,EAAE,CAAA;IACX,SAAS,EAAE,MAAM,CAAA;CAClB,CAAA;AACD,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAgI7C,CAAA;AAED,eAAO,MAAM,YAAY,QAAO,gBAAuC,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/providers/Selection/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAGpC,OAAO,KAA8E,MAAM,OAAO,CAAA;AAKlG,oBAAY,eAAe;IACzB,YAAY,iBAAiB;IAC7B,SAAS,cAAc;IACvB,IAAI,SAAS;IACb,IAAI,SAAS;CACd;AAED,KAAK,gBAAgB,GAAG;IACtB,KAAK,EAAE,MAAM,CAAA;IACb,iBAAiB,CAAC,EAAE,OAAO,CAAA;IAC3B,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,cAAc,EAAE,CAAC,gBAAgB,CAAC,EAAE,KAAK,KAAK,MAAM,CAAA;IACpD,SAAS,EAAE,eAAe,CAAA;IAC1B,QAAQ,EAAE,MAAM,CAAC,MAAM,GAAG,MAAM,EAAE,OAAO,CAAC,CAAA;IAC1C,YAAY,EAAE,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,KAAK,IAAI,CAAA;IAC3C,SAAS,EAAE,CAAC,YAAY,CAAC,EAAE,OAAO,KAAK,IAAI,CAAA;IAC3C,SAAS,EAAE,MAAM,CAAA;CAClB,CAAA;AAID,KAAK,KAAK,GAAG;IACX,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;IAClC,QAAQ,CAAC,IAAI,EAAE,GAAG,EAAE,CAAA;IACpB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;CAC3B,CAAA;AAED,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAgI7C,CAAA;AAED,eAAO,MAAM,YAAY,QAAO,gBAAuC,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["c","_c","qs","React","createContext","useCallback","useContext","useEffect","useRef","useState","useLocale","useSearchParams","SelectAllStatus","Context","SelectionProvider","t0","$","children","docs","t1","totalDocs","t2","undefined","contextRef","code","locale","t3","rows","forEach","t4","id","selected","setSelected","selectAll","setSelectAll","count","setCount","searchParams","t5","allAvailable","rows_0","t6","id_0","t7","id_1","t8","id_2","toggleAll","id_3","isSelected","newSelected","setSelection","additionalParams","where","params","not_equals","filter","id_4","map","id_5","stringify","addQueryPrefix","getQueryParams","some","all","Object","values","val","t9","t10","newCount","keys","id_6","length","current","_jsx","Provider","value","useSelection"],"sources":["../../../src/providers/Selection/index.tsx"],"sourcesContent":["'use client'\nimport type { Where } from 'payload'\n\nimport * as qs from 'qs-esm'\nimport React, { createContext, useCallback, useContext, useEffect, useRef, useState } from 'react'\n\nimport { useLocale } from '../Locale/index.js'\nimport { useSearchParams } from '../SearchParams/index.js'\n\nexport enum SelectAllStatus {\n AllAvailable = 'allAvailable',\n AllInPage = 'allInPage',\n None = 'none',\n Some = 'some',\n}\n\ntype SelectionContext = {\n count: number\n getQueryParams: (additionalParams?: Where) => string\n selectAll: SelectAllStatus\n selected: Record<number | string, boolean>\n setSelection: (id: number | string) => void\n toggleAll: (allAvailable?: boolean) => void\n totalDocs: number\n}\n\nconst Context = createContext({} as SelectionContext)\n\ntype Props = {\n children: React.ReactNode\n docs: any[]\n totalDocs: number\n}\nexport const SelectionProvider: React.FC<Props> = ({ children, docs = [], totalDocs }) => {\n const contextRef = useRef({} as SelectionContext)\n\n const { code: locale } = useLocale()\n const [selected, setSelected] = useState<SelectionContext['selected']>(() => {\n const rows = {}\n docs.forEach(({ id }) => {\n rows[id] = false\n })\n return rows\n })\n const [selectAll, setSelectAll] = useState<SelectAllStatus>(SelectAllStatus.None)\n const [count, setCount] = useState(0)\n const { searchParams } = useSearchParams()\n\n const toggleAll = useCallback(\n (allAvailable = false) => {\n const rows = {}\n if (allAvailable) {\n setSelectAll(SelectAllStatus.AllAvailable)\n docs.forEach(({ id }) => {\n rows[id] = true\n })\n } else if (\n selectAll === SelectAllStatus.AllAvailable ||\n selectAll === SelectAllStatus.AllInPage\n ) {\n setSelectAll(SelectAllStatus.None)\n docs.forEach(({ id }) => {\n rows[id] = false\n })\n } else {\n docs.forEach(({ id }) => {\n rows[id] = selectAll !== SelectAllStatus.Some\n })\n }\n setSelected(rows)\n },\n [docs, selectAll],\n )\n\n const setSelection = useCallback(\n (id) => {\n const isSelected = !selected[id]\n const newSelected = {\n ...selected,\n [id]: isSelected,\n }\n if (!isSelected) {\n setSelectAll(SelectAllStatus.Some)\n }\n setSelected(newSelected)\n },\n [selected],\n )\n\n const getQueryParams = useCallback(\n (additionalParams?: Where): string => {\n let where: Where\n if (selectAll === SelectAllStatus.AllAvailable) {\n const params = searchParams?.where as Where\n where = params || {\n id: { not_equals: '' },\n }\n } else {\n where = {\n id: {\n in: Object.keys(selected)\n .filter((id) => selected[id])\n .map((id) => id),\n },\n }\n }\n if (additionalParams) {\n where = {\n and: [{ ...additionalParams }, where],\n }\n }\n return qs.stringify(\n {\n locale,\n where,\n },\n { addQueryPrefix: true },\n )\n },\n [selectAll, selected, locale, searchParams],\n )\n\n useEffect(() => {\n if (selectAll === SelectAllStatus.AllAvailable) {\n return\n }\n let some = false\n let all = true\n Object.values(selected).forEach((val) => {\n all = all && val\n some = some || val\n })\n\n if (all) {\n setSelectAll(SelectAllStatus.AllInPage)\n } else if (some) {\n setSelectAll(SelectAllStatus.Some)\n } else {\n setSelectAll(SelectAllStatus.None)\n }\n }, [selectAll, selected])\n\n useEffect(() => {\n const newCount =\n selectAll === SelectAllStatus.AllAvailable\n ? totalDocs\n : Object.keys(selected).filter((id) => selected[id]).length\n setCount(newCount)\n }, [selectAll, selected, totalDocs])\n\n contextRef.current = {\n count,\n getQueryParams,\n selectAll,\n selected,\n setSelection,\n toggleAll,\n totalDocs,\n }\n\n return <Context.Provider value={contextRef.current}>{children}</Context.Provider>\n}\n\nexport const useSelection = (): SelectionContext => useContext(Context)\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["c","_c","qs","React","createContext","useCallback","useContext","useEffect","useRef","useState","useLocale","useSearchParams","SelectAllStatus","Context","SelectionProvider","t0","$","children","docs","t1","totalDocs","t2","undefined","contextRef","code","locale","t3","rows","forEach","t4","id","selected","setSelected","selectAll","setSelectAll","count","setCount","searchParams","t5","allAvailable","rows_0","t6","id_0","t7","id_1","t8","id_2","toggleAll","id_3","isSelected","newSelected","setSelection","additionalParams","where","params","not_equals","filter","id_4","map","id_5","stringify","addQueryPrefix","getQueryParams","some","all","Object","values","val","t9","t10","newCount","keys","id_6","length","current","_jsx","Provider","value","useSelection"],"sources":["../../../src/providers/Selection/index.tsx"],"sourcesContent":["'use client'\nimport type { Where } from 'payload'\n\nimport * as qs from 'qs-esm'\nimport React, { createContext, useCallback, useContext, useEffect, useRef, useState } from 'react'\n\nimport { useLocale } from '../Locale/index.js'\nimport { useSearchParams } from '../SearchParams/index.js'\n\nexport enum SelectAllStatus {\n AllAvailable = 'allAvailable',\n AllInPage = 'allInPage',\n None = 'none',\n Some = 'some',\n}\n\ntype SelectionContext = {\n count: number\n disableBulkDelete?: boolean\n disableBulkEdit?: boolean\n getQueryParams: (additionalParams?: Where) => string\n selectAll: SelectAllStatus\n selected: Record<number | string, boolean>\n setSelection: (id: number | string) => void\n toggleAll: (allAvailable?: boolean) => void\n totalDocs: number\n}\n\nconst Context = createContext({} as SelectionContext)\n\ntype Props = {\n readonly children: React.ReactNode\n readonly docs: any[]\n readonly totalDocs: number\n}\n\nexport const SelectionProvider: React.FC<Props> = ({ children, docs = [], totalDocs }) => {\n const contextRef = useRef({} as SelectionContext)\n\n const { code: locale } = useLocale()\n const [selected, setSelected] = useState<SelectionContext['selected']>(() => {\n const rows = {}\n docs.forEach(({ id }) => {\n rows[id] = false\n })\n return rows\n })\n const [selectAll, setSelectAll] = useState<SelectAllStatus>(SelectAllStatus.None)\n const [count, setCount] = useState(0)\n const { searchParams } = useSearchParams()\n\n const toggleAll = useCallback(\n (allAvailable = false) => {\n const rows = {}\n if (allAvailable) {\n setSelectAll(SelectAllStatus.AllAvailable)\n docs.forEach(({ id }) => {\n rows[id] = true\n })\n } else if (\n selectAll === SelectAllStatus.AllAvailable ||\n selectAll === SelectAllStatus.AllInPage\n ) {\n setSelectAll(SelectAllStatus.None)\n docs.forEach(({ id }) => {\n rows[id] = false\n })\n } else {\n docs.forEach(({ id }) => {\n rows[id] = selectAll !== SelectAllStatus.Some\n })\n }\n setSelected(rows)\n },\n [docs, selectAll],\n )\n\n const setSelection = useCallback(\n (id) => {\n const isSelected = !selected[id]\n const newSelected = {\n ...selected,\n [id]: isSelected,\n }\n if (!isSelected) {\n setSelectAll(SelectAllStatus.Some)\n }\n setSelected(newSelected)\n },\n [selected],\n )\n\n const getQueryParams = useCallback(\n (additionalParams?: Where): string => {\n let where: Where\n if (selectAll === SelectAllStatus.AllAvailable) {\n const params = searchParams?.where as Where\n where = params || {\n id: { not_equals: '' },\n }\n } else {\n where = {\n id: {\n in: Object.keys(selected)\n .filter((id) => selected[id])\n .map((id) => id),\n },\n }\n }\n if (additionalParams) {\n where = {\n and: [{ ...additionalParams }, where],\n }\n }\n return qs.stringify(\n {\n locale,\n where,\n },\n { addQueryPrefix: true },\n )\n },\n [selectAll, selected, locale, searchParams],\n )\n\n useEffect(() => {\n if (selectAll === SelectAllStatus.AllAvailable) {\n return\n }\n let some = false\n let all = true\n Object.values(selected).forEach((val) => {\n all = all && val\n some = some || val\n })\n\n if (all) {\n setSelectAll(SelectAllStatus.AllInPage)\n } else if (some) {\n setSelectAll(SelectAllStatus.Some)\n } else {\n setSelectAll(SelectAllStatus.None)\n }\n }, [selectAll, selected])\n\n useEffect(() => {\n const newCount =\n selectAll === SelectAllStatus.AllAvailable\n ? totalDocs\n : Object.keys(selected).filter((id) => selected[id]).length\n setCount(newCount)\n }, [selectAll, selected, totalDocs])\n\n contextRef.current = {\n count,\n getQueryParams,\n selectAll,\n selected,\n setSelection,\n toggleAll,\n totalDocs,\n }\n\n return <Context.Provider value={contextRef.current}>{children}</Context.Provider>\n}\n\nexport const useSelection = (): SelectionContext => useContext(Context)\n"],"mappings":"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","ignoreList":[]}