UNPKG

@blocknote/core

Version:

A "Notion-style" block-based extensible text editor built on top of Prosemirror and Tiptap.

37 lines (34 loc) 840 B
export function camelToDataKebab(str: string): string { return "data-" + str.replace(/([a-z])([A-Z])/g, "$1-$2").toLowerCase(); } export function filenameFromURL(url: string): string { const parts = url.split("/"); if ( !parts.length || // invalid? parts[parts.length - 1] === "" // for example, URL ends in a directory-like trailing slash ) { // in this case just return the original url return url; } return parts[parts.length - 1]; } export function isVideoUrl(url: string) { const videoExtensions = [ "mp4", "webm", "ogg", "mov", "mkv", "flv", "avi", "wmv", "m4v", ]; try { const pathname = new URL(url).pathname; const ext = pathname.split(".").pop()?.toLowerCase() || ""; return videoExtensions.includes(ext); } catch (_) { return false; } }