|
1 | 1 | """Compile static asset bundles.""" |
| 2 | +from flask import Flask |
2 | 3 | from flask_assets import Bundle, Environment |
3 | 4 |
|
4 | 5 |
|
5 | | -def compile_auth_assets(app): |
6 | | - """Generate static assets for the auth views.""" |
| 6 | +def compile_stylesheet_assets(app: Flask): |
| 7 | + """ |
| 8 | + Generate stylesheets for thr application. |
| 9 | +
|
| 10 | + :param Flask app: Parent application to generate styles for. |
| 11 | + """ |
7 | 12 | assets = Environment(app) |
8 | 13 | Environment.auto_build = True |
9 | 14 | Environment.debug = False |
10 | 15 | # Stylesheets Bundle |
11 | | - less_bundle = Bundle( |
| 16 | + stylesheet_bundle_account = Bundle( |
12 | 17 | "src/less/account.less", |
13 | 18 | filters="less,cssmin", |
14 | 19 | output="dist/css/account.css", |
15 | 20 | extra={"rel": "stylesheet/less"}, |
16 | 21 | ) |
17 | | - # JavaScript Bundle |
18 | | - js_bundle = Bundle("src/js/main.js", filters="jsmin", output="dist/js/main.min.js") |
| 22 | + stylesheet_bundle_dashboard = Bundle( |
| 23 | + "src/less/dashboard.less", |
| 24 | + filters="less,cssmin", |
| 25 | + output="dist/css/dashboard.css", |
| 26 | + extra={"rel": "stylesheet/less"}, |
| 27 | + ) |
19 | 28 | # Register assets |
20 | | - assets.register("less_all", less_bundle) |
21 | | - assets.register("js_all", js_bundle) |
| 29 | + assets.register("styles_account", stylesheet_bundle_account) |
| 30 | + assets.register("styles_dashboard", stylesheet_bundle_dashboard) |
22 | 31 | # Build assets in development mode |
23 | 32 | if app.config.get("ENVIRONMENT") != "production": |
24 | | - less_bundle.build(force=True) |
25 | | - js_bundle.build() |
| 33 | + stylesheet_bundle_account.build(force=True) |
| 34 | + stylesheet_bundle_dashboard.build(force=True) |
| 35 | + |
26 | 36 |
|
| 37 | +def compile_javascript_assets(app: Flask): |
| 38 | + """ |
| 39 | + Generate static assets for main views. |
27 | 40 |
|
28 | | -def compile_main_assets(app): |
29 | | - """Generate static assets for main views.""" |
| 41 | + :param Flask app: Parent Flask application to generate Javascript bundles for. |
| 42 | + """ |
30 | 43 | assets = Environment(app) |
31 | 44 | Environment.auto_build = True |
32 | 45 | Environment.debug = False |
33 | | - # Stylesheets Bundle |
34 | | - less_bundle = Bundle( |
35 | | - "src/less/dashboard.less", |
36 | | - filters="less,cssmin", |
37 | | - output="dist/css/dashboard.css", |
38 | | - extra={"rel": "stylesheet/less"}, |
39 | | - ) |
| 46 | + # JavaScript Bundle |
| 47 | + js_bundle = Bundle("src/js/main.js", filters="jsmin", output="dist/js/main.min.js") |
40 | 48 | # Register assets |
41 | | - assets.register("less_all", less_bundle) |
| 49 | + assets.register("js_all", js_bundle) |
42 | 50 | # Build assets in development mode |
43 | 51 | if app.config.get("ENVIRONMENT") != "production": |
44 | | - less_bundle.build(force=True) |
| 52 | + js_bundle.build(force=True) |
| 53 | + |
45 | 54 |
|
| 55 | +def compile_static_assets(app: Flask): |
| 56 | + """ |
| 57 | + Compile all asset bundles. |
46 | 58 |
|
47 | | -def compile_static_assets(app): |
48 | | - """Compile all asset bundles.""" |
49 | | - compile_auth_assets(app) |
50 | | - compile_main_assets(app) |
| 59 | + :param Flask app: Parent Flask application to generate asset bundles for. |
| 60 | + """ |
| 61 | + compile_stylesheet_assets(app) |
| 62 | + compile_javascript_assets(app) |
0 commit comments