Skip to content

Commit 18afd88

Browse files
committed
resolve func
1 parent 31be9e1 commit 18afd88

File tree

1 file changed

+14
-12
lines changed

1 file changed

+14
-12
lines changed

packages/federation/src/globalObjectIdentification.ts

Lines changed: 14 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -153,18 +153,20 @@ export function createResolvers({
153153
(resolvers, { typeName, keyFieldNames }) => ({
154154
...resolvers,
155155
[typeName]: {
156-
[nodeIdField](source) {
157-
if (keyFieldNames.length === 1) {
158-
// single field key
159-
return toGlobalId(typeName, source[keyFieldNames[0]!]);
160-
}
161-
// multiple fields key
162-
const keyFields: Record<string, unknown> = {};
163-
for (const fieldName of keyFieldNames) {
164-
// loop is faster than reduce
165-
keyFields[fieldName] = source[fieldName];
166-
}
167-
return toGlobalId(typeName, JSON.stringify(keyFields));
156+
[nodeIdField]: {
157+
resolve(source) {
158+
if (keyFieldNames.length === 1) {
159+
// single field key
160+
return toGlobalId(typeName, source[keyFieldNames[0]!]);
161+
}
162+
// multiple fields key
163+
const keyFields: Record<string, unknown> = {};
164+
for (const fieldName of keyFieldNames) {
165+
// loop is faster than reduce
166+
keyFields[fieldName] = source[fieldName];
167+
}
168+
return toGlobalId(typeName, JSON.stringify(keyFields));
169+
},
168170
},
169171
},
170172
}),

0 commit comments

Comments
 (0)