@payloadcms/ui 3.49.0-canary.8 → 3.49.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (158) hide show
  1. package/dist/elements/DeleteDocument/index.d.ts.map +1 -1
  2. package/dist/elements/DeleteDocument/index.js +65 -47
  3. package/dist/elements/DeleteDocument/index.js.map +1 -1
  4. package/dist/elements/DeleteDocument/index.scss +10 -0
  5. package/dist/elements/DeleteMany/index.d.ts +6 -2
  6. package/dist/elements/DeleteMany/index.d.ts.map +1 -1
  7. package/dist/elements/DeleteMany/index.js +153 -51
  8. package/dist/elements/DeleteMany/index.js.map +1 -1
  9. package/dist/elements/DeleteMany/index.scss +13 -0
  10. package/dist/elements/DocumentControls/index.d.ts +3 -0
  11. package/dist/elements/DocumentControls/index.d.ts.map +1 -1
  12. package/dist/elements/DocumentControls/index.js +24 -5
  13. package/dist/elements/DocumentControls/index.js.map +1 -1
  14. package/dist/elements/DocumentDrawer/DrawerContent.d.ts.map +1 -1
  15. package/dist/elements/DocumentDrawer/DrawerContent.js +4 -2
  16. package/dist/elements/DocumentDrawer/DrawerContent.js.map +1 -1
  17. package/dist/elements/DocumentDrawer/Provider.d.ts +4 -0
  18. package/dist/elements/DocumentDrawer/Provider.d.ts.map +1 -1
  19. package/dist/elements/DocumentDrawer/Provider.js.map +1 -1
  20. package/dist/elements/DocumentDrawer/types.d.ts +1 -0
  21. package/dist/elements/DocumentDrawer/types.d.ts.map +1 -1
  22. package/dist/elements/DocumentDrawer/types.js.map +1 -1
  23. package/dist/elements/DocumentFields/index.d.ts +1 -0
  24. package/dist/elements/DocumentFields/index.d.ts.map +1 -1
  25. package/dist/elements/DocumentFields/index.js +3 -1
  26. package/dist/elements/DocumentFields/index.js.map +1 -1
  27. package/dist/elements/FolderView/Cell/index.client.d.ts +3 -2
  28. package/dist/elements/FolderView/Cell/index.client.d.ts.map +1 -1
  29. package/dist/elements/FolderView/Cell/index.client.js +3 -1
  30. package/dist/elements/FolderView/Cell/index.client.js.map +1 -1
  31. package/dist/elements/FolderView/Cell/index.server.d.ts.map +1 -1
  32. package/dist/elements/FolderView/Cell/index.server.js +2 -1
  33. package/dist/elements/FolderView/Cell/index.server.js.map +1 -1
  34. package/dist/elements/ListHeader/TitleActions/ListEmptyTrashButton.d.ts +7 -0
  35. package/dist/elements/ListHeader/TitleActions/ListEmptyTrashButton.d.ts.map +1 -0
  36. package/dist/elements/ListHeader/TitleActions/ListEmptyTrashButton.js +164 -0
  37. package/dist/elements/ListHeader/TitleActions/ListEmptyTrashButton.js.map +1 -0
  38. package/dist/elements/ListHeader/TitleActions/index.d.ts +1 -0
  39. package/dist/elements/ListHeader/TitleActions/index.d.ts.map +1 -1
  40. package/dist/elements/ListHeader/TitleActions/index.js +1 -0
  41. package/dist/elements/ListHeader/TitleActions/index.js.map +1 -1
  42. package/dist/elements/ListHeaderTabs/ByFolderPill.d.ts +10 -0
  43. package/dist/elements/ListHeaderTabs/ByFolderPill.d.ts.map +1 -0
  44. package/dist/elements/ListHeaderTabs/ByFolderPill.js +70 -0
  45. package/dist/elements/ListHeaderTabs/ByFolderPill.js.map +1 -0
  46. package/dist/elements/ListHeaderTabs/DefaultListPill.d.ts +9 -0
  47. package/dist/elements/ListHeaderTabs/DefaultListPill.d.ts.map +1 -0
  48. package/dist/elements/ListHeaderTabs/DefaultListPill.js +68 -0
  49. package/dist/elements/ListHeaderTabs/DefaultListPill.js.map +1 -0
  50. package/dist/elements/ListHeaderTabs/TrashPill.d.ts +6 -0
  51. package/dist/elements/ListHeaderTabs/TrashPill.d.ts.map +1 -0
  52. package/dist/elements/ListHeaderTabs/TrashPill.js +53 -0
  53. package/dist/elements/ListHeaderTabs/TrashPill.js.map +1 -0
  54. package/dist/elements/{ListFolderPills → ListHeaderTabs}/index.scss +1 -2
  55. package/dist/elements/ListSelection/index.scss +1 -1
  56. package/dist/elements/PermanentlyDeleteButton/index.d.ts +14 -0
  57. package/dist/elements/PermanentlyDeleteButton/index.d.ts.map +1 -0
  58. package/dist/elements/PermanentlyDeleteButton/index.js +147 -0
  59. package/dist/elements/PermanentlyDeleteButton/index.js.map +1 -0
  60. package/dist/elements/RestoreButton/index.d.ts +15 -0
  61. package/dist/elements/RestoreButton/index.d.ts.map +1 -0
  62. package/dist/elements/RestoreButton/index.js +171 -0
  63. package/dist/elements/RestoreButton/index.js.map +1 -0
  64. package/dist/elements/RestoreButton/index.scss +25 -0
  65. package/dist/elements/RestoreMany/index.d.ts +9 -0
  66. package/dist/elements/RestoreMany/index.d.ts.map +1 -0
  67. package/dist/elements/RestoreMany/index.js +193 -0
  68. package/dist/elements/RestoreMany/index.js.map +1 -0
  69. package/dist/elements/RestoreMany/index.scss +25 -0
  70. package/dist/elements/Status/index.d.ts.map +1 -1
  71. package/dist/elements/Status/index.js +6 -4
  72. package/dist/elements/Status/index.js.map +1 -1
  73. package/dist/elements/Table/DefaultCell/index.d.ts.map +1 -1
  74. package/dist/elements/Table/DefaultCell/index.js +10 -8
  75. package/dist/elements/Table/DefaultCell/index.js.map +1 -1
  76. package/dist/elements/TrashBanner/index.d.ts +4 -0
  77. package/dist/elements/TrashBanner/index.d.ts.map +1 -0
  78. package/dist/elements/TrashBanner/index.js +37 -0
  79. package/dist/elements/TrashBanner/index.js.map +1 -0
  80. package/dist/elements/TrashBanner/index.scss +20 -0
  81. package/dist/exports/client/index.js +24 -22
  82. package/dist/exports/client/index.js.map +4 -4
  83. package/dist/fields/Checkbox/Input.d.ts.map +1 -1
  84. package/dist/fields/Checkbox/Input.js +2 -0
  85. package/dist/fields/Checkbox/Input.js.map +1 -1
  86. package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.d.ts +1 -0
  87. package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.d.ts.map +1 -1
  88. package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.js +7 -0
  89. package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.js.map +1 -1
  90. package/dist/forms/fieldSchemasToFormState/index.d.ts +2 -1
  91. package/dist/forms/fieldSchemasToFormState/index.d.ts.map +1 -1
  92. package/dist/forms/fieldSchemasToFormState/index.js +2 -0
  93. package/dist/forms/fieldSchemasToFormState/index.js.map +1 -1
  94. package/dist/forms/fieldSchemasToFormState/iterateFields.d.ts +2 -1
  95. package/dist/forms/fieldSchemasToFormState/iterateFields.d.ts.map +1 -1
  96. package/dist/forms/fieldSchemasToFormState/iterateFields.js +2 -0
  97. package/dist/forms/fieldSchemasToFormState/iterateFields.js.map +1 -1
  98. package/dist/forms/fieldSchemasToFormState/renderField.d.ts.map +1 -1
  99. package/dist/forms/fieldSchemasToFormState/renderField.js +2 -1
  100. package/dist/forms/fieldSchemasToFormState/renderField.js.map +1 -1
  101. package/dist/forms/fieldSchemasToFormState/types.d.ts +1 -0
  102. package/dist/forms/fieldSchemasToFormState/types.d.ts.map +1 -1
  103. package/dist/forms/fieldSchemasToFormState/types.js.map +1 -1
  104. package/dist/icons/Trash/index.d.ts +6 -0
  105. package/dist/icons/Trash/index.d.ts.map +1 -0
  106. package/dist/icons/Trash/index.js +22 -0
  107. package/dist/icons/Trash/index.js.map +1 -0
  108. package/dist/icons/Trash/index.scss +6 -0
  109. package/dist/providers/DocumentInfo/types.d.ts +2 -0
  110. package/dist/providers/DocumentInfo/types.d.ts.map +1 -1
  111. package/dist/providers/DocumentInfo/types.js.map +1 -1
  112. package/dist/providers/ServerFunctions/index.d.ts +1 -0
  113. package/dist/providers/ServerFunctions/index.d.ts.map +1 -1
  114. package/dist/providers/ServerFunctions/index.js.map +1 -1
  115. package/dist/providers/TableColumns/buildColumnState/index.d.ts +2 -1
  116. package/dist/providers/TableColumns/buildColumnState/index.d.ts.map +1 -1
  117. package/dist/providers/TableColumns/buildColumnState/index.js +4 -2
  118. package/dist/providers/TableColumns/buildColumnState/index.js.map +1 -1
  119. package/dist/providers/TableColumns/buildColumnState/renderCell.d.ts +3 -2
  120. package/dist/providers/TableColumns/buildColumnState/renderCell.d.ts.map +1 -1
  121. package/dist/providers/TableColumns/buildColumnState/renderCell.js +4 -2
  122. package/dist/providers/TableColumns/buildColumnState/renderCell.js.map +1 -1
  123. package/dist/styles.css +1 -1
  124. package/dist/utilities/buildFormState.d.ts.map +1 -1
  125. package/dist/utilities/buildFormState.js +2 -0
  126. package/dist/utilities/buildFormState.js.map +1 -1
  127. package/dist/utilities/renderTable.d.ts +3 -2
  128. package/dist/utilities/renderTable.d.ts.map +1 -1
  129. package/dist/utilities/renderTable.js +4 -2
  130. package/dist/utilities/renderTable.js.map +1 -1
  131. package/dist/views/CollectionFolder/index.d.ts.map +1 -1
  132. package/dist/views/CollectionFolder/index.js +15 -5
  133. package/dist/views/CollectionFolder/index.js.map +1 -1
  134. package/dist/views/Edit/Auth/index.js +5 -4
  135. package/dist/views/Edit/Auth/index.js.map +1 -1
  136. package/dist/views/Edit/SetDocumentStepNav/index.d.ts +1 -0
  137. package/dist/views/Edit/SetDocumentStepNav/index.d.ts.map +1 -1
  138. package/dist/views/Edit/SetDocumentStepNav/index.js +26 -15
  139. package/dist/views/Edit/SetDocumentStepNav/index.js.map +1 -1
  140. package/dist/views/Edit/index.d.ts.map +1 -1
  141. package/dist/views/Edit/index.js +11 -3
  142. package/dist/views/Edit/index.js.map +1 -1
  143. package/dist/views/List/ListHeader/index.d.ts +4 -2
  144. package/dist/views/List/ListHeader/index.d.ts.map +1 -1
  145. package/dist/views/List/ListHeader/index.js +24 -9
  146. package/dist/views/List/ListHeader/index.js.map +1 -1
  147. package/dist/views/List/ListSelection/index.d.ts +2 -1
  148. package/dist/views/List/ListSelection/index.d.ts.map +1 -1
  149. package/dist/views/List/ListSelection/index.js +26 -17
  150. package/dist/views/List/ListSelection/index.js.map +1 -1
  151. package/dist/views/List/index.d.ts.map +1 -1
  152. package/dist/views/List/index.js +28 -9
  153. package/dist/views/List/index.js.map +1 -1
  154. package/package.json +5 -5
  155. package/dist/elements/ListFolderPills/index.d.ts +0 -10
  156. package/dist/elements/ListFolderPills/index.d.ts.map +0 -1
  157. package/dist/elements/ListFolderPills/index.js +0 -97
  158. package/dist/elements/ListFolderPills/index.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["fieldIsSidebar","React","useMemo","RenderFields","Gutter","baseClass","DocumentFields","AfterFields","BeforeFields","Description","docPermissions","fields","forceSidebarWrap","readOnly","schemaPathSegments","hasSidebarFields","mainFields","sidebarFields","reduce","acc","field","push","_jsxs","className","filter","Boolean","join","_jsx","forceRender","parentIndexPath","parentPath","parentSchemaPath","permissions"],"sources":["../../../src/elements/DocumentFields/index.tsx"],"sourcesContent":["'use client'\nimport type { ClientField, SanitizedDocumentPermissions } from 'payload'\n\nimport { fieldIsSidebar } from 'payload/shared'\nimport React, { useMemo } from 'react'\n\nimport { RenderFields } from '../../forms/RenderFields/index.js'\nimport { Gutter } from '../Gutter/index.js'\nimport './index.scss'\n\nconst baseClass = 'document-fields'\n\ntype Args = {\n readonly AfterFields?: React.ReactNode\n readonly BeforeFields?: React.ReactNode\n readonly Description?: React.ReactNode\n readonly docPermissions: SanitizedDocumentPermissions\n readonly fields: ClientField[]\n readonly forceSidebarWrap?: boolean\n readonly readOnly?: boolean\n readonly schemaPathSegments: string[]\n}\n\nexport const DocumentFields: React.FC<Args> = ({\n AfterFields,\n BeforeFields,\n Description,\n docPermissions,\n fields,\n forceSidebarWrap,\n readOnly,\n schemaPathSegments,\n}) => {\n const { hasSidebarFields, mainFields, sidebarFields } = useMemo(() => {\n return fields.reduce(\n (acc, field) => {\n if (fieldIsSidebar(field)) {\n acc.sidebarFields.push(field)\n acc.mainFields.push(null)\n acc.hasSidebarFields = true\n } else {\n acc.mainFields.push(field)\n acc.sidebarFields.push(null)\n }\n return acc\n },\n {\n hasSidebarFields: false,\n mainFields: [] as ClientField[],\n sidebarFields: [] as ClientField[],\n },\n )\n }, [fields])\n\n return (\n <div\n className={[\n baseClass,\n hasSidebarFields ? `${baseClass}--has-sidebar` : `${baseClass}--no-sidebar`,\n forceSidebarWrap && `${baseClass}--force-sidebar-wrap`,\n ]\n .filter(Boolean)\n .join(' ')}\n >\n <div className={`${baseClass}__main`}>\n <Gutter className={`${baseClass}__edit`}>\n {Description ? (\n <header className={`${baseClass}__header`}>\n <div className={`${baseClass}__sub-header`}>{Description}</div>\n </header>\n ) : null}\n {BeforeFields}\n <RenderFields\n className={`${baseClass}__fields`}\n fields={mainFields}\n forceRender\n parentIndexPath=\"\"\n parentPath=\"\"\n parentSchemaPath={schemaPathSegments.join('.')}\n permissions={docPermissions?.fields}\n readOnly={readOnly}\n />\n {AfterFields}\n </Gutter>\n </div>\n {hasSidebarFields ? (\n <div className={`${baseClass}__sidebar-wrap`}>\n <div className={`${baseClass}__sidebar`}>\n <div className={`${baseClass}__sidebar-fields`}>\n <RenderFields\n fields={sidebarFields}\n forceRender\n parentIndexPath=\"\"\n parentPath=\"\"\n parentSchemaPath={schemaPathSegments.join('.')}\n permissions={docPermissions?.fields}\n readOnly={readOnly}\n />\n </div>\n </div>\n </div>\n ) : null}\n </div>\n )\n}\n"],"mappings":"AAAA;;;AAGA,SAASA,cAAc,QAAQ;AAC/B,OAAOC,KAAA,IAASC,OAAO,QAAQ;AAE/B,SAASC,YAAY,QAAQ;AAC7B,SAASC,MAAM,QAAQ;AACvB,OAAO;AAEP,MAAMC,SAAA,GAAY;AAalB,OAAO,MAAMC,cAAA,GAAiCA,CAAC;EAC7CC,WAAW;EACXC,YAAY;EACZC,WAAW;EACXC,cAAc;EACdC,MAAM;EACNC,gBAAgB;EAChBC,QAAQ;EACRC;AAAkB,CACnB;EACC,MAAM;IAAEC,gBAAgB;IAAEC,UAAU;IAAEC;EAAa,CAAE,GAAGf,OAAA,CAAQ;IAC9D,OAAOS,MAAA,CAAOO,MAAM,CAClB,CAACC,GAAA,EAAKC,KAAA;MACJ,IAAIpB,cAAA,CAAeoB,KAAA,GAAQ;QACzBD,GAAA,CAAIF,aAAa,CAACI,IAAI,CAACD,KAAA;QACvBD,GAAA,CAAIH,UAAU,CAACK,IAAI,CAAC;QACpBF,GAAA,CAAIJ,gBAAgB,GAAG;MACzB,OAAO;QACLI,GAAA,CAAIH,UAAU,CAACK,IAAI,CAACD,KAAA;QACpBD,GAAA,CAAIF,aAAa,CAACI,IAAI,CAAC;MACzB;MACA,OAAOF,GAAA;IACT,GACA;MACEJ,gBAAA,EAAkB;MAClBC,UAAA,EAAY,EAAE;MACdC,aAAA,EAAe;IACjB;EAEJ,GAAG,CAACN,MAAA,CAAO;EAEX,oBACEW,KAAA,CAAC;IACCC,SAAA,EAAW,CACTlB,SAAA,EACAU,gBAAA,GAAmB,GAAGV,SAAA,eAAwB,GAAG,GAAGA,SAAA,cAAuB,EAC3EO,gBAAA,IAAoB,GAAGP,SAAA,sBAA+B,CACvD,CACEmB,MAAM,CAACC,OAAA,EACPC,IAAI,CAAC;4BAERC,IAAA,CAAC;MAAIJ,SAAA,EAAW,GAAGlB,SAAA,QAAiB;gBAClC,aAAAiB,KAAA,CAAClB,MAAA;QAAOmB,SAAA,EAAW,GAAGlB,SAAA,QAAiB;mBACpCI,WAAA,gBACCkB,IAAA,CAAC;UAAOJ,SAAA,EAAW,GAAGlB,SAAA,UAAmB;oBACvC,aAAAsB,IAAA,CAAC;YAAIJ,SAAA,EAAW,GAAGlB,SAAA,cAAuB;sBAAGI;;aAE7C,MACHD,YAAA,E,aACDmB,IAAA,CAACxB,YAAA;UACCoB,SAAA,EAAW,GAAGlB,SAAA,UAAmB;UACjCM,MAAA,EAAQK,UAAA;UACRY,WAAW;UACXC,eAAA,EAAgB;UAChBC,UAAA,EAAW;UACXC,gBAAA,EAAkBjB,kBAAA,CAAmBY,IAAI,CAAC;UAC1CM,WAAA,EAAatB,cAAA,EAAgBC,MAAA;UAC7BE,QAAA,EAAUA;YAEXN,WAAA;;QAGJQ,gBAAA,gBACCY,IAAA,CAAC;MAAIJ,SAAA,EAAW,GAAGlB,SAAA,gBAAyB;gBAC1C,aAAAsB,IAAA,CAAC;QAAIJ,SAAA,EAAW,GAAGlB,SAAA,WAAoB;kBACrC,aAAAsB,IAAA,CAAC;UAAIJ,SAAA,EAAW,GAAGlB,SAAA,kBAA2B;oBAC5C,aAAAsB,IAAA,CAACxB,YAAA;YACCQ,MAAA,EAAQM,aAAA;YACRW,WAAW;YACXC,eAAA,EAAgB;YAChBC,UAAA,EAAW;YACXC,gBAAA,EAAkBjB,kBAAA,CAAmBY,IAAI,CAAC;YAC1CM,WAAA,EAAatB,cAAA,EAAgBC,MAAA;YAC7BE,QAAA,EAAUA;;;;SAKhB;;AAGV","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["fieldIsSidebar","React","useMemo","RenderFields","Gutter","TrashBanner","baseClass","DocumentFields","AfterFields","BeforeFields","Description","docPermissions","fields","forceSidebarWrap","isTrashed","readOnly","schemaPathSegments","hasSidebarFields","mainFields","sidebarFields","reduce","acc","field","push","_jsxs","className","filter","Boolean","join","_jsx","forceRender","parentIndexPath","parentPath","parentSchemaPath","permissions"],"sources":["../../../src/elements/DocumentFields/index.tsx"],"sourcesContent":["'use client'\nimport type { ClientField, SanitizedDocumentPermissions } from 'payload'\n\nimport { fieldIsSidebar } from 'payload/shared'\nimport React, { useMemo } from 'react'\n\nimport { RenderFields } from '../../forms/RenderFields/index.js'\nimport { Gutter } from '../Gutter/index.js'\nimport { TrashBanner } from '../TrashBanner/index.js'\nimport './index.scss'\n\nconst baseClass = 'document-fields'\n\ntype Args = {\n readonly AfterFields?: React.ReactNode\n readonly BeforeFields?: React.ReactNode\n readonly Description?: React.ReactNode\n readonly docPermissions: SanitizedDocumentPermissions\n readonly fields: ClientField[]\n readonly forceSidebarWrap?: boolean\n readonly isTrashed?: boolean\n readonly readOnly?: boolean\n readonly schemaPathSegments: string[]\n}\n\nexport const DocumentFields: React.FC<Args> = ({\n AfterFields,\n BeforeFields,\n Description,\n docPermissions,\n fields,\n forceSidebarWrap,\n isTrashed = false,\n readOnly,\n schemaPathSegments,\n}) => {\n const { hasSidebarFields, mainFields, sidebarFields } = useMemo(() => {\n return fields.reduce(\n (acc, field) => {\n if (fieldIsSidebar(field)) {\n acc.sidebarFields.push(field)\n acc.mainFields.push(null)\n acc.hasSidebarFields = true\n } else {\n acc.mainFields.push(field)\n acc.sidebarFields.push(null)\n }\n return acc\n },\n {\n hasSidebarFields: false,\n mainFields: [] as ClientField[],\n sidebarFields: [] as ClientField[],\n },\n )\n }, [fields])\n\n return (\n <div\n className={[\n baseClass,\n hasSidebarFields ? `${baseClass}--has-sidebar` : `${baseClass}--no-sidebar`,\n forceSidebarWrap && `${baseClass}--force-sidebar-wrap`,\n ]\n .filter(Boolean)\n .join(' ')}\n >\n <div className={`${baseClass}__main`}>\n <Gutter className={`${baseClass}__edit`}>\n {isTrashed && <TrashBanner />}\n {Description ? (\n <header className={`${baseClass}__header`}>\n <div className={`${baseClass}__sub-header`}>{Description}</div>\n </header>\n ) : null}\n {BeforeFields}\n <RenderFields\n className={`${baseClass}__fields`}\n fields={mainFields}\n forceRender\n parentIndexPath=\"\"\n parentPath=\"\"\n parentSchemaPath={schemaPathSegments.join('.')}\n permissions={docPermissions?.fields}\n readOnly={readOnly}\n />\n {AfterFields}\n </Gutter>\n </div>\n {hasSidebarFields ? (\n <div className={`${baseClass}__sidebar-wrap`}>\n <div className={`${baseClass}__sidebar`}>\n <div className={`${baseClass}__sidebar-fields`}>\n <RenderFields\n fields={sidebarFields}\n forceRender\n parentIndexPath=\"\"\n parentPath=\"\"\n parentSchemaPath={schemaPathSegments.join('.')}\n permissions={docPermissions?.fields}\n readOnly={readOnly}\n />\n </div>\n </div>\n </div>\n ) : null}\n </div>\n )\n}\n"],"mappings":"AAAA;;;AAGA,SAASA,cAAc,QAAQ;AAC/B,OAAOC,KAAA,IAASC,OAAO,QAAQ;AAE/B,SAASC,YAAY,QAAQ;AAC7B,SAASC,MAAM,QAAQ;AACvB,SAASC,WAAW,QAAQ;AAC5B,OAAO;AAEP,MAAMC,SAAA,GAAY;AAclB,OAAO,MAAMC,cAAA,GAAiCA,CAAC;EAC7CC,WAAW;EACXC,YAAY;EACZC,WAAW;EACXC,cAAc;EACdC,MAAM;EACNC,gBAAgB;EAChBC,SAAA,GAAY,KAAK;EACjBC,QAAQ;EACRC;AAAkB,CACnB;EACC,MAAM;IAAEC,gBAAgB;IAAEC,UAAU;IAAEC;EAAa,CAAE,GAAGjB,OAAA,CAAQ;IAC9D,OAAOU,MAAA,CAAOQ,MAAM,CAClB,CAACC,GAAA,EAAKC,KAAA;MACJ,IAAItB,cAAA,CAAesB,KAAA,GAAQ;QACzBD,GAAA,CAAIF,aAAa,CAACI,IAAI,CAACD,KAAA;QACvBD,GAAA,CAAIH,UAAU,CAACK,IAAI,CAAC;QACpBF,GAAA,CAAIJ,gBAAgB,GAAG;MACzB,OAAO;QACLI,GAAA,CAAIH,UAAU,CAACK,IAAI,CAACD,KAAA;QACpBD,GAAA,CAAIF,aAAa,CAACI,IAAI,CAAC;MACzB;MACA,OAAOF,GAAA;IACT,GACA;MACEJ,gBAAA,EAAkB;MAClBC,UAAA,EAAY,EAAE;MACdC,aAAA,EAAe;IACjB;EAEJ,GAAG,CAACP,MAAA,CAAO;EAEX,oBACEY,KAAA,CAAC;IACCC,SAAA,EAAW,CACTnB,SAAA,EACAW,gBAAA,GAAmB,GAAGX,SAAA,eAAwB,GAAG,GAAGA,SAAA,cAAuB,EAC3EO,gBAAA,IAAoB,GAAGP,SAAA,sBAA+B,CACvD,CACEoB,MAAM,CAACC,OAAA,EACPC,IAAI,CAAC;4BAERC,IAAA,CAAC;MAAIJ,SAAA,EAAW,GAAGnB,SAAA,QAAiB;gBAClC,aAAAkB,KAAA,CAACpB,MAAA;QAAOqB,SAAA,EAAW,GAAGnB,SAAA,QAAiB;mBACpCQ,SAAA,iBAAae,IAAA,CAACxB,WAAA,OACdK,WAAA,gBACCmB,IAAA,CAAC;UAAOJ,SAAA,EAAW,GAAGnB,SAAA,UAAmB;oBACvC,aAAAuB,IAAA,CAAC;YAAIJ,SAAA,EAAW,GAAGnB,SAAA,cAAuB;sBAAGI;;aAE7C,MACHD,YAAA,E,aACDoB,IAAA,CAAC1B,YAAA;UACCsB,SAAA,EAAW,GAAGnB,SAAA,UAAmB;UACjCM,MAAA,EAAQM,UAAA;UACRY,WAAW;UACXC,eAAA,EAAgB;UAChBC,UAAA,EAAW;UACXC,gBAAA,EAAkBjB,kBAAA,CAAmBY,IAAI,CAAC;UAC1CM,WAAA,EAAavB,cAAA,EAAgBC,MAAA;UAC7BG,QAAA,EAAUA;YAEXP,WAAA;;QAGJS,gBAAA,gBACCY,IAAA,CAAC;MAAIJ,SAAA,EAAW,GAAGnB,SAAA,gBAAyB;gBAC1C,aAAAuB,IAAA,CAAC;QAAIJ,SAAA,EAAW,GAAGnB,SAAA,WAAoB;kBACrC,aAAAuB,IAAA,CAAC;UAAIJ,SAAA,EAAW,GAAGnB,SAAA,kBAA2B;oBAC5C,aAAAuB,IAAA,CAAC1B,YAAA;YACCS,MAAA,EAAQO,aAAA;YACRW,WAAW;YACXC,eAAA,EAAgB;YAChBC,UAAA,EAAW;YACXC,gBAAA,EAAkBjB,kBAAA,CAAmBY,IAAI,CAAC;YAC1CM,WAAA,EAAavB,cAAA,EAAgBC,MAAA;YAC7BG,QAAA,EAAUA;;;;SAKhB;;AAGV","ignoreList":[]}
