lkd-web-kit 0.4.3 → 0.4.5

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 (138) hide show
  1. package/dist/hooks/useZodConfig.cjs +21 -0
  2. package/dist/hooks/useZodConfig.js +17 -0
  3. package/dist/index.cjs +2 -0
  4. package/dist/index.d.ts +4 -3
  5. package/dist/index.js +1 -0
  6. package/dist/node_modules/@tanstack/virtual-core/dist/esm/index.cjs +38 -33
  7. package/dist/node_modules/@tanstack/virtual-core/dist/esm/index.js +38 -33
  8. package/dist/node_modules/@tanstack/virtual-core/dist/esm/utils.cjs +1 -1
  9. package/dist/node_modules/@tanstack/virtual-core/dist/esm/utils.js +1 -1
  10. package/dist/node_modules/zod/v4/classic/coerce.cjs +28 -0
  11. package/dist/node_modules/zod/v4/classic/coerce.js +20 -0
  12. package/dist/node_modules/zod/v4/classic/compat.cjs +37 -0
  13. package/dist/node_modules/zod/v4/classic/compat.js +30 -0
  14. package/dist/node_modules/zod/v4/classic/errors.cjs +49 -0
  15. package/dist/node_modules/zod/v4/classic/errors.js +44 -0
  16. package/dist/node_modules/zod/v4/classic/external.cjs +231 -0
  17. package/dist/node_modules/zod/v4/classic/external.js +28 -0
  18. package/dist/node_modules/zod/v4/classic/index.cjs +10 -0
  19. package/dist/node_modules/zod/v4/classic/index.js +5 -0
  20. package/dist/node_modules/zod/v4/classic/iso.cjs +46 -0
  21. package/dist/node_modules/zod/v4/classic/iso.js +35 -0
  22. package/dist/node_modules/zod/v4/classic/parse.cjs +16 -0
  23. package/dist/node_modules/zod/v4/classic/parse.js +9 -0
  24. package/dist/node_modules/zod/v4/classic/schemas.cjs +1155 -0
  25. package/dist/node_modules/zod/v4/classic/schemas.js +1006 -0
  26. package/dist/node_modules/zod/v4/core/api.cjs +1016 -0
  27. package/dist/node_modules/zod/v4/core/api.js +903 -0
  28. package/dist/node_modules/zod/v4/core/checks.cjs +587 -0
  29. package/dist/node_modules/zod/v4/core/checks.js +562 -0
  30. package/dist/node_modules/zod/v4/core/core.cjs +72 -0
  31. package/dist/node_modules/zod/v4/core/core.js +63 -0
  32. package/dist/node_modules/zod/v4/core/doc.cjs +41 -0
  33. package/dist/node_modules/zod/v4/core/doc.js +37 -0
  34. package/dist/node_modules/zod/v4/core/errors.cjs +204 -0
  35. package/dist/node_modules/zod/v4/core/errors.js +194 -0
  36. package/dist/node_modules/zod/v4/core/function.cjs +81 -0
  37. package/dist/node_modules/zod/v4/core/function.js +76 -0
  38. package/dist/node_modules/zod/v4/core/index.cjs +261 -0
  39. package/dist/node_modules/zod/v4/core/index.js +20 -0
  40. package/dist/node_modules/zod/v4/core/json-schema.cjs +2 -0
  41. package/dist/node_modules/zod/v4/core/json-schema.js +1 -0
  42. package/dist/node_modules/zod/v4/core/parse.cjs +71 -0
  43. package/dist/node_modules/zod/v4/core/parse.js +60 -0
  44. package/dist/node_modules/zod/v4/core/regexes.cjs +139 -0
  45. package/dist/node_modules/zod/v4/core/regexes.js +95 -0
  46. package/dist/node_modules/zod/v4/core/registries.cjs +52 -0
  47. package/dist/node_modules/zod/v4/core/registries.js +44 -0
  48. package/dist/node_modules/zod/v4/core/schemas.cjs +1793 -0
  49. package/dist/node_modules/zod/v4/core/schemas.js +1720 -0
  50. package/dist/node_modules/zod/v4/core/to-json-schema.cjs +823 -0
  51. package/dist/node_modules/zod/v4/core/to-json-schema.js +818 -0
  52. package/dist/node_modules/zod/v4/core/util.cjs +543 -0
  53. package/dist/node_modules/zod/v4/core/util.js +491 -0
  54. package/dist/node_modules/zod/v4/core/versions.cjs +11 -0
  55. package/dist/node_modules/zod/v4/core/versions.js +7 -0
  56. package/dist/node_modules/zod/v4/index.cjs +10 -0
  57. package/dist/node_modules/zod/v4/index.js +5 -0
  58. package/dist/node_modules/zod/v4/locales/ar.cjs +121 -0
  59. package/dist/node_modules/zod/v4/locales/ar.js +119 -0
  60. package/dist/node_modules/zod/v4/locales/az.cjs +120 -0
  61. package/dist/node_modules/zod/v4/locales/az.js +118 -0
  62. package/dist/node_modules/zod/v4/locales/be.cjs +169 -0
  63. package/dist/node_modules/zod/v4/locales/be.js +167 -0
  64. package/dist/node_modules/zod/v4/locales/ca.cjs +123 -0
  65. package/dist/node_modules/zod/v4/locales/ca.js +121 -0
  66. package/dist/node_modules/zod/v4/locales/cs.cjs +140 -0
  67. package/dist/node_modules/zod/v4/locales/cs.js +138 -0
  68. package/dist/node_modules/zod/v4/locales/de.cjs +121 -0
  69. package/dist/node_modules/zod/v4/locales/de.js +119 -0
  70. package/dist/node_modules/zod/v4/locales/en.cjs +125 -0
  71. package/dist/node_modules/zod/v4/locales/en.js +120 -0
  72. package/dist/node_modules/zod/v4/locales/eo.cjs +124 -0
  73. package/dist/node_modules/zod/v4/locales/eo.js +119 -0
  74. package/dist/node_modules/zod/v4/locales/es.cjs +122 -0
  75. package/dist/node_modules/zod/v4/locales/es.js +120 -0
  76. package/dist/node_modules/zod/v4/locales/fa.cjs +127 -0
  77. package/dist/node_modules/zod/v4/locales/fa.js +125 -0
  78. package/dist/node_modules/zod/v4/locales/fi.cjs +127 -0
  79. package/dist/node_modules/zod/v4/locales/fi.js +125 -0
  80. package/dist/node_modules/zod/v4/locales/fr-CA.cjs +122 -0
  81. package/dist/node_modules/zod/v4/locales/fr-CA.js +120 -0
  82. package/dist/node_modules/zod/v4/locales/fr.cjs +121 -0
  83. package/dist/node_modules/zod/v4/locales/fr.js +119 -0
  84. package/dist/node_modules/zod/v4/locales/he.cjs +122 -0
  85. package/dist/node_modules/zod/v4/locales/he.js +120 -0
  86. package/dist/node_modules/zod/v4/locales/hu.cjs +122 -0
  87. package/dist/node_modules/zod/v4/locales/hu.js +120 -0
  88. package/dist/node_modules/zod/v4/locales/id.cjs +121 -0
  89. package/dist/node_modules/zod/v4/locales/id.js +119 -0
  90. package/dist/node_modules/zod/v4/locales/index.cjs +85 -0
  91. package/dist/node_modules/zod/v4/locales/index.js +39 -0
  92. package/dist/node_modules/zod/v4/locales/it.cjs +122 -0
  93. package/dist/node_modules/zod/v4/locales/it.js +120 -0
  94. package/dist/node_modules/zod/v4/locales/ja.cjs +120 -0
  95. package/dist/node_modules/zod/v4/locales/ja.js +118 -0
  96. package/dist/node_modules/zod/v4/locales/kh.cjs +122 -0
  97. package/dist/node_modules/zod/v4/locales/kh.js +120 -0
  98. package/dist/node_modules/zod/v4/locales/ko.cjs +126 -0
  99. package/dist/node_modules/zod/v4/locales/ko.js +124 -0
  100. package/dist/node_modules/zod/v4/locales/mk.cjs +123 -0
  101. package/dist/node_modules/zod/v4/locales/mk.js +121 -0
  102. package/dist/node_modules/zod/v4/locales/ms.cjs +121 -0
  103. package/dist/node_modules/zod/v4/locales/ms.js +119 -0
  104. package/dist/node_modules/zod/v4/locales/nl.cjs +122 -0
  105. package/dist/node_modules/zod/v4/locales/nl.js +120 -0
  106. package/dist/node_modules/zod/v4/locales/no.cjs +121 -0
  107. package/dist/node_modules/zod/v4/locales/no.js +119 -0
  108. package/dist/node_modules/zod/v4/locales/ota.cjs +122 -0
  109. package/dist/node_modules/zod/v4/locales/ota.js +120 -0
  110. package/dist/node_modules/zod/v4/locales/pl.cjs +122 -0
  111. package/dist/node_modules/zod/v4/locales/pl.js +120 -0
  112. package/dist/node_modules/zod/v4/locales/ps.cjs +127 -0
  113. package/dist/node_modules/zod/v4/locales/ps.js +125 -0
  114. package/dist/node_modules/zod/v4/locales/pt.cjs +121 -0
  115. package/dist/node_modules/zod/v4/locales/pt.js +119 -0
  116. package/dist/node_modules/zod/v4/locales/ru.cjs +169 -0
  117. package/dist/node_modules/zod/v4/locales/ru.js +167 -0
  118. package/dist/node_modules/zod/v4/locales/sl.cjs +122 -0
  119. package/dist/node_modules/zod/v4/locales/sl.js +120 -0
  120. package/dist/node_modules/zod/v4/locales/sv.cjs +123 -0
  121. package/dist/node_modules/zod/v4/locales/sv.js +121 -0
  122. package/dist/node_modules/zod/v4/locales/ta.cjs +122 -0
  123. package/dist/node_modules/zod/v4/locales/ta.js +120 -0
  124. package/dist/node_modules/zod/v4/locales/th.cjs +122 -0
  125. package/dist/node_modules/zod/v4/locales/th.js +120 -0
  126. package/dist/node_modules/zod/v4/locales/tr.cjs +123 -0
  127. package/dist/node_modules/zod/v4/locales/tr.js +118 -0
  128. package/dist/node_modules/zod/v4/locales/ua.cjs +122 -0
  129. package/dist/node_modules/zod/v4/locales/ua.js +120 -0
  130. package/dist/node_modules/zod/v4/locales/ur.cjs +122 -0
  131. package/dist/node_modules/zod/v4/locales/ur.js +120 -0
  132. package/dist/node_modules/zod/v4/locales/vi.cjs +121 -0
  133. package/dist/node_modules/zod/v4/locales/vi.js +119 -0
  134. package/dist/node_modules/zod/v4/locales/zh-CN.cjs +121 -0
  135. package/dist/node_modules/zod/v4/locales/zh-CN.js +119 -0
  136. package/dist/node_modules/zod/v4/locales/zh-TW.cjs +122 -0
  137. package/dist/node_modules/zod/v4/locales/zh-TW.js +120 -0
  138. package/package.json +1 -1
