Turn math component into array

This commit is contained in:
Dolan Miu
2020-10-13 02:06:27 +01:00
parent e36e9e1cf4
commit 5be195fd91
39 changed files with 208 additions and 157 deletions

View File

@ -17,7 +17,7 @@ describe("MathDegree", () => {
});
it("should create a MathDegree with correct root key with child", () => {
const mathDegree = new MathDegree(new MathRun("2"));
const mathDegree = new MathDegree([new MathRun("2")]);
const tree = new Formatter().format(mathDegree);
expect(tree).to.deep.equal({

View File

@ -3,11 +3,13 @@ import { XmlComponent } from "file/xml-components";
import { MathComponent } from "../math-component";
export class MathDegree extends XmlComponent {
constructor(child?: MathComponent) {
constructor(children?: MathComponent[]) {
super("m:deg");
if (!!child) {
this.root.push(child);
if (!!children) {
for (const child of children) {
this.root.push(child);
}
}
}
}

View File

@ -9,8 +9,8 @@ describe("MathRadical", () => {
describe("#constructor()", () => {
it("should create a MathRadical with correct root key", () => {
const mathRadical = new MathRadical({
child: new MathRun("e"),
degree: new MathRun("2"),
children: [new MathRun("e")],
degree: [new MathRun("2")],
});
const tree = new Formatter().format(mathRadical);

View File

@ -7,8 +7,8 @@ import { MathDegree } from "./math-degree";
import { MathRadicalProperties } from "./math-radical-properties";
export interface IMathRadicalOptions {
readonly child: MathComponent;
readonly degree?: MathComponent;
readonly children: MathComponent[];
readonly degree?: MathComponent[];
}
export class MathRadical extends XmlComponent {
@ -17,6 +17,6 @@ export class MathRadical extends XmlComponent {
this.root.push(new MathRadicalProperties(!!options.degree));
this.root.push(new MathDegree(options.degree));
this.root.push(new MathBase(options.child));
this.root.push(new MathBase(options.children));
}
}