mirror of
https://github.com/hydralauncher/hydra.git
synced 2026-01-26 20:31:03 +00:00
ci: adding dockerfile
This commit is contained in:
@@ -1,22 +0,0 @@
|
||||
import { Badge } from "@types";
|
||||
import { registerEvent } from "../register-event";
|
||||
import { HydraApi } from "@main/services";
|
||||
import { db, levelKeys } from "@main/level";
|
||||
|
||||
const getBadges = async (_event: Electron.IpcMainInvokeEvent) => {
|
||||
const language = await db
|
||||
.get<string, string>(levelKeys.language, {
|
||||
valueEncoding: "utf8",
|
||||
})
|
||||
.then((language) => language || "en");
|
||||
|
||||
const params = new URLSearchParams({
|
||||
locale: language,
|
||||
});
|
||||
|
||||
return HydraApi.get<Badge[]>(`/badges?${params.toString()}`, null, {
|
||||
needsAuth: false,
|
||||
});
|
||||
};
|
||||
|
||||
registerEvent("getBadges", getBadges);
|
||||
@@ -1,8 +0,0 @@
|
||||
import { registerEvent } from "../register-event";
|
||||
import { HydraApi } from "@main/services";
|
||||
|
||||
const getFeatures = async (_event: Electron.IpcMainInvokeEvent) => {
|
||||
return HydraApi.get<string[]>("/features", null, { needsAuth: false });
|
||||
};
|
||||
|
||||
registerEvent("getFeatures", getFeatures);
|
||||
38
src/main/events/misc/hydra-api-call.ts
Normal file
38
src/main/events/misc/hydra-api-call.ts
Normal file
@@ -0,0 +1,38 @@
|
||||
import { registerEvent } from "../register-event";
|
||||
import { HydraApi } from "@main/services";
|
||||
|
||||
interface HydraApiCallPayload {
|
||||
method: "get" | "post" | "put" | "patch" | "delete";
|
||||
url: string;
|
||||
data?: unknown;
|
||||
params?: unknown;
|
||||
options?: {
|
||||
needsAuth?: boolean;
|
||||
needsSubscription?: boolean;
|
||||
ifModifiedSince?: Date;
|
||||
};
|
||||
}
|
||||
|
||||
const hydraApiCall = async (
|
||||
_event: Electron.IpcMainInvokeEvent,
|
||||
payload: HydraApiCallPayload
|
||||
) => {
|
||||
const { method, url, data, params, options } = payload;
|
||||
|
||||
switch (method) {
|
||||
case "get":
|
||||
return HydraApi.get(url, params, options);
|
||||
case "post":
|
||||
return HydraApi.post(url, data, options);
|
||||
case "put":
|
||||
return HydraApi.put(url, data, options);
|
||||
case "patch":
|
||||
return HydraApi.patch(url, data, options);
|
||||
case "delete":
|
||||
return HydraApi.delete(url, options);
|
||||
default:
|
||||
throw new Error(`Unsupported HTTP method: ${method}`);
|
||||
}
|
||||
};
|
||||
|
||||
registerEvent("hydraApiCall", hydraApiCall);
|
||||
Reference in New Issue
Block a user