elements need to be inside runs

This commit is contained in:
Sergio Mendonça
2018-09-04 18:22:08 -03:00
parent 7926f6c189
commit aedfca377f
2 changed files with 49 additions and 29 deletions

View File

@ -8,6 +8,11 @@ const DEFAULT_TOC = {
{ {
"w:pPr": [], "w:pPr": [],
}, },
{
"w:r": [
{
"w:rPr": [],
},
{ {
"w:fldChar": [ "w:fldChar": [
{ {
@ -17,15 +22,6 @@ const DEFAULT_TOC = {
}, },
], ],
}, },
{
"w:fldChar": [
{
_attr: {
"w:fldCharType": "separate",
},
},
],
},
{ {
"w:instrText": [ "w:instrText": [
{ {
@ -36,6 +32,22 @@ const DEFAULT_TOC = {
'TOC \\n "1-6"', 'TOC \\n "1-6"',
], ],
}, },
{
"w:fldChar": [
{
_attr: {
"w:fldCharType": "separate",
},
},
],
},
],
},
{
"w:r": [
{
"w:rPr": [],
},
{ {
"w:fldChar": [ "w:fldChar": [
{ {
@ -46,6 +58,8 @@ const DEFAULT_TOC = {
], ],
}, },
], ],
},
],
}; };
describe("Table of Contents", () => { describe("Table of Contents", () => {

View File

@ -1,5 +1,6 @@
// import { TableOfContentsProperties } from "./properties"; // import { TableOfContentsProperties } from "./properties";
import { Paragraph } from "file/paragraph"; import { Paragraph } from "file/paragraph";
import { Run } from "file/paragraph/run";
import { Begin, End, Separate } from "file/paragraph/run/field"; import { Begin, End, Separate } from "file/paragraph/run/field";
import { TableOfContentsInstruction } from "./instruction"; import { TableOfContentsInstruction } from "./instruction";
@ -9,9 +10,14 @@ export class TableOfContents extends Paragraph {
constructor(/*tocProperties?: TableOfContentsProperties*/) { constructor(/*tocProperties?: TableOfContentsProperties*/) {
super(); super();
// this.tocProperties = tocProperties || new TableOfContentsProperties(); // this.tocProperties = tocProperties || new TableOfContentsProperties();
this.root.push(new Begin()); const firstRun = new Run();
this.root.push(new Separate()); firstRun.addChildElement(new Begin());
this.root.push(new TableOfContentsInstruction()); firstRun.addChildElement(new TableOfContentsInstruction());
this.root.push(new End()); firstRun.addChildElement(new Separate());
this.root.push(firstRun);
const secondRun = new Run();
secondRun.addChildElement(new End());
this.root.push(secondRun);
} }
} }