@payloadcms/ui 3.1.2-canary.eb1a61e → 3.2.0
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/AddNewRelation/index.d.ts.map +1 -1
- package/dist/elements/AddNewRelation/index.js.map +1 -1
- package/dist/elements/CopyLocaleData/index.d.ts +4 -0
- package/dist/elements/CopyLocaleData/index.d.ts.map +1 -0
- package/dist/elements/CopyLocaleData/index.js +182 -0
- package/dist/elements/CopyLocaleData/index.js.map +1 -0
- package/dist/elements/CopyLocaleData/index.scss +24 -0
- package/dist/elements/DocumentControls/index.d.ts.map +1 -1
- package/dist/elements/DocumentControls/index.js +3 -1
- package/dist/elements/DocumentControls/index.js.map +1 -1
- package/dist/elements/DocumentDrawer/DrawerContent.d.ts.map +1 -1
- package/dist/elements/DocumentDrawer/DrawerContent.js +3 -1
- package/dist/elements/DocumentDrawer/DrawerContent.js.map +1 -1
- package/dist/elements/DocumentDrawer/index.d.ts.map +1 -1
- package/dist/elements/DocumentDrawer/index.js +30 -27
- package/dist/elements/DocumentDrawer/index.js.map +1 -1
- package/dist/elements/DocumentDrawer/types.d.ts +2 -0
- package/dist/elements/DocumentDrawer/types.d.ts.map +1 -1
- package/dist/elements/DocumentDrawer/types.js.map +1 -1
- package/dist/elements/ListDrawer/DrawerContent.d.ts.map +1 -1
- package/dist/elements/ListDrawer/DrawerContent.js +3 -1
- package/dist/elements/ListDrawer/DrawerContent.js.map +1 -1
- package/dist/elements/ListDrawer/types.d.ts +2 -0
- package/dist/elements/ListDrawer/types.d.ts.map +1 -1
- package/dist/elements/ListDrawer/types.js.map +1 -1
- package/dist/elements/Popup/PopupTrigger/index.d.ts.map +1 -1
- package/dist/elements/Popup/PopupTrigger/index.js +5 -0
- package/dist/elements/Popup/PopupTrigger/index.js.map +1 -1
- package/dist/elements/RelationshipTable/index.d.ts.map +1 -1
- package/dist/elements/RelationshipTable/index.js +1 -0
- package/dist/elements/RelationshipTable/index.js.map +1 -1
- package/dist/elements/SearchFilter/index.d.ts.map +1 -1
- package/dist/elements/SearchFilter/index.js +0 -1
- package/dist/elements/SearchFilter/index.js.map +1 -1
- package/dist/elements/Thumbnail/index.d.ts.map +1 -1
- package/dist/elements/Thumbnail/index.js.map +1 -1
- package/dist/elements/WhereBuilder/index.d.ts.map +1 -1
- package/dist/elements/WhereBuilder/index.js.map +1 -1
- package/dist/exports/client/index.d.ts +1 -0
- package/dist/exports/client/index.d.ts.map +1 -1
- package/dist/exports/client/index.js +10 -10
- package/dist/exports/client/index.js.map +4 -4
- package/dist/exports/rsc/index.d.ts +1 -0
- package/dist/exports/rsc/index.d.ts.map +1 -1
- package/dist/exports/rsc/index.js +1 -0
- package/dist/exports/rsc/index.js.map +1 -1
- package/dist/fields/Join/index.d.ts.map +1 -1
- package/dist/fields/Join/index.js +1 -0
- package/dist/fields/Join/index.js.map +1 -1
- package/dist/providers/ListQuery/index.d.ts.map +1 -1
- package/dist/providers/ListQuery/index.js +0 -1
- package/dist/providers/ListQuery/index.js.map +1 -1
- package/dist/providers/Selection/index.d.ts.map +1 -1
- package/dist/providers/Selection/index.js +0 -4
- package/dist/providers/Selection/index.js.map +1 -1
- package/dist/providers/ServerFunctions/index.d.ts +8 -0
- package/dist/providers/ServerFunctions/index.d.ts.map +1 -1
- package/dist/providers/ServerFunctions/index.js +19 -0
- package/dist/providers/ServerFunctions/index.js.map +1 -1
- package/dist/styles.css +1 -1
- package/dist/utilities/copyDataFromLocale.d.ts +13 -0
- package/dist/utilities/copyDataFromLocale.d.ts.map +1 -0
- package/dist/utilities/copyDataFromLocale.js +195 -0
- package/dist/utilities/copyDataFromLocale.js.map +1 -0
- package/package.json +4 -4
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { type CollectionSlug, type PayloadRequest } from 'payload';
|
|
2
|
+
export type CopyDataFromLocaleArgs = {
|
|
3
|
+
collectionSlug?: CollectionSlug;
|
|
4
|
+
docID?: number | string;
|
|
5
|
+
fromLocale: string;
|
|
6
|
+
globalSlug?: string;
|
|
7
|
+
overrideData?: boolean;
|
|
8
|
+
req: PayloadRequest;
|
|
9
|
+
toLocale: string;
|
|
10
|
+
};
|
|
11
|
+
export declare const copyDataFromLocaleHandler: (args: CopyDataFromLocaleArgs) => Promise<import("payload").JsonObject | import("payload").ErrorResult>;
|
|
12
|
+
export declare const copyDataFromLocale: (args: CopyDataFromLocaleArgs) => Promise<import("payload").JsonObject>;
|
|
13
|
+
//# sourceMappingURL=copyDataFromLocale.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"copyDataFromLocale.d.ts","sourceRoot":"","sources":["../../src/utilities/copyDataFromLocale.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,cAAc,EAInB,KAAK,cAAc,EACpB,MAAM,SAAS,CAAA;AAGhB,MAAM,MAAM,sBAAsB,GAAG;IACnC,cAAc,CAAC,EAAE,cAAc,CAAA;IAC/B,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACvB,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,GAAG,EAAE,cAAc,CAAA;IACnB,QAAQ,EAAE,MAAM,CAAA;CACjB,CAAA;AAkHD,eAAO,MAAM,yBAAyB,SAAgB,sBAAsB,0EAkB3E,CAAA;AAED,eAAO,MAAM,kBAAkB,SAAgB,sBAAsB,0CAyGpE,CAAA"}
|
|
@@ -0,0 +1,195 @@
|
|
|
1
|
+
import { formatErrors } from 'payload';
|
|
2
|
+
import { fieldAffectsData, tabHasName } from 'payload/shared';
|
|
3
|
+
function iterateFields(fields, fromLocaleData, toLocaleData) {
|
|
4
|
+
fields.map(field => {
|
|
5
|
+
if (fieldAffectsData(field)) {
|
|
6
|
+
switch (field.type) {
|
|
7
|
+
case 'array':
|
|
8
|
+
// if the field has no value, take the source value
|
|
9
|
+
if (field.name in toLocaleData &&
|
|
10
|
+
// only replace if the target value is null or undefined
|
|
11
|
+
[null, undefined].includes(toLocaleData[field.name]) && field.name in fromLocaleData) {
|
|
12
|
+
toLocaleData[field.name] = fromLocaleData[field.name];
|
|
13
|
+
break;
|
|
14
|
+
}
|
|
15
|
+
// if the field has a value but is not localized, loop over the data from target
|
|
16
|
+
if (!field.localized && field.name in toLocaleData) {
|
|
17
|
+
toLocaleData[field.name].map((item, index) => {
|
|
18
|
+
if (fromLocaleData[field.name]?.[index]) {
|
|
19
|
+
iterateFields(field.fields, fromLocaleData[field.name][index], item);
|
|
20
|
+
}
|
|
21
|
+
});
|
|
22
|
+
}
|
|
23
|
+
break;
|
|
24
|
+
case 'blocks':
|
|
25
|
+
// if the field has no value, take the source value
|
|
26
|
+
if (field.name in toLocaleData &&
|
|
27
|
+
// only replace if the target value is null or undefined
|
|
28
|
+
[null, undefined].includes(toLocaleData[field.name]) && field.name in fromLocaleData) {
|
|
29
|
+
toLocaleData[field.name] = fromLocaleData[field.name];
|
|
30
|
+
break;
|
|
31
|
+
}
|
|
32
|
+
// if the field has a value but is not localized, loop over the data from target
|
|
33
|
+
if (!field.localized && field.name in toLocaleData) {
|
|
34
|
+
toLocaleData[field.name].map((blockData, index) => {
|
|
35
|
+
const blockFields = field.blocks.find(({
|
|
36
|
+
slug
|
|
37
|
+
}) => slug === blockData.blockType)?.fields;
|
|
38
|
+
if (blockFields?.length) {
|
|
39
|
+
iterateFields(blockFields, fromLocaleData[field.name][index], blockData);
|
|
40
|
+
}
|
|
41
|
+
});
|
|
42
|
+
}
|
|
43
|
+
break;
|
|
44
|
+
case 'checkbox':
|
|
45
|
+
case 'code':
|
|
46
|
+
case 'date':
|
|
47
|
+
case 'email':
|
|
48
|
+
case 'json':
|
|
49
|
+
case 'number':
|
|
50
|
+
case 'point':
|
|
51
|
+
case 'radio':
|
|
52
|
+
case 'relationship':
|
|
53
|
+
case 'richText':
|
|
54
|
+
case 'select':
|
|
55
|
+
case 'text':
|
|
56
|
+
case 'textarea':
|
|
57
|
+
case 'upload':
|
|
58
|
+
if (field.name in toLocaleData &&
|
|
59
|
+
// only replace if the target value is null or undefined
|
|
60
|
+
[null, undefined].includes(toLocaleData[field.name]) && field.name in fromLocaleData) {
|
|
61
|
+
toLocaleData[field.name] = fromLocaleData[field.name];
|
|
62
|
+
}
|
|
63
|
+
break;
|
|
64
|
+
case 'group':
|
|
65
|
+
{
|
|
66
|
+
if (field.name in toLocaleData && fromLocaleData?.[field.name] !== undefined) {
|
|
67
|
+
iterateFields(field.fields, fromLocaleData[field.name], toLocaleData[field.name]);
|
|
68
|
+
}
|
|
69
|
+
break;
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
} else {
|
|
73
|
+
switch (field.type) {
|
|
74
|
+
case 'collapsible':
|
|
75
|
+
case 'row':
|
|
76
|
+
iterateFields(field.fields, fromLocaleData, toLocaleData);
|
|
77
|
+
break;
|
|
78
|
+
case 'tabs':
|
|
79
|
+
field.tabs.map(tab => {
|
|
80
|
+
if (tabHasName(tab)) {
|
|
81
|
+
if (tab.name in toLocaleData && fromLocaleData?.[tab.name] !== undefined) {
|
|
82
|
+
iterateFields(tab.fields, fromLocaleData[tab.name], toLocaleData[tab.name]);
|
|
83
|
+
}
|
|
84
|
+
} else {
|
|
85
|
+
iterateFields(tab.fields, fromLocaleData, toLocaleData);
|
|
86
|
+
}
|
|
87
|
+
});
|
|
88
|
+
break;
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
});
|
|
92
|
+
}
|
|
93
|
+
function mergeData(fromLocaleData, toLocaleData, fields) {
|
|
94
|
+
iterateFields(fields, fromLocaleData, toLocaleData);
|
|
95
|
+
return toLocaleData;
|
|
96
|
+
}
|
|
97
|
+
export const copyDataFromLocaleHandler = async args => {
|
|
98
|
+
const {
|
|
99
|
+
req
|
|
100
|
+
} = args;
|
|
101
|
+
try {
|
|
102
|
+
const res = await copyDataFromLocale(args);
|
|
103
|
+
return res;
|
|
104
|
+
} catch (err) {
|
|
105
|
+
req.payload.logger.error({
|
|
106
|
+
err,
|
|
107
|
+
msg: `There was an error copying data from "${args.fromLocale}" to "${args.toLocale}"`
|
|
108
|
+
});
|
|
109
|
+
if (err.message === 'Unauthorized') {
|
|
110
|
+
return null;
|
|
111
|
+
}
|
|
112
|
+
return formatErrors(err);
|
|
113
|
+
}
|
|
114
|
+
};
|
|
115
|
+
export const copyDataFromLocale = async args => {
|
|
116
|
+
const {
|
|
117
|
+
collectionSlug,
|
|
118
|
+
docID,
|
|
119
|
+
fromLocale,
|
|
120
|
+
globalSlug,
|
|
121
|
+
overrideData = false,
|
|
122
|
+
req: {
|
|
123
|
+
payload,
|
|
124
|
+
payload: {
|
|
125
|
+
collections,
|
|
126
|
+
globals
|
|
127
|
+
},
|
|
128
|
+
user
|
|
129
|
+
},
|
|
130
|
+
toLocale
|
|
131
|
+
} = args;
|
|
132
|
+
const incomingUserSlug = user?.collection;
|
|
133
|
+
const adminUserSlug = payload.config.admin.user;
|
|
134
|
+
// If we have a user slug, test it against the functions
|
|
135
|
+
if (incomingUserSlug) {
|
|
136
|
+
const adminAccessFunction = payload.collections[incomingUserSlug].config.access?.admin;
|
|
137
|
+
// Run the admin access function from the config if it exists
|
|
138
|
+
if (adminAccessFunction) {
|
|
139
|
+
const canAccessAdmin = await adminAccessFunction({
|
|
140
|
+
req: args.req
|
|
141
|
+
});
|
|
142
|
+
if (!canAccessAdmin) {
|
|
143
|
+
throw new Error('Unauthorized');
|
|
144
|
+
}
|
|
145
|
+
// Match the user collection to the global admin config
|
|
146
|
+
} else if (adminUserSlug !== incomingUserSlug) {
|
|
147
|
+
throw new Error('Unauthorized');
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
const [fromLocaleData, toLocaleData] = await Promise.allSettled([globalSlug ? payload.findGlobal({
|
|
151
|
+
slug: globalSlug,
|
|
152
|
+
locale: fromLocale,
|
|
153
|
+
overrideAccess: false,
|
|
154
|
+
user
|
|
155
|
+
}) : payload.findByID({
|
|
156
|
+
id: docID,
|
|
157
|
+
collection: collectionSlug,
|
|
158
|
+
locale: fromLocale,
|
|
159
|
+
overrideAccess: false,
|
|
160
|
+
user
|
|
161
|
+
}), globalSlug ? payload.findGlobal({
|
|
162
|
+
slug: globalSlug,
|
|
163
|
+
locale: toLocale,
|
|
164
|
+
overrideAccess: false,
|
|
165
|
+
user
|
|
166
|
+
}) : payload.findByID({
|
|
167
|
+
id: docID,
|
|
168
|
+
collection: collectionSlug,
|
|
169
|
+
locale: toLocale,
|
|
170
|
+
overrideAccess: false,
|
|
171
|
+
user
|
|
172
|
+
})]);
|
|
173
|
+
if (fromLocaleData.status === 'rejected') {
|
|
174
|
+
throw new Error(`Error fetching data from locale "${fromLocale}"`);
|
|
175
|
+
}
|
|
176
|
+
if (toLocaleData.status === 'rejected') {
|
|
177
|
+
throw new Error(`Error fetching data from locale "${toLocale}"`);
|
|
178
|
+
}
|
|
179
|
+
const newToLocaleData = globalSlug ? await payload.updateGlobal({
|
|
180
|
+
slug: globalSlug,
|
|
181
|
+
data: overrideData ? fromLocaleData.value : mergeData(fromLocaleData.value, toLocaleData.value, globals[globalSlug].config.fields),
|
|
182
|
+
locale: toLocale,
|
|
183
|
+
overrideAccess: false,
|
|
184
|
+
user
|
|
185
|
+
}) : await payload.update({
|
|
186
|
+
id: docID,
|
|
187
|
+
collection: collectionSlug,
|
|
188
|
+
data: overrideData ? fromLocaleData.value : mergeData(fromLocaleData.value, toLocaleData.value, collections[collectionSlug].config.fields),
|
|
189
|
+
locale: toLocale,
|
|
190
|
+
overrideAccess: false,
|
|
191
|
+
user
|
|
192
|
+
});
|
|
193
|
+
return newToLocaleData;
|
|
194
|
+
};
|
|
195
|
+
//# sourceMappingURL=copyDataFromLocale.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"copyDataFromLocale.js","names":["formatErrors","fieldAffectsData","tabHasName","iterateFields","fields","fromLocaleData","toLocaleData","map","field","type","name","undefined","includes","localized","item","index","blockData","blockFields","blocks","find","slug","blockType","length","tabs","tab","mergeData","copyDataFromLocaleHandler","args","req","res","copyDataFromLocale","err","payload","logger","error","msg","fromLocale","toLocale","message","collectionSlug","docID","globalSlug","overrideData","collections","globals","user","incomingUserSlug","collection","adminUserSlug","config","admin","adminAccessFunction","access","canAccessAdmin","Error","Promise","allSettled","findGlobal","locale","overrideAccess","findByID","id","status","newToLocaleData","updateGlobal","data","value","update"],"sources":["../../src/utilities/copyDataFromLocale.ts"],"sourcesContent":["import {\n type CollectionSlug,\n type Data,\n type Field,\n formatErrors,\n type PayloadRequest,\n} from 'payload'\nimport { fieldAffectsData, tabHasName } from 'payload/shared'\n\nexport type CopyDataFromLocaleArgs = {\n collectionSlug?: CollectionSlug\n docID?: number | string\n fromLocale: string\n globalSlug?: string\n overrideData?: boolean\n req: PayloadRequest\n toLocale: string\n}\n\nfunction iterateFields(fields: Field[], fromLocaleData: Data, toLocaleData: Data): void {\n fields.map((field) => {\n if (fieldAffectsData(field)) {\n switch (field.type) {\n case 'array':\n // if the field has no value, take the source value\n if (\n field.name in toLocaleData &&\n // only replace if the target value is null or undefined\n [null, undefined].includes(toLocaleData[field.name]) &&\n field.name in fromLocaleData\n ) {\n toLocaleData[field.name] = fromLocaleData[field.name]\n break\n }\n\n // if the field has a value but is not localized, loop over the data from target\n if (!field.localized && field.name in toLocaleData) {\n toLocaleData[field.name].map((item: Data, index: number) => {\n if (fromLocaleData[field.name]?.[index]) {\n iterateFields(field.fields, fromLocaleData[field.name][index], item)\n }\n })\n }\n break\n\n case 'blocks':\n // if the field has no value, take the source value\n if (\n field.name in toLocaleData &&\n // only replace if the target value is null or undefined\n [null, undefined].includes(toLocaleData[field.name]) &&\n field.name in fromLocaleData\n ) {\n toLocaleData[field.name] = fromLocaleData[field.name]\n break\n }\n\n // if the field has a value but is not localized, loop over the data from target\n if (!field.localized && field.name in toLocaleData) {\n toLocaleData[field.name].map((blockData: Data, index: number) => {\n const blockFields = field.blocks.find(\n ({ slug }) => slug === blockData.blockType,\n )?.fields\n\n if (blockFields?.length) {\n iterateFields(blockFields, fromLocaleData[field.name][index], blockData)\n }\n })\n }\n break\n\n case 'checkbox':\n case 'code':\n case 'date':\n case 'email':\n case 'json':\n case 'number':\n case 'point':\n case 'radio':\n case 'relationship':\n case 'richText':\n case 'select':\n case 'text':\n case 'textarea':\n case 'upload':\n if (\n field.name in toLocaleData &&\n // only replace if the target value is null or undefined\n [null, undefined].includes(toLocaleData[field.name]) &&\n field.name in fromLocaleData\n ) {\n toLocaleData[field.name] = fromLocaleData[field.name]\n }\n break\n\n case 'group': {\n if (field.name in toLocaleData && fromLocaleData?.[field.name] !== undefined) {\n iterateFields(field.fields, fromLocaleData[field.name], toLocaleData[field.name])\n }\n break\n }\n }\n } else {\n switch (field.type) {\n case 'collapsible':\n case 'row':\n iterateFields(field.fields, fromLocaleData, toLocaleData)\n break\n\n case 'tabs':\n field.tabs.map((tab) => {\n if (tabHasName(tab)) {\n if (tab.name in toLocaleData && fromLocaleData?.[tab.name] !== undefined) {\n iterateFields(tab.fields, fromLocaleData[tab.name], toLocaleData[tab.name])\n }\n } else {\n iterateFields(tab.fields, fromLocaleData, toLocaleData)\n }\n })\n break\n }\n }\n })\n}\n\nfunction mergeData(fromLocaleData: Data, toLocaleData: Data, fields: Field[]): Data {\n iterateFields(fields, fromLocaleData, toLocaleData)\n\n return toLocaleData\n}\n\nexport const copyDataFromLocaleHandler = async (args: CopyDataFromLocaleArgs) => {\n const { req } = args\n\n try {\n const res = await copyDataFromLocale(args)\n return res\n } catch (err) {\n req.payload.logger.error({\n err,\n msg: `There was an error copying data from \"${args.fromLocale}\" to \"${args.toLocale}\"`,\n })\n\n if (err.message === 'Unauthorized') {\n return null\n }\n\n return formatErrors(err)\n }\n}\n\nexport const copyDataFromLocale = async (args: CopyDataFromLocaleArgs) => {\n const {\n collectionSlug,\n docID,\n fromLocale,\n globalSlug,\n overrideData = false,\n req: {\n payload,\n payload: { collections, globals },\n user,\n },\n toLocale,\n } = args\n\n const incomingUserSlug = user?.collection\n\n const adminUserSlug = payload.config.admin.user\n\n // If we have a user slug, test it against the functions\n if (incomingUserSlug) {\n const adminAccessFunction = payload.collections[incomingUserSlug].config.access?.admin\n\n // Run the admin access function from the config if it exists\n if (adminAccessFunction) {\n const canAccessAdmin = await adminAccessFunction({ req: args.req })\n\n if (!canAccessAdmin) {\n throw new Error('Unauthorized')\n }\n // Match the user collection to the global admin config\n } else if (adminUserSlug !== incomingUserSlug) {\n throw new Error('Unauthorized')\n }\n }\n\n const [fromLocaleData, toLocaleData] = await Promise.allSettled([\n globalSlug\n ? payload.findGlobal({\n slug: globalSlug,\n locale: fromLocale,\n overrideAccess: false,\n user,\n // `select` would allow us to select only the fields we need in the future\n })\n : payload.findByID({\n id: docID,\n collection: collectionSlug,\n locale: fromLocale,\n overrideAccess: false,\n user,\n // `select` would allow us to select only the fields we need in the future\n }),\n globalSlug\n ? payload.findGlobal({\n slug: globalSlug,\n locale: toLocale,\n overrideAccess: false,\n user,\n // `select` would allow us to select only the fields we need in the future\n })\n : payload.findByID({\n id: docID,\n collection: collectionSlug,\n locale: toLocale,\n overrideAccess: false,\n user,\n // `select` would allow us to select only the fields we need in the future\n }),\n ])\n\n if (fromLocaleData.status === 'rejected') {\n throw new Error(`Error fetching data from locale \"${fromLocale}\"`)\n }\n\n if (toLocaleData.status === 'rejected') {\n throw new Error(`Error fetching data from locale \"${toLocale}\"`)\n }\n\n const newToLocaleData = globalSlug\n ? await payload.updateGlobal({\n slug: globalSlug,\n data: overrideData\n ? fromLocaleData.value\n : mergeData(fromLocaleData.value, toLocaleData.value, globals[globalSlug].config.fields),\n locale: toLocale,\n overrideAccess: false,\n user,\n })\n : await payload.update({\n id: docID,\n collection: collectionSlug,\n data: overrideData\n ? fromLocaleData.value\n : mergeData(\n fromLocaleData.value,\n toLocaleData.value,\n collections[collectionSlug].config.fields,\n ),\n locale: toLocale,\n overrideAccess: false,\n user,\n })\n\n return newToLocaleData\n}\n"],"mappings":"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","ignoreList":[]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@payloadcms/ui",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.2.0",
|
|
4
4
|
"homepage": "https://payloadcms.com",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -132,7 +132,7 @@
|
|
|
132
132
|
"ts-essentials": "10.0.3",
|
|
133
133
|
"use-context-selector": "2.0.0",
|
|
134
134
|
"uuid": "10.0.0",
|
|
135
|
-
"@payloadcms/translations": "3.
|
|
135
|
+
"@payloadcms/translations": "3.2.0"
|
|
136
136
|
},
|
|
137
137
|
"devDependencies": {
|
|
138
138
|
"@babel/cli": "^7.24.5",
|
|
@@ -150,14 +150,14 @@
|
|
|
150
150
|
"esbuild": "0.23.1",
|
|
151
151
|
"esbuild-sass-plugin": "3.3.1",
|
|
152
152
|
"eslint-plugin-react-compiler": "19.0.0-beta-a7bf2bd-20241110",
|
|
153
|
-
"payload": "3.
|
|
153
|
+
"payload": "3.2.0",
|
|
154
154
|
"@payloadcms/eslint-config": "3.0.0"
|
|
155
155
|
},
|
|
156
156
|
"peerDependencies": {
|
|
157
157
|
"next": "^15.0.0",
|
|
158
158
|
"react": "^19.0.0 || ^19.0.0-rc-65a56d0e-20241020",
|
|
159
159
|
"react-dom": "^19.0.0 || ^19.0.0-rc-65a56d0e-20241020",
|
|
160
|
-
"payload": "3.
|
|
160
|
+
"payload": "3.2.0"
|
|
161
161
|
},
|
|
162
162
|
"engines": {
|
|
163
163
|
"node": "^18.20.2 || >=20.9.0"
|