@ng-formworks/core 16.3.0 → 17.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (113) hide show
  1. package/esm2022/lib/framework-library/framework-library.service.mjs +174 -174
  2. package/esm2022/lib/framework-library/framework.mjs +14 -14
  3. package/esm2022/lib/framework-library/no-framework.component.mjs +17 -17
  4. package/esm2022/lib/framework-library/no-framework.module.mjs +26 -26
  5. package/esm2022/lib/framework-library/no.framework.mjs +18 -18
  6. package/esm2022/lib/json-schema-form.component.mjs +765 -765
  7. package/esm2022/lib/json-schema-form.module.mjs +25 -25
  8. package/esm2022/lib/json-schema-form.service.mjs +675 -675
  9. package/esm2022/lib/locale/de-validation-messages.mjs +59 -59
  10. package/esm2022/lib/locale/en-validation-messages.mjs +59 -59
  11. package/esm2022/lib/locale/es-validation-messages.mjs +56 -56
  12. package/esm2022/lib/locale/fr-validation-messages.mjs +59 -59
  13. package/esm2022/lib/locale/index.mjs +7 -7
  14. package/esm2022/lib/locale/it-validation-messages.mjs +59 -59
  15. package/esm2022/lib/locale/pt-validation-messages.mjs +59 -59
  16. package/esm2022/lib/locale/zh-validation-messages.mjs +59 -59
  17. package/esm2022/lib/shared/convert-schema-to-draft6.function.mjs +299 -299
  18. package/esm2022/lib/shared/form-group.functions.mjs +441 -441
  19. package/esm2022/lib/shared/format-regex.constants.mjs +53 -53
  20. package/esm2022/lib/shared/index.mjs +11 -11
  21. package/esm2022/lib/shared/json-schema.functions.mjs +783 -783
  22. package/esm2022/lib/shared/json.validators.mjs +883 -883
  23. package/esm2022/lib/shared/jsonpointer.functions.mjs +1025 -1025
  24. package/esm2022/lib/shared/layout.functions.mjs +1153 -1153
  25. package/esm2022/lib/shared/merge-schemas.function.mjs +344 -344
  26. package/esm2022/lib/shared/utility.functions.mjs +379 -379
  27. package/esm2022/lib/shared/validator.functions.mjs +583 -583
  28. package/esm2022/lib/widget-library/add-reference.component.mjs +48 -48
  29. package/esm2022/lib/widget-library/button.component.mjs +41 -41
  30. package/esm2022/lib/widget-library/checkbox.component.mjs +46 -46
  31. package/esm2022/lib/widget-library/checkboxes.component.mjs +52 -52
  32. package/esm2022/lib/widget-library/file.component.mjs +35 -35
  33. package/esm2022/lib/widget-library/hidden.component.mjs +33 -33
  34. package/esm2022/lib/widget-library/index.mjs +54 -54
  35. package/esm2022/lib/widget-library/input.component.mjs +38 -38
  36. package/esm2022/lib/widget-library/message.component.mjs +33 -33
  37. package/esm2022/lib/widget-library/none.component.mjs +20 -20
  38. package/esm2022/lib/widget-library/number.component.mjs +44 -44
  39. package/esm2022/lib/widget-library/one-of.component.mjs +35 -35
  40. package/esm2022/lib/widget-library/orderable.directive.mjs +123 -123
  41. package/esm2022/lib/widget-library/radios.component.mjs +44 -44
  42. package/esm2022/lib/widget-library/root.component.mjs +44 -44
  43. package/esm2022/lib/widget-library/section.component.mjs +78 -78
  44. package/esm2022/lib/widget-library/select-framework.component.mjs +51 -51
  45. package/esm2022/lib/widget-library/select-widget.component.mjs +46 -46
  46. package/esm2022/lib/widget-library/select.component.mjs +41 -41
  47. package/esm2022/lib/widget-library/submit.component.mjs +55 -55
  48. package/esm2022/lib/widget-library/tab.component.mjs +30 -30
  49. package/esm2022/lib/widget-library/tabs.component.mjs +53 -53
  50. package/esm2022/lib/widget-library/template.component.mjs +46 -46
  51. package/esm2022/lib/widget-library/textarea.component.mjs +37 -37
  52. package/esm2022/lib/widget-library/widget-library.module.mjs +41 -41
  53. package/esm2022/lib/widget-library/widget-library.service.mjs +225 -225
  54. package/esm2022/ng-formworks-core.mjs +4 -4
  55. package/esm2022/public_api.mjs +12 -12
  56. package/fesm2022/ng-formworks-core.mjs +9103 -9103
  57. package/fesm2022/ng-formworks-core.mjs.map +1 -1
  58. package/index.d.ts +5 -5
  59. package/lib/framework-library/framework-library.service.d.ts +55 -55
  60. package/lib/framework-library/framework.d.ts +13 -13
  61. package/lib/framework-library/no-framework.component.d.ts +8 -8
  62. package/lib/framework-library/no-framework.module.d.ts +9 -9
  63. package/lib/framework-library/no.framework.d.ts +10 -10
  64. package/lib/json-schema-form.component.d.ts +218 -218
  65. package/lib/json-schema-form.module.d.ts +11 -11
  66. package/lib/json-schema-form.service.d.ts +115 -115
  67. package/lib/locale/de-validation-messages.d.ts +1 -1
  68. package/lib/locale/en-validation-messages.d.ts +1 -1
  69. package/lib/locale/es-validation-messages.d.ts +1 -1
  70. package/lib/locale/fr-validation-messages.d.ts +1 -1
  71. package/lib/locale/index.d.ts +7 -7
  72. package/lib/locale/it-validation-messages.d.ts +1 -1
  73. package/lib/locale/pt-validation-messages.d.ts +1 -1
  74. package/lib/locale/zh-validation-messages.d.ts +1 -1
  75. package/lib/shared/convert-schema-to-draft6.function.d.ts +21 -21
  76. package/lib/shared/form-group.functions.d.ts +100 -100
  77. package/lib/shared/format-regex.constants.d.ts +19 -19
  78. package/lib/shared/index.d.ts +9 -9
  79. package/lib/shared/json-schema.functions.d.ts +193 -193
  80. package/lib/shared/json.validators.d.ts +441 -441
  81. package/lib/shared/jsonpointer.functions.d.ts +416 -416
  82. package/lib/shared/layout.functions.d.ts +83 -83
  83. package/lib/shared/merge-schemas.function.d.ts +19 -19
  84. package/lib/shared/utility.functions.d.ts +165 -165
  85. package/lib/shared/validator.functions.d.ts +364 -364
  86. package/lib/widget-library/add-reference.component.d.ts +20 -20
  87. package/lib/widget-library/button.component.d.ts +21 -21
  88. package/lib/widget-library/checkbox.component.d.ts +24 -24
  89. package/lib/widget-library/checkboxes.component.d.ts +24 -24
  90. package/lib/widget-library/file.component.d.ts +21 -21
  91. package/lib/widget-library/hidden.component.d.ts +19 -19
  92. package/lib/widget-library/index.d.ts +47 -47
  93. package/lib/widget-library/input.component.d.ts +22 -22
  94. package/lib/widget-library/message.component.d.ts +15 -15
  95. package/lib/widget-library/none.component.d.ts +8 -8
  96. package/lib/widget-library/number.component.d.ts +25 -25
  97. package/lib/widget-library/one-of.component.d.ts +21 -21
  98. package/lib/widget-library/orderable.directive.d.ts +41 -41
  99. package/lib/widget-library/radios.component.d.ts +23 -23
  100. package/lib/widget-library/root.component.d.ts +17 -17
  101. package/lib/widget-library/section.component.d.ts +19 -19
  102. package/lib/widget-library/select-framework.component.d.ts +18 -18
  103. package/lib/widget-library/select-widget.component.d.ts +18 -18
  104. package/lib/widget-library/select.component.d.ts +24 -24
  105. package/lib/widget-library/submit.component.d.ts +24 -24
  106. package/lib/widget-library/tab.component.d.ts +14 -14
  107. package/lib/widget-library/tabs.component.d.ts +20 -20
  108. package/lib/widget-library/template.component.d.ts +18 -18
  109. package/lib/widget-library/textarea.component.d.ts +21 -21
  110. package/lib/widget-library/widget-library.module.d.ts +31 -31
  111. package/lib/widget-library/widget-library.service.d.ts +22 -22
  112. package/package.json +5 -5
  113. package/public_api.d.ts +9 -9
