@payloadcms/ui 3.55.0-canary.3 → 3.55.0-internal.b47bfce

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 (158) hide show
  1. package/dist/elements/BulkUpload/EditForm/index.js +18 -4
  2. package/dist/elements/BulkUpload/EditForm/index.js.map +1 -1
  3. package/dist/elements/ClipboardAction/index.js +74 -173
  4. package/dist/elements/ClipboardAction/index.js.map +1 -1
  5. package/dist/elements/CodeEditor/CodeEditor.js +67 -155
  6. package/dist/elements/CodeEditor/CodeEditor.js.map +1 -1
  7. package/dist/elements/Collapsible/index.js +7 -15
  8. package/dist/elements/Collapsible/index.js.map +1 -1
  9. package/dist/elements/ConfirmationModal/index.js +8 -44
  10. package/dist/elements/ConfirmationModal/index.js.map +1 -1
  11. package/dist/elements/CopyLocaleData/index.js +89 -97
  12. package/dist/elements/CopyLocaleData/index.js.map +1 -1
  13. package/dist/elements/CopyToClipboard/index.js +2 -22
  14. package/dist/elements/CopyToClipboard/index.js.map +1 -1
  15. package/dist/elements/DeleteMany/index.js +47 -83
  16. package/dist/elements/DeleteMany/index.js.map +1 -1
  17. package/dist/elements/DocumentControls/index.js +27 -55
  18. package/dist/elements/DocumentControls/index.js.map +1 -1
  19. package/dist/elements/DocumentDrawer/DrawerHeader/index.js +2 -10
  20. package/dist/elements/DocumentDrawer/DrawerHeader/index.js.map +1 -1
  21. package/dist/elements/DocumentDrawer/index.js +47 -99
  22. package/dist/elements/DocumentDrawer/index.js.map +1 -1
  23. package/dist/elements/DocumentFields/index.scss +1 -1
  24. package/dist/elements/Drawer/index.js +23 -57
  25. package/dist/elements/Drawer/index.js.map +1 -1
  26. package/dist/elements/DrawerActionHeader/index.js +3 -21
  27. package/dist/elements/DrawerActionHeader/index.js.map +1 -1
  28. package/dist/elements/FolderView/Drawers/MoveToFolder/index.js +149 -225
  29. package/dist/elements/FolderView/Drawers/MoveToFolder/index.js.map +1 -1
  30. package/dist/elements/FolderView/FolderFileCard/index.js +19 -27
  31. package/dist/elements/FolderView/FolderFileCard/index.js.map +1 -1
  32. package/dist/elements/FolderView/MoveDocToFolder/index.js +12 -23
  33. package/dist/elements/FolderView/MoveDocToFolder/index.js.map +1 -1
  34. package/dist/elements/FullscreenModal/index.js +10 -20
  35. package/dist/elements/FullscreenModal/index.js.map +1 -1
  36. package/dist/elements/ListDrawer/index.js +18 -24
  37. package/dist/elements/ListDrawer/index.js.map +1 -1
  38. package/dist/elements/ListHeader/TitleActions/ListCreateNewDocInFolderButton.js +19 -32
  39. package/dist/elements/ListHeader/TitleActions/ListCreateNewDocInFolderButton.js.map +1 -1
  40. package/dist/elements/ListHeaderTabs/DefaultListPill.js +15 -8
  41. package/dist/elements/ListHeaderTabs/DefaultListPill.js.map +1 -1
  42. package/dist/elements/ListSelection/index.js +11 -27
  43. package/dist/elements/ListSelection/index.js.map +1 -1
  44. package/dist/elements/LivePreview/Window/index.js +68 -139
  45. package/dist/elements/LivePreview/Window/index.js.map +1 -1
  46. package/dist/elements/Loading/index.js +2 -11
  47. package/dist/elements/Loading/index.js.map +1 -1
  48. package/dist/elements/LoadingOverlay/index.js +46 -102
  49. package/dist/elements/LoadingOverlay/index.js.map +1 -1
  50. package/dist/elements/Localizer/LocalizerLabel/index.js +23 -36
  51. package/dist/elements/Localizer/LocalizerLabel/index.js.map +1 -1
  52. package/dist/elements/PublishButton/index.d.ts.map +1 -1
  53. package/dist/elements/PublishButton/index.js +22 -11
  54. package/dist/elements/PublishButton/index.js.map +1 -1
  55. package/dist/elements/QueryPresets/QueryPresetToggler/index.js +41 -139
  56. package/dist/elements/QueryPresets/QueryPresetToggler/index.js.map +1 -1
  57. package/dist/elements/RenderIfInViewport/index.d.ts +2 -2
  58. package/dist/elements/RenderIfInViewport/index.d.ts.map +1 -1
  59. package/dist/elements/RenderIfInViewport/index.js.map +1 -1
  60. package/dist/elements/SelectRow/index.js +39 -40
  61. package/dist/elements/SelectRow/index.js.map +1 -1
  62. package/dist/elements/ShimmerEffect/index.js +20 -12
  63. package/dist/elements/ShimmerEffect/index.js.map +1 -1
  64. package/dist/elements/SortColumn/index.js +21 -30
  65. package/dist/elements/SortColumn/index.js.map +1 -1
  66. package/dist/elements/Table/DefaultCell/fields/Date/index.js +9 -37
  67. package/dist/elements/Table/DefaultCell/fields/Date/index.js.map +1 -1
  68. package/dist/elements/Table/DefaultCell/fields/Relationship/index.js +35 -37
  69. package/dist/elements/Table/DefaultCell/fields/Relationship/index.js.map +1 -1
  70. package/dist/elements/Table/DefaultCell/fields/Select/index.js +12 -27
  71. package/dist/elements/Table/DefaultCell/fields/Select/index.js.map +1 -1
  72. package/dist/elements/Thumbnail/index.js +35 -75
  73. package/dist/elements/Thumbnail/index.js.map +1 -1
  74. package/dist/elements/ThumbnailCard/index.js +17 -26
  75. package/dist/elements/ThumbnailCard/index.js.map +1 -1
  76. package/dist/elements/Tooltip/index.js +51 -127
  77. package/dist/elements/Tooltip/index.js.map +1 -1
  78. package/dist/elements/Upload/index.js +2 -10
  79. package/dist/elements/Upload/index.js.map +1 -1
  80. package/dist/elements/WhereBuilder/Condition/Select/index.js +31 -44
  81. package/dist/elements/WhereBuilder/Condition/Select/index.js.map +1 -1
  82. package/dist/exports/client/{CodeEditor-MIIBUJZ4.js → CodeEditor-O6BWJHD2.js} +2 -2
  83. package/dist/exports/client/{DatePicker-NMDEHPWL.js → DatePicker-F432AIH3.js} +2 -2
  84. package/dist/exports/client/{chunk-7RGKTZG2.js → chunk-AZDI6MW4.js} +1 -1
  85. package/dist/exports/client/{chunk-7RGKTZG2.js.map → chunk-AZDI6MW4.js.map} +1 -1
  86. package/dist/exports/client/{chunk-Z6O2JA43.js → chunk-FXAFULZQ.js} +6 -6
  87. package/dist/exports/client/{chunk-Z6O2JA43.js.map → chunk-FXAFULZQ.js.map} +3 -3
  88. package/dist/exports/client/index.d.ts +4 -2
  89. package/dist/exports/client/index.d.ts.map +1 -1
  90. package/dist/exports/client/index.js +12 -12
  91. package/dist/exports/client/index.js.map +4 -4
  92. package/dist/exports/rsc/index.d.ts +1 -0
  93. package/dist/exports/rsc/index.d.ts.map +1 -1
  94. package/dist/exports/rsc/index.js +1 -0
  95. package/dist/exports/rsc/index.js.map +1 -1
  96. package/dist/fields/Array/ArrayRow.d.ts +2 -3
  97. package/dist/fields/Array/ArrayRow.d.ts.map +1 -1
  98. package/dist/fields/Array/ArrayRow.js +13 -23
  99. package/dist/fields/Array/ArrayRow.js.map +1 -1
  100. package/dist/fields/Array/index.js +273 -477
  101. package/dist/fields/Array/index.js.map +1 -1
  102. package/dist/fields/Checkbox/Input.js +2 -19
  103. package/dist/fields/Checkbox/Input.js.map +1 -1
  104. package/dist/fields/FieldError/index.js +30 -29
  105. package/dist/fields/FieldError/index.js.map +1 -1
  106. package/dist/fields/FieldLabel/index.js +12 -64
  107. package/dist/fields/FieldLabel/index.js.map +1 -1
  108. package/dist/fields/Relationship/select-components/MultiValueLabel/index.js +45 -103
  109. package/dist/fields/Relationship/select-components/MultiValueLabel/index.js.map +1 -1
  110. package/dist/fields/Relationship/select-components/SingleValue/index.js +29 -44
  111. package/dist/fields/Relationship/select-components/SingleValue/index.js.map +1 -1
  112. package/dist/fields/Row/index.d.ts +1 -3
  113. package/dist/fields/Row/index.d.ts.map +1 -1
  114. package/dist/fields/Select/Input.js +18 -31
  115. package/dist/fields/Select/Input.js.map +1 -1
  116. package/dist/fields/Tabs/Tab/index.js +2 -11
  117. package/dist/fields/Tabs/Tab/index.js.map +1 -1
  118. package/dist/fields/Tabs/index.d.ts +2 -1
  119. package/dist/fields/Tabs/index.d.ts.map +1 -1
  120. package/dist/fields/Tabs/index.js +185 -225
  121. package/dist/fields/Tabs/index.js.map +1 -1
  122. package/dist/fields/Upload/RelationshipContent/index.js +79 -127
  123. package/dist/fields/Upload/RelationshipContent/index.js.map +1 -1
  124. package/dist/forms/RenderFields/RenderField.js +245 -237
  125. package/dist/forms/RenderFields/RenderField.js.map +1 -1
  126. package/dist/forms/RenderFields/types.d.ts +2 -10
  127. package/dist/forms/RenderFields/types.d.ts.map +1 -1
  128. package/dist/forms/RenderFields/types.js.map +1 -1
  129. package/dist/forms/fieldSchemasToFormState/serverFunctions/renderFieldServerFn.d.ts +30 -0
  130. package/dist/forms/fieldSchemasToFormState/serverFunctions/renderFieldServerFn.d.ts.map +1 -0
  131. package/dist/forms/fieldSchemasToFormState/serverFunctions/renderFieldServerFn.js +82 -0
  132. package/dist/forms/fieldSchemasToFormState/serverFunctions/renderFieldServerFn.js.map +1 -0
  133. package/dist/forms/useField/index.d.ts +5 -0
  134. package/dist/forms/useField/index.d.ts.map +1 -1
  135. package/dist/forms/useField/index.js +74 -45
  136. package/dist/forms/useField/index.js.map +1 -1
  137. package/dist/hooks/useIntersect.js +35 -53
  138. package/dist/hooks/useIntersect.js.map +1 -1
  139. package/dist/hooks/usePayloadAPI.js +36 -44
  140. package/dist/hooks/usePayloadAPI.js.map +1 -1
  141. package/dist/providers/ServerFunctions/index.d.ts +4 -1
  142. package/dist/providers/ServerFunctions/index.d.ts.map +1 -1
  143. package/dist/providers/ServerFunctions/index.js +13 -0
  144. package/dist/providers/ServerFunctions/index.js.map +1 -1
  145. package/dist/styles.css +1 -1
  146. package/dist/utilities/traverseForLocalizedFields.d.ts +3 -0
  147. package/dist/utilities/traverseForLocalizedFields.d.ts.map +1 -0
  148. package/dist/utilities/traverseForLocalizedFields.js +40 -0
  149. package/dist/utilities/traverseForLocalizedFields.js.map +1 -0
  150. package/dist/views/BrowseByFolder/index.js +37 -55
  151. package/dist/views/BrowseByFolder/index.js.map +1 -1
  152. package/dist/views/CollectionFolder/index.js +13 -40
  153. package/dist/views/CollectionFolder/index.js.map +1 -1
  154. package/dist/views/Edit/Auth/index.js +93 -105
  155. package/dist/views/Edit/Auth/index.js.map +1 -1
  156. package/package.json +7 -7
  157. /package/dist/exports/client/{CodeEditor-MIIBUJZ4.js.map → CodeEditor-O6BWJHD2.js.map} +0 -0
  158. /package/dist/exports/client/{DatePicker-NMDEHPWL.js.map → DatePicker-F432AIH3.js.map} +0 -0
