This commit is contained in:
Max Peintner
2023-05-24 16:27:35 +02:00
parent 34ec74badf
commit 6f4a233db9
4 changed files with 42 additions and 46 deletions

View File

@@ -1,3 +1,4 @@
import { Session } from "#/../../packages/zitadel-server/dist";
import { listSessions, server } from "#/lib/zitadel";
import Alert from "#/ui/Alert";
import { Avatar } from "#/ui/Avatar";
@@ -6,21 +7,22 @@ import { UserPlusIcon, XCircleIcon } from "@heroicons/react/24/outline";
import moment from "moment";
import Link from "next/link";
async function loadSessions() {
async function loadSessions(): Promise<Session[]> {
const ids = await getAllSessionIds();
if (ids && ids.length) {
return listSessions(
const response = await listSessions(
server,
ids.filter((id: string | undefined) => !!id)
);
return response?.sessions ?? [];
} else {
return [];
}
}
export default async function Page() {
const { sessions } = await loadSessions();
const sessions = await loadSessions();
return (
<div className="flex flex-col items-center space-y-4">

View File

@@ -2,7 +2,6 @@ import "#/styles/globals.scss";
import { AddressBar } from "#/ui/AddressBar";
import { GlobalNav } from "#/ui/GlobalNav";
import { Lato } from "next/font/google";
import Byline from "#/ui/Byline";
import { LayoutProviders } from "#/ui/LayoutProviders";
import { Analytics } from "@vercel/analytics/react";
import ThemeWrapper from "#/ui/ThemeWrapper";
@@ -25,8 +24,7 @@ export default async function RootLayout({
// later only shown with dev mode enabled
const showNav = true;
// const general = await getGeneralSettings(server);
const branding: BrandingSettings = await getBrandingSettings(server);
const branding = await getBrandingSettings(server);
let partial: Partial<BrandingSettings> | undefined;
if (branding) {
partial = {

View File

@@ -7,10 +7,18 @@ import {
initializeServer,
session,
GetGeneralSettingsResponse,
CreateSessionResponse,
GetBrandingSettingsResponse,
GetPasswordComplexitySettingsResponse,
GetLegalAndSupportSettingsResponse,
AddHumanUserResponse,
BrandingSettings,
ListSessionsResponse,
LegalAndSupportSettings,
PasswordComplexitySettings,
GetSessionResponse,
VerifyEmailResponse,
SetSessionResponse,
} from "@zitadel/server";
export const zitadelConfig: ZitadelServerOptions = {
@@ -28,67 +36,47 @@ if (!getServers().length) {
export function getBrandingSettings(
server: ZitadelServer
): Promise<any | undefined> {
// settings.branding_settings.BrandingSettings
): Promise<BrandingSettings | undefined> {
const settingsService = settings.getSettings(server);
return settingsService
.getBrandingSettings(
{},
{
// metadata: orgMetadata(process.env.ZITADEL_ORG_ID ?? "")
}
)
.getBrandingSettings({}, {})
.then((resp: GetBrandingSettingsResponse) => resp.settings);
}
export function getGeneralSettings(
server: ZitadelServer
): Promise<any | undefined> {
// settings.branding_settings.BrandingSettings
): Promise<string[] | undefined> {
const settingsService = settings.getSettings(server);
return settingsService
.getGeneralSettings(
{},
{
// metadata: orgMetadata(process.env.ZITADEL_ORG_ID ?? "")
}
)
.getGeneralSettings({}, {})
.then((resp: GetGeneralSettingsResponse) => resp.supportedLanguages);
}
export function getLegalAndSupportSettings(
server: ZitadelServer
): Promise<any | undefined> {
): Promise<LegalAndSupportSettings | undefined> {
const settingsService = settings.getSettings(server);
return settingsService
.getLegalAndSupportSettings(
{},
{
// metadata: orgMetadata(process.env.ZITADEL_ORG_ID ?? "")
}
)
.then((resp: GetLegalAndSupportSettingsResponse) => resp.settings);
.getLegalAndSupportSettings({}, {})
.then((resp: GetLegalAndSupportSettingsResponse) => {
return resp.settings;
});
}
export function getPasswordComplexitySettings(
server: ZitadelServer
): Promise<any | undefined> {
): Promise<PasswordComplexitySettings | undefined> {
const settingsService = settings.getSettings(server);
return settingsService
.getPasswordComplexitySettings(
{},
{
// metadata: orgMetadata(process.env.ZITADEL_ORG_ID ?? "")
}
)
.getPasswordComplexitySettings({}, {})
.then((resp: GetPasswordComplexitySettingsResponse) => resp.settings);
}
export function createSession(
server: ZitadelServer,
loginName: string
): Promise<any | undefined> {
): Promise<CreateSessionResponse | undefined> {
const sessionService = session.getSession(server);
return sessionService.createSession({ checks: { user: { loginName } } }, {});
}
@@ -98,7 +86,7 @@ export function setSession(
sessionId: string,
sessionToken: string,
password: string
): Promise<any | undefined> {
): Promise<SetSessionResponse | undefined> {
const sessionService = session.getSession(server);
return sessionService.setSession(
{ sessionId, sessionToken, checks: { password: { password } } },
@@ -110,7 +98,7 @@ export function getSession(
server: ZitadelServer,
sessionId: string,
sessionToken: string
): Promise<any | undefined> {
): Promise<GetSessionResponse | undefined> {
const sessionService = session.getSession(server);
return sessionService.getSession({ sessionId, sessionToken }, {});
}
@@ -118,7 +106,7 @@ export function getSession(
export function listSessions(
server: ZitadelServer,
ids: string[]
): Promise<any | undefined> {
): Promise<ListSessionsResponse | undefined> {
const sessionService = session.getSession(server);
const query = { offset: 0, limit: 100, asc: true };
const queries = [{ idsQuery: { ids } }];
@@ -145,9 +133,7 @@ export function addHumanUser(
profile: { firstName, lastName },
password: { password },
},
{
// metadata: orgMetadata(process.env.ZITADEL_ORG_ID ?? "")
}
{}
)
.then((resp: AddHumanUserResponse) => {
return resp.userId;
@@ -158,7 +144,7 @@ export function verifyEmail(
server: ZitadelServer,
userId: string,
verificationCode: string
): Promise<any> {
): Promise<VerifyEmailResponse> {
const userservice = user.getUser(server);
return userservice.verifyEmail(
{

View File

@@ -11,13 +11,23 @@ export {
Theme,
} from "./proto/server/zitadel/settings/v2alpha/branding_settings";
export { Session } from "./proto/server/zitadel/session/v2alpha/session";
export {
ListSessionsResponse,
GetSessionResponse,
CreateSessionResponse,
SetSessionResponse,
} from "./proto/server/zitadel/session/v2alpha/session_service";
export {
GetPasswordComplexitySettingsResponse,
GetBrandingSettingsResponse,
GetLegalAndSupportSettingsResponse,
GetGeneralSettingsResponse,
} from "./proto/server/zitadel/settings/v2alpha/settings_service";
export { AddHumanUserResponse } from "./proto/server/zitadel/user/v2alpha/user_service";
export {
AddHumanUserResponse,
VerifyEmailResponse,
} from "./proto/server/zitadel/user/v2alpha/user_service";
export { type LegalAndSupportSettings } from "./proto/server/zitadel/settings/v2alpha/legal_settings";
export { type PasswordComplexitySettings } from "./proto/server/zitadel/settings/v2alpha/password_settings";