3 lines
6.3 KiB
JavaScript
3 lines
6.3 KiB
JavaScript
/*! markdown-it-emoji 3.0.0 https://github.com/markdown-it/markdown-it-emoji @license MIT */
|
|
!function(e,s){"object"==typeof exports&&"undefined"!=typeof module?module.exports=s():"function"==typeof define&&define.amd?define(s):(e="undefined"!=typeof globalThis?globalThis:e||self).markdownitEmoji=s()}(this,(function(){"use strict";var e={grinning:"\ud83d\ude00",smiley:"\ud83d\ude03",smile:"\ud83d\ude04",grin:"\ud83d\ude01",laughing:"\ud83d\ude06",satisfied:"\ud83d\ude06",sweat_smile:"\ud83d\ude05",joy:"\ud83d\ude02",wink:"\ud83d\ude09",blush:"\ud83d\ude0a",innocent:"\ud83d\ude07",heart_eyes:"\ud83d\ude0d",kissing_heart:"\ud83d\ude18",kissing:"\ud83d\ude17",kissing_closed_eyes:"\ud83d\ude1a",kissing_smiling_eyes:"\ud83d\ude19",yum:"\ud83d\ude0b",stuck_out_tongue:"\ud83d\ude1b",stuck_out_tongue_winking_eye:"\ud83d\ude1c",stuck_out_tongue_closed_eyes:"\ud83d\ude1d",neutral_face:"\ud83d\ude10",expressionless:"\ud83d\ude11",no_mouth:"\ud83d\ude36",smirk:"\ud83d\ude0f",unamused:"\ud83d\ude12",relieved:"\ud83d\ude0c",pensive:"\ud83d\ude14",sleepy:"\ud83d\ude2a",sleeping:"\ud83d\ude34",mask:"\ud83d\ude37",dizzy_face:"\ud83d\ude35",sunglasses:"\ud83d\ude0e",confused:"\ud83d\ude15",worried:"\ud83d\ude1f",open_mouth:"\ud83d\ude2e",hushed:"\ud83d\ude2f",astonished:"\ud83d\ude32",flushed:"\ud83d\ude33",frowning:"\ud83d\ude26",anguished:"\ud83d\ude27",fearful:"\ud83d\ude28",cold_sweat:"\ud83d\ude30",disappointed_relieved:"\ud83d\ude25",cry:"\ud83d\ude22",sob:"\ud83d\ude2d",scream:"\ud83d\ude31",confounded:"\ud83d\ude16",persevere:"\ud83d\ude23",disappointed:"\ud83d\ude1e",sweat:"\ud83d\ude13",weary:"\ud83d\ude29",tired_face:"\ud83d\ude2b",rage:"\ud83d\ude21",pout:"\ud83d\ude21",angry:"\ud83d\ude20",smiling_imp:"\ud83d\ude08",smiley_cat:"\ud83d\ude3a",smile_cat:"\ud83d\ude38",joy_cat:"\ud83d\ude39",heart_eyes_cat:"\ud83d\ude3b",smirk_cat:"\ud83d\ude3c",kissing_cat:"\ud83d\ude3d",scream_cat:"\ud83d\ude40",crying_cat_face:"\ud83d\ude3f",pouting_cat:"\ud83d\ude3e",heart:"\u2764\ufe0f",hand:"\u270b",raised_hand:"\u270b",v:"\u270c\ufe0f",point_up:"\u261d\ufe0f",fist_raised:"\u270a",fist:"\u270a",monkey_face:"\ud83d\udc35",cat:"\ud83d\udc31",cow:"\ud83d\udc2e",mouse:"\ud83d\udc2d",coffee:"\u2615",hotsprings:"\u2668\ufe0f",anchor:"\u2693",airplane:"\u2708\ufe0f",hourglass:"\u231b",watch:"\u231a",sunny:"\u2600\ufe0f",star:"\u2b50",cloud:"\u2601\ufe0f",umbrella:"\u2614",zap:"\u26a1",snowflake:"\u2744\ufe0f",sparkles:"\u2728",black_joker:"\ud83c\udccf",mahjong:"\ud83c\udc04",phone:"\u260e\ufe0f",telephone:"\u260e\ufe0f",envelope:"\u2709\ufe0f",pencil2:"\u270f\ufe0f",black_nib:"\u2712\ufe0f",scissors:"\u2702\ufe0f",wheelchair:"\u267f",warning:"\u26a0\ufe0f",aries:"\u2648",taurus:"\u2649",gemini:"\u264a",cancer:"\u264b",leo:"\u264c",virgo:"\u264d",libra:"\u264e",scorpius:"\u264f",sagittarius:"\u2650",capricorn:"\u2651",aquarius:"\u2652",pisces:"\u2653",heavy_multiplication_x:"\u2716\ufe0f",heavy_plus_sign:"\u2795",heavy_minus_sign:"\u2796",heavy_division_sign:"\u2797",bangbang:"\u203c\ufe0f",interrobang:"\u2049\ufe0f",question:"\u2753",grey_question:"\u2754",grey_exclamation:"\u2755",exclamation:"\u2757",heavy_exclamation_mark:"\u2757",wavy_dash:"\u3030\ufe0f",recycle:"\u267b\ufe0f",white_check_mark:"\u2705",ballot_box_with_check:"\u2611\ufe0f",heavy_check_mark:"\u2714\ufe0f",x:"\u274c",negative_squared_cross_mark:"\u274e",curly_loop:"\u27b0",loop:"\u27bf",part_alternation_mark:"\u303d\ufe0f",eight_spoked_asterisk:"\u2733\ufe0f",eight_pointed_black_star:"\u2734\ufe0f",sparkle:"\u2747\ufe0f",copyright:"\xa9\ufe0f",registered:"\xae\ufe0f",tm:"\u2122\ufe0f",information_source:"\u2139\ufe0f",m:"\u24c2\ufe0f",black_circle:"\u26ab",white_circle:"\u26aa",black_large_square:"\u2b1b",white_large_square:"\u2b1c",black_medium_square:"\u25fc\ufe0f",white_medium_square:"\u25fb\ufe0f",black_medium_small_square:"\u25fe",white_medium_small_square:"\u25fd",black_small_square:"\u25aa\ufe0f",white_small_square:"\u25ab\ufe0f"},s={angry:[">:(",">:-("],blush:[':")',':-")'],broken_heart:["</3","<\\3"],confused:[":/",":-/"],cry:[":'(",":'-(",":,(",":,-("],frowning:[":(",":-("],heart:["<3"],imp:["]:(","]:-("],innocent:["o:)","O:)","o:-)","O:-)","0:)","0:-)"],joy:[":')",":'-)",":,)",":,-)",":'D",":'-D",":,D",":,-D"],kissing:[":*",":-*"],laughing:["x-)","X-)"],neutral_face:[":|",":-|"],open_mouth:[":o",":-o",":O",":-O"],rage:[":@",":-@"],smile:[":D",":-D"],smiley:[":)",":-)"],smiling_imp:["]:)","]:-)"],sob:[":,'(",":,'-(",";(",";-("],stuck_out_tongue:[":P",":-P"],sunglasses:["8-)","B-)"],sweat:[",:(",",:-("],sweat_smile:[",:)",",:-)"],unamused:[":s",":-S",":z",":-Z",":$",":-$"],wink:[";)",";-)"]};function t(e,s){return e[s].content}function n(e,s){const n=function(e){let s=e.defs;e.enabled.length&&(s=Object.keys(s).reduce(((t,n)=>(e.enabled.indexOf(n)>=0&&(t[n]=s[n]),t)),{}));const t=Object.keys(e.shortcuts).reduce(((t,n)=>s[n]?Array.isArray(e.shortcuts[n])?(e.shortcuts[n].forEach((e=>{t[e]=n})),t):(t[e.shortcuts[n]]=n,t):t),{}),n=Object.keys(s);let i;i=0===n.length?"^$":n.map((e=>`:${e}:`)).concat(Object.keys(t)).sort().reverse().map((e=>e.replace(/[.?*+^$[\]\\(){}|-]/g,"\\$&"))).join("|");const a=RegExp(i),o=RegExp(i,"g");return{defs:s,shortcuts:t,scanRE:a,replaceRE:o}}(e.utils.assign({},{defs:{},shortcuts:{},enabled:[]},s||{}));e.renderer.rules.emoji=t,e.core.ruler.after("linkify","emoji",function(e,s,t,n,i){const a=e.utils.arrayReplaceAt,o=e.utils.lib.ucmicro,r=e.utils.has,c=new RegExp([o.Z.source,o.P.source,o.Cc.source].join("|"));function l(e,n,a){let o=0;const l=[];if(e.replace(i,(function(n,i,u){let _;if(r(t,n)){if(_=t[n],i>0&&!c.test(u[i-1]))return;if(i+n.length<u.length&&!c.test(u[i+n.length]))return}else _=n.slice(1,-1);if(i>o){const s=new a("text","",0);s.content=e.slice(o,i),l.push(s)}const h=new a("emoji","",0);h.markup=_,h.content=s[_],l.push(h),o=i+n.length})),o<e.length){const s=new a("text","",0);s.content=e.slice(o),l.push(s)}return l}return function(e){let s;const t=e.tokens;let i=0;for(let o=0,r=t.length;o<r;o++){if("inline"!==t[o].type)continue;let r=t[o].children;for(let c=r.length-1;c>=0;c--)s=r[c],"link_open"!==s.type&&"link_close"!==s.type||"auto"===s.info&&(i-=s.nesting),"text"===s.type&&0===i&&n.test(s.content)&&(t[o].children=r=a(r,c,l(s.content,s.level,e.Token)))}}}(e,n.defs,n.shortcuts,n.scanRE,n.replaceRE))}return function(t,i){const a={defs:e,shortcuts:s,enabled:[]},o=t.utils.assign({},a,i||{});n(t,o)}}));
|