2020-10-10 13:41:26 +01:00
|
|
|
// http://www.datypic.com/sc/ooxml/e-m_rad-1.html
|
2022-06-26 23:26:42 +01:00
|
|
|
import { XmlComponent } from "@file/xml-components";
|
2020-10-10 13:41:26 +01:00
|
|
|
|
|
|
|
import { MathComponent } from "../math-component";
|
2025-04-14 16:43:15 +05:30
|
|
|
import { createMathBase } from "../n-ary";
|
2020-10-10 13:41:26 +01:00
|
|
|
import { MathDegree } from "./math-degree";
|
|
|
|
import { MathRadicalProperties } from "./math-radical-properties";
|
|
|
|
|
2024-10-21 03:57:15 +01:00
|
|
|
export type IMathRadicalOptions = {
|
2022-09-15 20:00:50 +01:00
|
|
|
readonly children: readonly MathComponent[];
|
|
|
|
readonly degree?: readonly MathComponent[];
|
2024-10-21 03:57:15 +01:00
|
|
|
};
|
2020-10-10 13:41:26 +01:00
|
|
|
|
|
|
|
export class MathRadical extends XmlComponent {
|
2022-08-31 07:52:27 +01:00
|
|
|
public constructor(options: IMathRadicalOptions) {
|
2020-10-10 13:41:26 +01:00
|
|
|
super("m:rad");
|
|
|
|
|
|
|
|
this.root.push(new MathRadicalProperties(!!options.degree));
|
|
|
|
this.root.push(new MathDegree(options.degree));
|
2025-04-14 16:43:15 +05:30
|
|
|
this.root.push(createMathBase({ children: options.children }));
|
2020-10-10 13:41:26 +01:00
|
|
|
}
|
|
|
|
}
|