@payloadcms/ui 3.27.0-canary.ecc3f49 → 3.27.0-canary.f0ea918
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/ColumnSelector/index.js +1 -1
- package/dist/elements/ColumnSelector/index.js.map +1 -1
- package/dist/elements/ColumnSelector/index.scss +3 -2
- package/dist/elements/DeleteDocument/index.d.ts.map +1 -1
- package/dist/elements/DeleteDocument/index.js +2 -1
- 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/DocumentDrawer/DrawerContent.d.ts.map +1 -1
- package/dist/elements/DocumentDrawer/DrawerContent.js +1 -2
- package/dist/elements/DocumentDrawer/DrawerContent.js.map +1 -1
- package/dist/elements/DocumentDrawer/types.d.ts +0 -4
- package/dist/elements/DocumentDrawer/types.d.ts.map +1 -1
- package/dist/elements/DocumentDrawer/types.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/index.d.ts +24 -1
- package/dist/elements/ListControls/index.d.ts.map +1 -1
- package/dist/elements/ListControls/index.js +86 -110
- package/dist/elements/ListControls/index.js.map +1 -1
- package/dist/elements/ListControls/index.scss +9 -5
- package/dist/elements/ListDrawer/DrawerContent.d.ts.map +1 -1
- package/dist/elements/ListDrawer/DrawerContent.js +2 -4
- package/dist/elements/ListDrawer/DrawerContent.js.map +1 -1
- package/dist/elements/ListDrawer/types.d.ts +2 -3
- package/dist/elements/ListDrawer/types.d.ts.map +1 -1
- package/dist/elements/ListDrawer/types.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 +0 -2
- package/dist/elements/Pill/index.js.map +1 -1
- package/dist/elements/Pill/index.scss +6 -29
- 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 +4 -3
- package/dist/elements/RelationshipTable/index.js.map +1 -1
- package/dist/elements/TableColumns/RenderDefaultCell/index.d.ts.map +1 -0
- package/dist/{providers → elements}/TableColumns/RenderDefaultCell/index.js +2 -2
- package/dist/elements/TableColumns/RenderDefaultCell/index.js.map +1 -0
- package/dist/{providers → elements}/TableColumns/buildColumnState.d.ts +1 -1
- package/dist/elements/TableColumns/buildColumnState.d.ts.map +1 -0
- package/dist/{providers → elements}/TableColumns/buildColumnState.js +1 -1
- package/dist/elements/TableColumns/buildColumnState.js.map +1 -0
- package/dist/{providers → elements}/TableColumns/buildPolymorphicColumnState.d.ts +1 -1
- package/dist/elements/TableColumns/buildPolymorphicColumnState.d.ts.map +1 -0
- package/dist/{providers → elements}/TableColumns/buildPolymorphicColumnState.js +1 -1
- package/dist/elements/TableColumns/buildPolymorphicColumnState.js.map +1 -0
- package/dist/{providers → elements}/TableColumns/context.d.ts +0 -2
- package/dist/elements/TableColumns/context.d.ts.map +1 -0
- package/dist/elements/TableColumns/context.js +4 -0
- package/dist/elements/TableColumns/context.js.map +1 -0
- package/dist/elements/TableColumns/filterFields.d.ts.map +1 -0
- package/dist/elements/TableColumns/filterFields.js.map +1 -0
- package/dist/elements/TableColumns/getInitialColumns.d.ts.map +1 -0
- package/dist/elements/TableColumns/getInitialColumns.js.map +1 -0
- package/dist/elements/TableColumns/index.d.ts.map +1 -0
- package/dist/{providers → elements}/TableColumns/index.js +6 -20
- package/dist/elements/TableColumns/index.js.map +1 -0
- package/dist/{providers → elements}/TableColumns/types.d.ts +1 -3
- package/dist/elements/TableColumns/types.d.ts.map +1 -0
- package/dist/elements/TableColumns/types.js.map +1 -0
- package/dist/elements/WhereBuilder/index.d.ts.map +1 -1
- package/dist/elements/WhereBuilder/index.js +2 -1
- package/dist/elements/WhereBuilder/index.js.map +1 -1
- package/dist/elements/WhereBuilder/transformWhereQuery.d.ts +8 -0
- package/dist/elements/WhereBuilder/transformWhereQuery.d.ts.map +1 -0
- package/dist/elements/WhereBuilder/transformWhereQuery.js +45 -0
- package/dist/elements/WhereBuilder/transformWhereQuery.js.map +1 -0
- package/dist/elements/WhereBuilder/validateWhereQuery.d.ts +4 -0
- package/dist/elements/WhereBuilder/validateWhereQuery.d.ts.map +1 -0
- package/dist/elements/WhereBuilder/validateWhereQuery.js +36 -0
- package/dist/elements/WhereBuilder/validateWhereQuery.js.map +1 -0
- package/dist/exports/client/index.d.ts +2 -8
- package/dist/exports/client/index.d.ts.map +1 -1
- package/dist/exports/client/index.js +23 -23
- package/dist/exports/client/index.js.map +4 -4
- package/dist/exports/shared/index.d.ts +3 -8
- 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/icons/Chevron/index.d.ts +0 -1
- package/dist/icons/Chevron/index.d.ts.map +1 -1
- package/dist/icons/Chevron/index.js +0 -2
- package/dist/icons/Chevron/index.js.map +1 -1
- package/dist/icons/Dots/index.d.ts +0 -2
- package/dist/icons/Dots/index.d.ts.map +1 -1
- package/dist/icons/Dots/index.js +2 -5
- package/dist/icons/Dots/index.js.map +1 -1
- package/dist/icons/Dots/index.scss +0 -14
- package/dist/providers/DocumentInfo/types.d.ts +0 -1
- 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 +0 -2
- package/dist/providers/ListQuery/context.d.ts.map +1 -1
- package/dist/providers/ListQuery/context.js +0 -2
- 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 +13 -25
- package/dist/providers/ListQuery/index.js.map +1 -1
- package/dist/providers/ListQuery/types.d.ts +2 -5
- 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 +0 -1
- package/dist/providers/ServerFunctions/index.d.ts.map +1 -1
- package/dist/providers/ServerFunctions/index.js.map +1 -1
- package/dist/styles.css +1 -1
- package/dist/utilities/mergeListSearchAndWhere.d.ts +10 -0
- package/dist/utilities/mergeListSearchAndWhere.d.ts.map +1 -0
- package/dist/utilities/mergeListSearchAndWhere.js +47 -0
- package/dist/utilities/mergeListSearchAndWhere.js.map +1 -0
- package/dist/utilities/renderTable.js +4 -4
- package/dist/utilities/renderTable.js.map +1 -1
- package/dist/utilities/upsertPreferences.d.ts +2 -7
- package/dist/utilities/upsertPreferences.d.ts.map +1 -1
- package/dist/utilities/upsertPreferences.js +5 -11
- package/dist/utilities/upsertPreferences.js.map +1 -1
- package/dist/views/Edit/index.d.ts.map +1 -1
- package/dist/views/Edit/index.js +2 -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 +1 -5
- package/dist/views/List/index.js.map +1 -1
- package/package.json +5 -5
- package/dist/elements/ListControls/ActiveListPreset/index.d.ts +0 -8
- package/dist/elements/ListControls/ActiveListPreset/index.d.ts.map +0 -1
- package/dist/elements/ListControls/ActiveListPreset/index.js +0 -102
- package/dist/elements/ListControls/ActiveListPreset/index.js.map +0 -1
- package/dist/elements/ListControls/ActiveListPreset/index.scss +0 -21
- package/dist/elements/ListControls/types.d.ts +0 -27
- package/dist/elements/ListControls/types.d.ts.map +0 -1
- package/dist/elements/ListControls/types.js.map +0 -1
- package/dist/elements/ListControls/useListPresets.d.ts +0 -15
- package/dist/elements/ListControls/useListPresets.d.ts.map +0 -1
- package/dist/elements/ListControls/useListPresets.js +0 -251
- package/dist/elements/ListControls/useListPresets.js.map +0 -1
- package/dist/elements/ListPresets/cells/AccessCell/index.d.ts +0 -4
- package/dist/elements/ListPresets/cells/AccessCell/index.d.ts.map +0 -1
- package/dist/elements/ListPresets/cells/AccessCell/index.js +0 -25
- package/dist/elements/ListPresets/cells/AccessCell/index.js.map +0 -1
- package/dist/elements/ListPresets/cells/ColumnsCell/index.d.ts +0 -4
- package/dist/elements/ListPresets/cells/ColumnsCell/index.d.ts.map +0 -1
- package/dist/elements/ListPresets/cells/ColumnsCell/index.js +0 -11
- package/dist/elements/ListPresets/cells/ColumnsCell/index.js.map +0 -1
- package/dist/elements/ListPresets/cells/WhereCell/index.d.ts +0 -4
- package/dist/elements/ListPresets/cells/WhereCell/index.d.ts.map +0 -1
- package/dist/elements/ListPresets/cells/WhereCell/index.js +0 -23
- package/dist/elements/ListPresets/cells/WhereCell/index.js.map +0 -1
- package/dist/elements/ListPresets/fields/AccessLabel/index.d.ts +0 -3
- package/dist/elements/ListPresets/fields/AccessLabel/index.d.ts.map +0 -1
- package/dist/elements/ListPresets/fields/AccessLabel/index.js +0 -19
- package/dist/elements/ListPresets/fields/AccessLabel/index.js.map +0 -1
- package/dist/elements/ListPresets/fields/ColumnsField/index.d.ts +0 -4
- package/dist/elements/ListPresets/fields/ColumnsField/index.d.ts.map +0 -1
- package/dist/elements/ListPresets/fields/ColumnsField/index.js +0 -64
- package/dist/elements/ListPresets/fields/ColumnsField/index.js.map +0 -1
- package/dist/elements/ListPresets/fields/ColumnsField/index.scss +0 -28
- package/dist/elements/ListPresets/fields/WhereField/index.d.ts +0 -4
- package/dist/elements/ListPresets/fields/WhereField/index.d.ts.map +0 -1
- package/dist/elements/ListPresets/fields/WhereField/index.js +0 -118
- package/dist/elements/ListPresets/fields/WhereField/index.js.map +0 -1
- package/dist/elements/ListPresets/fields/WhereField/index.scss +0 -23
- package/dist/icons/People/index.d.ts +0 -6
- package/dist/icons/People/index.d.ts.map +0 -1
- package/dist/icons/People/index.js +0 -18
- package/dist/icons/People/index.js.map +0 -1
- package/dist/icons/People/index.scss +0 -11
- package/dist/providers/TableColumns/RenderDefaultCell/index.d.ts.map +0 -1
- package/dist/providers/TableColumns/RenderDefaultCell/index.js.map +0 -1
- package/dist/providers/TableColumns/buildColumnState.d.ts.map +0 -1
- package/dist/providers/TableColumns/buildColumnState.js.map +0 -1
- package/dist/providers/TableColumns/buildPolymorphicColumnState.d.ts.map +0 -1
- package/dist/providers/TableColumns/buildPolymorphicColumnState.js.map +0 -1
- package/dist/providers/TableColumns/context.d.ts.map +0 -1
- package/dist/providers/TableColumns/context.js +0 -6
- package/dist/providers/TableColumns/context.js.map +0 -1
- package/dist/providers/TableColumns/filterFields.d.ts.map +0 -1
- package/dist/providers/TableColumns/filterFields.js.map +0 -1
- package/dist/providers/TableColumns/getInitialColumns.d.ts.map +0 -1
- package/dist/providers/TableColumns/getInitialColumns.js.map +0 -1
- package/dist/providers/TableColumns/index.d.ts.map +0 -1
- package/dist/providers/TableColumns/index.js.map +0 -1
- package/dist/providers/TableColumns/types.d.ts.map +0 -1
- package/dist/providers/TableColumns/types.js +0 -2
- package/dist/providers/TableColumns/types.js.map +0 -1
- /package/dist/{providers → elements}/TableColumns/RenderDefaultCell/index.d.ts +0 -0
- /package/dist/{providers → elements}/TableColumns/RenderDefaultCell/index.scss +0 -0
- /package/dist/{providers → elements}/TableColumns/filterFields.d.ts +0 -0
- /package/dist/{providers → elements}/TableColumns/filterFields.js +0 -0
- /package/dist/{providers → elements}/TableColumns/getInitialColumns.d.ts +0 -0
- /package/dist/{providers → elements}/TableColumns/getInitialColumns.js +0 -0
- /package/dist/{providers → elements}/TableColumns/index.d.ts +0 -0
- /package/dist/elements/{ListControls → TableColumns}/types.js +0 -0
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/elements/ListPresets/cells/AccessCell/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,SAAS,CAAA;AAIxD,OAAO,KAAmB,MAAM,OAAO,CAAA;AAEvC,eAAO,MAAM,qBAAqB,EAAE,KAAK,CAAC,EAAE,CAAC,yBAAyB,CAuBrE,CAAA"}
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import { toWords } from 'payload/shared';
|
|
3
|
-
import React, { Fragment } from 'react';
|
|
4
|
-
export const ListPresetsAccessCell = ({
|
|
5
|
-
cellData
|
|
6
|
-
}) => {
|
|
7
|
-
// first sort the operations in the order they should be displayed
|
|
8
|
-
const operations = ['read', 'update', 'delete'];
|
|
9
|
-
return /*#__PURE__*/_jsx("p", {
|
|
10
|
-
children: operations.reduce((acc, operation, index) => {
|
|
11
|
-
const operationData = cellData?.[operation];
|
|
12
|
-
if (operationData && operationData.constraint) {
|
|
13
|
-
acc.push(/*#__PURE__*/_jsxs(Fragment, {
|
|
14
|
-
children: [/*#__PURE__*/_jsxs("span", {
|
|
15
|
-
children: [/*#__PURE__*/_jsx("strong", {
|
|
16
|
-
children: toWords(operation)
|
|
17
|
-
}), ": ", toWords(operationData.constraint)]
|
|
18
|
-
}), index !== operations.length - 1 && ', ']
|
|
19
|
-
}, operation));
|
|
20
|
-
}
|
|
21
|
-
return acc;
|
|
22
|
-
}, [])
|
|
23
|
-
});
|
|
24
|
-
};
|
|
25
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["toWords","React","Fragment","ListPresetsAccessCell","cellData","operations","_jsx","reduce","acc","operation","index","operationData","constraint","push","_jsxs","length"],"sources":["../../../../../src/elements/ListPresets/cells/AccessCell/index.tsx"],"sourcesContent":["import type { DefaultCellComponentProps } from 'payload'\nimport type { JSX } from 'react'\n\nimport { toWords } from 'payload/shared'\nimport React, { Fragment } from 'react'\n\nexport const ListPresetsAccessCell: React.FC<DefaultCellComponentProps> = ({ cellData }) => {\n // first sort the operations in the order they should be displayed\n const operations = ['read', 'update', 'delete']\n\n return (\n <p>\n {operations.reduce((acc, operation, index) => {\n const operationData = (cellData as JSON)?.[operation]\n\n if (operationData && operationData.constraint) {\n acc.push(\n <Fragment key={operation}>\n <span>\n <strong>{toWords(operation)}</strong>: {toWords(operationData.constraint)}\n </span>\n {index !== operations.length - 1 && ', '}\n </Fragment>,\n )\n }\n return acc\n }, [] as JSX.Element[])}\n </p>\n )\n}\n"],"mappings":";AAGA,SAASA,OAAO,QAAQ;AACxB,OAAOC,KAAA,IAASC,QAAQ,QAAQ;AAEhC,OAAO,MAAMC,qBAAA,GAA6DA,CAAC;EAAEC;AAAQ,CAAE;EACrF;EACA,MAAMC,UAAA,GAAa,CAAC,QAAQ,UAAU,SAAS;EAE/C,oBACEC,IAAA,CAAC;cACED,UAAA,CAAWE,MAAM,CAAC,CAACC,GAAA,EAAKC,SAAA,EAAWC,KAAA;MAClC,MAAMC,aAAA,GAAiBP,QAAA,GAAoBK,SAAA,CAAU;MAErD,IAAIE,aAAA,IAAiBA,aAAA,CAAcC,UAAU,EAAE;QAC7CJ,GAAA,CAAIK,IAAI,cACNC,KAAA,CAACZ,QAAA;kCACCY,KAAA,CAAC;oCACCR,IAAA,CAAC;wBAAQN,OAAA,CAAQS,SAAA;gBAAoB,MAAGT,OAAA,CAAQW,aAAA,CAAcC,UAAU;cAEzEF,KAAA,KAAUL,UAAA,CAAWU,MAAM,GAAG,KAAK;WAJvBN,SAAA;MAOnB;MACA,OAAOD,GAAA;IACT,GAAG,EAAE;;AAGX","ignoreList":[]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/elements/ListPresets/cells/ColumnsCell/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,SAAS,CAAA;AAGxD,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,eAAO,MAAM,sBAAsB,EAAE,KAAK,CAAC,EAAE,CAAC,yBAAyB,CAUtE,CAAA"}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import { toWords, transformColumnsToSearchParams } from 'payload/shared';
|
|
3
|
-
import React from 'react';
|
|
4
|
-
export const ListPresetsColumnsCell = ({
|
|
5
|
-
cellData
|
|
6
|
-
}) => {
|
|
7
|
-
return /*#__PURE__*/_jsx("div", {
|
|
8
|
-
children: cellData ? transformColumnsToSearchParams(cellData).map(column => toWords(column)).join(', ') : 'No columns selected'
|
|
9
|
-
});
|
|
10
|
-
};
|
|
11
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["toWords","transformColumnsToSearchParams","React","ListPresetsColumnsCell","cellData","_jsx","map","column","join"],"sources":["../../../../../src/elements/ListPresets/cells/ColumnsCell/index.tsx"],"sourcesContent":["import type { DefaultCellComponentProps } from 'payload'\n\nimport { toWords, transformColumnsToSearchParams } from 'payload/shared'\nimport React from 'react'\n\nexport const ListPresetsColumnsCell: React.FC<DefaultCellComponentProps> = ({ cellData }) => {\n return (\n <div>\n {cellData\n ? transformColumnsToSearchParams(cellData)\n .map((column) => toWords(column))\n .join(', ')\n : 'No columns selected'}\n </div>\n )\n}\n"],"mappings":";AAEA,SAASA,OAAO,EAAEC,8BAA8B,QAAQ;AACxD,OAAOC,KAAA,MAAW;AAElB,OAAO,MAAMC,sBAAA,GAA8DA,CAAC;EAAEC;AAAQ,CAAE;EACtF,oBACEC,IAAA,CAAC;cACED,QAAA,GACGH,8BAAA,CAA+BG,QAAA,EAC5BE,GAAG,CAAEC,MAAA,IAAWP,OAAA,CAAQO,MAAA,GACxBC,IAAI,CAAC,QACR;;AAGV","ignoreList":[]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/elements/ListPresets/cells/WhereCell/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAS,MAAM,SAAS,CAAA;AAG/D,OAAO,KAAK,MAAM,OAAO,CAAA;AAiBzB,eAAO,MAAM,oBAAoB,EAAE,KAAK,CAAC,EAAE,CAAC,yBAAyB,CAEpE,CAAA"}
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import { toWords } from 'payload/shared';
|
|
3
|
-
import React from 'react';
|
|
4
|
-
/** @todo: improve this */
|
|
5
|
-
const transformWhereToNaturalLanguage = where => {
|
|
6
|
-
if (where.or && where.or.length > 0 && where.or[0].and && where.or[0].and.length > 0) {
|
|
7
|
-
const orQuery = where.or[0];
|
|
8
|
-
const andQuery = orQuery.and[0];
|
|
9
|
-
const key = Object.keys(andQuery)[0];
|
|
10
|
-
const operator = Object.keys(andQuery[key])[0];
|
|
11
|
-
const value = andQuery[key][operator];
|
|
12
|
-
return `${toWords(key)} ${operator} ${toWords(value)}`;
|
|
13
|
-
}
|
|
14
|
-
return '';
|
|
15
|
-
};
|
|
16
|
-
export const ListPresetsWhereCell = ({
|
|
17
|
-
cellData
|
|
18
|
-
}) => {
|
|
19
|
-
return /*#__PURE__*/_jsx("div", {
|
|
20
|
-
children: cellData ? transformWhereToNaturalLanguage(cellData) : 'No where query'
|
|
21
|
-
});
|
|
22
|
-
};
|
|
23
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["toWords","React","transformWhereToNaturalLanguage","where","or","length","and","orQuery","andQuery","key","Object","keys","operator","value","ListPresetsWhereCell","cellData","_jsx"],"sources":["../../../../../src/elements/ListPresets/cells/WhereCell/index.tsx"],"sourcesContent":["import type { DefaultCellComponentProps, Where } from 'payload'\n\nimport { toWords } from 'payload/shared'\nimport React from 'react'\n\n/** @todo: improve this */\nconst transformWhereToNaturalLanguage = (where: Where): string => {\n if (where.or && where.or.length > 0 && where.or[0].and && where.or[0].and.length > 0) {\n const orQuery = where.or[0]\n const andQuery = orQuery.and[0]\n const key = Object.keys(andQuery)[0]\n const operator = Object.keys(andQuery[key])[0]\n const value = andQuery[key][operator]\n\n return `${toWords(key)} ${operator} ${toWords(value)}`\n }\n\n return ''\n}\n\nexport const ListPresetsWhereCell: React.FC<DefaultCellComponentProps> = ({ cellData }) => {\n return <div>{cellData ? transformWhereToNaturalLanguage(cellData) : 'No where query'}</div>\n}\n"],"mappings":";AAEA,SAASA,OAAO,QAAQ;AACxB,OAAOC,KAAA,MAAW;AAElB;AACA,MAAMC,+BAAA,GAAmCC,KAAA;EACvC,IAAIA,KAAA,CAAMC,EAAE,IAAID,KAAA,CAAMC,EAAE,CAACC,MAAM,GAAG,KAAKF,KAAA,CAAMC,EAAE,CAAC,EAAE,CAACE,GAAG,IAAIH,KAAA,CAAMC,EAAE,CAAC,EAAE,CAACE,GAAG,CAACD,MAAM,GAAG,GAAG;IACpF,MAAME,OAAA,GAAUJ,KAAA,CAAMC,EAAE,CAAC,EAAE;IAC3B,MAAMI,QAAA,GAAWD,OAAA,CAAQD,GAAG,CAAC,EAAE;IAC/B,MAAMG,GAAA,GAAMC,MAAA,CAAOC,IAAI,CAACH,QAAA,CAAS,CAAC,EAAE;IACpC,MAAMI,QAAA,GAAWF,MAAA,CAAOC,IAAI,CAACH,QAAQ,CAACC,GAAA,CAAI,CAAC,CAAC,EAAE;IAC9C,MAAMI,KAAA,GAAQL,QAAQ,CAACC,GAAA,CAAI,CAACG,QAAA,CAAS;IAErC,OAAO,GAAGZ,OAAA,CAAQS,GAAA,KAAQG,QAAA,IAAYZ,OAAA,CAAQa,KAAA,GAAQ;EACxD;EAEA,OAAO;AACT;AAEA,OAAO,MAAMC,oBAAA,GAA4DA,CAAC;EAAEC;AAAQ,CAAE;EACpF,oBAAOC,IAAA,CAAC;cAAKD,QAAA,GAAWb,+BAAA,CAAgCa,QAAA,IAAY;;AACtE","ignoreList":[]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/elements/ListPresets/fields/AccessLabel/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,SAAS,CAAA;AAK7D,eAAO,MAAM,sBAAsB,EAAE,8BASpC,CAAA"}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
'use client';
|
|
2
|
-
|
|
3
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
4
|
-
import { getTranslation } from '@payloadcms/translations';
|
|
5
|
-
import React from 'react';
|
|
6
|
-
export const ListPresetsAccessLabel = ({
|
|
7
|
-
field: {
|
|
8
|
-
label
|
|
9
|
-
},
|
|
10
|
-
i18n
|
|
11
|
-
}) => {
|
|
12
|
-
if (!label) {
|
|
13
|
-
return null;
|
|
14
|
-
}
|
|
15
|
-
return /*#__PURE__*/_jsx("p", {
|
|
16
|
-
children: getTranslation(label, i18n)
|
|
17
|
-
});
|
|
18
|
-
};
|
|
19
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["getTranslation","React","ListPresetsAccessLabel","field","label","i18n","_jsx"],"sources":["../../../../../src/elements/ListPresets/fields/AccessLabel/index.tsx"],"sourcesContent":["'use client'\nimport type { GroupFieldLabelServerComponent } from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport React from 'react'\n\nexport const ListPresetsAccessLabel: GroupFieldLabelServerComponent = ({\n field: { label },\n i18n,\n}) => {\n if (!label) {\n return null\n }\n\n return <p>{getTranslation(label, i18n)}</p>\n}\n"],"mappings":"AAAA;;;AAGA,SAASA,cAAc,QAAQ;AAC/B,OAAOC,KAAA,MAAW;AAElB,OAAO,MAAMC,sBAAA,GAAyDA,CAAC;EACrEC,KAAA,EAAO;IAAEC;EAAK,CAAE;EAChBC;AAAI,CACL;EACC,IAAI,CAACD,KAAA,EAAO;IACV,OAAO;EACT;EAEA,oBAAOE,IAAA,CAAC;cAAGN,cAAA,CAAeI,KAAA,EAAOC,IAAA;;AACnC","ignoreList":[]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/elements/ListPresets/fields/ColumnsField/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAoB,wBAAwB,EAAE,MAAM,SAAS,CAAA;AAQzE,OAAO,cAAc,CAAA;AAErB,eAAO,MAAM,uBAAuB,EAAE,wBAoBrC,CAAA"}
|
|
@@ -1,64 +0,0 @@
|
|
|
1
|
-
'use client';
|
|
2
|
-
|
|
3
|
-
import { c as _c } from "react/compiler-runtime";
|
|
4
|
-
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
5
|
-
import { toWords, transformColumnsToSearchParams } from 'payload/shared';
|
|
6
|
-
import React from 'react';
|
|
7
|
-
import { Pill } from '../../../../elements/Pill/index.js';
|
|
8
|
-
import { FieldLabel } from '../../../../fields/FieldLabel/index.js';
|
|
9
|
-
import { useField } from '../../../../forms/useField/index.js';
|
|
10
|
-
import './index.scss';
|
|
11
|
-
export const ListPresetsColumnsField = t0 => {
|
|
12
|
-
const $ = _c(7);
|
|
13
|
-
const {
|
|
14
|
-
field: t1,
|
|
15
|
-
path
|
|
16
|
-
} = t0;
|
|
17
|
-
const {
|
|
18
|
-
label,
|
|
19
|
-
required
|
|
20
|
-
} = t1;
|
|
21
|
-
let t2;
|
|
22
|
-
if ($[0] !== path) {
|
|
23
|
-
t2 = {
|
|
24
|
-
path
|
|
25
|
-
};
|
|
26
|
-
$[0] = path;
|
|
27
|
-
$[1] = t2;
|
|
28
|
-
} else {
|
|
29
|
-
t2 = $[1];
|
|
30
|
-
}
|
|
31
|
-
const {
|
|
32
|
-
value
|
|
33
|
-
} = useField(t2);
|
|
34
|
-
let t3;
|
|
35
|
-
if ($[2] !== label || $[3] !== path || $[4] !== required || $[5] !== value) {
|
|
36
|
-
t3 = _jsxs("div", {
|
|
37
|
-
className: "field-type list-preset-columns-field",
|
|
38
|
-
children: [_jsx(FieldLabel, {
|
|
39
|
-
as: "h3",
|
|
40
|
-
label,
|
|
41
|
-
path,
|
|
42
|
-
required
|
|
43
|
-
}), _jsx("div", {
|
|
44
|
-
className: "value-wrapper",
|
|
45
|
-
children: value ? transformColumnsToSearchParams(value).map(_temp) : "No columns selected"
|
|
46
|
-
})]
|
|
47
|
-
});
|
|
48
|
-
$[2] = label;
|
|
49
|
-
$[3] = path;
|
|
50
|
-
$[4] = required;
|
|
51
|
-
$[5] = value;
|
|
52
|
-
$[6] = t3;
|
|
53
|
-
} else {
|
|
54
|
-
t3 = $[6];
|
|
55
|
-
}
|
|
56
|
-
return t3;
|
|
57
|
-
};
|
|
58
|
-
function _temp(column, i) {
|
|
59
|
-
return _jsx(Pill, {
|
|
60
|
-
pillStyle: "always-white",
|
|
61
|
-
children: toWords(column)
|
|
62
|
-
}, i);
|
|
63
|
-
}
|
|
64
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["c","_c","toWords","transformColumnsToSearchParams","React","Pill","FieldLabel","useField","ListPresetsColumnsField","t0","$","field","t1","path","label","required","t2","value","t3","_jsxs","className","children","_jsx","as","map","_temp","column","i","pillStyle"],"sources":["../../../../../src/elements/ListPresets/fields/ColumnsField/index.tsx"],"sourcesContent":["'use client'\nimport type { ColumnPreference, JSONFieldClientComponent } from 'payload'\n\nimport { toWords, transformColumnsToSearchParams } from 'payload/shared'\nimport React from 'react'\n\nimport { Pill } from '../../../../elements/Pill/index.js'\nimport { FieldLabel } from '../../../../fields/FieldLabel/index.js'\nimport { useField } from '../../../../forms/useField/index.js'\nimport './index.scss'\n\nexport const ListPresetsColumnsField: JSONFieldClientComponent = ({\n field: { label, required },\n path,\n}) => {\n const { value } = useField({ path })\n\n return (\n <div className=\"field-type list-preset-columns-field\">\n <FieldLabel as=\"h3\" label={label} path={path} required={required} />\n <div className=\"value-wrapper\">\n {value\n ? transformColumnsToSearchParams(value as ColumnPreference[]).map((column, i) => (\n <Pill key={i} pillStyle=\"always-white\">\n {toWords(column)}\n </Pill>\n ))\n : 'No columns selected'}\n </div>\n </div>\n )\n}\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AAGA,SAASC,OAAO,EAAEC,8BAA8B,QAAQ;AACxD,OAAOC,KAAA,MAAW;AAElB,SAASC,IAAI,QAAQ;AACrB,SAASC,UAAU,QAAQ;AAC3B,SAASC,QAAQ,QAAQ;AACzB,OAAO;AAEP,OAAO,MAAMC,uBAAA,GAAoDC,EAAA;EAAA,MAAAC,CAAA,GAAAT,EAAA;EAAC;IAAAU,KAAA,EAAAC,EAAA;IAAAC;EAAA,IAAAJ,EAGjE;EAFQ;IAAAK,KAAA;IAAAC;EAAA,IAAAH,EAAmB;EAAA,IAAAI,EAAA;EAAA,IAAAN,CAAA,QAAAG,IAAA;IAGCG,EAAA;MAAAH;IAAA;IAAOH,CAAA,MAAAG,IAAA;IAAAH,CAAA,MAAAM,EAAA;EAAA;IAAAA,EAAA,GAAAN,CAAA;EAAA;EAAlC;IAAAO;EAAA,IAAkBV,QAAA,CAASS,EAAO;EAAA,IAAAE,EAAA;EAAA,IAAAR,CAAA,QAAAI,KAAA,IAAAJ,CAAA,QAAAG,IAAA,IAAAH,CAAA,QAAAK,QAAA,IAAAL,CAAA,QAAAO,KAAA;IAGhCC,EAAA,GAAAC,KAAA,CAAC;MAAAC,SAAA,EAAc;MAAAC,QAAA,GACbC,IAAA,CAAAhB,UAAA;QAAAiB,EAAA,EAAe;QAAAT,KAAA;QAAAD,IAAA;QAAAE;MAAA,C,GACfO,IAAA,CAAC;QAAAF,SAAA,EAAc;QAAAC,QAAA,EACZJ,KAAA,GACGd,8BAAA,CAA+Bc,KAAA,EAAAO,GAAA,CAAAC,KAClB,IAIb;MAAA,C;;;;;;;;;;SATRP,E;CAaJ;AApBiE,SAAAO,MAAAC,MAAA,EAAAC,CAAA;EAAA,OAYnDL,IAAA,CAAAjB,IAAA;IAAAuB,SAAA,EAAwB;IAAAP,QAAA,EACrBnB,OAAA,CAAQwB,MAAA;EAAA,GADAC,CAAA;AAAA","ignoreList":[]}
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
@import '../../../../scss/styles';
|
|
2
|
-
|
|
3
|
-
@layer payload-default {
|
|
4
|
-
.list-preset-columns-field {
|
|
5
|
-
.field-label {
|
|
6
|
-
margin-bottom: calc(var(--base) / 2);
|
|
7
|
-
}
|
|
8
|
-
|
|
9
|
-
.value-wrapper {
|
|
10
|
-
background-color: var(--theme-elevation-50);
|
|
11
|
-
padding: var(--base);
|
|
12
|
-
display: flex;
|
|
13
|
-
flex-wrap: wrap;
|
|
14
|
-
gap: calc(var(--base) / 2);
|
|
15
|
-
}
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
html[data-theme='dark'] {
|
|
19
|
-
.list-preset-columns-field {
|
|
20
|
-
.pill {
|
|
21
|
-
&--style-always-white {
|
|
22
|
-
background: var(--theme-elevation-250);
|
|
23
|
-
color: var(--theme-elevation-1000);
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/elements/ListPresets/fields/WhereField/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,wBAAwB,EAAS,MAAM,SAAS,CAAA;AAY9D,OAAO,cAAc,CAAA;AAsErB,eAAO,MAAM,qBAAqB,EAAE,wBAyBnC,CAAA"}
|
|
@@ -1,118 +0,0 @@
|
|
|
1
|
-
'use client';
|
|
2
|
-
|
|
3
|
-
import { c as _c } from "react/compiler-runtime";
|
|
4
|
-
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
5
|
-
import { getTranslation } from '@payloadcms/translations';
|
|
6
|
-
import { toWords } from 'payload/shared';
|
|
7
|
-
import React from 'react';
|
|
8
|
-
import { FieldLabel } from '../../../../fields/FieldLabel/index.js';
|
|
9
|
-
import { useField } from '../../../../forms/useField/index.js';
|
|
10
|
-
import { useConfig } from '../../../../providers/Config/index.js';
|
|
11
|
-
import { useListQuery } from '../../../../providers/ListQuery/index.js';
|
|
12
|
-
import { useTranslation } from '../../../../providers/Translation/index.js';
|
|
13
|
-
import { Pill } from '../../../Pill/index.js';
|
|
14
|
-
import './index.scss';
|
|
15
|
-
/** @todo: improve this */
|
|
16
|
-
const transformWhereToNaturalLanguage = (where, collectionLabel) => {
|
|
17
|
-
if (!where) {
|
|
18
|
-
return null;
|
|
19
|
-
}
|
|
20
|
-
const renderCondition = condition => {
|
|
21
|
-
const key = Object.keys(condition)[0];
|
|
22
|
-
const operator = Object.keys(condition[key])[0];
|
|
23
|
-
let value = condition[key][operator];
|
|
24
|
-
// TODO: this is not right, but works for now at least.
|
|
25
|
-
// Ideally we look up iterate _fields_ so we know the type of the field
|
|
26
|
-
// Currently, we're only iterating over the `where` field's value, so we don't know the type
|
|
27
|
-
if (typeof value === 'object') {
|
|
28
|
-
try {
|
|
29
|
-
value = new Date(value).toLocaleDateString();
|
|
30
|
-
} catch (_err) {
|
|
31
|
-
value = 'Unknown error has occurred';
|
|
32
|
-
}
|
|
33
|
-
}
|
|
34
|
-
return /*#__PURE__*/_jsxs(Pill, {
|
|
35
|
-
pillStyle: "always-white",
|
|
36
|
-
children: [/*#__PURE__*/_jsx("b", {
|
|
37
|
-
children: toWords(key)
|
|
38
|
-
}), " ", operator, " ", /*#__PURE__*/_jsx("b", {
|
|
39
|
-
children: toWords(value)
|
|
40
|
-
})]
|
|
41
|
-
});
|
|
42
|
-
};
|
|
43
|
-
const renderWhere = (where, collectionLabel) => {
|
|
44
|
-
if (where.or && where.or.length > 0) {
|
|
45
|
-
return /*#__PURE__*/_jsx("div", {
|
|
46
|
-
className: "or-condition",
|
|
47
|
-
children: where.or.map((orCondition, orIndex) => /*#__PURE__*/_jsx(React.Fragment, {
|
|
48
|
-
children: orCondition.and && orCondition.and.length > 0 ? /*#__PURE__*/_jsxs("div", {
|
|
49
|
-
className: "and-condition",
|
|
50
|
-
children: [orIndex === 0 && /*#__PURE__*/_jsx("span", {
|
|
51
|
-
className: "label",
|
|
52
|
-
children: `Filter ${collectionLabel} where `
|
|
53
|
-
}), orIndex > 0 && /*#__PURE__*/_jsx("span", {
|
|
54
|
-
className: "label",
|
|
55
|
-
children: " or "
|
|
56
|
-
}), orCondition.and.map((andCondition, andIndex) => /*#__PURE__*/_jsxs(React.Fragment, {
|
|
57
|
-
children: [renderCondition(andCondition), andIndex < orCondition.and.length - 1 && /*#__PURE__*/_jsx("span", {
|
|
58
|
-
className: "label",
|
|
59
|
-
children: " and "
|
|
60
|
-
})]
|
|
61
|
-
}, andIndex))]
|
|
62
|
-
}) : renderCondition(orCondition)
|
|
63
|
-
}, orIndex))
|
|
64
|
-
});
|
|
65
|
-
}
|
|
66
|
-
return renderCondition(where);
|
|
67
|
-
};
|
|
68
|
-
return renderWhere(where, collectionLabel);
|
|
69
|
-
};
|
|
70
|
-
export const ListPresetsWhereField = t0 => {
|
|
71
|
-
const $ = _c(2);
|
|
72
|
-
const {
|
|
73
|
-
field: t1,
|
|
74
|
-
path
|
|
75
|
-
} = t0;
|
|
76
|
-
const {
|
|
77
|
-
label,
|
|
78
|
-
required
|
|
79
|
-
} = t1;
|
|
80
|
-
let t2;
|
|
81
|
-
if ($[0] !== path) {
|
|
82
|
-
t2 = {
|
|
83
|
-
path
|
|
84
|
-
};
|
|
85
|
-
$[0] = path;
|
|
86
|
-
$[1] = t2;
|
|
87
|
-
} else {
|
|
88
|
-
t2 = $[1];
|
|
89
|
-
}
|
|
90
|
-
const {
|
|
91
|
-
value
|
|
92
|
-
} = useField(t2);
|
|
93
|
-
const {
|
|
94
|
-
collectionSlug
|
|
95
|
-
} = useListQuery();
|
|
96
|
-
const {
|
|
97
|
-
getEntityConfig
|
|
98
|
-
} = useConfig();
|
|
99
|
-
const collectionConfig = getEntityConfig({
|
|
100
|
-
collectionSlug
|
|
101
|
-
});
|
|
102
|
-
const {
|
|
103
|
-
i18n
|
|
104
|
-
} = useTranslation();
|
|
105
|
-
return _jsxs("div", {
|
|
106
|
-
className: "field-type list-preset-where-field",
|
|
107
|
-
children: [_jsx(FieldLabel, {
|
|
108
|
-
as: "h3",
|
|
109
|
-
label,
|
|
110
|
-
path,
|
|
111
|
-
required
|
|
112
|
-
}), _jsx("div", {
|
|
113
|
-
className: "value-wrapper",
|
|
114
|
-
children: value ? transformWhereToNaturalLanguage(value, getTranslation(collectionConfig.labels.plural, i18n)) : "No where query"
|
|
115
|
-
})]
|
|
116
|
-
});
|
|
117
|
-
};
|
|
118
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["c","_c","getTranslation","toWords","React","FieldLabel","useField","useConfig","useListQuery","useTranslation","Pill","transformWhereToNaturalLanguage","where","collectionLabel","renderCondition","condition","key","Object","keys","operator","value","Date","toLocaleDateString","_err","_jsxs","pillStyle","_jsx","renderWhere","or","length","className","map","orCondition","orIndex","Fragment","and","andCondition","andIndex","ListPresetsWhereField","t0","$","field","t1","path","label","required","t2","collectionSlug","getEntityConfig","collectionConfig","i18n","children","as","labels","plural"],"sources":["../../../../../src/elements/ListPresets/fields/WhereField/index.tsx"],"sourcesContent":["'use client'\nimport type { JSONFieldClientComponent, Where } from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport { toWords } from 'payload/shared'\nimport React from 'react'\n\nimport { FieldLabel } from '../../../../fields/FieldLabel/index.js'\nimport { useField } from '../../../../forms/useField/index.js'\nimport { useConfig } from '../../../../providers/Config/index.js'\nimport { useListQuery } from '../../../../providers/ListQuery/index.js'\nimport { useTranslation } from '../../../../providers/Translation/index.js'\nimport { Pill } from '../../../Pill/index.js'\nimport './index.scss'\n\n/** @todo: improve this */\nconst transformWhereToNaturalLanguage = (\n where: Where,\n collectionLabel: string,\n): React.ReactNode => {\n if (!where) {\n return null\n }\n\n const renderCondition = (condition: any): React.ReactNode => {\n const key = Object.keys(condition)[0]\n const operator = Object.keys(condition[key])[0]\n let value = condition[key][operator]\n\n // TODO: this is not right, but works for now at least.\n // Ideally we look up iterate _fields_ so we know the type of the field\n // Currently, we're only iterating over the `where` field's value, so we don't know the type\n if (typeof value === 'object') {\n try {\n value = new Date(value).toLocaleDateString()\n } catch (_err) {\n value = 'Unknown error has occurred'\n }\n }\n\n return (\n <Pill pillStyle=\"always-white\">\n <b>{toWords(key)}</b> {operator} <b>{toWords(value)}</b>\n </Pill>\n )\n }\n\n const renderWhere = (where: Where, collectionLabel: string): React.ReactNode => {\n if (where.or && where.or.length > 0) {\n return (\n <div className=\"or-condition\">\n {where.or.map((orCondition, orIndex) => (\n <React.Fragment key={orIndex}>\n {orCondition.and && orCondition.and.length > 0 ? (\n <div className=\"and-condition\">\n {orIndex === 0 && (\n <span className=\"label\">{`Filter ${collectionLabel} where `}</span>\n )}\n {orIndex > 0 && <span className=\"label\"> or </span>}\n {orCondition.and.map((andCondition, andIndex) => (\n <React.Fragment key={andIndex}>\n {renderCondition(andCondition)}\n {andIndex < orCondition.and.length - 1 && (\n <span className=\"label\"> and </span>\n )}\n </React.Fragment>\n ))}\n </div>\n ) : (\n renderCondition(orCondition)\n )}\n </React.Fragment>\n ))}\n </div>\n )\n }\n\n return renderCondition(where)\n }\n\n return renderWhere(where, collectionLabel)\n}\n\nexport const ListPresetsWhereField: JSONFieldClientComponent = ({\n field: { label, required },\n path,\n}) => {\n const { value } = useField({ path })\n const { collectionSlug } = useListQuery()\n const { getEntityConfig } = useConfig()\n\n const collectionConfig = getEntityConfig({ collectionSlug })\n\n const { i18n } = useTranslation()\n\n return (\n <div className=\"field-type list-preset-where-field\">\n <FieldLabel as=\"h3\" label={label} path={path} required={required} />\n <div className=\"value-wrapper\">\n {value\n ? transformWhereToNaturalLanguage(\n value as Where,\n getTranslation(collectionConfig.labels.plural, i18n),\n )\n : 'No where query'}\n </div>\n </div>\n )\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
@import '../../../../scss/styles';
|
|
2
|
-
|
|
3
|
-
@layer payload-default {
|
|
4
|
-
.list-preset-where-field {
|
|
5
|
-
.field-label {
|
|
6
|
-
margin-bottom: calc(var(--base) / 2);
|
|
7
|
-
}
|
|
8
|
-
|
|
9
|
-
.value-wrapper {
|
|
10
|
-
background-color: var(--theme-elevation-50);
|
|
11
|
-
padding: var(--base);
|
|
12
|
-
}
|
|
13
|
-
}
|
|
14
|
-
|
|
15
|
-
.list-preset-where-field {
|
|
16
|
-
.pill {
|
|
17
|
-
&--style-always-white {
|
|
18
|
-
background: var(--theme-elevation-250);
|
|
19
|
-
color: var(--theme-elevation-1000);
|
|
20
|
-
}
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/icons/People/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,cAAc,CAAA;AAErB,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC;IAChC,SAAS,EAAE,MAAM,CAAA;CAClB,CAcA,CAAA"}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import React from 'react';
|
|
3
|
-
import './index.scss';
|
|
4
|
-
export const PeopleIcon = ({
|
|
5
|
-
className
|
|
6
|
-
}) => /*#__PURE__*/_jsx("svg", {
|
|
7
|
-
className: ['icon', 'icon--people', className].filter(Boolean).join(' '),
|
|
8
|
-
height: "14",
|
|
9
|
-
viewBox: "0 0 16 14",
|
|
10
|
-
width: "16",
|
|
11
|
-
xmlns: "http://www.w3.org/2000/svg",
|
|
12
|
-
children: /*#__PURE__*/_jsx("path", {
|
|
13
|
-
className: "stroke",
|
|
14
|
-
d: "M12.0002 13C12.0002 11.5855 11.4383 10.229 10.4381 9.22876C9.43787 8.22857 8.08132 7.66667 6.66683 7.66667M6.66683 7.66667C5.25234 7.66667 3.89579 8.22857 2.89559 9.22876C1.8954 10.229 1.3335 11.5855 1.3335 13M6.66683 7.66667C8.50778 7.66667 10.0002 6.17428 10.0002 4.33333C10.0002 2.49238 8.50778 1 6.66683 1C4.82588 1 3.3335 2.49238 3.3335 4.33333C3.3335 6.17428 4.82588 7.66667 6.66683 7.66667ZM14.6668 12.3333C14.6668 10.0867 13.3335 8 12.0002 7C12.4384 6.67118 12.7889 6.23939 13.0205 5.74285C13.2522 5.2463 13.3578 4.70031 13.3282 4.1532C13.2985 3.60609 13.1344 3.07472 12.8505 2.60613C12.5665 2.13754 12.1714 1.74617 11.7002 1.46667",
|
|
15
|
-
strokeLinecap: "square"
|
|
16
|
-
})
|
|
17
|
-
});
|
|
18
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["React","PeopleIcon","className","_jsx","filter","Boolean","join","height","viewBox","width","xmlns","d","strokeLinecap"],"sources":["../../../src/icons/People/index.tsx"],"sourcesContent":["import React from 'react'\n\nimport './index.scss'\n\nexport const PeopleIcon: React.FC<{\n className: string\n}> = ({ className }) => (\n <svg\n className={['icon', 'icon--people', className].filter(Boolean).join(' ')}\n height=\"14\"\n viewBox=\"0 0 16 14\"\n width=\"16\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n className=\"stroke\"\n d=\"M12.0002 13C12.0002 11.5855 11.4383 10.229 10.4381 9.22876C9.43787 8.22857 8.08132 7.66667 6.66683 7.66667M6.66683 7.66667C5.25234 7.66667 3.89579 8.22857 2.89559 9.22876C1.8954 10.229 1.3335 11.5855 1.3335 13M6.66683 7.66667C8.50778 7.66667 10.0002 6.17428 10.0002 4.33333C10.0002 2.49238 8.50778 1 6.66683 1C4.82588 1 3.3335 2.49238 3.3335 4.33333C3.3335 6.17428 4.82588 7.66667 6.66683 7.66667ZM14.6668 12.3333C14.6668 10.0867 13.3335 8 12.0002 7C12.4384 6.67118 12.7889 6.23939 13.0205 5.74285C13.2522 5.2463 13.3578 4.70031 13.3282 4.1532C13.2985 3.60609 13.1344 3.07472 12.8505 2.60613C12.5665 2.13754 12.1714 1.74617 11.7002 1.46667\"\n strokeLinecap=\"square\"\n />\n </svg>\n)\n"],"mappings":";AAAA,OAAOA,KAAA,MAAW;AAElB,OAAO;AAEP,OAAO,MAAMC,UAAA,GAERA,CAAC;EAAEC;AAAS,CAAE,kBACjBC,IAAA,CAAC;EACCD,SAAA,EAAW,CAAC,QAAQ,gBAAgBA,SAAA,CAAU,CAACE,MAAM,CAACC,OAAA,EAASC,IAAI,CAAC;EACpEC,MAAA,EAAO;EACPC,OAAA,EAAQ;EACRC,KAAA,EAAM;EACNC,KAAA,EAAM;YAEN,aAAAP,IAAA,CAAC;IACCD,SAAA,EAAU;IACVS,CAAA,EAAE;IACFC,aAAA,EAAc","ignoreList":[]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/providers/TableColumns/RenderDefaultCell/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,SAAS,CAAA;AAExD,OAAO,KAAK,MAAM,OAAO,CAAA;AAKzB,OAAO,cAAc,CAAA;AAMrB,eAAO,MAAM,YAAY,QAAO,yBAAyB,GAAG,IACxB,CAAA;AAEpC,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAAE,CAAC;IACvC,WAAW,EAAE,yBAAyB,CAAA;IACtC,WAAW,EAAE,MAAM,CAAA;IACnB,mBAAmB,CAAC,EAAE,OAAO,CAAA;IAC7B,cAAc,CAAC,EAAE,OAAO,CAAA;CACzB,CA4BA,CAAA"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["c","_c","React","useListDrawerContext","DefaultCell","useTableColumns","baseClass","CellPropsContext","createContext","useCellProps","useContext","RenderDefaultCell","t0","$","clientProps","columnIndex","isLinkedColumn","drawerSlug","onSelect","LinkedCellOverride","t1","propsToPass","className","link","t2","t3","collectionSlug","rowColl","rowData","doc","docID","id","onClick","_jsx","Provider","value","children"],"sources":["../../../../src/providers/TableColumns/RenderDefaultCell/index.tsx"],"sourcesContent":["'use client'\nimport type { DefaultCellComponentProps } from 'payload'\n\nimport React from 'react'\n\nimport { useListDrawerContext } from '../../../elements/ListDrawer/Provider.js'\nimport { DefaultCell } from '../../../elements/Table/DefaultCell/index.js'\nimport { useTableColumns } from '../index.js'\nimport './index.scss'\n\nconst baseClass = 'default-cell'\n\nconst CellPropsContext = React.createContext<DefaultCellComponentProps | null>(null)\n\nexport const useCellProps = (): DefaultCellComponentProps | null =>\n React.useContext(CellPropsContext)\n\nexport const RenderDefaultCell: React.FC<{\n clientProps: DefaultCellComponentProps\n columnIndex: number\n enableRowSelections?: boolean\n isLinkedColumn?: boolean\n}> = ({ clientProps, columnIndex, isLinkedColumn }) => {\n const { drawerSlug, onSelect } = useListDrawerContext()\n const { LinkedCellOverride } = useTableColumns()\n\n const propsToPass: DefaultCellComponentProps = {\n ...clientProps,\n columnIndex,\n }\n\n if (isLinkedColumn && drawerSlug) {\n propsToPass.className = `${baseClass}__first-cell`\n propsToPass.link = false\n propsToPass.onClick = ({ collectionSlug: rowColl, rowData }) => {\n if (typeof onSelect === 'function') {\n onSelect({\n collectionSlug: rowColl,\n doc: rowData,\n docID: rowData.id as string,\n })\n }\n }\n }\n\n return (\n <CellPropsContext.Provider value={propsToPass}>\n {isLinkedColumn && LinkedCellOverride ? LinkedCellOverride : <DefaultCell {...propsToPass} />}\n </CellPropsContext.Provider>\n )\n}\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AAGA,OAAOC,KAAA,MAAW;AAElB,SAASC,oBAAoB,QAAQ;AACrC,SAASC,WAAW,QAAQ;AAC5B,SAASC,eAAe,QAAQ;AAChC,OAAO;AAEP,MAAMC,SAAA,GAAY;AAElB,MAAMC,gBAAA,gBAAmBL,KAAA,CAAMM,aAAa,CAAmC;AAE/E,OAAO,MAAMC,YAAA,GAAeA,CAAA;EAAA,OAC1BP,KAAA,CAAAQ,UAAA,CAAAH,gBAAiB;AAAA;AAEnB,OAAO,MAAMI,iBAAA,GAKRC,EAAA;EAAA,MAAAC,CAAA,GAAAZ,EAAA;EAAC;IAAAa,WAAA;IAAAC,WAAA;IAAAC;EAAA,IAAAJ,EAA4C;EAChD;IAAAK,UAAA;IAAAC;EAAA,IAAiCf,oBAAA;EACjC;IAAAgB;EAAA,IAA+Bd,eAAA;EAAA,IAAAe,EAAA;EAAA,IAAAP,CAAA,QAAAM,kBAAA,IAAAN,CAAA,QAAAC,WAAA,IAAAD,CAAA,QAAAE,WAAA,IAAAF,CAAA,QAAAI,UAAA,IAAAJ,CAAA,QAAAG,cAAA,IAAAH,CAAA,QAAAK,QAAA;IAE/B,MAAAG,WAAA;MAAA,GACKP,WAAW;MAAAC;IAAA;IAEhB,IAEIC,cAAA,IAAkBC,UAAA;MACpBI,WAAA,CAAAC,SAAA,GAAwB,GAAAhB,SAAA,cAA0B;MAClDe,WAAA,CAAAE,IAAA;MAAA,IAAAC,EAAA;MAAA,IAAAX,CAAA,QAAAK,QAAA;QACsBM,EAAA,GAAAC,EAAA;UAAC;YAAAC,cAAA,EAAAC,OAAA;YAAAC;UAAA,IAAAH,EAAoC;UAAA,IACrD,OAAOP,QAAA,KAAa;YACtBA,QAAA;cAAAQ,cAAA,EACkBC,OAAA;cAAAE,GAAA,EACXD,OAAA;cAAAE,KAAA,EACEF,OAAA,CAAAG;YAAA,CACT;UAAA;QAAA;QAEJlB,CAAA,MAAAK,QAAA;QAAAL,CAAA,MAAAW,EAAA;MAAA;QAAAA,EAAA,GAAAX,CAAA;MAAA;MARAQ,WAAA,CAAAW,OAAA,GAAsBR,EAQtB;IAAA;IAIAJ,EAAA,GAAAa,IAAA,CAAA1B,gBAAA,CAAA2B,QAAA;MAAAC,KAAA,EAAkCd,WAAA;MAAAe,QAAA,EAC/BpB,cAAA,IAAkBG,kBAAA,GAAqBA,kBAAA,GAAqBc,IAAA,CAAA7B,WAAA;QAAA,GAAiBiB;MAAW,C;;;;;;;;;;;;SAD3FD,E;CAIJ","ignoreList":[]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"buildColumnState.d.ts","sourceRoot":"","sources":["../../../src/providers/TableColumns/buildColumnState.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAC1D,OAAO,KAAK,EACV,sBAAsB,EAGtB,MAAM,EACN,yBAAyB,EAGzB,eAAe,EACf,aAAa,EACb,OAAO,EACP,yBAAyB,EAG1B,MAAM,SAAS,CAAA;AAWhB,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAA;AAWzE,KAAK,IAAI,GAAG;IACV,UAAU,CAAC,EAAE,MAAM,EAAE,CAAA;IACrB,sBAAsB,EAAE,sBAAsB,CAAA;IAC9C,gBAAgB,EAAE,yBAAyB,CAAA;IAC3C,iBAAiB,EAAE,eAAe,CAAC,SAAS,CAAC,CAAA;IAC7C,OAAO,CAAC,EAAE,eAAe,CAAC,SAAS,CAAC,CAAA;IACpC,eAAe,EAAE,yBAAyB,CAAC,iBAAiB,CAAC,CAAA;IAC7D,IAAI,EAAE,aAAa,CAAC,MAAM,CAAC,CAAA;IAC3B,mBAAmB,EAAE,OAAO,CAAA;IAC5B,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,IAAI,EAAE,UAAU,CAAA;IAChB,OAAO,EAAE,OAAO,CAAA;IAChB,eAAe,CAAC,EAAE,OAAO,CAAC,eAAe,CAAC,CAAA;IAC1C,UAAU,EAAE,yBAAyB,CAAC,OAAO,CAAC,CAAC,YAAY,CAAC,CAAA;CAC7D,CAAA;AAED,eAAO,MAAM,gBAAgB,SAAU,IAAI,KAAG,MAAM,EAsQnD,CAAA"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"buildColumnState.js","names":["MissingEditorProp","fieldIsHiddenOrDisabled","fieldIsID","fieldIsPresentationalOnly","flattenTopLevelFields","React","RenderServerComponent","RenderCustomComponent","RenderDefaultCell","SortColumn","filterFields","buildColumnState","args","beforeRows","clientCollectionConfig","collectionConfig","columnPreferences","columns","customCellProps","docs","enableRowSelections","i18n","payload","sortColumnProps","useAsTitle","sortedFieldMap","fields","_sortedFieldMap","idFieldIndex","findIndex","field","idField","splice","unshift","useAsTitleFieldIndex","name","useAsTitleField","sortTo","sortFieldMap","fieldMap","sort","a","b","aIndex","column","accessor","bIndex","activeColumnsIndices","sorted","reduce","acc","index","_field","find","f","columnPreference","preference","active","Array","isArray","length","includes","push","CustomLabelToRender","admin","components","Label","undefined","clientProps","customLabelServerProps","clientField","collectionSlug","slug","CustomLabel","Component","importMap","serverProps","fieldAffectsDataSubFields","type","Heading","_jsx","disable","label","baseCellClientProps","cellData","rowData","renderedCells","map","doc","i","isLinkedColumn","cellClientProps","link","cellServerProps","className","columnIndex","onClick","CustomCell","editor","Error","CellComponent","CustomCellComponent","Cell","CustomComponent","Fallback"],"sources":["../../../src/providers/TableColumns/buildColumnState.tsx"],"sourcesContent":["import type { I18nClient } from '@payloadcms/translations'\nimport type {\n ClientCollectionConfig,\n ClientComponentProps,\n ClientField,\n Column,\n DefaultCellComponentProps,\n DefaultServerCellComponentProps,\n Field,\n ListPreferences,\n PaginatedDocs,\n Payload,\n SanitizedCollectionConfig,\n ServerComponentProps,\n StaticLabel,\n} from 'payload'\n\nimport { MissingEditorProp } from 'payload'\nimport {\n fieldIsHiddenOrDisabled,\n fieldIsID,\n fieldIsPresentationalOnly,\n flattenTopLevelFields,\n} from 'payload/shared'\nimport React from 'react'\n\nimport type { SortColumnProps } from '../../elements/SortColumn/index.js'\n\nimport { RenderServerComponent } from '../../elements/RenderServerComponent/index.js'\nimport {\n RenderCustomComponent,\n RenderDefaultCell,\n SortColumn,\n // eslint-disable-next-line payload/no-imports-from-exports-dir\n} from '../../exports/client/index.js'\nimport { filterFields } from './filterFields.js'\n\ntype Args = {\n beforeRows?: Column[]\n clientCollectionConfig: ClientCollectionConfig\n collectionConfig: SanitizedCollectionConfig\n columnPreferences: ListPreferences['columns']\n columns?: ListPreferences['columns']\n customCellProps: DefaultCellComponentProps['customCellProps']\n docs: PaginatedDocs['docs']\n enableRowSelections: boolean\n enableRowTypes?: boolean\n i18n: I18nClient\n payload: Payload\n sortColumnProps?: Partial<SortColumnProps>\n useAsTitle: SanitizedCollectionConfig['admin']['useAsTitle']\n}\n\nexport const buildColumnState = (args: Args): Column[] => {\n const {\n beforeRows,\n clientCollectionConfig,\n collectionConfig,\n columnPreferences,\n columns,\n customCellProps,\n docs,\n enableRowSelections,\n i18n,\n payload,\n sortColumnProps,\n useAsTitle,\n } = args\n\n // clientFields contains the fake `id` column\n let sortedFieldMap = flattenTopLevelFields(\n filterFields(clientCollectionConfig.fields),\n true,\n ) as ClientField[]\n\n let _sortedFieldMap = flattenTopLevelFields(\n filterFields(collectionConfig.fields),\n true,\n ) as Field[] // TODO: think of a way to avoid this additional flatten\n\n // place the `ID` field first, if it exists\n // do the same for the `useAsTitle` field with precedence over the `ID` field\n // then sort the rest of the fields based on the `defaultColumns` or `columnPreferences`\n const idFieldIndex = sortedFieldMap?.findIndex((field) => fieldIsID(field))\n\n if (idFieldIndex > -1) {\n const idField = sortedFieldMap.splice(idFieldIndex, 1)[0]\n sortedFieldMap.unshift(idField)\n }\n\n const useAsTitleFieldIndex = useAsTitle\n ? sortedFieldMap.findIndex((field) => 'name' in field && field.name === useAsTitle)\n : -1\n\n if (useAsTitleFieldIndex > -1) {\n const useAsTitleField = sortedFieldMap.splice(useAsTitleFieldIndex, 1)[0]\n sortedFieldMap.unshift(useAsTitleField)\n }\n\n const sortTo = columnPreferences || columns\n\n const sortFieldMap = (fieldMap, sortTo) =>\n fieldMap?.sort((a, b) => {\n const aIndex = sortTo.findIndex((column) => 'name' in a && column.accessor === a.name)\n const bIndex = sortTo.findIndex((column) => 'name' in b && column.accessor === b.name)\n\n if (aIndex === -1 && bIndex === -1) {\n return 0\n }\n\n if (aIndex === -1) {\n return 1\n }\n\n if (bIndex === -1) {\n return -1\n }\n\n return aIndex - bIndex\n })\n\n if (sortTo) {\n // sort the fields to the order of `defaultColumns` or `columnPreferences`\n sortedFieldMap = sortFieldMap(sortedFieldMap, sortTo)\n _sortedFieldMap = sortFieldMap(_sortedFieldMap, sortTo) // TODO: think of a way to avoid this additional sort\n }\n\n const activeColumnsIndices = []\n\n const sorted: Column[] = sortedFieldMap?.reduce((acc, field, index) => {\n if (fieldIsHiddenOrDisabled(field) && !fieldIsID(field)) {\n return acc\n }\n\n const _field = _sortedFieldMap.find(\n (f) => 'name' in field && 'name' in f && f.name === field.name,\n )\n\n const columnPreference = columnPreferences?.find(\n (preference) => field && 'name' in field && preference.accessor === field.name,\n )\n\n let active = false\n\n if (columnPreference) {\n active = columnPreference.active\n } else if (columns && Array.isArray(columns) && columns.length > 0) {\n active = columns.find(\n (column) => field && 'name' in field && column.accessor === field.name,\n )?.active\n } else if (activeColumnsIndices.length < 4) {\n active = true\n }\n\n if (active && !activeColumnsIndices.includes(index)) {\n activeColumnsIndices.push(index)\n }\n\n const CustomLabelToRender =\n _field &&\n 'admin' in _field &&\n 'components' in _field.admin &&\n 'Label' in _field.admin.components &&\n _field.admin.components.Label !== undefined // let it return `null`\n ? _field.admin.components.Label\n : undefined\n\n // TODO: customComponent will be optional in v4\n const clientProps: Omit<ClientComponentProps, 'customComponents'> = {\n field,\n }\n\n const customLabelServerProps: Pick<\n ServerComponentProps,\n 'clientField' | 'collectionSlug' | 'field' | 'i18n' | 'payload'\n > = {\n clientField: field,\n collectionSlug: collectionConfig.slug,\n field: _field,\n i18n,\n payload,\n }\n\n const CustomLabel = CustomLabelToRender\n ? RenderServerComponent({\n clientProps,\n Component: CustomLabelToRender,\n importMap: payload.importMap,\n serverProps: customLabelServerProps,\n })\n : undefined\n\n const fieldAffectsDataSubFields =\n field &&\n field.type &&\n (field.type === 'array' || field.type === 'group' || field.type === 'blocks')\n\n const Heading = (\n <SortColumn\n disable={fieldAffectsDataSubFields || fieldIsPresentationalOnly(field) || undefined}\n Label={CustomLabel}\n label={field && 'label' in field ? (field.label as StaticLabel) : undefined}\n name={'name' in field ? field.name : undefined}\n {...(sortColumnProps || {})}\n />\n )\n\n const baseCellClientProps: DefaultCellComponentProps = {\n cellData: undefined,\n collectionSlug: clientCollectionConfig.slug,\n customCellProps,\n field,\n rowData: undefined,\n }\n\n const column: Column = {\n accessor: 'name' in field ? field.name : undefined,\n active,\n CustomLabel,\n field,\n Heading,\n renderedCells: active\n ? docs.map((doc, i) => {\n const isLinkedColumn = index === activeColumnsIndices[0]\n\n const cellClientProps: DefaultCellComponentProps = {\n ...baseCellClientProps,\n cellData: 'name' in field ? doc[field.name] : undefined,\n link: isLinkedColumn,\n rowData: doc,\n }\n\n const cellServerProps: DefaultServerCellComponentProps = {\n cellData: cellClientProps.cellData,\n className: baseCellClientProps.className,\n collectionConfig,\n collectionSlug: collectionConfig.slug,\n columnIndex: baseCellClientProps.columnIndex,\n customCellProps: baseCellClientProps.customCellProps,\n field: _field,\n i18n,\n link: cellClientProps.link,\n onClick: baseCellClientProps.onClick,\n payload,\n rowData: doc,\n }\n\n let CustomCell = null\n\n if (_field?.type === 'richText') {\n if (!_field?.editor) {\n throw new MissingEditorProp(_field) // while we allow disabling editor functionality, you should not have any richText fields defined if you do not have an editor\n }\n\n if (typeof _field?.editor === 'function') {\n throw new Error('Attempted to access unsanitized rich text editor.')\n }\n\n if (!_field.admin) {\n _field.admin = {}\n }\n\n if (!_field.admin.components) {\n _field.admin.components = {}\n }\n\n CustomCell = RenderServerComponent({\n clientProps: cellClientProps,\n Component: _field.editor.CellComponent,\n importMap: payload.importMap,\n serverProps: cellServerProps,\n })\n } else {\n const CustomCellComponent = _field?.admin?.components?.Cell\n\n if (CustomCellComponent) {\n CustomCell = RenderServerComponent({\n clientProps: cellClientProps,\n Component: CustomCellComponent,\n importMap: payload.importMap,\n serverProps: cellServerProps,\n })\n } else {\n CustomCell = undefined\n }\n }\n\n return (\n <RenderCustomComponent\n CustomComponent={CustomCell}\n Fallback={\n <RenderDefaultCell\n clientProps={cellClientProps}\n columnIndex={index}\n enableRowSelections={enableRowSelections}\n isLinkedColumn={isLinkedColumn}\n />\n }\n key={`${i}-${index}`}\n />\n )\n })\n : [],\n }\n\n acc.push(column)\n\n return acc\n }, [])\n\n if (beforeRows) {\n sorted.unshift(...beforeRows)\n }\n\n return sorted\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"buildPolymorphicColumnState.d.ts","sourceRoot":"","sources":["../../../src/providers/TableColumns/buildPolymorphicColumnState.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAC1D,OAAO,KAAK,EACV,WAAW,EACX,MAAM,EACN,yBAAyB,EAGzB,eAAe,EACf,aAAa,EACb,OAAO,EACP,yBAAyB,EAE1B,MAAM,SAAS,CAAA;AAWhB,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAA;AAWzE,KAAK,IAAI,GAAG;IACV,UAAU,CAAC,EAAE,MAAM,EAAE,CAAA;IACrB,iBAAiB,EAAE,eAAe,CAAC,SAAS,CAAC,CAAA;IAC7C,OAAO,CAAC,EAAE,eAAe,CAAC,SAAS,CAAC,CAAA;IACpC,eAAe,EAAE,yBAAyB,CAAC,iBAAiB,CAAC,CAAA;IAC7D,IAAI,EAAE,aAAa,CAAC,MAAM,CAAC,CAAA;IAC3B,mBAAmB,EAAE,OAAO,CAAA;IAC5B,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,MAAM,EAAE,WAAW,EAAE,CAAA;IACrB,IAAI,EAAE,UAAU,CAAA;IAChB,OAAO,EAAE,OAAO,CAAA;IAChB,eAAe,CAAC,EAAE,OAAO,CAAC,eAAe,CAAC,CAAA;IAC1C,UAAU,EAAE,yBAAyB,CAAC,OAAO,CAAC,CAAC,YAAY,CAAC,CAAA;CAC7D,CAAA;AAED,eAAO,MAAM,2BAA2B,SAAU,IAAI,KAAG,MAAM,EA2P9D,CAAA"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"buildPolymorphicColumnState.js","names":["MissingEditorProp","fieldIsHiddenOrDisabled","fieldIsID","fieldIsPresentationalOnly","flattenTopLevelFields","React","RenderCustomComponent","RenderDefaultCell","SortColumn","RenderServerComponent","filterFields","buildPolymorphicColumnState","args","beforeRows","columnPreferences","columns","customCellProps","docs","enableRowSelections","fields","i18n","payload","sortColumnProps","useAsTitle","sortedFieldMap","_sortedFieldMap","idFieldIndex","findIndex","field","idField","splice","unshift","useAsTitleFieldIndex","name","useAsTitleField","sortTo","sortFieldMap","fieldMap","sort","a","b","aIndex","column","accessor","bIndex","activeColumnsIndices","sorted","reduce","acc","index","_field","find","f","columnPreference","preference","active","Array","isArray","length","includes","push","CustomLabel","undefined","fieldAffectsDataSubFields","type","Heading","_jsx","disable","Label","label","renderedCells","map","doc","i","isLinkedColumn","collectionSlug","relationTo","value","baseCellClientProps","cellData","rowData","cellClientProps","link","cellServerProps","className","collectionConfig","collections","config","columnIndex","onClick","CustomCell","editor","Error","admin","components","clientProps","Component","CellComponent","importMap","serverProps","CustomCellComponent","Cell","CustomComponent","Fallback"],"sources":["../../../src/providers/TableColumns/buildPolymorphicColumnState.tsx"],"sourcesContent":["// Dirty copy of buildColumnState.tsx with some changes to not break things\n\nimport type { I18nClient } from '@payloadcms/translations'\nimport type {\n ClientField,\n Column,\n DefaultCellComponentProps,\n DefaultServerCellComponentProps,\n Field,\n ListPreferences,\n PaginatedDocs,\n Payload,\n SanitizedCollectionConfig,\n StaticLabel,\n} from 'payload'\n\nimport { MissingEditorProp } from 'payload'\nimport {\n fieldIsHiddenOrDisabled,\n fieldIsID,\n fieldIsPresentationalOnly,\n flattenTopLevelFields,\n} from 'payload/shared'\nimport React from 'react'\n\nimport type { SortColumnProps } from '../../elements/SortColumn/index.js'\n\nimport {\n RenderCustomComponent,\n RenderDefaultCell,\n SortColumn,\n // eslint-disable-next-line payload/no-imports-from-exports-dir\n} from '../../exports/client/index.js'\nimport { RenderServerComponent } from '../../elements/RenderServerComponent/index.js'\nimport { filterFields } from './filterFields.js'\n\ntype Args = {\n beforeRows?: Column[]\n columnPreferences: ListPreferences['columns']\n columns?: ListPreferences['columns']\n customCellProps: DefaultCellComponentProps['customCellProps']\n docs: PaginatedDocs['docs']\n enableRowSelections: boolean\n enableRowTypes?: boolean\n fields: ClientField[]\n i18n: I18nClient\n payload: Payload\n sortColumnProps?: Partial<SortColumnProps>\n useAsTitle: SanitizedCollectionConfig['admin']['useAsTitle']\n}\n\nexport const buildPolymorphicColumnState = (args: Args): Column[] => {\n const {\n beforeRows,\n columnPreferences,\n columns,\n customCellProps,\n docs,\n enableRowSelections,\n fields,\n i18n,\n payload,\n sortColumnProps,\n useAsTitle,\n } = args\n\n // clientFields contains the fake `id` column\n let sortedFieldMap = flattenTopLevelFields(filterFields(fields), true) as ClientField[]\n\n let _sortedFieldMap = flattenTopLevelFields(filterFields(fields), true) as Field[] // TODO: think of a way to avoid this additional flatten\n\n // place the `ID` field first, if it exists\n // do the same for the `useAsTitle` field with precedence over the `ID` field\n // then sort the rest of the fields based on the `defaultColumns` or `columnPreferences`\n const idFieldIndex = sortedFieldMap?.findIndex((field) => fieldIsID(field))\n\n if (idFieldIndex > -1) {\n const idField = sortedFieldMap.splice(idFieldIndex, 1)[0]\n sortedFieldMap.unshift(idField)\n }\n\n const useAsTitleFieldIndex = useAsTitle\n ? sortedFieldMap.findIndex((field) => 'name' in field && field.name === useAsTitle)\n : -1\n\n if (useAsTitleFieldIndex > -1) {\n const useAsTitleField = sortedFieldMap.splice(useAsTitleFieldIndex, 1)[0]\n sortedFieldMap.unshift(useAsTitleField)\n }\n\n const sortTo = columnPreferences || columns\n\n const sortFieldMap = (fieldMap, sortTo) =>\n fieldMap?.sort((a, b) => {\n const aIndex = sortTo.findIndex((column) => 'name' in a && column.accessor === a.name)\n const bIndex = sortTo.findIndex((column) => 'name' in b && column.accessor === b.name)\n\n if (aIndex === -1 && bIndex === -1) {\n return 0\n }\n\n if (aIndex === -1) {\n return 1\n }\n\n if (bIndex === -1) {\n return -1\n }\n\n return aIndex - bIndex\n })\n\n if (sortTo) {\n // sort the fields to the order of `defaultColumns` or `columnPreferences`\n sortedFieldMap = sortFieldMap(sortedFieldMap, sortTo)\n _sortedFieldMap = sortFieldMap(_sortedFieldMap, sortTo) // TODO: think of a way to avoid this additional sort\n }\n\n const activeColumnsIndices = []\n\n const sorted: Column[] = sortedFieldMap?.reduce((acc, field, index) => {\n if (fieldIsHiddenOrDisabled(field) && !fieldIsID(field)) {\n return acc\n }\n\n const _field = _sortedFieldMap.find(\n (f) => 'name' in field && 'name' in f && f.name === field.name,\n )\n\n const columnPreference = columnPreferences?.find(\n (preference) => field && 'name' in field && preference.accessor === field.name,\n )\n\n let active = false\n\n if (columnPreference) {\n active = columnPreference.active\n } else if (columns && Array.isArray(columns) && columns.length > 0) {\n active = columns.find(\n (column) => field && 'name' in field && column.accessor === field.name,\n )?.active\n } else if (activeColumnsIndices.length < 4) {\n active = true\n }\n\n if (active && !activeColumnsIndices.includes(index)) {\n activeColumnsIndices.push(index)\n }\n\n // const CustomLabelToRender =\n // _field &&\n // 'admin' in _field &&\n // 'components' in _field.admin &&\n // 'Label' in _field.admin.components &&\n // _field.admin.components.Label !== undefined // let it return `null`\n // ? _field.admin.components.Label\n // : undefined\n\n // // TODO: customComponent will be optional in v4\n // const clientProps: Omit<ClientComponentProps, 'customComponents'> = {\n // field,\n // }\n\n // const customLabelServerProps: Pick<\n // ServerComponentProps,\n // 'clientField' | 'collectionSlug' | 'field' | 'i18n' | 'payload'\n // > = {\n // clientField: field,\n // collectionSlug: collectionConfig.slug,\n // field: _field,\n // i18n,\n // payload,\n // }\n\n const CustomLabel = undefined\n\n const fieldAffectsDataSubFields =\n field &&\n field.type &&\n (field.type === 'array' || field.type === 'group' || field.type === 'blocks')\n\n const Heading = (\n <SortColumn\n disable={fieldAffectsDataSubFields || fieldIsPresentationalOnly(field) || undefined}\n Label={CustomLabel}\n label={field && 'label' in field ? (field.label as StaticLabel) : undefined}\n name={'name' in field ? field.name : undefined}\n {...(sortColumnProps || {})}\n />\n )\n\n const column: Column = {\n accessor: 'name' in field ? field.name : undefined,\n active,\n CustomLabel,\n field,\n Heading,\n renderedCells: active\n ? docs.map((doc, i) => {\n const isLinkedColumn = index === activeColumnsIndices[0]\n\n const collectionSlug = doc.relationTo\n doc = doc.value\n\n const baseCellClientProps: DefaultCellComponentProps = {\n cellData: undefined,\n collectionSlug,\n customCellProps,\n field,\n rowData: undefined,\n }\n\n const cellClientProps: DefaultCellComponentProps = {\n ...baseCellClientProps,\n cellData: 'name' in field ? doc[field.name] : undefined,\n link: isLinkedColumn,\n rowData: doc,\n }\n\n const cellServerProps: DefaultServerCellComponentProps = {\n cellData: cellClientProps.cellData,\n className: baseCellClientProps.className,\n collectionConfig: payload.collections[collectionSlug].config,\n collectionSlug,\n columnIndex: baseCellClientProps.columnIndex,\n customCellProps: baseCellClientProps.customCellProps,\n field: _field,\n i18n,\n link: cellClientProps.link,\n onClick: baseCellClientProps.onClick,\n payload,\n rowData: doc,\n }\n\n let CustomCell = null\n\n if (_field?.type === 'richText') {\n if (!_field?.editor) {\n throw new MissingEditorProp(_field) // while we allow disabling editor functionality, you should not have any richText fields defined if you do not have an editor\n }\n\n if (typeof _field?.editor === 'function') {\n throw new Error('Attempted to access unsanitized rich text editor.')\n }\n\n if (!_field.admin) {\n _field.admin = {}\n }\n\n if (!_field.admin.components) {\n _field.admin.components = {}\n }\n\n CustomCell = RenderServerComponent({\n clientProps: cellClientProps,\n Component: _field.editor.CellComponent,\n importMap: payload.importMap,\n serverProps: cellServerProps,\n })\n } else {\n const CustomCellComponent = _field?.admin?.components?.Cell\n\n if (CustomCellComponent) {\n CustomCell = RenderServerComponent({\n clientProps: cellClientProps,\n Component: CustomCellComponent,\n importMap: payload.importMap,\n serverProps: cellServerProps,\n })\n } else {\n CustomCell = undefined\n }\n }\n\n return (\n <RenderCustomComponent\n CustomComponent={CustomCell}\n Fallback={\n <RenderDefaultCell\n clientProps={cellClientProps}\n columnIndex={index}\n enableRowSelections={enableRowSelections}\n isLinkedColumn={isLinkedColumn}\n />\n }\n key={`${i}-${index}`}\n />\n )\n })\n : [],\n }\n\n acc.push(column)\n\n return acc\n }, [])\n\n if (beforeRows) {\n sorted.unshift(...beforeRows)\n }\n\n return sorted\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../src/providers/TableColumns/context.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAE/C,eAAO,MAAM,kBAAkB,wCAAoD,CAAA;AAEnF,eAAO,MAAM,eAAe,QAAO,aAA+C,CAAA;AAElF,eAAO,MAAM,2BAA2B,kCAAuB,CAAA;AAE/D,eAAO,MAAM,kBAAkB,QAAO,OAAkD,CAAA"}
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import { createContext, useContext } from 'react';
|
|
2
|
-
export const TableColumnContext = createContext({});
|
|
3
|
-
export const useTableColumns = () => useContext(TableColumnContext);
|
|
4
|
-
export const TableColumnsModifiedContext = createContext(false);
|
|
5
|
-
export const useColumnsModified = () => useContext(TableColumnsModifiedContext);
|
|
6
|
-
//# sourceMappingURL=context.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"context.js","names":["createContext","useContext","TableColumnContext","useTableColumns","TableColumnsModifiedContext","useColumnsModified"],"sources":["../../../src/providers/TableColumns/context.ts"],"sourcesContent":["import { createContext, useContext } from 'react'\n\nimport type { ITableColumns } from './types.js'\n\nexport const TableColumnContext = createContext<ITableColumns>({} as ITableColumns)\n\nexport const useTableColumns = (): ITableColumns => useContext(TableColumnContext)\n\nexport const TableColumnsModifiedContext = createContext(false)\n\nexport const useColumnsModified = (): boolean => useContext(TableColumnsModifiedContext)\n"],"mappings":"AAAA,SAASA,aAAa,EAAEC,UAAU,QAAQ;AAI1C,OAAO,MAAMC,kBAAA,GAAqBF,aAAA,CAA6B,CAAC;AAEhE,OAAO,MAAMG,eAAA,GAAkBA,CAAA,KAAqBF,UAAA,CAAWC,kBAAA;AAE/D,OAAO,MAAME,2BAAA,GAA8BJ,aAAA,CAAc;AAEzD,OAAO,MAAMK,kBAAA,GAAqBA,CAAA,KAAeJ,UAAA,CAAWG,2BAAA","ignoreList":[]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"filterFields.d.ts","sourceRoot":"","sources":["../../../src/providers/TableColumns/filterFields.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAIjD;;;GAGG;AACH,eAAO,MAAM,YAAY,GAAI,CAAC,SAAS,WAAW,GAAG,KAAK,kBAAkB,CAAC,EAAE,KAAG,CAAC,EA4BlF,CAAA"}
|