@platforma-sdk/model 1.42.15 → 1.42.16

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 +1 @@
1
- {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../src/render/api.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../src/render/api.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"column_collection.d.ts","sourceRoot":"","sources":["../../../src/render/util/column_collection.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"column_collection.d.ts","sourceRoot":"","sources":["../../../src/render/util/column_collection.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,5 @@
1
1
  import { PObjectSpec } from '@milaboratories/pl-model-common';
2
2
  import { z } from 'zod';
3
- export declare const PAnnotationLabel = "pl7.app/label";
4
- export declare const PAnnotationTrace = "pl7.app/trace";
5
3
  export type RecordsWithLabel<T> = {
6
4
  value: T;
7
5
  label: string;
@@ -1 +1 @@
1
- {"version":3,"file":"label.d.ts","sourceRoot":"","sources":["../../../src/render/util/label.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AACnE,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,gBAAgB,kBAAkB,CAAC;AAChD,eAAO,MAAM,gBAAgB,kBAAkB,CAAC;AAEhD,MAAM,MAAM,gBAAgB,CAAC,CAAC,IAAI;IAChC,KAAK,EAAE,CAAC,CAAC;IACT,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,6CAA6C;IAC7C,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,8DAA8D;IAC9D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,sHAAsH;IACtH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,2EAA2E;IAC3E,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAC;CAC/B,CAAC;AAEF,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;EAKrB,CAAC;AACH,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,UAAU,CAAC,CAAC;AAGpD,eAAO,MAAM,KAAK;;;;;;;;;;;;;;;WAAsB,CAAC;AACzC,MAAM,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,KAAK,CAAC,CAAC;AAI1C,KAAK,mBAAmB,GAAG,WAAW,GAAG;IACvC,IAAI,EAAE,WAAW,CAAC;IAClB,WAAW,CAAC,EAAE,UAAU,EAAE,CAAC;IAC3B,WAAW,CAAC,EAAE,UAAU,EAAE,CAAC;CAC5B,CAAC;AAOF,wBAAgB,YAAY,CAAC,CAAC,EAC5B,MAAM,EAAE,CAAC,EAAE,EACX,aAAa,EAAE,CAAC,GAAG,EAAE,CAAC,KAAK,mBAAmB,EAC9C,GAAG,GAAE,kBAAuB,GAC3B,gBAAgB,CAAC,CAAC,CAAC,EAAE,CAoJvB"}
1
+ {"version":3,"file":"label.d.ts","sourceRoot":"","sources":["../../../src/render/util/label.ts"],"names":[],"mappings":"AAAA,OAAO,EAAyC,KAAK,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAC1G,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,MAAM,gBAAgB,CAAC,CAAC,IAAI;IAChC,KAAK,EAAE,CAAC,CAAC;IACT,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,6CAA6C;IAC7C,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,8DAA8D;IAC9D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,sHAAsH;IACtH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,2EAA2E;IAC3E,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAC;CAC/B,CAAC;AAEF,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;EAKrB,CAAC;AACH,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,UAAU,CAAC,CAAC;AAGpD,eAAO,MAAM,KAAK;;;;;;;;;;;;;;;WAAsB,CAAC;AACzC,MAAM,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,KAAK,CAAC,CAAC;AAI1C,KAAK,mBAAmB,GAAG,WAAW,GAAG;IACvC,IAAI,EAAE,WAAW,CAAC;IAClB,WAAW,CAAC,EAAE,UAAU,EAAE,CAAC;IAC3B,WAAW,CAAC,EAAE,UAAU,EAAE,CAAC;CAC5B,CAAC;AAOF,wBAAgB,YAAY,CAAC,CAAC,EAC5B,MAAM,EAAE,CAAC,EAAE,EACX,aAAa,EAAE,CAAC,GAAG,EAAE,CAAC,KAAK,mBAAmB,EAC9C,GAAG,GAAE,kBAAuB,GAC3B,gBAAgB,CAAC,CAAC,CAAC,EAAE,CAoJvB"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@platforma-sdk/model",
3
- "version": "1.42.15",
3
+ "version": "1.42.16",
4
4
  "description": "Platforma.bio SDK / Block Model",
5
5
  "types": "./dist/index.d.ts",
6
6
  "main": "./dist/index.js",
@@ -22,7 +22,7 @@
22
22
  "utility-types": "^3.11.0",
23
23
  "canonicalize": "~2.1.0",
24
24
  "zod": "~3.23.8",
25
- "@milaboratories/pl-model-common": "^1.19.4",
25
+ "@milaboratories/pl-model-common": "^1.19.6",
26
26
  "@milaboratories/pl-error-like": "^1.12.2"
27
27
  },
28
28
  "devDependencies": {
@@ -34,8 +34,8 @@
34
34
  "ts-jest": "^29.2.6",
35
35
  "fast-json-patch": "^3.1.1",
36
36
  "@platforma-sdk/eslint-config": "1.0.3",
37
- "@milaboratories/build-configs": "1.0.5",
38
- "@milaboratories/helpers": "^1.6.19"
37
+ "@milaboratories/helpers": "^1.6.19",
38
+ "@milaboratories/build-configs": "1.0.5"
39
39
  },
40
40
  "scripts": {
41
41
  "type-check": "tsc --noEmit --composite false",
@@ -1,9 +1,5 @@
1
1
  import {test, expect, describe} from '@jest/globals';
2
- import {
3
- IS_VIRTUAL_COLUMN,
4
- LABEL_ANNOTATION,
5
- enrichCompatible, LINKER_COLUMN_ANNOTATION, getAvailableWithLinkersAxes
6
- } from './PFrameForGraphs';
2
+ import {enrichCompatible, getAvailableWithLinkersAxes} from './PFrameForGraphs';
7
3
  import {
8
4
  AxisId, CanonicalizedJson,
9
5
  canonicalizeJson, DataInfo,
@@ -11,16 +7,19 @@ import {
11
7
  PColumn,
12
8
  PColumnSpec,
13
9
  PColumnValues,
14
- PObjectId
10
+ PObjectId,
11
+ Annotation,
12
+ AxisSpecNormalized,
13
+ getNormalizedAxesList,
15
14
  } from "@milaboratories/pl-model-common";
16
15
  import {TreeNodeAccessor} from "../render";
17
16
 
18
- function getAllAxesFromSpecs (specs:PColumnSpec[]):Map<CanonicalizedJson<AxisId>, AxisId> {
19
- const allAxes:Map<CanonicalizedJson<AxisId>, AxisId> = new Map();
17
+ function getAllAxesFromSpecs (specs:PColumnSpec[]):Map<CanonicalizedJson<AxisId>, AxisSpecNormalized> {
18
+ const allAxes:Map<CanonicalizedJson<AxisId>, AxisSpecNormalized> = new Map();
20
19
  for (const spec of specs) {
21
- for (const id of spec.axesSpec) {
20
+ for (const id of getNormalizedAxesList(spec.axesSpec)) {
22
21
  const aid = getAxisId(id);
23
- allAxes.set(canonicalizeJson(aid), aid);
22
+ allAxes.set(canonicalizeJson(aid), id);
24
23
  }
25
24
  }
26
25
  return allAxes
@@ -84,8 +83,8 @@ describe('PFrameForGraph', () => {
84
83
  kind: 'PColumn',
85
84
  name: 'column2',
86
85
  valueType: 'Int',
87
- axesSpec: [{type: 'String', name: 'axis1', domain: {key1: 'a'}}],
88
- annotations: {[IS_VIRTUAL_COLUMN]: 'true'}
86
+ axesSpec: [{type: 'String', name: 'axis1', domain: {key1: 'a'}, parentAxesSpec: []}],
87
+ annotations: {[Annotation.Graph.IsVirtual]: 'true'}
89
88
  });
90
89
  });
91
90
  test('columns are not compatible, additional columns are impossible', () => {
@@ -179,7 +178,7 @@ describe('PFrameForGraph', () => {
179
178
  kind: 'PColumn',
180
179
  name: 'column2',
181
180
  valueType: 'Int',
182
- annotations: {[LABEL_ANNOTATION]: 'Label of column2'},
181
+ annotations: {[Annotation.Label]: 'Label of column2'},
183
182
  axesSpec: [{type: 'String', name: 'axis1', domain: {key0: 'commonDomain'}}]
184
183
  }
185
184
  const allAxes = getAllAxesFromSpecs([columnSpec1]);
@@ -189,8 +188,8 @@ describe('PFrameForGraph', () => {
189
188
  ] as PColumn<PColumnValues>[]
190
189
 
191
190
  const resultColumns = enrichCompatible(allAxes, columns);
192
- expect(resultColumns[2].spec.annotations?.[LABEL_ANNOTATION]).toEqual('Label of column2 / a');
193
- expect(resultColumns[3].spec.annotations?.[LABEL_ANNOTATION]).toEqual('Label of column2 / b');
191
+ expect(resultColumns[2].spec.annotations?.[Annotation.Label]).toEqual('Label of column2 / a');
192
+ expect(resultColumns[3].spec.annotations?.[Annotation.Label]).toEqual('Label of column2 / b');
194
193
  })
195
194
 
196
195
  test('Linker column adds available axis', () => {
@@ -207,7 +206,7 @@ describe('PFrameForGraph', () => {
207
206
  kind: 'PColumn',
208
207
  name: 'linker13',
209
208
  valueType: 'String',
210
- annotations: {[LINKER_COLUMN_ANNOTATION]: 'true'},
209
+ annotations: {[Annotation.IsLinkerColumn]: 'true'},
211
210
  axesSpec: [
212
211
  {type: 'String', name: 'axis1'},
213
212
  {type: 'String', name: 'axis3'}
@@ -219,7 +218,7 @@ describe('PFrameForGraph', () => {
219
218
  linkerColumns,
220
219
  getAllAxesFromSpecs([columnSpec1])
221
220
  );
222
- expect([...availableAxes.values()].map(id => id.name)).toEqual(['axis3'])
221
+ expect([...availableAxes.values()].map((id) => id.name)).toEqual(['axis3'])
223
222
  })
224
223
 
225
224
  test('Linker columns add available axes by chains', () => {
@@ -233,7 +232,7 @@ describe('PFrameForGraph', () => {
233
232
  kind: 'PColumn',
234
233
  name: 'linker12',
235
234
  valueType: 'String',
236
- annotations: {[LINKER_COLUMN_ANNOTATION]: 'true'},
235
+ annotations: {[Annotation.IsLinkerColumn]: 'true'},
237
236
  axesSpec: [
238
237
  {type: 'String', name: 'axis1'},
239
238
  {type: 'String', name: 'axis2'}
@@ -243,7 +242,7 @@ describe('PFrameForGraph', () => {
243
242
  kind: 'PColumn',
244
243
  name: 'linker23',
245
244
  valueType: 'String',
246
- annotations: {[LINKER_COLUMN_ANNOTATION]: 'true'},
245
+ annotations: {[Annotation.IsLinkerColumn]: 'true'},
247
246
  axesSpec: [
248
247
  {type: 'String', name: 'axis2'},
249
248
  {type: 'String', name: 'axis3'}
@@ -253,7 +252,7 @@ describe('PFrameForGraph', () => {
253
252
  kind: 'PColumn',
254
253
  name: 'linker34',
255
254
  valueType: 'String',
256
- annotations: {[LINKER_COLUMN_ANNOTATION]: 'true'},
255
+ annotations: {[Annotation.IsLinkerColumn]: 'true'},
257
256
  axesSpec: [
258
257
  {type: 'String', name: 'axis3'},
259
258
  {type: 'String', name: 'axis4'}
@@ -269,6 +268,6 @@ describe('PFrameForGraph', () => {
269
268
  linkerColumns,
270
269
  getAllAxesFromSpecs([columnSpec1])
271
270
  );
272
- expect([...availableAxes.values()].map(id => id.name)).toEqual(['axis2', 'axis3', 'axis4'])
271
+ expect([...availableAxes.values()].map((id) => id.name)).toEqual(['axis2', 'axis3', 'axis4'])
273
272
  })
274
273
  })
@@ -1,5 +1,6 @@
1
1
  import type {
2
2
  AxisId,
3
+ AxisSpecNormalized,
3
4
  CanonicalizedJson,
4
5
  PColumn,
5
6
  PColumnSpec,
@@ -10,8 +11,17 @@ import {
10
11
  canonicalizeJson,
11
12
  getAxisId,
12
13
  isDataInfo,
13
- matchAxisId, parseJson,
14
+ matchAxisId,
14
15
  visitDataInfo,
16
+ getColumnIdAndSpec,
17
+ Annotation,
18
+ readAnnotation,
19
+ getNormalizedAxesList,
20
+ stringifyJson,
21
+ readAnnotationJson,
22
+ LinkerMap,
23
+ getArrayFromAxisTree,
24
+ getAxesTree,
15
25
  } from '@milaboratories/pl-model-common';
16
26
  import type { PColumnDataUniversal, RenderCtx } from '../render';
17
27
  import { PColumnCollection, TreeNodeAccessor } from '../render';
@@ -48,70 +58,41 @@ function getKeysCombinations(idsLists: AxisId[][]) {
48
58
  }
49
59
 
50
60
  /** Check if column is a linker column */
51
- export function isLinkerColumn(column: PColumnSpec) {
52
- return column.annotations?.[LINKER_COLUMN_ANNOTATION] === 'true';
61
+ export function isLinkerColumn(column: PColumnSpec): boolean {
62
+ return !!readAnnotationJson(column, Annotation.IsLinkerColumn);
53
63
  }
54
64
 
55
- export const IS_VIRTUAL_COLUMN = 'pl7.app/graph/isVirtual'; // annotation for column duplicates with extended domains
56
- export const LABEL_ANNOTATION = 'pl7.app/label';
57
- export const LINKER_COLUMN_ANNOTATION = 'pl7.app/isLinkerColumn';
58
-
59
- export type LinkerColumnsMap = Map<CanonicalizedJson<AxisId>, Set<CanonicalizedJson<AxisId>>>;
60
- export function getLinkerColumnsMap(linkerColumns: PColumn<PColumnDataUniversal>[]) {
61
- const resultMap: LinkerColumnsMap = new Map();
62
- for (const { spec } of linkerColumns) {
63
- const axisIds = spec.axesSpec.map(getAxisId).map(canonicalizeJson);
64
- axisIds.forEach((id) => {
65
- if (!resultMap.has(id)) {
66
- resultMap.set(id, new Set());
67
- }
68
- });
69
- for (let i = 0; i < axisIds.length - 1; i++) {
70
- for (let j = i + 1; j < axisIds.length; j++) {
71
- const id1 = axisIds[i];
72
- const id2 = axisIds[j];
73
- resultMap.get(id1)?.add(id2);
74
- resultMap.get(id2)?.add(id1);
75
- }
76
- }
77
- }
78
- return resultMap;
79
- }
65
+ type AxesVault = Map<CanonicalizedJson<AxisId>, AxisSpecNormalized>;
80
66
 
81
67
  export function getAvailableWithLinkersAxes(
82
68
  linkerColumns: PColumn<PColumnDataUniversal>[],
83
- blockAxes: Map<CanonicalizedJson<AxisId>, AxisId>,
84
- ): Map<CanonicalizedJson<AxisId>, AxisId> {
85
- const linkerColumnsMap = getLinkerColumnsMap(linkerColumns);
86
- const linkerColumnsMapIds = [...linkerColumnsMap.keys()].map(parseJson);
87
- const startKeys: CanonicalizedJson<AxisId>[] = [];
88
- for (const startId of blockAxes.values()) {
89
- const matched = linkerColumnsMapIds.find((id) => matchAxisId(startId, id));
69
+ blockAxes: AxesVault,
70
+ ): AxesVault {
71
+ const linkerMap = LinkerMap.fromColumns(linkerColumns.map(getColumnIdAndSpec));
72
+ const startKeys: CanonicalizedJson<AxisId[]>[] = [];
73
+ const blockAxesGrouped: AxisId[][] = [...blockAxes.values()].map((axis) => getArrayFromAxisTree(getAxesTree(axis)).map(getAxisId));
74
+
75
+ for (const axesGroupBlock of blockAxesGrouped) {
76
+ const matched = linkerMap.keyAxesIds.find(
77
+ (keyIds: AxisId[]) => keyIds.every(
78
+ (keySourceAxis) => axesGroupBlock.find((axisSpecFromBlock) => matchAxisId(axisSpecFromBlock, keySourceAxis)),
79
+ ),
80
+ );
90
81
  if (matched) {
91
82
  startKeys.push(canonicalizeJson(matched)); // linker column can contain fewer domains than in block's columns, it's fixed on next step in enrichCompatible
92
83
  }
93
84
  }
94
- const visited: Set<CanonicalizedJson<AxisId>> = new Set(startKeys);
95
- const addedAvailableAxes: Map<CanonicalizedJson<AxisId>, AxisId> = new Map();
96
- let nextKeys = [...startKeys];
97
-
98
- while (nextKeys.length) {
99
- const next: CanonicalizedJson<AxisId>[] = [];
100
- for (const nextKey of nextKeys) {
101
- for (const availableKey of linkerColumnsMap.get(nextKey) ?? []) {
102
- if (!visited.has(availableKey)) {
103
- next.push(availableKey);
104
- visited.add(availableKey);
105
- addedAvailableAxes.set(availableKey, parseJson(availableKey));
106
- }
107
- }
108
- }
109
- nextKeys = next;
110
- }
111
- return addedAvailableAxes;
85
+
86
+ const availableKeys = linkerMap.searchAvailableAxesKeys(startKeys);
87
+ const availableAxes = linkerMap.getAxesListFromKeysList([...availableKeys]);
88
+
89
+ return new Map(availableAxes.map((axisSpec) => {
90
+ const id = getAxisId(axisSpec);
91
+ return [canonicalizeJson(id), axisSpec];
92
+ }));
112
93
  }
113
94
  /** Add columns with fully compatible axes created from partial compatible ones */
114
- export function enrichCompatible(blockAxes: Map<string, AxisId>, columns: PColumn<PColumnDataUniversal>[]) {
95
+ export function enrichCompatible(blockAxes: AxesVault, columns: PColumn<PColumnDataUniversal>[]) {
115
96
  const result: PColumn<PColumnDataUniversal>[] = [];
116
97
  columns.forEach((column) => {
117
98
  result.push(...getAdditionalColumnsForColumn(blockAxes, column));
@@ -120,7 +101,7 @@ export function enrichCompatible(blockAxes: Map<string, AxisId>, columns: PColum
120
101
  }
121
102
 
122
103
  function getAdditionalColumnsForColumn(
123
- blockAxes: Map<string, AxisId>,
104
+ blockAxes: AxesVault,
124
105
  column: PColumn<PColumnDataUniversal>,
125
106
  ): PColumn<PColumnDataUniversal>[] {
126
107
  const columnAxesIds = column.spec.axesSpec.map(getAxisId);
@@ -173,19 +154,19 @@ function getAdditionalColumnsForColumn(
173
154
  const additionalColumns = secondaryIdsVariants.map((idsList, idx) => {
174
155
  const id = colId(column.id, idsList.map((id) => id.domain));
175
156
 
176
- const label = column.spec.annotations?.[LABEL_ANNOTATION] ?? '';
157
+ const label = readAnnotation(column.spec, Annotation.Label) ?? '';
177
158
  const labelDomainPart = ([...addedByVariantsDomainValues[idx]])
178
159
  .filter((str) => addedNotToAllVariantsDomainValues.has(str))
179
160
  .sort()
180
161
  .map((v) => JSON.parse(v)?.[1]) // use in labels only domain values, but sort them by key to save the same order in all column variants
181
162
  .join(' / ');
182
163
 
183
- const annotations: Record<string, string> = {
164
+ const annotations: Annotation = {
184
165
  ...column.spec.annotations,
185
- [IS_VIRTUAL_COLUMN]: 'true',
166
+ [Annotation.Graph.IsVirtual]: stringifyJson(true),
186
167
  };
187
168
  if (label || labelDomainPart) {
188
- annotations[LABEL_ANNOTATION] = label && labelDomainPart ? label + ' / ' + labelDomainPart : label + labelDomainPart;
169
+ annotations[Annotation.Label] = label && labelDomainPart ? label + ' / ' + labelDomainPart : label + labelDomainPart;
189
170
  }
190
171
 
191
172
  return {
@@ -248,11 +229,11 @@ export function createPFrameForGraphs<A, U>(
248
229
  return undefined;
249
230
  }
250
231
 
251
- const allAxes = new Map(allColumns
252
- .flatMap((column) => column.spec.axesSpec)
232
+ const allAxes: AxesVault = new Map(allColumns
233
+ .flatMap((column) => getNormalizedAxesList(column.spec.axesSpec))
253
234
  .map((axisSpec) => {
254
235
  const axisId = getAxisId(axisSpec);
255
- return [canonicalizeJson(axisId), axisId];
236
+ return [canonicalizeJson(axisId), axisSpec];
256
237
  }));
257
238
 
258
239
  // additional columns are duplicates with extra fields in domains for compatibility if there are ones with partial match
@@ -271,14 +252,14 @@ export function createPFrameForGraphs<A, U>(
271
252
  columns.addColumns(blockColumns);
272
253
 
273
254
  // all possible axes from block columns
274
- const blockAxes = new Map<CanonicalizedJson<AxisId>, AxisId>();
255
+ const blockAxes: AxesVault = new Map();
275
256
  // axes from block columns and compatible result pool columns
276
- const allAxes = new Map<CanonicalizedJson<AxisId>, AxisId>();
257
+ const allAxes: AxesVault = new Map();
277
258
  for (const c of blockColumns) {
278
- for (const id of c.spec.axesSpec) {
279
- const aid = getAxisId(id);
280
- blockAxes.set(canonicalizeJson(aid), aid);
281
- allAxes.set(canonicalizeJson(aid), aid);
259
+ for (const spec of getNormalizedAxesList(c.spec.axesSpec)) {
260
+ const aid = getAxisId(spec);
261
+ blockAxes.set(canonicalizeJson(aid), spec);
262
+ allAxes.set(canonicalizeJson(aid), spec);
282
263
  }
283
264
  }
284
265
 
@@ -295,8 +276,8 @@ export function createPFrameForGraphs<A, U>(
295
276
  // all compatible with block columns but without label columns
296
277
  const compatibleWithoutLabels = (columns.getColumns((spec) => spec.axesSpec.some((axisSpec) => {
297
278
  const axisId = getAxisId(axisSpec);
298
- for (const selectorAxisId of blockAxes.values()) {
299
- if (matchAxisId(selectorAxisId, axisId)) {
279
+ for (const selectorAxisSpec of blockAxes.values()) {
280
+ if (matchAxisId(getAxisId(selectorAxisSpec), axisId)) {
300
281
  return true;
301
282
  }
302
283
  }
@@ -310,17 +291,17 @@ export function createPFrameForGraphs<A, U>(
310
291
 
311
292
  // extend axes set for label columns request
312
293
  for (const c of compatibleWithoutLabels) {
313
- for (const id of c.spec.axesSpec) {
314
- const aid = getAxisId(id);
315
- allAxes.set(canonicalizeJson(aid), aid);
294
+ for (const spec of getNormalizedAxesList(c.spec.axesSpec)) {
295
+ const aid = getAxisId(spec);
296
+ allAxes.set(canonicalizeJson(aid), spec);
316
297
  }
317
298
  }
318
299
 
319
300
  // label columns must be compatible with full set of axes - block axes and axes from compatible columns from result pool
320
301
  const compatibleLabels = (columns.getColumns((spec) => spec.axesSpec.some((axisSpec) => {
321
302
  const axisId = getAxisId(axisSpec);
322
- for (const selectorAxisId of allAxes.values()) {
323
- if (matchAxisId(selectorAxisId, axisId)) {
303
+ for (const selectorAxisSpec of allAxes.values()) {
304
+ if (matchAxisId(getAxisId(selectorAxisSpec), axisId)) {
324
305
  return true;
325
306
  }
326
307
  }
@@ -20,10 +20,13 @@ import type {
20
20
  PTableSorting,
21
21
  } from '@milaboratories/pl-model-common';
22
22
  import {
23
+ Annotation,
23
24
  canonicalizeJson,
24
25
  getAxisId,
25
26
  getColumnIdAndSpec,
26
27
  matchAxisId,
28
+ PColumnName,
29
+ readAnnotation,
27
30
  } from '@milaboratories/pl-model-common';
28
31
  import type {
29
32
  AxisLabelProvider,
@@ -468,7 +471,7 @@ export type CreatePlDataTableOps = {
468
471
 
469
472
  /** Check if column is a label column */
470
473
  export function isLabelColumn(column: PColumnSpec) {
471
- return column.axesSpec.length === 1 && column.name === 'pl7.app/label';
474
+ return column.axesSpec.length === 1 && column.name === PColumnName.Label;
472
475
  }
473
476
 
474
477
  /** Get all label columns from the result pool */
@@ -479,7 +482,7 @@ export function getAllLabelColumns(
479
482
  .addAxisLabelProvider(resultPool)
480
483
  .addColumnProvider(resultPool)
481
484
  .getColumns({
482
- name: 'pl7.app/label',
485
+ name: PColumnName.Label,
483
486
  axes: [{}], // exactly one axis
484
487
  }, { dontWaitAllData: true });
485
488
  }
@@ -645,13 +648,13 @@ export type PlDataTableModel = {
645
648
  };
646
649
 
647
650
  /** Check if column should be omitted from the table */
648
- export function isColumnHidden(spec: { annotations?: Record<string, string> }): boolean {
649
- return spec.annotations?.['pl7.app/table/visibility'] === 'hidden';
651
+ export function isColumnHidden(spec: { annotations?: Annotation }): boolean {
652
+ return readAnnotation(spec, Annotation.Table.Visibility) === 'hidden';
650
653
  }
651
654
 
652
655
  /** Check if column is hidden by default */
653
- export function isColumnOptional(spec: { annotations?: Record<string, string> }): boolean {
654
- return spec.annotations?.['pl7.app/table/visibility'] === 'optional';
656
+ export function isColumnOptional(spec: { annotations?: Annotation }): boolean {
657
+ return readAnnotation(spec, Annotation.Table.Visibility) === 'optional';
655
658
  }
656
659
 
657
660
  /**
@@ -1,12 +1,16 @@
1
1
  import {
2
+ Annotation,
2
3
  isPTableAbsent,
3
4
  type PColumn,
4
5
  type PColumnIdAndSpec,
5
6
  type PColumnKey,
7
+ PColumnName,
6
8
  type PColumnValues,
7
9
  type PObjectId,
8
10
  type PTableColumnId,
11
+ stringifyJson,
9
12
  uniquePlId,
13
+ ValueType,
10
14
  } from '@milaboratories/pl-model-common';
11
15
  import { type PlSelectionModel } from './PlSelectionModel';
12
16
 
@@ -58,14 +62,14 @@ export function createRowSelectionColumn({
58
62
  id: columnId,
59
63
  spec: {
60
64
  kind: 'PColumn',
61
- valueType: 'Int',
62
- name: 'pl7.app/table/row-selection',
65
+ valueType: ValueType.Int,
66
+ name: PColumnName.Table.RowSelection,
63
67
  axesSpec: selection.axesSpec,
64
68
  ...(domain && Object.keys(domain).length && { domain }),
65
69
  annotations: {
66
- 'pl7.app/label': label,
67
- 'pl7.app/discreteValues': '[1]',
68
- },
70
+ [Annotation.Label]: label,
71
+ [Annotation.DiscreteValues]: stringifyJson([1]),
72
+ } satisfies Annotation,
69
73
  },
70
74
  data,
71
75
  };
package/src/render/api.ts CHANGED
@@ -36,6 +36,8 @@ import {
36
36
  mapPObjectData,
37
37
  mapPTableDef,
38
38
  mapValueInVOE,
39
+ PColumnName,
40
+ readAnnotation,
39
41
  selectorsToPredicate,
40
42
  withEnrichments,
41
43
  } from '@milaboratories/pl-model-common';
@@ -427,7 +429,7 @@ export class ResultPool implements ColumnProvider, AxisLabelProvider {
427
429
 
428
430
  const spec = column.obj.spec;
429
431
  if (
430
- spec.name === 'pl7.app/label'
432
+ spec.name === PColumnName.Label
431
433
  && spec.axesSpec.length === 1
432
434
  && spec.axesSpec[0].name === axis.name
433
435
  && spec.axesSpec[0].type === axis.type
@@ -497,7 +499,7 @@ export class ResultPool implements ColumnProvider, AxisLabelProvider {
497
499
  public findLabelsForColumnAxis(column: PColumnSpec, axisIdx: number): Record<string | number, string> | undefined {
498
500
  const labels = this.findLabels(column.axesSpec[axisIdx]);
499
501
  if (!labels) return undefined;
500
- const axisKeys = column.annotations?.['pl7.app/axisKeys/' + axisIdx];
502
+ const axisKeys = readAnnotation(column, `pl7.app/axisKeys/${axisIdx}`);
501
503
  if (axisKeys !== undefined) {
502
504
  const keys = JSON.parse(axisKeys) as string[];
503
505
  return Object.fromEntries(keys.map((key) => {
@@ -23,6 +23,7 @@ import {
23
23
  isPartitionedDataInfoEntries,
24
24
  entriesToDataInfo,
25
25
  deriveNativeId,
26
+ Annotation,
26
27
  } from '@milaboratories/pl-model-common';
27
28
  import type { TreeNodeAccessor } from '../accessor';
28
29
  import type { LabelDerivationOps, TraceEntry } from './label';
@@ -407,8 +408,8 @@ export class PColumnCollection {
407
408
  ...finalSpec,
408
409
  annotations: {
409
410
  ...(finalSpec.annotations ?? {}),
410
- 'pl7.app/label': label,
411
- },
411
+ [Annotation.Label]: label,
412
+ } satisfies Annotation,
412
413
  };
413
414
  }
414
415
 
@@ -1,6 +1,6 @@
1
1
  import { test, expect } from '@jest/globals';
2
- import { deriveLabels, PAnnotationLabel, PAnnotationTrace, Trace } from './label';
3
- import { PColumnSpec } from '@milaboratories/pl-model-common';
2
+ import { deriveLabels, Trace } from './label';
3
+ import { Annotation, PColumnSpec } from '@milaboratories/pl-model-common';
4
4
 
5
5
  function tracesToSpecs(traces: Trace[]) {
6
6
  return traces.map(
@@ -10,8 +10,8 @@ function tracesToSpecs(traces: Trace[]) {
10
10
  name: 'name',
11
11
  valueType: 'Int',
12
12
  annotations: {
13
- [PAnnotationTrace]: JSON.stringify(t),
14
- [PAnnotationLabel]: 'Label'
13
+ [Annotation.Trace]: JSON.stringify(t),
14
+ [Annotation.Label]: 'Label'
15
15
  },
16
16
  axesSpec: []
17
17
  }) satisfies PColumnSpec
@@ -1,9 +1,6 @@
1
- import type { PObjectSpec } from '@milaboratories/pl-model-common';
1
+ import { Annotation, parseJson, readAnnotation, type PObjectSpec } from '@milaboratories/pl-model-common';
2
2
  import { z } from 'zod';
3
3
 
4
- export const PAnnotationLabel = 'pl7.app/label';
5
- export const PAnnotationTrace = 'pl7.app/trace';
6
-
7
4
  export type RecordsWithLabel<T> = {
8
5
  value: T;
9
6
  label: string;
@@ -76,9 +73,9 @@ export function deriveLabels<T>(
76
73
  spec = extractorResult as PObjectSpec;
77
74
  }
78
75
 
79
- const label = spec.annotations?.[PAnnotationLabel];
80
- const traceStr = spec.annotations?.[PAnnotationTrace];
81
- const baseTrace = (traceStr ? Trace.safeParse(JSON.parse(traceStr)).data : undefined) ?? [];
76
+ const label = readAnnotation(spec, Annotation.Label);
77
+ const traceStr = readAnnotation(spec, Annotation.Trace);
78
+ const baseTrace = (traceStr ? Trace.safeParse(parseJson(traceStr)).data : undefined) ?? [];
82
79
 
83
80
  const trace = [
84
81
  ...(prefixTrace ?? []),