feat: settings page (#260)

* feat: setup settings page boilerplate

* feat: split view into halves

* feat: add preview for Customization Options section

* feat: add OptionStore logic and LD icon

* feat: add courseStatusChips functionality

* feat: migrate experimental settings to proper settings

* feat: center Preview children and add className override

* feat: add GitHub stats

* feat: open GitHub user profile onclick

* feat: get user GitHub stats

* feat: refactor into useGitHubStats hook

* feat: toggle GitHub stats when the user presses the 'S' key

* chore: update title

* fix: remove extra file

* feat: refactor and add DialogProvider

* fix: import

* test: this commit has issues

* fix: no schedule bug

* fix: longhorn developers icon not rendering in prod builds

* feat(pr-review): fix UI and comment out experimental code

* chore: run lint and prettier

* feat: add responsive design

* feat: use @octokit/rest and fix GitHub stats
This commit is contained in:
doprz
2024-10-10 18:05:19 -05:00
committed by GitHub
parent d73615e281
commit 7a5c3a2e62
23 changed files with 1758 additions and 661 deletions

View File

@@ -1,5 +1,7 @@
import { UserScheduleStore } from '@shared/storage/UserScheduleStore';
import createSchedule from './createSchedule';
/**
* Deletes a schedule with the specified name.
*
@@ -32,3 +34,14 @@ export default async function deleteSchedule(scheduleId: string): Promise<string
}
return undefined;
}
/**
* Deletes all schedules.
*
* @returns A promise that resolves when all schedules are deleted
*/
export async function deleteAllSchedules(): Promise<void> {
await UserScheduleStore.set('schedules', []);
await UserScheduleStore.set('activeIndex', 0);
await createSchedule('Schedule 1');
}