@platforma-open/milaboratories.clonotype-clustering.model 2.6.0 → 2.7.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.
@@ -1,6 +1,6 @@
1
1
   WARN  Issue while reading "/home/runner/work/clonotype-clustering/clonotype-clustering/.npmrc". Failed to replace env in config: ${NPMJS_TOKEN}
2
2
 
3
- > @platforma-open/milaboratories.clonotype-clustering.model@2.6.0 build /home/runner/work/clonotype-clustering/clonotype-clustering/model
3
+ > @platforma-open/milaboratories.clonotype-clustering.model@2.7.0 build /home/runner/work/clonotype-clustering/clonotype-clustering/model
4
4
  > tsup && vite build && block-tools build-model
5
5
 
6
6
  CLI Building entry: src/index.ts
@@ -11,21 +11,21 @@
11
11
  CLI Cleaning output folder
12
12
  CJS Build start
13
13
  ESM Build start
14
- ESM dist/index.js 4.51 KB
15
- ESM dist/index.js.map 10.87 KB
16
- ESM ⚡️ Build success in 157ms
17
- CJS dist/index.cjs 4.52 KB
18
- CJS dist/index.cjs.map 10.94 KB
19
- CJS ⚡️ Build success in 158ms
14
+ CJS dist/index.cjs 5.12 KB
15
+ CJS dist/index.cjs.map 12.50 KB
16
+ CJS ⚡️ Build success in 146ms
17
+ ESM dist/index.js 5.11 KB
18
+ ESM dist/index.js.map 12.44 KB
19
+ ESM ⚡️ Build success in 146ms
20
20
  DTS Build start
21
- DTS ⚡️ Build success in 2353ms
22
- DTS dist/index.d.cts 5.17 KB
23
- DTS dist/index.d.ts 5.17 KB
21
+ DTS ⚡️ Build success in 2370ms
22
+ DTS dist/index.d.cts 6.18 KB
23
+ DTS dist/index.d.ts 6.18 KB
24
24
  vite v6.3.5 building for production...
25
25
  transforming...
26
26
  ✓ 11 modules transformed.
27
27
  rendering chunks...
28
28
  computing gzip size...
29
- dist/bundle.js 192.45 kB │ gzip: 37.73 kB │ map: 408.53 kB
30
- dist/bundle.js 205.60 kB │ gzip: 38.40 kB │ map: 410.16 kB
31
- ✓ built in 721ms
29
+ dist/bundle.js 190.65 kB │ gzip: 37.22 kB │ map: 406.91 kB
30
+ dist/bundle.js 203.69 kB │ gzip: 37.87 kB │ map: 408.52 kB
31
+ ✓ built in 737ms
package/CHANGELOG.md CHANGED
@@ -1,5 +1,17 @@
1
1
  # @platforma-open/milaboratories.clonotype-clustering.model
2
2
 
3
+ ## 2.7.0
4
+
5
+ ### Minor Changes
6
+
7
+ - e4317b5: Add cluster size histogram, remove advanced settings panel and fix plot defaults picking up data from previous block if there is another clonotype-clustering block.
8
+
9
+ ## 2.6.1
10
+
11
+ ### Patch Changes
12
+
13
+ - 15ffee5: SDK Upgrade, excessive CPU usage fix
14
+
3
15
  ## 2.6.0
4
16
 
5
17
  ### Minor Changes
package/dist/bundle.js CHANGED
@@ -4007,7 +4007,7 @@
4007
4007
  }
4008
4008
  }
4009
4009
  }
4010
- function F(n2) {
4010
+ function F$1(n2) {
4011
4011
  if (!n2 || typeof n2 != "object")
4012
4012
  return false;
4013
4013
  const e = n2;
@@ -4025,7 +4025,7 @@
4025
4025
  }
4026
4026
  }
4027
4027
  function gn(n2) {
4028
- return F(n2) ? n2.type === "JsonPartitioned" || n2.type === "BinaryPartitioned" : false;
4028
+ return F$1(n2) ? n2.type === "JsonPartitioned" || n2.type === "BinaryPartitioned" : false;
4029
4029
  }
4030
4030
  function bn(n2) {
4031
4031
  switch (n2.type) {
@@ -4338,7 +4338,7 @@
4338
4338
  data: e(n2.data)
4339
4339
  };
4340
4340
  }
