Snippet save/load
This commit is contained in:
parent
d8f977b57a
commit
ac9e16632d
|
@ -71,7 +71,17 @@ export default class Editor extends Module {
|
||||||
BDIpc.on('editor-getSnippets', async (event) => {
|
BDIpc.on('editor-getSnippets', async (event) => {
|
||||||
try {
|
try {
|
||||||
const snippets = await FileUtils.readJsonFromFile(this.bd.config.getPath('snippets'));
|
const snippets = await FileUtils.readJsonFromFile(this.bd.config.getPath('snippets'));
|
||||||
event.reply(snippets);
|
event.reply(snippets.map(snippet => {
|
||||||
|
return {
|
||||||
|
type: 'snippet',
|
||||||
|
name: snippet.name,
|
||||||
|
mode: this.resolveMode(snippet.name),
|
||||||
|
content: snippet.content,
|
||||||
|
savedContent: snippet.content,
|
||||||
|
read: true,
|
||||||
|
saved: true
|
||||||
|
}
|
||||||
|
}));
|
||||||
} catch (err) {
|
} catch (err) {
|
||||||
console.log(err);
|
console.log(err);
|
||||||
event.reply([]);
|
event.reply([]);
|
||||||
|
@ -113,18 +123,12 @@ export default class Editor extends Module {
|
||||||
style = await Promise.all(style.split('\n').map(async(line) => {
|
style = await Promise.all(style.split('\n').map(async(line) => {
|
||||||
if (!line.startsWith('@import')) return line;
|
if (!line.startsWith('@import')) return line;
|
||||||
const filename = line.split(' ')[1].replace(/'|"|;/g, '');
|
const filename = line.split(' ')[1].replace(/'|"|;/g, '');
|
||||||
let filePath = path.resolve(this.bd.config.getPath('userfiles'), filename).replace(/\\/g, '/');
|
const filePath = path.resolve(this.bd.config.getPath('userfiles'), filename).replace(/\\/g, '/');
|
||||||
|
|
||||||
try {
|
try {
|
||||||
await FileUtils.fileExists(filePath);
|
await FileUtils.fileExists(filePath);
|
||||||
} catch (err) {
|
} catch (err) {
|
||||||
filePath = path.resolve(this.bd.config.getPath('snippets'), filename).replace(/\\/g, '/');
|
`/*${filename}*/`;
|
||||||
}
|
|
||||||
|
|
||||||
try {
|
|
||||||
await FileUtils.fileExists(filePath);
|
|
||||||
} catch (err) {
|
|
||||||
return `/*${filename}*/`;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return `@import '${filePath}';`;
|
return `@import '${filePath}';`;
|
||||||
|
|
|
@ -173,7 +173,14 @@ import { FileUtils } from '../../core/src/modules/utils';
|
||||||
async saveSnippet(snippet) {
|
async saveSnippet(snippet) {
|
||||||
// TODO only saved snippets should save not all when one is saved.
|
// TODO only saved snippets should save not all when one is saved.
|
||||||
snippet.saved = true;
|
snippet.saved = true;
|
||||||
const result = await ClientIPC.send('bd-editor-saveSnippet', this.snippets);
|
snippet.savedContent = snippet.content;
|
||||||
|
const result = await ClientIPC.send('bd-editor-saveSnippet', this.snippets.map(snippet => {
|
||||||
|
return {
|
||||||
|
name: snippet.name,
|
||||||
|
content: snippet.savedContent
|
||||||
|
}
|
||||||
|
}));
|
||||||
|
console.log(result);
|
||||||
},
|
},
|
||||||
|
|
||||||
async readFile(file) {
|
async readFile(file) {
|
||||||
|
|
Loading…
Reference in New Issue