@payloadcms/ui 3.44.0-canary.10 → 3.44.0-canary.2

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 (82) hide show
  1. package/dist/elements/BulkUpload/FileSidebar/index.d.ts.map +1 -1
  2. package/dist/elements/BulkUpload/FileSidebar/index.js +29 -74
  3. package/dist/elements/BulkUpload/FileSidebar/index.js.map +1 -1
  4. package/dist/elements/BulkUpload/FileSidebar/index.scss +4 -5
  5. package/dist/elements/BulkUpload/FormsManager/index.d.ts +1 -0
  6. package/dist/elements/BulkUpload/FormsManager/index.d.ts.map +1 -1
  7. package/dist/elements/BulkUpload/FormsManager/index.js +64 -37
  8. package/dist/elements/BulkUpload/FormsManager/index.js.map +1 -1
  9. package/dist/elements/BulkUpload/FormsManager/reducer.d.ts +0 -1
  10. package/dist/elements/BulkUpload/FormsManager/reducer.d.ts.map +1 -1
  11. package/dist/elements/BulkUpload/FormsManager/reducer.js +0 -1
  12. package/dist/elements/BulkUpload/FormsManager/reducer.js.map +1 -1
  13. package/dist/elements/BulkUpload/index.scss +0 -0
  14. package/dist/elements/EditMany/DrawerContent.d.ts +1 -5
  15. package/dist/elements/EditMany/DrawerContent.d.ts.map +1 -1
  16. package/dist/elements/EditMany/DrawerContent.js +1 -5
  17. package/dist/elements/EditMany/DrawerContent.js.map +1 -1
  18. package/dist/elements/EditMany/index.d.ts +0 -1
  19. package/dist/elements/EditMany/index.d.ts.map +1 -1
  20. package/dist/elements/EditMany/index.js +18 -32
  21. package/dist/elements/EditMany/index.js.map +1 -1
  22. package/dist/elements/EmailAndUsername/index.d.ts +0 -1
  23. package/dist/elements/EmailAndUsername/index.d.ts.map +1 -1
  24. package/dist/elements/EmailAndUsername/index.js +30 -64
  25. package/dist/elements/EmailAndUsername/index.js.map +1 -1
  26. package/dist/elements/PublishMany/DrawerContent.d.ts +0 -1
  27. package/dist/elements/PublishMany/DrawerContent.d.ts.map +1 -1
  28. package/dist/elements/PublishMany/DrawerContent.js +1 -5
  29. package/dist/elements/PublishMany/DrawerContent.js.map +1 -1
  30. package/dist/elements/PublishMany/index.d.ts +0 -1
  31. package/dist/elements/PublishMany/index.d.ts.map +1 -1
  32. package/dist/elements/PublishMany/index.js +17 -31
  33. package/dist/elements/PublishMany/index.js.map +1 -1
  34. package/dist/elements/ShimmerEffect/index.d.ts +0 -2
  35. package/dist/elements/ShimmerEffect/index.d.ts.map +1 -1
  36. package/dist/elements/ShimmerEffect/index.js +3 -5
  37. package/dist/elements/ShimmerEffect/index.js.map +1 -1
  38. package/dist/elements/Thumbnail/createThumbnail.d.ts.map +1 -1
  39. package/dist/elements/Thumbnail/createThumbnail.js +2 -8
  40. package/dist/elements/Thumbnail/createThumbnail.js.map +1 -1
  41. package/dist/elements/UnpublishMany/DrawerContent.d.ts +0 -1
  42. package/dist/elements/UnpublishMany/DrawerContent.d.ts.map +1 -1
  43. package/dist/elements/UnpublishMany/DrawerContent.js +1 -5
  44. package/dist/elements/UnpublishMany/DrawerContent.js.map +1 -1
  45. package/dist/elements/UnpublishMany/index.d.ts +0 -1
  46. package/dist/elements/UnpublishMany/index.d.ts.map +1 -1
  47. package/dist/elements/UnpublishMany/index.js +17 -31
  48. package/dist/elements/UnpublishMany/index.js.map +1 -1
  49. package/dist/exports/client/{CodeEditor-YP63NRLU.js → CodeEditor-Z3ZZJH7C.js} +2 -2
  50. package/dist/exports/client/{chunk-5EP6VERX.js → chunk-CNCOIY3Y.js} +4 -4
  51. package/dist/exports/client/{chunk-5EP6VERX.js.map → chunk-CNCOIY3Y.js.map} +3 -3
  52. package/dist/exports/client/index.d.ts +0 -2
  53. package/dist/exports/client/index.d.ts.map +1 -1
  54. package/dist/exports/client/index.js +16 -16
  55. package/dist/exports/client/index.js.map +4 -4
  56. package/dist/fields/Checkbox/index.d.ts.map +1 -1
  57. package/dist/fields/Checkbox/index.js +0 -9
  58. package/dist/fields/Checkbox/index.js.map +1 -1
  59. package/dist/forms/Form/fieldReducer.d.ts.map +1 -1
  60. package/dist/forms/Form/fieldReducer.js +0 -5
  61. package/dist/forms/Form/fieldReducer.js.map +1 -1
  62. package/dist/forms/useField/index.d.ts.map +1 -1
  63. package/dist/forms/useField/index.js +1 -2
  64. package/dist/forms/useField/index.js.map +1 -1
  65. package/dist/styles.css +1 -1
  66. package/dist/utilities/getFolderResultsComponentAndData.d.ts.map +1 -1
  67. package/dist/utilities/getFolderResultsComponentAndData.js +2 -1
  68. package/dist/utilities/getFolderResultsComponentAndData.js.map +1 -1
  69. package/dist/views/CollectionFolder/index.js +1 -1
  70. package/dist/views/CollectionFolder/index.js.map +1 -1
  71. package/dist/views/Edit/Auth/index.d.ts.map +1 -1
  72. package/dist/views/Edit/Auth/index.js +136 -163
  73. package/dist/views/Edit/Auth/index.js.map +1 -1
  74. package/dist/views/Edit/SetDocumentTitle/index.d.ts.map +1 -1
  75. package/dist/views/Edit/SetDocumentTitle/index.js +21 -24
  76. package/dist/views/Edit/SetDocumentTitle/index.js.map +1 -1
  77. package/dist/views/List/ListSelection/index.d.ts.map +1 -1
  78. package/dist/views/List/ListSelection/index.js +18 -31
  79. package/dist/views/List/ListSelection/index.js.map +1 -1
  80. package/package.json +5 -5
  81. package/dist/elements/EmailAndUsername/index.scss +0 -9
  82. /package/dist/exports/client/{CodeEditor-YP63NRLU.js.map → CodeEditor-Z3ZZJH7C.js.map} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"getFolderResultsComponentAndData.d.ts","sourceRoot":"","sources":["../../src/utilities/getFolderResultsComponentAndData.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,WAAW,EACX,oCAAoC,EACpC,cAAc,EAEf,MAAM,SAAS,CAAA;AAChB,OAAO,KAAK,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAA;AAWxE,KAAK,sCAAsC,GAAG;IAC5C,WAAW,CAAC,EAAE,gBAAgB,EAAE,CAAA;IAChC,SAAS,CAAC,EAAE,gBAAgB,EAAE,CAAA;IAC9B,sBAAsB,EAAE,KAAK,CAAC,SAAS,CAAA;IACvC,UAAU,CAAC,EAAE,gBAAgB,EAAE,CAAA;CAChC,CAAA;AAED,KAAK,2CAA2C,GAAG;IACjD,WAAW,CAAC,EAAE,KAAK,CAAA;IACnB,SAAS,CAAC,EAAE,KAAK,CAAA;IACjB,sBAAsB,CAAC,EAAE,KAAK,CAAA;IAC9B,UAAU,CAAC,EAAE,KAAK,CAAA;CACnB,GAAG,CACA;IACE,OAAO,EAAE,MAAM,CAAA;CAChB,GACD,WAAW,CACd,CAAA;AAED,eAAO,MAAM,uCAAuC,EAAE,cAAc,CAClE,oCAAoC,EACpC,OAAO,CAAC,2CAA2C,GAAG,sCAAsC,CAAC,CAsB9F,CAAA;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,gCAAgC,+EAO1C,oCAAoC,KAAG,OAAO,CAAC,sCAAsC,CA6FvF,CAAA"}
1
+ {"version":3,"file":"getFolderResultsComponentAndData.d.ts","sourceRoot":"","sources":["../../src/utilities/getFolderResultsComponentAndData.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,WAAW,EACX,oCAAoC,EACpC,cAAc,EAEf,MAAM,SAAS,CAAA;AAChB,OAAO,KAAK,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAA;AAQxE,KAAK,sCAAsC,GAAG;IAC5C,WAAW,CAAC,EAAE,gBAAgB,EAAE,CAAA;IAChC,SAAS,CAAC,EAAE,gBAAgB,EAAE,CAAA;IAC9B,sBAAsB,EAAE,KAAK,CAAC,SAAS,CAAA;IACvC,UAAU,CAAC,EAAE,gBAAgB,EAAE,CAAA;CAChC,CAAA;AAED,KAAK,2CAA2C,GAAG;IACjD,WAAW,CAAC,EAAE,KAAK,CAAA;IACnB,SAAS,CAAC,EAAE,KAAK,CAAA;IACjB,sBAAsB,CAAC,EAAE,KAAK,CAAA;IAC9B,UAAU,CAAC,EAAE,KAAK,CAAA;CACnB,GAAG,CACA;IACE,OAAO,EAAE,MAAM,CAAA;CAChB,GACD,WAAW,CACd,CAAA;AAED,eAAO,MAAM,uCAAuC,EAAE,cAAc,CAClE,oCAAoC,EACpC,OAAO,CAAC,2CAA2C,GAAG,sCAAsC,CAAC,CAsB9F,CAAA;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,gCAAgC,+EAO1C,oCAAoC,KAAG,OAAO,CAAC,sCAAsC,CA6FvF,CAAA"}
@@ -1,7 +1,8 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
2
  import { APIError, formatErrors, getFolderData } from 'payload';
3
3
  import { buildFolderWhereConstraints } from 'payload/shared';
4
- import { FolderFileTable, ItemCardGrid } from '../exports/client/index.js';
4
+ import { FolderFileTable } from '../elements/FolderView/FolderFileTable/index.js';
5
+ import { ItemCardGrid } from '../elements/FolderView/ItemCardGrid/index.js';
5
6
  export const getFolderResultsComponentAndDataHandler = async args => {
6
7
  const {
7
8
  req
@@ -1 +1 @@
1
- {"version":3,"file":"getFolderResultsComponentAndData.js","names":["APIError","formatErrors","getFolderData","buildFolderWhereConstraints","FolderFileTable","ItemCardGrid","getFolderResultsComponentAndDataHandler","args","req","res","getFolderResultsComponentAndData","err","payload","logger","error","msg","message","activeCollectionSlugs","browseByFolder","displayAs","folderID","undefined","sort","config","folders","collectionSlug","documentWhere","folderWhere","activeCollectionSlug","slug","folderCollectionConstraints","collectionConfig","collections","localeCode","locale","search","query","or","collectionConstraints","push","folderData","FolderResultsComponent","_jsxs","subfolders","length","_jsx","_Fragment","items","title","type","documents","subfolderCount","showRelationCell","breadcrumbs"],"sources":["../../src/utilities/getFolderResultsComponentAndData.tsx"],"sourcesContent":["import type {\n CollectionSlug,\n ErrorResult,\n GetFolderResultsComponentAndDataArgs,\n ServerFunction,\n Where,\n} from 'payload'\nimport type { FolderBreadcrumb, FolderOrDocument } from 'payload/shared'\n\nimport { APIError, formatErrors, getFolderData } from 'payload'\nimport { buildFolderWhereConstraints } from 'payload/shared'\n\nimport {\n FolderFileTable,\n ItemCardGrid,\n // eslint-disable-next-line payload/no-imports-from-exports-dir -- This component is returned via server functions, it must reference the exports dir\n} from '../exports/client/index.js'\n\ntype GetFolderResultsComponentAndDataResult = {\n breadcrumbs?: FolderBreadcrumb[]\n documents?: FolderOrDocument[]\n FolderResultsComponent: React.ReactNode\n subfolders?: FolderOrDocument[]\n}\n\ntype GetFolderResultsComponentAndDataErrorResult = {\n breadcrumbs?: never\n documents?: never\n FolderResultsComponent?: never\n subfolders?: never\n} & (\n | {\n message: string\n }\n | ErrorResult\n)\n\nexport const getFolderResultsComponentAndDataHandler: ServerFunction<\n GetFolderResultsComponentAndDataArgs,\n Promise<GetFolderResultsComponentAndDataErrorResult | GetFolderResultsComponentAndDataResult>\n> = async (args) => {\n const { req } = args\n\n try {\n const res = await getFolderResultsComponentAndData(args)\n return res\n } catch (err) {\n req.payload.logger.error({ err, msg: `There was an error building form state` })\n\n if (err.message === 'Could not find field schema for given path') {\n return {\n message: err.message,\n }\n }\n\n if (err.message === 'Unauthorized') {\n return null\n }\n\n return formatErrors(err)\n }\n}\n\n/**\n * This function is responsible for fetching folder data, building the results component\n * and returns the data and component together.\n *\n *\n * Open ended questions:\n * - If we rerender the results section, does the provider update?? I dont think so, if the provider is on the server.\n * Maybe we should move the provider to the client.\n */\nexport const getFolderResultsComponentAndData = async ({\n activeCollectionSlugs,\n browseByFolder,\n displayAs,\n folderID = undefined,\n req,\n sort,\n}: GetFolderResultsComponentAndDataArgs): Promise<GetFolderResultsComponentAndDataResult> => {\n const { payload } = req\n\n if (!payload.config.folders) {\n throw new APIError('Folders are not enabled in the configuration.')\n }\n\n let collectionSlug: CollectionSlug | undefined = undefined\n let documentWhere: undefined | Where = undefined\n let folderWhere: undefined | Where = undefined\n\n // todo(perf): - collect promises and resolve them in parallel\n for (const activeCollectionSlug of activeCollectionSlugs) {\n if (activeCollectionSlug === payload.config.folders.slug) {\n const folderCollectionConstraints = await buildFolderWhereConstraints({\n collectionConfig: payload.collections[activeCollectionSlug].config,\n folderID,\n localeCode: req?.locale,\n req,\n search: typeof req?.query?.search === 'string' ? req.query.search : undefined,\n sort,\n })\n\n if (folderCollectionConstraints) {\n folderWhere = folderCollectionConstraints\n }\n } else if ((browseByFolder && folderID) || !browseByFolder) {\n if (!browseByFolder) {\n collectionSlug = activeCollectionSlug\n }\n\n if (!documentWhere) {\n documentWhere = {\n or: [],\n }\n }\n\n const collectionConstraints = await buildFolderWhereConstraints({\n collectionConfig: payload.collections[activeCollectionSlug].config,\n folderID,\n localeCode: req?.locale,\n req,\n search: typeof req?.query?.search === 'string' ? req.query.search : undefined,\n sort,\n })\n\n if (collectionConstraints) {\n documentWhere.or.push(collectionConstraints)\n }\n }\n }\n\n const folderData = await getFolderData({\n collectionSlug,\n documentWhere,\n folderID,\n folderWhere,\n req,\n })\n\n let FolderResultsComponent = null\n\n if (displayAs === 'grid') {\n FolderResultsComponent = (\n <div>\n {folderData.subfolders.length ? (\n <>\n <ItemCardGrid items={folderData.subfolders} title={'Folders'} type=\"folder\" />\n </>\n ) : null}\n\n {folderData.documents.length ? (\n <>\n <ItemCardGrid\n items={folderData.documents}\n subfolderCount={folderData.subfolders.length}\n title={'Documents'}\n type=\"file\"\n />\n </>\n ) : null}\n </div>\n )\n } else {\n FolderResultsComponent = <FolderFileTable showRelationCell={browseByFolder} />\n }\n\n return {\n breadcrumbs: folderData.breadcrumbs,\n documents: folderData.documents,\n FolderResultsComponent,\n subfolders: folderData.subfolders,\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"getFolderResultsComponentAndData.js","names":["APIError","formatErrors","getFolderData","buildFolderWhereConstraints","FolderFileTable","ItemCardGrid","getFolderResultsComponentAndDataHandler","args","req","res","getFolderResultsComponentAndData","err","payload","logger","error","msg","message","activeCollectionSlugs","browseByFolder","displayAs","folderID","undefined","sort","config","folders","collectionSlug","documentWhere","folderWhere","activeCollectionSlug","slug","folderCollectionConstraints","collectionConfig","collections","localeCode","locale","search","query","or","collectionConstraints","push","folderData","FolderResultsComponent","_jsxs","subfolders","length","_jsx","_Fragment","items","title","type","documents","subfolderCount","showRelationCell","breadcrumbs"],"sources":["../../src/utilities/getFolderResultsComponentAndData.tsx"],"sourcesContent":["import type {\n CollectionSlug,\n ErrorResult,\n GetFolderResultsComponentAndDataArgs,\n ServerFunction,\n Where,\n} from 'payload'\nimport type { FolderBreadcrumb, FolderOrDocument } from 'payload/shared'\n\nimport { APIError, formatErrors, getFolderData } from 'payload'\nimport { buildFolderWhereConstraints } from 'payload/shared'\n\nimport { FolderFileTable } from '../elements/FolderView/FolderFileTable/index.js'\nimport { ItemCardGrid } from '../elements/FolderView/ItemCardGrid/index.js'\n\ntype GetFolderResultsComponentAndDataResult = {\n breadcrumbs?: FolderBreadcrumb[]\n documents?: FolderOrDocument[]\n FolderResultsComponent: React.ReactNode\n subfolders?: FolderOrDocument[]\n}\n\ntype GetFolderResultsComponentAndDataErrorResult = {\n breadcrumbs?: never\n documents?: never\n FolderResultsComponent?: never\n subfolders?: never\n} & (\n | {\n message: string\n }\n | ErrorResult\n)\n\nexport const getFolderResultsComponentAndDataHandler: ServerFunction<\n GetFolderResultsComponentAndDataArgs,\n Promise<GetFolderResultsComponentAndDataErrorResult | GetFolderResultsComponentAndDataResult>\n> = async (args) => {\n const { req } = args\n\n try {\n const res = await getFolderResultsComponentAndData(args)\n return res\n } catch (err) {\n req.payload.logger.error({ err, msg: `There was an error building form state` })\n\n if (err.message === 'Could not find field schema for given path') {\n return {\n message: err.message,\n }\n }\n\n if (err.message === 'Unauthorized') {\n return null\n }\n\n return formatErrors(err)\n }\n}\n\n/**\n * This function is responsible for fetching folder data, building the results component\n * and returns the data and component together.\n *\n *\n * Open ended questions:\n * - If we rerender the results section, does the provider update?? I dont think so, if the provider is on the server.\n * Maybe we should move the provider to the client.\n */\nexport const getFolderResultsComponentAndData = async ({\n activeCollectionSlugs,\n browseByFolder,\n displayAs,\n folderID = undefined,\n req,\n sort,\n}: GetFolderResultsComponentAndDataArgs): Promise<GetFolderResultsComponentAndDataResult> => {\n const { payload } = req\n\n if (!payload.config.folders) {\n throw new APIError('Folders are not enabled in the configuration.')\n }\n\n let collectionSlug: CollectionSlug | undefined = undefined\n let documentWhere: undefined | Where = undefined\n let folderWhere: undefined | Where = undefined\n\n // todo(perf): - collect promises and resolve them in parallel\n for (const activeCollectionSlug of activeCollectionSlugs) {\n if (activeCollectionSlug === payload.config.folders.slug) {\n const folderCollectionConstraints = await buildFolderWhereConstraints({\n collectionConfig: payload.collections[activeCollectionSlug].config,\n folderID,\n localeCode: req?.locale,\n req,\n search: typeof req?.query?.search === 'string' ? req.query.search : undefined,\n sort,\n })\n\n if (folderCollectionConstraints) {\n folderWhere = folderCollectionConstraints\n }\n } else if ((browseByFolder && folderID) || !browseByFolder) {\n if (!browseByFolder) {\n collectionSlug = activeCollectionSlug\n }\n\n if (!documentWhere) {\n documentWhere = {\n or: [],\n }\n }\n\n const collectionConstraints = await buildFolderWhereConstraints({\n collectionConfig: payload.collections[activeCollectionSlug].config,\n folderID,\n localeCode: req?.locale,\n req,\n search: typeof req?.query?.search === 'string' ? req.query.search : undefined,\n sort,\n })\n\n if (collectionConstraints) {\n documentWhere.or.push(collectionConstraints)\n }\n }\n }\n\n const folderData = await getFolderData({\n collectionSlug,\n documentWhere,\n folderID,\n folderWhere,\n req,\n })\n\n let FolderResultsComponent = null\n\n if (displayAs === 'grid') {\n FolderResultsComponent = (\n <div>\n {folderData.subfolders.length ? (\n <>\n <ItemCardGrid items={folderData.subfolders} title={'Folders'} type=\"folder\" />\n </>\n ) : null}\n\n {folderData.documents.length ? (\n <>\n <ItemCardGrid\n items={folderData.documents}\n subfolderCount={folderData.subfolders.length}\n title={'Documents'}\n type=\"file\"\n />\n </>\n ) : null}\n </div>\n )\n } else {\n FolderResultsComponent = <FolderFileTable showRelationCell={browseByFolder} />\n }\n\n return {\n breadcrumbs: folderData.breadcrumbs,\n documents: folderData.documents,\n FolderResultsComponent,\n subfolders: folderData.subfolders,\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -247,7 +247,7 @@ function CollectionFolderViewInContext(props) {
247
247
  children: [_jsx(ListHeader, {
248
248
  Actions: [!smallBreak && _jsx(ListSelection, {
249
249
  disableBulkDelete,
250
- disableBulkEdit: collectionConfig.disableBulkEdit ?? disableBulkEdit
250
+ disableBulkEdit
251
251
  }, "list-selection"), config.folders && collectionConfig.folders && _jsx(ListFolderPills, {
252
252
  collectionConfig,
253
253
  folderCollectionSlug,
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["c","_c","useDndMonitor","getTranslation","useRouter","formatAdminURL","React","Fragment","DroppableBreadcrumb","ColoredFolderIcon","CurrentFolderActions","DragOverlaySelection","SortByPill","ToggleViewButtons","Gutter","ListFolderPills","ListHeader","ListBulkUploadButton","ListCreateNewDocInFolderButton","NoListResults","SearchBar","useStepNav","useConfig","useEditDepth","FolderProvider","useFolder","usePreferences","useRouteCache","useRouteTransition","useTranslation","useWindowInfo","ListSelection","baseClass","DefaultCollectionFolderView","allCollectionFolderSlugs","folderCollectionSlugs","allowCreateCollectionSlugs","baseFolderPath","breadcrumbs","documents","folderFieldName","folderID","FolderResultsComponent","search","sort","subfolders","restOfProps","_jsx","CollectionFolderViewInContext","props","$","AfterFolderList","AfterFolderListTable","BeforeFolderList","BeforeFolderListTable","collectionSlug","Description","disableBulkDelete","disableBulkEdit","viewPreference","config","getEntityConfig","i18n","t","drawerDepth","setStepNav","setPreference","folderCollectionConfig","folderCollectionSlug","getSelectedItems","lastSelectedIndex","moveToFolder","refineFolderData","selectedItemKeys","setIsDragging","router","startRouteTransition","clearRouteCache","collectionConfig","labels","upload","isUploadCollection","Boolean","isBulkUploadEnabled","bulkUpload","breakpoints","t0","s","smallBreak","t1","event","over","data","current","type","itemsToMove","toFolderID","id","t2","error","console","onDragEnd","handleSetViewType","view","plural","t3","folders","routes","admin","useEffect","length","label","_jsxs","className","children","filter","join","onClick","push","adminRoute","path","slug","map","crumb","crumbIndex","name","totalDocsAndSubfolders","t4","search_0","query","updateURL","DndEventListener","Actions","viewType","AfterListHeaderContent","title","TitleActions","buttonLabel","collectionSlugs","onCreateSuccess","slugPrefix","hasCreatePermission","includes","activeView","setActiveView","onSearchChange","searchQueryParam","singular","toLowerCase","Message","allItems","lastSelected","selectedCount","size","onDragCancel","onDragStart"],"sources":["../../../src/views/CollectionFolder/index.tsx"],"sourcesContent":["'use client'\n\nimport type { DragEndEvent } from '@dnd-kit/core'\nimport type { FolderListViewClientProps } from 'payload'\n\nimport { useDndMonitor } from '@dnd-kit/core'\nimport { getTranslation } from '@payloadcms/translations'\nimport { useRouter } from 'next/navigation.js'\nimport { formatAdminURL } from 'payload/shared'\nimport React, { Fragment } from 'react'\n\nimport { DroppableBreadcrumb } from '../../elements/FolderView/Breadcrumbs/index.js'\nimport { ColoredFolderIcon } from '../../elements/FolderView/ColoredFolderIcon/index.js'\nimport { CurrentFolderActions } from '../../elements/FolderView/CurrentFolderActions/index.js'\nimport { DragOverlaySelection } from '../../elements/FolderView/DragOverlaySelection/index.js'\nimport { SortByPill } from '../../elements/FolderView/SortByPill/index.js'\nimport { ToggleViewButtons } from '../../elements/FolderView/ToggleViewButtons/index.js'\nimport { Gutter } from '../../elements/Gutter/index.js'\nimport { ListFolderPills } from '../../elements/ListFolderPills/index.js'\nimport { ListHeader } from '../../elements/ListHeader/index.js'\nimport {\n ListBulkUploadButton,\n ListCreateNewDocInFolderButton,\n} from '../../elements/ListHeader/TitleActions/index.js'\nimport { NoListResults } from '../../elements/NoListResults/index.js'\nimport { SearchBar } from '../../elements/SearchBar/index.js'\nimport { useStepNav } from '../../elements/StepNav/index.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useEditDepth } from '../../providers/EditDepth/index.js'\nimport { FolderProvider, useFolder } from '../../providers/Folders/index.js'\nimport { usePreferences } from '../../providers/Preferences/index.js'\nimport { useRouteCache } from '../../providers/RouteCache/index.js'\nimport { useRouteTransition } from '../../providers/RouteTransition/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { useWindowInfo } from '../../providers/WindowInfo/index.js'\nimport { ListSelection } from './ListSelection/index.js'\nimport './index.scss'\n\nconst baseClass = 'collection-folder-list'\n\nexport function DefaultCollectionFolderView({\n allCollectionFolderSlugs: folderCollectionSlugs,\n allowCreateCollectionSlugs,\n baseFolderPath,\n breadcrumbs,\n documents,\n folderFieldName,\n folderID,\n FolderResultsComponent,\n search,\n sort,\n subfolders,\n ...restOfProps\n}: FolderListViewClientProps) {\n return (\n <FolderProvider\n allCollectionFolderSlugs={folderCollectionSlugs}\n allowCreateCollectionSlugs={allowCreateCollectionSlugs}\n baseFolderPath={baseFolderPath}\n breadcrumbs={breadcrumbs}\n documents={documents}\n folderFieldName={folderFieldName}\n folderID={folderID}\n FolderResultsComponent={FolderResultsComponent}\n search={search}\n sort={sort}\n subfolders={subfolders}\n >\n <CollectionFolderViewInContext {...restOfProps} />\n </FolderProvider>\n )\n}\n\ntype CollectionFolderViewInContextProps = Omit<\n FolderListViewClientProps,\n | 'allCollectionFolderSlugs'\n | 'allowCreateCollectionSlugs'\n | 'baseFolderPath'\n | 'breadcrumbs'\n | 'documents'\n | 'folderFieldName'\n | 'folderID'\n | 'FolderResultsComponent'\n | 'subfolders'\n>\n\nfunction CollectionFolderViewInContext(props: CollectionFolderViewInContextProps) {\n const {\n AfterFolderList,\n AfterFolderListTable,\n BeforeFolderList,\n BeforeFolderListTable,\n collectionSlug,\n Description,\n disableBulkDelete,\n disableBulkEdit,\n search,\n viewPreference,\n } = props\n\n const { config, getEntityConfig } = useConfig()\n const { i18n, t } = useTranslation()\n const drawerDepth = useEditDepth()\n const { setStepNav } = useStepNav()\n const { setPreference } = usePreferences()\n const {\n allowCreateCollectionSlugs,\n breadcrumbs,\n documents,\n folderCollectionConfig,\n folderCollectionSlug,\n FolderResultsComponent,\n getSelectedItems,\n lastSelectedIndex,\n moveToFolder,\n refineFolderData,\n selectedItemKeys,\n setIsDragging,\n subfolders,\n } = useFolder()\n\n const router = useRouter()\n const { startRouteTransition } = useRouteTransition()\n const { clearRouteCache } = useRouteCache()\n\n const collectionConfig = getEntityConfig({ collectionSlug })\n\n const { labels, upload } = collectionConfig\n const isUploadCollection = Boolean(upload)\n const isBulkUploadEnabled = isUploadCollection && collectionConfig.upload.bulkUpload\n\n const {\n breakpoints: { s: smallBreak },\n } = useWindowInfo()\n\n const onDragEnd = React.useCallback(\n async (event: DragEndEvent) => {\n if (!event.over) {\n return\n }\n\n if (event.over.data.current.type === 'folder' && 'id' in event.over.data.current) {\n try {\n await moveToFolder({\n itemsToMove: getSelectedItems(),\n toFolderID: event.over.data.current.id,\n })\n } catch (error) {\n // eslint-disable-next-line no-console\n console.error('Error moving items:', error)\n }\n\n clearRouteCache()\n }\n },\n [moveToFolder, getSelectedItems, clearRouteCache],\n )\n\n const handleSetViewType = React.useCallback(\n async (view: 'grid' | 'list') => {\n await setPreference(`${collectionSlug}-collection-folder`, {\n viewPreference: view,\n })\n clearRouteCache()\n },\n [collectionSlug, setPreference, clearRouteCache],\n )\n\n React.useEffect(() => {\n if (!drawerDepth) {\n setStepNav([\n !breadcrumbs.length\n ? {\n label: (\n <div className={`${baseClass}__step-nav-icon-label`} key=\"root\">\n <ColoredFolderIcon />\n {getTranslation(labels?.plural, i18n)}\n </div>\n ),\n }\n : {\n label: (\n <DroppableBreadcrumb\n className={[\n `${baseClass}__step-nav-droppable`,\n `${baseClass}__step-nav-icon-label`,\n ]\n .filter(Boolean)\n .join(' ')}\n id={null}\n key=\"root\"\n onClick={() => {\n startRouteTransition(() => {\n if (config.folders) {\n router.push(\n formatAdminURL({\n adminRoute: config.routes.admin,\n path: `/collections/${collectionSlug}/${config.folders.slug}`,\n }),\n )\n }\n })\n }}\n >\n <ColoredFolderIcon />\n {getTranslation(labels?.plural, i18n)}\n </DroppableBreadcrumb>\n ),\n },\n ...breadcrumbs.map((crumb, crumbIndex) => {\n return {\n label:\n crumbIndex === breadcrumbs.length - 1 ? (\n crumb.name\n ) : (\n <DroppableBreadcrumb\n className={`${baseClass}__step-nav-droppable`}\n id={crumb.id}\n key={crumb.id}\n onClick={() => {\n startRouteTransition(() => {\n if (config.folders) {\n router.push(\n formatAdminURL({\n adminRoute: config.routes.admin,\n path: `/collections/${collectionSlug}/${config.folders.slug}/${crumb.id}`,\n }),\n )\n }\n })\n }}\n >\n {crumb.name}\n </DroppableBreadcrumb>\n ),\n }\n }),\n ])\n }\n }, [\n breadcrumbs,\n collectionSlug,\n config.folders,\n config.routes.admin,\n drawerDepth,\n i18n,\n labels?.plural,\n router,\n setStepNav,\n startRouteTransition,\n ])\n\n const totalDocsAndSubfolders = documents.length + subfolders.length\n\n return (\n <Fragment>\n <DndEventListener onDragEnd={onDragEnd} setIsDragging={setIsDragging} />\n\n <div className={`${baseClass} ${baseClass}--${collectionSlug}`}>\n {BeforeFolderList}\n <Gutter className={`${baseClass}__wrap`}>\n <ListHeader\n Actions={[\n !smallBreak && (\n <ListSelection\n disableBulkDelete={disableBulkDelete}\n disableBulkEdit={collectionConfig.disableBulkEdit ?? disableBulkEdit}\n key=\"list-selection\"\n />\n ),\n config.folders && collectionConfig.folders && (\n <ListFolderPills\n collectionConfig={collectionConfig}\n folderCollectionSlug={folderCollectionSlug}\n key=\"list-header-buttons\"\n viewType=\"folders\"\n />\n ),\n ].filter(Boolean)}\n AfterListHeaderContent={Description}\n title={getTranslation(labels?.plural, i18n)}\n TitleActions={[\n allowCreateCollectionSlugs.length && (\n <ListCreateNewDocInFolderButton\n buttonLabel={t('general:createNew')}\n collectionSlugs={allowCreateCollectionSlugs}\n key=\"create-new-button\"\n onCreateSuccess={clearRouteCache}\n slugPrefix=\"create-document--header-pill\"\n />\n ),\n <ListBulkUploadButton\n collectionSlug={collectionSlug}\n hasCreatePermission={allowCreateCollectionSlugs.includes(collectionSlug)}\n isBulkUploadEnabled={isBulkUploadEnabled}\n key=\"bulk-upload-button\"\n />,\n ].filter(Boolean)}\n />\n <SearchBar\n Actions={[\n <SortByPill key=\"sort-by-pill\" />,\n <ToggleViewButtons\n activeView={viewPreference}\n key=\"toggle-view-buttons\"\n setActiveView={handleSetViewType}\n />,\n <CurrentFolderActions key=\"current-folder-actions\" />,\n ].filter(Boolean)}\n label={t('general:searchBy', {\n label: t('general:name'),\n })}\n onSearchChange={(search) => refineFolderData({ query: { search }, updateURL: true })}\n searchQueryParam={search}\n />\n {BeforeFolderListTable}\n {totalDocsAndSubfolders > 0 && FolderResultsComponent}\n {totalDocsAndSubfolders === 0 && (\n <NoListResults\n Actions={[\n allowCreateCollectionSlugs.includes(folderCollectionSlug) && (\n <ListCreateNewDocInFolderButton\n buttonLabel={`${t('general:create')} ${getTranslation(folderCollectionConfig.labels?.singular, i18n).toLowerCase()}`}\n collectionSlugs={[folderCollectionConfig.slug]}\n key=\"create-folder\"\n onCreateSuccess={clearRouteCache}\n slugPrefix=\"create-folder--no-results\"\n />\n ),\n allowCreateCollectionSlugs.includes(collectionSlug) && (\n <ListCreateNewDocInFolderButton\n buttonLabel={`${t('general:create')} ${t('general:document').toLowerCase()}`}\n collectionSlugs={[collectionSlug]}\n key=\"create-document\"\n onCreateSuccess={clearRouteCache}\n slugPrefix=\"create-document--no-results\"\n />\n ),\n ].filter(Boolean)}\n Message={\n <p>\n {i18n.t('general:noResults', {\n label: `${getTranslation(labels?.plural, i18n)} ${t('general:or').toLowerCase()} ${getTranslation(\n folderCollectionConfig.labels?.plural,\n i18n,\n )}`,\n })}\n </p>\n }\n />\n )}\n {AfterFolderListTable}\n </Gutter>\n {AfterFolderList}\n </div>\n <DragOverlaySelection\n allItems={[...subfolders, ...documents]}\n lastSelected={lastSelectedIndex}\n selectedCount={selectedItemKeys.size}\n />\n </Fragment>\n )\n}\n\nfunction DndEventListener({ onDragEnd, setIsDragging }) {\n useDndMonitor({\n onDragCancel() {\n setIsDragging(false)\n },\n onDragEnd(event) {\n setIsDragging(false)\n onDragEnd(event)\n },\n onDragStart() {\n setIsDragging(true)\n },\n })\n\n return null\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["c","_c","useDndMonitor","getTranslation","useRouter","formatAdminURL","React","Fragment","DroppableBreadcrumb","ColoredFolderIcon","CurrentFolderActions","DragOverlaySelection","SortByPill","ToggleViewButtons","Gutter","ListFolderPills","ListHeader","ListBulkUploadButton","ListCreateNewDocInFolderButton","NoListResults","SearchBar","useStepNav","useConfig","useEditDepth","FolderProvider","useFolder","usePreferences","useRouteCache","useRouteTransition","useTranslation","useWindowInfo","ListSelection","baseClass","DefaultCollectionFolderView","allCollectionFolderSlugs","folderCollectionSlugs","allowCreateCollectionSlugs","baseFolderPath","breadcrumbs","documents","folderFieldName","folderID","FolderResultsComponent","search","sort","subfolders","restOfProps","_jsx","CollectionFolderViewInContext","props","$","AfterFolderList","AfterFolderListTable","BeforeFolderList","BeforeFolderListTable","collectionSlug","Description","disableBulkDelete","disableBulkEdit","viewPreference","config","getEntityConfig","i18n","t","drawerDepth","setStepNav","setPreference","folderCollectionConfig","folderCollectionSlug","getSelectedItems","lastSelectedIndex","moveToFolder","refineFolderData","selectedItemKeys","setIsDragging","router","startRouteTransition","clearRouteCache","collectionConfig","labels","upload","isUploadCollection","Boolean","isBulkUploadEnabled","bulkUpload","breakpoints","t0","s","smallBreak","t1","event","over","data","current","type","itemsToMove","toFolderID","id","t2","error","console","onDragEnd","handleSetViewType","view","plural","t3","folders","routes","admin","useEffect","length","label","_jsxs","className","children","filter","join","onClick","push","adminRoute","path","slug","map","crumb","crumbIndex","name","totalDocsAndSubfolders","t4","search_0","query","updateURL","DndEventListener","Actions","viewType","AfterListHeaderContent","title","TitleActions","buttonLabel","collectionSlugs","onCreateSuccess","slugPrefix","hasCreatePermission","includes","activeView","setActiveView","onSearchChange","searchQueryParam","singular","toLowerCase","Message","allItems","lastSelected","selectedCount","size","onDragCancel","onDragStart"],"sources":["../../../src/views/CollectionFolder/index.tsx"],"sourcesContent":["'use client'\n\nimport type { DragEndEvent } from '@dnd-kit/core'\nimport type { FolderListViewClientProps } from 'payload'\n\nimport { useDndMonitor } from '@dnd-kit/core'\nimport { getTranslation } from '@payloadcms/translations'\nimport { useRouter } from 'next/navigation.js'\nimport { formatAdminURL } from 'payload/shared'\nimport React, { Fragment } from 'react'\n\nimport { DroppableBreadcrumb } from '../../elements/FolderView/Breadcrumbs/index.js'\nimport { ColoredFolderIcon } from '../../elements/FolderView/ColoredFolderIcon/index.js'\nimport { CurrentFolderActions } from '../../elements/FolderView/CurrentFolderActions/index.js'\nimport { DragOverlaySelection } from '../../elements/FolderView/DragOverlaySelection/index.js'\nimport { SortByPill } from '../../elements/FolderView/SortByPill/index.js'\nimport { ToggleViewButtons } from '../../elements/FolderView/ToggleViewButtons/index.js'\nimport { Gutter } from '../../elements/Gutter/index.js'\nimport { ListFolderPills } from '../../elements/ListFolderPills/index.js'\nimport { ListHeader } from '../../elements/ListHeader/index.js'\nimport {\n ListBulkUploadButton,\n ListCreateNewDocInFolderButton,\n} from '../../elements/ListHeader/TitleActions/index.js'\nimport { NoListResults } from '../../elements/NoListResults/index.js'\nimport { SearchBar } from '../../elements/SearchBar/index.js'\nimport { useStepNav } from '../../elements/StepNav/index.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useEditDepth } from '../../providers/EditDepth/index.js'\nimport { FolderProvider, useFolder } from '../../providers/Folders/index.js'\nimport { usePreferences } from '../../providers/Preferences/index.js'\nimport { useRouteCache } from '../../providers/RouteCache/index.js'\nimport { useRouteTransition } from '../../providers/RouteTransition/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { useWindowInfo } from '../../providers/WindowInfo/index.js'\nimport { ListSelection } from './ListSelection/index.js'\nimport './index.scss'\n\nconst baseClass = 'collection-folder-list'\n\nexport function DefaultCollectionFolderView({\n allCollectionFolderSlugs: folderCollectionSlugs,\n allowCreateCollectionSlugs,\n baseFolderPath,\n breadcrumbs,\n documents,\n folderFieldName,\n folderID,\n FolderResultsComponent,\n search,\n sort,\n subfolders,\n ...restOfProps\n}: FolderListViewClientProps) {\n return (\n <FolderProvider\n allCollectionFolderSlugs={folderCollectionSlugs}\n allowCreateCollectionSlugs={allowCreateCollectionSlugs}\n baseFolderPath={baseFolderPath}\n breadcrumbs={breadcrumbs}\n documents={documents}\n folderFieldName={folderFieldName}\n folderID={folderID}\n FolderResultsComponent={FolderResultsComponent}\n search={search}\n sort={sort}\n subfolders={subfolders}\n >\n <CollectionFolderViewInContext {...restOfProps} />\n </FolderProvider>\n )\n}\n\ntype CollectionFolderViewInContextProps = Omit<\n FolderListViewClientProps,\n | 'allCollectionFolderSlugs'\n | 'allowCreateCollectionSlugs'\n | 'baseFolderPath'\n | 'breadcrumbs'\n | 'documents'\n | 'folderFieldName'\n | 'folderID'\n | 'FolderResultsComponent'\n | 'subfolders'\n>\n\nfunction CollectionFolderViewInContext(props: CollectionFolderViewInContextProps) {\n const {\n AfterFolderList,\n AfterFolderListTable,\n BeforeFolderList,\n BeforeFolderListTable,\n collectionSlug,\n Description,\n disableBulkDelete,\n disableBulkEdit,\n search,\n viewPreference,\n } = props\n\n const { config, getEntityConfig } = useConfig()\n const { i18n, t } = useTranslation()\n const drawerDepth = useEditDepth()\n const { setStepNav } = useStepNav()\n const { setPreference } = usePreferences()\n const {\n allowCreateCollectionSlugs,\n breadcrumbs,\n documents,\n folderCollectionConfig,\n folderCollectionSlug,\n FolderResultsComponent,\n getSelectedItems,\n lastSelectedIndex,\n moveToFolder,\n refineFolderData,\n selectedItemKeys,\n setIsDragging,\n subfolders,\n } = useFolder()\n\n const router = useRouter()\n const { startRouteTransition } = useRouteTransition()\n const { clearRouteCache } = useRouteCache()\n\n const collectionConfig = getEntityConfig({ collectionSlug })\n\n const { labels, upload } = collectionConfig\n const isUploadCollection = Boolean(upload)\n const isBulkUploadEnabled = isUploadCollection && collectionConfig.upload.bulkUpload\n\n const {\n breakpoints: { s: smallBreak },\n } = useWindowInfo()\n\n const onDragEnd = React.useCallback(\n async (event: DragEndEvent) => {\n if (!event.over) {\n return\n }\n\n if (event.over.data.current.type === 'folder' && 'id' in event.over.data.current) {\n try {\n await moveToFolder({\n itemsToMove: getSelectedItems(),\n toFolderID: event.over.data.current.id,\n })\n } catch (error) {\n // eslint-disable-next-line no-console\n console.error('Error moving items:', error)\n }\n\n clearRouteCache()\n }\n },\n [moveToFolder, getSelectedItems, clearRouteCache],\n )\n\n const handleSetViewType = React.useCallback(\n async (view: 'grid' | 'list') => {\n await setPreference(`${collectionSlug}-collection-folder`, {\n viewPreference: view,\n })\n clearRouteCache()\n },\n [collectionSlug, setPreference, clearRouteCache],\n )\n\n React.useEffect(() => {\n if (!drawerDepth) {\n setStepNav([\n !breadcrumbs.length\n ? {\n label: (\n <div className={`${baseClass}__step-nav-icon-label`} key=\"root\">\n <ColoredFolderIcon />\n {getTranslation(labels?.plural, i18n)}\n </div>\n ),\n }\n : {\n label: (\n <DroppableBreadcrumb\n className={[\n `${baseClass}__step-nav-droppable`,\n `${baseClass}__step-nav-icon-label`,\n ]\n .filter(Boolean)\n .join(' ')}\n id={null}\n key=\"root\"\n onClick={() => {\n startRouteTransition(() => {\n if (config.folders) {\n router.push(\n formatAdminURL({\n adminRoute: config.routes.admin,\n path: `/collections/${collectionSlug}/${config.folders.slug}`,\n }),\n )\n }\n })\n }}\n >\n <ColoredFolderIcon />\n {getTranslation(labels?.plural, i18n)}\n </DroppableBreadcrumb>\n ),\n },\n ...breadcrumbs.map((crumb, crumbIndex) => {\n return {\n label:\n crumbIndex === breadcrumbs.length - 1 ? (\n crumb.name\n ) : (\n <DroppableBreadcrumb\n className={`${baseClass}__step-nav-droppable`}\n id={crumb.id}\n key={crumb.id}\n onClick={() => {\n startRouteTransition(() => {\n if (config.folders) {\n router.push(\n formatAdminURL({\n adminRoute: config.routes.admin,\n path: `/collections/${collectionSlug}/${config.folders.slug}/${crumb.id}`,\n }),\n )\n }\n })\n }}\n >\n {crumb.name}\n </DroppableBreadcrumb>\n ),\n }\n }),\n ])\n }\n }, [\n breadcrumbs,\n collectionSlug,\n config.folders,\n config.routes.admin,\n drawerDepth,\n i18n,\n labels?.plural,\n router,\n setStepNav,\n startRouteTransition,\n ])\n\n const totalDocsAndSubfolders = documents.length + subfolders.length\n\n return (\n <Fragment>\n <DndEventListener onDragEnd={onDragEnd} setIsDragging={setIsDragging} />\n\n <div className={`${baseClass} ${baseClass}--${collectionSlug}`}>\n {BeforeFolderList}\n <Gutter className={`${baseClass}__wrap`}>\n <ListHeader\n Actions={[\n !smallBreak && (\n <ListSelection\n disableBulkDelete={disableBulkDelete}\n disableBulkEdit={disableBulkEdit}\n key=\"list-selection\"\n />\n ),\n config.folders && collectionConfig.folders && (\n <ListFolderPills\n collectionConfig={collectionConfig}\n folderCollectionSlug={folderCollectionSlug}\n key=\"list-header-buttons\"\n viewType=\"folders\"\n />\n ),\n ].filter(Boolean)}\n AfterListHeaderContent={Description}\n title={getTranslation(labels?.plural, i18n)}\n TitleActions={[\n allowCreateCollectionSlugs.length && (\n <ListCreateNewDocInFolderButton\n buttonLabel={t('general:createNew')}\n collectionSlugs={allowCreateCollectionSlugs}\n key=\"create-new-button\"\n onCreateSuccess={clearRouteCache}\n slugPrefix=\"create-document--header-pill\"\n />\n ),\n <ListBulkUploadButton\n collectionSlug={collectionSlug}\n hasCreatePermission={allowCreateCollectionSlugs.includes(collectionSlug)}\n isBulkUploadEnabled={isBulkUploadEnabled}\n key=\"bulk-upload-button\"\n />,\n ].filter(Boolean)}\n />\n <SearchBar\n Actions={[\n <SortByPill key=\"sort-by-pill\" />,\n <ToggleViewButtons\n activeView={viewPreference}\n key=\"toggle-view-buttons\"\n setActiveView={handleSetViewType}\n />,\n <CurrentFolderActions key=\"current-folder-actions\" />,\n ].filter(Boolean)}\n label={t('general:searchBy', {\n label: t('general:name'),\n })}\n onSearchChange={(search) => refineFolderData({ query: { search }, updateURL: true })}\n searchQueryParam={search}\n />\n {BeforeFolderListTable}\n {totalDocsAndSubfolders > 0 && FolderResultsComponent}\n {totalDocsAndSubfolders === 0 && (\n <NoListResults\n Actions={[\n allowCreateCollectionSlugs.includes(folderCollectionSlug) && (\n <ListCreateNewDocInFolderButton\n buttonLabel={`${t('general:create')} ${getTranslation(folderCollectionConfig.labels?.singular, i18n).toLowerCase()}`}\n collectionSlugs={[folderCollectionConfig.slug]}\n key=\"create-folder\"\n onCreateSuccess={clearRouteCache}\n slugPrefix=\"create-folder--no-results\"\n />\n ),\n allowCreateCollectionSlugs.includes(collectionSlug) && (\n <ListCreateNewDocInFolderButton\n buttonLabel={`${t('general:create')} ${t('general:document').toLowerCase()}`}\n collectionSlugs={[collectionSlug]}\n key=\"create-document\"\n onCreateSuccess={clearRouteCache}\n slugPrefix=\"create-document--no-results\"\n />\n ),\n ].filter(Boolean)}\n Message={\n <p>\n {i18n.t('general:noResults', {\n label: `${getTranslation(labels?.plural, i18n)} ${t('general:or').toLowerCase()} ${getTranslation(\n folderCollectionConfig.labels?.plural,\n i18n,\n )}`,\n })}\n </p>\n }\n />\n )}\n {AfterFolderListTable}\n </Gutter>\n {AfterFolderList}\n </div>\n <DragOverlaySelection\n allItems={[...subfolders, ...documents]}\n lastSelected={lastSelectedIndex}\n selectedCount={selectedItemKeys.size}\n />\n </Fragment>\n )\n}\n\nfunction DndEventListener({ onDragEnd, setIsDragging }) {\n useDndMonitor({\n onDragCancel() {\n setIsDragging(false)\n },\n onDragEnd(event) {\n setIsDragging(false)\n onDragEnd(event)\n },\n onDragStart() {\n setIsDragging(true)\n },\n })\n\n return null\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/views/Edit/Auth/index.tsx"],"names":[],"mappings":"AAGA,OAAO,KAA8D,MAAM,OAAO,CAAA;AAGlF,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAavC,OAAO,cAAc,CAAA;AAIrB,eAAO,MAAM,IAAI,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CA+QhC,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/views/Edit/Auth/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAA8D,MAAM,OAAO,CAAA;AAGlF,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAavC,OAAO,cAAc,CAAA;AAIrB,eAAO,MAAM,IAAI,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAsNhC,CAAA"}
@@ -2,7 +2,6 @@
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 { getFieldPermissions } from 'payload/shared';
6
5
  import React, { Fragment, useCallback, useEffect, useMemo, useState } from 'react';
7
6
  import { toast } from 'sonner';
8
7
  import { Button } from '../../../elements/Button/index.js';
@@ -19,7 +18,7 @@ import { APIKey } from './APIKey.js';
19
18
  import './index.scss';
20
19
  const baseClass = 'auth-fields';
21
20
  export const Auth = props => {
22
- const $ = _c(34);
21
+ const $ = _c(57);
23
22
  const {
24
23
  className,
25
24
  collectionSlug,
@@ -60,63 +59,7 @@ export const Auth = props => {
60
59
  const {
61
60
  api
62
61
  } = t1;
63
- let showPasswordFields = true;
64
- let showUnlock = true;
65
- const hasPasswordFieldOverride = typeof docPermissions.fields === "object" && "password" in docPermissions.fields;
66
- const hasLoginFieldOverride = typeof docPermissions.fields === "object" && ("username" in docPermissions.fields || "email" in docPermissions.fields);
67
- if (hasPasswordFieldOverride) {
68
- const {
69
- permissions: passwordPermissions
70
- } = getFieldPermissions({
71
- field: {
72
- name: "password",
73
- type: "text"
74
- },
75
- operation,
76
- parentName: "",
77
- permissions: docPermissions?.fields
78
- });
79
- if (operation === "create") {
80
- showPasswordFields = typeof passwordPermissions === "object" && passwordPermissions.create;
81
- } else {
82
- showPasswordFields = typeof passwordPermissions === "object" && passwordPermissions.read && passwordPermissions.update;
83
- }
84
- }
85
- if (hasLoginFieldOverride) {
86
- const hasEmailAndUsernameFields = loginWithUsername && (loginWithUsername.requireEmail || loginWithUsername.allowEmailLogin);
87
- const {
88
- operation: emailPermission
89
- } = getFieldPermissions({
90
- field: {
91
- name: "email",
92
- type: "text"
93
- },
94
- operation: "read",
95
- parentName: "",
96
- permissions: docPermissions?.fields
97
- });
98
- const {
99
- operation: usernamePermission
100
- } = getFieldPermissions({
101
- field: {
102
- name: "username",
103
- type: "text"
104
- },
105
- operation: "read",
106
- parentName: "",
107
- permissions: docPermissions?.fields
108
- });
109
- if (hasEmailAndUsernameFields) {
110
- showUnlock = usernamePermission || emailPermission;
111
- } else {
112
- if (loginWithUsername && !hasEmailAndUsernameFields) {
113
- showUnlock = usernamePermission;
114
- } else {
115
- showUnlock = emailPermission;
116
- }
117
- }
118
- }
119
- const enableFields = (!disableLocalStrategy || typeof disableLocalStrategy === "object" && disableLocalStrategy.enableFields === true) && (showUnlock || showPasswordFields);
62
+ const enableFields = !disableLocalStrategy || typeof disableLocalStrategy === "object" && disableLocalStrategy.enableFields === true;
120
63
  const disabled = readOnly || isInitializing;
121
64
  const apiKeyPermissions = docPermissions?.fields === true ? true : docPermissions?.fields?.enableAPIKey;
122
65
  const apiKeyReadOnly = readOnly || apiKeyPermissions === true || apiKeyPermissions && typeof apiKeyPermissions === "object" && !apiKeyPermissions?.update;
@@ -134,8 +77,8 @@ export const Auth = props => {
134
77
  const hasPermissionToUnlock = t2;
135
78
  let t3;
136
79
  if ($[0] !== dispatchFields || $[1] !== setValidateBeforeSubmit || $[2] !== t) {
137
- t3 = changingPassword_0 => {
138
- if (changingPassword_0) {
80
+ t3 = showPasswordFields => {
81
+ if (showPasswordFields) {
139
82
  setValidateBeforeSubmit(true);
140
83
  dispatchFields({
141
84
  type: "UPDATE",
@@ -160,7 +103,7 @@ export const Auth = props => {
160
103
  path: "confirm-password"
161
104
  });
162
105
  }
163
- setChangingPassword(changingPassword_0);
106
+ setChangingPassword(showPasswordFields);
164
107
  };
165
108
  $[0] = dispatchFields;
166
109
  $[1] = setValidateBeforeSubmit;
@@ -234,115 +177,145 @@ export const Auth = props => {
234
177
  } else {
235
178
  t7 = $[17];
236
179
  }
237
- let t8;
238
- if ($[18] !== apiKeyReadOnly || $[19] !== canReadApiKey || $[20] !== collectionSlug || $[21] !== disabled || $[22] !== enableAPIKey?.value || $[23] !== enableAPIKeyReadOnly || $[24] !== t || $[25] !== useAPIKey) {
239
- t8 = useAPIKey && _jsx("div", {
240
- className: `${baseClass}__api-key`,
241
- children: canReadApiKey && _jsxs(Fragment, {
242
- children: [_jsx(CheckboxField, {
243
- field: {
244
- name: "enableAPIKey",
245
- admin: {
246
- disabled,
247
- readOnly: enableAPIKeyReadOnly
180
+ const t8 = t7.join(" ");
181
+ let t9;
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
+ let t10;
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
+ className: `${baseClass}__api-key`,
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")
248
196
  },
249
- label: t("authentication:enableAPIKey")
197
+ path: "enableAPIKey",
198
+ schemaPath: `${collectionSlug}.enableAPIKey`
199
+ }), _jsx(APIKey, {
200
+ enabled: !!enableAPIKey?.value,
201
+ readOnly: apiKeyReadOnly
202
+ })]
203
+ })
204
+ });
205
+ $[41] = apiKeyReadOnly;
206
+ $[42] = canReadApiKey;
207
+ $[43] = collectionSlug;
208
+ $[44] = disabled;
209
+ $[45] = enableAPIKey?.value;
210
+ $[46] = enableAPIKeyReadOnly;
211
+ $[47] = t;
212
+ $[48] = useAPIKey;
213
+ $[49] = t10;
214
+ } else {
215
+ t10 = $[49];
216
+ }
217
+ let t11;
218
+ if ($[50] !== collectionSlug || $[51] !== disabled || $[52] !== isEditing || $[53] !== readOnly || $[54] !== t || $[55] !== verify) {
219
+ t11 = verify && isEditing && _jsx(CheckboxField, {
220
+ field: {
221
+ name: "_verified",
222
+ admin: {
223
+ disabled,
224
+ readOnly
250
225
  },
251
- path: "enableAPIKey",
252
- schemaPath: `${collectionSlug}.enableAPIKey`
253
- }), _jsx(APIKey, {
254
- enabled: !!enableAPIKey?.value,
255
- readOnly: apiKeyReadOnly
226
+ label: t("authentication:verified")
227
+ },
228
+ path: "_verified",
229
+ schemaPath: `${collectionSlug}._verified`
230
+ });
231
+ $[50] = collectionSlug;
232
+ $[51] = disabled;
233
+ $[52] = isEditing;
234
+ $[53] = readOnly;
235
+ $[54] = t;
236
+ $[55] = verify;
237
+ $[56] = t11;
238
+ } else {
239
+ t11 = $[56];
240
+ }
241
+ t9 = _jsxs("div", {
242
+ className: t8,
243
+ children: [enableFields && _jsxs(React.Fragment, {
244
+ children: [_jsx(EmailAndUsernameFields, {
245
+ loginWithUsername,
246
+ operation,
247
+ permissions: docPermissions?.fields,
248
+ readOnly,
249
+ t
250
+ }), (changingPassword || requirePassword) && (!disableLocalStrategy || !enableFields) && _jsxs("div", {
251
+ className: `${baseClass}__changing-password`,
252
+ children: [_jsx(PasswordField, {
253
+ autoComplete: "new-password",
254
+ field: {
255
+ name: "password",
256
+ label: t("authentication:newPassword"),
257
+ required: true
258
+ },
259
+ indexPath: "",
260
+ parentPath: "",
261
+ parentSchemaPath: "",
262
+ path: "password",
263
+ schemaPath: "password"
264
+ }), _jsx(ConfirmPasswordField, {
265
+ disabled: readOnly
266
+ })]
267
+ }), _jsxs("div", {
268
+ className: `${baseClass}__controls`,
269
+ children: [changingPassword && !requirePassword && _jsx(Button, {
270
+ buttonStyle: "secondary",
271
+ disabled,
272
+ onClick: () => handleChangePassword(false),
273
+ size: "medium",
274
+ children: t("general:cancel")
275
+ }), !changingPassword && !requirePassword && !disableLocalStrategy && _jsx(Button, {
276
+ buttonStyle: "secondary",
277
+ disabled,
278
+ id: "change-password",
279
+ onClick: () => handleChangePassword(true),
280
+ size: "medium",
281
+ children: t("authentication:changePassword")
282
+ }), operation === "update" && hasPermissionToUnlock && _jsx(Button, {
283
+ buttonStyle: "secondary",
284
+ disabled,
285
+ onClick: () => void unlock(),
286
+ size: "medium",
287
+ children: t("authentication:forceUnlock")
288
+ })]
256
289
  })]
257
- })
290
+ }), t10, t11]
258
291
  });
259
292
  $[18] = apiKeyReadOnly;
260
293
  $[19] = canReadApiKey;
261
- $[20] = collectionSlug;
262
- $[21] = disabled;
263
- $[22] = enableAPIKey?.value;
264
- $[23] = enableAPIKeyReadOnly;
265
- $[24] = t;
266
- $[25] = useAPIKey;
267
- $[26] = t8;
268
- } else {
269
- t8 = $[26];
270
- }
271
- let t9;
272
- if ($[27] !== collectionSlug || $[28] !== disabled || $[29] !== isEditing || $[30] !== readOnly || $[31] !== t || $[32] !== verify) {
273
- t9 = verify && isEditing && _jsx(CheckboxField, {
274
- field: {
275
- name: "_verified",
276
- admin: {
277
- disabled,
278
- readOnly
279
- },
280
- label: t("authentication:verified")
281
- },
282
- path: "_verified",
283
- schemaPath: `${collectionSlug}._verified`
284
- });
285
- $[27] = collectionSlug;
286
- $[28] = disabled;
287
- $[29] = isEditing;
288
- $[30] = readOnly;
289
- $[31] = t;
290
- $[32] = verify;
291
- $[33] = t9;
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;
302
+ $[28] = handleChangePassword;
303
+ $[29] = hasPermissionToUnlock;
304
+ $[30] = isEditing;
305
+ $[31] = loginWithUsername;
306
+ $[32] = operation;
307
+ $[33] = readOnly;
308
+ $[34] = requirePassword;
309
+ $[35] = t;
310
+ $[36] = t8;
311
+ $[37] = unlock;
312
+ $[38] = useAPIKey;
313
+ $[39] = verify;
314
+ $[40] = t9;
292
315
  } else {
293
- t9 = $[33];
316
+ t9 = $[40];
294
317
  }
295
- return _jsxs("div", {
296
- className: t7.join(" "),
297
- children: [enableFields && _jsxs(React.Fragment, {
298
- children: [_jsx(EmailAndUsernameFields, {
299
- loginWithUsername,
300
- operation,
301
- permissions: docPermissions?.fields,
302
- readOnly,
303
- t
304
- }), (changingPassword || requirePassword) && (!disableLocalStrategy || !enableFields) && _jsxs("div", {
305
- className: `${baseClass}__changing-password`,
306
- children: [_jsx(PasswordField, {
307
- autoComplete: "new-password",
308
- field: {
309
- name: "password",
310
- label: t("authentication:newPassword"),
311
- required: true
312
- },
313
- indexPath: "",
314
- parentPath: "",
315
- parentSchemaPath: "",
316
- path: "password",
317
- schemaPath: "password"
318
- }), _jsx(ConfirmPasswordField, {
319
- disabled: readOnly
320
- })]
321
- }), _jsxs("div", {
322
- className: `${baseClass}__controls`,
323
- children: [changingPassword && !requirePassword && _jsx(Button, {
324
- buttonStyle: "secondary",
325
- disabled,
326
- onClick: () => handleChangePassword(false),
327
- size: "medium",
328
- children: t("general:cancel")
329
- }), !changingPassword && !requirePassword && !disableLocalStrategy && showPasswordFields && _jsx(Button, {
330
- buttonStyle: "secondary",
331
- disabled,
332
- id: "change-password",
333
- onClick: () => handleChangePassword(true),
334
- size: "medium",
335
- children: t("authentication:changePassword")
336
- }), operation === "update" && hasPermissionToUnlock && _jsx(Button, {
337
- buttonStyle: "secondary",
338
- disabled: disabled || !showUnlock,
339
- onClick: () => void unlock(),
340
- size: "medium",
341
- children: t("authentication:forceUnlock")
342
- })]
343
- })]
344
- }), t8, t9]
345
- });
318
+ return t9;
346
319
  };
347
320
  function _temp(t0) {
348
321
  const [fields] = t0;