@evolu/common 8.8.0 → 8.10.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 (242) hide show
  1. package/dist/src/Assert.d.ts +21 -1
  2. package/dist/src/Assert.d.ts.map +1 -1
  3. package/dist/src/Assert.js +31 -27
  4. package/dist/src/Bytes.d.ts +647 -0
  5. package/dist/src/Bytes.d.ts.map +1 -0
  6. package/dist/src/{Binary.js → Bytes.js} +266 -16
  7. package/dist/src/Config.d.ts +142 -0
  8. package/dist/src/Config.d.ts.map +1 -0
  9. package/dist/src/Config.js +181 -0
  10. package/dist/src/Fs.d.ts +302 -0
  11. package/dist/src/Fs.d.ts.map +1 -0
  12. package/dist/src/Fs.js +111 -0
  13. package/dist/src/Number.d.ts +50 -7
  14. package/dist/src/Number.d.ts.map +1 -1
  15. package/dist/src/Number.js +47 -8
  16. package/dist/src/Object.d.ts +32 -0
  17. package/dist/src/Object.d.ts.map +1 -1
  18. package/dist/src/Object.js +41 -0
  19. package/dist/src/Polyfills.d.ts +6 -0
  20. package/dist/src/Polyfills.d.ts.map +1 -1
  21. package/dist/src/Polyfills.js +6 -0
  22. package/dist/src/Sqlite.js +1 -1
  23. package/dist/src/Time.d.ts +74 -12
  24. package/dist/src/Time.d.ts.map +1 -1
  25. package/dist/src/Time.js +40 -2
  26. package/dist/src/Type.d.ts +1451 -79
  27. package/dist/src/Type.d.ts.map +1 -1
  28. package/dist/src/Type.js +1303 -96
  29. package/dist/src/index.d.ts +3 -1
  30. package/dist/src/index.d.ts.map +1 -1
  31. package/dist/src/index.js +3 -1
  32. package/dist/src/intl/_en.d.ts +24 -1
  33. package/dist/src/intl/_en.d.ts.map +1 -1
  34. package/dist/src/intl/_en.js +20 -0
  35. package/dist/src/intl/ar.d.ts +24 -1
  36. package/dist/src/intl/ar.d.ts.map +1 -1
  37. package/dist/src/intl/ar.js +20 -0
  38. package/dist/src/intl/bn.d.ts +24 -1
  39. package/dist/src/intl/bn.d.ts.map +1 -1
  40. package/dist/src/intl/bn.js +20 -0
  41. package/dist/src/intl/ca.d.ts +24 -1
  42. package/dist/src/intl/ca.d.ts.map +1 -1
  43. package/dist/src/intl/ca.js +20 -0
  44. package/dist/src/intl/cs.d.ts +24 -1
  45. package/dist/src/intl/cs.d.ts.map +1 -1
  46. package/dist/src/intl/cs.js +20 -0
  47. package/dist/src/intl/da.d.ts +24 -1
  48. package/dist/src/intl/da.d.ts.map +1 -1
  49. package/dist/src/intl/da.js +20 -0
  50. package/dist/src/intl/de.d.ts +24 -1
  51. package/dist/src/intl/de.d.ts.map +1 -1
  52. package/dist/src/intl/de.js +20 -0
  53. package/dist/src/intl/el.d.ts +24 -1
  54. package/dist/src/intl/el.d.ts.map +1 -1
  55. package/dist/src/intl/el.js +20 -0
  56. package/dist/src/intl/es.d.ts +24 -1
  57. package/dist/src/intl/es.d.ts.map +1 -1
  58. package/dist/src/intl/es.js +20 -0
  59. package/dist/src/intl/fa.d.ts +24 -1
  60. package/dist/src/intl/fa.d.ts.map +1 -1
  61. package/dist/src/intl/fa.js +20 -0
  62. package/dist/src/intl/fi.d.ts +24 -1
  63. package/dist/src/intl/fi.d.ts.map +1 -1
  64. package/dist/src/intl/fi.js +20 -0
  65. package/dist/src/intl/fil.d.ts +24 -1
  66. package/dist/src/intl/fil.d.ts.map +1 -1
  67. package/dist/src/intl/fil.js +20 -0
  68. package/dist/src/intl/fr.d.ts +24 -1
  69. package/dist/src/intl/fr.d.ts.map +1 -1
  70. package/dist/src/intl/fr.js +20 -0
  71. package/dist/src/intl/he.d.ts +24 -1
  72. package/dist/src/intl/he.d.ts.map +1 -1
  73. package/dist/src/intl/he.js +20 -0
  74. package/dist/src/intl/hi.d.ts +24 -1
  75. package/dist/src/intl/hi.d.ts.map +1 -1
  76. package/dist/src/intl/hi.js +20 -0
  77. package/dist/src/intl/hr.d.ts +24 -1
  78. package/dist/src/intl/hr.d.ts.map +1 -1
  79. package/dist/src/intl/hr.js +20 -0
  80. package/dist/src/intl/hu.d.ts +22 -1
  81. package/dist/src/intl/hu.d.ts.map +1 -1
  82. package/dist/src/intl/hu.js +18 -0
  83. package/dist/src/intl/id.d.ts +24 -1
  84. package/dist/src/intl/id.d.ts.map +1 -1
  85. package/dist/src/intl/id.js +20 -0
  86. package/dist/src/intl/it.d.ts +24 -1
  87. package/dist/src/intl/it.d.ts.map +1 -1
  88. package/dist/src/intl/it.js +20 -0
  89. package/dist/src/intl/ja.d.ts +24 -1
  90. package/dist/src/intl/ja.d.ts.map +1 -1
  91. package/dist/src/intl/ja.js +20 -0
  92. package/dist/src/intl/ko.d.ts +24 -1
  93. package/dist/src/intl/ko.d.ts.map +1 -1
  94. package/dist/src/intl/ko.js +20 -0
  95. package/dist/src/intl/ml.d.ts +24 -1
  96. package/dist/src/intl/ml.d.ts.map +1 -1
  97. package/dist/src/intl/ml.js +20 -0
  98. package/dist/src/intl/mr.d.ts +24 -1
  99. package/dist/src/intl/mr.d.ts.map +1 -1
  100. package/dist/src/intl/mr.js +20 -0
  101. package/dist/src/intl/ms.d.ts +24 -1
  102. package/dist/src/intl/ms.d.ts.map +1 -1
  103. package/dist/src/intl/ms.js +20 -0
  104. package/dist/src/intl/nb.d.ts +22 -1
  105. package/dist/src/intl/nb.d.ts.map +1 -1
  106. package/dist/src/intl/nb.js +18 -0
  107. package/dist/src/intl/nl.d.ts +24 -1
  108. package/dist/src/intl/nl.d.ts.map +1 -1
  109. package/dist/src/intl/nl.js +20 -0
  110. package/dist/src/intl/pa.d.ts +24 -1
  111. package/dist/src/intl/pa.d.ts.map +1 -1
  112. package/dist/src/intl/pa.js +20 -0
  113. package/dist/src/intl/pl.d.ts +23 -0
  114. package/dist/src/intl/pl.d.ts.map +1 -1
  115. package/dist/src/intl/pl.js +20 -0
  116. package/dist/src/intl/pt-BR.d.ts +24 -1
  117. package/dist/src/intl/pt-BR.d.ts.map +1 -1
  118. package/dist/src/intl/pt-BR.js +20 -0
  119. package/dist/src/intl/pt.d.ts +24 -1
  120. package/dist/src/intl/pt.d.ts.map +1 -1
  121. package/dist/src/intl/pt.js +20 -0
  122. package/dist/src/intl/ro.d.ts +24 -1
  123. package/dist/src/intl/ro.d.ts.map +1 -1
  124. package/dist/src/intl/ro.js +20 -0
  125. package/dist/src/intl/sk.d.ts +24 -1
  126. package/dist/src/intl/sk.d.ts.map +1 -1
  127. package/dist/src/intl/sk.js +20 -0
  128. package/dist/src/intl/sl.d.ts +24 -1
  129. package/dist/src/intl/sl.d.ts.map +1 -1
  130. package/dist/src/intl/sl.js +20 -0
  131. package/dist/src/intl/sv.d.ts +24 -1
  132. package/dist/src/intl/sv.d.ts.map +1 -1
  133. package/dist/src/intl/sv.js +20 -0
  134. package/dist/src/intl/sw.d.ts +21 -0
  135. package/dist/src/intl/sw.d.ts.map +1 -1
  136. package/dist/src/intl/sw.js +18 -0
  137. package/dist/src/intl/ta.d.ts +24 -1
  138. package/dist/src/intl/ta.d.ts.map +1 -1
  139. package/dist/src/intl/ta.js +20 -0
  140. package/dist/src/intl/te.d.ts +24 -1
  141. package/dist/src/intl/te.d.ts.map +1 -1
  142. package/dist/src/intl/te.js +20 -0
  143. package/dist/src/intl/th.d.ts +24 -1
  144. package/dist/src/intl/th.d.ts.map +1 -1
  145. package/dist/src/intl/th.js +20 -0
  146. package/dist/src/intl/tr.d.ts +24 -1
  147. package/dist/src/intl/tr.d.ts.map +1 -1
  148. package/dist/src/intl/tr.js +20 -0
  149. package/dist/src/intl/uk.d.ts +80 -57
  150. package/dist/src/intl/uk.d.ts.map +1 -1
  151. package/dist/src/intl/uk.js +174 -149
  152. package/dist/src/intl/ur.d.ts +24 -1
  153. package/dist/src/intl/ur.d.ts.map +1 -1
  154. package/dist/src/intl/ur.js +20 -0
  155. package/dist/src/intl/vi.d.ts +24 -1
  156. package/dist/src/intl/vi.d.ts.map +1 -1
  157. package/dist/src/intl/vi.js +20 -0
  158. package/dist/src/intl/zh-CN.d.ts +24 -1
  159. package/dist/src/intl/zh-CN.d.ts.map +1 -1
  160. package/dist/src/intl/zh-CN.js +20 -0
  161. package/dist/src/intl/zh-TW.d.ts +24 -1
  162. package/dist/src/intl/zh-TW.d.ts.map +1 -1
  163. package/dist/src/intl/zh-TW.js +20 -0
  164. package/dist/src/local-first/Protocol.d.ts +1 -1
  165. package/dist/src/local-first/Protocol.d.ts.map +1 -1
  166. package/dist/src/local-first/Protocol.js +1 -1
  167. package/dist/src/local-first/Schema.d.ts +10 -0
  168. package/dist/src/local-first/Schema.d.ts.map +1 -1
  169. package/dist/src/local-first/Storage.js +1 -1
  170. package/dist/src/local-first/Timestamp.js +1 -1
  171. package/package.json +1 -1
  172. package/src/Assert.test.ts +51 -0
  173. package/src/Assert.ts +56 -4
  174. package/src/{Binary.test.ts → Bytes.test.ts} +286 -1
  175. package/src/{Binary.ts → Bytes.ts} +652 -21
  176. package/src/Config.test.ts +672 -0
  177. package/src/Config.ts +410 -0
  178. package/src/Fs.test.ts +105 -0
  179. package/src/Fs.ts +414 -0
  180. package/src/Number.test.ts +82 -18
  181. package/src/Number.ts +76 -8
  182. package/src/Object.test.ts +115 -1
  183. package/src/Object.ts +44 -0
  184. package/src/Polyfills.ts +6 -0
  185. package/src/Sqlite.ts +1 -1
  186. package/src/Time.test.ts +82 -11
  187. package/src/Time.ts +141 -16
  188. package/src/Type.test.ts +3114 -157
  189. package/src/Type.ts +2553 -196
  190. package/src/index.ts +3 -1
  191. package/src/intl/_en.ts +70 -0
  192. package/src/intl/ar.ts +71 -0
  193. package/src/intl/bn.ts +70 -0
  194. package/src/intl/ca.ts +70 -0
  195. package/src/intl/cs.ts +70 -0
  196. package/src/intl/da.ts +70 -0
  197. package/src/intl/de.ts +70 -0
  198. package/src/intl/el.ts +70 -0
  199. package/src/intl/es.ts +70 -0
  200. package/src/intl/fa.ts +70 -0
  201. package/src/intl/fi.ts +70 -0
  202. package/src/intl/fil.ts +70 -0
  203. package/src/intl/fr.ts +70 -0
  204. package/src/intl/he.ts +70 -0
  205. package/src/intl/hi.ts +70 -0
  206. package/src/intl/hr.ts +70 -0
  207. package/src/intl/hu.ts +69 -0
  208. package/src/intl/id.ts +70 -0
  209. package/src/intl/intl.test.ts +819 -1
  210. package/src/intl/it.ts +70 -0
  211. package/src/intl/ja.ts +70 -0
  212. package/src/intl/ko.ts +68 -0
  213. package/src/intl/ml.ts +70 -0
  214. package/src/intl/mr.ts +70 -0
  215. package/src/intl/ms.ts +71 -0
  216. package/src/intl/nb.ts +69 -0
  217. package/src/intl/nl.ts +70 -0
  218. package/src/intl/pa.ts +70 -0
  219. package/src/intl/pl.ts +63 -0
  220. package/src/intl/pt-BR.ts +70 -0
  221. package/src/intl/pt.ts +71 -0
  222. package/src/intl/ro.ts +70 -0
  223. package/src/intl/sk.ts +71 -0
  224. package/src/intl/sl.ts +70 -0
  225. package/src/intl/sv.ts +70 -0
  226. package/src/intl/sw.ts +62 -0
  227. package/src/intl/ta.ts +70 -0
  228. package/src/intl/te.ts +70 -0
  229. package/src/intl/th.ts +68 -0
  230. package/src/intl/tr.ts +70 -0
  231. package/src/intl/uk.ts +228 -155
  232. package/src/intl/ur.ts +70 -0
  233. package/src/intl/vi.ts +70 -0
  234. package/src/intl/zh-CN.ts +68 -0
  235. package/src/intl/zh-TW.ts +68 -0
  236. package/src/local-first/Protocol.test.ts +1 -1
  237. package/src/local-first/Protocol.ts +1 -1
  238. package/src/local-first/Schema.ts +11 -0
  239. package/src/local-first/Storage.ts +1 -1
  240. package/src/local-first/Timestamp.ts +1 -1
  241. package/dist/src/Binary.d.ts +0 -254
  242. package/dist/src/Binary.d.ts.map +0 -1
