@payloadcms/ui 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.
Files changed (38) hide show
  1. package/dist/elements/RenderServerComponent/index.d.ts +8 -5
  2. package/dist/elements/RenderServerComponent/index.d.ts.map +1 -1
  3. package/dist/elements/RenderServerComponent/index.js +14 -11
  4. package/dist/elements/RenderServerComponent/index.js.map +1 -1
  5. package/dist/elements/TableColumns/buildColumnState.d.ts.map +1 -1
  6. package/dist/elements/TableColumns/buildColumnState.js +6 -20
  7. package/dist/elements/TableColumns/buildColumnState.js.map +1 -1
  8. package/dist/elements/WithServerSideProps/index.js +1 -3
  9. package/dist/elements/WithServerSideProps/index.js.map +1 -1
  10. package/dist/exports/client/index.js +10 -10
  11. package/dist/exports/client/index.js.map +4 -4
  12. package/dist/exports/shared/index.js +2 -2
  13. package/dist/exports/shared/index.js.map +2 -2
  14. package/dist/fields/Array/index.d.ts.map +1 -1
  15. package/dist/fields/Array/index.js +53 -55
  16. package/dist/fields/Array/index.js.map +1 -1
  17. package/dist/fields/Blocks/index.d.ts.map +1 -1
  18. package/dist/fields/Blocks/index.js +53 -55
  19. package/dist/fields/Blocks/index.js.map +1 -1
  20. package/dist/fields/Select/Input.d.ts +1 -0
  21. package/dist/fields/Select/Input.d.ts.map +1 -1
  22. package/dist/fields/Select/Input.js +44 -42
  23. package/dist/fields/Select/Input.js.map +1 -1
  24. package/dist/fields/Select/index.d.ts.map +1 -1
  25. package/dist/fields/Select/index.js +1 -0
  26. package/dist/fields/Select/index.js.map +1 -1
  27. package/dist/forms/Form/index.d.ts.map +1 -1
  28. package/dist/forms/Form/index.js +2 -0
  29. package/dist/forms/Form/index.js.map +1 -1
  30. package/dist/forms/fieldSchemasToFormState/renderField.d.ts.map +1 -1
  31. package/dist/forms/fieldSchemasToFormState/renderField.js +42 -50
  32. package/dist/forms/fieldSchemasToFormState/renderField.js.map +1 -1
  33. package/dist/utilities/renderTable.js +2 -2
  34. package/dist/utilities/renderTable.js.map +1 -1
  35. package/dist/views/List/index.d.ts.map +1 -1
  36. package/dist/views/List/index.js +25 -5
  37. package/dist/views/List/index.js.map +1 -1
  38. package/package.json +5 -5
