@payloadcms/ui 3.24.0-canary.d22403c → 3.24.0

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 (150) hide show
  1. package/dist/elements/Autosave/index.d.ts.map +1 -1
  2. package/dist/elements/Autosave/index.js +143 -108
  3. package/dist/elements/Autosave/index.js.map +1 -1
  4. package/dist/elements/Button/index.d.ts.map +1 -1
  5. package/dist/elements/Button/index.js +1 -0
  6. package/dist/elements/Button/index.js.map +1 -1
  7. package/dist/elements/Button/index.scss +21 -5
  8. package/dist/elements/ConfirmationModal/index.d.ts +16 -0
  9. package/dist/elements/ConfirmationModal/index.d.ts.map +1 -0
  10. package/dist/elements/ConfirmationModal/index.js +158 -0
  11. package/dist/elements/ConfirmationModal/index.js.map +1 -0
  12. package/dist/elements/{GenerateConfirmation → ConfirmationModal}/index.scss +1 -1
  13. package/dist/elements/DatePicker/DatePicker.d.ts.map +1 -1
  14. package/dist/elements/DatePicker/DatePicker.js +2 -0
  15. package/dist/elements/DatePicker/DatePicker.js.map +1 -1
  16. package/dist/elements/DatePicker/types.d.ts +1 -0
  17. package/dist/elements/DatePicker/types.d.ts.map +1 -1
  18. package/dist/elements/DatePicker/types.js.map +1 -1
  19. package/dist/elements/DeleteDocument/index.d.ts.map +1 -1
  20. package/dist/elements/DeleteDocument/index.js +31 -79
  21. package/dist/elements/DeleteDocument/index.js.map +1 -1
  22. package/dist/elements/DeleteDocument/index.scss +0 -29
  23. package/dist/elements/DeleteMany/index.d.ts.map +1 -1
  24. package/dist/elements/DeleteMany/index.js +16 -43
  25. package/dist/elements/DeleteMany/index.js.map +1 -1
  26. package/dist/elements/DeleteMany/index.scss +0 -29
  27. package/dist/elements/DuplicateDocument/index.d.ts +0 -1
  28. package/dist/elements/DuplicateDocument/index.d.ts.map +1 -1
  29. package/dist/elements/DuplicateDocument/index.js +25 -54
  30. package/dist/elements/DuplicateDocument/index.js.map +1 -1
  31. package/dist/elements/GenerateConfirmation/index.d.ts +1 -2
  32. package/dist/elements/GenerateConfirmation/index.d.ts.map +1 -1
  33. package/dist/elements/GenerateConfirmation/index.js +23 -47
  34. package/dist/elements/GenerateConfirmation/index.js.map +1 -1
  35. package/dist/elements/LeaveWithoutSaving/index.d.ts +0 -1
  36. package/dist/elements/LeaveWithoutSaving/index.d.ts.map +1 -1
  37. package/dist/elements/LeaveWithoutSaving/index.js +56 -113
  38. package/dist/elements/LeaveWithoutSaving/index.js.map +1 -1
  39. package/dist/elements/ListControls/index.d.ts +1 -0
  40. package/dist/elements/ListControls/index.d.ts.map +1 -1
  41. package/dist/elements/ListControls/index.js +14 -0
  42. package/dist/elements/ListControls/index.js.map +1 -1
  43. package/dist/elements/ListControls/index.scss +5 -0
  44. package/dist/elements/Localizer/LocalizerLabel/index.d.ts.map +1 -1
  45. package/dist/elements/Localizer/LocalizerLabel/index.js +11 -8
  46. package/dist/elements/Localizer/LocalizerLabel/index.js.map +1 -1
  47. package/dist/elements/Localizer/index.d.ts.map +1 -1
  48. package/dist/elements/Localizer/index.js +2 -0
  49. package/dist/elements/Localizer/index.js.map +1 -1
  50. package/dist/elements/Popup/index.d.ts +1 -0
  51. package/dist/elements/Popup/index.d.ts.map +1 -1
  52. package/dist/elements/Popup/index.js +2 -0
  53. package/dist/elements/Popup/index.js.map +1 -1
  54. package/dist/elements/PublishButton/ScheduleDrawer/index.d.ts +2 -0
  55. package/dist/elements/PublishButton/ScheduleDrawer/index.d.ts.map +1 -1
  56. package/dist/elements/PublishButton/ScheduleDrawer/index.js +6 -2
  57. package/dist/elements/PublishButton/ScheduleDrawer/index.js.map +1 -1
  58. package/dist/elements/PublishButton/index.d.ts.map +1 -1
  59. package/dist/elements/PublishButton/index.js +18 -15
  60. package/dist/elements/PublishButton/index.js.map +1 -1
  61. package/dist/elements/PublishMany/index.d.ts +0 -1
  62. package/dist/elements/PublishMany/index.d.ts.map +1 -1
  63. package/dist/elements/PublishMany/index.js +19 -45
  64. package/dist/elements/PublishMany/index.js.map +1 -1
  65. package/dist/elements/RelationshipTable/index.d.ts +7 -2
  66. package/dist/elements/RelationshipTable/index.d.ts.map +1 -1
  67. package/dist/elements/RelationshipTable/index.js +69 -23
  68. package/dist/elements/RelationshipTable/index.js.map +1 -1
  69. package/dist/elements/RelationshipTable/index.scss +6 -0
  70. package/dist/elements/Status/index.d.ts.map +1 -1
  71. package/dist/elements/Status/index.js +173 -154
  72. package/dist/elements/Status/index.js.map +1 -1
  73. package/dist/elements/Status/index.scss +0 -41
  74. package/dist/elements/StayLoggedIn/index.d.ts +0 -1
  75. package/dist/elements/StayLoggedIn/index.d.ts.map +1 -1
  76. package/dist/elements/StayLoggedIn/index.js +45 -77
  77. package/dist/elements/StayLoggedIn/index.js.map +1 -1
  78. package/dist/elements/TableColumns/buildPolymorphicColumnState.d.ts +20 -0
  79. package/dist/elements/TableColumns/buildPolymorphicColumnState.d.ts.map +1 -0
  80. package/dist/elements/TableColumns/buildPolymorphicColumnState.js +200 -0
  81. package/dist/elements/TableColumns/buildPolymorphicColumnState.js.map +1 -0
  82. package/dist/elements/TableColumns/index.d.ts +1 -1
  83. package/dist/elements/TableColumns/index.d.ts.map +1 -1
  84. package/dist/elements/TableColumns/index.js +4 -3
  85. package/dist/elements/TableColumns/index.js.map +1 -1
  86. package/dist/elements/UnpublishMany/index.d.ts +1 -2
  87. package/dist/elements/UnpublishMany/index.d.ts.map +1 -1
  88. package/dist/elements/UnpublishMany/index.js +14 -42
  89. package/dist/elements/UnpublishMany/index.js.map +1 -1
  90. package/dist/exports/client/CodeEditor-L6GW2VQ6.js.map +0 -1
  91. package/dist/exports/client/{DatePicker-THCU4KZJ.js → DatePicker-HHQ6TPOW.js} +2 -2
  92. package/dist/exports/client/{DatePicker-THCU4KZJ.js.map → DatePicker-HHQ6TPOW.js.map} +0 -1
  93. package/dist/exports/client/chunk-5LKBKI4T.js.map +0 -1
  94. package/dist/exports/client/{chunk-EG3ZOHFS.js → chunk-IMEQ6NKQ.js} +2 -2
  95. package/dist/exports/client/{chunk-EG3ZOHFS.js.map → chunk-IMEQ6NKQ.js.map} +3 -4
  96. package/dist/exports/client/chunk-ZZDNSFEW.js.map +0 -1
  97. package/dist/exports/client/index.d.ts +2 -0
  98. package/dist/exports/client/index.d.ts.map +1 -1
  99. package/dist/exports/client/index.js +23 -23
  100. package/dist/exports/client/index.js.map +4 -5
  101. package/dist/fields/DateTime/index.d.ts.map +1 -1
  102. package/dist/fields/DateTime/index.js +24 -6
  103. package/dist/fields/DateTime/index.js.map +1 -1
  104. package/dist/fields/Join/index.d.ts.map +1 -1
  105. package/dist/fields/Join/index.js +8 -3
  106. package/dist/fields/Join/index.js.map +1 -1
  107. package/dist/fields/Select/Input.d.ts.map +1 -1
  108. package/dist/fields/Select/Input.js +2 -0
  109. package/dist/fields/Select/Input.js.map +1 -1
  110. package/dist/fields/Tabs/Tab/index.scss +2 -1
  111. package/dist/forms/Form/index.d.ts.map +1 -1
  112. package/dist/forms/Form/index.js +19 -8
  113. package/dist/forms/Form/index.js.map +1 -1
  114. package/dist/forms/Form/initContextState.d.ts.map +1 -1
  115. package/dist/forms/Form/initContextState.js +2 -0
  116. package/dist/forms/Form/initContextState.js.map +1 -1
  117. package/dist/forms/Form/types.d.ts +6 -0
  118. package/dist/forms/Form/types.d.ts.map +1 -1
  119. package/dist/forms/Form/types.js.map +1 -1
  120. package/dist/icons/Dots/index.d.ts +7 -0
  121. package/dist/icons/Dots/index.d.ts.map +1 -0
  122. package/dist/icons/Dots/index.js +12 -0
  123. package/dist/icons/Dots/index.js.map +1 -0
  124. package/dist/icons/Dots/index.scss +27 -0
  125. package/dist/providers/Selection/index.d.ts.map +1 -1
  126. package/dist/providers/Selection/index.js +5 -6
  127. package/dist/providers/Selection/index.js.map +1 -1
  128. package/dist/styles.css +1 -1
  129. package/dist/utilities/buildTableState.d.ts.map +1 -1
  130. package/dist/utilities/buildTableState.js +72 -20
  131. package/dist/utilities/buildTableState.js.map +1 -1
  132. package/dist/utilities/handleFormStateLocking.d.ts.map +1 -1
  133. package/dist/utilities/handleFormStateLocking.js +3 -6
  134. package/dist/utilities/handleFormStateLocking.js.map +1 -1
  135. package/dist/utilities/renderTable.d.ts +6 -4
  136. package/dist/utilities/renderTable.d.ts.map +1 -1
  137. package/dist/utilities/renderTable.js +49 -17
  138. package/dist/utilities/renderTable.js.map +1 -1
  139. package/dist/views/Edit/Auth/index.d.ts.map +1 -1
  140. package/dist/views/Edit/Auth/index.js +56 -55
  141. package/dist/views/Edit/Auth/index.js.map +1 -1
  142. package/dist/views/List/index.d.ts.map +1 -1
  143. package/dist/views/List/index.js +2 -0
  144. package/dist/views/List/index.js.map +1 -1
  145. package/package.json +5 -5
  146. package/dist/elements/DuplicateDocument/index.scss +0 -42
  147. package/dist/elements/LeaveWithoutSaving/index.scss +0 -39
  148. package/dist/elements/PublishMany/index.scss +0 -39
  149. package/dist/elements/StayLoggedIn/index.scss +0 -40
  150. package/dist/elements/UnpublishMany/index.scss +0 -39
