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

export const fi: LocaleConfig = {
  locale: 'fi',
  name: 'Finnish',
  scripts: ['latn'],
  countries: ['FI'],
  phoneContextKeywords: [
    'puhelin',
    'matkapuhelin',
    'numero',
    'puh.',
    'puh',
    'tel.',
    'tel',
  ],
  cvcContextKeywords: ['turvakoodi', 'cvc', 'cvv', 'cv2'],
  address: {
    forms: ['glued-suffix', 'standalone-suffix', 'po-box'],
    postcodeForm: 'continental',
    postcodeRegex: '\\d{5}',
    streetSuffixGlued: [
      'katu',
      'tie',
      'kuja',
      'polku',
      'väylä',
      'raitti',
      'puistikko',
      'aukio',
    ],
    streetKeywordsFreeSuffix: ['aukio', 'puistikko'],
    poBoxKeywords: ['PL', 'Postilokero'],
    floorKeywords: ['kerros', 'krs', 'asunto', 'as.'],
    countryNames: ['Suomi', 'Finland', 'FI'],
    countryPostcodePrefixes: [],
    requireUppercase: true,
  },
  nationalIds: [
    {
      id: 'fi-hetu',
      name: 'Finnish HETU',
      pattern: '\\b\\d{6}[+\\-A]\\d{3}[\\dA-Z]\\b',
      replacement: '[HETU]',
    },
  ],
  dateOfBirth: {
    monthsLong: [
      'tammikuu',
      'helmikuu',
      'maaliskuu',
      'huhtikuu',
      'toukokuu',
      'kesäkuu',
      'heinäkuu',
      'elokuu',
      'syyskuu',
      'lokakuu',
      'marraskuu',
      'joulukuu',
      'tammikuuta',
      'helmikuuta',
      'maaliskuuta',
      'huhtikuuta',
      'toukokuuta',
      'kesäkuuta',
      'heinäkuuta',
      'elokuuta',
      'syyskuuta',
      'lokakuuta',
      'marraskuuta',
      'joulukuuta',
    ],
    monthsShort: [
      'tammi',
      'helmi',
      'maalis',
      'huhti',
      'touko',
      'kesä',
      'heinä',
      'elo',
      'syys',
      'loka',
      'marras',
      'joulu',
    ],
    contextKeywords: ['syntynyt', 'syntymäaika', 'syntymäpäivä', 's.'],
  },
};