package/src/intl/da.ts CHANGED
@@ -4,13 +4,21 @@
4
4
  * @module
5
5
  */
6
6
 
7
+ import type { DurationLiteralError } from "../Time.ts";
8
+ import type { PercentageLiteralError } from "../Number.ts";
9
+ import type { ByteSizeLiteralError } from "../Bytes.ts";
7
10
  import { assertNonNullable } from "../Assert.ts";
8
11
  import { safelyStringifyUnknownValue } from "../String.ts";
9
12
  import type {
10
13
  ArrayError,
11
14
  Base64UrlError,
15
+ BooleanFromStringError,
12
16
  BetweenError,
17
+ IdentifierError,
13
18
  CapitalizedError,
19
+ UncapitalizedError,
20
+ UppercasedError,
21
+ LowercasedError,
14
22
  DateIsoError,
15
23
  DateIsoFromDateError,
16
24
  DecimalStringError,
@@ -23,6 +31,7 @@ import type {
23
31
  Int64Error,
24
32
  Int64StringError,
25
33
  IntError,
34
+ IntFromStringError,
26
35
  IdError,
27
36
  JsonError,
28
37
  JsonValueError,
@@ -56,6 +65,7 @@ import type {
56
65
  SetError,
57
66
  TableIdError,
58
67
  TemplateLiteralError,
68
+ StartsWithError,
59
69
  TrimmedError,
60
70
  TupleElementsError,
61
71
  TupleError,
@@ -110,6 +120,12 @@ export const formatBigIntError: TypeErrorFormatter<TypeOfError<"BigInt">> =
110
120
  export const formatBooleanError: TypeErrorFormatter<TypeOfError<"Boolean">> =
111
121
  formatTypeOfError;
112
122
 
123
+ /** Formaterer BooleanFromStringError på dansk. */
124
+ export const formatBooleanFromStringError: TypeErrorFormatter<
125
+ BooleanFromStringError
126
+ > = (error) =>
127
+ `Værdien ${safelyStringifyUnknownValue(error.value)} er ikke en boolesk værdi. Brug true eller false.`;
128
+
113
129
  /** Formaterer Symbol TypeOfError på dansk. */
114
130
  export const formatSymbolError: TypeErrorFormatter<TypeOfError<"Symbol">> =
115
131
  formatTypeOfError;
@@ -173,16 +189,46 @@ export const formatInt64StringError: TypeErrorFormatter<Int64StringError> = (
173
189
  ) =>
174
190
  `Værdien ${safelyStringifyUnknownValue(error.value)} er ikke en gyldig Int64-streng.`;
175
191
 
192
+ /** Formats an IdentifierError in Danish. */
193
+ export const formatIdentifierError: TypeErrorFormatter<IdentifierError> = (
194
+ error,
195
+ ) =>
196
+ `Værdien ${safelyStringifyUnknownValue(error.value)} er ikke en ${error.casing}-identifikator.`;
197
+
176
198
  /** Formaterer CapitalizedError på dansk. */
177
199
  export const formatCapitalizedError: TypeErrorFormatter<CapitalizedError> = (
178
200
  error,
179
201
  ) =>
180
202
  `Værdien ${safelyStringifyUnknownValue(error.value)} skal begynde med stort bogstav.`;
181
203
 
204
+ /** Formats an UncapitalizedError in Danish. */
205
+ export const formatUncapitalizedError: TypeErrorFormatter<
206
+ UncapitalizedError
207
+ > = (error) =>
208
+ `Værdien ${safelyStringifyUnknownValue(error.value)} må ikke begynde med et stort bogstav.`;
209
+
210
+ /** Formats an UppercasedError in Danish. */
211
+ export const formatUppercasedError: TypeErrorFormatter<UppercasedError> = (
212
+ error,
213
+ ) =>
214
+ `Værdien ${safelyStringifyUnknownValue(error.value)} skal være skrevet med store bogstaver.`;
215
+
216
+ /** Formats a LowercasedError in Danish. */
217
+ export const formatLowercasedError: TypeErrorFormatter<LowercasedError> = (
218
+ error,
219
+ ) =>
220
+ `Værdien ${safelyStringifyUnknownValue(error.value)} skal være skrevet med små bogstaver.`;
221
+
182
222
  /** Formaterer TrimmedError på dansk. */
183
223
  export const formatTrimmedError: TypeErrorFormatter<TrimmedError> = (error) =>
184
224
  `Værdien ${safelyStringifyUnknownValue(error.value)} skal være trimmet.`;
185
225
 
226
+ /** Formats a StartsWithError in Danish. */
227
+ export const formatStartsWithError: TypeErrorFormatter<StartsWithError> = (
228
+ error,
229
+ ) =>
230
+ `Værdien ${safelyStringifyUnknownValue(error.value)} skal starte med ${safelyStringifyUnknownValue(error.prefix)}.`;
231
+
186
232
  /** Formaterer MinLengthError på dansk. */
187
233
  export const formatMinLengthError: TypeErrorFormatter<MinLengthError> = (
188
234
  error,
@@ -273,6 +319,12 @@ export const formatNegativeDecimalStringError: TypeErrorFormatter<
273
319
  export const formatIntError: TypeErrorFormatter<IntError> = (error) =>
274
320
  `Værdien ${safelyStringifyUnknownValue(error.value)} skal være et sikkert heltal.`;
275
321
 
322
+ /** Formaterer IntFromStringError på dansk. */
323
+ export const formatIntFromStringError: TypeErrorFormatter<
324
+ IntFromStringError
325
+ > = (error) =>
326
+ `Værdien ${safelyStringifyUnknownValue(error.value)} er ikke et decimalt heltal.`;
327
+
276
328
  /** Formaterer GreaterThanError på dansk. */
277
329
  export const formatGreaterThanError: TypeErrorFormatter<GreaterThanError> = (
278
330
  error,
@@ -501,3 +553,21 @@ export const formatJsonValueError: TypeErrorFormatter<JsonValueError> = (
501
553
  /** Formaterer JsonError på dansk. */
502
554
  export const formatJsonError: TypeErrorFormatter<JsonError> = (error) =>
503
555
  `Værdien ${safelyStringifyUnknownValue(error.value)} kan ikke parses til en JsonValue.`;
556
+
557
+ /** Formats a {@link ByteSizeLiteralError}. */
558
+ export const formatByteSizeLiteralError: TypeErrorFormatter<
559
+ ByteSizeLiteralError
560
+ > = (error) =>
561
+ `Værdien ${safelyStringifyUnknownValue(error.value)} er ikke en literal for en størrelse i bytes. Brug en værdi som "512KiB" eller "1MiB".`;
562
+
563
+ /** Formats a {@link DurationLiteralError}. */
564
+ export const formatDurationLiteralError: TypeErrorFormatter<
565
+ DurationLiteralError
566
+ > = (error) =>
567
+ `Værdien ${safelyStringifyUnknownValue(error.value)} er ikke en varighedsliteral. Brug en værdi som "500ms" eller "1.5s".`;
568
+
569
+ /** Formats a {@link PercentageLiteralError}. */
570
+ export const formatPercentageLiteralError: TypeErrorFormatter<
571
+ PercentageLiteralError
572
+ > = (error) =>
573
+ `Værdien ${safelyStringifyUnknownValue(error.value)} er ikke en procentliteral. Brug en værdi som "50%" eller "12.5%".`;
package/src/intl/de.ts CHANGED
@@ -4,13 +4,21 @@
4
4
  * @module
5
5
  */
6
6
 
7
+ import type { DurationLiteralError } from "../Time.ts";
8
+ import type { PercentageLiteralError } from "../Number.ts";
9
+ import type { ByteSizeLiteralError } from "../Bytes.ts";
7
10
  import { assertNonNullable } from "../Assert.ts";
8
11
  import { safelyStringifyUnknownValue } from "../String.ts";
9
12
  import type {
10
13
  ArrayError,
11
14
  Base64UrlError,
15
+ BooleanFromStringError,
12
16
  BetweenError,
17
+ IdentifierError,
13
18
  CapitalizedError,
19
+ UncapitalizedError,
20
+ UppercasedError,
21
+ LowercasedError,
14
22
  DateIsoError,
15
23
  DateIsoFromDateError,
16
24
  DecimalStringError,
@@ -23,6 +31,7 @@ import type {
23
31
  Int64Error,
24
32
  Int64StringError,
25
33
  IntError,
34
+ IntFromStringError,
26
35
  IdError,
27
36
  JsonError,
28
37
  JsonValueError,
@@ -56,6 +65,7 @@ import type {
56
65
  SetError,
57
66
  TableIdError,
58
67
  TemplateLiteralError,
68
+ StartsWithError,
59
69
  TrimmedError,
60
70
  TupleElementsError,
61
71
  TupleError,
@@ -110,6 +120,12 @@ export const formatBigIntError: TypeErrorFormatter<TypeOfError<"BigInt">> =
110
120
  export const formatBooleanError: TypeErrorFormatter<TypeOfError<"Boolean">> =
111
121
  formatTypeOfError;
112
122
 
123
+ /** Formatiert BooleanFromStringError auf Deutsch. */
124
+ export const formatBooleanFromStringError: TypeErrorFormatter<
125
+ BooleanFromStringError
126
+ > = (error) =>
127
+ `Der Wert ${safelyStringifyUnknownValue(error.value)} ist kein boolescher Wert. Verwenden Sie true oder false.`;
128
+
113
129
  /** Formatiert einen Symbol-TypeOfError auf Deutsch. */
114
130
  export const formatSymbolError: TypeErrorFormatter<TypeOfError<"Symbol">> =
115
131
  formatTypeOfError;
@@ -173,16 +189,46 @@ export const formatInt64StringError: TypeErrorFormatter<Int64StringError> = (
173
189
  ) =>
174
190
  `Der Wert ${safelyStringifyUnknownValue(error.value)} ist kein gültiger Int64-String.`;
175
191
 
192
+ /** Formats an IdentifierError in German. */
193
+ export const formatIdentifierError: TypeErrorFormatter<IdentifierError> = (
194
+ error,
195
+ ) =>
196
+ `Der Wert ${safelyStringifyUnknownValue(error.value)} ist kein ${error.casing}-Bezeichner.`;
197
+
176
198
  /** Formatiert CapitalizedError auf Deutsch. */
177
199
  export const formatCapitalizedError: TypeErrorFormatter<CapitalizedError> = (
178
200
  error,
179
201
  ) =>
180
202
  `Der Wert ${safelyStringifyUnknownValue(error.value)} muss mit einem Großbuchstaben beginnen.`;
181
203
 
204
+ /** Formats an UncapitalizedError in German. */
205
+ export const formatUncapitalizedError: TypeErrorFormatter<
206
+ UncapitalizedError
207
+ > = (error) =>
208
+ `Der Wert ${safelyStringifyUnknownValue(error.value)} darf nicht mit einem Großbuchstaben beginnen.`;
209
+
210
+ /** Formats an UppercasedError in German. */
211
+ export const formatUppercasedError: TypeErrorFormatter<UppercasedError> = (
212
+ error,
213
+ ) =>
214
+ `Der Wert ${safelyStringifyUnknownValue(error.value)} muss in Großbuchstaben geschrieben sein.`;
215
+
216
+ /** Formats a LowercasedError in German. */
217
+ export const formatLowercasedError: TypeErrorFormatter<LowercasedError> = (
218
+ error,
219
+ ) =>
220
+ `Der Wert ${safelyStringifyUnknownValue(error.value)} muss in Kleinbuchstaben geschrieben sein.`;
221
+
182
222
  /** Formatiert TrimmedError auf Deutsch. */
183
223
  export const formatTrimmedError: TypeErrorFormatter<TrimmedError> = (error) =>
184
224
  `Der Wert ${safelyStringifyUnknownValue(error.value)} muss getrimmt sein.`;
185
225
 
226
+ /** Formats a StartsWithError in German. */
227
+ export const formatStartsWithError: TypeErrorFormatter<StartsWithError> = (
228
+ error,
229
+ ) =>
230
+ `Der Wert ${safelyStringifyUnknownValue(error.value)} muss mit ${safelyStringifyUnknownValue(error.prefix)} beginnen.`;
231
+
186
232
  /** Formatiert MinLengthError auf Deutsch. */
187
233
  export const formatMinLengthError: TypeErrorFormatter<MinLengthError> = (
188
234
  error,
@@ -273,6 +319,12 @@ export const formatNegativeDecimalStringError: TypeErrorFormatter<
273
319
  export const formatIntError: TypeErrorFormatter<IntError> = (error) =>
274
320
  `Der Wert ${safelyStringifyUnknownValue(error.value)} muss eine sichere Ganzzahl sein.`;
275
321
 
322
+ /** Formatiert IntFromStringError auf Deutsch. */
323
+ export const formatIntFromStringError: TypeErrorFormatter<
324
+ IntFromStringError
325
+ > = (error) =>
326
+ `Der Wert ${safelyStringifyUnknownValue(error.value)} ist keine dezimale Ganzzahl.`;
327
+
276
328
  /** Formatiert GreaterThanError auf Deutsch. */
277
329
  export const formatGreaterThanError: TypeErrorFormatter<GreaterThanError> = (
278
330
  error,
@@ -501,3 +553,21 @@ export const formatJsonValueError: TypeErrorFormatter<JsonValueError> = (
501
553
  /** Formatiert JsonError auf Deutsch. */
502
554
  export const formatJsonError: TypeErrorFormatter<JsonError> = (error) =>
503
555
  `Der Wert ${safelyStringifyUnknownValue(error.value)} kann nicht in einen JsonValue geparst werden.`;
556
+
557
+ /** Formats a {@link ByteSizeLiteralError}. */
558
+ export const formatByteSizeLiteralError: TypeErrorFormatter<
559
+ ByteSizeLiteralError
560
+ > = (error) =>
561
+ `Der Wert ${safelyStringifyUnknownValue(error.value)} ist kein Byte-Größenliteral. Verwenden Sie einen Wert wie "512KiB" oder "1MiB".`;
562
+
563
+ /** Formats a {@link DurationLiteralError}. */
564
+ export const formatDurationLiteralError: TypeErrorFormatter<
565
+ DurationLiteralError
566
+ > = (error) =>
567
+ `Der Wert ${safelyStringifyUnknownValue(error.value)} ist kein Dauerliteral. Verwenden Sie einen Wert wie "500ms" oder "1.5s".`;
568
+
569
+ /** Formats a {@link PercentageLiteralError}. */
570
+ export const formatPercentageLiteralError: TypeErrorFormatter<
571
+ PercentageLiteralError
572
+ > = (error) =>
573
+ `Der Wert ${safelyStringifyUnknownValue(error.value)} ist kein Prozentliteral. Verwenden Sie einen Wert wie "50%" oder "12.5%".`;
package/src/intl/el.ts CHANGED
@@ -4,13 +4,21 @@
4
4
  * @module
5
5
  */
6
6
 
7
+ import type { DurationLiteralError } from "../Time.ts";
8
+ import type { PercentageLiteralError } from "../Number.ts";
9
+ import type { ByteSizeLiteralError } from "../Bytes.ts";
7
10
  import { assertNonNullable } from "../Assert.ts";
8
11
  import { safelyStringifyUnknownValue } from "../String.ts";
9
12
  import type {
10
13
  ArrayError,
11
14
  Base64UrlError,
15
+ BooleanFromStringError,
12
16
  BetweenError,
17
+ IdentifierError,
13
18
  CapitalizedError,
19
+ UncapitalizedError,
20
+ UppercasedError,
21
+ LowercasedError,
14
22
  DateIsoError,
15
23
  DateIsoFromDateError,
16
24
  DecimalStringError,
@@ -23,6 +31,7 @@ import type {
23
31
  Int64Error,
24
32
  Int64StringError,
25
33
  IntError,
34
+ IntFromStringError,
26
35
  IdError,
27
36
  JsonError,
28
37
  JsonValueError,
@@ -56,6 +65,7 @@ import type {
56
65
  SetError,
57
66
  TableIdError,
58
67
  TemplateLiteralError,
68
+ StartsWithError,
59
69
  TrimmedError,
60
70
  TupleElementsError,
61
71
  TupleError,
@@ -117,6 +127,12 @@ export const formatBigIntError: TypeErrorFormatter<TypeOfError<"BigInt">> =
117
127
  export const formatBooleanError: TypeErrorFormatter<TypeOfError<"Boolean">> =
118
128
  formatTypeOfError;
119
129
 
130
+ /** Formats a BooleanFromStringError in Greek. */
131
+ export const formatBooleanFromStringError: TypeErrorFormatter<
132
+ BooleanFromStringError
133
+ > = (error) =>
134
+ `Η τιμή ${safelyStringifyUnknownValue(error.value)} δεν είναι λογική τιμή. Χρησιμοποιήστε true ή false.`;
135
+
120
136
  /** Formats a Symbol TypeOfError in Greek. */
121
137
  export const formatSymbolError: TypeErrorFormatter<TypeOfError<"Symbol">> =
122
138
  formatTypeOfError;
@@ -179,16 +195,46 @@ export const formatInt64StringError: TypeErrorFormatter<Int64StringError> = (
179
195
  ) =>
180
196
  `Η τιμή ${safelyStringifyUnknownValue(error.value)} δεν είναι έγκυρη συμβολοσειρά Int64.`;
181
197
 
198
+ /** Formats an IdentifierError in Greek. */
199
+ export const formatIdentifierError: TypeErrorFormatter<IdentifierError> = (
200
+ error,
201
+ ) =>
202
+ `Η τιμή ${safelyStringifyUnknownValue(error.value)} δεν είναι αναγνωριστικό ${error.casing}.`;
203
+
182
204
  /** Formats a CapitalizedError in Greek. */
183
205
  export const formatCapitalizedError: TypeErrorFormatter<CapitalizedError> = (
184
206
  error,
185
207
  ) =>
186
208
  `Η τιμή ${safelyStringifyUnknownValue(error.value)} πρέπει να αρχίζει με κεφαλαίο γράμμα.`;
187
209
 
210
+ /** Formats an UncapitalizedError in Greek. */
211
+ export const formatUncapitalizedError: TypeErrorFormatter<
212
+ UncapitalizedError
213
+ > = (error) =>
214
+ `Η τιμή ${safelyStringifyUnknownValue(error.value)} δεν πρέπει να αρχίζει με κεφαλαίο γράμμα.`;
215
+
216
+ /** Formats an UppercasedError in Greek. */
217
+ export const formatUppercasedError: TypeErrorFormatter<UppercasedError> = (
218
+ error,
219
+ ) =>
220
+ `Η τιμή ${safelyStringifyUnknownValue(error.value)} πρέπει να είναι με κεφαλαία γράμματα.`;
221
+
222
+ /** Formats a LowercasedError in Greek. */
223
+ export const formatLowercasedError: TypeErrorFormatter<LowercasedError> = (
224
+ error,
225
+ ) =>
226
+ `Η τιμή ${safelyStringifyUnknownValue(error.value)} πρέπει να είναι με πεζά γράμματα.`;
227
+
188
228
  /** Formats a TrimmedError in Greek. */
189
229
  export const formatTrimmedError: TypeErrorFormatter<TrimmedError> = (error) =>
190
230
  `Η τιμή ${safelyStringifyUnknownValue(error.value)} πρέπει να μην έχει κενά στην αρχή ή στο τέλος.`;
191
231
 
232
+ /** Formats a StartsWithError in Greek. */
233
+ export const formatStartsWithError: TypeErrorFormatter<StartsWithError> = (
234
+ error,
235
+ ) =>
236
+ `Η τιμή ${safelyStringifyUnknownValue(error.value)} πρέπει να ξεκινά με ${safelyStringifyUnknownValue(error.prefix)}.`;
237
+
192
238
  /** Formats a MinLengthError in Greek. */
193
239
  export const formatMinLengthError: TypeErrorFormatter<MinLengthError> = (
194
240
  error,
@@ -279,6 +325,12 @@ export const formatNegativeDecimalStringError: TypeErrorFormatter<
279
325
  export const formatIntError: TypeErrorFormatter<IntError> = (error) =>
280
326
  `Η τιμή ${safelyStringifyUnknownValue(error.value)} πρέπει να είναι ασφαλής ακέραιος.`;
281
327
 
328
+ /** Formats an IntFromStringError in Greek. */
329
+ export const formatIntFromStringError: TypeErrorFormatter<
330
+ IntFromStringError
331
+ > = (error) =>
332
+ `Η τιμή ${safelyStringifyUnknownValue(error.value)} δεν είναι δεκαδικός ακέραιος.`;
333
+
282
334
  /** Formats a GreaterThanError in Greek. */
283
335
  export const formatGreaterThanError: TypeErrorFormatter<GreaterThanError> = (
284
336
  error,
@@ -507,3 +559,21 @@ export const formatJsonValueError: TypeErrorFormatter<JsonValueError> = (
507
559
  /** Formats a JsonError in Greek. */
508
560
  export const formatJsonError: TypeErrorFormatter<JsonError> = (error) =>
509
561
  `Η τιμή ${safelyStringifyUnknownValue(error.value)} δεν μπορεί να αναλυθεί ως JsonValue.`;
562
+
563
+ /** Formats a {@link ByteSizeLiteralError}. */
564
+ export const formatByteSizeLiteralError: TypeErrorFormatter<
565
+ ByteSizeLiteralError
566
+ > = (error) =>
567
+ `Η τιμή ${safelyStringifyUnknownValue(error.value)} δεν είναι λεκτικό μεγέθους σε byte. Χρησιμοποιήστε μια τιμή όπως "512KiB" ή "1MiB".`;
568
+
569
+ /** Formats a {@link DurationLiteralError}. */
570
+ export const formatDurationLiteralError: TypeErrorFormatter<
571
+ DurationLiteralError
572
+ > = (error) =>
573
+ `Η τιμή ${safelyStringifyUnknownValue(error.value)} δεν είναι λεκτικό χρονικής διάρκειας. Χρησιμοποιήστε μια τιμή όπως "500ms" ή "1.5s".`;
574
+
575
+ /** Formats a {@link PercentageLiteralError}. */
576
+ export const formatPercentageLiteralError: TypeErrorFormatter<
577
+ PercentageLiteralError
578
+ > = (error) =>
579
+ `Η τιμή ${safelyStringifyUnknownValue(error.value)} δεν είναι λεκτικό ποσοστού. Χρησιμοποιήστε μια τιμή όπως "50%" ή "12.5%".`;
package/src/intl/es.ts CHANGED
@@ -4,13 +4,21 @@
4
4
  * @module
5
5
  */
6
6
 
7
+ import type { DurationLiteralError } from "../Time.ts";
8
+ import type { PercentageLiteralError } from "../Number.ts";
9
+ import type { ByteSizeLiteralError } from "../Bytes.ts";
7
10
  import { assertNonNullable } from "../Assert.ts";
8
11
  import { safelyStringifyUnknownValue } from "../String.ts";
9
12
  import type {
10
13
  ArrayError,
11
14
  Base64UrlError,
15
+ BooleanFromStringError,
12
16
  BetweenError,
17
+ IdentifierError,
13
18
  CapitalizedError,
19
+ UncapitalizedError,
20
+ UppercasedError,
21
+ LowercasedError,
14
22
  DateIsoError,
15
23
  DateIsoFromDateError,
16
24
  DecimalStringError,
@@ -23,6 +31,7 @@ import type {
23
31
  Int64Error,
24
32
  Int64StringError,
25
33
  IntError,
34
+ IntFromStringError,
26
35
  IdError,
27
36
  JsonError,
28
37
  JsonValueError,
@@ -56,6 +65,7 @@ import type {
56
65
  SetError,
57
66
  TableIdError,
58
67
  TemplateLiteralError,
68
+ StartsWithError,
59
69
  TrimmedError,
60
70
  TupleElementsError,
61
71
  TupleError,
@@ -110,6 +120,12 @@ export const formatBigIntError: TypeErrorFormatter<TypeOfError<"BigInt">> =
110
120
  export const formatBooleanError: TypeErrorFormatter<TypeOfError<"Boolean">> =
111
121
  formatTypeOfError;
112
122
 
123
+ /** Formatea BooleanFromStringError en español. */
124
+ export const formatBooleanFromStringError: TypeErrorFormatter<
125
+ BooleanFromStringError
126
+ > = (error) =>
127
+ `El valor ${safelyStringifyUnknownValue(error.value)} no es un booleano. Use true o false.`;
128
+
113
129
  /** Formatea Symbol TypeOfError en español. */
114
130
  export const formatSymbolError: TypeErrorFormatter<TypeOfError<"Symbol">> =
115
131
  formatTypeOfError;
@@ -173,16 +189,46 @@ export const formatInt64StringError: TypeErrorFormatter<Int64StringError> = (
173
189
  ) =>
174
190
  `El valor ${safelyStringifyUnknownValue(error.value)} no es una cadena Int64 válida.`;
175
191
 
192
+ /** Formats an IdentifierError in Spanish. */
193
+ export const formatIdentifierError: TypeErrorFormatter<IdentifierError> = (
194
+ error,
195
+ ) =>
196
+ `El valor ${safelyStringifyUnknownValue(error.value)} no es un identificador ${error.casing}.`;
197
+
176
198
  /** Formatea CapitalizedError en español. */
177
199
  export const formatCapitalizedError: TypeErrorFormatter<CapitalizedError> = (
178
200
  error,
179
201
  ) =>
180
202
  `El valor ${safelyStringifyUnknownValue(error.value)} debe empezar con mayúscula.`;
181
203
 
204
+ /** Formats an UncapitalizedError in Spanish. */
205
+ export const formatUncapitalizedError: TypeErrorFormatter<
206
+ UncapitalizedError
207
+ > = (error) =>
208
+ `El valor ${safelyStringifyUnknownValue(error.value)} no debe empezar con una letra mayúscula.`;
209
+
210
+ /** Formats an UppercasedError in Spanish. */
211
+ export const formatUppercasedError: TypeErrorFormatter<UppercasedError> = (
212
+ error,
213
+ ) =>
214
+ `El valor ${safelyStringifyUnknownValue(error.value)} debe estar en mayúsculas.`;
215
+
216
+ /** Formats a LowercasedError in Spanish. */
217
+ export const formatLowercasedError: TypeErrorFormatter<LowercasedError> = (
218
+ error,
219
+ ) =>
220
+ `El valor ${safelyStringifyUnknownValue(error.value)} debe estar en minúsculas.`;
221
+
182
222
  /** Formatea TrimmedError en español. */
183
223
  export const formatTrimmedError: TypeErrorFormatter<TrimmedError> = (error) =>
184
224
  `El valor ${safelyStringifyUnknownValue(error.value)} no debe tener espacios en blanco al principio ni al final.`;
185
225
 
226
+ /** Formats a StartsWithError in Spanish. */
227
+ export const formatStartsWithError: TypeErrorFormatter<StartsWithError> = (
228
+ error,
229
+ ) =>
230
+ `El valor ${safelyStringifyUnknownValue(error.value)} debe empezar por ${safelyStringifyUnknownValue(error.prefix)}.`;
231
+
186
232
  /** Formatea MinLengthError en español. */
187
233
  export const formatMinLengthError: TypeErrorFormatter<MinLengthError> = (
188
234
  error,
@@ -273,6 +319,12 @@ export const formatNegativeDecimalStringError: TypeErrorFormatter<
273
319
  export const formatIntError: TypeErrorFormatter<IntError> = (error) =>
274
320
  `El valor ${safelyStringifyUnknownValue(error.value)} debe ser un entero seguro.`;
275
321
 
322
+ /** Formatea IntFromStringError en español. */
323
+ export const formatIntFromStringError: TypeErrorFormatter<
324
+ IntFromStringError
325
+ > = (error) =>
326
+ `El valor ${safelyStringifyUnknownValue(error.value)} no es un entero decimal.`;
327
+
276
328
  /** Formatea GreaterThanError en español. */
277
329
  export const formatGreaterThanError: TypeErrorFormatter<GreaterThanError> = (
278
330
  error,
@@ -501,3 +553,21 @@ export const formatJsonValueError: TypeErrorFormatter<JsonValueError> = (
501
553
  /** Formatea JsonError en español. */
502
554
  export const formatJsonError: TypeErrorFormatter<JsonError> = (error) =>
503
555
  `El valor ${safelyStringifyUnknownValue(error.value)} no se puede analizar como JsonValue.`;
556
+
557
+ /** Formats a {@link ByteSizeLiteralError}. */
558
+ export const formatByteSizeLiteralError: TypeErrorFormatter<
559
+ ByteSizeLiteralError
560
+ > = (error) =>
561
+ `El valor ${safelyStringifyUnknownValue(error.value)} no es un literal de tamaño en bytes. Use un valor como "512KiB" o "1MiB".`;
562
+
563
+ /** Formats a {@link DurationLiteralError}. */
564
+ export const formatDurationLiteralError: TypeErrorFormatter<
565
+ DurationLiteralError
566
+ > = (error) =>
567
+ `El valor ${safelyStringifyUnknownValue(error.value)} no es un literal de duración. Use un valor como "500ms" o "1.5s".`;
568
+
569
+ /** Formats a {@link PercentageLiteralError}. */
570
+ export const formatPercentageLiteralError: TypeErrorFormatter<
571
+ PercentageLiteralError
572
+ > = (error) =>
573
+ `El valor ${safelyStringifyUnknownValue(error.value)} no es un literal de porcentaje. Use un valor como "50%" o "12.5%".`;
package/src/intl/fa.ts CHANGED
@@ -4,13 +4,21 @@
4
4
  * @module
5
5
  */
6
6
 
7
+ import type { DurationLiteralError } from "../Time.ts";
8
+ import type { PercentageLiteralError } from "../Number.ts";
9
+ import type { ByteSizeLiteralError } from "../Bytes.ts";
7
10
  import { assertNonNullable } from "../Assert.ts";
8
11
  import { safelyStringifyUnknownValue } from "../String.ts";
9
12
  import type {
10
13
  ArrayError,
11
14
  Base64UrlError,
15
+ BooleanFromStringError,
12
16
  BetweenError,
17
+ IdentifierError,
13
18
  CapitalizedError,
19
+ UncapitalizedError,
20
+ UppercasedError,
21
+ LowercasedError,
14
22
  DateIsoError,
15
23
  DateIsoFromDateError,
16
24
  DecimalStringError,
@@ -23,6 +31,7 @@ import type {
23
31
  Int64Error,
24
32
  Int64StringError,
25
33
  IntError,
34
+ IntFromStringError,
26
35
  IdError,
27
36
  JsonError,
28
37
  JsonValueError,
@@ -56,6 +65,7 @@ import type {
56
65
  SetError,
57
66
  TableIdError,
58
67
  TemplateLiteralError,
68
+ StartsWithError,
59
69
  TrimmedError,
60
70
  TupleElementsError,
61
71
  TupleError,
@@ -110,6 +120,12 @@ export const formatBigIntError: TypeErrorFormatter<TypeOfError<"BigInt">> =
110
120
  export const formatBooleanError: TypeErrorFormatter<TypeOfError<"Boolean">> =
111
121
  formatTypeOfError;
112
122
 
123
+ /** BooleanFromStringError را به فارسی قالب‌بندی می‌کند. */
124
+ export const formatBooleanFromStringError: TypeErrorFormatter<
125
+ BooleanFromStringError
126
+ > = (error) =>
127
+ `مقدار ${safelyStringifyUnknownValue(error.value)} یک مقدار بولی نیست. از true یا false استفاده کنید.`;
128
+
113
129
  /** Symbol TypeOfError را به فارسی قالب‌بندی می‌کند. */
114
130
  export const formatSymbolError: TypeErrorFormatter<TypeOfError<"Symbol">> =
115
131
  formatTypeOfError;
@@ -172,16 +188,46 @@ export const formatInt64StringError: TypeErrorFormatter<Int64StringError> = (
172
188
  ) =>
173
189
  `مقدار ${safelyStringifyUnknownValue(error.value)} یک رشتهٔ Int64 معتبر نیست.`;
174
190
 
191
+ /** Formats an IdentifierError in Persian. */
192
+ export const formatIdentifierError: TypeErrorFormatter<IdentifierError> = (
193
+ error,
194
+ ) =>
195
+ `مقدار ${safelyStringifyUnknownValue(error.value)} یک شناسه با قالب ${error.casing} نیست.`;
196
+
175
197
  /** CapitalizedError را به فارسی قالب‌بندی می‌کند. */
176
198
  export const formatCapitalizedError: TypeErrorFormatter<CapitalizedError> = (
177
199
  error,
178
200
  ) =>
179
201
  `مقدار ${safelyStringifyUnknownValue(error.value)} باید با حرف بزرگ آغاز شود.`;
180
202
 
203
+ /** Formats an UncapitalizedError in Persian. */
204
+ export const formatUncapitalizedError: TypeErrorFormatter<
205
+ UncapitalizedError
206
+ > = (error) =>
207
+ `مقدار ${safelyStringifyUnknownValue(error.value)} نباید با حرف بزرگ شروع شود.`;
208
+
209
+ /** Formats an UppercasedError in Persian. */
210
+ export const formatUppercasedError: TypeErrorFormatter<UppercasedError> = (
211
+ error,
212
+ ) =>
213
+ `مقدار ${safelyStringifyUnknownValue(error.value)} باید با حروف بزرگ باشد.`;
214
+
215
+ /** Formats a LowercasedError in Persian. */
216
+ export const formatLowercasedError: TypeErrorFormatter<LowercasedError> = (
217
+ error,
218
+ ) =>
219
+ `مقدار ${safelyStringifyUnknownValue(error.value)} باید با حروف کوچک باشد.`;
220
+
181
221
  /** TrimmedError را به فارسی قالب‌بندی می‌کند. */
182
222
  export const formatTrimmedError: TypeErrorFormatter<TrimmedError> = (error) =>
183
223
  `مقدار ${safelyStringifyUnknownValue(error.value)} نباید در ابتدا یا انتها فاصلهٔ اضافی داشته باشد.`;
184
224
 
225
+ /** Formats a StartsWithError in Persian. */
226
+ export const formatStartsWithError: TypeErrorFormatter<StartsWithError> = (
227
+ error,
228
+ ) =>
229
+ `مقدار ${safelyStringifyUnknownValue(error.value)} باید با ${safelyStringifyUnknownValue(error.prefix)} شروع شود.`;
230
+
185
231
  /** MinLengthError را به فارسی قالب‌بندی می‌کند. */
186
232
  export const formatMinLengthError: TypeErrorFormatter<MinLengthError> = (
187
233
  error,
@@ -272,6 +318,12 @@ export const formatNegativeDecimalStringError: TypeErrorFormatter<
272
318
  export const formatIntError: TypeErrorFormatter<IntError> = (error) =>
273
319
  `مقدار ${safelyStringifyUnknownValue(error.value)} باید یک عدد صحیح امن باشد.`;
274
320
 
321
+ /** IntFromStringError را به فارسی قالب‌بندی می‌کند. */
322
+ export const formatIntFromStringError: TypeErrorFormatter<
323
+ IntFromStringError
324
+ > = (error) =>
325
+ `مقدار ${safelyStringifyUnknownValue(error.value)} یک عدد صحیح دهدهی نیست.`;
326
+
275
327
  /** GreaterThanError را به فارسی قالب‌بندی می‌کند. */
276
328
  export const formatGreaterThanError: TypeErrorFormatter<GreaterThanError> = (
277
329
  error,
@@ -500,3 +552,21 @@ export const formatJsonValueError: TypeErrorFormatter<JsonValueError> = (
500
552
  /** JsonError را به فارسی قالب‌بندی می‌کند. */
501
553
  export const formatJsonError: TypeErrorFormatter<JsonError> = (error) =>
502
554
  `مقدار ${safelyStringifyUnknownValue(error.value)} را نمی‌توان به JsonValue parse کرد.`;
555
+
556
+ /** Formats a {@link ByteSizeLiteralError}. */
557
+ export const formatByteSizeLiteralError: TypeErrorFormatter<
558
+ ByteSizeLiteralError
559
+ > = (error) =>
560
+ `مقدار ${safelyStringifyUnknownValue(error.value)} یک مقدار لفظی اندازه بر حسب بایت نیست. از مقداری مانند "512KiB" یا "1MiB" استفاده کنید.`;
561
+
562
+ /** Formats a {@link DurationLiteralError}. */
563
+ export const formatDurationLiteralError: TypeErrorFormatter<
564
+ DurationLiteralError
565
+ > = (error) =>
566
+ `مقدار ${safelyStringifyUnknownValue(error.value)} یک مقدار لفظی مدت زمان نیست. از مقداری مانند "500ms" یا "1.5s" استفاده کنید.`;
567
+
568
+ /** Formats a {@link PercentageLiteralError}. */
569
+ export const formatPercentageLiteralError: TypeErrorFormatter<
570
+ PercentageLiteralError
571
+ > = (error) =>
572
+ `مقدار ${safelyStringifyUnknownValue(error.value)} یک مقدار لفظی درصد نیست. از مقداری مانند "50%" یا "12.5%" استفاده کنید.`;