module.exports = {
  'alpha': 'Input harus berupa huruf.',
  'alphanumeric': 'Input harus berupa huruf atau angka.',
  'beginWith:$1': 'Input tidak valid.',
  'between:$1:$2:': 'Input antara <%= ruleParams[0] %> dan <% ruleParams[1] %>.',
  'boolean': 'Input harus boolean.',
  'creditCard': 'Nomor kartu kredit tidak valid.',
  'dateAfter:$1:$2:$3:$4': 'Tanggal tidak valid.',
  'dateBefore:$1:$2:$3:$4': 'Tanggal tidak valid.',
  'dateFormat:$1': 'Format tanggal tidak valid.',
  'email': 'Format email tidak valid.',
  'emptyString': 'Input harus kosong',
  'equal:$1': 'Input tidak sesuai.',
  'image': 'File harus berupa gambar.',
  'indonesiaIdCardNumberBirthDate:$1:$2': 'Digit Nomor KTP tidak sesuai dengan tanggal lahir',
  'indonesiaIdCardNumberGender:$1:$2:$3': 'Digit Nomor KTP tidak sesuai dengan jenis kelamin',
  'indonesiaIdCardNumberProvince:$1': 'Digit Nomor KTP tidak sesuai dengan provinsi',
  'indonesiaIdCardNumberValidProvince': 'Kode provinsi pada Nomor KTP tidak benar',
  'length:$1': 'Jumlah karakter harus <%= ruleParams[0] %>.',
  'maxLength:$1': 'Jumlah karakter tidak boleh lebih dari <%= ruleParams[0] %>.',
  'maxValue:$1': 'Input tidak boleh lebih dari <%= ruleParams[0] %>.',
  'memberOf:$1': 'Input tidak valid.',
  'minLength:$1': 'Jumlah karakter tidak boleh kurang dari <%= ruleParams[0] %>.',
  'minimumAge:$1:$2': 'Umur tidak boleh kurang dari <%= ruleParams[0] %> tahun',
  'minValue:$1': 'Input tidak boleh kurang dari <%= ruleParams[0] %>.',
  'mobilePhoneNumber': 'Nomor handphone tidak valid.',
  'mongoId': '<%= propertyName %> tidak valid.',
  'nonBlank': 'Input ini wajib diisi.',
  'numeric': 'Input harus berupa angka.',
  'pattern:$1:$2': 'Input tidak valid.',
  'phoneNumber': 'Nomor telepon tidak valid.',
  'regex:$1:$2': 'Input tidak valid.',
  'required': 'Input ini wajib diisi.',
  'requiredIf:$1:$2': 'Input ini wajib diisi.',
  'samePassword': 'Confirm Password tidak sama dengan Password',
  'taxId:$1': 'Nomor NPWP tidak valid.',
  'url': 'Format link tidak valid.',
  'uuid:$1': 'Input harus berupa UUID.',
  'validZipCode': 'Kode Pos tidak valid'
};

@@ -316,24 +316,82 @@
 ak valid.',%0A
+  'date': 'Input harus dalam format tanggal yang valid.',%0A
   'dateAfter
@@ -654,41 +654,129 @@
 %0A  '
-image': 'File harus berupa gambar
+fqdn': 'Input harus dalam format FQDN.',%0A  'image': 'File harus berupa gambar.',%0A  'imei': 'Input harus dalam format IMEI
 .',%0A
@@ -1765,24 +1765,173 @@
 ib diisi.',%0A
+  'not-equal:$1': 'Input tidak boleh sama dengan %3C%25= rulaParams%5B0%5D %25%3E.',%0A  'not-memberOf:$1': 'Input tidak boleh bagian dari %3C%25= rulaParams%5B0%5D %25%3E.',%0A
   'numeric':
@@ -2240,16 +2240,58 @@
 sword',%0A
+  'string': 'Input harus berupa string.',%0A
   'taxId

Add missing translation