Commit Graph

13 Commits

Author SHA1 Message Date
Joey Parrish 64896d70b0 Use shorter license header
This reflects changes in Google's policy on JavaScript license
headers, which should be smaller to avoid increasing the size of the
binary unnecessarily.

This also updates the company name from "Google, Inc" to "Google LLC".

Change-Id: I3f8b9ed3700b6351f43173d50c94d35c333e82b4
2019-11-22 18:18:36 +00:00
Joey Parrish d16e1a4a4a Update our fork of the jsdoc default template
This updates our fork to match the latest code in jsdoc v4.0.0-dev.
This was done by diffing our forked template against v3.5.5, then
reapplying the same changes to the latest default template from
v4.0.0-dev.

Fixes #1312 (regex backtracking vulnerability in jsdoc template)

Change-Id: I6bbac557ad45a443b0faa58be0842f2f30a85848
2019-05-15 20:32:34 +00:00
Joey Parrish ad7602f3b7 Add copyright headers to jsdoc template code
This is required by Google policy, to document where these forks came
from and what their licensing terms are.  I overlooked this detail
when I started customizing the JSDoc template.

Change-Id: Ifd18bb3143ca841e2bd934fe571f3a896ba53975
2018-03-29 11:04:35 -07:00
Joey Parrish 5061631f29 Sort jsdoc tutorials according to the config file
This feature is based on a forked version of jsdoc which we hope to
land https://github.com/jsdoc3/jsdoc/pull/1502 upstream.

Closes #1259

Change-Id: I48e07ffd8ae9fc2c07cd48b3e02b85e87694d341
2018-02-02 14:51:40 -08:00
Joey Parrish 75d9767983 Show more verbose functions and records in docs
Replace generic "function" and "record" types with their original types.
With this, we see, for example:
   "function(string):number" instead of just "function"
   "{{ foo: string, bar: number }}" instead of just "Object"

Issue #1259

Change-Id: Icd5ddbacadb7ec799e025b67f311792dd590b310
2018-02-01 21:55:01 +00:00
Joey Parrish c2472dcffc Allow the user to show/hide parts of the docs
This adds custom CSS classes and a widget to show/hide various parts
of the docs.  By default, we show exported interfaces only.  The user
can also select "public" (all public interfaces, even those not
exported), and "everything" (even private members).

Issue #1259

Change-Id: Iff8f4d84658a3d19ad8f2f979ab37b256393589f
2018-02-01 21:55:01 +00:00
Joey Parrish df0d34ccf5 Add linksource tag to jsdoc
This is a customization that allows us to link to the source code of
a thing, rather than its documentation.

Redoing this in a clean way caught some bad links, which have now been
fixed.

Issue #1259

Change-Id: I4c63aa10ddad8f8f21b224668c3529c70a1c6756
2018-01-31 14:05:13 -08:00
Joey Parrish 5f8fe9de65 Show jsdoc enum values and allow focus from URL
We now show enum values in the generated documentation.  Further, a
URL fragment of "value:6001", for example, would highlight and scroll
directly to the row in which value 6001 is described.  This is used
by the demo app to take users directly to the appropriate docs for a
given error code.

Issue #1259

Change-Id: Iae47e661db2bba43eb16a4f3fd1476adea59aecb
2018-01-31 22:04:48 +00:00
Joey Parrish a324958f2c Tweak jsdoc formatting
- always show Constructor heading for class constructors
 - hide top-level header that just repeats information from elsewhere
 - show namespace descriptions as a "class description" at the top
 - remove 2 redundant headers from tutorials that repeat the title
 - use a gray background for inline code, as github does
 - put more space between headings within a tutorial

Issue #1259

Change-Id: I7eedd69b7a732da0f3292912ec07d97eccb44eed
2018-01-31 22:04:48 +00:00
Joey Parrish af26b4f965 Add jsdoc output for base classes
Now we can see when one class extends or inherits from another.

Issue #1259

Change-Id: I14fc6361ed6c967d87e8aa9da0fc7c12e4177faa
2018-01-31 22:04:48 +00:00
Joey Parrish 0ed16c6caa Use long names in all jsdoc headers
For example, instead of "Class: Ewma", we want "Class: shaka.abr.Ewma".

Issue #1259

Change-Id: Id6918b508d1bde4a6b3be16805a63e673b58d0e4
2018-01-31 22:04:48 +00:00
Joey Parrish 5bd6a80c14 Customize jsdoc nav order
We can now specify in a config file what order the nav elements should
be in, and which nav elements should appear.

Issue #1259

Change-Id: I4caa3a0585b4140e76a66f1c5bed0c20c82ca5a4
2018-01-31 22:04:48 +00:00
Joey Parrish ed54199260 Upgrade and unfork jsdoc
This updates jsdoc to the latest version from npm and forks a copy of
the default jsdoc template.

In subsequent commits, we will reapply our customizations to the
template and to a jsdoc plugin.

This also fixes several bad annotations that the new jsdoc failed to
parse.

Issue #1259

Change-Id: I00a47270ea4754e1c96c43ca900d5cf889ab72e6
2018-01-31 22:04:48 +00:00