remove @zitadel/node, move fcn to /client

This commit is contained in:
Max Peintner
2025-01-02 14:44:37 +01:00
parent 5f19892c82
commit f12709e97f
15 changed files with 21 additions and 125 deletions

View File

@@ -0,0 +1,26 @@
import { createGrpcTransport, GrpcTransportOptions } from "@connectrpc/connect-node";
import { importPKCS8, SignJWT } from "jose";
import { NewAuthorizationBearerInterceptor } from "./interceptors";
/**
* Create a server transport with the given token and configuration options.
* @param token
* @param opts
*/
export function createServerTransport(token: string, opts: GrpcTransportOptions) {
return createGrpcTransport({
...opts,
interceptors: [...(opts.interceptors || []), NewAuthorizationBearerInterceptor(token)],
});
}
export async function newSystemToken() {
return await new SignJWT({})
.setProtectedHeader({ alg: "RS256" })
.setIssuedAt()
.setExpirationTime("1h")
.setIssuer(process.env.ZITADEL_SYSTEM_API_USERID ?? "")
.setSubject(process.env.ZITADEL_SYSTEM_API_USERID ?? "")
.setAudience(process.env.ZITADEL_ISSUER ?? "")
.sign(await importPKCS8(process.env.ZITADEL_SYSTEM_API_KEY ?? "", "RS256"));
}

View File

@@ -5,3 +5,5 @@ export { NewAuthorizationBearerInterceptor } from "./interceptors";
export { create, fromJson, toJson } from "@bufbuild/protobuf";
export { TimestampSchema, timestampDate, timestampFromDate, timestampFromMs, timestampMs } from "@bufbuild/protobuf/wkt";
export type { Duration, Timestamp } from "@bufbuild/protobuf/wkt";
export { createServerTransport, newSystemToken } from "./grpc";