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,109 +1,109 @@
|
|
|
1
|
-
import * as util from "../core/util.js";
|
|
2
|
-
const error = () => {
|
|
3
|
-
const Sizable = {
|
|
4
|
-
string: { unit: "znakov", verb: "imeti" },
|
|
5
|
-
file: { unit: "bajtov", verb: "imeti" },
|
|
6
|
-
array: { unit: "elementov", verb: "imeti" },
|
|
7
|
-
set: { unit: "elementov", verb: "imeti" },
|
|
8
|
-
};
|
|
9
|
-
function getSizing(origin) {
|
|
10
|
-
return Sizable[origin] ?? null;
|
|
11
|
-
}
|
|
12
|
-
const FormatDictionary = {
|
|
13
|
-
regex: "vnos",
|
|
14
|
-
email: "e-poštni naslov",
|
|
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: "ISO datum in čas",
|
|
28
|
-
date: "ISO datum",
|
|
29
|
-
time: "ISO čas",
|
|
30
|
-
duration: "ISO trajanje",
|
|
31
|
-
ipv4: "IPv4 naslov",
|
|
32
|
-
ipv6: "IPv6 naslov",
|
|
33
|
-
cidrv4: "obseg IPv4",
|
|
34
|
-
cidrv6: "obseg IPv6",
|
|
35
|
-
base64: "base64 kodiran niz",
|
|
36
|
-
base64url: "base64url kodiran niz",
|
|
37
|
-
json_string: "JSON niz",
|
|
38
|
-
e164: "E.164 številka",
|
|
39
|
-
jwt: "JWT",
|
|
40
|
-
template_literal: "vnos",
|
|
41
|
-
};
|
|
42
|
-
const TypeDictionary = {
|
|
43
|
-
nan: "NaN",
|
|
44
|
-
number: "število",
|
|
45
|
-
array: "tabela",
|
|
46
|
-
};
|
|
47
|
-
return (issue) => {
|
|
48
|
-
switch (issue.code) {
|
|
49
|
-
case "invalid_type": {
|
|
50
|
-
const expected = TypeDictionary[issue.expected] ?? issue.expected;
|
|
51
|
-
const receivedType = util.parsedType(issue.input);
|
|
52
|
-
const received = TypeDictionary[receivedType] ?? receivedType;
|
|
53
|
-
if (/^[A-Z]/.test(issue.expected)) {
|
|
54
|
-
return `Neveljaven vnos: pričakovano instanceof ${issue.expected}, prejeto ${received}`;
|
|
55
|
-
}
|
|
56
|
-
return `Neveljaven vnos: pričakovano ${expected}, prejeto ${received}`;
|
|
57
|
-
}
|
|
58
|
-
case "invalid_value":
|
|
59
|
-
if (issue.values.length === 1)
|
|
60
|
-
return `Neveljaven vnos: pričakovano ${util.stringifyPrimitive(issue.values[0])}`;
|
|
61
|
-
return `Neveljavna možnost: pričakovano eno izmed ${util.joinValues(issue.values, "|")}`;
|
|
62
|
-
case "too_big": {
|
|
63
|
-
const adj = issue.inclusive ? "<=" : "<";
|
|
64
|
-
const sizing = getSizing(issue.origin);
|
|
65
|
-
if (sizing)
|
|
66
|
-
return `Preveliko: pričakovano, da bo ${issue.origin ?? "vrednost"} imelo ${adj}${issue.maximum.toString()} ${sizing.unit ?? "elementov"}`;
|
|
67
|
-
return `Preveliko: pričakovano, da bo ${issue.origin ?? "vrednost"} ${adj}${issue.maximum.toString()}`;
|
|
68
|
-
}
|
|
69
|
-
case "too_small": {
|
|
70
|
-
const adj = issue.inclusive ? ">=" : ">";
|
|
71
|
-
const sizing = getSizing(issue.origin);
|
|
72
|
-
if (sizing) {
|
|
73
|
-
return `Premajhno: pričakovano, da bo ${issue.origin} imelo ${adj}${issue.minimum.toString()} ${sizing.unit}`;
|
|
74
|
-
}
|
|
75
|
-
return `Premajhno: pričakovano, da bo ${issue.origin} ${adj}${issue.minimum.toString()}`;
|
|
76
|
-
}
|
|
77
|
-
case "invalid_format": {
|
|
78
|
-
const _issue = issue;
|
|
79
|
-
if (_issue.format === "starts_with") {
|
|
80
|
-
return `Neveljaven niz: mora se začeti z "${_issue.prefix}"`;
|
|
81
|
-
}
|
|
82
|
-
if (_issue.format === "ends_with")
|
|
83
|
-
return `Neveljaven niz: mora se končati z "${_issue.suffix}"`;
|
|
84
|
-
if (_issue.format === "includes")
|
|
85
|
-
return `Neveljaven niz: mora vsebovati "${_issue.includes}"`;
|
|
86
|
-
if (_issue.format === "regex")
|
|
87
|
-
return `Neveljaven niz: mora ustrezati vzorcu ${_issue.pattern}`;
|
|
88
|
-
return `Neveljaven ${FormatDictionary[_issue.format] ?? issue.format}`;
|
|
89
|
-
}
|
|
90
|
-
case "not_multiple_of":
|
|
91
|
-
return `Neveljavno število: mora biti večkratnik ${issue.divisor}`;
|
|
92
|
-
case "unrecognized_keys":
|
|
93
|
-
return `Neprepoznan${issue.keys.length > 1 ? "i ključi" : " ključ"}: ${util.joinValues(issue.keys, ", ")}`;
|
|
94
|
-
case "invalid_key":
|
|
95
|
-
return `Neveljaven ključ v ${issue.origin}`;
|
|
96
|
-
case "invalid_union":
|
|
97
|
-
return "Neveljaven vnos";
|
|
98
|
-
case "invalid_element":
|
|
99
|
-
return `Neveljavna vrednost v ${issue.origin}`;
|
|
100
|
-
default:
|
|
101
|
-
return "Neveljaven vnos";
|
|
102
|
-
}
|
|
103
|
-
};
|
|
104
|
-
};
|
|
105
|
-
export default function () {
|
|
106
|
-
return {
|
|
107
|
-
localeError: error(),
|
|
108
|
-
};
|
|
109
|
-
}
|
|
1
|
+
import * as util from "../core/util.js";
|
|
2
|
+
const error = () => {
|
|
3
|
+
const Sizable = {
|
|
4
|
+
string: { unit: "znakov", verb: "imeti" },
|
|
5
|
+
file: { unit: "bajtov", verb: "imeti" },
|
|
6
|
+
array: { unit: "elementov", verb: "imeti" },
|
|
7
|
+
set: { unit: "elementov", verb: "imeti" },
|
|
8
|
+
};
|
|
9
|
+
function getSizing(origin) {
|
|
10
|
+
return Sizable[origin] ?? null;
|
|
11
|
+
}
|
|
12
|
+
const FormatDictionary = {
|
|
13
|
+
regex: "vnos",
|
|
14
|
+
email: "e-poštni naslov",
|
|
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: "ISO datum in čas",
|
|
28
|
+
date: "ISO datum",
|
|
29
|
+
time: "ISO čas",
|
|
30
|
+
duration: "ISO trajanje",
|
|
31
|
+
ipv4: "IPv4 naslov",
|
|
32
|
+
ipv6: "IPv6 naslov",
|
|
33
|
+
cidrv4: "obseg IPv4",
|
|
34
|
+
cidrv6: "obseg IPv6",
|
|
35
|
+
base64: "base64 kodiran niz",
|
|
36
|
+
base64url: "base64url kodiran niz",
|
|
37
|
+
json_string: "JSON niz",
|
|
38
|
+
e164: "E.164 številka",
|
|
39
|
+
jwt: "JWT",
|
|
40
|
+
template_literal: "vnos",
|
|
41
|
+
};
|
|
42
|
+
const TypeDictionary = {
|
|
43
|
+
nan: "NaN",
|
|
44
|
+
number: "število",
|
|
45
|
+
array: "tabela",
|
|
46
|
+
};
|
|
47
|
+
return (issue) => {
|
|
48
|
+
switch (issue.code) {
|
|
49
|
+
case "invalid_type": {
|
|
50
|
+
const expected = TypeDictionary[issue.expected] ?? issue.expected;
|
|
51
|
+
const receivedType = util.parsedType(issue.input);
|
|
52
|
+
const received = TypeDictionary[receivedType] ?? receivedType;
|
|
53
|
+
if (/^[A-Z]/.test(issue.expected)) {
|
|
54
|
+
return `Neveljaven vnos: pričakovano instanceof ${issue.expected}, prejeto ${received}`;
|
|
55
|
+
}
|
|
56
|
+
return `Neveljaven vnos: pričakovano ${expected}, prejeto ${received}`;
|
|
57
|
+
}
|
|
58
|
+
case "invalid_value":
|
|
59
|
+
if (issue.values.length === 1)
|
|
60
|
+
return `Neveljaven vnos: pričakovano ${util.stringifyPrimitive(issue.values[0])}`;
|
|
61
|
+
return `Neveljavna možnost: pričakovano eno izmed ${util.joinValues(issue.values, "|")}`;
|
|
62
|
+
case "too_big": {
|
|
63
|
+
const adj = issue.inclusive ? "<=" : "<";
|
|
64
|
+
const sizing = getSizing(issue.origin);
|
|
65
|
+
if (sizing)
|
|
66
|
+
return `Preveliko: pričakovano, da bo ${issue.origin ?? "vrednost"} imelo ${adj}${issue.maximum.toString()} ${sizing.unit ?? "elementov"}`;
|
|
67
|
+
return `Preveliko: pričakovano, da bo ${issue.origin ?? "vrednost"} ${adj}${issue.maximum.toString()}`;
|
|
68
|
+
}
|
|
69
|
+
case "too_small": {
|
|
70
|
+
const adj = issue.inclusive ? ">=" : ">";
|
|
71
|
+
const sizing = getSizing(issue.origin);
|
|
72
|
+
if (sizing) {
|
|
73
|
+
return `Premajhno: pričakovano, da bo ${issue.origin} imelo ${adj}${issue.minimum.toString()} ${sizing.unit}`;
|
|
74
|
+
}
|
|
75
|
+
return `Premajhno: pričakovano, da bo ${issue.origin} ${adj}${issue.minimum.toString()}`;
|
|
76
|
+
}
|
|
77
|
+
case "invalid_format": {
|
|
78
|
+
const _issue = issue;
|
|
79
|
+
if (_issue.format === "starts_with") {
|
|
80
|
+
return `Neveljaven niz: mora se začeti z "${_issue.prefix}"`;
|
|
81
|
+
}
|
|
82
|
+
if (_issue.format === "ends_with")
|
|
83
|
+
return `Neveljaven niz: mora se končati z "${_issue.suffix}"`;
|
|
84
|
+
if (_issue.format === "includes")
|
|
85
|
+
return `Neveljaven niz: mora vsebovati "${_issue.includes}"`;
|
|
86
|
+
if (_issue.format === "regex")
|
|
87
|
+
return `Neveljaven niz: mora ustrezati vzorcu ${_issue.pattern}`;
|
|
88
|
+
return `Neveljaven ${FormatDictionary[_issue.format] ?? issue.format}`;
|
|
89
|
+
}
|
|
90
|
+
case "not_multiple_of":
|
|
91
|
+
return `Neveljavno število: mora biti večkratnik ${issue.divisor}`;
|
|
92
|
+
case "unrecognized_keys":
|
|
93
|
+
return `Neprepoznan${issue.keys.length > 1 ? "i ključi" : " ključ"}: ${util.joinValues(issue.keys, ", ")}`;
|
|
94
|
+
case "invalid_key":
|
|
95
|
+
return `Neveljaven ključ v ${issue.origin}`;
|
|
96
|
+
case "invalid_union":
|
|
97
|
+
return "Neveljaven vnos";
|
|
98
|
+
case "invalid_element":
|
|
99
|
+
return `Neveljavna vrednost v ${issue.origin}`;
|
|
100
|
+
default:
|
|
101
|
+
return "Neveljaven vnos";
|
|
102
|
+
}
|
|
103
|
+
};
|
|
104
|
+
};
|
|
105
|
+
export default function () {
|
|
106
|
+
return {
|
|
107
|
+
localeError: error(),
|
|
108
|
+
};
|
|
109
|
+
}
|
|
@@ -1,110 +1,110 @@
|
|
|
1
|
-
import * as util from "../core/util.js";
|
|
2
|
-
const error = () => {
|
|
3
|
-
const Sizable = {
|
|
4
|
-
string: { unit: "tecken", verb: "att ha" },
|
|
5
|
-
file: { unit: "bytes", verb: "att ha" },
|
|
6
|
-
array: { unit: "objekt", verb: "att innehålla" },
|
|
7
|
-
set: { unit: "objekt", verb: "att innehålla" },
|
|
8
|
-
};
|
|
9
|
-
function getSizing(origin) {
|
|
10
|
-
return Sizable[origin] ?? null;
|
|
11
|
-
}
|
|
12
|
-
const FormatDictionary = {
|
|
13
|
-
regex: "reguljärt uttryck",
|
|
14
|
-
email: "e-postadress",
|
|
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: "ISO-datum och tid",
|
|
28
|
-
date: "ISO-datum",
|
|
29
|
-
time: "ISO-tid",
|
|
30
|
-
duration: "ISO-varaktighet",
|
|
31
|
-
ipv4: "IPv4-intervall",
|
|
32
|
-
ipv6: "IPv6-intervall",
|
|
33
|
-
cidrv4: "IPv4-spektrum",
|
|
34
|
-
cidrv6: "IPv6-spektrum",
|
|
35
|
-
base64: "base64-kodad sträng",
|
|
36
|
-
base64url: "base64url-kodad sträng",
|
|
37
|
-
json_string: "JSON-sträng",
|
|
38
|
-
e164: "E.164-nummer",
|
|
39
|
-
jwt: "JWT",
|
|
40
|
-
template_literal: "mall-literal",
|
|
41
|
-
};
|
|
42
|
-
const TypeDictionary = {
|
|
43
|
-
nan: "NaN",
|
|
44
|
-
number: "antal",
|
|
45
|
-
array: "lista",
|
|
46
|
-
};
|
|
47
|
-
return (issue) => {
|
|
48
|
-
switch (issue.code) {
|
|
49
|
-
case "invalid_type": {
|
|
50
|
-
const expected = TypeDictionary[issue.expected] ?? issue.expected;
|
|
51
|
-
const receivedType = util.parsedType(issue.input);
|
|
52
|
-
const received = TypeDictionary[receivedType] ?? receivedType;
|
|
53
|
-
if (/^[A-Z]/.test(issue.expected)) {
|
|
54
|
-
return `Ogiltig inmatning: förväntat instanceof ${issue.expected}, fick ${received}`;
|
|
55
|
-
}
|
|
56
|
-
return `Ogiltig inmatning: förväntat ${expected}, fick ${received}`;
|
|
57
|
-
}
|
|
58
|
-
case "invalid_value":
|
|
59
|
-
if (issue.values.length === 1)
|
|
60
|
-
return `Ogiltig inmatning: förväntat ${util.stringifyPrimitive(issue.values[0])}`;
|
|
61
|
-
return `Ogiltigt val: förväntade en av ${util.joinValues(issue.values, "|")}`;
|
|
62
|
-
case "too_big": {
|
|
63
|
-
const adj = issue.inclusive ? "<=" : "<";
|
|
64
|
-
const sizing = getSizing(issue.origin);
|
|
65
|
-
if (sizing) {
|
|
66
|
-
return `För stor(t): förväntade ${issue.origin ?? "värdet"} att ha ${adj}${issue.maximum.toString()} ${sizing.unit ?? "element"}`;
|
|
67
|
-
}
|
|
68
|
-
return `För stor(t): förväntat ${issue.origin ?? "värdet"} att ha ${adj}${issue.maximum.toString()}`;
|
|
69
|
-
}
|
|
70
|
-
case "too_small": {
|
|
71
|
-
const adj = issue.inclusive ? ">=" : ">";
|
|
72
|
-
const sizing = getSizing(issue.origin);
|
|
73
|
-
if (sizing) {
|
|
74
|
-
return `För lite(t): förväntade ${issue.origin ?? "värdet"} att ha ${adj}${issue.minimum.toString()} ${sizing.unit}`;
|
|
75
|
-
}
|
|
76
|
-
return `För lite(t): förväntade ${issue.origin ?? "värdet"} att ha ${adj}${issue.minimum.toString()}`;
|
|
77
|
-
}
|
|
78
|
-
case "invalid_format": {
|
|
79
|
-
const _issue = issue;
|
|
80
|
-
if (_issue.format === "starts_with") {
|
|
81
|
-
return `Ogiltig sträng: måste börja med "${_issue.prefix}"`;
|
|
82
|
-
}
|
|
83
|
-
if (_issue.format === "ends_with")
|
|
84
|
-
return `Ogiltig sträng: måste sluta med "${_issue.suffix}"`;
|
|
85
|
-
if (_issue.format === "includes")
|
|
86
|
-
return `Ogiltig sträng: måste innehålla "${_issue.includes}"`;
|
|
87
|
-
if (_issue.format === "regex")
|
|
88
|
-
return `Ogiltig sträng: måste matcha mönstret "${_issue.pattern}"`;
|
|
89
|
-
return `Ogiltig(t) ${FormatDictionary[_issue.format] ?? issue.format}`;
|
|
90
|
-
}
|
|
91
|
-
case "not_multiple_of":
|
|
92
|
-
return `Ogiltigt tal: måste vara en multipel av ${issue.divisor}`;
|
|
93
|
-
case "unrecognized_keys":
|
|
94
|
-
return `${issue.keys.length > 1 ? "Okända nycklar" : "Okänd nyckel"}: ${util.joinValues(issue.keys, ", ")}`;
|
|
95
|
-
case "invalid_key":
|
|
96
|
-
return `Ogiltig nyckel i ${issue.origin ?? "värdet"}`;
|
|
97
|
-
case "invalid_union":
|
|
98
|
-
return "Ogiltig input";
|
|
99
|
-
case "invalid_element":
|
|
100
|
-
return `Ogiltigt värde i ${issue.origin ?? "värdet"}`;
|
|
101
|
-
default:
|
|
102
|
-
return `Ogiltig input`;
|
|
103
|
-
}
|
|
104
|
-
};
|
|
105
|
-
};
|
|
106
|
-
export default function () {
|
|
107
|
-
return {
|
|
108
|
-
localeError: error(),
|
|
109
|
-
};
|
|
110
|
-
}
|
|
1
|
+
import * as util from "../core/util.js";
|
|
2
|
+
const error = () => {
|
|
3
|
+
const Sizable = {
|
|
4
|
+
string: { unit: "tecken", verb: "att ha" },
|
|
5
|
+
file: { unit: "bytes", verb: "att ha" },
|
|
6
|
+
array: { unit: "objekt", verb: "att innehålla" },
|
|
7
|
+
set: { unit: "objekt", verb: "att innehålla" },
|
|
8
|
+
};
|
|
9
|
+
function getSizing(origin) {
|
|
10
|
+
return Sizable[origin] ?? null;
|
|
11
|
+
}
|
|
12
|
+
const FormatDictionary = {
|
|
13
|
+
regex: "reguljärt uttryck",
|
|
14
|
+
email: "e-postadress",
|
|
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: "ISO-datum och tid",
|
|
28
|
+
date: "ISO-datum",
|
|
29
|
+
time: "ISO-tid",
|
|
30
|
+
duration: "ISO-varaktighet",
|
|
31
|
+
ipv4: "IPv4-intervall",
|
|
32
|
+
ipv6: "IPv6-intervall",
|
|
33
|
+
cidrv4: "IPv4-spektrum",
|
|
34
|
+
cidrv6: "IPv6-spektrum",
|
|
35
|
+
base64: "base64-kodad sträng",
|
|
36
|
+
base64url: "base64url-kodad sträng",
|
|
37
|
+
json_string: "JSON-sträng",
|
|
38
|
+
e164: "E.164-nummer",
|
|
39
|
+
jwt: "JWT",
|
|
40
|
+
template_literal: "mall-literal",
|
|
41
|
+
};
|
|
42
|
+
const TypeDictionary = {
|
|
43
|
+
nan: "NaN",
|
|
44
|
+
number: "antal",
|
|
45
|
+
array: "lista",
|
|
46
|
+
};
|
|
47
|
+
return (issue) => {
|
|
48
|
+
switch (issue.code) {
|
|
49
|
+
case "invalid_type": {
|
|
50
|
+
const expected = TypeDictionary[issue.expected] ?? issue.expected;
|
|
51
|
+
const receivedType = util.parsedType(issue.input);
|
|
52
|
+
const received = TypeDictionary[receivedType] ?? receivedType;
|
|
53
|
+
if (/^[A-Z]/.test(issue.expected)) {
|
|
54
|
+
return `Ogiltig inmatning: förväntat instanceof ${issue.expected}, fick ${received}`;
|
|
55
|
+
}
|
|
56
|
+
return `Ogiltig inmatning: förväntat ${expected}, fick ${received}`;
|
|
57
|
+
}
|
|
58
|
+
case "invalid_value":
|
|
59
|
+
if (issue.values.length === 1)
|
|
60
|
+
return `Ogiltig inmatning: förväntat ${util.stringifyPrimitive(issue.values[0])}`;
|
|
61
|
+
return `Ogiltigt val: förväntade en av ${util.joinValues(issue.values, "|")}`;
|
|
62
|
+
case "too_big": {
|
|
63
|
+
const adj = issue.inclusive ? "<=" : "<";
|
|
64
|
+
const sizing = getSizing(issue.origin);
|
|
65
|
+
if (sizing) {
|
|
66
|
+
return `För stor(t): förväntade ${issue.origin ?? "värdet"} att ha ${adj}${issue.maximum.toString()} ${sizing.unit ?? "element"}`;
|
|
67
|
+
}
|
|
68
|
+
return `För stor(t): förväntat ${issue.origin ?? "värdet"} att ha ${adj}${issue.maximum.toString()}`;
|
|
69
|
+
}
|
|
70
|
+
case "too_small": {
|
|
71
|
+
const adj = issue.inclusive ? ">=" : ">";
|
|
72
|
+
const sizing = getSizing(issue.origin);
|
|
73
|
+
if (sizing) {
|
|
74
|
+
return `För lite(t): förväntade ${issue.origin ?? "värdet"} att ha ${adj}${issue.minimum.toString()} ${sizing.unit}`;
|
|
75
|
+
}
|
|
76
|
+
return `För lite(t): förväntade ${issue.origin ?? "värdet"} att ha ${adj}${issue.minimum.toString()}`;
|
|
77
|
+
}
|
|
78
|
+
case "invalid_format": {
|
|
79
|
+
const _issue = issue;
|
|
80
|
+
if (_issue.format === "starts_with") {
|
|
81
|
+
return `Ogiltig sträng: måste börja med "${_issue.prefix}"`;
|
|
82
|
+
}
|
|
83
|
+
if (_issue.format === "ends_with")
|
|
84
|
+
return `Ogiltig sträng: måste sluta med "${_issue.suffix}"`;
|
|
85
|
+
if (_issue.format === "includes")
|
|
86
|
+
return `Ogiltig sträng: måste innehålla "${_issue.includes}"`;
|
|
87
|
+
if (_issue.format === "regex")
|
|
88
|
+
return `Ogiltig sträng: måste matcha mönstret "${_issue.pattern}"`;
|
|
89
|
+
return `Ogiltig(t) ${FormatDictionary[_issue.format] ?? issue.format}`;
|
|
90
|
+
}
|
|
91
|
+
case "not_multiple_of":
|
|
92
|
+
return `Ogiltigt tal: måste vara en multipel av ${issue.divisor}`;
|
|
93
|
+
case "unrecognized_keys":
|
|
94
|
+
return `${issue.keys.length > 1 ? "Okända nycklar" : "Okänd nyckel"}: ${util.joinValues(issue.keys, ", ")}`;
|
|
95
|
+
case "invalid_key":
|
|
96
|
+
return `Ogiltig nyckel i ${issue.origin ?? "värdet"}`;
|
|
97
|
+
case "invalid_union":
|
|
98
|
+
return "Ogiltig input";
|
|
99
|
+
case "invalid_element":
|
|
100
|
+
return `Ogiltigt värde i ${issue.origin ?? "värdet"}`;
|
|
101
|
+
default:
|
|
102
|
+
return `Ogiltig input`;
|
|
103
|
+
}
|
|
104
|
+
};
|
|
105
|
+
};
|
|
106
|
+
export default function () {
|
|
107
|
+
return {
|
|
108
|
+
localeError: error(),
|
|
109
|
+
};
|
|
110
|
+
}
|