Diferencia entre revisiones de «MediaWiki:Gadget-Biblia.js»

De EIFA - Estudios Interdisciplinares de las Fuentes Avilistas
Línea 12: Línea 12:
ve.init.target.getWikitextFragment( docRange, false ).done( function ( wikitext ) {
ve.init.target.getWikitextFragment( docRange, false ).done( function ( wikitext ) {
var htmlfrag = model.getFragment().insertHtml('<bible>'+wikitext+'</bible>');
var htmlfrag = model.getFragment().insertHtml('<bible>'+wikitext+'</bible>');
} );


const getCircularReplacer = function () {
const getCircularReplacer = function () {
Línea 28: Línea 27:
const myJson = JSON.stringify(htmlfrag, getCircularReplacer());
const myJson = JSON.stringify(htmlfrag, getCircularReplacer());
alert(myJson);
alert(myJson);
} );


};
};

Revisión del 20:06 3 ene 2023

ve.ui.BibliaCommand = function VeUiBibliaCommand() {
	ve.ui.BibliaCommand.super.call(	this, 'Biblia' );
};
OO.inheritClass( ve.ui.BibliaCommand, ve.ui.Command );

ve.ui.BibliaCommand.prototype.execute = function ( surface ) {
	var model = surface.getModel(),
		doc = model.getDocument(),
		range = model.getSelection().getRange(),
		docRange = doc.shallowCloneFromRange( range );

	ve.init.target.getWikitextFragment( docRange, false ).done( function ( wikitext ) {
		var htmlfrag = model.getFragment().insertHtml('<bible>'+wikitext+'</bible>');

	const getCircularReplacer = function () {
		const seen = new WeakSet();
		return function (key, value) {
		if (typeof value === 'object' && value !== null) {
    		if (seen.has(value)) {
        return;
      }
        seen.add(value);
      }
        return value;
	  };
	};
	const myJson = JSON.stringify(htmlfrag, getCircularReplacer());	
	alert(myJson);
	
	} );

	

};

ve.ui.commandRegistry.register( new ve.ui.BibliaCommand() );

ve.ui.BibliaTool = function VeUiBibliaTool() {
	ve.ui.BibliaTool.super.apply( this, arguments );
};
OO.inheritClass( ve.ui.BibliaTool, ve.ui.Tool );
ve.ui.BibliaTool.static.name = 'Biblia';
ve.ui.BibliaTool.static.group = 'cite';
ve.ui.BibliaTool.static.icon = 'book';
ve.ui.BibliaTool.static.title = 'Biblia';
ve.ui.BibliaTool.static.commandName = 'Biblia';
ve.ui.toolFactory.register( ve.ui.BibliaTool );