@payloadcms/ui 3.59.0-internal.152bf35 → 3.59.0-internal.220ef7e
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/Collapsible/index.d.ts +2 -15
- package/dist/elements/Collapsible/index.d.ts.map +1 -1
- package/dist/elements/Collapsible/index.js +60 -59
- package/dist/elements/Collapsible/index.js.map +1 -1
- package/dist/elements/Collapsible/index.scss +2 -6
- package/dist/elements/DocumentLocked/index.js +1 -1
- package/dist/elements/DocumentLocked/index.js.map +1 -1
- package/dist/elements/RelationshipTable/index.d.ts.map +1 -1
- package/dist/elements/RelationshipTable/index.js +3 -2
- package/dist/elements/RelationshipTable/index.js.map +1 -1
- package/dist/elements/Table/index.scss +1 -0
- package/dist/exports/client/index.js +10 -10
- package/dist/exports/client/index.js.map +3 -3
- package/dist/fields/Code/index.d.ts.map +1 -1
- package/dist/fields/Code/index.js +1 -3
- package/dist/fields/Code/index.js.map +1 -1
- package/dist/fields/Upload/RelationshipContent/index.js +1 -1
- package/dist/fields/Upload/RelationshipContent/index.js.map +1 -1
- package/dist/providers/LivePreview/index.d.ts.map +1 -1
- package/dist/providers/LivePreview/index.js +3 -0
- package/dist/providers/LivePreview/index.js.map +1 -1
- package/dist/styles.css +1 -1
- package/dist/utilities/getColumns.js +1 -1
- package/dist/utilities/getColumns.js.map +1 -1
- package/dist/views/Edit/index.d.ts.map +1 -1
- package/dist/views/Edit/index.js +5 -1
- package/dist/views/Edit/index.js.map +1 -1
- package/package.json +5 -5
|
@@ -3,29 +3,16 @@ import type { DragHandleProps } from '../DraggableSortable/DraggableSortableItem
|
|
|
3
3
|
import './index.scss';
|
|
4
4
|
import { CollapsibleProvider, useCollapsible } from './provider.js';
|
|
5
5
|
export { CollapsibleProvider, useCollapsible };
|
|
6
|
-
export type
|
|
6
|
+
export type Props = {
|
|
7
7
|
actions?: React.ReactNode;
|
|
8
|
-
/**
|
|
9
|
-
* Components that will be rendered within the collapsible provider but after the wrapper.
|
|
10
|
-
*/
|
|
11
|
-
AfterCollapsible?: React.ReactNode;
|
|
12
8
|
children: React.ReactNode;
|
|
13
9
|
className?: string;
|
|
14
10
|
collapsibleStyle?: 'default' | 'error';
|
|
15
|
-
/**
|
|
16
|
-
* If set to true, clicking on the collapsible header will not toggle the collapsible state.
|
|
17
|
-
* This is useful if the collapsible state is controlled externally (e.g. from a parent component or custom button).
|
|
18
|
-
*/
|
|
19
|
-
disableHeaderToggle?: boolean;
|
|
20
|
-
/**
|
|
21
|
-
* If set to true, the toggle indicator (chevron) on the right side of the header will be hidden.
|
|
22
|
-
*/
|
|
23
|
-
disableToggleIndicator?: boolean;
|
|
24
11
|
dragHandleProps?: DragHandleProps;
|
|
25
12
|
header?: React.ReactNode;
|
|
26
13
|
initCollapsed?: boolean;
|
|
27
14
|
isCollapsed?: boolean;
|
|
28
15
|
onToggle?: (collapsed: boolean) => Promise<void> | void;
|
|
29
16
|
};
|
|
30
|
-
export declare const Collapsible: React.FC<
|
|
17
|
+
export declare const Collapsible: React.FC<Props>;
|
|
31
18
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/Collapsible/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAmB,MAAM,OAAO,CAAA;AAEvC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qDAAqD,CAAA;AAK1F,OAAO,cAAc,CAAA;AAErB,OAAO,EAAE,mBAAmB,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAInE,OAAO,EAAE,mBAAmB,EAAE,cAAc,EAAE,CAAA;AAE9C,MAAM,MAAM,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/Collapsible/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAmB,MAAM,OAAO,CAAA;AAEvC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qDAAqD,CAAA;AAK1F,OAAO,cAAc,CAAA;AAErB,OAAO,EAAE,mBAAmB,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAInE,OAAO,EAAE,mBAAmB,EAAE,cAAc,EAAE,CAAA;AAE9C,MAAM,MAAM,KAAK,GAAG;IAClB,OAAO,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IACzB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;IACzB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,gBAAgB,CAAC,EAAE,SAAS,GAAG,OAAO,CAAA;IACtC,eAAe,CAAC,EAAE,eAAe,CAAA;IACjC,MAAM,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IACxB,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,QAAQ,CAAC,EAAE,CAAC,SAAS,EAAE,OAAO,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAA;CACxD,CAAA;AAED,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CA2FvC,CAAA"}
|
|
@@ -12,15 +12,12 @@ import { CollapsibleProvider, useCollapsible } from './provider.js';
|
|
|
12
12
|
const baseClass = 'collapsible';
|
|
13
13
|
export { CollapsibleProvider, useCollapsible };
|
|
14
14
|
export const Collapsible = t0 => {
|
|
15
|
-
const $ = _c(
|
|
15
|
+
const $ = _c(24);
|
|
16
16
|
const {
|
|
17
17
|
actions,
|
|
18
|
-
AfterCollapsible,
|
|
19
18
|
children,
|
|
20
19
|
className,
|
|
21
20
|
collapsibleStyle: t1,
|
|
22
|
-
disableHeaderToggle: t2,
|
|
23
|
-
disableToggleIndicator: t3,
|
|
24
21
|
dragHandleProps,
|
|
25
22
|
header,
|
|
26
23
|
initCollapsed,
|
|
@@ -28,8 +25,6 @@ export const Collapsible = t0 => {
|
|
|
28
25
|
onToggle
|
|
29
26
|
} = t0;
|
|
30
27
|
const collapsibleStyle = t1 === undefined ? "default" : t1;
|
|
31
|
-
const disableHeaderToggle = t2 === undefined ? false : t2;
|
|
32
|
-
const disableToggleIndicator = t3 === undefined ? false : t3;
|
|
33
28
|
const [collapsedLocal, setCollapsedLocal] = useState(Boolean(initCollapsed));
|
|
34
29
|
const [hoveringToggle, setHoveringToggle] = useState(false);
|
|
35
30
|
const {
|
|
@@ -39,9 +34,9 @@ export const Collapsible = t0 => {
|
|
|
39
34
|
t
|
|
40
35
|
} = useTranslation();
|
|
41
36
|
const isCollapsed = typeof collapsedFromProps === "boolean" ? collapsedFromProps : collapsedLocal;
|
|
42
|
-
let
|
|
37
|
+
let t2;
|
|
43
38
|
if ($[0] !== isCollapsed || $[1] !== onToggle) {
|
|
44
|
-
|
|
39
|
+
t2 = () => {
|
|
45
40
|
if (typeof onToggle === "function") {
|
|
46
41
|
onToggle(!isCollapsed);
|
|
47
42
|
}
|
|
@@ -49,55 +44,64 @@ export const Collapsible = t0 => {
|
|
|
49
44
|
};
|
|
50
45
|
$[0] = isCollapsed;
|
|
51
46
|
$[1] = onToggle;
|
|
52
|
-
$[2] =
|
|
47
|
+
$[2] = t2;
|
|
53
48
|
} else {
|
|
54
|
-
|
|
49
|
+
t2 = $[2];
|
|
55
50
|
}
|
|
56
|
-
const toggleCollapsible =
|
|
57
|
-
const
|
|
58
|
-
const
|
|
59
|
-
const
|
|
60
|
-
const
|
|
61
|
-
const
|
|
62
|
-
let
|
|
63
|
-
if ($[3] !== className || $[4] !==
|
|
64
|
-
|
|
51
|
+
const toggleCollapsible = t2;
|
|
52
|
+
const t3 = dragHandleProps && `${baseClass}--has-drag-handle`;
|
|
53
|
+
const t4 = isCollapsed && `${baseClass}--collapsed`;
|
|
54
|
+
const t5 = isWithinCollapsible && `${baseClass}--nested`;
|
|
55
|
+
const t6 = hoveringToggle && `${baseClass}--hovered`;
|
|
56
|
+
const t7 = `${baseClass}--style-${collapsibleStyle}`;
|
|
57
|
+
let t8;
|
|
58
|
+
if ($[3] !== className || $[4] !== t3 || $[5] !== t4 || $[6] !== t5 || $[7] !== t6 || $[8] !== t7) {
|
|
59
|
+
t8 = [baseClass, className, t3, t4, t5, t6, t7].filter(Boolean);
|
|
65
60
|
$[3] = className;
|
|
66
|
-
$[4] =
|
|
67
|
-
$[5] =
|
|
68
|
-
$[6] =
|
|
69
|
-
$[7] =
|
|
70
|
-
$[8] =
|
|
71
|
-
$[9] =
|
|
61
|
+
$[4] = t3;
|
|
62
|
+
$[5] = t4;
|
|
63
|
+
$[6] = t5;
|
|
64
|
+
$[7] = t6;
|
|
65
|
+
$[8] = t7;
|
|
66
|
+
$[9] = t8;
|
|
72
67
|
} else {
|
|
73
|
-
|
|
68
|
+
t8 = $[9];
|
|
74
69
|
}
|
|
75
|
-
const
|
|
76
|
-
|
|
77
|
-
let
|
|
78
|
-
let t14;
|
|
70
|
+
const t9 = t8.join(" ");
|
|
71
|
+
let t10;
|
|
72
|
+
let t11;
|
|
79
73
|
if ($[10] === Symbol.for("react.memo_cache_sentinel")) {
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
$[10] =
|
|
83
|
-
$[11] =
|
|
74
|
+
t10 = () => setHoveringToggle(true);
|
|
75
|
+
t11 = () => setHoveringToggle(false);
|
|
76
|
+
$[10] = t10;
|
|
77
|
+
$[11] = t11;
|
|
78
|
+
} else {
|
|
79
|
+
t10 = $[10];
|
|
80
|
+
t11 = $[11];
|
|
81
|
+
}
|
|
82
|
+
const t12 = `${baseClass}__toggle--${isCollapsed ? "collapsed" : "open"}`;
|
|
83
|
+
let t13;
|
|
84
|
+
if ($[12] !== t12) {
|
|
85
|
+
t13 = [`${baseClass}__toggle`, t12].filter(Boolean);
|
|
86
|
+
$[12] = t12;
|
|
87
|
+
$[13] = t13;
|
|
84
88
|
} else {
|
|
85
|
-
t13 = $[
|
|
86
|
-
t14 = $[11];
|
|
89
|
+
t13 = $[13];
|
|
87
90
|
}
|
|
91
|
+
const t14 = t13.join(" ");
|
|
88
92
|
let t15;
|
|
89
|
-
if ($[
|
|
93
|
+
if ($[14] !== actions || $[15] !== children || $[16] !== dragHandleProps || $[17] !== header || $[18] !== isCollapsed || $[19] !== t || $[20] !== t14 || $[21] !== t9 || $[22] !== toggleCollapsible) {
|
|
90
94
|
t15 = _jsx("div", {
|
|
91
|
-
className:
|
|
95
|
+
className: t9,
|
|
92
96
|
children: _jsxs(CollapsibleProvider, {
|
|
93
97
|
isCollapsed,
|
|
94
98
|
toggle: toggleCollapsible,
|
|
95
99
|
children: [_jsxs("div", {
|
|
96
|
-
className:
|
|
97
|
-
onMouseEnter:
|
|
98
|
-
onMouseLeave:
|
|
99
|
-
children: [
|
|
100
|
-
className:
|
|
100
|
+
className: `${baseClass}__toggle-wrap`,
|
|
101
|
+
onMouseEnter: t10,
|
|
102
|
+
onMouseLeave: t11,
|
|
103
|
+
children: [_jsx("button", {
|
|
104
|
+
className: t14,
|
|
101
105
|
onClick: toggleCollapsible,
|
|
102
106
|
type: "button",
|
|
103
107
|
children: _jsx("span", {
|
|
@@ -116,7 +120,7 @@ export const Collapsible = t0 => {
|
|
|
116
120
|
children: [actions ? _jsx("div", {
|
|
117
121
|
className: `${baseClass}__actions`,
|
|
118
122
|
children: actions
|
|
119
|
-
}) : null,
|
|
123
|
+
}) : null, _jsx("div", {
|
|
120
124
|
className: `${baseClass}__indicator`,
|
|
121
125
|
children: _jsx(ChevronIcon, {
|
|
122
126
|
direction: !isCollapsed ? "up" : undefined
|
|
@@ -129,24 +133,21 @@ export const Collapsible = t0 => {
|
|
|
129
133
|
className: `${baseClass}__content`,
|
|
130
134
|
children
|
|
131
135
|
})
|
|
132
|
-
})
|
|
136
|
+
})]
|
|
133
137
|
})
|
|
134
138
|
});
|
|
135
|
-
$[
|
|
136
|
-
$[
|
|
137
|
-
$[
|
|
138
|
-
$[
|
|
139
|
-
$[
|
|
140
|
-
$[
|
|
141
|
-
$[
|
|
142
|
-
$[
|
|
143
|
-
$[
|
|
144
|
-
$[
|
|
145
|
-
$[22] = t12;
|
|
146
|
-
$[23] = toggleCollapsible;
|
|
147
|
-
$[24] = t15;
|
|
139
|
+
$[14] = actions;
|
|
140
|
+
$[15] = children;
|
|
141
|
+
$[16] = dragHandleProps;
|
|
142
|
+
$[17] = header;
|
|
143
|
+
$[18] = isCollapsed;
|
|
144
|
+
$[19] = t;
|
|
145
|
+
$[20] = t14;
|
|
146
|
+
$[21] = t9;
|
|
147
|
+
$[22] = toggleCollapsible;
|
|
148
|
+
$[23] = t15;
|
|
148
149
|
} else {
|
|
149
|
-
t15 = $[
|
|
150
|
+
t15 = $[23];
|
|
150
151
|
}
|
|
151
152
|
return t15;
|
|
152
153
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["c","_c","React","useState","ChevronIcon","DragHandleIcon","useTranslation","AnimateHeight","CollapsibleProvider","useCollapsible","baseClass","Collapsible","t0","$","actions","
|
|
1
|
+
{"version":3,"file":"index.js","names":["c","_c","React","useState","ChevronIcon","DragHandleIcon","useTranslation","AnimateHeight","CollapsibleProvider","useCollapsible","baseClass","Collapsible","t0","$","actions","children","className","collapsibleStyle","t1","dragHandleProps","header","initCollapsed","isCollapsed","collapsedFromProps","onToggle","undefined","collapsedLocal","setCollapsedLocal","Boolean","hoveringToggle","setHoveringToggle","isWithinCollapsible","t","t2","toggleCollapsible","t3","t4","t5","t6","t7","t8","filter","t9","join","t10","t11","Symbol","for","t12","t13","t14","t15","_jsx","_jsxs","toggle","onMouseEnter","onMouseLeave","onClick","type","attributes","listeners","direction","height"],"sources":["../../../src/elements/Collapsible/index.tsx"],"sourcesContent":["'use client'\nimport React, { useState } from 'react'\n\nimport type { DragHandleProps } from '../DraggableSortable/DraggableSortableItem/types.js'\n\nimport { ChevronIcon } from '../../icons/Chevron/index.js'\nimport { DragHandleIcon } from '../../icons/DragHandle/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport './index.scss'\nimport { AnimateHeight } from '../AnimateHeight/index.js'\nimport { CollapsibleProvider, useCollapsible } from './provider.js'\n\nconst baseClass = 'collapsible'\n\nexport { CollapsibleProvider, useCollapsible }\n\nexport type Props = {\n actions?: React.ReactNode\n children: React.ReactNode\n className?: string\n collapsibleStyle?: 'default' | 'error'\n dragHandleProps?: DragHandleProps\n header?: React.ReactNode\n initCollapsed?: boolean\n isCollapsed?: boolean\n onToggle?: (collapsed: boolean) => Promise<void> | void\n}\n\nexport const Collapsible: React.FC<Props> = ({\n actions,\n children,\n className,\n collapsibleStyle = 'default',\n dragHandleProps,\n header,\n initCollapsed,\n isCollapsed: collapsedFromProps,\n onToggle,\n}) => {\n const [collapsedLocal, setCollapsedLocal] = useState(Boolean(initCollapsed))\n const [hoveringToggle, setHoveringToggle] = useState(false)\n const { isWithinCollapsible } = useCollapsible()\n const { t } = useTranslation()\n\n const isCollapsed = typeof collapsedFromProps === 'boolean' ? collapsedFromProps : collapsedLocal\n\n const toggleCollapsible = React.useCallback(() => {\n if (typeof onToggle === 'function') {\n void onToggle(!isCollapsed)\n }\n setCollapsedLocal(!isCollapsed)\n }, [onToggle, isCollapsed])\n\n return (\n <div\n className={[\n baseClass,\n className,\n dragHandleProps && `${baseClass}--has-drag-handle`,\n isCollapsed && `${baseClass}--collapsed`,\n isWithinCollapsible && `${baseClass}--nested`,\n hoveringToggle && `${baseClass}--hovered`,\n `${baseClass}--style-${collapsibleStyle}`,\n ]\n .filter(Boolean)\n .join(' ')}\n >\n <CollapsibleProvider isCollapsed={isCollapsed} toggle={toggleCollapsible}>\n <div\n className={`${baseClass}__toggle-wrap`}\n onMouseEnter={() => setHoveringToggle(true)}\n onMouseLeave={() => setHoveringToggle(false)}\n >\n <button\n className={[\n `${baseClass}__toggle`,\n `${baseClass}__toggle--${isCollapsed ? 'collapsed' : 'open'}`,\n ]\n .filter(Boolean)\n .join(' ')}\n onClick={toggleCollapsible}\n type=\"button\"\n >\n <span>{t('fields:toggleBlock')}</span>\n </button>\n {dragHandleProps && (\n <div\n className={`${baseClass}__drag`}\n {...dragHandleProps.attributes}\n {...dragHandleProps.listeners}\n >\n <DragHandleIcon />\n </div>\n )}\n {header ? (\n <div\n className={[\n `${baseClass}__header-wrap`,\n dragHandleProps && `${baseClass}__header-wrap--has-drag-handle`,\n ]\n .filter(Boolean)\n .join(' ')}\n >\n {header}\n </div>\n ) : null}\n <div className={`${baseClass}__actions-wrap`}>\n {actions ? <div className={`${baseClass}__actions`}>{actions}</div> : null}\n <div className={`${baseClass}__indicator`}>\n <ChevronIcon direction={!isCollapsed ? 'up' : undefined} />\n </div>\n </div>\n </div>\n <AnimateHeight height={isCollapsed ? 0 : 'auto'}>\n <div className={`${baseClass}__content`}>{children}</div>\n </AnimateHeight>\n </CollapsibleProvider>\n </div>\n )\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
|
|
3
3
|
@layer payload-default {
|
|
4
4
|
.collapsible {
|
|
5
|
-
position: relative;
|
|
6
5
|
--toggle-pad-h: #{base(0.75)};
|
|
7
6
|
--toggle-pad-v: #{base(0.6)};
|
|
8
7
|
|
|
@@ -21,7 +20,7 @@
|
|
|
21
20
|
border-top-left-radius: $style-radius-m;
|
|
22
21
|
width: 100%;
|
|
23
22
|
|
|
24
|
-
&:
|
|
23
|
+
&:hover {
|
|
25
24
|
background: var(--theme-elevation-100);
|
|
26
25
|
}
|
|
27
26
|
|
|
@@ -48,6 +47,7 @@
|
|
|
48
47
|
@extend %btn-reset;
|
|
49
48
|
@extend %body;
|
|
50
49
|
text-align: left;
|
|
50
|
+
cursor: pointer;
|
|
51
51
|
border-top-right-radius: $style-radius-m;
|
|
52
52
|
border-top-left-radius: $style-radius-m;
|
|
53
53
|
width: 100%;
|
|
@@ -57,10 +57,6 @@
|
|
|
57
57
|
top: 0;
|
|
58
58
|
left: 0;
|
|
59
59
|
|
|
60
|
-
&:not(.toggle-disabled) {
|
|
61
|
-
cursor: pointer;
|
|
62
|
-
}
|
|
63
|
-
|
|
64
60
|
span {
|
|
65
61
|
user-select: none;
|
|
66
62
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["c","_c","React","useEffect","useRouteCache","useRouteTransition","useTranslation","isClientUserObject","Button","Modal","useModal","modalSlug","baseClass","formatDate","date","Intl","DateTimeFormat","day","hour","hour12","minute","month","year","format","DocumentLocked","t0","$","handleGoBack","isActive","onReadOnly","onTakeOver","updatedAt","user","closeModal","openModal","t","clearRouteCache","startRouteTransition","t1","t2","t3","t4","t5","email","id","t6","t7","t8","_jsx","className","closeOnBlur","onClose","slug","children","_jsxs","buttonStyle","onClick","size"],"sources":["../../../src/elements/DocumentLocked/index.tsx"],"sourcesContent":["'use client'\nimport type { ClientUser } from 'payload'\n\nimport React, { useEffect } from 'react'\n\nimport { useRouteCache } from '../../providers/RouteCache/index.js'\nimport { useRouteTransition } from '../../providers/RouteTransition/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { isClientUserObject } from '../../utilities/isClientUserObject.js'\nimport { Button } from '../Button/index.js'\nimport { Modal, useModal } from '../Modal/index.js'\nimport './index.scss'\n\nconst modalSlug = 'document-locked'\n\nconst baseClass = 'document-locked'\n\nconst formatDate = (date) => {\n if (!date) {\n return ''\n }\n return new Intl.DateTimeFormat('en-US', {\n day: 'numeric',\n hour: 'numeric',\n hour12: true,\n minute: 'numeric',\n month: 'short',\n year: 'numeric',\n }).format(date)\n}\n\nexport const DocumentLocked: React.FC<{\n handleGoBack: () => void\n isActive: boolean\n onReadOnly: () => void\n onTakeOver: () => void\n updatedAt?: null | number\n user?: ClientUser | number | string\n}> = ({ handleGoBack, isActive, onReadOnly, onTakeOver, updatedAt, user }) => {\n const { closeModal, openModal } = useModal()\n const { t } = useTranslation()\n const { clearRouteCache } = useRouteCache()\n const { startRouteTransition } = useRouteTransition()\n\n useEffect(() => {\n if (isActive) {\n openModal(modalSlug)\n } else {\n closeModal(modalSlug)\n }\n }, [isActive, openModal, closeModal])\n\n return (\n <Modal\n className={baseClass}\n // Fixes https://github.com/payloadcms/payload/issues/13778\n closeOnBlur={false}\n onClose={() => {\n startRouteTransition(() => handleGoBack())\n }}\n slug={modalSlug}\n >\n <div className={`${baseClass}__wrapper`}>\n <div className={`${baseClass}__content`}>\n <h1>{t('general:documentLocked')}</h1>\n <p>\n <strong>\n {isClientUserObject(user) ? (user.email ?? user.id) : `${t('general:user')}: ${user}`}\n </strong>{' '}\n {t('general:currentlyEditing')}\n </p>\n <p>\n {t('general:editedSince')} <strong>{formatDate(updatedAt)}</strong>\n </p>\n </div>\n <div className={`${baseClass}__controls`}>\n <Button\n buttonStyle=\"secondary\"\n id={`${modalSlug}-go-back`}\n onClick={() => {\n startRouteTransition(() => handleGoBack())\n }}\n size=\"large\"\n >\n {t('general:goBack')}\n </Button>\n <Button\n buttonStyle=\"secondary\"\n id={`${modalSlug}-view-read-only`}\n onClick={() => {\n onReadOnly()\n closeModal(modalSlug)\n clearRouteCache()\n }}\n size=\"large\"\n >\n {t('general:viewReadOnly')}\n </Button>\n <Button\n buttonStyle=\"primary\"\n id={`${modalSlug}-take-over`}\n onClick={() => {\n onTakeOver()\n closeModal(modalSlug)\n }}\n size=\"large\"\n >\n {t('general:takeOver')}\n </Button>\n </div>\n </div>\n </Modal>\n )\n}\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AAGA,OAAOC,KAAA,IAASC,SAAS,QAAQ;AAEjC,SAASC,aAAa,QAAQ;AAC9B,SAASC,kBAAkB,QAAQ;AACnC,SAASC,cAAc,QAAQ;AAC/B,SAASC,kBAAkB,QAAQ;AACnC,SAASC,MAAM,QAAQ;AACvB,SAASC,KAAK,EAAEC,QAAQ,QAAQ;AAChC,OAAO;AAEP,MAAMC,SAAA,GAAY;AAElB,MAAMC,SAAA,GAAY;AAElB,MAAMC,UAAA,GAAcC,IAAA;EAClB,IAAI,CAACA,IAAA,EAAM;IACT,OAAO;EACT;EACA,OAAO,IAAIC,IAAA,CAAKC,cAAc,CAAC,SAAS;IACtCC,GAAA,EAAK;IACLC,IAAA,EAAM;IACNC,MAAA,EAAQ;IACRC,MAAA,EAAQ;IACRC,KAAA,EAAO;IACPC,IAAA,EAAM;EACR,GAAGC,MAAM,
|
|
1
|
+
{"version":3,"file":"index.js","names":["c","_c","React","useEffect","useRouteCache","useRouteTransition","useTranslation","isClientUserObject","Button","Modal","useModal","modalSlug","baseClass","formatDate","date","Intl","DateTimeFormat","day","hour","hour12","minute","month","year","format","Date","DocumentLocked","t0","$","handleGoBack","isActive","onReadOnly","onTakeOver","updatedAt","user","closeModal","openModal","t","clearRouteCache","startRouteTransition","t1","t2","t3","t4","t5","email","id","t6","t7","t8","_jsx","className","closeOnBlur","onClose","slug","children","_jsxs","buttonStyle","onClick","size"],"sources":["../../../src/elements/DocumentLocked/index.tsx"],"sourcesContent":["'use client'\nimport type { ClientUser } from 'payload'\n\nimport React, { useEffect } from 'react'\n\nimport { useRouteCache } from '../../providers/RouteCache/index.js'\nimport { useRouteTransition } from '../../providers/RouteTransition/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { isClientUserObject } from '../../utilities/isClientUserObject.js'\nimport { Button } from '../Button/index.js'\nimport { Modal, useModal } from '../Modal/index.js'\nimport './index.scss'\n\nconst modalSlug = 'document-locked'\n\nconst baseClass = 'document-locked'\n\nconst formatDate = (date) => {\n if (!date) {\n return ''\n }\n return new Intl.DateTimeFormat('en-US', {\n day: 'numeric',\n hour: 'numeric',\n hour12: true,\n minute: 'numeric',\n month: 'short',\n year: 'numeric',\n }).format(new Date(date))\n}\n\nexport const DocumentLocked: React.FC<{\n handleGoBack: () => void\n isActive: boolean\n onReadOnly: () => void\n onTakeOver: () => void\n updatedAt?: null | number\n user?: ClientUser | number | string\n}> = ({ handleGoBack, isActive, onReadOnly, onTakeOver, updatedAt, user }) => {\n const { closeModal, openModal } = useModal()\n const { t } = useTranslation()\n const { clearRouteCache } = useRouteCache()\n const { startRouteTransition } = useRouteTransition()\n\n useEffect(() => {\n if (isActive) {\n openModal(modalSlug)\n } else {\n closeModal(modalSlug)\n }\n }, [isActive, openModal, closeModal])\n\n return (\n <Modal\n className={baseClass}\n // Fixes https://github.com/payloadcms/payload/issues/13778\n closeOnBlur={false}\n onClose={() => {\n startRouteTransition(() => handleGoBack())\n }}\n slug={modalSlug}\n >\n <div className={`${baseClass}__wrapper`}>\n <div className={`${baseClass}__content`}>\n <h1>{t('general:documentLocked')}</h1>\n <p>\n <strong>\n {isClientUserObject(user) ? (user.email ?? user.id) : `${t('general:user')}: ${user}`}\n </strong>{' '}\n {t('general:currentlyEditing')}\n </p>\n <p>\n {t('general:editedSince')} <strong>{formatDate(updatedAt)}</strong>\n </p>\n </div>\n <div className={`${baseClass}__controls`}>\n <Button\n buttonStyle=\"secondary\"\n id={`${modalSlug}-go-back`}\n onClick={() => {\n startRouteTransition(() => handleGoBack())\n }}\n size=\"large\"\n >\n {t('general:goBack')}\n </Button>\n <Button\n buttonStyle=\"secondary\"\n id={`${modalSlug}-view-read-only`}\n onClick={() => {\n onReadOnly()\n closeModal(modalSlug)\n clearRouteCache()\n }}\n size=\"large\"\n >\n {t('general:viewReadOnly')}\n </Button>\n <Button\n buttonStyle=\"primary\"\n id={`${modalSlug}-take-over`}\n onClick={() => {\n onTakeOver()\n closeModal(modalSlug)\n }}\n size=\"large\"\n >\n {t('general:takeOver')}\n </Button>\n </div>\n </div>\n </Modal>\n )\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/RelationshipTable/index.tsx"],"names":[],"mappings":"AAEA,OAAO,EACL,KAAK,cAAc,EAEnB,KAAK,eAAe,EAEpB,KAAK,aAAa,EAClB,KAAK,KAAK,EACX,MAAM,SAAS,CAAA;AAEhB,OAAO,KAA6D,MAAM,OAAO,CAAA;AAEjF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAA;AAkBrE,OAAO,cAAc,CAAA;AAIrB,KAAK,+BAA+B,GAAG;IACrC,QAAQ,CAAC,UAAU,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IACrC,QAAQ,CAAC,WAAW,CAAC,EAAE,OAAO,CAAA;IAC9B,QAAQ,CAAC,WAAW,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IACtC,QAAQ,CAAC,YAAY,CAAC,EAAE,OAAO,CAAA;IAC/B,QAAQ,CAAC,KAAK,EAAE,eAAe,CAAA;IAC/B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,aAAa,CAAC,EAAE,KAAK,CAAA;IAC9B,QAAQ,CAAC,WAAW,CAAC,EAAE,aAAa,CAAA;IACpC,QAAQ,CAAC,iBAAiB,CAAC,EAAE,mBAAmB,CAAC,aAAa,CAAC,CAAA;IAC/D,QAAQ,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAChC,QAAQ,CAAC,MAAM,CAAC,EAAE;QAChB,cAAc,EAAE,cAAc,CAAA;QAC9B,EAAE,EAAE,MAAM,GAAG,MAAM,CAAA;QACnB,QAAQ,EAAE,MAAM,CAAA;KACjB,CAAA;IACD,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,EAAE,CAAA;CACvC,CAAA;AAED,MAAM,MAAM,YAAY,GAAG,CAAC,EAAE,CAAC,EAAE,MAAM,KAAK,IAAI,CAAA;AAEhD,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAAE,CAAC,+BAA+B,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/RelationshipTable/index.tsx"],"names":[],"mappings":"AAEA,OAAO,EACL,KAAK,cAAc,EAEnB,KAAK,eAAe,EAEpB,KAAK,aAAa,EAClB,KAAK,KAAK,EACX,MAAM,SAAS,CAAA;AAEhB,OAAO,KAA6D,MAAM,OAAO,CAAA;AAEjF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAA;AAkBrE,OAAO,cAAc,CAAA;AAIrB,KAAK,+BAA+B,GAAG;IACrC,QAAQ,CAAC,UAAU,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IACrC,QAAQ,CAAC,WAAW,CAAC,EAAE,OAAO,CAAA;IAC9B,QAAQ,CAAC,WAAW,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IACtC,QAAQ,CAAC,YAAY,CAAC,EAAE,OAAO,CAAA;IAC/B,QAAQ,CAAC,KAAK,EAAE,eAAe,CAAA;IAC/B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,aAAa,CAAC,EAAE,KAAK,CAAA;IAC9B,QAAQ,CAAC,WAAW,CAAC,EAAE,aAAa,CAAA;IACpC,QAAQ,CAAC,iBAAiB,CAAC,EAAE,mBAAmB,CAAC,aAAa,CAAC,CAAA;IAC/D,QAAQ,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAChC,QAAQ,CAAC,MAAM,CAAC,EAAE;QAChB,cAAc,EAAE,cAAc,CAAA;QAC9B,EAAE,EAAE,MAAM,GAAG,MAAM,CAAA;QACnB,QAAQ,EAAE,MAAM,CAAA;KACjB,CAAA;IACD,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,EAAE,CAAA;CACvC,CAAA;AAED,MAAM,MAAM,YAAY,GAAG,CAAC,EAAE,CAAC,EAAE,MAAM,KAAK,IAAI,CAAA;AAEhD,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAAE,CAAC,+BAA+B,CAuVvE,CAAA"}
|
|
@@ -99,6 +99,7 @@ export const RelationshipTable = props => {
|
|
|
99
99
|
accessor,
|
|
100
100
|
active: true
|
|
101
101
|
})) : undefined;
|
|
102
|
+
const renderRowTypes = typeof field.admin.disableRowTypes === 'boolean' ? !field.admin.disableRowTypes : Array.isArray(relationTo);
|
|
102
103
|
const {
|
|
103
104
|
data: newData,
|
|
104
105
|
state: newColumnState,
|
|
@@ -111,14 +112,14 @@ export const RelationshipTable = props => {
|
|
|
111
112
|
orderableFieldName: !field.orderable || Array.isArray(field.collection) ? undefined : `_${field.collection}_${field.name}_order`,
|
|
112
113
|
parent,
|
|
113
114
|
query: newQuery,
|
|
114
|
-
renderRowTypes
|
|
115
|
+
renderRowTypes,
|
|
115
116
|
tableAppearance: 'condensed'
|
|
116
117
|
});
|
|
117
118
|
setData(newData);
|
|
118
119
|
setTable(NewTable);
|
|
119
120
|
setColumnState(newColumnState);
|
|
120
121
|
setIsLoadingTable(false);
|
|
121
|
-
}, [field.defaultLimit, field.defaultSort, field.admin.defaultColumns, field.collection, field.name, field.orderable, collectionConfig?.admin?.pagination?.defaultLimit, collectionConfig?.defaultSort, query, filterOptions, getTableState, relationTo, parent]);
|
|
122
|
+
}, [field.defaultLimit, field.defaultSort, field.admin.defaultColumns, field.admin.disableRowTypes, field.collection, field.name, field.orderable, collectionConfig?.admin?.pagination?.defaultLimit, collectionConfig?.defaultSort, query, filterOptions, getTableState, relationTo, parent]);
|
|
122
123
|
const handleTableRender = useEffectEvent((query, disableTable) => {
|
|
123
124
|
if (!disableTable && (!Table || query)) {
|
|
124
125
|
void renderTable();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["getTranslation","hoistQueryParamsToAnd","transformColumnsToPreferences","React","Fragment","useCallback","useEffect","useRef","useState","Pill","useEffectEvent","ChevronIcon","useAuth","useConfig","ListQueryProvider","useServerFunctions","TableColumnsProvider","useTranslation","AnimateHeight","ColumnSelector","useDocumentDrawer","RelationshipProvider","AddNewButton","DrawerLink","RelationshipTablePagination","baseClass","RelationshipTable","props","AfterInput","allowCreate","BeforeInput","disableTable","field","fieldPath","filterOptions","initialData","initialDataFromProps","initialDrawerData","Label","parent","relationTo","Table","setTable","config","getEntityConfig","i18n","t","query","setQuery","openColumnSelector","setOpenColumnSelector","collectionConfig","collectionSlug","isPolymorphic","Array","isArray","selectedCollection","setSelectedCollection","undefined","permissions","openDrawerWhenRelationChanges","currentDrawerID","setCurrentDrawerID","DocumentDrawer","closeDrawer","isDrawerOpen","openDrawer","id","isLoadingTable","setIsLoadingTable","data","setData","docs","reduce","acc","doc","columnState","setColumnState","getTableState","renderTable","newQuery","limit","defaultLimit","admin","pagination","sort","defaultSort","where","defaultColumns","map","accessor","active","newData","state","newColumnState","NewTable","columns","enableRowSelections","orderableFieldName","orderable","collection","name","renderRowTypes","tableAppearance","handleTableRender","onDrawerSave","operation","foundDocIndex","findIndex","d","withNewOrUpdatedData","newDocs","onDrawerDelete","args","filter","onDrawerOpen","current","canCreate","collections","create","memoizedListQuery","useMemo","_jsxs","className","_jsx","buttonStyle","icon","label","onClick","direction","pillStyle","size","length","labels","plural","singular","modifySearchParams","onQueryChange","replaceAll","LinkedCellOverride","height","slug","onDelete","onSave"],"sources":["../../../src/elements/RelationshipTable/index.tsx"],"sourcesContent":["'use client'\nimport { getTranslation } from '@payloadcms/translations'\nimport {\n type CollectionSlug,\n type Column,\n type JoinFieldClient,\n type ListQuery,\n type PaginatedDocs,\n type Where,\n} from 'payload'\nimport { hoistQueryParamsToAnd, transformColumnsToPreferences } from 'payload/shared'\nimport React, { Fragment, useCallback, useEffect, useRef, useState } from 'react'\n\nimport type { DocumentDrawerProps } from '../DocumentDrawer/types.js'\n\nimport { Pill } from '../../elements/Pill/index.js'\nimport { useEffectEvent } from '../../hooks/useEffectEvent.js'\nimport { ChevronIcon } from '../../icons/Chevron/index.js'\nimport { useAuth } from '../../providers/Auth/index.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { ListQueryProvider } from '../../providers/ListQuery/index.js'\nimport { useServerFunctions } from '../../providers/ServerFunctions/index.js'\nimport { TableColumnsProvider } from '../../providers/TableColumns/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { AnimateHeight } from '../AnimateHeight/index.js'\nimport { ColumnSelector } from '../ColumnSelector/index.js'\nimport { useDocumentDrawer } from '../DocumentDrawer/index.js'\nimport { RelationshipProvider } from '../Table/RelationshipProvider/index.js'\nimport { AddNewButton } from './AddNewButton.js'\nimport { DrawerLink } from './cells/DrawerLink/index.js'\nimport { RelationshipTablePagination } from './Pagination.js'\nimport './index.scss'\n\nconst baseClass = 'relationship-table'\n\ntype RelationshipTableComponentProps = {\n readonly AfterInput?: React.ReactNode\n readonly allowCreate?: boolean\n readonly BeforeInput?: React.ReactNode\n readonly disableTable?: boolean\n readonly field: JoinFieldClient\n readonly fieldPath?: string\n readonly filterOptions?: Where\n readonly initialData?: PaginatedDocs\n readonly initialDrawerData?: DocumentDrawerProps['initialData']\n readonly Label?: React.ReactNode\n readonly parent?: {\n collectionSlug: CollectionSlug\n id: number | string\n joinPath: string\n }\n readonly relationTo: string | string[]\n}\n\nexport type OnDrawerOpen = (id?: string) => void\n\nexport const RelationshipTable: React.FC<RelationshipTableComponentProps> = (props) => {\n const {\n AfterInput,\n allowCreate = true,\n BeforeInput,\n disableTable = false,\n field,\n fieldPath,\n filterOptions,\n initialData: initialDataFromProps,\n initialDrawerData,\n Label,\n parent,\n relationTo,\n } = props\n const [Table, setTable] = useState<React.ReactNode>(null)\n const { config, getEntityConfig } = useConfig()\n const { i18n, t } = useTranslation()\n\n const [query, setQuery] = useState<ListQuery>()\n const [openColumnSelector, setOpenColumnSelector] = useState(false)\n\n const [collectionConfig] = useState(() => getEntityConfig({ collectionSlug: relationTo }))\n\n const isPolymorphic = Array.isArray(relationTo)\n\n const [selectedCollection, setSelectedCollection] = useState(\n isPolymorphic ? undefined : relationTo,\n )\n\n const { permissions } = useAuth()\n\n const openDrawerWhenRelationChanges = useRef(false)\n\n const [currentDrawerID, setCurrentDrawerID] = useState<string | undefined>(undefined)\n\n const [DocumentDrawer, , { closeDrawer, isDrawerOpen, openDrawer }] = useDocumentDrawer({\n id: currentDrawerID,\n collectionSlug: selectedCollection,\n })\n\n const [isLoadingTable, setIsLoadingTable] = useState(!disableTable)\n\n const [data, setData] = useState<PaginatedDocs>(() =>\n initialDataFromProps\n ? {\n ...initialDataFromProps,\n docs: Array.isArray(initialDataFromProps.docs)\n ? initialDataFromProps.docs.reduce((acc, doc) => {\n if (typeof doc === 'string' || typeof doc === 'number') {\n return [\n ...acc,\n {\n id: doc,\n },\n ]\n }\n\n return [...acc, doc]\n }, [])\n : [],\n }\n : undefined,\n )\n\n const [columnState, setColumnState] = useState<Column[]>()\n\n const { getTableState } = useServerFunctions()\n\n const renderTable = useCallback(\n async (data?: PaginatedDocs) => {\n const newQuery: ListQuery = {\n limit: field?.defaultLimit || collectionConfig?.admin?.pagination?.defaultLimit,\n sort: field.defaultSort || collectionConfig?.defaultSort,\n ...(query || {}),\n where: { ...(query?.where || {}) },\n }\n\n if (filterOptions) {\n newQuery.where = hoistQueryParamsToAnd(newQuery.where, filterOptions)\n }\n\n // map columns from string[] to CollectionPreferences['columns']\n const defaultColumns = field.admin.defaultColumns\n ? field.admin.defaultColumns.map((accessor) => ({\n accessor,\n active: true,\n }))\n : undefined\n\n const {\n data: newData,\n state: newColumnState,\n Table: NewTable,\n } = await getTableState({\n collectionSlug: relationTo,\n columns: transformColumnsToPreferences(query?.columns) || defaultColumns,\n data,\n enableRowSelections: false,\n orderableFieldName:\n !field.orderable || Array.isArray(field.collection)\n ? undefined\n : `_${field.collection}_${field.name}_order`,\n parent,\n query: newQuery,\n renderRowTypes: true,\n tableAppearance: 'condensed',\n })\n\n setData(newData)\n setTable(NewTable)\n setColumnState(newColumnState)\n setIsLoadingTable(false)\n },\n [\n field.defaultLimit,\n field.defaultSort,\n field.admin.defaultColumns,\n field.collection,\n field.name,\n field.orderable,\n collectionConfig?.admin?.pagination?.defaultLimit,\n collectionConfig?.defaultSort,\n query,\n filterOptions,\n getTableState,\n relationTo,\n parent,\n ],\n )\n\n const handleTableRender = useEffectEvent((query: ListQuery, disableTable: boolean) => {\n if (!disableTable && (!Table || query)) {\n void renderTable()\n }\n })\n\n useEffect(() => {\n handleTableRender(query, disableTable)\n }, [query, disableTable])\n\n const onDrawerSave = useCallback<DocumentDrawerProps['onSave']>(\n ({ doc, operation }) => {\n if (operation === 'create') {\n closeDrawer()\n }\n\n const foundDocIndex = data?.docs?.findIndex((d) => d.id === doc.id)\n const withNewOrUpdatedData: PaginatedDocs = { docs: [] } as PaginatedDocs\n\n if (foundDocIndex !== -1) {\n const newDocs = [...data.docs]\n newDocs[foundDocIndex] = doc\n withNewOrUpdatedData.docs = newDocs\n } else {\n withNewOrUpdatedData.docs = [doc, ...data.docs]\n }\n\n void renderTable(withNewOrUpdatedData)\n },\n [data?.docs, renderTable, closeDrawer],\n )\n\n const onDrawerDelete = useCallback<DocumentDrawerProps['onDelete']>(\n (args) => {\n const newDocs = data.docs.filter((doc) => doc.id !== args.id)\n\n void renderTable({\n ...data,\n docs: newDocs,\n })\n\n setCurrentDrawerID(undefined)\n },\n [data, renderTable],\n )\n\n const onDrawerOpen = useCallback<OnDrawerOpen>((id) => {\n openDrawerWhenRelationChanges.current = true\n\n if (id) {\n setCurrentDrawerID(id)\n } else {\n setCurrentDrawerID(undefined)\n }\n }, [])\n\n useEffect(() => {\n if (openDrawerWhenRelationChanges.current) {\n openDrawerWhenRelationChanges.current = false\n openDrawer()\n }\n }, [openDrawer])\n\n useEffect(() => {\n if (!isDrawerOpen) {\n setCurrentDrawerID(undefined)\n }\n }, [isDrawerOpen])\n\n const canCreate =\n allowCreate !== false &&\n permissions?.collections?.[isPolymorphic ? relationTo[0] : relationTo]?.create\n\n useEffect(() => {\n if (isPolymorphic && selectedCollection) {\n openDrawer()\n }\n }, [selectedCollection, openDrawer, isPolymorphic])\n\n useEffect(() => {\n if (isPolymorphic && !isDrawerOpen && selectedCollection) {\n setSelectedCollection(undefined)\n }\n // eslint-disable-next-line react-compiler/react-compiler -- TODO: fix\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [isDrawerOpen])\n\n const memoizedListQuery = React.useMemo(\n () => ({\n columns: transformColumnsToPreferences(columnState)?.map(({ accessor }) => accessor),\n limit: field.defaultLimit ?? collectionConfig?.admin?.pagination?.defaultLimit,\n sort: field.defaultSort ?? collectionConfig?.defaultSort,\n }),\n [columnState, field, collectionConfig],\n )\n\n return (\n <div className={baseClass}>\n <div className={`${baseClass}__header`}>\n {Label}\n <div className={`${baseClass}__actions`}>\n <AddNewButton\n allowCreate={allowCreate !== false}\n baseClass={baseClass}\n buttonStyle=\"none\"\n className={`${baseClass}__add-new${isPolymorphic ? '-polymorphic' : ' doc-drawer__toggler'}`}\n collections={config.collections}\n i18n={i18n}\n icon={isPolymorphic ? 'plus' : undefined}\n label={i18n.t('fields:addNew')}\n onClick={isPolymorphic ? setSelectedCollection : openDrawer}\n permissions={permissions}\n relationTo={relationTo}\n />\n <Pill\n aria-controls={`${baseClass}-columns`}\n aria-expanded={openColumnSelector}\n className={`${baseClass}__toggle-columns ${\n openColumnSelector ? `${baseClass}__buttons-active` : ''\n }`}\n icon={<ChevronIcon direction={openColumnSelector ? 'up' : 'down'} />}\n onClick={() => setOpenColumnSelector(!openColumnSelector)}\n pillStyle=\"light\"\n size=\"small\"\n >\n {t('general:columns')}\n </Pill>\n </div>\n </div>\n {BeforeInput}\n {isLoadingTable ? (\n <p>{t('general:loading')}</p>\n ) : (\n <Fragment>\n {data?.docs && data.docs.length === 0 && (\n <div className={`${baseClass}__no-results`}>\n <p>\n {i18n.t('general:noResults', {\n label: isPolymorphic\n ? i18n.t('general:documents')\n : getTranslation(collectionConfig?.labels?.plural, i18n),\n })}\n </p>\n <AddNewButton\n allowCreate={canCreate}\n baseClass={baseClass}\n collections={config.collections}\n i18n={i18n}\n label={i18n.t('general:createNewLabel', {\n label: isPolymorphic\n ? i18n.t('general:document')\n : getTranslation(collectionConfig?.labels?.singular, i18n),\n })}\n onClick={isPolymorphic ? setSelectedCollection : openDrawer}\n permissions={permissions}\n relationTo={relationTo}\n />\n </div>\n )}\n {data?.docs && data.docs.length > 0 && (\n <RelationshipProvider>\n <ListQueryProvider\n data={data}\n modifySearchParams={false}\n onQueryChange={setQuery}\n orderableFieldName={\n !field.orderable || Array.isArray(field.collection)\n ? undefined\n : `_${field.collection}_${fieldPath.replaceAll('.', '_')}_order`\n }\n query={memoizedListQuery}\n >\n <TableColumnsProvider\n collectionSlug={isPolymorphic ? relationTo[0] : relationTo}\n columnState={columnState}\n LinkedCellOverride={\n <DrawerLink currentDrawerID={currentDrawerID} onDrawerOpen={onDrawerOpen} />\n }\n >\n <AnimateHeight\n className={`${baseClass}__columns`}\n height={openColumnSelector ? 'auto' : 0}\n id={`${baseClass}-columns`}\n >\n <div className={`${baseClass}__columns-inner`}>\n {collectionConfig && (\n <ColumnSelector collectionSlug={collectionConfig.slug} />\n )}\n </div>\n </AnimateHeight>\n {Table}\n <RelationshipTablePagination />\n </TableColumnsProvider>\n </ListQueryProvider>\n </RelationshipProvider>\n )}\n </Fragment>\n )}\n {AfterInput}\n <DocumentDrawer\n initialData={initialDrawerData}\n onDelete={onDrawerDelete}\n onSave={onDrawerSave}\n />\n </div>\n )\n}\n"],"mappings":"AAAA;;;AACA,SAASA,cAAc,QAAQ;AAS/B,SAASC,qBAAqB,EAAEC,6BAA6B,QAAQ;AACrE,OAAOC,KAAA,IAASC,QAAQ,EAAEC,WAAW,EAAEC,SAAS,EAAEC,MAAM,EAAEC,QAAQ,QAAQ;AAI1E,SAASC,IAAI,QAAQ;AACrB,SAASC,cAAc,QAAQ;AAC/B,SAASC,WAAW,QAAQ;AAC5B,SAASC,OAAO,QAAQ;AACxB,SAASC,SAAS,QAAQ;AAC1B,SAASC,iBAAiB,QAAQ;AAClC,SAASC,kBAAkB,QAAQ;AACnC,SAASC,oBAAoB,QAAQ;AACrC,SAASC,cAAc,QAAQ;AAC/B,SAASC,aAAa,QAAQ;AAC9B,SAASC,cAAc,QAAQ;AAC/B,SAASC,iBAAiB,QAAQ;AAClC,SAASC,oBAAoB,QAAQ;AACrC,SAASC,YAAY,QAAQ;AAC7B,SAASC,UAAU,QAAQ;AAC3B,SAASC,2BAA2B,QAAQ;AAC5C,OAAO;AAEP,MAAMC,SAAA,GAAY;AAuBlB,OAAO,MAAMC,iBAAA,GAAgEC,KAAA;EAC3E,MAAM;IACJC,UAAU;IACVC,WAAA,GAAc,IAAI;IAClBC,WAAW;IACXC,YAAA,GAAe,KAAK;IACpBC,KAAK;IACLC,SAAS;IACTC,aAAa;IACbC,WAAA,EAAaC,oBAAoB;IACjCC,iBAAiB;IACjBC,KAAK;IACLC,MAAM;IACNC;EAAU,CACX,GAAGb,KAAA;EACJ,MAAM,CAACc,KAAA,EAAOC,QAAA,CAAS,GAAGlC,QAAA,CAA0B;EACpD,MAAM;IAAEmC,MAAM;IAAEC;EAAe,CAAE,GAAG/B,SAAA;EACpC,MAAM;IAAEgC,IAAI;IAAEC;EAAC,CAAE,GAAG7B,cAAA;EAEpB,MAAM,CAAC8B,KAAA,EAAOC,QAAA,CAAS,GAAGxC,QAAA;EAC1B,MAAM,CAACyC,kBAAA,EAAoBC,qBAAA,CAAsB,GAAG1C,QAAA,CAAS;EAE7D,MAAM,CAAC2C,gBAAA,CAAiB,GAAG3C,QAAA,CAAS,MAAMoC,eAAA,CAAgB;IAAEQ,cAAA,EAAgBZ;EAAW;EAEvF,MAAMa,aAAA,GAAgBC,KAAA,CAAMC,OAAO,CAACf,UAAA;EAEpC,MAAM,CAACgB,kBAAA,EAAoBC,qBAAA,CAAsB,GAAGjD,QAAA,CAClD6C,aAAA,GAAgBK,SAAA,GAAYlB,UAAA;EAG9B,MAAM;IAAEmB;EAAW,CAAE,GAAG/C,OAAA;EAExB,MAAMgD,6BAAA,GAAgCrD,MAAA,CAAO;EAE7C,MAAM,CAACsD,eAAA,EAAiBC,kBAAA,CAAmB,GAAGtD,QAAA,CAA6BkD,SAAA;EAE3E,MAAM,CAACK,cAAA,GAAkB;IAAEC,WAAW;IAAEC,YAAY;IAAEC;EAAU,CAAE,CAAC,GAAG9C,iBAAA,CAAkB;IACtF+C,EAAA,EAAIN,eAAA;IACJT,cAAA,EAAgBI;EAClB;EAEA,MAAM,CAACY,cAAA,EAAgBC,iBAAA,CAAkB,GAAG7D,QAAA,CAAS,CAACuB,YAAA;EAEtD,MAAM,CAACuC,IAAA,EAAMC,OAAA,CAAQ,GAAG/D,QAAA,CAAwB,MAC9C4B,oBAAA,GACI;IACE,GAAGA,oBAAoB;IACvBoC,IAAA,EAAMlB,KAAA,CAAMC,OAAO,CAACnB,oBAAA,CAAqBoC,IAAI,IACzCpC,oBAAA,CAAqBoC,IAAI,CAACC,MAAM,CAAC,CAACC,GAAA,EAAKC,GAAA;MACrC,IAAI,OAAOA,GAAA,KAAQ,YAAY,OAAOA,GAAA,KAAQ,UAAU;QACtD,OAAO,C,GACFD,GAAA,EACH;UACEP,EAAA,EAAIQ;QACN,EACD;MACH;MAEA,OAAO,C,GAAID,GAAA,EAAKC,GAAA,CAAI;IACtB,GAAG,EAAE,IACL;EACN,IACAjB,SAAA;EAGN,MAAM,CAACkB,WAAA,EAAaC,cAAA,CAAe,GAAGrE,QAAA;EAEtC,MAAM;IAAEsE;EAAa,CAAE,GAAG/D,kBAAA;EAE1B,MAAMgE,WAAA,GAAc1E,WAAA,CAClB,MAAOiE,IAAA;IACL,MAAMU,QAAA,GAAsB;MAC1BC,KAAA,EAAOjD,KAAA,EAAOkD,YAAA,IAAgB/B,gBAAA,EAAkBgC,KAAA,EAAOC,UAAA,EAAYF,YAAA;MACnEG,IAAA,EAAMrD,KAAA,CAAMsD,WAAW,IAAInC,gBAAA,EAAkBmC,WAAA;MAC7C,IAAIvC,KAAA,IAAS,CAAC,CAAC;MACfwC,KAAA,EAAO;QAAE,IAAIxC,KAAA,EAAOwC,KAAA,IAAS,CAAC,CAAC;MAAE;IACnC;IAEA,IAAIrD,aAAA,EAAe;MACjB8C,QAAA,CAASO,KAAK,GAAGtF,qBAAA,CAAsB+E,QAAA,CAASO,KAAK,EAAErD,aAAA;IACzD;IAEA;IACA,MAAMsD,cAAA,GAAiBxD,KAAA,CAAMmD,KAAK,CAACK,cAAc,GAC7CxD,KAAA,CAAMmD,KAAK,CAACK,cAAc,CAACC,GAAG,CAAEC,QAAA,KAAc;MAC5CA,QAAA;MACAC,MAAA,EAAQ;IACV,MACAjC,SAAA;IAEJ,MAAM;MACJY,IAAA,EAAMsB,OAAO;MACbC,KAAA,EAAOC,cAAc;MACrBrD,KAAA,EAAOsD;IAAQ,CAChB,GAAG,MAAMjB,aAAA,CAAc;MACtB1B,cAAA,EAAgBZ,UAAA;MAChBwD,OAAA,EAAS9F,6BAAA,CAA8B6C,KAAA,EAAOiD,OAAA,KAAYR,cAAA;MAC1DlB,IAAA;MACA2B,mBAAA,EAAqB;MACrBC,kBAAA,EACE,CAAClE,KAAA,CAAMmE,SAAS,IAAI7C,KAAA,CAAMC,OAAO,CAACvB,KAAA,CAAMoE,UAAU,IAC9C1C,SAAA,GACA,IAAI1B,KAAA,CAAMoE,UAAU,IAAIpE,KAAA,CAAMqE,IAAI,QAAQ;MAChD9D,MAAA;MACAQ,KAAA,EAAOiC,QAAA;MACPsB,cAAA,EAAgB;MAChBC,eAAA,EAAiB;IACnB;IAEAhC,OAAA,CAAQqB,OAAA;IACRlD,QAAA,CAASqD,QAAA;IACTlB,cAAA,CAAeiB,cAAA;IACfzB,iBAAA,CAAkB;EACpB,GACA,CACErC,KAAA,CAAMkD,YAAY,EAClBlD,KAAA,CAAMsD,WAAW,EACjBtD,KAAA,CAAMmD,KAAK,CAACK,cAAc,EAC1BxD,KAAA,CAAMoE,UAAU,EAChBpE,KAAA,CAAMqE,IAAI,EACVrE,KAAA,CAAMmE,SAAS,EACfhD,gBAAA,EAAkBgC,KAAA,EAAOC,UAAA,EAAYF,YAAA,EACrC/B,gBAAA,EAAkBmC,WAAA,EAClBvC,KAAA,EACAb,aAAA,EACA4C,aAAA,EACAtC,UAAA,EACAD,MAAA,CACD;EAGH,MAAMiE,iBAAA,GAAoB9F,cAAA,CAAe,CAACqC,KAAA,EAAkBhB,YAAA;IAC1D,IAAI,CAACA,YAAA,KAAiB,CAACU,KAAA,IAASM,KAAI,GAAI;MACtC,KAAKgC,WAAA;IACP;EACF;EAEAzE,SAAA,CAAU;IACRkG,iBAAA,CAAkBzD,KAAA,EAAOhB,YAAA;EAC3B,GAAG,CAACgB,KAAA,EAAOhB,YAAA,CAAa;EAExB,MAAM0E,YAAA,GAAepG,WAAA,CACnB,CAAC;IAAEsE,GAAG;IAAE+B;EAAS,CAAE;IACjB,IAAIA,SAAA,KAAc,UAAU;MAC1B1C,WAAA;IACF;IAEA,MAAM2C,aAAA,GAAgBrC,IAAA,EAAME,IAAA,EAAMoC,SAAA,CAAWC,CAAA,IAAMA,CAAA,CAAE1C,EAAE,KAAKQ,GAAA,CAAIR,EAAE;IAClE,MAAM2C,oBAAA,GAAsC;MAAEtC,IAAA,EAAM;IAAG;IAEvD,IAAImC,aAAA,KAAkB,CAAC,GAAG;MACxB,MAAMI,OAAA,GAAU,C,GAAIzC,IAAA,CAAKE,IAAI,CAAC;MAC9BuC,OAAO,CAACJ,aAAA,CAAc,GAAGhC,GAAA;MACzBmC,oBAAA,CAAqBtC,IAAI,GAAGuC,OAAA;IAC9B,OAAO;MACLD,oBAAA,CAAqBtC,IAAI,GAAG,CAACG,GAAA,E,GAAQL,IAAA,CAAKE,IAAI,CAAC;IACjD;IAEA,KAAKO,WAAA,CAAY+B,oBAAA;EACnB,GACA,CAACxC,IAAA,EAAME,IAAA,EAAMO,WAAA,EAAaf,WAAA,CAAY;EAGxC,MAAMgD,cAAA,GAAiB3G,WAAA,CACpB4G,IAAA;IACC,MAAMF,OAAA,GAAUzC,IAAA,CAAKE,IAAI,CAAC0C,MAAM,CAAEvC,GAAA,IAAQA,GAAA,CAAIR,EAAE,KAAK8C,IAAA,CAAK9C,EAAE;IAE5D,KAAKY,WAAA,CAAY;MACf,GAAGT,IAAI;MACPE,IAAA,EAAMuC;IACR;IAEAjD,kBAAA,CAAmBJ,SAAA;EACrB,GACA,CAACY,IAAA,EAAMS,WAAA,CAAY;EAGrB,MAAMoC,YAAA,GAAe9G,WAAA,CAA2B8D,EAAA;IAC9CP,6BAAA,CAA8BwD,OAAO,GAAG;IAExC,IAAIjD,EAAA,EAAI;MACNL,kBAAA,CAAmBK,EAAA;IACrB,OAAO;MACLL,kBAAA,CAAmBJ,SAAA;IACrB;EACF,GAAG,EAAE;EAELpD,SAAA,CAAU;IACR,IAAIsD,6BAAA,CAA8BwD,OAAO,EAAE;MACzCxD,6BAAA,CAA8BwD,OAAO,GAAG;MACxClD,UAAA;IACF;EACF,GAAG,CAACA,UAAA,CAAW;EAEf5D,SAAA,CAAU;IACR,IAAI,CAAC2D,YAAA,EAAc;MACjBH,kBAAA,CAAmBJ,SAAA;IACrB;EACF,GAAG,CAACO,YAAA,CAAa;EAEjB,MAAMoD,SAAA,GACJxF,WAAA,KAAgB,SAChB8B,WAAA,EAAa2D,WAAA,GAAcjE,aAAA,GAAgBb,UAAU,CAAC,EAAE,GAAGA,UAAA,CAAW,EAAE+E,MAAA;EAE1EjH,SAAA,CAAU;IACR,IAAI+C,aAAA,IAAiBG,kBAAA,EAAoB;MACvCU,UAAA;IACF;EACF,GAAG,CAACV,kBAAA,EAAoBU,UAAA,EAAYb,aAAA,CAAc;EAElD/C,SAAA,CAAU;IACR,IAAI+C,aAAA,IAAiB,CAACY,YAAA,IAAgBT,kBAAA,EAAoB;MACxDC,qBAAA,CAAsBC,SAAA;IACxB;IACA;IACA;EACF,GAAG,CAACO,YAAA,CAAa;EAEjB,MAAMuD,iBAAA,GAAoBrH,KAAA,CAAMsH,OAAO,CACrC,OAAO;IACLzB,OAAA,EAAS9F,6BAAA,CAA8B0E,WAAA,GAAca,GAAA,CAAI,CAAC;MAAEC;IAAQ,CAAE,KAAKA,QAAA;IAC3ET,KAAA,EAAOjD,KAAA,CAAMkD,YAAY,IAAI/B,gBAAA,EAAkBgC,KAAA,EAAOC,UAAA,EAAYF,YAAA;IAClEG,IAAA,EAAMrD,KAAA,CAAMsD,WAAW,IAAInC,gBAAA,EAAkBmC;EAC/C,IACA,CAACV,WAAA,EAAa5C,KAAA,EAAOmB,gBAAA,CAAiB;EAGxC,oBACEuE,KAAA,CAAC;IAAIC,SAAA,EAAWlG,SAAA;4BACdiG,KAAA,CAAC;MAAIC,SAAA,EAAW,GAAGlG,SAAA,UAAmB;iBACnCa,KAAA,E,aACDoF,KAAA,CAAC;QAAIC,SAAA,EAAW,GAAGlG,SAAA,WAAoB;gCACrCmG,IAAA,CAACtG,YAAA;UACCO,WAAA,EAAaA,WAAA,KAAgB;UAC7BJ,SAAA,EAAWA,SAAA;UACXoG,WAAA,EAAY;UACZF,SAAA,EAAW,GAAGlG,SAAA,YAAqB4B,aAAA,GAAgB,iBAAiB,wBAAwB;UAC5FiE,WAAA,EAAa3E,MAAA,CAAO2E,WAAW;UAC/BzE,IAAA,EAAMA,IAAA;UACNiF,IAAA,EAAMzE,aAAA,GAAgB,SAASK,SAAA;UAC/BqE,KAAA,EAAOlF,IAAA,CAAKC,CAAC,CAAC;UACdkF,OAAA,EAAS3E,aAAA,GAAgBI,qBAAA,GAAwBS,UAAA;UACjDP,WAAA,EAAaA,WAAA;UACbnB,UAAA,EAAYA;yBAEdoF,IAAA,CAACnH,IAAA;UACC,iBAAe,GAAGgB,SAAA,UAAmB;UACrC,iBAAewB,kBAAA;UACf0E,SAAA,EAAW,GAAGlG,SAAA,oBACZwB,kBAAA,GAAqB,GAAGxB,SAAA,kBAA2B,GAAG,IACtD;UACFqG,IAAA,eAAMF,IAAA,CAACjH,WAAA;YAAYsH,SAAA,EAAWhF,kBAAA,GAAqB,OAAO;;UAC1D+E,OAAA,EAASA,CAAA,KAAM9E,qBAAA,CAAsB,CAACD,kBAAA;UACtCiF,SAAA,EAAU;UACVC,IAAA,EAAK;oBAEJrF,CAAA,CAAE;;;QAIRhB,WAAA,EACAsC,cAAA,gBACCwD,IAAA,CAAC;gBAAG9E,CAAA,CAAE;sBAEN4E,KAAA,CAACtH,QAAA;iBACEkE,IAAA,EAAME,IAAA,IAAQF,IAAA,CAAKE,IAAI,CAAC4D,MAAM,KAAK,kBAClCV,KAAA,CAAC;QAAIC,SAAA,EAAW,GAAGlG,SAAA,cAAuB;gCACxCmG,IAAA,CAAC;oBACE/E,IAAA,CAAKC,CAAC,CAAC,qBAAqB;YAC3BiF,KAAA,EAAO1E,aAAA,GACHR,IAAA,CAAKC,CAAC,CAAC,uBACP9C,cAAA,CAAemD,gBAAA,EAAkBkF,MAAA,EAAQC,MAAA,EAAQzF,IAAA;UACvD;yBAEF+E,IAAA,CAACtG,YAAA;UACCO,WAAA,EAAawF,SAAA;UACb5F,SAAA,EAAWA,SAAA;UACX6F,WAAA,EAAa3E,MAAA,CAAO2E,WAAW;UAC/BzE,IAAA,EAAMA,IAAA;UACNkF,KAAA,EAAOlF,IAAA,CAAKC,CAAC,CAAC,0BAA0B;YACtCiF,KAAA,EAAO1E,aAAA,GACHR,IAAA,CAAKC,CAAC,CAAC,sBACP9C,cAAA,CAAemD,gBAAA,EAAkBkF,MAAA,EAAQE,QAAA,EAAU1F,IAAA;UACzD;UACAmF,OAAA,EAAS3E,aAAA,GAAgBI,qBAAA,GAAwBS,UAAA;UACjDP,WAAA,EAAaA,WAAA;UACbnB,UAAA,EAAYA;;UAIjB8B,IAAA,EAAME,IAAA,IAAQF,IAAA,CAAKE,IAAI,CAAC4D,MAAM,GAAG,kBAChCR,IAAA,CAACvG,oBAAA;kBACC,aAAAuG,IAAA,CAAC9G,iBAAA;UACCwD,IAAA,EAAMA,IAAA;UACNkE,kBAAA,EAAoB;UACpBC,aAAA,EAAezF,QAAA;UACfkD,kBAAA,EACE,CAAClE,KAAA,CAAMmE,SAAS,IAAI7C,KAAA,CAAMC,OAAO,CAACvB,KAAA,CAAMoE,UAAU,IAC9C1C,SAAA,GACA,IAAI1B,KAAA,CAAMoE,UAAU,IAAInE,SAAA,CAAUyG,UAAU,CAAC,KAAK,YAAY;UAEpE3F,KAAA,EAAOyE,iBAAA;oBAEP,aAAAE,KAAA,CAAC1G,oBAAA;YACCoC,cAAA,EAAgBC,aAAA,GAAgBb,UAAU,CAAC,EAAE,GAAGA,UAAA;YAChDoC,WAAA,EAAaA,WAAA;YACb+D,kBAAA,eACEf,IAAA,CAACrG,UAAA;cAAWsC,eAAA,EAAiBA,eAAA;cAAiBsD,YAAA,EAAcA;;oCAG9DS,IAAA,CAAC1G,aAAA;cACCyG,SAAA,EAAW,GAAGlG,SAAA,WAAoB;cAClCmH,MAAA,EAAQ3F,kBAAA,GAAqB,SAAS;cACtCkB,EAAA,EAAI,GAAG1C,SAAA,UAAmB;wBAE1B,aAAAmG,IAAA,CAAC;gBAAID,SAAA,EAAW,GAAGlG,SAAA,iBAA0B;0BAC1C0B,gBAAA,iBACCyE,IAAA,CAACzG,cAAA;kBAAeiC,cAAA,EAAgBD,gBAAA,CAAiB0F;;;gBAItDpG,KAAA,E,aACDmF,IAAA,CAACpG,2BAAA;;;;QAOZI,UAAA,E,aACDgG,IAAA,CAAC7D,cAAA;MACC5B,WAAA,EAAaE,iBAAA;MACbyG,QAAA,EAAU9B,cAAA;MACV+B,MAAA,EAAQtC;;;AAIhB","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"index.js","names":["getTranslation","hoistQueryParamsToAnd","transformColumnsToPreferences","React","Fragment","useCallback","useEffect","useRef","useState","Pill","useEffectEvent","ChevronIcon","useAuth","useConfig","ListQueryProvider","useServerFunctions","TableColumnsProvider","useTranslation","AnimateHeight","ColumnSelector","useDocumentDrawer","RelationshipProvider","AddNewButton","DrawerLink","RelationshipTablePagination","baseClass","RelationshipTable","props","AfterInput","allowCreate","BeforeInput","disableTable","field","fieldPath","filterOptions","initialData","initialDataFromProps","initialDrawerData","Label","parent","relationTo","Table","setTable","config","getEntityConfig","i18n","t","query","setQuery","openColumnSelector","setOpenColumnSelector","collectionConfig","collectionSlug","isPolymorphic","Array","isArray","selectedCollection","setSelectedCollection","undefined","permissions","openDrawerWhenRelationChanges","currentDrawerID","setCurrentDrawerID","DocumentDrawer","closeDrawer","isDrawerOpen","openDrawer","id","isLoadingTable","setIsLoadingTable","data","setData","docs","reduce","acc","doc","columnState","setColumnState","getTableState","renderTable","newQuery","limit","defaultLimit","admin","pagination","sort","defaultSort","where","defaultColumns","map","accessor","active","renderRowTypes","disableRowTypes","newData","state","newColumnState","NewTable","columns","enableRowSelections","orderableFieldName","orderable","collection","name","tableAppearance","handleTableRender","onDrawerSave","operation","foundDocIndex","findIndex","d","withNewOrUpdatedData","newDocs","onDrawerDelete","args","filter","onDrawerOpen","current","canCreate","collections","create","memoizedListQuery","useMemo","_jsxs","className","_jsx","buttonStyle","icon","label","onClick","direction","pillStyle","size","length","labels","plural","singular","modifySearchParams","onQueryChange","replaceAll","LinkedCellOverride","height","slug","onDelete","onSave"],"sources":["../../../src/elements/RelationshipTable/index.tsx"],"sourcesContent":["'use client'\nimport { getTranslation } from '@payloadcms/translations'\nimport {\n type CollectionSlug,\n type Column,\n type JoinFieldClient,\n type ListQuery,\n type PaginatedDocs,\n type Where,\n} from 'payload'\nimport { hoistQueryParamsToAnd, transformColumnsToPreferences } from 'payload/shared'\nimport React, { Fragment, useCallback, useEffect, useRef, useState } from 'react'\n\nimport type { DocumentDrawerProps } from '../DocumentDrawer/types.js'\n\nimport { Pill } from '../../elements/Pill/index.js'\nimport { useEffectEvent } from '../../hooks/useEffectEvent.js'\nimport { ChevronIcon } from '../../icons/Chevron/index.js'\nimport { useAuth } from '../../providers/Auth/index.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { ListQueryProvider } from '../../providers/ListQuery/index.js'\nimport { useServerFunctions } from '../../providers/ServerFunctions/index.js'\nimport { TableColumnsProvider } from '../../providers/TableColumns/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { AnimateHeight } from '../AnimateHeight/index.js'\nimport { ColumnSelector } from '../ColumnSelector/index.js'\nimport { useDocumentDrawer } from '../DocumentDrawer/index.js'\nimport { RelationshipProvider } from '../Table/RelationshipProvider/index.js'\nimport { AddNewButton } from './AddNewButton.js'\nimport { DrawerLink } from './cells/DrawerLink/index.js'\nimport { RelationshipTablePagination } from './Pagination.js'\nimport './index.scss'\n\nconst baseClass = 'relationship-table'\n\ntype RelationshipTableComponentProps = {\n readonly AfterInput?: React.ReactNode\n readonly allowCreate?: boolean\n readonly BeforeInput?: React.ReactNode\n readonly disableTable?: boolean\n readonly field: JoinFieldClient\n readonly fieldPath?: string\n readonly filterOptions?: Where\n readonly initialData?: PaginatedDocs\n readonly initialDrawerData?: DocumentDrawerProps['initialData']\n readonly Label?: React.ReactNode\n readonly parent?: {\n collectionSlug: CollectionSlug\n id: number | string\n joinPath: string\n }\n readonly relationTo: string | string[]\n}\n\nexport type OnDrawerOpen = (id?: string) => void\n\nexport const RelationshipTable: React.FC<RelationshipTableComponentProps> = (props) => {\n const {\n AfterInput,\n allowCreate = true,\n BeforeInput,\n disableTable = false,\n field,\n fieldPath,\n filterOptions,\n initialData: initialDataFromProps,\n initialDrawerData,\n Label,\n parent,\n relationTo,\n } = props\n const [Table, setTable] = useState<React.ReactNode>(null)\n const { config, getEntityConfig } = useConfig()\n const { i18n, t } = useTranslation()\n\n const [query, setQuery] = useState<ListQuery>()\n const [openColumnSelector, setOpenColumnSelector] = useState(false)\n\n const [collectionConfig] = useState(() => getEntityConfig({ collectionSlug: relationTo }))\n\n const isPolymorphic = Array.isArray(relationTo)\n\n const [selectedCollection, setSelectedCollection] = useState(\n isPolymorphic ? undefined : relationTo,\n )\n\n const { permissions } = useAuth()\n\n const openDrawerWhenRelationChanges = useRef(false)\n\n const [currentDrawerID, setCurrentDrawerID] = useState<string | undefined>(undefined)\n\n const [DocumentDrawer, , { closeDrawer, isDrawerOpen, openDrawer }] = useDocumentDrawer({\n id: currentDrawerID,\n collectionSlug: selectedCollection,\n })\n\n const [isLoadingTable, setIsLoadingTable] = useState(!disableTable)\n\n const [data, setData] = useState<PaginatedDocs>(() =>\n initialDataFromProps\n ? {\n ...initialDataFromProps,\n docs: Array.isArray(initialDataFromProps.docs)\n ? initialDataFromProps.docs.reduce((acc, doc) => {\n if (typeof doc === 'string' || typeof doc === 'number') {\n return [\n ...acc,\n {\n id: doc,\n },\n ]\n }\n\n return [...acc, doc]\n }, [])\n : [],\n }\n : undefined,\n )\n\n const [columnState, setColumnState] = useState<Column[]>()\n\n const { getTableState } = useServerFunctions()\n\n const renderTable = useCallback(\n async (data?: PaginatedDocs) => {\n const newQuery: ListQuery = {\n limit: field?.defaultLimit || collectionConfig?.admin?.pagination?.defaultLimit,\n sort: field.defaultSort || collectionConfig?.defaultSort,\n ...(query || {}),\n where: { ...(query?.where || {}) },\n }\n\n if (filterOptions) {\n newQuery.where = hoistQueryParamsToAnd(newQuery.where, filterOptions)\n }\n\n // map columns from string[] to CollectionPreferences['columns']\n const defaultColumns = field.admin.defaultColumns\n ? field.admin.defaultColumns.map((accessor) => ({\n accessor,\n active: true,\n }))\n : undefined\n\n const renderRowTypes =\n typeof field.admin.disableRowTypes === 'boolean'\n ? !field.admin.disableRowTypes\n : Array.isArray(relationTo)\n\n const {\n data: newData,\n state: newColumnState,\n Table: NewTable,\n } = await getTableState({\n collectionSlug: relationTo,\n columns: transformColumnsToPreferences(query?.columns) || defaultColumns,\n data,\n enableRowSelections: false,\n orderableFieldName:\n !field.orderable || Array.isArray(field.collection)\n ? undefined\n : `_${field.collection}_${field.name}_order`,\n parent,\n query: newQuery,\n renderRowTypes,\n tableAppearance: 'condensed',\n })\n\n setData(newData)\n setTable(NewTable)\n setColumnState(newColumnState)\n setIsLoadingTable(false)\n },\n [\n field.defaultLimit,\n field.defaultSort,\n field.admin.defaultColumns,\n field.admin.disableRowTypes,\n field.collection,\n field.name,\n field.orderable,\n collectionConfig?.admin?.pagination?.defaultLimit,\n collectionConfig?.defaultSort,\n query,\n filterOptions,\n getTableState,\n relationTo,\n parent,\n ],\n )\n\n const handleTableRender = useEffectEvent((query: ListQuery, disableTable: boolean) => {\n if (!disableTable && (!Table || query)) {\n void renderTable()\n }\n })\n\n useEffect(() => {\n handleTableRender(query, disableTable)\n }, [query, disableTable])\n\n const onDrawerSave = useCallback<DocumentDrawerProps['onSave']>(\n ({ doc, operation }) => {\n if (operation === 'create') {\n closeDrawer()\n }\n\n const foundDocIndex = data?.docs?.findIndex((d) => d.id === doc.id)\n const withNewOrUpdatedData: PaginatedDocs = { docs: [] } as PaginatedDocs\n\n if (foundDocIndex !== -1) {\n const newDocs = [...data.docs]\n newDocs[foundDocIndex] = doc\n withNewOrUpdatedData.docs = newDocs\n } else {\n withNewOrUpdatedData.docs = [doc, ...data.docs]\n }\n\n void renderTable(withNewOrUpdatedData)\n },\n [data?.docs, renderTable, closeDrawer],\n )\n\n const onDrawerDelete = useCallback<DocumentDrawerProps['onDelete']>(\n (args) => {\n const newDocs = data.docs.filter((doc) => doc.id !== args.id)\n\n void renderTable({\n ...data,\n docs: newDocs,\n })\n\n setCurrentDrawerID(undefined)\n },\n [data, renderTable],\n )\n\n const onDrawerOpen = useCallback<OnDrawerOpen>((id) => {\n openDrawerWhenRelationChanges.current = true\n\n if (id) {\n setCurrentDrawerID(id)\n } else {\n setCurrentDrawerID(undefined)\n }\n }, [])\n\n useEffect(() => {\n if (openDrawerWhenRelationChanges.current) {\n openDrawerWhenRelationChanges.current = false\n openDrawer()\n }\n }, [openDrawer])\n\n useEffect(() => {\n if (!isDrawerOpen) {\n setCurrentDrawerID(undefined)\n }\n }, [isDrawerOpen])\n\n const canCreate =\n allowCreate !== false &&\n permissions?.collections?.[isPolymorphic ? relationTo[0] : relationTo]?.create\n\n useEffect(() => {\n if (isPolymorphic && selectedCollection) {\n openDrawer()\n }\n }, [selectedCollection, openDrawer, isPolymorphic])\n\n useEffect(() => {\n if (isPolymorphic && !isDrawerOpen && selectedCollection) {\n setSelectedCollection(undefined)\n }\n // eslint-disable-next-line react-compiler/react-compiler -- TODO: fix\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [isDrawerOpen])\n\n const memoizedListQuery = React.useMemo(\n () => ({\n columns: transformColumnsToPreferences(columnState)?.map(({ accessor }) => accessor),\n limit: field.defaultLimit ?? collectionConfig?.admin?.pagination?.defaultLimit,\n sort: field.defaultSort ?? collectionConfig?.defaultSort,\n }),\n [columnState, field, collectionConfig],\n )\n\n return (\n <div className={baseClass}>\n <div className={`${baseClass}__header`}>\n {Label}\n <div className={`${baseClass}__actions`}>\n <AddNewButton\n allowCreate={allowCreate !== false}\n baseClass={baseClass}\n buttonStyle=\"none\"\n className={`${baseClass}__add-new${isPolymorphic ? '-polymorphic' : ' doc-drawer__toggler'}`}\n collections={config.collections}\n i18n={i18n}\n icon={isPolymorphic ? 'plus' : undefined}\n label={i18n.t('fields:addNew')}\n onClick={isPolymorphic ? setSelectedCollection : openDrawer}\n permissions={permissions}\n relationTo={relationTo}\n />\n <Pill\n aria-controls={`${baseClass}-columns`}\n aria-expanded={openColumnSelector}\n className={`${baseClass}__toggle-columns ${\n openColumnSelector ? `${baseClass}__buttons-active` : ''\n }`}\n icon={<ChevronIcon direction={openColumnSelector ? 'up' : 'down'} />}\n onClick={() => setOpenColumnSelector(!openColumnSelector)}\n pillStyle=\"light\"\n size=\"small\"\n >\n {t('general:columns')}\n </Pill>\n </div>\n </div>\n {BeforeInput}\n {isLoadingTable ? (\n <p>{t('general:loading')}</p>\n ) : (\n <Fragment>\n {data?.docs && data.docs.length === 0 && (\n <div className={`${baseClass}__no-results`}>\n <p>\n {i18n.t('general:noResults', {\n label: isPolymorphic\n ? i18n.t('general:documents')\n : getTranslation(collectionConfig?.labels?.plural, i18n),\n })}\n </p>\n <AddNewButton\n allowCreate={canCreate}\n baseClass={baseClass}\n collections={config.collections}\n i18n={i18n}\n label={i18n.t('general:createNewLabel', {\n label: isPolymorphic\n ? i18n.t('general:document')\n : getTranslation(collectionConfig?.labels?.singular, i18n),\n })}\n onClick={isPolymorphic ? setSelectedCollection : openDrawer}\n permissions={permissions}\n relationTo={relationTo}\n />\n </div>\n )}\n {data?.docs && data.docs.length > 0 && (\n <RelationshipProvider>\n <ListQueryProvider\n data={data}\n modifySearchParams={false}\n onQueryChange={setQuery}\n orderableFieldName={\n !field.orderable || Array.isArray(field.collection)\n ? undefined\n : `_${field.collection}_${fieldPath.replaceAll('.', '_')}_order`\n }\n query={memoizedListQuery}\n >\n <TableColumnsProvider\n collectionSlug={isPolymorphic ? relationTo[0] : relationTo}\n columnState={columnState}\n LinkedCellOverride={\n <DrawerLink currentDrawerID={currentDrawerID} onDrawerOpen={onDrawerOpen} />\n }\n >\n <AnimateHeight\n className={`${baseClass}__columns`}\n height={openColumnSelector ? 'auto' : 0}\n id={`${baseClass}-columns`}\n >\n <div className={`${baseClass}__columns-inner`}>\n {collectionConfig && (\n <ColumnSelector collectionSlug={collectionConfig.slug} />\n )}\n </div>\n </AnimateHeight>\n {Table}\n <RelationshipTablePagination />\n </TableColumnsProvider>\n </ListQueryProvider>\n </RelationshipProvider>\n )}\n </Fragment>\n )}\n {AfterInput}\n <DocumentDrawer\n initialData={initialDrawerData}\n onDelete={onDrawerDelete}\n onSave={onDrawerSave}\n />\n </div>\n )\n}\n"],"mappings":"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","ignoreList":[]}
|