@milaboratories/miplots4 1.0.164 → 1.0.166
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/_virtual/index10.js +2 -5
- package/dist/_virtual/index10.js.map +1 -1
- package/dist/_virtual/index5.js +5 -2
- package/dist/_virtual/index5.js.map +1 -1
- package/dist/_virtual/index6.js +4 -4
- package/dist/_virtual/index7.js +1 -1
- package/dist/_virtual/index8.js +4 -4
- package/dist/_virtual/index9.js +3 -3
- package/dist/bubble/components/ChartsGroup.js +21 -21
- package/dist/bubble/components/ChartsGroup.js.map +1 -1
- package/dist/common/Tooltip.d.ts +2 -1
- package/dist/common/Tooltip.js +147 -143
- package/dist/common/Tooltip.js.map +1 -1
- package/dist/discrete/DiscreteSettingsImpl.d.ts +11 -31
- package/dist/discrete/DiscreteSettingsImpl.js.map +1 -1
- package/dist/discrete/components/Chart.js +143 -143
- package/dist/discrete/components/Chart.js.map +1 -1
- package/dist/discrete/layers/stats/pValueCalculation.js +5 -5
- package/dist/heatmap/components/ChartsGroup.js +9 -9
- package/dist/heatmap/components/ChartsGroup.js.map +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.js +4 -4
- package/dist/node_modules/.pnpm/scheduler@0.23.2/node_modules/scheduler/index.js +1 -1
- package/dist/scatterplot/components/ChartTooltip.js +34 -33
- package/dist/scatterplot/components/ChartTooltip.js.map +1 -1
- package/dist/scatterplot/components/ChartsGroup.js +31 -31
- package/dist/scatterplot/components/ChartsGroup.js.map +1 -1
- package/dist/scatterplot/dots.d.ts +2 -2
- package/dist/scatterplot/dots.js +9 -9
- package/dist/scatterplot/dots.js.map +1 -1
- package/dist/scatterplot/index.js +1 -1
- package/dist/scatterplot/index.js.map +1 -1
- package/dist/scatterplot/utils/sortDotsByGrouping.d.ts +2 -1
- package/dist/scatterplot/utils/sortDotsByGrouping.js +22 -11
- package/dist/scatterplot/utils/sortDotsByGrouping.js.map +1 -1
- package/dist/scatterplot-umap/ChartRenderer.d.ts +4 -3
- package/dist/scatterplot-umap/ChartRenderer.js +169 -164
- package/dist/scatterplot-umap/ChartRenderer.js.map +1 -1
- package/dist/scatterplot-umap/components/Lasso.js +49 -49
- package/dist/scatterplot-umap/components/Lasso.js.map +1 -1
- package/dist/scatterplot-umap/components/SVGLayer.js +49 -49
- package/dist/scatterplot-umap/components/SVGLayer.js.map +1 -1
- package/dist/scatterplot-umap/components/UpperSVG.d.ts +1 -1
- package/dist/scatterplot-umap/components/UpperSVG.js +39 -38
- package/dist/scatterplot-umap/components/UpperSVG.js.map +1 -1
- package/dist/scatterplot-umap/constants.d.ts +6 -5
- package/dist/scatterplot-umap/constants.js +12 -11
- package/dist/scatterplot-umap/constants.js.map +1 -1
- package/dist/scatterplot-umap/index.d.ts +1 -0
- package/dist/scatterplot-umap/index.js +103 -83
- package/dist/scatterplot-umap/index.js.map +1 -1
- package/dist/types/bubble.js +32 -37
- package/dist/types/bubble.js.map +1 -1
- package/dist/types/common.d.ts +42 -0
- package/dist/types/common.js +39 -35
- package/dist/types/common.js.map +1 -1
- package/dist/types/discrete.d.ts +680 -70
- package/dist/types/discrete.js +141 -141
- package/dist/types/discrete.js.map +1 -1
- package/dist/types/heatmap.js +54 -59
- package/dist/types/heatmap.js.map +1 -1
- package/dist/types/scatterplot-umap.js +19 -24
- package/dist/types/scatterplot-umap.js.map +1 -1
- package/dist/types/scatterplot.js +41 -46
- package/dist/types/scatterplot.js.map +1 -1
- package/package.json +1 -1
package/dist/types/heatmap.js
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import { ColumnNameSchema as
|
|
2
|
-
import { enum as o, object as n, optional as e, array as l, string as
|
|
1
|
+
import { ColumnNameSchema as i, LineShapeSchema as u, PointShapeSchema as y, AesRecordSchema as S, AggregationMethodSchema as T, LegendPositionSchema as x, TooltipSettingsSchema as f, TitlePositionSchema as b } from "./common.js";
|
|
2
|
+
import { enum as o, object as n, optional as e, array as l, string as a, boolean as s, literal as c, union as r, number as t, record as m, null as A } from "../node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/types.js";
|
|
3
3
|
const h = o(["discrete", "continuous"]), d = n({
|
|
4
|
-
valueColumn:
|
|
4
|
+
valueColumn: i,
|
|
5
5
|
type: h,
|
|
6
|
-
showTitle: e(
|
|
7
|
-
colors: e(l(
|
|
8
|
-
}),
|
|
6
|
+
showTitle: e(s()),
|
|
7
|
+
colors: e(l(a()))
|
|
8
|
+
}), C = d.extend({
|
|
9
9
|
axis: c("x"),
|
|
10
10
|
position: e(o(["top", "bottom"])),
|
|
11
11
|
titlePosition: e(o(["left", "right"]))
|
|
@@ -13,47 +13,42 @@ const h = o(["discrete", "continuous"]), d = n({
|
|
|
13
13
|
axis: c("y"),
|
|
14
14
|
position: e(o(["left", "right"])),
|
|
15
15
|
titlePosition: e(o(["top", "bottom"]))
|
|
16
|
-
}),
|
|
16
|
+
}), v = o(["euclidean", "squaredEuclidean"]), L = o(["average", "complete", "single"]), g = n({
|
|
17
17
|
size: e(t()),
|
|
18
|
-
distance: e(
|
|
19
|
-
linkage: e(
|
|
20
|
-
showNodes: e(
|
|
18
|
+
distance: e(v),
|
|
19
|
+
linkage: e(L),
|
|
20
|
+
showNodes: e(s()),
|
|
21
21
|
edgeInheritance: e(o(["up", "down"])),
|
|
22
22
|
fillNA: e(t()),
|
|
23
|
-
hidden: e(
|
|
23
|
+
hidden: e(s()),
|
|
24
24
|
aes: e(n({
|
|
25
|
-
lineColor: e(r([
|
|
26
|
-
dotFill: e(r([
|
|
27
|
-
dotShape: e(r([y,
|
|
28
|
-
dotSize: e(r([t(),
|
|
29
|
-
lineShape: e(r([u,
|
|
30
|
-
lineWidth: e(r([t(),
|
|
25
|
+
lineColor: e(r([a(), i])),
|
|
26
|
+
dotFill: e(r([a(), i])),
|
|
27
|
+
dotShape: e(r([y, i])),
|
|
28
|
+
dotSize: e(r([t(), i])),
|
|
29
|
+
lineShape: e(r([u, i])),
|
|
30
|
+
lineWidth: e(r([t(), i]))
|
|
31
31
|
}))
|
|
32
|
-
}), L = g.extend({
|
|
33
|
-
position: e(o(["top", "bottom"]))
|
|
34
32
|
}), D = g.extend({
|
|
33
|
+
position: e(o(["top", "bottom"]))
|
|
34
|
+
}), P = g.extend({
|
|
35
35
|
position: e(o(["left", "right"]))
|
|
36
36
|
}), p = {
|
|
37
|
-
title: e(
|
|
38
|
-
showTicks: e(
|
|
39
|
-
showTitle: e(
|
|
40
|
-
showAxisLabels: e(
|
|
41
|
-
showGroupLabels: e(
|
|
37
|
+
title: e(a()),
|
|
38
|
+
showTicks: e(s()),
|
|
39
|
+
showTitle: e(s()),
|
|
40
|
+
showAxisLabels: e(s()),
|
|
41
|
+
showGroupLabels: e(s()),
|
|
42
42
|
axisLabelsAngle: e(r([c(0), c(45), c(90)])),
|
|
43
43
|
groupLabelsAngle: e(r([c(0), c(45), c(90)]))
|
|
44
|
-
},
|
|
44
|
+
}, G = n({
|
|
45
45
|
type: c("heatmap"),
|
|
46
46
|
title: n({
|
|
47
|
-
name:
|
|
48
|
-
show: e(
|
|
49
|
-
position: e(
|
|
47
|
+
name: a(),
|
|
48
|
+
show: e(s()),
|
|
49
|
+
position: e(b)
|
|
50
50
|
}),
|
|
51
|
-
tooltips: e(
|
|
52
|
-
n({
|
|
53
|
-
show: e(i()),
|
|
54
|
-
content: e(l(a))
|
|
55
|
-
})
|
|
56
|
-
),
|
|
51
|
+
tooltips: e(f),
|
|
57
52
|
valueType: e(h),
|
|
58
53
|
size: e(
|
|
59
54
|
n({
|
|
@@ -67,8 +62,8 @@ const h = o(["discrete", "continuous"]), d = n({
|
|
|
67
62
|
),
|
|
68
63
|
legend: e(
|
|
69
64
|
n({
|
|
70
|
-
show: e(
|
|
71
|
-
position: e(
|
|
65
|
+
show: e(s()),
|
|
66
|
+
position: e(x)
|
|
72
67
|
})
|
|
73
68
|
),
|
|
74
69
|
frame: e(n({ type: e(o(["full", "groups", "none"])) })),
|
|
@@ -85,20 +80,20 @@ const h = o(["discrete", "continuous"]), d = n({
|
|
|
85
80
|
groupingPosition: e(o(["left", "right"]))
|
|
86
81
|
})),
|
|
87
82
|
facetSettings: e(n({
|
|
88
|
-
sharedX: e(
|
|
89
|
-
sharedY: e(
|
|
83
|
+
sharedX: e(s()),
|
|
84
|
+
sharedY: e(s()),
|
|
90
85
|
nRows: e(t()),
|
|
91
86
|
nCols: e(t())
|
|
92
87
|
})),
|
|
93
|
-
xColumn:
|
|
94
|
-
yColumn:
|
|
95
|
-
valueColumn:
|
|
96
|
-
xGroupBy: e(l(
|
|
97
|
-
yGroupBy: e(l(
|
|
98
|
-
facetBy: e(l(
|
|
88
|
+
xColumn: i,
|
|
89
|
+
yColumn: i,
|
|
90
|
+
valueColumn: i,
|
|
91
|
+
xGroupBy: e(l(i)),
|
|
92
|
+
yGroupBy: e(l(i)),
|
|
93
|
+
facetBy: e(l(i)),
|
|
99
94
|
keysOrder: e(
|
|
100
95
|
// x, y, grouping, facet keys in user's order
|
|
101
|
-
m(
|
|
96
|
+
m(a(), l(a()))
|
|
102
97
|
),
|
|
103
98
|
normalization: e(n({
|
|
104
99
|
direction: o(["row", "column"]),
|
|
@@ -106,28 +101,28 @@ const h = o(["discrete", "continuous"]), d = n({
|
|
|
106
101
|
colorRange: e(l(t()))
|
|
107
102
|
})),
|
|
108
103
|
aggregation: e(n({
|
|
109
|
-
x: e(
|
|
110
|
-
y: e(
|
|
111
|
-
method: e(
|
|
104
|
+
x: e(s()),
|
|
105
|
+
y: e(s()),
|
|
106
|
+
method: e(T)
|
|
112
107
|
})),
|
|
113
|
-
annotations: e(l(r([
|
|
114
|
-
dendrogramX: e(
|
|
115
|
-
dendrogramY: e(
|
|
116
|
-
inheritedDendrogramAes: e(m(
|
|
117
|
-
NAValueAs: e(r([t(),
|
|
108
|
+
annotations: e(l(r([C, w]))),
|
|
109
|
+
dendrogramX: e(D),
|
|
110
|
+
dendrogramY: e(P),
|
|
111
|
+
inheritedDendrogramAes: e(m(a(), S)),
|
|
112
|
+
NAValueAs: e(r([t(), A()])),
|
|
118
113
|
cellsRenderingMode: e(o(["svg", "canvas"])),
|
|
119
114
|
aes: e(n({
|
|
120
|
-
colorsList: e(l(
|
|
121
|
-
colorsMap: e(m(
|
|
122
|
-
valueColors: e(l(
|
|
115
|
+
colorsList: e(l(a())),
|
|
116
|
+
colorsMap: e(m(a())),
|
|
117
|
+
valueColors: e(l(a())),
|
|
123
118
|
valuesByColors: e(l(t())),
|
|
124
|
-
cellStrokeColor: e(
|
|
125
|
-
emptyCellColor: e(
|
|
119
|
+
cellStrokeColor: e(a()),
|
|
120
|
+
emptyCellColor: e(a()),
|
|
126
121
|
groupGap: e(t()),
|
|
127
122
|
cellGap: e(t())
|
|
128
123
|
}))
|
|
129
124
|
});
|
|
130
125
|
export {
|
|
131
|
-
|
|
126
|
+
G as HeatmapSettingsSchema
|
|
132
127
|
};
|
|
133
128
|
//# sourceMappingURL=heatmap.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"heatmap.js","sources":["../../src/types/heatmap.ts"],"sourcesContent":["import { z } from 'zod';\nimport {\n AesRecordSchema,\n AggregationMethodSchema,\n ColumnNameSchema,\n LegendPositionSchema,\n LineShapeSchema,\n PointShapeSchema,\n TitlePositionSchema\n} from './common';\n\nconst ValueTypeSchema = z.enum(['discrete', 'continuous']);\n\nconst HeatmapAnnotationSchema = z.object({\n valueColumn: ColumnNameSchema,\n type: ValueTypeSchema,\n showTitle: z.optional(z.boolean()),\n colors: z.optional(z.array(z.string()))\n});\n\nconst HeatmapAnnotationXSchema = HeatmapAnnotationSchema.extend({\n axis: z.literal('x'),\n position: z.optional(z.enum(['top', 'bottom'])),\n titlePosition: z.optional(z.enum(['left', 'right'])),\n});\nconst HeatmapAnnotationYSchema = HeatmapAnnotationSchema.extend({\n axis: z.literal('y'),\n position: z.optional(z.enum(['left', 'right'])),\n titlePosition: z.optional(z.enum(['top', 'bottom'])),\n});\n\nexport type DendrogramDistance = 'euclidean' | 'squaredEuclidean';\nexport type DendrogramLinkage = 'average' | 'complete' | 'single';\n\nconst DendrogramDistanceSchema = z.enum(['euclidean', 'squaredEuclidean']);\nconst DendrogramLinkageSchema = z.enum(['average', 'complete', 'single']);\n\nexport type NormalizationDirection = 'row' | 'column';\nexport type NormalizationMethod = 'standardScaling' | 'meanNormalization';\n\nconst DendrogramSchema = z.object({\n size: z.optional(z.number()),\n distance: z.optional(DendrogramDistanceSchema),\n linkage: z.optional(DendrogramLinkageSchema),\n showNodes: z.optional(z.boolean()),\n edgeInheritance: z.optional(z.enum(['up', 'down'])),\n fillNA: z.optional(z.number()),\n hidden: z.optional(z.boolean()),\n aes: z.optional(z.object({\n lineColor: z.optional(z.union([z.string(), ColumnNameSchema])),\n dotFill: z.optional(z.union([z.string(), ColumnNameSchema])),\n dotShape: z.optional(z.union([PointShapeSchema, ColumnNameSchema])),\n dotSize: z.optional(z.union([z.number(), ColumnNameSchema])),\n lineShape: z.optional(z.union([LineShapeSchema, ColumnNameSchema])),\n lineWidth: z.optional(z.union([z.number(), ColumnNameSchema])),\n }))\n});\n\nconst DendrogramXSchema = DendrogramSchema.extend({\n position: z.optional(z.enum(['top', 'bottom']))\n});\nconst DendrogramYSchema = DendrogramSchema.extend({\n position: z.optional(z.enum(['left', 'right']))\n});\n\nconst axisCommonSchema = {\n title: z.optional(z.string()),\n showTicks: z.optional(z.boolean()),\n showTitle: z.optional(z.boolean()),\n showAxisLabels: z.optional(z.boolean()),\n showGroupLabels: z.optional(z.boolean()),\n axisLabelsAngle: z.optional(z.union([z.literal(0), z.literal(45), z.literal(90)])),\n groupLabelsAngle: z.optional(z.union([z.literal(0), z.literal(45), z.literal(90)])),\n};\n\nexport const HeatmapSettingsSchema = z.object({\n type: z.literal('heatmap'),\n title: z.object({\n name: z.string(),\n show: z.optional(z.boolean()),\n position: z.optional(TitlePositionSchema),\n }),\n tooltips: z.optional(\n z.object({\n show: z.optional(z.boolean()),\n content: z.optional(z.array(ColumnNameSchema)),\n })\n ),\n valueType: z.optional(ValueTypeSchema),\n size: z.optional(\n z.object({\n width: z.optional(z.number()),\n height: z.optional(z.number()),\n cellWidth: z.optional(z.number()),\n cellHeight: z.optional(z.number()),\n outerOffset: z.optional(z.number()),\n innerOffset: z.optional(z.number())\n })\n ),\n legend: z.optional(\n z.object({\n show: z.optional(z.boolean()),\n position: z.optional(LegendPositionSchema),\n })\n ),\n frame: z.optional(z.object({type: z.optional(z.enum(['full', 'groups', 'none']))})),\n xAxis: z.optional(z.object({\n ...axisCommonSchema,\n sorting: z.optional(z.enum(['asc', 'desc'])),\n position: z.optional(z.enum(['top', 'bottom'])),\n groupingPosition: z.optional(z.enum(['top', 'bottom'])),\n })),\n yAxis: z.optional(z.object({\n ...axisCommonSchema,\n sorting: z.optional(z.enum(['asc', 'desc'])),\n position: z.optional(z.enum(['left', 'right'])),\n groupingPosition: z.optional(z.enum(['left', 'right'])),\n })),\n facetSettings: z.optional(z.object({\n sharedX: z.optional(z.boolean()),\n sharedY: z.optional(z.boolean()),\n nRows: z.optional(z.number()),\n nCols: z.optional(z.number()),\n })),\n xColumn: ColumnNameSchema,\n yColumn: ColumnNameSchema,\n valueColumn: ColumnNameSchema,\n xGroupBy: z.optional(z.array(ColumnNameSchema)),\n yGroupBy: z.optional(z.array(ColumnNameSchema)),\n facetBy: z.optional(z.array(ColumnNameSchema)),\n keysOrder: z.optional( // x, y, grouping, facet keys in user's order\n z.record(z.string(), z.array(z.string()))\n ),\n normalization: z.optional(z.object({\n direction: z.enum(['row', 'column']),\n method: z.enum(['standardScaling', 'meanNormalization']),\n colorRange: z.optional(z.array(z.number()))\n })),\n aggregation: z.optional(z.object({\n x: z.optional(z.boolean()),\n y: z.optional(z.boolean()),\n method: z.optional(AggregationMethodSchema),\n })),\n annotations: z.optional(z.array(z.union([HeatmapAnnotationXSchema, HeatmapAnnotationYSchema]))),\n dendrogramX: z.optional(DendrogramXSchema),\n dendrogramY: z.optional(DendrogramYSchema),\n inheritedDendrogramAes: z.optional(z.record(z.string(), AesRecordSchema)),\n NAValueAs: z.optional(z.union([z.number(), z.null()])),\n cellsRenderingMode: z.optional(z.enum(['svg', 'canvas'])),\n aes: z.optional(z.object({\n colorsList: z.optional(z.array(z.string())),\n colorsMap: z.optional(z.record(z.string())),\n valueColors: z.optional(z.array(z.string())),\n valuesByColors: z.optional(z.array(z.number())),\n cellStrokeColor: z.optional(z.string()),\n emptyCellColor: z.optional(z.string()),\n groupGap: z.optional(z.number()),\n cellGap: z.optional(z.number()),\n }))\n});\n\nexport type HeatmapSettings = z.infer<typeof HeatmapSettingsSchema>;\n\n"],"names":["ValueTypeSchema","z.enum","HeatmapAnnotationSchema","z.object","ColumnNameSchema","z.optional","z.boolean","z.array","z.string","HeatmapAnnotationXSchema","z.literal","HeatmapAnnotationYSchema","DendrogramDistanceSchema","DendrogramLinkageSchema","DendrogramSchema","z.number","z.union","PointShapeSchema","LineShapeSchema","DendrogramXSchema","DendrogramYSchema","axisCommonSchema","HeatmapSettingsSchema","TitlePositionSchema","LegendPositionSchema","z.record","AggregationMethodSchema","AesRecordSchema","z.null"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"heatmap.js","sources":["../../src/types/heatmap.ts"],"sourcesContent":["import { z } from 'zod';\nimport {\n AesRecordSchema,\n AggregationMethodSchema,\n ColumnNameSchema,\n LegendPositionSchema,\n LineShapeSchema,\n PointShapeSchema,\n TitlePositionSchema,\n TooltipSettingsSchema\n} from './common';\n\nconst ValueTypeSchema = z.enum(['discrete', 'continuous']);\n\nconst HeatmapAnnotationSchema = z.object({\n valueColumn: ColumnNameSchema,\n type: ValueTypeSchema,\n showTitle: z.optional(z.boolean()),\n colors: z.optional(z.array(z.string()))\n});\n\nconst HeatmapAnnotationXSchema = HeatmapAnnotationSchema.extend({\n axis: z.literal('x'),\n position: z.optional(z.enum(['top', 'bottom'])),\n titlePosition: z.optional(z.enum(['left', 'right'])),\n});\nconst HeatmapAnnotationYSchema = HeatmapAnnotationSchema.extend({\n axis: z.literal('y'),\n position: z.optional(z.enum(['left', 'right'])),\n titlePosition: z.optional(z.enum(['top', 'bottom'])),\n});\n\nexport type DendrogramDistance = 'euclidean' | 'squaredEuclidean';\nexport type DendrogramLinkage = 'average' | 'complete' | 'single';\n\nconst DendrogramDistanceSchema = z.enum(['euclidean', 'squaredEuclidean']);\nconst DendrogramLinkageSchema = z.enum(['average', 'complete', 'single']);\n\nexport type NormalizationDirection = 'row' | 'column';\nexport type NormalizationMethod = 'standardScaling' | 'meanNormalization';\n\nconst DendrogramSchema = z.object({\n size: z.optional(z.number()),\n distance: z.optional(DendrogramDistanceSchema),\n linkage: z.optional(DendrogramLinkageSchema),\n showNodes: z.optional(z.boolean()),\n edgeInheritance: z.optional(z.enum(['up', 'down'])),\n fillNA: z.optional(z.number()),\n hidden: z.optional(z.boolean()),\n aes: z.optional(z.object({\n lineColor: z.optional(z.union([z.string(), ColumnNameSchema])),\n dotFill: z.optional(z.union([z.string(), ColumnNameSchema])),\n dotShape: z.optional(z.union([PointShapeSchema, ColumnNameSchema])),\n dotSize: z.optional(z.union([z.number(), ColumnNameSchema])),\n lineShape: z.optional(z.union([LineShapeSchema, ColumnNameSchema])),\n lineWidth: z.optional(z.union([z.number(), ColumnNameSchema])),\n }))\n});\n\nconst DendrogramXSchema = DendrogramSchema.extend({\n position: z.optional(z.enum(['top', 'bottom']))\n});\nconst DendrogramYSchema = DendrogramSchema.extend({\n position: z.optional(z.enum(['left', 'right']))\n});\n\nconst axisCommonSchema = {\n title: z.optional(z.string()),\n showTicks: z.optional(z.boolean()),\n showTitle: z.optional(z.boolean()),\n showAxisLabels: z.optional(z.boolean()),\n showGroupLabels: z.optional(z.boolean()),\n axisLabelsAngle: z.optional(z.union([z.literal(0), z.literal(45), z.literal(90)])),\n groupLabelsAngle: z.optional(z.union([z.literal(0), z.literal(45), z.literal(90)])),\n};\n\nexport const HeatmapSettingsSchema = z.object({\n type: z.literal('heatmap'),\n title: z.object({\n name: z.string(),\n show: z.optional(z.boolean()),\n position: z.optional(TitlePositionSchema),\n }),\n tooltips: z.optional(TooltipSettingsSchema),\n valueType: z.optional(ValueTypeSchema),\n size: z.optional(\n z.object({\n width: z.optional(z.number()),\n height: z.optional(z.number()),\n cellWidth: z.optional(z.number()),\n cellHeight: z.optional(z.number()),\n outerOffset: z.optional(z.number()),\n innerOffset: z.optional(z.number())\n })\n ),\n legend: z.optional(\n z.object({\n show: z.optional(z.boolean()),\n position: z.optional(LegendPositionSchema),\n })\n ),\n frame: z.optional(z.object({type: z.optional(z.enum(['full', 'groups', 'none']))})),\n xAxis: z.optional(z.object({\n ...axisCommonSchema,\n sorting: z.optional(z.enum(['asc', 'desc'])),\n position: z.optional(z.enum(['top', 'bottom'])),\n groupingPosition: z.optional(z.enum(['top', 'bottom'])),\n })),\n yAxis: z.optional(z.object({\n ...axisCommonSchema,\n sorting: z.optional(z.enum(['asc', 'desc'])),\n position: z.optional(z.enum(['left', 'right'])),\n groupingPosition: z.optional(z.enum(['left', 'right'])),\n })),\n facetSettings: z.optional(z.object({\n sharedX: z.optional(z.boolean()),\n sharedY: z.optional(z.boolean()),\n nRows: z.optional(z.number()),\n nCols: z.optional(z.number()),\n })),\n xColumn: ColumnNameSchema,\n yColumn: ColumnNameSchema,\n valueColumn: ColumnNameSchema,\n xGroupBy: z.optional(z.array(ColumnNameSchema)),\n yGroupBy: z.optional(z.array(ColumnNameSchema)),\n facetBy: z.optional(z.array(ColumnNameSchema)),\n keysOrder: z.optional( // x, y, grouping, facet keys in user's order\n z.record(z.string(), z.array(z.string()))\n ),\n normalization: z.optional(z.object({\n direction: z.enum(['row', 'column']),\n method: z.enum(['standardScaling', 'meanNormalization']),\n colorRange: z.optional(z.array(z.number()))\n })),\n aggregation: z.optional(z.object({\n x: z.optional(z.boolean()),\n y: z.optional(z.boolean()),\n method: z.optional(AggregationMethodSchema),\n })),\n annotations: z.optional(z.array(z.union([HeatmapAnnotationXSchema, HeatmapAnnotationYSchema]))),\n dendrogramX: z.optional(DendrogramXSchema),\n dendrogramY: z.optional(DendrogramYSchema),\n inheritedDendrogramAes: z.optional(z.record(z.string(), AesRecordSchema)),\n NAValueAs: z.optional(z.union([z.number(), z.null()])),\n cellsRenderingMode: z.optional(z.enum(['svg', 'canvas'])),\n aes: z.optional(z.object({\n colorsList: z.optional(z.array(z.string())),\n colorsMap: z.optional(z.record(z.string())),\n valueColors: z.optional(z.array(z.string())),\n valuesByColors: z.optional(z.array(z.number())),\n cellStrokeColor: z.optional(z.string()),\n emptyCellColor: z.optional(z.string()),\n groupGap: z.optional(z.number()),\n cellGap: z.optional(z.number()),\n }))\n});\n\nexport type HeatmapSettings = z.infer<typeof HeatmapSettingsSchema>;\n\n"],"names":["ValueTypeSchema","z.enum","HeatmapAnnotationSchema","z.object","ColumnNameSchema","z.optional","z.boolean","z.array","z.string","HeatmapAnnotationXSchema","z.literal","HeatmapAnnotationYSchema","DendrogramDistanceSchema","DendrogramLinkageSchema","DendrogramSchema","z.number","z.union","PointShapeSchema","LineShapeSchema","DendrogramXSchema","DendrogramYSchema","axisCommonSchema","HeatmapSettingsSchema","TitlePositionSchema","TooltipSettingsSchema","LegendPositionSchema","z.record","AggregationMethodSchema","AesRecordSchema","z.null"],"mappings":"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"}
|
|
@@ -1,39 +1,39 @@
|
|
|
1
|
-
import { continuousAesMappingFromValueSchema as m, PointShapeSchema as c, LineShapeSchema as
|
|
2
|
-
import { object as a, optional as e, string as t, literal as l, array as
|
|
1
|
+
import { continuousAesMappingFromValueSchema as m, PointShapeSchema as c, LineShapeSchema as S, ColumnNameSchema as o, AesRecordSchema as y, DataValueSchema as u, AxisSettingsContinuousSchema as h, FrameTypeSchema as g, TooltipSettingsSchema as d, LegendPositionSchema as T, TitlePositionSchema as b } from "./common.js";
|
|
2
|
+
import { object as a, optional as e, string as t, literal as l, array as p, union as n, number as i, boolean as s } from "../node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/types.js";
|
|
3
3
|
const r = a({
|
|
4
4
|
type: l("grouping"),
|
|
5
5
|
value: t(),
|
|
6
6
|
// link to aes mapped to column
|
|
7
|
-
palette: e(
|
|
7
|
+
palette: e(p(t()))
|
|
8
8
|
// if defined we use palette to create mapping without inheritedAes field
|
|
9
|
-
}),
|
|
9
|
+
}), A = a({
|
|
10
10
|
type: l("dots"),
|
|
11
11
|
aes: e(
|
|
12
12
|
a({
|
|
13
13
|
dotFill: e(
|
|
14
|
-
|
|
14
|
+
n([t(), r, m(t())])
|
|
15
15
|
),
|
|
16
|
-
dotShape: e(
|
|
17
|
-
dotSize: e(
|
|
16
|
+
dotShape: e(n([c, r])),
|
|
17
|
+
dotSize: e(n([i(), m(i())]))
|
|
18
18
|
})
|
|
19
19
|
)
|
|
20
|
-
}),
|
|
20
|
+
}), x = a({
|
|
21
21
|
type: l("curve"),
|
|
22
22
|
smoothing: e(s()),
|
|
23
23
|
aes: e(
|
|
24
24
|
a({
|
|
25
25
|
lineWidth: e(i()),
|
|
26
|
-
lineShape: e(
|
|
27
|
-
lineColor: e(
|
|
26
|
+
lineShape: e(S),
|
|
27
|
+
lineColor: e(n([t(), r, m(t())])),
|
|
28
28
|
opacity: e(i())
|
|
29
29
|
})
|
|
30
30
|
)
|
|
31
|
-
}),
|
|
31
|
+
}), C = n([A, x]), U = a({
|
|
32
32
|
type: l("scatterplot-umap"),
|
|
33
33
|
title: a({
|
|
34
34
|
name: t(),
|
|
35
35
|
show: e(s()),
|
|
36
|
-
position: e(
|
|
36
|
+
position: e(b)
|
|
37
37
|
}),
|
|
38
38
|
size: e(
|
|
39
39
|
a({
|
|
@@ -44,34 +44,29 @@ const r = a({
|
|
|
44
44
|
legend: e(
|
|
45
45
|
a({
|
|
46
46
|
show: e(s()),
|
|
47
|
-
position: e(
|
|
48
|
-
})
|
|
49
|
-
),
|
|
50
|
-
tooltips: e(
|
|
51
|
-
a({
|
|
52
|
-
show: e(s()),
|
|
53
|
-
content: e(n(o))
|
|
47
|
+
position: e(T)
|
|
54
48
|
})
|
|
55
49
|
),
|
|
50
|
+
tooltips: e(d),
|
|
56
51
|
frame: e(a({ type: e(g) })),
|
|
57
52
|
keyColumn: e(o),
|
|
58
53
|
x: o,
|
|
59
54
|
y: o,
|
|
60
55
|
xAxis: e(h),
|
|
61
56
|
yAxis: e(h),
|
|
62
|
-
grouping: e(
|
|
57
|
+
grouping: e(p(
|
|
63
58
|
a({
|
|
64
59
|
columnName: o,
|
|
65
|
-
order: e(
|
|
66
|
-
inheritedAes: e(
|
|
60
|
+
order: e(p(u)),
|
|
61
|
+
inheritedAes: e(y),
|
|
67
62
|
allowNullGroup: e(s())
|
|
68
63
|
})
|
|
69
64
|
)),
|
|
70
65
|
label: e(o),
|
|
71
66
|
highlight: e(o),
|
|
72
|
-
layers:
|
|
67
|
+
layers: p(C)
|
|
73
68
|
});
|
|
74
69
|
export {
|
|
75
|
-
|
|
70
|
+
U as ScatterplotUmapSettingsSchema
|
|
76
71
|
};
|
|
77
72
|
//# sourceMappingURL=scatterplot-umap.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scatterplot-umap.js","sources":["../../src/types/scatterplot-umap.ts"],"sourcesContent":["import { z } from 'zod';\nimport type { categoricalAesMappingFromValueSchema } from './common';\nimport {\n AesRecordSchema, AxisSettingsContinuousSchema,\n ColumnNameSchema, continuousAesMappingFromValueSchema, DataValueSchema, FrameTypeSchema,\n LegendPositionSchema, LineShapeSchema, PointShapeSchema,\n TitlePositionSchema,\n} from './common';\nimport type { ScatterplotLegendInfo } from './scatterplot';\n\ntype catAesFromColumn<ValueType extends z.ZodType> = ReturnType<typeof categoricalAesMappingFromValueSchema<ValueType>>;\ntype contAesFromColumn<ValueType extends z.ZodType> = ReturnType<typeof continuousAesMappingFromValueSchema<ValueType>>;\n\nexport type CategoricalAesFromColumn<ValueType> = z.infer<catAesFromColumn<z.ZodType<ValueType>>>;\nexport type ContinuousAesFromColumn<ValueType> = z.infer<contAesFromColumn<z.ZodType<ValueType>>>;\n\nconst InheritAesSchema = z.object({\n type: z.literal('grouping'),\n value: z.string(), // link to aes mapped to column\n palette: z.optional(z.array(z.string())) // if defined we use palette to create mapping without inheritedAes field\n});\nexport type InheritAesScatterplot = z.infer<typeof InheritAesSchema>;\n\nconst DotsUmapLayerSchema = z.object({\n type: z.literal('dots'),\n aes: z.optional(\n z.object({\n dotFill: z.optional(\n z.union([z.string(), InheritAesSchema, continuousAesMappingFromValueSchema(z.string())])\n ),\n dotShape: z.optional(z.union([PointShapeSchema, InheritAesSchema])),\n dotSize: z.optional(z.union([z.number(), continuousAesMappingFromValueSchema(z.number())])),\n })\n ),\n});\n\nconst CurveUmapLayerSchema = z.object({\n type: z.literal('curve'),\n smoothing: z.optional(z.boolean()),\n aes: z.optional(\n z.object({\n lineWidth: z.optional(z.number()),\n lineShape: z.optional(LineShapeSchema),\n lineColor: z.optional(z.union([z.string(), InheritAesSchema, continuousAesMappingFromValueSchema(z.string())])),\n opacity: z.optional(z.number()),\n })\n ),\n});\n\nconst ScatterplotUmapLayerSchema = z.union([DotsUmapLayerSchema, CurveUmapLayerSchema]);\n\nexport type DotsUmapLayer = z.infer<typeof DotsUmapLayerSchema>;\nexport type CurveUmapLayer = z.infer<typeof CurveUmapLayerSchema>;\nexport type ScatterplotUmapLayer = z.infer<typeof ScatterplotUmapLayerSchema>;\n\nexport const ScatterplotUmapSettingsSchema = z.object({\n type: z.literal('scatterplot-umap'),\n title: z.object({\n name: z.string(),\n show: z.optional(z.boolean()),\n position: z.optional(TitlePositionSchema),\n }),\n size: z.optional(\n z.object({\n width: z.optional(z.number()),\n height: z.optional(z.number()),\n })\n ),\n legend: z.optional(\n z.object({\n show: z.optional(z.boolean()),\n position: z.optional(LegendPositionSchema),\n })\n ),\n tooltips: z.optional(
|
|
1
|
+
{"version":3,"file":"scatterplot-umap.js","sources":["../../src/types/scatterplot-umap.ts"],"sourcesContent":["import { z } from 'zod';\nimport type { categoricalAesMappingFromValueSchema } from './common';\nimport {\n AesRecordSchema, AxisSettingsContinuousSchema,\n ColumnNameSchema, continuousAesMappingFromValueSchema, DataValueSchema, FrameTypeSchema,\n LegendPositionSchema, LineShapeSchema, PointShapeSchema,\n TitlePositionSchema,\n TooltipSettingsSchema,\n} from './common';\nimport type { ScatterplotLegendInfo } from './scatterplot';\n\ntype catAesFromColumn<ValueType extends z.ZodType> = ReturnType<typeof categoricalAesMappingFromValueSchema<ValueType>>;\ntype contAesFromColumn<ValueType extends z.ZodType> = ReturnType<typeof continuousAesMappingFromValueSchema<ValueType>>;\n\nexport type CategoricalAesFromColumn<ValueType> = z.infer<catAesFromColumn<z.ZodType<ValueType>>>;\nexport type ContinuousAesFromColumn<ValueType> = z.infer<contAesFromColumn<z.ZodType<ValueType>>>;\n\nconst InheritAesSchema = z.object({\n type: z.literal('grouping'),\n value: z.string(), // link to aes mapped to column\n palette: z.optional(z.array(z.string())) // if defined we use palette to create mapping without inheritedAes field\n});\nexport type InheritAesScatterplot = z.infer<typeof InheritAesSchema>;\n\nconst DotsUmapLayerSchema = z.object({\n type: z.literal('dots'),\n aes: z.optional(\n z.object({\n dotFill: z.optional(\n z.union([z.string(), InheritAesSchema, continuousAesMappingFromValueSchema(z.string())])\n ),\n dotShape: z.optional(z.union([PointShapeSchema, InheritAesSchema])),\n dotSize: z.optional(z.union([z.number(), continuousAesMappingFromValueSchema(z.number())])),\n })\n ),\n});\n\nconst CurveUmapLayerSchema = z.object({\n type: z.literal('curve'),\n smoothing: z.optional(z.boolean()),\n aes: z.optional(\n z.object({\n lineWidth: z.optional(z.number()),\n lineShape: z.optional(LineShapeSchema),\n lineColor: z.optional(z.union([z.string(), InheritAesSchema, continuousAesMappingFromValueSchema(z.string())])),\n opacity: z.optional(z.number()),\n })\n ),\n});\n\nconst ScatterplotUmapLayerSchema = z.union([DotsUmapLayerSchema, CurveUmapLayerSchema]);\n\nexport type DotsUmapLayer = z.infer<typeof DotsUmapLayerSchema>;\nexport type CurveUmapLayer = z.infer<typeof CurveUmapLayerSchema>;\nexport type ScatterplotUmapLayer = z.infer<typeof ScatterplotUmapLayerSchema>;\n\nexport const ScatterplotUmapSettingsSchema = z.object({\n type: z.literal('scatterplot-umap'),\n title: z.object({\n name: z.string(),\n show: z.optional(z.boolean()),\n position: z.optional(TitlePositionSchema),\n }),\n size: z.optional(\n z.object({\n width: z.optional(z.number()),\n height: z.optional(z.number()),\n })\n ),\n legend: z.optional(\n z.object({\n show: z.optional(z.boolean()),\n position: z.optional(LegendPositionSchema),\n })\n ),\n tooltips: z.optional(TooltipSettingsSchema),\n frame: z.optional(z.object({type: z.optional(FrameTypeSchema)})),\n keyColumn: z.optional(ColumnNameSchema),\n x: ColumnNameSchema,\n y: ColumnNameSchema,\n xAxis: z.optional(AxisSettingsContinuousSchema),\n yAxis: z.optional(AxisSettingsContinuousSchema),\n grouping: z.optional(z.array(\n z.object({\n columnName: ColumnNameSchema,\n order: z.optional(z.array(DataValueSchema)),\n inheritedAes: z.optional(AesRecordSchema),\n allowNullGroup: z.optional(z.boolean())\n })\n )),\n label: z.optional(ColumnNameSchema),\n highlight: z.optional(ColumnNameSchema),\n layers: z.array(ScatterplotUmapLayerSchema)\n});\n\nexport type ScatterplotUmapSettings = z.infer<typeof ScatterplotUmapSettingsSchema>;\n\nexport type ScatterplotUmapLegendInfo = ScatterplotLegendInfo;\n"],"names":["InheritAesSchema","z.object","z.literal","z.string","z.optional","z.array","DotsUmapLayerSchema","z.union","continuousAesMappingFromValueSchema","PointShapeSchema","z.number","CurveUmapLayerSchema","z.boolean","LineShapeSchema","ScatterplotUmapLayerSchema","ScatterplotUmapSettingsSchema","TitlePositionSchema","LegendPositionSchema","TooltipSettingsSchema","FrameTypeSchema","ColumnNameSchema","AxisSettingsContinuousSchema","DataValueSchema","AesRecordSchema"],"mappings":";;AAiBA,MAAMA,IAAmBC,EAAS;AAAA,EAC9B,MAAMC,EAAU,UAAU;AAAA,EAC1B,OAAOC,EAAE;AAAA;AAAA,EACT,SAASC,EAAWC,EAAQF,GAAU,CAAC;AAAA;AAC3C,CAAC,GAGKG,IAAsBL,EAAS;AAAA,EACjC,MAAMC,EAAU,MAAM;AAAA,EACtB,KAAKE;AAAAA,IACDH,EAAS;AAAA,MACL,SAASG;AAAAA,QACLG,EAAQ,CAACJ,EAAE,GAAUH,GAAkBQ,EAAoCL,EAAE,CAAQ,CAAC,CAAC;AAAA,MAAA;AAAA,MAE3F,UAAUC,EAAWG,EAAQ,CAACE,GAAkBT,CAAgB,CAAC,CAAC;AAAA,MAClE,SAASI,EAAWG,EAAQ,CAACG,EAAE,GAAUF,EAAoCE,EAAE,CAAQ,CAAC,CAAC,CAAC;AAAA,IAAA,CAC7F;AAAA,EAAA;AAET,CAAC,GAEKC,IAAuBV,EAAS;AAAA,EAClC,MAAMC,EAAU,OAAO;AAAA,EACvB,WAAWE,EAAWQ,GAAW;AAAA,EACjC,KAAKR;AAAAA,IACDH,EAAS;AAAA,MACL,WAAWG,EAAWM,GAAU;AAAA,MAChC,WAAWN,EAAWS,CAAe;AAAA,MACrC,WAAWT,EAAWG,EAAQ,CAACJ,EAAE,GAAUH,GAAkBQ,EAAoCL,GAAU,CAAC,CAAC,CAAC;AAAA,MAC9G,SAASC,EAAWM,GAAU;AAAA,IAAA,CACjC;AAAA,EAAA;AAET,CAAC,GAEKI,IAA6BP,EAAQ,CAACD,GAAqBK,CAAoB,CAAC,GAMzEI,IAAgCd,EAAS;AAAA,EAClD,MAAMC,EAAU,kBAAkB;AAAA,EAClC,OAAOD,EAAS;AAAA,IACZ,MAAME,EAAE;AAAA,IACR,MAAMC,EAAWQ,GAAW;AAAA,IAC5B,UAAUR,EAAWY,CAAmB;AAAA,EAAA,CAC3C;AAAA,EACD,MAAMZ;AAAAA,IACFH,EAAS;AAAA,MACL,OAAOG,EAAWM,GAAU;AAAA,MAC5B,QAAQN,EAAWM,GAAU;AAAA,IAAA,CAChC;AAAA,EAAA;AAAA,EAEL,QAAQN;AAAAA,IACJH,EAAS;AAAA,MACL,MAAMG,EAAWQ,GAAW;AAAA,MAC5B,UAAUR,EAAWa,CAAoB;AAAA,IAAA,CAC5C;AAAA,EAAA;AAAA,EAEL,UAAUb,EAAWc,CAAqB;AAAA,EAC1C,OAAOd,EAAWH,EAAS,EAAC,MAAMG,EAAWe,CAAe,EAAA,CAAE,CAAC;AAAA,EAC/D,WAAWf,EAAWgB,CAAgB;AAAA,EACtC,GAAGA;AAAA,EACH,GAAGA;AAAA,EACH,OAAOhB,EAAWiB,CAA4B;AAAA,EAC9C,OAAOjB,EAAWiB,CAA4B;AAAA,EAC9C,UAAUjB,EAAWC;AAAAA,IACjBJ,EAAS;AAAA,MACL,YAAYmB;AAAA,MACZ,OAAOhB,EAAWC,EAAQiB,CAAe,CAAC;AAAA,MAC1C,cAAclB,EAAWmB,CAAe;AAAA,MACxC,gBAAgBnB,EAAWQ,GAAW;AAAA,IAAA,CACzC;AAAA,EAAA,CACJ;AAAA,EACD,OAAOR,EAAWgB,CAAgB;AAAA,EAClC,WAAWhB,EAAWgB,CAAgB;AAAA,EACtC,QAAQf,EAAQS,CAA0B;AAC9C,CAAC;"}
|
|
@@ -1,91 +1,86 @@
|
|
|
1
|
-
import { continuousAesMappingFromValueSchema as l, PointShapeSchema as m, LineShapeSchema as
|
|
2
|
-
import { object as t, optional as e, string as o, literal as c, array as
|
|
1
|
+
import { continuousAesMappingFromValueSchema as l, PointShapeSchema as m, LineShapeSchema as S, ColumnNameSchema as i, AesRecordSchema as y, DataValueSchema as u, AxisSettingsSchema as h, FrameTypeSchema as g, TooltipSettingsSchema as d, LegendPositionSchema as T, TitlePositionSchema as b } from "./common.js";
|
|
2
|
+
import { object as t, optional as e, string as o, literal as c, array as r, union as s, number as a, boolean as n } from "../node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/types.js";
|
|
3
3
|
const p = t({
|
|
4
4
|
type: c("grouping"),
|
|
5
5
|
value: o(),
|
|
6
6
|
// link to aes mapped to column
|
|
7
|
-
palette: e(
|
|
7
|
+
palette: e(r(o()))
|
|
8
8
|
// if defined we use palette to create mapping without inheritedAes field
|
|
9
|
-
}),
|
|
9
|
+
}), A = t({
|
|
10
10
|
type: c("dots"),
|
|
11
11
|
aes: e(
|
|
12
12
|
t({
|
|
13
|
-
dotFill: e(
|
|
14
|
-
dotShape: e(
|
|
15
|
-
dotSize: e(
|
|
13
|
+
dotFill: e(s([o(), p, l(o())])),
|
|
14
|
+
dotShape: e(s([m, p])),
|
|
15
|
+
dotSize: e(s([a(), l(a())]))
|
|
16
16
|
})
|
|
17
17
|
)
|
|
18
|
-
}),
|
|
18
|
+
}), x = t({
|
|
19
19
|
type: c("curve"),
|
|
20
|
-
smoothing: e(
|
|
20
|
+
smoothing: e(n()),
|
|
21
21
|
aes: e(
|
|
22
22
|
t({
|
|
23
|
-
lineWidth: e(
|
|
24
|
-
lineShape: e(
|
|
25
|
-
lineColor: e(
|
|
26
|
-
opacity: e(
|
|
23
|
+
lineWidth: e(a()),
|
|
24
|
+
lineShape: e(S),
|
|
25
|
+
lineColor: e(s([o(), p, l(o())])),
|
|
26
|
+
opacity: e(a())
|
|
27
27
|
})
|
|
28
28
|
)
|
|
29
|
-
}),
|
|
29
|
+
}), f = s([A, x]), L = t({
|
|
30
30
|
type: c("scatterplot"),
|
|
31
31
|
title: t({
|
|
32
32
|
name: o(),
|
|
33
|
-
show: e(
|
|
34
|
-
position: e(
|
|
33
|
+
show: e(n()),
|
|
34
|
+
position: e(b)
|
|
35
35
|
}),
|
|
36
36
|
size: e(
|
|
37
37
|
t({
|
|
38
|
-
width: e(
|
|
39
|
-
height: e(
|
|
38
|
+
width: e(a()),
|
|
39
|
+
height: e(a())
|
|
40
40
|
})
|
|
41
41
|
),
|
|
42
42
|
legend: e(
|
|
43
43
|
t({
|
|
44
|
-
show: e(
|
|
45
|
-
position: e(
|
|
46
|
-
})
|
|
47
|
-
),
|
|
48
|
-
tooltips: e(
|
|
49
|
-
t({
|
|
50
|
-
show: e(i()),
|
|
51
|
-
content: e(s(a))
|
|
44
|
+
show: e(n()),
|
|
45
|
+
position: e(T)
|
|
52
46
|
})
|
|
53
47
|
),
|
|
54
|
-
|
|
48
|
+
tooltips: e(d),
|
|
49
|
+
frame: e(t({ type: e(g) })),
|
|
55
50
|
facetSettings: e(
|
|
56
51
|
t({
|
|
57
|
-
sharedX: e(
|
|
58
|
-
sharedY: e(
|
|
59
|
-
nRows: e(
|
|
60
|
-
nCols: e(
|
|
52
|
+
sharedX: e(n()),
|
|
53
|
+
sharedY: e(n()),
|
|
54
|
+
nRows: e(a()),
|
|
55
|
+
nCols: e(a())
|
|
61
56
|
})
|
|
62
57
|
),
|
|
63
|
-
keyColumn:
|
|
64
|
-
x:
|
|
65
|
-
y:
|
|
58
|
+
keyColumn: i,
|
|
59
|
+
x: i,
|
|
60
|
+
y: i,
|
|
66
61
|
xAxis: e(h),
|
|
67
62
|
yAxis: e(h),
|
|
68
|
-
grouping: e(
|
|
63
|
+
grouping: e(r(
|
|
69
64
|
t({
|
|
70
|
-
columnName:
|
|
71
|
-
order: e(
|
|
72
|
-
inheritedAes: e(
|
|
73
|
-
allowNullGroup: e(
|
|
65
|
+
columnName: i,
|
|
66
|
+
order: e(r(u)),
|
|
67
|
+
inheritedAes: e(y),
|
|
68
|
+
allowNullGroup: e(n())
|
|
74
69
|
})
|
|
75
70
|
)),
|
|
76
|
-
facetBy: e(
|
|
77
|
-
label: e(
|
|
78
|
-
highlight: e(
|
|
71
|
+
facetBy: e(r(i)),
|
|
72
|
+
label: e(i),
|
|
73
|
+
highlight: e(i),
|
|
79
74
|
trend: e(
|
|
80
75
|
t({
|
|
81
|
-
color: e(e(
|
|
82
|
-
bounded: e(
|
|
76
|
+
color: e(e(s([o(), p, l(o())]))),
|
|
77
|
+
bounded: e(n())
|
|
83
78
|
// if true: line and area bounded with min and max X value; else line bounded by chart bounds
|
|
84
79
|
})
|
|
85
80
|
),
|
|
86
|
-
layers:
|
|
81
|
+
layers: r(f)
|
|
87
82
|
});
|
|
88
83
|
export {
|
|
89
|
-
|
|
84
|
+
L as ScatterplotSettingsSchema
|
|
90
85
|
};
|
|
91
86
|
//# sourceMappingURL=scatterplot.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scatterplot.js","sources":["../../src/types/scatterplot.ts"],"sourcesContent":["import { z } from 'zod';\nimport type { AesItem, categoricalAesMappingFromValueSchema, Category, DataValue } from './common';\nimport {\n AesRecordSchema, AxisSettingsSchema,\n ColumnNameSchema,\n continuousAesMappingFromValueSchema, DataValueSchema,\n FrameTypeSchema,\n LegendPositionSchema,\n LineShapeSchema,\n PointShapeSchema,\n TitlePositionSchema,\n} from './common';\n\ntype catAesFromColumn<ValueType extends z.ZodType> = ReturnType<typeof categoricalAesMappingFromValueSchema<ValueType>>;\ntype contAesFromColumn<ValueType extends z.ZodType> = ReturnType<typeof continuousAesMappingFromValueSchema<ValueType>>;\n\nexport type CategoricalAesFromColumn<ValueType> = z.infer<catAesFromColumn<z.ZodType<ValueType>>>;\nexport type ContinuousAesFromColumn<ValueType> = z.infer<contAesFromColumn<z.ZodType<ValueType>>>;\n\nconst InheritAesSchema = z.object({\n type: z.literal('grouping'),\n value: z.string(), // link to aes mapped to column\n palette: z.optional(z.array(z.string())) // if defined we use palette to create mapping without inheritedAes field\n});\nexport type InheritAesScatterplot = z.infer<typeof InheritAesSchema>;\n\nconst DotsLayerSchema = z.object({\n type: z.literal('dots'),\n aes: z.optional(\n z.object({\n dotFill: z.optional(z.union([z.string(), InheritAesSchema, continuousAesMappingFromValueSchema(z.string())])),\n dotShape: z.optional(z.union([PointShapeSchema, InheritAesSchema])),\n dotSize: z.optional(z.union([z.number(), continuousAesMappingFromValueSchema(z.number())])),\n })\n ),\n});\nconst CurveLayerSchema = z.object({\n type: z.literal('curve'),\n smoothing: z.optional(z.boolean()),\n aes: z.optional(\n z.object({\n lineWidth: z.optional(z.number()),\n lineShape: z.optional(LineShapeSchema),\n lineColor: z.optional(z.union([z.string(), InheritAesSchema, continuousAesMappingFromValueSchema(z.string())])),\n opacity: z.optional(z.number()),\n })\n ),\n});\nconst ScatterplotLayerSchema = z.union([DotsLayerSchema, CurveLayerSchema]);\n\nexport type DotsLayer = z.infer<typeof DotsLayerSchema>;\nexport type CurveLayer = z.infer<typeof CurveLayerSchema>;\nexport type ScatterplotLayer = z.infer<typeof ScatterplotLayerSchema>;\n\nexport const ScatterplotSettingsSchema = z.object({\n type: z.literal('scatterplot'),\n title: z.object({\n name: z.string(),\n show: z.optional(z.boolean()),\n position: z.optional(TitlePositionSchema),\n }),\n size: z.optional(\n z.object({\n width: z.optional(z.number()),\n height: z.optional(z.number()),\n })\n ),\n legend: z.optional(\n z.object({\n show: z.optional(z.boolean()),\n position: z.optional(LegendPositionSchema),\n })\n ),\n tooltips: z.optional(
|
|
1
|
+
{"version":3,"file":"scatterplot.js","sources":["../../src/types/scatterplot.ts"],"sourcesContent":["import { z } from 'zod';\nimport type { AesItem, categoricalAesMappingFromValueSchema, Category, DataValue } from './common';\nimport {\n AesRecordSchema, AxisSettingsSchema,\n ColumnNameSchema,\n continuousAesMappingFromValueSchema, DataValueSchema,\n FrameTypeSchema,\n LegendPositionSchema,\n LineShapeSchema,\n PointShapeSchema,\n TitlePositionSchema,\n TooltipSettingsSchema,\n} from './common';\n\ntype catAesFromColumn<ValueType extends z.ZodType> = ReturnType<typeof categoricalAesMappingFromValueSchema<ValueType>>;\ntype contAesFromColumn<ValueType extends z.ZodType> = ReturnType<typeof continuousAesMappingFromValueSchema<ValueType>>;\n\nexport type CategoricalAesFromColumn<ValueType> = z.infer<catAesFromColumn<z.ZodType<ValueType>>>;\nexport type ContinuousAesFromColumn<ValueType> = z.infer<contAesFromColumn<z.ZodType<ValueType>>>;\n\nconst InheritAesSchema = z.object({\n type: z.literal('grouping'),\n value: z.string(), // link to aes mapped to column\n palette: z.optional(z.array(z.string())) // if defined we use palette to create mapping without inheritedAes field\n});\nexport type InheritAesScatterplot = z.infer<typeof InheritAesSchema>;\n\nconst DotsLayerSchema = z.object({\n type: z.literal('dots'),\n aes: z.optional(\n z.object({\n dotFill: z.optional(z.union([z.string(), InheritAesSchema, continuousAesMappingFromValueSchema(z.string())])),\n dotShape: z.optional(z.union([PointShapeSchema, InheritAesSchema])),\n dotSize: z.optional(z.union([z.number(), continuousAesMappingFromValueSchema(z.number())])),\n })\n ),\n});\nconst CurveLayerSchema = z.object({\n type: z.literal('curve'),\n smoothing: z.optional(z.boolean()),\n aes: z.optional(\n z.object({\n lineWidth: z.optional(z.number()),\n lineShape: z.optional(LineShapeSchema),\n lineColor: z.optional(z.union([z.string(), InheritAesSchema, continuousAesMappingFromValueSchema(z.string())])),\n opacity: z.optional(z.number()),\n })\n ),\n});\nconst ScatterplotLayerSchema = z.union([DotsLayerSchema, CurveLayerSchema]);\n\nexport type DotsLayer = z.infer<typeof DotsLayerSchema>;\nexport type CurveLayer = z.infer<typeof CurveLayerSchema>;\nexport type ScatterplotLayer = z.infer<typeof ScatterplotLayerSchema>;\n\nexport const ScatterplotSettingsSchema = z.object({\n type: z.literal('scatterplot'),\n title: z.object({\n name: z.string(),\n show: z.optional(z.boolean()),\n position: z.optional(TitlePositionSchema),\n }),\n size: z.optional(\n z.object({\n width: z.optional(z.number()),\n height: z.optional(z.number()),\n })\n ),\n legend: z.optional(\n z.object({\n show: z.optional(z.boolean()),\n position: z.optional(LegendPositionSchema),\n })\n ),\n tooltips: z.optional(TooltipSettingsSchema),\n frame: z.optional(z.object({type: z.optional(FrameTypeSchema)})),\n facetSettings: z.optional(\n z.object({\n sharedX: z.optional(z.boolean()),\n sharedY: z.optional(z.boolean()),\n nRows: z.optional(z.number()),\n nCols: z.optional(z.number()),\n })\n ),\n keyColumn: ColumnNameSchema,\n x: ColumnNameSchema,\n y: ColumnNameSchema,\n xAxis: z.optional(AxisSettingsSchema),\n yAxis: z.optional(AxisSettingsSchema),\n grouping: z.optional(z.array(\n z.object({\n columnName: ColumnNameSchema,\n order: z.optional(z.array(DataValueSchema)),\n inheritedAes: z.optional(AesRecordSchema),\n allowNullGroup: z.optional(z.boolean())\n })\n )),\n facetBy: z.optional(z.array(ColumnNameSchema)),\n label: z.optional(ColumnNameSchema),\n highlight: z.optional(ColumnNameSchema),\n trend: z.optional(\n z.object({\n color: z.optional(z.optional(z.union([z.string(), InheritAesSchema, continuousAesMappingFromValueSchema(z.string())]))),\n bounded: z.optional(z.boolean()), // if true: line and area bounded with min and max X value; else line bounded by chart bounds\n })\n ),\n layers: z.array(ScatterplotLayerSchema),\n});\n\nexport type ScatterplotSettings = z.infer<typeof ScatterplotSettingsSchema>;\n\nexport type ScatterplotLegendInfo = Record<\n string,\n {\n values: Category[];\n usedAes: (keyof AesItem)[];\n aesMap: (value: Category, field: keyof AesItem) => undefined | DataValue;\n labels: Record<Category, string>;\n }\n>;\n"],"names":["InheritAesSchema","z.object","z.literal","z.string","z.optional","z.array","DotsLayerSchema","z.union","continuousAesMappingFromValueSchema","PointShapeSchema","z.number","CurveLayerSchema","z.boolean","LineShapeSchema","ScatterplotLayerSchema","ScatterplotSettingsSchema","TitlePositionSchema","LegendPositionSchema","TooltipSettingsSchema","FrameTypeSchema","ColumnNameSchema","AxisSettingsSchema","DataValueSchema","AesRecordSchema"],"mappings":"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"}
|