Merge remote-tracking branch 'upstream/master'
|
|
@ -19,22 +19,21 @@
|
|||
"plugin:@typescript-eslint/recommended",
|
||||
"next"
|
||||
],
|
||||
|
||||
"plugins": ["@typescript-eslint", "prettier"],
|
||||
"settings": {
|
||||
"import/resolver": {
|
||||
"alias": {
|
||||
"map": [
|
||||
["assets", "./assets"],
|
||||
["components", "./components"],
|
||||
["assets", "./src/assets"],
|
||||
["components", "./src/components"],
|
||||
["db", "./db"],
|
||||
["hooks", "./hooks"],
|
||||
["lang", "./lang"],
|
||||
["lib", "./lib"],
|
||||
["hooks", "./src/components/hooks"],
|
||||
["lang", "./src/lang"],
|
||||
["lib", "./src/lib"],
|
||||
["public", "./public"],
|
||||
["queries", "./queries"],
|
||||
["store", "./store"],
|
||||
["styles", "./styles"]
|
||||
["queries", "./src/queries"],
|
||||
["store", "./src/store"],
|
||||
["styles", "./src/styles"]
|
||||
],
|
||||
"extensions": [".ts", ".tsx", ".js", ".jsx", ".json"]
|
||||
}
|
||||
|
|
@ -51,7 +50,8 @@
|
|||
"@typescript-eslint/no-empty-function": "off",
|
||||
"@typescript-eslint/no-explicit-any": "off",
|
||||
"@typescript-eslint/no-var-requires": "off",
|
||||
"@typescript-eslint/no-empty-interface": "off"
|
||||
"@typescript-eslint/no-empty-interface": "off",
|
||||
"@typescript-eslint/no-unused-vars": ["error", { "ignoreRestSiblings": true }]
|
||||
},
|
||||
"globals": {
|
||||
"React": "writable"
|
||||
|
|
|
|||
4
.gitignore
vendored
|
|
@ -34,9 +34,7 @@ yarn-error.log*
|
|||
|
||||
# local env files
|
||||
.env
|
||||
.env.development.local
|
||||
.env.test.local
|
||||
.env.production.local
|
||||
.env.*
|
||||
|
||||
*.dev.yml
|
||||
|
||||
|
|
|
|||
|
|
@ -12,8 +12,8 @@ RUN yarn install --frozen-lockfile
|
|||
FROM node:18-alpine AS builder
|
||||
WORKDIR /app
|
||||
COPY --from=deps /app/node_modules ./node_modules
|
||||
COPY docker/middleware.js .
|
||||
COPY . .
|
||||
COPY docker/middleware.js ./src
|
||||
|
||||
ARG DATABASE_TYPE
|
||||
ARG BASE_PATH
|
||||
|
|
@ -53,6 +53,7 @@ USER nextjs
|
|||
|
||||
EXPOSE 3000
|
||||
|
||||
ENV HOSTNAME 0.0.0.0
|
||||
ENV PORT 3000
|
||||
|
||||
CMD ["yarn", "start-docker"]
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ A detailed getting started guide can be found at [https://umami.is/docs/](https:
|
|||
|
||||
### Requirements
|
||||
|
||||
- A server with Node.js version 12 or newer
|
||||
- A server with Node.js version 16.13 or newer
|
||||
- A database. Umami supports [MySQL](https://www.mysql.com/) and [Postgresql](https://www.postgresql.org/) databases.
|
||||
|
||||
### Install Yarn
|
||||
|
|
|
|||
|
|
@ -1,23 +0,0 @@
|
|||
import useDateRange from 'hooks/useDateRange';
|
||||
import DateFilter from './DateFilter';
|
||||
import styles from './WebsiteDateFilter.module.css';
|
||||
|
||||
export default function WebsiteDateFilter({ websiteId }) {
|
||||
const [dateRange, setDateRange] = useDateRange(websiteId);
|
||||
const { value, startDate, endDate } = dateRange;
|
||||
|
||||
const handleChange = async value => {
|
||||
setDateRange(value);
|
||||
};
|
||||
|
||||
return (
|
||||
<DateFilter
|
||||
className={styles.dropdown}
|
||||
value={value}
|
||||
startDate={startDate}
|
||||
endDate={endDate}
|
||||
onChange={handleChange}
|
||||
showAllTime={true}
|
||||
/>
|
||||
);
|
||||
}
|
||||
|
|
@ -1,3 +0,0 @@
|
|||
.dropdown {
|
||||
min-width: 200px;
|
||||
}
|
||||
|
|
@ -1,32 +0,0 @@
|
|||
import MetricsTable from './MetricsTable';
|
||||
import { emptyFilter } from 'lib/filters';
|
||||
import FilterLink from 'components/common/FilterLink';
|
||||
import useLocale from 'hooks/useLocale';
|
||||
import useMessages from 'hooks/useMessages';
|
||||
|
||||
export function CitiesTable({ websiteId, ...props }) {
|
||||
const { locale } = useLocale();
|
||||
const { formatMessage, labels } = useMessages();
|
||||
|
||||
function renderLink({ x }) {
|
||||
return (
|
||||
<div className={locale}>
|
||||
<FilterLink id="city" value={x} />
|
||||
</div>
|
||||
);
|
||||
}
|
||||
|
||||
return (
|
||||
<MetricsTable
|
||||
{...props}
|
||||
title={formatMessage(labels.cities)}
|
||||
type="city"
|
||||
metric={formatMessage(labels.visitors)}
|
||||
websiteId={websiteId}
|
||||
dataFilter={emptyFilter}
|
||||
renderLabel={renderLink}
|
||||
/>
|
||||
);
|
||||
}
|
||||
|
||||
export default CitiesTable;
|
||||
|
|
@ -1,26 +0,0 @@
|
|||
import { Loading } from 'react-basics';
|
||||
import useApi from 'hooks/useApi';
|
||||
import WebsitesTable from 'components/pages/settings/websites/WebsitesTable';
|
||||
import useMessages from 'hooks/useMessages';
|
||||
|
||||
export function UserWebsites({ userId }) {
|
||||
const { formatMessage, messages } = useMessages();
|
||||
const { get, useQuery } = useApi();
|
||||
const { data, isLoading } = useQuery(['user:websites', userId], () =>
|
||||
get(`/users/${userId}/websites`),
|
||||
);
|
||||
const hasData = data && data.length !== 0;
|
||||
|
||||
if (isLoading) {
|
||||
return <Loading icon="dots" style={{ minHeight: 300 }} />;
|
||||
}
|
||||
|
||||
return (
|
||||
<div>
|
||||
{hasData && <WebsitesTable data={data} />}
|
||||
{!hasData && formatMessage(messages.noDataAvailable)}
|
||||
</div>
|
||||
);
|
||||
}
|
||||
|
||||
export default UserWebsites;
|
||||
|
|
@ -1,24 +0,0 @@
|
|||
import { TextArea } from 'react-basics';
|
||||
import useMessages from 'hooks/useMessages';
|
||||
import useConfig from 'hooks/useConfig';
|
||||
|
||||
export function TrackingCode({ websiteId }) {
|
||||
const { formatMessage, messages } = useMessages();
|
||||
const { basePath, trackerScriptName } = useConfig();
|
||||
const url = trackerScriptName?.startsWith('http')
|
||||
? trackerScriptName
|
||||
: `${location.origin}${basePath}/${
|
||||
trackerScriptName?.split(',')?.map(n => n.trim())?.[0] || 'script.js'
|
||||
}`;
|
||||
|
||||
const code = `<script async src="${url}" data-website-id="${websiteId}"></script>`;
|
||||
|
||||
return (
|
||||
<>
|
||||
<p>{formatMessage(messages.trackingCode)}</p>
|
||||
<TextArea rows={4} value={code} readOnly allowCopy />
|
||||
</>
|
||||
);
|
||||
}
|
||||
|
||||
export default TrackingCode;
|
||||
|
|
@ -66,7 +66,7 @@ CREATE TABLE umami.website_event_queue (
|
|||
)
|
||||
ENGINE = Kafka
|
||||
SETTINGS kafka_broker_list = 'domain:9092,domain:9093,domain:9094', -- input broker list
|
||||
kafka_topic_list = 'events',
|
||||
kafka_topic_list = 'event',
|
||||
kafka_group_name = 'event_consumer_group',
|
||||
kafka_format = 'JSONEachRow',
|
||||
kafka_max_block_size = 1048576,
|
||||
|
|
|
|||
|
|
@ -1,30 +0,0 @@
|
|||
import { useEffect } from 'react';
|
||||
import { useRouter } from 'next/router';
|
||||
import useApi from 'hooks/useApi';
|
||||
import useUser from 'hooks/useUser';
|
||||
|
||||
export function useRequireLogin() {
|
||||
const router = useRouter();
|
||||
const { get } = useApi();
|
||||
const { user, setUser } = useUser();
|
||||
|
||||
useEffect(() => {
|
||||
async function loadUser() {
|
||||
try {
|
||||
const { user } = await get('/auth/verify');
|
||||
|
||||
setUser(user);
|
||||
} catch {
|
||||
await router.push('/login');
|
||||
}
|
||||
}
|
||||
|
||||
if (!user) {
|
||||
loadUser();
|
||||
}
|
||||
}, [user]);
|
||||
|
||||
return { user };
|
||||
}
|
||||
|
||||
export default useRequireLogin;
|
||||
|
|
@ -1,5 +1,5 @@
|
|||
{
|
||||
"compilerOptions": {
|
||||
"baseUrl": "."
|
||||
"baseUrl": "./src"
|
||||
}
|
||||
}
|
||||
211
lang/ja-JP.json
|
|
@ -1,211 +0,0 @@
|
|||
{
|
||||
"label.access-code": "Access code",
|
||||
"label.actions": "アクション",
|
||||
"label.activity-log": "Activity log",
|
||||
"label.add": "Add",
|
||||
"label.add-description": "Add description",
|
||||
"label.add-website": "Webサイトの追加",
|
||||
"label.admin": "管理者",
|
||||
"label.after": "After",
|
||||
"label.all": "すべて表示",
|
||||
"label.all-time": "All time",
|
||||
"label.analytics": "Analytics",
|
||||
"label.average": "Average",
|
||||
"label.average-visit-time": "平均滞在時間",
|
||||
"label.back": "戻る",
|
||||
"label.before": "Before",
|
||||
"label.bounce-rate": "直帰率",
|
||||
"label.breakdown": "Breakdown",
|
||||
"label.browser": "Browser",
|
||||
"label.browsers": "ブラウザ",
|
||||
"label.cancel": "キャンセル",
|
||||
"label.change-password": "パスワード変更",
|
||||
"label.cities": "Cities",
|
||||
"label.city": "City",
|
||||
"label.clear-all": "Clear all",
|
||||
"label.confirm": "Confirm",
|
||||
"label.confirm-password": "パスワード(確認)",
|
||||
"label.contains": "Contains",
|
||||
"label.continue": "Continue",
|
||||
"label.countries": "国",
|
||||
"label.country": "Country",
|
||||
"label.create-report": "Create report",
|
||||
"label.create-team": "Create team",
|
||||
"label.create-user": "Create user",
|
||||
"label.created": "Created",
|
||||
"label.current-password": "現在のパスワード",
|
||||
"label.custom-range": "期間を指定する",
|
||||
"label.dashboard": "ダッシュボード",
|
||||
"label.data": "Data",
|
||||
"label.date": "Date",
|
||||
"label.date-range": "範囲指定",
|
||||
"label.day": "Day",
|
||||
"label.default-date-range": "最初に表示する期間",
|
||||
"label.delete": "削除",
|
||||
"label.delete-team": "Delete team",
|
||||
"label.delete-user": "Delete user",
|
||||
"label.delete-website": "Webサイトの削除",
|
||||
"label.description": "Description",
|
||||
"label.desktop": "デスクトップ",
|
||||
"label.details": "Details",
|
||||
"label.device": "Device",
|
||||
"label.devices": "デバイス",
|
||||
"label.dismiss": "無視する",
|
||||
"label.does-not-contain": "Does not contain",
|
||||
"label.domain": "ドメイン",
|
||||
"label.dropoff": "Dropoff",
|
||||
"label.edit": "編集",
|
||||
"label.edit-dashboard": "Edit dashboard",
|
||||
"label.enable-share-url": "共有リンクを有効にする",
|
||||
"label.event": "Event",
|
||||
"label.event-data": "Event data",
|
||||
"label.events": "イベント",
|
||||
"label.false": "False",
|
||||
"label.field": "Field",
|
||||
"label.fields": "Fields",
|
||||
"label.filter-combined": "パスまで",
|
||||
"label.filter-raw": "すべて表示",
|
||||
"label.filters": "Filters",
|
||||
"label.funnel": "Funnel",
|
||||
"label.greater-than": "Greater than",
|
||||
"label.greater-than-equals": "Greater than or equals",
|
||||
"label.insights": "Insights",
|
||||
"label.is": "Is",
|
||||
"label.is-not": "Is not",
|
||||
"label.is-not-set": "Is not set",
|
||||
"label.is-set": "Is set",
|
||||
"label.join": "Join",
|
||||
"label.join-team": "Join team",
|
||||
"label.language": "Language",
|
||||
"label.languages": "Languages",
|
||||
"label.laptop": "ノートPC",
|
||||
"label.last-days": "過去{x}日間",
|
||||
"label.last-hours": "過去{x}時間",
|
||||
"label.leave": "Leave",
|
||||
"label.leave-team": "Leave team",
|
||||
"label.less-than": "Less than",
|
||||
"label.less-than-equals": "Less than or equals",
|
||||
"label.login": "ログイン",
|
||||
"label.logout": "ログアウト",
|
||||
"label.max": "Max",
|
||||
"label.members": "Members",
|
||||
"label.min": "Min",
|
||||
"label.mobile": "携帯電話",
|
||||
"label.more": "さらに表示",
|
||||
"label.my-websites": "My websites",
|
||||
"label.name": "名前",
|
||||
"label.new-password": "新しいパスワード",
|
||||
"label.none": "None",
|
||||
"label.os": "OS",
|
||||
"label.overview": "Overview",
|
||||
"label.owner": "Owner",
|
||||
"label.page-of": "Page {current} of {total}",
|
||||
"label.page-views": "閲覧数",
|
||||
"label.pageTitle": "Page title",
|
||||
"label.pages": "ページ",
|
||||
"label.password": "パスワード",
|
||||
"label.powered-by": "このシステムは {name} で実行されています。",
|
||||
"label.profile": "プロファイル",
|
||||
"label.queries": "Queries",
|
||||
"label.query": "Query",
|
||||
"label.query-parameters": "Query parameters",
|
||||
"label.realtime": "リアルタイム",
|
||||
"label.referrer": "Referrer",
|
||||
"label.referrers": "リファラー",
|
||||
"label.refresh": "更新",
|
||||
"label.regenerate": "Regenerate",
|
||||
"label.region": "Region",
|
||||
"label.regions": "Regions",
|
||||
"label.remove": "Remove",
|
||||
"label.reports": "Reports",
|
||||
"label.required": "必須",
|
||||
"label.reset": "リセット",
|
||||
"label.reset-website": "Reset statistics",
|
||||
"label.retention": "Retention",
|
||||
"label.role": "Role",
|
||||
"label.run-query": "Run query",
|
||||
"label.save": "保存",
|
||||
"label.screens": "Screens",
|
||||
"label.select-date": "Select date",
|
||||
"label.select-website": "Select website",
|
||||
"label.sessions": "Sessions",
|
||||
"label.settings": "設定",
|
||||
"label.share-url": "共有リンク",
|
||||
"label.single-day": "一日のみ",
|
||||
"label.sum": "Sum",
|
||||
"label.tablet": "タブレット",
|
||||
"label.team": "Team",
|
||||
"label.team-guest": "Team guest",
|
||||
"label.team-id": "Team ID",
|
||||
"label.team-member": "Team member",
|
||||
"label.team-name": "Team name",
|
||||
"label.team-owner": "Team owner",
|
||||
"label.team-websites": "Team websites",
|
||||
"label.teams": "Teams",
|
||||
"label.theme": "Theme",
|
||||
"label.this-month": "今月",
|
||||
"label.this-week": "今週",
|
||||
"label.this-year": "今年",
|
||||
"label.timezone": "タイムゾーン",
|
||||
"label.title": "Title",
|
||||
"label.today": "今日",
|
||||
"label.toggle-charts": "Toggle charts",
|
||||
"label.total": "Total",
|
||||
"label.total-records": "Total records",
|
||||
"label.tracking-code": "トラッキングコード",
|
||||
"label.true": "True",
|
||||
"label.type": "Type",
|
||||
"label.unique": "Unique",
|
||||
"label.unique-visitors": "ユニーク訪問者数",
|
||||
"label.unknown": "不明",
|
||||
"label.untitled": "Untitled",
|
||||
"label.url": "URL",
|
||||
"label.urls": "URLs",
|
||||
"label.user": "User",
|
||||
"label.username": "ユーザー名",
|
||||
"label.users": "Users",
|
||||
"label.value": "Value",
|
||||
"label.view": "View",
|
||||
"label.view-details": "詳細を見る",
|
||||
"label.view-only": "View only",
|
||||
"label.views": "閲覧数",
|
||||
"label.visitors": "訪問者数",
|
||||
"label.website": "Website",
|
||||
"label.website-id": "Website ID",
|
||||
"label.websites": "Webサイト",
|
||||
"label.window": "Window",
|
||||
"label.yesterday": "Yesterday",
|
||||
"message.active-users": "{x}人が閲覧中です。",
|
||||
"message.confirm-delete": "{target}を削除してもよろしいですか?",
|
||||
"message.confirm-leave": "Are you sure you want to leave {target}?",
|
||||
"message.confirm-reset": "Are your sure you want to reset {target}'s statistics?",
|
||||
"message.delete-account": "To delete this account, type {confirmation} in the box below to confirm.",
|
||||
"message.delete-website": "To delete this website, type {confirmation} in the box below to confirm.",
|
||||
"message.delete-website-warning": "関連するすべてのデータも削除されます。",
|
||||
"message.error": "問題が発生しました。",
|
||||
"message.event-log": "{event} on {url}",
|
||||
"message.go-to-settings": "設定する",
|
||||
"message.incorrect-username-password": "ユーザー名/パスワードが正しくありません。",
|
||||
"message.invalid-domain": "無効なドメイン",
|
||||
"message.min-password-length": "Minimum length of {n} characters",
|
||||
"message.new-version-available": "A new version of Umami {version} is available!",
|
||||
"message.no-data-available": "データがありません。",
|
||||
"message.no-event-data": "No event data is available.",
|
||||
"message.no-match-password": "パスワードが一致しません",
|
||||
"message.no-results-found": "No results were found.",
|
||||
"message.no-team-websites": "This team does not have any websites.",
|
||||
"message.no-teams": "You have not created any teams.",
|
||||
"message.no-users": "There are no users.",
|
||||
"message.no-websites-configured": "Webサイトが設定されていません。",
|
||||
"message.page-not-found": "ページが見つかりません。",
|
||||
"message.reset-website": "To reset this website, type {confirmation} in the box below to confirm.",
|
||||
"message.reset-website-warning": "All statistics for this website will be deleted, but your tracking code will remain intact.",
|
||||
"message.saved": "正常に保存されました。",
|
||||
"message.share-url": "これは{target}の共有リンクです。",
|
||||
"message.team-already-member": "You are already a member of the team.",
|
||||
"message.team-not-found": "Team not found.",
|
||||
"message.team-websites-info": "Websites can be viewed by anyone on the team.",
|
||||
"message.tracking-code": "トラッキングコード",
|
||||
"message.user-deleted": "User deleted.",
|
||||
"message.visitor-log": "{os}({device})で{browser}を使用している{country}からの訪問者"
|
||||
}
|
||||
211
lang/sl-SI.json
|
|
@ -1,211 +0,0 @@
|
|||
{
|
||||
"label.access-code": "Access code",
|
||||
"label.actions": "Dejanja",
|
||||
"label.activity-log": "Activity log",
|
||||
"label.add": "Add",
|
||||
"label.add-description": "Add description",
|
||||
"label.add-website": "Dodaj spletno mesto",
|
||||
"label.admin": "Administrator",
|
||||
"label.after": "After",
|
||||
"label.all": "Vse",
|
||||
"label.all-time": "All time",
|
||||
"label.analytics": "Analytics",
|
||||
"label.average": "Average",
|
||||
"label.average-visit-time": "Povprečni čas obiska",
|
||||
"label.back": "Nazaj",
|
||||
"label.before": "Before",
|
||||
"label.bounce-rate": "Zapustna stopnja",
|
||||
"label.breakdown": "Breakdown",
|
||||
"label.browser": "Browser",
|
||||
"label.browsers": "Brskalniki",
|
||||
"label.cancel": "Prekliči",
|
||||
"label.change-password": "Zamenjaj geslo",
|
||||
"label.cities": "Cities",
|
||||
"label.city": "City",
|
||||
"label.clear-all": "Clear all",
|
||||
"label.confirm": "Confirm",
|
||||
"label.confirm-password": "Potrditev gesla",
|
||||
"label.contains": "Contains",
|
||||
"label.continue": "Continue",
|
||||
"label.countries": "Države",
|
||||
"label.country": "Country",
|
||||
"label.create-report": "Create report",
|
||||
"label.create-team": "Create team",
|
||||
"label.create-user": "Create user",
|
||||
"label.created": "Created",
|
||||
"label.current-password": "Trenutno geslo",
|
||||
"label.custom-range": "Razpon po meri",
|
||||
"label.dashboard": "Nadzorna plošča",
|
||||
"label.data": "Data",
|
||||
"label.date": "Date",
|
||||
"label.date-range": "Časovni razpon",
|
||||
"label.day": "Day",
|
||||
"label.default-date-range": "Privzeti časovni razpon",
|
||||
"label.delete": "Izbriši",
|
||||
"label.delete-team": "Delete team",
|
||||
"label.delete-user": "Delete user",
|
||||
"label.delete-website": "Izbriši spletno mesto",
|
||||
"label.description": "Description",
|
||||
"label.desktop": "Namizni računalnik",
|
||||
"label.details": "Details",
|
||||
"label.device": "Device",
|
||||
"label.devices": "Naprave",
|
||||
"label.dismiss": "Opusti",
|
||||
"label.does-not-contain": "Does not contain",
|
||||
"label.domain": "Domena",
|
||||
"label.dropoff": "Dropoff",
|
||||
"label.edit": "Uredi",
|
||||
"label.edit-dashboard": "Edit dashboard",
|
||||
"label.enable-share-url": "Omogoči URL za skupno rabo",
|
||||
"label.event": "Event",
|
||||
"label.event-data": "Event data",
|
||||
"label.events": "Dogodki",
|
||||
"label.false": "False",
|
||||
"label.field": "Field",
|
||||
"label.fields": "Fields",
|
||||
"label.filter-combined": "Skupno",
|
||||
"label.filter-raw": "Neobdelane meritve",
|
||||
"label.filters": "Filters",
|
||||
"label.funnel": "Funnel",
|
||||
"label.greater-than": "Greater than",
|
||||
"label.greater-than-equals": "Greater than or equals",
|
||||
"label.insights": "Insights",
|
||||
"label.is": "Is",
|
||||
"label.is-not": "Is not",
|
||||
"label.is-not-set": "Is not set",
|
||||
"label.is-set": "Is set",
|
||||
"label.join": "Join",
|
||||
"label.join-team": "Join team",
|
||||
"label.language": "Language",
|
||||
"label.languages": "Languages",
|
||||
"label.laptop": "Prenosni računalnik",
|
||||
"label.last-days": "Zadnjih {x} dni",
|
||||
"label.last-hours": "Zadnjih {x} ur",
|
||||
"label.leave": "Leave",
|
||||
"label.leave-team": "Leave team",
|
||||
"label.less-than": "Less than",
|
||||
"label.less-than-equals": "Less than or equals",
|
||||
"label.login": "Prijava",
|
||||
"label.logout": "Odjava",
|
||||
"label.max": "Max",
|
||||
"label.members": "Members",
|
||||
"label.min": "Min",
|
||||
"label.mobile": "Mobilni telefon",
|
||||
"label.more": "Več",
|
||||
"label.my-websites": "My websites",
|
||||
"label.name": "Ime",
|
||||
"label.new-password": "Novo geslo",
|
||||
"label.none": "None",
|
||||
"label.os": "OS",
|
||||
"label.overview": "Overview",
|
||||
"label.owner": "Owner",
|
||||
"label.page-of": "Page {current} of {total}",
|
||||
"label.page-views": "Ogledi strani",
|
||||
"label.pageTitle": "Page title",
|
||||
"label.pages": "Strani",
|
||||
"label.password": "Geslo",
|
||||
"label.powered-by": "Zagotavlja {name}",
|
||||
"label.profile": "Profil",
|
||||
"label.queries": "Queries",
|
||||
"label.query": "Query",
|
||||
"label.query-parameters": "Query parameters",
|
||||
"label.realtime": "V realnem času",
|
||||
"label.referrer": "Referrer",
|
||||
"label.referrers": "Viri",
|
||||
"label.refresh": "Osveži",
|
||||
"label.regenerate": "Regenerate",
|
||||
"label.region": "Region",
|
||||
"label.regions": "Regions",
|
||||
"label.remove": "Remove",
|
||||
"label.reports": "Reports",
|
||||
"label.required": "Zahtevano",
|
||||
"label.reset": "Ponastavi",
|
||||
"label.reset-website": "Reset statistics",
|
||||
"label.retention": "Retention",
|
||||
"label.role": "Role",
|
||||
"label.run-query": "Run query",
|
||||
"label.save": "Shrani",
|
||||
"label.screens": "Screens",
|
||||
"label.select-date": "Select date",
|
||||
"label.select-website": "Select website",
|
||||
"label.sessions": "Sessions",
|
||||
"label.settings": "Nastavitve",
|
||||
"label.share-url": "Deli URL",
|
||||
"label.single-day": "En dan",
|
||||
"label.sum": "Sum",
|
||||
"label.tablet": "Tablični računalnik",
|
||||
"label.team": "Team",
|
||||
"label.team-guest": "Team guest",
|
||||
"label.team-id": "Team ID",
|
||||
"label.team-member": "Team member",
|
||||
"label.team-name": "Team name",
|
||||
"label.team-owner": "Team owner",
|
||||
"label.team-websites": "Team websites",
|
||||
"label.teams": "Teams",
|
||||
"label.theme": "Theme",
|
||||
"label.this-month": "Ta mesec",
|
||||
"label.this-week": "Ta teden",
|
||||
"label.this-year": "Letos",
|
||||
"label.timezone": "Časovni pas",
|
||||
"label.title": "Title",
|
||||
"label.today": "Danes",
|
||||
"label.toggle-charts": "Toggle charts",
|
||||
"label.total": "Total",
|
||||
"label.total-records": "Total records",
|
||||
"label.tracking-code": "Koda za sledenje",
|
||||
"label.true": "True",
|
||||
"label.type": "Type",
|
||||
"label.unique": "Unique",
|
||||
"label.unique-visitors": "Unikatni obiskovalci",
|
||||
"label.unknown": "Neznano",
|
||||
"label.untitled": "Untitled",
|
||||
"label.url": "URL",
|
||||
"label.urls": "URLs",
|
||||
"label.user": "User",
|
||||
"label.username": "Uporabniško ime",
|
||||
"label.users": "Users",
|
||||
"label.value": "Value",
|
||||
"label.view": "View",
|
||||
"label.view-details": "Prikaži podrobnosti",
|
||||
"label.view-only": "View only",
|
||||
"label.views": "Ogledi",
|
||||
"label.visitors": "Obiskovalci",
|
||||
"label.website": "Website",
|
||||
"label.website-id": "Website ID",
|
||||
"label.websites": "Spletna mesta",
|
||||
"label.window": "Window",
|
||||
"label.yesterday": "Yesterday",
|
||||
"message.active-users": "{x} trenutni {x, plural, one {obiskovalec} other {obiskovalcev}}",
|
||||
"message.confirm-delete": "Ste prepričani, da želite izbrisati {target}?",
|
||||
"message.confirm-leave": "Are you sure you want to leave {target}?",
|
||||
"message.confirm-reset": "Are your sure you want to reset {target}'s statistics?",
|
||||
"message.delete-account": "To delete this account, type {confirmation} in the box below to confirm.",
|
||||
"message.delete-website": "To delete this website, type {confirmation} in the box below to confirm.",
|
||||
"message.delete-website-warning": "Izbrisani bodo tudi vsi povezani podatki.",
|
||||
"message.error": "Prišlo je do napake.",
|
||||
"message.event-log": "{event} on {url}",
|
||||
"message.go-to-settings": "Pojdi v nastavitve",
|
||||
"message.incorrect-username-password": "Nepravilno uporabniško ime/geslo",
|
||||
"message.invalid-domain": "Neveljavna domena",
|
||||
"message.min-password-length": "Minimum length of {n} characters",
|
||||
"message.new-version-available": "A new version of Umami {version} is available!",
|
||||
"message.no-data-available": "Podatki niso na voljo.",
|
||||
"message.no-event-data": "No event data is available.",
|
||||
"message.no-match-password": "Gesli se ne ujemata",
|
||||
"message.no-results-found": "No results were found.",
|
||||
"message.no-team-websites": "This team does not have any websites.",
|
||||
"message.no-teams": "You have not created any teams.",
|
||||
"message.no-users": "There are no users.",
|
||||
"message.no-websites-configured": "Ni nastavljenih spletnih mest.",
|
||||
"message.page-not-found": "Stran ni bila najdena.",
|
||||
"message.reset-website": "To reset this website, type {confirmation} in the box below to confirm.",
|
||||
"message.reset-website-warning": "All statistics for this website will be deleted, but your tracking code will remain intact.",
|
||||
"message.saved": "Uspešno shranjeno.",
|
||||
"message.share-url": "To je javno dostopen naslov URL za {target}.",
|
||||
"message.team-already-member": "You are already a member of the team.",
|
||||
"message.team-not-found": "Team not found.",
|
||||
"message.team-websites-info": "Websites can be viewed by anyone on the team.",
|
||||
"message.tracking-code": "Koda za sledenje",
|
||||
"message.user-deleted": "User deleted.",
|
||||
"message.visitor-log": "Obiskovalec iz {country} uporablja {browser} na {os} {device}"
|
||||
}
|
||||
211
lang/zh-TW.json
|
|
@ -1,211 +0,0 @@
|
|||
{
|
||||
"label.access-code": "Access code",
|
||||
"label.actions": "用戶行為",
|
||||
"label.activity-log": "Activity log",
|
||||
"label.add": "Add",
|
||||
"label.add-description": "Add description",
|
||||
"label.add-website": "增加網站",
|
||||
"label.admin": "管理員",
|
||||
"label.after": "After",
|
||||
"label.all": "所有",
|
||||
"label.all-time": "所有時間段",
|
||||
"label.analytics": "Analytics",
|
||||
"label.average": "Average",
|
||||
"label.average-visit-time": "平均訪問時間",
|
||||
"label.back": "返回",
|
||||
"label.before": "Before",
|
||||
"label.bounce-rate": "跳出率",
|
||||
"label.breakdown": "Breakdown",
|
||||
"label.browser": "Browser",
|
||||
"label.browsers": "瀏覽器",
|
||||
"label.cancel": "取消",
|
||||
"label.change-password": "更新密碼",
|
||||
"label.cities": "Cities",
|
||||
"label.city": "City",
|
||||
"label.clear-all": "Clear all",
|
||||
"label.confirm": "Confirm",
|
||||
"label.confirm-password": "確認密碼",
|
||||
"label.contains": "Contains",
|
||||
"label.continue": "Continue",
|
||||
"label.countries": "國家/地區",
|
||||
"label.country": "Country",
|
||||
"label.create-report": "Create report",
|
||||
"label.create-team": "Create team",
|
||||
"label.create-user": "Create user",
|
||||
"label.created": "Created",
|
||||
"label.current-password": "目前密碼",
|
||||
"label.custom-range": "自定義時段",
|
||||
"label.dashboard": "管理面板",
|
||||
"label.data": "Data",
|
||||
"label.date": "Date",
|
||||
"label.date-range": "多日",
|
||||
"label.day": "Day",
|
||||
"label.default-date-range": "默認日期範圍",
|
||||
"label.delete": "刪除",
|
||||
"label.delete-team": "Delete team",
|
||||
"label.delete-user": "Delete user",
|
||||
"label.delete-website": "刪除網站",
|
||||
"label.description": "Description",
|
||||
"label.desktop": "桌機",
|
||||
"label.details": "Details",
|
||||
"label.device": "Device",
|
||||
"label.devices": "裝置",
|
||||
"label.dismiss": "關閉",
|
||||
"label.does-not-contain": "Does not contain",
|
||||
"label.domain": "域名",
|
||||
"label.dropoff": "Dropoff",
|
||||
"label.edit": "編輯",
|
||||
"label.edit-dashboard": "編輯管理面板",
|
||||
"label.enable-share-url": "啟用分享連結",
|
||||
"label.event": "Event",
|
||||
"label.event-data": "Event data",
|
||||
"label.events": "行為類別",
|
||||
"label.false": "False",
|
||||
"label.field": "Field",
|
||||
"label.fields": "Fields",
|
||||
"label.filter-combined": "總和",
|
||||
"label.filter-raw": "原始",
|
||||
"label.filters": "Filters",
|
||||
"label.funnel": "Funnel",
|
||||
"label.greater-than": "Greater than",
|
||||
"label.greater-than-equals": "Greater than or equals",
|
||||
"label.insights": "Insights",
|
||||
"label.is": "Is",
|
||||
"label.is-not": "Is not",
|
||||
"label.is-not-set": "Is not set",
|
||||
"label.is-set": "Is set",
|
||||
"label.join": "Join",
|
||||
"label.join-team": "Join team",
|
||||
"label.language": "語言",
|
||||
"label.languages": "語言",
|
||||
"label.laptop": "筆記本",
|
||||
"label.last-days": "最近 {x} 天",
|
||||
"label.last-hours": "最近 {x} 小時",
|
||||
"label.leave": "Leave",
|
||||
"label.leave-team": "Leave team",
|
||||
"label.less-than": "Less than",
|
||||
"label.less-than-equals": "Less than or equals",
|
||||
"label.login": "登入",
|
||||
"label.logout": "退出",
|
||||
"label.max": "Max",
|
||||
"label.members": "Members",
|
||||
"label.min": "Min",
|
||||
"label.mobile": "手機",
|
||||
"label.more": "更多",
|
||||
"label.my-websites": "My websites",
|
||||
"label.name": "名字",
|
||||
"label.new-password": "新密碼",
|
||||
"label.none": "無",
|
||||
"label.os": "OS",
|
||||
"label.overview": "Overview",
|
||||
"label.owner": "擁有者",
|
||||
"label.page-of": "Page {current} of {total}",
|
||||
"label.page-views": "網頁流量",
|
||||
"label.pageTitle": "Page title",
|
||||
"label.pages": "網頁",
|
||||
"label.password": "密碼",
|
||||
"label.powered-by": "運行 {name}",
|
||||
"label.profile": "個人資料",
|
||||
"label.queries": "Queries",
|
||||
"label.query": "Query",
|
||||
"label.query-parameters": "查詢參數",
|
||||
"label.realtime": "實時",
|
||||
"label.referrer": "Referrer",
|
||||
"label.referrers": "指入域名",
|
||||
"label.refresh": "刷新",
|
||||
"label.regenerate": "Regenerate",
|
||||
"label.region": "Region",
|
||||
"label.regions": "Regions",
|
||||
"label.remove": "Remove",
|
||||
"label.reports": "Reports",
|
||||
"label.required": "必填",
|
||||
"label.reset": "重置",
|
||||
"label.reset-website": "重置統計數據",
|
||||
"label.retention": "Retention",
|
||||
"label.role": "Role",
|
||||
"label.run-query": "Run query",
|
||||
"label.save": "保存",
|
||||
"label.screens": "屏幕尺寸",
|
||||
"label.select-date": "Select date",
|
||||
"label.select-website": "Select website",
|
||||
"label.sessions": "Sessions",
|
||||
"label.settings": "設置",
|
||||
"label.share-url": "分享連結",
|
||||
"label.single-day": "單日",
|
||||
"label.sum": "Sum",
|
||||
"label.tablet": "平板",
|
||||
"label.team": "Team",
|
||||
"label.team-guest": "Team guest",
|
||||
"label.team-id": "Team ID",
|
||||
"label.team-member": "Team member",
|
||||
"label.team-name": "Team name",
|
||||
"label.team-owner": "Team owner",
|
||||
"label.team-websites": "Team websites",
|
||||
"label.teams": "Teams",
|
||||
"label.theme": "主題",
|
||||
"label.this-month": "本月",
|
||||
"label.this-week": "本週",
|
||||
"label.this-year": "今年",
|
||||
"label.timezone": "時區",
|
||||
"label.title": "Title",
|
||||
"label.today": "今天",
|
||||
"label.toggle-charts": "切換圖表",
|
||||
"label.total": "Total",
|
||||
"label.total-records": "Total records",
|
||||
"label.tracking-code": "追蹤代碼",
|
||||
"label.true": "True",
|
||||
"label.type": "Type",
|
||||
"label.unique": "Unique",
|
||||
"label.unique-visitors": "獨立訪客",
|
||||
"label.unknown": "未知",
|
||||
"label.untitled": "Untitled",
|
||||
"label.url": "URL",
|
||||
"label.urls": "URLs",
|
||||
"label.user": "User",
|
||||
"label.username": "用户名",
|
||||
"label.users": "Users",
|
||||
"label.value": "Value",
|
||||
"label.view": "View",
|
||||
"label.view-details": "查看更多",
|
||||
"label.view-only": "View only",
|
||||
"label.views": "頁面流量",
|
||||
"label.visitors": "獨立訪客",
|
||||
"label.website": "Website",
|
||||
"label.website-id": "Website ID",
|
||||
"label.websites": "網站",
|
||||
"label.window": "Window",
|
||||
"label.yesterday": "Yesterday",
|
||||
"message.active-users": "當前線上 {x} 人",
|
||||
"message.confirm-delete": "你確定要刪除 {target} 嗎?",
|
||||
"message.confirm-leave": "Are you sure you want to leave {target}?",
|
||||
"message.confirm-reset": "您確定要重置 {target} 的數據嗎?",
|
||||
"message.delete-account": "To delete this account, type {confirmation} in the box below to confirm.",
|
||||
"message.delete-website": "To delete this website, type {confirmation} in the box below to confirm.",
|
||||
"message.delete-website-warning": "所有相關數據將會被刪除。",
|
||||
"message.error": "出現錯誤。",
|
||||
"message.event-log": "{event} on {url}",
|
||||
"message.go-to-settings": "去設定",
|
||||
"message.incorrect-username-password": "用户名或密碼不正確。",
|
||||
"message.invalid-domain": "無效域名",
|
||||
"message.min-password-length": "Minimum length of {n} characters",
|
||||
"message.new-version-available": "A new version of Umami {version} is available!",
|
||||
"message.no-data-available": "無可用數據。",
|
||||
"message.no-event-data": "No event data is available.",
|
||||
"message.no-match-password": "密碼不一致",
|
||||
"message.no-results-found": "No results were found.",
|
||||
"message.no-team-websites": "This team does not have any websites.",
|
||||
"message.no-teams": "You have not created any teams.",
|
||||
"message.no-users": "There are no users.",
|
||||
"message.no-websites-configured": "目前無任何網站設定。",
|
||||
"message.page-not-found": "網頁未找到。",
|
||||
"message.reset-website": "To reset this website, type {confirmation} in the box below to confirm.",
|
||||
"message.reset-website-warning": "本網站的所有統計數據將被刪除,但您的跟蹤代碼將保持不變。",
|
||||
"message.saved": "成功保存。",
|
||||
"message.share-url": "這是 {target} 的分享連結。",
|
||||
"message.team-already-member": "You are already a member of the team.",
|
||||
"message.team-not-found": "Team not found.",
|
||||
"message.team-websites-info": "Websites can be viewed by anyone on the team.",
|
||||
"message.tracking-code": "追蹤代碼",
|
||||
"message.user-deleted": "User deleted.",
|
||||
"message.visitor-log": "來自{country}的訪客在搭載 {os} 的{device}上使用 {browser} 進行訪問。"
|
||||
}
|
||||
|
|
@ -1,5 +1,6 @@
|
|||
/* eslint-disable @typescript-eslint/no-var-requires */
|
||||
require('dotenv').config();
|
||||
const path = require('path');
|
||||
const pkg = require('./package.json');
|
||||
|
||||
const contentSecurityPolicy = `
|
||||
|
|
@ -58,7 +59,9 @@ if (process.env.TRACKER_SCRIPT_NAME) {
|
|||
const redirects = [
|
||||
{
|
||||
source: '/settings',
|
||||
destination: process.env.CLOUD_MODE ? '/settings/profile' : '/settings/websites',
|
||||
destination: process.env.CLOUD_MODE
|
||||
? `${process.env.CLOUD_URL}/settings/websites`
|
||||
: '/settings/websites',
|
||||
permanent: true,
|
||||
},
|
||||
];
|
||||
|
|
@ -73,6 +76,9 @@ if (process.env.CLOUD_MODE && process.env.CLOUD_URL && process.env.DISABLE_LOGIN
|
|||
|
||||
const config = {
|
||||
env: {
|
||||
cloudMode: process.env.CLOUD_MODE,
|
||||
cloudUrl: process.env.CLOUD_URL,
|
||||
configUrl: '/config',
|
||||
currentVersion: pkg.version,
|
||||
defaultLocale: process.env.DEFAULT_LOCALE,
|
||||
isProduction: process.env.NODE_ENV === 'production',
|
||||
|
|
@ -92,6 +98,8 @@ const config = {
|
|||
use: ['@svgr/webpack'],
|
||||
});
|
||||
|
||||
config.resolve.alias['public'] = path.resolve('./public');
|
||||
|
||||
return config;
|
||||
},
|
||||
async headers() {
|
||||
|
|
|
|||
23
package.components.json
Normal file
|
|
@ -0,0 +1,23 @@
|
|||
{
|
||||
"name": "@umami/components",
|
||||
"version": "0.1.0",
|
||||
"description": "Umami React components.",
|
||||
"author": "Mike Cao <mike@mikecao.com>",
|
||||
"license": "MIT",
|
||||
"type": "module",
|
||||
"main": "./index.js",
|
||||
"types": "./index.d.ts",
|
||||
"peerDependencies": {
|
||||
"@tanstack/react-query": "^4.33.0",
|
||||
"classnames": "^2.3.1",
|
||||
"colord": "^2.9.2",
|
||||
"immer": "^9.0.12",
|
||||
"moment-timezone": "^0.5.35",
|
||||
"next": "^13.4.0",
|
||||
"next-basics": "^0.36.0",
|
||||
"react": "^18.2.0",
|
||||
"react-dom": "^18.2.0",
|
||||
"react-intl": "^5.24.7",
|
||||
"zustand": "^4.3.8"
|
||||
}
|
||||
}
|
||||
62
package.json
|
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"name": "umami",
|
||||
"version": "2.5.0",
|
||||
"version": "2.7.0",
|
||||
"description": "A simple, fast, privacy-focused alternative to Google Analytics.",
|
||||
"author": "Mike Cao <mike@mikecao.com>",
|
||||
"license": "MIT",
|
||||
|
|
@ -18,9 +18,10 @@
|
|||
"start-env": "node scripts/start-env.js",
|
||||
"start-server": "node server.js",
|
||||
"build-app": "next build",
|
||||
"build-tracker": "rollup -c rollup.tracker.config.js",
|
||||
"build-components": "rollup -c rollup.components.config.mjs",
|
||||
"build-tracker": "rollup -c rollup.tracker.config.mjs",
|
||||
"build-db": "npm-run-all copy-db-files build-db-client",
|
||||
"build-lang": "npm-run-all format-lang compile-lang download-country-names download-language-names",
|
||||
"build-lang": "npm-run-all format-lang compile-lang clean-lang download-country-names download-language-names",
|
||||
"build-geo": "node scripts/build-geo.js",
|
||||
"build-db-schema": "prisma db pull",
|
||||
"build-db-client": "prisma generate",
|
||||
|
|
@ -29,11 +30,12 @@
|
|||
"check-db": "node scripts/check-db.js",
|
||||
"check-env": "node scripts/check-env.js",
|
||||
"copy-db-files": "node scripts/copy-db-files.js",
|
||||
"extract-messages": "formatjs extract \"{pages,components}/**/*.js\" --out-file build/messages.json",
|
||||
"extract-messages": "formatjs extract \"src/{pages,components}/**/*.js\" --out-file build/messages.json",
|
||||
"merge-messages": "node scripts/merge-messages.js",
|
||||
"generate-lang": "npm-run-all extract-messages merge-messages",
|
||||
"format-lang": "node scripts/format-lang.js",
|
||||
"compile-lang": "formatjs compile-folder --ast build/messages public/intl/messages",
|
||||
"clean-lang": "prettier --write ./public/intl/messages/*.json",
|
||||
"check-lang": "node scripts/check-lang.js",
|
||||
"download-country-names": "node scripts/download-country-names.js",
|
||||
"download-language-names": "node scripts/download-language-names.js",
|
||||
|
|
@ -60,12 +62,12 @@
|
|||
],
|
||||
"dependencies": {
|
||||
"@fontsource/inter": "^4.5.15",
|
||||
"@prisma/client": "5.0.0",
|
||||
"@prisma/client": "5.3.1",
|
||||
"@tanstack/react-query": "^4.33.0",
|
||||
"@umami/prisma-client": "^0.2.0",
|
||||
"@umami/redis-client": "^0.5.0",
|
||||
"chalk": "^4.1.2",
|
||||
"chart.js": "^4.3.3",
|
||||
"@umami/redis-client": "^0.15.0",
|
||||
"chalk": "^4.1.1",
|
||||
"chart.js": "^4.2.1",
|
||||
"chartjs-adapter-date-fns": "^3.0.0",
|
||||
"classnames": "^2.3.2",
|
||||
"clickhouse": "^2.6.0",
|
||||
|
|
@ -85,17 +87,17 @@
|
|||
"is-ci": "^3.0.1",
|
||||
"is-docker": "^3.0.0",
|
||||
"is-localhost-ip": "^1.4.0",
|
||||
"isbot": "^3.6.13",
|
||||
"kafkajs": "^2.2.4",
|
||||
"maxmind": "^4.3.11",
|
||||
"moment-timezone": "^0.5.43",
|
||||
"next": "13.3.1",
|
||||
"isbot": "^3.4.5",
|
||||
"kafkajs": "^2.1.0",
|
||||
"maxmind": "^4.3.6",
|
||||
"moment-timezone": "^0.5.35",
|
||||
"next": "13.5.2",
|
||||
"next-basics": "^0.36.0",
|
||||
"node-fetch": "^3.3.2",
|
||||
"npm-run-all": "^4.1.5",
|
||||
"react": "^18.2.0",
|
||||
"react-basics": "^0.98.0",
|
||||
"react-beautiful-dnd": "^13.1.1",
|
||||
"react-basics": "^0.100.0",
|
||||
"react-beautiful-dnd": "^13.1.0",
|
||||
"react-dom": "^18.2.0",
|
||||
"react-error-boundary": "^4.0.11",
|
||||
"react-intl": "^5.25.1",
|
||||
|
|
@ -115,15 +117,18 @@
|
|||
"@formatjs/cli": "^4.8.4",
|
||||
"@netlify/plugin-nextjs": "^4.40.0",
|
||||
"@rollup/plugin-alias": "^5.0.0",
|
||||
"@rollup/plugin-buble": "^0.21.3",
|
||||
"@rollup/plugin-commonjs": "^24.1.0",
|
||||
"@rollup/plugin-buble": "^1.0.2",
|
||||
"@rollup/plugin-commonjs": "^25.0.4",
|
||||
"@rollup/plugin-json": "^6.0.0",
|
||||
"@rollup/plugin-node-resolve": "^15.2.0",
|
||||
"@rollup/plugin-replace": "^4.0.0",
|
||||
"@svgr/rollup": "^7.0.0",
|
||||
"@svgr/webpack": "^6.5.1",
|
||||
"@typescript-eslint/eslint-plugin": "^5.62.0",
|
||||
"@typescript-eslint/parser": "^5.62.0",
|
||||
"@rollup/plugin-replace": "^5.0.2",
|
||||
"@svgr/rollup": "^8.1.0",
|
||||
"@svgr/webpack": "^6.2.1",
|
||||
"@types/node": "^18.11.9",
|
||||
"@types/react": "^18.0.25",
|
||||
"@types/react-dom": "^18.0.8",
|
||||
"@typescript-eslint/eslint-plugin": "^5.50.0",
|
||||
"@typescript-eslint/parser": "^5.50.0",
|
||||
"cross-env": "^7.0.3",
|
||||
"esbuild": "^0.17.19",
|
||||
"eslint": "^8.47.0",
|
||||
|
|
@ -139,15 +144,16 @@
|
|||
"postcss-flexbugs-fixes": "^5.0.2",
|
||||
"postcss-import": "^15.1.0",
|
||||
"postcss-preset-env": "7.8.3",
|
||||
"postcss-rtlcss": "^4.0.7",
|
||||
"prettier": "^2.8.8",
|
||||
"prisma": "5.0.0",
|
||||
"postcss-rtlcss": "^4.0.1",
|
||||
"prettier": "^2.6.2",
|
||||
"prisma": "5.3.1",
|
||||
"prompts": "2.4.2",
|
||||
"rollup": "^2.79.1",
|
||||
"rollup": "^3.28.0",
|
||||
"rollup-plugin-copy": "^3.4.0",
|
||||
"rollup-plugin-delete": "^2.0.0",
|
||||
"rollup-plugin-dts": "^5.3.1",
|
||||
"rollup-plugin-esbuild": "^5.0.0",
|
||||
"rollup-plugin-node-externals": "^5.1.3",
|
||||
"rollup-plugin-node-externals": "^6.1.1",
|
||||
"rollup-plugin-postcss": "^4.0.2",
|
||||
"rollup-plugin-terser": "^7.0.2",
|
||||
"stylelint": "^15.10.3",
|
||||
|
|
@ -156,6 +162,6 @@
|
|||
"stylelint-config-recommended": "^9.0.0",
|
||||
"tar": "^6.1.15",
|
||||
"ts-node": "^10.9.1",
|
||||
"typescript": "^4.9.5"
|
||||
"typescript": "^5.1.6"
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,56 +0,0 @@
|
|||
import { canViewWebsite } from 'lib/auth';
|
||||
import { useCors, useAuth } from 'lib/middleware';
|
||||
import { NextApiRequestQueryBody } from 'lib/types';
|
||||
import { NextApiResponse } from 'next';
|
||||
import { ok, methodNotAllowed, unauthorized } from 'next-basics';
|
||||
import { getInsights } from 'queries';
|
||||
|
||||
export interface InsightsRequestBody {
|
||||
websiteId: string;
|
||||
dateRange: {
|
||||
startDate: string;
|
||||
endDate: string;
|
||||
};
|
||||
fields: { name: string; type: string; value: string }[];
|
||||
filters: string[];
|
||||
groups: { name: string; type: string }[];
|
||||
}
|
||||
|
||||
function convertFilters(filters) {
|
||||
return filters.reduce((obj, { name, ...value }) => {
|
||||
obj[name] = value;
|
||||
|
||||
return obj;
|
||||
}, {});
|
||||
}
|
||||
|
||||
export default async (
|
||||
req: NextApiRequestQueryBody<any, InsightsRequestBody>,
|
||||
res: NextApiResponse,
|
||||
) => {
|
||||
await useCors(req, res);
|
||||
await useAuth(req, res);
|
||||
|
||||
if (req.method === 'POST') {
|
||||
const {
|
||||
websiteId,
|
||||
dateRange: { startDate, endDate },
|
||||
fields,
|
||||
filters,
|
||||
} = req.body;
|
||||
|
||||
if (!(await canViewWebsite(req.auth, websiteId))) {
|
||||
return unauthorized(res);
|
||||
}
|
||||
|
||||
const data = await getInsights(websiteId, fields, {
|
||||
...convertFilters(filters),
|
||||
startDate: new Date(startDate),
|
||||
endDate: new Date(endDate),
|
||||
});
|
||||
|
||||
return ok(res, data);
|
||||
}
|
||||
|
||||
return methodNotAllowed(res);
|
||||
};
|
||||
|
|
@ -1,175 +0,0 @@
|
|||
import isbot from 'isbot';
|
||||
import ipaddr from 'ipaddr.js';
|
||||
import { createToken, ok, send, badRequest, forbidden } from 'next-basics';
|
||||
import { saveEvent, saveSessionData } from 'queries';
|
||||
import { useCors, useSession } from 'lib/middleware';
|
||||
import { getJsonBody, getIpAddress } from 'lib/detect';
|
||||
import { secret } from 'lib/crypto';
|
||||
import { NextApiRequest, NextApiResponse } from 'next';
|
||||
import { Resolver } from 'dns/promises';
|
||||
import { CollectionType } from 'lib/types';
|
||||
import { COLLECTION_TYPE } from 'lib/constants';
|
||||
|
||||
export interface CollectRequestBody {
|
||||
payload: {
|
||||
data: { [key: string]: any };
|
||||
hostname: string;
|
||||
language: string;
|
||||
referrer: string;
|
||||
screen: string;
|
||||
title: string;
|
||||
url: string;
|
||||
website: string;
|
||||
name: string;
|
||||
};
|
||||
type: CollectionType;
|
||||
}
|
||||
|
||||
export interface NextApiRequestCollect extends NextApiRequest {
|
||||
body: CollectRequestBody;
|
||||
session: {
|
||||
id: string;
|
||||
websiteId: string;
|
||||
ownerId: string;
|
||||
hostname: string;
|
||||
browser: string;
|
||||
os: string;
|
||||
device: string;
|
||||
screen: string;
|
||||
language: string;
|
||||
country: string;
|
||||
subdivision1: string;
|
||||
subdivision2: string;
|
||||
city: string;
|
||||
};
|
||||
headers: { [key: string]: any };
|
||||
}
|
||||
|
||||
export default async (req: NextApiRequestCollect, res: NextApiResponse) => {
|
||||
await useCors(req, res);
|
||||
|
||||
if (isbot(req.headers['user-agent']) && !process.env.DISABLE_BOT_CHECK) {
|
||||
return ok(res);
|
||||
}
|
||||
|
||||
const { type, payload } = getJsonBody<CollectRequestBody>(req);
|
||||
|
||||
const error = validateBody({ type, payload });
|
||||
|
||||
if (error) {
|
||||
return badRequest(res, error);
|
||||
}
|
||||
|
||||
if (await hasBlockedIp(req)) {
|
||||
return forbidden(res);
|
||||
}
|
||||
|
||||
const { url, referrer, name: eventName, data: eventData, title: pageTitle } = payload;
|
||||
|
||||
await useSession(req, res);
|
||||
|
||||
const session = req.session;
|
||||
|
||||
if (type === COLLECTION_TYPE.event) {
|
||||
// eslint-disable-next-line prefer-const
|
||||
let [urlPath, urlQuery] = url?.split('?') || [];
|
||||
let [referrerPath, referrerQuery] = referrer?.split('?') || [];
|
||||
let referrerDomain;
|
||||
|
||||
if (!urlPath) {
|
||||
urlPath = '/';
|
||||
}
|
||||
|
||||
if (referrerPath?.startsWith('http')) {
|
||||
const refUrl = new URL(referrer);
|
||||
referrerPath = refUrl.pathname;
|
||||
referrerQuery = refUrl.search.substring(1);
|
||||
referrerDomain = refUrl.hostname.replace(/www\./, '');
|
||||
}
|
||||
|
||||
if (process.env.REMOVE_TRAILING_SLASH) {
|
||||
urlPath = urlPath.replace(/.+\/$/, '');
|
||||
}
|
||||
|
||||
await saveEvent({
|
||||
urlPath,
|
||||
urlQuery,
|
||||
referrerPath,
|
||||
referrerQuery,
|
||||
referrerDomain,
|
||||
pageTitle,
|
||||
eventName,
|
||||
eventData,
|
||||
...session,
|
||||
sessionId: session.id,
|
||||
});
|
||||
}
|
||||
|
||||
if (type === COLLECTION_TYPE.identify) {
|
||||
if (!eventData) {
|
||||
return badRequest(res, 'Data required.');
|
||||
}
|
||||
|
||||
await saveSessionData({ ...session, sessionData: eventData, sessionId: session.id });
|
||||
}
|
||||
|
||||
const token = createToken(session, secret());
|
||||
|
||||
return send(res, token);
|
||||
};
|
||||
|
||||
function validateBody({ type, payload }: CollectRequestBody) {
|
||||
if (!type || !payload) {
|
||||
return 'Invalid payload.';
|
||||
}
|
||||
|
||||
if (type !== COLLECTION_TYPE.event && type !== COLLECTION_TYPE.identify) {
|
||||
return 'Wrong payload type.';
|
||||
}
|
||||
|
||||
const { data } = payload;
|
||||
|
||||
if (data && !(typeof data === 'object' && !Array.isArray(data))) {
|
||||
return 'Invalid event data.';
|
||||
}
|
||||
}
|
||||
|
||||
async function hasBlockedIp(req: NextApiRequestCollect) {
|
||||
const ignoreIps = process.env.IGNORE_IP;
|
||||
const ignoreHostnames = process.env.IGNORE_HOSTNAME;
|
||||
|
||||
if (ignoreIps || ignoreHostnames) {
|
||||
const ips = [];
|
||||
|
||||
if (ignoreIps) {
|
||||
ips.push(...ignoreIps.split(',').map(n => n.trim()));
|
||||
}
|
||||
|
||||
if (ignoreHostnames) {
|
||||
const resolver = new Resolver();
|
||||
const promises = ignoreHostnames
|
||||
.split(',')
|
||||
.map(n => resolver.resolve4(n.trim()).catch(() => {}));
|
||||
|
||||
await Promise.all(promises).then(resolvedIps => {
|
||||
ips.push(...resolvedIps.filter(n => n).flatMap(n => n as string[]));
|
||||
});
|
||||
}
|
||||
|
||||
const clientIp = getIpAddress(req);
|
||||
|
||||
return ips.find(ip => {
|
||||
if (ip === clientIp) return true;
|
||||
|
||||
// CIDR notation
|
||||
if (ip.indexOf('/') > 0) {
|
||||
const addr = ipaddr.parse(clientIp);
|
||||
const range = ipaddr.parseCIDR(ip);
|
||||
|
||||
if (addr.kind() === range[0].kind() && addr.match(range)) return true;
|
||||
}
|
||||
|
||||
return false;
|
||||
});
|
||||
}
|
||||
}
|
||||
|
|
@ -179,6 +179,12 @@
|
|||
"value": "Country"
|
||||
}
|
||||
],
|
||||
"label.create": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Create"
|
||||
}
|
||||
],
|
||||
"label.create-report": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -383,6 +389,12 @@
|
|||
"value": "Fields"
|
||||
}
|
||||
],
|
||||
"label.filter": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Filter"
|
||||
}
|
||||
],
|
||||
"label.filter-combined": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -407,6 +419,12 @@
|
|||
"value": "Funnel"
|
||||
}
|
||||
],
|
||||
"label.funnel-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Understand the conversion and drop-off rate of users."
|
||||
}
|
||||
],
|
||||
"label.greater-than": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -425,6 +443,12 @@
|
|||
"value": "Insights"
|
||||
}
|
||||
],
|
||||
"label.insights-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Dive deeper into your data by using segments and filters."
|
||||
}
|
||||
],
|
||||
"label.is": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -769,6 +793,12 @@
|
|||
"value": "Retention"
|
||||
}
|
||||
],
|
||||
"label.retention-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Measure your website stickiness by tracking how often users return."
|
||||
}
|
||||
],
|
||||
"label.role": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -793,6 +823,12 @@
|
|||
"value": "Screens"
|
||||
}
|
||||
],
|
||||
"label.search": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Search"
|
||||
}
|
||||
],
|
||||
"label.select-date": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
|
|||
|
|
@ -179,6 +179,12 @@
|
|||
"value": "Country"
|
||||
}
|
||||
],
|
||||
"label.create": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Create"
|
||||
}
|
||||
],
|
||||
"label.create-report": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -383,6 +389,12 @@
|
|||
"value": "Fields"
|
||||
}
|
||||
],
|
||||
"label.filter": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Filter"
|
||||
}
|
||||
],
|
||||
"label.filter-combined": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -407,6 +419,12 @@
|
|||
"value": "Funnel"
|
||||
}
|
||||
],
|
||||
"label.funnel-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Understand the conversion and drop-off rate of users."
|
||||
}
|
||||
],
|
||||
"label.greater-than": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -425,6 +443,12 @@
|
|||
"value": "Insights"
|
||||
}
|
||||
],
|
||||
"label.insights-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Dive deeper into your data by using segments and filters."
|
||||
}
|
||||
],
|
||||
"label.is": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -769,6 +793,12 @@
|
|||
"value": "Retention"
|
||||
}
|
||||
],
|
||||
"label.retention-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Measure your website stickiness by tracking how often users return."
|
||||
}
|
||||
],
|
||||
"label.role": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -793,6 +823,12 @@
|
|||
"value": "الشاشات"
|
||||
}
|
||||
],
|
||||
"label.search": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Search"
|
||||
}
|
||||
],
|
||||
"label.select-date": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
|
|||
|
|
@ -179,6 +179,12 @@
|
|||
"value": "Country"
|
||||
}
|
||||
],
|
||||
"label.create": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Create"
|
||||
}
|
||||
],
|
||||
"label.create-report": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -383,6 +389,12 @@
|
|||
"value": "Fields"
|
||||
}
|
||||
],
|
||||
"label.filter": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Filter"
|
||||
}
|
||||
],
|
||||
"label.filter-combined": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -407,6 +419,12 @@
|
|||
"value": "Funnel"
|
||||
}
|
||||
],
|
||||
"label.funnel-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Understand the conversion and drop-off rate of users."
|
||||
}
|
||||
],
|
||||
"label.greater-than": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -425,6 +443,12 @@
|
|||
"value": "Insights"
|
||||
}
|
||||
],
|
||||
"label.insights-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Dive deeper into your data by using segments and filters."
|
||||
}
|
||||
],
|
||||
"label.is": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -769,6 +793,12 @@
|
|||
"value": "Retention"
|
||||
}
|
||||
],
|
||||
"label.retention-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Measure your website stickiness by tracking how often users return."
|
||||
}
|
||||
],
|
||||
"label.role": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -793,6 +823,12 @@
|
|||
"value": "Экраны"
|
||||
}
|
||||
],
|
||||
"label.search": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Search"
|
||||
}
|
||||
],
|
||||
"label.select-date": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
|
|||
|
|
@ -179,6 +179,12 @@
|
|||
"value": "Country"
|
||||
}
|
||||
],
|
||||
"label.create": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Create"
|
||||
}
|
||||
],
|
||||
"label.create-report": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -383,6 +389,12 @@
|
|||
"value": "Fields"
|
||||
}
|
||||
],
|
||||
"label.filter": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Filter"
|
||||
}
|
||||
],
|
||||
"label.filter-combined": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -407,6 +419,12 @@
|
|||
"value": "Funnel"
|
||||
}
|
||||
],
|
||||
"label.funnel-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Understand the conversion and drop-off rate of users."
|
||||
}
|
||||
],
|
||||
"label.greater-than": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -425,6 +443,12 @@
|
|||
"value": "Insights"
|
||||
}
|
||||
],
|
||||
"label.insights-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Dive deeper into your data by using segments and filters."
|
||||
}
|
||||
],
|
||||
"label.is": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -769,6 +793,12 @@
|
|||
"value": "Retention"
|
||||
}
|
||||
],
|
||||
"label.retention-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Measure your website stickiness by tracking how often users return."
|
||||
}
|
||||
],
|
||||
"label.role": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -793,6 +823,12 @@
|
|||
"value": "স্ক্রিনগুলি"
|
||||
}
|
||||
],
|
||||
"label.search": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Search"
|
||||
}
|
||||
],
|
||||
"label.select-date": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
|
|||
|
|
@ -179,6 +179,12 @@
|
|||
"value": "Country"
|
||||
}
|
||||
],
|
||||
"label.create": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Create"
|
||||
}
|
||||
],
|
||||
"label.create-report": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -383,6 +389,12 @@
|
|||
"value": "Fields"
|
||||
}
|
||||
],
|
||||
"label.filter": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Filter"
|
||||
}
|
||||
],
|
||||
"label.filter-combined": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -407,6 +419,12 @@
|
|||
"value": "Funnel"
|
||||
}
|
||||
],
|
||||
"label.funnel-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Understand the conversion and drop-off rate of users."
|
||||
}
|
||||
],
|
||||
"label.greater-than": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -425,6 +443,12 @@
|
|||
"value": "Insights"
|
||||
}
|
||||
],
|
||||
"label.insights-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Dive deeper into your data by using segments and filters."
|
||||
}
|
||||
],
|
||||
"label.is": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -769,6 +793,12 @@
|
|||
"value": "Retention"
|
||||
}
|
||||
],
|
||||
"label.retention-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Measure your website stickiness by tracking how often users return."
|
||||
}
|
||||
],
|
||||
"label.role": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -793,6 +823,12 @@
|
|||
"value": "Screens"
|
||||
}
|
||||
],
|
||||
"label.search": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Search"
|
||||
}
|
||||
],
|
||||
"label.select-date": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
|
|||
|
|
@ -179,6 +179,12 @@
|
|||
"value": "Country"
|
||||
}
|
||||
],
|
||||
"label.create": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Create"
|
||||
}
|
||||
],
|
||||
"label.create-report": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -383,6 +389,12 @@
|
|||
"value": "Fields"
|
||||
}
|
||||
],
|
||||
"label.filter": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Filter"
|
||||
}
|
||||
],
|
||||
"label.filter-combined": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -407,6 +419,12 @@
|
|||
"value": "Funnel"
|
||||
}
|
||||
],
|
||||
"label.funnel-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Understand the conversion and drop-off rate of users."
|
||||
}
|
||||
],
|
||||
"label.greater-than": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -425,6 +443,12 @@
|
|||
"value": "Insights"
|
||||
}
|
||||
],
|
||||
"label.insights-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Dive deeper into your data by using segments and filters."
|
||||
}
|
||||
],
|
||||
"label.is": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -769,6 +793,12 @@
|
|||
"value": "Retention"
|
||||
}
|
||||
],
|
||||
"label.retention-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Measure your website stickiness by tracking how often users return."
|
||||
}
|
||||
],
|
||||
"label.role": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -793,6 +823,12 @@
|
|||
"value": "Screens"
|
||||
}
|
||||
],
|
||||
"label.search": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Search"
|
||||
}
|
||||
],
|
||||
"label.select-date": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
|
|||
|
|
@ -179,6 +179,12 @@
|
|||
"value": "Country"
|
||||
}
|
||||
],
|
||||
"label.create": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Create"
|
||||
}
|
||||
],
|
||||
"label.create-report": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -383,6 +389,12 @@
|
|||
"value": "Fields"
|
||||
}
|
||||
],
|
||||
"label.filter": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Filter"
|
||||
}
|
||||
],
|
||||
"label.filter-combined": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -407,6 +419,12 @@
|
|||
"value": "Funnel"
|
||||
}
|
||||
],
|
||||
"label.funnel-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Understand the conversion and drop-off rate of users."
|
||||
}
|
||||
],
|
||||
"label.greater-than": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -425,6 +443,12 @@
|
|||
"value": "Insights"
|
||||
}
|
||||
],
|
||||
"label.insights-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Dive deeper into your data by using segments and filters."
|
||||
}
|
||||
],
|
||||
"label.is": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -769,6 +793,12 @@
|
|||
"value": "Retention"
|
||||
}
|
||||
],
|
||||
"label.retention-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Measure your website stickiness by tracking how often users return."
|
||||
}
|
||||
],
|
||||
"label.role": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -793,6 +823,12 @@
|
|||
"value": "Screens"
|
||||
}
|
||||
],
|
||||
"label.search": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Search"
|
||||
}
|
||||
],
|
||||
"label.select-date": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
|
|||
|
|
@ -179,6 +179,12 @@
|
|||
"value": "Country"
|
||||
}
|
||||
],
|
||||
"label.create": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Create"
|
||||
}
|
||||
],
|
||||
"label.create-report": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -383,6 +389,12 @@
|
|||
"value": "Fields"
|
||||
}
|
||||
],
|
||||
"label.filter": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Filter"
|
||||
}
|
||||
],
|
||||
"label.filter-combined": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -407,6 +419,12 @@
|
|||
"value": "Funnel"
|
||||
}
|
||||
],
|
||||
"label.funnel-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Understand the conversion and drop-off rate of users."
|
||||
}
|
||||
],
|
||||
"label.greater-than": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -425,6 +443,12 @@
|
|||
"value": "Insights"
|
||||
}
|
||||
],
|
||||
"label.insights-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Dive deeper into your data by using segments and filters."
|
||||
}
|
||||
],
|
||||
"label.is": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -769,6 +793,12 @@
|
|||
"value": "Retention"
|
||||
}
|
||||
],
|
||||
"label.retention-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Measure your website stickiness by tracking how often users return."
|
||||
}
|
||||
],
|
||||
"label.role": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -793,6 +823,12 @@
|
|||
"value": "Bildschirmuflösige"
|
||||
}
|
||||
],
|
||||
"label.search": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Search"
|
||||
}
|
||||
],
|
||||
"label.select-date": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
|
|||
|
|
@ -20,7 +20,7 @@
|
|||
"label.add": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Add"
|
||||
"value": "Hinzufügen"
|
||||
}
|
||||
],
|
||||
"label.add-description": [
|
||||
|
|
@ -32,7 +32,7 @@
|
|||
"label.add-website": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Webseite hinzufügen"
|
||||
"value": "Website hinzufügen"
|
||||
}
|
||||
],
|
||||
"label.admin": [
|
||||
|
|
@ -44,7 +44,7 @@
|
|||
"label.after": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "After"
|
||||
"value": "Nach"
|
||||
}
|
||||
],
|
||||
"label.all": [
|
||||
|
|
@ -86,7 +86,7 @@
|
|||
"label.before": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Before"
|
||||
"value": "Vor"
|
||||
}
|
||||
],
|
||||
"label.bounce-rate": [
|
||||
|
|
@ -134,7 +134,7 @@
|
|||
"label.city": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "City"
|
||||
"value": "Stadt"
|
||||
}
|
||||
],
|
||||
"label.clear-all": [
|
||||
|
|
@ -158,7 +158,7 @@
|
|||
"label.contains": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Contains"
|
||||
"value": "Enthält"
|
||||
}
|
||||
],
|
||||
"label.continue": [
|
||||
|
|
@ -176,13 +176,19 @@
|
|||
"label.country": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Country"
|
||||
"value": "Land"
|
||||
}
|
||||
],
|
||||
"label.create": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Create"
|
||||
}
|
||||
],
|
||||
"label.create-report": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Report erstellen"
|
||||
"value": "Bericht erstellen"
|
||||
}
|
||||
],
|
||||
"label.create-team": [
|
||||
|
|
@ -230,7 +236,7 @@
|
|||
"label.date": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Date"
|
||||
"value": "Datum"
|
||||
}
|
||||
],
|
||||
"label.date-range": [
|
||||
|
|
@ -242,7 +248,7 @@
|
|||
"label.day": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Day"
|
||||
"value": "Tag"
|
||||
}
|
||||
],
|
||||
"label.default-date-range": [
|
||||
|
|
@ -272,7 +278,7 @@
|
|||
"label.delete-website": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Webseite löschen"
|
||||
"value": "Website löschen"
|
||||
}
|
||||
],
|
||||
"label.description": [
|
||||
|
|
@ -296,7 +302,7 @@
|
|||
"label.device": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Device"
|
||||
"value": "Gerät"
|
||||
}
|
||||
],
|
||||
"label.devices": [
|
||||
|
|
@ -314,7 +320,7 @@
|
|||
"label.does-not-contain": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Does not contain"
|
||||
"value": "Enthält nicht"
|
||||
}
|
||||
],
|
||||
"label.domain": [
|
||||
|
|
@ -356,7 +362,7 @@
|
|||
"label.event-data": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Event daten"
|
||||
"value": "Eventdaten"
|
||||
}
|
||||
],
|
||||
"label.events": [
|
||||
|
|
@ -368,19 +374,25 @@
|
|||
"label.false": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "False"
|
||||
"value": "Falsch"
|
||||
}
|
||||
],
|
||||
"label.field": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Field"
|
||||
"value": "Feld"
|
||||
}
|
||||
],
|
||||
"label.fields": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Fields"
|
||||
"value": "Felder"
|
||||
}
|
||||
],
|
||||
"label.filter": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Filter"
|
||||
}
|
||||
],
|
||||
"label.filter-combined": [
|
||||
|
|
@ -398,7 +410,7 @@
|
|||
"label.filters": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Filters"
|
||||
"value": "Filter"
|
||||
}
|
||||
],
|
||||
"label.funnel": [
|
||||
|
|
@ -407,6 +419,12 @@
|
|||
"value": "Funnel"
|
||||
}
|
||||
],
|
||||
"label.funnel-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Understand the conversion and drop-off rate of users."
|
||||
}
|
||||
],
|
||||
"label.greater-than": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -425,28 +443,34 @@
|
|||
"value": "Insights"
|
||||
}
|
||||
],
|
||||
"label.insights-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Dive deeper into your data by using segments and filters."
|
||||
}
|
||||
],
|
||||
"label.is": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Is"
|
||||
"value": "Ist"
|
||||
}
|
||||
],
|
||||
"label.is-not": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Is not"
|
||||
"value": "Ist nicht"
|
||||
}
|
||||
],
|
||||
"label.is-not-set": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Is not set"
|
||||
"value": "Ist nicht gesetzt"
|
||||
}
|
||||
],
|
||||
"label.is-set": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Is set"
|
||||
"value": "Ist gesetzt"
|
||||
}
|
||||
],
|
||||
"label.join": [
|
||||
|
|
@ -576,7 +600,7 @@
|
|||
"label.my-websites": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "My websites"
|
||||
"value": "Meine Websites"
|
||||
}
|
||||
],
|
||||
"label.name": [
|
||||
|
|
@ -618,7 +642,7 @@
|
|||
"label.page-of": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Page "
|
||||
"value": "Seite "
|
||||
},
|
||||
{
|
||||
"type": 1,
|
||||
|
|
@ -626,7 +650,7 @@
|
|||
},
|
||||
{
|
||||
"type": 0,
|
||||
"value": " of "
|
||||
"value": " von "
|
||||
},
|
||||
{
|
||||
"type": 1,
|
||||
|
|
@ -642,7 +666,7 @@
|
|||
"label.pageTitle": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Page title"
|
||||
"value": "Seitentitel"
|
||||
}
|
||||
],
|
||||
"label.pages": [
|
||||
|
|
@ -742,7 +766,7 @@
|
|||
"label.reports": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Reporte"
|
||||
"value": "Berichte"
|
||||
}
|
||||
],
|
||||
"label.required": [
|
||||
|
|
@ -769,6 +793,12 @@
|
|||
"value": "Retention"
|
||||
}
|
||||
],
|
||||
"label.retention-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Measure your website stickiness by tracking how often users return."
|
||||
}
|
||||
],
|
||||
"label.role": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -793,6 +823,12 @@
|
|||
"value": "Bildschirmauflösungen"
|
||||
}
|
||||
],
|
||||
"label.search": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Search"
|
||||
}
|
||||
],
|
||||
"label.select-date": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -808,7 +844,7 @@
|
|||
"label.sessions": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Sessions"
|
||||
"value": "Sitzungen"
|
||||
}
|
||||
],
|
||||
"label.settings": [
|
||||
|
|
@ -850,37 +886,37 @@
|
|||
"label.team-guest": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Team Gast"
|
||||
"value": "Gast des Teams"
|
||||
}
|
||||
],
|
||||
"label.team-id": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Team ID"
|
||||
"value": "Team-ID"
|
||||
}
|
||||
],
|
||||
"label.team-member": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Team Mitglied"
|
||||
"value": "Team-Mitglied"
|
||||
}
|
||||
],
|
||||
"label.team-name": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Team name"
|
||||
"value": "Name des Teams"
|
||||
}
|
||||
],
|
||||
"label.team-owner": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Team Eigentümer"
|
||||
"value": "Team-Eigentümer"
|
||||
}
|
||||
],
|
||||
"label.team-websites": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Team websites"
|
||||
"value": "Team-Websites"
|
||||
}
|
||||
],
|
||||
"label.teams": [
|
||||
|
|
@ -940,13 +976,13 @@
|
|||
"label.total": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Total"
|
||||
"value": "Gesamt"
|
||||
}
|
||||
],
|
||||
"label.total-records": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Total records"
|
||||
"value": "Datensätze insgesamt"
|
||||
}
|
||||
],
|
||||
"label.tracking-code": [
|
||||
|
|
@ -958,19 +994,19 @@
|
|||
"label.true": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "True"
|
||||
"value": "Wahr"
|
||||
}
|
||||
],
|
||||
"label.type": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Type"
|
||||
"value": "Typ"
|
||||
}
|
||||
],
|
||||
"label.unique": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Unique"
|
||||
"value": "Eindeutig"
|
||||
}
|
||||
],
|
||||
"label.unique-visitors": [
|
||||
|
|
@ -988,7 +1024,7 @@
|
|||
"label.untitled": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Untitled"
|
||||
"value": "Unbenannt"
|
||||
}
|
||||
],
|
||||
"label.url": [
|
||||
|
|
@ -1024,7 +1060,7 @@
|
|||
"label.value": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Value"
|
||||
"value": "Wert"
|
||||
}
|
||||
],
|
||||
"label.view": [
|
||||
|
|
@ -1042,7 +1078,7 @@
|
|||
"label.view-only": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "View only"
|
||||
"value": "Nur ansehen"
|
||||
}
|
||||
],
|
||||
"label.views": [
|
||||
|
|
@ -1060,25 +1096,25 @@
|
|||
"label.website": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Webseite"
|
||||
"value": "Website"
|
||||
}
|
||||
],
|
||||
"label.website-id": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Webseite ID"
|
||||
"value": "Website ID"
|
||||
}
|
||||
],
|
||||
"label.websites": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Webseiten"
|
||||
"value": "Websites"
|
||||
}
|
||||
],
|
||||
"label.window": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Window"
|
||||
"value": "Fenster"
|
||||
}
|
||||
],
|
||||
"label.yesterday": [
|
||||
|
|
@ -1166,7 +1202,7 @@
|
|||
"message.delete-account": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "To delete this account, type "
|
||||
"value": "Um dieses Konto zu löschen, geben Sie zur Bestätigung "
|
||||
},
|
||||
{
|
||||
"type": 1,
|
||||
|
|
@ -1174,13 +1210,13 @@
|
|||
},
|
||||
{
|
||||
"type": 0,
|
||||
"value": " in the box below to confirm."
|
||||
"value": " in das Feld unten ein."
|
||||
}
|
||||
],
|
||||
"message.delete-website": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "To delete this website, type "
|
||||
"value": "Um diese Website zu löschen, geben Sie zur Bestätigung "
|
||||
},
|
||||
{
|
||||
"type": 1,
|
||||
|
|
@ -1188,7 +1224,7 @@
|
|||
},
|
||||
{
|
||||
"type": 0,
|
||||
"value": " in the box below to confirm."
|
||||
"value": " in das Feld unten ein."
|
||||
}
|
||||
],
|
||||
"message.delete-website-warning": [
|
||||
|
|
@ -1238,7 +1274,7 @@
|
|||
"message.min-password-length": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Minimale länge von "
|
||||
"value": "Minimale Länge von "
|
||||
},
|
||||
{
|
||||
"type": 1,
|
||||
|
|
@ -1252,15 +1288,11 @@
|
|||
"message.new-version-available": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "A new version of Umami "
|
||||
"value": "Eine neue Version von Umami ist verfügbar: "
|
||||
},
|
||||
{
|
||||
"type": 1,
|
||||
"value": "version"
|
||||
},
|
||||
{
|
||||
"type": 0,
|
||||
"value": " is available!"
|
||||
}
|
||||
],
|
||||
"message.no-data-available": [
|
||||
|
|
@ -1272,7 +1304,7 @@
|
|||
"message.no-event-data": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "No event data is available."
|
||||
"value": "Es sind keine Ereignisdaten verfügbar."
|
||||
}
|
||||
],
|
||||
"message.no-match-password": [
|
||||
|
|
@ -1308,7 +1340,7 @@
|
|||
"message.no-websites-configured": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Es ist keine Webseite vorhanden."
|
||||
"value": "Es ist keine Website vorhanden."
|
||||
}
|
||||
],
|
||||
"message.page-not-found": [
|
||||
|
|
@ -1320,7 +1352,7 @@
|
|||
"message.reset-website": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "To reset this website, type "
|
||||
"value": "Um diese Website zurückzusetzen, geben Sie zur Bestätigung "
|
||||
},
|
||||
{
|
||||
"type": 1,
|
||||
|
|
@ -1328,13 +1360,13 @@
|
|||
},
|
||||
{
|
||||
"type": 0,
|
||||
"value": " in the box below to confirm."
|
||||
"value": " in das Feld unten ein."
|
||||
}
|
||||
],
|
||||
"message.reset-website-warning": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Alle Daten für diese Webseite werden gelöscht, jedoch bleibt der Tracking Code bestehen."
|
||||
"value": "Alle Daten für diese Website werden gelöscht, jedoch bleibt der Tracking Code bestehen."
|
||||
}
|
||||
],
|
||||
"message.saved": [
|
||||
|
|
@ -1346,7 +1378,7 @@
|
|||
"message.share-url": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Ihre Webseitenstatistik ist unter der folgenden URL öffentlich zugänglich:"
|
||||
"value": "Die Statistiken Ihrer Website sind unter folgender URL öffentlich zugänglich:"
|
||||
}
|
||||
],
|
||||
"message.team-already-member": [
|
||||
|
|
@ -1364,7 +1396,7 @@
|
|||
"message.team-websites-info": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Webseiten können von jedem im Team eingesehen werden."
|
||||
"value": "Websites können von jedem im Team eingesehen werden."
|
||||
}
|
||||
],
|
||||
"message.tracking-code": [
|
||||
|
|
|
|||
|
|
@ -179,6 +179,12 @@
|
|||
"value": "Country"
|
||||
}
|
||||
],
|
||||
"label.create": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Create"
|
||||
}
|
||||
],
|
||||
"label.create-report": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -383,6 +389,12 @@
|
|||
"value": "Fields"
|
||||
}
|
||||
],
|
||||
"label.filter": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Filter"
|
||||
}
|
||||
],
|
||||
"label.filter-combined": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -407,6 +419,12 @@
|
|||
"value": "Funnel"
|
||||
}
|
||||
],
|
||||
"label.funnel-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Understand the conversion and drop-off rate of users."
|
||||
}
|
||||
],
|
||||
"label.greater-than": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -425,6 +443,12 @@
|
|||
"value": "Insights"
|
||||
}
|
||||
],
|
||||
"label.insights-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Dive deeper into your data by using segments and filters."
|
||||
}
|
||||
],
|
||||
"label.is": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -769,6 +793,12 @@
|
|||
"value": "Retention"
|
||||
}
|
||||
],
|
||||
"label.retention-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Measure your website stickiness by tracking how often users return."
|
||||
}
|
||||
],
|
||||
"label.role": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -793,6 +823,12 @@
|
|||
"value": "Screens"
|
||||
}
|
||||
],
|
||||
"label.search": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Search"
|
||||
}
|
||||
],
|
||||
"label.select-date": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
|
|||
|
|
@ -179,6 +179,12 @@
|
|||
"value": "Country"
|
||||
}
|
||||
],
|
||||
"label.create": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Create"
|
||||
}
|
||||
],
|
||||
"label.create-report": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -383,6 +389,12 @@
|
|||
"value": "Fields"
|
||||
}
|
||||
],
|
||||
"label.filter": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Filter"
|
||||
}
|
||||
],
|
||||
"label.filter-combined": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -407,6 +419,12 @@
|
|||
"value": "Funnel"
|
||||
}
|
||||
],
|
||||
"label.funnel-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Understand the conversion and drop-off rate of users."
|
||||
}
|
||||
],
|
||||
"label.greater-than": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -425,6 +443,12 @@
|
|||
"value": "Insights"
|
||||
}
|
||||
],
|
||||
"label.insights-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Dive deeper into your data by using segments and filters."
|
||||
}
|
||||
],
|
||||
"label.is": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -769,6 +793,12 @@
|
|||
"value": "Retention"
|
||||
}
|
||||
],
|
||||
"label.retention-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Measure your website stickiness by tracking how often users return."
|
||||
}
|
||||
],
|
||||
"label.role": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -793,6 +823,12 @@
|
|||
"value": "Screens"
|
||||
}
|
||||
],
|
||||
"label.search": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Search"
|
||||
}
|
||||
],
|
||||
"label.select-date": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
|
|||
|
|
@ -179,6 +179,12 @@
|
|||
"value": "Country"
|
||||
}
|
||||
],
|
||||
"label.create": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Create"
|
||||
}
|
||||
],
|
||||
"label.create-report": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -383,6 +389,12 @@
|
|||
"value": "Fields"
|
||||
}
|
||||
],
|
||||
"label.filter": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Filter"
|
||||
}
|
||||
],
|
||||
"label.filter-combined": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -407,6 +419,12 @@
|
|||
"value": "Funnel"
|
||||
}
|
||||
],
|
||||
"label.funnel-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Understand the conversion and drop-off rate of users."
|
||||
}
|
||||
],
|
||||
"label.greater-than": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -425,6 +443,12 @@
|
|||
"value": "Insights"
|
||||
}
|
||||
],
|
||||
"label.insights-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Dive deeper into your data by using segments and filters."
|
||||
}
|
||||
],
|
||||
"label.is": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -769,6 +793,12 @@
|
|||
"value": "Retention"
|
||||
}
|
||||
],
|
||||
"label.retention-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Measure your website stickiness by tracking how often users return."
|
||||
}
|
||||
],
|
||||
"label.role": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -793,6 +823,12 @@
|
|||
"value": "Screens"
|
||||
}
|
||||
],
|
||||
"label.search": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Search"
|
||||
}
|
||||
],
|
||||
"label.select-date": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
|
|||
|
|
@ -179,6 +179,12 @@
|
|||
"value": "Country"
|
||||
}
|
||||
],
|
||||
"label.create": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Create"
|
||||
}
|
||||
],
|
||||
"label.create-report": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -383,6 +389,12 @@
|
|||
"value": "Campos"
|
||||
}
|
||||
],
|
||||
"label.filter": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Filter"
|
||||
}
|
||||
],
|
||||
"label.filter-combined": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -407,6 +419,12 @@
|
|||
"value": "Funnel"
|
||||
}
|
||||
],
|
||||
"label.funnel-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Understand the conversion and drop-off rate of users."
|
||||
}
|
||||
],
|
||||
"label.greater-than": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -425,6 +443,12 @@
|
|||
"value": "Insights"
|
||||
}
|
||||
],
|
||||
"label.insights-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Dive deeper into your data by using segments and filters."
|
||||
}
|
||||
],
|
||||
"label.is": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -769,6 +793,12 @@
|
|||
"value": "Retention"
|
||||
}
|
||||
],
|
||||
"label.retention-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Measure your website stickiness by tracking how often users return."
|
||||
}
|
||||
],
|
||||
"label.role": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -793,6 +823,12 @@
|
|||
"value": "Pantallas"
|
||||
}
|
||||
],
|
||||
"label.search": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Search"
|
||||
}
|
||||
],
|
||||
"label.select-date": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
|
|||
|
|
@ -179,6 +179,12 @@
|
|||
"value": "Country"
|
||||
}
|
||||
],
|
||||
"label.create": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Create"
|
||||
}
|
||||
],
|
||||
"label.create-report": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -383,6 +389,12 @@
|
|||
"value": "Fields"
|
||||
}
|
||||
],
|
||||
"label.filter": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Filter"
|
||||
}
|
||||
],
|
||||
"label.filter-combined": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -407,6 +419,12 @@
|
|||
"value": "Funnel"
|
||||
}
|
||||
],
|
||||
"label.funnel-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Understand the conversion and drop-off rate of users."
|
||||
}
|
||||
],
|
||||
"label.greater-than": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -425,6 +443,12 @@
|
|||
"value": "Insights"
|
||||
}
|
||||
],
|
||||
"label.insights-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Dive deeper into your data by using segments and filters."
|
||||
}
|
||||
],
|
||||
"label.is": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -769,6 +793,12 @@
|
|||
"value": "Retention"
|
||||
}
|
||||
],
|
||||
"label.retention-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Measure your website stickiness by tracking how often users return."
|
||||
}
|
||||
],
|
||||
"label.role": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -793,6 +823,12 @@
|
|||
"value": "Pantallas"
|
||||
}
|
||||
],
|
||||
"label.search": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Search"
|
||||
}
|
||||
],
|
||||
"label.select-date": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
|
|||
|
|
@ -179,6 +179,12 @@
|
|||
"value": "Country"
|
||||
}
|
||||
],
|
||||
"label.create": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Create"
|
||||
}
|
||||
],
|
||||
"label.create-report": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -383,6 +389,12 @@
|
|||
"value": "Fields"
|
||||
}
|
||||
],
|
||||
"label.filter": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Filter"
|
||||
}
|
||||
],
|
||||
"label.filter-combined": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -407,6 +419,12 @@
|
|||
"value": "Funnel"
|
||||
}
|
||||
],
|
||||
"label.funnel-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Understand the conversion and drop-off rate of users."
|
||||
}
|
||||
],
|
||||
"label.greater-than": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -425,6 +443,12 @@
|
|||
"value": "Insights"
|
||||
}
|
||||
],
|
||||
"label.insights-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Dive deeper into your data by using segments and filters."
|
||||
}
|
||||
],
|
||||
"label.is": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -769,6 +793,12 @@
|
|||
"value": "Retention"
|
||||
}
|
||||
],
|
||||
"label.retention-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Measure your website stickiness by tracking how often users return."
|
||||
}
|
||||
],
|
||||
"label.role": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -793,6 +823,12 @@
|
|||
"value": "Screens"
|
||||
}
|
||||
],
|
||||
"label.search": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Search"
|
||||
}
|
||||
],
|
||||
"label.select-date": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
|
|||
|
|
@ -179,6 +179,12 @@
|
|||
"value": "Country"
|
||||
}
|
||||
],
|
||||
"label.create": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Create"
|
||||
}
|
||||
],
|
||||
"label.create-report": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -383,6 +389,12 @@
|
|||
"value": "Fields"
|
||||
}
|
||||
],
|
||||
"label.filter": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Filter"
|
||||
}
|
||||
],
|
||||
"label.filter-combined": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -407,6 +419,12 @@
|
|||
"value": "Funnel"
|
||||
}
|
||||
],
|
||||
"label.funnel-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Understand the conversion and drop-off rate of users."
|
||||
}
|
||||
],
|
||||
"label.greater-than": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -425,6 +443,12 @@
|
|||
"value": "Insights"
|
||||
}
|
||||
],
|
||||
"label.insights-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Dive deeper into your data by using segments and filters."
|
||||
}
|
||||
],
|
||||
"label.is": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -769,6 +793,12 @@
|
|||
"value": "Retention"
|
||||
}
|
||||
],
|
||||
"label.retention-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Measure your website stickiness by tracking how often users return."
|
||||
}
|
||||
],
|
||||
"label.role": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -793,6 +823,12 @@
|
|||
"value": "Screens"
|
||||
}
|
||||
],
|
||||
"label.search": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Search"
|
||||
}
|
||||
],
|
||||
"label.select-date": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
|
|||
|
|
@ -179,6 +179,12 @@
|
|||
"value": "Country"
|
||||
}
|
||||
],
|
||||
"label.create": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Create"
|
||||
}
|
||||
],
|
||||
"label.create-report": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -383,6 +389,12 @@
|
|||
"value": "Fields"
|
||||
}
|
||||
],
|
||||
"label.filter": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Filter"
|
||||
}
|
||||
],
|
||||
"label.filter-combined": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -407,6 +419,12 @@
|
|||
"value": "Funnel"
|
||||
}
|
||||
],
|
||||
"label.funnel-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Understand the conversion and drop-off rate of users."
|
||||
}
|
||||
],
|
||||
"label.greater-than": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -425,6 +443,12 @@
|
|||
"value": "Insights"
|
||||
}
|
||||
],
|
||||
"label.insights-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Dive deeper into your data by using segments and filters."
|
||||
}
|
||||
],
|
||||
"label.is": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -769,6 +793,12 @@
|
|||
"value": "Retention"
|
||||
}
|
||||
],
|
||||
"label.retention-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Measure your website stickiness by tracking how often users return."
|
||||
}
|
||||
],
|
||||
"label.role": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -793,6 +823,12 @@
|
|||
"value": "Screens"
|
||||
}
|
||||
],
|
||||
"label.search": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Search"
|
||||
}
|
||||
],
|
||||
"label.select-date": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
|
|||
|
|
@ -104,7 +104,7 @@
|
|||
"label.browser": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Browser"
|
||||
"value": "Navigateur"
|
||||
}
|
||||
],
|
||||
"label.browsers": [
|
||||
|
|
@ -134,7 +134,7 @@
|
|||
"label.city": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "City"
|
||||
"value": "Ville"
|
||||
}
|
||||
],
|
||||
"label.clear-all": [
|
||||
|
|
@ -176,7 +176,13 @@
|
|||
"label.country": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Country"
|
||||
"value": "Pays"
|
||||
}
|
||||
],
|
||||
"label.create": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Créer"
|
||||
}
|
||||
],
|
||||
"label.create-report": [
|
||||
|
|
@ -242,7 +248,7 @@
|
|||
"label.day": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Day"
|
||||
"value": "Jour"
|
||||
}
|
||||
],
|
||||
"label.default-date-range": [
|
||||
|
|
@ -296,7 +302,7 @@
|
|||
"label.device": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Device"
|
||||
"value": "Appareil"
|
||||
}
|
||||
],
|
||||
"label.devices": [
|
||||
|
|
@ -326,7 +332,7 @@
|
|||
"label.dropoff": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Dropoff"
|
||||
"value": "Abandons"
|
||||
}
|
||||
],
|
||||
"label.edit": [
|
||||
|
|
@ -350,19 +356,19 @@
|
|||
"label.event": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Event"
|
||||
"value": "Évènement"
|
||||
}
|
||||
],
|
||||
"label.event-data": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Données d'événements"
|
||||
"value": "Données d'évènements"
|
||||
}
|
||||
],
|
||||
"label.events": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Événements"
|
||||
"value": "Évènements"
|
||||
}
|
||||
],
|
||||
"label.false": [
|
||||
|
|
@ -383,6 +389,12 @@
|
|||
"value": "Champs"
|
||||
}
|
||||
],
|
||||
"label.filter": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Filtrer"
|
||||
}
|
||||
],
|
||||
"label.filter-combined": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -407,6 +419,12 @@
|
|||
"value": "Entonnoir"
|
||||
}
|
||||
],
|
||||
"label.funnel-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Suivi des conversions et des taux d'abandons."
|
||||
}
|
||||
],
|
||||
"label.greater-than": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -425,28 +443,34 @@
|
|||
"value": "Insights"
|
||||
}
|
||||
],
|
||||
"label.insights-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Analyse précise des données en utilisant des segments et des filtres."
|
||||
}
|
||||
],
|
||||
"label.is": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Est égal"
|
||||
"value": "Est"
|
||||
}
|
||||
],
|
||||
"label.is-not": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "N'est pas égal"
|
||||
"value": "N'est pas"
|
||||
}
|
||||
],
|
||||
"label.is-not-set": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Is not set"
|
||||
"value": "N'est pas défini"
|
||||
}
|
||||
],
|
||||
"label.is-set": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Is set"
|
||||
"value": "Est défini"
|
||||
}
|
||||
],
|
||||
"label.join": [
|
||||
|
|
@ -568,7 +592,7 @@
|
|||
"label.my-websites": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "My websites"
|
||||
"value": "Mes sites"
|
||||
}
|
||||
],
|
||||
"label.name": [
|
||||
|
|
@ -618,7 +642,7 @@
|
|||
},
|
||||
{
|
||||
"type": 0,
|
||||
"value": " of "
|
||||
"value": " sur "
|
||||
},
|
||||
{
|
||||
"type": 1,
|
||||
|
|
@ -634,7 +658,7 @@
|
|||
"label.pageTitle": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Page title"
|
||||
"value": "Titre de page"
|
||||
}
|
||||
],
|
||||
"label.pages": [
|
||||
|
|
@ -680,7 +704,7 @@
|
|||
"label.query-parameters": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Paramètres d'URL"
|
||||
"value": "Paramètres de requête"
|
||||
}
|
||||
],
|
||||
"label.realtime": [
|
||||
|
|
@ -692,7 +716,7 @@
|
|||
"label.referrer": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Referrer"
|
||||
"value": "Site référent"
|
||||
}
|
||||
],
|
||||
"label.referrers": [
|
||||
|
|
@ -716,7 +740,7 @@
|
|||
"label.region": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Region"
|
||||
"value": "Région"
|
||||
}
|
||||
],
|
||||
"label.regions": [
|
||||
|
|
@ -758,7 +782,13 @@
|
|||
"label.retention": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Retention"
|
||||
"value": "Rétention"
|
||||
}
|
||||
],
|
||||
"label.retention-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Mesure de l'atractivité du site en visualisant les taux d'utilisateurs qui reviennent."
|
||||
}
|
||||
],
|
||||
"label.role": [
|
||||
|
|
@ -785,6 +815,12 @@
|
|||
"value": "Résolutions d'écran"
|
||||
}
|
||||
],
|
||||
"label.search": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Rechercher"
|
||||
}
|
||||
],
|
||||
"label.select-date": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -860,7 +896,7 @@
|
|||
"label.team-name": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Team name"
|
||||
"value": "Nom de l'équipe"
|
||||
}
|
||||
],
|
||||
"label.team-owner": [
|
||||
|
|
@ -872,7 +908,7 @@
|
|||
"label.team-websites": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Team websites"
|
||||
"value": "Sites d'équipes"
|
||||
}
|
||||
],
|
||||
"label.teams": [
|
||||
|
|
@ -1052,7 +1088,7 @@
|
|||
"label.website": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Website"
|
||||
"value": "Site"
|
||||
}
|
||||
],
|
||||
"label.website-id": [
|
||||
|
|
@ -1248,7 +1284,7 @@
|
|||
"message.new-version-available": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "A new version of Umami "
|
||||
"value": "Une nouvelle version d'Umami "
|
||||
},
|
||||
{
|
||||
"type": 1,
|
||||
|
|
@ -1256,7 +1292,7 @@
|
|||
},
|
||||
{
|
||||
"type": 0,
|
||||
"value": " is available!"
|
||||
"value": " est disponible !"
|
||||
}
|
||||
],
|
||||
"message.no-data-available": [
|
||||
|
|
@ -1336,7 +1372,7 @@
|
|||
"message.saved": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Enregistré avec succès."
|
||||
"value": "Enregistré."
|
||||
}
|
||||
],
|
||||
"message.share-url": [
|
||||
|
|
|
|||
|
|
@ -179,6 +179,12 @@
|
|||
"value": "Country"
|
||||
}
|
||||
],
|
||||
"label.create": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Create"
|
||||
}
|
||||
],
|
||||
"label.create-report": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -383,6 +389,12 @@
|
|||
"value": "Fields"
|
||||
}
|
||||
],
|
||||
"label.filter": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Filter"
|
||||
}
|
||||
],
|
||||
"label.filter-combined": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -407,6 +419,12 @@
|
|||
"value": "Funnel"
|
||||
}
|
||||
],
|
||||
"label.funnel-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Understand the conversion and drop-off rate of users."
|
||||
}
|
||||
],
|
||||
"label.greater-than": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -425,6 +443,12 @@
|
|||
"value": "Insights"
|
||||
}
|
||||
],
|
||||
"label.insights-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Dive deeper into your data by using segments and filters."
|
||||
}
|
||||
],
|
||||
"label.is": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -777,6 +801,12 @@
|
|||
"value": "Retention"
|
||||
}
|
||||
],
|
||||
"label.retention-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Measure your website stickiness by tracking how often users return."
|
||||
}
|
||||
],
|
||||
"label.role": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -801,6 +831,12 @@
|
|||
"value": "Screens"
|
||||
}
|
||||
],
|
||||
"label.search": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Search"
|
||||
}
|
||||
],
|
||||
"label.select-date": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
|
|||
|
|
@ -179,6 +179,12 @@
|
|||
"value": "Country"
|
||||
}
|
||||
],
|
||||
"label.create": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Create"
|
||||
}
|
||||
],
|
||||
"label.create-report": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -383,6 +389,12 @@
|
|||
"value": "Fields"
|
||||
}
|
||||
],
|
||||
"label.filter": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Filter"
|
||||
}
|
||||
],
|
||||
"label.filter-combined": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -407,6 +419,12 @@
|
|||
"value": "Funnel"
|
||||
}
|
||||
],
|
||||
"label.funnel-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Understand the conversion and drop-off rate of users."
|
||||
}
|
||||
],
|
||||
"label.greater-than": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -425,6 +443,12 @@
|
|||
"value": "Insights"
|
||||
}
|
||||
],
|
||||
"label.insights-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Dive deeper into your data by using segments and filters."
|
||||
}
|
||||
],
|
||||
"label.is": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -761,6 +785,12 @@
|
|||
"value": "Retention"
|
||||
}
|
||||
],
|
||||
"label.retention-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Measure your website stickiness by tracking how often users return."
|
||||
}
|
||||
],
|
||||
"label.role": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -785,6 +815,12 @@
|
|||
"value": "Screens"
|
||||
}
|
||||
],
|
||||
"label.search": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Search"
|
||||
}
|
||||
],
|
||||
"label.select-date": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
|
|||
|
|
@ -179,6 +179,12 @@
|
|||
"value": "Country"
|
||||
}
|
||||
],
|
||||
"label.create": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Create"
|
||||
}
|
||||
],
|
||||
"label.create-report": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -383,6 +389,12 @@
|
|||
"value": "Fields"
|
||||
}
|
||||
],
|
||||
"label.filter": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Filter"
|
||||
}
|
||||
],
|
||||
"label.filter-combined": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -407,6 +419,12 @@
|
|||
"value": "Funnel"
|
||||
}
|
||||
],
|
||||
"label.funnel-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Understand the conversion and drop-off rate of users."
|
||||
}
|
||||
],
|
||||
"label.greater-than": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -425,6 +443,12 @@
|
|||
"value": "Insights"
|
||||
}
|
||||
],
|
||||
"label.insights-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Dive deeper into your data by using segments and filters."
|
||||
}
|
||||
],
|
||||
"label.is": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -769,6 +793,12 @@
|
|||
"value": "Retention"
|
||||
}
|
||||
],
|
||||
"label.retention-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Measure your website stickiness by tracking how often users return."
|
||||
}
|
||||
],
|
||||
"label.role": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -793,6 +823,12 @@
|
|||
"value": "Screens"
|
||||
}
|
||||
],
|
||||
"label.search": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Search"
|
||||
}
|
||||
],
|
||||
"label.select-date": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
|
|||
|
|
@ -179,6 +179,12 @@
|
|||
"value": "Country"
|
||||
}
|
||||
],
|
||||
"label.create": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Create"
|
||||
}
|
||||
],
|
||||
"label.create-report": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -383,6 +389,12 @@
|
|||
"value": "Fields"
|
||||
}
|
||||
],
|
||||
"label.filter": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Filter"
|
||||
}
|
||||
],
|
||||
"label.filter-combined": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -407,6 +419,12 @@
|
|||
"value": "Funnel"
|
||||
}
|
||||
],
|
||||
"label.funnel-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Understand the conversion and drop-off rate of users."
|
||||
}
|
||||
],
|
||||
"label.greater-than": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -425,6 +443,12 @@
|
|||
"value": "Insights"
|
||||
}
|
||||
],
|
||||
"label.insights-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Dive deeper into your data by using segments and filters."
|
||||
}
|
||||
],
|
||||
"label.is": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -769,6 +793,12 @@
|
|||
"value": "Retention"
|
||||
}
|
||||
],
|
||||
"label.retention-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Measure your website stickiness by tracking how often users return."
|
||||
}
|
||||
],
|
||||
"label.role": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -793,6 +823,12 @@
|
|||
"value": "Screens"
|
||||
}
|
||||
],
|
||||
"label.search": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Search"
|
||||
}
|
||||
],
|
||||
"label.select-date": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
|
|||
|
|
@ -179,6 +179,12 @@
|
|||
"value": "Country"
|
||||
}
|
||||
],
|
||||
"label.create": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Create"
|
||||
}
|
||||
],
|
||||
"label.create-report": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -383,6 +389,12 @@
|
|||
"value": "Fields"
|
||||
}
|
||||
],
|
||||
"label.filter": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Filter"
|
||||
}
|
||||
],
|
||||
"label.filter-combined": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -407,6 +419,12 @@
|
|||
"value": "Funnel"
|
||||
}
|
||||
],
|
||||
"label.funnel-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Understand the conversion and drop-off rate of users."
|
||||
}
|
||||
],
|
||||
"label.greater-than": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -425,6 +443,12 @@
|
|||
"value": "Insights"
|
||||
}
|
||||
],
|
||||
"label.insights-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Dive deeper into your data by using segments and filters."
|
||||
}
|
||||
],
|
||||
"label.is": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -769,6 +793,12 @@
|
|||
"value": "Retention"
|
||||
}
|
||||
],
|
||||
"label.retention-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Measure your website stickiness by tracking how often users return."
|
||||
}
|
||||
],
|
||||
"label.role": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -793,6 +823,12 @@
|
|||
"value": "Screens"
|
||||
}
|
||||
],
|
||||
"label.search": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Search"
|
||||
}
|
||||
],
|
||||
"label.select-date": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
|
|||
|
|
@ -179,6 +179,12 @@
|
|||
"value": "Country"
|
||||
}
|
||||
],
|
||||
"label.create": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Create"
|
||||
}
|
||||
],
|
||||
"label.create-report": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -383,6 +389,12 @@
|
|||
"value": "Fields"
|
||||
}
|
||||
],
|
||||
"label.filter": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Filter"
|
||||
}
|
||||
],
|
||||
"label.filter-combined": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -407,6 +419,12 @@
|
|||
"value": "Funnel"
|
||||
}
|
||||
],
|
||||
"label.funnel-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Understand the conversion and drop-off rate of users."
|
||||
}
|
||||
],
|
||||
"label.greater-than": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -425,6 +443,12 @@
|
|||
"value": "Insights"
|
||||
}
|
||||
],
|
||||
"label.insights-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Dive deeper into your data by using segments and filters."
|
||||
}
|
||||
],
|
||||
"label.is": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -761,6 +785,12 @@
|
|||
"value": "Retention"
|
||||
}
|
||||
],
|
||||
"label.retention-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Measure your website stickiness by tracking how often users return."
|
||||
}
|
||||
],
|
||||
"label.role": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -785,6 +815,12 @@
|
|||
"value": "Layar"
|
||||
}
|
||||
],
|
||||
"label.search": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Search"
|
||||
}
|
||||
],
|
||||
"label.select-date": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
|
|||
|
|
@ -179,6 +179,12 @@
|
|||
"value": "Country"
|
||||
}
|
||||
],
|
||||
"label.create": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Create"
|
||||
}
|
||||
],
|
||||
"label.create-report": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -383,6 +389,12 @@
|
|||
"value": "Fields"
|
||||
}
|
||||
],
|
||||
"label.filter": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Filter"
|
||||
}
|
||||
],
|
||||
"label.filter-combined": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -407,6 +419,12 @@
|
|||
"value": "Funnel"
|
||||
}
|
||||
],
|
||||
"label.funnel-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Understand the conversion and drop-off rate of users."
|
||||
}
|
||||
],
|
||||
"label.greater-than": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -425,6 +443,12 @@
|
|||
"value": "Insights"
|
||||
}
|
||||
],
|
||||
"label.insights-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Dive deeper into your data by using segments and filters."
|
||||
}
|
||||
],
|
||||
"label.is": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -769,6 +793,12 @@
|
|||
"value": "Retention"
|
||||
}
|
||||
],
|
||||
"label.retention-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Measure your website stickiness by tracking how often users return."
|
||||
}
|
||||
],
|
||||
"label.role": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -793,6 +823,12 @@
|
|||
"value": "Screens"
|
||||
}
|
||||
],
|
||||
"label.search": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Search"
|
||||
}
|
||||
],
|
||||
"label.select-date": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
|
|||
|
|
@ -179,6 +179,12 @@
|
|||
"value": "Country"
|
||||
}
|
||||
],
|
||||
"label.create": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Create"
|
||||
}
|
||||
],
|
||||
"label.create-report": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -383,6 +389,12 @@
|
|||
"value": "Fields"
|
||||
}
|
||||
],
|
||||
"label.filter": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Filter"
|
||||
}
|
||||
],
|
||||
"label.filter-combined": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -407,6 +419,12 @@
|
|||
"value": "Funnel"
|
||||
}
|
||||
],
|
||||
"label.funnel-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Understand the conversion and drop-off rate of users."
|
||||
}
|
||||
],
|
||||
"label.greater-than": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -425,6 +443,12 @@
|
|||
"value": "Insights"
|
||||
}
|
||||
],
|
||||
"label.insights-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Dive deeper into your data by using segments and filters."
|
||||
}
|
||||
],
|
||||
"label.is": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -761,6 +785,12 @@
|
|||
"value": "Retention"
|
||||
}
|
||||
],
|
||||
"label.retention-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Measure your website stickiness by tracking how often users return."
|
||||
}
|
||||
],
|
||||
"label.role": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -785,6 +815,12 @@
|
|||
"value": "ប្រភេទឧបករណ៍"
|
||||
}
|
||||
],
|
||||
"label.search": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Search"
|
||||
}
|
||||
],
|
||||
"label.select-date": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
|
|||
|
|
@ -179,6 +179,12 @@
|
|||
"value": "Country"
|
||||
}
|
||||
],
|
||||
"label.create": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Create"
|
||||
}
|
||||
],
|
||||
"label.create-report": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -383,6 +389,12 @@
|
|||
"value": "Fields"
|
||||
}
|
||||
],
|
||||
"label.filter": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Filter"
|
||||
}
|
||||
],
|
||||
"label.filter-combined": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -407,6 +419,12 @@
|
|||
"value": "Funnel"
|
||||
}
|
||||
],
|
||||
"label.funnel-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Understand the conversion and drop-off rate of users."
|
||||
}
|
||||
],
|
||||
"label.greater-than": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -425,6 +443,12 @@
|
|||
"value": "Insights"
|
||||
}
|
||||
],
|
||||
"label.insights-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Dive deeper into your data by using segments and filters."
|
||||
}
|
||||
],
|
||||
"label.is": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -773,6 +797,12 @@
|
|||
"value": "Retention"
|
||||
}
|
||||
],
|
||||
"label.retention-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Measure your website stickiness by tracking how often users return."
|
||||
}
|
||||
],
|
||||
"label.role": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -797,6 +827,12 @@
|
|||
"value": "Screens"
|
||||
}
|
||||
],
|
||||
"label.search": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Search"
|
||||
}
|
||||
],
|
||||
"label.select-date": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
|
|||
|
|
@ -179,6 +179,12 @@
|
|||
"value": "Country"
|
||||
}
|
||||
],
|
||||
"label.create": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Create"
|
||||
}
|
||||
],
|
||||
"label.create-report": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -383,6 +389,12 @@
|
|||
"value": "Fields"
|
||||
}
|
||||
],
|
||||
"label.filter": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Filter"
|
||||
}
|
||||
],
|
||||
"label.filter-combined": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -407,6 +419,12 @@
|
|||
"value": "Funnel"
|
||||
}
|
||||
],
|
||||
"label.funnel-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Understand the conversion and drop-off rate of users."
|
||||
}
|
||||
],
|
||||
"label.greater-than": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -425,6 +443,12 @@
|
|||
"value": "Insights"
|
||||
}
|
||||
],
|
||||
"label.insights-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Dive deeper into your data by using segments and filters."
|
||||
}
|
||||
],
|
||||
"label.is": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -874,6 +898,12 @@
|
|||
"value": "Retention"
|
||||
}
|
||||
],
|
||||
"label.retention-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Measure your website stickiness by tracking how often users return."
|
||||
}
|
||||
],
|
||||
"label.role": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -898,6 +928,12 @@
|
|||
"value": "Screens"
|
||||
}
|
||||
],
|
||||
"label.search": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Search"
|
||||
}
|
||||
],
|
||||
"label.select-date": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
|
|||
|
|
@ -179,6 +179,12 @@
|
|||
"value": "Country"
|
||||
}
|
||||
],
|
||||
"label.create": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Create"
|
||||
}
|
||||
],
|
||||
"label.create-report": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -383,6 +389,12 @@
|
|||
"value": "Fields"
|
||||
}
|
||||
],
|
||||
"label.filter": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Filter"
|
||||
}
|
||||
],
|
||||
"label.filter-combined": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -407,6 +419,12 @@
|
|||
"value": "Funnel"
|
||||
}
|
||||
],
|
||||
"label.funnel-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Understand the conversion and drop-off rate of users."
|
||||
}
|
||||
],
|
||||
"label.greater-than": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -425,6 +443,12 @@
|
|||
"value": "Insights"
|
||||
}
|
||||
],
|
||||
"label.insights-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Dive deeper into your data by using segments and filters."
|
||||
}
|
||||
],
|
||||
"label.is": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -769,6 +793,12 @@
|
|||
"value": "Retention"
|
||||
}
|
||||
],
|
||||
"label.retention-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Measure your website stickiness by tracking how often users return."
|
||||
}
|
||||
],
|
||||
"label.role": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -793,6 +823,12 @@
|
|||
"value": "Дэлгэц"
|
||||
}
|
||||
],
|
||||
"label.search": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Search"
|
||||
}
|
||||
],
|
||||
"label.select-date": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
|
|||
|
|
@ -179,6 +179,12 @@
|
|||
"value": "Country"
|
||||
}
|
||||
],
|
||||
"label.create": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Create"
|
||||
}
|
||||
],
|
||||
"label.create-report": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -383,6 +389,12 @@
|
|||
"value": "Fields"
|
||||
}
|
||||
],
|
||||
"label.filter": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Filter"
|
||||
}
|
||||
],
|
||||
"label.filter-combined": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -407,6 +419,12 @@
|
|||
"value": "Funnel"
|
||||
}
|
||||
],
|
||||
"label.funnel-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Understand the conversion and drop-off rate of users."
|
||||
}
|
||||
],
|
||||
"label.greater-than": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -425,6 +443,12 @@
|
|||
"value": "Insights"
|
||||
}
|
||||
],
|
||||
"label.insights-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Dive deeper into your data by using segments and filters."
|
||||
}
|
||||
],
|
||||
"label.is": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -761,6 +785,12 @@
|
|||
"value": "Retention"
|
||||
}
|
||||
],
|
||||
"label.retention-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Measure your website stickiness by tracking how often users return."
|
||||
}
|
||||
],
|
||||
"label.role": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -785,6 +815,12 @@
|
|||
"value": "Screens"
|
||||
}
|
||||
],
|
||||
"label.search": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Search"
|
||||
}
|
||||
],
|
||||
"label.select-date": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
|
|||
|
|
@ -41,6 +41,12 @@
|
|||
"value": "အက်ဒမင်"
|
||||
}
|
||||
],
|
||||
"label.after": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "ပြီးနောက်"
|
||||
}
|
||||
],
|
||||
"label.all": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -59,6 +65,12 @@
|
|||
"value": "အန်နလစ်တစ်"
|
||||
}
|
||||
],
|
||||
"label.average": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "ပျမ်းမျှ"
|
||||
}
|
||||
],
|
||||
"label.average-visit-time": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -71,12 +83,30 @@
|
|||
"value": "နောက်သို့"
|
||||
}
|
||||
],
|
||||
"label.before": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "မတိုင်မီ"
|
||||
}
|
||||
],
|
||||
"label.bounce-rate": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Bounce နှုန်း"
|
||||
}
|
||||
],
|
||||
"label.breakdown": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "ခွဲခြမ်းစိတ်ဖြာမှု"
|
||||
}
|
||||
],
|
||||
"label.browser": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Browser"
|
||||
}
|
||||
],
|
||||
"label.browsers": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -101,6 +131,12 @@
|
|||
"value": "မြို့များ"
|
||||
}
|
||||
],
|
||||
"label.city": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "City"
|
||||
}
|
||||
],
|
||||
"label.clear-all": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -119,6 +155,12 @@
|
|||
"value": "စကားဝှက်အတည်ပြုသည်"
|
||||
}
|
||||
],
|
||||
"label.contains": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "ပါဝင်သည်"
|
||||
}
|
||||
],
|
||||
"label.continue": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -131,6 +173,24 @@
|
|||
"value": "နိုင်ငံများ"
|
||||
}
|
||||
],
|
||||
"label.country": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Country"
|
||||
}
|
||||
],
|
||||
"label.create": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Create"
|
||||
}
|
||||
],
|
||||
"label.create-report": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "ရီပို့လုပ်မည်"
|
||||
}
|
||||
],
|
||||
"label.create-team": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -173,12 +233,24 @@
|
|||
"value": "ဒေတာ"
|
||||
}
|
||||
],
|
||||
"label.date": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Date"
|
||||
}
|
||||
],
|
||||
"label.date-range": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "ရက်အပိုင်းအခြား"
|
||||
}
|
||||
],
|
||||
"label.day": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Day"
|
||||
}
|
||||
],
|
||||
"label.default-date-range": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -209,6 +281,12 @@
|
|||
"value": "ဝက်ဘ်ဆိုဒ်ကိုဖျက်မည်"
|
||||
}
|
||||
],
|
||||
"label.description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "ရှင်းပြချက်"
|
||||
}
|
||||
],
|
||||
"label.desktop": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -221,6 +299,12 @@
|
|||
"value": "အသေးစိတ်"
|
||||
}
|
||||
],
|
||||
"label.device": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Device"
|
||||
}
|
||||
],
|
||||
"label.devices": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -233,6 +317,12 @@
|
|||
"value": "ပိတ်ပါ"
|
||||
}
|
||||
],
|
||||
"label.does-not-contain": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "မပါဝင်ပါ"
|
||||
}
|
||||
],
|
||||
"label.domain": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -281,6 +371,12 @@
|
|||
"value": "အဖြစ်အပျက်များ"
|
||||
}
|
||||
],
|
||||
"label.false": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "မှားသည်"
|
||||
}
|
||||
],
|
||||
"label.field": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -293,6 +389,12 @@
|
|||
"value": "Field အမည်များ"
|
||||
}
|
||||
],
|
||||
"label.filter": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Filter"
|
||||
}
|
||||
],
|
||||
"label.filter-combined": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -305,18 +407,72 @@
|
|||
"value": "အရှိအတိုင်း"
|
||||
}
|
||||
],
|
||||
"label.filters": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Filter များ"
|
||||
}
|
||||
],
|
||||
"label.funnel": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "ဖန်နယ်"
|
||||
}
|
||||
],
|
||||
"label.funnel-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Understand the conversion and drop-off rate of users."
|
||||
}
|
||||
],
|
||||
"label.greater-than": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "ထက်ပို၍ကြီးသည်"
|
||||
}
|
||||
],
|
||||
"label.greater-than-equals": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "ထက်ပို၍ကြီးသည်သို့မဟုတ်တူသည်"
|
||||
}
|
||||
],
|
||||
"label.insights": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "အသေးစိတ်သိမြင်နိုင်ရန်"
|
||||
}
|
||||
],
|
||||
"label.insights-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Dive deeper into your data by using segments and filters."
|
||||
}
|
||||
],
|
||||
"label.is": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Is"
|
||||
}
|
||||
],
|
||||
"label.is-not": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Is not"
|
||||
}
|
||||
],
|
||||
"label.is-not-set": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Is not set"
|
||||
}
|
||||
],
|
||||
"label.is-set": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Is set"
|
||||
}
|
||||
],
|
||||
"label.join": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -387,6 +543,18 @@
|
|||
"value": "အသင်းမှထွက်မည်"
|
||||
}
|
||||
],
|
||||
"label.less-than": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "ထက်ပို၍ငယ်သည်"
|
||||
}
|
||||
],
|
||||
"label.less-than-equals": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "ထက်ပို၍ငယ်သည်သို့မဟုတ်တူသည်"
|
||||
}
|
||||
],
|
||||
"label.login": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -399,12 +567,24 @@
|
|||
"value": "လော့ဂ်အောက်လုပ်မည်"
|
||||
}
|
||||
],
|
||||
"label.max": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "အများဆုံး"
|
||||
}
|
||||
],
|
||||
"label.members": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "အဖွဲ့ဝင်များ"
|
||||
}
|
||||
],
|
||||
"label.min": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "အနည်းဆုံး"
|
||||
}
|
||||
],
|
||||
"label.mobile": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -417,6 +597,12 @@
|
|||
"value": "နောက်ထပ်"
|
||||
}
|
||||
],
|
||||
"label.my-websites": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "My websites"
|
||||
}
|
||||
],
|
||||
"label.name": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -435,24 +621,54 @@
|
|||
"value": "မရှိပါ"
|
||||
}
|
||||
],
|
||||
"label.operating-systems": [
|
||||
"label.os": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "ကွန်ပျူတာလည်ပတ်မှုစနစ်"
|
||||
}
|
||||
],
|
||||
"label.overview": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "အပေါ်ယံမြင်ကွင်း"
|
||||
}
|
||||
],
|
||||
"label.owner": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "ပိုင်ဆိုင်သူ"
|
||||
}
|
||||
],
|
||||
"label.page-of": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Page "
|
||||
},
|
||||
{
|
||||
"type": 1,
|
||||
"value": "current"
|
||||
},
|
||||
{
|
||||
"type": 0,
|
||||
"value": " of "
|
||||
},
|
||||
{
|
||||
"type": 1,
|
||||
"value": "total"
|
||||
}
|
||||
],
|
||||
"label.page-views": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "ဝင်ရောက်ကြည့်ရှုသူ"
|
||||
}
|
||||
],
|
||||
"label.pageTitle": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Page title"
|
||||
}
|
||||
],
|
||||
"label.pages": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -505,6 +721,12 @@
|
|||
"value": "အချိန်နှင့်တပြေးညီ"
|
||||
}
|
||||
],
|
||||
"label.referrer": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Referrer"
|
||||
}
|
||||
],
|
||||
"label.referrers": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -523,6 +745,12 @@
|
|||
"value": "ပြန်ထုတ်မည်"
|
||||
}
|
||||
],
|
||||
"label.region": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Region"
|
||||
}
|
||||
],
|
||||
"label.regions": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -559,6 +787,18 @@
|
|||
"value": "ဝက်ဘ်ဆိုဒ်ဒေတာကိုဖျက်မည်"
|
||||
}
|
||||
],
|
||||
"label.retention": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Retention"
|
||||
}
|
||||
],
|
||||
"label.retention-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Measure your website stickiness by tracking how often users return."
|
||||
}
|
||||
],
|
||||
"label.role": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -583,6 +823,12 @@
|
|||
"value": "မြင်ကွင်းများ"
|
||||
}
|
||||
],
|
||||
"label.search": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Search"
|
||||
}
|
||||
],
|
||||
"label.select-date": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -619,6 +865,12 @@
|
|||
"value": "တစ်ရက်အတွင်း"
|
||||
}
|
||||
],
|
||||
"label.sum": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "ပေါင်းလဒ်"
|
||||
}
|
||||
],
|
||||
"label.tablet": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -649,12 +901,24 @@
|
|||
"value": "အသင်းဝင်"
|
||||
}
|
||||
],
|
||||
"label.team-name": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Team name"
|
||||
}
|
||||
],
|
||||
"label.team-owner": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "အသင်းကိုပိုင်ဆိုင်သူ"
|
||||
}
|
||||
],
|
||||
"label.team-websites": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Team websites"
|
||||
}
|
||||
],
|
||||
"label.teams": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -709,12 +973,42 @@
|
|||
"value": "ဇယားများကို အဖွင့်အပိတ်လုပ်မည်"
|
||||
}
|
||||
],
|
||||
"label.total": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "စုစုပေါင်း"
|
||||
}
|
||||
],
|
||||
"label.total-records": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "မှတ်တမ်းစုစုပေါင်း"
|
||||
}
|
||||
],
|
||||
"label.tracking-code": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "ထရက်လုပ်သည့် ကုဒ်"
|
||||
}
|
||||
],
|
||||
"label.true": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "မှန်သည်"
|
||||
}
|
||||
],
|
||||
"label.type": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "အမျိုးအစား"
|
||||
}
|
||||
],
|
||||
"label.unique": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Unique"
|
||||
}
|
||||
],
|
||||
"label.unique-visitors": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -727,6 +1021,12 @@
|
|||
"value": "မသိသော"
|
||||
}
|
||||
],
|
||||
"label.untitled": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "ခေါင်းစဉ်မရှိ"
|
||||
}
|
||||
],
|
||||
"label.url": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -757,6 +1057,12 @@
|
|||
"value": "အသုံးပြုသူများ"
|
||||
}
|
||||
],
|
||||
"label.value": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "တန်ဖိုး"
|
||||
}
|
||||
],
|
||||
"label.view": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -817,168 +1123,6 @@
|
|||
"value": "မနေ့က"
|
||||
}
|
||||
],
|
||||
"labels.after": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "ပြီးနောက်"
|
||||
}
|
||||
],
|
||||
"labels.average": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "ပျမ်းမျှ"
|
||||
}
|
||||
],
|
||||
"labels.before": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "မတိုင်မီ"
|
||||
}
|
||||
],
|
||||
"labels.breakdown": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "ခွဲခြမ်းစိတ်ဖြာမှု"
|
||||
}
|
||||
],
|
||||
"labels.contains": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "ပါဝင်သည်"
|
||||
}
|
||||
],
|
||||
"labels.create-report": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "ရီပို့လုပ်မည်"
|
||||
}
|
||||
],
|
||||
"labels.description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "ရှင်းပြချက်"
|
||||
}
|
||||
],
|
||||
"labels.does-not-contain": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "မပါဝင်ပါ"
|
||||
}
|
||||
],
|
||||
"labels.does-not-equal": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "မတူညီပါ"
|
||||
}
|
||||
],
|
||||
"labels.equals": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "တူညီသည်"
|
||||
}
|
||||
],
|
||||
"labels.false": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "မှားသည်"
|
||||
}
|
||||
],
|
||||
"labels.filters": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Filter များ"
|
||||
}
|
||||
],
|
||||
"labels.greater-than": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "ထက်ပို၍ကြီးသည်"
|
||||
}
|
||||
],
|
||||
"labels.greater-than-equals": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "ထက်ပို၍ကြီးသည်သို့မဟုတ်တူသည်"
|
||||
}
|
||||
],
|
||||
"labels.less-than": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "ထက်ပို၍ငယ်သည်"
|
||||
}
|
||||
],
|
||||
"labels.less-than-equals": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "ထက်ပို၍ငယ်သည်သို့မဟုတ်တူသည်"
|
||||
}
|
||||
],
|
||||
"labels.max": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "အများဆုံး"
|
||||
}
|
||||
],
|
||||
"labels.min": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "အနည်းဆုံး"
|
||||
}
|
||||
],
|
||||
"labels.overview": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "အပေါ်ယံမြင်ကွင်း"
|
||||
}
|
||||
],
|
||||
"labels.sum": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "ပေါင်းလဒ်"
|
||||
}
|
||||
],
|
||||
"labels.total": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "စုစုပေါင်း"
|
||||
}
|
||||
],
|
||||
"labels.total-records": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "မှတ်တမ်းစုစုပေါင်း"
|
||||
}
|
||||
],
|
||||
"labels.true": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "မှန်သည်"
|
||||
}
|
||||
],
|
||||
"labels.type": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "အမျိုးအစား"
|
||||
}
|
||||
],
|
||||
"labels.unique": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Unique"
|
||||
}
|
||||
],
|
||||
"labels.untitled": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "ခေါင်းစဉ်မရှိ"
|
||||
}
|
||||
],
|
||||
"labels.value": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "တန်ဖိုး"
|
||||
}
|
||||
],
|
||||
"message.active-users": [
|
||||
{
|
||||
"type": 1,
|
||||
|
|
|
|||
|
|
@ -179,6 +179,12 @@
|
|||
"value": "Country"
|
||||
}
|
||||
],
|
||||
"label.create": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Create"
|
||||
}
|
||||
],
|
||||
"label.create-report": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -383,6 +389,12 @@
|
|||
"value": "Fields"
|
||||
}
|
||||
],
|
||||
"label.filter": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Filter"
|
||||
}
|
||||
],
|
||||
"label.filter-combined": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -407,6 +419,12 @@
|
|||
"value": "Funnel"
|
||||
}
|
||||
],
|
||||
"label.funnel-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Understand the conversion and drop-off rate of users."
|
||||
}
|
||||
],
|
||||
"label.greater-than": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -425,6 +443,12 @@
|
|||
"value": "Insights"
|
||||
}
|
||||
],
|
||||
"label.insights-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Dive deeper into your data by using segments and filters."
|
||||
}
|
||||
],
|
||||
"label.is": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -769,6 +793,12 @@
|
|||
"value": "Retention"
|
||||
}
|
||||
],
|
||||
"label.retention-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Measure your website stickiness by tracking how often users return."
|
||||
}
|
||||
],
|
||||
"label.role": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -793,6 +823,12 @@
|
|||
"value": "Screens"
|
||||
}
|
||||
],
|
||||
"label.search": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Search"
|
||||
}
|
||||
],
|
||||
"label.select-date": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
|
|||
|
|
@ -179,6 +179,12 @@
|
|||
"value": "Country"
|
||||
}
|
||||
],
|
||||
"label.create": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Create"
|
||||
}
|
||||
],
|
||||
"label.create-report": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -383,6 +389,12 @@
|
|||
"value": "Fields"
|
||||
}
|
||||
],
|
||||
"label.filter": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Filter"
|
||||
}
|
||||
],
|
||||
"label.filter-combined": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -407,6 +419,12 @@
|
|||
"value": "Funnel"
|
||||
}
|
||||
],
|
||||
"label.funnel-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Understand the conversion and drop-off rate of users."
|
||||
}
|
||||
],
|
||||
"label.greater-than": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -425,6 +443,12 @@
|
|||
"value": "Insights"
|
||||
}
|
||||
],
|
||||
"label.insights-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Dive deeper into your data by using segments and filters."
|
||||
}
|
||||
],
|
||||
"label.is": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -769,6 +793,12 @@
|
|||
"value": "Retention"
|
||||
}
|
||||
],
|
||||
"label.retention-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Measure your website stickiness by tracking how often users return."
|
||||
}
|
||||
],
|
||||
"label.role": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -793,6 +823,12 @@
|
|||
"value": "Schermen"
|
||||
}
|
||||
],
|
||||
"label.search": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Search"
|
||||
}
|
||||
],
|
||||
"label.select-date": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
|
|||
|
|
@ -179,6 +179,12 @@
|
|||
"value": "Country"
|
||||
}
|
||||
],
|
||||
"label.create": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Create"
|
||||
}
|
||||
],
|
||||
"label.create-report": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -383,6 +389,12 @@
|
|||
"value": "Pola"
|
||||
}
|
||||
],
|
||||
"label.filter": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Filter"
|
||||
}
|
||||
],
|
||||
"label.filter-combined": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -407,6 +419,12 @@
|
|||
"value": "Lejek"
|
||||
}
|
||||
],
|
||||
"label.funnel-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Understand the conversion and drop-off rate of users."
|
||||
}
|
||||
],
|
||||
"label.greater-than": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -425,6 +443,12 @@
|
|||
"value": "Insights"
|
||||
}
|
||||
],
|
||||
"label.insights-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Dive deeper into your data by using segments and filters."
|
||||
}
|
||||
],
|
||||
"label.is": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -769,6 +793,12 @@
|
|||
"value": "Retention"
|
||||
}
|
||||
],
|
||||
"label.retention-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Measure your website stickiness by tracking how often users return."
|
||||
}
|
||||
],
|
||||
"label.role": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -793,6 +823,12 @@
|
|||
"value": "Ekrany"
|
||||
}
|
||||
],
|
||||
"label.search": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Search"
|
||||
}
|
||||
],
|
||||
"label.select-date": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
|
|||
|
|
@ -179,6 +179,12 @@
|
|||
"value": "Country"
|
||||
}
|
||||
],
|
||||
"label.create": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Create"
|
||||
}
|
||||
],
|
||||
"label.create-report": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -383,6 +389,12 @@
|
|||
"value": "Campos"
|
||||
}
|
||||
],
|
||||
"label.filter": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Filter"
|
||||
}
|
||||
],
|
||||
"label.filter-combined": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -407,6 +419,12 @@
|
|||
"value": "Funil"
|
||||
}
|
||||
],
|
||||
"label.funnel-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Understand the conversion and drop-off rate of users."
|
||||
}
|
||||
],
|
||||
"label.greater-than": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -425,6 +443,12 @@
|
|||
"value": "Insights"
|
||||
}
|
||||
],
|
||||
"label.insights-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Dive deeper into your data by using segments and filters."
|
||||
}
|
||||
],
|
||||
"label.is": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -769,6 +793,12 @@
|
|||
"value": "Retention"
|
||||
}
|
||||
],
|
||||
"label.retention-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Measure your website stickiness by tracking how often users return."
|
||||
}
|
||||
],
|
||||
"label.role": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -793,6 +823,12 @@
|
|||
"value": "Telas"
|
||||
}
|
||||
],
|
||||
"label.search": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Search"
|
||||
}
|
||||
],
|
||||
"label.select-date": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
|
|||
|
|
@ -179,6 +179,12 @@
|
|||
"value": "Country"
|
||||
}
|
||||
],
|
||||
"label.create": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Create"
|
||||
}
|
||||
],
|
||||
"label.create-report": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -383,6 +389,12 @@
|
|||
"value": "Fields"
|
||||
}
|
||||
],
|
||||
"label.filter": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Filter"
|
||||
}
|
||||
],
|
||||
"label.filter-combined": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -407,6 +419,12 @@
|
|||
"value": "Funnel"
|
||||
}
|
||||
],
|
||||
"label.funnel-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Understand the conversion and drop-off rate of users."
|
||||
}
|
||||
],
|
||||
"label.greater-than": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -425,6 +443,12 @@
|
|||
"value": "Insights"
|
||||
}
|
||||
],
|
||||
"label.insights-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Dive deeper into your data by using segments and filters."
|
||||
}
|
||||
],
|
||||
"label.is": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -769,6 +793,12 @@
|
|||
"value": "Retention"
|
||||
}
|
||||
],
|
||||
"label.retention-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Measure your website stickiness by tracking how often users return."
|
||||
}
|
||||
],
|
||||
"label.role": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -793,6 +823,12 @@
|
|||
"value": "Screens"
|
||||
}
|
||||
],
|
||||
"label.search": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Search"
|
||||
}
|
||||
],
|
||||
"label.select-date": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
|
|||
|
|
@ -179,6 +179,12 @@
|
|||
"value": "Country"
|
||||
}
|
||||
],
|
||||
"label.create": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Create"
|
||||
}
|
||||
],
|
||||
"label.create-report": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -383,6 +389,12 @@
|
|||
"value": "Fields"
|
||||
}
|
||||
],
|
||||
"label.filter": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Filter"
|
||||
}
|
||||
],
|
||||
"label.filter-combined": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -407,6 +419,12 @@
|
|||
"value": "Funnel"
|
||||
}
|
||||
],
|
||||
"label.funnel-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Understand the conversion and drop-off rate of users."
|
||||
}
|
||||
],
|
||||
"label.greater-than": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -425,6 +443,12 @@
|
|||
"value": "Insights"
|
||||
}
|
||||
],
|
||||
"label.insights-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Dive deeper into your data by using segments and filters."
|
||||
}
|
||||
],
|
||||
"label.is": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -769,6 +793,12 @@
|
|||
"value": "Retention"
|
||||
}
|
||||
],
|
||||
"label.retention-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Measure your website stickiness by tracking how often users return."
|
||||
}
|
||||
],
|
||||
"label.role": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -793,6 +823,12 @@
|
|||
"value": "Screens"
|
||||
}
|
||||
],
|
||||
"label.search": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Search"
|
||||
}
|
||||
],
|
||||
"label.select-date": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
|
|||
|
|
@ -179,6 +179,12 @@
|
|||
"value": "Country"
|
||||
}
|
||||
],
|
||||
"label.create": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Create"
|
||||
}
|
||||
],
|
||||
"label.create-report": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -383,6 +389,12 @@
|
|||
"value": "Fields"
|
||||
}
|
||||
],
|
||||
"label.filter": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Filter"
|
||||
}
|
||||
],
|
||||
"label.filter-combined": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -407,6 +419,12 @@
|
|||
"value": "Funnel"
|
||||
}
|
||||
],
|
||||
"label.funnel-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Understand the conversion and drop-off rate of users."
|
||||
}
|
||||
],
|
||||
"label.greater-than": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -425,6 +443,12 @@
|
|||
"value": "Insights"
|
||||
}
|
||||
],
|
||||
"label.insights-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Dive deeper into your data by using segments and filters."
|
||||
}
|
||||
],
|
||||
"label.is": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -769,6 +793,12 @@
|
|||
"value": "Retention"
|
||||
}
|
||||
],
|
||||
"label.retention-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Measure your website stickiness by tracking how often users return."
|
||||
}
|
||||
],
|
||||
"label.role": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -793,6 +823,12 @@
|
|||
"value": "Экраны"
|
||||
}
|
||||
],
|
||||
"label.search": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Search"
|
||||
}
|
||||
],
|
||||
"label.select-date": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
|
|||
|
|
@ -179,6 +179,12 @@
|
|||
"value": "Country"
|
||||
}
|
||||
],
|
||||
"label.create": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Create"
|
||||
}
|
||||
],
|
||||
"label.create-report": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -383,6 +389,12 @@
|
|||
"value": "Fields"
|
||||
}
|
||||
],
|
||||
"label.filter": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Filter"
|
||||
}
|
||||
],
|
||||
"label.filter-combined": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -407,6 +419,12 @@
|
|||
"value": "Funnel"
|
||||
}
|
||||
],
|
||||
"label.funnel-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Understand the conversion and drop-off rate of users."
|
||||
}
|
||||
],
|
||||
"label.greater-than": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -425,6 +443,12 @@
|
|||
"value": "Insights"
|
||||
}
|
||||
],
|
||||
"label.insights-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Dive deeper into your data by using segments and filters."
|
||||
}
|
||||
],
|
||||
"label.is": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -769,6 +793,12 @@
|
|||
"value": "Retention"
|
||||
}
|
||||
],
|
||||
"label.retention-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Measure your website stickiness by tracking how often users return."
|
||||
}
|
||||
],
|
||||
"label.role": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -793,6 +823,12 @@
|
|||
"value": "Screens"
|
||||
}
|
||||
],
|
||||
"label.search": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Search"
|
||||
}
|
||||
],
|
||||
"label.select-date": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
|
|||
|
|
@ -179,6 +179,12 @@
|
|||
"value": "Country"
|
||||
}
|
||||
],
|
||||
"label.create": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Create"
|
||||
}
|
||||
],
|
||||
"label.create-report": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -383,6 +389,12 @@
|
|||
"value": "Fields"
|
||||
}
|
||||
],
|
||||
"label.filter": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Filter"
|
||||
}
|
||||
],
|
||||
"label.filter-combined": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -407,6 +419,12 @@
|
|||
"value": "Funnel"
|
||||
}
|
||||
],
|
||||
"label.funnel-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Understand the conversion and drop-off rate of users."
|
||||
}
|
||||
],
|
||||
"label.greater-than": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -425,6 +443,12 @@
|
|||
"value": "Insights"
|
||||
}
|
||||
],
|
||||
"label.insights-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Dive deeper into your data by using segments and filters."
|
||||
}
|
||||
],
|
||||
"label.is": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -769,6 +793,12 @@
|
|||
"value": "Retention"
|
||||
}
|
||||
],
|
||||
"label.retention-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Measure your website stickiness by tracking how often users return."
|
||||
}
|
||||
],
|
||||
"label.role": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -793,6 +823,12 @@
|
|||
"value": "Screens"
|
||||
}
|
||||
],
|
||||
"label.search": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Search"
|
||||
}
|
||||
],
|
||||
"label.select-date": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
|
|||
|
|
@ -179,6 +179,12 @@
|
|||
"value": "Country"
|
||||
}
|
||||
],
|
||||
"label.create": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Create"
|
||||
}
|
||||
],
|
||||
"label.create-report": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -383,6 +389,12 @@
|
|||
"value": "Fields"
|
||||
}
|
||||
],
|
||||
"label.filter": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Filter"
|
||||
}
|
||||
],
|
||||
"label.filter-combined": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -407,6 +419,12 @@
|
|||
"value": "Funnel"
|
||||
}
|
||||
],
|
||||
"label.funnel-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Understand the conversion and drop-off rate of users."
|
||||
}
|
||||
],
|
||||
"label.greater-than": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -425,6 +443,12 @@
|
|||
"value": "Insights"
|
||||
}
|
||||
],
|
||||
"label.insights-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Dive deeper into your data by using segments and filters."
|
||||
}
|
||||
],
|
||||
"label.is": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -769,6 +793,12 @@
|
|||
"value": "Retention"
|
||||
}
|
||||
],
|
||||
"label.retention-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Measure your website stickiness by tracking how often users return."
|
||||
}
|
||||
],
|
||||
"label.role": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -793,6 +823,12 @@
|
|||
"value": "Upplösning"
|
||||
}
|
||||
],
|
||||
"label.search": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Search"
|
||||
}
|
||||
],
|
||||
"label.select-date": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
|
|||
|
|
@ -179,6 +179,12 @@
|
|||
"value": "Country"
|
||||
}
|
||||
],
|
||||
"label.create": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Create"
|
||||
}
|
||||
],
|
||||
"label.create-report": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -383,6 +389,12 @@
|
|||
"value": "Fields"
|
||||
}
|
||||
],
|
||||
"label.filter": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Filter"
|
||||
}
|
||||
],
|
||||
"label.filter-combined": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -407,6 +419,12 @@
|
|||
"value": "Funnel"
|
||||
}
|
||||
],
|
||||
"label.funnel-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Understand the conversion and drop-off rate of users."
|
||||
}
|
||||
],
|
||||
"label.greater-than": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -425,6 +443,12 @@
|
|||
"value": "Insights"
|
||||
}
|
||||
],
|
||||
"label.insights-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Dive deeper into your data by using segments and filters."
|
||||
}
|
||||
],
|
||||
"label.is": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -769,6 +793,12 @@
|
|||
"value": "Retention"
|
||||
}
|
||||
],
|
||||
"label.retention-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Measure your website stickiness by tracking how often users return."
|
||||
}
|
||||
],
|
||||
"label.role": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -793,6 +823,12 @@
|
|||
"value": "Screens"
|
||||
}
|
||||
],
|
||||
"label.search": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Search"
|
||||
}
|
||||
],
|
||||
"label.select-date": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
|
|||
|
|
@ -179,6 +179,12 @@
|
|||
"value": "Country"
|
||||
}
|
||||
],
|
||||
"label.create": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Create"
|
||||
}
|
||||
],
|
||||
"label.create-report": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -383,6 +389,12 @@
|
|||
"value": "Fields"
|
||||
}
|
||||
],
|
||||
"label.filter": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Filter"
|
||||
}
|
||||
],
|
||||
"label.filter-combined": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -407,6 +419,12 @@
|
|||
"value": "Funnel"
|
||||
}
|
||||
],
|
||||
"label.funnel-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Understand the conversion and drop-off rate of users."
|
||||
}
|
||||
],
|
||||
"label.greater-than": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -425,6 +443,12 @@
|
|||
"value": "Insights"
|
||||
}
|
||||
],
|
||||
"label.insights-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Dive deeper into your data by using segments and filters."
|
||||
}
|
||||
],
|
||||
"label.is": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -761,6 +785,12 @@
|
|||
"value": "Retention"
|
||||
}
|
||||
],
|
||||
"label.retention-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Measure your website stickiness by tracking how often users return."
|
||||
}
|
||||
],
|
||||
"label.role": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -785,6 +815,12 @@
|
|||
"value": "ขนาดหน้าจอ"
|
||||
}
|
||||
],
|
||||
"label.search": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Search"
|
||||
}
|
||||
],
|
||||
"label.select-date": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
|
|||
|
|
@ -179,6 +179,12 @@
|
|||
"value": "Country"
|
||||
}
|
||||
],
|
||||
"label.create": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Create"
|
||||
}
|
||||
],
|
||||
"label.create-report": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -383,6 +389,12 @@
|
|||
"value": "Fields"
|
||||
}
|
||||
],
|
||||
"label.filter": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Filter"
|
||||
}
|
||||
],
|
||||
"label.filter-combined": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -407,6 +419,12 @@
|
|||
"value": "Funnel"
|
||||
}
|
||||
],
|
||||
"label.funnel-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Understand the conversion and drop-off rate of users."
|
||||
}
|
||||
],
|
||||
"label.greater-than": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -425,6 +443,12 @@
|
|||
"value": "Insights"
|
||||
}
|
||||
],
|
||||
"label.insights-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Dive deeper into your data by using segments and filters."
|
||||
}
|
||||
],
|
||||
"label.is": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -769,6 +793,12 @@
|
|||
"value": "Retention"
|
||||
}
|
||||
],
|
||||
"label.retention-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Measure your website stickiness by tracking how often users return."
|
||||
}
|
||||
],
|
||||
"label.role": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -793,6 +823,12 @@
|
|||
"value": "Ekranlar"
|
||||
}
|
||||
],
|
||||
"label.search": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Search"
|
||||
}
|
||||
],
|
||||
"label.select-date": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
|
|||
|
|
@ -179,6 +179,12 @@
|
|||
"value": "Country"
|
||||
}
|
||||
],
|
||||
"label.create": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Create"
|
||||
}
|
||||
],
|
||||
"label.create-report": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -383,6 +389,12 @@
|
|||
"value": "Fields"
|
||||
}
|
||||
],
|
||||
"label.filter": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Filter"
|
||||
}
|
||||
],
|
||||
"label.filter-combined": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -407,6 +419,12 @@
|
|||
"value": "Funnel"
|
||||
}
|
||||
],
|
||||
"label.funnel-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Understand the conversion and drop-off rate of users."
|
||||
}
|
||||
],
|
||||
"label.greater-than": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -425,6 +443,12 @@
|
|||
"value": "Insights"
|
||||
}
|
||||
],
|
||||
"label.insights-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Dive deeper into your data by using segments and filters."
|
||||
}
|
||||
],
|
||||
"label.is": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -769,6 +793,12 @@
|
|||
"value": "Retention"
|
||||
}
|
||||
],
|
||||
"label.retention-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Measure your website stickiness by tracking how often users return."
|
||||
}
|
||||
],
|
||||
"label.role": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -793,6 +823,12 @@
|
|||
"value": "Screens"
|
||||
}
|
||||
],
|
||||
"label.search": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Search"
|
||||
}
|
||||
],
|
||||
"label.select-date": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
|
|||
|
|
@ -179,6 +179,12 @@
|
|||
"value": "Country"
|
||||
}
|
||||
],
|
||||
"label.create": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Create"
|
||||
}
|
||||
],
|
||||
"label.create-report": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -383,6 +389,12 @@
|
|||
"value": "Fields"
|
||||
}
|
||||
],
|
||||
"label.filter": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Filter"
|
||||
}
|
||||
],
|
||||
"label.filter-combined": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -407,6 +419,12 @@
|
|||
"value": "Funnel"
|
||||
}
|
||||
],
|
||||
"label.funnel-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Understand the conversion and drop-off rate of users."
|
||||
}
|
||||
],
|
||||
"label.greater-than": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -425,6 +443,12 @@
|
|||
"value": "Insights"
|
||||
}
|
||||
],
|
||||
"label.insights-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Dive deeper into your data by using segments and filters."
|
||||
}
|
||||
],
|
||||
"label.is": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -769,6 +793,12 @@
|
|||
"value": "Retention"
|
||||
}
|
||||
],
|
||||
"label.retention-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Measure your website stickiness by tracking how often users return."
|
||||
}
|
||||
],
|
||||
"label.role": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -793,6 +823,12 @@
|
|||
"value": "Screens"
|
||||
}
|
||||
],
|
||||
"label.search": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Search"
|
||||
}
|
||||
],
|
||||
"label.select-date": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
|
|||
|
|
@ -179,6 +179,12 @@
|
|||
"value": "Country"
|
||||
}
|
||||
],
|
||||
"label.create": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Create"
|
||||
}
|
||||
],
|
||||
"label.create-report": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -383,6 +389,12 @@
|
|||
"value": "Fields"
|
||||
}
|
||||
],
|
||||
"label.filter": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Filter"
|
||||
}
|
||||
],
|
||||
"label.filter-combined": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -407,6 +419,12 @@
|
|||
"value": "Funnel"
|
||||
}
|
||||
],
|
||||
"label.funnel-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Understand the conversion and drop-off rate of users."
|
||||
}
|
||||
],
|
||||
"label.greater-than": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -425,6 +443,12 @@
|
|||
"value": "Insights"
|
||||
}
|
||||
],
|
||||
"label.insights-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Dive deeper into your data by using segments and filters."
|
||||
}
|
||||
],
|
||||
"label.is": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -761,6 +785,12 @@
|
|||
"value": "Retention"
|
||||
}
|
||||
],
|
||||
"label.retention-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Measure your website stickiness by tracking how often users return."
|
||||
}
|
||||
],
|
||||
"label.role": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -785,6 +815,12 @@
|
|||
"value": "Screens"
|
||||
}
|
||||
],
|
||||
"label.search": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Search"
|
||||
}
|
||||
],
|
||||
"label.select-date": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
|
|||
|
|
@ -104,7 +104,7 @@
|
|||
"label.browser": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Browser"
|
||||
"value": "浏览器"
|
||||
}
|
||||
],
|
||||
"label.browsers": [
|
||||
|
|
@ -134,7 +134,7 @@
|
|||
"label.city": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "City"
|
||||
"value": "市/县"
|
||||
}
|
||||
],
|
||||
"label.clear-all": [
|
||||
|
|
@ -176,7 +176,13 @@
|
|||
"label.country": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Country"
|
||||
"value": "国家/地区"
|
||||
}
|
||||
],
|
||||
"label.create": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Create"
|
||||
}
|
||||
],
|
||||
"label.create-report": [
|
||||
|
|
@ -230,7 +236,7 @@
|
|||
"label.date": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Date"
|
||||
"value": "日期"
|
||||
}
|
||||
],
|
||||
"label.date-range": [
|
||||
|
|
@ -242,7 +248,7 @@
|
|||
"label.day": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Day"
|
||||
"value": "日"
|
||||
}
|
||||
],
|
||||
"label.default-date-range": [
|
||||
|
|
@ -296,7 +302,7 @@
|
|||
"label.device": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Device"
|
||||
"value": "设备"
|
||||
}
|
||||
],
|
||||
"label.devices": [
|
||||
|
|
@ -383,6 +389,12 @@
|
|||
"value": "Fields"
|
||||
}
|
||||
],
|
||||
"label.filter": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Filter"
|
||||
}
|
||||
],
|
||||
"label.filter-combined": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -407,6 +419,12 @@
|
|||
"value": "分析"
|
||||
}
|
||||
],
|
||||
"label.funnel-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Understand the conversion and drop-off rate of users."
|
||||
}
|
||||
],
|
||||
"label.greater-than": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -425,6 +443,12 @@
|
|||
"value": "见解"
|
||||
}
|
||||
],
|
||||
"label.insights-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Dive deeper into your data by using segments and filters."
|
||||
}
|
||||
],
|
||||
"label.is": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -440,13 +464,13 @@
|
|||
"label.is-not-set": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Is not set"
|
||||
"value": "未设置"
|
||||
}
|
||||
],
|
||||
"label.is-set": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Is set"
|
||||
"value": "已设置"
|
||||
}
|
||||
],
|
||||
"label.join": [
|
||||
|
|
@ -576,7 +600,7 @@
|
|||
"label.my-websites": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "My websites"
|
||||
"value": "我的网站"
|
||||
}
|
||||
],
|
||||
"label.name": [
|
||||
|
|
@ -618,7 +642,15 @@
|
|||
"label.page-of": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Page "
|
||||
"value": "总"
|
||||
},
|
||||
{
|
||||
"type": 1,
|
||||
"value": "total"
|
||||
},
|
||||
{
|
||||
"type": 0,
|
||||
"value": "中的第"
|
||||
},
|
||||
{
|
||||
"type": 1,
|
||||
|
|
@ -626,11 +658,7 @@
|
|||
},
|
||||
{
|
||||
"type": 0,
|
||||
"value": " of "
|
||||
},
|
||||
{
|
||||
"type": 1,
|
||||
"value": "total"
|
||||
"value": "页"
|
||||
}
|
||||
],
|
||||
"label.page-views": [
|
||||
|
|
@ -642,7 +670,7 @@
|
|||
"label.pageTitle": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Page title"
|
||||
"value": "标题"
|
||||
}
|
||||
],
|
||||
"label.pages": [
|
||||
|
|
@ -704,7 +732,7 @@
|
|||
"label.referrer": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Referrer"
|
||||
"value": "来源"
|
||||
}
|
||||
],
|
||||
"label.referrers": [
|
||||
|
|
@ -728,7 +756,7 @@
|
|||
"label.region": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Region"
|
||||
"value": "州/省"
|
||||
}
|
||||
],
|
||||
"label.regions": [
|
||||
|
|
@ -770,7 +798,13 @@
|
|||
"label.retention": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Retention"
|
||||
"value": "保留"
|
||||
}
|
||||
],
|
||||
"label.retention-description": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Measure your website stickiness by tracking how often users return."
|
||||
}
|
||||
],
|
||||
"label.role": [
|
||||
|
|
@ -797,6 +831,12 @@
|
|||
"value": "屏幕尺寸"
|
||||
}
|
||||
],
|
||||
"label.search": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Search"
|
||||
}
|
||||
],
|
||||
"label.select-date": [
|
||||
{
|
||||
"type": 0,
|
||||
|
|
@ -872,7 +912,7 @@
|
|||
"label.team-name": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Team name"
|
||||
"value": "团队名称"
|
||||
}
|
||||
],
|
||||
"label.team-owner": [
|
||||
|
|
@ -884,7 +924,7 @@
|
|||
"label.team-websites": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Team websites"
|
||||
"value": "团队网站"
|
||||
}
|
||||
],
|
||||
"label.teams": [
|
||||
|
|
@ -974,7 +1014,7 @@
|
|||
"label.unique": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Unique"
|
||||
"value": "独立"
|
||||
}
|
||||
],
|
||||
"label.unique-visitors": [
|
||||
|
|
@ -998,13 +1038,13 @@
|
|||
"label.url": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "URL"
|
||||
"value": "网址"
|
||||
}
|
||||
],
|
||||
"label.urls": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "URLs"
|
||||
"value": "网址"
|
||||
}
|
||||
],
|
||||
"label.user": [
|
||||
|
|
@ -1046,7 +1086,7 @@
|
|||
"label.view-only": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "View only"
|
||||
"value": "仅浏览量"
|
||||
}
|
||||
],
|
||||
"label.views": [
|
||||
|
|
@ -1190,15 +1230,15 @@
|
|||
"message.event-log": [
|
||||
{
|
||||
"type": 1,
|
||||
"value": "event"
|
||||
"value": "url"
|
||||
},
|
||||
{
|
||||
"type": 0,
|
||||
"value": " on "
|
||||
"value": "上的"
|
||||
},
|
||||
{
|
||||
"type": 1,
|
||||
"value": "url"
|
||||
"value": "event"
|
||||
}
|
||||
],
|
||||
"message.go-to-settings": [
|
||||
|
|
|
|||
84
rollup.components.config.mjs
Normal file
|
|
@ -0,0 +1,84 @@
|
|||
import path from 'path';
|
||||
import crypto from 'crypto';
|
||||
import resolve from '@rollup/plugin-node-resolve';
|
||||
import alias from '@rollup/plugin-alias';
|
||||
import json from '@rollup/plugin-json';
|
||||
import postcss from 'rollup-plugin-postcss';
|
||||
import copy from 'rollup-plugin-copy';
|
||||
import del from 'rollup-plugin-delete';
|
||||
import nodeExternals from 'rollup-plugin-node-externals';
|
||||
import esbuild from 'rollup-plugin-esbuild';
|
||||
import dts from 'rollup-plugin-dts';
|
||||
import svgr from '@svgr/rollup';
|
||||
|
||||
const md5 = str => crypto.createHash('md5').update(str).digest('hex');
|
||||
|
||||
const customResolver = resolve({
|
||||
extensions: ['.js', '.jsx', '.ts', '.tsx'],
|
||||
});
|
||||
|
||||
const aliasConfig = {
|
||||
entries: [
|
||||
{ find: /^components/, replacement: path.resolve('./src/components') },
|
||||
{ find: /^hooks/, replacement: path.resolve('./src/hooks') },
|
||||
{ find: /^lib/, replacement: path.resolve('./src/lib') },
|
||||
{ find: /^store/, replacement: path.resolve('./src/store') },
|
||||
{ find: /^public/, replacement: path.resolve('./public') },
|
||||
{ find: /^assets/, replacement: path.resolve('./src/assets') },
|
||||
],
|
||||
customResolver,
|
||||
};
|
||||
|
||||
const jsBundle = {
|
||||
input: 'src/index.ts',
|
||||
output: [
|
||||
{
|
||||
file: 'dist/index.js',
|
||||
format: 'es',
|
||||
sourcemap: true,
|
||||
},
|
||||
],
|
||||
plugins: [
|
||||
del({ targets: 'dist/*', runOnce: true }),
|
||||
copy({ targets: [{ src: './package.components.json', dest: 'dist', rename: 'package.json' }] }),
|
||||
postcss({
|
||||
config: false,
|
||||
extract: 'styles.css',
|
||||
sourceMap: true,
|
||||
minimize: true,
|
||||
modules: {
|
||||
generateScopedName: function (name, filename, css) {
|
||||
const file = path.basename(filename, '.css').replace('.module', '');
|
||||
const hash = Buffer.from(md5(`${name}:${filename}:${css}`))
|
||||
.toString('base64')
|
||||
.substring(0, 5);
|
||||
|
||||
return `${file}-${name}--${hash}`;
|
||||
},
|
||||
},
|
||||
}),
|
||||
svgr({ icon: true }),
|
||||
nodeExternals(),
|
||||
json(),
|
||||
alias(aliasConfig),
|
||||
esbuild({
|
||||
target: 'es6',
|
||||
jsx: 'automatic',
|
||||
loaders: {
|
||||
'.js': 'jsx',
|
||||
},
|
||||
}),
|
||||
],
|
||||
};
|
||||
|
||||
const dtsBundle = {
|
||||
input: 'src/index.ts',
|
||||
output: {
|
||||
file: 'dist/index.d.ts',
|
||||
format: 'es',
|
||||
},
|
||||
plugins: [alias(aliasConfig), nodeExternals(), json(), dts()],
|
||||
external: [/\.css/],
|
||||
};
|
||||
|
||||
export default [jsBundle, dtsBundle];
|
||||
|
|
@ -4,7 +4,7 @@ import replace from '@rollup/plugin-replace';
|
|||
import { terser } from 'rollup-plugin-terser';
|
||||
|
||||
export default {
|
||||
input: 'tracker/index.js',
|
||||
input: 'src/tracker/index.js',
|
||||
output: {
|
||||
file: 'public/script.js',
|
||||
format: 'iife',
|
||||
|
|
@ -66,12 +66,16 @@ async function checkDatabaseVersion() {
|
|||
|
||||
async function checkV1Tables() {
|
||||
try {
|
||||
await prisma.$queryRaw`select * from account limit 1`;
|
||||
// check for v1 migrations before v2 release date
|
||||
const record =
|
||||
await prisma.$queryRaw`select * from _prisma_migrations where started_at < '2023-04-17'`;
|
||||
|
||||
error(
|
||||
'Umami v1 tables detected. For how to upgrade from v1 to v2 go to https://umami.is/docs/migrate-v1-v2.',
|
||||
);
|
||||
process.exit(1);
|
||||
if (record.length > 0) {
|
||||
error(
|
||||
'Umami v1 tables detected. For how to upgrade from v1 to v2 go to https://umami.is/docs/migrate-v1-v2.',
|
||||
);
|
||||
process.exit(1);
|
||||
}
|
||||
} catch (e) {
|
||||
// Ignore
|
||||
}
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@
|
|||
const fs = require('fs');
|
||||
const path = require('path');
|
||||
const chalk = require('chalk');
|
||||
const messages = require('../lang/en-US.json');
|
||||
const messages = require('../src/lang/en-US.json');
|
||||
const ignore = require('../lang-ignore.json');
|
||||
|
||||
const dir = path.resolve(__dirname, '../lang');
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ const path = require('path');
|
|||
const https = require('https');
|
||||
const chalk = require('chalk');
|
||||
|
||||
const src = path.resolve(__dirname, '../lang');
|
||||
const src = path.resolve(__dirname, '../src/lang');
|
||||
const dest = path.resolve(__dirname, '../public/intl/country');
|
||||
const files = fs.readdirSync(src);
|
||||
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ const path = require('path');
|
|||
const https = require('https');
|
||||
const chalk = require('chalk');
|
||||
|
||||
const src = path.resolve(__dirname, '../lang');
|
||||
const src = path.resolve(__dirname, '../src/lang');
|
||||
const dest = path.resolve(__dirname, '../public/intl/language');
|
||||
const files = fs.readdirSync(src);
|
||||
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@ const path = require('path');
|
|||
const del = require('del');
|
||||
const prettier = require('prettier');
|
||||
|
||||
const src = path.resolve(__dirname, '../lang');
|
||||
const src = path.resolve(__dirname, '../src/lang');
|
||||
const dest = path.resolve(__dirname, '../build/messages');
|
||||
const files = fs.readdirSync(src);
|
||||
|
||||
|
|
@ -17,7 +17,7 @@ async function run() {
|
|||
await fs.ensureDir(dest);
|
||||
|
||||
files.forEach(file => {
|
||||
const lang = require(`../lang/${file}`);
|
||||
const lang = require(`../src/lang/${file}`);
|
||||
const keys = Object.keys(lang).sort();
|
||||
|
||||
const formatted = keys.reduce((obj, key) => {
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ const path = require('path');
|
|||
const prettier = require('prettier');
|
||||
const messages = require('../build/messages.json');
|
||||
|
||||
const dest = path.resolve(__dirname, '../lang');
|
||||
const dest = path.resolve(__dirname, '../src/lang');
|
||||
const files = fs.readdirSync(dest);
|
||||
const keys = Object.keys(messages).sort();
|
||||
|
||||
|
|
@ -14,7 +14,7 @@ with the existing files under `lang`. Any newly added
|
|||
keys will be printed to the console.
|
||||
*/
|
||||
files.forEach(file => {
|
||||
const lang = require(`../lang/${file}`);
|
||||
const lang = require(`../src/lang/${file}`);
|
||||
|
||||
console.log(`Merging ${file}`);
|
||||
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 451 B After Width: | Height: | Size: 451 B |
|
Before Width: | Height: | Size: 328 B After Width: | Height: | Size: 328 B |
|
Before Width: | Height: | Size: 338 B After Width: | Height: | Size: 338 B |
|
Before Width: | Height: | Size: 289 B After Width: | Height: | Size: 289 B |
|
Before Width: | Height: | Size: 1,002 B After Width: | Height: | Size: 1,002 B |
|
Before Width: | Height: | Size: 400 B After Width: | Height: | Size: 400 B |
|
Before Width: | Height: | Size: 1.3 KiB After Width: | Height: | Size: 1.3 KiB |
|
Before Width: | Height: | Size: 547 B After Width: | Height: | Size: 547 B |
|
Before Width: | Height: | Size: 509 B After Width: | Height: | Size: 509 B |
|
Before Width: | Height: | Size: 487 B After Width: | Height: | Size: 487 B |
|
Before Width: | Height: | Size: 2.2 KiB After Width: | Height: | Size: 2.2 KiB |
|
Before Width: | Height: | Size: 874 B After Width: | Height: | Size: 874 B |
|
Before Width: | Height: | Size: 438 B After Width: | Height: | Size: 438 B |
|
Before Width: | Height: | Size: 1.8 KiB After Width: | Height: | Size: 1.8 KiB |
|
Before Width: | Height: | Size: 1.4 KiB After Width: | Height: | Size: 1.4 KiB |
|
Before Width: | Height: | Size: 433 B After Width: | Height: | Size: 433 B |
|
Before Width: | Height: | Size: 390 B After Width: | Height: | Size: 390 B |
|
Before Width: | Height: | Size: 1.5 KiB After Width: | Height: | Size: 1.5 KiB |
|
Before Width: | Height: | Size: 298 B After Width: | Height: | Size: 298 B |
|
Before Width: | Height: | Size: 636 B After Width: | Height: | Size: 636 B |
|
Before Width: | Height: | Size: 371 B After Width: | Height: | Size: 371 B |