Page MenuHomePhabricator

Design data input types
Open, Needs TriagePublic

Description

Design ticket for the following data types:

Data typeTop-level value statusQualifier value statusNotes
URL T231994๐Ÿ”ฒ๐Ÿ”ฒstring plus validation
Monolingual text T231996๐Ÿ”ฒ๐Ÿ”ฒstring with a language added
External identifier T231995๐Ÿ”ฒ๐Ÿ”ฒWD does parsing, not sure we will yet (API dependent)
Quantity T231981๐Ÿ”ฒโ˜‘๏ธnumber and optional units (per WD)
Time๐Ÿ”ฒ T231979๐Ÿ”ฒ T227112date and time, most likely without precision or a calendar
Geo-coordinate๐Ÿ”ฒ T231977โ˜‘๏ธ T224060Qualifier needs some UI polish

Key: โ˜‘๏ธ =already in production; ๐Ÿ”ฒ=needed
Parent engineering ticket: T233036

Research

https://docs.google.com/presentation/d/1W8AgU-flpVG6EMfeKJkT4VUzQPh-QJLTtnAurearlkU/edit#slide=id.p

Designs

forthcoming

Event Timeline

Restricted Application added a subscriber: Aklapper. ยท View Herald TranscriptOct 17 2019, 2:14 PM
PDrouin-WMF updated the task description. (Show Details)Oct 17 2019, 2:27 PM
PDrouin-WMF updated the task description. (Show Details)Oct 17 2019, 3:09 PM

Here's a screenshot of the datatypes that we'll be able to start supporting once this patch gets merged.

In addition to the wikibase-item type ("Depicts"), I have string, quantity, and url datatypes now working. URL and String types use the new StringInputWidget, while quantity types use the QuantityInputWidget. Both of these new widgets could benefit from some light touches of design, I think. In particular, I think that some sort of button that says "add value" to the right of the input field for string and quantity inputs would be helpful. Currently the only way a user can actually input a value (after typing something into the field) is to hit the "enter" key on the keyboard.

Here's an example:

  1. User inputs a Quantity value (either by typing or by clicking the plus/minus buttons):
  2. Hitting "enter" puts the panel into edit mode, and allows user to add qualifiers:
  3. Clicking the "publish" button works as normal, and puts the panel back into read mode:

Other properties (coordinates, time, etc) will need a somewhat different treatment. String and Quantity are the most basic types so this is probably where we should start. Fortunately, users won't be able to add properties with non-item datatypes until we explicitly whitelist the type in question, so we can roll out support one at a time as we come up with new UI elements.

Let me know how you'd like to handle these and I can start updating the appropriate widgets for a better UX.

PDrouin-WMF renamed this task from [stub] Data types: design ticket to Data types: design ticket.Nov 14 2019, 8:50 PM
PDrouin-WMF updated the task description. (Show Details)
PDrouin-WMF renamed this task from Data types: design ticket to Design data input types.Nov 15 2019, 4:26 PM