Skip to content

Commit 7b14060

Browse files
committed
fix issue that seq does not increment when using traits
1 parent ed8767d commit 7b14060

File tree

1 file changed

+9
-5
lines changed

1 file changed

+9
-5
lines changed

src/helper/factory.ts

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -55,8 +55,8 @@ export function defineTypeFactoryInternal<
5555
defaultFields: defaultFieldsResolver,
5656
traits,
5757
}: TypeFactoryDefineOptions<Type, TransientFields, _DefaultFieldsResolver, _Traits>,
58+
seqKey: object = {},
5859
): TypeFactoryInterface<Type, TransientFields, _DefaultFieldsResolver, _Traits> {
59-
const seqKey = {};
6060
const getSeq = () => getSequenceCounter(seqKey);
6161
return {
6262
async build<T extends FieldsResolver<Type & TransientFields>>(
@@ -98,10 +98,14 @@ export function defineTypeFactoryInternal<
9898

9999
if (!trait) throw new Error(`Trait ("${String(traitName)}") is not defined.`);
100100
// @ts-expect-error -- Use @ts-expect-error as it is impossible to match types.
101-
return defineTypeFactoryInternal(typeFieldNames, {
102-
defaultFields: { ...defaultFieldsResolver, ...trait.defaultFields },
103-
traits,
104-
});
101+
return defineTypeFactoryInternal(
102+
typeFieldNames,
103+
{
104+
defaultFields: { ...defaultFieldsResolver, ...trait.defaultFields },
105+
traits,
106+
},
107+
seqKey,
108+
);
105109
},
106110
resetSequence() {
107111
resetSequence(seqKey);

0 commit comments

Comments
 (0)