_createMenuItem( intl, obj ) {
		const data = Object.assign( {}, obj );

		if ( !data.type ) {
			data.type = "normal";
		}
		if ( data.enabled === undefined ) {
			data.enabled = true;
		}
		if ( data.label ) {
			data.label = intl.t( ...data.label );
		}
		if ( data.tooltip ) {
			data.tooltip = intl.t( ...data.tooltip );
		}

		if ( data.submenu ) {
			const submenu = new Menu();
			data.submenu.forEach( submenuObj => {
				const submenuItem = this._createMenuItem( intl, submenuObj );
				submenu.append( submenuItem );
			});
			data.submenu = submenu;
		}

		delete data.click;
		const item = new MenuItem( data );
		if ( obj.click ) {
			item.click = ( ...args ) => obj.click( item, this, ...args );
		}

		return item;
	}
@param {IntlService} intl
@param {Object} obj
@return {module:"nw.gui".MenuItem}
@private