@platforma-open/milaboratories.vj-usage.model 2.1.4 → 2.1.5

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/dist/index.cjs CHANGED
@@ -2,81 +2,83 @@
2
2
 
3
3
  var model$1 = require('@platforma-sdk/model');
4
4
 
5
- // src/index.ts
6
- var model = model$1.BlockModel.create().withArgs({
7
- scChain: "A",
8
- allele: false
9
- }).withUiState({
10
- blockTitle: "V/J Usage",
11
- weightedFlag: true,
12
- vUsagePlotState: {
13
- title: "V Usage",
14
- template: "heatmapClustered",
15
- currentTab: "settings",
16
- layersSettings: {
17
- heatmapClustered: {
18
- normalizationDirection: null
19
- }
20
- }
21
- },
22
- jUsagePlotState: {
23
- title: "V Usage",
24
- template: "heatmapClustered",
25
- currentTab: null,
26
- layersSettings: {
27
- heatmapClustered: {
28
- normalizationDirection: null
29
- }
30
- }
31
- },
32
- vjUsagePlotState: {
33
- title: "V/J Usage",
34
- template: "heatmapClustered",
35
- currentTab: null,
36
- layersSettings: {
37
- heatmapClustered: {
38
- normalizationDirection: null
39
- }
40
- }
41
- }
42
- }).argsValid((ctx) => ctx.args.datasetRef !== void 0).output(
43
- "datasetOptions",
44
- (ctx) => ctx.resultPool.getOptions(
45
- [{
46
- axes: [
47
- { name: "pl7.app/sampleId" },
48
- { name: "pl7.app/vdj/clonotypeKey" }
49
- ],
50
- annotations: { "pl7.app/isAnchor": "true" }
5
+ const model = model$1.BlockModel.create()
6
+ .withArgs({
7
+ scChain: 'A',
8
+ allele: false,
9
+ })
10
+ .withUiState({
11
+ blockTitle: 'V/J Usage',
12
+ weightedFlag: true,
13
+ vUsagePlotState: {
14
+ title: 'V Usage',
15
+ template: 'heatmapClustered',
16
+ currentTab: 'settings',
17
+ layersSettings: {
18
+ heatmapClustered: {
19
+ normalizationDirection: null,
20
+ },
21
+ },
22
+ },
23
+ jUsagePlotState: {
24
+ title: 'V Usage',
25
+ template: 'heatmapClustered',
26
+ currentTab: null,
27
+ layersSettings: {
28
+ heatmapClustered: {
29
+ normalizationDirection: null,
30
+ },
31
+ },
32
+ },
33
+ vjUsagePlotState: {
34
+ title: 'V/J Usage',
35
+ template: 'heatmapClustered',
36
+ currentTab: null,
37
+ layersSettings: {
38
+ heatmapClustered: {
39
+ normalizationDirection: null,
40
+ },
41
+ },
42
+ },
43
+ })
44
+ .argsValid((ctx) => ctx.args.datasetRef !== undefined)
45
+ .output('datasetOptions', (ctx) => ctx.resultPool.getOptions([{
46
+ axes: [
47
+ { name: 'pl7.app/sampleId' },
48
+ { name: 'pl7.app/vdj/clonotypeKey' },
49
+ ],
50
+ annotations: { 'pl7.app/isAnchor': 'true' },
51
51
  }, {
52
- axes: [
53
- { name: "pl7.app/sampleId" },
54
- { name: "pl7.app/vdj/scClonotypeKey" }
55
- ],
56
- annotations: { "pl7.app/isAnchor": "true" }
57
- }],
58
- {
59
- // suppress native label of the column (e.g. "Number of Reads") to show only the dataset label
60
- label: { includeNativeLabel: false }
52
+ axes: [
53
+ { name: 'pl7.app/sampleId' },
54
+ { name: 'pl7.app/vdj/scClonotypeKey' },
55
+ ],
56
+ annotations: { 'pl7.app/isAnchor': 'true' },
57
+ }], {
58
+ // suppress native label of the column (e.g. "Number of Reads") to show only the dataset label
59
+ label: { includeNativeLabel: false },
60
+ }))
61
+ .output('datasetSpec', (ctx) => {
62
+ if (ctx.args.datasetRef === undefined) {
63
+ return undefined;
64
+ }
65
+ return ctx.resultPool.getPColumnSpecByRef(ctx.args.datasetRef);
66
+ })
67
+ .outputWithStatus('pf', (ctx) => {
68
+ const pCols = ctx.outputs?.resolve('pf')?.getPColumns();
69
+ if (pCols === undefined) {
70
+ return undefined;
61
71
  }
62
- )
63
- ).output("datasetSpec", (ctx) => {
64
- if (ctx.args.datasetRef === void 0) {
65
- return void 0;
66
- }
67
- return ctx.resultPool.getPColumnSpecByRef(ctx.args.datasetRef);
68
- }).output("pf", (ctx) => {
69
- const pCols = ctx.outputs?.resolve("pf")?.getPColumns();
70
- if (pCols === void 0) {
71
- return void 0;
72
- }
73
- return model$1.createPFrameForGraphs(ctx, pCols);
74
- }).output("isRunning", (ctx) => ctx.outputs?.getIsReadyOrError() === false).title((ctx) => ctx.uiState?.blockTitle ?? "V/J Usage").sections((_) => [
75
- { type: "link", href: "/", label: "V Gene Usage" },
76
- { type: "link", href: "/jUsage", label: "J Gene Usage" },
77
- { type: "link", href: "/vjUsage", label: "V/J Gene Usage" }
78
- ]).done(2);
72
+ return model$1.createPFrameForGraphs(ctx, pCols);
73
+ })
74
+ .output('isRunning', (ctx) => ctx.outputs?.getIsReadyOrError() === false)
75
+ .title((ctx) => ctx.uiState?.blockTitle ?? 'V/J Usage')
76
+ .sections((_) => [
77
+ { type: 'link', href: '/', label: 'V Gene Usage' },
78
+ { type: 'link', href: '/jUsage', label: 'J Gene Usage' },
79
+ { type: 'link', href: '/vjUsage', label: 'V/J Gene Usage' },
80
+ ])
81
+ .done(2);
79
82
 
80
83
  exports.model = model;
81
84
  //# sourceMappingURL=index.cjs.map
82
- //# sourceMappingURL=index.cjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.ts"],"names":["BlockModel","createPFrameForGraphs"],"mappings":"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","file":"index.cjs","sourcesContent":["import type { GraphMakerState } from '@milaboratories/graph-maker';\nimport type { InferOutputsType, PlRef } from '@platforma-sdk/model';\nimport { BlockModel, createPFrameForGraphs } from '@platforma-sdk/model';\n\nexport type BlockArgs = {\n datasetRef?: PlRef;\n scChain?: string;\n allele?: boolean;\n};\n\nexport type UiState = {\n blockTitle: string;\n weightedFlag: boolean;\n vUsagePlotState: GraphMakerState;\n jUsagePlotState: GraphMakerState;\n vjUsagePlotState: GraphMakerState;\n};\n\nexport const model = BlockModel.create()\n\n .withArgs<BlockArgs>({\n scChain: 'A',\n allele: false,\n })\n\n .withUiState<UiState>({\n blockTitle: 'V/J Usage',\n weightedFlag: true,\n vUsagePlotState: {\n title: 'V Usage',\n template: 'heatmapClustered',\n currentTab: 'settings',\n layersSettings: {\n heatmapClustered: {\n normalizationDirection: null,\n },\n },\n },\n jUsagePlotState: {\n title: 'V Usage',\n template: 'heatmapClustered',\n currentTab: null,\n layersSettings: {\n heatmapClustered: {\n normalizationDirection: null,\n },\n },\n },\n vjUsagePlotState: {\n title: 'V/J Usage',\n template: 'heatmapClustered',\n currentTab: null,\n layersSettings: {\n heatmapClustered: {\n normalizationDirection: null,\n },\n },\n },\n })\n\n .argsValid((ctx) => ctx.args.datasetRef !== undefined)\n\n .output('datasetOptions', (ctx) =>\n ctx.resultPool.getOptions([{\n axes: [\n { name: 'pl7.app/sampleId' },\n { name: 'pl7.app/vdj/clonotypeKey' },\n ],\n annotations: { 'pl7.app/isAnchor': 'true' },\n }, {\n axes: [\n { name: 'pl7.app/sampleId' },\n { name: 'pl7.app/vdj/scClonotypeKey' },\n ],\n annotations: { 'pl7.app/isAnchor': 'true' },\n }],\n {\n // suppress native label of the column (e.g. \"Number of Reads\") to show only the dataset label\n label: { includeNativeLabel: false },\n }),\n )\n\n .output('datasetSpec', (ctx) => {\n if (ctx.args.datasetRef === undefined) {\n return undefined;\n }\n\n return ctx.resultPool.getPColumnSpecByRef(ctx.args.datasetRef);\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 .output('isRunning', (ctx) => ctx.outputs?.getIsReadyOrError() === false)\n\n .title((ctx) => ctx.uiState?.blockTitle ?? 'V/J Usage')\n\n .sections((_) => [\n { type: 'link', href: '/', label: 'V Gene Usage' },\n { type: 'link', href: '/jUsage', label: 'J Gene Usage' },\n { type: 'link', href: '/vjUsage', label: 'V/J Gene Usage' },\n ])\n\n .done(2);\n\nexport type BlockOutputs = InferOutputsType<typeof model>;\n"]}
1
+ {"version":3,"file":"index.cjs","sources":["../src/index.ts"],"sourcesContent":["import type { GraphMakerState } from '@milaboratories/graph-maker';\nimport type { InferOutputsType, PlRef } from '@platforma-sdk/model';\nimport { BlockModel, createPFrameForGraphs } from '@platforma-sdk/model';\n\nexport type BlockArgs = {\n datasetRef?: PlRef;\n scChain?: string;\n allele?: boolean;\n};\n\nexport type UiState = {\n blockTitle: string;\n weightedFlag: boolean;\n vUsagePlotState: GraphMakerState;\n jUsagePlotState: GraphMakerState;\n vjUsagePlotState: GraphMakerState;\n};\n\nexport const model = BlockModel.create()\n\n .withArgs<BlockArgs>({\n scChain: 'A',\n allele: false,\n })\n\n .withUiState<UiState>({\n blockTitle: 'V/J Usage',\n weightedFlag: true,\n vUsagePlotState: {\n title: 'V Usage',\n template: 'heatmapClustered',\n currentTab: 'settings',\n layersSettings: {\n heatmapClustered: {\n normalizationDirection: null,\n },\n },\n },\n jUsagePlotState: {\n title: 'V Usage',\n template: 'heatmapClustered',\n currentTab: null,\n layersSettings: {\n heatmapClustered: {\n normalizationDirection: null,\n },\n },\n },\n vjUsagePlotState: {\n title: 'V/J Usage',\n template: 'heatmapClustered',\n currentTab: null,\n layersSettings: {\n heatmapClustered: {\n normalizationDirection: null,\n },\n },\n },\n })\n\n .argsValid((ctx) => ctx.args.datasetRef !== undefined)\n\n .output('datasetOptions', (ctx) =>\n ctx.resultPool.getOptions([{\n axes: [\n { name: 'pl7.app/sampleId' },\n { name: 'pl7.app/vdj/clonotypeKey' },\n ],\n annotations: { 'pl7.app/isAnchor': 'true' },\n }, {\n axes: [\n { name: 'pl7.app/sampleId' },\n { name: 'pl7.app/vdj/scClonotypeKey' },\n ],\n annotations: { 'pl7.app/isAnchor': 'true' },\n }],\n {\n // suppress native label of the column (e.g. \"Number of Reads\") to show only the dataset label\n label: { includeNativeLabel: false },\n }),\n )\n\n .output('datasetSpec', (ctx) => {\n if (ctx.args.datasetRef === undefined) {\n return undefined;\n }\n\n return ctx.resultPool.getPColumnSpecByRef(ctx.args.datasetRef);\n })\n\n .outputWithStatus('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 .output('isRunning', (ctx) => ctx.outputs?.getIsReadyOrError() === false)\n\n .title((ctx) => ctx.uiState?.blockTitle ?? 'V/J Usage')\n\n .sections((_) => [\n { type: 'link', href: '/', label: 'V Gene Usage' },\n { type: 'link', href: '/jUsage', label: 'J Gene Usage' },\n { type: 'link', href: '/vjUsage', label: 'V/J Gene Usage' },\n ])\n\n .done(2);\n\nexport type BlockOutputs = InferOutputsType<typeof model>;\n"],"names":["BlockModel","createPFrameForGraphs"],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -1,21 +1,19 @@
1
- import * as _platforma_sdk_model from '@platforma-sdk/model';
2
- import { PlRef, InferOutputsType } from '@platforma-sdk/model';
3
- import { GraphMakerState } from '@milaboratories/graph-maker';
4
-
5
- type BlockArgs = {
1
+ import type { GraphMakerState } from '@milaboratories/graph-maker';
2
+ import type { InferOutputsType, PlRef } from '@platforma-sdk/model';
3
+ export type BlockArgs = {
6
4
  datasetRef?: PlRef;
7
5
  scChain?: string;
8
6
  allele?: boolean;
9
7
  };
10
- type UiState = {
8
+ export type UiState = {
11
9
  blockTitle: string;
12
10
  weightedFlag: boolean;
13
11
  vUsagePlotState: GraphMakerState;
14
12
  jUsagePlotState: GraphMakerState;
15
13
  vjUsagePlotState: GraphMakerState;
16
14
  };
17
- declare const model: _platforma_sdk_model.PlatformaV2<BlockArgs, {
18
- datasetOptions: _platforma_sdk_model.ValueOrErrors<{
15
+ export declare const model: import("@platforma-sdk/model").PlatformaExtended<import("@platforma-sdk/model").PlatformaV2<BlockArgs, {
16
+ datasetOptions: import("@platforma-sdk/model").OutputWithStatus<{
19
17
  readonly ref: {
20
18
  readonly __isRef: true;
21
19
  readonly blockId: string;
@@ -23,9 +21,10 @@ declare const model: _platforma_sdk_model.PlatformaV2<BlockArgs, {
23
21
  readonly requireEnrichments?: true | undefined;
24
22
  };
25
23
  readonly label: string;
26
- }[]>;
27
- datasetSpec: _platforma_sdk_model.ValueOrErrors<{
28
- readonly valueType: _platforma_sdk_model.ValueType;
24
+ }[]> & {
25
+ __unwrap: true;
26
+ };
27
+ datasetSpec: import("@platforma-sdk/model").OutputWithStatus<{
29
28
  readonly kind: "PColumn";
30
29
  readonly name: string;
31
30
  readonly domain?: {
@@ -34,9 +33,10 @@ declare const model: _platforma_sdk_model.PlatformaV2<BlockArgs, {
34
33
  readonly annotations?: {
35
34
  [x: string]: string;
36
35
  } | undefined;
36
+ readonly valueType: "Int" | "Long" | "Float" | "Double" | "String" | "Bytes";
37
37
  readonly parentAxes?: number[] | undefined;
38
38
  readonly axesSpec: {
39
- readonly type: _platforma_sdk_model.ValueType;
39
+ readonly type: import("@platforma-sdk/model").ValueType;
40
40
  readonly name: string;
41
41
  readonly domain?: {
42
42
  [x: string]: string;
@@ -46,10 +46,15 @@ declare const model: _platforma_sdk_model.PlatformaV2<BlockArgs, {
46
46
  } | undefined;
47
47
  readonly parentAxes?: number[] | undefined;
48
48
  }[];
49
- } | undefined>;
50
- pf: _platforma_sdk_model.ValueOrErrors<_platforma_sdk_model.PFrameHandle | undefined>;
51
- isRunning: _platforma_sdk_model.ValueOrErrors<boolean>;
52
- }, UiState, "/" | "/jUsage" | "/vjUsage">;
53
- type BlockOutputs = InferOutputsType<typeof model>;
54
-
55
- export { type BlockArgs, type BlockOutputs, type UiState, model };
49
+ } | undefined> & {
50
+ __unwrap: true;
51
+ };
52
+ pf: import("@platforma-sdk/model").OutputWithStatus<import("@platforma-sdk/model").PFrameHandle> & {
53
+ __unwrap: false;
54
+ };
55
+ isRunning: import("@platforma-sdk/model").OutputWithStatus<boolean> & {
56
+ __unwrap: true;
57
+ };
58
+ }, UiState, "/" | "/jUsage" | "/vjUsage">>;
59
+ export type BlockOutputs = InferOutputsType<typeof model>;
60
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AACnE,OAAO,KAAK,EAAE,gBAAgB,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAGpE,MAAM,MAAM,SAAS,GAAG;IACtB,UAAU,CAAC,EAAE,KAAK,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,OAAO,GAAG;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,OAAO,CAAC;IACtB,eAAe,EAAE,eAAe,CAAC;IACjC,eAAe,EAAE,eAAe,CAAC;IACjC,gBAAgB,EAAE,eAAe,CAAC;CACnC,CAAC;AAEF,eAAO,MAAM,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;0CA2FR,CAAC;AAEX,MAAM,MAAM,YAAY,GAAG,gBAAgB,CAAC,OAAO,KAAK,CAAC,CAAC"}
package/dist/index.js CHANGED
@@ -1,80 +1,82 @@
1
1
  import { BlockModel, createPFrameForGraphs } from '@platforma-sdk/model';
2
2
 
3
- // src/index.ts
4
- var model = BlockModel.create().withArgs({
5
- scChain: "A",
6
- allele: false
7
- }).withUiState({
8
- blockTitle: "V/J Usage",
9
- weightedFlag: true,
10
- vUsagePlotState: {
11
- title: "V Usage",
12
- template: "heatmapClustered",
13
- currentTab: "settings",
14
- layersSettings: {
15
- heatmapClustered: {
16
- normalizationDirection: null
17
- }
18
- }
19
- },
20
- jUsagePlotState: {
21
- title: "V Usage",
22
- template: "heatmapClustered",
23
- currentTab: null,
24
- layersSettings: {
25
- heatmapClustered: {
26
- normalizationDirection: null
27
- }
28
- }
29
- },
30
- vjUsagePlotState: {
31
- title: "V/J Usage",
32
- template: "heatmapClustered",
33
- currentTab: null,
34
- layersSettings: {
35
- heatmapClustered: {
36
- normalizationDirection: null
37
- }
38
- }
39
- }
40
- }).argsValid((ctx) => ctx.args.datasetRef !== void 0).output(
41
- "datasetOptions",
42
- (ctx) => ctx.resultPool.getOptions(
43
- [{
44
- axes: [
45
- { name: "pl7.app/sampleId" },
46
- { name: "pl7.app/vdj/clonotypeKey" }
47
- ],
48
- annotations: { "pl7.app/isAnchor": "true" }
3
+ const model = BlockModel.create()
4
+ .withArgs({
5
+ scChain: 'A',
6
+ allele: false,
7
+ })
8
+ .withUiState({
9
+ blockTitle: 'V/J Usage',
10
+ weightedFlag: true,
11
+ vUsagePlotState: {
12
+ title: 'V Usage',
13
+ template: 'heatmapClustered',
14
+ currentTab: 'settings',
15
+ layersSettings: {
16
+ heatmapClustered: {
17
+ normalizationDirection: null,
18
+ },
19
+ },
20
+ },
21
+ jUsagePlotState: {
22
+ title: 'V Usage',
23
+ template: 'heatmapClustered',
24
+ currentTab: null,
25
+ layersSettings: {
26
+ heatmapClustered: {
27
+ normalizationDirection: null,
28
+ },
29
+ },
30
+ },
31
+ vjUsagePlotState: {
32
+ title: 'V/J Usage',
33
+ template: 'heatmapClustered',
34
+ currentTab: null,
35
+ layersSettings: {
36
+ heatmapClustered: {
37
+ normalizationDirection: null,
38
+ },
39
+ },
40
+ },
41
+ })
42
+ .argsValid((ctx) => ctx.args.datasetRef !== undefined)
43
+ .output('datasetOptions', (ctx) => ctx.resultPool.getOptions([{
44
+ axes: [
45
+ { name: 'pl7.app/sampleId' },
46
+ { name: 'pl7.app/vdj/clonotypeKey' },
47
+ ],
48
+ annotations: { 'pl7.app/isAnchor': 'true' },
49
49
  }, {
50
- axes: [
51
- { name: "pl7.app/sampleId" },
52
- { name: "pl7.app/vdj/scClonotypeKey" }
53
- ],
54
- annotations: { "pl7.app/isAnchor": "true" }
55
- }],
56
- {
57
- // suppress native label of the column (e.g. "Number of Reads") to show only the dataset label
58
- label: { includeNativeLabel: false }
50
+ axes: [
51
+ { name: 'pl7.app/sampleId' },
52
+ { name: 'pl7.app/vdj/scClonotypeKey' },
53
+ ],
54
+ annotations: { 'pl7.app/isAnchor': 'true' },
55
+ }], {
56
+ // suppress native label of the column (e.g. "Number of Reads") to show only the dataset label
57
+ label: { includeNativeLabel: false },
58
+ }))
59
+ .output('datasetSpec', (ctx) => {
60
+ if (ctx.args.datasetRef === undefined) {
61
+ return undefined;
62
+ }
63
+ return ctx.resultPool.getPColumnSpecByRef(ctx.args.datasetRef);
64
+ })
65
+ .outputWithStatus('pf', (ctx) => {
66
+ const pCols = ctx.outputs?.resolve('pf')?.getPColumns();
67
+ if (pCols === undefined) {
68
+ return undefined;
59
69
  }
60
- )
61
- ).output("datasetSpec", (ctx) => {
62
- if (ctx.args.datasetRef === void 0) {
63
- return void 0;
64
- }
65
- return ctx.resultPool.getPColumnSpecByRef(ctx.args.datasetRef);
66
- }).output("pf", (ctx) => {
67
- const pCols = ctx.outputs?.resolve("pf")?.getPColumns();
68
- if (pCols === void 0) {
69
- return void 0;
70
- }
71
- return createPFrameForGraphs(ctx, pCols);
72
- }).output("isRunning", (ctx) => ctx.outputs?.getIsReadyOrError() === false).title((ctx) => ctx.uiState?.blockTitle ?? "V/J Usage").sections((_) => [
73
- { type: "link", href: "/", label: "V Gene Usage" },
74
- { type: "link", href: "/jUsage", label: "J Gene Usage" },
75
- { type: "link", href: "/vjUsage", label: "V/J Gene Usage" }
76
- ]).done(2);
70
+ return createPFrameForGraphs(ctx, pCols);
71
+ })
72
+ .output('isRunning', (ctx) => ctx.outputs?.getIsReadyOrError() === false)
73
+ .title((ctx) => ctx.uiState?.blockTitle ?? 'V/J Usage')
74
+ .sections((_) => [
75
+ { type: 'link', href: '/', label: 'V Gene Usage' },
76
+ { type: 'link', href: '/jUsage', label: 'J Gene Usage' },
77
+ { type: 'link', href: '/vjUsage', label: 'V/J Gene Usage' },
78
+ ])
79
+ .done(2);
77
80
 
78
81
  export { model };
79
82
  //# sourceMappingURL=index.js.map
80
- //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.ts"],"names":[],"mappings":"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","file":"index.js","sourcesContent":["import type { GraphMakerState } from '@milaboratories/graph-maker';\nimport type { InferOutputsType, PlRef } from '@platforma-sdk/model';\nimport { BlockModel, createPFrameForGraphs } from '@platforma-sdk/model';\n\nexport type BlockArgs = {\n datasetRef?: PlRef;\n scChain?: string;\n allele?: boolean;\n};\n\nexport type UiState = {\n blockTitle: string;\n weightedFlag: boolean;\n vUsagePlotState: GraphMakerState;\n jUsagePlotState: GraphMakerState;\n vjUsagePlotState: GraphMakerState;\n};\n\nexport const model = BlockModel.create()\n\n .withArgs<BlockArgs>({\n scChain: 'A',\n allele: false,\n })\n\n .withUiState<UiState>({\n blockTitle: 'V/J Usage',\n weightedFlag: true,\n vUsagePlotState: {\n title: 'V Usage',\n template: 'heatmapClustered',\n currentTab: 'settings',\n layersSettings: {\n heatmapClustered: {\n normalizationDirection: null,\n },\n },\n },\n jUsagePlotState: {\n title: 'V Usage',\n template: 'heatmapClustered',\n currentTab: null,\n layersSettings: {\n heatmapClustered: {\n normalizationDirection: null,\n },\n },\n },\n vjUsagePlotState: {\n title: 'V/J Usage',\n template: 'heatmapClustered',\n currentTab: null,\n layersSettings: {\n heatmapClustered: {\n normalizationDirection: null,\n },\n },\n },\n })\n\n .argsValid((ctx) => ctx.args.datasetRef !== undefined)\n\n .output('datasetOptions', (ctx) =>\n ctx.resultPool.getOptions([{\n axes: [\n { name: 'pl7.app/sampleId' },\n { name: 'pl7.app/vdj/clonotypeKey' },\n ],\n annotations: { 'pl7.app/isAnchor': 'true' },\n }, {\n axes: [\n { name: 'pl7.app/sampleId' },\n { name: 'pl7.app/vdj/scClonotypeKey' },\n ],\n annotations: { 'pl7.app/isAnchor': 'true' },\n }],\n {\n // suppress native label of the column (e.g. \"Number of Reads\") to show only the dataset label\n label: { includeNativeLabel: false },\n }),\n )\n\n .output('datasetSpec', (ctx) => {\n if (ctx.args.datasetRef === undefined) {\n return undefined;\n }\n\n return ctx.resultPool.getPColumnSpecByRef(ctx.args.datasetRef);\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 .output('isRunning', (ctx) => ctx.outputs?.getIsReadyOrError() === false)\n\n .title((ctx) => ctx.uiState?.blockTitle ?? 'V/J Usage')\n\n .sections((_) => [\n { type: 'link', href: '/', label: 'V Gene Usage' },\n { type: 'link', href: '/jUsage', label: 'J Gene Usage' },\n { type: 'link', href: '/vjUsage', label: 'V/J Gene Usage' },\n ])\n\n .done(2);\n\nexport type BlockOutputs = InferOutputsType<typeof model>;\n"]}
1
+ {"version":3,"file":"index.js","sources":["../src/index.ts"],"sourcesContent":["import type { GraphMakerState } from '@milaboratories/graph-maker';\nimport type { InferOutputsType, PlRef } from '@platforma-sdk/model';\nimport { BlockModel, createPFrameForGraphs } from '@platforma-sdk/model';\n\nexport type BlockArgs = {\n datasetRef?: PlRef;\n scChain?: string;\n allele?: boolean;\n};\n\nexport type UiState = {\n blockTitle: string;\n weightedFlag: boolean;\n vUsagePlotState: GraphMakerState;\n jUsagePlotState: GraphMakerState;\n vjUsagePlotState: GraphMakerState;\n};\n\nexport const model = BlockModel.create()\n\n .withArgs<BlockArgs>({\n scChain: 'A',\n allele: false,\n })\n\n .withUiState<UiState>({\n blockTitle: 'V/J Usage',\n weightedFlag: true,\n vUsagePlotState: {\n title: 'V Usage',\n template: 'heatmapClustered',\n currentTab: 'settings',\n layersSettings: {\n heatmapClustered: {\n normalizationDirection: null,\n },\n },\n },\n jUsagePlotState: {\n title: 'V Usage',\n template: 'heatmapClustered',\n currentTab: null,\n layersSettings: {\n heatmapClustered: {\n normalizationDirection: null,\n },\n },\n },\n vjUsagePlotState: {\n title: 'V/J Usage',\n template: 'heatmapClustered',\n currentTab: null,\n layersSettings: {\n heatmapClustered: {\n normalizationDirection: null,\n },\n },\n },\n })\n\n .argsValid((ctx) => ctx.args.datasetRef !== undefined)\n\n .output('datasetOptions', (ctx) =>\n ctx.resultPool.getOptions([{\n axes: [\n { name: 'pl7.app/sampleId' },\n { name: 'pl7.app/vdj/clonotypeKey' },\n ],\n annotations: { 'pl7.app/isAnchor': 'true' },\n }, {\n axes: [\n { name: 'pl7.app/sampleId' },\n { name: 'pl7.app/vdj/scClonotypeKey' },\n ],\n annotations: { 'pl7.app/isAnchor': 'true' },\n }],\n {\n // suppress native label of the column (e.g. \"Number of Reads\") to show only the dataset label\n label: { includeNativeLabel: false },\n }),\n )\n\n .output('datasetSpec', (ctx) => {\n if (ctx.args.datasetRef === undefined) {\n return undefined;\n }\n\n return ctx.resultPool.getPColumnSpecByRef(ctx.args.datasetRef);\n })\n\n .outputWithStatus('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 .output('isRunning', (ctx) => ctx.outputs?.getIsReadyOrError() === false)\n\n .title((ctx) => ctx.uiState?.blockTitle ?? 'V/J Usage')\n\n .sections((_) => [\n { type: 'link', href: '/', label: 'V Gene Usage' },\n { type: 'link', href: '/jUsage', label: 'J Gene Usage' },\n { type: 'link', href: '/vjUsage', label: 'V/J Gene Usage' },\n ])\n\n .done(2);\n\nexport type BlockOutputs = InferOutputsType<typeof model>;\n"],"names":[],"mappings":"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"}