Skip to content

Commit e445014

Browse files
authored
feat(protocol-designer): analytics: pass only liquid class properties for liquids when saving protocol (#18509)
Previously, we flattened all properties of all loaded liquids to mixpanel in our save protocol analytics event. This information was not particularly legible or useful, so product has asked that we only pass a list of liquid classes in this event. Closes AUTH-1923
1 parent 063368f commit e445014

File tree

16 files changed

+107
-40
lines changed

16 files changed

+107
-40
lines changed

protocol-designer/fixtures/protocol/8/doItAllV3MigratedToV8.json

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,8 @@
3131
"displayName": "Water",
3232
"description": null,
3333
"displayColor": "#b925ff",
34-
"liquidGroupId": "0"
34+
"liquidGroupId": "0",
35+
"liquidClass": null
3536
}
3637
},
3738
"ingredLocations": {
@@ -2664,12 +2665,13 @@
26642665
}
26652666
}
26662667
},
2667-
"liquidSchemaId": "opentronsLiquidSchemaV1",
2668+
"liquidSchemaId": "opentronsLiquidSchemaV2",
26682669
"liquids": {
26692670
"0": {
26702671
"displayName": "Water",
26712672
"description": "",
2672-
"displayColor": "#b925ff"
2673+
"displayColor": "#b925ff",
2674+
"liquidClass": null
26732675
}
26742676
},
26752677
"commandSchemaId": "opentronsCommandSchemaV10",

protocol-designer/fixtures/protocol/8/doItAllV4MigratedToV8.json

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,8 @@
3131
"displayName": "Water",
3232
"description": null,
3333
"displayColor": "#b925ff",
34-
"liquidGroupId": "0"
34+
"liquidGroupId": "0",
35+
"liquidClass": null
3536
}
3637
},
3738
"ingredLocations": {
@@ -2688,12 +2689,13 @@
26882689
}
26892690
}
26902691
},
2691-
"liquidSchemaId": "opentronsLiquidSchemaV1",
2692+
"liquidSchemaId": "opentronsLiquidSchemaV2",
26922693
"liquids": {
26932694
"0": {
26942695
"displayName": "Water",
26952696
"description": "",
2696-
"displayColor": "#b925ff"
2697+
"displayColor": "#b925ff",
2698+
"liquidClass": null
26972699
}
26982700
},
26992701
"commandSchemaId": "opentronsCommandSchemaV10",

protocol-designer/fixtures/protocol/8/doItAllV7MigratedToV8.json

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -37,13 +37,15 @@
3737
"displayName": "Water",
3838
"description": null,
3939
"displayColor": "#b925ff",
40-
"liquidGroupId": "0"
40+
"liquidGroupId": "0",
41+
"liquidClass": null
4142
},
4243
"1": {
4344
"displayName": "Samples",
4445
"description": null,
4546
"displayColor": "#ffd600",
46-
"liquidGroupId": "1"
47+
"liquidGroupId": "1",
48+
"liquidClass": null
4749
}
4850
},
4951
"ingredLocations": {
@@ -4057,17 +4059,19 @@
40574059
}
40584060
}
40594061
},
4060-
"liquidSchemaId": "opentronsLiquidSchemaV1",
4062+
"liquidSchemaId": "opentronsLiquidSchemaV2",
40614063
"liquids": {
40624064
"0": {
40634065
"displayName": "Water",
40644066
"description": "",
4065-
"displayColor": "#b925ff"
4067+
"displayColor": "#b925ff",
4068+
"liquidClass": null
40664069
},
40674070
"1": {
40684071
"displayName": "Samples",
40694072
"description": "",
4070-
"displayColor": "#ffd600"
4073+
"displayColor": "#ffd600",
4074+
"liquidClass": null
40714075
}
40724076
},
40734077
"commandSchemaId": "opentronsCommandSchemaV10",

protocol-designer/fixtures/protocol/8/doItAllV8.json

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -31,13 +31,15 @@
3131
"displayName": "h20",
3232
"description": null,
3333
"displayColor": "#b925ff",
34-
"liquidGroupId": "0"
34+
"liquidGroupId": "0",
35+
"liquidClass": null
3536
},
3637
"1": {
3738
"displayName": "sample",
3839
"description": null,
3940
"displayColor": "#ffd600",
40-
"liquidGroupId": "1"
41+
"liquidGroupId": "1",
42+
"liquidClass": null
4143
}
4244
},
4345
"ingredLocations": {
@@ -3583,17 +3585,19 @@
35833585
}
35843586
}
35853587
},
3586-
"liquidSchemaId": "opentronsLiquidSchemaV1",
3588+
"liquidSchemaId": "opentronsLiquidSchemaV2",
35873589
"liquids": {
35883590
"0": {
35893591
"displayName": "h20",
35903592
"description": "",
3591-
"displayColor": "#b925ff"
3593+
"displayColor": "#b925ff",
3594+
"liquidClass": null
35923595
},
35933596
"1": {
35943597
"displayName": "sample",
35953598
"description": "",
3596-
"displayColor": "#ffd600"
3599+
"displayColor": "#ffd600",
3600+
"liquidClass": null
35973601
}
35983602
},
35993603
"commandSchemaId": "opentronsCommandSchemaV10",

