UNPKG

@syncfusion/ej2-documenteditor

Version:

Feature-rich document editor control with built-in support for context menu, options pane and dialogs.

828 lines (827 loc) 35.5 kB
import { isNullOrUndefined } from '@syncfusion/ej2-base'; import { Dictionary } from '../../base/dictionary'; import { WBorders } from './borders'; import { WUniqueFormat } from '../../base/unique-format'; import { WUniqueFormats } from '../../base/unique-formats'; import { WListFormat } from './list-format'; import { ParagraphWidget, TableCellWidget, BlockContainer, TextFrame } from '../viewer/page'; import { WParagraphStyle } from './style'; /* eslint-disable */ /** * @private */ var WTabStop = /** @class */ (function () { function WTabStop() { } Object.defineProperty(WTabStop.prototype, "position", { get: function () { return this.positionIn; }, set: function (value) { this.positionIn = value; }, enumerable: true, configurable: true }); Object.defineProperty(WTabStop.prototype, "deletePosition", { get: function () { return this.deletePositionIn; }, set: function (value) { this.deletePositionIn = value; }, enumerable: true, configurable: true }); Object.defineProperty(WTabStop.prototype, "tabJustification", { get: function () { return this.justification; }, set: function (value) { this.justification = value; }, enumerable: true, configurable: true }); Object.defineProperty(WTabStop.prototype, "tabLeader", { get: function () { return this.leader; }, set: function (value) { this.leader = value; }, enumerable: true, configurable: true }); WTabStop.prototype.clone = function () { var tabStop = new WTabStop(); tabStop.deletePosition = this.deletePosition; tabStop.position = this.position; tabStop.tabJustification = this.tabJustification; tabStop.tabLeader = this.tabLeader; return tabStop; }; WTabStop.prototype.equals = function (tab) { if (this.position === tab.position && this.deletePosition === tab.deletePosition && this.tabJustification === tab.tabJustification && this.tabLeader === tab.tabLeader) { return true; } else { return false; } }; WTabStop.prototype.destroy = function () { this.position = undefined; this.deletePosition = undefined; this.tabJustification = undefined; this.leader = undefined; }; return WTabStop; }()); export { WTabStop }; /** * @private */ var WParagraphFormat = /** @class */ (function () { function WParagraphFormat(node) { this.uniqueParagraphFormat = undefined; this.ownerBase = undefined; this.baseStyle = undefined; this.tabs = undefined; this.ownerBase = node; this.listFormat = new WListFormat(this); this.borders = new WBorders(this); this.tabs = []; } WParagraphFormat.prototype.getUpdatedTabs = function () { var inTabs = []; var tabStops = new Dictionary(); var tabsInListFormat = this.getTabStopsFromListFormat(); for (var _i = 0, tabsInListFormat_1 = tabsInListFormat; _i < tabsInListFormat_1.length; _i++) { var tabStop = tabsInListFormat_1[_i]; if (!tabStops.containsKey(tabStop.position)) { tabStops.add(tabStop.position, tabStop); } } if (!isNullOrUndefined(this.baseStyle) && this.baseStyle instanceof WParagraphStyle) { var baseStyle = this.baseStyle; while (!isNullOrUndefined(baseStyle)) { for (var _a = 0, _b = baseStyle.paragraphFormat.tabs; _a < _b.length; _a++) { var tab = _b[_a]; if (!tabStops.containsKey(tab.position)) { tabStops.add(tab.position, tab); } } baseStyle = baseStyle.basedOn; } var tabsCollection_1 = []; tabStops.keys.forEach(function (key) { tabsCollection_1.push(tabStops.get(key)); }); for (var i = 0; i < tabsCollection_1.length; i++) { var tabStop = tabsCollection_1[i]; if (!this.isValidTabStop(tabsCollection_1, tabStop)) { tabStops.remove(tabStop.position); } } for (var _c = 0, _d = tabStops.keys; _c < _d.length; _c++) { var key = _d[_c]; if (!this.hasTabStop(parseFloat(key.toFixed(4)))) { inTabs.push(tabStops.get(key)); } } } inTabs = inTabs.concat(this.tabs.filter(function (a) { return (a.position !== 0 && a.deletePosition === 0); })); inTabs = inTabs.sort(function (a, b) { return a.position - b.position; }); return inTabs; }; WParagraphFormat.prototype.getTabStopsFromListFormat = function () { if (this.listFormat.listId > -1 && this.listFormat.listLevelNumber > -1) { var level = this.listFormat.listLevel; if (level && level.paragraphFormat) { return level.paragraphFormat.tabs; } } return []; }; WParagraphFormat.prototype.isValidTabStop = function (tabs, tabStop) { for (var i = 0; i < tabs.length; i++) { if (!isNullOrUndefined(tabs[i].position) && !isNullOrUndefined(tabs[i].deletePosition) && !isNullOrUndefined(tabStop.position)) { if (tabStop != tabs[i] && (parseFloat(tabs[i].position.toFixed(4)) === parseFloat(tabStop.position.toFixed(4)) || parseFloat(tabs[i].deletePosition.toFixed(4)) === parseFloat(tabStop.position.toFixed(4)))) { return false; } } } return true; }; WParagraphFormat.prototype.hasTabStop = function (position) { for (var i = 0; i < this.tabs.length; i++) { if (!isNullOrUndefined(this.tabs[i].position) && !isNullOrUndefined(this.tabs[i].deletePosition)) { if (parseFloat(this.tabs[i].position.toFixed(4)) === position || parseFloat(this.tabs[i].deletePosition.toFixed(4)) === position) { return true; } } } return false; }; Object.defineProperty(WParagraphFormat.prototype, "leftIndent", { get: function () { return this.getPropertyValue('leftIndent'); }, set: function (value) { this.setPropertyValue('leftIndent', value); }, enumerable: true, configurable: true }); Object.defineProperty(WParagraphFormat.prototype, "rightIndent", { get: function () { return this.getPropertyValue('rightIndent'); }, set: function (value) { this.setPropertyValue('rightIndent', value); }, enumerable: true, configurable: true }); Object.defineProperty(WParagraphFormat.prototype, "firstLineIndent", { get: function () { return this.getPropertyValue('firstLineIndent'); }, set: function (value) { this.setPropertyValue('firstLineIndent', value); }, enumerable: true, configurable: true }); Object.defineProperty(WParagraphFormat.prototype, "beforeSpacing", { get: function () { return this.getPropertyValue('beforeSpacing'); }, set: function (value) { this.setPropertyValue('beforeSpacing', value); }, enumerable: true, configurable: true }); Object.defineProperty(WParagraphFormat.prototype, "afterSpacing", { get: function () { return this.getPropertyValue('afterSpacing'); }, set: function (value) { this.setPropertyValue('afterSpacing', value); }, enumerable: true, configurable: true }); Object.defineProperty(WParagraphFormat.prototype, "spaceBeforeAuto", { get: function () { return this.getPropertyValue('spaceBeforeAuto'); }, set: function (value) { this.setPropertyValue('spaceBeforeAuto', value); }, enumerable: true, configurable: true }); Object.defineProperty(WParagraphFormat.prototype, "spaceAfterAuto", { get: function () { return this.getPropertyValue('spaceAfterAuto'); }, set: function (value) { this.setPropertyValue('spaceAfterAuto', value); }, enumerable: true, configurable: true }); Object.defineProperty(WParagraphFormat.prototype, "lineSpacing", { get: function () { return this.getPropertyValue('lineSpacing'); }, set: function (value) { this.setPropertyValue('lineSpacing', value); }, enumerable: true, configurable: true }); Object.defineProperty(WParagraphFormat.prototype, "lineSpacingType", { get: function () { return this.getPropertyValue('lineSpacingType'); }, set: function (value) { this.setPropertyValue('lineSpacingType', value); }, enumerable: true, configurable: true }); Object.defineProperty(WParagraphFormat.prototype, "textAlignment", { get: function () { var value = this.getPropertyValue('textAlignment'); if (this.bidi) { if (value === 'Left') { value = 'Right'; } else if (value === 'Right') { value = 'Left'; } } return value; }, set: function (value) { this.setPropertyValue('textAlignment', value); }, enumerable: true, configurable: true }); Object.defineProperty(WParagraphFormat.prototype, "keepWithNext", { get: function () { return this.getPropertyValue('keepWithNext'); }, set: function (value) { this.setPropertyValue('keepWithNext', value); }, enumerable: true, configurable: true }); Object.defineProperty(WParagraphFormat.prototype, "keepLinesTogether", { get: function () { return this.getPropertyValue('keepLinesTogether'); }, set: function (value) { this.setPropertyValue('keepLinesTogether', value); }, enumerable: true, configurable: true }); Object.defineProperty(WParagraphFormat.prototype, "widowControl", { get: function () { return this.getPropertyValue('widowControl'); }, set: function (value) { this.setPropertyValue('widowControl', value); }, enumerable: true, configurable: true }); Object.defineProperty(WParagraphFormat.prototype, "outlineLevel", { get: function () { return this.getPropertyValue('outlineLevel'); }, set: function (value) { this.setPropertyValue('outlineLevel', value); }, enumerable: true, configurable: true }); Object.defineProperty(WParagraphFormat.prototype, "bidi", { get: function () { return this.getPropertyValue('bidi'); }, set: function (value) { this.setPropertyValue('bidi', value); }, enumerable: true, configurable: true }); Object.defineProperty(WParagraphFormat.prototype, "contextualSpacing", { get: function () { return this.getPropertyValue('contextualSpacing'); }, set: function (value) { this.setPropertyValue('contextualSpacing', value); }, enumerable: true, configurable: true }); WParagraphFormat.prototype.getListFormatParagraphFormat = function (property) { var paragraphFormat = this.getListPargaraphFormat(property); if (!isNullOrUndefined(paragraphFormat)) { return paragraphFormat.uniqueParagraphFormat.propertiesHash.get(WUniqueFormat.getPropertyType(WParagraphFormat.uniqueFormatType, property)); } return undefined; }; /** * @private */ WParagraphFormat.prototype.getListPargaraphFormat = function (property) { if (this.listFormat.hasValue('listId') && this.listFormat.listId > -1 && this.listFormat.listLevelNumber > -1) { var level = this.listFormat.listLevel; var propertyType = WUniqueFormat.getPropertyType(WParagraphFormat.uniqueFormatType, property); if (!isNullOrUndefined(level) && !isNullOrUndefined(level.paragraphFormat.uniqueParagraphFormat) && level.paragraphFormat.uniqueParagraphFormat.propertiesHash.containsKey(propertyType)) { return level.paragraphFormat; } else { return undefined; } } else if (this.listFormat.hasValue('listId') && this.listFormat.listId === -1 && (property === 'leftIndent' || property === 'firstLineIndent')) { var paraFormat = new WParagraphFormat(); if (!this.hasValue('leftIndent')) { paraFormat.leftIndent = 0; } if (!this.hasValue('firstLineIndent')) { paraFormat.firstLineIndent = 0; } return paraFormat; } return undefined; }; WParagraphFormat.prototype.getPropertyValue = function (property) { if (!this.hasValue(property)) { var formatInList = this.getListFormatParagraphFormat(property); if (this.baseStyle instanceof WParagraphStyle) { var currentFormat = this; var baseStyle = this.baseStyle; while (!isNullOrUndefined(baseStyle)) { var listParaFormat = void 0; if (!this.listFormat.hasValue('listId')) { listParaFormat = baseStyle.paragraphFormat.getListPargaraphFormat(property); } if (baseStyle.paragraphFormat.hasValue(property)) { currentFormat = baseStyle.paragraphFormat; break; } else if (!isNullOrUndefined(listParaFormat) && listParaFormat.hasValue(property)) { if (baseStyle.paragraphFormat.listFormat.listLevelNumber !== this.listFormat.listLevelNumber) { var level = this.listFormat.listLevel; var propertyType = WUniqueFormat.getPropertyType(WParagraphFormat.uniqueFormatType, property); if (!isNullOrUndefined(level) && !isNullOrUndefined(level.paragraphFormat.uniqueParagraphFormat) && level.paragraphFormat.uniqueParagraphFormat.propertiesHash.containsKey(propertyType)) { currentFormat = level.paragraphFormat; break; } } currentFormat = listParaFormat; break; } else { baseStyle = baseStyle.basedOn; } } if (!isNullOrUndefined(baseStyle)) { if (!isNullOrUndefined(formatInList) && this.listFormat.hasValue('listId') && currentFormat.listFormat.listId === -1 && currentFormat.listFormat.listLevelNumber <= 1 || !isNullOrUndefined(formatInList) && this.listFormat.listId !== currentFormat.listFormat.listId && currentFormat.listFormat.listLevelNumber <= 1) { return formatInList; } var propertyType = WUniqueFormat.getPropertyType(WParagraphFormat.uniqueFormatType, property); return currentFormat.uniqueParagraphFormat.propertiesHash.get(propertyType); } } if (!isNullOrUndefined(formatInList)) { return formatInList; } } else { var propertyType = WUniqueFormat.getPropertyType(WParagraphFormat.uniqueFormatType, property); if (!isNullOrUndefined(this.uniqueParagraphFormat) && this.uniqueParagraphFormat.propertiesHash.containsKey(propertyType)) { return this.uniqueParagraphFormat.propertiesHash.get(propertyType); } } return this.getDefaultValue(property); }; WParagraphFormat.prototype.getDefaultValue = function (property) { var propertyType = WUniqueFormat.getPropertyType(WParagraphFormat.uniqueFormatType, property); var docParagraphFormat = this.getDocumentParagraphFormat(); if (isNullOrUndefined(docParagraphFormat) || isNullOrUndefined(docParagraphFormat.uniqueParagraphFormat)) { return WParagraphFormat.getPropertyDefaultValue(property); } var ownerBase = this.ownerBase; var isInsideBodyWidget = false; var isPaste = false; if (ownerBase && ownerBase instanceof ParagraphWidget) { var containerWidget = ownerBase.containerWidget; isInsideBodyWidget = containerWidget instanceof BlockContainer || containerWidget instanceof TextFrame || containerWidget instanceof TableCellWidget; var bodyWidget = ownerBase.bodyWidget; if (bodyWidget && bodyWidget.page && bodyWidget.page.documentHelper && bodyWidget.page.documentHelper.owner && bodyWidget.page.documentHelper.owner.editorModule) { isPaste = bodyWidget.page.documentHelper.owner.editorModule.isPaste; } } // Check and return property value early if (isInsideBodyWidget && !isPaste) { var propValue = docParagraphFormat.uniqueParagraphFormat.propertiesHash.get(propertyType); if (!isNullOrUndefined(propValue)) { return propValue; } } return WParagraphFormat.getPropertyDefaultValue(property); }; /** * @private */ WParagraphFormat.prototype.getDocumentParagraphFormat = function () { var docParagraphFormat; if (!isNullOrUndefined(this.ownerBase)) { var documentHelper = this.getDocumentHelperObject(); if (!isNullOrUndefined(documentHelper)) { docParagraphFormat = documentHelper.paragraphFormat; } } return docParagraphFormat; }; /** * @private */ WParagraphFormat.prototype.getDocumentHelperObject = function () { var documentHelper; if (this.ownerBase instanceof ParagraphWidget) { var bodyWidget = this.ownerBase.bodyWidget; if (!isNullOrUndefined(bodyWidget) && !isNullOrUndefined(bodyWidget.page) && !isNullOrUndefined(bodyWidget.page.documentHelper)) { documentHelper = bodyWidget.page.documentHelper; } } return documentHelper; }; WParagraphFormat.prototype.setPropertyValue = function (property, value, clearProperty) { if (isNullOrUndefined(value) || value === '' && !clearProperty) { value = WParagraphFormat.getPropertyDefaultValue(property); } if (isNullOrUndefined(this.uniqueParagraphFormat) || (isNullOrUndefined(this.uniqueParagraphFormat.propertiesHash) && isNullOrUndefined(this.uniqueParagraphFormat.uniqueFormatType) && isNullOrUndefined(this.uniqueParagraphFormat.referenceCount))) { this.initializeUniqueParagraphFormat(property, value); } else { var propertyType = WUniqueFormat.getPropertyType(this.uniqueParagraphFormat.uniqueFormatType, property); if (this.uniqueParagraphFormat.propertiesHash.containsKey(propertyType) && this.uniqueParagraphFormat.propertiesHash.get(propertyType) === value) { //Do nothing, since no change in property value and return return; } this.uniqueParagraphFormat = WParagraphFormat.uniqueParagraphFormats.updateUniqueFormat(this.uniqueParagraphFormat, property, value); } }; WParagraphFormat.prototype.initializeUniqueParagraphFormat = function (property, propValue) { var uniqueParaFormatTemp = new Dictionary(); this.addUniqueParaFormat('leftIndent', property, propValue, uniqueParaFormatTemp); this.addUniqueParaFormat('rightIndent', property, propValue, uniqueParaFormatTemp); this.addUniqueParaFormat('firstLineIndent', property, propValue, uniqueParaFormatTemp); this.addUniqueParaFormat('textAlignment', property, propValue, uniqueParaFormatTemp); this.addUniqueParaFormat('beforeSpacing', property, propValue, uniqueParaFormatTemp); this.addUniqueParaFormat('afterSpacing', property, propValue, uniqueParaFormatTemp); this.addUniqueParaFormat('spaceBeforeAuto', property, propValue, uniqueParaFormatTemp); this.addUniqueParaFormat('spaceAfterAuto', property, propValue, uniqueParaFormatTemp); this.addUniqueParaFormat('lineSpacing', property, propValue, uniqueParaFormatTemp); this.addUniqueParaFormat('lineSpacingType', property, propValue, uniqueParaFormatTemp); this.addUniqueParaFormat('outlineLevel', property, propValue, uniqueParaFormatTemp); this.addUniqueParaFormat('bidi', property, propValue, uniqueParaFormatTemp); this.addUniqueParaFormat('contextualSpacing', property, propValue, uniqueParaFormatTemp); this.addUniqueParaFormat('keepWithNext', property, propValue, uniqueParaFormatTemp); this.addUniqueParaFormat('keepLinesTogether', property, propValue, uniqueParaFormatTemp); this.addUniqueParaFormat('widowControl', property, propValue, uniqueParaFormatTemp); this.uniqueParagraphFormat = WParagraphFormat.uniqueParagraphFormats.addUniqueFormat(uniqueParaFormatTemp, WParagraphFormat.uniqueFormatType); }; WParagraphFormat.prototype.addUniqueParaFormat = function (property, modifiedProperty, propValue, uniqueParaFormatTemp) { var propertyType = WUniqueFormat.getPropertyType(WParagraphFormat.uniqueFormatType, property); if (property === modifiedProperty) { uniqueParaFormatTemp.add(propertyType, propValue); } }; WParagraphFormat.getPropertyDefaultValue = function (property) { var value = undefined; switch (property) { case 'leftIndent': value = 0; break; case 'rightIndent': value = 0; break; case 'firstLineIndent': value = 0; break; case 'textAlignment': value = 'Left'; break; case 'beforeSpacing': value = 0; break; case 'afterSpacing': value = 0; break; case 'spaceBeforeAuto': value = false; break; case 'spaceAfterAuto': value = false; break; case 'lineSpacing': value = 1; break; case 'lineSpacingType': value = 'Multiple'; break; case 'styleName': value = 'Normal'; break; case 'outlineLevel': value = 'BodyText'; break; case 'bidi': value = false; break; case 'contextualSpacing': value = false; break; case 'keepWithNext': value = false; break; case 'keepLinesTogether': value = false; break; case 'widowControl': value = true; break; } return value; }; WParagraphFormat.prototype.clearIndent = function () { this.clearPropertyValue('leftIndent'); this.clearPropertyValue('firstLineIndent'); }; WParagraphFormat.prototype.clearPropertyValue = function (property) { this.setPropertyValue(property, undefined, true); if (!isNullOrUndefined(this.uniqueParagraphFormat)) { var key = WUniqueFormat.getPropertyType(this.uniqueParagraphFormat.uniqueFormatType, property); if (this.uniqueParagraphFormat.propertiesHash.containsKey(key)) { this.uniqueParagraphFormat.propertiesHash.remove(key); } } }; WParagraphFormat.prototype.clearFormat = function () { if (!isNullOrUndefined(this.listFormat)) { this.listFormat.clearFormat(); } if (!isNullOrUndefined(this.borders)) { this.borders.clearFormat(); } if (!isNullOrUndefined(this.uniqueParagraphFormat) && this.uniqueParagraphFormat.referenceCount === 0) { WParagraphFormat.uniqueParagraphFormats.remove(this.uniqueParagraphFormat); } this.uniqueParagraphFormat = undefined; if (!isNullOrUndefined(this.getDocumentHelperObject())) { this.baseStyle = this.getDocumentHelperObject().styles.findByName('Normal'); } }; WParagraphFormat.prototype.destroy = function () { if (!isNullOrUndefined(this.uniqueParagraphFormat)) { WParagraphFormat.uniqueParagraphFormats.remove(this.uniqueParagraphFormat); } this.uniqueParagraphFormat = undefined; if (!isNullOrUndefined(this.listFormat)) { this.listFormat.destroy(); } this.listFormat = undefined; if (this.tabs && this.tabs.length > 0) { for (var i = 0; i < this.tabs.length; i++) { this.tabs[i].destroy(); } this.tabs = []; this.tabs = undefined; } if (!isNullOrUndefined(this.borders)) { this.borders.destroy(); } this.borders = undefined; this.baseStyle = undefined; this.ownerBase = undefined; }; WParagraphFormat.prototype.copyFormat = function (format) { if (!isNullOrUndefined(format)) { if (!isNullOrUndefined(format.uniqueParagraphFormat)) { this.updateUniqueParagraphFormat(format); } if (!isNullOrUndefined(format.borders)) { if (isNullOrUndefined(this.borders)) { this.borders = new WBorders(this); } this.borders.copyFormat(format.borders); } if (!isNullOrUndefined(format.listFormat)) { if (isNullOrUndefined(this.listFormat)) { this.listFormat = new WListFormat(this); } this.listFormat.copyFormat(format.listFormat); } if (!isNullOrUndefined(format.baseStyle)) { this.baseStyle = format.baseStyle; } if (!isNullOrUndefined(format.tabs)) { for (var i = 0; i < format.tabs.length; i++) { this.tabs[i] = format.tabs[i]; } } } }; WParagraphFormat.prototype.updateUniqueParagraphFormat = function (format) { var hash = undefined; if (this.uniqueParagraphFormat) { hash = this.uniqueParagraphFormat.mergeProperties(format.uniqueParagraphFormat); if (this.uniqueParagraphFormat.referenceCount === 0) { WParagraphFormat.uniqueParagraphFormats.remove(this.uniqueParagraphFormat); this.uniqueParagraphFormat = undefined; } } this.uniqueParagraphFormat = new WUniqueFormat(WParagraphFormat.uniqueFormatType); if (isNullOrUndefined(hash)) { hash = this.uniqueParagraphFormat.mergeProperties(format.uniqueParagraphFormat); } this.uniqueParagraphFormat = WParagraphFormat.uniqueParagraphFormats.addUniqueFormat(hash, WParagraphFormat.uniqueFormatType); }; WParagraphFormat.prototype.cloneFormat = function () { var format = new WParagraphFormat(undefined); format.uniqueParagraphFormat = this.uniqueParagraphFormat; format.baseStyle = this.baseStyle; if (isNullOrUndefined(this.listFormat)) { format.listFormat = undefined; } else { format.listFormat = this.listFormat.cloneListFormat(); format.listFormat.ownerBase = format; } format.borders = isNullOrUndefined(this.borders) ? undefined : this.borders.cloneFormat(); return format; }; /** * * @private */ WParagraphFormat.prototype.hasValue = function (property) { if (!isNullOrUndefined(this.uniqueParagraphFormat) && !isNullOrUndefined(this.uniqueParagraphFormat.propertiesHash)) { var propertyType = WUniqueFormat.getPropertyType(this.uniqueParagraphFormat.uniqueFormatType, property); return this.uniqueParagraphFormat.propertiesHash.containsKey(propertyType); } return false; }; WParagraphFormat.clear = function () { this.uniqueParagraphFormats.clear(); }; WParagraphFormat.prototype.applyStyle = function (baseStyle) { this.baseStyle = baseStyle; this.listFormat.applyStyle(this.baseStyle); }; WParagraphFormat.prototype.getValue = function (property) { return this.hasValue(property) ? this.getPropertyValue(property) : undefined; }; //This method logic is not correct for changing the style dialog. Instead of this created assign format method and used it.. // public mergeFormat(format: WParagraphFormat, isStyle?: boolean): void { // isStyle = isNullOrUndefined(isStyle) ? false : isStyle; // if (isNullOrUndefined(this.getValue('leftIndent'))) { // this.leftIndent = format.getValue('leftIndent') as number; // } // if (isNullOrUndefined(this.getValue('rightIndent'))) { // this.rightIndent = format.getValue('rightIndent') as number; // } // if (isNullOrUndefined(this.getValue('firstLineIndent'))) { // this.firstLineIndent = format.getValue('firstLineIndent') as number; // } // if (isNullOrUndefined(this.getValue('beforeSpacing'))) { // this.beforeSpacing = format.getValue('beforeSpacing') as number; // } // if (isNullOrUndefined(this.getValue('afterSpacing'))) { // this.afterSpacing = format.getValue('afterSpacing') as number; // } // if (isNullOrUndefined(this.getValue('spaceBeforeAuto'))) { // this.spaceBeforeAuto = format.getValue('spaceBeforeAuto') as boolean; // } // if (isNullOrUndefined(this.getValue('spaceAfterAuto'))) { // this.spaceAfterAuto = format.getValue('spaceAfterAuto') as boolean; // } // if (isNullOrUndefined(this.getValue('lineSpacing'))) { // this.lineSpacing = format.getValue('lineSpacing') as number; // } // if (isNullOrUndefined(this.getValue('lineSpacingType'))) { // this.lineSpacingType = format.getValue('lineSpacingType') as LineSpacingType; // } // if (isNullOrUndefined(this.getValue('textAlignment'))) { // this.textAlignment = format.getValue('textAlignment') as TextAlignment; // } // if (isNullOrUndefined(this.getValue('outlineLevel'))) { // this.outlineLevel = format.getValue('outlineLevel') as OutlineLevel; // } // if (!isStyle && isNullOrUndefined(this.getValue('bidi'))) { // this.bidi = format.getValue('bidi') as boolean; // } // if (isNullOrUndefined(this.getValue('contextualSpacing'))) { // this.contextualSpacing = format.getValue('contextualSpacing') as boolean; // } // if (isNullOrUndefined(this.getValue('keepWithNext'))) { // this.keepWithNext = format.getValue('keepWithNext') as boolean; // } // if (isNullOrUndefined(this.getValue('keepLinesTogether'))) { // this.keepLinesTogether = format.getValue('keepLinesTogether') as boolean; // } // if (isNullOrUndefined(this.getValue('widowControl'))) { // this.widowControl = format.getValue('widowControl') as boolean; // } // if (isNullOrUndefined(this.listFormat)) { // this.listFormat.mergeFormat(format.listFormat); // } // } /** * Assinging the value for style dialog * @private * @returns {void} */ WParagraphFormat.prototype.assignFormat = function (format, isStyle) { isStyle = isNullOrUndefined(isStyle) ? false : isStyle; if (format.hasValue('leftIndent')) { this.leftIndent = format.getValue('leftIndent'); } if (format.hasValue('rightIndent')) { this.rightIndent = format.getValue('rightIndent'); } if (format.hasValue('firstLineIndent')) { this.firstLineIndent = format.getValue('firstLineIndent'); } if (format.hasValue('beforeSpacing')) { this.beforeSpacing = format.getValue('beforeSpacing'); } if (format.hasValue('afterSpacing')) { this.afterSpacing = format.getValue('afterSpacing'); } if (format.hasValue('spaceBeforeAuto')) { this.spaceBeforeAuto = format.getValue('spaceBeforeAuto'); } if (format.hasValue('spaceAfterAuto')) { this.spaceAfterAuto = format.getValue('spaceAfterAuto'); } if (format.hasValue('lineSpacing')) { this.lineSpacing = format.getValue('lineSpacing'); } if (format.hasValue('lineSpacingType')) { this.lineSpacingType = format.getValue('lineSpacingType'); } if (format.hasValue('textAlignment')) { this.textAlignment = format.getValue('textAlignment'); } if (format.hasValue('outlineLevel')) { this.outlineLevel = format.getValue('outlineLevel'); } if (!isStyle && format.hasValue('bidi')) { this.bidi = format.getValue('bidi'); } if (format.hasValue('contextualSpacing')) { this.contextualSpacing = format.getValue('contextualSpacing'); } if (format.hasValue('keepWithNext')) { this.keepWithNext = format.getValue('keepWithNext'); } if (format.hasValue('keepLinesTogether')) { this.keepLinesTogether = format.getValue('keepLinesTogether'); } if (format.hasValue('widowControl')) { this.widowControl = format.getValue('widowControl'); } }; WParagraphFormat.uniqueParagraphFormats = new WUniqueFormats(); WParagraphFormat.uniqueFormatType = 3; return WParagraphFormat; }()); export { WParagraphFormat };