@@ -19,7 +19,7 @@ import { APIKey } from './APIKey.js';
19
19
  import './index.scss';
20
20
  const baseClass = 'auth-fields';
21
21
  export const Auth = props => {
22
- const $ = _c(34);
22
+ const $ = _c(22);
23
23
  const {
24
24
  className,
25
25
  collectionSlug,
@@ -85,28 +85,44 @@ export const Auth = props => {
85
85
  }
86
86
  if (hasLoginFieldOverride) {
87
87
  const hasEmailAndUsernameFields = loginWithUsername && (loginWithUsername.requireEmail || loginWithUsername.allowEmailLogin);
88
+ let t2;
89
+ if ($[0] !== docPermissions.fields) {
90
+ t2 = getFieldPermissions({
91
+ field: {
92
+ name: "email",
93
+ type: "text"
94
+ },
95
+ operation: "read",
96
+ parentName: "",
97
+ permissions: docPermissions?.fields
98
+ });
99
+ $[0] = docPermissions.fields;
100
+ $[1] = t2;
101
+ } else {
102
+ t2 = $[1];
103
+ }
88
104
  const {
89
105
  operation: emailPermission
90
- } = getFieldPermissions({
91
- field: {
92
- name: "email",
93
- type: "text"
94
- },
95
- operation: "read",
96
- parentName: "",
97
- permissions: docPermissions?.fields
98
- });
106
+ } = t2;
107
+ let t3;
108
+ if ($[2] !== docPermissions.fields) {
109
+ t3 = getFieldPermissions({
110
+ field: {
111
+ name: "username",
112
+ type: "text"
113
+ },
114
+ operation: "read",
115
+ parentName: "",
116
+ permissions: docPermissions?.fields
117
+ });
118
+ $[2] = docPermissions.fields;
119
+ $[3] = t3;
120
+ } else {
121
+ t3 = $[3];
122
+ }
99
123
  const {
100
124
  operation: usernamePermission
101
- } = getFieldPermissions({
102
- field: {
103
- name: "username",
104
- type: "text"
105
- },
106
- operation: "read",
107
- parentName: "",
108
- permissions: docPermissions?.fields
109
- });
125
+ } = t3;
110
126
  if (hasEmailAndUsernameFields) {
111
127
  showUnlock = usernamePermission || emailPermission;
112
128
  } else {
@@ -134,7 +150,7 @@ export const Auth = props => {
134
150
  }
135
151
  const hasPermissionToUnlock = t2;
136
152
  let t3;
137
- if ($[0] !== dispatchFields || $[1] !== setValidateBeforeSubmit || $[2] !== t) {
153
+ if ($[4] !== dispatchFields || $[5] !== setValidateBeforeSubmit || $[6] !== t) {
138
154
  t3 = changingPassword_0 => {
139
155
  if (changingPassword_0) {
140
156
  setValidateBeforeSubmit(true);
@@ -163,16 +179,16 @@ export const Auth = props => {
163
179
  }
164
180
  setChangingPassword(changingPassword_0);
165
181
  };
166
- $[0] = dispatchFields;
167
- $[1] = setValidateBeforeSubmit;
168
- $[2] = t;
169
- $[3] = t3;
182
+ $[4] = dispatchFields;
183
+ $[5] = setValidateBeforeSubmit;
184
+ $[6] = t;
185
+ $[7] = t3;
170
186
  } else {
171
- t3 = $[3];
187
+ t3 = $[7];
172
188
  }
173
189
  const handleChangePassword = t3;
174
190
  let t4;
175
- if ($[4] !== api || $[5] !== collectionSlug || $[6] !== email || $[7] !== i18n || $[8] !== loginWithUsername || $[9] !== serverURL || $[10] !== t || $[11] !== username) {
191
+ if ($[8] !== api || $[9] !== collectionSlug || $[10] !== email || $[11] !== i18n || $[12] !== loginWithUsername || $[13] !== serverURL || $[14] !== t || $[15] !== username) {
176
192
  t4 = async () => {
177
193
  const url = `${serverURL}${api}/${collectionSlug}/unlock`;
178
194
  const response = await fetch(url, {
@@ -194,34 +210,34 @@ export const Auth = props => {
194
210
  toast.error(t("authentication:failedToUnlock"));
195
211
  }
196
212
  };
197
- $[4] = api;
198
- $[5] = collectionSlug;
199
- $[6] = email;
200
- $[7] = i18n;
201
- $[8] = loginWithUsername;
202
- $[9] = serverURL;
203
- $[10] = t;
204
- $[11] = username;
205
- $[12] = t4;
213
+ $[8] = api;
214
+ $[9] = collectionSlug;
215
+ $[10] = email;
216
+ $[11] = i18n;
217
+ $[12] = loginWithUsername;
218
+ $[13] = serverURL;
219
+ $[14] = t;
220
+ $[15] = username;
221
+ $[16] = t4;
206
222
  } else {
207
- t4 = $[12];
223
+ t4 = $[16];
208
224
  }
209
225
  const unlock = t4;
210
226
  let t5;
211
227
  let t6;
212
- if ($[13] !== modified) {
228
+ if ($[17] !== modified) {
213
229
  t5 = () => {
214
230
  if (!modified) {
215
231
  setChangingPassword(false);
216
232
  }
217
233
  };
218
234
  t6 = [modified];
219
- $[13] = modified;
220
- $[14] = t5;
221
- $[15] = t6;
235
+ $[17] = modified;
236
+ $[18] = t5;
237
+ $[19] = t6;
222
238
  } else {
223
- t5 = $[14];
224
- t6 = $[15];
239
+ t5 = $[18];
240
+ t6 = $[19];
225
241
  }
226
242
  useEffect(t5, t6);
227
243
  const showAuthBlock = enableFields;
@@ -231,70 +247,12 @@ export const Auth = props => {
231
247
  return null;
232
248
  }
233
249
  let t7;
234
- if ($[16] !== className) {
250
+ if ($[20] !== className) {
235
251
  t7 = [baseClass, className].filter(Boolean);
236
- $[16] = className;
237
- $[17] = t7;
238
- } else {
239
- t7 = $[17];
240
- }
241
- let t8;
242
- if ($[18] !== apiKeyReadOnly || $[19] !== canReadApiKey || $[20] !== collectionSlug || $[21] !== disabled || $[22] !== enableAPIKey?.value || $[23] !== enableAPIKeyReadOnly || $[24] !== t || $[25] !== useAPIKey) {
243
- t8 = useAPIKey && _jsx("div", {
244
- className: `${baseClass}__api-key`,
245
- children: canReadApiKey && _jsxs(Fragment, {
246
- children: [_jsx(CheckboxField, {
247
- field: {
248
- name: "enableAPIKey",
249
- admin: {
250
- disabled,
251
- readOnly: enableAPIKeyReadOnly
252
- },
253
- label: t("authentication:enableAPIKey")
254
- },
255
- path: "enableAPIKey",
256
- schemaPath: `${collectionSlug}.enableAPIKey`
257
- }), _jsx(APIKey, {
258
- enabled: !!enableAPIKey?.value,
259
- readOnly: apiKeyReadOnly
260
- })]
261
- })
262
- });
263
- $[18] = apiKeyReadOnly;
264
- $[19] = canReadApiKey;
265
- $[20] = collectionSlug;
266
- $[21] = disabled;
267
- $[22] = enableAPIKey?.value;
268
- $[23] = enableAPIKeyReadOnly;
269
- $[24] = t;
270
- $[25] = useAPIKey;
271
- $[26] = t8;
252
+ $[20] = className;
253
+ $[21] = t7;
272
254
  } else {
273
- t8 = $[26];
274
- }
275
- let t9;
276
- if ($[27] !== collectionSlug || $[28] !== disabled || $[29] !== isEditing || $[30] !== readOnly || $[31] !== t || $[32] !== verify) {
277
- t9 = verify && isEditing && _jsx(CheckboxField, {
278
- field: {
279
- name: "_verified",
280
- admin: {
281
- disabled,
282
- readOnly
283
- },
284
- label: t("authentication:verified")
285
- },
286
- path: "_verified",
287
- schemaPath: `${collectionSlug}._verified`
288
- });
289
- $[27] = collectionSlug;
290
- $[28] = disabled;
291
- $[29] = isEditing;
292
- $[30] = readOnly;
293
- $[31] = t;
294
- $[32] = verify;
295
- $[33] = t9;
296
- } else {
297
- t9 = $[33];
255
+ t7 = $[21];
298
256
  }
299
257
  return _jsxs("div", {
300
258
  className: t7.join(" "),
@@ -345,7 +303,37 @@ export const Auth = props => {
345
303
  children: t("authentication:forceUnlock")
346
304
  })]
347
305
  })]
348
- }), t8, t9]
306
+ }), useAPIKey && _jsx("div", {
307
+ className: `${baseClass}__api-key`,
308
+ children: canReadApiKey && _jsxs(Fragment, {
309
+ children: [_jsx(CheckboxField, {
310
+ field: {
311
+ name: "enableAPIKey",
312
+ admin: {
313
+ disabled,
314
+ readOnly: enableAPIKeyReadOnly
315
+ },
316
+ label: t("authentication:enableAPIKey")
317
+ },
318
+ path: "enableAPIKey",
319
+ schemaPath: `${collectionSlug}.enableAPIKey`
320
+ }), _jsx(APIKey, {
321
+ enabled: !!enableAPIKey?.value,
322
+ readOnly: apiKeyReadOnly
323
+ })]
324
+ })
325
+ }), verify && isEditing && _jsx(CheckboxField, {
326
+ field: {
327
+ name: "_verified",
328
+ admin: {
329
+ disabled,
330
+ readOnly
331
+ },
332
+ label: t("authentication:verified")
333
+ },
334
+ path: "_verified",
335
+ schemaPath: `${collectionSlug}._verified`
336
+ })]
349
337
  });
