Switch back to upstream autolinker
This commit is contained in:
parent
e294e109f8
commit
305c1fa08f
File diff suppressed because one or more lines are too long
|
@ -36,7 +36,7 @@
|
|||
"webpack-hot-middleware": "^2.17.0"
|
||||
},
|
||||
"dependencies": {
|
||||
"autolinker": "git+https://github.com/robbie-c/Autolinker.js.git",
|
||||
"autolinker": "^1.4.3",
|
||||
"backo": "^1.1.0",
|
||||
"base64-arraybuffer": "^0.1.5",
|
||||
"history": "^4.5.1",
|
||||
|
|
|
@ -3,17 +3,38 @@ import React from 'react';
|
|||
|
||||
const autolinker = new Autolinker({
|
||||
stripPrefix: false,
|
||||
doJoin: false,
|
||||
replaceFn: (linker, match) => {
|
||||
if (match.getType() === 'url') {
|
||||
return <a target="_blank" rel="noopener noreferrer" href={match.getAnchorHref()}>{match.getAnchorText()}</a>;
|
||||
}
|
||||
|
||||
return null;
|
||||
},
|
||||
React
|
||||
stripTrailingSlash: false
|
||||
});
|
||||
|
||||
export default function linkify(text) {
|
||||
return autolinker.link(text);
|
||||
const matches = autolinker.parseText(text);
|
||||
const result = [];
|
||||
let pos = 0;
|
||||
|
||||
for (let i = 0; i < matches.length; i++) {
|
||||
const match = matches[i];
|
||||
|
||||
if (match.offset > pos) {
|
||||
result.push(text.slice(pos, match.offset));
|
||||
pos = match.offset;
|
||||
}
|
||||
|
||||
if (match.getType() === 'url') {
|
||||
result.push(
|
||||
<a target="_blank" rel="noopener noreferrer" href={match.getAnchorHref()}>
|
||||
{match.matchedText}
|
||||
</a>
|
||||
);
|
||||
} else {
|
||||
result.push(match.matchedText);
|
||||
}
|
||||
|
||||
pos += match.matchedText.length;
|
||||
}
|
||||
|
||||
if (pos < text.length) {
|
||||
result.push(text.slice(pos));
|
||||
}
|
||||
|
||||
return result;
|
||||
}
|
||||
|
|
|
@ -205,9 +205,9 @@ asynckit@^0.4.0:
|
|||
version "0.4.0"
|
||||
resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79"
|
||||
|
||||
"autolinker@git+https://github.com/robbie-c/Autolinker.js.git":
|
||||
version "0.22.0"
|
||||
resolved "git+https://github.com/robbie-c/Autolinker.js.git#7078b4e408df7f4f4dc09c378859bdc5d6b9d36a"
|
||||
autolinker@^1.4.3:
|
||||
version "1.4.3"
|
||||
resolved "https://registry.yarnpkg.com/autolinker/-/autolinker-1.4.3.tgz#2e615057c8e371399a6d77949a9a6af24fe46dfc"
|
||||
|
||||
autoprefixer@^6.0.0, autoprefixer@^6.3.1:
|
||||
version "6.7.7"
|
||||
|
@ -4482,14 +4482,14 @@ sax@~1.2.1:
|
|||
version "1.2.2"
|
||||
resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.2.tgz#fd8631a23bc7826bef5d871bdb87378c95647828"
|
||||
|
||||
"semver@2 || 3 || 4 || 5", semver@^4.1.0:
|
||||
version "4.3.6"
|
||||
resolved "https://registry.yarnpkg.com/semver/-/semver-4.3.6.tgz#300bc6e0e86374f7ba61068b5b1ecd57fc6532da"
|
||||
|
||||
semver@^5.3.0:
|
||||
"semver@2 || 3 || 4 || 5", semver@^5.3.0:
|
||||
version "5.3.0"
|
||||
resolved "https://registry.yarnpkg.com/semver/-/semver-5.3.0.tgz#9b2ce5d3de02d17c6012ad326aa6b4d0cf54f94f"
|
||||
|
||||
semver@^4.1.0:
|
||||
version "4.3.6"
|
||||
resolved "https://registry.yarnpkg.com/semver/-/semver-4.3.6.tgz#300bc6e0e86374f7ba61068b5b1ecd57fc6532da"
|
||||
|
||||
send@0.15.1:
|
||||
version "0.15.1"
|
||||
resolved "https://registry.yarnpkg.com/send/-/send-0.15.1.tgz#8a02354c26e6f5cca700065f5f0cdeba90ec7b5f"
|
||||
|
|
Loading…
Reference in New Issue