UNPKG

@rr0/cms

Version:

RR0 Content Management System (CMS)

21 lines (20 loc) 626 B
export class TimeReplacerFactory { constructor(replacer, timeUrlBuilder) { this.replacer = replacer; this.timeUrlBuilder = timeUrlBuilder; } /** * Creates a contextual replacer for time tags. * * @param context */ async create(context) { return { replace: (original) => { const isTimeFile = this.timeUrlBuilder.isTimeFile(context.file.name); const replacementContext = isTimeFile ? context.clone() : context; return this.replacer.replacement(replacementContext, original); } }; } }