@@ -0,0 +1,119 @@
1
+ import { joinValues, stringifyPrimitive } from '../core/util.js';
2
+
3
+ const error = () => {
4
+ const Sizable = {
5
+ string: { unit: "aksara", verb: "mempunyai" },
6
+ file: { unit: "bait", verb: "mempunyai" },
7
+ array: { unit: "elemen", verb: "mempunyai" },
8
+ set: { unit: "elemen", verb: "mempunyai" },
9
+ };
10
+ function getSizing(origin) {
11
+ return Sizable[origin] ?? null;
12
+ }
13
+ const parsedType = (data) => {
14
+ const t = typeof data;
15
+ switch (t) {
16
+ case "number": {
17
+ return Number.isNaN(data) ? "NaN" : "nombor";
18
+ }
19
+ case "object": {
20
+ if (Array.isArray(data)) {
21
+ return "array";
22
+ }
23
+ if (data === null) {
24
+ return "null";
25
+ }
26
+ if (Object.getPrototypeOf(data) !== Object.prototype && data.constructor) {
27
+ return data.constructor.name;
28
+ }
29
+ }
30
+ }
31
+ return t;
32
+ };
33
+ const Nouns = {
34
+ regex: "input",
35
+ email: "alamat e-mel",
36
+ url: "URL",
37
+ emoji: "emoji",
38
+ uuid: "UUID",
39
+ uuidv4: "UUIDv4",
40
+ uuidv6: "UUIDv6",
41
+ nanoid: "nanoid",
42
+ guid: "GUID",
43
+ cuid: "cuid",
44
+ cuid2: "cuid2",
45
+ ulid: "ULID",
46
+ xid: "XID",
47
+ ksuid: "KSUID",
48
+ datetime: "tarikh masa ISO",
49
+ date: "tarikh ISO",
50
+ time: "masa ISO",
51
+ duration: "tempoh ISO",
52
+ ipv4: "alamat IPv4",
53
+ ipv6: "alamat IPv6",
54
+ cidrv4: "julat IPv4",
55
+ cidrv6: "julat IPv6",
56
+ base64: "string dikodkan base64",
57
+ base64url: "string dikodkan base64url",
58
+ json_string: "string JSON",
59
+ e164: "nombor E.164",
60
+ jwt: "JWT",
61
+ template_literal: "input",
62
+ };
63
+ return (issue) => {
64
+ switch (issue.code) {
65
+ case "invalid_type":
66
+ return `Input tidak sah: dijangka ${issue.expected}, diterima ${parsedType(issue.input)}`;
67
+ case "invalid_value":
68
+ if (issue.values.length === 1)
69
+ return `Input tidak sah: dijangka ${stringifyPrimitive(issue.values[0])}`;
70
+ return `Pilihan tidak sah: dijangka salah satu daripada ${joinValues(issue.values, "|")}`;
71
+ case "too_big": {
72
+ const adj = issue.inclusive ? "<=" : "<";
73
+ const sizing = getSizing(issue.origin);
74
+ if (sizing)
75
+ return `Terlalu besar: dijangka ${issue.origin ?? "nilai"} ${sizing.verb} ${adj}${issue.maximum.toString()} ${sizing.unit ?? "elemen"}`;
76
+ return `Terlalu besar: dijangka ${issue.origin ?? "nilai"} adalah ${adj}${issue.maximum.toString()}`;
77
+ }
78
+ case "too_small": {
79
+ const adj = issue.inclusive ? ">=" : ">";
80
+ const sizing = getSizing(issue.origin);
81
+ if (sizing) {
82
+ return `Terlalu kecil: dijangka ${issue.origin} ${sizing.verb} ${adj}${issue.minimum.toString()} ${sizing.unit}`;
83
+ }
84
+ return `Terlalu kecil: dijangka ${issue.origin} adalah ${adj}${issue.minimum.toString()}`;
85
+ }
86
+ case "invalid_format": {
87
+ const _issue = issue;
88
+ if (_issue.format === "starts_with")
89
+ return `String tidak sah: mesti bermula dengan "${_issue.prefix}"`;
90
+ if (_issue.format === "ends_with")
91
+ return `String tidak sah: mesti berakhir dengan "${_issue.suffix}"`;
92
+ if (_issue.format === "includes")
93
+ return `String tidak sah: mesti mengandungi "${_issue.includes}"`;
94
+ if (_issue.format === "regex")
95
+ return `String tidak sah: mesti sepadan dengan corak ${_issue.pattern}`;
96
+ return `${Nouns[_issue.format] ?? issue.format} tidak sah`;
97
+ }
98
+ case "not_multiple_of":
99
+ return `Nombor tidak sah: perlu gandaan ${issue.divisor}`;
100
+ case "unrecognized_keys":
101
+ return `Kunci tidak dikenali: ${joinValues(issue.keys, ", ")}`;
102
+ case "invalid_key":
103
+ return `Kunci tidak sah dalam ${issue.origin}`;
104
+ case "invalid_union":
105
+ return "Input tidak sah";
106
+ case "invalid_element":
107
+ return `Nilai tidak sah dalam ${issue.origin}`;
108
+ default:
109
+ return `Input tidak sah`;
110
+ }
111
+ };
112
+ };
113
+ function ms () {
114
+ return {
115
+ localeError: error(),
116
+ };
117
+ }
118
+
119
+ export { ms as default };
@@ -0,0 +1,122 @@
1
+ 'use strict';
2
+
3
+ const util = require('../core/util.cjs');
4
+
5
+ const error = () => {
6
+ const Sizable = {
7
+ string: { unit: "tekens" },
8
+ file: { unit: "bytes" },
9
+ array: { unit: "elementen" },
10
+ set: { unit: "elementen" },
11
+ };
12
+ function getSizing(origin) {
13
+ return Sizable[origin] ?? null;
14
+ }
15
+ const parsedType = (data) => {
16
+ const t = typeof data;
17
+ switch (t) {
18
+ case "number": {
19
+ return Number.isNaN(data) ? "NaN" : "getal";
20
+ }
21
+ case "object": {
22
+ if (Array.isArray(data)) {
23
+ return "array";
24
+ }
25
+ if (data === null) {
26
+ return "null";
27
+ }
28
+ if (Object.getPrototypeOf(data) !== Object.prototype && data.constructor) {
29
+ return data.constructor.name;
30
+ }
31
+ }
32
+ }
33
+ return t;
34
+ };
35
+ const Nouns = {
36
+ regex: "invoer",
37
+ email: "emailadres",
38
+ url: "URL",
39
+ emoji: "emoji",
40
+ uuid: "UUID",
41
+ uuidv4: "UUIDv4",
42
+ uuidv6: "UUIDv6",
43
+ nanoid: "nanoid",
44
+ guid: "GUID",
45
+ cuid: "cuid",
46
+ cuid2: "cuid2",
47
+ ulid: "ULID",
48
+ xid: "XID",
49
+ ksuid: "KSUID",
50
+ datetime: "ISO datum en tijd",
51
+ date: "ISO datum",
52
+ time: "ISO tijd",
53
+ duration: "ISO duur",
54
+ ipv4: "IPv4-adres",
55
+ ipv6: "IPv6-adres",
56
+ cidrv4: "IPv4-bereik",
57
+ cidrv6: "IPv6-bereik",
58
+ base64: "base64-gecodeerde tekst",
59
+ base64url: "base64 URL-gecodeerde tekst",
60
+ json_string: "JSON string",
61
+ e164: "E.164-nummer",
62
+ jwt: "JWT",
63
+ template_literal: "invoer",
64
+ };
65
+ return (issue) => {
66
+ switch (issue.code) {
67
+ case "invalid_type":
68
+ return `Ongeldige invoer: verwacht ${issue.expected}, ontving ${parsedType(issue.input)}`;
69
+ case "invalid_value":
70
+ if (issue.values.length === 1)
71
+ return `Ongeldige invoer: verwacht ${util.stringifyPrimitive(issue.values[0])}`;
72
+ return `Ongeldige optie: verwacht één van ${util.joinValues(issue.values, "|")}`;
73
+ case "too_big": {
74
+ const adj = issue.inclusive ? "<=" : "<";
75
+ const sizing = getSizing(issue.origin);
76
+ if (sizing)
77
+ return `Te lang: verwacht dat ${issue.origin ?? "waarde"} ${adj}${issue.maximum.toString()} ${sizing.unit ?? "elementen"} bevat`;
78
+ return `Te lang: verwacht dat ${issue.origin ?? "waarde"} ${adj}${issue.maximum.toString()} is`;
79
+ }
80
+ case "too_small": {
81
+ const adj = issue.inclusive ? ">=" : ">";
82
+ const sizing = getSizing(issue.origin);
83
+ if (sizing) {
84
+ return `Te kort: verwacht dat ${issue.origin} ${adj}${issue.minimum.toString()} ${sizing.unit} bevat`;
85
+ }
86
+ return `Te kort: verwacht dat ${issue.origin} ${adj}${issue.minimum.toString()} is`;
87
+ }
88
+ case "invalid_format": {
89
+ const _issue = issue;
90
+ if (_issue.format === "starts_with") {
91
+ return `Ongeldige tekst: moet met "${_issue.prefix}" beginnen`;
92
+ }
93
+ if (_issue.format === "ends_with")
94
+ return `Ongeldige tekst: moet op "${_issue.suffix}" eindigen`;
95
+ if (_issue.format === "includes")
96
+ return `Ongeldige tekst: moet "${_issue.includes}" bevatten`;
97
+ if (_issue.format === "regex")
98
+ return `Ongeldige tekst: moet overeenkomen met patroon ${_issue.pattern}`;
99
+ return `Ongeldig: ${Nouns[_issue.format] ?? issue.format}`;
100
+ }
101
+ case "not_multiple_of":
102
+ return `Ongeldig getal: moet een veelvoud van ${issue.divisor} zijn`;
103
+ case "unrecognized_keys":
104
+ return `Onbekende key${issue.keys.length > 1 ? "s" : ""}: ${util.joinValues(issue.keys, ", ")}`;
105
+ case "invalid_key":
106
+ return `Ongeldige key in ${issue.origin}`;
107
+ case "invalid_union":
108
+ return "Ongeldige invoer";
109
+ case "invalid_element":
110
+ return `Ongeldige waarde in ${issue.origin}`;
111
+ default:
112
+ return `Ongeldige invoer`;
113
+ }
114
+ };
115
+ };
116
+ function nl () {
117
+ return {
118
+ localeError: error(),
119
+ };
120
+ }
121
+
122
+ module.exports = nl;
@@ -0,0 +1,120 @@
1
+ import { joinValues, stringifyPrimitive } from '../core/util.js';
2
+
3
+ const error = () => {
4
+ const Sizable = {
5
+ string: { unit: "tekens" },
6
+ file: { unit: "bytes" },
7
+ array: { unit: "elementen" },
8
+ set: { unit: "elementen" },
9
+ };
10
+ function getSizing(origin) {
11
+ return Sizable[origin] ?? null;
12
+ }
13
+ const parsedType = (data) => {
14
+ const t = typeof data;
15
+ switch (t) {
16
+ case "number": {
17
+ return Number.isNaN(data) ? "NaN" : "getal";
18
+ }
19
+ case "object": {
20
+ if (Array.isArray(data)) {
21
+ return "array";
22
+ }
23
+ if (data === null) {
24
+ return "null";
25
+ }
26
+ if (Object.getPrototypeOf(data) !== Object.prototype && data.constructor) {
27
+ return data.constructor.name;
28
+ }
29
+ }
30
+ }
31
+ return t;
32
+ };
33
+ const Nouns = {
34
+ regex: "invoer",
35
+ email: "emailadres",
36
+ url: "URL",
37
+ emoji: "emoji",
38
+ uuid: "UUID",
39
+ uuidv4: "UUIDv4",
40
+ uuidv6: "UUIDv6",
41
+ nanoid: "nanoid",
42
+ guid: "GUID",
43
+ cuid: "cuid",
44
+ cuid2: "cuid2",
45
+ ulid: "ULID",
46
+ xid: "XID",
47
+ ksuid: "KSUID",
48
+ datetime: "ISO datum en tijd",
49
+ date: "ISO datum",
50
+ time: "ISO tijd",
51
+ duration: "ISO duur",
52
+ ipv4: "IPv4-adres",
53
+ ipv6: "IPv6-adres",
54
+ cidrv4: "IPv4-bereik",
55
+ cidrv6: "IPv6-bereik",
56
+ base64: "base64-gecodeerde tekst",
57
+ base64url: "base64 URL-gecodeerde tekst",
58
+ json_string: "JSON string",
59
+ e164: "E.164-nummer",
60
+ jwt: "JWT",
61
+ template_literal: "invoer",
62
+ };
63
+ return (issue) => {
64
+ switch (issue.code) {
65
+ case "invalid_type":
66
+ return `Ongeldige invoer: verwacht ${issue.expected}, ontving ${parsedType(issue.input)}`;
67
+ case "invalid_value":
68
+ if (issue.values.length === 1)
69
+ return `Ongeldige invoer: verwacht ${stringifyPrimitive(issue.values[0])}`;
70
+ return `Ongeldige optie: verwacht één van ${joinValues(issue.values, "|")}`;
71
+ case "too_big": {
72
+ const adj = issue.inclusive ? "<=" : "<";
73
+ const sizing = getSizing(issue.origin);
74
+ if (sizing)
75
+ return `Te lang: verwacht dat ${issue.origin ?? "waarde"} ${adj}${issue.maximum.toString()} ${sizing.unit ?? "elementen"} bevat`;
76
+ return `Te lang: verwacht dat ${issue.origin ?? "waarde"} ${adj}${issue.maximum.toString()} is`;
77
+ }
78
+ case "too_small": {
79
+ const adj = issue.inclusive ? ">=" : ">";
80
+ const sizing = getSizing(issue.origin);
81
+ if (sizing) {
82
+ return `Te kort: verwacht dat ${issue.origin} ${adj}${issue.minimum.toString()} ${sizing.unit} bevat`;
83
+ }
84
+ return `Te kort: verwacht dat ${issue.origin} ${adj}${issue.minimum.toString()} is`;
85
+ }
86
+ case "invalid_format": {
87
+ const _issue = issue;
88
+ if (_issue.format === "starts_with") {
89
+ return `Ongeldige tekst: moet met "${_issue.prefix}" beginnen`;
90
+ }
91
+ if (_issue.format === "ends_with")
92
+ return `Ongeldige tekst: moet op "${_issue.suffix}" eindigen`;
93
+ if (_issue.format === "includes")
94
+ return `Ongeldige tekst: moet "${_issue.includes}" bevatten`;
95
+ if (_issue.format === "regex")
96
+ return `Ongeldige tekst: moet overeenkomen met patroon ${_issue.pattern}`;
97
+ return `Ongeldig: ${Nouns[_issue.format] ?? issue.format}`;
98
+ }
99
+ case "not_multiple_of":
100
+ return `Ongeldig getal: moet een veelvoud van ${issue.divisor} zijn`;
101
+ case "unrecognized_keys":
102
+ return `Onbekende key${issue.keys.length > 1 ? "s" : ""}: ${joinValues(issue.keys, ", ")}`;
103
+ case "invalid_key":
104
+ return `Ongeldige key in ${issue.origin}`;
105
+ case "invalid_union":
106
+ return "Ongeldige invoer";
107
+ case "invalid_element":
108
+ return `Ongeldige waarde in ${issue.origin}`;
109
+ default:
110
+ return `Ongeldige invoer`;
111
+ }
112
+ };
113
+ };
114
+ function nl () {
115
+ return {
116
+ localeError: error(),
117
+ };
118
+ }
119
+
120
+ export { nl as default };
@@ -0,0 +1,121 @@
1
+ 'use strict';
2
+
3
+ const util = require('../core/util.cjs');
4
+
5
+ const error = () => {
6
+ const Sizable = {
7
+ string: { unit: "tegn", verb: "å ha" },
8
+ file: { unit: "bytes", verb: "å ha" },
9
+ array: { unit: "elementer", verb: "å inneholde" },
10
+ set: { unit: "elementer", verb: "å inneholde" },
11
+ };
12
+ function getSizing(origin) {
13
+ return Sizable[origin] ?? null;
14
+ }
15
+ const parsedType = (data) => {
16
+ const t = typeof data;
17
+ switch (t) {
18
+ case "number": {
19
+ return Number.isNaN(data) ? "NaN" : "tall";
20
+ }
21
+ case "object": {
22
+ if (Array.isArray(data)) {
23
+ return "liste";
24
+ }
25
+ if (data === null) {
26
+ return "null";
27
+ }
28
+ if (Object.getPrototypeOf(data) !== Object.prototype && data.constructor) {
29
+ return data.constructor.name;
30
+ }
31
+ }
32
+ }
33
+ return t;
34
+ };
35
+ const Nouns = {
36
+ regex: "input",
37
+ email: "e-postadresse",
38
+ url: "URL",
39
+ emoji: "emoji",
40
+ uuid: "UUID",
41
+ uuidv4: "UUIDv4",
42
+ uuidv6: "UUIDv6",
43
+ nanoid: "nanoid",
44
+ guid: "GUID",
45
+ cuid: "cuid",
46
+ cuid2: "cuid2",
47
+ ulid: "ULID",
48
+ xid: "XID",
49
+ ksuid: "KSUID",
50
+ datetime: "ISO dato- og klokkeslett",
51
+ date: "ISO-dato",
52
+ time: "ISO-klokkeslett",
53
+ duration: "ISO-varighet",
54
+ ipv4: "IPv4-område",
55
+ ipv6: "IPv6-område",
56
+ cidrv4: "IPv4-spekter",
57
+ cidrv6: "IPv6-spekter",
58
+ base64: "base64-enkodet streng",
59
+ base64url: "base64url-enkodet streng",
60
+ json_string: "JSON-streng",
61
+ e164: "E.164-nummer",
62
+ jwt: "JWT",
63
+ template_literal: "input",
64
+ };
65
+ return (issue) => {
66
+ switch (issue.code) {
67
+ case "invalid_type":
68
+ return `Ugyldig input: forventet ${issue.expected}, fikk ${parsedType(issue.input)}`;
69
+ case "invalid_value":
70
+ if (issue.values.length === 1)
71
+ return `Ugyldig verdi: forventet ${util.stringifyPrimitive(issue.values[0])}`;
72
+ return `Ugyldig valg: forventet en av ${util.joinValues(issue.values, "|")}`;
73
+ case "too_big": {
74
+ const adj = issue.inclusive ? "<=" : "<";
75
+ const sizing = getSizing(issue.origin);
76
+ if (sizing)
77
+ return `For stor(t): forventet ${issue.origin ?? "value"} til å ha ${adj}${issue.maximum.toString()} ${sizing.unit ?? "elementer"}`;
78
+ return `For stor(t): forventet ${issue.origin ?? "value"} til å ha ${adj}${issue.maximum.toString()}`;
79
+ }
80
+ case "too_small": {
81
+ const adj = issue.inclusive ? ">=" : ">";
82
+ const sizing = getSizing(issue.origin);
83
+ if (sizing) {
84
+ return `For lite(n): forventet ${issue.origin} til å ha ${adj}${issue.minimum.toString()} ${sizing.unit}`;
85
+ }
86
+ return `For lite(n): forventet ${issue.origin} til å ha ${adj}${issue.minimum.toString()}`;
87
+ }
88
+ case "invalid_format": {
89
+ const _issue = issue;
90
+ if (_issue.format === "starts_with")
91
+ return `Ugyldig streng: må starte med "${_issue.prefix}"`;
92
+ if (_issue.format === "ends_with")
93
+ return `Ugyldig streng: må ende med "${_issue.suffix}"`;
94
+ if (_issue.format === "includes")
95
+ return `Ugyldig streng: må inneholde "${_issue.includes}"`;
96
+ if (_issue.format === "regex")
97
+ return `Ugyldig streng: må matche mønsteret ${_issue.pattern}`;
98
+ return `Ugyldig ${Nouns[_issue.format] ?? issue.format}`;
99
+ }
100
+ case "not_multiple_of":
101
+ return `Ugyldig tall: må være et multiplum av ${issue.divisor}`;
102
+ case "unrecognized_keys":
103
+ return `${issue.keys.length > 1 ? "Ukjente nøkler" : "Ukjent nøkkel"}: ${util.joinValues(issue.keys, ", ")}`;
104
+ case "invalid_key":
105
+ return `Ugyldig nøkkel i ${issue.origin}`;
106
+ case "invalid_union":
107
+ return "Ugyldig input";
108
+ case "invalid_element":
109
+ return `Ugyldig verdi i ${issue.origin}`;
110
+ default:
111
+ return `Ugyldig input`;
112
+ }
113
+ };
114
+ };
115
+ function no () {
116
+ return {
117
+ localeError: error(),
118
+ };
119
+ }
120
+
121
+ module.exports = no;
@@ -0,0 +1,119 @@
1
+ import { joinValues, stringifyPrimitive } from '../core/util.js';
2
+
3
+ const error = () => {
4
+ const Sizable = {
5
+ string: { unit: "tegn", verb: "å ha" },
6
+ file: { unit: "bytes", verb: "å ha" },
7
+ array: { unit: "elementer", verb: "å inneholde" },
8
+ set: { unit: "elementer", verb: "å inneholde" },
9
+ };
10
+ function getSizing(origin) {
11
+ return Sizable[origin] ?? null;
12
+ }
13
+ const parsedType = (data) => {
14
+ const t = typeof data;
15
+ switch (t) {
16
+ case "number": {
17
+ return Number.isNaN(data) ? "NaN" : "tall";
18
+ }
19
+ case "object": {
20
+ if (Array.isArray(data)) {
21
+ return "liste";
22
+ }
23
+ if (data === null) {
24
+ return "null";
25
+ }
26
+ if (Object.getPrototypeOf(data) !== Object.prototype && data.constructor) {
27
+ return data.constructor.name;
28
+ }
29
+ }
30
+ }
31
+ return t;
32
+ };
33
+ const Nouns = {
34
+ regex: "input",
35
+ email: "e-postadresse",
36
+ url: "URL",
37
+ emoji: "emoji",
38
+ uuid: "UUID",
39
+ uuidv4: "UUIDv4",
40
+ uuidv6: "UUIDv6",
41
+ nanoid: "nanoid",
42
+ guid: "GUID",
43
+ cuid: "cuid",
44
+ cuid2: "cuid2",
45
+ ulid: "ULID",
46
+ xid: "XID",
47
+ ksuid: "KSUID",
48
+ datetime: "ISO dato- og klokkeslett",
49
+ date: "ISO-dato",
50
+ time: "ISO-klokkeslett",
51
+ duration: "ISO-varighet",
52
+ ipv4: "IPv4-område",
53
+ ipv6: "IPv6-område",
54
+ cidrv4: "IPv4-spekter",
55
+ cidrv6: "IPv6-spekter",
56
+ base64: "base64-enkodet streng",
57
+ base64url: "base64url-enkodet streng",
58
+ json_string: "JSON-streng",
59
+ e164: "E.164-nummer",
60
+ jwt: "JWT",
61
+ template_literal: "input",
62
+ };
63
+ return (issue) => {
64
+ switch (issue.code) {
65
+ case "invalid_type":
66
+ return `Ugyldig input: forventet ${issue.expected}, fikk ${parsedType(issue.input)}`;
67
+ case "invalid_value":
68
+ if (issue.values.length === 1)
69
+ return `Ugyldig verdi: forventet ${stringifyPrimitive(issue.values[0])}`;
70
+ return `Ugyldig valg: forventet en av ${joinValues(issue.values, "|")}`;
71
+ case "too_big": {
72
+ const adj = issue.inclusive ? "<=" : "<";
73
+ const sizing = getSizing(issue.origin);
74
+ if (sizing)
75
+ return `For stor(t): forventet ${issue.origin ?? "value"} til å ha ${adj}${issue.maximum.toString()} ${sizing.unit ?? "elementer"}`;
76
+ return `For stor(t): forventet ${issue.origin ?? "value"} til å ha ${adj}${issue.maximum.toString()}`;
77
+ }
78
+ case "too_small": {
79
+ const adj = issue.inclusive ? ">=" : ">";
80
+ const sizing = getSizing(issue.origin);
81
+ if (sizing) {
82
+ return `For lite(n): forventet ${issue.origin} til å ha ${adj}${issue.minimum.toString()} ${sizing.unit}`;
83
+ }
84
+ return `For lite(n): forventet ${issue.origin} til å ha ${adj}${issue.minimum.toString()}`;
85
+ }
86
+ case "invalid_format": {
87
+ const _issue = issue;
88
+ if (_issue.format === "starts_with")
89
+ return `Ugyldig streng: må starte med "${_issue.prefix}"`;
90
+ if (_issue.format === "ends_with")
91
+ return `Ugyldig streng: må ende med "${_issue.suffix}"`;
92
+ if (_issue.format === "includes")
93
+ return `Ugyldig streng: må inneholde "${_issue.includes}"`;
94
+ if (_issue.format === "regex")
95
+ return `Ugyldig streng: må matche mønsteret ${_issue.pattern}`;
96
+ return `Ugyldig ${Nouns[_issue.format] ?? issue.format}`;
97
+ }
98
+ case "not_multiple_of":
99
+ return `Ugyldig tall: må være et multiplum av ${issue.divisor}`;
100
+ case "unrecognized_keys":
101
+ return `${issue.keys.length > 1 ? "Ukjente nøkler" : "Ukjent nøkkel"}: ${joinValues(issue.keys, ", ")}`;
102
+ case "invalid_key":
103
+ return `Ugyldig nøkkel i ${issue.origin}`;
104
+ case "invalid_union":
105
+ return "Ugyldig input";
106
+ case "invalid_element":
107
+ return `Ugyldig verdi i ${issue.origin}`;
108
+ default:
109
+ return `Ugyldig input`;
110
+ }
111
+ };
112
+ };
113
+ function no () {
114
+ return {
115
+ localeError: error(),
116
+ };
117
+ }
118
+
119
+ export { no as default };