@milaboratories/graph-maker 1.1.152 → 1.1.154
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/FormWrapper.vue.d.ts +2 -0
- package/dist/GraphMaker/components/AesSettings/FormWrapper.vue.d.ts.map +1 -1
- package/dist/GraphMaker/components/AesSettings/FormWrapper.vue.js +18 -16
- package/dist/GraphMaker/components/AesSettings/FormWrapper.vue.js.map +1 -1
- package/dist/GraphMaker/components/Chart.vue.d.ts.map +1 -1
- package/dist/GraphMaker/components/Chart.vue.js +177 -120
- package/dist/GraphMaker/components/Chart.vue.js.map +1 -1
- package/dist/GraphMaker/forms/AxesSettingsForm/DiscreteAxesSettingsForm.vue.d.ts.map +1 -1
- package/dist/GraphMaker/forms/AxesSettingsForm/DiscreteAxesSettingsForm.vue.js +198 -192
- package/dist/GraphMaker/forms/AxesSettingsForm/DiscreteAxesSettingsForm.vue.js.map +1 -1
- package/dist/GraphMaker/forms/DataMappingForm/DendroForm.vue.d.ts.map +1 -1
- package/dist/GraphMaker/forms/DataMappingForm/DendroForm.vue.js +38 -36
- package/dist/GraphMaker/forms/DataMappingForm/DendroForm.vue.js.map +1 -1
- package/dist/GraphMaker/forms/DataMappingForm/useBaskets.d.ts.map +1 -1
- package/dist/GraphMaker/forms/DataMappingForm/useBaskets.js +15 -13
- package/dist/GraphMaker/forms/DataMappingForm/useBaskets.js.map +1 -1
- package/dist/GraphMaker/store.d.ts.map +1 -1
- package/dist/GraphMaker/store.js +68 -66
- package/dist/GraphMaker/store.js.map +1 -1
- package/dist/GraphMaker/types.d.ts +1 -0
- package/dist/GraphMaker/types.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/GraphMaker/store.js
CHANGED
|
@@ -1,37 +1,38 @@
|
|
|
1
1
|
import { deepClone as H } from "../node_modules/@milaboratories/helpers/dist/objects.js";
|
|
2
2
|
import { getControllerByType as A, getInitialStateByType as j } from "../node_modules/@milaboratories/pf-plots/dist/index.js";
|
|
3
|
-
import { ref as
|
|
3
|
+
import { ref as d, computed as T, toRaw as w, watch as D, provide as k, reactive as K, inject as z } from "vue";
|
|
4
4
|
import { getInitialAxesSettings as J, getInitialLayersSettings as O, getInitialStatisticsState as P, getInitialTemplate as V } from "./constantsCommon.js";
|
|
5
5
|
import { updateDataBindAes as W } from "./dataBindAes.js";
|
|
6
6
|
import { notEmpty as q } from "./helpers.js";
|
|
7
|
-
import { storeKey as
|
|
7
|
+
import { storeKey as M } from "./keys.js";
|
|
8
8
|
import "./constantsAesthetic.js";
|
|
9
9
|
import { loadDataForPlot as Q } from "./utils/createChartSettingsForRender/composeChartSettings.js";
|
|
10
10
|
import { calculateDiscreteGroups as x } from "./utils/calculateDiscreteGroups.js";
|
|
11
11
|
import { addFixedOptionsToState as X } from "./utils/addFixedOptionsToState.js";
|
|
12
12
|
import { loadDefaultSources as E } from "./utils/loadDefaultSources.js";
|
|
13
|
-
import { copyJSON as
|
|
13
|
+
import { copyJSON as b } from "./utils/copyJSON.js";
|
|
14
14
|
import { getUsedAesInMapping as Y } from "./utils/getUsedAesInMapping.js";
|
|
15
15
|
import { getUniqueValuesFromReadyChartData as Z, loadFilterLabelsForTitle as _ } from "./utils/loadUniqueValuesToSave.js";
|
|
16
|
-
|
|
17
|
-
|
|
16
|
+
import { tabKeys as $ } from "./forms/index.js";
|
|
17
|
+
function R(t, e) {
|
|
18
|
+
const r = b(j(t));
|
|
18
19
|
if ((e == null ? void 0 : e.type) !== t)
|
|
19
|
-
return
|
|
20
|
-
const
|
|
20
|
+
return r;
|
|
21
|
+
const p = b(e);
|
|
21
22
|
return {
|
|
22
|
-
...
|
|
23
|
-
...
|
|
23
|
+
...r,
|
|
24
|
+
...p,
|
|
24
25
|
components: {
|
|
25
|
-
...
|
|
26
|
-
...
|
|
26
|
+
...r.components,
|
|
27
|
+
...p.components
|
|
27
28
|
}
|
|
28
29
|
};
|
|
29
30
|
}
|
|
30
|
-
function
|
|
31
|
-
return
|
|
31
|
+
function tt(t, e) {
|
|
32
|
+
return K({
|
|
32
33
|
chartType: e,
|
|
33
34
|
// from pf-plots
|
|
34
|
-
optionsState:
|
|
35
|
+
optionsState: R(e, t.optionsState),
|
|
35
36
|
// contains user selected inputs
|
|
36
37
|
dataStateKey: H(t.dataStateKey),
|
|
37
38
|
//local form states, updates directly in forms
|
|
@@ -40,19 +41,20 @@ function R(t, e) {
|
|
|
40
41
|
layersSettings: O(t.layersSettings),
|
|
41
42
|
axesSettings: J(e, t.axesSettings),
|
|
42
43
|
//common aesthetics data mapped on columns/axes values
|
|
43
|
-
dataBindAes:
|
|
44
|
+
dataBindAes: b(t.dataBindAes ?? {}),
|
|
44
45
|
chartScale: t.zoomState ?? 100,
|
|
45
46
|
lassoControlsState: null,
|
|
46
47
|
currentTab: null,
|
|
48
|
+
tabDefaultState: $().reduce((r, p) => (r[p] = {}, r), {}),
|
|
47
49
|
dendroInfoByClick: null,
|
|
48
50
|
dendroSelectedNodeId: null,
|
|
49
51
|
showTooltipHint: !1
|
|
50
52
|
});
|
|
51
53
|
}
|
|
52
|
-
function
|
|
54
|
+
function et(t, e, r, p, f, v, m, a) {
|
|
53
55
|
return {
|
|
54
56
|
reactive: t,
|
|
55
|
-
loading:
|
|
57
|
+
loading: K({
|
|
56
58
|
initialInputGuide: !0,
|
|
57
59
|
initialCharts: !0,
|
|
58
60
|
initialDefaults: !0,
|
|
@@ -61,69 +63,69 @@ function tt(t, e, c, d, f, v, m, a) {
|
|
|
61
63
|
dendroTableData: !1
|
|
62
64
|
}),
|
|
63
65
|
commonHelpersData: {
|
|
64
|
-
primaryGroups:
|
|
66
|
+
primaryGroups: T(
|
|
65
67
|
() => x(
|
|
66
68
|
t.optionsState,
|
|
67
69
|
v.value,
|
|
68
70
|
"primaryGrouping"
|
|
69
71
|
)
|
|
70
72
|
),
|
|
71
|
-
secondaryGroups:
|
|
73
|
+
secondaryGroups: T(
|
|
72
74
|
() => x(
|
|
73
75
|
t.optionsState,
|
|
74
76
|
v.value,
|
|
75
77
|
"secondaryGrouping"
|
|
76
78
|
)
|
|
77
79
|
),
|
|
78
|
-
usedAesInMapping:
|
|
80
|
+
usedAesInMapping: T(
|
|
79
81
|
() => Y(
|
|
80
82
|
t.chartType,
|
|
81
83
|
t.template,
|
|
82
84
|
t.layersSettings,
|
|
83
85
|
t.statisticsSettings,
|
|
84
86
|
t.optionsState,
|
|
85
|
-
|
|
87
|
+
r.value
|
|
86
88
|
)
|
|
87
89
|
),
|
|
88
90
|
dendroTableData: f
|
|
89
91
|
},
|
|
90
92
|
controller: A(t.chartType),
|
|
91
93
|
columnsDataStore: e,
|
|
92
|
-
inputGuide:
|
|
93
|
-
chartData:
|
|
94
|
+
inputGuide: r,
|
|
95
|
+
chartData: p,
|
|
94
96
|
uniqueValuesData: v,
|
|
95
97
|
filterLabelsInfo: m,
|
|
96
98
|
readonlyInputs: a
|
|
97
99
|
};
|
|
98
100
|
}
|
|
99
|
-
function
|
|
100
|
-
const a =
|
|
101
|
-
|
|
101
|
+
function yt(t, e, r, p, f, v, m) {
|
|
102
|
+
const a = tt(t, r), g = A(a.chartType), y = d(A(a.chartType).getEmptyInputGuide(a.optionsState)), B = d(null), h = d({}), F = d({}), N = d(null), o = T(() => et(a, w(e.value), y, B, N, h, F, m));
|
|
103
|
+
D([
|
|
102
104
|
() => e.value,
|
|
103
|
-
() =>
|
|
105
|
+
() => p.value
|
|
104
106
|
], async ([l, i]) => {
|
|
105
107
|
if (!i || !l || !o.value.loading.initialDefaults)
|
|
106
108
|
return;
|
|
107
109
|
o.value.loading.initialDefaults = !1, o.value.loading.initialInputGuide = !0;
|
|
108
|
-
const n =
|
|
109
|
-
var
|
|
110
|
-
return ((
|
|
110
|
+
const n = b(a.optionsState.components), u = i.filter((s) => {
|
|
111
|
+
var c;
|
|
112
|
+
return ((c = a.optionsState.components[s.inputName]) == null ? void 0 : c.selectorStates.length) === 0 || (m == null ? void 0 : m.includes(s.inputName));
|
|
111
113
|
});
|
|
112
|
-
if (
|
|
114
|
+
if (u.length === 0)
|
|
113
115
|
return;
|
|
114
|
-
|
|
115
|
-
n[
|
|
116
|
+
u.forEach((s) => {
|
|
117
|
+
n[s.inputName].selectorStates = [];
|
|
116
118
|
});
|
|
117
|
-
const S = await E(l,
|
|
119
|
+
const S = await E(l, u);
|
|
118
120
|
for (const {
|
|
119
|
-
inputName:
|
|
120
|
-
selectedSource:
|
|
121
|
+
inputName: s,
|
|
122
|
+
selectedSource: c,
|
|
121
123
|
filterType: C,
|
|
122
124
|
selectedFilterValues: L,
|
|
123
125
|
selectedFilterRange: U
|
|
124
126
|
} of S)
|
|
125
|
-
n[
|
|
126
|
-
selectedSource:
|
|
127
|
+
n[s].selectorStates.push({
|
|
128
|
+
selectedSource: c,
|
|
127
129
|
type: C,
|
|
128
130
|
selectedFilterValues: L,
|
|
129
131
|
selectedFilterRange: U
|
|
@@ -133,30 +135,30 @@ function gt(t, e, c, d, f, v, m) {
|
|
|
133
135
|
...n
|
|
134
136
|
};
|
|
135
137
|
}, { immediate: !0 });
|
|
136
|
-
const
|
|
137
|
-
|
|
138
|
+
const G = d(0);
|
|
139
|
+
D([
|
|
138
140
|
() => a.optionsState,
|
|
139
141
|
() => e.value,
|
|
140
142
|
() => f.value
|
|
141
143
|
], async ([l, i, n]) => {
|
|
142
|
-
|
|
143
|
-
const
|
|
144
|
+
G.value++;
|
|
145
|
+
const u = G.value;
|
|
144
146
|
o.value.loading.inputGuide = !0;
|
|
145
|
-
const S = i && n ? (await E(i, n, !1)).map((
|
|
146
|
-
if (
|
|
147
|
+
const S = i && n ? (await E(i, n, !1)).map((c) => c.selectedSource) : [], s = i ? await g.calculateOptions(w(i), l, S, v) : g.getEmptyInputGuide(l);
|
|
148
|
+
if (u === G.value && (y.value = s, o.value.loading.inputGuide = !1, o.value.loading.initialInputGuide)) {
|
|
147
149
|
o.value.loading.initialInputGuide = !1;
|
|
148
|
-
const
|
|
149
|
-
o.value.reactive.currentTab = o.value.reactive.currentTab ??
|
|
150
|
+
const c = t.currentTab === void 0 ? "dataMapping" : t.currentTab;
|
|
151
|
+
o.value.reactive.currentTab = o.value.reactive.currentTab ?? c;
|
|
150
152
|
}
|
|
151
153
|
}, { immediate: !0, deep: !0 });
|
|
152
|
-
const I =
|
|
153
|
-
if (
|
|
154
|
+
const I = d(0);
|
|
155
|
+
if (D(() => y.value, async (l) => {
|
|
154
156
|
I.value++;
|
|
155
157
|
const i = I.value;
|
|
156
158
|
o.value.loading.chartData = !0;
|
|
157
|
-
const n = w(e.value),
|
|
158
|
-
|
|
159
|
-
|
|
159
|
+
const n = w(e.value), u = await Q(l, a, n, f.value);
|
|
160
|
+
u && n && (h.value = await Z(
|
|
161
|
+
u,
|
|
160
162
|
l,
|
|
161
163
|
g,
|
|
162
164
|
n,
|
|
@@ -166,33 +168,33 @@ function gt(t, e, c, d, f, v, m) {
|
|
|
166
168
|
l,
|
|
167
169
|
g,
|
|
168
170
|
n
|
|
169
|
-
) : {}, i === I.value && (B.value =
|
|
171
|
+
) : {}, i === I.value && (B.value = u, l.ready && (o.value.loading.initialCharts = !1), o.value.loading.chartData = !1);
|
|
170
172
|
}, { immediate: !0, deep: !0 }), a.chartType === "dendro") {
|
|
171
|
-
const l =
|
|
172
|
-
|
|
173
|
+
const l = d(0);
|
|
174
|
+
D([
|
|
173
175
|
() => a.optionsState,
|
|
174
176
|
() => e.value,
|
|
175
177
|
() => y.value.readyData,
|
|
176
178
|
() => f.value
|
|
177
|
-
], async ([i, n,
|
|
178
|
-
if (
|
|
179
|
+
], async ([i, n, u, S]) => {
|
|
180
|
+
if (u && n) {
|
|
179
181
|
l.value++;
|
|
180
|
-
const
|
|
182
|
+
const s = l.value;
|
|
181
183
|
o.value.loading.dendroTableData = !0;
|
|
182
|
-
const
|
|
183
|
-
l.value ===
|
|
184
|
+
const c = await X(i, n, S), C = await g.createTableData(n, c);
|
|
185
|
+
l.value === s && (N.value = C), o.value.loading.dendroTableData = !1;
|
|
184
186
|
}
|
|
185
187
|
}, { immediate: !0 });
|
|
186
188
|
}
|
|
187
|
-
return k(
|
|
189
|
+
return k(M, o), o;
|
|
188
190
|
}
|
|
189
|
-
function
|
|
190
|
-
return q(z(
|
|
191
|
+
function ht() {
|
|
192
|
+
return q(z(M), "Empty store");
|
|
191
193
|
}
|
|
192
194
|
export {
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
195
|
+
tt as createReactiveState,
|
|
196
|
+
et as factoryStore,
|
|
197
|
+
yt as provideStore,
|
|
198
|
+
ht as useStore
|
|
197
199
|
};
|
|
198
200
|
//# sourceMappingURL=store.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"store.js","sources":["../../src/GraphMaker/store.ts"],"sourcesContent":["import { deepClone } from '@milaboratories/helpers';\nimport {\n ChartType,\n DemoDataStore,\n DendroStateController,\n DendroUIState,\n getControllerByType,\n getInitialStateByType,\n InputGuide,\n InputNamesByChartType,\n InputState,\n PlotDataAndSettings\n} from '@milaboratories/pf-plots';\nimport { PColumnSpec } from '@platforma-sdk/model';\nimport { ListOption } from '@platforma-sdk/ui-vue';\nimport { computed, ComputedRef, inject, provide, reactive, Reactive, Ref, ref, toRaw, watch } from 'vue';\nimport {\n AesType,\n getInitialAxesSettings,\n getInitialLayersSettings,\n getInitialStatisticsState,\n getInitialTemplate\n} from './constantsCommon';\nimport { updateDataBindAes } from './dataBindAes';\nimport { notEmpty } from './helpers';\nimport { storeKey } from './keys';\nimport {\n DendroNodeInfo,\n GraphMakerProps,\n GraphMakerState,\n ReactiveState, UniqueValuesBySourceMap\n} from './types';\nimport { loadDefaultSources } from './utils';\nimport { addFixedOptionsToState } from './utils/addFixedOptionsToState';\nimport { calculateDiscreteGroups } from './utils/calculateDiscreteGroups';\nimport { copyJSON } from './utils/copyJSON';\nimport { loadDataForPlot } from './utils/createChartSettingsForRender/composeChartSettings';\nimport { getUsedAesInMapping } from './utils/getUsedAesInMapping';\nimport {\n getUniqueValuesFromReadyChartData,\n loadFilterLabelsForTitle\n} from './utils/loadUniqueValuesToSave';\n\nfunction getInitialOptionsState(chartType: ChartType, optionsState: InputState | undefined) {\n const defaultState = copyJSON(getInitialStateByType(chartType));\n if (optionsState?.type !== chartType) {\n return defaultState;\n }\n const optionsStateCopy = copyJSON(optionsState);\n\n return {\n ...defaultState,\n ...optionsStateCopy,\n components: {\n ...defaultState.components,\n ...optionsStateCopy.components\n }\n };\n}\n\nexport function createReactiveState(\n initialData: GraphMakerState,\n chartType: ChartType\n): Reactive<ReactiveState> {\n return reactive({\n chartType: chartType,\n // from pf-plots\n optionsState: getInitialOptionsState(chartType, initialData.optionsState), // contains user selected inputs\n\n dataStateKey: deepClone(initialData.dataStateKey),\n //local form states, updates directly in forms\n template: getInitialTemplate(initialData.template, chartType),\n statisticsSettings: getInitialStatisticsState(chartType, initialData.statisticsSettings),\n layersSettings: getInitialLayersSettings(initialData.layersSettings),\n axesSettings: getInitialAxesSettings(chartType, initialData.axesSettings),\n //common aesthetics data mapped on columns/axes values\n dataBindAes: copyJSON(initialData.dataBindAes ?? {}),\n chartScale: initialData.zoomState ?? 100,\n lassoControlsState: null,\n currentTab: null,\n dendroInfoByClick: null as null | DendroNodeInfo,\n dendroSelectedNodeId: null,\n showTooltipHint: false,\n });\n}\n\nexport interface Store {\n reactive: Reactive<ReactiveState>;\n loading: {\n initialInputGuide: boolean;\n initialCharts: boolean;\n initialDefaults: boolean;\n inputGuide: boolean;\n chartData: boolean;\n dendroTableData: boolean;\n };\n commonHelpersData: {\n primaryGroups: ComputedRef<ReturnType<typeof calculateDiscreteGroups>>;\n secondaryGroups: ComputedRef<ReturnType<typeof calculateDiscreteGroups>>;\n usedAesInMapping: ComputedRef<Record<string, Record<AesType, boolean>>>;\n dendroTableData: Ref<Awaited<ReturnType<DendroStateController['createTableData']>> | null>;\n };\n controller: ReturnType<typeof getControllerByType>;\n columnsDataStore: DemoDataStore | null;\n inputGuide: Ref<InputGuide<InputState>>;\n chartData: Ref<PlotDataAndSettings | null>;\n uniqueValuesData: Ref<UniqueValuesBySourceMap>;\n filterLabelsInfo: Ref<Record<string, ListOption>>;\n readonlyInputs?: InputNamesByChartType[ChartType][];\n}\n\nexport function factoryStore(\n reactiveState: Reactive<ReactiveState>,\n dataStore: DemoDataStore | null,\n inputGuide: Ref<InputGuide<InputState>>,\n chartData: Ref<PlotDataAndSettings | null>,\n dendroTableData: Ref<Awaited<ReturnType<DendroStateController['createTableData']>> | null>,\n uniqueValuesData: Ref<UniqueValuesBySourceMap>,\n filterLabelsInfo: Ref<Record<string, ListOption>>,\n readonlyInputs?: InputNamesByChartType[ChartType][]\n): Store {\n return {\n reactive: reactiveState,\n loading: reactive({\n initialInputGuide: true,\n initialCharts: true,\n initialDefaults: true,\n inputGuide: false,\n chartData: false,\n dendroTableData: false\n }),\n commonHelpersData: {\n primaryGroups: computed(() => calculateDiscreteGroups(\n reactiveState.optionsState,\n uniqueValuesData.value,\n 'primaryGrouping'\n )\n ),\n secondaryGroups: computed(() => calculateDiscreteGroups(\n reactiveState.optionsState,\n uniqueValuesData.value,\n 'secondaryGrouping'\n )\n ),\n usedAesInMapping: computed<Record<string, Record<AesType, boolean>>>(() =>\n getUsedAesInMapping(\n reactiveState.chartType,\n reactiveState.template,\n reactiveState.layersSettings,\n reactiveState.statisticsSettings,\n reactiveState.optionsState,\n inputGuide.value\n )\n ),\n dendroTableData\n },\n controller: getControllerByType(reactiveState.chartType),\n columnsDataStore: dataStore,\n inputGuide,\n chartData,\n uniqueValuesData,\n filterLabelsInfo,\n readonlyInputs\n };\n}\n\nexport type ComputedStore = ComputedRef<Store>;\n\nexport function provideStore(\n initialState: GraphMakerState,\n dataStoreRef: Ref<DemoDataStore | null>,\n chartType: ChartType,\n defaultOptionsRef: Ref<GraphMakerProps['defaultOptions']>,\n fixedOptionsRef: Ref<GraphMakerProps['fixedOptions']>,\n dataColumnPredicate?: (spec:PColumnSpec) => boolean,\n readonlyInputs?: InputNamesByChartType[ChartType][]\n) {\n const reactiveState = createReactiveState(initialState, chartType);\n const controller = getControllerByType(reactiveState.chartType);\n\n const inputGuide = ref<InputGuide<InputState>>(getControllerByType(reactiveState.chartType).getEmptyInputGuide(reactiveState.optionsState));\n const chartData = ref<PlotDataAndSettings | null>(null);\n\n const uniqueValuesData = ref<UniqueValuesBySourceMap>({});\n const filterLabelsInfo = ref<Record<string, ListOption>>({}); // for auto titles of chart if something selected in filter/tabby\n\n const dendroTableData = ref<Awaited<ReturnType<DendroStateController['createTableData']>> | null>(null);\n\n // toRaw removes Vue proxy from dataStore.pframe (PFrame api)\n const store = computed(() => factoryStore(reactiveState, toRaw(dataStoreRef.value), inputGuide, chartData, dendroTableData, uniqueValuesData, filterLabelsInfo, readonlyInputs));\n\n watch([\n () => dataStoreRef.value,\n () => defaultOptionsRef.value\n ], async ([ds, defaultOptions]) => {\n if (!defaultOptions || !ds || !store.value.loading.initialDefaults) {\n return;\n }\n store.value.loading.initialDefaults = false; // to avoid multiple calculations, default settings cannot change except after reset\n store.value.loading.initialInputGuide = true; // to show loader on initial loading; changing of reactiveState.optionsState always triggers inputGuide recalculating, so it will be off after inputGuide\n\n const defaultStateMap = copyJSON(reactiveState.optionsState.components);\n const defaultOptionsWithoutUserChanges = defaultOptions.filter((opt) => {\n return reactiveState.optionsState.components[opt.inputName]?.selectorStates.length === 0 ||\n readonlyInputs?.includes(opt.inputName);\n })\n if (defaultOptionsWithoutUserChanges.length === 0) {\n return;\n }\n defaultOptionsWithoutUserChanges.forEach((opt) => {\n defaultStateMap[opt.inputName].selectorStates = [];\n });\n const loadedDefaultSources = await loadDefaultSources(ds, defaultOptionsWithoutUserChanges);\n for (const {\n inputName,\n selectedSource,\n filterType,\n selectedFilterValues,\n selectedFilterRange\n } of loadedDefaultSources) {\n defaultStateMap[inputName].selectorStates.push({\n selectedSource,\n type: filterType,\n selectedFilterValues,\n selectedFilterRange\n });\n }\n\n reactiveState.optionsState.components = {\n ...reactiveState.optionsState.components,\n ...defaultStateMap\n };\n }, { immediate: true });\n\n // recalculate input guide - options for every data input, consistency info etc\n const inputGuideCounter = ref(0); // to avoid race condition on async calculations\n watch([\n () => reactiveState.optionsState,\n () => dataStoreRef.value,\n () => fixedOptionsRef.value\n ], async ([optionsState, ds, fixedOptions]) => {\n inputGuideCounter.value++;\n const counter = inputGuideCounter.value;\n store.value.loading.inputGuide = true;\n const ignoredIds = ds && fixedOptions ? (await loadDefaultSources(ds, fixedOptions, false)).map(item => item.selectedSource) : [];\n\n // const start = Date.now();\n const nextInputGuide = ds ? await controller.calculateOptions(toRaw(ds), optionsState, ignoredIds, dataColumnPredicate) : controller.getEmptyInputGuide(optionsState);\n // console.log('input guide', Date.now() - start);\n\n if (counter === inputGuideCounter.value) { // race condition check\n inputGuide.value = nextInputGuide;\n\n store.value.loading.inputGuide = false;\n if (store.value.loading.initialInputGuide) { // open default/saved tab only after inputGuide loading\n store.value.loading.initialInputGuide = false;\n const initialTab = initialState.currentTab === undefined ? 'dataMapping' : initialState.currentTab;\n store.value.reactive.currentTab = store.value.reactive.currentTab ?? initialTab;\n }\n }\n }, { immediate: true, deep: true });\n\n // recalculate data for chart rendering (miplots4)\n const chartDataCounter = ref(0); // to avoid race condition on async calculations\n watch(() => inputGuide.value, async (ig) => {\n chartDataCounter.value++;\n const counter = chartDataCounter.value;\n store.value.loading.chartData = true;\n\n const ds = toRaw(dataStoreRef.value);\n const start = Date.now();\n const nextChartData = await loadDataForPlot(ig, reactiveState, ds, fixedOptionsRef.value);\n\n if (nextChartData && ds) {\n uniqueValuesData.value = await getUniqueValuesFromReadyChartData(\n nextChartData,\n ig,\n controller,\n ds,\n uniqueValuesData.value\n );\n updateDataBindAes(reactiveState.optionsState, reactiveState.dataBindAes, uniqueValuesData.value);\n }\n filterLabelsInfo.value = ds ? await loadFilterLabelsForTitle(\n reactiveState.optionsState.components,\n ig,\n controller,\n ds,\n ) : {};\n // console.log('chart data', Date.now() - start);\n\n if (counter === chartDataCounter.value) { // race condition check\n chartData.value = nextChartData;\n if (ig.ready) {\n store.value.loading.initialCharts = false;\n }\n store.value.loading.chartData = false;\n }\n }, { immediate: true, deep: true });\n\n // watch data for table, only dendro chart; data is also using for popup by tree node click\n if (reactiveState.chartType === 'dendro') {\n const dendroDataCounter = ref(0); // to avoid race condition on async calculations\n watch([\n () => reactiveState.optionsState as DendroUIState,\n () => dataStoreRef.value,\n () => inputGuide.value.readyData,\n () => fixedOptionsRef.value\n ], async ([optionsState, dataStore, ready, fixed]) => {\n if (ready && dataStore) {\n dendroDataCounter.value++;\n const counter = dendroDataCounter.value;\n store.value.loading.dendroTableData = true;\n const state = await addFixedOptionsToState(optionsState, dataStore, fixed) as DendroUIState;\n const nextDendroTableData = await (controller as unknown as DendroStateController).createTableData(dataStore, state);\n\n if (dendroDataCounter.value === counter) {\n dendroTableData.value = nextDendroTableData;\n }\n store.value.loading.dendroTableData = false;\n }\n }, { immediate: true });\n }\n\n provide(storeKey, store);\n return store;\n}\n\nexport function useStore() {\n return notEmpty(inject<ComputedStore>(storeKey), 'Empty store');\n}\n"],"names":["getInitialOptionsState","chartType","optionsState","defaultState","copyJSON","getInitialStateByType","optionsStateCopy","createReactiveState","initialData","reactive","deepClone","getInitialTemplate","getInitialStatisticsState","getInitialLayersSettings","getInitialAxesSettings","factoryStore","reactiveState","dataStore","inputGuide","chartData","dendroTableData","uniqueValuesData","filterLabelsInfo","readonlyInputs","computed","calculateDiscreteGroups","getUsedAesInMapping","getControllerByType","provideStore","initialState","dataStoreRef","defaultOptionsRef","fixedOptionsRef","dataColumnPredicate","controller","ref","store","toRaw","watch","ds","defaultOptions","defaultStateMap","defaultOptionsWithoutUserChanges","opt","_a","loadedDefaultSources","loadDefaultSources","inputName","selectedSource","filterType","selectedFilterValues","selectedFilterRange","inputGuideCounter","fixedOptions","counter","ignoredIds","item","nextInputGuide","initialTab","chartDataCounter","ig","nextChartData","loadDataForPlot","getUniqueValuesFromReadyChartData","updateDataBindAes","loadFilterLabelsForTitle","dendroDataCounter","ready","fixed","state","addFixedOptionsToState","nextDendroTableData","provide","storeKey","useStore","notEmpty","inject"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"store.js","sources":["../../src/GraphMaker/store.ts"],"sourcesContent":["import { deepClone } from '@milaboratories/helpers';\nimport {\n ChartType,\n DemoDataStore,\n DendroStateController,\n DendroUIState,\n getControllerByType,\n getInitialStateByType,\n InputGuide,\n InputNamesByChartType,\n InputState,\n PlotDataAndSettings\n} from '@milaboratories/pf-plots';\nimport { PColumnSpec } from '@platforma-sdk/model';\nimport { ListOption } from '@platforma-sdk/ui-vue';\nimport { computed, ComputedRef, inject, provide, reactive, Reactive, Ref, ref, toRaw, watch } from 'vue';\nimport {\n AesType,\n getInitialAxesSettings,\n getInitialLayersSettings,\n getInitialStatisticsState,\n getInitialTemplate\n} from './constantsCommon';\nimport { updateDataBindAes } from './dataBindAes';\nimport { notEmpty } from './helpers';\nimport { storeKey } from './keys';\nimport {\n DendroNodeInfo,\n GraphMakerProps,\n GraphMakerState,\n ReactiveState, UniqueValuesBySourceMap\n} from './types';\nimport { loadDefaultSources } from './utils';\nimport { addFixedOptionsToState } from './utils/addFixedOptionsToState';\nimport { calculateDiscreteGroups } from './utils/calculateDiscreteGroups';\nimport { copyJSON } from './utils/copyJSON';\nimport { loadDataForPlot } from './utils/createChartSettingsForRender/composeChartSettings';\nimport { getUsedAesInMapping } from './utils/getUsedAesInMapping';\nimport {\n getUniqueValuesFromReadyChartData,\n loadFilterLabelsForTitle\n} from './utils/loadUniqueValuesToSave';\nimport { FormKey, tabKeys } from './forms';\n\nfunction getInitialOptionsState(chartType: ChartType, optionsState: InputState | undefined) {\n const defaultState = copyJSON(getInitialStateByType(chartType));\n if (optionsState?.type !== chartType) {\n return defaultState;\n }\n const optionsStateCopy = copyJSON(optionsState);\n\n return {\n ...defaultState,\n ...optionsStateCopy,\n components: {\n ...defaultState.components,\n ...optionsStateCopy.components\n }\n };\n}\n\nexport function createReactiveState(\n initialData: GraphMakerState,\n chartType: ChartType\n): Reactive<ReactiveState> {\n return reactive({\n chartType: chartType,\n // from pf-plots\n optionsState: getInitialOptionsState(chartType, initialData.optionsState), // contains user selected inputs\n\n dataStateKey: deepClone(initialData.dataStateKey),\n //local form states, updates directly in forms\n template: getInitialTemplate(initialData.template, chartType),\n statisticsSettings: getInitialStatisticsState(chartType, initialData.statisticsSettings),\n layersSettings: getInitialLayersSettings(initialData.layersSettings),\n axesSettings: getInitialAxesSettings(chartType, initialData.axesSettings),\n //common aesthetics data mapped on columns/axes values\n dataBindAes: copyJSON(initialData.dataBindAes ?? {}),\n chartScale: initialData.zoomState ?? 100,\n lassoControlsState: null,\n currentTab: null,\n tabDefaultState: tabKeys().reduce((res, formKey:FormKey) => {res[formKey] = {}; return res;}, {} as Record<FormKey, Record<string, boolean>>),\n dendroInfoByClick: null as null | DendroNodeInfo,\n dendroSelectedNodeId: null,\n showTooltipHint: false,\n });\n}\n\nexport interface Store {\n reactive: Reactive<ReactiveState>;\n loading: {\n initialInputGuide: boolean;\n initialCharts: boolean;\n initialDefaults: boolean;\n inputGuide: boolean;\n chartData: boolean;\n dendroTableData: boolean;\n };\n commonHelpersData: {\n primaryGroups: ComputedRef<ReturnType<typeof calculateDiscreteGroups>>;\n secondaryGroups: ComputedRef<ReturnType<typeof calculateDiscreteGroups>>;\n usedAesInMapping: ComputedRef<Record<string, Record<AesType, boolean>>>;\n dendroTableData: Ref<Awaited<ReturnType<DendroStateController['createTableData']>> | null>;\n };\n controller: ReturnType<typeof getControllerByType>;\n columnsDataStore: DemoDataStore | null;\n inputGuide: Ref<InputGuide<InputState>>;\n chartData: Ref<PlotDataAndSettings | null>;\n uniqueValuesData: Ref<UniqueValuesBySourceMap>;\n filterLabelsInfo: Ref<Record<string, ListOption>>;\n readonlyInputs?: InputNamesByChartType[ChartType][];\n}\n\nexport function factoryStore(\n reactiveState: Reactive<ReactiveState>,\n dataStore: DemoDataStore | null,\n inputGuide: Ref<InputGuide<InputState>>,\n chartData: Ref<PlotDataAndSettings | null>,\n dendroTableData: Ref<Awaited<ReturnType<DendroStateController['createTableData']>> | null>,\n uniqueValuesData: Ref<UniqueValuesBySourceMap>,\n filterLabelsInfo: Ref<Record<string, ListOption>>,\n readonlyInputs?: InputNamesByChartType[ChartType][]\n): Store {\n return {\n reactive: reactiveState,\n loading: reactive({\n initialInputGuide: true,\n initialCharts: true,\n initialDefaults: true,\n inputGuide: false,\n chartData: false,\n dendroTableData: false\n }),\n commonHelpersData: {\n primaryGroups: computed(() => calculateDiscreteGroups(\n reactiveState.optionsState,\n uniqueValuesData.value,\n 'primaryGrouping'\n )\n ),\n secondaryGroups: computed(() => calculateDiscreteGroups(\n reactiveState.optionsState,\n uniqueValuesData.value,\n 'secondaryGrouping'\n )\n ),\n usedAesInMapping: computed<Record<string, Record<AesType, boolean>>>(() =>\n getUsedAesInMapping(\n reactiveState.chartType,\n reactiveState.template,\n reactiveState.layersSettings,\n reactiveState.statisticsSettings,\n reactiveState.optionsState,\n inputGuide.value\n )\n ),\n dendroTableData\n },\n controller: getControllerByType(reactiveState.chartType),\n columnsDataStore: dataStore,\n inputGuide,\n chartData,\n uniqueValuesData,\n filterLabelsInfo,\n readonlyInputs\n };\n}\n\nexport type ComputedStore = ComputedRef<Store>;\n\nexport function provideStore(\n initialState: GraphMakerState,\n dataStoreRef: Ref<DemoDataStore | null>,\n chartType: ChartType,\n defaultOptionsRef: Ref<GraphMakerProps['defaultOptions']>,\n fixedOptionsRef: Ref<GraphMakerProps['fixedOptions']>,\n dataColumnPredicate?: (spec:PColumnSpec) => boolean,\n readonlyInputs?: InputNamesByChartType[ChartType][]\n) {\n const reactiveState = createReactiveState(initialState, chartType);\n const controller = getControllerByType(reactiveState.chartType);\n\n const inputGuide = ref<InputGuide<InputState>>(getControllerByType(reactiveState.chartType).getEmptyInputGuide(reactiveState.optionsState));\n const chartData = ref<PlotDataAndSettings | null>(null);\n\n const uniqueValuesData = ref<UniqueValuesBySourceMap>({});\n const filterLabelsInfo = ref<Record<string, ListOption>>({}); // for auto titles of chart if something selected in filter/tabby\n\n const dendroTableData = ref<Awaited<ReturnType<DendroStateController['createTableData']>> | null>(null);\n\n // toRaw removes Vue proxy from dataStore.pframe (PFrame api)\n const store = computed(() => factoryStore(reactiveState, toRaw(dataStoreRef.value), inputGuide, chartData, dendroTableData, uniqueValuesData, filterLabelsInfo, readonlyInputs));\n\n watch([\n () => dataStoreRef.value,\n () => defaultOptionsRef.value\n ], async ([ds, defaultOptions]) => {\n if (!defaultOptions || !ds || !store.value.loading.initialDefaults) {\n return;\n }\n store.value.loading.initialDefaults = false; // to avoid multiple calculations, default settings cannot change except after reset\n store.value.loading.initialInputGuide = true; // to show loader on initial loading; changing of reactiveState.optionsState always triggers inputGuide recalculating, so it will be off after inputGuide\n\n const defaultStateMap = copyJSON(reactiveState.optionsState.components);\n const defaultOptionsWithoutUserChanges = defaultOptions.filter((opt) => {\n return reactiveState.optionsState.components[opt.inputName]?.selectorStates.length === 0 ||\n readonlyInputs?.includes(opt.inputName);\n })\n if (defaultOptionsWithoutUserChanges.length === 0) {\n return;\n }\n defaultOptionsWithoutUserChanges.forEach((opt) => {\n defaultStateMap[opt.inputName].selectorStates = [];\n });\n const loadedDefaultSources = await loadDefaultSources(ds, defaultOptionsWithoutUserChanges);\n for (const {\n inputName,\n selectedSource,\n filterType,\n selectedFilterValues,\n selectedFilterRange\n } of loadedDefaultSources) {\n defaultStateMap[inputName].selectorStates.push({\n selectedSource,\n type: filterType,\n selectedFilterValues,\n selectedFilterRange\n });\n }\n\n reactiveState.optionsState.components = {\n ...reactiveState.optionsState.components,\n ...defaultStateMap\n };\n }, { immediate: true });\n\n // recalculate input guide - options for every data input, consistency info etc\n const inputGuideCounter = ref(0); // to avoid race condition on async calculations\n watch([\n () => reactiveState.optionsState,\n () => dataStoreRef.value,\n () => fixedOptionsRef.value\n ], async ([optionsState, ds, fixedOptions]) => {\n inputGuideCounter.value++;\n const counter = inputGuideCounter.value;\n store.value.loading.inputGuide = true;\n const ignoredIds = ds && fixedOptions ? (await loadDefaultSources(ds, fixedOptions, false)).map(item => item.selectedSource) : [];\n\n // const start = Date.now();\n const nextInputGuide = ds ? await controller.calculateOptions(toRaw(ds), optionsState, ignoredIds, dataColumnPredicate) : controller.getEmptyInputGuide(optionsState);\n // console.log('input guide', Date.now() - start);\n\n if (counter === inputGuideCounter.value) { // race condition check\n inputGuide.value = nextInputGuide;\n\n store.value.loading.inputGuide = false;\n if (store.value.loading.initialInputGuide) { // open default/saved tab only after inputGuide loading\n store.value.loading.initialInputGuide = false;\n const initialTab = initialState.currentTab === undefined ? 'dataMapping' : initialState.currentTab;\n store.value.reactive.currentTab = store.value.reactive.currentTab ?? initialTab;\n }\n }\n }, { immediate: true, deep: true });\n\n // recalculate data for chart rendering (miplots4)\n const chartDataCounter = ref(0); // to avoid race condition on async calculations\n watch(() => inputGuide.value, async (ig) => {\n chartDataCounter.value++;\n const counter = chartDataCounter.value;\n store.value.loading.chartData = true;\n\n const ds = toRaw(dataStoreRef.value);\n const start = Date.now();\n const nextChartData = await loadDataForPlot(ig, reactiveState, ds, fixedOptionsRef.value);\n\n if (nextChartData && ds) {\n uniqueValuesData.value = await getUniqueValuesFromReadyChartData(\n nextChartData,\n ig,\n controller,\n ds,\n uniqueValuesData.value\n );\n updateDataBindAes(reactiveState.optionsState, reactiveState.dataBindAes, uniqueValuesData.value);\n }\n filterLabelsInfo.value = ds ? await loadFilterLabelsForTitle(\n reactiveState.optionsState.components,\n ig,\n controller,\n ds,\n ) : {};\n // console.log('chart data', Date.now() - start);\n\n if (counter === chartDataCounter.value) { // race condition check\n chartData.value = nextChartData;\n if (ig.ready) {\n store.value.loading.initialCharts = false;\n }\n store.value.loading.chartData = false;\n }\n }, { immediate: true, deep: true });\n\n // watch data for table, only dendro chart; data is also using for popup by tree node click\n if (reactiveState.chartType === 'dendro') {\n const dendroDataCounter = ref(0); // to avoid race condition on async calculations\n watch([\n () => reactiveState.optionsState as DendroUIState,\n () => dataStoreRef.value,\n () => inputGuide.value.readyData,\n () => fixedOptionsRef.value\n ], async ([optionsState, dataStore, ready, fixed]) => {\n if (ready && dataStore) {\n dendroDataCounter.value++;\n const counter = dendroDataCounter.value;\n store.value.loading.dendroTableData = true;\n const state = await addFixedOptionsToState(optionsState, dataStore, fixed) as DendroUIState;\n const nextDendroTableData = await (controller as unknown as DendroStateController).createTableData(dataStore, state);\n\n if (dendroDataCounter.value === counter) {\n dendroTableData.value = nextDendroTableData;\n }\n store.value.loading.dendroTableData = false;\n }\n }, { immediate: true });\n }\n\n provide(storeKey, store);\n return store;\n}\n\nexport function useStore() {\n return notEmpty(inject<ComputedStore>(storeKey), 'Empty store');\n}\n"],"names":["getInitialOptionsState","chartType","optionsState","defaultState","copyJSON","getInitialStateByType","optionsStateCopy","createReactiveState","initialData","reactive","deepClone","getInitialTemplate","getInitialStatisticsState","getInitialLayersSettings","getInitialAxesSettings","tabKeys","res","formKey","factoryStore","reactiveState","dataStore","inputGuide","chartData","dendroTableData","uniqueValuesData","filterLabelsInfo","readonlyInputs","computed","calculateDiscreteGroups","getUsedAesInMapping","getControllerByType","provideStore","initialState","dataStoreRef","defaultOptionsRef","fixedOptionsRef","dataColumnPredicate","controller","ref","store","toRaw","watch","ds","defaultOptions","defaultStateMap","defaultOptionsWithoutUserChanges","opt","_a","loadedDefaultSources","loadDefaultSources","inputName","selectedSource","filterType","selectedFilterValues","selectedFilterRange","inputGuideCounter","fixedOptions","counter","ignoredIds","item","nextInputGuide","initialTab","chartDataCounter","ig","nextChartData","loadDataForPlot","getUniqueValuesFromReadyChartData","updateDataBindAes","loadFilterLabelsForTitle","dendroDataCounter","ready","fixed","state","addFixedOptionsToState","nextDendroTableData","provide","storeKey","useStore","notEmpty","inject"],"mappings":"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"}
|
|
@@ -79,6 +79,7 @@ export type ReactiveState = {
|
|
|
79
79
|
chartScale: number;
|
|
80
80
|
lassoControlsState: LassoControlsState | null;
|
|
81
81
|
currentTab: FormKey | null;
|
|
82
|
+
tabDefaultState: Record<FormKey, Record<string, unknown>>;
|
|
82
83
|
dendroInfoByClick: null | DendroNodeInfo;
|
|
83
84
|
dendroSelectedNodeId: null | number;
|
|
84
85
|
dataStateKey: unknown;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/GraphMaker/types.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/GraphMaker/types.ts"],"names":[],"mappings":"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"}
|