Я борюсь с моим API GraphQL, потому что мне нужно использовать преимущества Enums, сохраняя их полное описание в веб-интерфейсе.
Короче говоря:
У меня есть разные состояния для продукта: "Has been sent"
, "Not sent yet"
, "Received"
.
Так что это правильное место для использования Enums:
enum ProductState {
HAS_BEEN_SENT
NOT_SENT_YET
RECEIVED
}
Но мне нужно отобразить правильные строки на внешнем интерфейсе ("Has been sent
", а не "HAS_BEEN_SENT
").
Я не могу использовать простое решение, как «заменить подчеркивания пробелами и строчными буквами», потому что мой API не на английском, а на французском (поэтому у меня есть акценты и специальные символы).
Разве Enum не может вернуть строку? Или объект?
Я пытался с директивами, но невозможно заставить его работать ...
На самом деле мне все равно, как это записано в базе данных (в верхнем или нижнем регистре) или в API GraphQL. Мне просто нужен мой клиент для доступа к различным состояниям продукта в их «французской» форме.