@payloadcms/ui 3.24.0 → 3.25.0-canary.9728d80
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/ConfirmationModal/index.d.ts.map +1 -1
- package/dist/elements/ConfirmationModal/index.js +2 -3
- package/dist/elements/ConfirmationModal/index.js.map +1 -1
- package/dist/elements/ListDrawer/DrawerContent.d.ts.map +1 -1
- package/dist/elements/ListDrawer/DrawerContent.js +2 -0
- package/dist/elements/ListDrawer/DrawerContent.js.map +1 -1
- package/dist/elements/ListDrawer/Provider.d.ts +1 -0
- package/dist/elements/ListDrawer/Provider.d.ts.map +1 -1
- package/dist/elements/ListDrawer/Provider.js.map +1 -1
- package/dist/exports/client/index.js +23 -23
- package/dist/exports/client/index.js.map +4 -4
- package/dist/fields/Blocks/BlocksDrawer/index.d.ts.map +1 -1
- package/dist/fields/Blocks/BlocksDrawer/index.js +85 -103
- package/dist/fields/Blocks/BlocksDrawer/index.js.map +1 -1
- package/dist/fields/Blocks/BlocksDrawer/index.scss +43 -0
- package/dist/styles.css +1 -1
- package/dist/utilities/upsertPreferences.d.ts +5 -1
- package/dist/utilities/upsertPreferences.d.ts.map +1 -1
- package/dist/utilities/upsertPreferences.js +11 -14
- package/dist/utilities/upsertPreferences.js.map +1 -1
- package/dist/views/List/index.d.ts.map +1 -1
- package/dist/views/List/index.js +3 -1
- package/dist/views/List/index.js.map +1 -1
- package/package.json +5 -5
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/fields/Blocks/BlocksDrawer/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,SAAS,CAAA;AAIlD,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/fields/Blocks/BlocksDrawer/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,SAAS,CAAA;AAIlD,OAAO,KAAuC,MAAM,OAAO,CAAA;AAO3D,OAAO,cAAc,CAAA;AAGrB,MAAM,MAAM,KAAK,GAAG;IAClB,QAAQ,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAA;IAC5E,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAA;IAC5B,QAAQ,CAAC,MAAM,EAAE,CAAC,WAAW,GAAG,MAAM,CAAC,EAAE,CAAA;IACzC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;CACxB,CAAA;AAcD,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CA6GxC,CAAA"}
|
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
|
|
3
|
-
import { c as _c } from "react/compiler-runtime";
|
|
4
3
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
5
4
|
import { useModal } from '@faceless-ui/modal';
|
|
6
5
|
import { getTranslation } from '@payloadcms/translations';
|
|
7
|
-
import React, { useEffect, useState } from 'react';
|
|
6
|
+
import React, { useEffect, useMemo, useState } from 'react';
|
|
8
7
|
import { Drawer } from '../../../elements/Drawer/index.js';
|
|
9
8
|
import { ThumbnailCard } from '../../../elements/ThumbnailCard/index.js';
|
|
10
9
|
import { DefaultBlockImage } from '../../../graphics/DefaultBlockImage/index.js';
|
|
@@ -23,7 +22,6 @@ const getBlockLabel = (block, i18n) => {
|
|
|
23
22
|
return '';
|
|
24
23
|
};
|
|
25
24
|
export const BlocksDrawer = props => {
|
|
26
|
-
const $ = _c(20);
|
|
27
25
|
const {
|
|
28
26
|
addRow,
|
|
29
27
|
addRowIndex,
|
|
@@ -31,7 +29,7 @@ export const BlocksDrawer = props => {
|
|
|
31
29
|
drawerSlug,
|
|
32
30
|
labels
|
|
33
31
|
} = props;
|
|
34
|
-
const [searchTerm, setSearchTerm] = useState(
|
|
32
|
+
const [searchTerm, setSearchTerm] = useState('');
|
|
35
33
|
const [filteredBlocks, setFilteredBlocks] = useState(blocks);
|
|
36
34
|
const {
|
|
37
35
|
closeModal,
|
|
@@ -44,107 +42,91 @@ export const BlocksDrawer = props => {
|
|
|
44
42
|
const {
|
|
45
43
|
config
|
|
46
44
|
} = useConfig();
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
t0 = () => {
|
|
51
|
-
if (!isModalOpen(drawerSlug)) {
|
|
52
|
-
setSearchTerm("");
|
|
53
|
-
}
|
|
45
|
+
const blockGroups = useMemo(() => {
|
|
46
|
+
const groups = {
|
|
47
|
+
_none: []
|
|
54
48
|
};
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
}
|
|
64
|
-
useEffect(t0, t1);
|
|
65
|
-
let t2;
|
|
66
|
-
let t3;
|
|
67
|
-
if ($[4] !== blocks || $[5] !== config.blocksMap || $[6] !== i18n || $[7] !== searchTerm) {
|
|
68
|
-
t2 = () => {
|
|
69
|
-
const searchTermToUse = searchTerm.toLowerCase();
|
|
70
|
-
const matchingBlocks = blocks?.reduce((matchedBlocks, _block) => {
|
|
71
|
-
const block = typeof _block === "string" ? config.blocksMap[_block] : _block;
|
|
72
|
-
const blockLabel = getBlockLabel(block, i18n);
|
|
73
|
-
if (blockLabel.includes(searchTermToUse)) {
|
|
74
|
-
matchedBlocks.push(block);
|
|
49
|
+
filteredBlocks.forEach(block => {
|
|
50
|
+
if (typeof block === 'object' && block.admin?.group) {
|
|
51
|
+
const group = block.admin.group;
|
|
52
|
+
const label = typeof group === 'string' ? group : getTranslation(group, i18n);
|
|
53
|
+
if (Object.hasOwn(groups, label)) {
|
|
54
|
+
groups[label].push(block);
|
|
55
|
+
} else {
|
|
56
|
+
groups[label] = [block];
|
|
75
57
|
}
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
};
|
|
80
|
-
t3 = [searchTerm, blocks, i18n, config.blocksMap];
|
|
81
|
-
$[4] = blocks;
|
|
82
|
-
$[5] = config.blocksMap;
|
|
83
|
-
$[6] = i18n;
|
|
84
|
-
$[7] = searchTerm;
|
|
85
|
-
$[8] = t2;
|
|
86
|
-
$[9] = t3;
|
|
87
|
-
} else {
|
|
88
|
-
t2 = $[8];
|
|
89
|
-
t3 = $[9];
|
|
90
|
-
}
|
|
91
|
-
useEffect(t2, t3);
|
|
92
|
-
let t4;
|
|
93
|
-
if ($[10] !== addRow || $[11] !== addRowIndex || $[12] !== closeModal || $[13] !== config.blocksMap || $[14] !== drawerSlug || $[15] !== filteredBlocks || $[16] !== i18n || $[17] !== labels.singular || $[18] !== t) {
|
|
94
|
-
t4 = _jsxs(Drawer, {
|
|
95
|
-
slug: drawerSlug,
|
|
96
|
-
title: t("fields:addLabel", {
|
|
97
|
-
label: getTranslation(labels.singular, i18n)
|
|
98
|
-
}),
|
|
99
|
-
children: [_jsx(BlockSearch, {
|
|
100
|
-
setSearchTerm
|
|
101
|
-
}), _jsx("div", {
|
|
102
|
-
className: `${baseClass}__blocks-wrapper`,
|
|
103
|
-
children: _jsx("ul", {
|
|
104
|
-
className: `${baseClass}__blocks`,
|
|
105
|
-
children: filteredBlocks?.map((_block_0, index) => {
|
|
106
|
-
const block_0 = typeof _block_0 === "string" ? config.blocksMap[_block_0] : _block_0;
|
|
107
|
-
const {
|
|
108
|
-
slug,
|
|
109
|
-
imageAltText,
|
|
110
|
-
imageURL,
|
|
111
|
-
labels: blockLabels
|
|
112
|
-
} = block_0;
|
|
113
|
-
return _jsx("li", {
|
|
114
|
-
className: `${baseClass}__block`,
|
|
115
|
-
children: _jsx(ThumbnailCard, {
|
|
116
|
-
alignLabel: "center",
|
|
117
|
-
label: getTranslation(blockLabels?.singular, i18n),
|
|
118
|
-
onClick: () => {
|
|
119
|
-
addRow(addRowIndex, slug);
|
|
120
|
-
closeModal(drawerSlug);
|
|
121
|
-
},
|
|
122
|
-
thumbnail: imageURL ? _jsx("img", {
|
|
123
|
-
alt: imageAltText,
|
|
124
|
-
src: imageURL
|
|
125
|
-
}) : _jsx("div", {
|
|
126
|
-
className: `${baseClass}__default-image`,
|
|
127
|
-
children: _jsx(DefaultBlockImage, {})
|
|
128
|
-
})
|
|
129
|
-
})
|
|
130
|
-
}, index);
|
|
131
|
-
})
|
|
132
|
-
})
|
|
133
|
-
})]
|
|
58
|
+
} else {
|
|
59
|
+
groups._none.push(block);
|
|
60
|
+
}
|
|
134
61
|
});
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
62
|
+
return groups;
|
|
63
|
+
}, [filteredBlocks, i18n]);
|
|
64
|
+
useEffect(() => {
|
|
65
|
+
if (!isModalOpen(drawerSlug)) {
|
|
66
|
+
setSearchTerm('');
|
|
67
|
+
}
|
|
68
|
+
}, [isModalOpen, drawerSlug]);
|
|
69
|
+
useEffect(() => {
|
|
70
|
+
const searchTermToUse = searchTerm.toLowerCase();
|
|
71
|
+
const matchingBlocks = blocks?.reduce((matchedBlocks, _block) => {
|
|
72
|
+
const block_0 = typeof _block === 'string' ? config.blocksMap[_block] : _block;
|
|
73
|
+
const blockLabel = getBlockLabel(block_0, i18n);
|
|
74
|
+
if (blockLabel.includes(searchTermToUse)) {
|
|
75
|
+
matchedBlocks.push(block_0);
|
|
76
|
+
}
|
|
77
|
+
return matchedBlocks;
|
|
78
|
+
}, []);
|
|
79
|
+
setFilteredBlocks(matchingBlocks);
|
|
80
|
+
}, [searchTerm, blocks, i18n, config.blocksMap]);
|
|
81
|
+
return /*#__PURE__*/_jsxs(Drawer, {
|
|
82
|
+
slug: drawerSlug,
|
|
83
|
+
title: t('fields:addLabel', {
|
|
84
|
+
label: getTranslation(labels.singular, i18n)
|
|
85
|
+
}),
|
|
86
|
+
children: [/*#__PURE__*/_jsx(BlockSearch, {
|
|
87
|
+
setSearchTerm: setSearchTerm
|
|
88
|
+
}), /*#__PURE__*/_jsx("div", {
|
|
89
|
+
className: `${baseClass}__blocks-wrapper`,
|
|
90
|
+
children: /*#__PURE__*/_jsx("ul", {
|
|
91
|
+
className: `${baseClass}__block-groups`,
|
|
92
|
+
children: Object.entries(blockGroups).map(([groupLabel, groupBlocks]) => !groupBlocks.length ? null : /*#__PURE__*/_jsxs("li", {
|
|
93
|
+
className: [`${baseClass}__block-group`, groupLabel === '_none' && `${baseClass}__block-group-none`].filter(Boolean).join(' '),
|
|
94
|
+
children: [groupLabel !== '_none' && /*#__PURE__*/_jsx("h3", {
|
|
95
|
+
className: `${baseClass}__block-group-label`,
|
|
96
|
+
children: groupLabel
|
|
97
|
+
}), /*#__PURE__*/_jsx("ul", {
|
|
98
|
+
className: `${baseClass}__blocks`,
|
|
99
|
+
children: groupBlocks.map((_block_0, index) => {
|
|
100
|
+
const block_1 = typeof _block_0 === 'string' ? config.blocksMap[_block_0] : _block_0;
|
|
101
|
+
const {
|
|
102
|
+
slug,
|
|
103
|
+
imageAltText,
|
|
104
|
+
imageURL,
|
|
105
|
+
labels: blockLabels
|
|
106
|
+
} = block_1;
|
|
107
|
+
return /*#__PURE__*/_jsx("li", {
|
|
108
|
+
className: `${baseClass}__block`,
|
|
109
|
+
children: /*#__PURE__*/_jsx(ThumbnailCard, {
|
|
110
|
+
alignLabel: "center",
|
|
111
|
+
label: getTranslation(blockLabels?.singular, i18n),
|
|
112
|
+
onClick: () => {
|
|
113
|
+
void addRow(addRowIndex, slug);
|
|
114
|
+
closeModal(drawerSlug);
|
|
115
|
+
},
|
|
116
|
+
thumbnail: imageURL ? /*#__PURE__*/_jsx("img", {
|
|
117
|
+
alt: imageAltText,
|
|
118
|
+
src: imageURL
|
|
119
|
+
}) : /*#__PURE__*/_jsx("div", {
|
|
120
|
+
className: `${baseClass}__default-image`,
|
|
121
|
+
children: /*#__PURE__*/_jsx(DefaultBlockImage, {})
|
|
122
|
+
})
|
|
123
|
+
})
|
|
124
|
+
}, index);
|
|
125
|
+
})
|
|
126
|
+
})]
|
|
127
|
+
}, groupLabel))
|
|
128
|
+
})
|
|
129
|
+
})]
|
|
130
|
+
});
|
|
149
131
|
};
|
|
150
132
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["
|
|
1
|
+
{"version":3,"file":"index.js","names":["useModal","getTranslation","React","useEffect","useMemo","useState","Drawer","ThumbnailCard","DefaultBlockImage","useConfig","useTranslation","BlockSearch","baseClass","getBlockLabel","block","i18n","labels","singular","toLowerCase","BlocksDrawer","props","addRow","addRowIndex","blocks","drawerSlug","searchTerm","setSearchTerm","filteredBlocks","setFilteredBlocks","closeModal","isModalOpen","t","config","blockGroups","groups","_none","forEach","admin","group","label","Object","hasOwn","push","searchTermToUse","matchingBlocks","reduce","matchedBlocks","_block","blocksMap","blockLabel","includes","_jsxs","slug","title","_jsx","className","entries","map","groupLabel","groupBlocks","length","filter","Boolean","join","index","imageAltText","imageURL","blockLabels","alignLabel","onClick","thumbnail","alt","src"],"sources":["../../../../src/fields/Blocks/BlocksDrawer/index.tsx"],"sourcesContent":["'use client'\nimport type { I18nClient } from '@payloadcms/translations'\nimport type { ClientBlock, Labels } from 'payload'\n\nimport { useModal } from '@faceless-ui/modal'\nimport { getTranslation } from '@payloadcms/translations'\nimport React, { useEffect, useMemo, useState } from 'react'\n\nimport { Drawer } from '../../../elements/Drawer/index.js'\nimport { ThumbnailCard } from '../../../elements/ThumbnailCard/index.js'\nimport { DefaultBlockImage } from '../../../graphics/DefaultBlockImage/index.js'\nimport { useConfig } from '../../../providers/Config/index.js'\nimport { useTranslation } from '../../../providers/Translation/index.js'\nimport './index.scss'\nimport { BlockSearch } from './BlockSearch/index.js'\n\nexport type Props = {\n readonly addRow: (index: number, blockType?: string) => Promise<void> | void\n readonly addRowIndex: number\n readonly blocks: (ClientBlock | string)[]\n readonly drawerSlug: string\n readonly labels: Labels\n}\n\nconst baseClass = 'blocks-drawer'\n\nconst getBlockLabel = (block: ClientBlock, i18n: I18nClient) => {\n if (typeof block.labels.singular === 'string') {\n return block.labels.singular.toLowerCase()\n }\n if (typeof block.labels.singular === 'object') {\n return getTranslation(block.labels.singular, i18n).toLowerCase()\n }\n return ''\n}\n\nexport const BlocksDrawer: React.FC<Props> = (props) => {\n const { addRow, addRowIndex, blocks, drawerSlug, labels } = props\n\n const [searchTerm, setSearchTerm] = useState('')\n const [filteredBlocks, setFilteredBlocks] = useState(blocks)\n const { closeModal, isModalOpen } = useModal()\n const { i18n, t } = useTranslation()\n const { config } = useConfig()\n\n const blockGroups = useMemo(() => {\n const groups: Record<string, (ClientBlock | string)[]> = {\n _none: [],\n }\n filteredBlocks.forEach((block) => {\n if (typeof block === 'object' && block.admin?.group) {\n const group = block.admin.group\n const label = typeof group === 'string' ? group : getTranslation(group, i18n)\n\n if (Object.hasOwn(groups, label)) {\n groups[label].push(block)\n } else {\n groups[label] = [block]\n }\n } else {\n groups._none.push(block)\n }\n })\n return groups\n }, [filteredBlocks, i18n])\n\n useEffect(() => {\n if (!isModalOpen(drawerSlug)) {\n setSearchTerm('')\n }\n }, [isModalOpen, drawerSlug])\n\n useEffect(() => {\n const searchTermToUse = searchTerm.toLowerCase()\n\n const matchingBlocks = blocks?.reduce((matchedBlocks, _block) => {\n const block = typeof _block === 'string' ? config.blocksMap[_block] : _block\n const blockLabel = getBlockLabel(block, i18n)\n if (blockLabel.includes(searchTermToUse)) {\n matchedBlocks.push(block)\n }\n return matchedBlocks\n }, [])\n\n setFilteredBlocks(matchingBlocks)\n }, [searchTerm, blocks, i18n, config.blocksMap])\n\n return (\n <Drawer\n slug={drawerSlug}\n title={t('fields:addLabel', { label: getTranslation(labels.singular, i18n) })}\n >\n <BlockSearch setSearchTerm={setSearchTerm} />\n <div className={`${baseClass}__blocks-wrapper`}>\n <ul className={`${baseClass}__block-groups`}>\n {Object.entries(blockGroups).map(([groupLabel, groupBlocks]) =>\n !groupBlocks.length ? null : (\n <li\n className={[\n `${baseClass}__block-group`,\n groupLabel === '_none' && `${baseClass}__block-group-none`,\n ]\n .filter(Boolean)\n .join(' ')}\n key={groupLabel}\n >\n {groupLabel !== '_none' && (\n <h3 className={`${baseClass}__block-group-label`}>{groupLabel}</h3>\n )}\n <ul className={`${baseClass}__blocks`}>\n {groupBlocks.map((_block, index) => {\n const block = typeof _block === 'string' ? config.blocksMap[_block] : _block\n\n const { slug, imageAltText, imageURL, labels: blockLabels } = block\n\n return (\n <li className={`${baseClass}__block`} key={index}>\n <ThumbnailCard\n alignLabel=\"center\"\n label={getTranslation(blockLabels?.singular, i18n)}\n onClick={() => {\n void addRow(addRowIndex, slug)\n closeModal(drawerSlug)\n }}\n thumbnail={\n imageURL ? (\n <img alt={imageAltText} src={imageURL} />\n ) : (\n <div className={`${baseClass}__default-image`}>\n <DefaultBlockImage />\n </div>\n )\n }\n />\n </li>\n )\n })}\n </ul>\n </li>\n ),\n )}\n </ul>\n </div>\n </Drawer>\n )\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -21,6 +21,32 @@
|
|
|
21
21
|
padding-top: base(0.75);
|
|
22
22
|
}
|
|
23
23
|
|
|
24
|
+
&__block-groups {
|
|
25
|
+
padding: 0;
|
|
26
|
+
display: flex;
|
|
27
|
+
flex-direction: column;
|
|
28
|
+
gap: base(1.5);
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
&__block-group {
|
|
32
|
+
list-style: none;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
&__block-group-label {
|
|
36
|
+
padding-bottom: base(0.5);
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
&__block-group-none {
|
|
40
|
+
order: 1;
|
|
41
|
+
padding-top: base(1.5);
|
|
42
|
+
border-top: 1px solid var(--theme-border-color);
|
|
43
|
+
|
|
44
|
+
&:only-child {
|
|
45
|
+
padding-top: 0;
|
|
46
|
+
border-top: 0;
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
|
|
24
50
|
@include large-break {
|
|
25
51
|
&__blocks {
|
|
26
52
|
grid-template-columns: repeat(5, 1fr);
|
|
@@ -31,10 +57,19 @@
|
|
|
31
57
|
&__blocks-wrapper {
|
|
32
58
|
padding-top: base(1.75);
|
|
33
59
|
}
|
|
60
|
+
|
|
34
61
|
&__blocks {
|
|
35
62
|
grid-template-columns: repeat(3, 1fr);
|
|
36
63
|
gap: base(0.5);
|
|
37
64
|
}
|
|
65
|
+
|
|
66
|
+
&__block-groups {
|
|
67
|
+
gap: base(1.75);
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
&__block-group-none {
|
|
71
|
+
padding-top: base(1.75);
|
|
72
|
+
}
|
|
38
73
|
}
|
|
39
74
|
|
|
40
75
|
@include small-break {
|
|
@@ -45,6 +80,14 @@
|
|
|
45
80
|
&__blocks {
|
|
46
81
|
grid-template-columns: repeat(2, 1fr);
|
|
47
82
|
}
|
|
83
|
+
|
|
84
|
+
&__block-groups {
|
|
85
|
+
gap: base(0.75);
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
&__block-group-none {
|
|
89
|
+
padding-top: base(0.75);
|
|
90
|
+
}
|
|
48
91
|
}
|
|
49
92
|
}
|
|
50
93
|
}
|