decord/stable/source/modules/coded_links/findCodedLinkUrlsUsingRegex.tsx
2026-10-06 22:12:49 +00:00

30 lines
1 KiB
TypeScript

// Module ID: 13394
// Function ID: 13395
// Name: findCodedLinkUrlsUsingRegex
// Dependencies: [1373, 2]
// Exports: default
// Module 13394 (findCodedLinkUrlsUsingRegex)
import ip from "ip" /* 1373 */;
import size from "module_2" /* 2 */;
function trimTrailingPunctuation(str) {
return str.replace(re2, "");
}
const regExp = new RegExp("(?:(?:(?:https?:)?//)|www\\.)(?:[^\\s:@]+(?::[^\\s@]*)?@)?(?:localhost|" + ip.v4().source + "|(?:[a-z\\u00a1-\\uffff0-9-_]+\\.)+(?:(?:[a-z\\u00a1-\\uffff]{2,})))(?::\\d{2,5})?(?:[/?#][^\\s\"()\\[\\]<>]*)?", "ig");
const re1 = /`{3,}[\s\S]*?(?:`{3,}|$)|(`{1,2})[^`]+\1(?!`)/g;
const re2 = /[.,;:?'*_~|]+$/;
const result = size.fileFinishedImporting("modules/coded_links/findCodedLinkUrlsUsingRegex.tsx");
export default function findCodedLinkUrlsUsingRegex(str) {
str = str.replaceAll(re1, " ");
const match = str.match(regExp);
let mapped;
if (match != null) {
mapped = match.map(trimTrailingPunctuation);
}
if (mapped == null) {
mapped = [];
}
return mapped;
};