fix: allow alt to be defined in wikilinks alongside dims
| | |
| | | // \[\[ -> open brace |
| | | // ([^\[\]\|\#]+) -> one or more non-special characters ([,],|, or #) (name) |
| | | // (#[^\[\]\|\#]+)? -> # then one or more non-special characters (heading link) |
| | | // (|[^\[\]\|\#]+)? -> | then one or more non-special characters (alias) |
| | | // (\|[^\[\]\#]+)? -> | then one or more non-special characters (alias) |
| | | export const wikilinkRegex = new RegExp( |
| | | /!?\[\[([^\[\]\|\#]+)?(#+[^\[\]\|\#]+)?(\|[^\[\]\|\#]+)?\]\]/, |
| | | /!?\[\[([^\[\]\|\#]+)?(#+[^\[\]\|\#]+)?(\|[^\[\]\#]+)?\]\]/, |
| | | "g", |
| | | ) |
| | | const highlightRegex = new RegExp(/==([^=]+)==/, "g") |
| | |
| | | const ext: string = path.extname(fp).toLowerCase() |
| | | const url = slugifyFilePath(fp as FilePath) |
| | | if ([".png", ".jpg", ".jpeg", ".gif", ".bmp", ".svg", ".webp"].includes(ext)) { |
| | | const dims = alias ?? "" |
| | | // either |alt|dims or |dims |
| | | let [alt, dims] = (alias ?? "").split("|") |
| | | |
| | | // |dims case, treat first alt slot as dims |
| | | if (dims === undefined) { |
| | | dims = alt |
| | | alt = "" |
| | | } |
| | | |
| | | let [width, height] = dims.split("x", 2) |
| | | width ||= "auto" |
| | | height ||= "auto" |
| | |
| | | hProperties: { |
| | | width, |
| | | height, |
| | | alt, |
| | | }, |
| | | }, |
| | | } |