Set translations on enum labels

This commit is contained in:
Aarni Halinen
2021-09-01 20:43:24 +03:00
parent 14006ccc2d
commit 5a251f736c
3 changed files with 100 additions and 1 deletions
@@ -4,7 +4,14 @@ import { WidgetProps } from "@rjsf/core";
import RadioButton from "./RadioButton"; import RadioButton from "./RadioButton";
type RadioButtonWidgetProps = Omit<WidgetProps, "options"> & { type RadioButtonWidgetProps = Omit<WidgetProps, "options"> & {
options: any; options: {
enumOptions: {
value: string;
label: string;
}[];
enumDisabled: string[];
inline: boolean;
};
}; };
const RadioButtonContainer = styled.div` const RadioButtonContainer = styled.div`
+2
View File
@@ -48,6 +48,7 @@ const questionToValidationSchema = (question: Question) => {
title: question.name, title: question.name,
pattern: question.enum.map((x) => `^${escapeRegExp(x)}$`).join("|"), pattern: question.enum.map((x) => `^${escapeRegExp(x)}$`).join("|"),
enum: question.enum, enum: question.enum,
enumNames: question.enumNames,
}; };
} else if (question.type === "checkbox") { } else if (question.type === "checkbox") {
obj = { obj = {
@@ -58,6 +59,7 @@ const questionToValidationSchema = (question: Question) => {
items: { items: {
type: "string", type: "string",
enum: question.enum, enum: question.enum,
enumNames: question.enumNames,
pattern: question.enum.map((x) => `^${escapeRegExp(x)}$`).join("|"), pattern: question.enum.map((x) => `^${escapeRegExp(x)}$`).join("|"),
}, },
}; };
@@ -12,6 +12,10 @@ Object {
"Vegaaninen", "Vegaaninen",
"Liha ja Kala", "Liha ja Kala",
], ],
"enumNames": Array [
"Vegaaninen",
"Liha ja Kala",
],
"pattern": "^Vegaaninen$|^Liha ja Kala$", "pattern": "^Vegaaninen$|^Liha ja Kala$",
"title": "Pääjuhlan ruokatarjoilut", "title": "Pääjuhlan ruokatarjoilut",
"type": "string", "type": "string",
@@ -25,6 +29,10 @@ Object {
"Kyllä", "Kyllä",
"Ei", "Ei",
], ],
"enumNames": Array [
"Kyllä",
"Ei",
],
"pattern": "^Kyllä$|^Ei$", "pattern": "^Kyllä$|^Ei$",
"title": "Haluan saada sähköpostiini lisää tietoa SIK100-vuodesta", "title": "Haluan saada sähköpostiini lisää tietoa SIK100-vuodesta",
"type": "string", "type": "string",
@@ -42,6 +50,10 @@ Object {
"Alkoholillinen", "Alkoholillinen",
"Alkoholiton", "Alkoholiton",
], ],
"enumNames": Array [
"Alkoholillinen",
"Alkoholiton",
],
"pattern": "^Alkoholillinen$|^Alkoholiton$", "pattern": "^Alkoholillinen$|^Alkoholiton$",
"title": "Pääjuhlan juomatarjoilut", "title": "Pääjuhlan juomatarjoilut",
"type": "string", "type": "string",
@@ -65,6 +77,10 @@ Object {
"Kyllä", "Kyllä",
"Ei", "Ei",
], ],
"enumNames": Array [
"Kyllä",
"Ei",
],
"pattern": "^Kyllä$|^Ei$", "pattern": "^Kyllä$|^Ei$",
"title": "Haluan osallistua sillikselle seuraavana päivänä (25€)", "title": "Haluan osallistua sillikselle seuraavana päivänä (25€)",
"type": "string", "type": "string",
@@ -80,6 +96,12 @@ Object {
"Jäsenen avec", "Jäsenen avec",
"Alumnin avec", "Alumnin avec",
], ],
"enumNames": Array [
"Killan jäsen",
"Killan alumni",
"Jäsenen avec",
"Alumnin avec",
],
"pattern": "^Killan jäsen$|^Killan alumni$|^Jäsenen avec$|^Alumnin avec$", "pattern": "^Killan jäsen$|^Killan alumni$|^Jäsenen avec$|^Alumnin avec$",
"title": "Olen ", "title": "Olen ",
"type": "string", "type": "string",
@@ -89,6 +111,10 @@ Object {
"Kyllä", "Kyllä",
"Ei", "Ei",
], ],
"enumNames": Array [
"Kyllä",
"Ei",
],
"pattern": "^Kyllä$|^Ei$", "pattern": "^Kyllä$|^Ei$",
"title": "Haluan kuulla lisää SIK100-historiateoksesta ja mahdollisuudesta ostaa teoksen", "title": "Haluan kuulla lisää SIK100-historiateoksesta ja mahdollisuudesta ostaa teoksen",
"type": "string", "type": "string",
@@ -105,6 +131,12 @@ Object {
"Kuohuviini (42€)", "Kuohuviini (42€)",
"Shamppanja (68€)", "Shamppanja (68€)",
], ],
"enumNames": Array [
"Punaviini (42€)",
"Valkoviini (42€)",
"Kuohuviini (42€)",
"Shamppanja (68€)",
],
"pattern": "^Punaviini \\\\(42€\\\\)$|^Valkoviini \\\\(42€\\\\)$|^Kuohuviini \\\\(42€\\\\)$|^Shamppanja \\\\(68€\\\\)$", "pattern": "^Punaviini \\\\(42€\\\\)$|^Valkoviini \\\\(42€\\\\)$|^Kuohuviini \\\\(42€\\\\)$|^Shamppanja \\\\(68€\\\\)$",
"type": "string", "type": "string",
}, },
@@ -118,6 +150,10 @@ Object {
"Kyllä", "Kyllä",
"Ei", "Ei",
], ],
"enumNames": Array [
"Kyllä",
"Ei",
],
"pattern": "^Kyllä$|^Ei$", "pattern": "^Kyllä$|^Ei$",
"title": "Haluan osallistua jatkoille", "title": "Haluan osallistua jatkoille",
"type": "string", "type": "string",
@@ -133,6 +169,11 @@ Object {
"25€", "25€",
"50€", "50€",
], ],
"enumNames": Array [
"15€",
"25€",
"50€",
],
"pattern": "^15€$|^25€$|^50€$", "pattern": "^15€$|^25€$|^50€$",
"type": "string", "type": "string",
}, },
@@ -146,6 +187,10 @@ Object {
"Kyllä", "Kyllä",
"Ei", "Ei",
], ],
"enumNames": Array [
"Kyllä",
"Ei",
],
"pattern": "^Kyllä$|^Ei$", "pattern": "^Kyllä$|^Ei$",
"title": "Annan lahjan lahjanantotilaisuudessa", "title": "Annan lahjan lahjanantotilaisuudessa",
"type": "string", "type": "string",
@@ -241,6 +286,10 @@ Object {
"Vegaaninen", "Vegaaninen",
"Liha ja Kala", "Liha ja Kala",
], ],
"enumNames": Array [
"Vegaaninen",
"Liha ja Kala",
],
"pattern": "^Vegaaninen$|^Liha ja Kala$", "pattern": "^Vegaaninen$|^Liha ja Kala$",
"title": "Pääjuhlan ruokatarjoilut", "title": "Pääjuhlan ruokatarjoilut",
"type": "string", "type": "string",
@@ -254,6 +303,10 @@ Object {
"Kyllä", "Kyllä",
"Ei", "Ei",
], ],
"enumNames": Array [
"Kyllä",
"Ei",
],
"pattern": "^Kyllä$|^Ei$", "pattern": "^Kyllä$|^Ei$",
"title": "Haluan saada sähköpostiini lisää tietoa SIK100-vuodesta", "title": "Haluan saada sähköpostiini lisää tietoa SIK100-vuodesta",
"type": "string", "type": "string",
@@ -271,6 +324,10 @@ Object {
"Alkoholillinen", "Alkoholillinen",
"Alkoholiton", "Alkoholiton",
], ],
"enumNames": Array [
"Alkoholillinen",
"Alkoholiton",
],
"pattern": "^Alkoholillinen$|^Alkoholiton$", "pattern": "^Alkoholillinen$|^Alkoholiton$",
"title": "Pääjuhlan juomatarjoilut", "title": "Pääjuhlan juomatarjoilut",
"type": "string", "type": "string",
@@ -294,6 +351,10 @@ Object {
"Kyllä", "Kyllä",
"Ei", "Ei",
], ],
"enumNames": Array [
"Kyllä",
"Ei",
],
"pattern": "^Kyllä$|^Ei$", "pattern": "^Kyllä$|^Ei$",
"title": "Haluan osallistua sillikselle seuraavana päivänä (25€)", "title": "Haluan osallistua sillikselle seuraavana päivänä (25€)",
"type": "string", "type": "string",
@@ -309,6 +370,12 @@ Object {
"Jäsenen avec", "Jäsenen avec",
"Alumnin avec", "Alumnin avec",
], ],
"enumNames": Array [
"Killan jäsen",
"Killan alumni",
"Jäsenen avec",
"Alumnin avec",
],
"pattern": "^Killan jäsen$|^Killan alumni$|^Jäsenen avec$|^Alumnin avec$", "pattern": "^Killan jäsen$|^Killan alumni$|^Jäsenen avec$|^Alumnin avec$",
"title": "Olen ", "title": "Olen ",
"type": "string", "type": "string",
@@ -318,6 +385,10 @@ Object {
"Kyllä", "Kyllä",
"Ei", "Ei",
], ],
"enumNames": Array [
"Kyllä",
"Ei",
],
"pattern": "^Kyllä$|^Ei$", "pattern": "^Kyllä$|^Ei$",
"title": "Haluan kuulla lisää SIK100-historiateoksesta ja mahdollisuudesta ostaa teoksen", "title": "Haluan kuulla lisää SIK100-historiateoksesta ja mahdollisuudesta ostaa teoksen",
"type": "string", "type": "string",
@@ -334,6 +405,12 @@ Object {
"Kuohuviini (42€)", "Kuohuviini (42€)",
"Shamppanja (68€)", "Shamppanja (68€)",
], ],
"enumNames": Array [
"Punaviini (42€)",
"Valkoviini (42€)",
"Kuohuviini (42€)",
"Shamppanja (68€)",
],
"pattern": "^Punaviini \\\\(42€\\\\)$|^Valkoviini \\\\(42€\\\\)$|^Kuohuviini \\\\(42€\\\\)$|^Shamppanja \\\\(68€\\\\)$", "pattern": "^Punaviini \\\\(42€\\\\)$|^Valkoviini \\\\(42€\\\\)$|^Kuohuviini \\\\(42€\\\\)$|^Shamppanja \\\\(68€\\\\)$",
"type": "string", "type": "string",
}, },
@@ -347,6 +424,10 @@ Object {
"Kyllä", "Kyllä",
"Ei", "Ei",
], ],
"enumNames": Array [
"Kyllä",
"Ei",
],
"pattern": "^Kyllä$|^Ei$", "pattern": "^Kyllä$|^Ei$",
"title": "Haluan osallistua jatkoille", "title": "Haluan osallistua jatkoille",
"type": "string", "type": "string",
@@ -362,6 +443,11 @@ Object {
"25€", "25€",
"50€", "50€",
], ],
"enumNames": Array [
"15€",
"25€",
"50€",
],
"pattern": "^15€$|^25€$|^50€$", "pattern": "^15€$|^25€$|^50€$",
"type": "string", "type": "string",
}, },
@@ -375,6 +461,10 @@ Object {
"Kyllä", "Kyllä",
"Ei", "Ei",
], ],
"enumNames": Array [
"Kyllä",
"Ei",
],
"pattern": "^Kyllä$|^Ei$", "pattern": "^Kyllä$|^Ei$",
"title": "Annan lahjan lahjanantotilaisuudessa", "title": "Annan lahjan lahjanantotilaisuudessa",
"type": "string", "type": "string",