mirror of
https://github.com/coaidev/coai.git
synced 2025-05-28 09:20:18 +09:00
update markdown render
This commit is contained in:
parent
02e5ef428b
commit
d6431c9103
@ -10,6 +10,7 @@
|
||||
},
|
||||
"dependencies": {
|
||||
"axios": "^1.4.0",
|
||||
"md-editor-v3": "^4.2.2",
|
||||
"vue": "^3.2.45",
|
||||
"vue-router": "^4.2.4"
|
||||
},
|
||||
|
518
app/pnpm-lock.yaml
generated
518
app/pnpm-lock.yaml
generated
@ -8,6 +8,9 @@ dependencies:
|
||||
axios:
|
||||
specifier: ^1.4.0
|
||||
version: 1.4.0
|
||||
md-editor-v3:
|
||||
specifier: ^4.2.2
|
||||
version: 4.2.2(@codemirror/state@6.2.1)(@codemirror/view@6.15.3)(@lezer/common@1.0.3)(vue@3.2.45)
|
||||
vue:
|
||||
specifier: ^3.2.45
|
||||
version: 3.2.45
|
||||
@ -54,6 +57,280 @@ packages:
|
||||
'@babel/helper-validator-identifier': 7.22.5
|
||||
to-fast-properties: 2.0.0
|
||||
|
||||
/@codemirror/autocomplete@6.9.0(@codemirror/language@6.8.0)(@codemirror/state@6.2.1)(@codemirror/view@6.15.3)(@lezer/common@1.0.3):
|
||||
resolution: {integrity: sha512-Fbwm0V/Wn3BkEJZRhr0hi5BhCo5a7eBL6LYaliPjOSwCyfOpnjXY59HruSxOUNV+1OYer0Tgx1zRNQttjXyDog==}
|
||||
peerDependencies:
|
||||
'@codemirror/language': ^6.0.0
|
||||
'@codemirror/state': ^6.0.0
|
||||
'@codemirror/view': ^6.0.0
|
||||
'@lezer/common': ^1.0.0
|
||||
dependencies:
|
||||
'@codemirror/language': 6.8.0
|
||||
'@codemirror/state': 6.2.1
|
||||
'@codemirror/view': 6.15.3
|
||||
'@lezer/common': 1.0.3
|
||||
dev: false
|
||||
|
||||
/@codemirror/commands@6.2.4:
|
||||
resolution: {integrity: sha512-42lmDqVH0ttfilLShReLXsDfASKLXzfyC36bzwcqzox9PlHulMcsUOfHXNo2X2aFMVNUoQ7j+d4q5bnfseYoOA==}
|
||||
dependencies:
|
||||
'@codemirror/language': 6.8.0
|
||||
'@codemirror/state': 6.2.1
|
||||
'@codemirror/view': 6.15.3
|
||||
'@lezer/common': 1.0.3
|
||||
dev: false
|
||||
|
||||
/@codemirror/lang-angular@0.1.2:
|
||||
resolution: {integrity: sha512-Nq7lmx9SU+JyoaRcs6SaJs7uAmW2W06HpgJVQYeZptVGNWDzDvzhjwVb/ZuG1rwTlOocY4Y9GwNOBuKCeJbKtw==}
|
||||
dependencies:
|
||||
'@codemirror/lang-html': 6.4.5
|
||||
'@codemirror/lang-javascript': 6.1.9
|
||||
'@codemirror/language': 6.8.0
|
||||
'@lezer/common': 1.0.3
|
||||
'@lezer/highlight': 1.1.6
|
||||
'@lezer/lr': 1.3.9
|
||||
dev: false
|
||||
|
||||
/@codemirror/lang-cpp@6.0.2:
|
||||
resolution: {integrity: sha512-6oYEYUKHvrnacXxWxYa6t4puTlbN3dgV662BDfSH8+MfjQjVmP697/KYTDOqpxgerkvoNm7q5wlFMBeX8ZMocg==}
|
||||
dependencies:
|
||||
'@codemirror/language': 6.8.0
|
||||
'@lezer/cpp': 1.1.1
|
||||
dev: false
|
||||
|
||||
/@codemirror/lang-css@6.2.0(@codemirror/view@6.15.3):
|
||||
resolution: {integrity: sha512-oyIdJM29AyRPM3+PPq1I2oIk8NpUfEN3kAM05XWDDs6o3gSneIKaVJifT2P+fqONLou2uIgXynFyMUDQvo/szA==}
|
||||
dependencies:
|
||||
'@codemirror/autocomplete': 6.9.0(@codemirror/language@6.8.0)(@codemirror/state@6.2.1)(@codemirror/view@6.15.3)(@lezer/common@1.0.3)
|
||||
'@codemirror/language': 6.8.0
|
||||
'@codemirror/state': 6.2.1
|
||||
'@lezer/common': 1.0.3
|
||||
'@lezer/css': 1.1.3
|
||||
transitivePeerDependencies:
|
||||
- '@codemirror/view'
|
||||
dev: false
|
||||
|
||||
/@codemirror/lang-html@6.4.5:
|
||||
resolution: {integrity: sha512-dUCSxkIw2G+chaUfw3Gfu5kkN83vJQN8gfQDp9iEHsIZluMJA0YJveT12zg/28BJx+uPsbQ6VimKCgx3oJrZxA==}
|
||||
dependencies:
|
||||
'@codemirror/autocomplete': 6.9.0(@codemirror/language@6.8.0)(@codemirror/state@6.2.1)(@codemirror/view@6.15.3)(@lezer/common@1.0.3)
|
||||
'@codemirror/lang-css': 6.2.0(@codemirror/view@6.15.3)
|
||||
'@codemirror/lang-javascript': 6.1.9
|
||||
'@codemirror/language': 6.8.0
|
||||
'@codemirror/state': 6.2.1
|
||||
'@codemirror/view': 6.15.3
|
||||
'@lezer/common': 1.0.3
|
||||
'@lezer/css': 1.1.3
|
||||
'@lezer/html': 1.3.6
|
||||
dev: false
|
||||
|
||||
/@codemirror/lang-java@6.0.1:
|
||||
resolution: {integrity: sha512-OOnmhH67h97jHzCuFaIEspbmsT98fNdhVhmA3zCxW0cn7l8rChDhZtwiwJ/JOKXgfm4J+ELxQihxaI7bj7mJRg==}
|
||||
dependencies:
|
||||
'@codemirror/language': 6.8.0
|
||||
'@lezer/java': 1.0.4
|
||||
dev: false
|
||||
|
||||
/@codemirror/lang-javascript@6.1.9:
|
||||
resolution: {integrity: sha512-z3jdkcqOEBT2txn2a87A0jSy6Te3679wg/U8QzMeftFt+4KA6QooMwfdFzJiuC3L6fXKfTXZcDocoaxMYfGz0w==}
|
||||
dependencies:
|
||||
'@codemirror/autocomplete': 6.9.0(@codemirror/language@6.8.0)(@codemirror/state@6.2.1)(@codemirror/view@6.15.3)(@lezer/common@1.0.3)
|
||||
'@codemirror/language': 6.8.0
|
||||
'@codemirror/lint': 6.4.0
|
||||
'@codemirror/state': 6.2.1
|
||||
'@codemirror/view': 6.15.3
|
||||
'@lezer/common': 1.0.3
|
||||
'@lezer/javascript': 1.4.4
|
||||
dev: false
|
||||
|
||||
/@codemirror/lang-json@6.0.1:
|
||||
resolution: {integrity: sha512-+T1flHdgpqDDlJZ2Lkil/rLiRy684WMLc74xUnjJH48GQdfJo/pudlTRreZmKwzP8/tGdKf83wlbAdOCzlJOGQ==}
|
||||
dependencies:
|
||||
'@codemirror/language': 6.8.0
|
||||
'@lezer/json': 1.0.1
|
||||
dev: false
|
||||
|
||||
/@codemirror/lang-less@6.0.1(@codemirror/view@6.15.3):
|
||||
resolution: {integrity: sha512-ABcsKBjLbyPZwPR5gePpc8jEKCQrFF4pby2WlMVdmJOOr7OWwwyz8DZonPx/cKDE00hfoSLc8F7yAcn/d6+rTQ==}
|
||||
dependencies:
|
||||
'@codemirror/lang-css': 6.2.0(@codemirror/view@6.15.3)
|
||||
'@codemirror/language': 6.8.0
|
||||
'@lezer/highlight': 1.1.6
|
||||
'@lezer/lr': 1.3.9
|
||||
transitivePeerDependencies:
|
||||
- '@codemirror/view'
|
||||
dev: false
|
||||
|
||||
/@codemirror/lang-markdown@6.2.0:
|
||||
resolution: {integrity: sha512-deKegEQVzfBAcLPqsJEa+IxotqPVwWZi90UOEvQbfa01NTAw8jNinrykuYPTULGUj+gha0ZG2HBsn4s5d64Qrg==}
|
||||
dependencies:
|
||||
'@codemirror/autocomplete': 6.9.0(@codemirror/language@6.8.0)(@codemirror/state@6.2.1)(@codemirror/view@6.15.3)(@lezer/common@1.0.3)
|
||||
'@codemirror/lang-html': 6.4.5
|
||||
'@codemirror/language': 6.8.0
|
||||
'@codemirror/state': 6.2.1
|
||||
'@codemirror/view': 6.15.3
|
||||
'@lezer/common': 1.0.3
|
||||
'@lezer/markdown': 1.0.5
|
||||
dev: false
|
||||
|
||||
/@codemirror/lang-php@6.0.1:
|
||||
resolution: {integrity: sha512-ublojMdw/PNWa7qdN5TMsjmqkNuTBD3k6ndZ4Z0S25SBAiweFGyY68AS3xNcIOlb6DDFDvKlinLQ40vSLqf8xA==}
|
||||
dependencies:
|
||||
'@codemirror/lang-html': 6.4.5
|
||||
'@codemirror/language': 6.8.0
|
||||
'@codemirror/state': 6.2.1
|
||||
'@lezer/common': 1.0.3
|
||||
'@lezer/php': 1.0.1
|
||||
dev: false
|
||||
|
||||
/@codemirror/lang-python@6.1.3(@codemirror/state@6.2.1)(@codemirror/view@6.15.3)(@lezer/common@1.0.3):
|
||||
resolution: {integrity: sha512-S9w2Jl74hFlD5nqtUMIaXAq9t5WlM0acCkyuQWUUSvZclk1sV+UfnpFiZzuZSG+hfEaOmxKR5UxY/Uxswn7EhQ==}
|
||||
dependencies:
|
||||
'@codemirror/autocomplete': 6.9.0(@codemirror/language@6.8.0)(@codemirror/state@6.2.1)(@codemirror/view@6.15.3)(@lezer/common@1.0.3)
|
||||
'@codemirror/language': 6.8.0
|
||||
'@lezer/python': 1.1.8
|
||||
transitivePeerDependencies:
|
||||
- '@codemirror/state'
|
||||
- '@codemirror/view'
|
||||
- '@lezer/common'
|
||||
dev: false
|
||||
|
||||
/@codemirror/lang-rust@6.0.1:
|
||||
resolution: {integrity: sha512-344EMWFBzWArHWdZn/NcgkwMvZIWUR1GEBdwG8FEp++6o6vT6KL9V7vGs2ONsKxxFUPXKI0SPcWhyYyl2zPYxQ==}
|
||||
dependencies:
|
||||
'@codemirror/language': 6.8.0
|
||||
'@lezer/rust': 1.0.1
|
||||
dev: false
|
||||
|
||||
/@codemirror/lang-sass@6.0.2(@codemirror/view@6.15.3):
|
||||
resolution: {integrity: sha512-l/bdzIABvnTo1nzdY6U+kPAC51czYQcOErfzQ9zSm9D8GmNPD0WTW8st/CJwBTPLO8jlrbyvlSEcN20dc4iL0Q==}
|
||||
dependencies:
|
||||
'@codemirror/lang-css': 6.2.0(@codemirror/view@6.15.3)
|
||||
'@codemirror/language': 6.8.0
|
||||
'@codemirror/state': 6.2.1
|
||||
'@lezer/common': 1.0.3
|
||||
'@lezer/sass': 1.0.3
|
||||
transitivePeerDependencies:
|
||||
- '@codemirror/view'
|
||||
dev: false
|
||||
|
||||
/@codemirror/lang-sql@6.5.2(@codemirror/view@6.15.3)(@lezer/common@1.0.3):
|
||||
resolution: {integrity: sha512-VYiCbApDDRUVx3k0jtZ+b5h2hMkMKZpPR9tx+VgVA3Euuf2MVjVsjx/S2+4AlJjKjS5J6z9+4bEvtponK96e4A==}
|
||||
dependencies:
|
||||
'@codemirror/autocomplete': 6.9.0(@codemirror/language@6.8.0)(@codemirror/state@6.2.1)(@codemirror/view@6.15.3)(@lezer/common@1.0.3)
|
||||
'@codemirror/language': 6.8.0
|
||||
'@codemirror/state': 6.2.1
|
||||
'@lezer/highlight': 1.1.6
|
||||
'@lezer/lr': 1.3.9
|
||||
transitivePeerDependencies:
|
||||
- '@codemirror/view'
|
||||
- '@lezer/common'
|
||||
dev: false
|
||||
|
||||
/@codemirror/lang-vue@0.1.2:
|
||||
resolution: {integrity: sha512-D4YrefiRBAr+CfEIM4S3yvGSbYW+N69mttIfGMEf7diHpRbmygDxS+R/5xSqjgtkY6VO6qmUrre1GkRcWeZa9A==}
|
||||
dependencies:
|
||||
'@codemirror/lang-html': 6.4.5
|
||||
'@codemirror/lang-javascript': 6.1.9
|
||||
'@codemirror/language': 6.8.0
|
||||
'@lezer/common': 1.0.3
|
||||
'@lezer/highlight': 1.1.6
|
||||
'@lezer/lr': 1.3.9
|
||||
dev: false
|
||||
|
||||
/@codemirror/lang-wast@6.0.1:
|
||||
resolution: {integrity: sha512-sQLsqhRjl2MWG3rxZysX+2XAyed48KhLBHLgq9xcKxIJu3npH/G+BIXW5NM5mHeDUjG0jcGh9BcjP0NfMStuzA==}
|
||||
dependencies:
|
||||
'@codemirror/language': 6.8.0
|
||||
'@lezer/highlight': 1.1.6
|
||||
'@lezer/lr': 1.3.9
|
||||
dev: false
|
||||
|
||||
/@codemirror/lang-xml@6.0.2(@codemirror/view@6.15.3):
|
||||
resolution: {integrity: sha512-JQYZjHL2LAfpiZI2/qZ/qzDuSqmGKMwyApYmEUUCTxLM4MWS7sATUEfIguZQr9Zjx/7gcdnewb039smF6nC2zw==}
|
||||
dependencies:
|
||||
'@codemirror/autocomplete': 6.9.0(@codemirror/language@6.8.0)(@codemirror/state@6.2.1)(@codemirror/view@6.15.3)(@lezer/common@1.0.3)
|
||||
'@codemirror/language': 6.8.0
|
||||
'@codemirror/state': 6.2.1
|
||||
'@lezer/common': 1.0.3
|
||||
'@lezer/xml': 1.0.2
|
||||
transitivePeerDependencies:
|
||||
- '@codemirror/view'
|
||||
dev: false
|
||||
|
||||
/@codemirror/language-data@6.3.1(@codemirror/state@6.2.1)(@codemirror/view@6.15.3)(@lezer/common@1.0.3):
|
||||
resolution: {integrity: sha512-p6jhJmvhGe1TG1EGNhwH7nFWWFSTJ8NDKnB2fVx5g3t+PpO0+63R7GJNxjS0TmmH3cdMxZbzejsik+rlEh1EyQ==}
|
||||
dependencies:
|
||||
'@codemirror/lang-angular': 0.1.2
|
||||
'@codemirror/lang-cpp': 6.0.2
|
||||
'@codemirror/lang-css': 6.2.0(@codemirror/view@6.15.3)
|
||||
'@codemirror/lang-html': 6.4.5
|
||||
'@codemirror/lang-java': 6.0.1
|
||||
'@codemirror/lang-javascript': 6.1.9
|
||||
'@codemirror/lang-json': 6.0.1
|
||||
'@codemirror/lang-less': 6.0.1(@codemirror/view@6.15.3)
|
||||
'@codemirror/lang-markdown': 6.2.0
|
||||
'@codemirror/lang-php': 6.0.1
|
||||
'@codemirror/lang-python': 6.1.3(@codemirror/state@6.2.1)(@codemirror/view@6.15.3)(@lezer/common@1.0.3)
|
||||
'@codemirror/lang-rust': 6.0.1
|
||||
'@codemirror/lang-sass': 6.0.2(@codemirror/view@6.15.3)
|
||||
'@codemirror/lang-sql': 6.5.2(@codemirror/view@6.15.3)(@lezer/common@1.0.3)
|
||||
'@codemirror/lang-vue': 0.1.2
|
||||
'@codemirror/lang-wast': 6.0.1
|
||||
'@codemirror/lang-xml': 6.0.2(@codemirror/view@6.15.3)
|
||||
'@codemirror/language': 6.8.0
|
||||
'@codemirror/legacy-modes': 6.3.2
|
||||
transitivePeerDependencies:
|
||||
- '@codemirror/state'
|
||||
- '@codemirror/view'
|
||||
- '@lezer/common'
|
||||
dev: false
|
||||
|
||||
/@codemirror/language@6.8.0:
|
||||
resolution: {integrity: sha512-r1paAyWOZkfY0RaYEZj3Kul+MiQTEbDvYqf8gPGaRvNneHXCmfSaAVFjwRUPlgxS8yflMxw2CTu6uCMp8R8A2g==}
|
||||
dependencies:
|
||||
'@codemirror/state': 6.2.1
|
||||
'@codemirror/view': 6.15.3
|
||||
'@lezer/common': 1.0.3
|
||||
'@lezer/highlight': 1.1.6
|
||||
'@lezer/lr': 1.3.9
|
||||
style-mod: 4.0.3
|
||||
dev: false
|
||||
|
||||
/@codemirror/legacy-modes@6.3.2:
|
||||
resolution: {integrity: sha512-ki5sqNKWzKi5AKvpVE6Cna4Q+SgxYuYVLAZFSsMjGBWx5qSVa+D+xipix65GS3f2syTfAD9pXKMX4i4p49eneQ==}
|
||||
dependencies:
|
||||
'@codemirror/language': 6.8.0
|
||||
dev: false
|
||||
|
||||
/@codemirror/lint@6.4.0:
|
||||
resolution: {integrity: sha512-6VZ44Ysh/Zn07xrGkdtNfmHCbGSHZzFBdzWi0pbd7chAQ/iUcpLGX99NYRZTa7Ugqg4kEHCqiHhcZnH0gLIgSg==}
|
||||
dependencies:
|
||||
'@codemirror/state': 6.2.1
|
||||
'@codemirror/view': 6.15.3
|
||||
crelt: 1.0.6
|
||||
dev: false
|
||||
|
||||
/@codemirror/search@6.5.0:
|
||||
resolution: {integrity: sha512-64/M40YeJPToKvGO6p3fijo2vwUEj4nACEAXElCaYQ50HrXSvRaK+NHEhSh73WFBGdvIdhrV+lL9PdJy2RfCYA==}
|
||||
dependencies:
|
||||
'@codemirror/state': 6.2.1
|
||||
'@codemirror/view': 6.15.3
|
||||
crelt: 1.0.6
|
||||
dev: false
|
||||
|
||||
/@codemirror/state@6.2.1:
|
||||
resolution: {integrity: sha512-RupHSZ8+OjNT38zU9fKH2sv+Dnlr8Eb8sl4NOnnqz95mCFTZUaiRP8Xv5MeeaG0px2b8Bnfe7YGwCV3nsBhbuw==}
|
||||
dev: false
|
||||
|
||||
/@codemirror/view@6.15.3:
|
||||
resolution: {integrity: sha512-chNgR8H7Ipx7AZUt0+Kknk7BCow/ron3mHd1VZdM7hQXiI79+UlWqcxpCiexTxZQ+iSkqndk3HHAclJOcjSuog==}
|
||||
dependencies:
|
||||
'@codemirror/state': 6.2.1
|
||||
style-mod: 4.0.3
|
||||
w3c-keyname: 2.2.8
|
||||
dev: false
|
||||
|
||||
/@esbuild/android-arm64@0.16.17:
|
||||
resolution: {integrity: sha512-MIGl6p5sc3RDTLLkYL1MyL8BMRN4tLMRCn+yRJJmEDvYZ2M7tmAf80hx1kbNEUX2KJ50RRtxZ4JHLvCfuB6kBg==}
|
||||
engines: {node: '>=12'}
|
||||
@ -256,6 +533,126 @@ packages:
|
||||
resolution: {integrity: sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==}
|
||||
dev: true
|
||||
|
||||
/@lezer/common@1.0.3:
|
||||
resolution: {integrity: sha512-JH4wAXCgUOcCGNekQPLhVeUtIqjH0yPBs7vvUdSjyQama9618IOKFJwkv2kcqdhF0my8hQEgCTEJU0GIgnahvA==}
|
||||
dev: false
|
||||
|
||||
/@lezer/cpp@1.1.1:
|
||||
resolution: {integrity: sha512-eS1M3L3U2mDowoFVPG7tEp01SWu9/68Nx3HEBgLJVn3N9ku7g5S7WdFv0jzmcTipAyONYfZJ+7x4WRkfdB2Ung==}
|
||||
dependencies:
|
||||
'@lezer/highlight': 1.1.6
|
||||
'@lezer/lr': 1.3.9
|
||||
dev: false
|
||||
|
||||
/@lezer/css@1.1.3:
|
||||
resolution: {integrity: sha512-SjSM4pkQnQdJDVc80LYzEaMiNy9txsFbI7HsMgeVF28NdLaAdHNtQ+kB/QqDUzRBV/75NTXjJ/R5IdC8QQGxMg==}
|
||||
dependencies:
|
||||
'@lezer/highlight': 1.1.6
|
||||
'@lezer/lr': 1.3.9
|
||||
dev: false
|
||||
|
||||
/@lezer/highlight@1.1.6:
|
||||
resolution: {integrity: sha512-cmSJYa2us+r3SePpRCjN5ymCqCPv+zyXmDl0ciWtVaNiORT/MxM7ZgOMQZADD0o51qOaOg24qc/zBViOIwAjJg==}
|
||||
dependencies:
|
||||
'@lezer/common': 1.0.3
|
||||
dev: false
|
||||
|
||||
/@lezer/html@1.3.6:
|
||||
resolution: {integrity: sha512-Kk9HJARZTc0bAnMQUqbtuhFVsB4AnteR2BFUWfZV7L/x1H0aAKz6YabrfJ2gk/BEgjh9L3hg5O4y2IDZRBdzuQ==}
|
||||
dependencies:
|
||||
'@lezer/common': 1.0.3
|
||||
'@lezer/highlight': 1.1.6
|
||||
'@lezer/lr': 1.3.9
|
||||
dev: false
|
||||
|
||||
/@lezer/java@1.0.4:
|
||||
resolution: {integrity: sha512-POc53LHf2AuNeRXjqZbXNu88GKj0KZTjjSx0L7tYeXlrEHF+3NAQx+dEwKVuCbkl0ZMtpRy2VsDYOV7KKV0oyg==}
|
||||
dependencies:
|
||||
'@lezer/highlight': 1.1.6
|
||||
'@lezer/lr': 1.3.9
|
||||
dev: false
|
||||
|
||||
/@lezer/javascript@1.4.4:
|
||||
resolution: {integrity: sha512-0BiBjpEcrt2IXrIzEAsdTLylrVhGHRqVQL3baTBx1sf4qewjIvhG1/pTUumu7W/7YR0AASjLQOQxFmo5EvNmzQ==}
|
||||
dependencies:
|
||||
'@lezer/highlight': 1.1.6
|
||||
'@lezer/lr': 1.3.9
|
||||
dev: false
|
||||
|
||||
/@lezer/json@1.0.1:
|
||||
resolution: {integrity: sha512-nkVC27qiEZEjySbi6gQRuMwa2sDu2PtfjSgz0A4QF81QyRGm3kb2YRzLcOPcTEtmcwvrX/cej7mlhbwViA4WJw==}
|
||||
dependencies:
|
||||
'@lezer/highlight': 1.1.6
|
||||
'@lezer/lr': 1.3.9
|
||||
dev: false
|
||||
|
||||
/@lezer/lr@1.3.9:
|
||||
resolution: {integrity: sha512-XPz6dzuTHlnsbA5M2DZgjflNQ+9Hi5Swhic0RULdp3oOs3rh6bqGZolosVqN/fQIT8uNiepzINJDnS39oweTHQ==}
|
||||
dependencies:
|
||||
'@lezer/common': 1.0.3
|
||||
dev: false
|
||||
|
||||
/@lezer/markdown@1.0.5:
|
||||
resolution: {integrity: sha512-J0LRA0l21Ec6ZroaOxjxsWWm+swCOFHcnOU85Z7aH9nj3eJx5ORmtzVkWzs9e21SZrdvyIzM1gt+YF/HnqbvnA==}
|
||||
dependencies:
|
||||
'@lezer/common': 1.0.3
|
||||
'@lezer/highlight': 1.1.6
|
||||
dev: false
|
||||
|
||||
/@lezer/php@1.0.1:
|
||||
resolution: {integrity: sha512-aqdCQJOXJ66De22vzdwnuC502hIaG9EnPK2rSi+ebXyUd+j7GAX1mRjWZOVOmf3GST1YUfUCu6WXDiEgDGOVwA==}
|
||||
dependencies:
|
||||
'@lezer/highlight': 1.1.6
|
||||
'@lezer/lr': 1.3.9
|
||||
dev: false
|
||||
|
||||
/@lezer/python@1.1.8:
|
||||
resolution: {integrity: sha512-1T/XsmeF57ijrjpC0Zmrf9YeO5mn2zC1XeSNrOnc0KB+6PgxJ5m7kWKt0CnwyS74oHQXbJxUUL+QDQJR26c1Gw==}
|
||||
dependencies:
|
||||
'@lezer/highlight': 1.1.6
|
||||
'@lezer/lr': 1.3.9
|
||||
dev: false
|
||||
|
||||
/@lezer/rust@1.0.1:
|
||||
resolution: {integrity: sha512-j+ToFKM6Wpglv3OQ4ebHYdYIMT2dh0ziCCV0rTf47AWiHOVhR0WjaKrBq+yuvDQNEhr5sxPxVI7+naJIgpqcsQ==}
|
||||
dependencies:
|
||||
'@lezer/highlight': 1.1.6
|
||||
'@lezer/lr': 1.3.9
|
||||
dev: false
|
||||
|
||||
/@lezer/sass@1.0.3:
|
||||
resolution: {integrity: sha512-n4l2nVOB7gWiGU/Cg2IVxpt2Ic9Hgfgy/7gk+p/XJibAsPXs0lSbsfGwQgwsAw9B/euYo3oS6lEFr9WytoqcZg==}
|
||||
dependencies:
|
||||
'@lezer/highlight': 1.1.6
|
||||
'@lezer/lr': 1.3.9
|
||||
dev: false
|
||||
|
||||
/@lezer/xml@1.0.2:
|
||||
resolution: {integrity: sha512-dlngsWceOtQBMuBPw5wtHpaxdPJ71aVntqjbpGkFtWsp4WtQmCnuTjQGocviymydN6M18fhj6UQX3oiEtSuY7w==}
|
||||
dependencies:
|
||||
'@lezer/highlight': 1.1.6
|
||||
'@lezer/lr': 1.3.9
|
||||
dev: false
|
||||
|
||||
/@types/linkify-it@3.0.2:
|
||||
resolution: {integrity: sha512-HZQYqbiFVWufzCwexrvh694SOim8z2d+xJl5UNamcvQFejLY/2YUtzXHYi3cHdI7PMlS8ejH2slRAOJQ32aNbA==}
|
||||
dev: false
|
||||
|
||||
/@types/markdown-it@12.2.3:
|
||||
resolution: {integrity: sha512-GKMHFfv3458yYy+v/N8gjufHO6MSZKCOXpZc5GXIWWy8uldwfmPn98vp81gZ5f9SVw8YYBctgfJ22a2d7AOMeQ==}
|
||||
dependencies:
|
||||
'@types/linkify-it': 3.0.2
|
||||
'@types/mdurl': 1.0.2
|
||||
dev: false
|
||||
|
||||
/@types/mdurl@1.0.2:
|
||||
resolution: {integrity: sha512-eC4U9MlIcu2q0KQmXszyn5Akca/0jrQmwDRgpAMJai7qBWq4amIQhZyNau4VYGtCeALvW1/NtjzJJ567aZxfKA==}
|
||||
dev: false
|
||||
|
||||
/@vavt/util@1.1.1:
|
||||
resolution: {integrity: sha512-0x+Acegd8k6lFJc7SN4kVhO669fBiMtBjq/WqX2C8Uz5mSgS+nRvfXs0BK2aiV67T0rauBoAmEkQfURQjI2+4Q==}
|
||||
dev: false
|
||||
|
||||
/@vitejs/plugin-vue@4.0.0(vite@4.1.0-beta.0)(vue@3.2.45):
|
||||
resolution: {integrity: sha512-e0X4jErIxAB5oLtDqbHvHpJe/uWNkdpYV83AOG2xo2tEVSzCzewgJMtREZM30wXnM5ls90hxiOtAuVU6H5JgbA==}
|
||||
engines: {node: ^14.18.0 || >=16.0.0}
|
||||
@ -441,6 +838,10 @@ packages:
|
||||
resolution: {integrity: sha512-7OjdcV8vQ74eiz1TZLzZP4JwqM5fA94K6yntPS5Z25r9HDuGNzaGdgvwKYq6S+MxwF0TFRwe50fIR/MYnakdkQ==}
|
||||
dev: true
|
||||
|
||||
/argparse@2.0.1:
|
||||
resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==}
|
||||
dev: false
|
||||
|
||||
/asynckit@0.4.0:
|
||||
resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==}
|
||||
dev: false
|
||||
@ -465,6 +866,20 @@ packages:
|
||||
balanced-match: 1.0.2
|
||||
dev: true
|
||||
|
||||
/codemirror@6.0.1(@lezer/common@1.0.3):
|
||||
resolution: {integrity: sha512-J8j+nZ+CdWmIeFIGXEFbFPtpiYacFMDR8GlHK3IyHQJMCaVRfGx9NT+Hxivv1ckLWPvNdZqndbr/7lVhrf/Svg==}
|
||||
dependencies:
|
||||
'@codemirror/autocomplete': 6.9.0(@codemirror/language@6.8.0)(@codemirror/state@6.2.1)(@codemirror/view@6.15.3)(@lezer/common@1.0.3)
|
||||
'@codemirror/commands': 6.2.4
|
||||
'@codemirror/language': 6.8.0
|
||||
'@codemirror/lint': 6.4.0
|
||||
'@codemirror/search': 6.5.0
|
||||
'@codemirror/state': 6.2.1
|
||||
'@codemirror/view': 6.15.3
|
||||
transitivePeerDependencies:
|
||||
- '@lezer/common'
|
||||
dev: false
|
||||
|
||||
/combined-stream@1.0.8:
|
||||
resolution: {integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==}
|
||||
engines: {node: '>= 0.8'}
|
||||
@ -472,6 +887,16 @@ packages:
|
||||
delayed-stream: 1.0.0
|
||||
dev: false
|
||||
|
||||
/copy-to-clipboard@3.3.3:
|
||||
resolution: {integrity: sha512-2KV8NhB5JqC3ky0r9PMCAZKbUHSwtEo4CwCs0KXgruG43gX5PMqDEBbVU4OUzw2MuAWUfsuFmWvEKG5QRfSnJA==}
|
||||
dependencies:
|
||||
toggle-selection: 1.0.6
|
||||
dev: false
|
||||
|
||||
/crelt@1.0.6:
|
||||
resolution: {integrity: sha512-VQ2MBenTq1fWZUH9DJNGti7kKv6EeAuYr3cLwxUWhIu1baTaXh4Ib5W2CqHVqib4/MqbYGJqiL3Zb8GJZr3l4g==}
|
||||
dev: false
|
||||
|
||||
/csstype@2.6.21:
|
||||
resolution: {integrity: sha512-Z1PhmomIfypOpoMjRQB70jfvy/wxT50qW08YXO5lMIJkrdq4yOTR+AW7FqutScmB9NkLwxo+jU+kZLbofZZq/w==}
|
||||
|
||||
@ -484,6 +909,11 @@ packages:
|
||||
engines: {node: '>=0.4.0'}
|
||||
dev: false
|
||||
|
||||
/entities@3.0.1:
|
||||
resolution: {integrity: sha512-WiyBqoomrwMdFG1e0kqvASYfnlb0lp8M5o5Fw2OFq1hNZxxcNk8Ik0Xm7LxzBhuidnZB/UtBqVCgUz3kBOP51Q==}
|
||||
engines: {node: '>=0.12'}
|
||||
dev: false
|
||||
|
||||
/esbuild@0.16.17:
|
||||
resolution: {integrity: sha512-G8LEkV0XzDMNwXKgM0Jwu3nY3lSTwSGY6XbxM9cr9+s0T/qSV1q1JVPBGzm3dcjhCic9+emZDmMffkwgPeOeLg==}
|
||||
engines: {node: '>=12'}
|
||||
@ -566,6 +996,17 @@ packages:
|
||||
has: 1.0.3
|
||||
dev: true
|
||||
|
||||
/linkify-it@4.0.1:
|
||||
resolution: {integrity: sha512-C7bfi1UZmoj8+PQx22XyeXCuBlokoyWQL5pWSP+EI6nzRylyThouddufc2c1NDIcP9k5agmN9fLpA7VNJfIiqw==}
|
||||
dependencies:
|
||||
uc.micro: 1.0.6
|
||||
dev: false
|
||||
|
||||
/lru-cache@8.0.5:
|
||||
resolution: {integrity: sha512-MhWWlVnuab1RG5/zMRRcVGXZLCXrZTgfwMikgzCegsPnG62yDQo5JnqKkrK4jO5iKqDAZGItAqN5CtKBCBWRUA==}
|
||||
engines: {node: '>=16.14'}
|
||||
dev: false
|
||||
|
||||
/magic-string@0.25.9:
|
||||
resolution: {integrity: sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==}
|
||||
dependencies:
|
||||
@ -578,6 +1019,62 @@ packages:
|
||||
'@jridgewell/sourcemap-codec': 1.4.15
|
||||
dev: true
|
||||
|
||||
/markdown-it-image-figures@2.1.1(markdown-it@13.0.1):
|
||||
resolution: {integrity: sha512-mwXSQ2nPeVUzCMIE3HlLvjRioopiqyJLNph0pyx38yf9mpqFDhNGnMpAXF9/A2Xv0oiF2cVyg9xwfF0HNAz05g==}
|
||||
engines: {node: '>=12.0.0'}
|
||||
peerDependencies:
|
||||
markdown-it: '*'
|
||||
dependencies:
|
||||
markdown-it: 13.0.1
|
||||
dev: false
|
||||
|
||||
/markdown-it-task-lists@2.1.1:
|
||||
resolution: {integrity: sha512-TxFAc76Jnhb2OUu+n3yz9RMu4CwGfaT788br6HhEDlvWfdeJcLUsxk1Hgw2yJio0OXsxv7pyIPmvECY7bMbluA==}
|
||||
dev: false
|
||||
|
||||
/markdown-it@13.0.1:
|
||||
resolution: {integrity: sha512-lTlxriVoy2criHP0JKRhO2VDG9c2ypWCsT237eDiLqi09rmbKoUetyGHq2uOIRoRS//kfoJckS0eUzzkDR+k2Q==}
|
||||
hasBin: true
|
||||
dependencies:
|
||||
argparse: 2.0.1
|
||||
entities: 3.0.1
|
||||
linkify-it: 4.0.1
|
||||
mdurl: 1.0.1
|
||||
uc.micro: 1.0.6
|
||||
dev: false
|
||||
|
||||
/md-editor-v3@4.2.2(@codemirror/state@6.2.1)(@codemirror/view@6.15.3)(@lezer/common@1.0.3)(vue@3.2.45):
|
||||
resolution: {integrity: sha512-aVfbYCDHt74sVFJbYxY0YPBtkQwOBW2uF1+tOUuQc6JBR5DNvGmHwmTJN6/zCIFoeDCA2nPtaq++ZYcVmCc2qw==}
|
||||
peerDependencies:
|
||||
vue: ^3.2.47
|
||||
dependencies:
|
||||
'@codemirror/lang-markdown': 6.2.0
|
||||
'@codemirror/language-data': 6.3.1(@codemirror/state@6.2.1)(@codemirror/view@6.15.3)(@lezer/common@1.0.3)
|
||||
'@types/markdown-it': 12.2.3
|
||||
'@vavt/util': 1.1.1
|
||||
codemirror: 6.0.1(@lezer/common@1.0.3)
|
||||
copy-to-clipboard: 3.3.3
|
||||
lru-cache: 8.0.5
|
||||
markdown-it: 13.0.1
|
||||
markdown-it-image-figures: 2.1.1(markdown-it@13.0.1)
|
||||
markdown-it-task-lists: 2.1.1
|
||||
medium-zoom: 1.0.8
|
||||
punycode: 2.3.0
|
||||
vue: 3.2.45
|
||||
transitivePeerDependencies:
|
||||
- '@codemirror/state'
|
||||
- '@codemirror/view'
|
||||
- '@lezer/common'
|
||||
dev: false
|
||||
|
||||
/mdurl@1.0.1:
|
||||
resolution: {integrity: sha512-/sKlQJCBYVY9Ers9hqzKou4H6V5UWc/M59TH2dvkt+84itfnq7uFOMLpOiOS4ujvHP4etln18fmIxA5R5fll0g==}
|
||||
dev: false
|
||||
|
||||
/medium-zoom@1.0.8:
|
||||
resolution: {integrity: sha512-CjFVuFq/IfrdqesAXfg+hzlDKu6A2n80ZIq0Kl9kWjoHh9j1N9Uvk5X0/MmN0hOfm5F9YBswlClhcwnmtwz7gA==}
|
||||
dev: false
|
||||
|
||||
/mime-db@1.52.0:
|
||||
resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==}
|
||||
engines: {node: '>= 0.6'}
|
||||
@ -625,6 +1122,11 @@ packages:
|
||||
resolution: {integrity: sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==}
|
||||
dev: false
|
||||
|
||||
/punycode@2.3.0:
|
||||
resolution: {integrity: sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==}
|
||||
engines: {node: '>=6'}
|
||||
dev: false
|
||||
|
||||
/resolve@1.22.2:
|
||||
resolution: {integrity: sha512-Sb+mjNHOULsBv818T40qSPeRiuWLyaGMa5ewydRLFimneixmVy2zdivRl+AF6jaYPC8ERxGDmFSiqui6SfPd+g==}
|
||||
hasBin: true
|
||||
@ -654,6 +1156,10 @@ packages:
|
||||
resolution: {integrity: sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==}
|
||||
deprecated: Please use @jridgewell/sourcemap-codec instead
|
||||
|
||||
/style-mod@4.0.3:
|
||||
resolution: {integrity: sha512-78Jv8kYJdjbvRwwijtCevYADfsI0lGzYJe4mMFdceO8l75DFFDoqBhR1jVDicDRRaX4//g1u9wKeo+ztc2h1Rw==}
|
||||
dev: false
|
||||
|
||||
/supports-preserve-symlinks-flag@1.0.0:
|
||||
resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==}
|
||||
engines: {node: '>= 0.4'}
|
||||
@ -663,12 +1169,20 @@ packages:
|
||||
resolution: {integrity: sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==}
|
||||
engines: {node: '>=4'}
|
||||
|
||||
/toggle-selection@1.0.6:
|
||||
resolution: {integrity: sha512-BiZS+C1OS8g/q2RRbJmy59xpyghNBqrr6k5L/uKBGRsTfxmu3ffiRnd8mlGPUVayg8pvfi5urfnu8TU7DVOkLQ==}
|
||||
dev: false
|
||||
|
||||
/typescript@4.9.3:
|
||||
resolution: {integrity: sha512-CIfGzTelbKNEnLpLdGFgdyKhG23CKdKgQPOBc+OUNrkJ2vr+KSzsSV5kq5iWhEQbok+quxgGzrAtGWCyU7tHnA==}
|
||||
engines: {node: '>=4.2.0'}
|
||||
hasBin: true
|
||||
dev: true
|
||||
|
||||
/uc.micro@1.0.6:
|
||||
resolution: {integrity: sha512-8Y75pvTYkLJW2hWQHXxoqRgV7qb9B+9vFEtidML+7koHUFapnVJAZ6cKs+Qjz5Aw3aZWHMC6u0wJE3At+nSGwA==}
|
||||
dev: false
|
||||
|
||||
/vite@4.1.0-beta.0:
|
||||
resolution: {integrity: sha512-8ckl5OzA82YcZjAmnUzmLzK9FHluq7hMNrxeb8sMLE8znvBF9lcyR9A8s0q33Ebc+ZqgXcWSESUyycJhMZtgGw==}
|
||||
engines: {node: ^14.18.0 || >=16.0.0}
|
||||
@ -737,3 +1251,7 @@ packages:
|
||||
'@vue/runtime-dom': 3.2.45
|
||||
'@vue/server-renderer': 3.2.45(vue@3.2.45)
|
||||
'@vue/shared': 3.2.45
|
||||
|
||||
/w3c-keyname@2.2.8:
|
||||
resolution: {integrity: sha512-dpojBhNsCNN7T82Tm7k26A6G9ML3NkhDsnw9n/eoxSRlVBB4CEtIQ/KTCLI2Fwf3ataSXRhYFkQi3SlnFwPvPQ==}
|
||||
dev: false
|
||||
|
@ -1,4 +1,4 @@
|
||||
import { reactive, ref } from "vue";
|
||||
import {nextTick, reactive, ref} from "vue";
|
||||
import type { Ref } from "vue";
|
||||
import axios from "axios";
|
||||
|
||||
@ -13,12 +13,14 @@ export class Conversation {
|
||||
messages: Message[];
|
||||
len: Ref<number>;
|
||||
state: Ref<boolean>;
|
||||
refresh: () => void;
|
||||
|
||||
public constructor(id: number) {
|
||||
public constructor(id: number, refresh: () => void) {
|
||||
this.id = id;
|
||||
this.messages = reactive([]);
|
||||
this.state = ref(false);
|
||||
this.len = ref(0);
|
||||
this.refresh = refresh;
|
||||
}
|
||||
|
||||
public async send(content: string): Promise<void> {
|
||||
@ -48,14 +50,30 @@ export class Conversation {
|
||||
role: "user",
|
||||
timestamp: new Date().toLocaleTimeString(),
|
||||
})
|
||||
nextTick(() => {
|
||||
this.refresh();
|
||||
}).then(r => 0);
|
||||
}
|
||||
|
||||
public addMessageFromAI(content: string): void {
|
||||
this.addMessage({
|
||||
content: content,
|
||||
content: "",
|
||||
role: "bot",
|
||||
timestamp: new Date().toLocaleTimeString(),
|
||||
})
|
||||
this.typingEffect(this.len.value - 1, content);
|
||||
}
|
||||
|
||||
public typingEffect(index: number, content: string): void {
|
||||
let cursor = 0;
|
||||
const interval = setInterval(() => {
|
||||
this.messages[index].content = content.substring(0, cursor);
|
||||
cursor++;
|
||||
this.refresh();
|
||||
if (cursor > content.length) {
|
||||
clearInterval(interval);
|
||||
}
|
||||
}, 35);
|
||||
}
|
||||
|
||||
public getMessages(): Message[] {
|
||||
|
@ -64,6 +64,18 @@ button:focus-visible {
|
||||
outline: 4px auto -webkit-focus-ring-color;
|
||||
}
|
||||
|
||||
.md-editor.md-editor-previewOnly {
|
||||
--md-bk-color: none !important;
|
||||
}
|
||||
|
||||
.md-editor-dark {
|
||||
--md-color: #eee !important;
|
||||
}
|
||||
|
||||
.md-editor-preview-wrapper {
|
||||
padding: 0 !important;
|
||||
}
|
||||
|
||||
@media (prefers-color-scheme: light) {
|
||||
|
||||
}
|
||||
|
@ -1,10 +1,12 @@
|
||||
<script setup lang="ts">
|
||||
import 'md-editor-v3/lib/style.css';
|
||||
import Post from "../components/icons/post.vue";
|
||||
import Openai from "../components/icons/openai.vue";
|
||||
import { MdPreview } from 'md-editor-v3';
|
||||
import {Conversation} from "../assets/script/conversation";
|
||||
import {nextTick, onMounted, ref} from "vue";
|
||||
|
||||
const conversation = new Conversation(1);
|
||||
const conversation = new Conversation(1, refreshScrollbar);
|
||||
const state = conversation.getState(), length = conversation.getLength(), messages = conversation.getMessages();
|
||||
const input = ref("");
|
||||
const inputEl = ref<HTMLElement | undefined>();
|
||||
@ -14,9 +16,7 @@ async function send() {
|
||||
let val = input.value.trim();
|
||||
if (val) {
|
||||
input.value = "";
|
||||
refreshScrollbar();
|
||||
await conversation.send(val);
|
||||
refreshScrollbar();
|
||||
}
|
||||
}
|
||||
|
||||
@ -41,7 +41,10 @@ onMounted(() => {
|
||||
<div class="conversation" v-if="length">
|
||||
<div class="message" v-for="(message, index) in messages" :key="index" :class="{'user': message.role === 'user'}">
|
||||
<div class="grow" v-if="message.role === 'user'"></div>
|
||||
<div class="content">{{ message.content }}</div>
|
||||
<div class="content">
|
||||
<span v-if="message.role === 'user'">{{ message.content }}</span>
|
||||
<md-preview v-model="message.content" theme="dark" v-else />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="preview" v-else>
|
||||
@ -62,6 +65,7 @@ onMounted(() => {
|
||||
|
||||
<style scoped>
|
||||
@import "../assets/style/anim.css";
|
||||
|
||||
.chat-wrapper {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
|
Loading…
Reference in New Issue
Block a user