@hy_ong/zod-kit 0.1.15 → 0.2.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 (52) hide show
  1. package/CLAUDE.md +142 -0
  2. package/README.md +5 -5
  3. package/dist/index.cjs +1660 -4
  4. package/dist/index.d.cts +18 -18
  5. package/dist/index.d.ts +18 -18
  6. package/dist/index.js +1660 -4
  7. package/package.json +4 -3
  8. package/src/config.ts +2 -2
  9. package/src/i18n/index.ts +18 -2
  10. package/src/i18n/locales/en-GB.json +204 -0
  11. package/src/i18n/locales/id-ID.json +204 -0
  12. package/src/i18n/locales/ja-JP.json +204 -0
  13. package/src/i18n/locales/ko-KR.json +204 -0
  14. package/src/i18n/locales/ms-MY.json +204 -0
  15. package/src/i18n/locales/th-TH.json +204 -0
  16. package/src/i18n/locales/vi-VN.json +204 -0
  17. package/src/i18n/locales/zh-CN.json +204 -0
  18. package/src/validators/common/boolean.ts +1 -1
  19. package/src/validators/common/date.ts +1 -1
  20. package/src/validators/common/datetime.ts +1 -1
  21. package/src/validators/common/email.ts +1 -1
  22. package/src/validators/common/file.ts +1 -1
  23. package/src/validators/common/id.ts +1 -1
  24. package/src/validators/common/number.ts +1 -1
  25. package/src/validators/common/password.ts +1 -1
  26. package/src/validators/common/text.ts +1 -1
  27. package/src/validators/common/time.ts +1 -1
  28. package/src/validators/common/url.ts +1 -1
  29. package/src/validators/taiwan/business-id.ts +1 -1
  30. package/src/validators/taiwan/fax.ts +1 -1
  31. package/src/validators/taiwan/mobile.ts +1 -1
  32. package/src/validators/taiwan/national-id.ts +1 -1
  33. package/src/validators/taiwan/postal-code.ts +1 -1
  34. package/src/validators/taiwan/tel.ts +1 -1
  35. package/tests/common/boolean.test.ts +6 -6
  36. package/tests/common/date.test.ts +8 -8
  37. package/tests/common/datetime.test.ts +7 -7
  38. package/tests/common/email.test.ts +6 -6
  39. package/tests/common/file.test.ts +6 -6
  40. package/tests/common/id.test.ts +5 -5
  41. package/tests/common/number.test.ts +6 -6
  42. package/tests/common/password.test.ts +5 -5
  43. package/tests/common/text.test.ts +7 -7
  44. package/tests/common/time.test.ts +7 -7
  45. package/tests/common/url.test.ts +10 -10
  46. package/tests/taiwan/business-id.test.ts +4 -4
  47. package/tests/taiwan/fax.test.ts +7 -7
  48. package/tests/taiwan/mobile.test.ts +7 -7
  49. package/tests/taiwan/national-id.test.ts +4 -4
  50. package/tests/taiwan/postal-code.test.ts +6 -6
  51. package/tests/taiwan/tel.test.ts +7 -7
  52. /package/src/i18n/locales/{en.json → en-US.json} +0 -0
