Compare commits

...

8 Commits

Author SHA1 Message Date
Shan Carter c8fa1f7eaa 0.0.11 2017-01-09 17:14:26 -08:00
Shan Carter 05179d887e Fix 2017-01-09 17:14:24 -08:00
Shan Carter c02748434c 0.0.10 2017-01-09 17:09:59 -08:00
Shan Carter bed9a09325 testing 2017-01-09 17:09:54 -08:00
Shan Carter 010daea5f5 0.0.9 2017-01-09 16:51:59 -08:00
Shan Carter 65ca734aa3 bug 2017-01-09 16:51:54 -08:00
Shan Carter 12d78fed92 0.0.8 2017-01-09 16:42:39 -08:00
Shan Carter 722db5947e bump 2017-01-09 16:42:35 -08:00
7 changed files with 79 additions and 50 deletions
+23 -16
View File
@@ -2,30 +2,37 @@ import bibtexParse from "bibtex-parse-js";
export default function(dom, data) {
let el = dom.querySelector('script[type="text/bibliography"]');
let citations = [];
let bibliography = {};
//TODO If we don't have a local element, make a request for the document.
if (el) {
let rawBib = el.textContent;
let bibliography = {};
bibtexParse.toJSON(rawBib).forEach(e => {
bibliography[e.citationKey] = e.entryTags;
bibliography[e.citationKey].type = e.entryType;
});
let parsed = bibtexParse.toJSON(rawBib);
console.log(parsed);
if(parsed) {
parsed.forEach(e => {
bibliography[e.citationKey] = e.entryTags;
bibliography[e.citationKey].type = e.entryType;
});
}
let citations = [];
var citeTags = [].slice.apply(dom.querySelectorAll("dt-cite"));
citeTags.forEach(el => {
let citationKeys = el.getAttribute("key").split(",");
citationKeys.forEach(key => {
if (citations.indexOf(key) == -1){
citations.push(key);
if (! (key in bibliography)){
let key = el.getAttribute("key");
if (key) {
let citationKeys = key.split(",");
citationKeys.forEach(key => {
if (citations.indexOf(key) == -1){
citations.push(key);
if (!(key in bibliography)){
console.warn("No bibliography entry found for: " + key);
}
}
}
});
});
}
});
data.bibliography = bibliography;
data.citations = citations;
}
data.bibliography = bibliography;
data.citations = citations;
}
+7 -4
View File
@@ -10,10 +10,13 @@ export default function(dom, data) {
var citeTags = [].slice.apply(dom.querySelectorAll("dt-cite"));
console.log(citeTags);
citeTags.forEach(el => {
var keys = el.getAttribute("key").split(",");
console.log(keys)
var cite_string = inline_cite_short(keys);
el.innerHTML = cite_string;
var key = el.getAttribute("key");
if (key) {
var keys = key.split(",");
console.log(keys)
var cite_string = inline_cite_short(keys);
el.innerHTML = cite_string;
}
});
let bibEl = dom.querySelector("dt-bibliography");
+7 -3
View File
@@ -80,13 +80,17 @@ export default function(dom, data) {
});
if (data.citations) {
data.citations.forEach(key =>
data.citations.forEach(key => {
let d = data.bibliography[key];
if(!d) {
console.warn("No bibliography data fround for " + key)
} else {
meta("citation_reference", citation_meta_content(data.bibliography[key]) )
);
};
});
}
}
function appendHtml(el, html) {
el.innerHTML += html;
}
+39 -24
View File
@@ -4188,32 +4188,39 @@ var bibtexParse = createCommonjsModule(function (module, exports) {
var bibliography = function(dom, data) {
var el = dom.querySelector('script[type="text/bibliography"]');
var citations = [];
var bibliography = {};
//TODO If we don't have a local element, make a request for the document.
if (el) {
var rawBib = el.textContent;
var bibliography = {};
bibtexParse.toJSON(rawBib).forEach(function (e) {
bibliography[e.citationKey] = e.entryTags;
bibliography[e.citationKey].type = e.entryType;
});
var parsed = bibtexParse.toJSON(rawBib);
console.log(parsed);
if(parsed) {
parsed.forEach(function (e) {
bibliography[e.citationKey] = e.entryTags;
bibliography[e.citationKey].type = e.entryType;
});
}
var citations = [];
var citeTags = [].slice.apply(dom.querySelectorAll("dt-cite"));
citeTags.forEach(function (el) {
var citationKeys = el.getAttribute("key").split(",");
citationKeys.forEach(function (key) {
if (citations.indexOf(key) == -1){
citations.push(key);
if (! (key in bibliography)){
var key = el.getAttribute("key");
if (key) {
var citationKeys = key.split(",");
citationKeys.forEach(function (key) {
if (citations.indexOf(key) == -1){
citations.push(key);
if (!(key in bibliography)){
console.warn("No bibliography entry found for: " + key);
}
}
}
});
});
}
});
data.bibliography = bibliography;
data.citations = citations;
}
data.bibliography = bibliography;
data.citations = citations;
};
var expandData = function(dom, data) {
@@ -4304,12 +4311,17 @@ var meta = function(dom, data) {
});
if (data.citations) {
data.citations.forEach(function (key) { return meta("citation_reference", citation_meta_content(data.bibliography[key]) ); }
);
data.citations.forEach(function (key) {
var d = data.bibliography[key];
if(!d) {
console.warn("No bibliography data fround for " + key);
} else {
meta("citation_reference", citation_meta_content(data.bibliography[key]) );
}
});
}
};
function appendHtml(el, html) {
el.innerHTML += html;
}
@@ -4383,10 +4395,13 @@ var citation = function(dom, data) {
var citeTags = [].slice.apply(dom.querySelectorAll("dt-cite"));
console.log(citeTags);
citeTags.forEach(function (el) {
var keys = el.getAttribute("key").split(",");
console.log(keys);
var cite_string = inline_cite_short(keys);
el.innerHTML = cite_string;
var key = el.getAttribute("key");
if (key) {
var keys = key.split(",");
console.log(keys);
var cite_string = inline_cite_short(keys);
el.innerHTML = cite_string;
}
});
var bibEl = dom.querySelector("dt-bibliography");
@@ -6661,7 +6676,7 @@ if(window && window.document) {
// For node
function render(dom, data) {
renderImmediately(dom);
renderOnload(dom, data);
renderOnLoad(dom, data);
}
exports.render = render;
+1 -1
View File
File diff suppressed because one or more lines are too long
+1 -1
View File
@@ -44,7 +44,7 @@ if(window && window.document) {
// For node
function render(dom, data) {
renderImmediately(dom);
renderOnload(dom, data);
renderOnLoad(dom, data);
}
export {render as render};
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "distill-template",
"version": "0.0.7",
"version": "0.0.11",
"description": "Template for creating Distill articles.",
"main": "dist/template.js",
"scripts": {