@@ -1,60 +1,60 @@
1
- export const deValidationMessages = {
2
- required: 'Darf nicht leer sein',
3
- minLength: 'Mindestens {{minimumLength}} Zeichen benötigt (aktuell: {{currentLength}})',
4
- maxLength: 'Maximal {{maximumLength}} Zeichen erlaubt (aktuell: {{currentLength}})',
5
- pattern: 'Entspricht nicht diesem regulären Ausdruck: {{requiredPattern}}',
6
- format: function (error) {
7
- switch (error.requiredFormat) {
8
- case 'date':
9
- return 'Muss ein Datum sein, z. B. "2000-12-31"';
10
- case 'time':
11
- return 'Muss eine Zeitangabe sein, z. B. "16:20" oder "03:14:15.9265"';
12
- case 'date-time':
13
- return 'Muss Datum mit Zeit beinhalten, z. B. "2000-03-14T01:59" oder "2000-03-14T01:59:26.535Z"';
14
- case 'email':
15
- return 'Keine gültige E-Mail-Adresse (z. B. "name@example.com")';
16
- case 'hostname':
17
- return 'Kein gültiger Hostname (z. B. "example.com")';
18
- case 'ipv4':
19
- return 'Keine gültige IPv4-Adresse (z. B. "127.0.0.1")';
20
- case 'ipv6':
21
- return 'Keine gültige IPv6-Adresse (z. B. "1234:5678:9ABC:DEF0:1234:5678:9ABC:DEF0")';
22
- // TODO: add examples for 'uri', 'uri-reference', and 'uri-template'
23
- // case 'uri': case 'uri-reference': case 'uri-template':
24
- case 'url':
25
- return 'Keine gültige URL (z. B. "http://www.example.com/page.html")';
26
- case 'uuid':
27
- return 'Keine gültige UUID (z. B. "12345678-9ABC-DEF0-1234-56789ABCDEF0")';
28
- case 'color':
29
- return 'Kein gültiger Farbwert (z. B. "#FFFFFF" oder "rgb(255, 255, 255)")';
30
- case 'json-pointer':
31
- return 'Kein gültiger JSON-Pointer (z. B. "/pointer/to/something")';
32
- case 'relative-json-pointer':
33
- return 'Kein gültiger relativer JSON-Pointer (z. B. "2/pointer/to/something")';
34
- case 'regex':
35
- return 'Kein gültiger regulärer Ausdruck (z. B. "(1-)?\\d{3}-\\d{3}-\\d{4}")';
36
- default:
37
- return 'Muss diesem Format entsprechen: ' + error.requiredFormat;
38
- }
39
- },
40
- minimum: 'Muss mindestens {{minimumValue}} sein',
41
- exclusiveMinimum: 'Muss größer als {{exclusiveMinimumValue}} sein',
42
- maximum: 'Darf maximal {{maximumValue}} sein',
43
- exclusiveMaximum: 'Muss kleiner als {{exclusiveMaximumValue}} sein',
44
- multipleOf: function (error) {
45
- if ((1 / error.multipleOfValue) % 10 === 0) {
46
- const decimals = Math.log10(1 / error.multipleOfValue);
47
- return `Maximal ${decimals} Dezimalstellen erlaubt`;
48
- }
49
- else {
50
- return `Muss ein Vielfaches von ${error.multipleOfValue} sein`;
51
- }
52
- },
53
- minProperties: 'Mindestens {{minimumProperties}} Attribute erforderlich (aktuell: {{currentProperties}})',
54
- maxProperties: 'Maximal {{maximumProperties}} Attribute erlaubt (aktuell: {{currentProperties}})',
55
- minItems: 'Mindestens {{minimumItems}} Werte erforderlich (aktuell: {{currentItems}})',
56
- maxItems: 'Maximal {{maximumItems}} Werte erlaubt (aktuell: {{currentItems}})',
57
- uniqueItems: 'Alle Werte müssen eindeutig sein',
58
- // Note: No default error messages for 'type', 'const', 'enum', or 'dependencies'
59
- };
1
+ export const deValidationMessages = {
2
+ required: 'Darf nicht leer sein',
3
+ minLength: 'Mindestens {{minimumLength}} Zeichen benötigt (aktuell: {{currentLength}})',
4
+ maxLength: 'Maximal {{maximumLength}} Zeichen erlaubt (aktuell: {{currentLength}})',
5
+ pattern: 'Entspricht nicht diesem regulären Ausdruck: {{requiredPattern}}',
6
+ format: function (error) {
7
+ switch (error.requiredFormat) {
8
+ case 'date':
9
+ return 'Muss ein Datum sein, z. B. "2000-12-31"';
10
+ case 'time':
11
+ return 'Muss eine Zeitangabe sein, z. B. "16:20" oder "03:14:15.9265"';
12
+ case 'date-time':
13
+ return 'Muss Datum mit Zeit beinhalten, z. B. "2000-03-14T01:59" oder "2000-03-14T01:59:26.535Z"';
14
+ case 'email':
15
+ return 'Keine gültige E-Mail-Adresse (z. B. "name@example.com")';
16
+ case 'hostname':
17
+ return 'Kein gültiger Hostname (z. B. "example.com")';
18
+ case 'ipv4':
19
+ return 'Keine gültige IPv4-Adresse (z. B. "127.0.0.1")';
20
+ case 'ipv6':
21
+ return 'Keine gültige IPv6-Adresse (z. B. "1234:5678:9ABC:DEF0:1234:5678:9ABC:DEF0")';
22
+ // TODO: add examples for 'uri', 'uri-reference', and 'uri-template'
23
+ // case 'uri': case 'uri-reference': case 'uri-template':
24
+ case 'url':
25
+ return 'Keine gültige URL (z. B. "http://www.example.com/page.html")';
26
+ case 'uuid':
27
+ return 'Keine gültige UUID (z. B. "12345678-9ABC-DEF0-1234-56789ABCDEF0")';
28
+ case 'color':
29
+ return 'Kein gültiger Farbwert (z. B. "#FFFFFF" oder "rgb(255, 255, 255)")';
30
+ case 'json-pointer':
31
+ return 'Kein gültiger JSON-Pointer (z. B. "/pointer/to/something")';
32
+ case 'relative-json-pointer':
33
+ return 'Kein gültiger relativer JSON-Pointer (z. B. "2/pointer/to/something")';
34
+ case 'regex':
35
+ return 'Kein gültiger regulärer Ausdruck (z. B. "(1-)?\\d{3}-\\d{3}-\\d{4}")';
36
+ default:
37
+ return 'Muss diesem Format entsprechen: ' + error.requiredFormat;
38
+ }
39
+ },
40
+ minimum: 'Muss mindestens {{minimumValue}} sein',
41
+ exclusiveMinimum: 'Muss größer als {{exclusiveMinimumValue}} sein',
42
+ maximum: 'Darf maximal {{maximumValue}} sein',
43
+ exclusiveMaximum: 'Muss kleiner als {{exclusiveMaximumValue}} sein',
44
+ multipleOf: function (error) {
45
+ if ((1 / error.multipleOfValue) % 10 === 0) {
46
+ const decimals = Math.log10(1 / error.multipleOfValue);
47
+ return `Maximal ${decimals} Dezimalstellen erlaubt`;
48
+ }
49
+ else {
50
+ return `Muss ein Vielfaches von ${error.multipleOfValue} sein`;
51
+ }
52
+ },
53
+ minProperties: 'Mindestens {{minimumProperties}} Attribute erforderlich (aktuell: {{currentProperties}})',
54
+ maxProperties: 'Maximal {{maximumProperties}} Attribute erlaubt (aktuell: {{currentProperties}})',
55
+ minItems: 'Mindestens {{minimumItems}} Werte erforderlich (aktuell: {{currentItems}})',
56
+ maxItems: 'Maximal {{maximumItems}} Werte erlaubt (aktuell: {{currentItems}})',
57
+ uniqueItems: 'Alle Werte müssen eindeutig sein',
58
+ // Note: No default error messages for 'type', 'const', 'enum', or 'dependencies'
59
+ };
60
60
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGUtdmFsaWRhdGlvbi1tZXNzYWdlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLWZvcm13b3Jrcy1jb3JlL3NyYy9saWIvbG9jYWxlL2RlLXZhbGlkYXRpb24tbWVzc2FnZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFDLE1BQU0sb0JBQW9CLEdBQVE7SUFDdkMsUUFBUSxFQUFFLHNCQUFzQjtJQUNoQyxTQUFTLEVBQUUsNEVBQTRFO0lBQ3ZGLFNBQVMsRUFBRSx3RUFBd0U7SUFDbkYsT0FBTyxFQUFFLGlFQUFpRTtJQUMxRSxNQUFNLEVBQUUsVUFBVSxLQUFLO1FBQ3JCLFFBQVEsS0FBSyxDQUFDLGNBQWMsRUFBRTtZQUM1QixLQUFLLE1BQU07Z0JBQ1QsT0FBTyx5Q0FBeUMsQ0FBQztZQUNuRCxLQUFLLE1BQU07Z0JBQ1QsT0FBTywrREFBK0QsQ0FBQztZQUN6RSxLQUFLLFdBQVc7Z0JBQ2QsT0FBTywwRkFBMEYsQ0FBQztZQUNwRyxLQUFLLE9BQU87Z0JBQ1YsT0FBTyx5REFBeUQsQ0FBQztZQUNuRSxLQUFLLFVBQVU7Z0JBQ2IsT0FBTyw4Q0FBOEMsQ0FBQztZQUN4RCxLQUFLLE1BQU07Z0JBQ1QsT0FBTyxnREFBZ0QsQ0FBQztZQUMxRCxLQUFLLE1BQU07Z0JBQ1QsT0FBTyw4RUFBOEUsQ0FBQztZQUN4RixvRUFBb0U7WUFDcEUseURBQXlEO1lBQ3pELEtBQUssS0FBSztnQkFDUixPQUFPLDhEQUE4RCxDQUFDO1lBQ3hFLEtBQUssTUFBTTtnQkFDVCxPQUFPLG1FQUFtRSxDQUFDO1lBQzdFLEtBQUssT0FBTztnQkFDVixPQUFPLG9FQUFvRSxDQUFDO1lBQzlFLEtBQUssY0FBYztnQkFDakIsT0FBTyw0REFBNEQsQ0FBQztZQUN0RSxLQUFLLHVCQUF1QjtnQkFDMUIsT0FBTyx1RUFBdUUsQ0FBQztZQUNqRixLQUFLLE9BQU87Z0JBQ1YsT0FBTyxzRUFBc0UsQ0FBQztZQUNoRjtnQkFDRSxPQUFPLGtDQUFrQyxHQUFHLEtBQUssQ0FBQyxjQUFjLENBQUM7U0FDcEU7SUFDSCxDQUFDO0lBQ0QsT0FBTyxFQUFFLHVDQUF1QztJQUNoRCxnQkFBZ0IsRUFBRSxnREFBZ0Q7SUFDbEUsT0FBTyxFQUFFLG9DQUFvQztJQUM3QyxnQkFBZ0IsRUFBRSxpREFBaUQ7SUFDbkUsVUFBVSxFQUFFLFVBQVUsS0FBSztRQUN6QixJQUFJLENBQUMsQ0FBQyxHQUFHLEtBQUssQ0FBQyxlQUFlLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxFQUFFO1lBQzFDLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxHQUFHLEtBQUssQ0FBQyxlQUFlLENBQUMsQ0FBQztZQUN2RCxPQUFPLFdBQVcsUUFBUSx5QkFBeUIsQ0FBQztTQUNyRDthQUFNO1lBQ0wsT0FBTywyQkFBMkIsS0FBSyxDQUFDLGVBQWUsT0FBTyxDQUFDO1NBQ2hFO0lBQ0gsQ0FBQztJQUNELGFBQWEsRUFBRSwwRkFBMEY7SUFDekcsYUFBYSxFQUFFLGtGQUFrRjtJQUNqRyxRQUFRLEVBQUUsNEVBQTRFO0lBQ3RGLFFBQVEsRUFBRSxvRUFBb0U7SUFDOUUsV0FBVyxFQUFFLGtDQUFrQztJQUMvQyxpRkFBaUY7Q0FDbEYsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCBkZVZhbGlkYXRpb25NZXNzYWdlczogYW55ID0geyAvLyBEZWZhdWx0IEdlcm1hbiBlcnJvciBtZXNzYWdlc1xyXG4gIHJlcXVpcmVkOiAnRGFyZiBuaWNodCBsZWVyIHNlaW4nLFxyXG4gIG1pbkxlbmd0aDogJ01pbmRlc3RlbnMge3ttaW5pbXVtTGVuZ3RofX0gWmVpY2hlbiBiZW7DtnRpZ3QgKGFrdHVlbGw6IHt7Y3VycmVudExlbmd0aH19KScsXHJcbiAgbWF4TGVuZ3RoOiAnTWF4aW1hbCB7e21heGltdW1MZW5ndGh9fSBaZWljaGVuIGVybGF1YnQgKGFrdHVlbGw6IHt7Y3VycmVudExlbmd0aH19KScsXHJcbiAgcGF0dGVybjogJ0VudHNwcmljaHQgbmljaHQgZGllc2VtIHJlZ3Vsw6RyZW4gQXVzZHJ1Y2s6IHt7cmVxdWlyZWRQYXR0ZXJufX0nLFxyXG4gIGZvcm1hdDogZnVuY3Rpb24gKGVycm9yKSB7XHJcbiAgICBzd2l0Y2ggKGVycm9yLnJlcXVpcmVkRm9ybWF0KSB7XHJcbiAgICAgIGNhc2UgJ2RhdGUnOlxyXG4gICAgICAgIHJldHVybiAnTXVzcyBlaW4gRGF0dW0gc2Vpbiwgei4gQi4gXCIyMDAwLTEyLTMxXCInO1xyXG4gICAgICBjYXNlICd0aW1lJzpcclxuICAgICAgICByZXR1cm4gJ011c3MgZWluZSBaZWl0YW5nYWJlIHNlaW4sIHouIEIuIFwiMTY6MjBcIiBvZGVyIFwiMDM6MTQ6MTUuOTI2NVwiJztcclxuICAgICAgY2FzZSAnZGF0ZS10aW1lJzpcclxuICAgICAgICByZXR1cm4gJ011c3MgRGF0dW0gbWl0IFplaXQgYmVpbmhhbHRlbiwgei4gQi4gXCIyMDAwLTAzLTE0VDAxOjU5XCIgb2RlciBcIjIwMDAtMDMtMTRUMDE6NTk6MjYuNTM1WlwiJztcclxuICAgICAgY2FzZSAnZW1haWwnOlxyXG4gICAgICAgIHJldHVybiAnS2VpbmUgZ8O8bHRpZ2UgRS1NYWlsLUFkcmVzc2UgKHouIEIuIFwibmFtZUBleGFtcGxlLmNvbVwiKSc7XHJcbiAgICAgIGNhc2UgJ2hvc3RuYW1lJzpcclxuICAgICAgICByZXR1cm4gJ0tlaW4gZ8O8bHRpZ2VyIEhvc3RuYW1lICh6LiBCLiBcImV4YW1wbGUuY29tXCIpJztcclxuICAgICAgY2FzZSAnaXB2NCc6XHJcbiAgICAgICAgcmV0dXJuICdLZWluZSBnw7xsdGlnZSBJUHY0LUFkcmVzc2UgKHouIEIuIFwiMTI3LjAuMC4xXCIpJztcclxuICAgICAgY2FzZSAnaXB2Nic6XHJcbiAgICAgICAgcmV0dXJuICdLZWluZSBnw7xsdGlnZSBJUHY2LUFkcmVzc2UgKHouIEIuIFwiMTIzNDo1Njc4OjlBQkM6REVGMDoxMjM0OjU2Nzg6OUFCQzpERUYwXCIpJztcclxuICAgICAgLy8gVE9ETzogYWRkIGV4YW1wbGVzIGZvciAndXJpJywgJ3VyaS1yZWZlcmVuY2UnLCBhbmQgJ3VyaS10ZW1wbGF0ZSdcclxuICAgICAgLy8gY2FzZSAndXJpJzogY2FzZSAndXJpLXJlZmVyZW5jZSc6IGNhc2UgJ3VyaS10ZW1wbGF0ZSc6XHJcbiAgICAgIGNhc2UgJ3VybCc6XHJcbiAgICAgICAgcmV0dXJuICdLZWluZSBnw7xsdGlnZSBVUkwgKHouIEIuIFwiaHR0cDovL3d3dy5leGFtcGxlLmNvbS9wYWdlLmh0bWxcIiknO1xyXG4gICAgICBjYXNlICd1dWlkJzpcclxuICAgICAgICByZXR1cm4gJ0tlaW5lIGfDvGx0aWdlIFVVSUQgKHouIEIuIFwiMTIzNDU2NzgtOUFCQy1ERUYwLTEyMzQtNTY3ODlBQkNERUYwXCIpJztcclxuICAgICAgY2FzZSAnY29sb3InOlxyXG4gICAgICAgIHJldHVybiAnS2VpbiBnw7xsdGlnZXIgRmFyYndlcnQgKHouIEIuIFwiI0ZGRkZGRlwiIG9kZXIgXCJyZ2IoMjU1LCAyNTUsIDI1NSlcIiknO1xyXG4gICAgICBjYXNlICdqc29uLXBvaW50ZXInOlxyXG4gICAgICAgIHJldHVybiAnS2VpbiBnw7xsdGlnZXIgSlNPTi1Qb2ludGVyICh6LiBCLiBcIi9wb2ludGVyL3RvL3NvbWV0aGluZ1wiKSc7XHJcbiAgICAgIGNhc2UgJ3JlbGF0aXZlLWpzb24tcG9pbnRlcic6XHJcbiAgICAgICAgcmV0dXJuICdLZWluIGfDvGx0aWdlciByZWxhdGl2ZXIgSlNPTi1Qb2ludGVyICh6LiBCLiBcIjIvcG9pbnRlci90by9zb21ldGhpbmdcIiknO1xyXG4gICAgICBjYXNlICdyZWdleCc6XHJcbiAgICAgICAgcmV0dXJuICdLZWluIGfDvGx0aWdlciByZWd1bMOkcmVyIEF1c2RydWNrICh6LiBCLiBcIigxLSk/XFxcXGR7M30tXFxcXGR7M30tXFxcXGR7NH1cIiknO1xyXG4gICAgICBkZWZhdWx0OlxyXG4gICAgICAgIHJldHVybiAnTXVzcyBkaWVzZW0gRm9ybWF0IGVudHNwcmVjaGVuOiAnICsgZXJyb3IucmVxdWlyZWRGb3JtYXQ7XHJcbiAgICB9XHJcbiAgfSxcclxuICBtaW5pbXVtOiAnTXVzcyBtaW5kZXN0ZW5zIHt7bWluaW11bVZhbHVlfX0gc2VpbicsXHJcbiAgZXhjbHVzaXZlTWluaW11bTogJ011c3MgZ3LDtsOfZXIgYWxzIHt7ZXhjbHVzaXZlTWluaW11bVZhbHVlfX0gc2VpbicsXHJcbiAgbWF4aW11bTogJ0RhcmYgbWF4aW1hbCB7e21heGltdW1WYWx1ZX19IHNlaW4nLFxyXG4gIGV4Y2x1c2l2ZU1heGltdW06ICdNdXNzIGtsZWluZXIgYWxzIHt7ZXhjbHVzaXZlTWF4aW11bVZhbHVlfX0gc2VpbicsXHJcbiAgbXVsdGlwbGVPZjogZnVuY3Rpb24gKGVycm9yKSB7XHJcbiAgICBpZiAoKDEgLyBlcnJvci5tdWx0aXBsZU9mVmFsdWUpICUgMTAgPT09IDApIHtcclxuICAgICAgY29uc3QgZGVjaW1hbHMgPSBNYXRoLmxvZzEwKDEgLyBlcnJvci5tdWx0aXBsZU9mVmFsdWUpO1xyXG4gICAgICByZXR1cm4gYE1heGltYWwgJHtkZWNpbWFsc30gRGV6aW1hbHN0ZWxsZW4gZXJsYXVidGA7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICByZXR1cm4gYE11c3MgZWluIFZpZWxmYWNoZXMgdm9uICR7ZXJyb3IubXVsdGlwbGVPZlZhbHVlfSBzZWluYDtcclxuICAgIH1cclxuICB9LFxyXG4gIG1pblByb3BlcnRpZXM6ICdNaW5kZXN0ZW5zIHt7bWluaW11bVByb3BlcnRpZXN9fSBBdHRyaWJ1dGUgZXJmb3JkZXJsaWNoIChha3R1ZWxsOiB7e2N1cnJlbnRQcm9wZXJ0aWVzfX0pJyxcclxuICBtYXhQcm9wZXJ0aWVzOiAnTWF4aW1hbCB7e21heGltdW1Qcm9wZXJ0aWVzfX0gQXR0cmlidXRlIGVybGF1YnQgKGFrdHVlbGw6IHt7Y3VycmVudFByb3BlcnRpZXN9fSknLFxyXG4gIG1pbkl0ZW1zOiAnTWluZGVzdGVucyB7e21pbmltdW1JdGVtc319IFdlcnRlIGVyZm9yZGVybGljaCAoYWt0dWVsbDoge3tjdXJyZW50SXRlbXN9fSknLFxyXG4gIG1heEl0ZW1zOiAnTWF4aW1hbCB7e21heGltdW1JdGVtc319IFdlcnRlIGVybGF1YnQgKGFrdHVlbGw6IHt7Y3VycmVudEl0ZW1zfX0pJyxcclxuICB1bmlxdWVJdGVtczogJ0FsbGUgV2VydGUgbcO8c3NlbiBlaW5kZXV0aWcgc2VpbicsXHJcbiAgLy8gTm90ZTogTm8gZGVmYXVsdCBlcnJvciBtZXNzYWdlcyBmb3IgJ3R5cGUnLCAnY29uc3QnLCAnZW51bScsIG9yICdkZXBlbmRlbmNpZXMnXHJcbn07XHJcbiJdfQ==
@@ -1,60 +1,60 @@
1
- export const enValidationMessages = {
2
- required: 'This field is required.',
3
- minLength: 'Must be {{minimumLength}} characters or longer (current length: {{currentLength}})',
4
- maxLength: 'Must be {{maximumLength}} characters or shorter (current length: {{currentLength}})',
5
- pattern: 'Must match pattern: {{requiredPattern}}',
6
- format: function (error) {
7
- switch (error.requiredFormat) {
8
- case 'date':
9
- return 'Must be a date, like "2000-12-31"';
10
- case 'time':
11
- return 'Must be a time, like "16:20" or "03:14:15.9265"';
12
- case 'date-time':
13
- return 'Must be a date-time, like "2000-03-14T01:59" or "2000-03-14T01:59:26.535Z"';
14
- case 'email':
15
- return 'Must be an email address, like "name@example.com"';
16
- case 'hostname':
17
- return 'Must be a hostname, like "example.com"';
18
- case 'ipv4':
19
- return 'Must be an IPv4 address, like "127.0.0.1"';
20
- case 'ipv6':
21
- return 'Must be an IPv6 address, like "1234:5678:9ABC:DEF0:1234:5678:9ABC:DEF0"';
22
- // TODO: add examples for 'uri', 'uri-reference', and 'uri-template'
23
- // case 'uri': case 'uri-reference': case 'uri-template':
24
- case 'url':
25
- return 'Must be a url, like "http://www.example.com/page.html"';
26
- case 'uuid':
27
- return 'Must be a uuid, like "12345678-9ABC-DEF0-1234-56789ABCDEF0"';
28
- case 'color':
29
- return 'Must be a color, like "#FFFFFF" or "rgb(255, 255, 255)"';
30
- case 'json-pointer':
31
- return 'Must be a JSON Pointer, like "/pointer/to/something"';
32
- case 'relative-json-pointer':
33
- return 'Must be a relative JSON Pointer, like "2/pointer/to/something"';
34
- case 'regex':
35
- return 'Must be a regular expression, like "(1-)?\\d{3}-\\d{3}-\\d{4}"';
36
- default:
37
- return 'Must be a correctly formatted ' + error.requiredFormat;
38
- }
39
- },
40
- minimum: 'Must be {{minimumValue}} or more',
41
- exclusiveMinimum: 'Must be more than {{exclusiveMinimumValue}}',
42
- maximum: 'Must be {{maximumValue}} or less',
43
- exclusiveMaximum: 'Must be less than {{exclusiveMaximumValue}}',
44
- multipleOf: function (error) {
45
- if ((1 / error.multipleOfValue) % 10 === 0) {
46
- const decimals = Math.log10(1 / error.multipleOfValue);
47
- return `Must have ${decimals} or fewer decimal places.`;
48
- }
49
- else {
50
- return `Must be a multiple of ${error.multipleOfValue}.`;
51
- }
52
- },
53
- minProperties: 'Must have {{minimumProperties}} or more items (current items: {{currentProperties}})',
54
- maxProperties: 'Must have {{maximumProperties}} or fewer items (current items: {{currentProperties}})',
55
- minItems: 'Must have {{minimumItems}} or more items (current items: {{currentItems}})',
56
- maxItems: 'Must have {{maximumItems}} or fewer items (current items: {{currentItems}})',
57
- uniqueItems: 'All items must be unique',
58
- // Note: No default error messages for 'type', 'const', 'enum', or 'dependencies'
59
- };
1
+ export const enValidationMessages = {
2
+ required: 'This field is required.',
3
+ minLength: 'Must be {{minimumLength}} characters or longer (current length: {{currentLength}})',
4
+ maxLength: 'Must be {{maximumLength}} characters or shorter (current length: {{currentLength}})',
5
+ pattern: 'Must match pattern: {{requiredPattern}}',
6
+ format: function (error) {
7
+ switch (error.requiredFormat) {
8
+ case 'date':
9
+ return 'Must be a date, like "2000-12-31"';
10
+ case 'time':
11
+ return 'Must be a time, like "16:20" or "03:14:15.9265"';
12
+ case 'date-time':
13
+ return 'Must be a date-time, like "2000-03-14T01:59" or "2000-03-14T01:59:26.535Z"';
14
+ case 'email':
15
+ return 'Must be an email address, like "name@example.com"';
16
+ case 'hostname':
17
+ return 'Must be a hostname, like "example.com"';
18
+ case 'ipv4':
19
+ return 'Must be an IPv4 address, like "127.0.0.1"';
20
+ case 'ipv6':
21
+ return 'Must be an IPv6 address, like "1234:5678:9ABC:DEF0:1234:5678:9ABC:DEF0"';
22
+ // TODO: add examples for 'uri', 'uri-reference', and 'uri-template'
23
+ // case 'uri': case 'uri-reference': case 'uri-template':
24
+ case 'url':
25
+ return 'Must be a url, like "http://www.example.com/page.html"';
26
+ case 'uuid':
27
+ return 'Must be a uuid, like "12345678-9ABC-DEF0-1234-56789ABCDEF0"';
28
+ case 'color':
29
+ return 'Must be a color, like "#FFFFFF" or "rgb(255, 255, 255)"';
30
+ case 'json-pointer':
31
+ return 'Must be a JSON Pointer, like "/pointer/to/something"';
32
+ case 'relative-json-pointer':
33
+ return 'Must be a relative JSON Pointer, like "2/pointer/to/something"';
34
+ case 'regex':
35
+ return 'Must be a regular expression, like "(1-)?\\d{3}-\\d{3}-\\d{4}"';
36
+ default:
37
+ return 'Must be a correctly formatted ' + error.requiredFormat;
38
+ }
39
+ },
40
+ minimum: 'Must be {{minimumValue}} or more',
41
+ exclusiveMinimum: 'Must be more than {{exclusiveMinimumValue}}',
42
+ maximum: 'Must be {{maximumValue}} or less',
43
+ exclusiveMaximum: 'Must be less than {{exclusiveMaximumValue}}',
44
+ multipleOf: function (error) {
45
+ if ((1 / error.multipleOfValue) % 10 === 0) {
46
+ const decimals = Math.log10(1 / error.multipleOfValue);
47
+ return `Must have ${decimals} or fewer decimal places.`;
48
+ }
49
+ else {
50
+ return `Must be a multiple of ${error.multipleOfValue}.`;
51
+ }
52
+ },
53
+ minProperties: 'Must have {{minimumProperties}} or more items (current items: {{currentProperties}})',
54
+ maxProperties: 'Must have {{maximumProperties}} or fewer items (current items: {{currentProperties}})',
55
+ minItems: 'Must have {{minimumItems}} or more items (current items: {{currentItems}})',
56
+ maxItems: 'Must have {{maximumItems}} or fewer items (current items: {{currentItems}})',
57
+ uniqueItems: 'All items must be unique',
58
+ // Note: No default error messages for 'type', 'const', 'enum', or 'dependencies'
59
+ };
60
60
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW4tdmFsaWRhdGlvbi1tZXNzYWdlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLWZvcm13b3Jrcy1jb3JlL3NyYy9saWIvbG9jYWxlL2VuLXZhbGlkYXRpb24tbWVzc2FnZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFDLE1BQU0sb0JBQW9CLEdBQVE7SUFDdkMsUUFBUSxFQUFFLHlCQUF5QjtJQUNuQyxTQUFTLEVBQUUsb0ZBQW9GO0lBQy9GLFNBQVMsRUFBRSxxRkFBcUY7SUFDaEcsT0FBTyxFQUFFLHlDQUF5QztJQUNsRCxNQUFNLEVBQUUsVUFBVSxLQUFLO1FBQ3JCLFFBQVEsS0FBSyxDQUFDLGNBQWMsRUFBRTtZQUM1QixLQUFLLE1BQU07Z0JBQ1QsT0FBTyxtQ0FBbUMsQ0FBQztZQUM3QyxLQUFLLE1BQU07Z0JBQ1QsT0FBTyxpREFBaUQsQ0FBQztZQUMzRCxLQUFLLFdBQVc7Z0JBQ2QsT0FBTyw0RUFBNEUsQ0FBQztZQUN0RixLQUFLLE9BQU87Z0JBQ1YsT0FBTyxtREFBbUQsQ0FBQztZQUM3RCxLQUFLLFVBQVU7Z0JBQ2IsT0FBTyx3Q0FBd0MsQ0FBQztZQUNsRCxLQUFLLE1BQU07Z0JBQ1QsT0FBTywyQ0FBMkMsQ0FBQztZQUNyRCxLQUFLLE1BQU07Z0JBQ1QsT0FBTyx5RUFBeUUsQ0FBQztZQUNuRixvRUFBb0U7WUFDcEUseURBQXlEO1lBQ3pELEtBQUssS0FBSztnQkFDUixPQUFPLHdEQUF3RCxDQUFDO1lBQ2xFLEtBQUssTUFBTTtnQkFDVCxPQUFPLDZEQUE2RCxDQUFDO1lBQ3ZFLEtBQUssT0FBTztnQkFDVixPQUFPLHlEQUF5RCxDQUFDO1lBQ25FLEtBQUssY0FBYztnQkFDakIsT0FBTyxzREFBc0QsQ0FBQztZQUNoRSxLQUFLLHVCQUF1QjtnQkFDMUIsT0FBTyxnRUFBZ0UsQ0FBQztZQUMxRSxLQUFLLE9BQU87Z0JBQ1YsT0FBTyxnRUFBZ0UsQ0FBQztZQUMxRTtnQkFDRSxPQUFPLGdDQUFnQyxHQUFHLEtBQUssQ0FBQyxjQUFjLENBQUM7U0FDbEU7SUFDSCxDQUFDO0lBQ0QsT0FBTyxFQUFFLGtDQUFrQztJQUMzQyxnQkFBZ0IsRUFBRSw2Q0FBNkM7SUFDL0QsT0FBTyxFQUFFLGtDQUFrQztJQUMzQyxnQkFBZ0IsRUFBRSw2Q0FBNkM7SUFDL0QsVUFBVSxFQUFFLFVBQVUsS0FBSztRQUN6QixJQUFJLENBQUMsQ0FBQyxHQUFHLEtBQUssQ0FBQyxlQUFlLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxFQUFFO1lBQzFDLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxHQUFHLEtBQUssQ0FBQyxlQUFlLENBQUMsQ0FBQztZQUN2RCxPQUFPLGFBQWEsUUFBUSwyQkFBMkIsQ0FBQztTQUN6RDthQUFNO1lBQ0wsT0FBTyx5QkFBeUIsS0FBSyxDQUFDLGVBQWUsR0FBRyxDQUFDO1NBQzFEO0lBQ0gsQ0FBQztJQUNELGFBQWEsRUFBRSxzRkFBc0Y7SUFDckcsYUFBYSxFQUFFLHVGQUF1RjtJQUN0RyxRQUFRLEVBQUUsNEVBQTRFO0lBQ3RGLFFBQVEsRUFBRSw2RUFBNkU7SUFDdkYsV0FBVyxFQUFFLDBCQUEwQjtJQUN2QyxpRkFBaUY7Q0FDbEYsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCBlblZhbGlkYXRpb25NZXNzYWdlczogYW55ID0geyAvLyBEZWZhdWx0IEVuZ2xpc2ggZXJyb3IgbWVzc2FnZXNcclxuICByZXF1aXJlZDogJ1RoaXMgZmllbGQgaXMgcmVxdWlyZWQuJyxcclxuICBtaW5MZW5ndGg6ICdNdXN0IGJlIHt7bWluaW11bUxlbmd0aH19IGNoYXJhY3RlcnMgb3IgbG9uZ2VyIChjdXJyZW50IGxlbmd0aDoge3tjdXJyZW50TGVuZ3RofX0pJyxcclxuICBtYXhMZW5ndGg6ICdNdXN0IGJlIHt7bWF4aW11bUxlbmd0aH19IGNoYXJhY3RlcnMgb3Igc2hvcnRlciAoY3VycmVudCBsZW5ndGg6IHt7Y3VycmVudExlbmd0aH19KScsXHJcbiAgcGF0dGVybjogJ011c3QgbWF0Y2ggcGF0dGVybjoge3tyZXF1aXJlZFBhdHRlcm59fScsXHJcbiAgZm9ybWF0OiBmdW5jdGlvbiAoZXJyb3IpIHtcclxuICAgIHN3aXRjaCAoZXJyb3IucmVxdWlyZWRGb3JtYXQpIHtcclxuICAgICAgY2FzZSAnZGF0ZSc6XHJcbiAgICAgICAgcmV0dXJuICdNdXN0IGJlIGEgZGF0ZSwgbGlrZSBcIjIwMDAtMTItMzFcIic7XHJcbiAgICAgIGNhc2UgJ3RpbWUnOlxyXG4gICAgICAgIHJldHVybiAnTXVzdCBiZSBhIHRpbWUsIGxpa2UgXCIxNjoyMFwiIG9yIFwiMDM6MTQ6MTUuOTI2NVwiJztcclxuICAgICAgY2FzZSAnZGF0ZS10aW1lJzpcclxuICAgICAgICByZXR1cm4gJ011c3QgYmUgYSBkYXRlLXRpbWUsIGxpa2UgXCIyMDAwLTAzLTE0VDAxOjU5XCIgb3IgXCIyMDAwLTAzLTE0VDAxOjU5OjI2LjUzNVpcIic7XHJcbiAgICAgIGNhc2UgJ2VtYWlsJzpcclxuICAgICAgICByZXR1cm4gJ011c3QgYmUgYW4gZW1haWwgYWRkcmVzcywgbGlrZSBcIm5hbWVAZXhhbXBsZS5jb21cIic7XHJcbiAgICAgIGNhc2UgJ2hvc3RuYW1lJzpcclxuICAgICAgICByZXR1cm4gJ011c3QgYmUgYSBob3N0bmFtZSwgbGlrZSBcImV4YW1wbGUuY29tXCInO1xyXG4gICAgICBjYXNlICdpcHY0JzpcclxuICAgICAgICByZXR1cm4gJ011c3QgYmUgYW4gSVB2NCBhZGRyZXNzLCBsaWtlIFwiMTI3LjAuMC4xXCInO1xyXG4gICAgICBjYXNlICdpcHY2JzpcclxuICAgICAgICByZXR1cm4gJ011c3QgYmUgYW4gSVB2NiBhZGRyZXNzLCBsaWtlIFwiMTIzNDo1Njc4OjlBQkM6REVGMDoxMjM0OjU2Nzg6OUFCQzpERUYwXCInO1xyXG4gICAgICAvLyBUT0RPOiBhZGQgZXhhbXBsZXMgZm9yICd1cmknLCAndXJpLXJlZmVyZW5jZScsIGFuZCAndXJpLXRlbXBsYXRlJ1xyXG4gICAgICAvLyBjYXNlICd1cmknOiBjYXNlICd1cmktcmVmZXJlbmNlJzogY2FzZSAndXJpLXRlbXBsYXRlJzpcclxuICAgICAgY2FzZSAndXJsJzpcclxuICAgICAgICByZXR1cm4gJ011c3QgYmUgYSB1cmwsIGxpa2UgXCJodHRwOi8vd3d3LmV4YW1wbGUuY29tL3BhZ2UuaHRtbFwiJztcclxuICAgICAgY2FzZSAndXVpZCc6XHJcbiAgICAgICAgcmV0dXJuICdNdXN0IGJlIGEgdXVpZCwgbGlrZSBcIjEyMzQ1Njc4LTlBQkMtREVGMC0xMjM0LTU2Nzg5QUJDREVGMFwiJztcclxuICAgICAgY2FzZSAnY29sb3InOlxyXG4gICAgICAgIHJldHVybiAnTXVzdCBiZSBhIGNvbG9yLCBsaWtlIFwiI0ZGRkZGRlwiIG9yIFwicmdiKDI1NSwgMjU1LCAyNTUpXCInO1xyXG4gICAgICBjYXNlICdqc29uLXBvaW50ZXInOlxyXG4gICAgICAgIHJldHVybiAnTXVzdCBiZSBhIEpTT04gUG9pbnRlciwgbGlrZSBcIi9wb2ludGVyL3RvL3NvbWV0aGluZ1wiJztcclxuICAgICAgY2FzZSAncmVsYXRpdmUtanNvbi1wb2ludGVyJzpcclxuICAgICAgICByZXR1cm4gJ011c3QgYmUgYSByZWxhdGl2ZSBKU09OIFBvaW50ZXIsIGxpa2UgXCIyL3BvaW50ZXIvdG8vc29tZXRoaW5nXCInO1xyXG4gICAgICBjYXNlICdyZWdleCc6XHJcbiAgICAgICAgcmV0dXJuICdNdXN0IGJlIGEgcmVndWxhciBleHByZXNzaW9uLCBsaWtlIFwiKDEtKT9cXFxcZHszfS1cXFxcZHszfS1cXFxcZHs0fVwiJztcclxuICAgICAgZGVmYXVsdDpcclxuICAgICAgICByZXR1cm4gJ011c3QgYmUgYSBjb3JyZWN0bHkgZm9ybWF0dGVkICcgKyBlcnJvci5yZXF1aXJlZEZvcm1hdDtcclxuICAgIH1cclxuICB9LFxyXG4gIG1pbmltdW06ICdNdXN0IGJlIHt7bWluaW11bVZhbHVlfX0gb3IgbW9yZScsXHJcbiAgZXhjbHVzaXZlTWluaW11bTogJ011c3QgYmUgbW9yZSB0aGFuIHt7ZXhjbHVzaXZlTWluaW11bVZhbHVlfX0nLFxyXG4gIG1heGltdW06ICdNdXN0IGJlIHt7bWF4aW11bVZhbHVlfX0gb3IgbGVzcycsXHJcbiAgZXhjbHVzaXZlTWF4aW11bTogJ011c3QgYmUgbGVzcyB0aGFuIHt7ZXhjbHVzaXZlTWF4aW11bVZhbHVlfX0nLFxyXG4gIG11bHRpcGxlT2Y6IGZ1bmN0aW9uIChlcnJvcikge1xyXG4gICAgaWYgKCgxIC8gZXJyb3IubXVsdGlwbGVPZlZhbHVlKSAlIDEwID09PSAwKSB7XHJcbiAgICAgIGNvbnN0IGRlY2ltYWxzID0gTWF0aC5sb2cxMCgxIC8gZXJyb3IubXVsdGlwbGVPZlZhbHVlKTtcclxuICAgICAgcmV0dXJuIGBNdXN0IGhhdmUgJHtkZWNpbWFsc30gb3IgZmV3ZXIgZGVjaW1hbCBwbGFjZXMuYDtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHJldHVybiBgTXVzdCBiZSBhIG11bHRpcGxlIG9mICR7ZXJyb3IubXVsdGlwbGVPZlZhbHVlfS5gO1xyXG4gICAgfVxyXG4gIH0sXHJcbiAgbWluUHJvcGVydGllczogJ011c3QgaGF2ZSB7e21pbmltdW1Qcm9wZXJ0aWVzfX0gb3IgbW9yZSBpdGVtcyAoY3VycmVudCBpdGVtczoge3tjdXJyZW50UHJvcGVydGllc319KScsXHJcbiAgbWF4UHJvcGVydGllczogJ011c3QgaGF2ZSB7e21heGltdW1Qcm9wZXJ0aWVzfX0gb3IgZmV3ZXIgaXRlbXMgKGN1cnJlbnQgaXRlbXM6IHt7Y3VycmVudFByb3BlcnRpZXN9fSknLFxyXG4gIG1pbkl0ZW1zOiAnTXVzdCBoYXZlIHt7bWluaW11bUl0ZW1zfX0gb3IgbW9yZSBpdGVtcyAoY3VycmVudCBpdGVtczoge3tjdXJyZW50SXRlbXN9fSknLFxyXG4gIG1heEl0ZW1zOiAnTXVzdCBoYXZlIHt7bWF4aW11bUl0ZW1zfX0gb3IgZmV3ZXIgaXRlbXMgKGN1cnJlbnQgaXRlbXM6IHt7Y3VycmVudEl0ZW1zfX0pJyxcclxuICB1bmlxdWVJdGVtczogJ0FsbCBpdGVtcyBtdXN0IGJlIHVuaXF1ZScsXHJcbiAgLy8gTm90ZTogTm8gZGVmYXVsdCBlcnJvciBtZXNzYWdlcyBmb3IgJ3R5cGUnLCAnY29uc3QnLCAnZW51bScsIG9yICdkZXBlbmRlbmNpZXMnXHJcbn07XHJcbiJdfQ==
@@ -1,57 +1,57 @@
1
- export const esValidationMessages = {
2
- required: 'Este campo está requerido.',
3
- minLength: 'Debe tener {{minimumLength}} caracteres o más longitud (longitud actual: {{currentLength}})',
4
- maxLength: 'Debe tener {{maximumLength}} caracteres o menos longitud (longitud actual: {{currentLength}})',
5
- pattern: 'Must match pattern: {{requiredPattern}}',
6
- format: function (error) {
7
- switch (error.requiredFormat) {
8
- case 'date':
9
- return 'Debe tener una fecha, ej "2000-12-31"';
10
- case 'time':
11
- return 'Debe tener una hora, ej "16:20" o "03:14:15.9265"';
12
- case 'date-time':
13
- return 'Debe tener fecha y hora, ej "2000-03-14T01:59" o "2000-03-14T01:59:26.535Z"';
14
- case 'email':
15
- return 'No hay dirección de correo electrónico válida, ej "name@example.com"';
16
- case 'hostname':
17
- return 'Debe ser un nombre de host válido, ej "example.com"';
18
- case 'ipv4':
19
- return 'Debe ser una dirección de IPv4, ej "127.0.0.1"';
20
- case 'ipv6':
21
- return 'Debe ser una dirección de IPv6, ej "1234:5678:9ABC:DEF0:1234:5678:9ABC:DEF0"';
22
- case 'url':
23
- return 'Debe ser una URL, ej "http://www.example.com/page.html"';
24
- case 'uuid':
25
- return 'Debe ser un UUID, ej "12345678-9ABC-DEF0-1234-56789ABCDEF0"';
26
- case 'color':
27
- return 'Debe ser un color, ej "#FFFFFF" or "rgb(255, 255, 255)"';
28
- case 'json-pointer':
29
- return 'Debe ser un JSON Pointer, ej "/pointer/to/something"';
30
- case 'relative-json-pointer':
31
- return 'Debe ser un JSON Pointer relativo, ej "2/pointer/to/something"';
32
- case 'regex':
33
- return 'Debe ser una expresión regular, ej "(1-)?\\d{3}-\\d{3}-\\d{4}"';
34
- default:
35
- return 'Debe tener el formato correcto ' + error.requiredFormat;
36
- }
37
- },
38
- minimum: 'Debe ser {{minimumValue}} o más',
39
- exclusiveMinimum: 'Debe ser superior a {{exclusiveMinimumValue}}',
40
- maximum: 'Debe ser {{maximumValue}} o menos',
41
- exclusiveMaximum: 'Debe ser menor que {{exclusiveMaximumValue}}',
42
- multipleOf: function (error) {
43
- if ((1 / error.multipleOfValue) % 10 === 0) {
44
- const decimals = Math.log10(1 / error.multipleOfValue);
45
- return `Se permite un máximo de ${decimals} decimales`;
46
- }
47
- else {
48
- return `Debe ser múltiplo de ${error.multipleOfValue}.`;
49
- }
50
- },
51
- minProperties: 'Debe tener {{minimumProperties}} o más elementos (elementos actuales: {{currentProperties}})',
52
- maxProperties: 'Debe tener {{maximumProperties}} o menos elementos (elementos actuales: {{currentProperties}})',
53
- minItems: 'Debe tener {{minimumItems}} o más elementos (elementos actuales: {{currentItems}})',
54
- maxItems: 'Debe tener {{maximumItems}} o menos elementos (elementos actuales: {{currentItems}})',
55
- uniqueItems: 'Todos los elementos deben ser únicos',
56
- };
1
+ export const esValidationMessages = {
2
+ required: 'Este campo está requerido.',
3
+ minLength: 'Debe tener {{minimumLength}} caracteres o más longitud (longitud actual: {{currentLength}})',
4
+ maxLength: 'Debe tener {{maximumLength}} caracteres o menos longitud (longitud actual: {{currentLength}})',
5
+ pattern: 'Must match pattern: {{requiredPattern}}',
6
+ format: function (error) {
7
+ switch (error.requiredFormat) {
8
+ case 'date':
9
+ return 'Debe tener una fecha, ej "2000-12-31"';
10
+ case 'time':
11
+ return 'Debe tener una hora, ej "16:20" o "03:14:15.9265"';
12
+ case 'date-time':
13
+ return 'Debe tener fecha y hora, ej "2000-03-14T01:59" o "2000-03-14T01:59:26.535Z"';
14
+ case 'email':
15
+ return 'No hay dirección de correo electrónico válida, ej "name@example.com"';
16
+ case 'hostname':
17
+ return 'Debe ser un nombre de host válido, ej "example.com"';
18
+ case 'ipv4':
19
+ return 'Debe ser una dirección de IPv4, ej "127.0.0.1"';
20
+ case 'ipv6':
21
+ return 'Debe ser una dirección de IPv6, ej "1234:5678:9ABC:DEF0:1234:5678:9ABC:DEF0"';
22
+ case 'url':
23
+ return 'Debe ser una URL, ej "http://www.example.com/page.html"';
24
+ case 'uuid':
25
+ return 'Debe ser un UUID, ej "12345678-9ABC-DEF0-1234-56789ABCDEF0"';
26
+ case 'color':
27
+ return 'Debe ser un color, ej "#FFFFFF" or "rgb(255, 255, 255)"';
28
+ case 'json-pointer':
29
+ return 'Debe ser un JSON Pointer, ej "/pointer/to/something"';
30
+ case 'relative-json-pointer':
31
+ return 'Debe ser un JSON Pointer relativo, ej "2/pointer/to/something"';
32
+ case 'regex':
33
+ return 'Debe ser una expresión regular, ej "(1-)?\\d{3}-\\d{3}-\\d{4}"';
34
+ default:
35
+ return 'Debe tener el formato correcto ' + error.requiredFormat;
36
+ }
37
+ },
38
+ minimum: 'Debe ser {{minimumValue}} o más',
39
+ exclusiveMinimum: 'Debe ser superior a {{exclusiveMinimumValue}}',
40
+ maximum: 'Debe ser {{maximumValue}} o menos',
41
+ exclusiveMaximum: 'Debe ser menor que {{exclusiveMaximumValue}}',
42
+ multipleOf: function (error) {
43
+ if ((1 / error.multipleOfValue) % 10 === 0) {
44
+ const decimals = Math.log10(1 / error.multipleOfValue);
45
+ return `Se permite un máximo de ${decimals} decimales`;
46
+ }
47
+ else {
48
+ return `Debe ser múltiplo de ${error.multipleOfValue}.`;
49
+ }
50
+ },
51
+ minProperties: 'Debe tener {{minimumProperties}} o más elementos (elementos actuales: {{currentProperties}})',
52
+ maxProperties: 'Debe tener {{maximumProperties}} o menos elementos (elementos actuales: {{currentProperties}})',
53
+ minItems: 'Debe tener {{minimumItems}} o más elementos (elementos actuales: {{currentItems}})',
54
+ maxItems: 'Debe tener {{maximumItems}} o menos elementos (elementos actuales: {{currentItems}})',
55
+ uniqueItems: 'Todos los elementos deben ser únicos',
56
+ };
57
57
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXMtdmFsaWRhdGlvbi1tZXNzYWdlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLWZvcm13b3Jrcy1jb3JlL3NyYy9saWIvbG9jYWxlL2VzLXZhbGlkYXRpb24tbWVzc2FnZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFDLE1BQU0sb0JBQW9CLEdBQVE7SUFDdkMsUUFBUSxFQUFFLDRCQUE0QjtJQUN0QyxTQUFTLEVBQUUsNkZBQTZGO0lBQ3hHLFNBQVMsRUFBRSwrRkFBK0Y7SUFDMUcsT0FBTyxFQUFFLHlDQUF5QztJQUNsRCxNQUFNLEVBQUUsVUFBVSxLQUFLO1FBQ3JCLFFBQVEsS0FBSyxDQUFDLGNBQWMsRUFBRTtZQUM1QixLQUFLLE1BQU07Z0JBQ1QsT0FBTyx1Q0FBdUMsQ0FBQztZQUNqRCxLQUFLLE1BQU07Z0JBQ1QsT0FBTyxtREFBbUQsQ0FBQztZQUM3RCxLQUFLLFdBQVc7Z0JBQ2QsT0FBTyw2RUFBNkUsQ0FBQztZQUN2RixLQUFLLE9BQU87Z0JBQ1YsT0FBTyxzRUFBc0UsQ0FBQztZQUNoRixLQUFLLFVBQVU7Z0JBQ2IsT0FBTyxxREFBcUQsQ0FBQztZQUMvRCxLQUFLLE1BQU07Z0JBQ1QsT0FBTyxnREFBZ0QsQ0FBQztZQUMxRCxLQUFLLE1BQU07Z0JBQ1QsT0FBTyw4RUFBOEUsQ0FBQztZQUN4RixLQUFLLEtBQUs7Z0JBQ1IsT0FBTyx5REFBeUQsQ0FBQztZQUNuRSxLQUFLLE1BQU07Z0JBQ1QsT0FBTyw2REFBNkQsQ0FBQztZQUN2RSxLQUFLLE9BQU87Z0JBQ1YsT0FBTyx5REFBeUQsQ0FBQztZQUNuRSxLQUFLLGNBQWM7Z0JBQ2pCLE9BQU8sc0RBQXNELENBQUM7WUFDaEUsS0FBSyx1QkFBdUI7Z0JBQzFCLE9BQU8sZ0VBQWdFLENBQUM7WUFDMUUsS0FBSyxPQUFPO2dCQUNWLE9BQU8sZ0VBQWdFLENBQUM7WUFDMUU7Z0JBQ0UsT0FBTyxpQ0FBaUMsR0FBRyxLQUFLLENBQUMsY0FBYyxDQUFDO1NBQ25FO0lBQ0gsQ0FBQztJQUNELE9BQU8sRUFBRSxpQ0FBaUM7SUFDMUMsZ0JBQWdCLEVBQUUsK0NBQStDO0lBQ2pFLE9BQU8sRUFBRSxtQ0FBbUM7SUFDNUMsZ0JBQWdCLEVBQUUsOENBQThDO0lBQ2hFLFVBQVUsRUFBRSxVQUFVLEtBQUs7UUFDekIsSUFBSSxDQUFDLENBQUMsR0FBRyxLQUFLLENBQUMsZUFBZSxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsRUFBRTtZQUMxQyxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxLQUFLLENBQUMsZUFBZSxDQUFDLENBQUM7WUFDdkQsT0FBTywyQkFBMkIsUUFBUSxZQUFZLENBQUM7U0FDeEQ7YUFBTTtZQUNMLE9BQU8sd0JBQXdCLEtBQUssQ0FBQyxlQUFlLEdBQUcsQ0FBQztTQUN6RDtJQUNILENBQUM7SUFDRCxhQUFhLEVBQUUsOEZBQThGO0lBQzdHLGFBQWEsRUFBRSxnR0FBZ0c7SUFDL0csUUFBUSxFQUFFLG9GQUFvRjtJQUM5RixRQUFRLEVBQUUsc0ZBQXNGO0lBQ2hHLFdBQVcsRUFBRSxzQ0FBc0M7Q0FDcEQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCBlc1ZhbGlkYXRpb25NZXNzYWdlczogYW55ID0geyAvLyBEZWZhdWx0IFNwYW5pc2ggZXJyb3IgbWVzc2FnZXNcclxuICByZXF1aXJlZDogJ0VzdGUgY2FtcG8gZXN0w6EgcmVxdWVyaWRvLicsXHJcbiAgbWluTGVuZ3RoOiAnRGViZSB0ZW5lciB7e21pbmltdW1MZW5ndGh9fSBjYXJhY3RlcmVzIG8gbcOhcyBsb25naXR1ZCAobG9uZ2l0dWQgYWN0dWFsOiB7e2N1cnJlbnRMZW5ndGh9fSknLFxyXG4gIG1heExlbmd0aDogJ0RlYmUgdGVuZXIge3ttYXhpbXVtTGVuZ3RofX0gY2FyYWN0ZXJlcyBvIG1lbm9zIGxvbmdpdHVkIChsb25naXR1ZCBhY3R1YWw6IHt7Y3VycmVudExlbmd0aH19KScsXHJcbiAgcGF0dGVybjogJ011c3QgbWF0Y2ggcGF0dGVybjoge3tyZXF1aXJlZFBhdHRlcm59fScsXHJcbiAgZm9ybWF0OiBmdW5jdGlvbiAoZXJyb3IpIHtcclxuICAgIHN3aXRjaCAoZXJyb3IucmVxdWlyZWRGb3JtYXQpIHtcclxuICAgICAgY2FzZSAnZGF0ZSc6XHJcbiAgICAgICAgcmV0dXJuICdEZWJlIHRlbmVyIHVuYSBmZWNoYSwgZWogXCIyMDAwLTEyLTMxXCInO1xyXG4gICAgICBjYXNlICd0aW1lJzpcclxuICAgICAgICByZXR1cm4gJ0RlYmUgdGVuZXIgdW5hIGhvcmEsIGVqIFwiMTY6MjBcIiBvIFwiMDM6MTQ6MTUuOTI2NVwiJztcclxuICAgICAgY2FzZSAnZGF0ZS10aW1lJzpcclxuICAgICAgICByZXR1cm4gJ0RlYmUgdGVuZXIgZmVjaGEgeSBob3JhLCBlaiBcIjIwMDAtMDMtMTRUMDE6NTlcIiBvIFwiMjAwMC0wMy0xNFQwMTo1OToyNi41MzVaXCInO1xyXG4gICAgICBjYXNlICdlbWFpbCc6XHJcbiAgICAgICAgcmV0dXJuICdObyBoYXkgZGlyZWNjacOzbiBkZSBjb3JyZW8gZWxlY3Ryw7NuaWNvIHbDoWxpZGEsIGVqIFwibmFtZUBleGFtcGxlLmNvbVwiJztcclxuICAgICAgY2FzZSAnaG9zdG5hbWUnOlxyXG4gICAgICAgIHJldHVybiAnRGViZSBzZXIgdW4gbm9tYnJlIGRlIGhvc3QgdsOhbGlkbywgZWogXCJleGFtcGxlLmNvbVwiJztcclxuICAgICAgY2FzZSAnaXB2NCc6XHJcbiAgICAgICAgcmV0dXJuICdEZWJlIHNlciB1bmEgZGlyZWNjacOzbiBkZSBJUHY0LCBlaiBcIjEyNy4wLjAuMVwiJztcclxuICAgICAgY2FzZSAnaXB2Nic6XHJcbiAgICAgICAgcmV0dXJuICdEZWJlIHNlciB1bmEgZGlyZWNjacOzbiBkZSBJUHY2LCBlaiBcIjEyMzQ6NTY3ODo5QUJDOkRFRjA6MTIzNDo1Njc4OjlBQkM6REVGMFwiJztcclxuICAgICAgY2FzZSAndXJsJzpcclxuICAgICAgICByZXR1cm4gJ0RlYmUgc2VyIHVuYSBVUkwsIGVqIFwiaHR0cDovL3d3dy5leGFtcGxlLmNvbS9wYWdlLmh0bWxcIic7XHJcbiAgICAgIGNhc2UgJ3V1aWQnOlxyXG4gICAgICAgIHJldHVybiAnRGViZSBzZXIgdW4gVVVJRCwgZWogXCIxMjM0NTY3OC05QUJDLURFRjAtMTIzNC01Njc4OUFCQ0RFRjBcIic7XHJcbiAgICAgIGNhc2UgJ2NvbG9yJzpcclxuICAgICAgICByZXR1cm4gJ0RlYmUgc2VyIHVuIGNvbG9yLCBlaiBcIiNGRkZGRkZcIiBvciBcInJnYigyNTUsIDI1NSwgMjU1KVwiJztcclxuICAgICAgY2FzZSAnanNvbi1wb2ludGVyJzpcclxuICAgICAgICByZXR1cm4gJ0RlYmUgc2VyIHVuIEpTT04gUG9pbnRlciwgZWogXCIvcG9pbnRlci90by9zb21ldGhpbmdcIic7XHJcbiAgICAgIGNhc2UgJ3JlbGF0aXZlLWpzb24tcG9pbnRlcic6XHJcbiAgICAgICAgcmV0dXJuICdEZWJlIHNlciB1biBKU09OIFBvaW50ZXIgcmVsYXRpdm8sIGVqIFwiMi9wb2ludGVyL3RvL3NvbWV0aGluZ1wiJztcclxuICAgICAgY2FzZSAncmVnZXgnOlxyXG4gICAgICAgIHJldHVybiAnRGViZSBzZXIgdW5hIGV4cHJlc2nDs24gcmVndWxhciwgZWogXCIoMS0pP1xcXFxkezN9LVxcXFxkezN9LVxcXFxkezR9XCInO1xyXG4gICAgICBkZWZhdWx0OlxyXG4gICAgICAgIHJldHVybiAnRGViZSB0ZW5lciBlbCBmb3JtYXRvIGNvcnJlY3RvICcgKyBlcnJvci5yZXF1aXJlZEZvcm1hdDtcclxuICAgIH1cclxuICB9LFxyXG4gIG1pbmltdW06ICdEZWJlIHNlciB7e21pbmltdW1WYWx1ZX19IG8gbcOhcycsXHJcbiAgZXhjbHVzaXZlTWluaW11bTogJ0RlYmUgc2VyIHN1cGVyaW9yIGEge3tleGNsdXNpdmVNaW5pbXVtVmFsdWV9fScsXHJcbiAgbWF4aW11bTogJ0RlYmUgc2VyIHt7bWF4aW11bVZhbHVlfX0gbyBtZW5vcycsXHJcbiAgZXhjbHVzaXZlTWF4aW11bTogJ0RlYmUgc2VyIG1lbm9yIHF1ZSB7e2V4Y2x1c2l2ZU1heGltdW1WYWx1ZX19JyxcclxuICBtdWx0aXBsZU9mOiBmdW5jdGlvbiAoZXJyb3IpIHtcclxuICAgIGlmICgoMSAvIGVycm9yLm11bHRpcGxlT2ZWYWx1ZSkgJSAxMCA9PT0gMCkge1xyXG4gICAgICBjb25zdCBkZWNpbWFscyA9IE1hdGgubG9nMTAoMSAvIGVycm9yLm11bHRpcGxlT2ZWYWx1ZSk7XHJcbiAgICAgIHJldHVybiBgU2UgcGVybWl0ZSB1biBtw6F4aW1vIGRlICR7ZGVjaW1hbHN9IGRlY2ltYWxlc2A7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICByZXR1cm4gYERlYmUgc2VyIG3Dumx0aXBsbyBkZSAke2Vycm9yLm11bHRpcGxlT2ZWYWx1ZX0uYDtcclxuICAgIH1cclxuICB9LFxyXG4gIG1pblByb3BlcnRpZXM6ICdEZWJlIHRlbmVyIHt7bWluaW11bVByb3BlcnRpZXN9fSBvIG3DoXMgZWxlbWVudG9zIChlbGVtZW50b3MgYWN0dWFsZXM6IHt7Y3VycmVudFByb3BlcnRpZXN9fSknLFxyXG4gIG1heFByb3BlcnRpZXM6ICdEZWJlIHRlbmVyIHt7bWF4aW11bVByb3BlcnRpZXN9fSBvIG1lbm9zIGVsZW1lbnRvcyAoZWxlbWVudG9zIGFjdHVhbGVzOiB7e2N1cnJlbnRQcm9wZXJ0aWVzfX0pJyxcclxuICBtaW5JdGVtczogJ0RlYmUgdGVuZXIge3ttaW5pbXVtSXRlbXN9fSBvIG3DoXMgZWxlbWVudG9zIChlbGVtZW50b3MgYWN0dWFsZXM6IHt7Y3VycmVudEl0ZW1zfX0pJyxcclxuICBtYXhJdGVtczogJ0RlYmUgdGVuZXIge3ttYXhpbXVtSXRlbXN9fSBvIG1lbm9zIGVsZW1lbnRvcyAoZWxlbWVudG9zIGFjdHVhbGVzOiB7e2N1cnJlbnRJdGVtc319KScsXHJcbiAgdW5pcXVlSXRlbXM6ICdUb2RvcyBsb3MgZWxlbWVudG9zIGRlYmVuIHNlciDDum5pY29zJyxcclxufTtcclxuIl19
@@ -1,60 +1,60 @@
1
- export const frValidationMessages = {
2
- required: 'Est obligatoire.',
3
- minLength: 'Doit avoir minimum {{minimumLength}} caractères (actuellement: {{currentLength}})',
4
- maxLength: 'Doit avoir maximum {{maximumLength}} caractères (actuellement: {{currentLength}})',
5
- pattern: 'Doit respecter: {{requiredPattern}}',
6
- format: function (error) {
7
- switch (error.requiredFormat) {
8
- case 'date':
9
- return 'Doit être une date, tel que "2000-12-31"';
10
- case 'time':
11
- return 'Doit être une heure, tel que "16:20" ou "03:14:15.9265"';
12
- case 'date-time':
13
- return 'Doit être une date et une heure, tel que "2000-03-14T01:59" ou "2000-03-14T01:59:26.535Z"';
14
- case 'email':
15
- return 'Doit être une adresse e-mail, tel que "name@example.com"';
16
- case 'hostname':
17
- return 'Doit être un nom de domaine, tel que "example.com"';
18
- case 'ipv4':
19
- return 'Doit être une adresse IPv4, tel que "127.0.0.1"';
20
- case 'ipv6':
21
- return 'Doit être une adresse IPv6, tel que "1234:5678:9ABC:DEF0:1234:5678:9ABC:DEF0"';
22
- // TODO: add examples for 'uri', 'uri-reference', and 'uri-template'
23
- // case 'uri': case 'uri-reference': case 'uri-template':
24
- case 'url':
25
- return 'Doit être une URL, tel que "http://www.example.com/page.html"';
26
- case 'uuid':
27
- return 'Doit être un UUID, tel que "12345678-9ABC-DEF0-1234-56789ABCDEF0"';
28
- case 'color':
29
- return 'Doit être une couleur, tel que "#FFFFFF" or "rgb(255, 255, 255)"';
30
- case 'json-pointer':
31
- return 'Doit être un JSON Pointer, tel que "/pointer/to/something"';
32
- case 'relative-json-pointer':
33
- return 'Doit être un relative JSON Pointer, tel que "2/pointer/to/something"';
34
- case 'regex':
35
- return 'Doit être une expression régulière, tel que "(1-)?\\d{3}-\\d{3}-\\d{4}"';
36
- default:
37
- return 'Doit être avoir le format correct: ' + error.requiredFormat;
38
- }
39
- },
40
- minimum: 'Doit être supérieur à {{minimumValue}}',
41
- exclusiveMinimum: 'Doit avoir minimum {{exclusiveMinimumValue}} charactères',
42
- maximum: 'Doit être inférieur à {{maximumValue}}',
43
- exclusiveMaximum: 'Doit avoir maximum {{exclusiveMaximumValue}} charactères',
44
- multipleOf: function (error) {
45
- if ((1 / error.multipleOfValue) % 10 === 0) {
46
- const decimals = Math.log10(1 / error.multipleOfValue);
47
- return `Doit comporter ${decimals} ou moins de decimales.`;
48
- }
49
- else {
50
- return `Doit être un multiple de ${error.multipleOfValue}.`;
51
- }
52
- },
53
- minProperties: 'Doit comporter au minimum {{minimumProperties}} éléments',
54
- maxProperties: 'Doit comporter au maximum {{maximumProperties}} éléments',
55
- minItems: 'Doit comporter au minimum {{minimumItems}} éléments',
56
- maxItems: 'Doit comporter au maximum {{minimumItems}} éléments',
57
- uniqueItems: 'Tous les éléments doivent être uniques',
58
- // Note: No default error messages for 'type', 'const', 'enum', or 'dependencies'
59
- };
1
+ export const frValidationMessages = {
2
+ required: 'Est obligatoire.',
3
+ minLength: 'Doit avoir minimum {{minimumLength}} caractères (actuellement: {{currentLength}})',
4
+ maxLength: 'Doit avoir maximum {{maximumLength}} caractères (actuellement: {{currentLength}})',
5
+ pattern: 'Doit respecter: {{requiredPattern}}',
6
+ format: function (error) {
7
+ switch (error.requiredFormat) {
8
+ case 'date':
9
+ return 'Doit être une date, tel que "2000-12-31"';
10
+ case 'time':
11
+ return 'Doit être une heure, tel que "16:20" ou "03:14:15.9265"';
12
+ case 'date-time':
13
+ return 'Doit être une date et une heure, tel que "2000-03-14T01:59" ou "2000-03-14T01:59:26.535Z"';
14
+ case 'email':
15
+ return 'Doit être une adresse e-mail, tel que "name@example.com"';
16
+ case 'hostname':
17
+ return 'Doit être un nom de domaine, tel que "example.com"';
18
+ case 'ipv4':
19
+ return 'Doit être une adresse IPv4, tel que "127.0.0.1"';
20
+ case 'ipv6':
21
+ return 'Doit être une adresse IPv6, tel que "1234:5678:9ABC:DEF0:1234:5678:9ABC:DEF0"';
22
+ // TODO: add examples for 'uri', 'uri-reference', and 'uri-template'
23
+ // case 'uri': case 'uri-reference': case 'uri-template':
24
+ case 'url':
25
+ return 'Doit être une URL, tel que "http://www.example.com/page.html"';
26
+ case 'uuid':
27
+ return 'Doit être un UUID, tel que "12345678-9ABC-DEF0-1234-56789ABCDEF0"';
28
+ case 'color':
29
+ return 'Doit être une couleur, tel que "#FFFFFF" or "rgb(255, 255, 255)"';
30
+ case 'json-pointer':
31
+ return 'Doit être un JSON Pointer, tel que "/pointer/to/something"';
32
+ case 'relative-json-pointer':
33
+ return 'Doit être un relative JSON Pointer, tel que "2/pointer/to/something"';
34
+ case 'regex':
35
+ return 'Doit être une expression régulière, tel que "(1-)?\\d{3}-\\d{3}-\\d{4}"';
36
+ default:
37
+ return 'Doit être avoir le format correct: ' + error.requiredFormat;
38
+ }
39
+ },
40
+ minimum: 'Doit être supérieur à {{minimumValue}}',
41
+ exclusiveMinimum: 'Doit avoir minimum {{exclusiveMinimumValue}} charactères',
42
+ maximum: 'Doit être inférieur à {{maximumValue}}',
43
+ exclusiveMaximum: 'Doit avoir maximum {{exclusiveMaximumValue}} charactères',
44
+ multipleOf: function (error) {
45
+ if ((1 / error.multipleOfValue) % 10 === 0) {
46
+ const decimals = Math.log10(1 / error.multipleOfValue);
47
+ return `Doit comporter ${decimals} ou moins de decimales.`;
48
+ }
49
+ else {
50
+ return `Doit être un multiple de ${error.multipleOfValue}.`;
51
+ }
52
+ },
53
+ minProperties: 'Doit comporter au minimum {{minimumProperties}} éléments',
54
+ maxProperties: 'Doit comporter au maximum {{maximumProperties}} éléments',
55
+ minItems: 'Doit comporter au minimum {{minimumItems}} éléments',
56
+ maxItems: 'Doit comporter au maximum {{minimumItems}} éléments',
57
+ uniqueItems: 'Tous les éléments doivent être uniques',
58
+ // Note: No default error messages for 'type', 'const', 'enum', or 'dependencies'
59
+ };
60
60
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnItdmFsaWRhdGlvbi1tZXNzYWdlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLWZvcm13b3Jrcy1jb3JlL3NyYy9saWIvbG9jYWxlL2ZyLXZhbGlkYXRpb24tbWVzc2FnZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFDLE1BQU0sb0JBQW9CLEdBQVE7SUFDdkMsUUFBUSxFQUFFLGtCQUFrQjtJQUM1QixTQUFTLEVBQUUsbUZBQW1GO0lBQzlGLFNBQVMsRUFBRSxtRkFBbUY7SUFDOUYsT0FBTyxFQUFFLHFDQUFxQztJQUM5QyxNQUFNLEVBQUUsVUFBVSxLQUFLO1FBQ3JCLFFBQVEsS0FBSyxDQUFDLGNBQWMsRUFBRTtZQUM1QixLQUFLLE1BQU07Z0JBQ1QsT0FBTywwQ0FBMEMsQ0FBQztZQUNwRCxLQUFLLE1BQU07Z0JBQ1QsT0FBTyx5REFBeUQsQ0FBQztZQUNuRSxLQUFLLFdBQVc7Z0JBQ2QsT0FBTywyRkFBMkYsQ0FBQztZQUNyRyxLQUFLLE9BQU87Z0JBQ1YsT0FBTywwREFBMEQsQ0FBQztZQUNwRSxLQUFLLFVBQVU7Z0JBQ2IsT0FBTyxvREFBb0QsQ0FBQztZQUM5RCxLQUFLLE1BQU07Z0JBQ1QsT0FBTyxpREFBaUQsQ0FBQztZQUMzRCxLQUFLLE1BQU07Z0JBQ1QsT0FBTywrRUFBK0UsQ0FBQztZQUN6RixvRUFBb0U7WUFDcEUseURBQXlEO1lBQ3pELEtBQUssS0FBSztnQkFDUixPQUFPLCtEQUErRCxDQUFDO1lBQ3pFLEtBQUssTUFBTTtnQkFDVCxPQUFPLG1FQUFtRSxDQUFDO1lBQzdFLEtBQUssT0FBTztnQkFDVixPQUFPLGtFQUFrRSxDQUFDO1lBQzVFLEtBQUssY0FBYztnQkFDakIsT0FBTyw0REFBNEQsQ0FBQztZQUN0RSxLQUFLLHVCQUF1QjtnQkFDMUIsT0FBTyxzRUFBc0UsQ0FBQztZQUNoRixLQUFLLE9BQU87Z0JBQ1YsT0FBTyx5RUFBeUUsQ0FBQztZQUNuRjtnQkFDRSxPQUFPLHFDQUFxQyxHQUFHLEtBQUssQ0FBQyxjQUFjLENBQUM7U0FDdkU7SUFDSCxDQUFDO0lBQ0QsT0FBTyxFQUFFLHdDQUF3QztJQUNqRCxnQkFBZ0IsRUFBRSwwREFBMEQ7SUFDNUUsT0FBTyxFQUFFLHdDQUF3QztJQUNqRCxnQkFBZ0IsRUFBRSwwREFBMEQ7SUFDNUUsVUFBVSxFQUFFLFVBQVUsS0FBSztRQUN6QixJQUFJLENBQUMsQ0FBQyxHQUFHLEtBQUssQ0FBQyxlQUFlLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxFQUFFO1lBQzFDLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxHQUFHLEtBQUssQ0FBQyxlQUFlLENBQUMsQ0FBQztZQUN2RCxPQUFPLGtCQUFrQixRQUFRLHlCQUF5QixDQUFDO1NBQzVEO2FBQU07WUFDTCxPQUFPLDRCQUE0QixLQUFLLENBQUMsZUFBZSxHQUFHLENBQUM7U0FDN0Q7SUFDSCxDQUFDO0lBQ0QsYUFBYSxFQUFFLDBEQUEwRDtJQUN6RSxhQUFhLEVBQUUsMERBQTBEO0lBQ3pFLFFBQVEsRUFBRSxxREFBcUQ7SUFDL0QsUUFBUSxFQUFFLHFEQUFxRDtJQUMvRCxXQUFXLEVBQUUsd0NBQXdDO0lBQ3JELGlGQUFpRjtDQUNsRixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IGZyVmFsaWRhdGlvbk1lc3NhZ2VzOiBhbnkgPSB7IC8vIEZyZW5jaCBlcnJvciBtZXNzYWdlc1xyXG4gIHJlcXVpcmVkOiAnRXN0IG9ibGlnYXRvaXJlLicsXHJcbiAgbWluTGVuZ3RoOiAnRG9pdCBhdm9pciBtaW5pbXVtIHt7bWluaW11bUxlbmd0aH19IGNhcmFjdMOocmVzIChhY3R1ZWxsZW1lbnQ6IHt7Y3VycmVudExlbmd0aH19KScsXHJcbiAgbWF4TGVuZ3RoOiAnRG9pdCBhdm9pciBtYXhpbXVtIHt7bWF4aW11bUxlbmd0aH19IGNhcmFjdMOocmVzIChhY3R1ZWxsZW1lbnQ6IHt7Y3VycmVudExlbmd0aH19KScsXHJcbiAgcGF0dGVybjogJ0RvaXQgcmVzcGVjdGVyOiB7e3JlcXVpcmVkUGF0dGVybn19JyxcclxuICBmb3JtYXQ6IGZ1bmN0aW9uIChlcnJvcikge1xyXG4gICAgc3dpdGNoIChlcnJvci5yZXF1aXJlZEZvcm1hdCkge1xyXG4gICAgICBjYXNlICdkYXRlJzpcclxuICAgICAgICByZXR1cm4gJ0RvaXQgw6p0cmUgdW5lIGRhdGUsIHRlbCBxdWUgXCIyMDAwLTEyLTMxXCInO1xyXG4gICAgICBjYXNlICd0aW1lJzpcclxuICAgICAgICByZXR1cm4gJ0RvaXQgw6p0cmUgdW5lIGhldXJlLCB0ZWwgcXVlIFwiMTY6MjBcIiBvdSBcIjAzOjE0OjE1LjkyNjVcIic7XHJcbiAgICAgIGNhc2UgJ2RhdGUtdGltZSc6XHJcbiAgICAgICAgcmV0dXJuICdEb2l0IMOqdHJlIHVuZSBkYXRlIGV0IHVuZSBoZXVyZSwgdGVsIHF1ZSBcIjIwMDAtMDMtMTRUMDE6NTlcIiBvdSBcIjIwMDAtMDMtMTRUMDE6NTk6MjYuNTM1WlwiJztcclxuICAgICAgY2FzZSAnZW1haWwnOlxyXG4gICAgICAgIHJldHVybiAnRG9pdCDDqnRyZSB1bmUgYWRyZXNzZSBlLW1haWwsIHRlbCBxdWUgXCJuYW1lQGV4YW1wbGUuY29tXCInO1xyXG4gICAgICBjYXNlICdob3N0bmFtZSc6XHJcbiAgICAgICAgcmV0dXJuICdEb2l0IMOqdHJlIHVuIG5vbSBkZSBkb21haW5lLCB0ZWwgcXVlIFwiZXhhbXBsZS5jb21cIic7XHJcbiAgICAgIGNhc2UgJ2lwdjQnOlxyXG4gICAgICAgIHJldHVybiAnRG9pdCDDqnRyZSB1bmUgYWRyZXNzZSBJUHY0LCB0ZWwgcXVlIFwiMTI3LjAuMC4xXCInO1xyXG4gICAgICBjYXNlICdpcHY2JzpcclxuICAgICAgICByZXR1cm4gJ0RvaXQgw6p0cmUgdW5lIGFkcmVzc2UgSVB2NiwgdGVsIHF1ZSBcIjEyMzQ6NTY3ODo5QUJDOkRFRjA6MTIzNDo1Njc4OjlBQkM6REVGMFwiJztcclxuICAgICAgLy8gVE9ETzogYWRkIGV4YW1wbGVzIGZvciAndXJpJywgJ3VyaS1yZWZlcmVuY2UnLCBhbmQgJ3VyaS10ZW1wbGF0ZSdcclxuICAgICAgLy8gY2FzZSAndXJpJzogY2FzZSAndXJpLXJlZmVyZW5jZSc6IGNhc2UgJ3VyaS10ZW1wbGF0ZSc6XHJcbiAgICAgIGNhc2UgJ3VybCc6XHJcbiAgICAgICAgcmV0dXJuICdEb2l0IMOqdHJlIHVuZSBVUkwsIHRlbCBxdWUgXCJodHRwOi8vd3d3LmV4YW1wbGUuY29tL3BhZ2UuaHRtbFwiJztcclxuICAgICAgY2FzZSAndXVpZCc6XHJcbiAgICAgICAgcmV0dXJuICdEb2l0IMOqdHJlIHVuIFVVSUQsIHRlbCBxdWUgXCIxMjM0NTY3OC05QUJDLURFRjAtMTIzNC01Njc4OUFCQ0RFRjBcIic7XHJcbiAgICAgIGNhc2UgJ2NvbG9yJzpcclxuICAgICAgICByZXR1cm4gJ0RvaXQgw6p0cmUgdW5lIGNvdWxldXIsIHRlbCBxdWUgXCIjRkZGRkZGXCIgb3IgXCJyZ2IoMjU1LCAyNTUsIDI1NSlcIic7XHJcbiAgICAgIGNhc2UgJ2pzb24tcG9pbnRlcic6XHJcbiAgICAgICAgcmV0dXJuICdEb2l0IMOqdHJlIHVuIEpTT04gUG9pbnRlciwgdGVsIHF1ZSBcIi9wb2ludGVyL3RvL3NvbWV0aGluZ1wiJztcclxuICAgICAgY2FzZSAncmVsYXRpdmUtanNvbi1wb2ludGVyJzpcclxuICAgICAgICByZXR1cm4gJ0RvaXQgw6p0cmUgdW4gcmVsYXRpdmUgSlNPTiBQb2ludGVyLCB0ZWwgcXVlIFwiMi9wb2ludGVyL3RvL3NvbWV0aGluZ1wiJztcclxuICAgICAgY2FzZSAncmVnZXgnOlxyXG4gICAgICAgIHJldHVybiAnRG9pdCDDqnRyZSB1bmUgZXhwcmVzc2lvbiByw6lndWxpw6hyZSwgdGVsIHF1ZSBcIigxLSk/XFxcXGR7M30tXFxcXGR7M30tXFxcXGR7NH1cIic7XHJcbiAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgcmV0dXJuICdEb2l0IMOqdHJlIGF2b2lyIGxlIGZvcm1hdCBjb3JyZWN0OiAnICsgZXJyb3IucmVxdWlyZWRGb3JtYXQ7XHJcbiAgICB9XHJcbiAgfSxcclxuICBtaW5pbXVtOiAnRG9pdCDDqnRyZSBzdXDDqXJpZXVyIMOgIHt7bWluaW11bVZhbHVlfX0nLFxyXG4gIGV4Y2x1c2l2ZU1pbmltdW06ICdEb2l0IGF2b2lyIG1pbmltdW0ge3tleGNsdXNpdmVNaW5pbXVtVmFsdWV9fSBjaGFyYWN0w6hyZXMnLFxyXG4gIG1heGltdW06ICdEb2l0IMOqdHJlIGluZsOpcmlldXIgw6Age3ttYXhpbXVtVmFsdWV9fScsXHJcbiAgZXhjbHVzaXZlTWF4aW11bTogJ0RvaXQgYXZvaXIgbWF4aW11bSB7e2V4Y2x1c2l2ZU1heGltdW1WYWx1ZX19IGNoYXJhY3TDqHJlcycsXHJcbiAgbXVsdGlwbGVPZjogZnVuY3Rpb24gKGVycm9yKSB7XHJcbiAgICBpZiAoKDEgLyBlcnJvci5tdWx0aXBsZU9mVmFsdWUpICUgMTAgPT09IDApIHtcclxuICAgICAgY29uc3QgZGVjaW1hbHMgPSBNYXRoLmxvZzEwKDEgLyBlcnJvci5tdWx0aXBsZU9mVmFsdWUpO1xyXG4gICAgICByZXR1cm4gYERvaXQgY29tcG9ydGVyICR7ZGVjaW1hbHN9IG91IG1vaW5zIGRlIGRlY2ltYWxlcy5gO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmV0dXJuIGBEb2l0IMOqdHJlIHVuIG11bHRpcGxlIGRlICR7ZXJyb3IubXVsdGlwbGVPZlZhbHVlfS5gO1xyXG4gICAgfVxyXG4gIH0sXHJcbiAgbWluUHJvcGVydGllczogJ0RvaXQgY29tcG9ydGVyIGF1IG1pbmltdW0ge3ttaW5pbXVtUHJvcGVydGllc319IMOpbMOpbWVudHMnLFxyXG4gIG1heFByb3BlcnRpZXM6ICdEb2l0IGNvbXBvcnRlciBhdSBtYXhpbXVtIHt7bWF4aW11bVByb3BlcnRpZXN9fSDDqWzDqW1lbnRzJyxcclxuICBtaW5JdGVtczogJ0RvaXQgY29tcG9ydGVyIGF1IG1pbmltdW0ge3ttaW5pbXVtSXRlbXN9fSDDqWzDqW1lbnRzJyxcclxuICBtYXhJdGVtczogJ0RvaXQgY29tcG9ydGVyIGF1IG1heGltdW0ge3ttaW5pbXVtSXRlbXN9fSDDqWzDqW1lbnRzJyxcclxuICB1bmlxdWVJdGVtczogJ1RvdXMgbGVzIMOpbMOpbWVudHMgZG9pdmVudCDDqnRyZSB1bmlxdWVzJyxcclxuICAvLyBOb3RlOiBObyBkZWZhdWx0IGVycm9yIG1lc3NhZ2VzIGZvciAndHlwZScsICdjb25zdCcsICdlbnVtJywgb3IgJ2RlcGVuZGVuY2llcydcclxufTtcclxuIl19
@@ -1,8 +1,8 @@
1
- export { deValidationMessages } from './de-validation-messages';
2
- export { enValidationMessages } from './en-validation-messages';
3
- export { esValidationMessages } from './es-validation-messages';
4
- export { frValidationMessages } from './fr-validation-messages';
5
- export { itValidationMessages } from './it-validation-messages';
6
- export { ptValidationMessages } from './pt-validation-messages';
7
- export { zhValidationMessages } from './zh-validation-messages';
1
+ export { deValidationMessages } from './de-validation-messages';
2
+ export { enValidationMessages } from './en-validation-messages';
3
+ export { esValidationMessages } from './es-validation-messages';
4
+ export { frValidationMessages } from './fr-validation-messages';
5
+ export { itValidationMessages } from './it-validation-messages';
6
+ export { ptValidationMessages } from './pt-validation-messages';
7
+ export { zhValidationMessages } from './zh-validation-messages';
8
8
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1mb3Jtd29ya3MtY29yZS9zcmMvbGliL2xvY2FsZS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB7IGRlVmFsaWRhdGlvbk1lc3NhZ2VzIH0gZnJvbSAnLi9kZS12YWxpZGF0aW9uLW1lc3NhZ2VzJztcclxuZXhwb3J0IHsgZW5WYWxpZGF0aW9uTWVzc2FnZXMgfSBmcm9tICcuL2VuLXZhbGlkYXRpb24tbWVzc2FnZXMnO1xyXG5leHBvcnQgeyBlc1ZhbGlkYXRpb25NZXNzYWdlcyB9IGZyb20gJy4vZXMtdmFsaWRhdGlvbi1tZXNzYWdlcyc7XHJcbmV4cG9ydCB7IGZyVmFsaWRhdGlvbk1lc3NhZ2VzIH0gZnJvbSAnLi9mci12YWxpZGF0aW9uLW1lc3NhZ2VzJztcclxuZXhwb3J0IHsgaXRWYWxpZGF0aW9uTWVzc2FnZXMgfSBmcm9tICcuL2l0LXZhbGlkYXRpb24tbWVzc2FnZXMnO1xyXG5leHBvcnQgeyBwdFZhbGlkYXRpb25NZXNzYWdlcyB9IGZyb20gJy4vcHQtdmFsaWRhdGlvbi1tZXNzYWdlcyc7XHJcbmV4cG9ydCB7IHpoVmFsaWRhdGlvbk1lc3NhZ2VzIH0gZnJvbSAnLi96aC12YWxpZGF0aW9uLW1lc3NhZ2VzJztcclxuIl19