mirror of
https://github.com/pagefaultgames/pokerogue.git
synced 2025-07-04 23:42:18 +02:00
update pokerogue-api login
This commit is contained in:
parent
8fa0d82a6c
commit
9b18070506
@ -62,27 +62,26 @@ export class PokerogueApi extends Api {
|
|||||||
/**
|
/**
|
||||||
* Send a login request.
|
* Send a login request.
|
||||||
* Sets the session cookie on success.
|
* Sets the session cookie on success.
|
||||||
* @param username The account username.
|
* @param loginData The {@linkcode AccountLoginRequest} to send
|
||||||
* @param password The account password.
|
* @returns An error message if something went wrong
|
||||||
*/
|
*/
|
||||||
public async login(username: string, password: string) {
|
public async login(loginData: AccountLoginRequest) {
|
||||||
try {
|
try {
|
||||||
const response = await this.doPost<AccountLoginRequest>(
|
const response = await this.doPost("/account/login", loginData, "form-urlencoded");
|
||||||
"/account/login",
|
|
||||||
{ username, password },
|
|
||||||
"form-urlencoded"
|
|
||||||
);
|
|
||||||
|
|
||||||
if (response.ok) {
|
if (response.ok) {
|
||||||
const loginResponse = (await response.json()) as AccountLoginResponse;
|
const loginResponse = (await response.json()) as AccountLoginResponse;
|
||||||
setCookie(SESSION_ID_COOKIE_NAME, loginResponse.token);
|
setCookie(SESSION_ID_COOKIE_NAME, loginResponse.token);
|
||||||
return true;
|
return null;
|
||||||
|
} else {
|
||||||
|
console.warn("Login failed!", response.status, response.statusText);
|
||||||
|
return response.text();
|
||||||
}
|
}
|
||||||
} catch (err) {
|
} catch (err) {
|
||||||
console.warn("Could not login!", err);
|
console.warn("Login failed!", err);
|
||||||
}
|
}
|
||||||
|
|
||||||
return false;
|
return "Unknown error!";
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -188,13 +187,13 @@ export class PokerogueApi extends Api {
|
|||||||
* Update a system savedata.
|
* Update a system savedata.
|
||||||
* @param updateData The {@linkcode UpdateSystemSavedataRequest} to send
|
* @param updateData The {@linkcode UpdateSystemSavedataRequest} to send
|
||||||
* @param rawSystemData The raw {@linkcode SystemSaveData}
|
* @param rawSystemData The raw {@linkcode SystemSaveData}
|
||||||
* @returns an error message if something went wrong
|
* @returns An error message if something went wrong
|
||||||
*/
|
*/
|
||||||
public async updateSystemSavedata(updateData: UpdateSystemSavedataRequest, rawSystemData: string) {
|
public async updateSystemSavedata(updateData: UpdateSystemSavedataRequest, rawSystemData: string) {
|
||||||
try {
|
try {
|
||||||
const updateArr = Object.entries(updateData).map(([key, value]) => [key, String(value)]);
|
const updateArr = Object.entries(updateData).map(([key, value]) => [key, String(value)]);
|
||||||
const params = new URLSearchParams(updateArr);
|
const params = new URLSearchParams(updateArr);
|
||||||
const response = await this.doPost<string>(`/savedata/system/update?${params}`, rawSystemData);
|
const response = await this.doPost(`/savedata/system/update?${params}`, rawSystemData);
|
||||||
|
|
||||||
return await response.text();
|
return await response.text();
|
||||||
} catch (err) {
|
} catch (err) {
|
||||||
@ -229,14 +228,14 @@ export class PokerogueApi extends Api {
|
|||||||
* Update a session savedata.
|
* Update a session savedata.
|
||||||
* @param updateData The {@linkcode UpdateSessionSavedataRequest} to send
|
* @param updateData The {@linkcode UpdateSessionSavedataRequest} to send
|
||||||
* @param rawSavedata The raw savedata (as `string`)
|
* @param rawSavedata The raw savedata (as `string`)
|
||||||
* @returns an error message if something went wrong
|
* @returns An error message if something went wrong
|
||||||
*/
|
*/
|
||||||
public async updateSessionSavedata(updateData: UpdateSessionSavedataRequest, rawSavedata: string) {
|
public async updateSessionSavedata(updateData: UpdateSessionSavedataRequest, rawSavedata: string) {
|
||||||
try {
|
try {
|
||||||
const updateArr = Object.entries(updateData).map(([key, value]) => [key, String(value)]);
|
const updateArr = Object.entries(updateData).map(([key, value]) => [key, String(value)]);
|
||||||
const params = new URLSearchParams(updateArr);
|
const params = new URLSearchParams(updateArr);
|
||||||
|
|
||||||
const response = await this.doPost<string>(`/savedata/session/update?${params}`, rawSavedata);
|
const response = await this.doPost(`/savedata/session/update?${params}`, rawSavedata);
|
||||||
|
|
||||||
return await response.text();
|
return await response.text();
|
||||||
} catch (err) {
|
} catch (err) {
|
||||||
@ -294,7 +293,7 @@ export class PokerogueApi extends Api {
|
|||||||
params.append("trainerId", String(trainerId));
|
params.append("trainerId", String(trainerId));
|
||||||
params.append("clientSessionId", sessionId);
|
params.append("clientSessionId", sessionId);
|
||||||
|
|
||||||
const response = await this.doPost<SessionSaveData>(`/savedata/session/clear?${params}`, sessionData);
|
const response = await this.doPost(`/savedata/session/clear?${params}`, sessionData);
|
||||||
|
|
||||||
if (response.ok) {
|
if (response.ok) {
|
||||||
if (loggedInUser) {
|
if (loggedInUser) {
|
||||||
@ -314,14 +313,14 @@ export class PokerogueApi extends Api {
|
|||||||
/**
|
/**
|
||||||
* Update all savedata
|
* Update all savedata
|
||||||
* @param bodyData The {@linkcode UpdateAllSavedataRequest | request data} to send
|
* @param bodyData The {@linkcode UpdateAllSavedataRequest | request data} to send
|
||||||
* @returns an error message if something went wrong
|
* @returns An error message if something went wrong
|
||||||
*/
|
*/
|
||||||
public async updateAllSavedata(bodyData: UpdateAllSavedataRequest) {
|
public async updateAllSavedata(bodyData: UpdateAllSavedataRequest) {
|
||||||
try {
|
try {
|
||||||
const rawBodyData = JSON.stringify(bodyData, (_k: any, v: any) =>
|
const rawBodyData = JSON.stringify(bodyData, (_k: any, v: any) =>
|
||||||
typeof v === "bigint" ? (v <= MAX_INT_ATTR_VALUE ? Number(v) : v.toString()) : v
|
typeof v === "bigint" ? (v <= MAX_INT_ATTR_VALUE ? Number(v) : v.toString()) : v
|
||||||
);
|
);
|
||||||
const response = await this.doPost<string>("/savedata/updateall", rawBodyData);
|
const response = await this.doPost("/savedata/updateall", rawBodyData);
|
||||||
return await response.text();
|
return await response.text();
|
||||||
} catch (err) {
|
} catch (err) {
|
||||||
console.warn("Could not update all savedata!", err);
|
console.warn("Could not update all savedata!", err);
|
||||||
|
@ -136,11 +136,11 @@ export default class LoginFormUiHandler extends FormModalUiHandler {
|
|||||||
|
|
||||||
const [usernameInput, passwordInput] = this.inputs;
|
const [usernameInput, passwordInput] = this.inputs;
|
||||||
|
|
||||||
pokerogueApi.login(usernameInput.text, passwordInput.text).then(isSuccess => {
|
pokerogueApi.login({ username: usernameInput.text, password: passwordInput.text }).then(error => {
|
||||||
if (isSuccess) {
|
if (!error) {
|
||||||
originalLoginAction && originalLoginAction();
|
originalLoginAction && originalLoginAction();
|
||||||
} else {
|
} else {
|
||||||
onFail("Invalid username or password"); // TODO: print actual server error here!
|
onFail(error);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
Loading…
Reference in New Issue
Block a user