@payloadcms/drizzle 3.0.0-canary.9de3ffd → 3.0.0-canary.a5aaf21
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/count.d.ts.map +1 -1
- package/dist/count.js +1 -1
- package/dist/count.js.map +1 -1
- package/dist/createGlobalVersion.d.ts +1 -1
- package/dist/createGlobalVersion.d.ts.map +1 -1
- package/dist/createGlobalVersion.js +4 -2
- package/dist/createGlobalVersion.js.map +1 -1
- package/dist/createTableName.d.ts.map +1 -1
- package/dist/createTableName.js +6 -2
- package/dist/createTableName.js.map +1 -1
- package/dist/createVersion.d.ts +1 -1
- package/dist/createVersion.d.ts.map +1 -1
- package/dist/createVersion.js +22 -14
- package/dist/createVersion.js.map +1 -1
- package/dist/deleteOne.d.ts.map +1 -1
- package/dist/deleteOne.js +5 -3
- package/dist/deleteOne.js.map +1 -1
- package/dist/deleteVersions.js +1 -1
- package/dist/deleteVersions.js.map +1 -1
- package/dist/destroy.d.ts.map +1 -1
- package/dist/destroy.js +3 -1
- package/dist/destroy.js.map +1 -1
- package/dist/find/buildFindManyArgs.d.ts +13 -7
- package/dist/find/buildFindManyArgs.d.ts.map +1 -1
- package/dist/find/buildFindManyArgs.js +5 -1
- package/dist/find/buildFindManyArgs.js.map +1 -1
- package/dist/find/findMany.d.ts +1 -1
- package/dist/find/findMany.d.ts.map +1 -1
- package/dist/find/findMany.js +6 -3
- package/dist/find/findMany.js.map +1 -1
- package/dist/find/traverseFields.d.ts +7 -3
- package/dist/find/traverseFields.d.ts.map +1 -1
- package/dist/find/traverseFields.js +90 -15
- package/dist/find/traverseFields.js.map +1 -1
- package/dist/find.d.ts.map +1 -1
- package/dist/find.js +2 -1
- package/dist/find.js.map +1 -1
- package/dist/findGlobalVersions.js +1 -1
- package/dist/findGlobalVersions.js.map +1 -1
- package/dist/findMigrationDir.d.ts.map +1 -1
- package/dist/findMigrationDir.js +3 -1
- package/dist/findMigrationDir.js.map +1 -1
- package/dist/findOne.d.ts +1 -1
- package/dist/findOne.d.ts.map +1 -1
- package/dist/findOne.js +2 -1
- package/dist/findOne.js.map +1 -1
- package/dist/findVersions.js +1 -1
- package/dist/findVersions.js.map +1 -1
- package/dist/migrate.js +1 -0
- package/dist/migrate.js.map +1 -1
- package/dist/migrateDown.d.ts.map +1 -1
- package/dist/migrateDown.js +1 -1
- package/dist/migrateDown.js.map +1 -1
- package/dist/migrateFresh.d.ts.map +1 -1
- package/dist/migrateFresh.js +1 -0
- package/dist/migrateFresh.js.map +1 -1
- package/dist/migrateRefresh.d.ts.map +1 -1
- package/dist/migrateRefresh.js +2 -1
- package/dist/migrateRefresh.js.map +1 -1
- package/dist/migrateReset.d.ts.map +1 -1
- package/dist/migrateReset.js +4 -2
- package/dist/migrateReset.js.map +1 -1
- package/dist/migrateStatus.js +0 -1
- package/dist/migrateStatus.js.map +1 -1
- package/dist/postgres/countDistinct.d.ts.map +1 -1
- package/dist/postgres/countDistinct.js +3 -3
- package/dist/postgres/countDistinct.js.map +1 -1
- package/dist/postgres/createJSONQuery/convertPathToJSONTraversal.d.ts.map +1 -1
- package/dist/postgres/createJSONQuery/convertPathToJSONTraversal.js +3 -1
- package/dist/postgres/createJSONQuery/convertPathToJSONTraversal.js.map +1 -1
- package/dist/postgres/init.js +2 -2
- package/dist/postgres/init.js.map +1 -1
- package/dist/postgres/schema/build.d.ts +10 -2
- package/dist/postgres/schema/build.d.ts.map +1 -1
- package/dist/postgres/schema/build.js +17 -8
- package/dist/postgres/schema/build.js.map +1 -1
- package/dist/postgres/schema/createIndex.d.ts.map +1 -1
- package/dist/postgres/schema/createIndex.js +3 -1
- package/dist/postgres/schema/createIndex.js.map +1 -1
- package/dist/postgres/schema/traverseFields.d.ts +7 -2
- package/dist/postgres/schema/traverseFields.d.ts.map +1 -1
- package/dist/postgres/schema/traverseFields.js +177 -59
- package/dist/postgres/schema/traverseFields.js.map +1 -1
- package/dist/postgres/schema/withDefault.d.ts.map +1 -1
- package/dist/postgres/schema/withDefault.js +3 -1
- package/dist/postgres/schema/withDefault.js.map +1 -1
- package/dist/postgres/types.d.ts +2 -1
- package/dist/postgres/types.d.ts.map +1 -1
- package/dist/postgres/types.js.map +1 -1
- package/dist/queries/buildAndOrConditions.d.ts +1 -1
- package/dist/queries/buildAndOrConditions.d.ts.map +1 -1
- package/dist/queries/buildAndOrConditions.js +2 -4
- package/dist/queries/buildAndOrConditions.js.map +1 -1
- package/dist/queries/buildOrderBy.d.ts +18 -0
- package/dist/queries/buildOrderBy.d.ts.map +1 -0
- package/dist/queries/buildOrderBy.js +51 -0
- package/dist/queries/buildOrderBy.js.map +1 -0
- package/dist/queries/buildQuery.d.ts +4 -4
- package/dist/queries/buildQuery.d.ts.map +1 -1
- package/dist/queries/buildQuery.js +12 -47
- package/dist/queries/buildQuery.js.map +1 -1
- package/dist/queries/getTableColumnFromPath.d.ts +6 -2
- package/dist/queries/getTableColumnFromPath.d.ts.map +1 -1
- package/dist/queries/getTableColumnFromPath.js +54 -17
- package/dist/queries/getTableColumnFromPath.js.map +1 -1
- package/dist/queries/operatorMap.d.ts.map +1 -1
- package/dist/queries/operatorMap.js.map +1 -1
- package/dist/queries/parseParams.d.ts +1 -1
- package/dist/queries/parseParams.d.ts.map +1 -1
- package/dist/queries/parseParams.js +50 -6
- package/dist/queries/parseParams.js.map +1 -1
- package/dist/queries/sanitizeQueryValue.d.ts +11 -1
- package/dist/queries/sanitizeQueryValue.d.ts.map +1 -1
- package/dist/queries/sanitizeQueryValue.js +69 -21
- package/dist/queries/sanitizeQueryValue.js.map +1 -1
- package/dist/queries/selectDistinct.d.ts +3 -4
- package/dist/queries/selectDistinct.d.ts.map +1 -1
- package/dist/queries/selectDistinct.js.map +1 -1
- package/dist/queryDrafts.d.ts.map +1 -1
- package/dist/queryDrafts.js +1 -2
- package/dist/queryDrafts.js.map +1 -1
- package/dist/transactions/beginTransaction.d.ts.map +1 -1
- package/dist/transactions/beginTransaction.js +5 -1
- package/dist/transactions/beginTransaction.js.map +1 -1
- package/dist/transactions/commitTransaction.d.ts.map +1 -1
- package/dist/transactions/commitTransaction.js +3 -1
- package/dist/transactions/commitTransaction.js.map +1 -1
- package/dist/transform/read/hasManyNumber.d.ts +2 -1
- package/dist/transform/read/hasManyNumber.d.ts.map +1 -1
- package/dist/transform/read/hasManyNumber.js +12 -2
- package/dist/transform/read/hasManyNumber.js.map +1 -1
- package/dist/transform/read/hasManyText.d.ts +2 -1
- package/dist/transform/read/hasManyText.d.ts.map +1 -1
- package/dist/transform/read/hasManyText.js +12 -2
- package/dist/transform/read/hasManyText.js.map +1 -1
- package/dist/transform/read/index.d.ts +3 -2
- package/dist/transform/read/index.d.ts.map +1 -1
- package/dist/transform/read/index.js +3 -2
- package/dist/transform/read/index.js.map +1 -1
- package/dist/transform/read/relationship.d.ts +2 -1
- package/dist/transform/read/relationship.d.ts.map +1 -1
- package/dist/transform/read/relationship.js +15 -6
- package/dist/transform/read/relationship.js.map +1 -1
- package/dist/transform/read/traverseFields.d.ts +10 -2
- package/dist/transform/read/traverseFields.d.ts.map +1 -1
- package/dist/transform/read/traverseFields.js +132 -52
- package/dist/transform/read/traverseFields.js.map +1 -1
- package/dist/transform/write/array.d.ts +6 -1
- package/dist/transform/write/array.d.ts.map +1 -1
- package/dist/transform/write/array.js +7 -3
- package/dist/transform/write/array.js.map +1 -1
- package/dist/transform/write/blocks.d.ts +8 -3
- package/dist/transform/write/blocks.d.ts.map +1 -1
- package/dist/transform/write/blocks.js +19 -7
- package/dist/transform/write/blocks.js.map +1 -1
- package/dist/transform/write/index.d.ts.map +1 -1
- package/dist/transform/write/index.js +1 -1
- package/dist/transform/write/index.js.map +1 -1
- package/dist/transform/write/relationships.d.ts.map +1 -1
- package/dist/transform/write/relationships.js +6 -2
- package/dist/transform/write/relationships.js.map +1 -1
- package/dist/transform/write/selects.d.ts.map +1 -1
- package/dist/transform/write/selects.js +1 -1
- package/dist/transform/write/selects.js.map +1 -1
- package/dist/transform/write/traverseFields.d.ts +6 -1
- package/dist/transform/write/traverseFields.d.ts.map +1 -1
- package/dist/transform/write/traverseFields.js +45 -17
- package/dist/transform/write/traverseFields.js.map +1 -1
- package/dist/types.d.ts +1 -1
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js.map +1 -1
- package/dist/update.d.ts.map +1 -1
- package/dist/update.js +3 -2
- package/dist/update.js.map +1 -1
- package/dist/updateGlobalVersion.js +2 -2
- package/dist/updateGlobalVersion.js.map +1 -1
- package/dist/updateVersion.js +2 -2
- package/dist/updateVersion.js.map +1 -1
- package/dist/upsertRow/deleteExistingRowsByPath.d.ts.map +1 -1
- package/dist/upsertRow/deleteExistingRowsByPath.js +6 -2
- package/dist/upsertRow/deleteExistingRowsByPath.js.map +1 -1
- package/dist/upsertRow/index.d.ts +1 -1
- package/dist/upsertRow/index.d.ts.map +1 -1
- package/dist/upsertRow/index.js +50 -13
- package/dist/upsertRow/index.js.map +1 -1
- package/dist/upsertRow/insertArrays.d.ts.map +1 -1
- package/dist/upsertRow/insertArrays.js +5 -2
- package/dist/upsertRow/insertArrays.js.map +1 -1
- package/dist/upsertRow/types.d.ts +8 -5
- package/dist/upsertRow/types.d.ts.map +1 -1
- package/dist/upsertRow/types.js.map +1 -1
- package/dist/utilities/createBlocksMap.d.ts.map +1 -1
- package/dist/utilities/createBlocksMap.js +4 -2
- package/dist/utilities/createBlocksMap.js.map +1 -1
- package/dist/utilities/createRelationshipMap.d.ts.map +1 -1
- package/dist/utilities/createRelationshipMap.js +3 -1
- package/dist/utilities/createRelationshipMap.js.map +1 -1
- package/dist/utilities/getCollectionIdType.d.ts +7 -0
- package/dist/utilities/getCollectionIdType.d.ts.map +1 -0
- package/dist/utilities/getCollectionIdType.js +11 -0
- package/dist/utilities/getCollectionIdType.js.map +1 -0
- package/dist/utilities/hasLocalesTable.d.ts.map +1 -1
- package/dist/utilities/hasLocalesTable.js +12 -4
- package/dist/utilities/hasLocalesTable.js.map +1 -1
- package/dist/utilities/isPolymorphicRelationship.d.ts +6 -0
- package/dist/utilities/isPolymorphicRelationship.d.ts.map +1 -0
- package/dist/utilities/isPolymorphicRelationship.js +5 -0
- package/dist/utilities/isPolymorphicRelationship.js.map +1 -0
- package/package.json +7 -5
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/transform/read/index.ts"],"sourcesContent":["
|
|
1
|
+
{"version":3,"sources":["../../../src/transform/read/index.ts"],"sourcesContent":["import type { Field, JoinQuery, SanitizedConfig, TypeWithID } from 'payload'\n\nimport type { DrizzleAdapter } from '../../types.js'\n\nimport { createBlocksMap } from '../../utilities/createBlocksMap.js'\nimport { createPathMap } from '../../utilities/createRelationshipMap.js'\nimport { traverseFields } from './traverseFields.js'\n\ntype TransformArgs = {\n adapter: DrizzleAdapter\n config: SanitizedConfig\n data: Record<string, unknown>\n fallbackLocale?: false | string\n fields: Field[]\n joinQuery?: JoinQuery\n locale?: string\n}\n\n// This is the entry point to transform Drizzle output data\n// into the shape Payload expects based on field schema\nexport const transform = <T extends Record<string, unknown> | TypeWithID>({\n adapter,\n config,\n data,\n fields,\n joinQuery,\n}: TransformArgs): T => {\n let relationships: Record<string, Record<string, unknown>[]> = {}\n let texts: Record<string, Record<string, unknown>[]> = {}\n let numbers: Record<string, Record<string, unknown>[]> = {}\n\n if ('_rels' in data) {\n relationships = createPathMap(data._rels)\n delete data._rels\n }\n\n if ('_texts' in data) {\n texts = createPathMap(data._texts)\n delete data._texts\n }\n\n if ('_numbers' in data) {\n numbers = createPathMap(data._numbers)\n delete data._numbers\n }\n\n const blocks = createBlocksMap(data)\n const deletions = []\n\n const result = traverseFields<T>({\n adapter,\n blocks,\n config,\n dataRef: {\n id: data.id,\n },\n deletions,\n fieldPrefix: '',\n fields,\n joinQuery,\n numbers,\n path: '',\n relationships,\n table: data,\n texts,\n })\n\n deletions.forEach((deletion) => deletion())\n\n return result\n}\n"],"names":["createBlocksMap","createPathMap","traverseFields","transform","adapter","config","data","fields","joinQuery","relationships","texts","numbers","_rels","_texts","_numbers","blocks","deletions","result","dataRef","id","fieldPrefix","path","table","forEach","deletion"],"mappings":"AAIA,SAASA,eAAe,QAAQ,qCAAoC;AACpE,SAASC,aAAa,QAAQ,2CAA0C;AACxE,SAASC,cAAc,QAAQ,sBAAqB;AAYpD,2DAA2D;AAC3D,uDAAuD;AACvD,OAAO,MAAMC,YAAY,CAAiD,EACxEC,OAAO,EACPC,MAAM,EACNC,IAAI,EACJC,MAAM,EACNC,SAAS,EACK;IACd,IAAIC,gBAA2D,CAAC;IAChE,IAAIC,QAAmD,CAAC;IACxD,IAAIC,UAAqD,CAAC;IAE1D,IAAI,WAAWL,MAAM;QACnBG,gBAAgBR,cAAcK,KAAKM,KAAK;QACxC,OAAON,KAAKM,KAAK;IACnB;IAEA,IAAI,YAAYN,MAAM;QACpBI,QAAQT,cAAcK,KAAKO,MAAM;QACjC,OAAOP,KAAKO,MAAM;IACpB;IAEA,IAAI,cAAcP,MAAM;QACtBK,UAAUV,cAAcK,KAAKQ,QAAQ;QACrC,OAAOR,KAAKQ,QAAQ;IACtB;IAEA,MAAMC,SAASf,gBAAgBM;IAC/B,MAAMU,YAAY,EAAE;IAEpB,MAAMC,SAASf,eAAkB;QAC/BE;QACAW;QACAV;QACAa,SAAS;YACPC,IAAIb,KAAKa,EAAE;QACb;QACAH;QACAI,aAAa;QACbb;QACAC;QACAG;QACAU,MAAM;QACNZ;QACAa,OAAOhB;QACPI;IACF;IAEAM,UAAUO,OAAO,CAAC,CAACC,WAAaA;IAEhC,OAAOP;AACT,EAAC"}
|
|
@@ -4,7 +4,8 @@ type Args = {
|
|
|
4
4
|
locale?: string;
|
|
5
5
|
ref: Record<string, unknown>;
|
|
6
6
|
relations: Record<string, unknown>[];
|
|
7
|
+
withinArrayOrBlockLocale?: string;
|
|
7
8
|
};
|
|
8
|
-
export declare const transformRelationship: ({ field, locale, ref, relations }: Args) => void;
|
|
9
|
+
export declare const transformRelationship: ({ field, locale, ref, relations, withinArrayOrBlockLocale, }: Args) => void;
|
|
9
10
|
export {};
|
|
10
11
|
//# sourceMappingURL=relationship.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"relationship.d.ts","sourceRoot":"","sources":["../../../src/transform/read/relationship.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"relationship.d.ts","sourceRoot":"","sources":["../../../src/transform/read/relationship.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AAE7D,KAAK,IAAI,GAAG;IACV,KAAK,EAAE,iBAAiB,GAAG,WAAW,CAAA;IACtC,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC5B,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAA;IACpC,wBAAwB,CAAC,EAAE,MAAM,CAAA;CAClC,CAAA;AAED,eAAO,MAAM,qBAAqB,iEAM/B,IAAI,SAwEN,CAAA"}
|
|
@@ -1,17 +1,22 @@
|
|
|
1
|
-
|
|
1
|
+
export const transformRelationship = ({ field, locale, ref, relations, withinArrayOrBlockLocale })=>{
|
|
2
2
|
let result;
|
|
3
3
|
if (!('hasMany' in field) || field.hasMany === false) {
|
|
4
|
-
|
|
4
|
+
let relation = relations[0];
|
|
5
|
+
if (withinArrayOrBlockLocale) {
|
|
6
|
+
relation = relations.find((rel)=>rel.locale === withinArrayOrBlockLocale);
|
|
7
|
+
}
|
|
5
8
|
if (relation) {
|
|
6
9
|
// Handle hasOne Poly
|
|
7
10
|
if (Array.isArray(field.relationTo)) {
|
|
8
|
-
const matchedRelation = Object.entries(relation).find(([key, val])=>
|
|
11
|
+
const matchedRelation = Object.entries(relation).find(([key, val])=>{
|
|
12
|
+
return val !== null && ![
|
|
9
13
|
'id',
|
|
10
14
|
'locale',
|
|
11
15
|
'order',
|
|
12
16
|
'parent',
|
|
13
17
|
'path'
|
|
14
|
-
].includes(key)
|
|
18
|
+
].includes(key);
|
|
19
|
+
});
|
|
15
20
|
if (matchedRelation) {
|
|
16
21
|
const relationTo = matchedRelation[0].replace('ID', '');
|
|
17
22
|
result = {
|
|
@@ -24,10 +29,14 @@
|
|
|
24
29
|
} else {
|
|
25
30
|
const transformedRelations = [];
|
|
26
31
|
relations.forEach((relation)=>{
|
|
32
|
+
let matchedLocale = true;
|
|
33
|
+
if (withinArrayOrBlockLocale) {
|
|
34
|
+
matchedLocale = relation.locale === withinArrayOrBlockLocale;
|
|
35
|
+
}
|
|
27
36
|
// Handle hasMany
|
|
28
37
|
if (!Array.isArray(field.relationTo)) {
|
|
29
38
|
const relatedData = relation[`${field.relationTo}ID`];
|
|
30
|
-
if (relatedData) {
|
|
39
|
+
if (relatedData && matchedLocale) {
|
|
31
40
|
transformedRelations.push(relatedData);
|
|
32
41
|
}
|
|
33
42
|
} else {
|
|
@@ -38,7 +47,7 @@
|
|
|
38
47
|
'order',
|
|
39
48
|
'parent',
|
|
40
49
|
'path'
|
|
41
|
-
].includes(key));
|
|
50
|
+
].includes(key) && matchedLocale);
|
|
42
51
|
if (matchedRelation) {
|
|
43
52
|
const relationTo = matchedRelation[0].replace('ID', '');
|
|
44
53
|
transformedRelations.push({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/transform/read/relationship.ts"],"sourcesContent":["
|
|
1
|
+
{"version":3,"sources":["../../../src/transform/read/relationship.ts"],"sourcesContent":["import type { RelationshipField, UploadField } from 'payload'\n\ntype Args = {\n field: RelationshipField | UploadField\n locale?: string\n ref: Record<string, unknown>\n relations: Record<string, unknown>[]\n withinArrayOrBlockLocale?: string\n}\n\nexport const transformRelationship = ({\n field,\n locale,\n ref,\n relations,\n withinArrayOrBlockLocale,\n}: Args) => {\n let result: unknown\n\n if (!('hasMany' in field) || field.hasMany === false) {\n let relation = relations[0]\n\n if (withinArrayOrBlockLocale) {\n relation = relations.find((rel) => rel.locale === withinArrayOrBlockLocale)\n }\n\n if (relation) {\n // Handle hasOne Poly\n if (Array.isArray(field.relationTo)) {\n const matchedRelation = Object.entries(relation).find(([key, val]) => {\n return val !== null && !['id', 'locale', 'order', 'parent', 'path'].includes(key)\n })\n\n if (matchedRelation) {\n const relationTo = matchedRelation[0].replace('ID', '')\n\n result = {\n relationTo,\n value: matchedRelation[1],\n }\n }\n }\n }\n } else {\n const transformedRelations = []\n\n relations.forEach((relation) => {\n let matchedLocale = true\n\n if (withinArrayOrBlockLocale) {\n matchedLocale = relation.locale === withinArrayOrBlockLocale\n }\n\n // Handle hasMany\n if (!Array.isArray(field.relationTo)) {\n const relatedData = relation[`${field.relationTo}ID`]\n\n if (relatedData && matchedLocale) {\n transformedRelations.push(relatedData)\n }\n } else {\n // Handle hasMany Poly\n const matchedRelation = Object.entries(relation).find(\n ([key, val]) =>\n val !== null &&\n !['id', 'locale', 'order', 'parent', 'path'].includes(key) &&\n matchedLocale,\n )\n\n if (matchedRelation) {\n const relationTo = matchedRelation[0].replace('ID', '')\n\n transformedRelations.push({\n relationTo,\n value: matchedRelation[1],\n })\n }\n }\n })\n\n result = transformedRelations\n }\n\n if (locale) {\n ref[field.name][locale] = result\n } else {\n ref[field.name] = result\n }\n}\n"],"names":["transformRelationship","field","locale","ref","relations","withinArrayOrBlockLocale","result","hasMany","relation","find","rel","Array","isArray","relationTo","matchedRelation","Object","entries","key","val","includes","replace","value","transformedRelations","forEach","matchedLocale","relatedData","push","name"],"mappings":"AAUA,OAAO,MAAMA,wBAAwB,CAAC,EACpCC,KAAK,EACLC,MAAM,EACNC,GAAG,EACHC,SAAS,EACTC,wBAAwB,EACnB;IACL,IAAIC;IAEJ,IAAI,CAAE,CAAA,aAAaL,KAAI,KAAMA,MAAMM,OAAO,KAAK,OAAO;QACpD,IAAIC,WAAWJ,SAAS,CAAC,EAAE;QAE3B,IAAIC,0BAA0B;YAC5BG,WAAWJ,UAAUK,IAAI,CAAC,CAACC,MAAQA,IAAIR,MAAM,KAAKG;QACpD;QAEA,IAAIG,UAAU;YACZ,qBAAqB;YACrB,IAAIG,MAAMC,OAAO,CAACX,MAAMY,UAAU,GAAG;gBACnC,MAAMC,kBAAkBC,OAAOC,OAAO,CAACR,UAAUC,IAAI,CAAC,CAAC,CAACQ,KAAKC,IAAI;oBAC/D,OAAOA,QAAQ,QAAQ,CAAC;wBAAC;wBAAM;wBAAU;wBAAS;wBAAU;qBAAO,CAACC,QAAQ,CAACF;gBAC/E;gBAEA,IAAIH,iBAAiB;oBACnB,MAAMD,aAAaC,eAAe,CAAC,EAAE,CAACM,OAAO,CAAC,MAAM;oBAEpDd,SAAS;wBACPO;wBACAQ,OAAOP,eAAe,CAAC,EAAE;oBAC3B;gBACF;YACF;QACF;IACF,OAAO;QACL,MAAMQ,uBAAuB,EAAE;QAE/BlB,UAAUmB,OAAO,CAAC,CAACf;YACjB,IAAIgB,gBAAgB;YAEpB,IAAInB,0BAA0B;gBAC5BmB,gBAAgBhB,SAASN,MAAM,KAAKG;YACtC;YAEA,iBAAiB;YACjB,IAAI,CAACM,MAAMC,OAAO,CAACX,MAAMY,UAAU,GAAG;gBACpC,MAAMY,cAAcjB,QAAQ,CAAC,CAAC,EAAEP,MAAMY,UAAU,CAAC,EAAE,CAAC,CAAC;gBAErD,IAAIY,eAAeD,eAAe;oBAChCF,qBAAqBI,IAAI,CAACD;gBAC5B;YACF,OAAO;gBACL,sBAAsB;gBACtB,MAAMX,kBAAkBC,OAAOC,OAAO,CAACR,UAAUC,IAAI,CACnD,CAAC,CAACQ,KAAKC,IAAI,GACTA,QAAQ,QACR,CAAC;wBAAC;wBAAM;wBAAU;wBAAS;wBAAU;qBAAO,CAACC,QAAQ,CAACF,QACtDO;gBAGJ,IAAIV,iBAAiB;oBACnB,MAAMD,aAAaC,eAAe,CAAC,EAAE,CAACM,OAAO,CAAC,MAAM;oBAEpDE,qBAAqBI,IAAI,CAAC;wBACxBb;wBACAQ,OAAOP,eAAe,CAAC,EAAE;oBAC3B;gBACF;YACF;QACF;QAEAR,SAASgB;IACX;IAEA,IAAIpB,QAAQ;QACVC,GAAG,CAACF,MAAM0B,IAAI,CAAC,CAACzB,OAAO,GAAGI;IAC5B,OAAO;QACLH,GAAG,CAACF,MAAM0B,IAAI,CAAC,GAAGrB;IACpB;AACF,EAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { Field, SanitizedConfig, TabAsField } from 'payload';
|
|
1
|
+
import type { Field, JoinQuery, SanitizedConfig, TabAsField } from 'payload';
|
|
2
2
|
import type { DrizzleAdapter } from '../../types.js';
|
|
3
3
|
import type { BlocksMap } from '../../utilities/createBlocksMap.js';
|
|
4
4
|
type TraverseFieldsArgs = {
|
|
@@ -30,6 +30,10 @@ type TraverseFieldsArgs = {
|
|
|
30
30
|
* An array of Payload fields to traverse
|
|
31
31
|
*/
|
|
32
32
|
fields: (Field | TabAsField)[];
|
|
33
|
+
/**
|
|
34
|
+
*
|
|
35
|
+
*/
|
|
36
|
+
joinQuery?: JoinQuery;
|
|
33
37
|
/**
|
|
34
38
|
* All hasMany number fields, as returned by Drizzle, keyed on an object by field path
|
|
35
39
|
*/
|
|
@@ -50,7 +54,11 @@ type TraverseFieldsArgs = {
|
|
|
50
54
|
* All hasMany text fields, as returned by Drizzle, keyed on an object by field path
|
|
51
55
|
*/
|
|
52
56
|
texts: Record<string, Record<string, unknown>[]>;
|
|
57
|
+
/**
|
|
58
|
+
* Set to a locale if this group of fields is within a localized array or block.
|
|
59
|
+
*/
|
|
60
|
+
withinArrayOrBlockLocale?: string;
|
|
53
61
|
};
|
|
54
|
-
export declare const traverseFields: <T extends Record<string, unknown>>({ adapter, blocks, config, dataRef, deletions, fieldPrefix, fields, numbers, path, relationships, table, texts, }: TraverseFieldsArgs) => T;
|
|
62
|
+
export declare const traverseFields: <T extends Record<string, unknown>>({ adapter, blocks, config, dataRef, deletions, fieldPrefix, fields, joinQuery, numbers, path, relationships, table, texts, withinArrayOrBlockLocale, }: TraverseFieldsArgs) => T;
|
|
55
63
|
export {};
|
|
56
64
|
//# sourceMappingURL=traverseFields.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"traverseFields.d.ts","sourceRoot":"","sources":["../../../src/transform/read/traverseFields.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;
|
|
1
|
+
{"version":3,"file":"traverseFields.d.ts","sourceRoot":"","sources":["../../../src/transform/read/traverseFields.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AAI5E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AACpD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,oCAAoC,CAAA;AAMnE,KAAK,kBAAkB,GAAG;IACxB;;OAEG;IACH,OAAO,EAAE,cAAc,CAAA;IACvB;;OAEG;IACH,MAAM,EAAE,SAAS,CAAA;IACjB;;OAEG;IACH,MAAM,EAAE,eAAe,CAAA;IACvB;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAChC;;OAEG;IACH,SAAS,EAAE,CAAC,MAAM,IAAI,CAAC,EAAE,CAAA;IACzB;;OAEG;IACH,WAAW,EAAE,MAAM,CAAA;IACnB;;OAEG;IACH,MAAM,EAAE,CAAC,KAAK,GAAG,UAAU,CAAC,EAAE,CAAA;IAC9B;;OAEG;IACH,SAAS,CAAC,EAAE,SAAS,CAAA;IACrB;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC,CAAA;IAClD;;OAEG;IACH,IAAI,EAAE,MAAM,CAAA;IACZ;;OAEG;IACH,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC,CAAA;IACxD;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC9B;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC,CAAA;IAChD;;OAEG;IACH,wBAAwB,CAAC,EAAE,MAAM,CAAA;CAClC,CAAA;AAID,eAAO,MAAM,cAAc,GAAI,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,0JAe7D,kBAAkB,KAAG,CAojBvB,CAAA"}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { fieldAffectsData } from 'payload/shared';
|
|
1
|
+
import { fieldAffectsData, fieldIsVirtual } from 'payload/shared';
|
|
2
2
|
import { transformHasManyNumber } from './hasManyNumber.js';
|
|
3
3
|
import { transformHasManyText } from './hasManyText.js';
|
|
4
4
|
import { transformRelationship } from './relationship.js';
|
|
5
5
|
// Traverse fields recursively, transforming data
|
|
6
6
|
// for each field type into required Payload shape
|
|
7
|
-
export const traverseFields = ({ adapter, blocks, config, dataRef, deletions, fieldPrefix, fields, numbers, path, relationships, table, texts })=>{
|
|
7
|
+
export const traverseFields = ({ adapter, blocks, config, dataRef, deletions, fieldPrefix, fields, joinQuery, numbers, path, relationships, table, texts, withinArrayOrBlockLocale })=>{
|
|
8
8
|
const sanitizedPath = path ? `${path}.` : path;
|
|
9
9
|
const formatted = fields.reduce((result, field)=>{
|
|
10
10
|
if (field.type === 'tabs') {
|
|
@@ -19,11 +19,13 @@ export const traverseFields = ({ adapter, blocks, config, dataRef, deletions, fi
|
|
|
19
19
|
...tab,
|
|
20
20
|
type: 'tab'
|
|
21
21
|
})),
|
|
22
|
+
joinQuery,
|
|
22
23
|
numbers,
|
|
23
24
|
path,
|
|
24
25
|
relationships,
|
|
25
26
|
table,
|
|
26
|
-
texts
|
|
27
|
+
texts,
|
|
28
|
+
withinArrayOrBlockLocale
|
|
27
29
|
});
|
|
28
30
|
}
|
|
29
31
|
if (field.type === 'collapsible' || field.type === 'row' || field.type === 'tab' && !('name' in field)) {
|
|
@@ -35,14 +37,19 @@ export const traverseFields = ({ adapter, blocks, config, dataRef, deletions, fi
|
|
|
35
37
|
deletions,
|
|
36
38
|
fieldPrefix,
|
|
37
39
|
fields: field.fields,
|
|
40
|
+
joinQuery,
|
|
38
41
|
numbers,
|
|
39
42
|
path,
|
|
40
43
|
relationships,
|
|
41
44
|
table,
|
|
42
|
-
texts
|
|
45
|
+
texts,
|
|
46
|
+
withinArrayOrBlockLocale
|
|
43
47
|
});
|
|
44
48
|
}
|
|
45
49
|
if (fieldAffectsData(field)) {
|
|
50
|
+
if (fieldIsVirtual(field)) {
|
|
51
|
+
return result;
|
|
52
|
+
}
|
|
46
53
|
const fieldName = `${fieldPrefix || ''}${field.name}`;
|
|
47
54
|
const fieldData = table[fieldName];
|
|
48
55
|
const localizedFieldData = {};
|
|
@@ -55,7 +62,9 @@ export const traverseFields = ({ adapter, blocks, config, dataRef, deletions, fi
|
|
|
55
62
|
if (field.localized) {
|
|
56
63
|
result[field.name] = fieldData.reduce((arrayResult, row)=>{
|
|
57
64
|
if (typeof row._locale === 'string') {
|
|
58
|
-
if (!arrayResult[row._locale])
|
|
65
|
+
if (!arrayResult[row._locale]) {
|
|
66
|
+
arrayResult[row._locale] = [];
|
|
67
|
+
}
|
|
59
68
|
const locale = row._locale;
|
|
60
69
|
const data = {};
|
|
61
70
|
delete row._locale;
|
|
@@ -75,7 +84,8 @@ export const traverseFields = ({ adapter, blocks, config, dataRef, deletions, fi
|
|
|
75
84
|
path: `${sanitizedPath}${field.name}.${row._order - 1}`,
|
|
76
85
|
relationships,
|
|
77
86
|
table: row,
|
|
78
|
-
texts
|
|
87
|
+
texts,
|
|
88
|
+
withinArrayOrBlockLocale: locale
|
|
79
89
|
});
|
|
80
90
|
if ('_order' in rowResult) {
|
|
81
91
|
delete rowResult._order;
|
|
@@ -85,7 +95,7 @@ export const traverseFields = ({ adapter, blocks, config, dataRef, deletions, fi
|
|
|
85
95
|
return arrayResult;
|
|
86
96
|
}, {});
|
|
87
97
|
} else {
|
|
88
|
-
result[field.name] = fieldData.
|
|
98
|
+
result[field.name] = fieldData.reduce((acc, row, i)=>{
|
|
89
99
|
if (row._uuid) {
|
|
90
100
|
row.id = row._uuid;
|
|
91
101
|
delete row._uuid;
|
|
@@ -93,21 +103,28 @@ export const traverseFields = ({ adapter, blocks, config, dataRef, deletions, fi
|
|
|
93
103
|
if ('_order' in row) {
|
|
94
104
|
delete row._order;
|
|
95
105
|
}
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
106
|
+
if (!withinArrayOrBlockLocale || withinArrayOrBlockLocale && withinArrayOrBlockLocale === row._locale) {
|
|
107
|
+
if (row._locale) {
|
|
108
|
+
delete row._locale;
|
|
109
|
+
}
|
|
110
|
+
acc.push(traverseFields({
|
|
111
|
+
adapter,
|
|
112
|
+
blocks,
|
|
113
|
+
config,
|
|
114
|
+
dataRef: row,
|
|
115
|
+
deletions,
|
|
116
|
+
fieldPrefix: '',
|
|
117
|
+
fields: field.fields,
|
|
118
|
+
numbers,
|
|
119
|
+
path: `${sanitizedPath}${field.name}.${i}`,
|
|
120
|
+
relationships,
|
|
121
|
+
table: row,
|
|
122
|
+
texts,
|
|
123
|
+
withinArrayOrBlockLocale
|
|
124
|
+
}));
|
|
125
|
+
}
|
|
126
|
+
return acc;
|
|
127
|
+
}, []);
|
|
111
128
|
}
|
|
112
129
|
}
|
|
113
130
|
return result;
|
|
@@ -123,7 +140,9 @@ export const traverseFields = ({ adapter, blocks, config, dataRef, deletions, fi
|
|
|
123
140
|
delete row._uuid;
|
|
124
141
|
}
|
|
125
142
|
if (typeof row._locale === 'string') {
|
|
126
|
-
if (!result[field.name][row._locale])
|
|
143
|
+
if (!result[field.name][row._locale]) {
|
|
144
|
+
result[field.name][row._locale] = [];
|
|
145
|
+
}
|
|
127
146
|
result[field.name][row._locale].push(row);
|
|
128
147
|
delete row._locale;
|
|
129
148
|
}
|
|
@@ -144,7 +163,8 @@ export const traverseFields = ({ adapter, blocks, config, dataRef, deletions, fi
|
|
|
144
163
|
path: `${blockFieldPath}.${row._order - 1}`,
|
|
145
164
|
relationships,
|
|
146
165
|
table: row,
|
|
147
|
-
texts
|
|
166
|
+
texts,
|
|
167
|
+
withinArrayOrBlockLocale: locale
|
|
148
168
|
});
|
|
149
169
|
delete blockResult._order;
|
|
150
170
|
return blockResult;
|
|
@@ -153,7 +173,7 @@ export const traverseFields = ({ adapter, blocks, config, dataRef, deletions, fi
|
|
|
153
173
|
});
|
|
154
174
|
});
|
|
155
175
|
} else {
|
|
156
|
-
result[field.name] = blocks[blockFieldPath].
|
|
176
|
+
result[field.name] = blocks[blockFieldPath].reduce((acc, row, i)=>{
|
|
157
177
|
delete row._order;
|
|
158
178
|
if (row._uuid) {
|
|
159
179
|
row.id = row._uuid;
|
|
@@ -161,23 +181,32 @@ export const traverseFields = ({ adapter, blocks, config, dataRef, deletions, fi
|
|
|
161
181
|
}
|
|
162
182
|
const block = field.blocks.find(({ slug })=>slug === row.blockType);
|
|
163
183
|
if (block) {
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
184
|
+
if (!withinArrayOrBlockLocale || withinArrayOrBlockLocale && withinArrayOrBlockLocale === row._locale) {
|
|
185
|
+
if (row._locale) {
|
|
186
|
+
delete row._locale;
|
|
187
|
+
}
|
|
188
|
+
acc.push(traverseFields({
|
|
189
|
+
adapter,
|
|
190
|
+
blocks,
|
|
191
|
+
config,
|
|
192
|
+
dataRef: row,
|
|
193
|
+
deletions,
|
|
194
|
+
fieldPrefix: '',
|
|
195
|
+
fields: block.fields,
|
|
196
|
+
numbers,
|
|
197
|
+
path: `${blockFieldPath}.${i}`,
|
|
198
|
+
relationships,
|
|
199
|
+
table: row,
|
|
200
|
+
texts,
|
|
201
|
+
withinArrayOrBlockLocale
|
|
202
|
+
}));
|
|
203
|
+
return acc;
|
|
204
|
+
}
|
|
205
|
+
} else {
|
|
206
|
+
acc.push({});
|
|
178
207
|
}
|
|
179
|
-
return
|
|
180
|
-
});
|
|
208
|
+
return acc;
|
|
209
|
+
}, []);
|
|
181
210
|
}
|
|
182
211
|
}
|
|
183
212
|
return result;
|
|
@@ -215,7 +244,9 @@ export const traverseFields = ({ adapter, blocks, config, dataRef, deletions, fi
|
|
|
215
244
|
const relationsByLocale = {};
|
|
216
245
|
relationPathMatch.forEach((row)=>{
|
|
217
246
|
if (typeof row.locale === 'string') {
|
|
218
|
-
if (!relationsByLocale[row.locale])
|
|
247
|
+
if (!relationsByLocale[row.locale]) {
|
|
248
|
+
relationsByLocale[row.locale] = [];
|
|
249
|
+
}
|
|
219
250
|
relationsByLocale[row.locale].push(row);
|
|
220
251
|
}
|
|
221
252
|
});
|
|
@@ -231,21 +262,58 @@ export const traverseFields = ({ adapter, blocks, config, dataRef, deletions, fi
|
|
|
231
262
|
transformRelationship({
|
|
232
263
|
field,
|
|
233
264
|
ref: result,
|
|
234
|
-
relations: relationPathMatch
|
|
265
|
+
relations: relationPathMatch,
|
|
266
|
+
withinArrayOrBlockLocale
|
|
235
267
|
});
|
|
236
268
|
}
|
|
237
269
|
return result;
|
|
238
270
|
}
|
|
239
271
|
}
|
|
272
|
+
if (field.type === 'join') {
|
|
273
|
+
const { limit = 10 } = joinQuery?.[`${fieldPrefix.replaceAll('_', '.')}${field.name}`] || {};
|
|
274
|
+
let fieldResult;
|
|
275
|
+
if (Array.isArray(fieldData)) {
|
|
276
|
+
if (field.localized) {
|
|
277
|
+
fieldResult = fieldData.reduce((joinResult, row)=>{
|
|
278
|
+
if (typeof row._locale === 'string') {
|
|
279
|
+
if (!joinResult[row._locale]) {
|
|
280
|
+
joinResult[row._locale] = {
|
|
281
|
+
docs: [],
|
|
282
|
+
hasNextPage: false
|
|
283
|
+
};
|
|
284
|
+
}
|
|
285
|
+
joinResult[row._locale].docs.push(row._parentID);
|
|
286
|
+
}
|
|
287
|
+
return joinResult;
|
|
288
|
+
}, {});
|
|
289
|
+
Object.keys(fieldResult).forEach((locale)=>{
|
|
290
|
+
fieldResult[locale].hasNextPage = fieldResult[locale].docs.length > limit;
|
|
291
|
+
fieldResult[locale].docs = fieldResult[locale].docs.slice(0, limit);
|
|
292
|
+
});
|
|
293
|
+
} else {
|
|
294
|
+
const hasNextPage = limit !== 0 && fieldData.length > limit;
|
|
295
|
+
fieldResult = {
|
|
296
|
+
docs: hasNextPage ? fieldData.slice(0, limit) : fieldData,
|
|
297
|
+
hasNextPage
|
|
298
|
+
};
|
|
299
|
+
}
|
|
300
|
+
}
|
|
301
|
+
result[field.name] = fieldResult;
|
|
302
|
+
return result;
|
|
303
|
+
}
|
|
240
304
|
if (field.type === 'text' && field?.hasMany) {
|
|
241
305
|
const textPathMatch = texts[`${sanitizedPath}${field.name}`];
|
|
242
|
-
if (!textPathMatch)
|
|
306
|
+
if (!textPathMatch) {
|
|
307
|
+
return result;
|
|
308
|
+
}
|
|
243
309
|
if (field.localized) {
|
|
244
310
|
result[field.name] = {};
|
|
245
311
|
const textsByLocale = {};
|
|
246
312
|
textPathMatch.forEach((row)=>{
|
|
247
313
|
if (typeof row.locale === 'string') {
|
|
248
|
-
if (!textsByLocale[row.locale])
|
|
314
|
+
if (!textsByLocale[row.locale]) {
|
|
315
|
+
textsByLocale[row.locale] = [];
|
|
316
|
+
}
|
|
249
317
|
textsByLocale[row.locale].push(row);
|
|
250
318
|
}
|
|
251
319
|
});
|
|
@@ -261,20 +329,25 @@ export const traverseFields = ({ adapter, blocks, config, dataRef, deletions, fi
|
|
|
261
329
|
transformHasManyText({
|
|
262
330
|
field,
|
|
263
331
|
ref: result,
|
|
264
|
-
textRows: textPathMatch
|
|
332
|
+
textRows: textPathMatch,
|
|
333
|
+
withinArrayOrBlockLocale
|
|
265
334
|
});
|
|
266
335
|
}
|
|
267
336
|
return result;
|
|
268
337
|
}
|
|
269
338
|
if (field.type === 'number' && field.hasMany) {
|
|
270
339
|
const numberPathMatch = numbers[`${sanitizedPath}${field.name}`];
|
|
271
|
-
if (!numberPathMatch)
|
|
340
|
+
if (!numberPathMatch) {
|
|
341
|
+
return result;
|
|
342
|
+
}
|
|
272
343
|
if (field.localized) {
|
|
273
344
|
result[field.name] = {};
|
|
274
345
|
const numbersByLocale = {};
|
|
275
346
|
numberPathMatch.forEach((row)=>{
|
|
276
347
|
if (typeof row.locale === 'string') {
|
|
277
|
-
if (!numbersByLocale[row.locale])
|
|
348
|
+
if (!numbersByLocale[row.locale]) {
|
|
349
|
+
numbersByLocale[row.locale] = [];
|
|
350
|
+
}
|
|
278
351
|
numbersByLocale[row.locale].push(row);
|
|
279
352
|
}
|
|
280
353
|
});
|
|
@@ -290,7 +363,8 @@ export const traverseFields = ({ adapter, blocks, config, dataRef, deletions, fi
|
|
|
290
363
|
transformHasManyNumber({
|
|
291
364
|
field,
|
|
292
365
|
numberRows: numberPathMatch,
|
|
293
|
-
ref: result
|
|
366
|
+
ref: result,
|
|
367
|
+
withinArrayOrBlockLocale
|
|
294
368
|
});
|
|
295
369
|
}
|
|
296
370
|
return result;
|
|
@@ -300,7 +374,9 @@ export const traverseFields = ({ adapter, blocks, config, dataRef, deletions, fi
|
|
|
300
374
|
if (field.localized) {
|
|
301
375
|
result[field.name] = fieldData.reduce((selectResult, row)=>{
|
|
302
376
|
if (typeof row.locale === 'string') {
|
|
303
|
-
if (!selectResult[row.locale])
|
|
377
|
+
if (!selectResult[row.locale]) {
|
|
378
|
+
selectResult[row.locale] = [];
|
|
379
|
+
}
|
|
304
380
|
selectResult[row.locale].push(row.value);
|
|
305
381
|
}
|
|
306
382
|
return selectResult;
|
|
@@ -316,6 +392,7 @@ export const traverseFields = ({ adapter, blocks, config, dataRef, deletions, fi
|
|
|
316
392
|
valuesToTransform.push({
|
|
317
393
|
ref: localizedFieldData,
|
|
318
394
|
table: {
|
|
395
|
+
...table,
|
|
319
396
|
...localeRow
|
|
320
397
|
}
|
|
321
398
|
});
|
|
@@ -338,7 +415,9 @@ export const traverseFields = ({ adapter, blocks, config, dataRef, deletions, fi
|
|
|
338
415
|
const groupData = {};
|
|
339
416
|
const locale = table._locale;
|
|
340
417
|
const refKey = field.localized && locale ? locale : field.name;
|
|
341
|
-
if (field.localized && locale)
|
|
418
|
+
if (field.localized && locale) {
|
|
419
|
+
delete table._locale;
|
|
420
|
+
}
|
|
342
421
|
ref[refKey] = traverseFields({
|
|
343
422
|
adapter,
|
|
344
423
|
blocks,
|
|
@@ -351,7 +430,8 @@ export const traverseFields = ({ adapter, blocks, config, dataRef, deletions, fi
|
|
|
351
430
|
path: `${sanitizedPath}${field.name}`,
|
|
352
431
|
relationships,
|
|
353
432
|
table,
|
|
354
|
-
texts
|
|
433
|
+
texts,
|
|
434
|
+
withinArrayOrBlockLocale: locale || withinArrayOrBlockLocale
|
|
355
435
|
});
|
|
356
436
|
if ('_order' in ref) {
|
|
357
437
|
delete ref._order;
|