From 5d8c93695644b5278be283bb147cb007c542244c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cristi=20V=C3=AEjdea?= Date: Sun, 14 Oct 2018 05:08:28 +0300 Subject: [PATCH] Moar blocks --- docs/custom_ui.rst | 15 +-- src/drf_yasg/static/drf-yasg/redoc-init.js | 2 +- .../static/drf-yasg/redoc/redoc-logo.png | Bin 0 -> 4969 bytes .../swagger-ui-dist/favicon-16x16.png | Bin 445 -> 0 bytes .../static/drf-yasg/swagger-ui-init.js | 70 +++++++++---- src/drf_yasg/templates/drf-yasg/redoc.html | 34 ++++++- .../templates/drf-yasg/swagger-ui.html | 92 +++++++++++------- update-ui.sh | 5 +- 8 files changed, 141 insertions(+), 77 deletions(-) create mode 100644 src/drf_yasg/static/drf-yasg/redoc/redoc-logo.png delete mode 100644 src/drf_yasg/static/drf-yasg/swagger-ui-dist/favicon-16x16.png diff --git a/docs/custom_ui.rst b/docs/custom_ui.rst index c81d5ad..6603506 100644 --- a/docs/custom_ui.rst +++ b/docs/custom_ui.rst @@ -4,15 +4,8 @@ Customizing the web UI The web UI can be customized using the settings available in :ref:`swagger-ui-settings` and :ref:`redoc-ui-settings`. -You can also extend one of the ``drf-yasg/swagger-ui.html`` or ``drf-yasg/redoc.html`` templates that are used for -rendering. The customizable blocks are currently limited to: +You can also extend one of the drf-yasg/swagger-ui.html_ or drf-yasg/redoc.html_ templates that are used for +rendering. See the template source code (linked above) for a complete list of customizable blocks. -{% block extra_styles %} - additional stylesheets - -{% block extra_scripts %} - additional scripts - -{% block user_context_message %} - *(swagger-ui session auth only)* - logged in user message +.. _drf-yasg/swagger-ui.html: https://github.com/axnsan12/drf-yasg/blob/master/src/drf_yasg/templates/drf-yasg/swagger-ui.html +.. _drf-yasg/redoc.html: https://github.com/axnsan12/drf-yasg/blob/master/src/drf_yasg/templates/drf-yasg/redoc.html diff --git a/src/drf_yasg/static/drf-yasg/redoc-init.js b/src/drf_yasg/static/drf-yasg/redoc-init.js index b45a2e3..a8b59e3 100644 --- a/src/drf_yasg/static/drf-yasg/redoc-init.js +++ b/src/drf_yasg/static/drf-yasg/redoc-init.js @@ -23,7 +23,7 @@ for (var p in redocSettings) { } } -document.body.appendChild(redoc); +document.body.replaceChild(redoc, document.getElementById('redoc-placeholder')); function hideEmptyVersion() { // 'span.api-info-version' is for redoc 1.x, 'div.api-info span' is for redoc 2-alpha diff --git a/src/drf_yasg/static/drf-yasg/redoc/redoc-logo.png b/src/drf_yasg/static/drf-yasg/redoc/redoc-logo.png new file mode 100644 index 0000000000000000000000000000000000000000..73e5e037c03545b5d21f883775b4cdadb509e59f GIT binary patch literal 4969 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 NSEseqv%vN}{{wV#E8+kE literal 0 HcmV?d00001 diff --git a/src/drf_yasg/static/drf-yasg/swagger-ui-dist/favicon-16x16.png b/src/drf_yasg/static/drf-yasg/swagger-ui-dist/favicon-16x16.png deleted file mode 100644 index 0f7e13b0d9903d27a9129950b1dad362361504e4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 445 zcmV;u0Yd(XP)rNm2=6wQ7&2F}_`h_PI>(9Fx!5<0%l6W{u0OQ#*rglqx3__&vD?|#%fhn*Mn&YY1i+JQHqPvZ34FR@_E%P@x zzTL;Bw#nJXWY}D7^bC>-bx{t|^|R6Oci&MKvov8Op~S=}R=h^p-=vZ0uqG@LE6tP7 n92{cY$^db6>&z__iT?Z#Z8B - {{ title }} + {% block title %}{{ title }}{% endblock %} - + {% block extra_head %} + {# -- Add any extra HTML heads tags here - except scripts and styles -- #} + {% endblock %} + + {% block favicon %} + {# -- Maybe replace the favicon -- #} + + {% endblock %} + + {% block main_styles %} + + {% endblock %} {% block extra_styles %} {# -- Add any additional CSS scripts here -- #} {% endblock %} + +{% block extra_body %} + {# -- Add any header/body markup here (rendered BEFORE the swagger-ui/redoc element) -- #} +{% endblock %} + +
+ +{% block footer %} + {# -- Add any footer markup here (rendered AFTER the swagger-ui/redoc element) -- #} +{% endblock %} + - - - +{% block main_scripts %} + + + +{% endblock %} {% block extra_scripts %} {# -- Add any additional scripts here -- #} {% endblock %} diff --git a/src/drf_yasg/templates/drf-yasg/swagger-ui.html b/src/drf_yasg/templates/drf-yasg/swagger-ui.html index 7187b7b..a452a53 100644 --- a/src/drf_yasg/templates/drf-yasg/swagger-ui.html +++ b/src/drf_yasg/templates/drf-yasg/swagger-ui.html @@ -1,16 +1,23 @@ - {% load static %} - + - - {{ title }} + + {% block title %}{{ title }}{% endblock %} - - - - - + {% block extra_head %} + {# -- Add any extra HTML heads tags here - except scripts and styles -- #} + {% endblock %} + + {% block favicon %} + {# -- Maybe replace the favicon -- #} + + {% endblock %} + + {% block main_styles %} + + + {% endblock %} {% block extra_styles %} {# -- Add any additional CSS scripts here -- #} {% endblock %} @@ -18,16 +25,26 @@ +{% block extra_body %} + {# -- Add any header/body markup here (rendered BEFORE the swagger-ui/redoc element) -- #} +{% endblock %} +
+{% block footer %} + {# -- Add any footer markup here (rendered AFTER the swagger-ui/redoc element) -- #} +{% endblock %} + - - - - - +{% block main_scripts %} + + + + + +{% endblock %} {% block extra_scripts %} {# -- Add any additional scripts here -- #} {% endblock %} @@ -36,33 +53,36 @@ {% if USE_SESSION_AUTH %}