@payloadcms/ui 3.55.0-internal.ce8fe55 → 3.55.0-internal.df60e35

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 (169) hide show
  1. package/dist/elements/Autosave/index.js +2 -2
  2. package/dist/elements/Autosave/index.js.map +1 -1
  3. package/dist/elements/BulkUpload/EditForm/index.js +4 -18
  4. package/dist/elements/BulkUpload/EditForm/index.js.map +1 -1
  5. package/dist/elements/ClipboardAction/index.js +173 -74
  6. package/dist/elements/ClipboardAction/index.js.map +1 -1
  7. package/dist/elements/CodeEditor/CodeEditor.js +155 -67
  8. package/dist/elements/CodeEditor/CodeEditor.js.map +1 -1
  9. package/dist/elements/Collapsible/index.js +15 -7
  10. package/dist/elements/Collapsible/index.js.map +1 -1
  11. package/dist/elements/ConfirmationModal/index.js +44 -8
  12. package/dist/elements/ConfirmationModal/index.js.map +1 -1
  13. package/dist/elements/CopyLocaleData/index.js +97 -89
  14. package/dist/elements/CopyLocaleData/index.js.map +1 -1
  15. package/dist/elements/CopyToClipboard/index.js +22 -2
  16. package/dist/elements/CopyToClipboard/index.js.map +1 -1
  17. package/dist/elements/DeleteMany/index.js +83 -47
  18. package/dist/elements/DeleteMany/index.js.map +1 -1
  19. package/dist/elements/DocumentControls/index.js +55 -27
  20. package/dist/elements/DocumentControls/index.js.map +1 -1
  21. package/dist/elements/DocumentDrawer/DrawerHeader/index.js +10 -2
  22. package/dist/elements/DocumentDrawer/DrawerHeader/index.js.map +1 -1
  23. package/dist/elements/DocumentDrawer/index.js +99 -47
  24. package/dist/elements/DocumentDrawer/index.js.map +1 -1
  25. package/dist/elements/Drawer/index.js +57 -23
  26. package/dist/elements/Drawer/index.js.map +1 -1
  27. package/dist/elements/DrawerActionHeader/index.js +21 -3
  28. package/dist/elements/DrawerActionHeader/index.js.map +1 -1
  29. package/dist/elements/FolderView/Drawers/MoveToFolder/index.js +225 -149
  30. package/dist/elements/FolderView/Drawers/MoveToFolder/index.js.map +1 -1
  31. package/dist/elements/FolderView/FolderFileCard/index.js +27 -19
  32. package/dist/elements/FolderView/FolderFileCard/index.js.map +1 -1
  33. package/dist/elements/FolderView/MoveDocToFolder/index.js +23 -12
  34. package/dist/elements/FolderView/MoveDocToFolder/index.js.map +1 -1
  35. package/dist/elements/FullscreenModal/index.js +20 -10
  36. package/dist/elements/FullscreenModal/index.js.map +1 -1
  37. package/dist/elements/ListDrawer/index.js +24 -18
  38. package/dist/elements/ListDrawer/index.js.map +1 -1
  39. package/dist/elements/ListHeader/TitleActions/ListCreateNewDocInFolderButton.js +32 -19
  40. package/dist/elements/ListHeader/TitleActions/ListCreateNewDocInFolderButton.js.map +1 -1
  41. package/dist/elements/ListHeaderTabs/DefaultListPill.js +8 -15
  42. package/dist/elements/ListHeaderTabs/DefaultListPill.js.map +1 -1
  43. package/dist/elements/ListSelection/index.js +27 -11
  44. package/dist/elements/ListSelection/index.js.map +1 -1
  45. package/dist/elements/LivePreview/Window/index.d.ts.map +1 -1
  46. package/dist/elements/LivePreview/Window/index.js +152 -71
  47. package/dist/elements/LivePreview/Window/index.js.map +1 -1
  48. package/dist/elements/Loading/index.js +11 -2
  49. package/dist/elements/Loading/index.js.map +1 -1
  50. package/dist/elements/LoadingOverlay/index.js +102 -46
  51. package/dist/elements/LoadingOverlay/index.js.map +1 -1
  52. package/dist/elements/Localizer/LocalizerLabel/index.js +36 -23
  53. package/dist/elements/Localizer/LocalizerLabel/index.js.map +1 -1
  54. package/dist/elements/QueryPresets/QueryPresetToggler/index.js +139 -41
  55. package/dist/elements/QueryPresets/QueryPresetToggler/index.js.map +1 -1
  56. package/dist/elements/RenderIfInViewport/index.d.ts +2 -2
  57. package/dist/elements/RenderIfInViewport/index.d.ts.map +1 -1
  58. package/dist/elements/RenderIfInViewport/index.js.map +1 -1
  59. package/dist/elements/SelectRow/index.js +40 -39
  60. package/dist/elements/SelectRow/index.js.map +1 -1
  61. package/dist/elements/ShimmerEffect/index.js +12 -20
  62. package/dist/elements/ShimmerEffect/index.js.map +1 -1
  63. package/dist/elements/SortColumn/index.js +30 -21
  64. package/dist/elements/SortColumn/index.js.map +1 -1
  65. package/dist/elements/Status/index.d.ts.map +1 -1
  66. package/dist/elements/Status/index.js +19 -9
  67. package/dist/elements/Status/index.js.map +1 -1
  68. package/dist/elements/Table/DefaultCell/fields/Date/index.js +37 -9
  69. package/dist/elements/Table/DefaultCell/fields/Date/index.js.map +1 -1
  70. package/dist/elements/Table/DefaultCell/fields/Relationship/index.js +37 -35
  71. package/dist/elements/Table/DefaultCell/fields/Relationship/index.js.map +1 -1
  72. package/dist/elements/Table/DefaultCell/fields/Select/index.js +27 -12
  73. package/dist/elements/Table/DefaultCell/fields/Select/index.js.map +1 -1
  74. package/dist/elements/Thumbnail/index.js +75 -35
  75. package/dist/elements/Thumbnail/index.js.map +1 -1
  76. package/dist/elements/ThumbnailCard/index.js +26 -17
  77. package/dist/elements/ThumbnailCard/index.js.map +1 -1
  78. package/dist/elements/Tooltip/index.js +127 -51
  79. package/dist/elements/Tooltip/index.js.map +1 -1
  80. package/dist/elements/Upload/index.js +10 -2
  81. package/dist/elements/Upload/index.js.map +1 -1
  82. package/dist/elements/WhereBuilder/Condition/Select/index.js +44 -31
  83. package/dist/elements/WhereBuilder/Condition/Select/index.js.map +1 -1
  84. package/dist/exports/client/{CodeEditor-O6BWJHD2.js → CodeEditor-MIIBUJZ4.js} +2 -2
  85. package/dist/exports/client/{DatePicker-F432AIH3.js → DatePicker-NMDEHPWL.js} +2 -2
  86. package/dist/exports/client/{chunk-AZDI6MW4.js → chunk-7RGKTZG2.js} +1 -1
  87. package/dist/exports/client/{chunk-AZDI6MW4.js.map → chunk-7RGKTZG2.js.map} +1 -1
  88. package/dist/exports/client/{chunk-FXAFULZQ.js → chunk-Z6O2JA43.js} +6 -6
  89. package/dist/exports/client/{chunk-FXAFULZQ.js.map → chunk-Z6O2JA43.js.map} +3 -3
  90. package/dist/exports/client/index.d.ts +2 -4
  91. package/dist/exports/client/index.d.ts.map +1 -1
  92. package/dist/exports/client/index.js +24 -24
  93. package/dist/exports/client/index.js.map +4 -4
  94. package/dist/exports/rsc/index.d.ts +0 -1
  95. package/dist/exports/rsc/index.d.ts.map +1 -1
  96. package/dist/exports/rsc/index.js +0 -1
  97. package/dist/exports/rsc/index.js.map +1 -1
  98. package/dist/fields/Array/ArrayRow.d.ts +3 -2
  99. package/dist/fields/Array/ArrayRow.d.ts.map +1 -1
  100. package/dist/fields/Array/ArrayRow.js +23 -13
  101. package/dist/fields/Array/ArrayRow.js.map +1 -1
  102. package/dist/fields/Array/index.js +477 -273
  103. package/dist/fields/Array/index.js.map +1 -1
  104. package/dist/fields/Checkbox/Input.js +19 -2
  105. package/dist/fields/Checkbox/Input.js.map +1 -1
  106. package/dist/fields/FieldError/index.js +29 -30
  107. package/dist/fields/FieldError/index.js.map +1 -1
  108. package/dist/fields/FieldLabel/index.js +64 -12
  109. package/dist/fields/FieldLabel/index.js.map +1 -1
  110. package/dist/fields/Relationship/select-components/MultiValueLabel/index.js +103 -45
  111. package/dist/fields/Relationship/select-components/MultiValueLabel/index.js.map +1 -1
  112. package/dist/fields/Relationship/select-components/SingleValue/index.js +44 -29
  113. package/dist/fields/Relationship/select-components/SingleValue/index.js.map +1 -1
  114. package/dist/fields/Row/index.d.ts +3 -1
  115. package/dist/fields/Row/index.d.ts.map +1 -1
  116. package/dist/fields/Select/Input.js +31 -18
  117. package/dist/fields/Select/Input.js.map +1 -1
  118. package/dist/fields/Tabs/Tab/index.js +11 -2
  119. package/dist/fields/Tabs/Tab/index.js.map +1 -1
  120. package/dist/fields/Tabs/index.d.ts +1 -2
  121. package/dist/fields/Tabs/index.d.ts.map +1 -1
  122. package/dist/fields/Tabs/index.js +225 -185
  123. package/dist/fields/Tabs/index.js.map +1 -1
  124. package/dist/fields/Upload/RelationshipContent/index.js +127 -79
  125. package/dist/fields/Upload/RelationshipContent/index.js.map +1 -1
  126. package/dist/forms/Form/fieldReducer.d.ts.map +1 -1
  127. package/dist/forms/Form/fieldReducer.js +15 -13
  128. package/dist/forms/Form/fieldReducer.js.map +1 -1
  129. package/dist/forms/RenderFields/RenderField.js +237 -245
  130. package/dist/forms/RenderFields/RenderField.js.map +1 -1
  131. package/dist/forms/RenderFields/types.d.ts +10 -2
  132. package/dist/forms/RenderFields/types.d.ts.map +1 -1
  133. package/dist/forms/RenderFields/types.js.map +1 -1
  134. package/dist/forms/useField/index.d.ts +0 -5
  135. package/dist/forms/useField/index.d.ts.map +1 -1
  136. package/dist/forms/useField/index.js +45 -74
  137. package/dist/forms/useField/index.js.map +1 -1
  138. package/dist/hooks/useIntersect.js +53 -35
  139. package/dist/hooks/useIntersect.js.map +1 -1
  140. package/dist/hooks/usePayloadAPI.js +44 -36
  141. package/dist/hooks/usePayloadAPI.js.map +1 -1
  142. package/dist/providers/LivePreview/context.d.ts +0 -2
  143. package/dist/providers/LivePreview/context.d.ts.map +1 -1
  144. package/dist/providers/LivePreview/context.js +0 -1
  145. package/dist/providers/LivePreview/context.js.map +1 -1
  146. package/dist/providers/LivePreview/index.d.ts.map +1 -1
  147. package/dist/providers/LivePreview/index.js +0 -12
  148. package/dist/providers/LivePreview/index.js.map +1 -1
  149. package/dist/providers/ServerFunctions/index.d.ts +1 -4
  150. package/dist/providers/ServerFunctions/index.d.ts.map +1 -1
  151. package/dist/providers/ServerFunctions/index.js +0 -13
  152. package/dist/providers/ServerFunctions/index.js.map +1 -1
  153. package/dist/styles.css +1 -1
  154. package/dist/utilities/reduceFieldsToOptions.d.ts.map +1 -1
  155. package/dist/utilities/reduceFieldsToOptions.js +16 -1
  156. package/dist/utilities/reduceFieldsToOptions.js.map +1 -1
  157. package/dist/views/BrowseByFolder/index.js +55 -37
  158. package/dist/views/BrowseByFolder/index.js.map +1 -1
  159. package/dist/views/CollectionFolder/index.js +40 -13
  160. package/dist/views/CollectionFolder/index.js.map +1 -1
  161. package/dist/views/Edit/Auth/index.js +105 -93
  162. package/dist/views/Edit/Auth/index.js.map +1 -1
  163. package/package.json +8 -8
  164. package/dist/forms/fieldSchemasToFormState/serverFunctions/renderFieldServerFn.d.ts +0 -30
  165. package/dist/forms/fieldSchemasToFormState/serverFunctions/renderFieldServerFn.d.ts.map +0 -1
  166. package/dist/forms/fieldSchemasToFormState/serverFunctions/renderFieldServerFn.js +0 -82
  167. package/dist/forms/fieldSchemasToFormState/serverFunctions/renderFieldServerFn.js.map +0 -1
  168. /package/dist/exports/client/{CodeEditor-O6BWJHD2.js.map → CodeEditor-MIIBUJZ4.js.map} +0 -0
  169. /package/dist/exports/client/{DatePicker-F432AIH3.js.map → DatePicker-NMDEHPWL.js.map} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"reduceFieldsToOptions.d.ts","sourceRoot":"","sources":["../../src/utilities/reduceFieldsToOptions.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAyB,UAAU,EAAE,MAAM,0BAA0B,CAAA;AACjF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AAK1C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAA;AAMrE,KAAK,sBAAsB,GAAG;IAC5B,MAAM,EAAE,WAAW,EAAE,CAAA;IACrB,IAAI,EAAE,UAAU,CAAA;IAChB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,qBAAqB,+CAK/B,sBAAsB,KAAG,YAAY,EAuLvC,CAAA"}
