@re-auth/http-adapters
Version:
HTTP protocol adapters for ReAuth - framework-agnostic integration with Express, Fastify, and Hono
1 lines • 127 kB
Source Map (JSON)
{"version":3,"sources":["../src/types.ts","../src/base-adapter.ts","../src/adapters/express.ts","../src/adapters/hono.ts","../src/middleware/security.ts","../src/utils/factory.ts"],"names":["express","setCookie","cookie"],"mappings":"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