[Update] Plugins: Move location from index to plugin_info.json.

This commit is contained in:
Sakamoto Shiina
2025-03-25 17:57:03 +09:00
parent 92ea06eb77
commit 824a9fa0a9
3 changed files with 7 additions and 10 deletions

View File

@@ -23,7 +23,6 @@ const PLUGIN_LIST_URL = "https://raw.githubusercontent.com/ShiinaSakamoto/vrct_p
export const usePlugins = () => {
const { asyncStdoutToPython } = useStdoutToPython();
// const { currentLoadedPluginsList, updateLoadedPluginsList } = useStore_LoadedPluginsList();
const { currentSavedPluginsStatus, updateSavedPluginsStatus, pendingSavedPluginsStatus } = useStore_SavedPluginsStatus();
const { currentPluginsData, updatePluginsData, pendingPluginsData } = useStore_PluginsData();
const { currentSoftwareVersion } = useSoftwareVersion();
@@ -32,22 +31,22 @@ export const usePlugins = () => {
const generatePluginContext= (plugin_info) => {
const plugin_context = {
registerComponent: ({ location, component }) => {
if (!plugin_info.plugin_id || !location || !component) {
return console.error("An invalid plugin was detected.", plugin_info.plugin_id, location, component);
registerComponent: (component) => {
if (!plugin_info.plugin_id || !plugin_info.location || !component) {
return console.error("An invalid plugin was detected.", plugin_info.plugin_id, plugin_info.location, component);
}
updatePluginsData(prev => {
const is_already_registered = prev.data.some(old_value => old_value.plugin_id === plugin_info.plugin_id);
const new_value = prev.data.map(old_value =>
old_value.plugin_id === plugin_info.plugin_id
? { ...old_value, ...plugin_info, location, component, is_downloaded: true }
? { ...old_value, ...plugin_info, location: plugin_info.location, component, is_downloaded: true }
: old_value
);
return is_already_registered
? new_value
: [...new_value, { plugin_id: plugin_info.plugin_id, location, component, is_downloaded: true }];
: [...new_value, { plugin_id: plugin_info.plugin_id, location: plugin_info.location, component, is_downloaded: true }];
});
},
createAtomWithHook: (...args) => createAtomWithHook(...args)