1
+ {"version":3,"file":"reduceFieldsToOptions.d.ts","sourceRoot":"","sources":["../../src/utilities/reduceFieldsToOptions.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAyB,UAAU,EAAE,MAAM,0BAA0B,CAAA;AACjF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AAK1C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAA;AAMrE,KAAK,sBAAsB,GAAG;IAC5B,MAAM,EAAE,WAAW,EAAE,CAAA;IACrB,IAAI,EAAE,UAAU,CAAA;IAChB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,qBAAqB,+CAK/B,sBAAsB,KAAG,YAAY,EA2MvC,CAAA"}
@@ -17,7 +17,22 @@ export const reduceFieldsToOptions = ({
17
17
  }) => {
18
18
  return fields.reduce((reduced, field) => {
19
19
  // Do not filter out `field.admin.disableListFilter` fields here, as these should still render as disabled if they appear in the URL query
20
- if (fieldIsHiddenOrDisabled(field) && !fieldIsID(field)) {
20
+ // Filter out `virtual: true` fields since they are regular virtuals and not backed by a DB field
21
+ if (fieldIsHiddenOrDisabled(field) && !fieldIsID(field) || 'virtual' in field && field.virtual === true) {
22
+ return reduced;
23
+ }
24
+ // Handle virtual:string fields (virtual relationships, e.g. "post.title")
25
+ if ('virtual' in field && typeof field.virtual === 'string') {
26
+ const baseLabel = 'label' in field && field.label || 'name' in field && field.name || '';
27
+ const localizedLabel = getTranslation(baseLabel, i18n);
28
+ reduced.push({
29
+ label: localizedLabel,
30
+ plainTextLabel: localizedLabel,
31
+ value: field.virtual,
32
+ ...fieldTypes[field.type],
33
+ field,
34
+ operators: fieldTypes[field.type].operators
35
+ });
21
36
  return reduced;
22
37
  }
23
38
  if (field.type === 'tabs' && 'tabs' in field) {
@@ -1 +1 @@
1
- {"version":3,"file":"reduceFieldsToOptions.js","names":["getTranslation","fieldAffectsData","fieldIsHiddenOrDisabled","fieldIsID","tabHasName","fieldTypes","arrayOperators","createNestedClientFieldPath","combineFieldLabel","reduceFieldsToOptions","fields","i18n","labelPrefix","pathPrefix","reduce","reduced","field","type","tabs","forEach","tab","label","localizedTabLabel","labelWithPrefix","tabPathPrefix","name","push","translatedLabel","pathWithPrefix","operatorKeys","Set","fieldOperators","hasMany","operators","acc","operator","has","value","add","operatorKey","t","localizedLabel","formattedLabel","prefix","fieldPath","formattedField","plainTextLabel"],"sources":["../../src/utilities/reduceFieldsToOptions.tsx"],"sourcesContent":["'use client'\nimport type { ClientTranslationKeys, I18nClient } from '@payloadcms/translations'\nimport type { ClientField } from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport { fieldAffectsData, fieldIsHiddenOrDisabled, fieldIsID, tabHasName } from 'payload/shared'\n\nimport type { ReducedField } from '../elements/WhereBuilder/types.js'\n\nimport fieldTypes, { arrayOperators } from '../elements/WhereBuilder/field-types.js'\nimport { createNestedClientFieldPath } from '../forms/Form/createNestedClientFieldPath.js'\nimport { combineFieldLabel } from './combineFieldLabel.js'\n\ntype ReduceFieldOptionsArgs = {\n fields: ClientField[]\n i18n: I18nClient\n labelPrefix?: string\n pathPrefix?: string\n}\n\n/**\n * Reduces a field map to a flat array of fields with labels and values.\n * Used in the WhereBuilder component to render the fields in the dropdown.\n */\nexport const reduceFieldsToOptions = ({\n fields,\n i18n,\n labelPrefix,\n pathPrefix,\n}: ReduceFieldOptionsArgs): ReducedField[] => {\n return fields.reduce((reduced, field) => {\n // Do not filter out `field.admin.disableListFilter` fields here, as these should still render as disabled if they appear in the URL query\n if (fieldIsHiddenOrDisabled(field) && !fieldIsID(field)) {\n return reduced\n }\n\n if (field.type === 'tabs' && 'tabs' in field) {\n const tabs = field.tabs\n\n tabs.forEach((tab) => {\n if (typeof tab.label !== 'boolean') {\n const localizedTabLabel = getTranslation(tab.label, i18n)\n\n const labelWithPrefix = labelPrefix\n ? labelPrefix + ' > ' + localizedTabLabel\n : localizedTabLabel\n\n // Make sure we handle nested tabs\n const tabPathPrefix =\n tabHasName(tab) && tab.name\n ? pathPrefix\n ? pathPrefix + '.' + tab.name\n : tab.name\n : pathPrefix\n\n if (typeof localizedTabLabel === 'string') {\n reduced.push(\n ...reduceFieldsToOptions({\n fields: tab.fields,\n i18n,\n labelPrefix: labelWithPrefix,\n pathPrefix: tabPathPrefix,\n }),\n )\n }\n }\n })\n return reduced\n }\n\n // Rows cant have labels, so we need to handle them differently\n if (field.type === 'row' && 'fields' in field) {\n reduced.push(\n ...reduceFieldsToOptions({\n fields: field.fields,\n i18n,\n labelPrefix,\n pathPrefix,\n }),\n )\n return reduced\n }\n\n if (field.type === 'collapsible' && 'fields' in field) {\n const localizedTabLabel = getTranslation(field.label || '', i18n)\n\n const labelWithPrefix = labelPrefix\n ? labelPrefix + ' > ' + localizedTabLabel\n : localizedTabLabel\n\n reduced.push(\n ...reduceFieldsToOptions({\n fields: field.fields,\n i18n,\n labelPrefix: labelWithPrefix,\n pathPrefix,\n }),\n )\n return reduced\n }\n\n if (field.type === 'group' && 'fields' in field) {\n const translatedLabel = getTranslation(field.label || '', i18n)\n\n const labelWithPrefix = labelPrefix\n ? translatedLabel\n ? labelPrefix + ' > ' + translatedLabel\n : labelPrefix\n : translatedLabel\n\n if (fieldAffectsData(field)) {\n // Make sure we handle deeply nested groups\n const pathWithPrefix = field.name\n ? pathPrefix\n ? pathPrefix + '.' + field.name\n : field.name\n : pathPrefix\n\n reduced.push(\n ...reduceFieldsToOptions({\n fields: field.fields,\n i18n,\n labelPrefix: labelWithPrefix,\n pathPrefix: pathWithPrefix,\n }),\n )\n } else {\n reduced.push(\n ...reduceFieldsToOptions({\n fields: field.fields,\n i18n,\n labelPrefix: labelWithPrefix,\n pathPrefix,\n }),\n )\n }\n\n return reduced\n }\n\n if (field.type === 'array' && 'fields' in field) {\n const translatedLabel = getTranslation(field.label || '', i18n)\n\n const labelWithPrefix = labelPrefix\n ? translatedLabel\n ? labelPrefix + ' > ' + translatedLabel\n : labelPrefix\n : translatedLabel\n\n // Make sure we handle deeply nested groups\n const pathWithPrefix = field.name\n ? pathPrefix\n ? pathPrefix + '.' + field.name\n : field.name\n : pathPrefix\n\n reduced.push(\n ...reduceFieldsToOptions({\n fields: field.fields,\n i18n,\n labelPrefix: labelWithPrefix,\n pathPrefix: pathWithPrefix,\n }),\n )\n\n return reduced\n }\n\n if (typeof fieldTypes[field.type] === 'object') {\n const operatorKeys = new Set()\n\n const fieldOperators =\n 'hasMany' in field && field.hasMany ? arrayOperators : fieldTypes[field.type].operators\n\n const operators = fieldOperators.reduce((acc, operator) => {\n if (!operatorKeys.has(operator.value)) {\n operatorKeys.add(operator.value)\n const operatorKey = `operators:${operator.label}` as ClientTranslationKeys\n acc.push({\n ...operator,\n label: i18n.t(operatorKey),\n })\n }\n\n return acc\n }, [])\n\n const localizedLabel = getTranslation(field.label || '', i18n)\n\n const formattedLabel = labelPrefix\n ? combineFieldLabel({\n field,\n prefix: labelPrefix,\n })\n : localizedLabel\n\n const fieldPath = pathPrefix ? createNestedClientFieldPath(pathPrefix, field) : field.name\n\n const formattedField: ReducedField = {\n label: formattedLabel,\n plainTextLabel: `${labelPrefix ? labelPrefix + ' > ' : ''}${localizedLabel}`,\n value: fieldPath,\n ...fieldTypes[field.type],\n field,\n operators,\n }\n\n reduced.push(formattedField)\n return reduced\n }\n return reduced\n }, [])\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"reduceFieldsToOptions.js","names":["getTranslation","fieldAffectsData","fieldIsHiddenOrDisabled","fieldIsID","tabHasName","fieldTypes","arrayOperators","createNestedClientFieldPath","combineFieldLabel","reduceFieldsToOptions","fields","i18n","labelPrefix","pathPrefix","reduce","reduced","field","virtual","baseLabel","label","name","localizedLabel","push","plainTextLabel","value","type","operators","tabs","forEach","tab","localizedTabLabel","labelWithPrefix","tabPathPrefix","translatedLabel","pathWithPrefix","operatorKeys","Set","fieldOperators","hasMany","acc","operator","has","add","operatorKey","t","formattedLabel","prefix","fieldPath","formattedField"],"sources":["../../src/utilities/reduceFieldsToOptions.tsx"],"sourcesContent":["'use client'\nimport type { ClientTranslationKeys, I18nClient } from '@payloadcms/translations'\nimport type { ClientField } from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport { fieldAffectsData, fieldIsHiddenOrDisabled, fieldIsID, tabHasName } from 'payload/shared'\n\nimport type { ReducedField } from '../elements/WhereBuilder/types.js'\n\nimport fieldTypes, { arrayOperators } from '../elements/WhereBuilder/field-types.js'\nimport { createNestedClientFieldPath } from '../forms/Form/createNestedClientFieldPath.js'\nimport { combineFieldLabel } from './combineFieldLabel.js'\n\ntype ReduceFieldOptionsArgs = {\n fields: ClientField[]\n i18n: I18nClient\n labelPrefix?: string\n pathPrefix?: string\n}\n\n/**\n * Reduces a field map to a flat array of fields with labels and values.\n * Used in the WhereBuilder component to render the fields in the dropdown.\n */\nexport const reduceFieldsToOptions = ({\n fields,\n i18n,\n labelPrefix,\n pathPrefix,\n}: ReduceFieldOptionsArgs): ReducedField[] => {\n return fields.reduce((reduced, field) => {\n // Do not filter out `field.admin.disableListFilter` fields here, as these should still render as disabled if they appear in the URL query\n // Filter out `virtual: true` fields since they are regular virtuals and not backed by a DB field\n if (\n (fieldIsHiddenOrDisabled(field) && !fieldIsID(field)) ||\n ('virtual' in field && field.virtual === true)\n ) {\n return reduced\n }\n\n // Handle virtual:string fields (virtual relationships, e.g. \"post.title\")\n if ('virtual' in field && typeof field.virtual === 'string') {\n const baseLabel = ('label' in field && field.label) || ('name' in field && field.name) || ''\n const localizedLabel = getTranslation(baseLabel, i18n)\n\n reduced.push({\n label: localizedLabel,\n plainTextLabel: localizedLabel,\n value: field.virtual, // e.g. \"post.title\"\n ...fieldTypes[field.type],\n field,\n operators: fieldTypes[field.type].operators,\n })\n return reduced\n }\n\n if (field.type === 'tabs' && 'tabs' in field) {\n const tabs = field.tabs\n\n tabs.forEach((tab) => {\n if (typeof tab.label !== 'boolean') {\n const localizedTabLabel = getTranslation(tab.label, i18n)\n\n const labelWithPrefix = labelPrefix\n ? labelPrefix + ' > ' + localizedTabLabel\n : localizedTabLabel\n\n // Make sure we handle nested tabs\n const tabPathPrefix =\n tabHasName(tab) && tab.name\n ? pathPrefix\n ? pathPrefix + '.' + tab.name\n : tab.name\n : pathPrefix\n\n if (typeof localizedTabLabel === 'string') {\n reduced.push(\n ...reduceFieldsToOptions({\n fields: tab.fields,\n i18n,\n labelPrefix: labelWithPrefix,\n pathPrefix: tabPathPrefix,\n }),\n )\n }\n }\n })\n return reduced\n }\n\n // Rows cant have labels, so we need to handle them differently\n if (field.type === 'row' && 'fields' in field) {\n reduced.push(\n ...reduceFieldsToOptions({\n fields: field.fields,\n i18n,\n labelPrefix,\n pathPrefix,\n }),\n )\n return reduced\n }\n\n if (field.type === 'collapsible' && 'fields' in field) {\n const localizedTabLabel = getTranslation(field.label || '', i18n)\n\n const labelWithPrefix = labelPrefix\n ? labelPrefix + ' > ' + localizedTabLabel\n : localizedTabLabel\n\n reduced.push(\n ...reduceFieldsToOptions({\n fields: field.fields,\n i18n,\n labelPrefix: labelWithPrefix,\n pathPrefix,\n }),\n )\n return reduced\n }\n\n if (field.type === 'group' && 'fields' in field) {\n const translatedLabel = getTranslation(field.label || '', i18n)\n\n const labelWithPrefix = labelPrefix\n ? translatedLabel\n ? labelPrefix + ' > ' + translatedLabel\n : labelPrefix\n : translatedLabel\n\n if (fieldAffectsData(field)) {\n // Make sure we handle deeply nested groups\n const pathWithPrefix = field.name\n ? pathPrefix\n ? pathPrefix + '.' + field.name\n : field.name\n : pathPrefix\n\n reduced.push(\n ...reduceFieldsToOptions({\n fields: field.fields,\n i18n,\n labelPrefix: labelWithPrefix,\n pathPrefix: pathWithPrefix,\n }),\n )\n } else {\n reduced.push(\n ...reduceFieldsToOptions({\n fields: field.fields,\n i18n,\n labelPrefix: labelWithPrefix,\n pathPrefix,\n }),\n )\n }\n\n return reduced\n }\n\n if (field.type === 'array' && 'fields' in field) {\n const translatedLabel = getTranslation(field.label || '', i18n)\n\n const labelWithPrefix = labelPrefix\n ? translatedLabel\n ? labelPrefix + ' > ' + translatedLabel\n : labelPrefix\n : translatedLabel\n\n // Make sure we handle deeply nested groups\n const pathWithPrefix = field.name\n ? pathPrefix\n ? pathPrefix + '.' + field.name\n : field.name\n : pathPrefix\n\n reduced.push(\n ...reduceFieldsToOptions({\n fields: field.fields,\n i18n,\n labelPrefix: labelWithPrefix,\n pathPrefix: pathWithPrefix,\n }),\n )\n\n return reduced\n }\n\n if (typeof fieldTypes[field.type] === 'object') {\n const operatorKeys = new Set()\n\n const fieldOperators =\n 'hasMany' in field && field.hasMany ? arrayOperators : fieldTypes[field.type].operators\n\n const operators = fieldOperators.reduce((acc, operator) => {\n if (!operatorKeys.has(operator.value)) {\n operatorKeys.add(operator.value)\n const operatorKey = `operators:${operator.label}` as ClientTranslationKeys\n acc.push({\n ...operator,\n label: i18n.t(operatorKey),\n })\n }\n\n return acc\n }, [])\n\n const localizedLabel = getTranslation(field.label || '', i18n)\n\n const formattedLabel = labelPrefix\n ? combineFieldLabel({\n field,\n prefix: labelPrefix,\n })\n : localizedLabel\n\n const fieldPath = pathPrefix ? createNestedClientFieldPath(pathPrefix, field) : field.name\n\n const formattedField: ReducedField = {\n label: formattedLabel,\n plainTextLabel: `${labelPrefix ? labelPrefix + ' > ' : ''}${localizedLabel}`,\n value: fieldPath,\n ...fieldTypes[field.type],\n field,\n operators,\n }\n\n reduced.push(formattedField)\n return reduced\n }\n return reduced\n }, [])\n}\n"],"mappings":"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","ignoreList":[]}
@@ -64,7 +64,7 @@ export function DefaultBrowseByFolderView({
64
64
  });
65
65
  }
66
66
  function BrowseByFolderViewInContext(props) {
67
- const $ = _c(24);
67
+ const $ = _c(30);
68
68
  const {
69
69
  AfterFolderList,
70
70
  AfterFolderListTable,
@@ -162,10 +162,19 @@ function BrowseByFolderViewInContext(props) {
162
162
  }
163
163
  const onDragEnd = t2;
164
164
  const totalDocsAndSubfolders = documents.length + subfolders.length;
165
- const listHeaderTitle = !breadcrumbs.length ? t("folder:browseByFolder") : breadcrumbs[breadcrumbs.length - 1].name;
166
165
  let t3;
167
- if ($[9] !== getEntityConfig || $[10] !== i18n || $[11] !== t) {
168
- t3 = (acc, slug, index, array) => {
166
+ if ($[9] !== breadcrumbs || $[10] !== t) {
167
+ t3 = !breadcrumbs.length ? t("folder:browseByFolder") : breadcrumbs[breadcrumbs.length - 1].name;
168
+ $[9] = breadcrumbs;
169
+ $[10] = t;
170
+ $[11] = t3;
171
+ } else {
172
+ t3 = $[11];
173
+ }
174
+ const listHeaderTitle = t3;
175
+ let t4;
176
+ if ($[12] !== getEntityConfig || $[13] !== i18n || $[14] !== t) {
177
+ t4 = (acc, slug, index, array) => {
169
178
  const collectionConfig = getEntityConfig({
170
179
  collectionSlug: slug
171
180
  });
@@ -177,24 +186,24 @@ function BrowseByFolderViewInContext(props) {
177
186
  }
178
187
  return `${acc}, ${getTranslation(collectionConfig.labels?.plural, i18n)}`;
179
188
  };
180
- $[9] = getEntityConfig;
181
- $[10] = i18n;
182
- $[11] = t;
183
- $[12] = t3;
189
+ $[12] = getEntityConfig;
190
+ $[13] = i18n;
191
+ $[14] = t;
192
+ $[15] = t4;
184
193
  } else {
185
- t3 = $[12];
194
+ t4 = $[15];
186
195
  }
187
- const noResultsLabel = visibleCollectionSlugs.reduce(t3, "");
196
+ const noResultsLabel = visibleCollectionSlugs.reduce(t4, "");
188
197
  const handleSetViewType = view => {
189
198
  setPreference("browse-by-folder", {
190
199
  viewPreference: view
191
200
  });
192
201
  setActiveView(view);
193
202
  };
194
- let t4;
195
203
  let t5;
196
- if ($[13] !== breadcrumbs || $[14] !== drawerDepth || $[15] !== getFolderRoute || $[16] !== router || $[17] !== setStepNav || $[18] !== startRouteTransition || $[19] !== t) {
197
- t4 = () => {
204
+ let t6;
205
+ if ($[16] !== breadcrumbs || $[17] !== drawerDepth || $[18] !== getFolderRoute || $[19] !== router || $[20] !== setStepNav || $[21] !== startRouteTransition || $[22] !== t) {
206
+ t5 = () => {
198
207
  if (!drawerDepth) {
199
208
  setStepNav([!breadcrumbs.length ? {
200
209
  label: _jsxs("div", {
@@ -226,34 +235,46 @@ function BrowseByFolderViewInContext(props) {
226
235
  }))]);
227
236
  }
228
237
  };
229
- t5 = [breadcrumbs, drawerDepth, getFolderRoute, router, setStepNav, startRouteTransition, t];
230
- $[13] = breadcrumbs;
231
- $[14] = drawerDepth;
232
- $[15] = getFolderRoute;
233
- $[16] = router;
234
- $[17] = setStepNav;
235
- $[18] = startRouteTransition;
236
- $[19] = t;
237
- $[20] = t4;
238
- $[21] = t5;
238
+ t6 = [breadcrumbs, drawerDepth, getFolderRoute, router, setStepNav, startRouteTransition, t];
239
+ $[16] = breadcrumbs;
240
+ $[17] = drawerDepth;
241
+ $[18] = getFolderRoute;
242
+ $[19] = router;
243
+ $[20] = setStepNav;
244
+ $[21] = startRouteTransition;
245
+ $[22] = t;
246
+ $[23] = t5;
247
+ $[24] = t6;
239
248
  } else {
240
- t4 = $[20];
241
- t5 = $[21];
249
+ t5 = $[23];
250
+ t6 = $[24];
242
251
  }
243
- React.useEffect(t4, t5);
252
+ React.useEffect(t5, t6);
244
253
  const nonFolderCollectionSlugs = allowCreateCollectionSlugs.filter(slug_0 => slug_0 !== folderCollectionConfig.slug);
245
- let t6;
246
- if ($[22] !== refineFolderData) {
247
- t6 = search_0 => refineFolderData({
254
+ let t7;
255
+ if ($[25] !== refineFolderData) {
256
+ t7 = search_0 => refineFolderData({
248
257
  query: {
249
258
  search: search_0
250
259
  },
251
260
  updateURL: true
252
261
  });
253
- $[22] = refineFolderData;
254
- $[23] = t6;
262
+ $[25] = refineFolderData;
263
+ $[26] = t7;
255
264
  } else {
256
- t6 = $[23];
265
+ t7 = $[26];
266
+ }
267
+ let t8;
268
+ if ($[27] !== dragOverlayItem || $[28] !== selectedItemKeys.size) {
269
+ t8 = selectedItemKeys.size > 0 && dragOverlayItem && _jsx(DragOverlaySelection, {
270
+ item: dragOverlayItem,
271
+ selectedCount: selectedItemKeys.size
272
+ });
273
+ $[27] = dragOverlayItem;
274
+ $[28] = selectedItemKeys.size;
275
+ $[29] = t8;
276
+ } else {
277
+ t8 = $[29];
257
278
  }
258
279
  return _jsxs(Fragment, {
259
280
  children: [_jsx(DndEventListener, {
@@ -284,7 +305,7 @@ function BrowseByFolderViewInContext(props) {
284
305
  setActiveView: handleSetViewType
285
306
  }, "toggle-view-buttons"), _jsx(CurrentFolderActions, {}, "current-folder-actions")].filter(Boolean),
286
307
  label: searchPlaceholder,
287
- onSearchChange: t6,
308
+ onSearchChange: t7,
288
309
  searchQueryParam: search
289
310
  }), BeforeFolderListTable, totalDocsAndSubfolders > 0 && _jsx(_Fragment, {
290
311
  children: activeView === "grid" ? _jsxs("div", {
@@ -324,10 +345,7 @@ function BrowseByFolderViewInContext(props) {
324
345
  })
325
346
  }), AfterFolderListTable]
326
347
  }), AfterFolderList]
327
- }), selectedItemKeys.size > 0 && dragOverlayItem && _jsx(DragOverlaySelection, {
328
- item: dragOverlayItem,
329
- selectedCount: selectedItemKeys.size
330
- })]
348
+ }), t8]
331
349
  });
332
350
  }
333
351
  function DndEventListener(t0) {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["c","_c","useDndMonitor","getTranslation","useRouter","React","Fragment","DroppableBreadcrumb","ColoredFolderIcon","CurrentFolderActions","DragOverlaySelection","FilterFolderTypePill","FolderFileTable","ItemCardGrid","SortByPill","ToggleViewButtons","Gutter","ListHeader","ListCreateNewDocInFolderButton","NoListResults","SearchBar","useStepNav","useConfig","useEditDepth","FolderProvider","useFolder","usePreferences","useRouteCache","useRouteTransition","useTranslation","useWindowInfo","ListSelection","baseClass","DefaultBrowseByFolderView","activeCollectionFolderSlugs","allCollectionFolderSlugs","allowCreateCollectionSlugs","baseFolderPath","breadcrumbs","documents","folderFieldName","folderID","FolderResultsComponent","search","subfolders","restOfProps","_jsx","BrowseByFolderViewInContext","props","$","AfterFolderList","AfterFolderListTable","BeforeFolderList","BeforeFolderListTable","Description","disableBulkDelete","disableBulkEdit","folderAssignedCollections","viewPreference","router","getEntityConfig","i18n","t","drawerDepth","setStepNav","startRouteTransition","clearRouteCache","breakpoints","t0","s","smallBreak","setPreference","visibleCollectionSlugs","dragOverlayItem","folderCollectionConfig","folderType","getFolderRoute","getSelectedItems","moveToFolder","refineFolderData","selectedItemKeys","setIsDragging","activeView","setActiveView","useState","t1","locationLabel","length","labels","plural","name","folderName","searchPlaceholder","t2","event","over","data","current","type","itemsToMove","toFolderID","id","onDragEnd","totalDocsAndSubfolders","listHeaderTitle","t3","acc","slug","index","array","collectionConfig","collectionSlug","toLowerCase","noResultsLabel","reduce","handleSetViewType","view","t4","t5","label","_jsxs","className","children","filter","Boolean","join","onClick","push","map","crumb","crumbIndex","useEffect","nonFolderCollectionSlugs","slug_0","t6","search_0","query","updateURL","DndEventListener","Actions","AfterListHeaderContent","title","TitleActions","buttonLabel","collectionSlugs","Array","isArray","onCreateSuccess","slugPrefix","onSearchChange","searchQueryParam","_Fragment","items","subfolderCount","includes","singular","Message","size","item","selectedCount","onDragCancel","onDragStart"],"sources":["../../../src/views/BrowseByFolder/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 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 { FilterFolderTypePill } from '../../elements/FolderView/FilterFolderTypePill/index.js'\nimport { FolderFileTable } from '../../elements/FolderView/FolderFileTable/index.js'\nimport { ItemCardGrid } from '../../elements/FolderView/ItemCardGrid/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 { ListHeader } from '../../elements/ListHeader/index.js'\nimport { ListCreateNewDocInFolderButton } 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 '../CollectionFolder/ListSelection/index.js'\nimport './index.scss'\n\nconst baseClass = 'folder-list'\n\nexport function DefaultBrowseByFolderView({\n activeCollectionFolderSlugs,\n allCollectionFolderSlugs,\n allowCreateCollectionSlugs,\n baseFolderPath,\n breadcrumbs,\n documents,\n folderFieldName,\n folderID,\n FolderResultsComponent,\n search,\n subfolders,\n ...restOfProps\n}: FolderListViewClientProps) {\n return (\n <FolderProvider\n activeCollectionFolderSlugs={activeCollectionFolderSlugs}\n allCollectionFolderSlugs={allCollectionFolderSlugs}\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 subfolders={subfolders}\n >\n <BrowseByFolderViewInContext {...restOfProps} />\n </FolderProvider>\n )\n}\n\ntype BrowseByFolderViewInContextProps = Omit<\n FolderListViewClientProps,\n | 'activeCollectionFolderSlugs'\n | 'allCollectionFolderSlugs'\n | 'allowCreateCollectionSlugs'\n | 'baseFolderPath'\n | 'breadcrumbs'\n | 'documents'\n | 'folderFieldName'\n | 'folderID'\n | 'FolderResultsComponent'\n | 'subfolders'\n>\n\nfunction BrowseByFolderViewInContext(props: BrowseByFolderViewInContextProps) {\n const {\n AfterFolderList,\n AfterFolderListTable,\n BeforeFolderList,\n BeforeFolderListTable,\n Description,\n disableBulkDelete,\n disableBulkEdit,\n folderAssignedCollections,\n viewPreference,\n } = props\n\n const router = useRouter()\n const { getEntityConfig } = useConfig()\n const { i18n, t } = useTranslation()\n const drawerDepth = useEditDepth()\n const { setStepNav } = useStepNav()\n const { startRouteTransition } = useRouteTransition()\n const { clearRouteCache } = useRouteCache()\n const {\n breakpoints: { s: smallBreak },\n } = useWindowInfo()\n const { setPreference } = usePreferences()\n const {\n activeCollectionFolderSlugs: visibleCollectionSlugs,\n allowCreateCollectionSlugs,\n breadcrumbs,\n documents,\n dragOverlayItem,\n folderCollectionConfig,\n folderID,\n folderType,\n getFolderRoute,\n getSelectedItems,\n moveToFolder,\n refineFolderData,\n search,\n selectedItemKeys,\n setIsDragging,\n subfolders,\n } = useFolder()\n\n const [activeView, setActiveView] = React.useState<'grid' | 'list'>(viewPreference || 'grid')\n const [searchPlaceholder] = React.useState(() => {\n const locationLabel =\n breadcrumbs.length === 0\n ? getTranslation(folderCollectionConfig.labels?.plural, i18n)\n : breadcrumbs[breadcrumbs.length - 1].name\n return t('folder:searchByNameInFolder', {\n folderName: locationLabel,\n })\n })\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 await moveToFolder({\n itemsToMove: getSelectedItems(),\n toFolderID: event.over.data.current.id || null,\n })\n clearRouteCache()\n }\n },\n [moveToFolder, getSelectedItems, clearRouteCache],\n )\n\n const totalDocsAndSubfolders = documents.length + subfolders.length\n const listHeaderTitle = !breadcrumbs.length\n ? t('folder:browseByFolder')\n : breadcrumbs[breadcrumbs.length - 1].name\n const noResultsLabel = visibleCollectionSlugs.reduce((acc, slug, index, array) => {\n const collectionConfig = getEntityConfig({ collectionSlug: slug })\n if (index === 0) {\n return getTranslation(collectionConfig.labels?.plural, i18n)\n }\n if (index === array.length - 1) {\n return `${acc} ${t('general:or').toLowerCase()} ${getTranslation(collectionConfig.labels?.plural, i18n)}`\n }\n return `${acc}, ${getTranslation(collectionConfig.labels?.plural, i18n)}`\n }, '')\n\n const handleSetViewType = React.useCallback(\n (view: 'grid' | 'list') => {\n void setPreference('browse-by-folder', {\n viewPreference: view,\n })\n setActiveView(view)\n },\n [setPreference],\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 {t('folder:browseByFolder')}\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 router.push(getFolderRoute(null))\n })\n }}\n >\n <ColoredFolderIcon />\n {t('folder:browseByFolder')}\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 router.push(getFolderRoute(crumb.id))\n })\n }}\n >\n {crumb.name}\n </DroppableBreadcrumb>\n ),\n }\n }),\n ])\n }\n }, [breadcrumbs, drawerDepth, getFolderRoute, router, setStepNav, startRouteTransition, t])\n\n const nonFolderCollectionSlugs = allowCreateCollectionSlugs.filter(\n (slug) => slug !== folderCollectionConfig.slug,\n )\n\n return (\n <Fragment>\n <DndEventListener onDragEnd={onDragEnd} setIsDragging={setIsDragging} />\n <div className={`${baseClass} ${baseClass}--folders`}>\n {BeforeFolderList}\n <Gutter className={`${baseClass}__wrap`}>\n <ListHeader\n Actions={[\n !smallBreak && (\n <ListSelection\n disableBulkDelete={disableBulkDelete}\n disableBulkEdit={disableBulkEdit}\n folderAssignedCollections={folderAssignedCollections}\n key=\"list-selection\"\n />\n ),\n ].filter(Boolean)}\n AfterListHeaderContent={Description}\n title={listHeaderTitle}\n TitleActions={[\n allowCreateCollectionSlugs.length && (\n <ListCreateNewDocInFolderButton\n buttonLabel={t('general:createNew')}\n collectionSlugs={allowCreateCollectionSlugs}\n folderAssignedCollections={Array.isArray(folderType) ? folderType : []}\n key=\"create-new-button\"\n onCreateSuccess={clearRouteCache}\n slugPrefix=\"create-document--header-pill\"\n />\n ),\n ].filter(Boolean)}\n />\n <SearchBar\n Actions={[\n <SortByPill key=\"sort-by-pill\" />,\n folderID && <FilterFolderTypePill key=\"collection-type\" />,\n <ToggleViewButtons\n activeView={activeView}\n key=\"toggle-view-buttons\"\n setActiveView={handleSetViewType}\n />,\n <CurrentFolderActions key=\"current-folder-actions\" />,\n ].filter(Boolean)}\n label={searchPlaceholder}\n onSearchChange={(search) => refineFolderData({ query: { search }, updateURL: true })}\n searchQueryParam={search}\n />\n {BeforeFolderListTable}\n {totalDocsAndSubfolders > 0 && (\n <>\n {activeView === 'grid' ? (\n <div>\n {subfolders.length ? (\n <>\n <ItemCardGrid items={subfolders} title={'Folders'} type=\"folder\" />\n </>\n ) : null}\n\n {documents.length ? (\n <>\n <ItemCardGrid\n items={documents}\n subfolderCount={subfolders.length}\n title={'Documents'}\n type=\"file\"\n />\n </>\n ) : null}\n </div>\n ) : (\n <FolderFileTable />\n )}\n </>\n )}\n {totalDocsAndSubfolders === 0 && (\n <NoListResults\n Actions={[\n allowCreateCollectionSlugs.includes(folderCollectionConfig.slug) && (\n <ListCreateNewDocInFolderButton\n buttonLabel={`${t('general:create')} ${getTranslation(folderCollectionConfig.labels?.singular, i18n).toLowerCase()}`}\n collectionSlugs={[folderCollectionConfig.slug]}\n folderAssignedCollections={Array.isArray(folderType) ? folderType : []}\n key=\"create-folder\"\n onCreateSuccess={clearRouteCache}\n slugPrefix=\"create-folder--no-results\"\n />\n ),\n folderID && nonFolderCollectionSlugs.length > 0 && (\n <ListCreateNewDocInFolderButton\n buttonLabel={`${t('general:create')} ${t('general:document').toLowerCase()}`}\n collectionSlugs={nonFolderCollectionSlugs}\n folderAssignedCollections={Array.isArray(folderType) ? folderType : []}\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: noResultsLabel,\n })}\n </p>\n }\n />\n )}\n {AfterFolderListTable}\n </Gutter>\n {AfterFolderList}\n </div>\n {selectedItemKeys.size > 0 && dragOverlayItem && (\n <DragOverlaySelection item={dragOverlayItem} selectedCount={selectedItemKeys.size} />\n )}\n </Fragment>\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","React","Fragment","DroppableBreadcrumb","ColoredFolderIcon","CurrentFolderActions","DragOverlaySelection","FilterFolderTypePill","FolderFileTable","ItemCardGrid","SortByPill","ToggleViewButtons","Gutter","ListHeader","ListCreateNewDocInFolderButton","NoListResults","SearchBar","useStepNav","useConfig","useEditDepth","FolderProvider","useFolder","usePreferences","useRouteCache","useRouteTransition","useTranslation","useWindowInfo","ListSelection","baseClass","DefaultBrowseByFolderView","activeCollectionFolderSlugs","allCollectionFolderSlugs","allowCreateCollectionSlugs","baseFolderPath","breadcrumbs","documents","folderFieldName","folderID","FolderResultsComponent","search","subfolders","restOfProps","_jsx","BrowseByFolderViewInContext","props","$","AfterFolderList","AfterFolderListTable","BeforeFolderList","BeforeFolderListTable","Description","disableBulkDelete","disableBulkEdit","folderAssignedCollections","viewPreference","router","getEntityConfig","i18n","t","drawerDepth","setStepNav","startRouteTransition","clearRouteCache","breakpoints","t0","s","smallBreak","setPreference","visibleCollectionSlugs","dragOverlayItem","folderCollectionConfig","folderType","getFolderRoute","getSelectedItems","moveToFolder","refineFolderData","selectedItemKeys","setIsDragging","activeView","setActiveView","useState","t1","locationLabel","length","labels","plural","name","folderName","searchPlaceholder","t2","event","over","data","current","type","itemsToMove","toFolderID","id","onDragEnd","totalDocsAndSubfolders","t3","listHeaderTitle","t4","acc","slug","index","array","collectionConfig","collectionSlug","toLowerCase","noResultsLabel","reduce","handleSetViewType","view","t5","t6","label","_jsxs","className","children","filter","Boolean","join","onClick","push","map","crumb","crumbIndex","useEffect","nonFolderCollectionSlugs","slug_0","t7","search_0","query","updateURL","t8","size","item","selectedCount","DndEventListener","Actions","AfterListHeaderContent","title","TitleActions","buttonLabel","collectionSlugs","Array","isArray","onCreateSuccess","slugPrefix","onSearchChange","searchQueryParam","_Fragment","items","subfolderCount","includes","singular","Message","onDragCancel","onDragStart"],"sources":["../../../src/views/BrowseByFolder/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 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 { FilterFolderTypePill } from '../../elements/FolderView/FilterFolderTypePill/index.js'\nimport { FolderFileTable } from '../../elements/FolderView/FolderFileTable/index.js'\nimport { ItemCardGrid } from '../../elements/FolderView/ItemCardGrid/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 { ListHeader } from '../../elements/ListHeader/index.js'\nimport { ListCreateNewDocInFolderButton } 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 '../CollectionFolder/ListSelection/index.js'\nimport './index.scss'\n\nconst baseClass = 'folder-list'\n\nexport function DefaultBrowseByFolderView({\n activeCollectionFolderSlugs,\n allCollectionFolderSlugs,\n allowCreateCollectionSlugs,\n baseFolderPath,\n breadcrumbs,\n documents,\n folderFieldName,\n folderID,\n FolderResultsComponent,\n search,\n subfolders,\n ...restOfProps\n}: FolderListViewClientProps) {\n return (\n <FolderProvider\n activeCollectionFolderSlugs={activeCollectionFolderSlugs}\n allCollectionFolderSlugs={allCollectionFolderSlugs}\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 subfolders={subfolders}\n >\n <BrowseByFolderViewInContext {...restOfProps} />\n </FolderProvider>\n )\n}\n\ntype BrowseByFolderViewInContextProps = Omit<\n FolderListViewClientProps,\n | 'activeCollectionFolderSlugs'\n | 'allCollectionFolderSlugs'\n | 'allowCreateCollectionSlugs'\n | 'baseFolderPath'\n | 'breadcrumbs'\n | 'documents'\n | 'folderFieldName'\n | 'folderID'\n | 'FolderResultsComponent'\n | 'subfolders'\n>\n\nfunction BrowseByFolderViewInContext(props: BrowseByFolderViewInContextProps) {\n const {\n AfterFolderList,\n AfterFolderListTable,\n BeforeFolderList,\n BeforeFolderListTable,\n Description,\n disableBulkDelete,\n disableBulkEdit,\n folderAssignedCollections,\n viewPreference,\n } = props\n\n const router = useRouter()\n const { getEntityConfig } = useConfig()\n const { i18n, t } = useTranslation()\n const drawerDepth = useEditDepth()\n const { setStepNav } = useStepNav()\n const { startRouteTransition } = useRouteTransition()\n const { clearRouteCache } = useRouteCache()\n const {\n breakpoints: { s: smallBreak },\n } = useWindowInfo()\n const { setPreference } = usePreferences()\n const {\n activeCollectionFolderSlugs: visibleCollectionSlugs,\n allowCreateCollectionSlugs,\n breadcrumbs,\n documents,\n dragOverlayItem,\n folderCollectionConfig,\n folderID,\n folderType,\n getFolderRoute,\n getSelectedItems,\n moveToFolder,\n refineFolderData,\n search,\n selectedItemKeys,\n setIsDragging,\n subfolders,\n } = useFolder()\n\n const [activeView, setActiveView] = React.useState<'grid' | 'list'>(viewPreference || 'grid')\n const [searchPlaceholder] = React.useState(() => {\n const locationLabel =\n breadcrumbs.length === 0\n ? getTranslation(folderCollectionConfig.labels?.plural, i18n)\n : breadcrumbs[breadcrumbs.length - 1].name\n return t('folder:searchByNameInFolder', {\n folderName: locationLabel,\n })\n })\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 await moveToFolder({\n itemsToMove: getSelectedItems(),\n toFolderID: event.over.data.current.id || null,\n })\n clearRouteCache()\n }\n },\n [moveToFolder, getSelectedItems, clearRouteCache],\n )\n\n const totalDocsAndSubfolders = documents.length + subfolders.length\n const listHeaderTitle = !breadcrumbs.length\n ? t('folder:browseByFolder')\n : breadcrumbs[breadcrumbs.length - 1].name\n const noResultsLabel = visibleCollectionSlugs.reduce((acc, slug, index, array) => {\n const collectionConfig = getEntityConfig({ collectionSlug: slug })\n if (index === 0) {\n return getTranslation(collectionConfig.labels?.plural, i18n)\n }\n if (index === array.length - 1) {\n return `${acc} ${t('general:or').toLowerCase()} ${getTranslation(collectionConfig.labels?.plural, i18n)}`\n }\n return `${acc}, ${getTranslation(collectionConfig.labels?.plural, i18n)}`\n }, '')\n\n const handleSetViewType = React.useCallback(\n (view: 'grid' | 'list') => {\n void setPreference('browse-by-folder', {\n viewPreference: view,\n })\n setActiveView(view)\n },\n [setPreference],\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 {t('folder:browseByFolder')}\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 router.push(getFolderRoute(null))\n })\n }}\n >\n <ColoredFolderIcon />\n {t('folder:browseByFolder')}\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 router.push(getFolderRoute(crumb.id))\n })\n }}\n >\n {crumb.name}\n </DroppableBreadcrumb>\n ),\n }\n }),\n ])\n }\n }, [breadcrumbs, drawerDepth, getFolderRoute, router, setStepNav, startRouteTransition, t])\n\n const nonFolderCollectionSlugs = allowCreateCollectionSlugs.filter(\n (slug) => slug !== folderCollectionConfig.slug,\n )\n\n return (\n <Fragment>\n <DndEventListener onDragEnd={onDragEnd} setIsDragging={setIsDragging} />\n <div className={`${baseClass} ${baseClass}--folders`}>\n {BeforeFolderList}\n <Gutter className={`${baseClass}__wrap`}>\n <ListHeader\n Actions={[\n !smallBreak && (\n <ListSelection\n disableBulkDelete={disableBulkDelete}\n disableBulkEdit={disableBulkEdit}\n folderAssignedCollections={folderAssignedCollections}\n key=\"list-selection\"\n />\n ),\n ].filter(Boolean)}\n AfterListHeaderContent={Description}\n title={listHeaderTitle}\n TitleActions={[\n allowCreateCollectionSlugs.length && (\n <ListCreateNewDocInFolderButton\n buttonLabel={t('general:createNew')}\n collectionSlugs={allowCreateCollectionSlugs}\n folderAssignedCollections={Array.isArray(folderType) ? folderType : []}\n key=\"create-new-button\"\n onCreateSuccess={clearRouteCache}\n slugPrefix=\"create-document--header-pill\"\n />\n ),\n ].filter(Boolean)}\n />\n <SearchBar\n Actions={[\n <SortByPill key=\"sort-by-pill\" />,\n folderID && <FilterFolderTypePill key=\"collection-type\" />,\n <ToggleViewButtons\n activeView={activeView}\n key=\"toggle-view-buttons\"\n setActiveView={handleSetViewType}\n />,\n <CurrentFolderActions key=\"current-folder-actions\" />,\n ].filter(Boolean)}\n label={searchPlaceholder}\n onSearchChange={(search) => refineFolderData({ query: { search }, updateURL: true })}\n searchQueryParam={search}\n />\n {BeforeFolderListTable}\n {totalDocsAndSubfolders > 0 && (\n <>\n {activeView === 'grid' ? (\n <div>\n {subfolders.length ? (\n <>\n <ItemCardGrid items={subfolders} title={'Folders'} type=\"folder\" />\n </>\n ) : null}\n\n {documents.length ? (\n <>\n <ItemCardGrid\n items={documents}\n subfolderCount={subfolders.length}\n title={'Documents'}\n type=\"file\"\n />\n </>\n ) : null}\n </div>\n ) : (\n <FolderFileTable />\n )}\n </>\n )}\n {totalDocsAndSubfolders === 0 && (\n <NoListResults\n Actions={[\n allowCreateCollectionSlugs.includes(folderCollectionConfig.slug) && (\n <ListCreateNewDocInFolderButton\n buttonLabel={`${t('general:create')} ${getTranslation(folderCollectionConfig.labels?.singular, i18n).toLowerCase()}`}\n collectionSlugs={[folderCollectionConfig.slug]}\n folderAssignedCollections={Array.isArray(folderType) ? folderType : []}\n key=\"create-folder\"\n onCreateSuccess={clearRouteCache}\n slugPrefix=\"create-folder--no-results\"\n />\n ),\n folderID && nonFolderCollectionSlugs.length > 0 && (\n <ListCreateNewDocInFolderButton\n buttonLabel={`${t('general:create')} ${t('general:document').toLowerCase()}`}\n collectionSlugs={nonFolderCollectionSlugs}\n folderAssignedCollections={Array.isArray(folderType) ? folderType : []}\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: noResultsLabel,\n })}\n </p>\n }\n />\n )}\n {AfterFolderListTable}\n </Gutter>\n {AfterFolderList}\n </div>\n {selectedItemKeys.size > 0 && dragOverlayItem && (\n <DragOverlaySelection item={dragOverlayItem} selectedCount={selectedItemKeys.size} />\n )}\n </Fragment>\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":[]}
@@ -65,7 +65,7 @@ export function DefaultCollectionFolderView({
65
65
  });
66
66
  }
67
67
  function CollectionFolderViewInContext(props) {
68
- const $ = _c(6);
68
+ const $ = _c(20);
69
69
  const {
70
70
  AfterFolderList,
71
71
  AfterFolderListTable,
@@ -165,6 +165,24 @@ function CollectionFolderViewInContext(props) {
165
165
  });
166
166
  clearRouteCache();
167
167
  };
168
+ const t2 = labels?.plural;
169
+ let t3;
170
+ if ($[4] !== breadcrumbs || $[5] !== collectionSlug || $[6] !== config.folders || $[7] !== config.routes.admin || $[8] !== drawerDepth || $[9] !== i18n || $[10] !== router || $[11] !== setStepNav || $[12] !== startRouteTransition || $[13] !== t2) {
171
+ t3 = [breadcrumbs, collectionSlug, config.folders, config.routes.admin, drawerDepth, i18n, t2, router, setStepNav, startRouteTransition];
172
+ $[4] = breadcrumbs;
173
+ $[5] = collectionSlug;
174
+ $[6] = config.folders;
175
+ $[7] = config.routes.admin;
176
+ $[8] = drawerDepth;
177
+ $[9] = i18n;
178
+ $[10] = router;
179
+ $[11] = setStepNav;
180
+ $[12] = startRouteTransition;
181
+ $[13] = t2;
182
+ $[14] = t3;
183
+ } else {
184
+ t3 = $[14];
185
+ }
168
186
  React.useEffect(() => {
169
187
  if (!drawerDepth) {
170
188
  setStepNav([!breadcrumbs.length ? {
@@ -206,20 +224,32 @@ function CollectionFolderViewInContext(props) {
206
224
  }, crumb.id)
207
225
  }))]);
208
226
  }
209
- }, [breadcrumbs, collectionSlug, config.folders, config.routes.admin, drawerDepth, i18n, labels?.plural, router, setStepNav, startRouteTransition]);
227
+ }, t3);
210
228
  const totalDocsAndSubfolders = documents.length + subfolders.length;
211
- let t2;
212
- if ($[4] !== refineFolderData) {
213
- t2 = search_0 => refineFolderData({
229
+ let t4;
230
+ if ($[15] !== refineFolderData) {
231
+ t4 = search_0 => refineFolderData({
214
232
  query: {
215
233
  search: search_0
216
234
  },
217
235
  updateURL: true
218
236
  });
219
- $[4] = refineFolderData;
220
- $[5] = t2;
237
+ $[15] = refineFolderData;
238
+ $[16] = t4;
221
239
  } else {
222
- t2 = $[5];
240
+ t4 = $[16];
241
+ }
242
+ let t5;
243
+ if ($[17] !== dragOverlayItem || $[18] !== selectedItemKeys.size) {
244
+ t5 = selectedItemKeys.size > 0 && dragOverlayItem && _jsx(DragOverlaySelection, {
245
+ item: dragOverlayItem,
246
+ selectedCount: selectedItemKeys.size
247
+ });
248
+ $[17] = dragOverlayItem;
249
+ $[18] = selectedItemKeys.size;
250
+ $[19] = t5;
251
+ } else {
252
+ t5 = $[19];
223
253
  }
224
254
  return _jsxs(Fragment, {
225
255
  children: [_jsx(DndEventListener, {
@@ -268,7 +298,7 @@ function CollectionFolderViewInContext(props) {
268
298
  label: t("general:searchBy", {
269
299
  label: t("general:name")
270
300
  }),
271
- onSearchChange: t2,
301
+ onSearchChange: t4,
272
302
  searchQueryParam: search
273
303
  }), BeforeFolderListTable, totalDocsAndSubfolders > 0 && FolderResultsComponent, totalDocsAndSubfolders === 0 && _jsx(NoListResults, {
274
304
  Actions: [allowCreateCollectionSlugs.includes(folderCollectionSlug) && _jsx(ListCreateNewDocInFolderButton, {
@@ -291,10 +321,7 @@ function CollectionFolderViewInContext(props) {
291
321
  })
292
322
  }), AfterFolderListTable]
293
323
  }), AfterFolderList]
294
- }), selectedItemKeys.size > 0 && dragOverlayItem && _jsx(DragOverlaySelection, {
295
- item: dragOverlayItem,
296
- selectedCount: selectedItemKeys.size
297
- })]
324
+ }), t5]
298
325
  });
299
326
  }
