mirror of
https://github.com/videojs/video.js.git
synced 2025-12-24 00:35:59 +02:00
docs: deploy docs using netlify (#4774)
This adds in the legacy docs into the repo and enables automatic deployment via netlify. The netlify-docs.js script will error out the build on netlify on master if we're not on a tagged commit so that it won't redeploy the docs unless there's a new release. If we're not on master or on master with a tagged commit, it will process with the deploy. Also, this removes the API docs from being published with npm, fixes #4609.
This commit is contained in:
122
docs/legacy-docs/js/guides.js
Normal file
122
docs/legacy-docs/js/guides.js
Normal file
@@ -0,0 +1,122 @@
|
||||
var BCLS = ( function () {
|
||||
var heading = document.getElementsByTagName('h1')[0],
|
||||
title = document.getElementsByTagName('title')[0],
|
||||
sections = document.getElementsByTagName('h2'),
|
||||
links = document.getElementsByTagName('a'),
|
||||
sidenav = document.getElementById('sidenav'),
|
||||
navList,
|
||||
navA,
|
||||
navItem,
|
||||
navText,
|
||||
i,
|
||||
iMax,
|
||||
item;
|
||||
|
||||
/**
|
||||
* tests for all the ways a variable might be undefined or not have a value
|
||||
* @param {*} x the variable to test
|
||||
* @return {Boolean} true if variable is defined and has a value
|
||||
*/
|
||||
function isDefined (x){
|
||||
if ( x === "" || x === null || x === undefined || x === NaN) {
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
function buildSideNav() {
|
||||
if (isDefined(sections)) {
|
||||
var homeHead = document.createElement('p'),
|
||||
homeLink = document.createElement('a');
|
||||
homeLink.setAttribute('href', '../../index.html');
|
||||
homeLink.setAttribute('style', 'font-size:1.4em;font-weight:bold;text-align:right;margin:0;padding-left:1em');
|
||||
homeLink.textContent = 'Docs Index';
|
||||
homeHead.appendChild(homeLink);
|
||||
navList = document.createElement('ul');
|
||||
navList.setAttribute('class', 'sidenav-list');
|
||||
navItem = document.createElement('li');
|
||||
navA = document.createElement('a');
|
||||
navA.setAttribute('href', '#toc0');
|
||||
navText = document.createTextNode('Top');
|
||||
navA.appendChild(navText);
|
||||
navItem.appendChild(navA);
|
||||
navList.appendChild(navItem);
|
||||
iMax = sections.length;
|
||||
for (i = 0; i < iMax; i++) {
|
||||
item = sections[i];
|
||||
navItem = document.createElement('li');
|
||||
navA = document.createElement('a');
|
||||
navA.setAttribute('href', '#' + item.id );
|
||||
navText = document.createTextNode(item.textContent);
|
||||
navA.appendChild(navText);
|
||||
navItem.appendChild(navA);
|
||||
navList.appendChild(navItem);
|
||||
}
|
||||
sidenav.appendChild(homeHead);
|
||||
sidenav.appendChild(navList);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* fix link paths to point to html instead of md
|
||||
*/
|
||||
function fixLinks() {
|
||||
var i,
|
||||
iMax = links.length,
|
||||
link,
|
||||
url;
|
||||
for (i = 0; i < iMax; i += 1) {
|
||||
link = links[i];
|
||||
url = link.getAttribute('href');
|
||||
if (isDefined(url)) {
|
||||
// if CONTRIBUTING.md, don't change
|
||||
if (url.indexOf('CONTRIBUTING.md' === -1)) {
|
||||
url.replace('.md', '.html');
|
||||
link.setAttribute('href', url);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* set the doc title
|
||||
*/
|
||||
function setTitle() {
|
||||
title.textContent = 'Videojs ' + heading.textContent;
|
||||
}
|
||||
|
||||
/**
|
||||
* add the page footer
|
||||
*/
|
||||
function addFooter() {
|
||||
var path = document.location.pathname,
|
||||
footer = document.createElement('div'),
|
||||
srcLink = document.createElement('a'),
|
||||
srcLink2 = document.createElement('a'),
|
||||
main = document.getElementById('main'),
|
||||
srcPath,
|
||||
srcPath2;
|
||||
// extract file name
|
||||
if (path.indexOf('#') > 0) {
|
||||
path = path.substring(0, path.indexOf('#'));
|
||||
}
|
||||
path = path.substring(path.lastIndexOf('/') + 1);
|
||||
srcPath = 'https://github.com/videojs/video.js/blob/master/docs/guides/' + path;
|
||||
srcPath2 = 'https://github.com/videojs/docs';
|
||||
footer.setAttribute('class', 'footer');
|
||||
srcLink.setAttribute('href', srcPath);
|
||||
srcLink.appendChild(document.createTextNode('content source'));
|
||||
srcLink2.setAttribute('href', srcPath2);
|
||||
srcLink2.appendChild(document.createTextNode('doc generator'));
|
||||
footer.innerHTML = 'Want to contribute? Go to the ';
|
||||
footer.appendChild(srcLink);
|
||||
footer.innerHTML += ' or the ';
|
||||
footer.appendChild(srcLink2);
|
||||
main.appendChild(footer);
|
||||
}
|
||||
|
||||
setTitle();
|
||||
buildSideNav();
|
||||
fixLinks();
|
||||
addFooter();
|
||||
})();
|
||||
Reference in New Issue
Block a user