diff --git a/apps/frontend/src/api/dbs.ts b/apps/frontend/src/api/dbs.ts index 1a5829a..c7616fa 100644 --- a/apps/frontend/src/api/dbs.ts +++ b/apps/frontend/src/api/dbs.ts @@ -5,6 +5,7 @@ import type { MessageDocument, WebPushSubscriptionDocument, } from '@/types/DBDocumentTypes' +import type { PublicSettingsDocument } from '@/types/DBDocumentTypes/PublicSettingsDocument' export const qrCodeDbRemote = new PouchDB(`${import.meta.env.VITE_API_URL}/qr`, { skip_setup: true, @@ -21,6 +22,13 @@ export const webPushSubscriptionsDbRemote = 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`, { diff --git a/apps/frontend/src/api/webPush.ts b/apps/frontend/src/api/webPush.ts index da3cecf..fc73788 100644 --- a/apps/frontend/src/api/webPush.ts +++ b/apps/frontend/src/api/webPush.ts @@ -1,5 +1,5 @@ import type { WebPushSubscriptionDocument } from '@/types/DBDocumentTypes' -import { webPushSubscriptionsDbRemote } from '@/api/dbs' +import { publicSettingsDbRemote, webPushSubscriptionsDbRemote } from '@/api/dbs' import { getUserUuid } from '@/utils/getUserUuid' import { getBrowserUuid } from '@/utils/getBrowserUuid' @@ -39,3 +39,10 @@ export const saveWebPushSubscription = async (subscription: PushSubscription) => console.error('Ошибка сохранения подписки:', error) } } + +export const getVapidPublicKey = async () => { + const { value } = await publicSettingsDbRemote.get( + 'public_settings:message_delivery_method_web_push_vapid_public_key', + ) + return value +} diff --git a/apps/frontend/src/components/create/CreateMessageDeliveryOption.vue b/apps/frontend/src/components/create/CreateMessageDeliveryOption.vue index dbe8711..7c84e44 100644 --- a/apps/frontend/src/components/create/CreateMessageDeliveryOption.vue +++ b/apps/frontend/src/components/create/CreateMessageDeliveryOption.vue @@ -1,6 +1,9 @@