From fe7b4748fccc545d526905085ca541db8fe621e5 Mon Sep 17 00:00:00 2001 From: Ludwig Schubert Date: Tue, 10 Oct 2017 12:40:07 -0700 Subject: [PATCH] Move `collect_citations` to helper file --- src/components/d-cite.js | 12 ------------ src/controller.js | 6 +++--- src/extractors/citations.js | 4 ++-- src/helpers/citation.js | 12 ++++++++++++ 4 files changed, 17 insertions(+), 17 deletions(-) diff --git a/src/components/d-cite.js b/src/components/d-cite.js index 61a1787..7f4b299 100644 --- a/src/components/d-cite.js +++ b/src/components/d-cite.js @@ -61,18 +61,6 @@ figcaption .citation-number { `); -export function collectCitations(dom=document) { - const citations = new Set(); - const citeTags = dom.querySelectorAll('d-cite'); - for (const tag of citeTags) { - const keys = tag.getAttribute('key').split(','); - for (const key of keys) { - citations.add(key); - } - } - return [...citations]; -} - export class Cite extends T(HTMLElement) { /* Lifecycle */ diff --git a/src/controller.js b/src/controller.js index a7c70f0..20ddee0 100644 --- a/src/controller.js +++ b/src/controller.js @@ -1,6 +1,6 @@ import { FrontMatter } from './front-matter'; import { DMath } from './components/d-math'; -import { collectCitations } from './components/d-cite'; +import { collect_citations } from './helpers/citation.js'; import { parseFrontmatter } from './components/d-front-matter'; import optionalComponents from './transforms/optional-components'; @@ -42,7 +42,7 @@ export const Controller = { // const [citeTag, keys] = event.detail; // update citations - frontMatter.citations = collectCitations(); + frontMatter.citations = collect_citations(); frontMatter.citationsCollected = true; for (const waitingCallback of Controller.waitingOn.citations.slice()) { waitingCallback(); @@ -143,7 +143,7 @@ export const Controller = { Controller.listeners.onFrontMatterChanged({detail: data}); // console.debug('Resolving "citations" dependency due to initial DOM load.'); - frontMatter.citations = collectCitations(); + frontMatter.citations = collect_citations(); frontMatter.citationsCollected = true; for (const waitingCallback of Controller.waitingOn.citations.slice()) { waitingCallback(); diff --git a/src/extractors/citations.js b/src/extractors/citations.js index 41f20fe..ce2a504 100644 --- a/src/extractors/citations.js +++ b/src/extractors/citations.js @@ -1,5 +1,5 @@ -import { collectCitations } from '../components/d-cite'; +import { collect_citations } from '../helpers/citation.js'; export default function(dom, data) { - data.citations = collectCitations(dom); + data.citations = collect_citations(dom); } diff --git a/src/helpers/citation.js b/src/helpers/citation.js index 8062b6f..bedbc76 100644 --- a/src/helpers/citation.js +++ b/src/helpers/citation.js @@ -1,3 +1,15 @@ +export function collect_citations(dom=document) { + const citations = new Set(); + const citeTags = dom.querySelectorAll('d-cite'); + for (const tag of citeTags) { + const keys = tag.getAttribute('key').split(','); + for (const key of keys) { + citations.add(key); + } + } + return [...citations]; +} + export function inline_cite_short(keys){ function cite_string(key){ if (key in data.bibliography){