@@ -1,4 +1,4 @@
1
- import type { Data } from 'payload';
1
+ import type { Data, ViewTypes } from 'payload';
2
2
  import React from 'react';
3
3
  type Props = {
4
4
  readonly collectionSlug: string;
@@ -6,7 +6,8 @@ type Props = {
6
6
  readonly docTitle: string;
7
7
  readonly folderCollectionSlug: string;
8
8
  readonly folderFieldName: string;
9
+ readonly viewType?: ViewTypes;
9
10
  };
10
- export declare const FolderTableCellClient: ({ collectionSlug, data, docTitle, folderCollectionSlug, folderFieldName, }: Props) => React.JSX.Element;
11
+ export declare const FolderTableCellClient: ({ collectionSlug, data, docTitle, folderCollectionSlug, folderFieldName, viewType, }: Props) => React.JSX.Element;
11
12
  export {};
12
13
  //# sourceMappingURL=index.client.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.client.d.ts","sourceRoot":"","sources":["../../../../src/elements/FolderView/Cell/index.client.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,SAAS,CAAA;AAGnC,OAAO,KAAoB,MAAM,OAAO,CAAA;AAKxC,KAAK,KAAK,GAAG;IACX,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAA;IAC/B,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAA;IACnB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,oBAAoB,EAAE,MAAM,CAAA;IACrC,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAA;CACjC,CAAA;AAED,eAAO,MAAM,qBAAqB,+EAM/B,KAAK,sBAmFP,CAAA"}
1
+ {"version":3,"file":"index.client.d.ts","sourceRoot":"","sources":["../../../../src/elements/FolderView/Cell/index.client.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AAG9C,OAAO,KAAoB,MAAM,OAAO,CAAA;AAKxC,KAAK,KAAK,GAAG;IACX,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAA;IAC/B,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAA;IACnB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,oBAAoB,EAAE,MAAM,CAAA;IACrC,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAA;IAChC,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAA;CAC9B,CAAA;AAED,eAAO,MAAM,qBAAqB,yFAO/B,KAAK,sBAoFP,CAAA"}
@@ -9,7 +9,8 @@ export const FolderTableCellClient = ({
9
9
  data,
10
10
  docTitle,
11
11
  folderCollectionSlug,
12
- folderFieldName
12
+ folderFieldName,
13
+ viewType
13
14
  }) => {
14
15
  const docID = data.id;
15
16
  const intialFolderID = data?.[folderFieldName];
@@ -68,6 +69,7 @@ export const FolderTableCellClient = ({
68
69
  }, [config.routes.api, folderCollectionSlug, intialFolderID, t]);
69
70
  return /*#__PURE__*/_jsx(MoveDocToFolderButton, {
70
71
  buttonProps: {
72
+ disabled: viewType === 'trash',
71
73
  size: 'small'
72
74
  },
73
75
  collectionSlug: collectionSlug,
@@ -1 +1 @@
1
- {"version":3,"file":"index.client.js","names":["React","useEffect","MoveDocToFolderButton","useConfig","useTranslation","FolderTableCellClient","collectionSlug","data","docTitle","folderCollectionSlug","folderFieldName","docID","id","intialFolderID","config","t","fromFolderName","setFromFolderName","useState","fromFolderID","setFromFolderID","hasLoadedFolderName","useRef","onConfirm","useCallback","name","fetch","routes","api","body","JSON","stringify","credentials","headers","method","error","console","loadFolderName","req","res","json","current","_jsx","buttonProps","size","docData","modalSlug","skipConfirmModal"],"sources":["../../../../src/elements/FolderView/Cell/index.client.tsx"],"sourcesContent":["'use client'\n\nimport type { Data } from 'payload'\nimport type { FolderOrDocument } from 'payload/shared'\n\nimport React, { useEffect } from 'react'\n\n// eslint-disable-next-line payload/no-imports-from-exports-dir\nimport { MoveDocToFolderButton, useConfig, useTranslation } from '../../../exports/client/index.js'\n\ntype Props = {\n readonly collectionSlug: string\n readonly data: Data\n readonly docTitle: string\n readonly folderCollectionSlug: string\n readonly folderFieldName: string\n}\n\nexport const FolderTableCellClient = ({\n collectionSlug,\n data,\n docTitle,\n folderCollectionSlug,\n folderFieldName,\n}: Props) => {\n const docID = data.id\n const intialFolderID = data?.[folderFieldName]\n\n const { config } = useConfig()\n const { t } = useTranslation()\n const [fromFolderName, setFromFolderName] = React.useState(() =>\n intialFolderID ? `${t('general:loading')}...` : t('folder:noFolder'),\n )\n const [fromFolderID, setFromFolderID] = React.useState(intialFolderID)\n\n const hasLoadedFolderName = React.useRef(false)\n\n const onConfirm = React.useCallback(\n async ({ id, name }) => {\n try {\n await fetch(`${config.routes.api}/${collectionSlug}/${docID}`, {\n body: JSON.stringify({\n [folderFieldName]: id,\n }),\n credentials: 'include',\n headers: {\n 'Content-Type': 'application/json',\n },\n method: 'PATCH',\n })\n\n setFromFolderID(id)\n setFromFolderName(name || t('folder:noFolder'))\n } catch (error) {\n // eslint-disable-next-line no-console\n console.error('Error moving document to folder', error)\n }\n },\n [config.routes.api, collectionSlug, docID, folderFieldName, t],\n )\n\n useEffect(() => {\n const loadFolderName = async () => {\n try {\n const req = await fetch(\n `${config.routes.api}/${folderCollectionSlug}${intialFolderID ? `/${intialFolderID}` : ''}`,\n {\n credentials: 'include',\n headers: {\n 'Content-Type': 'application/json',\n },\n method: 'GET',\n },\n )\n\n const res = await req.json()\n setFromFolderName(res?.name || t('folder:noFolder'))\n } catch (error) {\n // eslint-disable-next-line no-console\n console.error('Error moving document to folder', error)\n }\n }\n\n if (!hasLoadedFolderName.current) {\n void loadFolderName()\n hasLoadedFolderName.current = true\n }\n }, [config.routes.api, folderCollectionSlug, intialFolderID, t])\n\n return (\n <MoveDocToFolderButton\n buttonProps={{\n size: 'small',\n }}\n collectionSlug={collectionSlug}\n docData={data as FolderOrDocument['value']}\n docID={docID}\n docTitle={docTitle}\n folderCollectionSlug={folderCollectionSlug}\n folderFieldName={folderFieldName}\n fromFolderID={fromFolderID}\n fromFolderName={fromFolderName}\n modalSlug={`move-doc-to-folder-cell--${docID}`}\n onConfirm={onConfirm}\n skipConfirmModal={false}\n />\n )\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.client.js","names":["React","useEffect","MoveDocToFolderButton","useConfig","useTranslation","FolderTableCellClient","collectionSlug","data","docTitle","folderCollectionSlug","folderFieldName","viewType","docID","id","intialFolderID","config","t","fromFolderName","setFromFolderName","useState","fromFolderID","setFromFolderID","hasLoadedFolderName","useRef","onConfirm","useCallback","name","fetch","routes","api","body","JSON","stringify","credentials","headers","method","error","console","loadFolderName","req","res","json","current","_jsx","buttonProps","disabled","size","docData","modalSlug","skipConfirmModal"],"sources":["../../../../src/elements/FolderView/Cell/index.client.tsx"],"sourcesContent":["'use client'\n\nimport type { Data, ViewTypes } from 'payload'\nimport type { FolderOrDocument } from 'payload/shared'\n\nimport React, { useEffect } from 'react'\n\n// eslint-disable-next-line payload/no-imports-from-exports-dir\nimport { MoveDocToFolderButton, useConfig, useTranslation } from '../../../exports/client/index.js'\n\ntype Props = {\n readonly collectionSlug: string\n readonly data: Data\n readonly docTitle: string\n readonly folderCollectionSlug: string\n readonly folderFieldName: string\n readonly viewType?: ViewTypes\n}\n\nexport const FolderTableCellClient = ({\n collectionSlug,\n data,\n docTitle,\n folderCollectionSlug,\n folderFieldName,\n viewType,\n}: Props) => {\n const docID = data.id\n const intialFolderID = data?.[folderFieldName]\n\n const { config } = useConfig()\n const { t } = useTranslation()\n const [fromFolderName, setFromFolderName] = React.useState(() =>\n intialFolderID ? `${t('general:loading')}...` : t('folder:noFolder'),\n )\n const [fromFolderID, setFromFolderID] = React.useState(intialFolderID)\n\n const hasLoadedFolderName = React.useRef(false)\n\n const onConfirm = React.useCallback(\n async ({ id, name }) => {\n try {\n await fetch(`${config.routes.api}/${collectionSlug}/${docID}`, {\n body: JSON.stringify({\n [folderFieldName]: id,\n }),\n credentials: 'include',\n headers: {\n 'Content-Type': 'application/json',\n },\n method: 'PATCH',\n })\n\n setFromFolderID(id)\n setFromFolderName(name || t('folder:noFolder'))\n } catch (error) {\n // eslint-disable-next-line no-console\n console.error('Error moving document to folder', error)\n }\n },\n [config.routes.api, collectionSlug, docID, folderFieldName, t],\n )\n\n useEffect(() => {\n const loadFolderName = async () => {\n try {\n const req = await fetch(\n `${config.routes.api}/${folderCollectionSlug}${intialFolderID ? `/${intialFolderID}` : ''}`,\n {\n credentials: 'include',\n headers: {\n 'Content-Type': 'application/json',\n },\n method: 'GET',\n },\n )\n\n const res = await req.json()\n setFromFolderName(res?.name || t('folder:noFolder'))\n } catch (error) {\n // eslint-disable-next-line no-console\n console.error('Error moving document to folder', error)\n }\n }\n\n if (!hasLoadedFolderName.current) {\n void loadFolderName()\n hasLoadedFolderName.current = true\n }\n }, [config.routes.api, folderCollectionSlug, intialFolderID, t])\n\n return (\n <MoveDocToFolderButton\n buttonProps={{\n disabled: viewType === 'trash',\n size: 'small',\n }}\n collectionSlug={collectionSlug}\n docData={data as FolderOrDocument['value']}\n docID={docID}\n docTitle={docTitle}\n folderCollectionSlug={folderCollectionSlug}\n folderFieldName={folderFieldName}\n fromFolderID={fromFolderID}\n fromFolderName={fromFolderName}\n modalSlug={`move-doc-to-folder-cell--${docID}`}\n onConfirm={onConfirm}\n skipConfirmModal={false}\n />\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.server.d.ts","sourceRoot":"","sources":["../../../../src/elements/FolderView/Cell/index.server.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,SAAS,CAAA;AAE9D,OAAO,KAAK,MAAM,OAAO,CAAA;AAIzB,eAAO,MAAM,eAAe,UAAW,+BAA+B,sBAkBrE,CAAA"}
1
+ {"version":3,"file":"index.server.d.ts","sourceRoot":"","sources":["../../../../src/elements/FolderView/Cell/index.server.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,SAAS,CAAA;AAE9D,OAAO,KAAK,MAAM,OAAO,CAAA;AAIzB,eAAO,MAAM,eAAe,UAAW,+BAA+B,sBAmBrE,CAAA"}
@@ -11,7 +11,8 @@ export const FolderTableCell = props => {
11
11
  data: props.rowData,
12
12
  docTitle: titleToRender,
13
13
  folderCollectionSlug: props.payload.config.folders.slug,
14
- folderFieldName: props.payload.config.folders.fieldName
14
+ folderFieldName: props.payload.config.folders.fieldName,
15
+ viewType: props.viewType
15
16
  });
16
17
  };
17
18
  //# sourceMappingURL=index.server.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.server.js","names":["React","FolderTableCellClient","FolderTableCell","props","titleToRender","collectionConfig","upload","rowData","filename","title","id","payload","config","folders","_jsx","collectionSlug","data","docTitle","folderCollectionSlug","slug","folderFieldName","fieldName"],"sources":["../../../../src/elements/FolderView/Cell/index.server.tsx"],"sourcesContent":["import type { DefaultServerCellComponentProps } from 'payload'\n\nimport React from 'react'\n\nimport { FolderTableCellClient } from './index.client.js'\n\nexport const FolderTableCell = (props: DefaultServerCellComponentProps) => {\n const titleToRender =\n (props.collectionConfig.upload ? props.rowData?.filename : props.rowData?.title) ||\n props.rowData.id\n\n if (!props.payload.config.folders) {\n return null\n }\n\n return (\n <FolderTableCellClient\n collectionSlug={props.collectionSlug}\n data={props.rowData}\n docTitle={titleToRender}\n folderCollectionSlug={props.payload.config.folders.slug}\n folderFieldName={props.payload.config.folders.fieldName}\n />\n )\n}\n"],"mappings":";AAEA,OAAOA,KAAA,MAAW;AAElB,SAASC,qBAAqB,QAAQ;AAEtC,OAAO,MAAMC,eAAA,GAAmBC,KAAA;EAC9B,MAAMC,aAAA,GACJ,CAACD,KAAA,CAAME,gBAAgB,CAACC,MAAM,GAAGH,KAAA,CAAMI,OAAO,EAAEC,QAAA,GAAWL,KAAA,CAAMI,OAAO,EAAEE,KAAI,KAC9EN,KAAA,CAAMI,OAAO,CAACG,EAAE;EAElB,IAAI,CAACP,KAAA,CAAMQ,OAAO,CAACC,MAAM,CAACC,OAAO,EAAE;IACjC,OAAO;EACT;EAEA,oBACEC,IAAA,CAACb,qBAAA;IACCc,cAAA,EAAgBZ,KAAA,CAAMY,cAAc;IACpCC,IAAA,EAAMb,KAAA,CAAMI,OAAO;IACnBU,QAAA,EAAUb,aAAA;IACVc,oBAAA,EAAsBf,KAAA,CAAMQ,OAAO,CAACC,MAAM,CAACC,OAAO,CAACM,IAAI;IACvDC,eAAA,EAAiBjB,KAAA,CAAMQ,OAAO,CAACC,MAAM,CAACC,OAAO,CAACQ;;AAGpD","ignoreList":[]}
1
+ {"version":3,"file":"index.server.js","names":["React","FolderTableCellClient","FolderTableCell","props","titleToRender","collectionConfig","upload","rowData","filename","title","id","payload","config","folders","_jsx","collectionSlug","data","docTitle","folderCollectionSlug","slug","folderFieldName","fieldName","viewType"],"sources":["../../../../src/elements/FolderView/Cell/index.server.tsx"],"sourcesContent":["import type { DefaultServerCellComponentProps } from 'payload'\n\nimport React from 'react'\n\nimport { FolderTableCellClient } from './index.client.js'\n\nexport const FolderTableCell = (props: DefaultServerCellComponentProps) => {\n const titleToRender =\n (props.collectionConfig.upload ? props.rowData?.filename : props.rowData?.title) ||\n props.rowData.id\n\n if (!props.payload.config.folders) {\n return null\n }\n\n return (\n <FolderTableCellClient\n collectionSlug={props.collectionSlug}\n data={props.rowData}\n docTitle={titleToRender}\n folderCollectionSlug={props.payload.config.folders.slug}\n folderFieldName={props.payload.config.folders.fieldName}\n viewType={props.viewType}\n />\n )\n}\n"],"mappings":";AAEA,OAAOA,KAAA,MAAW;AAElB,SAASC,qBAAqB,QAAQ;AAEtC,OAAO,MAAMC,eAAA,GAAmBC,KAAA;EAC9B,MAAMC,aAAA,GACJ,CAACD,KAAA,CAAME,gBAAgB,CAACC,MAAM,GAAGH,KAAA,CAAMI,OAAO,EAAEC,QAAA,GAAWL,KAAA,CAAMI,OAAO,EAAEE,KAAI,KAC9EN,KAAA,CAAMI,OAAO,CAACG,EAAE;EAElB,IAAI,CAACP,KAAA,CAAMQ,OAAO,CAACC,MAAM,CAACC,OAAO,EAAE;IACjC,OAAO;EACT;EAEA,oBACEC,IAAA,CAACb,qBAAA;IACCc,cAAA,EAAgBZ,KAAA,CAAMY,cAAc;IACpCC,IAAA,EAAMb,KAAA,CAAMI,OAAO;IACnBU,QAAA,EAAUb,aAAA;IACVc,oBAAA,EAAsBf,KAAA,CAAMQ,OAAO,CAACC,MAAM,CAACC,OAAO,CAACM,IAAI;IACvDC,eAAA,EAAiBjB,KAAA,CAAMQ,OAAO,CAACC,MAAM,CAACC,OAAO,CAACQ,SAAS;IACvDC,QAAA,EAAUnB,KAAA,CAAMmB;;AAGtB","ignoreList":[]}
@@ -0,0 +1,7 @@
1
+ import type { ClientCollectionConfig } from 'payload';
2
+ import React from 'react';
3
+ export declare function ListEmptyTrashButton({ collectionConfig, hasDeletePermission, }: {
4
+ collectionConfig: ClientCollectionConfig;
5
+ hasDeletePermission: boolean;
6
+ }): React.JSX.Element;
7
+ //# sourceMappingURL=ListEmptyTrashButton.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ListEmptyTrashButton.d.ts","sourceRoot":"","sources":["../../../../src/elements/ListHeader/TitleActions/ListEmptyTrashButton.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,SAAS,CAAA;AAMrD,OAAO,KAAK,MAAM,OAAO,CAAA;AAczB,wBAAgB,oBAAoB,CAAC,EACnC,gBAAgB,EAChB,mBAAmB,GACpB,EAAE;IACD,gBAAgB,EAAE,sBAAsB,CAAA;IACxC,mBAAmB,EAAE,OAAO,CAAA;CAC7B,qBAyKA"}
@@ -0,0 +1,164 @@
1
+ 'use client';
2
+
3
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
4
+ import { useModal } from '@faceless-ui/modal';
5
+ import { getTranslation } from '@payloadcms/translations';
6
+ import { useRouter, useSearchParams } from 'next/navigation.js';
7
+ import * as qs from 'qs-esm';
8
+ import React from 'react';
9
+ import { toast } from 'sonner';
10
+ import { useConfig } from '../../../providers/Config/index.js';
11
+ import { useLocale } from '../../../providers/Locale/index.js';
12
+ import { useRouteCache } from '../../../providers/RouteCache/index.js';
13
+ import { useTranslation } from '../../../providers/Translation/index.js';
14
+ import { requests } from '../../../utilities/api.js';
15
+ import { Button } from '../../Button/index.js';
16
+ import { ConfirmationModal } from '../../ConfirmationModal/index.js';
17
+ import { Translation } from '../../Translation/index.js';
18
+ const confirmEmptyTrashSlug = 'confirm-empty-trash';
19
+ export function ListEmptyTrashButton({
20
+ collectionConfig,
21
+ hasDeletePermission
22
+ }) {
23
+ const {
24
+ i18n,
25
+ t
26
+ } = useTranslation();
27
+ const {
28
+ code: locale
29
+ } = useLocale();
30
+ const {
31
+ config
32
+ } = useConfig();
33
+ const {
34
+ openModal
35
+ } = useModal();
36
+ const router = useRouter();
37
+ const searchParams = useSearchParams();
38
+ const {
39
+ clearRouteCache
40
+ } = useRouteCache();
41
+ const [trashCount, setTrashCount] = React.useState(null);
42
+ React.useEffect(() => {
43
+ const fetchTrashCount = async () => {
44
+ const queryString = qs.stringify({
45
+ depth: 0,
46
+ limit: 0,
47
+ locale,
48
+ trash: true,
49
+ where: {
50
+ deletedAt: {
51
+ exists: true
52
+ }
53
+ }
54
+ }, {
55
+ addQueryPrefix: true
56
+ });
57
+ try {
58
+ const res = await requests.get(`${config.serverURL}${config.routes.api}/${collectionConfig.slug}${queryString}`, {
59
+ headers: {
60
+ 'Accept-Language': i18n.language,
61
+ 'Content-Type': 'application/json'
62
+ }
63
+ });
64
+ const json = await res.json();
65
+ setTrashCount(json?.totalDocs ?? 0);
66
+ } catch {
67
+ setTrashCount(0);
68
+ }
69
+ };
70
+ void fetchTrashCount();
71
+ }, [collectionConfig.slug, config, i18n.language, locale]);
72
+ const handleEmptyTrash = React.useCallback(async () => {
73
+ if (!hasDeletePermission) {
74
+ return;
75
+ }
76
+ const {
77
+ slug,
78
+ labels
79
+ } = collectionConfig;
80
+ const queryString_0 = qs.stringify({
81
+ limit: 0,
82
+ locale,
83
+ trash: true,
84
+ where: {
85
+ deletedAt: {
86
+ exists: true
87
+ }
88
+ }
89
+ }, {
90
+ addQueryPrefix: true
91
+ });
92
+ const res_0 = await requests.delete(`${config.serverURL}${config.routes.api}/${slug}${queryString_0}`, {
93
+ headers: {
94
+ 'Accept-Language': i18n.language,
95
+ 'Content-Type': 'application/json'
96
+ }
97
+ });
98
+ try {
99
+ const json_0 = await res_0.json();
100
+ const deletedCount = json_0?.docs?.length || 0;
101
+ if (res_0.status < 400) {
102
+ toast.success(t('general:permanentlyDeletedCountSuccessfully', {
103
+ count: deletedCount,
104
+ label: getTranslation(labels?.plural, i18n)
105
+ }));
106
+ }
107
+ if (json_0?.errors?.length > 0) {
108
+ toast.error(json_0.message, {
109
+ description: json_0.errors.map(err => err.message).join('\n')
110
+ });
111
+ }
112
+ router.replace(qs.stringify({
113
+ ...Object.fromEntries(searchParams.entries()),
114
+ page: '1'
115
+ }, {
116
+ addQueryPrefix: true
117
+ }));
118
+ clearRouteCache();
119
+ } catch {
120
+ toast.error(t('error:unknown'));
121
+ }
122
+ }, [collectionConfig, config, hasDeletePermission, i18n, t, locale, searchParams, router, clearRouteCache]);
123
+ return /*#__PURE__*/_jsxs(React.Fragment, {
124
+ children: [/*#__PURE__*/_jsx(Button, {
125
+ "aria-label": t('general:emptyTrashLabel', {
126
+ label: getTranslation(collectionConfig?.labels?.plural, i18n)
127
+ }),
128
+ buttonStyle: "pill",
129
+ disabled: trashCount === 0,
130
+ id: "empty-trash-button",
131
+ onClick: () => {
132
+ openModal(confirmEmptyTrashSlug);
133
+ },
134
+ size: "small",
135
+ children: t('general:emptyTrash')
136
+ }, "empty-trash-button"), /*#__PURE__*/_jsx(ConfirmationModal, {
137
+ body: /*#__PURE__*/_jsx(Translation, {
138
+ elements: {
139
+ '0': ({
140
+ children
141
+ }) => /*#__PURE__*/_jsx("strong", {
142
+ children: children
143
+ }),
144
+ '1': ({
145
+ children: children_0
146
+ }) => /*#__PURE__*/_jsx("strong", {
147
+ children: children_0
148
+ })
149
+ },
150
+ i18nKey: "general:aboutToPermanentlyDeleteTrash",
151
+ t: t,
152
+ variables: {
153
+ count: trashCount ?? 0,
154
+ label: getTranslation(trashCount === 1 ? collectionConfig.labels?.singular : collectionConfig.labels?.plural, i18n)
155
+ }
156
+ }),
157
+ confirmingLabel: t('general:deleting'),
158
+ heading: t('general:confirmDeletion'),
159
+ modalSlug: confirmEmptyTrashSlug,
160
+ onConfirm: handleEmptyTrash
161
+ })]
162
+ });
163
+ }
164
+ //# sourceMappingURL=ListEmptyTrashButton.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ListEmptyTrashButton.js","names":["useModal","getTranslation","useRouter","useSearchParams","qs","React","toast","useConfig","useLocale","useRouteCache","useTranslation","requests","Button","ConfirmationModal","Translation","confirmEmptyTrashSlug","ListEmptyTrashButton","collectionConfig","hasDeletePermission","i18n","t","code","locale","config","openModal","router","searchParams","clearRouteCache","trashCount","setTrashCount","useState","useEffect","fetchTrashCount","queryString","stringify","depth","limit","trash","where","deletedAt","exists","addQueryPrefix","res","get","serverURL","routes","api","slug","headers","language","json","totalDocs","handleEmptyTrash","useCallback","labels","delete","deletedCount","docs","length","status","success","count","label","plural","errors","error","message","description","map","err","join","replace","Object","fromEntries","entries","page","_jsxs","Fragment","_jsx","buttonStyle","disabled","id","onClick","size","body","elements","0","children","1","i18nKey","variables","singular","confirmingLabel","heading","modalSlug","onConfirm"],"sources":["../../../../src/elements/ListHeader/TitleActions/ListEmptyTrashButton.tsx"],"sourcesContent":["'use client'\nimport type { ClientCollectionConfig } from 'payload'\n\nimport { useModal } from '@faceless-ui/modal'\nimport { getTranslation } from '@payloadcms/translations'\nimport { useRouter, useSearchParams } from 'next/navigation.js'\nimport * as qs from 'qs-esm'\nimport React from 'react'\nimport { toast } from 'sonner'\n\nimport { useConfig } from '../../../providers/Config/index.js'\nimport { useLocale } from '../../../providers/Locale/index.js'\nimport { useRouteCache } from '../../../providers/RouteCache/index.js'\nimport { useTranslation } from '../../../providers/Translation/index.js'\nimport { requests } from '../../../utilities/api.js'\nimport { Button } from '../../Button/index.js'\nimport { ConfirmationModal } from '../../ConfirmationModal/index.js'\nimport { Translation } from '../../Translation/index.js'\n\nconst confirmEmptyTrashSlug = 'confirm-empty-trash'\n\nexport function ListEmptyTrashButton({\n collectionConfig,\n hasDeletePermission,\n}: {\n collectionConfig: ClientCollectionConfig\n hasDeletePermission: boolean\n}) {\n const { i18n, t } = useTranslation()\n const { code: locale } = useLocale()\n const { config } = useConfig()\n const { openModal } = useModal()\n const router = useRouter()\n const searchParams = useSearchParams()\n const { clearRouteCache } = useRouteCache()\n\n const [trashCount, setTrashCount] = React.useState<null | number>(null)\n\n React.useEffect(() => {\n const fetchTrashCount = async () => {\n const queryString = qs.stringify(\n {\n depth: 0,\n limit: 0,\n locale,\n trash: true,\n where: {\n deletedAt: {\n exists: true,\n },\n },\n },\n { addQueryPrefix: true },\n )\n\n try {\n const res = await requests.get(\n `${config.serverURL}${config.routes.api}/${collectionConfig.slug}${queryString}`,\n {\n headers: {\n 'Accept-Language': i18n.language,\n 'Content-Type': 'application/json',\n },\n },\n )\n\n const json = await res.json()\n setTrashCount(json?.totalDocs ?? 0)\n } catch {\n setTrashCount(0)\n }\n }\n\n void fetchTrashCount()\n }, [collectionConfig.slug, config, i18n.language, locale])\n\n const handleEmptyTrash = React.useCallback(async () => {\n if (!hasDeletePermission) {\n return\n }\n\n const { slug, labels } = collectionConfig\n\n const queryString = qs.stringify(\n {\n limit: 0,\n locale,\n trash: true,\n where: {\n deletedAt: {\n exists: true,\n },\n },\n },\n { addQueryPrefix: true },\n )\n\n const res = await requests.delete(\n `${config.serverURL}${config.routes.api}/${slug}${queryString}`,\n {\n headers: {\n 'Accept-Language': i18n.language,\n 'Content-Type': 'application/json',\n },\n },\n )\n\n try {\n const json = await res.json()\n const deletedCount = json?.docs?.length || 0\n\n if (res.status < 400) {\n toast.success(\n t('general:permanentlyDeletedCountSuccessfully', {\n count: deletedCount,\n label: getTranslation(labels?.plural, i18n),\n }),\n )\n }\n\n if (json?.errors?.length > 0) {\n toast.error(json.message, {\n description: json.errors.map((err) => err.message).join('\\n'),\n })\n }\n\n router.replace(\n qs.stringify(\n {\n ...Object.fromEntries(searchParams.entries()),\n page: '1',\n },\n { addQueryPrefix: true },\n ),\n )\n\n clearRouteCache()\n } catch {\n toast.error(t('error:unknown'))\n }\n }, [\n collectionConfig,\n config,\n hasDeletePermission,\n i18n,\n t,\n locale,\n searchParams,\n router,\n clearRouteCache,\n ])\n\n return (\n <React.Fragment>\n <Button\n aria-label={t('general:emptyTrashLabel', {\n label: getTranslation(collectionConfig?.labels?.plural, i18n),\n })}\n buttonStyle=\"pill\"\n disabled={trashCount === 0}\n id=\"empty-trash-button\"\n key=\"empty-trash-button\"\n onClick={() => {\n openModal(confirmEmptyTrashSlug)\n }}\n size=\"small\"\n >\n {t('general:emptyTrash')}\n </Button>\n <ConfirmationModal\n body={\n <Translation\n elements={{\n '0': ({ children }) => <strong>{children}</strong>,\n '1': ({ children }) => <strong>{children}</strong>,\n }}\n i18nKey=\"general:aboutToPermanentlyDeleteTrash\"\n t={t}\n variables={{\n count: trashCount ?? 0,\n label: getTranslation(\n trashCount === 1\n ? collectionConfig.labels?.singular\n : collectionConfig.labels?.plural,\n i18n,\n ),\n }}\n />\n }\n confirmingLabel={t('general:deleting')}\n heading={t('general:confirmDeletion')}\n modalSlug={confirmEmptyTrashSlug}\n onConfirm={handleEmptyTrash}\n />\n </React.Fragment>\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,4 +1,5 @@
1
1
  export { ListBulkUploadButton } from './ListBulkUploadButton.js';
2
2
  export { ListCreateNewButton } from './ListCreateNewDocButton.js';
3
3
  export { ListCreateNewDocInFolderButton } from './ListCreateNewDocInFolderButton.js';
4
+ export { ListEmptyTrashButton } from './ListEmptyTrashButton.js';
4
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/elements/ListHeader/TitleActions/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAA;AAChE,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAA;AACjE,OAAO,EAAE,8BAA8B,EAAE,MAAM,qCAAqC,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/elements/ListHeader/TitleActions/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAA;AAChE,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAA;AACjE,OAAO,EAAE,8BAA8B,EAAE,MAAM,qCAAqC,CAAA;AACpF,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAA"}
@@ -1,4 +1,5 @@
1
1
  export { ListBulkUploadButton } from './ListBulkUploadButton.js';
2
2
  export { ListCreateNewButton } from './ListCreateNewDocButton.js';
3
3
  export { ListCreateNewDocInFolderButton } from './ListCreateNewDocInFolderButton.js';
4
+ export { ListEmptyTrashButton } from './ListEmptyTrashButton.js';
4
5
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["ListBulkUploadButton","ListCreateNewButton","ListCreateNewDocInFolderButton"],"sources":["../../../../src/elements/ListHeader/TitleActions/index.tsx"],"sourcesContent":["export { ListBulkUploadButton } from './ListBulkUploadButton.js'\nexport { ListCreateNewButton } from './ListCreateNewDocButton.js'\nexport { ListCreateNewDocInFolderButton } from './ListCreateNewDocInFolderButton.js'\n"],"mappings":"AAAA,SAASA,oBAAoB,QAAQ;AACrC,SAASC,mBAAmB,QAAQ;AACpC,SAASC,8BAA8B,QAAQ","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["ListBulkUploadButton","ListCreateNewButton","ListCreateNewDocInFolderButton","ListEmptyTrashButton"],"sources":["../../../../src/elements/ListHeader/TitleActions/index.tsx"],"sourcesContent":["export { ListBulkUploadButton } from './ListBulkUploadButton.js'\nexport { ListCreateNewButton } from './ListCreateNewDocButton.js'\nexport { ListCreateNewDocInFolderButton } from './ListCreateNewDocInFolderButton.js'\nexport { ListEmptyTrashButton } from './ListEmptyTrashButton.js'\n"],"mappings":"AAAA,SAASA,oBAAoB,QAAQ;AACrC,SAASC,mBAAmB,QAAQ;AACpC,SAASC,8BAA8B,QAAQ;AAC/C,SAASC,oBAAoB,QAAQ","ignoreList":[]}
@@ -0,0 +1,10 @@
1
+ import type { ClientCollectionConfig, ViewTypes } from 'payload';
2
+ import './index.scss';
3
+ type ByFolderPillProps = {
4
+ readonly collectionConfig: ClientCollectionConfig;
5
+ readonly folderCollectionSlug: string;
6
+ readonly viewType: ViewTypes;
7
+ };
8
+ export declare function ByFolderPill({ collectionConfig, folderCollectionSlug, viewType, }: ByFolderPillProps): import("react").JSX.Element;
9
+ export {};
10
+ //# sourceMappingURL=ByFolderPill.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ByFolderPill.d.ts","sourceRoot":"","sources":["../../../src/elements/ListHeaderTabs/ByFolderPill.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,sBAAsB,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AAOhE,OAAO,cAAc,CAAA;AAIrB,KAAK,iBAAiB,GAAG;IACvB,QAAQ,CAAC,gBAAgB,EAAE,sBAAsB,CAAA;IACjD,QAAQ,CAAC,oBAAoB,EAAE,MAAM,CAAA;IACrC,QAAQ,CAAC,QAAQ,EAAE,SAAS,CAAA;CAC7B,CAAA;AAED,wBAAgB,YAAY,CAAC,EAC3B,gBAAgB,EAChB,oBAAoB,EACpB,QAAQ,GACT,EAAE,iBAAiB,+BA8BnB"}
@@ -0,0 +1,70 @@
1
+ 'use client';
2
+
3
+ import { c as _c } from "react/compiler-runtime";
4
+ import { jsx as _jsx } from "react/jsx-runtime";
5
+ import { formatAdminURL } from 'payload/shared';
6
+ import { useConfig } from '../../providers/Config/index.js';
7
+ import { useTranslation } from '../../providers/Translation/index.js';
8
+ import { Button } from '../Button/index.js';
9
+ import './index.scss';
10
+ const baseClass = 'list-pills';
11
+ export function ByFolderPill(t0) {
12
+ const $ = _c(10);
13
+ const {
14
+ collectionConfig,
15
+ folderCollectionSlug,
16
+ viewType
17
+ } = t0;
18
+ const {
19
+ t
20
+ } = useTranslation();
21
+ const {
22
+ config
23
+ } = useConfig();
24
+ if (!folderCollectionSlug) {
25
+ return null;
26
+ }
27
+ const t1 = viewType === "folders" && `${baseClass}__button--active`;
28
+ let t2;
29
+ if ($[0] !== t1) {
30
+ t2 = [`${baseClass}__button`, t1].filter(Boolean);
31
+ $[0] = t1;
32
+ $[1] = t2;
33
+ } else {
34
+ t2 = $[1];
35
+ }
36
+ const t3 = t2.join(" ");
37
+ const t4 = viewType === "folders";
38
+ const t5 = viewType === "list" || viewType === "trash" ? "link" : "div";
39
+ const t6 = `/collections/${collectionConfig.slug}/${folderCollectionSlug}`;
40
+ let t7;
41
+ if ($[2] !== config.routes.admin || $[3] !== config.serverURL || $[4] !== t || $[5] !== t3 || $[6] !== t4 || $[7] !== t5 || $[8] !== t6) {
42
+ t7 = _jsx("div", {
43
+ className: baseClass,
44
+ children: _jsx(Button, {
45
+ buttonStyle: "tab",
46
+ className: t3,
47
+ disabled: t4,
48
+ el: t5,
49
+ to: formatAdminURL({
50
+ adminRoute: config.routes.admin,
51
+ path: t6,
52
+ serverURL: config.serverURL
53
+ }),
54
+ children: t("folder:byFolder")
55
+ })
56
+ });
57
+ $[2] = config.routes.admin;
58
+ $[3] = config.serverURL;
59
+ $[4] = t;
60
+ $[5] = t3;
61
+ $[6] = t4;
62
+ $[7] = t5;
63
+ $[8] = t6;
64
+ $[9] = t7;
65
+ } else {
66
+ t7 = $[9];
67
+ }
68
+ return t7;
69
+ }
70
+ //# sourceMappingURL=ByFolderPill.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ByFolderPill.js","names":["c","_c","formatAdminURL","useConfig","useTranslation","Button","baseClass","ByFolderPill","t0","$","collectionConfig","folderCollectionSlug","viewType","t","config","t1","t2","filter","Boolean","t3","join","t4","t5","t6","slug","t7","routes","admin","serverURL","_jsx","className","children","buttonStyle","disabled","el","to","adminRoute","path"],"sources":["../../../src/elements/ListHeaderTabs/ByFolderPill.tsx"],"sourcesContent":["'use client'\n\nimport type { ClientCollectionConfig, ViewTypes } from 'payload'\n\nimport { formatAdminURL } from 'payload/shared'\n\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { Button } from '../Button/index.js'\nimport './index.scss'\n\nconst baseClass = 'list-pills'\n\ntype ByFolderPillProps = {\n readonly collectionConfig: ClientCollectionConfig\n readonly folderCollectionSlug: string\n readonly viewType: ViewTypes\n}\n\nexport function ByFolderPill({\n collectionConfig,\n folderCollectionSlug,\n viewType,\n}: ByFolderPillProps) {\n const { t } = useTranslation()\n const { config } = useConfig()\n\n if (!folderCollectionSlug) {\n return null\n }\n\n return (\n <div className={baseClass}>\n <Button\n buttonStyle=\"tab\"\n className={[\n `${baseClass}__button`,\n viewType === 'folders' && `${baseClass}__button--active`,\n ]\n .filter(Boolean)\n .join(' ')}\n disabled={viewType === 'folders'}\n el={viewType === 'list' || viewType === 'trash' ? 'link' : 'div'}\n to={formatAdminURL({\n adminRoute: config.routes.admin,\n path: `/collections/${collectionConfig.slug}/${folderCollectionSlug}`,\n serverURL: config.serverURL,\n })}\n >\n {t('folder:byFolder')}\n </Button>\n </div>\n )\n}\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AAIA,SAASC,cAAc,QAAQ;AAE/B,SAASC,SAAS,QAAQ;AAC1B,SAASC,cAAc,QAAQ;AAC/B,SAASC,MAAM,QAAQ;AACvB,OAAO;AAEP,MAAMC,SAAA,GAAY;AAQlB,OAAO,SAAAC,aAAAC,EAAA;EAAA,MAAAC,CAAA,GAAAR,EAAA;EAAsB;IAAAS,gBAAA;IAAAC,oBAAA;IAAAC;EAAA,IAAAJ,EAIT;EAClB;IAAAK;EAAA,IAAcT,cAAA;EACd;IAAAU;EAAA,IAAmBX,SAAA;EAAA,KAEdQ,oBAAA;IAAA;EAAA;EAUG,MAAAI,EAAA,GAAAH,QAAA,KAAa,aAAa,GAAAN,SAAA,kBAA8B;EAAA,IAAAU,EAAA;EAAA,IAAAP,CAAA,QAAAM,EAAA;IAF/CC,EAAA,IACT,GAAAV,SAAA,UAAsB,EACtBS,EAAwD,EAAAE,MAAA,CAAAC,OAEhD;IAAAT,CAAA,MAAAM,EAAA;IAAAN,CAAA,MAAAO,EAAA;EAAA;IAAAA,EAAA,GAAAP,CAAA;EAAA;EAJC,MAAAU,EAAA,GAAAH,EAID,CAAAI,IAAA,CACF;EACE,MAAAC,EAAA,GAAAT,QAAA,KAAa;EACnB,MAAAU,EAAA,GAAAV,QAAA,KAAa,UAAUA,QAAA,KAAa,UAAU,SAAS;EAGnD,MAAAW,EAAA,mBAAgBb,gBAAA,CAAAc,IAAA,IAAyBb,oBAAA,EAAsB;EAAA,IAAAc,EAAA;EAAA,IAAAhB,CAAA,QAAAK,MAAA,CAAAY,MAAA,CAAAC,KAAA,IAAAlB,CAAA,QAAAK,MAAA,CAAAc,SAAA,IAAAnB,CAAA,QAAAI,CAAA,IAAAJ,CAAA,QAAAU,EAAA,IAAAV,CAAA,QAAAY,EAAA,IAAAZ,CAAA,QAAAa,EAAA,IAAAb,CAAA,QAAAc,EAAA;IAb3EE,EAAA,GAAAI,IAAA,CAAC;MAAAC,SAAA,EAAAxB,SAAA;MAAAyB,QAAA,EACCF,IAAA,CAAAxB,MAAA;QAAA2B,WAAA,EACc;QAAAF,SAAA,EACDX,EAKH;QAAAc,QAAA,EACEZ,EAAa;QAAAa,EAAA,EACnBZ,EAAuD;QAAAa,EAAA,EACvDjC,cAAA;UAAAkC,UAAA,EACUtB,MAAA,CAAAY,MAAA,CAAAC,KAAA;UAAAU,IAAA,EACNd,EAA+D;UAAAK,SAAA,EAC1Dd,MAAA,CAAAc;QAAA,CACb;QAAAG,QAAA,EAEClB,CAAA,CAAE;MAAA,C;;;;;;;;;;;;;SAjBPY,E","ignoreList":[]}
@@ -0,0 +1,9 @@
1
+ import type { ClientCollectionConfig, ViewTypes } from 'payload';
2
+ import './index.scss';
3
+ type DefaultListPillProps = {
4
+ readonly collectionConfig: ClientCollectionConfig;
5
+ readonly viewType: ViewTypes;
6
+ };
7
+ export declare function DefaultListPill({ collectionConfig, viewType }: DefaultListPillProps): import("react").JSX.Element;
8
+ export {};
9
+ //# sourceMappingURL=DefaultListPill.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DefaultListPill.d.ts","sourceRoot":"","sources":["../../../src/elements/ListHeaderTabs/DefaultListPill.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,sBAAsB,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AAQhE,OAAO,cAAc,CAAA;AAIrB,KAAK,oBAAoB,GAAG;IAC1B,QAAQ,CAAC,gBAAgB,EAAE,sBAAsB,CAAA;IACjD,QAAQ,CAAC,QAAQ,EAAE,SAAS,CAAA;CAC7B,CAAA;AAED,wBAAgB,eAAe,CAAC,EAAE,gBAAgB,EAAE,QAAQ,EAAE,EAAE,oBAAoB,+BA2BnF"}
@@ -0,0 +1,68 @@
1
+ 'use client';
2
+
3
+ import { c as _c } from "react/compiler-runtime";
4
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
5
+ import { getTranslation } from '@payloadcms/translations';
6
+ import { formatAdminURL } from 'payload/shared';
7
+ import { useConfig } from '../../providers/Config/index.js';
8
+ import { useTranslation } from '../../providers/Translation/index.js';
9
+ import { Button } from '../Button/index.js';
10
+ import './index.scss';
11
+ const baseClass = 'list-pills';
12
+ export function DefaultListPill(t0) {
13
+ const $ = _c(11);
14
+ const {
15
+ collectionConfig,
16
+ viewType
17
+ } = t0;
18
+ const {
19
+ i18n,
20
+ t
21
+ } = useTranslation();
22
+ const {
23
+ config
24
+ } = useConfig();
25
+ const buttonLabel = `${t("general:all")} ${getTranslation(collectionConfig?.labels?.plural, i18n)}`;
26
+ let t1;
27
+ if ($[0] !== buttonLabel || $[1] !== collectionConfig.labels?.plural || $[2] !== collectionConfig.slug || $[3] !== config.routes.admin || $[4] !== config.serverURL || $[5] !== i18n || $[6] !== t || $[7] !== viewType) {
28
+ const buttonId = buttonLabel.toLowerCase().replace(/\s+/g, "-");
29
+ const t2 = viewType === "list" && `${baseClass}__button--active`;
30
+ let t3;
31
+ if ($[9] !== t2) {
32
+ t3 = [`${baseClass}__button`, t2].filter(Boolean);
33
+ $[9] = t2;
34
+ $[10] = t3;
35
+ } else {
36
+ t3 = $[10];
37
+ }
38
+ t1 = _jsx("div", {
39
+ className: baseClass,
40
+ children: _jsxs(Button, {
41
+ buttonStyle: "tab",
42
+ className: t3.join(" "),
43
+ disabled: viewType === "list",
44
+ el: viewType === "folders" || viewType === "trash" ? "link" : "div",
45
+ id: buttonId,
46
+ to: formatAdminURL({
47
+ adminRoute: config.routes.admin,
48
+ path: `/collections/${collectionConfig.slug}`,
49
+ serverURL: config.serverURL
50
+ }),
51
+ children: [t("general:all"), " ", getTranslation(collectionConfig?.labels?.plural, i18n)]
52
+ })
53
+ });
54
+ $[0] = buttonLabel;
55
+ $[1] = collectionConfig.labels?.plural;
56
+ $[2] = collectionConfig.slug;
57
+ $[3] = config.routes.admin;
58
+ $[4] = config.serverURL;
59
+ $[5] = i18n;
60
+ $[6] = t;
61
+ $[7] = viewType;
62
+ $[8] = t1;
63
+ } else {
64
+ t1 = $[8];
65
+ }
66
+ return t1;
67
+ }
68
+ //# sourceMappingURL=DefaultListPill.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DefaultListPill.js","names":["c","_c","getTranslation","formatAdminURL","useConfig","useTranslation","Button","baseClass","DefaultListPill","t0","$","collectionConfig","viewType","i18n","t","config","buttonLabel","labels","plural","t1","slug","routes","admin","serverURL","buttonId","toLowerCase","replace","t2","t3","filter","Boolean","_jsx","className","children","_jsxs","buttonStyle","join","disabled","el","id","to","adminRoute","path"],"sources":["../../../src/elements/ListHeaderTabs/DefaultListPill.tsx"],"sourcesContent":["'use client'\n\nimport type { ClientCollectionConfig, ViewTypes } from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport { formatAdminURL } from 'payload/shared'\n\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { Button } from '../Button/index.js'\nimport './index.scss'\n\nconst baseClass = 'list-pills'\n\ntype DefaultListPillProps = {\n readonly collectionConfig: ClientCollectionConfig\n readonly viewType: ViewTypes\n}\n\nexport function DefaultListPill({ collectionConfig, viewType }: DefaultListPillProps) {\n const { i18n, t } = useTranslation()\n const { config } = useConfig()\n\n const buttonLabel = `${t('general:all')} ${getTranslation(collectionConfig?.labels?.plural, i18n)}`\n const buttonId = buttonLabel.toLowerCase().replace(/\\s+/g, '-')\n\n return (\n <div className={baseClass}>\n <Button\n buttonStyle=\"tab\"\n className={[`${baseClass}__button`, viewType === 'list' && `${baseClass}__button--active`]\n .filter(Boolean)\n .join(' ')}\n disabled={viewType === 'list'}\n el={viewType === 'folders' || viewType === 'trash' ? 'link' : 'div'}\n id={buttonId}\n to={formatAdminURL({\n adminRoute: config.routes.admin,\n path: `/collections/${collectionConfig.slug}`,\n serverURL: config.serverURL,\n })}\n >\n {t('general:all')} {getTranslation(collectionConfig?.labels?.plural, i18n)}\n </Button>\n </div>\n )\n}\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AAIA,SAASC,cAAc,QAAQ;AAC/B,SAASC,cAAc,QAAQ;AAE/B,SAASC,SAAS,QAAQ;AAC1B,SAASC,cAAc,QAAQ;AAC/B,SAASC,MAAM,QAAQ;AACvB,OAAO;AAEP,MAAMC,SAAA,GAAY;AAOlB,OAAO,SAAAC,gBAAAC,EAAA;EAAA,MAAAC,CAAA,GAAAT,EAAA;EAAyB;IAAAU,gBAAA;IAAAC;EAAA,IAAAH,EAAoD;EAClF;IAAAI,IAAA;IAAAC;EAAA,IAAoBT,cAAA;EACpB;IAAAU;EAAA,IAAmBX,SAAA;EAEnB,MAAAY,WAAA,GAAoB,GAAGF,CAAA,CAAE,kBAAkBZ,cAAA,CAAeS,gBAAA,EAAAM,MAAA,EAAAC,MAAA,EAAkCL,IAAA,GAAO;EAAA,IAAAM,EAAA;EAAA,IAAAT,CAAA,QAAAM,WAAA,IAAAN,CAAA,QAAAC,gBAAA,CAAAM,MAAA,EAAAC,MAAA,IAAAR,CAAA,QAAAC,gBAAA,CAAAS,IAAA,IAAAV,CAAA,QAAAK,MAAA,CAAAM,MAAA,CAAAC,KAAA,IAAAZ,CAAA,QAAAK,MAAA,CAAAQ,SAAA,IAAAb,CAAA,QAAAG,IAAA,IAAAH,CAAA,QAAAI,CAAA,IAAAJ,CAAA,QAAAE,QAAA;IACnG,MAAAY,QAAA,GAAiBR,WAAA,CAAAS,WAAA,CAAuB,EAAAC,OAAA,SAAmB;IAMjB,MAAAC,EAAA,GAAAf,QAAA,KAAa,UAAU,GAAAL,SAAA,kBAA8B;IAAA,IAAAqB,EAAA;IAAA,IAAAlB,CAAA,QAAAiB,EAAA;MAA9EC,EAAA,IAAC,GAAArB,SAAA,UAAsB,EAAEoB,EAAqD,EAAAE,MAAA,CAAAC,OAC/E;MAAApB,CAAA,MAAAiB,EAAA;MAAAjB,CAAA,OAAAkB,EAAA;IAAA;MAAAA,EAAA,GAAAlB,CAAA;IAAA;IAJdS,EAAA,GAAAY,IAAA,CAAC;MAAAC,SAAA,EAAAzB,SAAA;MAAA0B,QAAA,EACCC,KAAA,CAAA5B,MAAA;QAAA6B,WAAA,EACc;QAAAH,SAAA,EACDJ,EACD,CAAAQ,IAAA,CACF;QAAAC,QAAA,EACEzB,QAAA,KAAa;QAAA0B,EAAA,EACnB1B,QAAA,KAAa,aAAaA,QAAA,KAAa,UAAU,SAAS;QAAA2B,EAAA,EAC1Df,QAAA;QAAAgB,EAAA,EACArC,cAAA;UAAAsC,UAAA,EACU1B,MAAA,CAAAM,MAAA,CAAAC,KAAA;UAAAoB,IAAA,EACN,gBAAgB/B,gBAAA,CAAAS,IAAA,EAAuB;UAAAG,SAAA,EAClCR,MAAA,CAAAQ;QAAA,CACb;QAAAU,QAAA,GAECnB,CAAA,CAAE,gBAAe,KAAEZ,cAAA,CAAeS,gBAAA,EAAAM,MAAA,EAAAC,MAAA,EAAkCL,IAAA;MAAA,C;;;;;;;;;;;;;;SAfzEM,E","ignoreList":[]}
@@ -0,0 +1,6 @@
1
+ import type { ClientCollectionConfig, ViewTypes } from 'payload';
2
+ export declare function TrashPill({ collectionConfig, viewType, }: {
3
+ collectionConfig: ClientCollectionConfig;
4
+ readonly viewType: ViewTypes;
5
+ }): import("react").JSX.Element;
6
+ //# sourceMappingURL=TrashPill.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TrashPill.d.ts","sourceRoot":"","sources":["../../../src/elements/ListHeaderTabs/TrashPill.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,sBAAsB,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AAQhE,wBAAgB,SAAS,CAAC,EACxB,gBAAgB,EAChB,QAAQ,GACT,EAAE;IACD,gBAAgB,EAAE,sBAAsB,CAAA;IACxC,QAAQ,CAAC,QAAQ,EAAE,SAAS,CAAA;CAC7B,+BAwBA"}
@@ -0,0 +1,53 @@
1
+ 'use client';
2
+
3
+ import { c as _c } from "react/compiler-runtime";
4
+ import { jsx as _jsx } from "react/jsx-runtime";
5
+ import { formatAdminURL } from 'payload/shared';
6
+ import { useConfig } from '../../providers/Config/index.js';
7
+ import { useTranslation } from '../../providers/Translation/index.js';
8
+ import { Button } from '../Button/index.js';
9
+ export function TrashPill(t0) {
10
+ const $ = _c(7);
11
+ const {
12
+ collectionConfig,
13
+ viewType
14
+ } = t0;
15
+ const {
16
+ t
17
+ } = useTranslation();
18
+ const {
19
+ config
20
+ } = useConfig();
21
+ if (!collectionConfig.trash) {
22
+ return null;
23
+ }
24
+ const t1 = viewType === "trash";
25
+ const t2 = viewType === "list" || viewType === "folders" ? "link" : "div";
26
+ const t3 = `/collections/${collectionConfig.slug}/trash`;
27
+ let t4;
28
+ if ($[0] !== config.routes.admin || $[1] !== config.serverURL || $[2] !== t || $[3] !== t1 || $[4] !== t2 || $[5] !== t3) {
29
+ t4 = _jsx(Button, {
30
+ buttonStyle: "tab",
31
+ disabled: t1,
32
+ el: t2,
33
+ id: "trash-view-pill",
34
+ to: formatAdminURL({
35
+ adminRoute: config.routes.admin,
36
+ path: t3,
37
+ serverURL: config.serverURL
38
+ }),
39
+ children: t("general:trash")
40
+ }, "trash-view-pill");
41
+ $[0] = config.routes.admin;
42
+ $[1] = config.serverURL;
43
+ $[2] = t;
44
+ $[3] = t1;
45
+ $[4] = t2;
46
+ $[5] = t3;
47
+ $[6] = t4;
48
+ } else {
49
+ t4 = $[6];
50
+ }
51
+ return t4;
52
+ }
53
+ //# sourceMappingURL=TrashPill.js.map