flavor-code 1.3.23 → 1.4.0-beta.10

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 (181) hide show
  1. package/README.md +439 -434
  2. package/README.zh-CN.md +436 -431
  3. package/dist/agent/loop.d.ts +7 -2
  4. package/dist/{app-NTEUPJKJ.js → app-SMIB6P23.js} +82 -161
  5. package/dist/{chunk-Z62P4LL7.js → chunk-BYHO2CA5.js} +10412 -8712
  6. package/dist/{chunk-RPFWB45Y.js → chunk-EXOSMO57.js} +13 -8
  7. package/dist/chunk-N5MXHJKD.js +107 -0
  8. package/dist/{chunk-7OICVL2M.js → chunk-RAYH6K2H.js} +2 -44
  9. package/dist/{chunk-VEUSROUQ.js → chunk-UO4DLWU5.js} +8 -2
  10. package/dist/{chunk-SUSLIHXO.js → chunk-XMRKRPNC.js} +179 -14253
  11. package/dist/{chunk-RQTYHUMK.js → chunk-ZJCAQXA7.js} +17 -1
  12. package/dist/{claude-ink-6CEG2XZZ.js → claude-ink-6EZHF64C.js} +2 -3
  13. package/dist/cli-main.js +75 -28
  14. package/dist/cli.js +54 -10
  15. package/dist/config/load.d.ts +2 -0
  16. package/dist/config/schema.d.ts +8 -0
  17. package/dist/context/manager.d.ts +9 -0
  18. package/dist/desktop/main.js +3035 -1237
  19. package/dist/desktop-renderer/assets/index-Bk6FYhyh.css +1 -0
  20. package/dist/desktop-renderer/assets/index-RNe5Gtum.js +154 -0
  21. package/dist/desktop-renderer/assets/{interactive-terminal-CTFo4fK9.js → interactive-terminal-DestMQ2z.js} +1 -1
  22. package/dist/desktop-renderer/index.html +2 -2
  23. package/dist/doctor.d.ts +38 -0
  24. package/dist/execution/docker.d.ts +5 -1
  25. package/dist/execution/types.d.ts +11 -0
  26. package/dist/git/service.d.ts +3 -3
  27. package/dist/git/tools.d.ts +1 -1
  28. package/dist/goal/classifier.d.ts +2 -0
  29. package/dist/goal/orchestrator.d.ts +23 -2
  30. package/dist/goal/planner.d.ts +2 -0
  31. package/dist/goal/store.d.ts +2 -0
  32. package/dist/goal/types.d.ts +14 -0
  33. package/dist/harness/journal.d.ts +2 -0
  34. package/dist/harness/local.d.ts +2 -0
  35. package/dist/init/project.d.ts +0 -6
  36. package/dist/jobs/registry.d.ts +8 -1
  37. package/dist/{load-4FWNXE6F.js → load-EW56Q2MM.js} +1 -1
  38. package/dist/loop/orchestrator.d.ts +20 -0
  39. package/dist/loop/types.d.ts +7 -0
  40. package/dist/loop/verifier.d.ts +2 -0
  41. package/dist/models/openai.d.ts +1 -1
  42. package/dist/models/structured.d.ts +7 -0
  43. package/dist/models/types.d.ts +1 -1
  44. package/dist/production.d.ts +17 -0
  45. package/dist/sdk/index.js +5 -5
  46. package/dist/session/tree.d.ts +2 -0
  47. package/dist/tools/lsp.d.ts +15 -10
  48. package/dist/tools/runtime.d.ts +2 -1
  49. package/dist/tools/search.d.ts +1 -0
  50. package/dist/tools/shell.d.ts +17 -12
  51. package/dist/tools/types.d.ts +2 -1
  52. package/dist/ui/commands.d.ts +1 -1
  53. package/dist/ui/session.d.ts +12 -0
  54. package/dist/ui/transcript.d.ts +9 -0
  55. package/dist/update/check.d.ts +20 -0
  56. package/dist/utils/abort.d.ts +20 -0
  57. package/dist/utils/execFileNoThrow.d.ts +1 -0
  58. package/dist/utils/heap.d.ts +58 -0
  59. package/dist/utils/memory-restart.d.ts +42 -3
  60. package/dist/utils/process-tree.d.ts +2 -0
  61. package/dist/utils/rotation-census.d.ts +36 -0
  62. package/dist/utils/semver.d.ts +3 -0
  63. package/dist/utils/spawn-executable.d.ts +2 -0
  64. package/package.json +3 -2
  65. package//346/212/200/346/234/257/346/226/271/346/241/210/346/212/245/345/221/212.md +5848 -5848
  66. package/dist/astgraph/db.mjs +0 -237
  67. package/dist/astgraph/extract.mjs +0 -239
  68. package/dist/astgraph/flavor-plugin.json +0 -25
  69. package/dist/astgraph/grammars.mjs +0 -68
  70. package/dist/astgraph/index.js +0 -301
  71. package/dist/astgraph/indexer.mjs +0 -175
  72. package/dist/astgraph/query.mjs +0 -165
  73. package/dist/astgraph/resolve.mjs +0 -93
  74. package/dist/astgraph/vendor/tree-sitter-javascript.wasm +0 -0
  75. package/dist/astgraph/vendor/tree-sitter-tsx.wasm +0 -0
  76. package/dist/astgraph/vendor/tree-sitter-typescript.wasm +0 -0
  77. package/dist/astgraph/vendor/tree-sitter.js +0 -3980
  78. package/dist/astgraph/vendor/tree-sitter.wasm +0 -0
  79. package/dist/astgraph/vendor/zod/LICENSE +0 -21
  80. package/dist/astgraph/vendor/zod/index.js +0 -4
  81. package/dist/astgraph/vendor/zod/locales/index.js +0 -1
  82. package/dist/astgraph/vendor/zod/locales/package.json +0 -7
  83. package/dist/astgraph/vendor/zod/package.json +0 -135
  84. package/dist/astgraph/vendor/zod/v4/classic/checks.js +0 -1
  85. package/dist/astgraph/vendor/zod/v4/classic/coerce.js +0 -17
  86. package/dist/astgraph/vendor/zod/v4/classic/compat.js +0 -31
  87. package/dist/astgraph/vendor/zod/v4/classic/errors.js +0 -48
  88. package/dist/astgraph/vendor/zod/v4/classic/external.js +0 -20
  89. package/dist/astgraph/vendor/zod/v4/classic/from-json-schema.js +0 -599
  90. package/dist/astgraph/vendor/zod/v4/classic/index.js +0 -4
  91. package/dist/astgraph/vendor/zod/v4/classic/iso.js +0 -30
  92. package/dist/astgraph/vendor/zod/v4/classic/package.json +0 -7
  93. package/dist/astgraph/vendor/zod/v4/classic/parse.js +0 -15
  94. package/dist/astgraph/vendor/zod/v4/classic/schemas.js +0 -1395
  95. package/dist/astgraph/vendor/zod/v4/core/api.js +0 -1087
  96. package/dist/astgraph/vendor/zod/v4/core/checks.js +0 -575
  97. package/dist/astgraph/vendor/zod/v4/core/core.js +0 -78
  98. package/dist/astgraph/vendor/zod/v4/core/doc.js +0 -35
  99. package/dist/astgraph/vendor/zod/v4/core/errors.js +0 -185
  100. package/dist/astgraph/vendor/zod/v4/core/index.js +0 -16
  101. package/dist/astgraph/vendor/zod/v4/core/json-schema-generator.js +0 -95
  102. package/dist/astgraph/vendor/zod/v4/core/json-schema-processors.js +0 -601
  103. package/dist/astgraph/vendor/zod/v4/core/json-schema.js +0 -1
  104. package/dist/astgraph/vendor/zod/v4/core/package.json +0 -7
  105. package/dist/astgraph/vendor/zod/v4/core/parse.js +0 -93
  106. package/dist/astgraph/vendor/zod/v4/core/regexes.js +0 -139
  107. package/dist/astgraph/vendor/zod/v4/core/registries.js +0 -51
  108. package/dist/astgraph/vendor/zod/v4/core/schemas.js +0 -2239
  109. package/dist/astgraph/vendor/zod/v4/core/standard-schema.js +0 -1
  110. package/dist/astgraph/vendor/zod/v4/core/to-json-schema.js +0 -448
  111. package/dist/astgraph/vendor/zod/v4/core/util.js +0 -674
  112. package/dist/astgraph/vendor/zod/v4/core/versions.js +0 -5
  113. package/dist/astgraph/vendor/zod/v4/index.js +0 -3
  114. package/dist/astgraph/vendor/zod/v4/locales/ar.js +0 -106
  115. package/dist/astgraph/vendor/zod/v4/locales/az.js +0 -105
  116. package/dist/astgraph/vendor/zod/v4/locales/be.js +0 -156
  117. package/dist/astgraph/vendor/zod/v4/locales/bg.js +0 -120
  118. package/dist/astgraph/vendor/zod/v4/locales/ca.js +0 -107
  119. package/dist/astgraph/vendor/zod/v4/locales/cs.js +0 -111
  120. package/dist/astgraph/vendor/zod/v4/locales/da.js +0 -115
  121. package/dist/astgraph/vendor/zod/v4/locales/de.js +0 -108
  122. package/dist/astgraph/vendor/zod/v4/locales/el.js +0 -109
  123. package/dist/astgraph/vendor/zod/v4/locales/en.js +0 -113
  124. package/dist/astgraph/vendor/zod/v4/locales/eo.js +0 -109
  125. package/dist/astgraph/vendor/zod/v4/locales/es.js +0 -132
  126. package/dist/astgraph/vendor/zod/v4/locales/fa.js +0 -114
  127. package/dist/astgraph/vendor/zod/v4/locales/fi.js +0 -112
  128. package/dist/astgraph/vendor/zod/v4/locales/fr-CA.js +0 -107
  129. package/dist/astgraph/vendor/zod/v4/locales/fr.js +0 -125
  130. package/dist/astgraph/vendor/zod/v4/locales/he.js +0 -214
  131. package/dist/astgraph/vendor/zod/v4/locales/hr.js +0 -122
  132. package/dist/astgraph/vendor/zod/v4/locales/hu.js +0 -108
  133. package/dist/astgraph/vendor/zod/v4/locales/hy.js +0 -147
  134. package/dist/astgraph/vendor/zod/v4/locales/id.js +0 -106
  135. package/dist/astgraph/vendor/zod/v4/locales/index.js +0 -52
  136. package/dist/astgraph/vendor/zod/v4/locales/is.js +0 -109
  137. package/dist/astgraph/vendor/zod/v4/locales/it.js +0 -108
  138. package/dist/astgraph/vendor/zod/v4/locales/ja.js +0 -107
  139. package/dist/astgraph/vendor/zod/v4/locales/ka.js +0 -112
  140. package/dist/astgraph/vendor/zod/v4/locales/kh.js +0 -5
  141. package/dist/astgraph/vendor/zod/v4/locales/km.js +0 -110
  142. package/dist/astgraph/vendor/zod/v4/locales/ko.js +0 -111
  143. package/dist/astgraph/vendor/zod/v4/locales/lt.js +0 -203
  144. package/dist/astgraph/vendor/zod/v4/locales/mk.js +0 -109
  145. package/dist/astgraph/vendor/zod/v4/locales/ms.js +0 -107
  146. package/dist/astgraph/vendor/zod/v4/locales/nl.js +0 -110
  147. package/dist/astgraph/vendor/zod/v4/locales/no.js +0 -108
  148. package/dist/astgraph/vendor/zod/v4/locales/ota.js +0 -109
  149. package/dist/astgraph/vendor/zod/v4/locales/package.json +0 -7
  150. package/dist/astgraph/vendor/zod/v4/locales/pl.js +0 -109
  151. package/dist/astgraph/vendor/zod/v4/locales/ps.js +0 -114
  152. package/dist/astgraph/vendor/zod/v4/locales/pt.js +0 -108
  153. package/dist/astgraph/vendor/zod/v4/locales/ro.js +0 -119
  154. package/dist/astgraph/vendor/zod/v4/locales/ru.js +0 -156
  155. package/dist/astgraph/vendor/zod/v4/locales/sl.js +0 -109
  156. package/dist/astgraph/vendor/zod/v4/locales/sv.js +0 -110
  157. package/dist/astgraph/vendor/zod/v4/locales/ta.js +0 -110
  158. package/dist/astgraph/vendor/zod/v4/locales/th.js +0 -110
  159. package/dist/astgraph/vendor/zod/v4/locales/tr.js +0 -105
  160. package/dist/astgraph/vendor/zod/v4/locales/ua.js +0 -5
  161. package/dist/astgraph/vendor/zod/v4/locales/uk.js +0 -108
  162. package/dist/astgraph/vendor/zod/v4/locales/ur.js +0 -110
  163. package/dist/astgraph/vendor/zod/v4/locales/uz.js +0 -110
  164. package/dist/astgraph/vendor/zod/v4/locales/vi.js +0 -108
  165. package/dist/astgraph/vendor/zod/v4/locales/yo.js +0 -107
  166. package/dist/astgraph/vendor/zod/v4/locales/zh-CN.js +0 -109
  167. package/dist/astgraph/vendor/zod/v4/locales/zh-TW.js +0 -107
  168. package/dist/astgraph/vendor/zod/v4/mini/checks.js +0 -1
  169. package/dist/astgraph/vendor/zod/v4/mini/coerce.js +0 -22
  170. package/dist/astgraph/vendor/zod/v4/mini/external.js +0 -14
  171. package/dist/astgraph/vendor/zod/v4/mini/index.js +0 -3
  172. package/dist/astgraph/vendor/zod/v4/mini/iso.js +0 -34
  173. package/dist/astgraph/vendor/zod/v4/mini/package.json +0 -7
  174. package/dist/astgraph/vendor/zod/v4/mini/parse.js +0 -1
  175. package/dist/astgraph/vendor/zod/v4/mini/schemas.js +0 -961
  176. package/dist/astgraph/vendor/zod/v4/package.json +0 -7
  177. package/dist/chunk-CIVPKHF4.js +0 -53
  178. package/dist/chunk-OTYFL4AG.js +0 -16
  179. package/dist/desktop-renderer/assets/index-D75ozXnZ.js +0 -154
  180. package/dist/desktop-renderer/assets/index-ZZsUx916.css +0 -1
  181. package/dist/devtools-4QTPKBKK.js +0 -2
