Skip to content

Commit

Permalink
move to all.html
Browse files Browse the repository at this point in the history
  • Loading branch information
fulldecent committed Mar 13, 2023
1 parent d4a9a5e commit 4693f75
Show file tree
Hide file tree
Showing 2 changed files with 216 additions and 164 deletions.
172 changes: 172 additions & 0 deletions all.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,172 @@
---
layout: null
---
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Ethereum EIPs</title>
<link href="https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-GLhlTQ8iRABdZLl6O3oVMWSktQOp6b7In1Zl3/Jr59b6EGGoI1aFkw7cmDA6j6gD" crossorigin="anonymous">
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/[email protected]/font/bootstrap-icons.css" integrity="sha256-4RctOgogjPAdwGbwq+rxfwAmSpZhWaafcZR9btzUk18=" crossorigin="anonymous">
</head>
<body>
<nav class="navbar navbar-expand-lg bg-body-tertiary">
<div class="container-fluid">
<a class="navbar-brand" href="/">{{ site.title | escape }}</a>
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse" id="navbarSupportedContent">
<div class="me-auto"></div><!-- hack: spacer -->
<ul class="navbar-nav mb-auto mb-lg-0">
<li class="nav-item">
<a class="nav-link ms-2" aria-current="page" href="https://eips.ethereum.org/EIPS/eip-1">About EIPs</a>
</li>
<li class="nav-item">
<a class="nav-link ms-2" aria-current="page" href="https://github.com/ethereum/EIPs/blob/master/eip-template.md">Create an EIP</a>
</li>
<li class="nav-item">
<a class="nav-link ms-2" href="https://eips.ethereum.org/rss/all.xml"><i class="bi bi-rss"></i> RSS</a>
</li>
<li class="nav-item">
<a class="nav-link ms-2" href="https://eips.ethereum.org/rss/last-call.xml"><i class="bi bi-rss"></i> Last call</a>
</li>
<li class="nav-item">
<a class="nav-link ms-2" href="https://eips.ethereum.org/rss/except-erc.xml"><i class="bi bi-rss"></i> Except ERC</a>
</li>
<li class="nav-item">
<a class="btn btn-primary ms-2" href="https://eepurl.com/ikqNIP"><i class="bi bi-envelope"></i> Email alerts</a>
</li>
</ul>
</div>
</div>
</nav>

<nav id="showing" class="navbar bg-body-tertiary">
<div class="container-fluid">
<span class="navbar-text">
Showing
<u class="show-filters mx-2"><i class="bi bi-funnel"></i> all EIP types</u>
<u class="show-filters mx-2"><i class="bi bi-funnel"></i> all statuses</u>
</span>
</div>
</nav>

<nav id="types-filters" class="navbar bg-body-secondary d-none">
<div class="container-fluid">
<span class="navbar-text">
<span class="me-2 fw-bold"><i class="bi bi-funnel"></i> Types</span>
<label class="me-2" title="Improvements requiring a consensus fork (e.g. EIP-5, EIP-211), as well as changes that are not necessarily consensus critical but may be relevant to “core dev” discussions (for example, the PoA algorithm for testnets described in EIP-225)."><input type="checkbox" value="Standards Track/Core" checked> Core</label>
<label class="me-2" title="Includes improvements around devp2p (EIP-8) and Light Ethereum Subprotocol, as well as proposed improvements to network protocol specifications of whisper and swarm."><input type="checkbox" value="Standards Track/Networking" checked> Networking</label>
<label class="me-2" title="Includes improvements around client API/RPC specifications and standards, and also certain language-level standards like method names (EIP-6) and contract ABIs. The label “interface” aligns with the interfaces repo and discussion should primarily occur in that repository before an EIP is submitted to the EIPs repository."><input type="checkbox" value="Standards Track/Interface" checked> Interface</label>
<label class="me-2" title="Application-level standards and conventions, including contract standards such as token standards (EIP-20), name registries (EIP-137), URI schemes (EIP-681), library/package formats (EIP-190), and account abstraction (EIP-4337)."><input type="checkbox" value="Standards Track/ERC" checked> ERC</label>
<label class="me-2" title="Describes a process surrounding Ethereum or proposes a change to (or an event in) a process. Process EIPs are like Standards Track EIPs but apply to areas other than the Ethereum protocol itself. They may propose an implementation, but not to Ethereum's codebase; they often require community consensus; unlike Informational EIPs, they are more than recommendations, and users are typically not free to ignore them. Examples include procedures, guidelines, changes to the decision-making process, and changes to the tools or environment used in Ethereum development. Any meta-EIP is also considered a Process EIP."><input type="checkbox" value="Meta/" checked> Meta</label>
<label class="me-2" title="Describes a Ethereum design issue, or provides general guidelines or information to the Ethereum community, but does not propose a new feature. Informational EIPs do not necessarily represent Ethereum community consensus or a recommendation, so users and implementers are free to ignore Informational EIPs or follow their advice."><input type="checkbox" value="Informational/" checked> Informational</label>
</span>
</div>
</nav>

