shacl-vue/package.json
Stephan Heunis fe85c08ccc Support nunjucks templating for wizardeditor feature
Before this, the fillStringTemplate method was a simple, and the only, template filling
procedure that replaced variables in a string template, surrounded by curly braces, with
their values. No logic, no loops, no further support. This was not sufficient for cases
where the wizardeditor needed to support inputs of type arrays or objects. With previous
experience with jinja, nunjucks looked like a sensible library to add such support.

Templates included via the existing 'content' configuration option can now also be supplied
as nunjucks templates. These have to have the string '.nunjucks' precede the extension of
the filename, in order to be recognized as a nunjucks template. E.g. 'MyTemplate.nunjucks.ttl'.
New utility and configuration composable code allows getting the template type, and the
wizardeditor will use this type to either call the existing fillStringTemplate function,
or the new nunjucks code supplied by the new useNunjucks composable.
2026-03-18 21:26:20 +01:00

95 lines
3 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",
"nunjucks": "^3.2.4",
"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"
}
}