[Update] Plugins: Move location from index to plugin_info.json.
This commit is contained in:
@@ -8,10 +8,7 @@ export const init = (plugin_context) => {
|
|||||||
return <MainContainer />;
|
return <MainContainer />;
|
||||||
};
|
};
|
||||||
|
|
||||||
plugin_context.registerComponent({
|
plugin_context.registerComponent(EntryComponents);
|
||||||
location: "main_section",
|
|
||||||
component: EntryComponents,
|
|
||||||
});
|
|
||||||
};
|
};
|
||||||
|
|
||||||
export default init;
|
export default init;
|
||||||
@@ -2,6 +2,7 @@
|
|||||||
"title": "VRCT Example Plugins 1",
|
"title": "VRCT Example Plugins 1",
|
||||||
"plugin_id": "vrct_plugin_example_1",
|
"plugin_id": "vrct_plugin_example_1",
|
||||||
"asset_name": "vrct_plugin_example_1.zip",
|
"asset_name": "vrct_plugin_example_1.zip",
|
||||||
|
"location": "main_section",
|
||||||
"plugin_version": "0.0.1",
|
"plugin_version": "0.0.1",
|
||||||
"min_supported_vrct_version": "3.0.4",
|
"min_supported_vrct_version": "3.0.4",
|
||||||
"max_supported_vrct_version": "3.0.6"
|
"max_supported_vrct_version": "3.0.6"
|
||||||
|
|||||||
@@ -23,7 +23,6 @@ const PLUGIN_LIST_URL = "https://raw.githubusercontent.com/ShiinaSakamoto/vrct_p
|
|||||||
|
|
||||||
export const usePlugins = () => {
|
export const usePlugins = () => {
|
||||||
const { asyncStdoutToPython } = useStdoutToPython();
|
const { asyncStdoutToPython } = useStdoutToPython();
|
||||||
// const { currentLoadedPluginsList, updateLoadedPluginsList } = useStore_LoadedPluginsList();
|
|
||||||
const { currentSavedPluginsStatus, updateSavedPluginsStatus, pendingSavedPluginsStatus } = useStore_SavedPluginsStatus();
|
const { currentSavedPluginsStatus, updateSavedPluginsStatus, pendingSavedPluginsStatus } = useStore_SavedPluginsStatus();
|
||||||
const { currentPluginsData, updatePluginsData, pendingPluginsData } = useStore_PluginsData();
|
const { currentPluginsData, updatePluginsData, pendingPluginsData } = useStore_PluginsData();
|
||||||
const { currentSoftwareVersion } = useSoftwareVersion();
|
const { currentSoftwareVersion } = useSoftwareVersion();
|
||||||
@@ -32,22 +31,22 @@ export const usePlugins = () => {
|
|||||||
|
|
||||||
const generatePluginContext= (plugin_info) => {
|
const generatePluginContext= (plugin_info) => {
|
||||||
const plugin_context = {
|
const plugin_context = {
|
||||||
registerComponent: ({ location, component }) => {
|
registerComponent: (component) => {
|
||||||
if (!plugin_info.plugin_id || !location || !component) {
|
if (!plugin_info.plugin_id || !plugin_info.location || !component) {
|
||||||
return console.error("An invalid plugin was detected.", plugin_info.plugin_id, location, component);
|
return console.error("An invalid plugin was detected.", plugin_info.plugin_id, plugin_info.location, component);
|
||||||
}
|
}
|
||||||
updatePluginsData(prev => {
|
updatePluginsData(prev => {
|
||||||
const is_already_registered = prev.data.some(old_value => old_value.plugin_id === plugin_info.plugin_id);
|
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 =>
|
const new_value = prev.data.map(old_value =>
|
||||||
old_value.plugin_id === plugin_info.plugin_id
|
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
|
: old_value
|
||||||
);
|
);
|
||||||
|
|
||||||
return is_already_registered
|
return is_already_registered
|
||||||
? new_value
|
? 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)
|
createAtomWithHook: (...args) => createAtomWithHook(...args)
|
||||||
|
|||||||
Reference in New Issue
Block a user