@milaboratories/graph-maker 1.1.148 → 1.1.150
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/GraphMaker/components/AesSettings/AesDataMappingDiscrete.vue.d.ts +1 -0
- package/dist/GraphMaker/components/AesSettings/AesDataMappingDiscrete.vue.d.ts.map +1 -1
- package/dist/GraphMaker/components/AesSettings/AesDataMappingDiscrete.vue.js +97 -95
- package/dist/GraphMaker/components/AesSettings/AesDataMappingDiscrete.vue.js.map +1 -1
- package/dist/GraphMaker/dataBindAes.js +44 -44
- package/dist/GraphMaker/dataBindAes.js.map +1 -1
- package/dist/GraphMaker/forms/AxesSettingsForm/DiscreteAxesSettingsForm.vue.d.ts.map +1 -1
- package/dist/GraphMaker/forms/AxesSettingsForm/DiscreteAxesSettingsForm.vue.js +111 -109
- package/dist/GraphMaker/forms/AxesSettingsForm/DiscreteAxesSettingsForm.vue.js.map +1 -1
- package/dist/GraphMaker/forms/LayersForm/AesSelector.vue.d.ts.map +1 -1
- package/dist/GraphMaker/forms/LayersForm/AesSelector.vue.js +84 -83
- package/dist/GraphMaker/forms/LayersForm/AesSelector.vue.js.map +1 -1
- package/dist/GraphMaker/index.vue.js +33 -33
- package/dist/GraphMaker/index.vue.js.map +1 -1
- package/dist/GraphMaker/utils/createChartSettingsForRender/composeDiscreteSettings.d.ts.map +1 -1
- package/dist/GraphMaker/utils/createChartSettingsForRender/composeDiscreteSettings.js +25 -33
- package/dist/GraphMaker/utils/createChartSettingsForRender/composeDiscreteSettings.js.map +1 -1
- package/dist/GraphMaker/utils/loadUniqueValuesToSave.d.ts.map +1 -1
- package/dist/GraphMaker/utils/loadUniqueValuesToSave.js +23 -23
- package/dist/GraphMaker/utils/loadUniqueValuesToSave.js.map +1 -1
- package/dist/node_modules/@milaboratories/miplots4/dist/discrete/components/layers/StackedAreaElement.js +49 -49
- package/dist/node_modules/@milaboratories/miplots4/dist/discrete/components/layers/StackedAreaElement.js.map +1 -1
- package/dist/node_modules/@milaboratories/miplots4/dist/scatterplot/utils/createLegendInfo.js +18 -18
- package/dist/node_modules/@milaboratories/miplots4/dist/scatterplot/utils/createLegendInfo.js.map +1 -1
- package/package.json +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StackedAreaElement.js","sources":["../../../../../../../../node_modules/@milaboratories/miplots4/src/discrete/components/layers/StackedAreaElement.tsx"],"sourcesContent":["import {area, curveBumpX, curveBumpY} from 'd3-shape';\nimport React, { useState } from 'react';\nimport type {TooltipsData} from '../../../common/Tooltip';\nimport type {AesItem, GroupingData, InheritAesDiscrete, Orientation} from '../../../types';\nimport type {StackedBar} from '../../layers';\nimport type {StackedAreaData} from '../../layers/types';\nimport type {ChartScales} from '../types';\nimport {StackedBarElement} from './StackedBarElement';\n\ninterface StackedAreaProps {\n facetKey: string;\n scales: ChartScales;\n layerData: StackedAreaData;\n orientation: Orientation;\n sideDistances: {\n left: number;\n right: number;\n top: number;\n bottom: number;\n };\n showTooltips: boolean;\n secondaryGrouping: GroupingData;\n tooltipsData: TooltipsData<unknown>;\n activeElementContainer?: Element;\n tooltipsContainer?: Element;\n}\n\nfunction isSecondaryGroupedAes (value: string | InheritAesDiscrete) {\n return value && typeof value === 'object' && 'type' in value && value.type === 'secondaryGrouping';\n}\n\nfunction getAesValue<ValueType>(\n scales: ChartScales,\n field: keyof AesItem,\n value: ValueType | InheritAesDiscrete,\n primaryGrouping: string,\n secondaryGrouping: string\n): ValueType {\n if (value && typeof value === 'object' && 'type' in value) {\n if (value.type === 'primaryGrouping') {\n return scales.xPrimaryAes(primaryGrouping)[field] as ValueType;\n }\n if (value.type === 'secondaryGrouping') {\n return scales.xSecondaryAes(secondaryGrouping)[field] as ValueType;\n }\n }\n return value as ValueType;\n}\n\nfunction getAreas(\n scales: ChartScales,\n barWidth: number,\n bandWidth: number,\n primaryKeys: string[],\n secondaryKeys: string[],\n isVertical: boolean,\n bars: StackedBar[],\n) {\n const offsetX = (bandWidth - barWidth) / 2;\n const ys = bars.map((bar) => {\n const yValues:Record<string, {y1: number, y2: number}> = {};\n let currentHeight = 0;\n secondaryKeys.forEach(secondaryKey => {\n const height = bar.valuesMap[secondaryKey]?.height ?? 0;\n yValues[secondaryKey] = {\n y1: currentHeight,\n y2: currentHeight + height,\n };\n currentHeight += height;\n });\n return yValues;\n });\n\n return secondaryKeys.map((secondaryKey) => {\n const points:[number, number, number][] = ys.flatMap((yMap, idx) => {\n const primaryKey = primaryKeys[idx];\n const x = scales.xPrimary(primaryKey) ?? 0;\n const y1 = scales.y(yMap[secondaryKey].y1);\n const y2 = scales.y(yMap[secondaryKey].y2);\n const p1:[number, number, number] = [x + offsetX, y1, y2];\n const p2:[number, number, number] = [x + bandWidth - offsetX, y1, y2];\n return isVertical ? [p1, p2] : [p2, p1];\n });\n\n const pathD = (isVertical ? (\n area<[number, number, number]>()\n .curve(curveBumpX)\n .x(d => d[0])\n .y0(d => d[1])\n .y1(d => d[2])(points)\n ) :\n area<[number, number, number]>()\n .curve(curveBumpY)\n .y(d => d[0])\n .x0(d => d[1])\n .x1(d => d[2])(points)) ?? '';\n return {secondaryKey, pathD};\n });\n}\n\nfunction calculateBarWidth (\n layerData: StackedAreaData,\n bandwidth: number\n) {\n if (!layerData.meta.showBars) {\n return 0;\n }\n return layerData.aes.barWidth === 'auto' ? bandwidth * 0.2 : Math.min(bandwidth, layerData.aes.barWidth);\n}\n\nexport function StackedAreaElement({\n facetKey,\n scales,\n orientation,\n layerData,\n sideDistances,\n showTooltips,\n secondaryGrouping,\n activeElementContainer,\n tooltipsContainer,\n tooltipsData,\n}: StackedAreaProps) {\n const [selectedAreaKey, setSelectedAreaKey] = useState<string | null>(null);\n const isVertical = orientation === 'vertical';\n const boxOuterWidth = scales.xPrimary.bandwidth();\n const boxWidth = calculateBarWidth(layerData, boxOuterWidth);\n const primaryKeys = scales.xPrimary.domain();\n const secondaryKeys = scales.xSecondary.domain().reverse();\n\n const needsAreas = isSecondaryGroupedAes(layerData.aes.fillColor) || typeof layerData.aes.fillColor === 'string';\n const areas = needsAreas ? getAreas(\n scales,\n boxWidth,\n boxOuterWidth,\n primaryKeys,\n secondaryKeys,\n isVertical,\n layerData.geoms[facetKey]\n ) : [];\n\n return (\n <g>\n <g>\n {needsAreas && areas.map(({secondaryKey, pathD}) => (\n <path\n key={secondaryKey}\n d={pathD}\n fill={getAesValue(scales, 'fillColor', layerData.aes.fillColor, primaryKeys[0], secondaryKey)}\n opacity={layerData.aes.areaOpacity * (selectedAreaKey !== null && secondaryKey !== selectedAreaKey ? 0.5 : 1)}\n onMouseEnter={() => setSelectedAreaKey(secondaryKey)}\n onMouseLeave={() => setSelectedAreaKey(null)}\n />\n ))}\n </g>\n <g>\n {layerData.meta.showBars && (layerData as StackedAreaData).geoms[facetKey].map(geom => (\n <StackedBarElement\n key={geom.key}\n facetKey={facetKey}\n geom={geom}\n elementsAmount={layerData.geoms[facetKey].length}\n scales={scales}\n orientation={orientation}\n aes={{\n ...layerData.aes,\n width: boxWidth,\n opacity: layerData.aes.barsOpacity\n }}\n normalize={layerData.meta.normalize}\n sideDistances={sideDistances}\n showTooltips={showTooltips}\n secondaryGrouping={secondaryGrouping}\n tooltipsData={tooltipsData}\n activeElementContainer={activeElementContainer}\n tooltipsContainer={tooltipsContainer}\n activeKey={selectedAreaKey}\n onSectionHover={setSelectedAreaKey}\n />\n ))}\n </g>\n </g>\n );\n}\n"],"names":["isSecondaryGroupedAes","value","getAesValue","scales","field","primaryGrouping","secondaryGrouping","getAreas","barWidth","bandWidth","primaryKeys","secondaryKeys","isVertical","bars","offsetX","ys","bar","yValues","currentHeight","secondaryKey","height","_a","points","yMap","idx","primaryKey","x","y1","y2","p1","p2","pathD","area","curveBumpX","d","curveBumpY","o","calculateBarWidth","layerData","bandwidth","StackedAreaElement","facetKey","orientation","sideDistances","showTooltips","activeElementContainer","tooltipsContainer","tooltipsData","selectedAreaKey","setSelectedAreaKey","useState","boxOuterWidth","boxWidth","needsAreas","areas","g","jsx","geom","StackedBarElement"],"mappings":"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","x_google_ignoreList":[0]}
|
|
1
|
+
{"version":3,"file":"StackedAreaElement.js","sources":["../../../../../../../../node_modules/@milaboratories/miplots4/src/discrete/components/layers/StackedAreaElement.tsx"],"sourcesContent":["import {area, curveBumpX, curveBumpY} from 'd3-shape';\nimport React, { useState } from 'react';\nimport type {TooltipsData} from '../../../common/Tooltip';\nimport type {AesItem, GroupingData, InheritAesDiscrete, Orientation} from '../../../types';\nimport type {StackedBar} from '../../layers';\nimport type {StackedAreaData} from '../../layers/types';\nimport type {ChartScales} from '../types';\nimport {StackedBarElement} from './StackedBarElement';\n\ninterface StackedAreaProps {\n facetKey: string;\n scales: ChartScales;\n layerData: StackedAreaData;\n orientation: Orientation;\n sideDistances: {\n left: number;\n right: number;\n top: number;\n bottom: number;\n };\n showTooltips: boolean;\n secondaryGrouping: GroupingData;\n tooltipsData: TooltipsData<unknown>;\n activeElementContainer?: Element;\n tooltipsContainer?: Element;\n}\n\nfunction isSecondaryGroupedAes (value: string | InheritAesDiscrete) {\n return value && typeof value === 'object' && 'type' in value && value.type === 'secondaryGrouping';\n}\n\nfunction getAesValue<ValueType>(\n scales: ChartScales,\n field: keyof AesItem,\n value: ValueType | InheritAesDiscrete,\n primaryGrouping: string,\n secondaryGrouping: string\n): ValueType {\n if (value && typeof value === 'object' && 'type' in value) {\n if (value.type === 'primaryGrouping') {\n return scales.xPrimaryAes(primaryGrouping)[field] as ValueType;\n }\n if (value.type === 'secondaryGrouping') {\n return scales.xSecondaryAes(secondaryGrouping)[field] as ValueType;\n }\n }\n return value as ValueType;\n}\n\nfunction getAreas(\n scales: ChartScales,\n barWidth: number,\n bandWidth: number,\n primaryKeys: string[],\n secondaryKeys: string[],\n isVertical: boolean,\n bars: StackedBar[],\n) {\n const offsetX = (bandWidth - barWidth) / 2;\n const ys = bars.reduce((res, bar) => {\n const yValues: Record<string, {y1: number, y2: number}> = {};\n let currentHeight = 0;\n secondaryKeys.forEach(secondaryKey => {\n const height = bar.valuesMap[secondaryKey]?.height ?? 0;\n yValues[secondaryKey] = {\n y1: currentHeight,\n y2: currentHeight + height,\n };\n currentHeight += height;\n });\n res[bar.primaryGrouping] = yValues;\n return res;\n }, {} as Record<string, Record<string, {y1: number, y2: number}>>);\n\n return secondaryKeys.map((secondaryKey) => {\n const points:[number, number, number][] = primaryKeys.flatMap((primaryKey) => {\n const yMap = ys[primaryKey];\n const x = scales.xPrimary(primaryKey) ?? 0;\n const y1 = scales.y(yMap[secondaryKey].y1);\n const y2 = scales.y(yMap[secondaryKey].y2);\n const p1:[number, number, number] = [x + offsetX, y1, y2];\n const p2:[number, number, number] = [x + bandWidth - offsetX, y1, y2];\n return isVertical ? [p1, p2] : [p2, p1];\n });\n\n const pathD = (isVertical ? (\n area<[number, number, number]>()\n .curve(curveBumpX)\n .x(d => d[0])\n .y0(d => d[1])\n .y1(d => d[2])(points)\n ) :\n area<[number, number, number]>()\n .curve(curveBumpY)\n .y(d => d[0])\n .x0(d => d[1])\n .x1(d => d[2])(points)) ?? '';\n return {secondaryKey, pathD};\n });\n}\n\nfunction calculateBarWidth (\n layerData: StackedAreaData,\n bandwidth: number\n) {\n if (!layerData.meta.showBars) {\n return 0;\n }\n return layerData.aes.barWidth === 'auto' ? bandwidth * 0.2 : Math.min(bandwidth, layerData.aes.barWidth);\n}\n\nexport function StackedAreaElement({\n facetKey,\n scales,\n orientation,\n layerData,\n sideDistances,\n showTooltips,\n secondaryGrouping,\n activeElementContainer,\n tooltipsContainer,\n tooltipsData,\n}: StackedAreaProps) {\n const [selectedAreaKey, setSelectedAreaKey] = useState<string | null>(null);\n const isVertical = orientation === 'vertical';\n const boxOuterWidth = scales.xPrimary.bandwidth();\n const boxWidth = calculateBarWidth(layerData, boxOuterWidth);\n const primaryKeys = scales.xPrimary.domain();\n const secondaryKeys = scales.xSecondary.domain().reverse();\n\n const needsAreas = isSecondaryGroupedAes(layerData.aes.fillColor) || typeof layerData.aes.fillColor === 'string';\n const areas = needsAreas ? getAreas(\n scales,\n boxWidth,\n boxOuterWidth,\n primaryKeys,\n secondaryKeys,\n isVertical,\n layerData.geoms[facetKey]\n ) : [];\n\n return (\n <g>\n <g>\n {needsAreas && areas.map(({secondaryKey, pathD}) => (\n <path\n key={secondaryKey}\n d={pathD}\n fill={getAesValue(scales, 'fillColor', layerData.aes.fillColor, primaryKeys[0], secondaryKey)}\n opacity={layerData.aes.areaOpacity * (selectedAreaKey !== null && secondaryKey !== selectedAreaKey ? 0.5 : 1)}\n onMouseEnter={() => setSelectedAreaKey(secondaryKey)}\n onMouseLeave={() => setSelectedAreaKey(null)}\n />\n ))}\n </g>\n <g>\n {layerData.meta.showBars && (layerData as StackedAreaData).geoms[facetKey].map(geom => (\n <StackedBarElement\n key={geom.key}\n facetKey={facetKey}\n geom={geom}\n elementsAmount={layerData.geoms[facetKey].length}\n scales={scales}\n orientation={orientation}\n aes={{\n ...layerData.aes,\n width: boxWidth,\n opacity: layerData.aes.barsOpacity\n }}\n normalize={layerData.meta.normalize}\n sideDistances={sideDistances}\n showTooltips={showTooltips}\n secondaryGrouping={secondaryGrouping}\n tooltipsData={tooltipsData}\n activeElementContainer={activeElementContainer}\n tooltipsContainer={tooltipsContainer}\n activeKey={selectedAreaKey}\n onSectionHover={setSelectedAreaKey}\n />\n ))}\n </g>\n </g>\n );\n}\n"],"names":["isSecondaryGroupedAes","value","getAesValue","scales","field","primaryGrouping","secondaryGrouping","getAreas","barWidth","bandWidth","primaryKeys","secondaryKeys","isVertical","bars","offsetX","ys","res","bar","yValues","currentHeight","secondaryKey","height","_a","points","primaryKey","yMap","x","y1","y2","p1","p2","pathD","area","curveBumpX","d","curveBumpY","calculateBarWidth","layerData","bandwidth","StackedAreaElement","facetKey","orientation","sideDistances","showTooltips","activeElementContainer","tooltipsContainer","tooltipsData","selectedAreaKey","setSelectedAreaKey","useState","boxOuterWidth","boxWidth","needsAreas","areas","g","jsx","geom","StackedBarElement"],"mappings":"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","x_google_ignoreList":[0]}
|
package/dist/node_modules/@milaboratories/miplots4/dist/scatterplot/utils/createLegendInfo.js
CHANGED
|
@@ -13,11 +13,11 @@ const C = /* @__PURE__ */ (() => {
|
|
|
13
13
|
})();
|
|
14
14
|
function I(e, i, u) {
|
|
15
15
|
C.clear();
|
|
16
|
-
const l = u && Object.keys(u).length > 0, t = i.dotFill, r = t && t.length > 0, d = i.lineColor,
|
|
17
|
-
return (
|
|
18
|
-
var
|
|
19
|
-
const g = l ? (
|
|
20
|
-
return p === "dotFill" && r ? t[C.getIndex(e,
|
|
16
|
+
const l = u && Object.keys(u).length > 0, t = i.dotFill, r = t && t.length > 0, d = i.lineColor, f = d && d.length > 0;
|
|
17
|
+
return (s, p) => {
|
|
18
|
+
var c;
|
|
19
|
+
const g = l ? (c = u[s]) == null ? void 0 : c[p] : void 0;
|
|
20
|
+
return p === "dotFill" && r ? t[C.getIndex(e, s) % t.length] ?? g : p === "lineColor" && f ? d[C.getIndex(e, s) % d.length] ?? g : g;
|
|
21
21
|
};
|
|
22
22
|
}
|
|
23
23
|
function A(e) {
|
|
@@ -25,33 +25,33 @@ function A(e) {
|
|
|
25
25
|
}
|
|
26
26
|
function x(e, i, u) {
|
|
27
27
|
return i.reduce((l, t) => {
|
|
28
|
-
const r = t.columnName, d = t.order,
|
|
28
|
+
const r = t.columnName, d = t.order, f = (o) => r.valueLabels ? e.getColumnValueCategory(r.valueLabels, o) : void 0, s = /* @__PURE__ */ new Set(), p = {};
|
|
29
29
|
u.forEach((o) => {
|
|
30
30
|
o.aes && Object.entries(o.aes).forEach(([v, n]) => {
|
|
31
|
-
A(n) && n.value === r.value && (
|
|
31
|
+
A(n) && n.value === r.value && (s.add(v), p[v] = n.palette);
|
|
32
32
|
});
|
|
33
33
|
});
|
|
34
|
-
let
|
|
35
|
-
if (
|
|
36
|
-
const o = e.getColumnCategories(r.value);
|
|
34
|
+
let c = {}, g = [];
|
|
35
|
+
if (s.has("dotFill") || s.has("dotShape")) {
|
|
36
|
+
const o = e.getColumnCategories(r.value, !1);
|
|
37
37
|
if (o.length < m) {
|
|
38
|
-
|
|
39
|
-
const
|
|
40
|
-
return n[a] = h
|
|
41
|
-
},
|
|
38
|
+
c = o.reduce((n, a) => {
|
|
39
|
+
const h = e.getColumnCategoryRowIndex(r.value, a);
|
|
40
|
+
return n[a] = f(h) ?? a, n;
|
|
41
|
+
}, c);
|
|
42
42
|
const v = o.reduce((n, a) => (n[a] = (d == null ? void 0 : d.indexOf(a)) ?? -1, n), {});
|
|
43
43
|
g = o.sort((n, a) => {
|
|
44
|
-
var
|
|
45
|
-
return v[n] !== v[a] ? v[n] - v[a] : ((
|
|
44
|
+
var h;
|
|
45
|
+
return v[n] !== v[a] ? v[n] - v[a] : ((h = c[n]) == null ? void 0 : h.localeCompare(c[a] ?? "", "en", { numeric: !0 })) ?? 0;
|
|
46
46
|
});
|
|
47
47
|
} else
|
|
48
48
|
g = o;
|
|
49
49
|
}
|
|
50
50
|
return l[r.value] = {
|
|
51
51
|
values: g,
|
|
52
|
-
usedAes: [...
|
|
52
|
+
usedAes: [...s],
|
|
53
53
|
aesMap: I(r, p, t.inheritedAes),
|
|
54
|
-
labels:
|
|
54
|
+
labels: c
|
|
55
55
|
}, l;
|
|
56
56
|
}, {});
|
|
57
57
|
}
|
package/dist/node_modules/@milaboratories/miplots4/dist/scatterplot/utils/createLegendInfo.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createLegendInfo.js","sources":["../../../../../../../node_modules/@milaboratories/miplots4/src/scatterplot/utils/createLegendInfo.ts"],"sourcesContent":["import { MAX_SHOWN_UNIQUE_VALUES_IN_LABELS } from '../../constants';\nimport type { DataFrame } from '../../DataFrame';\nimport type {AesRecord} from '../../types';\nimport type {\n AesItem,\n Category,\n ColumnName,\n ContinuousAesFromColumn,\n InheritAesScatterplot,\n ScatterplotLayer,\n ScatterplotLegendInfo\n} from '../../types';\nimport type { ScatterplotSettingsImpl } from '../ScatterplotSettingsImpl';\n\nconst categoryIndexer = (() => {\n const map = new Map<string, Map<Category, number>>();\n const clear = () => map.clear();\n const getIndex = (columnName: ColumnName, category: Category): number => {\n let categoryMap = map.get(columnName.value);\n if (categoryMap === undefined) {\n categoryMap = new Map();\n map.set(columnName.value, categoryMap);\n }\n let index = categoryMap.get(category);\n if (index === undefined) {\n index = categoryMap.size;\n categoryMap.set(category, index);\n }\n return index;\n };\n\n return {\n clear,\n getIndex,\n };\n})();\n\nexport function addPalettesToAesMapping(\n columnName: ColumnName,\n usedAesFromPalettes: Partial<Record<keyof AesItem, string[]>>,\n inheritedAes?: AesRecord\n) {\n categoryIndexer.clear();\n const hasInheritedAes = inheritedAes && Object.keys(inheritedAes).length > 0;\n const dotFill = usedAesFromPalettes['dotFill'];\n const hasDotFill = dotFill && dotFill.length > 0;\n const lineColor = usedAesFromPalettes['lineColor'];\n const hasLineColor = lineColor && lineColor.length > 0;\n const getAesField = (category: Category, field: keyof AesItem) => {\n const inheritedResult = hasInheritedAes ? inheritedAes[category]?.[field] : undefined;\n \n if (field === 'dotFill' && hasDotFill) {\n return dotFill[categoryIndexer.getIndex(columnName, category) % dotFill.length] ?? inheritedResult;\n }\n if (field === 'lineColor' && hasLineColor) {\n return lineColor[categoryIndexer.getIndex(columnName, category) % lineColor.length] ?? inheritedResult;\n }\n \n return inheritedResult;\n };\n\n return getAesField;\n}\n\nfunction isInheritMapping<T extends (string | number)>(value:T | InheritAesScatterplot | ContinuousAesFromColumn<T>):value is InheritAesScatterplot {\n return typeof value === 'object' && 'type' in value && value.type === 'grouping';\n}\nexport function createLegendInfo(\n data: DataFrame,\n grouping: ScatterplotSettingsImpl['grouping'],\n layers: ScatterplotLayer[],\n): ScatterplotLegendInfo {\n return grouping.reduce((res: ScatterplotLegendInfo, groupingElement) => {\n // TODO: remove String conversion\n const column = groupingElement.columnName;\n const order = groupingElement.order;\n const getValueLabel = (index: number) => {\n return column.valueLabels\n ? data.getColumnValueCategory(column.valueLabels, index)\n : undefined;\n };\n\n const usedAes = new Set<keyof AesItem>();\n const usedAesFromPalettes:Partial<Record<keyof AesItem, string[]>> = {}; // if there is palette in mapping then\n layers.forEach(layer => {\n if (!layer.aes) return;\n \n Object.entries(layer.aes).forEach(([key, value]) => {\n if (!(isInheritMapping(value) && value.value === column.value)) return;\n \n usedAes.add(key as keyof AesItem);\n usedAesFromPalettes[key as keyof AesItem] = value.palette;\n });\n });\n let labels: Record<Category, string> = {};\n let values: Category[] = [];\n if (usedAes.has('dotFill') || usedAes.has('dotShape')) {\n const categories = data.getColumnCategories(column.value);\n if (categories.length < MAX_SHOWN_UNIQUE_VALUES_IN_LABELS) {\n labels = categories.reduce((res, category) => {\n const index = data.getColumnCategoryRowIndex(column.value, category);\n res[category] = getValueLabel(index) ?? category;\n return res;\n }, labels);\n const sortWeights = categories.reduce((res, v) => {\n res[v] = order?.indexOf(v) ?? -1;\n return res;\n }, {} as Record<string, number>);\n values = categories.sort((a, b) => {\n if (sortWeights[a] !== sortWeights[b]) {\n return sortWeights[a] - sortWeights[b];\n }\n return labels[a]?.localeCompare(labels[b] ?? '', 'en', {numeric: true}) ?? 0;\n });\n } else {\n values = categories;\n }\n }\n res[column.value] = {\n values,\n usedAes: [...usedAes],\n aesMap: addPalettesToAesMapping(column, usedAesFromPalettes, groupingElement.inheritedAes),\n labels,\n };\n return res;\n }, {});\n}"],"names":["categoryIndexer","map","columnName","category","categoryMap","index","addPalettesToAesMapping","usedAesFromPalettes","inheritedAes","hasInheritedAes","dotFill","hasDotFill","lineColor","hasLineColor","field","inheritedResult","_a","isInheritMapping","value","createLegendInfo","data","grouping","layers","res","groupingElement","column","order","getValueLabel","usedAes","layer","key","labels","values","categories","MAX_SHOWN_UNIQUE_VALUES_IN_LABELS","sortWeights","v","a","b"],"mappings":";AAcA,MAAMA,IAAmB,uBAAM;AAC3B,QAAMC,wBAAU,IAAA;AAgBhB,SAAO;AAAA,IACH,OAhBU,MAAMA,EAAI,MAAA;AAAA,IAiBpB,UAhBa,CAACC,GAAwBC,MAA+B;AACrE,UAAIC,IAAcH,EAAI,IAAIC,EAAW,KAAK;AACtCE,MAAAA,MAAgB,WAChBA,IAAAA,oBAAkB,IAAA,GAClBH,EAAI,IAAIC,EAAW,OAAOE,CAAW;AAEzC,UAAIC,IAAQD,EAAY,IAAID,CAAQ;AACpC,aAAIE,MAAU,WACVA,IAAQD,EAAY,MACpBA,EAAY,IAAID,GAAUE,CAAK,IAE5BA;AAAAA,IACX;AAAA,EAAA;AAMJ,GAAA;AAEO,SAASC,EACZJ,GACAK,GACAC,GACF;AACER,EAAAA,EAAgB,MAAA;AAChB,QAAMS,IAAkBD,KAAgB,OAAO,KAAKA,CAAY,EAAE,SAAS,GACrEE,IAAUH,EAAoB,SAC9BI,IAAaD,KAAWA,EAAQ,SAAS,GACzCE,IAAYL,EAAoB,WAChCM,IAAeD,KAAaA,EAAU,SAAS;AAcrD,SAboB,CAACT,GAAoBW,MAAyB;;AAC9D,UAAMC,IAAkBN,KAAkBO,IAAAR,EAAaL,CAAQ,MAArB,OAAA,SAAAa,EAAyBF,CAAAA,IAAS;AAE5E,WAAIA,MAAU,aAAaH,IAChBD,EAAQV,EAAgB,SAASE,GAAYC,CAAQ,IAAIO,EAAQ,MAAM,KAAKK,IAEnFD,MAAU,eAAeD,IAClBD,EAAUZ,EAAgB,SAASE,GAAYC,CAAQ,IAAIS,EAAU,MAAM,KAAKG,IAGpFA;AAAAA,EACX;AAGJ;AAEA,SAASE,EAA8CC,GAA6F;AAChJ,SAAO,OAAOA,KAAU,YAAY,UAAUA,KAASA,EAAM,SAAS;AAC1E;AACO,SAASC,EACZC,GACAC,GACAC,GACqB;AACrB,SAAOD,EAAS,OAAO,CAACE,GAA4BC,MAAoB;AAEpE,UAAMC,IAASD,EAAgB,YACzBE,IAAQF,EAAgB,OACxBG,IAAgB,CAACtB,MACZoB,EAAO,cACZL,EAAK,uBAAuBK,EAAO,aAAapB,CAAK,IACrD,QAGAuB,IAAAA,oBAAc,OACdrB,IAA+D,CAAA;AACrEe,IAAAA,EAAO,QAAQ,CAAAO,MAAS;AACfA,QAAM,OAEX,OAAO,QAAQA,EAAM,GAAG,EAAE,QAAQ,CAAC,CAACC,GAAKZ,CAAK,MAAM;AAC1CD,UAAiBC,CAAK,KAAKA,EAAM,UAAUO,EAAO,UAExDG,EAAQ,IAAIE,CAAoB,GAChCvB,EAAoBuB,CAAoB,IAAIZ,EAAM;AAAA,MACtD,CAAC;AAAA,IACL,CAAC;AACD,QAAIa,IAAmC,IACnCC,IAAqB,CAAA;AACzB,QAAIJ,EAAQ,IAAI,SAAS,KAAKA,EAAQ,IAAI,UAAU,GAAG;AACnD,YAAMK,IAAab,EAAK,oBAAoBK,EAAO,
|
|
1
|
+
{"version":3,"file":"createLegendInfo.js","sources":["../../../../../../../node_modules/@milaboratories/miplots4/src/scatterplot/utils/createLegendInfo.ts"],"sourcesContent":["import { MAX_SHOWN_UNIQUE_VALUES_IN_LABELS } from '../../constants';\nimport type { DataFrame } from '../../DataFrame';\nimport type {AesRecord} from '../../types';\nimport type {\n AesItem,\n Category,\n ColumnName,\n ContinuousAesFromColumn,\n InheritAesScatterplot,\n ScatterplotLayer,\n ScatterplotLegendInfo\n} from '../../types';\nimport type { ScatterplotSettingsImpl } from '../ScatterplotSettingsImpl';\n\nconst categoryIndexer = (() => {\n const map = new Map<string, Map<Category, number>>();\n const clear = () => map.clear();\n const getIndex = (columnName: ColumnName, category: Category): number => {\n let categoryMap = map.get(columnName.value);\n if (categoryMap === undefined) {\n categoryMap = new Map();\n map.set(columnName.value, categoryMap);\n }\n let index = categoryMap.get(category);\n if (index === undefined) {\n index = categoryMap.size;\n categoryMap.set(category, index);\n }\n return index;\n };\n\n return {\n clear,\n getIndex,\n };\n})();\n\nexport function addPalettesToAesMapping(\n columnName: ColumnName,\n usedAesFromPalettes: Partial<Record<keyof AesItem, string[]>>,\n inheritedAes?: AesRecord\n) {\n categoryIndexer.clear();\n const hasInheritedAes = inheritedAes && Object.keys(inheritedAes).length > 0;\n const dotFill = usedAesFromPalettes['dotFill'];\n const hasDotFill = dotFill && dotFill.length > 0;\n const lineColor = usedAesFromPalettes['lineColor'];\n const hasLineColor = lineColor && lineColor.length > 0;\n const getAesField = (category: Category, field: keyof AesItem) => {\n const inheritedResult = hasInheritedAes ? inheritedAes[category]?.[field] : undefined;\n \n if (field === 'dotFill' && hasDotFill) {\n return dotFill[categoryIndexer.getIndex(columnName, category) % dotFill.length] ?? inheritedResult;\n }\n if (field === 'lineColor' && hasLineColor) {\n return lineColor[categoryIndexer.getIndex(columnName, category) % lineColor.length] ?? inheritedResult;\n }\n \n return inheritedResult;\n };\n\n return getAesField;\n}\n\nfunction isInheritMapping<T extends (string | number)>(value:T | InheritAesScatterplot | ContinuousAesFromColumn<T>):value is InheritAesScatterplot {\n return typeof value === 'object' && 'type' in value && value.type === 'grouping';\n}\nexport function createLegendInfo(\n data: DataFrame,\n grouping: ScatterplotSettingsImpl['grouping'],\n layers: ScatterplotLayer[],\n): ScatterplotLegendInfo {\n return grouping.reduce((res: ScatterplotLegendInfo, groupingElement) => {\n // TODO: remove String conversion\n const column = groupingElement.columnName;\n const order = groupingElement.order;\n const getValueLabel = (index: number) => {\n return column.valueLabels\n ? data.getColumnValueCategory(column.valueLabels, index)\n : undefined;\n };\n\n const usedAes = new Set<keyof AesItem>();\n const usedAesFromPalettes:Partial<Record<keyof AesItem, string[]>> = {}; // if there is palette in mapping then\n layers.forEach(layer => {\n if (!layer.aes) return;\n \n Object.entries(layer.aes).forEach(([key, value]) => {\n if (!(isInheritMapping(value) && value.value === column.value)) return;\n \n usedAes.add(key as keyof AesItem);\n usedAesFromPalettes[key as keyof AesItem] = value.palette;\n });\n });\n let labels: Record<Category, string> = {};\n let values: Category[] = [];\n if (usedAes.has('dotFill') || usedAes.has('dotShape')) {\n const categories = data.getColumnCategories(column.value, false);\n if (categories.length < MAX_SHOWN_UNIQUE_VALUES_IN_LABELS) {\n labels = categories.reduce((res, category) => {\n const index = data.getColumnCategoryRowIndex(column.value, category);\n res[category] = getValueLabel(index) ?? category;\n return res;\n }, labels);\n const sortWeights = categories.reduce((res, v) => {\n res[v] = order?.indexOf(v) ?? -1;\n return res;\n }, {} as Record<string, number>);\n values = categories.sort((a, b) => {\n if (sortWeights[a] !== sortWeights[b]) {\n return sortWeights[a] - sortWeights[b];\n }\n return labels[a]?.localeCompare(labels[b] ?? '', 'en', {numeric: true}) ?? 0;\n });\n } else {\n values = categories;\n }\n }\n res[column.value] = {\n values,\n usedAes: [...usedAes],\n aesMap: addPalettesToAesMapping(column, usedAesFromPalettes, groupingElement.inheritedAes),\n labels,\n };\n return res;\n }, {});\n}"],"names":["categoryIndexer","map","columnName","category","categoryMap","index","addPalettesToAesMapping","usedAesFromPalettes","inheritedAes","hasInheritedAes","dotFill","hasDotFill","lineColor","hasLineColor","field","inheritedResult","_a","isInheritMapping","value","createLegendInfo","data","grouping","layers","res","groupingElement","column","order","getValueLabel","usedAes","layer","key","labels","values","categories","MAX_SHOWN_UNIQUE_VALUES_IN_LABELS","sortWeights","v","a","b"],"mappings":"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","x_google_ignoreList":[0]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@milaboratories/graph-maker",
|
|
3
|
-
"version": "1.1.
|
|
3
|
+
"version": "1.1.150",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"main": "dist/lib.js",
|
|
6
6
|
"types": "dist/lib.d.ts",
|
|
@@ -37,7 +37,7 @@
|
|
|
37
37
|
"dependencies": {
|
|
38
38
|
"@ag-grid-community/core": "^32.3.3",
|
|
39
39
|
"@milaboratories/helpers": "^1.6.15",
|
|
40
|
-
"@milaboratories/miplots4": "^1.0.
|
|
40
|
+
"@milaboratories/miplots4": "^1.0.141",
|
|
41
41
|
"@milaboratories/pf-plots": "^1.1.30",
|
|
42
42
|
"@platforma-sdk/model": "^1.42.21",
|
|
43
43
|
"@platforma-sdk/ui-vue": "^1.39.16",
|