diff --git a/src/file/drawing/anchor/anchor-attributes.ts b/src/file/drawing/anchor/anchor-attributes.ts index abe8aac5d7..cfd8ad3144 100644 --- a/src/file/drawing/anchor/anchor-attributes.ts +++ b/src/file/drawing/anchor/anchor-attributes.ts @@ -1,7 +1,7 @@ import { XmlAttributeComponent } from "file/xml-components"; -import { Distance } from "../drawing"; +import { IDistance } from "../drawing"; -export interface IAnchorAttributes extends Distance { +export interface IAnchorAttributes extends IDistance { allowOverlap?: "0" | "1"; behindDoc?: "0" | "1"; layoutInCell?: "0" | "1"; diff --git a/src/file/drawing/anchor/anchor.spec.ts b/src/file/drawing/anchor/anchor.spec.ts index a071377fab..58adefd174 100644 --- a/src/file/drawing/anchor/anchor.spec.ts +++ b/src/file/drawing/anchor/anchor.spec.ts @@ -1,10 +1,10 @@ import { assert } from "chai"; import { Utility } from "../../../tests/utility"; -import { DrawingOptions, TextWrapStyle } from ".././"; +import { IDrawingOptions, TextWrapStyle } from ".././"; import { Anchor } from "./"; -function createDrawing(drawingOptions: DrawingOptions) { +function createDrawing(drawingOptions: IDrawingOptions): Anchor { return new Anchor( 1, { diff --git a/src/file/drawing/anchor/anchor.ts b/src/file/drawing/anchor/anchor.ts index ad7a266aa2..7dbdfca0bc 100644 --- a/src/file/drawing/anchor/anchor.ts +++ b/src/file/drawing/anchor/anchor.ts @@ -1,24 +1,24 @@ // http://officeopenxml.com/drwPicFloating.php import { IMediaDataDimensions } from "file/media"; import { XmlComponent } from "file/xml-components"; +import { IDrawingOptions } from "../drawing"; +import { + HorizontalPosition, + HorizontalPositionRelativeFrom, + IFloating, + SimplePos, + VerticalPosition, + VerticalPositionRelativeFrom, +} from "../floating"; +import { Graphic } from "../inline/graphic"; +import { TextWrapStyle, WrapNone, WrapSquare, WrapTight, WrapTopAndBottom } from "../text-wrap"; import { DocProperties } from "./../doc-properties/doc-properties"; import { EffectExtent } from "./../effect-extent/effect-extent"; import { Extent } from "./../extent/extent"; -import { Graphic } from "./../graphic"; import { GraphicFrameProperties } from "./../graphic-frame/graphic-frame-properties"; import { AnchorAttributes } from "./anchor-attributes"; -import { DrawingOptions } from "../drawing"; -import { - SimplePos, - HorizontalPosition, - VerticalPosition, - Floating, - VerticalPositionRelativeFrom, - HorizontalPositionRelativeFrom, -} from "../floating"; -import { WrapNone, TextWrapStyle, WrapSquare, WrapTight, WrapTopAndBottom } from "../text-wrap"; -const defaultOptions: Floating = { +const defaultOptions: IFloating = { allowOverlap: true, behindDocument: false, lockAnchor: false, @@ -34,7 +34,7 @@ const defaultOptions: Floating = { }; export class Anchor extends XmlComponent { - constructor(referenceId: number, dimensions: IMediaDataDimensions, drawingOptions: DrawingOptions) { + constructor(referenceId: number, dimensions: IMediaDataDimensions, drawingOptions: IDrawingOptions) { super("wp:anchor"); const floating = { diff --git a/src/file/drawing/drawing.spec.ts b/src/file/drawing/drawing.spec.ts index 1e70aecda5..cf3f926315 100644 --- a/src/file/drawing/drawing.spec.ts +++ b/src/file/drawing/drawing.spec.ts @@ -2,9 +2,9 @@ import { assert } from "chai"; import * as fs from "fs"; import { Utility } from "../../tests/utility"; -import { Drawing, DrawingOptions, PlacementPosition } from "./"; +import { Drawing, IDrawingOptions, PlacementPosition } from "./"; -function createDrawing(drawingOptions?: DrawingOptions) { +function createDrawing(drawingOptions?: IDrawingOptions): Drawing { const path = "./demo/images/image1.jpeg"; return new Drawing( { diff --git a/src/file/drawing/drawing.ts b/src/file/drawing/drawing.ts index 4646d0cc87..4c3db93b3a 100644 --- a/src/file/drawing/drawing.ts +++ b/src/file/drawing/drawing.ts @@ -1,36 +1,36 @@ import { IMediaData } from "file/media"; import { XmlComponent } from "file/xml-components"; -import { Inline } from "./inline"; import { Anchor } from "./anchor"; -import { TextWrapping } from "./text-wrap"; -import { Floating } from "./floating"; +import { IFloating } from "./floating"; +import { Inline } from "./inline"; +import { ITextWrapping } from "./text-wrap"; export enum PlacementPosition { INLINE, FLOATING, } -export interface Distance { +export interface IDistance { distT?: number; distB?: number; distL?: number; distR?: number; } -export interface DrawingOptions { +export interface IDrawingOptions { position?: PlacementPosition; - textWrapping?: TextWrapping; - floating?: Floating; + textWrapping?: ITextWrapping; + floating?: IFloating; } -const defaultDrawingOptions: DrawingOptions = { +const defaultDrawingOptions: IDrawingOptions = { position: PlacementPosition.INLINE, }; export class Drawing extends XmlComponent { private inline: Inline; - constructor(imageData: IMediaData, drawingOptions?: DrawingOptions) { + constructor(imageData: IMediaData, drawingOptions?: IDrawingOptions) { super("w:drawing"); if (imageData === undefined) { @@ -42,7 +42,6 @@ export class Drawing extends XmlComponent { ...drawingOptions, }; - if (mergedOptions.position === PlacementPosition.INLINE) { this.inline = new Inline(imageData.referenceId, imageData.dimensions); this.root.push(this.inline); diff --git a/src/file/drawing/floating/align.spec.ts b/src/file/drawing/floating/align.spec.ts index 119366d30f..5ec77d6fd0 100644 --- a/src/file/drawing/floating/align.spec.ts +++ b/src/file/drawing/floating/align.spec.ts @@ -1,8 +1,8 @@ import { assert } from "chai"; -import { Align } from "./align"; -import { Utility } from "../../../tests/utility"; import { VerticalPositionAlign } from "."; +import { Utility } from "../../../tests/utility"; +import { Align } from "./align"; describe("Align", () => { describe("#constructor()", () => { diff --git a/src/file/drawing/floating/floating-position.ts b/src/file/drawing/floating/floating-position.ts index f9c4547776..7039846bc7 100644 --- a/src/file/drawing/floating/floating-position.ts +++ b/src/file/drawing/floating/floating-position.ts @@ -38,21 +38,21 @@ export enum VerticalPositionAlign { TOP = "top", } -export interface HorizontalPositionOptions { +export interface IHorizontalPositionOptions { relative: HorizontalPositionRelativeFrom; align?: HorizontalPositionAlign; offset?: number; } -export interface VerticalPositionOptions { +export interface IVerticalPositionOptions { relative: VerticalPositionRelativeFrom; align?: VerticalPositionAlign; offset?: number; } -export interface Floating { - horizontalPosition: HorizontalPositionOptions; - verticalPosition: VerticalPositionOptions; +export interface IFloating { + horizontalPosition: IHorizontalPositionOptions; + verticalPosition: IVerticalPositionOptions; allowOverlap?: boolean; lockAnchor?: boolean; behindDocument?: boolean; diff --git a/src/file/drawing/floating/horizontal-position.spec.ts b/src/file/drawing/floating/horizontal-position.spec.ts index 69415685e1..1b139b47be 100644 --- a/src/file/drawing/floating/horizontal-position.spec.ts +++ b/src/file/drawing/floating/horizontal-position.spec.ts @@ -1,8 +1,8 @@ import { assert } from "chai"; -import { HorizontalPosition } from "./horizontal-position"; +import { HorizontalPositionAlign, HorizontalPositionRelativeFrom } from "."; import { Utility } from "../../../tests/utility"; -import { HorizontalPositionRelativeFrom, HorizontalPositionAlign } from "."; +import { HorizontalPosition } from "./horizontal-position"; describe("HorizontalPosition", () => { describe("#constructor()", () => { diff --git a/src/file/drawing/floating/horizontal-position.ts b/src/file/drawing/floating/horizontal-position.ts index 5b0a0e68ca..f0725aa857 100644 --- a/src/file/drawing/floating/horizontal-position.ts +++ b/src/file/drawing/floating/horizontal-position.ts @@ -1,7 +1,7 @@ // http://officeopenxml.com/drwPicFloating-position.php -import { XmlComponent, XmlAttributeComponent } from "file/xml-components"; -import { HorizontalPositionRelativeFrom, HorizontalPositionOptions } from "./floating-position"; +import { XmlAttributeComponent, XmlComponent } from "file/xml-components"; import { Align } from "./align"; +import { HorizontalPositionRelativeFrom, IHorizontalPositionOptions } from "./floating-position"; import { PositionOffset } from "./position-offset"; interface IHorizontalPositionAttributes { @@ -15,7 +15,7 @@ class HorizontalPositionAttributes extends XmlAttributeComponent { describe("#constructor()", () => { diff --git a/src/file/drawing/floating/simple-pos.ts b/src/file/drawing/floating/simple-pos.ts index b5e8df70d3..6330f6660a 100644 --- a/src/file/drawing/floating/simple-pos.ts +++ b/src/file/drawing/floating/simple-pos.ts @@ -1,5 +1,5 @@ // http://officeopenxml.com/drwPicFloating-position.php -import { XmlComponent, XmlAttributeComponent } from "file/xml-components"; +import { XmlAttributeComponent, XmlComponent } from "file/xml-components"; interface ISimplePosAttributes { x: number; diff --git a/src/file/drawing/floating/vertical-position.spec.ts b/src/file/drawing/floating/vertical-position.spec.ts index 13e1ae2a4c..a9d7ed65f8 100644 --- a/src/file/drawing/floating/vertical-position.spec.ts +++ b/src/file/drawing/floating/vertical-position.spec.ts @@ -1,8 +1,8 @@ import { assert } from "chai"; -import { VerticalPosition } from "./vertical-position"; +import { VerticalPositionAlign, VerticalPositionRelativeFrom } from "."; import { Utility } from "../../../tests/utility"; -import { VerticalPositionRelativeFrom, VerticalPositionAlign } from "."; +import { VerticalPosition } from "./vertical-position"; describe("VerticalPosition", () => { describe("#constructor()", () => { diff --git a/src/file/drawing/floating/vertical-position.ts b/src/file/drawing/floating/vertical-position.ts index 4c6826221d..10b6d6028f 100644 --- a/src/file/drawing/floating/vertical-position.ts +++ b/src/file/drawing/floating/vertical-position.ts @@ -1,7 +1,7 @@ // http://officeopenxml.com/drwPicFloating-position.php -import { XmlComponent, XmlAttributeComponent } from "file/xml-components"; -import { VerticalPositionRelativeFrom, VerticalPositionOptions } from "./floating-position"; +import { XmlAttributeComponent, XmlComponent } from "file/xml-components"; import { Align } from "./align"; +import { IVerticalPositionOptions, VerticalPositionRelativeFrom } from "./floating-position"; import { PositionOffset } from "./position-offset"; interface IVerticalPositionAttributes { @@ -15,7 +15,7 @@ class VerticalPositionAttributes extends XmlAttributeComponent { protected xmlKeys = { diff --git a/src/file/drawing/inline/inline.ts b/src/file/drawing/inline/inline.ts index a40aed25f2..6e5be2ba13 100644 --- a/src/file/drawing/inline/inline.ts +++ b/src/file/drawing/inline/inline.ts @@ -4,8 +4,8 @@ import { XmlComponent } from "file/xml-components"; import { DocProperties } from "./../doc-properties/doc-properties"; import { EffectExtent } from "./../effect-extent/effect-extent"; import { Extent } from "./../extent/extent"; -import { Graphic } from "./../graphic"; import { GraphicFrameProperties } from "./../graphic-frame/graphic-frame-properties"; +import { Graphic } from "./../inline/graphic"; import { InlineAttributes } from "./inline-attributes"; export class Inline extends XmlComponent { diff --git a/src/file/drawing/text-wrap/text-wrapping.ts b/src/file/drawing/text-wrap/text-wrapping.ts index 4894ca76da..7fc14a52fd 100644 --- a/src/file/drawing/text-wrap/text-wrapping.ts +++ b/src/file/drawing/text-wrap/text-wrapping.ts @@ -1,5 +1,5 @@ // http://officeopenxml.com/drwPicFloating-textWrap.php -import { Distance } from "../drawing"; +import { IDistance } from "../drawing"; export enum TextWrapStyle { NONE, @@ -15,8 +15,8 @@ export enum WrapTextOption { LARGEST = "largest", } -export interface TextWrapping { +export interface ITextWrapping { textWrapStyle: TextWrapStyle; wrapTextOption?: WrapTextOption; - distanceFromText?: Distance; + distanceFromText?: IDistance; } diff --git a/src/file/drawing/text-wrap/wrap-square.ts b/src/file/drawing/text-wrap/wrap-square.ts index 5f8b7aef57..08ed108209 100644 --- a/src/file/drawing/text-wrap/wrap-square.ts +++ b/src/file/drawing/text-wrap/wrap-square.ts @@ -1,9 +1,9 @@ // http://officeopenxml.com/drwPicFloating-textWrap.php -import { XmlComponent, XmlAttributeComponent } from "file/xml-components"; -import { TextWrapping, WrapTextOption } from "."; -import { Distance } from "../drawing"; +import { XmlAttributeComponent, XmlComponent } from "file/xml-components"; +import { ITextWrapping, WrapTextOption } from "."; +import { IDistance } from "../drawing"; -interface IWrapSquareAttributes extends Distance { +interface IWrapSquareAttributes extends IDistance { wrapText?: WrapTextOption; } @@ -18,7 +18,7 @@ class WrapSquareAttributes extends XmlAttributeComponent } export class WrapSquare extends XmlComponent { - constructor(textWrapping: TextWrapping) { + constructor(textWrapping: ITextWrapping) { super("wp:wrapSquare"); this.root.push( diff --git a/src/file/drawing/text-wrap/wrap-tight.ts b/src/file/drawing/text-wrap/wrap-tight.ts index 0703ebaaff..cda9a20194 100644 --- a/src/file/drawing/text-wrap/wrap-tight.ts +++ b/src/file/drawing/text-wrap/wrap-tight.ts @@ -1,6 +1,6 @@ // http://officeopenxml.com/drwPicFloating-textWrap.php -import { XmlComponent, XmlAttributeComponent } from "file/xml-components"; -import { Distance } from "../drawing"; +import { XmlAttributeComponent, XmlComponent } from "file/xml-components"; +import { IDistance } from "../drawing"; interface IWrapTightAttributes { distT?: number; @@ -15,7 +15,7 @@ class WrapTightAttributes extends XmlAttributeComponent { } export class WrapTight extends XmlComponent { - constructor(distanceFromText?: Distance) { + constructor(distanceFromText?: IDistance) { super("wp:wrapTight"); distanceFromText = distanceFromText || { diff --git a/src/file/drawing/text-wrap/wrap-top-and-bottom.ts b/src/file/drawing/text-wrap/wrap-top-and-bottom.ts index a161058783..bf6a5c3cae 100644 --- a/src/file/drawing/text-wrap/wrap-top-and-bottom.ts +++ b/src/file/drawing/text-wrap/wrap-top-and-bottom.ts @@ -1,6 +1,6 @@ // http://officeopenxml.com/drwPicFloating-textWrap.php -import { XmlComponent, XmlAttributeComponent } from "file/xml-components"; -import { Distance } from "../drawing"; +import { XmlAttributeComponent, XmlComponent } from "file/xml-components"; +import { IDistance } from "../drawing"; interface IWrapTopAndBottomAttributes { distT?: number; @@ -15,7 +15,7 @@ class WrapTopAndBottomAttributes extends XmlAttributeComponent