Initial commit: Open sourcing all of the Maple Open Technologies code.

This commit is contained in:
Bartlomiej Mika 2025-12-02 14:33:08 -05:00
commit 755d54a99d
2010 changed files with 448675 additions and 0 deletions

View file

@ -0,0 +1,35 @@
package middleware
import (
"go.uber.org/zap"
"codeberg.org/mapleopentech/monorepo/cloud/maplefile-backend/config"
uc_user "codeberg.org/mapleopentech/monorepo/cloud/maplefile-backend/internal/usecase/user"
"codeberg.org/mapleopentech/monorepo/cloud/maplefile-backend/pkg/ratelimit"
"codeberg.org/mapleopentech/monorepo/cloud/maplefile-backend/pkg/security/jwt"
)
// Wire provider for middleware
func ProvideMiddleware(
logger *zap.Logger,
jwtProvider jwt.JWTProvider,
userGetByIDUseCase uc_user.UserGetByIDUseCase,
) Middleware {
return NewMiddleware(logger, jwtProvider, userGetByIDUseCase)
}
// ProvideRateLimitMiddleware provides the rate limit middleware for Wire DI
func ProvideRateLimitMiddleware(
logger *zap.Logger,
loginRateLimiter ratelimit.LoginRateLimiter,
) *RateLimitMiddleware {
return NewRateLimitMiddleware(logger, loginRateLimiter)
}
// ProvideSecurityHeadersMiddleware provides the security headers middleware for Wire DI
func ProvideSecurityHeadersMiddleware(
config *config.Config,
) *SecurityHeadersMiddleware {
return NewSecurityHeadersMiddleware(config)
}