2022-06-26 23:26:42 +01:00
|
|
|
import { ConcreteNumbering } from "@file/numbering";
|
2019-11-08 03:11:19 +00:00
|
|
|
|
|
|
|
export class NumberingReplacer {
|
2022-09-15 20:00:50 +01:00
|
|
|
public replace(xmlData: string, concreteNumberings: readonly ConcreteNumbering[]): string {
|
2019-11-08 03:11:19 +00:00
|
|
|
let currentXmlData = xmlData;
|
|
|
|
|
|
|
|
for (const concreteNumbering of concreteNumberings) {
|
2021-03-12 03:58:05 +00:00
|
|
|
currentXmlData = currentXmlData.replace(
|
|
|
|
new RegExp(`{${concreteNumbering.reference}-${concreteNumbering.instance}}`, "g"),
|
|
|
|
concreteNumbering.numId.toString(),
|
|
|
|
);
|
2019-11-08 03:11:19 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
return currentXmlData;
|
|
|
|
}
|
|
|
|
}
|