mirror of
https://github.com/element-hq/element-x-ios.git
synced 2025-03-11 13:59:13 +00:00

* Delete deprecated font tokens. * Migrate from primaryContent to textPrimary/iconPrimary. * Migrate from links to textLinkExternal. * Migrate from secondaryContent to textSecondary/iconSecondary. * Migrate from accent to textActionPrimary. - Some uses changed to textPrimary or iconPrimary as necessary. - Some manual tints removed now that that Sentry is fixed. * Migrate alert to textCriticalPrimary/iconCriticalPrimary. * Migrate from brand to textActionAccent/iconAccentTertiary. * Migrate from background to bgCanvasDefault or text/iconOnSolidPrimary * Migrate system to bgSubtleSecondary. * Remove ElementUIColors and obsolete migrated colours. * Migrate tertiaryContent/quaternaryContent/quinaryContent to Compound. * Migrate bubblesYou/bubblesNotYou to use Compound. * Update Compound.
Scripts
Iconizer
Generates all app icon variants from one single .pdf file.
Usage:
sh iconizer.sh ../ElementX/Supporting\ Files/AppIcon.pdf ../ElementX/Supporting\ Files
Localizer
Generates all app localization files and imports them to the project, by downloading strings from element-android and converting them to strings
and stringsdict
files.
Usage:
./localizer.py
Boot Test Simulator
Boots a desired simulator and makes status bar overrides on that.
Usage:
./bootTestSimulator.py 'iPhone 13 Pro Max'
Create screen templates
New screen flows are currently using the MVVM-Coordinator pattern. Run Tools/Scripts/createScreen.sh to create a new screen and all its required dependencies.
Usage:
./createScreen.sh Folder MyScreenName
After that run xcodegen
to regenerate the project.
createScreen.sh
script will create:
Folder
within the/ElementX/Sources/Screens/
. Files inside will be namedMyScreenNameXxx
.MyScreenNameScreenUITests.swift
withinUITests/Sources
MyScreenNameViewModelTests.swift
withinUnitTests/Sources/Unit