@payloadcms/ui 3.0.0-beta.31 → 3.0.0-beta.33
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.
- package/dist/assets/index.d.ts +4 -4
- package/dist/assets/index.d.ts.map +1 -1
- package/dist/assets/index.js +4 -4
- package/dist/assets/index.js.map +1 -1
- package/dist/elements/AppHeader/index.d.ts.map +1 -1
- package/dist/elements/AppHeader/index.js +2 -2
- package/dist/elements/AppHeader/index.js.map +1 -1
- package/dist/elements/Autosave/index.d.ts.map +1 -1
- package/dist/elements/Autosave/index.js +1 -1
- package/dist/elements/Autosave/index.js.map +1 -1
- package/dist/elements/Banner/index.js +1 -1
- package/dist/elements/Banner/index.js.map +1 -1
- package/dist/elements/DocumentControls/index.d.ts.map +1 -1
- package/dist/elements/DocumentControls/index.js +1 -1
- package/dist/elements/DocumentControls/index.js.map +1 -1
- package/dist/elements/ListControls/getTextFieldsToBeSearched.d.ts.map +1 -1
- package/dist/elements/ListControls/getTextFieldsToBeSearched.js +1 -1
- package/dist/elements/ListControls/getTextFieldsToBeSearched.js.map +1 -1
- package/dist/elements/ListControls/index.d.ts.map +1 -1
- package/dist/elements/ListControls/index.js +1 -1
- package/dist/elements/ListControls/index.js.map +1 -1
- package/dist/elements/Logout/index.d.ts.map +1 -1
- package/dist/elements/Logout/index.js +1 -1
- package/dist/elements/Logout/index.js.map +1 -1
- package/dist/elements/Nav/index.client.d.ts.map +1 -1
- package/dist/elements/Nav/index.client.js +1 -1
- package/dist/elements/Nav/index.client.js.map +1 -1
- package/dist/elements/Nav/index.d.ts +2 -4
- package/dist/elements/Nav/index.d.ts.map +1 -1
- package/dist/elements/Nav/index.js +20 -4
- package/dist/elements/Nav/index.js.map +1 -1
- package/dist/elements/Pill/index.js +1 -1
- package/dist/elements/Pill/index.js.map +1 -1
- package/dist/elements/ReactSelect/ClearIndicator/index.d.ts.map +1 -1
- package/dist/elements/ReactSelect/ClearIndicator/index.js +10 -2
- package/dist/elements/ReactSelect/ClearIndicator/index.js.map +1 -1
- package/dist/elements/ReactSelect/ClearIndicator/index.scss +4 -0
- package/dist/elements/ReactSelect/DropdownIndicator/index.d.ts +8 -0
- package/dist/elements/ReactSelect/DropdownIndicator/index.d.ts.map +1 -0
- package/dist/elements/ReactSelect/DropdownIndicator/index.js +19 -0
- package/dist/elements/ReactSelect/DropdownIndicator/index.js.map +1 -0
- package/dist/elements/ReactSelect/DropdownIndicator/index.scss +16 -0
- package/dist/elements/ReactSelect/MultiValue/index.d.ts.map +1 -1
- package/dist/elements/ReactSelect/MultiValue/index.js +3 -3
- package/dist/elements/ReactSelect/MultiValue/index.js.map +1 -1
- package/dist/elements/ReactSelect/MultiValueLabel/index.scss +4 -0
- package/dist/elements/ReactSelect/MultiValueRemove/index.d.ts.map +1 -1
- package/dist/elements/ReactSelect/MultiValueRemove/index.js +6 -0
- package/dist/elements/ReactSelect/MultiValueRemove/index.js.map +1 -1
- package/dist/elements/ReactSelect/index.js +3 -3
- package/dist/elements/ReactSelect/index.js.map +1 -1
- package/dist/elements/ReactSelect/index.scss +1 -1
- package/dist/elements/RenderCustomComponent/index.d.ts +3 -3
- package/dist/elements/RenderCustomComponent/index.d.ts.map +1 -1
- package/dist/elements/RenderCustomComponent/index.js +4 -4
- package/dist/elements/RenderCustomComponent/index.js.map +1 -1
- package/dist/elements/StayLoggedIn/index.d.ts.map +1 -1
- package/dist/elements/StayLoggedIn/index.js +2 -2
- package/dist/elements/StayLoggedIn/index.js.map +1 -1
- package/dist/elements/StepNav/index.d.ts.map +1 -1
- package/dist/elements/StepNav/index.js +13 -3
- package/dist/elements/StepNav/index.js.map +1 -1
- package/dist/elements/StepNav/index.scss +11 -0
- package/dist/elements/Table/DefaultCell/fields/Array/index.d.ts.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/Array/index.js +1 -1
- package/dist/elements/Table/DefaultCell/fields/Array/index.js.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/Blocks/index.d.ts.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/Blocks/index.js +1 -1
- package/dist/elements/Table/DefaultCell/fields/Blocks/index.js.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/Checkbox/index.d.ts.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/Checkbox/index.js +1 -1
- package/dist/elements/Table/DefaultCell/fields/Checkbox/index.js.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/Date/index.d.ts.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/Date/index.js +3 -3
- package/dist/elements/Table/DefaultCell/fields/Date/index.js.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/File/index.d.ts.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/File/index.js +1 -1
- package/dist/elements/Table/DefaultCell/fields/File/index.js.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/Relationship/index.d.ts.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/Relationship/index.js +5 -5
- package/dist/elements/Table/DefaultCell/fields/Relationship/index.js.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/Select/index.d.ts.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/Select/index.js +1 -1
- package/dist/elements/Table/DefaultCell/fields/Select/index.js.map +1 -1
- package/dist/elements/Table/DefaultCell/index.js +3 -3
- package/dist/elements/Table/DefaultCell/index.js.map +1 -1
- package/dist/elements/Table/RelationshipProvider/index.d.ts.map +1 -1
- package/dist/elements/Table/RelationshipProvider/index.js +4 -4
- package/dist/elements/Table/RelationshipProvider/index.js.map +1 -1
- package/dist/elements/TableColumns/buildColumnState.d.ts.map +1 -1
- package/dist/elements/TableColumns/buildColumnState.js +1 -1
- package/dist/elements/TableColumns/buildColumnState.js.map +1 -1
- package/dist/elements/Upload/index.d.ts.map +1 -1
- package/dist/elements/Upload/index.js +2 -2
- package/dist/elements/Upload/index.js.map +1 -1
- package/dist/elements/WithServerSideProps/index.d.ts +2 -2
- package/dist/elements/WithServerSideProps/index.d.ts.map +1 -1
- package/dist/elements/WithServerSideProps/index.js +4 -6
- package/dist/elements/WithServerSideProps/index.js.map +1 -1
- package/dist/fields/Array/index.d.ts.map +1 -1
- package/dist/fields/Array/index.js +5 -5
- package/dist/fields/Array/index.js.map +1 -1
- package/dist/fields/Blocks/index.d.ts.map +1 -1
- package/dist/fields/Blocks/index.js +5 -5
- package/dist/fields/Blocks/index.js.map +1 -1
- package/dist/fields/Checkbox/Input.d.ts.map +1 -1
- package/dist/fields/Checkbox/Input.js +1 -1
- package/dist/fields/Checkbox/Input.js.map +1 -1
- package/dist/fields/Checkbox/index.d.ts.map +1 -1
- package/dist/fields/Checkbox/index.js +4 -4
- package/dist/fields/Checkbox/index.js.map +1 -1
- package/dist/fields/Code/index.d.ts.map +1 -1
- package/dist/fields/Code/index.js +4 -4
- package/dist/fields/Code/index.js.map +1 -1
- package/dist/fields/Collapsible/index.d.ts.map +1 -1
- package/dist/fields/Collapsible/index.js +1 -1
- package/dist/fields/Collapsible/index.js.map +1 -1
- package/dist/fields/DateTime/index.d.ts.map +1 -1
- package/dist/fields/DateTime/index.js +3 -3
- package/dist/fields/DateTime/index.js.map +1 -1
- package/dist/fields/Email/index.d.ts.map +1 -1
- package/dist/fields/Email/index.js +4 -4
- package/dist/fields/Email/index.js.map +1 -1
- package/dist/fields/Group/index.d.ts.map +1 -1
- package/dist/fields/Group/index.js +1 -1
- package/dist/fields/Group/index.js.map +1 -1
- package/dist/fields/HiddenInput/index.d.ts.map +1 -1
- package/dist/fields/HiddenInput/index.js +1 -1
- package/dist/fields/HiddenInput/index.js.map +1 -1
- package/dist/fields/JSON/index.d.ts.map +1 -1
- package/dist/fields/JSON/index.js +3 -3
- package/dist/fields/JSON/index.js.map +1 -1
- package/dist/fields/Number/index.d.ts.map +1 -1
- package/dist/fields/Number/index.js +4 -4
- package/dist/fields/Number/index.js.map +1 -1
- package/dist/fields/Password/index.d.ts.map +1 -1
- package/dist/fields/Password/index.js +2 -2
- package/dist/fields/Password/index.js.map +1 -1
- package/dist/fields/Point/index.d.ts.map +1 -1
- package/dist/fields/Point/index.js +4 -4
- package/dist/fields/Point/index.js.map +1 -1
- package/dist/fields/RadioGroup/Radio/index.d.ts.map +1 -1
- package/dist/fields/RadioGroup/Radio/index.js +1 -1
- package/dist/fields/RadioGroup/Radio/index.js.map +1 -1
- package/dist/fields/RadioGroup/index.d.ts.map +1 -1
- package/dist/fields/RadioGroup/index.js +3 -3
- package/dist/fields/RadioGroup/index.js.map +1 -1
- package/dist/fields/Relationship/index.d.ts.map +1 -1
- package/dist/fields/Relationship/index.js +5 -5
- package/dist/fields/Relationship/index.js.map +1 -1
- package/dist/fields/Relationship/select-components/MultiValueLabel/index.d.ts.map +1 -1
- package/dist/fields/Relationship/select-components/MultiValueLabel/index.js +8 -1
- package/dist/fields/Relationship/select-components/MultiValueLabel/index.js.map +1 -1
- package/dist/fields/Relationship/select-components/MultiValueLabel/index.scss +4 -0
- package/dist/fields/Relationship/select-components/SingleValue/index.d.ts.map +1 -1
- package/dist/fields/Relationship/select-components/SingleValue/index.js +5 -0
- package/dist/fields/Relationship/select-components/SingleValue/index.js.map +1 -1
- package/dist/fields/Relationship/select-components/SingleValue/index.scss +2 -2
- package/dist/fields/Select/index.d.ts.map +1 -1
- package/dist/fields/Select/index.js +4 -4
- package/dist/fields/Select/index.js.map +1 -1
- package/dist/fields/Tabs/index.d.ts.map +1 -1
- package/dist/fields/Tabs/index.js +1 -1
- package/dist/fields/Tabs/index.js.map +1 -1
- package/dist/fields/Text/Input.d.ts.map +1 -1
- package/dist/fields/Text/Input.js +3 -3
- package/dist/fields/Text/Input.js.map +1 -1
- package/dist/fields/Text/index.d.ts.map +1 -1
- package/dist/fields/Text/index.js +1 -1
- package/dist/fields/Text/index.js.map +1 -1
- package/dist/fields/Textarea/Input.d.ts.map +1 -1
- package/dist/fields/Textarea/Input.js +3 -3
- package/dist/fields/Textarea/Input.js.map +1 -1
- package/dist/fields/Textarea/index.d.ts.map +1 -1
- package/dist/fields/Textarea/index.js +1 -1
- package/dist/fields/Textarea/index.js.map +1 -1
- package/dist/fields/Upload/Input.d.ts.map +1 -1
- package/dist/fields/Upload/Input.js +3 -3
- package/dist/fields/Upload/Input.js.map +1 -1
- package/dist/fields/Upload/index.d.ts.map +1 -1
- package/dist/fields/Upload/index.js +2 -2
- package/dist/fields/Upload/index.js.map +1 -1
- package/dist/forms/FieldLabel/index.d.ts.map +1 -1
- package/dist/forms/FieldLabel/index.js +1 -1
- package/dist/forms/FieldLabel/index.js.map +1 -1
- package/dist/forms/Form/index.js.map +1 -1
- package/dist/forms/Form/mergeErrorPaths.js +1 -1
- package/dist/forms/Form/mergeErrorPaths.js.map +1 -1
- package/dist/forms/Submit/index.d.ts.map +1 -1
- package/dist/forms/Submit/index.js.map +1 -1
- package/dist/graphics/Account/index.d.ts +0 -1
- package/dist/graphics/Account/index.d.ts.map +1 -1
- package/dist/graphics/Account/index.js +2 -11
- package/dist/graphics/Account/index.js.map +1 -1
- package/dist/graphics/Icon/index.d.ts +3 -1
- package/dist/graphics/Icon/index.d.ts.map +1 -1
- package/dist/graphics/Icon/index.js +10 -36
- package/dist/graphics/Icon/index.js.map +1 -1
- package/dist/graphics/Logo/index.d.ts +2 -4
- package/dist/graphics/Logo/index.d.ts.map +1 -1
- package/dist/graphics/Logo/index.js +10 -2
- package/dist/graphics/Logo/index.js.map +1 -1
- package/dist/icons/Edit/index.d.ts +3 -1
- package/dist/icons/Edit/index.d.ts.map +1 -1
- package/dist/icons/Edit/index.js +5 -2
- package/dist/icons/Edit/index.js.map +1 -1
- package/dist/providers/Auth/index.d.ts.map +1 -1
- package/dist/providers/Auth/index.js +5 -4
- package/dist/providers/Auth/index.js.map +1 -1
- package/dist/providers/ComponentMap/buildComponentMap/actions.d.ts +3 -2
- package/dist/providers/ComponentMap/buildComponentMap/actions.d.ts.map +1 -1
- package/dist/providers/ComponentMap/buildComponentMap/actions.js.map +1 -1
- package/dist/providers/ComponentMap/buildComponentMap/collections.d.ts +3 -2
- package/dist/providers/ComponentMap/buildComponentMap/collections.d.ts.map +1 -1
- package/dist/providers/ComponentMap/buildComponentMap/collections.js +4 -3
- package/dist/providers/ComponentMap/buildComponentMap/collections.js.map +1 -1
- package/dist/providers/ComponentMap/buildComponentMap/fields.d.ts +3 -2
- package/dist/providers/ComponentMap/buildComponentMap/fields.d.ts.map +1 -1
- package/dist/providers/ComponentMap/buildComponentMap/fields.js +1 -1
- package/dist/providers/ComponentMap/buildComponentMap/fields.js.map +1 -1
- package/dist/providers/ComponentMap/buildComponentMap/globals.d.ts +3 -2
- package/dist/providers/ComponentMap/buildComponentMap/globals.d.ts.map +1 -1
- package/dist/providers/ComponentMap/buildComponentMap/globals.js +3 -2
- package/dist/providers/ComponentMap/buildComponentMap/globals.js.map +1 -1
- package/dist/providers/ComponentMap/buildComponentMap/index.d.ts +4 -4
- package/dist/providers/ComponentMap/buildComponentMap/index.d.ts.map +1 -1
- package/dist/providers/ComponentMap/buildComponentMap/index.js +6 -2
- package/dist/providers/ComponentMap/buildComponentMap/index.js.map +1 -1
- package/dist/providers/ComponentMap/buildComponentMap/types.d.ts +1 -1
- package/dist/providers/ComponentMap/buildComponentMap/types.d.ts.map +1 -1
- package/dist/providers/ComponentMap/buildComponentMap/types.js.map +1 -1
- package/dist/providers/DocumentInfo/index.d.ts.map +1 -1
- package/dist/providers/DocumentInfo/index.js +44 -31
- package/dist/providers/DocumentInfo/index.js.map +1 -1
- package/dist/providers/Root/index.d.ts.map +1 -1
- package/dist/providers/Root/index.js +1 -1
- package/dist/providers/Root/index.js.map +1 -1
- package/dist/templates/Default/index.d.ts +4 -4
- package/dist/templates/Default/index.d.ts.map +1 -1
- package/dist/templates/Default/index.js +18 -4
- package/dist/templates/Default/index.js.map +1 -1
- package/dist/utilities/hasSavePermission.d.ts +8 -0
- package/dist/utilities/hasSavePermission.d.ts.map +1 -0
- package/dist/utilities/hasSavePermission.js +12 -0
- package/dist/utilities/hasSavePermission.js.map +1 -0
- package/dist/utilities/isEditing.d.ts +6 -0
- package/dist/utilities/isEditing.d.ts.map +1 -0
- package/dist/utilities/isEditing.js +3 -0
- package/dist/utilities/isEditing.js.map +1 -0
- package/package.json +11 -11
- /package/dist/assets/{og-image.png → static-og-image.png} +0 -0
package/dist/assets/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
export { default as
|
|
2
|
-
export { default as
|
|
3
|
-
export { default as
|
|
4
|
-
export { default as
|
|
1
|
+
export { default as payloadFavicon } from './payload-favicon.svg';
|
|
2
|
+
export { default as payloadFaviconDark } from './payload-favicon-dark.png';
|
|
3
|
+
export { default as payloadFaviconLight } from './payload-favicon-light.png';
|
|
4
|
+
export { default as staticOGImage } from './static-og-image.png';
|
|
5
5
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/assets/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/assets/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,uBAAuB,CAAA;AACjE,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,4BAA4B,CAAA;AAC1E,OAAO,EAAE,OAAO,IAAI,mBAAmB,EAAE,MAAM,6BAA6B,CAAA;AAC5E,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,uBAAuB,CAAA"}
|
package/dist/assets/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
export { default as
|
|
2
|
-
export { default as
|
|
3
|
-
export { default as
|
|
4
|
-
export { default as
|
|
1
|
+
export { default as payloadFavicon } from './payload-favicon.svg';
|
|
2
|
+
export { default as payloadFaviconDark } from './payload-favicon-dark.png';
|
|
3
|
+
export { default as payloadFaviconLight } from './payload-favicon-light.png';
|
|
4
|
+
export { default as staticOGImage } from './static-og-image.png';
|
|
5
5
|
|
|
6
6
|
//# sourceMappingURL=index.js.map
|
package/dist/assets/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/assets/index.ts"],"sourcesContent":["export { default as
|
|
1
|
+
{"version":3,"sources":["../../src/assets/index.ts"],"sourcesContent":["export { default as payloadFavicon } from './payload-favicon.svg'\nexport { default as payloadFaviconDark } from './payload-favicon-dark.png'\nexport { default as payloadFaviconLight } from './payload-favicon-light.png'\nexport { default as staticOGImage } from './static-og-image.png'\n"],"names":["default","payloadFavicon","payloadFaviconDark","payloadFaviconLight","staticOGImage"],"rangeMappings":";;;","mappings":"AAAA,SAASA,WAAWC,cAAc,QAAQ,wBAAuB;AACjE,SAASD,WAAWE,kBAAkB,QAAQ,6BAA4B;AAC1E,SAASF,WAAWG,mBAAmB,QAAQ,8BAA6B;AAC5E,SAASH,WAAWI,aAAa,QAAQ,wBAAuB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/AppHeader/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAsC,MAAM,OAAO,CAAA;AAY1D,OAAO,cAAc,CAAA;AAIrB,eAAO,MAAM,SAAS,EAAE,KAAK,CAAC,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/AppHeader/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAsC,MAAM,OAAO,CAAA;AAY1D,OAAO,cAAc,CAAA;AAIrB,eAAO,MAAM,SAAS,EAAE,KAAK,CAAC,EAoF7B,CAAA"}
|
|
@@ -14,7 +14,7 @@ import { StepNav } from '../StepNav/index.js';
|
|
|
14
14
|
const baseClass = 'app-header';
|
|
15
15
|
export const AppHeader = ()=>{
|
|
16
16
|
const { t } = useTranslation();
|
|
17
|
-
const { localization, routes: { admin: adminRoute } } = useConfig();
|
|
17
|
+
const { admin: { routes: { account: accountRoute } }, localization, routes: { admin: adminRoute } } = useConfig();
|
|
18
18
|
const { actions } = useActions();
|
|
19
19
|
const { navOpen } = useNav();
|
|
20
20
|
const customControlsRef = useRef(null);
|
|
@@ -74,7 +74,7 @@ export const AppHeader = ()=>{
|
|
|
74
74
|
}), /*#__PURE__*/ React.createElement(LinkElement, {
|
|
75
75
|
"aria-label": t('authentication:account'),
|
|
76
76
|
className: `${baseClass}__account`,
|
|
77
|
-
href: `${adminRoute}
|
|
77
|
+
href: `${adminRoute}${accountRoute}`,
|
|
78
78
|
tabIndex: 0
|
|
79
79
|
}, /*#__PURE__*/ React.createElement(Account, null))))), /*#__PURE__*/ React.createElement(Localizer, {
|
|
80
80
|
className: `${baseClass}__localizer`
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/elements/AppHeader/index.tsx"],"sourcesContent":["'use client'\nimport LinkWithDefault from 'next/link.js'\nimport React, { useEffect, useRef, useState } from 'react'\n\nimport { Account } from '../../graphics/Account/index.js'\nimport { useActions } from '../../providers/Actions/index.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { Hamburger } from '../Hamburger/index.js'\nimport { LocalizerLabel } from '../Localizer/LocalizerLabel/index.js'\nimport { Localizer } from '../Localizer/index.js'\nimport { NavToggler } from '../Nav/NavToggler/index.js'\nimport { useNav } from '../Nav/context.js'\nimport { StepNav } from '../StepNav/index.js'\nimport './index.scss'\n\nconst baseClass = 'app-header'\n\nexport const AppHeader: React.FC = () => {\n const { t } = useTranslation()\n\n const {\n localization,\n routes: { admin: adminRoute },\n } = useConfig()\n\n const { actions } = useActions()\n\n const { navOpen } = useNav()\n\n const customControlsRef = useRef<HTMLDivElement>(null)\n const [isScrollable, setIsScrollable] = useState(false)\n\n useEffect(() => {\n const checkIsScrollable = () => {\n const el = customControlsRef.current\n if (el) {\n const scrollable = el.scrollWidth > el.clientWidth\n setIsScrollable(scrollable)\n }\n }\n\n checkIsScrollable()\n window.addEventListener('resize', checkIsScrollable)\n\n return () => {\n window.removeEventListener('resize', checkIsScrollable)\n }\n }, [actions])\n\n const Link = LinkWithDefault.default\n\n const LinkElement = Link || 'a'\n\n return (\n <header className={[baseClass, navOpen && `${baseClass}--nav-open`].filter(Boolean).join(' ')}>\n <div className={`${baseClass}__bg`} />\n <div className={`${baseClass}__content`}>\n <div className={`${baseClass}__wrapper`}>\n <NavToggler className={`${baseClass}__mobile-nav-toggler`} tabIndex={-1}>\n <Hamburger />\n </NavToggler>\n <div className={`${baseClass}__controls-wrapper`}>\n <div className={`${baseClass}__step-nav-wrapper`}>\n <StepNav Link={Link} className={`${baseClass}__step-nav`} />\n </div>\n <div className={`${baseClass}__actions-wrapper`}>\n <div className={`${baseClass}__actions`} ref={customControlsRef}>\n {Array.isArray(actions) &&\n actions.map((Action, i) => (\n <div\n className={\n isScrollable && i === actions.length - 1 ? `${baseClass}__last-action` : ''\n }\n key={i}\n >\n {Action}\n </div>\n ))}\n </div>\n {isScrollable && <div className={`${baseClass}__gradient-placeholder`} />}\n </div>\n {localization && (\n <LocalizerLabel ariaLabel=\"invisible\" className={`${baseClass}__localizer-spacing`} />\n )}\n <LinkElement\n aria-label={t('authentication:account')}\n className={`${baseClass}__account`}\n href={`${adminRoute}
|
|
1
|
+
{"version":3,"sources":["../../../src/elements/AppHeader/index.tsx"],"sourcesContent":["'use client'\nimport LinkWithDefault from 'next/link.js'\nimport React, { useEffect, useRef, useState } from 'react'\n\nimport { Account } from '../../graphics/Account/index.js'\nimport { useActions } from '../../providers/Actions/index.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { Hamburger } from '../Hamburger/index.js'\nimport { LocalizerLabel } from '../Localizer/LocalizerLabel/index.js'\nimport { Localizer } from '../Localizer/index.js'\nimport { NavToggler } from '../Nav/NavToggler/index.js'\nimport { useNav } from '../Nav/context.js'\nimport { StepNav } from '../StepNav/index.js'\nimport './index.scss'\n\nconst baseClass = 'app-header'\n\nexport const AppHeader: React.FC = () => {\n const { t } = useTranslation()\n\n const {\n admin: {\n routes: { account: accountRoute },\n },\n localization,\n routes: { admin: adminRoute },\n } = useConfig()\n\n const { actions } = useActions()\n\n const { navOpen } = useNav()\n\n const customControlsRef = useRef<HTMLDivElement>(null)\n const [isScrollable, setIsScrollable] = useState(false)\n\n useEffect(() => {\n const checkIsScrollable = () => {\n const el = customControlsRef.current\n if (el) {\n const scrollable = el.scrollWidth > el.clientWidth\n setIsScrollable(scrollable)\n }\n }\n\n checkIsScrollable()\n window.addEventListener('resize', checkIsScrollable)\n\n return () => {\n window.removeEventListener('resize', checkIsScrollable)\n }\n }, [actions])\n\n const Link = LinkWithDefault.default\n\n const LinkElement = Link || 'a'\n\n return (\n <header className={[baseClass, navOpen && `${baseClass}--nav-open`].filter(Boolean).join(' ')}>\n <div className={`${baseClass}__bg`} />\n <div className={`${baseClass}__content`}>\n <div className={`${baseClass}__wrapper`}>\n <NavToggler className={`${baseClass}__mobile-nav-toggler`} tabIndex={-1}>\n <Hamburger />\n </NavToggler>\n <div className={`${baseClass}__controls-wrapper`}>\n <div className={`${baseClass}__step-nav-wrapper`}>\n <StepNav Link={Link} className={`${baseClass}__step-nav`} />\n </div>\n <div className={`${baseClass}__actions-wrapper`}>\n <div className={`${baseClass}__actions`} ref={customControlsRef}>\n {Array.isArray(actions) &&\n actions.map((Action, i) => (\n <div\n className={\n isScrollable && i === actions.length - 1 ? `${baseClass}__last-action` : ''\n }\n key={i}\n >\n {Action}\n </div>\n ))}\n </div>\n {isScrollable && <div className={`${baseClass}__gradient-placeholder`} />}\n </div>\n {localization && (\n <LocalizerLabel ariaLabel=\"invisible\" className={`${baseClass}__localizer-spacing`} />\n )}\n <LinkElement\n aria-label={t('authentication:account')}\n className={`${baseClass}__account`}\n href={`${adminRoute}${accountRoute}`}\n tabIndex={0}\n >\n <Account />\n </LinkElement>\n </div>\n </div>\n </div>\n <Localizer className={`${baseClass}__localizer`} />\n </header>\n )\n}\n"],"names":["LinkWithDefault","React","useEffect","useRef","useState","Account","useActions","useConfig","useTranslation","Hamburger","LocalizerLabel","Localizer","NavToggler","useNav","StepNav","baseClass","AppHeader","t","admin","routes","account","accountRoute","localization","adminRoute","actions","navOpen","customControlsRef","isScrollable","setIsScrollable","checkIsScrollable","el","current","scrollable","scrollWidth","clientWidth","window","addEventListener","removeEventListener","Link","default","LinkElement","header","className","filter","Boolean","join","div","tabIndex","ref","Array","isArray","map","Action","i","length","key","ariaLabel","aria-label","href"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/Autosave/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/Autosave/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAA;AAE/E,OAAO,KAAsC,MAAM,OAAO,CAAA;AAW1D,OAAO,cAAc,CAAA;AAIrB,MAAM,MAAM,KAAK,GAAG;IAClB,UAAU,CAAC,EAAE,sBAAsB,CAAA;IACnC,MAAM,CAAC,EAAE,kBAAkB,CAAA;IAC3B,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACpB,qBAAqB,EAAE,MAAM,CAAA;CAC9B,CAAA;AAED,eAAO,MAAM,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAuIpC,CAAA"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
'use client';
|
|
2
|
-
import { useDocumentEvents } from '@payloadcms/ui/providers/DocumentEvents';
|
|
3
2
|
import React, { useEffect, useRef, useState } from 'react';
|
|
4
3
|
import { useAllFormFields, useFormModified } from '../../forms/Form/context.js';
|
|
5
4
|
import { useDebounce } from '../../hooks/useDebounce.js';
|
|
6
5
|
import { useConfig } from '../../providers/Config/index.js';
|
|
6
|
+
import { useDocumentEvents } from '../../providers/DocumentEvents/index.js';
|
|
7
7
|
import { useDocumentInfo } from '../../providers/DocumentInfo/index.js';
|
|
8
8
|
import { useLocale } from '../../providers/Locale/index.js';
|
|
9
9
|
import { useTranslation } from '../../providers/Translation/index.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/elements/Autosave/index.tsx"],"sourcesContent":["'use client'\n// TODO: abstract the `next/navigation` dependency out from this component\nimport type { ClientCollectionConfig, ClientGlobalConfig } from 'payload/types'\n\nimport
|
|
1
|
+
{"version":3,"sources":["../../../src/elements/Autosave/index.tsx"],"sourcesContent":["'use client'\n// TODO: abstract the `next/navigation` dependency out from this component\nimport type { ClientCollectionConfig, ClientGlobalConfig } from 'payload/types'\n\nimport React, { useEffect, useRef, useState } from 'react'\n\nimport { useAllFormFields, useFormModified } from '../../forms/Form/context.js'\nimport { useDebounce } from '../../hooks/useDebounce.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useDocumentEvents } from '../../providers/DocumentEvents/index.js'\nimport { useDocumentInfo } from '../../providers/DocumentInfo/index.js'\nimport { useLocale } from '../../providers/Locale/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { formatTimeToNow } from '../../utilities/formatDate.js'\nimport { reduceFieldsToValues } from '../../utilities/reduceFieldsToValues.js'\nimport './index.scss'\n\nconst baseClass = 'autosave'\n\nexport type Props = {\n collection?: ClientCollectionConfig\n global?: ClientGlobalConfig\n id?: number | string\n publishedDocUpdatedAt: string\n}\n\nexport const Autosave: React.FC<Props> = ({\n id,\n collection,\n global: globalDoc,\n publishedDocUpdatedAt,\n}) => {\n const {\n routes: { api },\n serverURL,\n } = useConfig()\n const { docConfig, getVersions, versions } = useDocumentInfo()\n const { reportUpdate } = useDocumentEvents()\n const versionsConfig = docConfig?.versions\n\n const [fields] = useAllFormFields()\n const modified = useFormModified()\n const { code: locale } = useLocale()\n const { i18n, t } = useTranslation()\n\n let interval = 800\n if (versionsConfig.drafts && versionsConfig?.drafts?.autosave)\n interval = versionsConfig.drafts.autosave.interval\n\n const [saving, setSaving] = useState(false)\n const [lastSaved, setLastSaved] = useState<number>()\n const debouncedFields = useDebounce(fields, interval)\n const fieldRef = useRef(fields)\n const modifiedRef = useRef(modified)\n const localeRef = useRef(locale)\n\n // Store fields in ref so the autosave func\n // can always retrieve the most to date copies\n // after the timeout has executed\n fieldRef.current = fields\n\n // Store modified in ref so the autosave func\n // can bail out if modified becomes false while\n // timing out during autosave\n modifiedRef.current = modified\n\n // Store locale in ref so the autosave func\n // can always retrieve the most to date locale\n localeRef.current = locale\n\n // When debounced fields change, autosave\n useEffect(() => {\n const autosave = () => {\n if (modified) {\n setSaving(true)\n\n let url: string\n let method: string\n let entitySlug: string\n\n if (collection && id) {\n entitySlug = collection.slug\n url = `${serverURL}${api}/${entitySlug}/${id}?draft=true&autosave=true&locale=${localeRef.current}`\n method = 'PATCH'\n }\n\n if (globalDoc) {\n entitySlug = globalDoc.slug\n url = `${serverURL}${api}/globals/${entitySlug}?draft=true&autosave=true&locale=${localeRef.current}`\n method = 'POST'\n }\n\n if (url) {\n setTimeout(async () => {\n if (modifiedRef.current) {\n const body = {\n ...reduceFieldsToValues(fieldRef.current, true),\n _status: 'draft',\n }\n const res = await fetch(url, {\n body: JSON.stringify(body),\n credentials: 'include',\n headers: {\n 'Accept-Language': i18n.language,\n 'Content-Type': 'application/json',\n },\n method,\n })\n\n if (res.status === 200) {\n const newDate = new Date()\n setLastSaved(newDate.getTime())\n reportUpdate({\n id,\n entitySlug,\n updatedAt: newDate.toISOString(),\n })\n void getVersions()\n }\n }\n\n setSaving(false)\n }, 1000)\n }\n }\n }\n\n void autosave()\n }, [\n i18n,\n debouncedFields,\n modified,\n serverURL,\n api,\n collection,\n globalDoc,\n reportUpdate,\n id,\n getVersions,\n ])\n\n useEffect(() => {\n if (versions?.docs?.[0]) {\n setLastSaved(new Date(versions.docs[0].updatedAt).getTime())\n } else if (publishedDocUpdatedAt) {\n setLastSaved(new Date(publishedDocUpdatedAt).getTime())\n }\n }, [publishedDocUpdatedAt, versions])\n\n return (\n <div className={baseClass}>\n {saving && t('general:saving')}\n {!saving && lastSaved && (\n <React.Fragment>\n {t('version:lastSavedAgo', {\n distance: formatTimeToNow({ date: lastSaved, i18n }),\n })}\n </React.Fragment>\n )}\n </div>\n )\n}\n"],"names":["React","useEffect","useRef","useState","useAllFormFields","useFormModified","useDebounce","useConfig","useDocumentEvents","useDocumentInfo","useLocale","useTranslation","formatTimeToNow","reduceFieldsToValues","baseClass","Autosave","id","collection","global","globalDoc","publishedDocUpdatedAt","routes","api","serverURL","docConfig","getVersions","versions","reportUpdate","versionsConfig","fields","modified","code","locale","i18n","t","interval","drafts","autosave","saving","setSaving","lastSaved","setLastSaved","debouncedFields","fieldRef","modifiedRef","localeRef","current","url","method","entitySlug","slug","setTimeout","body","_status","res","fetch","JSON","stringify","credentials","headers","language","status","newDate","Date","getTime","updatedAt","toISOString","docs","div","className","Fragment","distance","date"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAAA;AAIA,OAAOA,SAASC,SAAS,EAAEC,MAAM,EAAEC,QAAQ,QAAQ,QAAO;AAE1D,SAASC,gBAAgB,EAAEC,eAAe,QAAQ,8BAA6B;AAC/E,SAASC,WAAW,QAAQ,6BAA4B;AACxD,SAASC,SAAS,QAAQ,kCAAiC;AAC3D,SAASC,iBAAiB,QAAQ,0CAAyC;AAC3E,SAASC,eAAe,QAAQ,wCAAuC;AACvE,SAASC,SAAS,QAAQ,kCAAiC;AAC3D,SAASC,cAAc,QAAQ,uCAAsC;AACrE,SAASC,eAAe,QAAQ,gCAA+B;AAC/D,SAASC,oBAAoB,QAAQ,0CAAyC;AAG9E,MAAMC,YAAY;AASlB,OAAO,MAAMC,WAA4B,CAAC,EACxCC,EAAE,EACFC,UAAU,EACVC,QAAQC,SAAS,EACjBC,qBAAqB,EACtB;IACC,MAAM,EACJC,QAAQ,EAAEC,GAAG,EAAE,EACfC,SAAS,EACV,GAAGhB;IACJ,MAAM,EAAEiB,SAAS,EAAEC,WAAW,EAAEC,QAAQ,EAAE,GAAGjB;IAC7C,MAAM,EAAEkB,YAAY,EAAE,GAAGnB;IACzB,MAAMoB,iBAAiBJ,WAAWE;IAElC,MAAM,CAACG,OAAO,GAAGzB;IACjB,MAAM0B,WAAWzB;IACjB,MAAM,EAAE0B,MAAMC,MAAM,EAAE,GAAGtB;IACzB,MAAM,EAAEuB,IAAI,EAAEC,CAAC,EAAE,GAAGvB;IAEpB,IAAIwB,WAAW;IACf,IAAIP,eAAeQ,MAAM,IAAIR,gBAAgBQ,QAAQC,UACnDF,WAAWP,eAAeQ,MAAM,CAACC,QAAQ,CAACF,QAAQ;IAEpD,MAAM,CAACG,QAAQC,UAAU,GAAGpC,SAAS;IACrC,MAAM,CAACqC,WAAWC,aAAa,GAAGtC;IAClC,MAAMuC,kBAAkBpC,YAAYuB,QAAQM;IAC5C,MAAMQ,WAAWzC,OAAO2B;IACxB,MAAMe,cAAc1C,OAAO4B;IAC3B,MAAMe,YAAY3C,OAAO8B;IAEzB,2CAA2C;IAC3C,8CAA8C;IAC9C,iCAAiC;IACjCW,SAASG,OAAO,GAAGjB;IAEnB,6CAA6C;IAC7C,+CAA+C;IAC/C,6BAA6B;IAC7Be,YAAYE,OAAO,GAAGhB;IAEtB,2CAA2C;IAC3C,8CAA8C;IAC9Ce,UAAUC,OAAO,GAAGd;IAEpB,yCAAyC;IACzC/B,UAAU;QACR,MAAMoC,WAAW;YACf,IAAIP,UAAU;gBACZS,UAAU;gBAEV,IAAIQ;gBACJ,IAAIC;gBACJ,IAAIC;gBAEJ,IAAIhC,cAAcD,IAAI;oBACpBiC,aAAahC,WAAWiC,IAAI;oBAC5BH,MAAM,CAAC,EAAExB,UAAU,EAAED,IAAI,CAAC,EAAE2B,WAAW,CAAC,EAAEjC,GAAG,iCAAiC,EAAE6B,UAAUC,OAAO,CAAC,CAAC;oBACnGE,SAAS;gBACX;gBAEA,IAAI7B,WAAW;oBACb8B,aAAa9B,UAAU+B,IAAI;oBAC3BH,MAAM,CAAC,EAAExB,UAAU,EAAED,IAAI,SAAS,EAAE2B,WAAW,iCAAiC,EAAEJ,UAAUC,OAAO,CAAC,CAAC;oBACrGE,SAAS;gBACX;gBAEA,IAAID,KAAK;oBACPI,WAAW;wBACT,IAAIP,YAAYE,OAAO,EAAE;4BACvB,MAAMM,OAAO;gCACX,GAAGvC,qBAAqB8B,SAASG,OAAO,EAAE,KAAK;gCAC/CO,SAAS;4BACX;4BACA,MAAMC,MAAM,MAAMC,MAAMR,KAAK;gCAC3BK,MAAMI,KAAKC,SAAS,CAACL;gCACrBM,aAAa;gCACbC,SAAS;oCACP,mBAAmB1B,KAAK2B,QAAQ;oCAChC,gBAAgB;gCAClB;gCACAZ;4BACF;4BAEA,IAAIM,IAAIO,MAAM,KAAK,KAAK;gCACtB,MAAMC,UAAU,IAAIC;gCACpBtB,aAAaqB,QAAQE,OAAO;gCAC5BrC,aAAa;oCACXX;oCACAiC;oCACAgB,WAAWH,QAAQI,WAAW;gCAChC;gCACA,KAAKzC;4BACP;wBACF;wBAEAc,UAAU;oBACZ,GAAG;gBACL;YACF;QACF;QAEA,KAAKF;IACP,GAAG;QACDJ;QACAS;QACAZ;QACAP;QACAD;QACAL;QACAE;QACAQ;QACAX;QACAS;KACD;IAEDxB,UAAU;QACR,IAAIyB,UAAUyC,MAAM,CAAC,EAAE,EAAE;YACvB1B,aAAa,IAAIsB,KAAKrC,SAASyC,IAAI,CAAC,EAAE,CAACF,SAAS,EAAED,OAAO;QAC3D,OAAO,IAAI5C,uBAAuB;YAChCqB,aAAa,IAAIsB,KAAK3C,uBAAuB4C,OAAO;QACtD;IACF,GAAG;QAAC5C;QAAuBM;KAAS;IAEpC,qBACE,oBAAC0C;QAAIC,WAAWvD;OACbwB,UAAUJ,EAAE,mBACZ,CAACI,UAAUE,2BACV,oBAACxC,MAAMsE,QAAQ,QACZpC,EAAE,wBAAwB;QACzBqC,UAAU3D,gBAAgB;YAAE4D,MAAMhC;YAAWP;QAAK;IACpD;AAKV,EAAC"}
|
|
@@ -17,7 +17,7 @@ export const Banner = ({ type = 'default', alignIcon = 'right', children, classN
|
|
|
17
17
|
if (to) RenderedType = Link;
|
|
18
18
|
return /*#__PURE__*/ React.createElement(RenderedType, {
|
|
19
19
|
className: classes,
|
|
20
|
-
href: to ||
|
|
20
|
+
href: to || null,
|
|
21
21
|
onClick: onClick
|
|
22
22
|
}, icon && alignIcon === 'left' && /*#__PURE__*/ React.createElement(React.Fragment, null, icon), /*#__PURE__*/ React.createElement("span", {
|
|
23
23
|
className: `${baseClass}__content`
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/elements/Banner/index.tsx"],"sourcesContent":["import LinkImport from 'next/link.js' // TODO: abstract this out to support all routers\nimport type { MouseEvent } from 'react'\n\nimport React from 'react'\n\nimport './index.scss'\n\nconst Link = (LinkImport.default || LinkImport) as unknown as typeof LinkImport.default\n\nconst baseClass = 'banner'\n\ntype onClick = (event: MouseEvent) => void\n\nexport type Props = {\n alignIcon?: 'left' | 'right'\n children?: React.ReactNode\n className?: string\n icon?: React.ReactNode\n onClick?: onClick\n to?: string\n type?: 'default' | 'error' | 'info' | 'success'\n}\n\nexport type RenderedTypeProps = {\n children?: React.ReactNode\n className?: string\n onClick?: onClick\n to: string\n}\n\nexport const Banner: React.FC<Props> = ({\n type = 'default',\n alignIcon = 'right',\n children,\n className,\n icon,\n onClick,\n to,\n}) => {\n const classes = [\n baseClass,\n `${baseClass}--type-${type}`,\n className && className,\n to && `${baseClass}--has-link`,\n (to || onClick) && `${baseClass}--has-action`,\n icon && `${baseClass}--has-icon`,\n icon && `${baseClass}--align-icon-${alignIcon}`,\n ]\n .filter(Boolean)\n .join(' ')\n\n let RenderedType: React.ComponentType<RenderedTypeProps> | React.ElementType = 'div'\n\n if (onClick && !to) RenderedType = 'button'\n if (to) RenderedType = Link\n\n return (\n <RenderedType className={classes} href={to ||
|
|
1
|
+
{"version":3,"sources":["../../../src/elements/Banner/index.tsx"],"sourcesContent":["import LinkImport from 'next/link.js' // TODO: abstract this out to support all routers\nimport type { MouseEvent } from 'react'\n\nimport React from 'react'\n\nimport './index.scss'\n\nconst Link = (LinkImport.default || LinkImport) as unknown as typeof LinkImport.default\n\nconst baseClass = 'banner'\n\ntype onClick = (event: MouseEvent) => void\n\nexport type Props = {\n alignIcon?: 'left' | 'right'\n children?: React.ReactNode\n className?: string\n icon?: React.ReactNode\n onClick?: onClick\n to?: string\n type?: 'default' | 'error' | 'info' | 'success'\n}\n\nexport type RenderedTypeProps = {\n children?: React.ReactNode\n className?: string\n onClick?: onClick\n to: string\n}\n\nexport const Banner: React.FC<Props> = ({\n type = 'default',\n alignIcon = 'right',\n children,\n className,\n icon,\n onClick,\n to,\n}) => {\n const classes = [\n baseClass,\n `${baseClass}--type-${type}`,\n className && className,\n to && `${baseClass}--has-link`,\n (to || onClick) && `${baseClass}--has-action`,\n icon && `${baseClass}--has-icon`,\n icon && `${baseClass}--align-icon-${alignIcon}`,\n ]\n .filter(Boolean)\n .join(' ')\n\n let RenderedType: React.ComponentType<RenderedTypeProps> | React.ElementType = 'div'\n\n if (onClick && !to) RenderedType = 'button'\n if (to) RenderedType = Link\n\n return (\n <RenderedType className={classes} href={to || null} onClick={onClick}>\n {icon && alignIcon === 'left' && <React.Fragment>{icon}</React.Fragment>}\n <span className={`${baseClass}__content`}>{children}</span>\n {icon && alignIcon === 'right' && <React.Fragment>{icon}</React.Fragment>}\n </RenderedType>\n )\n}\n"],"names":["LinkImport","React","Link","default","baseClass","Banner","type","alignIcon","children","className","icon","onClick","to","classes","filter","Boolean","join","RenderedType","href","Fragment","span"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAAA,OAAOA,gBAAgB,eAAc,CAAC,iDAAiD;AAGvF,OAAOC,WAAW,QAAO;AAIzB,MAAMC,OAAQF,WAAWG,OAAO,IAAIH;AAEpC,MAAMI,YAAY;AAqBlB,OAAO,MAAMC,SAA0B,CAAC,EACtCC,OAAO,SAAS,EAChBC,YAAY,OAAO,EACnBC,QAAQ,EACRC,SAAS,EACTC,IAAI,EACJC,OAAO,EACPC,EAAE,EACH;IACC,MAAMC,UAAU;QACdT;QACA,CAAC,EAAEA,UAAU,OAAO,EAAEE,KAAK,CAAC;QAC5BG,aAAaA;QACbG,MAAM,CAAC,EAAER,UAAU,UAAU,CAAC;QAC7BQ,CAAAA,MAAMD,OAAM,KAAM,CAAC,EAAEP,UAAU,YAAY,CAAC;QAC7CM,QAAQ,CAAC,EAAEN,UAAU,UAAU,CAAC;QAChCM,QAAQ,CAAC,EAAEN,UAAU,aAAa,EAAEG,UAAU,CAAC;KAChD,CACEO,MAAM,CAACC,SACPC,IAAI,CAAC;IAER,IAAIC,eAA2E;IAE/E,IAAIN,WAAW,CAACC,IAAIK,eAAe;IACnC,IAAIL,IAAIK,eAAef;IAEvB,qBACE,oBAACe;QAAaR,WAAWI;QAASK,MAAMN,MAAM;QAAMD,SAASA;OAC1DD,QAAQH,cAAc,wBAAU,oBAACN,MAAMkB,QAAQ,QAAET,qBAClD,oBAACU;QAAKX,WAAW,CAAC,EAAEL,UAAU,SAAS,CAAC;OAAGI,WAC1CE,QAAQH,cAAc,yBAAW,oBAACN,MAAMkB,QAAQ,QAAET;AAGzD,EAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/DocumentControls/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAA;AAC1E,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,eAAe,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/DocumentControls/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAA;AAC1E,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,eAAe,CAAA;AAG9D,OAAO,KAAmB,MAAM,OAAO,CAAA;AAgBvC,OAAO,cAAc,CAAA;AAIrB,eAAO,MAAM,gBAAgB,EAAE,KAAK,CAAC,EAAE,CAAC;IACtC,MAAM,EAAE,MAAM,CAAA;IACd,IAAI,CAAC,EAAE,GAAG,CAAA;IACV,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,iBAAiB,CAAC,EAAE,OAAO,CAAA;IAC3B,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACpB,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,WAAW,EAAE,oBAAoB,GAAG,gBAAgB,GAAG,IAAI,CAAA;IAC3D,IAAI,EAAE,yBAAyB,CAAC,MAAM,CAAC,CAAA;CACxC,CAmMA,CAAA"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
import { getTranslation } from '@payloadcms/translations';
|
|
3
|
-
import { useComponentMap } from '@payloadcms/ui/providers/ComponentMap';
|
|
4
3
|
import React, { Fragment } from 'react';
|
|
4
|
+
import { useComponentMap } from '../../providers/ComponentMap/index.js';
|
|
5
5
|
import { useConfig } from '../../providers/Config/index.js';
|
|
6
6
|
import { useTranslation } from '../../providers/Translation/index.js';
|
|
7
7
|
import { formatDate } from '../../utilities/formatDate.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/elements/DocumentControls/index.tsx"],"sourcesContent":["'use client'\nimport type { CollectionPermission, GlobalPermission } from 'payload/auth'\nimport type { SanitizedCollectionConfig } from 'payload/types'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport { useComponentMap } from '@payloadcms/ui/providers/ComponentMap'\nimport React, { Fragment } from 'react'\n\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { formatDate } from '../../utilities/formatDate.js'\nimport { Autosave } from '../Autosave/index.js'\nimport { DeleteDocument } from '../DeleteDocument/index.js'\nimport { DuplicateDocument } from '../DuplicateDocument/index.js'\nimport { Gutter } from '../Gutter/index.js'\nimport { Popup, PopupList } from '../Popup/index.js'\nimport { PreviewButton } from '../PreviewButton/index.js'\nimport { Publish } from '../Publish/index.js'\nimport { Save } from '../Save/index.js'\nimport { SaveDraft } from '../SaveDraft/index.js'\nimport { Status } from '../Status/index.js'\nimport './index.scss'\n\nconst baseClass = 'doc-controls'\n\nexport const DocumentControls: React.FC<{\n apiURL: string\n data?: any\n disableActions?: boolean\n hasSavePermission?: boolean\n id?: number | string\n isAccountView?: boolean\n isEditing?: boolean\n permissions: CollectionPermission | GlobalPermission | null\n slug: SanitizedCollectionConfig['slug']\n}> = (props) => {\n const {\n id,\n slug,\n data,\n disableActions,\n hasSavePermission,\n isAccountView,\n isEditing,\n permissions,\n } = props\n\n const { i18n } = useTranslation()\n\n const config = useConfig()\n const { getComponentMap } = useComponentMap()\n\n const collectionConfig = config.collections.find((coll) => coll.slug === slug)\n const globalConfig = config.globals.find((global) => global.slug === slug)\n\n const componentMap = getComponentMap({\n collectionSlug: collectionConfig?.slug,\n globalSlug: globalConfig?.slug,\n })\n\n const {\n admin: { dateFormat },\n routes: { admin: adminRoute },\n } = config\n\n const hasCreatePermission =\n permissions && 'create' in permissions && permissions.create?.permission\n\n const hasDeletePermission =\n permissions && 'delete' in permissions && permissions.delete?.permission\n\n const showDotMenu = Boolean(\n collectionConfig && id && !disableActions && (hasCreatePermission || hasDeletePermission),\n )\n\n return (\n <Gutter className={baseClass}>\n <div className={`${baseClass}__wrapper`}>\n <div className={`${baseClass}__content`}>\n <ul className={`${baseClass}__meta`}>\n {collectionConfig && !isEditing && !isAccountView && (\n <li className={`${baseClass}__list-item`}>\n <p className={`${baseClass}__value`}>\n {i18n.t('general:creatingNewLabel', {\n label: getTranslation(\n collectionConfig?.labels?.singular ?? i18n.t('general:document'),\n i18n,\n ),\n })}\n </p>\n </li>\n )}\n {(collectionConfig?.versions?.drafts || globalConfig?.versions?.drafts) && (\n <Fragment>\n {(globalConfig || (collectionConfig && isEditing)) && (\n <li\n className={[`${baseClass}__status`, `${baseClass}__list-item`]\n .filter(Boolean)\n .join(' ')}\n >\n <Status />\n </li>\n )}\n {((collectionConfig?.versions?.drafts &&\n collectionConfig?.versions?.drafts?.autosave) ||\n (globalConfig?.versions?.drafts && globalConfig?.versions?.drafts?.autosave)) &&\n hasSavePermission && (\n <li className={`${baseClass}__list-item`}>\n <Autosave\n collection={collectionConfig}\n global={globalConfig}\n id={id}\n publishedDocUpdatedAt={data?.createdAt}\n />\n </li>\n )}\n </Fragment>\n )}\n {collectionConfig?.timestamps && (isEditing || isAccountView) && (\n <Fragment>\n <li\n className={[`${baseClass}__list-item`, `${baseClass}__value-wrap`]\n .filter(Boolean)\n .join(' ')}\n title={\n data?.updatedAt\n ? formatDate({ date: data?.updatedAt, i18n, pattern: dateFormat })\n : ''\n }\n >\n <p className={`${baseClass}__label`}>{i18n.t('general:lastModified')}: </p>\n {data?.updatedAt && (\n <p className={`${baseClass}__value`}>\n {formatDate({ date: data?.updatedAt, i18n, pattern: dateFormat })}\n </p>\n )}\n </li>\n <li\n className={[`${baseClass}__list-item`, `${baseClass}__value-wrap`]\n .filter(Boolean)\n .join(' ')}\n title={\n data?.createdAt\n ? formatDate({ date: data?.createdAt, i18n, pattern: dateFormat })\n : ''\n }\n >\n <p className={`${baseClass}__label`}>{i18n.t('general:created')}: </p>\n {data?.createdAt && (\n <p className={`${baseClass}__value`}>\n {formatDate({ date: data?.createdAt, i18n, pattern: dateFormat })}\n </p>\n )}\n </li>\n </Fragment>\n )}\n </ul>\n </div>\n <div className={`${baseClass}__controls-wrapper`}>\n <div className={`${baseClass}__controls`}>\n {componentMap?.isPreviewEnabled && (\n <PreviewButton CustomComponent={componentMap.PreviewButton} />\n )}\n {hasSavePermission && (\n <React.Fragment>\n {collectionConfig?.versions?.drafts || globalConfig?.versions?.drafts ? (\n <React.Fragment>\n {((collectionConfig?.versions?.drafts &&\n !collectionConfig?.versions?.drafts?.autosave) ||\n (globalConfig?.versions?.drafts &&\n !globalConfig?.versions?.drafts?.autosave)) && (\n <SaveDraft CustomComponent={componentMap.SaveDraftButton} />\n )}\n <Publish CustomComponent={componentMap.PublishButton} />\n </React.Fragment>\n ) : (\n <Save CustomComponent={componentMap.SaveButton} />\n )}\n </React.Fragment>\n )}\n </div>\n {showDotMenu && (\n <Popup\n button={\n <div className={`${baseClass}__dots`}>\n <div />\n <div />\n <div />\n </div>\n }\n className={`${baseClass}__popup`}\n horizontalAlign=\"right\"\n size=\"large\"\n verticalAlign=\"bottom\"\n >\n <PopupList.ButtonGroup>\n {hasCreatePermission && (\n <React.Fragment>\n <PopupList.Button\n href={`${adminRoute}/collections/${collectionConfig?.slug}/create`}\n id=\"action-create\"\n >\n {i18n.t('general:createNew')}\n </PopupList.Button>\n {!collectionConfig.disableDuplicate && isEditing && (\n <DuplicateDocument\n id={id.toString()}\n singularLabel={collectionConfig?.labels?.singular}\n slug={collectionConfig?.slug}\n />\n )}\n </React.Fragment>\n )}\n {hasDeletePermission && (\n <DeleteDocument\n buttonId=\"action-delete\"\n collectionSlug={collectionConfig?.slug}\n id={id.toString()}\n singularLabel={collectionConfig?.labels?.singular}\n useAsTitle={collectionConfig?.admin?.useAsTitle}\n />\n )}\n </PopupList.ButtonGroup>\n </Popup>\n )}\n </div>\n </div>\n <div className={`${baseClass}__divider`} />\n </Gutter>\n )\n}\n"],"names":["getTranslation","useComponentMap","React","Fragment","useConfig","useTranslation","formatDate","Autosave","DeleteDocument","DuplicateDocument","Gutter","Popup","PopupList","PreviewButton","Publish","Save","SaveDraft","Status","baseClass","DocumentControls","props","id","slug","data","disableActions","hasSavePermission","isAccountView","isEditing","permissions","i18n","config","getComponentMap","collectionConfig","collections","find","coll","globalConfig","globals","global","componentMap","collectionSlug","globalSlug","admin","dateFormat","routes","adminRoute","hasCreatePermission","create","permission","hasDeletePermission","delete","showDotMenu","Boolean","className","div","ul","li","p","t","label","labels","singular","versions","drafts","filter","join","autosave","collection","publishedDocUpdatedAt","createdAt","timestamps","title","updatedAt","date","pattern","isPreviewEnabled","CustomComponent","SaveDraftButton","PublishButton","SaveButton","button","horizontalAlign","size","verticalAlign","ButtonGroup","Button","href","disableDuplicate","toString","singularLabel","buttonId","useAsTitle"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
|
|
1
|
+
{"version":3,"sources":["../../../src/elements/DocumentControls/index.tsx"],"sourcesContent":["'use client'\nimport type { CollectionPermission, GlobalPermission } from 'payload/auth'\nimport type { SanitizedCollectionConfig } from 'payload/types'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport React, { Fragment } from 'react'\n\nimport { useComponentMap } from '../../providers/ComponentMap/index.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { formatDate } from '../../utilities/formatDate.js'\nimport { Autosave } from '../Autosave/index.js'\nimport { DeleteDocument } from '../DeleteDocument/index.js'\nimport { DuplicateDocument } from '../DuplicateDocument/index.js'\nimport { Gutter } from '../Gutter/index.js'\nimport { Popup, PopupList } from '../Popup/index.js'\nimport { PreviewButton } from '../PreviewButton/index.js'\nimport { Publish } from '../Publish/index.js'\nimport { Save } from '../Save/index.js'\nimport { SaveDraft } from '../SaveDraft/index.js'\nimport { Status } from '../Status/index.js'\nimport './index.scss'\n\nconst baseClass = 'doc-controls'\n\nexport const DocumentControls: React.FC<{\n apiURL: string\n data?: any\n disableActions?: boolean\n hasSavePermission?: boolean\n id?: number | string\n isAccountView?: boolean\n isEditing?: boolean\n permissions: CollectionPermission | GlobalPermission | null\n slug: SanitizedCollectionConfig['slug']\n}> = (props) => {\n const {\n id,\n slug,\n data,\n disableActions,\n hasSavePermission,\n isAccountView,\n isEditing,\n permissions,\n } = props\n\n const { i18n } = useTranslation()\n\n const config = useConfig()\n const { getComponentMap } = useComponentMap()\n\n const collectionConfig = config.collections.find((coll) => coll.slug === slug)\n const globalConfig = config.globals.find((global) => global.slug === slug)\n\n const componentMap = getComponentMap({\n collectionSlug: collectionConfig?.slug,\n globalSlug: globalConfig?.slug,\n })\n\n const {\n admin: { dateFormat },\n routes: { admin: adminRoute },\n } = config\n\n const hasCreatePermission =\n permissions && 'create' in permissions && permissions.create?.permission\n\n const hasDeletePermission =\n permissions && 'delete' in permissions && permissions.delete?.permission\n\n const showDotMenu = Boolean(\n collectionConfig && id && !disableActions && (hasCreatePermission || hasDeletePermission),\n )\n\n return (\n <Gutter className={baseClass}>\n <div className={`${baseClass}__wrapper`}>\n <div className={`${baseClass}__content`}>\n <ul className={`${baseClass}__meta`}>\n {collectionConfig && !isEditing && !isAccountView && (\n <li className={`${baseClass}__list-item`}>\n <p className={`${baseClass}__value`}>\n {i18n.t('general:creatingNewLabel', {\n label: getTranslation(\n collectionConfig?.labels?.singular ?? i18n.t('general:document'),\n i18n,\n ),\n })}\n </p>\n </li>\n )}\n {(collectionConfig?.versions?.drafts || globalConfig?.versions?.drafts) && (\n <Fragment>\n {(globalConfig || (collectionConfig && isEditing)) && (\n <li\n className={[`${baseClass}__status`, `${baseClass}__list-item`]\n .filter(Boolean)\n .join(' ')}\n >\n <Status />\n </li>\n )}\n {((collectionConfig?.versions?.drafts &&\n collectionConfig?.versions?.drafts?.autosave) ||\n (globalConfig?.versions?.drafts && globalConfig?.versions?.drafts?.autosave)) &&\n hasSavePermission && (\n <li className={`${baseClass}__list-item`}>\n <Autosave\n collection={collectionConfig}\n global={globalConfig}\n id={id}\n publishedDocUpdatedAt={data?.createdAt}\n />\n </li>\n )}\n </Fragment>\n )}\n {collectionConfig?.timestamps && (isEditing || isAccountView) && (\n <Fragment>\n <li\n className={[`${baseClass}__list-item`, `${baseClass}__value-wrap`]\n .filter(Boolean)\n .join(' ')}\n title={\n data?.updatedAt\n ? formatDate({ date: data?.updatedAt, i18n, pattern: dateFormat })\n : ''\n }\n >\n <p className={`${baseClass}__label`}>{i18n.t('general:lastModified')}: </p>\n {data?.updatedAt && (\n <p className={`${baseClass}__value`}>\n {formatDate({ date: data?.updatedAt, i18n, pattern: dateFormat })}\n </p>\n )}\n </li>\n <li\n className={[`${baseClass}__list-item`, `${baseClass}__value-wrap`]\n .filter(Boolean)\n .join(' ')}\n title={\n data?.createdAt\n ? formatDate({ date: data?.createdAt, i18n, pattern: dateFormat })\n : ''\n }\n >\n <p className={`${baseClass}__label`}>{i18n.t('general:created')}: </p>\n {data?.createdAt && (\n <p className={`${baseClass}__value`}>\n {formatDate({ date: data?.createdAt, i18n, pattern: dateFormat })}\n </p>\n )}\n </li>\n </Fragment>\n )}\n </ul>\n </div>\n <div className={`${baseClass}__controls-wrapper`}>\n <div className={`${baseClass}__controls`}>\n {componentMap?.isPreviewEnabled && (\n <PreviewButton CustomComponent={componentMap.PreviewButton} />\n )}\n {hasSavePermission && (\n <React.Fragment>\n {collectionConfig?.versions?.drafts || globalConfig?.versions?.drafts ? (\n <React.Fragment>\n {((collectionConfig?.versions?.drafts &&\n !collectionConfig?.versions?.drafts?.autosave) ||\n (globalConfig?.versions?.drafts &&\n !globalConfig?.versions?.drafts?.autosave)) && (\n <SaveDraft CustomComponent={componentMap.SaveDraftButton} />\n )}\n <Publish CustomComponent={componentMap.PublishButton} />\n </React.Fragment>\n ) : (\n <Save CustomComponent={componentMap.SaveButton} />\n )}\n </React.Fragment>\n )}\n </div>\n {showDotMenu && (\n <Popup\n button={\n <div className={`${baseClass}__dots`}>\n <div />\n <div />\n <div />\n </div>\n }\n className={`${baseClass}__popup`}\n horizontalAlign=\"right\"\n size=\"large\"\n verticalAlign=\"bottom\"\n >\n <PopupList.ButtonGroup>\n {hasCreatePermission && (\n <React.Fragment>\n <PopupList.Button\n href={`${adminRoute}/collections/${collectionConfig?.slug}/create`}\n id=\"action-create\"\n >\n {i18n.t('general:createNew')}\n </PopupList.Button>\n {!collectionConfig.disableDuplicate && isEditing && (\n <DuplicateDocument\n id={id.toString()}\n singularLabel={collectionConfig?.labels?.singular}\n slug={collectionConfig?.slug}\n />\n )}\n </React.Fragment>\n )}\n {hasDeletePermission && (\n <DeleteDocument\n buttonId=\"action-delete\"\n collectionSlug={collectionConfig?.slug}\n id={id.toString()}\n singularLabel={collectionConfig?.labels?.singular}\n useAsTitle={collectionConfig?.admin?.useAsTitle}\n />\n )}\n </PopupList.ButtonGroup>\n </Popup>\n )}\n </div>\n </div>\n <div className={`${baseClass}__divider`} />\n </Gutter>\n )\n}\n"],"names":["getTranslation","React","Fragment","useComponentMap","useConfig","useTranslation","formatDate","Autosave","DeleteDocument","DuplicateDocument","Gutter","Popup","PopupList","PreviewButton","Publish","Save","SaveDraft","Status","baseClass","DocumentControls","props","id","slug","data","disableActions","hasSavePermission","isAccountView","isEditing","permissions","i18n","config","getComponentMap","collectionConfig","collections","find","coll","globalConfig","globals","global","componentMap","collectionSlug","globalSlug","admin","dateFormat","routes","adminRoute","hasCreatePermission","create","permission","hasDeletePermission","delete","showDotMenu","Boolean","className","div","ul","li","p","t","label","labels","singular","versions","drafts","filter","join","autosave","collection","publishedDocUpdatedAt","createdAt","timestamps","title","updatedAt","date","pattern","isPreviewEnabled","CustomComponent","SaveDraftButton","PublishButton","SaveButton","button","horizontalAlign","size","verticalAlign","ButtonGroup","Button","href","disableDuplicate","toString","singularLabel","buttonId","useAsTitle"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getTextFieldsToBeSearched.d.ts","sourceRoot":"","sources":["../../../src/elements/ListControls/getTextFieldsToBeSearched.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"getTextFieldsToBeSearched.d.ts","sourceRoot":"","sources":["../../../src/elements/ListControls/getTextFieldsToBeSearched.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,yDAAyD,CAAA;AAIpG,eAAO,MAAM,yBAAyB,yBACd,MAAM,EAAE,yBAE7B,WAAW,EASb,CAAA"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { flattenFieldMap } from '
|
|
1
|
+
import { flattenFieldMap } from '../../utilities/flattenFieldMap.js';
|
|
2
2
|
export const getTextFieldsToBeSearched = (listSearchableFields, fieldMap)=>{
|
|
3
3
|
if (listSearchableFields) {
|
|
4
4
|
const flattenedFields = flattenFieldMap(fieldMap);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/elements/ListControls/getTextFieldsToBeSearched.ts"],"sourcesContent":["import {
|
|
1
|
+
{"version":3,"sources":["../../../src/elements/ListControls/getTextFieldsToBeSearched.ts"],"sourcesContent":["import type { FieldMap, MappedField } from '../../providers/ComponentMap/buildComponentMap/types.js'\n\nimport { flattenFieldMap } from '../../utilities/flattenFieldMap.js'\n\nexport const getTextFieldsToBeSearched = (\n listSearchableFields: string[],\n fieldMap: FieldMap,\n): MappedField[] => {\n if (listSearchableFields) {\n const flattenedFields = flattenFieldMap(fieldMap)\n return flattenedFields.filter(\n (field) => field.isFieldAffectingData && listSearchableFields.includes(field.name),\n )\n }\n\n return null\n}\n"],"names":["flattenFieldMap","getTextFieldsToBeSearched","listSearchableFields","fieldMap","flattenedFields","filter","field","isFieldAffectingData","includes","name"],"rangeMappings":";;;;;;;","mappings":"AAEA,SAASA,eAAe,QAAQ,qCAAoC;AAEpE,OAAO,MAAMC,4BAA4B,CACvCC,sBACAC;IAEA,IAAID,sBAAsB;QACxB,MAAME,kBAAkBJ,gBAAgBG;QACxC,OAAOC,gBAAgBC,MAAM,CAC3B,CAACC,QAAUA,MAAMC,oBAAoB,IAAIL,qBAAqBM,QAAQ,CAACF,MAAMG,IAAI;IAErF;IAEA,OAAO;AACT,EAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/ListControls/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,sBAAsB,EAAE,KAAK,EAAE,MAAM,eAAe,CAAA;AAIlE,OAAO,KAAsC,MAAM,OAAO,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/ListControls/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,sBAAsB,EAAE,KAAK,EAAE,MAAM,eAAe,CAAA;AAIlE,OAAO,KAAsC,MAAM,OAAO,CAAA;AAM1D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sCAAsC,CAAA;AAiBpE,OAAO,cAAc,CAAA;AAIrB,MAAM,MAAM,iBAAiB,GAAG;IAC9B,gBAAgB,EAAE,sBAAsB,CAAA;IACxC,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,QAAQ,EAAE,QAAQ,CAAA;IAClB,kBAAkB,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAA;IAC7C,gBAAgB,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;IACzC,iBAAiB,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAA;CAC3C,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CA4IpD,CAAA"}
|
|
@@ -4,7 +4,7 @@ import { getTranslation } from '@payloadcms/translations';
|
|
|
4
4
|
import React, { useEffect, useRef, useState } from 'react';
|
|
5
5
|
import AnimateHeightImport from 'react-animate-height';
|
|
6
6
|
const AnimateHeight = AnimateHeightImport.default || AnimateHeightImport;
|
|
7
|
-
import { useUseTitleField } from '
|
|
7
|
+
import { useUseTitleField } from '../../hooks/useUseAsTitle.js';
|
|
8
8
|
import { Chevron } from '../../icons/Chevron/index.js';
|
|
9
9
|
import { useListQuery } from '../../providers/ListQuery/index.js';
|
|
10
10
|
import { useSearchParams } from '../../providers/SearchParams/index.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/elements/ListControls/index.tsx"],"sourcesContent":["'use client'\nimport type { ClientCollectionConfig, Where } from 'payload/types'\n\nimport * as facelessUIImport from '@faceless-ui/window-info'\nimport { getTranslation } from '@payloadcms/translations'\nimport React, { useEffect, useRef, useState } from 'react'\nimport AnimateHeightImport from 'react-animate-height'\n\nconst AnimateHeight = (AnimateHeightImport.default ||\n AnimateHeightImport) as typeof AnimateHeightImport.default\n\nimport { useUseTitleField } from '@payloadcms/ui/hooks/useUseAsTitle'\n\nimport type { FieldMap } from '../../utilities/buildComponentMap.js'\n\nimport { Chevron } from '../../icons/Chevron/index.js'\nimport { useListQuery } from '../../providers/ListQuery/index.js'\nimport { useSearchParams } from '../../providers/SearchParams/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { ColumnSelector } from '../ColumnSelector/index.js'\nimport { DeleteMany } from '../DeleteMany/index.js'\nimport { EditMany } from '../EditMany/index.js'\nimport { Pill } from '../Pill/index.js'\nimport { PublishMany } from '../PublishMany/index.js'\nimport { SearchFilter } from '../SearchFilter/index.js'\nimport { UnpublishMany } from '../UnpublishMany/index.js'\nimport { WhereBuilder } from '../WhereBuilder/index.js'\nimport validateWhereQuery from '../WhereBuilder/validateWhereQuery.js'\nimport { getTextFieldsToBeSearched } from './getTextFieldsToBeSearched.js'\nimport './index.scss'\n\nconst baseClass = 'list-controls'\n\nexport type ListControlsProps = {\n collectionConfig: ClientCollectionConfig\n enableColumns?: boolean\n enableSort?: boolean\n fieldMap: FieldMap\n handleSearchChange?: (search: string) => void\n handleSortChange?: (sort: string) => void\n handleWhereChange?: (where: Where) => void\n}\n\n/**\n * The ListControls component is used to render the controls (search, filter, where)\n * for a collection's list view. You can find those directly above the table which lists\n * the collection's documents.\n */\nexport const ListControls: React.FC<ListControlsProps> = (props) => {\n const { collectionConfig, enableColumns = true, enableSort = false, fieldMap } = props\n\n const { useWindowInfo } = facelessUIImport\n\n const { handleSearchChange } = useListQuery()\n const { searchParams } = useSearchParams()\n const titleField = useUseTitleField(collectionConfig, fieldMap)\n const { i18n, t } = useTranslation()\n const {\n breakpoints: { s: smallBreak },\n } = useWindowInfo()\n\n const hasWhereParam = useRef(Boolean(searchParams?.where))\n\n const shouldInitializeWhereOpened = validateWhereQuery(searchParams?.where)\n const [visibleDrawer, setVisibleDrawer] = useState<'columns' | 'sort' | 'where'>(\n shouldInitializeWhereOpened ? 'where' : undefined,\n )\n\n useEffect(() => {\n if (hasWhereParam.current && !searchParams?.where) {\n setVisibleDrawer(undefined)\n hasWhereParam.current = false\n } else if (searchParams?.where) {\n hasWhereParam.current = true\n }\n }, [setVisibleDrawer, searchParams?.where])\n\n return (\n <div className={baseClass}>\n <div className={`${baseClass}__wrap`}>\n <SearchFilter\n fieldLabel={\n (titleField &&\n getTranslation(\n 'label' in titleField.fieldComponentProps &&\n typeof titleField.fieldComponentProps.label === 'string'\n ? titleField.fieldComponentProps.label\n : titleField.name,\n i18n,\n )) ??\n undefined\n }\n fieldName={titleField?.name}\n handleChange={handleSearchChange}\n listSearchableFields={getTextFieldsToBeSearched(\n collectionConfig.admin.listSearchableFields,\n fieldMap,\n )}\n />\n <div className={`${baseClass}__buttons`}>\n <div className={`${baseClass}__buttons-wrap`}>\n {!smallBreak && (\n <React.Fragment>\n <EditMany collection={collectionConfig} fieldMap={fieldMap} />\n <PublishMany collection={collectionConfig} />\n <UnpublishMany collection={collectionConfig} />\n <DeleteMany collection={collectionConfig} />\n </React.Fragment>\n )}\n {enableColumns && (\n <Pill\n aria-controls={`${baseClass}-columns`}\n aria-expanded={visibleDrawer === 'columns'}\n className={`${baseClass}__toggle-columns ${\n visibleDrawer === 'columns' ? `${baseClass}__buttons-active` : ''\n }`}\n icon={<Chevron />}\n onClick={() =>\n setVisibleDrawer(visibleDrawer !== 'columns' ? 'columns' : undefined)\n }\n pillStyle=\"light\"\n >\n {t('general:columns')}\n </Pill>\n )}\n <Pill\n aria-controls={`${baseClass}-where`}\n aria-expanded={visibleDrawer === 'where'}\n className={`${baseClass}__toggle-where ${\n visibleDrawer === 'where' ? `${baseClass}__buttons-active` : ''\n }`}\n icon={<Chevron />}\n onClick={() => setVisibleDrawer(visibleDrawer !== 'where' ? 'where' : undefined)}\n pillStyle=\"light\"\n >\n {t('general:filters')}\n </Pill>\n {enableSort && (\n <Pill\n aria-controls={`${baseClass}-sort`}\n aria-expanded={visibleDrawer === 'sort'}\n className={`${baseClass}__toggle-sort`}\n icon={<Chevron />}\n onClick={() => setVisibleDrawer(visibleDrawer !== 'sort' ? 'sort' : undefined)}\n pillStyle=\"light\"\n >\n {t('general:sort')}\n </Pill>\n )}\n </div>\n </div>\n </div>\n {enableColumns && (\n <AnimateHeight\n className={`${baseClass}__columns`}\n height={visibleDrawer === 'columns' ? 'auto' : 0}\n id={`${baseClass}-columns`}\n >\n <ColumnSelector collectionSlug={collectionConfig.slug} />\n </AnimateHeight>\n )}\n <AnimateHeight\n className={`${baseClass}__where`}\n height={visibleDrawer === 'where' ? 'auto' : 0}\n id={`${baseClass}-where`}\n >\n <WhereBuilder\n collectionPluralLabel={collectionConfig?.labels?.plural}\n collectionSlug={collectionConfig.slug}\n key={String(hasWhereParam.current && !searchParams?.where)}\n />\n </AnimateHeight>\n {enableSort && (\n <AnimateHeight\n className={`${baseClass}__sort`}\n height={visibleDrawer === 'sort' ? 'auto' : 0}\n id={`${baseClass}-sort`}\n >\n <p>Sort Complex</p>\n {/* <SortComplex\n collection={collection}\n handleChange={handleSortChange}\n modifySearchQuery={modifySearchQuery}\n /> */}\n </AnimateHeight>\n )}\n </div>\n )\n}\n"],"names":["facelessUIImport","getTranslation","React","useEffect","useRef","useState","AnimateHeightImport","AnimateHeight","default","useUseTitleField","Chevron","useListQuery","useSearchParams","useTranslation","ColumnSelector","DeleteMany","EditMany","Pill","PublishMany","SearchFilter","UnpublishMany","WhereBuilder","validateWhereQuery","getTextFieldsToBeSearched","baseClass","ListControls","props","collectionConfig","enableColumns","enableSort","fieldMap","useWindowInfo","handleSearchChange","searchParams","titleField","i18n","t","breakpoints","s","smallBreak","hasWhereParam","Boolean","where","shouldInitializeWhereOpened","visibleDrawer","setVisibleDrawer","undefined","current","div","className","fieldLabel","fieldComponentProps","label","name","fieldName","handleChange","listSearchableFields","admin","Fragment","collection","aria-controls","aria-expanded","icon","onClick","pillStyle","height","id","collectionSlug","slug","collectionPluralLabel","labels","plural","key","String","p"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
|
|
1
|
+
{"version":3,"sources":["../../../src/elements/ListControls/index.tsx"],"sourcesContent":["'use client'\nimport type { ClientCollectionConfig, Where } from 'payload/types'\n\nimport * as facelessUIImport from '@faceless-ui/window-info'\nimport { getTranslation } from '@payloadcms/translations'\nimport React, { useEffect, useRef, useState } from 'react'\nimport AnimateHeightImport from 'react-animate-height'\n\nconst AnimateHeight = (AnimateHeightImport.default ||\n AnimateHeightImport) as typeof AnimateHeightImport.default\n\nimport type { FieldMap } from '../../utilities/buildComponentMap.js'\n\nimport { useUseTitleField } from '../../hooks/useUseAsTitle.js'\nimport { Chevron } from '../../icons/Chevron/index.js'\nimport { useListQuery } from '../../providers/ListQuery/index.js'\nimport { useSearchParams } from '../../providers/SearchParams/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { ColumnSelector } from '../ColumnSelector/index.js'\nimport { DeleteMany } from '../DeleteMany/index.js'\nimport { EditMany } from '../EditMany/index.js'\nimport { Pill } from '../Pill/index.js'\nimport { PublishMany } from '../PublishMany/index.js'\nimport { SearchFilter } from '../SearchFilter/index.js'\nimport { UnpublishMany } from '../UnpublishMany/index.js'\nimport { WhereBuilder } from '../WhereBuilder/index.js'\nimport validateWhereQuery from '../WhereBuilder/validateWhereQuery.js'\nimport { getTextFieldsToBeSearched } from './getTextFieldsToBeSearched.js'\nimport './index.scss'\n\nconst baseClass = 'list-controls'\n\nexport type ListControlsProps = {\n collectionConfig: ClientCollectionConfig\n enableColumns?: boolean\n enableSort?: boolean\n fieldMap: FieldMap\n handleSearchChange?: (search: string) => void\n handleSortChange?: (sort: string) => void\n handleWhereChange?: (where: Where) => void\n}\n\n/**\n * The ListControls component is used to render the controls (search, filter, where)\n * for a collection's list view. You can find those directly above the table which lists\n * the collection's documents.\n */\nexport const ListControls: React.FC<ListControlsProps> = (props) => {\n const { collectionConfig, enableColumns = true, enableSort = false, fieldMap } = props\n\n const { useWindowInfo } = facelessUIImport\n\n const { handleSearchChange } = useListQuery()\n const { searchParams } = useSearchParams()\n const titleField = useUseTitleField(collectionConfig, fieldMap)\n const { i18n, t } = useTranslation()\n const {\n breakpoints: { s: smallBreak },\n } = useWindowInfo()\n\n const hasWhereParam = useRef(Boolean(searchParams?.where))\n\n const shouldInitializeWhereOpened = validateWhereQuery(searchParams?.where)\n const [visibleDrawer, setVisibleDrawer] = useState<'columns' | 'sort' | 'where'>(\n shouldInitializeWhereOpened ? 'where' : undefined,\n )\n\n useEffect(() => {\n if (hasWhereParam.current && !searchParams?.where) {\n setVisibleDrawer(undefined)\n hasWhereParam.current = false\n } else if (searchParams?.where) {\n hasWhereParam.current = true\n }\n }, [setVisibleDrawer, searchParams?.where])\n\n return (\n <div className={baseClass}>\n <div className={`${baseClass}__wrap`}>\n <SearchFilter\n fieldLabel={\n (titleField &&\n getTranslation(\n 'label' in titleField.fieldComponentProps &&\n typeof titleField.fieldComponentProps.label === 'string'\n ? titleField.fieldComponentProps.label\n : titleField.name,\n i18n,\n )) ??\n undefined\n }\n fieldName={titleField?.name}\n handleChange={handleSearchChange}\n listSearchableFields={getTextFieldsToBeSearched(\n collectionConfig.admin.listSearchableFields,\n fieldMap,\n )}\n />\n <div className={`${baseClass}__buttons`}>\n <div className={`${baseClass}__buttons-wrap`}>\n {!smallBreak && (\n <React.Fragment>\n <EditMany collection={collectionConfig} fieldMap={fieldMap} />\n <PublishMany collection={collectionConfig} />\n <UnpublishMany collection={collectionConfig} />\n <DeleteMany collection={collectionConfig} />\n </React.Fragment>\n )}\n {enableColumns && (\n <Pill\n aria-controls={`${baseClass}-columns`}\n aria-expanded={visibleDrawer === 'columns'}\n className={`${baseClass}__toggle-columns ${\n visibleDrawer === 'columns' ? `${baseClass}__buttons-active` : ''\n }`}\n icon={<Chevron />}\n onClick={() =>\n setVisibleDrawer(visibleDrawer !== 'columns' ? 'columns' : undefined)\n }\n pillStyle=\"light\"\n >\n {t('general:columns')}\n </Pill>\n )}\n <Pill\n aria-controls={`${baseClass}-where`}\n aria-expanded={visibleDrawer === 'where'}\n className={`${baseClass}__toggle-where ${\n visibleDrawer === 'where' ? `${baseClass}__buttons-active` : ''\n }`}\n icon={<Chevron />}\n onClick={() => setVisibleDrawer(visibleDrawer !== 'where' ? 'where' : undefined)}\n pillStyle=\"light\"\n >\n {t('general:filters')}\n </Pill>\n {enableSort && (\n <Pill\n aria-controls={`${baseClass}-sort`}\n aria-expanded={visibleDrawer === 'sort'}\n className={`${baseClass}__toggle-sort`}\n icon={<Chevron />}\n onClick={() => setVisibleDrawer(visibleDrawer !== 'sort' ? 'sort' : undefined)}\n pillStyle=\"light\"\n >\n {t('general:sort')}\n </Pill>\n )}\n </div>\n </div>\n </div>\n {enableColumns && (\n <AnimateHeight\n className={`${baseClass}__columns`}\n height={visibleDrawer === 'columns' ? 'auto' : 0}\n id={`${baseClass}-columns`}\n >\n <ColumnSelector collectionSlug={collectionConfig.slug} />\n </AnimateHeight>\n )}\n <AnimateHeight\n className={`${baseClass}__where`}\n height={visibleDrawer === 'where' ? 'auto' : 0}\n id={`${baseClass}-where`}\n >\n <WhereBuilder\n collectionPluralLabel={collectionConfig?.labels?.plural}\n collectionSlug={collectionConfig.slug}\n key={String(hasWhereParam.current && !searchParams?.where)}\n />\n </AnimateHeight>\n {enableSort && (\n <AnimateHeight\n className={`${baseClass}__sort`}\n height={visibleDrawer === 'sort' ? 'auto' : 0}\n id={`${baseClass}-sort`}\n >\n <p>Sort Complex</p>\n {/* <SortComplex\n collection={collection}\n handleChange={handleSortChange}\n modifySearchQuery={modifySearchQuery}\n /> */}\n </AnimateHeight>\n )}\n </div>\n )\n}\n"],"names":["facelessUIImport","getTranslation","React","useEffect","useRef","useState","AnimateHeightImport","AnimateHeight","default","useUseTitleField","Chevron","useListQuery","useSearchParams","useTranslation","ColumnSelector","DeleteMany","EditMany","Pill","PublishMany","SearchFilter","UnpublishMany","WhereBuilder","validateWhereQuery","getTextFieldsToBeSearched","baseClass","ListControls","props","collectionConfig","enableColumns","enableSort","fieldMap","useWindowInfo","handleSearchChange","searchParams","titleField","i18n","t","breakpoints","s","smallBreak","hasWhereParam","Boolean","where","shouldInitializeWhereOpened","visibleDrawer","setVisibleDrawer","undefined","current","div","className","fieldLabel","fieldComponentProps","label","name","fieldName","handleChange","listSearchableFields","admin","Fragment","collection","aria-controls","aria-expanded","icon","onClick","pillStyle","height","id","collectionSlug","slug","collectionPluralLabel","labels","plural","key","String","p"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/Logout/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAmB,MAAM,OAAO,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/Logout/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAmB,MAAM,OAAO,CAAA;AAqCvC,eAAO,MAAM,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC;IAC5B,IAAI,CAAC,EAAE,KAAK,CAAC,aAAa,CAAA;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB,CAUA,CAAA"}
|
|
@@ -8,7 +8,7 @@ const baseClass = 'nav';
|
|
|
8
8
|
const DefaultLogout = ({ Link, tabIndex })=>{
|
|
9
9
|
const { t } = useTranslation();
|
|
10
10
|
const config = useConfig();
|
|
11
|
-
const { admin: { logoutRoute }, routes: { admin } } = config;
|
|
11
|
+
const { admin: { routes: { logout: logoutRoute } }, routes: { admin } } = config;
|
|
12
12
|
const LinkElement = Link || 'a';
|
|
13
13
|
return /*#__PURE__*/ React.createElement(LinkElement, {
|
|
14
14
|
"aria-label": t('authentication:logOut'),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/elements/Logout/index.tsx"],"sourcesContent":["'use client'\nimport React, { Fragment } from 'react'\n\nimport { LogOut } from '../../icons/LogOut/index.js'\nimport { useComponentMap } from '../../providers/ComponentMap/index.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\n\nconst baseClass = 'nav'\n\nconst DefaultLogout: React.FC<{\n Link: React.ComponentType\n tabIndex?: number\n}> = ({ Link, tabIndex }) => {\n const { t } = useTranslation()\n const config = useConfig()\n\n const {\n admin: { logoutRoute },\n routes: { admin },\n } = config\n\n const LinkElement = Link || 'a'\n\n return (\n <LinkElement\n aria-label={t('authentication:logOut')}\n className={`${baseClass}__log-out`}\n href={`${admin}${logoutRoute}`}\n tabIndex={tabIndex}\n >\n <LogOut />\n </LinkElement>\n )\n}\n\nexport const Logout: React.FC<{\n Link?: React.ComponentType\n tabIndex?: number\n}> = ({ Link, tabIndex = 0 }) => {\n const {\n componentMap: { LogoutButton: CustomLogout },\n } = useComponentMap()\n\n if (CustomLogout) {\n return <Fragment>{CustomLogout}</Fragment>\n }\n\n return <DefaultLogout Link={Link} tabIndex={tabIndex} />\n}\n"],"names":["React","Fragment","LogOut","useComponentMap","useConfig","useTranslation","baseClass","DefaultLogout","Link","tabIndex","t","config","admin","
|
|
1
|
+
{"version":3,"sources":["../../../src/elements/Logout/index.tsx"],"sourcesContent":["'use client'\nimport React, { Fragment } from 'react'\n\nimport { LogOut } from '../../icons/LogOut/index.js'\nimport { useComponentMap } from '../../providers/ComponentMap/index.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\n\nconst baseClass = 'nav'\n\nconst DefaultLogout: React.FC<{\n Link: React.ComponentType\n tabIndex?: number\n}> = ({ Link, tabIndex }) => {\n const { t } = useTranslation()\n const config = useConfig()\n\n const {\n admin: {\n routes: { logout: logoutRoute },\n },\n routes: { admin },\n } = config\n\n const LinkElement = Link || 'a'\n\n return (\n <LinkElement\n aria-label={t('authentication:logOut')}\n className={`${baseClass}__log-out`}\n href={`${admin}${logoutRoute}`}\n tabIndex={tabIndex}\n >\n <LogOut />\n </LinkElement>\n )\n}\n\nexport const Logout: React.FC<{\n Link?: React.ComponentType\n tabIndex?: number\n}> = ({ Link, tabIndex = 0 }) => {\n const {\n componentMap: { LogoutButton: CustomLogout },\n } = useComponentMap()\n\n if (CustomLogout) {\n return <Fragment>{CustomLogout}</Fragment>\n }\n\n return <DefaultLogout Link={Link} tabIndex={tabIndex} />\n}\n"],"names":["React","Fragment","LogOut","useComponentMap","useConfig","useTranslation","baseClass","DefaultLogout","Link","tabIndex","t","config","admin","routes","logout","logoutRoute","LinkElement","aria-label","className","href","Logout","componentMap","LogoutButton","CustomLogout"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAAA;AACA,OAAOA,SAASC,QAAQ,QAAQ,QAAO;AAEvC,SAASC,MAAM,QAAQ,8BAA6B;AACpD,SAASC,eAAe,QAAQ,wCAAuC;AACvE,SAASC,SAAS,QAAQ,kCAAiC;AAC3D,SAASC,cAAc,QAAQ,uCAAsC;AAErE,MAAMC,YAAY;AAElB,MAAMC,gBAGD,CAAC,EAAEC,IAAI,EAAEC,QAAQ,EAAE;IACtB,MAAM,EAAEC,CAAC,EAAE,GAAGL;IACd,MAAMM,SAASP;IAEf,MAAM,EACJQ,OAAO,EACLC,QAAQ,EAAEC,QAAQC,WAAW,EAAE,EAChC,EACDF,QAAQ,EAAED,KAAK,EAAE,EAClB,GAAGD;IAEJ,MAAMK,cAAcR,QAAQ;IAE5B,qBACE,oBAACQ;QACCC,cAAYP,EAAE;QACdQ,WAAW,CAAC,EAAEZ,UAAU,SAAS,CAAC;QAClCa,MAAM,CAAC,EAAEP,MAAM,EAAEG,YAAY,CAAC;QAC9BN,UAAUA;qBAEV,oBAACP;AAGP;AAEA,OAAO,MAAMkB,SAGR,CAAC,EAAEZ,IAAI,EAAEC,WAAW,CAAC,EAAE;IAC1B,MAAM,EACJY,cAAc,EAAEC,cAAcC,YAAY,EAAE,EAC7C,GAAGpB;IAEJ,IAAIoB,cAAc;QAChB,qBAAO,oBAACtB,gBAAUsB;IACpB;IAEA,qBAAO,oBAAChB;QAAcC,MAAMA;QAAMC,UAAUA;;AAC9C,EAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.client.d.ts","sourceRoot":"","sources":["../../../src/elements/Nav/index.client.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.client.d.ts","sourceRoot":"","sources":["../../../src/elements/Nav/index.client.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAmB,MAAM,OAAO,CAAA;AAevC,eAAO,MAAM,gBAAgB,EAAE,KAAK,CAAC,EAuFpC,CAAA"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
import { getTranslation } from '@payloadcms/translations';
|
|
3
|
-
import { useEntityVisibility } from '@payloadcms/ui/providers/EntityVisibility';
|
|
4
3
|
import LinkWithDefault from 'next/link.js';
|
|
5
4
|
import React, { Fragment } from 'react';
|
|
6
5
|
import { Chevron } from '../../icons/Chevron/index.js';
|
|
7
6
|
import { useAuth } from '../../providers/Auth/index.js';
|
|
8
7
|
import { useConfig } from '../../providers/Config/index.js';
|
|
8
|
+
import { useEntityVisibility } from '../../providers/EntityVisibility/index.js';
|
|
9
9
|
import { useTranslation } from '../../providers/Translation/index.js';
|
|
10
10
|
import { EntityType, groupNavItems } from '../../utilities/groupNavItems.js';
|
|
11
11
|
import { NavGroup } from '../NavGroup/index.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/elements/Nav/index.client.tsx"],"sourcesContent":["'use client'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport
|
|
1
|
+
{"version":3,"sources":["../../../src/elements/Nav/index.client.tsx"],"sourcesContent":["'use client'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport LinkWithDefault from 'next/link.js'\nimport React, { Fragment } from 'react'\n\nimport type { EntityToGroup } from '../../utilities/groupNavItems.js'\n\nimport { Chevron } from '../../icons/Chevron/index.js'\nimport { useAuth } from '../../providers/Auth/index.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useEntityVisibility } from '../../providers/EntityVisibility/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { EntityType, groupNavItems } from '../../utilities/groupNavItems.js'\nimport { NavGroup } from '../NavGroup/index.js'\nimport { useNav } from './context.js'\n\nconst baseClass = 'nav'\n\nexport const DefaultNavClient: React.FC = () => {\n const { permissions } = useAuth()\n const { isEntityVisible } = useEntityVisibility()\n\n const {\n collections,\n globals,\n routes: { admin },\n } = useConfig()\n\n const { i18n } = useTranslation()\n const { navOpen } = useNav()\n\n const groups = groupNavItems(\n [\n ...collections\n .filter(({ slug }) => isEntityVisible({ collectionSlug: slug }))\n .map((collection) => {\n const entityToGroup: EntityToGroup = {\n type: EntityType.collection,\n entity: collection,\n }\n\n return entityToGroup\n }),\n ...globals\n .filter(({ slug }) => isEntityVisible({ globalSlug: slug }))\n .map((global) => {\n const entityToGroup: EntityToGroup = {\n type: EntityType.global,\n entity: global,\n }\n\n return entityToGroup\n }),\n ],\n permissions,\n i18n,\n )\n\n return (\n <Fragment>\n {groups.map(({ entities, label }, key) => {\n return (\n <NavGroup key={key} label={label}>\n {entities.map(({ type, entity }, i) => {\n let entityLabel: string\n let href: string\n let id: string\n\n if (type === EntityType.collection) {\n href = `${admin}/collections/${entity.slug}`\n entityLabel = getTranslation(entity.labels.plural, i18n)\n id = `nav-${entity.slug}`\n }\n\n if (type === EntityType.global) {\n href = `${admin}/globals/${entity.slug}`\n entityLabel = getTranslation(entity.label, i18n)\n id = `nav-global-${entity.slug}`\n }\n\n const Link = (LinkWithDefault.default ||\n LinkWithDefault) as typeof LinkWithDefault.default\n\n const LinkElement = Link || 'a'\n\n return (\n <LinkElement\n className={`${baseClass}__link`}\n href={href}\n id={id}\n key={i}\n tabIndex={!navOpen ? -1 : undefined}\n >\n <span className={`${baseClass}__link-icon`}>\n <Chevron direction=\"right\" />\n </span>\n <span className={`${baseClass}__link-label`}>{entityLabel}</span>\n </LinkElement>\n )\n })}\n </NavGroup>\n )\n })}\n </Fragment>\n )\n}\n"],"names":["getTranslation","LinkWithDefault","React","Fragment","Chevron","useAuth","useConfig","useEntityVisibility","useTranslation","EntityType","groupNavItems","NavGroup","useNav","baseClass","DefaultNavClient","permissions","isEntityVisible","collections","globals","routes","admin","i18n","navOpen","groups","filter","slug","collectionSlug","map","collection","entityToGroup","type","entity","globalSlug","global","entities","label","key","i","entityLabel","href","id","labels","plural","Link","default","LinkElement","className","tabIndex","undefined","span","direction"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAAA;AAEA,SAASA,cAAc,QAAQ,2BAA0B;AACzD,OAAOC,qBAAqB,eAAc;AAC1C,OAAOC,SAASC,QAAQ,QAAQ,QAAO;AAIvC,SAASC,OAAO,QAAQ,+BAA8B;AACtD,SAASC,OAAO,QAAQ,gCAA+B;AACvD,SAASC,SAAS,QAAQ,kCAAiC;AAC3D,SAASC,mBAAmB,QAAQ,4CAA2C;AAC/E,SAASC,cAAc,QAAQ,uCAAsC;AACrE,SAASC,UAAU,EAAEC,aAAa,QAAQ,mCAAkC;AAC5E,SAASC,QAAQ,QAAQ,uBAAsB;AAC/C,SAASC,MAAM,QAAQ,eAAc;AAErC,MAAMC,YAAY;AAElB,OAAO,MAAMC,mBAA6B;IACxC,MAAM,EAAEC,WAAW,EAAE,GAAGV;IACxB,MAAM,EAAEW,eAAe,EAAE,GAAGT;IAE5B,MAAM,EACJU,WAAW,EACXC,OAAO,EACPC,QAAQ,EAAEC,KAAK,EAAE,EAClB,GAAGd;IAEJ,MAAM,EAAEe,IAAI,EAAE,GAAGb;IACjB,MAAM,EAAEc,OAAO,EAAE,GAAGV;IAEpB,MAAMW,SAASb,cACb;WACKO,YACAO,MAAM,CAAC,CAAC,EAAEC,IAAI,EAAE,GAAKT,gBAAgB;gBAAEU,gBAAgBD;YAAK,IAC5DE,GAAG,CAAC,CAACC;YACJ,MAAMC,gBAA+B;gBACnCC,MAAMrB,WAAWmB,UAAU;gBAC3BG,QAAQH;YACV;YAEA,OAAOC;QACT;WACCX,QACAM,MAAM,CAAC,CAAC,EAAEC,IAAI,EAAE,GAAKT,gBAAgB;gBAAEgB,YAAYP;YAAK,IACxDE,GAAG,CAAC,CAACM;YACJ,MAAMJ,gBAA+B;gBACnCC,MAAMrB,WAAWwB,MAAM;gBACvBF,QAAQE;YACV;YAEA,OAAOJ;QACT;KACH,EACDd,aACAM;IAGF,qBACE,oBAAClB,gBACEoB,OAAOI,GAAG,CAAC,CAAC,EAAEO,QAAQ,EAAEC,KAAK,EAAE,EAAEC;QAChC,qBACE,oBAACzB;YAASyB,KAAKA;YAAKD,OAAOA;WACxBD,SAASP,GAAG,CAAC,CAAC,EAAEG,IAAI,EAAEC,MAAM,EAAE,EAAEM;YAC/B,IAAIC;YACJ,IAAIC;YACJ,IAAIC;YAEJ,IAAIV,SAASrB,WAAWmB,UAAU,EAAE;gBAClCW,OAAO,CAAC,EAAEnB,MAAM,aAAa,EAAEW,OAAON,IAAI,CAAC,CAAC;gBAC5Ca,cAActC,eAAe+B,OAAOU,MAAM,CAACC,MAAM,EAAErB;gBACnDmB,KAAK,CAAC,IAAI,EAAET,OAAON,IAAI,CAAC,CAAC;YAC3B;YAEA,IAAIK,SAASrB,WAAWwB,MAAM,EAAE;gBAC9BM,OAAO,CAAC,EAAEnB,MAAM,SAAS,EAAEW,OAAON,IAAI,CAAC,CAAC;gBACxCa,cAActC,eAAe+B,OAAOI,KAAK,EAAEd;gBAC3CmB,KAAK,CAAC,WAAW,EAAET,OAAON,IAAI,CAAC,CAAC;YAClC;YAEA,MAAMkB,OAAQ1C,gBAAgB2C,OAAO,IACnC3C;YAEF,MAAM4C,cAAcF,QAAQ;YAE5B,qBACE,oBAACE;gBACCC,WAAW,CAAC,EAAEjC,UAAU,MAAM,CAAC;gBAC/B0B,MAAMA;gBACNC,IAAIA;gBACJJ,KAAKC;gBACLU,UAAU,CAACzB,UAAU,CAAC,IAAI0B;6BAE1B,oBAACC;gBAAKH,WAAW,CAAC,EAAEjC,UAAU,WAAW,CAAC;6BACxC,oBAACT;gBAAQ8C,WAAU;+BAErB,oBAACD;gBAAKH,WAAW,CAAC,EAAEjC,UAAU,YAAY,CAAC;eAAGyB;QAGpD;IAGN;AAGN,EAAC"}
|
|
@@ -1,8 +1,6 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { ServerProps } from 'payload/config';
|
|
2
2
|
import React from 'react';
|
|
3
3
|
import './index.scss';
|
|
4
|
-
export type NavProps =
|
|
5
|
-
payload: Payload;
|
|
6
|
-
};
|
|
4
|
+
export type NavProps = ServerProps;
|
|
7
5
|
export declare const DefaultNav: React.FC<NavProps>;
|
|
8
6
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/Nav/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/Nav/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAEjD,OAAO,KAAK,MAAM,OAAO,CAAA;AAKzB,OAAO,cAAc,CAAA;AAOrB,MAAM,MAAM,QAAQ,GAAG,WAAW,CAAA;AAElC,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,QAAQ,CAoEzC,CAAA"}
|
|
@@ -3,10 +3,10 @@ import { Logout } from '../Logout/index.js';
|
|
|
3
3
|
import { NavHamburger } from './NavHamburger/index.js';
|
|
4
4
|
import { NavWrapper } from './NavWrapper/index.js';
|
|
5
5
|
const baseClass = 'nav';
|
|
6
|
-
import { WithServerSideProps } from '
|
|
6
|
+
import { WithServerSideProps } from '../WithServerSideProps/index.js';
|
|
7
7
|
import { DefaultNavClient } from './index.client.js';
|
|
8
8
|
export const DefaultNav = (props)=>{
|
|
9
|
-
const { payload } = props;
|
|
9
|
+
const { i18n, locale, params, payload, permissions, searchParams, user } = props;
|
|
10
10
|
if (!payload?.config) {
|
|
11
11
|
return null;
|
|
12
12
|
}
|
|
@@ -14,12 +14,28 @@ export const DefaultNav = (props)=>{
|
|
|
14
14
|
const BeforeNavLinks = Array.isArray(beforeNavLinks) ? beforeNavLinks.map((Component, i)=>/*#__PURE__*/ React.createElement(WithServerSideProps, {
|
|
15
15
|
Component: Component,
|
|
16
16
|
key: i,
|
|
17
|
-
|
|
17
|
+
serverOnlyProps: {
|
|
18
|
+
i18n,
|
|
19
|
+
locale,
|
|
20
|
+
params,
|
|
21
|
+
payload,
|
|
22
|
+
permissions,
|
|
23
|
+
searchParams,
|
|
24
|
+
user
|
|
25
|
+
}
|
|
18
26
|
})) : null;
|
|
19
27
|
const AfterNavLinks = Array.isArray(afterNavLinks) ? afterNavLinks.map((Component, i)=>/*#__PURE__*/ React.createElement(WithServerSideProps, {
|
|
20
28
|
Component: Component,
|
|
21
29
|
key: i,
|
|
22
|
-
|
|
30
|
+
serverOnlyProps: {
|
|
31
|
+
i18n,
|
|
32
|
+
locale,
|
|
33
|
+
params,
|
|
34
|
+
payload,
|
|
35
|
+
permissions,
|
|
36
|
+
searchParams,
|
|
37
|
+
user
|
|
38
|
+
}
|
|
23
39
|
})) : null;
|
|
24
40
|
return /*#__PURE__*/ React.createElement(NavWrapper, {
|
|
25
41
|
baseClass: baseClass
|