feat(MAC-6): Settings App Overhaul, Calendar Slice & CI/CD Workflow Modernisation - #90
Merged
ar022 merged 2 commits intoJul 13, 2026
Conversation
ar022
force-pushed
the
amitraikwar/MAC-6/settings-overhaul-calendar-cicd
branch
from
July 13, 2026 22:16
8a76c8f to
b639e0a
Compare
- Redesigned Settings app with 20+ macOS-faithful preference panels (General, Wi-Fi, Bluetooth, Network, Notifications, Sound, Focus, Screen Time, Appearance, Accessibility, Siri, Privacy & Security, Desktop & Dock, Displays, Battery, Lock Screen, Touch ID, Users & Groups, Internet Accounts, Wallet, iCloud, Game Centre, Wallpaper). - Added Calendar app slice and selector to appStore for consistent window state management. - Introduced data/Options.ts context menu data files for all simulated apps (Bin, Calendar, Chrome, Finder, Github, Notes, Settings, Spotify, Terminal, VsCode) driven by a shared src/types/menu.ts type. - Refactored appStore, settingsStore, and processStore slices and types to align with new Options data pattern and window state extensions. - Replaced legacy CI/CD workflows (main.yml, deploy.yaml, release.yml) with purpose-built build-web.yml and ci-web.yml for cleaner separation of build and CI concerns. - Simplified DateTimeDrawer by removing WorldClockComponent; revamped Wifi top-bar component; applied minor UI fixes to Window, Launchpad, Lock, and Power screens. - Addresses requirements specified in MAC-6.
ar022
force-pushed
the
amitraikwar/MAC-6/settings-overhaul-calendar-cicd
branch
from
July 13, 2026 22:20
b639e0a to
b639998
Compare
- Explicitly define packageManager as yarn@4.17.0 in package.json. - Add paths configuration for Yarn v4 cache, install state, patches, and virtual folders inside node_modules in .yarnrc.yml.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description of changes
This PR delivers a comprehensive macOS Settings app overhaul, introduces a Calendar app state slice, modernises the CI/CD pipeline, and adds data-driven context menus across all simulated applications.
Requirement
Calendarapp slice and selector inappStoreso Calendar window state is consistently managed.data/Options.tscontext menu data files for every simulated application, driven by a sharedsrc/types/menu.tstype.build-web.yml(build verification) andci-web.yml(CI checks) for better maintainability.DateTimeDrawerby removing the standaloneWorldClockComponentand revamp theWifitop-bar component.Implementation
src/screens/private/program/Settings/): Extracted each preference category into its own TSX component (20+ panels: General, Wi-Fi, Bluetooth, Network, Notifications, Sound, Focus, Screen Time, Appearance, Accessibility, Siri, Privacy & Security, Desktop & Dock, Displays, Battery, Lock Screen, Touch ID & Password, Users & Groups, Internet Accounts, Wallet, iCloud, Game Centre, Wallpaper). Aconst.tsxanddata/Options.tscentralise sidebar navigation config and context menu options.src/store/appStore/slice/Calendar/): New Zustand slice + Immer types + selector, wired intoappStoreand exported viasrc/store/appStore/selector/index.ts.data/Options.tsper app): Each app now exports a typed options array via the new sharedsrc/types/menu.tsinterface, enabling a consistent data-driven rendering pattern for right-click menus.appStore,settingsStore, andprocessStoreslice types updated to accommodate theOptionspattern and window state extensions across Bin, Finder, Terminal, VsCode, and Calendar..github/workflows/): Replacedmain.yml,deploy.yaml, andrelease.ymlwithbuild-web.ymlandci-web.yml— separating build and CI responsibilities for cleaner pipeline management.DateTimeDrawersimplified (WorldClockComponent removed), Wifi top-bar revamped, minor fixes to Window, Launchpad, Lock screen, and Power screen components.Ticket: MAC-6
Author: Amit Raikwar