Create poll UX (#1571)

* Add poll attachment button

* Add poll creation feature flag

* Setup navigation to CreatePollScreen

* Add create/cancel actions

* Add create poll screen ui skeleton

* Add bindings in CreatePollScreen

* Add logics in CreatePollScreen

* Cleanup code

* Fix option deletion crash

* Fix conflicts

* Add create poll logic

* Add localisations

* Fix test build errors

* Fix crash

* Add UTs

* Add accessibility IDs

* Add ui tests

* Add 240 char limit

* Fix addOption hide behavior

* Add maxNumberOfOptions

* Cleanup code

* Move delete workaround in the view model

* Use compound delete icon
This commit is contained in:
Alfonso Grillo
2023-08-30 11:23:30 +02:00
committed by GitHub
parent e08d7b491e
commit a2623dd254
41 changed files with 846 additions and 3 deletions
@@ -40,6 +40,7 @@ struct A11yIdentifiers {
static let migrationScreen = MigrationScreen()
static let notificationSettingsScreen = NotificationSettingsScreen()
static let notificationSettingsEditScreen = NotificationSettingsEditScreen()
static let createPollScreen = CreatePollScreen()
struct AnalyticsPromptScreen {
let title = "analytics_prompt-title"
@@ -181,6 +182,19 @@ struct A11yIdentifiers {
let roomTopic = "create_room-room_topic"
}
struct CreatePollScreen {
let question = "create_poll-question"
let create = "create_poll-create"
let addOption = "create_poll-add_option"
let pollKind = "create_poll-kind"
private let optionPrefix = "create_poll-option"
func optionID(_ index: Int) -> String {
"\(optionPrefix)-\(index)"
}
}
struct WelcomeScreen {
let letsGo = "welcome_screen-lets_go"
}