|  | @@ -46,7 +46,8 @@ Object {
 | 
	
		
			
				|  |  |      "id1": true,
 | 
	
		
			
				|  |  |      "id2": true,
 | 
	
		
			
				|  |  |      "id3": true,
 | 
	
		
			
				|  |  | -    "id5": true,
 | 
	
		
			
				|  |  | +    "id4": true,
 | 
	
		
			
				|  |  | +    "id6": true,
 | 
	
		
			
				|  |  |    },
 | 
	
		
			
				|  |  |    "resizingElement": null,
 | 
	
		
			
				|  |  |    "scrollX": 0,
 | 
	
	
		
			
				|  | @@ -55,10 +56,10 @@ Object {
 | 
	
		
			
				|  |  |    "selectedElementIds": Object {
 | 
	
		
			
				|  |  |      "id0": true,
 | 
	
		
			
				|  |  |      "id2": true,
 | 
	
		
			
				|  |  | -    "id6": true,
 | 
	
		
			
				|  |  | +    "id7": true,
 | 
	
		
			
				|  |  |    },
 | 
	
		
			
				|  |  |    "selectedGroupIds": Object {
 | 
	
		
			
				|  |  | -    "id4": true,
 | 
	
		
			
				|  |  | +    "id5": true,
 | 
	
		
			
				|  |  |    },
 | 
	
		
			
				|  |  |    "selectionElement": null,
 | 
	
		
			
				|  |  |    "shouldAddWatermark": false,
 | 
	
	
		
			
				|  | @@ -81,7 +82,7 @@ Object {
 | 
	
		
			
				|  |  |    "boundElementIds": null,
 | 
	
		
			
				|  |  |    "fillStyle": "hachure",
 | 
	
		
			
				|  |  |    "groupIds": Array [],
 | 
	
		
			
				|  |  | -  "height": 100,
 | 
	
		
			
				|  |  | +  "height": 10,
 | 
	
		
			
				|  |  |    "id": "id1",
 | 
	
		
			
				|  |  |    "isDeleted": false,
 | 
	
		
			
				|  |  |    "opacity": 100,
 | 
	
	
		
			
				|  | @@ -94,9 +95,9 @@ Object {
 | 
	
		
			
				|  |  |    "type": "rectangle",
 | 
	
		
			
				|  |  |    "version": 2,
 | 
	
		
			
				|  |  |    "versionNonce": 453191,
 | 
	
		
			
				|  |  | -  "width": 100,
 | 
	
		
			
				|  |  | -  "x": 110,
 | 
	
		
			
				|  |  | -  "y": 110,
 | 
	
		
			
				|  |  | +  "width": 10,
 | 
	
		
			
				|  |  | +  "x": 0,
 | 
	
		
			
				|  |  | +  "y": 30,
 | 
	
		
			
				|  |  |  }
 | 
	
		
			
				|  |  |  `;
 | 
	
		
			
				|  |  |  
 | 
	
	
		
			
				|  | @@ -107,9 +108,9 @@ Object {
 | 
	
		
			
				|  |  |    "boundElementIds": null,
 | 
	
		
			
				|  |  |    "fillStyle": "hachure",
 | 
	
		
			
				|  |  |    "groupIds": Array [
 | 
	
		
			
				|  |  | -    "id4",
 | 
	
		
			
				|  |  | +    "id5",
 | 
	
		
			
				|  |  |    ],
 | 
	
		
			
				|  |  | -  "height": 100,
 | 
	
		
			
				|  |  | +  "height": 10,
 | 
	
		
			
				|  |  |    "id": "id0",
 | 
	
		
			
				|  |  |    "isDeleted": false,
 | 
	
		
			
				|  |  |    "opacity": 100,
 | 
	
	
		
			
				|  | @@ -121,8 +122,8 @@ Object {
 | 
	
		
			
				|  |  |    "strokeWidth": 1,
 | 
	
		
			
				|  |  |    "type": "rectangle",
 | 
	
		
			
				|  |  |    "version": 3,
 | 
	
		
			
				|  |  | -  "versionNonce": 1116226695,
 | 
	
		
			
				|  |  | -  "width": 100,
 | 
	
		
			
				|  |  | +  "versionNonce": 1014066025,
 | 
	
		
			
				|  |  | +  "width": 10,
 | 
	
		
			
				|  |  |    "x": 0,
 | 
	
		
			
				|  |  |    "y": 0,
 | 
	
		
			
				|  |  |  }
 | 
	
	
		
			
				|  | @@ -135,9 +136,9 @@ Object {
 | 
	
		
			
				|  |  |    "boundElementIds": null,
 | 
	
		
			
				|  |  |    "fillStyle": "hachure",
 | 
	
		
			
				|  |  |    "groupIds": Array [
 | 
	
		
			
				|  |  | -    "id4",
 | 
	
		
			
				|  |  | +    "id5",
 | 
	
		
			
				|  |  |    ],
 | 
	
		
			
				|  |  | -  "height": 100,
 | 
	
		
			
				|  |  | +  "height": 10,
 | 
	
		
			
				|  |  |    "id": "id2",
 | 
	
		
			
				|  |  |    "isDeleted": false,
 | 
	
		
			
				|  |  |    "opacity": 100,
 | 
	
	
		
			
				|  | @@ -149,10 +150,10 @@ Object {
 | 
	
		
			
				|  |  |    "strokeWidth": 1,
 | 
	
		
			
				|  |  |    "type": "rectangle",
 | 
	
		
			
				|  |  |    "version": 3,
 | 
	
		
			
				|  |  | -  "versionNonce": 1014066025,
 | 
	
		
			
				|  |  | -  "width": 100,
 | 
	
		
			
				|  |  | -  "x": 220,
 | 
	
		
			
				|  |  | -  "y": 220,
 | 
	
		
			
				|  |  | +  "versionNonce": 238820263,
 | 
	
		
			
				|  |  | +  "width": 10,
 | 
	
		
			
				|  |  | +  "x": 0,
 | 
	
		
			
				|  |  | +  "y": 60,
 | 
	
		
			
				|  |  |  }
 | 
	
		
			
				|  |  |  `;
 | 
	
		
			
				|  |  |  
 | 
	
	
		
			
				|  | @@ -178,7 +179,7 @@ Object {
 | 
	
		
			
				|  |  |            "boundElementIds": null,
 | 
	
		
			
				|  |  |            "fillStyle": "hachure",
 | 
	
		
			
				|  |  |            "groupIds": Array [],
 | 
	
		
			
				|  |  | -          "height": 100,
 | 
	
		
			
				|  |  | +          "height": 10,
 | 
	
		
			
				|  |  |            "id": "id0",
 | 
	
		
			
				|  |  |            "isDeleted": false,
 | 
	
		
			
				|  |  |            "opacity": 100,
 | 
	
	
		
			
				|  | @@ -191,7 +192,7 @@ Object {
 | 
	
		
			
				|  |  |            "type": "rectangle",
 | 
	
		
			
				|  |  |            "version": 2,
 | 
	
		
			
				|  |  |            "versionNonce": 1278240551,
 | 
	
		
			
				|  |  | -          "width": 100,
 | 
	
		
			
				|  |  | +          "width": 10,
 | 
	
		
			
				|  |  |            "x": 0,
 | 
	
		
			
				|  |  |            "y": 0,
 | 
	
		
			
				|  |  |          },
 | 
	
	
		
			
				|  | @@ -214,7 +215,7 @@ Object {
 | 
	
		
			
				|  |  |            "boundElementIds": null,
 | 
	
		
			
				|  |  |            "fillStyle": "hachure",
 | 
	
		
			
				|  |  |            "groupIds": Array [],
 | 
	
		
			
				|  |  | -          "height": 100,
 | 
	
		
			
				|  |  | +          "height": 10,
 | 
	
		
			
				|  |  |            "id": "id0",
 | 
	
		
			
				|  |  |            "isDeleted": false,
 | 
	
		
			
				|  |  |            "opacity": 100,
 | 
	
	
		
			
				|  | @@ -227,7 +228,7 @@ Object {
 | 
	
		
			
				|  |  |            "type": "rectangle",
 | 
	
		
			
				|  |  |            "version": 2,
 | 
	
		
			
				|  |  |            "versionNonce": 1278240551,
 | 
	
		
			
				|  |  | -          "width": 100,
 | 
	
		
			
				|  |  | +          "width": 10,
 | 
	
		
			
				|  |  |            "x": 0,
 | 
	
		
			
				|  |  |            "y": 0,
 | 
	
		
			
				|  |  |          },
 | 
	
	
		
			
				|  | @@ -237,7 +238,7 @@ Object {
 | 
	
		
			
				|  |  |            "boundElementIds": null,
 | 
	
		
			
				|  |  |            "fillStyle": "hachure",
 | 
	
		
			
				|  |  |            "groupIds": Array [],
 | 
	
		
			
				|  |  | -          "height": 100,
 | 
	
		
			
				|  |  | +          "height": 10,
 | 
	
		
			
				|  |  |            "id": "id1",
 | 
	
		
			
				|  |  |            "isDeleted": false,
 | 
	
		
			
				|  |  |            "opacity": 100,
 | 
	
	
		
			
				|  | @@ -250,9 +251,9 @@ Object {
 | 
	
		
			
				|  |  |            "type": "rectangle",
 | 
	
		
			
				|  |  |            "version": 2,
 | 
	
		
			
				|  |  |            "versionNonce": 453191,
 | 
	
		
			
				|  |  | -          "width": 100,
 | 
	
		
			
				|  |  | -          "x": 110,
 | 
	
		
			
				|  |  | -          "y": 110,
 | 
	
		
			
				|  |  | +          "width": 10,
 | 
	
		
			
				|  |  | +          "x": 0,
 | 
	
		
			
				|  |  | +          "y": 30,
 | 
	
		
			
				|  |  |          },
 | 
	
		
			
				|  |  |        ],
 | 
	
		
			
				|  |  |      },
 | 
	
	
		
			
				|  | @@ -273,7 +274,7 @@ Object {
 | 
	
		
			
				|  |  |            "boundElementIds": null,
 | 
	
		
			
				|  |  |            "fillStyle": "hachure",
 | 
	
		
			
				|  |  |            "groupIds": Array [],
 | 
	
		
			
				|  |  | -          "height": 100,
 | 
	
		
			
				|  |  | +          "height": 10,
 | 
	
		
			
				|  |  |            "id": "id0",
 | 
	
		
			
				|  |  |            "isDeleted": false,
 | 
	
		
			
				|  |  |            "opacity": 100,
 | 
	
	
		
			
				|  | @@ -286,7 +287,7 @@ Object {
 | 
	
		
			
				|  |  |            "type": "rectangle",
 | 
	
		
			
				|  |  |            "version": 2,
 | 
	
		
			
				|  |  |            "versionNonce": 1278240551,
 | 
	
		
			
				|  |  | -          "width": 100,
 | 
	
		
			
				|  |  | +          "width": 10,
 | 
	
		
			
				|  |  |            "x": 0,
 | 
	
		
			
				|  |  |            "y": 0,
 | 
	
		
			
				|  |  |          },
 | 
	
	
		
			
				|  | @@ -296,7 +297,7 @@ Object {
 | 
	
		
			
				|  |  |            "boundElementIds": null,
 | 
	
		
			
				|  |  |            "fillStyle": "hachure",
 | 
	
		
			
				|  |  |            "groupIds": Array [],
 | 
	
		
			
				|  |  | -          "height": 100,
 | 
	
		
			
				|  |  | +          "height": 10,
 | 
	
		
			
				|  |  |            "id": "id1",
 | 
	
		
			
				|  |  |            "isDeleted": false,
 | 
	
		
			
				|  |  |            "opacity": 100,
 | 
	
	
		
			
				|  | @@ -309,9 +310,9 @@ Object {
 | 
	
		
			
				|  |  |            "type": "rectangle",
 | 
	
		
			
				|  |  |            "version": 2,
 | 
	
		
			
				|  |  |            "versionNonce": 453191,
 | 
	
		
			
				|  |  | -          "width": 100,
 | 
	
		
			
				|  |  | -          "x": 110,
 | 
	
		
			
				|  |  | -          "y": 110,
 | 
	
		
			
				|  |  | +          "width": 10,
 | 
	
		
			
				|  |  | +          "x": 0,
 | 
	
		
			
				|  |  | +          "y": 30,
 | 
	
		
			
				|  |  |          },
 | 
	
		
			
				|  |  |          Object {
 | 
	
		
			
				|  |  |            "angle": 0,
 | 
	
	
		
			
				|  | @@ -319,7 +320,7 @@ Object {
 | 
	
		
			
				|  |  |            "boundElementIds": null,
 | 
	
		
			
				|  |  |            "fillStyle": "hachure",
 | 
	
		
			
				|  |  |            "groupIds": Array [],
 | 
	
		
			
				|  |  | -          "height": 100,
 | 
	
		
			
				|  |  | +          "height": 10,
 | 
	
		
			
				|  |  |            "id": "id2",
 | 
	
		
			
				|  |  |            "isDeleted": false,
 | 
	
		
			
				|  |  |            "opacity": 100,
 | 
	
	
		
			
				|  | @@ -332,9 +333,9 @@ Object {
 | 
	
		
			
				|  |  |            "type": "rectangle",
 | 
	
		
			
				|  |  |            "version": 2,
 | 
	
		
			
				|  |  |            "versionNonce": 2019559783,
 | 
	
		
			
				|  |  | -          "width": 100,
 | 
	
		
			
				|  |  | -          "x": 220,
 | 
	
		
			
				|  |  | -          "y": 220,
 | 
	
		
			
				|  |  | +          "width": 10,
 | 
	
		
			
				|  |  | +          "x": 0,
 | 
	
		
			
				|  |  | +          "y": 60,
 | 
	
		
			
				|  |  |          },
 | 
	
		
			
				|  |  |        ],
 | 
	
		
			
				|  |  |      },
 | 
	
	
		
			
				|  | @@ -347,6 +348,7 @@ Object {
 | 
	
		
			
				|  |  |            "id0": true,
 | 
	
		
			
				|  |  |            "id2": true,
 | 
	
		
			
				|  |  |            "id3": true,
 | 
	
		
			
				|  |  | +          "id4": true,
 | 
	
		
			
				|  |  |          },
 | 
	
		
			
				|  |  |          "viewBackgroundColor": "#ffffff",
 | 
	
		
			
				|  |  |        },
 | 
	
	
		
			
				|  | @@ -357,7 +359,7 @@ Object {
 | 
	
		
			
				|  |  |            "boundElementIds": null,
 | 
	
		
			
				|  |  |            "fillStyle": "hachure",
 | 
	
		
			
				|  |  |            "groupIds": Array [],
 | 
	
		
			
				|  |  | -          "height": 100,
 | 
	
		
			
				|  |  | +          "height": 10,
 | 
	
		
			
				|  |  |            "id": "id1",
 | 
	
		
			
				|  |  |            "isDeleted": false,
 | 
	
		
			
				|  |  |            "opacity": 100,
 | 
	
	
		
			
				|  | @@ -370,9 +372,9 @@ Object {
 | 
	
		
			
				|  |  |            "type": "rectangle",
 | 
	
		
			
				|  |  |            "version": 2,
 | 
	
		
			
				|  |  |            "versionNonce": 453191,
 | 
	
		
			
				|  |  | -          "width": 100,
 | 
	
		
			
				|  |  | -          "x": 110,
 | 
	
		
			
				|  |  | -          "y": 110,
 | 
	
		
			
				|  |  | +          "width": 10,
 | 
	
		
			
				|  |  | +          "x": 0,
 | 
	
		
			
				|  |  | +          "y": 30,
 | 
	
		
			
				|  |  |          },
 | 
	
		
			
				|  |  |          Object {
 | 
	
		
			
				|  |  |            "angle": 0,
 | 
	
	
		
			
				|  | @@ -380,9 +382,9 @@ Object {
 | 
	
		
			
				|  |  |            "boundElementIds": null,
 | 
	
		
			
				|  |  |            "fillStyle": "hachure",
 | 
	
		
			
				|  |  |            "groupIds": Array [
 | 
	
		
			
				|  |  | -            "id4",
 | 
	
		
			
				|  |  | +            "id5",
 | 
	
		
			
				|  |  |            ],
 | 
	
		
			
				|  |  | -          "height": 100,
 | 
	
		
			
				|  |  | +          "height": 10,
 | 
	
		
			
				|  |  |            "id": "id0",
 | 
	
		
			
				|  |  |            "isDeleted": false,
 | 
	
		
			
				|  |  |            "opacity": 100,
 | 
	
	
		
			
				|  | @@ -394,8 +396,8 @@ Object {
 | 
	
		
			
				|  |  |            "strokeWidth": 1,
 | 
	
		
			
				|  |  |            "type": "rectangle",
 | 
	
		
			
				|  |  |            "version": 3,
 | 
	
		
			
				|  |  | -          "versionNonce": 1116226695,
 | 
	
		
			
				|  |  | -          "width": 100,
 | 
	
		
			
				|  |  | +          "versionNonce": 1014066025,
 | 
	
		
			
				|  |  | +          "width": 10,
 | 
	
		
			
				|  |  |            "x": 0,
 | 
	
		
			
				|  |  |            "y": 0,
 | 
	
		
			
				|  |  |          },
 | 
	
	
		
			
				|  | @@ -405,9 +407,9 @@ Object {
 | 
	
		
			
				|  |  |            "boundElementIds": null,
 | 
	
		
			
				|  |  |            "fillStyle": "hachure",
 | 
	
		
			
				|  |  |            "groupIds": Array [
 | 
	
		
			
				|  |  | -            "id4",
 | 
	
		
			
				|  |  | +            "id5",
 | 
	
		
			
				|  |  |            ],
 | 
	
		
			
				|  |  | -          "height": 100,
 | 
	
		
			
				|  |  | +          "height": 10,
 | 
	
		
			
				|  |  |            "id": "id2",
 | 
	
		
			
				|  |  |            "isDeleted": false,
 | 
	
		
			
				|  |  |            "opacity": 100,
 | 
	
	
		
			
				|  | @@ -419,10 +421,10 @@ Object {
 | 
	
		
			
				|  |  |            "strokeWidth": 1,
 | 
	
		
			
				|  |  |            "type": "rectangle",
 | 
	
		
			
				|  |  |            "version": 3,
 | 
	
		
			
				|  |  | -          "versionNonce": 1014066025,
 | 
	
		
			
				|  |  | -          "width": 100,
 | 
	
		
			
				|  |  | -          "x": 220,
 | 
	
		
			
				|  |  | -          "y": 220,
 | 
	
		
			
				|  |  | +          "versionNonce": 238820263,
 | 
	
		
			
				|  |  | +          "width": 10,
 | 
	
		
			
				|  |  | +          "x": 0,
 | 
	
		
			
				|  |  | +          "y": 60,
 | 
	
		
			
				|  |  |          },
 | 
	
		
			
				|  |  |        ],
 | 
	
		
			
				|  |  |      },
 | 
	
	
		
			
				|  | @@ -432,7 +434,7 @@ Object {
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  exports[`given element A and group of elements B and given both are selected when user clicks on B, on pointer up only elements from B should be selected: [end of test] number of elements 1`] = `3`;
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -exports[`given element A and group of elements B and given both are selected when user clicks on B, on pointer up only elements from B should be selected: [end of test] number of renders 1`] = `22`;
 | 
	
		
			
				|  |  | +exports[`given element A and group of elements B and given both are selected when user clicks on B, on pointer up only elements from B should be selected: [end of test] number of renders 1`] = `26`;
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  exports[`given element A and group of elements B and given both are selected when user shift-clicks on B, on pointer up only element A should be selected: [end of test] appState 1`] = `
 | 
	
		
			
				|  |  |  Object {
 | 
	
	
		
			
				|  | @@ -24495,6 +24497,802 @@ exports[`regression tests shows context menu for element: [end of test] number o
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  exports[`regression tests shows context menu for element: [end of test] number of renders 1`] = `7`;
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +exports[`regression tests single-clicking on a subgroup of a selected group should not alter selection: [end of test] appState 1`] = `
 | 
	
		
			
				|  |  | +Object {
 | 
	
		
			
				|  |  | +  "appearance": "light",
 | 
	
		
			
				|  |  | +  "collaborators": Map {},
 | 
	
		
			
				|  |  | +  "currentItemBackgroundColor": "transparent",
 | 
	
		
			
				|  |  | +  "currentItemFillStyle": "hachure",
 | 
	
		
			
				|  |  | +  "currentItemFontFamily": 1,
 | 
	
		
			
				|  |  | +  "currentItemFontSize": 20,
 | 
	
		
			
				|  |  | +  "currentItemLinearStrokeSharpness": "round",
 | 
	
		
			
				|  |  | +  "currentItemOpacity": 100,
 | 
	
		
			
				|  |  | +  "currentItemRoughness": 1,
 | 
	
		
			
				|  |  | +  "currentItemStrokeColor": "#000000",
 | 
	
		
			
				|  |  | +  "currentItemStrokeSharpness": "sharp",
 | 
	
		
			
				|  |  | +  "currentItemStrokeStyle": "solid",
 | 
	
		
			
				|  |  | +  "currentItemStrokeWidth": 1,
 | 
	
		
			
				|  |  | +  "currentItemTextAlign": "left",
 | 
	
		
			
				|  |  | +  "cursorButton": "up",
 | 
	
		
			
				|  |  | +  "cursorX": 0,
 | 
	
		
			
				|  |  | +  "cursorY": 0,
 | 
	
		
			
				|  |  | +  "draggingElement": null,
 | 
	
		
			
				|  |  | +  "editingElement": null,
 | 
	
		
			
				|  |  | +  "editingGroupId": null,
 | 
	
		
			
				|  |  | +  "editingLinearElement": null,
 | 
	
		
			
				|  |  | +  "elementLocked": false,
 | 
	
		
			
				|  |  | +  "elementType": "selection",
 | 
	
		
			
				|  |  | +  "errorMessage": null,
 | 
	
		
			
				|  |  | +  "exportBackground": true,
 | 
	
		
			
				|  |  | +  "gridSize": null,
 | 
	
		
			
				|  |  | +  "height": 768,
 | 
	
		
			
				|  |  | +  "isBindingEnabled": true,
 | 
	
		
			
				|  |  | +  "isCollaborating": false,
 | 
	
		
			
				|  |  | +  "isLibraryOpen": false,
 | 
	
		
			
				|  |  | +  "isLoading": false,
 | 
	
		
			
				|  |  | +  "isResizing": false,
 | 
	
		
			
				|  |  | +  "isRotating": false,
 | 
	
		
			
				|  |  | +  "lastPointerDownWith": "mouse",
 | 
	
		
			
				|  |  | +  "multiElement": null,
 | 
	
		
			
				|  |  | +  "name": "Untitled-201933152653",
 | 
	
		
			
				|  |  | +  "offsetLeft": 0,
 | 
	
		
			
				|  |  | +  "offsetTop": 0,
 | 
	
		
			
				|  |  | +  "openMenu": null,
 | 
	
		
			
				|  |  | +  "previousSelectedElementIds": Object {
 | 
	
		
			
				|  |  | +    "id0": true,
 | 
	
		
			
				|  |  | +    "id1": true,
 | 
	
		
			
				|  |  | +    "id5": true,
 | 
	
		
			
				|  |  | +    "id6": true,
 | 
	
		
			
				|  |  | +  },
 | 
	
		
			
				|  |  | +  "resizingElement": null,
 | 
	
		
			
				|  |  | +  "scrollX": 0,
 | 
	
		
			
				|  |  | +  "scrollY": 0,
 | 
	
		
			
				|  |  | +  "scrolledOutside": false,
 | 
	
		
			
				|  |  | +  "selectedElementIds": Object {
 | 
	
		
			
				|  |  | +    "id0": true,
 | 
	
		
			
				|  |  | +    "id1": true,
 | 
	
		
			
				|  |  | +    "id11": true,
 | 
	
		
			
				|  |  | +    "id5": true,
 | 
	
		
			
				|  |  | +    "id6": true,
 | 
	
		
			
				|  |  | +  },
 | 
	
		
			
				|  |  | +  "selectedGroupIds": Object {
 | 
	
		
			
				|  |  | +    "id10": true,
 | 
	
		
			
				|  |  | +  },
 | 
	
		
			
				|  |  | +  "selectionElement": null,
 | 
	
		
			
				|  |  | +  "shouldAddWatermark": false,
 | 
	
		
			
				|  |  | +  "shouldCacheIgnoreZoom": false,
 | 
	
		
			
				|  |  | +  "showShortcutsDialog": false,
 | 
	
		
			
				|  |  | +  "startBoundElement": null,
 | 
	
		
			
				|  |  | +  "suggestedBindings": Array [],
 | 
	
		
			
				|  |  | +  "username": "",
 | 
	
		
			
				|  |  | +  "viewBackgroundColor": "#ffffff",
 | 
	
		
			
				|  |  | +  "width": 1024,
 | 
	
		
			
				|  |  | +  "zenModeEnabled": false,
 | 
	
		
			
				|  |  | +  "zoom": 1,
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +`;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +exports[`regression tests single-clicking on a subgroup of a selected group should not alter selection: [end of test] element 0 1`] = `
 | 
	
		
			
				|  |  | +Object {
 | 
	
		
			
				|  |  | +  "angle": 0,
 | 
	
		
			
				|  |  | +  "backgroundColor": "transparent",
 | 
	
		
			
				|  |  | +  "boundElementIds": null,
 | 
	
		
			
				|  |  | +  "fillStyle": "hachure",
 | 
	
		
			
				|  |  | +  "groupIds": Array [
 | 
	
		
			
				|  |  | +    "id4",
 | 
	
		
			
				|  |  | +    "id10",
 | 
	
		
			
				|  |  | +  ],
 | 
	
		
			
				|  |  | +  "height": 10,
 | 
	
		
			
				|  |  | +  "id": "id0",
 | 
	
		
			
				|  |  | +  "isDeleted": false,
 | 
	
		
			
				|  |  | +  "opacity": 100,
 | 
	
		
			
				|  |  | +  "roughness": 1,
 | 
	
		
			
				|  |  | +  "seed": 337897,
 | 
	
		
			
				|  |  | +  "strokeColor": "#000000",
 | 
	
		
			
				|  |  | +  "strokeSharpness": "sharp",
 | 
	
		
			
				|  |  | +  "strokeStyle": "solid",
 | 
	
		
			
				|  |  | +  "strokeWidth": 1,
 | 
	
		
			
				|  |  | +  "type": "rectangle",
 | 
	
		
			
				|  |  | +  "version": 4,
 | 
	
		
			
				|  |  | +  "versionNonce": 81784553,
 | 
	
		
			
				|  |  | +  "width": 10,
 | 
	
		
			
				|  |  | +  "x": 10,
 | 
	
		
			
				|  |  | +  "y": 10,
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +`;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +exports[`regression tests single-clicking on a subgroup of a selected group should not alter selection: [end of test] element 1 1`] = `
 | 
	
		
			
				|  |  | +Object {
 | 
	
		
			
				|  |  | +  "angle": 0,
 | 
	
		
			
				|  |  | +  "backgroundColor": "transparent",
 | 
	
		
			
				|  |  | +  "boundElementIds": null,
 | 
	
		
			
				|  |  | +  "fillStyle": "hachure",
 | 
	
		
			
				|  |  | +  "groupIds": Array [
 | 
	
		
			
				|  |  | +    "id4",
 | 
	
		
			
				|  |  | +    "id10",
 | 
	
		
			
				|  |  | +  ],
 | 
	
		
			
				|  |  | +  "height": 10,
 | 
	
		
			
				|  |  | +  "id": "id1",
 | 
	
		
			
				|  |  | +  "isDeleted": false,
 | 
	
		
			
				|  |  | +  "opacity": 100,
 | 
	
		
			
				|  |  | +  "roughness": 1,
 | 
	
		
			
				|  |  | +  "seed": 449462985,
 | 
	
		
			
				|  |  | +  "strokeColor": "#000000",
 | 
	
		
			
				|  |  | +  "strokeSharpness": "sharp",
 | 
	
		
			
				|  |  | +  "strokeStyle": "solid",
 | 
	
		
			
				|  |  | +  "strokeWidth": 1,
 | 
	
		
			
				|  |  | +  "type": "rectangle",
 | 
	
		
			
				|  |  | +  "version": 4,
 | 
	
		
			
				|  |  | +  "versionNonce": 747212839,
 | 
	
		
			
				|  |  | +  "width": 10,
 | 
	
		
			
				|  |  | +  "x": 50,
 | 
	
		
			
				|  |  | +  "y": 50,
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +`;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +exports[`regression tests single-clicking on a subgroup of a selected group should not alter selection: [end of test] element 2 1`] = `
 | 
	
		
			
				|  |  | +Object {
 | 
	
		
			
				|  |  | +  "angle": 0,
 | 
	
		
			
				|  |  | +  "backgroundColor": "transparent",
 | 
	
		
			
				|  |  | +  "boundElementIds": null,
 | 
	
		
			
				|  |  | +  "fillStyle": "hachure",
 | 
	
		
			
				|  |  | +  "groupIds": Array [
 | 
	
		
			
				|  |  | +    "id9",
 | 
	
		
			
				|  |  | +    "id10",
 | 
	
		
			
				|  |  | +  ],
 | 
	
		
			
				|  |  | +  "height": 10,
 | 
	
		
			
				|  |  | +  "id": "id5",
 | 
	
		
			
				|  |  | +  "isDeleted": false,
 | 
	
		
			
				|  |  | +  "opacity": 100,
 | 
	
		
			
				|  |  | +  "roughness": 1,
 | 
	
		
			
				|  |  | +  "seed": 1014066025,
 | 
	
		
			
				|  |  | +  "strokeColor": "#000000",
 | 
	
		
			
				|  |  | +  "strokeSharpness": "sharp",
 | 
	
		
			
				|  |  | +  "strokeStyle": "solid",
 | 
	
		
			
				|  |  | +  "strokeWidth": 1,
 | 
	
		
			
				|  |  | +  "type": "rectangle",
 | 
	
		
			
				|  |  | +  "version": 4,
 | 
	
		
			
				|  |  | +  "versionNonce": 1723083209,
 | 
	
		
			
				|  |  | +  "width": 10,
 | 
	
		
			
				|  |  | +  "x": 10,
 | 
	
		
			
				|  |  | +  "y": 50,
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +`;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +exports[`regression tests single-clicking on a subgroup of a selected group should not alter selection: [end of test] element 3 1`] = `
 | 
	
		
			
				|  |  | +Object {
 | 
	
		
			
				|  |  | +  "angle": 0,
 | 
	
		
			
				|  |  | +  "backgroundColor": "transparent",
 | 
	
		
			
				|  |  | +  "boundElementIds": null,
 | 
	
		
			
				|  |  | +  "fillStyle": "hachure",
 | 
	
		
			
				|  |  | +  "groupIds": Array [
 | 
	
		
			
				|  |  | +    "id9",
 | 
	
		
			
				|  |  | +    "id10",
 | 
	
		
			
				|  |  | +  ],
 | 
	
		
			
				|  |  | +  "height": 10,
 | 
	
		
			
				|  |  | +  "id": "id6",
 | 
	
		
			
				|  |  | +  "isDeleted": false,
 | 
	
		
			
				|  |  | +  "opacity": 100,
 | 
	
		
			
				|  |  | +  "roughness": 1,
 | 
	
		
			
				|  |  | +  "seed": 400692809,
 | 
	
		
			
				|  |  | +  "strokeColor": "#000000",
 | 
	
		
			
				|  |  | +  "strokeSharpness": "sharp",
 | 
	
		
			
				|  |  | +  "strokeStyle": "solid",
 | 
	
		
			
				|  |  | +  "strokeWidth": 1,
 | 
	
		
			
				|  |  | +  "type": "rectangle",
 | 
	
		
			
				|  |  | +  "version": 4,
 | 
	
		
			
				|  |  | +  "versionNonce": 760410951,
 | 
	
		
			
				|  |  | +  "width": 10,
 | 
	
		
			
				|  |  | +  "x": 50,
 | 
	
		
			
				|  |  | +  "y": 50,
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +`;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +exports[`regression tests single-clicking on a subgroup of a selected group should not alter selection: [end of test] history 1`] = `
 | 
	
		
			
				|  |  | +Object {
 | 
	
		
			
				|  |  | +  "recording": false,
 | 
	
		
			
				|  |  | +  "redoStack": Array [],
 | 
	
		
			
				|  |  | +  "stateHistory": Array [
 | 
	
		
			
				|  |  | +    Object {
 | 
	
		
			
				|  |  | +      "appState": Object {
 | 
	
		
			
				|  |  | +        "editingGroupId": null,
 | 
	
		
			
				|  |  | +        "editingLinearElement": null,
 | 
	
		
			
				|  |  | +        "name": "Untitled-201933152653",
 | 
	
		
			
				|  |  | +        "selectedElementIds": Object {
 | 
	
		
			
				|  |  | +          "id0": true,
 | 
	
		
			
				|  |  | +        },
 | 
	
		
			
				|  |  | +        "viewBackgroundColor": "#ffffff",
 | 
	
		
			
				|  |  | +      },
 | 
	
		
			
				|  |  | +      "elements": Array [
 | 
	
		
			
				|  |  | +        Object {
 | 
	
		
			
				|  |  | +          "angle": 0,
 | 
	
		
			
				|  |  | +          "backgroundColor": "transparent",
 | 
	
		
			
				|  |  | +          "boundElementIds": null,
 | 
	
		
			
				|  |  | +          "fillStyle": "hachure",
 | 
	
		
			
				|  |  | +          "groupIds": Array [],
 | 
	
		
			
				|  |  | +          "height": 10,
 | 
	
		
			
				|  |  | +          "id": "id0",
 | 
	
		
			
				|  |  | +          "isDeleted": false,
 | 
	
		
			
				|  |  | +          "opacity": 100,
 | 
	
		
			
				|  |  | +          "roughness": 1,
 | 
	
		
			
				|  |  | +          "seed": 337897,
 | 
	
		
			
				|  |  | +          "strokeColor": "#000000",
 | 
	
		
			
				|  |  | +          "strokeSharpness": "sharp",
 | 
	
		
			
				|  |  | +          "strokeStyle": "solid",
 | 
	
		
			
				|  |  | +          "strokeWidth": 1,
 | 
	
		
			
				|  |  | +          "type": "rectangle",
 | 
	
		
			
				|  |  | +          "version": 2,
 | 
	
		
			
				|  |  | +          "versionNonce": 1278240551,
 | 
	
		
			
				|  |  | +          "width": 10,
 | 
	
		
			
				|  |  | +          "x": 10,
 | 
	
		
			
				|  |  | +          "y": 10,
 | 
	
		
			
				|  |  | +        },
 | 
	
		
			
				|  |  | +      ],
 | 
	
		
			
				|  |  | +    },
 | 
	
		
			
				|  |  | +    Object {
 | 
	
		
			
				|  |  | +      "appState": Object {
 | 
	
		
			
				|  |  | +        "editingGroupId": null,
 | 
	
		
			
				|  |  | +        "editingLinearElement": null,
 | 
	
		
			
				|  |  | +        "name": "Untitled-201933152653",
 | 
	
		
			
				|  |  | +        "selectedElementIds": Object {
 | 
	
		
			
				|  |  | +          "id1": true,
 | 
	
		
			
				|  |  | +        },
 | 
	
		
			
				|  |  | +        "viewBackgroundColor": "#ffffff",
 | 
	
		
			
				|  |  | +      },
 | 
	
		
			
				|  |  | +      "elements": Array [
 | 
	
		
			
				|  |  | +        Object {
 | 
	
		
			
				|  |  | +          "angle": 0,
 | 
	
		
			
				|  |  | +          "backgroundColor": "transparent",
 | 
	
		
			
				|  |  | +          "boundElementIds": null,
 | 
	
		
			
				|  |  | +          "fillStyle": "hachure",
 | 
	
		
			
				|  |  | +          "groupIds": Array [],
 | 
	
		
			
				|  |  | +          "height": 10,
 | 
	
		
			
				|  |  | +          "id": "id0",
 | 
	
		
			
				|  |  | +          "isDeleted": false,
 | 
	
		
			
				|  |  | +          "opacity": 100,
 | 
	
		
			
				|  |  | +          "roughness": 1,
 | 
	
		
			
				|  |  | +          "seed": 337897,
 | 
	
		
			
				|  |  | +          "strokeColor": "#000000",
 | 
	
		
			
				|  |  | +          "strokeSharpness": "sharp",
 | 
	
		
			
				|  |  | +          "strokeStyle": "solid",
 | 
	
		
			
				|  |  | +          "strokeWidth": 1,
 | 
	
		
			
				|  |  | +          "type": "rectangle",
 | 
	
		
			
				|  |  | +          "version": 2,
 | 
	
		
			
				|  |  | +          "versionNonce": 1278240551,
 | 
	
		
			
				|  |  | +          "width": 10,
 | 
	
		
			
				|  |  | +          "x": 10,
 | 
	
		
			
				|  |  | +          "y": 10,
 | 
	
		
			
				|  |  | +        },
 | 
	
		
			
				|  |  | +        Object {
 | 
	
		
			
				|  |  | +          "angle": 0,
 | 
	
		
			
				|  |  | +          "backgroundColor": "transparent",
 | 
	
		
			
				|  |  | +          "boundElementIds": null,
 | 
	
		
			
				|  |  | +          "fillStyle": "hachure",
 | 
	
		
			
				|  |  | +          "groupIds": Array [],
 | 
	
		
			
				|  |  | +          "height": 10,
 | 
	
		
			
				|  |  | +          "id": "id1",
 | 
	
		
			
				|  |  | +          "isDeleted": false,
 | 
	
		
			
				|  |  | +          "opacity": 100,
 | 
	
		
			
				|  |  | +          "roughness": 1,
 | 
	
		
			
				|  |  | +          "seed": 449462985,
 | 
	
		
			
				|  |  | +          "strokeColor": "#000000",
 | 
	
		
			
				|  |  | +          "strokeSharpness": "sharp",
 | 
	
		
			
				|  |  | +          "strokeStyle": "solid",
 | 
	
		
			
				|  |  | +          "strokeWidth": 1,
 | 
	
		
			
				|  |  | +          "type": "rectangle",
 | 
	
		
			
				|  |  | +          "version": 2,
 | 
	
		
			
				|  |  | +          "versionNonce": 453191,
 | 
	
		
			
				|  |  | +          "width": 10,
 | 
	
		
			
				|  |  | +          "x": 50,
 | 
	
		
			
				|  |  | +          "y": 50,
 | 
	
		
			
				|  |  | +        },
 | 
	
		
			
				|  |  | +      ],
 | 
	
		
			
				|  |  | +    },
 | 
	
		
			
				|  |  | +    Object {
 | 
	
		
			
				|  |  | +      "appState": Object {
 | 
	
		
			
				|  |  | +        "editingGroupId": null,
 | 
	
		
			
				|  |  | +        "editingLinearElement": null,
 | 
	
		
			
				|  |  | +        "name": "Untitled-201933152653",
 | 
	
		
			
				|  |  | +        "selectedElementIds": Object {
 | 
	
		
			
				|  |  | +          "id0": true,
 | 
	
		
			
				|  |  | +          "id1": true,
 | 
	
		
			
				|  |  | +          "id2": true,
 | 
	
		
			
				|  |  | +          "id3": true,
 | 
	
		
			
				|  |  | +        },
 | 
	
		
			
				|  |  | +        "viewBackgroundColor": "#ffffff",
 | 
	
		
			
				|  |  | +      },
 | 
	
		
			
				|  |  | +      "elements": Array [
 | 
	
		
			
				|  |  | +        Object {
 | 
	
		
			
				|  |  | +          "angle": 0,
 | 
	
		
			
				|  |  | +          "backgroundColor": "transparent",
 | 
	
		
			
				|  |  | +          "boundElementIds": null,
 | 
	
		
			
				|  |  | +          "fillStyle": "hachure",
 | 
	
		
			
				|  |  | +          "groupIds": Array [
 | 
	
		
			
				|  |  | +            "id4",
 | 
	
		
			
				|  |  | +          ],
 | 
	
		
			
				|  |  | +          "height": 10,
 | 
	
		
			
				|  |  | +          "id": "id0",
 | 
	
		
			
				|  |  | +          "isDeleted": false,
 | 
	
		
			
				|  |  | +          "opacity": 100,
 | 
	
		
			
				|  |  | +          "roughness": 1,
 | 
	
		
			
				|  |  | +          "seed": 337897,
 | 
	
		
			
				|  |  | +          "strokeColor": "#000000",
 | 
	
		
			
				|  |  | +          "strokeSharpness": "sharp",
 | 
	
		
			
				|  |  | +          "strokeStyle": "solid",
 | 
	
		
			
				|  |  | +          "strokeWidth": 1,
 | 
	
		
			
				|  |  | +          "type": "rectangle",
 | 
	
		
			
				|  |  | +          "version": 3,
 | 
	
		
			
				|  |  | +          "versionNonce": 1150084233,
 | 
	
		
			
				|  |  | +          "width": 10,
 | 
	
		
			
				|  |  | +          "x": 10,
 | 
	
		
			
				|  |  | +          "y": 10,
 | 
	
		
			
				|  |  | +        },
 | 
	
		
			
				|  |  | +        Object {
 | 
	
		
			
				|  |  | +          "angle": 0,
 | 
	
		
			
				|  |  | +          "backgroundColor": "transparent",
 | 
	
		
			
				|  |  | +          "boundElementIds": null,
 | 
	
		
			
				|  |  | +          "fillStyle": "hachure",
 | 
	
		
			
				|  |  | +          "groupIds": Array [
 | 
	
		
			
				|  |  | +            "id4",
 | 
	
		
			
				|  |  | +          ],
 | 
	
		
			
				|  |  | +          "height": 10,
 | 
	
		
			
				|  |  | +          "id": "id1",
 | 
	
		
			
				|  |  | +          "isDeleted": false,
 | 
	
		
			
				|  |  | +          "opacity": 100,
 | 
	
		
			
				|  |  | +          "roughness": 1,
 | 
	
		
			
				|  |  | +          "seed": 449462985,
 | 
	
		
			
				|  |  | +          "strokeColor": "#000000",
 | 
	
		
			
				|  |  | +          "strokeSharpness": "sharp",
 | 
	
		
			
				|  |  | +          "strokeStyle": "solid",
 | 
	
		
			
				|  |  | +          "strokeWidth": 1,
 | 
	
		
			
				|  |  | +          "type": "rectangle",
 | 
	
		
			
				|  |  | +          "version": 3,
 | 
	
		
			
				|  |  | +          "versionNonce": 1116226695,
 | 
	
		
			
				|  |  | +          "width": 10,
 | 
	
		
			
				|  |  | +          "x": 50,
 | 
	
		
			
				|  |  | +          "y": 50,
 | 
	
		
			
				|  |  | +        },
 | 
	
		
			
				|  |  | +      ],
 | 
	
		
			
				|  |  | +    },
 | 
	
		
			
				|  |  | +    Object {
 | 
	
		
			
				|  |  | +      "appState": Object {
 | 
	
		
			
				|  |  | +        "editingGroupId": null,
 | 
	
		
			
				|  |  | +        "editingLinearElement": null,
 | 
	
		
			
				|  |  | +        "name": "Untitled-201933152653",
 | 
	
		
			
				|  |  | +        "selectedElementIds": Object {
 | 
	
		
			
				|  |  | +          "id5": true,
 | 
	
		
			
				|  |  | +        },
 | 
	
		
			
				|  |  | +        "viewBackgroundColor": "#ffffff",
 | 
	
		
			
				|  |  | +      },
 | 
	
		
			
				|  |  | +      "elements": Array [
 | 
	
		
			
				|  |  | +        Object {
 | 
	
		
			
				|  |  | +          "angle": 0,
 | 
	
		
			
				|  |  | +          "backgroundColor": "transparent",
 | 
	
		
			
				|  |  | +          "boundElementIds": null,
 | 
	
		
			
				|  |  | +          "fillStyle": "hachure",
 | 
	
		
			
				|  |  | +          "groupIds": Array [
 | 
	
		
			
				|  |  | +            "id4",
 | 
	
		
			
				|  |  | +          ],
 | 
	
		
			
				|  |  | +          "height": 10,
 | 
	
		
			
				|  |  | +          "id": "id0",
 | 
	
		
			
				|  |  | +          "isDeleted": false,
 | 
	
		
			
				|  |  | +          "opacity": 100,
 | 
	
		
			
				|  |  | +          "roughness": 1,
 | 
	
		
			
				|  |  | +          "seed": 337897,
 | 
	
		
			
				|  |  | +          "strokeColor": "#000000",
 | 
	
		
			
				|  |  | +          "strokeSharpness": "sharp",
 | 
	
		
			
				|  |  | +          "strokeStyle": "solid",
 | 
	
		
			
				|  |  | +          "strokeWidth": 1,
 | 
	
		
			
				|  |  | +          "type": "rectangle",
 | 
	
		
			
				|  |  | +          "version": 3,
 | 
	
		
			
				|  |  | +          "versionNonce": 1150084233,
 | 
	
		
			
				|  |  | +          "width": 10,
 | 
	
		
			
				|  |  | +          "x": 10,
 | 
	
		
			
				|  |  | +          "y": 10,
 | 
	
		
			
				|  |  | +        },
 | 
	
		
			
				|  |  | +        Object {
 | 
	
		
			
				|  |  | +          "angle": 0,
 | 
	
		
			
				|  |  | +          "backgroundColor": "transparent",
 | 
	
		
			
				|  |  | +          "boundElementIds": null,
 | 
	
		
			
				|  |  | +          "fillStyle": "hachure",
 | 
	
		
			
				|  |  | +          "groupIds": Array [
 | 
	
		
			
				|  |  | +            "id4",
 | 
	
		
			
				|  |  | +          ],
 | 
	
		
			
				|  |  | +          "height": 10,
 | 
	
		
			
				|  |  | +          "id": "id1",
 | 
	
		
			
				|  |  | +          "isDeleted": false,
 | 
	
		
			
				|  |  | +          "opacity": 100,
 | 
	
		
			
				|  |  | +          "roughness": 1,
 | 
	
		
			
				|  |  | +          "seed": 449462985,
 | 
	
		
			
				|  |  | +          "strokeColor": "#000000",
 | 
	
		
			
				|  |  | +          "strokeSharpness": "sharp",
 | 
	
		
			
				|  |  | +          "strokeStyle": "solid",
 | 
	
		
			
				|  |  | +          "strokeWidth": 1,
 | 
	
		
			
				|  |  | +          "type": "rectangle",
 | 
	
		
			
				|  |  | +          "version": 3,
 | 
	
		
			
				|  |  | +          "versionNonce": 1116226695,
 | 
	
		
			
				|  |  | +          "width": 10,
 | 
	
		
			
				|  |  | +          "x": 50,
 | 
	
		
			
				|  |  | +          "y": 50,
 | 
	
		
			
				|  |  | +        },
 | 
	
		
			
				|  |  | +        Object {
 | 
	
		
			
				|  |  | +          "angle": 0,
 | 
	
		
			
				|  |  | +          "backgroundColor": "transparent",
 | 
	
		
			
				|  |  | +          "boundElementIds": null,
 | 
	
		
			
				|  |  | +          "fillStyle": "hachure",
 | 
	
		
			
				|  |  | +          "groupIds": Array [],
 | 
	
		
			
				|  |  | +          "height": 10,
 | 
	
		
			
				|  |  | +          "id": "id5",
 | 
	
		
			
				|  |  | +          "isDeleted": false,
 | 
	
		
			
				|  |  | +          "opacity": 100,
 | 
	
		
			
				|  |  | +          "roughness": 1,
 | 
	
		
			
				|  |  | +          "seed": 1014066025,
 | 
	
		
			
				|  |  | +          "strokeColor": "#000000",
 | 
	
		
			
				|  |  | +          "strokeSharpness": "sharp",
 | 
	
		
			
				|  |  | +          "strokeStyle": "solid",
 | 
	
		
			
				|  |  | +          "strokeWidth": 1,
 | 
	
		
			
				|  |  | +          "type": "rectangle",
 | 
	
		
			
				|  |  | +          "version": 2,
 | 
	
		
			
				|  |  | +          "versionNonce": 238820263,
 | 
	
		
			
				|  |  | +          "width": 10,
 | 
	
		
			
				|  |  | +          "x": 10,
 | 
	
		
			
				|  |  | +          "y": 50,
 | 
	
		
			
				|  |  | +        },
 | 
	
		
			
				|  |  | +      ],
 | 
	
		
			
				|  |  | +    },
 | 
	
		
			
				|  |  | +    Object {
 | 
	
		
			
				|  |  | +      "appState": Object {
 | 
	
		
			
				|  |  | +        "editingGroupId": null,
 | 
	
		
			
				|  |  | +        "editingLinearElement": null,
 | 
	
		
			
				|  |  | +        "name": "Untitled-201933152653",
 | 
	
		
			
				|  |  | +        "selectedElementIds": Object {
 | 
	
		
			
				|  |  | +          "id6": true,
 | 
	
		
			
				|  |  | +        },
 | 
	
		
			
				|  |  | +        "viewBackgroundColor": "#ffffff",
 | 
	
		
			
				|  |  | +      },
 | 
	
		
			
				|  |  | +      "elements": Array [
 | 
	
		
			
				|  |  | +        Object {
 | 
	
		
			
				|  |  | +          "angle": 0,
 | 
	
		
			
				|  |  | +          "backgroundColor": "transparent",
 | 
	
		
			
				|  |  | +          "boundElementIds": null,
 | 
	
		
			
				|  |  | +          "fillStyle": "hachure",
 | 
	
		
			
				|  |  | +          "groupIds": Array [
 | 
	
		
			
				|  |  | +            "id4",
 | 
	
		
			
				|  |  | +          ],
 | 
	
		
			
				|  |  | +          "height": 10,
 | 
	
		
			
				|  |  | +          "id": "id0",
 | 
	
		
			
				|  |  | +          "isDeleted": false,
 | 
	
		
			
				|  |  | +          "opacity": 100,
 | 
	
		
			
				|  |  | +          "roughness": 1,
 | 
	
		
			
				|  |  | +          "seed": 337897,
 | 
	
		
			
				|  |  | +          "strokeColor": "#000000",
 | 
	
		
			
				|  |  | +          "strokeSharpness": "sharp",
 | 
	
		
			
				|  |  | +          "strokeStyle": "solid",
 | 
	
		
			
				|  |  | +          "strokeWidth": 1,
 | 
	
		
			
				|  |  | +          "type": "rectangle",
 | 
	
		
			
				|  |  | +          "version": 3,
 | 
	
		
			
				|  |  | +          "versionNonce": 1150084233,
 | 
	
		
			
				|  |  | +          "width": 10,
 | 
	
		
			
				|  |  | +          "x": 10,
 | 
	
		
			
				|  |  | +          "y": 10,
 | 
	
		
			
				|  |  | +        },
 | 
	
		
			
				|  |  | +        Object {
 | 
	
		
			
				|  |  | +          "angle": 0,
 | 
	
		
			
				|  |  | +          "backgroundColor": "transparent",
 | 
	
		
			
				|  |  | +          "boundElementIds": null,
 | 
	
		
			
				|  |  | +          "fillStyle": "hachure",
 | 
	
		
			
				|  |  | +          "groupIds": Array [
 | 
	
		
			
				|  |  | +            "id4",
 | 
	
		
			
				|  |  | +          ],
 | 
	
		
			
				|  |  | +          "height": 10,
 | 
	
		
			
				|  |  | +          "id": "id1",
 | 
	
		
			
				|  |  | +          "isDeleted": false,
 | 
	
		
			
				|  |  | +          "opacity": 100,
 | 
	
		
			
				|  |  | +          "roughness": 1,
 | 
	
		
			
				|  |  | +          "seed": 449462985,
 | 
	
		
			
				|  |  | +          "strokeColor": "#000000",
 | 
	
		
			
				|  |  | +          "strokeSharpness": "sharp",
 | 
	
		
			
				|  |  | +          "strokeStyle": "solid",
 | 
	
		
			
				|  |  | +          "strokeWidth": 1,
 | 
	
		
			
				|  |  | +          "type": "rectangle",
 | 
	
		
			
				|  |  | +          "version": 3,
 | 
	
		
			
				|  |  | +          "versionNonce": 1116226695,
 | 
	
		
			
				|  |  | +          "width": 10,
 | 
	
		
			
				|  |  | +          "x": 50,
 | 
	
		
			
				|  |  | +          "y": 50,
 | 
	
		
			
				|  |  | +        },
 | 
	
		
			
				|  |  | +        Object {
 | 
	
		
			
				|  |  | +          "angle": 0,
 | 
	
		
			
				|  |  | +          "backgroundColor": "transparent",
 | 
	
		
			
				|  |  | +          "boundElementIds": null,
 | 
	
		
			
				|  |  | +          "fillStyle": "hachure",
 | 
	
		
			
				|  |  | +          "groupIds": Array [],
 | 
	
		
			
				|  |  | +          "height": 10,
 | 
	
		
			
				|  |  | +          "id": "id5",
 | 
	
		
			
				|  |  | +          "isDeleted": false,
 | 
	
		
			
				|  |  | +          "opacity": 100,
 | 
	
		
			
				|  |  | +          "roughness": 1,
 | 
	
		
			
				|  |  | +          "seed": 1014066025,
 | 
	
		
			
				|  |  | +          "strokeColor": "#000000",
 | 
	
		
			
				|  |  | +          "strokeSharpness": "sharp",
 | 
	
		
			
				|  |  | +          "strokeStyle": "solid",
 | 
	
		
			
				|  |  | +          "strokeWidth": 1,
 | 
	
		
			
				|  |  | +          "type": "rectangle",
 | 
	
		
			
				|  |  | +          "version": 2,
 | 
	
		
			
				|  |  | +          "versionNonce": 238820263,
 | 
	
		
			
				|  |  | +          "width": 10,
 | 
	
		
			
				|  |  | +          "x": 10,
 | 
	
		
			
				|  |  | +          "y": 50,
 | 
	
		
			
				|  |  | +        },
 | 
	
		
			
				|  |  | +        Object {
 | 
	
		
			
				|  |  | +          "angle": 0,
 | 
	
		
			
				|  |  | +          "backgroundColor": "transparent",
 | 
	
		
			
				|  |  | +          "boundElementIds": null,
 | 
	
		
			
				|  |  | +          "fillStyle": "hachure",
 | 
	
		
			
				|  |  | +          "groupIds": Array [],
 | 
	
		
			
				|  |  | +          "height": 10,
 | 
	
		
			
				|  |  | +          "id": "id6",
 | 
	
		
			
				|  |  | +          "isDeleted": false,
 | 
	
		
			
				|  |  | +          "opacity": 100,
 | 
	
		
			
				|  |  | +          "roughness": 1,
 | 
	
		
			
				|  |  | +          "seed": 400692809,
 | 
	
		
			
				|  |  | +          "strokeColor": "#000000",
 | 
	
		
			
				|  |  | +          "strokeSharpness": "sharp",
 | 
	
		
			
				|  |  | +          "strokeStyle": "solid",
 | 
	
		
			
				|  |  | +          "strokeWidth": 1,
 | 
	
		
			
				|  |  | +          "type": "rectangle",
 | 
	
		
			
				|  |  | +          "version": 2,
 | 
	
		
			
				|  |  | +          "versionNonce": 1604849351,
 | 
	
		
			
				|  |  | +          "width": 10,
 | 
	
		
			
				|  |  | +          "x": 50,
 | 
	
		
			
				|  |  | +          "y": 50,
 | 
	
		
			
				|  |  | +        },
 | 
	
		
			
				|  |  | +      ],
 | 
	
		
			
				|  |  | +    },
 | 
	
		
			
				|  |  | +    Object {
 | 
	
		
			
				|  |  | +      "appState": Object {
 | 
	
		
			
				|  |  | +        "editingGroupId": null,
 | 
	
		
			
				|  |  | +        "editingLinearElement": null,
 | 
	
		
			
				|  |  | +        "name": "Untitled-201933152653",
 | 
	
		
			
				|  |  | +        "selectedElementIds": Object {
 | 
	
		
			
				|  |  | +          "id5": true,
 | 
	
		
			
				|  |  | +          "id6": true,
 | 
	
		
			
				|  |  | +          "id7": true,
 | 
	
		
			
				|  |  | +          "id8": true,
 | 
	
		
			
				|  |  | +        },
 | 
	
		
			
				|  |  | +        "viewBackgroundColor": "#ffffff",
 | 
	
		
			
				|  |  | +      },
 | 
	
		
			
				|  |  | +      "elements": Array [
 | 
	
		
			
				|  |  | +        Object {
 | 
	
		
			
				|  |  | +          "angle": 0,
 | 
	
		
			
				|  |  | +          "backgroundColor": "transparent",
 | 
	
		
			
				|  |  | +          "boundElementIds": null,
 | 
	
		
			
				|  |  | +          "fillStyle": "hachure",
 | 
	
		
			
				|  |  | +          "groupIds": Array [
 | 
	
		
			
				|  |  | +            "id4",
 | 
	
		
			
				|  |  | +          ],
 | 
	
		
			
				|  |  | +          "height": 10,
 | 
	
		
			
				|  |  | +          "id": "id0",
 | 
	
		
			
				|  |  | +          "isDeleted": false,
 | 
	
		
			
				|  |  | +          "opacity": 100,
 | 
	
		
			
				|  |  | +          "roughness": 1,
 | 
	
		
			
				|  |  | +          "seed": 337897,
 | 
	
		
			
				|  |  | +          "strokeColor": "#000000",
 | 
	
		
			
				|  |  | +          "strokeSharpness": "sharp",
 | 
	
		
			
				|  |  | +          "strokeStyle": "solid",
 | 
	
		
			
				|  |  | +          "strokeWidth": 1,
 | 
	
		
			
				|  |  | +          "type": "rectangle",
 | 
	
		
			
				|  |  | +          "version": 3,
 | 
	
		
			
				|  |  | +          "versionNonce": 1150084233,
 | 
	
		
			
				|  |  | +          "width": 10,
 | 
	
		
			
				|  |  | +          "x": 10,
 | 
	
		
			
				|  |  | +          "y": 10,
 | 
	
		
			
				|  |  | +        },
 | 
	
		
			
				|  |  | +        Object {
 | 
	
		
			
				|  |  | +          "angle": 0,
 | 
	
		
			
				|  |  | +          "backgroundColor": "transparent",
 | 
	
		
			
				|  |  | +          "boundElementIds": null,
 | 
	
		
			
				|  |  | +          "fillStyle": "hachure",
 | 
	
		
			
				|  |  | +          "groupIds": Array [
 | 
	
		
			
				|  |  | +            "id4",
 | 
	
		
			
				|  |  | +          ],
 | 
	
		
			
				|  |  | +          "height": 10,
 | 
	
		
			
				|  |  | +          "id": "id1",
 | 
	
		
			
				|  |  | +          "isDeleted": false,
 | 
	
		
			
				|  |  | +          "opacity": 100,
 | 
	
		
			
				|  |  | +          "roughness": 1,
 | 
	
		
			
				|  |  | +          "seed": 449462985,
 | 
	
		
			
				|  |  | +          "strokeColor": "#000000",
 | 
	
		
			
				|  |  | +          "strokeSharpness": "sharp",
 | 
	
		
			
				|  |  | +          "strokeStyle": "solid",
 | 
	
		
			
				|  |  | +          "strokeWidth": 1,
 | 
	
		
			
				|  |  | +          "type": "rectangle",
 | 
	
		
			
				|  |  | +          "version": 3,
 | 
	
		
			
				|  |  | +          "versionNonce": 1116226695,
 | 
	
		
			
				|  |  | +          "width": 10,
 | 
	
		
			
				|  |  | +          "x": 50,
 | 
	
		
			
				|  |  | +          "y": 50,
 | 
	
		
			
				|  |  | +        },
 | 
	
		
			
				|  |  | +        Object {
 | 
	
		
			
				|  |  | +          "angle": 0,
 | 
	
		
			
				|  |  | +          "backgroundColor": "transparent",
 | 
	
		
			
				|  |  | +          "boundElementIds": null,
 | 
	
		
			
				|  |  | +          "fillStyle": "hachure",
 | 
	
		
			
				|  |  | +          "groupIds": Array [
 | 
	
		
			
				|  |  | +            "id9",
 | 
	
		
			
				|  |  | +          ],
 | 
	
		
			
				|  |  | +          "height": 10,
 | 
	
		
			
				|  |  | +          "id": "id5",
 | 
	
		
			
				|  |  | +          "isDeleted": false,
 | 
	
		
			
				|  |  | +          "opacity": 100,
 | 
	
		
			
				|  |  | +          "roughness": 1,
 | 
	
		
			
				|  |  | +          "seed": 1014066025,
 | 
	
		
			
				|  |  | +          "strokeColor": "#000000",
 | 
	
		
			
				|  |  | +          "strokeSharpness": "sharp",
 | 
	
		
			
				|  |  | +          "strokeStyle": "solid",
 | 
	
		
			
				|  |  | +          "strokeWidth": 1,
 | 
	
		
			
				|  |  | +          "type": "rectangle",
 | 
	
		
			
				|  |  | +          "version": 3,
 | 
	
		
			
				|  |  | +          "versionNonce": 493213705,
 | 
	
		
			
				|  |  | +          "width": 10,
 | 
	
		
			
				|  |  | +          "x": 10,
 | 
	
		
			
				|  |  | +          "y": 50,
 | 
	
		
			
				|  |  | +        },
 | 
	
		
			
				|  |  | +        Object {
 | 
	
		
			
				|  |  | +          "angle": 0,
 | 
	
		
			
				|  |  | +          "backgroundColor": "transparent",
 | 
	
		
			
				|  |  | +          "boundElementIds": null,
 | 
	
		
			
				|  |  | +          "fillStyle": "hachure",
 | 
	
		
			
				|  |  | +          "groupIds": Array [
 | 
	
		
			
				|  |  | +            "id9",
 | 
	
		
			
				|  |  | +          ],
 | 
	
		
			
				|  |  | +          "height": 10,
 | 
	
		
			
				|  |  | +          "id": "id6",
 | 
	
		
			
				|  |  | +          "isDeleted": false,
 | 
	
		
			
				|  |  | +          "opacity": 100,
 | 
	
		
			
				|  |  | +          "roughness": 1,
 | 
	
		
			
				|  |  | +          "seed": 400692809,
 | 
	
		
			
				|  |  | +          "strokeColor": "#000000",
 | 
	
		
			
				|  |  | +          "strokeSharpness": "sharp",
 | 
	
		
			
				|  |  | +          "strokeStyle": "solid",
 | 
	
		
			
				|  |  | +          "strokeWidth": 1,
 | 
	
		
			
				|  |  | +          "type": "rectangle",
 | 
	
		
			
				|  |  | +          "version": 3,
 | 
	
		
			
				|  |  | +          "versionNonce": 915032327,
 | 
	
		
			
				|  |  | +          "width": 10,
 | 
	
		
			
				|  |  | +          "x": 50,
 | 
	
		
			
				|  |  | +          "y": 50,
 | 
	
		
			
				|  |  | +        },
 | 
	
		
			
				|  |  | +      ],
 | 
	
		
			
				|  |  | +    },
 | 
	
		
			
				|  |  | +    Object {
 | 
	
		
			
				|  |  | +      "appState": Object {
 | 
	
		
			
				|  |  | +        "editingGroupId": null,
 | 
	
		
			
				|  |  | +        "editingLinearElement": null,
 | 
	
		
			
				|  |  | +        "name": "Untitled-201933152653",
 | 
	
		
			
				|  |  | +        "selectedElementIds": Object {
 | 
	
		
			
				|  |  | +          "id0": true,
 | 
	
		
			
				|  |  | +          "id1": true,
 | 
	
		
			
				|  |  | +          "id5": true,
 | 
	
		
			
				|  |  | +          "id6": true,
 | 
	
		
			
				|  |  | +        },
 | 
	
		
			
				|  |  | +        "viewBackgroundColor": "#ffffff",
 | 
	
		
			
				|  |  | +      },
 | 
	
		
			
				|  |  | +      "elements": Array [
 | 
	
		
			
				|  |  | +        Object {
 | 
	
		
			
				|  |  | +          "angle": 0,
 | 
	
		
			
				|  |  | +          "backgroundColor": "transparent",
 | 
	
		
			
				|  |  | +          "boundElementIds": null,
 | 
	
		
			
				|  |  | +          "fillStyle": "hachure",
 | 
	
		
			
				|  |  | +          "groupIds": Array [
 | 
	
		
			
				|  |  | +            "id4",
 | 
	
		
			
				|  |  | +            "id10",
 | 
	
		
			
				|  |  | +          ],
 | 
	
		
			
				|  |  | +          "height": 10,
 | 
	
		
			
				|  |  | +          "id": "id0",
 | 
	
		
			
				|  |  | +          "isDeleted": false,
 | 
	
		
			
				|  |  | +          "opacity": 100,
 | 
	
		
			
				|  |  | +          "roughness": 1,
 | 
	
		
			
				|  |  | +          "seed": 337897,
 | 
	
		
			
				|  |  | +          "strokeColor": "#000000",
 | 
	
		
			
				|  |  | +          "strokeSharpness": "sharp",
 | 
	
		
			
				|  |  | +          "strokeStyle": "solid",
 | 
	
		
			
				|  |  | +          "strokeWidth": 1,
 | 
	
		
			
				|  |  | +          "type": "rectangle",
 | 
	
		
			
				|  |  | +          "version": 4,
 | 
	
		
			
				|  |  | +          "versionNonce": 81784553,
 | 
	
		
			
				|  |  | +          "width": 10,
 | 
	
		
			
				|  |  | +          "x": 10,
 | 
	
		
			
				|  |  | +          "y": 10,
 | 
	
		
			
				|  |  | +        },
 | 
	
		
			
				|  |  | +        Object {
 | 
	
		
			
				|  |  | +          "angle": 0,
 | 
	
		
			
				|  |  | +          "backgroundColor": "transparent",
 | 
	
		
			
				|  |  | +          "boundElementIds": null,
 | 
	
		
			
				|  |  | +          "fillStyle": "hachure",
 | 
	
		
			
				|  |  | +          "groupIds": Array [
 | 
	
		
			
				|  |  | +            "id4",
 | 
	
		
			
				|  |  | +            "id10",
 | 
	
		
			
				|  |  | +          ],
 | 
	
		
			
				|  |  | +          "height": 10,
 | 
	
		
			
				|  |  | +          "id": "id1",
 | 
	
		
			
				|  |  | +          "isDeleted": false,
 | 
	
		
			
				|  |  | +          "opacity": 100,
 | 
	
		
			
				|  |  | +          "roughness": 1,
 | 
	
		
			
				|  |  | +          "seed": 449462985,
 | 
	
		
			
				|  |  | +          "strokeColor": "#000000",
 | 
	
		
			
				|  |  | +          "strokeSharpness": "sharp",
 | 
	
		
			
				|  |  | +          "strokeStyle": "solid",
 | 
	
		
			
				|  |  | +          "strokeWidth": 1,
 | 
	
		
			
				|  |  | +          "type": "rectangle",
 | 
	
		
			
				|  |  | +          "version": 4,
 | 
	
		
			
				|  |  | +          "versionNonce": 747212839,
 | 
	
		
			
				|  |  | +          "width": 10,
 | 
	
		
			
				|  |  | +          "x": 50,
 | 
	
		
			
				|  |  | +          "y": 50,
 | 
	
		
			
				|  |  | +        },
 | 
	
		
			
				|  |  | +        Object {
 | 
	
		
			
				|  |  | +          "angle": 0,
 | 
	
		
			
				|  |  | +          "backgroundColor": "transparent",
 | 
	
		
			
				|  |  | +          "boundElementIds": null,
 | 
	
		
			
				|  |  | +          "fillStyle": "hachure",
 | 
	
		
			
				|  |  | +          "groupIds": Array [
 | 
	
		
			
				|  |  | +            "id9",
 | 
	
		
			
				|  |  | +            "id10",
 | 
	
		
			
				|  |  | +          ],
 | 
	
		
			
				|  |  | +          "height": 10,
 | 
	
		
			
				|  |  | +          "id": "id5",
 | 
	
		
			
				|  |  | +          "isDeleted": false,
 | 
	
		
			
				|  |  | +          "opacity": 100,
 | 
	
		
			
				|  |  | +          "roughness": 1,
 | 
	
		
			
				|  |  | +          "seed": 1014066025,
 | 
	
		
			
				|  |  | +          "strokeColor": "#000000",
 | 
	
		
			
				|  |  | +          "strokeSharpness": "sharp",
 | 
	
		
			
				|  |  | +          "strokeStyle": "solid",
 | 
	
		
			
				|  |  | +          "strokeWidth": 1,
 | 
	
		
			
				|  |  | +          "type": "rectangle",
 | 
	
		
			
				|  |  | +          "version": 4,
 | 
	
		
			
				|  |  | +          "versionNonce": 1723083209,
 | 
	
		
			
				|  |  | +          "width": 10,
 | 
	
		
			
				|  |  | +          "x": 10,
 | 
	
		
			
				|  |  | +          "y": 50,
 | 
	
		
			
				|  |  | +        },
 | 
	
		
			
				|  |  | +        Object {
 | 
	
		
			
				|  |  | +          "angle": 0,
 | 
	
		
			
				|  |  | +          "backgroundColor": "transparent",
 | 
	
		
			
				|  |  | +          "boundElementIds": null,
 | 
	
		
			
				|  |  | +          "fillStyle": "hachure",
 | 
	
		
			
				|  |  | +          "groupIds": Array [
 | 
	
		
			
				|  |  | +            "id9",
 | 
	
		
			
				|  |  | +            "id10",
 | 
	
		
			
				|  |  | +          ],
 | 
	
		
			
				|  |  | +          "height": 10,
 | 
	
		
			
				|  |  | +          "id": "id6",
 | 
	
		
			
				|  |  | +          "isDeleted": false,
 | 
	
		
			
				|  |  | +          "opacity": 100,
 | 
	
		
			
				|  |  | +          "roughness": 1,
 | 
	
		
			
				|  |  | +          "seed": 400692809,
 | 
	
		
			
				|  |  | +          "strokeColor": "#000000",
 | 
	
		
			
				|  |  | +          "strokeSharpness": "sharp",
 | 
	
		
			
				|  |  | +          "strokeStyle": "solid",
 | 
	
		
			
				|  |  | +          "strokeWidth": 1,
 | 
	
		
			
				|  |  | +          "type": "rectangle",
 | 
	
		
			
				|  |  | +          "version": 4,
 | 
	
		
			
				|  |  | +          "versionNonce": 760410951,
 | 
	
		
			
				|  |  | +          "width": 10,
 | 
	
		
			
				|  |  | +          "x": 50,
 | 
	
		
			
				|  |  | +          "y": 50,
 | 
	
		
			
				|  |  | +        },
 | 
	
		
			
				|  |  | +      ],
 | 
	
		
			
				|  |  | +    },
 | 
	
		
			
				|  |  | +  ],
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +`;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +exports[`regression tests single-clicking on a subgroup of a selected group should not alter selection: [end of test] number of elements 1`] = `4`;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +exports[`regression tests single-clicking on a subgroup of a selected group should not alter selection: [end of test] number of renders 1`] = `37`;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |  exports[`regression tests spacebar + drag scrolls the canvas: [end of test] appState 1`] = `
 | 
	
		
			
				|  |  |  Object {
 | 
	
		
			
				|  |  |    "appearance": "light",
 |