opossum-tool / OpossumUI

A light-weight app to audit and inventory large codebases for open source license compliance.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Create diff popup for comparing an attribution with its original signal

FlorianSchepers opened this issue · comments

Is your feature request related to a problem? Please describe.
As a user I want to be able to see the changes made to an attribution after it was created from a signal. This is currently not possible in a lightweight and convinient mannor.

Describe the solution you'd like
A popup is introduced that brings the content of the current attribution face to face with the content of the original signal.

Open diff view popup button

  • "COMPARE TO ORIGIN" button
  • name: COMPARE TO ORIGIN
  • location: in buttom right corner below the attribution details in AUDIT and ATTRIBUTION view
  • show:
    • only if there are no unconfirmed changes
    • attribution has an attribution origin

Popup

  • Title: "Compare to original signal"
  • Background light blue as the input fields are white
  • Two columns
    • left: original signal
    • right: latest confirmed attribution
  • auditing option on top
    • revert button on the right hand side reverts all user controlled chips to the state of the original signal
  • the fields for each attribution / signal are listed below the auditing options
    • default: show the values of the fields as text in a non-editable text field
    • exception:
      • Third / First Party field (see below)
        • use same visualization as currently used in audit / attribution view
  • If the value of two matching fields are identical
    • text color: black
    • do not show a revert button on the right side of the current attribution field (see below)
  • If the value of two corresponding fields deviates
    • text color:
      • of the original signal field is red (overwritten value)
      • of the current attribution field is green (new value)
    • show a revert button on the right side of the field of the current attribution
      • icon: some "revert" icon, e.g., a circulating arrow (see Mock below)
      • on-click:
        • resets the value of the current attribution to the value of the original signal
        • the button vanishes
        • both fields are shown as described above for identical fields (e.g. text color black)
  • seperator lines "Package Coordinates" and "Legal Information" as headlines for the corresponding sections
    • we use them here as the user is used to them from audit and attribution view
      -Button row with three buttons in the bottom right (from left to right)
    • "Apply changes" button
      • Text: APPLY CHANGES
      • disabled if no changes have been made
      • Onclick:
        • closes popup
        • stores changes made to the temporary state
        • the user will need to actively save the changes in audit / attribution view
    • "Revert to original" button
      • Text: REVERT TO ORIGINAL
      • onclick:
        • only enabled if there are differences between the original signal and current attribution
        • reverts all fields of the current attribution to the values of the original signal
        • updates the popup, i.e., removes red / green coloring and individual revert buttons
    • "Cancel" button
      • Text: CANCEL
      • onclick:
        • closes the popup
        • ignores any changes made, i.e., does not write the changes made to the temporary state

Describe alternatives you've considered
We considered to use the visualisation currently used in audit / attribution view to show the attribution / signal in the two columns. However, in this representation there are in some cases two fields in one row. This might lead to confusion for the user. Therefore, we decided to not follow this path for now.

Additional context

  • Popup Mock
    DiffViewMock - Kopie2

Open Quenstions