diff --git a/apps/frontend/src/api/dbs.ts b/apps/frontend/src/api/dbs.ts index b320cec..2c88edb 100644 --- a/apps/frontend/src/api/dbs.ts +++ b/apps/frontend/src/api/dbs.ts @@ -1,44 +1,28 @@ import PouchDB from '@/api/PouchDB' import type { + BaseDocument, QRCodeDocument, MessageDocument, WebPushSubscriptionDocument, PublicSettingsDocument, UserChatSettingsDocument, } from '@hereconnect/types' +import { DB_NAMES } from '@/constants/dbNames' -export const qrCodeDbRemote = new PouchDB(`${import.meta.env.VITE_API_URL}/qr`, { - skip_setup: true, -}) +export const getRemoteDb = (dbName: DB_NAMES) => + new PouchDB(`${import.meta.env.VITE_API_URL}/${dbName}`, { skip_setup: true }) -export const qrCodeDbLocal = new PouchDB('qr') +export const getLocalDb = (dbName: DB_NAMES) => new PouchDB(dbName) -export const messagesDbLocal = new PouchDB('messages') - -export const webPushSubscriptionsDbRemote = new PouchDB< +export const qrCodeDbRemote = getRemoteDb(DB_NAMES.QR) +export const qrCodeDbLocal = getLocalDb(DB_NAMES.QR) +export const messagesDbLocal = getLocalDb(DB_NAMES.MESSAGES) +export const webPushSubscriptionsDbRemote = getRemoteDb< WebPushSubscriptionDocument ->(`${import.meta.env.VITE_API_URL}/web_push_subscriptions`, { - skip_setup: true, -}) - -export const publicSettingsDbRemote = new PouchDB( - `${import.meta.env.VITE_API_URL}/public_settings`, - { - skip_setup: true, - }, -) - -export const messagesDbRemote = new PouchDB( - `${import.meta.env.VITE_API_URL}/messages`, - { - skip_setup: true, - }, -) - -export const userChatSettingsDbRemote = new PouchDB( - `${import.meta.env.VITE_API_URL}/user_chat_settings`, - { - skip_setup: true, - }, +>(DB_NAMES.WEB_PUSH_SUBSCRIPTIONS) +export const publicSettingsDbRemote = getRemoteDb(DB_NAMES.PUBLIC_SETTINGS) +export const messagesDbRemote = getRemoteDb(DB_NAMES.MESSAGES) +export const userChatSettingsDbRemote = getRemoteDb( + DB_NAMES.USER_CHAT_SETTINGS, ) diff --git a/apps/frontend/src/constants/dbNames.ts b/apps/frontend/src/constants/dbNames.ts new file mode 100644 index 0000000..bd31b68 --- /dev/null +++ b/apps/frontend/src/constants/dbNames.ts @@ -0,0 +1,7 @@ +export enum DB_NAMES { + QR = 'qr', + MESSAGES = 'messages', + WEB_PUSH_SUBSCRIPTIONS = 'web_push_subscriptions', + PUBLIC_SETTINGS = 'public_settings', + USER_CHAT_SETTINGS = 'user_chat_settings', +}