diff --git a/web/admin-gui/env.d.ts b/web/admin-gui/env.d.ts index 0171920..8498b27 100644 --- a/web/admin-gui/env.d.ts +++ b/web/admin-gui/env.d.ts @@ -1,2 +1,13 @@ /// -declare const __APP_ENV__: Record \ No newline at end of file +declare const __APP_ENV__: Record +declare module '@editorjs/paragraph'; +declare module '@editorjs/list'; +declare module '@editorjs/warning'; +declare module '@editorjs/delimiter'; +declare module '@editorjs/nested-list'; +declare module '@editorjs/checklist'; +declare module '@editorjs/quote'; +declare module '@editorjs/marker'; +declare module '@editorjs/code'; +declare module '@editorjs/table'; +declare module '@editorjs/underline'; \ No newline at end of file diff --git a/web/admin-gui/package-lock.json b/web/admin-gui/package-lock.json index 21d4675..bde1939 100644 --- a/web/admin-gui/package-lock.json +++ b/web/admin-gui/package-lock.json @@ -8,12 +8,25 @@ "name": "admin-gui", "version": "0.0.0", "dependencies": { + "@editorjs/checklist": "^1.4.0", + "@editorjs/code": "^2.8.0", + "@editorjs/delimiter": "^1.3.0", + "@editorjs/editorjs": "^2.26.4", + "@editorjs/header": "^2.7.0", + "@editorjs/list": "^1.8.0", + "@editorjs/marker": "^1.3.0", + "@editorjs/nested-list": "^1.2.0", + "@editorjs/paragraph": "^2.9.0", + "@editorjs/quote": "^2.5.0", + "@editorjs/table": "^2.2.0", + "@editorjs/underline": "^1.1.0", + "@editorjs/warning": "^1.3.0", "pinia": "^2.0.28", "vue": "^3.2.38", - "vue-editor-js": "^2.0.2", "vue-router": "^4.1.5" }, "devDependencies": { + "@types/editorjs__header": "^2.6.0", "@types/node": "^16.11.56", "@vitejs/plugin-vue": "^3.0.3", "@vue/tsconfig": "^0.1.3", @@ -39,6 +52,45 @@ "resolved": "https://registry.npmjs.org/@codexteam/icons/-/icons-0.1.0.tgz", "integrity": "sha512-jW1fWnwtWzcP4FBGsaodbJY3s1ZaRU+IJy1pvJ7ygNQxkQinybJcwXoyt0a5mWwu/4w30A42EWhCrZn8lp4fdw==" }, + "node_modules/@editorjs/checklist": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/@editorjs/checklist/-/checklist-1.4.0.tgz", + "integrity": "sha512-KmkgWFYwkcFFvh7oBaUiqg8NBmJSnB87EC0P6obfqo3uDjCXXnen+KJfP+7JBcQx/OsiDlOS/lTxkyhxNtKtsA==", + "dependencies": { + "@codexteam/icons": "^0.0.4" + } + }, + "node_modules/@editorjs/checklist/node_modules/@codexteam/icons": { + "version": "0.0.4", + "resolved": "https://registry.npmjs.org/@codexteam/icons/-/icons-0.0.4.tgz", + "integrity": "sha512-V8N/TY2TGyas4wLrPIFq7bcow68b3gu8DfDt1+rrHPtXxcexadKauRJL6eQgfG7Z0LCrN4boLRawR4S9gjIh/Q==" + }, + "node_modules/@editorjs/code": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/@editorjs/code/-/code-2.8.0.tgz", + "integrity": "sha512-qlv1OqSEPKnLv/ZQgNFmVgqsMbGDkh/qgTEnbVWsS+yujo1nlwgVkqCB8tOkQGVsrpmAYLiWRlA413nKxxCN5w==", + "dependencies": { + "@codexteam/icons": "^0.0.5" + } + }, + "node_modules/@editorjs/code/node_modules/@codexteam/icons": { + "version": "0.0.5", + "resolved": "https://registry.npmjs.org/@codexteam/icons/-/icons-0.0.5.tgz", + "integrity": "sha512-s6H2KXhLz2rgbMZSkRm8dsMJvyUNZsEjxobBEg9ztdrb1B2H3pEzY6iTwI4XUPJWJ3c3qRKwV4TrO3J5jUdoQA==" + }, + "node_modules/@editorjs/delimiter": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/@editorjs/delimiter/-/delimiter-1.3.0.tgz", + "integrity": "sha512-/qz+3yRSPmx6dJpBcwnDfgKtCjOrCsQRoDhXR+wLWirGOchOifhYwQ/6JZyTvcgmY84UEoYY29/dgdWOGVPEEQ==", + "dependencies": { + "@codexteam/icons": "^0.0.5" + } + }, + "node_modules/@editorjs/delimiter/node_modules/@codexteam/icons": { + "version": "0.0.5", + "resolved": "https://registry.npmjs.org/@codexteam/icons/-/icons-0.0.5.tgz", + "integrity": "sha512-s6H2KXhLz2rgbMZSkRm8dsMJvyUNZsEjxobBEg9ztdrb1B2H3pEzY6iTwI4XUPJWJ3c3qRKwV4TrO3J5jUdoQA==" + }, "node_modules/@editorjs/editorjs": { "version": "2.26.4", "resolved": "https://registry.npmjs.org/@editorjs/editorjs/-/editorjs-2.26.4.tgz", @@ -51,6 +103,123 @@ "nanoid": "^3.1.22" } }, + "node_modules/@editorjs/header": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/@editorjs/header/-/header-2.7.0.tgz", + "integrity": "sha512-4fGKGe2ZYblVqR/P/iw5ieG00uXInFgNMftBMqJRYcB2hUPD30kuu7Sn6eJDcLXoKUMOeqi8Z2AlUxYAmvw7zQ==", + "dependencies": { + "@codexteam/icons": "^0.0.5" + } + }, + "node_modules/@editorjs/header/node_modules/@codexteam/icons": { + "version": "0.0.5", + "resolved": "https://registry.npmjs.org/@codexteam/icons/-/icons-0.0.5.tgz", + "integrity": "sha512-s6H2KXhLz2rgbMZSkRm8dsMJvyUNZsEjxobBEg9ztdrb1B2H3pEzY6iTwI4XUPJWJ3c3qRKwV4TrO3J5jUdoQA==" + }, + "node_modules/@editorjs/list": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/@editorjs/list/-/list-1.8.0.tgz", + "integrity": "sha512-Vq6cjyTXBzgegYv/MtTfuDdiz59yGhDEc/yAVXr6lmvoWAFs9cJ4TLuh4/9SbrbhIptcQLDvUjMDKmRrV6v2NQ==", + "dependencies": { + "@codexteam/icons": "^0.0.4" + } + }, + "node_modules/@editorjs/list/node_modules/@codexteam/icons": { + "version": "0.0.4", + "resolved": "https://registry.npmjs.org/@codexteam/icons/-/icons-0.0.4.tgz", + "integrity": "sha512-V8N/TY2TGyas4wLrPIFq7bcow68b3gu8DfDt1+rrHPtXxcexadKauRJL6eQgfG7Z0LCrN4boLRawR4S9gjIh/Q==" + }, + "node_modules/@editorjs/marker": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/@editorjs/marker/-/marker-1.3.0.tgz", + "integrity": "sha512-RYWYDnFPjNBJgR7KIGjB9gPnUwGvn2aIoRevAm422Wx1mg5eT4gcvwc0T5V76pYPSoD2Z0T2GPkzl9d1hl398w==", + "dependencies": { + "@codexteam/icons": "^0.0.5" + } + }, + "node_modules/@editorjs/marker/node_modules/@codexteam/icons": { + "version": "0.0.5", + "resolved": "https://registry.npmjs.org/@codexteam/icons/-/icons-0.0.5.tgz", + "integrity": "sha512-s6H2KXhLz2rgbMZSkRm8dsMJvyUNZsEjxobBEg9ztdrb1B2H3pEzY6iTwI4XUPJWJ3c3qRKwV4TrO3J5jUdoQA==" + }, + "node_modules/@editorjs/nested-list": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@editorjs/nested-list/-/nested-list-1.2.0.tgz", + "integrity": "sha512-e2EBqWiR2rg4WSH18psQt14wGvwCPrnZ1RhG+M99ru27ETqjMb+W79+1M8Bm3VXBRLkANTpxJGXwnJxluBp/GA==", + "dependencies": { + "@codexteam/icons": "^0.0.2" + } + }, + "node_modules/@editorjs/nested-list/node_modules/@codexteam/icons": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/@codexteam/icons/-/icons-0.0.2.tgz", + "integrity": "sha512-KdeKj3TwaTHqM3IXd5YjeJP39PBUZTb+dtHjGlf5+b0VgsxYD4qzsZkb11lzopZbAuDsHaZJmAYQ8LFligIT6Q==" + }, + "node_modules/@editorjs/paragraph": { + "version": "2.9.0", + "resolved": "https://registry.npmjs.org/@editorjs/paragraph/-/paragraph-2.9.0.tgz", + "integrity": "sha512-lI6x1eiqFx2X3KmMak6gBlimFqXhG35fQpXMxzrjIphNLr4uPsXhVbyMPimPoLUnS9rM6Q00vptXmP2QNDd0zg==", + "dependencies": { + "@codexteam/icons": "^0.0.4" + } + }, + "node_modules/@editorjs/paragraph/node_modules/@codexteam/icons": { + "version": "0.0.4", + "resolved": "https://registry.npmjs.org/@codexteam/icons/-/icons-0.0.4.tgz", + "integrity": "sha512-V8N/TY2TGyas4wLrPIFq7bcow68b3gu8DfDt1+rrHPtXxcexadKauRJL6eQgfG7Z0LCrN4boLRawR4S9gjIh/Q==" + }, + "node_modules/@editorjs/quote": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/@editorjs/quote/-/quote-2.5.0.tgz", + "integrity": "sha512-24Mu8cESaj34a0kg1Enj7qiZ3yiCOsZI59+8xpfXLO/NkO7hBYWNForVcBy5yIWs/VLlEZK11FP37f/mHrKugQ==", + "dependencies": { + "@codexteam/icons": "^0.0.5" + } + }, + "node_modules/@editorjs/quote/node_modules/@codexteam/icons": { + "version": "0.0.5", + "resolved": "https://registry.npmjs.org/@codexteam/icons/-/icons-0.0.5.tgz", + "integrity": "sha512-s6H2KXhLz2rgbMZSkRm8dsMJvyUNZsEjxobBEg9ztdrb1B2H3pEzY6iTwI4XUPJWJ3c3qRKwV4TrO3J5jUdoQA==" + }, + "node_modules/@editorjs/table": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@editorjs/table/-/table-2.2.0.tgz", + "integrity": "sha512-vVfiNEk1EHFj1ohObX4g7iB/mVhPkx0o8yMb+v5gV/XnOysbRk46hiLmntJfgYp/NZvbYxcZk3mPvrE/NAe+pg==", + "dependencies": { + "@codexteam/icons": "^0.0.6" + } + }, + "node_modules/@editorjs/table/node_modules/@codexteam/icons": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/@codexteam/icons/-/icons-0.0.6.tgz", + "integrity": "sha512-L7Q5PET8PjKcBT5wp7VR+FCjwCi5PUp7rd/XjsgQ0CI5FJz0DphyHGRILMuDUdCW2MQT9NHbVr4QP31vwAkS/A==" + }, + "node_modules/@editorjs/underline": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@editorjs/underline/-/underline-1.1.0.tgz", + "integrity": "sha512-vQj2ROW1KreD31QHlhaPikmDJGWYzRBusN4Zyfwl9nIIQCByt4S8fZQpsrRvH4sct5mkirsHllNT00rJlqHK7Q==", + "dependencies": { + "@codexteam/icons": "^0.0.6" + } + }, + "node_modules/@editorjs/underline/node_modules/@codexteam/icons": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/@codexteam/icons/-/icons-0.0.6.tgz", + "integrity": "sha512-L7Q5PET8PjKcBT5wp7VR+FCjwCi5PUp7rd/XjsgQ0CI5FJz0DphyHGRILMuDUdCW2MQT9NHbVr4QP31vwAkS/A==" + }, + "node_modules/@editorjs/warning": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/@editorjs/warning/-/warning-1.3.0.tgz", + "integrity": "sha512-b03oXNTxeqLXEH8Sqtzy0OXY3+Bbx6jpl2UnfFw9bN4KxTgrx3sIf5YtkavZmhZRmOFRFYdrl7bHxvr6KstO9Q==", + "dependencies": { + "@codexteam/icons": "^0.0.4" + } + }, + "node_modules/@editorjs/warning/node_modules/@codexteam/icons": { + "version": "0.0.4", + "resolved": "https://registry.npmjs.org/@codexteam/icons/-/icons-0.0.4.tgz", + "integrity": "sha512-V8N/TY2TGyas4wLrPIFq7bcow68b3gu8DfDt1+rrHPtXxcexadKauRJL6eQgfG7Z0LCrN4boLRawR4S9gjIh/Q==" + }, "node_modules/@esbuild/android-arm": { "version": "0.15.18", "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.15.18.tgz", @@ -83,6 +252,12 @@ "node": ">=12" } }, + "node_modules/@types/editorjs__header": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/@types/editorjs__header/-/editorjs__header-2.6.0.tgz", + "integrity": "sha512-J9TyO/BjNVddi+syyXpvMRMtVz5Z62pwmFKynWsgP+wnJYdWF8ABqgomokIsAvuEwH5NHa/YxsTltYcPPGCRRQ==", + "dev": true + }, "node_modules/@types/node": { "version": "16.18.10", "resolved": "https://registry.npmjs.org/@types/node/-/node-16.18.10.tgz", @@ -1785,11 +1960,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" - }, "node_modules/typescript": { "version": "4.7.4", "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.7.4.tgz", @@ -1889,53 +2059,6 @@ "@vue/shared": "3.2.45" } }, - "node_modules/vue-editor-js": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/vue-editor-js/-/vue-editor-js-2.0.2.tgz", - "integrity": "sha512-Y07q/Nj4/BJOQlvlKN5R4UFCMUVgnDbJxDSZvMGXNCnMJyT1TEQmS2HAuc9euCp8EDGo/sJnm3y0NUQ+gonx2w==", - "dependencies": { - "@editorjs/editorjs": "^2.18.0", - "@vue/composition-api": "^0.5.0" - } - }, - "node_modules/vue-editor-js/node_modules/@vue/compiler-sfc": { - "version": "2.7.14", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-2.7.14.tgz", - "integrity": "sha512-aNmNHyLPsw+sVvlQFQ2/8sjNuLtK54TC6cuKnVzAY93ks4ZBrvwQSnkkIh7bsbNhum5hJBS00wSDipQ937f5DA==", - "peer": true, - "dependencies": { - "@babel/parser": "^7.18.4", - "postcss": "^8.4.14", - "source-map": "^0.6.1" - } - }, - "node_modules/vue-editor-js/node_modules/@vue/composition-api": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/@vue/composition-api/-/composition-api-0.5.0.tgz", - "integrity": "sha512-9QDFWq7q839G1CTTaxeruPOTrrVOPSaVipJ2TxxK9QAruePNTHOGbOOFRpc8WLl4YPsu1/c29yBhMVmrXz8BZw==", - "dependencies": { - "tslib": "^1.9.3" - }, - "peerDependencies": { - "vue": "^2.5.22" - } - }, - "node_modules/vue-editor-js/node_modules/csstype": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.1.tgz", - "integrity": "sha512-DJR/VvkAvSZW9bTouZue2sSxDwdTN92uHjqeKVm+0dAqdfNykRzQ95tay8aXMBAAPpUiq4Qcug2L7neoRh2Egw==", - "peer": true - }, - "node_modules/vue-editor-js/node_modules/vue": { - "version": "2.7.14", - "resolved": "https://registry.npmjs.org/vue/-/vue-2.7.14.tgz", - "integrity": "sha512-b2qkFyOM0kwqWFuQmgd4o+uHGU7T+2z3T+WQp8UBjADfEv2n4FEMffzBmCKNP0IGzOEEfYjvtcC62xaSKeQDrQ==", - "peer": true, - "dependencies": { - "@vue/compiler-sfc": "2.7.14", - "csstype": "^3.1.0" - } - }, "node_modules/vue-router": { "version": "4.1.6", "resolved": "https://registry.npmjs.org/vue-router/-/vue-router-4.1.6.tgz", @@ -2016,6 +2139,51 @@ "resolved": "https://registry.npmjs.org/@codexteam/icons/-/icons-0.1.0.tgz", "integrity": "sha512-jW1fWnwtWzcP4FBGsaodbJY3s1ZaRU+IJy1pvJ7ygNQxkQinybJcwXoyt0a5mWwu/4w30A42EWhCrZn8lp4fdw==" }, + "@editorjs/checklist": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/@editorjs/checklist/-/checklist-1.4.0.tgz", + "integrity": "sha512-KmkgWFYwkcFFvh7oBaUiqg8NBmJSnB87EC0P6obfqo3uDjCXXnen+KJfP+7JBcQx/OsiDlOS/lTxkyhxNtKtsA==", + "requires": { + "@codexteam/icons": "^0.0.4" + }, + "dependencies": { + "@codexteam/icons": { + "version": "0.0.4", + "resolved": "https://registry.npmjs.org/@codexteam/icons/-/icons-0.0.4.tgz", + "integrity": "sha512-V8N/TY2TGyas4wLrPIFq7bcow68b3gu8DfDt1+rrHPtXxcexadKauRJL6eQgfG7Z0LCrN4boLRawR4S9gjIh/Q==" + } + } + }, + "@editorjs/code": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/@editorjs/code/-/code-2.8.0.tgz", + "integrity": "sha512-qlv1OqSEPKnLv/ZQgNFmVgqsMbGDkh/qgTEnbVWsS+yujo1nlwgVkqCB8tOkQGVsrpmAYLiWRlA413nKxxCN5w==", + "requires": { + "@codexteam/icons": "^0.0.5" + }, + "dependencies": { + "@codexteam/icons": { + "version": "0.0.5", + "resolved": "https://registry.npmjs.org/@codexteam/icons/-/icons-0.0.5.tgz", + "integrity": "sha512-s6H2KXhLz2rgbMZSkRm8dsMJvyUNZsEjxobBEg9ztdrb1B2H3pEzY6iTwI4XUPJWJ3c3qRKwV4TrO3J5jUdoQA==" + } + } + }, + "@editorjs/delimiter": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/@editorjs/delimiter/-/delimiter-1.3.0.tgz", + "integrity": "sha512-/qz+3yRSPmx6dJpBcwnDfgKtCjOrCsQRoDhXR+wLWirGOchOifhYwQ/6JZyTvcgmY84UEoYY29/dgdWOGVPEEQ==", + "requires": { + "@codexteam/icons": "^0.0.5" + }, + "dependencies": { + "@codexteam/icons": { + "version": "0.0.5", + "resolved": "https://registry.npmjs.org/@codexteam/icons/-/icons-0.0.5.tgz", + "integrity": "sha512-s6H2KXhLz2rgbMZSkRm8dsMJvyUNZsEjxobBEg9ztdrb1B2H3pEzY6iTwI4XUPJWJ3c3qRKwV4TrO3J5jUdoQA==" + } + } + }, "@editorjs/editorjs": { "version": "2.26.4", "resolved": "https://registry.npmjs.org/@editorjs/editorjs/-/editorjs-2.26.4.tgz", @@ -2028,6 +2196,141 @@ "nanoid": "^3.1.22" } }, + "@editorjs/header": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/@editorjs/header/-/header-2.7.0.tgz", + "integrity": "sha512-4fGKGe2ZYblVqR/P/iw5ieG00uXInFgNMftBMqJRYcB2hUPD30kuu7Sn6eJDcLXoKUMOeqi8Z2AlUxYAmvw7zQ==", + "requires": { + "@codexteam/icons": "^0.0.5" + }, + "dependencies": { + "@codexteam/icons": { + "version": "0.0.5", + "resolved": "https://registry.npmjs.org/@codexteam/icons/-/icons-0.0.5.tgz", + "integrity": "sha512-s6H2KXhLz2rgbMZSkRm8dsMJvyUNZsEjxobBEg9ztdrb1B2H3pEzY6iTwI4XUPJWJ3c3qRKwV4TrO3J5jUdoQA==" + } + } + }, + "@editorjs/list": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/@editorjs/list/-/list-1.8.0.tgz", + "integrity": "sha512-Vq6cjyTXBzgegYv/MtTfuDdiz59yGhDEc/yAVXr6lmvoWAFs9cJ4TLuh4/9SbrbhIptcQLDvUjMDKmRrV6v2NQ==", + "requires": { + "@codexteam/icons": "^0.0.4" + }, + "dependencies": { + "@codexteam/icons": { + "version": "0.0.4", + "resolved": "https://registry.npmjs.org/@codexteam/icons/-/icons-0.0.4.tgz", + "integrity": "sha512-V8N/TY2TGyas4wLrPIFq7bcow68b3gu8DfDt1+rrHPtXxcexadKauRJL6eQgfG7Z0LCrN4boLRawR4S9gjIh/Q==" + } + } + }, + "@editorjs/marker": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/@editorjs/marker/-/marker-1.3.0.tgz", + "integrity": "sha512-RYWYDnFPjNBJgR7KIGjB9gPnUwGvn2aIoRevAm422Wx1mg5eT4gcvwc0T5V76pYPSoD2Z0T2GPkzl9d1hl398w==", + "requires": { + "@codexteam/icons": "^0.0.5" + }, + "dependencies": { + "@codexteam/icons": { + "version": "0.0.5", + "resolved": "https://registry.npmjs.org/@codexteam/icons/-/icons-0.0.5.tgz", + "integrity": "sha512-s6H2KXhLz2rgbMZSkRm8dsMJvyUNZsEjxobBEg9ztdrb1B2H3pEzY6iTwI4XUPJWJ3c3qRKwV4TrO3J5jUdoQA==" + } + } + }, + "@editorjs/nested-list": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@editorjs/nested-list/-/nested-list-1.2.0.tgz", + "integrity": "sha512-e2EBqWiR2rg4WSH18psQt14wGvwCPrnZ1RhG+M99ru27ETqjMb+W79+1M8Bm3VXBRLkANTpxJGXwnJxluBp/GA==", + "requires": { + "@codexteam/icons": "^0.0.2" + }, + "dependencies": { + "@codexteam/icons": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/@codexteam/icons/-/icons-0.0.2.tgz", + "integrity": "sha512-KdeKj3TwaTHqM3IXd5YjeJP39PBUZTb+dtHjGlf5+b0VgsxYD4qzsZkb11lzopZbAuDsHaZJmAYQ8LFligIT6Q==" + } + } + }, + "@editorjs/paragraph": { + "version": "2.9.0", + "resolved": "https://registry.npmjs.org/@editorjs/paragraph/-/paragraph-2.9.0.tgz", + "integrity": "sha512-lI6x1eiqFx2X3KmMak6gBlimFqXhG35fQpXMxzrjIphNLr4uPsXhVbyMPimPoLUnS9rM6Q00vptXmP2QNDd0zg==", + "requires": { + "@codexteam/icons": "^0.0.4" + }, + "dependencies": { + "@codexteam/icons": { + "version": "0.0.4", + "resolved": "https://registry.npmjs.org/@codexteam/icons/-/icons-0.0.4.tgz", + "integrity": "sha512-V8N/TY2TGyas4wLrPIFq7bcow68b3gu8DfDt1+rrHPtXxcexadKauRJL6eQgfG7Z0LCrN4boLRawR4S9gjIh/Q==" + } + } + }, + "@editorjs/quote": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/@editorjs/quote/-/quote-2.5.0.tgz", + "integrity": "sha512-24Mu8cESaj34a0kg1Enj7qiZ3yiCOsZI59+8xpfXLO/NkO7hBYWNForVcBy5yIWs/VLlEZK11FP37f/mHrKugQ==", + "requires": { + "@codexteam/icons": "^0.0.5" + }, + "dependencies": { + "@codexteam/icons": { + "version": "0.0.5", + "resolved": "https://registry.npmjs.org/@codexteam/icons/-/icons-0.0.5.tgz", + "integrity": "sha512-s6H2KXhLz2rgbMZSkRm8dsMJvyUNZsEjxobBEg9ztdrb1B2H3pEzY6iTwI4XUPJWJ3c3qRKwV4TrO3J5jUdoQA==" + } + } + }, + "@editorjs/table": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@editorjs/table/-/table-2.2.0.tgz", + "integrity": "sha512-vVfiNEk1EHFj1ohObX4g7iB/mVhPkx0o8yMb+v5gV/XnOysbRk46hiLmntJfgYp/NZvbYxcZk3mPvrE/NAe+pg==", + "requires": { + "@codexteam/icons": "^0.0.6" + }, + "dependencies": { + "@codexteam/icons": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/@codexteam/icons/-/icons-0.0.6.tgz", + "integrity": "sha512-L7Q5PET8PjKcBT5wp7VR+FCjwCi5PUp7rd/XjsgQ0CI5FJz0DphyHGRILMuDUdCW2MQT9NHbVr4QP31vwAkS/A==" + } + } + }, + "@editorjs/underline": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@editorjs/underline/-/underline-1.1.0.tgz", + "integrity": "sha512-vQj2ROW1KreD31QHlhaPikmDJGWYzRBusN4Zyfwl9nIIQCByt4S8fZQpsrRvH4sct5mkirsHllNT00rJlqHK7Q==", + "requires": { + "@codexteam/icons": "^0.0.6" + }, + "dependencies": { + "@codexteam/icons": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/@codexteam/icons/-/icons-0.0.6.tgz", + "integrity": "sha512-L7Q5PET8PjKcBT5wp7VR+FCjwCi5PUp7rd/XjsgQ0CI5FJz0DphyHGRILMuDUdCW2MQT9NHbVr4QP31vwAkS/A==" + } + } + }, + "@editorjs/warning": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/@editorjs/warning/-/warning-1.3.0.tgz", + "integrity": "sha512-b03oXNTxeqLXEH8Sqtzy0OXY3+Bbx6jpl2UnfFw9bN4KxTgrx3sIf5YtkavZmhZRmOFRFYdrl7bHxvr6KstO9Q==", + "requires": { + "@codexteam/icons": "^0.0.4" + }, + "dependencies": { + "@codexteam/icons": { + "version": "0.0.4", + "resolved": "https://registry.npmjs.org/@codexteam/icons/-/icons-0.0.4.tgz", + "integrity": "sha512-V8N/TY2TGyas4wLrPIFq7bcow68b3gu8DfDt1+rrHPtXxcexadKauRJL6eQgfG7Z0LCrN4boLRawR4S9gjIh/Q==" + } + } + }, "@esbuild/android-arm": { "version": "0.15.18", "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.15.18.tgz", @@ -2042,6 +2345,12 @@ "dev": true, "optional": true }, + "@types/editorjs__header": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/@types/editorjs__header/-/editorjs__header-2.6.0.tgz", + "integrity": "sha512-J9TyO/BjNVddi+syyXpvMRMtVz5Z62pwmFKynWsgP+wnJYdWF8ABqgomokIsAvuEwH5NHa/YxsTltYcPPGCRRQ==", + "dev": true + }, "@types/node": { "version": "16.18.10", "resolved": "https://registry.npmjs.org/@types/node/-/node-16.18.10.tgz", @@ -3220,11 +3529,6 @@ "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", "dev": true }, - "tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" - }, "typescript": { "version": "4.7.4", "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.7.4.tgz", @@ -3278,52 +3582,6 @@ "@vue/shared": "3.2.45" } }, - "vue-editor-js": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/vue-editor-js/-/vue-editor-js-2.0.2.tgz", - "integrity": "sha512-Y07q/Nj4/BJOQlvlKN5R4UFCMUVgnDbJxDSZvMGXNCnMJyT1TEQmS2HAuc9euCp8EDGo/sJnm3y0NUQ+gonx2w==", - "requires": { - "@editorjs/editorjs": "^2.18.0", - "@vue/composition-api": "^0.5.0" - }, - "dependencies": { - "@vue/compiler-sfc": { - "version": "2.7.14", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-2.7.14.tgz", - "integrity": "sha512-aNmNHyLPsw+sVvlQFQ2/8sjNuLtK54TC6cuKnVzAY93ks4ZBrvwQSnkkIh7bsbNhum5hJBS00wSDipQ937f5DA==", - "peer": true, - "requires": { - "@babel/parser": "^7.18.4", - "postcss": "^8.4.14", - "source-map": "^0.6.1" - } - }, - "@vue/composition-api": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/@vue/composition-api/-/composition-api-0.5.0.tgz", - "integrity": "sha512-9QDFWq7q839G1CTTaxeruPOTrrVOPSaVipJ2TxxK9QAruePNTHOGbOOFRpc8WLl4YPsu1/c29yBhMVmrXz8BZw==", - "requires": { - "tslib": "^1.9.3" - } - }, - "csstype": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.1.tgz", - "integrity": "sha512-DJR/VvkAvSZW9bTouZue2sSxDwdTN92uHjqeKVm+0dAqdfNykRzQ95tay8aXMBAAPpUiq4Qcug2L7neoRh2Egw==", - "peer": true - }, - "vue": { - "version": "2.7.14", - "resolved": "https://registry.npmjs.org/vue/-/vue-2.7.14.tgz", - "integrity": "sha512-b2qkFyOM0kwqWFuQmgd4o+uHGU7T+2z3T+WQp8UBjADfEv2n4FEMffzBmCKNP0IGzOEEfYjvtcC62xaSKeQDrQ==", - "peer": true, - "requires": { - "@vue/compiler-sfc": "2.7.14", - "csstype": "^3.1.0" - } - } - } - }, "vue-router": { "version": "4.1.6", "resolved": "https://registry.npmjs.org/vue-router/-/vue-router-4.1.6.tgz", diff --git a/web/admin-gui/package.json b/web/admin-gui/package.json index 6e26990..0bbb6cf 100644 --- a/web/admin-gui/package.json +++ b/web/admin-gui/package.json @@ -9,12 +9,25 @@ "type-check": "vue-tsc --noEmit" }, "dependencies": { + "@editorjs/checklist": "^1.4.0", + "@editorjs/code": "^2.8.0", + "@editorjs/delimiter": "^1.3.0", + "@editorjs/editorjs": "^2.26.4", + "@editorjs/header": "^2.7.0", + "@editorjs/list": "^1.8.0", + "@editorjs/marker": "^1.3.0", + "@editorjs/nested-list": "^1.2.0", + "@editorjs/paragraph": "^2.9.0", + "@editorjs/quote": "^2.5.0", + "@editorjs/table": "^2.2.0", + "@editorjs/underline": "^1.1.0", + "@editorjs/warning": "^1.3.0", "pinia": "^2.0.28", "vue": "^3.2.38", - "vue-editor-js": "^2.0.2", "vue-router": "^4.1.5" }, "devDependencies": { + "@types/editorjs__header": "^2.6.0", "@types/node": "^16.11.56", "@vitejs/plugin-vue": "^3.0.3", "@vue/tsconfig": "^0.1.3", diff --git a/web/admin-gui/src/assets/base.css b/web/admin-gui/src/assets/base.css index 7b2b491..e4705c6 100644 --- a/web/admin-gui/src/assets/base.css +++ b/web/admin-gui/src/assets/base.css @@ -34,18 +34,39 @@ h1 { font-family: 'Frank Ruhl Libre', serif; font-size: 40px; } -h2 { font-size: 32px; } -h3 { font-size: 24px; } -h4 { font-size: 18px; } -h2, h3, h4, h5, h6 { + +h2 { + font-size: 32px; +} + +h3 { + font-size: 24px; +} + +h4 { + font-size: 18px; +} + +h2, +h3, +h4, +h5, +h6 { font-family: 'Nunito', sans-serif; } * { + box-sizing: border-box; +} + +p, +a, +input, +label, +button, +span { font-family: 'Hind', sans-serif; color: var(--neutral-dark); - - box-sizing: border-box; } .label-input, @@ -89,13 +110,13 @@ h2, h3, h4, h5, h6 { .button-disabled { border-radius: var(--radius); border: none; - + padding: 3px 16px; font-size: var(--font-body); font-weight: var(--medium-weight); - + background-color: var(--primary); - + transition: background-color 150ms; cursor: pointer; diff --git a/web/admin-gui/src/assets/editor_default_content.json b/web/admin-gui/src/assets/editor_default_content.json new file mode 100644 index 0000000..3e9d387 --- /dev/null +++ b/web/admin-gui/src/assets/editor_default_content.json @@ -0,0 +1,28 @@ +{ + "time": 1672423262433, + "blocks": [ + { + "id": "SsMzvSlYdr", + "type": "Header", + "data": { + "text": "Bienvenue sur l'éditeur d'article !", + "level": 2 + } + }, + { + "id": "SCdiyR3ZLh", + "type": "paragraph", + "data": { + "text": "Ici, vous pouvez créer votre article." + } + }, + { + "id": "PYzhBNCoxo", + "type": "paragraph", + "data": { + "text": "Supprimez ces blocks pour commencer.
" + } + } + ], + "version": "2.26.4" +} \ No newline at end of file diff --git a/web/admin-gui/src/assets/editor_translation.json b/web/admin-gui/src/assets/editor_translation.json new file mode 100644 index 0000000..194d45c --- /dev/null +++ b/web/admin-gui/src/assets/editor_translation.json @@ -0,0 +1,69 @@ +{ + "messages": { + "ui": { + "blockTunes": { + "toggler": { + "Click to tune": "Cliquez pour régler", + "or drag to move": "ou glissez pour déplacer" + } + }, + "inlineToolbar": { + "converter": { + "Convert to": "Convertir en" + } + }, + "toolbar": { + "toolbox": { + "Add": "Ajouter" + } + } + }, + "toolNames": { + "Text": "Paragraphe", + "Heading": "Titre", + "List": "Liste", + "Warning": "Avertissement", + "Checklist": "Checklist", + "Quote": "Citation", + "Code": "Code", + "Delimiter": "Délimiteur", + "Table": "Tableau", + "Link": "Lien", + "Marker": "Surligner", + "Bold": "Gras", + "Italic": "Italique", + "Underline": "Sousligner" + }, + "tools": { + "Header": { + "Heading 1": "Titre 1", + "Heading 2": "Titre 2", + "Heading 3": "Titre 3", + "Heading 4": "Titre 4", + "Heading 5": "Titre 5", + "Heading 6": "Titre 6" + }, + "Warning": { + "Title": "Titre", + "Message": "Message" + }, + "stub": { + "The block can not be displayed correctly.": "Le block ne peut pas être affiché correctement :(." + }, + "Code": { + "Enter a code": "Entrez votre code" + } + }, + "blockTunes": { + "delete": { + "Delete": "Supprimer" + }, + "moveUp": { + "Move up": "Vers le haut" + }, + "moveDown": { + "Move down": "Vers le bas" + } + } + } +} \ No newline at end of file diff --git a/web/admin-gui/src/components/Editor.vue b/web/admin-gui/src/components/Editor.vue new file mode 100644 index 0000000..d09dc6b --- /dev/null +++ b/web/admin-gui/src/components/Editor.vue @@ -0,0 +1,83 @@ + + + + + \ No newline at end of file diff --git a/web/admin-gui/src/views/Debug.vue b/web/admin-gui/src/views/Debug.vue index a53c4c3..6945bc2 100644 --- a/web/admin-gui/src/views/Debug.vue +++ b/web/admin-gui/src/views/Debug.vue @@ -1,71 +1,62 @@ + + \ No newline at end of file