doc: add links to alternative versions of doc
Each page of the API documentation should have links to other versions of the same page. This will make it easier to switch between the current "live" release at nodejs.org and LTS versions. PR-URL: https://github.com/nodejs/node/pull/10958 Fixes: https://github.com/nodejs/node/issues/10726 Reviewed-By: Refael Ackermann <refack@gmail.com> Reviewed-By: Evan Lucas <evanlucas@me.com> Reviewed-By: Sakthipriyan Vairamani <thechargingvolcano@gmail.com> Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
This commit is contained in:
parent
79773f8af9
commit
cacce304cb
@ -1,5 +1,7 @@
|
|||||||
# C++ Addons
|
# C++ Addons
|
||||||
|
|
||||||
|
<!--introduced_in=v0.10.0-->
|
||||||
|
|
||||||
Node.js Addons are dynamically-linked shared objects, written in C++, that
|
Node.js Addons are dynamically-linked shared objects, written in C++, that
|
||||||
can be loaded into Node.js using the [`require()`][require] function, and used
|
can be loaded into Node.js using the [`require()`][require] function, and used
|
||||||
just as if they were an ordinary Node.js module. They are used primarily to
|
just as if they were an ordinary Node.js module. They are used primarily to
|
||||||
|
@ -1,5 +1,7 @@
|
|||||||
# Assert
|
# Assert
|
||||||
|
|
||||||
|
<!--introduced_in=v0.10.0-->
|
||||||
|
|
||||||
> Stability: 2 - Stable
|
> Stability: 2 - Stable
|
||||||
|
|
||||||
The `assert` module provides a simple set of assertion tests that can be used to
|
The `assert` module provides a simple set of assertion tests that can be used to
|
||||||
|
@ -1,5 +1,7 @@
|
|||||||
# Buffer
|
# Buffer
|
||||||
|
|
||||||
|
<!--introduced_in=v0.10.0-->
|
||||||
|
|
||||||
> Stability: 2 - Stable
|
> Stability: 2 - Stable
|
||||||
|
|
||||||
Prior to the introduction of [`TypedArray`] in ECMAScript 2015 (ES6), the
|
Prior to the introduction of [`TypedArray`] in ECMAScript 2015 (ES6), the
|
||||||
|
@ -1,5 +1,7 @@
|
|||||||
# Child Process
|
# Child Process
|
||||||
|
|
||||||
|
<!--introduced_in=v0.10.0-->
|
||||||
|
|
||||||
> Stability: 2 - Stable
|
> Stability: 2 - Stable
|
||||||
|
|
||||||
The `child_process` module provides the ability to spawn child processes in
|
The `child_process` module provides the ability to spawn child processes in
|
||||||
|
@ -1,5 +1,6 @@
|
|||||||
# Command Line Options
|
# Command Line Options
|
||||||
|
|
||||||
|
<!--introduced_in=v5.9.1-->
|
||||||
<!--type=misc-->
|
<!--type=misc-->
|
||||||
|
|
||||||
Node.js comes with a variety of CLI options. These options expose built-in
|
Node.js comes with a variety of CLI options. These options expose built-in
|
||||||
|
@ -1,5 +1,7 @@
|
|||||||
# Cluster
|
# Cluster
|
||||||
|
|
||||||
|
<!--introduced_in=v0.10.0-->
|
||||||
|
|
||||||
> Stability: 2 - Stable
|
> Stability: 2 - Stable
|
||||||
|
|
||||||
A single instance of Node.js runs in a single thread. To take advantage of
|
A single instance of Node.js runs in a single thread. To take advantage of
|
||||||
|
@ -1,5 +1,7 @@
|
|||||||
# Console
|
# Console
|
||||||
|
|
||||||
|
<!--introduced_in=v0.10.13-->
|
||||||
|
|
||||||
> Stability: 2 - Stable
|
> Stability: 2 - Stable
|
||||||
|
|
||||||
The `console` module provides a simple debugging console that is similar to the
|
The `console` module provides a simple debugging console that is similar to the
|
||||||
|
@ -1,5 +1,7 @@
|
|||||||
# Crypto
|
# Crypto
|
||||||
|
|
||||||
|
<!--introduced_in=v0.3.6-->
|
||||||
|
|
||||||
> Stability: 2 - Stable
|
> Stability: 2 - Stable
|
||||||
|
|
||||||
The `crypto` module provides cryptographic functionality that includes a set of
|
The `crypto` module provides cryptographic functionality that includes a set of
|
||||||
|
@ -1,5 +1,7 @@
|
|||||||
# Debugger
|
# Debugger
|
||||||
|
|
||||||
|
<!--introduced_in=v0.9.12-->
|
||||||
|
|
||||||
> Stability: 2 - Stable
|
> Stability: 2 - Stable
|
||||||
|
|
||||||
<!-- type=misc -->
|
<!-- type=misc -->
|
||||||
|
@ -1,5 +1,7 @@
|
|||||||
# UDP / Datagram Sockets
|
# UDP / Datagram Sockets
|
||||||
|
|
||||||
|
<!--introduced_in=v0.10.0-->
|
||||||
|
|
||||||
> Stability: 2 - Stable
|
> Stability: 2 - Stable
|
||||||
|
|
||||||
<!-- name=dgram -->
|
<!-- name=dgram -->
|
||||||
|
@ -1,5 +1,7 @@
|
|||||||
# DNS
|
# DNS
|
||||||
|
|
||||||
|
<!--introduced_in=v0.10.0-->
|
||||||
|
|
||||||
> Stability: 2 - Stable
|
> Stability: 2 - Stable
|
||||||
|
|
||||||
The `dns` module contains functions belonging to two different categories:
|
The `dns` module contains functions belonging to two different categories:
|
||||||
|
@ -1,5 +1,6 @@
|
|||||||
# About this Documentation
|
# About this Documentation
|
||||||
|
|
||||||
|
<!--introduced_in=v0.10.0-->
|
||||||
<!-- type=misc -->
|
<!-- type=misc -->
|
||||||
|
|
||||||
The goal of this documentation is to comprehensively explain the Node.js
|
The goal of this documentation is to comprehensively explain the Node.js
|
||||||
|
@ -7,6 +7,8 @@ changes:
|
|||||||
the first promise of a chain was created.
|
the first promise of a chain was created.
|
||||||
-->
|
-->
|
||||||
|
|
||||||
|
<!--introduced_in=v0.10.0-->
|
||||||
|
|
||||||
> Stability: 0 - Deprecated
|
> Stability: 0 - Deprecated
|
||||||
|
|
||||||
**This module is pending deprecation**. Once a replacement API has been
|
**This module is pending deprecation**. Once a replacement API has been
|
||||||
|
@ -1,5 +1,6 @@
|
|||||||
# Errors
|
# Errors
|
||||||
|
|
||||||
|
<!--introduced_in=v4.0.0-->
|
||||||
<!--type=misc-->
|
<!--type=misc-->
|
||||||
|
|
||||||
Applications running in Node.js will generally experience four categories of
|
Applications running in Node.js will generally experience four categories of
|
||||||
|
@ -1,5 +1,7 @@
|
|||||||
# Events
|
# Events
|
||||||
|
|
||||||
|
<!--introduced_in=v0.10.0-->
|
||||||
|
|
||||||
> Stability: 2 - Stable
|
> Stability: 2 - Stable
|
||||||
|
|
||||||
<!--type=module-->
|
<!--type=module-->
|
||||||
|
@ -1,5 +1,7 @@
|
|||||||
# File System
|
# File System
|
||||||
|
|
||||||
|
<!--introduced_in=v0.10.0-->
|
||||||
|
|
||||||
> Stability: 2 - Stable
|
> Stability: 2 - Stable
|
||||||
|
|
||||||
<!--name=fs-->
|
<!--name=fs-->
|
||||||
|
@ -1,5 +1,6 @@
|
|||||||
# Global Objects
|
# Global Objects
|
||||||
|
|
||||||
|
<!--introduced_in=v0.10.0-->
|
||||||
<!-- type=misc -->
|
<!-- type=misc -->
|
||||||
|
|
||||||
These objects are available in all modules. The following variables may appear
|
These objects are available in all modules. The following variables may appear
|
||||||
|
@ -1,5 +1,7 @@
|
|||||||
# HTTP
|
# HTTP
|
||||||
|
|
||||||
|
<!--introduced_in=v0.10.0-->
|
||||||
|
|
||||||
> Stability: 2 - Stable
|
> Stability: 2 - Stable
|
||||||
|
|
||||||
To use the HTTP server and client one must `require('http')`.
|
To use the HTTP server and client one must `require('http')`.
|
||||||
|
@ -1,5 +1,7 @@
|
|||||||
# HTTPS
|
# HTTPS
|
||||||
|
|
||||||
|
<!--introduced_in=v0.10.0-->
|
||||||
|
|
||||||
> Stability: 2 - Stable
|
> Stability: 2 - Stable
|
||||||
|
|
||||||
HTTPS is the HTTP protocol over TLS/SSL. In Node.js this is implemented as a
|
HTTPS is the HTTP protocol over TLS/SSL. In Node.js this is implemented as a
|
||||||
|
@ -1,5 +1,7 @@
|
|||||||
# Modules
|
# Modules
|
||||||
|
|
||||||
|
<!--introduced_in=v0.10.0-->
|
||||||
|
|
||||||
> Stability: 2 - Stable
|
> Stability: 2 - Stable
|
||||||
|
|
||||||
<!--name=module-->
|
<!--name=module-->
|
||||||
|
@ -1,5 +1,7 @@
|
|||||||
# Net
|
# Net
|
||||||
|
|
||||||
|
<!--introduced_in=v0.10.0-->
|
||||||
|
|
||||||
> Stability: 2 - Stable
|
> Stability: 2 - Stable
|
||||||
|
|
||||||
The `net` module provides an asynchronous network API for creating stream-based
|
The `net` module provides an asynchronous network API for creating stream-based
|
||||||
|
@ -1,5 +1,7 @@
|
|||||||
# OS
|
# OS
|
||||||
|
|
||||||
|
<!--introduced_in=v0.10.0-->
|
||||||
|
|
||||||
> Stability: 2 - Stable
|
> Stability: 2 - Stable
|
||||||
|
|
||||||
The `os` module provides a number of operating system-related utility methods.
|
The `os` module provides a number of operating system-related utility methods.
|
||||||
|
@ -1,5 +1,7 @@
|
|||||||
# Path
|
# Path
|
||||||
|
|
||||||
|
<!--introduced_in=v0.10.0-->
|
||||||
|
|
||||||
> Stability: 2 - Stable
|
> Stability: 2 - Stable
|
||||||
|
|
||||||
The `path` module provides utilities for working with file and directory paths.
|
The `path` module provides utilities for working with file and directory paths.
|
||||||
|
@ -1,5 +1,6 @@
|
|||||||
# Process
|
# Process
|
||||||
|
|
||||||
|
<!-- introduced_in=v0.10.0 -->
|
||||||
<!-- type=global -->
|
<!-- type=global -->
|
||||||
|
|
||||||
The `process` object is a `global` that provides information about, and control
|
The `process` object is a `global` that provides information about, and control
|
||||||
|
@ -6,6 +6,8 @@ changes:
|
|||||||
description: Accessing this module will now emit a deprecation warning.
|
description: Accessing this module will now emit a deprecation warning.
|
||||||
-->
|
-->
|
||||||
|
|
||||||
|
<!--introduced_in=v0.10.0-->
|
||||||
|
|
||||||
> Stability: 0 - Deprecated
|
> Stability: 0 - Deprecated
|
||||||
|
|
||||||
**The version of the punycode module bundled in Node.js is being deprecated**.
|
**The version of the punycode module bundled in Node.js is being deprecated**.
|
||||||
|
@ -1,5 +1,7 @@
|
|||||||
# Query String
|
# Query String
|
||||||
|
|
||||||
|
<!--introduced_in=v0.10.0-->
|
||||||
|
|
||||||
> Stability: 2 - Stable
|
> Stability: 2 - Stable
|
||||||
|
|
||||||
<!--name=querystring-->
|
<!--name=querystring-->
|
||||||
|
@ -1,5 +1,7 @@
|
|||||||
# Readline
|
# Readline
|
||||||
|
|
||||||
|
<!--introduced_in=v0.10.0-->
|
||||||
|
|
||||||
> Stability: 2 - Stable
|
> Stability: 2 - Stable
|
||||||
|
|
||||||
The `readline` module provides an interface for reading data from a [Readable][]
|
The `readline` module provides an interface for reading data from a [Readable][]
|
||||||
|
@ -1,5 +1,7 @@
|
|||||||
# REPL
|
# REPL
|
||||||
|
|
||||||
|
<!--introduced_in=v0.10.0-->
|
||||||
|
|
||||||
> Stability: 2 - Stable
|
> Stability: 2 - Stable
|
||||||
|
|
||||||
The `repl` module provides a Read-Eval-Print-Loop (REPL) implementation that
|
The `repl` module provides a Read-Eval-Print-Loop (REPL) implementation that
|
||||||
|
@ -1,5 +1,7 @@
|
|||||||
# Stream
|
# Stream
|
||||||
|
|
||||||
|
<!--introduced_in=v0.10.0-->
|
||||||
|
|
||||||
> Stability: 2 - Stable
|
> Stability: 2 - Stable
|
||||||
|
|
||||||
A stream is an abstract interface for working with streaming data in Node.js.
|
A stream is an abstract interface for working with streaming data in Node.js.
|
||||||
|
@ -1,5 +1,7 @@
|
|||||||
# String Decoder
|
# String Decoder
|
||||||
|
|
||||||
|
<!--introduced_in=v0.10.0-->
|
||||||
|
|
||||||
> Stability: 2 - Stable
|
> Stability: 2 - Stable
|
||||||
|
|
||||||
The `string_decoder` module provides an API for decoding `Buffer` objects into
|
The `string_decoder` module provides an API for decoding `Buffer` objects into
|
||||||
|
@ -1,5 +1,6 @@
|
|||||||
# Usage
|
# Usage
|
||||||
|
|
||||||
|
<!--introduced_in=v0.10.0-->
|
||||||
<!--type=misc-->
|
<!--type=misc-->
|
||||||
|
|
||||||
`node [options] [v8 options] [script.js | -e "script" | - ] [arguments]`
|
`node [options] [v8 options] [script.js | -e "script" | - ] [arguments]`
|
||||||
|
@ -1,5 +1,7 @@
|
|||||||
# Timers
|
# Timers
|
||||||
|
|
||||||
|
<!--introduced_in=v0.10.0-->
|
||||||
|
|
||||||
> Stability: 2 - Stable
|
> Stability: 2 - Stable
|
||||||
|
|
||||||
The `timer` module exposes a global API for scheduling functions to
|
The `timer` module exposes a global API for scheduling functions to
|
||||||
|
@ -1,5 +1,7 @@
|
|||||||
# TLS (SSL)
|
# TLS (SSL)
|
||||||
|
|
||||||
|
<!--introduced_in=v0.10.0-->
|
||||||
|
|
||||||
> Stability: 2 - Stable
|
> Stability: 2 - Stable
|
||||||
|
|
||||||
The `tls` module provides an implementation of the Transport Layer Security
|
The `tls` module provides an implementation of the Transport Layer Security
|
||||||
|
@ -1,5 +1,7 @@
|
|||||||
# TTY
|
# TTY
|
||||||
|
|
||||||
|
<!--introduced_in=v0.10.0-->
|
||||||
|
|
||||||
> Stability: 2 - Stable
|
> Stability: 2 - Stable
|
||||||
|
|
||||||
The `tty` module provides the `tty.ReadStream` and `tty.WriteStream` classes.
|
The `tty` module provides the `tty.ReadStream` and `tty.WriteStream` classes.
|
||||||
|
@ -1,5 +1,7 @@
|
|||||||
# URL
|
# URL
|
||||||
|
|
||||||
|
<!--introduced_in=v0.10.0-->
|
||||||
|
|
||||||
> Stability: 2 - Stable
|
> Stability: 2 - Stable
|
||||||
|
|
||||||
The `url` module provides utilities for URL resolution and parsing. It can be
|
The `url` module provides utilities for URL resolution and parsing. It can be
|
||||||
|
@ -1,5 +1,7 @@
|
|||||||
# Util
|
# Util
|
||||||
|
|
||||||
|
<!--introduced_in=v0.10.0-->
|
||||||
|
|
||||||
> Stability: 2 - Stable
|
> Stability: 2 - Stable
|
||||||
|
|
||||||
The `util` module is primarily designed to support the needs of Node.js' own
|
The `util` module is primarily designed to support the needs of Node.js' own
|
||||||
|
@ -1,5 +1,7 @@
|
|||||||
# V8
|
# V8
|
||||||
|
|
||||||
|
<!--introduced_in=v4.0.0-->
|
||||||
|
|
||||||
The `v8` module exposes APIs that are specific to the version of [V8][]
|
The `v8` module exposes APIs that are specific to the version of [V8][]
|
||||||
built into the Node.js binary. It can be accessed using:
|
built into the Node.js binary. It can be accessed using:
|
||||||
|
|
||||||
|
@ -1,5 +1,7 @@
|
|||||||
# VM (Executing JavaScript)
|
# VM (Executing JavaScript)
|
||||||
|
|
||||||
|
<!--introduced_in=v0.10.0-->
|
||||||
|
|
||||||
> Stability: 2 - Stable
|
> Stability: 2 - Stable
|
||||||
|
|
||||||
<!--name=vm-->
|
<!--name=vm-->
|
||||||
|
@ -1,5 +1,7 @@
|
|||||||
# Zlib
|
# Zlib
|
||||||
|
|
||||||
|
<!--introduced_in=v0.10.0-->
|
||||||
|
|
||||||
> Stability: 2 - Stable
|
> Stability: 2 - Stable
|
||||||
|
|
||||||
The `zlib` module provides compression functionality implemented using Gzip and
|
The `zlib` module provides compression functionality implemented using Gzip and
|
||||||
|
@ -81,6 +81,61 @@ em code {
|
|||||||
|
|
||||||
#gtoc {
|
#gtoc {
|
||||||
font-size: .8em;
|
font-size: .8em;
|
||||||
|
margin-bottom: 1em;
|
||||||
|
}
|
||||||
|
|
||||||
|
#gtoc ul {
|
||||||
|
list-style: none;
|
||||||
|
margin-left: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
#gtoc li {
|
||||||
|
display: inline;
|
||||||
|
}
|
||||||
|
|
||||||
|
li.version-picker {
|
||||||
|
position: relative;
|
||||||
|
}
|
||||||
|
|
||||||
|
li.version-picker:hover > ol {
|
||||||
|
display: block;
|
||||||
|
}
|
||||||
|
|
||||||
|
li.version-picker a span {
|
||||||
|
font-size: .7em;
|
||||||
|
}
|
||||||
|
|
||||||
|
ol.version-picker {
|
||||||
|
background: #fff;
|
||||||
|
border: 1px #43853d solid;
|
||||||
|
border-radius: 2px;
|
||||||
|
display: none;
|
||||||
|
list-style: none;
|
||||||
|
position: absolute;
|
||||||
|
right: -2px;
|
||||||
|
width: 101%;
|
||||||
|
}
|
||||||
|
|
||||||
|
#gtoc ol.version-picker li {
|
||||||
|
display: block;
|
||||||
|
}
|
||||||
|
|
||||||
|
ol.version-picker li a {
|
||||||
|
border-radius: 0;
|
||||||
|
display: block;
|
||||||
|
margin: 0;
|
||||||
|
padding: .1em;
|
||||||
|
padding-left: 1em;
|
||||||
|
}
|
||||||
|
|
||||||
|
ol.version-picker li:first-child a {
|
||||||
|
border-top-right-radius: 1px;
|
||||||
|
border-top-left-radius: 1px;
|
||||||
|
}
|
||||||
|
|
||||||
|
ol.version-picker li:last-child a {
|
||||||
|
border-bottom-right-radius: 1px;
|
||||||
|
border-bottom-left-radius: 1px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.line {
|
.line {
|
||||||
@ -507,6 +562,9 @@ th > *:last-child, td > *:last-child {
|
|||||||
#content {
|
#content {
|
||||||
font-size: 3.5em;
|
font-size: 3.5em;
|
||||||
}
|
}
|
||||||
|
#gtoc {
|
||||||
|
font-size: 0.6em;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@media print {
|
@media print {
|
||||||
|
@ -23,11 +23,21 @@
|
|||||||
<header>
|
<header>
|
||||||
<h1>Node.js __VERSION__ Documentation</h1>
|
<h1>Node.js __VERSION__ Documentation</h1>
|
||||||
<div id="gtoc">
|
<div id="gtoc">
|
||||||
<p>
|
<ul>
|
||||||
|
<li>
|
||||||
<a href="index.html" name="toc">Index</a> |
|
<a href="index.html" name="toc">Index</a> |
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
<a href="all.html">View on single page</a> |
|
<a href="all.html">View on single page</a> |
|
||||||
<a href="__FILENAME__.json">View as JSON</a>
|
</li>
|
||||||
</p>
|
<li>
|
||||||
|
<a href="__FILENAME__.json">View as JSON</a> |
|
||||||
|
</li>
|
||||||
|
<li class="version-picker">
|
||||||
|
<a href="#">View another version <span>▼</span></a>
|
||||||
|
__ALTDOCS__
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
<hr>
|
<hr>
|
||||||
</header>
|
</header>
|
||||||
|
@ -31,6 +31,7 @@ const typeParser = require('./type-parser.js');
|
|||||||
module.exports = toHTML;
|
module.exports = toHTML;
|
||||||
|
|
||||||
const STABILITY_TEXT_REG_EXP = /(.*:)\s*(\d)([\s\S]*)/;
|
const STABILITY_TEXT_REG_EXP = /(.*:)\s*(\d)([\s\S]*)/;
|
||||||
|
const DOC_CREATED_REG_EXP = /<!--\s*introduced_in\s*=\s*v([0-9]+)\.([0-9]+)\.([0-9]+)\s*-->/;
|
||||||
|
|
||||||
// customized heading without id attribute
|
// customized heading without id attribute
|
||||||
const renderer = new marked.Renderer();
|
const renderer = new marked.Renderer();
|
||||||
@ -52,13 +53,17 @@ const gtocPath = path.resolve(path.join(
|
|||||||
));
|
));
|
||||||
var gtocLoading = null;
|
var gtocLoading = null;
|
||||||
var gtocData = null;
|
var gtocData = null;
|
||||||
|
var docCreated = null;
|
||||||
|
var nodeVersion = null;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* opts: input, filename, template, nodeVersion.
|
* opts: input, filename, template, nodeVersion.
|
||||||
*/
|
*/
|
||||||
function toHTML(opts, cb) {
|
function toHTML(opts, cb) {
|
||||||
const template = opts.template;
|
const template = opts.template;
|
||||||
const nodeVersion = opts.nodeVersion || process.version;
|
|
||||||
|
nodeVersion = opts.nodeVersion || process.version;
|
||||||
|
docCreated = opts.input.match(DOC_CREATED_REG_EXP);
|
||||||
|
|
||||||
if (gtocData) {
|
if (gtocData) {
|
||||||
return onGtocLoaded();
|
return onGtocLoaded();
|
||||||
@ -157,6 +162,8 @@ function render(opts, cb) {
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
template = template.replace(/__ALTDOCS__/, altDocs(filename));
|
||||||
|
|
||||||
// content has to be the last thing we do with
|
// content has to be the last thing we do with
|
||||||
// the lexed tokens, because it's destructive.
|
// the lexed tokens, because it's destructive.
|
||||||
const content = marked.parser(lexed);
|
const content = marked.parser(lexed);
|
||||||
@ -188,6 +195,50 @@ function replaceInText(text) {
|
|||||||
return linkJsTypeDocs(linkManPages(text));
|
return linkJsTypeDocs(linkManPages(text));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function altDocs(filename) {
|
||||||
|
let html = '';
|
||||||
|
|
||||||
|
if (!docCreated) {
|
||||||
|
console.error(`Failed to add alternative version links to ${filename}`);
|
||||||
|
return html;
|
||||||
|
}
|
||||||
|
|
||||||
|
function lte(v) {
|
||||||
|
const ns = v.num.split('.');
|
||||||
|
if (docCreated[1] > +ns[0])
|
||||||
|
return false;
|
||||||
|
if (docCreated[1] < +ns[0])
|
||||||
|
return true;
|
||||||
|
return docCreated[2] <= +ns[1];
|
||||||
|
}
|
||||||
|
|
||||||
|
const versions = [
|
||||||
|
{ num: '8.x' },
|
||||||
|
{ num: '7.x' },
|
||||||
|
{ num: '6.x', lts: true },
|
||||||
|
{ num: '5.x' },
|
||||||
|
{ num: '4.x', lts: true },
|
||||||
|
{ num: '0.12.x' },
|
||||||
|
{ num: '0.10.x' }
|
||||||
|
];
|
||||||
|
|
||||||
|
const host = 'https://nodejs.org';
|
||||||
|
const href = (v) => `${host}/docs/latest-v${v.num}/api/${filename}.html`;
|
||||||
|
|
||||||
|
function li(v, i) {
|
||||||
|
let html = `<li><a href="${href(v)}">${v.num}`;
|
||||||
|
|
||||||
|
if (v.lts)
|
||||||
|
html += ' <b>LTS</b>';
|
||||||
|
|
||||||
|
return html + '</a></li>';
|
||||||
|
}
|
||||||
|
|
||||||
|
const lis = (vs) => vs.filter(lte).map(li).join('\n');
|
||||||
|
|
||||||
|
return `<ol class="version-picker">${lis(versions)}</ol>`;
|
||||||
|
}
|
||||||
|
|
||||||
// handle general body-text replacements
|
// handle general body-text replacements
|
||||||
// for example, link man page references to the actual page
|
// for example, link man page references to the actual page
|
||||||
function parseText(lexed) {
|
function parseText(lexed) {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user