Switch to Codemirror 6.

This commit is contained in:
Buster Neece 2022-12-13 22:10:21 -06:00
parent 706ba7045c
commit e355cd97d7
No known key found for this signature in database
GPG Key ID: F1D2E64A0005E80E
9 changed files with 495 additions and 608 deletions

View File

@ -9,6 +9,8 @@
"dependencies": {
"@babel/core": "^7.15.5",
"@babel/preset-env": "^7.15.6",
"@codemirror/lang-css": "^6.0.1",
"@codemirror/lang-javascript": "^6.1.2",
"@fancyapps/fancybox": "^3.5.7",
"@flowjs/flow.js": "^2.14.1",
"@fullcalendar/core": "^5.9.0",
@ -27,7 +29,7 @@
"chart.js": "^4.0.1",
"chartjs-adapter-luxon": "^1.1.0",
"chartjs-plugin-zoom": "^2.0.0",
"codemirror": "^5.62.3",
"codemirror": "^6",
"css-loader": "^6.5.0",
"del": "^7",
"easygettext": "^2.17.0",
@ -63,6 +65,7 @@
"sweetalert2": "11.4.8",
"vue": "^3.2",
"vue-axios": "^3.5",
"vue-codemirror6": "^1.1.1",
"vue-loader": "^17",
"vue-style-loader": "^4.1.3",
"vue3-daterange-picker": "^1",
@ -71,7 +74,7 @@
"wavesurfer.js": "^6",
"webpack": "^5.52.1",
"webpack-assets-manifest": "^5",
"webpack-cli": "^4.8.0",
"webpack-cli": "^5",
"zxcvbn": "^4.4.2"
}
},
@ -1573,6 +1576,107 @@
"node": ">=6.9.0"
}
},
"node_modules/@codemirror/autocomplete": {
"version": "6.3.4",
"resolved": "https://registry.npmjs.org/@codemirror/autocomplete/-/autocomplete-6.3.4.tgz",
"integrity": "sha512-irxKsTSjS0OkfMWWt9YxtNK97++/E+XIHfKnRpSVfZyHzda/amYF0BR+T8mMkrGQWidx2zApxHx08GT13egyQA==",
"dependencies": {
"@codemirror/language": "^6.0.0",
"@codemirror/state": "^6.0.0",
"@codemirror/view": "^6.6.0",
"@lezer/common": "^1.0.0"
},
"peerDependencies": {
"@codemirror/language": "^6.0.0",
"@codemirror/state": "^6.0.0",
"@codemirror/view": "^6.0.0",
"@lezer/common": "^1.0.0"
}
},
"node_modules/@codemirror/commands": {
"version": "6.1.2",
"resolved": "https://registry.npmjs.org/@codemirror/commands/-/commands-6.1.2.tgz",
"integrity": "sha512-sO3jdX1s0pam6lIdeSJLMN3DQ6mPEbM4yLvyKkdqtmd/UDwhXA5+AwFJ89rRXm6vTeOXBsE5cAmlos/t7MJdgg==",
"dependencies": {
"@codemirror/language": "^6.0.0",
"@codemirror/state": "^6.0.0",
"@codemirror/view": "^6.0.0",
"@lezer/common": "^1.0.0"
}
},
"node_modules/@codemirror/lang-css": {
"version": "6.0.1",
"resolved": "https://registry.npmjs.org/@codemirror/lang-css/-/lang-css-6.0.1.tgz",
"integrity": "sha512-rlLq1Dt0WJl+2epLQeAsfqIsx3lGu4HStHCJu95nGGuz2P2fNugbU3dQYafr2VRjM4eMC9HviI6jvS98CNtG5w==",
"dependencies": {
"@codemirror/autocomplete": "^6.0.0",
"@codemirror/language": "^6.0.0",
"@codemirror/state": "^6.0.0",
"@lezer/css": "^1.0.0"
}
},
"node_modules/@codemirror/lang-javascript": {
"version": "6.1.2",
"resolved": "https://registry.npmjs.org/@codemirror/lang-javascript/-/lang-javascript-6.1.2.tgz",
"integrity": "sha512-OcwLfZXdQ1OHrLiIcKCn7MqZ7nx205CMKlhe+vL88pe2ymhT9+2P+QhwkYGxMICj8TDHyp8HFKVwpiisUT7iEQ==",
"dependencies": {
"@codemirror/autocomplete": "^6.0.0",
"@codemirror/language": "^6.0.0",
"@codemirror/lint": "^6.0.0",
"@codemirror/state": "^6.0.0",
"@codemirror/view": "^6.0.0",
"@lezer/common": "^1.0.0",
"@lezer/javascript": "^1.0.0"
}
},
"node_modules/@codemirror/language": {
"version": "6.3.1",
"resolved": "https://registry.npmjs.org/@codemirror/language/-/language-6.3.1.tgz",
"integrity": "sha512-MK+G1QKaGfSEUg9YEFaBkMBI6j1ge4VMBPZv9fDYotw7w695c42x5Ba1mmwBkesYnzYFBfte6Hh9TDcKa6xORQ==",
"dependencies": {
"@codemirror/state": "^6.0.0",
"@codemirror/view": "^6.0.0",
"@lezer/common": "^1.0.0",
"@lezer/highlight": "^1.0.0",
"@lezer/lr": "^1.0.0",
"style-mod": "^4.0.0"
}
},
"node_modules/@codemirror/lint": {
"version": "6.1.0",
"resolved": "https://registry.npmjs.org/@codemirror/lint/-/lint-6.1.0.tgz",
"integrity": "sha512-mdvDQrjRmYPvQ3WrzF6Ewaao+NWERYtpthJvoQ3tK3t/44Ynhk8ZGjTSL9jMEv8CgSMogmt75X8ceOZRDSXHtQ==",
"dependencies": {
"@codemirror/state": "^6.0.0",
"@codemirror/view": "^6.0.0",
"crelt": "^1.0.5"
}
},
"node_modules/@codemirror/search": {
"version": "6.2.3",
"resolved": "https://registry.npmjs.org/@codemirror/search/-/search-6.2.3.tgz",
"integrity": "sha512-V9n9233lopQhB1dyjsBK2Wc1i+8hcCqxl1wQ46c5HWWLePoe4FluV3TGHoZ04rBRlGjNyz9DTmpJErig8UE4jw==",
"dependencies": {
"@codemirror/state": "^6.0.0",
"@codemirror/view": "^6.0.0",
"crelt": "^1.0.5"
}
},
"node_modules/@codemirror/state": {
"version": "6.1.4",
"resolved": "https://registry.npmjs.org/@codemirror/state/-/state-6.1.4.tgz",
"integrity": "sha512-g+3OJuRylV5qsXuuhrc6Cvs1NQluNioepYMM2fhnpYkNk7NgX+j0AFuevKSVKzTDmDyt9+Puju+zPdHNECzCNQ=="
},
"node_modules/@codemirror/view": {
"version": "6.7.1",
"resolved": "https://registry.npmjs.org/@codemirror/view/-/view-6.7.1.tgz",
"integrity": "sha512-kYtS+uqYw/q/0ytYxpkqE1JVuK5NsbmBklWYhwLFTKO9gVuTdh/kDEeZPKorbqHcJ+P+ucrhcsS1czVweOpT2g==",
"dependencies": {
"@codemirror/state": "^6.1.4",
"style-mod": "^4.0.0",
"w3c-keyname": "^2.2.4"
}
},
"node_modules/@discoveryjs/json-ext": {
"version": "0.5.7",
"resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz",
@ -1798,6 +1902,45 @@
"@jridgewell/sourcemap-codec": "1.4.14"
}
},
"node_modules/@lezer/common": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/@lezer/common/-/common-1.0.2.tgz",
"integrity": "sha512-SVgiGtMnMnW3ActR8SXgsDhw7a0w0ChHSYAyAUxxrOiJ1OqYWEKk/xJd84tTSPo1mo6DXLObAJALNnd0Hrv7Ng=="
},
"node_modules/@lezer/css": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/@lezer/css/-/css-1.1.1.tgz",
"integrity": "sha512-mSjx+unLLapEqdOYDejnGBokB5+AiJKZVclmud0MKQOKx3DLJ5b5VTCstgDDknR6iIV4gVrN6euzsCnj0A2gQA==",
"dependencies": {
"@lezer/highlight": "^1.0.0",
"@lezer/lr": "^1.0.0"
}
},
"node_modules/@lezer/highlight": {
"version": "1.1.3",
"resolved": "https://registry.npmjs.org/@lezer/highlight/-/highlight-1.1.3.tgz",
"integrity": "sha512-3vLKLPThO4td43lYRBygmMY18JN3CPh9w+XS2j8WC30vR4yZeFG4z1iFe4jXE43NtGqe//zHW5q8ENLlHvz9gw==",
"dependencies": {
"@lezer/common": "^1.0.0"
}
},
"node_modules/@lezer/javascript": {
"version": "1.3.1",
"resolved": "https://registry.npmjs.org/@lezer/javascript/-/javascript-1.3.1.tgz",
"integrity": "sha512-3Z6OggGxRuqMntAuadxW0Oy7Zbs56KJSwujDc6vwhVfbi5upHOEzNIrNLvphDU/HozLoTCGQcjNmjLkb2Zr5pg==",
"dependencies": {
"@lezer/highlight": "^1.0.0",
"@lezer/lr": "^1.0.0"
}
},
"node_modules/@lezer/lr": {
"version": "1.2.5",
"resolved": "https://registry.npmjs.org/@lezer/lr/-/lr-1.2.5.tgz",
"integrity": "sha512-f9319YG1A/3ysgUE3bqCHEd7g+3ZZ71MWlwEc42mpnLVYXgfJJgtu1XAyBB4Kz8FmqmnFe9caopDqKeMMMAU6g==",
"dependencies": {
"@lezer/common": "^1.0.0"
}
},
"node_modules/@nodelib/fs.scandir": {
"version": "2.1.5",
"resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz",
@ -2392,31 +2535,39 @@
}
},
"node_modules/@webpack-cli/configtest": {
"version": "1.2.0",
"resolved": "https://registry.npmjs.org/@webpack-cli/configtest/-/configtest-1.2.0.tgz",
"integrity": "sha512-4FB8Tj6xyVkyqjj1OaTqCjXYULB9FMkqQ8yGrZjRDrYh0nOE+7Lhs45WioWQQMV+ceFlE368Ukhe6xdvJM9Egg==",
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/@webpack-cli/configtest/-/configtest-2.0.1.tgz",
"integrity": "sha512-njsdJXJSiS2iNbQVS0eT8A/KPnmyH4pv1APj2K0d1wrZcBLw+yppxOy4CGqa0OxDJkzfL/XELDhD8rocnIwB5A==",
"engines": {
"node": ">=14.15.0"
},
"peerDependencies": {
"webpack": "4.x.x || 5.x.x",
"webpack-cli": "4.x.x"
"webpack": "5.x.x",
"webpack-cli": "5.x.x"
}
},
"node_modules/@webpack-cli/info": {
"version": "1.5.0",
"resolved": "https://registry.npmjs.org/@webpack-cli/info/-/info-1.5.0.tgz",
"integrity": "sha512-e8tSXZpw2hPl2uMJY6fsMswaok5FdlGNRTktvFk2sD8RjH0hE2+XistawJx1vmKteh4NmGmNUrp+Tb2w+udPcQ==",
"dependencies": {
"envinfo": "^7.7.3"
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/@webpack-cli/info/-/info-2.0.1.tgz",
"integrity": "sha512-fE1UEWTwsAxRhrJNikE7v4EotYflkEhBL7EbajfkPlf6E37/2QshOy/D48Mw8G5XMFlQtS6YV42vtbG9zBpIQA==",
"engines": {
"node": ">=14.15.0"
},
"peerDependencies": {
"webpack-cli": "4.x.x"
"webpack": "5.x.x",
"webpack-cli": "5.x.x"
}
},
"node_modules/@webpack-cli/serve": {
"version": "1.7.0",
"resolved": "https://registry.npmjs.org/@webpack-cli/serve/-/serve-1.7.0.tgz",
"integrity": "sha512-oxnCNGj88fL+xzV+dacXs44HcDwf1ovs3AuEzvP7mqXw7fQntqIhQ1BRmynh4qEKQSSSRSWVyXRjmTbZIX9V2Q==",
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/@webpack-cli/serve/-/serve-2.0.1.tgz",
"integrity": "sha512-0G7tNyS+yW8TdgHwZKlDWYXFA6OJQnoLCQvYKkQP0Q2X205PSQ6RNUj0M+1OB/9gRQaUZ/ccYfaxd0nhaWKfjw==",
"engines": {
"node": ">=14.15.0"
},
"peerDependencies": {
"webpack-cli": "4.x.x"
"webpack": "5.x.x",
"webpack-cli": "5.x.x"
},
"peerDependenciesMeta": {
"webpack-dev-server": {
@ -3651,9 +3802,18 @@
}
},
"node_modules/codemirror": {
"version": "5.65.10",
"resolved": "https://registry.npmjs.org/codemirror/-/codemirror-5.65.10.tgz",
"integrity": "sha512-IXAG5wlhbgcTJ6rZZcmi4+sjWIbJqIGfeg3tNa3yX84Jb3T4huS5qzQAo/cUisc1l3bI47WZodpyf7cYcocDKg=="
"version": "6.0.1",
"resolved": "https://registry.npmjs.org/codemirror/-/codemirror-6.0.1.tgz",
"integrity": "sha512-J8j+nZ+CdWmIeFIGXEFbFPtpiYacFMDR8GlHK3IyHQJMCaVRfGx9NT+Hxivv1ckLWPvNdZqndbr/7lVhrf/Svg==",
"dependencies": {
"@codemirror/autocomplete": "^6.0.0",
"@codemirror/commands": "^6.0.0",
"@codemirror/language": "^6.0.0",
"@codemirror/lint": "^6.0.0",
"@codemirror/search": "^6.0.0",
"@codemirror/state": "^6.0.0",
"@codemirror/view": "^6.0.0"
}
},
"node_modules/collection-map": {
"version": "1.0.0",
@ -3844,6 +4004,11 @@
"node": ">=10"
}
},
"node_modules/crelt": {
"version": "1.0.5",
"resolved": "https://registry.npmjs.org/crelt/-/crelt-1.0.5.tgz",
"integrity": "sha512-+BO9wPPi+DWTDcNYhr/W90myha8ptzftZT+LwcmUbbok0rcP/fequmFYCw8NMoH7pkAZQzU78b3kYrlua5a9eA=="
},
"node_modules/cross-spawn": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-4.0.0.tgz",
@ -9260,6 +9425,11 @@
"node": ">=10"
}
},
"node_modules/style-mod": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/style-mod/-/style-mod-4.0.0.tgz",
"integrity": "sha512-OPhtyEjyyN9x3nhPsu76f52yUGXiZcgvsrFVtvTkyGRQJ0XK+GPc6ov1z+lRpbeabka+MYEQxOYRnt5nF30aMw=="
},
"node_modules/supports-color": {
"version": "5.5.0",
"resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
@ -9999,6 +10169,53 @@
"vue": "^3.0.0 || ^2.0.0"
}
},
"node_modules/vue-codemirror6": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/vue-codemirror6/-/vue-codemirror6-1.1.1.tgz",
"integrity": "sha512-woQHQQ5uf2lXuWfDhfYh/JJIDqAza6CmbtOECHVuF5BhPIbEak/4m/RuV1na4GWssfCjSdHIzfNwjNXh6u9pVA==",
"dependencies": {
"vue-demi": "latest"
},
"engines": {
"node": ">=18.12.1",
"yarn": ">=1.22.10"
},
"peerDependencies": {
"@vue/composition-api": "^1.7.1",
"codemirror": "^6.0.1",
"vue": "^2.6.14 || ^3.2.39"
},
"peerDependenciesMeta": {
"@vue/composition-api": {
"optional": true
}
}
},
"node_modules/vue-codemirror6/node_modules/vue-demi": {
"version": "0.13.11",
"resolved": "https://registry.npmjs.org/vue-demi/-/vue-demi-0.13.11.tgz",
"integrity": "sha512-IR8HoEEGM65YY3ZJYAjMlKygDQn25D5ajNFNoKh9RSDMQtlzCxtfQjdQgv9jjK+m3377SsJXY8ysq8kLCZL25A==",
"hasInstallScript": true,
"bin": {
"vue-demi-fix": "bin/vue-demi-fix.js",
"vue-demi-switch": "bin/vue-demi-switch.js"
},
"engines": {
"node": ">=12"
},
"funding": {
"url": "https://github.com/sponsors/antfu"
},
"peerDependencies": {
"@vue/composition-api": "^1.0.0-rc.1",
"vue": "^3.0.0-0 || ^2.6.0"
},
"peerDependenciesMeta": {
"@vue/composition-api": {
"optional": true
}
}
},
"node_modules/vue-functional-data-merge": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/vue-functional-data-merge/-/vue-functional-data-merge-3.1.0.tgz",
@ -10244,6 +10461,11 @@
"sortablejs": "1.10.2"
}
},
"node_modules/w3c-keyname": {
"version": "2.2.6",
"resolved": "https://registry.npmjs.org/w3c-keyname/-/w3c-keyname-2.2.6.tgz",
"integrity": "sha512-f+fciywl1SJEniZHD6H+kUO8gOnwIr7f4ijKA6+ZvJFjeGi1r4PDLl53Ayud9O/rk64RqgoQine0feoeOU0kXg=="
},
"node_modules/watchpack": {
"version": "2.4.0",
"resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz",
@ -10397,43 +10619,41 @@
}
},
"node_modules/webpack-cli": {
"version": "4.10.0",
"resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-4.10.0.tgz",
"integrity": "sha512-NLhDfH/h4O6UOy+0LSso42xvYypClINuMNBVVzX4vX98TmTaTUxwRbXdhucbFMd2qLaCTcLq/PdYrvi8onw90w==",
"version": "5.0.1",
"resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-5.0.1.tgz",
"integrity": "sha512-S3KVAyfwUqr0Mo/ur3NzIp6jnerNpo7GUO6so51mxLi1spqsA17YcMXy0WOIJtBSnj748lthxC6XLbNKh/ZC+A==",
"dependencies": {
"@discoveryjs/json-ext": "^0.5.0",
"@webpack-cli/configtest": "^1.2.0",
"@webpack-cli/info": "^1.5.0",
"@webpack-cli/serve": "^1.7.0",
"@webpack-cli/configtest": "^2.0.1",
"@webpack-cli/info": "^2.0.1",
"@webpack-cli/serve": "^2.0.1",
"colorette": "^2.0.14",
"commander": "^7.0.0",
"commander": "^9.4.1",
"cross-spawn": "^7.0.3",
"envinfo": "^7.7.3",
"fastest-levenshtein": "^1.0.12",
"import-local": "^3.0.2",
"interpret": "^2.2.0",
"rechoir": "^0.7.0",
"interpret": "^3.1.1",
"rechoir": "^0.8.0",
"webpack-merge": "^5.7.3"
},
"bin": {
"webpack-cli": "bin/cli.js"
},
"engines": {
"node": ">=10.13.0"
"node": ">=14.15.0"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/webpack"
},
"peerDependencies": {
"webpack": "4.x.x || 5.x.x"
"webpack": "5.x.x"
},
"peerDependenciesMeta": {
"@webpack-cli/generators": {
"optional": true
},
"@webpack-cli/migrate": {
"optional": true
},
"webpack-bundle-analyzer": {
"optional": true
},
@ -10443,11 +10663,11 @@
}
},
"node_modules/webpack-cli/node_modules/commander": {
"version": "7.2.0",
"resolved": "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz",
"integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==",
"version": "9.4.1",
"resolved": "https://registry.npmjs.org/commander/-/commander-9.4.1.tgz",
"integrity": "sha512-5EEkTNyHNGFPD2H+c/dXXfQZYa/scCKasxWcXJaWnNJ99pnQN9Vnmqow+p+PlFPE63Q6mThaZws1T+HxfpgtPw==",
"engines": {
"node": ">= 10"
"node": "^12.20.0 || >=14"
}
},
"node_modules/webpack-cli/node_modules/cross-spawn": {
@ -10464,22 +10684,22 @@
}
},
"node_modules/webpack-cli/node_modules/interpret": {
"version": "2.2.0",
"resolved": "https://registry.npmjs.org/interpret/-/interpret-2.2.0.tgz",
"integrity": "sha512-Ju0Bz/cEia55xDwUWEa8+olFpCiQoypjnQySseKtmjNrnps3P+xfpUmGr90T7yjlVJmOtybRvPXhKMbHr+fWnw==",
"version": "3.1.1",
"resolved": "https://registry.npmjs.org/interpret/-/interpret-3.1.1.tgz",
"integrity": "sha512-6xwYfHbajpoF0xLW+iwLkhwgvLoZDfjYfoFNu8ftMoXINzwuymNLd9u/KmwtdT2GbR+/Cz66otEGEVVUHX9QLQ==",
"engines": {
"node": ">= 0.10"
"node": ">=10.13.0"
}
},
"node_modules/webpack-cli/node_modules/rechoir": {
"version": "0.7.1",
"resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.7.1.tgz",
"integrity": "sha512-/njmZ8s1wVeR6pjTZ+0nCnv8SpZNRMT2D1RLOJQESlYFDBvwpTA4KWJpZ+sBJ4+vhjILRcK7JIFdGCdxEAAitg==",
"version": "0.8.0",
"resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.8.0.tgz",
"integrity": "sha512-/vxpCXddiX8NGfGO/mTafwjq4aFa/71pvamip0++IQk3zG8cbCj0fifNPrjjF1XMXUne91jL9OoxmdykoEtifQ==",
"dependencies": {
"resolve": "^1.9.0"
"resolve": "^1.20.0"
},
"engines": {
"node": ">= 0.10"
"node": ">= 10.13.0"
}
},
"node_modules/webpack-cli/node_modules/which": {
@ -11690,6 +11910,101 @@
"to-fast-properties": "^2.0.0"
}
},
"@codemirror/autocomplete": {
"version": "6.3.4",
"resolved": "https://registry.npmjs.org/@codemirror/autocomplete/-/autocomplete-6.3.4.tgz",
"integrity": "sha512-irxKsTSjS0OkfMWWt9YxtNK97++/E+XIHfKnRpSVfZyHzda/amYF0BR+T8mMkrGQWidx2zApxHx08GT13egyQA==",
"requires": {
"@codemirror/language": "^6.0.0",
"@codemirror/state": "^6.0.0",
"@codemirror/view": "^6.6.0",
"@lezer/common": "^1.0.0"
}
},
"@codemirror/commands": {
"version": "6.1.2",
"resolved": "https://registry.npmjs.org/@codemirror/commands/-/commands-6.1.2.tgz",
"integrity": "sha512-sO3jdX1s0pam6lIdeSJLMN3DQ6mPEbM4yLvyKkdqtmd/UDwhXA5+AwFJ89rRXm6vTeOXBsE5cAmlos/t7MJdgg==",
"requires": {
"@codemirror/language": "^6.0.0",
"@codemirror/state": "^6.0.0",
"@codemirror/view": "^6.0.0",
"@lezer/common": "^1.0.0"
}
},
"@codemirror/lang-css": {
"version": "6.0.1",
"resolved": "https://registry.npmjs.org/@codemirror/lang-css/-/lang-css-6.0.1.tgz",
"integrity": "sha512-rlLq1Dt0WJl+2epLQeAsfqIsx3lGu4HStHCJu95nGGuz2P2fNugbU3dQYafr2VRjM4eMC9HviI6jvS98CNtG5w==",
"requires": {
"@codemirror/autocomplete": "^6.0.0",
"@codemirror/language": "^6.0.0",
"@codemirror/state": "^6.0.0",
"@lezer/css": "^1.0.0"
}
},
"@codemirror/lang-javascript": {
"version": "6.1.2",
"resolved": "https://registry.npmjs.org/@codemirror/lang-javascript/-/lang-javascript-6.1.2.tgz",
"integrity": "sha512-OcwLfZXdQ1OHrLiIcKCn7MqZ7nx205CMKlhe+vL88pe2ymhT9+2P+QhwkYGxMICj8TDHyp8HFKVwpiisUT7iEQ==",
"requires": {
"@codemirror/autocomplete": "^6.0.0",
"@codemirror/language": "^6.0.0",
"@codemirror/lint": "^6.0.0",
"@codemirror/state": "^6.0.0",
"@codemirror/view": "^6.0.0",
"@lezer/common": "^1.0.0",
"@lezer/javascript": "^1.0.0"
}
},
"@codemirror/language": {
"version": "6.3.1",
"resolved": "https://registry.npmjs.org/@codemirror/language/-/language-6.3.1.tgz",
"integrity": "sha512-MK+G1QKaGfSEUg9YEFaBkMBI6j1ge4VMBPZv9fDYotw7w695c42x5Ba1mmwBkesYnzYFBfte6Hh9TDcKa6xORQ==",
"requires": {
"@codemirror/state": "^6.0.0",
"@codemirror/view": "^6.0.0",
"@lezer/common": "^1.0.0",
"@lezer/highlight": "^1.0.0",
"@lezer/lr": "^1.0.0",
"style-mod": "^4.0.0"
}
},
"@codemirror/lint": {
"version": "6.1.0",
"resolved": "https://registry.npmjs.org/@codemirror/lint/-/lint-6.1.0.tgz",
"integrity": "sha512-mdvDQrjRmYPvQ3WrzF6Ewaao+NWERYtpthJvoQ3tK3t/44Ynhk8ZGjTSL9jMEv8CgSMogmt75X8ceOZRDSXHtQ==",
"requires": {
"@codemirror/state": "^6.0.0",
"@codemirror/view": "^6.0.0",
"crelt": "^1.0.5"
}
},
"@codemirror/search": {
"version": "6.2.3",
"resolved": "https://registry.npmjs.org/@codemirror/search/-/search-6.2.3.tgz",
"integrity": "sha512-V9n9233lopQhB1dyjsBK2Wc1i+8hcCqxl1wQ46c5HWWLePoe4FluV3TGHoZ04rBRlGjNyz9DTmpJErig8UE4jw==",
"requires": {
"@codemirror/state": "^6.0.0",
"@codemirror/view": "^6.0.0",
"crelt": "^1.0.5"
}
},
"@codemirror/state": {
"version": "6.1.4",
"resolved": "https://registry.npmjs.org/@codemirror/state/-/state-6.1.4.tgz",
"integrity": "sha512-g+3OJuRylV5qsXuuhrc6Cvs1NQluNioepYMM2fhnpYkNk7NgX+j0AFuevKSVKzTDmDyt9+Puju+zPdHNECzCNQ=="
},
"@codemirror/view": {
"version": "6.7.1",
"resolved": "https://registry.npmjs.org/@codemirror/view/-/view-6.7.1.tgz",
"integrity": "sha512-kYtS+uqYw/q/0ytYxpkqE1JVuK5NsbmBklWYhwLFTKO9gVuTdh/kDEeZPKorbqHcJ+P+ucrhcsS1czVweOpT2g==",
"requires": {
"@codemirror/state": "^6.1.4",
"style-mod": "^4.0.0",
"w3c-keyname": "^2.2.4"
}
},
"@discoveryjs/json-ext": {
"version": "0.5.7",
"resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz",
@ -11876,6 +12191,45 @@
"@jridgewell/sourcemap-codec": "1.4.14"
}
},
"@lezer/common": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/@lezer/common/-/common-1.0.2.tgz",
"integrity": "sha512-SVgiGtMnMnW3ActR8SXgsDhw7a0w0ChHSYAyAUxxrOiJ1OqYWEKk/xJd84tTSPo1mo6DXLObAJALNnd0Hrv7Ng=="
},
"@lezer/css": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/@lezer/css/-/css-1.1.1.tgz",
"integrity": "sha512-mSjx+unLLapEqdOYDejnGBokB5+AiJKZVclmud0MKQOKx3DLJ5b5VTCstgDDknR6iIV4gVrN6euzsCnj0A2gQA==",
"requires": {
"@lezer/highlight": "^1.0.0",
"@lezer/lr": "^1.0.0"
}
},
"@lezer/highlight": {
"version": "1.1.3",
"resolved": "https://registry.npmjs.org/@lezer/highlight/-/highlight-1.1.3.tgz",
"integrity": "sha512-3vLKLPThO4td43lYRBygmMY18JN3CPh9w+XS2j8WC30vR4yZeFG4z1iFe4jXE43NtGqe//zHW5q8ENLlHvz9gw==",
"requires": {
"@lezer/common": "^1.0.0"
}
},
"@lezer/javascript": {
"version": "1.3.1",
"resolved": "https://registry.npmjs.org/@lezer/javascript/-/javascript-1.3.1.tgz",
"integrity": "sha512-3Z6OggGxRuqMntAuadxW0Oy7Zbs56KJSwujDc6vwhVfbi5upHOEzNIrNLvphDU/HozLoTCGQcjNmjLkb2Zr5pg==",
"requires": {
"@lezer/highlight": "^1.0.0",
"@lezer/lr": "^1.0.0"
}
},
"@lezer/lr": {
"version": "1.2.5",
"resolved": "https://registry.npmjs.org/@lezer/lr/-/lr-1.2.5.tgz",
"integrity": "sha512-f9319YG1A/3ysgUE3bqCHEd7g+3ZZ71MWlwEc42mpnLVYXgfJJgtu1XAyBB4Kz8FmqmnFe9caopDqKeMMMAU6g==",
"requires": {
"@lezer/common": "^1.0.0"
}
},
"@nodelib/fs.scandir": {
"version": "2.1.5",
"resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz",
@ -12334,23 +12688,21 @@
}
},
"@webpack-cli/configtest": {
"version": "1.2.0",
"resolved": "https://registry.npmjs.org/@webpack-cli/configtest/-/configtest-1.2.0.tgz",
"integrity": "sha512-4FB8Tj6xyVkyqjj1OaTqCjXYULB9FMkqQ8yGrZjRDrYh0nOE+7Lhs45WioWQQMV+ceFlE368Ukhe6xdvJM9Egg==",
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/@webpack-cli/configtest/-/configtest-2.0.1.tgz",
"integrity": "sha512-njsdJXJSiS2iNbQVS0eT8A/KPnmyH4pv1APj2K0d1wrZcBLw+yppxOy4CGqa0OxDJkzfL/XELDhD8rocnIwB5A==",
"requires": {}
},
"@webpack-cli/info": {
"version": "1.5.0",
"resolved": "https://registry.npmjs.org/@webpack-cli/info/-/info-1.5.0.tgz",
"integrity": "sha512-e8tSXZpw2hPl2uMJY6fsMswaok5FdlGNRTktvFk2sD8RjH0hE2+XistawJx1vmKteh4NmGmNUrp+Tb2w+udPcQ==",
"requires": {
"envinfo": "^7.7.3"
}
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/@webpack-cli/info/-/info-2.0.1.tgz",
"integrity": "sha512-fE1UEWTwsAxRhrJNikE7v4EotYflkEhBL7EbajfkPlf6E37/2QshOy/D48Mw8G5XMFlQtS6YV42vtbG9zBpIQA==",
"requires": {}
},
"@webpack-cli/serve": {
"version": "1.7.0",
"resolved": "https://registry.npmjs.org/@webpack-cli/serve/-/serve-1.7.0.tgz",
"integrity": "sha512-oxnCNGj88fL+xzV+dacXs44HcDwf1ovs3AuEzvP7mqXw7fQntqIhQ1BRmynh4qEKQSSSRSWVyXRjmTbZIX9V2Q==",
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/@webpack-cli/serve/-/serve-2.0.1.tgz",
"integrity": "sha512-0G7tNyS+yW8TdgHwZKlDWYXFA6OJQnoLCQvYKkQP0Q2X205PSQ6RNUj0M+1OB/9gRQaUZ/ccYfaxd0nhaWKfjw==",
"requires": {}
},
"@xtuc/ieee754": {
@ -13271,9 +13623,18 @@
"integrity": "sha512-RpAVKQA5T63xEj6/giIbUEtZwJ4UFIc3ZtvEkiaUERylqe8xb5IvqcgOurZLahv93CLKfxcw5YI+DZcUBRyLXA=="
},
"codemirror": {
"version": "5.65.10",
"resolved": "https://registry.npmjs.org/codemirror/-/codemirror-5.65.10.tgz",
"integrity": "sha512-IXAG5wlhbgcTJ6rZZcmi4+sjWIbJqIGfeg3tNa3yX84Jb3T4huS5qzQAo/cUisc1l3bI47WZodpyf7cYcocDKg=="
"version": "6.0.1",
"resolved": "https://registry.npmjs.org/codemirror/-/codemirror-6.0.1.tgz",
"integrity": "sha512-J8j+nZ+CdWmIeFIGXEFbFPtpiYacFMDR8GlHK3IyHQJMCaVRfGx9NT+Hxivv1ckLWPvNdZqndbr/7lVhrf/Svg==",
"requires": {
"@codemirror/autocomplete": "^6.0.0",
"@codemirror/commands": "^6.0.0",
"@codemirror/language": "^6.0.0",
"@codemirror/lint": "^6.0.0",
"@codemirror/search": "^6.0.0",
"@codemirror/state": "^6.0.0",
"@codemirror/view": "^6.0.0"
}
},
"collection-map": {
"version": "1.0.0",
@ -13434,6 +13795,11 @@
"yaml": "^1.10.0"
}
},
"crelt": {
"version": "1.0.5",
"resolved": "https://registry.npmjs.org/crelt/-/crelt-1.0.5.tgz",
"integrity": "sha512-+BO9wPPi+DWTDcNYhr/W90myha8ptzftZT+LwcmUbbok0rcP/fequmFYCw8NMoH7pkAZQzU78b3kYrlua5a9eA=="
},
"cross-spawn": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-4.0.0.tgz",
@ -17529,6 +17895,11 @@
"resolved": "https://registry.npmjs.org/strip-comments/-/strip-comments-2.0.1.tgz",
"integrity": "sha512-ZprKx+bBLXv067WTCALv8SSz5l2+XhpYCsVtSqlMnkAXMWDq+/ekVbl1ghqP9rUHTzv6sm/DwCOiYutU/yp1fw=="
},
"style-mod": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/style-mod/-/style-mod-4.0.0.tgz",
"integrity": "sha512-OPhtyEjyyN9x3nhPsu76f52yUGXiZcgvsrFVtvTkyGRQJ0XK+GPc6ov1z+lRpbeabka+MYEQxOYRnt5nF30aMw=="
},
"supports-color": {
"version": "5.5.0",
"resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
@ -18079,6 +18450,22 @@
"integrity": "sha512-GP+dct7UlAWkl1qoP3ppw0z6jcSua5/IrMpjB5O8bh089iIiJ+hdxPYH2NPEpajlYgkW5EVMP95ttXWdas1O0g==",
"requires": {}
},
"vue-codemirror6": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/vue-codemirror6/-/vue-codemirror6-1.1.1.tgz",
"integrity": "sha512-woQHQQ5uf2lXuWfDhfYh/JJIDqAza6CmbtOECHVuF5BhPIbEak/4m/RuV1na4GWssfCjSdHIzfNwjNXh6u9pVA==",
"requires": {
"vue-demi": "latest"
},
"dependencies": {
"vue-demi": {
"version": "0.13.11",
"resolved": "https://registry.npmjs.org/vue-demi/-/vue-demi-0.13.11.tgz",
"integrity": "sha512-IR8HoEEGM65YY3ZJYAjMlKygDQn25D5ajNFNoKh9RSDMQtlzCxtfQjdQgv9jjK+m3377SsJXY8ysq8kLCZL25A==",
"requires": {}
}
}
},
"vue-functional-data-merge": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/vue-functional-data-merge/-/vue-functional-data-merge-3.1.0.tgz",
@ -18260,6 +18647,11 @@
"sortablejs": "1.10.2"
}
},
"w3c-keyname": {
"version": "2.2.6",
"resolved": "https://registry.npmjs.org/w3c-keyname/-/w3c-keyname-2.2.6.tgz",
"integrity": "sha512-f+fciywl1SJEniZHD6H+kUO8gOnwIr7f4ijKA6+ZvJFjeGi1r4PDLl53Ayud9O/rk64RqgoQine0feoeOU0kXg=="
},
"watchpack": {
"version": "2.4.0",
"resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz",
@ -18383,28 +18775,29 @@
}
},
"webpack-cli": {
"version": "4.10.0",
"resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-4.10.0.tgz",
"integrity": "sha512-NLhDfH/h4O6UOy+0LSso42xvYypClINuMNBVVzX4vX98TmTaTUxwRbXdhucbFMd2qLaCTcLq/PdYrvi8onw90w==",
"version": "5.0.1",
"resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-5.0.1.tgz",
"integrity": "sha512-S3KVAyfwUqr0Mo/ur3NzIp6jnerNpo7GUO6so51mxLi1spqsA17YcMXy0WOIJtBSnj748lthxC6XLbNKh/ZC+A==",
"requires": {
"@discoveryjs/json-ext": "^0.5.0",
"@webpack-cli/configtest": "^1.2.0",
"@webpack-cli/info": "^1.5.0",
"@webpack-cli/serve": "^1.7.0",
"@webpack-cli/configtest": "^2.0.1",
"@webpack-cli/info": "^2.0.1",
"@webpack-cli/serve": "^2.0.1",
"colorette": "^2.0.14",
"commander": "^7.0.0",
"commander": "^9.4.1",
"cross-spawn": "^7.0.3",
"envinfo": "^7.7.3",
"fastest-levenshtein": "^1.0.12",
"import-local": "^3.0.2",
"interpret": "^2.2.0",
"rechoir": "^0.7.0",
"interpret": "^3.1.1",
"rechoir": "^0.8.0",
"webpack-merge": "^5.7.3"
},
"dependencies": {
"commander": {
"version": "7.2.0",
"resolved": "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz",
"integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw=="
"version": "9.4.1",
"resolved": "https://registry.npmjs.org/commander/-/commander-9.4.1.tgz",
"integrity": "sha512-5EEkTNyHNGFPD2H+c/dXXfQZYa/scCKasxWcXJaWnNJ99pnQN9Vnmqow+p+PlFPE63Q6mThaZws1T+HxfpgtPw=="
},
"cross-spawn": {
"version": "7.0.3",
@ -18417,16 +18810,16 @@
}
},
"interpret": {
"version": "2.2.0",
"resolved": "https://registry.npmjs.org/interpret/-/interpret-2.2.0.tgz",
"integrity": "sha512-Ju0Bz/cEia55xDwUWEa8+olFpCiQoypjnQySseKtmjNrnps3P+xfpUmGr90T7yjlVJmOtybRvPXhKMbHr+fWnw=="
"version": "3.1.1",
"resolved": "https://registry.npmjs.org/interpret/-/interpret-3.1.1.tgz",
"integrity": "sha512-6xwYfHbajpoF0xLW+iwLkhwgvLoZDfjYfoFNu8ftMoXINzwuymNLd9u/KmwtdT2GbR+/Cz66otEGEVVUHX9QLQ=="
},
"rechoir": {
"version": "0.7.1",
"resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.7.1.tgz",
"integrity": "sha512-/njmZ8s1wVeR6pjTZ+0nCnv8SpZNRMT2D1RLOJQESlYFDBvwpTA4KWJpZ+sBJ4+vhjILRcK7JIFdGCdxEAAitg==",
"version": "0.8.0",
"resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.8.0.tgz",
"integrity": "sha512-/vxpCXddiX8NGfGO/mTafwjq4aFa/71pvamip0++IQk3zG8cbCj0fifNPrjjF1XMXUne91jL9OoxmdykoEtifQ==",
"requires": {
"resolve": "^1.9.0"
"resolve": "^1.20.0"
}
},
"which": {

View File

@ -10,6 +10,8 @@
"dependencies": {
"@babel/core": "^7.15.5",
"@babel/preset-env": "^7.15.6",
"@codemirror/lang-css": "^6.0.1",
"@codemirror/lang-javascript": "^6.1.2",
"@fancyapps/fancybox": "^3.5.7",
"@flowjs/flow.js": "^2.14.1",
"@fullcalendar/core": "^5.9.0",
@ -28,7 +30,7 @@
"chart.js": "^4.0.1",
"chartjs-adapter-luxon": "^1.1.0",
"chartjs-plugin-zoom": "^2.0.0",
"codemirror": "^5.62.3",
"codemirror": "^6",
"css-loader": "^6.5.0",
"del": "^7",
"easygettext": "^2.17.0",
@ -64,6 +66,7 @@
"sweetalert2": "11.4.8",
"vue": "^3.2",
"vue-axios": "^3.5",
"vue-codemirror6": "^1.1.1",
"vue-loader": "^17",
"vue-style-loader": "^4.1.3",
"vue3-daterange-picker": "^1",
@ -72,7 +75,7 @@
"wavesurfer.js": "^6",
"webpack": "^5.52.1",
"webpack-assets-manifest": "^5",
"webpack-cli": "^4.8.0",
"webpack-cli": "^5",
"zxcvbn": "^4.4.2"
}
}

View File

@ -69,12 +69,10 @@ $enable-print-styles: true !default;
// Overrides for specific third-party products
@import 'vendors/bootgrid-colors';
@import 'vendors/codemirror-colors';
@import 'vendors/daterangepicker-colors';
@import 'vendors/fullcalendar-colors';
@import 'vendors/waveform-colors';
@import 'vendors/sweetalert2-colors';
@import 'vendors/select2-colors';
// Overrides for the Daemonite Material theme
@import 'azuracast/overrides/body-colors';

View File

@ -89,9 +89,7 @@ $enable-print-styles: true !default;
@import 'print';
// Overrides for specific third-party products
@import 'vendors/codemirror';
@import 'vendors/fullcalendar';
@import 'vendors/select2';
// Overrides for the Daemonite Material theme
@import 'azuracast/overrides/body';

View File

@ -1,16 +0,0 @@
.CodeMirror {
background: $card-bg;
border: 1px solid $textfield-border-color;
color: $textfield-color;
.CodeMirror-gutters {
background: $navdrawer-header-bg;
border-right: 1px solid $textfield-border-color;
}
.CodeMirror-guttermarker,
.CodeMirror-guttermarker-subtle,
.CodeMirror-linenumber {
color: $textfield-color;
}
}

View File

@ -1,131 +0,0 @@
.CodeMirror {
border-radius: 4px;
.CodeMirror-scroll {
padding-top: 10px;
margin-bottom: -60px;
}
pre.CodeMirror-line,
pre.CodeMirror-line-like {
font-size: .8rem;
}
.CodeMirror-guttermarker,
.CodeMirror-guttermarker-subtle,
.CodeMirror-linenumber {
font-size: .8rem;
}
@if ($theme == 'dark') {
.CodeMirror-cursor {
border-left: 1px solid #FFCC00;
}
div.CodeMirror-selected,
&.CodeMirror-focused div.CodeMirror-selected,
.CodeMirror-line::selection,
.CodeMirror-line > span::selection,
.CodeMirror-line > span > span::selection,
.CodeMirror-line::-moz-selection,
.CodeMirror-line > span::-moz-selection,
.CodeMirror-line > span > span::-moz-selection {
background: rgba(128, 203, 196, 0.2);
}
.CodeMirror-activeline-background {
background: rgba(0, 0, 0, 0.5);
}
.CodeMirror-matchingbracket {
text-decoration: underline;
color: white !important;
}
.cm-keyword {
color: #C792EA;
}
.cm-operator {
color: #89DDFF;
}
.cm-variable-2 {
color: #EEFFFF;
}
.cm-variable-3,
.cm-type {
color: #f07178;
}
.cm-builtin {
color: #FFCB6B;
}
.cm-atom {
color: #F78C6C;
}
.cm-number {
color: #FF5370;
}
.cm-def {
color: #82AAFF;
}
.cm-string {
color: #C3E88D;
}
.cm-string-2 {
color: #f07178;
}
.cm-comment {
color: #546E7A;
}
.cm-variable {
color: #f07178;
}
.cm-tag {
color: #FF5370;
}
.cm-meta {
color: #FFCB6B;
}
.cm-attribute {
color: #C792EA;
}
.cm-property {
color: #C792EA;
}
.cm-qualifier {
color: #DECB6B;
}
.cm-variable-3,
.cm-type {
color: #DECB6B;
}
.cm-error {
color: rgba(255, 255, 255, 1.0);
background-color: #FF5370;
}
}
}
.CodeMirror-sizer {
cursor: text;
height: 100%;
margin-bottom: 0 !important;
padding-bottom: 16px !important;
}

View File

@ -1,107 +0,0 @@
.select2-search--dropdown .select2-search__field {
color: $text-primary;
}
.select2-results__message {
color: $text-secondary;
}
.select2-container--bootstrap4 {
.select2-selection {
border: $textfield-border-width solid $textfield-border-color;
}
.select2-search--inline .select2-search__field {
color: $text-primary;
}
// focused input box
&.select2-container--focus {
.select2-selection {
border-color: $textfield-border-color-focus;
}
}
// disabled input box
&.select2-container--disabled,
&.select2-container--disabled.select2-container--focus {
.select2-selection {
color: $textfield-color-disabled;
}
}
// validated input box
select.is-invalid ~ & .select2-selection,
form.was-validated select:invalid ~ & .select2-selection {
border-color: $form-feedback-invalid-color;
}
select.is-valid ~ & .select2-selection,
form.was-validated select:valid ~ & .select2-selection {
border-color: $form-feedback-valid-color;
}
// dropdown
.select2-dropdown {
border-color: $textfield-border-color;
background: $menu-bg;
// dropdown opened above
&.select2-dropdown--above {
border-top: 1px solid $textfield-border-color;
}
// selected item
.select2-results__option[aria-selected=true] {
background-color: $menu-link-bg-hover;
}
}
// mouse hovered item
.select2-results__option--highlighted,
.select2-results__option--highlighted.select2-results__option[aria-selected=true] {
background-color: theme-color(primary);
color: $white-primary;
}
.select2-results__group {
color: $text-secondary;
}
// all clear button
.select2-selection__clear {
$bg: #c8c8c8;
background-color: $menu-bg;
color: $menu-link-color;
&:hover {
background-color: $menu-link-bg-hover;
}
}
.select2-selection--single {
// arrow
.select2-selection__arrow {
b {
border-color: $text-primary transparent transparent transparent;
}
}
}
.select2-selection--multiple {
// each selected item in input box
.select2-selection__choice {
color: $text-primary;
border: 1px solid $textfield-border-color-hover;
}
// x button of each selected item in input box
.select2-selection__choice__remove {
color: darken($text-secondary, 20%);
&:hover {
color: $text-primary;
}
}
}
}

View File

@ -1,211 +0,0 @@
// basic
.select2-container {
display: block;
*:focus {
outline: 0;
}
}
// input-group
.input-group .select2-container--bootstrap4 {
flex-grow: 1;
}
// for prepended input
.input-group-prepend ~ .select2-container--bootstrap4 .select2-selection {
border-top-left-radius: 0;
border-bottom-left-radius: 0;
}
// for appended input
.input-group > .select2-container--bootstrap4:not(:last-child) .select2-selection {
border-top-right-radius: 0;
border-bottom-right-radius: 0;
}
// search box
.select2-search--dropdown .select2-search__field {
background: transparent;
border: 0;
}
// no result message
.select2-container.select2-container--bootstrap4 {
// input box
.select2-selection {
background-color: transparent;
border-radius: 4px;
box-shadow: none;
width: 100%;
}
.select2-search--inline .select2-search__field {
background: transparent;
}
// focused input box
&.select2-container--focus {
.select2-selection {
outline: 0;
}
}
// when open, hide bottom border
&.select2-container--open {
&.select2-container--above .select2-selection {
border-top: none;
@include border-top-radius(0);
}
&.select2-container--below .select2-selection {
border-bottom: none;
@include border-bottom-radius(0);
}
}
// disabled input box
&.select2-container--disabled,
&.select2-container--disabled.select2-container--focus {
.select2-selection {
cursor: not-allowed;
box-shadow: none;
}
.select2-search__field {
background-color: transparent;
}
}
// dropdown
.select2-dropdown {
border-radius: 0; // overwrite select2.css
// dropdown opened below
&.select2-dropdown--below {
border-top: none;
@include border-bottom-radius(4px);
}
// dropdown opened above
&.select2-dropdown--above {
@include border-top-radius(4px);
}
}
// for <optgroup>
.select2-results__option[role=group] {
padding: 0;
.select2-results__options--nested .select2-results__option {
padding-left: 1em;
}
}
// fixes vertical overflow
.select2-results > .select2-results__options {
max-height: 15em;
overflow-y: auto;
}
.select2-results__group {
padding: 6px;
display: list-item;
}
// all clear button
.select2-selection__clear {
width: 0.9em;
height: 0.9em;
line-height: 0.75em;
padding-left: 0.15em;
margin-top: 0.7em;
border-radius: 100%;
float: right;
margin-right: 0.3em;
}
.select2-selection--single {
// height of input box
height: inherit;
padding: $textfield-padding-y $textfield-padding-x;
.select2-selection__rendered {
padding-left: 0;
padding-right: 0;
}
// placeholder
.select2-selection__placeholder {
// #757575 is same color of placeholder (on Chrome)
color: #757575;
}
// arrow
.select2-selection__arrow {
position: absolute;
top: 50%;
right: 3px;
width: 20px;
b {
top: 60%;
border-style: solid;
border-width: 5px 4px 0 4px;
width: 0;
height: 0;
left: 50%;
margin-left: -4px;
margin-top: -2px;
position: absolute;
}
}
}
.select2-selection--multiple {
// height of input box
min-height: $textfield-height !important;
// input box
.select2-selection__rendered {
box-sizing: border-box;
list-style: none;
margin: 0;
padding: 4px 8px;
width: 100%;
}
// each selected item in input box
.select2-selection__choice {
@include border-radius(2px);
padding: 0;
padding-right: 5px;
cursor: pointer;
float: left;
margin-top: 0.3em;
margin-right: 5px;
}
// x button of each selected item in input box
.select2-selection__choice__remove {
font-weight: bold;
margin-left: 3px;
margin-right: 1px;
padding-right: 3px;
padding-left: 3px;
float: left;
}
// all clear button
.select2-selection__clear {
// overwrite layout.scss
float: none;
margin-right: 0;
position: absolute !important;
top: 0;
right: 0.7em;
}
}
}

View File

@ -1,14 +1,13 @@
<template>
<textarea ref="textarea" spellcheck="false" v-model="textValue"/>
<code-mirror basic v-model="textValue" :lang="lang" :dark="dark"></code-mirror>
</template>
<script setup>
import Codemirror from 'codemirror';
import 'codemirror/lib/codemirror.css';
import 'codemirror/mode/css/css.js';
import 'codemirror/mode/javascript/javascript.js';
import {get, set, templateRef, useVModel} from "@vueuse/core";
import {nextTick, onMounted, onUnmounted, ref, watch} from "vue";
import CodeMirror from "vue-codemirror6";
import {useVModel} from "@vueuse/core";
import {computed} from "vue";
import {css} from "@codemirror/lang-css";
import {javascript} from "@codemirror/lang-javascript";
const props = defineProps({
modelValue: String,
@ -19,58 +18,19 @@ const emit = defineEmits(['update:modelValue']);
const textValue = useVModel(props, 'modelValue', emit);
const $textarea = templateRef('textarea');
const content = ref(null);
let codemirror = null;
watch(textValue, (newVal) => {
newVal = newVal || '';
const cm_value = (codemirror !== null)
? codemirror.getValue()
: null;
if (newVal !== cm_value) {
set(content, newVal);
if (codemirror !== null) {
codemirror.setValue(newVal);
}
const lang = computed(() => {
if (props.mode === 'css') {
return css();
} else if (props.mode === 'javascript') {
return javascript();
}
return null;
});
const refresh = () => {
nextTick(() => {
if (codemirror !== null) {
codemirror.refresh();
}
});
};
onMounted(() => {
codemirror = Codemirror.fromTextArea(
get($textarea),
{
lineNumbers: true,
theme: 'default',
mode: props.mode
}
);
set(content, props.value || '');
codemirror.setValue(get(content));
codemirror.on('change', cm => {
emit('update:modelValue', cm.getValue());
});
refresh();
});
onUnmounted(() => {
const element = codemirror.doc.cm.getWrapperElement();
element && element.remove && element.remove();
});
const dark = computed(() => {
console.log(App.theme);
return App.theme === 'dark';
})
</script>
<script>