@payloadcms/ui 4.0.0-canary.2 → 4.0.0-canary.3

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 (90) hide show
  1. package/dist/css/colors.css +3 -0
  2. package/dist/css/design-tokens.css +5 -0
  3. package/dist/css/elevations.css +4 -0
  4. package/dist/elements/AppHeader/index.d.ts +3 -2
  5. package/dist/elements/AppHeader/index.d.ts.map +1 -1
  6. package/dist/elements/AppHeader/index.js +2 -2
  7. package/dist/elements/AppHeader/index.js.map +1 -1
  8. package/dist/elements/DocumentControls/index.css +7 -1
  9. package/dist/elements/Popup/PopupButtonList/index.css +5 -0
  10. package/dist/elements/Popup/PopupGroupLabel/index.css +8 -5
  11. package/dist/elements/PublishMany/DrawerContent.d.ts +2 -1
  12. package/dist/elements/PublishMany/DrawerContent.d.ts.map +1 -1
  13. package/dist/elements/PublishMany/DrawerContent.js.map +1 -1
  14. package/dist/elements/PublishMany/index.d.ts +2 -6
  15. package/dist/elements/PublishMany/index.d.ts.map +1 -1
  16. package/dist/elements/PublishMany/index.js +0 -38
  17. package/dist/elements/PublishMany/index.js.map +1 -1
  18. package/dist/elements/ReactSelect/getCaptureMenuScroll.d.ts +5 -0
  19. package/dist/elements/ReactSelect/getCaptureMenuScroll.d.ts.map +1 -0
  20. package/dist/elements/ReactSelect/getCaptureMenuScroll.js +10 -0
  21. package/dist/elements/ReactSelect/getCaptureMenuScroll.js.map +1 -0
  22. package/dist/elements/ReactSelect/getMenuListStyles.d.ts +6 -0
  23. package/dist/elements/ReactSelect/getMenuListStyles.d.ts.map +1 -0
  24. package/dist/elements/ReactSelect/getMenuListStyles.js +7 -0
  25. package/dist/elements/ReactSelect/getMenuListStyles.js.map +1 -0
  26. package/dist/elements/ReactSelect/index.css +0 -1
  27. package/dist/elements/ReactSelect/index.d.ts.map +1 -1
  28. package/dist/elements/ReactSelect/index.js +168 -148
  29. package/dist/elements/ReactSelect/index.js.map +1 -1
  30. package/dist/elements/ReactSelect/types.d.ts +1 -0
  31. package/dist/elements/ReactSelect/types.d.ts.map +1 -1
  32. package/dist/elements/ReactSelect/types.js.map +1 -1
  33. package/dist/elements/Toasts/fieldErrors.d.ts +1 -0
  34. package/dist/elements/Toasts/fieldErrors.d.ts.map +1 -1
  35. package/dist/elements/Toasts/fieldErrors.js +25 -9
  36. package/dist/elements/Toasts/fieldErrors.js.map +1 -1
  37. package/dist/elements/Toasts/index.css +5 -0
  38. package/dist/elements/UnpublishMany/DrawerContent.d.ts +2 -1
  39. package/dist/elements/UnpublishMany/DrawerContent.d.ts.map +1 -1
  40. package/dist/elements/UnpublishMany/DrawerContent.js.map +1 -1
  41. package/dist/elements/UnpublishMany/index.d.ts +2 -4
  42. package/dist/elements/UnpublishMany/index.d.ts.map +1 -1
  43. package/dist/elements/UnpublishMany/index.js +0 -38
  44. package/dist/elements/UnpublishMany/index.js.map +1 -1
  45. package/dist/elements/UserMenu/LanguageMenu/index.js +1 -1
  46. package/dist/elements/UserMenu/LanguageMenu/index.js.map +1 -1
  47. package/dist/elements/UserMenu/SettingsMenu/index.d.ts +6 -2
  48. package/dist/elements/UserMenu/SettingsMenu/index.d.ts.map +1 -1
  49. package/dist/elements/UserMenu/SettingsMenu/index.js +15 -10
  50. package/dist/elements/UserMenu/SettingsMenu/index.js.map +1 -1
  51. package/dist/elements/UserMenu/ThemeMenu/index.js +1 -1
  52. package/dist/elements/UserMenu/ThemeMenu/index.js.map +1 -1
  53. package/dist/elements/UserMenu/index.d.ts +2 -1
  54. package/dist/elements/UserMenu/index.d.ts.map +1 -1
  55. package/dist/elements/UserMenu/index.js +8 -5
  56. package/dist/elements/UserMenu/index.js.map +1 -1
  57. package/dist/exports/client/index.d.ts +1 -0
  58. package/dist/exports/client/index.d.ts.map +1 -1
  59. package/dist/exports/client/index.js +26 -26
  60. package/dist/exports/client/index.js.map +4 -4
  61. package/dist/fields/RadioGroup/index.css +6 -0
  62. package/dist/icons/Check/index.css +1 -2
  63. package/dist/icons/Check/index.js +1 -1
  64. package/dist/icons/Check/index.js.map +1 -1
  65. package/dist/icons/Warning/index.css +1 -7
  66. package/dist/icons/Warning/index.d.ts +1 -1
  67. package/dist/icons/Warning/index.d.ts.map +1 -1
  68. package/dist/icons/Warning/index.js +11 -16
  69. package/dist/icons/Warning/index.js.map +1 -1
  70. package/dist/providers/ToastContainer/index.css +208 -0
  71. package/dist/providers/ToastContainer/index.d.ts +1 -0
  72. package/dist/providers/ToastContainer/index.d.ts.map +1 -1
  73. package/dist/providers/ToastContainer/index.js +19 -6
  74. package/dist/providers/ToastContainer/index.js.map +1 -1
  75. package/dist/scss/app.scss +1 -2
  76. package/dist/styles.css +1 -1
  77. package/dist/templates/Default/index.d.ts.map +1 -1
  78. package/dist/templates/Default/index.js +51 -9
  79. package/dist/templates/Default/index.js.map +1 -1
  80. package/dist/views/HierarchyList/DocumentListSelection/index.js +4 -4
  81. package/dist/views/HierarchyList/DocumentListSelection/index.js.map +1 -1
  82. package/dist/views/List/ListSelection/index.js +4 -4
  83. package/dist/views/List/ListSelection/index.js.map +1 -1
  84. package/dist/views/List/renderListViewSlots.d.ts.map +1 -1
  85. package/dist/views/List/renderListViewSlots.js +9 -6
  86. package/dist/views/List/renderListViewSlots.js.map +1 -1
  87. package/dist/views/Logout/LogoutClient.js +1 -1
  88. package/dist/views/Logout/LogoutClient.js.map +1 -1
  89. package/package.json +4 -4
  90. package/dist/scss/toasts.scss +0 -146
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/templates/Default/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EACf,oBAAoB,EACpB,cAAc,EACd,WAAW,EACX,SAAS,EACT,eAAe,EAChB,MAAM,SAAS,CAAA;AAEhB,OAAO,aAAa,CAAA;AAEpB,OAAO,KAAK,MAAM,OAAO,CAAA;AAiBzB,MAAM,MAAM,oBAAoB,GAAG;IACjC,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACvB,mBAAmB,CAAC,EAAE,oBAAoB,CAAA;IAC1C,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,GAAG,CAAC,EAAE,cAAc,CAAA;IACpB,WAAW,CAAC,EAAE,eAAe,EAAE,CAAA;IAC/B,QAAQ,CAAC,EAAE,SAAS,CAAA;IACpB,eAAe,EAAE,eAAe,CAAA;CACjC,GAAG,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAA;AAE/B,eAAO,MAAM,eAAe,EAAE,KAAK,CAAC,EAAE,CAAC,oBAAoB,CA8H1D,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/templates/Default/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EACf,oBAAoB,EACpB,cAAc,EACd,WAAW,EACX,SAAS,EACT,eAAe,EAChB,MAAM,SAAS,CAAA;AAKhB,OAAO,aAAa,CAAA;AAEpB,OAAO,KAAK,MAAM,OAAO,CAAA;AAmBzB,MAAM,MAAM,oBAAoB,GAAG;IACjC,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACvB,mBAAmB,CAAC,EAAE,oBAAoB,CAAA;IAC1C,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,GAAG,CAAC,EAAE,cAAc,CAAA;IACpB,WAAW,CAAC,EAAE,eAAe,EAAE,CAAA;IAC/B,QAAQ,CAAC,EAAE,SAAS,CAAA;IACpB,eAAe,EAAE,eAAe,CAAA;CACjC,GAAG,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAA;AAE/B,eAAO,MAAM,eAAe,EAAE,KAAK,CAAC,EAAE,CAAC,oBAAoB,CA4K1D,CAAA"}
@@ -1,9 +1,10 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { getTranslation } from '@payloadcms/translations';
3
+ import { isUserMenuSettingsGroup } from 'payload/shared';
2
4
  import './index.css';
3
5
  import React from 'react';
4
6
  /* eslint-disable payload/no-imports-from-exports-dir -- Server component must reference exports dir for proper client boundary */
5
7
  import { ActionsProvider, AppHeader, BulkUploadProvider, CommandPalette, EntityVisibilityProvider, DefaultTemplateWrapper as Wrapper } from '../../exports/client/index.js';
6
- /* eslint-enable payload/no-imports-from-exports-dir */
7
8
  import { DefaultNav } from '../../elements/Nav/index.js';
8
9
  import { RenderServerComponent } from '../../elements/RenderServerComponent/index.js';
9
10
  const baseClass = 'template-default';
@@ -71,13 +72,54 @@ export const DefaultTemplate = ({
71
72
  serverProps
72
73
  });
73
74
  }
