shacl-vue/package.json
Stephan Heunis 0f0193f6e1 Add new markdown editor components
The new component, MarkdownEditor, will match when it sees a string datatype
and a 'shaclvue:markdown: true' annotation. This will render as a text area
with a top-right button that will open a dialog with a Markdown editor-preview
combo. The editor part instantiates the other new component: MarkdownCodeMirror
which uses the new dependency codemirror (and many of its extensions) for giving
a markdown experience similar to that of Hedgedoc.

The markdown conversion to HTML is handled by another new dependency: markdown-it.
And the preview is rendered using another new dependency: highlight.js.

This functionality was designed with Hedgedoc-like experience as the goal post,
but it does not attempt to achieve complex tasks.

A TODO is to check what effect these new dependencies have on the bundling size
and subsequent loading time of the application...
2026-01-28 23:37:44 +01:00

94 lines
2.9 KiB
JSON

{
"name": "shacl-vue",
"version": "0.0.7",
"description": "Autogenerate user interfaces from SHACL shapes",
"main": "./dist/lib/shacl-vue.cjs.js",
"type": "module",
"module": "./dist/lib/shacl-vue.es.js",
"exports": {
".": {
"import": "./dist/lib/shacl-vue.es.js",
"require": "./dist/lib/shacl-vue.cjs.js"
},
"./shapedata": {
"import": "./dist/lib/shapedata.es.js",
"require": "./dist/lib/shapedata.cjs.js"
},
"./style.css": "./dist/lib/shacl-vue.css"
},
"files": [
"dist/lib"
],
"repository": {
"type": "git",
"url": "git+https://github.com/psychoinformatics-de/shacl-vue.git"
},
"keywords": [
"metadata",
"linked data",
"SHACL",
"RDF",
"editor",
"viewer",
"UI",
"VueJS"
],
"author": "Stephan Heunis",
"license": "MIT",
"bugs": {
"url": "https://github.com/psychoinformatics-de/shacl-vue/issues"
},
"homepage": "https://github.com/psychoinformatics-de/shacl-vue#readme",
"scripts": {
"dev": "vite --config vite.config.app.mjs",
"build": "npm run build:lib && npm run build:app",
"build:lib": "vite build --config vite.config.lib.mjs",
"build:app": "vite build --config vite.config.app.mjs",
"preview": "vite preview --config vite.config.app.mjs",
"docs:dev": "vitepress dev docs",
"docs:build": "vitepress build docs",
"docs:preview": "vitepress preview docs",
"test": "vitest --config vite.config.lib.mjs",
"format": "prettier .",
"format:write": "prettier --write ."
},
"dependencies": {
"@codemirror/autocomplete": "^6.20.0",
"@codemirror/commands": "^6.10.1",
"@codemirror/lang-markdown": "^6.5.0",
"@codemirror/language": "^6.12.1",
"@codemirror/language-data": "^6.5.2",
"@codemirror/state": "^6.5.4",
"@codemirror/theme-one-dark": "^6.1.3",
"@codemirror/view": "^6.39.11",
"@mdi/font": "7.4.47",
"dompurify": "^3.3.1",
"highlight.js": "^11.11.1",
"lodash-es": "^4.17.21",
"markdown-it": "^14.1.0",
"n3": "^1.26.0",
"roboto-fontface": "^0.10.0",
"shacl-tulip": "^0.0.9",
"vue-virtual-scroller": "^2.0.0-beta.8",
"yaml": "^2.8.2"
},
"devDependencies": {
"@vitejs/plugin-vue": "^6.0.1",
"happy-dom": "^20.0.11",
"mermaid": "^11.11.0",
"prettier": "^3.6.2",
"sass": "^1.92.1",
"unplugin-fonts": "^1.4.0",
"unplugin-vue-components": "^29.0.0",
"vite": "^7.1.5",
"vite-plugin-vuetify": "^2.1.2",
"vitepress": "^1.6.4",
"vitepress-plugin-mermaid": "^2.0.17",
"vitest": "^3.2.4",
"vue": "^3.5.21"
},
"peerDependencies": {
"vue": "^3.5.21",
"vuetify": "^3.11.4"
}
}