<nav id="statuses-filters" class="navbar bg-body-secondary d-none">
<div class="container-fluid">
<span class="navbar-text">
<span class="me-2 fw-bold"><i class="bi bi-funnel"></i> Statuses</span>
<label class="me-2 text-warning" title="This is the final review window for an EIP before moving to FINAL. An EIP editor will assign Last Call status and set a review end date (`last-call-deadline`), typically 14 days later. If this period results in necessary normative changes it will revert the EIP to Review."><input type="checkbox" value="Last Call" checked> Last Call</label>
<label class="me-2 text-warning" title="An EIP Author marks an EIP as ready for and requesting Peer Review."><input type="checkbox" value="Review" checked> Review</label>
<label class="me-2 text-success" title="A special status for EIPs that are designed to be continually updated and not reach a state of finality. This includes most notably EIP-1."><input type="checkbox" value="Living" checked> Living</label>
<label class="me-2 text-success" title="This EIP represents the final standard. A Final EIP exists in a state of finality and should only be updated to correct errata and add non-normative clarifications."><input type="checkbox" value="Final" checked> Final</label>
<label class="me-2 text-success" title="The first formally tracked stage of an EIP in development. An EIP is merged by an EIP Editor into the EIP repository when properly formatted."><input type="checkbox" value="Draft" checked> Draft</label>
<label class="me-2 text-danger" title="Any EIP in Draft or Review if inactive for a period of 6 months or greater is moved to Stagnant. An EIP may be resurrected from this state by Authors or EIP Editors through moving it back to Draft."><input type="checkbox" value="Stagnant" checked> Stagnant</label>
<label class="me-2 text-danger" title="The EIP Author(s) have withdrawn the proposed EIP. This state has finality and can no longer be resurrected using this EIP number. If the idea is pursued at later date it is considered a new proposal."><input type="checkbox" value="Withdrawn" checked> Withdrawn</label>
</span>
</div>
</nav>

<div class="container-fluid mt-3">
<!--<p class="my-3" id="eips-count">{{ site.pages | size }} proposals</p>-->
<table class="table table-hover">
{% for status in site.data.statuses %}
{% assign eips = site.pages | where: "status", status | sort: "eip" %}
{% assign count = eips|size %}
{% for page in eips %}
<tr data-type="{{ page.type }}" data-category="{{ page.category }}" data-status="{{ status }}">
<td>
{% if status == "Last Call" %}
<p class="w-100 px-5 text-center text-nowrap border border-warning rounded text-warning"><i class="bi btn-outline-warning"></i> {{ status }}</p>
<p class="text-center">Ends {{ page.last-call-deadline }}</p>
{% elsif status == "Review" %}
<p class="w-100 px-5 text-center text-nowrap border border-warning rounded text-warning">{{ status }}</p>
{% elsif status == "Living" %}
<p class="w-100 px-5 text-center text-nowrap border border-success rounded text-success">{{ status }}</p>
{% elsif status == "Final" %}
<p class="w-100 px-5 text-center text-nowrap border border-success rounded text-success">{{ status }}</p>
{% elsif status == "Draft" %}
<p class="w-100 px-5 text-center text-nowrap border border-info rounded text-info">{{ status }}</p>
{% elsif status == "Stagnant" %}
<p class="w-100 px-5 text-center text-nowrap border border-danger rounded text-danger">{{ status }}</p>
{% elsif status == "Withdrawn" %}
<p class="w-100 px-5 text-center text-nowrap border border-danger rounded text-danger">{{ status }}</p>
{% endif %}
</td>
<td>
<p class="fw-bold">
<a href="{{ page.url | relative_url }}">
<span class="text-muted">EIP-{{ page.eip | escape }}</span>
{{ page.title | escape }}
</a>
</p>
<p>
<span class="text-muted">Authors:</span> {% include authorlist.html authors=page.author %}
</p>
</td>
</tr>
{% endfor %}
{% endfor %}
</table>
</div>

<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/js/bootstrap.bundle.min.js" integrity="sha384-w76AqPfDkMBDXo30jS1Sgez6pr3x5MlQ1ZAGC+nuZB+EYdgRZgiwxhTBTkF7CXvN" crossorigin="anonymous"></script>
<script>
// Support dark mode
if (window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches) {
document.body.setAttribute('data-bs-theme', 'dark');
}

// After document ready
document.addEventListener('DOMContentLoaded', () => {
// Enable tooltips on every element
const tooltipTriggerList = document.querySelectorAll('*');
const tooltipList = [...tooltipTriggerList].map(tooltipTriggerEl => new bootstrap.Tooltip(tooltipTriggerEl))
});

// Button for .show-filters
document.querySelector('.show-filters').addEventListener('click', () => {
document.querySelector('#types-filters').classList.remove('d-none');
document.querySelector('#statuses-filters').classList.remove('d-none');
document.querySelector('.showing').classList.add('d-none');
});

// Filter table rows
function filter() {
const typesCategories = Array.from(document.querySelectorAll('#types-filters input[type="checkbox"]:checked')).map(n=>n.value);
const statuses = Array.from(document.querySelectorAll('#statuses-filters input[type="checkbox"]:checked')).map(n=>n.value);
const rows = document.querySelectorAll('tr[data-type][data-status]');
rows.forEach(row => {
const type = row.getAttribute('data-type');
const category = row.getAttribute('data-category');
const status = row.getAttribute('data-status');
if (typesCategories.includes(type + "/" + category) && statuses.includes(status)) {
row.classList.remove('d-none');
} else {
row.classList.add('d-none');
}
});
}

// Filter table rows on checkbox change
document.querySelectorAll('#types-filters input[type="checkbox"], #statuses-filters input[type="checkbox"]').forEach(checkbox => {
checkbox.addEventListener('change', filter);
});
</script>
</body>
</html>
Loading

0 comments on commit 4693f75

Please sign in to comment.