diff --git a/lib/clickhouse.js b/lib/clickhouse.js index 3eea9f484..ea85d579c 100644 --- a/lib/clickhouse.js +++ b/lib/clickhouse.js @@ -171,3 +171,7 @@ export async function findUnique(data) { return data[0] ?? null; } + +export async function findFirst(data) { + return data[0] ?? null; +} diff --git a/queries/admin/account/createAccount.js b/queries/admin/account/createAccount.js index 928f9f457..fb3997e87 100644 --- a/queries/admin/account/createAccount.js +++ b/queries/admin/account/createAccount.js @@ -1,4 +1,4 @@ -import { prisma, runQuery } from 'lib/db/relational'; +import { prisma, runQuery } from 'lib/relational'; export async function createAccount(data) { return runQuery( diff --git a/queries/admin/account/deleteAccount.js b/queries/admin/account/deleteAccount.js index 6a5896d47..f03b370ef 100644 --- a/queries/admin/account/deleteAccount.js +++ b/queries/admin/account/deleteAccount.js @@ -1,4 +1,4 @@ -import { prisma, runQuery } from 'lib/db/relational'; +import { prisma, runQuery } from 'lib/relational'; export async function deleteAccount(user_id) { return runQuery( diff --git a/queries/admin/account/getAccountById.js b/queries/admin/account/getAccountById.js index 92fe5b43f..4c3d647ce 100644 --- a/queries/admin/account/getAccountById.js +++ b/queries/admin/account/getAccountById.js @@ -1,4 +1,4 @@ -import { prisma, runQuery } from 'lib/db/relational'; +import { prisma, runQuery } from 'lib/relational'; export async function getAccountById(user_id) { return runQuery( diff --git a/queries/admin/account/getAccountByUsername.js b/queries/admin/account/getAccountByUsername.js index a777c0eda..30480a71b 100644 --- a/queries/admin/account/getAccountByUsername.js +++ b/queries/admin/account/getAccountByUsername.js @@ -1,4 +1,4 @@ -import { prisma, runQuery } from 'lib/db/relational'; +import { prisma, runQuery } from 'lib/relational'; export async function getAccountByUsername(username) { return runQuery( diff --git a/queries/admin/account/getAccounts.js b/queries/admin/account/getAccounts.js index e24476dfb..94f70c350 100644 --- a/queries/admin/account/getAccounts.js +++ b/queries/admin/account/getAccounts.js @@ -1,4 +1,4 @@ -import { prisma, runQuery } from 'lib/db/relational'; +import { prisma, runQuery } from 'lib/relational'; export async function getAccounts() { return runQuery( diff --git a/queries/admin/account/updateAccount.js b/queries/admin/account/updateAccount.js index 2137003f3..7a337f59c 100644 --- a/queries/admin/account/updateAccount.js +++ b/queries/admin/account/updateAccount.js @@ -1,4 +1,4 @@ -import { prisma, runQuery } from 'lib/db/relational'; +import { prisma, runQuery } from 'lib/relational'; export async function updateAccount(user_id, data) { return runQuery( diff --git a/queries/admin/website/createWebsite.js b/queries/admin/website/createWebsite.js index 8770d1ce2..032a986a6 100644 --- a/queries/admin/website/createWebsite.js +++ b/queries/admin/website/createWebsite.js @@ -1,4 +1,4 @@ -import { prisma, runQuery } from 'lib/db/relational'; +import { prisma, runQuery } from 'lib/relational'; export async function createWebsite(user_id, data) { return runQuery( diff --git a/queries/admin/website/deleteWebsite.js b/queries/admin/website/deleteWebsite.js index 5d88a3b5e..58dc453ba 100644 --- a/queries/admin/website/deleteWebsite.js +++ b/queries/admin/website/deleteWebsite.js @@ -1,4 +1,4 @@ -import { prisma, runQuery } from 'lib/db/relational'; +import { prisma, runQuery } from 'lib/relational'; export async function deleteWebsite(website_id) { return runQuery( diff --git a/queries/admin/website/getAllWebsites.js b/queries/admin/website/getAllWebsites.js index 03e7d86e8..f8d2a3e9c 100644 --- a/queries/admin/website/getAllWebsites.js +++ b/queries/admin/website/getAllWebsites.js @@ -1,4 +1,4 @@ -import { prisma, runQuery } from 'lib/db/relational'; +import { prisma, runQuery } from 'lib/relational'; export async function getAllWebsites() { let data = await runQuery( diff --git a/queries/admin/website/getUserWebsites.js b/queries/admin/website/getUserWebsites.js index 4db70aab1..729ce893d 100644 --- a/queries/admin/website/getUserWebsites.js +++ b/queries/admin/website/getUserWebsites.js @@ -1,4 +1,4 @@ -import { prisma, runQuery } from 'lib/db/relational'; +import { prisma, runQuery } from 'lib/relational'; export async function getUserWebsites(user_id) { return runQuery( diff --git a/queries/admin/website/getWebsiteById.js b/queries/admin/website/getWebsiteById.js index 231cd8993..f4495b934 100644 --- a/queries/admin/website/getWebsiteById.js +++ b/queries/admin/website/getWebsiteById.js @@ -1,4 +1,4 @@ -import { prisma, runQuery } from 'lib/db/relational'; +import { prisma, runQuery } from 'lib/relational'; export async function getWebsiteById(website_id) { return runQuery( diff --git a/queries/admin/website/getWebsiteByShareId.js b/queries/admin/website/getWebsiteByShareId.js index 3148b0622..5630f89e2 100644 --- a/queries/admin/website/getWebsiteByShareId.js +++ b/queries/admin/website/getWebsiteByShareId.js @@ -1,4 +1,4 @@ -import { prisma, runQuery } from 'lib/db/relational'; +import { prisma, runQuery } from 'lib/relational'; export async function getWebsiteByShareId(share_id) { return runQuery( diff --git a/queries/admin/website/getWebsiteByUuid.js b/queries/admin/website/getWebsiteByUuid.js index 29e48a06c..dd0f24eea 100644 --- a/queries/admin/website/getWebsiteByUuid.js +++ b/queries/admin/website/getWebsiteByUuid.js @@ -1,4 +1,4 @@ -import { prisma, runQuery } from 'lib/db/relational'; +import { prisma, runQuery } from 'lib/relational'; export async function getWebsiteByUuid(website_uuid) { return runQuery( diff --git a/queries/admin/website/resetWebsite.js b/queries/admin/website/resetWebsite.js index 8a1c426c2..92bb959c9 100644 --- a/queries/admin/website/resetWebsite.js +++ b/queries/admin/website/resetWebsite.js @@ -1,4 +1,4 @@ -import { prisma, runQuery } from 'lib/db/relational'; +import { prisma, runQuery } from 'lib/relational'; export async function resetWebsite(website_id) { return runQuery(prisma.$queryRaw`delete from session where website_id=${website_id}`); diff --git a/queries/admin/website/updateWebsite.js b/queries/admin/website/updateWebsite.js index 189bd938e..9de1a803a 100644 --- a/queries/admin/website/updateWebsite.js +++ b/queries/admin/website/updateWebsite.js @@ -1,4 +1,4 @@ -import { prisma, runQuery } from 'lib/db/relational'; +import { prisma, runQuery } from 'lib/relational'; export async function updateWebsite(website_id, data) { return runQuery( diff --git a/queries/analytics/event/getEventMetrics.js b/queries/analytics/event/getEventMetrics.js index 41111e716..a3f5c10ad 100644 --- a/queries/analytics/event/getEventMetrics.js +++ b/queries/analytics/event/getEventMetrics.js @@ -1,6 +1,6 @@ import { CLICKHOUSE, RELATIONAL } from 'lib/constants'; import clickhouse from 'lib/clickhouse'; -import { getDateQuery, getFilterQuery, rawQuery } from 'lib/db/relational'; +import { getDateQuery, getFilterQuery, rawQuery } from 'lib/relational'; import { runAnalyticsQuery } from 'lib/db/db'; export async function getEventMetrics(...args) { diff --git a/queries/analytics/event/getEvents.js b/queries/analytics/event/getEvents.js index 42016fc03..db529e0e6 100644 --- a/queries/analytics/event/getEvents.js +++ b/queries/analytics/event/getEvents.js @@ -1,5 +1,5 @@ import { CLICKHOUSE, RELATIONAL } from 'lib/constants'; -import { prisma, runQuery } from 'lib/db/relational'; +import { prisma, runQuery } from 'lib/relational'; import clickhouse from 'lib/clickhouse'; import { runAnalyticsQuery } from 'lib/db/db'; diff --git a/queries/analytics/event/saveEvent.js b/queries/analytics/event/saveEvent.js index fc73c8b80..52aa8656e 100644 --- a/queries/analytics/event/saveEvent.js +++ b/queries/analytics/event/saveEvent.js @@ -1,8 +1,8 @@ import { CLICKHOUSE, KAFKA, RELATIONAL, URL_LENGTH } from 'lib/constants'; import clickhouse from 'lib/clickhouse'; import kafka from 'lib/db/kafka'; -import { prisma, runQuery } from 'lib/db/relational'; -import { runAnalyticsQuery } from 'lib/db/db'; +import { prisma, runQuery } from 'lib/relational'; +import { runAnalyticsQuery } from 'lib/db'; export async function saveEvent(...args) { return runAnalyticsQuery({ diff --git a/queries/analytics/pageview/getPageviewMetrics.js b/queries/analytics/pageview/getPageviewMetrics.js index 3997fd197..92980f3e6 100644 --- a/queries/analytics/pageview/getPageviewMetrics.js +++ b/queries/analytics/pageview/getPageviewMetrics.js @@ -1,6 +1,6 @@ import { CLICKHOUSE, RELATIONAL } from 'lib/constants'; import clickhouse from 'lib/clickhouse'; -import { parseFilters, rawQuery } from 'lib/db/relational'; +import { parseFilters, rawQuery } from 'lib/relational'; import { runAnalyticsQuery } from 'lib/db/db'; export async function getPageviewMetrics(...args) { diff --git a/queries/analytics/pageview/getPageviewParams.js b/queries/analytics/pageview/getPageviewParams.js index d77d328ee..be6e5148e 100644 --- a/queries/analytics/pageview/getPageviewParams.js +++ b/queries/analytics/pageview/getPageviewParams.js @@ -1,4 +1,4 @@ -import { parseFilters, rawQuery, runAnalyticsQuery } from 'lib/db/relational'; +import { parseFilters, rawQuery, runAnalyticsQuery } from 'lib/relational'; import { CLICKHOUSE, RELATIONAL } from 'lib/constants'; export async function getPageviewParams(...args) { diff --git a/queries/analytics/pageview/getPageviewStats.js b/queries/analytics/pageview/getPageviewStats.js index 6a786f580..e731318dc 100644 --- a/queries/analytics/pageview/getPageviewStats.js +++ b/queries/analytics/pageview/getPageviewStats.js @@ -1,5 +1,5 @@ import { CLICKHOUSE, RELATIONAL } from 'lib/constants'; -import { getDateQuery, parseFilters, rawQuery } from 'lib/db/relational'; +import { getDateQuery, parseFilters, rawQuery } from 'lib/relational'; import { runAnalyticsQuery } from 'lib/db/db'; import clickhouse from 'lib/clickhouse'; diff --git a/queries/analytics/pageview/getPageviews.js b/queries/analytics/pageview/getPageviews.js index bccc5bdb9..ba9a218c5 100644 --- a/queries/analytics/pageview/getPageviews.js +++ b/queries/analytics/pageview/getPageviews.js @@ -1,5 +1,5 @@ import { CLICKHOUSE, RELATIONAL } from 'lib/constants'; -import { prisma, runQuery } from 'lib/db/relational'; +import { prisma, runQuery } from 'lib/relational'; import { runAnalyticsQuery } from 'lib/db/db'; import clickhouse from 'lib/clickhouse'; diff --git a/queries/analytics/pageview/savePageView.js b/queries/analytics/pageview/savePageView.js index 926b0ad85..567178554 100644 --- a/queries/analytics/pageview/savePageView.js +++ b/queries/analytics/pageview/savePageView.js @@ -2,7 +2,7 @@ import { CLICKHOUSE, KAFKA, RELATIONAL, URL_LENGTH } from 'lib/constants'; import clickhouse from 'lib/clickhouse'; import { runAnalyticsQuery } from 'lib/db/db'; import kafka from 'lib/db/kafka'; -import { prisma, runQuery } from 'lib/db/relational'; +import { prisma, runQuery } from 'lib/relational'; export async function savePageView(...args) { return runAnalyticsQuery({ diff --git a/queries/analytics/session/createSession.js b/queries/analytics/session/createSession.js index b6dcd563f..a880ce5bd 100644 --- a/queries/analytics/session/createSession.js +++ b/queries/analytics/session/createSession.js @@ -1,5 +1,5 @@ import { CLICKHOUSE, KAFKA, RELATIONAL } from 'lib/constants'; -import { prisma, runQuery } from 'lib/db/relational'; +import { prisma, runQuery } from 'lib/relational'; import clickhouse from 'lib/clickhouse'; import kafka from 'lib/db/kafka'; import { runAnalyticsQuery } from 'lib/db/db'; diff --git a/queries/analytics/session/getSessionByUuid.js b/queries/analytics/session/getSessionByUuid.js index 6fa6dfbaa..953029921 100644 --- a/queries/analytics/session/getSessionByUuid.js +++ b/queries/analytics/session/getSessionByUuid.js @@ -1,7 +1,7 @@ import { CLICKHOUSE, RELATIONAL } from 'lib/constants'; -import { prisma, runQuery } from 'lib/db/relational'; +import { prisma, runQuery } from 'lib/relational'; import clickhouse from 'lib/clickhouse'; -import { runAnalyticsQuery } from 'lib/db/db'; +import { runAnalyticsQuery } from 'lib/db'; export async function getSessionByUuid(...args) { return runAnalyticsQuery({ @@ -23,8 +23,9 @@ async function relationalQuery(session_uuid) { async function clickhouseQuery(session_uuid) { const params = [session_uuid]; - return clickhouse.rawQuery( - ` + return clickhouse + .rawQuery( + ` select session_uuid, website_id, @@ -39,6 +40,7 @@ async function clickhouseQuery(session_uuid) { from session where session_uuid = $1 `, - params, - ); + params, + ) + .then(result => clickhouse.findFirst(result)); } diff --git a/queries/analytics/session/getSessionMetrics.js b/queries/analytics/session/getSessionMetrics.js index 6fde5b3dd..95a8dc668 100644 --- a/queries/analytics/session/getSessionMetrics.js +++ b/queries/analytics/session/getSessionMetrics.js @@ -1,7 +1,7 @@ import { CLICKHOUSE, RELATIONAL } from 'lib/constants'; import clickhouse from 'lib/clickhouse'; import { runAnalyticsQuery } from 'lib/db/db'; -import { parseFilters, rawQuery } from 'lib/db/relational'; +import { parseFilters, rawQuery } from 'lib/relational'; export async function getSessionMetrics(...args) { return runAnalyticsQuery({ diff --git a/queries/analytics/session/getSessions.js b/queries/analytics/session/getSessions.js index 57806c6f4..3fcd1552c 100644 --- a/queries/analytics/session/getSessions.js +++ b/queries/analytics/session/getSessions.js @@ -1,7 +1,7 @@ import { CLICKHOUSE, RELATIONAL } from 'lib/constants'; import clickhouse from 'lib/clickhouse'; -import { runAnalyticsQuery } from 'lib/db/db'; -import { prisma, runQuery } from 'lib/db/relational'; +import { runAnalyticsQuery } from 'lib/db'; +import { prisma, runQuery } from 'lib/relational'; export async function getSessions(...args) { return runAnalyticsQuery({ diff --git a/queries/analytics/stats/getActiveVisitors.js b/queries/analytics/stats/getActiveVisitors.js index fa525314a..af6d3130b 100644 --- a/queries/analytics/stats/getActiveVisitors.js +++ b/queries/analytics/stats/getActiveVisitors.js @@ -1,6 +1,6 @@ import { subMinutes } from 'date-fns'; import { CLICKHOUSE, RELATIONAL } from 'lib/constants'; -import { rawQuery } from 'lib/db/relational'; +import { rawQuery } from 'lib/relational'; import { runAnalyticsQuery } from 'lib/db/db'; import clickhouse from 'lib/clickhouse'; diff --git a/queries/analytics/stats/getWebsiteStats.js b/queries/analytics/stats/getWebsiteStats.js index e4fb4eb85..c87676706 100644 --- a/queries/analytics/stats/getWebsiteStats.js +++ b/queries/analytics/stats/getWebsiteStats.js @@ -1,5 +1,5 @@ import { CLICKHOUSE, RELATIONAL } from 'lib/constants'; -import { getDateQuery, getTimestampInterval, parseFilters, rawQuery } from 'lib/db/relational'; +import { getDateQuery, getTimestampInterval, parseFilters, rawQuery } from 'lib/relational'; import { runAnalyticsQuery } from 'lib/db/db'; import clickhouse from 'lib/clickhouse';