@opentrons/step-generation 0.3.19-alpha.0 → 0.3.21-alpha.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/lib/errorCreators.d.ts +3 -0
- package/lib/index.cjs +66 -61
- package/lib/index.mjs +863 -801
- package/lib/types.d.ts +22 -7
- package/lib/utils/misc.d.ts +17 -1
- package/lib/utils/pythonFileUtils.d.ts +2 -1
- package/package.json +2 -2
package/lib/index.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { MAGNETIC_MODULE_V1 as xb, TEMPERATURE_MODULE_V1 as Bb, MAGNETIC_MODULE_TYPE as Ca, TEMPERATURE_MODULE_TYPE as Qe, THERMOCYCLER_MODULE_TYPE as Ue, HEATERSHAKER_MODULE_TYPE as Pe, FLEX_STACKER_MODULE_TYPE as Ge, VACUUM_MODULE_TYPE as Kt, VACUUM_MODULE_DOCK_A4_ADDRESSABLE_AREA as _u, MAGNETIC_BLOCK_TYPE as Vb, ABSORBANCE_READER_TYPE as Fn, FLEX_ROBOT_TYPE as We, OT2_ROBOT_TYPE as Rt, PARTIAL_COLUMN as Ke, H1_NOZZLE as gs, getIsLid as Or, locationIsOnAddressableArea as Ub, MOVABLE_TRASH_ADDRESSABLE_AREAS as up, locationIsOnModule as zb, locationIsOnLabware as jb, locationIsOnDeck as Hb, FLEX_STAGING_AREA_SLOT_ADDRESSABLE_AREAS as Gb, WASTE_CHUTE_ADDRESSABLE_AREAS as xh, ALL as Ye, WELL_ORIGIN_TOP as en, FLEX_SINGLE_SLOT_BY_CUTOUT_ID as Wb, getDeckDefFromRobotType as
|
|
1
|
+
import { MAGNETIC_MODULE_V1 as xb, TEMPERATURE_MODULE_V1 as Bb, MAGNETIC_MODULE_TYPE as Ca, TEMPERATURE_MODULE_TYPE as Qe, THERMOCYCLER_MODULE_TYPE as Ue, HEATERSHAKER_MODULE_TYPE as Pe, FLEX_STACKER_MODULE_TYPE as Ge, VACUUM_MODULE_TYPE as Kt, VACUUM_MODULE_DOCK_A4_ADDRESSABLE_AREA as _u, MAGNETIC_BLOCK_TYPE as Vb, ABSORBANCE_READER_TYPE as Fn, FLEX_ROBOT_TYPE as We, OT2_ROBOT_TYPE as Rt, PARTIAL_COLUMN as Ke, H1_NOZZLE as gs, getIsLid as Or, locationIsOnAddressableArea as Ub, MOVABLE_TRASH_ADDRESSABLE_AREAS as up, locationIsOnModule as zb, locationIsOnLabware as jb, locationIsOnDeck as Hb, FLEX_STAGING_AREA_SLOT_ADDRESSABLE_AREAS as Gb, WASTE_CHUTE_ADDRESSABLE_AREAS as xh, ALL as Ye, WELL_ORIGIN_TOP as en, FLEX_SINGLE_SLOT_BY_CUTOUT_ID as Wb, getDeckDefFromRobotType as Nr, NINETY_SIX_CHANNEL_WASTE_CHUTE_ADDRESSABLE_AREA as Kb, EIGHT_CHANNEL_WASTE_CHUTE_ADDRESSABLE_AREA as Yb, ONE_CHANNEL_WASTE_CHUTE_ADDRESSABLE_AREA as Xb, getWellNamePerMultiTip as Zb, getLabwareDefURI as Ae, getIsTiprack as Pr, FLEX_CUTOUT_BY_SLOT_ID as wu, FLEX_STACKER_ADDRESSABLE_AREAS as Bh, FLEX_STACKER_V1_FIXTURE as Jb, getMaxPoolCount as Vh, FLEX_STACKER_MODULE_V1 as Uh, linearInterpolate as Dn, getMmFromBottom as Yt, SAFE_MOVE_TO_WELL_OFFSET_FROM_TOP_MM as Qb, GRIPPER_WASTE_CHUTE_ADDRESSABLE_AREA as Rr, COLUMN as Tt, SINGLE as ft, PARTIAL_NOZZLE_MAP as Da, ROW as Cr, getAddressableAreaNamesFromLoadedModule as e_, locationIsOffDeck as Ta, getIsPipettableLabware as bs, SYSTEM_LOCATION as t_, GEN_ONE_MULTI_PIPETTES as r_, getLabwareDefinitionsByURIForProtocol as n_, getModuleType as a_, getPipetteSpecsV2 as s_, getModuleDef as zh, getAreSlotsHorizontallyAdjacent as gu, getAreSlotsVerticallyAdjacent as o_, getIsLabwareAboveHeight as i_, MAX_LABWARE_HEIGHT_EAST_WEST_HEATER_SHAKER_MM as l_, getAreSlotsAdjacent as c_, getAreFlexSlotsAdjacent as u_, getAllLiquidClassDefs as qa, POSITION_REFERENCE_TOP as p_, DEFAULT_LIQUID_COLORS as pp, getLabwareDefIsStandard as Ls, isFlexPipette as Es, getFlexNameConversion as rn, getCutoutDisplayName as d_, getPositionFromSlotId as io, B1_ADDRESSABLE_AREA as f_, THERMOCYCLER_MODULE_V2 as m_, getOt2SurroundingSlots as h_, getFlexSurroundingSlots as y_, getAddressableAreaFromSlotId as b_, getRobotDefFromRobotType as __, A1_NOZZLE as Sa, A12_NOZZLE as jh, QUADRANT as w_, WASTE_CHUTE_FIXTURES as g_, orderWells as dp, getTiprackVolume as I_, H12_NOZZLE as T_, LOW_VOLUME_PIPETTES as Ea, POSITION_REFERENCE_MAPPED_TO_WELL_ORIGIN as Re, WELL_ORIGIN_BOTTOM as S_, getByVolumeValue as H, NONE_LIQUID_CLASS_NAME as Iu, WATER_LIQUID_CLASS_NAME as Tu, SAFE_MOVE_TO_WELL_LOCATION as Wt, fixtureTiprack1000ul as A_, fixtureTiprackAdapter as v_, fixtureTiprack300ul as k_, fixture12Trough as L_, fixture96Plate as E_, fixtureTiprack10ul as O_, fixtureP100096V2Specs as N_, fixtureP300MultiV2Specs as R_, fixtureP300SingleV2Specs as P_, fixtureP10MultiV2Specs as C_, fixtureP10SingleV2Specs as D_ } from "@opentrons/shared-data";
|
|
2
2
|
function q_() {
|
|
3
3
|
return {
|
|
4
4
|
type: "INSUFFICIENT_TIPS",
|
|
@@ -160,7 +160,7 @@ const V_ = () => ({
|
|
|
160
160
|
}), xa = () => ({
|
|
161
161
|
type: "HEATER_SHAKER_EAST_WEST_MULTI_CHANNEL",
|
|
162
162
|
message: "The Heater-Shaker is shaking"
|
|
163
|
-
}),
|
|
163
|
+
}), Ns = () => ({
|
|
164
164
|
type: "HEATER_SHAKER_NORTH_SOUTH__OF_NON_TIPRACK_WITH_MULTI_CHANNEL",
|
|
165
165
|
message: "8-Channel pipette cannot access labware"
|
|
166
166
|
}), Bn = () => ({
|
|
@@ -369,15 +369,15 @@ function hw() {
|
|
|
369
369
|
return go = n, go;
|
|
370
370
|
}
|
|
371
371
|
var yw = hw();
|
|
372
|
-
const bw = /* @__PURE__ */ Xe(yw),
|
|
372
|
+
const bw = /* @__PURE__ */ Xe(yw), Rs = "TEMPERATURE_DEACTIVATED", Qh = "TEMPERATURE_AT_TARGET", ey = "TEMPERATURE_APPROACHING_TARGET", Op = 1, _w = [
|
|
373
373
|
xb,
|
|
374
374
|
Bb
|
|
375
|
-
],
|
|
375
|
+
], Np = "fixedTrash", ww = {
|
|
376
376
|
type: Ca,
|
|
377
377
|
engaged: !1
|
|
378
378
|
}, gw = {
|
|
379
379
|
type: Qe,
|
|
380
|
-
status:
|
|
380
|
+
status: Rs,
|
|
381
381
|
targetTemperature: null
|
|
382
382
|
}, Iw = {
|
|
383
383
|
type: Ue,
|
|
@@ -417,22 +417,22 @@ const bw = /* @__PURE__ */ Xe(yw), Ns = "TEMPERATURE_DEACTIVATED", Qh = "TEMPERA
|
|
|
417
417
|
[Vb]: Aw,
|
|
418
418
|
[Ge]: vw,
|
|
419
419
|
[Kt]: kw
|
|
420
|
-
}, Rk = "opentrons/opentrons_1_trash_1100ml_fixed/1",
|
|
420
|
+
}, Rk = "opentrons/opentrons_1_trash_1100ml_fixed/1", Pk = "opentrons/opentrons_1_trash_3200ml_fixed/1", Me = ["A4", "B4", "C4", "D4"], Qt = { x: 0, y: 0, z: 0 }, Ew = "mounted", Ps = "CLEAN", kr = "DIRTY", ce = "EMPTY", ty = "automatic", er = "manual", Ow = ["A4", "B4", "C4", "D4"], Ck = ["7", "8", "10", "11"], mt = "hopper", Nw = [
|
|
421
421
|
"hopperA4",
|
|
422
422
|
"hopperB4",
|
|
423
423
|
"hopperC4",
|
|
424
424
|
"hopperD4"
|
|
425
|
-
],
|
|
425
|
+
], Rw = {
|
|
426
426
|
hopperA4: "A4",
|
|
427
427
|
hopperB4: "B4",
|
|
428
428
|
hopperC4: "C4",
|
|
429
429
|
hopperD4: "D4"
|
|
430
|
-
}, Lr = ["adapterLabwareId", "primaryLabwareId", "lidLabwareId"],
|
|
430
|
+
}, Lr = ["adapterLabwareId", "primaryLabwareId", "lidLabwareId"], Dk = ["adapterLabwareURI", "primaryLabwareURI", "lidLabwareURI"], qk = {
|
|
431
431
|
A4: "hopperA4",
|
|
432
432
|
B4: "hopperB4",
|
|
433
433
|
C4: "hopperC4",
|
|
434
434
|
D4: "hopperD4"
|
|
435
|
-
}, ry = "vacuumDock", Pw = _u, ny = "opened", Cs = "closed",
|
|
435
|
+
}, ry = "vacuumDock", Pw = _u, ny = "opened", Cs = "closed", Rp = "power", Pp = "pressure", $k = "state", Fk = "profile", Mk = "pumpOff", xk = "pumpOn", Bk = "vent", Vk = "open", Uk = "closed", zk = "VACUUM_DEACTIVATED", jk = "VACUUM_AT_TARGET", Cw = [
|
|
436
436
|
"opentrons_vacuum_manifold_spacer_short",
|
|
437
437
|
"opentrons_vacuum_manifold_spacer_tall"
|
|
438
438
|
], Dw = "A4", Ve = [];
|
|
@@ -555,9 +555,9 @@ function qs() {
|
|
|
555
555
|
}
|
|
556
556
|
return Oo = e, Oo;
|
|
557
557
|
}
|
|
558
|
-
var
|
|
558
|
+
var No, Up;
|
|
559
559
|
function $s() {
|
|
560
|
-
if (Up) return
|
|
560
|
+
if (Up) return No;
|
|
561
561
|
Up = 1;
|
|
562
562
|
var e = qs();
|
|
563
563
|
function t(r, n) {
|
|
@@ -566,11 +566,11 @@ function $s() {
|
|
|
566
566
|
return a;
|
|
567
567
|
return -1;
|
|
568
568
|
}
|
|
569
|
-
return
|
|
569
|
+
return No = t, No;
|
|
570
570
|
}
|
|
571
|
-
var
|
|
571
|
+
var Ro, zp;
|
|
572
572
|
function zw() {
|
|
573
|
-
if (zp) return
|
|
573
|
+
if (zp) return Ro;
|
|
574
574
|
zp = 1;
|
|
575
575
|
var e = $s(), t = Array.prototype, r = t.splice;
|
|
576
576
|
function n(a) {
|
|
@@ -580,7 +580,7 @@ function zw() {
|
|
|
580
580
|
var i = s.length - 1;
|
|
581
581
|
return o == i ? s.pop() : r.call(s, o, 1), --this.size, !0;
|
|
582
582
|
}
|
|
583
|
-
return
|
|
583
|
+
return Ro = n, Ro;
|
|
584
584
|
}
|
|
585
585
|
var Po, jp;
|
|
586
586
|
function jw() {
|
|
@@ -1060,17 +1060,17 @@ function uy() {
|
|
|
1060
1060
|
}
|
|
1061
1061
|
return bi = s, bi;
|
|
1062
1062
|
}
|
|
1063
|
-
var _i,
|
|
1063
|
+
var _i, Nd;
|
|
1064
1064
|
function py() {
|
|
1065
|
-
if (
|
|
1066
|
-
|
|
1065
|
+
if (Nd) return _i;
|
|
1066
|
+
Nd = 1;
|
|
1067
1067
|
var e = rr(), t = e.Uint8Array;
|
|
1068
1068
|
return _i = t, _i;
|
|
1069
1069
|
}
|
|
1070
|
-
var wi,
|
|
1070
|
+
var wi, Rd;
|
|
1071
1071
|
function yg() {
|
|
1072
|
-
if (
|
|
1073
|
-
|
|
1072
|
+
if (Rd) return wi;
|
|
1073
|
+
Rd = 1;
|
|
1074
1074
|
function e(t) {
|
|
1075
1075
|
var r = -1, n = Array(t.size);
|
|
1076
1076
|
return t.forEach(function(a, s) {
|
|
@@ -1226,32 +1226,32 @@ function Ou() {
|
|
|
1226
1226
|
}
|
|
1227
1227
|
return Oi = t, Oi;
|
|
1228
1228
|
}
|
|
1229
|
-
var
|
|
1229
|
+
var Ni, zd;
|
|
1230
1230
|
function wg() {
|
|
1231
|
-
if (zd) return
|
|
1231
|
+
if (zd) return Ni;
|
|
1232
1232
|
zd = 1;
|
|
1233
1233
|
var e = Yn(), t = Ou(), r = hr(), n = "[object Arguments]", a = "[object Array]", s = "[object Boolean]", o = "[object Date]", i = "[object Error]", l = "[object Function]", c = "[object Map]", u = "[object Number]", p = "[object Object]", d = "[object RegExp]", h = "[object Set]", f = "[object String]", m = "[object WeakMap]", b = "[object ArrayBuffer]", _ = "[object DataView]", y = "[object Float32Array]", A = "[object Float64Array]", T = "[object Int8Array]", g = "[object Int16Array]", S = "[object Int32Array]", v = "[object Uint8Array]", I = "[object Uint8ClampedArray]", w = "[object Uint16Array]", E = "[object Uint32Array]", O = {};
|
|
1234
1234
|
O[y] = O[A] = O[T] = O[g] = O[S] = O[v] = O[I] = O[w] = O[E] = !0, O[n] = O[a] = O[b] = O[s] = O[_] = O[o] = O[i] = O[l] = O[c] = O[u] = O[p] = O[d] = O[h] = O[f] = O[m] = !1;
|
|
1235
1235
|
function F(M) {
|
|
1236
1236
|
return r(M) && t(M.length) && !!O[e(M)];
|
|
1237
1237
|
}
|
|
1238
|
-
return
|
|
1238
|
+
return Ni = F, Ni;
|
|
1239
1239
|
}
|
|
1240
|
-
var
|
|
1241
|
-
function
|
|
1242
|
-
if (jd) return
|
|
1240
|
+
var Ri, jd;
|
|
1241
|
+
function Nu() {
|
|
1242
|
+
if (jd) return Ri;
|
|
1243
1243
|
jd = 1;
|
|
1244
1244
|
function e(t) {
|
|
1245
1245
|
return function(r) {
|
|
1246
1246
|
return t(r);
|
|
1247
1247
|
};
|
|
1248
1248
|
}
|
|
1249
|
-
return
|
|
1249
|
+
return Ri = e, Ri;
|
|
1250
1250
|
}
|
|
1251
1251
|
var va = { exports: {} };
|
|
1252
1252
|
va.exports;
|
|
1253
1253
|
var Hd;
|
|
1254
|
-
function
|
|
1254
|
+
function Ru() {
|
|
1255
1255
|
return Hd || (Hd = 1, (function(e, t) {
|
|
1256
1256
|
var r = Zh(), n = t && !t.nodeType && t, a = n && !0 && e && !e.nodeType && e, s = a && a.exports === n, o = s && r.process, i = (function() {
|
|
1257
1257
|
try {
|
|
@@ -1267,7 +1267,7 @@ var Pi, Gd;
|
|
|
1267
1267
|
function Pu() {
|
|
1268
1268
|
if (Gd) return Pi;
|
|
1269
1269
|
Gd = 1;
|
|
1270
|
-
var e = wg(), t =
|
|
1270
|
+
var e = wg(), t = Nu(), r = Ru(), n = r && r.isTypedArray, a = n ? t(n) : e;
|
|
1271
1271
|
return Pi = a, Pi;
|
|
1272
1272
|
}
|
|
1273
1273
|
var Ci, Wd;
|
|
@@ -1600,7 +1600,7 @@ function Og() {
|
|
|
1600
1600
|
return r.Cache = e, tl = r, tl;
|
|
1601
1601
|
}
|
|
1602
1602
|
var rl, bf;
|
|
1603
|
-
function
|
|
1603
|
+
function Ng() {
|
|
1604
1604
|
if (bf) return rl;
|
|
1605
1605
|
bf = 1;
|
|
1606
1606
|
var e = Og(), t = 500;
|
|
@@ -1613,10 +1613,10 @@ function Rg() {
|
|
|
1613
1613
|
return rl = r, rl;
|
|
1614
1614
|
}
|
|
1615
1615
|
var nl, _f;
|
|
1616
|
-
function
|
|
1616
|
+
function Rg() {
|
|
1617
1617
|
if (_f) return nl;
|
|
1618
1618
|
_f = 1;
|
|
1619
|
-
var e =
|
|
1619
|
+
var e = Ng(), t = /[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g, r = /\\(\\)?/g, n = e(function(a) {
|
|
1620
1620
|
var s = [];
|
|
1621
1621
|
return a.charCodeAt(0) === 46 && s.push(""), a.replace(t, function(o, i, l, c) {
|
|
1622
1622
|
s.push(l ? c.replace(r, "$1") : i || o);
|
|
@@ -1655,7 +1655,7 @@ var ol, If;
|
|
|
1655
1655
|
function Xn() {
|
|
1656
1656
|
if (If) return ol;
|
|
1657
1657
|
If = 1;
|
|
1658
|
-
var e = ot(), t = Du(), r =
|
|
1658
|
+
var e = ot(), t = Du(), r = Rg(), n = Cg();
|
|
1659
1659
|
function a(s, o) {
|
|
1660
1660
|
return e(s) ? s : t(s, o) ? [s] : r(n(s));
|
|
1661
1661
|
}
|
|
@@ -1758,10 +1758,10 @@ function Sy() {
|
|
|
1758
1758
|
}
|
|
1759
1759
|
return ml = e, ml;
|
|
1760
1760
|
}
|
|
1761
|
-
var hl,
|
|
1761
|
+
var hl, Nf;
|
|
1762
1762
|
function xg() {
|
|
1763
|
-
if (
|
|
1764
|
-
|
|
1763
|
+
if (Nf) return hl;
|
|
1764
|
+
Nf = 1;
|
|
1765
1765
|
var e = zs();
|
|
1766
1766
|
function t(r) {
|
|
1767
1767
|
return function(n) {
|
|
@@ -1770,10 +1770,10 @@ function xg() {
|
|
|
1770
1770
|
}
|
|
1771
1771
|
return hl = t, hl;
|
|
1772
1772
|
}
|
|
1773
|
-
var yl,
|
|
1773
|
+
var yl, Rf;
|
|
1774
1774
|
function Bg() {
|
|
1775
|
-
if (
|
|
1776
|
-
|
|
1775
|
+
if (Rf) return yl;
|
|
1776
|
+
Rf = 1;
|
|
1777
1777
|
var e = Sy(), t = xg(), r = Du(), n = Zn();
|
|
1778
1778
|
function a(s) {
|
|
1779
1779
|
return r(s) ? e(n(s)) : t(s);
|
|
@@ -1939,9 +1939,9 @@ function Xg() {
|
|
|
1939
1939
|
}
|
|
1940
1940
|
return Ol = r, Ol;
|
|
1941
1941
|
}
|
|
1942
|
-
var
|
|
1942
|
+
var Nl, Hf;
|
|
1943
1943
|
function Fu() {
|
|
1944
|
-
if (Hf) return
|
|
1944
|
+
if (Hf) return Nl;
|
|
1945
1945
|
Hf = 1;
|
|
1946
1946
|
var e = qs(), t = ln(), r = Vs(), n = yr();
|
|
1947
1947
|
function a(s, o, i) {
|
|
@@ -1950,11 +1950,11 @@ function Fu() {
|
|
|
1950
1950
|
var l = typeof o;
|
|
1951
1951
|
return (l == "number" ? t(i) && r(o, i.length) : l == "string" && o in i) ? e(i[o], s) : !1;
|
|
1952
1952
|
}
|
|
1953
|
-
return
|
|
1953
|
+
return Nl = a, Nl;
|
|
1954
1954
|
}
|
|
1955
|
-
var
|
|
1955
|
+
var Rl, Gf;
|
|
1956
1956
|
function Zg() {
|
|
1957
|
-
if (Gf) return
|
|
1957
|
+
if (Gf) return Rl;
|
|
1958
1958
|
Gf = 1;
|
|
1959
1959
|
var e = /\s/;
|
|
1960
1960
|
function t(r) {
|
|
@@ -1962,7 +1962,7 @@ function Zg() {
|
|
|
1962
1962
|
;
|
|
1963
1963
|
return n;
|
|
1964
1964
|
}
|
|
1965
|
-
return
|
|
1965
|
+
return Rl = t, Rl;
|
|
1966
1966
|
}
|
|
1967
1967
|
var Pl, Wf;
|
|
1968
1968
|
function Jg() {
|
|
@@ -2151,7 +2151,7 @@ const _t = /* @__PURE__ */ Xe(oI), Mu = (e, t, r) => {
|
|
|
2151
2151
|
],
|
|
2152
2152
|
python: `${i}.read(${l})`
|
|
2153
2153
|
};
|
|
2154
|
-
},
|
|
2154
|
+
}, Pt = (e, t, r) => {
|
|
2155
2155
|
const { flowRate: n, pipetteId: a, volume: s, correctionVolume: o } = e, i = [];
|
|
2156
2156
|
t.pipetteEntities[a]?.spec || i.push(
|
|
2157
2157
|
wt({
|
|
@@ -2179,7 +2179,7 @@ const _t = /* @__PURE__ */ Xe(oI), Mu = (e, t, r) => {
|
|
|
2179
2179
|
// Note that correction volume is not supported in our public atomic liquid handling APIs
|
|
2180
2180
|
].join(", ")})`
|
|
2181
2181
|
};
|
|
2182
|
-
},
|
|
2182
|
+
}, Hk = (e, t, r) => {
|
|
2183
2183
|
const {
|
|
2184
2184
|
pipetteId: n,
|
|
2185
2185
|
volume: a,
|
|
@@ -2201,10 +2201,10 @@ const _t = /* @__PURE__ */ Xe(oI), Mu = (e, t, r) => {
|
|
|
2201
2201
|
actionName: h,
|
|
2202
2202
|
labware: s
|
|
2203
2203
|
})
|
|
2204
|
-
) :
|
|
2204
|
+
) : Y(r.labware[s].stack) === "offDeck" && m.push(Bn()), Me.includes(y))
|
|
2205
2205
|
m.push(Jt({ typeOfStep: h }));
|
|
2206
2206
|
else if (f[y] != null) {
|
|
2207
|
-
const E =
|
|
2207
|
+
const E = Y(f[y].stack);
|
|
2208
2208
|
Me.includes(E) && m.push(
|
|
2209
2209
|
Jt({ typeOfStep: h })
|
|
2210
2210
|
);
|
|
@@ -2270,7 +2270,7 @@ const _t = /* @__PURE__ */ Xe(oI), Mu = (e, t, r) => {
|
|
|
2270
2270
|
b,
|
|
2271
2271
|
t.labwareEntities[s]
|
|
2272
2272
|
) && m.push(
|
|
2273
|
-
|
|
2273
|
+
Ns()
|
|
2274
2274
|
)), m.length === 0 && b && b.liquids.default.maxVolume < a && m.push(
|
|
2275
2275
|
Is({
|
|
2276
2276
|
actionName: h,
|
|
@@ -2316,7 +2316,7 @@ const _t = /* @__PURE__ */ Xe(oI), Mu = (e, t, r) => {
|
|
|
2316
2316
|
)}]${mr(u)}`,
|
|
2317
2317
|
`flow_rate=${i}`
|
|
2318
2318
|
], w = `${S}.aspirate(
|
|
2319
|
-
${
|
|
2319
|
+
${G(
|
|
2320
2320
|
I.join(`,
|
|
2321
2321
|
`)
|
|
2322
2322
|
)},
|
|
@@ -2406,10 +2406,10 @@ ${o}.blow_out()`
|
|
|
2406
2406
|
actionName: p,
|
|
2407
2407
|
labware: a
|
|
2408
2408
|
})
|
|
2409
|
-
) :
|
|
2409
|
+
) : Y(r.labware[a].stack) === "offDeck" && d.push(Bn()), Me.includes(_))
|
|
2410
2410
|
d.push(Jt({ typeOfStep: p }));
|
|
2411
2411
|
else if (b[_] != null) {
|
|
2412
|
-
const g =
|
|
2412
|
+
const g = Y(b[_].stack);
|
|
2413
2413
|
Me.includes(g) && d.push(
|
|
2414
2414
|
Jt({ typeOfStep: p })
|
|
2415
2415
|
);
|
|
@@ -2449,7 +2449,7 @@ ${o}.blow_out()`
|
|
|
2449
2449
|
h,
|
|
2450
2450
|
t.labwareEntities[a]
|
|
2451
2451
|
) && d.push(
|
|
2452
|
-
|
|
2452
|
+
Ns()
|
|
2453
2453
|
)), d.length > 0)
|
|
2454
2454
|
return {
|
|
2455
2455
|
errors: d
|
|
@@ -2548,7 +2548,7 @@ ${y}.blow_out(${A}[${P(
|
|
|
2548
2548
|
], {
|
|
2549
2549
|
commands: i,
|
|
2550
2550
|
python: `${l}.configure_nozzle_layout(
|
|
2551
|
-
${
|
|
2551
|
+
${G(
|
|
2552
2552
|
c.join(`,
|
|
2553
2553
|
`)
|
|
2554
2554
|
)},
|
|
@@ -2682,10 +2682,10 @@ ${o}.deactivate_block()`
|
|
|
2682
2682
|
actionName: h,
|
|
2683
2683
|
labware: s
|
|
2684
2684
|
})
|
|
2685
|
-
) :
|
|
2685
|
+
) : Y(r.labware[s].stack) === "offDeck" && m.push(Bn()), Me.includes(y))
|
|
2686
2686
|
m.push(Jt({ typeOfStep: h }));
|
|
2687
2687
|
else if (f[y] != null) {
|
|
2688
|
-
const E =
|
|
2688
|
+
const E = Y(f[y].stack);
|
|
2689
2689
|
Me.includes(E) && m.push(
|
|
2690
2690
|
Jt({ typeOfStep: h })
|
|
2691
2691
|
);
|
|
@@ -2738,7 +2738,7 @@ ${o}.deactivate_block()`
|
|
|
2738
2738
|
b,
|
|
2739
2739
|
t.labwareEntities[s]
|
|
2740
2740
|
) && m.push(
|
|
2741
|
-
|
|
2741
|
+
Ns()
|
|
2742
2742
|
)), m.length > 0)
|
|
2743
2743
|
return {
|
|
2744
2744
|
errors: m
|
|
@@ -2769,7 +2769,7 @@ ${o}.deactivate_block()`
|
|
|
2769
2769
|
// PAPI has no way to indicate that we're dispensing air, so we don't do anything
|
|
2770
2770
|
// with the isAirGap parameter.
|
|
2771
2771
|
], w = `${S}.dispense(
|
|
2772
|
-
${
|
|
2772
|
+
${G(
|
|
2773
2773
|
I.join(`,
|
|
2774
2774
|
`)
|
|
2775
2775
|
)},
|
|
@@ -2869,7 +2869,12 @@ ${Y(
|
|
|
2869
2869
|
};
|
|
2870
2870
|
}, xu = (e, t, r) => {
|
|
2871
2871
|
const { pipetteId: n } = e;
|
|
2872
|
-
|
|
2872
|
+
if (!r.tipState.pipettes[n]?.hasTip)
|
|
2873
|
+
return {
|
|
2874
|
+
commands: []
|
|
2875
|
+
};
|
|
2876
|
+
const { pipetteEntities: a, trashBinEntities: s, wasteChuteEntities: o } = t, i = a[n].pythonName, l = r.pipettes[n]?.entityId ?? "", c = s[l], u = o[l], p = c != null ? `${c.pythonName}, alternate_drop_location=True` : u?.pythonName ?? "";
|
|
2877
|
+
return {
|
|
2873
2878
|
commands: [
|
|
2874
2879
|
{
|
|
2875
2880
|
commandType: "dropTipInPlace",
|
|
@@ -2878,9 +2883,8 @@ ${Y(
|
|
|
2878
2883
|
pipetteId: n
|
|
2879
2884
|
}
|
|
2880
2885
|
}
|
|
2881
|
-
]
|
|
2882
|
-
|
|
2883
|
-
commands: []
|
|
2886
|
+
],
|
|
2887
|
+
python: `${i}.drop_tip(${p})`
|
|
2884
2888
|
};
|
|
2885
2889
|
}, mI = (e, t, r) => {
|
|
2886
2890
|
const { moduleId: n, height: a } = e, { moduleEntities: s } = t, o = "magneticModule/engage";
|
|
@@ -2975,7 +2979,7 @@ ${h}
|
|
|
2975
2979
|
}
|
|
2976
2980
|
],
|
|
2977
2981
|
python: `${u}.fill_items(
|
|
2978
|
-
${
|
|
2982
|
+
${G(b)})`
|
|
2979
2983
|
};
|
|
2980
2984
|
}, bI = (e, t, r) => {
|
|
2981
2985
|
const { moduleId: n } = e, { moduleEntities: a } = t;
|
|
@@ -3072,24 +3076,24 @@ const SI = "opentrons_flex_tiprack_lid", AI = (e, t, r) => {
|
|
|
3072
3076
|
labwareEntities: u,
|
|
3073
3077
|
moduleEntities: p
|
|
3074
3078
|
} = t, d = Object.keys(i).length > 0, h = Object.values(c).length > 0, f = r.tipState != null ? KI(r.tipState, n) : !1, m = r.liquidState != null ? YI(r.liquidState, n) : !1, b = Object.values(r.tipState.pipettes).some(
|
|
3075
|
-
({ hasTip:
|
|
3079
|
+
({ hasTip: R }) => R
|
|
3076
3080
|
), _ = "moveToLabware", y = [], A = [], T = Ub(s) && s.addressableAreaName === "gripperWasteChute";
|
|
3077
3081
|
!n || !r.labware[n] ? y.push(
|
|
3078
3082
|
gt({
|
|
3079
3083
|
actionName: _,
|
|
3080
3084
|
labware: n
|
|
3081
3085
|
})
|
|
3082
|
-
) :
|
|
3086
|
+
) : Y(r.labware[n].stack) === "offDeck" && o ? y.push(Bn()) : r.labware[n].stack.includes(mt) && y.push(cw());
|
|
3083
3087
|
const g = u[n]?.def.metadata.displayCategory === "aluminumBlock";
|
|
3084
3088
|
o && g && y.push(Z_()), (T && d && !o || !d && o) && y.push(X_()), b && o && y.push(M_());
|
|
3085
|
-
const S = r.labware[n] != null ?
|
|
3089
|
+
const S = r.labware[n] != null ? Y(r.labware[n].stack) : null;
|
|
3086
3090
|
(h && S === "gripperWasteChute" || up.includes(
|
|
3087
3091
|
S
|
|
3088
3092
|
) || S === "fixedTrash") && y.push(Ba());
|
|
3089
|
-
const v = S != null && r.labware[S] != null ?
|
|
3090
|
-
({ slot:
|
|
3091
|
-
)?.moduleState ?? null, E = Object.entries(r.labware).filter(([
|
|
3092
|
-
E.some((
|
|
3093
|
+
const v = S != null && r.labware[S] != null ? Y(r.labware[S].stack) : null, I = v ?? S, w = (R) => R == null ? null : R in r.modules ? r.modules[R].moduleState : Object.values(r.modules).find(
|
|
3094
|
+
({ slot: N }) => N === R
|
|
3095
|
+
)?.moduleState ?? null, E = Object.entries(r.labware).filter(([R, N]) => N.stack.includes("offDeck")).map(([R]) => R), O = Object.values(s);
|
|
3096
|
+
E.some((R) => O.includes(R)) && o && y.push(V_());
|
|
3093
3097
|
const F = w(I);
|
|
3094
3098
|
F != null && (F.type === Ue && F.lidOpen !== !0 ? y.push(Mn()) : F.type === Pe ? F.latchOpen !== !0 ? y.push(mp()) : F.targetSpeed !== null && y.push(xn()) : F.type === Fn && F.lidOpen !== !0 ? y.push(nn()) : F.type === Kt && F.currentPumpActivity.type !== "pumpDeactivated" && y.push(yp()));
|
|
3095
3099
|
const M = zb(s) && "moduleId" in s ? s.moduleId : null, ee = jb(s) ? s.labwareId : null, de = ee != null ? r.labware[ee].stack[1] : null, _e = de ?? M;
|
|
@@ -3118,31 +3122,31 @@ const SI = "opentrons_flex_tiprack_lid", AI = (e, t, r) => {
|
|
|
3118
3122
|
te = Oa;
|
|
3119
3123
|
else if ("labwareId" in s) {
|
|
3120
3124
|
te = u[s.labwareId].pythonName;
|
|
3121
|
-
const
|
|
3122
|
-
ve =
|
|
3125
|
+
const R = r.labware[s.labwareId].stack;
|
|
3126
|
+
ve = R[R.length - 1];
|
|
3123
3127
|
} else if ("moduleId" in s)
|
|
3124
3128
|
ve = r.modules[s.moduleId].slot, te = p[s.moduleId].pythonName;
|
|
3125
3129
|
else if ("slotName" in s) {
|
|
3126
|
-
const { slotName:
|
|
3127
|
-
if (
|
|
3128
|
-
const
|
|
3129
|
-
r.labware[
|
|
3130
|
+
const { slotName: R } = s;
|
|
3131
|
+
if (R in u) {
|
|
3132
|
+
const N = Y(
|
|
3133
|
+
r.labware[R].stack
|
|
3130
3134
|
);
|
|
3131
|
-
te = Or(u[
|
|
3132
|
-
const D = r.labware[
|
|
3135
|
+
te = Or(u[R].def) ? P(N) : u[R].pythonName;
|
|
3136
|
+
const D = r.labware[R].stack;
|
|
3133
3137
|
ve = D[D.length - 1];
|
|
3134
3138
|
} else
|
|
3135
|
-
te = P(
|
|
3139
|
+
te = P(R), ve = R;
|
|
3136
3140
|
} else if ("addressableAreaName" in s) {
|
|
3137
|
-
const
|
|
3141
|
+
const R = Me.includes(
|
|
3138
3142
|
s.addressableAreaName
|
|
3139
|
-
),
|
|
3143
|
+
), N = xh.includes(
|
|
3140
3144
|
s.addressableAreaName
|
|
3141
3145
|
), x = s.addressableAreaName === "fixedTrash", se = up.includes(
|
|
3142
3146
|
s.addressableAreaName
|
|
3143
3147
|
) || x ? Object.values(l)?.map(
|
|
3144
3148
|
(q) => q.location
|
|
3145
|
-
) : [], $ = !
|
|
3149
|
+
) : [], $ = !N && !R && !Ts(s.addressableAreaName) ? BI(
|
|
3146
3150
|
s.addressableAreaName,
|
|
3147
3151
|
x ? "fixedTrashSlot" : "trashBinAdapter",
|
|
3148
3152
|
x ? Rt : We
|
|
@@ -3151,11 +3155,11 @@ const SI = "opentrons_flex_tiprack_lid", AI = (e, t, r) => {
|
|
|
3151
3155
|
), V = z != null ? Object.values(l).find(
|
|
3152
3156
|
(q) => q.location === z
|
|
3153
3157
|
)?.id : null;
|
|
3154
|
-
if (
|
|
3158
|
+
if (R)
|
|
3155
3159
|
te = P(s.addressableAreaName);
|
|
3156
|
-
else if (V != null && !
|
|
3160
|
+
else if (V != null && !N)
|
|
3157
3161
|
te = l[V]?.pythonName ?? "";
|
|
3158
|
-
else if (V == null &&
|
|
3162
|
+
else if (V == null && N)
|
|
3159
3163
|
te = Object.values(c)[0]?.pythonName ?? "";
|
|
3160
3164
|
else if (Ts(s.addressableAreaName)) {
|
|
3161
3165
|
const [q] = Object.entries(r.modules).find(
|
|
@@ -3169,17 +3173,17 @@ const SI = "opentrons_flex_tiprack_lid", AI = (e, t, r) => {
|
|
|
3169
3173
|
te = "";
|
|
3170
3174
|
}
|
|
3171
3175
|
if (ve != null) {
|
|
3172
|
-
const
|
|
3176
|
+
const R = ws({
|
|
3173
3177
|
slot: ve,
|
|
3174
3178
|
labwareState: r.labware,
|
|
3175
3179
|
modulesState: r.modules
|
|
3176
|
-
}),
|
|
3180
|
+
}), N = Y(R), { isCompatible: x, isAboveStackLimit: D } = QI(
|
|
3177
3181
|
n,
|
|
3178
|
-
|
|
3182
|
+
R,
|
|
3179
3183
|
u,
|
|
3180
3184
|
p
|
|
3181
3185
|
);
|
|
3182
|
-
x || y.push(Y_()), D && y.push(ow({ slot:
|
|
3186
|
+
x || y.push(Y_()), D && y.push(ow({ slot: N }));
|
|
3183
3187
|
}
|
|
3184
3188
|
if (y.length > 0)
|
|
3185
3189
|
return { errors: y };
|
|
@@ -3187,24 +3191,24 @@ const SI = "opentrons_flex_tiprack_lid", AI = (e, t, r) => {
|
|
|
3187
3191
|
const Je = o ? ", use_gripper=True" : "", De = Or(u[n].def), Te = r.labware[n].stack;
|
|
3188
3192
|
let X = "";
|
|
3189
3193
|
if (De) {
|
|
3190
|
-
const
|
|
3191
|
-
if (
|
|
3194
|
+
const R = XI(Te);
|
|
3195
|
+
if (R == null)
|
|
3192
3196
|
console.error(
|
|
3193
3197
|
"expected to find a parent for labware to move but could not"
|
|
3194
3198
|
);
|
|
3195
3199
|
else {
|
|
3196
|
-
const
|
|
3197
|
-
Te.length === 2 ||
|
|
3198
|
-
|
|
3199
|
-
) : (
|
|
3200
|
+
const N = u[R] != null, x = N && Or(u[R].def);
|
|
3201
|
+
Te.length === 2 || N && x ? X = P(
|
|
3202
|
+
Y(Te)
|
|
3203
|
+
) : (N || !Or(u[R].def)) && (X = u[R].pythonName);
|
|
3200
3204
|
}
|
|
3201
3205
|
}
|
|
3202
3206
|
De && X === "" && console.error("expected to find a valid lid move location but could not");
|
|
3203
|
-
const
|
|
3207
|
+
const W = De ? `${ge}.move_lid(${X}, ${te}${Je})` : `${ge}.move_labware(${je}, ${te}${Je})`;
|
|
3204
3208
|
return {
|
|
3205
3209
|
commands: Ze,
|
|
3206
3210
|
...A.length > 0 ? { warnings: A } : {},
|
|
3207
|
-
python:
|
|
3211
|
+
python: W
|
|
3208
3212
|
};
|
|
3209
3213
|
}, ze = (e, t, r) => {
|
|
3210
3214
|
const { pipetteId: n, fixtureId: a, offset: s } = e, { pipetteEntities: o, trashBinEntities: i, wasteChuteEntities: l } = t, c = o[n], u = c.spec.channels, p = c.pythonName, d = i[a] ?? l[a], h = d.pythonName;
|
|
@@ -3225,7 +3229,7 @@ const SI = "opentrons_flex_tiprack_lid", AI = (e, t, r) => {
|
|
|
3225
3229
|
],
|
|
3226
3230
|
python: `${p}.move_to(${h})`
|
|
3227
3231
|
};
|
|
3228
|
-
},
|
|
3232
|
+
}, Ny = (e, t, r) => {
|
|
3229
3233
|
const { pipetteId: n, addressableAreaName: a } = e;
|
|
3230
3234
|
return {
|
|
3231
3235
|
commands: [
|
|
@@ -3263,12 +3267,12 @@ const SI = "opentrons_flex_tiprack_lid", AI = (e, t, r) => {
|
|
|
3263
3267
|
actionName: u,
|
|
3264
3268
|
labware: a
|
|
3265
3269
|
})
|
|
3266
|
-
) :
|
|
3270
|
+
) : Y(r.labware[a].stack) === "offDeck" && p.push(Bn()), Me.includes(A))
|
|
3267
3271
|
p.push(
|
|
3268
3272
|
Jt({ typeOfStep: "move to well" })
|
|
3269
3273
|
);
|
|
3270
3274
|
else if (d[A] != null) {
|
|
3271
|
-
const O =
|
|
3275
|
+
const O = Y(d[A].stack);
|
|
3272
3276
|
Me.includes(O) && p.push(
|
|
3273
3277
|
Jt({ typeOfStep: u })
|
|
3274
3278
|
);
|
|
@@ -3308,7 +3312,7 @@ const SI = "opentrons_flex_tiprack_lid", AI = (e, t, r) => {
|
|
|
3308
3312
|
m,
|
|
3309
3313
|
f[a]
|
|
3310
3314
|
) && p.push(
|
|
3311
|
-
|
|
3315
|
+
Ns()
|
|
3312
3316
|
));
|
|
3313
3317
|
const T = t.pipetteEntities[n]?.spec.channels !== 1, g = t.pipetteEntities[n]?.spec, S = Dt({
|
|
3314
3318
|
robotState: r,
|
|
@@ -3376,7 +3380,7 @@ const SI = "opentrons_flex_tiprack_lid", AI = (e, t, r) => {
|
|
|
3376
3380
|
wellTargetName: s,
|
|
3377
3381
|
nozzleConfiguration: i,
|
|
3378
3382
|
primaryNozzle: l
|
|
3379
|
-
}), d =
|
|
3383
|
+
}), d = Nb({
|
|
3380
3384
|
tipState: r.tipState.tipracks[a],
|
|
3381
3385
|
primaryNozzle: l,
|
|
3382
3386
|
channels: u,
|
|
@@ -3389,13 +3393,13 @@ const SI = "opentrons_flex_tiprack_lid", AI = (e, t, r) => {
|
|
|
3389
3393
|
unsafePipetteMovementReason: p.reason
|
|
3390
3394
|
})
|
|
3391
3395
|
), d.isSafe || c.push(iw()), d.isComplete !== !0 && c.push(lw());
|
|
3392
|
-
const h =
|
|
3396
|
+
const h = Y(
|
|
3393
3397
|
r.labware[a].stack
|
|
3394
3398
|
);
|
|
3395
3399
|
if (Me.includes(h))
|
|
3396
3400
|
c.push(Jt({ typeOfStep: "pick up tip" }));
|
|
3397
3401
|
else if (r.labware[h] != null) {
|
|
3398
|
-
const _ =
|
|
3402
|
+
const _ = Y(
|
|
3399
3403
|
r.labware[h].stack
|
|
3400
3404
|
);
|
|
3401
3405
|
Me.includes(_) && c.push(Jt({ typeOfStep: "pick up tip" }));
|
|
@@ -3415,8 +3419,8 @@ const SI = "opentrons_flex_tiprack_lid", AI = (e, t, r) => {
|
|
|
3415
3419
|
],
|
|
3416
3420
|
python: b
|
|
3417
3421
|
};
|
|
3418
|
-
},
|
|
3419
|
-
const { moduleId: n, taskId: a, profileElements: s, blockMaxVolumeUl: o } = e, i = t.moduleEntities[n].pythonName, l =
|
|
3422
|
+
}, Ry = (e, t, r) => {
|
|
3423
|
+
const { moduleId: n, taskId: a, profileElements: s, blockMaxVolumeUl: o } = e, i = t.moduleEntities[n].pythonName, l = qv(
|
|
3420
3424
|
e.profileElements
|
|
3421
3425
|
), c = l.repeatingProfileSteps.map(
|
|
3422
3426
|
(f) => `{${P("temperature")}: ${f.celsius}, ${P(
|
|
@@ -3424,11 +3428,11 @@ const SI = "opentrons_flex_tiprack_lid", AI = (e, t, r) => {
|
|
|
3424
3428
|
)}: ${f.holdSeconds}},`
|
|
3425
3429
|
).join(`
|
|
3426
3430
|
`), p = `${`[
|
|
3427
|
-
${
|
|
3431
|
+
${G(c)}
|
|
3428
3432
|
],`}
|
|
3429
3433
|
${l.numRepetitions},
|
|
3430
3434
|
` + (e.blockMaxVolumeUl !== void 0 ? `block_max_volume=${e.blockMaxVolumeUl},` : ""), h = (a != null ? `${a} = ` : "") + `${i}.start_execute_profile(
|
|
3431
|
-
${
|
|
3435
|
+
${G(p)}
|
|
3432
3436
|
)`;
|
|
3433
3437
|
return {
|
|
3434
3438
|
commands: [
|
|
@@ -3445,7 +3449,7 @@ ${Y(p)}
|
|
|
3445
3449
|
],
|
|
3446
3450
|
python: h
|
|
3447
3451
|
};
|
|
3448
|
-
},
|
|
3452
|
+
}, Ct = (e, t, r) => {
|
|
3449
3453
|
const { pipetteId: n } = e, a = t.pipetteEntities[n].pythonName;
|
|
3450
3454
|
return {
|
|
3451
3455
|
commands: [
|
|
@@ -3543,7 +3547,7 @@ ${Y(p)}
|
|
|
3543
3547
|
python: m
|
|
3544
3548
|
};
|
|
3545
3549
|
}, js = (e, t, r) => {
|
|
3546
|
-
const { moduleId: n } = e, a = t.moduleEntities[n], s =
|
|
3550
|
+
const { moduleId: n } = e, a = t.moduleEntities[n], s = St(r, n);
|
|
3547
3551
|
if (a == null || s == null)
|
|
3548
3552
|
return {
|
|
3549
3553
|
errors: [J()]
|
|
@@ -3566,7 +3570,7 @@ ${Y(p)}
|
|
|
3566
3570
|
python: i
|
|
3567
3571
|
};
|
|
3568
3572
|
}, vI = (e, t, r) => {
|
|
3569
|
-
const { moduleId: n } = e, a = t.moduleEntities[n], s =
|
|
3573
|
+
const { moduleId: n } = e, a = t.moduleEntities[n], s = St(r, n);
|
|
3570
3574
|
if (a == null || s == null)
|
|
3571
3575
|
return {
|
|
3572
3576
|
errors: [J()]
|
|
@@ -3589,12 +3593,12 @@ ${Y(p)}
|
|
|
3589
3593
|
python: i
|
|
3590
3594
|
};
|
|
3591
3595
|
}, ge = "protocol", Oa = "protocol_api.OFF_DECK", Bu = "CUSTOM_LABWARE", Hs = " ";
|
|
3592
|
-
function
|
|
3596
|
+
function G(e) {
|
|
3593
3597
|
return e.split(`
|
|
3594
3598
|
`).map((t) => t && Hs + t).join(`
|
|
3595
3599
|
`);
|
|
3596
3600
|
}
|
|
3597
|
-
function
|
|
3601
|
+
function It(e) {
|
|
3598
3602
|
switch (typeof e) {
|
|
3599
3603
|
case "undefined":
|
|
3600
3604
|
return "None";
|
|
@@ -3614,12 +3618,12 @@ function P(e) {
|
|
|
3614
3618
|
return JSON.stringify(e);
|
|
3615
3619
|
}
|
|
3616
3620
|
function Cy(e) {
|
|
3617
|
-
return `(${e.map((t) =>
|
|
3621
|
+
return `(${e.map((t) => It(t)).join(", ")})`;
|
|
3618
3622
|
}
|
|
3619
3623
|
function Vu(e) {
|
|
3620
3624
|
return e.every(
|
|
3621
3625
|
(t) => Array.isArray(t) && t.length === 2 && t.every((r) => typeof r == "number")
|
|
3622
|
-
) ? `[${e.map((t) => Cy(t)).join(", ")}]` : `[${e.map((t) =>
|
|
3626
|
+
) ? `[${e.map((t) => Cy(t)).join(", ")}]` : `[${e.map((t) => It(t)).join(", ")}]`;
|
|
3623
3627
|
}
|
|
3624
3628
|
function kI(e) {
|
|
3625
3629
|
return ["undefined", "boolean", "number", "string"].includes(typeof e) || e === null;
|
|
@@ -3627,13 +3631,13 @@ function kI(e) {
|
|
|
3627
3631
|
function zn(e) {
|
|
3628
3632
|
const t = Object.entries(e), r = t.every(([n, a]) => kI(a));
|
|
3629
3633
|
if (t.length <= 1 || r) {
|
|
3630
|
-
const n = `{${t.map(([a, s]) => `${P(a)}: ${
|
|
3634
|
+
const n = `{${t.map(([a, s]) => `${P(a)}: ${It(s)}`).join(", ")}}`;
|
|
3631
3635
|
if (t.length <= 1 || n.length < 64)
|
|
3632
3636
|
return n;
|
|
3633
3637
|
}
|
|
3634
3638
|
return `{
|
|
3635
|
-
${
|
|
3636
|
-
t.map(([n, a]) => `${P(n)}: ${
|
|
3639
|
+
${G(
|
|
3640
|
+
t.map(([n, a]) => `${P(n)}: ${It(a)}`).join(`,
|
|
3637
3641
|
`)
|
|
3638
3642
|
)},
|
|
3639
3643
|
}`;
|
|
@@ -3672,10 +3676,10 @@ function Uu(e, t) {
|
|
|
3672
3676
|
return r;
|
|
3673
3677
|
}
|
|
3674
3678
|
const Dy = (e, t) => [
|
|
3675
|
-
`duration_s=${
|
|
3676
|
-
...typeof t == "boolean" ? [`vent_after=${
|
|
3679
|
+
`duration_s=${It(e)}`,
|
|
3680
|
+
...typeof t == "boolean" ? [`vent_after=${It(t)}`] : []
|
|
3677
3681
|
], qy = (e, t, r) => {
|
|
3678
|
-
const { moduleId: n, percentPower: a, duration: s, ventAfter: o } = e, i = t.moduleEntities[n], l =
|
|
3682
|
+
const { moduleId: n, percentPower: a, duration: s, ventAfter: o } = e, i = t.moduleEntities[n], l = St(r, n);
|
|
3679
3683
|
if (l == null || i == null)
|
|
3680
3684
|
return {
|
|
3681
3685
|
errors: [J()]
|
|
@@ -3688,8 +3692,8 @@ const Dy = (e, t) => [
|
|
|
3688
3692
|
duration: s,
|
|
3689
3693
|
ventAfter: o,
|
|
3690
3694
|
taskId: p
|
|
3691
|
-
} : null, h = `percent_power=${
|
|
3692
|
-
${
|
|
3695
|
+
} : null, h = `percent_power=${It(a)}`, f = u ? Dy(s, o) : [], m = [h, ...f], _ = `${u ? `${p} = ` : ""}${i.pythonName}.start_set_vacuum_power(
|
|
3696
|
+
${G(m.join(`,
|
|
3693
3697
|
`))}
|
|
3694
3698
|
)`;
|
|
3695
3699
|
return {
|
|
@@ -3707,7 +3711,7 @@ ${Y(m.join(`,
|
|
|
3707
3711
|
python: _
|
|
3708
3712
|
};
|
|
3709
3713
|
}, $y = (e, t, r) => {
|
|
3710
|
-
const { moduleId: n, gaugePressure: a, duration: s, ventAfter: o } = e, i = t.moduleEntities[n], l =
|
|
3714
|
+
const { moduleId: n, gaugePressure: a, duration: s, ventAfter: o } = e, i = t.moduleEntities[n], l = St(r, n);
|
|
3711
3715
|
if (l == null || i == null)
|
|
3712
3716
|
return {
|
|
3713
3717
|
errors: [J()]
|
|
@@ -3720,8 +3724,8 @@ ${Y(m.join(`,
|
|
|
3720
3724
|
duration: s,
|
|
3721
3725
|
ventAfter: o,
|
|
3722
3726
|
taskId: p
|
|
3723
|
-
} : null, h = `gauge_pressure_mbar=${
|
|
3724
|
-
${
|
|
3727
|
+
} : null, h = `gauge_pressure_mbar=${It(a)}`, f = u ? Dy(s, o) : [], m = [h, ...f], _ = `${u ? `${p} = ` : ""}${i.pythonName}.start_set_vacuum_pressure(
|
|
3728
|
+
${G(m.join(`,
|
|
3725
3729
|
`))}
|
|
3726
3730
|
)`;
|
|
3727
3731
|
return {
|
|
@@ -3771,21 +3775,21 @@ ${Y(m.join(`,
|
|
|
3771
3775
|
if (e.length === 1 && "repetitions" in e[0]) {
|
|
3772
3776
|
const { steps: a, repetitions: s } = e[0];
|
|
3773
3777
|
return t = `steps=[
|
|
3774
|
-
${
|
|
3778
|
+
${G(
|
|
3775
3779
|
a.map((o, i) => (i === a.length - 1, ds(o))).join(`,
|
|
3776
3780
|
`)
|
|
3777
3781
|
)}
|
|
3778
|
-
]`, r = `repetitions=${
|
|
3782
|
+
]`, r = `repetitions=${It(s)}`, [t, r];
|
|
3779
3783
|
}
|
|
3780
3784
|
const n = EI(e);
|
|
3781
3785
|
return t = `steps=[
|
|
3782
|
-
${
|
|
3786
|
+
${G(
|
|
3783
3787
|
n.map((a, s) => (s === n.length - 1, ds(a))).join(`,
|
|
3784
3788
|
`)
|
|
3785
3789
|
)}
|
|
3786
|
-
]`, r = `repetitions=${
|
|
3790
|
+
]`, r = `repetitions=${It(1)}`, [t, r];
|
|
3787
3791
|
}, Fy = (e, t, r) => {
|
|
3788
|
-
const { moduleId: n, profile: a, ventAfter: s } = e, o =
|
|
3792
|
+
const { moduleId: n, profile: a, ventAfter: s } = e, o = St(r, n);
|
|
3789
3793
|
if (o === null)
|
|
3790
3794
|
return {
|
|
3791
3795
|
errors: [J()]
|
|
@@ -3794,8 +3798,8 @@ ${Y(
|
|
|
3794
3798
|
return {
|
|
3795
3799
|
errors: [Va()]
|
|
3796
3800
|
};
|
|
3797
|
-
const l = t.moduleEntities[n].pythonName, c = `${l}_task_${o.numPumpActivitiesStarted + 1}`, u = OI(a), p = `vent_after=${
|
|
3798
|
-
${
|
|
3801
|
+
const l = t.moduleEntities[n].pythonName, c = `${l}_task_${o.numPumpActivitiesStarted + 1}`, u = OI(a), p = `vent_after=${It(s)}`, d = a.map((f, m) => m === a.length - 1 ? { ...f, ventAfter: s } : f), h = `${c} = ${l}.start_execute_profile(
|
|
3802
|
+
${G([...u, p].join(`,
|
|
3799
3803
|
`))}
|
|
3800
3804
|
)`;
|
|
3801
3805
|
return {
|
|
@@ -3813,7 +3817,7 @@ ${Y([...u, p].join(`,
|
|
|
3813
3817
|
],
|
|
3814
3818
|
python: h
|
|
3815
3819
|
};
|
|
3816
|
-
},
|
|
3820
|
+
}, NI = (e, t, r) => {
|
|
3817
3821
|
const { moduleId: n } = e, a = t.moduleEntities[n];
|
|
3818
3822
|
if (a == null)
|
|
3819
3823
|
return {
|
|
@@ -3845,7 +3849,7 @@ ${Y([...u, p].join(`,
|
|
|
3845
3849
|
errors: [J()]
|
|
3846
3850
|
};
|
|
3847
3851
|
const i = "status" in s && s.status === Qh && s.targetTemperature !== a, l = "status" in s && s.status === ey && s.targetTemperature !== a;
|
|
3848
|
-
if (i || "status" in s && s.status ===
|
|
3852
|
+
if (i || "status" in s && s.status === Rs || "targetTemp" in s && s.targetTemp == null)
|
|
3849
3853
|
return {
|
|
3850
3854
|
errors: [x_()]
|
|
3851
3855
|
};
|
|
@@ -3889,7 +3893,7 @@ ${Y([...u, p].join(`,
|
|
|
3889
3893
|
errors: [J()]
|
|
3890
3894
|
};
|
|
3891
3895
|
}
|
|
3892
|
-
},
|
|
3896
|
+
}, RI = (e, t, r) => {
|
|
3893
3897
|
const {
|
|
3894
3898
|
pipetteId: n,
|
|
3895
3899
|
volume: a,
|
|
@@ -3918,7 +3922,7 @@ ${Y([...u, p].join(`,
|
|
|
3918
3922
|
`flow_rate=${s}`,
|
|
3919
3923
|
`end_location=${h}${mr(c)}`
|
|
3920
3924
|
], m = `${p}.aspirate(
|
|
3921
|
-
${
|
|
3925
|
+
${G(
|
|
3922
3926
|
f.join(`,
|
|
3923
3927
|
`)
|
|
3924
3928
|
)},
|
|
@@ -3956,7 +3960,7 @@ ${Y(
|
|
|
3956
3960
|
`flow_rate=${s}`,
|
|
3957
3961
|
`end_location=${h}${mr(c)}`
|
|
3958
3962
|
], m = `${p}.dispense(
|
|
3959
|
-
${
|
|
3963
|
+
${G(
|
|
3960
3964
|
f.join(`,
|
|
3961
3965
|
`)
|
|
3962
3966
|
)},
|
|
@@ -4255,7 +4259,7 @@ function MI(e) {
|
|
|
4255
4259
|
return Cw.includes(e.parameters.loadName);
|
|
4256
4260
|
}
|
|
4257
4261
|
const xI = (e) => (e.parameters.quirks ?? []).includes("vacuumModuleDock"), BI = (e, t, r) => {
|
|
4258
|
-
const s =
|
|
4262
|
+
const s = Nr(r).cutoutFixtures.find(
|
|
4259
4263
|
(l) => l.id.includes(t)
|
|
4260
4264
|
)?.providesAddressableAreas, i = ((l) => {
|
|
4261
4265
|
if (s != null) {
|
|
@@ -4282,7 +4286,7 @@ function VI(e) {
|
|
|
4282
4286
|
}
|
|
4283
4287
|
}
|
|
4284
4288
|
function Gy(e) {
|
|
4285
|
-
const t =
|
|
4289
|
+
const t = Nr(
|
|
4286
4290
|
e === "cutout12" ? Rt : We
|
|
4287
4291
|
);
|
|
4288
4292
|
let r = null;
|
|
@@ -4295,7 +4299,7 @@ function Gy(e) {
|
|
|
4295
4299
|
function UI(e) {
|
|
4296
4300
|
if (e === "fixedTrash")
|
|
4297
4301
|
return "cutout12";
|
|
4298
|
-
const r =
|
|
4302
|
+
const r = Nr(We).cutoutFixtures.find(
|
|
4299
4303
|
(n) => n.id === "trashBinAdapter"
|
|
4300
4304
|
)?.providesAddressableAreas ?? null;
|
|
4301
4305
|
if (r == null)
|
|
@@ -4544,7 +4548,7 @@ const KI = (e, t) => e.tipracks[t] != null ? Object.values(e.tipracks[t]).some(
|
|
|
4544
4548
|
(r) => r !== ce
|
|
4545
4549
|
) : !1, YI = (e, t) => e.labware[t] != null ? Object.values(e.labware[t]).some(
|
|
4546
4550
|
(r) => Object.values(r).some((n) => n.volume > 0)
|
|
4547
|
-
) : !1,
|
|
4551
|
+
) : !1, Gk = (e, t, r) => {
|
|
4548
4552
|
const {
|
|
4549
4553
|
destinationId: n,
|
|
4550
4554
|
pipetteId: a,
|
|
@@ -4584,21 +4588,21 @@ const KI = (e, t) => e.tipracks[t] != null ? Object.values(e.tipracks[t]).some(
|
|
|
4584
4588
|
nozzles: h
|
|
4585
4589
|
})
|
|
4586
4590
|
] : _ === "wasteChute" ? y = [
|
|
4587
|
-
k(
|
|
4591
|
+
k(Jv, {
|
|
4588
4592
|
pipetteId: a,
|
|
4589
4593
|
volume: s,
|
|
4590
4594
|
flowRate: o,
|
|
4591
4595
|
wasteChuteId: b[n].id
|
|
4592
4596
|
})
|
|
4593
4597
|
] : y = [
|
|
4594
|
-
k(
|
|
4598
|
+
k(Zv, {
|
|
4595
4599
|
pipetteId: a,
|
|
4596
4600
|
volume: s,
|
|
4597
4601
|
flowRate: o,
|
|
4598
4602
|
trashId: m[n].id
|
|
4599
4603
|
})
|
|
4600
4604
|
], oe(y, t, r);
|
|
4601
|
-
},
|
|
4605
|
+
}, Wk = (e, t, r) => {
|
|
4602
4606
|
const { destinationId: n, pipetteId: a, zOffset: s, well: o } = e, { labwareEntities: i, wasteChuteEntities: l, trashBinEntities: c } = t, u = Ya(
|
|
4603
4607
|
i,
|
|
4604
4608
|
l,
|
|
@@ -4629,7 +4633,7 @@ const KI = (e, t) => e.tipracks[t] != null ? Object.values(e.tipracks[t]).some(
|
|
|
4629
4633
|
offset: Qt
|
|
4630
4634
|
})
|
|
4631
4635
|
], oe(p, t, r);
|
|
4632
|
-
},
|
|
4636
|
+
}, Kk = (e, t, r) => {
|
|
4633
4637
|
const {
|
|
4634
4638
|
blowOutLocation: n,
|
|
4635
4639
|
destinationId: a,
|
|
@@ -4655,7 +4659,7 @@ const KI = (e, t) => e.tipracks[t] != null ? Object.values(e.tipracks[t]).some(
|
|
|
4655
4659
|
destWell: s
|
|
4656
4660
|
});
|
|
4657
4661
|
m = [
|
|
4658
|
-
k(
|
|
4662
|
+
k(Uv, {
|
|
4659
4663
|
flowRate: o,
|
|
4660
4664
|
pipetteId: i,
|
|
4661
4665
|
labwareId: b,
|
|
@@ -4665,14 +4669,14 @@ const KI = (e, t) => e.tipracks[t] != null ? Object.values(e.tipracks[t]).some(
|
|
|
4665
4669
|
})
|
|
4666
4670
|
];
|
|
4667
4671
|
} else f === "wasteChute" ? m = [
|
|
4668
|
-
k(
|
|
4672
|
+
k(Vv, {
|
|
4669
4673
|
pipetteId: i,
|
|
4670
4674
|
volume: u,
|
|
4671
4675
|
flowRate: o,
|
|
4672
4676
|
wasteChuteId: h[a].id
|
|
4673
4677
|
})
|
|
4674
4678
|
] : m = [
|
|
4675
|
-
k(
|
|
4679
|
+
k(Bv, {
|
|
4676
4680
|
pipetteId: i,
|
|
4677
4681
|
volume: u,
|
|
4678
4682
|
flowRate: o,
|
|
@@ -4680,7 +4684,7 @@ const KI = (e, t) => e.tipracks[t] != null ? Object.values(e.tipracks[t]).some(
|
|
|
4680
4684
|
})
|
|
4681
4685
|
];
|
|
4682
4686
|
return oe(m, t, r);
|
|
4683
|
-
},
|
|
4687
|
+
}, Yk = (e, t, r) => {
|
|
4684
4688
|
const { pipetteId: n, destinationId: a, well: s, zOffset: o, seconds: i } = e, { labwareEntities: l, trashBinEntities: c, wasteChuteEntities: u } = t, p = Ya(
|
|
4685
4689
|
l,
|
|
4686
4690
|
u,
|
|
@@ -4720,14 +4724,14 @@ const KI = (e, t) => e.tipracks[t] != null ? Object.values(e.tipracks[t]).some(
|
|
|
4720
4724
|
seconds: i
|
|
4721
4725
|
})
|
|
4722
4726
|
], oe(d, t, r);
|
|
4723
|
-
},
|
|
4727
|
+
}, Y = (e, t = !1) => {
|
|
4724
4728
|
if (e == null)
|
|
4725
4729
|
return console.error("expected to find stack but could not"), "unknown slot";
|
|
4726
4730
|
{
|
|
4727
4731
|
const r = e[e.length - 1];
|
|
4728
4732
|
return t ? `STACKER ${r.slice(-2, -1)}` : r;
|
|
4729
4733
|
}
|
|
4730
|
-
},
|
|
4734
|
+
}, Xk = (e) => e === _u ? Dw : e, Yy = (e) => e == null ? (console.error("expected to find stack but could not"), "unknown top location") : e[0], XI = (e) => e.length >= 2 ? e[1] : null, ws = (e) => {
|
|
4731
4735
|
const { slot: t, labwareState: r, modulesState: n } = e, a = Object.values(n).find(
|
|
4732
4736
|
({ slot: s, moduleState: o }) => s === t && o.type === Ge
|
|
4733
4737
|
);
|
|
@@ -4743,7 +4747,7 @@ const KI = (e, t) => e.tipracks[t] != null ? Object.values(e.tipracks[t]).some(
|
|
|
4743
4747
|
}, Xy = (e) => Wb[wu[e]], ZI = (e) => {
|
|
4744
4748
|
const t = Bh.indexOf(e);
|
|
4745
4749
|
return t === -1 ? null : Me[t];
|
|
4746
|
-
},
|
|
4750
|
+
}, Zk = (e) => {
|
|
4747
4751
|
const t = ZI(
|
|
4748
4752
|
e
|
|
4749
4753
|
);
|
|
@@ -4761,7 +4765,7 @@ const KI = (e, t) => e.tipracks[t] != null ? Object.values(e.tipracks[t]).some(
|
|
|
4761
4765
|
}
|
|
4762
4766
|
return e;
|
|
4763
4767
|
}, Hu = (e) => {
|
|
4764
|
-
const t =
|
|
4768
|
+
const t = Nr(We), r = `${e[0]}3`, n = wu[r], a = t.cutoutFixtures.find(
|
|
4765
4769
|
({ id: s }) => s === Jb
|
|
4766
4770
|
)?.providesAddressableAreas[n];
|
|
4767
4771
|
return Bh.find((s) => a?.includes(s)) ?? null;
|
|
@@ -4820,7 +4824,7 @@ const KI = (e, t) => e.tipracks[t] != null ? Object.values(e.tipracks[t]).some(
|
|
|
4820
4824
|
).some((p) => u === p);
|
|
4821
4825
|
}
|
|
4822
4826
|
return { isCompatible: i, isAboveStackLimit: l };
|
|
4823
|
-
}, Gs = (e, t) => t?.find((r) => e[r] != null) ?? null, eT = (e, t, r) => t ? e : r ?
|
|
4827
|
+
}, Gs = (e, t) => t?.find((r) => e[r] != null) ?? null, eT = (e, t, r) => t ? e : r ? Rw[e] : e, Gu = (e, t, r) => {
|
|
4824
4828
|
if (t === "offDeck" && r == null)
|
|
4825
4829
|
return console.error(
|
|
4826
4830
|
"offDeck slot is not allowed to be used without an offDeckOverrideId"
|
|
@@ -4829,7 +4833,7 @@ const KI = (e, t) => e.tipracks[t] != null ? Object.values(e.tipracks[t]).some(
|
|
|
4829
4833
|
(i) => i.stack.includes(s) && (r == null || i.stack.includes(r)) && i.stack.includes(mt) === a && i.stack.includes(ry) === n
|
|
4830
4834
|
);
|
|
4831
4835
|
return o.length === 0 ? [] : a ? o.at(-1)?.stack ?? [] : n ? o.at(-1)?.stack ?? [] : o.toSorted((i, l) => l.stack.length - i.stack.length)[0]?.stack ?? [];
|
|
4832
|
-
},
|
|
4836
|
+
}, Jk = (e, t) => Object.values(t).filter((r) => r.stack.includes(e)).sort((r, n) => n.stack.length - r.stack.length)[0]?.stack[0], Ia = (e, t, r, n = !0) => {
|
|
4833
4837
|
const a = Dn(e, t) ?? 0, s = Dn(e, r) ?? 0;
|
|
4834
4838
|
return e + (n ? a : 0) + s;
|
|
4835
4839
|
}, Zy = (e) => {
|
|
@@ -5001,7 +5005,7 @@ function rm(e) {
|
|
|
5001
5005
|
}
|
|
5002
5006
|
return {};
|
|
5003
5007
|
}
|
|
5004
|
-
const rT = (e) =>
|
|
5008
|
+
const rT = (e) => Nw.includes(e), Ts = (e) => e === _u, Jy = (e) => e.labwareOnShuttle?.primaryLabwareId ?? null, Qy = (e, t, r) => {
|
|
5005
5009
|
if (r?.storedLabwareDetails == null)
|
|
5006
5010
|
return !0;
|
|
5007
5011
|
const n = Object.values(
|
|
@@ -5037,9 +5041,26 @@ const rT = (e) => Rw.includes(e), Ts = (e) => e === _u, Jy = (e) => e.labwareOnS
|
|
|
5037
5041
|
);
|
|
5038
5042
|
}, aT = (e) => ![
|
|
5039
5043
|
Oa,
|
|
5040
|
-
|
|
5044
|
+
Rr,
|
|
5041
5045
|
...Me
|
|
5042
|
-
].some((t) => e === t)
|
|
5046
|
+
].some((t) => e === t);
|
|
5047
|
+
function Qk(e, t) {
|
|
5048
|
+
if (typeof e == "number")
|
|
5049
|
+
return e;
|
|
5050
|
+
const r = t[e];
|
|
5051
|
+
return r != null && (r.type === "float" || r.type === "int") ? r.default : null;
|
|
5052
|
+
}
|
|
5053
|
+
function eL(e, t) {
|
|
5054
|
+
const r = t[e];
|
|
5055
|
+
return r == null ? e : r.type === "string" ? r.default : null;
|
|
5056
|
+
}
|
|
5057
|
+
function tL(e, t) {
|
|
5058
|
+
if (typeof e == "boolean")
|
|
5059
|
+
return e;
|
|
5060
|
+
const r = t[e];
|
|
5061
|
+
return r != null && r.type === "boolean" ? r.default : null;
|
|
5062
|
+
}
|
|
5063
|
+
const Ws = (e, t, r) => {
|
|
5043
5064
|
const n = t[r]?.stack, a = Gs(e, n), s = a != null ? e[a].moduleState : null;
|
|
5044
5065
|
return !!(s && s.type === Fn && s.lidOpen !== !0);
|
|
5045
5066
|
};
|
|
@@ -5095,7 +5116,7 @@ function nt(e, ...t) {
|
|
|
5095
5116
|
`[Immer] minified error nr: ${e}. Full error at: https://bit.ly/3cXEKWf`
|
|
5096
5117
|
);
|
|
5097
5118
|
}
|
|
5098
|
-
var
|
|
5119
|
+
var Na = Object.getPrototypeOf;
|
|
5099
5120
|
function Hn(e) {
|
|
5100
5121
|
return !!e && !!e[ht];
|
|
5101
5122
|
}
|
|
@@ -5167,9 +5188,9 @@ function du(e, t) {
|
|
|
5167
5188
|
value: e[o]
|
|
5168
5189
|
});
|
|
5169
5190
|
}
|
|
5170
|
-
return Object.create(
|
|
5191
|
+
return Object.create(Na(e), n);
|
|
5171
5192
|
} else {
|
|
5172
|
-
const n =
|
|
5193
|
+
const n = Na(e);
|
|
5173
5194
|
if (n !== null && r)
|
|
5174
5195
|
return { ...e };
|
|
5175
5196
|
const a = Object.create(n);
|
|
@@ -5198,9 +5219,9 @@ function sn(e) {
|
|
|
5198
5219
|
const t = uT[e];
|
|
5199
5220
|
return t || nt(0, e), t;
|
|
5200
5221
|
}
|
|
5201
|
-
var
|
|
5222
|
+
var Ra;
|
|
5202
5223
|
function sb() {
|
|
5203
|
-
return
|
|
5224
|
+
return Ra;
|
|
5204
5225
|
}
|
|
5205
5226
|
function pT(e, t) {
|
|
5206
5227
|
return {
|
|
@@ -5220,10 +5241,10 @@ function fu(e) {
|
|
|
5220
5241
|
mu(e), e.drafts_.forEach(dT), e.drafts_ = null;
|
|
5221
5242
|
}
|
|
5222
5243
|
function mu(e) {
|
|
5223
|
-
e ===
|
|
5244
|
+
e === Ra && (Ra = e.parent_);
|
|
5224
5245
|
}
|
|
5225
5246
|
function im(e) {
|
|
5226
|
-
return
|
|
5247
|
+
return Ra = pT(Ra, e);
|
|
5227
5248
|
}
|
|
5228
5249
|
function dT(e) {
|
|
5229
5250
|
const t = e[ht];
|
|
@@ -5380,7 +5401,7 @@ var Yu = {
|
|
|
5380
5401
|
nt(11);
|
|
5381
5402
|
},
|
|
5382
5403
|
getPrototypeOf(e) {
|
|
5383
|
-
return
|
|
5404
|
+
return Na(e.base_);
|
|
5384
5405
|
},
|
|
5385
5406
|
setPrototypeOf() {
|
|
5386
5407
|
nt(12);
|
|
@@ -5412,12 +5433,12 @@ function mT(e, t, r) {
|
|
|
5412
5433
|
function ob(e, t) {
|
|
5413
5434
|
if (!(t in e))
|
|
5414
5435
|
return;
|
|
5415
|
-
let r =
|
|
5436
|
+
let r = Na(e);
|
|
5416
5437
|
for (; r; ) {
|
|
5417
5438
|
const n = Object.getOwnPropertyDescriptor(r, t);
|
|
5418
5439
|
if (n)
|
|
5419
5440
|
return n;
|
|
5420
|
-
r =
|
|
5441
|
+
r = Na(r);
|
|
5421
5442
|
}
|
|
5422
5443
|
}
|
|
5423
5444
|
function hu(e) {
|
|
@@ -5589,7 +5610,7 @@ const wT = (e, t) => ["pipetteId", "volume", "labwareId", "wellName"].every((n)
|
|
|
5589
5610
|
function AT(e, t, r) {
|
|
5590
5611
|
const { pipetteId: n, volume: a } = e, { robotState: s } = r, o = s.pipettes[n].nozzles;
|
|
5591
5612
|
let l = t.pipetteEntities[n].spec.channels;
|
|
5592
|
-
o ===
|
|
5613
|
+
o === Tt ? l = 8 : o === ft && (l = 1), qn(l).forEach((c) => {
|
|
5593
5614
|
const u = s.liquidState.pipettes[n][c] ?? {}, p = u[st]?.volume ?? 0;
|
|
5594
5615
|
s.liquidState.pipettes[n][c] = {
|
|
5595
5616
|
...u,
|
|
@@ -5658,7 +5679,7 @@ function OT() {
|
|
|
5658
5679
|
return Yl = e, Yl;
|
|
5659
5680
|
}
|
|
5660
5681
|
var Xl, mm;
|
|
5661
|
-
function
|
|
5682
|
+
function NT() {
|
|
5662
5683
|
if (mm) return Xl;
|
|
5663
5684
|
mm = 1;
|
|
5664
5685
|
var e = LT(), t = ET(), r = OT();
|
|
@@ -5668,10 +5689,10 @@ function RT() {
|
|
|
5668
5689
|
return Xl = n, Xl;
|
|
5669
5690
|
}
|
|
5670
5691
|
var Zl, hm;
|
|
5671
|
-
function
|
|
5692
|
+
function RT() {
|
|
5672
5693
|
if (hm) return Zl;
|
|
5673
5694
|
hm = 1;
|
|
5674
|
-
var e =
|
|
5695
|
+
var e = NT();
|
|
5675
5696
|
function t(r, n) {
|
|
5676
5697
|
var a = r == null ? 0 : r.length;
|
|
5677
5698
|
return !!a && e(r, n, 0) > -1;
|
|
@@ -5711,7 +5732,7 @@ var tc, wm;
|
|
|
5711
5732
|
function qT() {
|
|
5712
5733
|
if (wm) return tc;
|
|
5713
5734
|
wm = 1;
|
|
5714
|
-
var e = iy(), t =
|
|
5735
|
+
var e = iy(), t = RT(), r = PT(), n = cy(), a = DT(), s = Lu(), o = 200;
|
|
5715
5736
|
function i(l, c, u) {
|
|
5716
5737
|
var p = -1, d = t, h = l.length, f = !0, m = [], b = m;
|
|
5717
5738
|
if (u)
|
|
@@ -5755,7 +5776,7 @@ const MT = /* @__PURE__ */ Xe(FT), Zu = (e) => {
|
|
|
5755
5776
|
switch (t) {
|
|
5756
5777
|
case Cr:
|
|
5757
5778
|
return 12;
|
|
5758
|
-
case
|
|
5779
|
+
case Tt:
|
|
5759
5780
|
return 8;
|
|
5760
5781
|
case ft:
|
|
5761
5782
|
return 1;
|
|
@@ -5966,7 +5987,7 @@ function zT(e, t, r) {
|
|
|
5966
5987
|
const i = o.tipState, l = t.pipetteEntities[n].spec, c = o.pipettes[n].nozzles, u = Lb(c, l), p = (h, f) => h.find((m) => m.includes(f)), d = t.labwareEntities[s]?.def;
|
|
5967
5988
|
d == null || !Pr(d) ? console.warn(
|
|
5968
5989
|
`forDropTip expected ${s} to have definition and to be a tiprack`
|
|
5969
|
-
) : (u === ft ? i.tipracks[s][a] = kr : u ===
|
|
5990
|
+
) : (u === ft ? i.tipracks[s][a] = kr : u === Tt ? (p(d.ordering, a) ?? []).forEach(
|
|
5970
5991
|
(f) => i.tipracks[s][f] = kr
|
|
5971
5992
|
) : u === Ye ? l.channels === 96 ? d.ordering.reduce(
|
|
5972
5993
|
(f, m) => f.concat(m),
|
|
@@ -6101,10 +6122,10 @@ function XT() {
|
|
|
6101
6122
|
e.exports = l;
|
|
6102
6123
|
})(ka, ka.exports)), ka.exports;
|
|
6103
6124
|
}
|
|
6104
|
-
var pc,
|
|
6125
|
+
var pc, Nm;
|
|
6105
6126
|
function ZT() {
|
|
6106
|
-
if (
|
|
6107
|
-
|
|
6127
|
+
if (Nm) return pc;
|
|
6128
|
+
Nm = 1;
|
|
6108
6129
|
function e(t, r) {
|
|
6109
6130
|
var n = -1, a = t.length;
|
|
6110
6131
|
for (r || (r = Array(a)); ++n < a; )
|
|
@@ -6113,10 +6134,10 @@ function ZT() {
|
|
|
6113
6134
|
}
|
|
6114
6135
|
return pc = e, pc;
|
|
6115
6136
|
}
|
|
6116
|
-
var dc,
|
|
6137
|
+
var dc, Rm;
|
|
6117
6138
|
function JT() {
|
|
6118
|
-
if (
|
|
6119
|
-
|
|
6139
|
+
if (Rm) return dc;
|
|
6140
|
+
Rm = 1;
|
|
6120
6141
|
var e = Za(), t = Eu();
|
|
6121
6142
|
function r(n, a) {
|
|
6122
6143
|
return e(n, t(n), a);
|
|
@@ -6309,7 +6330,7 @@ var Lc, Gm;
|
|
|
6309
6330
|
function cS() {
|
|
6310
6331
|
if (Gm) return Lc;
|
|
6311
6332
|
Gm = 1;
|
|
6312
|
-
var e = lS(), t =
|
|
6333
|
+
var e = lS(), t = Nu(), r = Ru(), n = r && r.isMap, a = n ? t(n) : e;
|
|
6313
6334
|
return Lc = a, Lc;
|
|
6314
6335
|
}
|
|
6315
6336
|
var Ec, Wm;
|
|
@@ -6326,23 +6347,23 @@ var Oc, Km;
|
|
|
6326
6347
|
function pS() {
|
|
6327
6348
|
if (Km) return Oc;
|
|
6328
6349
|
Km = 1;
|
|
6329
|
-
var e = uS(), t =
|
|
6350
|
+
var e = uS(), t = Nu(), r = Ru(), n = r && r.isSet, a = n ? t(n) : e;
|
|
6330
6351
|
return Oc = a, Oc;
|
|
6331
6352
|
}
|
|
6332
|
-
var
|
|
6353
|
+
var Nc, Ym;
|
|
6333
6354
|
function pb() {
|
|
6334
|
-
if (Ym) return
|
|
6355
|
+
if (Ym) return Nc;
|
|
6335
6356
|
Ym = 1;
|
|
6336
|
-
var e = ku(), t = HT(), r = Ju(), n = GT(), a = YT(), s = XT(), o = ZT(), i = JT(), l = QT(), c = wy(), u = tp(), p = Ga(), d = eS(), h = sS(), f = iS(), m = ot(), b = Bs(), _ = cS(), y = yr(), A = pS(), T = Ha(), g = Qu(), S = 1, v = 2, I = 4, w = "[object Arguments]", E = "[object Array]", O = "[object Boolean]", F = "[object Date]", M = "[object Error]", ee = "[object Function]", de = "[object GeneratorFunction]", _e = "[object Map]", ae = "[object Number]", Ie = "[object Object]", Ce = "[object RegExp]", Ze = "[object Set]", je = "[object String]", te = "[object Symbol]", ve = "[object WeakMap]", Je = "[object ArrayBuffer]", De = "[object DataView]", Te = "[object Float32Array]", X = "[object Float64Array]",
|
|
6337
|
-
z[w] = z[E] = z[Je] = z[De] = z[O] = z[F] = z[Te] = z[X] = z[
|
|
6357
|
+
var e = ku(), t = HT(), r = Ju(), n = GT(), a = YT(), s = XT(), o = ZT(), i = JT(), l = QT(), c = wy(), u = tp(), p = Ga(), d = eS(), h = sS(), f = iS(), m = ot(), b = Bs(), _ = cS(), y = yr(), A = pS(), T = Ha(), g = Qu(), S = 1, v = 2, I = 4, w = "[object Arguments]", E = "[object Array]", O = "[object Boolean]", F = "[object Date]", M = "[object Error]", ee = "[object Function]", de = "[object GeneratorFunction]", _e = "[object Map]", ae = "[object Number]", Ie = "[object Object]", Ce = "[object RegExp]", Ze = "[object Set]", je = "[object String]", te = "[object Symbol]", ve = "[object WeakMap]", Je = "[object ArrayBuffer]", De = "[object DataView]", Te = "[object Float32Array]", X = "[object Float64Array]", W = "[object Int8Array]", R = "[object Int16Array]", N = "[object Int32Array]", x = "[object Uint8Array]", D = "[object Uint8ClampedArray]", se = "[object Uint16Array]", $ = "[object Uint32Array]", z = {};
|
|
6358
|
+
z[w] = z[E] = z[Je] = z[De] = z[O] = z[F] = z[Te] = z[X] = z[W] = z[R] = z[N] = z[_e] = z[ae] = z[Ie] = z[Ce] = z[Ze] = z[je] = z[te] = z[x] = z[D] = z[se] = z[$] = !0, z[M] = z[ee] = z[ve] = !1;
|
|
6338
6359
|
function V(q, U, ue, xe, it, He) {
|
|
6339
|
-
var pe, lt = U & S,
|
|
6360
|
+
var pe, lt = U & S, At = U & v, $t = U & I;
|
|
6340
6361
|
if (ue && (pe = it ? ue(q, xe, it, He) : ue(q)), pe !== void 0)
|
|
6341
6362
|
return pe;
|
|
6342
6363
|
if (!y(q))
|
|
6343
6364
|
return q;
|
|
6344
|
-
var
|
|
6345
|
-
if (
|
|
6365
|
+
var vt = m(q);
|
|
6366
|
+
if (vt) {
|
|
6346
6367
|
if (pe = d(q), !lt)
|
|
6347
6368
|
return o(q, pe);
|
|
6348
6369
|
} else {
|
|
@@ -6350,8 +6371,8 @@ function pb() {
|
|
|
6350
6371
|
if (b(q))
|
|
6351
6372
|
return s(q, lt);
|
|
6352
6373
|
if (Oe == Ie || Oe == w || ct && !it) {
|
|
6353
|
-
if (pe =
|
|
6354
|
-
return
|
|
6374
|
+
if (pe = At || ct ? {} : f(q), !lt)
|
|
6375
|
+
return At ? l(q, a(pe, q)) : i(q, n(pe, q));
|
|
6355
6376
|
} else {
|
|
6356
6377
|
if (!z[Oe])
|
|
6357
6378
|
return it ? q : {};
|
|
@@ -6367,16 +6388,16 @@ function pb() {
|
|
|
6367
6388
|
}) : _(q) && q.forEach(function(re, ne) {
|
|
6368
6389
|
pe.set(ne, V(re, U, ue, ne, q, He));
|
|
6369
6390
|
});
|
|
6370
|
-
var
|
|
6391
|
+
var Ne = $t ? At ? u : c : At ? g : T, qe = vt ? void 0 : Ne(q);
|
|
6371
6392
|
return t(qe || q, function(re, ne) {
|
|
6372
6393
|
qe && (ne = re, re = q[ne]), r(pe, ne, V(re, U, ue, ne, q, He));
|
|
6373
6394
|
}), pe;
|
|
6374
6395
|
}
|
|
6375
|
-
return
|
|
6396
|
+
return Nc = V, Nc;
|
|
6376
6397
|
}
|
|
6377
|
-
var
|
|
6398
|
+
var Rc, Xm;
|
|
6378
6399
|
function db() {
|
|
6379
|
-
if (Xm) return
|
|
6400
|
+
if (Xm) return Rc;
|
|
6380
6401
|
Xm = 1;
|
|
6381
6402
|
function e(t, r, n) {
|
|
6382
6403
|
var a = -1, s = t.length;
|
|
@@ -6385,7 +6406,7 @@ function db() {
|
|
|
6385
6406
|
o[a] = t[a + r];
|
|
6386
6407
|
return o;
|
|
6387
6408
|
}
|
|
6388
|
-
return
|
|
6409
|
+
return Rc = e, Rc;
|
|
6389
6410
|
}
|
|
6390
6411
|
var Pc, Zm;
|
|
6391
6412
|
function dS() {
|
|
@@ -6603,7 +6624,7 @@ const LS = /* @__PURE__ */ Xe(kS), np = (e) => {
|
|
|
6603
6624
|
hb(a, c), s = l, a.set(t, s);
|
|
6604
6625
|
}
|
|
6605
6626
|
return { stack: s, memo: a };
|
|
6606
|
-
},
|
|
6627
|
+
}, rL = (e) => {
|
|
6607
6628
|
const { node: t, robotState: r, deckDef: n, deckConfiguration: a } = e, { stack: s } = np({ node: t, robotState: r }), { cutoutFixtures: o } = n, i = s.find(
|
|
6608
6629
|
(l) => typeof l == "object" && "addressableAreaName" in l
|
|
6609
6630
|
);
|
|
@@ -6653,7 +6674,7 @@ const LS = /* @__PURE__ */ Xe(kS), np = (e) => {
|
|
|
6653
6674
|
c.length > s.length && (s = c);
|
|
6654
6675
|
}
|
|
6655
6676
|
return s;
|
|
6656
|
-
},
|
|
6677
|
+
}, NS = (e) => {
|
|
6657
6678
|
const t = [], r = /* @__PURE__ */ new Set();
|
|
6658
6679
|
for (const n of Object.keys(e.labware)) {
|
|
6659
6680
|
if (r.has(n))
|
|
@@ -6677,7 +6698,7 @@ const LS = /* @__PURE__ */ Xe(kS), np = (e) => {
|
|
|
6677
6698
|
a
|
|
6678
6699
|
);
|
|
6679
6700
|
return c.length === 0 ? null : c[0];
|
|
6680
|
-
},
|
|
6701
|
+
}, nL = (e) => {
|
|
6681
6702
|
const { location: t, robotState: r, moduleEntities: n, deckDef: a } = e;
|
|
6682
6703
|
if (t === "offDeck" || t === "systemLocation" || t === "wasteChuteLocation")
|
|
6683
6704
|
return null;
|
|
@@ -6695,7 +6716,7 @@ const LS = /* @__PURE__ */ Xe(kS), np = (e) => {
|
|
|
6695
6716
|
});
|
|
6696
6717
|
}
|
|
6697
6718
|
return null;
|
|
6698
|
-
},
|
|
6719
|
+
}, RS = (e) => {
|
|
6699
6720
|
const { deckConfiguration: t, deckDefinition: r } = e;
|
|
6700
6721
|
return t.reduce(
|
|
6701
6722
|
(n, {
|
|
@@ -6708,13 +6729,13 @@ const LS = /* @__PURE__ */ Xe(kS), np = (e) => {
|
|
|
6708
6729
|
}), n),
|
|
6709
6730
|
/* @__PURE__ */ new Set()
|
|
6710
6731
|
);
|
|
6711
|
-
},
|
|
6712
|
-
const { robotState: t, deckConfiguration: r, deckDefinition: n, moduleEntities: a } = e, s =
|
|
6732
|
+
}, aL = (e) => {
|
|
6733
|
+
const { robotState: t, deckConfiguration: r, deckDefinition: n, moduleEntities: a } = e, s = RS({
|
|
6713
6734
|
deckConfiguration: r,
|
|
6714
6735
|
deckDefinition: n
|
|
6715
6736
|
}), o = new Set(
|
|
6716
6737
|
s
|
|
6717
|
-
), i =
|
|
6738
|
+
), i = NS(t);
|
|
6718
6739
|
for (const l of i) {
|
|
6719
6740
|
const c = Wu(l);
|
|
6720
6741
|
if (typeof c == "object" && "addressableAreaName" in c) {
|
|
@@ -6801,7 +6822,7 @@ const LS = /* @__PURE__ */ Xe(kS), np = (e) => {
|
|
|
6801
6822
|
e,
|
|
6802
6823
|
(a, s) => n[s] != null ? { ...a, contains: n[s] } : a
|
|
6803
6824
|
);
|
|
6804
|
-
},
|
|
6825
|
+
}, sL = (e, t, r) => {
|
|
6805
6826
|
const n = Object.keys(e.labware), a = new Set(n);
|
|
6806
6827
|
let s = fr(e.labware, (o, i) => {
|
|
6807
6828
|
const l = o.stackedOnNode ?? CS({
|
|
@@ -6822,7 +6843,7 @@ function FS(e, t, r) {
|
|
|
6822
6843
|
const { labwareId: n, newLocation: a } = e, { robotState: s } = r, { labwareEntities: o } = t, { modules: i, labware: l } = s;
|
|
6823
6844
|
if (l[n] == null)
|
|
6824
6845
|
return;
|
|
6825
|
-
const c =
|
|
6846
|
+
const c = Y(l[n].stack), u = Gu(
|
|
6826
6847
|
l,
|
|
6827
6848
|
c,
|
|
6828
6849
|
n
|
|
@@ -7003,7 +7024,7 @@ function BS(e, t, r) {
|
|
|
7003
7024
|
) : m.forEach(function(b) {
|
|
7004
7025
|
l.tipracks[a][b] = ce;
|
|
7005
7026
|
});
|
|
7006
|
-
} else if (p ===
|
|
7027
|
+
} else if (p === Tt) {
|
|
7007
7028
|
const m = d(i.ordering, s);
|
|
7008
7029
|
m == null && console.error(`Invalid primary well for tip pickup: ${s}`), m?.forEach(function(b) {
|
|
7009
7030
|
l.tipracks[a][b] = ce;
|
|
@@ -7173,13 +7194,13 @@ const tA = (e, t) => {
|
|
|
7173
7194
|
);
|
|
7174
7195
|
}
|
|
7175
7196
|
}, rA = (e, t, r) => {
|
|
7176
|
-
const { moduleId: n } = e, { robotState: a } = r, s =
|
|
7197
|
+
const { moduleId: n } = e, { robotState: a } = r, s = St(a, n);
|
|
7177
7198
|
s != null && (s.ventStatus = ny);
|
|
7178
7199
|
}, nA = (e, t, r) => {
|
|
7179
|
-
const { moduleId: n } = e, { robotState: a } = r, s =
|
|
7200
|
+
const { moduleId: n } = e, { robotState: a } = r, s = St(a, n);
|
|
7180
7201
|
s != null && (s.ventStatus = Cs);
|
|
7181
7202
|
}, aA = (e, t, r) => {
|
|
7182
|
-
const { moduleId: n, gaugePressure: a, duration: s, ventAfter: o = !0, taskId: i } = e, { robotState: l } = r, { labwareEntities: c } = t, u =
|
|
7203
|
+
const { moduleId: n, gaugePressure: a, duration: s, ventAfter: o = !0, taskId: i } = e, { robotState: l } = r, { labwareEntities: c } = t, u = St(l, n);
|
|
7183
7204
|
u != null && (ap(n, l, c), s == null || i == null ? u.currentPumpActivity = {
|
|
7184
7205
|
type: "indefiniteHold",
|
|
7185
7206
|
mode: Pp,
|
|
@@ -7193,26 +7214,26 @@ const tA = (e, t) => {
|
|
|
7193
7214
|
ventAfter: o
|
|
7194
7215
|
}, u.numPumpActivitiesStarted++), u.ventStatus = Cs);
|
|
7195
7216
|
}, sA = (e, t, r) => {
|
|
7196
|
-
const { moduleId: n, percentPower: a, duration: s, ventAfter: o = !0, taskId: i } = e, { robotState: l } = r, { labwareEntities: c } = t, u =
|
|
7217
|
+
const { moduleId: n, percentPower: a, duration: s, ventAfter: o = !0, taskId: i } = e, { robotState: l } = r, { labwareEntities: c } = t, u = St(l, n);
|
|
7197
7218
|
u != null && (ap(n, l, c), s == null || i == null ? u.currentPumpActivity = {
|
|
7198
7219
|
type: "indefiniteHold",
|
|
7199
|
-
mode:
|
|
7220
|
+
mode: Rp,
|
|
7200
7221
|
targetPower: a
|
|
7201
7222
|
} : (u.currentPumpActivity = {
|
|
7202
7223
|
type: "timedHold",
|
|
7203
|
-
mode:
|
|
7224
|
+
mode: Rp,
|
|
7204
7225
|
targetPower: a,
|
|
7205
7226
|
durationSeconds: s,
|
|
7206
7227
|
taskId: i,
|
|
7207
7228
|
ventAfter: o
|
|
7208
7229
|
}, u.numPumpActivitiesStarted++), u.ventStatus = Cs);
|
|
7209
7230
|
}, oA = (e, t, r) => {
|
|
7210
|
-
const { moduleId: n } = e, { robotState: a } = r, s =
|
|
7231
|
+
const { moduleId: n } = e, { robotState: a } = r, s = St(a, n);
|
|
7211
7232
|
s != null && (s.currentPumpActivity = {
|
|
7212
7233
|
type: "pumpDeactivated"
|
|
7213
7234
|
});
|
|
7214
7235
|
}, iA = (e, t, r) => {
|
|
7215
|
-
const { moduleId: n, steps: a, taskId: s, ventAfter: o = !0 } = e, { robotState: i } = r, { labwareEntities: l } = t, c =
|
|
7236
|
+
const { moduleId: n, steps: a, taskId: s, ventAfter: o = !0 } = e, { robotState: i } = r, { labwareEntities: l } = t, c = St(i, n);
|
|
7216
7237
|
c == null || s == null || (ap(n, i, l), c.currentPumpActivity = {
|
|
7217
7238
|
type: "profile",
|
|
7218
7239
|
profileElements: a,
|
|
@@ -7639,7 +7660,7 @@ function EA(e, t, r) {
|
|
|
7639
7660
|
}
|
|
7640
7661
|
function OA(e, t, r) {
|
|
7641
7662
|
const { robotState: n } = r, { moduleId: a } = e, s = nr(n, a);
|
|
7642
|
-
Ab(s, null,
|
|
7663
|
+
Ab(s, null, Rs);
|
|
7643
7664
|
}
|
|
7644
7665
|
function vb(e, t, r) {
|
|
7645
7666
|
if (!e)
|
|
@@ -8022,7 +8043,7 @@ function vb(e, t, r) {
|
|
|
8022
8043
|
);
|
|
8023
8044
|
}
|
|
8024
8045
|
}
|
|
8025
|
-
function
|
|
8046
|
+
function NA(e, t, r) {
|
|
8026
8047
|
return lb({
|
|
8027
8048
|
warnings: [],
|
|
8028
8049
|
robotState: r
|
|
@@ -8045,7 +8066,7 @@ function kb(e, t, r) {
|
|
|
8045
8066
|
});
|
|
8046
8067
|
});
|
|
8047
8068
|
}
|
|
8048
|
-
const
|
|
8069
|
+
const oL = (e, t, r) => {
|
|
8049
8070
|
const n = e.reduce(
|
|
8050
8071
|
(a, s, o) => {
|
|
8051
8072
|
const i = a.timeline.length === 0 ? r : Wu(a.timeline).robotState;
|
|
@@ -8061,7 +8082,7 @@ const rL = (e, t, r) => {
|
|
|
8061
8082
|
errors: l.errors
|
|
8062
8083
|
};
|
|
8063
8084
|
const u = cb(l.commands).reduce(
|
|
8064
|
-
(d, h) =>
|
|
8085
|
+
(d, h) => NA(
|
|
8065
8086
|
h,
|
|
8066
8087
|
t,
|
|
8067
8088
|
d.robotState
|
|
@@ -8097,7 +8118,7 @@ const rL = (e, t, r) => {
|
|
|
8097
8118
|
};
|
|
8098
8119
|
}, Ja = (e, t) => {
|
|
8099
8120
|
const r = t[e]?.stack;
|
|
8100
|
-
return r != null ?
|
|
8121
|
+
return r != null ? Y(r) : "";
|
|
8101
8122
|
}, Qa = (e) => {
|
|
8102
8123
|
if (e.type === Kt) {
|
|
8103
8124
|
const t = e;
|
|
@@ -8112,7 +8133,7 @@ const rL = (e, t, r) => {
|
|
|
8112
8133
|
const { pipette: t, labware: r, invariantContext: n, prevRobotState: a } = e;
|
|
8113
8134
|
if (n.config.OT_PD_DISABLE_MODULE_RESTRICTIONS)
|
|
8114
8135
|
return !1;
|
|
8115
|
-
const s = t ? n.pipetteEntities[t] : null, o = r ?
|
|
8136
|
+
const s = t ? n.pipetteEntities[t] : null, o = r ? Y(a.labware[r]?.stack) : null;
|
|
8116
8137
|
if (!t || !r || !s || !o)
|
|
8117
8138
|
return !1;
|
|
8118
8139
|
const i = Object.keys(n.moduleEntities).some(
|
|
@@ -8180,9 +8201,9 @@ const rL = (e, t, r) => {
|
|
|
8180
8201
|
t[r]?.stack
|
|
8181
8202
|
), a = n && e[n].moduleState;
|
|
8182
8203
|
return !!(a && a.type === Ue && a.lidOpen !== !0);
|
|
8183
|
-
},
|
|
8184
|
-
function
|
|
8185
|
-
const { labware: n, modules: a, pipettes: s, commands: o, liquids: i } = e, l = t.protocolType === "python" ? t.apiVersion : null, c = l != null && l[0] >= PA && l[1] >= CA, u = t.protocolType === "json" && r >=
|
|
8204
|
+
}, iL = (e) => e.commandCreatorFnName !== "delay" && e.commandCreatorFnName !== "engageMagnet" && e.commandCreatorFnName !== "disengageMagnet" && e.commandCreatorFnName !== "setTemperature" && e.commandCreatorFnName !== "deactivateTemperature" && "pipette" in e ? e.pipette : null, lL = (e) => e.commandCreatorFnName === "delay" || e.commandCreatorFnName === "engageMagnet" || e.commandCreatorFnName === "disengageMagnet" || e.commandCreatorFnName === "setTemperature" || e.commandCreatorFnName === "deactivateTemperature", RA = /* @__PURE__ */ new Date("2025-03-19T00:00:00Z"), PA = 2, CA = 22;
|
|
8205
|
+
function cL(e, t, r) {
|
|
8206
|
+
const { labware: n, modules: a, pipettes: s, commands: o, liquids: i } = e, l = t.protocolType === "python" ? t.apiVersion : null, c = l != null && l[0] >= PA && l[1] >= CA, u = t.protocolType === "json" && r >= RA, p = n_(o), d = i.reduce((y, A) => {
|
|
8186
8207
|
const { id: T, description: g, displayName: S, displayColor: v } = A;
|
|
8187
8208
|
return {
|
|
8188
8209
|
...y,
|
|
@@ -8337,7 +8358,7 @@ const DA = {
|
|
|
8337
8358
|
C3: "C4",
|
|
8338
8359
|
D3: "D4"
|
|
8339
8360
|
};
|
|
8340
|
-
function
|
|
8361
|
+
function uL(e, t) {
|
|
8341
8362
|
const r = e.reduce(
|
|
8342
8363
|
(o, i) => i.commandType === "loadPipette" && i.result != null ? {
|
|
8343
8364
|
...o,
|
|
@@ -8515,7 +8536,7 @@ const dh = (e, t, r) => {
|
|
|
8515
8536
|
r.adapterLabwareId,
|
|
8516
8537
|
r.lidLabwareId
|
|
8517
8538
|
].filter((n) => n != null)
|
|
8518
|
-
) ?? [], Lb = (e, t) => e ?? (t.channels === 1 ? ft : t.channels === 96 ? Ye :
|
|
8539
|
+
) ?? [], Lb = (e, t) => e ?? (t.channels === 1 ? ft : t.channels === 96 ? Ye : Tt);
|
|
8519
8540
|
var Wc, mh;
|
|
8520
8541
|
function qA() {
|
|
8521
8542
|
if (mh) return Wc;
|
|
@@ -8554,7 +8575,7 @@ const ts = /* @__PURE__ */ Xe(FA), rs = (e, t) => ts(
|
|
|
8554
8575
|
e,
|
|
8555
8576
|
(a, s) => gu(
|
|
8556
8577
|
r,
|
|
8557
|
-
|
|
8578
|
+
Y(a.stack)
|
|
8558
8579
|
) && i_(
|
|
8559
8580
|
t[s].def,
|
|
8560
8581
|
l_
|
|
@@ -8854,7 +8875,7 @@ const KA = (e, t) => {
|
|
|
8854
8875
|
(n) => !n || n.volume <= 0
|
|
8855
8876
|
)
|
|
8856
8877
|
};
|
|
8857
|
-
},
|
|
8878
|
+
}, pL = (e, t) => {
|
|
8858
8879
|
const r = WA(t);
|
|
8859
8880
|
return _t(
|
|
8860
8881
|
r,
|
|
@@ -8867,7 +8888,7 @@ const KA = (e, t) => {
|
|
|
8867
8888
|
},
|
|
8868
8889
|
{}
|
|
8869
8890
|
);
|
|
8870
|
-
},
|
|
8891
|
+
}, dL = (e, t) => {
|
|
8871
8892
|
const r = {};
|
|
8872
8893
|
return t.forEach((n) => {
|
|
8873
8894
|
const a = e != null ? Object.values(e).reduce(
|
|
@@ -8882,14 +8903,14 @@ const KA = (e, t) => {
|
|
|
8882
8903
|
) : {};
|
|
8883
8904
|
r[n] = a;
|
|
8884
8905
|
}), r;
|
|
8885
|
-
},
|
|
8906
|
+
}, fL = (e) => {
|
|
8886
8907
|
const t = e.flatMap(
|
|
8887
8908
|
(r) => r == null ? [] : Object.values(r).flatMap(
|
|
8888
8909
|
(n) => n.groupIds.filter((a) => a !== st)
|
|
8889
8910
|
)
|
|
8890
8911
|
);
|
|
8891
8912
|
return Array.from(new Set(t));
|
|
8892
|
-
},
|
|
8913
|
+
}, mL = (e) => {
|
|
8893
8914
|
const t = e != null ? Object.values(e).flatMap((r) => r.groupIds)?.filter((r) => r !== st) : [];
|
|
8894
8915
|
return Array.from(new Set(t));
|
|
8895
8916
|
}, YA = "#737578", XA = (e) => {
|
|
@@ -8900,7 +8921,7 @@ const KA = (e, t) => {
|
|
|
8900
8921
|
}, ZA = (e, t) => {
|
|
8901
8922
|
const r = e.filter((n) => n !== st);
|
|
8902
8923
|
return r.length === 0 ? null : r.length === 1 ? t[r[0]] ?? XA(r[0]) : YA;
|
|
8903
|
-
},
|
|
8924
|
+
}, hL = (e, t) => _t(
|
|
8904
8925
|
e,
|
|
8905
8926
|
(r, n, a) => {
|
|
8906
8927
|
const s = ZA(n.groupIds, t);
|
|
@@ -8928,12 +8949,12 @@ function QA() {
|
|
|
8928
8949
|
return tu = n, tu;
|
|
8929
8950
|
}
|
|
8930
8951
|
var ev = QA();
|
|
8931
|
-
const tv = /* @__PURE__ */ Xe(ev), rv = "2.31",
|
|
8932
|
-
function
|
|
8952
|
+
const tv = /* @__PURE__ */ Xe(ev), rv = "2.31", yL = "9.0.1";
|
|
8953
|
+
function bL() {
|
|
8933
8954
|
return ["import json", "from opentrons import protocol_api, types"].join(`
|
|
8934
8955
|
`);
|
|
8935
8956
|
}
|
|
8936
|
-
function
|
|
8957
|
+
function _L(e) {
|
|
8937
8958
|
function t(n) {
|
|
8938
8959
|
return n ? new Date(n).toISOString() : "";
|
|
8939
8960
|
}
|
|
@@ -8955,7 +8976,7 @@ function mL(e) {
|
|
|
8955
8976
|
);
|
|
8956
8977
|
return `metadata = ${zn(r)}`;
|
|
8957
8978
|
}
|
|
8958
|
-
function
|
|
8979
|
+
function wL(e) {
|
|
8959
8980
|
const r = {
|
|
8960
8981
|
robotType: {
|
|
8961
8982
|
// values from api/src/opentrons/protocols/parse.py
|
|
@@ -9001,7 +9022,7 @@ function av(e, t, r) {
|
|
|
9001
9022
|
].join(`,
|
|
9002
9023
|
`);
|
|
9003
9024
|
return `${l} = ${m}.load_adapter(
|
|
9004
|
-
${
|
|
9025
|
+
${G(y)},
|
|
9005
9026
|
)`;
|
|
9006
9027
|
} else {
|
|
9007
9028
|
const y = [
|
|
@@ -9010,7 +9031,7 @@ ${Y(y)},
|
|
|
9010
9031
|
].join(`,
|
|
9011
9032
|
`);
|
|
9012
9033
|
return `${l} = ${m}.load_adapter_from_definition(
|
|
9013
|
-
${
|
|
9034
|
+
${G(y)},
|
|
9014
9035
|
)`;
|
|
9015
9036
|
}
|
|
9016
9037
|
}).join(`
|
|
@@ -9027,7 +9048,7 @@ const sv = (e, t, r) => e.reduce(
|
|
|
9027
9048
|
) || u != null, d = o.parameters.loadName;
|
|
9028
9049
|
if (!p)
|
|
9029
9050
|
return n;
|
|
9030
|
-
const h = u != null ? t[u]?.pythonName :
|
|
9051
|
+
const h = u != null ? t[u]?.pythonName : Y(i), f = i.length - (u != null ? 2 : 1);
|
|
9031
9052
|
if (!(h in n))
|
|
9032
9053
|
return {
|
|
9033
9054
|
...n,
|
|
@@ -9048,7 +9069,7 @@ const sv = (e, t, r) => e.reduce(
|
|
|
9048
9069
|
const l = Object.values(e).some(
|
|
9049
9070
|
({ pythonName: f }) => f === s
|
|
9050
9071
|
), c = `load_name=${P(o)}`, u = `location=${l ? s : P(s)}`, p = `quantity=${i}`, d = [c, u, p].join(`,
|
|
9051
|
-
`), h =
|
|
9072
|
+
`), h = G(d);
|
|
9052
9073
|
return `lid_stack_${s} = ${ge}.load_lid_stack(
|
|
9053
9074
|
${h},
|
|
9054
9075
|
)`;
|
|
@@ -9074,7 +9095,7 @@ function lv(e, t, r, n, a) {
|
|
|
9074
9095
|
(M) => n[M.id].stack[1] === u
|
|
9075
9096
|
), y = a[u] != null && a[u] !== h.displayName, A = n[u].stack.includes(
|
|
9076
9097
|
mt
|
|
9077
|
-
), T = n[u].stack[1], g =
|
|
9098
|
+
), T = n[u].stack[1], g = Y(n[u].stack), S = Object.entries(e).find(
|
|
9078
9099
|
([M, ee]) => ee.slot === g && ee.moduleState.type === Ge
|
|
9079
9100
|
), v = t[T] != null || g === S?.[1].slot && !A, I = r[T] != null;
|
|
9080
9101
|
let w, E;
|
|
@@ -9099,7 +9120,7 @@ function lv(e, t, r, n, a) {
|
|
|
9099
9120
|
return [
|
|
9100
9121
|
...l,
|
|
9101
9122
|
`${d} = ${w}.load_labware(
|
|
9102
|
-
${
|
|
9123
|
+
${G(M)},
|
|
9103
9124
|
)`
|
|
9104
9125
|
];
|
|
9105
9126
|
} else {
|
|
@@ -9112,7 +9133,7 @@ ${Y(M)},
|
|
|
9112
9133
|
return [
|
|
9113
9134
|
...l,
|
|
9114
9135
|
`${d} = ${w}.load_labware_from_definition(
|
|
9115
|
-
${
|
|
9136
|
+
${G(M)},
|
|
9116
9137
|
)`
|
|
9117
9138
|
];
|
|
9118
9139
|
}
|
|
@@ -9139,7 +9160,7 @@ function uv(e) {
|
|
|
9139
9160
|
].join(`,
|
|
9140
9161
|
`);
|
|
9141
9162
|
return `${n} = ${ge}.define_liquid(
|
|
9142
|
-
${
|
|
9163
|
+
${G(i)},
|
|
9143
9164
|
)`;
|
|
9144
9165
|
}).join(`
|
|
9145
9166
|
`);
|
|
@@ -9174,7 +9195,7 @@ volume=${i},
|
|
|
9174
9195
|
`
|
|
9175
9196
|
].join();
|
|
9176
9197
|
return `${s}.load_liquid(
|
|
9177
|
-
${
|
|
9198
|
+
${G(h)})`;
|
|
9178
9199
|
}).join(`
|
|
9179
9200
|
`);
|
|
9180
9201
|
return a ? `# Load Liquids:
|
|
@@ -9223,7 +9244,7 @@ ${t.python || "pass"}`;
|
|
|
9223
9244
|
|
|
9224
9245
|
`);
|
|
9225
9246
|
}
|
|
9226
|
-
function
|
|
9247
|
+
function gL(e, t, r, n, a, s, o) {
|
|
9227
9248
|
const {
|
|
9228
9249
|
moduleEntities: i,
|
|
9229
9250
|
labwareEntities: l,
|
|
@@ -9262,9 +9283,9 @@ function yL(e, t, r, n, a, s, o) {
|
|
|
9262
9283
|
|
|
9263
9284
|
`) || "pass";
|
|
9264
9285
|
return `def run(${ge}: protocol_api.ProtocolContext) -> None:
|
|
9265
|
-
${
|
|
9286
|
+
${G(_)}`;
|
|
9266
9287
|
}
|
|
9267
|
-
function
|
|
9288
|
+
function IL(e) {
|
|
9268
9289
|
const t = Object.values(e).filter((r) => !Ls(r.def)).map((r) => r.def);
|
|
9269
9290
|
if (t.length > 0) {
|
|
9270
9291
|
const r = Object.fromEntries(
|
|
@@ -9300,7 +9321,7 @@ const ip = (e) => {
|
|
|
9300
9321
|
...Object.entries(r),
|
|
9301
9322
|
...d.flatMap((m) => Object.entries(m))
|
|
9302
9323
|
].filter(
|
|
9303
|
-
([m, b]) =>
|
|
9324
|
+
([m, b]) => Y(b.stack) === p && !b.stack.includes(mt)
|
|
9304
9325
|
);
|
|
9305
9326
|
if (h.length === 0) {
|
|
9306
9327
|
if (f.length === 0)
|
|
@@ -9327,7 +9348,7 @@ const ip = (e) => {
|
|
|
9327
9348
|
].join(`,
|
|
9328
9349
|
`);
|
|
9329
9350
|
return `${u}.set_stored_labware(
|
|
9330
|
-
${
|
|
9351
|
+
${G(_)}
|
|
9331
9352
|
)`;
|
|
9332
9353
|
} else {
|
|
9333
9354
|
const m = Object.values(h).filter((T) => !t[T[0]]?.def.allowedRoles?.includes("lid")).map((T) => t[T[0]].pythonName), _ = Uu(m, 4).map((T) => Hs + T.join(", ")).join(`,
|
|
@@ -9336,15 +9357,52 @@ ${_}
|
|
|
9336
9357
|
`}],
|
|
9337
9358
|
`;
|
|
9338
9359
|
return `${u}.set_stored_labware_items(
|
|
9339
|
-
${
|
|
9360
|
+
${G(A)})`;
|
|
9340
9361
|
}
|
|
9341
9362
|
}
|
|
9342
9363
|
}).filter(Boolean);
|
|
9343
9364
|
return o.length > 0 ? `# Set Stored Labware:
|
|
9344
9365
|
${o.join(`
|
|
9345
9366
|
`).trimStart()}` : "";
|
|
9346
|
-
}, _v =
|
|
9347
|
-
|
|
9367
|
+
}, _v = {
|
|
9368
|
+
boolean: "add_bool",
|
|
9369
|
+
int: "add_int",
|
|
9370
|
+
float: "add_float",
|
|
9371
|
+
string: "add_str",
|
|
9372
|
+
csv: "add_csv_file"
|
|
9373
|
+
};
|
|
9374
|
+
function TL(e) {
|
|
9375
|
+
const t = Object.values(e).map((r) => {
|
|
9376
|
+
const n = "choices" in r ? r.choices : void 0, a = {
|
|
9377
|
+
variable_name: r.variableName,
|
|
9378
|
+
display_name: r.displayName,
|
|
9379
|
+
description: r.description || void 0,
|
|
9380
|
+
// Python CSV parameters take no default
|
|
9381
|
+
default: r.type === "csv" ? void 0 : r.default,
|
|
9382
|
+
choices: n?.map((o) => ({
|
|
9383
|
+
display_name: String(o),
|
|
9384
|
+
value: o
|
|
9385
|
+
})),
|
|
9386
|
+
..."minimum" in r ? {
|
|
9387
|
+
minimum: r.minimum,
|
|
9388
|
+
maximum: r.maximum,
|
|
9389
|
+
// unit is only valid with a min/max range
|
|
9390
|
+
unit: n == null ? r.unit : void 0
|
|
9391
|
+
} : {}
|
|
9392
|
+
}, s = Object.entries(a).filter(([, o]) => o != null).map(([o, i]) => `${o}=${It(i)}`).join(`,
|
|
9393
|
+
`);
|
|
9394
|
+
return `parameters.${_v[r.type]}(
|
|
9395
|
+
${G(s)},
|
|
9396
|
+
)`;
|
|
9397
|
+
}).join(`
|
|
9398
|
+
`);
|
|
9399
|
+
return t ? `def add_parameters(parameters: protocol_api.ParameterContext) -> None:
|
|
9400
|
+
${G(
|
|
9401
|
+
t
|
|
9402
|
+
)}` : "";
|
|
9403
|
+
}
|
|
9404
|
+
const wv = (e, t, r, n) => {
|
|
9405
|
+
const { spec: a } = t, s = e === Cr, o = e === Tt || e === Ye && a.channels === 8, i = n.ordering[0].length === 1;
|
|
9348
9406
|
if (s && i) {
|
|
9349
9407
|
const c = o ? `H${r.slice(1)}` : `${r.charAt(0)}12`, u = a.nozzleMap[c], p = a.nozzleMap[r], d = u.map(
|
|
9350
9408
|
(m, b) => m - p[b]
|
|
@@ -9370,19 +9428,19 @@ ${o.join(`
|
|
|
9370
9428
|
x: $n.back_left.x,
|
|
9371
9429
|
y: $n.back_left.y,
|
|
9372
9430
|
z: $n.back_left.z
|
|
9373
|
-
},
|
|
9431
|
+
}, gv = {
|
|
9374
9432
|
x: $n.front_right.x,
|
|
9375
9433
|
y: $n.front_right.y,
|
|
9376
9434
|
z: $n.front_right.z
|
|
9377
|
-
},
|
|
9435
|
+
}, Iv = 49.5, Tv = (e) => {
|
|
9378
9436
|
if (e.addressableArea?.areaType === "slot") {
|
|
9379
9437
|
const t = `cutout${e.addressableArea?.id}`;
|
|
9380
9438
|
if (t)
|
|
9381
9439
|
return t;
|
|
9382
9440
|
}
|
|
9383
9441
|
return null;
|
|
9384
|
-
},
|
|
9385
|
-
const { pipetteBoundingBoxOffsets: i } = e.spec, l =
|
|
9442
|
+
}, Sv = (e, t, r, n, a, s, o) => {
|
|
9443
|
+
const { pipetteBoundingBoxOffsets: i } = e.spec, l = wv(
|
|
9386
9444
|
s,
|
|
9387
9445
|
e,
|
|
9388
9446
|
a,
|
|
@@ -9394,18 +9452,18 @@ ${o.join(`
|
|
|
9394
9452
|
return !(r || n || a || s);
|
|
9395
9453
|
}, Ah = (e, t) => {
|
|
9396
9454
|
if (t === We) {
|
|
9397
|
-
const r =
|
|
9455
|
+
const r = Nr(t), { addressableAreas: n } = r.locations;
|
|
9398
9456
|
return n.find(
|
|
9399
9457
|
(s) => s.id.includes(e)
|
|
9400
9458
|
)?.offsetFromCutoutFixture[2] ?? 0;
|
|
9401
9459
|
}
|
|
9402
9460
|
return zh(e).dimensions.bareOverallHeight;
|
|
9403
|
-
},
|
|
9404
|
-
const t =
|
|
9461
|
+
}, Av = (e) => {
|
|
9462
|
+
const t = Nr(e);
|
|
9405
9463
|
return Object.values(t.cutoutFixtures).find(
|
|
9406
9464
|
(n) => g_.includes(n.id)
|
|
9407
9465
|
)?.height ?? 0;
|
|
9408
|
-
},
|
|
9466
|
+
}, vv = (e, t, r, n) => {
|
|
9409
9467
|
const { modules: a, labware: s } = e, { moduleEntities: o, labwareEntities: i, wasteChuteEntities: l } = t;
|
|
9410
9468
|
let c = 0;
|
|
9411
9469
|
const u = r?.addressableArea?.id;
|
|
@@ -9414,8 +9472,8 @@ ${o.join(`
|
|
|
9414
9472
|
(f) => a[f].slot === u
|
|
9415
9473
|
);
|
|
9416
9474
|
Object.values(l).find(
|
|
9417
|
-
(f) => f.location ===
|
|
9418
|
-
) && (c +=
|
|
9475
|
+
(f) => f.location === Tv(r)
|
|
9476
|
+
) && (c += Av(n)), p.length > 0 ? p.forEach((f) => {
|
|
9419
9477
|
a[f] != null && (c += Ah(
|
|
9420
9478
|
o[f].model,
|
|
9421
9479
|
n
|
|
@@ -9426,7 +9484,7 @@ ${o.join(`
|
|
|
9426
9484
|
));
|
|
9427
9485
|
}
|
|
9428
9486
|
return c;
|
|
9429
|
-
},
|
|
9487
|
+
}, kv = (e, t, r, n, a) => {
|
|
9430
9488
|
for (const s of t) {
|
|
9431
9489
|
const o = s.addressableArea?.boundingBox, i = s.position;
|
|
9432
9490
|
if (i == null || o == null)
|
|
@@ -9443,7 +9501,7 @@ ${o.join(`
|
|
|
9443
9501
|
if (Ob(
|
|
9444
9502
|
[e[0], e[1]],
|
|
9445
9503
|
[l, c]
|
|
9446
|
-
) && e[0].z != null &&
|
|
9504
|
+
) && e[0].z != null && vv(
|
|
9447
9505
|
r,
|
|
9448
9506
|
n,
|
|
9449
9507
|
s,
|
|
@@ -9452,12 +9510,12 @@ ${o.join(`
|
|
|
9452
9510
|
return { addressableAreaCausingCollision: s.addressableArea };
|
|
9453
9511
|
}
|
|
9454
9512
|
return null;
|
|
9455
|
-
},
|
|
9513
|
+
}, Lv = (e, t) => Object.values(t).find(
|
|
9456
9514
|
(r) => r.type === Ue
|
|
9457
9515
|
) ? Ob(
|
|
9458
|
-
[Sh,
|
|
9516
|
+
[Sh, gv],
|
|
9459
9517
|
[e[0], e[1]]
|
|
9460
|
-
) && e[0].x <= Sh.z : !1,
|
|
9518
|
+
) && e[0].x <= Sh.z : !1, Ev = (e, t, r, n) => {
|
|
9461
9519
|
const { wells: a } = e.def, s = a[t];
|
|
9462
9520
|
return {
|
|
9463
9521
|
x: s.x + r.x,
|
|
@@ -9483,18 +9541,18 @@ ${o.join(`
|
|
|
9483
9541
|
} = r, { labware: f, tipState: m } = t, b = u[n];
|
|
9484
9542
|
if (b == null)
|
|
9485
9543
|
return { isSafe: !0 };
|
|
9486
|
-
const { spec: _ } = b, { channels: y } = _, g = _?.displayCategory === "FLEX" ? We : Rt, S =
|
|
9544
|
+
const { spec: _ } = b, { channels: y } = _, g = _?.displayCategory === "FLEX" ? We : Rt, S = Nr(g);
|
|
9487
9545
|
if (p[a] == null || o == null || y === 1)
|
|
9488
9546
|
return { isSafe: !0 };
|
|
9489
9547
|
const v = c ? !0 : m.pipettes[n]?.hasTip ?? !1, I = c ?? m.pipettes[n]?.tiprackURI, w = I != null ? p[I] : null, E = w != null ? w.def.parameters.tipLength : 0, O = Object.values(d).map(
|
|
9490
|
-
(
|
|
9491
|
-
), F = v ? E ?? 0 : 0, M =
|
|
9492
|
-
(
|
|
9548
|
+
(N) => N.location
|
|
9549
|
+
), F = v ? E ?? 0 : 0, M = Y(f[a].stack), ee = f[a].stack.some((N) => h[N]?.type === Ue), de = Nr(We), _e = (ee ? io(f_, de) : io(M, S)) ?? [0, 0, 0], ae = ee ? de.locations.addressableAreas.find(
|
|
9550
|
+
(N) => N.id === m_
|
|
9493
9551
|
)?.offsetFromCutoutFixture ?? [0, 0, 0] : [0, 0, 0], Ie = {
|
|
9494
9552
|
x: ae[0] + _e[0],
|
|
9495
9553
|
y: ae[1] + _e[1],
|
|
9496
9554
|
z: ae[2] + _e[2]
|
|
9497
|
-
}, { def: Ce } = p[a], Ze =
|
|
9555
|
+
}, { def: Ce } = p[a], Ze = Pv({
|
|
9498
9556
|
wellTargetName: o,
|
|
9499
9557
|
primaryNozzle: i,
|
|
9500
9558
|
nozzleConfiguration: l,
|
|
@@ -9504,16 +9562,16 @@ ${o.join(`
|
|
|
9504
9562
|
x: s.x + Ze.x + Ie.x,
|
|
9505
9563
|
y: s.y + Ze.y + Ie.y,
|
|
9506
9564
|
z: (s.z ?? 0) + (Ie.z ?? 0)
|
|
9507
|
-
}, te =
|
|
9565
|
+
}, te = Ev(
|
|
9508
9566
|
p[a],
|
|
9509
9567
|
o,
|
|
9510
9568
|
je,
|
|
9511
9569
|
v
|
|
9512
|
-
), ve = w != null ?
|
|
9570
|
+
), ve = w != null ? Ov({
|
|
9513
9571
|
pipetteSpecs: _,
|
|
9514
9572
|
tiprackUri: w.labwareDefURI,
|
|
9515
9573
|
nozzles: l
|
|
9516
|
-
}) : 0, Je = p[a].def, De =
|
|
9574
|
+
}) : 0, Je = p[a].def, De = Sv(
|
|
9517
9575
|
b,
|
|
9518
9576
|
F,
|
|
9519
9577
|
te,
|
|
@@ -9528,14 +9586,14 @@ ${o.join(`
|
|
|
9528
9586
|
robotType: g
|
|
9529
9587
|
}))
|
|
9530
9588
|
return { isSafe: !1, reason: { type: "outsidePipetteExtents" } };
|
|
9531
|
-
const
|
|
9532
|
-
const x = b_(
|
|
9589
|
+
const W = (g === Rt ? h_(M) : y_(M, O)).map((N) => {
|
|
9590
|
+
const x = b_(N, S), D = io(N, S);
|
|
9533
9591
|
return {
|
|
9534
9592
|
addressableArea: x,
|
|
9535
9593
|
position: D
|
|
9536
9594
|
};
|
|
9537
9595
|
});
|
|
9538
|
-
if (
|
|
9596
|
+
if (Lv(
|
|
9539
9597
|
De,
|
|
9540
9598
|
h
|
|
9541
9599
|
))
|
|
@@ -9543,21 +9601,21 @@ ${o.join(`
|
|
|
9543
9601
|
isSafe: !1,
|
|
9544
9602
|
reason: { type: "thermocyclerLidCollision" }
|
|
9545
9603
|
};
|
|
9546
|
-
const
|
|
9604
|
+
const R = kv(
|
|
9547
9605
|
De,
|
|
9548
|
-
|
|
9606
|
+
W,
|
|
9549
9607
|
t,
|
|
9550
9608
|
r,
|
|
9551
9609
|
g
|
|
9552
9610
|
);
|
|
9553
|
-
return
|
|
9611
|
+
return R != null ? {
|
|
9554
9612
|
isSafe: !1,
|
|
9555
9613
|
reason: {
|
|
9556
9614
|
type: "adjacentAdressableAreaCollision",
|
|
9557
|
-
addressableAreaCausingCollision:
|
|
9615
|
+
addressableAreaCausingCollision: R.addressableAreaCausingCollision
|
|
9558
9616
|
}
|
|
9559
9617
|
} : { isSafe: !0 };
|
|
9560
|
-
},
|
|
9618
|
+
}, Nb = (e) => {
|
|
9561
9619
|
const {
|
|
9562
9620
|
tipState: t,
|
|
9563
9621
|
primaryNozzle: r,
|
|
@@ -9611,7 +9669,7 @@ ${o.join(`
|
|
|
9611
9669
|
(c) => t[c] !== ce
|
|
9612
9670
|
)
|
|
9613
9671
|
};
|
|
9614
|
-
if (a ===
|
|
9672
|
+
if (a === Tt) {
|
|
9615
9673
|
const c = r === jh, u = vh(s), p = l[u], d = c ? [...l].reverse() : l, h = d.indexOf(p);
|
|
9616
9674
|
return {
|
|
9617
9675
|
isSafe: d.slice(h + 1).flat().every((f) => t[f] === ce || i.includes(f)),
|
|
@@ -9636,7 +9694,7 @@ ${o.join(`
|
|
|
9636
9694
|
if (a === ft) {
|
|
9637
9695
|
const c = La(
|
|
9638
9696
|
r ?? bu({ nozzles: a, channels: n })
|
|
9639
|
-
), u =
|
|
9697
|
+
), u = Rb(
|
|
9640
9698
|
r ?? bu({ nozzles: a, channels: n })
|
|
9641
9699
|
), p = c === "H", h = u === "12" ? [...l].reverse() : l, f = h.findIndex(
|
|
9642
9700
|
(m) => m.some((b) => b === s)
|
|
@@ -9655,12 +9713,12 @@ ${o.join(`
|
|
|
9655
9713
|
};
|
|
9656
9714
|
}
|
|
9657
9715
|
return { isSafe: !1 };
|
|
9658
|
-
}, La = (e) => e.slice(0, 1),
|
|
9716
|
+
}, La = (e) => e.slice(0, 1), Rb = (e) => e.slice(1), vh = (e) => parseInt(e.slice(1)) - 1, bu = (e) => {
|
|
9659
9717
|
const { nozzles: t, channels: r } = e;
|
|
9660
9718
|
if (r === 8 && t === ft)
|
|
9661
9719
|
return "H1";
|
|
9662
9720
|
if (r === 96) {
|
|
9663
|
-
if (t ===
|
|
9721
|
+
if (t === Tt)
|
|
9664
9722
|
return "A12";
|
|
9665
9723
|
if (t === ft)
|
|
9666
9724
|
return "H12";
|
|
@@ -9668,12 +9726,12 @@ ${o.join(`
|
|
|
9668
9726
|
return "A1";
|
|
9669
9727
|
}, no = (e) => {
|
|
9670
9728
|
const { wellSets: t, nozzles: r, channels: n, primaryNozzle: a } = e;
|
|
9671
|
-
return r === Cr ? t.map((s) => s[0]) : t.map((s) => n === 96 && r === Ye ? a : r ===
|
|
9729
|
+
return r === Cr ? t.map((s) => s[0]) : t.map((s) => n === 96 && r === Ye ? a : r === Tt || n === 8 && r === Ye || n === 8 && r === Ke ? La(a) === "H" ? s[s.length - 1] : s[0] : (console.assert(
|
|
9672
9730
|
s.length === 1,
|
|
9673
9731
|
"Well set for SINGLE nozzle configuration should have exactly 1 well"
|
|
9674
9732
|
), s[0]));
|
|
9675
|
-
},
|
|
9676
|
-
const { pipetteSpecs: t, tiprackUri: r, nozzles: n } = e, { channels: a } = t, s =
|
|
9733
|
+
}, Ov = (e) => {
|
|
9734
|
+
const { pipetteSpecs: t, tiprackUri: r, nozzles: n } = e, { channels: a } = t, s = Nv(a, n), o = t.pickUpTipConfigurations.pressFit.configurationsByNozzleMap[s]?.default.tipOverlaps;
|
|
9677
9735
|
if (o == null)
|
|
9678
9736
|
return console.error(
|
|
9679
9737
|
`No tip overlaps found for ${n} and ${s} overlap.`
|
|
@@ -9682,7 +9740,7 @@ ${o.join(`
|
|
|
9682
9740
|
...Object.keys(o).map((l) => Number(l.slice(1)))
|
|
9683
9741
|
);
|
|
9684
9742
|
return o[`v${i}`]?.[r] ?? o[`v${i}`]?.default ?? 0;
|
|
9685
|
-
},
|
|
9743
|
+
}, Nv = (e, t) => {
|
|
9686
9744
|
if (e === 1)
|
|
9687
9745
|
return "SingleA1";
|
|
9688
9746
|
if (e === 8)
|
|
@@ -9690,7 +9748,7 @@ ${o.join(`
|
|
|
9690
9748
|
if (e === 96) {
|
|
9691
9749
|
if (t === ft)
|
|
9692
9750
|
return "SingleH12";
|
|
9693
|
-
if (t ===
|
|
9751
|
+
if (t === Tt)
|
|
9694
9752
|
return "Column12";
|
|
9695
9753
|
if (t === Cr)
|
|
9696
9754
|
return "RowA";
|
|
@@ -9719,13 +9777,13 @@ ${o.join(`
|
|
|
9719
9777
|
return 0;
|
|
9720
9778
|
const [n, a] = ["A1", "B1"].map((o) => r[o][1]);
|
|
9721
9779
|
return Math.abs(n - a);
|
|
9722
|
-
},
|
|
9723
|
-
const t =
|
|
9780
|
+
}, Pv = (e) => {
|
|
9781
|
+
const t = Cv(e), r = Dv(e);
|
|
9724
9782
|
return {
|
|
9725
9783
|
x: t,
|
|
9726
9784
|
y: r
|
|
9727
9785
|
};
|
|
9728
|
-
},
|
|
9786
|
+
}, Cv = (e) => {
|
|
9729
9787
|
const { primaryNozzle: t, nozzleConfiguration: r, specs: n, labwareDef: a } = e, { channels: s } = n;
|
|
9730
9788
|
if (s !== 96)
|
|
9731
9789
|
return 0;
|
|
@@ -9733,16 +9791,16 @@ ${o.join(`
|
|
|
9733
9791
|
if (!i)
|
|
9734
9792
|
return 0;
|
|
9735
9793
|
let l;
|
|
9736
|
-
const c =
|
|
9794
|
+
const c = Rb(t) === "12" ? 1 : -1;
|
|
9737
9795
|
if (r === Ye && s === 96 || r === Cr)
|
|
9738
9796
|
l = 12;
|
|
9739
9797
|
else if (r === w_)
|
|
9740
9798
|
l = 6;
|
|
9741
9799
|
else
|
|
9742
|
-
return c *
|
|
9800
|
+
return c * Iv;
|
|
9743
9801
|
const u = Pb(n);
|
|
9744
9802
|
return i ? (l - 1) * u / 2 * c : 0;
|
|
9745
|
-
},
|
|
9803
|
+
}, Dv = (e) => {
|
|
9746
9804
|
const {
|
|
9747
9805
|
wellTargetName: t,
|
|
9748
9806
|
primaryNozzle: r,
|
|
@@ -9764,7 +9822,7 @@ ${o.join(`
|
|
|
9764
9822
|
const p = La(r) === "H" ? -1 : 1;
|
|
9765
9823
|
return 7 * i / 2 * p;
|
|
9766
9824
|
};
|
|
9767
|
-
function
|
|
9825
|
+
function qv(e) {
|
|
9768
9826
|
const t = e.length === 1 ? e[0] : null;
|
|
9769
9827
|
return t != null && "steps" in t ? {
|
|
9770
9828
|
numRepetitions: t.repetitions,
|
|
@@ -9779,20 +9837,20 @@ function Cb(e) {
|
|
|
9779
9837
|
(t) => "steps" in t ? zI(t.steps, t.repetitions) : t
|
|
9780
9838
|
);
|
|
9781
9839
|
}
|
|
9782
|
-
const
|
|
9840
|
+
const SL = (e) => {
|
|
9783
9841
|
switch (e.commandCreatorFnName) {
|
|
9784
9842
|
case "consolidate":
|
|
9785
|
-
return k(
|
|
9843
|
+
return k(Xv, e);
|
|
9786
9844
|
case "delay":
|
|
9787
9845
|
return k(be, e);
|
|
9788
9846
|
case "waitForModuleTask":
|
|
9789
|
-
return k(
|
|
9847
|
+
return k(_k, e);
|
|
9790
9848
|
case "distribute":
|
|
9791
|
-
return k(
|
|
9849
|
+
return k(Qv, e);
|
|
9792
9850
|
case "transfer":
|
|
9793
|
-
return k(
|
|
9851
|
+
return k(mk, e);
|
|
9794
9852
|
case "mix":
|
|
9795
|
-
return k(
|
|
9853
|
+
return k(Yv, e);
|
|
9796
9854
|
case "moveLabware":
|
|
9797
9855
|
return k(AI, e);
|
|
9798
9856
|
case "captureImage":
|
|
@@ -9808,11 +9866,11 @@ const _L = (e) => {
|
|
|
9808
9866
|
case "waitForTemperature":
|
|
9809
9867
|
return k(My, e);
|
|
9810
9868
|
case "thermocyclerProfile":
|
|
9811
|
-
return k(
|
|
9869
|
+
return k(tk, e);
|
|
9812
9870
|
case "thermocyclerState":
|
|
9813
|
-
return k(
|
|
9871
|
+
return k(ik, e);
|
|
9814
9872
|
case "heaterShaker":
|
|
9815
|
-
return k(
|
|
9873
|
+
return k(ek, e);
|
|
9816
9874
|
case "comment":
|
|
9817
9875
|
return k(pI, e);
|
|
9818
9876
|
case "absorbanceReaderOpenLid":
|
|
@@ -9820,9 +9878,9 @@ const _L = (e) => {
|
|
|
9820
9878
|
case "absorbanceReaderCloseLid":
|
|
9821
9879
|
return k(Mu, e);
|
|
9822
9880
|
case "absorbanceReaderRead":
|
|
9823
|
-
return k(
|
|
9881
|
+
return k(xv, e);
|
|
9824
9882
|
case "absorbanceReaderInitialize":
|
|
9825
|
-
return k(
|
|
9883
|
+
return k(Mv, e);
|
|
9826
9884
|
case "flexStackerEmpty":
|
|
9827
9885
|
return k(hI, {
|
|
9828
9886
|
...e,
|
|
@@ -9848,22 +9906,22 @@ const _L = (e) => {
|
|
|
9848
9906
|
case "vacuumStartRunProfile":
|
|
9849
9907
|
return k(Fy, e);
|
|
9850
9908
|
case "vacuumStopPump":
|
|
9851
|
-
return k(
|
|
9909
|
+
return k(NI, e);
|
|
9852
9910
|
case "vacuumCloseVentSetPumpPressure":
|
|
9853
|
-
return k(
|
|
9911
|
+
return k(yk, e);
|
|
9854
9912
|
case "vacuumCloseVentSetPumpPower":
|
|
9855
|
-
return k(
|
|
9913
|
+
return k(hk, e);
|
|
9856
9914
|
case "vacuumCloseVentStartProfile":
|
|
9857
|
-
return k(
|
|
9915
|
+
return k(bk, e);
|
|
9858
9916
|
// NOTE: ja 6/3/26: here and below are for opentronsAI usage only (for now)
|
|
9859
9917
|
case "airGapInPlace":
|
|
9860
|
-
return k(
|
|
9918
|
+
return k(Pt, e);
|
|
9861
9919
|
case "aspirate":
|
|
9862
|
-
return k(
|
|
9920
|
+
return k(Pt, e);
|
|
9863
9921
|
case "aspirateInPlace":
|
|
9864
9922
|
return k(Wa, e);
|
|
9865
9923
|
case "aspirateWhileTracking":
|
|
9866
|
-
return k(
|
|
9924
|
+
return k(RI, e);
|
|
9867
9925
|
case "blowOutInPlace":
|
|
9868
9926
|
return k(Qn, e);
|
|
9869
9927
|
case "blowout":
|
|
@@ -9889,7 +9947,7 @@ const _L = (e) => {
|
|
|
9889
9947
|
case "moveToAddressableArea":
|
|
9890
9948
|
return k(ze, e);
|
|
9891
9949
|
case "moveToAddressableAreaForDropTip":
|
|
9892
|
-
return k(
|
|
9950
|
+
return k(Ny, e);
|
|
9893
9951
|
case "moveToCoordinates":
|
|
9894
9952
|
return k(qI, e);
|
|
9895
9953
|
case "moveToWell":
|
|
@@ -9897,7 +9955,7 @@ const _L = (e) => {
|
|
|
9897
9955
|
case "pickUpTip":
|
|
9898
9956
|
return k(_s, e);
|
|
9899
9957
|
case "prepareToAspirate":
|
|
9900
|
-
return k(
|
|
9958
|
+
return k(Ct, e);
|
|
9901
9959
|
case "touchTip":
|
|
9902
9960
|
return k(Xt, e);
|
|
9903
9961
|
case "tryLiquidProbe":
|
|
@@ -9925,18 +9983,18 @@ const _L = (e) => {
|
|
|
9925
9983
|
case "thermocycler/setTargetLidTemperature":
|
|
9926
9984
|
return k(ju, e);
|
|
9927
9985
|
case "thermocycler/startRunExtendedProfile":
|
|
9928
|
-
return k(
|
|
9986
|
+
return k(Ry, e);
|
|
9929
9987
|
}
|
|
9930
9988
|
}, C = Mw;
|
|
9931
|
-
function
|
|
9989
|
+
function $v(e) {
|
|
9932
9990
|
return Object.keys(e).sort(
|
|
9933
9991
|
(r, n) => {
|
|
9934
|
-
const a =
|
|
9992
|
+
const a = Y(e[r].stack), s = Y(e[n].stack), o = parseInt(a), i = parseInt(s);
|
|
9935
9993
|
return Me.includes(a) && Me.includes(s) ? r.localeCompare(n) : Me.includes(a) ? 1 : Me.includes(s) ? -1 : o - i;
|
|
9936
9994
|
}
|
|
9937
9995
|
);
|
|
9938
9996
|
}
|
|
9939
|
-
function
|
|
9997
|
+
function Fv(e) {
|
|
9940
9998
|
const {
|
|
9941
9999
|
pipetteId: t,
|
|
9942
10000
|
tiprackId: r,
|
|
@@ -9970,7 +10028,7 @@ function $v(e) {
|
|
|
9970
10028
|
return h(d);
|
|
9971
10029
|
if (v)
|
|
9972
10030
|
return f(d);
|
|
9973
|
-
if (s ===
|
|
10031
|
+
if (s === Tt) {
|
|
9974
10032
|
const w = l.ordering;
|
|
9975
10033
|
return (o === Sa ? b(w) : m(w))?.[0] ?? null;
|
|
9976
10034
|
}
|
|
@@ -9986,13 +10044,13 @@ function ao(e, t, r, n, a, s) {
|
|
|
9986
10044
|
throw new Error(
|
|
9987
10045
|
`cannot getNextTiprack, no pipette entity for pipette "${e}"`
|
|
9988
10046
|
);
|
|
9989
|
-
const i = [], l =
|
|
10047
|
+
const i = [], l = $v(n.labware).filter(
|
|
9990
10048
|
(f) => {
|
|
9991
10049
|
console.assert(
|
|
9992
10050
|
r.labwareEntities[f]?.labwareDefURI != null,
|
|
9993
10051
|
`cannot getNextTiprack, no labware entity for "${f}"`
|
|
9994
10052
|
);
|
|
9995
|
-
const m =
|
|
10053
|
+
const m = Y(
|
|
9996
10054
|
n.labware[f].stack
|
|
9997
10055
|
), b = aT(m), _ = nT({
|
|
9998
10056
|
labwareId: f,
|
|
@@ -10013,7 +10071,7 @@ function ao(e, t, r, n, a, s) {
|
|
|
10013
10071
|
}));
|
|
10014
10072
|
let d = null, h = null;
|
|
10015
10073
|
for (const f of c) {
|
|
10016
|
-
const m =
|
|
10074
|
+
const m = Fv({
|
|
10017
10075
|
pipetteId: e,
|
|
10018
10076
|
tiprackId: f,
|
|
10019
10077
|
nozzles: s,
|
|
@@ -10031,7 +10089,7 @@ function ao(e, t, r, n, a, s) {
|
|
|
10031
10089
|
}) : { isSafe: !1 }, {
|
|
10032
10090
|
isSafe: _,
|
|
10033
10091
|
isComplete: y = !1
|
|
10034
|
-
} = m != null ?
|
|
10092
|
+
} = m != null ? Nb({
|
|
10035
10093
|
tipState: n.tipState.tipracks[f],
|
|
10036
10094
|
primaryNozzle: a,
|
|
10037
10095
|
channels: o.spec.channels,
|
|
@@ -10094,10 +10152,10 @@ const cp = (e, t) => {
|
|
|
10094
10152
|
}, qt = (e, t) => {
|
|
10095
10153
|
const r = e.modules[t]?.moduleState;
|
|
10096
10154
|
return r && r.type === Ge ? r : null;
|
|
10097
|
-
},
|
|
10155
|
+
}, St = (e, t) => {
|
|
10098
10156
|
const r = e.modules[t]?.moduleState;
|
|
10099
10157
|
return r && r.type === Kt ? r : null;
|
|
10100
|
-
},
|
|
10158
|
+
}, Mv = (e, t, r) => {
|
|
10101
10159
|
const { moduleId: n, measureMode: a, sampleWavelengths: s, referenceWavelength: o } = e, i = ss(
|
|
10102
10160
|
r,
|
|
10103
10161
|
n
|
|
@@ -10120,7 +10178,7 @@ const cp = (e, t) => {
|
|
|
10120
10178
|
t,
|
|
10121
10179
|
r
|
|
10122
10180
|
);
|
|
10123
|
-
},
|
|
10181
|
+
}, xv = (e, t, r) => {
|
|
10124
10182
|
const n = [], a = ss(
|
|
10125
10183
|
r,
|
|
10126
10184
|
e.moduleId
|
|
@@ -10141,18 +10199,18 @@ const cp = (e, t) => {
|
|
|
10141
10199
|
t,
|
|
10142
10200
|
r
|
|
10143
10201
|
);
|
|
10144
|
-
},
|
|
10202
|
+
}, Bv = (e, t, r) => {
|
|
10145
10203
|
const { pipetteId: n, trashId: a, flowRate: s, volume: o } = e, i = [
|
|
10146
10204
|
k(ze, {
|
|
10147
10205
|
pipetteId: n,
|
|
10148
10206
|
fixtureId: a,
|
|
10149
10207
|
offset: Qt
|
|
10150
10208
|
}),
|
|
10151
|
-
L(
|
|
10209
|
+
L(Ct, {
|
|
10152
10210
|
// PAPI air_gap() includes prepare_to_aspirate() so don't emit Python
|
|
10153
10211
|
pipetteId: n
|
|
10154
10212
|
}),
|
|
10155
|
-
k(
|
|
10213
|
+
k(Pt, {
|
|
10156
10214
|
pipetteId: n,
|
|
10157
10215
|
volume: o,
|
|
10158
10216
|
flowRate: s
|
|
@@ -10163,18 +10221,18 @@ const cp = (e, t) => {
|
|
|
10163
10221
|
t,
|
|
10164
10222
|
r
|
|
10165
10223
|
);
|
|
10166
|
-
},
|
|
10224
|
+
}, Vv = (e, t, r) => {
|
|
10167
10225
|
const { pipetteId: n, volume: a, flowRate: s, wasteChuteId: o } = e, i = [
|
|
10168
10226
|
k(ze, {
|
|
10169
10227
|
pipetteId: n,
|
|
10170
10228
|
fixtureId: o,
|
|
10171
10229
|
offset: Qt
|
|
10172
10230
|
}),
|
|
10173
|
-
L(
|
|
10231
|
+
L(Ct, {
|
|
10174
10232
|
// PAPI air_gap() includes prepare_to_aspirate() so don't emit Python
|
|
10175
10233
|
pipetteId: n
|
|
10176
10234
|
}),
|
|
10177
|
-
k(
|
|
10235
|
+
k(Pt, {
|
|
10178
10236
|
pipetteId: n,
|
|
10179
10237
|
flowRate: s,
|
|
10180
10238
|
volume: a
|
|
@@ -10185,9 +10243,9 @@ const cp = (e, t) => {
|
|
|
10185
10243
|
t,
|
|
10186
10244
|
r
|
|
10187
10245
|
);
|
|
10188
|
-
},
|
|
10246
|
+
}, Uv = (e, t, r) => {
|
|
10189
10247
|
const { labwareId: n, wellName: a, flowRate: s, pipetteId: o, volume: i, type: l } = e, c = t.pipetteEntities[o].pythonName, u = l === "aspirate" ? [] : [
|
|
10190
|
-
L(
|
|
10248
|
+
L(Ct, {
|
|
10191
10249
|
pipetteId: o
|
|
10192
10250
|
})
|
|
10193
10251
|
], p = () => ({
|
|
@@ -10214,7 +10272,7 @@ const cp = (e, t) => {
|
|
|
10214
10272
|
}
|
|
10215
10273
|
}),
|
|
10216
10274
|
...u,
|
|
10217
|
-
L(
|
|
10275
|
+
L(Pt, {
|
|
10218
10276
|
pipetteId: o,
|
|
10219
10277
|
volume: i,
|
|
10220
10278
|
flowRate: s
|
|
@@ -10280,7 +10338,7 @@ ${l}.blow_out(${c})`
|
|
|
10280
10338
|
);
|
|
10281
10339
|
};
|
|
10282
10340
|
var ru, kh;
|
|
10283
|
-
function
|
|
10341
|
+
function zv() {
|
|
10284
10342
|
if (kh) return ru;
|
|
10285
10343
|
kh = 1;
|
|
10286
10344
|
var e = ky();
|
|
@@ -10291,10 +10349,10 @@ function Uv() {
|
|
|
10291
10349
|
return ru = t, ru;
|
|
10292
10350
|
}
|
|
10293
10351
|
var nu, Lh;
|
|
10294
|
-
function
|
|
10352
|
+
function jv() {
|
|
10295
10353
|
if (Lh) return nu;
|
|
10296
10354
|
Lh = 1;
|
|
10297
|
-
var e = db(), t = Fu(), r =
|
|
10355
|
+
var e = db(), t = Fu(), r = zv(), n = Math.ceil, a = Math.max;
|
|
10298
10356
|
function s(o, i, l) {
|
|
10299
10357
|
(l ? t(o, i, l) : i === void 0) ? i = 1 : i = a(r(i), 0);
|
|
10300
10358
|
var c = o == null ? 0 : o.length;
|
|
@@ -10306,8 +10364,8 @@ function zv() {
|
|
|
10306
10364
|
}
|
|
10307
10365
|
return nu = s, nu;
|
|
10308
10366
|
}
|
|
10309
|
-
var
|
|
10310
|
-
const $b = /* @__PURE__ */ Xe(
|
|
10367
|
+
var Hv = jv();
|
|
10368
|
+
const $b = /* @__PURE__ */ Xe(Hv), dr = (e) => {
|
|
10311
10369
|
const { labwareDef: t, wells: r, primaryNozzle: n } = e, a = Da[n] - 1, { ordering: s, parameters: o } = t;
|
|
10312
10370
|
return r.map((i) => {
|
|
10313
10371
|
const l = s.find((u) => u.includes(i));
|
|
@@ -10320,7 +10378,7 @@ const $b = /* @__PURE__ */ Xe(jv), dr = (e) => {
|
|
|
10320
10378
|
const c = l.indexOf(i);
|
|
10321
10379
|
return c === -1 ? (console.warn(`Could not find column index of ${i}`), i) : l[c + a];
|
|
10322
10380
|
});
|
|
10323
|
-
},
|
|
10381
|
+
}, Gv = (e, t, r) => {
|
|
10324
10382
|
const { pipetteId: n, trashLocation: a } = e;
|
|
10325
10383
|
let s = [];
|
|
10326
10384
|
const o = Gy(a);
|
|
@@ -10341,7 +10399,7 @@ const $b = /* @__PURE__ */ Xe(jv), dr = (e) => {
|
|
|
10341
10399
|
python: `${i}.drop_tip()`
|
|
10342
10400
|
});
|
|
10343
10401
|
s = [
|
|
10344
|
-
L(
|
|
10402
|
+
L(Ny, {
|
|
10345
10403
|
pipetteId: n,
|
|
10346
10404
|
addressableAreaName: o
|
|
10347
10405
|
}),
|
|
@@ -10356,7 +10414,7 @@ const $b = /* @__PURE__ */ Xe(jv), dr = (e) => {
|
|
|
10356
10414
|
t,
|
|
10357
10415
|
r
|
|
10358
10416
|
);
|
|
10359
|
-
},
|
|
10417
|
+
}, Wv = (e, t, r) => {
|
|
10360
10418
|
const n = Qt, { pipetteId: a, wasteChuteId: s } = e, { pipetteEntities: o, wasteChuteEntities: i } = t;
|
|
10361
10419
|
let l = [];
|
|
10362
10420
|
if (!r.tipState.pipettes[a].hasTip)
|
|
@@ -10413,7 +10471,7 @@ const $b = /* @__PURE__ */ Xe(jv), dr = (e) => {
|
|
|
10413
10471
|
return {
|
|
10414
10472
|
errors: [$_()]
|
|
10415
10473
|
};
|
|
10416
|
-
if (s ===
|
|
10474
|
+
if (s === Tt && M)
|
|
10417
10475
|
return {
|
|
10418
10476
|
errors: [F_()]
|
|
10419
10477
|
};
|
|
@@ -10509,7 +10567,7 @@ const $b = /* @__PURE__ */ Xe(jv), dr = (e) => {
|
|
|
10509
10567
|
})
|
|
10510
10568
|
];
|
|
10511
10569
|
return _ && (I = [
|
|
10512
|
-
g(
|
|
10570
|
+
g(Wv, {
|
|
10513
10571
|
pipetteId: e.pipette,
|
|
10514
10572
|
wasteChuteId: t.wasteChuteEntities[e.dropTipLocation].id
|
|
10515
10573
|
}),
|
|
@@ -10523,7 +10581,7 @@ const $b = /* @__PURE__ */ Xe(jv), dr = (e) => {
|
|
|
10523
10581
|
primaryNozzle: o
|
|
10524
10582
|
})
|
|
10525
10583
|
]), y && (I = [
|
|
10526
|
-
g(
|
|
10584
|
+
g(Gv, {
|
|
10527
10585
|
pipetteId: n,
|
|
10528
10586
|
trashLocation: t.trashBinEntities[e.dropTipLocation].location
|
|
10529
10587
|
}),
|
|
@@ -10545,7 +10603,7 @@ const $b = /* @__PURE__ */ Xe(jv), dr = (e) => {
|
|
|
10545
10603
|
L(be, {
|
|
10546
10604
|
seconds: e
|
|
10547
10605
|
})
|
|
10548
|
-
] : [],
|
|
10606
|
+
] : [], Kv = (e) => () => {
|
|
10549
10607
|
const {
|
|
10550
10608
|
invariantContext: t,
|
|
10551
10609
|
pipette: r,
|
|
@@ -10583,7 +10641,7 @@ const $b = /* @__PURE__ */ Xe(jv), dr = (e) => {
|
|
|
10583
10641
|
// Note: we do not support mix in trashBin or wasteChute so location
|
|
10584
10642
|
// will always be a well
|
|
10585
10643
|
python: `${h}.mix(
|
|
10586
|
-
${
|
|
10644
|
+
${G(
|
|
10587
10645
|
m.join(`,
|
|
10588
10646
|
`)
|
|
10589
10647
|
)},
|
|
@@ -10604,7 +10662,7 @@ ${Y(
|
|
|
10604
10662
|
tiprack: p,
|
|
10605
10663
|
moveToWellParams: d,
|
|
10606
10664
|
generatePython: h
|
|
10607
|
-
} = e, f =
|
|
10665
|
+
} = e, f = Kv({
|
|
10608
10666
|
invariantContext: c,
|
|
10609
10667
|
pipette: t,
|
|
10610
10668
|
volume: r,
|
|
@@ -10666,7 +10724,7 @@ ${Y(
|
|
|
10666
10724
|
...Eh(i)
|
|
10667
10725
|
);
|
|
10668
10726
|
return [...A, ...h ? [f] : []];
|
|
10669
|
-
},
|
|
10727
|
+
}, Yv = (e, t, r) => {
|
|
10670
10728
|
const {
|
|
10671
10729
|
pipette: a,
|
|
10672
10730
|
labware: s,
|
|
@@ -10708,21 +10766,21 @@ ${Y(
|
|
|
10708
10766
|
})
|
|
10709
10767
|
]
|
|
10710
10768
|
};
|
|
10711
|
-
const M =
|
|
10769
|
+
const M = Y(
|
|
10712
10770
|
r.labware[s]?.stack
|
|
10713
10771
|
);
|
|
10714
|
-
if (Object.keys(t.wasteChuteEntities).length > 0 && M ===
|
|
10772
|
+
if (Object.keys(t.wasteChuteEntities).length > 0 && M === Rr)
|
|
10715
10773
|
return { errors: [Ba()] };
|
|
10716
10774
|
const de = [
|
|
10717
10775
|
...Object.keys(t.trashBinEntities),
|
|
10718
10776
|
...Object.keys(t.wasteChuteEntities)
|
|
10719
10777
|
], _e = de.length > 0 ? de[0] : null, ae = Object.values(t.labwareEntities).find(
|
|
10720
|
-
({ labwareDefURI:
|
|
10778
|
+
({ labwareDefURI: W }) => W === f
|
|
10721
10779
|
), Ie = ae != null && Pr(ae.def), Ce = t.wasteChuteEntities[f] != null, Ze = t.trashBinEntities[f] != null, je = r.pipettes[a]?.tipWell != null;
|
|
10722
10780
|
if (f == null || Ie && _e == null && c !== "never" && je || !Ie && !Ce && !Ze)
|
|
10723
10781
|
return { errors: [Wn()] };
|
|
10724
10782
|
if (F) {
|
|
10725
|
-
const
|
|
10783
|
+
const W = Dt({
|
|
10726
10784
|
robotState: r,
|
|
10727
10785
|
invariantContext: t,
|
|
10728
10786
|
pipetteId: a,
|
|
@@ -10732,15 +10790,15 @@ ${Y(
|
|
|
10732
10790
|
primaryNozzle: S,
|
|
10733
10791
|
nozzleConfiguration: g
|
|
10734
10792
|
});
|
|
10735
|
-
if (!
|
|
10793
|
+
if (!W.isSafe)
|
|
10736
10794
|
return {
|
|
10737
10795
|
errors: [
|
|
10738
10796
|
Zt({
|
|
10739
|
-
unsafePipetteMovementReason:
|
|
10797
|
+
unsafePipetteMovementReason: W.reason
|
|
10740
10798
|
})
|
|
10741
10799
|
]
|
|
10742
10800
|
};
|
|
10743
|
-
const
|
|
10801
|
+
const R = Dt({
|
|
10744
10802
|
robotState: r,
|
|
10745
10803
|
invariantContext: t,
|
|
10746
10804
|
pipetteId: a,
|
|
@@ -10750,11 +10808,11 @@ ${Y(
|
|
|
10750
10808
|
primaryNozzle: S,
|
|
10751
10809
|
nozzleConfiguration: g
|
|
10752
10810
|
});
|
|
10753
|
-
if (!
|
|
10811
|
+
if (!R.isSafe)
|
|
10754
10812
|
return {
|
|
10755
10813
|
errors: [
|
|
10756
10814
|
Zt({
|
|
10757
|
-
unsafePipetteMovementReason:
|
|
10815
|
+
unsafePipetteMovementReason: R.reason
|
|
10758
10816
|
})
|
|
10759
10817
|
]
|
|
10760
10818
|
};
|
|
@@ -10773,11 +10831,11 @@ ${Y(
|
|
|
10773
10831
|
primaryNozzle: S
|
|
10774
10832
|
}) : null, X = Vn(
|
|
10775
10833
|
o,
|
|
10776
|
-
(
|
|
10777
|
-
let
|
|
10778
|
-
if (c === "always" || c === "once" &&
|
|
10834
|
+
(W, R) => {
|
|
10835
|
+
let N = [];
|
|
10836
|
+
if (c === "always" || c === "once" && R === 0) {
|
|
10779
10837
|
const ue = Te?.shift();
|
|
10780
|
-
|
|
10838
|
+
N = [
|
|
10781
10839
|
k(so, {
|
|
10782
10840
|
pipette: a,
|
|
10783
10841
|
primaryNozzle: S,
|
|
@@ -10795,23 +10853,23 @@ ${Y(
|
|
|
10795
10853
|
})
|
|
10796
10854
|
];
|
|
10797
10855
|
}
|
|
10798
|
-
const x = te || e.blowoutLocation != null &&
|
|
10799
|
-
k(
|
|
10856
|
+
const x = te || e.blowoutLocation != null && R > 0 ? [
|
|
10857
|
+
k(Ct, {
|
|
10800
10858
|
pipetteId: a
|
|
10801
10859
|
})
|
|
10802
10860
|
] : [], D = e.touchTip ? [
|
|
10803
10861
|
k(Xt, {
|
|
10804
10862
|
pipetteId: a,
|
|
10805
10863
|
labwareId: s,
|
|
10806
|
-
wellName:
|
|
10864
|
+
wellName: W,
|
|
10807
10865
|
zOffsetFromTop: e.touchTipMmFromTop
|
|
10808
10866
|
})
|
|
10809
10867
|
] : [], se = jI({
|
|
10810
10868
|
pipette: e.pipette,
|
|
10811
10869
|
sourceLabwareId: e.labware,
|
|
10812
|
-
sourceWell:
|
|
10870
|
+
sourceWell: W,
|
|
10813
10871
|
destLabwareId: e.labware,
|
|
10814
|
-
destWell:
|
|
10872
|
+
destWell: W,
|
|
10815
10873
|
blowoutLocation: e.blowoutLocation,
|
|
10816
10874
|
flowRate: d,
|
|
10817
10875
|
offsetFromTopMm: h,
|
|
@@ -10821,7 +10879,7 @@ ${Y(
|
|
|
10821
10879
|
...Object.keys(t.trashBinEntities)
|
|
10822
10880
|
].some(
|
|
10823
10881
|
(ue) => ue === e.blowoutLocation
|
|
10824
|
-
) ? [...D, ...se] : [...se, ...D], q = Ie && (
|
|
10882
|
+
) ? [...D, ...se] : [...se, ...D], q = Ie && (R === o.length - 1 || c === "always") ? [
|
|
10825
10883
|
k(ea, {
|
|
10826
10884
|
pipette: a,
|
|
10827
10885
|
dropTipLocation: m,
|
|
@@ -10842,9 +10900,9 @@ ${Y(
|
|
|
10842
10900
|
moveToWellParams: {
|
|
10843
10901
|
pipetteId: a,
|
|
10844
10902
|
labwareId: s,
|
|
10845
|
-
wellName:
|
|
10903
|
+
wellName: W,
|
|
10846
10904
|
wellLocation: {
|
|
10847
|
-
origin:
|
|
10905
|
+
origin: Re[b],
|
|
10848
10906
|
offset: {
|
|
10849
10907
|
x: _,
|
|
10850
10908
|
y,
|
|
@@ -10855,7 +10913,7 @@ ${Y(
|
|
|
10855
10913
|
generatePython: !0
|
|
10856
10914
|
});
|
|
10857
10915
|
return [
|
|
10858
|
-
...
|
|
10916
|
+
...N,
|
|
10859
10917
|
...ve,
|
|
10860
10918
|
...x,
|
|
10861
10919
|
...U,
|
|
@@ -10869,7 +10927,7 @@ ${Y(
|
|
|
10869
10927
|
t,
|
|
10870
10928
|
r
|
|
10871
10929
|
);
|
|
10872
|
-
},
|
|
10930
|
+
}, Xv = (e, t, r) => {
|
|
10873
10931
|
const {
|
|
10874
10932
|
aspirateDelay: n,
|
|
10875
10933
|
aspirateFlowRateUlSec: a,
|
|
@@ -10912,9 +10970,9 @@ ${Y(
|
|
|
10912
10970
|
dispenseZOffset: De,
|
|
10913
10971
|
dropTipLocation: Te,
|
|
10914
10972
|
liquidClass: X,
|
|
10915
|
-
mixInDestination:
|
|
10916
|
-
nozzles:
|
|
10917
|
-
pipette:
|
|
10973
|
+
mixInDestination: W,
|
|
10974
|
+
nozzles: R,
|
|
10975
|
+
pipette: N,
|
|
10918
10976
|
primaryNozzle: x,
|
|
10919
10977
|
pushOut: D,
|
|
10920
10978
|
sourceLabware: se,
|
|
@@ -10930,50 +10988,50 @@ ${Y(
|
|
|
10930
10988
|
touchTipAfterAspirateSpeed: He,
|
|
10931
10989
|
touchTipAfterDispense: pe,
|
|
10932
10990
|
touchTipAfterDispenseMmFromEdge: lt,
|
|
10933
|
-
touchTipAfterDispenseOffsetMmFromTop:
|
|
10991
|
+
touchTipAfterDispenseOffsetMmFromTop: At,
|
|
10934
10992
|
touchTipAfterDispenseSpeed: $t,
|
|
10935
|
-
stepNumber:
|
|
10993
|
+
stepNumber: vt,
|
|
10936
10994
|
volume: Oe
|
|
10937
10995
|
} = e, {
|
|
10938
10996
|
pipetteEntities: ct,
|
|
10939
10997
|
labwareEntities: we,
|
|
10940
|
-
trashBinEntities:
|
|
10998
|
+
trashBinEntities: Ne,
|
|
10941
10999
|
wasteChuteEntities: qe
|
|
10942
|
-
} = t, re = "consolidate", ne = [], Ft = r.pipettes[
|
|
11000
|
+
} = t, re = "consolidate", ne = [], Ft = r.pipettes[N], et = ct[N]?.spec.channels !== 1, K = e.aspirateAirGapVolume ?? 0, me = e.dispenseAirGapVolume ?? 0;
|
|
10943
11001
|
Ft == null && ne.push(
|
|
10944
11002
|
wt({
|
|
10945
|
-
pipette:
|
|
11003
|
+
pipette: N
|
|
10946
11004
|
})
|
|
10947
|
-
), (I == null || we[I] == null &&
|
|
10948
|
-
const Dr =
|
|
11005
|
+
), (I == null || we[I] == null && Ne[I] == null && qe[I] == null) && ne.push(Kh());
|
|
11006
|
+
const Dr = Y(
|
|
10949
11007
|
r.labware[I]?.stack
|
|
10950
|
-
), ut =
|
|
11008
|
+
), ut = Y(
|
|
10951
11009
|
r.labware[se]?.stack
|
|
10952
11010
|
);
|
|
10953
|
-
Object.keys(qe).length > 0 && (Dr ===
|
|
11011
|
+
Object.keys(qe).length > 0 && (Dr === Rr || ut === Rr) && ne.push(Ba());
|
|
10954
11012
|
const he = [
|
|
10955
11013
|
...Object.keys(t.trashBinEntities),
|
|
10956
11014
|
...Object.keys(t.wasteChuteEntities)
|
|
10957
11015
|
], pt = he.length > 0 ? he[0] : null, un = Object.values(t.labwareEntities).find(
|
|
10958
11016
|
({ labwareDefURI: ye }) => ye === Te
|
|
10959
|
-
), Mt = un != null && Pr(un.def), is = t.wasteChuteEntities[Te] != null, pn = t.trashBinEntities[Te] != null, br = r.tipState.pipettes[
|
|
11017
|
+
), Mt = un != null && Pr(un.def), is = t.wasteChuteEntities[Te] != null, pn = t.trashBinEntities[Te] != null, br = r.tipState.pipettes[N]?.hasTip;
|
|
10960
11018
|
(Te == null || Mt && pt == null && v !== "never" && br || !Mt && !is && !pn) && ne.push(Wn());
|
|
10961
11019
|
let tt, Q;
|
|
10962
11020
|
if (v === "never") {
|
|
10963
|
-
const ye = r.tipState.pipettes[
|
|
11021
|
+
const ye = r.tipState.pipettes[N]?.tiprackURI;
|
|
10964
11022
|
tt = t.labwareEntities[ye ?? ""], Q = tt?.labwareDefURI;
|
|
10965
11023
|
} else
|
|
10966
11024
|
tt = Object.values(we).find(
|
|
10967
11025
|
({ labwareDefURI: ye }) => ye === z
|
|
10968
11026
|
), Q = z;
|
|
10969
|
-
tt == null && (v === "never" ? ne.push(tr({ actionName: re, pipette:
|
|
11027
|
+
tt == null && (v === "never" ? ne.push(tr({ actionName: re, pipette: N })) : ne.push(
|
|
10970
11028
|
gt({ actionName: re, labware: Q })
|
|
10971
11029
|
));
|
|
10972
11030
|
const { def: xt = null } = tt ?? {}, {
|
|
10973
11031
|
spec: Se,
|
|
10974
11032
|
name: yt,
|
|
10975
11033
|
pythonName: Z
|
|
10976
|
-
} = ct[
|
|
11034
|
+
} = ct[N], j = qa()[X === Iu || X == null ? Tu : X].byPipette?.find(
|
|
10977
11035
|
({ pipetteModel: ye }) => ye === rn(Se)
|
|
10978
11036
|
)?.byTipType.find(({ tiprack: ye }) => ye === Q) ?? null, { aspirate: bt } = j ?? {}, { multiWellHandling: fe } = Zy({
|
|
10979
11037
|
pipetteSpecs: Se,
|
|
@@ -10989,16 +11047,16 @@ ${Y(
|
|
|
10989
11047
|
if (
|
|
10990
11048
|
// We stop users from selecting the consolidate path if we can't fit > 1 chunk into
|
|
10991
11049
|
// the tip, but older protocols can have consolidate selected and trigger this error
|
|
10992
|
-
(!fe.isSupported || dt == null || dt === 1) && ne.push(tw()), et &&
|
|
11050
|
+
(!fe.isSupported || dt == null || dt === 1) && ne.push(tw()), et && R !== Ye
|
|
10993
11051
|
) {
|
|
10994
11052
|
const ye = Dt({
|
|
10995
11053
|
robotState: r,
|
|
10996
11054
|
invariantContext: t,
|
|
10997
|
-
pipetteId:
|
|
11055
|
+
pipetteId: N,
|
|
10998
11056
|
labwareId: se,
|
|
10999
11057
|
wellLocationOffset: { x: y, y: A },
|
|
11000
11058
|
primaryNozzle: x,
|
|
11001
|
-
nozzleConfiguration:
|
|
11059
|
+
nozzleConfiguration: R
|
|
11002
11060
|
});
|
|
11003
11061
|
ye.isSafe || ne.push(
|
|
11004
11062
|
Zt({
|
|
@@ -11008,11 +11066,11 @@ ${Y(
|
|
|
11008
11066
|
const ie = Dt({
|
|
11009
11067
|
robotState: r,
|
|
11010
11068
|
invariantContext: t,
|
|
11011
|
-
pipetteId:
|
|
11069
|
+
pipetteId: N,
|
|
11012
11070
|
labwareId: I,
|
|
11013
11071
|
wellLocationOffset: { x: ve, y: Je },
|
|
11014
11072
|
primaryNozzle: x,
|
|
11015
|
-
nozzleConfiguration:
|
|
11073
|
+
nozzleConfiguration: R
|
|
11016
11074
|
});
|
|
11017
11075
|
ie.isSafe || ne.push(
|
|
11018
11076
|
Zt({
|
|
@@ -11038,12 +11096,12 @@ ${Y(
|
|
|
11038
11096
|
errors: ne
|
|
11039
11097
|
};
|
|
11040
11098
|
const { tipracks: qr } = ao(
|
|
11041
|
-
|
|
11099
|
+
N,
|
|
11042
11100
|
Q,
|
|
11043
11101
|
t,
|
|
11044
11102
|
r,
|
|
11045
11103
|
x,
|
|
11046
|
-
|
|
11104
|
+
R
|
|
11047
11105
|
), wr = H({
|
|
11048
11106
|
liquidClass: X,
|
|
11049
11107
|
pipetteSpecs: Se,
|
|
@@ -11052,16 +11110,16 @@ ${Y(
|
|
|
11052
11110
|
liquidHandlingAction: "aspirate",
|
|
11053
11111
|
byVolumeProperty: "correctionByVolume",
|
|
11054
11112
|
defaultValue: 0
|
|
11055
|
-
}) ?? 0, ke =
|
|
11113
|
+
}) ?? 0, ke = Ne[I]?.pythonName ?? qe[I]?.pythonName, Vt = Ne[Te]?.pythonName ?? qe[Te]?.pythonName, $r = S == null ? null : Ne[S]?.pythonName ?? qe[S]?.pythonName, Fr = we[se].pythonName, fn = we[I]?.pythonName, Mr = R === Ke ? dr({
|
|
11056
11114
|
labwareDef: we[se].def,
|
|
11057
11115
|
wells: $,
|
|
11058
11116
|
primaryNozzle: x
|
|
11059
|
-
}) : $, mn = (
|
|
11117
|
+
}) : $, mn = (R === Ke && w != null && we[I] != null ? dr({
|
|
11060
11118
|
labwareDef: we[I].def,
|
|
11061
11119
|
wells: [w],
|
|
11062
11120
|
primaryNozzle: x
|
|
11063
11121
|
}) : [w])[0], hn = Mr.map((ye) => `${Fr}[${P(ye)}]`).join(", "), yn = mn != null && fn != null ? `${fn}[${P(mn)}]` : null, bn = [
|
|
11064
|
-
`name=${P(`${e.commandCreatorFnName}_step_${
|
|
11122
|
+
`name=${P(`${e.commandCreatorFnName}_step_${vt}`)}`,
|
|
11065
11123
|
...X != null ? [`base_liquid_class=${ro(X, !0)}`] : [],
|
|
11066
11124
|
`properties=${sp({
|
|
11067
11125
|
args: e,
|
|
@@ -11070,16 +11128,16 @@ ${Y(
|
|
|
11070
11128
|
liquidClassValuesForTip: j
|
|
11071
11129
|
})}`
|
|
11072
11130
|
], aa = `${ge}.define_liquid_class(
|
|
11073
|
-
${
|
|
11131
|
+
${G(
|
|
11074
11132
|
bn.join(`,
|
|
11075
11133
|
`)
|
|
11076
11134
|
)},
|
|
11077
11135
|
)`, sr = V === er && q != null && U != null && U.length > 0 ? no({
|
|
11078
11136
|
wellSets: U,
|
|
11079
|
-
nozzles:
|
|
11137
|
+
nozzles: R,
|
|
11080
11138
|
channels: Se.channels,
|
|
11081
11139
|
primaryNozzle: x
|
|
11082
|
-
}) : null, wn = sr != null && tt != null &&
|
|
11140
|
+
}) : null, wn = sr != null && tt != null && R === Ke ? dr({
|
|
11083
11141
|
labwareDef: tt?.def,
|
|
11084
11142
|
wells: sr,
|
|
11085
11143
|
primaryNozzle: x
|
|
@@ -11104,25 +11162,25 @@ ${Y(
|
|
|
11104
11162
|
], oa = () => ({
|
|
11105
11163
|
commands: [],
|
|
11106
11164
|
python: `${Z}.consolidate_with_liquid_class(
|
|
11107
|
-
${
|
|
11165
|
+
${G(
|
|
11108
11166
|
sa.join(`,
|
|
11109
11167
|
`)
|
|
11110
11168
|
)},
|
|
11111
11169
|
)`
|
|
11112
11170
|
}), Tn = $b($, dt), or = Ea.includes(yt) ? [
|
|
11113
11171
|
L(Un, {
|
|
11114
|
-
pipetteId:
|
|
11172
|
+
pipetteId: N,
|
|
11115
11173
|
volume: Oe
|
|
11116
11174
|
})
|
|
11117
11175
|
] : [], ia = {
|
|
11118
|
-
origin:
|
|
11176
|
+
origin: Re[Ie],
|
|
11119
11177
|
offset: {
|
|
11120
11178
|
x: Ze,
|
|
11121
11179
|
y: je,
|
|
11122
11180
|
z: te
|
|
11123
11181
|
}
|
|
11124
11182
|
}, Ut = {
|
|
11125
|
-
origin:
|
|
11183
|
+
origin: Re[M],
|
|
11126
11184
|
offset: {
|
|
11127
11185
|
x: ee,
|
|
11128
11186
|
y: de,
|
|
@@ -11148,7 +11206,7 @@ ${Y(
|
|
|
11148
11206
|
liquidClass: X,
|
|
11149
11207
|
pipetteSpecs: Se,
|
|
11150
11208
|
tiprackDefUri: Q,
|
|
11151
|
-
targetVolume:
|
|
11209
|
+
targetVolume: K,
|
|
11152
11210
|
liquidHandlingAction: "aspirate",
|
|
11153
11211
|
byVolumeProperty: "flowRateByVolume",
|
|
11154
11212
|
defaultValue: null
|
|
@@ -11156,7 +11214,7 @@ ${Y(
|
|
|
11156
11214
|
liquidClass: X,
|
|
11157
11215
|
pipetteSpecs: Se,
|
|
11158
11216
|
tiprackDefUri: Q,
|
|
11159
|
-
targetVolume:
|
|
11217
|
+
targetVolume: K,
|
|
11160
11218
|
liquidHandlingAction: "singleDispense",
|
|
11161
11219
|
byVolumeProperty: "flowRateByVolume",
|
|
11162
11220
|
defaultValue: null
|
|
@@ -11184,7 +11242,7 @@ ${Y(
|
|
|
11184
11242
|
well: w
|
|
11185
11243
|
}), Vr = !Br && w != null ? [
|
|
11186
11244
|
L(B, {
|
|
11187
|
-
pipetteId:
|
|
11245
|
+
pipetteId: N,
|
|
11188
11246
|
labwareId: I,
|
|
11189
11247
|
wellName: w,
|
|
11190
11248
|
wellLocation: Wt
|
|
@@ -11192,14 +11250,14 @@ ${Y(
|
|
|
11192
11250
|
] : [], ls = [...Vn(
|
|
11193
11251
|
Tn,
|
|
11194
11252
|
(ye, ie) => {
|
|
11195
|
-
const
|
|
11253
|
+
const kt = (Ee, cr = !0) => me > 0 && // don't air gap if end of full transfer and not changing tip
|
|
11196
11254
|
!(v === "never" && $e && Ee) ? [
|
|
11197
11255
|
...cr ? Vr : [],
|
|
11198
|
-
L(
|
|
11199
|
-
pipetteId:
|
|
11256
|
+
L(Ct, {
|
|
11257
|
+
pipetteId: N
|
|
11200
11258
|
}),
|
|
11201
|
-
L(
|
|
11202
|
-
pipetteId:
|
|
11259
|
+
L(Pt, {
|
|
11260
|
+
pipetteId: N,
|
|
11203
11261
|
volume: me,
|
|
11204
11262
|
flowRate: ua,
|
|
11205
11263
|
...la > 0 ? {
|
|
@@ -11209,18 +11267,18 @@ ${Y(
|
|
|
11209
11267
|
...gr
|
|
11210
11268
|
] : [], zt = (Ee) => w != null && pe ? [
|
|
11211
11269
|
L(Xt, {
|
|
11212
|
-
pipetteId:
|
|
11270
|
+
pipetteId: N,
|
|
11213
11271
|
labwareId: I,
|
|
11214
11272
|
wellName: w,
|
|
11215
11273
|
...lt != null ? { mmFromEdge: lt } : {},
|
|
11216
|
-
zOffsetFromTop:
|
|
11274
|
+
zOffsetFromTop: At,
|
|
11217
11275
|
...$t != null ? { speed: $t } : {}
|
|
11218
11276
|
}),
|
|
11219
11277
|
// move back to retract position after touch tip if air gap needed
|
|
11220
11278
|
// if retract isn't safe for air gap, air gap commands will include a move to well safe position
|
|
11221
|
-
...
|
|
11279
|
+
...kt(Ee).length > 0 && Br ? [
|
|
11222
11280
|
L(B, {
|
|
11223
|
-
pipetteId:
|
|
11281
|
+
pipetteId: N,
|
|
11224
11282
|
labwareId: I,
|
|
11225
11283
|
wellName: w,
|
|
11226
11284
|
wellLocation: Ut
|
|
@@ -11235,9 +11293,9 @@ ${Y(
|
|
|
11235
11293
|
const Ee = sr?.shift();
|
|
11236
11294
|
Ir = [
|
|
11237
11295
|
k(so, {
|
|
11238
|
-
pipette:
|
|
11296
|
+
pipette: N,
|
|
11239
11297
|
primaryNozzle: x,
|
|
11240
|
-
nozzles:
|
|
11298
|
+
nozzles: R,
|
|
11241
11299
|
dropTipLocation: Mt && pt != null ? pt : Te,
|
|
11242
11300
|
tipRack: Q,
|
|
11243
11301
|
...V === er && Ee != null && q != null ? {
|
|
@@ -11253,17 +11311,17 @@ ${Y(
|
|
|
11253
11311
|
ye,
|
|
11254
11312
|
(Ee, cr) => {
|
|
11255
11313
|
const Gr = cr === 0;
|
|
11256
|
-
let
|
|
11257
|
-
Gr && !rt && !Le ? (
|
|
11314
|
+
let Et = 0, ur = O;
|
|
11315
|
+
Gr && !rt && !Le ? (Et = me, ur = An) : Gr || (Et = K, ur = Sn);
|
|
11258
11316
|
const ha = {
|
|
11259
|
-
origin:
|
|
11317
|
+
origin: Re[h],
|
|
11260
11318
|
offset: {
|
|
11261
11319
|
x: m,
|
|
11262
11320
|
y: b,
|
|
11263
11321
|
z: _
|
|
11264
11322
|
}
|
|
11265
11323
|
}, En = {
|
|
11266
|
-
origin:
|
|
11324
|
+
origin: Re[i],
|
|
11267
11325
|
offset: {
|
|
11268
11326
|
x: c,
|
|
11269
11327
|
y: u,
|
|
@@ -11277,38 +11335,38 @@ ${Y(
|
|
|
11277
11335
|
well: Ee
|
|
11278
11336
|
}), ya = !On && Ee != null ? [
|
|
11279
11337
|
L(B, {
|
|
11280
|
-
pipetteId:
|
|
11338
|
+
pipetteId: N,
|
|
11281
11339
|
labwareId: se,
|
|
11282
11340
|
wellName: Ee,
|
|
11283
11341
|
wellLocation: Wt
|
|
11284
11342
|
})
|
|
11285
|
-
] : [],
|
|
11343
|
+
] : [], Nn = H({
|
|
11286
11344
|
liquidClass: X,
|
|
11287
11345
|
pipetteSpecs: Se,
|
|
11288
11346
|
tiprackDefUri: Q,
|
|
11289
|
-
targetVolume:
|
|
11347
|
+
targetVolume: Et,
|
|
11290
11348
|
liquidHandlingAction: "singleDispense",
|
|
11291
11349
|
byVolumeProperty: "correctionByVolume",
|
|
11292
11350
|
defaultValue: 0
|
|
11293
11351
|
}) ?? 0, Wr = Gr ? [
|
|
11294
11352
|
...Ea.includes(
|
|
11295
|
-
t.pipetteEntities[
|
|
11353
|
+
t.pipetteEntities[N].name
|
|
11296
11354
|
) ? [
|
|
11297
11355
|
L(Un, {
|
|
11298
|
-
pipetteId:
|
|
11356
|
+
pipetteId: N,
|
|
11299
11357
|
volume: le
|
|
11300
11358
|
})
|
|
11301
11359
|
] : [],
|
|
11302
|
-
L(
|
|
11303
|
-
pipetteId:
|
|
11360
|
+
L(Ct, {
|
|
11361
|
+
pipetteId: N
|
|
11304
11362
|
})
|
|
11305
|
-
] : [], ba =
|
|
11363
|
+
] : [], ba = Et > 0 ? [
|
|
11306
11364
|
L(at, {
|
|
11307
|
-
pipetteId:
|
|
11308
|
-
volume:
|
|
11365
|
+
pipetteId: N,
|
|
11366
|
+
volume: Et,
|
|
11309
11367
|
flowRate: ur,
|
|
11310
|
-
...
|
|
11311
|
-
correctionVolume:
|
|
11368
|
+
...Nn > 0 ? {
|
|
11369
|
+
correctionVolume: Nn
|
|
11312
11370
|
} : {},
|
|
11313
11371
|
isAirGap: !0,
|
|
11314
11372
|
pushOut: 0
|
|
@@ -11317,7 +11375,7 @@ ${Y(
|
|
|
11317
11375
|
] : [], Kr = [
|
|
11318
11376
|
...[
|
|
11319
11377
|
L(B, {
|
|
11320
|
-
pipetteId:
|
|
11378
|
+
pipetteId: N,
|
|
11321
11379
|
labwareId: se,
|
|
11322
11380
|
wellName: Ee,
|
|
11323
11381
|
wellLocation: Wt
|
|
@@ -11326,20 +11384,20 @@ ${Y(
|
|
|
11326
11384
|
...ba,
|
|
11327
11385
|
// ...liquidProbeCommand, // for menisucs-relative pipetting
|
|
11328
11386
|
...Wr
|
|
11329
|
-
],
|
|
11387
|
+
], Rn = [
|
|
11330
11388
|
L(B, {
|
|
11331
|
-
pipetteId:
|
|
11389
|
+
pipetteId: N,
|
|
11332
11390
|
labwareId: se,
|
|
11333
11391
|
wellName: Ee,
|
|
11334
11392
|
wellLocation: ha
|
|
11335
11393
|
}),
|
|
11336
11394
|
L(B, {
|
|
11337
|
-
pipetteId:
|
|
11395
|
+
pipetteId: N,
|
|
11338
11396
|
labwareId: se,
|
|
11339
11397
|
...f != null ? { speed: f } : {},
|
|
11340
11398
|
wellName: Ee,
|
|
11341
11399
|
wellLocation: {
|
|
11342
|
-
origin:
|
|
11400
|
+
origin: Re[s],
|
|
11343
11401
|
offset: {
|
|
11344
11402
|
x: y,
|
|
11345
11403
|
y: A,
|
|
@@ -11354,7 +11412,7 @@ ${Y(
|
|
|
11354
11412
|
] : []
|
|
11355
11413
|
], Ar = ue ? [
|
|
11356
11414
|
L(Xt, {
|
|
11357
|
-
pipetteId:
|
|
11415
|
+
pipetteId: N,
|
|
11358
11416
|
labwareId: se,
|
|
11359
11417
|
wellName: Ee,
|
|
11360
11418
|
...xe != null ? { mmFromEdge: xe } : {},
|
|
@@ -11363,9 +11421,9 @@ ${Y(
|
|
|
11363
11421
|
}),
|
|
11364
11422
|
// move back to retract position after touch tip if air gap needed
|
|
11365
11423
|
// if retract isn't safe for air gap, air gap commands will include a move to well safe position
|
|
11366
|
-
...
|
|
11424
|
+
...K > 0 && On ? [
|
|
11367
11425
|
L(B, {
|
|
11368
|
-
pipetteId:
|
|
11426
|
+
pipetteId: N,
|
|
11369
11427
|
labwareId: se,
|
|
11370
11428
|
wellName: Ee,
|
|
11371
11429
|
wellLocation: En
|
|
@@ -11375,15 +11433,15 @@ ${Y(
|
|
|
11375
11433
|
liquidClass: X,
|
|
11376
11434
|
pipetteSpecs: Se,
|
|
11377
11435
|
tiprackDefUri: Q,
|
|
11378
|
-
targetVolume:
|
|
11436
|
+
targetVolume: K,
|
|
11379
11437
|
liquidHandlingAction: "aspirate",
|
|
11380
11438
|
byVolumeProperty: "correctionByVolume",
|
|
11381
11439
|
defaultValue: 0
|
|
11382
|
-
}) ?? 0, pr =
|
|
11440
|
+
}) ?? 0, pr = K > 0 ? [
|
|
11383
11441
|
...ya,
|
|
11384
|
-
L(
|
|
11385
|
-
pipetteId:
|
|
11386
|
-
volume:
|
|
11442
|
+
L(Pt, {
|
|
11443
|
+
pipetteId: N,
|
|
11444
|
+
volume: K,
|
|
11387
11445
|
flowRate: ca,
|
|
11388
11446
|
...Yr > 0 ? {
|
|
11389
11447
|
correctionVolume: Yr
|
|
@@ -11392,7 +11450,7 @@ ${Y(
|
|
|
11392
11450
|
...gr
|
|
11393
11451
|
] : [], vr = [
|
|
11394
11452
|
L(Wa, {
|
|
11395
|
-
pipetteId:
|
|
11453
|
+
pipetteId: N,
|
|
11396
11454
|
volume: Oe,
|
|
11397
11455
|
flowRate: a,
|
|
11398
11456
|
correctionVolume: wr
|
|
@@ -11400,7 +11458,7 @@ ${Y(
|
|
|
11400
11458
|
...gr
|
|
11401
11459
|
], _a = [
|
|
11402
11460
|
L(B, {
|
|
11403
|
-
pipetteId:
|
|
11461
|
+
pipetteId: N,
|
|
11404
11462
|
labwareId: se,
|
|
11405
11463
|
...l != null ? { speed: l } : {},
|
|
11406
11464
|
wellName: Ee,
|
|
@@ -11414,7 +11472,7 @@ ${Y(
|
|
|
11414
11472
|
];
|
|
11415
11473
|
return [
|
|
11416
11474
|
...Kr,
|
|
11417
|
-
...
|
|
11475
|
+
...Rn,
|
|
11418
11476
|
...vr,
|
|
11419
11477
|
..._a,
|
|
11420
11478
|
...Ar,
|
|
@@ -11425,13 +11483,13 @@ ${Y(
|
|
|
11425
11483
|
// destination is well
|
|
11426
11484
|
w != null ? [
|
|
11427
11485
|
L(B, {
|
|
11428
|
-
pipetteId:
|
|
11486
|
+
pipetteId: N,
|
|
11429
11487
|
labwareId: I,
|
|
11430
11488
|
wellName: w,
|
|
11431
11489
|
wellLocation: Wt
|
|
11432
11490
|
}),
|
|
11433
11491
|
L(B, {
|
|
11434
|
-
pipetteId:
|
|
11492
|
+
pipetteId: N,
|
|
11435
11493
|
labwareId: I,
|
|
11436
11494
|
wellName: w,
|
|
11437
11495
|
wellLocation: ia,
|
|
@@ -11441,7 +11499,7 @@ ${Y(
|
|
|
11441
11499
|
// destination is trash or waste chute
|
|
11442
11500
|
[
|
|
11443
11501
|
L(ze, {
|
|
11444
|
-
pipetteId:
|
|
11502
|
+
pipetteId: N,
|
|
11445
11503
|
fixtureId: I,
|
|
11446
11504
|
offset: {
|
|
11447
11505
|
x: 0,
|
|
@@ -11455,34 +11513,34 @@ ${Y(
|
|
|
11455
11513
|
liquidClass: X,
|
|
11456
11514
|
pipetteSpecs: Se,
|
|
11457
11515
|
tiprackDefUri: Q,
|
|
11458
|
-
targetVolume:
|
|
11516
|
+
targetVolume: K,
|
|
11459
11517
|
liquidHandlingAction: "singleDispense",
|
|
11460
11518
|
byVolumeProperty: "correctionByVolume",
|
|
11461
11519
|
defaultValue: 0
|
|
11462
|
-
}) ?? 0, vn =
|
|
11520
|
+
}) ?? 0, vn = K > 0 ? [
|
|
11463
11521
|
L(at, {
|
|
11464
|
-
pipetteId:
|
|
11465
|
-
volume:
|
|
11522
|
+
pipetteId: N,
|
|
11523
|
+
volume: K,
|
|
11466
11524
|
flowRate: Sn,
|
|
11467
11525
|
pushOut: 0,
|
|
11468
11526
|
correctionVolume: fa,
|
|
11469
11527
|
isAirGap: !0
|
|
11470
11528
|
}),
|
|
11471
11529
|
...xr
|
|
11472
|
-
] : [],
|
|
11530
|
+
] : [], Lt = w != null ? [
|
|
11473
11531
|
L(B, {
|
|
11474
|
-
pipetteId:
|
|
11532
|
+
pipetteId: N,
|
|
11475
11533
|
labwareId: I,
|
|
11476
11534
|
wellName: w,
|
|
11477
11535
|
wellLocation: ia
|
|
11478
11536
|
}),
|
|
11479
11537
|
L(B, {
|
|
11480
|
-
pipetteId:
|
|
11538
|
+
pipetteId: N,
|
|
11481
11539
|
labwareId: I,
|
|
11482
11540
|
...Ce != null ? { speed: Ce } : {},
|
|
11483
11541
|
wellName: w,
|
|
11484
11542
|
wellLocation: {
|
|
11485
|
-
origin:
|
|
11543
|
+
origin: Re[F],
|
|
11486
11544
|
offset: {
|
|
11487
11545
|
x: ve,
|
|
11488
11546
|
y: Je,
|
|
@@ -11503,35 +11561,35 @@ ${Y(
|
|
|
11503
11561
|
liquidHandlingAction: "singleDispense",
|
|
11504
11562
|
byVolumeProperty: "correctionByVolume",
|
|
11505
11563
|
defaultValue: 0
|
|
11506
|
-
}) ?? 0, Tr =
|
|
11564
|
+
}) ?? 0, Tr = W != null ? 0 : D, jr = [
|
|
11507
11565
|
L(at, {
|
|
11508
|
-
pipetteId:
|
|
11566
|
+
pipetteId: N,
|
|
11509
11567
|
volume: le,
|
|
11510
11568
|
flowRate: O,
|
|
11511
11569
|
...Tr != null ? { pushOut: Tr } : {},
|
|
11512
11570
|
correctionVolume: ma
|
|
11513
11571
|
}),
|
|
11514
11572
|
...xr
|
|
11515
|
-
], ir = (
|
|
11573
|
+
], ir = (W != null ? H({
|
|
11516
11574
|
liquidClass: X,
|
|
11517
11575
|
pipetteSpecs: Se,
|
|
11518
11576
|
tiprackDefUri: Q,
|
|
11519
|
-
targetVolume:
|
|
11577
|
+
targetVolume: W.volume,
|
|
11520
11578
|
liquidHandlingAction: "aspirate",
|
|
11521
11579
|
byVolumeProperty: "flowRateByVolume",
|
|
11522
11580
|
defaultValue: null
|
|
11523
|
-
}) : a) ?? a, lr = (
|
|
11581
|
+
}) : a) ?? a, lr = (W != null ? H({
|
|
11524
11582
|
liquidClass: X,
|
|
11525
11583
|
pipetteSpecs: Se,
|
|
11526
11584
|
tiprackDefUri: Q,
|
|
11527
|
-
targetVolume:
|
|
11585
|
+
targetVolume: W.volume,
|
|
11528
11586
|
liquidHandlingAction: "singleDispense",
|
|
11529
11587
|
byVolumeProperty: "flowRateByVolume",
|
|
11530
11588
|
defaultValue: null
|
|
11531
|
-
}) : O) ?? O, kn =
|
|
11532
|
-
pipette:
|
|
11533
|
-
volume:
|
|
11534
|
-
times:
|
|
11589
|
+
}) : O) ?? O, kn = W != null ? tn({
|
|
11590
|
+
pipette: N,
|
|
11591
|
+
volume: W.volume,
|
|
11592
|
+
times: W.times,
|
|
11535
11593
|
aspirateFlowRateUlSec: ir,
|
|
11536
11594
|
dispenseFlowRateUlSec: lr,
|
|
11537
11595
|
aspirateDelaySeconds: n?.seconds,
|
|
@@ -11543,7 +11601,7 @@ ${Y(
|
|
|
11543
11601
|
generatePython: !1
|
|
11544
11602
|
}) : [], Hr = [
|
|
11545
11603
|
L(Qn, {
|
|
11546
|
-
pipetteId:
|
|
11604
|
+
pipetteId: N,
|
|
11547
11605
|
flowRate: g
|
|
11548
11606
|
})
|
|
11549
11607
|
];
|
|
@@ -11551,10 +11609,10 @@ ${Y(
|
|
|
11551
11609
|
S == null || // should be disallowed in UI, but just in case
|
|
11552
11610
|
S === ta ? Sr = [
|
|
11553
11611
|
...zt(!0),
|
|
11554
|
-
...
|
|
11612
|
+
...kt(!0)
|
|
11555
11613
|
] : S === Ka && w != null ? Sr = [
|
|
11556
11614
|
L(B, {
|
|
11557
|
-
pipetteId:
|
|
11615
|
+
pipetteId: N,
|
|
11558
11616
|
labwareId: I,
|
|
11559
11617
|
wellName: w,
|
|
11560
11618
|
wellLocation: {
|
|
@@ -11563,13 +11621,13 @@ ${Y(
|
|
|
11563
11621
|
}),
|
|
11564
11622
|
...Hr,
|
|
11565
11623
|
...zt(!0),
|
|
11566
|
-
...
|
|
11624
|
+
...kt(!0)
|
|
11567
11625
|
] : Sr = [
|
|
11568
11626
|
...zt(!1),
|
|
11569
|
-
...
|
|
11627
|
+
...kt(!1),
|
|
11570
11628
|
L(ze, {
|
|
11571
|
-
pipetteId:
|
|
11572
|
-
fixtureId: Object.values(
|
|
11629
|
+
pipetteId: N,
|
|
11630
|
+
fixtureId: Object.values(Ne).length > 0 ? Object.values(Ne)[0].id : Object.values(qe)[0].id,
|
|
11573
11631
|
offset: {
|
|
11574
11632
|
x: 0,
|
|
11575
11633
|
y: 0,
|
|
@@ -11577,11 +11635,11 @@ ${Y(
|
|
|
11577
11635
|
}
|
|
11578
11636
|
}),
|
|
11579
11637
|
...Hr,
|
|
11580
|
-
...
|
|
11638
|
+
...kt(!0, !1)
|
|
11581
11639
|
];
|
|
11582
11640
|
const Ln = Mt && (ie === Tn.length - 1 || v === "always") ? [
|
|
11583
11641
|
L(ea, {
|
|
11584
|
-
pipette:
|
|
11642
|
+
pipette: N,
|
|
11585
11643
|
dropTipLocation: Q,
|
|
11586
11644
|
isReturnTip: Mt
|
|
11587
11645
|
})
|
|
@@ -11592,7 +11650,7 @@ ${Y(
|
|
|
11592
11650
|
...Ur,
|
|
11593
11651
|
...zr,
|
|
11594
11652
|
...vn,
|
|
11595
|
-
...
|
|
11653
|
+
...Lt,
|
|
11596
11654
|
...jr,
|
|
11597
11655
|
...kn,
|
|
11598
11656
|
...Sr,
|
|
@@ -11605,7 +11663,7 @@ ${Y(
|
|
|
11605
11663
|
t,
|
|
11606
11664
|
r
|
|
11607
11665
|
);
|
|
11608
|
-
},
|
|
11666
|
+
}, Zv = (e, t, r) => {
|
|
11609
11667
|
const { pipetteId: n, trashId: a, flowRate: s, volume: o } = e, { pipetteEntities: i, trashBinEntities: l } = t, c = l[a], u = i[n].pythonName, p = c.pythonName, d = [
|
|
11610
11668
|
`volume=${o}`,
|
|
11611
11669
|
`location=${p}`,
|
|
@@ -11615,7 +11673,7 @@ ${Y(
|
|
|
11615
11673
|
], h = () => ({
|
|
11616
11674
|
commands: [],
|
|
11617
11675
|
python: `${u}.dispense(
|
|
11618
|
-
${
|
|
11676
|
+
${G(
|
|
11619
11677
|
d.join(`,
|
|
11620
11678
|
`)
|
|
11621
11679
|
)},
|
|
@@ -11638,7 +11696,7 @@ ${Y(
|
|
|
11638
11696
|
t,
|
|
11639
11697
|
r
|
|
11640
11698
|
);
|
|
11641
|
-
},
|
|
11699
|
+
}, Jv = (e, t, r) => {
|
|
11642
11700
|
const { pipetteId: n, flowRate: a, volume: s, wasteChuteId: o } = e, { pipetteEntities: i, wasteChuteEntities: l } = t, c = l[o].pythonName, u = i[n].pythonName, p = [
|
|
11643
11701
|
`volume=${s}`,
|
|
11644
11702
|
`location=${c}`,
|
|
@@ -11648,7 +11706,7 @@ ${Y(
|
|
|
11648
11706
|
], d = () => ({
|
|
11649
11707
|
commands: [],
|
|
11650
11708
|
python: `${u}.dispense(
|
|
11651
|
-
${
|
|
11709
|
+
${G(
|
|
11652
11710
|
p.join(`,
|
|
11653
11711
|
`)
|
|
11654
11712
|
)},
|
|
@@ -11671,7 +11729,7 @@ ${Y(
|
|
|
11671
11729
|
t,
|
|
11672
11730
|
r
|
|
11673
11731
|
);
|
|
11674
|
-
},
|
|
11732
|
+
}, Qv = (e, t, r) => {
|
|
11675
11733
|
const {
|
|
11676
11734
|
aspirateDelay: n,
|
|
11677
11735
|
aspirateFlowRateUlSec: a,
|
|
@@ -11714,9 +11772,9 @@ ${Y(
|
|
|
11714
11772
|
dispenseXOffset: De,
|
|
11715
11773
|
dispenseYOffset: Te,
|
|
11716
11774
|
dispenseZOffset: X,
|
|
11717
|
-
dropTipLocation:
|
|
11718
|
-
liquidClass:
|
|
11719
|
-
mixBeforeAspirate:
|
|
11775
|
+
dropTipLocation: W,
|
|
11776
|
+
liquidClass: R,
|
|
11777
|
+
mixBeforeAspirate: N,
|
|
11720
11778
|
nozzles: x,
|
|
11721
11779
|
pipette: D,
|
|
11722
11780
|
preWetTip: se,
|
|
@@ -11732,44 +11790,44 @@ ${Y(
|
|
|
11732
11790
|
touchTipAfterAspirate: He,
|
|
11733
11791
|
touchTipAfterAspirateMmFromEdge: pe,
|
|
11734
11792
|
touchTipAfterAspirateOffsetMmFromTop: lt,
|
|
11735
|
-
touchTipAfterAspirateSpeed:
|
|
11793
|
+
touchTipAfterAspirateSpeed: At,
|
|
11736
11794
|
touchTipAfterDispense: $t,
|
|
11737
|
-
touchTipAfterDispenseMmFromEdge:
|
|
11795
|
+
touchTipAfterDispenseMmFromEdge: vt,
|
|
11738
11796
|
touchTipAfterDispenseOffsetMmFromTop: Oe,
|
|
11739
11797
|
touchTipAfterDispenseSpeed: ct,
|
|
11740
11798
|
stepNumber: we,
|
|
11741
|
-
volume:
|
|
11799
|
+
volume: Ne
|
|
11742
11800
|
} = e, {
|
|
11743
11801
|
pipetteEntities: qe,
|
|
11744
11802
|
labwareEntities: re,
|
|
11745
11803
|
trashBinEntities: ne,
|
|
11746
11804
|
wasteChuteEntities: Ft
|
|
11747
|
-
} = t, et = "distribute",
|
|
11805
|
+
} = t, et = "distribute", K = [], me = qe[D]?.spec.channels !== 1, Dr = re[V]?.def.parameters.quirks?.includes(
|
|
11748
11806
|
"touchTipDisabled"
|
|
11749
11807
|
), ut = e.aspirateAirGapVolume ?? 0, Be = e.dispenseAirGapVolume ?? 0, he = e.disposalVolume != null && e.disposalVolume > 0 ? e.disposalVolume : 0, pt = e.conditioningVolume != null && e.conditioningVolume > 0 ? e.conditioningVolume : 0;
|
|
11750
|
-
(r.pipettes[D] == null || qe[D] == null) &&
|
|
11808
|
+
(r.pipettes[D] == null || qe[D] == null) && K.push(
|
|
11751
11809
|
wt({
|
|
11752
11810
|
pipette: D
|
|
11753
11811
|
})
|
|
11754
|
-
), (!V || !r.labware[V]) &&
|
|
11812
|
+
), (!V || !r.labware[V]) && K.push(
|
|
11755
11813
|
gt({
|
|
11756
11814
|
actionName: et,
|
|
11757
11815
|
labware: V
|
|
11758
11816
|
})
|
|
11759
11817
|
);
|
|
11760
|
-
const un =
|
|
11818
|
+
const un = Y(
|
|
11761
11819
|
r.labware[I]?.stack
|
|
11762
|
-
), Mt =
|
|
11820
|
+
), Mt = Y(
|
|
11763
11821
|
r.labware[V]?.stack
|
|
11764
11822
|
);
|
|
11765
|
-
Object.keys(Ft).length > 0 && (un ===
|
|
11823
|
+
Object.keys(Ft).length > 0 && (un === Rr || Mt === Rr) && K.push(Ba());
|
|
11766
11824
|
const pn = [
|
|
11767
11825
|
...Object.keys(t.trashBinEntities),
|
|
11768
11826
|
...Object.keys(t.wasteChuteEntities)
|
|
11769
11827
|
], br = pn.length > 0 ? pn[0] : null, tt = Object.values(t.labwareEntities).find(
|
|
11770
|
-
({ labwareDefURI: le }) => le ===
|
|
11771
|
-
), Q = tt != null && Pr(tt.def), xt = t.wasteChuteEntities[
|
|
11772
|
-
(
|
|
11828
|
+
({ labwareDefURI: le }) => le === W
|
|
11829
|
+
), Q = tt != null && Pr(tt.def), xt = t.wasteChuteEntities[W] != null, Se = t.trashBinEntities[W] != null, yt = r.tipState.pipettes[D]?.hasTip;
|
|
11830
|
+
(W == null || Q && br == null && v !== "never" && yt || !Q && !xt && !Se) && K.push(Wn());
|
|
11773
11831
|
let Z, j;
|
|
11774
11832
|
if (v === "never") {
|
|
11775
11833
|
const le = r.tipState.pipettes[D]?.tiprackURI;
|
|
@@ -11778,19 +11836,19 @@ ${Y(
|
|
|
11778
11836
|
Z = Object.values(re).find(
|
|
11779
11837
|
({ labwareDefURI: le }) => le === U
|
|
11780
11838
|
), j = U;
|
|
11781
|
-
Z == null && (v === "never" ?
|
|
11839
|
+
Z == null && (v === "never" ? K.push(tr({ actionName: et, pipette: D })) : K.push(
|
|
11782
11840
|
gt({ actionName: et, labware: j })
|
|
11783
11841
|
));
|
|
11784
11842
|
const { def: bt = null } = Z ?? {}, {
|
|
11785
11843
|
spec: fe,
|
|
11786
11844
|
name: dt,
|
|
11787
11845
|
pythonName: ar
|
|
11788
|
-
} = qe[D], Bt = qa()[
|
|
11846
|
+
} = qe[D], Bt = qa()[R === Iu || R == null ? Tu : R].byPipette?.find(
|
|
11789
11847
|
({ pipetteModel: le }) => le === rn(fe)
|
|
11790
11848
|
)?.byTipType.find(({ tiprack: le }) => le === j) ?? null, { aspirate: dn, multiDispense: _r } = Bt ?? {}, { multiWellHandling: qr } = Zy({
|
|
11791
11849
|
pipetteSpecs: fe,
|
|
11792
11850
|
tiprackDefinition: bt,
|
|
11793
|
-
volume:
|
|
11851
|
+
volume: Ne,
|
|
11794
11852
|
path: "multiDispense",
|
|
11795
11853
|
numAspirateWells: 1,
|
|
11796
11854
|
numDispenseWells: w.length,
|
|
@@ -11801,7 +11859,7 @@ ${Y(
|
|
|
11801
11859
|
if (
|
|
11802
11860
|
// We stop users from selecting the distribute path if we can't fit > 1 chunk into
|
|
11803
11861
|
// the tip, but older protocols can have distributed selected and trigger this error
|
|
11804
|
-
(!qr.isSupported || wr == null || wr === 1) &&
|
|
11862
|
+
(!qr.isSupported || wr == null || wr === 1) && K.push(rw()), me && x !== Ye
|
|
11805
11863
|
) {
|
|
11806
11864
|
const le = Dt({
|
|
11807
11865
|
robotState: r,
|
|
@@ -11813,7 +11871,7 @@ ${Y(
|
|
|
11813
11871
|
primaryNozzle: $,
|
|
11814
11872
|
nozzleConfiguration: x
|
|
11815
11873
|
});
|
|
11816
|
-
le.isSafe ||
|
|
11874
|
+
le.isSafe || K.push(
|
|
11817
11875
|
Zt({
|
|
11818
11876
|
unsafePipetteMovementReason: le.reason
|
|
11819
11877
|
})
|
|
@@ -11828,7 +11886,7 @@ ${Y(
|
|
|
11828
11886
|
primaryNozzle: $,
|
|
11829
11887
|
nozzleConfiguration: x
|
|
11830
11888
|
});
|
|
11831
|
-
rt.isSafe ||
|
|
11889
|
+
rt.isSafe || K.push(
|
|
11832
11890
|
Zt({
|
|
11833
11891
|
unsafePipetteMovementReason: rt.reason
|
|
11834
11892
|
})
|
|
@@ -11847,7 +11905,7 @@ ${Y(
|
|
|
11847
11905
|
i,
|
|
11848
11906
|
ke
|
|
11849
11907
|
);
|
|
11850
|
-
Vt != null && $r != null && Vt > $r &&
|
|
11908
|
+
Vt != null && $r != null && Vt > $r && K.push(Yh()), Vt != null && Fr != null && Vt > Fr && K.push(Xh());
|
|
11851
11909
|
const fn = [
|
|
11852
11910
|
L(B, {
|
|
11853
11911
|
pipetteId: D,
|
|
@@ -11856,16 +11914,16 @@ ${Y(
|
|
|
11856
11914
|
wellLocation: Wt
|
|
11857
11915
|
})
|
|
11858
11916
|
], Mr = lp(D, t, j) - ut;
|
|
11859
|
-
if (Math.floor((Mr - he) /
|
|
11917
|
+
if (Math.floor((Mr - he) / Ne) === 0 && K.push(
|
|
11860
11918
|
Is({
|
|
11861
11919
|
actionName: et,
|
|
11862
|
-
volume:
|
|
11920
|
+
volume: Ne,
|
|
11863
11921
|
maxVolume: Mr,
|
|
11864
11922
|
disposalVolume: he
|
|
11865
11923
|
})
|
|
11866
|
-
),
|
|
11924
|
+
), K.length > 0)
|
|
11867
11925
|
return {
|
|
11868
|
-
errors:
|
|
11926
|
+
errors: K
|
|
11869
11927
|
};
|
|
11870
11928
|
const { tipracks: hn } = ao(
|
|
11871
11929
|
D,
|
|
@@ -11875,14 +11933,14 @@ ${Y(
|
|
|
11875
11933
|
$,
|
|
11876
11934
|
x
|
|
11877
11935
|
), yn = H({
|
|
11878
|
-
liquidClass:
|
|
11936
|
+
liquidClass: R,
|
|
11879
11937
|
pipetteSpecs: fe,
|
|
11880
11938
|
tiprackDefUri: j,
|
|
11881
|
-
targetVolume:
|
|
11939
|
+
targetVolume: Ne,
|
|
11882
11940
|
liquidHandlingAction: "multiDispense",
|
|
11883
11941
|
byVolumeProperty: "correctionByVolume",
|
|
11884
11942
|
defaultValue: 0
|
|
11885
|
-
}) ?? 0, bn = ne[I]?.pythonName ?? Ft[I]?.pythonName, aa = ne[
|
|
11943
|
+
}) ?? 0, bn = ne[I]?.pythonName ?? Ft[I]?.pythonName, aa = ne[W]?.pythonName ?? Ft[W]?.pythonName, _n = S == null ? null : ne[S]?.pythonName ?? Ft[S]?.pythonName, sr = re[V].pythonName, wn = re[I]?.pythonName, gn = (x === Ke ? dr({
|
|
11886
11944
|
labwareDef: re[V].def,
|
|
11887
11945
|
wells: [q],
|
|
11888
11946
|
primaryNozzle: $
|
|
@@ -11894,7 +11952,7 @@ ${Y(
|
|
|
11894
11952
|
gn
|
|
11895
11953
|
)}]`, oa = In.map((le) => `${wn}[${P(le)}]`).join(", "), Tn = [
|
|
11896
11954
|
`name=${P(`${e.commandCreatorFnName}_step_${we}`)}`,
|
|
11897
|
-
...
|
|
11955
|
+
...R != null ? [`base_liquid_class=${ro(R, !0)}`] : [],
|
|
11898
11956
|
`properties=${sp({
|
|
11899
11957
|
args: e,
|
|
11900
11958
|
pipetteName: Es(dt) ? rn(fe) : dt,
|
|
@@ -11902,7 +11960,7 @@ ${Y(
|
|
|
11902
11960
|
liquidClassValuesForTip: Bt
|
|
11903
11961
|
})}`
|
|
11904
11962
|
], or = `${ge}.define_liquid_class(
|
|
11905
|
-
${
|
|
11963
|
+
${G(
|
|
11906
11964
|
Tn.join(`,
|
|
11907
11965
|
`)
|
|
11908
11966
|
)},
|
|
@@ -11916,7 +11974,7 @@ ${Y(
|
|
|
11916
11974
|
wells: Ut,
|
|
11917
11975
|
primaryNozzle: $
|
|
11918
11976
|
}) : Ut)?.map((le) => `${gr}[${P(le)}]`).join(", "), ca = [
|
|
11919
|
-
`volume=${
|
|
11977
|
+
`volume=${Ne}`,
|
|
11920
11978
|
`source=[${sa}]`,
|
|
11921
11979
|
`dest=[${oa ?? bn}]`,
|
|
11922
11980
|
`new_tip=${P(ip(v))}`,
|
|
@@ -11936,41 +11994,41 @@ ${Y(
|
|
|
11936
11994
|
], Sn = () => ({
|
|
11937
11995
|
commands: [],
|
|
11938
11996
|
python: `${ar}.distribute_with_liquid_class(
|
|
11939
|
-
${
|
|
11997
|
+
${G(
|
|
11940
11998
|
ca.join(`,
|
|
11941
11999
|
`)
|
|
11942
12000
|
)},
|
|
11943
12001
|
)`
|
|
11944
12002
|
}), ua = {
|
|
11945
|
-
origin:
|
|
12003
|
+
origin: Re[h],
|
|
11946
12004
|
offset: {
|
|
11947
12005
|
x: m,
|
|
11948
12006
|
y: b,
|
|
11949
12007
|
z: _
|
|
11950
12008
|
}
|
|
11951
12009
|
}, An = {
|
|
11952
|
-
origin:
|
|
12010
|
+
origin: Re[i],
|
|
11953
12011
|
offset: {
|
|
11954
12012
|
x: c,
|
|
11955
12013
|
y: u,
|
|
11956
12014
|
z: p
|
|
11957
12015
|
}
|
|
11958
12016
|
}, Br = {
|
|
11959
|
-
origin:
|
|
12017
|
+
origin: Re[Ze],
|
|
11960
12018
|
offset: {
|
|
11961
12019
|
x: te,
|
|
11962
12020
|
y: ve,
|
|
11963
12021
|
z: Je
|
|
11964
12022
|
}
|
|
11965
12023
|
}, Vr = {
|
|
11966
|
-
origin:
|
|
12024
|
+
origin: Re[ee],
|
|
11967
12025
|
offset: {
|
|
11968
12026
|
x: _e,
|
|
11969
12027
|
y: ae,
|
|
11970
12028
|
z: Ie
|
|
11971
12029
|
}
|
|
11972
12030
|
}, pa = H({
|
|
11973
|
-
liquidClass:
|
|
12031
|
+
liquidClass: R,
|
|
11974
12032
|
pipetteSpecs: fe,
|
|
11975
12033
|
tiprackDefUri: j,
|
|
11976
12034
|
targetVolume: ut,
|
|
@@ -11978,7 +12036,7 @@ ${Y(
|
|
|
11978
12036
|
byVolumeProperty: "flowRateByVolume",
|
|
11979
12037
|
defaultValue: null
|
|
11980
12038
|
}) ?? a, ls = H({
|
|
11981
|
-
liquidClass:
|
|
12039
|
+
liquidClass: R,
|
|
11982
12040
|
pipetteSpecs: fe,
|
|
11983
12041
|
tiprackDefUri: j,
|
|
11984
12042
|
targetVolume: ut,
|
|
@@ -11986,7 +12044,7 @@ ${Y(
|
|
|
11986
12044
|
byVolumeProperty: "flowRateByVolume",
|
|
11987
12045
|
defaultValue: null
|
|
11988
12046
|
}) ?? O, ye = H({
|
|
11989
|
-
liquidClass:
|
|
12047
|
+
liquidClass: R,
|
|
11990
12048
|
pipetteSpecs: fe,
|
|
11991
12049
|
tiprackDefUri: j,
|
|
11992
12050
|
targetVolume: Be,
|
|
@@ -11994,14 +12052,14 @@ ${Y(
|
|
|
11994
12052
|
byVolumeProperty: "flowRateByVolume",
|
|
11995
12053
|
defaultValue: null
|
|
11996
12054
|
}) ?? a, ie = H({
|
|
11997
|
-
liquidClass:
|
|
12055
|
+
liquidClass: R,
|
|
11998
12056
|
pipetteSpecs: fe,
|
|
11999
12057
|
tiprackDefUri: j,
|
|
12000
12058
|
targetVolume: Be,
|
|
12001
12059
|
liquidHandlingAction: "multiDispense",
|
|
12002
12060
|
byVolumeProperty: "flowRateByVolume",
|
|
12003
12061
|
defaultValue: null
|
|
12004
|
-
}) ?? O,
|
|
12062
|
+
}) ?? O, kt = $b(w, wr), zt = jn({
|
|
12005
12063
|
retractZOffset: p,
|
|
12006
12064
|
retractPositionReference: i,
|
|
12007
12065
|
labwareId: V,
|
|
@@ -12015,9 +12073,9 @@ ${Y(
|
|
|
12015
12073
|
wellLocation: Wt
|
|
12016
12074
|
})
|
|
12017
12075
|
] : [], da = [...Vn(
|
|
12018
|
-
|
|
12076
|
+
kt,
|
|
12019
12077
|
(le, rt) => {
|
|
12020
|
-
const Ir = le.length, Ur =
|
|
12078
|
+
const Ir = le.length, Ur = Ne * Ir, zr = Ur + he + pt, fa = rt === 0, vn = rt === kt.length - 1, Lt = (
|
|
12021
12079
|
// path is in ['always', 'once', 'never']
|
|
12022
12080
|
v === "always" || v === "once" && fa
|
|
12023
12081
|
), ma = Ea.includes(
|
|
@@ -12029,14 +12087,14 @@ ${Y(
|
|
|
12029
12087
|
})
|
|
12030
12088
|
] : [];
|
|
12031
12089
|
let Tr = [];
|
|
12032
|
-
if (
|
|
12090
|
+
if (Lt) {
|
|
12033
12091
|
const Fe = Ut?.shift();
|
|
12034
12092
|
Tr = [
|
|
12035
12093
|
k(so, {
|
|
12036
12094
|
pipette: D,
|
|
12037
12095
|
nozzles: x,
|
|
12038
12096
|
primaryNozzle: $,
|
|
12039
|
-
dropTipLocation: Q && br != null ? br :
|
|
12097
|
+
dropTipLocation: Q && br != null ? br : W,
|
|
12040
12098
|
tipRack: j,
|
|
12041
12099
|
...ue === er && Fe != null && xe != null ? {
|
|
12042
12100
|
tipSelectionArgs: {
|
|
@@ -12048,11 +12106,11 @@ ${Y(
|
|
|
12048
12106
|
];
|
|
12049
12107
|
}
|
|
12050
12108
|
const jr = [
|
|
12051
|
-
L(
|
|
12109
|
+
L(Ct, {
|
|
12052
12110
|
pipetteId: D
|
|
12053
12111
|
})
|
|
12054
12112
|
], ir = H({
|
|
12055
|
-
liquidClass:
|
|
12113
|
+
liquidClass: R,
|
|
12056
12114
|
pipetteSpecs: fe,
|
|
12057
12115
|
tiprackDefUri: j,
|
|
12058
12116
|
targetVolume: Be,
|
|
@@ -12063,7 +12121,7 @@ ${Y(
|
|
|
12063
12121
|
L(be, {
|
|
12064
12122
|
seconds: E.seconds
|
|
12065
12123
|
})
|
|
12066
|
-
] : [], kn = Be > 0 && !
|
|
12124
|
+
] : [], kn = Be > 0 && !Lt && !fa && he === 0 && S == null ? [
|
|
12067
12125
|
L(at, {
|
|
12068
12126
|
isAirGap: !0,
|
|
12069
12127
|
pipetteId: D,
|
|
@@ -12094,7 +12152,7 @@ ${Y(
|
|
|
12094
12152
|
...f != null ? { speed: f } : {},
|
|
12095
12153
|
wellName: q,
|
|
12096
12154
|
wellLocation: {
|
|
12097
|
-
origin:
|
|
12155
|
+
origin: Re[s],
|
|
12098
12156
|
offset: {
|
|
12099
12157
|
x: y,
|
|
12100
12158
|
y: A,
|
|
@@ -12118,13 +12176,13 @@ ${Y(
|
|
|
12118
12176
|
finalPushOut: 0,
|
|
12119
12177
|
// according to transfer_components_executor, don't push out here
|
|
12120
12178
|
invariantContext: t,
|
|
12121
|
-
liquidClass:
|
|
12179
|
+
liquidClass: R,
|
|
12122
12180
|
tiprack: j,
|
|
12123
12181
|
generatePython: !1
|
|
12124
|
-
}) : [], Ee =
|
|
12182
|
+
}) : [], Ee = N != null ? tn({
|
|
12125
12183
|
pipette: D,
|
|
12126
|
-
volume:
|
|
12127
|
-
times:
|
|
12184
|
+
volume: N.volume,
|
|
12185
|
+
times: N.times,
|
|
12128
12186
|
aspirateFlowRateUlSec: a,
|
|
12129
12187
|
dispenseFlowRateUlSec: O,
|
|
12130
12188
|
aspirateDelaySeconds: n?.seconds,
|
|
@@ -12132,7 +12190,7 @@ ${Y(
|
|
|
12132
12190
|
finalPushOut: 0,
|
|
12133
12191
|
// according to transfer_components_executor, don't push out here
|
|
12134
12192
|
invariantContext: t,
|
|
12135
|
-
liquidClass:
|
|
12193
|
+
liquidClass: R,
|
|
12136
12194
|
tiprack: j,
|
|
12137
12195
|
generatePython: !1
|
|
12138
12196
|
}) : [], cr = n != null ? [
|
|
@@ -12146,7 +12204,7 @@ ${Y(
|
|
|
12146
12204
|
wellName: q,
|
|
12147
12205
|
...pe != null ? { mmFromEdge: pe } : {},
|
|
12148
12206
|
zOffsetFromTop: lt,
|
|
12149
|
-
...
|
|
12207
|
+
...At != null ? { speed: At } : {}
|
|
12150
12208
|
}),
|
|
12151
12209
|
// move back to retract position after touch tip if air gap needed
|
|
12152
12210
|
// if retract isn't safe for air gap, air gap commands will include a move to well safe position
|
|
@@ -12158,8 +12216,8 @@ ${Y(
|
|
|
12158
12216
|
wellLocation: An
|
|
12159
12217
|
})
|
|
12160
12218
|
] : []
|
|
12161
|
-
] : [],
|
|
12162
|
-
liquidClass:
|
|
12219
|
+
] : [], Et = H({
|
|
12220
|
+
liquidClass: R,
|
|
12163
12221
|
pipetteSpecs: fe,
|
|
12164
12222
|
tiprackDefUri: j,
|
|
12165
12223
|
targetVolume: ut,
|
|
@@ -12168,17 +12226,17 @@ ${Y(
|
|
|
12168
12226
|
defaultValue: 0
|
|
12169
12227
|
}) ?? 0, ur = ut > 0 ? [
|
|
12170
12228
|
...Le,
|
|
12171
|
-
L(
|
|
12229
|
+
L(Pt, {
|
|
12172
12230
|
pipetteId: D,
|
|
12173
12231
|
volume: ut,
|
|
12174
12232
|
flowRate: pa,
|
|
12175
|
-
...
|
|
12176
|
-
correctionVolume:
|
|
12233
|
+
...Et > 0 ? {
|
|
12234
|
+
correctionVolume: Et
|
|
12177
12235
|
} : {}
|
|
12178
12236
|
}),
|
|
12179
12237
|
...cr
|
|
12180
12238
|
] : [], ha = H({
|
|
12181
|
-
liquidClass:
|
|
12239
|
+
liquidClass: R,
|
|
12182
12240
|
pipetteSpecs: fe,
|
|
12183
12241
|
tiprackDefUri: j,
|
|
12184
12242
|
targetVolume: zr,
|
|
@@ -12186,7 +12244,7 @@ ${Y(
|
|
|
12186
12244
|
byVolumeProperty: "correctionByVolume",
|
|
12187
12245
|
defaultValue: 0
|
|
12188
12246
|
}) ?? 0, En = H({
|
|
12189
|
-
liquidClass:
|
|
12247
|
+
liquidClass: R,
|
|
12190
12248
|
pipetteSpecs: fe,
|
|
12191
12249
|
tiprackDefUri: j,
|
|
12192
12250
|
targetVolume: pt,
|
|
@@ -12211,7 +12269,7 @@ ${Y(
|
|
|
12211
12269
|
}),
|
|
12212
12270
|
...cr,
|
|
12213
12271
|
...On
|
|
12214
|
-
],
|
|
12272
|
+
], Nn = [
|
|
12215
12273
|
L(B, {
|
|
12216
12274
|
pipetteId: D,
|
|
12217
12275
|
labwareId: V,
|
|
@@ -12227,11 +12285,11 @@ ${Y(
|
|
|
12227
12285
|
], Wr = Vn(
|
|
12228
12286
|
le,
|
|
12229
12287
|
(Fe, Kr) => {
|
|
12230
|
-
const
|
|
12288
|
+
const Rn = Kr === 0, Ar = Kr === le.length - 1, Yr = vn && Ar;
|
|
12231
12289
|
let pr = 0, vr = O;
|
|
12232
|
-
|
|
12290
|
+
Rn && ut > 0 ? (pr = ut, vr = ls) : !Rn && Be > 0 && pt === 0 && (pr = Be, vr = ie);
|
|
12233
12291
|
const _a = H({
|
|
12234
|
-
liquidClass:
|
|
12292
|
+
liquidClass: R,
|
|
12235
12293
|
pipetteSpecs: fe,
|
|
12236
12294
|
tiprackDefUri: j,
|
|
12237
12295
|
targetVolume: pr,
|
|
@@ -12275,7 +12333,7 @@ ${Y(
|
|
|
12275
12333
|
...je != null ? { speed: je } : {},
|
|
12276
12334
|
wellName: Fe,
|
|
12277
12335
|
wellLocation: {
|
|
12278
|
-
origin:
|
|
12336
|
+
origin: Re[F],
|
|
12279
12337
|
offset: {
|
|
12280
12338
|
x: De,
|
|
12281
12339
|
y: Te,
|
|
@@ -12298,10 +12356,10 @@ ${Y(
|
|
|
12298
12356
|
z: 0
|
|
12299
12357
|
}
|
|
12300
12358
|
})
|
|
12301
|
-
], wa = he === 0 && Ar ? z : 0,
|
|
12359
|
+
], wa = he === 0 && Ar ? z : 0, Ot = [
|
|
12302
12360
|
L(at, {
|
|
12303
12361
|
pipetteId: D,
|
|
12304
|
-
volume:
|
|
12362
|
+
volume: Ne,
|
|
12305
12363
|
flowRate: O,
|
|
12306
12364
|
...wa != null ? { pushOut: wa } : {},
|
|
12307
12365
|
correctionVolume: yn
|
|
@@ -12326,7 +12384,7 @@ ${Y(
|
|
|
12326
12384
|
flowRate: g
|
|
12327
12385
|
})
|
|
12328
12386
|
] : [], ps = H({
|
|
12329
|
-
liquidClass:
|
|
12387
|
+
liquidClass: R,
|
|
12330
12388
|
pipetteSpecs: fe,
|
|
12331
12389
|
tiprackDefUri: j,
|
|
12332
12390
|
targetVolume: Be,
|
|
@@ -12337,10 +12395,10 @@ ${Y(
|
|
|
12337
12395
|
!(Kr < le.length - 1 && pt > 0) && // don't air gap if end of full transfer and not changing tip
|
|
12338
12396
|
!(v === "never" && Yr && ga) ? [
|
|
12339
12397
|
...Mb ? oo : [],
|
|
12340
|
-
L(
|
|
12398
|
+
L(Ct, {
|
|
12341
12399
|
pipetteId: D
|
|
12342
12400
|
}),
|
|
12343
|
-
L(
|
|
12401
|
+
L(Pt, {
|
|
12344
12402
|
pipetteId: D,
|
|
12345
12403
|
volume: Be,
|
|
12346
12404
|
flowRate: ye,
|
|
@@ -12349,12 +12407,12 @@ ${Y(
|
|
|
12349
12407
|
} : {}
|
|
12350
12408
|
}),
|
|
12351
12409
|
...cr
|
|
12352
|
-
] : [],
|
|
12410
|
+
] : [], Nt = (ga) => Fe != null && $t ? [
|
|
12353
12411
|
L(Xt, {
|
|
12354
12412
|
pipetteId: D,
|
|
12355
12413
|
labwareId: I,
|
|
12356
12414
|
wellName: Fe,
|
|
12357
|
-
...
|
|
12415
|
+
...vt != null ? { mmFromEdge: vt } : {},
|
|
12358
12416
|
zOffsetFromTop: Oe,
|
|
12359
12417
|
...ct != null ? { speed: ct } : {}
|
|
12360
12418
|
}),
|
|
@@ -12374,7 +12432,7 @@ ${Y(
|
|
|
12374
12432
|
let Xr = [];
|
|
12375
12433
|
if (S == null || !Ar)
|
|
12376
12434
|
Xr = [
|
|
12377
|
-
...
|
|
12435
|
+
...Nt(!0),
|
|
12378
12436
|
...Ht(!0)
|
|
12379
12437
|
];
|
|
12380
12438
|
else if (S === Ka)
|
|
@@ -12388,13 +12446,13 @@ ${Y(
|
|
|
12388
12446
|
}
|
|
12389
12447
|
}),
|
|
12390
12448
|
...jt,
|
|
12391
|
-
...
|
|
12449
|
+
...Nt(!0),
|
|
12392
12450
|
...Ht(!0)
|
|
12393
12451
|
];
|
|
12394
12452
|
else if (S === ta) {
|
|
12395
12453
|
const ga = Ht(!0);
|
|
12396
12454
|
Xr = [
|
|
12397
|
-
...
|
|
12455
|
+
...Nt(!1),
|
|
12398
12456
|
...Ht(!1),
|
|
12399
12457
|
L(B, {
|
|
12400
12458
|
pipetteId: D,
|
|
@@ -12412,7 +12470,7 @@ ${Y(
|
|
|
12412
12470
|
pipetteId: D,
|
|
12413
12471
|
labwareId: V,
|
|
12414
12472
|
wellName: q,
|
|
12415
|
-
...
|
|
12473
|
+
...vt != null ? { mmFromEdge: vt } : {},
|
|
12416
12474
|
zOffsetFromTop: Oe,
|
|
12417
12475
|
...ct != null ? { speed: ct } : {}
|
|
12418
12476
|
})
|
|
@@ -12429,7 +12487,7 @@ ${Y(
|
|
|
12429
12487
|
];
|
|
12430
12488
|
} else
|
|
12431
12489
|
Xr = [
|
|
12432
|
-
...
|
|
12490
|
+
...Nt(!1),
|
|
12433
12491
|
...Ht(!1),
|
|
12434
12492
|
L(ze, {
|
|
12435
12493
|
pipetteId: D,
|
|
@@ -12445,12 +12503,12 @@ ${Y(
|
|
|
12445
12503
|
];
|
|
12446
12504
|
return [
|
|
12447
12505
|
...us,
|
|
12448
|
-
...
|
|
12506
|
+
...Ot,
|
|
12449
12507
|
...Pn,
|
|
12450
12508
|
...Xr
|
|
12451
12509
|
];
|
|
12452
12510
|
}
|
|
12453
|
-
), ba = Q && (rt ===
|
|
12511
|
+
), ba = Q && (rt === kt.length - 1 || v === "always") ? [
|
|
12454
12512
|
L(ea, {
|
|
12455
12513
|
pipette: D,
|
|
12456
12514
|
dropTipLocation: j,
|
|
@@ -12464,7 +12522,7 @@ ${Y(
|
|
|
12464
12522
|
...Ee,
|
|
12465
12523
|
...Ln,
|
|
12466
12524
|
...ya,
|
|
12467
|
-
...
|
|
12525
|
+
...Nn,
|
|
12468
12526
|
...Gr,
|
|
12469
12527
|
...ur,
|
|
12470
12528
|
...Wr,
|
|
@@ -12477,7 +12535,7 @@ ${Y(
|
|
|
12477
12535
|
t,
|
|
12478
12536
|
r
|
|
12479
12537
|
);
|
|
12480
|
-
},
|
|
12538
|
+
}, ek = (e, t, r) => {
|
|
12481
12539
|
const {
|
|
12482
12540
|
timerHours: n,
|
|
12483
12541
|
timerMinutes: a,
|
|
@@ -12551,7 +12609,7 @@ ${Y(
|
|
|
12551
12609
|
t,
|
|
12552
12610
|
r
|
|
12553
12611
|
);
|
|
12554
|
-
},
|
|
12612
|
+
}, tk = (e, t, r) => {
|
|
12555
12613
|
const { moduleId: n, profileElements: a, profileTargetLidTemp: s, profileVolume: o } = e, i = cp(r, n);
|
|
12556
12614
|
if (i === null)
|
|
12557
12615
|
return {
|
|
@@ -12570,7 +12628,7 @@ ${Y(
|
|
|
12570
12628
|
);
|
|
12571
12629
|
const u = `${l}_task_${i.numProfilesStarted + 1}`;
|
|
12572
12630
|
return c.push(
|
|
12573
|
-
k(
|
|
12631
|
+
k(Ry, {
|
|
12574
12632
|
moduleId: n,
|
|
12575
12633
|
profileElements: a,
|
|
12576
12634
|
blockMaxVolumeUl: o,
|
|
@@ -12581,24 +12639,24 @@ ${Y(
|
|
|
12581
12639
|
t,
|
|
12582
12640
|
r
|
|
12583
12641
|
);
|
|
12584
|
-
},
|
|
12642
|
+
}, rk = () => ({
|
|
12585
12643
|
lidOpen: !1,
|
|
12586
12644
|
lidClosed: !1,
|
|
12587
12645
|
setBlockTemperature: !1,
|
|
12588
12646
|
deactivateBlockTemperature: !1,
|
|
12589
12647
|
setLidTemperature: !1,
|
|
12590
12648
|
deactivateLidTemperature: !1
|
|
12591
|
-
}),
|
|
12649
|
+
}), nk = (e, t) => !e.lidOpen && t.lidOpen ? {
|
|
12592
12650
|
lidOpen: !0
|
|
12593
|
-
} : {},
|
|
12651
|
+
} : {}, ak = (e, t) => e.lidOpen && !t.lidOpen || e.lidOpen === null && !t.lidOpen ? {
|
|
12594
12652
|
lidClosed: !0
|
|
12595
|
-
} : {},
|
|
12596
|
-
const r = { ...
|
|
12653
|
+
} : {}, sk = (e, t) => t == null ? e.currentBlockActivity.type === "blockDeactivated" : e.currentBlockActivity.type === "blockTargetTemp" && e.currentBlockActivity.blockTargetTemp === t, ok = (e, t) => {
|
|
12654
|
+
const r = { ...nk(e, t) }, n = { ...ak(e, t) }, a = !sk(
|
|
12597
12655
|
e,
|
|
12598
12656
|
t.blockTargetTemp
|
|
12599
12657
|
), s = a && t.blockTargetTemp === null, o = a && t.blockTargetTemp !== null, i = e.lidTargetTemp !== t.lidTargetTemp, l = i && t.lidTargetTemp === null, c = i && t.lidTargetTemp !== null;
|
|
12600
12658
|
return {
|
|
12601
|
-
...
|
|
12659
|
+
...rk(),
|
|
12602
12660
|
...r,
|
|
12603
12661
|
...n,
|
|
12604
12662
|
setBlockTemperature: o,
|
|
@@ -12606,7 +12664,7 @@ ${Y(
|
|
|
12606
12664
|
setLidTemperature: c,
|
|
12607
12665
|
deactivateLidTemperature: l
|
|
12608
12666
|
};
|
|
12609
|
-
},
|
|
12667
|
+
}, ik = (e, t, r) => {
|
|
12610
12668
|
const n = cp(
|
|
12611
12669
|
r,
|
|
12612
12670
|
e.moduleId
|
|
@@ -12626,7 +12684,7 @@ ${Y(
|
|
|
12626
12684
|
deactivateBlockTemperature: i,
|
|
12627
12685
|
setLidTemperature: l,
|
|
12628
12686
|
deactivateLidTemperature: c
|
|
12629
|
-
} =
|
|
12687
|
+
} = ok(n, e), { blockTargetTemp: u, lidTargetTemp: p } = e, d = [];
|
|
12630
12688
|
return a && d.push(
|
|
12631
12689
|
k(jy, {
|
|
12632
12690
|
moduleId: e.moduleId
|
|
@@ -12660,7 +12718,7 @@ ${Y(
|
|
|
12660
12718
|
);
|
|
12661
12719
|
};
|
|
12662
12720
|
var au, Oh;
|
|
12663
|
-
function
|
|
12721
|
+
function lk() {
|
|
12664
12722
|
if (Oh) return au;
|
|
12665
12723
|
Oh = 1;
|
|
12666
12724
|
var e = za(), t = fb(), r = mb();
|
|
@@ -12669,21 +12727,21 @@ function ik() {
|
|
|
12669
12727
|
}
|
|
12670
12728
|
return au = n, au;
|
|
12671
12729
|
}
|
|
12672
|
-
var su,
|
|
12673
|
-
function
|
|
12674
|
-
if (
|
|
12675
|
-
|
|
12730
|
+
var su, Nh;
|
|
12731
|
+
function ck() {
|
|
12732
|
+
if (Nh) return su;
|
|
12733
|
+
Nh = 1;
|
|
12676
12734
|
var e = ln(), t = hr();
|
|
12677
12735
|
function r(n) {
|
|
12678
12736
|
return t(n) && e(n);
|
|
12679
12737
|
}
|
|
12680
12738
|
return su = r, su;
|
|
12681
12739
|
}
|
|
12682
|
-
var ou,
|
|
12683
|
-
function
|
|
12684
|
-
if (
|
|
12685
|
-
|
|
12686
|
-
var e = fy(), t = ja(), r = Sy(), n = hy(), a =
|
|
12740
|
+
var ou, Rh;
|
|
12741
|
+
function uk() {
|
|
12742
|
+
if (Rh) return ou;
|
|
12743
|
+
Rh = 1;
|
|
12744
|
+
var e = fy(), t = ja(), r = Sy(), n = hy(), a = ck(), s = Math.max;
|
|
12687
12745
|
function o(i) {
|
|
12688
12746
|
if (!(i && i.length))
|
|
12689
12747
|
return [];
|
|
@@ -12698,14 +12756,14 @@ function ck() {
|
|
|
12698
12756
|
return ou = o, ou;
|
|
12699
12757
|
}
|
|
12700
12758
|
var iu, Ph;
|
|
12701
|
-
function
|
|
12759
|
+
function pk() {
|
|
12702
12760
|
if (Ph) return iu;
|
|
12703
12761
|
Ph = 1;
|
|
12704
|
-
var e =
|
|
12762
|
+
var e = lk(), t = uk(), r = e(t);
|
|
12705
12763
|
return iu = r, iu;
|
|
12706
12764
|
}
|
|
12707
|
-
var
|
|
12708
|
-
const
|
|
12765
|
+
var dk = pk();
|
|
12766
|
+
const fk = /* @__PURE__ */ Xe(dk), mk = (e, t, r) => {
|
|
12709
12767
|
const {
|
|
12710
12768
|
aspirateAirGapVolume: n,
|
|
12711
12769
|
aspirateDelay: a,
|
|
@@ -12748,9 +12806,9 @@ const dk = /* @__PURE__ */ Xe(pk), fk = (e, t, r) => {
|
|
|
12748
12806
|
dispenseSubmergeYOffset: De,
|
|
12749
12807
|
dispenseSubmergeZOffset: Te,
|
|
12750
12808
|
dispenseXOffset: X,
|
|
12751
|
-
dispenseYOffset:
|
|
12752
|
-
dispenseZOffset:
|
|
12753
|
-
dropTipLocation:
|
|
12809
|
+
dispenseYOffset: W,
|
|
12810
|
+
dispenseZOffset: R,
|
|
12811
|
+
dropTipLocation: N,
|
|
12754
12812
|
liquidClass: x,
|
|
12755
12813
|
mixBeforeAspirate: D,
|
|
12756
12814
|
mixInDestination: se,
|
|
@@ -12766,24 +12824,24 @@ const dk = /* @__PURE__ */ Xe(pk), fk = (e, t, r) => {
|
|
|
12766
12824
|
tipTracking: He,
|
|
12767
12825
|
tiprackSelected: pe,
|
|
12768
12826
|
tipsSelected: lt,
|
|
12769
|
-
touchTipAfterAspirate:
|
|
12827
|
+
touchTipAfterAspirate: At,
|
|
12770
12828
|
touchTipAfterAspirateMmFromEdge: $t,
|
|
12771
|
-
touchTipAfterAspirateOffsetMmFromTop:
|
|
12829
|
+
touchTipAfterAspirateOffsetMmFromTop: vt,
|
|
12772
12830
|
touchTipAfterAspirateSpeed: Oe,
|
|
12773
12831
|
touchTipAfterDispense: ct,
|
|
12774
12832
|
touchTipAfterDispenseMmFromEdge: we,
|
|
12775
|
-
touchTipAfterDispenseOffsetMmFromTop:
|
|
12833
|
+
touchTipAfterDispenseOffsetMmFromTop: Ne,
|
|
12776
12834
|
touchTipAfterDispenseSpeed: qe,
|
|
12777
12835
|
volume: re,
|
|
12778
12836
|
stepNumber: ne
|
|
12779
12837
|
} = e, {
|
|
12780
12838
|
pipetteEntities: Ft,
|
|
12781
12839
|
trashBinEntities: et,
|
|
12782
|
-
wasteChuteEntities:
|
|
12840
|
+
wasteChuteEntities: K,
|
|
12783
12841
|
labwareEntities: me
|
|
12784
12842
|
} = t, Dr = Ya(
|
|
12785
12843
|
me,
|
|
12786
|
-
|
|
12844
|
+
K,
|
|
12787
12845
|
et,
|
|
12788
12846
|
w
|
|
12789
12847
|
), ut = me[U]?.def.parameters.quirks?.includes(
|
|
@@ -12803,19 +12861,19 @@ const dk = /* @__PURE__ */ Xe(pk), fk = (e, t, r) => {
|
|
|
12803
12861
|
labware: U
|
|
12804
12862
|
})
|
|
12805
12863
|
);
|
|
12806
|
-
const pt = r.labware[w] != null ?
|
|
12864
|
+
const pt = r.labware[w] != null ? Y(r.labware[w].stack) : "", un = Y(
|
|
12807
12865
|
r.labware[U]?.stack
|
|
12808
|
-
), Mt = Object.keys(
|
|
12809
|
-
Mt && (pt ===
|
|
12866
|
+
), Mt = Object.keys(K).length > 0, is = K[N] != null, pn = et[N] != null;
|
|
12867
|
+
Mt && (pt === Rr || un === Rr) && he.push(Ba());
|
|
12810
12868
|
const br = [
|
|
12811
12869
|
...Object.keys(t.trashBinEntities),
|
|
12812
12870
|
...Object.keys(t.wasteChuteEntities)
|
|
12813
12871
|
], tt = br.length > 0 ? br[0] : null, Q = Object.values(t.labwareEntities).find(
|
|
12814
|
-
({ labwareDefURI: ie }) => ie ===
|
|
12872
|
+
({ labwareDefURI: ie }) => ie === N
|
|
12815
12873
|
), xt = Q != null && Pr(Q.def), Se = r.tipState.pipettes[$]?.hasTip;
|
|
12816
|
-
if (
|
|
12874
|
+
if (N == null || xt && tt == null && I !== "never" && Se || !xt && !is && !pn)
|
|
12817
12875
|
return { errors: [Wn()] };
|
|
12818
|
-
(!w || !me[w] && !
|
|
12876
|
+
(!w || !me[w] && !K[w] && !et[w]) && he.push(Kh());
|
|
12819
12877
|
let yt, Z;
|
|
12820
12878
|
if (I === "never") {
|
|
12821
12879
|
const ie = r.tipState.pipettes[$]?.tiprackURI;
|
|
@@ -12849,28 +12907,28 @@ const dk = /* @__PURE__ */ Xe(pk), fk = (e, t, r) => {
|
|
|
12849
12907
|
})
|
|
12850
12908
|
), { errors: he };
|
|
12851
12909
|
const ar = re / dt, Bt = Array(dt).fill(ar), dn = {
|
|
12852
|
-
origin:
|
|
12910
|
+
origin: Re[f],
|
|
12853
12911
|
offset: {
|
|
12854
12912
|
x: b,
|
|
12855
12913
|
y: _,
|
|
12856
12914
|
z: y
|
|
12857
12915
|
}
|
|
12858
12916
|
}, _r = {
|
|
12859
|
-
origin:
|
|
12917
|
+
origin: Re[l],
|
|
12860
12918
|
offset: {
|
|
12861
12919
|
x: u,
|
|
12862
12920
|
y: p,
|
|
12863
12921
|
z: d
|
|
12864
12922
|
}
|
|
12865
12923
|
}, qr = {
|
|
12866
|
-
origin:
|
|
12924
|
+
origin: Re[te],
|
|
12867
12925
|
offset: {
|
|
12868
12926
|
x: Je,
|
|
12869
12927
|
y: De,
|
|
12870
12928
|
z: Te
|
|
12871
12929
|
}
|
|
12872
12930
|
}, wr = {
|
|
12873
|
-
origin:
|
|
12931
|
+
origin: Re[_e],
|
|
12874
12932
|
offset: {
|
|
12875
12933
|
x: Ie,
|
|
12876
12934
|
y: Ce,
|
|
@@ -12906,7 +12964,7 @@ const dk = /* @__PURE__ */ Xe(pk), fk = (e, t, r) => {
|
|
|
12906
12964
|
liquidHandlingAction: "aspirate",
|
|
12907
12965
|
byVolumeProperty: "correctionByVolume",
|
|
12908
12966
|
defaultValue: 0
|
|
12909
|
-
}) ?? 0, hn = et[w]?.pythonName ??
|
|
12967
|
+
}) ?? 0, hn = et[w]?.pythonName ?? K[w]?.pythonName, yn = et[N]?.pythonName ?? K[N]?.pythonName, bn = v == null ? null : et[v]?.pythonName ?? K[v]?.pythonName, aa = me[U].pythonName, _n = me[w]?.pythonName, sr = ue === Ke ? dr({
|
|
12910
12968
|
labwareDef: me[U].def,
|
|
12911
12969
|
wells: xe,
|
|
12912
12970
|
primaryNozzle: V
|
|
@@ -12924,7 +12982,7 @@ const dk = /* @__PURE__ */ Xe(pk), fk = (e, t, r) => {
|
|
|
12924
12982
|
liquidClassValuesForTip: fn
|
|
12925
12983
|
})}`
|
|
12926
12984
|
], oa = `${ge}.define_liquid_class(
|
|
12927
|
-
${
|
|
12985
|
+
${G(
|
|
12928
12986
|
sa.join(`,
|
|
12929
12987
|
`)
|
|
12930
12988
|
)},
|
|
@@ -12958,7 +13016,7 @@ ${Y(
|
|
|
12958
13016
|
], xr = () => ({
|
|
12959
13017
|
commands: [],
|
|
12960
13018
|
python: `${$r}.transfer_with_liquid_class(
|
|
12961
|
-
${
|
|
13019
|
+
${G(
|
|
12962
13020
|
la.join(`,
|
|
12963
13021
|
`)
|
|
12964
13022
|
)},
|
|
@@ -12995,18 +13053,18 @@ ${Y(
|
|
|
12995
13053
|
liquidHandlingAction: "singleDispense",
|
|
12996
13054
|
byVolumeProperty: "flowRateByVolume",
|
|
12997
13055
|
defaultValue: null
|
|
12998
|
-
}) ?? M, Br =
|
|
13056
|
+
}) ?? M, Br = fk(
|
|
12999
13057
|
xe,
|
|
13000
13058
|
E
|
|
13001
13059
|
);
|
|
13002
13060
|
let Vr = null, pa = null;
|
|
13003
13061
|
const ye = [...Br.reduce(
|
|
13004
|
-
(ie,
|
|
13005
|
-
const [Le, $e] =
|
|
13062
|
+
(ie, kt, zt) => {
|
|
13063
|
+
const [Le, $e] = kt, da = Bt.reduce(
|
|
13006
13064
|
(le, rt, Ir) => {
|
|
13007
13065
|
const Ur = zt === 0 && Ir === 0, zr = zt + 1 === Br.length, vn = Ir + 1 === Bt.length && zr;
|
|
13008
|
-
let
|
|
13009
|
-
I === "always" ?
|
|
13066
|
+
let Lt = !1;
|
|
13067
|
+
I === "always" ? Lt = !0 : I === "once" ? Lt = Ur : I === "perSource" ? Lt = Le !== Vr : I === "perDest" && (Lt = Ur || $e !== pa);
|
|
13010
13068
|
const ma = Ea.includes(
|
|
13011
13069
|
Vt
|
|
13012
13070
|
) ? [
|
|
@@ -13016,20 +13074,20 @@ ${Y(
|
|
|
13016
13074
|
})
|
|
13017
13075
|
] : [];
|
|
13018
13076
|
let Tr = [];
|
|
13019
|
-
if (
|
|
13020
|
-
const
|
|
13077
|
+
if (Lt) {
|
|
13078
|
+
const Nt = or?.shift();
|
|
13021
13079
|
Tr = [
|
|
13022
13080
|
k(so, {
|
|
13023
13081
|
pipette: $,
|
|
13024
13082
|
primaryNozzle: V,
|
|
13025
13083
|
nozzles: ue,
|
|
13026
|
-
dropTipLocation: xt && tt != null ? tt :
|
|
13084
|
+
dropTipLocation: xt && tt != null ? tt : N,
|
|
13027
13085
|
tipRack: Z,
|
|
13028
13086
|
...ue != null ? { nozzles: ue } : {},
|
|
13029
|
-
...He === er &&
|
|
13087
|
+
...He === er && Nt != null && pe != null ? {
|
|
13030
13088
|
tipSelectionArgs: {
|
|
13031
13089
|
tipRackId: pe,
|
|
13032
|
-
tipWell:
|
|
13090
|
+
tipWell: Nt
|
|
13033
13091
|
}
|
|
13034
13092
|
} : {}
|
|
13035
13093
|
})
|
|
@@ -13085,10 +13143,10 @@ ${Y(
|
|
|
13085
13143
|
wellLocation: Wt
|
|
13086
13144
|
})
|
|
13087
13145
|
], Gr = [
|
|
13088
|
-
L(
|
|
13146
|
+
L(Ct, {
|
|
13089
13147
|
pipetteId: $
|
|
13090
13148
|
})
|
|
13091
|
-
],
|
|
13149
|
+
], Et = H({
|
|
13092
13150
|
liquidClass: x,
|
|
13093
13151
|
pipetteSpecs: ke,
|
|
13094
13152
|
tiprackDefUri: Z,
|
|
@@ -13100,14 +13158,14 @@ ${Y(
|
|
|
13100
13158
|
L(be, {
|
|
13101
13159
|
seconds: F.seconds
|
|
13102
13160
|
})
|
|
13103
|
-
] : [], ha = bt > 0 && !
|
|
13161
|
+
] : [], ha = bt > 0 && !Lt && (Ir > 0 || zt > 0) ? [
|
|
13104
13162
|
L(at, {
|
|
13105
13163
|
isAirGap: !0,
|
|
13106
13164
|
pipetteId: $,
|
|
13107
13165
|
volume: bt,
|
|
13108
13166
|
flowRate: An,
|
|
13109
|
-
...
|
|
13110
|
-
correctionVolume:
|
|
13167
|
+
...Et > 0 ? {
|
|
13168
|
+
correctionVolume: Et
|
|
13111
13169
|
} : {},
|
|
13112
13170
|
pushOut: 0
|
|
13113
13171
|
}),
|
|
@@ -13131,7 +13189,7 @@ ${Y(
|
|
|
13131
13189
|
...m != null ? { speed: m } : {},
|
|
13132
13190
|
wellName: Le,
|
|
13133
13191
|
wellLocation: {
|
|
13134
|
-
origin:
|
|
13192
|
+
origin: Re[o],
|
|
13135
13193
|
offset: {
|
|
13136
13194
|
x: A,
|
|
13137
13195
|
y: T,
|
|
@@ -13158,7 +13216,7 @@ ${Y(
|
|
|
13158
13216
|
liquidClass: x,
|
|
13159
13217
|
tiprack: Z,
|
|
13160
13218
|
generatePython: !1
|
|
13161
|
-
}) : [],
|
|
13219
|
+
}) : [], Nn = D != null ? tn({
|
|
13162
13220
|
pipette: $,
|
|
13163
13221
|
volume: D.volume,
|
|
13164
13222
|
times: D.times,
|
|
@@ -13176,13 +13234,13 @@ ${Y(
|
|
|
13176
13234
|
L(be, {
|
|
13177
13235
|
seconds: a.seconds
|
|
13178
13236
|
})
|
|
13179
|
-
] : [], ba =
|
|
13237
|
+
] : [], ba = At ? [
|
|
13180
13238
|
L(Xt, {
|
|
13181
13239
|
pipetteId: $,
|
|
13182
13240
|
labwareId: U,
|
|
13183
13241
|
wellName: Le,
|
|
13184
13242
|
...$t != null ? { mmFromEdge: $t } : {},
|
|
13185
|
-
zOffsetFromTop:
|
|
13243
|
+
zOffsetFromTop: vt,
|
|
13186
13244
|
...Oe != null ? { speed: Oe } : {}
|
|
13187
13245
|
}),
|
|
13188
13246
|
// move back to retract position after touch tip if air gap needed
|
|
@@ -13205,7 +13263,7 @@ ${Y(
|
|
|
13205
13263
|
defaultValue: 0
|
|
13206
13264
|
}) ?? 0, Kr = j > 0 ? [
|
|
13207
13265
|
...Sr,
|
|
13208
|
-
L(
|
|
13266
|
+
L(Pt, {
|
|
13209
13267
|
pipetteId: $,
|
|
13210
13268
|
volume: j,
|
|
13211
13269
|
flowRate: ca,
|
|
@@ -13214,7 +13272,7 @@ ${Y(
|
|
|
13214
13272
|
} : {}
|
|
13215
13273
|
}),
|
|
13216
13274
|
...Wr
|
|
13217
|
-
] : [],
|
|
13275
|
+
] : [], Rn = [
|
|
13218
13276
|
L(Wa, {
|
|
13219
13277
|
pipetteId: $,
|
|
13220
13278
|
volume: rt,
|
|
@@ -13271,11 +13329,11 @@ ${Y(
|
|
|
13271
13329
|
...ve != null ? { speed: ve } : {},
|
|
13272
13330
|
wellName: $e,
|
|
13273
13331
|
wellLocation: {
|
|
13274
|
-
origin:
|
|
13332
|
+
origin: Re[ee],
|
|
13275
13333
|
offset: {
|
|
13276
13334
|
x: X,
|
|
13277
|
-
y:
|
|
13278
|
-
z:
|
|
13335
|
+
y: W,
|
|
13336
|
+
z: R
|
|
13279
13337
|
}
|
|
13280
13338
|
}
|
|
13281
13339
|
}),
|
|
@@ -13342,12 +13400,12 @@ ${Y(
|
|
|
13342
13400
|
liquidHandlingAction: "aspirate",
|
|
13343
13401
|
byVolumeProperty: "correctionByVolume",
|
|
13344
13402
|
defaultValue: 0
|
|
13345
|
-
}) ?? 0,
|
|
13403
|
+
}) ?? 0, Ot = (Nt, Xr = !0) => bt > 0 && !(I === "never" && vn && Nt) ? [
|
|
13346
13404
|
...Xr ? Ee : [],
|
|
13347
|
-
L(
|
|
13405
|
+
L(Ct, {
|
|
13348
13406
|
pipetteId: $
|
|
13349
13407
|
}),
|
|
13350
|
-
L(
|
|
13408
|
+
L(Pt, {
|
|
13351
13409
|
pipetteId: $,
|
|
13352
13410
|
volume: bt,
|
|
13353
13411
|
flowRate: ua,
|
|
@@ -13356,19 +13414,19 @@ ${Y(
|
|
|
13356
13414
|
} : {}
|
|
13357
13415
|
}),
|
|
13358
13416
|
...Wr
|
|
13359
|
-
] : [], Pn = (
|
|
13417
|
+
] : [], Pn = (Nt) => $e != null && ct ? [
|
|
13360
13418
|
L(Xt, {
|
|
13361
13419
|
pipetteId: $,
|
|
13362
13420
|
labwareId: w,
|
|
13363
13421
|
wellName: $e,
|
|
13364
13422
|
...we != null ? { mmFromEdge: we } : {},
|
|
13365
|
-
zOffsetFromTop:
|
|
13423
|
+
zOffsetFromTop: Ne,
|
|
13366
13424
|
...qe != null ? { speed: qe } : {}
|
|
13367
13425
|
}),
|
|
13368
13426
|
// move back to retract position after touch tip if air gap needed
|
|
13369
13427
|
// if retract isn't safe for air gap, air gap commands will include a move to well safe position
|
|
13370
|
-
...
|
|
13371
|
-
|
|
13428
|
+
...Ot(
|
|
13429
|
+
Nt
|
|
13372
13430
|
).length > 0 && Ln ? [
|
|
13373
13431
|
L(B, {
|
|
13374
13432
|
pipetteId: $,
|
|
@@ -13384,20 +13442,20 @@ ${Y(
|
|
|
13384
13442
|
case void 0:
|
|
13385
13443
|
jt = [
|
|
13386
13444
|
...Pn(!0),
|
|
13387
|
-
...
|
|
13445
|
+
...Ot(!0)
|
|
13388
13446
|
];
|
|
13389
13447
|
break;
|
|
13390
13448
|
case Ka:
|
|
13391
13449
|
jt = [
|
|
13392
13450
|
us,
|
|
13393
13451
|
...Pn(!0),
|
|
13394
|
-
...
|
|
13452
|
+
...Ot(!0)
|
|
13395
13453
|
];
|
|
13396
13454
|
break;
|
|
13397
13455
|
case ta:
|
|
13398
13456
|
jt = [
|
|
13399
13457
|
...Pn(!0),
|
|
13400
|
-
...
|
|
13458
|
+
...Ot(!1),
|
|
13401
13459
|
L(B, {
|
|
13402
13460
|
pipetteId: $,
|
|
13403
13461
|
labwareId: U,
|
|
@@ -13415,11 +13473,11 @@ ${Y(
|
|
|
13415
13473
|
labwareId: U,
|
|
13416
13474
|
wellName: Le,
|
|
13417
13475
|
...we != null ? { mmFromEdge: we } : {},
|
|
13418
|
-
zOffsetFromTop:
|
|
13476
|
+
zOffsetFromTop: Ne,
|
|
13419
13477
|
...qe != null ? { speed: qe } : {}
|
|
13420
13478
|
})
|
|
13421
13479
|
] : [],
|
|
13422
|
-
...
|
|
13480
|
+
...Ot(!0).length > 0 ? [
|
|
13423
13481
|
L(B, {
|
|
13424
13482
|
pipetteId: $,
|
|
13425
13483
|
labwareId: U,
|
|
@@ -13427,26 +13485,26 @@ ${Y(
|
|
|
13427
13485
|
wellLocation: { origin: en }
|
|
13428
13486
|
})
|
|
13429
13487
|
] : [],
|
|
13430
|
-
...
|
|
13488
|
+
...Ot(!0, !1)
|
|
13431
13489
|
];
|
|
13432
13490
|
break;
|
|
13433
13491
|
default:
|
|
13434
13492
|
v in et ? jt = [
|
|
13435
13493
|
...Pn(!1),
|
|
13436
|
-
...
|
|
13494
|
+
...Ot(!1),
|
|
13437
13495
|
L(Db, {
|
|
13438
13496
|
pipetteId: $,
|
|
13439
13497
|
flowRate: S,
|
|
13440
13498
|
trashId: v
|
|
13441
13499
|
}),
|
|
13442
|
-
...
|
|
13443
|
-
] : v in
|
|
13500
|
+
...Ot(!0, !1)
|
|
13501
|
+
] : v in K && (jt = [
|
|
13444
13502
|
L(qb, {
|
|
13445
13503
|
pipetteId: $,
|
|
13446
13504
|
flowRate: S,
|
|
13447
13505
|
wasteChuteId: v
|
|
13448
13506
|
}),
|
|
13449
|
-
...
|
|
13507
|
+
...Ot(!0, !1)
|
|
13450
13508
|
]);
|
|
13451
13509
|
break;
|
|
13452
13510
|
}
|
|
@@ -13460,9 +13518,9 @@ ${Y(
|
|
|
13460
13518
|
...Tr,
|
|
13461
13519
|
...En,
|
|
13462
13520
|
...On,
|
|
13463
|
-
...Rn,
|
|
13464
|
-
...ya,
|
|
13465
13521
|
...Nn,
|
|
13522
|
+
...ya,
|
|
13523
|
+
...Rn,
|
|
13466
13524
|
...Ar,
|
|
13467
13525
|
...ba,
|
|
13468
13526
|
...Kr,
|
|
@@ -13486,7 +13544,7 @@ ${Y(
|
|
|
13486
13544
|
t,
|
|
13487
13545
|
r
|
|
13488
13546
|
);
|
|
13489
|
-
},
|
|
13547
|
+
}, hk = (e, t, r) => oe(
|
|
13490
13548
|
[
|
|
13491
13549
|
k(js, {
|
|
13492
13550
|
moduleId: e.moduleId,
|
|
@@ -13499,7 +13557,7 @@ ${Y(
|
|
|
13499
13557
|
],
|
|
13500
13558
|
t,
|
|
13501
13559
|
r
|
|
13502
|
-
),
|
|
13560
|
+
), yk = (e, t, r) => oe(
|
|
13503
13561
|
[
|
|
13504
13562
|
k(js, {
|
|
13505
13563
|
moduleId: e.moduleId,
|
|
@@ -13512,7 +13570,7 @@ ${Y(
|
|
|
13512
13570
|
],
|
|
13513
13571
|
t,
|
|
13514
13572
|
r
|
|
13515
|
-
),
|
|
13573
|
+
), bk = (e, t, r) => {
|
|
13516
13574
|
const { ventAfter: n } = e;
|
|
13517
13575
|
return oe(
|
|
13518
13576
|
[
|
|
@@ -13541,20 +13599,20 @@ ${Y(
|
|
|
13541
13599
|
],
|
|
13542
13600
|
python: a
|
|
13543
13601
|
};
|
|
13544
|
-
},
|
|
13602
|
+
}, _k = (e, t, r) => {
|
|
13545
13603
|
const { waitCondition: n } = e;
|
|
13546
|
-
return n === "thermocyclerProfileComplete" ?
|
|
13604
|
+
return n === "thermocyclerProfileComplete" ? wk(
|
|
13547
13605
|
e,
|
|
13548
13606
|
t,
|
|
13549
13607
|
r
|
|
13550
|
-
) : n === "vacuumProfileComplete" || n === "vacuumStateComplete" ?
|
|
13608
|
+
) : n === "vacuumProfileComplete" || n === "vacuumStateComplete" ? gk(
|
|
13551
13609
|
e,
|
|
13552
13610
|
t,
|
|
13553
13611
|
r
|
|
13554
13612
|
) : {
|
|
13555
13613
|
errors: [pw(n)]
|
|
13556
13614
|
};
|
|
13557
|
-
},
|
|
13615
|
+
}, wk = (e, t, r) => {
|
|
13558
13616
|
const { moduleId: n } = e, a = [], s = cp(r, n);
|
|
13559
13617
|
if (s == null)
|
|
13560
13618
|
return {
|
|
@@ -13574,8 +13632,8 @@ ${Y(
|
|
|
13574
13632
|
t,
|
|
13575
13633
|
r
|
|
13576
13634
|
));
|
|
13577
|
-
},
|
|
13578
|
-
const { moduleId: n } = e, a = [], s =
|
|
13635
|
+
}, gk = (e, t, r) => {
|
|
13636
|
+
const { moduleId: n } = e, a = [], s = St(r, n);
|
|
13579
13637
|
if (s == null)
|
|
13580
13638
|
return {
|
|
13581
13639
|
errors: [J()]
|
|
@@ -13594,7 +13652,7 @@ ${Y(
|
|
|
13594
13652
|
);
|
|
13595
13653
|
};
|
|
13596
13654
|
var lu, Ch;
|
|
13597
|
-
function
|
|
13655
|
+
function Ik() {
|
|
13598
13656
|
if (Ch) return lu;
|
|
13599
13657
|
Ch = 1;
|
|
13600
13658
|
var e = pb(), t = 1, r = 4;
|
|
@@ -13603,8 +13661,8 @@ function gk() {
|
|
|
13603
13661
|
}
|
|
13604
13662
|
return lu = n, lu;
|
|
13605
13663
|
}
|
|
13606
|
-
var
|
|
13607
|
-
const
|
|
13664
|
+
var Tk = Ik();
|
|
13665
|
+
const Sk = /* @__PURE__ */ Xe(Tk), Ak = [
|
|
13608
13666
|
"A1",
|
|
13609
13667
|
"B1",
|
|
13610
13668
|
"C1",
|
|
@@ -13701,11 +13759,11 @@ const Tk = /* @__PURE__ */ Xe(Ik), Sk = [
|
|
|
13701
13759
|
"F12",
|
|
13702
13760
|
"G12",
|
|
13703
13761
|
"H12"
|
|
13704
|
-
], Gn = "p300SingleId", ks = "p300MultiId", Dh = "p100096Id", qh = "sourcePlateId", $h = "destPlateId", Fh = "troughId",
|
|
13762
|
+
], Gn = "p300SingleId", ks = "p300MultiId", Dh = "p100096Id", qh = "sourcePlateId", $h = "destPlateId", Fh = "troughId", AL = "A1", vL = "tiprack1Id", kL = { isAirGap: !0 }, ms = E_, Mh = L_, hs = O_, Gt = k_, Cn = A_, ys = v_, vk = {
|
|
13705
13763
|
OT_PD_DISABLE_MODULE_RESTRICTIONS: !1
|
|
13706
13764
|
};
|
|
13707
|
-
function
|
|
13708
|
-
return
|
|
13765
|
+
function kk(e) {
|
|
13766
|
+
return Ak.reduce(
|
|
13709
13767
|
(t, r) => ({
|
|
13710
13768
|
...t,
|
|
13711
13769
|
[r]: e ? Ps : ce
|
|
@@ -13713,10 +13771,10 @@ function vk(e) {
|
|
|
13713
13771
|
{}
|
|
13714
13772
|
);
|
|
13715
13773
|
}
|
|
13716
|
-
function
|
|
13774
|
+
function LL(e, t) {
|
|
13717
13775
|
return Array.from("ABCDEFGH").map((r) => `${r}${e}`).reduce((r, n) => ({ ...r, [n]: t }), {});
|
|
13718
13776
|
}
|
|
13719
|
-
function
|
|
13777
|
+
function Lk() {
|
|
13720
13778
|
const e = {
|
|
13721
13779
|
[qh]: {
|
|
13722
13780
|
id: qh,
|
|
@@ -13779,8 +13837,8 @@ function kk() {
|
|
|
13779
13837
|
def: Cn
|
|
13780
13838
|
}
|
|
13781
13839
|
}, t = {}, r = {
|
|
13782
|
-
[
|
|
13783
|
-
id:
|
|
13840
|
+
[Np]: {
|
|
13841
|
+
id: Np,
|
|
13784
13842
|
location: "cutoutA3",
|
|
13785
13843
|
pythonName: "trash_bin_1"
|
|
13786
13844
|
}
|
|
@@ -13814,7 +13872,7 @@ function kk() {
|
|
|
13814
13872
|
id: ks,
|
|
13815
13873
|
tiprackDefURI: [Ae(Gt)],
|
|
13816
13874
|
tiprackLabwareDef: [Gt],
|
|
13817
|
-
spec:
|
|
13875
|
+
spec: R_,
|
|
13818
13876
|
pythonName: "mock_pipette_p300_multi"
|
|
13819
13877
|
},
|
|
13820
13878
|
[Dh]: {
|
|
@@ -13822,7 +13880,7 @@ function kk() {
|
|
|
13822
13880
|
id: Dh,
|
|
13823
13881
|
tiprackDefURI: [Ae(Cn)],
|
|
13824
13882
|
tiprackLabwareDef: [Cn],
|
|
13825
|
-
spec:
|
|
13883
|
+
spec: N_,
|
|
13826
13884
|
pythonName: "mock_pipette_p1000_96"
|
|
13827
13885
|
}
|
|
13828
13886
|
};
|
|
@@ -13836,7 +13894,7 @@ function kk() {
|
|
|
13836
13894
|
gripperEntities: {},
|
|
13837
13895
|
liquidEntities: {},
|
|
13838
13896
|
runtimeParameters: {},
|
|
13839
|
-
config:
|
|
13897
|
+
config: vk
|
|
13840
13898
|
};
|
|
13841
13899
|
}
|
|
13842
13900
|
const na = (e) => {
|
|
@@ -13854,7 +13912,7 @@ const na = (e) => {
|
|
|
13854
13912
|
});
|
|
13855
13913
|
return o.tipState.tipracks = fr(
|
|
13856
13914
|
s,
|
|
13857
|
-
(i) =>
|
|
13915
|
+
(i) => kk(i)
|
|
13858
13916
|
), o;
|
|
13859
13917
|
}, os = () => ({
|
|
13860
13918
|
pipetteLocations: {
|
|
@@ -13894,7 +13952,7 @@ const na = (e) => {
|
|
|
13894
13952
|
}
|
|
13895
13953
|
},
|
|
13896
13954
|
moduleLocations: {}
|
|
13897
|
-
}),
|
|
13955
|
+
}), Ek = () => ({
|
|
13898
13956
|
pipetteLocations: {
|
|
13899
13957
|
[Gn]: {
|
|
13900
13958
|
mount: "left"
|
|
@@ -13918,24 +13976,24 @@ const na = (e) => {
|
|
|
13918
13976
|
}
|
|
13919
13977
|
},
|
|
13920
13978
|
moduleLocations: {}
|
|
13921
|
-
}),
|
|
13979
|
+
}), Ok = (e) => na({
|
|
13922
13980
|
...os(),
|
|
13923
13981
|
invariantContext: e,
|
|
13924
13982
|
tiprackSetting: {
|
|
13925
13983
|
tiprack1Id: !0,
|
|
13926
13984
|
tiprack2Id: !0
|
|
13927
13985
|
}
|
|
13928
|
-
}),
|
|
13929
|
-
...
|
|
13986
|
+
}), EL = (e) => na({
|
|
13987
|
+
...Ek(),
|
|
13930
13988
|
invariantContext: e,
|
|
13931
13989
|
tiprackSetting: {
|
|
13932
13990
|
tiprack1Id: !0,
|
|
13933
13991
|
tiprack2Id: !0
|
|
13934
13992
|
}
|
|
13935
|
-
}),
|
|
13936
|
-
robotState:
|
|
13993
|
+
}), OL = (e) => ({
|
|
13994
|
+
robotState: Ok(e),
|
|
13937
13995
|
warnings: []
|
|
13938
|
-
}),
|
|
13996
|
+
}), NL = (e) => {
|
|
13939
13997
|
const t = na({
|
|
13940
13998
|
...os(),
|
|
13941
13999
|
invariantContext: e,
|
|
@@ -13948,7 +14006,7 @@ const na = (e) => {
|
|
|
13948
14006
|
hasTip: !0,
|
|
13949
14007
|
tiprackURI: "tiprack1Id"
|
|
13950
14008
|
}, t;
|
|
13951
|
-
},
|
|
14009
|
+
}, RL = (e) => {
|
|
13952
14010
|
const t = na({
|
|
13953
14011
|
...os(),
|
|
13954
14012
|
invariantContext: e,
|
|
@@ -13960,18 +14018,18 @@ const na = (e) => {
|
|
|
13960
14018
|
hasTip: !0,
|
|
13961
14019
|
tiprackURI: "tiprack1Id"
|
|
13962
14020
|
}, t.tipState.tipracks.tiprack1Id.A1 = ce, t;
|
|
13963
|
-
},
|
|
14021
|
+
}, PL = (e) => na({
|
|
13964
14022
|
...os(),
|
|
13965
14023
|
invariantContext: e,
|
|
13966
14024
|
tiprackSetting: {
|
|
13967
14025
|
tiprack1Id: !1,
|
|
13968
14026
|
tiprack2Id: !1
|
|
13969
14027
|
}
|
|
13970
|
-
}),
|
|
14028
|
+
}), CL = ({
|
|
13971
14029
|
temperatureModuleId: e,
|
|
13972
14030
|
thermocyclerId: t
|
|
13973
14031
|
}) => {
|
|
13974
|
-
const r =
|
|
14032
|
+
const r = Lk();
|
|
13975
14033
|
r.moduleEntities = {
|
|
13976
14034
|
[e]: {
|
|
13977
14035
|
id: e,
|
|
@@ -13998,7 +14056,7 @@ const na = (e) => {
|
|
|
13998
14056
|
slot: "3",
|
|
13999
14057
|
moduleState: {
|
|
14000
14058
|
type: Qe,
|
|
14001
|
-
status:
|
|
14059
|
+
status: Rs,
|
|
14002
14060
|
targetTemperature: null
|
|
14003
14061
|
}
|
|
14004
14062
|
},
|
|
@@ -14016,8 +14074,8 @@ const na = (e) => {
|
|
|
14016
14074
|
invariantContext: r,
|
|
14017
14075
|
robotState: n
|
|
14018
14076
|
};
|
|
14019
|
-
},
|
|
14020
|
-
const a =
|
|
14077
|
+
}, DL = (e, t, r, n) => {
|
|
14078
|
+
const a = Sk(e);
|
|
14021
14079
|
return a.modules[t].moduleState = {
|
|
14022
14080
|
type: Qe,
|
|
14023
14081
|
targetTemperature: n,
|
|
@@ -14027,28 +14085,28 @@ const na = (e) => {
|
|
|
14027
14085
|
export {
|
|
14028
14086
|
Sw as ABSORBANCE_READER_INITIAL_STATE,
|
|
14029
14087
|
st as AIR,
|
|
14030
|
-
|
|
14088
|
+
kL as AIR_GAP_META,
|
|
14031
14089
|
Op as AIR_GAP_OFFSET_FROM_TOP,
|
|
14032
14090
|
ty as AUTOMATIC,
|
|
14033
14091
|
Lr as BOTTOM_UP_LABWARE_POOL_KEYS,
|
|
14034
|
-
|
|
14092
|
+
Dk as BOTTOM_UP_STORED_LABWARE_URI_KEYS,
|
|
14035
14093
|
Ps as CLEAN,
|
|
14036
14094
|
Me as COLUMN_4_SLOTS,
|
|
14037
14095
|
Bu as CUSTOM_LABWARE_DICT_NAME,
|
|
14038
|
-
|
|
14039
|
-
|
|
14096
|
+
AL as DEFAULT_BLOWOUT_WELL,
|
|
14097
|
+
vk as DEFAULT_CONFIG,
|
|
14040
14098
|
Gn as DEFAULT_PIPETTE,
|
|
14041
14099
|
$h as DEST_LABWARE,
|
|
14042
14100
|
Ka as DEST_WELL_BLOWOUT_DESTINATION,
|
|
14043
14101
|
kr as DIRTY,
|
|
14044
14102
|
ce as EMPTY,
|
|
14045
|
-
|
|
14046
|
-
|
|
14103
|
+
Rw as FAKE_HOPPER_LOCATION_MAP,
|
|
14104
|
+
Np as FIXED_TRASH_ID,
|
|
14047
14105
|
vw as FLEX_STACKER_MODULE_INITIAL_STATE,
|
|
14048
|
-
|
|
14106
|
+
Pk as FLEX_TRASH_DEF_URI,
|
|
14049
14107
|
Ew as GRIPPER_LOCATION,
|
|
14050
14108
|
Tw as HEATERSHAKER_MODULE_INITIAL_STATE,
|
|
14051
|
-
|
|
14109
|
+
Nw as HOPPER_FAKE_LOCATIONS,
|
|
14052
14110
|
mt as HOPPER_STACKER_LOCATION,
|
|
14053
14111
|
Hs as INDENT,
|
|
14054
14112
|
Aw as MAGNETIC_BLOCK_INITIAL_STATE,
|
|
@@ -14059,82 +14117,82 @@ export {
|
|
|
14059
14117
|
Lw as MODULE_INITIAL_STATE_BY_TYPE,
|
|
14060
14118
|
ks as MULTI_PIPETTE,
|
|
14061
14119
|
Oa as OFF_DECK,
|
|
14062
|
-
|
|
14120
|
+
Ck as OT2_TC_SLOTS,
|
|
14063
14121
|
Rk as OT_2_TRASH_DEF_URI,
|
|
14064
14122
|
rv as PAPI_VERSION,
|
|
14065
|
-
|
|
14123
|
+
yL as PD_APPLICATION_VERSION,
|
|
14066
14124
|
Dh as PIPETTE_96,
|
|
14067
14125
|
ge as PROTOCOL_CONTEXT_NAME,
|
|
14068
|
-
|
|
14126
|
+
qk as SLOT_LOCATIONS_TO_FAKE_HOPPER_LOCATIONS,
|
|
14069
14127
|
qh as SOURCE_LABWARE,
|
|
14070
14128
|
ta as SOURCE_WELL_BLOWOUT_DESTINATION,
|
|
14071
14129
|
Ow as STAGING_AREA_SLOTS,
|
|
14072
14130
|
ey as TEMPERATURE_APPROACHING_TARGET,
|
|
14073
14131
|
Qh as TEMPERATURE_AT_TARGET,
|
|
14074
|
-
|
|
14132
|
+
Rs as TEMPERATURE_DEACTIVATED,
|
|
14075
14133
|
gw as TEMPERATURE_MODULE_INITIAL_STATE,
|
|
14076
14134
|
Iw as THERMOCYCLER_MODULE_INITIAL_STATE,
|
|
14077
|
-
|
|
14135
|
+
vL as TIPRACK_1,
|
|
14078
14136
|
uh as TOUCHED_PIPETTABLE_LABWARE,
|
|
14079
14137
|
Fh as TROUGH_LABWARE,
|
|
14080
|
-
|
|
14081
|
-
|
|
14138
|
+
jk as VACUUM_AT_TARGET,
|
|
14139
|
+
zk as VACUUM_DEACTIVATED,
|
|
14082
14140
|
Pw as VACUUM_DOCK_ADDRESSABLE_AREA,
|
|
14083
14141
|
Dw as VACUUM_DOCK_DISPLAY_LOCATION,
|
|
14084
14142
|
ry as VACUUM_DOCK_LOCATION,
|
|
14085
|
-
|
|
14143
|
+
Rp as VACUUM_MODE_POWER,
|
|
14086
14144
|
Pp as VACUUM_MODE_PRESSURE,
|
|
14087
14145
|
kw as VACUUM_MODULE_INITIAL_STATE,
|
|
14088
|
-
|
|
14089
|
-
|
|
14146
|
+
Fk as VACUUM_PROGRAM_PROFILE,
|
|
14147
|
+
$k as VACUUM_PROGRAM_STATE,
|
|
14090
14148
|
Cw as VACUUM_SPACER_LOAD_NAMES,
|
|
14091
|
-
|
|
14092
|
-
|
|
14093
|
-
|
|
14149
|
+
Mk as VACUUM_STATE_PUMP_OFF,
|
|
14150
|
+
xk as VACUUM_STATE_PUMP_ON,
|
|
14151
|
+
Bk as VACUUM_STATE_VENT,
|
|
14094
14152
|
Cs as VACUUM_VENT_CLOSED,
|
|
14095
14153
|
ny as VACUUM_VENT_OPEN,
|
|
14096
|
-
|
|
14097
|
-
|
|
14154
|
+
Uk as VACUUM_VENT_SET_CLOSED,
|
|
14155
|
+
Vk as VACUUM_VENT_SET_OPEN,
|
|
14098
14156
|
Qt as ZERO_OFFSET,
|
|
14099
|
-
|
|
14100
|
-
|
|
14101
|
-
|
|
14157
|
+
Fv as _getNextTip,
|
|
14158
|
+
pL as _wellContentsForLabware,
|
|
14159
|
+
Mv as absorbanceReaderCloseInitialize,
|
|
14102
14160
|
Mu as absorbanceReaderCloseLid,
|
|
14103
|
-
|
|
14161
|
+
xv as absorbanceReaderCloseRead,
|
|
14104
14162
|
Ws as absorbanceReaderCollision,
|
|
14105
14163
|
iI as absorbanceReaderInitialize,
|
|
14106
14164
|
lI as absorbanceReaderOpenLid,
|
|
14107
14165
|
cI as absorbanceReaderRead,
|
|
14108
14166
|
ss as absorbanceReaderStateGetter,
|
|
14109
|
-
|
|
14110
|
-
|
|
14167
|
+
Kk as airGapLocationHelper,
|
|
14168
|
+
Hk as aspirate,
|
|
14111
14169
|
bb as assignContainsAmongSiblings,
|
|
14112
14170
|
Ly as blowOutInWell,
|
|
14113
14171
|
uI as captureImage,
|
|
14114
14172
|
ZI as column4StagingSlotIdFromFlexStackerShuttleAddressableArea,
|
|
14115
|
-
|
|
14173
|
+
oL as commandCreatorsTimeline,
|
|
14116
14174
|
pI as comment,
|
|
14117
|
-
|
|
14118
|
-
|
|
14175
|
+
Xv as consolidate,
|
|
14176
|
+
cL as constructInvariantContextFromAnalysis,
|
|
14119
14177
|
HI as createEmptyLiquidState,
|
|
14120
14178
|
rm as createStagingAreaForInvariantContext,
|
|
14121
14179
|
GI as createTipLiquidState,
|
|
14122
14180
|
k as curryCommandCreator,
|
|
14123
14181
|
L as curryWithoutPython,
|
|
14124
14182
|
dI as deactivateTemperature,
|
|
14125
|
-
|
|
14183
|
+
Zk as deckSlotKeyForFlexStackerShuttleAddressableArea,
|
|
14126
14184
|
be as delay,
|
|
14127
|
-
|
|
14185
|
+
Yk as delayLocationHelper,
|
|
14128
14186
|
fI as disengageMagnet,
|
|
14129
14187
|
Oy as dispense,
|
|
14130
|
-
|
|
14131
|
-
|
|
14188
|
+
Gk as dispenseLocationHelper,
|
|
14189
|
+
Qv as distribute,
|
|
14132
14190
|
ea as dropTip,
|
|
14133
14191
|
xu as dropTipInPlace,
|
|
14134
|
-
|
|
14135
|
-
|
|
14192
|
+
Gv as dropTipInTrash,
|
|
14193
|
+
Wv as dropTipInWasteChute,
|
|
14136
14194
|
mI as engageMagnet,
|
|
14137
|
-
|
|
14195
|
+
sL as enrichRobotStateForStackGraphTraversals,
|
|
14138
14196
|
hI as flexStackerEmpty,
|
|
14139
14197
|
yI as flexStackerFillItems,
|
|
14140
14198
|
bI as flexStackerRetrieve,
|
|
@@ -14145,17 +14203,17 @@ export {
|
|
|
14145
14203
|
Vu as formatPyList,
|
|
14146
14204
|
P as formatPyStr,
|
|
14147
14205
|
Cy as formatPyTuple,
|
|
14148
|
-
|
|
14206
|
+
It as formatPyValue,
|
|
14149
14207
|
mr as formatPyWellLocation,
|
|
14150
14208
|
yb as getAddressableAreaFromModule,
|
|
14151
|
-
|
|
14152
|
-
|
|
14153
|
-
|
|
14209
|
+
nL as getAddressableAreaNameFromLabwareLocation,
|
|
14210
|
+
NS as getAllLargestStacks,
|
|
14211
|
+
RS as getAllProvidedAddressableAreasFromDeckConfig,
|
|
14154
14212
|
WA as getAllWellsForLabware,
|
|
14155
14213
|
Uu as getChunkForIndentingLists,
|
|
14156
|
-
|
|
14214
|
+
SL as getCommandCreatorFromStepArgs,
|
|
14157
14215
|
sp as getCustomLiquidClassProperties,
|
|
14158
|
-
|
|
14216
|
+
Tv as getCutoutFromSlot,
|
|
14159
14217
|
BI as getCutoutIdByAddressableArea,
|
|
14160
14218
|
bu as getDefaultPrimaryNozzle,
|
|
14161
14219
|
uv as getDefineLiquids,
|
|
@@ -14164,16 +14222,16 @@ export {
|
|
|
14164
14222
|
Hu as getFlexStackerShuttleAddressableArea,
|
|
14165
14223
|
Gu as getFullStackFromLabwares,
|
|
14166
14224
|
np as getFullStackFromNodeTopDownRecursive,
|
|
14167
|
-
|
|
14168
|
-
|
|
14169
|
-
|
|
14225
|
+
lL as getHasNoWellsFromCCArgs,
|
|
14226
|
+
Ok as getInitialRobotStateStandard,
|
|
14227
|
+
EL as getInitialRobotStateWithOffDeckLabwareStandard,
|
|
14170
14228
|
ns as getIsHeaterShakerEastWestMultiChannelPipette,
|
|
14171
14229
|
rs as getIsHeaterShakerEastWestWithLatchOpen,
|
|
14172
14230
|
Qs as getIsHeaterShakerNorthSouthOfNonTiprackWithMultiChannelPipette,
|
|
14173
14231
|
aT as getIsInPipettableLocation,
|
|
14174
14232
|
QI as getIsLabwareCompatibleWithStack,
|
|
14175
14233
|
jn as getIsRetractSafeForAirGap,
|
|
14176
|
-
|
|
14234
|
+
Nb as getIsSafePickupWithinTiprack,
|
|
14177
14235
|
rT as getIsSlotAHopper,
|
|
14178
14236
|
Ts as getIsSlotAVacuumDock,
|
|
14179
14237
|
eb as getIsSpaceInHopper,
|
|
@@ -14186,8 +14244,8 @@ export {
|
|
|
14186
14244
|
OS as getLargestStackContainingLabware,
|
|
14187
14245
|
ws as getLargestStackInSlot,
|
|
14188
14246
|
ro as getLiquidClassName,
|
|
14189
|
-
|
|
14190
|
-
|
|
14247
|
+
mL as getLiquidIdsOnLabware,
|
|
14248
|
+
fL as getLiquidIdsOnLabwareStack,
|
|
14191
14249
|
av as getLoadAdapters,
|
|
14192
14250
|
lv as getLoadLabware,
|
|
14193
14251
|
ov as getLoadLidStacks,
|
|
@@ -14200,101 +14258,105 @@ export {
|
|
|
14200
14258
|
Jr as getLocationTotalVolume,
|
|
14201
14259
|
Qa as getModuleHasLiveTask,
|
|
14202
14260
|
Gs as getModuleIdFromRobotStateStack,
|
|
14203
|
-
|
|
14261
|
+
Xk as getModuleLocationSlot,
|
|
14204
14262
|
nr as getModuleState,
|
|
14205
14263
|
XI as getNearestParentInStack,
|
|
14206
14264
|
kb as getNextRobotStateAndWarnings,
|
|
14207
|
-
|
|
14265
|
+
NA as getNextRobotStateAndWarningsSingleCommand,
|
|
14208
14266
|
ao as getNextTiprack,
|
|
14209
|
-
|
|
14267
|
+
rL as getNodeParentModuleId,
|
|
14210
14268
|
Lb as getNozzleConfig,
|
|
14211
|
-
|
|
14212
|
-
|
|
14269
|
+
Pv as getPipetteCenteringFullOffset,
|
|
14270
|
+
iL as getPipetteIdFromCCArgs,
|
|
14213
14271
|
Dt as getPipetteMovementSafetyStatus,
|
|
14214
14272
|
lp as getPipetteWithTipMaxVol,
|
|
14215
|
-
|
|
14273
|
+
aL as getProvidedAddressableAreasExposed,
|
|
14216
14274
|
op as getPythonAssignTipRacksString,
|
|
14217
|
-
|
|
14218
|
-
|
|
14219
|
-
|
|
14220
|
-
|
|
14221
|
-
|
|
14275
|
+
uL as getResultingTimelineFrameFromRunCommands,
|
|
14276
|
+
PL as getRobotInitialStateNoTipsRemain,
|
|
14277
|
+
OL as getRobotStateAndWarningsStandard,
|
|
14278
|
+
RL as getRobotStatePickedUpTipStandard,
|
|
14279
|
+
NL as getRobotStateWithTipStandard,
|
|
14280
|
+
TL as getRunTimeParameters,
|
|
14222
14281
|
bv as getSetStoredLabware,
|
|
14223
|
-
|
|
14282
|
+
Y as getSlotInLocationStack,
|
|
14224
14283
|
tm as getStackForLabwareLocation,
|
|
14225
14284
|
CS as getStackedOnNodeFromPdStack,
|
|
14226
|
-
|
|
14285
|
+
CL as getStateAndContextTempTCModules,
|
|
14227
14286
|
no as getTargetTipsFromWellSets,
|
|
14228
|
-
|
|
14229
|
-
|
|
14287
|
+
qv as getThermocyclerProfileRepetitionsForPython,
|
|
14288
|
+
LL as getTipColumn,
|
|
14230
14289
|
vh as getTipColumnIndex,
|
|
14231
|
-
|
|
14290
|
+
Rb as getTipColumnName,
|
|
14232
14291
|
La as getTipRowName,
|
|
14233
14292
|
KI as getTiprackHasTips,
|
|
14234
|
-
|
|
14293
|
+
kk as getTiprackTipstate,
|
|
14235
14294
|
Yy as getTopLocationInStack,
|
|
14236
|
-
|
|
14295
|
+
Jk as getTopmostLabwareOnModuleFromStackRobotState,
|
|
14237
14296
|
Zy as getTransferPlanAndReferenceVolumes,
|
|
14238
14297
|
Gy as getTrashBinAddressableAreaName,
|
|
14239
14298
|
UI as getTrashLocationFromAddressableAreaName,
|
|
14240
14299
|
Ya as getTrashOrLabware,
|
|
14241
|
-
|
|
14300
|
+
dL as getVolumesPerLiquid,
|
|
14242
14301
|
VI as getWasteChuteAddressableAreaNamePip,
|
|
14243
14302
|
Wy as getWellsForTips,
|
|
14244
|
-
|
|
14245
|
-
|
|
14303
|
+
ek as heaterShaker,
|
|
14304
|
+
G as indentPyLines,
|
|
14246
14305
|
Qy as labwareMatchesLabwareInHopper,
|
|
14247
|
-
|
|
14306
|
+
Lk as makeContext,
|
|
14248
14307
|
Ky as makeInitialRobotState,
|
|
14249
14308
|
na as makeState,
|
|
14250
|
-
|
|
14309
|
+
Ek as makeStateArgsLabwareOffDeck,
|
|
14251
14310
|
os as makeStateArgsStandard,
|
|
14252
14311
|
Qr as mergeLiquid,
|
|
14253
|
-
|
|
14312
|
+
Yv as mix,
|
|
14254
14313
|
jI as mixBlowoutLocationHelper,
|
|
14255
14314
|
es as modulePipetteCollision,
|
|
14256
|
-
|
|
14315
|
+
Wk as moveHelper,
|
|
14257
14316
|
AI as moveLabware,
|
|
14258
14317
|
ze as moveToAddressableArea,
|
|
14259
|
-
|
|
14318
|
+
Ny as moveToAddressableAreaForDropTip,
|
|
14260
14319
|
as as pipetteAdjacentHeaterShakerWhileShaking,
|
|
14261
14320
|
eo as pipetteIntoHeaterShakerLatchOpen,
|
|
14262
14321
|
to as pipetteIntoHeaterShakerWhileShaking,
|
|
14263
|
-
|
|
14264
|
-
|
|
14265
|
-
|
|
14266
|
-
|
|
14267
|
-
|
|
14322
|
+
IL as pythonCustomLabwareDict,
|
|
14323
|
+
gL as pythonDefRun,
|
|
14324
|
+
bL as pythonImports,
|
|
14325
|
+
_L as pythonMetadata,
|
|
14326
|
+
wL as pythonRequirements,
|
|
14268
14327
|
oe as reduceCommandCreators,
|
|
14269
14328
|
zI as repeatArray,
|
|
14270
14329
|
so as replaceTip,
|
|
14330
|
+
tL as resolveBooleanRuntimeValue,
|
|
14271
14331
|
JI as resolveDeckSlotKeyForLabwareStackInSlot,
|
|
14272
|
-
|
|
14332
|
+
Qk as resolveNumericRuntimeValue,
|
|
14333
|
+
eL as resolveStringRuntimeValue,
|
|
14334
|
+
DL as robotWithStatusAndTemp,
|
|
14273
14335
|
Py as setTemperature,
|
|
14274
|
-
|
|
14336
|
+
$v as sortLabwareBySlot,
|
|
14275
14337
|
Er as splitLiquid,
|
|
14276
14338
|
yv as stepCommands,
|
|
14277
14339
|
XA as swatchColors,
|
|
14278
14340
|
Js as thermocyclerPipetteCollision,
|
|
14279
|
-
|
|
14341
|
+
tk as thermocyclerProfileStep,
|
|
14280
14342
|
cp as thermocyclerStateGetter,
|
|
14281
|
-
|
|
14282
|
-
|
|
14343
|
+
ik as thermocyclerStateStep,
|
|
14344
|
+
Ak as tiprackWellNamesFlat,
|
|
14283
14345
|
Xt as touchTip,
|
|
14284
|
-
|
|
14346
|
+
mk as transfer,
|
|
14285
14347
|
Cb as unrollThermocyclerProfile,
|
|
14286
14348
|
C as uuid,
|
|
14287
14349
|
js as vacuumCloseVent,
|
|
14288
|
-
|
|
14289
|
-
|
|
14290
|
-
|
|
14291
|
-
|
|
14350
|
+
hk as vacuumCloseVentSetPumpPower,
|
|
14351
|
+
yk as vacuumCloseVentSetPumpPressure,
|
|
14352
|
+
bk as vacuumCloseVentStartProfile,
|
|
14353
|
+
St as vacuumModuleStateGetter,
|
|
14292
14354
|
vI as vacuumOpenVent,
|
|
14293
14355
|
qy as vacuumSetPumpPower,
|
|
14294
14356
|
$y as vacuumSetPumpPressure,
|
|
14295
14357
|
Fy as vacuumStartRunProfile,
|
|
14296
|
-
|
|
14297
|
-
|
|
14358
|
+
NI as vacuumStopPump,
|
|
14359
|
+
_k as waitForModuleTask,
|
|
14298
14360
|
My as waitForTemperature,
|
|
14299
|
-
|
|
14361
|
+
hL as wellFillFromWellContents
|
|
14300
14362
|
};
|