2026-07-18 20:27:19 +02:00
|
|
|
"""Flowers application factory."""
|
|
|
|
|
|
2025-03-25 20:32:26 +00:00
|
|
|
from flask import Flask
|
2026-07-18 20:27:19 +02:00
|
|
|
|
|
|
|
|
from Config import COOKIE_SECURE, DEBUG, SECRET_KEY
|
|
|
|
|
from flower_vase import CredentialStore, flower_bp
|
2025-03-25 20:32:26 +00:00
|
|
|
|
|
|
|
|
|
2026-07-18 20:27:19 +02:00
|
|
|
def create_app(test_config: dict | None = None) -> Flask:
|
2026-01-23 23:26:00 +01:00
|
|
|
app = Flask(__name__)
|
2026-07-18 20:27:19 +02:00
|
|
|
app.config.from_mapping(
|
|
|
|
|
SECRET_KEY=SECRET_KEY,
|
|
|
|
|
SESSION_COOKIE_HTTPONLY=True,
|
|
|
|
|
SESSION_COOKIE_SAMESITE="Lax",
|
|
|
|
|
SESSION_COOKIE_SECURE=COOKIE_SECURE,
|
|
|
|
|
MAX_CONTENT_LENGTH=64 * 1024,
|
|
|
|
|
)
|
|
|
|
|
if test_config:
|
|
|
|
|
app.config.update(test_config)
|
|
|
|
|
|
|
|
|
|
app.extensions["credential_store"] = CredentialStore()
|
2026-01-23 23:26:00 +01:00
|
|
|
app.register_blueprint(flower_bp)
|
|
|
|
|
return app
|
2025-03-25 20:32:26 +00:00
|
|
|
|
|
|
|
|
|
2026-07-18 20:27:19 +02:00
|
|
|
if __name__ == "__main__":
|
|
|
|
|
create_app().run(debug=DEBUG, host="127.0.0.1", port=5012)
|