UNPKG

@adventurelabs/scout-core

Version:

Core utilities and helpers for Adventure Labs Scout applications

52 lines (51 loc) 2.07 kB
"use server"; import { newServerClient } from "../supabase/server"; import { IWebResponse, } from "../types/requests"; export async function server_get_session_summaries_by_herd(herd_id, client) { const supabase = client || (await newServerClient()); const { data, error } = await supabase.rpc("get_session_summaries", { start_date_caller: undefined, end_date_caller: undefined, device_id_caller: undefined, herd_id_caller: herd_id, }); if (error) { return IWebResponse.error(error.message).to_compatible(); } if (!data) { return IWebResponse.error("No session summary data returned").to_compatible(); } return IWebResponse.success(data).to_compatible(); } export async function server_get_session_summaries_by_device(device_id, client) { const supabase = client || (await newServerClient()); const { data, error } = await supabase.rpc("get_session_summaries", { start_date_caller: undefined, end_date_caller: undefined, device_id_caller: device_id, herd_id_caller: undefined, }); if (error) { return IWebResponse.error(error.message).to_compatible(); } if (!data) { return IWebResponse.error("No session summary data returned").to_compatible(); } return IWebResponse.success(data).to_compatible(); } export async function server_get_session_summaries_with_filters(herd_id, device_id, start_date, end_date, client) { const supabase = client || (await newServerClient()); const { data, error } = await supabase.rpc("get_session_summaries", { start_date_caller: start_date || undefined, end_date_caller: end_date || undefined, device_id_caller: device_id || undefined, herd_id_caller: herd_id || undefined, }); if (error) { return IWebResponse.error(error.message).to_compatible(); } if (!data) { return IWebResponse.error("No session summary data returned").to_compatible(); } return IWebResponse.success(data).to_compatible(); }