@@ -2,7 +2,7 @@
2
2
 
3
3
  import { c as _c } from "react/compiler-runtime";
4
4
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
5
- import React, { useCallback, useEffect, useMemo, useState } from 'react';
5
+ import React, { Fragment, useCallback, useEffect, useMemo, useState } from 'react';
6
6
  import { toast } from 'sonner';
7
7
  import { Button } from '../../../elements/Button/index.js';
8
8
  import { EmailAndUsernameFields } from '../../../elements/EmailAndUsername/index.js';
@@ -18,7 +18,7 @@ import { APIKey } from './APIKey.js';
18
18
  import './index.scss';
19
19
  const baseClass = 'auth-fields';
20
20
  export const Auth = props => {
21
- const $ = _c(58);
21
+ const $ = _c(57);
22
22
  const {
23
23
  className,
24
24
  collectionSlug,
@@ -59,6 +59,12 @@ export const Auth = props => {
59
59
  const {
60
60
  api
61
61
  } = t1;
62
+ const enableFields = !disableLocalStrategy || typeof disableLocalStrategy === "object" && disableLocalStrategy.enableFields === true;
63
+ const disabled = readOnly || isInitializing;
64
+ const apiKeyPermissions = docPermissions?.fields === true ? true : docPermissions?.fields?.enableAPIKey;
65
+ const apiKeyReadOnly = readOnly || apiKeyPermissions === true || apiKeyPermissions && typeof apiKeyPermissions === "object" && !apiKeyPermissions?.update;
66
+ const enableAPIKeyReadOnly = readOnly || apiKeyPermissions !== true && !apiKeyPermissions?.update;
67
+ const canReadApiKey = apiKeyPermissions === true || apiKeyPermissions?.read;
62
68
  let t2;
63
69
  bb0: {
64
70
  const collection = permissions?.collections?.[collectionSlug];
@@ -69,11 +75,6 @@ export const Auth = props => {
69
75
  t2 = false;
70
76
  }
71
77
  const hasPermissionToUnlock = t2;
72
- const apiKeyPermissions = docPermissions?.fields === true ? true : docPermissions?.fields?.enableAPIKey;
73
- const apiKeyReadOnly = readOnly || apiKeyPermissions === true || apiKeyPermissions && typeof apiKeyPermissions === "object" && !apiKeyPermissions?.update;
74
- const enableAPIKeyReadOnly = readOnly || apiKeyPermissions !== true && !apiKeyPermissions?.update;
75
- const canReadApiKey = apiKeyPermissions === true || apiKeyPermissions?.read;
76
- const canReadEnableAPIKey = apiKeyPermissions === true || apiKeyPermissions?.read;
77
78
  let t3;
78
79
  if ($[0] !== dispatchFields || $[1] !== setValidateBeforeSubmit || $[2] !== t) {
79
80
  t3 = showPasswordFields => {
@@ -165,10 +166,9 @@ export const Auth = props => {
165
166
  t6 = $[15];
166
167
  }
167
168
  useEffect(t5, t6);
168
- if (disableLocalStrategy && !useAPIKey) {
169
+ if (disableLocalStrategy && !enableFields && !useAPIKey) {
169
170
  return null;
170
171
  }
171
- const disabled = readOnly || isInitializing;
172
172
  let t7;
173
173
  if ($[16] !== className) {
174
174
  t7 = [baseClass, className].filter(Boolean);
@@ -179,42 +179,43 @@ export const Auth = props => {
179
179
  }
180
180
  const t8 = t7.join(" ");
181
181
  let t9;
182
- if ($[18] !== apiKeyReadOnly || $[19] !== canReadApiKey || $[20] !== canReadEnableAPIKey || $[21] !== changingPassword || $[22] !== collectionSlug || $[23] !== disableLocalStrategy || $[24] !== disabled || $[25] !== docPermissions?.fields || $[26] !== enableAPIKey?.value || $[27] !== enableAPIKeyReadOnly || $[28] !== handleChangePassword || $[29] !== hasPermissionToUnlock || $[30] !== isEditing || $[31] !== loginWithUsername || $[32] !== operation || $[33] !== readOnly || $[34] !== requirePassword || $[35] !== t || $[36] !== t8 || $[37] !== unlock || $[38] !== useAPIKey || $[39] !== verify) {
182
+ if ($[18] !== apiKeyReadOnly || $[19] !== canReadApiKey || $[20] !== changingPassword || $[21] !== collectionSlug || $[22] !== disableLocalStrategy || $[23] !== disabled || $[24] !== docPermissions?.fields || $[25] !== enableAPIKey?.value || $[26] !== enableAPIKeyReadOnly || $[27] !== enableFields || $[28] !== handleChangePassword || $[29] !== hasPermissionToUnlock || $[30] !== isEditing || $[31] !== loginWithUsername || $[32] !== operation || $[33] !== readOnly || $[34] !== requirePassword || $[35] !== t || $[36] !== t8 || $[37] !== unlock || $[38] !== useAPIKey || $[39] !== verify) {
183
183
  let t10;
184
- if ($[41] !== apiKeyReadOnly || $[42] !== canReadApiKey || $[43] !== canReadEnableAPIKey || $[44] !== collectionSlug || $[45] !== disabled || $[46] !== enableAPIKey?.value || $[47] !== enableAPIKeyReadOnly || $[48] !== t || $[49] !== useAPIKey) {
185
- t10 = useAPIKey && _jsxs("div", {
184
+ if ($[41] !== apiKeyReadOnly || $[42] !== canReadApiKey || $[43] !== collectionSlug || $[44] !== disabled || $[45] !== enableAPIKey?.value || $[46] !== enableAPIKeyReadOnly || $[47] !== t || $[48] !== useAPIKey) {
185
+ t10 = useAPIKey && _jsx("div", {
186
186
  className: `${baseClass}__api-key`,
187
- children: [canReadEnableAPIKey && _jsx(CheckboxField, {
188
- field: {
189
- name: "enableAPIKey",
190
- admin: {
191
- disabled,
192
- readOnly: enableAPIKeyReadOnly
187
+ children: canReadApiKey && _jsxs(Fragment, {
188
+ children: [_jsx(CheckboxField, {
189
+ field: {
190
+ name: "enableAPIKey",
191
+ admin: {
192
+ disabled,
193
+ readOnly: enableAPIKeyReadOnly
194
+ },
195
+ label: t("authentication:enableAPIKey")
193
196
  },
194
- label: t("authentication:enableAPIKey")
195
- },
196
- path: "enableAPIKey",
197
- schemaPath: `${collectionSlug}.enableAPIKey`
198
- }), canReadApiKey && _jsx(APIKey, {
199
- enabled: !!enableAPIKey?.value,
200
- readOnly: apiKeyReadOnly
201
- })]
197
+ path: "enableAPIKey",
198
+ schemaPath: `${collectionSlug}.enableAPIKey`
199
+ }), _jsx(APIKey, {
200
+ enabled: !!enableAPIKey?.value,
201
+ readOnly: apiKeyReadOnly
202
+ })]
203
+ })
202
204
  });
203
205
  $[41] = apiKeyReadOnly;
204
206
  $[42] = canReadApiKey;
205
- $[43] = canReadEnableAPIKey;
206
- $[44] = collectionSlug;
207
- $[45] = disabled;
208
- $[46] = enableAPIKey?.value;
209
- $[47] = enableAPIKeyReadOnly;
210
- $[48] = t;
211
- $[49] = useAPIKey;
212
- $[50] = t10;
207
+ $[43] = collectionSlug;
208
+ $[44] = disabled;
209
+ $[45] = enableAPIKey?.value;
210
+ $[46] = enableAPIKeyReadOnly;
211
+ $[47] = t;
212
+ $[48] = useAPIKey;
213
+ $[49] = t10;
213
214
  } else {
214
- t10 = $[50];
215
+ t10 = $[49];
215
216
  }
216
217
  let t11;
217
- if ($[51] !== collectionSlug || $[52] !== disabled || $[53] !== isEditing || $[54] !== readOnly || $[55] !== t || $[56] !== verify) {
218
+ if ($[50] !== collectionSlug || $[51] !== disabled || $[52] !== isEditing || $[53] !== readOnly || $[54] !== t || $[55] !== verify) {
218
219
  t11 = verify && isEditing && _jsx(CheckboxField, {
219
220
  field: {
220
221
  name: "_verified",
@@ -227,26 +228,26 @@ export const Auth = props => {
227
228
  path: "_verified",
228
229
  schemaPath: `${collectionSlug}._verified`
229
230
  });
230
- $[51] = collectionSlug;
231
- $[52] = disabled;
232
- $[53] = isEditing;
233
- $[54] = readOnly;
234
- $[55] = t;
235
- $[56] = verify;
236
- $[57] = t11;
231
+ $[50] = collectionSlug;
232
+ $[51] = disabled;
233
+ $[52] = isEditing;
234
+ $[53] = readOnly;
235
+ $[54] = t;
236
+ $[55] = verify;
237
+ $[56] = t11;
237
238
  } else {
238
- t11 = $[57];
239
+ t11 = $[56];
239
240
  }
240
241
  t9 = _jsxs("div", {
241
242
  className: t8,
242
- children: [!disableLocalStrategy && _jsxs(React.Fragment, {
243
+ children: [enableFields && _jsxs(React.Fragment, {
243
244
  children: [_jsx(EmailAndUsernameFields, {
244
245
  loginWithUsername,
245
246
  operation,
246
247
  permissions: docPermissions?.fields,
247
248
  readOnly,
248
249
  t
249
- }), (changingPassword || requirePassword) && _jsxs("div", {
250
+ }), (changingPassword || requirePassword) && (!disableLocalStrategy || !enableFields) && _jsxs("div", {
250
251
  className: `${baseClass}__changing-password`,
251
252
  children: [_jsx(PasswordField, {
252
253
  autoComplete: "new-password",
@@ -271,7 +272,7 @@ export const Auth = props => {
271
272
  onClick: () => handleChangePassword(false),
272
273
  size: "medium",
273
274
  children: t("general:cancel")
274
- }), !changingPassword && !requirePassword && _jsx(Button, {
275
+ }), !changingPassword && !requirePassword && !disableLocalStrategy && _jsx(Button, {
275
276
  buttonStyle: "secondary",
276
277
  disabled,
277
278
  id: "change-password",
@@ -290,14 +291,14 @@ export const Auth = props => {
290
291
  });
291
292
  $[18] = apiKeyReadOnly;
292
293
  $[19] = canReadApiKey;
293
- $[20] = canReadEnableAPIKey;
294
- $[21] = changingPassword;
295
- $[22] = collectionSlug;
296
- $[23] = disableLocalStrategy;
297
- $[24] = disabled;
298
- $[25] = docPermissions?.fields;
299
- $[26] = enableAPIKey?.value;
300
- $[27] = enableAPIKeyReadOnly;
294
+ $[20] = changingPassword;
295
+ $[21] = collectionSlug;
296
+ $[22] = disableLocalStrategy;
297
+ $[23] = disabled;
298
+ $[24] = docPermissions?.fields;
299
+ $[25] = enableAPIKey?.value;
300
+ $[26] = enableAPIKeyReadOnly;
301
+ $[27] = enableFields;
301
302
  $[28] = handleChangePassword;
302
303
  $[29] = hasPermissionToUnlock;
303
304
  $[30] = isEditing;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["c","_c","React","useCallback","useEffect","useMemo","useState","toast","Button","EmailAndUsernameFields","CheckboxField","ConfirmPasswordField","PasswordField","useFormFields","useFormModified","useAuth","useConfig","useDocumentInfo","useTranslation","APIKey","baseClass","Auth","props","$","className","collectionSlug","disableLocalStrategy","email","loginWithUsername","operation","readOnly","requirePassword","setValidateBeforeSubmit","useAPIKey","username","verify","permissions","changingPassword","setChangingPassword","enableAPIKey","_temp","dispatchFields","_temp2","modified","i18n","t","docPermissions","isEditing","isInitializing","config","t0","routes","t1","serverURL","api","t2","bb0","collection","collections","Boolean","unlock","undefined","hasPermissionToUnlock","apiKeyPermissions","fields","apiKeyReadOnly","update","enableAPIKeyReadOnly","canReadApiKey","read","canReadEnableAPIKey","t3","showPasswordFields","type","errorMessage","path","valid","handleChangePassword","t4","language","url","response","fetch","body","JSON","stringify","credentials","headers","method","status","success","error","t5","t6","disabled","t7","filter","t8","join","t9","value","t10","_jsxs","children","_jsx","field","name","admin","label","schemaPath","enabled","t11","Fragment","autoComplete","required","indexPath","parentPath","parentSchemaPath","buttonStyle","onClick","size","id","reducer"],"sources":["../../../../src/views/Edit/Auth/index.tsx"],"sourcesContent":["'use client'\n\nimport React, { useCallback, useEffect, useMemo, useState } from 'react'\nimport { toast } from 'sonner'\n\nimport type { Props } from './types.js'\n\nimport { Button } from '../../../elements/Button/index.js'\nimport { EmailAndUsernameFields } from '../../../elements/EmailAndUsername/index.js'\nimport { CheckboxField } from '../../../fields/Checkbox/index.js'\nimport { ConfirmPasswordField } from '../../../fields/ConfirmPassword/index.js'\nimport { PasswordField } from '../../../fields/Password/index.js'\nimport { useFormFields, useFormModified } from '../../../forms/Form/context.js'\nimport { useAuth } from '../../../providers/Auth/index.js'\nimport { useConfig } from '../../../providers/Config/index.js'\nimport { useDocumentInfo } from '../../../providers/DocumentInfo/index.js'\nimport { useTranslation } from '../../../providers/Translation/index.js'\nimport { APIKey } from './APIKey.js'\nimport './index.scss'\n\nconst baseClass = 'auth-fields'\n\nexport const Auth: React.FC<Props> = (props) => {\n const {\n className,\n collectionSlug,\n disableLocalStrategy,\n email,\n loginWithUsername,\n operation,\n readOnly,\n requirePassword,\n setValidateBeforeSubmit,\n useAPIKey,\n username,\n verify,\n } = props\n\n const { permissions } = useAuth()\n const [changingPassword, setChangingPassword] = useState(requirePassword)\n const enableAPIKey = useFormFields(([fields]) => (fields && fields?.enableAPIKey) || null)\n const dispatchFields = useFormFields((reducer) => reducer[1])\n const modified = useFormModified()\n const { i18n, t } = useTranslation()\n const { docPermissions, isEditing, isInitializing } = useDocumentInfo()\n\n const {\n config: {\n routes: { api },\n serverURL,\n },\n } = useConfig()\n\n const hasPermissionToUnlock: boolean = useMemo(() => {\n const collection = permissions?.collections?.[collectionSlug]\n\n if (collection) {\n return Boolean('unlock' in collection ? collection.unlock : undefined)\n }\n\n return false\n }, [permissions, collectionSlug])\n\n const apiKeyPermissions =\n docPermissions?.fields === true ? true : docPermissions?.fields?.enableAPIKey\n\n const apiKeyReadOnly =\n readOnly ||\n apiKeyPermissions === true ||\n (apiKeyPermissions && typeof apiKeyPermissions === 'object' && !apiKeyPermissions?.update)\n\n const enableAPIKeyReadOnly =\n readOnly || (apiKeyPermissions !== true && !apiKeyPermissions?.update)\n\n const canReadApiKey = apiKeyPermissions === true || apiKeyPermissions?.read\n const canReadEnableAPIKey = apiKeyPermissions === true || apiKeyPermissions?.read\n\n const handleChangePassword = useCallback(\n (showPasswordFields: boolean) => {\n if (showPasswordFields) {\n setValidateBeforeSubmit(true)\n\n dispatchFields({\n type: 'UPDATE',\n errorMessage: t('validation:required'),\n path: 'password',\n valid: false,\n })\n\n dispatchFields({\n type: 'UPDATE',\n errorMessage: t('validation:required'),\n path: 'confirm-password',\n valid: false,\n })\n } else {\n setValidateBeforeSubmit(false)\n dispatchFields({ type: 'REMOVE', path: 'password' })\n dispatchFields({ type: 'REMOVE', path: 'confirm-password' })\n }\n\n setChangingPassword(showPasswordFields)\n },\n [dispatchFields, t, setValidateBeforeSubmit],\n )\n\n const unlock = useCallback(async () => {\n const url = `${serverURL}${api}/${collectionSlug}/unlock`\n const response = await fetch(url, {\n body:\n loginWithUsername && username ? JSON.stringify({ username }) : JSON.stringify({ email }),\n credentials: 'include',\n headers: {\n 'Accept-Language': i18n.language,\n 'Content-Type': 'application/json',\n },\n method: 'post',\n })\n\n if (response.status === 200) {\n toast.success(t('authentication:successfullyUnlocked'))\n } else {\n toast.error(t('authentication:failedToUnlock'))\n }\n }, [i18n, serverURL, api, collectionSlug, email, username, t, loginWithUsername])\n\n useEffect(() => {\n if (!modified) {\n setChangingPassword(false)\n }\n }, [modified])\n\n if (disableLocalStrategy && !useAPIKey) {\n return null\n }\n\n const disabled = readOnly || isInitializing\n\n return (\n <div className={[baseClass, className].filter(Boolean).join(' ')}>\n {!disableLocalStrategy && (\n <React.Fragment>\n <EmailAndUsernameFields\n loginWithUsername={loginWithUsername}\n operation={operation}\n permissions={docPermissions?.fields}\n readOnly={readOnly}\n t={t}\n />\n {(changingPassword || requirePassword) && (\n <div className={`${baseClass}__changing-password`}>\n <PasswordField\n autoComplete=\"new-password\"\n field={{\n name: 'password',\n label: t('authentication:newPassword'),\n required: true,\n }}\n indexPath=\"\"\n parentPath=\"\"\n parentSchemaPath=\"\"\n path=\"password\"\n schemaPath=\"password\"\n />\n <ConfirmPasswordField disabled={readOnly} />\n </div>\n )}\n <div className={`${baseClass}__controls`}>\n {changingPassword && !requirePassword && (\n <Button\n buttonStyle=\"secondary\"\n disabled={disabled}\n onClick={() => handleChangePassword(false)}\n size=\"medium\"\n >\n {t('general:cancel')}\n </Button>\n )}\n {!changingPassword && !requirePassword && (\n <Button\n buttonStyle=\"secondary\"\n disabled={disabled}\n id=\"change-password\"\n onClick={() => handleChangePassword(true)}\n size=\"medium\"\n >\n {t('authentication:changePassword')}\n </Button>\n )}\n {operation === 'update' && hasPermissionToUnlock && (\n <Button\n buttonStyle=\"secondary\"\n disabled={disabled}\n onClick={() => void unlock()}\n size=\"medium\"\n >\n {t('authentication:forceUnlock')}\n </Button>\n )}\n </div>\n </React.Fragment>\n )}\n {useAPIKey && (\n <div className={`${baseClass}__api-key`}>\n {canReadEnableAPIKey && (\n <CheckboxField\n field={{\n name: 'enableAPIKey',\n admin: { disabled, readOnly: enableAPIKeyReadOnly },\n label: t('authentication:enableAPIKey'),\n }}\n path=\"enableAPIKey\"\n schemaPath={`${collectionSlug}.enableAPIKey`}\n />\n )}\n {canReadApiKey && <APIKey enabled={!!enableAPIKey?.value} readOnly={apiKeyReadOnly} />}\n </div>\n )}\n {verify && isEditing && (\n <CheckboxField\n field={{\n name: '_verified',\n admin: { disabled, readOnly },\n label: t('authentication:verified'),\n }}\n path=\"_verified\"\n schemaPath={`${collectionSlug}._verified`}\n />\n )}\n </div>\n )\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["c","_c","React","Fragment","useCallback","useEffect","useMemo","useState","toast","Button","EmailAndUsernameFields","CheckboxField","ConfirmPasswordField","PasswordField","useFormFields","useFormModified","useAuth","useConfig","useDocumentInfo","useTranslation","APIKey","baseClass","Auth","props","$","className","collectionSlug","disableLocalStrategy","email","loginWithUsername","operation","readOnly","requirePassword","setValidateBeforeSubmit","useAPIKey","username","verify","permissions","changingPassword","setChangingPassword","enableAPIKey","_temp","dispatchFields","_temp2","modified","i18n","t","docPermissions","isEditing","isInitializing","config","t0","routes","t1","serverURL","api","enableFields","disabled","apiKeyPermissions","fields","apiKeyReadOnly","update","enableAPIKeyReadOnly","canReadApiKey","read","t2","bb0","collection","collections","Boolean","unlock","undefined","hasPermissionToUnlock","t3","showPasswordFields","type","errorMessage","path","valid","handleChangePassword","t4","language","url","response","fetch","body","JSON","stringify","credentials","headers","method","status","success","error","t5","t6","t7","filter","t8","join","t9","value","t10","_jsx","children","_jsxs","field","name","admin","label","schemaPath","enabled","t11","autoComplete","required","indexPath","parentPath","parentSchemaPath","buttonStyle","onClick","size","id","reducer"],"sources":["../../../../src/views/Edit/Auth/index.tsx"],"sourcesContent":["'use client'\n\nimport React, { Fragment, useCallback, useEffect, useMemo, useState } from 'react'\nimport { toast } from 'sonner'\n\nimport type { Props } from './types.js'\n\nimport { Button } from '../../../elements/Button/index.js'\nimport { EmailAndUsernameFields } from '../../../elements/EmailAndUsername/index.js'\nimport { CheckboxField } from '../../../fields/Checkbox/index.js'\nimport { ConfirmPasswordField } from '../../../fields/ConfirmPassword/index.js'\nimport { PasswordField } from '../../../fields/Password/index.js'\nimport { useFormFields, useFormModified } from '../../../forms/Form/context.js'\nimport { useAuth } from '../../../providers/Auth/index.js'\nimport { useConfig } from '../../../providers/Config/index.js'\nimport { useDocumentInfo } from '../../../providers/DocumentInfo/index.js'\nimport { useTranslation } from '../../../providers/Translation/index.js'\nimport { APIKey } from './APIKey.js'\nimport './index.scss'\n\nconst baseClass = 'auth-fields'\n\nexport const Auth: React.FC<Props> = (props) => {\n const {\n className,\n collectionSlug,\n disableLocalStrategy,\n email,\n loginWithUsername,\n operation,\n readOnly,\n requirePassword,\n setValidateBeforeSubmit,\n useAPIKey,\n username,\n verify,\n } = props\n\n const { permissions } = useAuth()\n const [changingPassword, setChangingPassword] = useState(requirePassword)\n const enableAPIKey = useFormFields(([fields]) => (fields && fields?.enableAPIKey) || null)\n const dispatchFields = useFormFields((reducer) => reducer[1])\n const modified = useFormModified()\n const { i18n, t } = useTranslation()\n const { docPermissions, isEditing, isInitializing } = useDocumentInfo()\n const {\n config: {\n routes: { api },\n serverURL,\n },\n } = useConfig()\n\n const enableFields =\n !disableLocalStrategy ||\n (typeof disableLocalStrategy === 'object' && disableLocalStrategy.enableFields === true)\n\n const disabled = readOnly || isInitializing\n\n const apiKeyPermissions =\n docPermissions?.fields === true ? true : docPermissions?.fields?.enableAPIKey\n\n const apiKeyReadOnly =\n readOnly ||\n apiKeyPermissions === true ||\n (apiKeyPermissions && typeof apiKeyPermissions === 'object' && !apiKeyPermissions?.update)\n\n const enableAPIKeyReadOnly =\n readOnly || (apiKeyPermissions !== true && !apiKeyPermissions?.update)\n\n const canReadApiKey = apiKeyPermissions === true || apiKeyPermissions?.read\n\n const hasPermissionToUnlock: boolean = useMemo(() => {\n const collection = permissions?.collections?.[collectionSlug]\n\n if (collection) {\n return Boolean('unlock' in collection ? collection.unlock : undefined)\n }\n\n return false\n }, [permissions, collectionSlug])\n\n const handleChangePassword = useCallback(\n (showPasswordFields: boolean) => {\n if (showPasswordFields) {\n setValidateBeforeSubmit(true)\n\n dispatchFields({\n type: 'UPDATE',\n errorMessage: t('validation:required'),\n path: 'password',\n valid: false,\n })\n\n dispatchFields({\n type: 'UPDATE',\n errorMessage: t('validation:required'),\n path: 'confirm-password',\n valid: false,\n })\n } else {\n setValidateBeforeSubmit(false)\n dispatchFields({ type: 'REMOVE', path: 'password' })\n dispatchFields({ type: 'REMOVE', path: 'confirm-password' })\n }\n\n setChangingPassword(showPasswordFields)\n },\n [dispatchFields, t, setValidateBeforeSubmit],\n )\n\n const unlock = useCallback(async () => {\n const url = `${serverURL}${api}/${collectionSlug}/unlock`\n const response = await fetch(url, {\n body:\n loginWithUsername && username ? JSON.stringify({ username }) : JSON.stringify({ email }),\n credentials: 'include',\n headers: {\n 'Accept-Language': i18n.language,\n 'Content-Type': 'application/json',\n },\n method: 'post',\n })\n\n if (response.status === 200) {\n toast.success(t('authentication:successfullyUnlocked'))\n } else {\n toast.error(t('authentication:failedToUnlock'))\n }\n }, [i18n, serverURL, api, collectionSlug, email, username, t, loginWithUsername])\n\n useEffect(() => {\n if (!modified) {\n setChangingPassword(false)\n }\n }, [modified])\n\n if (disableLocalStrategy && !enableFields && !useAPIKey) {\n return null\n }\n\n return (\n <div className={[baseClass, className].filter(Boolean).join(' ')}>\n {enableFields && (\n <React.Fragment>\n <EmailAndUsernameFields\n loginWithUsername={loginWithUsername}\n operation={operation}\n permissions={docPermissions?.fields}\n readOnly={readOnly}\n t={t}\n />\n {(changingPassword || requirePassword) && (!disableLocalStrategy || !enableFields) && (\n <div className={`${baseClass}__changing-password`}>\n <PasswordField\n autoComplete=\"new-password\"\n field={{\n name: 'password',\n label: t('authentication:newPassword'),\n required: true,\n }}\n indexPath=\"\"\n parentPath=\"\"\n parentSchemaPath=\"\"\n path=\"password\"\n schemaPath=\"password\"\n />\n <ConfirmPasswordField disabled={readOnly} />\n </div>\n )}\n <div className={`${baseClass}__controls`}>\n {changingPassword && !requirePassword && (\n <Button\n buttonStyle=\"secondary\"\n disabled={disabled}\n onClick={() => handleChangePassword(false)}\n size=\"medium\"\n >\n {t('general:cancel')}\n </Button>\n )}\n {!changingPassword && !requirePassword && !disableLocalStrategy && (\n <Button\n buttonStyle=\"secondary\"\n disabled={disabled}\n id=\"change-password\"\n onClick={() => handleChangePassword(true)}\n size=\"medium\"\n >\n {t('authentication:changePassword')}\n </Button>\n )}\n {operation === 'update' && hasPermissionToUnlock && (\n <Button\n buttonStyle=\"secondary\"\n disabled={disabled}\n onClick={() => void unlock()}\n size=\"medium\"\n >\n {t('authentication:forceUnlock')}\n </Button>\n )}\n </div>\n </React.Fragment>\n )}\n {useAPIKey && (\n <div className={`${baseClass}__api-key`}>\n {canReadApiKey && (\n <Fragment>\n <CheckboxField\n field={{\n name: 'enableAPIKey',\n admin: { disabled, readOnly: enableAPIKeyReadOnly },\n label: t('authentication:enableAPIKey'),\n }}\n path=\"enableAPIKey\"\n schemaPath={`${collectionSlug}.enableAPIKey`}\n />\n <APIKey enabled={!!enableAPIKey?.value} readOnly={apiKeyReadOnly} />\n </Fragment>\n )}\n </div>\n )}\n {verify && isEditing && (\n <CheckboxField\n field={{\n name: '_verified',\n admin: { disabled, readOnly },\n label: t('authentication:verified'),\n }}\n path=\"_verified\"\n schemaPath={`${collectionSlug}._verified`}\n />\n )}\n </div>\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/views/List/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAA;AAKlD,OAAO,KAAwC,MAAM,OAAO,CAAA;AA6B5D,OAAO,cAAc,CAAA;AAIrB,wBAAgB,eAAe,CAAC,KAAK,EAAE,mBAAmB,qBA2PzD"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/views/List/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAA;AAKlD,OAAO,KAAwC,MAAM,OAAO,CAAA;AA6B5D,OAAO,cAAc,CAAA;AAIrB,wBAAgB,eAAe,CAAC,KAAK,EAAE,mBAAmB,qBA6PzD"}
@@ -50,6 +50,7 @@ export function DefaultListView(props) {
50
50
  disableBulkEdit,
51
51
  enableRowSelections,
52
52
  hasCreatePermission,
53
+ listMenuItems,
53
54
  listPreferences,
54
55
  newDocumentURL,
55
56
  preferenceKey,
@@ -227,6 +228,7 @@ export function DefaultListView(props) {
227
228
  collectionSlug,
228
229
  disableBulkDelete,
229
230
  disableBulkEdit,
231
+ listMenuItems,
230
232
  renderedFilters,
231
233
  resolvedFilterOptions
232
234
  }), BeforeListTable, docs.length > 0 && _jsx(RelationshipProvider, {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["c","_c","getTranslation","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","DefaultListView","props","$","AfterList","AfterListTable","beforeActions","BeforeList","BeforeListTable","collectionSlug","columnState","Description","disableBulkDelete","disableBulkEdit","enableRowSelections","hasCreatePermission","listPreferences","newDocumentURL","preferenceKey","renderedFilters","resolvedFilterOptions","Table","InitialTable","setTable","createNewDrawerSlug","drawerSlug","listDrawerSlug","onBulkSelect","t0","t1","user","getEntityConfig","router","data","defaultLimit","initialLimit","handlePageChange","handlePerPageChange","query","openModal","setCollectionSlug","setCurrentActivePath","setOnSuccess","bulkUploadDrawerSlug","collectionConfig","labels","upload","isUploadCollection","Boolean","isBulkUploadEnabled","bulkUpload","isInDrawer","i18n","t","drawerDepth","setStepNav","breakpoints","t2","s","smallBreak","t3","t4","docs","map","_temp","refresh","openBulkUpload","label","plural","t5","_jsx","onClick","children","className","_jsxs","totalDocs","CustomComponent","Fallback","description","admin","hideFileInputOnCreate","length","el","singular","to","hasNextPage","hasPrevPage","limit","nextPage","numberOfNeighbors","onChange","page","prevPage","totalPages","handleChange","Number","limits","pagination","resetPage","pagingCounter","collection","doc","filesize"],"sources":["../../../src/views/List/index.tsx"],"sourcesContent":["'use client'\n\nimport type { ListViewClientProps } from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport { useRouter } from 'next/navigation.js'\nimport { formatFilesize, isNumber } from 'payload/shared'\nimport React, { Fragment, useEffect, useState } from 'react'\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'\n\nexport function DefaultListView(props: ListViewClientProps) {\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 resolvedFilterOptions,\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\n const { openModal } = useModal()\n const { setCollectionSlug, setCurrentActivePath, setOnSuccess } = useBulkUpload()\n const { drawerSlug: bulkUploadDrawerSlug } = useBulkUpload()\n\n const collectionConfig = getEntityConfig({ collectionSlug })\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 setCurrentActivePath(collectionSlug)\n openModal(bulkUploadDrawerSlug)\n setOnSuccess(collectionSlug, () => router.refresh())\n }, [\n router,\n collectionSlug,\n bulkUploadDrawerSlug,\n openModal,\n setCollectionSlug,\n setCurrentActivePath,\n setOnSuccess,\n ])\n\n useEffect(() => {\n if (!drawerDepth) {\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\n collectionSlug={collectionSlug}\n description={collectionConfig?.admin?.description}\n />\n }\n />\n </div>\n }\n hasCreatePermission={hasCreatePermission}\n i18n={i18n}\n isBulkUploadEnabled={isBulkUploadEnabled && !upload.hideFileInputOnCreate}\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 resolvedFilterOptions={resolvedFilterOptions}\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\" 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":[]}
1
+ {"version":3,"file":"index.js","names":["c","_c","getTranslation","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","DefaultListView","props","$","AfterList","AfterListTable","beforeActions","BeforeList","BeforeListTable","collectionSlug","columnState","Description","disableBulkDelete","disableBulkEdit","enableRowSelections","hasCreatePermission","listMenuItems","listPreferences","newDocumentURL","preferenceKey","renderedFilters","resolvedFilterOptions","Table","InitialTable","setTable","createNewDrawerSlug","drawerSlug","listDrawerSlug","onBulkSelect","t0","t1","user","getEntityConfig","router","data","defaultLimit","initialLimit","handlePageChange","handlePerPageChange","query","openModal","setCollectionSlug","setCurrentActivePath","setOnSuccess","bulkUploadDrawerSlug","collectionConfig","labels","upload","isUploadCollection","Boolean","isBulkUploadEnabled","bulkUpload","isInDrawer","i18n","t","drawerDepth","setStepNav","breakpoints","t2","s","smallBreak","t3","t4","docs","map","_temp","refresh","openBulkUpload","label","plural","t5","_jsx","onClick","children","className","_jsxs","totalDocs","CustomComponent","Fallback","description","admin","hideFileInputOnCreate","length","el","singular","to","hasNextPage","hasPrevPage","limit","nextPage","numberOfNeighbors","onChange","page","prevPage","totalPages","handleChange","Number","limits","pagination","resetPage","pagingCounter","collection","doc","filesize"],"sources":["../../../src/views/List/index.tsx"],"sourcesContent":["'use client'\n\nimport type { ListViewClientProps } from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport { useRouter } from 'next/navigation.js'\nimport { formatFilesize, isNumber } from 'payload/shared'\nimport React, { Fragment, useEffect, useState } from 'react'\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'\n\nexport function DefaultListView(props: ListViewClientProps) {\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 listMenuItems,\n listPreferences,\n newDocumentURL,\n preferenceKey,\n renderedFilters,\n resolvedFilterOptions,\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\n const { openModal } = useModal()\n const { setCollectionSlug, setCurrentActivePath, setOnSuccess } = useBulkUpload()\n const { drawerSlug: bulkUploadDrawerSlug } = useBulkUpload()\n\n const collectionConfig = getEntityConfig({ collectionSlug })\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 setCurrentActivePath(collectionSlug)\n openModal(bulkUploadDrawerSlug)\n setOnSuccess(collectionSlug, () => router.refresh())\n }, [\n router,\n collectionSlug,\n bulkUploadDrawerSlug,\n openModal,\n setCollectionSlug,\n setCurrentActivePath,\n setOnSuccess,\n ])\n\n useEffect(() => {\n if (!drawerDepth) {\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\n collectionSlug={collectionSlug}\n description={collectionConfig?.admin?.description}\n />\n }\n />\n </div>\n }\n hasCreatePermission={hasCreatePermission}\n i18n={i18n}\n isBulkUploadEnabled={isBulkUploadEnabled && !upload.hideFileInputOnCreate}\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 listMenuItems={listMenuItems}\n renderedFilters={renderedFilters}\n resolvedFilterOptions={resolvedFilterOptions}\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\" 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.24.0-canary.d22403c",
3
+ "version": "3.24.0",
4
4
  "homepage": "https://payloadcms.com",
5
5
  "repository": {
6
6
  "type": "git",
@@ -132,7 +132,7 @@
132
132
  "ts-essentials": "10.0.3",
133
133
  "use-context-selector": "2.0.0",
134
134
  "uuid": "10.0.0",
135
- "@payloadcms/translations": "3.24.0-canary.d22403c"
135
+ "@payloadcms/translations": "3.24.0"
136
136
  },
137
137
  "devDependencies": {
138
138
  "@babel/cli": "7.26.4",
@@ -148,14 +148,14 @@
148
148
  "esbuild": "0.24.2",
149
149
  "esbuild-sass-plugin": "3.3.1",
150
150
  "eslint-plugin-react-compiler": "19.0.0-beta-714736e-20250131",
151
- "@payloadcms/eslint-config": "3.9.0",
152
- "payload": "3.24.0-canary.d22403c"
151
+ "payload": "3.24.0",
152
+ "@payloadcms/eslint-config": "3.9.0"
153
153
  },
154
154
  "peerDependencies": {
155
155
  "next": "^15.0.0",
156
156
  "react": "^19.0.0 || ^19.0.0-rc-65a56d0e-20241020",
157
157
  "react-dom": "^19.0.0 || ^19.0.0-rc-65a56d0e-20241020",
158
- "payload": "3.24.0-canary.d22403c"
158
+ "payload": "3.24.0"
159
159
  },
160
160
  "engines": {
161
161
  "node": "^18.20.2 || >=20.9.0"
@@ -1,42 +0,0 @@
1
- @import '../../scss/styles.scss';
2
-
3
- @layer payload-default {
4
- .duplicate {
5
- &__modal {
6
- @include blur-bg;
7
- display: flex;
8
- align-items: center;
9
- justify-content: center;
10
- height: 100%;
11
- }
12
-
13
- &__wrapper {
14
- z-index: 1;
15
- position: relative;
16
- display: flex;
17
- flex-direction: column;
18
- gap: base(0.8);
19
- padding: base(2);
20
- max-width: base(36);
21
- }
22
-
23
- &__content {
24
- display: flex;
25
- flex-direction: column;
26
- gap: base(0.4);
27
-
28
- > * {
29
- margin: 0;
30
- }
31
- }
32
-
33
- &__controls {
34
- display: flex;
35
- gap: base(0.4);
36
-
37
- .btn {
38
- margin: 0;
39
- }
40
- }
41
- }
42
- }
@@ -1,39 +0,0 @@
1
- @import '../../scss/styles.scss';
2
-
3
- @layer payload-default {
4
- .leave-without-saving {
5
- @include blur-bg;
6
- display: flex;
7
- align-items: center;
8
- justify-content: center;
9
- height: 100%;
10
-
11
- &__wrapper {
12
- z-index: 1;
13
- position: relative;
14
- display: flex;
15
- flex-direction: column;
16
- gap: base(0.8);
17
- padding: base(2);
18
- }
19
-
20
- &__content {
21
- display: flex;
22
- flex-direction: column;
23
- gap: base(0.4);
24
-
25
- > * {
26
- margin: 0;
27
- }
28
- }
29
-
30
- &__controls {
31
- display: flex;
32
- gap: base(0.4);
33
-
34
- .btn {
35
- margin: 0;
36
- }
37
- }
38
- }
39
- }
@@ -1,39 +0,0 @@
1
- @import '../../scss/styles.scss';
2
-
3
- @layer payload-default {
4
- .publish-many {
5
- @include blur-bg;
6
- display: flex;
7
- align-items: center;
8
- justify-content: center;
9
- height: 100%;
10
-
11
- &__wrapper {
12
- z-index: 1;
13
- position: relative;
14
- display: flex;
15
- flex-direction: column;
16
- gap: base(0.8);
17
- padding: base(2);
18
- }
19
-
20
- &__content {
21
- display: flex;
22
- flex-direction: column;
23
- gap: base(0.4);
24
-
25
- > * {
26
- margin: 0;
27
- }
28
- }
29
-
30
- &__controls {
31
- display: flex;
32
- gap: base(0.4);
33
-
34
- .btn {
35
- margin: 0;
36
- }
37
- }
38
- }
39
- }
@@ -1,40 +0,0 @@
1
- @import '../../scss/styles.scss';
2
-
3
- @layer payload-default {
4
- .stay-logged-in {
5
- @include blur-bg;
6
- display: flex;
7
- align-items: center;
8
- justify-content: center;
9
- height: 100%;
10
-
11
- &__wrapper {
12
- z-index: 1;
13
- position: relative;
14
- display: flex;
15
- flex-direction: column;
16
- gap: var(--base);
17
- padding: base(2);
18
- }
19
-
20
- &__content {
21
- display: flex;
22
- flex-direction: column;
23
- gap: var(--base);
24
- max-width: base(36);
25
-
26
- > * {
27
- margin: 0;
28
- }
29
- }
30
-
31
- &__controls {
32
- display: flex;
33
- gap: var(--base);
34
-
35
- .btn {
36
- margin: 0;
37
- }
38
- }
39
- }
40
- }