@rr0/cms
Version:
RR0 Content Management System (CMS)
24 lines (23 loc) • 739 B
JavaScript
import { ChronologyReplacer } from "./ChronologyReplacer.js";
export class ChronologyReplacerFactory {
constructor(timeUrlBuilder, datasources, caseRenderer) {
this.timeUrlBuilder = timeUrlBuilder;
this.replacer = new ChronologyReplacer(datasources, caseRenderer);
}
/**
* Creates a contextual replacer for time tags.
*
* @param context
*/
async create(context) {
return {
replace: async (ul) => {
const isTimeFile = this.timeUrlBuilder.isTimeFile(context.file.name);
if (isTimeFile) {
ul = await this.replacer.replacement(context, ul);
}
return ul;
}
};
}
}