Merge branch 'master' into feat/deprecate-shelljs

# Conflicts:
#	src/file/numbering/numbering.ts
This commit is contained in:
Dolan Miu
2023-06-01 02:08:08 +01:00
11 changed files with 39 additions and 61 deletions

View File

@ -2,7 +2,7 @@
// https://stackoverflow.com/questions/58622437/purpose-of-abstractnum-and-numberinginstance
import { AlignmentType } from "@file/paragraph";
import { IContext, IXmlableObject, XmlComponent } from "@file/xml-components";
import { abstractNumUniqueNumericId, concreteNumUniqueNumericId, convertInchesToTwip } from "@util/convenience-functions";
import { abstractNumUniqueNumericIdGen, concreteNumUniqueNumericIdGen, convertInchesToTwip } from "@util/convenience-functions";
import { DocumentAttributes } from "../document/document-attributes";
import { AbstractNumbering } from "./abstract-numbering";
@ -31,6 +31,8 @@ export class Numbering extends XmlComponent {
private readonly concreteNumberingMap = new Map<string, ConcreteNumbering>();
// eslint-disable-next-line @typescript-eslint/no-explicit-any
private readonly referenceConfigMap = new Map<string, Record<string, any>>();
private readonly abstractNumUniqueNumericId = abstractNumUniqueNumericIdGen();
private readonly concreteNumUniqueNumericId = concreteNumUniqueNumericIdGen();
public constructor(options: INumberingOptions) {
super("w:numbering");
@ -56,7 +58,7 @@ export class Numbering extends XmlComponent {
}),
);
const abstractNumbering = new AbstractNumbering(abstractNumUniqueNumericId(), [
const abstractNumbering = new AbstractNumbering(this.abstractNumUniqueNumericId(), [
{
level: 0,
format: LevelFormat.BULLET,
@ -177,7 +179,7 @@ export class Numbering extends XmlComponent {
this.abstractNumberingMap.set("default-bullet-numbering", abstractNumbering);
for (const con of options.config) {
this.abstractNumberingMap.set(con.reference, new AbstractNumbering(abstractNumUniqueNumericId(), con.levels));
this.abstractNumberingMap.set(con.reference, new AbstractNumbering(this.abstractNumUniqueNumericId(), con.levels));
this.referenceConfigMap.set(con.reference, con.levels);
}
}
@ -210,7 +212,7 @@ export class Numbering extends XmlComponent {
const firstLevelStartNumber = referenceConfigLevels && referenceConfigLevels[0].start;
const concreteNumberingSettings = {
numId: concreteNumUniqueNumericId(),
numId: this.concreteNumUniqueNumericId(),
abstractNumId: abstractNumbering.id,
reference,
instance,