mirror of
https://github.com/vacp2p/rfc-index.git
synced 2026-01-09 15:48:03 -05:00
Update documentation
This commit is contained in:
10
build.json
10
build.json
@@ -1,15 +1,15 @@
|
||||
{
|
||||
"timestamp": "2025-12-22T01:23:12Z",
|
||||
"timestamp": "2025-12-22T13:04:45Z",
|
||||
"git": {
|
||||
"commit": "d03e699084774ebecef9c6d4662498907c5e2080",
|
||||
"commit": "c4b2a05dbc85c1eb37f204ef3c57ebee0f50eaf3",
|
||||
"branch": "origin/develop",
|
||||
"url": "git@github.com:vacp2p/rfc-index.git"
|
||||
},
|
||||
"build": {
|
||||
"id": "626",
|
||||
"number": "626",
|
||||
"id": "628",
|
||||
"number": "628",
|
||||
"name": "website/dev-rfc.vac.dev",
|
||||
"slave": "linux-01",
|
||||
"url": "https://ci.infra.status.im/job/website/job/dev-rfc.vac.dev/626/"
|
||||
"url": "https://ci.infra.status.im/job/website/job/dev-rfc.vac.dev/628/"
|
||||
}
|
||||
}
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
234
codex/raw/index.html
Normal file
234
codex/raw/index.html
Normal file
File diff suppressed because one or more lines are too long
312
custom.css
312
custom.css
@@ -1,3 +1,313 @@
|
||||
:root {
|
||||
--content-max-width: 60em;
|
||||
--content-max-width: 68em;
|
||||
}
|
||||
|
||||
body {
|
||||
background: var(--bg);
|
||||
color: var(--fg);
|
||||
font-family: "Source Serif Pro", "Iowan Old Style", "Palatino Linotype", "Book Antiqua", Georgia, serif;
|
||||
line-height: 1.6;
|
||||
letter-spacing: 0.01em;
|
||||
}
|
||||
|
||||
code, pre, .hljs {
|
||||
font-family: "SFMono-Regular", Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
|
||||
font-size: 0.95em;
|
||||
}
|
||||
|
||||
a {
|
||||
color: var(--links);
|
||||
}
|
||||
|
||||
a:hover {
|
||||
color: var(--links);
|
||||
opacity: 0.85;
|
||||
}
|
||||
|
||||
.page {
|
||||
background: var(--bg);
|
||||
box-shadow: none;
|
||||
border: 1px solid var(--table-border-color);
|
||||
}
|
||||
|
||||
.menu-bar {
|
||||
background: var(--bg);
|
||||
box-shadow: none;
|
||||
border-bottom: 1px solid var(--table-border-color);
|
||||
min-height: 52px;
|
||||
}
|
||||
|
||||
.menu-title {
|
||||
font-weight: 600;
|
||||
color: var(--fg);
|
||||
}
|
||||
|
||||
.icon-button {
|
||||
box-shadow: none;
|
||||
border: 1px solid transparent;
|
||||
}
|
||||
|
||||
#sidebar {
|
||||
background: var(--sidebar-bg);
|
||||
border-right: 1px solid var(--sidebar-spacer);
|
||||
box-shadow: none;
|
||||
}
|
||||
|
||||
#sidebar a {
|
||||
color: var(--sidebar-fg);
|
||||
}
|
||||
|
||||
#sidebar .chapter-item > a strong {
|
||||
color: var(--sidebar-active);
|
||||
}
|
||||
|
||||
#sidebar .part-title {
|
||||
color: var(--sidebar-non-existant);
|
||||
font-weight: 600;
|
||||
letter-spacing: 0.02em;
|
||||
}
|
||||
|
||||
main h1, main h2, main h3, main h4 {
|
||||
font-family: "Source Serif Pro", "Iowan Old Style", "Palatino Linotype", "Book Antiqua", Georgia, serif;
|
||||
color: var(--fg);
|
||||
font-weight: 600;
|
||||
margin-top: 1.2em;
|
||||
margin-bottom: 0.6em;
|
||||
}
|
||||
|
||||
.rfc-meta {
|
||||
margin: 1rem 0 1.5rem 0;
|
||||
padding: 0.75rem 1rem;
|
||||
border: 1px solid var(--table-border-color);
|
||||
background: var(--bg);
|
||||
}
|
||||
|
||||
.rfc-meta table {
|
||||
margin: 0;
|
||||
border: none;
|
||||
}
|
||||
|
||||
.rfc-meta th,
|
||||
.rfc-meta td {
|
||||
border: none;
|
||||
padding: 0.2rem 0.4rem 0.2rem 0;
|
||||
text-align: left;
|
||||
vertical-align: top;
|
||||
}
|
||||
|
||||
.rfc-meta th {
|
||||
width: 10rem;
|
||||
color: var(--sidebar-fg);
|
||||
font-weight: 600;
|
||||
}
|
||||
|
||||
main p, main li {
|
||||
color: var(--fg);
|
||||
}
|
||||
|
||||
main blockquote {
|
||||
border-left: 3px solid var(--quote-border);
|
||||
color: var(--fg);
|
||||
background: var(--quote-bg);
|
||||
}
|
||||
|
||||
table {
|
||||
border: 1px solid var(--table-border-color);
|
||||
border-collapse: collapse;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
th, td {
|
||||
border: 1px solid var(--table-border-color);
|
||||
padding: 0.5em 0.75em;
|
||||
}
|
||||
|
||||
thead {
|
||||
background: var(--table-header-bg);
|
||||
}
|
||||
|
||||
.content {
|
||||
padding: 1.5rem 2rem 3rem 2rem;
|
||||
}
|
||||
|
||||
.nav-chapters, .nav-wrapper {
|
||||
box-shadow: none;
|
||||
}
|
||||
|
||||
/* Landing layout */
|
||||
.landing-hero {
|
||||
margin-bottom: 1.5rem;
|
||||
padding: 1.25rem 1.5rem;
|
||||
background: var(--bg);
|
||||
border: 1px solid var(--table-border-color);
|
||||
}
|
||||
|
||||
.landing-hero p {
|
||||
margin: 0.3rem 0 0;
|
||||
color: var(--sidebar-fg);
|
||||
}
|
||||
|
||||
.filter-row {
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
gap: 0.5rem;
|
||||
align-items: center;
|
||||
margin-bottom: 0.75rem;
|
||||
}
|
||||
|
||||
.filter-row input[type="search"] {
|
||||
padding: 0.5rem 0.65rem;
|
||||
border: 1px solid var(--searchbar-border-color);
|
||||
border-radius: 4px;
|
||||
min-width: 240px;
|
||||
background: var(--searchbar-bg);
|
||||
color: var(--searchbar-fg);
|
||||
}
|
||||
|
||||
.chips {
|
||||
display: flex;
|
||||
gap: 0.5rem;
|
||||
flex-wrap: wrap;
|
||||
}
|
||||
|
||||
.chip {
|
||||
display: inline-flex;
|
||||
align-items: center;
|
||||
gap: 0.4rem;
|
||||
padding: 0.35rem 0.6rem;
|
||||
border: 1px solid var(--table-border-color);
|
||||
border-radius: 999px;
|
||||
background: var(--theme-hover);
|
||||
color: var(--fg);
|
||||
cursor: pointer;
|
||||
font-size: 0.95em;
|
||||
}
|
||||
|
||||
.chip.active {
|
||||
background: var(--theme-hover);
|
||||
border-color: var(--sidebar-active);
|
||||
color: var(--sidebar-active);
|
||||
font-weight: 600;
|
||||
}
|
||||
|
||||
.quick-links {
|
||||
display: flex;
|
||||
gap: 0.5rem;
|
||||
flex-wrap: wrap;
|
||||
margin: 0.5rem 0 1rem 0;
|
||||
}
|
||||
|
||||
.quick-links a {
|
||||
border: 1px solid var(--table-border-color);
|
||||
padding: 0.35rem 0.65rem;
|
||||
border-radius: 4px;
|
||||
background: var(--bg);
|
||||
text-decoration: none;
|
||||
color: var(--fg);
|
||||
}
|
||||
|
||||
.quick-links a:hover {
|
||||
border-color: var(--sidebar-active);
|
||||
color: var(--links);
|
||||
}
|
||||
|
||||
.rfc-table {
|
||||
width: 100%;
|
||||
border-collapse: collapse;
|
||||
margin-top: 0.75rem;
|
||||
}
|
||||
|
||||
.rfc-table th, .rfc-table td {
|
||||
border: 1px solid var(--table-border-color);
|
||||
padding: 0.45rem 0.6rem;
|
||||
}
|
||||
|
||||
.rfc-table thead {
|
||||
background: var(--table-header-bg);
|
||||
}
|
||||
|
||||
.rfc-table tbody tr:hover {
|
||||
background: var(--theme-hover);
|
||||
}
|
||||
|
||||
.badge {
|
||||
display: inline-block;
|
||||
padding: 0.15rem 0.45rem;
|
||||
border-radius: 4px;
|
||||
font-size: 0.85em;
|
||||
border: 1px solid var(--table-border-color);
|
||||
background: var(--table-alternate-bg);
|
||||
color: var(--fg);
|
||||
}
|
||||
|
||||
|
||||
/* Landing polish */
|
||||
main h1 {
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
.results-row {
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
align-items: baseline;
|
||||
gap: 1rem;
|
||||
margin: 0.5rem 0 0.75rem 0;
|
||||
color: var(--sidebar-fg);
|
||||
font-size: 0.95em;
|
||||
}
|
||||
|
||||
.results-count {
|
||||
color: var(--fg);
|
||||
font-weight: 600;
|
||||
}
|
||||
|
||||
.results-hint {
|
||||
color: var(--sidebar-fg);
|
||||
font-size: 0.9em;
|
||||
}
|
||||
|
||||
.table-wrap {
|
||||
overflow-x: auto;
|
||||
border: 1px solid var(--table-border-color);
|
||||
border-radius: 6px;
|
||||
background: var(--bg);
|
||||
}
|
||||
|
||||
.table-wrap .rfc-table {
|
||||
margin: 0;
|
||||
border: none;
|
||||
}
|
||||
|
||||
.rfc-table tbody tr:nth-child(even) {
|
||||
background: var(--table-alternate-bg);
|
||||
}
|
||||
|
||||
.rfc-table th[data-sort] {
|
||||
cursor: pointer;
|
||||
user-select: none;
|
||||
}
|
||||
|
||||
.rfc-table th.sorted {
|
||||
color: var(--links);
|
||||
}
|
||||
|
||||
.rfc-table td:first-child a {
|
||||
word-break: break-word;
|
||||
}
|
||||
|
||||
.noscript-note {
|
||||
margin-top: 0.75rem;
|
||||
color: var(--sidebar-fg);
|
||||
}
|
||||
|
||||
@media (max-width: 900px) {
|
||||
.results-row {
|
||||
flex-direction: column;
|
||||
align-items: flex-start;
|
||||
}
|
||||
|
||||
.filter-row input[type="search"] {
|
||||
width: 100%;
|
||||
min-width: 0;
|
||||
}
|
||||
}
|
||||
|
||||
85
index.html
85
index.html
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
234
nomos/deprecated/index.html
Normal file
234
nomos/deprecated/index.html
Normal file
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
234
nomos/raw/index.html
Normal file
234
nomos/raw/index.html
Normal file
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
8051
print.html
8051
print.html
File diff suppressed because one or more lines are too long
730
rfc-index.json
Normal file
730
rfc-index.json
Normal file
@@ -0,0 +1,730 @@
|
||||
[
|
||||
{
|
||||
"project": "codex",
|
||||
"slug": "Codex Block Exchange Protocol",
|
||||
"title": "Codex Block Exchange Protocol",
|
||||
"status": "raw",
|
||||
"category": "Standards Track",
|
||||
"path": "codex/raw/codex-block-exchange.html"
|
||||
},
|
||||
{
|
||||
"project": "codex",
|
||||
"slug": "codex-marketplace",
|
||||
"title": "Codex Storage Marketplace",
|
||||
"status": "raw",
|
||||
"category": "Standards Track",
|
||||
"path": "codex/raw/codex-marketplace.html"
|
||||
},
|
||||
{
|
||||
"project": "nomos",
|
||||
"slug": "Claro Consensus Protocol",
|
||||
"title": "Claro Consensus Protocol",
|
||||
"status": "deprecated",
|
||||
"category": "Standards Track",
|
||||
"path": "nomos/deprecated/claro.html"
|
||||
},
|
||||
{
|
||||
"project": "nomos",
|
||||
"slug": "Nomos P2P Network Bootstrapping Specification",
|
||||
"title": "Nomos P2P Network Bootstrapping Specification",
|
||||
"status": "raw",
|
||||
"category": "networking",
|
||||
"path": "nomos/raw/p2p-network-bootstrapping.html"
|
||||
},
|
||||
{
|
||||
"project": "nomos",
|
||||
"slug": "Nomos P2P Network NAT Solution Specification",
|
||||
"title": "Nomos P2P Network NAT Solution Specification",
|
||||
"status": "raw",
|
||||
"category": "networking",
|
||||
"path": "nomos/raw/p2p-nat-solution.html"
|
||||
},
|
||||
{
|
||||
"project": "nomos",
|
||||
"slug": "Nomos P2P Network Specification",
|
||||
"title": "Nomos P2P Network Specification",
|
||||
"status": "draft",
|
||||
"category": "networking",
|
||||
"path": "nomos/raw/p2p-network.html"
|
||||
},
|
||||
{
|
||||
"project": "nomos",
|
||||
"slug": "Nomos Service Declaration Protocol Specification",
|
||||
"title": "Nomos Service Declaration Protocol Specification",
|
||||
"status": "raw",
|
||||
"category": "unspecified",
|
||||
"path": "nomos/raw/sdp.html"
|
||||
},
|
||||
{
|
||||
"project": "nomos",
|
||||
"slug": "Nomos p2p Network Hardware Requirements Specification",
|
||||
"title": "Nomos p2p Network Hardware Requirements Specification",
|
||||
"status": "raw",
|
||||
"category": "infrastructure",
|
||||
"path": "nomos/raw/p2p-hardware-requirements.html"
|
||||
},
|
||||
{
|
||||
"project": "nomos",
|
||||
"slug": "NomosDA Encoding Protocol",
|
||||
"title": "NomosDA Encoding Protocol",
|
||||
"status": "raw",
|
||||
"category": "unspecified",
|
||||
"path": "nomos/raw/nomosda-encoding.html"
|
||||
},
|
||||
{
|
||||
"project": "nomos",
|
||||
"slug": "NomosDA Network",
|
||||
"title": "NomosDA Network",
|
||||
"status": "raw",
|
||||
"category": "unspecified",
|
||||
"path": "nomos/raw/nomosda-network.html"
|
||||
},
|
||||
{
|
||||
"project": "status",
|
||||
"slug": "24",
|
||||
"title": "Status Community Directory Curation Voting using Waku v2",
|
||||
"status": "draft",
|
||||
"category": "unspecified",
|
||||
"path": "status/24/curation.html"
|
||||
},
|
||||
{
|
||||
"project": "status",
|
||||
"slug": "28",
|
||||
"title": "Status community featuring using waku v2",
|
||||
"status": "draft",
|
||||
"category": "unspecified",
|
||||
"path": "status/28/featuring.html"
|
||||
},
|
||||
{
|
||||
"project": "status",
|
||||
"slug": "3rd party",
|
||||
"title": "3rd party",
|
||||
"status": "deprecated",
|
||||
"category": "unspecified",
|
||||
"path": "status/deprecated/3rd-party.html"
|
||||
},
|
||||
{
|
||||
"project": "status",
|
||||
"slug": "55",
|
||||
"title": "Status 1-to-1 Chat",
|
||||
"status": "draft",
|
||||
"category": "Standards Track",
|
||||
"path": "status/55/1to1-chat.html"
|
||||
},
|
||||
{
|
||||
"project": "status",
|
||||
"slug": "56",
|
||||
"title": "Status Communities that run over Waku v2",
|
||||
"status": "draft",
|
||||
"category": "Standards Track",
|
||||
"path": "status/56/communities.html"
|
||||
},
|
||||
{
|
||||
"project": "status",
|
||||
"slug": "61",
|
||||
"title": "Status Community History Service",
|
||||
"status": "draft",
|
||||
"category": "Standards Track",
|
||||
"path": "status/61/community-history-service.html"
|
||||
},
|
||||
{
|
||||
"project": "status",
|
||||
"slug": "62",
|
||||
"title": "Status Message Payloads",
|
||||
"status": "draft",
|
||||
"category": "unspecified",
|
||||
"path": "status/62/payloads.html"
|
||||
},
|
||||
{
|
||||
"project": "status",
|
||||
"slug": "63",
|
||||
"title": "Status Keycard Usage",
|
||||
"status": "draft",
|
||||
"category": "Standards Track",
|
||||
"path": "status/63/keycard-usage.html"
|
||||
},
|
||||
{
|
||||
"project": "status",
|
||||
"slug": "65",
|
||||
"title": "Status Account Address",
|
||||
"status": "draft",
|
||||
"category": "Standards Track",
|
||||
"path": "status/65/account-address.html"
|
||||
},
|
||||
{
|
||||
"project": "status",
|
||||
"slug": "71",
|
||||
"title": "Push Notification Server",
|
||||
"status": "draft",
|
||||
"category": "Standards Track",
|
||||
"path": "status/71/push-notification-server.html"
|
||||
},
|
||||
{
|
||||
"project": "status",
|
||||
"slug": "Account",
|
||||
"title": "Account",
|
||||
"status": "deprecated",
|
||||
"category": "unspecified",
|
||||
"path": "status/deprecated/account.html"
|
||||
},
|
||||
{
|
||||
"project": "status",
|
||||
"slug": "Client",
|
||||
"title": "Client",
|
||||
"status": "deprecated",
|
||||
"category": "unspecified",
|
||||
"path": "status/deprecated/client.html"
|
||||
},
|
||||
{
|
||||
"project": "status",
|
||||
"slug": "Dapp browser API usage",
|
||||
"title": "Dapp browser API usage",
|
||||
"status": "deprecated",
|
||||
"category": "unspecified",
|
||||
"path": "status/deprecated/dapp-browser-API-usage.html"
|
||||
},
|
||||
{
|
||||
"project": "status",
|
||||
"slug": "EIPS",
|
||||
"title": "EIPS",
|
||||
"status": "deprecated",
|
||||
"category": "unspecified",
|
||||
"path": "status/deprecated/eips.html"
|
||||
},
|
||||
{
|
||||
"project": "status",
|
||||
"slug": "Group Chat",
|
||||
"title": "Group Chat",
|
||||
"status": "deprecated",
|
||||
"category": "unspecified",
|
||||
"path": "status/deprecated/group-chat.html"
|
||||
},
|
||||
{
|
||||
"project": "status",
|
||||
"slug": "IPFS gateway for Sticker Pack",
|
||||
"title": "IPFS gateway for Sticker Pack",
|
||||
"status": "deprecated",
|
||||
"category": "unspecified",
|
||||
"path": "status/deprecated/IPFS-gateway-for-sticker-Pack.html"
|
||||
},
|
||||
{
|
||||
"project": "status",
|
||||
"slug": "Keycard Usage for Wallet and Chat Keys",
|
||||
"title": "Keycard Usage for Wallet and Chat Keys",
|
||||
"status": "deprecated",
|
||||
"category": "unspecified",
|
||||
"path": "status/deprecated/keycard-usage-for-wallet-and-chat-keys.html"
|
||||
},
|
||||
{
|
||||
"project": "status",
|
||||
"slug": "MVDS Usage in Status",
|
||||
"title": "MVDS Usage in Status",
|
||||
"status": "raw",
|
||||
"category": "Best Current Practice",
|
||||
"path": "status/raw/status-mvds.html"
|
||||
},
|
||||
{
|
||||
"project": "status",
|
||||
"slug": "Notifications",
|
||||
"title": "Notifications",
|
||||
"status": "deprecated",
|
||||
"category": "unspecified",
|
||||
"path": "status/deprecated/notifications.html"
|
||||
},
|
||||
{
|
||||
"project": "status",
|
||||
"slug": "Payloads",
|
||||
"title": "Payloads",
|
||||
"status": "deprecated",
|
||||
"category": "unspecified",
|
||||
"path": "status/deprecated/payloads.html"
|
||||
},
|
||||
{
|
||||
"project": "status",
|
||||
"slug": "Push notification server",
|
||||
"title": "Push notification server",
|
||||
"status": "deprecated",
|
||||
"category": "unspecified",
|
||||
"path": "status/deprecated/push-notification-server.html"
|
||||
},
|
||||
{
|
||||
"project": "status",
|
||||
"slug": "Secure Transport",
|
||||
"title": "Secure Transport",
|
||||
"status": "deprecated",
|
||||
"category": "unspecified",
|
||||
"path": "status/deprecated/secure-transport.html"
|
||||
},
|
||||
{
|
||||
"project": "status",
|
||||
"slug": "Status Protocol Stack",
|
||||
"title": "Status Protocol Stack",
|
||||
"status": "raw",
|
||||
"category": "Standards Track",
|
||||
"path": "status/raw/status-app-protocols.html"
|
||||
},
|
||||
{
|
||||
"project": "status",
|
||||
"slug": "Status Simple Scaling",
|
||||
"title": "Status Simple Scaling",
|
||||
"status": "raw",
|
||||
"category": "Informational",
|
||||
"path": "status/raw/simple-scaling.html"
|
||||
},
|
||||
{
|
||||
"project": "status",
|
||||
"slug": "Status URL Data",
|
||||
"title": "Status URL Data",
|
||||
"status": "raw",
|
||||
"category": "Standards Track",
|
||||
"path": "status/raw/url-data.html"
|
||||
},
|
||||
{
|
||||
"project": "status",
|
||||
"slug": "Status URL Scheme",
|
||||
"title": "Status URL Scheme",
|
||||
"status": "raw",
|
||||
"category": "Standards Track",
|
||||
"path": "status/raw/url-scheme.html"
|
||||
},
|
||||
{
|
||||
"project": "status",
|
||||
"slug": "Status interactions with the Ethereum blockchain",
|
||||
"title": "Status interactions with the Ethereum blockchain",
|
||||
"status": "deprecated",
|
||||
"category": "unspecified",
|
||||
"path": "status/deprecated/ethereum-usage.html"
|
||||
},
|
||||
{
|
||||
"project": "status",
|
||||
"slug": "Waku Mailserver",
|
||||
"title": "Waku Mailserver",
|
||||
"status": "deprecated",
|
||||
"category": "unspecified",
|
||||
"path": "status/deprecated/waku-mailserver.html"
|
||||
},
|
||||
{
|
||||
"project": "status",
|
||||
"slug": "Waku Usage",
|
||||
"title": "Waku Usage",
|
||||
"status": "deprecated",
|
||||
"category": "unspecified",
|
||||
"path": "status/deprecated/waku-usage.html"
|
||||
},
|
||||
{
|
||||
"project": "status",
|
||||
"slug": "Whisper Usage",
|
||||
"title": "Whisper Usage",
|
||||
"status": "deprecated",
|
||||
"category": "unspecified",
|
||||
"path": "status/deprecated/whisper-usage.html"
|
||||
},
|
||||
{
|
||||
"project": "status",
|
||||
"slug": "Whisper mailserver",
|
||||
"title": "Whisper mailserver",
|
||||
"status": "deprecated",
|
||||
"category": "unspecified",
|
||||
"path": "status/deprecated/whisper-mailserver.html"
|
||||
},
|
||||
{
|
||||
"project": "vac",
|
||||
"slug": "1",
|
||||
"title": "Consensus-Oriented Specification System",
|
||||
"status": "draft",
|
||||
"category": "Best Current Practice",
|
||||
"path": "vac/1/coss.html"
|
||||
},
|
||||
{
|
||||
"project": "vac",
|
||||
"slug": "2",
|
||||
"title": "Minimum Viable Data Synchronization",
|
||||
"status": "stable",
|
||||
"category": "unspecified",
|
||||
"path": "vac/2/mvds.html"
|
||||
},
|
||||
{
|
||||
"project": "vac",
|
||||
"slug": "25",
|
||||
"title": "Libp2p Peer Discovery via DNS",
|
||||
"status": "deleted",
|
||||
"category": "unspecified",
|
||||
"path": "vac/25/libp2p-dns-discovery.html"
|
||||
},
|
||||
{
|
||||
"project": "vac",
|
||||
"slug": "3",
|
||||
"title": "Remote log specification",
|
||||
"status": "draft",
|
||||
"category": "unspecified",
|
||||
"path": "vac/3/remote-log.html"
|
||||
},
|
||||
{
|
||||
"project": "vac",
|
||||
"slug": "32",
|
||||
"title": "Rate Limit Nullifier",
|
||||
"status": "draft",
|
||||
"category": "unspecified",
|
||||
"path": "vac/32/rln-v1.html"
|
||||
},
|
||||
{
|
||||
"project": "vac",
|
||||
"slug": "4",
|
||||
"title": "MVDS Metadata Field",
|
||||
"status": "draft",
|
||||
"category": "unspecified",
|
||||
"path": "vac/4/mvds-meta.html"
|
||||
},
|
||||
{
|
||||
"project": "vac",
|
||||
"slug": "Decentralized Key and Session Setup for Secure Messaging over Ethereum",
|
||||
"title": "Decentralized Key and Session Setup for Secure Messaging over Ethereum",
|
||||
"status": "raw",
|
||||
"category": "informational",
|
||||
"path": "vac/raw/decentralized-messaging-ethereum.html"
|
||||
},
|
||||
{
|
||||
"project": "vac",
|
||||
"slug": "Gossipsub Tor Push",
|
||||
"title": "Gossipsub Tor Push",
|
||||
"status": "raw",
|
||||
"category": "Standards Track",
|
||||
"path": "vac/raw/gossipsub-tor-push.html"
|
||||
},
|
||||
{
|
||||
"project": "vac",
|
||||
"slug": "Hashgraphlike Consensus Protocol",
|
||||
"title": "Hashgraphlike Consensus Protocol",
|
||||
"status": "raw",
|
||||
"category": "Standards Track",
|
||||
"path": "vac/raw/consensus-hashgraphlike.html"
|
||||
},
|
||||
{
|
||||
"project": "vac",
|
||||
"slug": "Interep as group management for RLN",
|
||||
"title": "Interep as group management for RLN",
|
||||
"status": "raw",
|
||||
"category": "unspecified",
|
||||
"path": "vac/raw/rln-interep-spec.html"
|
||||
},
|
||||
{
|
||||
"project": "vac",
|
||||
"slug": "Libp2p Mix Protocol",
|
||||
"title": "Libp2p Mix Protocol",
|
||||
"status": "raw",
|
||||
"category": "Standards Track",
|
||||
"path": "vac/raw/mix.html"
|
||||
},
|
||||
{
|
||||
"project": "vac",
|
||||
"slug": "Logos Capability Discovery Protocol",
|
||||
"title": "Logos Capability Discovery Protocol",
|
||||
"status": "raw",
|
||||
"category": "Standards Track",
|
||||
"path": "vac/raw/logos-capability-discovery.html"
|
||||
},
|
||||
{
|
||||
"project": "vac",
|
||||
"slug": "RLN Stealth Commitment Usage",
|
||||
"title": "RLN Stealth Commitment Usage",
|
||||
"status": "unknown",
|
||||
"category": "Standards Track",
|
||||
"path": "vac/raw/rln-stealth-commitments.html"
|
||||
},
|
||||
{
|
||||
"project": "vac",
|
||||
"slug": "Rate Limit Nullifier V2",
|
||||
"title": "Rate Limit Nullifier V2",
|
||||
"status": "raw",
|
||||
"category": "unspecified",
|
||||
"path": "vac/raw/rln-v2.html"
|
||||
},
|
||||
{
|
||||
"project": "vac",
|
||||
"slug": "Scalable Data Sync protocol for distributed logs",
|
||||
"title": "Scalable Data Sync protocol for distributed logs",
|
||||
"status": "raw",
|
||||
"category": "unspecified",
|
||||
"path": "vac/raw/sds.html"
|
||||
},
|
||||
{
|
||||
"project": "vac",
|
||||
"slug": "Secure 1-to-1 channel setup using X3DH and the double ratchet",
|
||||
"title": "Secure 1-to-1 channel setup using X3DH and the double ratchet",
|
||||
"status": "raw",
|
||||
"category": "Standards Track",
|
||||
"path": "vac/raw/noise-x3dh-double-ratchet.html"
|
||||
},
|
||||
{
|
||||
"project": "vac",
|
||||
"slug": "Secure channel setup using Ethereum accounts",
|
||||
"title": "Secure channel setup using Ethereum accounts",
|
||||
"status": "deleted",
|
||||
"category": "Standards Track",
|
||||
"path": "vac/raw/deleted/eth-secpm.html"
|
||||
},
|
||||
{
|
||||
"project": "vac",
|
||||
"slug": "Secure channel setup using decentralized MLS and Ethereum accounts",
|
||||
"title": "Secure channel setup using decentralized MLS and Ethereum accounts",
|
||||
"status": "raw",
|
||||
"category": "Standards Track",
|
||||
"path": "vac/raw/eth-mls-onchain.html"
|
||||
},
|
||||
{
|
||||
"project": "vac",
|
||||
"slug": "Secure channel setup using decentralized MLS and Ethereum accounts",
|
||||
"title": "Secure channel setup using decentralized MLS and Ethereum accounts",
|
||||
"status": "raw",
|
||||
"category": "Standards Track",
|
||||
"path": "vac/raw/eth-mls-offchain.html"
|
||||
},
|
||||
{
|
||||
"project": "waku",
|
||||
"slug": "10",
|
||||
"title": "Waku v2",
|
||||
"status": "draft",
|
||||
"category": "unspecified",
|
||||
"path": "waku/standards/core/10/waku2.html"
|
||||
},
|
||||
{
|
||||
"project": "waku",
|
||||
"slug": "11",
|
||||
"title": "Waku v2 Relay",
|
||||
"status": "stable",
|
||||
"category": "unspecified",
|
||||
"path": "waku/standards/core/11/relay.html"
|
||||
},
|
||||
{
|
||||
"project": "waku",
|
||||
"slug": "12",
|
||||
"title": "Waku v2 Filter",
|
||||
"status": "draft",
|
||||
"category": "unspecified",
|
||||
"path": "waku/standards/core/12/filter.html"
|
||||
},
|
||||
{
|
||||
"project": "waku",
|
||||
"slug": "13",
|
||||
"title": "Waku Store Query",
|
||||
"status": "draft",
|
||||
"category": "unspecified",
|
||||
"path": "waku/standards/core/13/store.html"
|
||||
},
|
||||
{
|
||||
"project": "waku",
|
||||
"slug": "14",
|
||||
"title": "Waku v2 Message",
|
||||
"status": "stable",
|
||||
"category": "Standards Track",
|
||||
"path": "waku/standards/core/14/message.html"
|
||||
},
|
||||
{
|
||||
"project": "waku",
|
||||
"slug": "15",
|
||||
"title": "Waku Bridge",
|
||||
"status": "draft",
|
||||
"category": "unspecified",
|
||||
"path": "waku/standards/core/15/bridge.html"
|
||||
},
|
||||
{
|
||||
"project": "waku",
|
||||
"slug": "16",
|
||||
"title": "Waku v2 RPC API",
|
||||
"status": "deprecated",
|
||||
"category": "unspecified",
|
||||
"path": "waku/deprecated/16/rpc.html"
|
||||
},
|
||||
{
|
||||
"project": "waku",
|
||||
"slug": "17",
|
||||
"title": "Waku v2 RLN Relay",
|
||||
"status": "draft",
|
||||
"category": "unspecified",
|
||||
"path": "waku/standards/core/17/rln-relay.html"
|
||||
},
|
||||
{
|
||||
"project": "waku",
|
||||
"slug": "18",
|
||||
"title": "Waku SWAP Accounting",
|
||||
"status": "deprecated",
|
||||
"category": "unspecified",
|
||||
"path": "waku/deprecated/18/swap.html"
|
||||
},
|
||||
{
|
||||
"project": "waku",
|
||||
"slug": "19",
|
||||
"title": "Waku v2 Light Push",
|
||||
"status": "draft",
|
||||
"category": "unspecified",
|
||||
"path": "waku/standards/core/19/lightpush.html"
|
||||
},
|
||||
{
|
||||
"project": "waku",
|
||||
"slug": "20",
|
||||
"title": "Toy Ethereum Private Message",
|
||||
"status": "draft",
|
||||
"category": "unspecified",
|
||||
"path": "waku/standards/application/20/toy-eth-pm.html"
|
||||
},
|
||||
{
|
||||
"project": "waku",
|
||||
"slug": "21",
|
||||
"title": "Waku v2 Fault-Tolerant Store",
|
||||
"status": "deleted",
|
||||
"category": "unspecified",
|
||||
"path": "waku/deprecated/fault-tolerant-store.html"
|
||||
},
|
||||
{
|
||||
"project": "waku",
|
||||
"slug": "22",
|
||||
"title": "Waku v2 Toy Chat",
|
||||
"status": "draft",
|
||||
"category": "unspecified",
|
||||
"path": "waku/informational/22/toy-chat.html"
|
||||
},
|
||||
{
|
||||
"project": "waku",
|
||||
"slug": "23",
|
||||
"title": "Waku v2 Topic Usage Recommendations",
|
||||
"status": "draft",
|
||||
"category": "Informational",
|
||||
"path": "waku/informational/23/topics.html"
|
||||
},
|
||||
{
|
||||
"project": "waku",
|
||||
"slug": "26",
|
||||
"title": "Waku Message Payload Encryption",
|
||||
"status": "draft",
|
||||
"category": "unspecified",
|
||||
"path": "waku/standards/application/26/payload.html"
|
||||
},
|
||||
{
|
||||
"project": "waku",
|
||||
"slug": "27",
|
||||
"title": "Waku v2 Client Peer Management Recommendations",
|
||||
"status": "draft",
|
||||
"category": "unspecified",
|
||||
"path": "waku/informational/27/peers.html"
|
||||
},
|
||||
{
|
||||
"project": "waku",
|
||||
"slug": "29",
|
||||
"title": "Waku v2 Client Parameter Configuration Recommendations",
|
||||
"status": "draft",
|
||||
"category": "unspecified",
|
||||
"path": "waku/informational/29/config.html"
|
||||
},
|
||||
{
|
||||
"project": "waku",
|
||||
"slug": "30",
|
||||
"title": "Adaptive nodes",
|
||||
"status": "draft",
|
||||
"category": "unspecified",
|
||||
"path": "waku/informational/30/adaptive-nodes.html"
|
||||
},
|
||||
{
|
||||
"project": "waku",
|
||||
"slug": "31",
|
||||
"title": "Waku v2 usage of ENR",
|
||||
"status": "draft",
|
||||
"category": "unspecified",
|
||||
"path": "waku/standards/core/31/enr.html"
|
||||
},
|
||||
{
|
||||
"project": "waku",
|
||||
"slug": "33",
|
||||
"title": "Waku v2 Discv5 Ambient Peer Discovery",
|
||||
"status": "draft",
|
||||
"category": "unspecified",
|
||||
"path": "waku/standards/core/33/discv5.html"
|
||||
},
|
||||
{
|
||||
"project": "waku",
|
||||
"slug": "34",
|
||||
"title": "Waku2 Peer Exchange",
|
||||
"status": "draft",
|
||||
"category": "Standards Track",
|
||||
"path": "waku/standards/core/34/peer-exchange.html"
|
||||
},
|
||||
{
|
||||
"project": "waku",
|
||||
"slug": "36",
|
||||
"title": "Waku v2 C Bindings API",
|
||||
"status": "draft",
|
||||
"category": "unspecified",
|
||||
"path": "waku/standards/core/36/bindings-api.html"
|
||||
},
|
||||
{
|
||||
"project": "waku",
|
||||
"slug": "5",
|
||||
"title": "Waku v0",
|
||||
"status": "deprecated",
|
||||
"category": "unspecified",
|
||||
"path": "waku/deprecated/5/waku0.html"
|
||||
},
|
||||
{
|
||||
"project": "waku",
|
||||
"slug": "53",
|
||||
"title": "X3DH usage for Waku payload encryption",
|
||||
"status": "draft",
|
||||
"category": "Standards Track",
|
||||
"path": "waku/standards/application/53/x3dh.html"
|
||||
},
|
||||
{
|
||||
"project": "waku",
|
||||
"slug": "54",
|
||||
"title": "Session management for Waku X3DH",
|
||||
"status": "draft",
|
||||
"category": "Standards Track",
|
||||
"path": "waku/standards/application/54/x3dh-sessions.html"
|
||||
},
|
||||
{
|
||||
"project": "waku",
|
||||
"slug": "6",
|
||||
"title": "Waku v1",
|
||||
"status": "stable",
|
||||
"category": "unspecified",
|
||||
"path": "waku/standards/legacy/6/waku1.html"
|
||||
},
|
||||
{
|
||||
"project": "waku",
|
||||
"slug": "64",
|
||||
"title": "Waku v2 Network",
|
||||
"status": "draft",
|
||||
"category": "Best Current Practice",
|
||||
"path": "waku/standards/core/64/network.html"
|
||||
},
|
||||
{
|
||||
"project": "waku",
|
||||
"slug": "66",
|
||||
"title": "Waku Metadata Protocol",
|
||||
"status": "draft",
|
||||
"category": "unspecified",
|
||||
"path": "waku/standards/core/66/metadata.html"
|
||||
},
|
||||
{
|
||||
"project": "waku",
|
||||
"slug": "7",
|
||||
"title": "Waku Envelope data field",
|
||||
"status": "stable",
|
||||
"category": "unspecified",
|
||||
"path": "waku/standards/legacy/7/data.html"
|
||||
},
|
||||
{
|
||||
"project": "waku",
|
||||
"slug": "8",
|
||||
"title": "Waku Mailserver",
|
||||
"status": "stable",
|
||||
"category": "unspecified",
|
||||
"path": "waku/standards/legacy/8/mail.html"
|
||||
},
|
||||
{
|
||||
"project": "waku",
|
||||
"slug": "9",
|
||||
"title": "Waku RPC API",
|
||||
"status": "stable",
|
||||
"category": "unspecified",
|
||||
"path": "waku/standards/legacy/9/rpc.html"
|
||||
}
|
||||
]
|
||||
235
scripts/rfc-index.js
Normal file
235
scripts/rfc-index.js
Normal file
@@ -0,0 +1,235 @@
|
||||
(() => {
|
||||
const searchInput = document.getElementById("rfc-search");
|
||||
const resultsCount = document.getElementById("results-count");
|
||||
const tableContainer = document.getElementById("rfc-table-container");
|
||||
|
||||
if (!searchInput || !resultsCount || !tableContainer) {
|
||||
return;
|
||||
}
|
||||
|
||||
let rfcData = [];
|
||||
const statusOrder = { stable: 0, draft: 1, raw: 2, deprecated: 3, deleted: 4, unknown: 5 };
|
||||
const statusLabels = {
|
||||
stable: "Stable",
|
||||
draft: "Draft",
|
||||
raw: "Raw",
|
||||
deprecated: "Deprecated",
|
||||
deleted: "Deleted",
|
||||
unknown: "Unknown"
|
||||
};
|
||||
const projectLabels = {
|
||||
vac: "Vac",
|
||||
waku: "Waku",
|
||||
status: "Status",
|
||||
nomos: "Nomos",
|
||||
codex: "Codex"
|
||||
};
|
||||
const headers = [
|
||||
{ key: "slug", label: "RFC", width: "12%" },
|
||||
{ key: "title", label: "Title", width: "38%" },
|
||||
{ key: "project", label: "Project", width: "12%" },
|
||||
{ key: "status", label: "Status", width: "15%" },
|
||||
{ key: "category", label: "Category", width: "23%" }
|
||||
];
|
||||
|
||||
let statusFilter = "all";
|
||||
let projectFilter = "all";
|
||||
let sortKey = "slug";
|
||||
let sortDir = "asc";
|
||||
|
||||
const table = document.createElement("table");
|
||||
table.className = "rfc-table";
|
||||
|
||||
const thead = document.createElement("thead");
|
||||
const headRow = document.createElement("tr");
|
||||
const headerCells = {};
|
||||
|
||||
headers.forEach((header) => {
|
||||
const th = document.createElement("th");
|
||||
th.textContent = header.label;
|
||||
th.dataset.sort = header.key;
|
||||
th.dataset.label = header.label;
|
||||
if (header.width) {
|
||||
th.style.width = header.width;
|
||||
}
|
||||
th.addEventListener("click", () => {
|
||||
if (sortKey === header.key) {
|
||||
sortDir = sortDir === "asc" ? "desc" : "asc";
|
||||
} else {
|
||||
sortKey = header.key;
|
||||
sortDir = "asc";
|
||||
}
|
||||
render();
|
||||
});
|
||||
headRow.appendChild(th);
|
||||
headerCells[header.key] = th;
|
||||
});
|
||||
thead.appendChild(headRow);
|
||||
table.appendChild(thead);
|
||||
|
||||
const tbody = document.createElement("tbody");
|
||||
table.appendChild(tbody);
|
||||
tableContainer.appendChild(table);
|
||||
|
||||
function normalizeStatus(status) {
|
||||
return (status || "unknown").toString().toLowerCase().split("/")[0];
|
||||
}
|
||||
|
||||
function formatStatus(status) {
|
||||
const key = normalizeStatus(status);
|
||||
return statusLabels[key] || status;
|
||||
}
|
||||
|
||||
function formatProject(project) {
|
||||
return projectLabels[project] || project;
|
||||
}
|
||||
|
||||
function formatCategory(category) {
|
||||
if (!category) return "unspecified";
|
||||
return category;
|
||||
}
|
||||
|
||||
function updateHeaderIndicators() {
|
||||
Object.keys(headerCells).forEach((key) => {
|
||||
const th = headerCells[key];
|
||||
const label = th.dataset.label || "";
|
||||
if (key === sortKey) {
|
||||
th.classList.add("sorted");
|
||||
th.textContent = `${label} ${sortDir === "asc" ? "^" : "v"}`;
|
||||
} else {
|
||||
th.classList.remove("sorted");
|
||||
th.textContent = label;
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
function updateResultsCount(count, total) {
|
||||
if (total === 0) {
|
||||
resultsCount.textContent = "No RFCs found.";
|
||||
return;
|
||||
}
|
||||
resultsCount.textContent = `Showing ${count} of ${total} RFCs`;
|
||||
}
|
||||
|
||||
function updateChipGroup(containerId, dataAttr, counts, total) {
|
||||
document.querySelectorAll(`#${containerId} .chip`).forEach((chip) => {
|
||||
const key = chip.dataset[dataAttr];
|
||||
const label = chip.dataset.label || chip.textContent;
|
||||
const count = key === "all" ? total : (counts[key] || 0);
|
||||
chip.textContent = `${label} (${count})`;
|
||||
});
|
||||
}
|
||||
|
||||
function updateChipCounts() {
|
||||
const statusCounts = {};
|
||||
const projectCounts = {};
|
||||
|
||||
rfcData.forEach((item) => {
|
||||
const statusKey = normalizeStatus(item.status);
|
||||
statusCounts[statusKey] = (statusCounts[statusKey] || 0) + 1;
|
||||
projectCounts[item.project] = (projectCounts[item.project] || 0) + 1;
|
||||
});
|
||||
|
||||
updateChipGroup("status-chips", "status", statusCounts, rfcData.length);
|
||||
updateChipGroup("project-chips", "project", projectCounts, rfcData.length);
|
||||
}
|
||||
|
||||
function compareItems(a, b) {
|
||||
if (sortKey === "status") {
|
||||
const aKey = normalizeStatus(a.status);
|
||||
const bKey = normalizeStatus(b.status);
|
||||
return (statusOrder[aKey] ?? 99) - (statusOrder[bKey] ?? 99);
|
||||
}
|
||||
|
||||
if (sortKey === "slug") {
|
||||
const aNum = parseInt(a.slug, 10);
|
||||
const bNum = parseInt(b.slug, 10);
|
||||
const aIsNum = !isNaN(aNum);
|
||||
const bIsNum = !isNaN(bNum);
|
||||
if (aIsNum && bIsNum) return aNum - bNum;
|
||||
if (aIsNum && !bIsNum) return -1;
|
||||
if (!aIsNum && bIsNum) return 1;
|
||||
}
|
||||
|
||||
const aVal = (a[sortKey] || "").toString().toLowerCase();
|
||||
const bVal = (b[sortKey] || "").toString().toLowerCase();
|
||||
return aVal.localeCompare(bVal, undefined, { numeric: true, sensitivity: "base" });
|
||||
}
|
||||
|
||||
function sortItems(items) {
|
||||
const sorted = [...items].sort(compareItems);
|
||||
if (sortDir === "desc") sorted.reverse();
|
||||
return sorted;
|
||||
}
|
||||
|
||||
function render() {
|
||||
const query = (searchInput.value || "").toLowerCase();
|
||||
const filtered = rfcData.filter((item) => {
|
||||
const statusOk = statusFilter === "all" || normalizeStatus(item.status) === statusFilter;
|
||||
const projectOk = projectFilter === "all" || item.project === projectFilter;
|
||||
const text = `${item.slug} ${item.title} ${item.project} ${item.status} ${item.category}`.toLowerCase();
|
||||
const textOk = !query || text.includes(query);
|
||||
return statusOk && projectOk && textOk;
|
||||
});
|
||||
|
||||
const sorted = sortItems(filtered);
|
||||
updateResultsCount(sorted.length, rfcData.length);
|
||||
updateHeaderIndicators();
|
||||
tbody.innerHTML = "";
|
||||
|
||||
if (!sorted.length) {
|
||||
const tr = document.createElement("tr");
|
||||
tr.innerHTML = "<td colspan=\"5\">No RFCs match your filters.</td>";
|
||||
tbody.appendChild(tr);
|
||||
return;
|
||||
}
|
||||
|
||||
sorted.forEach((item) => {
|
||||
const tr = document.createElement("tr");
|
||||
tr.innerHTML = `
|
||||
<td><a href="./${item.path}">${item.slug}</a></td>
|
||||
<td>${item.title}</td>
|
||||
<td>${formatProject(item.project)}</td>
|
||||
<td><span class="badge status-${normalizeStatus(item.status)}">${formatStatus(item.status)}</span></td>
|
||||
<td>${formatCategory(item.category)}</td>
|
||||
`;
|
||||
tbody.appendChild(tr);
|
||||
});
|
||||
}
|
||||
|
||||
searchInput.addEventListener("input", render);
|
||||
|
||||
document.getElementById("status-chips").addEventListener("click", (e) => {
|
||||
if (!e.target.dataset.status) return;
|
||||
statusFilter = e.target.dataset.status;
|
||||
document.querySelectorAll("#status-chips .chip").forEach((chip) => {
|
||||
chip.classList.toggle("active", chip.dataset.status === statusFilter);
|
||||
});
|
||||
render();
|
||||
});
|
||||
|
||||
document.getElementById("project-chips").addEventListener("click", (e) => {
|
||||
if (!e.target.dataset.project) return;
|
||||
projectFilter = e.target.dataset.project;
|
||||
document.querySelectorAll("#project-chips .chip").forEach((chip) => {
|
||||
chip.classList.toggle("active", chip.dataset.project === projectFilter);
|
||||
});
|
||||
render();
|
||||
});
|
||||
|
||||
resultsCount.textContent = "Loading RFC index...";
|
||||
fetch("./rfc-index.json")
|
||||
.then((resp) => {
|
||||
if (!resp.ok) throw new Error(resp.statusText);
|
||||
return resp.json();
|
||||
})
|
||||
.then((data) => {
|
||||
rfcData = data;
|
||||
updateChipCounts();
|
||||
render();
|
||||
})
|
||||
.catch((err) => {
|
||||
console.error(err);
|
||||
resultsCount.textContent = "Failed to load RFC index.";
|
||||
});
|
||||
})();
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
234
status/deprecated/index.html
Normal file
234
status/deprecated/index.html
Normal file
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
234
status/raw/index.html
Normal file
234
status/raw/index.html
Normal file
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
239
vac/index.html
Normal file
239
vac/index.html
Normal file
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
234
waku/informational/index.html
Normal file
234
waku/informational/index.html
Normal file
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
234
waku/standards/application/index.html
Normal file
234
waku/standards/application/index.html
Normal file
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user