74
- const settingsItems = components?.userMenuSettingsItems && Array.isArray(components.userMenuSettingsItems) ? components.userMenuSettingsItems.map((item, index) => RenderServerComponent({
75
- clientProps,
76
- Component: item,
77
- importMap: payload.importMap,
78
- key: `user-menu-settings-item-${index}`,
79
- serverProps
80
- })) : [];
75
+ const settingsItemGroups = [];
76
+ if (components?.userMenuSettingsItems && Array.isArray(components.userMenuSettingsItems)) {
77
+ const groupedItemsByLabel = new Map();
78
+ const groupLabels = [];
79
+ const ungroupedItems = [];
80
+ for (const [itemIndex, userMenuSettingsItem] of components.userMenuSettingsItems.entries()) {
81
+ // Ungrouped items are collected as orphans rendered at the bottom
82
+ if (!isUserMenuSettingsGroup(userMenuSettingsItem)) {
83
+ ungroupedItems.push(RenderServerComponent({
84
+ clientProps,
85
+ Component: userMenuSettingsItem,
86
+ importMap: payload.importMap,
87
+ key: `user-menu-settings-ungrouped-${itemIndex}`,
88
+ serverProps
89
+ }));
90
+ continue;
91
+ }
92
+ const groupLabel = getTranslation(userMenuSettingsItem.group, i18n);
93
+ const existingItems = groupedItemsByLabel.get(groupLabel);
94
+ const renderedItems = userMenuSettingsItem.items.map((groupedItem, groupedItemIndex) => RenderServerComponent({
95
+ clientProps,
96
+ Component: groupedItem,
97
+ importMap: payload.importMap,
98
+ key: `user-menu-settings-group-${groupLabel}-${itemIndex}-${groupedItemIndex}`,
99
+ serverProps
100
+ }));
101
+ if (existingItems) {
102
+ existingItems.push(...renderedItems);
103
+ } else if (renderedItems.length > 0) {
104
+ groupedItemsByLabel.set(groupLabel, renderedItems);
105
+ groupLabels.push(groupLabel);
106
+ }
107
+ }
108
+ for (const groupLabel of groupLabels) {
109
+ const items = groupedItemsByLabel.get(groupLabel);
110
+ if (items?.length) {
111
+ settingsItemGroups.push({
112
+ group: groupLabel,
113
+ items
114
+ });
115
+ }
116
+ }
117
+ if (ungroupedItems.length > 0) {
118
+ settingsItemGroups.push({
119
+ items: ungroupedItems
120
+ });
121
+ }
122
+ }
81
123
  const NavComponent = RenderServerComponent({
82
124
  clientProps,
83
125
  Component: CustomNav,
@@ -111,7 +153,7 @@ export const DefaultTemplate = ({
111
153
  importMap: payload.importMap,
112
154
  serverProps
113
155
  }) : undefined,
114
- settingsItems: settingsItems
156
+ settingsItemGroups: settingsItemGroups
115
157
  }), children]
116
158
  })]
