This commit is contained in:
Vanessa 2023-05-05 14:04:43 +08:00
parent 6e864a2718
commit 9d94821c62
5 changed files with 13 additions and 17 deletions

View file

@ -61,7 +61,6 @@
"file-loader": "^6.2.0",
"html-loader": "^2.1.2",
"html-webpack-plugin": "^5.5.0",
"iconv-lite": "^0.6.3",
"ifdef-loader": "^2.3.2",
"mini-css-extract-plugin": "2.3.0",
"path-browserify": "^1.0.1",

3
app/pnpm-lock.yaml generated
View file

@ -54,9 +54,6 @@ devDependencies:
html-webpack-plugin:
specifier: ^5.5.0
version: 5.5.0(webpack@5.73.0)
iconv-lite:
specifier: ^0.6.3
version: 0.6.3
ifdef-loader:
specifier: ^2.3.2
version: 2.3.2

View file

@ -4,11 +4,11 @@ export class Plugin {
}
getData () {
public getData () {
}
public onload() {
console.log("Hello, world!")
console.log("Hello, world!");
}
}

View file

@ -10,27 +10,27 @@ const getObject = (key: string) => {
};
// @ts-ignore
return api[key];
}
};
const runCode = (code: string, sourceURL: string) => {
return window.eval("(function anonymous(require, module){".concat(code, "\n})\n//# sourceURL=").concat(sourceURL, "\n"))
}
return window.eval("(function anonymous(require, module){".concat(code, "\n})\n//# sourceURL=").concat(sourceURL, "\n"));
};
export const loadPlugins = (app: App) => {
fetchPost("/api/petal/loadPetals", {}, response => {
let css = "";
response.data.forEach((item: { id: string, name: string, jsCode: string, cssCode: string, lang: IObject }) => {
const moduleObj = {}
const execResult = runCode(item.jsCode, "plugin:" + encodeURIComponent(item.id))
const moduleObj = {};
const execResult = runCode(item.jsCode, "plugin:" + encodeURIComponent(item.id));
execResult(getObject, moduleObj);
// @ts-ignore
const plugin: Plugin = new moduleObj.exports.default({app, id: item.id, lang: item.lang})
const plugin: Plugin = new moduleObj.exports.default({app, id: item.id, lang: item.lang});
app.plugins.push(plugin);
plugin.onload();
css += item.cssCode + "\n";
})
});
const styleElement = document.createElement("style");
styleElement.textContent = css;
document.head.append(styleElement);
})
}
});
};

View file

@ -456,7 +456,7 @@ export const onTransaction = (protyle: IProtyle, operation: IOperation, focus: b
protyle.title.element.setAttribute("custom-riff-decks", data.new["custom-riff-decks"]);
setTimeout(() => {
protyle.title.element.style.animation = "";
}, 450)
}, 450);
} else {
protyle.title.element.removeAttribute("custom-riff-decks");
}
@ -492,7 +492,7 @@ export const onTransaction = (protyle: IProtyle, operation: IOperation, focus: b
item.style.animation = "addCard 450ms linear";
setTimeout(() => {
item.style.animation = "";
}, 450)
}, 450);
}
});
const refElement = item.lastElementChild.querySelector(".protyle-attr--refcount");