diff --git a/components/locale-provider/ar_EG.js b/components/locale-provider/ar_EG.js
new file mode 100644
index 000000000..e48b8bdf1
--- /dev/null
+++ b/components/locale-provider/ar_EG.js
@@ -0,0 +1,44 @@
+import Pagination from '../vc-pagination/locale/ar_EG';
+import DatePicker from '../date-picker/locale/ar_EG';
+import TimePicker from '../time-picker/locale/ar_EG';
+import Calendar from '../calendar/locale/ar_EG';
+
+export default {
+  locale : 'ar',
+  Pagination,
+  DatePicker,
+  TimePicker,
+  Calendar,
+  Table : {
+    filterTitle: 'الفلاتر',
+    filterConfirm: 'تأكيد',
+    filterReset: 'إعادة ضبط',
+    emptyText: 'لا توجد بيانات',
+    selectAll: 'اختيار الكل',
+    selectInvert: 'إلغاء الاختيار'
+  },
+  Modal : {
+    okText: 'تأكيد',
+    cancelText: 'إلغاء',
+    justOkText: 'تأكيد'
+  },
+  Popconfirm : {
+    okText: 'تأكيد',
+    cancelText: 'إلغاء'
+  },
+  Transfer : {
+    notFoundContent: 'لا يوجد محتوى',
+    searchPlaceholder: 'ابحث هنا',
+    itemUnit: 'عنصر',
+    itemsUnit: 'عناصر'
+  },
+  Select : {
+    notFoundContent: 'لايوجد محتوى'
+  },
+  Upload : {
+    uploading: 'جاري الرفع...',
+    removeFile: 'احذف الملف',
+    uploadError: 'مشكلة فى الرفع',
+    previewFile: 'استعرض الملف'
+  }
+};
diff --git a/components/locale-provider/bg_BG.js b/components/locale-provider/bg_BG.js
new file mode 100644
index 000000000..de5300cc6
--- /dev/null
+++ b/components/locale-provider/bg_BG.js
@@ -0,0 +1,44 @@
+import Pagination from '../vc-pagination/locale/bg_BG';
+import DatePicker from '../date-picker/locale/bg_BG';
+import TimePicker from '../time-picker/locale/bg_BG';
+import Calendar from '../calendar/locale/bg_BG';
+
+export default {
+  locale : 'bg',
+  Pagination,
+  DatePicker,
+  TimePicker,
+  Calendar,
+  Table : {
+    filterTitle: 'Филтриране',
+    filterConfirm: 'Добре',
+    filterReset: 'Нулриане',
+    emptyText: 'Няма данни',
+    selectAll: 'Избор на текуща страница',
+    selectInvert: 'Обръщане'
+  },
+  Modal : {
+    okText: 'Добре',
+    cancelText: 'Отказ',
+    justOkText: 'Добре'
+  },
+  Popconfirm : {
+    okText: 'Добре',
+    cancelText: 'Отказ'
+  },
+  Transfer : {
+    notFoundContent: 'Няма намерени',
+    searchPlaceholder: 'Търсене',
+    itemUnit: 'избор',
+    itemsUnit: 'избори'
+  },
+  Select : {
+    notFoundContent: 'Няма намерени'
+  },
+  Upload : {
+    uploading: 'Качване...',
+    removeFile: 'Премахване',
+    uploadError: 'Грешка при качването',
+    previewFile: 'Преглед'
+  }
+};
diff --git a/components/locale-provider/ca_ES.js b/components/locale-provider/ca_ES.js
new file mode 100644
index 000000000..470c45ca3
--- /dev/null
+++ b/components/locale-provider/ca_ES.js
@@ -0,0 +1,36 @@
+import Pagination from '../vc-pagination/locale/ca_ES';
+import DatePicker from '../date-picker/locale/ca_ES';
+import TimePicker from '../time-picker/locale/ca_ES';
+import Calendar from '../calendar/locale/ca_ES';
+
+export default {
+  locale : 'ca',
+  Pagination,
+  DatePicker,
+  TimePicker,
+  Calendar,
+  Table : {
+    filterTitle: 'Filtrar Menu',
+    filterConfirm: 'OK',
+    filterReset: 'Restablir',
+    emptyText: 'Sense dades'
+  },
+  Modal : {
+    okText: 'OK',
+    cancelText: 'Cancel·lar',
+    justOkText: 'OK'
+  },
+  Popconfirm : {
+    okText: 'OK',
+    cancelText: 'Cancel·lar'
+  },
+  Transfer : {
+    notFoundContent: 'No trobat',
+    searchPlaceholder: 'Cercar aquí',
+    itemUnit: 'item',
+    itemsUnit: 'items'
+  },
+  Select : {
+    notFoundContent: 'No trobat'
+  }
+};
diff --git a/components/locale-provider/cs_CZ.js b/components/locale-provider/cs_CZ.js
new file mode 100644
index 000000000..2d8c30922
--- /dev/null
+++ b/components/locale-provider/cs_CZ.js
@@ -0,0 +1,42 @@
+import Pagination from '../vc-pagination/locale/cs_CZ';
+import DatePicker from '../date-picker/locale/cs_CZ';
+import TimePicker from '../time-picker/locale/cs_CZ';
+import Calendar from '../calendar/locale/cs_CZ';
+
+export default {
+  locale : 'cs',
+  Pagination,
+  DatePicker,
+  TimePicker,
+  Calendar,
+  Table : {
+    filterTitle: 'Filtr',
+    filterConfirm: 'Potvrdit',
+    filterReset: 'Obnovit',
+    emptyText: 'Žádná data'
+  },
+  Modal : {
+    okText: 'Ok',
+    cancelText: 'Storno',
+    justOkText: 'Ok'
+  },
+  Popconfirm : {
+    okText: 'Ok',
+    cancelText: 'Storno'
+  },
+  Transfer : {
+    notFoundContent: 'Nenalezeno',
+    searchPlaceholder: 'Vyhledávání',
+    itemUnit: 'položka',
+    itemsUnit: 'položek'
+  },
+  Select : {
+    notFoundContent: 'Nenalezeno'
+  },
+  Upload : {
+    uploading: 'Nahrávání...',
+    removeFile: 'Odstranit soubor',
+    uploadError: 'Chyba při nahrávání',
+    previewFile: 'Zobrazit soubor'
+  }
+};
diff --git a/components/locale-provider/de_DE.js b/components/locale-provider/de_DE.js
new file mode 100644
index 000000000..6ffc26df0
--- /dev/null
+++ b/components/locale-provider/de_DE.js
@@ -0,0 +1,44 @@
+import Pagination from '../vc-pagination/locale/de_DE';
+import DatePicker from '../date-picker/locale/de_DE';
+import TimePicker from '../time-picker/locale/de_DE';
+import Calendar from '../calendar/locale/de_DE';
+
+export default {
+  locale : 'de',
+  Pagination,
+  DatePicker,
+  TimePicker,
+  Calendar,
+  Table : {
+    filterTitle: 'Filter-Menü',
+    filterConfirm: 'OK',
+    filterReset: 'Zurücksetzen',
+    emptyText: 'Keine Daten',
+    selectAll: 'Selektiere Alle',
+    selectInvert: 'Selektion Invertieren'
+  },
+  Modal : {
+    okText: 'OK',
+    cancelText: 'Abbrechen',
+    justOkText: 'OK'
+  },
+  Popconfirm : {
+    okText: 'OK',
+    cancelText: 'Abbrechen'
+  },
+  Transfer : {
+    notFoundContent: 'Nicht gefunden',
+    searchPlaceholder: 'Suchen',
+    itemUnit: 'Eintrag',
+    itemsUnit: 'Einträge'
+  },
+  Select : {
+    notFoundContent: 'Nicht gefunden'
+  },
+  Upload : {
+    uploading: 'Hochladen...',
+    removeFile: 'Datei entfernen',
+    uploadError: 'Fehler beim Hochladen',
+    previewFile: 'Dateivorschau'
+  }
+};
diff --git a/components/locale-provider/el_GR.js b/components/locale-provider/el_GR.js
new file mode 100644
index 000000000..b0c2dc492
--- /dev/null
+++ b/components/locale-provider/el_GR.js
@@ -0,0 +1,44 @@
+import Pagination from '../vc-pagination/locale/el_GR';
+import DatePicker from '../date-picker/locale/el_GR';
+import TimePicker from '../time-picker/locale/el_GR';
+import Calendar from '../calendar/locale/el_GR';
+
+export default {
+  locale : 'el',
+  Pagination,
+  DatePicker,
+  TimePicker,
+  Calendar,
+  Table : {
+    filterTitle: 'Μενού φίλτρων',
+    filterConfirm: 'ΟΚ',
+    filterReset: 'Επαναφορά',
+    emptyText: 'Δεν υπάρχουν δεδομένα',
+    selectAll: 'Επιλογή τρέχουσας σελίδας',
+    selectInvert: 'Αντιστροφή τρέχουσας σελίδας'
+  },
+  Modal : {
+    okText: 'ΟΚ',
+    cancelText: 'Άκυρο',
+    justOkText: 'ΟΚ'
+  },
+  Popconfirm : {
+    okText: 'ΟΚ',
+    cancelText: 'Άκυρο'
+  },
+  Transfer : {
+    notFoundContent: 'Δεν βρέθηκε',
+    searchPlaceholder: 'Αναζήτηση',
+    itemUnit: 'αντικείμενο',
+    itemsUnit: 'αντικείμενα'
+  },
+  Select : {
+    notFoundContent: 'Δεν βρέθηκε'
+  },
+  Upload : {
+    uploading: 'Μεταφόρτωση...',
+    removeFile: 'Αφαίρεση αρχείου',
+    uploadError: 'Σφάλμα μεταφόρτωσης',
+    previewFile: 'Προεπισκόπηση αρχείου'
+  }
+};
diff --git a/components/locale-provider/en_GB.js b/components/locale-provider/en_GB.js
new file mode 100644
index 000000000..e838b4cba
--- /dev/null
+++ b/components/locale-provider/en_GB.js
@@ -0,0 +1,44 @@
+import Pagination from '../vc-pagination/locale/en_GB';
+import DatePicker from '../date-picker/locale/en_GB';
+import TimePicker from '../time-picker/locale/en_GB';
+import Calendar from '../calendar/locale/en_GB';
+
+export default {
+  locale : 'en-gb',
+  Pagination,
+  DatePicker,
+  TimePicker,
+  Calendar,
+  Table : {
+    filterTitle: 'Filter menu',
+    filterConfirm: 'OK',
+    filterReset: 'Reset',
+    emptyText: 'No data',
+    selectAll: 'Select current page',
+    selectInvert: 'Invert current page'
+  },
+  Modal : {
+    okText: 'OK',
+    cancelText: 'Cancel',
+    justOkText: 'OK'
+  },
+  Popconfirm : {
+    okText: 'OK',
+    cancelText: 'Cancel'
+  },
+  Transfer : {
+    notFoundContent: 'Not Found',
+    searchPlaceholder: 'Search here',
+    itemUnit: 'item',
+    itemsUnit: 'items'
+  },
+  Select : {
+    notFoundContent: 'Not Found'
+  },
+  Upload : {
+    uploading: 'Uploading...',
+    removeFile: 'Remove file',
+    uploadError: 'Upload error',
+    previewFile: 'Preview file'
+  }
+};
diff --git a/components/locale-provider/en_US.js b/components/locale-provider/en_US.js
new file mode 100644
index 000000000..5d08924d7
--- /dev/null
+++ b/components/locale-provider/en_US.js
@@ -0,0 +1,3 @@
+import defaultLocale from './default';
+
+export default defaultLocale;
diff --git a/components/locale-provider/es_ES.js b/components/locale-provider/es_ES.js
new file mode 100644
index 000000000..7d1030fe6
--- /dev/null
+++ b/components/locale-provider/es_ES.js
@@ -0,0 +1,44 @@
+import Pagination from '../vc-pagination/locale/es_ES';
+import DatePicker from '../date-picker/locale/es_ES';
+import TimePicker from '../time-picker/locale/es_ES';
+import Calendar from '../calendar/locale/es_ES';
+
+export default {
+  locale : 'es',
+  Pagination,
+  DatePicker,
+  TimePicker,
+  Calendar,
+  Table : {
+    filterTitle: 'Filtrar menú',
+    filterConfirm: 'Aceptar',
+    filterReset: 'Reiniciar',
+    emptyText: 'No hay datos',
+    selectAll: 'Seleccionar todo',
+    selectInvert: 'Invertir selección'
+  },
+  Modal : {
+    okText: 'Aceptar',
+    cancelText: 'Cancelar',
+    justOkText: 'Aceptar'
+  },
+  Popconfirm : {
+    okText: 'Aceptar',
+    cancelText: 'Cancelar'
+  },
+  Transfer : {
+    notFoundContent: 'No encontrado',
+    searchPlaceholder: 'Buscar aquí',
+    itemUnit: 'elemento',
+    itemsUnit: 'elementos'
+  },
+  Select : {
+    notFoundContent: 'No encontrado'
+  },
+  Upload : {
+    uploading: 'Subiendo...',
+    removeFile: 'Eliminar archivo',
+    uploadError: 'Error al subir el archivo',
+    previewFile: 'Vista previa'
+  }
+};
diff --git a/components/locale-provider/et_EE.js b/components/locale-provider/et_EE.js
new file mode 100644
index 000000000..0f5a842e8
--- /dev/null
+++ b/components/locale-provider/et_EE.js
@@ -0,0 +1,44 @@
+import Pagination from '../vc-pagination/locale/et_EE';
+import DatePicker from '../date-picker/locale/et_EE';
+import TimePicker from '../time-picker/locale/et_EE';
+import Calendar from '../calendar/locale/et_EE';
+
+export default {
+  locale : 'et',
+  Pagination,
+  DatePicker,
+  TimePicker,
+  Calendar,
+  Table : {
+    filterTitle: 'Filtri menüü',
+    filterConfirm: 'OK',
+    filterReset: 'Nulli',
+    emptyText: 'Andmed puuduvad',
+    selectAll: 'Vali kõik',
+    selectInvert: 'Inverteeri valik'
+  },
+  Modal : {
+    okText: 'OK',
+    cancelText: 'Tühista',
+    justOkText: 'OK'
+  },
+  Popconfirm : {
+    okText: 'OK',
+    cancelText: 'Tühista'
+  },
+  Transfer : {
+    notFoundContent: 'Ei leitud',
+    searchPlaceholder: 'Otsi siit',
+    itemUnit: 'kogus',
+    itemsUnit: 'kogus'
+  },
+  Select : {
+    notFoundContent: 'Ei leitud'
+  },
+  Upload : {
+    uploading: 'Üleslaadimine...',
+    removeFile: 'Eemalda fail',
+    uploadError: 'Üleslaadimise tõrge',
+    previewFile: 'Faili eelvaade'
+  }
+};
diff --git a/components/locale-provider/fa_IR.js b/components/locale-provider/fa_IR.js
new file mode 100644
index 000000000..83b87778f
--- /dev/null
+++ b/components/locale-provider/fa_IR.js
@@ -0,0 +1,44 @@
+import Pagination from '../vc-pagination/locale/fa_IR';
+import DatePicker from '../date-picker/locale/fa_IR';
+import TimePicker from '../time-picker/locale/fa_IR';
+import Calendar from '../calendar/locale/fa_IR';
+
+export default {
+  locale : 'fa',
+  Pagination,
+  DatePicker,
+  TimePicker,
+  Calendar,
+  Table : {
+    filterTitle: 'منوی فیلتر',
+    filterConfirm: 'تایید',
+    filterReset: 'پاک کردن',
+    emptyText: 'داده‌ای موجود نیست',
+    selectAll: 'انتخاب صفحه‌ی کنونی',
+    selectInvert: 'معکوس کردن انتخاب‌ها در صفحه ی کنونی'
+  },
+  Modal : {
+    okText: 'تایید',
+    cancelText: 'لغو',
+    justOkText: 'تایید'
+  },
+  Popconfirm : {
+    okText: 'تایید',
+    cancelText: 'لغو'
+  },
+  Transfer : {
+    notFoundContent: 'داده‌ای موجود نیست',
+    searchPlaceholder: 'جستجو',
+    itemUnit: '',
+    itemsUnit: ''
+  },
+  Select : {
+    notFoundContent: 'داده‌ای موجود نیست'
+  },
+  Upload : {
+    uploading: 'در حال آپلود...',
+    removeFile: 'حذف فایل',
+    uploadError: 'خطا در آپلود',
+    previewFile: 'مشاهده‌ی فایل'
+  }
+};
diff --git a/components/locale-provider/fi_FI.js b/components/locale-provider/fi_FI.js
new file mode 100644
index 000000000..7631d2fd5
--- /dev/null
+++ b/components/locale-provider/fi_FI.js
@@ -0,0 +1,44 @@
+import Pagination from '../vc-pagination/locale/fi_FI';
+import DatePicker from '../date-picker/locale/fi_FI';
+import TimePicker from '../time-picker/locale/fi_FI';
+import Calendar from '../calendar/locale/fi_FI';
+
+export default {
+  locale : 'fi',
+  Pagination,
+  DatePicker,
+  TimePicker,
+  Calendar,
+  Table : {
+    filterTitle: 'Suodatus valikko',
+    filterConfirm: 'OK',
+    filterReset: 'Tyhjennä',
+    emptyText: 'Ei kohteita',
+    selectAll: 'Valitse kaikki',
+    selectInvert: 'Valitse päinvastoin'
+  },
+  Modal : {
+    okText: 'OK',
+    cancelText: 'Peruuta',
+    justOkText: 'OK'
+  },
+  Popconfirm : {
+    okText: 'OK',
+    cancelText: 'Peruuta'
+  },
+  Transfer : {
+    notFoundContent: 'Ei löytynyt',
+    searchPlaceholder: 'Etsi täältä',
+    itemUnit: 'kohde',
+    itemsUnit: 'kohdetta'
+  },
+  Select : {
+    notFoundContent: 'Ei löytynyt'
+  },
+  Upload : {
+    uploading: 'Lähetetään...',
+    removeFile: 'Poista tiedosto',
+    uploadError: 'Virhe lähetyksessä',
+    previewFile: 'Esikatsele tiedostoa'
+  }
+};
diff --git a/components/locale-provider/fr_BE.js b/components/locale-provider/fr_BE.js
new file mode 100644
index 000000000..85d772b2b
--- /dev/null
+++ b/components/locale-provider/fr_BE.js
@@ -0,0 +1,36 @@
+import Pagination from '../vc-pagination/locale/fr_BE';
+import DatePicker from '../date-picker/locale/fr_BE';
+import TimePicker from '../time-picker/locale/fr_BE';
+import Calendar from '../calendar/locale/fr_BE';
+
+export default {
+  locale : 'fr',
+  Pagination,
+  DatePicker,
+  TimePicker,
+  Calendar,
+  Table : {
+    filterTitle: 'Filtrer',
+    filterConfirm: 'OK',
+    filterReset: 'Réinitialiser',
+    emptyText: 'Aucune donnée'
+  },
+  Modal : {
+    okText: 'OK',
+    cancelText: 'Annuler',
+    justOkText: 'OK'
+  },
+  Popconfirm : {
+    okText: 'OK',
+    cancelText: 'Annuler'
+  },
+  Transfer : {
+    notFoundContent: 'Pas de résultat',
+    searchPlaceholder: 'Recherche',
+    itemUnit: 'élément',
+    itemsUnit: 'éléments'
+  },
+  Select : {
+    notFoundContent: 'Pas de résultat'
+  }
+};
diff --git a/components/locale-provider/fr_FR.js b/components/locale-provider/fr_FR.js
new file mode 100644
index 000000000..668f1b6b5
--- /dev/null
+++ b/components/locale-provider/fr_FR.js
@@ -0,0 +1,36 @@
+import Pagination from '../vc-pagination/locale/fr_FR';
+import DatePicker from '../date-picker/locale/fr_FR';
+import TimePicker from '../time-picker/locale/fr_FR';
+import Calendar from '../calendar/locale/fr_FR';
+
+export default {
+  locale : 'fr',
+  Pagination,
+  DatePicker,
+  TimePicker,
+  Calendar,
+  Table : {
+    filterTitle: 'Filtrer',
+    filterConfirm: 'OK',
+    filterReset: 'Réinitialiser',
+    emptyText: 'Aucune donnée'
+  },
+  Modal : {
+    okText: 'OK',
+    cancelText: 'Annuler',
+    justOkText: 'OK'
+  },
+  Popconfirm : {
+    okText: 'OK',
+    cancelText: 'Annuler'
+  },
+  Transfer : {
+    notFoundContent: 'Pas de résultat',
+    searchPlaceholder: 'Recherche',
+    itemUnit: 'élément',
+    itemsUnit: 'éléments'
+  },
+  Select : {
+    notFoundContent: 'Pas de résultat'
+  }
+};
diff --git a/components/locale-provider/is_IS.js b/components/locale-provider/is_IS.js
new file mode 100644
index 000000000..467430ff6
--- /dev/null
+++ b/components/locale-provider/is_IS.js
@@ -0,0 +1,44 @@
+import Pagination from '../vc-pagination/locale/is_IS';
+import DatePicker from '../date-picker/locale/is_IS';
+import TimePicker from '../time-picker/locale/is_IS';
+import Calendar from '../calendar/locale/is_IS';
+
+export default {
+  locale : 'is',
+  Pagination,
+  DatePicker,
+  TimePicker,
+  Calendar,
+  Table : {
+    filterTitle: 'Afmarkanir',
+    filterConfirm: 'Staðfesta',
+    filterReset: 'Núllstilla',
+    emptyText: 'Engin gögn',
+    selectAll: 'Velja allt',
+    selectInvert: 'Viðsnúa vali'
+  },
+  Modal : {
+    okText: 'Áfram',
+    cancelText: 'Hætta við',
+    justOkText: 'Í lagi'
+  },
+  Popconfirm : {
+    okText: 'Áfram',
+    cancelText: 'Hætta við'
+  },
+  Transfer : {
+    notFoundContent: 'Engar færslur',
+    searchPlaceholder: 'Leita hér',
+    itemUnit: 'færsla',
+    itemsUnit: 'færslur'
+  },
+  Select : {
+    notFoundContent: 'Ekkert finnst'
+  },
+  Upload : {
+    uploading: 'Hleð upp...',
+    removeFile: 'Fjarlægja skrá',
+    uploadError: 'Villa við að hlaða upp',
+    previewFile: 'Forskoða skrá'
+  }
+};
diff --git a/components/locale-provider/it_IT.js b/components/locale-provider/it_IT.js
new file mode 100644
index 000000000..a01ec90a8
--- /dev/null
+++ b/components/locale-provider/it_IT.js
@@ -0,0 +1,44 @@
+import Pagination from '../vc-pagination/locale/it_IT';
+import DatePicker from '../date-picker/locale/it_IT';
+import TimePicker from '../time-picker/locale/it_IT';
+import Calendar from '../calendar/locale/it_IT';
+
+export default {
+  locale : 'it',
+  Pagination,
+  DatePicker,
+  TimePicker,
+  Calendar,
+  Table : {
+    filterTitle: 'Menu Filtro',
+    filterConfirm: 'OK',
+    filterReset: 'Reset',
+    emptyText: 'Nessun dato',
+    selectAll: 'Seleziona pagina corrente',
+    selectInvert: 'Selezionare Inverti'
+  },
+  Modal : {
+    okText: 'OK',
+    cancelText: 'Annulla',
+    justOkText: 'OK'
+  },
+  Popconfirm : {
+    okText: 'OK',
+    cancelText: 'Annulla'
+  },
+  Transfer : {
+    notFoundContent: 'Non trovato',
+    searchPlaceholder: 'Cerca qui',
+    itemUnit: 'articolo',
+    itemsUnit: 'elementi'
+  },
+  Select : {
+    notFoundContent: 'Non trovato'
+  },
+  Upload : {
+    uploading: 'Caricamento...',
+    removeFile: 'Rimuovi il file',
+    uploadError: 'Errore di caricamento',
+    previewFile: 'Anteprima file'
+  }
+};
diff --git a/components/locale-provider/ja_JP.js b/components/locale-provider/ja_JP.js
new file mode 100644
index 000000000..3cd640170
--- /dev/null
+++ b/components/locale-provider/ja_JP.js
@@ -0,0 +1,44 @@
+import Pagination from '../vc-pagination/locale/ja_JP';
+import DatePicker from '../date-picker/locale/ja_JP';
+import TimePicker from '../time-picker/locale/ja_JP';
+import Calendar from '../calendar/locale/ja_JP';
+
+export default {
+  locale : 'ja',
+  Pagination,
+  DatePicker,
+  TimePicker,
+  Calendar,
+  Table : {
+    filterTitle: 'メニューをフィルター',
+    filterConfirm: 'OK',
+    filterReset: 'リセット',
+    emptyText: 'データがありません',
+    selectAll: 'すべてを選択',
+    selectInvert: '選択を反転'
+  },
+  Modal : {
+    okText: 'OK',
+    cancelText: 'キャンセル',
+    justOkText: 'OK'
+  },
+  Popconfirm : {
+    okText: 'OK',
+    cancelText: 'キャンセル'
+  },
+  Transfer : {
+    notFoundContent: '結果はありません',
+    searchPlaceholder: 'ここを検索',
+    itemUnit: 'アイテム',
+    itemsUnit: 'アイテム'
+  },
+  Select : {
+    notFoundContent: '結果はありません'
+  },
+  Upload : {
+    uploading: 'アップロード中...',
+    removeFile: 'ファイルを削除',
+    uploadError: 'アップロードエラー',
+    previewFile: 'ファイルをプレビュー'
+  }
+};
diff --git a/components/locale-provider/ko_KR.js b/components/locale-provider/ko_KR.js
new file mode 100644
index 000000000..6cdd663a4
--- /dev/null
+++ b/components/locale-provider/ko_KR.js
@@ -0,0 +1,42 @@
+import Pagination from '../vc-pagination/locale/ko_KR';
+import DatePicker from '../date-picker/locale/ko_KR';
+import TimePicker from '../time-picker/locale/ko_KR';
+import Calendar from '../calendar/locale/ko_KR';
+
+export default {
+  locale : 'ko',
+  Pagination,
+  DatePicker,
+  TimePicker,
+  Calendar,
+  Table : {
+    filterTitle: '필터 메뉴',
+    filterConfirm: '확인',
+    filterReset: '초기화',
+    emptyText: '데이터 없음'
+  },
+  Modal : {
+    okText: '확인',
+    cancelText: '취소',
+    justOkText: '확인'
+  },
+  Popconfirm : {
+    okText: '확인',
+    cancelText: '취소'
+  },
+  Transfer : {
+    notFoundContent: '데이터 없음',
+    searchPlaceholder: '여기에 검색하세요',
+    itemUnit: '개',
+    itemsUnit: '개'
+  },
+  Select : {
+    notFoundContent: '데이터 없음'
+  },
+  Upload : {
+    uploading: '업로드 중...',
+    removeFile: '파일 삭제',
+    uploadError: '업로드 실패',
+    previewFile: '파일 미리보기'
+  }
+};
diff --git a/components/locale-provider/ku_IQ.js b/components/locale-provider/ku_IQ.js
new file mode 100755
index 000000000..850f7b815
--- /dev/null
+++ b/components/locale-provider/ku_IQ.js
@@ -0,0 +1,44 @@
+import Pagination from '../vc-pagination/locale/ku_IQ';
+import DatePicker from '../date-picker/locale/ku_IQ';
+import TimePicker from '../time-picker/locale/ku_IQ';
+import Calendar from '../calendar/locale/ku_IQ';
+
+export default {
+  locale : 'ku-iq',
+  Pagination,
+  DatePicker,
+  TimePicker,
+  Calendar,
+  Table : {
+    filterTitle: 'Menuê peldanka',
+    filterConfirm: 'Temam',
+    filterReset: 'Jê bibe',
+    emptyText: 'Agahî tune',
+    selectAll: 'Hemî hilbijêre',
+    selectInvert: 'Hilbijartinan veguhere'
+  },
+  Modal : {
+    okText: 'Temam',
+    cancelText: 'Betal ke',
+    justOkText: 'Temam'
+  },
+  Popconfirm : {
+    okText: 'Temam',
+    cancelText: 'Betal ke'
+  },
+  Transfer : {
+    notFoundContent: 'Peyda Nebû',
+    searchPlaceholder: 'Lêgerîn',
+    itemUnit: 'tişt',
+    itemsUnit: 'tişt'
+  },
+  Select : {
+    notFoundContent: 'Peyda Nebû'
+  },
+  Upload : {
+    uploading: 'Bardike...',
+    removeFile: 'Pelê rabike',
+    uploadError: 'Xeta barkirine',
+    previewFile: 'Pelê pêşbibîne'
+  }
+};
diff --git a/components/locale-provider/nb_NO.js b/components/locale-provider/nb_NO.js
new file mode 100644
index 000000000..243656c8d
--- /dev/null
+++ b/components/locale-provider/nb_NO.js
@@ -0,0 +1,44 @@
+import Pagination from '../vc-pagination/locale/nb_NO';
+import DatePicker from '../date-picker/locale/nb_NO';
+import TimePicker from '../time-picker/locale/nb_NO';
+import Calendar from '../calendar/locale/nb_NO';
+
+export default {
+  locale : 'nb',
+  DatePicker,
+  TimePicker,
+  Calendar,
+  Pagination,
+  Table : {
+    filterTitle: 'Filtermeny',
+    filterConfirm: 'OK',
+    filterReset: 'Nullstill',
+    emptyText: 'Ingen data',
+    selectAll: 'Velg alle',
+    selectInvert: 'Inverter valg'
+  },
+  Modal : {
+    okText: 'OK',
+    cancelText: 'Avbryt',
+    justOkText: 'OK'
+  },
+  Popconfirm : {
+    okText: 'OK',
+    cancelText: 'Avbryt'
+  },
+  Transfer : {
+    notFoundContent: 'Ingen treff',
+    searchPlaceholder: 'Søk her',
+    itemUnit: 'element',
+    itemsUnit: 'elementer'
+  },
+  Select : {
+    notFoundContent: 'Ingen treff'
+  },
+  Upload : {
+    uploading: 'Laster opp...',
+    removeFile: 'Fjern fil',
+    uploadError: 'Feil ved opplastning',
+    previewFile: 'Forhåndsvisning'
+  }
+};
diff --git a/components/locale-provider/nl_BE.js b/components/locale-provider/nl_BE.js
new file mode 100644
index 000000000..9abd4ed38
--- /dev/null
+++ b/components/locale-provider/nl_BE.js
@@ -0,0 +1,44 @@
+import Pagination from '../vc-pagination/locale/nl_BE';
+import DatePicker from '../date-picker/locale/nl_BE';
+import TimePicker from '../time-picker/locale/nl_BE';
+import Calendar from '../calendar/locale/nl_BE';
+
+export default {
+  locale : 'nl-be',
+  Pagination,
+  DatePicker,
+  TimePicker,
+  Calendar,
+  Table : {
+    filterTitle: 'FilterMenu',
+    filterConfirm: 'OK',
+    filterReset: 'Reset',
+    emptyText: 'Geen gegevens',
+    selectAll: 'Selecteer huidige pagina',
+    selectInvert: 'Selecteer huidige pagina'
+  },
+  Modal : {
+    okText: 'OK',
+    cancelText: 'Annuleer',
+    justOkText: 'OK'
+  },
+  Popconfirm : {
+    okText: 'OK',
+    cancelText: 'Annuleer'
+  },
+  Transfer : {
+    notFoundContent: 'Niet gevonden',
+    searchPlaceholder: 'Zoek hier',
+    itemUnit: 'item',
+    itemsUnit: 'items'
+  },
+  Select : {
+    notFoundContent: 'Niet gevonden'
+  },
+  Upload : {
+    uploading: 'Uploaden...',
+    removeFile: 'Bestand verwijderen',
+    uploadError: 'Upload fout',
+    previewFile: 'Preview bestand'
+  }
+};
diff --git a/components/locale-provider/nl_NL.js b/components/locale-provider/nl_NL.js
new file mode 100644
index 000000000..de2cd684d
--- /dev/null
+++ b/components/locale-provider/nl_NL.js
@@ -0,0 +1,44 @@
+import Pagination from '../vc-pagination/locale/nl_NL';
+import DatePicker from '../date-picker/locale/nl_NL';
+import TimePicker from '../time-picker/locale/nl_NL';
+import Calendar from '../calendar/locale/nl_NL';
+
+export default {
+  locale : 'nl',
+  Pagination,
+  DatePicker,
+  TimePicker,
+  Calendar,
+  Table : {
+    filterTitle: 'Filteren',
+    filterConfirm: 'OK',
+    filterReset: 'Reset',
+    emptyText: 'Geen gegevens',
+    selectAll: 'Selecteer huidige pagina',
+    selectInvert: 'Deselecteer huidige pagina'
+  },
+  Modal : {
+    okText: 'OK',
+    cancelText: 'Annuleren',
+    justOkText: 'OK'
+  },
+  Popconfirm : {
+    okText: 'OK',
+    cancelText: 'Annuleren'
+  },
+  Transfer : {
+    notFoundContent: 'Niet gevonden',
+    searchPlaceholder: 'Zoeken',
+    itemUnit: 'item',
+    itemsUnit: 'items'
+  },
+  Select : {
+    notFoundContent: 'Niet gevonden'
+  },
+  Upload : {
+    uploading: 'Uploaden...',
+    removeFile: 'Verwijder bestand',
+    uploadError: 'Fout tijdens uploaden',
+    previewFile: 'Bekijk bestand'
+  }
+};
diff --git a/components/locale-provider/pl_PL.js b/components/locale-provider/pl_PL.js
new file mode 100644
index 000000000..6ec7aa6a0
--- /dev/null
+++ b/components/locale-provider/pl_PL.js
@@ -0,0 +1,44 @@
+import Pagination from '../vc-pagination/locale/pl_PL';
+import DatePicker from '../date-picker/locale/pl_PL';
+import TimePicker from '../time-picker/locale/pl_PL';
+import Calendar from '../calendar/locale/pl_PL';
+
+export default {
+  locale : 'pl',
+  Pagination,
+  DatePicker,
+  TimePicker,
+  Calendar,
+  Table : {
+    filterTitle: 'Menu filtra',
+    filterConfirm: 'OK',
+    filterReset: 'Wyczyść',
+    emptyText: 'Brak danych',
+    selectAll: 'Zaznacz bieżącą stronę',
+    selectInvert: 'Odwróć zaznaczenie'
+  },
+  Modal : {
+    okText: 'OK',
+    cancelText: 'Anuluj',
+    justOkText: 'OK'
+  },
+  Popconfirm : {
+    okText: 'OK',
+    cancelText: 'Anuluj'
+  },
+  Transfer : {
+    notFoundContent: 'Nie znaleziono',
+    searchPlaceholder: 'Szukaj',
+    itemUnit: 'obiekt',
+    itemsUnit: 'obiekty'
+  },
+  Select : {
+    notFoundContent: 'Nie znaleziono'
+  },
+  Upload : {
+    uploading: 'Wysyłanie...',
+    removeFile: 'Usuń plik',
+    uploadError: 'Błąd wysyłania',
+    previewFile: 'Podejrzyj plik'
+  }
+};
diff --git a/components/locale-provider/pt_BR.js b/components/locale-provider/pt_BR.js
new file mode 100644
index 000000000..1df6abdb9
--- /dev/null
+++ b/components/locale-provider/pt_BR.js
@@ -0,0 +1,44 @@
+import Pagination from '../vc-pagination/locale/pt_BR';
+import DatePicker from '../date-picker/locale/pt_BR';
+import TimePicker from '../time-picker/locale/pt_BR';
+import Calendar from '../calendar/locale/pt_BR';
+
+export default {
+  locale : 'pt-br',
+  Pagination,
+  DatePicker,
+  TimePicker,
+  Calendar,
+  Table : {
+    filterTitle: 'Filtro',
+    filterConfirm: 'OK',
+    filterReset: 'Resetar',
+    emptyText: 'Não há dados',
+    selectAll: 'Selecionar página atual',
+    selectInvert: 'Inverter seleção'
+  },
+  Modal : {
+    okText: 'OK',
+    cancelText: 'Cancelar',
+    justOkText: 'OK'
+  },
+  Popconfirm : {
+    okText: 'OK',
+    cancelText: 'Cancelar'
+  },
+  Transfer : {
+    notFoundContent: 'Não encontrado',
+    searchPlaceholder: 'Procurar',
+    itemUnit: 'item',
+    itemsUnit: 'items'
+  },
+  Select : {
+    notFoundContent: 'Não encontrado'
+  },
+  Upload : {
+    uploading: 'Enviando...',
+    removeFile: 'Remover arquivo',
+    uploadError: 'Erro no envio',
+    previewFile: 'Visualizar arquivo'
+  }
+};
diff --git a/components/locale-provider/pt_PT.js b/components/locale-provider/pt_PT.js
new file mode 100644
index 000000000..7b57027cd
--- /dev/null
+++ b/components/locale-provider/pt_PT.js
@@ -0,0 +1,44 @@
+import Pagination from '../vc-pagination/locale/pt_PT';
+import DatePicker from '../date-picker/locale/pt_PT';
+import TimePicker from '../time-picker/locale/pt_PT';
+import Calendar from '../calendar/locale/pt_PT';
+
+export default {
+  locale : 'pt',
+  Pagination,
+  DatePicker,
+  TimePicker,
+  Calendar,
+  Table : {
+    filterTitle: 'Filtro',
+    filterConfirm: 'Aplicar',
+    filterReset: 'Reiniciar',
+    emptyText: 'Sem resultados',
+    selectAll: 'Selecionar página atual',
+    selectInvert: 'Inverter seleção'
+  },
+  Modal : {
+    okText: 'OK',
+    cancelText: 'Cancelar',
+    justOkText: 'OK'
+  },
+  Popconfirm : {
+    okText: 'OK',
+    cancelText: 'Cancelar'
+  },
+  Transfer : {
+    notFoundContent: 'Sem resultados',
+    searchPlaceholder: 'Procurar...',
+    itemUnit: 'item',
+    itemsUnit: 'itens'
+  },
+  Select : {
+    notFoundContent: 'Sem resultados'
+  },
+  Upload : {
+    uploading: 'A carregar...',
+    removeFile: 'Remover',
+    uploadError: 'Erro ao carregar',
+    previewFile: 'Pré-visualizar'
+  }
+};
diff --git a/components/locale-provider/ru_RU.js b/components/locale-provider/ru_RU.js
new file mode 100644
index 000000000..647e4188f
--- /dev/null
+++ b/components/locale-provider/ru_RU.js
@@ -0,0 +1,44 @@
+import Pagination from '../vc-pagination/locale/ru_RU';
+import DatePicker from '../date-picker/locale/ru_RU';
+import TimePicker from '../time-picker/locale/ru_RU';
+import Calendar from '../calendar/locale/ru_RU';
+
+export default {
+  locale : 'ru',
+  Pagination,
+  DatePicker,
+  TimePicker,
+  Calendar,
+  Table : {
+    filterTitle: 'Фильтр',
+    filterConfirm: 'OK',
+    filterReset: 'Сбросить',
+    emptyText: 'Нет данных',
+    selectAll: 'Выбрать всё',
+    selectInvert: 'Инвертировать выбор'
+  },
+  Modal : {
+    okText: 'OK',
+    cancelText: 'Отмена',
+    justOkText: 'OK'
+  },
+  Popconfirm : {
+    okText: 'OK',
+    cancelText: 'Отмена'
+  },
+  Transfer : {
+    notFoundContent: 'Ничего не найдено',
+    searchPlaceholder: 'Введите название для поиска',
+    itemUnit: 'item',
+    itemsUnit: 'items'
+  },
+  Select : {
+    notFoundContent: 'Ничего не найдено'
+  },
+  Upload : {
+    uploading: 'Закачиваю...',
+    removeFile: 'Удалить файл',
+    uploadError: 'Ошибка при закачке',
+    previewFile: 'Предпросмотр файла'
+  }
+};
diff --git a/components/locale-provider/sk_SK.js b/components/locale-provider/sk_SK.js
new file mode 100644
index 000000000..619a1e995
--- /dev/null
+++ b/components/locale-provider/sk_SK.js
@@ -0,0 +1,44 @@
+import Pagination from '../vc-pagination/locale/sk_SK';
+import DatePicker from '../date-picker/locale/sk_SK';
+import TimePicker from '../time-picker/locale/sk_SK';
+import Calendar from '../calendar/locale/sk_SK';
+
+export default {
+  locale : 'sk',
+  Pagination,
+  DatePicker,
+  TimePicker,
+  Calendar,
+  Table : {
+    filterTitle: 'Filter',
+    filterConfirm: 'OK',
+    filterReset: 'Obnoviť',
+    emptyText: 'Žiadne dáta',
+    selectAll: 'Vybrať všetko',
+    selectInvert: 'Vybrať opačné'
+  },
+  Modal : {
+    okText: 'OK',
+    cancelText: 'Zrušiť',
+    justOkText: 'OK'
+  },
+  Popconfirm : {
+    okText: 'OK',
+    cancelText: 'Zrušiť'
+  },
+  Transfer : {
+    notFoundContent: 'Nenájdené',
+    searchPlaceholder: 'Vyhľadávanie',
+    itemUnit: 'položka',
+    itemsUnit: 'položiek'
+  },
+  Select : {
+    notFoundContent: 'Nenájdené'
+  },
+  Upload : {
+    uploading: 'Nahrávanie...',
+    removeFile: 'Odstrániť súbor',
+    uploadError: 'Chyba pri nahrávaní',
+    previewFile: 'Zobraziť súbor'
+  }
+};
diff --git a/components/locale-provider/sr_RS.js b/components/locale-provider/sr_RS.js
new file mode 100644
index 000000000..2c3150133
--- /dev/null
+++ b/components/locale-provider/sr_RS.js
@@ -0,0 +1,44 @@
+import Pagination from '../vc-pagination/locale/sr_RS';
+import DatePicker from '../date-picker/locale/sr_RS';
+import TimePicker from '../time-picker/locale/sr_RS';
+import Calendar from '../calendar/locale/sr_RS';
+
+export default {
+  locale : 'sr',
+  Pagination,
+  DatePicker,
+  TimePicker,
+  Calendar,
+  Table : {
+    filterTitle: 'Filter',
+    filterConfirm: 'Primeni filter',
+    filterReset: 'Resetuj filter',
+    emptyText: 'Nema podataka',
+    selectAll: 'Obeleži sve na trenutnoj strani',
+    selectInvert: 'Obrni selekciju na trenutnoj stranici'
+  },
+  Modal : {
+    okText: 'U redu',
+    cancelText: 'Otkaži',
+    justOkText: 'U redu'
+  },
+  Popconfirm : {
+    okText: 'U redu',
+    cancelText: 'Otkaži'
+  },
+  Transfer : {
+    notFoundContent: 'Nisu pronađeni rezultati pretrage',
+    searchPlaceholder: 'Pretražite ovde',
+    itemUnit: 'stavka',
+    itemsUnit: 'stavki'
+  },
+  Select : {
+    notFoundContent: 'Nije pronađeno'
+  },
+  Upload : {
+    uploading: 'Slanje...',
+    removeFile: 'Ukloni fajl',
+    uploadError: 'Greška prilikom slanja',
+    previewFile: 'Pogledaj fajl'
+  }
+};
diff --git a/components/locale-provider/sv_SE.js b/components/locale-provider/sv_SE.js
new file mode 100644
index 000000000..9d429595d
--- /dev/null
+++ b/components/locale-provider/sv_SE.js
@@ -0,0 +1,36 @@
+import Pagination from '../vc-pagination/locale/sv_SE';
+import DatePicker from '../date-picker/locale/sv_SE';
+import TimePicker from '../time-picker/locale/sv_SE';
+import Calendar from '../calendar/locale/sv_SE';
+
+export default {
+  locale : 'sv',
+  Pagination,
+  DatePicker,
+  TimePicker,
+  Calendar,
+  Table : {
+    filterTitle: 'Filtermeny',
+    filterConfirm: 'OK',
+    filterReset: 'Rensa',
+    emptyText: 'Ingen information'
+  },
+  Modal : {
+    okText: 'OK',
+    cancelText: 'Avbryt',
+    justOkText: 'OK'
+  },
+  Popconfirm : {
+    okText: 'OK',
+    cancelText: 'Avbryt'
+  },
+  Transfer : {
+    notFoundContent: 'Info saknas',
+    searchPlaceholder: 'Sök',
+    itemUnit: 'element',
+    itemsUnit: 'element'
+  },
+  Select : {
+    notFoundContent: 'Info saknas'
+  }
+};
diff --git a/components/locale-provider/th_TH.js b/components/locale-provider/th_TH.js
new file mode 100644
index 000000000..b66b45507
--- /dev/null
+++ b/components/locale-provider/th_TH.js
@@ -0,0 +1,44 @@
+import Pagination from '../vc-pagination/locale/th_TH';
+import DatePicker from '../date-picker/locale/th_TH';
+import TimePicker from '../time-picker/locale/th_TH';
+import Calendar from '../calendar/locale/th_TH';
+
+export default {
+  locale : 'th',
+  Pagination,
+  DatePicker,
+  TimePicker,
+  Calendar,
+  Table : {
+    filterTitle: 'ตัวกรอง',
+    filterConfirm: 'ยืนยัน',
+    filterReset: 'รีเซ็ต',
+    emptyText: 'ไม่มีข้อมูล',
+    selectAll: 'เลือกทั้งหมดในหน้านี้',
+    selectInvert: 'เลือกสถานะตรงกันข้าม'
+  },
+  Modal : {
+    okText: 'ตกลง',
+    cancelText: 'ยกเลิก',
+    justOkText: 'ตกลง'
+  },
+  Popconfirm : {
+    okText: 'ตกลง',
+    cancelText: 'ยกเลิก'
+  },
+  Transfer : {
+    notFoundContent: 'ไม่พบข้อมูล',
+    searchPlaceholder: 'ค้นหา',
+    itemUnit: 'ชิ้น',
+    itemsUnit: 'ชิ้น'
+  },
+  Select : {
+    notFoundContent: 'ไม่พบข้อมูล'
+  },
+  Upload : {
+    uploading: 'กำลังอัปโหลด...',
+    removeFile: 'ลบไฟล์',
+    uploadError: 'เกิดข้อผิดพลาดในการอัปโหลด',
+    previewFile: 'ดูตัวอย่างไฟล์'
+  }
+};
diff --git a/components/locale-provider/tr_TR.js b/components/locale-provider/tr_TR.js
new file mode 100644
index 000000000..24e8487a7
--- /dev/null
+++ b/components/locale-provider/tr_TR.js
@@ -0,0 +1,44 @@
+import Pagination from '../vc-pagination/locale/en_US';
+import DatePicker from '../date-picker/locale/tr_TR';
+import TimePicker from '../time-picker/locale/tr_TR';
+import Calendar from '../calendar/locale/tr_TR';
+
+export default {
+  locale : 'tr',
+  Pagination,
+  DatePicker,
+  TimePicker,
+  Calendar,
+  Table : {
+    filterTitle: 'Menü Filtrele',
+    filterConfirm: 'Tamam',
+    filterReset: 'Sıfırla',
+    emptyText: 'Veri Yok',
+    selectAll: 'Hepsini Seç',
+    selectInvert: 'Tersini Seç'
+  },
+  Modal : {
+    okText: 'Tamam',
+    cancelText: 'İptal',
+    justOkText: 'Tamam'
+  },
+  Popconfirm : {
+    okText: 'Tamam',
+    cancelText: 'İptal'
+  },
+  Transfer : {
+    notFoundContent: 'Bulunamadı',
+    searchPlaceholder: 'Arama',
+    itemUnit: 'Öğe',
+    itemsUnit: 'Öğeler'
+  },
+  Select : {
+    notFoundContent: 'Bulunamadı'
+  },
+  Upload : {
+    uploading: 'Yükleniyor...',
+    removeFile: `Dosyayı kaldır`,
+    uploadError: 'Yükleme Hatası',
+    previewFile: `Dosyayı Önizle`
+  }
+};
diff --git a/components/locale-provider/uk_UA.js b/components/locale-provider/uk_UA.js
new file mode 100644
index 000000000..c5d2d8b42
--- /dev/null
+++ b/components/locale-provider/uk_UA.js
@@ -0,0 +1,44 @@
+import Pagination from '../vc-pagination/locale/uk_UA';
+import DatePicker from '../date-picker/locale/uk_UA';
+import TimePicker from '../time-picker/locale/uk_UA';
+import Calendar from '../calendar/locale/uk_UA';
+
+export default {
+  locale : 'uk',
+  Pagination,
+  DatePicker,
+  TimePicker,
+  Calendar,
+  Table : {
+    filterTitle: 'Фільтрувати',
+    filterConfirm: 'OK',
+    filterReset: 'Скинути',
+    emptyText: 'Даних немає',
+    selectAll: 'Обрати всі',
+    selectInvert: 'Інвертувати вибір'
+  },
+  Modal : {
+    okText: 'Гаразд',
+    cancelText: 'Скасувати',
+    justOkText: 'Гаразд'
+  },
+  Popconfirm : {
+    okText: 'Гаразд',
+    cancelText: 'Скасувати'
+  },
+  Transfer : {
+    notFoundContent: 'Нічого не знайдено',
+    searchPlaceholder: 'Введіть текст для пошуку',
+    itemUnit: 'item',
+    itemsUnit: 'items'
+  },
+  Select : {
+    notFoundContent: 'Нічого не знайдено'
+  },
+  Upload : {
+    uploading: 'Завантаження ...',
+    removeFile: 'Видалити файл',
+    uploadError: 'Помилка завантаження',
+    previewFile: 'Попередній перегляд файлу'
+  }
+};
diff --git a/components/locale-provider/vi_VN.js b/components/locale-provider/vi_VN.js
new file mode 100644
index 000000000..63de1433e
--- /dev/null
+++ b/components/locale-provider/vi_VN.js
@@ -0,0 +1,44 @@
+import Pagination from '../vc-pagination/locale/vi_VN';
+import DatePicker from '../date-picker/locale/vi_VN';
+import TimePicker from '../time-picker/locale/vi_VN';
+import Calendar from '../calendar/locale/vi_VN';
+
+export default {
+  locale : 'vi',
+  Pagination,
+  DatePicker,
+  TimePicker,
+  Calendar,
+  Table : {
+    filterTitle: 'Bộ ',
+    filterConfirm: 'OK',
+    filterReset: 'Tạo Lại',
+    emptyText: 'Trống',
+    selectAll: 'Chọn Tất Cả',
+    selectInvert: 'Chọn Ngược Lại'
+  },
+  Modal : {
+    okText: 'OK',
+    cancelText: 'Huỷ',
+    justOkText: 'OK'
+  },
+  Popconfirm : {
+    okText: 'OK',
+    cancelText: 'Huỷ'
+  },
+  Transfer : {
+    notFoundContent: 'Không Tìm Thấy',
+    searchPlaceholder: 'Tìm ở đây',
+    itemUnit: 'mục',
+    itemsUnit: 'mục'
+  },
+  Select : {
+    notFoundContent: 'Không Tìm Thấy'
+  },
+  Upload : {
+    uploading: 'Đang tải lên...',
+    removeFile: 'Gỡ bỏ tập tin',
+    uploadError: 'Lỗi tải lên',
+    previewFile: 'Xem thử tập tin'
+  }
+};
diff --git a/components/locale-provider/zh_TW.js b/components/locale-provider/zh_TW.js
new file mode 100644
index 000000000..08c45b4ed
--- /dev/null
+++ b/components/locale-provider/zh_TW.js
@@ -0,0 +1,44 @@
+import Pagination from '../vc-pagination/locale/zh_TW';
+import DatePicker from '../date-picker/locale/zh_TW';
+import TimePicker from '../time-picker/locale/zh_TW';
+import Calendar from '../calendar/locale/zh_TW';
+
+export default {
+  locale: 'zh-tw',
+  Pagination,
+  DatePicker,
+  TimePicker,
+  Calendar,
+  Table: {
+    filterTitle: '篩選器',
+    filterConfirm: '確 定',
+    filterReset: '重 置',
+    emptyText: '目前尚無資料',
+    selectAll: '全部選取',
+    selectInvert: '反向選取',
+  },
+  Modal: {
+    okText: '確 定',
+    cancelText: '取 消',
+    justOkText: 'OK',
+  },
+  Popconfirm: {
+    okText: '確 定',
+    cancelText: '取 消',
+  },
+  Transfer: {
+    notFoundContent: '查無此資料',
+    searchPlaceholder: '搜尋資料',
+    itemUnit: '項目',
+    itemsUnit: '項目',
+  },
+  Select: {
+    notFoundContent: '查無此資料',
+  },
+  Upload: {
+    uploading: '正在上傳...',
+    removeFile: '刪除檔案',
+    uploadError: '上傳失敗',
+    previewFile: '檔案預覽',
+  },
+};