@payloadcms/ui 3.26.0 → 3.27.0-canary.ecc3f49
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/elements/AppHeader/index.d.ts.map +1 -1
- package/dist/elements/AppHeader/index.js +1 -1
- package/dist/elements/AppHeader/index.js.map +1 -1
- package/dist/elements/BulkUpload/EditForm/index.d.ts.map +1 -1
- package/dist/elements/BulkUpload/EditForm/index.js +1 -1
- package/dist/elements/BulkUpload/EditForm/index.js.map +1 -1
- package/dist/elements/ColumnSelector/index.js +1 -1
- package/dist/elements/ColumnSelector/index.js.map +1 -1
- package/dist/elements/ColumnSelector/index.scss +2 -3
- package/dist/elements/DeleteDocument/index.d.ts.map +1 -1
- package/dist/elements/DeleteDocument/index.js +2 -3
- package/dist/elements/DeleteDocument/index.js.map +1 -1
- package/dist/elements/DeleteMany/index.d.ts.map +1 -1
- package/dist/elements/DeleteMany/index.js +1 -1
- package/dist/elements/DeleteMany/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/DocumentDrawer/DrawerContent.d.ts.map +1 -1
- package/dist/elements/DocumentDrawer/DrawerContent.js +2 -1
- package/dist/elements/DocumentDrawer/DrawerContent.js.map +1 -1
- package/dist/elements/DocumentDrawer/types.d.ts +4 -0
- package/dist/elements/DocumentDrawer/types.d.ts.map +1 -1
- package/dist/elements/DocumentDrawer/types.js.map +1 -1
- package/dist/elements/DuplicateDocument/index.d.ts.map +1 -1
- package/dist/elements/DuplicateDocument/index.js +1 -1
- package/dist/elements/DuplicateDocument/index.js.map +1 -1
- package/dist/elements/EditMany/DrawerContent.d.ts.map +1 -1
- package/dist/elements/EditMany/DrawerContent.js +1 -1
- package/dist/elements/EditMany/DrawerContent.js.map +1 -1
- package/dist/elements/ListControls/ActiveListPreset/index.d.ts +8 -0
- package/dist/elements/ListControls/ActiveListPreset/index.d.ts.map +1 -0
- package/dist/elements/ListControls/ActiveListPreset/index.js +102 -0
- package/dist/elements/ListControls/ActiveListPreset/index.js.map +1 -0
- package/dist/elements/ListControls/ActiveListPreset/index.scss +21 -0
- package/dist/elements/ListControls/index.d.ts +1 -24
- package/dist/elements/ListControls/index.d.ts.map +1 -1
- package/dist/elements/ListControls/index.js +110 -86
- package/dist/elements/ListControls/index.js.map +1 -1
- package/dist/elements/ListControls/index.scss +5 -9
- package/dist/elements/ListControls/types.d.ts +27 -0
- package/dist/elements/ListControls/types.d.ts.map +1 -0
- package/dist/elements/ListControls/types.js.map +1 -0
- package/dist/elements/ListControls/useListPresets.d.ts +15 -0
- package/dist/elements/ListControls/useListPresets.d.ts.map +1 -0
- package/dist/elements/ListControls/useListPresets.js +251 -0
- package/dist/elements/ListControls/useListPresets.js.map +1 -0
- package/dist/elements/ListDrawer/DrawerContent.d.ts.map +1 -1
- package/dist/elements/ListDrawer/DrawerContent.js +4 -2
- package/dist/elements/ListDrawer/DrawerContent.js.map +1 -1
- package/dist/elements/ListDrawer/types.d.ts +3 -2
- package/dist/elements/ListDrawer/types.d.ts.map +1 -1
- package/dist/elements/ListDrawer/types.js.map +1 -1
- package/dist/elements/ListPresets/cells/AccessCell/index.d.ts +4 -0
- package/dist/elements/ListPresets/cells/AccessCell/index.d.ts.map +1 -0
- package/dist/elements/ListPresets/cells/AccessCell/index.js +25 -0
- package/dist/elements/ListPresets/cells/AccessCell/index.js.map +1 -0
- package/dist/elements/ListPresets/cells/ColumnsCell/index.d.ts +4 -0
- package/dist/elements/ListPresets/cells/ColumnsCell/index.d.ts.map +1 -0
- package/dist/elements/ListPresets/cells/ColumnsCell/index.js +11 -0
- package/dist/elements/ListPresets/cells/ColumnsCell/index.js.map +1 -0
- package/dist/elements/ListPresets/cells/WhereCell/index.d.ts +4 -0
- package/dist/elements/ListPresets/cells/WhereCell/index.d.ts.map +1 -0
- package/dist/elements/ListPresets/cells/WhereCell/index.js +23 -0
- package/dist/elements/ListPresets/cells/WhereCell/index.js.map +1 -0
- package/dist/elements/ListPresets/fields/AccessLabel/index.d.ts +3 -0
- package/dist/elements/ListPresets/fields/AccessLabel/index.d.ts.map +1 -0
- package/dist/elements/ListPresets/fields/AccessLabel/index.js +19 -0
- package/dist/elements/ListPresets/fields/AccessLabel/index.js.map +1 -0
- package/dist/elements/ListPresets/fields/ColumnsField/index.d.ts +4 -0
- package/dist/elements/ListPresets/fields/ColumnsField/index.d.ts.map +1 -0
- package/dist/elements/ListPresets/fields/ColumnsField/index.js +64 -0
- package/dist/elements/ListPresets/fields/ColumnsField/index.js.map +1 -0
- package/dist/elements/ListPresets/fields/ColumnsField/index.scss +28 -0
- package/dist/elements/ListPresets/fields/WhereField/index.d.ts +4 -0
- package/dist/elements/ListPresets/fields/WhereField/index.d.ts.map +1 -0
- package/dist/elements/ListPresets/fields/WhereField/index.js +118 -0
- package/dist/elements/ListPresets/fields/WhereField/index.js.map +1 -0
- package/dist/elements/ListPresets/fields/WhereField/index.scss +23 -0
- 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/Pill/index.d.ts +1 -1
- package/dist/elements/Pill/index.d.ts.map +1 -1
- package/dist/elements/Pill/index.js +2 -0
- package/dist/elements/Pill/index.js.map +1 -1
- package/dist/elements/Pill/index.scss +29 -6
- package/dist/elements/RelationshipTable/cells/DrawerLink/index.js +1 -1
- package/dist/elements/RelationshipTable/cells/DrawerLink/index.js.map +1 -1
- package/dist/elements/RelationshipTable/index.d.ts.map +1 -1
- package/dist/elements/RelationshipTable/index.js +3 -4
- package/dist/elements/RelationshipTable/index.js.map +1 -1
- package/dist/elements/StayLoggedIn/index.d.ts.map +1 -1
- package/dist/elements/StayLoggedIn/index.js +1 -1
- package/dist/elements/StayLoggedIn/index.js.map +1 -1
- package/dist/elements/Table/DefaultCell/index.d.ts.map +1 -1
- package/dist/elements/Table/DefaultCell/index.js +1 -2
- package/dist/elements/Table/DefaultCell/index.js.map +1 -1
- package/dist/elements/WhereBuilder/index.d.ts.map +1 -1
- package/dist/elements/WhereBuilder/index.js +1 -2
- package/dist/elements/WhereBuilder/index.js.map +1 -1
- package/dist/exports/client/index.d.ts +8 -2
- package/dist/exports/client/index.d.ts.map +1 -1
- package/dist/exports/client/index.js +11 -11
- package/dist/exports/client/index.js.map +4 -4
- package/dist/exports/shared/index.d.ts +8 -3
- package/dist/exports/shared/index.d.ts.map +1 -1
- package/dist/exports/shared/index.js +2 -2
- package/dist/exports/shared/index.js.map +4 -4
- package/dist/graphics/Account/index.d.ts.map +1 -1
- package/dist/graphics/Account/index.js +1 -1
- package/dist/graphics/Account/index.js.map +1 -1
- package/dist/icons/Chevron/index.d.ts +1 -0
- package/dist/icons/Chevron/index.d.ts.map +1 -1
- package/dist/icons/Chevron/index.js +2 -0
- package/dist/icons/Chevron/index.js.map +1 -1
- package/dist/icons/Dots/index.d.ts +2 -0
- package/dist/icons/Dots/index.d.ts.map +1 -1
- package/dist/icons/Dots/index.js +5 -2
- package/dist/icons/Dots/index.js.map +1 -1
- package/dist/icons/Dots/index.scss +14 -0
- package/dist/icons/People/index.d.ts +6 -0
- package/dist/icons/People/index.d.ts.map +1 -0
- package/dist/icons/People/index.js +18 -0
- package/dist/icons/People/index.js.map +1 -0
- package/dist/icons/People/index.scss +11 -0
- package/dist/providers/Auth/index.d.ts.map +1 -1
- package/dist/providers/Auth/index.js +1 -1
- package/dist/providers/Auth/index.js.map +1 -1
- package/dist/providers/DocumentInfo/types.d.ts +1 -0
- package/dist/providers/DocumentInfo/types.d.ts.map +1 -1
- package/dist/providers/DocumentInfo/types.js.map +1 -1
- package/dist/providers/ListQuery/context.d.ts +2 -0
- package/dist/providers/ListQuery/context.d.ts.map +1 -1
- package/dist/providers/ListQuery/context.js +2 -0
- package/dist/providers/ListQuery/context.js.map +1 -1
- package/dist/providers/ListQuery/index.d.ts.map +1 -1
- package/dist/providers/ListQuery/index.js +25 -13
- package/dist/providers/ListQuery/index.js.map +1 -1
- package/dist/providers/ListQuery/types.d.ts +5 -2
- package/dist/providers/ListQuery/types.d.ts.map +1 -1
- package/dist/providers/ListQuery/types.js.map +1 -1
- package/dist/providers/Preferences/index.d.ts.map +1 -1
- package/dist/providers/Preferences/index.js.map +1 -1
- package/dist/providers/ServerFunctions/index.d.ts +1 -0
- package/dist/providers/ServerFunctions/index.d.ts.map +1 -1
- package/dist/providers/ServerFunctions/index.js.map +1 -1
- package/dist/providers/TableColumns/RenderDefaultCell/index.d.ts.map +1 -0
- package/dist/{elements → providers}/TableColumns/RenderDefaultCell/index.js +2 -2
- package/dist/providers/TableColumns/RenderDefaultCell/index.js.map +1 -0
- package/dist/{elements → providers}/TableColumns/buildColumnState.d.ts +1 -1
- package/dist/providers/TableColumns/buildColumnState.d.ts.map +1 -0
- package/dist/{elements → providers}/TableColumns/buildColumnState.js +1 -1
- package/dist/providers/TableColumns/buildColumnState.js.map +1 -0
- package/dist/{elements → providers}/TableColumns/buildPolymorphicColumnState.d.ts +1 -1
- package/dist/providers/TableColumns/buildPolymorphicColumnState.d.ts.map +1 -0
- package/dist/{elements → providers}/TableColumns/buildPolymorphicColumnState.js +1 -1
- package/dist/providers/TableColumns/buildPolymorphicColumnState.js.map +1 -0
- package/dist/{elements → providers}/TableColumns/context.d.ts +2 -0
- package/dist/providers/TableColumns/context.d.ts.map +1 -0
- package/dist/providers/TableColumns/context.js +6 -0
- package/dist/providers/TableColumns/context.js.map +1 -0
- package/dist/providers/TableColumns/filterFields.d.ts.map +1 -0
- package/dist/providers/TableColumns/filterFields.js.map +1 -0
- package/dist/providers/TableColumns/getInitialColumns.d.ts.map +1 -0
- package/dist/providers/TableColumns/getInitialColumns.js.map +1 -0
- package/dist/providers/TableColumns/index.d.ts.map +1 -0
- package/dist/{elements → providers}/TableColumns/index.js +20 -6
- package/dist/providers/TableColumns/index.js.map +1 -0
- package/dist/{elements → providers}/TableColumns/types.d.ts +3 -1
- package/dist/providers/TableColumns/types.d.ts.map +1 -0
- package/dist/providers/TableColumns/types.js +2 -0
- package/dist/providers/TableColumns/types.js.map +1 -0
- package/dist/styles.css +1 -1
- package/dist/utilities/formatAdminURL.d.ts +1 -7
- package/dist/utilities/formatAdminURL.d.ts.map +1 -1
- package/dist/utilities/formatAdminURL.js +1 -18
- package/dist/utilities/formatAdminURL.js.map +1 -1
- package/dist/utilities/handleBackToDashboard.js +1 -1
- package/dist/utilities/handleBackToDashboard.js.map +1 -1
- package/dist/utilities/handleGoBack.js +1 -1
- package/dist/utilities/handleGoBack.js.map +1 -1
- package/dist/utilities/renderTable.js +4 -4
- package/dist/utilities/renderTable.js.map +1 -1
- package/dist/utilities/upsertPreferences.d.ts +7 -2
- package/dist/utilities/upsertPreferences.d.ts.map +1 -1
- package/dist/utilities/upsertPreferences.js +11 -5
- package/dist/utilities/upsertPreferences.js.map +1 -1
- package/dist/views/Edit/SetDocumentStepNav/index.js +1 -1
- package/dist/views/Edit/SetDocumentStepNav/index.js.map +1 -1
- package/dist/views/Edit/index.d.ts.map +1 -1
- package/dist/views/Edit/index.js +4 -3
- package/dist/views/Edit/index.js.map +1 -1
- package/dist/views/List/index.d.ts.map +1 -1
- package/dist/views/List/index.js +5 -1
- package/dist/views/List/index.js.map +1 -1
- package/package.json +4 -4
- package/dist/elements/TableColumns/RenderDefaultCell/index.d.ts.map +0 -1
- package/dist/elements/TableColumns/RenderDefaultCell/index.js.map +0 -1
- package/dist/elements/TableColumns/buildColumnState.d.ts.map +0 -1
- package/dist/elements/TableColumns/buildColumnState.js.map +0 -1
- package/dist/elements/TableColumns/buildPolymorphicColumnState.d.ts.map +0 -1
- package/dist/elements/TableColumns/buildPolymorphicColumnState.js.map +0 -1
- package/dist/elements/TableColumns/context.d.ts.map +0 -1
- package/dist/elements/TableColumns/context.js +0 -4
- package/dist/elements/TableColumns/context.js.map +0 -1
- package/dist/elements/TableColumns/filterFields.d.ts.map +0 -1
- package/dist/elements/TableColumns/filterFields.js.map +0 -1
- package/dist/elements/TableColumns/getInitialColumns.d.ts.map +0 -1
- package/dist/elements/TableColumns/getInitialColumns.js.map +0 -1
- package/dist/elements/TableColumns/index.d.ts.map +0 -1
- package/dist/elements/TableColumns/index.js.map +0 -1
- package/dist/elements/TableColumns/types.d.ts.map +0 -1
- package/dist/elements/TableColumns/types.js.map +0 -1
- package/dist/elements/WhereBuilder/transformWhereQuery.d.ts +0 -8
- package/dist/elements/WhereBuilder/transformWhereQuery.d.ts.map +0 -1
- package/dist/elements/WhereBuilder/transformWhereQuery.js +0 -45
- package/dist/elements/WhereBuilder/transformWhereQuery.js.map +0 -1
- package/dist/elements/WhereBuilder/validateWhereQuery.d.ts +0 -4
- package/dist/elements/WhereBuilder/validateWhereQuery.d.ts.map +0 -1
- package/dist/elements/WhereBuilder/validateWhereQuery.js +0 -36
- package/dist/elements/WhereBuilder/validateWhereQuery.js.map +0 -1
- package/dist/utilities/mergeListSearchAndWhere.d.ts +0 -10
- package/dist/utilities/mergeListSearchAndWhere.d.ts.map +0 -1
- package/dist/utilities/mergeListSearchAndWhere.js +0 -47
- package/dist/utilities/mergeListSearchAndWhere.js.map +0 -1
- /package/dist/elements/{TableColumns → ListControls}/types.js +0 -0
- /package/dist/{elements → providers}/TableColumns/RenderDefaultCell/index.d.ts +0 -0
- /package/dist/{elements → providers}/TableColumns/RenderDefaultCell/index.scss +0 -0
- /package/dist/{elements → providers}/TableColumns/filterFields.d.ts +0 -0
- /package/dist/{elements → providers}/TableColumns/filterFields.js +0 -0
- /package/dist/{elements → providers}/TableColumns/getInitialColumns.d.ts +0 -0
- /package/dist/{elements → providers}/TableColumns/getInitialColumns.js +0 -0
- /package/dist/{elements → providers}/TableColumns/index.d.ts +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/AppHeader/index.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/AppHeader/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAsC,MAAM,OAAO,CAAA;AAc1D,OAAO,cAAc,CAAA;AAIrB,KAAK,KAAK,GAAG;IACX,YAAY,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAC9B,UAAU,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;CAC7B,CAAA;AACD,wBAAgB,SAAS,CAAC,EAAE,YAAY,EAAE,UAAU,EAAE,EAAE,KAAK,qBAsF5D"}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
|
|
3
3
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
4
|
+
import { formatAdminURL } from 'payload/shared';
|
|
4
5
|
import React, { useEffect, useRef, useState } from 'react';
|
|
5
6
|
import { Account } from '../../graphics/Account/index.js';
|
|
6
7
|
import { useActions } from '../../providers/Actions/index.js';
|
|
7
8
|
import { useConfig } from '../../providers/Config/index.js';
|
|
8
9
|
import { useTranslation } from '../../providers/Translation/index.js';
|
|
9
|
-
import { formatAdminURL } from '../../utilities/formatAdminURL.js';
|
|
10
10
|
import { Hamburger } from '../Hamburger/index.js';
|
|
11
11
|
import { Link } from '../Link/index.js';
|
|
12
12
|
import { Localizer } from '../Localizer/index.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["React","useEffect","useRef","useState","Account","useActions","useConfig","useTranslation","
|
|
1
|
+
{"version":3,"file":"index.js","names":["formatAdminURL","React","useEffect","useRef","useState","Account","useActions","useConfig","useTranslation","Hamburger","Link","Localizer","LocalizerLabel","useNav","NavToggler","RenderCustomComponent","StepNav","baseClass","AppHeader","CustomAvatar","CustomIcon","t","Actions","config","admin","routes","account","accountRoute","localization","adminRoute","navOpen","customControlsRef","isScrollable","setIsScrollable","checkIsScrollable","el","current","scrollable","scrollWidth","clientWidth","window","addEventListener","removeEventListener","ActionComponents","Object","values","_jsxs","className","filter","Boolean","join","_jsx","tabIndex","ref","map","Action","i","length","ariaLabel","href","path","prefetch","CustomComponent","Fallback"],"sources":["../../../src/elements/AppHeader/index.tsx"],"sourcesContent":["'use client'\nimport { formatAdminURL } from 'payload/shared'\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 { Link } from '../Link/index.js'\nimport { Localizer } from '../Localizer/index.js'\nimport { LocalizerLabel } from '../Localizer/LocalizerLabel/index.js'\nimport { useNav } from '../Nav/context.js'\nimport { NavToggler } from '../Nav/NavToggler/index.js'\nimport { RenderCustomComponent } from '../RenderCustomComponent/index.js'\nimport { StepNav } from '../StepNav/index.js'\nimport './index.scss'\n\nconst baseClass = 'app-header'\n\ntype Props = {\n CustomAvatar?: React.ReactNode\n CustomIcon?: React.ReactNode\n}\nexport function AppHeader({ CustomAvatar, CustomIcon }: Props) {\n const { t } = useTranslation()\n\n const { Actions } = useActions()\n\n const {\n config: {\n admin: {\n routes: { account: accountRoute },\n },\n localization,\n routes: { admin: adminRoute },\n },\n } = useConfig()\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 ActionComponents = Actions ? Object.values(Actions) : []\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 className={`${baseClass}__step-nav`} CustomIcon={CustomIcon} />\n </div>\n <div className={`${baseClass}__actions-wrapper`}>\n <div className={`${baseClass}__actions`} ref={customControlsRef}>\n {ActionComponents.map((Action, i) => (\n <div\n className={\n isScrollable && i === ActionComponents.length - 1\n ? `${baseClass}__last-action`\n : ''\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 <Link\n aria-label={t('authentication:account')}\n className={`${baseClass}__account`}\n href={formatAdminURL({ adminRoute, path: accountRoute })}\n prefetch={false}\n tabIndex={0}\n >\n <RenderCustomComponent CustomComponent={CustomAvatar} Fallback={<Account />} />\n </Link>\n </div>\n </div>\n </div>\n <Localizer className={`${baseClass}__localizer`} />\n </header>\n )\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/elements/BulkUpload/EditForm/index.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/elements/BulkUpload/EditForm/index.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAiC,MAAM,OAAO,CAAA;AAErD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAmB/C,OAAO,cAAc,CAAA;AAQrB,wBAAgB,QAAQ,CAAC,EAAE,SAAS,EAAE,EAAE,aAAa,qBAoJpD"}
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
4
4
|
import { useRouter, useSearchParams } from 'next/navigation.js';
|
|
5
|
+
import { formatAdminURL } from 'payload/shared';
|
|
5
6
|
import React, { useCallback, useEffect } from 'react';
|
|
6
7
|
import { Form, useForm } from '../../../forms/Form/index.js';
|
|
7
8
|
import { WatchChildErrors } from '../../../forms/WatchChildErrors/index.js';
|
|
@@ -14,7 +15,6 @@ import { useRouteTransition } from '../../../providers/RouteTransition/index.js'
|
|
|
14
15
|
import { useServerFunctions } from '../../../providers/ServerFunctions/index.js';
|
|
15
16
|
import { useUploadEdits } from '../../../providers/UploadEdits/index.js';
|
|
16
17
|
import { abortAndIgnore, handleAbortRef } from '../../../utilities/abortAndIgnore.js';
|
|
17
|
-
import { formatAdminURL } from '../../../utilities/formatAdminURL.js';
|
|
18
18
|
import { useDocumentDrawerContext } from '../../DocumentDrawer/Provider.js';
|
|
19
19
|
import { DocumentFields } from '../../DocumentFields/index.js';
|
|
20
20
|
import { Upload } from '../../Upload/index.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["useRouter","useSearchParams","React","useCallback","useEffect","Form","useForm","WatchChildErrors","useConfig","useDocumentEvents","useDocumentInfo","useEditDepth","OperationProvider","useRouteTransition","useServerFunctions","useUploadEdits","abortAndIgnore","handleAbortRef","formatAdminURL","useDocumentDrawerContext","DocumentFields","Upload","useFormsManager","BulkUploadProvider","baseClass","EditForm","submitted","action","collectionSlug","docSlug","docPermissions","getDocPreferences","hasSavePermission","initialState","isEditing","isInitializing","CustomUpload","onSave","onSaveFromContext","getFormState","config","routes","admin","adminRoute","getEntityConfig","abortOnChangeRef","useRef","collectionConfig","router","depth","params","reportUpdate","resetUploadEdits","startRouteTransition","locale","get","slug","schemaPath","useState","json","entitySlug","updatedAt","result","Date","toISOString","operation","redirectRoute","path","doc","id","push","onChange","formState","prevFormState","controller","docPreferences","state","newFormState","signal","skipValidation","current","abortOnChange","_jsx","_jsxs","className","disabled","undefined","method","onSuccess","BeforeFields","Fragment","uploadConfig","upload","fields","schemaPathSegments","ReportAllErrors","GetFieldProxy","getFields","getFormDataRef","docConfig","activeIndex","setFormTotalErrorCount","errorCountRef","reportFormErrorCount","errorCount","index","setErrorCount"],"sources":["../../../../src/elements/BulkUpload/EditForm/index.tsx"],"sourcesContent":["'use client'\n\nimport { useRouter, useSearchParams } from 'next/navigation.js'\nimport React, { useCallback, useEffect } from 'react'\n\nimport type { EditFormProps } from './types.js'\n\nimport { Form, useForm } from '../../../forms/Form/index.js'\nimport { type FormProps } from '../../../forms/Form/types.js'\nimport { WatchChildErrors } from '../../../forms/WatchChildErrors/index.js'\nimport { useConfig } from '../../../providers/Config/index.js'\nimport { useDocumentEvents } from '../../../providers/DocumentEvents/index.js'\nimport { useDocumentInfo } from '../../../providers/DocumentInfo/index.js'\nimport { useEditDepth } from '../../../providers/EditDepth/index.js'\nimport { OperationProvider } from '../../../providers/Operation/index.js'\nimport { useRouteTransition } from '../../../providers/RouteTransition/index.js'\nimport { useServerFunctions } from '../../../providers/ServerFunctions/index.js'\nimport { useUploadEdits } from '../../../providers/UploadEdits/index.js'\nimport { abortAndIgnore, handleAbortRef } from '../../../utilities/abortAndIgnore.js'\nimport { formatAdminURL } from '../../../utilities/formatAdminURL.js'\nimport { useDocumentDrawerContext } from '../../DocumentDrawer/Provider.js'\nimport { DocumentFields } from '../../DocumentFields/index.js'\nimport { Upload } from '../../Upload/index.js'\nimport { useFormsManager } from '../FormsManager/index.js'\nimport { BulkUploadProvider } from '../index.js'\nimport './index.scss'\n\nconst baseClass = 'collection-edit'\n\n// This component receives props only on _pages_\n// When rendered within a drawer, props are empty\n// This is solely to support custom edit views which get server-rendered\n\nexport function EditForm({ submitted }: EditFormProps) {\n const {\n action,\n collectionSlug: docSlug,\n docPermissions,\n getDocPreferences,\n hasSavePermission,\n initialState,\n isEditing,\n isInitializing,\n Upload: CustomUpload,\n } = useDocumentInfo()\n\n const { onSave: onSaveFromContext } = useDocumentDrawerContext()\n\n const { getFormState } = useServerFunctions()\n\n const {\n config: {\n routes: { admin: adminRoute },\n },\n getEntityConfig,\n } = useConfig()\n\n const abortOnChangeRef = React.useRef<AbortController>(null)\n\n const collectionConfig = getEntityConfig({ collectionSlug: docSlug })\n const router = useRouter()\n const depth = useEditDepth()\n const params = useSearchParams()\n const { reportUpdate } = useDocumentEvents()\n const { resetUploadEdits } = useUploadEdits()\n const { startRouteTransition } = useRouteTransition()\n\n const locale = params.get('locale')\n\n const collectionSlug = collectionConfig.slug\n\n const [schemaPath] = React.useState(collectionSlug)\n\n const onSave = useCallback(\n (json) => {\n reportUpdate({\n entitySlug: collectionSlug,\n updatedAt: json?.result?.updatedAt || new Date().toISOString(),\n })\n\n if (typeof onSaveFromContext === 'function') {\n void onSaveFromContext({\n ...json,\n operation: 'create',\n })\n }\n\n if (!isEditing && depth < 2) {\n // Redirect to the same locale if it's been set\n const redirectRoute = formatAdminURL({\n adminRoute,\n path: `/collections/${collectionSlug}/${json?.doc?.id}${locale ? `?locale=${locale}` : ''}`,\n })\n\n startRouteTransition(() => router.push(redirectRoute))\n } else {\n resetUploadEdits()\n }\n },\n [\n adminRoute,\n collectionSlug,\n depth,\n isEditing,\n locale,\n onSaveFromContext,\n reportUpdate,\n resetUploadEdits,\n router,\n startRouteTransition,\n ],\n )\n\n const onChange: NonNullable<FormProps['onChange']>[0] = useCallback(\n async ({ formState: prevFormState, submitted }) => {\n const controller = handleAbortRef(abortOnChangeRef)\n\n const docPreferences = await getDocPreferences()\n\n const { state: newFormState } = await getFormState({\n collectionSlug,\n docPermissions,\n docPreferences,\n formState: prevFormState,\n operation: 'create',\n schemaPath,\n signal: controller.signal,\n skipValidation: !submitted,\n })\n\n abortOnChangeRef.current = null\n\n return newFormState\n },\n [collectionSlug, schemaPath, getDocPreferences, getFormState, docPermissions],\n )\n\n useEffect(() => {\n const abortOnChange = abortOnChangeRef.current\n\n return () => {\n abortAndIgnore(abortOnChange)\n }\n }, [])\n\n return (\n <OperationProvider operation=\"create\">\n <BulkUploadProvider>\n <Form\n action={action}\n className={`${baseClass}__form`}\n disabled={isInitializing || !hasSavePermission}\n initialState={isInitializing ? undefined : initialState}\n isInitializing={isInitializing}\n method=\"POST\"\n onChange={[onChange]}\n onSuccess={onSave}\n submitted={submitted}\n >\n <DocumentFields\n BeforeFields={\n <React.Fragment>\n {CustomUpload || (\n <Upload\n collectionSlug={collectionConfig.slug}\n initialState={initialState}\n uploadConfig={collectionConfig.upload}\n />\n )}\n </React.Fragment>\n }\n docPermissions={docPermissions}\n fields={collectionConfig.fields}\n schemaPathSegments={[collectionConfig.slug]}\n />\n <ReportAllErrors />\n <GetFieldProxy />\n </Form>\n </BulkUploadProvider>\n </OperationProvider>\n )\n}\n\nfunction GetFieldProxy() {\n const { getFields } = useForm()\n const { getFormDataRef } = useFormsManager()\n\n React.useEffect(() => {\n getFormDataRef.current = getFields\n }, [getFields, getFormDataRef])\n\n return null\n}\n\nfunction ReportAllErrors() {\n const { docConfig } = useDocumentInfo()\n const { activeIndex, setFormTotalErrorCount } = useFormsManager()\n const errorCountRef = React.useRef(0)\n\n const reportFormErrorCount = React.useCallback(\n (errorCount) => {\n if (errorCount === errorCountRef.current) {\n return\n }\n setFormTotalErrorCount({ errorCount, index: activeIndex })\n errorCountRef.current = errorCount\n },\n [activeIndex, setFormTotalErrorCount],\n )\n\n if (!docConfig) {\n return null\n }\n\n return (\n <WatchChildErrors fields={docConfig.fields} path={[]} setErrorCount={reportFormErrorCount} />\n )\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"index.js","names":["useRouter","useSearchParams","formatAdminURL","React","useCallback","useEffect","Form","useForm","WatchChildErrors","useConfig","useDocumentEvents","useDocumentInfo","useEditDepth","OperationProvider","useRouteTransition","useServerFunctions","useUploadEdits","abortAndIgnore","handleAbortRef","useDocumentDrawerContext","DocumentFields","Upload","useFormsManager","BulkUploadProvider","baseClass","EditForm","submitted","action","collectionSlug","docSlug","docPermissions","getDocPreferences","hasSavePermission","initialState","isEditing","isInitializing","CustomUpload","onSave","onSaveFromContext","getFormState","config","routes","admin","adminRoute","getEntityConfig","abortOnChangeRef","useRef","collectionConfig","router","depth","params","reportUpdate","resetUploadEdits","startRouteTransition","locale","get","slug","schemaPath","useState","json","entitySlug","updatedAt","result","Date","toISOString","operation","redirectRoute","path","doc","id","push","onChange","formState","prevFormState","controller","docPreferences","state","newFormState","signal","skipValidation","current","abortOnChange","_jsx","_jsxs","className","disabled","undefined","method","onSuccess","BeforeFields","Fragment","uploadConfig","upload","fields","schemaPathSegments","ReportAllErrors","GetFieldProxy","getFields","getFormDataRef","docConfig","activeIndex","setFormTotalErrorCount","errorCountRef","reportFormErrorCount","errorCount","index","setErrorCount"],"sources":["../../../../src/elements/BulkUpload/EditForm/index.tsx"],"sourcesContent":["'use client'\n\nimport { useRouter, useSearchParams } from 'next/navigation.js'\nimport { formatAdminURL } from 'payload/shared'\nimport React, { useCallback, useEffect } from 'react'\n\nimport type { EditFormProps } from './types.js'\n\nimport { Form, useForm } from '../../../forms/Form/index.js'\nimport { type FormProps } from '../../../forms/Form/types.js'\nimport { WatchChildErrors } from '../../../forms/WatchChildErrors/index.js'\nimport { useConfig } from '../../../providers/Config/index.js'\nimport { useDocumentEvents } from '../../../providers/DocumentEvents/index.js'\nimport { useDocumentInfo } from '../../../providers/DocumentInfo/index.js'\nimport { useEditDepth } from '../../../providers/EditDepth/index.js'\nimport { OperationProvider } from '../../../providers/Operation/index.js'\nimport { useRouteTransition } from '../../../providers/RouteTransition/index.js'\nimport { useServerFunctions } from '../../../providers/ServerFunctions/index.js'\nimport { useUploadEdits } from '../../../providers/UploadEdits/index.js'\nimport { abortAndIgnore, handleAbortRef } from '../../../utilities/abortAndIgnore.js'\nimport { useDocumentDrawerContext } from '../../DocumentDrawer/Provider.js'\nimport { DocumentFields } from '../../DocumentFields/index.js'\nimport { Upload } from '../../Upload/index.js'\nimport { useFormsManager } from '../FormsManager/index.js'\nimport { BulkUploadProvider } from '../index.js'\nimport './index.scss'\n\nconst baseClass = 'collection-edit'\n\n// This component receives props only on _pages_\n// When rendered within a drawer, props are empty\n// This is solely to support custom edit views which get server-rendered\n\nexport function EditForm({ submitted }: EditFormProps) {\n const {\n action,\n collectionSlug: docSlug,\n docPermissions,\n getDocPreferences,\n hasSavePermission,\n initialState,\n isEditing,\n isInitializing,\n Upload: CustomUpload,\n } = useDocumentInfo()\n\n const { onSave: onSaveFromContext } = useDocumentDrawerContext()\n\n const { getFormState } = useServerFunctions()\n\n const {\n config: {\n routes: { admin: adminRoute },\n },\n getEntityConfig,\n } = useConfig()\n\n const abortOnChangeRef = React.useRef<AbortController>(null)\n\n const collectionConfig = getEntityConfig({ collectionSlug: docSlug })\n const router = useRouter()\n const depth = useEditDepth()\n const params = useSearchParams()\n const { reportUpdate } = useDocumentEvents()\n const { resetUploadEdits } = useUploadEdits()\n const { startRouteTransition } = useRouteTransition()\n\n const locale = params.get('locale')\n\n const collectionSlug = collectionConfig.slug\n\n const [schemaPath] = React.useState(collectionSlug)\n\n const onSave = useCallback(\n (json) => {\n reportUpdate({\n entitySlug: collectionSlug,\n updatedAt: json?.result?.updatedAt || new Date().toISOString(),\n })\n\n if (typeof onSaveFromContext === 'function') {\n void onSaveFromContext({\n ...json,\n operation: 'create',\n })\n }\n\n if (!isEditing && depth < 2) {\n // Redirect to the same locale if it's been set\n const redirectRoute = formatAdminURL({\n adminRoute,\n path: `/collections/${collectionSlug}/${json?.doc?.id}${locale ? `?locale=${locale}` : ''}`,\n })\n\n startRouteTransition(() => router.push(redirectRoute))\n } else {\n resetUploadEdits()\n }\n },\n [\n adminRoute,\n collectionSlug,\n depth,\n isEditing,\n locale,\n onSaveFromContext,\n reportUpdate,\n resetUploadEdits,\n router,\n startRouteTransition,\n ],\n )\n\n const onChange: NonNullable<FormProps['onChange']>[0] = useCallback(\n async ({ formState: prevFormState, submitted }) => {\n const controller = handleAbortRef(abortOnChangeRef)\n\n const docPreferences = await getDocPreferences()\n\n const { state: newFormState } = await getFormState({\n collectionSlug,\n docPermissions,\n docPreferences,\n formState: prevFormState,\n operation: 'create',\n schemaPath,\n signal: controller.signal,\n skipValidation: !submitted,\n })\n\n abortOnChangeRef.current = null\n\n return newFormState\n },\n [collectionSlug, schemaPath, getDocPreferences, getFormState, docPermissions],\n )\n\n useEffect(() => {\n const abortOnChange = abortOnChangeRef.current\n\n return () => {\n abortAndIgnore(abortOnChange)\n }\n }, [])\n\n return (\n <OperationProvider operation=\"create\">\n <BulkUploadProvider>\n <Form\n action={action}\n className={`${baseClass}__form`}\n disabled={isInitializing || !hasSavePermission}\n initialState={isInitializing ? undefined : initialState}\n isInitializing={isInitializing}\n method=\"POST\"\n onChange={[onChange]}\n onSuccess={onSave}\n submitted={submitted}\n >\n <DocumentFields\n BeforeFields={\n <React.Fragment>\n {CustomUpload || (\n <Upload\n collectionSlug={collectionConfig.slug}\n initialState={initialState}\n uploadConfig={collectionConfig.upload}\n />\n )}\n </React.Fragment>\n }\n docPermissions={docPermissions}\n fields={collectionConfig.fields}\n schemaPathSegments={[collectionConfig.slug]}\n />\n <ReportAllErrors />\n <GetFieldProxy />\n </Form>\n </BulkUploadProvider>\n </OperationProvider>\n )\n}\n\nfunction GetFieldProxy() {\n const { getFields } = useForm()\n const { getFormDataRef } = useFormsManager()\n\n React.useEffect(() => {\n getFormDataRef.current = getFields\n }, [getFields, getFormDataRef])\n\n return null\n}\n\nfunction ReportAllErrors() {\n const { docConfig } = useDocumentInfo()\n const { activeIndex, setFormTotalErrorCount } = useFormsManager()\n const errorCountRef = React.useRef(0)\n\n const reportFormErrorCount = React.useCallback(\n (errorCount) => {\n if (errorCount === errorCountRef.current) {\n return\n }\n setFormTotalErrorCount({ errorCount, index: activeIndex })\n errorCountRef.current = errorCount\n },\n [activeIndex, setFormTotalErrorCount],\n )\n\n if (!docConfig) {\n return null\n }\n\n return (\n <WatchChildErrors fields={docConfig.fields} path={[]} setErrorCount={reportFormErrorCount} />\n )\n}\n"],"mappings":"AAAA;;;AAEA,SAASA,SAAS,EAAEC,eAAe,QAAQ;AAC3C,SAASC,cAAc,QAAQ;AAC/B,OAAOC,KAAA,IAASC,WAAW,EAAEC,SAAS,QAAQ;AAI9C,SAASC,IAAI,EAAEC,OAAO,QAAQ;AAE9B,SAASC,gBAAgB,QAAQ;AACjC,SAASC,SAAS,QAAQ;AAC1B,SAASC,iBAAiB,QAAQ;AAClC,SAASC,eAAe,QAAQ;AAChC,SAASC,YAAY,QAAQ;AAC7B,SAASC,iBAAiB,QAAQ;AAClC,SAASC,kBAAkB,QAAQ;AACnC,SAASC,kBAAkB,QAAQ;AACnC,SAASC,cAAc,QAAQ;AAC/B,SAASC,cAAc,EAAEC,cAAc,QAAQ;AAC/C,SAASC,wBAAwB,QAAQ;AACzC,SAASC,cAAc,QAAQ;AAC/B,SAASC,MAAM,QAAQ;AACvB,SAASC,eAAe,QAAQ;AAChC,SAASC,kBAAkB,QAAQ;AACnC,OAAO;AAEP,MAAMC,SAAA,GAAY;AAElB;AACA;AACA;AAEA,OAAO,SAASC,SAAS;EAAEC;AAAS,CAAiB;EACnD,MAAM;IACJC,MAAM;IACNC,cAAA,EAAgBC,OAAO;IACvBC,cAAc;IACdC,iBAAiB;IACjBC,iBAAiB;IACjBC,YAAY;IACZC,SAAS;IACTC,cAAc;IACdd,MAAA,EAAQe;EAAY,CACrB,GAAGzB,eAAA;EAEJ,MAAM;IAAE0B,MAAA,EAAQC;EAAiB,CAAE,GAAGnB,wBAAA;EAEtC,MAAM;IAAEoB;EAAY,CAAE,GAAGxB,kBAAA;EAEzB,MAAM;IACJyB,MAAA,EAAQ;MACNC,MAAA,EAAQ;QAAEC,KAAA,EAAOC;MAAU;IAAE,CAC9B;IACDC;EAAe,CAChB,GAAGnC,SAAA;EAEJ,MAAMoC,gBAAA,GAAmB1C,KAAA,CAAM2C,MAAM,CAAkB;EAEvD,MAAMC,gBAAA,GAAmBH,eAAA,CAAgB;IAAEhB,cAAA,EAAgBC;EAAQ;EACnE,MAAMmB,MAAA,GAAShD,SAAA;EACf,MAAMiD,KAAA,GAAQrC,YAAA;EACd,MAAMsC,MAAA,GAASjD,eAAA;EACf,MAAM;IAAEkD;EAAY,CAAE,GAAGzC,iBAAA;EACzB,MAAM;IAAE0C;EAAgB,CAAE,GAAGpC,cAAA;EAC7B,MAAM;IAAEqC;EAAoB,CAAE,GAAGvC,kBAAA;EAEjC,MAAMwC,MAAA,GAASJ,MAAA,CAAOK,GAAG,CAAC;EAE1B,MAAM3B,cAAA,GAAiBmB,gBAAA,CAAiBS,IAAI;EAE5C,MAAM,CAACC,UAAA,CAAW,GAAGtD,KAAA,CAAMuD,QAAQ,CAAC9B,cAAA;EAEpC,MAAMS,MAAA,GAASjC,WAAA,CACZuD,IAAA;IACCR,YAAA,CAAa;MACXS,UAAA,EAAYhC,cAAA;MACZiC,SAAA,EAAWF,IAAA,EAAMG,MAAA,EAAQD,SAAA,IAAa,IAAIE,IAAA,GAAOC,WAAW;IAC9D;IAEA,IAAI,OAAO1B,iBAAA,KAAsB,YAAY;MAC3C,KAAKA,iBAAA,CAAkB;QACrB,GAAGqB,IAAI;QACPM,SAAA,EAAW;MACb;IACF;IAEA,IAAI,CAAC/B,SAAA,IAAae,KAAA,GAAQ,GAAG;MAC3B;MACA,MAAMiB,aAAA,GAAgBhE,cAAA,CAAe;QACnCyC,UAAA;QACAwB,IAAA,EAAM,gBAAgBvC,cAAA,IAAkB+B,IAAA,EAAMS,GAAA,EAAKC,EAAA,GAAKf,MAAA,GAAS,WAAWA,MAAA,EAAQ,GAAG;MACzF;MAEAD,oBAAA,CAAqB,MAAML,MAAA,CAAOsB,IAAI,CAACJ,aAAA;IACzC,OAAO;MACLd,gBAAA;IACF;EACF,GACA,CACET,UAAA,EACAf,cAAA,EACAqB,KAAA,EACAf,SAAA,EACAoB,MAAA,EACAhB,iBAAA,EACAa,YAAA,EACAC,gBAAA,EACAJ,MAAA,EACAK,oBAAA,CACD;EAGH,MAAMkB,QAAA,GAAkDnE,WAAA,CACtD,OAAO;IAAEoE,SAAA,EAAWC,aAAa;IAAE/C,SAAS,EAATA;EAAS,CAAE;IAC5C,MAAMgD,UAAA,GAAaxD,cAAA,CAAe2B,gBAAA;IAElC,MAAM8B,cAAA,GAAiB,MAAM5C,iBAAA;IAE7B,MAAM;MAAE6C,KAAA,EAAOC;IAAY,CAAE,GAAG,MAAMtC,YAAA,CAAa;MACjDX,cAAA;MACAE,cAAA;MACA6C,cAAA;MACAH,SAAA,EAAWC,aAAA;MACXR,SAAA,EAAW;MACXR,UAAA;MACAqB,MAAA,EAAQJ,UAAA,CAAWI,MAAM;MACzBC,cAAA,EAAgB,CAACrD;IACnB;IAEAmB,gBAAA,CAAiBmC,OAAO,GAAG;IAE3B,OAAOH,YAAA;EACT,GACA,CAACjD,cAAA,EAAgB6B,UAAA,EAAY1B,iBAAA,EAAmBQ,YAAA,EAAcT,cAAA,CAAe;EAG/EzB,SAAA,CAAU;IACR,MAAM4E,aAAA,GAAgBpC,gBAAA,CAAiBmC,OAAO;IAE9C,OAAO;MACL/D,cAAA,CAAegE,aAAA;IACjB;EACF,GAAG,EAAE;EAEL,oBACEC,IAAA,CAACrE,iBAAA;IAAkBoD,SAAA,EAAU;cAC3B,aAAAiB,IAAA,CAAC3D,kBAAA;gBACC,aAAA4D,KAAA,CAAC7E,IAAA;QACCqB,MAAA,EAAQA,MAAA;QACRyD,SAAA,EAAW,GAAG5D,SAAA,QAAiB;QAC/B6D,QAAA,EAAUlD,cAAA,IAAkB,CAACH,iBAAA;QAC7BC,YAAA,EAAcE,cAAA,GAAiBmD,SAAA,GAAYrD,YAAA;QAC3CE,cAAA,EAAgBA,cAAA;QAChBoD,MAAA,EAAO;QACPhB,QAAA,EAAU,CAACA,QAAA,CAAS;QACpBiB,SAAA,EAAWnD,MAAA;QACXX,SAAA,EAAWA,SAAA;gCAEXwD,IAAA,CAAC9D,cAAA;UACCqE,YAAA,eACEP,IAAA,CAAC/E,KAAA,CAAMuF,QAAQ;sBACZtD,YAAA,iBACC8C,IAAA,CAAC7D,MAAA;cACCO,cAAA,EAAgBmB,gBAAA,CAAiBS,IAAI;cACrCvB,YAAA,EAAcA,YAAA;cACd0D,YAAA,EAAc5C,gBAAA,CAAiB6C;;;UAKvC9D,cAAA,EAAgBA,cAAA;UAChB+D,MAAA,EAAQ9C,gBAAA,CAAiB8C,MAAM;UAC/BC,kBAAA,EAAoB,CAAC/C,gBAAA,CAAiBS,IAAI;yBAE5C0B,IAAA,CAACa,eAAA,O,aACDb,IAAA,CAACc,aAAA;;;;AAKX;AAEA,SAASA,cAAA;EACP,MAAM;IAAEC;EAAS,CAAE,GAAG1F,OAAA;EACtB,MAAM;IAAE2F;EAAc,CAAE,GAAG5E,eAAA;EAE3BnB,KAAA,CAAME,SAAS,CAAC;IACd6F,cAAA,CAAelB,OAAO,GAAGiB,SAAA;EAC3B,GAAG,CAACA,SAAA,EAAWC,cAAA,CAAe;EAE9B,OAAO;AACT;AAEA,SAASH,gBAAA;EACP,MAAM;IAAEI;EAAS,CAAE,GAAGxF,eAAA;EACtB,MAAM;IAAEyF,WAAW;IAAEC;EAAsB,CAAE,GAAG/E,eAAA;EAChD,MAAMgF,aAAA,GAAgBnG,KAAA,CAAM2C,MAAM,CAAC;EAEnC,MAAMyD,oBAAA,GAAuBpG,KAAA,CAAMC,WAAW,CAC3CoG,UAAA;IACC,IAAIA,UAAA,KAAeF,aAAA,CAActB,OAAO,EAAE;MACxC;IACF;IACAqB,sBAAA,CAAuB;MAAEG,UAAA;MAAYC,KAAA,EAAOL;IAAY;IACxDE,aAAA,CAActB,OAAO,GAAGwB,UAAA;EAC1B,GACA,CAACJ,WAAA,EAAaC,sBAAA,CAAuB;EAGvC,IAAI,CAACF,SAAA,EAAW;IACd,OAAO;EACT;EAEA,oBACEjB,IAAA,CAAC1E,gBAAA;IAAiBqF,MAAA,EAAQM,SAAA,CAAUN,MAAM;IAAE1B,IAAA,EAAM,EAAE;IAAEuC,aAAA,EAAeH;;AAEzE","ignoreList":[]}
|
|
@@ -7,9 +7,9 @@ import { FieldLabel } from '../../fields/FieldLabel/index.js';
|
|
|
7
7
|
import { PlusIcon } from '../../icons/Plus/index.js';
|
|
8
8
|
import { XIcon } from '../../icons/X/index.js';
|
|
9
9
|
import { useEditDepth } from '../../providers/EditDepth/index.js';
|
|
10
|
+
import { useTableColumns } from '../../providers/TableColumns/index.js';
|
|
10
11
|
import { DraggableSortable } from '../DraggableSortable/index.js';
|
|
11
12
|
import { Pill } from '../Pill/index.js';
|
|
12
|
-
import { useTableColumns } from '../TableColumns/index.js';
|
|
13
13
|
import './index.scss';
|
|
14
14
|
const baseClass = 'column-selector';
|
|
15
15
|
export const ColumnSelector = ({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["fieldIsHiddenOrDisabled","fieldIsID","React","useId","useMemo","FieldLabel","PlusIcon","XIcon","useEditDepth","
|
|
1
|
+
{"version":3,"file":"index.js","names":["fieldIsHiddenOrDisabled","fieldIsID","React","useId","useMemo","FieldLabel","PlusIcon","XIcon","useEditDepth","useTableColumns","DraggableSortable","Pill","baseClass","ColumnSelector","collectionSlug","columns","moveColumn","toggleColumn","uuid","editDepth","filteredColumns","filter","col","field","admin","disableListColumn","_jsx","className","ids","map","accessor","onDragEnd","moveFromIndex","moveToIndex","fromIndex","toIndex","i","active","alignIcon","Boolean","join","draggable","icon","id","onClick","CustomLabel","label","unstyled","name"],"sources":["../../../src/elements/ColumnSelector/index.tsx"],"sourcesContent":["'use client'\nimport type { SanitizedCollectionConfig } from 'payload'\n\nimport { fieldIsHiddenOrDisabled, fieldIsID } from 'payload/shared'\nimport React, { useId, useMemo } from 'react'\n\nimport { FieldLabel } from '../../fields/FieldLabel/index.js'\nimport { PlusIcon } from '../../icons/Plus/index.js'\nimport { XIcon } from '../../icons/X/index.js'\nimport { useEditDepth } from '../../providers/EditDepth/index.js'\nimport { useTableColumns } from '../../providers/TableColumns/index.js'\nimport { DraggableSortable } from '../DraggableSortable/index.js'\nimport { Pill } from '../Pill/index.js'\nimport './index.scss'\n\nconst baseClass = 'column-selector'\n\nexport type Props = {\n readonly collectionSlug: SanitizedCollectionConfig['slug']\n}\n\nexport const ColumnSelector: React.FC<Props> = ({ collectionSlug }) => {\n const { columns, moveColumn, toggleColumn } = useTableColumns()\n\n const uuid = useId()\n const editDepth = useEditDepth()\n\n const filteredColumns = useMemo(\n () =>\n columns.filter(\n (col) =>\n !(fieldIsHiddenOrDisabled(col.field) && !fieldIsID(col.field)) &&\n !col?.field?.admin?.disableListColumn,\n ),\n [columns],\n )\n\n if (!columns) {\n return null\n }\n\n return (\n <DraggableSortable\n className={baseClass}\n ids={filteredColumns.map((col) => col?.accessor)}\n onDragEnd={({ moveFromIndex, moveToIndex }) => {\n void moveColumn({\n fromIndex: moveFromIndex,\n toIndex: moveToIndex,\n })\n }}\n >\n {filteredColumns.map((col, i) => {\n const { accessor, active, field } = col\n\n return (\n <Pill\n alignIcon=\"left\"\n aria-checked={active}\n className={[`${baseClass}__column`, active && `${baseClass}__column--active`]\n .filter(Boolean)\n .join(' ')}\n draggable\n icon={active ? <XIcon /> : <PlusIcon />}\n id={accessor}\n key={`${collectionSlug}-${field && 'name' in field ? field?.name : i}${editDepth ? `-${editDepth}-` : ''}${uuid}`}\n onClick={() => {\n void toggleColumn(accessor)\n }}\n >\n {col.CustomLabel ?? (\n <FieldLabel label={field && 'label' in field && field.label} unstyled />\n )}\n </Pill>\n )\n })}\n </DraggableSortable>\n )\n}\n"],"mappings":"AAAA;;;AAGA,SAASA,uBAAuB,EAAEC,SAAS,QAAQ;AACnD,OAAOC,KAAA,IAASC,KAAK,EAAEC,OAAO,QAAQ;AAEtC,SAASC,UAAU,QAAQ;AAC3B,SAASC,QAAQ,QAAQ;AACzB,SAASC,KAAK,QAAQ;AACtB,SAASC,YAAY,QAAQ;AAC7B,SAASC,eAAe,QAAQ;AAChC,SAASC,iBAAiB,QAAQ;AAClC,SAASC,IAAI,QAAQ;AACrB,OAAO;AAEP,MAAMC,SAAA,GAAY;AAMlB,OAAO,MAAMC,cAAA,GAAkCA,CAAC;EAAEC;AAAc,CAAE;EAChE,MAAM;IAAEC,OAAO;IAAEC,UAAU;IAAEC;EAAY,CAAE,GAAGR,eAAA;EAE9C,MAAMS,IAAA,GAAOf,KAAA;EACb,MAAMgB,SAAA,GAAYX,YAAA;EAElB,MAAMY,eAAA,GAAkBhB,OAAA,CACtB,MACEW,OAAA,CAAQM,MAAM,CACXC,GAAA,IACC,EAAEtB,uBAAA,CAAwBsB,GAAA,CAAIC,KAAK,KAAK,CAACtB,SAAA,CAAUqB,GAAA,CAAIC,KAAK,MAC5D,CAACD,GAAA,EAAKC,KAAA,EAAOC,KAAA,EAAOC,iBAAA,GAE1B,CAACV,OAAA,CAAQ;EAGX,IAAI,CAACA,OAAA,EAAS;IACZ,OAAO;EACT;EAEA,oBACEW,IAAA,CAAChB,iBAAA;IACCiB,SAAA,EAAWf,SAAA;IACXgB,GAAA,EAAKR,eAAA,CAAgBS,GAAG,CAAEP,KAAA,IAAQA,KAAA,EAAKQ,QAAA;IACvCC,SAAA,EAAWA,CAAC;MAAEC,aAAa;MAAEC;IAAW,CAAE;MACxC,KAAKjB,UAAA,CAAW;QACdkB,SAAA,EAAWF,aAAA;QACXG,OAAA,EAASF;MACX;IACF;cAECb,eAAA,CAAgBS,GAAG,CAAC,CAACP,KAAA,EAAKc,CAAA;MACzB,MAAM;QAAEN,QAAQ;QAAEO,MAAM;QAAEd;MAAK,CAAE,GAAGD,KAAA;MAEpC,oBACEI,IAAA,CAACf,IAAA;QACC2B,SAAA,EAAU;QACV,gBAAcD,MAAA;QACdV,SAAA,EAAW,CAAC,GAAGf,SAAA,UAAmB,EAAEyB,MAAA,IAAU,GAAGzB,SAAA,kBAA2B,CAAC,CAC1ES,MAAM,CAACkB,OAAA,EACPC,IAAI,CAAC;QACRC,SAAS;QACTC,IAAA,EAAML,MAAA,gBAASX,IAAA,CAACnB,KAAA,qBAAWmB,IAAA,CAACpB,QAAA;QAC5BqC,EAAA,EAAIb,QAAA;QAEJc,OAAA,EAASA,CAAA;UACP,KAAK3B,YAAA,CAAaa,QAAA;QACpB;kBAECR,KAAA,CAAIuB,WAAW,iBACdnB,IAAA,CAACrB,UAAA;UAAWyC,KAAA,EAAOvB,KAAA,IAAS,WAAWA,KAAA,IAASA,KAAA,CAAMuB,KAAK;UAAEC,QAAQ;;SANlE,GAAGjC,cAAA,IAAkBS,KAAA,IAAS,UAAUA,KAAA,GAAQA,KAAA,EAAOyB,IAAA,GAAOZ,CAAA,GAAIjB,SAAA,GAAY,IAAIA,SAAA,GAAY,GAAG,KAAKD,IAAA,EAAM;IAUvH;;AAGN","ignoreList":[]}
|
|
@@ -5,11 +5,10 @@
|
|
|
5
5
|
display: flex;
|
|
6
6
|
flex-wrap: wrap;
|
|
7
7
|
background: var(--theme-elevation-50);
|
|
8
|
-
padding:
|
|
8
|
+
padding: var(--base);
|
|
9
|
+
gap: calc(var(--base) / 2);
|
|
9
10
|
|
|
10
11
|
&__column {
|
|
11
|
-
margin-right: base(0.5);
|
|
12
|
-
margin-bottom: base(0.5);
|
|
13
12
|
background-color: transparent;
|
|
14
13
|
box-shadow: 0 0 0 1px var(--theme-elevation-150);
|
|
15
14
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/DeleteDocument/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,SAAS,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/DeleteDocument/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,SAAS,CAAA;AAMxD,OAAO,KAAsB,MAAM,OAAO,CAAA;AAG1C,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,+BAA+B,CAAA;AAW9E,OAAO,cAAc,CAAA;AAErB,MAAM,MAAM,KAAK,GAAG;IAClB,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,cAAc,EAAE,yBAAyB,CAAC,MAAM,CAAC,CAAA;IAC1D,QAAQ,CAAC,EAAE,CAAC,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,QAAQ,CAAC,EAAE,yBAAyB,CAAC,UAAU,CAAC,CAAA;IACzD,QAAQ,CAAC,mBAAmB,CAAC,EAAE,OAAO,CAAA;IACtC,QAAQ,CAAC,aAAa,EAAE,yBAAyB,CAAC,QAAQ,CAAC,CAAC,UAAU,CAAC,CAAA;IACvE,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,UAAU,EAAE,yBAAyB,CAAC,OAAO,CAAC,CAAC,YAAY,CAAC,CAAA;CACtE,CAAA;AAED,eAAO,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CA+I1C,CAAA"}
|
|
@@ -4,6 +4,7 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
|
4
4
|
import { useModal } from '@faceless-ui/modal';
|
|
5
5
|
import { getTranslation } from '@payloadcms/translations';
|
|
6
6
|
import { useRouter } from 'next/navigation.js';
|
|
7
|
+
import { formatAdminURL } from 'payload/shared';
|
|
7
8
|
import React, { useCallback } from 'react';
|
|
8
9
|
import { toast } from 'sonner';
|
|
9
10
|
import { useForm } from '../../forms/Form/context.js';
|
|
@@ -12,7 +13,6 @@ import { useDocumentInfo } from '../../providers/DocumentInfo/index.js';
|
|
|
12
13
|
import { useRouteTransition } from '../../providers/RouteTransition/index.js';
|
|
13
14
|
import { useTranslation } from '../../providers/Translation/index.js';
|
|
14
15
|
import { requests } from '../../utilities/api.js';
|
|
15
|
-
import { formatAdminURL } from '../../utilities/formatAdminURL.js';
|
|
16
16
|
import { ConfirmationModal } from '../ConfirmationModal/index.js';
|
|
17
17
|
import { PopupList } from '../Popup/index.js';
|
|
18
18
|
import { Translation } from '../Translation/index.js';
|
|
@@ -57,7 +57,6 @@ export const DeleteDocument = props => {
|
|
|
57
57
|
const {
|
|
58
58
|
openModal
|
|
59
59
|
} = useModal();
|
|
60
|
-
const titleToRender = titleFromProps || title || id;
|
|
61
60
|
const modalSlug = `delete-${id}`;
|
|
62
61
|
const addDefaultError = useCallback(() => {
|
|
63
62
|
toast.error(t('error:deletingTitle', {
|
|
@@ -129,7 +128,7 @@ export const DeleteDocument = props => {
|
|
|
129
128
|
t: t,
|
|
130
129
|
variables: {
|
|
131
130
|
label: getTranslation(singularLabel, i18n),
|
|
132
|
-
title:
|
|
131
|
+
title: titleFromProps || title || id
|
|
133
132
|
}
|
|
134
133
|
}),
|
|
135
134
|
confirmingLabel: t('general:deleting'),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["useModal","getTranslation","useRouter","React","useCallback","toast","useForm","useConfig","useDocumentInfo","useRouteTransition","useTranslation","requests","
|
|
1
|
+
{"version":3,"file":"index.js","names":["useModal","getTranslation","useRouter","formatAdminURL","React","useCallback","toast","useForm","useConfig","useDocumentInfo","useRouteTransition","useTranslation","requests","ConfirmationModal","PopupList","Translation","DeleteDocument","props","id","buttonId","collectionSlug","onDelete","redirectAfterDelete","singularLabel","title","titleFromProps","config","routes","admin","adminRoute","api","serverURL","getEntityConfig","collectionConfig","setModified","router","i18n","t","startRouteTransition","openModal","modalSlug","addDefaultError","error","handleDelete","delete","headers","language","then","res","json","status","success","label","message","push","path","errors","forEach","_err","_jsxs","Fragment","_jsx","Button","onClick","body","elements","1","children","i18nKey","variables","confirmingLabel","heading","onConfirm"],"sources":["../../../src/elements/DeleteDocument/index.tsx"],"sourcesContent":["'use client'\nimport type { SanitizedCollectionConfig } from 'payload'\n\nimport { useModal } from '@faceless-ui/modal'\nimport { getTranslation } from '@payloadcms/translations'\nimport { useRouter } from 'next/navigation.js'\nimport { formatAdminURL } from 'payload/shared'\nimport React, { useCallback } from 'react'\nimport { toast } from 'sonner'\n\nimport type { DocumentDrawerContextType } from '../DocumentDrawer/Provider.js'\n\nimport { useForm } from '../../forms/Form/context.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useDocumentInfo } from '../../providers/DocumentInfo/index.js'\nimport { useRouteTransition } from '../../providers/RouteTransition/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { requests } from '../../utilities/api.js'\nimport { ConfirmationModal } from '../ConfirmationModal/index.js'\nimport { PopupList } from '../Popup/index.js'\nimport { Translation } from '../Translation/index.js'\nimport './index.scss'\n\nexport type Props = {\n readonly buttonId?: string\n readonly collectionSlug: SanitizedCollectionConfig['slug']\n readonly id?: string\n readonly onDelete?: DocumentDrawerContextType['onDelete']\n readonly redirectAfterDelete?: boolean\n readonly singularLabel: SanitizedCollectionConfig['labels']['singular']\n readonly title?: string\n readonly useAsTitle: SanitizedCollectionConfig['admin']['useAsTitle']\n}\n\nexport const DeleteDocument: React.FC<Props> = (props) => {\n const {\n id,\n buttonId,\n collectionSlug,\n onDelete,\n redirectAfterDelete = true,\n singularLabel,\n title: titleFromProps,\n } = props\n\n const {\n config: {\n routes: { admin: adminRoute, api },\n serverURL,\n },\n getEntityConfig,\n } = useConfig()\n\n const collectionConfig = getEntityConfig({ collectionSlug })\n\n const { setModified } = useForm()\n const router = useRouter()\n const { i18n, t } = useTranslation()\n const { title } = useDocumentInfo()\n const { startRouteTransition } = useRouteTransition()\n const { openModal } = useModal()\n\n const modalSlug = `delete-${id}`\n\n const addDefaultError = useCallback(() => {\n toast.error(t('error:deletingTitle', { title }))\n }, [t, title])\n\n const handleDelete = useCallback(async () => {\n setModified(false)\n\n try {\n await requests\n .delete(`${serverURL}${api}/${collectionSlug}/${id}`, {\n headers: {\n 'Accept-Language': i18n.language,\n 'Content-Type': 'application/json',\n },\n })\n .then(async (res) => {\n try {\n const json = await res.json()\n\n if (res.status < 400) {\n toast.success(\n t('general:titleDeleted', {\n label: getTranslation(singularLabel, i18n),\n title,\n }) || json.message,\n )\n\n if (redirectAfterDelete) {\n return startRouteTransition(() =>\n router.push(\n formatAdminURL({\n adminRoute,\n path: `/collections/${collectionSlug}`,\n }),\n ),\n )\n }\n\n if (typeof onDelete === 'function') {\n await onDelete({ id, collectionConfig })\n }\n\n return\n }\n\n if (json.errors) {\n json.errors.forEach((error) => toast.error(error.message))\n } else {\n addDefaultError()\n }\n\n return false\n } catch (_err) {\n return addDefaultError()\n }\n })\n } catch (_err) {\n return addDefaultError()\n }\n }, [\n setModified,\n serverURL,\n api,\n collectionSlug,\n id,\n t,\n singularLabel,\n addDefaultError,\n i18n,\n title,\n router,\n adminRoute,\n redirectAfterDelete,\n onDelete,\n collectionConfig,\n startRouteTransition,\n ])\n\n if (id) {\n return (\n <React.Fragment>\n <PopupList.Button\n id={buttonId}\n onClick={() => {\n openModal(modalSlug)\n }}\n >\n {t('general:delete')}\n </PopupList.Button>\n <ConfirmationModal\n body={\n <Translation\n elements={{\n '1': ({ children }) => <strong>{children}</strong>,\n }}\n i18nKey=\"general:aboutToDelete\"\n t={t}\n variables={{\n label: getTranslation(singularLabel, i18n),\n title: titleFromProps || title || id,\n }}\n />\n }\n confirmingLabel={t('general:deleting')}\n heading={t('general:confirmDeletion')}\n modalSlug={modalSlug}\n onConfirm={handleDelete}\n />\n </React.Fragment>\n )\n }\n\n return null\n}\n"],"mappings":"AAAA;;;AAGA,SAASA,QAAQ,QAAQ;AACzB,SAASC,cAAc,QAAQ;AAC/B,SAASC,SAAS,QAAQ;AAC1B,SAASC,cAAc,QAAQ;AAC/B,OAAOC,KAAA,IAASC,WAAW,QAAQ;AACnC,SAASC,KAAK,QAAQ;AAItB,SAASC,OAAO,QAAQ;AACxB,SAASC,SAAS,QAAQ;AAC1B,SAASC,eAAe,QAAQ;AAChC,SAASC,kBAAkB,QAAQ;AACnC,SAASC,cAAc,QAAQ;AAC/B,SAASC,QAAQ,QAAQ;AACzB,SAASC,iBAAiB,QAAQ;AAClC,SAASC,SAAS,QAAQ;AAC1B,SAASC,WAAW,QAAQ;AAC5B,OAAO;AAaP,OAAO,MAAMC,cAAA,GAAmCC,KAAA;EAC9C,MAAM;IACJC,EAAE;IACFC,QAAQ;IACRC,cAAc;IACdC,QAAQ;IACRC,mBAAA,GAAsB,IAAI;IAC1BC,aAAa;IACbC,KAAA,EAAOC;EAAc,CACtB,GAAGR,KAAA;EAEJ,MAAM;IACJS,MAAA,EAAQ;MACNC,MAAA,EAAQ;QAAEC,KAAA,EAAOC,UAAU;QAAEC;MAAG,CAAE;MAClCC;IAAS,CACV;IACDC;EAAe,CAChB,GAAGxB,SAAA;EAEJ,MAAMyB,gBAAA,GAAmBD,eAAA,CAAgB;IAAEZ;EAAe;EAE1D,MAAM;IAAEc;EAAW,CAAE,GAAG3B,OAAA;EACxB,MAAM4B,MAAA,GAASjC,SAAA;EACf,MAAM;IAAEkC,IAAI;IAAEC;EAAC,CAAE,GAAG1B,cAAA;EACpB,MAAM;IAAEa;EAAK,CAAE,GAAGf,eAAA;EAClB,MAAM;IAAE6B;EAAoB,CAAE,GAAG5B,kBAAA;EACjC,MAAM;IAAE6B;EAAS,CAAE,GAAGvC,QAAA;EAEtB,MAAMwC,SAAA,GAAY,UAAUtB,EAAA,EAAI;EAEhC,MAAMuB,eAAA,GAAkBpC,WAAA,CAAY;IAClCC,KAAA,CAAMoC,KAAK,CAACL,CAAA,CAAE,uBAAuB;MAAEb;IAAM;EAC/C,GAAG,CAACa,CAAA,EAAGb,KAAA,CAAM;EAEb,MAAMmB,YAAA,GAAetC,WAAA,CAAY;IAC/B6B,WAAA,CAAY;IAEZ,IAAI;MACF,MAAMtB,QAAA,CACHgC,MAAM,CAAC,GAAGb,SAAA,GAAYD,GAAA,IAAOV,cAAA,IAAkBF,EAAA,EAAI,EAAE;QACpD2B,OAAA,EAAS;UACP,mBAAmBT,IAAA,CAAKU,QAAQ;UAChC,gBAAgB;QAClB;MACF,GACCC,IAAI,CAAC,MAAOC,GAAA;QACX,IAAI;UACF,MAAMC,IAAA,GAAO,MAAMD,GAAA,CAAIC,IAAI;UAE3B,IAAID,GAAA,CAAIE,MAAM,GAAG,KAAK;YACpB5C,KAAA,CAAM6C,OAAO,CACXd,CAAA,CAAE,wBAAwB;cACxBe,KAAA,EAAOnD,cAAA,CAAesB,aAAA,EAAea,IAAA;cACrCZ;YACF,MAAMyB,IAAA,CAAKI,OAAO;YAGpB,IAAI/B,mBAAA,EAAqB;cACvB,OAAOgB,oBAAA,CAAqB,MAC1BH,MAAA,CAAOmB,IAAI,CACTnD,cAAA,CAAe;gBACb0B,UAAA;gBACA0B,IAAA,EAAM,gBAAgBnC,cAAA;cACxB;YAGN;YAEA,IAAI,OAAOC,QAAA,KAAa,YAAY;cAClC,MAAMA,QAAA,CAAS;gBAAEH,EAAA;gBAAIe;cAAiB;YACxC;YAEA;UACF;UAEA,IAAIgB,IAAA,CAAKO,MAAM,EAAE;YACfP,IAAA,CAAKO,MAAM,CAACC,OAAO,CAAEf,KAAA,IAAUpC,KAAA,CAAMoC,KAAK,CAACA,KAAA,CAAMW,OAAO;UAC1D,OAAO;YACLZ,eAAA;UACF;UAEA,OAAO;QACT,EAAE,OAAOiB,MAAA,EAAM;UACb,OAAOjB,eAAA;QACT;MACF;IACJ,EAAE,OAAOiB,IAAA,EAAM;MACb,OAAOjB,eAAA;IACT;EACF,GAAG,CACDP,WAAA,EACAH,SAAA,EACAD,GAAA,EACAV,cAAA,EACAF,EAAA,EACAmB,CAAA,EACAd,aAAA,EACAkB,eAAA,EACAL,IAAA,EACAZ,KAAA,EACAW,MAAA,EACAN,UAAA,EACAP,mBAAA,EACAD,QAAA,EACAY,gBAAA,EACAK,oBAAA,CACD;EAED,IAAIpB,EAAA,EAAI;IACN,oBACEyC,KAAA,CAACvD,KAAA,CAAMwD,QAAQ;8BACbC,IAAA,CAAC/C,SAAA,CAAUgD,MAAM;QACf5C,EAAA,EAAIC,QAAA;QACJ4C,OAAA,EAASA,CAAA;UACPxB,SAAA,CAAUC,SAAA;QACZ;kBAECH,CAAA,CAAE;uBAELwB,IAAA,CAAChD,iBAAA;QACCmD,IAAA,eACEH,IAAA,CAAC9C,WAAA;UACCkD,QAAA,EAAU;YACR,KAAKC,CAAC;cAAEC;YAAQ,CAAE,kBAAKN,IAAA,CAAC;wBAAQM;;UAClC;UACAC,OAAA,EAAQ;UACR/B,CAAA,EAAGA,CAAA;UACHgC,SAAA,EAAW;YACTjB,KAAA,EAAOnD,cAAA,CAAesB,aAAA,EAAea,IAAA;YACrCZ,KAAA,EAAOC,cAAA,IAAkBD,KAAA,IAASN;UACpC;;QAGJoD,eAAA,EAAiBjC,CAAA,CAAE;QACnBkC,OAAA,EAASlC,CAAA,CAAE;QACXG,SAAA,EAAWA,SAAA;QACXgC,SAAA,EAAW7B;;;EAInB;EAEA,OAAO;AACT","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/DeleteMany/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,SAAS,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/DeleteMany/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,SAAS,CAAA;AAOrD,OAAO,KAAsB,MAAM,OAAO,CAAA;AAU1C,OAAO,cAAc,CAAA;AAIrB,MAAM,MAAM,KAAK,GAAG;IAClB,UAAU,EAAE,sBAAsB,CAAA;IAClC,KAAK,CAAC,EAAE,MAAM,CAAA;CACf,CAAA;AAED,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAuItC,CAAA"}
|
|
@@ -4,6 +4,7 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
|
4
4
|
import { useModal } from '@faceless-ui/modal';
|
|
5
5
|
import { getTranslation } from '@payloadcms/translations';
|
|
6
6
|
import { useRouter, useSearchParams } from 'next/navigation.js';
|
|
7
|
+
import { mergeListSearchAndWhere } from 'payload/shared';
|
|
7
8
|
import * as qs from 'qs-esm';
|
|
8
9
|
import React, { useCallback } from 'react';
|
|
9
10
|
import { toast } from 'sonner';
|
|
@@ -13,7 +14,6 @@ import { useRouteCache } from '../../providers/RouteCache/index.js';
|
|
|
13
14
|
import { SelectAllStatus, useSelection } from '../../providers/Selection/index.js';
|
|
14
15
|
import { useTranslation } from '../../providers/Translation/index.js';
|
|
15
16
|
import { requests } from '../../utilities/api.js';
|
|
16
|
-
import { mergeListSearchAndWhere } from '../../utilities/mergeListSearchAndWhere.js';
|
|
17
17
|
import { ConfirmationModal } from '../ConfirmationModal/index.js';
|
|
18
18
|
import './index.scss';
|
|
19
19
|
const baseClass = 'delete-documents';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["useModal","getTranslation","useRouter","useSearchParams","qs","React","useCallback","toast","useAuth","useConfig","useRouteCache","SelectAllStatus","useSelection","useTranslation","requests","
|
|
1
|
+
{"version":3,"file":"index.js","names":["useModal","getTranslation","useRouter","useSearchParams","mergeListSearchAndWhere","qs","React","useCallback","toast","useAuth","useConfig","useRouteCache","SelectAllStatus","useSelection","useTranslation","requests","ConfirmationModal","baseClass","DeleteMany","props","collection","slug","labels","plural","singular","permissions","config","routes","api","serverURL","openModal","count","getQueryParams","selectAll","toggleAll","i18n","t","router","searchParams","clearRouteCache","collectionPermissions","collections","hasDeletePermission","delete","modalSlug","addDefaultError","error","handleDelete","queryWithSearch","collectionConfig","search","get","queryString","headers","language","then","res","json","deletedDocs","docs","length","successLabel","status","success","label","errors","message","description","map","join","replace","stringify","page","undefined","addQueryPrefix","_err","None","_jsxs","Fragment","_jsx","className","onClick","type","body","confirmingLabel","heading","onConfirm"],"sources":["../../../src/elements/DeleteMany/index.tsx"],"sourcesContent":["'use client'\nimport type { ClientCollectionConfig } from 'payload'\n\nimport { useModal } from '@faceless-ui/modal'\nimport { getTranslation } from '@payloadcms/translations'\nimport { useRouter, useSearchParams } from 'next/navigation.js'\nimport { mergeListSearchAndWhere } from 'payload/shared'\nimport * as qs from 'qs-esm'\nimport React, { useCallback } from 'react'\nimport { toast } from 'sonner'\n\nimport { useAuth } from '../../providers/Auth/index.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useRouteCache } from '../../providers/RouteCache/index.js'\nimport { SelectAllStatus, useSelection } from '../../providers/Selection/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { requests } from '../../utilities/api.js'\nimport { ConfirmationModal } from '../ConfirmationModal/index.js'\nimport './index.scss'\n\nconst baseClass = 'delete-documents'\n\nexport type Props = {\n collection: ClientCollectionConfig\n title?: string\n}\n\nexport const DeleteMany: React.FC<Props> = (props) => {\n const { collection, collection: { slug, labels: { plural, singular } } = {} } = props\n\n const { permissions } = useAuth()\n const {\n config: {\n routes: { api },\n serverURL,\n },\n } = useConfig()\n const { openModal } = useModal()\n const { count, getQueryParams, selectAll, toggleAll } = useSelection()\n const { i18n, t } = useTranslation()\n const router = useRouter()\n const searchParams = useSearchParams()\n const { clearRouteCache } = useRouteCache()\n\n const collectionPermissions = permissions?.collections?.[slug]\n const hasDeletePermission = collectionPermissions?.delete\n\n const modalSlug = `delete-${slug}`\n\n const addDefaultError = useCallback(() => {\n toast.error(t('error:unknown'))\n }, [t])\n\n const handleDelete = useCallback(async () => {\n const queryWithSearch = mergeListSearchAndWhere({\n collectionConfig: collection,\n search: searchParams.get('search'),\n })\n\n const queryString = getQueryParams(queryWithSearch)\n\n await requests\n .delete(`${serverURL}${api}/${slug}${queryString}`, {\n headers: {\n 'Accept-Language': i18n.language,\n 'Content-Type': 'application/json',\n },\n })\n .then(async (res) => {\n try {\n const json = await res.json()\n\n const deletedDocs = json?.docs.length || 0\n const successLabel = deletedDocs > 1 ? plural : singular\n\n if (res.status < 400 || deletedDocs > 0) {\n toast.success(\n t('general:deletedCountSuccessfully', {\n count: deletedDocs,\n label: getTranslation(successLabel, i18n),\n }),\n )\n\n if (json?.errors.length > 0) {\n toast.error(json.message, {\n description: json.errors.map((error) => error.message).join('\\n'),\n })\n }\n\n toggleAll()\n\n router.replace(\n qs.stringify(\n {\n page: selectAll ? '1' : undefined,\n },\n { addQueryPrefix: true },\n ),\n )\n\n clearRouteCache()\n\n return null\n }\n\n if (json.errors) {\n toast.error(json.message, {\n description: json.errors.map((error) => error.message).join('\\n'),\n })\n } else {\n return addDefaultError()\n }\n return false\n } catch (_err) {\n return addDefaultError()\n }\n })\n }, [\n searchParams,\n addDefaultError,\n api,\n getQueryParams,\n i18n,\n plural,\n router,\n selectAll,\n serverURL,\n singular,\n slug,\n t,\n toggleAll,\n clearRouteCache,\n collection,\n ])\n\n if (selectAll === SelectAllStatus.None || !hasDeletePermission) {\n return null\n }\n\n return (\n <React.Fragment>\n <button\n className={`${baseClass}__toggle`}\n onClick={() => {\n openModal(modalSlug)\n }}\n type=\"button\"\n >\n {t('general:delete')}\n </button>\n <ConfirmationModal\n body={t('general:aboutToDeleteCount', {\n count,\n label: getTranslation(count > 1 ? plural : singular, i18n),\n })}\n confirmingLabel={t('general:deleting')}\n heading={t('general:confirmDeletion')}\n modalSlug={modalSlug}\n onConfirm={handleDelete}\n />\n </React.Fragment>\n )\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/DocumentControls/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,UAAU,EACV,yBAAyB,EACzB,6BAA6B,EAC7B,yBAAyB,EAC1B,MAAM,SAAS,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/DocumentControls/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,UAAU,EACV,yBAAyB,EACzB,6BAA6B,EAC7B,yBAAyB,EAC1B,MAAM,SAAS,CAAA;AAIhB,OAAO,KAA8B,MAAM,OAAO,CAAA;AAElD,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,+BAA+B,CAAA;AAqB9E,OAAO,cAAc,CAAA;AAIrB,eAAO,MAAM,gBAAgB,EAAE,KAAK,CAAC,EAAE,CAAC;IACtC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,gBAAgB,CAAC,EAAE;QAC1B,QAAQ,CAAC,aAAa,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;QACxC,QAAQ,CAAC,aAAa,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;QACxC,QAAQ,CAAC,UAAU,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;QACrC,QAAQ,CAAC,eAAe,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;KAC3C,CAAA;IACD,QAAQ,CAAC,IAAI,CAAC,EAAE,GAAG,CAAA;IACnB,QAAQ,CAAC,cAAc,CAAC,EAAE,OAAO,CAAA;IACjC,QAAQ,CAAC,aAAa,CAAC,EAAE,OAAO,CAAA;IAChC,QAAQ,CAAC,oBAAoB,CAAC,EAAE,OAAO,CAAA;IACvC,QAAQ,CAAC,iBAAiB,CAAC,EAAE,OAAO,CAAA;IACpC,QAAQ,CAAC,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IAC7B,QAAQ,CAAC,aAAa,CAAC,EAAE,OAAO,CAAA;IAChC,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAA;IAC5B,QAAQ,CAAC,QAAQ,CAAC,EAAE,yBAAyB,CAAC,UAAU,CAAC,CAAA;IACzD,QAAQ,CAAC,iBAAiB,CAAC,EAAE,MAAM,IAAI,CAAA;IAEvC,QAAQ,CAAC,WAAW,CAAC,EAAE,yBAAyB,CAAC,aAAa,CAAC,CAAA;IAC/D,QAAQ,CAAC,MAAM,CAAC,EAAE,yBAAyB,CAAC,QAAQ,CAAC,CAAA;IACrD,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,IAAI,CAAA;IAChC,QAAQ,CAAC,WAAW,EAAE,IAAI,GAAG,6BAA6B,GAAG,yBAAyB,CAAA;IACtF,QAAQ,CAAC,uBAAuB,CAAC,EAAE,OAAO,CAAA;IAC1C,QAAQ,CAAC,mBAAmB,CAAC,EAAE,OAAO,CAAA;IACtC,QAAQ,CAAC,sBAAsB,CAAC,EAAE,OAAO,CAAA;IACzC,QAAQ,CAAC,IAAI,EAAE,yBAAyB,CAAC,MAAM,CAAC,CAAA;IAChD,QAAQ,CAAC,IAAI,CAAC,EAAE,UAAU,CAAA;CAC3B,CA4PA,CAAA"}
|
|
@@ -3,12 +3,12 @@
|
|
|
3
3
|
import { c as _c } from "react/compiler-runtime";
|
|
4
4
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
5
5
|
import { getTranslation } from '@payloadcms/translations';
|
|
6
|
+
import { formatAdminURL } from 'payload/shared';
|
|
6
7
|
import React, { Fragment, useEffect } from 'react';
|
|
7
8
|
import { useFormInitializing, useFormProcessing } from '../../forms/Form/context.js';
|
|
8
9
|
import { useConfig } from '../../providers/Config/index.js';
|
|
9
10
|
import { useEditDepth } from '../../providers/EditDepth/index.js';
|
|
10
11
|
import { useTranslation } from '../../providers/Translation/index.js';
|
|
11
|
-
import { formatAdminURL } from '../../utilities/formatAdminURL.js';
|
|
12
12
|
import { formatDate } from '../../utilities/formatDate.js';
|
|
13
13
|
import { Autosave } from '../Autosave/index.js';
|
|
14
14
|
import { Button } from '../Button/index.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["c","_c","getTranslation","React","Fragment","useEffect","useFormInitializing","useFormProcessing","useConfig","useEditDepth","useTranslation","formatAdminURL","formatDate","Autosave","Button","CopyLocaleData","DeleteDocument","DuplicateDocument","Gutter","Locked","Popup","PopupList","PreviewButton","PublishButton","RenderCustomComponent","SaveButton","SaveDraftButton","Status","baseClass","DocumentControls","props","$","id","slug","customComponents","t0","data","disableActions","disableCreate","hasSavePermission","isAccountView","isEditing","onDelete","onDrawerCreateNew","onDuplicate","onTakeOver","permissions","readOnlyForIncomingUser","redirectAfterDelete","redirectAfterDuplicate","user","t1","undefined","CustomPreviewButton","CustomPublishButton","CustomSaveButton","CustomSaveDraftButton","i18n","t","editDepth","config","getEntityConfig","collectionConfig","collectionSlug","globalConfig","globalSlug","admin","t2","localization","routes","t3","dateFormat","adminRoute","updatedAt","setUpdatedAt","useState","createdAt","setCreatedAt","processing","initializing","t4","t5","date","pattern","hasCreatePermission","create","hasDeletePermission","delete","showDotMenu","Boolean","unsavedDraftWithValidations","versions","drafts","validate","autosaveEnabled","autosave","t6","_jsx","className","t7","buttonStyle","onClick","size","type","children","_jsxs","label","labels","singular","filter","join","collection","global","publishedDocUpdatedAt","timestamps","title","preview","CustomComponent","Fallback","button","disabled","horizontalAlign","verticalAlign","ButtonGroup","href","path","disableDuplicate","toString","singularLabel","buttonId","useAsTitle"],"sources":["../../../src/elements/DocumentControls/index.tsx"],"sourcesContent":["'use client'\nimport type {\n ClientUser,\n SanitizedCollectionConfig,\n SanitizedCollectionPermission,\n SanitizedGlobalPermission,\n} from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport React, { Fragment, useEffect } from 'react'\n\nimport type { DocumentDrawerContextType } from '../DocumentDrawer/Provider.js'\n\nimport { useFormInitializing, useFormProcessing } from '../../forms/Form/context.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useEditDepth } from '../../providers/EditDepth/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { formatAdminURL } from '../../utilities/formatAdminURL.js'\nimport { formatDate } from '../../utilities/formatDate.js'\nimport { Autosave } from '../Autosave/index.js'\nimport { Button } from '../Button/index.js'\nimport { CopyLocaleData } from '../CopyLocaleData/index.js'\nimport { DeleteDocument } from '../DeleteDocument/index.js'\nimport { DuplicateDocument } from '../DuplicateDocument/index.js'\nimport { Gutter } from '../Gutter/index.js'\nimport { Locked } from '../Locked/index.js'\nimport { Popup, PopupList } from '../Popup/index.js'\nimport { PreviewButton } from '../PreviewButton/index.js'\nimport { PublishButton } from '../PublishButton/index.js'\nimport { RenderCustomComponent } from '../RenderCustomComponent/index.js'\nimport { SaveButton } from '../SaveButton/index.js'\nimport { SaveDraftButton } from '../SaveDraftButton/index.js'\nimport { Status } from '../Status/index.js'\nimport './index.scss'\n\nconst baseClass = 'doc-controls'\n\nexport const DocumentControls: React.FC<{\n readonly apiURL: string\n readonly customComponents?: {\n readonly PreviewButton?: React.ReactNode\n readonly PublishButton?: React.ReactNode\n readonly SaveButton?: React.ReactNode\n readonly SaveDraftButton?: React.ReactNode\n }\n readonly data?: any\n readonly disableActions?: boolean\n readonly disableCreate?: boolean\n readonly hasPublishPermission?: boolean\n readonly hasSavePermission?: boolean\n readonly id?: number | string\n readonly isAccountView?: boolean\n readonly isEditing?: boolean\n readonly onDelete?: DocumentDrawerContextType['onDelete']\n readonly onDrawerCreateNew?: () => void\n /* Only available if `redirectAfterDuplicate` is `false` */\n readonly onDuplicate?: DocumentDrawerContextType['onDuplicate']\n readonly onSave?: DocumentDrawerContextType['onSave']\n readonly onTakeOver?: () => void\n readonly permissions: null | SanitizedCollectionPermission | SanitizedGlobalPermission\n readonly readOnlyForIncomingUser?: boolean\n readonly redirectAfterDelete?: boolean\n readonly redirectAfterDuplicate?: boolean\n readonly slug: SanitizedCollectionConfig['slug']\n readonly user?: ClientUser\n}> = (props) => {\n const {\n id,\n slug,\n customComponents: {\n PreviewButton: CustomPreviewButton,\n PublishButton: CustomPublishButton,\n SaveButton: CustomSaveButton,\n SaveDraftButton: CustomSaveDraftButton,\n } = {},\n data,\n disableActions,\n disableCreate,\n hasSavePermission,\n isAccountView,\n isEditing,\n onDelete,\n onDrawerCreateNew,\n onDuplicate,\n onTakeOver,\n permissions,\n readOnlyForIncomingUser,\n redirectAfterDelete,\n redirectAfterDuplicate,\n user,\n } = props\n\n const { i18n, t } = useTranslation()\n\n const editDepth = useEditDepth()\n\n const { config, getEntityConfig } = useConfig()\n\n const collectionConfig = getEntityConfig({ collectionSlug: slug })\n\n const globalConfig = getEntityConfig({ globalSlug: slug })\n\n const {\n admin: { dateFormat },\n localization,\n routes: { admin: adminRoute },\n } = config\n\n // Settings these in state to avoid hydration issues if there is a mismatch between the server and client\n const [updatedAt, setUpdatedAt] = React.useState<string>('')\n const [createdAt, setCreatedAt] = React.useState<string>('')\n\n const processing = useFormProcessing()\n const initializing = useFormInitializing()\n\n useEffect(() => {\n if (data?.updatedAt) {\n setUpdatedAt(formatDate({ date: data.updatedAt, i18n, pattern: dateFormat }))\n }\n if (data?.createdAt) {\n setCreatedAt(formatDate({ date: data.createdAt, i18n, pattern: dateFormat }))\n }\n }, [data, i18n, dateFormat])\n\n const hasCreatePermission = permissions && 'create' in permissions && permissions.create\n\n const hasDeletePermission = permissions && 'delete' in permissions && permissions.delete\n\n const showDotMenu = Boolean(\n collectionConfig && id && !disableActions && (hasCreatePermission || hasDeletePermission),\n )\n\n const unsavedDraftWithValidations =\n !id && collectionConfig?.versions?.drafts && collectionConfig.versions?.drafts.validate\n\n const autosaveEnabled =\n (collectionConfig?.versions?.drafts && collectionConfig?.versions?.drafts?.autosave) ||\n (globalConfig?.versions?.drafts && globalConfig?.versions?.drafts?.autosave)\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 {user && readOnlyForIncomingUser && (\n <Locked className={`${baseClass}__locked-controls`} user={user} />\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 {hasSavePermission && autosaveEnabled && !unsavedDraftWithValidations && (\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={data?.updatedAt ? updatedAt : ''}\n >\n <p className={`${baseClass}__label`}>{i18n.t('general:lastModified')}: </p>\n {data?.updatedAt && <p className={`${baseClass}__value`}>{updatedAt}</p>}\n </li>\n <li\n className={[`${baseClass}__list-item`, `${baseClass}__value-wrap`]\n .filter(Boolean)\n .join(' ')}\n title={data?.createdAt ? createdAt : ''}\n >\n <p className={`${baseClass}__label`}>{i18n.t('general:created')}: </p>\n {data?.createdAt && <p className={`${baseClass}__value`}>{createdAt}</p>}\n </li>\n </Fragment>\n )}\n </ul>\n </div>\n <div className={`${baseClass}__controls-wrapper`}>\n <div className={`${baseClass}__controls`}>\n {(collectionConfig?.admin.preview || globalConfig?.admin.preview) && (\n <RenderCustomComponent\n CustomComponent={CustomPreviewButton}\n Fallback={<PreviewButton />}\n />\n )}\n {hasSavePermission && (\n <Fragment>\n {collectionConfig?.versions?.drafts || globalConfig?.versions?.drafts ? (\n <Fragment>\n {(unsavedDraftWithValidations || !autosaveEnabled) && (\n <RenderCustomComponent\n CustomComponent={CustomSaveDraftButton}\n Fallback={<SaveDraftButton />}\n />\n )}\n <RenderCustomComponent\n CustomComponent={CustomPublishButton}\n Fallback={<PublishButton />}\n />\n </Fragment>\n ) : (\n <RenderCustomComponent\n CustomComponent={CustomSaveButton}\n Fallback={<SaveButton />}\n />\n )}\n </Fragment>\n )}\n {user && readOnlyForIncomingUser && (\n <Button\n buttonStyle=\"secondary\"\n id=\"take-over\"\n onClick={onTakeOver}\n size=\"medium\"\n type=\"button\"\n >\n {t('general:takeOver')}\n </Button>\n )}\n </div>\n {showDotMenu && !readOnlyForIncomingUser && (\n <Popup\n button={\n <div className={`${baseClass}__dots`}>\n <div />\n <div />\n <div />\n </div>\n }\n className={`${baseClass}__popup`}\n disabled={initializing || processing}\n horizontalAlign=\"right\"\n size=\"large\"\n verticalAlign=\"bottom\"\n >\n <PopupList.ButtonGroup>\n {localization && <CopyLocaleData />}\n {hasCreatePermission && (\n <React.Fragment>\n {!disableCreate && (\n <Fragment>\n {editDepth > 1 ? (\n <PopupList.Button id=\"action-create\" onClick={onDrawerCreateNew}>\n {i18n.t('general:createNew')}\n </PopupList.Button>\n ) : (\n <PopupList.Button\n href={formatAdminURL({\n adminRoute,\n path: `/collections/${collectionConfig?.slug}/create`,\n })}\n id=\"action-create\"\n >\n {i18n.t('general:createNew')}\n </PopupList.Button>\n )}\n </Fragment>\n )}\n {collectionConfig.disableDuplicate !== true && isEditing && (\n <DuplicateDocument\n id={id.toString()}\n onDuplicate={onDuplicate}\n redirectAfterDuplicate={redirectAfterDuplicate}\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 onDelete={onDelete}\n redirectAfterDelete={redirectAfterDelete}\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"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"index.js","names":["c","_c","getTranslation","formatAdminURL","React","Fragment","useEffect","useFormInitializing","useFormProcessing","useConfig","useEditDepth","useTranslation","formatDate","Autosave","Button","CopyLocaleData","DeleteDocument","DuplicateDocument","Gutter","Locked","Popup","PopupList","PreviewButton","PublishButton","RenderCustomComponent","SaveButton","SaveDraftButton","Status","baseClass","DocumentControls","props","$","id","slug","customComponents","t0","data","disableActions","disableCreate","hasSavePermission","isAccountView","isEditing","onDelete","onDrawerCreateNew","onDuplicate","onTakeOver","permissions","readOnlyForIncomingUser","redirectAfterDelete","redirectAfterDuplicate","user","t1","undefined","CustomPreviewButton","CustomPublishButton","CustomSaveButton","CustomSaveDraftButton","i18n","t","editDepth","config","getEntityConfig","collectionConfig","collectionSlug","globalConfig","globalSlug","admin","t2","localization","routes","t3","dateFormat","adminRoute","updatedAt","setUpdatedAt","useState","createdAt","setCreatedAt","processing","initializing","t4","t5","date","pattern","hasCreatePermission","create","hasDeletePermission","delete","showDotMenu","Boolean","unsavedDraftWithValidations","versions","drafts","validate","autosaveEnabled","autosave","t6","_jsx","className","t7","buttonStyle","onClick","size","type","children","_jsxs","label","labels","singular","filter","join","collection","global","publishedDocUpdatedAt","timestamps","title","preview","CustomComponent","Fallback","button","disabled","horizontalAlign","verticalAlign","ButtonGroup","href","path","disableDuplicate","toString","singularLabel","buttonId","useAsTitle"],"sources":["../../../src/elements/DocumentControls/index.tsx"],"sourcesContent":["'use client'\nimport type {\n ClientUser,\n SanitizedCollectionConfig,\n SanitizedCollectionPermission,\n SanitizedGlobalPermission,\n} from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport { formatAdminURL } from 'payload/shared'\nimport React, { Fragment, useEffect } from 'react'\n\nimport type { DocumentDrawerContextType } from '../DocumentDrawer/Provider.js'\n\nimport { useFormInitializing, useFormProcessing } from '../../forms/Form/context.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useEditDepth } from '../../providers/EditDepth/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { formatDate } from '../../utilities/formatDate.js'\nimport { Autosave } from '../Autosave/index.js'\nimport { Button } from '../Button/index.js'\nimport { CopyLocaleData } from '../CopyLocaleData/index.js'\nimport { DeleteDocument } from '../DeleteDocument/index.js'\nimport { DuplicateDocument } from '../DuplicateDocument/index.js'\nimport { Gutter } from '../Gutter/index.js'\nimport { Locked } from '../Locked/index.js'\nimport { Popup, PopupList } from '../Popup/index.js'\nimport { PreviewButton } from '../PreviewButton/index.js'\nimport { PublishButton } from '../PublishButton/index.js'\nimport { RenderCustomComponent } from '../RenderCustomComponent/index.js'\nimport { SaveButton } from '../SaveButton/index.js'\nimport { SaveDraftButton } from '../SaveDraftButton/index.js'\nimport { Status } from '../Status/index.js'\nimport './index.scss'\n\nconst baseClass = 'doc-controls'\n\nexport const DocumentControls: React.FC<{\n readonly apiURL: string\n readonly customComponents?: {\n readonly PreviewButton?: React.ReactNode\n readonly PublishButton?: React.ReactNode\n readonly SaveButton?: React.ReactNode\n readonly SaveDraftButton?: React.ReactNode\n }\n readonly data?: any\n readonly disableActions?: boolean\n readonly disableCreate?: boolean\n readonly hasPublishPermission?: boolean\n readonly hasSavePermission?: boolean\n readonly id?: number | string\n readonly isAccountView?: boolean\n readonly isEditing?: boolean\n readonly onDelete?: DocumentDrawerContextType['onDelete']\n readonly onDrawerCreateNew?: () => void\n /* Only available if `redirectAfterDuplicate` is `false` */\n readonly onDuplicate?: DocumentDrawerContextType['onDuplicate']\n readonly onSave?: DocumentDrawerContextType['onSave']\n readonly onTakeOver?: () => void\n readonly permissions: null | SanitizedCollectionPermission | SanitizedGlobalPermission\n readonly readOnlyForIncomingUser?: boolean\n readonly redirectAfterDelete?: boolean\n readonly redirectAfterDuplicate?: boolean\n readonly slug: SanitizedCollectionConfig['slug']\n readonly user?: ClientUser\n}> = (props) => {\n const {\n id,\n slug,\n customComponents: {\n PreviewButton: CustomPreviewButton,\n PublishButton: CustomPublishButton,\n SaveButton: CustomSaveButton,\n SaveDraftButton: CustomSaveDraftButton,\n } = {},\n data,\n disableActions,\n disableCreate,\n hasSavePermission,\n isAccountView,\n isEditing,\n onDelete,\n onDrawerCreateNew,\n onDuplicate,\n onTakeOver,\n permissions,\n readOnlyForIncomingUser,\n redirectAfterDelete,\n redirectAfterDuplicate,\n user,\n } = props\n\n const { i18n, t } = useTranslation()\n\n const editDepth = useEditDepth()\n\n const { config, getEntityConfig } = useConfig()\n\n const collectionConfig = getEntityConfig({ collectionSlug: slug })\n\n const globalConfig = getEntityConfig({ globalSlug: slug })\n\n const {\n admin: { dateFormat },\n localization,\n routes: { admin: adminRoute },\n } = config\n\n // Settings these in state to avoid hydration issues if there is a mismatch between the server and client\n const [updatedAt, setUpdatedAt] = React.useState<string>('')\n const [createdAt, setCreatedAt] = React.useState<string>('')\n\n const processing = useFormProcessing()\n const initializing = useFormInitializing()\n\n useEffect(() => {\n if (data?.updatedAt) {\n setUpdatedAt(formatDate({ date: data.updatedAt, i18n, pattern: dateFormat }))\n }\n if (data?.createdAt) {\n setCreatedAt(formatDate({ date: data.createdAt, i18n, pattern: dateFormat }))\n }\n }, [data, i18n, dateFormat])\n\n const hasCreatePermission = permissions && 'create' in permissions && permissions.create\n\n const hasDeletePermission = permissions && 'delete' in permissions && permissions.delete\n\n const showDotMenu = Boolean(\n collectionConfig && id && !disableActions && (hasCreatePermission || hasDeletePermission),\n )\n\n const unsavedDraftWithValidations =\n !id && collectionConfig?.versions?.drafts && collectionConfig.versions?.drafts.validate\n\n const autosaveEnabled =\n (collectionConfig?.versions?.drafts && collectionConfig?.versions?.drafts?.autosave) ||\n (globalConfig?.versions?.drafts && globalConfig?.versions?.drafts?.autosave)\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 {user && readOnlyForIncomingUser && (\n <Locked className={`${baseClass}__locked-controls`} user={user} />\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 {hasSavePermission && autosaveEnabled && !unsavedDraftWithValidations && (\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={data?.updatedAt ? updatedAt : ''}\n >\n <p className={`${baseClass}__label`}>{i18n.t('general:lastModified')}: </p>\n {data?.updatedAt && <p className={`${baseClass}__value`}>{updatedAt}</p>}\n </li>\n <li\n className={[`${baseClass}__list-item`, `${baseClass}__value-wrap`]\n .filter(Boolean)\n .join(' ')}\n title={data?.createdAt ? createdAt : ''}\n >\n <p className={`${baseClass}__label`}>{i18n.t('general:created')}: </p>\n {data?.createdAt && <p className={`${baseClass}__value`}>{createdAt}</p>}\n </li>\n </Fragment>\n )}\n </ul>\n </div>\n <div className={`${baseClass}__controls-wrapper`}>\n <div className={`${baseClass}__controls`}>\n {(collectionConfig?.admin.preview || globalConfig?.admin.preview) && (\n <RenderCustomComponent\n CustomComponent={CustomPreviewButton}\n Fallback={<PreviewButton />}\n />\n )}\n {hasSavePermission && (\n <Fragment>\n {collectionConfig?.versions?.drafts || globalConfig?.versions?.drafts ? (\n <Fragment>\n {(unsavedDraftWithValidations || !autosaveEnabled) && (\n <RenderCustomComponent\n CustomComponent={CustomSaveDraftButton}\n Fallback={<SaveDraftButton />}\n />\n )}\n <RenderCustomComponent\n CustomComponent={CustomPublishButton}\n Fallback={<PublishButton />}\n />\n </Fragment>\n ) : (\n <RenderCustomComponent\n CustomComponent={CustomSaveButton}\n Fallback={<SaveButton />}\n />\n )}\n </Fragment>\n )}\n {user && readOnlyForIncomingUser && (\n <Button\n buttonStyle=\"secondary\"\n id=\"take-over\"\n onClick={onTakeOver}\n size=\"medium\"\n type=\"button\"\n >\n {t('general:takeOver')}\n </Button>\n )}\n </div>\n {showDotMenu && !readOnlyForIncomingUser && (\n <Popup\n button={\n <div className={`${baseClass}__dots`}>\n <div />\n <div />\n <div />\n </div>\n }\n className={`${baseClass}__popup`}\n disabled={initializing || processing}\n horizontalAlign=\"right\"\n size=\"large\"\n verticalAlign=\"bottom\"\n >\n <PopupList.ButtonGroup>\n {localization && <CopyLocaleData />}\n {hasCreatePermission && (\n <React.Fragment>\n {!disableCreate && (\n <Fragment>\n {editDepth > 1 ? (\n <PopupList.Button id=\"action-create\" onClick={onDrawerCreateNew}>\n {i18n.t('general:createNew')}\n </PopupList.Button>\n ) : (\n <PopupList.Button\n href={formatAdminURL({\n adminRoute,\n path: `/collections/${collectionConfig?.slug}/create`,\n })}\n id=\"action-create\"\n >\n {i18n.t('general:createNew')}\n </PopupList.Button>\n )}\n </Fragment>\n )}\n {collectionConfig.disableDuplicate !== true && isEditing && (\n <DuplicateDocument\n id={id.toString()}\n onDuplicate={onDuplicate}\n redirectAfterDuplicate={redirectAfterDuplicate}\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 onDelete={onDelete}\n redirectAfterDelete={redirectAfterDelete}\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"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DrawerContent.d.ts","sourceRoot":"","sources":["../../../src/elements/DocumentDrawer/DrawerContent.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAmD,MAAM,OAAO,CAAA;AAGvE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAA;AAUrD,eAAO,MAAM,qBAAqB,EAAE,KAAK,CAAC,EAAE,CAAC,mBAAmB,
|
|
1
|
+
{"version":3,"file":"DrawerContent.d.ts","sourceRoot":"","sources":["../../../src/elements/DocumentDrawer/DrawerContent.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAmD,MAAM,OAAO,CAAA;AAGvE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAA;AAUrD,eAAO,MAAM,qBAAqB,EAAE,KAAK,CAAC,EAAE,CAAC,mBAAmB,CAkK/D,CAAA"}
|
|
@@ -19,11 +19,11 @@ export const DocumentDrawerContent = ({
|
|
|
19
19
|
drawerSlug,
|
|
20
20
|
Header,
|
|
21
21
|
initialData,
|
|
22
|
-
initialState,
|
|
23
22
|
onDelete: onDeleteFromProps,
|
|
24
23
|
onDuplicate: onDuplicateFromProps,
|
|
25
24
|
onSave: onSaveFromProps,
|
|
26
25
|
overrideEntityVisibility = true,
|
|
26
|
+
redirectAfterCreate,
|
|
27
27
|
redirectAfterDelete,
|
|
28
28
|
redirectAfterDuplicate
|
|
29
29
|
}) => {
|
|
@@ -60,6 +60,7 @@ export const DocumentDrawerContent = ({
|
|
|
60
60
|
initialData,
|
|
61
61
|
locale,
|
|
62
62
|
overrideEntityVisibility,
|
|
63
|
+
redirectAfterCreate,
|
|
63
64
|
redirectAfterDelete: redirectAfterDelete !== undefined ? redirectAfterDelete : false,
|
|
64
65
|
redirectAfterDuplicate: redirectAfterDuplicate !== undefined ? redirectAfterDuplicate : false,
|
|
65
66
|
signal: controller.signal
|