diff --git a/nginx/vue/package-lock.json b/nginx/vue/package-lock.json index fb1c9ec..de78f73 100644 --- a/nginx/vue/package-lock.json +++ b/nginx/vue/package-lock.json @@ -12,6 +12,7 @@ "axios": "^1.13.2", "katex": "^0.16.27", "markdown-it": "^14.1.0", + "markdown-it-wikilinks": "^1.4.0", "pinia": "^3.0.4", "vue": "^3.5.22", "vue-router": "^4.6.3" @@ -2113,6 +2114,12 @@ "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==", "license": "MIT" }, + "node_modules/extend": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", + "license": "MIT" + }, "node_modules/fdir": { "version": "6.5.0", "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.5.0.tgz", @@ -2459,6 +2466,24 @@ "markdown-it": "bin/markdown-it.mjs" } }, + "node_modules/markdown-it-regexp": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/markdown-it-regexp/-/markdown-it-regexp-0.4.0.tgz", + "integrity": "sha512-0XQmr46K/rMKnI93Y3CLXsHj4jIioRETTAiVnJnjrZCEkGaDOmUxTbZj/aZ17G5NlRcVpWBYjqpwSlQ9lj+Kxw==", + "license": "MIT" + }, + "node_modules/markdown-it-wikilinks": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/markdown-it-wikilinks/-/markdown-it-wikilinks-1.4.0.tgz", + "integrity": "sha512-LJhRWett3Do9doMMkpodOV5pvAMZjOOODqcifPfd+jdobhdg3UY8i824L5657UBWx7HSbOqicwNUzcVjOiswgw==", + "license": "MIT", + "dependencies": { + "extend": "^3.0.2", + "markdown-it-regexp": "^0.4.0", + "reurl": "git+https://github.com/jsepia/reurl.git#commonjs", + "sanitize-filename": "^1.6.3" + } + }, "node_modules/math-intrinsics": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz", @@ -2656,6 +2681,15 @@ "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==", "license": "MIT" }, + "node_modules/punycode": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", + "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, "node_modules/punycode.js": { "version": "2.3.1", "resolved": "https://registry.npmjs.org/punycode.js/-/punycode.js-2.3.1.tgz", @@ -2665,6 +2699,14 @@ "node": ">=6" } }, + "node_modules/reurl": { + "version": "1.0.0-rc.2", + "resolved": "git+ssh://git@github.com/jsepia/reurl.git#a3210117636c115fb139517fcfb2ea929025cded", + "license": "MIT", + "dependencies": { + "spec-url": "^2.0.0-dev.1" + } + }, "node_modules/rfdc": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.4.1.tgz", @@ -2729,6 +2771,15 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/sanitize-filename": { + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/sanitize-filename/-/sanitize-filename-1.6.3.tgz", + "integrity": "sha512-y/52Mcy7aw3gRm7IrcGDFx/bCk4AhRh2eI9luHOQM86nZsqwiRkkq2GekHXBBD+SmPidc8i2PqtYZl+pWJ8Oeg==", + "license": "WTFPL OR ISC", + "dependencies": { + "truncate-utf8-bytes": "^1.0.0" + } + }, "node_modules/semver": { "version": "6.3.1", "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", @@ -2772,6 +2823,15 @@ "node": ">=0.10.0" } }, + "node_modules/spec-url": { + "version": "2.0.0-dev.1", + "resolved": "https://registry.npmjs.org/spec-url/-/spec-url-2.0.0-dev.1.tgz", + "integrity": "sha512-NKE2wT6tsvYa4xfVFcnjxSDFJwDOwU1NU2NhfnxFksutZrOShZ2p7pgQWS98Evq0cHMGBBjGQlbwrcAHLDywfw==", + "license": "MIT", + "dependencies": { + "punycode": "^2.1.1" + } + }, "node_modules/superjson": { "version": "2.2.6", "resolved": "https://registry.npmjs.org/superjson/-/superjson-2.2.6.tgz", @@ -2811,6 +2871,15 @@ "node": ">=6" } }, + "node_modules/truncate-utf8-bytes": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/truncate-utf8-bytes/-/truncate-utf8-bytes-1.0.2.tgz", + "integrity": "sha512-95Pu1QXQvruGEhv62XCMO3Mm90GscOCClvrIUwCM0PYOXK3kaF3l3sIHxx71ThJfcbM2O5Au6SO3AWCSEfW4mQ==", + "license": "WTFPL", + "dependencies": { + "utf8-byte-length": "^1.0.1" + } + }, "node_modules/uc.micro": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/uc.micro/-/uc.micro-2.1.0.tgz", @@ -2865,6 +2934,12 @@ "browserslist": ">= 4.21.0" } }, + "node_modules/utf8-byte-length": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/utf8-byte-length/-/utf8-byte-length-1.0.5.tgz", + "integrity": "sha512-Xn0w3MtiQ6zoz2vFyUVruaCL53O/DwUvkEeOvj+uulMm0BkUGYWmBYVyElqZaSLhY6ZD0ulfU3aBra2aVT4xfA==", + "license": "(WTFPL OR MIT)" + }, "node_modules/vite": { "version": "7.3.1", "resolved": "https://registry.npmjs.org/vite/-/vite-7.3.1.tgz", diff --git a/nginx/vue/package.json b/nginx/vue/package.json index 874aaf0..e0a330d 100644 --- a/nginx/vue/package.json +++ b/nginx/vue/package.json @@ -16,6 +16,7 @@ "axios": "^1.13.2", "katex": "^0.16.27", "markdown-it": "^14.1.0", + "markdown-it-wikilinks": "^1.4.0", "pinia": "^3.0.4", "vue": "^3.5.22", "vue-router": "^4.6.3" diff --git a/nginx/vue/src/components/home/Links.vue b/nginx/vue/src/components/home/Links.vue index 6ae20e0..3319fd8 100644 --- a/nginx/vue/src/components/home/Links.vue +++ b/nginx/vue/src/components/home/Links.vue @@ -1,6 +1,7 @@ diff --git a/nginx/vue/src/components/quick/Markdown.vue b/nginx/vue/src/components/quick/Markdown.vue index adaed49..662c3d6 100644 --- a/nginx/vue/src/components/quick/Markdown.vue +++ b/nginx/vue/src/components/quick/Markdown.vue @@ -1,8 +1,10 @@