ProzillaOS/packages/apps/settings/components/tabs/AppsSettings.tsx
2024-06-16 21:46:44 +02:00

27 lines
No EOL
1,016 B
TypeScript

import { useEffect, useState } from "react";
import styles from "../Settings.module.css";
import { AppsManager } from "../../../../features/apps/appsManager";
import { useSettingsManager } from "../../../../hooks/settings/settingsManagerContext";
import { SettingsManager } from "../../../../features/settings/settingsManager";
import { AppOption } from "./AppOption";
export function AppsSettings() {
const settingsManager = useSettingsManager();
const [pins, setPins] = useState<string[]>([]);
useEffect(() => {
const settings = settingsManager?.getSettings(SettingsManager.VIRTUAL_PATHS.taskbar);
void settings?.get("pins", (newPins) => {
setPins(newPins.split(","));
});
}, [settingsManager]);
return <div className={`${styles.Option} ${styles.OptionList}`}>
<p className={styles.Label}>Apps</p>
{AppsManager.APPS.sort((a, b) =>
a.name.toLowerCase().localeCompare(b.name.toLowerCase())
).map((app) =>
<AppOption key={app.id} app={app} pins={pins} setPins={setPins}/>
)}
</div>;
}