@adventurelabs/scout-core 1.0.103 → 1.0.104
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/helpers/index.d.ts
CHANGED
package/dist/helpers/index.js
CHANGED
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { IWebResponseCompatible } from "../types/requests";
|
|
2
|
+
import { IOperator } from "../types/db";
|
|
3
|
+
export declare function server_get_operators_by_session_id(sessionId: number): Promise<IWebResponseCompatible<IOperator[]>>;
|
|
4
|
+
export declare function server_get_operators_by_user_id(userId: string): Promise<IWebResponseCompatible<IOperator[]>>;
|
|
5
|
+
export declare function server_get_operators_by_session_id_filtered(sessionId: number, action?: string, timestampAfter?: string): Promise<IWebResponseCompatible<IOperator[]>>;
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
"use server";
|
|
2
|
+
import { newServerClient } from "../supabase/server";
|
|
3
|
+
import { EnumWebResponse, IWebResponse, } from "../types/requests";
|
|
4
|
+
// Get operators by session id (server id)
|
|
5
|
+
export async function server_get_operators_by_session_id(sessionId) {
|
|
6
|
+
const supabase = await newServerClient();
|
|
7
|
+
const { data, error } = await supabase
|
|
8
|
+
.from("operators")
|
|
9
|
+
.select("*")
|
|
10
|
+
.eq("session_id", sessionId)
|
|
11
|
+
.order("created_at", { ascending: false });
|
|
12
|
+
if (error) {
|
|
13
|
+
console.warn("Error fetching operators by session id:", error.message);
|
|
14
|
+
return {
|
|
15
|
+
status: EnumWebResponse.ERROR,
|
|
16
|
+
msg: error.message,
|
|
17
|
+
data: [],
|
|
18
|
+
};
|
|
19
|
+
}
|
|
20
|
+
return IWebResponse.success(data || []).to_compatible();
|
|
21
|
+
}
|
|
22
|
+
// Get all operators for a specific user
|
|
23
|
+
export async function server_get_operators_by_user_id(userId) {
|
|
24
|
+
const supabase = await newServerClient();
|
|
25
|
+
const { data, error } = await supabase
|
|
26
|
+
.from("operators")
|
|
27
|
+
.select("*")
|
|
28
|
+
.eq("user_id", userId)
|
|
29
|
+
.order("created_at", { ascending: false });
|
|
30
|
+
if (error) {
|
|
31
|
+
console.warn("Error fetching operators by user id:", error.message);
|
|
32
|
+
return {
|
|
33
|
+
status: EnumWebResponse.ERROR,
|
|
34
|
+
msg: error.message,
|
|
35
|
+
data: [],
|
|
36
|
+
};
|
|
37
|
+
}
|
|
38
|
+
return IWebResponse.success(data || []).to_compatible();
|
|
39
|
+
}
|
|
40
|
+
// Get operators by session id with additional filters
|
|
41
|
+
export async function server_get_operators_by_session_id_filtered(sessionId, action, timestampAfter) {
|
|
42
|
+
const supabase = await newServerClient();
|
|
43
|
+
let query = supabase
|
|
44
|
+
.from("operators")
|
|
45
|
+
.select("*")
|
|
46
|
+
.eq("session_id", sessionId);
|
|
47
|
+
// Apply optional filters
|
|
48
|
+
if (action) {
|
|
49
|
+
query = query.eq("action", action);
|
|
50
|
+
}
|
|
51
|
+
if (timestampAfter) {
|
|
52
|
+
query = query.gte("timestamp", timestampAfter);
|
|
53
|
+
}
|
|
54
|
+
const { data, error } = await query.order("timestamp", { ascending: false });
|
|
55
|
+
if (error) {
|
|
56
|
+
console.warn("Error fetching filtered operators by session id:", error.message);
|
|
57
|
+
return {
|
|
58
|
+
status: EnumWebResponse.ERROR,
|
|
59
|
+
msg: error.message,
|
|
60
|
+
data: [],
|
|
61
|
+
};
|
|
62
|
+
}
|
|
63
|
+
return IWebResponse.success(data || []).to_compatible();
|
|
64
|
+
}
|