@platforma-open/milaboratories.repertoire-diversity-2.model 1.5.1 → 1.5.3
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 +12 -12
- package/CHANGELOG.md +15 -0
- package/dist/bundle.js +37 -39
- package/dist/bundle.js.map +1 -1
- package/dist/index.cjs +2 -2
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +2 -2
- package/dist/index.js.map +1 -1
- package/dist/model.json +1 -1
- package/package.json +5 -5
- package/src/index.ts +3 -2
package/dist/index.cjs
CHANGED
|
@@ -72,7 +72,7 @@ var model = model$1.BlockModel.create().withArgs({
|
|
|
72
72
|
isExpanded: false
|
|
73
73
|
}
|
|
74
74
|
]
|
|
75
|
-
}).argsValid((ctx) => ctx.args.abundanceRef !== void 0).output(
|
|
75
|
+
}).argsValid((ctx) => ctx.args.abundanceRef !== void 0 && ctx.args.metrics.every((metric) => metric.type !== void 0)).output(
|
|
76
76
|
"abundanceOptions",
|
|
77
77
|
(ctx) => ctx.resultPool.getOptions([
|
|
78
78
|
{
|
|
@@ -113,7 +113,7 @@ var model = model$1.BlockModel.create().withArgs({
|
|
|
113
113
|
}).output("isRunning", (ctx) => ctx.outputs?.getIsReadyOrError() === false).title((ctx) => ctx.uiState?.blockTitle ?? "Repertoire Diversity").sections((_) => [
|
|
114
114
|
{ type: "link", href: "/", label: "Main" },
|
|
115
115
|
{ type: "link", href: "/diversityGraph", label: "Diversity Graph" }
|
|
116
|
-
]).done();
|
|
116
|
+
]).done(2);
|
|
117
117
|
|
|
118
118
|
exports.convertMetricsUiToArgs = convertMetricsUiToArgs;
|
|
119
119
|
exports.model = model;
|
package/dist/index.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/converters.ts","../src/index.ts"],"names":["BlockModel","createPlDataTableStateV2","createPlDataTableV2","createPFrameForGraphs"],"mappings":";;;;;;;AAEa,IAAA,sBAAA,GAAyB,CAAC,OAAkC,KAAA;AACvE,EAAO,OAAA,OAAA,CAAQ,GAAI,CAAA,CAAC,MAAmB,KAAA;AACrC,IAAO,OAAA;AAAA,MACL,MAAM,MAAO,CAAA,IAAA;AAAA,MACb,cAAc,MAAO,CAAA;AAAA,KACvB;AAAA,GACD,CAAA;AACH;;;AC2BO,IAAM,KAAQ,GAAAA,kBAAA,CAAW,MAAO,EAAA,CACpC,QAAoB,CAAA;AAAA,EACnB,SAAS;AACX,CAAC,EAEA,WAAqB,CAAA;AAAA,EACpB,UAAY,EAAA,sBAAA;AAAA,EACZ,UAAY,EAAA;AAAA,IACV,KAAO,EAAA,sBAAA;AAAA,IACP,QAAU,EAAA,KAAA;AAAA,IACV,UAAY,EAAA;AAAA,GACd;AAAA,EAEA,YAAYC,gCAAyB,EAAA;AAAA,EAErC,OAAS,EAAA;AAAA,IACP;AAAA,MACE,EAAI,EAAA,UAAA;AAAA,MACJ,IAAM,EAAA,UAAA;AAAA,MACN,YAAc,EAAA;AAAA,QACZ,IAAM,EAAA,gBAAA;AAAA,QACN,YAAc,EAAA;AAAA,OAChB;AAAA,MACA,UAAY,EAAA;AAAA,KACd;AAAA,IACA;AAAA,MACE,EAAI,EAAA,eAAA;AAAA,MACJ,IAAM,EAAA,eAAA;AAAA,MACN,YAAc,EAAA;AAAA,QACZ,IAAM,EAAA,gBAAA;AAAA,QACN,YAAc,EAAA;AAAA,OAChB;AAAA,MACA,UAAY,EAAA;AAAA,KACd;AAAA,IACA;AAAA,MACE,EAAI,EAAA,OAAA;AAAA,MACJ,IAAM,EAAA,OAAA;AAAA,MACN,YAAc,EAAA;AAAA,QACZ,IAAM,EAAA,gBAAA;AAAA,QACN,YAAc,EAAA;AAAA,OAChB;AAAA,MACA,UAAY,EAAA;AAAA,KACd;AAAA,IACA;AAAA,MACE,EAAI,EAAA,MAAA;AAAA,MACJ,IAAM,EAAA,MAAA;AAAA,MACN,YAAc,EAAA;AAAA,QACZ,IAAM,EAAA,gBAAA;AAAA,QACN,YAAc,EAAA;AAAA,OAChB;AAAA,MACA,UAAY,EAAA;AAAA,KACd;AAAA,IACA;AAAA,MACE,EAAI,EAAA,KAAA;AAAA,MACJ,IAAM,EAAA,KAAA;AAAA,MACN,YAAc,EAAA;AAAA,QACZ,IAAM,EAAA,gBAAA;AAAA,QACN,YAAc,EAAA;AAAA,OAChB;AAAA,MACA,UAAY,EAAA;AAAA;AACd;AAEJ,CAAC,
|
|
1
|
+
{"version":3,"sources":["../src/converters.ts","../src/index.ts"],"names":["BlockModel","createPlDataTableStateV2","createPlDataTableV2","createPFrameForGraphs"],"mappings":"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","file":"index.cjs","sourcesContent":["import type { Metric, MetricUI } from './index';\n\nexport const convertMetricsUiToArgs = (metrics: MetricUI[]): Metric[] => {\n return metrics.map((metric): Metric => {\n return {\n type: metric.type,\n downsampling: metric.downsampling,\n };\n });\n};\n","import type { GraphMakerState } from '@milaboratories/graph-maker';\nimport type { InferOutputsType, PColumnIdAndSpec, PlDataTableStateV2, PlRef } from '@platforma-sdk/model';\nimport { BlockModel, createPFrameForGraphs, createPlDataTableStateV2, createPlDataTableV2 } from '@platforma-sdk/model';\n\nexport * from './converters';\n\nexport type DiversityType = 'chao1' | 'd50' | 'efronThisted' |\n 'observed' | 'shannonWienerIndex' | 'shannonWiener' |\n 'normalizedShannonWiener' | 'inverseSimpson' | 'gini';\n\nexport type Metric = {\n type: DiversityType | undefined;\n downsampling: {\n type?: 'none' | 'top' | 'cumtop' | 'hypergeometric' ;\n valueChooser?: 'min' | 'fixed' | 'max' | 'auto';\n n?: number;\n };\n};\n\nexport type MetricUI = Metric & {\n id: string;\n isExpanded?: boolean;\n};\n\nexport type BlockArgs = {\n abundanceRef?: PlRef;\n metrics: Metric[];\n};\n\nexport type UiState = {\n metrics: MetricUI[];\n blockTitle: string;\n tableState: PlDataTableStateV2;\n graphState: GraphMakerState;\n};\n\nexport const model = BlockModel.create()\n .withArgs<BlockArgs>({\n metrics: [],\n })\n\n .withUiState<UiState>({\n blockTitle: 'Repertoire Diversity',\n graphState: {\n title: 'Repertoire Diversity',\n template: 'bar',\n currentTab: null,\n },\n\n tableState: createPlDataTableStateV2(),\n\n metrics: [\n {\n id: 'observed',\n type: 'observed',\n downsampling: {\n type: 'hypergeometric',\n valueChooser: 'auto',\n },\n isExpanded: false,\n },\n {\n id: 'shannonWiener',\n type: 'shannonWiener',\n downsampling: {\n type: 'hypergeometric',\n valueChooser: 'auto',\n },\n isExpanded: false,\n },\n {\n id: 'chao1',\n type: 'chao1',\n downsampling: {\n type: 'hypergeometric',\n valueChooser: 'auto',\n },\n isExpanded: false,\n },\n {\n id: 'gini',\n type: 'gini',\n downsampling: {\n type: 'hypergeometric',\n valueChooser: 'auto',\n },\n isExpanded: false,\n },\n {\n id: 'd50',\n type: 'd50',\n downsampling: {\n type: 'hypergeometric',\n valueChooser: 'auto',\n },\n isExpanded: false,\n },\n ],\n })\n\n .argsValid((ctx) => ctx.args.abundanceRef !== undefined\n && ctx.args.metrics.every((metric) => metric.type !== undefined))\n\n .output('abundanceOptions', (ctx) =>\n ctx.resultPool.getOptions([{\n axes: [\n { name: 'pl7.app/sampleId' },\n { },\n ],\n annotations: {\n 'pl7.app/isAbundance': 'true',\n 'pl7.app/abundance/normalized': 'false',\n 'pl7.app/abundance/isPrimary': 'true',\n },\n },\n ]),\n )\n\n .output('pt', (ctx) => {\n const pCols = ctx.outputs?.resolve('pf')?.getPColumns();\n if (pCols === undefined) {\n return undefined;\n }\n\n return createPlDataTableV2(ctx, pCols, ctx.uiState.tableState);\n })\n\n .output('pf', (ctx) => {\n const pCols = ctx.outputs?.resolve('pf')?.getPColumns();\n if (pCols === undefined) {\n return undefined;\n }\n\n return createPFrameForGraphs(ctx, pCols);\n })\n\n // Return a list of Pcols for plot defaults\n .output('pcols', (ctx) => {\n const pCols = ctx.outputs?.resolve('pf')?.getPColumns();\n\n if (pCols === undefined || pCols.length === 0) {\n return undefined;\n }\n\n return pCols.map(\n (c) =>\n ({\n columnId: c.id,\n spec: c.spec,\n } satisfies PColumnIdAndSpec),\n );\n })\n\n .output('isRunning', (ctx) => ctx.outputs?.getIsReadyOrError() === false)\n\n .title((ctx) => ctx.uiState?.blockTitle ?? 'Repertoire Diversity')\n\n .sections((_) => [\n { type: 'link', href: '/', label: 'Main' },\n { type: 'link', href: '/diversityGraph', label: 'Diversity Graph' },\n ])\n\n .done(2);\n\nexport type BlockOutputs = InferOutputsType<typeof model>;\n"]}
|
package/dist/index.d.cts
CHANGED
|
@@ -27,7 +27,7 @@ type UiState = {
|
|
|
27
27
|
tableState: PlDataTableStateV2;
|
|
28
28
|
graphState: GraphMakerState;
|
|
29
29
|
};
|
|
30
|
-
declare const model: _platforma_sdk_model.
|
|
30
|
+
declare const model: _platforma_sdk_model.PlatformaV2<BlockArgs, {
|
|
31
31
|
abundanceOptions: _platforma_sdk_model.ValueOrErrors<{
|
|
32
32
|
readonly ref: {
|
|
33
33
|
readonly __isRef: true;
|
package/dist/index.d.ts
CHANGED
|
@@ -27,7 +27,7 @@ type UiState = {
|
|
|
27
27
|
tableState: PlDataTableStateV2;
|
|
28
28
|
graphState: GraphMakerState;
|
|
29
29
|
};
|
|
30
|
-
declare const model: _platforma_sdk_model.
|
|
30
|
+
declare const model: _platforma_sdk_model.PlatformaV2<BlockArgs, {
|
|
31
31
|
abundanceOptions: _platforma_sdk_model.ValueOrErrors<{
|
|
32
32
|
readonly ref: {
|
|
33
33
|
readonly __isRef: true;
|
package/dist/index.js
CHANGED
|
@@ -70,7 +70,7 @@ var model = BlockModel.create().withArgs({
|
|
|
70
70
|
isExpanded: false
|
|
71
71
|
}
|
|
72
72
|
]
|
|
73
|
-
}).argsValid((ctx) => ctx.args.abundanceRef !== void 0).output(
|
|
73
|
+
}).argsValid((ctx) => ctx.args.abundanceRef !== void 0 && ctx.args.metrics.every((metric) => metric.type !== void 0)).output(
|
|
74
74
|
"abundanceOptions",
|
|
75
75
|
(ctx) => ctx.resultPool.getOptions([
|
|
76
76
|
{
|
|
@@ -111,7 +111,7 @@ var model = BlockModel.create().withArgs({
|
|
|
111
111
|
}).output("isRunning", (ctx) => ctx.outputs?.getIsReadyOrError() === false).title((ctx) => ctx.uiState?.blockTitle ?? "Repertoire Diversity").sections((_) => [
|
|
112
112
|
{ type: "link", href: "/", label: "Main" },
|
|
113
113
|
{ type: "link", href: "/diversityGraph", label: "Diversity Graph" }
|
|
114
|
-
]).done();
|
|
114
|
+
]).done(2);
|
|
115
115
|
|
|
116
116
|
export { convertMetricsUiToArgs, model };
|
|
117
117
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/converters.ts","../src/index.ts"],"names":[],"mappings":";;;;;AAEa,IAAA,sBAAA,GAAyB,CAAC,OAAkC,KAAA;AACvE,EAAO,OAAA,OAAA,CAAQ,GAAI,CAAA,CAAC,MAAmB,KAAA;AACrC,IAAO,OAAA;AAAA,MACL,MAAM,MAAO,CAAA,IAAA;AAAA,MACb,cAAc,MAAO,CAAA;AAAA,KACvB;AAAA,GACD,CAAA;AACH;;;AC2BO,IAAM,KAAQ,GAAA,UAAA,CAAW,MAAO,EAAA,CACpC,QAAoB,CAAA;AAAA,EACnB,SAAS;AACX,CAAC,EAEA,WAAqB,CAAA;AAAA,EACpB,UAAY,EAAA,sBAAA;AAAA,EACZ,UAAY,EAAA;AAAA,IACV,KAAO,EAAA,sBAAA;AAAA,IACP,QAAU,EAAA,KAAA;AAAA,IACV,UAAY,EAAA;AAAA,GACd;AAAA,EAEA,YAAY,wBAAyB,EAAA;AAAA,EAErC,OAAS,EAAA;AAAA,IACP;AAAA,MACE,EAAI,EAAA,UAAA;AAAA,MACJ,IAAM,EAAA,UAAA;AAAA,MACN,YAAc,EAAA;AAAA,QACZ,IAAM,EAAA,gBAAA;AAAA,QACN,YAAc,EAAA;AAAA,OAChB;AAAA,MACA,UAAY,EAAA;AAAA,KACd;AAAA,IACA;AAAA,MACE,EAAI,EAAA,eAAA;AAAA,MACJ,IAAM,EAAA,eAAA;AAAA,MACN,YAAc,EAAA;AAAA,QACZ,IAAM,EAAA,gBAAA;AAAA,QACN,YAAc,EAAA;AAAA,OAChB;AAAA,MACA,UAAY,EAAA;AAAA,KACd;AAAA,IACA;AAAA,MACE,EAAI,EAAA,OAAA;AAAA,MACJ,IAAM,EAAA,OAAA;AAAA,MACN,YAAc,EAAA;AAAA,QACZ,IAAM,EAAA,gBAAA;AAAA,QACN,YAAc,EAAA;AAAA,OAChB;AAAA,MACA,UAAY,EAAA;AAAA,KACd;AAAA,IACA;AAAA,MACE,EAAI,EAAA,MAAA;AAAA,MACJ,IAAM,EAAA,MAAA;AAAA,MACN,YAAc,EAAA;AAAA,QACZ,IAAM,EAAA,gBAAA;AAAA,QACN,YAAc,EAAA;AAAA,OAChB;AAAA,MACA,UAAY,EAAA;AAAA,KACd;AAAA,IACA;AAAA,MACE,EAAI,EAAA,KAAA;AAAA,MACJ,IAAM,EAAA,KAAA;AAAA,MACN,YAAc,EAAA;AAAA,QACZ,IAAM,EAAA,gBAAA;AAAA,QACN,YAAc,EAAA;AAAA,OAChB;AAAA,MACA,UAAY,EAAA;AAAA;AACd;AAEJ,CAAC,
|
|
1
|
+
{"version":3,"sources":["../src/converters.ts","../src/index.ts"],"names":[],"mappings":"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","file":"index.js","sourcesContent":["import type { Metric, MetricUI } from './index';\n\nexport const convertMetricsUiToArgs = (metrics: MetricUI[]): Metric[] => {\n return metrics.map((metric): Metric => {\n return {\n type: metric.type,\n downsampling: metric.downsampling,\n };\n });\n};\n","import type { GraphMakerState } from '@milaboratories/graph-maker';\nimport type { InferOutputsType, PColumnIdAndSpec, PlDataTableStateV2, PlRef } from '@platforma-sdk/model';\nimport { BlockModel, createPFrameForGraphs, createPlDataTableStateV2, createPlDataTableV2 } from '@platforma-sdk/model';\n\nexport * from './converters';\n\nexport type DiversityType = 'chao1' | 'd50' | 'efronThisted' |\n 'observed' | 'shannonWienerIndex' | 'shannonWiener' |\n 'normalizedShannonWiener' | 'inverseSimpson' | 'gini';\n\nexport type Metric = {\n type: DiversityType | undefined;\n downsampling: {\n type?: 'none' | 'top' | 'cumtop' | 'hypergeometric' ;\n valueChooser?: 'min' | 'fixed' | 'max' | 'auto';\n n?: number;\n };\n};\n\nexport type MetricUI = Metric & {\n id: string;\n isExpanded?: boolean;\n};\n\nexport type BlockArgs = {\n abundanceRef?: PlRef;\n metrics: Metric[];\n};\n\nexport type UiState = {\n metrics: MetricUI[];\n blockTitle: string;\n tableState: PlDataTableStateV2;\n graphState: GraphMakerState;\n};\n\nexport const model = BlockModel.create()\n .withArgs<BlockArgs>({\n metrics: [],\n })\n\n .withUiState<UiState>({\n blockTitle: 'Repertoire Diversity',\n graphState: {\n title: 'Repertoire Diversity',\n template: 'bar',\n currentTab: null,\n },\n\n tableState: createPlDataTableStateV2(),\n\n metrics: [\n {\n id: 'observed',\n type: 'observed',\n downsampling: {\n type: 'hypergeometric',\n valueChooser: 'auto',\n },\n isExpanded: false,\n },\n {\n id: 'shannonWiener',\n type: 'shannonWiener',\n downsampling: {\n type: 'hypergeometric',\n valueChooser: 'auto',\n },\n isExpanded: false,\n },\n {\n id: 'chao1',\n type: 'chao1',\n downsampling: {\n type: 'hypergeometric',\n valueChooser: 'auto',\n },\n isExpanded: false,\n },\n {\n id: 'gini',\n type: 'gini',\n downsampling: {\n type: 'hypergeometric',\n valueChooser: 'auto',\n },\n isExpanded: false,\n },\n {\n id: 'd50',\n type: 'd50',\n downsampling: {\n type: 'hypergeometric',\n valueChooser: 'auto',\n },\n isExpanded: false,\n },\n ],\n })\n\n .argsValid((ctx) => ctx.args.abundanceRef !== undefined\n && ctx.args.metrics.every((metric) => metric.type !== undefined))\n\n .output('abundanceOptions', (ctx) =>\n ctx.resultPool.getOptions([{\n axes: [\n { name: 'pl7.app/sampleId' },\n { },\n ],\n annotations: {\n 'pl7.app/isAbundance': 'true',\n 'pl7.app/abundance/normalized': 'false',\n 'pl7.app/abundance/isPrimary': 'true',\n },\n },\n ]),\n )\n\n .output('pt', (ctx) => {\n const pCols = ctx.outputs?.resolve('pf')?.getPColumns();\n if (pCols === undefined) {\n return undefined;\n }\n\n return createPlDataTableV2(ctx, pCols, ctx.uiState.tableState);\n })\n\n .output('pf', (ctx) => {\n const pCols = ctx.outputs?.resolve('pf')?.getPColumns();\n if (pCols === undefined) {\n return undefined;\n }\n\n return createPFrameForGraphs(ctx, pCols);\n })\n\n // Return a list of Pcols for plot defaults\n .output('pcols', (ctx) => {\n const pCols = ctx.outputs?.resolve('pf')?.getPColumns();\n\n if (pCols === undefined || pCols.length === 0) {\n return undefined;\n }\n\n return pCols.map(\n (c) =>\n ({\n columnId: c.id,\n spec: c.spec,\n } satisfies PColumnIdAndSpec),\n );\n })\n\n .output('isRunning', (ctx) => ctx.outputs?.getIsReadyOrError() === false)\n\n .title((ctx) => ctx.uiState?.blockTitle ?? 'Repertoire Diversity')\n\n .sections((_) => [\n { type: 'link', href: '/', label: 'Main' },\n { type: 'link', href: '/diversityGraph', label: 'Diversity Graph' },\n ])\n\n .done(2);\n\nexport type BlockOutputs = InferOutputsType<typeof model>;\n"]}
|