diff --git a/lib/clickhouse.js b/lib/clickhouse.js index 3eea9f48..ea85d579 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 928f9f45..fb3997e8 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 6a5896d4..f03b370e 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 92fe5b43..4c3d647c 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 a777c0ed..30480a71 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 e24476df..94f70c35 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 2137003f..7a337f59 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 8770d1ce..032a986a 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 5d88a3b5..58dc453b 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 03e7d86e..f8d2a3e9 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 4db70aab..729ce893 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 231cd899..f4495b93 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 3148b062..5630f89e 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 29e48a06..dd0f24ee 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 8a1c426c..92bb959c 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 189bd938..9de1a803 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 41111e71..a3f5c10a 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 42016fc0..db529e0e 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 fc73c8b8..52aa8656 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 3997fd19..92980f3e 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 d77d328e..be6e5148 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 6a786f58..e731318d 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 bccc5bdb..ba9a218c 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 926b0ad8..56717855 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 b6dcd563..a880ce5b 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 6fa6dfba..95302992 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 6fde5b3d..95a8dc66 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 57806c6f..3fcd1552 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 fa525314..af6d3130 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 e4fb4eb8..c8767670 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';