@@ -0,0 +1,204 @@
1
+ {
2
+ "common": {
3
+ "boolean": {
4
+ "required": "必須項目です",
5
+ "shouldBeTrue": "Trueである必要があります",
6
+ "shouldBeFalse": "Falseである必要があります",
7
+ "invalid": "ブール値である必要があります"
8
+ },
9
+ "email": {
10
+ "required": "必須項目です",
11
+ "invalid": "メールアドレスの形式が無効です",
12
+ "minLength": "${minLength}文字以上で入力してください",
13
+ "maxLength": "${maxLength}文字以下で入力してください",
14
+ "includes": "「${includes}」を含む必要があります",
15
+ "domain": "ドメインは ${domain} である必要があります",
16
+ "domainBlacklist": "ドメイン ${domain} は許可されていません",
17
+ "businessOnly": "ビジネスメールアドレスのみ使用可能です",
18
+ "noDisposable": "使い捨てメールアドレスは使用できません"
19
+ },
20
+ "url": {
21
+ "required": "必須項目です",
22
+ "invalid": "無効なURL形式です",
23
+ "min": "${min}文字以上で入力してください",
24
+ "max": "${max}文字以下で入力してください",
25
+ "includes": "「${includes}」を含む必要があります",
26
+ "excludes": "「${excludes}」を含めることはできません",
27
+ "protocol": "プロトコルは次のいずれかである必要があります:${protocols}",
28
+ "domain": "ドメインは次のいずれかである必要があります:${domains}",
29
+ "domainBlacklist": "ドメイン ${domain} は許可されていません",
30
+ "port": "ポートは次のいずれかである必要があります:${ports}",
31
+ "pathStartsWith": "パスは「${path}」で始まる必要があります",
32
+ "pathEndsWith": "パスは「${path}」で終わる必要があります",
33
+ "hasQuery": "URLにクエリパラメータが必要です",
34
+ "noQuery": "URLにクエリパラメータを含めることはできません",
35
+ "hasFragment": "URLにフラグメントが必要です",
36
+ "noFragment": "URLにフラグメントを含めることはできません",
37
+ "localhost": "ローカルホストURLは許可されていません",
38
+ "noLocalhost": "ローカルホストURLは許可されていません"
39
+ },
40
+ "password": {
41
+ "required": "必須項目です",
42
+ "min": "${min}文字以上で入力してください",
43
+ "max": "${max}文字以下で入力してください",
44
+ "uppercase": "大文字を1文字以上含む必要があります",
45
+ "lowercase": "小文字を1文字以上含む必要があります",
46
+ "digits": "数字を1文字以上含む必要があります",
47
+ "special": "特殊文字を1文字以上含む必要があります",
48
+ "noRepeating": "繰り返し文字を含めることはできません",
49
+ "noSequential": "連続文字を含めることはできません",
50
+ "noCommonWords": "一般的な単語やパターンを含めることはできません",
51
+ "minStrength": "パスワード強度は ${minStrength} 以上である必要があります",
52
+ "excludes": "「${excludes}」を含めることはできません",
53
+ "includes": "「${includes}」を含む必要があります",
54
+ "invalid": "パスワードの形式が無効です"
55
+ },
56
+ "number": {
57
+ "required": "必須項目です",
58
+ "invalid": "有効な数値である必要があります",
59
+ "integer": "整数である必要があります",
60
+ "float": "小数である必要があります",
61
+ "min": "${min} 以上である必要があります",
62
+ "max": "${max} 以下である必要があります",
63
+ "positive": "正の数である必要があります",
64
+ "negative": "負の数である必要があります",
65
+ "nonNegative": "非負の数である必要があります",
66
+ "nonPositive": "非正の数である必要があります",
67
+ "multipleOf": "${multipleOf} の倍数である必要があります",
68
+ "finite": "有限の数である必要があります",
69
+ "precision": "小数点以下は ${precision} 桁以内である必要があります"
70
+ },
71
+ "id": {
72
+ "required": "必須項目です",
73
+ "invalid": "無効なID形式です",
74
+ "minLength": "${minLength}文字以上で入力してください",
75
+ "maxLength": "${maxLength}文字以下で入力してください",
76
+ "numeric": "数値IDである必要があります",
77
+ "uuid": "有効なUUIDである必要があります",
78
+ "objectId": "有効なMongoDB ObjectIdである必要があります",
79
+ "nanoid": "有効なNano IDである必要があります",
80
+ "snowflake": "有効なSnowflake IDである必要があります",
81
+ "cuid": "有効なCUIDである必要があります",
82
+ "ulid": "有効なULIDである必要があります",
83
+ "shortid": "有効なShort IDである必要があります",
84
+ "customFormat": "無効なID形式です",
85
+ "includes": "「${includes}」を含む必要があります",
86
+ "excludes": "「${excludes}」を含めることはできません",
87
+ "startsWith": "「${startsWith}」で始まる必要があります",
88
+ "endsWith": "「${endsWith}」で終わる必要があります"
89
+ },
90
+ "text": {
91
+ "required": "必須項目です",
92
+ "notEmpty": "空白のみの入力はできません",
93
+ "minLength": "${minLength}文字以上で入力してください",
94
+ "maxLength": "${maxLength}文字以下で入力してください",
95
+ "startsWith": "「${startsWith}」で始まる必要があります",
96
+ "endsWith": "「${endsWith}」で終わる必要があります",
97
+ "includes": "「${includes}」を含む必要があります",
98
+ "excludes": "「${excludes}」を含めることはできません",
99
+ "invalid": "形式が無効です"
100
+ },
101
+ "date": {
102
+ "required": "必須項目です",
103
+ "invalid": "無効な日付です",
104
+ "format": "${format} 形式で入力してください",
105
+ "min": "日付は ${min} 以降である必要があります",
106
+ "max": "日付は ${max} 以前である必要があります",
107
+ "includes": "「${includes}」を含む必要があります",
108
+ "excludes": "「${excludes}」を含めることはできません",
109
+ "past": "過去の日付である必要があります",
110
+ "future": "未来の日付である必要があります",
111
+ "today": "今日の日付である必要があります",
112
+ "notToday": "今日以外の日付である必要があります",
113
+ "weekday": "平日(月曜〜金曜)である必要があります",
114
+ "weekend": "週末(土曜〜日曜)である必要があります"
115
+ },
116
+ "time": {
117
+ "required": "必須項目です",
118
+ "invalid": "無効な時刻形式です",
119
+ "format": "${format} 形式で入力してください",
120
+ "min": "時刻は ${min} 以降である必要があります",
121
+ "max": "時刻は ${max} 以前である必要があります",
122
+ "hour": "時間は ${minHour} から ${maxHour} の間である必要があります",
123
+ "minute": "分は ${minuteStep} 分間隔である必要があります",
124
+ "second": "秒は ${secondStep} 秒間隔である必要があります",
125
+ "includes": "「${includes}」を含む必要があります",
126
+ "excludes": "「${excludes}」を含めることはできません",
127
+ "customRegex": "無効な時刻形式です",
128
+ "notInWhitelist": "許可リストに含まれていない時刻です"
129
+ },
130
+ "datetime": {
131
+ "required": "必須項目です",
132
+ "invalid": "無効な日時形式です",
133
+ "format": "${format} 形式で入力してください",
134
+ "min": "日時は ${min} 以降である必要があります",
135
+ "max": "日時は ${max} 以前である必要があります",
136
+ "hour": "時間は ${minHour} から ${maxHour} の間である必要があります",
137
+ "minute": "分は ${minuteStep} 分間隔である必要があります",
138
+ "includes": "「${includes}」を含む必要があります",
139
+ "excludes": "「${excludes}」を含めることはできません",
140
+ "past": "過去の日時である必要があります",
141
+ "future": "未来の日時である必要があります",
142
+ "today": "今日の日時である必要があります",
143
+ "notToday": "今日以外の日時である必要があります",
144
+ "weekday": "平日(月曜〜金曜)である必要があります",
145
+ "weekend": "週末(土曜〜日曜)である必要があります",
146
+ "customRegex": "無効な日時形式です",
147
+ "notInWhitelist": "許可リストに含まれていない日時です"
148
+ },
149
+ "file": {
150
+ "required": "必須項目です",
151
+ "invalid": "無効なファイル形式です",
152
+ "size": "ファイルサイズは ${size} 以下である必要があります",
153
+ "minSize": "ファイルサイズは ${minSize} 以上である必要があります",
154
+ "maxSize": "ファイルサイズは ${maxSize} 以下である必要があります",
155
+ "type": "ファイルタイプは次のいずれかである必要があります:${type}",
156
+ "extension": "ファイル拡張子は次のいずれかである必要があります:${extension}",
157
+ "extensionBlacklist": "ファイル拡張子 ${extension} は許可されていません",
158
+ "name": "ファイル名はパターン ${pattern} に一致する必要があります",
159
+ "nameBlacklist": "ファイル名はパターン ${pattern} に一致してはいけません",
160
+ "imageOnly": "画像ファイルのみ許可されています",
161
+ "documentOnly": "ドキュメントファイルのみ許可されています",
162
+ "videoOnly": "動画ファイルのみ許可されています",
163
+ "audioOnly": "音声ファイルのみ許可されています",
164
+ "archiveOnly": "アーカイブファイルのみ許可されています"
165
+ }
166
+ },
167
+ "taiwan": {
168
+ "businessId": {
169
+ "required": "必須項目です",
170
+ "invalid": "無効な台湾統一編號です"
171
+ },
172
+ "nationalId": {
173
+ "required": "必須項目です",
174
+ "invalid": "無効な台湾身分証番号です"
175
+ },
176
+ "mobile": {
177
+ "required": "必須項目です",
178
+ "invalid": "無効な台湾携帯電話番号形式です",
179
+ "notInWhitelist": "許可された携帯電話番号リストに含まれていません"
180
+ },
181
+ "tel": {
182
+ "required": "必須項目です",
183
+ "invalid": "無効な台湾固定電話番号形式です",
184
+ "notInWhitelist": "許可された固定電話番号リストに含まれていません"
185
+ },
186
+ "fax": {
187
+ "required": "必須項目です",
188
+ "invalid": "無効な台湾FAX番号形式です",
189
+ "notInWhitelist": "許可されたFAX番号リストに含まれていません"
190
+ },
191
+ "postalCode": {
192
+ "required": "必須項目です",
193
+ "invalid": "無効な台湾郵便番号です",
194
+ "invalidFormat": "郵便番号の形式が無効です",
195
+ "invalidRange": "郵便番号が有効範囲外です",
196
+ "legacy5DigitWarning": "5桁の郵便番号は旧形式です。6桁形式の使用を推奨します",
197
+ "format3Only": "3桁の郵便番号のみ使用可能です",
198
+ "format5Only": "5桁の郵便番号のみ使用可能です",
199
+ "format6Only": "6桁の郵便番号のみ使用可能です",
200
+ "invalidSuffix": "無効な郵便番号の末尾 - 5桁は01-99、6桁は001-999である必要があります",
201
+ "deprecated5Digit": "5桁の郵便番号は廃止されており、サポートされていません"
202
+ }
203
+ }
204
+ }
@@ -0,0 +1,204 @@
1
+ {
2
+ "common": {
3
+ "boolean": {
4
+ "required": "필수 항목입니다",
5
+ "shouldBeTrue": "True여야 합니다",
6
+ "shouldBeFalse": "False여야 합니다",
7
+ "invalid": "불리언 값이어야 합니다"
8
+ },
9
+ "email": {
10
+ "required": "필수 항목입니다",
11
+ "invalid": "이메일 형식이 올바르지 않습니다",
12
+ "minLength": "최소 ${minLength}자 이상이어야 합니다",
13
+ "maxLength": "최대 ${maxLength}자 이하여야 합니다",
14
+ "includes": "「${includes}」을(를) 포함해야 합니다",
15
+ "domain": "도메인은 ${domain}이어야 합니다",
16
+ "domainBlacklist": "도메인 ${domain}은(는) 허용되지 않습니다",
17
+ "businessOnly": "비즈니스 이메일 주소만 허용됩니다",
18
+ "noDisposable": "일회용 이메일 주소는 허용되지 않습니다"
19
+ },
20
+ "url": {
21
+ "required": "필수 항목입니다",
22
+ "invalid": "유효하지 않은 URL 형식입니다",
23
+ "min": "최소 ${min}자 이상이어야 합니다",
24
+ "max": "최대 ${max}자 이하여야 합니다",
25
+ "includes": "「${includes}」을(를) 포함해야 합니다",
26
+ "excludes": "「${excludes}」을(를) 포함할 수 없습니다",
27
+ "protocol": "프로토콜은 다음 중 하나여야 합니다: ${protocols}",
28
+ "domain": "도메인은 다음 중 하나여야 합니다: ${domains}",
29
+ "domainBlacklist": "도메인 ${domain}은(는) 허용되지 않습니다",
30
+ "port": "포트는 다음 중 하나여야 합니다: ${ports}",
31
+ "pathStartsWith": "경로는 「${path}」으로 시작해야 합니다",
32
+ "pathEndsWith": "경로는 「${path}」으로 끝나야 합니다",
33
+ "hasQuery": "URL에 쿼리 매개변수가 있어야 합니다",
34
+ "noQuery": "URL에 쿼리 매개변수가 없어야 합니다",
35
+ "hasFragment": "URL에 프래그먼트가 있어야 합니다",
36
+ "noFragment": "URL에 프래그먼트가 없어야 합니다",
37
+ "localhost": "로컬호스트 URL은 허용되지 않습니다",
38
+ "noLocalhost": "로컬호스트 URL은 허용되지 않습니다"
39
+ },
40
+ "password": {
41
+ "required": "필수 항목입니다",
42
+ "min": "최소 ${min}자 이상이어야 합니다",
43
+ "max": "최대 ${max}자 이하여야 합니다",
44
+ "uppercase": "대문자를 최소 1자 이상 포함해야 합니다",
45
+ "lowercase": "소문자를 최소 1자 이상 포함해야 합니다",
46
+ "digits": "숫자를 최소 1자 이상 포함해야 합니다",
47
+ "special": "특수문자를 최소 1자 이상 포함해야 합니다",
48
+ "noRepeating": "반복 문자를 포함할 수 없습니다",
49
+ "noSequential": "연속 문자를 포함할 수 없습니다",
50
+ "noCommonWords": "일반적인 단어나 패턴을 포함할 수 없습니다",
51
+ "minStrength": "비밀번호 강도는 최소 ${minStrength} 이상이어야 합니다",
52
+ "excludes": "「${excludes}」을(를) 포함할 수 없습니다",
53
+ "includes": "「${includes}」을(를) 포함해야 합니다",
54
+ "invalid": "비밀번호 형식이 올바르지 않습니다"
55
+ },
56
+ "number": {
57
+ "required": "필수 항목입니다",
58
+ "invalid": "유효한 숫자여야 합니다",
59
+ "integer": "정수여야 합니다",
60
+ "float": "소수여야 합니다",
61
+ "min": "최솟값은 ${min}입니다",
62
+ "max": "최댓값은 ${max}입니다",
63
+ "positive": "양수여야 합니다",
64
+ "negative": "음수여야 합니다",
65
+ "nonNegative": "음수가 아니어야 합니다",
66
+ "nonPositive": "양수가 아니어야 합니다",
67
+ "multipleOf": "${multipleOf}의 배수여야 합니다",
68
+ "finite": "유한한 수여야 합니다",
69
+ "precision": "소수점 이하 ${precision}자리 이내여야 합니다"
70
+ },
71
+ "id": {
72
+ "required": "필수 항목입니다",
73
+ "invalid": "유효하지 않은 ID 형식입니다",
74
+ "minLength": "최소 ${minLength}자 이상이어야 합니다",
75
+ "maxLength": "최대 ${maxLength}자 이하여야 합니다",
76
+ "numeric": "숫자 ID여야 합니다",
77
+ "uuid": "유효한 UUID여야 합니다",
78
+ "objectId": "유효한 MongoDB ObjectId여야 합니다",
79
+ "nanoid": "유효한 Nano ID여야 합니다",
80
+ "snowflake": "유효한 Snowflake ID여야 합니다",
81
+ "cuid": "유효한 CUID여야 합니다",
82
+ "ulid": "유효한 ULID여야 합니다",
83
+ "shortid": "유효한 Short ID여야 합니다",
84
+ "customFormat": "유효하지 않은 ID 형식입니다",
85
+ "includes": "「${includes}」을(를) 포함해야 합니다",
86
+ "excludes": "「${excludes}」을(를) 포함할 수 없습니다",
87
+ "startsWith": "「${startsWith}」으로 시작해야 합니다",
88
+ "endsWith": "「${endsWith}」으로 끝나야 합니다"
89
+ },
90
+ "text": {
91
+ "required": "필수 항목입니다",
92
+ "notEmpty": "비어 있거나 공백만 포함할 수 없습니다",
93
+ "minLength": "최소 ${minLength}자 이상이어야 합니다",
94
+ "maxLength": "최대 ${maxLength}자 이하여야 합니다",
95
+ "startsWith": "「${startsWith}」으로 시작해야 합니다",
96
+ "endsWith": "「${endsWith}」으로 끝나야 합니다",
97
+ "includes": "「${includes}」을(를) 포함해야 합니다",
98
+ "excludes": "「${excludes}」을(를) 포함할 수 없습니다",
99
+ "invalid": "형식이 올바르지 않습니다"
100
+ },
101
+ "date": {
102
+ "required": "필수 항목입니다",
103
+ "invalid": "유효하지 않은 날짜입니다",
104
+ "format": "${format} 형식이어야 합니다",
105
+ "min": "날짜는 ${min} 이후여야 합니다",
106
+ "max": "날짜는 ${max} 이전이어야 합니다",
107
+ "includes": "「${includes}」을(를) 포함해야 합니다",
108
+ "excludes": "「${excludes}」을(를) 포함할 수 없습니다",
109
+ "past": "과거 날짜여야 합니다",
110
+ "future": "미래 날짜여야 합니다",
111
+ "today": "오늘 날짜여야 합니다",
112
+ "notToday": "오늘이 아닌 날짜여야 합니다",
113
+ "weekday": "평일(월요일~금요일)이어야 합니다",
114
+ "weekend": "주말(토요일~일요일)이어야 합니다"
115
+ },
116
+ "time": {
117
+ "required": "필수 항목입니다",
118
+ "invalid": "유효하지 않은 시간 형식입니다",
119
+ "format": "${format} 형식이어야 합니다",
120
+ "min": "시간은 ${min} 이후여야 합니다",
121
+ "max": "시간은 ${max} 이전이어야 합니다",
122
+ "hour": "시간은 ${minHour}에서 ${maxHour} 사이여야 합니다",
123
+ "minute": "분은 ${minuteStep}분 간격이어야 합니다",
124
+ "second": "초는 ${secondStep}초 간격이어야 합니다",
125
+ "includes": "「${includes}」을(를) 포함해야 합니다",
126
+ "excludes": "「${excludes}」을(를) 포함할 수 없습니다",
127
+ "customRegex": "유효하지 않은 시간 형식입니다",
128
+ "notInWhitelist": "허용 목록에 없는 시간입니다"
129
+ },
130
+ "datetime": {
131
+ "required": "필수 항목입니다",
132
+ "invalid": "유효하지 않은 날짜시간 형식입니다",
133
+ "format": "${format} 형식이어야 합니다",
134
+ "min": "날짜시간은 ${min} 이후여야 합니다",
135
+ "max": "날짜시간은 ${max} 이전이어야 합니다",
136
+ "hour": "시간은 ${minHour}에서 ${maxHour} 사이여야 합니다",
137
+ "minute": "분은 ${minuteStep}분 간격이어야 합니다",
138
+ "includes": "「${includes}」을(를) 포함해야 합니다",
139
+ "excludes": "「${excludes}」을(를) 포함할 수 없습니다",
140
+ "past": "과거 날짜시간이어야 합니다",
141
+ "future": "미래 날짜시간이어야 합니다",
142
+ "today": "오늘이어야 합니다",
143
+ "notToday": "오늘이 아니어야 합니다",
144
+ "weekday": "평일(월요일~금요일)이어야 합니다",
145
+ "weekend": "주말(토요일~일요일)이어야 합니다",
146
+ "customRegex": "유효하지 않은 날짜시간 형식입니다",
147
+ "notInWhitelist": "허용 목록에 없는 날짜시간입니다"
148
+ },
149
+ "file": {
150
+ "required": "필수 항목입니다",
151
+ "invalid": "유효하지 않은 파일 형식입니다",
152
+ "size": "파일 크기는 ${size} 이하여야 합니다",
153
+ "minSize": "파일 크기는 ${minSize} 이상이어야 합니다",
154
+ "maxSize": "파일 크기는 ${maxSize} 이하여야 합니다",
155
+ "type": "파일 유형은 다음 중 하나여야 합니다: ${type}",
156
+ "extension": "파일 확장자는 다음 중 하나여야 합니다: ${extension}",
157
+ "extensionBlacklist": "파일 확장자 ${extension}은(는) 허용되지 않습니다",
158
+ "name": "파일 이름은 패턴 ${pattern}과(와) 일치해야 합니다",
159
+ "nameBlacklist": "파일 이름은 패턴 ${pattern}과(와) 일치하면 안 됩니다",
160
+ "imageOnly": "이미지 파일만 허용됩니다",
161
+ "documentOnly": "문서 파일만 허용됩니다",
162
+ "videoOnly": "동영상 파일만 허용됩니다",
163
+ "audioOnly": "오디오 파일만 허용됩니다",
164
+ "archiveOnly": "압축 파일만 허용됩니다"
165
+ }
166
+ },
167
+ "taiwan": {
168
+ "businessId": {
169
+ "required": "필수 항목입니다",
170
+ "invalid": "유효하지 않은 대만 사업자등록번호입니다"
171
+ },
172
+ "nationalId": {
173
+ "required": "필수 항목입니다",
174
+ "invalid": "유효하지 않은 대만 주민등록번호입니다"
175
+ },
176
+ "mobile": {
177
+ "required": "필수 항목입니다",
178
+ "invalid": "유효하지 않은 대만 휴대전화 형식입니다",
179
+ "notInWhitelist": "허용된 휴대전화 목록에 없습니다"
180
+ },
181
+ "tel": {
182
+ "required": "필수 항목입니다",
183
+ "invalid": "유효하지 않은 대만 유선전화 형식입니다",
184
+ "notInWhitelist": "허용된 유선전화 목록에 없습니다"
185
+ },
186
+ "fax": {
187
+ "required": "필수 항목입니다",
188
+ "invalid": "유효하지 않은 대만 팩스 형식입니다",
189
+ "notInWhitelist": "허용된 팩스 목록에 없습니다"
190
+ },
191
+ "postalCode": {
192
+ "required": "필수 항목입니다",
193
+ "invalid": "유효하지 않은 대만 우편번호입니다",
194
+ "invalidFormat": "우편번호 형식이 올바르지 않습니다",
195
+ "invalidRange": "우편번호가 유효 범위를 벗어났습니다",
196
+ "legacy5DigitWarning": "5자리 우편번호는 구형식입니다. 6자리 형식 사용을 권장합니다",
197
+ "format3Only": "3자리 우편번호만 허용됩니다",
198
+ "format5Only": "5자리 우편번호만 허용됩니다",
199
+ "format6Only": "6자리 우편번호만 허용됩니다",
200
+ "invalidSuffix": "유효하지 않은 우편번호 접미사 - 5자리는 01-99, 6자리는 001-999이어야 합니다",
201
+ "deprecated5Digit": "5자리 우편번호는 폐지되어 더 이상 지원되지 않습니다"
202
+ }
203
+ }
204
+ }
@@ -0,0 +1,204 @@
1
+ {
2
+ "common": {
3
+ "boolean": {
4
+ "required": "Wajib diisi",
5
+ "shouldBeTrue": "Mesti True",
6
+ "shouldBeFalse": "Mesti False",
7
+ "invalid": "Mesti nilai boolean"
8
+ },
9
+ "email": {
10
+ "required": "Wajib diisi",
11
+ "invalid": "Format e-mel tidak sah",
12
+ "minLength": "Mesti sekurang-kurangnya ${minLength} aksara",
13
+ "maxLength": "Mesti tidak melebihi ${maxLength} aksara",
14
+ "includes": "Mesti mengandungi ${includes}",
15
+ "domain": "Mesti daripada domain: ${domain}",
16
+ "domainBlacklist": "Domain ${domain} tidak dibenarkan",
17
+ "businessOnly": "Hanya alamat e-mel perniagaan dibenarkan",
18
+ "noDisposable": "Alamat e-mel pakai buang tidak dibenarkan"
19
+ },
20
+ "url": {
21
+ "required": "Wajib diisi",
22
+ "invalid": "Format URL tidak sah",
23
+ "min": "Mesti sekurang-kurangnya ${min} aksara",
24
+ "max": "Mesti tidak melebihi ${max} aksara",
25
+ "includes": "Mesti mengandungi ${includes}",
26
+ "excludes": "Tidak boleh mengandungi ${excludes}",
27
+ "protocol": "Protokol mesti salah satu daripada: ${protocols}",
28
+ "domain": "Domain mesti salah satu daripada: ${domains}",
29
+ "domainBlacklist": "Domain ${domain} tidak dibenarkan",
30
+ "port": "Port mesti salah satu daripada: ${ports}",
31
+ "pathStartsWith": "Laluan mesti bermula dengan ${path}",
32
+ "pathEndsWith": "Laluan mesti berakhir dengan ${path}",
33
+ "hasQuery": "URL mesti mempunyai parameter pertanyaan",
34
+ "noQuery": "URL tidak boleh mempunyai parameter pertanyaan",
35
+ "hasFragment": "URL mesti mempunyai fragmen",
36
+ "noFragment": "URL tidak boleh mempunyai fragmen",
37
+ "localhost": "URL localhost tidak dibenarkan",
38
+ "noLocalhost": "URL localhost tidak dibenarkan"
39
+ },
40
+ "password": {
41
+ "required": "Wajib diisi",
42
+ "min": "Mesti sekurang-kurangnya ${min} aksara",
43
+ "max": "Mesti tidak melebihi ${max} aksara",
44
+ "uppercase": "Mesti mengandungi sekurang-kurangnya satu huruf besar",
45
+ "lowercase": "Mesti mengandungi sekurang-kurangnya satu huruf kecil",
46
+ "digits": "Mesti mengandungi sekurang-kurangnya satu digit",
47
+ "special": "Mesti mengandungi sekurang-kurangnya satu aksara khas",
48
+ "noRepeating": "Tidak boleh mengandungi aksara berulang",
49
+ "noSequential": "Tidak boleh mengandungi aksara berturutan",
50
+ "noCommonWords": "Tidak boleh mengandungi perkataan atau corak biasa",
51
+ "minStrength": "Kekuatan kata laluan mesti sekurang-kurangnya ${minStrength}",
52
+ "excludes": "Tidak boleh mengandungi ${excludes}",
53
+ "includes": "Mesti mengandungi ${includes}",
54
+ "invalid": "Format kata laluan tidak sah"
55
+ },
56
+ "number": {
57
+ "required": "Wajib diisi",
58
+ "invalid": "Mesti nombor yang sah",
59
+ "integer": "Mesti integer",
60
+ "float": "Mesti nombor perpuluhan",
61
+ "min": "Mesti sekurang-kurangnya ${min}",
62
+ "max": "Mesti tidak melebihi ${max}",
63
+ "positive": "Mesti positif",
64
+ "negative": "Mesti negatif",
65
+ "nonNegative": "Mesti bukan negatif",
66
+ "nonPositive": "Mesti bukan positif",
67
+ "multipleOf": "Mesti gandaan ${multipleOf}",
68
+ "finite": "Mesti nombor terhingga",
69
+ "precision": "Mesti tidak melebihi ${precision} tempat perpuluhan"
70
+ },
71
+ "id": {
72
+ "required": "Wajib diisi",
73
+ "invalid": "Format ID tidak sah",
74
+ "minLength": "Mesti sekurang-kurangnya ${minLength} aksara",
75
+ "maxLength": "Mesti tidak melebihi ${maxLength} aksara",
76
+ "numeric": "Mesti ID numerik",
77
+ "uuid": "Mesti UUID yang sah",
78
+ "objectId": "Mesti MongoDB ObjectId yang sah",
79
+ "nanoid": "Mesti Nano ID yang sah",
80
+ "snowflake": "Mesti Snowflake ID yang sah",
81
+ "cuid": "Mesti CUID yang sah",
82
+ "ulid": "Mesti ULID yang sah",
83
+ "shortid": "Mesti Short ID yang sah",
84
+ "customFormat": "Format ID tidak sah",
85
+ "includes": "Mesti mengandungi ${includes}",
86
+ "excludes": "Tidak boleh mengandungi ${excludes}",
87
+ "startsWith": "Mesti bermula dengan ${startsWith}",
88
+ "endsWith": "Mesti berakhir dengan ${endsWith}"
89
+ },
90
+ "text": {
91
+ "required": "Wajib diisi",
92
+ "notEmpty": "Tidak boleh kosong atau ruang putih sahaja",
93
+ "minLength": "Mesti sekurang-kurangnya ${minLength} aksara",
94
+ "maxLength": "Mesti tidak melebihi ${maxLength} aksara",
95
+ "startsWith": "Mesti bermula dengan ${startsWith}",
96
+ "endsWith": "Mesti berakhir dengan ${endsWith}",
97
+ "includes": "Mesti mengandungi ${includes}",
98
+ "excludes": "Tidak boleh mengandungi ${excludes}",
99
+ "invalid": "Format tidak sah"
100
+ },
101
+ "date": {
102
+ "required": "Wajib diisi",
103
+ "invalid": "Tarikh tidak sah",
104
+ "format": "Mesti dalam format ${format}",
105
+ "min": "Tarikh mesti pada atau selepas ${min}",
106
+ "max": "Tarikh mesti pada atau sebelum ${max}",
107
+ "includes": "Mesti mengandungi ${includes}",
108
+ "excludes": "Tidak boleh mengandungi ${excludes}",
109
+ "past": "Tarikh mesti pada masa lalu",
110
+ "future": "Tarikh mesti pada masa hadapan",
111
+ "today": "Tarikh mesti hari ini",
112
+ "notToday": "Tarikh tidak boleh hari ini",
113
+ "weekday": "Tarikh mesti hari bekerja (Isnin-Jumaat)",
114
+ "weekend": "Tarikh mesti hujung minggu (Sabtu-Ahad)"
115
+ },
116
+ "time": {
117
+ "required": "Wajib diisi",
118
+ "invalid": "Format masa tidak sah",
119
+ "format": "Mesti dalam format ${format}",
120
+ "min": "Masa mesti selepas ${min}",
121
+ "max": "Masa mesti sebelum ${max}",
122
+ "hour": "Jam mesti antara ${minHour} dan ${maxHour}",
123
+ "minute": "Minit mesti dalam selang ${minuteStep} minit",
124
+ "second": "Saat mesti dalam selang ${secondStep} saat",
125
+ "includes": "Mesti mengandungi ${includes}",
126
+ "excludes": "Tidak boleh mengandungi ${excludes}",
127
+ "customRegex": "Format masa tidak sah",
128
+ "notInWhitelist": "Masa tiada dalam senarai yang dibenarkan"
129
+ },
130
+ "datetime": {
131
+ "required": "Wajib diisi",
132
+ "invalid": "Format tarikh masa tidak sah",
133
+ "format": "Mesti dalam format ${format}",
134
+ "min": "Tarikh masa mesti selepas ${min}",
135
+ "max": "Tarikh masa mesti sebelum ${max}",
136
+ "hour": "Jam mesti antara ${minHour} dan ${maxHour}",
137
+ "minute": "Minit mesti dalam selang ${minuteStep} minit",
138
+ "includes": "Mesti mengandungi ${includes}",
139
+ "excludes": "Tidak boleh mengandungi ${excludes}",
140
+ "past": "Tarikh masa mesti pada masa lalu",
141
+ "future": "Tarikh masa mesti pada masa hadapan",
142
+ "today": "Tarikh masa mesti hari ini",
143
+ "notToday": "Tarikh masa tidak boleh hari ini",
144
+ "weekday": "Tarikh masa mesti hari bekerja (Isnin-Jumaat)",
145
+ "weekend": "Tarikh masa mesti hujung minggu (Sabtu-Ahad)",
146
+ "customRegex": "Format tarikh masa tidak sah",
147
+ "notInWhitelist": "Tarikh masa tiada dalam senarai yang dibenarkan"
148
+ },
149
+ "file": {
150
+ "required": "Wajib diisi",
151
+ "invalid": "Format fail tidak sah",
152
+ "size": "Saiz fail tidak boleh melebihi ${size}",
153
+ "minSize": "Saiz fail mesti sekurang-kurangnya ${minSize}",
154
+ "maxSize": "Saiz fail tidak boleh melebihi ${maxSize}",
155
+ "type": "Jenis fail mesti salah satu daripada: ${type}",
156
+ "extension": "Sambungan fail mesti salah satu daripada: ${extension}",
157
+ "extensionBlacklist": "Sambungan fail ${extension} tidak dibenarkan",
158
+ "name": "Nama fail mesti sepadan dengan corak ${pattern}",
159
+ "nameBlacklist": "Nama fail tidak boleh sepadan dengan corak ${pattern}",
160
+ "imageOnly": "Hanya fail imej dibenarkan",
161
+ "documentOnly": "Hanya fail dokumen dibenarkan",
162
+ "videoOnly": "Hanya fail video dibenarkan",
163
+ "audioOnly": "Hanya fail audio dibenarkan",
164
+ "archiveOnly": "Hanya fail arkib dibenarkan"
165
+ }
166
+ },
167
+ "taiwan": {
168
+ "businessId": {
169
+ "required": "Wajib diisi",
170
+ "invalid": "ID Perniagaan Taiwan tidak sah"
171
+ },
172
+ "nationalId": {
173
+ "required": "Wajib diisi",
174
+ "invalid": "ID Kebangsaan Taiwan tidak sah"
175
+ },
176
+ "mobile": {
177
+ "required": "Wajib diisi",
178
+ "invalid": "Format telefon bimbit Taiwan tidak sah",
179
+ "notInWhitelist": "Tiada dalam senarai telefon bimbit yang dibenarkan"
180
+ },
181
+ "tel": {
182
+ "required": "Wajib diisi",
183
+ "invalid": "Format telefon talian tetap Taiwan tidak sah",
184
+ "notInWhitelist": "Tiada dalam senarai telefon talian tetap yang dibenarkan"
185
+ },
186
+ "fax": {
187
+ "required": "Wajib diisi",
188
+ "invalid": "Format faks Taiwan tidak sah",
189
+ "notInWhitelist": "Tiada dalam senarai faks yang dibenarkan"
190
+ },
191
+ "postalCode": {
192
+ "required": "Wajib diisi",
193
+ "invalid": "Poskod Taiwan tidak sah",
194
+ "invalidFormat": "Format poskod tidak sah",
195
+ "invalidRange": "Poskod di luar julat yang sah",
196
+ "legacy5DigitWarning": "Poskod 5 digit adalah format lama, pertimbangkan untuk menggunakan format 6 digit",
197
+ "format3Only": "Hanya poskod 3 digit dibenarkan",
198
+ "format5Only": "Hanya poskod 5 digit dibenarkan",
199
+ "format6Only": "Hanya poskod 6 digit dibenarkan",
200
+ "invalidSuffix": "Akhiran poskod tidak sah - mesti 01-99 untuk 5 digit atau 001-999 untuk 6 digit",
201
+ "deprecated5Digit": "Poskod 5 digit telah ditamatkan dan tidak lagi disokong"
202
+ }
203
+ }
204
+ }