flavor-code 1.3.23 → 1.4.0-beta.1
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.
- package/README.md +437 -434
- package/README.zh-CN.md +434 -431
- package/dist/{app-NTEUPJKJ.js → app-C5ZQUOKJ.js} +43 -155
- package/dist/astgraph/grammars.mjs +68 -68
- package/dist/astgraph/vendor/tree-sitter.js +3980 -3980
- package/dist/astgraph/vendor/zod/LICENSE +21 -21
- package/dist/astgraph/vendor/zod/index.js +4 -4
- package/dist/astgraph/vendor/zod/locales/index.js +1 -1
- package/dist/astgraph/vendor/zod/locales/package.json +7 -7
- package/dist/astgraph/vendor/zod/package.json +135 -135
- package/dist/astgraph/vendor/zod/v4/classic/checks.js +1 -1
- package/dist/astgraph/vendor/zod/v4/classic/coerce.js +17 -17
- package/dist/astgraph/vendor/zod/v4/classic/compat.js +31 -31
- package/dist/astgraph/vendor/zod/v4/classic/errors.js +48 -48
- package/dist/astgraph/vendor/zod/v4/classic/external.js +20 -20
- package/dist/astgraph/vendor/zod/v4/classic/from-json-schema.js +599 -599
- package/dist/astgraph/vendor/zod/v4/classic/index.js +4 -4
- package/dist/astgraph/vendor/zod/v4/classic/iso.js +30 -30
- package/dist/astgraph/vendor/zod/v4/classic/package.json +7 -7
- package/dist/astgraph/vendor/zod/v4/classic/parse.js +15 -15
- package/dist/astgraph/vendor/zod/v4/classic/schemas.js +1395 -1395
- package/dist/astgraph/vendor/zod/v4/core/api.js +1087 -1087
- package/dist/astgraph/vendor/zod/v4/core/checks.js +575 -575
- package/dist/astgraph/vendor/zod/v4/core/core.js +78 -78
- package/dist/astgraph/vendor/zod/v4/core/doc.js +35 -35
- package/dist/astgraph/vendor/zod/v4/core/errors.js +185 -185
- package/dist/astgraph/vendor/zod/v4/core/index.js +16 -16
- package/dist/astgraph/vendor/zod/v4/core/json-schema-generator.js +95 -95
- package/dist/astgraph/vendor/zod/v4/core/json-schema-processors.js +601 -601
- package/dist/astgraph/vendor/zod/v4/core/json-schema.js +1 -1
- package/dist/astgraph/vendor/zod/v4/core/package.json +7 -7
- package/dist/astgraph/vendor/zod/v4/core/parse.js +93 -93
- package/dist/astgraph/vendor/zod/v4/core/regexes.js +139 -139
- package/dist/astgraph/vendor/zod/v4/core/registries.js +51 -51
- package/dist/astgraph/vendor/zod/v4/core/schemas.js +2239 -2239
- package/dist/astgraph/vendor/zod/v4/core/standard-schema.js +1 -1
- package/dist/astgraph/vendor/zod/v4/core/to-json-schema.js +448 -448
- package/dist/astgraph/vendor/zod/v4/core/util.js +674 -674
- package/dist/astgraph/vendor/zod/v4/core/versions.js +5 -5
- package/dist/astgraph/vendor/zod/v4/index.js +3 -3
- package/dist/astgraph/vendor/zod/v4/locales/ar.js +106 -106
- package/dist/astgraph/vendor/zod/v4/locales/az.js +105 -105
- package/dist/astgraph/vendor/zod/v4/locales/be.js +156 -156
- package/dist/astgraph/vendor/zod/v4/locales/bg.js +120 -120
- package/dist/astgraph/vendor/zod/v4/locales/ca.js +107 -107
- package/dist/astgraph/vendor/zod/v4/locales/cs.js +111 -111
- package/dist/astgraph/vendor/zod/v4/locales/da.js +115 -115
- package/dist/astgraph/vendor/zod/v4/locales/de.js +108 -108
- package/dist/astgraph/vendor/zod/v4/locales/el.js +109 -109
- package/dist/astgraph/vendor/zod/v4/locales/en.js +113 -113
- package/dist/astgraph/vendor/zod/v4/locales/eo.js +109 -109
- package/dist/astgraph/vendor/zod/v4/locales/es.js +132 -132
- package/dist/astgraph/vendor/zod/v4/locales/fa.js +114 -114
- package/dist/astgraph/vendor/zod/v4/locales/fi.js +112 -112
- package/dist/astgraph/vendor/zod/v4/locales/fr-CA.js +107 -107
- package/dist/astgraph/vendor/zod/v4/locales/fr.js +125 -125
- package/dist/astgraph/vendor/zod/v4/locales/he.js +214 -214
- package/dist/astgraph/vendor/zod/v4/locales/hr.js +122 -122
- package/dist/astgraph/vendor/zod/v4/locales/hu.js +108 -108
- package/dist/astgraph/vendor/zod/v4/locales/hy.js +147 -147
- package/dist/astgraph/vendor/zod/v4/locales/id.js +106 -106
- package/dist/astgraph/vendor/zod/v4/locales/index.js +52 -52
- package/dist/astgraph/vendor/zod/v4/locales/is.js +109 -109
- package/dist/astgraph/vendor/zod/v4/locales/it.js +108 -108
- package/dist/astgraph/vendor/zod/v4/locales/ja.js +107 -107
- package/dist/astgraph/vendor/zod/v4/locales/ka.js +112 -112
- package/dist/astgraph/vendor/zod/v4/locales/kh.js +5 -5
- package/dist/astgraph/vendor/zod/v4/locales/km.js +110 -110
- package/dist/astgraph/vendor/zod/v4/locales/ko.js +111 -111
- package/dist/astgraph/vendor/zod/v4/locales/lt.js +203 -203
- package/dist/astgraph/vendor/zod/v4/locales/mk.js +109 -109
- package/dist/astgraph/vendor/zod/v4/locales/ms.js +107 -107
- package/dist/astgraph/vendor/zod/v4/locales/nl.js +110 -110
- package/dist/astgraph/vendor/zod/v4/locales/no.js +108 -108
- package/dist/astgraph/vendor/zod/v4/locales/ota.js +109 -109
- package/dist/astgraph/vendor/zod/v4/locales/package.json +7 -7
- package/dist/astgraph/vendor/zod/v4/locales/pl.js +109 -109
- package/dist/astgraph/vendor/zod/v4/locales/ps.js +114 -114
- package/dist/astgraph/vendor/zod/v4/locales/pt.js +108 -108
- package/dist/astgraph/vendor/zod/v4/locales/ro.js +119 -119
- package/dist/astgraph/vendor/zod/v4/locales/ru.js +156 -156
- package/dist/astgraph/vendor/zod/v4/locales/sl.js +109 -109
- package/dist/astgraph/vendor/zod/v4/locales/sv.js +110 -110
- package/dist/astgraph/vendor/zod/v4/locales/ta.js +110 -110
- package/dist/astgraph/vendor/zod/v4/locales/th.js +110 -110
- package/dist/astgraph/vendor/zod/v4/locales/tr.js +105 -105
- package/dist/astgraph/vendor/zod/v4/locales/ua.js +5 -5
- package/dist/astgraph/vendor/zod/v4/locales/uk.js +108 -108
- package/dist/astgraph/vendor/zod/v4/locales/ur.js +110 -110
- package/dist/astgraph/vendor/zod/v4/locales/uz.js +110 -110
- package/dist/astgraph/vendor/zod/v4/locales/vi.js +108 -108
- package/dist/astgraph/vendor/zod/v4/locales/yo.js +107 -107
- package/dist/astgraph/vendor/zod/v4/locales/zh-CN.js +109 -109
- package/dist/astgraph/vendor/zod/v4/locales/zh-TW.js +107 -107
- package/dist/astgraph/vendor/zod/v4/mini/checks.js +1 -1
- package/dist/astgraph/vendor/zod/v4/mini/coerce.js +22 -22
- package/dist/astgraph/vendor/zod/v4/mini/external.js +14 -14
- package/dist/astgraph/vendor/zod/v4/mini/index.js +3 -3
- package/dist/astgraph/vendor/zod/v4/mini/iso.js +34 -34
- package/dist/astgraph/vendor/zod/v4/mini/package.json +7 -7
- package/dist/astgraph/vendor/zod/v4/mini/parse.js +1 -1
- package/dist/astgraph/vendor/zod/v4/mini/schemas.js +961 -961
- package/dist/astgraph/vendor/zod/v4/package.json +7 -7
- package/dist/{chunk-7OICVL2M.js → chunk-2BF7CVWZ.js} +0 -42
- package/dist/{chunk-RQTYHUMK.js → chunk-3WCDZ6ZL.js} +15 -0
- package/dist/{chunk-Z62P4LL7.js → chunk-6MNOZ2TX.js} +8962 -8422
- package/dist/{chunk-VEUSROUQ.js → chunk-FOTMP4ZS.js} +1 -1
- package/dist/{chunk-SUSLIHXO.js → chunk-ODRWR4KK.js} +1 -1
- package/dist/{chunk-RPFWB45Y.js → chunk-URUVFECH.js} +1 -1
- package/dist/{claude-ink-6CEG2XZZ.js → claude-ink-LP32NSX5.js} +2 -3
- package/dist/cli-main.js +27 -11
- package/dist/config/load.d.ts +2 -0
- package/dist/desktop/main.js +1092 -541
- package/dist/desktop-renderer/assets/index-Bk6FYhyh.css +1 -0
- package/dist/desktop-renderer/assets/{index-D75ozXnZ.js → index-CqRIr-hz.js} +3 -3
- package/dist/desktop-renderer/assets/{interactive-terminal-CTFo4fK9.js → interactive-terminal-C4o7MNPO.js} +1 -1
- package/dist/desktop-renderer/index.html +2 -2
- package/dist/doctor.d.ts +38 -0
- package/dist/execution/docker.d.ts +5 -1
- package/dist/execution/types.d.ts +11 -0
- package/dist/jobs/registry.d.ts +1 -0
- package/dist/{load-4FWNXE6F.js → load-V2UIYYQI.js} +1 -1
- package/dist/sdk/index.js +4 -4
- package/dist/tools/shell.d.ts +17 -12
- package/dist/tools/types.d.ts +1 -0
- package/dist/ui/commands.d.ts +1 -1
- package/dist/ui/session.d.ts +1 -0
- package/dist/update/check.d.ts +20 -0
- package/dist/utils/semver.d.ts +3 -0
- package/dist/utils/spawn-executable.d.ts +2 -0
- package/package.json +1 -1
- package//346/212/200/346/234/257/346/226/271/346/241/210/346/212/245/345/221/212.md +5848 -5848
- package/dist/chunk-OTYFL4AG.js +0 -16
- package/dist/desktop-renderer/assets/index-ZZsUx916.css +0 -1
|
@@ -1,107 +1,107 @@
|
|
|
1
|
-
import * as util from "../core/util.js";
|
|
2
|
-
const error = () => {
|
|
3
|
-
const Sizable = {
|
|
4
|
-
string: { unit: "caràcters", verb: "contenir" },
|
|
5
|
-
file: { unit: "bytes", verb: "contenir" },
|
|
6
|
-
array: { unit: "elements", verb: "contenir" },
|
|
7
|
-
set: { unit: "elements", verb: "contenir" },
|
|
8
|
-
};
|
|
9
|
-
function getSizing(origin) {
|
|
10
|
-
return Sizable[origin] ?? null;
|
|
11
|
-
}
|
|
12
|
-
const FormatDictionary = {
|
|
13
|
-
regex: "entrada",
|
|
14
|
-
email: "adreça electrònica",
|
|
15
|
-
url: "URL",
|
|
16
|
-
emoji: "emoji",
|
|
17
|
-
uuid: "UUID",
|
|
18
|
-
uuidv4: "UUIDv4",
|
|
19
|
-
uuidv6: "UUIDv6",
|
|
20
|
-
nanoid: "nanoid",
|
|
21
|
-
guid: "GUID",
|
|
22
|
-
cuid: "cuid",
|
|
23
|
-
cuid2: "cuid2",
|
|
24
|
-
ulid: "ULID",
|
|
25
|
-
xid: "XID",
|
|
26
|
-
ksuid: "KSUID",
|
|
27
|
-
datetime: "data i hora ISO",
|
|
28
|
-
date: "data ISO",
|
|
29
|
-
time: "hora ISO",
|
|
30
|
-
duration: "durada ISO",
|
|
31
|
-
ipv4: "adreça IPv4",
|
|
32
|
-
ipv6: "adreça IPv6",
|
|
33
|
-
cidrv4: "rang IPv4",
|
|
34
|
-
cidrv6: "rang IPv6",
|
|
35
|
-
base64: "cadena codificada en base64",
|
|
36
|
-
base64url: "cadena codificada en base64url",
|
|
37
|
-
json_string: "cadena JSON",
|
|
38
|
-
e164: "número E.164",
|
|
39
|
-
jwt: "JWT",
|
|
40
|
-
template_literal: "entrada",
|
|
41
|
-
};
|
|
42
|
-
const TypeDictionary = {
|
|
43
|
-
nan: "NaN",
|
|
44
|
-
};
|
|
45
|
-
return (issue) => {
|
|
46
|
-
switch (issue.code) {
|
|
47
|
-
case "invalid_type": {
|
|
48
|
-
const expected = TypeDictionary[issue.expected] ?? issue.expected;
|
|
49
|
-
const receivedType = util.parsedType(issue.input);
|
|
50
|
-
const received = TypeDictionary[receivedType] ?? receivedType;
|
|
51
|
-
if (/^[A-Z]/.test(issue.expected)) {
|
|
52
|
-
return `Tipus invàlid: s'esperava instanceof ${issue.expected}, s'ha rebut ${received}`;
|
|
53
|
-
}
|
|
54
|
-
return `Tipus invàlid: s'esperava ${expected}, s'ha rebut ${received}`;
|
|
55
|
-
}
|
|
56
|
-
case "invalid_value":
|
|
57
|
-
if (issue.values.length === 1)
|
|
58
|
-
return `Valor invàlid: s'esperava ${util.stringifyPrimitive(issue.values[0])}`;
|
|
59
|
-
return `Opció invàlida: s'esperava una de ${util.joinValues(issue.values, " o ")}`;
|
|
60
|
-
case "too_big": {
|
|
61
|
-
const adj = issue.inclusive ? "com a màxim" : "menys de";
|
|
62
|
-
const sizing = getSizing(issue.origin);
|
|
63
|
-
if (sizing)
|
|
64
|
-
return `Massa gran: s'esperava que ${issue.origin ?? "el valor"} contingués ${adj} ${issue.maximum.toString()} ${sizing.unit ?? "elements"}`;
|
|
65
|
-
return `Massa gran: s'esperava que ${issue.origin ?? "el valor"} fos ${adj} ${issue.maximum.toString()}`;
|
|
66
|
-
}
|
|
67
|
-
case "too_small": {
|
|
68
|
-
const adj = issue.inclusive ? "com a mínim" : "més de";
|
|
69
|
-
const sizing = getSizing(issue.origin);
|
|
70
|
-
if (sizing) {
|
|
71
|
-
return `Massa petit: s'esperava que ${issue.origin} contingués ${adj} ${issue.minimum.toString()} ${sizing.unit}`;
|
|
72
|
-
}
|
|
73
|
-
return `Massa petit: s'esperava que ${issue.origin} fos ${adj} ${issue.minimum.toString()}`;
|
|
74
|
-
}
|
|
75
|
-
case "invalid_format": {
|
|
76
|
-
const _issue = issue;
|
|
77
|
-
if (_issue.format === "starts_with") {
|
|
78
|
-
return `Format invàlid: ha de començar amb "${_issue.prefix}"`;
|
|
79
|
-
}
|
|
80
|
-
if (_issue.format === "ends_with")
|
|
81
|
-
return `Format invàlid: ha d'acabar amb "${_issue.suffix}"`;
|
|
82
|
-
if (_issue.format === "includes")
|
|
83
|
-
return `Format invàlid: ha d'incloure "${_issue.includes}"`;
|
|
84
|
-
if (_issue.format === "regex")
|
|
85
|
-
return `Format invàlid: ha de coincidir amb el patró ${_issue.pattern}`;
|
|
86
|
-
return `Format invàlid per a ${FormatDictionary[_issue.format] ?? issue.format}`;
|
|
87
|
-
}
|
|
88
|
-
case "not_multiple_of":
|
|
89
|
-
return `Número invàlid: ha de ser múltiple de ${issue.divisor}`;
|
|
90
|
-
case "unrecognized_keys":
|
|
91
|
-
return `Clau${issue.keys.length > 1 ? "s" : ""} no reconeguda${issue.keys.length > 1 ? "s" : ""}: ${util.joinValues(issue.keys, ", ")}`;
|
|
92
|
-
case "invalid_key":
|
|
93
|
-
return `Clau invàlida a ${issue.origin}`;
|
|
94
|
-
case "invalid_union":
|
|
95
|
-
return "Entrada invàlida"; // Could also be "Tipus d'unió invàlid" but "Entrada invàlida" is more general
|
|
96
|
-
case "invalid_element":
|
|
97
|
-
return `Element invàlid a ${issue.origin}`;
|
|
98
|
-
default:
|
|
99
|
-
return `Entrada invàlida`;
|
|
100
|
-
}
|
|
101
|
-
};
|
|
102
|
-
};
|
|
103
|
-
export default function () {
|
|
104
|
-
return {
|
|
105
|
-
localeError: error(),
|
|
106
|
-
};
|
|
107
|
-
}
|
|
1
|
+
import * as util from "../core/util.js";
|
|
2
|
+
const error = () => {
|
|
3
|
+
const Sizable = {
|
|
4
|
+
string: { unit: "caràcters", verb: "contenir" },
|
|
5
|
+
file: { unit: "bytes", verb: "contenir" },
|
|
6
|
+
array: { unit: "elements", verb: "contenir" },
|
|
7
|
+
set: { unit: "elements", verb: "contenir" },
|
|
8
|
+
};
|
|
9
|
+
function getSizing(origin) {
|
|
10
|
+
return Sizable[origin] ?? null;
|
|
11
|
+
}
|
|
12
|
+
const FormatDictionary = {
|
|
13
|
+
regex: "entrada",
|
|
14
|
+
email: "adreça electrònica",
|
|
15
|
+
url: "URL",
|
|
16
|
+
emoji: "emoji",
|
|
17
|
+
uuid: "UUID",
|
|
18
|
+
uuidv4: "UUIDv4",
|
|
19
|
+
uuidv6: "UUIDv6",
|
|
20
|
+
nanoid: "nanoid",
|
|
21
|
+
guid: "GUID",
|
|
22
|
+
cuid: "cuid",
|
|
23
|
+
cuid2: "cuid2",
|
|
24
|
+
ulid: "ULID",
|
|
25
|
+
xid: "XID",
|
|
26
|
+
ksuid: "KSUID",
|
|
27
|
+
datetime: "data i hora ISO",
|
|
28
|
+
date: "data ISO",
|
|
29
|
+
time: "hora ISO",
|
|
30
|
+
duration: "durada ISO",
|
|
31
|
+
ipv4: "adreça IPv4",
|
|
32
|
+
ipv6: "adreça IPv6",
|
|
33
|
+
cidrv4: "rang IPv4",
|
|
34
|
+
cidrv6: "rang IPv6",
|
|
35
|
+
base64: "cadena codificada en base64",
|
|
36
|
+
base64url: "cadena codificada en base64url",
|
|
37
|
+
json_string: "cadena JSON",
|
|
38
|
+
e164: "número E.164",
|
|
39
|
+
jwt: "JWT",
|
|
40
|
+
template_literal: "entrada",
|
|
41
|
+
};
|
|
42
|
+
const TypeDictionary = {
|
|
43
|
+
nan: "NaN",
|
|
44
|
+
};
|
|
45
|
+
return (issue) => {
|
|
46
|
+
switch (issue.code) {
|
|
47
|
+
case "invalid_type": {
|
|
48
|
+
const expected = TypeDictionary[issue.expected] ?? issue.expected;
|
|
49
|
+
const receivedType = util.parsedType(issue.input);
|
|
50
|
+
const received = TypeDictionary[receivedType] ?? receivedType;
|
|
51
|
+
if (/^[A-Z]/.test(issue.expected)) {
|
|
52
|
+
return `Tipus invàlid: s'esperava instanceof ${issue.expected}, s'ha rebut ${received}`;
|
|
53
|
+
}
|
|
54
|
+
return `Tipus invàlid: s'esperava ${expected}, s'ha rebut ${received}`;
|
|
55
|
+
}
|
|
56
|
+
case "invalid_value":
|
|
57
|
+
if (issue.values.length === 1)
|
|
58
|
+
return `Valor invàlid: s'esperava ${util.stringifyPrimitive(issue.values[0])}`;
|
|
59
|
+
return `Opció invàlida: s'esperava una de ${util.joinValues(issue.values, " o ")}`;
|
|
60
|
+
case "too_big": {
|
|
61
|
+
const adj = issue.inclusive ? "com a màxim" : "menys de";
|
|
62
|
+
const sizing = getSizing(issue.origin);
|
|
63
|
+
if (sizing)
|
|
64
|
+
return `Massa gran: s'esperava que ${issue.origin ?? "el valor"} contingués ${adj} ${issue.maximum.toString()} ${sizing.unit ?? "elements"}`;
|
|
65
|
+
return `Massa gran: s'esperava que ${issue.origin ?? "el valor"} fos ${adj} ${issue.maximum.toString()}`;
|
|
66
|
+
}
|
|
67
|
+
case "too_small": {
|
|
68
|
+
const adj = issue.inclusive ? "com a mínim" : "més de";
|
|
69
|
+
const sizing = getSizing(issue.origin);
|
|
70
|
+
if (sizing) {
|
|
71
|
+
return `Massa petit: s'esperava que ${issue.origin} contingués ${adj} ${issue.minimum.toString()} ${sizing.unit}`;
|
|
72
|
+
}
|
|
73
|
+
return `Massa petit: s'esperava que ${issue.origin} fos ${adj} ${issue.minimum.toString()}`;
|
|
74
|
+
}
|
|
75
|
+
case "invalid_format": {
|
|
76
|
+
const _issue = issue;
|
|
77
|
+
if (_issue.format === "starts_with") {
|
|
78
|
+
return `Format invàlid: ha de començar amb "${_issue.prefix}"`;
|
|
79
|
+
}
|
|
80
|
+
if (_issue.format === "ends_with")
|
|
81
|
+
return `Format invàlid: ha d'acabar amb "${_issue.suffix}"`;
|
|
82
|
+
if (_issue.format === "includes")
|
|
83
|
+
return `Format invàlid: ha d'incloure "${_issue.includes}"`;
|
|
84
|
+
if (_issue.format === "regex")
|
|
85
|
+
return `Format invàlid: ha de coincidir amb el patró ${_issue.pattern}`;
|
|
86
|
+
return `Format invàlid per a ${FormatDictionary[_issue.format] ?? issue.format}`;
|
|
87
|
+
}
|
|
88
|
+
case "not_multiple_of":
|
|
89
|
+
return `Número invàlid: ha de ser múltiple de ${issue.divisor}`;
|
|
90
|
+
case "unrecognized_keys":
|
|
91
|
+
return `Clau${issue.keys.length > 1 ? "s" : ""} no reconeguda${issue.keys.length > 1 ? "s" : ""}: ${util.joinValues(issue.keys, ", ")}`;
|
|
92
|
+
case "invalid_key":
|
|
93
|
+
return `Clau invàlida a ${issue.origin}`;
|
|
94
|
+
case "invalid_union":
|
|
95
|
+
return "Entrada invàlida"; // Could also be "Tipus d'unió invàlid" but "Entrada invàlida" is more general
|
|
96
|
+
case "invalid_element":
|
|
97
|
+
return `Element invàlid a ${issue.origin}`;
|
|
98
|
+
default:
|
|
99
|
+
return `Entrada invàlida`;
|
|
100
|
+
}
|
|
101
|
+
};
|
|
102
|
+
};
|
|
103
|
+
export default function () {
|
|
104
|
+
return {
|
|
105
|
+
localeError: error(),
|
|
106
|
+
};
|
|
107
|
+
}
|
|
@@ -1,111 +1,111 @@
|
|
|
1
|
-
import * as util from "../core/util.js";
|
|
2
|
-
const error = () => {
|
|
3
|
-
const Sizable = {
|
|
4
|
-
string: { unit: "znaků", verb: "mít" },
|
|
5
|
-
file: { unit: "bajtů", verb: "mít" },
|
|
6
|
-
array: { unit: "prvků", verb: "mít" },
|
|
7
|
-
set: { unit: "prvků", verb: "mít" },
|
|
8
|
-
};
|
|
9
|
-
function getSizing(origin) {
|
|
10
|
-
return Sizable[origin] ?? null;
|
|
11
|
-
}
|
|
12
|
-
const FormatDictionary = {
|
|
13
|
-
regex: "regulární výraz",
|
|
14
|
-
email: "e-mailová adresa",
|
|
15
|
-
url: "URL",
|
|
16
|
-
emoji: "emoji",
|
|
17
|
-
uuid: "UUID",
|
|
18
|
-
uuidv4: "UUIDv4",
|
|
19
|
-
uuidv6: "UUIDv6",
|
|
20
|
-
nanoid: "nanoid",
|
|
21
|
-
guid: "GUID",
|
|
22
|
-
cuid: "cuid",
|
|
23
|
-
cuid2: "cuid2",
|
|
24
|
-
ulid: "ULID",
|
|
25
|
-
xid: "XID",
|
|
26
|
-
ksuid: "KSUID",
|
|
27
|
-
datetime: "datum a čas ve formátu ISO",
|
|
28
|
-
date: "datum ve formátu ISO",
|
|
29
|
-
time: "čas ve formátu ISO",
|
|
30
|
-
duration: "doba trvání ISO",
|
|
31
|
-
ipv4: "IPv4 adresa",
|
|
32
|
-
ipv6: "IPv6 adresa",
|
|
33
|
-
cidrv4: "rozsah IPv4",
|
|
34
|
-
cidrv6: "rozsah IPv6",
|
|
35
|
-
base64: "řetězec zakódovaný ve formátu base64",
|
|
36
|
-
base64url: "řetězec zakódovaný ve formátu base64url",
|
|
37
|
-
json_string: "řetězec ve formátu JSON",
|
|
38
|
-
e164: "číslo E.164",
|
|
39
|
-
jwt: "JWT",
|
|
40
|
-
template_literal: "vstup",
|
|
41
|
-
};
|
|
42
|
-
const TypeDictionary = {
|
|
43
|
-
nan: "NaN",
|
|
44
|
-
number: "číslo",
|
|
45
|
-
string: "řetězec",
|
|
46
|
-
function: "funkce",
|
|
47
|
-
array: "pole",
|
|
48
|
-
};
|
|
49
|
-
return (issue) => {
|
|
50
|
-
switch (issue.code) {
|
|
51
|
-
case "invalid_type": {
|
|
52
|
-
const expected = TypeDictionary[issue.expected] ?? issue.expected;
|
|
53
|
-
const receivedType = util.parsedType(issue.input);
|
|
54
|
-
const received = TypeDictionary[receivedType] ?? receivedType;
|
|
55
|
-
if (/^[A-Z]/.test(issue.expected)) {
|
|
56
|
-
return `Neplatný vstup: očekáváno instanceof ${issue.expected}, obdrženo ${received}`;
|
|
57
|
-
}
|
|
58
|
-
return `Neplatný vstup: očekáváno ${expected}, obdrženo ${received}`;
|
|
59
|
-
}
|
|
60
|
-
case "invalid_value":
|
|
61
|
-
if (issue.values.length === 1)
|
|
62
|
-
return `Neplatný vstup: očekáváno ${util.stringifyPrimitive(issue.values[0])}`;
|
|
63
|
-
return `Neplatná možnost: očekávána jedna z hodnot ${util.joinValues(issue.values, "|")}`;
|
|
64
|
-
case "too_big": {
|
|
65
|
-
const adj = issue.inclusive ? "<=" : "<";
|
|
66
|
-
const sizing = getSizing(issue.origin);
|
|
67
|
-
if (sizing) {
|
|
68
|
-
return `Hodnota je příliš velká: ${issue.origin ?? "hodnota"} musí mít ${adj}${issue.maximum.toString()} ${sizing.unit ?? "prvků"}`;
|
|
69
|
-
}
|
|
70
|
-
return `Hodnota je příliš velká: ${issue.origin ?? "hodnota"} musí být ${adj}${issue.maximum.toString()}`;
|
|
71
|
-
}
|
|
72
|
-
case "too_small": {
|
|
73
|
-
const adj = issue.inclusive ? ">=" : ">";
|
|
74
|
-
const sizing = getSizing(issue.origin);
|
|
75
|
-
if (sizing) {
|
|
76
|
-
return `Hodnota je příliš malá: ${issue.origin ?? "hodnota"} musí mít ${adj}${issue.minimum.toString()} ${sizing.unit ?? "prvků"}`;
|
|
77
|
-
}
|
|
78
|
-
return `Hodnota je příliš malá: ${issue.origin ?? "hodnota"} musí být ${adj}${issue.minimum.toString()}`;
|
|
79
|
-
}
|
|
80
|
-
case "invalid_format": {
|
|
81
|
-
const _issue = issue;
|
|
82
|
-
if (_issue.format === "starts_with")
|
|
83
|
-
return `Neplatný řetězec: musí začínat na "${_issue.prefix}"`;
|
|
84
|
-
if (_issue.format === "ends_with")
|
|
85
|
-
return `Neplatný řetězec: musí končit na "${_issue.suffix}"`;
|
|
86
|
-
if (_issue.format === "includes")
|
|
87
|
-
return `Neplatný řetězec: musí obsahovat "${_issue.includes}"`;
|
|
88
|
-
if (_issue.format === "regex")
|
|
89
|
-
return `Neplatný řetězec: musí odpovídat vzoru ${_issue.pattern}`;
|
|
90
|
-
return `Neplatný formát ${FormatDictionary[_issue.format] ?? issue.format}`;
|
|
91
|
-
}
|
|
92
|
-
case "not_multiple_of":
|
|
93
|
-
return `Neplatné číslo: musí být násobkem ${issue.divisor}`;
|
|
94
|
-
case "unrecognized_keys":
|
|
95
|
-
return `Neznámé klíče: ${util.joinValues(issue.keys, ", ")}`;
|
|
96
|
-
case "invalid_key":
|
|
97
|
-
return `Neplatný klíč v ${issue.origin}`;
|
|
98
|
-
case "invalid_union":
|
|
99
|
-
return "Neplatný vstup";
|
|
100
|
-
case "invalid_element":
|
|
101
|
-
return `Neplatná hodnota v ${issue.origin}`;
|
|
102
|
-
default:
|
|
103
|
-
return `Neplatný vstup`;
|
|
104
|
-
}
|
|
105
|
-
};
|
|
106
|
-
};
|
|
107
|
-
export default function () {
|
|
108
|
-
return {
|
|
109
|
-
localeError: error(),
|
|
110
|
-
};
|
|
111
|
-
}
|
|
1
|
+
import * as util from "../core/util.js";
|
|
2
|
+
const error = () => {
|
|
3
|
+
const Sizable = {
|
|
4
|
+
string: { unit: "znaků", verb: "mít" },
|
|
5
|
+
file: { unit: "bajtů", verb: "mít" },
|
|
6
|
+
array: { unit: "prvků", verb: "mít" },
|
|
7
|
+
set: { unit: "prvků", verb: "mít" },
|
|
8
|
+
};
|
|
9
|
+
function getSizing(origin) {
|
|
10
|
+
return Sizable[origin] ?? null;
|
|
11
|
+
}
|
|
12
|
+
const FormatDictionary = {
|
|
13
|
+
regex: "regulární výraz",
|
|
14
|
+
email: "e-mailová adresa",
|
|
15
|
+
url: "URL",
|
|
16
|
+
emoji: "emoji",
|
|
17
|
+
uuid: "UUID",
|
|
18
|
+
uuidv4: "UUIDv4",
|
|
19
|
+
uuidv6: "UUIDv6",
|
|
20
|
+
nanoid: "nanoid",
|
|
21
|
+
guid: "GUID",
|
|
22
|
+
cuid: "cuid",
|
|
23
|
+
cuid2: "cuid2",
|
|
24
|
+
ulid: "ULID",
|
|
25
|
+
xid: "XID",
|
|
26
|
+
ksuid: "KSUID",
|
|
27
|
+
datetime: "datum a čas ve formátu ISO",
|
|
28
|
+
date: "datum ve formátu ISO",
|
|
29
|
+
time: "čas ve formátu ISO",
|
|
30
|
+
duration: "doba trvání ISO",
|
|
31
|
+
ipv4: "IPv4 adresa",
|
|
32
|
+
ipv6: "IPv6 adresa",
|
|
33
|
+
cidrv4: "rozsah IPv4",
|
|
34
|
+
cidrv6: "rozsah IPv6",
|
|
35
|
+
base64: "řetězec zakódovaný ve formátu base64",
|
|
36
|
+
base64url: "řetězec zakódovaný ve formátu base64url",
|
|
37
|
+
json_string: "řetězec ve formátu JSON",
|
|
38
|
+
e164: "číslo E.164",
|
|
39
|
+
jwt: "JWT",
|
|
40
|
+
template_literal: "vstup",
|
|
41
|
+
};
|
|
42
|
+
const TypeDictionary = {
|
|
43
|
+
nan: "NaN",
|
|
44
|
+
number: "číslo",
|
|
45
|
+
string: "řetězec",
|
|
46
|
+
function: "funkce",
|
|
47
|
+
array: "pole",
|
|
48
|
+
};
|
|
49
|
+
return (issue) => {
|
|
50
|
+
switch (issue.code) {
|
|
51
|
+
case "invalid_type": {
|
|
52
|
+
const expected = TypeDictionary[issue.expected] ?? issue.expected;
|
|
53
|
+
const receivedType = util.parsedType(issue.input);
|
|
54
|
+
const received = TypeDictionary[receivedType] ?? receivedType;
|
|
55
|
+
if (/^[A-Z]/.test(issue.expected)) {
|
|
56
|
+
return `Neplatný vstup: očekáváno instanceof ${issue.expected}, obdrženo ${received}`;
|
|
57
|
+
}
|
|
58
|
+
return `Neplatný vstup: očekáváno ${expected}, obdrženo ${received}`;
|
|
59
|
+
}
|
|
60
|
+
case "invalid_value":
|
|
61
|
+
if (issue.values.length === 1)
|
|
62
|
+
return `Neplatný vstup: očekáváno ${util.stringifyPrimitive(issue.values[0])}`;
|
|
63
|
+
return `Neplatná možnost: očekávána jedna z hodnot ${util.joinValues(issue.values, "|")}`;
|
|
64
|
+
case "too_big": {
|
|
65
|
+
const adj = issue.inclusive ? "<=" : "<";
|
|
66
|
+
const sizing = getSizing(issue.origin);
|
|
67
|
+
if (sizing) {
|
|
68
|
+
return `Hodnota je příliš velká: ${issue.origin ?? "hodnota"} musí mít ${adj}${issue.maximum.toString()} ${sizing.unit ?? "prvků"}`;
|
|
69
|
+
}
|
|
70
|
+
return `Hodnota je příliš velká: ${issue.origin ?? "hodnota"} musí být ${adj}${issue.maximum.toString()}`;
|
|
71
|
+
}
|
|
72
|
+
case "too_small": {
|
|
73
|
+
const adj = issue.inclusive ? ">=" : ">";
|
|
74
|
+
const sizing = getSizing(issue.origin);
|
|
75
|
+
if (sizing) {
|
|
76
|
+
return `Hodnota je příliš malá: ${issue.origin ?? "hodnota"} musí mít ${adj}${issue.minimum.toString()} ${sizing.unit ?? "prvků"}`;
|
|
77
|
+
}
|
|
78
|
+
return `Hodnota je příliš malá: ${issue.origin ?? "hodnota"} musí být ${adj}${issue.minimum.toString()}`;
|
|
79
|
+
}
|
|
80
|
+
case "invalid_format": {
|
|
81
|
+
const _issue = issue;
|
|
82
|
+
if (_issue.format === "starts_with")
|
|
83
|
+
return `Neplatný řetězec: musí začínat na "${_issue.prefix}"`;
|
|
84
|
+
if (_issue.format === "ends_with")
|
|
85
|
+
return `Neplatný řetězec: musí končit na "${_issue.suffix}"`;
|
|
86
|
+
if (_issue.format === "includes")
|
|
87
|
+
return `Neplatný řetězec: musí obsahovat "${_issue.includes}"`;
|
|
88
|
+
if (_issue.format === "regex")
|
|
89
|
+
return `Neplatný řetězec: musí odpovídat vzoru ${_issue.pattern}`;
|
|
90
|
+
return `Neplatný formát ${FormatDictionary[_issue.format] ?? issue.format}`;
|
|
91
|
+
}
|
|
92
|
+
case "not_multiple_of":
|
|
93
|
+
return `Neplatné číslo: musí být násobkem ${issue.divisor}`;
|
|
94
|
+
case "unrecognized_keys":
|
|
95
|
+
return `Neznámé klíče: ${util.joinValues(issue.keys, ", ")}`;
|
|
96
|
+
case "invalid_key":
|
|
97
|
+
return `Neplatný klíč v ${issue.origin}`;
|
|
98
|
+
case "invalid_union":
|
|
99
|
+
return "Neplatný vstup";
|
|
100
|
+
case "invalid_element":
|
|
101
|
+
return `Neplatná hodnota v ${issue.origin}`;
|
|
102
|
+
default:
|
|
103
|
+
return `Neplatný vstup`;
|
|
104
|
+
}
|
|
105
|
+
};
|
|
106
|
+
};
|
|
107
|
+
export default function () {
|
|
108
|
+
return {
|
|
109
|
+
localeError: error(),
|
|
110
|
+
};
|
|
111
|
+
}
|