@platforma-open/milaboratories.immune-assay-data.model 1.5.2 → 1.5.4

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@platforma-open/milaboratories.immune-assay-data.model",
3
- "version": "1.5.2",
3
+ "version": "1.5.4",
4
4
  "description": "Block model",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -15,13 +15,13 @@
15
15
  "./dist/model.json": "./dist/model.json"
16
16
  },
17
17
  "dependencies": {
18
- "@platforma-sdk/model": "1.53.2",
19
- "@milaboratories/graph-maker": "1.1.216"
18
+ "@platforma-sdk/model": "1.58.3",
19
+ "@milaboratories/graph-maker": "1.2.0"
20
20
  },
21
21
  "devDependencies": {
22
- "@milaboratories/ts-builder": "1.2.4",
23
- "@milaboratories/ts-configs": "1.2.0",
24
- "@platforma-sdk/block-tools": "2.6.35",
22
+ "@milaboratories/ts-builder": "1.2.11",
23
+ "@milaboratories/ts-configs": "1.2.1",
24
+ "@platforma-sdk/block-tools": "2.6.62",
25
25
  "@platforma-sdk/eslint-config": "1.2.0",
26
26
  "eslint": "^9.25.1",
27
27
  "typescript": "~5.6.3",
@@ -30,7 +30,7 @@
30
30
  "scripts": {
31
31
  "build": "ts-builder build --target block-model && block-tools build-model",
32
32
  "watch": "ts-builder build --target block-model --watch",
33
- "type-check": "ts-builder types --target block-model",
33
+ "type-check": "ts-builder type-check --target block-model",
34
34
  "lint": "eslint ."
35
35
  }
36
36
  }
package/src/index.ts CHANGED
@@ -17,6 +17,7 @@ import {
17
17
  createPlDataTableStateV2,
18
18
  createPlDataTableV2,
19
19
  } from '@platforma-sdk/model';
20
+ import { getDefaultBlockLabel } from './label';
20
21
 
21
22
  type Settings = {
22
23
  coverageThreshold: number; // fraction of aligned residues required
@@ -83,7 +84,11 @@ function getColumns(ctx: RenderCtxLegacy<BlockArgs, UiState>): Columns | undefin
83
84
  export const model = BlockModel.create()
84
85
 
85
86
  .withArgs<BlockArgs>({
86
- defaultBlockLabel: '',
87
+ defaultBlockLabel: getDefaultBlockLabel({
88
+ similarityType: 'alignment-score',
89
+ identity: 0.9,
90
+ coverageThreshold: 0.95,
91
+ }),
87
92
  customBlockLabel: '',
88
93
  settings: {
89
94
  coverageThreshold: 0.95, // default value matching MMseqs2 default
@@ -120,7 +125,7 @@ export const model = BlockModel.create()
120
125
  { name: 'pl7.app/vdj/scClonotypeKey' },
121
126
  ],
122
127
  annotations: { 'pl7.app/isAnchor': 'true' },
123
- }], { refsWithEnrichments: true }),
128
+ }], {}),
124
129
  )
125
130
 
126
131
  .output('targetOptions', (ctx) => {
@@ -236,3 +241,5 @@ export const model = BlockModel.create()
236
241
  ]))
237
242
 
238
243
  .done(2);
244
+
245
+ export { getDefaultBlockLabel } from './label';
package/src/label.ts ADDED
@@ -0,0 +1,27 @@
1
+ export function getDefaultBlockLabel(data: {
2
+ fileName?: string;
3
+ similarityType: 'alignment-score' | 'sequence-identity';
4
+ identity: number;
5
+ coverageThreshold: number;
6
+ }) {
7
+ const parts: string[] = [];
8
+
9
+ // Add file name if available
10
+ if (data.fileName) {
11
+ parts.push(data.fileName);
12
+ }
13
+
14
+ // Add similarity type label
15
+ const similarityLabel = data.similarityType === 'alignment-score' ? 'BLOSUM' : 'Exact Match';
16
+ if (similarityLabel) {
17
+ parts.push(similarityLabel);
18
+ }
19
+
20
+ // Add identity threshold
21
+ parts.push(`ident:${data.identity}`);
22
+
23
+ // Add coverage threshold
24
+ parts.push(`cov:${data.coverageThreshold}`);
25
+
26
+ return parts.filter(Boolean).join(', ');
27
+ }