nestjs-seeder
nestjs-seeder copied to clipboard
feat: pass in index to FactoryValueGenerator
Description
This PR introduces a new feature in the FactoryValueGenerator
class to include the current index in its operations. This enhancement allows for greater flexibility, e.g. the creation of consistent UUIDs across different seeds, which is particularly useful during development.
Key Benefits
- Consistent UUID Generation: By incorporating the current index, the generated UUIDs can remain consistent across reseeds.
- Improved Developer Productivity: Developers can then refire the same API requests without needing to reconfigure IDs, streamlining the development process.
Implementation Details
- The
FactoryValueGenerator
has been updated to include the current index in its UUID generation logic. - No breaking changes are introduced; existing functionalities remain intact. I had to add ts-ignore though, which I am not particularly proud of, but seems to be the most sensible solution to maintain backwards compatability
Example
@Factory((_, __, index) =>
uuidv5(index.toString(), '6ba7b810-9dad-11d1-80b4-00c04fd430c8'),
)
id: string;
Checklist
- [x] Code has been tested locally
- [x] Documentation has been updated
- [ ] All tests pass N/A
Please review the changes and provide feedback. Thanks!