Comparing version 4.1.4 to 4.2.0
@@ -481,6 +481,6 @@ export const __esModule: boolean; | ||
* `true`, anything with format "protocol:..." will be considered a link. | ||
* @param {string} protocol | ||
* @param {string} scheme | ||
* @param {boolean} [optionalSlashSlash] | ||
*/ | ||
export function registerCustomProtocol(scheme: any, optionalSlashSlash?: boolean): void; | ||
export function registerCustomProtocol(scheme: string, optionalSlashSlash?: boolean): void; | ||
/** | ||
@@ -575,2 +575,4 @@ * Register a linkify plugin | ||
UWORD: "UWORD"; | ||
ASCIINUMERICAL: "ASCIINUMERICAL"; | ||
ALPHANUMERICAL: "ALPHANUMERICAL"; | ||
LOCALHOST: "LOCALHOST"; | ||
@@ -577,0 +579,0 @@ TLD: "TLD"; |
@@ -480,6 +480,6 @@ export type Transition<T> = null | T; | ||
* `true`, anything with format "protocol:..." will be considered a link. | ||
* @param {string} protocol | ||
* @param {string} scheme | ||
* @param {boolean} [optionalSlashSlash] | ||
*/ | ||
export function registerCustomProtocol(scheme: any, optionalSlashSlash?: boolean): void; | ||
export function registerCustomProtocol(scheme: string, optionalSlashSlash?: boolean): void; | ||
/** | ||
@@ -574,2 +574,4 @@ * Register a linkify plugin | ||
UWORD: "UWORD"; | ||
ASCIINUMERICAL: "ASCIINUMERICAL"; | ||
ALPHANUMERICAL: "ALPHANUMERICAL"; | ||
LOCALHOST: "LOCALHOST"; | ||
@@ -576,0 +578,0 @@ TLD: "TLD"; |
@@ -357,2 +357,4 @@ // THIS FILE IS AUTOMATICALLY GENERATED DO NOT EDIT DIRECTLY | ||
const UWORD = 'UWORD'; // contains letters other than a-z, used for IDN | ||
const ASCIINUMERICAL = 'ASCIINUMERICAL'; // contains a-z, 0-9 | ||
const ALPHANUMERICAL = 'ALPHANUMERICAL'; // contains numbers and letters other than a-z, used for IDN | ||
@@ -385,3 +387,3 @@ // Special case of word | ||
// New line (unix style) | ||
const NL$1 = 'NL'; // \n | ||
const NL = 'NL'; // \n | ||
@@ -446,2 +448,4 @@ // Opening/closing bracket classes | ||
UWORD: UWORD, | ||
ASCIINUMERICAL: ASCIINUMERICAL, | ||
ALPHANUMERICAL: ALPHANUMERICAL, | ||
LOCALHOST: LOCALHOST, | ||
@@ -454,3 +458,3 @@ TLD: TLD, | ||
WS: WS, | ||
NL: NL$1, | ||
NL: NL, | ||
OPENBRACE: OPENBRACE, | ||
@@ -523,5 +527,7 @@ CLOSEBRACE: CLOSEBRACE, | ||
*/ | ||
const NL = '\n'; // New line character | ||
const CR = '\r'; // carriage-return character | ||
const LF = '\n'; // line-feed character | ||
const EMOJI_VARIATION = '\ufe0f'; // Variation selector, follows heart and others | ||
const EMOJI_JOINER = '\u200d'; // zero-width joiner | ||
const OBJECT_REPLACEMENT = '\ufffc'; // whitespace placeholder that sometimes appears in rich text editors | ||
@@ -612,2 +618,8 @@ let tlds = null, | ||
tr(Num, DIGIT, Num); | ||
const Asciinumeric = tr(Num, ASCII_LETTER, ASCIINUMERICAL, { | ||
[asciinumeric]: true | ||
}); | ||
const Alphanumeric = tr(Num, LETTER, ALPHANUMERICAL, { | ||
[alphanumeric]: true | ||
}); | ||
@@ -618,3 +630,6 @@ // State which emits a word token | ||
}); | ||
tr(Word, DIGIT, Asciinumeric); | ||
tr(Word, ASCII_LETTER, Word); | ||
tr(Asciinumeric, DIGIT, Asciinumeric); | ||
tr(Asciinumeric, ASCII_LETTER, Asciinumeric); | ||
@@ -626,3 +641,7 @@ // Same as previous, but specific to non-fsm.ascii alphabet words | ||
tr(UWord, ASCII_LETTER); // Non-accepting | ||
tr(UWord, DIGIT, Alphanumeric); | ||
tr(UWord, LETTER, UWord); | ||
tr(Alphanumeric, DIGIT, Alphanumeric); | ||
tr(Alphanumeric, ASCII_LETTER); // Non-accepting | ||
tr(Alphanumeric, LETTER, Alphanumeric); // Non-accepting | ||
@@ -632,10 +651,19 @@ // Whitespace jumps | ||
// If any whitespace except newline, more whitespace! | ||
const Ws = tr(Start, SPACE, WS, { | ||
const Nl = tt(Start, LF, NL, { | ||
[whitespace]: true | ||
}); | ||
tt(Start, NL, NL$1, { | ||
const Cr = tt(Start, CR, WS, { | ||
[whitespace]: true | ||
}); | ||
tt(Ws, NL); // non-accepting state to avoid mixing whitespaces | ||
const Ws = tr(Start, SPACE, WS, { | ||
[whitespace]: true | ||
}); | ||
tt(Start, OBJECT_REPLACEMENT, Ws); | ||
tt(Cr, LF, Nl); // \r\n | ||
tt(Cr, OBJECT_REPLACEMENT, Ws); | ||
tr(Cr, SPACE, Ws); | ||
tt(Ws, CR); // non-accepting state to avoid mixing whitespaces | ||
tt(Ws, LF); // non-accepting state to avoid mixing whitespaces | ||
tr(Ws, SPACE, Ws); | ||
tt(Ws, OBJECT_REPLACEMENT, Ws); | ||
@@ -647,2 +675,3 @@ // Emoji tokens. They are not grouped by the scanner except in cases where a | ||
}); | ||
tt(Emoji, '#'); // no transition, emoji regex seems to match # | ||
tr(Emoji, EMOJI, Emoji); | ||
@@ -653,2 +682,3 @@ tt(Emoji, EMOJI_VARIATION, Emoji); | ||
const EmojiJoiner = tt(Emoji, EMOJI_JOINER); | ||
tt(EmojiJoiner, '#'); | ||
tr(EmojiJoiner, EMOJI, Emoji); | ||
@@ -659,4 +689,4 @@ // tt(EmojiJoiner, EMOJI_VARIATION, Emoji); // also sketchy | ||
// Note that this is most accurate when tlds are in alphabetical order | ||
const wordjr = [[ASCII_LETTER, Word]]; | ||
const uwordjr = [[ASCII_LETTER, null], [LETTER, UWord]]; | ||
const wordjr = [[ASCII_LETTER, Word], [DIGIT, Asciinumeric]]; | ||
const uwordjr = [[ASCII_LETTER, null], [LETTER, UWord], [DIGIT, Alphanumeric]]; | ||
for (let i = 0; i < tlds.length; i++) { | ||
@@ -1368,3 +1398,3 @@ fastts(Start, tlds[i], TLD, WORD, wordjr); | ||
// Characters that cannot appear in the URL at all should be excluded | ||
const qsNonAccepting = [APOSTROPHE, COLON, COMMA, DOT, EXCLAMATION, QUERY, QUOTE, SEMI, OPENANGLEBRACKET, CLOSEANGLEBRACKET, OPENBRACE, CLOSEBRACE, CLOSEBRACKET, OPENBRACKET, OPENPAREN, CLOSEPAREN, FULLWIDTHLEFTPAREN, FULLWIDTHRIGHTPAREN, LEFTCORNERBRACKET, RIGHTCORNERBRACKET, LEFTWHITECORNERBRACKET, RIGHTWHITECORNERBRACKET, FULLWIDTHLESSTHAN, FULLWIDTHGREATERTHAN]; | ||
const qsNonAccepting = [COLON, COMMA, DOT, EXCLAMATION, PERCENT, QUERY, QUOTE, SEMI, OPENANGLEBRACKET, CLOSEANGLEBRACKET, OPENBRACE, CLOSEBRACE, CLOSEBRACKET, OPENBRACKET, OPENPAREN, CLOSEPAREN, FULLWIDTHLEFTPAREN, FULLWIDTHRIGHTPAREN, LEFTCORNERBRACKET, RIGHTCORNERBRACKET, LEFTWHITECORNERBRACKET, RIGHTWHITECORNERBRACKET, FULLWIDTHLESSTHAN, FULLWIDTHGREATERTHAN]; | ||
@@ -1414,2 +1444,3 @@ // For addresses without the mailto prefix | ||
const EmailDomainHyphen = tt(EmailDomain, HYPHEN); // parsed string starts with local email info + @ with a potential domain name | ||
tt(EmailDomainHyphen, HYPHEN, EmailDomainHyphen); | ||
ta(EmailDomainHyphen, groups.domain, EmailDomain); | ||
@@ -1429,2 +1460,3 @@ ta(Email$1, groups.domain, EmailDomain); | ||
const DomainDot = tt(Domain, DOT); // domain followed by DOT | ||
tt(DomainHyphen, HYPHEN, DomainHyphen); | ||
ta(DomainHyphen, groups.domain, Domain); | ||
@@ -1480,2 +1512,3 @@ ta(DomainDot, localpartAccepting, Localpart); | ||
tt(SchemeColon, SLASH, Url$1); | ||
tt(SchemeColon, QUERY, Url$1); | ||
ta(UriPrefix, groups.domain, Url$1); | ||
@@ -1529,3 +1562,3 @@ ta(UriPrefix, qsAccepting, Url$1); | ||
tt(Start, LOCALHOST, DomainDotTld); // localhost is a valid URL state | ||
tt(Start, NL$1, Nl); // single new line | ||
tt(Start, NL, Nl); // single new line | ||
@@ -1733,3 +1766,3 @@ return { | ||
* `true`, anything with format "protocol:..." will be considered a link. | ||
* @param {string} protocol | ||
* @param {string} scheme | ||
* @param {boolean} [optionalSlashSlash] | ||
@@ -1736,0 +1769,0 @@ */ |
@@ -1,1 +0,1 @@ | ||
var linkify=function(e){"use strict";const t=(e,t)=>{for(const n in t)e[n]=t[n];return e},n="numeric",i="ascii",r="alpha",s="asciinumeric",o="alphanumeric",a="domain",l="emoji",u="scheme",c="slashscheme",g="whitespace";function d(e,t){return e in t||(t[e]=[]),t[e]}function h(e,t,u){t[n]&&(t[s]=!0,t[o]=!0),t[i]&&(t[s]=!0,t[r]=!0),t[s]&&(t[o]=!0),t[r]&&(t[o]=!0),t[o]&&(t[a]=!0),t[l]&&(t[a]=!0);for(const n in t){const t=d(n,u);t.indexOf(e)<0&&t.push(e)}}function f(e=null){this.j={},this.jr=[],this.jd=null,this.t=e}f.groups={},f.prototype={accepts(){return!!this.t},go(e){const t=this,n=t.j[e];if(n)return n;for(let n=0;n<t.jr.length;n++){const i=t.jr[n][0],r=t.jr[n][1];if(r&&i.test(e))return r}return t.jd},has(e,t=!1){return t?e in this.j:!!this.go(e)},ta(e,t,n,i){for(let r=0;r<e.length;r++)this.tt(e[r],t,n,i)},tr(e,t,n,i){let r;return i=i||f.groups,t&&t.j?r=t:(r=new f(t),n&&i&&h(t,n,i)),this.jr.push([e,r]),r},ts(e,t,n,i){let r=this;const s=e.length;if(!s)return r;for(let t=0;t<s-1;t++)r=r.tt(e[t]);return r.tt(e[s-1],t,n,i)},tt(e,n,i,r){r=r||f.groups;const s=this;if(n&&n.j)return s.j[e]=n,n;const o=n;let a,l=s.go(e);if(l?(a=new f,t(a.j,l.j),a.jr.push.apply(a.jr,l.jr),a.jd=l.jd,a.t=l.t):a=new f,o){if(r)if(a.t&&"string"==typeof a.t){const e=t(function(e,t){const n={};for(const i in t)t[i].indexOf(e)>=0&&(n[i]=!0);return n}(a.t,r),i);h(o,e,r)}else i&&h(o,i,r);a.t=o}return s.j[e]=a,a}};const p=(e,t,n,i,r)=>e.ta(t,n,i,r),m=(e,t,n,i,r)=>e.tr(t,n,i,r),y=(e,t,n,i,r)=>e.ts(t,n,i,r),k=(e,t,n,i,r)=>e.tt(t,n,i,r),E="WORD",b="UWORD",T="LOCALHOST",L="TLD",R="UTLD",A="SCHEME",O="SLASH_SCHEME",v="NUM",C="NL",w="OPENBRACE",S="CLOSEBRACE",j="OPENBRACKET",N="CLOSEBRACKET",I="OPENPAREN",x="CLOSEPAREN",H="OPENANGLEBRACKET",P="CLOSEANGLEBRACKET",z="FULLWIDTHLEFTPAREN",D="FULLWIDTHRIGHTPAREN",U="LEFTCORNERBRACKET",M="RIGHTCORNERBRACKET",B="LEFTWHITECORNERBRACKET",K="RIGHTWHITECORNERBRACKET",F="FULLWIDTHLESSTHAN",_="FULLWIDTHGREATERTHAN",Q="AMPERSAND",W="APOSTROPHE",$="ASTERISK",G="AT",q="BACKSLASH",Y="BACKTICK",J="CARET",X="COLON",V="COMMA",Z="DOLLAR",ee="DOT",te="EQUALS",ne="EXCLAMATION",ie="HYPHEN",re="PERCENT",se="PIPE",oe="PLUS",ae="POUND",le="QUERY",ue="QUOTE",ce="FULLWIDTHMIDDLEDOT",ge="SEMI",de="SLASH",he="TILDE",fe="UNDERSCORE",pe="EMOJI",me="SYM";var ye=Object.freeze({__proto__:null,WORD:E,UWORD:b,LOCALHOST:T,TLD:L,UTLD:R,SCHEME:A,SLASH_SCHEME:O,NUM:v,WS:"WS",NL:C,OPENBRACE:w,CLOSEBRACE:S,OPENBRACKET:j,CLOSEBRACKET:N,OPENPAREN:I,CLOSEPAREN:x,OPENANGLEBRACKET:H,CLOSEANGLEBRACKET:P,FULLWIDTHLEFTPAREN:z,FULLWIDTHRIGHTPAREN:D,LEFTCORNERBRACKET:U,RIGHTCORNERBRACKET:M,LEFTWHITECORNERBRACKET:B,RIGHTWHITECORNERBRACKET:K,FULLWIDTHLESSTHAN:F,FULLWIDTHGREATERTHAN:_,AMPERSAND:Q,APOSTROPHE:W,ASTERISK:$,AT:G,BACKSLASH:q,BACKTICK:Y,CARET:J,COLON:X,COMMA:V,DOLLAR:Z,DOT:ee,EQUALS:te,EXCLAMATION:ne,HYPHEN:ie,PERCENT:re,PIPE:se,PLUS:oe,POUND:ae,QUERY:le,QUOTE:ue,FULLWIDTHMIDDLEDOT:ce,SEMI:ge,SLASH:de,TILDE:he,UNDERSCORE:fe,EMOJI:pe,SYM:me});const ke=/[a-z]/,Ee=/\p{L}/u,be=/\p{Emoji}/u,Te=/\d/,Le=/\s/;var Re=Object.freeze({__proto__:null,ASCII_LETTER:ke,LETTER:Ee,EMOJI:be,EMOJI_VARIATION:/\ufe0f/,DIGIT:Te,SPACE:Le});let Ae=null,Oe=null;function ve(e,t){const n=Ce(t.replace(/[A-Z]/g,(e=>e.toLowerCase()))),i=n.length,r=[];let s=0,o=0;for(;o<i;){let a=e,l=null,u=0,c=null,g=-1,d=-1;for(;o<i&&(l=a.go(n[o]));)a=l,a.accepts()?(g=0,d=0,c=a):g>=0&&(g+=n[o].length,d++),u+=n[o].length,s+=n[o].length,o++;s-=g,o-=d,u-=g,r.push({t:c.t,v:t.slice(s-u,s),s:s-u,e:s})}return r}function Ce(e){const t=[],n=e.length;let i=0;for(;i<n;){let r,s=e.charCodeAt(i),o=s<55296||s>56319||i+1===n||(r=e.charCodeAt(i+1))<56320||r>57343?e[i]:e.slice(i,i+2);t.push(o),i+=o.length}return t}function we(e,t,n,i,r){let s;const o=t.length;for(let n=0;n<o-1;n++){const o=t[n];e.j[o]?s=e.j[o]:(s=new f(i),s.jr=r.slice(),e.j[o]=s),e=s}return s=new f(n),s.jr=r.slice(),e.j[t[o-1]]=s,s}function Se(e){const t=[],n=[];let i=0;for(;i<e.length;){let r=0;for(;"0123456789".indexOf(e[i+r])>=0;)r++;if(r>0){t.push(n.join(""));for(let t=parseInt(e.substring(i,i+r),10);t>0;t--)n.pop();i+=r}else n.push(e[i]),i++}return t}const je={defaultProtocol:"http",events:null,format:Ie,formatHref:Ie,nl2br:!1,tagName:"a",target:null,rel:null,validate:!0,truncate:1/0,className:null,attributes:null,ignoreTags:[],render:null};function Ne(e,n=null){let i=t({},je);e&&(i=t(i,e instanceof Ne?e.o:e));const r=i.ignoreTags,s=[];for(let e=0;e<r.length;e++)s.push(r[e].toUpperCase());this.o=i,n&&(this.defaultRender=n),this.ignoreTags=s}function Ie(e){return e}Ne.prototype={o:je,ignoreTags:[],defaultRender:e=>e,check(e){return this.get("validate",e.toString(),e)},get(e,t,n){const i=null!=t;let r=this.o[e];return r?("object"==typeof r?(r=n.t in r?r[n.t]:je[e],"function"==typeof r&&i&&(r=r(t,n))):"function"==typeof r&&i&&(r=r(t,n.t,n)),r):r},getObj(e,t,n){let i=this.o[e];return"function"==typeof i&&null!=t&&(i=i(t,n.t,n)),i},render(e){const t=e.render(this);return(this.get("render",null,e)||this.defaultRender)(t,e.t,e)}};var xe=Object.freeze({__proto__:null,defaults:je,Options:Ne,assign:t});function He(e,t){this.t="token",this.v=e,this.tk=t}function Pe(e,t){class n extends He{constructor(t,n){super(t,n),this.t=e}}for(const e in t)n.prototype[e]=t[e];return n.t=e,n}He.prototype={isLink:!1,toString(){return this.v},toHref(e){return this.toString()},toFormattedString(e){const t=this.toString(),n=e.get("truncate",t,this),i=e.get("format",t,this);return n&&i.length>n?i.substring(0,n)+"…":i},toFormattedHref(e){return e.get("formatHref",this.toHref(e.get("defaultProtocol")),this)},startIndex(){return this.tk[0].s},endIndex(){return this.tk[this.tk.length-1].e},toObject(e=je.defaultProtocol){return{type:this.t,value:this.toString(),isLink:this.isLink,href:this.toHref(e),start:this.startIndex(),end:this.endIndex()}},toFormattedObject(e){return{type:this.t,value:this.toFormattedString(e),isLink:this.isLink,href:this.toFormattedHref(e),start:this.startIndex(),end:this.endIndex()}},validate(e){return e.get("validate",this.toString(),this)},render(e){const n=this,i=this.toHref(e.get("defaultProtocol")),r=e.get("formatHref",i,this),s=e.get("tagName",i,n),o=this.toFormattedString(e),a={},l=e.get("className",i,n),u=e.get("target",i,n),c=e.get("rel",i,n),g=e.getObj("attributes",i,n),d=e.getObj("events",i,n);return a.href=r,l&&(a.class=l),u&&(a.target=u),c&&(a.rel=c),g&&t(a,g),{tagName:s,attributes:a,content:o,eventListeners:d}}};const ze=Pe("email",{isLink:!0,toHref(){return"mailto:"+this.toString()}}),De=Pe("text"),Ue=Pe("nl"),Me=Pe("url",{isLink:!0,toHref(e=je.defaultProtocol){return this.hasProtocol()?this.v:`${e}://${this.v}`},hasProtocol(){const e=this.tk;return e.length>=2&&e[0].t!==T&&e[1].t===X}});var Be=Object.freeze({__proto__:null,MultiToken:He,Base:He,createTokenClass:Pe,Email:ze,Text:De,Nl:Ue,Url:Me});const Ke=e=>new f(e);function Fe(e,t,n){const i=n[0].s,r=n[n.length-1].e;return new e(t.slice(i,r),n)}const _e="undefined"!=typeof console&&console&&console.warn||(()=>{}),Qe="until manual call of linkify.init(). Register all schemes and plugins before invoking linkify the first time.",We={scanner:null,parser:null,tokenQueue:[],pluginQueue:[],customSchemes:[],initialized:!1};function $e(){We.scanner=function(e=[]){const o={};f.groups=o;const d=new f;null==Ae&&(Ae=Se("aaa1rp3bb0ott3vie4c1le2ogado5udhabi7c0ademy5centure6ountant0s9o1tor4d0s1ult4e0g1ro2tna4f0l1rica5g0akhan5ency5i0g1rbus3force5tel5kdn3l0ibaba4pay4lfinanz6state5y2sace3tom5m0azon4ericanexpress7family11x2fam3ica3sterdam8nalytics7droid5quan4z2o0l2partments8p0le4q0uarelle8r0ab1mco4chi3my2pa2t0e3s0da2ia2sociates9t0hleta5torney7u0ction5di0ble3o3spost5thor3o0s4w0s2x0a2z0ure5ba0by2idu3namex4d1k2r0celona5laycard4s5efoot5gains6seball5ketball8uhaus5yern5b0c1t1va3cg1n2d1e0ats2uty4er2ntley5rlin4st0buy5t2f1g1h0arti5i0ble3d1ke2ng0o3o1z2j1lack0friday9ockbuster8g1omberg7ue3m0s1w2n0pparibas9o0ats3ehringer8fa2m1nd2o0k0ing5sch2tik2on4t1utique6x2r0adesco6idgestone9oadway5ker3ther5ussels7s1t1uild0ers6siness6y1zz3v1w1y1z0h3ca0b1fe2l0l1vinklein9m0era3p2non3petown5ital0one8r0avan4ds2e0er0s4s2sa1e1h1ino4t0ering5holic7ba1n1re3c1d1enter4o1rn3f0a1d2g1h0anel2nel4rity4se2t2eap3intai5ristmas6ome4urch5i0priani6rcle4sco3tadel4i0c2y3k1l0aims4eaning6ick2nic1que6othing5ud3ub0med6m1n1o0ach3des3ffee4llege4ogne5m0mbank4unity6pany2re3uter5sec4ndos3struction8ulting7tact3ractors9oking4l1p2rsica5untry4pon0s4rses6pa2r0edit0card4union9icket5own3s1uise0s6u0isinella9v1w1x1y0mru3ou3z2dad1nce3ta1e1ing3sun4y2clk3ds2e0al0er2s3gree4livery5l1oitte5ta3mocrat6ntal2ist5si0gn4v2hl2iamonds6et2gital5rect0ory7scount3ver5h2y2j1k1m1np2o0cs1tor4g1mains5t1wnload7rive4tv2ubai3nlop4pont4rban5vag2r2z2earth3t2c0o2deka3u0cation8e1g1mail3erck5nergy4gineer0ing9terprises10pson4quipment8r0icsson6ni3s0q1tate5t1u0rovision8s2vents5xchange6pert3osed4ress5traspace10fage2il1rwinds6th3mily4n0s2rm0ers5shion4t3edex3edback6rrari3ero6i0delity5o2lm2nal1nce1ial7re0stone6mdale6sh0ing5t0ness6j1k1lickr3ghts4r2orist4wers5y2m1o0o0d1tball6rd1ex2sale4um3undation8x2r0ee1senius7l1ogans4ntier7tr2ujitsu5n0d2rniture7tbol5yi3ga0l0lery3o1up4me0s3p1rden4y2b0iz3d0n2e0a1nt0ing5orge5f1g0ee3h1i0ft0s3ves2ing5l0ass3e1obal2o4m0ail3bh2o1x2n1odaddy5ld0point6f2o0dyear5g0le4p1t1v2p1q1r0ainger5phics5tis4een3ipe3ocery4up4s1t1u0cci3ge2ide2tars5ru3w1y2hair2mburg5ngout5us3bo2dfc0bank7ealth0care8lp1sinki6re1mes5iphop4samitsu7tachi5v2k0t2m1n1ockey4ldings5iday5medepot5goods5s0ense7nda3rse3spital5t0ing5t0els3mail5use3w2r1sbc3t1u0ghes5yatt3undai7ibm2cbc2e1u2d1e0ee3fm2kano4l1m0amat4db2mo0bilien9n0c1dustries8finiti5o2g1k1stitute6urance4e4t0ernational10uit4vestments10o1piranga7q1r0ish4s0maili5t0anbul7t0au2v3jaguar4va3cb2e0ep2tzt3welry6io2ll2m0p2nj2o0bs1urg4t1y2p0morgan6rs3uegos4niper7kaufen5ddi3e0rryhotels6logistics9properties14fh2g1h1i0a1ds2m1ndle4tchen5wi3m1n1oeln3matsu5sher5p0mg2n2r0d1ed3uokgroup8w1y0oto4z2la0caixa5mborghini8er3ncaster6d0rover6xess5salle5t0ino3robe5w0yer5b1c1ds2ease3clerc5frak4gal2o2xus4gbt3i0dl2fe0insurance9style7ghting6ke2lly3mited4o2ncoln4k2psy3ve1ing5k1lc1p2oan0s3cker3us3l1ndon4tte1o3ve3pl0financial11r1s1t0d0a3u0ndbeck6xe1ury5v1y2ma0drid4if1son4keup4n0agement7go3p1rket0ing3s4riott5shalls7ttel5ba2c0kinsey7d1e0d0ia3et2lbourne7me1orial6n0u2rckmsd7g1h1iami3crosoft7l1ni1t2t0subishi9k1l0b1s2m0a2n1o0bi0le4da2e1i1m1nash3ey2ster5rmon3tgage6scow4to0rcycles9v0ie4p1q1r1s0d2t0n1r2u0seum3ic4v1w1x1y1z2na0b1goya4me2vy3ba2c1e0c1t0bank4flix4work5ustar5w0s2xt0direct7us4f0l2g0o2hk2i0co2ke1on3nja3ssan1y5l1o0kia3rton4w0ruz3tv4p1r0a1w2tt2u1yc2z2obi1server7ffice5kinawa6layan0group9lo3m0ega4ne1g1l0ine5oo2pen3racle3nge4g0anic5igins6saka4tsuka4t2vh3pa0ge2nasonic7ris2s1tners4s1y3y2ccw3e0t2f0izer5g1h0armacy6d1ilips5one2to0graphy6s4ysio5ics1tet2ures6d1n0g1k2oneer5zza4k1l0ace2y0station9umbing5s3m1n0c2ohl2ker3litie5rn2st3r0america6xi3ess3ime3o0d0uctions8f1gressive8mo2perties3y5tection8u0dential9s1t1ub2w0c2y2qa1pon3uebec3st5racing4dio4e0ad1lestate6tor2y4cipes5d0stone5umbrella9hab3ise0n3t2liance6n0t0als5pair3ort3ublican8st0aurant8view0s5xroth6ich0ardli6oh3l1o1p2o0cks3deo3gers4om3s0vp3u0gby3hr2n2w0e2yukyu6sa0arland6fe0ty4kura4le1on3msclub4ung5ndvik0coromant12ofi4p1rl2s1ve2xo3b0i1s2c0b1haeffler7midt4olarships8ol3ule3warz5ience5ot3d1e0arch3t2cure1ity6ek2lect4ner3rvices6ven3w1x0y3fr2g1h0angrila6rp3ell3ia1ksha5oes2p0ping5uji3w3i0lk2na1gles5te3j1k0i0n2y0pe4l0ing4m0art3ile4n0cf3o0ccer3ial4ftbank4ware6hu2lar2utions7ng1y2y2pa0ce3ort2t3r0l2s1t0ada2ples4r1tebank4farm7c0group6ockholm6rage3e3ream4udio2y3yle4u0cks3pplies3y2ort5rf1gery5zuki5v1watch4iss4x1y0dney4stems6z2tab1ipei4lk2obao4rget4tamotors6r2too4x0i3c0i2d0k2eam2ch0nology8l1masek5nnis4va3f1g1h0d1eater2re6iaa2ckets5enda4ps2res2ol4j0maxx4x2k0maxx5l1m0all4n1o0day3kyo3ols3p1ray3shiba5tal3urs3wn2yota3s3r0ade1ing4ining5vel0ers0insurance16ust3v2t1ube2i1nes3shu4v0s2w1z2ua1bank3s2g1k1nicom3versity8o2ol2ps2s1y1z2va0cations7na1guard7c1e0gas3ntures6risign5mögensberater2ung14sicherung10t2g1i0ajes4deo3g1king4llas4n1p1rgin4sa1ion4va1o3laanderen9n1odka3lvo3te1ing3o2yage5u2wales2mart4ter4ng0gou5tch0es6eather0channel12bcam3er2site5d0ding5ibo2r3f1hoswho6ien2ki2lliamhill9n0dows4e1ners6me2olterskluwer11odside6rk0s2ld3w2s1tc1f3xbox3erox4ihuan4n2xx2yz3yachts4hoo3maxun5ndex5e1odobashi7ga2kohama6u0tube6t1un3za0ppos4ra3ero3ip2m1one3uerich6w2")),null==Oe&&(Oe=Se("ελ1υ2бг1ел3дети4ею2католик6ом3мкд2он1сква6онлайн5рг3рус2ф2сайт3рб3укр3қаз3հայ3ישראל5קום3ابوظبي5رامكو5لاردن4بحرين5جزائر5سعودية6عليان5مغرب5مارات5یران5بارت2زار4يتك3ھارت5تونس4سودان3رية5شبكة4عراق2ب2مان4فلسطين6قطر3كاثوليك6وم3مصر2ليسيا5وريتانيا7قع4همراه5پاکستان7ڀارت4कॉम3नेट3भारत0म्3ोत5संगठन5বাংলা5ভারত2ৰত4ਭਾਰਤ4ભારત4ଭାରତ4இந்தியா6லங்கை6சிங்கப்பூர்11భారత్5ಭಾರತ4ഭാരതം5ලංකා4คอม3ไทย3ລາວ3გე2みんな3アマゾン4クラウド4グーグル4コム2ストア3セール3ファッション6ポイント4世界2中信1国1國1文网3亚马逊3企业2佛山2信息2健康2八卦2公司1益2台湾1灣2商城1店1标2嘉里0大酒店5在线2大拿2天主教3娱乐2家電2广东2微博2慈善2我爱你3手机2招聘2政务1府2新加坡2闻2时尚2書籍2机构2淡马锡3游戏2澳門2点看2移动2组织机构4网址1店1站1络2联通2谷歌2购物2通販2集团2電訊盈科4飞利浦3食品2餐厅2香格里拉3港2닷넷1컴2삼성2한국2")),k(d,"'",W),k(d,"{",w),k(d,"}",S),k(d,"[",j),k(d,"]",N),k(d,"(",I),k(d,")",x),k(d,"<",H),k(d,">",P),k(d,"(",z),k(d,")",D),k(d,"「",U),k(d,"」",M),k(d,"『",B),k(d,"』",K),k(d,"<",F),k(d,">",_),k(d,"&",Q),k(d,"*",$),k(d,"@",G),k(d,"`",Y),k(d,"^",J),k(d,":",X),k(d,",",V),k(d,"$",Z),k(d,".",ee),k(d,"=",te),k(d,"!",ne),k(d,"-",ie),k(d,"%",re),k(d,"|",se),k(d,"+",oe),k(d,"#",ae),k(d,"?",le),k(d,'"',ue),k(d,"/",de),k(d,";",ge),k(d,"~",he),k(d,"_",fe),k(d,"\\",q),k(d,"・",ce);const p=m(d,Te,v,{[n]:!0});m(p,Te,p);const Re=m(d,ke,E,{[i]:!0});m(Re,ke,Re);const ve=m(d,Ee,b,{[r]:!0});m(ve,ke),m(ve,Ee,ve);const Ce=m(d,Le,"WS",{[g]:!0});k(d,"\n",C,{[g]:!0}),k(Ce,"\n"),m(Ce,Le,Ce);const je=m(d,be,pe,{[l]:!0});m(je,be,je),k(je,"️",je);const Ne=k(je,"");m(Ne,be,je);const Ie=[[ke,Re]],xe=[[ke,null],[Ee,ve]];for(let e=0;e<Ae.length;e++)we(d,Ae[e],L,E,Ie);for(let e=0;e<Oe.length;e++)we(d,Oe[e],R,b,xe);h(L,{tld:!0,ascii:!0},o),h(R,{utld:!0,alpha:!0},o),we(d,"file",A,E,Ie),we(d,"mailto",A,E,Ie),we(d,"http",O,E,Ie),we(d,"https",O,E,Ie),we(d,"ftp",O,E,Ie),we(d,"ftps",O,E,Ie),h(A,{scheme:!0,ascii:!0},o),h(O,{slashscheme:!0,ascii:!0},o),e=e.sort(((e,t)=>e[0]>t[0]?1:-1));for(let t=0;t<e.length;t++){const r=e[t][0],o=e[t][1]?{[u]:!0}:{[c]:!0};r.indexOf("-")>=0?o[a]=!0:ke.test(r)?Te.test(r)?o[s]=!0:o[i]=!0:o[n]=!0,y(d,r,r,o)}return y(d,"localhost",T,{ascii:!0}),d.jd=new f(me),{start:d,tokens:t({groups:o},ye)}}(We.customSchemes);for(let e=0;e<We.tokenQueue.length;e++)We.tokenQueue[e][1]({scanner:We.scanner});We.parser=function({groups:e}){const t=e.domain.concat([Q,$,G,q,Y,J,Z,te,ie,v,re,se,oe,ae,de,me,he,fe]),n=[W,X,V,ee,ne,le,ue,ge,H,P,w,S,N,j,I,x,z,D,U,M,B,K,F,_],i=[Q,W,$,q,Y,J,Z,te,ie,w,S,re,se,oe,ae,le,de,me,he,fe],r=Ke(),s=k(r,he);p(s,i,s),p(s,e.domain,s);const o=Ke(),a=Ke(),l=Ke();p(r,e.domain,o),p(r,e.scheme,a),p(r,e.slashscheme,l),p(o,i,s),p(o,e.domain,o);const u=k(o,G);k(s,G,u),k(a,G,u),k(l,G,u);const c=k(s,ee);p(c,i,s),p(c,e.domain,s);const g=Ke();p(u,e.domain,g),p(g,e.domain,g);const d=k(g,ee);p(d,e.domain,g);const h=Ke(ze);p(d,e.tld,h),p(d,e.utld,h),k(u,T,h);const f=k(g,ie);p(f,e.domain,g),p(h,e.domain,g),k(h,ee,d),k(h,ie,f);const m=k(h,X);p(m,e.numeric,ze);const y=k(o,ie),E=k(o,ee);p(y,e.domain,o),p(E,i,s),p(E,e.domain,o);const b=Ke(Me);p(E,e.tld,b),p(E,e.utld,b),p(b,e.domain,o),p(b,i,s),k(b,ee,E),k(b,ie,y),k(b,G,u);const L=k(b,X),R=Ke(Me);p(L,e.numeric,R);const A=Ke(Me),O=Ke();p(A,t,A),p(A,n,O),p(O,t,A),p(O,n,O),k(b,de,A),k(R,de,A);const ce=k(a,X),pe=k(l,X),ke=k(pe,de),Ee=k(ke,de);p(a,e.domain,o),k(a,ee,E),k(a,ie,y),p(l,e.domain,o),k(l,ee,E),k(l,ie,y),p(ce,e.domain,A),k(ce,de,A),p(Ee,e.domain,A),p(Ee,t,A),k(Ee,de,A);const be=[[w,S],[j,N],[I,x],[H,P],[z,D],[U,M],[B,K],[F,_]];for(let e=0;e<be.length;e++){const[i,r]=be[e],s=k(A,i);k(O,i,s),k(s,r,A);const o=Ke(Me);p(s,t,o);const a=Ke();p(s,n),p(o,t,o),p(o,n,a),p(a,t,o),p(a,n,a),k(o,r,A),k(a,r,A)}return k(r,T,b),k(r,C,Ue),{start:r,tokens:ye}}(We.scanner.tokens);for(let e=0;e<We.pluginQueue.length;e++)We.pluginQueue[e][1]({scanner:We.scanner,parser:We.parser});return We.initialized=!0,We}function Ge(e){return We.initialized||$e(),function(e,t,n){let i=n.length,r=0,s=[],o=[];for(;r<i;){let a=e,l=null,u=null,c=0,g=null,d=-1;for(;r<i&&!(l=a.go(n[r].t));)o.push(n[r++]);for(;r<i&&(u=l||a.go(n[r].t));)l=null,a=u,a.accepts()?(d=0,g=a):d>=0&&d++,r++,c++;if(d<0)r-=c,r<i&&(o.push(n[r]),r++);else{o.length>0&&(s.push(Fe(De,t,o)),o=[]),r-=d,c-=d;const e=g.t,i=n.slice(r-c,r);s.push(Fe(e,t,i))}}return o.length>0&&s.push(Fe(De,t,o)),s}(We.parser.start,e,ve(We.scanner.start,e))}return Ge.scan=ve,e.MultiToken=He,e.Options=Ne,e.State=f,e.createTokenClass=Pe,e.find=function(e,t=null,n=null){if(t&&"object"==typeof t){if(n)throw Error(`linkifyjs: Invalid link type ${t}; must be a string`);n=t,t=null}const i=new Ne(n),r=Ge(e),s=[];for(let e=0;e<r.length;e++){const n=r[e];!n.isLink||t&&n.t!==t||!i.check(n)||s.push(n.toFormattedObject(i))}return s},e.init=$e,e.multi=Be,e.options=xe,e.regexp=Re,e.registerCustomProtocol=function(e,t=!1){if(We.initialized&&_e(`linkifyjs: already initialized - will not register custom scheme "${e}" ${Qe}`),!/^[0-9a-z]+(-[0-9a-z]+)*$/.test(e))throw new Error('linkifyjs: incorrect scheme format.\n1. Must only contain digits, lowercase ASCII letters or "-"\n2. Cannot start or end with "-"\n3. "-" cannot repeat');We.customSchemes.push([e,t])},e.registerPlugin=function(e,t){if("function"!=typeof t)throw new Error(`linkifyjs: Invalid plugin ${t} (expects function)`);for(let n=0;n<We.pluginQueue.length;n++)if(e===We.pluginQueue[n][0])return _e(`linkifyjs: plugin "${e}" already registered - will be overwritten`),void(We.pluginQueue[n]=[e,t]);We.pluginQueue.push([e,t]),We.initialized&&_e(`linkifyjs: already initialized - will not register plugin "${e}" ${Qe}`)},e.registerTokenPlugin=function(e,t){if("function"!=typeof t)throw new Error(`linkifyjs: Invalid token plugin ${t} (expects function)`);for(let n=0;n<We.tokenQueue.length;n++)if(e===We.tokenQueue[n][0])return _e(`linkifyjs: token plugin "${e}" already registered - will be overwritten`),void(We.tokenQueue[n]=[e,t]);We.tokenQueue.push([e,t]),We.initialized&&_e(`linkifyjs: already initialized - will not register token plugin "${e}" ${Qe}`)},e.reset=function(){return f.groups={},We.scanner=null,We.parser=null,We.tokenQueue=[],We.pluginQueue=[],We.customSchemes=[],We.initialized=!1,We},e.stringToArray=Ce,e.test=function(e,t=null){const n=Ge(e);return 1===n.length&&n[0].isLink&&(!t||n[0].t===t)},e.text=Be,e.tokenize=Ge,Object.defineProperty(e,"__esModule",{value:!0}),e}({}); | ||
var linkify=function(e){"use strict";const t=(e,t)=>{for(const n in t)e[n]=t[n];return e},n="numeric",i="ascii",r="alpha",s="asciinumeric",o="alphanumeric",a="domain",l="emoji",u="scheme",c="slashscheme",g="whitespace";function d(e,t){return e in t||(t[e]=[]),t[e]}function h(e,t,u){t[n]&&(t[s]=!0,t[o]=!0),t[i]&&(t[s]=!0,t[r]=!0),t[s]&&(t[o]=!0),t[r]&&(t[o]=!0),t[o]&&(t[a]=!0),t[l]&&(t[a]=!0);for(const n in t){const t=d(n,u);t.indexOf(e)<0&&t.push(e)}}function f(e=null){this.j={},this.jr=[],this.jd=null,this.t=e}f.groups={},f.prototype={accepts(){return!!this.t},go(e){const t=this,n=t.j[e];if(n)return n;for(let n=0;n<t.jr.length;n++){const i=t.jr[n][0],r=t.jr[n][1];if(r&&i.test(e))return r}return t.jd},has(e,t=!1){return t?e in this.j:!!this.go(e)},ta(e,t,n,i){for(let r=0;r<e.length;r++)this.tt(e[r],t,n,i)},tr(e,t,n,i){let r;return i=i||f.groups,t&&t.j?r=t:(r=new f(t),n&&i&&h(t,n,i)),this.jr.push([e,r]),r},ts(e,t,n,i){let r=this;const s=e.length;if(!s)return r;for(let t=0;t<s-1;t++)r=r.tt(e[t]);return r.tt(e[s-1],t,n,i)},tt(e,n,i,r){r=r||f.groups;const s=this;if(n&&n.j)return s.j[e]=n,n;const o=n;let a,l=s.go(e);if(l?(a=new f,t(a.j,l.j),a.jr.push.apply(a.jr,l.jr),a.jd=l.jd,a.t=l.t):a=new f,o){if(r)if(a.t&&"string"==typeof a.t){const e=t(function(e,t){const n={};for(const i in t)t[i].indexOf(e)>=0&&(n[i]=!0);return n}(a.t,r),i);h(o,e,r)}else i&&h(o,i,r);a.t=o}return s.j[e]=a,a}};const p=(e,t,n,i,r)=>e.ta(t,n,i,r),m=(e,t,n,i,r)=>e.tr(t,n,i,r),E=(e,t,n,i,r)=>e.ts(t,n,i,r),y=(e,t,n,i,r)=>e.tt(t,n,i,r),k="WORD",b="UWORD",T="ASCIINUMERICAL",L="ALPHANUMERICAL",A="LOCALHOST",R="TLD",O="UTLD",C="SCHEME",v="SLASH_SCHEME",S="NUM",w="WS",j="NL",I="OPENBRACE",N="CLOSEBRACE",H="OPENBRACKET",x="CLOSEBRACKET",P="OPENPAREN",z="CLOSEPAREN",D="OPENANGLEBRACKET",U="CLOSEANGLEBRACKET",M="FULLWIDTHLEFTPAREN",B="FULLWIDTHRIGHTPAREN",K="LEFTCORNERBRACKET",F="RIGHTCORNERBRACKET",_="LEFTWHITECORNERBRACKET",Q="RIGHTWHITECORNERBRACKET",W="FULLWIDTHLESSTHAN",$="FULLWIDTHGREATERTHAN",G="AMPERSAND",q="APOSTROPHE",Y="ASTERISK",J="AT",X="BACKSLASH",V="BACKTICK",Z="CARET",ee="COLON",te="COMMA",ne="DOLLAR",ie="DOT",re="EQUALS",se="EXCLAMATION",oe="HYPHEN",ae="PERCENT",le="PIPE",ue="PLUS",ce="POUND",ge="QUERY",de="QUOTE",he="FULLWIDTHMIDDLEDOT",fe="SEMI",pe="SLASH",me="TILDE",Ee="UNDERSCORE",ye="EMOJI",ke="SYM";var be=Object.freeze({__proto__:null,WORD:k,UWORD:b,ASCIINUMERICAL:T,ALPHANUMERICAL:L,LOCALHOST:A,TLD:R,UTLD:O,SCHEME:C,SLASH_SCHEME:v,NUM:S,WS:w,NL:j,OPENBRACE:I,CLOSEBRACE:N,OPENBRACKET:H,CLOSEBRACKET:x,OPENPAREN:P,CLOSEPAREN:z,OPENANGLEBRACKET:D,CLOSEANGLEBRACKET:U,FULLWIDTHLEFTPAREN:M,FULLWIDTHRIGHTPAREN:B,LEFTCORNERBRACKET:K,RIGHTCORNERBRACKET:F,LEFTWHITECORNERBRACKET:_,RIGHTWHITECORNERBRACKET:Q,FULLWIDTHLESSTHAN:W,FULLWIDTHGREATERTHAN:$,AMPERSAND:G,APOSTROPHE:q,ASTERISK:Y,AT:J,BACKSLASH:X,BACKTICK:V,CARET:Z,COLON:ee,COMMA:te,DOLLAR:ne,DOT:ie,EQUALS:re,EXCLAMATION:se,HYPHEN:oe,PERCENT:ae,PIPE:le,PLUS:ue,POUND:ce,QUERY:ge,QUOTE:de,FULLWIDTHMIDDLEDOT:he,SEMI:fe,SLASH:pe,TILDE:me,UNDERSCORE:Ee,EMOJI:ye,SYM:ke});const Te=/[a-z]/,Le=/\p{L}/u,Ae=/\p{Emoji}/u,Re=/\d/,Oe=/\s/;var Ce=Object.freeze({__proto__:null,ASCII_LETTER:Te,LETTER:Le,EMOJI:Ae,EMOJI_VARIATION:/\ufe0f/,DIGIT:Re,SPACE:Oe});let ve=null,Se=null;function we(e,t){const n=je(t.replace(/[A-Z]/g,(e=>e.toLowerCase()))),i=n.length,r=[];let s=0,o=0;for(;o<i;){let a=e,l=null,u=0,c=null,g=-1,d=-1;for(;o<i&&(l=a.go(n[o]));)a=l,a.accepts()?(g=0,d=0,c=a):g>=0&&(g+=n[o].length,d++),u+=n[o].length,s+=n[o].length,o++;s-=g,o-=d,u-=g,r.push({t:c.t,v:t.slice(s-u,s),s:s-u,e:s})}return r}function je(e){const t=[],n=e.length;let i=0;for(;i<n;){let r,s=e.charCodeAt(i),o=s<55296||s>56319||i+1===n||(r=e.charCodeAt(i+1))<56320||r>57343?e[i]:e.slice(i,i+2);t.push(o),i+=o.length}return t}function Ie(e,t,n,i,r){let s;const o=t.length;for(let n=0;n<o-1;n++){const o=t[n];e.j[o]?s=e.j[o]:(s=new f(i),s.jr=r.slice(),e.j[o]=s),e=s}return s=new f(n),s.jr=r.slice(),e.j[t[o-1]]=s,s}function Ne(e){const t=[],n=[];let i=0;for(;i<e.length;){let r=0;for(;"0123456789".indexOf(e[i+r])>=0;)r++;if(r>0){t.push(n.join(""));for(let t=parseInt(e.substring(i,i+r),10);t>0;t--)n.pop();i+=r}else n.push(e[i]),i++}return t}const He={defaultProtocol:"http",events:null,format:Pe,formatHref:Pe,nl2br:!1,tagName:"a",target:null,rel:null,validate:!0,truncate:1/0,className:null,attributes:null,ignoreTags:[],render:null};function xe(e,n=null){let i=t({},He);e&&(i=t(i,e instanceof xe?e.o:e));const r=i.ignoreTags,s=[];for(let e=0;e<r.length;e++)s.push(r[e].toUpperCase());this.o=i,n&&(this.defaultRender=n),this.ignoreTags=s}function Pe(e){return e}xe.prototype={o:He,ignoreTags:[],defaultRender:e=>e,check(e){return this.get("validate",e.toString(),e)},get(e,t,n){const i=null!=t;let r=this.o[e];return r?("object"==typeof r?(r=n.t in r?r[n.t]:He[e],"function"==typeof r&&i&&(r=r(t,n))):"function"==typeof r&&i&&(r=r(t,n.t,n)),r):r},getObj(e,t,n){let i=this.o[e];return"function"==typeof i&&null!=t&&(i=i(t,n.t,n)),i},render(e){const t=e.render(this);return(this.get("render",null,e)||this.defaultRender)(t,e.t,e)}};var ze=Object.freeze({__proto__:null,defaults:He,Options:xe,assign:t});function De(e,t){this.t="token",this.v=e,this.tk=t}function Ue(e,t){class n extends De{constructor(t,n){super(t,n),this.t=e}}for(const e in t)n.prototype[e]=t[e];return n.t=e,n}De.prototype={isLink:!1,toString(){return this.v},toHref(e){return this.toString()},toFormattedString(e){const t=this.toString(),n=e.get("truncate",t,this),i=e.get("format",t,this);return n&&i.length>n?i.substring(0,n)+"…":i},toFormattedHref(e){return e.get("formatHref",this.toHref(e.get("defaultProtocol")),this)},startIndex(){return this.tk[0].s},endIndex(){return this.tk[this.tk.length-1].e},toObject(e=He.defaultProtocol){return{type:this.t,value:this.toString(),isLink:this.isLink,href:this.toHref(e),start:this.startIndex(),end:this.endIndex()}},toFormattedObject(e){return{type:this.t,value:this.toFormattedString(e),isLink:this.isLink,href:this.toFormattedHref(e),start:this.startIndex(),end:this.endIndex()}},validate(e){return e.get("validate",this.toString(),this)},render(e){const n=this,i=this.toHref(e.get("defaultProtocol")),r=e.get("formatHref",i,this),s=e.get("tagName",i,n),o=this.toFormattedString(e),a={},l=e.get("className",i,n),u=e.get("target",i,n),c=e.get("rel",i,n),g=e.getObj("attributes",i,n),d=e.getObj("events",i,n);return a.href=r,l&&(a.class=l),u&&(a.target=u),c&&(a.rel=c),g&&t(a,g),{tagName:s,attributes:a,content:o,eventListeners:d}}};const Me=Ue("email",{isLink:!0,toHref(){return"mailto:"+this.toString()}}),Be=Ue("text"),Ke=Ue("nl"),Fe=Ue("url",{isLink:!0,toHref(e=He.defaultProtocol){return this.hasProtocol()?this.v:`${e}://${this.v}`},hasProtocol(){const e=this.tk;return e.length>=2&&e[0].t!==A&&e[1].t===ee}});var _e=Object.freeze({__proto__:null,MultiToken:De,Base:De,createTokenClass:Ue,Email:Me,Text:Be,Nl:Ke,Url:Fe});const Qe=e=>new f(e);function We(e,t,n){const i=n[0].s,r=n[n.length-1].e;return new e(t.slice(i,r),n)}const $e="undefined"!=typeof console&&console&&console.warn||(()=>{}),Ge="until manual call of linkify.init(). Register all schemes and plugins before invoking linkify the first time.",qe={scanner:null,parser:null,tokenQueue:[],pluginQueue:[],customSchemes:[],initialized:!1};function Ye(){qe.scanner=function(e=[]){const d={};f.groups=d;const p=new f;null==ve&&(ve=Ne("aaa1rp3bb0ott3vie4c1le2ogado5udhabi7c0ademy5centure6ountant0s9o1tor4d0s1ult4e0g1ro2tna4f0l1rica5g0akhan5ency5i0g1rbus3force5tel5kdn3l0ibaba4pay4lfinanz6state5y2sace3tom5m0azon4ericanexpress7family11x2fam3ica3sterdam8nalytics7droid5quan4z2o0l2partments8p0le4q0uarelle8r0ab1mco4chi3my2pa2t0e3s0da2ia2sociates9t0hleta5torney7u0ction5di0ble3o3spost5thor3o0s4w0s2x0a2z0ure5ba0by2idu3namex4d1k2r0celona5laycard4s5efoot5gains6seball5ketball8uhaus5yern5b0c1t1va3cg1n2d1e0ats2uty4er2ntley5rlin4st0buy5t2f1g1h0arti5i0ble3d1ke2ng0o3o1z2j1lack0friday9ockbuster8g1omberg7ue3m0s1w2n0pparibas9o0ats3ehringer8fa2m1nd2o0k0ing5sch2tik2on4t1utique6x2r0adesco6idgestone9oadway5ker3ther5ussels7s1t1uild0ers6siness6y1zz3v1w1y1z0h3ca0b1fe2l0l1vinklein9m0era3p2non3petown5ital0one8r0avan4ds2e0er0s4s2sa1e1h1ino4t0ering5holic7ba1n1re3c1d1enter4o1rn3f0a1d2g1h0anel2nel4rity4se2t2eap3intai5ristmas6ome4urch5i0priani6rcle4sco3tadel4i0c2y3k1l0aims4eaning6ick2nic1que6othing5ud3ub0med6m1n1o0ach3des3ffee4llege4ogne5m0mbank4unity6pany2re3uter5sec4ndos3struction8ulting7tact3ractors9oking4l1p2rsica5untry4pon0s4rses6pa2r0edit0card4union9icket5own3s1uise0s6u0isinella9v1w1x1y0mru3ou3z2dad1nce3ta1e1ing3sun4y2clk3ds2e0al0er2s3gree4livery5l1oitte5ta3mocrat6ntal2ist5si0gn4v2hl2iamonds6et2gital5rect0ory7scount3ver5h2y2j1k1m1np2o0cs1tor4g1mains5t1wnload7rive4tv2ubai3nlop4pont4rban5vag2r2z2earth3t2c0o2deka3u0cation8e1g1mail3erck5nergy4gineer0ing9terprises10pson4quipment8r0icsson6ni3s0q1tate5t1u0rovision8s2vents5xchange6pert3osed4ress5traspace10fage2il1rwinds6th3mily4n0s2rm0ers5shion4t3edex3edback6rrari3ero6i0delity5o2lm2nal1nce1ial7re0stone6mdale6sh0ing5t0ness6j1k1lickr3ghts4r2orist4wers5y2m1o0o0d1tball6rd1ex2sale4um3undation8x2r0ee1senius7l1ogans4ntier7tr2ujitsu5n0d2rniture7tbol5yi3ga0l0lery3o1up4me0s3p1rden4y2b0iz3d0n2e0a1nt0ing5orge5f1g0ee3h1i0ft0s3ves2ing5l0ass3e1obal2o4m0ail3bh2o1x2n1odaddy5ld0point6f2o0dyear5g0le4p1t1v2p1q1r0ainger5phics5tis4een3ipe3ocery4up4s1t1u0cci3ge2ide2tars5ru3w1y2hair2mburg5ngout5us3bo2dfc0bank7ealth0care8lp1sinki6re1mes5iphop4samitsu7tachi5v2k0t2m1n1ockey4ldings5iday5medepot5goods5s0ense7nda3rse3spital5t0ing5t0els3mail5use3w2r1sbc3t1u0ghes5yatt3undai7ibm2cbc2e1u2d1e0ee3fm2kano4l1m0amat4db2mo0bilien9n0c1dustries8finiti5o2g1k1stitute6urance4e4t0ernational10uit4vestments10o1piranga7q1r0ish4s0maili5t0anbul7t0au2v3jaguar4va3cb2e0ep2tzt3welry6io2ll2m0p2nj2o0bs1urg4t1y2p0morgan6rs3uegos4niper7kaufen5ddi3e0rryhotels6logistics9properties14fh2g1h1i0a1ds2m1ndle4tchen5wi3m1n1oeln3matsu5sher5p0mg2n2r0d1ed3uokgroup8w1y0oto4z2la0caixa5mborghini8er3ncaster6d0rover6xess5salle5t0ino3robe5w0yer5b1c1ds2ease3clerc5frak4gal2o2xus4gbt3i0dl2fe0insurance9style7ghting6ke2lly3mited4o2ncoln4k2psy3ve1ing5k1lc1p2oan0s3cker3us3l1ndon4tte1o3ve3pl0financial11r1s1t0d0a3u0ndbeck6xe1ury5v1y2ma0drid4if1son4keup4n0agement7go3p1rket0ing3s4riott5shalls7ttel5ba2c0kinsey7d1e0d0ia3et2lbourne7me1orial6n0u2rckmsd7g1h1iami3crosoft7l1ni1t2t0subishi9k1l0b1s2m0a2n1o0bi0le4da2e1i1m1nash3ey2ster5rmon3tgage6scow4to0rcycles9v0ie4p1q1r1s0d2t0n1r2u0seum3ic4v1w1x1y1z2na0b1goya4me2vy3ba2c1e0c1t0bank4flix4work5ustar5w0s2xt0direct7us4f0l2g0o2hk2i0co2ke1on3nja3ssan1y5l1o0kia3rton4w0ruz3tv4p1r0a1w2tt2u1yc2z2obi1server7ffice5kinawa6layan0group9lo3m0ega4ne1g1l0ine5oo2pen3racle3nge4g0anic5igins6saka4tsuka4t2vh3pa0ge2nasonic7ris2s1tners4s1y3y2ccw3e0t2f0izer5g1h0armacy6d1ilips5one2to0graphy6s4ysio5ics1tet2ures6d1n0g1k2oneer5zza4k1l0ace2y0station9umbing5s3m1n0c2ohl2ker3litie5rn2st3r0america6xi3ess3ime3o0d0uctions8f1gressive8mo2perties3y5tection8u0dential9s1t1ub2w0c2y2qa1pon3uebec3st5racing4dio4e0ad1lestate6tor2y4cipes5d0stone5umbrella9hab3ise0n3t2liance6n0t0als5pair3ort3ublican8st0aurant8view0s5xroth6ich0ardli6oh3l1o1p2o0cks3deo3gers4om3s0vp3u0gby3hr2n2w0e2yukyu6sa0arland6fe0ty4kura4le1on3msclub4ung5ndvik0coromant12ofi4p1rl2s1ve2xo3b0i1s2c0b1haeffler7midt4olarships8ol3ule3warz5ience5ot3d1e0arch3t2cure1ity6ek2lect4ner3rvices6ven3w1x0y3fr2g1h0angrila6rp3ell3ia1ksha5oes2p0ping5uji3w3i0lk2na1gles5te3j1k0i0n2y0pe4l0ing4m0art3ile4n0cf3o0ccer3ial4ftbank4ware6hu2lar2utions7ng1y2y2pa0ce3ort2t3r0l2s1t0ada2ples4r1tebank4farm7c0group6ockholm6rage3e3ream4udio2y3yle4u0cks3pplies3y2ort5rf1gery5zuki5v1watch4iss4x1y0dney4stems6z2tab1ipei4lk2obao4rget4tamotors6r2too4x0i3c0i2d0k2eam2ch0nology8l1masek5nnis4va3f1g1h0d1eater2re6iaa2ckets5enda4ps2res2ol4j0maxx4x2k0maxx5l1m0all4n1o0day3kyo3ols3p1ray3shiba5tal3urs3wn2yota3s3r0ade1ing4ining5vel0ers0insurance16ust3v2t1ube2i1nes3shu4v0s2w1z2ua1bank3s2g1k1nicom3versity8o2ol2ps2s1y1z2va0cations7na1guard7c1e0gas3ntures6risign5mögensberater2ung14sicherung10t2g1i0ajes4deo3g1king4llas4n1p1rgin4sa1ion4va1o3laanderen9n1odka3lvo3te1ing3o2yage5u2wales2mart4ter4ng0gou5tch0es6eather0channel12bcam3er2site5d0ding5ibo2r3f1hoswho6ien2ki2lliamhill9n0dows4e1ners6me2olterskluwer11odside6rk0s2ld3w2s1tc1f3xbox3erox4ihuan4n2xx2yz3yachts4hoo3maxun5ndex5e1odobashi7ga2kohama6u0tube6t1un3za0ppos4ra3ero3ip2m1one3uerich6w2")),null==Se&&(Se=Ne("ελ1υ2бг1ел3дети4ею2католик6ом3мкд2он1сква6онлайн5рг3рус2ф2сайт3рб3укр3қаз3հայ3ישראל5קום3ابوظبي5رامكو5لاردن4بحرين5جزائر5سعودية6عليان5مغرب5مارات5یران5بارت2زار4يتك3ھارت5تونس4سودان3رية5شبكة4عراق2ب2مان4فلسطين6قطر3كاثوليك6وم3مصر2ليسيا5وريتانيا7قع4همراه5پاکستان7ڀارت4कॉम3नेट3भारत0म्3ोत5संगठन5বাংলা5ভারত2ৰত4ਭਾਰਤ4ભારત4ଭାରତ4இந்தியா6லங்கை6சிங்கப்பூர்11భారత్5ಭಾರತ4ഭാരതം5ලංකා4คอม3ไทย3ລາວ3გე2みんな3アマゾン4クラウド4グーグル4コム2ストア3セール3ファッション6ポイント4世界2中信1国1國1文网3亚马逊3企业2佛山2信息2健康2八卦2公司1益2台湾1灣2商城1店1标2嘉里0大酒店5在线2大拿2天主教3娱乐2家電2广东2微博2慈善2我爱你3手机2招聘2政务1府2新加坡2闻2时尚2書籍2机构2淡马锡3游戏2澳門2点看2移动2组织机构4网址1店1站1络2联通2谷歌2购物2通販2集团2電訊盈科4飞利浦3食品2餐厅2香格里拉3港2닷넷1컴2삼성2한국2")),y(p,"'",q),y(p,"{",I),y(p,"}",N),y(p,"[",H),y(p,"]",x),y(p,"(",P),y(p,")",z),y(p,"<",D),y(p,">",U),y(p,"(",M),y(p,")",B),y(p,"「",K),y(p,"」",F),y(p,"『",_),y(p,"』",Q),y(p,"<",W),y(p,">",$),y(p,"&",G),y(p,"*",Y),y(p,"@",J),y(p,"`",V),y(p,"^",Z),y(p,":",ee),y(p,",",te),y(p,"$",ne),y(p,".",ie),y(p,"=",re),y(p,"!",se),y(p,"-",oe),y(p,"%",ae),y(p,"|",le),y(p,"+",ue),y(p,"#",ce),y(p,"?",ge),y(p,'"',de),y(p,"/",pe),y(p,";",fe),y(p,"~",me),y(p,"_",Ee),y(p,"\\",X),y(p,"・",he);const Ce=m(p,Re,S,{[n]:!0});m(Ce,Re,Ce);const we=m(Ce,Te,T,{[s]:!0}),je=m(Ce,Le,L,{[o]:!0}),He=m(p,Te,k,{[i]:!0});m(He,Re,we),m(He,Te,He),m(we,Re,we),m(we,Te,we);const xe=m(p,Le,b,{[r]:!0});m(xe,Te),m(xe,Re,je),m(xe,Le,xe),m(je,Re,je),m(je,Te),m(je,Le,je);const Pe=y(p,"\n",j,{[g]:!0}),ze=y(p,"\r",w,{[g]:!0}),De=m(p,Oe,w,{[g]:!0});y(p,"",De),y(ze,"\n",Pe),y(ze,"",De),m(ze,Oe,De),y(De,"\r"),y(De,"\n"),m(De,Oe,De),y(De,"",De);const Ue=m(p,Ae,ye,{[l]:!0});y(Ue,"#"),m(Ue,Ae,Ue),y(Ue,"️",Ue);const Me=y(Ue,"");y(Me,"#"),m(Me,Ae,Ue);const Be=[[Te,He],[Re,we]],Ke=[[Te,null],[Le,xe],[Re,je]];for(let e=0;e<ve.length;e++)Ie(p,ve[e],R,k,Be);for(let e=0;e<Se.length;e++)Ie(p,Se[e],O,b,Ke);h(R,{tld:!0,ascii:!0},d),h(O,{utld:!0,alpha:!0},d),Ie(p,"file",C,k,Be),Ie(p,"mailto",C,k,Be),Ie(p,"http",v,k,Be),Ie(p,"https",v,k,Be),Ie(p,"ftp",v,k,Be),Ie(p,"ftps",v,k,Be),h(C,{scheme:!0,ascii:!0},d),h(v,{slashscheme:!0,ascii:!0},d),e=e.sort(((e,t)=>e[0]>t[0]?1:-1));for(let t=0;t<e.length;t++){const r=e[t][0],o=e[t][1]?{[u]:!0}:{[c]:!0};r.indexOf("-")>=0?o[a]=!0:Te.test(r)?Re.test(r)?o[s]=!0:o[i]=!0:o[n]=!0,E(p,r,r,o)}return E(p,"localhost",A,{ascii:!0}),p.jd=new f(ke),{start:p,tokens:t({groups:d},be)}}(qe.customSchemes);for(let e=0;e<qe.tokenQueue.length;e++)qe.tokenQueue[e][1]({scanner:qe.scanner});qe.parser=function({groups:e}){const t=e.domain.concat([G,Y,J,X,V,Z,ne,re,oe,S,ae,le,ue,ce,pe,ke,me,Ee]),n=[ee,te,ie,se,ae,ge,de,fe,D,U,I,N,x,H,P,z,M,B,K,F,_,Q,W,$],i=[G,q,Y,X,V,Z,ne,re,oe,I,N,ae,le,ue,ce,ge,pe,ke,me,Ee],r=Qe(),s=y(r,me);p(s,i,s),p(s,e.domain,s);const o=Qe(),a=Qe(),l=Qe();p(r,e.domain,o),p(r,e.scheme,a),p(r,e.slashscheme,l),p(o,i,s),p(o,e.domain,o);const u=y(o,J);y(s,J,u),y(a,J,u),y(l,J,u);const c=y(s,ie);p(c,i,s),p(c,e.domain,s);const g=Qe();p(u,e.domain,g),p(g,e.domain,g);const d=y(g,ie);p(d,e.domain,g);const h=Qe(Me);p(d,e.tld,h),p(d,e.utld,h),y(u,A,h);const f=y(g,oe);y(f,oe,f),p(f,e.domain,g),p(h,e.domain,g),y(h,ie,d),y(h,oe,f);const m=y(h,ee);p(m,e.numeric,Me);const E=y(o,oe),k=y(o,ie);y(E,oe,E),p(E,e.domain,o),p(k,i,s),p(k,e.domain,o);const b=Qe(Fe);p(k,e.tld,b),p(k,e.utld,b),p(b,e.domain,o),p(b,i,s),y(b,ie,k),y(b,oe,E),y(b,J,u);const T=y(b,ee),L=Qe(Fe);p(T,e.numeric,L);const R=Qe(Fe),O=Qe();p(R,t,R),p(R,n,O),p(O,t,R),p(O,n,O),y(b,pe,R),y(L,pe,R);const C=y(a,ee),v=y(l,ee),w=y(v,pe),he=y(w,pe);p(a,e.domain,o),y(a,ie,k),y(a,oe,E),p(l,e.domain,o),y(l,ie,k),y(l,oe,E),p(C,e.domain,R),y(C,pe,R),y(C,ge,R),p(he,e.domain,R),p(he,t,R),y(he,pe,R);const ye=[[I,N],[H,x],[P,z],[D,U],[M,B],[K,F],[_,Q],[W,$]];for(let e=0;e<ye.length;e++){const[i,r]=ye[e],s=y(R,i);y(O,i,s),y(s,r,R);const o=Qe(Fe);p(s,t,o);const a=Qe();p(s,n),p(o,t,o),p(o,n,a),p(a,t,o),p(a,n,a),y(o,r,R),y(a,r,R)}return y(r,A,b),y(r,j,Ke),{start:r,tokens:be}}(qe.scanner.tokens);for(let e=0;e<qe.pluginQueue.length;e++)qe.pluginQueue[e][1]({scanner:qe.scanner,parser:qe.parser});return qe.initialized=!0,qe}function Je(e){return qe.initialized||Ye(),function(e,t,n){let i=n.length,r=0,s=[],o=[];for(;r<i;){let a=e,l=null,u=null,c=0,g=null,d=-1;for(;r<i&&!(l=a.go(n[r].t));)o.push(n[r++]);for(;r<i&&(u=l||a.go(n[r].t));)l=null,a=u,a.accepts()?(d=0,g=a):d>=0&&d++,r++,c++;if(d<0)r-=c,r<i&&(o.push(n[r]),r++);else{o.length>0&&(s.push(We(Be,t,o)),o=[]),r-=d,c-=d;const e=g.t,i=n.slice(r-c,r);s.push(We(e,t,i))}}return o.length>0&&s.push(We(Be,t,o)),s}(qe.parser.start,e,we(qe.scanner.start,e))}return Je.scan=we,e.MultiToken=De,e.Options=xe,e.State=f,e.createTokenClass=Ue,e.find=function(e,t=null,n=null){if(t&&"object"==typeof t){if(n)throw Error(`linkifyjs: Invalid link type ${t}; must be a string`);n=t,t=null}const i=new xe(n),r=Je(e),s=[];for(let e=0;e<r.length;e++){const n=r[e];!n.isLink||t&&n.t!==t||!i.check(n)||s.push(n.toFormattedObject(i))}return s},e.init=Ye,e.multi=_e,e.options=ze,e.regexp=Ce,e.registerCustomProtocol=function(e,t=!1){if(qe.initialized&&$e(`linkifyjs: already initialized - will not register custom scheme "${e}" ${Ge}`),!/^[0-9a-z]+(-[0-9a-z]+)*$/.test(e))throw new Error('linkifyjs: incorrect scheme format.\n1. Must only contain digits, lowercase ASCII letters or "-"\n2. Cannot start or end with "-"\n3. "-" cannot repeat');qe.customSchemes.push([e,t])},e.registerPlugin=function(e,t){if("function"!=typeof t)throw new Error(`linkifyjs: Invalid plugin ${t} (expects function)`);for(let n=0;n<qe.pluginQueue.length;n++)if(e===qe.pluginQueue[n][0])return $e(`linkifyjs: plugin "${e}" already registered - will be overwritten`),void(qe.pluginQueue[n]=[e,t]);qe.pluginQueue.push([e,t]),qe.initialized&&$e(`linkifyjs: already initialized - will not register plugin "${e}" ${Ge}`)},e.registerTokenPlugin=function(e,t){if("function"!=typeof t)throw new Error(`linkifyjs: Invalid token plugin ${t} (expects function)`);for(let n=0;n<qe.tokenQueue.length;n++)if(e===qe.tokenQueue[n][0])return $e(`linkifyjs: token plugin "${e}" already registered - will be overwritten`),void(qe.tokenQueue[n]=[e,t]);qe.tokenQueue.push([e,t]),qe.initialized&&$e(`linkifyjs: already initialized - will not register token plugin "${e}" ${Ge}`)},e.reset=function(){return f.groups={},qe.scanner=null,qe.parser=null,qe.tokenQueue=[],qe.pluginQueue=[],qe.customSchemes=[],qe.initialized=!1,qe},e.stringToArray=je,e.test=function(e,t=null){const n=Je(e);return 1===n.length&&n[0].isLink&&(!t||n[0].t===t)},e.text=_e,e.tokenize=Je,Object.defineProperty(e,"__esModule",{value:!0}),e}({}); |
{ | ||
"name": "linkifyjs", | ||
"version": "4.1.4", | ||
"version": "4.2.0", | ||
"description": "Find URLs, email addresses, #hashtags and @mentions in plain-text strings, then convert them into HTML <a> links.", | ||
@@ -5,0 +5,0 @@ "main": "dist/linkify.cjs.js", |
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is too big to display
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
260682
6624