import { NavigationNative, React, ReactNative } from "@vendetta/metro/common";
import { storage } from "@vendetta/plugin";
import { useProxy } from "@vendetta/storage";
import { getAssetIDByName } from "@vendetta/ui/assets";
import { Forms } from "@vendetta/ui/components";
import { currentSettings } from ".";
import { flush, initialize } from "./utils";
const { ScrollView, TouchableOpacity, Text } = ReactNative;
const { FormInput, FormDivider, FormSwitchRow, FormText, FormIcon, FormTextColors } = Forms;
export default function Settings() {
const settings = useProxy(storage) as PluginSettings;
const navigation = NavigationNative.useNavigation();
React.useEffect(() => {
navigation.setOptions({
headerRight: () => (
{
for (const key in storage) {
if (typeof storage[key] === "boolean" || storage[key]) {
currentSettings[key] = settings[key];
}
}
console.log("Applying settings...");
flush().then(() => initialize());
}}>
UPDATE
)
});
}, []);
return (
settings.appName = value.trim()}
title="Discord Application Name"
placeholder="Music"
returnKeyType="done"
/>
settings.username = value.trim()}
title="Last.fm username"
helpText={!settings.username && {"This field is required!"}}
placeholder="wumpus123"
returnKeyType="done"
/>
}
value={settings.showTimestamp}
onValueChange={(value: boolean) => settings.showTimestamp = value}
/>
}
value={settings.listeningTo}
onValueChange={(value: boolean) => settings.listeningTo = value}
/>
}
value={settings.verboseLogging}
onValueChange={(value: boolean) => settings.verboseLogging = value}
/>
)
}