alpha.js 6.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137
  1. export var alpha = {
  2. 'en-US': /^[A-Z]+$/i,
  3. 'az-AZ': /^[A-VXYZÇƏĞİıÖŞÜ]+$/i,
  4. 'bg-BG': /^[А-Я]+$/i,
  5. 'cs-CZ': /^[A-ZÁČĎÉĚÍŇÓŘŠŤÚŮÝŽ]+$/i,
  6. 'da-DK': /^[A-ZÆØÅ]+$/i,
  7. 'de-DE': /^[A-ZÄÖÜß]+$/i,
  8. 'el-GR': /^[Α-ώ]+$/i,
  9. 'es-ES': /^[A-ZÁÉÍÑÓÚÜ]+$/i,
  10. 'fa-IR': /^[ابپتثجچحخدذرزژسشصضطظعغفقکگلمنوهی]+$/i,
  11. 'fi-FI': /^[A-ZÅÄÖ]+$/i,
  12. 'fr-FR': /^[A-ZÀÂÆÇÉÈÊËÏÎÔŒÙÛÜŸ]+$/i,
  13. 'it-IT': /^[A-ZÀÉÈÌÎÓÒÙ]+$/i,
  14. 'ja-JP': /^[ぁ-んァ-ヶヲ-゚一-龠ー・。、]+$/i,
  15. 'nb-NO': /^[A-ZÆØÅ]+$/i,
  16. 'nl-NL': /^[A-ZÁÉËÏÓÖÜÚ]+$/i,
  17. 'nn-NO': /^[A-ZÆØÅ]+$/i,
  18. 'hu-HU': /^[A-ZÁÉÍÓÖŐÚÜŰ]+$/i,
  19. 'pl-PL': /^[A-ZĄĆĘŚŁŃÓŻŹ]+$/i,
  20. 'pt-PT': /^[A-ZÃÁÀÂÄÇÉÊËÍÏÕÓÔÖÚÜ]+$/i,
  21. 'ru-RU': /^[А-ЯЁ]+$/i,
  22. 'kk-KZ': /^[А-ЯЁ\u04D8\u04B0\u0406\u04A2\u0492\u04AE\u049A\u04E8\u04BA]+$/i,
  23. 'sl-SI': /^[A-ZČĆĐŠŽ]+$/i,
  24. 'sk-SK': /^[A-ZÁČĎÉÍŇÓŠŤÚÝŽĹŔĽÄÔ]+$/i,
  25. 'sr-RS@latin': /^[A-ZČĆŽŠĐ]+$/i,
  26. 'sr-RS': /^[А-ЯЂЈЉЊЋЏ]+$/i,
  27. 'sv-SE': /^[A-ZÅÄÖ]+$/i,
  28. 'th-TH': /^[ก-๐\s]+$/i,
  29. 'tr-TR': /^[A-ZÇĞİıÖŞÜ]+$/i,
  30. 'uk-UA': /^[А-ЩЬЮЯЄIЇҐі]+$/i,
  31. 'vi-VN': /^[A-ZÀÁẠẢÃÂẦẤẬẨẪĂẰẮẶẲẴĐÈÉẸẺẼÊỀẾỆỂỄÌÍỊỈĨÒÓỌỎÕÔỒỐỘỔỖƠỜỚỢỞỠÙÚỤỦŨƯỪỨỰỬỮỲÝỴỶỸ]+$/i,
  32. 'ko-KR': /^[ㄱ-ㅎㅏ-ㅣ가-힣]*$/,
  33. 'ku-IQ': /^[ئابپتجچحخدرڕزژسشعغفڤقکگلڵمنوۆھەیێيطؤثآإأكضصةظذ]+$/i,
  34. ar: /^[ءآأؤإئابةتثجحخدذرزسشصضطظعغفقكلمنهوىيًٌٍَُِّْٰ]+$/,
  35. he: /^[א-ת]+$/,
  36. fa: /^['آاءأؤئبپتثجچحخدذرزژسشصضطظعغفقکگلمنوهةی']+$/i,
  37. bn: /^['ঀঁংঃঅআইঈউঊঋঌএঐওঔকখগঘঙচছজঝঞটঠডঢণতথদধনপফবভমযরলশষসহ়ঽািীুূৃৄেৈোৌ্ৎৗড়ঢ়য়ৠৡৢৣৰৱ৲৳৴৵৶৷৸৹৺৻']+$/,
  38. eo: /^[ABCĈD-GĜHĤIJĴK-PRSŜTUŬVZ]+$/i,
  39. 'hi-IN': /^[\u0900-\u0961]+[\u0972-\u097F]*$/i,
  40. 'si-LK': /^[\u0D80-\u0DFF]+$/
  41. };
  42. export var alphanumeric = {
  43. 'en-US': /^[0-9A-Z]+$/i,
  44. 'az-AZ': /^[0-9A-VXYZÇƏĞİıÖŞÜ]+$/i,
  45. 'bg-BG': /^[0-9А-Я]+$/i,
  46. 'cs-CZ': /^[0-9A-ZÁČĎÉĚÍŇÓŘŠŤÚŮÝŽ]+$/i,
  47. 'da-DK': /^[0-9A-ZÆØÅ]+$/i,
  48. 'de-DE': /^[0-9A-ZÄÖÜß]+$/i,
  49. 'el-GR': /^[0-9Α-ω]+$/i,
  50. 'es-ES': /^[0-9A-ZÁÉÍÑÓÚÜ]+$/i,
  51. 'fi-FI': /^[0-9A-ZÅÄÖ]+$/i,
  52. 'fr-FR': /^[0-9A-ZÀÂÆÇÉÈÊËÏÎÔŒÙÛÜŸ]+$/i,
  53. 'it-IT': /^[0-9A-ZÀÉÈÌÎÓÒÙ]+$/i,
  54. 'ja-JP': /^[0-90-9ぁ-んァ-ヶヲ-゚一-龠ー・。、]+$/i,
  55. 'hu-HU': /^[0-9A-ZÁÉÍÓÖŐÚÜŰ]+$/i,
  56. 'nb-NO': /^[0-9A-ZÆØÅ]+$/i,
  57. 'nl-NL': /^[0-9A-ZÁÉËÏÓÖÜÚ]+$/i,
  58. 'nn-NO': /^[0-9A-ZÆØÅ]+$/i,
  59. 'pl-PL': /^[0-9A-ZĄĆĘŚŁŃÓŻŹ]+$/i,
  60. 'pt-PT': /^[0-9A-ZÃÁÀÂÄÇÉÊËÍÏÕÓÔÖÚÜ]+$/i,
  61. 'ru-RU': /^[0-9А-ЯЁ]+$/i,
  62. 'kk-KZ': /^[0-9А-ЯЁ\u04D8\u04B0\u0406\u04A2\u0492\u04AE\u049A\u04E8\u04BA]+$/i,
  63. 'sl-SI': /^[0-9A-ZČĆĐŠŽ]+$/i,
  64. 'sk-SK': /^[0-9A-ZÁČĎÉÍŇÓŠŤÚÝŽĹŔĽÄÔ]+$/i,
  65. 'sr-RS@latin': /^[0-9A-ZČĆŽŠĐ]+$/i,
  66. 'sr-RS': /^[0-9А-ЯЂЈЉЊЋЏ]+$/i,
  67. 'sv-SE': /^[0-9A-ZÅÄÖ]+$/i,
  68. 'th-TH': /^[ก-๙\s]+$/i,
  69. 'tr-TR': /^[0-9A-ZÇĞİıÖŞÜ]+$/i,
  70. 'uk-UA': /^[0-9А-ЩЬЮЯЄIЇҐі]+$/i,
  71. 'ko-KR': /^[0-9ㄱ-ㅎㅏ-ㅣ가-힣]*$/,
  72. 'ku-IQ': /^[٠١٢٣٤٥٦٧٨٩0-9ئابپتجچحخدرڕزژسشعغفڤقکگلڵمنوۆھەیێيطؤثآإأكضصةظذ]+$/i,
  73. 'vi-VN': /^[0-9A-ZÀÁẠẢÃÂẦẤẬẨẪĂẰẮẶẲẴĐÈÉẸẺẼÊỀẾỆỂỄÌÍỊỈĨÒÓỌỎÕÔỒỐỘỔỖƠỜỚỢỞỠÙÚỤỦŨƯỪỨỰỬỮỲÝỴỶỸ]+$/i,
  74. ar: /^[٠١٢٣٤٥٦٧٨٩0-9ءآأؤإئابةتثجحخدذرزسشصضطظعغفقكلمنهوىيًٌٍَُِّْٰ]+$/,
  75. he: /^[0-9א-ת]+$/,
  76. fa: /^['0-9آاءأؤئبپتثجچحخدذرزژسشصضطظعغفقکگلمنوهةی۱۲۳۴۵۶۷۸۹۰']+$/i,
  77. bn: /^['ঀঁংঃঅআইঈউঊঋঌএঐওঔকখগঘঙচছজঝঞটঠডঢণতথদধনপফবভমযরলশষসহ়ঽািীুূৃৄেৈোৌ্ৎৗড়ঢ়য়ৠৡৢৣ০১২৩৪৫৬৭৮৯ৰৱ৲৳৴৵৶৷৸৹৺৻']+$/,
  78. eo: /^[0-9ABCĈD-GĜHĤIJĴK-PRSŜTUŬVZ]+$/i,
  79. 'hi-IN': /^[\u0900-\u0963]+[\u0966-\u097F]*$/i,
  80. 'si-LK': /^[0-9\u0D80-\u0DFF]+$/
  81. };
  82. export var decimal = {
  83. 'en-US': '.',
  84. ar: '٫'
  85. };
  86. export var englishLocales = ['AU', 'GB', 'HK', 'IN', 'NZ', 'ZA', 'ZM'];
  87. for (var locale, i = 0; i < englishLocales.length; i++) {
  88. locale = "en-".concat(englishLocales[i]);
  89. alpha[locale] = alpha['en-US'];
  90. alphanumeric[locale] = alphanumeric['en-US'];
  91. decimal[locale] = decimal['en-US'];
  92. }
  93. // Source: http://www.localeplanet.com/java/
  94. export var arabicLocales = ['AE', 'BH', 'DZ', 'EG', 'IQ', 'JO', 'KW', 'LB', 'LY', 'MA', 'QM', 'QA', 'SA', 'SD', 'SY', 'TN', 'YE'];
  95. for (var _locale, _i = 0; _i < arabicLocales.length; _i++) {
  96. _locale = "ar-".concat(arabicLocales[_i]);
  97. alpha[_locale] = alpha.ar;
  98. alphanumeric[_locale] = alphanumeric.ar;
  99. decimal[_locale] = decimal.ar;
  100. }
  101. export var farsiLocales = ['IR', 'AF'];
  102. for (var _locale2, _i2 = 0; _i2 < farsiLocales.length; _i2++) {
  103. _locale2 = "fa-".concat(farsiLocales[_i2]);
  104. alphanumeric[_locale2] = alphanumeric.fa;
  105. decimal[_locale2] = decimal.ar;
  106. }
  107. export var bengaliLocales = ['BD', 'IN'];
  108. for (var _locale3, _i3 = 0; _i3 < bengaliLocales.length; _i3++) {
  109. _locale3 = "bn-".concat(bengaliLocales[_i3]);
  110. alpha[_locale3] = alpha.bn;
  111. alphanumeric[_locale3] = alphanumeric.bn;
  112. decimal[_locale3] = decimal['en-US'];
  113. }
  114. // Source: https://en.wikipedia.org/wiki/Decimal_mark
  115. export var dotDecimal = ['ar-EG', 'ar-LB', 'ar-LY'];
  116. export var commaDecimal = ['bg-BG', 'cs-CZ', 'da-DK', 'de-DE', 'el-GR', 'en-ZM', 'eo', 'es-ES', 'fr-CA', 'fr-FR', 'id-ID', 'it-IT', 'ku-IQ', 'hi-IN', 'hu-HU', 'nb-NO', 'nn-NO', 'nl-NL', 'pl-PL', 'pt-PT', 'ru-RU', 'kk-KZ', 'si-LK', 'sl-SI', 'sr-RS@latin', 'sr-RS', 'sv-SE', 'tr-TR', 'uk-UA', 'vi-VN'];
  117. for (var _i4 = 0; _i4 < dotDecimal.length; _i4++) {
  118. decimal[dotDecimal[_i4]] = decimal['en-US'];
  119. }
  120. for (var _i5 = 0; _i5 < commaDecimal.length; _i5++) {
  121. decimal[commaDecimal[_i5]] = ',';
  122. }
  123. alpha['fr-CA'] = alpha['fr-FR'];
  124. alphanumeric['fr-CA'] = alphanumeric['fr-FR'];
  125. alpha['pt-BR'] = alpha['pt-PT'];
  126. alphanumeric['pt-BR'] = alphanumeric['pt-PT'];
  127. decimal['pt-BR'] = decimal['pt-PT'];
  128. // see #862
  129. alpha['pl-Pl'] = alpha['pl-PL'];
  130. alphanumeric['pl-Pl'] = alphanumeric['pl-PL'];
  131. decimal['pl-Pl'] = decimal['pl-PL'];
  132. // see #1455
  133. alpha['fa-AF'] = alpha.fa;