diff options
author | Simone Bortolin <simonebortolin@users.noreply.github.com> | 2022-08-31 22:21:36 +0200 |
---|---|---|
committer | Simone Bortolin <simonebortolin@users.noreply.github.com> | 2022-12-19 23:08:42 +0100 |
commit | 04ee701ff01037c4b9e933fe535dc3083cb0b8ba (patch) | |
tree | 74f50b2e0ead9e2828161dc136eeabea1a0342b9 /_layouts | |
parent | update to theme v4.0.0-rc1+mod (diff) | |
download | hack-gpon.github.io-04ee701ff01037c4b9e933fe535dc3083cb0b8ba.tar hack-gpon.github.io-04ee701ff01037c4b9e933fe535dc3083cb0b8ba.tar.gz hack-gpon.github.io-04ee701ff01037c4b9e933fe535dc3083cb0b8ba.tar.bz2 hack-gpon.github.io-04ee701ff01037c4b9e933fe535dc3083cb0b8ba.tar.lz hack-gpon.github.io-04ee701ff01037c4b9e933fe535dc3083cb0b8ba.tar.xz hack-gpon.github.io-04ee701ff01037c4b9e933fe535dc3083cb0b8ba.tar.zst hack-gpon.github.io-04ee701ff01037c4b9e933fe535dc3083cb0b8ba.zip |
Diffstat (limited to '')
-rw-r--r-- | _layouts/default.html | 572 |
1 files changed, 266 insertions, 306 deletions
diff --git a/_layouts/default.html b/_layouts/default.html index da47fcb..fe0aa0a 100644 --- a/_layouts/default.html +++ b/_layouts/default.html @@ -6,333 +6,292 @@ layout: table_wrappers <html lang="{{ site.lang | default: 'en-US' }}"> {% include head.html %} + <body> - <svg xmlns="http://www.w3.org/2000/svg" style="display: none;"> - <symbol id="svg-link" viewBox="0 0 24 24"> - <title>Link</title> - <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-link"> - <path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path> - </svg> - </symbol> - <symbol id="svg-search" viewBox="0 0 24 24"> - <title>Search</title> - <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-search"> - <circle cx="11" cy="11" r="8"></circle><line x1="21" y1="21" x2="16.65" y2="16.65"></line> - </svg> - </symbol> - <symbol id="svg-menu" viewBox="0 0 24 24"> - <title>Menu</title> - <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-menu"> - <line x1="3" y1="12" x2="21" y2="12"></line><line x1="3" y1="6" x2="21" y2="6"></line><line x1="3" y1="18" x2="21" y2="18"></line> - </svg> - </symbol> - <symbol id="svg-arrow-right" viewBox="0 0 24 24"> - <title>Expand</title> - <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-chevron-right"> - <polyline points="9 18 15 12 9 6"></polyline> - </svg> - </symbol> - <symbol id="svg-doc" viewBox="0 0 24 24"> - <title>Document</title> - <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-file"> - <path d="M13 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V9z"></path><polyline points="13 2 13 9 20 9"></polyline> - </svg> - </symbol> - {% include icons/alert.html %} - {% include icons/code_copy.html %} - {% include icons/external_link.html %} - {% include icons/custom.html %} - </svg> + <svg xmlns="http://www.w3.org/2000/svg" style="display: none;"> + <symbol id="svg-link" viewBox="0 0 24 24"> + <title>Link</title> + <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" + stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" + class="feather feather-link"> + <path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path> + <path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path> + </svg> + </symbol> + <symbol id="svg-search" viewBox="0 0 24 24"> + <title>Search</title> + <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" + stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" + class="feather feather-search"> + <circle cx="11" cy="11" r="8"></circle> + <line x1="21" y1="21" x2="16.65" y2="16.65"></line> + </svg> + </symbol> + <symbol id="svg-menu" viewBox="0 0 24 24"> + <title>Menu</title> + <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" + stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" + class="feather feather-menu"> + <line x1="3" y1="12" x2="21" y2="12"></line> + <line x1="3" y1="6" x2="21" y2="6"></line> + <line x1="3" y1="18" x2="21" y2="18"></line> + </svg> + </symbol> + <symbol id="svg-arrow-right" viewBox="0 0 24 24"> + <title>Expand</title> + <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" + stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" + class="feather feather-chevron-right"> + <polyline points="9 18 15 12 9 6"></polyline> + </svg> + </symbol> + <symbol id="svg-doc" viewBox="0 0 24 24"> + <title>Document</title> + <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" + stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" + class="feather feather-file"> + <path d="M13 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V9z"></path> + <polyline points="13 2 13 9 20 9"></polyline> + </svg> + </symbol> + {% include icons/alert.html %} + {% include icons/code_copy.html %} + {% include icons/external_link.html %} + {% include icons/custom.html %} + </svg> - <div class="side-bar"> - <div class="site-header"> - <a href="{{ '/' | relative_url }}" class="site-title lh-tight">{% include title.html %}</a> - <a href="#" id="menu-button" class="site-button"> - <svg viewBox="0 0 24 24" class="icon"><use xlink:href="#svg-menu"></use></svg> - </a> - </div> - <nav role="navigation" aria-label="Main" id="site-nav" class="site-nav"> - {% assign pages_top_size = site.html_pages - | where_exp:"item", "item.title != nil" - | where_exp:"item", "item.parent == nil" - | where_exp:"item", "item.nav_exclude != true" - | size %} - {% if pages_top_size > 0 %} - {% include nav.html pages=site.html_pages key=nil %} - {% endif %} - {% if site.just_the_docs.collections %} - {% assign collections_size = site.just_the_docs.collections | size %} - {% for collection_entry in site.just_the_docs.collections %} - {% assign collection_key = collection_entry[0] %} - {% assign collection_value = collection_entry[1] %} - {% assign collection = site[collection_key] %} - {% if collection_value.nav_exclude != true %} - {% if collections_size > 1 or pages_top_size > 0 %} - {% if collection_value.nav_fold == true %} - <ul class="nav-list nav-category-list"> - <li class="nav-list-item{% if page.collection == collection_key %} active{% endif %}"> - {%- if collection.size > 0 -%} - <a href="#" class="nav-list-expander"><svg viewBox="0 0 24 24"><use xlink:href="#svg-arrow-right"></use></svg></a> - {%- endif -%} - <div class="nav-category">{{ collection_value.name }}</div> - {% include nav.html pages=collection key=collection_key %} - </li> - </ul> - {% else %} - <div class="nav-category">{{ collection_value.name }}</div> - {% include nav.html pages=collection key=collection_key %} - {% endif %} - {% else %} - {% include nav.html pages=collection key=collection_key %} - {% endif %} - {% endif %} - {% endfor %} - {% else %} - {% include nav.html pages=site.html_pages %} - {% endif %} - </nav> - <footer class="site-footer"> - This site uses <a href="https://github.com/just-the-docs/just-the-docs">Just the Docs</a>, a documentation theme for Jekyll. - </footer> + <div class="side-bar"> + <div class="site-header"> + <a href="{{ '/' | relative_url }}" class="site-title lh-tight">{% include title.html %}</a> + <a href="#" id="menu-button" class="site-button"> + <svg viewBox="0 0 24 24" class="icon"> + <use xlink:href="#svg-menu"></use> + </svg> + </a> </div> - <div class="main" id="top"> - <div id="main-header" class="main-header"> - {% if site.search_enabled != false %} - <div class="search"> - <div class="search-input-wrap"> - <input type="text" id="search-input" class="search-input" tabindex="0" placeholder="Search {{ site.title }}" aria-label="Search {{ site.title }}" autocomplete="off"> - <label for="search-input" class="search-label"><svg viewBox="0 0 24 24" class="search-icon"><use xlink:href="#svg-search"></use></svg></label> - </div> - <div id="search-results" class="search-results"></div> - </div> - {% endif %} - {% include header_custom.html %} - <nav class="aux-nav"><ul class="aux-nav-list"> - {% if site.aux_links %} - {% for link in site.aux_links %} - <li class="aux-nav-list-item"> - <span class="site-button"> - <a href="{{ link.link }}" class="btn btn-{{ link.color }}">{{ link.title }} - {% if link.logo %} - <img src="{{ link.logo }}"></img> - {% endif %} - {% if link.icon %} - <svg> - <use xlink:href="#{{ link.icon }}"></use></svg> - </svg> - {% endif %} - </a> - </span> - </li> - {% endfor %} - {% endif %} - <li class="aux-nav-list-item"><span class="site-button "><a class="btn js-toggle-dark-mode">Dark mode</a></span></li> - </ul></nav> - </div> - <div id="main-content-wrap" class="main-content-wrap"> - {% unless page.url == "/" %} - {% if page.parent %} - {%- for node in pages_list -%} - {%- if node.parent == nil -%} - {%- if page.parent == node.title or page.grand_parent == node.title -%} - {%- assign first_level_url = node.url | relative_url -%} - {%- endif -%} - {%- if node.has_children -%} - {%- assign children_list = pages_list | where: "parent", node.title -%} - {%- for child in children_list -%} - {%- if page.url == child.url or page.parent == child.title -%} - {%- assign second_level_url = child.url | relative_url -%} - {%- endif -%} - {%- endfor -%} - {%- endif -%} - {%- endif -%} - {%- endfor -%} - <nav aria-label="Breadcrumb" class="breadcrumb-nav"> - <ol class="breadcrumb-nav-list"> - {% if page.grand_parent %} - <li class="breadcrumb-nav-list-item"><a href="{{ first_level_url }}">{{ page.grand_parent }}</a></li> - <li class="breadcrumb-nav-list-item"><a href="{{ second_level_url }}">{{ page.parent }}</a></li> - {% else %} - <li class="breadcrumb-nav-list-item"><a href="{{ first_level_url }}">{{ page.parent }}</a></li> - {% endif %} - <li class="breadcrumb-nav-list-item"><span>{{ page.title }}</span></li> - </ol> - </nav> - {% endif %} - {% endunless %} - <div id="main-content" class="main-content" role="main"> - <header class="page-header" role="banner"> - {% if - site.gh_edit_link and - site.gh_edit_link_text and - site.gh_edit_repository and - site.gh_edit_branch and - site.gh_edit_view_mode - %} - <a class="site-button github-edit" href="{{ site.gh_edit_repository }}/{{ site.gh_edit_view_mode }}/{{ site.gh_edit_branch }}{% if site.gh_edit_source %}/{{ site.gh_edit_source }}{% endif %}/{{ page.path }}" id="edit-this-page" title="{{ site.gh_edit_link_text }}"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20.71 7.04c.39-.39.39-1.04 0-1.41l-2.34-2.34c-.37-.39-1.02-.39-1.41 0l-1.84 1.83 3.75 3.75M3 17.25V21h3.75L17.81 9.93l-3.75-3.75L3 17.25z"></path></svg></a> - {% endif %} - <h1 class="fs-9">{{ page.title | default: site.title | default: site.github.repository_name }}</h1> - {% if page.alias %} - <h2 class="fmt-0"><span class="fw-300">Also sold as: </span> {{ page.alias }}</h2> - {% endif %} - {% if site.last_edit_timestamp_script == true %} - <ul class="metadata text-small"> - <li id="last-modified">Last Modified</li> - <li><a id="contributors" data-toogle="modal" data-target="#contributors-modal">Contributor</a></li> - </ul> - <div class="modal" data-modal="contributors-modal" id="contributors-modal"> - <div class="modal-content"> - <div class="modal-header"> - <span class="close">×</span> - <h2>Contributor to this article</h2> - </div> - <ul class="modal-body" id="contributors-modal-list"> - - </ul> - </div> - </div> - {% endif %} - {% if page.description %} - <h2 class="fs-6 fw-300">{{ page.description }}</h2> - {% endif %} - </header> - <hr> - {% if site.heading_anchors != false %} - {% include vendor/anchor_headings.html html=content beforeHeading="true" anchorBody="<svg viewBox=\"0 0 16 16\" aria-hidden=\"true\"><use xlink:href=\"#svg-link\"></use></svg>" anchorClass="anchor-heading" anchorAttrs="aria-labelledby=\"%html_id%\"" %} - {% else %} - {{ content }} + <nav role="navigation" aria-label="Main" id="site-nav" class="site-nav"> + {% include nav/main.html %} + </nav> + {% capture nav_footer_custom %} + {%- include nav_footer_custom.html -%} + {% endcapture %} + {% if nav_footer_custom != "" %} + {{ nav_footer_custom }} + {% else %} + <footer class="site-footer"> + This site uses <a href="https://github.com/just-the-docs/just-the-docs">Just the Docs</a>, a documentation theme for Jekyll. + </footer> + {% endif %} + </div> + <div class="main" id="top"> + <div id="main-header" class="main-header"> + {% if site.search_enabled != false %} + {% capture search_placeholder %}{% include search_placeholder_custom.html %}{% endcapture %} + <div class="search"> + <div class="search-input-wrap"> + <input type="text" id="search-input" class="search-input" tabindex="0" placeholder="{{ search_placeholder | strip_html | strip }}" aria-label="{{ search_placeholder | strip_html| strip }}" autocomplete="off"> + <label for="search-input" class="search-label"><svg viewBox="0 0 24 24" class="search-icon"><use xlink:href="#svg-search"></use></svg></label> + </div> + <div id="search-results" class="search-results"></div> + </div> + {% endif %} + {% include header_custom.html %} + <nav class="aux-nav"> + <ul class="aux-nav-list"> + {% if site.aux_links %} + {% for link in site.aux_links %} + <li class="aux-nav-list-item"> + <span class="site-button"> + <a href="{{ link.link }}" class="btn btn-{{ link.color }}">{{ link.title }} + {% if link.logo %} + <img src="{{ link.logo }}"></img> {% endif %} - - {% if page.has_children == true and page.has_toc != false %} - <hr> - <h2 class="text-delta">Table of contents</h2> - <ul> - {%- assign children_list = pages_list | where: "parent", page.title | where: "grand_parent", page.parent -%} - {% for child in children_list %} - <li> - <a href="{{ child.url | relative_url }}">{{ child.title }}</a>{% if child.summary %} - {{ child.summary }}{% endif %} - </li> - {% endfor %} - </ul> - {% endif %} - - {% capture footer_custom %} - {%- include footer_custom.html -%} - {% endcapture %} - {% if footer_custom != "" or site.last_edit_timestamp or site.gh_edit_link %} - <hr> - <footer> - {% if site.back_to_top %} - <p><a href="#top" id="back-to-top">{{ site.back_to_top_text }}</a></p> - {% endif %} - - {% if site.last_edit_timestamp or site.gh_edit_link %} - <div class="d-flex mt-2"> - {% if site.last_edit_timestamp and site.last_edit_time_format and page.last_modified_date %} - <p class="text-small text-grey-500 mb-0 mr-2"> - Page last modified: <span class="d-inline-block">{{ page.last_modified_date | date: site.last_edit_time_format }}</span>. - </p> - {% endif %} - {% if - site.gh_edit_link and - site.gh_edit_link_text and - site.gh_edit_repository and - site.gh_edit_branch and - site.gh_edit_view_mode - %} - <p class="text-small text-grey-500 mb-0"> - <a href="{{ site.gh_edit_repository }}/{{ site.gh_edit_view_mode }}/{{ site.gh_edit_branch }}{% if site.gh_edit_source %}/{{ site.gh_edit_source }}{% endif %}/{{ page.path }}" id="edit-this-page">{{ site.gh_edit_link_text }}</a> - </p> - {% endif %} - </div> - {% endif %} - - {{ footer_custom }} - </footer> + {% if link.icon %} + <svg> + <use xlink:href="#{{ link.icon }}"></use> + </svg> + </svg> {% endif %} + </a> + </span> + </li> + {% endfor %} + {% endif %} + <li class="aux-nav-list-item"><span class="site-button "><a class="btn js-toggle-dark-mode">Dark + mode</a></span></li> + </ul> + </nav> + </div> + <div id="main-content-wrap" class="main-content-wrap"> + {% if page.parent and page.url != "/" %} + {% include nav/crumbs.html nodes=nav_page_ancestors %} + {% endif %} + <div id="main-content" class="main-content" role="main"> + <header class="page-header" role="banner"> + {% if + site.gh_edit_link and + site.gh_edit_link_text and + site.gh_edit_repository and + site.gh_edit_branch and + site.gh_edit_view_mode + %} + <a class="site-button github-edit" + href="{{ site.gh_edit_repository }}/{{ site.gh_edit_view_mode }}/{{ site.gh_edit_branch }}{% if site.gh_edit_source %}/{{ site.gh_edit_source }}{% endif %}/{{ page.path }}" + id="edit-this-page" title="{{ site.gh_edit_link_text }}"><svg xmlns="http://www.w3.org/2000/svg" + viewBox="0 0 24 24"> + <path + d="M20.71 7.04c.39-.39.39-1.04 0-1.41l-2.34-2.34c-.37-.39-1.02-.39-1.41 0l-1.84 1.83 3.75 3.75M3 17.25V21h3.75L17.81 9.93l-3.75-3.75L3 17.25z"> + </path> + </svg></a> + {% endif %} + <h1 class="fs-9">{{ page.title | default: site.title | default: site.github.repository_name }}</h1> + {% if page.alias %} + <h2 class="fmt-0"><span class="fw-300">Also sold as: </span> {{ page.alias }}</h2> + {% endif %} + {% if site.last_edit_timestamp_script == true %} + <ul class="metadata text-small"> + <li id="last-modified">Last Modified</li> + <li><a id="contributors" data-toogle="modal" data-target="#contributors-modal">Contributor</a> + </li> + </ul> + <div class="modal" data-modal="contributors-modal" id="contributors-modal"> + <div class="modal-content"> + <div class="modal-header"> + <span class="close">×</span> + <h2>Contributor to this article</h2> + </div> + <ul class="modal-body" id="contributors-modal-list"> + </ul> </div> - </div> + </div> + {% endif %} + {% if page.description %} + <h2 class="fs-6 fw-300">{{ page.description }}</h2> + {% endif %} + </header> + <hr> + {% if site.heading_anchors != false %} + {% include vendor/anchor_headings.html html=content beforeHeading="true" anchorBody="<svg viewBox=\"0 0 16 16\" aria-hidden=\"true\"><use xlink:href=\"#svg-link\"></use></svg>" anchorClass="anchor-heading" anchorAttrs="aria-labelledby=\"%html_id%\"" %} + {% else %} + {{ content }} + {% endif %} + {% unless page.has_toc == false %} + {% include nav/toc.html nodes=nav_page_children %} + {% endunless %} + {% capture footer_custom %} + {%- include footer_custom.html -%} + {% endcapture %} + {% if footer_custom != "" or site.last_edit_timestamp or site.gh_edit_link %} + <hr> + <footer> + {% if site.back_to_top %} + <p><a href="#top" id="back-to-top">{{ site.back_to_top_text }}</a></p> + {% endif %} + {{ footer_custom }} + {% if site.last_edit_timestamp or site.gh_edit_link %} + <div class="d-flex mt-2"> + {% if site.last_edit_timestamp and site.last_edit_time_format and page.last_modified_date %} + <p class="text-small text-grey-400 mb-0 mr-2"> + Page last modified: <span class="d-inline-block">{{ page.last_modified_date | date: site.last_edit_time_format }}</span>. + </p> + {% endif %} + {% if + site.gh_edit_link and + site.gh_edit_link_text and + site.gh_edit_repository and + site.gh_edit_branch and + site.gh_edit_view_mode + %} + <p class="text-small text-grey-400 mb-0"> + <a href="{{ site.gh_edit_repository }}/{{ site.gh_edit_view_mode }}/{{ site.gh_edit_branch }}{% if site.gh_edit_source %}/{{ site.gh_edit_source }}{% endif %}{% if page.collection and site.collections_dir %}/{{ site.collections_dir }}{% endif %}/{{ page.path }}" id="edit-this-page">{{ site.gh_edit_link_text }}</a> + </p> + {% endif %} + </div> + {% endif %} + </footer> + {% endif %} + </div> + </div> + {% if site.search_enabled != false %} + {% if site.search.button %} + <a href="#" id="search-button" class="search-button"> + <svg viewBox="0 0 24 24" class="icon"><use xlink:href="#svg-search"></use></svg> + </a> + {% endif %} + <div class="search-overlay"></div> + {% endif %} + </div> - {% if site.search_enabled != false %} - {% if site.search.button %} - <a href="#" id="search-button" class="search-button"> - <svg viewBox="0 0 24 24" class="icon"><use xlink:href="#svg-search"></use></svg> - </a> - {% endif %} +</body> +<script src="{{ base.url | prepend: site.url }}/assets/js/theme-switch.js"></script> +<script src="{{ base.url | prepend: site.url }}/assets/js/modal.js"></script> - <div class="search-overlay"></div> - {% endif %} - </div> - <script src="{{ base.url | prepend: site.url }}/assets/js/theme-switch.js"></script> - <script src="{{ base.url | prepend: site.url }}/assets/js/modal.js"></script> +{%if site.last_edit_timestamp_script and site.gh_owner_name and site.gh_repository_name and page.path %} +<script> + var listOfScannedFilename = []; - {%if site.last_edit_timestamp_script and site.gh_owner_name and site.gh_repository_name and page.path %} - <script> - var listOfScannedFilename = []; + async function parseFirstCommit(commit, filename) { + return fetch(commit.url).then((response) => { + return response.json(); + }).then(async function (commits) { + var old_filename = commits.files.filter(it => it.filename === filename && it.status === 'renamed').map(it => it.previous_filename); + if (old_filename[0] !== undefined && !listOfScannedFilename.includes(old_filename[0])) { + listOfScannedFilename.push(old_filename[0]); + return fetch("https://api.github.com/repos/{{ site.gh_owner_name }}/{{ site.gh_repository_name }}/commits?path=" + old_filename[0]) + .then((response) => { + return response.json(); + }).then(async function (commits) { + return parseCommitsList(commits, old_filename); + }); + } + }); + } + async function parseCommitsList(commits, filename) { + var authors = commits.flatMap(x => [{ ...x.commit.author, ...x.author }, { ...x.commit.committer, ...x.committer }]).map(({ date, ...keepAttrs }) => keepAttrs).filter((value, index, self) => + index === self.findIndex((t) => ( + t.login === value.login + )) && value.login !== "web-flow" + ); - async function parseFirstCommit(commit,filename) { - return fetch(commit.url).then((response) => { - return response.json(); - }).then(async function(commits) { - var old_filename = commits.files.filter(it => it.filename === filename && it.status === 'renamed').map(it => it.previous_filename); - if(old_filename[0] !== undefined && !listOfScannedFilename.includes(old_filename[0])) { - listOfScannedFilename.push(old_filename[0]); - return fetch("https://api.github.com/repos/{{ site.gh_owner_name }}/{{ site.gh_repository_name }}/commits?path="+old_filename[0]) - .then((response) => { - return response.json(); - }).then(async function(commits) { - return parseCommitsList(commits, old_filename); - }); - } - }); - } - async function parseCommitsList(commits, filename) { - var authors = commits.flatMap(x => [{...x.commit.author, ...x.author},{...x.commit.committer, ...x.committer}]).map(({date, ...keepAttrs}) => keepAttrs).filter((value, index, self) => - index === self.findIndex((t) => ( - t.login === value.login - )) && value.login !== "web-flow" - ); + var inner = await parseFirstCommit(commits[commits.length - 1], filename); - var inner = await parseFirstCommit(commits[commits.length -1], filename); + if (inner) { + inner = inner.filter(it => !authors.map(i => i.login).includes(it.login) && it.login !== "web-flow"); + authors.push(...inner); - if(inner) { - inner = inner.filter(it => !authors.map(i => i.login).includes(it.login) && it.login !== "web-flow"); - authors.push(...inner); + } - } - - return authors; - } - async function setModifiedDate() { - if (document.getElementById('last-modified')) { - listOfScannedFilename.push("{{ page.path }}"); - fetch("https://api.github.com/repos/{{ site.gh_owner_name }}/{{ site.gh_repository_name }}/commits?path={{ page.path }}") - .then((response) => { - return response.json(); - }) - .then(async function(commits) { - var date = new Date(commits[0]['commit']['committer']['date']); - var modified = date.toLocaleDateString(undefined); + return authors; + } + async function setModifiedDate() { + if (document.getElementById('last-modified')) { + listOfScannedFilename.push("{{ page.path }}"); + fetch("https://api.github.com/repos/{{ site.gh_owner_name }}/{{ site.gh_repository_name }}/commits?path={{ page.path }}") + .then((response) => { + return response.json(); + }) + .then(async function (commits) { + var date = new Date(commits[0]['commit']['committer']['date']); + var modified = date.toLocaleDateString(undefined); - var authors = await parseCommitsList(commits, "{{ page.path }}"); - - document.getElementById('last-modified').textContent = "Last Modified: " + modified; - document.getElementById('contributors').textContent = authors.length + " "+ ( authors.length == 1? "Contributor" : "Contributors"); + var authors = await parseCommitsList(commits, "{{ page.path }}"); - document.getElementById('contributors-modal-list').innerHTML = authors.map(x => "<li><a href='"+x.html_url+"'><img class='avatar' src='"+x.avatar_url+"'><span>"+x.name+"</span<</a></li>").join(''); - }); - } - } + document.getElementById('last-modified').textContent = "Last Modified: " + modified; + document.getElementById('contributors').textContent = authors.length + " " + (authors.length == 1 ? "Contributor" : "Contributors"); - window.addEventListener('load', function () { - setModifiedDate() + document.getElementById('contributors-modal-list').innerHTML = authors.map(x => "<li><a href='" + x.html_url + "'><img class='avatar' src='" + x.avatar_url + "'><span>" + x.name + "</span<</a></li>").join(''); }); + } + } + + window.addEventListener('load', function () { + setModifiedDate() + }); </script> {% endif %} -</body> {% if site.mermaid_enabled != false %} <script> var config = {% include mermaid_config.js %}; @@ -340,4 +299,5 @@ layout: table_wrappers window.mermaid.init(undefined, document.querySelectorAll('.language-mermaid')); </script> {% endif %} -</html> + +</html>
\ No newline at end of file |