nva-language 1.0.13 → 1.0.15

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -11,7 +11,7 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "d
11
11
 
12
12
  var AFRIKAANS = (0, _Language["default"])('af', ['afr'], 'afr', 'Afrikaans', 'Afrikaans', 'Afrikaans', 'Afrikánsagiella');
13
13
  exports.AFRIKAANS = AFRIKAANS;
14
- var BOKMAAL = (0, _Language["default"])('nb', ['nob'], 'nob', 'Bokmål', 'Bokmål', 'Bokmål', 'Girjedárogiella');
14
+ var BOKMAAL = (0, _Language["default"])('nb', ['nob'], 'nob', 'Norwegian, bokmål', 'Norsk, bokmål', 'Norsk, bokmål', 'Dárogiella, girjedárogiella');
15
15
  exports.BOKMAAL = BOKMAAL;
16
16
  var BULGARIAN = (0, _Language["default"])('bg', ['bul'], 'bul', 'Bulgarian', 'Bulgarsk', 'Bulgarsk', 'Bulgáriagiella');
17
17
  exports.BULGARIAN = BULGARIAN;
@@ -45,7 +45,7 @@ var MISCELLANEOUS = (0, _Language["default"])(null, ['mis'], 'mis', 'Miscellaneo
45
45
  exports.MISCELLANEOUS = MISCELLANEOUS;
46
46
  var MULTIPLE = (0, _Language["default"])(null, ['mul'], 'mul', 'Multiple languages', 'Flere språk', 'Fleire språk', 'gielat');
47
47
  exports.MULTIPLE = MULTIPLE;
48
- var NYNORSK = (0, _Language["default"])('nn', ['nno'], 'nno', 'Nynorsk', 'Nynorsk', 'Nynorsk', 'Ođđadárogiella');
48
+ var NYNORSK = (0, _Language["default"])('nn', ['nno'], 'nno', 'Norwegian, nynorsk', 'Norsk, nynorsk', 'Norsk, nynorsk', 'Dárogiella, ođđadárogiella');
49
49
  exports.NYNORSK = NYNORSK;
50
50
  var NORWEGIAN = (0, _Language["default"])('no', ['nor'], 'nor', 'Norwegian', 'Norsk', 'Norsk', 'Dárogiella');
51
51
  exports.NORWEGIAN = NORWEGIAN;
@@ -19,6 +19,14 @@ var replaceMiscellaneous = function replaceMiscellaneous(language) {
19
19
  return _LanguageConstants.MISCELLANEOUS === language ? _LanguageConstants.MULTIPLE : language;
20
20
  };
21
21
 
22
+ var stripNonAZ = function stripNonAZ(string) {
23
+ return string.replaceAll(/[^a-zæøåáčđŋšŧž]+/g, '');
24
+ };
25
+
26
+ var isSameNaturalLanguageString = function isSameNaturalLanguageString(a, b) {
27
+ return stripNonAZ(convertString(a)) === stripNonAZ(convertString(b));
28
+ };
29
+
22
30
  var mappedValue = function mappedValue(language) {
23
31
  return language === null || language === undefined ? _LanguageConstants.UNDEFINED_LANGUAGE : replaceNorwegian(replaceMiscellaneous(language));
24
32
  };
@@ -51,7 +59,7 @@ exports.getLanguageByIso6393Code = getLanguageByIso6393Code;
51
59
 
52
60
  var getLanguageByEnglishName = function getLanguageByEnglishName(name) {
53
61
  return mappedValue(_LanguageConstants.ALL_LANGUAGES.find(function (language) {
54
- return convertString(name) === language.eng.toLowerCase();
62
+ return isSameNaturalLanguageString(language.eng.toLowerCase(), convertString(name));
55
63
  }));
56
64
  };
57
65
 
@@ -59,7 +67,7 @@ exports.getLanguageByEnglishName = getLanguageByEnglishName;
59
67
 
60
68
  var getLanguageByBokmaalName = function getLanguageByBokmaalName(name) {
61
69
  return mappedValue(_LanguageConstants.ALL_LANGUAGES.find(function (language) {
62
- return convertString(name) === language.nob.toLowerCase();
70
+ return isSameNaturalLanguageString(language.nob.toLowerCase(), convertString(name));
63
71
  }));
64
72
  };
65
73
 
@@ -67,7 +75,7 @@ exports.getLanguageByBokmaalName = getLanguageByBokmaalName;
67
75
 
68
76
  var getLanguageByNynorskName = function getLanguageByNynorskName(name) {
69
77
  return mappedValue(_LanguageConstants.ALL_LANGUAGES.find(function (language) {
70
- return convertString(name) === language.nno.toLowerCase();
78
+ return isSameNaturalLanguageString(language.nno.toLowerCase(), convertString(name));
71
79
  }));
72
80
  };
73
81
 
@@ -75,7 +83,7 @@ exports.getLanguageByNynorskName = getLanguageByNynorskName;
75
83
 
76
84
  var getLanguageBySamiName = function getLanguageBySamiName(name) {
77
85
  return mappedValue(_LanguageConstants.ALL_LANGUAGES.find(function (language) {
78
- return convertString(name) === language.sme.toLowerCase();
86
+ return isSameNaturalLanguageString(language.sme.toLowerCase(), convertString(name));
79
87
  }));
80
88
  };
81
89
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "nva-language",
3
- "version": "1.0.13",
3
+ "version": "1.0.15",
4
4
  "description": "",
5
5
  "main": "./dist/LanguageMapper.js",
6
6
  "module": "./src/LanguageMapper.mjs",
@@ -1,7 +1,7 @@
1
1
  import Language from './Language.mjs'
2
2
 
3
3
  export const AFRIKAANS = Language('af', ['afr'], 'afr', 'Afrikaans', 'Afrikaans', 'Afrikaans', 'Afrikánsagiella')
4
- export const BOKMAAL = Language('nb', ['nob'], 'nob', 'Bokmål', 'Bokmål', 'Bokmål', 'Girjedárogiella')
4
+ export const BOKMAAL = Language('nb', ['nob'], 'nob', 'Norwegian, bokmål', 'Norsk, bokmål', 'Norsk, bokmål', 'Dárogiella, girjedárogiella')
5
5
  export const BULGARIAN = Language('bg', ['bul'], 'bul', 'Bulgarian', 'Bulgarsk', 'Bulgarsk', 'Bulgáriagiella')
6
6
  export const CATALAN = Language('ca', ['cat'], 'car', 'Catalan', 'Katalansk', 'Katalansk', 'Katalánagiella')
7
7
  export const CHINESE = Language('zh', ['zho', 'chi'], 'zho', 'Chinese', 'Kinesisk', 'Kinesisk', 'Kiinnágiella')
@@ -18,7 +18,7 @@ export const ITALIAN = Language('it', ['ita'], 'ita', 'Italian', 'Italiensk', 'I
18
18
  export const HUNGARIAN = Language('hu', ['hun'], 'hun', 'Hungarian', 'Ungarsk', 'Ungarsk', 'Ungárgiella')
19
19
  export const MISCELLANEOUS = Language(null, ['mis'], 'mis', 'Miscellaneous language', 'Annet språk', 'Anna språk')
20
20
  export const MULTIPLE = Language(null, ['mul'], 'mul', 'Multiple languages', 'Flere språk', 'Fleire språk', 'gielat')
21
- export const NYNORSK = Language('nn', ['nno'], 'nno', 'Nynorsk', 'Nynorsk', 'Nynorsk', 'Ođđadárogiella')
21
+ export const NYNORSK = Language('nn', ['nno'], 'nno', 'Norwegian, nynorsk', 'Norsk, nynorsk', 'Norsk, nynorsk', 'Dárogiella, ođđadárogiella')
22
22
  export const NORWEGIAN = Language('no', ['nor'], 'nor', 'Norwegian', 'Norsk', 'Norsk', 'Dárogiella')
23
23
  export const POLISH = Language('pl', ['pol'], 'pol', 'Polish', 'Polsk', 'Polsk', 'Polskkagiella')
24
24
  export const PORTUGUESE = Language('pt', ['por'], 'por', 'Portuguese', 'Portugisisk', 'Portugisisk', 'Portugálagiella')
@@ -5,6 +5,9 @@ const convertString = string => string !== null ? string.trim().toLowerCase() :
5
5
  const replaceNorwegian = language => NORWEGIAN === language ? BOKMAAL : language
6
6
  const replaceMiscellaneous = language => MISCELLANEOUS === language ? MULTIPLE : language
7
7
 
8
+ const stripNonAZ = string => string.replaceAll(/[^a-zæøåáčđŋšŧž]+/g, '')
9
+ const isSameNaturalLanguageString = (a, b) => stripNonAZ(convertString(a)) === stripNonAZ(convertString(b))
10
+
8
11
  const mappedValue = language => {
9
12
  return (language === null || language === undefined)
10
13
  ? UNDEFINED_LANGUAGE
@@ -24,19 +27,19 @@ export const getLanguageByIso6393Code = code => mappedValue(
24
27
  )
25
28
 
26
29
  export const getLanguageByEnglishName = name => mappedValue(
27
- ALL_LANGUAGES.find(language => convertString(name) === language.eng.toLowerCase())
30
+ ALL_LANGUAGES.find(language => isSameNaturalLanguageString(language.eng.toLowerCase(), convertString(name)))
28
31
  )
29
32
 
30
33
  export const getLanguageByBokmaalName = name => mappedValue(
31
- ALL_LANGUAGES.find(language => convertString(name) === language.nob.toLowerCase())
34
+ ALL_LANGUAGES.find(language => isSameNaturalLanguageString(language.nob.toLowerCase(), convertString(name)))
32
35
  )
33
36
 
34
37
  export const getLanguageByNynorskName = name => mappedValue(
35
- ALL_LANGUAGES.find(language => convertString(name) === language.nno.toLowerCase())
38
+ ALL_LANGUAGES.find(language => isSameNaturalLanguageString(language.nno.toLowerCase(), convertString(name)))
36
39
  )
37
40
 
38
41
  export const getLanguageBySamiName = name => mappedValue(
39
- ALL_LANGUAGES.find(language => convertString(name) === language.sme.toLowerCase())
42
+ ALL_LANGUAGES.find(language => isSameNaturalLanguageString(language.sme.toLowerCase(), convertString(name)))
40
43
  )
41
44
 
42
45
  export const getLanguageByUri = (uri) => mappedValue(