This repository was archived by the owner on May 5, 2021. It is now read-only.
File tree Expand file tree Collapse file tree 6 files changed +13
-35
lines changed
Expand file tree Collapse file tree 6 files changed +13
-35
lines changed Original file line number Diff line number Diff line change @@ -13,17 +13,11 @@ interface ModifierConstructor {
1313export interface Modifier {
1414 constructor : ModifierConstructor & this;
1515}
16- export interface ModifierPreserve {
17- after : boolean ; // True to preserve modifier after the node that holds it.
18- paragraphBreak : boolean ; // True to preserve modifier after a paragraph break.
19- lineBreak : boolean ; // True to preserve modifier after a line break.
20- }
2116export class Modifier extends VersionableObject {
22- preserve : ModifierPreserve = new VersionableObject ( {
23- after : true ,
24- paragraphBreak : true ,
25- lineBreak : true ,
26- } ) as ModifierPreserve ;
17+ preserveAfterNode = true ; // True to preserve modifier after the node that holds it.
18+ preserveAfterParagraphBreak = true ; // True to preserve modifier after a paragraph break.
19+ preserveAfterLineBreak = true ; // True to preserve modifier after a line break.
20+
2721 get name ( ) : string {
2822 return '' ;
2923 }
Original file line number Diff line number Diff line change 11import { Format } from '../../core/src/Format' ;
2- import { VersionableObject } from '../../core/src/Memory/VersionableObject' ;
3- import { ModifierPreserve } from '../../core/src/Modifier' ;
42
53export class ButtonFormat extends Format {
6- preserve = new VersionableObject ( {
7- after : true ,
8- paragraphBreak : false ,
9- lineBreak : false ,
10- } ) as ModifierPreserve ;
4+ preserveAfterParagraphBreak = false ;
5+ preserveAfterLineBreak = false ;
116 constructor ( ) {
127 super ( 'BUTTON' ) ;
138 }
Original file line number Diff line number Diff line change @@ -55,11 +55,11 @@ export class Char<T extends JWPluginConfig = JWPluginConfig> extends JWPlugin<T>
5555 const isAfterLineBreak = previousSibling instanceof LineBreakNode ;
5656 const preservedModifiers = modifiers . filter ( mod => {
5757 if ( isAfterLineBreak ) {
58- return mod . preserve . lineBreak ;
58+ return mod . preserveAfterLineBreak ;
5959 } else if ( previousSibling ) {
60- return mod . preserve . after ;
60+ return mod . preserveAfterNode ;
6161 } else {
62- return mod . preserve . paragraphBreak ;
62+ return mod . preserveAfterParagraphBreak ;
6363 }
6464 } ) ;
6565 if ( preservedModifiers . length ) {
Original file line number Diff line number Diff line change 11import { Format } from '../../core/src/Format' ;
22import { Attributes } from '../../plugin-xml/src/Attributes' ;
3- import { VersionableObject } from '../../core/src/Memory/VersionableObject' ;
4- import { ModifierPreserve } from '../../core/src/Modifier' ;
53
64export class LinkFormat extends Format {
5+ preserveAfterParagraphBreak = false ;
6+
77 constructor ( url = '#' , target = '' ) {
88 super ( 'A' ) ;
9- this . preserve = new VersionableObject ( {
10- after : true ,
11- paragraphBreak : false ,
12- lineBreak : true ,
13- } ) as ModifierPreserve ;
149 this . url = url ;
1510 if ( target ) {
1611 this . target = target ;
Original file line number Diff line number Diff line change @@ -3,7 +3,6 @@ import { XmlDomParsingEngine } from '../../plugin-xml/src/XmlDomParsingEngine';
33import { TableRowNode } from './TableRowNode' ;
44import { nodeName } from '../../utils/src/utils' ;
55import { Attributes } from '../../plugin-xml/src/Attributes' ;
6- import { Modifiers } from '../../core/src/Modifiers' ;
76
87export class TableSectionAttributes extends Attributes { }
98
Original file line number Diff line number Diff line change 1- import { Modifier , ModifierPreserve } from '../../core/src/Modifier' ;
1+ import { Modifier } from '../../core/src/Modifier' ;
22import { CssStyle } from './CssStyle' ;
33import { ClassList } from './ClassList' ;
44import { makeVersionable } from '../../core/src/Memory/Versionable' ;
5- import { VersionableObject } from '../../core/src/Memory/VersionableObject' ;
65
76export class Attributes extends Modifier {
87 private _record : Record < string , string > ;
98 style = new CssStyle ( ) ;
109 // Avoid copiying FontAwesome classes on paragraph break.
1110 // TODO : need to be improved to better take care of color classes, etc.
12- preserve = new VersionableObject ( {
13- after : true ,
14- paragraphBreak : false ,
15- lineBreak : true ,
16- } ) as ModifierPreserve ;
11+ preserveAfterParagraphBreak = false ;
1712 classList = new ClassList ( ) ;
1813 constructor ( attributes ?: Attributes | NamedNodeMap | Record < string , string > ) {
1914 super ( ) ;
You can’t perform that action at this time.
0 commit comments