mediawiki-extensions-Visual.../modules/ve/dm/nodes/ve.dm.TableNode.js
Ed Sanders a38b1d9420 Allow tables to contain captions!
Captions were not in the allowed lists of children for tables.
This causes an exception to be thrown if you try to do fixUpInsertion
on a transaction containing captions.

Bug: 58318
Change-Id: I866e015c14e787830c45da93dfed9d2119fb0865
2013-12-11 15:42:09 +00:00

45 lines
1.1 KiB
JavaScript

/*!
* VisualEditor DataModel TableNode class.
*
* @copyright 2011-2013 VisualEditor Team and others; see AUTHORS.txt
* @license The MIT License (MIT); see LICENSE.txt
*/
/**
* DataModel table node.
*
* @class
* @extends ve.dm.BranchNode
* @constructor
* @param {ve.dm.BranchNode[]} [children] Child nodes to attach
* @param {Object} [element] Reference to element in linear model
*/
ve.dm.TableNode = function VeDmTableNode( children, element ) {
// Parent constructor
ve.dm.BranchNode.call( this, children, element );
};
/* Inheritance */
OO.inheritClass( ve.dm.TableNode, ve.dm.BranchNode );
/* Static Properties */
ve.dm.TableNode.static.name = 'table';
ve.dm.TableNode.static.childNodeTypes = [ 'tableSection', 'tableCaption' ];
ve.dm.TableNode.static.matchTagNames = [ 'table' ];
ve.dm.TableNode.static.toDataElement = function () {
return { 'type': 'table' };
};
ve.dm.TableNode.static.toDomElements = function ( dataElement, doc ) {
return [ doc.createElement( 'table' ) ];
};
/* Registration */
ve.dm.modelRegistry.register( ve.dm.TableNode );