astro-kinde
Version:
Astro integration module for Kinde authentication
2 lines • 1.13 kB
JavaScript
import{defineIntegration as r,addVirtualImports as a,createResolver as s}from"astro-integration-kit";import{z as p}from"astro/zod";var d={clientId:"",clientSecret:"",domain:"",callbackUri:"",signedInUri:"",signedOutUri:"",sessionMaxAge:"",responseType:"code",scope:"openid email profile offline"};function c(e,i){[{pattern:"/api/kinde/login",entrypoint:"./api/login.js"},{pattern:"/api/kinde/register",entrypoint:"./api/register.js"},{pattern:"/api/kinde/callback",entrypoint:"./api/callback.js"},{pattern:"/api/kinde/signout",entrypoint:"./api/signout.js"},{pattern:"/api/kinde/isAuthenticated",entrypoint:"./api/isAuthenticated.js"}].forEach(({pattern:t,entrypoint:o})=>{e.injectRoute({pattern:t,entrypoint:i(o)})})}var l=r({name:"kinde-integration",optionsSchema:p.custom().default({}),setup({options:e,name:i}){let{resolve:n}=s(import.meta.url);return{hooks:{"astro:config:setup":t=>{a(t,{name:i,imports:{"virtual:kinde-integration/config":`export default ${JSON.stringify({...d,...e})}`}}),c(t,n),t.addMiddleware({entrypoint:n("./authMiddleware.js"),order:"pre"})}}}}}),g=l;export{g as default};
//# sourceMappingURL=index.js.map