joi icon indicating copy to clipboard operation
joi copied to clipboard

Validation message in Arabic language

Open MGenidyO opened this issue 1 year ago • 3 comments

Support plan

  • is this issue currently blocking your project? (yes/no): yes
  • is this issue affecting a production system? (yes/no): yes

Context

  • node version: 18.14.2
  • module version: [email protected]
  • environment (e.g. node, browser, native):
  • used with (e.g. hapi application, another framework, standalone, ...):
  • any other relevant information: using joi via cdn.jsdelivr.net, by JavaScript inside asp.net core app

What problem are you trying to solve?

image

 const ngoNameArSchema = joi.string()
            .pattern(new RegExp('^[\u0621-\u064A\u0660-\u0669\0-9]+$'))
            .min(2)
            .max(30)
            .messages({
                //'string.base': `required`,
                //'string.empty': `cannot be an empty field`,
                'string.min': '@T["validation-message-minimum-string"]',
                'string.pattern.base': `allow only arabic characters`,
                //'any.required': `is a required field`
            });

Do you have a new or modified API suggestion to solve the problem?

sorry for now no

MGenidyO avatar Apr 11 '23 13:04 MGenidyO

It looks like an HTML entity escaping issue, I'm uncertain if it's joi's fault. Can you provide a reproducible snippet that demonstrates the issue?

Marsup avatar Apr 11 '23 15:04 Marsup

i fixed it by ternary operator and writing the Arabic message in js directly but to me it will be better if i will able to display the message via localization

image

MGenidyO avatar Apr 11 '23 15:04 MGenidyO

You can also keep the same schema and use multiple languages, like in this example.

Marsup avatar Apr 11 '23 16:04 Marsup