Merge pull request #19 from teichert/feature-navigation-buttons

(feature) adds buttons to manager UI to navigate forward or backward between assignments/pages and lectures
This commit is contained in:
2026-01-15 13:48:24 -07:00
committed by GitHub
12 changed files with 265 additions and 2 deletions

View File

@@ -52,15 +52,18 @@ marked.use({ extensions: [mermaidExtension] });
// The renderer only applies to markdown tables.
marked.use({
renderer: {
tablecell({ text, header, align }) {
tablecell(token) {
const content = this.parser.parseInline(token.tokens);
const { header, align } = token;
const type = header ? "th" : "td";
const alignAttr = align ? ` align="${align}"` : "";
const scopeAttr = header ? ' scope="col"' : "";
return `<${type}${scopeAttr}${alignAttr}>${text}</${type}>\n`;
return `<${type}${scopeAttr}${alignAttr}>${content}</${type}>\n`;
},
},
});
export function extractImageSources(htmlString: string) {
const srcUrls = [];
const regex = /<img[^>]+src=["']?([^"'>]+)["']?/g;

View File

@@ -0,0 +1,16 @@
import { describe, it, expect } from 'vitest';
import { markdownToHtmlNoImages } from './htmlMarkdownUtils';
describe('markdownToHtmlNoImages reference links', () => {
it('renders reference links inside a table', () => {
const markdown = `
| Header |
| --- |
| [QuickStart][Fort1] |
[Fort1]: https://example.com/fort1
`;
const html = markdownToHtmlNoImages(markdown);
expect(html).toContain('<a href="https://example.com/fort1">QuickStart</a>');
});
});