mirror of
https://github.com/hedgedoc/hedgedoc.git
synced 2025-05-13 06:34:39 -04:00
Use JavaScript Standard Style (part 2)
Fixed all fail on frontend code.
This commit is contained in:
parent
4889e9732d
commit
5bc642d02e
19 changed files with 6790 additions and 7032 deletions
|
@ -1,8 +1,11 @@
|
|||
require('../css/extra.css');
|
||||
require('../css/slide-preview.css');
|
||||
require('../css/site.css');
|
||||
/* eslint-env browser, jquery */
|
||||
/* global refreshView */
|
||||
|
||||
require('highlight.js/styles/github-gist.css');
|
||||
require('../css/extra.css')
|
||||
require('../css/slide-preview.css')
|
||||
require('../css/site.css')
|
||||
|
||||
require('highlight.js/styles/github-gist.css')
|
||||
|
||||
import {
|
||||
autoLinkify,
|
||||
|
@ -16,126 +19,126 @@ import {
|
|||
scrollToHash,
|
||||
smoothHashScroll,
|
||||
updateLastChange
|
||||
} from './extra';
|
||||
} from './extra'
|
||||
|
||||
import { preventXSS } from './render';
|
||||
import { preventXSS } from './render'
|
||||
|
||||
const markdown = $("#doc.markdown-body");
|
||||
const text = markdown.text();
|
||||
const lastMeta = md.meta;
|
||||
md.meta = {};
|
||||
delete md.metaError;
|
||||
let rendered = md.render(text);
|
||||
const markdown = $('#doc.markdown-body')
|
||||
const text = markdown.text()
|
||||
const lastMeta = md.meta
|
||||
md.meta = {}
|
||||
delete md.metaError
|
||||
let rendered = md.render(text)
|
||||
if (md.meta.type && md.meta.type === 'slide') {
|
||||
const slideOptions = {
|
||||
separator: '^(\r\n?|\n)---(\r\n?|\n)$',
|
||||
verticalSeparator: '^(\r\n?|\n)----(\r\n?|\n)$'
|
||||
};
|
||||
const slides = RevealMarkdown.slidify(text, slideOptions);
|
||||
markdown.html(slides);
|
||||
RevealMarkdown.initialize();
|
||||
const slideOptions = {
|
||||
separator: '^(\r\n?|\n)---(\r\n?|\n)$',
|
||||
verticalSeparator: '^(\r\n?|\n)----(\r\n?|\n)$'
|
||||
}
|
||||
const slides = window.RevealMarkdown.slidify(text, slideOptions)
|
||||
markdown.html(slides)
|
||||
window.RevealMarkdown.initialize()
|
||||
// prevent XSS
|
||||
markdown.html(preventXSS(markdown.html()));
|
||||
markdown.addClass('slides');
|
||||
markdown.html(preventXSS(markdown.html()))
|
||||
markdown.addClass('slides')
|
||||
} else {
|
||||
if (lastMeta.type && lastMeta.type === 'slide') {
|
||||
refreshView();
|
||||
markdown.removeClass('slides');
|
||||
}
|
||||
if (lastMeta.type && lastMeta.type === 'slide') {
|
||||
refreshView()
|
||||
markdown.removeClass('slides')
|
||||
}
|
||||
// only render again when meta changed
|
||||
if (JSON.stringify(md.meta) != JSON.stringify(lastMeta)) {
|
||||
parseMeta(md, null, markdown, $('#ui-toc'), $('#ui-toc-affix'));
|
||||
rendered = md.render(text);
|
||||
}
|
||||
if (JSON.stringify(md.meta) !== JSON.stringify(lastMeta)) {
|
||||
parseMeta(md, null, markdown, $('#ui-toc'), $('#ui-toc-affix'))
|
||||
rendered = md.render(text)
|
||||
}
|
||||
// prevent XSS
|
||||
rendered = preventXSS(rendered);
|
||||
const result = postProcess(rendered);
|
||||
markdown.html(result.html());
|
||||
rendered = preventXSS(rendered)
|
||||
const result = postProcess(rendered)
|
||||
markdown.html(result.html())
|
||||
}
|
||||
$(document.body).show();
|
||||
$(document.body).show()
|
||||
|
||||
finishView(markdown);
|
||||
autoLinkify(markdown);
|
||||
deduplicatedHeaderId(markdown);
|
||||
renderTOC(markdown);
|
||||
generateToc('ui-toc');
|
||||
generateToc('ui-toc-affix');
|
||||
smoothHashScroll();
|
||||
createtime = lastchangeui.time.attr('data-createtime');
|
||||
lastchangetime = lastchangeui.time.attr('data-updatetime');
|
||||
updateLastChange();
|
||||
finishView(markdown)
|
||||
autoLinkify(markdown)
|
||||
deduplicatedHeaderId(markdown)
|
||||
renderTOC(markdown)
|
||||
generateToc('ui-toc')
|
||||
generateToc('ui-toc-affix')
|
||||
smoothHashScroll()
|
||||
window.createtime = window.lastchangeui.time.attr('data-createtime')
|
||||
window.lastchangetime = window.lastchangeui.time.attr('data-updatetime')
|
||||
updateLastChange()
|
||||
|
||||
const url = window.location.pathname;
|
||||
$('.ui-edit').attr('href', `${url}/edit`);
|
||||
const toc = $('.ui-toc');
|
||||
const tocAffix = $('.ui-affix-toc');
|
||||
const tocDropdown = $('.ui-toc-dropdown');
|
||||
//toc
|
||||
const url = window.location.pathname
|
||||
$('.ui-edit').attr('href', `${url}/edit`)
|
||||
const toc = $('.ui-toc')
|
||||
const tocAffix = $('.ui-affix-toc')
|
||||
const tocDropdown = $('.ui-toc-dropdown')
|
||||
// toc
|
||||
tocDropdown.click(e => {
|
||||
e.stopPropagation();
|
||||
});
|
||||
e.stopPropagation()
|
||||
})
|
||||
|
||||
let enoughForAffixToc = true;
|
||||
let enoughForAffixToc = true
|
||||
|
||||
function generateScrollspy() {
|
||||
$(document.body).scrollspy({
|
||||
target: ''
|
||||
});
|
||||
$(document.body).scrollspy('refresh');
|
||||
if (enoughForAffixToc) {
|
||||
toc.hide();
|
||||
tocAffix.show();
|
||||
} else {
|
||||
tocAffix.hide();
|
||||
toc.show();
|
||||
}
|
||||
$(document.body).scroll();
|
||||
function generateScrollspy () {
|
||||
$(document.body).scrollspy({
|
||||
target: ''
|
||||
})
|
||||
$(document.body).scrollspy('refresh')
|
||||
if (enoughForAffixToc) {
|
||||
toc.hide()
|
||||
tocAffix.show()
|
||||
} else {
|
||||
tocAffix.hide()
|
||||
toc.show()
|
||||
}
|
||||
$(document.body).scroll()
|
||||
}
|
||||
|
||||
function windowResize() {
|
||||
//toc right
|
||||
const paddingRight = parseFloat(markdown.css('padding-right'));
|
||||
const right = ($(window).width() - (markdown.offset().left + markdown.outerWidth() - paddingRight));
|
||||
toc.css('right', `${right}px`);
|
||||
//affix toc left
|
||||
let newbool;
|
||||
const rightMargin = (markdown.parent().outerWidth() - markdown.outerWidth()) / 2;
|
||||
//for ipad or wider device
|
||||
if (rightMargin >= 133) {
|
||||
newbool = true;
|
||||
const affixLeftMargin = (tocAffix.outerWidth() - tocAffix.width()) / 2;
|
||||
const left = markdown.offset().left + markdown.outerWidth() - affixLeftMargin;
|
||||
tocAffix.css('left', `${left}px`);
|
||||
} else {
|
||||
newbool = false;
|
||||
}
|
||||
if (newbool != enoughForAffixToc) {
|
||||
enoughForAffixToc = newbool;
|
||||
generateScrollspy();
|
||||
}
|
||||
function windowResize () {
|
||||
// toc right
|
||||
const paddingRight = parseFloat(markdown.css('padding-right'))
|
||||
const right = ($(window).width() - (markdown.offset().left + markdown.outerWidth() - paddingRight))
|
||||
toc.css('right', `${right}px`)
|
||||
// affix toc left
|
||||
let newbool
|
||||
const rightMargin = (markdown.parent().outerWidth() - markdown.outerWidth()) / 2
|
||||
// for ipad or wider device
|
||||
if (rightMargin >= 133) {
|
||||
newbool = true
|
||||
const affixLeftMargin = (tocAffix.outerWidth() - tocAffix.width()) / 2
|
||||
const left = markdown.offset().left + markdown.outerWidth() - affixLeftMargin
|
||||
tocAffix.css('left', `${left}px`)
|
||||
} else {
|
||||
newbool = false
|
||||
}
|
||||
if (newbool !== enoughForAffixToc) {
|
||||
enoughForAffixToc = newbool
|
||||
generateScrollspy()
|
||||
}
|
||||
}
|
||||
$(window).resize(() => {
|
||||
windowResize();
|
||||
});
|
||||
windowResize()
|
||||
})
|
||||
$(document).ready(() => {
|
||||
windowResize();
|
||||
generateScrollspy();
|
||||
setTimeout(scrollToHash, 0);
|
||||
//tooltip
|
||||
$('[data-toggle="tooltip"]').tooltip();
|
||||
});
|
||||
windowResize()
|
||||
generateScrollspy()
|
||||
setTimeout(scrollToHash, 0)
|
||||
// tooltip
|
||||
$('[data-toggle="tooltip"]').tooltip()
|
||||
})
|
||||
|
||||
export function scrollToTop() {
|
||||
$('body, html').stop(true, true).animate({
|
||||
scrollTop: 0
|
||||
}, 100, "linear");
|
||||
export function scrollToTop () {
|
||||
$('body, html').stop(true, true).animate({
|
||||
scrollTop: 0
|
||||
}, 100, 'linear')
|
||||
}
|
||||
|
||||
export function scrollToBottom() {
|
||||
$('body, html').stop(true, true).animate({
|
||||
scrollTop: $(document.body)[0].scrollHeight
|
||||
}, 100, "linear");
|
||||
export function scrollToBottom () {
|
||||
$('body, html').stop(true, true).animate({
|
||||
scrollTop: $(document.body)[0].scrollHeight
|
||||
}, 100, 'linear')
|
||||
}
|
||||
|
||||
window.scrollToTop = scrollToTop;
|
||||
window.scrollToBottom = scrollToBottom;
|
||||
window.scrollToTop = scrollToTop
|
||||
window.scrollToBottom = scrollToBottom
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue