* task(gui): update to mui v5
* task(gui): use sx prop instead of system props
* task(gui): update to mui v6 and replace makeStyles with sx prop
* task(gui): update to mui v7
* task(gui): update react
* fix(gui): fix import
* task(gui): adjust theme and few components to fix migration introduced styling errors
* fix(gui): animation issues with text field animations
* fix(gui): remove 'darker' theme and make 'dark' theme the default
- with the new update 'dark' theme is already quite dark and therefore a 'darker' theme not necessary
- the default theme is set to 'dark' now in settings initialization
* feat(tooling): Upgrade dprint to 0.50.0, eslint config, prettier, justfile commands
- Upgrade dprint to 0.50.0
- Use sane default eslint config (fairly permissive)
- `dprint fmt` now runs prettier for the `src-gui` folder
- Added `check_gui_eslint`, `check_gui_tsc` and `check_gui` commands
* refactor: fix a few eslint errors
* dprint fmt
* fix tsc complains
* nitpick: small spacing issue
---------
Co-authored-by: Binarybaron <binarybaron@protonmail.com>
Co-authored-by: Mohan <86064887+binarybaron@users.noreply.github.com>
* feat(gui): add IntroductionModal component
* feat(gui): add interactivity to IntroductionModal
* feat(gui): create SlideTemplate component for IntroductionModal Slides
* feat(gui): add generic slides to IntroductionModal with images and content
* feat(gui): add Slide with SwapStatusAlert to IntroductionModal
* feat(gui): show the introduction only on the first app start
* feat(gui): make external links functional
* fix(gui): update github link to link to active repo
* feat(gui): replace old images with new mockups and update Slide05 content
* feat(gui): add CardSelectionGroup and CardSelectionOption components for improved card selection UI
* feat(gui): add FiatPricePreference slide to IntroductionModal
* feat(gui): save user preference regarding fiat prices
I set the initial store configuration for fetching fiat prices to false to avoid any calls to coingecko without user consent
* refactor(gui): remove old Slide05 component for improved codebase maintenance
* fix(gui): add UnstoppableSwap logo to FiatPricePreference slide
* refactor(gui): update image imports and improve slide content for introduction modal
* fix(gui): introduce ExternalLink component and update Slide05 to use it for external navigation
* fix(gui): replace webp images for introduction with svg mockups for improved quality
* fix(gui): change order of introduction slides, to asking for fiat price preference at the end
* refactor(gui): implement CardSelectionContext for managing card selection state
* refactor: texts in intro modakl
* fix(gui): update currency fetching SVG for improved design and clarity
* feat(gui): added changelog entry for introduction
---------
Co-authored-by: Binarybaron <binarybaron@protonmail.com>
- Replace Electron IPC with Tauri invoke() for API calls
- Implement TauriSwapProgressEvent for state management
- Remove IpcInvokeButton, replace with PromiseInvokeButton
- Update models: new tauriModel.ts, refactor rpcModel.ts
- Simplify SwapSlice state, remove processRunning flag
- Refactor SwapStatePage to use TauriSwapProgressEvent
- Update HistoryRow and HistoryRowActions for new data structures
- Remove unused Electron-specific components (e.g., RpcStatusAlert)
- Update dependencies: React 18, Material-UI v4 to v5
- Implement typeshare for Rust/TypeScript type synchronization
- Add BobStateName enum for more precise swap state tracking
- Refactor utility functions for Tauri compatibility
- Remove JSONStream and other Electron-specific dependencies