@appwarden/middleware
Version:
Instantly disable all user interaction with your app deployed on Cloudflare or Vercel
42 lines (39 loc) • 1.25 kB
JavaScript
import {
AppwardenApiHostnameSchema,
AppwardenApiTokenSchema,
AppwardenConfigErrorMessages,
BooleanSchema,
UseCSPInputSchema,
ValidLockPageSlugSchema
} from "./chunk-3OXAKJPA.js";
// src/schemas/use-appwarden.ts
import { z } from "zod";
var AppwardenMultidomainConfigSchema = z.record(
z.string(),
z.object({
lockPageSlug: ValidLockPageSlugSchema,
contentSecurityPolicy: z.lazy(() => UseCSPInputSchema).optional(),
debug: BooleanSchema.optional()
})
);
var UseAppwardenInputSchema = z.object({
debug: BooleanSchema.default(false),
lockPageSlug: ValidLockPageSlugSchema.optional(),
contentSecurityPolicy: z.lazy(() => UseCSPInputSchema).optional(),
multidomainConfig: AppwardenMultidomainConfigSchema.optional(),
appwardenApiToken: AppwardenApiTokenSchema,
appwardenApiHostname: AppwardenApiHostnameSchema.optional()
});
var lockPageSlugRefinement = (schema) => schema.refine(
(data) => data.lockPageSlug || data.multidomainConfig,
{
message: AppwardenConfigErrorMessages["LOCK_PAGE_SLUG_REQUIRED" /* LockPageSlugRequired */],
params: {
appwardenErrorKey: "LOCK_PAGE_SLUG_REQUIRED" /* LockPageSlugRequired */
}
}
);
export {
UseAppwardenInputSchema,
lockPageSlugRefinement
};