index.html.j2 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116
  1. {%- extends 'base.html.j2' -%}
  2. {% from 'mathjax.html.j2' import mathjax %}
  3. {% from 'jupyter_widgets.html.j2' import jupyter_widgets %}
  4. {%- block header -%}
  5. <!DOCTYPE html>
  6. <html lang="{{ resources.language_code }}">
  7. <head>
  8. {%- block html_head -%}
  9. <meta charset="utf-8" />
  10. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  11. {% set nb_title = nb.metadata.get('title', resources['metadata']['name']) | escape_html_keep_quotes %}
  12. <title>{{nb_title}}</title>
  13. {%- block html_head_js -%}
  14. {%- block html_head_js_jquery -%}
  15. <script src="{{ resources.jquery_url }}"></script>
  16. {%- endblock html_head_js_jquery -%}
  17. {%- block html_head_js_requirejs -%}
  18. <script src="{{ resources.require_js_url }}"></script>
  19. {%- endblock html_head_js_requirejs -%}
  20. {%- block html_head_js_mermaidjs -%}
  21. <script type="module">
  22. import mermaid from '{{ resources.mermaid_js_url }}';
  23. {% if resources.mermaid_js_elk_url %}
  24. import elkLayouts from '{{ resources.mermaid_js_elk_url }}';
  25. mermaid.registerLayoutLoaders(elkLayouts);
  26. {% endif %}
  27. mermaid.initialize({ startOnLoad: true });
  28. </script>
  29. {%- endblock html_head_js_mermaidjs -%}
  30. {%- endblock html_head_js -%}
  31. {% block jupyter_widgets %}
  32. {%- if "widgets" in nb.metadata -%}
  33. {{ jupyter_widgets(resources.jupyter_widgets_base_url, resources.html_manager_semver_range, resources.widget_renderer_url) }}
  34. {%- endif -%}
  35. {% endblock jupyter_widgets %}
  36. {% for css in resources.inlining.css -%}
  37. <style type="text/css">
  38. {{ css }}
  39. </style>
  40. {% endfor %}
  41. {% block notebook_css %}
  42. {{ resources.include_css("static/style.css") }}
  43. <style type="text/css">
  44. /* Overrides of notebook CSS for static HTML export */
  45. body {
  46. overflow: visible;
  47. padding: 8px;
  48. }
  49. div#notebook {
  50. overflow: visible;
  51. border-top: none;
  52. }
  53. {%- if resources.global_content_filter.no_prompt-%}
  54. div#notebook-container{
  55. padding: 6ex 12ex 8ex 12ex;
  56. }
  57. {%- endif -%}
  58. @media print {
  59. body {
  60. margin: 0;
  61. }
  62. div.cell {
  63. display: block;
  64. page-break-inside: avoid;
  65. }
  66. div.output_wrapper {
  67. display: block;
  68. page-break-inside: avoid;
  69. }
  70. div.output {
  71. display: block;
  72. page-break-inside: avoid;
  73. }
  74. }
  75. </style>
  76. {% endblock notebook_css %}
  77. {%- block html_head_js_mathjax -%}
  78. {{ mathjax(resources.mathjax_url) }}
  79. {%- endblock html_head_js_mathjax -%}
  80. {%- block html_head_css -%}
  81. {%- endblock html_head_css -%}
  82. {%- endblock html_head -%}
  83. </head>
  84. {%- endblock header -%}
  85. {% block body_header %}
  86. <body>
  87. <main>
  88. <div tabindex="-1" id="notebook" class="border-box-sizing">
  89. <div class="container" id="notebook-container">
  90. {% endblock body_header %}
  91. {% block body_footer %}
  92. </div>
  93. </div>
  94. </main>
  95. </body>
  96. {% endblock body_footer %}
  97. {% block footer %}
  98. {% block footer_js %}
  99. {% endblock footer_js %}
  100. {{ super() }}
  101. </html>
  102. {% endblock footer %}