import type { LocaleConfig } from '../types';

export const id: LocaleConfig = {
  locale: 'id',
  name: 'Indonesian',
  scripts: ['latn'],
  countries: ['ID'],
  phoneContextKeywords: [
    'telepon',
    'telp',
    'ponsel',
    'nomor',
    'tel.',
    'tel',
    'hp',
  ],
  cvcContextKeywords: ['kode keamanan', 'cvc', 'cvv', 'cv2'],
  address: {
    forms: ['inverted', 'standard', 'po-box'],
    postcodeForm: 'continental',
    postcodeRegex: '\\d{5}',
    streetKeywordsInverted: ['Jalan', 'Jl.', 'Jl', 'Gang', 'Gg.', 'Lorong'],
    houseNumberMarkers: ['No.', 'no.', 'nr.'],
    poBoxKeywords: ['Kotak Pos', 'PO Box'],
    floorKeywords: ['Lantai', 'Lt.', 'Apartemen', 'Apt.'],
    countryNames: ['Indonesia', 'ID'],
    countryPostcodePrefixes: [],
    requireUppercase: true,
  },
  nationalIds: [
    {
      id: 'id-nik',
      name: 'Indonesian NIK',
      pattern: '\\b\\d{16}\\b',
      replacement: '[NIK]',
    },
  ],
  dateOfBirth: {
    monthsLong: [
      'Januari',
      'Februari',
      'Maret',
      'April',
      'Mei',
      'Juni',
      'Juli',
      'Agustus',
      'September',
      'Oktober',
      'November',
      'Desember',
    ],
    contextKeywords: ['tanggal lahir', 'lahir', 'TTL'],
  },
};
