@platforma-open/milaboratories.sequence-properties.model 1.2.4 → 1.3.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/.turbo/turbo-build.log +18 -16
- package/.turbo/turbo-check.log +4 -4
- package/.turbo/turbo-test.log +15 -0
- package/CHANGELOG.md +11 -0
- package/dist/bundle.js +24 -4
- package/dist/bundle.js.map +1 -1
- package/dist/dataModel.cjs +10 -2
- package/dist/dataModel.cjs.map +1 -1
- package/dist/dataModel.d.ts.map +1 -1
- package/dist/dataModel.js +10 -2
- package/dist/dataModel.js.map +1 -1
- package/dist/index.cjs +6 -2
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +6 -2
- package/dist/index.js.map +1 -1
- package/dist/label.cjs +13 -0
- package/dist/label.cjs.map +1 -0
- package/dist/label.js +12 -0
- package/dist/label.js.map +1 -0
- package/dist/model.json +1 -1
- package/dist/types.d.ts +8 -1
- package/dist/types.d.ts.map +1 -1
- package/package.json +6 -3
- package/src/dataModel.test.ts +63 -0
- package/src/dataModel.ts +24 -6
- package/src/index.ts +3 -1
- package/src/label.test.ts +62 -0
- package/src/label.ts +17 -0
- package/src/types.ts +16 -4
- package/vitest.config.mts +8 -0
package/.turbo/turbo-build.log
CHANGED
|
@@ -1,28 +1,30 @@
|
|
|
1
1
|
WARN Issue while reading "/home/runner/work/sequence-properties/sequence-properties/.npmrc". Failed to replace env in config: ${NPMJS_TOKEN}
|
|
2
2
|
|
|
3
|
-
> @platforma-open/milaboratories.sequence-properties.model@1.
|
|
3
|
+
> @platforma-open/milaboratories.sequence-properties.model@1.3.0 build /home/runner/work/sequence-properties/sequence-properties/model
|
|
4
4
|
> ts-builder build --target block-model && block-tools build-model
|
|
5
5
|
|
|
6
6
|
Building block-model project...
|
|
7
7
|
↳ cli.mjs -c /home/runner/work/sequence-properties/sequence-properties/node_modules/.pnpm/@milaboratories+ts-builder@1.4.0_@types+node@25.3.2_rollup@4.53.3_vue@3.5.25_typescript@5.6.3__yaml@2.8.1/node_modules/@milaboratories/ts-builder/dist/configs/rolldown.block-model.config.js
|
|
8
|
-
[33m[PLUGIN_TIMINGS] Warning:[0m Your build spent significant time in plugin `rolldown-plugin-dts:generate`. See https://rolldown.rs/options/checks#plugintimings for more details.
|
|
9
|
-
|
|
10
8
|
[log] <DIR>/dataModel.d.ts.map asset │ size: 0.14 kB
|
|
11
|
-
[log] <DIR>/types.d.ts.map asset │ size: 0.
|
|
12
|
-
[log] <DIR>/
|
|
9
|
+
[log] <DIR>/types.d.ts.map asset │ size: 0.49 kB
|
|
10
|
+
[log] <DIR>/label.js.map asset │ size: 0.98 kB
|
|
13
11
|
[log] <DIR>/index.d.ts.map asset │ size: 2.00 kB
|
|
14
|
-
[log] <DIR>/
|
|
12
|
+
[log] <DIR>/dataModel.js.map asset │ size: 2.57 kB
|
|
13
|
+
[log] <DIR>/index.js.map asset │ size: 7.95 kB
|
|
15
14
|
[log] <DIR>/dataModel.d.ts chunk │ size: 0.29 kB
|
|
16
|
-
[log] <DIR>/
|
|
17
|
-
[log] <DIR>/
|
|
18
|
-
[log] <DIR>/
|
|
15
|
+
[log] <DIR>/label.js chunk │ size: 0.37 kB
|
|
16
|
+
[log] <DIR>/dataModel.js chunk │ size: 1.11 kB
|
|
17
|
+
[log] <DIR>/types.d.ts chunk │ size: 1.12 kB
|
|
18
|
+
[log] <DIR>/index.js chunk │ size: 3.05 kB
|
|
19
19
|
[log] <DIR>/index.d.ts chunk │ size: 58.05 kB
|
|
20
|
-
[log] <DIR>/
|
|
21
|
-
[log] <DIR>/
|
|
22
|
-
[log] <DIR>/
|
|
23
|
-
[log] <DIR>/
|
|
24
|
-
[log] <DIR>/
|
|
25
|
-
[log] <DIR>/
|
|
20
|
+
[log] <DIR>/label.cjs.map asset │ size: 0.98 kB
|
|
21
|
+
[log] <DIR>/dataModel.cjs.map asset │ size: 2.61 kB
|
|
22
|
+
[log] <DIR>/index.cjs.map asset │ size: 8.09 kB
|
|
23
|
+
[log] <DIR>/label.cjs chunk │ size: 0.41 kB
|
|
24
|
+
[log] <DIR>/dataModel.cjs chunk │ size: 1.14 kB
|
|
25
|
+
[log] <DIR>/index.cjs chunk │ size: 3.26 kB
|
|
26
|
+
[log] <DIR>/bundle.js.map asset │ size: 659.01 kB
|
|
27
|
+
[log] <DIR>/bundle.js chunk │ size: 324.24 kB
|
|
26
28
|
[log]
|
|
27
|
-
[success] rolldown v1.0.0-rc.16 Finished in
|
|
29
|
+
[success] rolldown v1.0.0-rc.16 Finished in 2.97 s
|
|
28
30
|
Build completed successfully
|
package/.turbo/turbo-check.log
CHANGED
|
@@ -1,21 +1,21 @@
|
|
|
1
1
|
WARN Issue while reading "/home/runner/work/sequence-properties/sequence-properties/.npmrc". Failed to replace env in config: ${NPMJS_TOKEN}
|
|
2
2
|
|
|
3
|
-
> @platforma-open/milaboratories.sequence-properties.model@1.
|
|
3
|
+
> @platforma-open/milaboratories.sequence-properties.model@1.3.0 check /home/runner/work/sequence-properties/sequence-properties/model
|
|
4
4
|
> ts-builder check --target block-model
|
|
5
5
|
|
|
6
6
|
↳ tsc --noEmit --project ./tsconfig.json --customConditions ,
|
|
7
7
|
Linting project...
|
|
8
8
|
↳ oxlint --config /home/runner/work/sequence-properties/sequence-properties/model/.oxlintrc.json --deny-warnings
|
|
9
9
|
Found 0 warnings and 0 errors.
|
|
10
|
-
Finished in
|
|
10
|
+
Finished in 11ms on 7 files with 90 rules using 4 threads.
|
|
11
11
|
Linting completed successfully
|
|
12
12
|
Checking formatting...
|
|
13
13
|
↳ oxfmt --check --config /home/runner/work/sequence-properties/sequence-properties/model/.oxfmtrc.json
|
|
14
|
-
(node:
|
|
14
|
+
(node:2796) ExperimentalWarning: glob is an experimental feature and might change at any time
|
|
15
15
|
(Use `node --trace-warnings ...` to show where the warning was created)
|
|
16
16
|
Checking formatting...
|
|
17
17
|
|
|
18
18
|
All matched files use the correct format.
|
|
19
|
-
Finished in
|
|
19
|
+
Finished in 296ms on 11 files using 4 threads.
|
|
20
20
|
Format check completed successfully
|
|
21
21
|
All checks passed!
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
|
|
2
|
+
> @platforma-open/milaboratories.sequence-properties.model@1.3.0 test /home/runner/work/sequence-properties/sequence-properties/model
|
|
3
|
+
> vitest --run --passWithNoTests
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
[1m[30m[46m RUN [49m[39m[22m [36mv4.1.4 [39m[90m/home/runner/work/sequence-properties/sequence-properties/model[39m
|
|
7
|
+
|
|
8
|
+
[32m✓[39m src/label.test.ts [2m([22m[2m6 tests[22m[2m)[22m[32m 5[2mms[22m[39m
|
|
9
|
+
[32m✓[39m src/dataModel.test.ts [2m([22m[2m4 tests[22m[2m)[22m[32m 4[2mms[22m[39m
|
|
10
|
+
|
|
11
|
+
[2m Test Files [22m [1m[32m2 passed[39m[22m[90m (2)[39m
|
|
12
|
+
[2m Tests [22m [1m[32m10 passed[39m[22m[90m (10)[39m
|
|
13
|
+
[2m Start at [22m 18:08:30
|
|
14
|
+
[2m Duration [22m 410ms[2m (transform 68ms, setup 0ms, import 308ms, tests 9ms, environment 0ms)[22m
|
|
15
|
+
|
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,16 @@
|
|
|
1
1
|
# @platforma-open/MiLaboratories.sequence-properties.model
|
|
2
2
|
|
|
3
|
+
## 1.3.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- aa281ac: Per-instance trace label, broader plot pickers, locked-in test coverage.
|
|
8
|
+
|
|
9
|
+
- **Trace label is per-instance.** The workflow's `pl7.app/trace.label` resolves to `customBlockLabel || defaultBlockLabel || "Sequence Properties"` (centralised in `model/src/label.ts`). Two sequence-properties blocks on the same dataset show distinguishable entries in Lead Selection and other downstream pickers once the user customises the `PlBlockPage` subtitle. Same pattern as clonotype-clustering and titeseq-analysis PR #13.
|
|
10
|
+
- **Scatter and Histogram metadata pickers accept own-block columns.** Filter, Grouping/Color, Highlight, Size, Tab, Tooltip, Label, and Additional-curves now treat every column in the property pframe as a candidate — own scalars and upstream metadata alike. Users can color the Property Relationships scatter by Aromaticity while plotting Charge vs Hydrophobicity. X/Y axis defaults unchanged.
|
|
11
|
+
- **Migration backfill.** A new `Ver_2026_05_18` step fills the new label fields onto projects tagged at the deployed `Ver_2026_05_05`, preserving any interim-deployed value via `?? ""`. Without the split, already-V2 projects would skip the migration and the workflow would receive `args.customBlockLabel === undefined`.
|
|
12
|
+
- **Test coverage.** Model vitest locks the resolution chain (6 cases) and the migration backfill (4 cases). A subprocess-based Python byte-compare test guards Python output determinism. `build.yaml` enables `test: true` so block-level tests exercise on every PR.
|
|
13
|
+
|
|
3
14
|
## 1.2.4
|
|
4
15
|
|
|
5
16
|
### Patch Changes
|
package/dist/bundle.js
CHANGED
|
@@ -9348,16 +9348,33 @@
|
|
|
9348
9348
|
currentTab: null,
|
|
9349
9349
|
layersSettings: { bins: { fillColor: "#99e099" } }
|
|
9350
9350
|
};
|
|
9351
|
-
const
|
|
9351
|
+
const migrateV1toV2 = (v1) => ({
|
|
9352
9352
|
...v1,
|
|
9353
9353
|
graphStateScatter: { ...DEFAULT_SCATTER_STATE },
|
|
9354
9354
|
graphStateHistogram: { ...DEFAULT_HISTOGRAM_STATE }
|
|
9355
|
-
})
|
|
9355
|
+
});
|
|
9356
|
+
const migrateV2toV2_1 = (v2) => ({
|
|
9357
|
+
...v2,
|
|
9358
|
+
defaultBlockLabel: v2.defaultBlockLabel ?? "",
|
|
9359
|
+
customBlockLabel: v2.customBlockLabel ?? ""
|
|
9360
|
+
});
|
|
9361
|
+
const blockDataModel = new DataModelBuilder().from("Ver_2026_04_28").migrate("Ver_2026_05_05", migrateV1toV2).migrate("Ver_2026_05_18", migrateV2toV2_1).init(() => ({
|
|
9356
9362
|
tableState: createPlDataTableStateV2(),
|
|
9363
|
+
defaultBlockLabel: "",
|
|
9364
|
+
customBlockLabel: "",
|
|
9357
9365
|
graphStateScatter: { ...DEFAULT_SCATTER_STATE },
|
|
9358
9366
|
graphStateHistogram: { ...DEFAULT_HISTOGRAM_STATE }
|
|
9359
9367
|
}));
|
|
9360
9368
|
//#endregion
|
|
9369
|
+
//#region src/label.ts
|
|
9370
|
+
const STATIC_FALLBACK = "Sequence Properties";
|
|
9371
|
+
function resolveSubtitle(data) {
|
|
9372
|
+
return data.customBlockLabel || data.defaultBlockLabel;
|
|
9373
|
+
}
|
|
9374
|
+
function resolveTraceLabel(data) {
|
|
9375
|
+
return data.customBlockLabel || data.defaultBlockLabel || STATIC_FALLBACK;
|
|
9376
|
+
}
|
|
9377
|
+
//#endregion
|
|
9361
9378
|
//#region src/index.ts
|
|
9362
9379
|
const inputAnchorSpecs = [
|
|
9363
9380
|
{
|
|
@@ -9379,7 +9396,10 @@
|
|
|
9379
9396
|
];
|
|
9380
9397
|
const platforma$1 = BlockModelV3.create(blockDataModel).args((data) => {
|
|
9381
9398
|
if (data.inputAnchor === void 0) throw new Error("Select an input dataset");
|
|
9382
|
-
return {
|
|
9399
|
+
return {
|
|
9400
|
+
inputAnchor: data.inputAnchor,
|
|
9401
|
+
traceLabel: resolveTraceLabel(data)
|
|
9402
|
+
};
|
|
9383
9403
|
}).output("inputOptions", (ctx) => ctx.resultPool.getOptions(inputAnchorSpecs)).output("inputSpec", (ctx) => ctx.data.inputAnchor ? ctx.resultPool.getPColumnSpecByRef(ctx.data.inputAnchor) : void 0).output("info", (ctx) => ctx.outputs?.resolve("info")?.getDataAsJson()).output("isRunning", (ctx) => ctx.outputs?.getIsReadyOrError() === false).output("processingLog", (ctx) => ctx.outputs?.resolve("processingLog")?.getLogHandle()).outputWithStatus("propertiesTable", (ctx) => {
|
|
9384
9404
|
if (ctx.data.inputAnchor === void 0) return void 0;
|
|
9385
9405
|
const ownCols = ctx.outputs?.resolve("propertiesPf")?.getPColumns();
|
|
@@ -9405,7 +9425,7 @@
|
|
|
9405
9425
|
columnId: c.id,
|
|
9406
9426
|
spec: c.spec
|
|
9407
9427
|
}));
|
|
9408
|
-
}).title(() => "Sequence Properties").subtitle((ctx) => ctx.data
|
|
9428
|
+
}).title(() => "Sequence Properties").subtitle((ctx) => resolveSubtitle(ctx.data)).sections(() => [
|
|
9409
9429
|
{
|
|
9410
9430
|
type: "link",
|
|
9411
9431
|
href: "/",
|