ARK-Builders / ARK-Builders/ark-android
Multi-value widget for properties
- Dominant language
- Kotlin
- Stars
- 0
- Forks
- 1
- PR merge metrics
- No merged PRs in 30d
Description
We now incorporate user-defined metadata known as **properties**, which are essentially key-value pairs. For instance, a book resource could have a property like `"title": "Moby Dick"`. However, property values might differ when sourced from various devices, leading to potential conflicts. In such cases, users must have the option to manually select the correct value to resolve these conflicts. Internally, we represent a property by a key coupled with a list of values. So it may be simply `"title": ["Moby Dick"]` in conflict-free scenarios, or `"title": ["Moby Dick", "Moby-Dick; or, The Whale"]` when an alternative value exists.
-----
A view for representing such fields would be handy:
* In normal case, we have 1 value, so _the view_ just displays it
* When there are _N > 1_ values:
* random value from _N_ is selected and displayed
* _conflict label_ is displayed in the corner of the _view_
* User can tap on the _conflict label_ and see the other values as _versions list_
* User can select the preferred value from the _versions list_
When the user selects a value from _versions list_, all elements from the corresponding `Set` must be erased except the selected one.
Contributor guide
No contributing guide indexed for this repository
Research direction
No files, tests, or entry points are named. Start by locating the properties model and the existing view used to display property fields, then trace how values are stored and selected. Done means single-value properties display directly, conflicts show a label and versions list, and selecting a version leaves only that value.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- kotlin
- Domain
- mobile
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100