@@ -60,8 +60,8 @@ ops.OperationTransformMatrix = function OperationTransformMatrix() {
6060
6161 /**
6262 * Returns a list with all attributes in setProperties that refer to styleName
63- * @param {Object } setProperties
64- * @param {string } styleName
63+ * @param {?odf.Formatting.StyleData } setProperties
64+ * @param {! string } styleName
6565 * @return {!Array.<!string> }
6666 */
6767 function getStyleReferencingAttributes ( setProperties , styleName ) {
@@ -80,8 +80,9 @@ ops.OperationTransformMatrix = function OperationTransformMatrix() {
8080 return attributes ;
8181 }
8282 /**
83- * @param {Object } setProperties
84- * @param {string } deletedStyleName
83+ * @param {?odf.Formatting.StyleData } setProperties
84+ * @param {!string } deletedStyleName
85+ * @return {undefined }
8586 */
8687 function dropStyleReferencingAttributes ( setProperties , deletedStyleName ) {
8788 /**
@@ -194,7 +195,7 @@ ops.OperationTransformMatrix = function OperationTransformMatrix() {
194195
195196 /**
196197 * Estimates if there are any properties set in the given properties object.
197- * @param {!Object } properties
198+ * @param {!odf.Formatting.StyleData } properties
198199 * @return {!boolean }
199200 */
200201 function hasProperties ( properties ) {
@@ -230,20 +231,21 @@ ops.OperationTransformMatrix = function OperationTransformMatrix() {
230231 }
231232
232233 /**
233- * @param {Object.<string,Object.<string,*>> } minorSet
234- * @param {Object.<string,{attributes:string}> } minorRem
235- * @param {Object.<string,Object.<string,*>> } majorSet
236- * @param {Object.<string,{attributes:string}> } majorRem
237- * @param {string } propertiesName
234+ * @param {?odf.Formatting.StyleData } minorSet
235+ * @param {? Object.<string,{attributes:string}> } minorRem
236+ * @param {?odf.Formatting.StyleData } majorSet
237+ * @param {? Object.<string,{attributes:string}> } majorRem
238+ * @param {! string } propertiesName
238239 * @return {?{majorChanged:boolean,minorChanged:boolean} }
239240 */
240241 function dropOverruledAndUnneededProperties ( minorSet , minorRem , majorSet , majorRem , propertiesName ) {
241- var minorSP = minorSet ? minorSet [ propertiesName ] : null ,
242+ var minorSP = /** @type { ?odf.Formatting.StyleData }*/ ( minorSet ? minorSet [ propertiesName ] : null ) ,
242243 minorRP = minorRem ? minorRem [ propertiesName ] : null ,
243- majorSP = majorSet ? majorSet [ propertiesName ] : null ,
244+ majorSP = /** @type { ?odf.Formatting.StyleData }*/ ( majorSet ? majorSet [ propertiesName ] : null ) ,
244245 majorRP = majorRem ? majorRem [ propertiesName ] : null ,
245246 result ;
246247
248+ // TODO: also care for nested properties, like there can be e.g. with text:paragraph-properties
247249 result = dropOverruledAndUnneededAttributes ( minorSP , minorRP , majorSP , majorRP ) ;
248250
249251 // remove empty setProperties
0 commit comments