added style components
This commit is contained in:
16
ts/docx/xml-components/base-attributes.ts
Normal file
16
ts/docx/xml-components/base-attributes.ts
Normal file
@ -0,0 +1,16 @@
|
||||
import {XmlComponent} from "./";
|
||||
|
||||
export abstract class BaseAttributes implements XmlComponent {
|
||||
private _attr: Object;
|
||||
|
||||
xmlKeys = {};
|
||||
|
||||
constructor(xmlKeys: Object, properties?: any) {
|
||||
this._attr = properties
|
||||
|
||||
if (!properties) {
|
||||
this._attr = {};
|
||||
}
|
||||
this._attr["xmlKeys"] = this.xmlKeys;
|
||||
}
|
||||
}
|
@ -3,7 +3,7 @@ import * as fs from "fs";
|
||||
import * as xml from "xml";
|
||||
import {Formatter} from "../formatter";
|
||||
import {Document} from "../../docx";
|
||||
import {Style} from "../../style";
|
||||
import {Styles} from "../../styles";
|
||||
import {Properties} from "../../properties";
|
||||
var appRoot = require('app-root-path');
|
||||
|
||||
@ -11,7 +11,7 @@ export abstract class Packer {
|
||||
protected archive: any;
|
||||
private formatter: Formatter;
|
||||
protected document: Document;
|
||||
private style: Style;
|
||||
private style: Styles;
|
||||
private properties: Properties;
|
||||
|
||||
constructor(document: Document, style: any, properties: Properties) {
|
||||
|
@ -5,7 +5,7 @@ import {LatentStyles} from "./latent-styles";
|
||||
import {LatentStyleException} from "./latent-styles/exceptions";
|
||||
import {LatentStyleExceptionAttributes} from "./latent-styles/exceptions/attributes";
|
||||
|
||||
export class Style implements XmlComponent {
|
||||
export class Styles implements XmlComponent {
|
||||
private styles: Array<XmlComponent>;
|
||||
|
||||
xmlKeys = {
|
||||
|
28
ts/styles/style/attributes.ts
Normal file
28
ts/styles/style/attributes.ts
Normal file
@ -0,0 +1,28 @@
|
||||
import {XmlComponent} from "../../docx/xml-components";
|
||||
|
||||
interface StyleAttributesProperties {
|
||||
type?: string;
|
||||
styleId?: string;
|
||||
default?: string;
|
||||
customStyle?: string;
|
||||
}
|
||||
|
||||
export class StyleAttributes implements XmlComponent {
|
||||
private _attr: Object;
|
||||
|
||||
xmlKeys = {
|
||||
type: "w:type",
|
||||
styleId: "w:styleId",
|
||||
default: "w:default",
|
||||
customStyle: "w:customStyle"
|
||||
};
|
||||
|
||||
constructor(properties?: StyleAttributesProperties) {
|
||||
this._attr = properties
|
||||
|
||||
if (!properties) {
|
||||
this._attr = {};
|
||||
}
|
||||
this._attr["xmlKeys"] = this.xmlKeys;
|
||||
}
|
||||
}
|
0
ts/styles/style/components.ts
Normal file
0
ts/styles/style/components.ts
Normal file
19
ts/styles/style/index.ts
Normal file
19
ts/styles/style/index.ts
Normal file
@ -0,0 +1,19 @@
|
||||
import {XmlComponent} from "../../docx/xml-components";
|
||||
import {StyleAttributes} from "./attributes";
|
||||
|
||||
export class Style implements XmlComponent {
|
||||
private style: Array<XmlComponent>;
|
||||
|
||||
xmlKeys = {
|
||||
style: "w:style"
|
||||
}
|
||||
|
||||
constructor(attributes: StyleAttributes) {
|
||||
this.style = new Array<XmlComponent>();
|
||||
this.style.push(attributes);
|
||||
}
|
||||
|
||||
push(styleSegment: XmlComponent): void {
|
||||
this.style.push(styleSegment);
|
||||
}
|
||||
}
|
@ -7,10 +7,10 @@ import {LocalPacker} from "../export/packer/local";
|
||||
import {assert} from "chai";
|
||||
import {Document} from "../docx/document"
|
||||
import {Properties} from "../properties"
|
||||
import {DefaultStyle} from "../style/default"
|
||||
import {DefaultStyle} from "../styles/sample"
|
||||
import {Paragraph} from "../docx/paragraph"
|
||||
|
||||
describe.only("Packer", () => {
|
||||
describe("Packer", () => {
|
||||
var packer: LocalPacker;
|
||||
|
||||
beforeEach(() => {
|
||||
|
Reference in New Issue
Block a user