import { postApi } from "../network.js";
import { ApiPayload } from "../types/clips-tool-types.js";
import schema from "../types/schema.js";
export async function getSavedClips(args: ApiPayload, requestModifiers?: any, sessionId?: string) {
return await postApi<schema["Event_GetClipsWithProgressWSResponse"]>({
route: "/event/getClipsWithProgress",
body: args,
modifiers: requestModifiers,
sessionId,
}).then(response => {
if (response.error) return response;
else
return (
response.savedClips?.map((clip: any) => ({
...clip,
createdAtTimestamp: clip.createdAtMs ? new Date(clip.createdAtMs).toISOString() : null,
})) ?? []
);
});
}
export async function getExpiringClips(
args: ApiPayload,
requestModifiers?: any,
sessionId?: string
) {
return await postApi<schema["Event_GetClipsWithProgressWSResponse"]>({
route: "/event/getExpiringClipsForOrg",
body: args,
modifiers: requestModifiers,
sessionId,
}).then(response => {
if (response.error) return response;
else
return {
...response,
savedClips: (response.savedClips || []).map((clip: any) => ({
...clip,
createdAtTimestamp: clip.createdAtMs ? new Date(clip.createdAtMs).toISOString() : null,
})),
};
});
}