117
159
  })
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["React","ActionsProvider","AppHeader","BulkUploadProvider","CommandPalette","EntityVisibilityProvider","DefaultTemplateWrapper","Wrapper","DefaultNav","RenderServerComponent","baseClass","DefaultTemplate","children","className","collectionSlug","docID","documentSubViewType","globalSlug","i18n","locale","params","payload","permissions","req","searchParams","user","viewActions","viewType","visibleEntities","admin","avatar","components","header","CustomHeader","Nav","CustomNav","undefined","config","clientProps","serverProps","server","Actions","action","key","path","Component","importMap","settingsItems","userMenuSettingsItems","Array","isArray","map","item","index","NavComponent","Fallback","_jsxs","_jsx","drawerSlugPrefix","style","position","CustomAvatar"],"sources":["../../../src/templates/Default/index.tsx"],"sourcesContent":["import type {\n CustomComponent,\n DocumentSubViewTypes,\n PayloadRequest,\n ServerProps,\n ViewTypes,\n VisibleEntities,\n} from 'payload'\n\nimport './index.css'\n\nimport React from 'react'\n\n/* eslint-disable payload/no-imports-from-exports-dir -- Server component must reference exports dir for proper client boundary */\nimport {\n ActionsProvider,\n AppHeader,\n BulkUploadProvider,\n CommandPalette,\n EntityVisibilityProvider,\n DefaultTemplateWrapper as Wrapper,\n} from '../../exports/client/index.js'\n/* eslint-enable payload/no-imports-from-exports-dir */\nimport { DefaultNav } from '../../elements/Nav/index.js'\nimport { RenderServerComponent } from '../../elements/RenderServerComponent/index.js'\n\nconst baseClass = 'template-default'\n\nexport type DefaultTemplateProps = {\n children?: React.ReactNode\n className?: string\n collectionSlug?: string\n docID?: number | string\n documentSubViewType?: DocumentSubViewTypes\n globalSlug?: string\n req?: PayloadRequest\n viewActions?: CustomComponent[]\n viewType?: ViewTypes\n visibleEntities: VisibleEntities\n} & Omit<ServerProps, 'server'>\n\nexport const DefaultTemplate: React.FC<DefaultTemplateProps> = ({\n children,\n className,\n collectionSlug,\n docID,\n documentSubViewType,\n globalSlug,\n i18n,\n locale,\n params,\n payload,\n permissions,\n req,\n searchParams,\n user,\n viewActions,\n viewType,\n visibleEntities,\n}) => {\n const {\n admin: {\n avatar,\n components,\n components: { header: CustomHeader, Nav: CustomNav } = {\n header: undefined,\n Nav: undefined,\n },\n } = {},\n } = payload.config || {}\n\n const clientProps = {\n documentSubViewType,\n viewType,\n visibleEntities,\n }\n\n const serverProps: {\n collectionSlug: string\n docID: number | string\n globalSlug: string\n req: PayloadRequest\n } & ServerProps = {\n collectionSlug,\n docID,\n globalSlug,\n i18n,\n locale,\n params,\n payload,\n permissions,\n req,\n searchParams,\n server: req?.server,\n user,\n }\n\n const Actions: Record<string, React.ReactNode> = {}\n for (const action of viewActions ?? []) {\n if (!action) {\n continue\n }\n const key = typeof action === 'object' ? action.path : action\n Actions[key] = RenderServerComponent({\n clientProps,\n Component: action,\n importMap: payload.importMap,\n serverProps,\n })\n }\n\n const settingsItems: React.ReactNode[] =\n components?.userMenuSettingsItems && Array.isArray(components.userMenuSettingsItems)\n ? components.userMenuSettingsItems.map((item, index) =>\n RenderServerComponent({\n clientProps,\n Component: item,\n importMap: payload.importMap,\n key: `user-menu-settings-item-${index}`,\n serverProps,\n }),\n )\n : []\n\n const NavComponent = RenderServerComponent({\n clientProps,\n Component: CustomNav,\n Fallback: DefaultNav,\n importMap: payload.importMap,\n serverProps,\n })\n\n return (\n <EntityVisibilityProvider visibleEntities={visibleEntities}>\n <CommandPalette />\n <BulkUploadProvider drawerSlugPrefix={collectionSlug}>\n <ActionsProvider Actions={Actions}>\n {RenderServerComponent({\n clientProps,\n Component: CustomHeader,\n importMap: payload.importMap,\n serverProps,\n })}\n <div style={{ position: 'relative' }}>\n <Wrapper baseClass={baseClass} className={className}>\n {NavComponent}\n <div className={`${baseClass}__wrap`}>\n <AppHeader\n CustomAvatar={\n avatar !== 'gravatar' && avatar !== 'default'\n ? RenderServerComponent({\n Component: avatar.Component,\n importMap: payload.importMap,\n serverProps,\n })\n : undefined\n }\n settingsItems={settingsItems}\n />\n {children}\n </div>\n </Wrapper>\n </div>\n </ActionsProvider>\n </BulkUploadProvider>\n </EntityVisibilityProvider>\n )\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["getTranslation","isUserMenuSettingsGroup","React","ActionsProvider","AppHeader","BulkUploadProvider","CommandPalette","EntityVisibilityProvider","DefaultTemplateWrapper","Wrapper","DefaultNav","RenderServerComponent","baseClass","DefaultTemplate","children","className","collectionSlug","docID","documentSubViewType","globalSlug","i18n","locale","params","payload","permissions","req","searchParams","user","viewActions","viewType","visibleEntities","admin","avatar","components","header","CustomHeader","Nav","CustomNav","undefined","config","clientProps","serverProps","server","Actions","action","key","path","Component","importMap","settingsItemGroups","userMenuSettingsItems","Array","isArray","groupedItemsByLabel","Map","groupLabels","ungroupedItems","itemIndex","userMenuSettingsItem","entries","push","groupLabel","group","existingItems","get","renderedItems","items","map","groupedItem","groupedItemIndex","length","set","NavComponent","Fallback","_jsxs","_jsx","drawerSlugPrefix","style","position","CustomAvatar"],"sources":["../../../src/templates/Default/index.tsx"],"sourcesContent":["import type {\n CustomComponent,\n DocumentSubViewTypes,\n PayloadRequest,\n ServerProps,\n ViewTypes,\n VisibleEntities,\n} from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport { isUserMenuSettingsGroup } from 'payload/shared'\n\nimport './index.css'\n\nimport React from 'react'\n\n/* eslint-disable payload/no-imports-from-exports-dir -- Server component must reference exports dir for proper client boundary */\nimport {\n ActionsProvider,\n AppHeader,\n BulkUploadProvider,\n CommandPalette,\n EntityVisibilityProvider,\n DefaultTemplateWrapper as Wrapper,\n} from '../../exports/client/index.js'\n/* eslint-enable payload/no-imports-from-exports-dir */\nimport type { UserMenuSettingsGroup } from '../../elements/UserMenu/SettingsMenu/index.js'\n\nimport { DefaultNav } from '../../elements/Nav/index.js'\nimport { RenderServerComponent } from '../../elements/RenderServerComponent/index.js'\n\nconst baseClass = 'template-default'\n\nexport type DefaultTemplateProps = {\n children?: React.ReactNode\n className?: string\n collectionSlug?: string\n docID?: number | string\n documentSubViewType?: DocumentSubViewTypes\n globalSlug?: string\n req?: PayloadRequest\n viewActions?: CustomComponent[]\n viewType?: ViewTypes\n visibleEntities: VisibleEntities\n} & Omit<ServerProps, 'server'>\n\nexport const DefaultTemplate: React.FC<DefaultTemplateProps> = ({\n children,\n className,\n collectionSlug,\n docID,\n documentSubViewType,\n globalSlug,\n i18n,\n locale,\n params,\n payload,\n permissions,\n req,\n searchParams,\n user,\n viewActions,\n viewType,\n visibleEntities,\n}) => {\n const {\n admin: {\n avatar,\n components,\n components: { header: CustomHeader, Nav: CustomNav } = {\n header: undefined,\n Nav: undefined,\n },\n } = {},\n } = payload.config || {}\n\n const clientProps = {\n documentSubViewType,\n viewType,\n visibleEntities,\n }\n\n const serverProps: {\n collectionSlug: string\n docID: number | string\n globalSlug: string\n req: PayloadRequest\n } & ServerProps = {\n collectionSlug,\n docID,\n globalSlug,\n i18n,\n locale,\n params,\n payload,\n permissions,\n req,\n searchParams,\n server: req?.server,\n user,\n }\n\n const Actions: Record<string, React.ReactNode> = {}\n for (const action of viewActions ?? []) {\n if (!action) {\n continue\n }\n const key = typeof action === 'object' ? action.path : action\n Actions[key] = RenderServerComponent({\n clientProps,\n Component: action,\n importMap: payload.importMap,\n serverProps,\n })\n }\n\n const settingsItemGroups: UserMenuSettingsGroup[] = []\n if (components?.userMenuSettingsItems && Array.isArray(components.userMenuSettingsItems)) {\n const groupedItemsByLabel = new Map<string, React.ReactNode[]>()\n const groupLabels: string[] = []\n const ungroupedItems: React.ReactNode[] = []\n\n for (const [itemIndex, userMenuSettingsItem] of components.userMenuSettingsItems.entries()) {\n // Ungrouped items are collected as orphans rendered at the bottom\n if (!isUserMenuSettingsGroup(userMenuSettingsItem)) {\n ungroupedItems.push(\n RenderServerComponent({\n clientProps,\n Component: userMenuSettingsItem,\n importMap: payload.importMap,\n key: `user-menu-settings-ungrouped-${itemIndex}`,\n serverProps,\n }),\n )\n\n continue\n }\n\n const groupLabel = getTranslation(userMenuSettingsItem.group, i18n)\n const existingItems = groupedItemsByLabel.get(groupLabel)\n const renderedItems = userMenuSettingsItem.items.map((groupedItem, groupedItemIndex) =>\n RenderServerComponent({\n clientProps,\n Component: groupedItem,\n importMap: payload.importMap,\n key: `user-menu-settings-group-${groupLabel}-${itemIndex}-${groupedItemIndex}`,\n serverProps,\n }),\n )\n\n if (existingItems) {\n existingItems.push(...renderedItems)\n } else if (renderedItems.length > 0) {\n groupedItemsByLabel.set(groupLabel, renderedItems)\n groupLabels.push(groupLabel)\n }\n }\n\n for (const groupLabel of groupLabels) {\n const items = groupedItemsByLabel.get(groupLabel)\n if (items?.length) {\n settingsItemGroups.push({\n group: groupLabel,\n items,\n })\n }\n }\n\n if (ungroupedItems.length > 0) {\n settingsItemGroups.push({\n items: ungroupedItems,\n })\n }\n }\n\n const NavComponent = RenderServerComponent({\n clientProps,\n Component: CustomNav,\n Fallback: DefaultNav,\n importMap: payload.importMap,\n serverProps,\n })\n\n return (\n <EntityVisibilityProvider visibleEntities={visibleEntities}>\n <CommandPalette />\n <BulkUploadProvider drawerSlugPrefix={collectionSlug}>\n <ActionsProvider Actions={Actions}>\n {RenderServerComponent({\n clientProps,\n Component: CustomHeader,\n importMap: payload.importMap,\n serverProps,\n })}\n <div style={{ position: 'relative' }}>\n <Wrapper baseClass={baseClass} className={className}>\n {NavComponent}\n <div className={`${baseClass}__wrap`}>\n <AppHeader\n CustomAvatar={\n avatar !== 'gravatar' && avatar !== 'default'\n ? RenderServerComponent({\n Component: avatar.Component,\n importMap: payload.importMap,\n serverProps,\n })\n : undefined\n }\n settingsItemGroups={settingsItemGroups}\n />\n {children}\n </div>\n </Wrapper>\n </div>\n </ActionsProvider>\n </BulkUploadProvider>\n </EntityVisibilityProvider>\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -8,8 +8,8 @@ import { useDocumentDrawer } from '../../../elements/DocumentDrawer/index.js';
8
8
  import { EditMany } from '../../../elements/EditMany/index.js';
9
9
  import { MoveMany } from '../../../elements/Hierarchy/MoveMany/index.js';
10
10
  import { ListSelection_v4, ListSelectionButton } from '../../../elements/ListSelection/index.js';
11
- import { PublishMany_v4 } from '../../../elements/PublishMany/index.js';
12
- import { UnpublishMany_v4 } from '../../../elements/UnpublishMany/index.js';
11
+ import { PublishMany } from '../../../elements/PublishMany/index.js';
12
+ import { UnpublishMany } from '../../../elements/UnpublishMany/index.js';
13
13
  import { useConfig } from '../../../providers/Config/index.js';
14
14
  import { useDocumentSelection } from '../../../providers/DocumentSelection/index.js';
15
15
  import { useHierarchy } from '../../../providers/Hierarchy/index.js';
@@ -141,14 +141,14 @@ export const DocumentListSelection = t0 => {
141
141
  modalPrefix: "hierarchy-list",
142
142
  onSuccess: handleActionSuccess,
143
143
  selectAll: false
144
- }), _jsx(PublishMany_v4, {
144
+ }), _jsx(PublishMany, {
145
145
  collection: collectionConfig,
146
146
  count: ids.length,
147
147
  ids,
148
148
  modalPrefix: "hierarchy-list",
149
149
  onSuccess: handleActionSuccess,
150
150
  selectAll: false
151
- }), _jsx(UnpublishMany_v4, {
151
+ }), _jsx(UnpublishMany, {
152
152
  collection: collectionConfig,
153
153
  count: ids.length,
154
154
  ids,
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["c","_c","React","Fragment","DeleteMany","useDocumentDrawer","EditMany","MoveMany","ListSelection_v4","ListSelectionButton","PublishMany_v4","UnpublishMany_v4","useConfig","useDocumentSelection","useHierarchy","useRouteCache","useTranslation","SingleHierarchyEdit","t0","$","id","collectionSlug","onSuccess","t","t1","DocumentDrawer","t2","openDrawer","t3","_jsxs","children","_jsx","onClick","onSave","DocumentListSelection","disableBulkDelete","disableBulkEdit","hierarchyIcon","hierarchySlug","clearAll","getSelectionsForActions","getTotalCount","parent","refreshTree","clearRouteCache","config","Symbol","for","bb0","count","groupedSelections","collectionSlugs","Object","keys","singleCollectionSelected","length","singleCollectionSlug","collectionConfig","collections","find","collection","slug","ids","singleHierarchySelected","handleActionSuccess","ListActions","SelectionActions","modalPrefix","selectAll","afterDelete","selections","currentParentID","Icon","filter","Boolean"],"sources":["../../../../src/views/HierarchyList/DocumentListSelection/index.tsx"],"sourcesContent":["'use client'\n\nimport React, { Fragment } from 'react'\n\nimport { DeleteMany } from '../../../elements/DeleteMany/index.js'\nimport { useDocumentDrawer } from '../../../elements/DocumentDrawer/index.js'\nimport { EditMany } from '../../../elements/EditMany/index.js'\nimport { MoveMany } from '../../../elements/Hierarchy/MoveMany/index.js'\nimport { ListSelection_v4, ListSelectionButton } from '../../../elements/ListSelection/index.js'\nimport { PublishMany_v4 } from '../../../elements/PublishMany/index.js'\nimport { UnpublishMany_v4 } from '../../../elements/UnpublishMany/index.js'\nimport { useConfig } from '../../../providers/Config/index.js'\nimport { useDocumentSelection } from '../../../providers/DocumentSelection/index.js'\nimport { useHierarchy } from '../../../providers/Hierarchy/index.js'\nimport { useRouteCache } from '../../../providers/RouteCache/index.js'\nimport { useTranslation } from '../../../providers/Translation/index.js'\n\nexport type DocumentListSelectionProps = {\n disableBulkDelete?: boolean\n disableBulkEdit?: boolean\n /** Icon to display in the move drawer */\n hierarchyIcon?: React.ReactNode\n hierarchySlug?: string\n}\n\n/**\n * Separate component for single hierarchy item edit\n * Isolates useDocumentDrawer hook so it only runs when actually needed\n */\nconst SingleHierarchyEdit: React.FC<{\n collectionSlug: string\n id: number | string\n onSuccess: () => void\n}> = ({ id, collectionSlug, onSuccess }) => {\n const { t } = useTranslation()\n const [DocumentDrawer, , { openDrawer }] = useDocumentDrawer({\n id,\n collectionSlug,\n })\n\n return (\n <Fragment>\n <ListSelectionButton onClick={openDrawer}>{t('general:edit')}</ListSelectionButton>\n <DocumentDrawer onSave={onSuccess} />\n </Fragment>\n )\n}\n\nexport const DocumentListSelection: React.FC<DocumentListSelectionProps> = ({\n disableBulkDelete,\n disableBulkEdit,\n hierarchyIcon,\n hierarchySlug,\n}) => {\n const { clearAll, getSelectionsForActions, getTotalCount } = useDocumentSelection()\n const { parent, refreshTree } = useHierarchy()\n const { clearRouteCache } = useRouteCache()\n const { config } = useConfig()\n const { t } = useTranslation()\n\n const count = getTotalCount()\n const groupedSelections = getSelectionsForActions()\n\n const collectionSlugs = Object.keys(groupedSelections)\n const singleCollectionSelected = collectionSlugs.length === 1\n const singleCollectionSlug = singleCollectionSelected ? collectionSlugs[0] : null\n\n const collectionConfig = singleCollectionSlug\n ? config.collections.find((collection) => collection.slug === singleCollectionSlug)\n : null\n\n const ids = singleCollectionSelected ? groupedSelections[singleCollectionSlug]?.ids || [] : []\n\n // Check if single hierarchy item is selected (for direct edit)\n // Only available when hierarchySlug is provided\n const singleHierarchySelected =\n hierarchySlug && singleCollectionSlug === hierarchySlug && ids.length === 1 ? ids[0] : null\n\n if (count === 0) {\n return null\n }\n\n const handleActionSuccess = () => {\n clearRouteCache()\n if (hierarchySlug) {\n refreshTree(hierarchySlug)\n }\n clearAll()\n }\n\n return (\n <ListSelection_v4\n count={count}\n ListActions={[\n <ListSelectionButton key=\"clear-all\" onClick={() => clearAll()}>\n {t('general:clearAll')}\n </ListSelectionButton>,\n ]}\n SelectionActions={[\n // Single hierarchy item selected - show direct edit button\n singleHierarchySelected && hierarchySlug && (\n <SingleHierarchyEdit\n collectionSlug={hierarchySlug}\n id={singleHierarchySelected}\n key=\"single-edit\"\n onSuccess={handleActionSuccess}\n />\n ),\n // Multiple items or non-hierarchy items - show bulk actions\n !disableBulkEdit &&\n !singleHierarchySelected &&\n singleCollectionSelected &&\n collectionConfig &&\n ids.length > 0 && (\n <Fragment key=\"bulk-actions\">\n <EditMany\n collection={collectionConfig}\n count={ids.length}\n ids={ids}\n modalPrefix=\"hierarchy-list\"\n onSuccess={handleActionSuccess}\n selectAll={false}\n />\n <PublishMany_v4\n collection={collectionConfig}\n count={ids.length}\n ids={ids}\n modalPrefix=\"hierarchy-list\"\n onSuccess={handleActionSuccess}\n selectAll={false}\n />\n <UnpublishMany_v4\n collection={collectionConfig}\n count={ids.length}\n ids={ids}\n modalPrefix=\"hierarchy-list\"\n onSuccess={handleActionSuccess}\n selectAll={false}\n />\n </Fragment>\n ),\n !disableBulkDelete && (\n <DeleteMany\n afterDelete={handleActionSuccess}\n key=\"bulk-delete\"\n modalPrefix=\"hierarchy-list\"\n selections={groupedSelections}\n />\n ),\n hierarchySlug && (\n <MoveMany\n currentParentID={parent?.id || null}\n hierarchySlug={hierarchySlug}\n Icon={hierarchyIcon}\n key=\"bulk-move\"\n modalPrefix=\"hierarchy-list\"\n onSuccess={handleActionSuccess}\n selections={groupedSelections}\n />\n ),\n ].filter(Boolean)}\n />\n )\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["c","_c","React","Fragment","DeleteMany","useDocumentDrawer","EditMany","MoveMany","ListSelection_v4","ListSelectionButton","PublishMany","UnpublishMany","useConfig","useDocumentSelection","useHierarchy","useRouteCache","useTranslation","SingleHierarchyEdit","t0","$","id","collectionSlug","onSuccess","t","t1","DocumentDrawer","t2","openDrawer","t3","_jsxs","children","_jsx","onClick","onSave","DocumentListSelection","disableBulkDelete","disableBulkEdit","hierarchyIcon","hierarchySlug","clearAll","getSelectionsForActions","getTotalCount","parent","refreshTree","clearRouteCache","config","Symbol","for","bb0","count","groupedSelections","collectionSlugs","Object","keys","singleCollectionSelected","length","singleCollectionSlug","collectionConfig","collections","find","collection","slug","ids","singleHierarchySelected","handleActionSuccess","ListActions","SelectionActions","modalPrefix","selectAll","afterDelete","selections","currentParentID","Icon","filter","Boolean"],"sources":["../../../../src/views/HierarchyList/DocumentListSelection/index.tsx"],"sourcesContent":["'use client'\n\nimport React, { Fragment } from 'react'\n\nimport { DeleteMany } from '../../../elements/DeleteMany/index.js'\nimport { useDocumentDrawer } from '../../../elements/DocumentDrawer/index.js'\nimport { EditMany } from '../../../elements/EditMany/index.js'\nimport { MoveMany } from '../../../elements/Hierarchy/MoveMany/index.js'\nimport { ListSelection_v4, ListSelectionButton } from '../../../elements/ListSelection/index.js'\nimport { PublishMany } from '../../../elements/PublishMany/index.js'\nimport { UnpublishMany } from '../../../elements/UnpublishMany/index.js'\nimport { useConfig } from '../../../providers/Config/index.js'\nimport { useDocumentSelection } from '../../../providers/DocumentSelection/index.js'\nimport { useHierarchy } from '../../../providers/Hierarchy/index.js'\nimport { useRouteCache } from '../../../providers/RouteCache/index.js'\nimport { useTranslation } from '../../../providers/Translation/index.js'\n\nexport type DocumentListSelectionProps = {\n disableBulkDelete?: boolean\n disableBulkEdit?: boolean\n /** Icon to display in the move drawer */\n hierarchyIcon?: React.ReactNode\n hierarchySlug?: string\n}\n\n/**\n * Separate component for single hierarchy item edit\n * Isolates useDocumentDrawer hook so it only runs when actually needed\n */\nconst SingleHierarchyEdit: React.FC<{\n collectionSlug: string\n id: number | string\n onSuccess: () => void\n}> = ({ id, collectionSlug, onSuccess }) => {\n const { t } = useTranslation()\n const [DocumentDrawer, , { openDrawer }] = useDocumentDrawer({\n id,\n collectionSlug,\n })\n\n return (\n <Fragment>\n <ListSelectionButton onClick={openDrawer}>{t('general:edit')}</ListSelectionButton>\n <DocumentDrawer onSave={onSuccess} />\n </Fragment>\n )\n}\n\nexport const DocumentListSelection: React.FC<DocumentListSelectionProps> = ({\n disableBulkDelete,\n disableBulkEdit,\n hierarchyIcon,\n hierarchySlug,\n}) => {\n const { clearAll, getSelectionsForActions, getTotalCount } = useDocumentSelection()\n const { parent, refreshTree } = useHierarchy()\n const { clearRouteCache } = useRouteCache()\n const { config } = useConfig()\n const { t } = useTranslation()\n\n const count = getTotalCount()\n const groupedSelections = getSelectionsForActions()\n\n const collectionSlugs = Object.keys(groupedSelections)\n const singleCollectionSelected = collectionSlugs.length === 1\n const singleCollectionSlug = singleCollectionSelected ? collectionSlugs[0] : null\n\n const collectionConfig = singleCollectionSlug\n ? config.collections.find((collection) => collection.slug === singleCollectionSlug)\n : null\n\n const ids = singleCollectionSelected ? groupedSelections[singleCollectionSlug]?.ids || [] : []\n\n // Check if single hierarchy item is selected (for direct edit)\n // Only available when hierarchySlug is provided\n const singleHierarchySelected =\n hierarchySlug && singleCollectionSlug === hierarchySlug && ids.length === 1 ? ids[0] : null\n\n if (count === 0) {\n return null\n }\n\n const handleActionSuccess = () => {\n clearRouteCache()\n if (hierarchySlug) {\n refreshTree(hierarchySlug)\n }\n clearAll()\n }\n\n return (\n <ListSelection_v4\n count={count}\n ListActions={[\n <ListSelectionButton key=\"clear-all\" onClick={() => clearAll()}>\n {t('general:clearAll')}\n </ListSelectionButton>,\n ]}\n SelectionActions={[\n // Single hierarchy item selected - show direct edit button\n singleHierarchySelected && hierarchySlug && (\n <SingleHierarchyEdit\n collectionSlug={hierarchySlug}\n id={singleHierarchySelected}\n key=\"single-edit\"\n onSuccess={handleActionSuccess}\n />\n ),\n // Multiple items or non-hierarchy items - show bulk actions\n !disableBulkEdit &&\n !singleHierarchySelected &&\n singleCollectionSelected &&\n collectionConfig &&\n ids.length > 0 && (\n <Fragment key=\"bulk-actions\">\n <EditMany\n collection={collectionConfig}\n count={ids.length}\n ids={ids}\n modalPrefix=\"hierarchy-list\"\n onSuccess={handleActionSuccess}\n selectAll={false}\n />\n <PublishMany\n collection={collectionConfig}\n count={ids.length}\n ids={ids}\n modalPrefix=\"hierarchy-list\"\n onSuccess={handleActionSuccess}\n selectAll={false}\n />\n <UnpublishMany\n collection={collectionConfig}\n count={ids.length}\n ids={ids}\n modalPrefix=\"hierarchy-list\"\n onSuccess={handleActionSuccess}\n selectAll={false}\n />\n </Fragment>\n ),\n !disableBulkDelete && (\n <DeleteMany\n afterDelete={handleActionSuccess}\n key=\"bulk-delete\"\n modalPrefix=\"hierarchy-list\"\n selections={groupedSelections}\n />\n ),\n hierarchySlug && (\n <MoveMany\n currentParentID={parent?.id || null}\n hierarchySlug={hierarchySlug}\n Icon={hierarchyIcon}\n key=\"bulk-move\"\n modalPrefix=\"hierarchy-list\"\n onSuccess={handleActionSuccess}\n selections={groupedSelections}\n />\n ),\n ].filter(Boolean)}\n />\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -7,9 +7,9 @@ import React, { Fragment, useCallback } from 'react';
7
7
  import { DeleteMany } from '../../../elements/DeleteMany/index.js';
8
8
  import { EditMany } from '../../../elements/EditMany/index.js';
9
9
  import { ListSelection_v4, ListSelectionButton } from '../../../elements/ListSelection/index.js';
10
- import { PublishMany_v4 } from '../../../elements/PublishMany/index.js';
10
+ import { PublishMany } from '../../../elements/PublishMany/index.js';
11
11
  import { RestoreMany } from '../../../elements/RestoreMany/index.js';
12
- import { UnpublishMany_v4 } from '../../../elements/UnpublishMany/index.js';
12
+ import { UnpublishMany } from '../../../elements/UnpublishMany/index.js';
13
13
  import { useAuth } from '../../../providers/Auth/index.js';
14
14
  import { useRouteCache } from '../../../providers/RouteCache/index.js';
15
15
  import { useRouter, useSearchParams } from '../../../providers/RouterAdapter/index.js';
@@ -101,7 +101,7 @@ export const ListSelection = t0 => {
101
101
  onSuccess: onActionSuccess,
102
102
  selectAll: selectAll === SelectAllStatus.AllAvailable,
103
103
  where
104
- }), _jsx(PublishMany_v4, {
104
+ }), _jsx(PublishMany, {
105
105
  collection: collectionConfig,
106
106
  count,
107
107
  ids: selectedIDs,
@@ -109,7 +109,7 @@ export const ListSelection = t0 => {
109
109
  onSuccess: onActionSuccess,
110
110
  selectAll: selectAll === SelectAllStatus.AllAvailable,
111
111
  where
112
- }), _jsx(UnpublishMany_v4, {
112
+ }), _jsx(UnpublishMany, {
113
113
  collection: collectionConfig,
114
114
  count,
115
115
  ids: selectedIDs,
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["c","_c","qs","React","Fragment","useCallback","DeleteMany","EditMany","ListSelection_v4","ListSelectionButton","PublishMany_v4","RestoreMany","UnpublishMany_v4","useAuth","useRouteCache","useRouter","useSearchParams","SelectAllStatus","useSelection","useTranslation","parseSearchParams","ListSelection","t0","$","collectionConfig","disableBulkDelete","disableBulkEdit","hasDeletePermission","hasDeletePermissionFromProps","hasTrashPermission","hasTrashPermissionFromProps","label","modalPrefix","showSelectAllAcrossPages","t1","viewType","where","undefined","count","selectAll","selectedIDs","toggleAll","totalDocs","t","permissions","router","searchParams","clearRouteCache","t2","onActionSuccess","isTrashView","trash","collectionPermissions","collections","slug","Boolean","delete","canShowDeleteButton","selectingAll","AllAvailable","t3","deleteIDs","baseWhere","deleteWhere","and","Array","isArray","deletedAt","exists","_jsx","ListActions","id","onClick","children","filter","SelectionActions","_jsxs","collection","ids","onSuccess","afterDelete","replace","stringify","page","addQueryPrefix","search","selections","all","totalCount","length"],"sources":["../../../../src/views/List/ListSelection/index.tsx"],"sourcesContent":["'use client'\nimport type { ClientCollectionConfig, ViewTypes, Where } from 'payload'\n\nimport * as qs from 'qs-esm'\nimport React, { Fragment, useCallback } from 'react'\n\nimport { DeleteMany } from '../../../elements/DeleteMany/index.js'\nimport { EditMany } from '../../../elements/EditMany/index.js'\nimport { ListSelection_v4, ListSelectionButton } from '../../../elements/ListSelection/index.js'\nimport { PublishMany_v4 } from '../../../elements/PublishMany/index.js'\nimport { RestoreMany } from '../../../elements/RestoreMany/index.js'\nimport { UnpublishMany_v4 } from '../../../elements/UnpublishMany/index.js'\nimport { useAuth } from '../../../providers/Auth/index.js'\nimport { useRouteCache } from '../../../providers/RouteCache/index.js'\nimport { useRouter, useSearchParams } from '../../../providers/RouterAdapter/index.js'\nimport { SelectAllStatus, useSelection } from '../../../providers/Selection/index.js'\nimport { useTranslation } from '../../../providers/Translation/index.js'\nimport { parseSearchParams } from '../../../utilities/parseSearchParams.js'\n\nexport type ListSelectionProps = {\n collectionConfig?: ClientCollectionConfig\n disableBulkDelete?: boolean\n disableBulkEdit?: boolean\n hasDeletePermission?: boolean\n hasTrashPermission?: boolean\n label: string\n modalPrefix?: string\n showSelectAllAcrossPages?: boolean\n viewType?: ViewTypes\n where?: Where\n}\n\nexport const ListSelection: React.FC<ListSelectionProps> = ({\n collectionConfig,\n disableBulkDelete,\n disableBulkEdit,\n hasDeletePermission: hasDeletePermissionFromProps,\n hasTrashPermission: hasTrashPermissionFromProps,\n label,\n modalPrefix,\n showSelectAllAcrossPages = true,\n viewType,\n where,\n}) => {\n const { count, selectAll, selectedIDs, toggleAll, totalDocs } = useSelection()\n const { t } = useTranslation()\n const { permissions } = useAuth()\n const router = useRouter()\n const searchParams = useSearchParams()\n const { clearRouteCache } = useRouteCache()\n\n const onActionSuccess = useCallback(() => toggleAll(), [toggleAll])\n\n if (count === 0) {\n return null\n }\n\n const isTrashView = collectionConfig?.trash && viewType === 'trash'\n\n const collectionPermissions = permissions?.collections?.[collectionConfig?.slug]\n const hasDeletePermission =\n hasDeletePermissionFromProps !== undefined\n ? hasDeletePermissionFromProps\n : Boolean(collectionPermissions?.delete)\n const hasTrashPermission =\n hasTrashPermissionFromProps !== undefined ? hasTrashPermissionFromProps : hasDeletePermission\n const canShowDeleteButton =\n viewType === 'trash' ? hasDeletePermission : hasDeletePermission || hasTrashPermission\n\n const selectingAll = selectAll === SelectAllStatus.AllAvailable\n const deleteIDs = selectingAll ? [] : selectedIDs\n const baseWhere = parseSearchParams(searchParams)?.where as Where\n const deleteWhere =\n viewType === 'trash'\n ? {\n and: [\n ...(Array.isArray(baseWhere?.and) ? baseWhere.and : baseWhere ? [baseWhere] : []),\n { deletedAt: { exists: true } },\n ],\n }\n : baseWhere\n\n return (\n <ListSelection_v4\n count={count}\n ListActions={[\n selectAll !== SelectAllStatus.AllAvailable &&\n count < totalDocs &&\n showSelectAllAcrossPages !== false ? (\n <ListSelectionButton\n aria-label={t('general:selectAll', { count: `(${totalDocs})`, label })}\n id=\"select-all-across-pages\"\n key=\"select-all\"\n onClick={() => toggleAll(true)}\n >\n {t('general:selectAll', { count: `(${totalDocs})`, label: '' })}\n </ListSelectionButton>\n ) : null,\n ].filter(Boolean)}\n SelectionActions={[\n !disableBulkEdit && !isTrashView && (\n <Fragment key=\"bulk-actions\">\n <EditMany\n collection={collectionConfig}\n count={count}\n ids={selectedIDs}\n modalPrefix={modalPrefix}\n onSuccess={onActionSuccess}\n selectAll={selectAll === SelectAllStatus.AllAvailable}\n where={where}\n />\n <PublishMany_v4\n collection={collectionConfig}\n count={count}\n ids={selectedIDs}\n modalPrefix={modalPrefix}\n onSuccess={onActionSuccess}\n selectAll={selectAll === SelectAllStatus.AllAvailable}\n where={where}\n />\n <UnpublishMany_v4\n collection={collectionConfig}\n count={count}\n ids={selectedIDs}\n modalPrefix={modalPrefix}\n onSuccess={onActionSuccess}\n selectAll={selectAll === SelectAllStatus.AllAvailable}\n where={where}\n />\n </Fragment>\n ),\n isTrashView && (\n <RestoreMany collection={collectionConfig} key=\"bulk-restore\" viewType={viewType} />\n ),\n !disableBulkDelete && canShowDeleteButton && collectionConfig && (\n <DeleteMany\n afterDelete={() => {\n toggleAll()\n\n router.replace(\n qs.stringify(\n {\n ...parseSearchParams(searchParams),\n page: selectAll ? '1' : undefined,\n },\n { addQueryPrefix: true },\n ),\n )\n\n clearRouteCache()\n }}\n hasDeletePermission={hasDeletePermission}\n hasTrashPermission={hasTrashPermission}\n key=\"bulk-delete\"\n modalPrefix={modalPrefix}\n search={parseSearchParams(searchParams)?.search as string}\n selections={{\n [collectionConfig.slug]: {\n all: selectingAll,\n ids: deleteIDs,\n totalCount: selectingAll ? count : deleteIDs.length,\n },\n }}\n trash={collectionConfig?.trash}\n viewType={viewType}\n where={deleteWhere}\n />\n ),\n ].filter(Boolean)}\n />\n )\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["c","_c","qs","React","Fragment","useCallback","DeleteMany","EditMany","ListSelection_v4","ListSelectionButton","PublishMany","RestoreMany","UnpublishMany","useAuth","useRouteCache","useRouter","useSearchParams","SelectAllStatus","useSelection","useTranslation","parseSearchParams","ListSelection","t0","$","collectionConfig","disableBulkDelete","disableBulkEdit","hasDeletePermission","hasDeletePermissionFromProps","hasTrashPermission","hasTrashPermissionFromProps","label","modalPrefix","showSelectAllAcrossPages","t1","viewType","where","undefined","count","selectAll","selectedIDs","toggleAll","totalDocs","t","permissions","router","searchParams","clearRouteCache","t2","onActionSuccess","isTrashView","trash","collectionPermissions","collections","slug","Boolean","delete","canShowDeleteButton","selectingAll","AllAvailable","t3","deleteIDs","baseWhere","deleteWhere","and","Array","isArray","deletedAt","exists","_jsx","ListActions","id","onClick","children","filter","SelectionActions","_jsxs","collection","ids","onSuccess","afterDelete","replace","stringify","page","addQueryPrefix","search","selections","all","totalCount","length"],"sources":["../../../../src/views/List/ListSelection/index.tsx"],"sourcesContent":["'use client'\nimport type { ClientCollectionConfig, ViewTypes, Where } from 'payload'\n\nimport * as qs from 'qs-esm'\nimport React, { Fragment, useCallback } from 'react'\n\nimport { DeleteMany } from '../../../elements/DeleteMany/index.js'\nimport { EditMany } from '../../../elements/EditMany/index.js'\nimport { ListSelection_v4, ListSelectionButton } from '../../../elements/ListSelection/index.js'\nimport { PublishMany } from '../../../elements/PublishMany/index.js'\nimport { RestoreMany } from '../../../elements/RestoreMany/index.js'\nimport { UnpublishMany } from '../../../elements/UnpublishMany/index.js'\nimport { useAuth } from '../../../providers/Auth/index.js'\nimport { useRouteCache } from '../../../providers/RouteCache/index.js'\nimport { useRouter, useSearchParams } from '../../../providers/RouterAdapter/index.js'\nimport { SelectAllStatus, useSelection } from '../../../providers/Selection/index.js'\nimport { useTranslation } from '../../../providers/Translation/index.js'\nimport { parseSearchParams } from '../../../utilities/parseSearchParams.js'\n\nexport type ListSelectionProps = {\n collectionConfig?: ClientCollectionConfig\n disableBulkDelete?: boolean\n disableBulkEdit?: boolean\n hasDeletePermission?: boolean\n hasTrashPermission?: boolean\n label: string\n modalPrefix?: string\n showSelectAllAcrossPages?: boolean\n viewType?: ViewTypes\n where?: Where\n}\n\nexport const ListSelection: React.FC<ListSelectionProps> = ({\n collectionConfig,\n disableBulkDelete,\n disableBulkEdit,\n hasDeletePermission: hasDeletePermissionFromProps,\n hasTrashPermission: hasTrashPermissionFromProps,\n label,\n modalPrefix,\n showSelectAllAcrossPages = true,\n viewType,\n where,\n}) => {\n const { count, selectAll, selectedIDs, toggleAll, totalDocs } = useSelection()\n const { t } = useTranslation()\n const { permissions } = useAuth()\n const router = useRouter()\n const searchParams = useSearchParams()\n const { clearRouteCache } = useRouteCache()\n\n const onActionSuccess = useCallback(() => toggleAll(), [toggleAll])\n\n if (count === 0) {\n return null\n }\n\n const isTrashView = collectionConfig?.trash && viewType === 'trash'\n\n const collectionPermissions = permissions?.collections?.[collectionConfig?.slug]\n const hasDeletePermission =\n hasDeletePermissionFromProps !== undefined\n ? hasDeletePermissionFromProps\n : Boolean(collectionPermissions?.delete)\n const hasTrashPermission =\n hasTrashPermissionFromProps !== undefined ? hasTrashPermissionFromProps : hasDeletePermission\n const canShowDeleteButton =\n viewType === 'trash' ? hasDeletePermission : hasDeletePermission || hasTrashPermission\n\n const selectingAll = selectAll === SelectAllStatus.AllAvailable\n const deleteIDs = selectingAll ? [] : selectedIDs\n const baseWhere = parseSearchParams(searchParams)?.where as Where\n const deleteWhere =\n viewType === 'trash'\n ? {\n and: [\n ...(Array.isArray(baseWhere?.and) ? baseWhere.and : baseWhere ? [baseWhere] : []),\n { deletedAt: { exists: true } },\n ],\n }\n : baseWhere\n\n return (\n <ListSelection_v4\n count={count}\n ListActions={[\n selectAll !== SelectAllStatus.AllAvailable &&\n count < totalDocs &&\n showSelectAllAcrossPages !== false ? (\n <ListSelectionButton\n aria-label={t('general:selectAll', { count: `(${totalDocs})`, label })}\n id=\"select-all-across-pages\"\n key=\"select-all\"\n onClick={() => toggleAll(true)}\n >\n {t('general:selectAll', { count: `(${totalDocs})`, label: '' })}\n </ListSelectionButton>\n ) : null,\n ].filter(Boolean)}\n SelectionActions={[\n !disableBulkEdit && !isTrashView && (\n <Fragment key=\"bulk-actions\">\n <EditMany\n collection={collectionConfig}\n count={count}\n ids={selectedIDs}\n modalPrefix={modalPrefix}\n onSuccess={onActionSuccess}\n selectAll={selectAll === SelectAllStatus.AllAvailable}\n where={where}\n />\n <PublishMany\n collection={collectionConfig}\n count={count}\n ids={selectedIDs}\n modalPrefix={modalPrefix}\n onSuccess={onActionSuccess}\n selectAll={selectAll === SelectAllStatus.AllAvailable}\n where={where}\n />\n <UnpublishMany\n collection={collectionConfig}\n count={count}\n ids={selectedIDs}\n modalPrefix={modalPrefix}\n onSuccess={onActionSuccess}\n selectAll={selectAll === SelectAllStatus.AllAvailable}\n where={where}\n />\n </Fragment>\n ),\n isTrashView && (\n <RestoreMany collection={collectionConfig} key=\"bulk-restore\" viewType={viewType} />\n ),\n !disableBulkDelete && canShowDeleteButton && collectionConfig && (\n <DeleteMany\n afterDelete={() => {\n toggleAll()\n\n router.replace(\n qs.stringify(\n {\n ...parseSearchParams(searchParams),\n page: selectAll ? '1' : undefined,\n },\n { addQueryPrefix: true },\n ),\n )\n\n clearRouteCache()\n }}\n hasDeletePermission={hasDeletePermission}\n hasTrashPermission={hasTrashPermission}\n key=\"bulk-delete\"\n modalPrefix={modalPrefix}\n search={parseSearchParams(searchParams)?.search as string}\n selections={{\n [collectionConfig.slug]: {\n all: selectingAll,\n ids: deleteIDs,\n totalCount: selectingAll ? count : deleteIDs.length,\n },\n }}\n trash={collectionConfig?.trash}\n viewType={viewType}\n where={deleteWhere}\n />\n ),\n ].filter(Boolean)}\n />\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"renderListViewSlots.d.ts","sourceRoot":"","sources":["../../../src/views/List/renderListViewSlots.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAQV,uBAAuB,EACvB,aAAa,EACb,6BAA6B,EAG7B,OAAO,EACP,yBAAyB,EACzB,iBAAiB,EAGlB,MAAM,SAAS,CAAA;AAOhB,KAAK,IAAI,GAAG;IACV,WAAW,EAAE,6BAA6B,CAAA;IAC1C,gBAAgB,EAAE,yBAAyB,CAAA;IAC3C,WAAW,CAAC,EAAE,iBAAiB,CAAA;IAC/B,aAAa,CAAC,EAAE,IAAI,GAAG,MAAM,CAAA;IAC7B,OAAO,EAAE,OAAO,CAAA;IAChB,WAAW,EAAE,uBAAuB,CAAA;CACrC,CAAA;AAED,eAAO,MAAM,mBAAmB,GAAI,sFAOjC,IAAI,KAAG,aA4FT,CAAA"}
1
+ {"version":3,"file":"renderListViewSlots.d.ts","sourceRoot":"","sources":["../../../src/views/List/renderListViewSlots.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAQV,uBAAuB,EACvB,aAAa,EACb,6BAA6B,EAG7B,OAAO,EACP,yBAAyB,EACzB,iBAAiB,EAGlB,MAAM,SAAS,CAAA;AAOhB,KAAK,IAAI,GAAG;IACV,WAAW,EAAE,6BAA6B,CAAA;IAC1C,gBAAgB,EAAE,yBAAyB,CAAA;IAC3C,WAAW,CAAC,EAAE,iBAAiB,CAAA;IAC/B,aAAa,CAAC,EAAE,IAAI,GAAG,MAAM,CAAA;IAC7B,OAAO,EAAE,OAAO,CAAA;IAChB,WAAW,EAAE,uBAAuB,CAAA;CACrC,CAAA;AAED,eAAO,MAAM,mBAAmB,GAAI,sFAOjC,IAAI,KAAG,aAiGT,CAAA"}
@@ -77,12 +77,15 @@ export const renderListViewSlots = ({
77
77
  });
78
78
  }
79
79
  if (collectionConfig.admin.components?.views?.list?.NoResults) {
80
- result.NoResults = RenderServerComponent({
81
- clientProps: clientProps,
82
- Component: collectionConfig.admin.components.views.list.NoResults,
83
- importMap: payload.importMap,
84
- serverProps: serverProps
85
- });
80
+ result.NoResults = /*#__PURE__*/_jsx(React.Fragment, {
81
+ children: RenderServerComponent({
82
+ clientProps: clientProps,
83
+ Component: collectionConfig.admin.components.views.list.NoResults,
84
+ importMap: payload.importMap,
85
+ key: 'list-view-no-results',
86
+ serverProps: serverProps
87
+ })
88
+ }, "list-view-no-results");
86
89
  }
87
90
  return result;
88
91
  };
@@ -1 +1 @@
1
- {"version":3,"file":"renderListViewSlots.js","names":["React","Banner","RenderServerComponent","renderListViewSlots","clientProps","collectionConfig","description","notFoundDocId","payload","serverProps","result","admin","components","afterList","AfterList","Component","importMap","listMenuItems","Array","isArray","afterListTable","AfterListTable","beforeList","BeforeList","existingBeforeListTable","beforeListTable","notFoundBanner","_jsx","className","type","i18n","t","id","BeforeListTable","_jsxs","Fragment","Description","collectionSlug","slug","views","list","NoResults"],"sources":["../../../src/views/List/renderListViewSlots.tsx"],"sourcesContent":["import type {\n AfterListClientProps,\n AfterListTableClientProps,\n AfterListTableServerPropsOnly,\n BeforeListClientProps,\n BeforeListServerPropsOnly,\n BeforeListTableClientProps,\n BeforeListTableServerPropsOnly,\n ListViewServerPropsOnly,\n ListViewSlots,\n ListViewSlotSharedClientProps,\n NoResultsClientProps,\n NoResultsServerPropsOnly,\n Payload,\n SanitizedCollectionConfig,\n StaticDescription,\n ViewDescriptionClientProps,\n ViewDescriptionServerPropsOnly,\n} from 'payload'\n\nimport React from 'react'\n\nimport { Banner } from '../../elements/Banner/index.js'\nimport { RenderServerComponent } from '../../elements/RenderServerComponent/index.js'\n\ntype Args = {\n clientProps: ListViewSlotSharedClientProps\n collectionConfig: SanitizedCollectionConfig\n description?: StaticDescription\n notFoundDocId?: null | string\n payload: Payload\n serverProps: ListViewServerPropsOnly\n}\n\nexport const renderListViewSlots = ({\n clientProps,\n collectionConfig,\n description,\n notFoundDocId,\n payload,\n serverProps,\n}: Args): ListViewSlots => {\n const result: ListViewSlots = {} as ListViewSlots\n\n if (collectionConfig.admin.components?.afterList) {\n result.AfterList = RenderServerComponent({\n clientProps: clientProps satisfies AfterListClientProps,\n Component: collectionConfig.admin.components.afterList,\n importMap: payload.importMap,\n serverProps: serverProps satisfies AfterListTableServerPropsOnly,\n })\n }\n\n const listMenuItems = collectionConfig.admin.components?.listMenuItems\n\n if (Array.isArray(listMenuItems)) {\n result.listMenuItems = [\n RenderServerComponent({\n clientProps,\n Component: listMenuItems,\n importMap: payload.importMap,\n serverProps,\n }),\n ]\n }\n\n if (collectionConfig.admin.components?.afterListTable) {\n result.AfterListTable = RenderServerComponent({\n clientProps: clientProps satisfies AfterListTableClientProps,\n Component: collectionConfig.admin.components.afterListTable,\n importMap: payload.importMap,\n serverProps: serverProps satisfies AfterListTableServerPropsOnly,\n })\n }\n\n if (collectionConfig.admin.components?.beforeList) {\n result.BeforeList = RenderServerComponent({\n clientProps: clientProps satisfies BeforeListClientProps,\n Component: collectionConfig.admin.components.beforeList,\n importMap: payload.importMap,\n serverProps: serverProps satisfies BeforeListServerPropsOnly,\n })\n }\n\n // Handle beforeListTable with optional banner\n const existingBeforeListTable = collectionConfig.admin.components?.beforeListTable\n ? RenderServerComponent({\n clientProps: clientProps satisfies BeforeListTableClientProps,\n Component: collectionConfig.admin.components.beforeListTable,\n importMap: payload.importMap,\n serverProps: serverProps satisfies BeforeListTableServerPropsOnly,\n })\n : null\n\n // Create banner for document not found\n const notFoundBanner = notFoundDocId ? (\n <Banner className=\"list-view__not-found-banner\" type=\"danger\">\n {serverProps.i18n.t('error:documentNotFound', { id: notFoundDocId })}\n </Banner>\n ) : null\n\n // Combine banner and existing component\n if (notFoundBanner || existingBeforeListTable) {\n result.BeforeListTable = (\n <React.Fragment>\n {notFoundBanner}\n {existingBeforeListTable}\n </React.Fragment>\n )\n }\n\n if (collectionConfig.admin.components?.Description) {\n result.Description = RenderServerComponent({\n clientProps: {\n collectionSlug: collectionConfig.slug,\n description,\n } satisfies ViewDescriptionClientProps,\n Component: collectionConfig.admin.components.Description,\n importMap: payload.importMap,\n serverProps: serverProps satisfies ViewDescriptionServerPropsOnly,\n })\n }\n\n if (collectionConfig.admin.components?.views?.list?.NoResults) {\n result.NoResults = RenderServerComponent({\n clientProps: clientProps satisfies NoResultsClientProps,\n Component: collectionConfig.admin.components.views.list.NoResults,\n importMap: payload.importMap,\n serverProps: serverProps satisfies NoResultsServerPropsOnly,\n })\n }\n\n return result\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"renderListViewSlots.js","names":["React","Banner","RenderServerComponent","renderListViewSlots","clientProps","collectionConfig","description","notFoundDocId","payload","serverProps","result","admin","components","afterList","AfterList","Component","importMap","listMenuItems","Array","isArray","afterListTable","AfterListTable","beforeList","BeforeList","existingBeforeListTable","beforeListTable","notFoundBanner","_jsx","className","type","i18n","t","id","BeforeListTable","_jsxs","Fragment","Description","collectionSlug","slug","views","list","NoResults","key"],"sources":["../../../src/views/List/renderListViewSlots.tsx"],"sourcesContent":["import type {\n AfterListClientProps,\n AfterListTableClientProps,\n AfterListTableServerPropsOnly,\n BeforeListClientProps,\n BeforeListServerPropsOnly,\n BeforeListTableClientProps,\n BeforeListTableServerPropsOnly,\n ListViewServerPropsOnly,\n ListViewSlots,\n ListViewSlotSharedClientProps,\n NoResultsClientProps,\n NoResultsServerPropsOnly,\n Payload,\n SanitizedCollectionConfig,\n StaticDescription,\n ViewDescriptionClientProps,\n ViewDescriptionServerPropsOnly,\n} from 'payload'\n\nimport React from 'react'\n\nimport { Banner } from '../../elements/Banner/index.js'\nimport { RenderServerComponent } from '../../elements/RenderServerComponent/index.js'\n\ntype Args = {\n clientProps: ListViewSlotSharedClientProps\n collectionConfig: SanitizedCollectionConfig\n description?: StaticDescription\n notFoundDocId?: null | string\n payload: Payload\n serverProps: ListViewServerPropsOnly\n}\n\nexport const renderListViewSlots = ({\n clientProps,\n collectionConfig,\n description,\n notFoundDocId,\n payload,\n serverProps,\n}: Args): ListViewSlots => {\n const result: ListViewSlots = {} as ListViewSlots\n\n if (collectionConfig.admin.components?.afterList) {\n result.AfterList = RenderServerComponent({\n clientProps: clientProps satisfies AfterListClientProps,\n Component: collectionConfig.admin.components.afterList,\n importMap: payload.importMap,\n serverProps: serverProps satisfies AfterListTableServerPropsOnly,\n })\n }\n\n const listMenuItems = collectionConfig.admin.components?.listMenuItems\n\n if (Array.isArray(listMenuItems)) {\n result.listMenuItems = [\n RenderServerComponent({\n clientProps,\n Component: listMenuItems,\n importMap: payload.importMap,\n serverProps,\n }),\n ]\n }\n\n if (collectionConfig.admin.components?.afterListTable) {\n result.AfterListTable = RenderServerComponent({\n clientProps: clientProps satisfies AfterListTableClientProps,\n Component: collectionConfig.admin.components.afterListTable,\n importMap: payload.importMap,\n serverProps: serverProps satisfies AfterListTableServerPropsOnly,\n })\n }\n\n if (collectionConfig.admin.components?.beforeList) {\n result.BeforeList = RenderServerComponent({\n clientProps: clientProps satisfies BeforeListClientProps,\n Component: collectionConfig.admin.components.beforeList,\n importMap: payload.importMap,\n serverProps: serverProps satisfies BeforeListServerPropsOnly,\n })\n }\n\n // Handle beforeListTable with optional banner\n const existingBeforeListTable = collectionConfig.admin.components?.beforeListTable\n ? RenderServerComponent({\n clientProps: clientProps satisfies BeforeListTableClientProps,\n Component: collectionConfig.admin.components.beforeListTable,\n importMap: payload.importMap,\n serverProps: serverProps satisfies BeforeListTableServerPropsOnly,\n })\n : null\n\n // Create banner for document not found\n const notFoundBanner = notFoundDocId ? (\n <Banner className=\"list-view__not-found-banner\" type=\"danger\">\n {serverProps.i18n.t('error:documentNotFound', { id: notFoundDocId })}\n </Banner>\n ) : null\n\n // Combine banner and existing component\n if (notFoundBanner || existingBeforeListTable) {\n result.BeforeListTable = (\n <React.Fragment>\n {notFoundBanner}\n {existingBeforeListTable}\n </React.Fragment>\n )\n }\n\n if (collectionConfig.admin.components?.Description) {\n result.Description = RenderServerComponent({\n clientProps: {\n collectionSlug: collectionConfig.slug,\n description,\n } satisfies ViewDescriptionClientProps,\n Component: collectionConfig.admin.components.Description,\n importMap: payload.importMap,\n serverProps: serverProps satisfies ViewDescriptionServerPropsOnly,\n })\n }\n\n if (collectionConfig.admin.components?.views?.list?.NoResults) {\n result.NoResults = (\n <React.Fragment key=\"list-view-no-results\">\n {RenderServerComponent({\n clientProps: clientProps satisfies NoResultsClientProps,\n Component: collectionConfig.admin.components.views.list.NoResults,\n importMap: payload.importMap,\n key: 'list-view-no-results',\n serverProps: serverProps satisfies NoResultsServerPropsOnly,\n })}\n </React.Fragment>\n )\n }\n\n return result\n}\n"],"mappings":"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","ignoreList":[]}
@@ -64,7 +64,7 @@ export const LogoutClient = props => {
64
64
  if (!navigatingToLoginRef.current) {
65
65
  navigatingToLoginRef.current = true;
66
66
  await logOut();
67
- toast.success(t("authentication:loggedOutSuccessfully"));
67
+ toast(t("authentication:loggedOutSuccessfully"));
68
68
  startRouteTransition(() => router.push(loginRoute));
69
69
  return;
70
70
  }
@@ -1 +1 @@
1
- {"version":3,"file":"LogoutClient.js","names":["c","_c","formatAdminURL","React","useEffect","toast","Button","LoadingOverlay","useAuth","useRouter","useRouteTransition","useTranslation","baseClass","LogoutClient","props","$","adminRoute","inactivity","redirect","logOut","user","startRouteTransition","id","isLoggedIn","Boolean","navigatingToLoginRef","useRef","t0","path","length","encodeURIComponent","loginRoute","useState","t","router","t1","current","success","push","handleLogOut","t2","t3","t4","_jsxs","className","children","_jsx","buttonStyle","el","size","url","animationDuration","loadingText"],"sources":["../../../src/views/Logout/LogoutClient.tsx"],"sourcesContent":["'use client'\nimport { formatAdminURL } from 'payload/shared'\nimport React, { useEffect } from 'react'\nimport { toast } from 'sonner'\n\nimport { Button } from '../../elements/Button/index.js'\nimport { LoadingOverlay } from '../../elements/Loading/index.js'\nimport { useAuth } from '../../providers/Auth/index.js'\nimport { useRouter } from '../../providers/RouterAdapter/index.js'\nimport { useRouteTransition } from '../../providers/RouteTransition/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport './index.css'\n\nconst baseClass = 'logout'\n\n/**\n * This component should **just** be the inactivity route and do nothing with logging the user out.\n *\n * It currently handles too much, the auth provider should just log the user out and then\n * we could remove the useEffect in this file. So instead of the logout button\n * being an anchor link, it should be a button that calls `logOut` in the provider.\n *\n * This view is still useful if cookies attempt to refresh and fail, i.e. the user\n * is logged out due to inactivity.\n */\nexport const LogoutClient: React.FC<{\n adminRoute: string\n inactivity?: boolean\n redirect: string\n}> = (props) => {\n const { adminRoute, inactivity, redirect } = props\n\n const { logOut, user } = useAuth()\n\n const { startRouteTransition } = useRouteTransition()\n\n const isLoggedIn = React.useMemo(() => {\n return Boolean(user?.id)\n }, [user?.id])\n\n const navigatingToLoginRef = React.useRef(false)\n\n const [loginRoute] = React.useState(() =>\n formatAdminURL({\n adminRoute,\n path: `/login${\n inactivity && redirect && redirect.length > 0\n ? `?redirect=${encodeURIComponent(redirect)}`\n : ''\n }`,\n }),\n )\n\n const { t } = useTranslation()\n const router = useRouter()\n\n const handleLogOut = React.useCallback(async () => {\n if (!navigatingToLoginRef.current) {\n navigatingToLoginRef.current = true\n await logOut()\n toast.success(t('authentication:loggedOutSuccessfully'))\n startRouteTransition(() => router.push(loginRoute))\n return\n }\n }, [logOut, loginRoute, router, startRouteTransition, t])\n\n useEffect(() => {\n if (isLoggedIn && !inactivity) {\n void handleLogOut()\n } else if (!inactivity && !navigatingToLoginRef.current) {\n navigatingToLoginRef.current = true\n startRouteTransition(() => router.push(loginRoute))\n }\n }, [handleLogOut, isLoggedIn, loginRoute, router, startRouteTransition, inactivity])\n\n if (!isLoggedIn && inactivity) {\n return (\n <div className={`${baseClass}__wrap`}>\n <h2>{t('authentication:loggedOutInactivity')}</h2>\n <Button buttonStyle=\"primary\" el=\"link\" size=\"medium\" url={loginRoute}>\n {t('authentication:logBackIn')}\n </Button>\n </div>\n )\n }\n\n return <LoadingOverlay animationDuration={'0ms'} loadingText={t('authentication:loggingOut')} />\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"LogoutClient.js","names":["c","_c","formatAdminURL","React","useEffect","toast","Button","LoadingOverlay","useAuth","useRouter","useRouteTransition","useTranslation","baseClass","LogoutClient","props","$","adminRoute","inactivity","redirect","logOut","user","startRouteTransition","id","isLoggedIn","Boolean","navigatingToLoginRef","useRef","t0","path","length","encodeURIComponent","loginRoute","useState","t","router","t1","current","push","handleLogOut","t2","t3","t4","_jsxs","className","children","_jsx","buttonStyle","el","size","url","animationDuration","loadingText"],"sources":["../../../src/views/Logout/LogoutClient.tsx"],"sourcesContent":["'use client'\nimport { formatAdminURL } from 'payload/shared'\nimport React, { useEffect } from 'react'\nimport { toast } from 'sonner'\n\nimport { Button } from '../../elements/Button/index.js'\nimport { LoadingOverlay } from '../../elements/Loading/index.js'\nimport { useAuth } from '../../providers/Auth/index.js'\nimport { useRouter } from '../../providers/RouterAdapter/index.js'\nimport { useRouteTransition } from '../../providers/RouteTransition/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport './index.css'\n\nconst baseClass = 'logout'\n\n/**\n * This component should **just** be the inactivity route and do nothing with logging the user out.\n *\n * It currently handles too much, the auth provider should just log the user out and then\n * we could remove the useEffect in this file. So instead of the logout button\n * being an anchor link, it should be a button that calls `logOut` in the provider.\n *\n * This view is still useful if cookies attempt to refresh and fail, i.e. the user\n * is logged out due to inactivity.\n */\nexport const LogoutClient: React.FC<{\n adminRoute: string\n inactivity?: boolean\n redirect: string\n}> = (props) => {\n const { adminRoute, inactivity, redirect } = props\n\n const { logOut, user } = useAuth()\n\n const { startRouteTransition } = useRouteTransition()\n\n const isLoggedIn = React.useMemo(() => {\n return Boolean(user?.id)\n }, [user?.id])\n\n const navigatingToLoginRef = React.useRef(false)\n\n const [loginRoute] = React.useState(() =>\n formatAdminURL({\n adminRoute,\n path: `/login${\n inactivity && redirect && redirect.length > 0\n ? `?redirect=${encodeURIComponent(redirect)}`\n : ''\n }`,\n }),\n )\n\n const { t } = useTranslation()\n const router = useRouter()\n\n const handleLogOut = React.useCallback(async () => {\n if (!navigatingToLoginRef.current) {\n navigatingToLoginRef.current = true\n await logOut()\n toast(t('authentication:loggedOutSuccessfully'))\n startRouteTransition(() => router.push(loginRoute))\n return\n }\n }, [logOut, loginRoute, router, startRouteTransition, t])\n\n useEffect(() => {\n if (isLoggedIn && !inactivity) {\n void handleLogOut()\n } else if (!inactivity && !navigatingToLoginRef.current) {\n navigatingToLoginRef.current = true\n startRouteTransition(() => router.push(loginRoute))\n }\n }, [handleLogOut, isLoggedIn, loginRoute, router, startRouteTransition, inactivity])\n\n if (!isLoggedIn && inactivity) {\n return (\n <div className={`${baseClass}__wrap`}>\n <h2>{t('authentication:loggedOutInactivity')}</h2>\n <Button buttonStyle=\"primary\" el=\"link\" size=\"medium\" url={loginRoute}>\n {t('authentication:logBackIn')}\n </Button>\n </div>\n )\n }\n\n return <LoadingOverlay animationDuration={'0ms'} loadingText={t('authentication:loggingOut')} />\n}\n"],"mappings":"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","ignoreList":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@payloadcms/ui",
3
- "version": "4.0.0-canary.2",
3
+ "version": "4.0.0-canary.3",
4
4
  "homepage": "https://payloadcms.com",
5
5
  "repository": {
6
6
  "type": "git",
@@ -243,7 +243,7 @@
243
243
  "ts-essentials": "10.0.3",
244
244
  "use-context-selector": "2.0.0",
245
245
  "uuid": "14.0.0",
246
- "@payloadcms/translations": "4.0.0-canary.2"
246
+ "@payloadcms/translations": "4.0.0-canary.3"
247
247
  },
248
248
  "devDependencies": {
249
249
  "@babel/cli": "7.27.2",
@@ -257,13 +257,13 @@
257
257
  "babel-plugin-react-compiler": "19.1.0-rc.3",
258
258
  "esbuild": "0.27.1",
259
259
  "esbuild-sass-plugin": "3.3.1",
260
- "payload": "4.0.0-canary.2",
260
+ "payload": "4.0.0-canary.3",
261
261
  "@payloadcms/eslint-config": "3.28.0"
262
262
  },
263
263
  "peerDependencies": {
264
264
  "react": "^19.0.1 || ^19.1.2 || ^19.2.1",
265
265
  "react-dom": "^19.0.1 || ^19.1.2 || ^19.2.1",
266
- "payload": "4.0.0-canary.2"
266
+ "payload": "4.0.0-canary.3"
267
267
  },
268
268
  "engines": {
269
269
  "node": ">=24.15.0"
@@ -1,146 +0,0 @@
1
- @import './styles.scss';
2
-
3
- @layer payload-default {
4
- .payload-toast-container {
5
- --offset: calc(var(--gutter-h) / 2);
6
-
7
- padding: 0;
8
- margin: 0;
9
-
10
- .payload-toast-close-button {
11
- position: absolute;
12
- order: 3;
13
- left: unset;
14
- inset-inline-end: base(0.8);
15
- top: 50%;
16
- transform: translateY(-50%);
17
- color: var(--theme-elevation-600);
18
- background: unset;
19
- border: none;
20
-
21
- svg {
22
- width: base(0.8);
23
- height: base(0.8);
24
- }
25
-
26
- &:hover {
27
- color: var(--theme-elevation-250);
28
- background: none;
29
- }
30
-
31
- [dir='RTL'] & {
32
- right: unset;
33
- left: 0.5rem;
34
- }
35
- }
36
-
37
- .toast-title {
38
- line-height: base(1);
39
- margin-right: base(1);
40
- }
41
-
42
- .payload-toast-item {
43
- padding: base(0.8);
44
- color: var(--theme-elevation-800);
45
- font-style: normal;
46
- font-weight: 600;
47
- display: flex;
48
- gap: 1rem;
49
- align-items: center;
50
- width: 100%;
51
- border-radius: 4px;
52
- border: var(--stroke-width-small) solid var(--theme-border-color);
53
- background: var(--theme-input-bg);
54
- box-shadow:
55
- 0px 10px 4px -8px rgba(0, 2, 4, 0.02),
56
- 0px 2px 3px 0px rgba(0, 2, 4, 0.05);
57
-
58
- .toast-content {
59
- transition: opacity 100ms cubic-bezier(0.55, 0.055, 0.675, 0.19);
60
- width: 100%;
61
- }
62
-
63
- &[data-front='false'] {
64
- .toast-content {
65
- opacity: 0;
66
- }
67
- }
68
-
69
- &[data-expanded='true'] {
70
- .toast-content {
71
- opacity: 1;
72
- }
73
- }
74
-
75
- .toast-icon {
76
- width: base(0.8);
77
- height: base(0.8);
78
- margin: 0;
79
- display: flex;
80
- align-items: center;
81
- justify-content: center;
82
-
83
- & > * {
84
- width: base(1.2);
85
- height: base(1.2);
86
- }
87
- }
88
-
89
- &.toast-warning {
90
- color: var(--theme-warning-800);
91
- border-color: var(--theme-warning-250);
92
- background-color: var(--theme-warning-100);
93
-
94
- .payload-toast-close-button {
95
- color: var(--theme-warning-600);
96
-
97
- &:hover {
98
- color: var(--theme-warning-250);
99
- }
100
- }
101
- }
102
-
103
- &.toast-error {
104
- color: var(--theme-error-800);
105
- border-color: var(--theme-error-250);
106
- background-color: var(--theme-error-100);
107
-
108
- .payload-toast-close-button {
109
- color: var(--theme-error-600);
110
-
111
- &:hover {
112
- color: var(--theme-error-250);
113
- }
114
- }
115
- }
116
-
117
- &.toast-success {
118
- color: var(--theme-success-800);
119
- border-color: var(--theme-success-250);
120
- background-color: var(--theme-success-100);
121
-
122
- .payload-toast-close-button {
123
- color: var(--theme-success-600);
124
-
125
- &:hover {
126
- color: var(--theme-success-250);
127
- }
128
- }
129
- }
130
-
131
- &.toast-info {
132
- color: var(--theme-elevation-800);
133
- border-color: var(--theme-elevation-250);
134
- background-color: var(--theme-elevation-100);
135
-
136
- .payload-toast-close-button {
137
- color: var(--theme-elevation-600);
138
-
139
- &:hover {
140
- color: var(--theme-elevation-250);
141
- }
142
- }
143
- }
144
- }
145
- }
146
- }