[BUG] Right click Paste overwrites all selected components' object key values

v8.3.1

When specifically using “right click, Paste” to paste a copied value to a prop value in multiple selected components, the first component clicked will have the whole object structure within which the key pasted onto it exists, copied into each of the selected components, except for the prop which was pasted onto which will get the value from the clipboard as expected.

E.g. if you selected multiple embedded views and pasted with right click some text into one of the params, the entire params object from the first selected component would be pasted into all selected embedded views (incorrect), and the text in the clipboard would be copied into the param you pasted it into (correct).

Best explained with a video…

If you wanted to copy the styles from one component to multiple others for example, that's when you would run into trouble, since the only option is to use right click Paste, and in doing this you would get your styles copied, but you would also get the first selected component's entire rest of its props copied into all other selected components, overwriting their configuration…

Example 3 Labels:

[
  {
    "type": "ia.display.label",
    "version": 0,
    "props": {
      "text": "Label 1",
      "style": {
        "color": "#440C0C",
        "fontSize": "13pt",
        "fontWeight": "bold"
      }
    },
    "meta": {
      "name": "Label"
    },
    "position": {
      "basis": "32px"
    },
    "custom": {}
  },
  {
    "type": "ia.display.label",
    "version": 0,
    "props": {
      "text": "Label 2",
      "style": {
        "color": "#C444DE",
        "fontSize": "23pt",
        "fontWeight": "bold"
      }
    },
    "meta": {
      "name": "Label_0"
    },
    "position": {
      "basis": "32px"
    },
    "custom": {}
  },
  {
    "type": "ia.display.label",
    "version": 0,
    "props": {
      "text": "Label 3",
      "style": {
        "color": "red",
        "fontSize": "13pt",
        "fontWeight": "bold"
      }
    },
    "meta": {
      "name": "Label_1"
    },
    "position": {
      "basis": "32px"
    },
    "custom": {}
  }
]
3 Likes