Compare commits

..

13 Commits

Author SHA1 Message Date
Shan Carter ab8ab149e6 Moving headers in appendix to text column 2018-12-27 11:44:47 -08:00
Ludwig Schubert a272efb89c 2.2.26 2018-12-17 13:28:04 -08:00
Ludwig Schubert bb19b13467 Fixes #80 by switching a div tag inside a p tag to a span tag.
Thanks, humbertaco!
2018-12-17 13:26:33 -08:00
Ludwig Schubert 7e240ddf4f Work around wrong baseline for math tags resulting from an overzealous contain optimization that became active in Chrome 71. Fixes #96. 2018-12-17 13:17:53 -08:00
Ludwig Schubert 84c400184d Render math tags in all elements under body, not just in d-article.
Should fix #97, but still in testing.
2018-12-17 13:06:18 -08:00
Ludwig Schubert d187130657 2.2.25 2018-12-17 12:59:47 -08:00
Ludwig Schubert cc6b6bf595 Fix #95 in Chrome 69+, Safari, Firefox by reverting to JS based tooltip positioning. Also DRYs some styles 2018-12-17 12:59:38 -08:00
Ludwig Schubert 9463d6e58d 2.2.24 2018-08-30 15:37:02 -07:00
Ludwig Schubert 3c2f782e74 Fix scope typo 2018-08-30 15:36:55 -07:00
Ludwig Schubert 6bd5d0bf03 2.2.23 2018-07-11 14:00:02 -07:00
Ludwig Schubert a5f663c249 Disable converting ligatures during pre-rendering due to Chrome bug 862648 2018-07-11 13:59:54 -07:00
Ludwig Schubert b854bd0124 Merge branch 'master' of github.com:distillpub/template 2018-06-22 12:02:59 -07:00
Ludwig Schubert a6df552537 Generalize disclaimer 2018-03-30 11:09:31 -07:00
13 changed files with 39 additions and 34 deletions
+4 -4
View File
@@ -1,8 +1,6 @@
# Distill Template # Distill Template
_Disclaimer: This project is research code. It is not an official Google product._ This is the repository for the Distill web framework.
This is the repository for the distill web framework.
## Contributing ## Contributing
@@ -16,7 +14,9 @@ To contribute a change, [check out the contributing guide](CONTRIBUTING.md).
Run `npm run start` to start a watching build rollup server. To view the sample pages in the repo, you can run `npm run serve` as a separate process which starts a static server. `npm run build` will run a one-time build. Run `npm run start` to start a watching build rollup server. To view the sample pages in the repo, you can run `npm run serve` as a separate process which starts a static server. `npm run build` will run a one-time build.
## License ## Disclaimer & License
_This project is research code. It is not an official product of Google or any other institution supporting Distill._
Copyright 2018, The Distill Template Authors. Copyright 2018, The Distill Template Authors.
+1 -1
View File
@@ -32,7 +32,7 @@
{ {
"author":"Chris Olah", "author":"Chris Olah",
"authorURL":"https://colah.github.io/", "authorURL":"https://colah.github.io/",
"affiliations": [{"name": "Google Brain", "url": "https://g.co/brain"}] "affiliations": [{"name": "Google Brain"}]
}, },
{ {
"author":"Ludwig Schubert", "author":"Ludwig Schubert",
+1 -1
View File
@@ -1,6 +1,6 @@
{ {
"name": "distill-template", "name": "distill-template",
"version": "2.2.19", "version": "2.2.26",
"lockfileVersion": 1, "lockfileVersion": 1,
"requires": true, "requires": true,
"dependencies": { "dependencies": {
+1 -1
View File
@@ -1,6 +1,6 @@
{ {
"name": "distill-template", "name": "distill-template",
"version": "2.2.22", "version": "2.2.26",
"description": "Template for creating Distill articles.", "description": "Template for creating Distill articles.",
"main": "dist/template.v2.js", "main": "dist/template.v2.js",
"bin": { "bin": {
+1 -1
View File
@@ -30,7 +30,7 @@ d-appendix {
} }
d-appendix h3 { d-appendix h3 {
grid-column: page-start / text-start; grid-column: text;
font-size: 15px; font-size: 15px;
font-weight: 500; font-weight: 500;
margin-top: 1em; margin-top: 1em;
+2 -2
View File
@@ -24,11 +24,11 @@ export function bylineTemplate(frontMatter) {
<p class="author"> <p class="author">
${author.personalURL ? ` ${author.personalURL ? `
<a class="name" href="${author.personalURL}">${author.name}</a>` : ` <a class="name" href="${author.personalURL}">${author.name}</a>` : `
<div class="name">${author.name}</div>`} <span class="name">${author.name}</span>`}
</p> </p>
<p class="affiliation"> <p class="affiliation">
${author.affiliations.map(affiliation => ${author.affiliations.map(affiliation =>
affiliation.url ? `<a class="affiliation" href="${affiliation.url}">${affiliation.name}</a>` : `<div class="affiliation">${affiliation.name}</div>` affiliation.url ? `<a class="affiliation" href="${affiliation.url}">${affiliation.name}</a>` : `<span class="affiliation">${affiliation.name}</span>`
).join(', ')} ).join(', ')}
</p> </p>
`).join('')} `).join('')}
+5 -6
View File
@@ -19,7 +19,7 @@ const T = Template('d-cite', `
<style> <style>
:host { :host {
display: inline-block;
} }
.citation { .citation {
@@ -48,10 +48,6 @@ figcaption .citation-number {
line-height: 1em; line-height: 1em;
} }
d-hover-box {
margin-top: 1.9em;
}
ul { ul {
margin: 0; margin: 0;
padding: 0; padding: 0;
@@ -71,7 +67,10 @@ ul li:last-of-type {
<d-hover-box id="hover-box"></d-hover-box> <d-hover-box id="hover-box"></d-hover-box>
<div id="citation-" class="citation"><slot></slot><span class="citation-number"></span></div> <div id="citation-" class="citation">
<slot></slot>
<span class="citation-number"></span>
</div>
`); `);
export class Cite extends T(HTMLElement) { export class Cite extends T(HTMLElement) {
+1 -7
View File
@@ -22,6 +22,7 @@ d-math[block] {
} }
:host { :host {
} }
sup { sup {
@@ -37,13 +38,6 @@ span {
cursor: default; cursor: default;
} }
.container {
position: absolute;
width: 100%;
left: 0;
z-index: 10000;
}
.footnote-container { .footnote-container {
padding: 10px; padding: 10px;
} }
+10 -3
View File
@@ -20,9 +20,10 @@ const T = Template('d-hover-box', `
:host { :host {
position: absolute; position: absolute;
width: 100%; width: 100%;
left: 0; left: 0px;
z-index: 10000; z-index: 10000;
display: none; display: none;
white-space: normal
} }
.container { .container {
@@ -40,10 +41,13 @@ const T = Template('d-hover-box', `
left: 0; left: 0;
width: 100%; width: 100%;
border: 1px solid rgba(0, 0, 0, 0.1); border: 1px solid rgba(0, 0, 0, 0.1);
background-color: rgb(250, 250, 250); background-color: rgba(250, 250, 250, 0.95);
box-shadow: 0 0 7px rgba(0, 0, 0, 0.1); box-shadow: 0 0 7px rgba(0, 0, 0, 0.1);
border-radius: 4px; border-radius: 4px;
box-sizing: border-box; box-sizing: border-box;
backdrop-filter: blur(2px);
-webkit-backdrop-filter: blur(2px);
} }
</style> </style>
@@ -117,11 +121,14 @@ export class HoverBox extends T(HTMLElement) {
show(position) { show(position) {
this.visible = true; this.visible = true;
this.style.display = 'block'; this.style.display = 'block';
// 10px extra offset from element
this.style.top = Math.round(position[1] + 10) + 'px';
} }
showAtNode(node) { showAtNode(node) {
// https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/offsetTop
const bbox = node.getBoundingClientRect(); const bbox = node.getBoundingClientRect();
this.show([bbox.right, bbox.bottom]); this.show([node.offsetLeft + bbox.width, node.offsetTop + bbox.height]);
} }
hide() { hide() {
+1 -1
View File
@@ -227,7 +227,7 @@ d-figure {
/* KaTeX */ /* KaTeX */
.katex, .katex-prerendered { .katex, .katex-prerendered {
contain: content; contain: style;
display: inline-block; display: inline-block;
} }
+5 -5
View File
@@ -17,20 +17,20 @@ import { renderMathInElement } from '../helpers/katex-auto-render';
export default function(dom, data) { export default function(dom, data) {
let needsCSS = false; let needsCSS = false;
const article = dom.querySelector('d-article'); const body = dom.querySelector('body');
if (!article) { if (!body) {
console.warn("No d-article tag found!"); console.warn("No body tag found!");
return; return;
} }
if (data.katex && data.katex.delimiters) { if (data.katex && data.katex.delimiters) {
global.document = dom; global.document = dom;
renderMathInElement(article, data.katex); renderMathInElement(body, data.katex);
} }
// render d-math tags // render d-math tags
const mathTags = article.querySelectorAll('d-math'); const mathTags = body.querySelectorAll('d-math');
if (mathTags.length > 0) { if (mathTags.length > 0) {
needsCSS = true; needsCSS = true;
console.warn(`Prerendering ${mathTags.length} math tags...`); console.warn(`Prerendering ${mathTags.length} math tags...`);
+1 -1
View File
@@ -43,7 +43,7 @@ export default function(dom, data) {
let title = dom.querySelector('d-title'); let title = dom.querySelector('d-title');
if (!title) { if (!title) {
let title = dom.createElement('d-title'); title = dom.createElement('d-title');
body.insertBefore(title, byline); body.insertBefore(title, byline);
} }
+6 -1
View File
@@ -24,12 +24,17 @@ export default function(dom) {
if (text && acceptNode(n)) { if (text && acceptNode(n)) {
text = quotes(text); text = quotes(text);
text = punctuation(text); text = punctuation(text);
text = ligatures(text); // TODO: Add back support for ligatures once their uppercased versions don't hang Chrome search anymore
// see: https://bugs.chromium.org/p/chromium/issues/detail?id=862648
// text = ligatures(text);
n.nodeValue = text; n.nodeValue = text;
} }
} }
} }
// 2018-07-11 shancarter@ and ludwigschubert@ no longer know what this was meant to accomplish
// if it was trying to not replace text in any child nodes of those listed here,
// then it does not accomplish that.
function acceptNode(node) { function acceptNode(node) {
var parent = node.parentElement; var parent = node.parentElement;
var isMath = (parent && parent.getAttribute && parent.getAttribute('class')) ? parent.getAttribute('class').includes('katex') || parent.getAttribute('class').includes('MathJax') : false; var isMath = (parent && parent.getAttribute && parent.getAttribute('class')) ? parent.getAttribute('class').includes('katex') || parent.getAttribute('class').includes('MathJax') : false;