Source code for zemfrog.loaders.staticfile

from flask import Flask, send_from_directory


[docs]def loader(app: Flask): """ This function is to create multiple static files based on the ``STATICFILES`` configuration. """ staticfiles = app.config.get("STATICFILES", []) for static in staticfiles: path, endpoint, static_folder = static static_host = None if len(static) == 4: static_host = static[-1] def serve_static(filename): cache_timeout = app.get_send_file_max_age(filename) return send_from_directory( static_folder, filename, cache_timeout=cache_timeout ) app.add_url_rule( path.rstrip("/") + "/<path:filename>", endpoint=endpoint, host=static_host, view_func=serve_static,
)