n8n-nodes-language-detector 1.0.1
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.
- package/README.md +109 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +6 -0
- package/dist/index.js.map +1 -0
- package/dist/nodes/LanguageDetector/LanguageDetector.node.d.ts +6 -0
- package/dist/nodes/LanguageDetector/LanguageDetector.node.d.ts.map +1 -0
- package/dist/nodes/LanguageDetector/LanguageDetector.node.js +218 -0
- package/dist/nodes/LanguageDetector/LanguageDetector.node.js.map +1 -0
- package/dist/nodes/LanguageDetector/language.svg +7 -0
- package/package.json +40 -0
package/README.md
ADDED
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
# n8n-nodes-language-detector
|
|
2
|
+
|
|
3
|
+
n8n için dil kodu dönüştürücü node. ISO2, ISO3, İngilizce, Türkçe ve yerel dil adlarını birbirine çevirir.
|
|
4
|
+
|
|
5
|
+
## Özellikler
|
|
6
|
+
|
|
7
|
+
- **ISO2** (tr, ru, en...) → tüm formatlara çevirir
|
|
8
|
+
- **ISO3** (TUR, RUS, ENG...) → tüm formatlara çevirir
|
|
9
|
+
- **İngilizce dil adı** (Turkish, Russian...) → tüm formatlara çevirir
|
|
10
|
+
- **Türkçe dil adı** (Türkçe, Rusça...) → tüm formatlara çevirir
|
|
11
|
+
- **Yerel dil adı** (Türkçe, Русский...) → tüm formatlara çevirir
|
|
12
|
+
- RTL dil tespiti (Arapça, İbranice, Farsça...)
|
|
13
|
+
- 85+ dil desteği
|
|
14
|
+
|
|
15
|
+
## Çıktı Alanları
|
|
16
|
+
|
|
17
|
+
| Alan | Örnek (RUS için) |
|
|
18
|
+
|------|-----------------|
|
|
19
|
+
| lang_iso3 | RUS |
|
|
20
|
+
| lang_iso2 | RU |
|
|
21
|
+
| lang_name_tr | Rusça |
|
|
22
|
+
| lang_name_en | Russian |
|
|
23
|
+
| lang_name_native | Русский |
|
|
24
|
+
| lang_direction | ltr |
|
|
25
|
+
| lang_found | true |
|
|
26
|
+
|
|
27
|
+
## Kurulum
|
|
28
|
+
|
|
29
|
+
### Yöntem 1: Docker ile (Önerilen)
|
|
30
|
+
|
|
31
|
+
1. n8n'in veri klasörüne gir (genellikle `~/.n8n`)
|
|
32
|
+
2. Paketi yükle:
|
|
33
|
+
|
|
34
|
+
```bash
|
|
35
|
+
docker exec -it n8n npm install -g n8n-nodes-language-detector
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
Veya `docker-compose.yml` dosyana ekle:
|
|
39
|
+
|
|
40
|
+
```yaml
|
|
41
|
+
services:
|
|
42
|
+
n8n:
|
|
43
|
+
image: n8nio/n8n
|
|
44
|
+
environment:
|
|
45
|
+
- N8N_CUSTOM_EXTENSIONS=/home/node/.n8n/custom
|
|
46
|
+
volumes:
|
|
47
|
+
- ~/.n8n:/home/node/.n8n
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
Ardından:
|
|
51
|
+
```bash
|
|
52
|
+
# Container'a gir
|
|
53
|
+
docker exec -it n8n sh
|
|
54
|
+
|
|
55
|
+
# Node'u yükle
|
|
56
|
+
cd /home/node/.n8n
|
|
57
|
+
mkdir -p custom
|
|
58
|
+
cd custom
|
|
59
|
+
npm install n8n-nodes-language-detector
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
n8n'i yeniden başlat:
|
|
63
|
+
```bash
|
|
64
|
+
docker restart n8n
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
### Yöntem 2: npm ile Lokal Kurulum
|
|
68
|
+
|
|
69
|
+
```bash
|
|
70
|
+
# n8n veri klasörüne git
|
|
71
|
+
cd ~/.n8n
|
|
72
|
+
|
|
73
|
+
# custom klasörü oluştur
|
|
74
|
+
mkdir -p custom && cd custom
|
|
75
|
+
|
|
76
|
+
# Paketi yükle
|
|
77
|
+
npm install n8n-nodes-language-detector
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
n8n'i yeniden başlat.
|
|
81
|
+
|
|
82
|
+
### Yöntem 3: Manuel (Bu repodan)
|
|
83
|
+
|
|
84
|
+
```bash
|
|
85
|
+
# Repoyu klonla veya zip'i çıkart
|
|
86
|
+
cd n8n-language-detector
|
|
87
|
+
|
|
88
|
+
# Bağımlılıkları yükle
|
|
89
|
+
npm install
|
|
90
|
+
|
|
91
|
+
# Derle
|
|
92
|
+
npm run build
|
|
93
|
+
|
|
94
|
+
# n8n custom klasörüne kopyala
|
|
95
|
+
cp -r dist ~/.n8n/custom/n8n-nodes-language-detector
|
|
96
|
+
cp package.json ~/.n8n/custom/n8n-nodes-language-detector/
|
|
97
|
+
```
|
|
98
|
+
|
|
99
|
+
## Kullanım
|
|
100
|
+
|
|
101
|
+
1. n8n'de yeni bir node ekle
|
|
102
|
+
2. "Language Detector" ara
|
|
103
|
+
3. **Input Field**: Dil kodunun olduğu alan adını yaz (örn: `chatInput`)
|
|
104
|
+
4. **Output Prefix**: Çıktı alanlarının öneki (varsayılan: `lang`)
|
|
105
|
+
5. **On Not Found**: Dil bulunamazsa ne yapılsın
|
|
106
|
+
|
|
107
|
+
## Lisans
|
|
108
|
+
|
|
109
|
+
MIT
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,gDAAgD,CAAC"}
|
package/dist/index.js
ADDED
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.LanguageDetector = void 0;
|
|
4
|
+
var LanguageDetector_node_1 = require("./nodes/LanguageDetector/LanguageDetector.node");
|
|
5
|
+
Object.defineProperty(exports, "LanguageDetector", { enumerable: true, get: function () { return LanguageDetector_node_1.LanguageDetector; } });
|
|
6
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAAA,wFAAkF;AAAzE,yHAAA,gBAAgB,OAAA"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { IExecuteFunctions, INodeExecutionData, INodeType, INodeTypeDescription } from 'n8n-workflow';
|
|
2
|
+
export declare class LanguageDetector implements INodeType {
|
|
3
|
+
description: INodeTypeDescription;
|
|
4
|
+
execute(this: IExecuteFunctions): Promise<INodeExecutionData[][]>;
|
|
5
|
+
}
|
|
6
|
+
//# sourceMappingURL=LanguageDetector.node.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LanguageDetector.node.d.ts","sourceRoot":"","sources":["../../../src/nodes/LanguageDetector/LanguageDetector.node.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,iBAAiB,EACjB,kBAAkB,EAClB,SAAS,EACT,oBAAoB,EAEpB,MAAM,cAAc,CAAC;AA+HtB,qBAAa,gBAAiB,YAAW,SAAS;IACjD,WAAW,EAAE,oBAAoB,CAyC/B;IAEI,OAAO,CAAC,IAAI,EAAE,iBAAiB,GAAG,OAAO,CAAC,kBAAkB,EAAE,EAAE,CAAC;CAyDvE"}
|
|
@@ -0,0 +1,218 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.LanguageDetector = void 0;
|
|
4
|
+
const n8n_workflow_1 = require("n8n-workflow");
|
|
5
|
+
const LANG_MAP = {
|
|
6
|
+
"ab": { iso2: "ab", iso3: "abk", name_en: "Abkhazian", name_native: "Аҧсуа", name_tr: "Abhazca" },
|
|
7
|
+
"af": { iso2: "af", iso3: "afr", name_en: "Afrikaans", name_native: "Afrikaans", name_tr: "Afrikaanca" },
|
|
8
|
+
"ak": { iso2: "ak", iso3: "aka", name_en: "Akan", name_native: "Akan", name_tr: "Akanca" },
|
|
9
|
+
"sq": { iso2: "sq", iso3: "alb", name_en: "Albanian", name_native: "Shqip", name_tr: "Arnavutça" },
|
|
10
|
+
"am": { iso2: "am", iso3: "amh", name_en: "Amharic", name_native: "አማርኛ", name_tr: "Amharca" },
|
|
11
|
+
"ar": { iso2: "ar", iso3: "ara", name_en: "Arabic", name_native: "العربية", name_tr: "Arapça", direction: "rtl" },
|
|
12
|
+
"hy": { iso2: "hy", iso3: "arm", name_en: "Armenian", name_native: "Հայերեն", name_tr: "Ermenice" },
|
|
13
|
+
"az": { iso2: "az", iso3: "aze", name_en: "Azerbaijani", name_native: "Azərbaycan", name_tr: "Azerbaycanca" },
|
|
14
|
+
"eu": { iso2: "eu", iso3: "baq", name_en: "Basque", name_native: "Euskara", name_tr: "Baskça" },
|
|
15
|
+
"be": { iso2: "be", iso3: "bel", name_en: "Belarusian", name_native: "Беларуская", name_tr: "Belarusça" },
|
|
16
|
+
"bn": { iso2: "bn", iso3: "ben", name_en: "Bengali", name_native: "বাংলা", name_tr: "Bengalce" },
|
|
17
|
+
"bs": { iso2: "bs", iso3: "bos", name_en: "Bosnian", name_native: "Bosanski", name_tr: "Boşnakça" },
|
|
18
|
+
"bg": { iso2: "bg", iso3: "bul", name_en: "Bulgarian", name_native: "Български", name_tr: "Bulgarca" },
|
|
19
|
+
"ca": { iso2: "ca", iso3: "cat", name_en: "Catalan", name_native: "Català", name_tr: "Katalanca" },
|
|
20
|
+
"zh": { iso2: "zh", iso3: "chi", name_en: "Chinese", name_native: "中文", name_tr: "Çince" },
|
|
21
|
+
"hr": { iso2: "hr", iso3: "hrv", name_en: "Croatian", name_native: "Hrvatski", name_tr: "Hırvatça" },
|
|
22
|
+
"cs": { iso2: "cs", iso3: "cze", name_en: "Czech", name_native: "Čeština", name_tr: "Çekçe" },
|
|
23
|
+
"da": { iso2: "da", iso3: "dan", name_en: "Danish", name_native: "Dansk", name_tr: "Danimarkaca" },
|
|
24
|
+
"nl": { iso2: "nl", iso3: "dut", name_en: "Dutch", name_native: "Nederlands", name_tr: "Felemenkçe" },
|
|
25
|
+
"en": { iso2: "en", iso3: "eng", name_en: "English", name_native: "English", name_tr: "İngilizce" },
|
|
26
|
+
"et": { iso2: "et", iso3: "est", name_en: "Estonian", name_native: "Eesti", name_tr: "Estonca" },
|
|
27
|
+
"fi": { iso2: "fi", iso3: "fin", name_en: "Finnish", name_native: "Suomi", name_tr: "Fince" },
|
|
28
|
+
"fr": { iso2: "fr", iso3: "fre", name_en: "French", name_native: "Français", name_tr: "Fransızca" },
|
|
29
|
+
"gl": { iso2: "gl", iso3: "glg", name_en: "Galician", name_native: "Galego", name_tr: "Galiçyaca" },
|
|
30
|
+
"ka": { iso2: "ka", iso3: "geo", name_en: "Georgian", name_native: "ქართული", name_tr: "Gürcüce" },
|
|
31
|
+
"de": { iso2: "de", iso3: "ger", name_en: "German", name_native: "Deutsch", name_tr: "Almanca" },
|
|
32
|
+
"el": { iso2: "el", iso3: "gre", name_en: "Greek", name_native: "Ελληνικά", name_tr: "Yunanca" },
|
|
33
|
+
"gu": { iso2: "gu", iso3: "guj", name_en: "Gujarati", name_native: "ગુજરાતી", name_tr: "Gujaratça" },
|
|
34
|
+
"ht": { iso2: "ht", iso3: "hat", name_en: "Haitian Creole", name_native: "Kreyòl ayisyen", name_tr: "Haiti Kreolcesi" },
|
|
35
|
+
"he": { iso2: "he", iso3: "heb", name_en: "Hebrew", name_native: "עברית", name_tr: "İbranice", direction: "rtl" },
|
|
36
|
+
"hi": { iso2: "hi", iso3: "hin", name_en: "Hindi", name_native: "हिन्दी", name_tr: "Hintçe" },
|
|
37
|
+
"hu": { iso2: "hu", iso3: "hun", name_en: "Hungarian", name_native: "Magyar", name_tr: "Macarca" },
|
|
38
|
+
"is": { iso2: "is", iso3: "ice", name_en: "Icelandic", name_native: "Íslenska", name_tr: "İzlandaca" },
|
|
39
|
+
"id": { iso2: "id", iso3: "ind", name_en: "Indonesian", name_native: "Bahasa Indonesia", name_tr: "Endonezce" },
|
|
40
|
+
"ga": { iso2: "ga", iso3: "gle", name_en: "Irish", name_native: "Gaeilge", name_tr: "İrlandaca" },
|
|
41
|
+
"it": { iso2: "it", iso3: "ita", name_en: "Italian", name_native: "Italiano", name_tr: "İtalyanca" },
|
|
42
|
+
"ja": { iso2: "ja", iso3: "jpn", name_en: "Japanese", name_native: "日本語", name_tr: "Japonca" },
|
|
43
|
+
"kn": { iso2: "kn", iso3: "kan", name_en: "Kannada", name_native: "ಕನ್ನಡ", name_tr: "Kannada" },
|
|
44
|
+
"kk": { iso2: "kk", iso3: "kaz", name_en: "Kazakh", name_native: "Қазақша", name_tr: "Kazakça" },
|
|
45
|
+
"km": { iso2: "km", iso3: "khm", name_en: "Khmer", name_native: "ភាសាខ្មែរ", name_tr: "Kmerce" },
|
|
46
|
+
"ko": { iso2: "ko", iso3: "kor", name_en: "Korean", name_native: "한국어", name_tr: "Korece" },
|
|
47
|
+
"ku": { iso2: "ku", iso3: "kur", name_en: "Kurdish", name_native: "Kurdî", name_tr: "Kürtçe", direction: "rtl" },
|
|
48
|
+
"ky": { iso2: "ky", iso3: "kir", name_en: "Kyrgyz", name_native: "Кыргызча", name_tr: "Kırgızca" },
|
|
49
|
+
"lo": { iso2: "lo", iso3: "lao", name_en: "Lao", name_native: "ລາວ", name_tr: "Laoca" },
|
|
50
|
+
"lv": { iso2: "lv", iso3: "lav", name_en: "Latvian", name_native: "Latviešu", name_tr: "Letonca" },
|
|
51
|
+
"lt": { iso2: "lt", iso3: "lit", name_en: "Lithuanian", name_native: "Lietuvių", name_tr: "Litvanca" },
|
|
52
|
+
"lb": { iso2: "lb", iso3: "ltz", name_en: "Luxembourgish", name_native: "Lëtzebuergesch", name_tr: "Lüksemburgca" },
|
|
53
|
+
"mk": { iso2: "mk", iso3: "mac", name_en: "Macedonian", name_native: "Македонски", name_tr: "Makedonca" },
|
|
54
|
+
"mg": { iso2: "mg", iso3: "mlg", name_en: "Malagasy", name_native: "Malagasy", name_tr: "Malgaşça" },
|
|
55
|
+
"ms": { iso2: "ms", iso3: "may", name_en: "Malay", name_native: "Bahasa Melayu", name_tr: "Malayca" },
|
|
56
|
+
"ml": { iso2: "ml", iso3: "mal", name_en: "Malayalam", name_native: "മലയാളം", name_tr: "Malayalamca" },
|
|
57
|
+
"mt": { iso2: "mt", iso3: "mlt", name_en: "Maltese", name_native: "Malti", name_tr: "Maltaca" },
|
|
58
|
+
"mi": { iso2: "mi", iso3: "mao", name_en: "Maori", name_native: "Te Reo Māori", name_tr: "Maori" },
|
|
59
|
+
"mr": { iso2: "mr", iso3: "mar", name_en: "Marathi", name_native: "मराठी", name_tr: "Marathi" },
|
|
60
|
+
"mn": { iso2: "mn", iso3: "mon", name_en: "Mongolian", name_native: "Монгол", name_tr: "Moğolca" },
|
|
61
|
+
"ne": { iso2: "ne", iso3: "nep", name_en: "Nepali", name_native: "नेपाली", name_tr: "Nepalce" },
|
|
62
|
+
"no": { iso2: "no", iso3: "nor", name_en: "Norwegian", name_native: "Norsk", name_tr: "Norveççe" },
|
|
63
|
+
"ps": { iso2: "ps", iso3: "pus", name_en: "Pashto", name_native: "پښتو", name_tr: "Peştuca", direction: "rtl" },
|
|
64
|
+
"fa": { iso2: "fa", iso3: "per", name_en: "Persian", name_native: "فارسی", name_tr: "Farsça", direction: "rtl" },
|
|
65
|
+
"pl": { iso2: "pl", iso3: "pol", name_en: "Polish", name_native: "Polski", name_tr: "Lehçe" },
|
|
66
|
+
"pt": { iso2: "pt", iso3: "por", name_en: "Portuguese", name_native: "Português", name_tr: "Portekizce" },
|
|
67
|
+
"pa": { iso2: "pa", iso3: "pan", name_en: "Punjabi", name_native: "ਪੰਜਾਬੀ", name_tr: "Pencapça" },
|
|
68
|
+
"ro": { iso2: "ro", iso3: "rum", name_en: "Romanian", name_native: "Română", name_tr: "Romence" },
|
|
69
|
+
"ru": { iso2: "ru", iso3: "rus", name_en: "Russian", name_native: "Русский", name_tr: "Rusça" },
|
|
70
|
+
"sm": { iso2: "sm", iso3: "smo", name_en: "Samoan", name_native: "Gagana fa'a Sāmoa", name_tr: "Samoaca" },
|
|
71
|
+
"sr": { iso2: "sr", iso3: "srp", name_en: "Serbian", name_native: "Српски", name_tr: "Sırpça" },
|
|
72
|
+
"sn": { iso2: "sn", iso3: "sna", name_en: "Shona", name_native: "chiShona", name_tr: "Şonaca" },
|
|
73
|
+
"sd": { iso2: "sd", iso3: "snd", name_en: "Sindhi", name_native: "سنڌي", name_tr: "Sindhi", direction: "rtl" },
|
|
74
|
+
"si": { iso2: "si", iso3: "sin", name_en: "Sinhala", name_native: "සිංහල", name_tr: "Sinhala" },
|
|
75
|
+
"sk": { iso2: "sk", iso3: "slo", name_en: "Slovak", name_native: "Slovenčina", name_tr: "Slovakça" },
|
|
76
|
+
"sl": { iso2: "sl", iso3: "slv", name_en: "Slovenian", name_native: "Slovenščina", name_tr: "Slovence" },
|
|
77
|
+
"so": { iso2: "so", iso3: "som", name_en: "Somali", name_native: "Soomaali", name_tr: "Somalice" },
|
|
78
|
+
"es": { iso2: "es", iso3: "spa", name_en: "Spanish", name_native: "Español", name_tr: "İspanyolca" },
|
|
79
|
+
"su": { iso2: "su", iso3: "sun", name_en: "Sundanese", name_native: "Basa Sunda", name_tr: "Sunda" },
|
|
80
|
+
"sw": { iso2: "sw", iso3: "swa", name_en: "Swahili", name_native: "Kiswahili", name_tr: "Svahili" },
|
|
81
|
+
"sv": { iso2: "sv", iso3: "swe", name_en: "Swedish", name_native: "Svenska", name_tr: "İsveççe" },
|
|
82
|
+
"tg": { iso2: "tg", iso3: "tgk", name_en: "Tajik", name_native: "Тоҷикӣ", name_tr: "Tacikçe" },
|
|
83
|
+
"ta": { iso2: "ta", iso3: "tam", name_en: "Tamil", name_native: "தமிழ்", name_tr: "Tamilce" },
|
|
84
|
+
"tt": { iso2: "tt", iso3: "tat", name_en: "Tatar", name_native: "Татарча", name_tr: "Tatarca" },
|
|
85
|
+
"te": { iso2: "te", iso3: "tel", name_en: "Telugu", name_native: "తెలుగు", name_tr: "Telugu" },
|
|
86
|
+
"th": { iso2: "th", iso3: "tha", name_en: "Thai", name_native: "ภาษาไทย", name_tr: "Tayca" },
|
|
87
|
+
"ti": { iso2: "ti", iso3: "tir", name_en: "Tigrinya", name_native: "ትግርኛ", name_tr: "Tigrinya" },
|
|
88
|
+
"tr": { iso2: "tr", iso3: "tur", name_en: "Turkish", name_native: "Türkçe", name_tr: "Türkçe" },
|
|
89
|
+
"tk": { iso2: "tk", iso3: "tuk", name_en: "Turkmen", name_native: "Türkmen", name_tr: "Türkmence" },
|
|
90
|
+
"uk": { iso2: "uk", iso3: "ukr", name_en: "Ukrainian", name_native: "Українська", name_tr: "Ukraynaca" },
|
|
91
|
+
"ur": { iso2: "ur", iso3: "urd", name_en: "Urdu", name_native: "اردو", name_tr: "Urduca", direction: "rtl" },
|
|
92
|
+
"ug": { iso2: "ug", iso3: "uig", name_en: "Uyghur", name_native: "ئۇيغۇرچە", name_tr: "Uygurca", direction: "rtl" },
|
|
93
|
+
"uz": { iso2: "uz", iso3: "uzb", name_en: "Uzbek", name_native: "O'zbek", name_tr: "Özbekçe" },
|
|
94
|
+
"vi": { iso2: "vi", iso3: "vie", name_en: "Vietnamese", name_native: "Tiếng Việt", name_tr: "Vietnamca" },
|
|
95
|
+
"cy": { iso2: "cy", iso3: "wel", name_en: "Welsh", name_native: "Cymraeg", name_tr: "Galce" },
|
|
96
|
+
"xh": { iso2: "xh", iso3: "xho", name_en: "Xhosa", name_native: "isiXhosa", name_tr: "Zosa" },
|
|
97
|
+
"yi": { iso2: "yi", iso3: "yid", name_en: "Yiddish", name_native: "ייִדיש", name_tr: "Yidiş", direction: "rtl" },
|
|
98
|
+
"yo": { iso2: "yo", iso3: "yor", name_en: "Yoruba", name_native: "Yorùbá", name_tr: "Yorubaca" },
|
|
99
|
+
"zu": { iso2: "zu", iso3: "zul", name_en: "Zulu", name_native: "isiZulu", name_tr: "Zuluca" },
|
|
100
|
+
};
|
|
101
|
+
// Build reverse lookup indexes
|
|
102
|
+
const iso3Index = {};
|
|
103
|
+
const nameIndex = {};
|
|
104
|
+
for (const [iso2, data] of Object.entries(LANG_MAP)) {
|
|
105
|
+
iso3Index[data.iso3.toLowerCase()] = iso2;
|
|
106
|
+
nameIndex[data.name_en.toLowerCase()] = iso2;
|
|
107
|
+
nameIndex[data.name_native.toLowerCase()] = iso2;
|
|
108
|
+
nameIndex[data.name_tr.toLowerCase()] = iso2;
|
|
109
|
+
}
|
|
110
|
+
function resolveLanguage(input) {
|
|
111
|
+
if (!input)
|
|
112
|
+
return null;
|
|
113
|
+
const raw = input.trim();
|
|
114
|
+
const lower = raw.toLowerCase();
|
|
115
|
+
if (raw.length === 2 && LANG_MAP[lower])
|
|
116
|
+
return LANG_MAP[lower];
|
|
117
|
+
if (raw.length === 3 && iso3Index[lower])
|
|
118
|
+
return LANG_MAP[iso3Index[lower]];
|
|
119
|
+
if (nameIndex[lower])
|
|
120
|
+
return LANG_MAP[nameIndex[lower]];
|
|
121
|
+
return null;
|
|
122
|
+
}
|
|
123
|
+
class LanguageDetector {
|
|
124
|
+
constructor() {
|
|
125
|
+
this.description = {
|
|
126
|
+
displayName: 'Language Detector',
|
|
127
|
+
name: 'languageDetector',
|
|
128
|
+
icon: 'file:language.svg',
|
|
129
|
+
group: ['transform'],
|
|
130
|
+
version: 1,
|
|
131
|
+
description: 'Detects and converts language codes between ISO2, ISO3, English, Turkish and native names',
|
|
132
|
+
defaults: {
|
|
133
|
+
name: 'Language Detector',
|
|
134
|
+
},
|
|
135
|
+
inputs: ['main'],
|
|
136
|
+
outputs: ['main'],
|
|
137
|
+
properties: [
|
|
138
|
+
{
|
|
139
|
+
displayName: 'Input Field',
|
|
140
|
+
name: 'inputField',
|
|
141
|
+
type: 'string',
|
|
142
|
+
default: 'chatInput',
|
|
143
|
+
required: true,
|
|
144
|
+
description: 'The field name in your item that contains the language code or name (e.g. chatInput, language, lang)',
|
|
145
|
+
},
|
|
146
|
+
{
|
|
147
|
+
displayName: 'Output Prefix',
|
|
148
|
+
name: 'outputPrefix',
|
|
149
|
+
type: 'string',
|
|
150
|
+
default: 'lang',
|
|
151
|
+
description: 'Prefix for output fields. E.g. "lang" → lang_iso2, lang_iso3, lang_name_tr ...',
|
|
152
|
+
},
|
|
153
|
+
{
|
|
154
|
+
displayName: 'On Not Found',
|
|
155
|
+
name: 'onNotFound',
|
|
156
|
+
type: 'options',
|
|
157
|
+
options: [
|
|
158
|
+
{ name: 'Keep Item with Nulls', value: 'nulls' },
|
|
159
|
+
{ name: 'Skip Item', value: 'skip' },
|
|
160
|
+
{ name: 'Throw Error', value: 'error' },
|
|
161
|
+
],
|
|
162
|
+
default: 'nulls',
|
|
163
|
+
description: 'What to do when the language cannot be detected',
|
|
164
|
+
},
|
|
165
|
+
],
|
|
166
|
+
};
|
|
167
|
+
}
|
|
168
|
+
async execute() {
|
|
169
|
+
const items = this.getInputData();
|
|
170
|
+
const results = [];
|
|
171
|
+
for (let i = 0; i < items.length; i++) {
|
|
172
|
+
const inputField = this.getNodeParameter('inputField', i);
|
|
173
|
+
const outputPrefix = this.getNodeParameter('outputPrefix', i);
|
|
174
|
+
const onNotFound = this.getNodeParameter('onNotFound', i);
|
|
175
|
+
const inputValue = items[i].json[inputField];
|
|
176
|
+
const lang = resolveLanguage(inputValue || '');
|
|
177
|
+
if (!lang) {
|
|
178
|
+
if (onNotFound === 'error') {
|
|
179
|
+
throw new n8n_workflow_1.NodeOperationError(this.getNode(), `Could not detect language from value: "${inputValue}"`, { itemIndex: i });
|
|
180
|
+
}
|
|
181
|
+
if (onNotFound === 'skip') {
|
|
182
|
+
continue;
|
|
183
|
+
}
|
|
184
|
+
// nulls
|
|
185
|
+
results.push({
|
|
186
|
+
json: {
|
|
187
|
+
...items[i].json,
|
|
188
|
+
[`${outputPrefix}_input`]: inputValue,
|
|
189
|
+
[`${outputPrefix}_iso3`]: null,
|
|
190
|
+
[`${outputPrefix}_iso2`]: null,
|
|
191
|
+
[`${outputPrefix}_name_tr`]: null,
|
|
192
|
+
[`${outputPrefix}_name_en`]: null,
|
|
193
|
+
[`${outputPrefix}_name_native`]: null,
|
|
194
|
+
[`${outputPrefix}_direction`]: null,
|
|
195
|
+
[`${outputPrefix}_found`]: false,
|
|
196
|
+
},
|
|
197
|
+
});
|
|
198
|
+
continue;
|
|
199
|
+
}
|
|
200
|
+
results.push({
|
|
201
|
+
json: {
|
|
202
|
+
...items[i].json,
|
|
203
|
+
[`${outputPrefix}_input`]: inputValue,
|
|
204
|
+
[`${outputPrefix}_iso3`]: lang.iso3.toUpperCase(),
|
|
205
|
+
[`${outputPrefix}_iso2`]: lang.iso2.toUpperCase(),
|
|
206
|
+
[`${outputPrefix}_name_tr`]: lang.name_tr,
|
|
207
|
+
[`${outputPrefix}_name_en`]: lang.name_en,
|
|
208
|
+
[`${outputPrefix}_name_native`]: lang.name_native,
|
|
209
|
+
[`${outputPrefix}_direction`]: lang.direction || 'ltr',
|
|
210
|
+
[`${outputPrefix}_found`]: true,
|
|
211
|
+
},
|
|
212
|
+
});
|
|
213
|
+
}
|
|
214
|
+
return [results];
|
|
215
|
+
}
|
|
216
|
+
}
|
|
217
|
+
exports.LanguageDetector = LanguageDetector;
|
|
218
|
+
//# sourceMappingURL=LanguageDetector.node.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LanguageDetector.node.js","sourceRoot":"","sources":["../../../src/nodes/LanguageDetector/LanguageDetector.node.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 60 60">
|
|
2
|
+
<circle cx="30" cy="30" r="28" fill="none" stroke="#555" stroke-width="2.5"/>
|
|
3
|
+
<ellipse cx="30" cy="30" rx="13" ry="28" fill="none" stroke="#555" stroke-width="2"/>
|
|
4
|
+
<line x1="2" y1="30" x2="58" y2="30" stroke="#555" stroke-width="2"/>
|
|
5
|
+
<path d="M8 16 Q30 22 52 16" fill="none" stroke="#555" stroke-width="1.5"/>
|
|
6
|
+
<path d="M8 44 Q30 38 52 44" fill="none" stroke="#555" stroke-width="1.5"/>
|
|
7
|
+
</svg>
|
package/package.json
ADDED
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "n8n-nodes-language-detector",
|
|
3
|
+
"version": "1.0.1",
|
|
4
|
+
"description": "n8n node to detect and convert language codes (ISO2, ISO3, native name, Turkish name)",
|
|
5
|
+
"keywords": [
|
|
6
|
+
"n8n-community-node-package",
|
|
7
|
+
"language",
|
|
8
|
+
"iso",
|
|
9
|
+
"detect",
|
|
10
|
+
"translate"
|
|
11
|
+
],
|
|
12
|
+
"license": "MIT",
|
|
13
|
+
"author": {
|
|
14
|
+
"name": "Custom"
|
|
15
|
+
},
|
|
16
|
+
"main": "dist/index.js",
|
|
17
|
+
"scripts": {
|
|
18
|
+
"build": "tsc && npm run copy-icons",
|
|
19
|
+
"copy-icons": "cp src/nodes/LanguageDetector/language.svg dist/nodes/LanguageDetector/ 2>/dev/null || true",
|
|
20
|
+
"dev": "tsc --watch"
|
|
21
|
+
},
|
|
22
|
+
"files": [
|
|
23
|
+
"dist"
|
|
24
|
+
],
|
|
25
|
+
"n8n": {
|
|
26
|
+
"n8nNodesApiVersion": 1,
|
|
27
|
+
"credentials": [],
|
|
28
|
+
"nodes": [
|
|
29
|
+
"dist/nodes/LanguageDetector/LanguageDetector.node.js"
|
|
30
|
+
]
|
|
31
|
+
},
|
|
32
|
+
"devDependencies": {
|
|
33
|
+
"@types/node": "^18.0.0",
|
|
34
|
+
"n8n-workflow": "^1.0.0",
|
|
35
|
+
"typescript": "^5.0.0"
|
|
36
|
+
},
|
|
37
|
+
"peerDependencies": {
|
|
38
|
+
"n8n-workflow": "*"
|
|
39
|
+
}
|
|
40
|
+
}
|