@keycloakify/keycloak-account-ui
Version:
Repackaged Keycloak Account UI
80 lines • 3.22 kB
JavaScript
import { joinPath } from "../utils/joinPath";
import { parseResponse } from "../api/parse-response";
import { request } from "../api/request";
export async function getPersonalInfo({ signal, context, }) {
const response = await request("/?userProfileMetadata=true", context, {
signal,
});
return parseResponse(response);
}
export async function getSupportedLocales({ signal, context, }) {
const response = await request("/supportedLocales", context, { signal });
return parseResponse(response);
}
export async function savePersonalInfo(context, info) {
const response = await request("/", context, { body: info, method: "POST" });
if (!response.ok) {
const { errors } = await response.json();
throw errors;
}
return undefined;
}
export async function getPermissionRequests(resourceId, { signal, context }) {
const response = await request(`/resources/${resourceId}/permissions/requests`, context, { signal });
return parseResponse(response);
}
export async function getDevices({ signal, context, }) {
const response = await request("/sessions/devices", context, { signal });
return parseResponse(response);
}
export async function getApplications({ signal, context, }) {
const response = await request("/applications", context, { signal });
return parseResponse(response);
}
export async function deleteConsent(context, id) {
return request(`/applications/${id}/consent`, context, { method: "DELETE" });
}
export async function deleteSession(context, id) {
return request(`/sessions${id ? `/${id}` : ""}`, context, {
method: "DELETE",
});
}
export async function getCredentials({ signal, context }) {
const response = await request("/credentials", context, {
signal,
});
return parseResponse(response);
}
export async function getLinkedAccounts({ signal, context }, query) {
const response = await request("/linked-accounts", context, {
searchParams: Object.entries(query).reduce((acc, [key, value]) => (Object.assign(Object.assign({}, acc), { [key]: value.toString() })), {}),
signal,
});
return parseResponse(response);
}
export async function unLinkAccount(context, account) {
const response = await request("/linked-accounts/" + account.providerName, context, {
method: "DELETE",
});
if (response.ok)
return;
return parseResponse(response);
}
export async function linkAccount(context, account) {
const redirectUri = encodeURIComponent(joinPath(context.environment.serverBaseUrl, "realms", context.environment.realm, "account"));
const response = await request("/linked-accounts/" + account.providerName, context, {
searchParams: { providerId: account.providerName, redirectUri },
});
return parseResponse(response);
}
export async function getGroups({ signal, context }) {
const response = await request("/groups", context, {
signal,
});
return parseResponse(response);
}
export async function getUserOrganizations({ signal, context }) {
const response = await request("/organizations", context, { signal });
return parseResponse(response);
}
//# sourceMappingURL=methods.js.map