350
338
  };
351
339
  function _temp(t0) {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["c","_c","getFieldPermissions","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","isTrashed","config","t0","routes","t1","serverURL","api","showPasswordFields","showUnlock","hasPasswordFieldOverride","fields","hasLoginFieldOverride","passwordPermissions","field","name","type","parentName","create","update","hasEmailAndUsernameFields","requireEmail","allowEmailLogin","emailPermission","usernamePermission","enableFields","disabled","apiKeyPermissions","apiKeyReadOnly","enableAPIKeyReadOnly","canReadApiKey","read","t2","bb0","collection","collections","Boolean","unlock","undefined","hasPermissionToUnlock","t3","changingPassword_0","errorMessage","path","valid","handleChangePassword","t4","url","response","fetch","body","JSON","stringify","credentials","headers","language","method","status","success","error","t5","t6","showAuthBlock","showAPIKeyBlock","showVerifyBlock","t7","filter","t8","value","_jsx","children","_jsxs","admin","label","schemaPath","enabled","t9","join","autoComplete","required","indexPath","parentPath","parentSchemaPath","buttonStyle","onClick","size","id","reducer"],"sources":["../../../../src/views/Edit/Auth/index.tsx"],"sourcesContent":["'use client'\n\nimport { getFieldPermissions } from 'payload/shared'\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, isTrashed } = useDocumentInfo()\n\n const {\n config: {\n routes: { api },\n serverURL,\n },\n } = useConfig()\n\n let showPasswordFields = true\n let showUnlock = true\n const hasPasswordFieldOverride =\n typeof docPermissions.fields === 'object' && 'password' in docPermissions.fields\n const hasLoginFieldOverride =\n typeof docPermissions.fields === 'object' &&\n ('username' in docPermissions.fields || 'email' in docPermissions.fields)\n\n if (hasPasswordFieldOverride) {\n const { permissions: passwordPermissions } = getFieldPermissions({\n field: { name: 'password', type: 'text' },\n operation,\n parentName: '',\n permissions: docPermissions?.fields,\n })\n\n if (operation === 'create') {\n showPasswordFields =\n passwordPermissions === true ||\n (typeof passwordPermissions === 'object' && passwordPermissions.create)\n } else {\n showPasswordFields =\n passwordPermissions === true ||\n (typeof passwordPermissions === 'object' && passwordPermissions.update)\n }\n }\n\n if (hasLoginFieldOverride) {\n const hasEmailAndUsernameFields =\n loginWithUsername && (loginWithUsername.requireEmail || loginWithUsername.allowEmailLogin)\n\n const { operation: emailPermission } = getFieldPermissions({\n field: { name: 'email', type: 'text' },\n operation: 'read',\n parentName: '',\n permissions: docPermissions?.fields,\n })\n\n const { operation: usernamePermission } = getFieldPermissions({\n field: { name: 'username', type: 'text' },\n operation: 'read',\n parentName: '',\n permissions: docPermissions?.fields,\n })\n\n if (hasEmailAndUsernameFields) {\n showUnlock = usernamePermission || emailPermission\n } else if (loginWithUsername && !hasEmailAndUsernameFields) {\n showUnlock = usernamePermission\n } else {\n showUnlock = emailPermission\n }\n }\n\n const enableFields =\n (!disableLocalStrategy ||\n (typeof disableLocalStrategy === 'object' && disableLocalStrategy.enableFields === true)) &&\n (showUnlock || showPasswordFields)\n\n const disabled = readOnly || isInitializing || isTrashed\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 (changingPassword: boolean) => {\n if (changingPassword) {\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(changingPassword)\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 const showAuthBlock = enableFields\n const showAPIKeyBlock = useAPIKey && canReadApiKey\n const showVerifyBlock = verify && isEditing\n\n if (!(showAuthBlock || showAPIKeyBlock || showVerifyBlock)) {\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 || isTrashed}\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 || isTrashed} />\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 &&\n !requirePassword &&\n !disableLocalStrategy &&\n showPasswordFields && (\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 || !showUnlock}\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
+ {"version":3,"file":"index.js","names":["c","_c","getFieldPermissions","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","isTrashed","config","t0","routes","t1","serverURL","api","showPasswordFields","showUnlock","hasPasswordFieldOverride","fields","hasLoginFieldOverride","passwordPermissions","field","name","type","parentName","create","update","hasEmailAndUsernameFields","requireEmail","allowEmailLogin","t2","emailPermission","t3","usernamePermission","enableFields","disabled","apiKeyPermissions","apiKeyReadOnly","enableAPIKeyReadOnly","canReadApiKey","read","bb0","collection","collections","Boolean","unlock","undefined","hasPermissionToUnlock","changingPassword_0","errorMessage","path","valid","handleChangePassword","t4","url","response","fetch","body","JSON","stringify","credentials","headers","language","method","status","success","error","t5","t6","showAuthBlock","showAPIKeyBlock","showVerifyBlock","t7","filter","_jsxs","join","children","_jsx","autoComplete","label","required","indexPath","parentPath","parentSchemaPath","schemaPath","buttonStyle","onClick","size","id","admin","enabled","value","reducer"],"sources":["../../../../src/views/Edit/Auth/index.tsx"],"sourcesContent":["'use client'\n\nimport { getFieldPermissions } from 'payload/shared'\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, isTrashed } = useDocumentInfo()\n\n const {\n config: {\n routes: { api },\n serverURL,\n },\n } = useConfig()\n\n let showPasswordFields = true\n let showUnlock = true\n const hasPasswordFieldOverride =\n typeof docPermissions.fields === 'object' && 'password' in docPermissions.fields\n const hasLoginFieldOverride =\n typeof docPermissions.fields === 'object' &&\n ('username' in docPermissions.fields || 'email' in docPermissions.fields)\n\n if (hasPasswordFieldOverride) {\n const { permissions: passwordPermissions } = getFieldPermissions({\n field: { name: 'password', type: 'text' },\n operation,\n parentName: '',\n permissions: docPermissions?.fields,\n })\n\n if (operation === 'create') {\n showPasswordFields =\n passwordPermissions === true ||\n (typeof passwordPermissions === 'object' && passwordPermissions.create)\n } else {\n showPasswordFields =\n passwordPermissions === true ||\n (typeof passwordPermissions === 'object' && passwordPermissions.update)\n }\n }\n\n if (hasLoginFieldOverride) {\n const hasEmailAndUsernameFields =\n loginWithUsername && (loginWithUsername.requireEmail || loginWithUsername.allowEmailLogin)\n\n const { operation: emailPermission } = getFieldPermissions({\n field: { name: 'email', type: 'text' },\n operation: 'read',\n parentName: '',\n permissions: docPermissions?.fields,\n })\n\n const { operation: usernamePermission } = getFieldPermissions({\n field: { name: 'username', type: 'text' },\n operation: 'read',\n parentName: '',\n permissions: docPermissions?.fields,\n })\n\n if (hasEmailAndUsernameFields) {\n showUnlock = usernamePermission || emailPermission\n } else if (loginWithUsername && !hasEmailAndUsernameFields) {\n showUnlock = usernamePermission\n } else {\n showUnlock = emailPermission\n }\n }\n\n const enableFields =\n (!disableLocalStrategy ||\n (typeof disableLocalStrategy === 'object' && disableLocalStrategy.enableFields === true)) &&\n (showUnlock || showPasswordFields)\n\n const disabled = readOnly || isInitializing || isTrashed\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 (changingPassword: boolean) => {\n if (changingPassword) {\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(changingPassword)\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 const showAuthBlock = enableFields\n const showAPIKeyBlock = useAPIKey && canReadApiKey\n const showVerifyBlock = verify && isEditing\n\n if (!(showAuthBlock || showAPIKeyBlock || showVerifyBlock)) {\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 || isTrashed}\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 || isTrashed} />\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 &&\n !requirePassword &&\n !disableLocalStrategy &&\n showPasswordFields && (\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 || !showUnlock}\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":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@payloadcms/ui",
3
- "version": "3.55.0-canary.3",
3
+ "version": "3.55.0-internal.b47bfce",
4
4
  "homepage": "https://payloadcms.com",
5
5
  "repository": {
6
6
  "type": "git",
@@ -136,7 +136,7 @@
136
136
  "ts-essentials": "10.0.3",
137
137
  "use-context-selector": "2.0.0",
138
138
  "uuid": "10.0.0",
139
- "@payloadcms/translations": "3.55.0-canary.3"
139
+ "@payloadcms/translations": "3.55.0-internal.b47bfce"
140
140
  },
141
141
  "devDependencies": {
142
142
  "@babel/cli": "7.27.2",
@@ -145,20 +145,20 @@
145
145
  "@babel/preset-react": "7.27.1",
146
146
  "@babel/preset-typescript": "7.27.1",
147
147
  "@hyrious/esbuild-plugin-commonjs": "0.2.6",
148
- "@types/react": "19.1.8",
149
- "@types/react-dom": "19.1.6",
148
+ "@types/react": "19.1.12",
149
+ "@types/react-dom": "19.1.9",
150
150
  "@types/uuid": "10.0.0",
151
- "babel-plugin-react-compiler": "19.1.0-rc.2",
151
+ "babel-plugin-react-compiler": "19.1.0-rc.3",
152
152
  "esbuild": "0.25.5",
153
153
  "esbuild-sass-plugin": "3.3.1",
154
154
  "@payloadcms/eslint-config": "3.28.0",
155
- "payload": "3.55.0-canary.3"
155
+ "payload": "3.55.0-internal.b47bfce"
156
156
  },
157
157
  "peerDependencies": {
158
158
  "next": "^15.2.3",
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.55.0-canary.3"
161
+ "payload": "3.55.0-internal.b47bfce"
162
162
  },
163
163
  "engines": {
164
164
  "node": "^18.20.2 || >=20.9.0"