Merge branch 'dev' into fix/track-only-path-on-pushstate

This commit is contained in:
Mike Cao 2024-04-16 16:34:48 -07:00 committed by GitHub
commit 6c8fe9ff50
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
127 changed files with 4073 additions and 629 deletions

View file

@ -75,8 +75,8 @@ export function EventDataParameters() {
{(close: () => void) => {
return (
<FieldAddForm
fields={data.map(({ eventKey, eventDataType }) => ({
name: eventKey,
fields={data.map(({ dataKey, eventDataType }) => ({
name: dataKey,
type: DATA_TYPES[eventDataType],
}))}
group={group}

View file

@ -80,8 +80,13 @@ export function Chart({
const updateChart = (data: any) => {
chart.current.data.datasets.forEach((dataset: { data: any }, index: string | number) => {
dataset.data = data?.datasets[index]?.data;
chart.current.legend.legendItems[index].text = data?.datasets[index].label;
if (data?.datasets[index]) {
dataset.data = data?.datasets[index]?.data;
if (chart.current.legend.legendItems[index]) {
chart.current.legend.legendItems[index].text = data?.datasets[index]?.label;
}
}
});
chart.current.options = options;

View file

@ -15,7 +15,6 @@ export const labels = defineMessages({
username: { id: 'label.username', defaultMessage: 'Username' },
password: { id: 'label.password', defaultMessage: 'Password' },
role: { id: 'label.role', defaultMessage: 'Role' },
admin: { id: 'label.admin', defaultMessage: 'Admin' },
user: { id: 'label.user', defaultMessage: 'User' },
viewOnly: { id: 'label.view-only', defaultMessage: 'View only' },
manage: { id: 'label.manage', defaultMessage: 'Manage' },

View file

@ -66,7 +66,7 @@ export function FilterTags({
}
const label = fields.find(f => f.name === key)?.label;
const { operator, value } = parseParameterValue(params[key]);
const paramValue = isSearchOperator(operator) ? formatValue(value, key) : value;
const paramValue = isSearchOperator(operator) ? value : formatValue(value, key);
return (
<PopupTrigger key={key}>

View file

@ -5,6 +5,7 @@
"label.add": "Add",
"label.add-description": "Add description",
"label.add-member": "Add member",
"label.add-step": "Add step",
"label.add-website": "Add website",
"label.admin": "Administrator",
"label.after": "After",
@ -89,6 +90,7 @@
"label.laptop": "Laptop",
"label.last-days": "Last {x} days",
"label.last-hours": "Last {x} hours",
"label.last-months": "Last {x} months",
"label.leave": "Leave",
"label.leave-team": "Leave team",
"label.less-than": "Less than",
@ -150,6 +152,7 @@
"label.settings": "Settings",
"label.share-url": "Share URL",
"label.single-day": "Single day",
"label.steps": "Steps",
"label.sum": "Sum",
"label.tablet": "Tablet",
"label.team": "Team",
@ -179,17 +182,22 @@
"label.unique-visitors": "Unique visitors",
"label.unknown": "Unknown",
"label.untitled": "Untitled",
"label.update": "Update",
"label.url": "URL",
"label.urls": "URLs",
"label.user": "User",
"label.username": "Username",
"label.users": "Users",
"label.utm": "UTM",
"label.utm-description": "Track your campaigns through UTM parameters.",
"label.value": "Value",
"label.view": "View",
"label.view-details": "View details",
"label.view-only": "View only",
"label.views": "Views",
"label.views-per-visit": "Views per visit",
"label.visitors": "Visitors",
"label.visits": "Visits",
"label.website": "Website",
"label.website-id": "Website ID",
"label.websites": "Websites",

View file

@ -5,6 +5,7 @@
"label.add": "أضِف",
"label.add-description": "أضِف وصف",
"label.add-member": "أضِف عضو",
"label.add-step": "Add step",
"label.add-website": "إضافة موقع",
"label.admin": "مدير",
"label.after": "يعد",
@ -89,6 +90,7 @@
"label.laptop": "لابتوب",
"label.last-days": "آخر {x} يوم/ايام",
"label.last-hours": "آخر {x} ساعة",
"label.last-months": "Last {x} months",
"label.leave": "غادر",
"label.leave-team": "مغادرة المجموعة",
"label.less-than": "أقل مِن",
@ -150,6 +152,7 @@
"label.settings": "الإعدادات",
"label.share-url": "مشاركة الرابط",
"label.single-day": "يوم واحد",
"label.steps": "Steps",
"label.sum": "المجموع",
"label.tablet": "تابلت",
"label.team": "الفريق",
@ -179,17 +182,22 @@
"label.unique-visitors": "زائرون فريدون",
"label.unknown": "غير معروف",
"label.untitled": "بدون عنوان",
"label.update": "Update",
"label.url": "URL",
"label.urls": "URLs",
"label.user": "المستخدم",
"label.username": "اسم المستخدم",
"label.users": "المستخدمين",
"label.utm": "UTM",
"label.utm-description": "Track your campaigns through UTM parameters.",
"label.value": "القيمة",
"label.view": "عرض",
"label.view-details": "عرض التفاصيل",
"label.view-only": "عرض فقط",
"label.views": "المشاهدات",
"label.views-per-visit": "Views per visit",
"label.visitors": "الزوار",
"label.visits": "Visits",
"label.website": "الموقع",
"label.website-id": "معرّف الموقع",
"label.websites": "المواقع",
@ -201,7 +209,7 @@
"message.confirm-leave": "هل أنت متأكد من مغادرة {target}?",
"message.confirm-remove": "هل انت متأكد من حذف {target}?",
"message.confirm-reset": "هل أنت متأكد من اعادة تعيين الإحصائيات لـ {target}؟",
"message.delete-team-warning": "حذف فريق سيؤدي إلى حذف جميع مواقع الفريق",
"message.delete-team-warning": "سيؤدي حذف الفريق أيضًا إلى حذف كافة مواقع الفريق",
"message.delete-website-warning": "سيتم حذف كافة بيانات الموقع.",
"message.error": "حدث خطأ ما.",
"message.event-log": "{event} في {url}",

View file

@ -5,6 +5,7 @@
"label.add": "Add",
"label.add-description": "Add description",
"label.add-member": "Add member",
"label.add-step": "Add step",
"label.add-website": "Дадаць сайт",
"label.admin": "Адміністратар",
"label.after": "After",
@ -89,6 +90,7 @@
"label.laptop": "Ноўтбук",
"label.last-days": "Апошнія {x} дні",
"label.last-hours": "Апошнія {x} гадзіны",
"label.last-months": "Last {x} months",
"label.leave": "Leave",
"label.leave-team": "Leave team",
"label.less-than": "Less than",
@ -150,6 +152,7 @@
"label.settings": "Налады",
"label.share-url": "Падзяліцца спасылкай",
"label.single-day": "Адзін дзень",
"label.steps": "Steps",
"label.sum": "Sum",
"label.tablet": "Планшэт",
"label.team": "Team",
@ -179,17 +182,22 @@
"label.unique-visitors": "Унікальныя наведвальнікі",
"label.unknown": "Невядома",
"label.untitled": "Untitled",
"label.update": "Update",
"label.url": "URL",
"label.urls": "URLs",
"label.user": "User",
"label.username": "Імя карыстальніка",
"label.users": "Users",
"label.utm": "UTM",
"label.utm-description": "Track your campaigns through UTM parameters.",
"label.value": "Value",
"label.view": "View",
"label.view-details": "Пабачыць дэталі",
"label.view-only": "View only",
"label.views": "Прагляды",
"label.views-per-visit": "Views per visit",
"label.visitors": "Наведвальнікі",
"label.visits": "Visits",
"label.website": "Website",
"label.website-id": "Website ID",
"label.websites": "Сайты",

View file

@ -5,6 +5,7 @@
"label.add": "Add",
"label.add-description": "Add description",
"label.add-member": "Add member",
"label.add-step": "Add step",
"label.add-website": "ওয়েবসাইট যুক্ত করুন",
"label.admin": "অ্যাডমিন",
"label.after": "After",
@ -89,6 +90,7 @@
"label.laptop": "ল্যাপটপ",
"label.last-days": "শেষ {x} দিন",
"label.last-hours": "শেষ {x} ঘন্টা",
"label.last-months": "Last {x} months",
"label.leave": "Leave",
"label.leave-team": "Leave team",
"label.less-than": "Less than",
@ -150,6 +152,7 @@
"label.settings": "সেটিংস",
"label.share-url": "ইউআরএল শেয়ার করুন",
"label.single-day": "একদিন",
"label.steps": "Steps",
"label.sum": "Sum",
"label.tablet": "ট্যাবলেট",
"label.team": "Team",
@ -179,17 +182,22 @@
"label.unique-visitors": "অনন্য ভিজিটর",
"label.unknown": "অজানা",
"label.untitled": "Untitled",
"label.update": "Update",
"label.url": "URL",
"label.urls": "URLs",
"label.user": "User",
"label.username": "ব্যবহারকারীর নাম",
"label.users": "Users",
"label.utm": "UTM",
"label.utm-description": "Track your campaigns through UTM parameters.",
"label.value": "Value",
"label.view": "View",
"label.view-details": "বিস্তারিত দেখুন",
"label.view-only": "View only",
"label.views": "ভিউস",
"label.views-per-visit": "Views per visit",
"label.visitors": "পরিদর্শনার্থী",
"label.visits": "Visits",
"label.website": "Website",
"label.website-id": "Website ID",
"label.websites": "সবগুলো ওয়েবসাইট",

View file

@ -5,6 +5,7 @@
"label.add": "Add",
"label.add-description": "Add description",
"label.add-member": "Add member",
"label.add-step": "Add step",
"label.add-website": "Afegeix lloc web",
"label.admin": "Administrador",
"label.after": "After",
@ -89,6 +90,7 @@
"label.laptop": "Portàtil",
"label.last-days": "Últims {x} dies",
"label.last-hours": "Últimes {x} hores",
"label.last-months": "Last {x} months",
"label.leave": "Leave",
"label.leave-team": "Leave team",
"label.less-than": "Less than",
@ -150,6 +152,7 @@
"label.settings": "Configuració",
"label.share-url": "Enllaç per compartir",
"label.single-day": "Un sol dia",
"label.steps": "Steps",
"label.sum": "Sum",
"label.tablet": "Tauleta",
"label.team": "Team",
@ -179,17 +182,22 @@
"label.unique-visitors": "Visitants únics",
"label.unknown": "Desconegut",
"label.untitled": "Untitled",
"label.update": "Update",
"label.url": "URL",
"label.urls": "URLs",
"label.user": "User",
"label.username": "Nom d'usuari",
"label.users": "Users",
"label.utm": "UTM",
"label.utm-description": "Track your campaigns through UTM parameters.",
"label.value": "Value",
"label.view": "View",
"label.view-details": "Veure els detalls",
"label.view-only": "View only",
"label.views": "Vistes",
"label.views-per-visit": "Views per visit",
"label.visitors": "Visitants",
"label.visits": "Visits",
"label.website": "Website",
"label.website-id": "Website ID",
"label.websites": "Llocs web",

View file

@ -5,6 +5,7 @@
"label.add": "Add",
"label.add-description": "Add description",
"label.add-member": "Add member",
"label.add-step": "Add step",
"label.add-website": "Přidat web",
"label.admin": "Administrátor",
"label.after": "After",
@ -89,6 +90,7 @@
"label.laptop": "Přenosný počítač",
"label.last-days": "Posledních {x} dnů",
"label.last-hours": "Posledních {x} hodin",
"label.last-months": "Last {x} months",
"label.leave": "Leave",
"label.leave-team": "Leave team",
"label.less-than": "Less than",
@ -150,6 +152,7 @@
"label.settings": "Nastavení",
"label.share-url": "Sdílet URL",
"label.single-day": "Jeden den",
"label.steps": "Steps",
"label.sum": "Sum",
"label.tablet": "Tablet",
"label.team": "Team",
@ -179,17 +182,22 @@
"label.unique-visitors": "Jedinečné návštěvy",
"label.unknown": "Neznámý",
"label.untitled": "Untitled",
"label.update": "Update",
"label.url": "URL",
"label.urls": "URLs",
"label.user": "User",
"label.username": "Uživatelské jméno",
"label.users": "Users",
"label.utm": "UTM",
"label.utm-description": "Track your campaigns through UTM parameters.",
"label.value": "Value",
"label.view": "View",
"label.view-details": "Zobrazit detaily",
"label.view-only": "View only",
"label.views": "Zobrazení",
"label.views-per-visit": "Views per visit",
"label.visitors": "Návštěvy",
"label.visits": "Visits",
"label.website": "Website",
"label.website-id": "Website ID",
"label.websites": "Weby",

View file

@ -5,6 +5,7 @@
"label.add": "Add",
"label.add-description": "Add description",
"label.add-member": "Add member",
"label.add-step": "Add step",
"label.add-website": "Tilføj hjemmeside",
"label.admin": "Administrator",
"label.after": "After",
@ -89,6 +90,7 @@
"label.laptop": "Laptop",
"label.last-days": "Sidste {x} dage",
"label.last-hours": "Sidste {x} timer",
"label.last-months": "Last {x} months",
"label.leave": "Leave",
"label.leave-team": "Leave team",
"label.less-than": "Less than",
@ -150,6 +152,7 @@
"label.settings": "Indstillinger",
"label.share-url": "Del URL",
"label.single-day": "Enkelt dag",
"label.steps": "Steps",
"label.sum": "Sum",
"label.tablet": "Tablet",
"label.team": "Team",
@ -179,17 +182,22 @@
"label.unique-visitors": "Unikke besøgende",
"label.unknown": "Ukendt",
"label.untitled": "Untitled",
"label.update": "Update",
"label.url": "URL",
"label.urls": "URLs",
"label.user": "User",
"label.username": "Brugernavn",
"label.users": "Users",
"label.utm": "UTM",
"label.utm-description": "Track your campaigns through UTM parameters.",
"label.value": "Value",
"label.view": "View",
"label.view-details": "Vis detajler",
"label.view-only": "View only",
"label.views": "Visninger",
"label.views-per-visit": "Views per visit",
"label.visitors": "Besøgende",
"label.visits": "Visits",
"label.website": "Website",
"label.website-id": "Website ID",
"label.websites": "Hjemmesider",

View file

@ -5,6 +5,7 @@
"label.add": "Add",
"label.add-description": "Add description",
"label.add-member": "Add member",
"label.add-step": "Add step",
"label.add-website": "Websiite hinzuefüege",
"label.admin": "Administrator",
"label.after": "After",
@ -89,6 +90,7 @@
"label.laptop": "Laptop",
"label.last-days": "Letzti {x} Täg",
"label.last-hours": "Letzti {x} Stunde",
"label.last-months": "Last {x} months",
"label.leave": "Verlah",
"label.leave-team": "Team verlah",
"label.less-than": "Less than",
@ -150,6 +152,7 @@
"label.settings": "Istellige",
"label.share-url": "Freigab-URL",
"label.single-day": "Ein Tag",
"label.steps": "Steps",
"label.sum": "Sum",
"label.tablet": "Tablet",
"label.team": "Team",
@ -179,17 +182,22 @@
"label.unique-visitors": "Eidütigi Bsuecher",
"label.unknown": "Unbekannt",
"label.untitled": "Untitled",
"label.update": "Update",
"label.url": "URL",
"label.urls": "URLs",
"label.user": "Benutzer",
"label.username": "Benutzername",
"label.users": "Benutzer",
"label.utm": "UTM",
"label.utm-description": "Track your campaigns through UTM parameters.",
"label.value": "Value",
"label.view": "Azeige",
"label.view-details": "Details azeige",
"label.view-only": "View only",
"label.views": "Ufrüef",
"label.views-per-visit": "Views per visit",
"label.visitors": "Bsuecher",
"label.visits": "Visits",
"label.website": "Website",
"label.website-id": "Websiite ID",
"label.websites": "Websiite",

View file

@ -5,6 +5,7 @@
"label.add": "Hinzufügen",
"label.add-description": "Beschreibung hinzufügen",
"label.add-member": "Add member",
"label.add-step": "Add step",
"label.add-website": "Website hinzufügen",
"label.admin": "Administrator",
"label.after": "Nach",
@ -89,6 +90,7 @@
"label.laptop": "Laptop",
"label.last-days": "Letzte {x} Tage",
"label.last-hours": "Letzte {x} Stunden",
"label.last-months": "Last {x} months",
"label.leave": "Verlassen",
"label.leave-team": "Team verlassen",
"label.less-than": "Kleiner als",
@ -150,6 +152,7 @@
"label.settings": "Einstellungen",
"label.share-url": "Freigabe-URL",
"label.single-day": "Ein Tag",
"label.steps": "Steps",
"label.sum": "Summe",
"label.tablet": "Tablet",
"label.team": "Team",
@ -179,17 +182,22 @@
"label.unique-visitors": "Eindeutige Besucher",
"label.unknown": "Unbekannt",
"label.untitled": "Unbenannt",
"label.update": "Update",
"label.url": "URL",
"label.urls": "URLs",
"label.user": "Benutzer",
"label.username": "Benutzername",
"label.users": "Benutzer",
"label.utm": "UTM",
"label.utm-description": "Track your campaigns through UTM parameters.",
"label.value": "Wert",
"label.view": "Anzeigen",
"label.view-details": "Details anzeigen",
"label.view-only": "Nur ansehen",
"label.views": "Aufrufe",
"label.views-per-visit": "Views per visit",
"label.visitors": "Besucher",
"label.visits": "Visits",
"label.website": "Website",
"label.website-id": "Website ID",
"label.websites": "Websites",

View file

@ -5,6 +5,7 @@
"label.add": "Add",
"label.add-description": "Add description",
"label.add-member": "Add member",
"label.add-step": "Add step",
"label.add-website": "Προσθήκη ιστότοπου",
"label.admin": "Διαχειριστής",
"label.after": "After",
@ -89,6 +90,7 @@
"label.laptop": "Λάπτοπ",
"label.last-days": "Τελευταίες {x} ημέρες",
"label.last-hours": "Τελευταίες {x} ώρες",
"label.last-months": "Last {x} months",
"label.leave": "Leave",
"label.leave-team": "Leave team",
"label.less-than": "Less than",
@ -150,6 +152,7 @@
"label.settings": "Ρυθμίσεις",
"label.share-url": "Κοινοποίηση διεύθυνσης URL",
"label.single-day": "Ημερήσια",
"label.steps": "Steps",
"label.sum": "Sum",
"label.tablet": "Τάμπλετ",
"label.team": "Team",
@ -179,17 +182,22 @@
"label.unique-visitors": "Μοναδικοί επισκέπτες",
"label.unknown": "Άγνωστο",
"label.untitled": "Untitled",
"label.update": "Update",
"label.url": "URL",
"label.urls": "URLs",
"label.user": "User",
"label.username": "Όνομα χρήστη",
"label.users": "Users",
"label.utm": "UTM",
"label.utm-description": "Track your campaigns through UTM parameters.",
"label.value": "Value",
"label.view": "View",
"label.view-details": "Λεπτομέρειες",
"label.view-only": "View only",
"label.views": "Προβολές",
"label.views-per-visit": "Views per visit",
"label.visitors": "Επισκέπτες",
"label.visits": "Visits",
"label.website": "Website",
"label.website-id": "Website ID",
"label.websites": "Ιστότοποι",

View file

@ -5,6 +5,7 @@
"label.add": "Add",
"label.add-description": "Add description",
"label.add-member": "Add member",
"label.add-step": "Add step",
"label.add-website": "Add website",
"label.admin": "Administrator",
"label.after": "After",
@ -89,6 +90,7 @@
"label.laptop": "Laptop",
"label.last-days": "Last {x} days",
"label.last-hours": "Last {x} hours",
"label.last-months": "Last {x} months",
"label.leave": "Leave",
"label.leave-team": "Leave team",
"label.less-than": "Less than",
@ -150,6 +152,7 @@
"label.settings": "Settings",
"label.share-url": "Share URL",
"label.single-day": "Single day",
"label.steps": "Steps",
"label.sum": "Sum",
"label.tablet": "Tablet",
"label.team": "Team",
@ -179,17 +182,22 @@
"label.unique-visitors": "Unique visitors",
"label.unknown": "Unknown",
"label.untitled": "Untitled",
"label.update": "Update",
"label.url": "URL",
"label.urls": "URLs",
"label.user": "User",
"label.username": "Username",
"label.users": "Users",
"label.utm": "UTM",
"label.utm-description": "Track your campaigns through UTM parameters.",
"label.value": "Value",
"label.view": "View",
"label.view-details": "View details",
"label.view-only": "View only",
"label.views": "Views",
"label.views-per-visit": "Views per visit",
"label.visitors": "Visitors",
"label.visits": "Visits",
"label.website": "Website",
"label.website-id": "Website ID",
"label.websites": "Websites",

View file

@ -5,6 +5,7 @@
"label.add": "Add",
"label.add-description": "Add description",
"label.add-member": "Add member",
"label.add-step": "Add step",
"label.add-website": "Add website",
"label.admin": "Administrator",
"label.after": "After",
@ -89,6 +90,7 @@
"label.laptop": "Laptop",
"label.last-days": "Last {x} days",
"label.last-hours": "Last {x} hours",
"label.last-months": "Last {x} months",
"label.leave": "Leave",
"label.leave-team": "Leave team",
"label.less-than": "Less than",
@ -150,6 +152,7 @@
"label.settings": "Settings",
"label.share-url": "Share URL",
"label.single-day": "Single day",
"label.steps": "Steps",
"label.sum": "Sum",
"label.tablet": "Tablet",
"label.team": "Team",
@ -179,17 +182,22 @@
"label.unique-visitors": "Unique visitors",
"label.unknown": "Unknown",
"label.untitled": "Untitled",
"label.update": "Update",
"label.url": "URL",
"label.urls": "URLs",
"label.user": "User",
"label.username": "Username",
"label.users": "Users",
"label.utm": "UTM",
"label.utm-description": "Track your campaigns through UTM parameters.",
"label.value": "Value",
"label.view": "View",
"label.view-details": "View details",
"label.view-only": "View only",
"label.views": "Views",
"label.views-per-visit": "Views per visit",
"label.visitors": "Visitors",
"label.visits": "Visits",
"label.website": "Website",
"label.website-id": "Website ID",
"label.websites": "Websites",

View file

@ -5,6 +5,7 @@
"label.add": "Añadir",
"label.add-description": "Añadir descripción",
"label.add-member": "Añadir miembro",
"label.add-step": "Add step",
"label.add-website": "Nuevo sitio web",
"label.admin": "Administrador",
"label.after": "Después",
@ -89,6 +90,7 @@
"label.laptop": "Portátil",
"label.last-days": "Últimos {x} días",
"label.last-hours": "Últimas {x} horas",
"label.last-months": "Last {x} months",
"label.leave": "Abandonar",
"label.leave-team": "Abandonar equipo",
"label.less-than": "Menor que",
@ -150,6 +152,7 @@
"label.settings": "Ajustes",
"label.share-url": "Compartir URL",
"label.single-day": "Un solo día",
"label.steps": "Steps",
"label.sum": "Suma",
"label.tablet": "Tableta",
"label.team": "Equipo",
@ -179,17 +182,22 @@
"label.unique-visitors": "Visitantes únicos",
"label.unknown": "Desconocida",
"label.untitled": "Sin título",
"label.update": "Update",
"label.url": "URL",
"label.urls": "URLs",
"label.user": "Usuario",
"label.username": "Nombre de usuario",
"label.users": "Usuarios",
"label.utm": "UTM",
"label.utm-description": "Track your campaigns through UTM parameters.",
"label.value": "Valor",
"label.view": "Visualizar",
"label.view-details": "Ver detalles",
"label.view-only": "Ver sólo",
"label.views": "Vistas",
"label.views-per-visit": "Views per visit",
"label.visitors": "Visitantes",
"label.visits": "Visits",
"label.website": "Sitio web",
"label.website-id": "ID del sitio web",
"label.websites": "Sitios web",

View file

@ -5,6 +5,7 @@
"label.add": "Add",
"label.add-description": "Add description",
"label.add-member": "Add member",
"label.add-step": "Add step",
"label.add-website": "افزودن وب‌سایت",
"label.admin": "مدیر",
"label.after": "After",
@ -89,6 +90,7 @@
"label.laptop": "لپ‌تاپ",
"label.last-days": "لیست {x} روز گذشته",
"label.last-hours": "لیست {x} ساعت گذشته",
"label.last-months": "Last {x} months",
"label.leave": "Leave",
"label.leave-team": "Leave team",
"label.less-than": "Less than",
@ -150,6 +152,7 @@
"label.settings": "تنظیمات",
"label.share-url": "به اشتراک گذاری URL",
"label.single-day": "یک روز",
"label.steps": "Steps",
"label.sum": "Sum",
"label.tablet": "تبلت",
"label.team": "Team",
@ -179,17 +182,22 @@
"label.unique-visitors": "بازدیدکننده‌های یکتا",
"label.unknown": "ناشناخته",
"label.untitled": "Untitled",
"label.update": "Update",
"label.url": "URL",
"label.urls": "URLs",
"label.user": "User",
"label.username": "نام کاربری",
"label.users": "Users",
"label.utm": "UTM",
"label.utm-description": "Track your campaigns through UTM parameters.",
"label.value": "Value",
"label.view": "View",
"label.view-details": "مشاهده‌ی جزئیات",
"label.view-only": "View only",
"label.views": "بازدید",
"label.views-per-visit": "Views per visit",
"label.visitors": "بازدیدکننده",
"label.visits": "Visits",
"label.website": "Website",
"label.website-id": "Website ID",
"label.websites": "وب‌سایت‌ها",

View file

@ -5,6 +5,7 @@
"label.add": "Add",
"label.add-description": "Add description",
"label.add-member": "Add member",
"label.add-step": "Add step",
"label.add-website": "Lisää verkkosivu",
"label.admin": "Järjestelmänvalvoja",
"label.after": "After",
@ -89,6 +90,7 @@
"label.laptop": "Kannettava tietokone",
"label.last-days": "Viimeisimmät {x} päivää",
"label.last-hours": "Viimeisimmät {x} tuntia",
"label.last-months": "Last {x} months",
"label.leave": "Leave",
"label.leave-team": "Leave team",
"label.less-than": "Less than",
@ -150,6 +152,7 @@
"label.settings": "Asetukset",
"label.share-url": "Jaa URL",
"label.single-day": "Yksi päivä",
"label.steps": "Steps",
"label.sum": "Sum",
"label.tablet": "Tabletti",
"label.team": "Team",
@ -179,17 +182,22 @@
"label.unique-visitors": "Yksittäiset kävijät",
"label.unknown": "Tuntematon",
"label.untitled": "Untitled",
"label.update": "Update",
"label.url": "URL",
"label.urls": "URLs",
"label.user": "User",
"label.username": "Käyttäjänimi",
"label.users": "Users",
"label.utm": "UTM",
"label.utm-description": "Track your campaigns through UTM parameters.",
"label.value": "Value",
"label.view": "View",
"label.view-details": "Katso tiedot",
"label.view-only": "View only",
"label.views": "Näyttökerrat",
"label.views-per-visit": "Views per visit",
"label.visitors": "Vierailijat",
"label.visits": "Visits",
"label.website": "Website",
"label.website-id": "Website ID",
"label.websites": "Verkkosivut",

View file

@ -5,6 +5,7 @@
"label.add": "Add",
"label.add-description": "Add description",
"label.add-member": "Add member",
"label.add-step": "Add step",
"label.add-website": "Legg heimasíðu afturat",
"label.admin": "Fyrisitari",
"label.after": "After",
@ -89,6 +90,7 @@
"label.laptop": "Fartelda",
"label.last-days": "Seinastu {x} dagarnar",
"label.last-hours": "Seinastu {x} tímarnar",
"label.last-months": "Last {x} months",
"label.leave": "Leave",
"label.leave-team": "Leave team",
"label.less-than": "Less than",
@ -150,6 +152,7 @@
"label.settings": "Stillingar",
"label.share-url": "Deil leinku",
"label.single-day": "Einkultur dagur",
"label.steps": "Steps",
"label.sum": "Sum",
"label.tablet": "Teldil",
"label.team": "Team",
@ -179,17 +182,22 @@
"label.unique-visitors": "Einsýna vitjanir",
"label.unknown": "Ókent",
"label.untitled": "Untitled",
"label.update": "Update",
"label.url": "URL",
"label.urls": "URLs",
"label.user": "User",
"label.username": "Brúkaranavn",
"label.users": "Users",
"label.utm": "UTM",
"label.utm-description": "Track your campaigns through UTM parameters.",
"label.value": "Value",
"label.view": "View",
"label.view-details": "Vís frágreiðing",
"label.view-only": "View only",
"label.views": "Sýningar",
"label.views-per-visit": "Views per visit",
"label.visitors": "Vitjandi",
"label.visits": "Visits",
"label.website": "Website",
"label.website-id": "Website ID",
"label.websites": "Heimasíður",

View file

@ -5,6 +5,7 @@
"label.add": "Ajouter",
"label.add-description": "Ajouter une description",
"label.add-member": "Ajouter un membre",
"label.add-step": "Ajouter une étape",
"label.add-website": "Ajouter un site",
"label.admin": "Administrateur",
"label.after": "Après",
@ -89,6 +90,7 @@
"label.laptop": "Portable",
"label.last-days": "{x} derniers jours",
"label.last-hours": "{x} dernières heures",
"label.last-months": "{x} derniers mois",
"label.leave": "Quitter",
"label.leave-team": "Quitter l'équipe",
"label.less-than": "Inférieur à",
@ -107,7 +109,7 @@
"label.name": "Nom",
"label.new-password": "Nouveau mot de passe",
"label.none": "Aucun",
"label.number-of-records": "{x} {x, plural, one {record} other {records}}",
"label.number-of-records": "{x} {x, plural, one {enregistrement} other {enregistrements}}",
"label.ok": "OK",
"label.os": "OS",
"label.overview": "Vue d'ensemble",
@ -136,7 +138,7 @@
"label.reset": "Réinitialiser",
"label.reset-website": "Réinitialiser les statistiques",
"label.retention": "Rétention",
"label.retention-description": "Mesure de l'atractivité du site en visualisant les taux d'utilisateurs qui reviennent.",
"label.retention-description": "Mesure de l'attractivité du site en visualisant les taux de visiteurs qui reviennent.",
"label.role": "Rôle",
"label.run-query": "Éxécuter la requête",
"label.save": "Enregistrer",
@ -150,6 +152,7 @@
"label.settings": "Paramètres",
"label.share-url": "URL de partage",
"label.single-day": "Journée",
"label.steps": "Étapes",
"label.sum": "Somme",
"label.tablet": "Tablette",
"label.team": "Équipe",
@ -179,17 +182,22 @@
"label.unique-visitors": "Visiteurs uniques",
"label.unknown": "Inconnu",
"label.untitled": "Sans titre",
"label.update": "Modifier",
"label.url": "URL",
"label.urls": "URLs",
"label.user": "Utilisateur",
"label.username": "Nom d'utilisateur",
"label.users": "Utilisateurs",
"label.utm": "UTM",
"label.utm-description": "Suivi de campagnes via les paramètres UTM.",
"label.value": "Valeur",
"label.view": "Voir",
"label.view-details": "Voir les détails",
"label.view-only": "Consultation",
"label.views": "Vues",
"label.views-per-visit": "Vues par visite",
"label.visitors": "Visiteurs",
"label.visits": "Visites",
"label.website": "Site",
"label.website-id": "ID de site",
"label.websites": "Sites",
@ -230,7 +238,7 @@
"message.transfer-team-website-to-user": "Transférer ce site sur votre compte ?",
"message.transfer-user-website-to-team": "Choisir l'équipe à laquelle transférer ce site.",
"message.transfer-website": "Transférer la propriété du site sur votre compte ou à une autre équipe.",
"message.triggered-event": "Triggered event",
"message.triggered-event": "Évènement déclenché",
"message.user-deleted": "Utilisateur supprimé.",
"message.viewed-page": "Page vue",
"message.visitor-log": "Visiteur de {country} utilisant {browser} sur {os} {device}",

View file

@ -5,6 +5,7 @@
"label.add": "Add",
"label.add-description": "Add description",
"label.add-member": "Add member",
"label.add-step": "Add step",
"label.add-website": "Engadir sitio web",
"label.admin": "Administradora",
"label.after": "After",
@ -89,6 +90,7 @@
"label.laptop": "Portátil",
"label.last-days": "Últimos {x} días",
"label.last-hours": "Últimas {x} horas",
"label.last-months": "Last {x} months",
"label.leave": "Leave",
"label.leave-team": "Leave team",
"label.less-than": "Less than",
@ -150,6 +152,7 @@
"label.settings": "Axustes",
"label.share-url": "Compartir URL",
"label.single-day": "Un só día",
"label.steps": "Steps",
"label.sum": "Sum",
"label.tablet": "Tableta",
"label.team": "Team",
@ -179,17 +182,22 @@
"label.unique-visitors": "Visitas únicas",
"label.unknown": "Descoñecido",
"label.untitled": "Untitled",
"label.update": "Update",
"label.url": "URL",
"label.urls": "URLs",
"label.user": "User",
"label.username": "Identificador",
"label.users": "Users",
"label.utm": "UTM",
"label.utm-description": "Track your campaigns through UTM parameters.",
"label.value": "Value",
"label.view": "View",
"label.view-details": "Ver detalles",
"label.view-only": "View only",
"label.views": "Visualizacións",
"label.views-per-visit": "Views per visit",
"label.visitors": "Visitantes",
"label.visits": "Visits",
"label.website": "Website",
"label.website-id": "Website ID",
"label.websites": "Sitios web",

View file

@ -5,6 +5,7 @@
"label.add": "Add",
"label.add-description": "Add description",
"label.add-member": "Add member",
"label.add-step": "Add step",
"label.add-website": "הוספת אתר",
"label.admin": "מנהל",
"label.after": "After",
@ -89,6 +90,7 @@
"label.laptop": "לפטופ",
"label.last-days": "{x} ימים אחרונים",
"label.last-hours": "{x} שעות אחרונות",
"label.last-months": "Last {x} months",
"label.leave": "Leave",
"label.leave-team": "Leave team",
"label.less-than": "Less than",
@ -150,6 +152,7 @@
"label.settings": "הגדרות",
"label.share-url": "שיתוף URL",
"label.single-day": "יום בודד",
"label.steps": "Steps",
"label.sum": "Sum",
"label.tablet": "טאבלט",
"label.team": "Team",
@ -179,17 +182,22 @@
"label.unique-visitors": "מבקרים ייחודיים",
"label.unknown": "לא ידוע",
"label.untitled": "Untitled",
"label.update": "Update",
"label.url": "URL",
"label.urls": "URLs",
"label.user": "User",
"label.username": "שם משתמש",
"label.users": "Users",
"label.utm": "UTM",
"label.utm-description": "Track your campaigns through UTM parameters.",
"label.value": "Value",
"label.view": "View",
"label.view-details": "פרטים נוספים",
"label.view-only": "View only",
"label.views": "צפיות",
"label.views-per-visit": "Views per visit",
"label.visitors": "מבקרים",
"label.visits": "Visits",
"label.website": "Website",
"label.website-id": "Website ID",
"label.websites": "אתרים",

View file

@ -5,6 +5,7 @@
"label.add": "Add",
"label.add-description": "Add description",
"label.add-member": "Add member",
"label.add-step": "Add step",
"label.add-website": "वेबसाइट",
"label.admin": "प्रशासक",
"label.after": "After",
@ -89,6 +90,7 @@
"label.laptop": "लैपटॉप",
"label.last-days": "पिछले {x} दिन",
"label.last-hours": "पिछले {x} घंटे",
"label.last-months": "Last {x} months",
"label.leave": "Leave",
"label.leave-team": "Leave team",
"label.less-than": "Less than",
@ -150,6 +152,7 @@
"label.settings": "समायोजन",
"label.share-url": "यूआरएल साझा करें",
"label.single-day": "एक दिन",
"label.steps": "Steps",
"label.sum": "Sum",
"label.tablet": "टैबलेट",
"label.team": "Team",
@ -179,17 +182,22 @@
"label.unique-visitors": "अद्वितीय आगंतुकों",
"label.unknown": "अज्ञात",
"label.untitled": "Untitled",
"label.update": "Update",
"label.url": "URL",
"label.urls": "URLs",
"label.user": "User",
"label.username": "उपयोगकर्ता नाम",
"label.users": "Users",
"label.utm": "UTM",
"label.utm-description": "Track your campaigns through UTM parameters.",
"label.value": "Value",
"label.view": "View",
"label.view-details": "विवरण देखें",
"label.view-only": "View only",
"label.views": "दृश्य",
"label.views-per-visit": "Views per visit",
"label.visitors": "आगंतुकों",
"label.visits": "Visits",
"label.website": "Website",
"label.website-id": "Website ID",
"label.websites": "वेबसाइटों",

View file

@ -5,6 +5,7 @@
"label.add": "Add",
"label.add-description": "Add description",
"label.add-member": "Add member",
"label.add-step": "Add step",
"label.add-website": "Dodaj web stranicu",
"label.admin": "Administrator",
"label.after": "After",
@ -89,6 +90,7 @@
"label.laptop": "Laptop",
"label.last-days": "Zadnjih {x} dana",
"label.last-hours": "Zadnjih {x} sati",
"label.last-months": "Last {x} months",
"label.leave": "Leave",
"label.leave-team": "Leave team",
"label.less-than": "Less than",
@ -150,6 +152,7 @@
"label.settings": "Postavke",
"label.share-url": "Podijeli poveznicu",
"label.single-day": "Jedan dan",
"label.steps": "Steps",
"label.sum": "Sum",
"label.tablet": "Tablet",
"label.team": "Team",
@ -179,17 +182,22 @@
"label.unique-visitors": "Unique visitors",
"label.unknown": "Nepoznato",
"label.untitled": "Untitled",
"label.update": "Update",
"label.url": "URL",
"label.urls": "URLs",
"label.user": "User",
"label.username": "Korisničko ime",
"label.users": "Users",
"label.utm": "UTM",
"label.utm-description": "Track your campaigns through UTM parameters.",
"label.value": "Value",
"label.view": "View",
"label.view-details": "Pogledaj detalje",
"label.view-only": "View only",
"label.views": "Views",
"label.views-per-visit": "Views per visit",
"label.visitors": "Visitors",
"label.visits": "Visits",
"label.website": "Website",
"label.website-id": "Website ID",
"label.websites": "Web stranice",

View file

@ -5,6 +5,7 @@
"label.add": "Add",
"label.add-description": "Add description",
"label.add-member": "Add member",
"label.add-step": "Add step",
"label.add-website": "Weboldal hozzáadása",
"label.admin": "Adminisztrátor",
"label.after": "After",
@ -89,6 +90,7 @@
"label.laptop": "Laptop",
"label.last-days": "Legutóbbi {x} nap",
"label.last-hours": "Legutóbbi {x} óra",
"label.last-months": "Last {x} months",
"label.leave": "Leave",
"label.leave-team": "Leave team",
"label.less-than": "Less than",
@ -150,6 +152,7 @@
"label.settings": "Beállítások",
"label.share-url": "URL megosztása",
"label.single-day": "Egy nap",
"label.steps": "Steps",
"label.sum": "Sum",
"label.tablet": "Táblagép",
"label.team": "Team",
@ -179,17 +182,22 @@
"label.unique-visitors": "Egyedi látogatók",
"label.unknown": "Ismeretlen",
"label.untitled": "Untitled",
"label.update": "Update",
"label.url": "URL",
"label.urls": "URLs",
"label.user": "User",
"label.username": "Felhasználónév",
"label.users": "Users",
"label.utm": "UTM",
"label.utm-description": "Track your campaigns through UTM parameters.",
"label.value": "Value",
"label.view": "View",
"label.view-details": "Részletek",
"label.view-only": "View only",
"label.views": "Megtekintések",
"label.views-per-visit": "Views per visit",
"label.visitors": "Látogatók",
"label.visits": "Visits",
"label.website": "Website",
"label.website-id": "Website ID",
"label.websites": "Weboldalak",

View file

@ -5,6 +5,7 @@
"label.add": "Add",
"label.add-description": "Add description",
"label.add-member": "Add member",
"label.add-step": "Add step",
"label.add-website": "Tambah situs web",
"label.admin": "Pengelola",
"label.after": "After",
@ -89,6 +90,7 @@
"label.laptop": "Laptop",
"label.last-days": "{x} hari terakhir",
"label.last-hours": "{x} jam terakhir",
"label.last-months": "Last {x} months",
"label.leave": "Leave",
"label.leave-team": "Leave team",
"label.less-than": "Less than",
@ -150,6 +152,7 @@
"label.settings": "Pengaturan",
"label.share-url": "Bagikan URL",
"label.single-day": "Sehari",
"label.steps": "Steps",
"label.sum": "Sum",
"label.tablet": "Tablet",
"label.team": "Team",
@ -179,17 +182,22 @@
"label.unique-visitors": "Pengunjung unik",
"label.unknown": "Tidak diketahui",
"label.untitled": "Untitled",
"label.update": "Update",
"label.url": "URL",
"label.urls": "URLs",
"label.user": "User",
"label.username": "Nama pengguna",
"label.users": "Users",
"label.utm": "UTM",
"label.utm-description": "Track your campaigns through UTM parameters.",
"label.value": "Value",
"label.view": "View",
"label.view-details": "Lihat Detil",
"label.view-only": "View only",
"label.views": "Tampilan",
"label.views-per-visit": "Views per visit",
"label.visitors": "Pengunjung",
"label.visits": "Visits",
"label.website": "Website",
"label.website-id": "Website ID",
"label.websites": "Situs web",

View file

@ -5,6 +5,7 @@
"label.add": "Add",
"label.add-description": "Add description",
"label.add-member": "Add member",
"label.add-step": "Add step",
"label.add-website": "Aggiungi sito",
"label.admin": "Amministratore",
"label.after": "After",
@ -89,6 +90,7 @@
"label.laptop": "Portatile",
"label.last-days": "Ultimi {x} giorni",
"label.last-hours": "Ultime {x} ore",
"label.last-months": "Last {x} months",
"label.leave": "Leave",
"label.leave-team": "Leave team",
"label.less-than": "Less than",
@ -150,6 +152,7 @@
"label.settings": "Impostazioni",
"label.share-url": "Condividi link",
"label.single-day": "Singolo giorno",
"label.steps": "Steps",
"label.sum": "Sum",
"label.tablet": "Tablet",
"label.team": "Team",
@ -179,17 +182,22 @@
"label.unique-visitors": "Visitatori unici",
"label.unknown": "Sconosciuto",
"label.untitled": "Untitled",
"label.update": "Update",
"label.url": "URL",
"label.urls": "URLs",
"label.user": "User",
"label.username": "Nome utente",
"label.users": "Users",
"label.utm": "UTM",
"label.utm-description": "Track your campaigns through UTM parameters.",
"label.value": "Value",
"label.view": "View",
"label.view-details": "Vedi dettagli",
"label.view-only": "View only",
"label.views": "Visualizzazioni",
"label.views-per-visit": "Views per visit",
"label.visitors": "Visitatori",
"label.visits": "Visits",
"label.website": "Website",
"label.website-id": "Website ID",
"label.websites": "Siti web",

View file

@ -5,6 +5,7 @@
"label.add": "追加",
"label.add-description": "説明を追加",
"label.add-member": "メンバーの追加",
"label.add-step": "Add step",
"label.add-website": "Webサイトの追加",
"label.admin": "管理者",
"label.after": "直後",
@ -89,6 +90,7 @@
"label.laptop": "ートPC",
"label.last-days": "過去{x}日間",
"label.last-hours": "過去{x}時間",
"label.last-months": "Last {x} months",
"label.leave": "離脱",
"label.leave-team": "チームを離脱",
"label.less-than": "未満",
@ -150,6 +152,7 @@
"label.settings": "設定",
"label.share-url": "共有URL",
"label.single-day": "一日",
"label.steps": "Steps",
"label.sum": "合計",
"label.tablet": "タブレット",
"label.team": "チーム",
@ -179,17 +182,22 @@
"label.unique-visitors": "ユニーク訪問者数",
"label.unknown": "不明",
"label.untitled": "無題",
"label.update": "Update",
"label.url": "URL",
"label.urls": "URL",
"label.user": "ユーザー",
"label.username": "ユーザー名",
"label.users": "ユーザー",
"label.utm": "UTM",
"label.utm-description": "Track your campaigns through UTM parameters.",
"label.value": "値",
"label.view": "表示",
"label.view-details": "詳細を表示",
"label.view-only": "表示のみ",
"label.views": "表示",
"label.views-per-visit": "Views per visit",
"label.visitors": "訪問者",
"label.visits": "Visits",
"label.website": "Webサイト",
"label.website-id": "WebサイトID",
"label.websites": "Webサイト",

View file

@ -5,6 +5,7 @@
"label.add": "Add",
"label.add-description": "Add description",
"label.add-member": "Add member",
"label.add-step": "Add step",
"label.add-website": "បន្ថែមគេហទំព័រ",
"label.admin": "អ្នកគ្រប់គ្រង",
"label.after": "After",
@ -89,6 +90,7 @@
"label.laptop": "កុំព្យូទ័រយួរដៃ",
"label.last-days": "{x} ថ្ងៃមុន",
"label.last-hours": "{x} ម៉ោងមុន",
"label.last-months": "Last {x} months",
"label.leave": "Leave",
"label.leave-team": "Leave team",
"label.less-than": "Less than",
@ -150,6 +152,7 @@
"label.settings": "ការកំណត់",
"label.share-url": "ចែករំលែក URL",
"label.single-day": "ថ្ងៃតែមួយ",
"label.steps": "Steps",
"label.sum": "Sum",
"label.tablet": "ថេប្លេត",
"label.team": "Team",
@ -179,17 +182,22 @@
"label.unique-visitors": "អ្នកចូលមើលម្នាក់ៗ",
"label.unknown": "មិនស្គាល់",
"label.untitled": "Untitled",
"label.update": "Update",
"label.url": "URL",
"label.urls": "URLs",
"label.user": "User",
"label.username": "ឈ្មោះ​អ្នកប្រើប្រាស់",
"label.users": "Users",
"label.utm": "UTM",
"label.utm-description": "Track your campaigns through UTM parameters.",
"label.value": "Value",
"label.view": "View",
"label.view-details": "មើលព័ត៌មានលម្អិត",
"label.view-only": "View only",
"label.views": "អ្នកចូលមើល",
"label.views-per-visit": "Views per visit",
"label.visitors": "អ្នកទស្សនា",
"label.visits": "Visits",
"label.website": "Website",
"label.website-id": "Website ID",
"label.websites": "គេហទំព័រ",

View file

@ -5,6 +5,7 @@
"label.add": "Add",
"label.add-description": "Add description",
"label.add-member": "Add member",
"label.add-step": "Add step",
"label.add-website": "웹사이트 추가",
"label.admin": "관리자",
"label.after": "After",
@ -89,6 +90,7 @@
"label.laptop": "노트북",
"label.last-days": "최근 {x} 일간",
"label.last-hours": "최근 {x} 시간",
"label.last-months": "Last {x} months",
"label.leave": "Leave",
"label.leave-team": "Leave team",
"label.less-than": "Less than",
@ -150,6 +152,7 @@
"label.settings": "설정",
"label.share-url": "공유 URL",
"label.single-day": "하루",
"label.steps": "Steps",
"label.sum": "Sum",
"label.tablet": "태블릿",
"label.team": "Team",
@ -179,17 +182,22 @@
"label.unique-visitors": "순방문자(UV)",
"label.unknown": "알 수 없음",
"label.untitled": "Untitled",
"label.update": "Update",
"label.url": "URL",
"label.urls": "URLs",
"label.user": "User",
"label.username": "사용자명",
"label.users": "Users",
"label.utm": "UTM",
"label.utm-description": "Track your campaigns through UTM parameters.",
"label.value": "Value",
"label.view": "View",
"label.view-details": "상세보기",
"label.view-only": "View only",
"label.views": "조회수",
"label.views-per-visit": "Views per visit",
"label.visitors": "방문객",
"label.visits": "Visits",
"label.website": "Website",
"label.website-id": "Website ID",
"label.websites": "웹사이트",

View file

@ -5,8 +5,9 @@
"label.add": "Pridėti",
"label.add-description": "Pridėti aprašymą",
"label.add-member": "Pridėti narį",
"label.add-step": "Add step",
"label.add-website": "Pridėti svetainę",
"label.administrator": "Administratorius",
"label.admin": "Administrator",
"label.after": "Po",
"label.all": "Visi",
"label.all-time": "Visas laikotarpis",
@ -89,6 +90,7 @@
"label.laptop": "Laptop",
"label.last-days": "{x, plural, =0 {Paskutinės # dienų} zero {Paskutinės # dienų} one {Paskutinė diena} other {Paskutinės # dienos}}",
"label.last-hours": "{x, plural, =0 {Paskutinės # valandų} zero {Paskutinės # valandų} one {Paskutinė # valanda} other {Paskutinės # valandos}}",
"label.last-months": "Last {x} months",
"label.leave": "Išeiti",
"label.leave-team": "Išeiti iš komandos",
"label.less-than": "Less than",
@ -150,6 +152,7 @@
"label.settings": "Nustatymai",
"label.share-url": "Pasidalinti nuoroda",
"label.single-day": "Viena diena",
"label.steps": "Steps",
"label.sum": "Suma",
"label.tablet": "Planšetė",
"label.team": "Komanda",
@ -179,17 +182,22 @@
"label.unique-visitors": "Unikalūs lankytojai",
"label.unknown": "Nežinoma",
"label.untitled": "Be pavadinimo",
"label.update": "Update",
"label.url": "URL",
"label.urls": "URLs",
"label.user": "Vartotojas",
"label.username": "Vartotojo vardas",
"label.users": "Vartotojai",
"label.utm": "UTM",
"label.utm-description": "Track your campaigns through UTM parameters.",
"label.value": "Value",
"label.view": "Atidaryti",
"label.view-details": "Peržiūrėti detaliau",
"label.view-only": "Tik peržiūrėti",
"label.views": "Peržiūros",
"label.views-per-visit": "Views per visit",
"label.visitors": "Lankytojai",
"label.visits": "Visits",
"label.website": "Svetainė",
"label.website-id": "Svetainės ID",
"label.websites": "Svetainės",

View file

@ -5,6 +5,7 @@
"label.add": "Нэмэх",
"label.add-description": "Тайлбар нэмэх",
"label.add-member": "Add member",
"label.add-step": "Add step",
"label.add-website": "Веб нэмэх",
"label.admin": "Админ",
"label.after": "Хойно",
@ -89,6 +90,7 @@
"label.laptop": "Зөөврийн компьютер",
"label.last-days": "Сүүлийн {x} хоног",
"label.last-hours": "Сүүлийн {x} цаг",
"label.last-months": "Last {x} months",
"label.leave": "Гарах",
"label.leave-team": "Багаас гарах",
"label.less-than": "Бага",
@ -150,6 +152,7 @@
"label.settings": "Тохиргоо",
"label.share-url": "Хуваалцах холбоос",
"label.single-day": "Нэг өдөр",
"label.steps": "Steps",
"label.sum": "Нийлбэр",
"label.tablet": "Таблет",
"label.team": "Баг",
@ -179,17 +182,22 @@
"label.unique-visitors": "Зочин",
"label.unknown": "Тодорхойгүй",
"label.untitled": "Гарчиггүй",
"label.update": "Update",
"label.url": "URL",
"label.urls": "URLs",
"label.user": "Хэрэглэгч",
"label.username": "Хэрэглэгчийн нэр",
"label.users": "Хэрэглэгчид",
"label.utm": "UTM",
"label.utm-description": "Track your campaigns through UTM parameters.",
"label.value": "Утга",
"label.view": "Харах",
"label.view-details": "Дэлгэрүүлж харах",
"label.view-only": "Зөвхөн үзэх",
"label.views": "Үзсэн",
"label.views-per-visit": "Views per visit",
"label.visitors": "Зочин",
"label.visits": "Visits",
"label.website": "Веб",
"label.website-id": "Вебийн ID",
"label.websites": "Вебүүд",

View file

@ -5,6 +5,7 @@
"label.add": "Add",
"label.add-description": "Add description",
"label.add-member": "Add member",
"label.add-step": "Add step",
"label.add-website": "Tambah laman web",
"label.admin": "Pentadbir",
"label.after": "After",
@ -89,6 +90,7 @@
"label.laptop": "Laptop",
"label.last-days": "{x} hari lepas",
"label.last-hours": "{x} jam lepas",
"label.last-months": "Last {x} months",
"label.leave": "Leave",
"label.leave-team": "Leave team",
"label.less-than": "Less than",
@ -150,6 +152,7 @@
"label.settings": "Tetapan",
"label.share-url": "Kongsikan URL",
"label.single-day": "Satu hari",
"label.steps": "Steps",
"label.sum": "Sum",
"label.tablet": "Tablet",
"label.team": "Team",
@ -179,17 +182,22 @@
"label.unique-visitors": "Pelawat unik",
"label.unknown": "Tidak diketahui",
"label.untitled": "Untitled",
"label.update": "Update",
"label.url": "URL",
"label.urls": "URLs",
"label.user": "User",
"label.username": "Nama pengguna",
"label.users": "Users",
"label.utm": "UTM",
"label.utm-description": "Track your campaigns through UTM parameters.",
"label.value": "Value",
"label.view": "View",
"label.view-details": "Lihat butiran",
"label.view-only": "View only",
"label.views": "Lawatan",
"label.views-per-visit": "Views per visit",
"label.visitors": "Pelawat",
"label.visits": "Visits",
"label.website": "Website",
"label.website-id": "Website ID",
"label.websites": "Laman web",

View file

@ -5,6 +5,7 @@
"label.add": "ထပ်ထည့်မည်",
"label.add-description": "အကြောင်းအရာဖော်ပြချက် ထည့်မည်",
"label.add-member": "Add member",
"label.add-step": "Add step",
"label.add-website": "ဝက်ဘ်ဆိုဒ်ထည့်မည်",
"label.admin": "အက်ဒမင်",
"label.after": "ပြီးနောက်",
@ -89,6 +90,7 @@
"label.laptop": "လက်တော့ပ်",
"label.last-days": "လွန်ခဲ့သော {x} ရက်က",
"label.last-hours": "လွန်ခဲ့သော {x} နာရီက",
"label.last-months": "Last {x} months",
"label.leave": "ထွက်မည်",
"label.leave-team": "အသင်းမှထွက်မည်",
"label.less-than": "ထက်ပို၍ငယ်သည်",
@ -150,6 +152,7 @@
"label.settings": "ဆက်တင်များ",
"label.share-url": "URL ကိုရှဲမည်",
"label.single-day": "တစ်ရက်အတွင်း",
"label.steps": "Steps",
"label.sum": "ပေါင်းလဒ်",
"label.tablet": "တက်ဘလက်",
"label.team": "အသင်း",
@ -179,17 +182,22 @@
"label.unique-visitors": "ဝင်ရောက်သူ (ထပ်ခြင်းမရှိ)",
"label.unknown": "မသိသော",
"label.untitled": "ခေါင်းစဉ်မရှိ",
"label.update": "Update",
"label.url": "URL",
"label.urls": "URL များ",
"label.user": "အသုံးပြုသူ",
"label.username": "အသုံးပြုသူအမည်",
"label.users": "အသုံးပြုသူများ",
"label.utm": "UTM",
"label.utm-description": "Track your campaigns through UTM parameters.",
"label.value": "တန်ဖိုး",
"label.view": "ဝင်ရောက်ကြည့်ရှုမှု",
"label.view-details": "အသေးစိတ်ကို ကြည့်ရှုမည်",
"label.view-only": "ဝင်ရောက်ကြည့်ရှုမှုများသာ",
"label.views": "ဝင်ရောက်ကြည့်ရှုမှုများ",
"label.views-per-visit": "Views per visit",
"label.visitors": "ဝင်ရောက်ကြည့်ရှုသူများ",
"label.visits": "Visits",
"label.website": "ဝက်ဘ်ဆိုဒ်",
"label.website-id": "ဝက်ဘ်ဆိုဒ် အိုင်ဒီ",
"label.websites": "ဝက်ဘ်ဆိုဒ်များ",

View file

@ -5,6 +5,7 @@
"label.add": "Add",
"label.add-description": "Add description",
"label.add-member": "Add member",
"label.add-step": "Add step",
"label.add-website": "Legg til nettsted",
"label.admin": "Administrator",
"label.after": "After",
@ -89,6 +90,7 @@
"label.laptop": "Bærbar",
"label.last-days": "Siste {x} dager",
"label.last-hours": "Siste {x} timer",
"label.last-months": "Last {x} months",
"label.leave": "Leave",
"label.leave-team": "Leave team",
"label.less-than": "Less than",
@ -150,6 +152,7 @@
"label.settings": "Innstillinger",
"label.share-url": "Del URL",
"label.single-day": "Enkelt dag",
"label.steps": "Steps",
"label.sum": "Sum",
"label.tablet": "Nettbrett",
"label.team": "Team",
@ -179,17 +182,22 @@
"label.unique-visitors": "Unike besøkende",
"label.unknown": "Ukjent",
"label.untitled": "Untitled",
"label.update": "Update",
"label.url": "URL",
"label.urls": "URLs",
"label.user": "User",
"label.username": "Brukernavn",
"label.users": "Users",
"label.utm": "UTM",
"label.utm-description": "Track your campaigns through UTM parameters.",
"label.value": "Value",
"label.view": "View",
"label.view-details": "Vis detaljer",
"label.view-only": "View only",
"label.views": "Visninger",
"label.views-per-visit": "Views per visit",
"label.visitors": "Besøkende",
"label.visits": "Visits",
"label.website": "Website",
"label.website-id": "Website ID",
"label.websites": "Nettsteder",

View file

@ -5,8 +5,9 @@
"label.add": "Toevoegen",
"label.add-description": "Omschrijving toevoegen",
"label.add-member": "Add member",
"label.add-step": "Add step",
"label.add-website": "Website koppelen",
"label.administrator": "Beheerder",
"label.admin": "Administrator",
"label.after": "Na",
"label.all": "Alles",
"label.all-time": "Onbeperkt",
@ -89,6 +90,7 @@
"label.laptop": "Laptop",
"label.last-days": "Laatste {x} dagen",
"label.last-hours": "Laatste {x} uur",
"label.last-months": "Last {x} months",
"label.leave": "Verlaten",
"label.leave-team": "Verlaat team",
"label.less-than": "Minder dan",
@ -150,6 +152,7 @@
"label.settings": "Instellingen",
"label.share-url": "URL delen",
"label.single-day": "Enkele dag",
"label.steps": "Steps",
"label.sum": "Som",
"label.tablet": "Tablet",
"label.team": "Team",
@ -179,17 +182,22 @@
"label.unique-visitors": "Unieke bezoekers",
"label.unknown": "Onbekend",
"label.untitled": "Ongetiteld",
"label.update": "Update",
"label.url": "URL",
"label.urls": "URL's",
"label.user": "Gebruiker",
"label.username": "Gebruikersnaam",
"label.users": "Gebruikers",
"label.utm": "UTM",
"label.utm-description": "Track your campaigns through UTM parameters.",
"label.value": "Waarde",
"label.view": "Weergave",
"label.view-details": "Meer details",
"label.view-only": "Alleen inzien",
"label.views": "Weergaven",
"label.views-per-visit": "Views per visit",
"label.visitors": "Bezoekers",
"label.visits": "Visits",
"label.website": "Website",
"label.website-id": "Website ID",
"label.websites": "Websites",

View file

@ -5,6 +5,7 @@
"label.add": "Dodaj",
"label.add-description": "Dodaj opis",
"label.add-member": "Add member",
"label.add-step": "Add step",
"label.add-website": "Dodaj witrynę",
"label.admin": "Administrator",
"label.after": "Po",
@ -89,6 +90,7 @@
"label.laptop": "Laptop",
"label.last-days": "Ostatnie {x} dni",
"label.last-hours": "Ostatnie {x} godzin",
"label.last-months": "Last {x} months",
"label.leave": "Opuść",
"label.leave-team": "Opuść zespół",
"label.less-than": "Mniejsze niż",
@ -150,6 +152,7 @@
"label.settings": "Ustawienia",
"label.share-url": "Udostępnij adres URL",
"label.single-day": "W tym dniu",
"label.steps": "Steps",
"label.sum": "Suma",
"label.tablet": "Tablet",
"label.team": "Zespół",
@ -179,17 +182,22 @@
"label.unique-visitors": "Unikalni odwiedzający",
"label.unknown": "Nieznany",
"label.untitled": "Bez tytułu",
"label.update": "Update",
"label.url": "Link",
"label.urls": "Linki",
"label.user": "Użytkownik",
"label.username": "Nazwa użytkownika",
"label.users": "Użytkownicy",
"label.utm": "UTM",
"label.utm-description": "Track your campaigns through UTM parameters.",
"label.value": "Wartość",
"label.view": "Zobacz",
"label.view-details": "Pokaż szczegóły",
"label.view-only": "Tylko do odczytu",
"label.views": "Wyświetlenia",
"label.views-per-visit": "Views per visit",
"label.visitors": "Odwiedzający",
"label.visits": "Visits",
"label.website": "Witryna",
"label.website-id": "ID witryny",
"label.websites": "Witryny",

View file

@ -5,6 +5,7 @@
"label.add": "Add",
"label.add-description": "Add description",
"label.add-member": "Add member",
"label.add-step": "Add step",
"label.add-website": "Adicionar site",
"label.admin": "Administrador",
"label.after": "Depois",
@ -89,6 +90,7 @@
"label.laptop": "Notebook",
"label.last-days": "Últimos {x} dias",
"label.last-hours": "Últimas {x} horas",
"label.last-months": "Last {x} months",
"label.leave": "Sair",
"label.leave-team": "Sair do time",
"label.less-than": "Menor que",
@ -150,6 +152,7 @@
"label.settings": "Configurações",
"label.share-url": "Link de compartilhamento",
"label.single-day": "Dia específico",
"label.steps": "Steps",
"label.sum": "Sum",
"label.tablet": "Tablet",
"label.team": "Time",
@ -179,17 +182,22 @@
"label.unique-visitors": "Visitantes únicos",
"label.unknown": "Desconhecido",
"label.untitled": "Sem título",
"label.update": "Update",
"label.url": "URL",
"label.urls": "URLs",
"label.user": "Usuário",
"label.username": "Nome de usuário",
"label.users": "Usuários",
"label.utm": "UTM",
"label.utm-description": "Track your campaigns through UTM parameters.",
"label.value": "Valor",
"label.view": "Ver",
"label.view-details": "Ver detalhes",
"label.view-only": "Somente visualização",
"label.views": "Visualizações",
"label.views-per-visit": "Views per visit",
"label.visitors": "Visitantes",
"label.visits": "Visits",
"label.website": "Website",
"label.website-id": "ID do Site",
"label.websites": "Sites",

View file

@ -5,6 +5,7 @@
"label.add": "Add",
"label.add-description": "Add description",
"label.add-member": "Add member",
"label.add-step": "Add step",
"label.add-website": "Adicionar website",
"label.admin": "Administrador",
"label.after": "After",
@ -89,6 +90,7 @@
"label.laptop": "Portátil",
"label.last-days": "Últimos {x} dias",
"label.last-hours": "Últimas {x} horas",
"label.last-months": "Last {x} months",
"label.leave": "Leave",
"label.leave-team": "Leave team",
"label.less-than": "Less than",
@ -150,6 +152,7 @@
"label.settings": "Definições",
"label.share-url": "Partilhar link",
"label.single-day": "Dia único",
"label.steps": "Steps",
"label.sum": "Sum",
"label.tablet": "Tablet",
"label.team": "Team",
@ -179,17 +182,22 @@
"label.unique-visitors": "Visitantes únicos",
"label.unknown": "Desconhecido",
"label.untitled": "Untitled",
"label.update": "Update",
"label.url": "URL",
"label.urls": "URLs",
"label.user": "User",
"label.username": "Nome de utilizador",
"label.users": "Users",
"label.utm": "UTM",
"label.utm-description": "Track your campaigns through UTM parameters.",
"label.value": "Value",
"label.view": "View",
"label.view-details": "Ver detalhes",
"label.view-only": "View only",
"label.views": "Visualizações",
"label.views-per-visit": "Views per visit",
"label.visitors": "Visitantes",
"label.visits": "Visits",
"label.website": "Website",
"label.website-id": "Website ID",
"label.websites": "Websites",

View file

@ -5,6 +5,7 @@
"label.add": "Adaugă",
"label.add-description": "Adaugă descriere",
"label.add-member": "Adaugă membru",
"label.add-step": "Add step",
"label.add-website": "Adăugare site web",
"label.admin": "Administrator",
"label.after": "După",
@ -35,6 +36,7 @@
"label.create-team": "Crează echipă",
"label.create-user": "Crează utilizator",
"label.created": "Creat",
"label.created-by": "Created By",
"label.current-password": "Parola curentă",
"label.custom-range": "Interval personalizat",
"label.dashboard": "Tablou de bord",
@ -88,6 +90,7 @@
"label.laptop": "Laptop",
"label.last-days": "Ultimele {x} zile",
"label.last-hours": "Ultimele {x} ore",
"label.last-months": "Last {x} months",
"label.leave": "Părăsește",
"label.leave-team": "Părăsește echipa",
"label.less-than": "Mai puțin decât",
@ -149,6 +152,7 @@
"label.settings": "Setări",
"label.share-url": "Partajare URL",
"label.single-day": "O singură zi",
"label.steps": "Steps",
"label.sum": "Sumă",
"label.tablet": "Tabletă",
"label.team": "Echipă",
@ -178,17 +182,22 @@
"label.unique-visitors": "Vizitatori unici",
"label.unknown": "Necunoscut",
"label.untitled": "Fără titlu",
"label.update": "Update",
"label.url": "URL",
"label.urls": "URLs",
"label.user": "Utilizator",
"label.username": "Nume utilizator",
"label.users": "Utilizatori",
"label.utm": "UTM",
"label.utm-description": "Track your campaigns through UTM parameters.",
"label.value": "Valoare",
"label.view": "Vizualizare",
"label.view-details": "Vizualizare detalii",
"label.view-only": "Doar vizualizare",
"label.views": "Vizualizări",
"label.views-per-visit": "Views per visit",
"label.visitors": "Vizitatori",
"label.visits": "Visits",
"label.website": "Website",
"label.website-id": "ID Website",
"label.websites": "Site-uri web",

View file

@ -5,6 +5,7 @@
"label.add": "Add",
"label.add-description": "Add description",
"label.add-member": "Add member",
"label.add-step": "Add step",
"label.add-website": "Добавить сайт",
"label.admin": "Администратор",
"label.after": "After",
@ -89,6 +90,7 @@
"label.laptop": "Ноутбук",
"label.last-days": "Последние {x} дней",
"label.last-hours": "Последние {x} часа",
"label.last-months": "Last {x} months",
"label.leave": "Уйти",
"label.leave-team": "Покинуть команду",
"label.less-than": "Less than",
@ -150,6 +152,7 @@
"label.settings": "Настройки",
"label.share-url": "Поделиться ссылкой",
"label.single-day": "Один день",
"label.steps": "Steps",
"label.sum": "Sum",
"label.tablet": "Планшет",
"label.team": "Команда",
@ -179,17 +182,22 @@
"label.unique-visitors": "Уникальные посетители",
"label.unknown": "Неизвестно",
"label.untitled": "Untitled",
"label.update": "Update",
"label.url": "URL",
"label.urls": "URLs",
"label.user": "Пользователь",
"label.username": "Имя пользователя",
"label.users": "Пользователи",
"label.utm": "UTM",
"label.utm-description": "Track your campaigns through UTM parameters.",
"label.value": "Value",
"label.view": "Просмотреть",
"label.view-details": "Посмотреть детали",
"label.view-only": "View only",
"label.views": "Просмотры",
"label.views-per-visit": "Views per visit",
"label.visitors": "Посетители",
"label.visits": "Visits",
"label.website": "Website",
"label.website-id": "ID сайта",
"label.websites": "Сайты",

View file

@ -5,6 +5,7 @@
"label.add": "Add",
"label.add-description": "Add description",
"label.add-member": "Add member",
"label.add-step": "Add step",
"label.add-website": "වෙබ් අඩවිය එක් කරන්න",
"label.admin": "Administrator",
"label.after": "After",
@ -89,6 +90,7 @@
"label.laptop": "Laptop",
"label.last-days": "අන්තිම {x} දින",
"label.last-hours": "අන්තිම {x} පැය",
"label.last-months": "Last {x} months",
"label.leave": "Leave",
"label.leave-team": "Leave team",
"label.less-than": "Less than",
@ -150,6 +152,7 @@
"label.settings": "සැකසුම්",
"label.share-url": "බෙදාගැනීමේ URL",
"label.single-day": "තනි දවස",
"label.steps": "Steps",
"label.sum": "Sum",
"label.tablet": "Tablet",
"label.team": "Team",
@ -179,17 +182,22 @@
"label.unique-visitors": "Unique visitors",
"label.unknown": "නොදනී",
"label.untitled": "Untitled",
"label.update": "Update",
"label.url": "URL",
"label.urls": "URLs",
"label.user": "User",
"label.username": "පරිශීලක නාමය",
"label.users": "Users",
"label.utm": "UTM",
"label.utm-description": "Track your campaigns through UTM parameters.",
"label.value": "Value",
"label.view": "View",
"label.view-details": "තොරතුරු පෙන්වන්න",
"label.view-only": "View only",
"label.views": "Views",
"label.views-per-visit": "Views per visit",
"label.visitors": "Visitors",
"label.visits": "Visits",
"label.website": "Website",
"label.website-id": "Website ID",
"label.websites": "වෙබ් අඩවි",

View file

@ -5,6 +5,7 @@
"label.add": "Add",
"label.add-description": "Add description",
"label.add-member": "Add member",
"label.add-step": "Add step",
"label.add-website": "Pridať web",
"label.admin": "Administrátor",
"label.after": "After",
@ -89,6 +90,7 @@
"label.laptop": "Prenosný počítač",
"label.last-days": "Posledných {x} dní",
"label.last-hours": "Posledných {x} hodín",
"label.last-months": "Last {x} months",
"label.leave": "Leave",
"label.leave-team": "Leave team",
"label.less-than": "Less than",
@ -150,6 +152,7 @@
"label.settings": "Nastavenia",
"label.share-url": "Zdielanie URL",
"label.single-day": "Jeden deň",
"label.steps": "Steps",
"label.sum": "Sum",
"label.tablet": "Tablet",
"label.team": "Team",
@ -179,17 +182,22 @@
"label.unique-visitors": "Jedinečné návštevy",
"label.unknown": "Neznámý",
"label.untitled": "Untitled",
"label.update": "Update",
"label.url": "URL",
"label.urls": "URLs",
"label.user": "User",
"label.username": "Užívateľské meno",
"label.users": "Users",
"label.utm": "UTM",
"label.utm-description": "Track your campaigns through UTM parameters.",
"label.value": "Value",
"label.view": "View",
"label.view-details": "Zobraziť detaily",
"label.view-only": "View only",
"label.views": "Zobrazení",
"label.views-per-visit": "Views per visit",
"label.visitors": "Návštevy",
"label.visits": "Visits",
"label.website": "Website",
"label.website-id": "Website ID",
"label.websites": "Weby",

View file

@ -5,6 +5,7 @@
"label.add": "Dodaj",
"label.add-description": "Dodaj opis",
"label.add-member": "Add member",
"label.add-step": "Add step",
"label.add-website": "Dodaj spletno mesto",
"label.admin": "Administrator",
"label.after": "Po",
@ -89,6 +90,7 @@
"label.laptop": "Prenosni računalnik",
"label.last-days": "Zadnjih {x} dni",
"label.last-hours": "Zadnjih {x} ur",
"label.last-months": "Last {x} months",
"label.leave": "Zapusti",
"label.leave-team": "Zapusti ekipo",
"label.less-than": "Manjše kot",
@ -150,6 +152,7 @@
"label.settings": "Nastavitve",
"label.share-url": "Deli povezavo",
"label.single-day": "En dan",
"label.steps": "Steps",
"label.sum": "Seštevek",
"label.tablet": "Tablični računalnik",
"label.team": "Ekipa",
@ -179,17 +182,22 @@
"label.unique-visitors": "Unikatni obiskovalci",
"label.unknown": "Neznano",
"label.untitled": "Brez naslova",
"label.update": "Update",
"label.url": "Povezava",
"label.urls": "Povezave",
"label.user": "Uporabnik",
"label.username": "Uporabniško ime",
"label.users": "Uporabniki",
"label.utm": "UTM",
"label.utm-description": "Track your campaigns through UTM parameters.",
"label.value": "Vrednost",
"label.view": "Poglej",
"label.view-details": "Poglej podrobnosti",
"label.view-only": "Samo ogledovanje",
"label.views": "Obiski",
"label.views-per-visit": "Views per visit",
"label.visitors": "Obiskovalci",
"label.visits": "Visits",
"label.website": "Spletno mesto",
"label.website-id": "ID spletnega mesta",
"label.websites": "Spletnih mest",

View file

@ -5,6 +5,7 @@
"label.add": "Lägg till",
"label.add-description": "Lägg till beskrivning",
"label.add-member": "Add member",
"label.add-step": "Add step",
"label.add-website": "Lägg till webbplats",
"label.admin": "Administratör",
"label.after": "Efter",
@ -89,6 +90,7 @@
"label.laptop": "Bärbar",
"label.last-days": "Senaste {x} dagarna",
"label.last-hours": "Senaste {x} timmarna",
"label.last-months": "Last {x} months",
"label.leave": "Lämna",
"label.leave-team": "Lämna team",
"label.less-than": "Mindre än",
@ -150,6 +152,7 @@
"label.settings": "Inställningar",
"label.share-url": "Delningslänk",
"label.single-day": "En dag",
"label.steps": "Steps",
"label.sum": "Summa",
"label.tablet": "Surfplatta",
"label.team": "Team",
@ -179,17 +182,22 @@
"label.unique-visitors": "Unika besökare",
"label.unknown": "Okänt",
"label.untitled": "Namnlös",
"label.update": "Update",
"label.url": "Länk",
"label.urls": "Länkar",
"label.user": "Användare",
"label.username": "Användarnamn",
"label.users": "Användare",
"label.utm": "UTM",
"label.utm-description": "Track your campaigns through UTM parameters.",
"label.value": "Värde",
"label.view": "Visa",
"label.view-details": "Visa detaljer",
"label.view-only": "Endast visning",
"label.views": "Visningar",
"label.views-per-visit": "Views per visit",
"label.visitors": "Besökare",
"label.visits": "Visits",
"label.website": "Webbplats",
"label.website-id": "Webbplats ID",
"label.websites": "Webbplatser",

View file

@ -5,6 +5,7 @@
"label.add": "Add",
"label.add-description": "Add description",
"label.add-member": "Add member",
"label.add-step": "Add step",
"label.add-website": "வலைத்தளத்தைச் சேர்க்க",
"label.admin": "நிர்வாகியைச் சேர்க்க",
"label.after": "After",
@ -89,6 +90,7 @@
"label.laptop": "மடிக்கணினி",
"label.last-days": "முந்தைய {x} நாட்கள்",
"label.last-hours": "முந்தைய {x} மணி",
"label.last-months": "Last {x} months",
"label.leave": "Leave",
"label.leave-team": "Leave team",
"label.less-than": "Less than",
@ -150,6 +152,7 @@
"label.settings": "அமைப்புகள்",
"label.share-url": "வலைத்தள களத்தைப் பகிரவும்",
"label.single-day": "ஒரு நாள்",
"label.steps": "Steps",
"label.sum": "Sum",
"label.tablet": "கையடக்க கணினி",
"label.team": "Team",
@ -179,17 +182,22 @@
"label.unique-visitors": "தனிப்பட்ட பார்வையாளர்கள்",
"label.unknown": "தெரியாத",
"label.untitled": "Untitled",
"label.update": "Update",
"label.url": "URL",
"label.urls": "URLs",
"label.user": "User",
"label.username": "பயனர்பெயர்",
"label.users": "Users",
"label.utm": "UTM",
"label.utm-description": "Track your campaigns through UTM parameters.",
"label.value": "Value",
"label.view": "View",
"label.view-details": "விபரங்களை பார்",
"label.view-only": "View only",
"label.views": "பார்வைகள்",
"label.views-per-visit": "Views per visit",
"label.visitors": "பார்வையாளர்கள்",
"label.visits": "Visits",
"label.website": "Website",
"label.website-id": "Website ID",
"label.websites": "வலைத்தளங்கள்",

View file

@ -5,6 +5,7 @@
"label.add": "Add",
"label.add-description": "Add description",
"label.add-member": "Add member",
"label.add-step": "Add step",
"label.add-website": "เพิ่มเว็บไซต์",
"label.admin": "ผู้ดูแลระบบ",
"label.after": "After",
@ -89,6 +90,7 @@
"label.laptop": "แล็ปท็อป",
"label.last-days": "{x} วันที่ผ่านมา",
"label.last-hours": "{x} ชั่วโมงที่ผ่านมา",
"label.last-months": "Last {x} months",
"label.leave": "Leave",
"label.leave-team": "Leave team",
"label.less-than": "Less than",
@ -150,6 +152,7 @@
"label.settings": "ตั้งค่า",
"label.share-url": "แชร์ลิงก์",
"label.single-day": "วันที่",
"label.steps": "Steps",
"label.sum": "Sum",
"label.tablet": "แท็บเล็ต",
"label.team": "Team",
@ -179,17 +182,22 @@
"label.unique-visitors": "ผู้เข้าชม",
"label.unknown": "ไม่รู้จัก",
"label.untitled": "Untitled",
"label.update": "Update",
"label.url": "URL",
"label.urls": "URLs",
"label.user": "User",
"label.username": "ชื่อผู้ใช้",
"label.users": "Users",
"label.utm": "UTM",
"label.utm-description": "Track your campaigns through UTM parameters.",
"label.value": "Value",
"label.view": "View",
"label.view-details": "แสดงรายละเอียด",
"label.view-only": "View only",
"label.views": "การเข้าชม",
"label.views-per-visit": "Views per visit",
"label.visitors": "ผู้เข้าชม",
"label.visits": "Visits",
"label.website": "Website",
"label.website-id": "Website ID",
"label.websites": "เว็บไซต์",

View file

@ -5,6 +5,7 @@
"label.add": "Add",
"label.add-description": "Add description",
"label.add-member": "Add member",
"label.add-step": "Add step",
"label.add-website": "Web sitesi ekle",
"label.admin": "Yönetici",
"label.after": "After",
@ -89,6 +90,7 @@
"label.laptop": "Dizüstü",
"label.last-days": "Son {x} gün",
"label.last-hours": "Son {x} saat",
"label.last-months": "Last {x} months",
"label.leave": "Leave",
"label.leave-team": "Leave team",
"label.less-than": "Less than",
@ -150,6 +152,7 @@
"label.settings": "Ayarlar",
"label.share-url": "Paylaşım adresi",
"label.single-day": "Tekil gün",
"label.steps": "Steps",
"label.sum": "Sum",
"label.tablet": "Tablet",
"label.team": "Team",
@ -179,17 +182,22 @@
"label.unique-visitors": "Tekil kullanıcı",
"label.unknown": "Bilinmeyen",
"label.untitled": "Untitled",
"label.update": "Update",
"label.url": "URL",
"label.urls": "URLs",
"label.user": "User",
"label.username": "Kullanıcı adı",
"label.users": "Users",
"label.utm": "UTM",
"label.utm-description": "Track your campaigns through UTM parameters.",
"label.value": "Value",
"label.view": "View",
"label.view-details": "Detayı incele",
"label.view-only": "View only",
"label.views": "Görüntüleme",
"label.views-per-visit": "Views per visit",
"label.visitors": "Ziyaretçi",
"label.visits": "Visits",
"label.website": "Website",
"label.website-id": "Website ID",
"label.websites": "Web siteleri",

View file

@ -5,6 +5,7 @@
"label.add": "Add",
"label.add-description": "Add description",
"label.add-member": "Add member",
"label.add-step": "Add step",
"label.add-website": "Додати сайт",
"label.admin": "Адміністратор",
"label.after": "After",
@ -89,6 +90,7 @@
"label.laptop": "Ноутбук",
"label.last-days": "Останні {x} днів",
"label.last-hours": "Останні {x} годин",
"label.last-months": "Last {x} months",
"label.leave": "Leave",
"label.leave-team": "Leave team",
"label.less-than": "Less than",
@ -150,6 +152,7 @@
"label.settings": "Налаштування",
"label.share-url": "Поділитися посилання",
"label.single-day": "Один день",
"label.steps": "Steps",
"label.sum": "Sum",
"label.tablet": "Планшет",
"label.team": "Team",
@ -179,17 +182,22 @@
"label.unique-visitors": "Унікальні відвідувачі",
"label.unknown": "Невідомо",
"label.untitled": "Untitled",
"label.update": "Update",
"label.url": "URL",
"label.urls": "URLs",
"label.user": "User",
"label.username": "Ім'я користувача",
"label.users": "Users",
"label.utm": "UTM",
"label.utm-description": "Track your campaigns through UTM parameters.",
"label.value": "Value",
"label.view": "View",
"label.view-details": "Переглянути деталі",
"label.view-only": "View only",
"label.views": "Перегляди",
"label.views-per-visit": "Views per visit",
"label.visitors": "Відвідувачі",
"label.visits": "Visits",
"label.website": "Website",
"label.website-id": "Website ID",
"label.websites": "Сайти",

View file

@ -5,6 +5,7 @@
"label.add": "Add",
"label.add-description": "Add description",
"label.add-member": "Add member",
"label.add-step": "Add step",
"label.add-website": "ویب سائٹ کا اضافہ کریں",
"label.admin": "منتظم",
"label.after": "After",
@ -89,6 +90,7 @@
"label.laptop": "لیپ ٹاپ",
"label.last-days": "پچھلے {x} دن",
"label.last-hours": "پچھلے {x} گھنٹے",
"label.last-months": "Last {x} months",
"label.leave": "Leave",
"label.leave-team": "Leave team",
"label.less-than": "Less than",
@ -150,6 +152,7 @@
"label.settings": "ترتیبات",
"label.share-url": "URL کا اشتراک کریں",
"label.single-day": "ایک دن",
"label.steps": "Steps",
"label.sum": "Sum",
"label.tablet": "ٹیبلیٹ",
"label.team": "Team",
@ -179,17 +182,22 @@
"label.unique-visitors": "منفرد زائرین",
"label.unknown": "نامعلوم",
"label.untitled": "Untitled",
"label.update": "Update",
"label.url": "URL",
"label.urls": "URLs",
"label.user": "User",
"label.username": "صارف نام",
"label.users": "Users",
"label.utm": "UTM",
"label.utm-description": "Track your campaigns through UTM parameters.",
"label.value": "Value",
"label.view": "View",
"label.view-details": "تفصیلات دیکھیں",
"label.view-only": "View only",
"label.views": "مناظر",
"label.views-per-visit": "Views per visit",
"label.visitors": "زائرین",
"label.visits": "Visits",
"label.website": "Website",
"label.website-id": "Website ID",
"label.websites": "ویب سائٹس",

View file

@ -5,6 +5,7 @@
"label.add": "Add",
"label.add-description": "Add description",
"label.add-member": "Add member",
"label.add-step": "Add step",
"label.add-website": "Thêm website",
"label.admin": "Quản trị",
"label.after": "After",
@ -89,6 +90,7 @@
"label.laptop": "Laptop",
"label.last-days": "{x} ngày gần nhất",
"label.last-hours": "{x} giờ gần nhất",
"label.last-months": "Last {x} months",
"label.leave": "Leave",
"label.leave-team": "Leave team",
"label.less-than": "Less than",
@ -150,6 +152,7 @@
"label.settings": "Cài đặt",
"label.share-url": "Chia sẻ URL",
"label.single-day": "Trong ngày",
"label.steps": "Steps",
"label.sum": "Sum",
"label.tablet": "Máy tính bảng",
"label.team": "Team",
@ -179,17 +182,22 @@
"label.unique-visitors": "Khách truy cập một lần",
"label.unknown": "Không rõ",
"label.untitled": "Untitled",
"label.update": "Update",
"label.url": "URL",
"label.urls": "URLs",
"label.user": "User",
"label.username": "Tên đăng nhập",
"label.users": "Users",
"label.utm": "UTM",
"label.utm-description": "Track your campaigns through UTM parameters.",
"label.value": "Value",
"label.view": "View",
"label.view-details": "Xem chi tiết",
"label.view-only": "View only",
"label.views": "Xem",
"label.views-per-visit": "Views per visit",
"label.visitors": "Khách",
"label.visits": "Visits",
"label.website": "Website",
"label.website-id": "Website ID",
"label.websites": "Websites",

View file

@ -5,6 +5,7 @@
"label.add": "添加",
"label.add-description": "添加描述",
"label.add-member": "添加成员",
"label.add-step": "Add step",
"label.add-website": "添加网站",
"label.admin": "管理员",
"label.after": "之后",
@ -89,6 +90,7 @@
"label.laptop": "笔记本",
"label.last-days": "最近 {x} 天",
"label.last-hours": "最近 {x} 小时",
"label.last-months": "Last {x} months",
"label.leave": "离开",
"label.leave-team": "离开团队",
"label.less-than": "少于",
@ -150,6 +152,7 @@
"label.settings": "设置",
"label.share-url": "共享链接",
"label.single-day": "单日",
"label.steps": "Steps",
"label.sum": "总和",
"label.tablet": "平板",
"label.team": "团队",
@ -179,17 +182,22 @@
"label.unique-visitors": "独立访客",
"label.unknown": "未知",
"label.untitled": "未命名",
"label.update": "Update",
"label.url": "网址",
"label.urls": "网址",
"label.user": "用户",
"label.username": "用户名",
"label.users": "用户",
"label.utm": "UTM",
"label.utm-description": "Track your campaigns through UTM parameters.",
"label.value": "值",
"label.view": "查看",
"label.view-details": "查看更多",
"label.view-only": "仅浏览量",
"label.views": "浏览量",
"label.views-per-visit": "Views per visit",
"label.visitors": "访客",
"label.visits": "Visits",
"label.website": "网站",
"label.website-id": "网站 ID",
"label.websites": "网站",

View file

@ -5,6 +5,7 @@
"label.add": "新增",
"label.add-description": "新增描述",
"label.add-member": "Add member",
"label.add-step": "Add step",
"label.add-website": "新增網站",
"label.admin": "管理員",
"label.after": "之後",
@ -89,6 +90,7 @@
"label.laptop": "筆記型電腦",
"label.last-days": "最近 {x} 天",
"label.last-hours": "最近 {x} 小時",
"label.last-months": "Last {x} months",
"label.leave": "離開",
"label.leave-team": "離開團隊",
"label.less-than": "小於",
@ -150,6 +152,7 @@
"label.settings": "設定",
"label.share-url": "分享網址",
"label.single-day": "單日",
"label.steps": "Steps",
"label.sum": "總和",
"label.tablet": "平板",
"label.team": "團隊",
@ -179,17 +182,22 @@
"label.unique-visitors": "獨立訪客",
"label.unknown": "未知",
"label.untitled": "無標題",
"label.update": "Update",
"label.url": "網址",
"label.urls": "網址",
"label.user": "使用者",
"label.username": "使用者名稱",
"label.users": "使用者",
"label.utm": "UTM",
"label.utm-description": "Track your campaigns through UTM parameters.",
"label.value": "值",
"label.view": "檢視",
"label.view-details": "檢視詳細資訊",
"label.view-only": "僅供檢視",
"label.views": "檢視",
"label.views-per-visit": "Views per visit",
"label.visitors": "訪客",
"label.visits": "Visits",
"label.website": "網站",
"label.website-id": "網站 ID",
"label.websites": "網站",

View file

@ -154,7 +154,7 @@ export function parseDateRange(value: string | object, locale = 'en-US'): DateRa
switch (unit) {
case 'hour':
return {
startDate: subHours(startOfHour(now), num),
startDate: num ? subHours(startOfHour(now), num - 1) : startOfHour(now),
endDate: endOfHour(now),
offset: 0,
num: num || 1,
@ -163,8 +163,8 @@ export function parseDateRange(value: string | object, locale = 'en-US'): DateRa
};
case 'day':
return {
startDate: subDays(startOfDay(now), num),
endDate: subDays(endOfDay(now), num ? 1 : 0),
startDate: num ? subDays(startOfDay(now), num - 1) : startOfDay(now),
endDate: endOfDay(now),
unit: num ? 'day' : 'hour',
offset: 0,
num: num || 1,
@ -172,8 +172,10 @@ export function parseDateRange(value: string | object, locale = 'en-US'): DateRa
};
case 'week':
return {
startDate: subWeeks(startOfWeek(now, { locale: dateLocale }), num),
endDate: subWeeks(endOfWeek(now, { locale: dateLocale }), num),
startDate: num
? subWeeks(startOfWeek(now, { locale: dateLocale }), num - 1)
: startOfWeek(now, { locale: dateLocale }),
endDate: endOfWeek(now, { locale: dateLocale }),
unit: 'day',
offset: 0,
num: num || 1,
@ -181,8 +183,8 @@ export function parseDateRange(value: string | object, locale = 'en-US'): DateRa
};
case 'month':
return {
startDate: subMonths(startOfMonth(now), num),
endDate: subMonths(endOfMonth(now), num ? 1 : 0),
startDate: num ? subMonths(startOfMonth(now), num - 1) : startOfMonth(now),
endDate: endOfMonth(now),
unit: num ? 'month' : 'day',
offset: 0,
num: num || 1,
@ -190,8 +192,8 @@ export function parseDateRange(value: string | object, locale = 'en-US'): DateRa
};
case 'year':
return {
startDate: subYears(startOfYear(now), num),
endDate: subYears(endOfYear(now), num),
startDate: num ? subYears(startOfYear(now), num - 1) : startOfYear(now),
endDate: endOfYear(now),
unit: 'month',
offset: 0,
num: num || 1,
@ -286,19 +288,11 @@ export function getDateFromString(str: string) {
export function getDateArray(data: any[], startDate: Date, endDate: Date, unit: string) {
const arr = [];
const { diff, add, start } = DATE_FUNCTIONS[unit];
const n = diff(endDate, startDate) + 1;
const n = diff(endDate, startDate);
function findData(date: Date) {
const d = data.find(({ x }) => {
return start(getDateFromString(x)).getTime() === date.getTime();
});
return d?.y || 0;
}
for (let i = 0; i < n; i++) {
for (let i = 0; i <= n; i++) {
const t = start(add(startDate, i));
const y = findData(t);
const y = data.find(({ x }) => start(getDateFromString(x)).getTime() === t.getTime())?.y || 0;
arr.push({ x: t, y });
}

View file

@ -123,9 +123,9 @@ export async function getLocation(ip: string, req: NextApiRequestCollect) {
}
}
export async function getClientInfo(req: NextApiRequestCollect, { screen }) {
export async function getClientInfo(req: NextApiRequestCollect) {
const userAgent = req.headers['user-agent'];
const ip = req.body.payload.ip || getIpAddress(req);
const ip = req.body?.payload?.ip || getIpAddress(req);
const location = await getLocation(ip, req);
const country = location?.country;
const subdivision1 = location?.subdivision1;
@ -133,7 +133,7 @@ export async function getClientInfo(req: NextApiRequestCollect, { screen }) {
const city = location?.city;
const browser = browserName(userAgent);
const os = detectOS(userAgent);
const device = getDevice(screen, os);
const device = getDevice(req.body?.payload?.screen, os);
return { userAgent, browser, os, ip, country, subdivision1, subdivision2, city, device };
}

View file

@ -17,14 +17,9 @@ function getClient() {
const ssl: { ssl?: tls.ConnectionOptions | boolean; sasl?: SASLOptions | Mechanism } =
username && password
? {
ssl: {
checkServerIdentity: () => undefined,
ca: [process.env.CA_CERT],
key: process.env.CLIENT_KEY,
cert: process.env.CLIENT_CERT,
},
ssl: true,
sasl: {
mechanism: 'plain',
mechanism: 'scram-sha-256',
username,
password,
},

View file

@ -65,7 +65,7 @@ export async function findSession(req: NextApiRequestCollect): Promise<{
await checkUserBlock(website.userId);
const { userAgent, browser, os, ip, country, subdivision1, subdivision2, city, device } =
await getClientInfo(req, payload);
await getClientInfo(req);
const sessionId = uuid(websiteId, hostname, ip, userAgent);
const visitId = uuid(sessionId, visitSalt());

View file

@ -73,7 +73,7 @@ export interface FilterQueryResult<T> {
}
export interface DynamicData {
[key: string]: number | string | DynamicData | number[] | string[] | DynamicData[];
[key: string]: number | string | number[] | string[];
}
export interface Auth {

View file

@ -1,5 +1,4 @@
import redis from '@umami/redis-client';
import debug from 'debug';
import { saveAuth } from 'lib/auth';
import { secret } from 'lib/crypto';
import { useValidate } from 'lib/middleware';
@ -16,9 +15,6 @@ import {
import { getUserByUsername } from 'queries';
import * as yup from 'yup';
import { ROLES } from 'lib/constants';
import { getIpAddress } from 'lib/detect';
const log = debug('umami:auth');
export interface LoginRequestBody {
username: string;
@ -68,13 +64,6 @@ export default async (
});
}
log(
`Login from ip ${getIpAddress(req)} with username "${username.replace(
/["\r\n]/g,
'',
)}" failed.`,
);
return unauthorized(res, 'message.incorrect-username-password');
}

View file

@ -104,14 +104,14 @@ export default async (req: NextApiRequestCollect, res: NextApiResponse) => {
await useSession(req, res);
const session = req.session;
const iat = Math.floor(new Date().getTime() / 1000);
// expire visitId after 30 minutes
session.visitId =
!!session.iat && Math.floor(new Date().getTime() / 1000) - session.iat > 1800
? uuid(session.id, visitSalt())
: session.visitId;
if (session.iat && iat - session.iat > 1800) {
session.visitId = uuid(session.id, visitSalt());
}
session.iat = Math.floor(new Date().getTime() / 1000);
session.iat = iat;
if (type === COLLECTION_TYPE.event) {
// eslint-disable-next-line prefer-const

View file

@ -109,7 +109,7 @@ export default async (
}
if (EVENT_COLUMNS.includes(type)) {
const data = await getPageviewMetrics(websiteId, column, filters, limit, offset);
const data = await getPageviewMetrics(websiteId, type, filters, limit, offset);
return ok(res, data);
}

View file

@ -22,7 +22,7 @@ async function relationalQuery(websiteId: string, filters: QueryFilters) {
`
select
website_event.event_name as "eventName",
event_data.event_key as "fieldName",
event_data.data_key as "fieldName",
event_data.data_type as "dataType",
event_data.string_value as "fieldValue",
count(*) as "total"
@ -32,7 +32,7 @@ async function relationalQuery(websiteId: string, filters: QueryFilters) {
where event_data.website_id = {{websiteId::uuid}}
and event_data.created_at between {{startDate}} and {{endDate}}
and website_event.event_name = {{event}}
group by website_event.event_name, event_data.event_key, event_data.data_type, event_data.string_value
group by website_event.event_name, event_data.data_key, event_data.data_type, event_data.string_value
order by 1 asc, 2 asc, 3 asc, 4 desc
`,
params,
@ -43,7 +43,7 @@ async function relationalQuery(websiteId: string, filters: QueryFilters) {
`
select
website_event.event_name as "eventName",
event_data.event_key as "fieldName",
event_data.data_key as "fieldName",
event_data.data_type as "dataType",
count(*) as "total"
from event_data
@ -51,7 +51,7 @@ async function relationalQuery(websiteId: string, filters: QueryFilters) {
on website_event.event_id = event_data.website_event_id
where event_data.website_id = {{websiteId::uuid}}
and event_data.created_at between {{startDate}} and {{endDate}}
group by website_event.event_name, event_data.event_key, event_data.data_type
group by website_event.event_name, event_data.data_key, event_data.data_type
order by 1 asc, 2 asc
limit 500
`,
@ -72,7 +72,7 @@ async function clickhouseQuery(
`
select
event_name as eventName,
event_key as fieldName,
data_key as fieldName,
data_type as dataType,
string_value as fieldValue,
count(*) as total
@ -80,7 +80,7 @@ async function clickhouseQuery(
where website_id = {websiteId:UUID}
and created_at between {startDate:DateTime64} and {endDate:DateTime64}
and event_name = {event:String}
group by event_key, data_type, string_value, event_name
group by data_key, data_type, string_value, event_name
order by 1 asc, 2 asc, 3 asc, 4 desc
limit 500
`,
@ -102,13 +102,13 @@ async function clickhouseQuery(
`
select
event_name as eventName,
event_key as fieldName,
data_key as fieldName,
data_type as dataType,
count(*) as total
from event_data
where website_id = {websiteId:UUID}
and created_at between {startDate:DateTime64} and {endDate:DateTime64}
group by event_key, data_type, event_name
group by data_key, data_type, event_name
order by 1 asc, 2 asc
limit 500
`,

View file

@ -15,13 +15,13 @@ export async function getEventDataFields(
async function relationalQuery(websiteId: string, filters: QueryFilters & { field?: string }) {
const { rawQuery, parseFilters } = prisma;
const { filterQuery, params } = await parseFilters(websiteId, filters, {
columns: { field: 'event_key' },
columns: { field: 'data_key' },
});
return rawQuery(
`
select
event_key as "fieldName",
data_key as "fieldName",
data_type as "dataType",
string_value as "fieldValue",
count(*) as "total"
@ -29,7 +29,7 @@ async function relationalQuery(websiteId: string, filters: QueryFilters & { fiel
where website_id = {{websiteId::uuid}}
and created_at between {{startDate}} and {{endDate}}
${filterQuery}
group by event_key, data_type, string_value
group by data_key, data_type, string_value
order by 3 desc, 2 desc, 1 asc
limit 500
`,
@ -43,13 +43,13 @@ async function clickhouseQuery(
): Promise<{ fieldName: string; dataType: number; fieldValue: string; total: number }[]> {
const { rawQuery, parseFilters } = clickhouse;
const { filterQuery, params } = await parseFilters(websiteId, filters, {
columns: { field: 'event_key' },
columns: { field: 'data_key' },
});
return rawQuery(
`
select
event_key as fieldName,
data_key as fieldName,
data_type as dataType,
string_value as fieldValue,
count(*) as total
@ -57,7 +57,7 @@ async function clickhouseQuery(
where website_id = {websiteId:UUID}
and created_at between {startDate:DateTime64} and {endDate:DateTime64}
${filterQuery}
group by event_key, data_type, string_value
group by data_key, data_type, string_value
order by 3 desc, 2 desc, 1 asc
limit 500
`,

View file

@ -24,18 +24,18 @@ async function relationalQuery(websiteId: string, filters: QueryFilters) {
`
select
count(distinct t.website_event_id) as "events",
count(distinct t.event_key) as "fields",
count(distinct t.data_key) as "fields",
sum(t.total) as "records"
from (
select
website_event_id,
event_key,
data_key,
count(*) as "total"
from event_data
where website_id = {{websiteId::uuid}}
and created_at between {{startDate}} and {{endDate}}
${filterQuery}
group by website_event_id, event_key
group by website_event_id, data_key
) as t
`,
params,
@ -53,18 +53,18 @@ async function clickhouseQuery(
`
select
count(distinct t.event_id) as "events",
count(distinct t.event_key) as "fields",
count(distinct t.data_key) as "fields",
sum(t.total) as "records"
from (
select
event_id,
event_key,
data_key,
count(*) as "total"
from event_data
where website_id = {websiteId:UUID}
and created_at between {startDate:DateTime64} and {endDate:DateTime64}
${filterQuery}
group by event_id, event_key
group by event_id, data_key
) as t
`,
params,

View file

@ -7,7 +7,7 @@ import kafka from 'lib/kafka';
import prisma from 'lib/prisma';
import { DynamicData } from 'lib/types';
export async function saveEventData(args: {
export async function saveEventData(data: {
websiteId: string;
eventId: string;
sessionId?: string;
@ -17,8 +17,8 @@ export async function saveEventData(args: {
createdAt?: string;
}) {
return runQuery({
[PRISMA]: () => relationalQuery(args),
[CLICKHOUSE]: () => clickhouseQuery(args),
[PRISMA]: () => relationalQuery(data),
[CLICKHOUSE]: () => clickhouseQuery(data),
});
}
@ -36,7 +36,7 @@ async function relationalQuery(data: {
id: uuid(),
websiteEventId: eventId,
websiteId,
eventKey: a.key,
dataKey: a.key,
stringValue: getStringValue(a.value, a.dataType),
numberValue: a.dataType === DATA_TYPE.number ? a.value : null,
dateValue: a.dataType === DATA_TYPE.date ? new Date(a.value) : null,
@ -63,19 +63,21 @@ async function clickhouseQuery(data: {
const jsonKeys = flattenJSON(eventData);
const messages = jsonKeys.map(a => ({
website_id: websiteId,
session_id: sessionId,
event_id: eventId,
url_path: urlPath,
event_name: eventName,
event_key: a.key,
string_value: getStringValue(a.value, a.dataType),
number_value: a.dataType === DATA_TYPE.number ? a.value : null,
date_value: a.dataType === DATA_TYPE.date ? getDateFormat(a.value) : null,
data_type: a.dataType,
created_at: createdAt,
}));
const messages = jsonKeys.map(({ key, value, dataType }) => {
return {
website_id: websiteId,
session_id: sessionId,
event_id: eventId,
url_path: urlPath,
event_name: eventName,
data_key: key,
data_type: dataType,
string_value: getStringValue(value, dataType),
number_value: dataType === DATA_TYPE.number ? value : null,
date_value: dataType === DATA_TYPE.date ? getDateFormat(value) : null,
created_at: createdAt,
};
});
await sendMessages(messages, 'event_data');

View file

@ -43,10 +43,8 @@ async function relationalQuery(
min(website_event.created_at) as "min_time",
max(website_event.created_at) as "max_time"
from website_event
join website
on website_event.website_id = website.website_id
${joinSession}
where website.website_id = {{websiteId::uuid}}
where website_event.website_id = {{websiteId::uuid}}
and website_event.created_at between {{startDate}} and {{endDate}}
and event_type = {{eventType}}
${filterQuery}

View file

@ -1,17 +1,11 @@
import prisma from 'lib/prisma';
import clickhouse from 'lib/clickhouse';
import { runQuery, CLICKHOUSE, PRISMA } from 'lib/db';
import { EVENT_TYPE, SESSION_COLUMNS } from 'lib/constants';
import { EVENT_TYPE, FILTER_COLUMNS, SESSION_COLUMNS } from 'lib/constants';
import { QueryFilters } from 'lib/types';
export async function getPageviewMetrics(
...args: [
websiteId: string,
column: string,
filters: QueryFilters,
limit?: number,
offset?: number,
]
...args: [websiteId: string, type: string, filters: QueryFilters, limit?: number, offset?: number]
) {
return runQuery({
[PRISMA]: () => relationalQuery(...args),
@ -21,20 +15,20 @@ export async function getPageviewMetrics(
async function relationalQuery(
websiteId: string,
column: string,
type: string,
filters: QueryFilters,
limit: number = 500,
offset: number = 0,
) {
const column = FILTER_COLUMNS[type] || type;
const { rawQuery, parseFilters } = prisma;
const { filterQuery, joinSession, params } = await parseFilters(
websiteId,
{
...filters,
eventType: column === 'event_name' ? EVENT_TYPE.customEvent : EVENT_TYPE.pageView,
},
{ joinSession: SESSION_COLUMNS.includes(column) },
{ joinSession: SESSION_COLUMNS.includes(type) },
);
let excludeDomain = '';
@ -64,11 +58,12 @@ async function relationalQuery(
async function clickhouseQuery(
websiteId: string,
column: string,
type: string,
filters: QueryFilters,
limit: number = 500,
offset: number = 0,
): Promise<{ x: string; y: number }[]> {
const column = FILTER_COLUMNS[type] || type;
const { rawQuery, parseFilters } = clickhouse;
const { filterQuery, params } = await parseFilters(websiteId, {
...filters,

View file

@ -3,13 +3,27 @@ import { uuid } from 'lib/crypto';
import { flattenJSON, getStringValue } from 'lib/data';
import prisma from 'lib/prisma';
import { DynamicData } from 'lib/types';
import { CLICKHOUSE, PRISMA, runQuery } from 'lib/db';
import kafka from 'lib/kafka';
export async function saveSessionData(data: {
websiteId: string;
sessionId: string;
sessionData: DynamicData;
createdAt?: string;
}) {
const { client, transaction } = prisma;
return runQuery({
[PRISMA]: () => relationalQuery(data),
[CLICKHOUSE]: () => clickhouseQuery(data),
});
}
export async function relationalQuery(data: {
websiteId: string;
sessionId: string;
sessionData: DynamicData;
}) {
const { client } = prisma;
const { websiteId, sessionId, sessionData } = data;
const jsonKeys = flattenJSON(sessionData);
@ -18,21 +32,73 @@ export async function saveSessionData(data: {
id: uuid(),
websiteId,
sessionId,
key: a.key,
dataKey: a.key,
stringValue: getStringValue(a.value, a.dataType),
numberValue: a.dataType === DATA_TYPE.number ? a.value : null,
dateValue: a.dataType === DATA_TYPE.date ? new Date(a.value) : null,
dataType: a.dataType,
}));
return transaction([
client.sessionData.deleteMany({
where: {
sessionId,
},
}),
client.sessionData.createMany({
data: flattenedData as any,
}),
]);
const existing = await client.sessionData.findMany({
where: {
sessionId,
},
select: {
id: true,
sessionId: true,
dataKey: true,
},
});
for (const data of flattenedData) {
const { sessionId, dataKey, ...props } = data;
const record = existing.find(e => e.sessionId === sessionId && e.dataKey === dataKey);
if (record) {
await client.sessionData.update({
where: {
id: record.id,
},
data: {
...props,
},
});
} else {
await client.sessionData.create({
data,
});
}
}
return flattenedData;
}
async function clickhouseQuery(data: {
websiteId: string;
sessionId: string;
sessionData: DynamicData;
createdAt?: string;
}) {
const { websiteId, sessionId, sessionData, createdAt } = data;
const { getDateFormat, sendMessages } = kafka;
const jsonKeys = flattenJSON(sessionData);
const messages = jsonKeys.map(({ key, value, dataType }) => {
return {
website_id: websiteId,
session_id: sessionId,
data_key: key,
data_type: dataType,
string_value: getStringValue(value, dataType),
number_value: dataType === DATA_TYPE.number ? value : null,
date_value: dataType === DATA_TYPE.date ? getDateFormat(value) : null,
created_at: createdAt,
};
});
await sendMessages(messages, 'session_data');
return data;
}