300
327
  function DndEventListener(t0) {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["c","_c","useDndMonitor","getTranslation","useRouter","formatAdminURL","React","Fragment","DroppableBreadcrumb","ColoredFolderIcon","CurrentFolderActions","DragOverlaySelection","SortByPill","ToggleViewButtons","Gutter","ListHeader","ListBulkUploadButton","ListCreateNewDocInFolderButton","ByFolderPill","DefaultListPill","TrashPill","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","dragOverlayItem","folderCollectionConfig","folderCollectionSlug","folderType","getSelectedItems","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","useEffect","length","label","_jsxs","className","children","plural","filter","join","onClick","folders","push","adminRoute","routes","admin","path","slug","map","crumb","crumbIndex","name","totalDocsAndSubfolders","search_0","query","updateURL","DndEventListener","Actions","folderAssignedCollections","Array","isArray","viewType","trash","AfterListHeaderContent","title","TitleActions","buttonLabel","collectionSlugs","onCreateSuccess","slugPrefix","hasCreatePermission","includes","activeView","setActiveView","onSearchChange","searchQueryParam","singular","toLowerCase","Message","size","item","selectedCount","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 { ListHeader } from '../../elements/ListHeader/index.js'\nimport {\n ListBulkUploadButton,\n ListCreateNewDocInFolderButton,\n} from '../../elements/ListHeader/TitleActions/index.js'\nimport { ByFolderPill } from '../../elements/ListHeaderTabs/ByFolderPill.js'\nimport { DefaultListPill } from '../../elements/ListHeaderTabs/DefaultListPill.js'\nimport { TrashPill } from '../../elements/ListHeaderTabs/TrashPill.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 './index.scss'\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'\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 dragOverlayItem,\n folderCollectionConfig,\n folderCollectionSlug,\n FolderResultsComponent,\n folderType,\n getSelectedItems,\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 folderAssignedCollections={\n Array.isArray(folderType) ? folderType : [collectionSlug]\n }\n key=\"list-selection\"\n />\n ),\n config.folders && collectionConfig.folders && (\n <Fragment key=\"list-header-folder-view-buttons\">\n <DefaultListPill\n collectionConfig={collectionConfig}\n key=\"list-header-default-button\"\n viewType=\"folders\"\n />\n <ByFolderPill\n collectionConfig={collectionConfig}\n folderCollectionSlug={folderCollectionSlug}\n key=\"list-header-by-folder-button\"\n viewType=\"folders\"\n />\n </Fragment>\n ),\n collectionConfig.trash && (\n <TrashPill\n collectionConfig={collectionConfig}\n key=\"list-header-trash-button\"\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 folderAssignedCollections={\n Array.isArray(folderType) ? folderType : [collectionSlug]\n }\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 folderAssignedCollections={\n Array.isArray(folderType) ? folderType : [collectionSlug]\n }\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 folderAssignedCollections={\n Array.isArray(folderType) ? folderType : [collectionSlug]\n }\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 {selectedItemKeys.size > 0 && dragOverlayItem && (\n <DragOverlaySelection item={dragOverlayItem} 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","ListHeader","ListBulkUploadButton","ListCreateNewDocInFolderButton","ByFolderPill","DefaultListPill","TrashPill","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","dragOverlayItem","folderCollectionConfig","folderCollectionSlug","folderType","getSelectedItems","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","t5","size","item","selectedCount","DndEventListener","Actions","folderAssignedCollections","Array","isArray","viewType","trash","AfterListHeaderContent","title","TitleActions","buttonLabel","collectionSlugs","onCreateSuccess","slugPrefix","hasCreatePermission","includes","activeView","setActiveView","onSearchChange","searchQueryParam","singular","toLowerCase","Message","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 { ListHeader } from '../../elements/ListHeader/index.js'\nimport {\n ListBulkUploadButton,\n ListCreateNewDocInFolderButton,\n} from '../../elements/ListHeader/TitleActions/index.js'\nimport { ByFolderPill } from '../../elements/ListHeaderTabs/ByFolderPill.js'\nimport { DefaultListPill } from '../../elements/ListHeaderTabs/DefaultListPill.js'\nimport { TrashPill } from '../../elements/ListHeaderTabs/TrashPill.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 './index.scss'\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'\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 dragOverlayItem,\n folderCollectionConfig,\n folderCollectionSlug,\n FolderResultsComponent,\n folderType,\n getSelectedItems,\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 folderAssignedCollections={\n Array.isArray(folderType) ? folderType : [collectionSlug]\n }\n key=\"list-selection\"\n />\n ),\n config.folders && collectionConfig.folders && (\n <Fragment key=\"list-header-folder-view-buttons\">\n <DefaultListPill\n collectionConfig={collectionConfig}\n key=\"list-header-default-button\"\n viewType=\"folders\"\n />\n <ByFolderPill\n collectionConfig={collectionConfig}\n folderCollectionSlug={folderCollectionSlug}\n key=\"list-header-by-folder-button\"\n viewType=\"folders\"\n />\n </Fragment>\n ),\n collectionConfig.trash && (\n <TrashPill\n collectionConfig={collectionConfig}\n key=\"list-header-trash-button\"\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 folderAssignedCollections={\n Array.isArray(folderType) ? folderType : [collectionSlug]\n }\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 folderAssignedCollections={\n Array.isArray(folderType) ? folderType : [collectionSlug]\n }\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 folderAssignedCollections={\n Array.isArray(folderType) ? folderType : [collectionSlug]\n }\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 {selectedItemKeys.size > 0 && dragOverlayItem && (\n <DragOverlaySelection item={dragOverlayItem} 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":[]}