forked from dfdgsdfg/webflow-multilingual
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathwebflow-multilingual.mjs.map
1 lines (1 loc) · 35.3 KB
/
webflow-multilingual.mjs.map
1
{"version":3,"file":"webflow-multilingual.mjs","sources":["node_modules/iso-639-1/src/data.js","node_modules/iso-639-1/src/index.js","index.js"],"sourcesContent":["const LANGUAGES_LIST = {\n aa: {\n name: 'Afar',\n nativeName: 'Afaraf',\n },\n ab: {\n name: 'Abkhaz',\n nativeName: 'аҧсуа бызшәа',\n },\n ae: {\n name: 'Avestan',\n nativeName: 'avesta',\n },\n af: {\n name: 'Afrikaans',\n nativeName: 'Afrikaans',\n },\n ak: {\n name: 'Akan',\n nativeName: 'Akan',\n },\n am: {\n name: 'Amharic',\n nativeName: 'አማርኛ',\n },\n an: {\n name: 'Aragonese',\n nativeName: 'aragonés',\n },\n ar: {\n name: 'Arabic',\n nativeName: 'اللغة العربية',\n },\n as: {\n name: 'Assamese',\n nativeName: 'অসমীয়া',\n },\n av: {\n name: 'Avaric',\n nativeName: 'авар мацӀ',\n },\n ay: {\n name: 'Aymara',\n nativeName: 'aymar aru',\n },\n az: {\n name: 'Azerbaijani',\n nativeName: 'azərbaycan dili',\n },\n ba: {\n name: 'Bashkir',\n nativeName: 'башҡорт теле',\n },\n be: {\n name: 'Belarusian',\n nativeName: 'беларуская мова',\n },\n bg: {\n name: 'Bulgarian',\n nativeName: 'български език',\n },\n bh: {\n name: 'Bihari',\n nativeName: 'भोजपुरी',\n },\n bi: {\n name: 'Bislama',\n nativeName: 'Bislama',\n },\n bm: {\n name: 'Bambara',\n nativeName: 'bamanankan',\n },\n bn: {\n name: 'Bengali',\n nativeName: 'বাংলা',\n },\n bo: {\n name: 'Tibetan Standard',\n nativeName: 'བོད་ཡིག',\n },\n br: {\n name: 'Breton',\n nativeName: 'brezhoneg',\n },\n bs: {\n name: 'Bosnian',\n nativeName: 'bosanski jezik',\n },\n ca: {\n name: 'Catalan',\n nativeName: 'català',\n },\n ce: {\n name: 'Chechen',\n nativeName: 'нохчийн мотт',\n },\n ch: {\n name: 'Chamorro',\n nativeName: 'Chamoru',\n },\n co: {\n name: 'Corsican',\n nativeName: 'corsu',\n },\n cr: {\n name: 'Cree',\n nativeName: 'ᓀᐦᐃᔭᐍᐏᐣ',\n },\n cs: {\n name: 'Czech',\n nativeName: 'čeština',\n },\n cu: {\n name: 'Old Church Slavonic',\n nativeName: 'ѩзыкъ словѣньскъ',\n },\n cv: {\n name: 'Chuvash',\n nativeName: 'чӑваш чӗлхи',\n },\n cy: {\n name: 'Welsh',\n nativeName: 'Cymraeg',\n },\n da: {\n name: 'Danish',\n nativeName: 'dansk',\n },\n de: {\n name: 'German',\n nativeName: 'Deutsch',\n },\n dv: {\n name: 'Divehi',\n nativeName: 'Dhivehi',\n },\n dz: {\n name: 'Dzongkha',\n nativeName: 'རྫོང་ཁ',\n },\n ee: {\n name: 'Ewe',\n nativeName: 'Eʋegbe',\n },\n el: {\n name: 'Greek',\n nativeName: 'ελληνικά',\n },\n en: {\n name: 'English',\n nativeName: 'English',\n },\n eo: {\n name: 'Esperanto',\n nativeName: 'Esperanto',\n },\n es: {\n name: 'Spanish',\n nativeName: 'Español',\n },\n et: {\n name: 'Estonian',\n nativeName: 'eesti',\n },\n eu: {\n name: 'Basque',\n nativeName: 'euskara',\n },\n fa: {\n name: 'Persian',\n nativeName: 'فارسی',\n },\n ff: {\n name: 'Fula',\n nativeName: 'Fulfulde',\n },\n fi: {\n name: 'Finnish',\n nativeName: 'suomi',\n },\n fj: {\n name: 'Fijian',\n nativeName: 'Vakaviti',\n },\n fo: {\n name: 'Faroese',\n nativeName: 'føroyskt',\n },\n fr: {\n name: 'French',\n nativeName: 'Français',\n },\n fy: {\n name: 'Western Frisian',\n nativeName: 'Frysk',\n },\n ga: {\n name: 'Irish',\n nativeName: 'Gaeilge',\n },\n gd: {\n name: 'Scottish Gaelic',\n nativeName: 'Gàidhlig',\n },\n gl: {\n name: 'Galician',\n nativeName: 'galego',\n },\n gn: {\n name: 'Guaraní',\n nativeName: \"Avañe'ẽ\",\n },\n gu: {\n name: 'Gujarati',\n nativeName: 'ગુજરાતી',\n },\n gv: {\n name: 'Manx',\n nativeName: 'Gaelg',\n },\n ha: {\n name: 'Hausa',\n nativeName: 'هَوُسَ',\n },\n he: {\n name: 'Hebrew',\n nativeName: 'עברית',\n },\n hi: {\n name: 'Hindi',\n nativeName: 'हिन्दी',\n },\n ho: {\n name: 'Hiri Motu',\n nativeName: 'Hiri Motu',\n },\n hr: {\n name: 'Croatian',\n nativeName: 'hrvatski jezik',\n },\n ht: {\n name: 'Haitian',\n nativeName: 'Kreyòl ayisyen',\n },\n hu: {\n name: 'Hungarian',\n nativeName: 'magyar',\n },\n hy: {\n name: 'Armenian',\n nativeName: 'Հայերեն',\n },\n hz: {\n name: 'Herero',\n nativeName: 'Otjiherero',\n },\n ia: {\n name: 'Interlingua',\n nativeName: 'Interlingua',\n },\n id: {\n name: 'Indonesian',\n nativeName: 'Indonesian',\n },\n ie: {\n name: 'Interlingue',\n nativeName: 'Interlingue',\n },\n ig: {\n name: 'Igbo',\n nativeName: 'Asụsụ Igbo',\n },\n ii: {\n name: 'Nuosu',\n nativeName: 'ꆈꌠ꒿ Nuosuhxop',\n },\n ik: {\n name: 'Inupiaq',\n nativeName: 'Iñupiaq',\n },\n io: {\n name: 'Ido',\n nativeName: 'Ido',\n },\n is: {\n name: 'Icelandic',\n nativeName: 'Íslenska',\n },\n it: {\n name: 'Italian',\n nativeName: 'Italiano',\n },\n iu: {\n name: 'Inuktitut',\n nativeName: 'ᐃᓄᒃᑎᑐᑦ',\n },\n ja: {\n name: 'Japanese',\n nativeName: '日本語',\n },\n jv: {\n name: 'Javanese',\n nativeName: 'basa Jawa',\n },\n ka: {\n name: 'Georgian',\n nativeName: 'ქართული',\n },\n kg: {\n name: 'Kongo',\n nativeName: 'Kikongo',\n },\n ki: {\n name: 'Kikuyu',\n nativeName: 'Gĩkũyũ',\n },\n kj: {\n name: 'Kwanyama',\n nativeName: 'Kuanyama',\n },\n kk: {\n name: 'Kazakh',\n nativeName: 'қазақ тілі',\n },\n kl: {\n name: 'Kalaallisut',\n nativeName: 'kalaallisut',\n },\n km: {\n name: 'Khmer',\n nativeName: 'ខេមរភាសា',\n },\n kn: {\n name: 'Kannada',\n nativeName: 'ಕನ್ನಡ',\n },\n ko: {\n name: 'Korean',\n nativeName: '한국어',\n },\n kr: {\n name: 'Kanuri',\n nativeName: 'Kanuri',\n },\n ks: {\n name: 'Kashmiri',\n nativeName: 'कश्मीरी',\n },\n ku: {\n name: 'Kurdish',\n nativeName: 'Kurdî',\n },\n kv: {\n name: 'Komi',\n nativeName: 'коми кыв',\n },\n kw: {\n name: 'Cornish',\n nativeName: 'Kernewek',\n },\n ky: {\n name: 'Kyrgyz',\n nativeName: 'Кыргызча',\n },\n la: {\n name: 'Latin',\n nativeName: 'latine',\n },\n lb: {\n name: 'Luxembourgish',\n nativeName: 'Lëtzebuergesch',\n },\n lg: {\n name: 'Ganda',\n nativeName: 'Luganda',\n },\n li: {\n name: 'Limburgish',\n nativeName: 'Limburgs',\n },\n ln: {\n name: 'Lingala',\n nativeName: 'Lingála',\n },\n lo: {\n name: 'Lao',\n nativeName: 'ພາສາ',\n },\n lt: {\n name: 'Lithuanian',\n nativeName: 'lietuvių kalba',\n },\n lu: {\n name: 'Luba-Katanga',\n nativeName: 'Tshiluba',\n },\n lv: {\n name: 'Latvian',\n nativeName: 'latviešu valoda',\n },\n mg: {\n name: 'Malagasy',\n nativeName: 'fiteny malagasy',\n },\n mh: {\n name: 'Marshallese',\n nativeName: 'Kajin M̧ajeļ',\n },\n mi: {\n name: 'Māori',\n nativeName: 'te reo Māori',\n },\n mk: {\n name: 'Macedonian',\n nativeName: 'македонски јазик',\n },\n ml: {\n name: 'Malayalam',\n nativeName: 'മലയാളം',\n },\n mn: {\n name: 'Mongolian',\n nativeName: 'Монгол хэл',\n },\n mr: {\n name: 'Marathi',\n nativeName: 'मराठी',\n },\n ms: {\n name: 'Malay',\n nativeName: 'هاس ملايو',\n },\n mt: {\n name: 'Maltese',\n nativeName: 'Malti',\n },\n my: {\n name: 'Burmese',\n nativeName: 'ဗမာစာ',\n },\n na: {\n name: 'Nauru',\n nativeName: 'Ekakairũ Naoero',\n },\n nb: {\n name: 'Norwegian Bokmål',\n nativeName: 'Norsk bokmål',\n },\n nd: {\n name: 'Northern Ndebele',\n nativeName: 'isiNdebele',\n },\n ne: {\n name: 'Nepali',\n nativeName: 'नेपाली',\n },\n ng: {\n name: 'Ndonga',\n nativeName: 'Owambo',\n },\n nl: {\n name: 'Dutch',\n nativeName: 'Nederlands',\n },\n nn: {\n name: 'Norwegian Nynorsk',\n nativeName: 'Norsk nynorsk',\n },\n no: {\n name: 'Norwegian',\n nativeName: 'Norsk',\n },\n nr: {\n name: 'Southern Ndebele',\n nativeName: 'isiNdebele',\n },\n nv: {\n name: 'Navajo',\n nativeName: 'Diné bizaad',\n },\n ny: {\n name: 'Chichewa',\n nativeName: 'chiCheŵa',\n },\n oc: {\n name: 'Occitan',\n nativeName: 'occitan',\n },\n oj: {\n name: 'Ojibwe',\n nativeName: 'ᐊᓂᔑᓈᐯᒧᐎᓐ',\n },\n om: {\n name: 'Oromo',\n nativeName: 'Afaan Oromoo',\n },\n or: {\n name: 'Oriya',\n nativeName: 'ଓଡ଼ିଆ',\n },\n os: {\n name: 'Ossetian',\n nativeName: 'ирон æвзаг',\n },\n pa: {\n name: 'Panjabi',\n nativeName: 'ਪੰਜਾਬੀ',\n },\n pi: {\n name: 'Pāli',\n nativeName: 'पाऴि',\n },\n pl: {\n name: 'Polish',\n nativeName: 'język polski',\n },\n ps: {\n name: 'Pashto',\n nativeName: 'پښتو',\n },\n pt: {\n name: 'Portuguese',\n nativeName: 'Português',\n },\n qu: {\n name: 'Quechua',\n nativeName: 'Runa Simi',\n },\n rm: {\n name: 'Romansh',\n nativeName: 'rumantsch grischun',\n },\n rn: {\n name: 'Kirundi',\n nativeName: 'Ikirundi',\n },\n ro: {\n name: 'Romanian',\n nativeName: 'limba română',\n },\n ru: {\n name: 'Russian',\n nativeName: 'Русский',\n },\n rw: {\n name: 'Kinyarwanda',\n nativeName: 'Ikinyarwanda',\n },\n sa: {\n name: 'Sanskrit',\n nativeName: 'संस्कृतम्',\n },\n sc: {\n name: 'Sardinian',\n nativeName: 'sardu',\n },\n sd: {\n name: 'Sindhi',\n nativeName: 'सिन्धी',\n },\n se: {\n name: 'Northern Sami',\n nativeName: 'Davvisámegiella',\n },\n sg: {\n name: 'Sango',\n nativeName: 'yângâ tî sängö',\n },\n si: {\n name: 'Sinhala',\n nativeName: 'සිංහල',\n },\n sk: {\n name: 'Slovak',\n nativeName: 'slovenčina',\n },\n sl: {\n name: 'Slovene',\n nativeName: 'slovenski jezik',\n },\n sm: {\n name: 'Samoan',\n nativeName: \"gagana fa'a Samoa\",\n },\n sn: {\n name: 'Shona',\n nativeName: 'chiShona',\n },\n so: {\n name: 'Somali',\n nativeName: 'Soomaaliga',\n },\n sq: {\n name: 'Albanian',\n nativeName: 'Shqip',\n },\n sr: {\n name: 'Serbian',\n nativeName: 'српски језик',\n },\n ss: {\n name: 'Swati',\n nativeName: 'SiSwati',\n },\n st: {\n name: 'Southern Sotho',\n nativeName: 'Sesotho',\n },\n su: {\n name: 'Sundanese',\n nativeName: 'Basa Sunda',\n },\n sv: {\n name: 'Swedish',\n nativeName: 'svenska',\n },\n sw: {\n name: 'Swahili',\n nativeName: 'Kiswahili',\n },\n ta: {\n name: 'Tamil',\n nativeName: 'தமிழ்',\n },\n te: {\n name: 'Telugu',\n nativeName: 'తెలుగు',\n },\n tg: {\n name: 'Tajik',\n nativeName: 'тоҷикӣ',\n },\n th: {\n name: 'Thai',\n nativeName: 'ไทย',\n },\n ti: {\n name: 'Tigrinya',\n nativeName: 'ትግርኛ',\n },\n tk: {\n name: 'Turkmen',\n nativeName: 'Türkmen',\n },\n tl: {\n name: 'Tagalog',\n nativeName: 'Wikang Tagalog',\n },\n tn: {\n name: 'Tswana',\n nativeName: 'Setswana',\n },\n to: {\n name: 'Tonga',\n nativeName: 'faka Tonga',\n },\n tr: {\n name: 'Turkish',\n nativeName: 'Türkçe',\n },\n ts: {\n name: 'Tsonga',\n nativeName: 'Xitsonga',\n },\n tt: {\n name: 'Tatar',\n nativeName: 'татар теле',\n },\n tw: {\n name: 'Twi',\n nativeName: 'Twi',\n },\n ty: {\n name: 'Tahitian',\n nativeName: 'Reo Tahiti',\n },\n ug: {\n name: 'Uyghur',\n nativeName: 'ئۇيغۇرچە',\n },\n uk: {\n name: 'Ukrainian',\n nativeName: 'Українська',\n },\n ur: {\n name: 'Urdu',\n nativeName: 'اردو',\n },\n uz: {\n name: 'Uzbek',\n nativeName: 'Ўзбек',\n },\n ve: {\n name: 'Venda',\n nativeName: 'Tshivenḓa',\n },\n vi: {\n name: 'Vietnamese',\n nativeName: 'Tiếng Việt',\n },\n vo: {\n name: 'Volapük',\n nativeName: 'Volapük',\n },\n wa: {\n name: 'Walloon',\n nativeName: 'walon',\n },\n wo: {\n name: 'Wolof',\n nativeName: 'Wollof',\n },\n xh: {\n name: 'Xhosa',\n nativeName: 'isiXhosa',\n },\n yi: {\n name: 'Yiddish',\n nativeName: 'ייִדיש',\n },\n yo: {\n name: 'Yoruba',\n nativeName: 'Yorùbá',\n },\n za: {\n name: 'Zhuang',\n nativeName: 'Saɯ cueŋƅ',\n },\n zh: {\n name: 'Chinese',\n nativeName: '中文',\n },\n zu: {\n name: 'Zulu',\n nativeName: 'isiZulu',\n },\n};\n\nexport default LANGUAGES_LIST;\n","import LANGUAGES_LIST from './data';\n\nexport default class ISO6391 {\n static getLanguages(codes = []) {\n return codes.map(code => ({\n code,\n name: ISO6391.getName(code),\n nativeName: ISO6391.getNativeName(code),\n }));\n }\n\n static getName(code) {\n return ISO6391.validate(code) ? LANGUAGES_LIST[code].name : '';\n }\n\n static getAllNames() {\n return Object.values(LANGUAGES_LIST).map(l => l.name);\n }\n\n static getNativeName(code) {\n return ISO6391.validate(code) ? LANGUAGES_LIST[code].nativeName : '';\n }\n\n static getAllNativeNames() {\n return Object.values(LANGUAGES_LIST).map(l => l.nativeName);\n }\n\n static getCode(name) {\n const code = Object.keys(LANGUAGES_LIST).find(code => {\n const language = LANGUAGES_LIST[code];\n\n return (\n language.name.toLowerCase() === name.toLowerCase() ||\n language.nativeName.toLowerCase() === name.toLowerCase()\n );\n });\n return code || '';\n }\n\n static getAllCodes() {\n return Object.keys(LANGUAGES_LIST);\n }\n\n static validate(code) {\n return LANGUAGES_LIST[code] !== undefined;\n }\n}\n","// http://multilinguale.webflow.io\nimport ISO6391 from \"iso-639-1\";\n\nconst defaultLang = \"en\";\nconst langRegExp = /\\[\\[([a-z]{2})\\]\\]([^\\[]+)/g;\nconst isStorageEnabled = !(typeof localStorage == \"undefined\");\nconst textDict = [];\nlet userLang = (\n navigator.userLanguage ||\n navigator.browserLanguage ||\n navigator.language ||\n defaultLang\n).substr(0, 2);\nlet documentLang;\n\nfunction getLangParam() {\n const arr = /lang=([a-z]{2})/g.exec(location.search);\n return arr ? arr[1] : null;\n}\n\nfunction getLangFromStorage() {\n return isStorageEnabled ? localStorage.getItem(\"lang\") : undefined;\n}\n\nfunction setLang(lang) {\n userLang = lang;\n if (isStorageEnabled) {\n localStorage.setItem(\"lang\", userLang);\n }\n console.log(\"[wm] setLang:\", lang, userLang);\n applyLang();\n}\n\nfunction applyLang() {\n textDict.forEach(o => {\n o.el.textContent = o.dict[userLang];\n });\n\n ISO6391.getAllCodes().forEach(lang => {\n lang === userLang\n ? document\n .querySelectorAll(`.wm-${lang}`)\n .forEach(el => (el.style.display = el.dataset.wmDisplay))\n : document\n .querySelectorAll(`.wm-${lang}`)\n .forEach(el => (el.style.display = \"none\"));\n });\n}\n\nfunction textNodesUnder(el) {\n let node;\n const nodes = [];\n const walk = document.createTreeWalker(el, NodeFilter.SHOW_TEXT, null, false);\n\n while ((node = walk.nextNode())) {\n nodes.push(node);\n }\n return nodes;\n}\n\n// https://medium.com/@roxeteer/javascript-one-liner-to-get-elements-text-content-without-its-child-nodes-8e59269d1e71\nfunction parentElTextOnly(el) {\n return Array.from(el.childNodes).reduce((acc, node) => {\n return acc + (node.nodeType === 3 ? node.textContent : \"\");\n }, \"\");\n}\n\nwindow.addEventListener(\"DOMContentLoaded\", () => {\n let langs = new Set();\n userLang = getLangParam() || getLangFromStorage() || userLang;\n if (isStorageEnabled) {\n localStorage.setItem(\"lang\", userLang);\n }\n\n ISO6391.getAllCodes().forEach(lang => {\n document\n .querySelectorAll(`.wm-${lang}`)\n .forEach(el => (el.dataset.wmDisplay = el.style.display));\n });\n\n textNodesUnder(document)\n .filter(node => {\n return langRegExp.test(parentElTextOnly(node.parentElement));\n })\n .forEach((node, i) => {\n const dict = {};\n let arr;\n while (\n (arr = langRegExp.exec(parentElTextOnly(node.parentElement))) != null\n ) {\n dict[arr[1]] = arr[2];\n langs.add(arr[1]);\n }\n textDict.push({\n el: node.parentElement,\n dict\n });\n });\n console.log(\"[wm] documentLang:\", documentLang);\n documentLang = DocumentLang(langs, userLang);\n applyLang();\n});\n\n/////////////////////////\n\nwindow.addEventListener(\"DOMContentLoaded\", () => {\n document.querySelectorAll(\"[data-wm-sel]\").forEach(el => {\n el.addEventListener(\"click\", evt => {\n evt.stopPropagation();\n evt.preventDefault();\n console.log(\"[wm] click:\", el.dataset.wmSel);\n setLang(el.dataset.wmSel);\n });\n });\n});\n\n///////////////////////////\n\nfunction DocumentLang(langsSet, userLang) {\n const langs = Array.from(langsSet);\n let cur = langs.indexOf(userLang);\n const next = () => {\n if (cur < langs.length) {\n return langs[cur++];\n } else {\n cur = 0;\n return langs[0];\n }\n };\n const nextVal = () => {\n if (cur + 1 < langs.length) {\n return langs[cur + 1];\n } else {\n return langs[0];\n }\n };\n const curVal = () => langs[cur];\n\n return {\n next,\n nextVal,\n curVal\n };\n}\n\nwindow.addEventListener(\"DOMContentLoaded\", () => {\n document.querySelectorAll(\"[data-wm-switch]\").forEach(el => {\n if (documentLang.curVal() === userLang) {\n el.textContent = ISO6391.getName(documentLang.nextVal());\n } else {\n el.textContent = ISO6391.getName(documentLang.curVal());\n }\n\n el.addEventListener(\"click\", evt => {\n evt.stopPropagation();\n evt.preventDefault();\n let nextLang = documentLang.next();\n if (nextLang === userLang) {\n nextLang = documentLang.next();\n }\n setLang(nextLang);\n el.textContent = ISO6391.getName(documentLang.nextVal());\n console.log(\"[wm] switch:\", nextLang);\n });\n });\n});\n"],"names":[],"mappings":"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"}