mirror of
https://gerrit.wikimedia.org/r/mediawiki/extensions/VisualEditor
synced 2024-11-18 19:55:55 +00:00
2c77e88d2c
Change-Id: I30539877543dc2a57bd1428a00d10ac46d8fc294
43 lines
1.1 KiB
JavaScript
43 lines
1.1 KiB
JavaScript
/*!
|
|
* VisualEditor ContentEditable MWInlineExtensionNode class.
|
|
*
|
|
* @copyright 2011-2020 VisualEditor Team and others; see AUTHORS.txt
|
|
* @license The MIT License (MIT); see LICENSE.txt
|
|
*/
|
|
|
|
/**
|
|
* ContentEditable MediaWiki inline extension node.
|
|
*
|
|
* @class
|
|
* @abstract
|
|
* @extends ve.ce.MWExtensionNode
|
|
*
|
|
* @constructor
|
|
* @param {ve.dm.MWInlineExtensionNode} model Model to observe
|
|
* @param {Object} [config] Configuration options
|
|
*/
|
|
ve.ce.MWInlineExtensionNode = function VeCeMWInlineExtensionNode() {
|
|
// Parent constructor
|
|
ve.ce.MWInlineExtensionNode.super.apply( this, arguments );
|
|
};
|
|
|
|
/* Inheritance */
|
|
|
|
OO.inheritClass( ve.ce.MWInlineExtensionNode, ve.ce.MWExtensionNode );
|
|
|
|
/* Methods */
|
|
|
|
/**
|
|
* @inheritdoc
|
|
*/
|
|
ve.ce.MWInlineExtensionNode.prototype.onParseSuccess = function ( deferred, response ) {
|
|
var data = response.visualeditor,
|
|
contentNodes = $.parseHTML( data.content );
|
|
|
|
// Inline nodes may come back in a wrapper paragraph; in that case, unwrap it
|
|
if ( contentNodes.length === 1 && contentNodes[ 0 ].nodeName === 'P' ) {
|
|
contentNodes = Array.prototype.slice.apply( contentNodes[ 0 ].childNodes );
|
|
}
|
|
deferred.resolve( contentNodes );
|
|
};
|