@payloadcms/next 3.0.0-canary.ac498e7 → 3.0.0-canary.b6520aa
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/cjs/withPayload.cjs +18 -11
- package/dist/cjs/withPayload.cjs.map +1 -1
- package/dist/elements/DocumentHeader/Tabs/Tab/index.scss +7 -5
- package/dist/elements/DocumentHeader/Tabs/tabs/VersionsPill/index.d.ts.map +1 -1
- package/dist/elements/DocumentHeader/Tabs/tabs/VersionsPill/index.js +3 -5
- package/dist/elements/DocumentHeader/Tabs/tabs/VersionsPill/index.js.map +1 -1
- package/dist/elements/EmailAndUsername/index.d.ts +14 -0
- package/dist/elements/EmailAndUsername/index.d.ts.map +1 -0
- package/dist/elements/EmailAndUsername/index.js +85 -0
- package/dist/elements/EmailAndUsername/index.js.map +1 -0
- package/dist/elements/LeaveWithoutSaving/index.d.ts.map +1 -1
- package/dist/elements/LeaveWithoutSaving/index.js +2 -0
- package/dist/elements/LeaveWithoutSaving/index.js.map +1 -1
- package/dist/elements/Nav/index.client.d.ts.map +1 -1
- package/dist/elements/Nav/index.client.js +5 -1
- package/dist/elements/Nav/index.client.js.map +1 -1
- package/dist/layouts/Root/index.d.ts.map +1 -1
- package/dist/layouts/Root/index.js +0 -17
- package/dist/layouts/Root/index.js.map +1 -1
- package/dist/prod/styles.css +1 -1
- package/dist/routes/rest/collections/restoreVersion.d.ts.map +1 -1
- package/dist/routes/rest/collections/restoreVersion.js +2 -0
- package/dist/routes/rest/collections/restoreVersion.js.map +1 -1
- package/dist/routes/rest/globals/restoreVersion.d.ts.map +1 -1
- package/dist/routes/rest/globals/restoreVersion.js +2 -0
- package/dist/routes/rest/globals/restoreVersion.js.map +1 -1
- package/dist/scss/app.scss +5 -10
- package/dist/scss/toastify.scss +59 -0
- package/dist/scss/toasts.scss +75 -45
- package/dist/scss/type.scss +14 -23
- package/dist/scss/vars.scss +26 -47
- package/dist/utilities/initPage/handleAdminPage.js +16 -5
- package/dist/utilities/initPage/handleAdminPage.js.map +1 -1
- package/dist/utilities/initPage/handleAuthRedirect.js +10 -2
- package/dist/utilities/initPage/handleAuthRedirect.js.map +1 -1
- package/dist/utilities/initPage/shared.d.ts +14 -2
- package/dist/utilities/initPage/shared.d.ts.map +1 -1
- package/dist/utilities/initPage/shared.js +14 -4
- package/dist/utilities/initPage/shared.js.map +1 -1
- package/dist/utilities/meta.d.ts.map +1 -1
- package/dist/utilities/meta.js +2 -4
- package/dist/utilities/meta.js.map +1 -1
- package/dist/views/CreateFirstUser/index.client.d.ts +2 -3
- package/dist/views/CreateFirstUser/index.client.d.ts.map +1 -1
- package/dist/views/CreateFirstUser/index.client.js +13 -19
- package/dist/views/CreateFirstUser/index.client.js.map +1 -1
- package/dist/views/CreateFirstUser/index.d.ts.map +1 -1
- package/dist/views/CreateFirstUser/index.js +8 -49
- package/dist/views/CreateFirstUser/index.js.map +1 -1
- package/dist/views/CreateFirstUser/index.scss +4 -0
- package/dist/views/Dashboard/Default/index.scss +11 -7
- package/dist/views/Document/getDocumentData.d.ts +1 -0
- package/dist/views/Document/getDocumentData.d.ts.map +1 -1
- package/dist/views/Document/getDocumentData.js +3 -2
- package/dist/views/Document/getDocumentData.js.map +1 -1
- package/dist/views/Document/index.d.ts.map +1 -1
- package/dist/views/Document/index.js +2 -1
- package/dist/views/Document/index.js.map +1 -1
- package/dist/views/Edit/Default/Auth/APIKey.d.ts.map +1 -1
- package/dist/views/Edit/Default/Auth/APIKey.js +2 -1
- package/dist/views/Edit/Default/Auth/APIKey.js.map +1 -1
- package/dist/views/Edit/Default/Auth/index.d.ts.map +1 -1
- package/dist/views/Edit/Default/Auth/index.js +65 -32
- package/dist/views/Edit/Default/Auth/index.js.map +1 -1
- package/dist/views/Edit/Default/Auth/types.d.ts +2 -0
- package/dist/views/Edit/Default/Auth/types.d.ts.map +1 -1
- package/dist/views/Edit/Default/Auth/types.js.map +1 -1
- package/dist/views/Edit/Default/index.d.ts.map +1 -1
- package/dist/views/Edit/Default/index.js +16 -9
- package/dist/views/Edit/Default/index.js.map +1 -1
- package/dist/views/Edit/Default/index.scss +2 -2
- package/dist/views/ForgotPassword/index.js +1 -0
- package/dist/views/ForgotPassword/index.js.map +1 -1
- package/dist/views/List/Default/index.scss +2 -5
- package/dist/views/List/index.d.ts.map +1 -1
- package/dist/views/List/index.js +17 -3
- package/dist/views/List/index.js.map +1 -1
- package/dist/views/Login/LoginField/index.d.ts +2 -0
- package/dist/views/Login/LoginField/index.d.ts.map +1 -1
- package/dist/views/Login/LoginField/index.js +11 -66
- package/dist/views/Login/LoginField/index.js.map +1 -1
- package/dist/views/Login/LoginForm/index.d.ts.map +1 -1
- package/dist/views/Login/LoginForm/index.js +2 -19
- package/dist/views/Login/LoginForm/index.js.map +1 -1
- package/dist/views/Logout/LogoutClient.d.ts.map +1 -1
- package/dist/views/Logout/LogoutClient.js +2 -1
- package/dist/views/Logout/LogoutClient.js.map +1 -1
- package/dist/views/NotFound/index.client.d.ts.map +1 -1
- package/dist/views/NotFound/index.client.js +1 -0
- package/dist/views/NotFound/index.client.js.map +1 -1
- package/dist/views/ResetPassword/index.client.d.ts.map +1 -1
- package/dist/views/ResetPassword/index.client.js +11 -27
- package/dist/views/ResetPassword/index.client.js.map +1 -1
- package/dist/views/Unauthorized/index.d.ts.map +1 -1
- package/dist/views/Unauthorized/index.js +1 -0
- package/dist/views/Unauthorized/index.js.map +1 -1
- package/dist/views/Version/Default/index.d.ts.map +1 -1
- package/dist/views/Version/Default/index.js +3 -1
- package/dist/views/Version/Default/index.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.d.ts.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.js +41 -21
- package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/index.d.ts +2 -2
- package/dist/views/Version/RenderFieldsToDiff/fields/index.js +3 -2
- package/dist/views/Version/RenderFieldsToDiff/fields/index.js.map +1 -1
- package/dist/views/Version/Restore/index.d.ts.map +1 -1
- package/dist/views/Version/Restore/index.js +35 -8
- package/dist/views/Version/Restore/index.js.map +1 -1
- package/dist/views/Version/Restore/index.scss +31 -0
- package/dist/views/Version/Restore/types.d.ts +1 -0
- package/dist/views/Version/Restore/types.d.ts.map +1 -1
- package/dist/views/Version/Restore/types.js.map +1 -1
- package/dist/views/Version/index.d.ts.map +1 -1
- package/dist/views/Version/index.js +2 -2
- package/dist/views/Version/index.js.map +1 -1
- package/dist/views/Versions/index.client.d.ts.map +1 -1
- package/dist/views/Versions/index.client.js +3 -2
- package/dist/views/Versions/index.client.js.map +1 -1
- package/dist/withPayload.d.ts.map +1 -1
- package/dist/withPayload.js +18 -11
- package/dist/withPayload.js.map +1 -1
- package/package.json +7 -7
|
@@ -10,51 +10,71 @@ import { diffStyles } from '../styles.js';
|
|
|
10
10
|
const ReactDiffViewer = ReactDiffViewerImport.default || ReactDiffViewerImport;
|
|
11
11
|
const baseClass = 'relationship-diff';
|
|
12
12
|
const generateLabelFromValue = (collections, field, locale, value)=>{
|
|
13
|
-
|
|
13
|
+
if (Array.isArray(value)) {
|
|
14
|
+
return value.map((v)=>generateLabelFromValue(collections, field, locale, v)).filter(Boolean) // Filters out any undefined or empty values
|
|
15
|
+
.join(', ');
|
|
16
|
+
}
|
|
14
17
|
let relatedDoc;
|
|
15
18
|
let valueToReturn = '';
|
|
16
19
|
const relationTo = 'relationTo' in field.fieldComponentProps ? field.fieldComponentProps.relationTo : undefined;
|
|
17
20
|
if (value === null || typeof value === 'undefined') {
|
|
18
21
|
return String(value);
|
|
19
22
|
}
|
|
20
|
-
if (
|
|
21
|
-
|
|
22
|
-
relation = value.relationTo;
|
|
23
|
-
relatedDoc = value.value;
|
|
24
|
-
}
|
|
23
|
+
if (typeof value === 'object' && 'relationTo' in value) {
|
|
24
|
+
relatedDoc = value.value;
|
|
25
25
|
} else {
|
|
26
|
-
|
|
26
|
+
// Non-polymorphic relationship
|
|
27
27
|
relatedDoc = value;
|
|
28
28
|
}
|
|
29
|
-
const relatedCollection = collections.find((c)=>c.slug ===
|
|
29
|
+
const relatedCollection = relationTo ? collections.find((c)=>c.slug === (typeof value === 'object' && 'relationTo' in value ? value.relationTo : relationTo)) : null;
|
|
30
30
|
if (relatedCollection) {
|
|
31
31
|
const useAsTitle = relatedCollection?.admin?.useAsTitle;
|
|
32
32
|
const useAsTitleField = relatedCollection.fields.find((f)=>fieldAffectsData(f) && !fieldIsPresentationalOnly(f) && f.name === useAsTitle);
|
|
33
33
|
let titleFieldIsLocalized = false;
|
|
34
|
-
if (useAsTitleField && fieldAffectsData(useAsTitleField))
|
|
34
|
+
if (useAsTitleField && fieldAffectsData(useAsTitleField)) {
|
|
35
|
+
titleFieldIsLocalized = useAsTitleField.localized;
|
|
36
|
+
}
|
|
35
37
|
if (typeof relatedDoc?.[useAsTitle] !== 'undefined') {
|
|
36
38
|
valueToReturn = relatedDoc[useAsTitle];
|
|
37
39
|
} else if (typeof relatedDoc?.id !== 'undefined') {
|
|
38
40
|
valueToReturn = relatedDoc.id;
|
|
41
|
+
} else {
|
|
42
|
+
valueToReturn = relatedDoc;
|
|
39
43
|
}
|
|
40
44
|
if (typeof valueToReturn === 'object' && titleFieldIsLocalized) {
|
|
41
45
|
valueToReturn = valueToReturn[locale];
|
|
42
46
|
}
|
|
47
|
+
} else if (relatedDoc) {
|
|
48
|
+
// Handle non-polymorphic `hasMany` relationships or fallback
|
|
49
|
+
if (typeof relatedDoc.id !== 'undefined') {
|
|
50
|
+
valueToReturn = relatedDoc.id;
|
|
51
|
+
} else {
|
|
52
|
+
valueToReturn = relatedDoc;
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
if (typeof valueToReturn === 'object' && valueToReturn !== null) {
|
|
56
|
+
valueToReturn = JSON.stringify(valueToReturn);
|
|
43
57
|
}
|
|
44
58
|
return valueToReturn;
|
|
45
59
|
};
|
|
46
60
|
const Relationship = ({ comparison, field, i18n, locale, version })=>{
|
|
47
|
-
|
|
61
|
+
const placeholder = `[${i18n.t('general:noValue')}]`;
|
|
48
62
|
const { collections } = useConfig();
|
|
49
|
-
|
|
50
|
-
let
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
63
|
+
let versionToRender = placeholder;
|
|
64
|
+
let comparisonToRender = placeholder;
|
|
65
|
+
if (version) {
|
|
66
|
+
if ('hasMany' in field && field.hasMany && Array.isArray(version)) {
|
|
67
|
+
versionToRender = version.map((val)=>generateLabelFromValue(collections, field, locale, val)).join(', ') || placeholder;
|
|
68
|
+
} else {
|
|
69
|
+
versionToRender = generateLabelFromValue(collections, field, locale, version) || placeholder;
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
if (comparison) {
|
|
73
|
+
if ('hasMany' in field && field.hasMany && Array.isArray(comparison)) {
|
|
74
|
+
comparisonToRender = comparison.map((val)=>generateLabelFromValue(collections, field, locale, val)).join(', ') || placeholder;
|
|
75
|
+
} else {
|
|
76
|
+
comparisonToRender = generateLabelFromValue(collections, field, locale, comparison) || placeholder;
|
|
77
|
+
}
|
|
58
78
|
}
|
|
59
79
|
const label = 'label' in field.fieldComponentProps && typeof field.fieldComponentProps.label !== 'boolean' && typeof field.fieldComponentProps.label !== 'function' ? field.fieldComponentProps.label : '';
|
|
60
80
|
return /*#__PURE__*/ _jsxs("div", {
|
|
@@ -71,8 +91,8 @@ const Relationship = ({ comparison, field, i18n, locale, version })=>{
|
|
|
71
91
|
}),
|
|
72
92
|
/*#__PURE__*/ _jsx(ReactDiffViewer, {
|
|
73
93
|
hideLineNumbers: true,
|
|
74
|
-
newValue:
|
|
75
|
-
oldValue:
|
|
94
|
+
newValue: versionToRender,
|
|
95
|
+
oldValue: comparisonToRender,
|
|
76
96
|
showDiffOnly: false,
|
|
77
97
|
splitView: true,
|
|
78
98
|
styles: diffStyles
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../../src/views/Version/RenderFieldsToDiff/fields/Relationship/index.tsx"],"sourcesContent":["'use client'\nimport type { ClientCollectionConfig, MappedField } from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport { useConfig } from '@payloadcms/ui'\nimport { fieldAffectsData, fieldIsPresentationalOnly } from 'payload/shared'\nimport React from 'react'\nimport ReactDiffViewerImport from 'react-diff-viewer-continued'\n\nimport type { Props } from '../types.js'\n\nimport Label from '../../Label/index.js'\nimport { diffStyles } from '../styles.js'\nimport './index.scss'\n\nconst ReactDiffViewer = (ReactDiffViewerImport.default ||\n ReactDiffViewerImport) as unknown as typeof ReactDiffViewerImport.default\n\nconst baseClass = 'relationship-diff'\n\ntype RelationshipValue = Record<string, any>\n\nconst generateLabelFromValue = (\n collections: ClientCollectionConfig[],\n field: MappedField,\n locale: string,\n value: { relationTo: string; value: RelationshipValue } | RelationshipValue,\n): string => {\n
|
|
1
|
+
{"version":3,"sources":["../../../../../../src/views/Version/RenderFieldsToDiff/fields/Relationship/index.tsx"],"sourcesContent":["'use client'\nimport type { ClientCollectionConfig, MappedField } from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport { useConfig } from '@payloadcms/ui'\nimport { fieldAffectsData, fieldIsPresentationalOnly } from 'payload/shared'\nimport React from 'react'\nimport ReactDiffViewerImport from 'react-diff-viewer-continued'\n\nimport type { Props } from '../types.js'\n\nimport Label from '../../Label/index.js'\nimport { diffStyles } from '../styles.js'\nimport './index.scss'\n\nconst ReactDiffViewer = (ReactDiffViewerImport.default ||\n ReactDiffViewerImport) as unknown as typeof ReactDiffViewerImport.default\n\nconst baseClass = 'relationship-diff'\n\ntype RelationshipValue = Record<string, any>\n\nconst generateLabelFromValue = (\n collections: ClientCollectionConfig[],\n field: MappedField,\n locale: string,\n value: { relationTo: string; value: RelationshipValue } | RelationshipValue,\n): string => {\n if (Array.isArray(value)) {\n return value\n .map((v) => generateLabelFromValue(collections, field, locale, v))\n .filter(Boolean) // Filters out any undefined or empty values\n .join(', ')\n }\n\n let relatedDoc: RelationshipValue\n let valueToReturn = '' as any\n\n const relationTo =\n 'relationTo' in field.fieldComponentProps ? field.fieldComponentProps.relationTo : undefined\n\n if (value === null || typeof value === 'undefined') {\n return String(value)\n }\n\n if (typeof value === 'object' && 'relationTo' in value) {\n relatedDoc = value.value\n } else {\n // Non-polymorphic relationship\n relatedDoc = value\n }\n\n const relatedCollection = relationTo\n ? collections.find(\n (c) =>\n c.slug ===\n (typeof value === 'object' && 'relationTo' in value ? value.relationTo : relationTo),\n )\n : null\n\n if (relatedCollection) {\n const useAsTitle = relatedCollection?.admin?.useAsTitle\n const useAsTitleField = relatedCollection.fields.find(\n (f) => fieldAffectsData(f) && !fieldIsPresentationalOnly(f) && f.name === useAsTitle,\n )\n let titleFieldIsLocalized = false\n\n if (useAsTitleField && fieldAffectsData(useAsTitleField)) {\n titleFieldIsLocalized = useAsTitleField.localized\n }\n\n if (typeof relatedDoc?.[useAsTitle] !== 'undefined') {\n valueToReturn = relatedDoc[useAsTitle]\n } else if (typeof relatedDoc?.id !== 'undefined') {\n valueToReturn = relatedDoc.id\n } else {\n valueToReturn = relatedDoc\n }\n\n if (typeof valueToReturn === 'object' && titleFieldIsLocalized) {\n valueToReturn = valueToReturn[locale]\n }\n } else if (relatedDoc) {\n // Handle non-polymorphic `hasMany` relationships or fallback\n if (typeof relatedDoc.id !== 'undefined') {\n valueToReturn = relatedDoc.id\n } else {\n valueToReturn = relatedDoc\n }\n }\n\n if (typeof valueToReturn === 'object' && valueToReturn !== null) {\n valueToReturn = JSON.stringify(valueToReturn)\n }\n\n return valueToReturn\n}\n\nconst Relationship: React.FC<Props> = ({ comparison, field, i18n, locale, version }) => {\n const placeholder = `[${i18n.t('general:noValue')}]`\n\n const { collections } = useConfig()\n\n let versionToRender: string | undefined = placeholder\n let comparisonToRender: string | undefined = placeholder\n\n if (version) {\n if ('hasMany' in field && field.hasMany && Array.isArray(version)) {\n versionToRender =\n version.map((val) => generateLabelFromValue(collections, field, locale, val)).join(', ') ||\n placeholder\n } else {\n versionToRender = generateLabelFromValue(collections, field, locale, version) || placeholder\n }\n }\n\n if (comparison) {\n if ('hasMany' in field && field.hasMany && Array.isArray(comparison)) {\n comparisonToRender =\n comparison\n .map((val) => generateLabelFromValue(collections, field, locale, val))\n .join(', ') || placeholder\n } else {\n comparisonToRender =\n generateLabelFromValue(collections, field, locale, comparison) || placeholder\n }\n }\n\n const label =\n 'label' in field.fieldComponentProps &&\n typeof field.fieldComponentProps.label !== 'boolean' &&\n typeof field.fieldComponentProps.label !== 'function'\n ? field.fieldComponentProps.label\n : ''\n\n return (\n <div className={baseClass}>\n <Label>\n {locale && <span className={`${baseClass}__locale-label`}>{locale}</span>}\n {getTranslation(label, i18n)}\n </Label>\n <ReactDiffViewer\n hideLineNumbers\n newValue={versionToRender}\n oldValue={comparisonToRender}\n showDiffOnly={false}\n splitView\n styles={diffStyles}\n />\n </div>\n )\n}\n\nexport default Relationship\n"],"names":["getTranslation","useConfig","fieldAffectsData","fieldIsPresentationalOnly","React","ReactDiffViewerImport","Label","diffStyles","ReactDiffViewer","default","baseClass","generateLabelFromValue","collections","field","locale","value","Array","isArray","map","v","filter","Boolean","join","relatedDoc","valueToReturn","relationTo","fieldComponentProps","undefined","String","relatedCollection","find","c","slug","useAsTitle","admin","useAsTitleField","fields","f","name","titleFieldIsLocalized","localized","id","JSON","stringify","Relationship","comparison","i18n","version","placeholder","t","versionToRender","comparisonToRender","hasMany","val","label","div","className","span","hideLineNumbers","newValue","oldValue","showDiffOnly","splitView","styles"],"mappings":"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"}
|
|
@@ -13,7 +13,7 @@ declare const _default: {
|
|
|
13
13
|
radio: import("react").FC<{
|
|
14
14
|
field: import("packages/payload/src/index.js").MappedField & import("packages/payload/src/index.js").SelectFieldProps;
|
|
15
15
|
} & Omit<import("./types.js").Props, "field">>;
|
|
16
|
-
relationship:
|
|
16
|
+
relationship: import("react").FC<import("./types.js").Props>;
|
|
17
17
|
richText: import("react").FC<import("./types.js").Props>;
|
|
18
18
|
row: import("react").FC<import("./types.js").Props>;
|
|
19
19
|
select: import("react").FC<{
|
|
@@ -24,7 +24,7 @@ declare const _default: {
|
|
|
24
24
|
} & Omit<import("./types.js").Props, "field">>;
|
|
25
25
|
text: import("react").FC<import("./types.js").Props>;
|
|
26
26
|
textarea: import("react").FC<import("./types.js").Props>;
|
|
27
|
-
upload:
|
|
27
|
+
upload: import("react").FC<import("./types.js").Props>;
|
|
28
28
|
};
|
|
29
29
|
export default _default;
|
|
30
30
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import Iterable from './Iterable/index.js';
|
|
2
2
|
import Nested from './Nested/index.js';
|
|
3
|
+
import Relationship from './Relationship/index.js';
|
|
3
4
|
import Select from './Select/index.js';
|
|
4
5
|
import Tabs from './Tabs/index.js';
|
|
5
6
|
import Text from './Text/index.js';
|
|
@@ -16,14 +17,14 @@ export default {
|
|
|
16
17
|
number: Text,
|
|
17
18
|
point: Text,
|
|
18
19
|
radio: Select,
|
|
19
|
-
relationship:
|
|
20
|
+
relationship: Relationship,
|
|
20
21
|
richText: Text,
|
|
21
22
|
row: Nested,
|
|
22
23
|
select: Select,
|
|
23
24
|
tabs: Tabs,
|
|
24
25
|
text: Text,
|
|
25
26
|
textarea: Text,
|
|
26
|
-
upload:
|
|
27
|
+
upload: Relationship
|
|
27
28
|
};
|
|
28
29
|
|
|
29
30
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../src/views/Version/RenderFieldsToDiff/fields/index.tsx"],"sourcesContent":["import Iterable from './Iterable/index.js'\nimport Nested from './Nested/index.js'\nimport Relationship from './Relationship/index.js'\nimport Select from './Select/index.js'\nimport Tabs from './Tabs/index.js'\nimport Text from './Text/index.js'\n\nexport default {\n array: Iterable,\n blocks: Iterable,\n checkbox: Text,\n code: Text,\n collapsible: Nested,\n date: Text,\n email: Text,\n group: Nested,\n json: Text,\n number: Text,\n point: Text,\n radio: Select,\n relationship:
|
|
1
|
+
{"version":3,"sources":["../../../../../src/views/Version/RenderFieldsToDiff/fields/index.tsx"],"sourcesContent":["import Iterable from './Iterable/index.js'\nimport Nested from './Nested/index.js'\nimport Relationship from './Relationship/index.js'\nimport Select from './Select/index.js'\nimport Tabs from './Tabs/index.js'\nimport Text from './Text/index.js'\n\nexport default {\n array: Iterable,\n blocks: Iterable,\n checkbox: Text,\n code: Text,\n collapsible: Nested,\n date: Text,\n email: Text,\n group: Nested,\n json: Text,\n number: Text,\n point: Text,\n radio: Select,\n relationship: Relationship,\n richText: Text,\n row: Nested,\n select: Select,\n tabs: Tabs,\n text: Text,\n textarea: Text,\n upload: Relationship,\n}\n"],"names":["Iterable","Nested","Relationship","Select","Tabs","Text","array","blocks","checkbox","code","collapsible","date","email","group","json","number","point","radio","relationship","richText","row","select","tabs","text","textarea","upload"],"mappings":"AAAA,OAAOA,cAAc,sBAAqB;AAC1C,OAAOC,YAAY,oBAAmB;AACtC,OAAOC,kBAAkB,0BAAyB;AAClD,OAAOC,YAAY,oBAAmB;AACtC,OAAOC,UAAU,kBAAiB;AAClC,OAAOC,UAAU,kBAAiB;AAElC,eAAe;IACbC,OAAON;IACPO,QAAQP;IACRQ,UAAUH;IACVI,MAAMJ;IACNK,aAAaT;IACbU,MAAMN;IACNO,OAAOP;IACPQ,OAAOZ;IACPa,MAAMT;IACNU,QAAQV;IACRW,OAAOX;IACPY,OAAOd;IACPe,cAAchB;IACdiB,UAAUd;IACVe,KAAKnB;IACLoB,QAAQlB;IACRmB,MAAMlB;IACNmB,MAAMlB;IACNmB,UAAUnB;IACVoB,QAAQvB;AACV,EAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/views/Version/Restore/index.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/views/Version/Restore/index.tsx"],"names":[],"mappings":"AAeA,OAAO,KAA0C,MAAM,OAAO,CAAA;AAG9D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAGvC,OAAO,cAAc,CAAA;AAKrB,QAAA,MAAM,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CA8G5B,CAAA;AAED,eAAe,OAAO,CAAA"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
3
|
import { getTranslation } from '@payloadcms/translations';
|
|
4
|
-
import { Button, Modal, Pill, useConfig, useModal, useTranslation } from '@payloadcms/ui';
|
|
4
|
+
import { Button, ChevronIcon, Modal, Pill, Popup, PopupList, useConfig, useModal, useTranslation } from '@payloadcms/ui';
|
|
5
5
|
import { formatAdminURL, requests } from '@payloadcms/ui/shared';
|
|
6
6
|
import { useRouter } from 'next/navigation.js';
|
|
7
7
|
import React, { Fragment, useCallback, useState } from 'react';
|
|
@@ -9,27 +9,29 @@ import { toast } from 'sonner';
|
|
|
9
9
|
import { MinimalTemplate } from '../../../templates/Minimal/index.js';
|
|
10
10
|
const baseClass = 'restore-version';
|
|
11
11
|
const modalSlug = 'restore-version';
|
|
12
|
-
const Restore = ({ className, collectionSlug, globalSlug, label, originalDocID, versionDate, versionID })=>{
|
|
12
|
+
const Restore = ({ className, collectionSlug, globalSlug, label, originalDocID, status, versionDate, versionID })=>{
|
|
13
13
|
const { routes: { admin: adminRoute, api: apiRoute }, serverURL } = useConfig();
|
|
14
14
|
const { toggleModal } = useModal();
|
|
15
15
|
const [processing, setProcessing] = useState(false);
|
|
16
16
|
const router = useRouter();
|
|
17
17
|
const { i18n, t } = useTranslation();
|
|
18
|
+
const [draft, setDraft] = useState(false);
|
|
18
19
|
const restoreMessage = t('version:aboutToRestoreGlobal', {
|
|
19
20
|
label: getTranslation(label, i18n),
|
|
20
21
|
versionDate
|
|
21
22
|
});
|
|
22
23
|
let fetchURL = `${serverURL}${apiRoute}`;
|
|
23
24
|
let redirectURL;
|
|
25
|
+
const canRestoreAsDraft = status !== 'draft';
|
|
24
26
|
if (collectionSlug) {
|
|
25
|
-
fetchURL = `${fetchURL}/${collectionSlug}/versions/${versionID}`;
|
|
27
|
+
fetchURL = `${fetchURL}/${collectionSlug}/versions/${versionID}?draft=${draft}`;
|
|
26
28
|
redirectURL = formatAdminURL({
|
|
27
29
|
adminRoute,
|
|
28
30
|
path: `/collections/${collectionSlug}/${originalDocID}`
|
|
29
31
|
});
|
|
30
32
|
}
|
|
31
33
|
if (globalSlug) {
|
|
32
|
-
fetchURL = `${fetchURL}/globals/${globalSlug}/versions/${versionID}`;
|
|
34
|
+
fetchURL = `${fetchURL}/globals/${globalSlug}/versions/${versionID}?draft=${draft}`;
|
|
33
35
|
redirectURL = formatAdminURL({
|
|
34
36
|
adminRoute,
|
|
35
37
|
path: `/globals/${globalSlug}`
|
|
@@ -58,13 +60,38 @@ const Restore = ({ className, collectionSlug, globalSlug, label, originalDocID,
|
|
|
58
60
|
]);
|
|
59
61
|
return /*#__PURE__*/ _jsxs(Fragment, {
|
|
60
62
|
children: [
|
|
61
|
-
/*#__PURE__*/
|
|
63
|
+
/*#__PURE__*/ _jsxs("div", {
|
|
62
64
|
className: [
|
|
63
65
|
baseClass,
|
|
64
66
|
className
|
|
65
67
|
].filter(Boolean).join(' '),
|
|
66
|
-
|
|
67
|
-
|
|
68
|
+
children: [
|
|
69
|
+
/*#__PURE__*/ _jsx(Pill, {
|
|
70
|
+
className: [
|
|
71
|
+
canRestoreAsDraft && `${baseClass}__button`
|
|
72
|
+
].filter(Boolean).join(' '),
|
|
73
|
+
onClick: ()=>toggleModal(modalSlug),
|
|
74
|
+
children: t('version:restoreThisVersion')
|
|
75
|
+
}),
|
|
76
|
+
canRestoreAsDraft && /*#__PURE__*/ _jsx(Popup, {
|
|
77
|
+
button: /*#__PURE__*/ _jsx(Pill, {
|
|
78
|
+
className: `${baseClass}__chevron`,
|
|
79
|
+
children: /*#__PURE__*/ _jsx(ChevronIcon, {})
|
|
80
|
+
}),
|
|
81
|
+
caret: false,
|
|
82
|
+
render: ()=>/*#__PURE__*/ _jsx(PopupList.ButtonGroup, {
|
|
83
|
+
children: /*#__PURE__*/ _jsx(PopupList.Button, {
|
|
84
|
+
onClick: ()=>[
|
|
85
|
+
setDraft(true),
|
|
86
|
+
toggleModal(modalSlug)
|
|
87
|
+
],
|
|
88
|
+
children: t('version:restoreAsDraft')
|
|
89
|
+
})
|
|
90
|
+
}),
|
|
91
|
+
size: "large",
|
|
92
|
+
verticalAlign: "bottom"
|
|
93
|
+
})
|
|
94
|
+
]
|
|
68
95
|
}),
|
|
69
96
|
/*#__PURE__*/ _jsx(Modal, {
|
|
70
97
|
className: `${baseClass}__modal`,
|
|
@@ -85,7 +112,7 @@ const Restore = ({ className, collectionSlug, globalSlug, label, originalDocID,
|
|
|
85
112
|
children: t('general:cancel')
|
|
86
113
|
}),
|
|
87
114
|
/*#__PURE__*/ _jsx(Button, {
|
|
88
|
-
onClick: processing ? undefined : handleRestore,
|
|
115
|
+
onClick: processing ? undefined : ()=>void handleRestore(),
|
|
89
116
|
children: processing ? t('version:restoring') : t('general:confirm')
|
|
90
117
|
})
|
|
91
118
|
]
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/views/Version/Restore/index.tsx"],"sourcesContent":["'use client'\nimport { getTranslation } from '@payloadcms/translations'\nimport {
|
|
1
|
+
{"version":3,"sources":["../../../../src/views/Version/Restore/index.tsx"],"sourcesContent":["'use client'\nimport { getTranslation } from '@payloadcms/translations'\nimport {\n Button,\n ChevronIcon,\n Modal,\n Pill,\n Popup,\n PopupList,\n useConfig,\n useModal,\n useTranslation,\n} from '@payloadcms/ui'\nimport { formatAdminURL, requests } from '@payloadcms/ui/shared'\nimport { useRouter } from 'next/navigation.js'\nimport React, { Fragment, useCallback, useState } from 'react'\nimport { toast } from 'sonner'\n\nimport type { Props } from './types.js'\n\nimport { MinimalTemplate } from '../../../templates/Minimal/index.js'\nimport './index.scss'\n\nconst baseClass = 'restore-version'\nconst modalSlug = 'restore-version'\n\nconst Restore: React.FC<Props> = ({\n className,\n collectionSlug,\n globalSlug,\n label,\n originalDocID,\n status,\n versionDate,\n versionID,\n}) => {\n const {\n routes: { admin: adminRoute, api: apiRoute },\n serverURL,\n } = useConfig()\n\n const { toggleModal } = useModal()\n const [processing, setProcessing] = useState(false)\n const router = useRouter()\n const { i18n, t } = useTranslation()\n const [draft, setDraft] = useState(false)\n\n const restoreMessage = t('version:aboutToRestoreGlobal', {\n label: getTranslation(label, i18n),\n versionDate,\n })\n\n let fetchURL = `${serverURL}${apiRoute}`\n let redirectURL: string\n const canRestoreAsDraft = status !== 'draft'\n\n if (collectionSlug) {\n fetchURL = `${fetchURL}/${collectionSlug}/versions/${versionID}?draft=${draft}`\n redirectURL = formatAdminURL({\n adminRoute,\n path: `/collections/${collectionSlug}/${originalDocID}`,\n })\n }\n\n if (globalSlug) {\n fetchURL = `${fetchURL}/globals/${globalSlug}/versions/${versionID}?draft=${draft}`\n redirectURL = formatAdminURL({\n adminRoute,\n path: `/globals/${globalSlug}`,\n })\n }\n\n const handleRestore = useCallback(async () => {\n setProcessing(true)\n\n const res = await requests.post(fetchURL, {\n headers: {\n 'Accept-Language': i18n.language,\n },\n })\n\n if (res.status === 200) {\n const json = await res.json()\n toast.success(json.message)\n router.push(redirectURL)\n } else {\n toast.error(t('version:problemRestoringVersion'))\n }\n }, [fetchURL, redirectURL, t, i18n, router])\n return (\n <Fragment>\n <div className={[baseClass, className].filter(Boolean).join(' ')}>\n <Pill\n className={[canRestoreAsDraft && `${baseClass}__button`].filter(Boolean).join(' ')}\n onClick={() => toggleModal(modalSlug)}\n >\n {t('version:restoreThisVersion')}\n </Pill>\n {canRestoreAsDraft && (\n <Popup\n button={\n <Pill className={`${baseClass}__chevron`}>\n <ChevronIcon />\n </Pill>\n }\n caret={false}\n render={() => (\n <PopupList.ButtonGroup>\n <PopupList.Button onClick={() => [setDraft(true), toggleModal(modalSlug)]}>\n {t('version:restoreAsDraft')}\n </PopupList.Button>\n </PopupList.ButtonGroup>\n )}\n size=\"large\"\n verticalAlign=\"bottom\"\n />\n )}\n </div>\n <Modal className={`${baseClass}__modal`} slug={modalSlug}>\n <MinimalTemplate className={`${baseClass}__modal-template`}>\n <h1>{t('version:confirmVersionRestoration')}</h1>\n <p>{restoreMessage}</p>\n <Button\n buttonStyle=\"secondary\"\n onClick={processing ? undefined : () => toggleModal(modalSlug)}\n type=\"button\"\n >\n {t('general:cancel')}\n </Button>\n <Button onClick={processing ? undefined : () => void handleRestore()}>\n {processing ? t('version:restoring') : t('general:confirm')}\n </Button>\n </MinimalTemplate>\n </Modal>\n </Fragment>\n )\n}\n\nexport default Restore\n"],"names":["getTranslation","Button","ChevronIcon","Modal","Pill","Popup","PopupList","useConfig","useModal","useTranslation","formatAdminURL","requests","useRouter","React","Fragment","useCallback","useState","toast","MinimalTemplate","baseClass","modalSlug","Restore","className","collectionSlug","globalSlug","label","originalDocID","status","versionDate","versionID","routes","admin","adminRoute","api","apiRoute","serverURL","toggleModal","processing","setProcessing","router","i18n","t","draft","setDraft","restoreMessage","fetchURL","redirectURL","canRestoreAsDraft","path","handleRestore","res","post","headers","language","json","success","message","push","error","div","filter","Boolean","join","onClick","button","caret","render","ButtonGroup","size","verticalAlign","slug","h1","p","buttonStyle","undefined","type"],"mappings":"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"}
|
|
@@ -2,6 +2,37 @@
|
|
|
2
2
|
|
|
3
3
|
.restore-version {
|
|
4
4
|
cursor: pointer;
|
|
5
|
+
display: flex;
|
|
6
|
+
|
|
7
|
+
.popup-button {
|
|
8
|
+
display: flex;
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
&__chevron {
|
|
12
|
+
background-color: var(--theme-elevation-150);
|
|
13
|
+
border-top-left-radius: 0;
|
|
14
|
+
border-bottom-left-radius: 0;
|
|
15
|
+
cursor: pointer;
|
|
16
|
+
|
|
17
|
+
.stroke {
|
|
18
|
+
stroke-width: 1px;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
&:hover {
|
|
22
|
+
background: var(--theme-elevation-100);
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
&__button {
|
|
27
|
+
border-top-right-radius: 0px;
|
|
28
|
+
border-bottom-right-radius: 0px;
|
|
29
|
+
margin-right: 2px;
|
|
30
|
+
|
|
31
|
+
&:focus {
|
|
32
|
+
border-radius: 0;
|
|
33
|
+
outline-offset: 0;
|
|
34
|
+
}
|
|
35
|
+
}
|
|
5
36
|
|
|
6
37
|
&__modal {
|
|
7
38
|
@include blur-bg;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/views/Version/Restore/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAA;AAE/E,MAAM,MAAM,KAAK,GAAG;IAClB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,cAAc,CAAC,EAAE,yBAAyB,CAAC,MAAM,CAAC,CAAA;IAClD,UAAU,CAAC,EAAE,qBAAqB,CAAC,MAAM,CAAC,CAAA;IAC1C,KAAK,EAAE,yBAAyB,CAAC,QAAQ,CAAC,CAAC,UAAU,CAAC,CAAA;IACtD,aAAa,EAAE,MAAM,GAAG,MAAM,CAAA;IAC9B,WAAW,EAAE,MAAM,CAAA;IACnB,SAAS,EAAE,MAAM,CAAA;CAClB,CAAA"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/views/Version/Restore/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAA;AAE/E,MAAM,MAAM,KAAK,GAAG;IAClB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,cAAc,CAAC,EAAE,yBAAyB,CAAC,MAAM,CAAC,CAAA;IAClD,UAAU,CAAC,EAAE,qBAAqB,CAAC,MAAM,CAAC,CAAA;IAC1C,KAAK,EAAE,yBAAyB,CAAC,QAAQ,CAAC,CAAC,UAAU,CAAC,CAAA;IACtD,aAAa,EAAE,MAAM,GAAG,MAAM,CAAA;IAC9B,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,WAAW,EAAE,MAAM,CAAA;IACnB,SAAS,EAAE,MAAM,CAAA;CAClB,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/views/Version/Restore/types.ts"],"sourcesContent":["import type { SanitizedCollectionConfig, SanitizedGlobalConfig } from 'payload'\n\nexport type Props = {\n className?: string\n collectionSlug?: SanitizedCollectionConfig['slug']\n globalSlug?: SanitizedGlobalConfig['slug']\n label: SanitizedCollectionConfig['labels']['singular']\n originalDocID: number | string\n versionDate: string\n versionID: string\n}\n"],"names":[],"mappings":"AAEA,
|
|
1
|
+
{"version":3,"sources":["../../../../src/views/Version/Restore/types.ts"],"sourcesContent":["import type { SanitizedCollectionConfig, SanitizedGlobalConfig } from 'payload'\n\nexport type Props = {\n className?: string\n collectionSlug?: SanitizedCollectionConfig['slug']\n globalSlug?: SanitizedGlobalConfig['slug']\n label: SanitizedCollectionConfig['labels']['singular']\n originalDocID: number | string\n status?: string\n versionDate: string\n versionID: string\n}\n"],"names":[],"mappings":"AAEA,WASC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/views/Version/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAGV,iBAAiB,EAGlB,MAAM,SAAS,CAAA;AAQhB,eAAO,MAAM,WAAW,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/views/Version/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAGV,iBAAiB,EAGlB,MAAM,SAAS,CAAA;AAQhB,eAAO,MAAM,WAAW,EAAE,iBAgHzB,CAAA"}
|
|
@@ -66,8 +66,8 @@ export const VersionView = async (props)=>{
|
|
|
66
66
|
updatedAt: ''
|
|
67
67
|
};
|
|
68
68
|
}
|
|
69
|
-
const localeOptions = localization && localization
|
|
70
|
-
label
|
|
69
|
+
const localeOptions = localization && localization.locales.map(({ code, label })=>({
|
|
70
|
+
label,
|
|
71
71
|
value: code
|
|
72
72
|
}));
|
|
73
73
|
const latestVersion = latestPublishedVersion?.updatedAt > latestDraftVersion?.updatedAt ? latestPublishedVersion : latestDraftVersion;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/views/Version/index.tsx"],"sourcesContent":["import type {\n CollectionPermission,\n Document,\n EditViewComponent,\n GlobalPermission,\n OptionObject,\n} from 'payload'\n\nimport { notFound } from 'next/navigation.js'\nimport React from 'react'\n\nimport { getLatestVersion } from '../Versions/getLatestVersion.js'\nimport { DefaultVersionView } from './Default/index.js'\n\nexport const VersionView: EditViewComponent = async (props) => {\n const { initPageResult, routeSegments } = props\n\n const {\n collectionConfig,\n docID: id,\n globalConfig,\n permissions,\n req,\n req: { payload, payload: { config } = {}, user } = {},\n } = initPageResult\n\n const versionID = routeSegments[routeSegments.length - 1]\n\n const collectionSlug = collectionConfig?.slug\n const globalSlug = globalConfig?.slug\n\n const { localization } = config\n\n let docPermissions: CollectionPermission | GlobalPermission\n let slug: string\n\n let doc: Document\n let latestPublishedVersion = null\n let latestDraftVersion = null\n\n if (collectionSlug) {\n // /collections/:slug/:id/versions/:versionID\n slug = collectionSlug\n docPermissions = permissions.collections[collectionSlug]\n\n try {\n doc = await payload.findVersionByID({\n id: versionID,\n collection: slug,\n depth: 1,\n locale: '*',\n overrideAccess: false,\n req,\n user,\n })\n\n if (collectionConfig?.versions?.drafts) {\n latestDraftVersion = await getLatestVersion(payload, slug, 'draft', 'collection')\n latestPublishedVersion = await getLatestVersion(payload, slug, 'published', 'collection')\n }\n } catch (error) {\n return notFound()\n }\n }\n\n if (globalSlug) {\n // /globals/:slug/versions/:versionID\n slug = globalSlug\n docPermissions = permissions.globals[globalSlug]\n\n try {\n doc = await payload.findGlobalVersionByID({\n id: versionID,\n slug,\n depth: 1,\n locale: '*',\n overrideAccess: false,\n req,\n user,\n })\n\n if (globalConfig?.versions?.drafts) {\n latestDraftVersion = await getLatestVersion(payload, slug, 'draft', 'global')\n latestPublishedVersion = await getLatestVersion(payload, slug, 'published', 'global')\n }\n } catch (error) {\n return notFound()\n }\n }\n\n const publishedNewerThanDraft = latestPublishedVersion?.updatedAt > latestDraftVersion?.updatedAt\n\n if (publishedNewerThanDraft) {\n latestDraftVersion = {\n id: '',\n updatedAt: '',\n }\n }\n\n const localeOptions: OptionObject[] =\n localization &&\n localization
|
|
1
|
+
{"version":3,"sources":["../../../src/views/Version/index.tsx"],"sourcesContent":["import type {\n CollectionPermission,\n Document,\n EditViewComponent,\n GlobalPermission,\n OptionObject,\n} from 'payload'\n\nimport { notFound } from 'next/navigation.js'\nimport React from 'react'\n\nimport { getLatestVersion } from '../Versions/getLatestVersion.js'\nimport { DefaultVersionView } from './Default/index.js'\n\nexport const VersionView: EditViewComponent = async (props) => {\n const { initPageResult, routeSegments } = props\n\n const {\n collectionConfig,\n docID: id,\n globalConfig,\n permissions,\n req,\n req: { payload, payload: { config } = {}, user } = {},\n } = initPageResult\n\n const versionID = routeSegments[routeSegments.length - 1]\n\n const collectionSlug = collectionConfig?.slug\n const globalSlug = globalConfig?.slug\n\n const { localization } = config\n\n let docPermissions: CollectionPermission | GlobalPermission\n let slug: string\n\n let doc: Document\n let latestPublishedVersion = null\n let latestDraftVersion = null\n\n if (collectionSlug) {\n // /collections/:slug/:id/versions/:versionID\n slug = collectionSlug\n docPermissions = permissions.collections[collectionSlug]\n\n try {\n doc = await payload.findVersionByID({\n id: versionID,\n collection: slug,\n depth: 1,\n locale: '*',\n overrideAccess: false,\n req,\n user,\n })\n\n if (collectionConfig?.versions?.drafts) {\n latestDraftVersion = await getLatestVersion(payload, slug, 'draft', 'collection')\n latestPublishedVersion = await getLatestVersion(payload, slug, 'published', 'collection')\n }\n } catch (error) {\n return notFound()\n }\n }\n\n if (globalSlug) {\n // /globals/:slug/versions/:versionID\n slug = globalSlug\n docPermissions = permissions.globals[globalSlug]\n\n try {\n doc = await payload.findGlobalVersionByID({\n id: versionID,\n slug,\n depth: 1,\n locale: '*',\n overrideAccess: false,\n req,\n user,\n })\n\n if (globalConfig?.versions?.drafts) {\n latestDraftVersion = await getLatestVersion(payload, slug, 'draft', 'global')\n latestPublishedVersion = await getLatestVersion(payload, slug, 'published', 'global')\n }\n } catch (error) {\n return notFound()\n }\n }\n\n const publishedNewerThanDraft = latestPublishedVersion?.updatedAt > latestDraftVersion?.updatedAt\n\n if (publishedNewerThanDraft) {\n latestDraftVersion = {\n id: '',\n updatedAt: '',\n }\n }\n\n const localeOptions: OptionObject[] =\n localization &&\n localization.locales.map(({ code, label }) => ({\n label,\n value: code,\n }))\n\n const latestVersion =\n latestPublishedVersion?.updatedAt > latestDraftVersion?.updatedAt\n ? latestPublishedVersion\n : latestDraftVersion\n\n if (!doc) {\n return notFound()\n }\n\n return (\n <DefaultVersionView\n doc={doc}\n docPermissions={docPermissions}\n initialComparisonDoc={latestVersion}\n latestDraftVersion={latestDraftVersion?.id}\n latestPublishedVersion={latestPublishedVersion?.id}\n localeOptions={localeOptions}\n versionID={versionID}\n />\n )\n}\n"],"names":["notFound","React","getLatestVersion","DefaultVersionView","VersionView","props","initPageResult","routeSegments","collectionConfig","docID","id","globalConfig","permissions","req","payload","config","user","versionID","length","collectionSlug","slug","globalSlug","localization","docPermissions","doc","latestPublishedVersion","latestDraftVersion","collections","findVersionByID","collection","depth","locale","overrideAccess","versions","drafts","error","globals","findGlobalVersionByID","publishedNewerThanDraft","updatedAt","localeOptions","locales","map","code","label","value","latestVersion","initialComparisonDoc"],"mappings":";AAQA,SAASA,QAAQ,QAAQ,qBAAoB;AAC7C,OAAOC,WAAW,QAAO;AAEzB,SAASC,gBAAgB,QAAQ,kCAAiC;AAClE,SAASC,kBAAkB,QAAQ,qBAAoB;AAEvD,OAAO,MAAMC,cAAiC,OAAOC;IACnD,MAAM,EAAEC,cAAc,EAAEC,aAAa,EAAE,GAAGF;IAE1C,MAAM,EACJG,gBAAgB,EAChBC,OAAOC,EAAE,EACTC,YAAY,EACZC,WAAW,EACXC,GAAG,EACHA,KAAK,EAAEC,OAAO,EAAEA,SAAS,EAAEC,MAAM,EAAE,GAAG,CAAC,CAAC,EAAEC,IAAI,EAAE,GAAG,CAAC,CAAC,EACtD,GAAGV;IAEJ,MAAMW,YAAYV,aAAa,CAACA,cAAcW,MAAM,GAAG,EAAE;IAEzD,MAAMC,iBAAiBX,kBAAkBY;IACzC,MAAMC,aAAaV,cAAcS;IAEjC,MAAM,EAAEE,YAAY,EAAE,GAAGP;IAEzB,IAAIQ;IACJ,IAAIH;IAEJ,IAAII;IACJ,IAAIC,yBAAyB;IAC7B,IAAIC,qBAAqB;IAEzB,IAAIP,gBAAgB;QAClB,6CAA6C;QAC7CC,OAAOD;QACPI,iBAAiBX,YAAYe,WAAW,CAACR,eAAe;QAExD,IAAI;YACFK,MAAM,MAAMV,QAAQc,eAAe,CAAC;gBAClClB,IAAIO;gBACJY,YAAYT;gBACZU,OAAO;gBACPC,QAAQ;gBACRC,gBAAgB;gBAChBnB;gBACAG;YACF;YAEA,IAAIR,kBAAkByB,UAAUC,QAAQ;gBACtCR,qBAAqB,MAAMxB,iBAAiBY,SAASM,MAAM,SAAS;gBACpEK,yBAAyB,MAAMvB,iBAAiBY,SAASM,MAAM,aAAa;YAC9E;QACF,EAAE,OAAOe,OAAO;YACd,OAAOnC;QACT;IACF;IAEA,IAAIqB,YAAY;QACd,qCAAqC;QACrCD,OAAOC;QACPE,iBAAiBX,YAAYwB,OAAO,CAACf,WAAW;QAEhD,IAAI;YACFG,MAAM,MAAMV,QAAQuB,qBAAqB,CAAC;gBACxC3B,IAAIO;gBACJG;gBACAU,OAAO;gBACPC,QAAQ;gBACRC,gBAAgB;gBAChBnB;gBACAG;YACF;YAEA,IAAIL,cAAcsB,UAAUC,QAAQ;gBAClCR,qBAAqB,MAAMxB,iBAAiBY,SAASM,MAAM,SAAS;gBACpEK,yBAAyB,MAAMvB,iBAAiBY,SAASM,MAAM,aAAa;YAC9E;QACF,EAAE,OAAOe,OAAO;YACd,OAAOnC;QACT;IACF;IAEA,MAAMsC,0BAA0Bb,wBAAwBc,YAAYb,oBAAoBa;IAExF,IAAID,yBAAyB;QAC3BZ,qBAAqB;YACnBhB,IAAI;YACJ6B,WAAW;QACb;IACF;IAEA,MAAMC,gBACJlB,gBACAA,aAAamB,OAAO,CAACC,GAAG,CAAC,CAAC,EAAEC,IAAI,EAAEC,KAAK,EAAE,GAAM,CAAA;YAC7CA;YACAC,OAAOF;QACT,CAAA;IAEF,MAAMG,gBACJrB,wBAAwBc,YAAYb,oBAAoBa,YACpDd,yBACAC;IAEN,IAAI,CAACF,KAAK;QACR,OAAOxB;IACT;IAEA,qBACE,KAACG;QACCqB,KAAKA;QACLD,gBAAgBA;QAChBwB,sBAAsBD;QACtBpB,oBAAoBA,oBAAoBhB;QACxCe,wBAAwBA,wBAAwBf;QAChD8B,eAAeA;QACfvB,WAAWA;;AAGjB,EAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.client.d.ts","sourceRoot":"","sources":["../../../src/views/Versions/index.client.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,SAAS,CAAA;AAExD,OAAO,EACL,KAAK,MAAM,EAUZ,MAAM,gBAAgB,CAAA;AAEvB,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,eAAO,MAAM,kBAAkB,EAAE,KAAK,CAAC,EAAE,CAAC;IACxC,SAAS,EAAE,MAAM,CAAA;IACjB,OAAO,EAAE,MAAM,EAAE,CAAA;IACjB,QAAQ,EAAE,MAAM,CAAA;IAChB,gBAAgB,CAAC,EAAE,yBAAyB,CAAC,OAAO,CAAC,CAAC,YAAY,CAAC,CAAC,QAAQ,CAAC,CAAA;CAC9E,
|
|
1
|
+
{"version":3,"file":"index.client.d.ts","sourceRoot":"","sources":["../../../src/views/Versions/index.client.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,SAAS,CAAA;AAExD,OAAO,EACL,KAAK,MAAM,EAUZ,MAAM,gBAAgB,CAAA;AAEvB,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,eAAO,MAAM,kBAAkB,EAAE,KAAK,CAAC,EAAE,CAAC;IACxC,SAAS,EAAE,MAAM,CAAA;IACjB,OAAO,EAAE,MAAM,EAAE,CAAA;IACjB,QAAQ,EAAE,MAAM,CAAA;IAChB,gBAAgB,CAAC,EAAE,yBAAyB,CAAC,OAAO,CAAC,CAAC,YAAY,CAAC,CAAC,QAAQ,CAAC,CAAA;CAC9E,CAgEA,CAAA"}
|
|
@@ -7,7 +7,7 @@ export const VersionsViewClient = (props)=>{
|
|
|
7
7
|
const { baseClass, columns, paginationLimits } = props;
|
|
8
8
|
const { getComponentMap } = useComponentMap();
|
|
9
9
|
const { collectionSlug, globalSlug } = useDocumentInfo();
|
|
10
|
-
const { data, handlePerPageChange } = useListQuery();
|
|
10
|
+
const { data, handlePageChange, handlePerPageChange } = useListQuery();
|
|
11
11
|
const componentMap = getComponentMap({
|
|
12
12
|
collectionSlug,
|
|
13
13
|
globalSlug
|
|
@@ -45,6 +45,7 @@ export const VersionsViewClient = (props)=>{
|
|
|
45
45
|
limit: data.limit,
|
|
46
46
|
nextPage: data.nextPage,
|
|
47
47
|
numberOfNeighbors: 1,
|
|
48
|
+
onChange: ()=>handlePageChange,
|
|
48
49
|
page: data.page,
|
|
49
50
|
prevPage: data.prevPage,
|
|
50
51
|
totalPages: data.totalPages
|
|
@@ -64,7 +65,7 @@ export const VersionsViewClient = (props)=>{
|
|
|
64
65
|
]
|
|
65
66
|
}),
|
|
66
67
|
/*#__PURE__*/ _jsx(PerPage, {
|
|
67
|
-
handleChange: handlePerPageChange,
|
|
68
|
+
handleChange: ()=>handlePerPageChange,
|
|
68
69
|
limit: limit ? Number(limit) : 10,
|
|
69
70
|
limits: paginationLimits
|
|
70
71
|
})
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/views/Versions/index.client.tsx"],"sourcesContent":["'use client'\nimport type { SanitizedCollectionConfig } from 'payload'\n\nimport {\n type Column,\n LoadingOverlayToggle,\n Pagination,\n PerPage,\n SetViewActions,\n Table,\n useComponentMap,\n useDocumentInfo,\n useListQuery,\n useTranslation,\n} from '@payloadcms/ui'\nimport { useSearchParams } from 'next/navigation.js'\nimport React from 'react'\n\nexport const VersionsViewClient: React.FC<{\n baseClass: string\n columns: Column[]\n fetchURL: string\n paginationLimits?: SanitizedCollectionConfig['admin']['pagination']['limits']\n}> = (props) => {\n const { baseClass, columns, paginationLimits } = props\n\n const { getComponentMap } = useComponentMap()\n const { collectionSlug, globalSlug } = useDocumentInfo()\n const { data, handlePerPageChange } = useListQuery()\n\n const componentMap = getComponentMap({\n collectionSlug,\n globalSlug,\n })\n\n const searchParams = useSearchParams()\n const limit = searchParams.get('limit')\n\n const { i18n } = useTranslation()\n\n const versionCount = data?.totalDocs || 0\n\n return (\n <React.Fragment>\n <SetViewActions actions={componentMap?.actionsMap?.Edit?.Versions} />\n <LoadingOverlayToggle name=\"versions\" show={!data} />\n {versionCount === 0 && (\n <div className={`${baseClass}__no-versions`}>\n {i18n.t('version:noFurtherVersionsFound')}\n </div>\n )}\n {versionCount > 0 && (\n <React.Fragment>\n <Table columns={columns} data={data?.docs} fieldMap={componentMap?.fieldMap} />\n <div className={`${baseClass}__page-controls`}>\n <Pagination\n hasNextPage={data.hasNextPage}\n hasPrevPage={data.hasPrevPage}\n limit={data.limit}\n nextPage={data.nextPage}\n numberOfNeighbors={1}\n page={data.page}\n prevPage={data.prevPage}\n totalPages={data.totalPages}\n />\n {data?.totalDocs > 0 && (\n <React.Fragment>\n <div className={`${baseClass}__page-info`}>\n {data.page * data.limit - (data.limit - 1)}-\n {data.totalPages > 1 && data.totalPages !== data.page\n ? data.limit * data.page\n : data.totalDocs}{' '}\n {i18n.t('general:of')} {data.totalDocs}\n </div>\n <PerPage\n handleChange={handlePerPageChange}\n limit={limit ? Number(limit) : 10}\n limits={paginationLimits}\n />\n </React.Fragment>\n )}\n </div>\n </React.Fragment>\n )}\n </React.Fragment>\n )\n}\n"],"names":["LoadingOverlayToggle","Pagination","PerPage","SetViewActions","Table","useComponentMap","useDocumentInfo","useListQuery","useTranslation","useSearchParams","React","VersionsViewClient","props","baseClass","columns","paginationLimits","getComponentMap","collectionSlug","globalSlug","data","handlePerPageChange","componentMap","searchParams","limit","get","i18n","versionCount","totalDocs","Fragment","actions","actionsMap","Edit","Versions","name","show","div","className","t","docs","fieldMap","hasNextPage","hasPrevPage","nextPage","numberOfNeighbors","page","prevPage","totalPages","handleChange","Number","limits"],"mappings":"AAAA;;AAGA,SAEEA,oBAAoB,EACpBC,UAAU,EACVC,OAAO,EACPC,cAAc,EACdC,KAAK,EACLC,eAAe,EACfC,eAAe,EACfC,YAAY,EACZC,cAAc,QACT,iBAAgB;AACvB,SAASC,eAAe,QAAQ,qBAAoB;AACpD,OAAOC,WAAW,QAAO;AAEzB,OAAO,MAAMC,qBAKR,CAACC;IACJ,MAAM,EAAEC,SAAS,EAAEC,OAAO,EAAEC,gBAAgB,EAAE,GAAGH;IAEjD,MAAM,EAAEI,eAAe,EAAE,GAAGX;IAC5B,MAAM,EAAEY,cAAc,EAAEC,UAAU,EAAE,GAAGZ;IACvC,MAAM,EAAEa,IAAI,EAAEC,mBAAmB,EAAE,
|
|
1
|
+
{"version":3,"sources":["../../../src/views/Versions/index.client.tsx"],"sourcesContent":["'use client'\nimport type { SanitizedCollectionConfig } from 'payload'\n\nimport {\n type Column,\n LoadingOverlayToggle,\n Pagination,\n PerPage,\n SetViewActions,\n Table,\n useComponentMap,\n useDocumentInfo,\n useListQuery,\n useTranslation,\n} from '@payloadcms/ui'\nimport { useSearchParams } from 'next/navigation.js'\nimport React from 'react'\n\nexport const VersionsViewClient: React.FC<{\n baseClass: string\n columns: Column[]\n fetchURL: string\n paginationLimits?: SanitizedCollectionConfig['admin']['pagination']['limits']\n}> = (props) => {\n const { baseClass, columns, paginationLimits } = props\n\n const { getComponentMap } = useComponentMap()\n const { collectionSlug, globalSlug } = useDocumentInfo()\n const { data, handlePageChange, handlePerPageChange } = useListQuery()\n\n const componentMap = getComponentMap({\n collectionSlug,\n globalSlug,\n })\n\n const searchParams = useSearchParams()\n const limit = searchParams.get('limit')\n\n const { i18n } = useTranslation()\n\n const versionCount = data?.totalDocs || 0\n\n return (\n <React.Fragment>\n <SetViewActions actions={componentMap?.actionsMap?.Edit?.Versions} />\n <LoadingOverlayToggle name=\"versions\" show={!data} />\n {versionCount === 0 && (\n <div className={`${baseClass}__no-versions`}>\n {i18n.t('version:noFurtherVersionsFound')}\n </div>\n )}\n {versionCount > 0 && (\n <React.Fragment>\n <Table columns={columns} data={data?.docs} fieldMap={componentMap?.fieldMap} />\n <div className={`${baseClass}__page-controls`}>\n <Pagination\n hasNextPage={data.hasNextPage}\n hasPrevPage={data.hasPrevPage}\n limit={data.limit}\n nextPage={data.nextPage}\n numberOfNeighbors={1}\n onChange={() => handlePageChange}\n page={data.page}\n prevPage={data.prevPage}\n totalPages={data.totalPages}\n />\n {data?.totalDocs > 0 && (\n <React.Fragment>\n <div className={`${baseClass}__page-info`}>\n {data.page * data.limit - (data.limit - 1)}-\n {data.totalPages > 1 && data.totalPages !== data.page\n ? data.limit * data.page\n : data.totalDocs}{' '}\n {i18n.t('general:of')} {data.totalDocs}\n </div>\n <PerPage\n handleChange={() => handlePerPageChange}\n limit={limit ? Number(limit) : 10}\n limits={paginationLimits}\n />\n </React.Fragment>\n )}\n </div>\n </React.Fragment>\n )}\n </React.Fragment>\n )\n}\n"],"names":["LoadingOverlayToggle","Pagination","PerPage","SetViewActions","Table","useComponentMap","useDocumentInfo","useListQuery","useTranslation","useSearchParams","React","VersionsViewClient","props","baseClass","columns","paginationLimits","getComponentMap","collectionSlug","globalSlug","data","handlePageChange","handlePerPageChange","componentMap","searchParams","limit","get","i18n","versionCount","totalDocs","Fragment","actions","actionsMap","Edit","Versions","name","show","div","className","t","docs","fieldMap","hasNextPage","hasPrevPage","nextPage","numberOfNeighbors","onChange","page","prevPage","totalPages","handleChange","Number","limits"],"mappings":"AAAA;;AAGA,SAEEA,oBAAoB,EACpBC,UAAU,EACVC,OAAO,EACPC,cAAc,EACdC,KAAK,EACLC,eAAe,EACfC,eAAe,EACfC,YAAY,EACZC,cAAc,QACT,iBAAgB;AACvB,SAASC,eAAe,QAAQ,qBAAoB;AACpD,OAAOC,WAAW,QAAO;AAEzB,OAAO,MAAMC,qBAKR,CAACC;IACJ,MAAM,EAAEC,SAAS,EAAEC,OAAO,EAAEC,gBAAgB,EAAE,GAAGH;IAEjD,MAAM,EAAEI,eAAe,EAAE,GAAGX;IAC5B,MAAM,EAAEY,cAAc,EAAEC,UAAU,EAAE,GAAGZ;IACvC,MAAM,EAAEa,IAAI,EAAEC,gBAAgB,EAAEC,mBAAmB,EAAE,GAAGd;IAExD,MAAMe,eAAeN,gBAAgB;QACnCC;QACAC;IACF;IAEA,MAAMK,eAAed;IACrB,MAAMe,QAAQD,aAAaE,GAAG,CAAC;IAE/B,MAAM,EAAEC,IAAI,EAAE,GAAGlB;IAEjB,MAAMmB,eAAeR,MAAMS,aAAa;IAExC,qBACE,MAAClB,MAAMmB,QAAQ;;0BACb,KAAC1B;gBAAe2B,SAASR,cAAcS,YAAYC,MAAMC;;0BACzD,KAACjC;gBAAqBkC,MAAK;gBAAWC,MAAM,CAAChB;;YAC5CQ,iBAAiB,mBAChB,KAACS;gBAAIC,WAAW,CAAC,EAAExB,UAAU,aAAa,CAAC;0BACxCa,KAAKY,CAAC,CAAC;;YAGXX,eAAe,mBACd,MAACjB,MAAMmB,QAAQ;;kCACb,KAACzB;wBAAMU,SAASA;wBAASK,MAAMA,MAAMoB;wBAAMC,UAAUlB,cAAckB;;kCACnE,MAACJ;wBAAIC,WAAW,CAAC,EAAExB,UAAU,eAAe,CAAC;;0CAC3C,KAACZ;gCACCwC,aAAatB,KAAKsB,WAAW;gCAC7BC,aAAavB,KAAKuB,WAAW;gCAC7BlB,OAAOL,KAAKK,KAAK;gCACjBmB,UAAUxB,KAAKwB,QAAQ;gCACvBC,mBAAmB;gCACnBC,UAAU,IAAMzB;gCAChB0B,MAAM3B,KAAK2B,IAAI;gCACfC,UAAU5B,KAAK4B,QAAQ;gCACvBC,YAAY7B,KAAK6B,UAAU;;4BAE5B7B,MAAMS,YAAY,mBACjB,MAAClB,MAAMmB,QAAQ;;kDACb,MAACO;wCAAIC,WAAW,CAAC,EAAExB,UAAU,WAAW,CAAC;;4CACtCM,KAAK2B,IAAI,GAAG3B,KAAKK,KAAK,GAAIL,CAAAA,KAAKK,KAAK,GAAG,CAAA;4CAAG;4CAC1CL,KAAK6B,UAAU,GAAG,KAAK7B,KAAK6B,UAAU,KAAK7B,KAAK2B,IAAI,GACjD3B,KAAKK,KAAK,GAAGL,KAAK2B,IAAI,GACtB3B,KAAKS,SAAS;4CAAE;4CACnBF,KAAKY,CAAC,CAAC;4CAAc;4CAAEnB,KAAKS,SAAS;;;kDAExC,KAAC1B;wCACC+C,cAAc,IAAM5B;wCACpBG,OAAOA,QAAQ0B,OAAO1B,SAAS;wCAC/B2B,QAAQpC;;;;;;;;;;AAS1B,EAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"withPayload.d.ts","sourceRoot":"","sources":["../src/withPayload.js"],"names":[],"mappings":"AAKO,yCAJI,OAAO,MAAM,EAAE,UAAU,GAEvB,OAAO,MAAM,EAAE,UAAU,
|
|
1
|
+
{"version":3,"file":"withPayload.d.ts","sourceRoot":"","sources":["../src/withPayload.js"],"names":[],"mappings":"AAKO,yCAJI,OAAO,MAAM,EAAE,UAAU,GAEvB,OAAO,MAAM,EAAE,UAAU,CAwHrC"}
|
package/dist/withPayload.js
CHANGED
|
@@ -13,16 +13,23 @@
|
|
|
13
13
|
env: {
|
|
14
14
|
...nextConfig?.env || {}
|
|
15
15
|
},
|
|
16
|
+
outputFileTracingExcludes: {
|
|
17
|
+
...nextConfig?.outputFileTracingExcludes || {},
|
|
18
|
+
'**/*': [
|
|
19
|
+
...nextConfig?.outputFileTracingExcludes?.['**/*'] || [],
|
|
20
|
+
'drizzle-kit',
|
|
21
|
+
'drizzle-kit/api'
|
|
22
|
+
]
|
|
23
|
+
},
|
|
24
|
+
outputFileTracingIncludes: {
|
|
25
|
+
...nextConfig?.outputFileTracingIncludes || {},
|
|
26
|
+
'**/*': [
|
|
27
|
+
...nextConfig?.outputFileTracingIncludes?.['**/*'] || [],
|
|
28
|
+
'@libsql/client'
|
|
29
|
+
]
|
|
30
|
+
},
|
|
16
31
|
experimental: {
|
|
17
32
|
...nextConfig?.experimental || {},
|
|
18
|
-
outputFileTracingExcludes: {
|
|
19
|
-
'**/*': [
|
|
20
|
-
...nextConfig.experimental?.outputFileTracingExcludes?.['**/*'] || [],
|
|
21
|
-
'drizzle-kit',
|
|
22
|
-
'drizzle-kit/payload',
|
|
23
|
-
'libsql'
|
|
24
|
-
]
|
|
25
|
-
},
|
|
26
33
|
turbo: {
|
|
27
34
|
...nextConfig?.experimental?.turbo || {},
|
|
28
35
|
resolveAlias: {
|
|
@@ -57,9 +64,9 @@
|
|
|
57
64
|
serverExternalPackages: [
|
|
58
65
|
...nextConfig?.serverExternalPackages || [],
|
|
59
66
|
'drizzle-kit',
|
|
60
|
-
'drizzle-kit/
|
|
61
|
-
'libsql',
|
|
67
|
+
'drizzle-kit/api',
|
|
62
68
|
'pino',
|
|
69
|
+
'libsql',
|
|
63
70
|
'pino-pretty',
|
|
64
71
|
'graphql'
|
|
65
72
|
],
|
|
@@ -70,7 +77,7 @@
|
|
|
70
77
|
externals: [
|
|
71
78
|
...incomingWebpackConfig?.externals || [],
|
|
72
79
|
'drizzle-kit',
|
|
73
|
-
'drizzle-kit/
|
|
80
|
+
'drizzle-kit/api',
|
|
74
81
|
'sharp',
|
|
75
82
|
'libsql'
|
|
76
83
|
],
|