Path: blob/master/emojionearea/src/function/textFromHtml.js
575 views
define([1'var/emojione',2'var/invisibleChar',3'function/unicodeTo',4],5function(emojione, invisibleChar, unicodeTo) {6return function(str, self) {7str = str8.replace(/<img[^>]*alt="([^"]+)"[^>]*>/ig, '$1')9.replace(/\n|\r/g, '')10.replace(/<br[^>]*>/ig, '\n')11.replace(/(?:<(?:div|p|ol|ul|li|pre|code|object)[^>]*>)+/ig, '<div>')12.replace(/(?:<\/(?:div|p|ol|ul|li|pre|code|object)>)+/ig, '</div>')13.replace(/\n<div><\/div>/ig, '\n')14.replace(/<div><\/div>\n/ig, '\n')15.replace(/(?:<div>)+<\/div>/ig, '\n')16.replace(/([^\n])<\/div><div>/ig, '$1\n')17.replace(/(?:<\/div>)+/ig, '</div>')18.replace(/([^\n])<\/div>([^\n])/ig, '$1\n$2')19.replace(/<\/div>/ig, '')20.replace(/([^\n])<div>/ig, '$1\n')21.replace(/\n<div>/ig, '\n')22.replace(/<div>\n/ig, '\n\n')23.replace(/<(?:[^>]+)?>/g, '')24.replace(new RegExp(invisibleChar, 'g'), '')25.replace(/ /g, ' ')26.replace(/</g, '<')27.replace(/>/g, '>')28.replace(/"/g, '"')29.replace(/'/g, "'")30.replace(/`/g, '`')31.replace(/&/g, '&');3233switch (self.saveEmojisAs) {34case 'image':35str = unicodeTo(str, self.emojiTemplate);36break;37case 'shortname':38str = emojione.toShort(str);39}40return str;41}42});4344