@@ -80,8 +80,8 @@ export const renderField = ({
80
80
  if (!fieldState.customComponents.RowLabels) {
81
81
  fieldState.customComponents.RowLabels = [];
82
82
  }
83
- fieldState.customComponents.RowLabels[rowIndex] = /*#__PURE__*/_jsx(RenderServerComponent, {
84
- clientProps: clientProps,
83
+ fieldState.customComponents.RowLabels[rowIndex] = RenderServerComponent({
84
+ clientProps,
85
85
  Component: fieldConfig.admin.components.RowLabel,
86
86
  importMap: req.payload.importMap,
87
87
  serverProps: {
@@ -109,26 +109,11 @@ export const renderField = ({
109
109
  if (!fieldConfig.admin.components) {
110
110
  fieldConfig.admin.components = {};
111
111
  }
112
- /**
113
- * We have to deep copy all the props we send to the client (= FieldComponent.clientProps).
114
- * That way, every editor's field / cell props we send to the client have their own object references.
115
- *
116
- * If we send the same object reference to the client twice (e.g. through some configurations where 2 or more fields
117
- * reference the same editor object, like the root editor), the admin panel may hang indefinitely. This has been happening since
118
- * a newer Next.js update that made it break when sending the same object reference to the client twice.
119
- *
120
- * We can use deepCopyObjectSimple as client props should be JSON-serializable.
121
- */
122
- const FieldComponent = fieldConfig.editor.FieldComponent;
123
- if (typeof FieldComponent === 'object' && FieldComponent.clientProps) {
124
- FieldComponent.clientProps = deepCopyObjectSimple(FieldComponent.clientProps);
125
- }
126
- fieldState.customComponents.Field = /*#__PURE__*/_jsx(RenderServerComponent, {
127
- clientProps: clientProps,
128
- Component: FieldComponent,
129
- Fallback: undefined,
112
+ fieldState.customComponents.Field = RenderServerComponent({
113
+ clientProps,
114
+ Component: fieldConfig.editor.FieldComponent,
130
115
  importMap: req.payload.importMap,
131
- serverProps: serverProps
116
+ serverProps
132
117
  });
133
118
  break;
134
119
  }
@@ -141,12 +126,13 @@ export const renderField = ({
141
126
  continue;
142
127
  }
143
128
  const Component = fieldConfig.admin.components[key];
144
- fieldState.customComponents[key] = /*#__PURE__*/_jsx(RenderServerComponent, {
145
- clientProps: clientProps,
146
- Component: Component,
129
+ fieldState.customComponents[key] = RenderServerComponent({
130
+ clientProps,
131
+ Component,
147
132
  importMap: req.payload.importMap,
148
- serverProps: serverProps
149
- }, `field.admin.components.${key}`);
133
+ key: `field.admin.components.${key}`,
134
+ serverProps
135
+ });
150
136
  }
151
137
  }
152
138
  break;
@@ -169,52 +155,58 @@ export const renderField = ({
169
155
  }
170
156
  if (fieldConfig.admin?.components) {
171
157
  if ('afterInput' in fieldConfig.admin.components) {
172
- fieldState.customComponents.AfterInput = /*#__PURE__*/_jsx(RenderServerComponent, {
173
- clientProps: clientProps,
158
+ fieldState.customComponents.AfterInput = RenderServerComponent({
159
+ clientProps,
174
160
  Component: fieldConfig.admin.components.afterInput,
175
161
  importMap: req.payload.importMap,
176
- serverProps: serverProps
177
- }, "field.admin.components.afterInput");
162
+ key: 'field.admin.components.afterInput',
163
+ serverProps
164
+ });
178
165
  }
179
166
  if ('beforeInput' in fieldConfig.admin.components) {
180
- fieldState.customComponents.BeforeInput = /*#__PURE__*/_jsx(RenderServerComponent, {
181
- clientProps: clientProps,
167
+ fieldState.customComponents.BeforeInput = RenderServerComponent({
168
+ clientProps,
182
169
  Component: fieldConfig.admin.components.beforeInput,
183
170
  importMap: req.payload.importMap,
184
- serverProps: serverProps
185
- }, "field.admin.components.beforeInput");
171
+ key: 'field.admin.components.beforeInput',
172
+ serverProps
173
+ });
186
174
  }
187
175
  if ('Description' in fieldConfig.admin.components) {
188
- fieldState.customComponents.Description = /*#__PURE__*/_jsx(RenderServerComponent, {
189
- clientProps: clientProps,
176
+ fieldState.customComponents.Description = RenderServerComponent({
177
+ clientProps,
190
178
  Component: fieldConfig.admin.components.Description,
191
179
  importMap: req.payload.importMap,
192
- serverProps: serverProps
193
- }, "field.admin.components.Description");
180
+ key: 'field.admin.components.Description',
181
+ serverProps
182
+ });
194
183
  }
195
184
  if ('Error' in fieldConfig.admin.components) {
196
- fieldState.customComponents.Error = /*#__PURE__*/_jsx(RenderServerComponent, {
197
- clientProps: clientProps,
185
+ fieldState.customComponents.Error = RenderServerComponent({
186
+ clientProps,
198
187
  Component: fieldConfig.admin.components.Error,
199
188
  importMap: req.payload.importMap,
200
- serverProps: serverProps
201
- }, "field.admin.components.Error");
189
+ key: 'field.admin.components.Error',
190
+ serverProps
191
+ });
202
192
  }
203
193
  if ('Label' in fieldConfig.admin.components) {
204
- fieldState.customComponents.Label = /*#__PURE__*/_jsx(RenderServerComponent, {
205
- clientProps: clientProps,
194
+ fieldState.customComponents.Label = RenderServerComponent({
195
+ clientProps,
206
196
  Component: fieldConfig.admin.components.Label,
207
197
  importMap: req.payload.importMap,
208
- serverProps: serverProps
209
- }, "field.admin.components.Label");
198
+ key: 'field.admin.components.Label',
199
+ serverProps
200
+ });
210
201
  }
211
202
  if ('Field' in fieldConfig.admin.components) {
212
- fieldState.customComponents.Field = /*#__PURE__*/_jsx(RenderServerComponent, {
213
- clientProps: clientProps,
203
+ fieldState.customComponents.Field = RenderServerComponent({
204
+ clientProps,
214
205
  Component: fieldConfig.admin.components.Field,
215
206
  importMap: req.payload.importMap,
216
- serverProps: serverProps
217
- }, "field.admin.components.Field");
207
+ key: 'field.admin.components.Field',
208
+ serverProps
209
+ });
218
210
  }
219
211
  }
220
212
  }
@@ -1 +1 @@
1
- {"version":3,"file":"renderField.js","names":["getTranslation","createClientField","deepCopyObjectSimple","MissingEditorProp","fieldAffectsData","RenderServerComponent","FieldDescription","defaultUIFieldComponentKeys","renderField","id","collectionSlug","data","fieldConfig","fieldSchemaMap","fieldState","formState","indexPath","operation","parentPath","parentSchemaPath","path","permissions","incomingPermissions","preferences","req","schemaPath","siblingData","clientField","defaultIDType","payload","config","db","field","i18n","importMap","name","clientProps","customComponents","readOnly","includes","type","serverProps","user","rows","forEach","row","rowIndex","admin","components","RowLabels","_jsx","Component","RowLabel","rowLabel","labels","singular","String","padStart","rowNumber","editor","Error","FieldComponent","Field","Fallback","undefined","key","description","Description","t","AfterInput","afterInput","BeforeInput","beforeInput","Label"],"sources":["../../../src/forms/fieldSchemasToFormState/renderField.tsx"],"sourcesContent":["import type {\n ClientComponentProps,\n ClientField,\n FieldPaths,\n PayloadComponent,\n SanitizedFieldPermissions,\n ServerComponentProps,\n} from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport { createClientField, deepCopyObjectSimple, MissingEditorProp } from 'payload'\nimport { fieldAffectsData } from 'payload/shared'\n\nimport type { RenderFieldMethod } from './types.js'\n\nimport { RenderServerComponent } from '../../elements/RenderServerComponent/index.js'\n// eslint-disable-next-line payload/no-imports-from-exports-dir -- need this to reference already existing bundle. Otherwise, bundle size increases., payload/no-imports-from-exports-dir\nimport { FieldDescription } from '../../exports/client/index.js'\n\nconst defaultUIFieldComponentKeys: Array<'Cell' | 'Description' | 'Field' | 'Filter'> = [\n 'Cell',\n 'Description',\n 'Field',\n 'Filter',\n]\n\nexport const renderField: RenderFieldMethod = ({\n id,\n collectionSlug,\n data,\n fieldConfig,\n fieldSchemaMap,\n fieldState,\n formState,\n indexPath,\n operation,\n parentPath,\n parentSchemaPath,\n path,\n permissions: incomingPermissions,\n preferences,\n req,\n schemaPath,\n siblingData,\n}) => {\n // TODO (ALESSIO): why are we passing the fieldConfig twice?\n // and especially, why are we deepCopyObject -here- instead of inside the createClientField func,\n // so no one screws this up in the future?\n const clientField = createClientField({\n clientField: deepCopyObjectSimple(fieldConfig) as ClientField,\n defaultIDType: req.payload.config.db.defaultIDType,\n field: fieldConfig,\n i18n: req.i18n,\n importMap: req.payload.importMap,\n })\n\n const permissions =\n incomingPermissions === true\n ? true\n : fieldAffectsData(fieldConfig)\n ? incomingPermissions?.[fieldConfig.name]\n : ({} as SanitizedFieldPermissions)\n\n const clientProps: ClientComponentProps & Partial<FieldPaths> = {\n customComponents: fieldState?.customComponents || {},\n field: clientField,\n path,\n readOnly: permissions !== true && !permissions?.[operation],\n schemaPath,\n }\n\n // fields with subfields\n if (['array', 'blocks', 'collapsible', 'group', 'row', 'tabs'].includes(fieldConfig.type)) {\n clientProps.indexPath = indexPath\n clientProps.parentPath = parentPath\n clientProps.parentSchemaPath = parentSchemaPath\n }\n\n const serverProps: ServerComponentProps = {\n id,\n clientField,\n data,\n field: fieldConfig,\n fieldSchemaMap,\n permissions,\n // TODO: Should we pass explicit values? initialValue, value, valid\n // value and initialValue should be typed\n collectionSlug,\n formState,\n i18n: req.i18n,\n operation,\n payload: req.payload,\n preferences,\n req,\n siblingData,\n user: req.user,\n }\n\n if (!fieldState?.customComponents) {\n fieldState.customComponents = {}\n }\n\n switch (fieldConfig.type) {\n // TODO: handle block row labels as well in a similar fashion\n case 'array': {\n fieldState?.rows?.forEach((row, rowIndex) => {\n if (fieldConfig.admin?.components && 'RowLabel' in fieldConfig.admin.components) {\n if (!fieldState.customComponents.RowLabels) {\n fieldState.customComponents.RowLabels = []\n }\n\n fieldState.customComponents.RowLabels[rowIndex] = (\n <RenderServerComponent\n clientProps={clientProps}\n Component={fieldConfig.admin.components.RowLabel}\n importMap={req.payload.importMap}\n serverProps={{\n ...serverProps,\n rowLabel: `${getTranslation(fieldConfig.labels.singular, req.i18n)} ${String(\n rowIndex + 1,\n ).padStart(2, '0')}`,\n rowNumber: rowIndex + 1,\n }}\n />\n )\n }\n })\n\n break\n }\n\n case 'richText': {\n if (!fieldConfig?.editor) {\n throw new MissingEditorProp(fieldConfig) // while we allow disabling editor functionality, you should not have any richText fields defined if you do not have an editor\n }\n\n if (typeof fieldConfig?.editor === 'function') {\n throw new Error('Attempted to access unsanitized rich text editor.')\n }\n\n if (!fieldConfig.admin) {\n fieldConfig.admin = {}\n }\n\n if (!fieldConfig.admin.components) {\n fieldConfig.admin.components = {}\n }\n\n /**\n * We have to deep copy all the props we send to the client (= FieldComponent.clientProps).\n * That way, every editor's field / cell props we send to the client have their own object references.\n *\n * If we send the same object reference to the client twice (e.g. through some configurations where 2 or more fields\n * reference the same editor object, like the root editor), the admin panel may hang indefinitely. This has been happening since\n * a newer Next.js update that made it break when sending the same object reference to the client twice.\n *\n * We can use deepCopyObjectSimple as client props should be JSON-serializable.\n */\n const FieldComponent: PayloadComponent = fieldConfig.editor.FieldComponent\n if (typeof FieldComponent === 'object' && FieldComponent.clientProps) {\n FieldComponent.clientProps = deepCopyObjectSimple(FieldComponent.clientProps)\n }\n\n fieldState.customComponents.Field = (\n <RenderServerComponent\n clientProps={clientProps}\n Component={FieldComponent}\n Fallback={undefined}\n importMap={req.payload.importMap}\n serverProps={serverProps}\n />\n )\n\n break\n }\n\n case 'ui': {\n if (fieldConfig?.admin?.components) {\n // Render any extra, untyped components\n for (const key in fieldConfig.admin.components) {\n if (key in defaultUIFieldComponentKeys) {\n continue\n }\n const Component = fieldConfig.admin.components[key]\n fieldState.customComponents[key] = (\n <RenderServerComponent\n clientProps={clientProps}\n Component={Component}\n importMap={req.payload.importMap}\n key={`field.admin.components.${key}`}\n serverProps={serverProps}\n />\n )\n }\n }\n break\n }\n\n default: {\n break\n }\n }\n\n if (fieldConfig.admin) {\n if ('description' in fieldConfig.admin) {\n if (typeof fieldConfig.admin?.description === 'function') {\n fieldState.customComponents.Description = (\n <FieldDescription\n description={fieldConfig.admin?.description({\n t: req.i18n.t,\n })}\n path={path}\n />\n )\n }\n }\n\n if (fieldConfig.admin?.components) {\n if ('afterInput' in fieldConfig.admin.components) {\n fieldState.customComponents.AfterInput = (\n <RenderServerComponent\n clientProps={clientProps}\n Component={fieldConfig.admin.components.afterInput}\n importMap={req.payload.importMap}\n key=\"field.admin.components.afterInput\"\n serverProps={serverProps}\n />\n )\n }\n\n if ('beforeInput' in fieldConfig.admin.components) {\n fieldState.customComponents.BeforeInput = (\n <RenderServerComponent\n clientProps={clientProps}\n Component={fieldConfig.admin.components.beforeInput}\n importMap={req.payload.importMap}\n key=\"field.admin.components.beforeInput\"\n serverProps={serverProps}\n />\n )\n }\n\n if ('Description' in fieldConfig.admin.components) {\n fieldState.customComponents.Description = (\n <RenderServerComponent\n clientProps={clientProps}\n Component={fieldConfig.admin.components.Description}\n importMap={req.payload.importMap}\n key=\"field.admin.components.Description\"\n serverProps={serverProps}\n />\n )\n }\n\n if ('Error' in fieldConfig.admin.components) {\n fieldState.customComponents.Error = (\n <RenderServerComponent\n clientProps={clientProps}\n Component={fieldConfig.admin.components.Error}\n importMap={req.payload.importMap}\n key=\"field.admin.components.Error\"\n serverProps={serverProps}\n />\n )\n }\n\n if ('Label' in fieldConfig.admin.components) {\n fieldState.customComponents.Label = (\n <RenderServerComponent\n clientProps={clientProps}\n Component={fieldConfig.admin.components.Label}\n importMap={req.payload.importMap}\n key=\"field.admin.components.Label\"\n serverProps={serverProps}\n />\n )\n }\n\n if ('Field' in fieldConfig.admin.components) {\n fieldState.customComponents.Field = (\n <RenderServerComponent\n clientProps={clientProps}\n Component={fieldConfig.admin.components.Field}\n importMap={req.payload.importMap}\n key=\"field.admin.components.Field\"\n serverProps={serverProps}\n />\n )\n }\n }\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"renderField.js","names":["getTranslation","createClientField","deepCopyObjectSimple","MissingEditorProp","fieldAffectsData","RenderServerComponent","FieldDescription","defaultUIFieldComponentKeys","renderField","id","collectionSlug","data","fieldConfig","fieldSchemaMap","fieldState","formState","indexPath","operation","parentPath","parentSchemaPath","path","permissions","incomingPermissions","preferences","req","schemaPath","siblingData","clientField","defaultIDType","payload","config","db","field","i18n","importMap","name","clientProps","customComponents","readOnly","includes","type","serverProps","user","rows","forEach","row","rowIndex","admin","components","RowLabels","Component","RowLabel","rowLabel","labels","singular","String","padStart","rowNumber","editor","Error","Field","FieldComponent","key","description","Description","_jsx","t","AfterInput","afterInput","BeforeInput","beforeInput","Label"],"sources":["../../../src/forms/fieldSchemasToFormState/renderField.tsx"],"sourcesContent":["import type {\n ClientComponentProps,\n ClientField,\n FieldPaths,\n SanitizedFieldPermissions,\n ServerComponentProps,\n} from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport { createClientField, deepCopyObjectSimple, MissingEditorProp } from 'payload'\nimport { fieldAffectsData } from 'payload/shared'\n\nimport type { RenderFieldMethod } from './types.js'\n\nimport { RenderServerComponent } from '../../elements/RenderServerComponent/index.js'\n// eslint-disable-next-line payload/no-imports-from-exports-dir -- need this to reference already existing bundle. Otherwise, bundle size increases., payload/no-imports-from-exports-dir\nimport { FieldDescription } from '../../exports/client/index.js'\n\nconst defaultUIFieldComponentKeys: Array<'Cell' | 'Description' | 'Field' | 'Filter'> = [\n 'Cell',\n 'Description',\n 'Field',\n 'Filter',\n]\n\nexport const renderField: RenderFieldMethod = ({\n id,\n collectionSlug,\n data,\n fieldConfig,\n fieldSchemaMap,\n fieldState,\n formState,\n indexPath,\n operation,\n parentPath,\n parentSchemaPath,\n path,\n permissions: incomingPermissions,\n preferences,\n req,\n schemaPath,\n siblingData,\n}) => {\n // TODO (ALESSIO): why are we passing the fieldConfig twice?\n // and especially, why are we deepCopyObject -here- instead of inside the createClientField func,\n // so no one screws this up in the future?\n const clientField = createClientField({\n clientField: deepCopyObjectSimple(fieldConfig) as ClientField,\n defaultIDType: req.payload.config.db.defaultIDType,\n field: fieldConfig,\n i18n: req.i18n,\n importMap: req.payload.importMap,\n })\n\n const permissions =\n incomingPermissions === true\n ? true\n : fieldAffectsData(fieldConfig)\n ? incomingPermissions?.[fieldConfig.name]\n : ({} as SanitizedFieldPermissions)\n\n const clientProps: ClientComponentProps & Partial<FieldPaths> = {\n customComponents: fieldState?.customComponents || {},\n field: clientField,\n path,\n readOnly: permissions !== true && !permissions?.[operation],\n schemaPath,\n }\n\n // fields with subfields\n if (['array', 'blocks', 'collapsible', 'group', 'row', 'tabs'].includes(fieldConfig.type)) {\n clientProps.indexPath = indexPath\n clientProps.parentPath = parentPath\n clientProps.parentSchemaPath = parentSchemaPath\n }\n\n const serverProps: ServerComponentProps = {\n id,\n clientField,\n data,\n field: fieldConfig,\n fieldSchemaMap,\n permissions,\n // TODO: Should we pass explicit values? initialValue, value, valid\n // value and initialValue should be typed\n collectionSlug,\n formState,\n i18n: req.i18n,\n operation,\n payload: req.payload,\n preferences,\n req,\n siblingData,\n user: req.user,\n }\n\n if (!fieldState?.customComponents) {\n fieldState.customComponents = {}\n }\n\n switch (fieldConfig.type) {\n // TODO: handle block row labels as well in a similar fashion\n case 'array': {\n fieldState?.rows?.forEach((row, rowIndex) => {\n if (fieldConfig.admin?.components && 'RowLabel' in fieldConfig.admin.components) {\n if (!fieldState.customComponents.RowLabels) {\n fieldState.customComponents.RowLabels = []\n }\n\n fieldState.customComponents.RowLabels[rowIndex] = RenderServerComponent({\n clientProps,\n Component: fieldConfig.admin.components.RowLabel,\n importMap: req.payload.importMap,\n serverProps: {\n ...serverProps,\n rowLabel: `${getTranslation(fieldConfig.labels.singular, req.i18n)} ${String(\n rowIndex + 1,\n ).padStart(2, '0')}`,\n rowNumber: rowIndex + 1,\n },\n })\n }\n })\n\n break\n }\n\n case 'richText': {\n if (!fieldConfig?.editor) {\n throw new MissingEditorProp(fieldConfig) // while we allow disabling editor functionality, you should not have any richText fields defined if you do not have an editor\n }\n\n if (typeof fieldConfig?.editor === 'function') {\n throw new Error('Attempted to access unsanitized rich text editor.')\n }\n\n if (!fieldConfig.admin) {\n fieldConfig.admin = {}\n }\n\n if (!fieldConfig.admin.components) {\n fieldConfig.admin.components = {}\n }\n\n fieldState.customComponents.Field = RenderServerComponent({\n clientProps,\n Component: fieldConfig.editor.FieldComponent,\n importMap: req.payload.importMap,\n serverProps,\n })\n\n break\n }\n\n case 'ui': {\n if (fieldConfig?.admin?.components) {\n // Render any extra, untyped components\n for (const key in fieldConfig.admin.components) {\n if (key in defaultUIFieldComponentKeys) {\n continue\n }\n const Component = fieldConfig.admin.components[key]\n fieldState.customComponents[key] = RenderServerComponent({\n clientProps,\n Component,\n importMap: req.payload.importMap,\n key: `field.admin.components.${key}`,\n serverProps,\n })\n }\n }\n break\n }\n\n default: {\n break\n }\n }\n\n if (fieldConfig.admin) {\n if ('description' in fieldConfig.admin) {\n if (typeof fieldConfig.admin?.description === 'function') {\n fieldState.customComponents.Description = (\n <FieldDescription\n description={fieldConfig.admin?.description({\n t: req.i18n.t,\n })}\n path={path}\n />\n )\n }\n }\n\n if (fieldConfig.admin?.components) {\n if ('afterInput' in fieldConfig.admin.components) {\n fieldState.customComponents.AfterInput = RenderServerComponent({\n clientProps,\n Component: fieldConfig.admin.components.afterInput,\n importMap: req.payload.importMap,\n key: 'field.admin.components.afterInput',\n serverProps,\n })\n }\n\n if ('beforeInput' in fieldConfig.admin.components) {\n fieldState.customComponents.BeforeInput = RenderServerComponent({\n clientProps,\n Component: fieldConfig.admin.components.beforeInput,\n importMap: req.payload.importMap,\n key: 'field.admin.components.beforeInput',\n serverProps,\n })\n }\n\n if ('Description' in fieldConfig.admin.components) {\n fieldState.customComponents.Description = RenderServerComponent({\n clientProps,\n Component: fieldConfig.admin.components.Description,\n importMap: req.payload.importMap,\n key: 'field.admin.components.Description',\n serverProps,\n })\n }\n\n if ('Error' in fieldConfig.admin.components) {\n fieldState.customComponents.Error = RenderServerComponent({\n clientProps,\n Component: fieldConfig.admin.components.Error,\n importMap: req.payload.importMap,\n key: 'field.admin.components.Error',\n serverProps,\n })\n }\n\n if ('Label' in fieldConfig.admin.components) {\n fieldState.customComponents.Label = RenderServerComponent({\n clientProps,\n Component: fieldConfig.admin.components.Label,\n importMap: req.payload.importMap,\n key: 'field.admin.components.Label',\n serverProps,\n })\n }\n\n if ('Field' in fieldConfig.admin.components) {\n fieldState.customComponents.Field = RenderServerComponent({\n clientProps,\n Component: fieldConfig.admin.components.Field,\n importMap: req.payload.importMap,\n key: 'field.admin.components.Field',\n serverProps,\n })\n }\n }\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -8,9 +8,9 @@ import { getInitialColumns } from '../elements/TableColumns/getInitialColumns.js
8
8
  import { Pill, Table } from '../exports/client/index.js';
9
9
  export const renderFilters = (fields, importMap) => fields.reduce((acc, field) => {
10
10
  if ('name' in field && field.admin?.components?.Filter) {
11
- acc.set(field.name, /*#__PURE__*/_jsx(RenderServerComponent, {
11
+ acc.set(field.name, RenderServerComponent({
12
12
  Component: field.admin.components?.Filter,
13
- importMap: importMap
13
+ importMap
14
14
  }));
15
15
  }
16
16
  return acc;
@@ -1 +1 @@
1
- {"version":3,"file":"renderTable.js","names":["getTranslation","RenderServerComponent","buildColumnState","filterFields","getInitialColumns","Pill","Table","renderFilters","fields","importMap","reduce","acc","field","admin","components","Filter","set","name","_jsx","Component","Map","renderTable","collectionConfig","columnPreferences","columns","columnsFromArgs","customCellProps","docs","enableRowSelections","i18n","payload","renderRowTypes","tableAppearance","useAsTitle","defaultColumns","columnState","beforeRows","accessor","active","Heading","t","renderedCells","map","_","i","labels","singular","undefined","appearance","data"],"sources":["../../src/utilities/renderTable.tsx"],"sourcesContent":["import type {\n ClientCollectionConfig,\n CollectionConfig,\n Field,\n ImportMap,\n PaginatedDocs,\n Payload,\n} from 'payload'\n\nimport { getTranslation, type I18nClient } from '@payloadcms/translations'\n\n// eslint-disable-next-line payload/no-imports-from-exports-dir\nimport type { Column } from '../exports/client/index.js'\nimport type { ColumnPreferences } from '../providers/ListQuery/index.js'\n\nimport { RenderServerComponent } from '../elements/RenderServerComponent/index.js'\nimport { buildColumnState } from '../elements/TableColumns/buildColumnState.js'\nimport { filterFields } from '../elements/TableColumns/filterFields.js'\nimport { getInitialColumns } from '../elements/TableColumns/getInitialColumns.js'\n// eslint-disable-next-line payload/no-imports-from-exports-dir\nimport { Pill, Table } from '../exports/client/index.js'\n\nexport const renderFilters = (\n fields: Field[],\n importMap: ImportMap,\n): Map<string, React.ReactNode> =>\n fields.reduce(\n (acc, field) => {\n if ('name' in field && field.admin?.components?.Filter) {\n acc.set(\n field.name,\n <RenderServerComponent\n Component={field.admin.components?.Filter}\n importMap={importMap}\n />,\n )\n }\n\n return acc\n },\n new Map() as Map<string, React.ReactNode>,\n )\n\nexport const renderTable = ({\n collectionConfig,\n columnPreferences,\n columns: columnsFromArgs,\n customCellProps,\n docs,\n enableRowSelections,\n fields,\n i18n,\n payload,\n renderRowTypes,\n tableAppearance,\n useAsTitle,\n}: {\n collectionConfig: ClientCollectionConfig\n columnPreferences: ColumnPreferences\n columns?: ColumnPreferences\n customCellProps?: Record<string, any>\n docs: PaginatedDocs['docs']\n drawerSlug?: string\n enableRowSelections: boolean\n fields: Field[]\n i18n: I18nClient\n payload: Payload\n renderRowTypes?: boolean\n tableAppearance?: 'condensed' | 'default'\n useAsTitle: CollectionConfig['admin']['useAsTitle']\n}): {\n columnState: Column[]\n Table: React.ReactNode\n} => {\n const columns =\n columnsFromArgs ||\n getInitialColumns(filterFields(fields), useAsTitle, collectionConfig?.admin?.defaultColumns)\n\n const columnState = buildColumnState({\n beforeRows: renderRowTypes\n ? [\n {\n accessor: 'collection',\n active: true,\n field: null,\n Heading: i18n.t('version:type'),\n renderedCells: docs.map((_, i) => (\n <Pill key={i}>{getTranslation(collectionConfig.labels.singular, i18n)}</Pill>\n )),\n },\n ]\n : undefined,\n collectionConfig,\n columnPreferences,\n columns,\n enableRowSelections,\n fields,\n i18n,\n // sortColumnProps,\n customCellProps,\n docs,\n payload,\n useAsTitle,\n })\n\n return {\n columnState,\n Table: <Table appearance={tableAppearance} columns={columnState} data={docs} />,\n }\n}\n"],"mappings":";AASA,SAASA,cAAc,QAAyB;AAMhD,SAASC,qBAAqB,QAAQ;AACtC,SAASC,gBAAgB,QAAQ;AACjC,SAASC,YAAY,QAAQ;AAC7B,SAASC,iBAAiB,QAAQ;AAClC;AACA,SAASC,IAAI,EAAEC,KAAK,QAAQ;AAE5B,OAAO,MAAMC,aAAA,GAAgBA,CAC3BC,MAAA,EACAC,SAAA,KAEAD,MAAA,CAAOE,MAAM,CACX,CAACC,GAAA,EAAKC,KAAA;EACJ,IAAI,UAAUA,KAAA,IAASA,KAAA,CAAMC,KAAK,EAAEC,UAAA,EAAYC,MAAA,EAAQ;IACtDJ,GAAA,CAAIK,GAAG,CACLJ,KAAA,CAAMK,IAAI,eACVC,IAAA,CAACjB,qBAAA;MACCkB,SAAA,EAAWP,KAAA,CAAMC,KAAK,CAACC,UAAU,EAAEC,MAAA;MACnCN,SAAA,EAAWA;;EAGjB;EAEA,OAAOE,GAAA;AACT,GACA,IAAIS,GAAA;AAGR,OAAO,MAAMC,WAAA,GAAcA,CAAC;EAC1BC,gBAAgB;EAChBC,iBAAiB;EACjBC,OAAA,EAASC,eAAe;EACxBC,eAAe;EACfC,IAAI;EACJC,mBAAmB;EACnBpB,MAAM;EACNqB,IAAI;EACJC,OAAO;EACPC,cAAc;EACdC,eAAe;EACfC;AAAU,CAeX;EAIC,MAAMT,OAAA,GACJC,eAAA,IACArB,iBAAA,CAAkBD,YAAA,CAAaK,MAAA,GAASyB,UAAA,EAAYX,gBAAA,EAAkBT,KAAA,EAAOqB,cAAA;EAE/E,MAAMC,WAAA,GAAcjC,gBAAA,CAAiB;IACnCkC,UAAA,EAAYL,cAAA,GACR,CACE;MACEM,QAAA,EAAU;MACVC,MAAA,EAAQ;MACR1B,KAAA,EAAO;MACP2B,OAAA,EAASV,IAAA,CAAKW,CAAC,CAAC;MAChBC,aAAA,EAAed,IAAA,CAAKe,GAAG,CAAC,CAACC,CAAA,EAAGC,CAAA,kBAC1B1B,IAAA,CAACb,IAAA;kBAAcL,cAAA,CAAesB,gBAAA,CAAiBuB,MAAM,CAACC,QAAQ,EAAEjB,IAAA;SAArDe,CAAA;IAEf,EACD,GACDG,SAAA;IACJzB,gBAAA;IACAC,iBAAA;IACAC,OAAA;IACAI,mBAAA;IACApB,MAAA;IACAqB,IAAA;IACA;IACAH,eAAA;IACAC,IAAA;IACAG,OAAA;IACAG;EACF;EAEA,OAAO;IACLE,WAAA;IACA7B,KAAA,eAAOY,IAAA,CAACZ,KAAA;MAAM0C,UAAA,EAAYhB,eAAA;MAAiBR,OAAA,EAASW,WAAA;MAAac,IAAA,EAAMtB;;EACzE;AACF","ignoreList":[]}
1
+ {"version":3,"file":"renderTable.js","names":["getTranslation","RenderServerComponent","buildColumnState","filterFields","getInitialColumns","Pill","Table","renderFilters","fields","importMap","reduce","acc","field","admin","components","Filter","set","name","Component","Map","renderTable","collectionConfig","columnPreferences","columns","columnsFromArgs","customCellProps","docs","enableRowSelections","i18n","payload","renderRowTypes","tableAppearance","useAsTitle","defaultColumns","columnState","beforeRows","accessor","active","Heading","t","renderedCells","map","_","i","_jsx","labels","singular","undefined","appearance","data"],"sources":["../../src/utilities/renderTable.tsx"],"sourcesContent":["import type {\n ClientCollectionConfig,\n CollectionConfig,\n Field,\n ImportMap,\n PaginatedDocs,\n Payload,\n} from 'payload'\n\nimport { getTranslation, type I18nClient } from '@payloadcms/translations'\n\n// eslint-disable-next-line payload/no-imports-from-exports-dir\nimport type { Column } from '../exports/client/index.js'\nimport type { ColumnPreferences } from '../providers/ListQuery/index.js'\n\nimport { RenderServerComponent } from '../elements/RenderServerComponent/index.js'\nimport { buildColumnState } from '../elements/TableColumns/buildColumnState.js'\nimport { filterFields } from '../elements/TableColumns/filterFields.js'\nimport { getInitialColumns } from '../elements/TableColumns/getInitialColumns.js'\n// eslint-disable-next-line payload/no-imports-from-exports-dir\nimport { Pill, Table } from '../exports/client/index.js'\n\nexport const renderFilters = (\n fields: Field[],\n importMap: ImportMap,\n): Map<string, React.ReactNode> =>\n fields.reduce(\n (acc, field) => {\n if ('name' in field && field.admin?.components?.Filter) {\n acc.set(\n field.name,\n RenderServerComponent({\n Component: field.admin.components?.Filter,\n importMap,\n }),\n )\n }\n\n return acc\n },\n new Map() as Map<string, React.ReactNode>,\n )\n\nexport const renderTable = ({\n collectionConfig,\n columnPreferences,\n columns: columnsFromArgs,\n customCellProps,\n docs,\n enableRowSelections,\n fields,\n i18n,\n payload,\n renderRowTypes,\n tableAppearance,\n useAsTitle,\n}: {\n collectionConfig: ClientCollectionConfig\n columnPreferences: ColumnPreferences\n columns?: ColumnPreferences\n customCellProps?: Record<string, any>\n docs: PaginatedDocs['docs']\n drawerSlug?: string\n enableRowSelections: boolean\n fields: Field[]\n i18n: I18nClient\n payload: Payload\n renderRowTypes?: boolean\n tableAppearance?: 'condensed' | 'default'\n useAsTitle: CollectionConfig['admin']['useAsTitle']\n}): {\n columnState: Column[]\n Table: React.ReactNode\n} => {\n const columns =\n columnsFromArgs ||\n getInitialColumns(filterFields(fields), useAsTitle, collectionConfig?.admin?.defaultColumns)\n\n const columnState = buildColumnState({\n beforeRows: renderRowTypes\n ? [\n {\n accessor: 'collection',\n active: true,\n field: null,\n Heading: i18n.t('version:type'),\n renderedCells: docs.map((_, i) => (\n <Pill key={i}>{getTranslation(collectionConfig.labels.singular, i18n)}</Pill>\n )),\n },\n ]\n : undefined,\n collectionConfig,\n columnPreferences,\n columns,\n enableRowSelections,\n fields,\n i18n,\n // sortColumnProps,\n customCellProps,\n docs,\n payload,\n useAsTitle,\n })\n\n return {\n columnState,\n Table: <Table appearance={tableAppearance} columns={columnState} data={docs} />,\n }\n}\n"],"mappings":";AASA,SAASA,cAAc,QAAyB;AAMhD,SAASC,qBAAqB,QAAQ;AACtC,SAASC,gBAAgB,QAAQ;AACjC,SAASC,YAAY,QAAQ;AAC7B,SAASC,iBAAiB,QAAQ;AAClC;AACA,SAASC,IAAI,EAAEC,KAAK,QAAQ;AAE5B,OAAO,MAAMC,aAAA,GAAgBA,CAC3BC,MAAA,EACAC,SAAA,KAEAD,MAAA,CAAOE,MAAM,CACX,CAACC,GAAA,EAAKC,KAAA;EACJ,IAAI,UAAUA,KAAA,IAASA,KAAA,CAAMC,KAAK,EAAEC,UAAA,EAAYC,MAAA,EAAQ;IACtDJ,GAAA,CAAIK,GAAG,CACLJ,KAAA,CAAMK,IAAI,EACVhB,qBAAA,CAAsB;MACpBiB,SAAA,EAAWN,KAAA,CAAMC,KAAK,CAACC,UAAU,EAAEC,MAAA;MACnCN;IACF;EAEJ;EAEA,OAAOE,GAAA;AACT,GACA,IAAIQ,GAAA;AAGR,OAAO,MAAMC,WAAA,GAAcA,CAAC;EAC1BC,gBAAgB;EAChBC,iBAAiB;EACjBC,OAAA,EAASC,eAAe;EACxBC,eAAe;EACfC,IAAI;EACJC,mBAAmB;EACnBnB,MAAM;EACNoB,IAAI;EACJC,OAAO;EACPC,cAAc;EACdC,eAAe;EACfC;AAAU,CAeX;EAIC,MAAMT,OAAA,GACJC,eAAA,IACApB,iBAAA,CAAkBD,YAAA,CAAaK,MAAA,GAASwB,UAAA,EAAYX,gBAAA,EAAkBR,KAAA,EAAOoB,cAAA;EAE/E,MAAMC,WAAA,GAAchC,gBAAA,CAAiB;IACnCiC,UAAA,EAAYL,cAAA,GACR,CACE;MACEM,QAAA,EAAU;MACVC,MAAA,EAAQ;MACRzB,KAAA,EAAO;MACP0B,OAAA,EAASV,IAAA,CAAKW,CAAC,CAAC;MAChBC,aAAA,EAAed,IAAA,CAAKe,GAAG,CAAC,CAACC,CAAA,EAAGC,CAAA,kBAC1BC,IAAA,CAACvC,IAAA;kBAAcL,cAAA,CAAeqB,gBAAA,CAAiBwB,MAAM,CAACC,QAAQ,EAAElB,IAAA;SAArDe,CAAA;IAEf,EACD,GACDI,SAAA;IACJ1B,gBAAA;IACAC,iBAAA;IACAC,OAAA;IACAI,mBAAA;IACAnB,MAAA;IACAoB,IAAA;IACA;IACAH,eAAA;IACAC,IAAA;IACAG,OAAA;IACAG;EACF;EAEA,OAAO;IACLE,WAAA;IACA5B,KAAA,eAAOsC,IAAA,CAACtC,KAAA;MAAM0C,UAAA,EAAYjB,eAAA;MAAiBR,OAAA,EAASW,WAAA;MAAae,IAAA,EAAMvB;;EACzE;AACF","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/views/List/index.tsx"],"names":[],"mappings":"AAQA,OAAO,KAAwC,MAAM,OAAO,CAAA;AAE5D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,+BAA+B,CAAA;AAC3D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AA2BjD,OAAO,cAAc,CAAA;AAMrB,MAAM,MAAM,aAAa,GAAG;IAC1B,SAAS,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAC3B,cAAc,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAChC,UAAU,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAC5B,eAAe,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IACjC,WAAW,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAC7B,KAAK,EAAE,KAAK,CAAC,SAAS,CAAA;CACvB,CAAA;AAED,MAAM,MAAM,mBAAmB,GAAG;IAChC,aAAa,CAAC,EAAE,KAAK,CAAC,SAAS,EAAE,CAAA;IACjC,cAAc,EAAE,MAAM,CAAA;IACtB,WAAW,EAAE,MAAM,EAAE,CAAA;IACrB,iBAAiB,CAAC,EAAE,OAAO,CAAA;IAC3B,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,mBAAmB,CAAC,EAAE,OAAO,CAAA;IAC7B,mBAAmB,EAAE,OAAO,CAAA;IAC5B,eAAe,CAAC,EAAE,eAAe,CAAA;IACjC,cAAc,EAAE,MAAM,CAAA;IACtB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,eAAe,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,SAAS,CAAC,CAAA;CAC/C,GAAG,aAAa,CAAA;AAEjB,eAAO,MAAM,eAAe,EAAE,KAAK,CAAC,EAAE,CAAC,mBAAmB,CA+NzD,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/views/List/index.tsx"],"names":[],"mappings":"AAQA,OAAO,KAAwC,MAAM,OAAO,CAAA;AAE5D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,+BAA+B,CAAA;AAC3D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AA6BjD,OAAO,cAAc,CAAA;AAKrB,MAAM,MAAM,aAAa,GAAG;IAC1B,SAAS,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAC3B,cAAc,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAChC,UAAU,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAC5B,eAAe,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IACjC,WAAW,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAC7B,KAAK,EAAE,KAAK,CAAC,SAAS,CAAA;CACvB,CAAA;AAED,MAAM,MAAM,mBAAmB,GAAG;IAChC,aAAa,CAAC,EAAE,KAAK,CAAC,SAAS,EAAE,CAAA;IACjC,cAAc,EAAE,MAAM,CAAA;IACtB,WAAW,EAAE,MAAM,EAAE,CAAA;IACrB,iBAAiB,CAAC,EAAE,OAAO,CAAA;IAC3B,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,mBAAmB,CAAC,EAAE,OAAO,CAAA;IAC7B,mBAAmB,EAAE,OAAO,CAAA;IAC5B,eAAe,CAAC,EAAE,eAAe,CAAA;IACjC,cAAc,EAAE,MAAM,CAAA;IACtB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,eAAe,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,SAAS,CAAC,CAAA;CAC/C,GAAG,aAAa,CAAA;AAEjB,eAAO,MAAM,eAAe,EAAE,KAAK,CAAC,EAAE,CAAC,mBAAmB,CA4OzD,CAAA"}
@@ -20,6 +20,7 @@ import { Pagination } from '../../elements/Pagination/index.js';
20
20
  import { PerPage } from '../../elements/PerPage/index.js';
21
21
  import { PublishMany } from '../../elements/PublishMany/index.js';
22
22
  import { RenderCustomComponent } from '../../elements/RenderCustomComponent/index.js';
23
+ import { SelectMany } from '../../elements/SelectMany/index.js';
23
24
  import { useStepNav } from '../../elements/StepNav/index.js';
24
25
  import { RelationshipProvider } from '../../elements/Table/RelationshipProvider/index.js';
25
26
  import { TableColumnsProvider } from '../../elements/TableColumns/index.js';
@@ -32,12 +33,12 @@ import { useListQuery } from '../../providers/ListQuery/index.js';
32
33
  import { SelectionProvider } from '../../providers/Selection/index.js';
33
34
  import { useTranslation } from '../../providers/Translation/index.js';
34
35
  import { useWindowInfo } from '../../providers/WindowInfo/index.js';
35
- import './index.scss';
36
36
  import { ListHeader } from './ListHeader/index.js';
37
+ import './index.scss';
37
38
  const baseClass = 'collection-list';
38
39
  const Link = LinkImport.default || LinkImport;
39
40
  export const DefaultListView = props => {
40
- const $ = _c(13);
41
+ const $ = _c(17);
41
42
  const {
42
43
  AfterList,
43
44
  AfterListTable,
@@ -60,7 +61,8 @@ export const DefaultListView = props => {
60
61
  const [Table, setTable] = useState(InitialTable);
61
62
  const {
62
63
  createNewDrawerSlug,
63
- drawerSlug: listDrawerSlug
64
+ drawerSlug: listDrawerSlug,
65
+ onBulkSelect
64
66
  } = useListDrawerContext();
65
67
  let t0;
66
68
  let t1;
@@ -177,6 +179,20 @@ export const DefaultListView = props => {
177
179
  }]);
178
180
  }
179
181
  }, [setStepNav, labels, drawerDepth]);
182
+ let t5;
183
+ if ($[13] !== enableRowSelections || $[14] !== onBulkSelect || $[15] !== beforeActions) {
184
+ t5 = enableRowSelections && typeof onBulkSelect === "function" ? beforeActions ? [...beforeActions, _jsx(SelectMany, {
185
+ onClick: onBulkSelect
186
+ }, "select-many")] : [_jsx(SelectMany, {
187
+ onClick: onBulkSelect
188
+ }, "select-many")] : beforeActions;
189
+ $[13] = enableRowSelections;
190
+ $[14] = onBulkSelect;
191
+ $[15] = beforeActions;
192
+ $[16] = t5;
193
+ } else {
194
+ t5 = $[16];
195
+ }
180
196
  return _jsx(Fragment, {
181
197
  children: _jsx(TableColumnsProvider, {
182
198
  collectionSlug,
@@ -213,7 +229,7 @@ export const DefaultListView = props => {
213
229
  smallBreak,
214
230
  t
215
231
  }), _jsx(ListControls, {
216
- beforeActions,
232
+ beforeActions: t5,
217
233
  collectionConfig,
218
234
  collectionSlug,
219
235
  disableBulkDelete,
@@ -270,7 +286,11 @@ export const DefaultListView = props => {
270
286
  label: getTranslation(collectionConfig.labels.plural, i18n)
271
287
  }), _jsxs("div", {
272
288
  className: `${baseClass}__list-selection-actions`,
273
- children: [beforeActions && beforeActions, !disableBulkEdit && _jsxs(Fragment, {
289
+ children: [enableRowSelections && typeof onBulkSelect === "function" ? beforeActions ? [...beforeActions, _jsx(SelectMany, {
290
+ onClick: onBulkSelect
291
+ }, "select-many")] : [_jsx(SelectMany, {
292
+ onClick: onBulkSelect
293
+ }, "select-many")] : beforeActions, !disableBulkEdit && _jsxs(Fragment, {
274
294
  children: [_jsx(EditMany, {
275
295
  collection: collectionConfig
276
296
  }), _jsx(PublishMany, {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["c","_c","getTranslation","LinkImport","useRouter","formatFilesize","isNumber","React","Fragment","useEffect","useState","useBulkUpload","Button","DeleteMany","EditMany","Gutter","ListControls","useListDrawerContext","ListSelection","useModal","Pagination","PerPage","PublishMany","RenderCustomComponent","useStepNav","RelationshipProvider","TableColumnsProvider","UnpublishMany","ViewDescription","useAuth","useConfig","useEditDepth","useListQuery","SelectionProvider","useTranslation","useWindowInfo","ListHeader","baseClass","Link","default","DefaultListView","props","$","AfterList","AfterListTable","beforeActions","BeforeList","BeforeListTable","collectionSlug","columnState","Description","disableBulkDelete","disableBulkEdit","enableRowSelections","hasCreatePermission","listPreferences","newDocumentURL","preferenceKey","renderedFilters","Table","InitialTable","setTable","createNewDrawerSlug","drawerSlug","listDrawerSlug","t0","t1","user","getEntityConfig","router","data","defaultLimit","initialLimit","handlePageChange","handlePerPageChange","query","openModal","setCollectionSlug","setOnSuccess","bulkUploadDrawerSlug","collectionConfig","labels","upload","isUploadCollection","Boolean","isBulkUploadEnabled","bulkUpload","isInDrawer","i18n","t","drawerDepth","setStepNav","breakpoints","t2","s","smallBreak","t3","t4","docs","t5","Symbol","for","doc","filesize","map","refresh","openBulkUpload","label","plural","_jsx","children","className","_jsxs","totalDocs","CustomComponent","Fallback","description","admin","length","el","onClick","singular","to","hasNextPage","hasPrevPage","limit","nextPage","numberOfNeighbors","onChange","page","prevPage","totalPages","handleChange","Number","limits","pagination","resetPage","pagingCounter","collection"],"sources":["../../../src/views/List/index.tsx"],"sourcesContent":["'use client'\n\nimport type { ClientCollectionConfig } from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport LinkImport from 'next/link.js'\nimport { useRouter } from 'next/navigation.js'\nimport { formatFilesize, isNumber } from 'payload/shared'\nimport React, { Fragment, useEffect, useState } from 'react'\n\nimport type { Column } from '../../elements/Table/index.js'\nimport type { ListPreferences } from './types.js'\n\nimport { useBulkUpload } from '../../elements/BulkUpload/index.js'\nimport { Button } from '../../elements/Button/index.js'\nimport { DeleteMany } from '../../elements/DeleteMany/index.js'\nimport { EditMany } from '../../elements/EditMany/index.js'\nimport { Gutter } from '../../elements/Gutter/index.js'\nimport { ListControls } from '../../elements/ListControls/index.js'\nimport { useListDrawerContext } from '../../elements/ListDrawer/Provider.js'\nimport { ListSelection } from '../../elements/ListSelection/index.js'\nimport { useModal } from '../../elements/Modal/index.js'\nimport { Pagination } from '../../elements/Pagination/index.js'\nimport { PerPage } from '../../elements/PerPage/index.js'\nimport { PublishMany } from '../../elements/PublishMany/index.js'\nimport { RenderCustomComponent } from '../../elements/RenderCustomComponent/index.js'\nimport { useStepNav } from '../../elements/StepNav/index.js'\nimport { RelationshipProvider } from '../../elements/Table/RelationshipProvider/index.js'\nimport { TableColumnsProvider } from '../../elements/TableColumns/index.js'\nimport { UnpublishMany } from '../../elements/UnpublishMany/index.js'\nimport { ViewDescription } from '../../elements/ViewDescription/index.js'\nimport { useAuth } from '../../providers/Auth/index.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useEditDepth } from '../../providers/EditDepth/index.js'\nimport { useListQuery } from '../../providers/ListQuery/index.js'\nimport { SelectionProvider } from '../../providers/Selection/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { useWindowInfo } from '../../providers/WindowInfo/index.js'\nimport './index.scss'\nimport { ListHeader } from './ListHeader/index.js'\n\nconst baseClass = 'collection-list'\nconst Link = (LinkImport.default || LinkImport) as unknown as typeof LinkImport.default\n\nexport type ListViewSlots = {\n AfterList?: React.ReactNode\n AfterListTable?: React.ReactNode\n BeforeList?: React.ReactNode\n BeforeListTable?: React.ReactNode\n Description?: React.ReactNode\n Table: React.ReactNode\n}\n\nexport type ListViewClientProps = {\n beforeActions?: React.ReactNode[]\n collectionSlug: string\n columnState: Column[]\n disableBulkDelete?: boolean\n disableBulkEdit?: boolean\n enableRowSelections?: boolean\n hasCreatePermission: boolean\n listPreferences?: ListPreferences\n newDocumentURL: string\n preferenceKey?: string\n renderedFilters?: Map<string, React.ReactNode>\n} & ListViewSlots\n\nexport const DefaultListView: React.FC<ListViewClientProps> = (props) => {\n const {\n AfterList,\n AfterListTable,\n beforeActions,\n BeforeList,\n BeforeListTable,\n collectionSlug,\n columnState,\n Description,\n disableBulkDelete,\n disableBulkEdit,\n enableRowSelections,\n hasCreatePermission,\n listPreferences,\n newDocumentURL,\n preferenceKey,\n renderedFilters,\n Table: InitialTable,\n } = props\n\n const [Table, setTable] = useState(InitialTable)\n\n const { createNewDrawerSlug, drawerSlug: listDrawerSlug } = useListDrawerContext()\n\n useEffect(() => {\n if (InitialTable) {\n setTable(InitialTable)\n }\n }, [InitialTable])\n\n const { user } = useAuth()\n\n const { getEntityConfig } = useConfig()\n const router = useRouter()\n\n const {\n data,\n defaultLimit: initialLimit,\n handlePageChange,\n handlePerPageChange,\n query,\n } = useListQuery()\n const { openModal } = useModal()\n const { setCollectionSlug, setOnSuccess } = useBulkUpload()\n const { drawerSlug: bulkUploadDrawerSlug } = useBulkUpload()\n\n const collectionConfig = getEntityConfig({ collectionSlug }) as ClientCollectionConfig\n\n const { labels, upload } = collectionConfig\n\n const isUploadCollection = Boolean(upload)\n\n const isBulkUploadEnabled = isUploadCollection && collectionConfig.upload.bulkUpload\n\n const isInDrawer = Boolean(listDrawerSlug)\n\n const { i18n, t } = useTranslation()\n\n const drawerDepth = useEditDepth()\n\n const { setStepNav } = useStepNav()\n\n const {\n breakpoints: { s: smallBreak },\n } = useWindowInfo()\n\n const docs = React.useMemo(() => {\n if (isUploadCollection) {\n return data.docs.map((doc) => {\n return {\n ...doc,\n filesize: formatFilesize(doc.filesize),\n }\n })\n } else {\n return data.docs\n }\n }, [data.docs, isUploadCollection])\n\n const openBulkUpload = React.useCallback(() => {\n setCollectionSlug(collectionSlug)\n openModal(bulkUploadDrawerSlug)\n setOnSuccess(() => router.refresh())\n }, [router, collectionSlug, bulkUploadDrawerSlug, openModal, setCollectionSlug, setOnSuccess])\n\n useEffect(() => {\n if (drawerDepth <= 1) {\n setStepNav([\n {\n label: labels?.plural,\n },\n ])\n }\n }, [setStepNav, labels, drawerDepth])\n\n return (\n <Fragment>\n <TableColumnsProvider\n collectionSlug={collectionSlug}\n columnState={columnState}\n docs={docs}\n enableRowSelections={enableRowSelections}\n listPreferences={listPreferences}\n preferenceKey={preferenceKey}\n setTable={setTable}\n >\n <div className={`${baseClass} ${baseClass}--${collectionSlug}`}>\n <SelectionProvider docs={docs} totalDocs={data.totalDocs} user={user}>\n {BeforeList}\n <Gutter className={`${baseClass}__wrap`}>\n <ListHeader\n collectionConfig={collectionConfig}\n Description={\n <div className={`${baseClass}__sub-header`}>\n <RenderCustomComponent\n CustomComponent={Description}\n Fallback={\n <ViewDescription description={collectionConfig?.admin?.description} />\n }\n />\n </div>\n }\n hasCreatePermission={hasCreatePermission}\n i18n={i18n}\n isBulkUploadEnabled={isBulkUploadEnabled}\n newDocumentURL={newDocumentURL}\n openBulkUpload={openBulkUpload}\n smallBreak={smallBreak}\n t={t}\n />\n <ListControls\n beforeActions={beforeActions}\n collectionConfig={collectionConfig}\n collectionSlug={collectionSlug}\n disableBulkDelete={disableBulkDelete}\n disableBulkEdit={disableBulkEdit}\n renderedFilters={renderedFilters}\n />\n {BeforeListTable}\n {docs.length > 0 && <RelationshipProvider>{Table}</RelationshipProvider>}\n {docs.length === 0 && (\n <div className={`${baseClass}__no-results`}>\n <p>\n {i18n.t('general:noResults', { label: getTranslation(labels?.plural, i18n) })}\n </p>\n {hasCreatePermission && newDocumentURL && (\n <Fragment>\n {isInDrawer ? (\n <Button el=\"button\" onClick={() => openModal(createNewDrawerSlug)}>\n {i18n.t('general:createNewLabel', {\n label: getTranslation(labels?.singular, i18n),\n })}\n </Button>\n ) : (\n <Button el=\"link\" Link={Link} to={newDocumentURL}>\n {i18n.t('general:createNewLabel', {\n label: getTranslation(labels?.singular, i18n),\n })}\n </Button>\n )}\n </Fragment>\n )}\n </div>\n )}\n {AfterListTable}\n {docs.length > 0 && (\n <div className={`${baseClass}__page-controls`}>\n <Pagination\n hasNextPage={data.hasNextPage}\n hasPrevPage={data.hasPrevPage}\n limit={data.limit}\n nextPage={data.nextPage}\n numberOfNeighbors={1}\n onChange={(page) => void handlePageChange(page)}\n page={data.page}\n prevPage={data.prevPage}\n totalPages={data.totalPages}\n />\n {data.totalDocs > 0 && (\n <Fragment>\n <div className={`${baseClass}__page-info`}>\n {data.page * data.limit - (data.limit - 1)}-\n {data.totalPages > 1 && data.totalPages !== data.page\n ? data.limit * data.page\n : data.totalDocs}{' '}\n {i18n.t('general:of')} {data.totalDocs}\n </div>\n <PerPage\n handleChange={(limit) => void handlePerPageChange(limit)}\n limit={isNumber(query?.limit) ? Number(query.limit) : initialLimit}\n limits={collectionConfig?.admin?.pagination?.limits}\n resetPage={data.totalDocs <= data.pagingCounter}\n />\n {smallBreak && (\n <div className={`${baseClass}__list-selection`}>\n <ListSelection\n label={getTranslation(collectionConfig.labels.plural, i18n)}\n />\n <div className={`${baseClass}__list-selection-actions`}>\n {beforeActions && beforeActions}\n {!disableBulkEdit && (\n <Fragment>\n <EditMany collection={collectionConfig} />\n <PublishMany collection={collectionConfig} />\n <UnpublishMany collection={collectionConfig} />\n </Fragment>\n )}\n {!disableBulkDelete && <DeleteMany collection={collectionConfig} />}\n </div>\n </div>\n )}\n </Fragment>\n )}\n </div>\n )}\n </Gutter>\n {AfterList}\n </SelectionProvider>\n </div>\n </TableColumnsProvider>\n </Fragment>\n )\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["c","_c","getTranslation","LinkImport","useRouter","formatFilesize","isNumber","React","Fragment","useEffect","useState","useBulkUpload","Button","DeleteMany","EditMany","Gutter","ListControls","useListDrawerContext","ListSelection","useModal","Pagination","PerPage","PublishMany","RenderCustomComponent","SelectMany","useStepNav","RelationshipProvider","TableColumnsProvider","UnpublishMany","ViewDescription","useAuth","useConfig","useEditDepth","useListQuery","SelectionProvider","useTranslation","useWindowInfo","ListHeader","baseClass","Link","default","DefaultListView","props","$","AfterList","AfterListTable","beforeActions","BeforeList","BeforeListTable","collectionSlug","columnState","Description","disableBulkDelete","disableBulkEdit","enableRowSelections","hasCreatePermission","listPreferences","newDocumentURL","preferenceKey","renderedFilters","Table","InitialTable","setTable","createNewDrawerSlug","drawerSlug","listDrawerSlug","onBulkSelect","t0","t1","user","getEntityConfig","router","data","defaultLimit","initialLimit","handlePageChange","handlePerPageChange","query","openModal","setCollectionSlug","setOnSuccess","bulkUploadDrawerSlug","collectionConfig","labels","upload","isUploadCollection","Boolean","isBulkUploadEnabled","bulkUpload","isInDrawer","i18n","t","drawerDepth","setStepNav","breakpoints","t2","s","smallBreak","t3","t4","docs","t5","Symbol","for","doc","filesize","map","refresh","openBulkUpload","label","plural","_jsx","onClick","children","className","_jsxs","totalDocs","CustomComponent","Fallback","description","admin","length","el","singular","to","hasNextPage","hasPrevPage","limit","nextPage","numberOfNeighbors","onChange","page","prevPage","totalPages","handleChange","Number","limits","pagination","resetPage","pagingCounter","collection"],"sources":["../../../src/views/List/index.tsx"],"sourcesContent":["'use client'\n\nimport type { ClientCollectionConfig } from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport LinkImport from 'next/link.js'\nimport { useRouter } from 'next/navigation.js'\nimport { formatFilesize, isNumber } from 'payload/shared'\nimport React, { Fragment, useEffect, useState } from 'react'\n\nimport type { Column } from '../../elements/Table/index.js'\nimport type { ListPreferences } from './types.js'\n\nimport { useBulkUpload } from '../../elements/BulkUpload/index.js'\nimport { Button } from '../../elements/Button/index.js'\nimport { DeleteMany } from '../../elements/DeleteMany/index.js'\nimport { EditMany } from '../../elements/EditMany/index.js'\nimport { Gutter } from '../../elements/Gutter/index.js'\nimport { ListControls } from '../../elements/ListControls/index.js'\nimport { useListDrawerContext } from '../../elements/ListDrawer/Provider.js'\nimport { ListSelection } from '../../elements/ListSelection/index.js'\nimport { useModal } from '../../elements/Modal/index.js'\nimport { Pagination } from '../../elements/Pagination/index.js'\nimport { PerPage } from '../../elements/PerPage/index.js'\nimport { PublishMany } from '../../elements/PublishMany/index.js'\nimport { RenderCustomComponent } from '../../elements/RenderCustomComponent/index.js'\nimport { SelectMany } from '../../elements/SelectMany/index.js'\nimport { useStepNav } from '../../elements/StepNav/index.js'\nimport { RelationshipProvider } from '../../elements/Table/RelationshipProvider/index.js'\nimport { TableColumnsProvider } from '../../elements/TableColumns/index.js'\nimport { UnpublishMany } from '../../elements/UnpublishMany/index.js'\nimport { ViewDescription } from '../../elements/ViewDescription/index.js'\nimport { useAuth } from '../../providers/Auth/index.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useEditDepth } from '../../providers/EditDepth/index.js'\nimport { useListQuery } from '../../providers/ListQuery/index.js'\nimport { SelectionProvider } from '../../providers/Selection/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { useWindowInfo } from '../../providers/WindowInfo/index.js'\nimport { ListHeader } from './ListHeader/index.js'\nimport './index.scss'\n\nconst baseClass = 'collection-list'\nconst Link = (LinkImport.default || LinkImport) as unknown as typeof LinkImport.default\n\nexport type ListViewSlots = {\n AfterList?: React.ReactNode\n AfterListTable?: React.ReactNode\n BeforeList?: React.ReactNode\n BeforeListTable?: React.ReactNode\n Description?: React.ReactNode\n Table: React.ReactNode\n}\n\nexport type ListViewClientProps = {\n beforeActions?: React.ReactNode[]\n collectionSlug: string\n columnState: Column[]\n disableBulkDelete?: boolean\n disableBulkEdit?: boolean\n enableRowSelections?: boolean\n hasCreatePermission: boolean\n listPreferences?: ListPreferences\n newDocumentURL: string\n preferenceKey?: string\n renderedFilters?: Map<string, React.ReactNode>\n} & ListViewSlots\n\nexport const DefaultListView: React.FC<ListViewClientProps> = (props) => {\n const {\n AfterList,\n AfterListTable,\n beforeActions,\n BeforeList,\n BeforeListTable,\n collectionSlug,\n columnState,\n Description,\n disableBulkDelete,\n disableBulkEdit,\n enableRowSelections,\n hasCreatePermission,\n listPreferences,\n newDocumentURL,\n preferenceKey,\n renderedFilters,\n Table: InitialTable,\n } = props\n\n const [Table, setTable] = useState(InitialTable)\n\n const { createNewDrawerSlug, drawerSlug: listDrawerSlug, onBulkSelect } = useListDrawerContext()\n\n useEffect(() => {\n if (InitialTable) {\n setTable(InitialTable)\n }\n }, [InitialTable])\n\n const { user } = useAuth()\n\n const { getEntityConfig } = useConfig()\n const router = useRouter()\n\n const {\n data,\n defaultLimit: initialLimit,\n handlePageChange,\n handlePerPageChange,\n query,\n } = useListQuery()\n const { openModal } = useModal()\n const { setCollectionSlug, setOnSuccess } = useBulkUpload()\n const { drawerSlug: bulkUploadDrawerSlug } = useBulkUpload()\n\n const collectionConfig = getEntityConfig({ collectionSlug }) as ClientCollectionConfig\n\n const { labels, upload } = collectionConfig\n\n const isUploadCollection = Boolean(upload)\n\n const isBulkUploadEnabled = isUploadCollection && collectionConfig.upload.bulkUpload\n\n const isInDrawer = Boolean(listDrawerSlug)\n\n const { i18n, t } = useTranslation()\n\n const drawerDepth = useEditDepth()\n\n const { setStepNav } = useStepNav()\n\n const {\n breakpoints: { s: smallBreak },\n } = useWindowInfo()\n\n const docs = React.useMemo(() => {\n if (isUploadCollection) {\n return data.docs.map((doc) => {\n return {\n ...doc,\n filesize: formatFilesize(doc.filesize),\n }\n })\n } else {\n return data.docs\n }\n }, [data.docs, isUploadCollection])\n\n const openBulkUpload = React.useCallback(() => {\n setCollectionSlug(collectionSlug)\n openModal(bulkUploadDrawerSlug)\n setOnSuccess(() => router.refresh())\n }, [router, collectionSlug, bulkUploadDrawerSlug, openModal, setCollectionSlug, setOnSuccess])\n\n useEffect(() => {\n if (drawerDepth <= 1) {\n setStepNav([\n {\n label: labels?.plural,\n },\n ])\n }\n }, [setStepNav, labels, drawerDepth])\n\n return (\n <Fragment>\n <TableColumnsProvider\n collectionSlug={collectionSlug}\n columnState={columnState}\n docs={docs}\n enableRowSelections={enableRowSelections}\n listPreferences={listPreferences}\n preferenceKey={preferenceKey}\n setTable={setTable}\n >\n <div className={`${baseClass} ${baseClass}--${collectionSlug}`}>\n <SelectionProvider docs={docs} totalDocs={data.totalDocs} user={user}>\n {BeforeList}\n <Gutter className={`${baseClass}__wrap`}>\n <ListHeader\n collectionConfig={collectionConfig}\n Description={\n <div className={`${baseClass}__sub-header`}>\n <RenderCustomComponent\n CustomComponent={Description}\n Fallback={\n <ViewDescription description={collectionConfig?.admin?.description} />\n }\n />\n </div>\n }\n hasCreatePermission={hasCreatePermission}\n i18n={i18n}\n isBulkUploadEnabled={isBulkUploadEnabled}\n newDocumentURL={newDocumentURL}\n openBulkUpload={openBulkUpload}\n smallBreak={smallBreak}\n t={t}\n />\n <ListControls\n beforeActions={\n enableRowSelections && typeof onBulkSelect === 'function'\n ? beforeActions\n ? [...beforeActions, <SelectMany key=\"select-many\" onClick={onBulkSelect} />]\n : [<SelectMany key=\"select-many\" onClick={onBulkSelect} />]\n : beforeActions\n }\n collectionConfig={collectionConfig}\n collectionSlug={collectionSlug}\n disableBulkDelete={disableBulkDelete}\n disableBulkEdit={disableBulkEdit}\n renderedFilters={renderedFilters}\n />\n {BeforeListTable}\n {docs.length > 0 && <RelationshipProvider>{Table}</RelationshipProvider>}\n {docs.length === 0 && (\n <div className={`${baseClass}__no-results`}>\n <p>\n {i18n.t('general:noResults', { label: getTranslation(labels?.plural, i18n) })}\n </p>\n {hasCreatePermission && newDocumentURL && (\n <Fragment>\n {isInDrawer ? (\n <Button el=\"button\" onClick={() => openModal(createNewDrawerSlug)}>\n {i18n.t('general:createNewLabel', {\n label: getTranslation(labels?.singular, i18n),\n })}\n </Button>\n ) : (\n <Button el=\"link\" Link={Link} to={newDocumentURL}>\n {i18n.t('general:createNewLabel', {\n label: getTranslation(labels?.singular, i18n),\n })}\n </Button>\n )}\n </Fragment>\n )}\n </div>\n )}\n {AfterListTable}\n {docs.length > 0 && (\n <div className={`${baseClass}__page-controls`}>\n <Pagination\n hasNextPage={data.hasNextPage}\n hasPrevPage={data.hasPrevPage}\n limit={data.limit}\n nextPage={data.nextPage}\n numberOfNeighbors={1}\n onChange={(page) => void handlePageChange(page)}\n page={data.page}\n prevPage={data.prevPage}\n totalPages={data.totalPages}\n />\n {data.totalDocs > 0 && (\n <Fragment>\n <div className={`${baseClass}__page-info`}>\n {data.page * data.limit - (data.limit - 1)}-\n {data.totalPages > 1 && data.totalPages !== data.page\n ? data.limit * data.page\n : data.totalDocs}{' '}\n {i18n.t('general:of')} {data.totalDocs}\n </div>\n <PerPage\n handleChange={(limit) => void handlePerPageChange(limit)}\n limit={isNumber(query?.limit) ? Number(query.limit) : initialLimit}\n limits={collectionConfig?.admin?.pagination?.limits}\n resetPage={data.totalDocs <= data.pagingCounter}\n />\n {smallBreak && (\n <div className={`${baseClass}__list-selection`}>\n <ListSelection\n label={getTranslation(collectionConfig.labels.plural, i18n)}\n />\n <div className={`${baseClass}__list-selection-actions`}>\n {enableRowSelections && typeof onBulkSelect === 'function'\n ? beforeActions\n ? [\n ...beforeActions,\n <SelectMany key=\"select-many\" onClick={onBulkSelect} />,\n ]\n : [<SelectMany key=\"select-many\" onClick={onBulkSelect} />]\n : beforeActions}\n {!disableBulkEdit && (\n <Fragment>\n <EditMany collection={collectionConfig} />\n <PublishMany collection={collectionConfig} />\n <UnpublishMany collection={collectionConfig} />\n </Fragment>\n )}\n {!disableBulkDelete && <DeleteMany collection={collectionConfig} />}\n </div>\n </div>\n )}\n </Fragment>\n )}\n </div>\n )}\n </Gutter>\n {AfterList}\n </SelectionProvider>\n </div>\n </TableColumnsProvider>\n </Fragment>\n )\n}\n"],"mappings":"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","ignoreList":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@payloadcms/ui",
3
- "version": "3.0.0",
3
+ "version": "3.0.1-canary.9494866",
4
4
  "homepage": "https://payloadcms.com",
5
5
  "repository": {
6
6
  "type": "git",
@@ -133,7 +133,7 @@
133
133
  "ts-essentials": "10.0.3",
134
134
  "use-context-selector": "2.0.0",
135
135
  "uuid": "10.0.0",
136
- "@payloadcms/translations": "3.0.0"
136
+ "@payloadcms/translations": "3.0.1-canary.9494866"
137
137
  },
138
138
  "devDependencies": {
139
139
  "@babel/cli": "^7.24.5",
@@ -151,14 +151,14 @@
151
151
  "esbuild": "0.23.1",
152
152
  "esbuild-sass-plugin": "3.3.1",
153
153
  "eslint-plugin-react-compiler": "19.0.0-beta-a7bf2bd-20241110",
154
- "payload": "3.0.0",
155
- "@payloadcms/eslint-config": "3.0.0-beta.112"
154
+ "@payloadcms/eslint-config": "3.0.0",
155
+ "payload": "3.0.1-canary.9494866"
156
156
  },
157
157
  "peerDependencies": {
158
158
  "next": "^15.0.0",
159
159
  "react": "^19.0.0 || ^19.0.0-rc-65a56d0e-20241020",
160
160
  "react-dom": "^19.0.0 || ^19.0.0-rc-65a56d0e-20241020",
161
- "payload": "3.0.0"
161
+ "payload": "3.0.1-canary.9494866"
162
162
  },
163
163
  "engines": {
164
164
  "node": "^18.20.2 || >=20.9.0"