4341
- function Rn(n2) {
4341
+ function Rn$1(n2) {
4342
4342
  const e = /* @__PURE__ */ new Map(), t = (r) => {
4343
4343
  switch (r.type) {
4344
4344
  case "column":
@@ -4531,14 +4531,14 @@
4531
4531
  });
4532
4532
  var Xe = Object.defineProperty;
4533
4533
  var Qe = (t, e, n2) => e in t ? Xe(t, e, { enumerable: true, configurable: true, writable: true, value: n2 }) : t[e] = n2;
4534
- var R = (t, e, n2) => Qe(t, typeof e != "symbol" ? e + "" : e, n2);
4534
+ var F = (t, e, n2) => Qe(t, typeof e != "symbol" ? e + "" : e, n2);
4535
4535
  function re(t) {
4536
4536
  return { type: "Immediate", value: t };
4537
4537
  }
4538
4538
  function ht() {
4539
4539
  return typeof globalThis.getPlatforma < "u" || typeof globalThis.platforma < "u";
4540
4540
  }
4541
- function De(t) {
4541
+ function Re(t) {
4542
4542
  if (t && typeof globalThis.getPlatforma == "function")
4543
4543
  return globalThis.getPlatforma(t);
4544
4544
  if (typeof globalThis.platforma < "u") return globalThis.platforma;
@@ -4566,8 +4566,8 @@
4566
4566
  }
4567
4567
  class I {
4568
4568
  constructor(e, n2 = (r) => r) {
4569
- R(this, "isResolved", false);
4570
- R(this, "resolvedValue");
4569
+ F(this, "isResolved", false);
4570
+ F(this, "resolvedValue");
4571
4571
  this.handle = e, this.postProcess = n2, mt(e, (r) => {
4572
4572
  this.resolvedValue = n2(r), this.isResolved = true;
4573
4573
  });
@@ -4808,7 +4808,7 @@
4808
4808
  return s2 && (l2 = l2.filter((u2) => u2[1] !== void 0)), l2.map(([u2, d]) => o(u2, d));
4809
4809
  }
4810
4810
  }
4811
- const Fe = "staging", Ke = "main";
4811
+ const De = "staging", Ke = "main";
4812
4812
  const bt = "pl7.app/label", wt = "pl7.app/trace", At = z$2.object({
4813
4813
  type: z$2.string(),
4814
4814
  importance: z$2.number().optional(),
@@ -4817,11 +4817,11 @@
4817
4817
  }), xt = z$2.array(At), Ct = 1e-3, Pt = "__LABEL__", Se = "__LABEL__@1";
4818
4818
  function Ve(t, e, n2 = {}) {
4819
4819
  const r = /* @__PURE__ */ new Map(), i = n2.forceTraceElements !== void 0 && n2.forceTraceElements.length > 0 ? new Set(n2.forceTraceElements) : void 0, s2 = /* @__PURE__ */ new Map(), o = t.map((f2) => {
4820
- var S, D2;
4820
+ var S, R;
4821
4821
  const w2 = e(f2);
4822
4822
  let c2, g, x2;
4823
4823
  "spec" in w2 && typeof w2.spec == "object" ? (c2 = w2.spec, g = w2.prefixTrace, x2 = w2.suffixTrace) : c2 = w2;
4824
- const p2 = (S = c2.annotations) == null ? void 0 : S[bt], A2 = (D2 = c2.annotations) == null ? void 0 : D2[wt], m2 = (A2 ? xt.safeParse(JSON.parse(A2)).data : void 0) ?? [], v = [
4824
+ const p2 = (S = c2.annotations) == null ? void 0 : S[bt], A2 = (R = c2.annotations) == null ? void 0 : R[wt], m2 = (A2 ? xt.safeParse(JSON.parse(A2)).data : void 0) ?? [], v = [
4825
4825
  ...g ?? [],
4826
4826
  ...m2,
4827
4827
  ...x2 ?? []
@@ -4963,7 +4963,7 @@
4963
4963
  }
4964
4964
  function It(t) {
4965
4965
  if (t === void 0) return;
4966
- if (F(t))
4966
+ if (F$1(t))
4967
4967
  return _t(t);
4968
4968
  const e = St(t);
4969
4969
  if (!e) return;
@@ -5078,7 +5078,7 @@
5078
5078
  }
5079
5079
  function Tt(t) {
5080
5080
  if (t !== void 0) {
5081
- if (F(t)) return t;
5081
+ if (F$1(t)) return t;
5082
5082
  if (yn(t)) return bn(t);
5083
5083
  if (t instanceof O) return ye(t);
5084
5084
  throw new Error(`Unexpected input type: ${typeof t}`);
@@ -5166,7 +5166,7 @@
5166
5166
  if (t)
5167
5167
  return t.map((e) => [e.axisIdx, e.value]);
5168
5168
  }
5169
- function Rt(t, e) {
5169
+ function Ft(t, e) {
5170
5170
  if (!e || e.length === 0) return t;
5171
5171
  const n2 = [...e].sort((r, i) => r[0] - i[0]);
5172
5172
  return ke({ id: t, axisFilters: n2 });
@@ -5176,7 +5176,7 @@
5176
5176
  const e = t, n2 = e.domain && typeof e.domain == "object" && Object.values(e.domain).some((i) => typeof i == "object" && i !== null && "anchor" in i), r = e.axes && Array.isArray(e.axes) && e.axes.some((i) => typeof i == "object" && i !== null && "anchor" in i);
5177
5177
  return !!e.domainAnchor || n2 || r;
5178
5178
  }
5179
- function Dt(t) {
5179
+ function Rt(t) {
5180
5180
  if (typeof t != "object" || !("axes" in t) || t.axes === void 0)
5181
5181
  return [];
5182
5182
  const e = t.axes.map((n2, r) => typeof n2 == "object" && "split" in n2 && n2.split === true ? r : -1).filter((n2) => n2 !== -1);
@@ -5186,9 +5186,9 @@
5186
5186
  }
5187
5187
  class ve {
5188
5188
  constructor() {
5189
- R(this, "defaultProviderStore", []);
5190
- R(this, "providers", [new Et(this.defaultProviderStore)]);
5191
- R(this, "axisLabelProviders", []);
5189
+ F(this, "defaultProviderStore", []);
5190
+ F(this, "providers", [new Et(this.defaultProviderStore)]);
5191
+ F(this, "axisLabelProviders", []);
5192
5192
  }
5193
5193
  addColumnProvider(e) {
5194
5194
  return this.providers.push(e), this;
@@ -5243,12 +5243,12 @@
5243
5243
  if (u2(S.spec)) continue;
5244
5244
  if (p2.has(S.id))
5245
5245
  throw new Error(`Duplicate column id ${S.id} in provider ${C2.constructor.name}`);
5246
- const D2 = _n(S.spec);
5247
- b.has(D2) || (p2.add(S.id), b.add(D2), A2.push(S));
5246
+ const R = _n(S.spec);
5247
+ b.has(R) || (p2.add(S.id), b.add(R), A2.push(S));
5248
5248
  }
5249
5249
  }
5250
5250
  if (A2.length === 0) continue;
5251
- const m2 = Dt(c2), v = m2.length > 0;
5251
+ const m2 = Rt(c2), v = m2.length > 0;
5252
5252
  for (const C2 of A2) {
5253
5253
  if (!f(C2.spec)) continue;
5254
5254
  const L = C2.spec;
@@ -5260,7 +5260,7 @@
5260
5260
  }
5261
5261
  if (!gn(S))
5262
5262
  throw new Error(`Splitting requires Partitioned DataInfoEntries, but parsing resulted in ${S.type} for column ${C2.id}`);
5263
- const D2 = It(S), k2 = m2[m2.length - 1];
5263
+ const R = It(S), k2 = m2[m2.length - 1];
5264
5264
  if (k2 >= S.partitionKeyLength)
5265
5265
  throw new Error(`Not enough partition keys (${S.partitionKeyLength}) for requested split axes (max index ${k2}) in column ${L.name}`);
5266
5266
  const W = m2.map((_) => this.findLabels(p$1(L.axesSpec[_]))), V = [], N2 = (_, G2) => {
@@ -5270,9 +5270,9 @@
5270
5270
  return;
5271
5271
  }
5272
5272
  const $ = m2[G2];
5273
- if ($ >= D2.length)
5274
- throw new Error(`Axis index ${$} out of bounds for unique keys array (length ${D2.length}) during split key generation for column ${C2.id}`);
5275
- const J = D2[$];
5273
+ if ($ >= R.length)
5274
+ throw new Error(`Axis index ${$} out of bounds for unique keys array (length ${R.length}) during split key generation for column ${C2.id}`);
5275
+ const J = R[$];
5276
5276
  if (!J || J.length === 0) {
5277
5277
  V.length = 0;
5278
5278
  return;
@@ -5321,7 +5321,7 @@
5321
5321
  for (const { value: c2, label: g } of f$1) {
5322
5322
  const { originalColumn: x2, spec: p2 } = c2, A2 = c2.type === "split" ? c2.axisFilters : void 0, m2 = kt(A2);
5323
5323
  let v;
5324
- r ? v = r.deriveS(p2, m2) : v = Rt(x2.id, m2);
5324
+ r ? v = r.deriveS(p2, m2) : v = Ft(x2.id, m2);
5325
5325
  let C2 = { ...c2.adjustedSpec };
5326
5326
  o && (C2 = {
5327
5327
  ...C2,
@@ -5371,9 +5371,9 @@
5371
5371
  function Ie(t) {
5372
5372
  return Kn(t, (e) => e instanceof O ? e.handle : yn(e) ? hn(e, (n2) => n2.handle) : e);
5373
5373
  }
5374
- class Ft {
5374
+ class Dt {
5375
5375
  constructor() {
5376
- R(this, "ctx", h());
5376
+ F(this, "ctx", h());
5377
5377
  }
5378
5378
  /**
5379
5379
  * @deprecated use getOptions()
@@ -5642,11 +5642,11 @@
5642
5642
  }
5643
5643
  class te {
5644
5644
  constructor() {
5645
- R(this, "ctx");
5646
- R(this, "args");
5647
- R(this, "uiState");
5648
- R(this, "_activeArgsCache");
5649
- R(this, "resultPool", new Ft());
5645
+ F(this, "ctx");
5646
+ F(this, "args");
5647
+ F(this, "uiState");
5648
+ F(this, "_activeArgsCache");
5649
+ F(this, "resultPool", new Dt());
5650
5650
  this.ctx = h(), this.args = JSON.parse(this.ctx.args), this.uiState = this.ctx.uiState !== void 0 ? JSON.parse(this.ctx.uiState) : {};
5651
5651
  }
5652
5652
  /**
@@ -5669,7 +5669,7 @@
5669
5669
  );
5670
5670
  }
5671
5671
  get prerun() {
5672
- return this.getNamedAccessor(Fe);
5672
+ return this.getNamedAccessor(De);
5673
5673
  }
5674
5674
  get outputs() {
5675
5675
  return this.getNamedAccessor(Ke);
@@ -5702,7 +5702,7 @@
5702
5702
  },
5703
5703
  filters: e.filters ?? [],
5704
5704
  sorting: e.sorting ?? []
5705
- } : n2 = e, this.verifyInlineAndExplicitColumnsSupport(Rn(n2.src)), this.ctx.createPTable(
5705
+ } : n2 = e, this.verifyInlineAndExplicitColumnsSupport(Rn$1(n2.src)), this.ctx.createPTable(
5706
5706
  In(n2, (r) => Ie(r))
5707
5707
  );
5708
5708
  }
@@ -5723,7 +5723,7 @@
5723
5723
  this.ctx.logError(e);
5724
5724
  }
5725
5725
  }
5726
- const Y = "1.32.1";
5726
+ const Y = "1.33.2";
5727
5727
  function Kt(t) {
5728
5728
  return t.__renderLambda === true;
5729
5729
  }
@@ -5929,31 +5929,12 @@
5929
5929
  Object.entries(this._outputs).map(([n2, r]) => [n2, de(r)])
5930
5930
  )
5931
5931
  };
5932
- return ht() ? De({ sdkVersion: Y }) : { config: e };
5932
+ return ht() ? Re({ sdkVersion: Y }) : { config: e };
5933
5933
  }
5934
5934
  }
5935
- const jt = (t, e) => {
5936
- let n2 = t.toString();
5937
- return e == null || e.forEach((r) => {
5938
- if (r)
5939
- for (const [i, s2] of Object.entries(r))
5940
- n2 += i, n2 += s2;
5941
- }), n2;
5942
- };
5943
- function Vt(t) {
5944
- if (!t.length)
5945
- return [];
5946
- let e = [[]];
5947
- return t.forEach((n2) => {
5948
- const r = [];
5949
- n2.forEach((i) => {
5950
- r.push(...e.map((s2) => [...s2, i]));
5951
- }), e = r;
5952
- }), e;
5953
- }
5954
5935
  function $t(t) {
5955
5936
  var e;
5956
- return t.axesSpec.length === 2 && ((e = t.annotations) == null ? void 0 : e[Ut]) === "true";
5937
+ return t.axesSpec.length === 2 && ((e = t.annotations) == null ? void 0 : e[Mt]) === "true";
5957
5938
  }
5958
5939
  function Nt(t) {
5959
5940
  var n2, r;
@@ -5982,74 +5963,12 @@
5982
5963
  }
5983
5964
  return false;
5984
5965
  }
5985
- function Jt(t, e, n2) {
5986
- const r = t.axesSpec.map(p$1), i = e.axesSpec.map(p$1);
5987
- return i.some((s2) => r.some((o) => X(o, s2) && X(s2, o))) || !!n2 && i.some((s2) => r.some((o) => Je(n2, o, s2)));
5988
- }
5989
- function Me(t, e, n2) {
5966
+ function Ue(t, e, n2) {
5990
5967
  const r = t.axesSpec.map(p$1), i = e.axesSpec.map(p$1);
5991
5968
  return i.some((s2) => r.some((o) => X(o, s2))) || !!n2 && i.some((s2) => r.some((o) => Je(n2, o, s2)));
5992
5969
  }
5993
- const Mt = "pl7.app/graph/isVirtual", Te = "pl7.app/label", Ut = "pl7.app/isLinkerColumn";
5994
- function Le(t, e, n2) {
5995
- const r = t.spec.axesSpec.map(p$1), i = e.spec.axesSpec.map(p$1);
5996
- if (Jt(t.spec, e.spec, n2))
5997
- return [];
5998
- if (!Me(t.spec, e.spec, n2))
5999
- return [];
6000
- const a = i.map((b) => r.filter((f2) => X(f2, b))), l2 = Vt(a), u2 = /* @__PURE__ */ new Set(), d = /* @__PURE__ */ new Set(), y = l2.map((b) => {
6001
- const f2 = /* @__PURE__ */ new Set();
6002
- return b.map((w2, c2) => {
6003
- const g = e.spec.axesSpec[c2].domain, x2 = w2.domain;
6004
- return Object.entries(x2 ?? {}).forEach(([p2, A2]) => {
6005
- if ((g == null ? void 0 : g[p2]) === void 0) {
6006
- const m2 = JSON.stringify([p2, A2]);
6007
- f2.add(m2), u2.add(m2);
6008
- }
6009
- }), {
6010
- ...w2,
6011
- annotations: e.spec.axesSpec[c2].annotations
6012
- };
6013
- }), f2;
6014
- });
6015
- return [...u2].forEach((b) => {
6016
- y.some((f2) => !f2.has(b)) && d.add(b);
6017
- }), l2.map((b, f2) => {
6018
- var p2;
6019
- const w2 = jt(e.id, b.map((A2) => A2.domain)), c2 = ((p2 = e.spec.annotations) == null ? void 0 : p2[Te]) ?? "", g = [...y[f2]].filter((A2) => d.has(A2)).sort().map((A2) => {
6020
- var m2;
6021
- return (m2 = JSON.parse(A2)) == null ? void 0 : m2[1];
6022
- }).join(" / "), x2 = {
6023
- ...e.spec.annotations,
6024
- [Mt]: "true"
6025
- };
6026
- return (c2 || g) && (x2[Te] = c2 && g ? c2 + " / " + g : c2 + g), {
6027
- id: w2,
6028
- spec: {
6029
- ...e.spec,
6030
- axesSpec: b.map((A2, m2) => ({
6031
- ...A2,
6032
- annotations: e.spec.axesSpec[m2].annotations
6033
- })),
6034
- annotations: x2
6035
- },
6036
- data: e.data
6037
- };
6038
- });
6039
- }
6040
- function Bt(t, e = /* @__PURE__ */ new Map()) {
6041
- const n2 = [];
6042
- for (let r = 0; r < t.length; r++)
6043
- for (let i = r + 1; i < t.length; i++) {
6044
- const s2 = t[r], o = t[i];
6045
- n2.push(
6046
- ...Le(s2, o, e),
6047
- ...Le(o, s2, e)
6048
- );
6049
- }
6050
- return n2;
6051
- }
6052
- function Wt(t, e, n2 = [], r = /* @__PURE__ */ new Map()) {
5970
+ const Mt = "pl7.app/isLinkerColumn";
5971
+ function Bt(t, e, n2 = [], r = /* @__PURE__ */ new Map()) {
6053
5972
  const i = /* @__PURE__ */ new Set(), s2 = /* @__PURE__ */ new Map();
6054
5973
  t.forEach((a) => {
6055
5974
  i.add(a.id), s2.set(Zn(Jn(a.spec)), a);
@@ -6060,7 +5979,7 @@
6060
5979
  const l2 = Zn(Jn(a.spec));
6061
5980
  if (!s2.has(l2)) {
6062
5981
  for (const u2 of s2.values())
6063
- if (Me(u2.spec, a.spec, r)) {
5982
+ if (Ue(u2.spec, a.spec, r)) {
6064
5983
  o.set(l2, a);
6065
5984
  break;
6066
5985
  }
@@ -6073,18 +5992,18 @@
6073
5992
  }
6074
5993
  return [...s2.values(), ...o.values()];
6075
5994
  }
6076
- function Dn(t, e) {
5995
+ function Rn(t, e) {
6077
5996
  if (!e) return;
6078
- const n2 = t.resultPool.getData().entries.map((l2) => l2.obj).filter(Z$1), i = [...e, ...n2].filter((l2) => $t(l2.spec)), s2 = Nt(i), o = Wt(e, n2, i, s2), a = [...o, ...Bt(o, s2)];
5997
+ const n2 = t.resultPool.getData().entries.map((l2) => l2.obj).filter(Z$1), i = [...e, ...n2].filter((l2) => $t(l2.spec)), s2 = Nt(i), a = [...Bt(e, n2, i, s2)];
6079
5998
  if (!a.some(
6080
5999
  (l2) => l2.data instanceof O && !l2.data.getIsReadyOrError()
6081
6000
  ))
6082
6001
  return t.createPFrame(a);
6083
6002
  }
6084
- function Gt(t) {
6003
+ function Wt(t) {
6085
6004
  return t.axesSpec.length === 1 && t.name === "pl7.app/label";
6086
6005
  }
6087
- function Ue(t) {
6006
+ function Me(t) {
6088
6007
  return new ve().addAxisLabelProvider(t).addColumnProvider(t).getColumns({
6089
6008
  name: "pl7.app/label",
6090
6009
  axes: [{}]
@@ -6094,7 +6013,7 @@
6094
6013
  function Be(t, e) {
6095
6014
  const n2 = [], r = [];
6096
6015
  for (const a of t)
6097
- Gt(a.spec) ? n2.push(a) : r.push(a);
6016
+ Wt(a.spec) ? n2.push(a) : r.push(a);
6098
6017
  const i = [];
6099
6018
  for (const a of r)
6100
6019
  for (const l2 of a.spec.axesSpec) {
@@ -6164,24 +6083,24 @@
6164
6083
  sorting: i
6165
6084
  };
6166
6085
  }
6167
- function Ht(t) {
6086
+ function Gt(t) {
6168
6087
  var e;
6169
6088
  return ((e = t.annotations) == null ? void 0 : e["pl7.app/table/visibility"]) === "hidden";
6170
6089
  }
6171
- function qt(t) {
6090
+ function Ht(t) {
6172
6091
  var e;
6173
6092
  return ((e = t.annotations) == null ? void 0 : e["pl7.app/table/visibility"]) === "optional";
6174
6093
  }
6175
6094
  function jn(t, e, n2, r, i) {
6176
6095
  var g, x2;
6177
- const s2 = "full", o = [...[], ...((g = r == null ? void 0 : r.pTableParams) == null ? void 0 : g.filters) ?? []], a = ((x2 = r == null ? void 0 : r.pTableParams) == null ? void 0 : x2.sorting) ?? [], l2 = e.filter((p2) => !Ht(p2.spec)), u2 = l2.find((p2) => n2(p2.spec));
6096
+ const s2 = "full", o = [...[], ...((g = r == null ? void 0 : r.pTableParams) == null ? void 0 : g.filters) ?? []], a = ((x2 = r == null ? void 0 : r.pTableParams) == null ? void 0 : x2.sorting) ?? [], l2 = e.filter((p2) => !Gt(p2.spec)), u2 = l2.find((p2) => n2(p2.spec));
6178
6097
  if (!u2) return;
6179
- const d = Ue(t.resultPool);
6098
+ const d = Me(t.resultPool);
6180
6099
  if (!d) return;
6181
6100
  const y = new Set((() => {
6182
6101
  var A2, m2;
6183
6102
  const p2 = (m2 = (A2 = r == null ? void 0 : r.gridState.columnVisibility) == null ? void 0 : A2.hiddenColIds) == null ? void 0 : m2.map(ne).filter((v) => v.type === "column").map((v) => v.id);
6184
- return p2 || l2.filter((v) => qt(v.spec)).map((v) => v.id);
6103
+ return p2 || l2.filter((v) => Ht(v.spec)).map((v) => v.id);
6185
6104
  })());
6186
6105
  y.delete(u2.id), [...o.map((p2) => p2.column), ...a.map((p2) => p2.column)].filter((p2) => p2.type === "column").map((p2) => y.delete(p2.id));
6187
6106
  const b = l2.filter((p2) => !y.has(p2.id)), f2 = Be(b.map(On), d), w2 = [
@@ -6212,8 +6131,8 @@
6212
6131
  similarityType: "sequence-identity",
6213
6132
  coverageThreshold: 0.8,
6214
6133
  // default value matching MMseqs2 default
6215
- coverageMode: 1
6216
- // default to coverage of target
6134
+ coverageMode: 0
6135
+ // default to coverage of query and target
6217
6136
  }).withUiState({
6218
6137
  title: "Clonotype Clustering",
6219
6138
  tableState: {
@@ -6229,7 +6148,22 @@
6229
6148
  }
6230
6149
  }
6231
6150
  },
6232
- alignmentModel: {}
6151
+ alignmentModel: {},
6152
+ graphStateHistogram: {
6153
+ title: "Histogram",
6154
+ template: "bins",
6155
+ currentTab: null,
6156
+ layersSettings: {
6157
+ bins: { fillColor: "#99e099" }
6158
+ },
6159
+ axesSettings: {
6160
+ axisY: {
6161
+ axisLabelsAngle: 90,
6162
+ scale: "log"
6163
+ },
6164
+ other: { binsCount: 30 }
6165
+ }
6166
+ }
6233
6167
  }).argsValid((ctx) => ctx.args.datasetRef !== void 0 && ctx.args.sequencesRef.length > 0).output(
6234
6168
  "datasetOptions",
6235
6169
  (ctx) => ctx.resultPool.getOptions(
@@ -6322,7 +6256,7 @@
6322
6256
  );
6323
6257
  if (seqCols === void 0)
6324
6258
  return void 0;
6325
- return Dn(ctx, [...msaCols, ...seqCols]);
6259
+ return Rn(ctx, [...msaCols, ...seqCols]);
6326
6260
  }).output("linkerColumnId", (ctx) => {
6327
6261
  var _a, _b, _c;
6328
6262
  const pCols = (_b = (_a = ctx.outputs) == null ? void 0 : _a.resolve("msaPf")) == null ? void 0 : _b.getPColumns();
@@ -6350,7 +6284,19 @@
6350
6284
  if (pCols === void 0) {
6351
6285
  return void 0;
6352
6286
  }
6353
- return Dn(ctx, pCols);
6287
+ return Rn(ctx, pCols);
6288
+ }).output("clustersPfPcols", (ctx) => {
6289
+ var _a, _b;
6290
+ const pCols = (_b = (_a = ctx.outputs) == null ? void 0 : _a.resolve("pf")) == null ? void 0 : _b.getPColumns();
6291
+ if (pCols === void 0) {
6292
+ return void 0;
6293
+ }
6294
+ return pCols.map(
6295
+ (c2) => ({
6296
+ columnId: c2.id,
6297
+ spec: c2.spec
6298
+ })
6299
+ );
6354
6300
  }).output("isRunning", (ctx) => {
6355
6301
  var _a;
6356
6302
  return ((_a = ctx.outputs) == null ? void 0 : _a.getIsReadyOrError()) === false;
@@ -6359,7 +6305,8 @@
6359
6305
  return ((_a = ctx.uiState) == null ? void 0 : _a.title) ?? "Clonotype Clustering";
6360
6306
  }).sections((_ctx) => [
6361
6307
  { type: "link", href: "/", label: "Main" },
6362
- { type: "link", href: "/bubble", label: "Clusters Plot" }
6308
+ { type: "link", href: "/bubble", label: "Clusters Plot" },
6309
+ { type: "link", href: "/histogram", label: "Cluster Size Histogram" }
6363
6310
  ]).done();
6364
6311
  exports2.model = model;
6365
6312
  Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });