#                            -*- Configurations -*-
# 
#   Here we are only initializing all configurations according to the flask
# environment.


from os import getenv

from flask import Flask

from config import config_selector
from app.configurations import database, migration, authentication, commands, serializer
from app import views


def init_app(app: Flask):
    config_type = getenv("FLASK_ENV")
    app.config.from_object(config_selector[config_type])

    database.init_app(app)
    migration.init_app(app)
    authentication.init_app(app)
    commands.init_app(app)
    serializer.init_app(app)
    views.init_app(app)