* Documentation and Refactoring * Documentation and Refactoring * Fix lint issues * Convert components to Builder style --------- Co-authored-by: Dolan Miu <dmiu@bloomberg.net>
23 lines
780 B
TypeScript
23 lines
780 B
TypeScript
// http://www.datypic.com/sc/ooxml/e-m_rad-1.html
|
|
import { XmlComponent } from "@file/xml-components";
|
|
|
|
import { MathComponent } from "../math-component";
|
|
import { createMathBase } from "../n-ary";
|
|
import { MathDegree } from "./math-degree";
|
|
import { MathRadicalProperties } from "./math-radical-properties";
|
|
|
|
export type IMathRadicalOptions = {
|
|
readonly children: readonly MathComponent[];
|
|
readonly degree?: readonly MathComponent[];
|
|
};
|
|
|
|
export class MathRadical extends XmlComponent {
|
|
public constructor(options: IMathRadicalOptions) {
|
|
super("m:rad");
|
|
|
|
this.root.push(new MathRadicalProperties(!!options.degree));
|
|
this.root.push(new MathDegree(options.degree));
|
|
this.root.push(createMathBase({ children: options.children }));
|
|
}
|
|
}
|