Open mikiyasET opened 3 months ago
Thank you for your feature proposal.
We marked it as "waiting for user interest" for now to gather some feedback from our community:
If you would like to see this feature be implemented, please react to the description with an up-vote (:+1:).
If you have a suggestion or want to point out some special cases that need to be considered, please leave a comment, so we are aware about them.
We would also like to hear about other community members' use cases for the feature to give us a better understanding of their potential implicit or explicit requirements.
We will start the implementation based on:
the number of votes (:+1:) and comments
the relevance for the ecosystem
availability of alternatives and workarounds
and the complexity of the requested feature
We do this because:
There are plenty of languages/countries out there and we would like to ensure that every method can cover all or almost all of them.
Every feature we add to faker has "costs" associated to it:
As a workaround - although less convenient - you can use the following:
faker.helpers.arrayElement([ImageType.link, ImageType.emoji, ImageType.constant]);
As a workaround - although less convenient - you can use the following:
faker.helpers.arrayElement([ImageType.link, ImageType.emoji, ImageType.constant]);
You could also build a function that is basically the implementation of helpers.enumValue()
:
function enumValue<T extends Record<string | number, string | number>>(enumObj: T, exclude: (keyof T)[]): T[keyof T] {
const keys: Array<keyof T> = Object.keys(enumObj)
// ignore numeric keys added by TypeScript
.filter((key) =>Number.isNaN(Number(key)))
// this line is what faker is missing
.filter((key) =>!exclude.includes(key));
const key = faker.helpers.arrayElement(keys);
return enumObj[key];
}
// usage
enum ImageType {
file,
link,
emoji,
constant,
}
cosnt value = enumValue(ImageType , ['file']);
console.log(value); // 1 | 2 | 3 => ImageType.link | ImageType.emoji | ImageType.constant
I'd still consider this a workaround.
Clear and concise description of the problem
I wanted to seed some data to the database and one of the tables needs image type and an image so while seeding I couldn't add a file since it needs to be uploaded to the server so for the seed purpose only I wanted to remove the file value from the enum or exclude but there is no option for that
Suggested solution