[⬆️] Migrate to prism-code-editor 2.0.1
This commit is contained in:
parent
e716d4a76c
commit
c96382b03d
3 changed files with 17 additions and 22 deletions
16
package-lock.json
generated
16
package-lock.json
generated
|
|
@ -12,7 +12,7 @@
|
||||||
"@ptkdev/logger": "^1.8.0",
|
"@ptkdev/logger": "^1.8.0",
|
||||||
"eruda": "^3.0.1",
|
"eruda": "^3.0.1",
|
||||||
"filer": "^1.4.1",
|
"filer": "^1.4.1",
|
||||||
"prism-code-editor": "^1.2.2",
|
"prism-code-editor": "^2.0.1",
|
||||||
"prismjs": "^1.29.0",
|
"prismjs": "^1.29.0",
|
||||||
"uuid": "^9.0.1"
|
"uuid": "^9.0.1"
|
||||||
},
|
},
|
||||||
|
|
@ -739,9 +739,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@types/prismjs": {
|
"node_modules/@types/prismjs": {
|
||||||
"version": "1.26.1",
|
"version": "1.26.2",
|
||||||
"resolved": "https://registry.npmjs.org/@types/prismjs/-/prismjs-1.26.1.tgz",
|
"resolved": "https://registry.npmjs.org/@types/prismjs/-/prismjs-1.26.2.tgz",
|
||||||
"integrity": "sha512-Q7jDsRbzcNHIQje15CS/piKhu6lMLb9jwjxSfEIi4KcFKXW23GoJMkwQiJ8VObyfx+VmUaDcJxXaWN+cTCjVog=="
|
"integrity": "sha512-/r7Cp7iUIk7gts26mHXD66geUC+2Fo26TZYjQK6Nr4LDfi6lmdRmMqM0oPwfiMhUwoBAOFe8GstKi2pf6hZvwA=="
|
||||||
},
|
},
|
||||||
"node_modules/@types/semver": {
|
"node_modules/@types/semver": {
|
||||||
"version": "7.5.3",
|
"version": "7.5.3",
|
||||||
|
|
@ -4767,11 +4767,11 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/prism-code-editor": {
|
"node_modules/prism-code-editor": {
|
||||||
"version": "1.2.2",
|
"version": "2.0.1",
|
||||||
"resolved": "https://registry.npmjs.org/prism-code-editor/-/prism-code-editor-1.2.2.tgz",
|
"resolved": "https://registry.npmjs.org/prism-code-editor/-/prism-code-editor-2.0.1.tgz",
|
||||||
"integrity": "sha512-jmVlSNCp40BWauhzjv3GGFmXVaZkXcuVa7G/5RWV+iSPAugYfL1gQlOkXxC+E2gd/Z3/wbQIEr5RC1kyoohqlg==",
|
"integrity": "sha512-93APxLnz6ow6TU8Mw2MC16d/Xb4k2FdjfrzIqb1finFPB/X4ejQyngEF1NkHKpggrIvR33QodW638KeN/gXEfA==",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@types/prismjs": "^1.26.0"
|
"@types/prismjs": "^1.26.2"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/prismjs": {
|
"node_modules/prismjs": {
|
||||||
|
|
|
||||||
|
|
@ -27,7 +27,7 @@
|
||||||
"@ptkdev/logger": "^1.8.0",
|
"@ptkdev/logger": "^1.8.0",
|
||||||
"eruda": "^3.0.1",
|
"eruda": "^3.0.1",
|
||||||
"filer": "^1.4.1",
|
"filer": "^1.4.1",
|
||||||
"prism-code-editor": "^1.2.2",
|
"prism-code-editor": "^2.0.1",
|
||||||
"prismjs": "^1.29.0",
|
"prismjs": "^1.29.0",
|
||||||
"uuid": "^9.0.1"
|
"uuid": "^9.0.1"
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -2,15 +2,11 @@ import icon from '../assets/icons/editor.png'
|
||||||
import { App } from '../types.ts'
|
import { App } from '../types.ts'
|
||||||
|
|
||||||
import { fullEditor } from 'prism-code-editor/setups'
|
import { fullEditor } from 'prism-code-editor/setups'
|
||||||
import Prism from 'prism-code-editor/prism-core'
|
// this will also import markup, clike, javascript, typescript and jsx
|
||||||
import 'prismjs/components/prism-markup.js'
|
import 'prism-code-editor/grammars/tsx'
|
||||||
import 'prismjs/components/prism-clike.js'
|
import 'prism-code-editor/grammars/css-extras'
|
||||||
import 'prismjs/components/prism-javascript.js'
|
import 'prism-code-editor/grammars/markdown'
|
||||||
import 'prismjs/components/prism-typescript.js'
|
import 'prism-code-editor/grammars/python'
|
||||||
import 'prismjs/components/prism-jsx.js'
|
|
||||||
import 'prismjs/components/prism-tsx.js'
|
|
||||||
import 'prism-code-editor/languages'
|
|
||||||
import 'prism-code-editor/prism-markdown'
|
|
||||||
|
|
||||||
import { FlowWindow } from '../wm.ts'
|
import { FlowWindow } from '../wm.ts'
|
||||||
|
|
||||||
|
|
@ -193,8 +189,7 @@ export default class EditorApp implements App {
|
||||||
|
|
||||||
const value = (await window.fs.promises.readFile(data.path)).toString()
|
const value = (await window.fs.promises.readFile(data.path)).toString()
|
||||||
const editor = fullEditor(
|
const editor = fullEditor(
|
||||||
Prism,
|
win.content.querySelector<HTMLElement>('.editor')!,
|
||||||
win.content.querySelector('.editor'),
|
|
||||||
{
|
{
|
||||||
language,
|
language,
|
||||||
theme: 'github-dark',
|
theme: 'github-dark',
|
||||||
|
|
@ -204,7 +199,7 @@ export default class EditorApp implements App {
|
||||||
|
|
||||||
const style = document.createElement('style')
|
const style = document.createElement('style')
|
||||||
style.innerHTML = `
|
style.innerHTML = `
|
||||||
.prism-editor {
|
.prism-code-editor {
|
||||||
border-radius: 10px 10px 0 0;
|
border-radius: 10px 10px 0 0;
|
||||||
caret-color: var(--text);
|
caret-color: var(--text);
|
||||||
font-family: Consolas, Monaco, "Andale Mono", "Ubuntu Mono", monospace;
|
font-family: Consolas, Monaco, "Andale Mono", "Ubuntu Mono", monospace;
|
||||||
|
|
@ -237,7 +232,7 @@ export default class EditorApp implements App {
|
||||||
`
|
`
|
||||||
editor.scrollContainer.appendChild(style);
|
editor.scrollContainer.appendChild(style);
|
||||||
(win.content.querySelector('#find') as HTMLElement).onclick = () => {
|
(win.content.querySelector('#find') as HTMLElement).onclick = () => {
|
||||||
editor.extensions.searchWidget.open()
|
editor.extensions.searchWidget!.open()
|
||||||
}
|
}
|
||||||
(win.content.querySelector('#save') as HTMLElement).onclick = async () => {
|
(win.content.querySelector('#save') as HTMLElement).onclick = async () => {
|
||||||
await window.fs.promises.writeFile(data.path, editor.value)
|
await window.fs.promises.writeFile(data.path, editor.value)
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue