35 lines
960 B
JavaScript
35 lines
960 B
JavaScript
import z, { ZodObject } from "zod";
|
|
export function createSchema(appData) {
|
|
return {
|
|
identification: {
|
|
request: z.object({
|
|
app_identifier: z.string(),
|
|
app_session_id: z.number(),
|
|
app_public_key: z.string(),
|
|
user_id: z.number(),
|
|
}),
|
|
response: z.object({
|
|
challenge: z.base64(),
|
|
public_key: z.base64(),
|
|
}),
|
|
},
|
|
challenge_response: {
|
|
request: z.object({
|
|
challenge: z.base64(),
|
|
}),
|
|
response: z.object({}),
|
|
},
|
|
load_app_data: {
|
|
request: z.object({}),
|
|
response: z.object({
|
|
app_data: z.string(),
|
|
}),
|
|
},
|
|
save_app_data: {
|
|
request: z.object({
|
|
app_data: z.string(),
|
|
}),
|
|
response: z.object({}),
|
|
},
|
|
};
|
|
}
|