@@ -1,110 +0,0 @@
1
- import * as util from "../core/util.js";
2
- const error = () => {
3
- const Sizable = {
4
- string: { unit: "តួអក្សរ", verb: "គួរមាន" },
5
- file: { unit: "បៃ", verb: "គួរមាន" },
6
- array: { unit: "ធាតុ", verb: "គួរមាន" },
7
- set: { unit: "ធាតុ", verb: "គួរមាន" },
8
- };
9
- function getSizing(origin) {
10
- return Sizable[origin] ?? null;
11
- }
12
- const FormatDictionary = {
13
- regex: "ទិន្នន័យបញ្ចូល",
14
- email: "អាសយដ្ឋានអ៊ីមែល",
15
- url: "URL",
16
- 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",
28
- date: "កាលបរិច្ឆេទ ISO",
29
- time: "ម៉ោង ISO",
30
- duration: "រយៈពេល ISO",
31
- ipv4: "អាសយដ្ឋាន IPv4",
32
- ipv6: "អាសយដ្ឋាន IPv6",
33
- cidrv4: "ដែនអាសយដ្ឋាន IPv4",
34
- cidrv6: "ដែនអាសយដ្ឋាន IPv6",
35
- base64: "ខ្សែអក្សរអ៊ិកូដ base64",
36
- base64url: "ខ្សែអក្សរអ៊ិកូដ base64url",
37
- json_string: "ខ្សែអក្សរ JSON",
38
- e164: "លេខ E.164",
39
- jwt: "JWT",
40
- template_literal: "ទិន្នន័យបញ្ចូល",
41
- };
42
- const TypeDictionary = {
43
- nan: "NaN",
44
- number: "លេខ",
45
- array: "អារេ (Array)",
46
- null: "គ្មានតម្លៃ (null)",
47
- };
48
- return (issue) => {
49
- switch (issue.code) {
50
- case "invalid_type": {
51
- const expected = TypeDictionary[issue.expected] ?? issue.expected;
52
- const receivedType = util.parsedType(issue.input);
53
- const received = TypeDictionary[receivedType] ?? receivedType;
54
- if (/^[A-Z]/.test(issue.expected)) {
55
- return `ទិន្នន័យបញ្ចូលមិនត្រឹមត្រូវ៖ ត្រូវការ instanceof ${issue.expected} ប៉ុន្តែទទួលបាន ${received}`;
56
- }
57
- return `ទិន្នន័យបញ្ចូលមិនត្រឹមត្រូវ៖ ត្រូវការ ${expected} ប៉ុន្តែទទួលបាន ${received}`;
58
- }
59
- case "invalid_value":
60
- if (issue.values.length === 1)
61
- return `ទិន្នន័យបញ្ចូលមិនត្រឹមត្រូវ៖ ត្រូវការ ${util.stringifyPrimitive(issue.values[0])}`;
62
- return `ជម្រើសមិនត្រឹមត្រូវ៖ ត្រូវជាមួយក្នុងចំណោម ${util.joinValues(issue.values, "|")}`;
63
- case "too_big": {
64
- const adj = issue.inclusive ? "<=" : "<";
65
- const sizing = getSizing(issue.origin);
66
- if (sizing)
67
- return `ធំពេក៖ ត្រូវការ ${issue.origin ?? "តម្លៃ"} ${adj} ${issue.maximum.toString()} ${sizing.unit ?? "ធាតុ"}`;
68
- return `ធំពេក៖ ត្រូវការ ${issue.origin ?? "តម្លៃ"} ${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 `តូចពេក៖ ត្រូវការ ${issue.origin} ${adj} ${issue.minimum.toString()} ${sizing.unit}`;
75
- }
76
- return `តូចពេក៖ ត្រូវការ ${issue.origin} ${adj} ${issue.minimum.toString()}`;
77
- }
78
- case "invalid_format": {
79
- const _issue = issue;
80
- if (_issue.format === "starts_with") {
81
- return `ខ្សែអក្សរមិនត្រឹមត្រូវ៖ ត្រូវចាប់ផ្តើមដោយ "${_issue.prefix}"`;
82
- }
83
- if (_issue.format === "ends_with")
84
- return `ខ្សែអក្សរមិនត្រឹមត្រូវ៖ ត្រូវបញ្ចប់ដោយ "${_issue.suffix}"`;
85
- if (_issue.format === "includes")
86
- return `ខ្សែអក្សរមិនត្រឹមត្រូវ៖ ត្រូវមាន "${_issue.includes}"`;
87
- if (_issue.format === "regex")
88
- return `ខ្សែអក្សរមិនត្រឹមត្រូវ៖ ត្រូវតែផ្គូផ្គងនឹងទម្រង់ដែលបានកំណត់ ${_issue.pattern}`;
89
- return `មិនត្រឹមត្រូវ៖ ${FormatDictionary[_issue.format] ?? issue.format}`;
90
- }
91
- case "not_multiple_of":
92
- return `លេខមិនត្រឹមត្រូវ៖ ត្រូវតែជាពហុគុណនៃ ${issue.divisor}`;
93
- case "unrecognized_keys":
94
- return `រកឃើញសោមិនស្គាល់៖ ${util.joinValues(issue.keys, ", ")}`;
95
- case "invalid_key":
96
- return `សោមិនត្រឹមត្រូវនៅក្នុង ${issue.origin}`;
97
- case "invalid_union":
98
- return `ទិន្នន័យមិនត្រឹមត្រូវ`;
99
- case "invalid_element":
100
- return `ទិន្នន័យមិនត្រឹមត្រូវនៅក្នុង ${issue.origin}`;
101
- default:
102
- return `ទិន្នន័យមិនត្រឹមត្រូវ`;
103
- }
104
- };
105
- };
106
- export default function () {
107
- return {
108
- localeError: error(),
109
- };
110
- }
@@ -1,111 +0,0 @@
1
- import * as util from "../core/util.js";
2
- const error = () => {
3
- const Sizable = {
4
- string: { unit: "문자", verb: "to have" },
5
- file: { unit: "바이트", verb: "to have" },
6
- array: { unit: "개", verb: "to have" },
7
- set: { unit: "개", verb: "to have" },
8
- };
9
- function getSizing(origin) {
10
- return Sizable[origin] ?? null;
11
- }
12
- const FormatDictionary = {
13
- regex: "입력",
14
- email: "이메일 주소",
15
- url: "URL",
16
- 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 날짜시간",
28
- date: "ISO 날짜",
29
- time: "ISO 시간",
30
- duration: "ISO 기간",
31
- ipv4: "IPv4 주소",
32
- ipv6: "IPv6 주소",
33
- cidrv4: "IPv4 범위",
34
- cidrv6: "IPv6 범위",
35
- base64: "base64 인코딩 문자열",
36
- base64url: "base64url 인코딩 문자열",
37
- json_string: "JSON 문자열",
38
- e164: "E.164 번호",
39
- jwt: "JWT",
40
- template_literal: "입력",
41
- };
42
- const TypeDictionary = {
43
- nan: "NaN",
44
- };
45
- return (issue) => {
46
- switch (issue.code) {
47
- case "invalid_type": {
48
- const expected = TypeDictionary[issue.expected] ?? issue.expected;
49
- const receivedType = util.parsedType(issue.input);
50
- const received = TypeDictionary[receivedType] ?? receivedType;
51
- if (/^[A-Z]/.test(issue.expected)) {
52
- return `잘못된 입력: 예상 타입은 instanceof ${issue.expected}, 받은 타입은 ${received}입니다`;
53
- }
54
- return `잘못된 입력: 예상 타입은 ${expected}, 받은 타입은 ${received}입니다`;
55
- }
56
- case "invalid_value":
57
- if (issue.values.length === 1)
58
- return `잘못된 입력: 값은 ${util.stringifyPrimitive(issue.values[0])} 이어야 합니다`;
59
- return `잘못된 옵션: ${util.joinValues(issue.values, "또는 ")} 중 하나여야 합니다`;
60
- case "too_big": {
61
- const adj = issue.inclusive ? "이하" : "미만";
62
- const suffix = adj === "미만" ? "이어야 합니다" : "여야 합니다";
63
- const sizing = getSizing(issue.origin);
64
- const unit = sizing?.unit ?? "요소";
65
- if (sizing)
66
- return `${issue.origin ?? "값"}이 너무 큽니다: ${issue.maximum.toString()}${unit} ${adj}${suffix}`;
67
- return `${issue.origin ?? "값"}이 너무 큽니다: ${issue.maximum.toString()} ${adj}${suffix}`;
68
- }
69
- case "too_small": {
70
- const adj = issue.inclusive ? "이상" : "초과";
71
- const suffix = adj === "이상" ? "이어야 합니다" : "여야 합니다";
72
- const sizing = getSizing(issue.origin);
73
- const unit = sizing?.unit ?? "요소";
74
- if (sizing) {
75
- return `${issue.origin ?? "값"}이 너무 작습니다: ${issue.minimum.toString()}${unit} ${adj}${suffix}`;
76
- }
77
- return `${issue.origin ?? "값"}이 너무 작습니다: ${issue.minimum.toString()} ${adj}${suffix}`;
78
- }
79
- case "invalid_format": {
80
- const _issue = issue;
81
- if (_issue.format === "starts_with") {
82
- return `잘못된 문자열: "${_issue.prefix}"(으)로 시작해야 합니다`;
83
- }
84
- if (_issue.format === "ends_with")
85
- return `잘못된 문자열: "${_issue.suffix}"(으)로 끝나야 합니다`;
86
- if (_issue.format === "includes")
87
- return `잘못된 문자열: "${_issue.includes}"을(를) 포함해야 합니다`;
88
- if (_issue.format === "regex")
89
- return `잘못된 문자열: 정규식 ${_issue.pattern} 패턴과 일치해야 합니다`;
90
- return `잘못된 ${FormatDictionary[_issue.format] ?? issue.format}`;
91
- }
92
- case "not_multiple_of":
93
- return `잘못된 숫자: ${issue.divisor}의 배수여야 합니다`;
94
- case "unrecognized_keys":
95
- return `인식할 수 없는 키: ${util.joinValues(issue.keys, ", ")}`;
96
- case "invalid_key":
97
- return `잘못된 키: ${issue.origin}`;
98
- case "invalid_union":
99
- return `잘못된 입력`;
100
- case "invalid_element":
101
- return `잘못된 값: ${issue.origin}`;
102
- default:
103
- return `잘못된 입력`;
104
- }
105
- };
106
- };
107
- export default function () {
108
- return {
109
- localeError: error(),
110
- };
111
- }
@@ -1,203 +0,0 @@
1
- import * as util from "../core/util.js";
2
- const capitalizeFirstCharacter = (text) => {
3
- return text.charAt(0).toUpperCase() + text.slice(1);
4
- };
5
- function getUnitTypeFromNumber(number) {
6
- const abs = Math.abs(number);
7
- const last = abs % 10;
8
- const last2 = abs % 100;
9
- if ((last2 >= 11 && last2 <= 19) || last === 0)
10
- return "many";
11
- if (last === 1)
12
- return "one";
13
- return "few";
14
- }
15
- const error = () => {
16
- const Sizable = {
17
- string: {
18
- unit: {
19
- one: "simbolis",
20
- few: "simboliai",
21
- many: "simbolių",
22
- },
23
- verb: {
24
- smaller: {
25
- inclusive: "turi būti ne ilgesnė kaip",
26
- notInclusive: "turi būti trumpesnė kaip",
27
- },
28
- bigger: {
29
- inclusive: "turi būti ne trumpesnė kaip",
30
- notInclusive: "turi būti ilgesnė kaip",
31
- },
32
- },
33
- },
34
- file: {
35
- unit: {
36
- one: "baitas",
37
- few: "baitai",
38
- many: "baitų",
39
- },
40
- verb: {
41
- smaller: {
42
- inclusive: "turi būti ne didesnis kaip",
43
- notInclusive: "turi būti mažesnis kaip",
44
- },
45
- bigger: {
46
- inclusive: "turi būti ne mažesnis kaip",
47
- notInclusive: "turi būti didesnis kaip",
48
- },
49
- },
50
- },
51
- array: {
52
- unit: {
53
- one: "elementą",
54
- few: "elementus",
55
- many: "elementų",
56
- },
57
- verb: {
58
- smaller: {
59
- inclusive: "turi turėti ne daugiau kaip",
60
- notInclusive: "turi turėti mažiau kaip",
61
- },
62
- bigger: {
63
- inclusive: "turi turėti ne mažiau kaip",
64
- notInclusive: "turi turėti daugiau kaip",
65
- },
66
- },
67
- },
68
- set: {
69
- unit: {
70
- one: "elementą",
71
- few: "elementus",
72
- many: "elementų",
73
- },
74
- verb: {
75
- smaller: {
76
- inclusive: "turi turėti ne daugiau kaip",
77
- notInclusive: "turi turėti mažiau kaip",
78
- },
79
- bigger: {
80
- inclusive: "turi turėti ne mažiau kaip",
81
- notInclusive: "turi turėti daugiau kaip",
82
- },
83
- },
84
- },
85
- };
86
- function getSizing(origin, unitType, inclusive, targetShouldBe) {
87
- const result = Sizable[origin] ?? null;
88
- if (result === null)
89
- return result;
90
- return {
91
- unit: result.unit[unitType],
92
- verb: result.verb[targetShouldBe][inclusive ? "inclusive" : "notInclusive"],
93
- };
94
- }
95
- const FormatDictionary = {
96
- regex: "įvestis",
97
- email: "el. pašto adresas",
98
- url: "URL",
99
- emoji: "jaustukas",
100
- uuid: "UUID",
101
- uuidv4: "UUIDv4",
102
- uuidv6: "UUIDv6",
103
- nanoid: "nanoid",
104
- guid: "GUID",
105
- cuid: "cuid",
106
- cuid2: "cuid2",
107
- ulid: "ULID",
108
- xid: "XID",
109
- ksuid: "KSUID",
110
- datetime: "ISO data ir laikas",
111
- date: "ISO data",
112
- time: "ISO laikas",
113
- duration: "ISO trukmė",
114
- ipv4: "IPv4 adresas",
115
- ipv6: "IPv6 adresas",
116
- cidrv4: "IPv4 tinklo prefiksas (CIDR)",
117
- cidrv6: "IPv6 tinklo prefiksas (CIDR)",
118
- base64: "base64 užkoduota eilutė",
119
- base64url: "base64url užkoduota eilutė",
120
- json_string: "JSON eilutė",
121
- e164: "E.164 numeris",
122
- jwt: "JWT",
123
- template_literal: "įvestis",
124
- };
125
- const TypeDictionary = {
126
- nan: "NaN",
127
- number: "skaičius",
128
- bigint: "sveikasis skaičius",
129
- string: "eilutė",
130
- boolean: "loginė reikšmė",
131
- undefined: "neapibrėžta reikšmė",
132
- function: "funkcija",
133
- symbol: "simbolis",
134
- array: "masyvas",
135
- object: "objektas",
136
- null: "nulinė reikšmė",
137
- };
138
- return (issue) => {
139
- switch (issue.code) {
140
- case "invalid_type": {
141
- const expected = TypeDictionary[issue.expected] ?? issue.expected;
142
- const receivedType = util.parsedType(issue.input);
143
- const received = TypeDictionary[receivedType] ?? receivedType;
144
- if (/^[A-Z]/.test(issue.expected)) {
145
- return `Gautas tipas ${received}, o tikėtasi - instanceof ${issue.expected}`;
146
- }
147
- return `Gautas tipas ${received}, o tikėtasi - ${expected}`;
148
- }
149
- case "invalid_value":
150
- if (issue.values.length === 1)
151
- return `Privalo būti ${util.stringifyPrimitive(issue.values[0])}`;
152
- return `Privalo būti vienas iš ${util.joinValues(issue.values, "|")} pasirinkimų`;
153
- case "too_big": {
154
- const origin = TypeDictionary[issue.origin] ?? issue.origin;
155
- const sizing = getSizing(issue.origin, getUnitTypeFromNumber(Number(issue.maximum)), issue.inclusive ?? false, "smaller");
156
- if (sizing?.verb)
157
- return `${capitalizeFirstCharacter(origin ?? issue.origin ?? "reikšmė")} ${sizing.verb} ${issue.maximum.toString()} ${sizing.unit ?? "elementų"}`;
158
- const adj = issue.inclusive ? "ne didesnis kaip" : "mažesnis kaip";
159
- return `${capitalizeFirstCharacter(origin ?? issue.origin ?? "reikšmė")} turi būti ${adj} ${issue.maximum.toString()} ${sizing?.unit}`;
160
- }
161
- case "too_small": {
162
- const origin = TypeDictionary[issue.origin] ?? issue.origin;
163
- const sizing = getSizing(issue.origin, getUnitTypeFromNumber(Number(issue.minimum)), issue.inclusive ?? false, "bigger");
164
- if (sizing?.verb)
165
- return `${capitalizeFirstCharacter(origin ?? issue.origin ?? "reikšmė")} ${sizing.verb} ${issue.minimum.toString()} ${sizing.unit ?? "elementų"}`;
166
- const adj = issue.inclusive ? "ne mažesnis kaip" : "didesnis kaip";
167
- return `${capitalizeFirstCharacter(origin ?? issue.origin ?? "reikšmė")} turi būti ${adj} ${issue.minimum.toString()} ${sizing?.unit}`;
168
- }
169
- case "invalid_format": {
170
- const _issue = issue;
171
- if (_issue.format === "starts_with") {
172
- return `Eilutė privalo prasidėti "${_issue.prefix}"`;
173
- }
174
- if (_issue.format === "ends_with")
175
- return `Eilutė privalo pasibaigti "${_issue.suffix}"`;
176
- if (_issue.format === "includes")
177
- return `Eilutė privalo įtraukti "${_issue.includes}"`;
178
- if (_issue.format === "regex")
179
- return `Eilutė privalo atitikti ${_issue.pattern}`;
180
- return `Neteisingas ${FormatDictionary[_issue.format] ?? issue.format}`;
181
- }
182
- case "not_multiple_of":
183
- return `Skaičius privalo būti ${issue.divisor} kartotinis.`;
184
- case "unrecognized_keys":
185
- return `Neatpažint${issue.keys.length > 1 ? "i" : "as"} rakt${issue.keys.length > 1 ? "ai" : "as"}: ${util.joinValues(issue.keys, ", ")}`;
186
- case "invalid_key":
187
- return "Rastas klaidingas raktas";
188
- case "invalid_union":
189
- return "Klaidinga įvestis";
190
- case "invalid_element": {
191
- const origin = TypeDictionary[issue.origin] ?? issue.origin;
192
- return `${capitalizeFirstCharacter(origin ?? issue.origin ?? "reikšmė")} turi klaidingą įvestį`;
193
- }
194
- default:
195
- return "Klaidinga įvestis";
196
- }
197
- };
198
- };
199
- export default function () {
200
- return {
201
- localeError: error(),
202
- };
203
- }
@@ -1,109 +0,0 @@
1
- import * as util from "../core/util.js";
2
- const error = () => {
3
- const Sizable = {
4
- string: { unit: "знаци", verb: "да имаат" },
5
- file: { unit: "бајти", verb: "да имаат" },
6
- array: { unit: "ставки", verb: "да имаат" },
7
- set: { unit: "ставки", verb: "да имаат" },
8
- };
9
- function getSizing(origin) {
10
- return Sizable[origin] ?? null;
11
- }
12
- const FormatDictionary = {
13
- regex: "внес",
14
- email: "адреса на е-пошта",
15
- url: "URL",
16
- 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 датум и време",
28
- date: "ISO датум",
29
- time: "ISO време",
30
- duration: "ISO времетраење",
31
- ipv4: "IPv4 адреса",
32
- ipv6: "IPv6 адреса",
33
- cidrv4: "IPv4 опсег",
34
- cidrv6: "IPv6 опсег",
35
- base64: "base64-енкодирана низа",
36
- base64url: "base64url-енкодирана низа",
37
- json_string: "JSON низа",
38
- e164: "E.164 број",
39
- jwt: "JWT",
40
- template_literal: "внес",
41
- };
42
- const TypeDictionary = {
43
- nan: "NaN",
44
- number: "број",
45
- array: "низа",
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 `Грешен внес: се очекува instanceof ${issue.expected}, примено ${received}`;
55
- }
56
- return `Грешен внес: се очекува ${expected}, примено ${received}`;
57
- }
58
- case "invalid_value":
59
- if (issue.values.length === 1)
60
- return `Invalid input: expected ${util.stringifyPrimitive(issue.values[0])}`;
61
- return `Грешана опција: се очекува една ${util.joinValues(issue.values, "|")}`;
62
- case "too_big": {
63
- const adj = issue.inclusive ? "<=" : "<";
64
- const sizing = getSizing(issue.origin);
65
- if (sizing)
66
- return `Премногу голем: се очекува ${issue.origin ?? "вредноста"} да има ${adj}${issue.maximum.toString()} ${sizing.unit ?? "елементи"}`;
67
- return `Премногу голем: се очекува ${issue.origin ?? "вредноста"} да биде ${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 `Премногу мал: се очекува ${issue.origin} да има ${adj}${issue.minimum.toString()} ${sizing.unit}`;
74
- }
75
- return `Премногу мал: се очекува ${issue.origin} да биде ${adj}${issue.minimum.toString()}`;
76
- }
77
- case "invalid_format": {
78
- const _issue = issue;
79
- if (_issue.format === "starts_with") {
80
- return `Неважечка низа: мора да започнува со "${_issue.prefix}"`;
81
- }
82
- if (_issue.format === "ends_with")
83
- return `Неважечка низа: мора да завршува со "${_issue.suffix}"`;
84
- if (_issue.format === "includes")
85
- return `Неважечка низа: мора да вклучува "${_issue.includes}"`;
86
- if (_issue.format === "regex")
87
- return `Неважечка низа: мора да одгоара на патернот ${_issue.pattern}`;
88
- return `Invalid ${FormatDictionary[_issue.format] ?? issue.format}`;
89
- }
90
- case "not_multiple_of":
91
- return `Грешен број: мора да биде делив со ${issue.divisor}`;
92
- case "unrecognized_keys":
93
- return `${issue.keys.length > 1 ? "Непрепознаени клучеви" : "Непрепознаен клуч"}: ${util.joinValues(issue.keys, ", ")}`;
94
- case "invalid_key":
95
- return `Грешен клуч во ${issue.origin}`;
96
- case "invalid_union":
97
- return "Грешен внес";
98
- case "invalid_element":
99
- return `Грешна вредност во ${issue.origin}`;
100
- default:
101
- return `Грешен внес`;
102
- }
103
- };
104
- };
105
- export default function () {
106
- return {
107
- localeError: error(),
108
- };
109
- }
@@ -1,107 +0,0 @@
1
- import * as util from "../core/util.js";
2
- const error = () => {
3
- const Sizable = {
4
- string: { unit: "aksara", verb: "mempunyai" },
5
- file: { unit: "bait", verb: "mempunyai" },
6
- array: { unit: "elemen", verb: "mempunyai" },
7
- set: { unit: "elemen", verb: "mempunyai" },
8
- };
9
- function getSizing(origin) {
10
- return Sizable[origin] ?? null;
11
- }
12
- const FormatDictionary = {
13
- regex: "input",
14
- email: "alamat e-mel",
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: "tarikh masa ISO",
28
- date: "tarikh ISO",
29
- time: "masa ISO",
30
- duration: "tempoh ISO",
31
- ipv4: "alamat IPv4",
32
- ipv6: "alamat IPv6",
33
- cidrv4: "julat IPv4",
34
- cidrv6: "julat IPv6",
35
- base64: "string dikodkan base64",
36
- base64url: "string dikodkan base64url",
37
- json_string: "string JSON",
38
- e164: "nombor E.164",
39
- jwt: "JWT",
40
- template_literal: "input",
41
- };
42
- const TypeDictionary = {
43
- nan: "NaN",
44
- number: "nombor",
45
- };
46
- return (issue) => {
47
- switch (issue.code) {
48
- case "invalid_type": {
49
- const expected = TypeDictionary[issue.expected] ?? issue.expected;
50
- const receivedType = util.parsedType(issue.input);
51
- const received = TypeDictionary[receivedType] ?? receivedType;
52
- if (/^[A-Z]/.test(issue.expected)) {
53
- return `Input tidak sah: dijangka instanceof ${issue.expected}, diterima ${received}`;
54
- }
55
- return `Input tidak sah: dijangka ${expected}, diterima ${received}`;
56
- }
57
- case "invalid_value":
58
- if (issue.values.length === 1)
59
- return `Input tidak sah: dijangka ${util.stringifyPrimitive(issue.values[0])}`;
60
- return `Pilihan tidak sah: dijangka salah satu daripada ${util.joinValues(issue.values, "|")}`;
61
- case "too_big": {
62
- const adj = issue.inclusive ? "<=" : "<";
63
- const sizing = getSizing(issue.origin);
64
- if (sizing)
65
- return `Terlalu besar: dijangka ${issue.origin ?? "nilai"} ${sizing.verb} ${adj}${issue.maximum.toString()} ${sizing.unit ?? "elemen"}`;
66
- return `Terlalu besar: dijangka ${issue.origin ?? "nilai"} adalah ${adj}${issue.maximum.toString()}`;
67
- }
68
- case "too_small": {
69
- const adj = issue.inclusive ? ">=" : ">";
70
- const sizing = getSizing(issue.origin);
71
- if (sizing) {
72
- return `Terlalu kecil: dijangka ${issue.origin} ${sizing.verb} ${adj}${issue.minimum.toString()} ${sizing.unit}`;
73
- }
74
- return `Terlalu kecil: dijangka ${issue.origin} adalah ${adj}${issue.minimum.toString()}`;
75
- }
76
- case "invalid_format": {
77
- const _issue = issue;
78
- if (_issue.format === "starts_with")
79
- return `String tidak sah: mesti bermula dengan "${_issue.prefix}"`;
80
- if (_issue.format === "ends_with")
81
- return `String tidak sah: mesti berakhir dengan "${_issue.suffix}"`;
82
- if (_issue.format === "includes")
83
- return `String tidak sah: mesti mengandungi "${_issue.includes}"`;
84
- if (_issue.format === "regex")
85
- return `String tidak sah: mesti sepadan dengan corak ${_issue.pattern}`;
86
- return `${FormatDictionary[_issue.format] ?? issue.format} tidak sah`;
87
- }
88
- case "not_multiple_of":
89
- return `Nombor tidak sah: perlu gandaan ${issue.divisor}`;
90
- case "unrecognized_keys":
91
- return `Kunci tidak dikenali: ${util.joinValues(issue.keys, ", ")}`;
92
- case "invalid_key":
93
- return `Kunci tidak sah dalam ${issue.origin}`;
94
- case "invalid_union":
95
- return "Input tidak sah";
96
- case "invalid_element":
97
- return `Nilai tidak sah dalam ${issue.origin}`;
98
- default:
99
- return `Input tidak sah`;
100
- }
101
- };
102
- };
103
- export default function () {
104
- return {
105
- localeError: error(),
106
- };
107
- }