protocol-designer/fixtures/protocol/8/example_1_1_0MigratedToV8.json

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -34,13 +34,15 @@
3434
"displayName": "samples",
3535
"description": null,
3636
"displayColor": "#b925ff",
37-
"liquidGroupId": "0"
37+
"liquidGroupId": "0",
38+
"liquidClass": null
3839
},
3940
"1": {
4041
"displayName": "dna",
4142
"description": null,
4243
"displayColor": "#ffd600",
43-
"liquidGroupId": "1"
44+
"liquidGroupId": "1",
45+
"liquidClass": null
4446
}
4547
},
4648
"ingredLocations": {
@@ -3570,17 +3572,19 @@
35703572
}
35713573
}
35723574
},
3573-
"liquidSchemaId": "opentronsLiquidSchemaV1",
3575+
"liquidSchemaId": "opentronsLiquidSchemaV2",
35743576
"liquids": {
35753577
"0": {
35763578
"displayName": "samples",
35773579
"description": "",
3578-
"displayColor": "#b925ff"
3580+
"displayColor": "#b925ff",
3581+
"liquidClass": null
35793582
},
35803583
"1": {
35813584
"displayName": "dna",
35823585
"description": "",
3583-
"displayColor": "#ffd600"
3586+
"displayColor": "#ffd600",
3587+
"liquidClass": null
35843588
}
35853589
},
35863590
"commandSchemaId": "opentronsCommandSchemaV10",

protocol-designer/fixtures/protocol/8/newAdvancedSettingsAndMultiTemp.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3650,7 +3650,7 @@
36503650
}
36513651
}
36523652
},
3653-
"liquidSchemaId": "opentronsLiquidSchemaV1",
3653+
"liquidSchemaId": "opentronsLiquidSchemaV2",
36543654
"liquids": {},
36553655
"commandSchemaId": "opentronsCommandSchemaV10",
36563656
"commands": [

protocol-designer/fixtures/protocol/8/ninetySixChannelFullAndColumn.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2390,7 +2390,7 @@
23902390
}
23912391
}
23922392
},
2393-
"liquidSchemaId": "opentronsLiquidSchemaV1",
2393+
"liquidSchemaId": "opentronsLiquidSchemaV2",
23942394
"liquids": {},
23952395
"commandSchemaId": "opentronsCommandSchemaV10",
23962396
"commands": [

protocol-designer/fixtures/protocol/8/thermocyclerOnOt2V7MigratedToV8.json

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,8 @@
3131
"displayName": "123",
3232
"description": null,
3333
"displayColor": "#b925ff",
34-
"liquidGroupId": "0"
34+
"liquidGroupId": "0",
35+
"liquidClass": null
3536
}
3637
},
3738
"ingredLocations": {
@@ -2265,12 +2266,13 @@
22652266
}
22662267
}
22672268
},
2268-
"liquidSchemaId": "opentronsLiquidSchemaV1",
2269+
"liquidSchemaId": "opentronsLiquidSchemaV2",
22692270
"liquids": {
22702271
"0": {
22712272
"displayName": "123",
22722273
"description": "",
2273-
"displayColor": "#b925ff"
2274+
"displayColor": "#b925ff",
2275+
"liquidClass": null
22742276
}
22752277
},
22762278
"commandSchemaId": "opentronsCommandSchemaV10",

protocol-designer/src/analytics/middleware.ts

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -419,7 +419,11 @@ export const reduxActionToAnalyticsEvent = (
419419
? null
420420
: location
421421
)
422-
const flattenedLiquids = flattenNestedProperties(liquids)
422+
const liquidClasses = {
423+
liquidClasses: Object.values(liquids).map(liquid =>
424+
'liquidClass' in liquid ? liquid.liquidClass : null
425+
),
426+
}
423427

424428
const fixtureInfo = {
425429
trashBin: trashCommands,
@@ -439,7 +443,7 @@ export const reduxActionToAnalyticsEvent = (
439443
...metadata,
440444
...loadCommandInfo,
441445
...robotType,
442-
...flattenedLiquids,
446+
...liquidClasses,
443447
...numberOfSteps,
444448
...fixtureInfo,
445449
...labwareInfo,

protocol-designer/src/components/organisms/DefineLiquidsModal/LiquidClassDropdown.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ interface LiquidClassDropdownProps {
1515
control: Control<Ingredient, any>
1616
setValue: UseFormSetValue<Ingredient>
1717
liquidClassOptions: Array<{ name: string; value: string }>
18-
liquidClass?: string
18+
liquidClass?: string | null
1919
}
2020

2121
export function LiquidClassDropdown({

0 commit comments

Comments
 (0)