@milaboratories/graph-maker 1.1.192 → 1.1.193

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.
Files changed (51) hide show
  1. package/dist/constantsAesthetic.d.ts +0 -1
  2. package/dist/constantsAesthetic.js +16 -17
  3. package/dist/constantsAesthetic.js.map +1 -1
  4. package/dist/dataBindAes.d.ts +5 -5
  5. package/dist/dataBindAes.js +110 -110
  6. package/dist/dataBindAes.js.map +1 -1
  7. package/dist/forms/AxesSettingsForm/DiscreteAxesSettingsForm.vue.js +35 -35
  8. package/dist/forms/AxesSettingsForm/DiscreteAxesSettingsForm.vue.js.map +1 -1
  9. package/dist/forms/LayersForm/AesSelector.vue.js +59 -59
  10. package/dist/forms/LayersForm/AesSelector.vue.js.map +1 -1
  11. package/dist/forms/LayersForm/Layer/Bubble.vue.js +41 -41
  12. package/dist/forms/LayersForm/Layer/Bubble.vue.js.map +1 -1
  13. package/dist/forms/LayersForm/Layer/heatmap/Heatmap.vue.js +35 -35
  14. package/dist/forms/LayersForm/Layer/heatmap/Heatmap.vue.js.map +1 -1
  15. package/dist/forms/LayersForm/Layer/heatmap/HeatmapAnnotations.vue.js +31 -31
  16. package/dist/forms/LayersForm/Layer/heatmap/HeatmapAnnotations.vue.js.map +1 -1
  17. package/dist/forms/LayersForm/Layer/heatmap/HeatmapClustered.vue.js +35 -35
  18. package/dist/forms/LayersForm/Layer/heatmap/HeatmapClustered.vue.js.map +1 -1
  19. package/dist/index.vue.js +94 -90
  20. package/dist/index.vue.js.map +1 -1
  21. package/dist/store.d.ts +8 -3
  22. package/dist/store.js +129 -123
  23. package/dist/store.js.map +1 -1
  24. package/dist/types.d.ts +9 -0
  25. package/dist/utils/createChartSettingsForRender/composeBubbleSettings.d.ts +2 -2
  26. package/dist/utils/createChartSettingsForRender/composeBubbleSettings.js +11 -11
  27. package/dist/utils/createChartSettingsForRender/composeBubbleSettings.js.map +1 -1
  28. package/dist/utils/createChartSettingsForRender/composeChartSettings.d.ts +2 -2
  29. package/dist/utils/createChartSettingsForRender/composeChartSettings.js +28 -28
  30. package/dist/utils/createChartSettingsForRender/composeChartSettings.js.map +1 -1
  31. package/dist/utils/createChartSettingsForRender/composeDendroSettings.js +23 -20
  32. package/dist/utils/createChartSettingsForRender/composeDendroSettings.js.map +1 -1
  33. package/dist/utils/createChartSettingsForRender/composeDiscreteSettings.d.ts +2 -2
  34. package/dist/utils/createChartSettingsForRender/composeDiscreteSettings.js +20 -18
  35. package/dist/utils/createChartSettingsForRender/composeDiscreteSettings.js.map +1 -1
  36. package/dist/utils/createChartSettingsForRender/composeHeatmapSettings.d.ts +2 -2
  37. package/dist/utils/createChartSettingsForRender/composeHeatmapSettings.js +28 -28
  38. package/dist/utils/createChartSettingsForRender/composeHeatmapSettings.js.map +1 -1
  39. package/dist/utils/createChartSettingsForRender/composeHistogramSettings.d.ts +2 -2
  40. package/dist/utils/createChartSettingsForRender/composeHistogramSettings.js +11 -10
  41. package/dist/utils/createChartSettingsForRender/composeHistogramSettings.js.map +1 -1
  42. package/dist/utils/createChartSettingsForRender/composeScatterplotSettings.d.ts +3 -3
  43. package/dist/utils/createChartSettingsForRender/composeScatterplotSettings.js +71 -68
  44. package/dist/utils/createChartSettingsForRender/composeScatterplotSettings.js.map +1 -1
  45. package/dist/utils/createChartSettingsForRender/composeScatterplotUmapSettings.d.ts +2 -2
  46. package/dist/utils/createChartSettingsForRender/composeScatterplotUmapSettings.js +19 -18
  47. package/dist/utils/createChartSettingsForRender/composeScatterplotUmapSettings.js.map +1 -1
  48. package/dist/utils/createChartSettingsForRender/getLayersDataFromForms.d.ts +1 -1
  49. package/dist/utils/createChartSettingsForRender/getLayersDataFromForms.js +37 -37
  50. package/dist/utils/createChartSettingsForRender/getLayersDataFromForms.js.map +1 -1
  51. package/package.json +1 -1
@@ -1,8 +1,8 @@
1
1
  import { defineComponent as ee, computed as r, ref as k, onMounted as le, watch as $, createElementBlock as p, openBlock as d, createElementVNode as a, createVNode as s, withCtx as b, createCommentVNode as m, unref as l, createBlock as H } from "vue";
2
- import { PlBtnGroup as S, PlTextField as I, PlToggleSwitch as v, Slider as oe } from "@platforma-sdk/ui-vue";
2
+ import { PlBtnGroup as S, PlTextField as U, PlToggleSwitch as v, Slider as oe } from "@platforma-sdk/ui-vue";
3
3
  import { useStore as te } from "../../store.js";
4
- import G from "../../components/CollapsableBlock.vue.js";
5
- import P from "../../icons/Right.vue.js";
4
+ import I from "../../components/CollapsableBlock.vue.js";
5
+ import G from "../../icons/Right.vue.js";
6
6
  import N from "../../icons/Down.vue.js";
7
7
  import R from "../../components/BtnIconGroup.vue.js";
8
8
  import ae from "../../icons/AlignLeft.vue.js";
@@ -21,10 +21,10 @@ import z from "../../components/AesSettings/FormWrapper.vue.js";
21
21
  import j from "../../components/AesSettings/AesDataMappingDiscrete.vue.js";
22
22
  import { createDefaultMapping as J } from "../../dataBindAes.js";
23
23
  import "../../constantsAesthetic.js";
24
- import { getDiscreteLabelsRotation as xe } from "../../utils/createChartSettingsForRender/getAxesDataFromForms.js";
24
+ import { getDiscreteLabelsRotation as fe } from "../../utils/createChartSettingsForRender/getAxesDataFromForms.js";
25
25
  import "@milaboratories/pf-plots";
26
26
  import "@platforma-sdk/model";
27
- const fe = { class: "axes-settings-list" }, Ve = { class: "axes-settings-options-row block" }, ye = {
27
+ const xe = { class: "axes-settings-list" }, Ve = { class: "axes-settings-options-row block" }, ye = {
28
28
  key: 0,
29
29
  class: "axes-settings-input"
30
30
  }, be = { class: "axes-settings-options-row" }, Se = {
@@ -42,7 +42,7 @@ const fe = { class: "axes-settings-list" }, Ve = { class: "axes-settings-options
42
42
  }, Te = {
43
43
  key: 4,
44
44
  class: "axes-settings-options-row"
45
- }, Ae = { class: "axes-settings-options-row block" }, Oe = { key: 5 }, Xe = { class: "axes-settings-options-row table" }, Ue = { class: "axes-settings-options-row table" }, Ie = { class: "axes-settings-options-row table" }, Ge = { class: "axes-settings-options-row block" }, Pe = { key: 0 }, Ne = { class: "axes-settings-options-row block" }, Re = { class: "axes-settings-options-row table" }, Ce = { class: "axes-settings-options-row table" }, Fe = { class: "other" }, De = { class: "axes-settings-options-row" }, Be = { class: "axes-settings-options-row" }, Le = { class: "axes-settings-options-row" }, Ye = { class: "axes-settings-options-row block" }, vl = /* @__PURE__ */ ee({
45
+ }, Ae = { class: "axes-settings-options-row block" }, Oe = { key: 5 }, Xe = { class: "axes-settings-options-row table" }, Pe = { class: "axes-settings-options-row table" }, Ue = { class: "axes-settings-options-row table" }, Ie = { class: "axes-settings-options-row block" }, Ge = { key: 0 }, Ne = { class: "axes-settings-options-row block" }, Re = { class: "axes-settings-options-row table" }, Ce = { class: "axes-settings-options-row table" }, Fe = { class: "other" }, De = { class: "axes-settings-options-row" }, Be = { class: "axes-settings-options-row" }, Le = { class: "axes-settings-options-row" }, Ye = { class: "axes-settings-options-row block" }, vl = /* @__PURE__ */ ee({
46
46
  __name: "DiscreteAxesSettingsForm",
47
47
  setup(Me) {
48
48
  const i = te(), t = i.value.reactive.axesSettings, T = {
@@ -70,13 +70,13 @@ const fe = { class: "axes-settings-list" }, Ve = { class: "axes-settings-options
70
70
  { value: "bottom", icon: ve },
71
71
  { value: "left-bottom", icon: ge },
72
72
  { value: "full", icon: ie }
73
- ], C = r(() => i.value.inputGuide.value), O = r(() => i.value.uniqueValuesData.value), f = k(!1), V = k(!1), F = r(() => i.value.reactive.tabDefaultState.axes.reorderPrimaryOpen), D = r(() => i.value.reactive.tabDefaultState.axes.reorderSecondaryOpen);
73
+ ], C = r(() => i.value.inputGuide.value), O = r(() => i.value.uniqueValuesData.value), x = k(!1), V = k(!1), F = r(() => i.value.reactive.tabDefaultState.axes.reorderPrimaryOpen), D = r(() => i.value.reactive.tabDefaultState.axes.reorderSecondaryOpen);
74
74
  le(() => {
75
- F.value && (f.value = !0), D.value && (V.value = !0);
75
+ F.value && (x.value = !0), D.value && (V.value = !0);
76
76
  }), $(() => F.value, (n) => {
77
- n && (V.value = !1, f.value = !0);
77
+ n && (V.value = !1, x.value = !0);
78
78
  }), $(() => D.value, (n) => {
79
- n && (f.value = !1, V.value = !0);
79
+ n && (x.value = !1, V.value = !0);
80
80
  });
81
81
  const g = r(() => {
82
82
  var n, e;
@@ -84,23 +84,23 @@ const fe = { class: "axes-settings-list" }, Ve = { class: "axes-settings-options
84
84
  }), y = r(() => {
85
85
  var n, e;
86
86
  return (e = (n = i.value.reactive.optionsState.components.secondaryGrouping) == null ? void 0 : n.selectorStates[0]) == null ? void 0 : e.selectedSource;
87
- }), c = r(() => i.value.commonHelpersData.primaryGroups.value), w = r(() => i.value.commonHelpersData.secondaryGroups.value), B = r(() => i.value.commonHelpersData.usedAesInMapping.value), L = k(i.value.reactive.dataBindAes[g.value] ?? J(c.value)), Y = k(i.value.reactive.dataBindAes[y.value] ?? J(w.value)), X = r(() => {
87
+ }), c = r(() => i.value.commonHelpersData.primaryGroups.value), w = r(() => i.value.commonHelpersData.secondaryGroups.value), B = r(() => i.value.commonHelpersData.usedAesInMapping.value), L = k(i.value.reactive.dataBindAes[g.value] ?? J(c.value, i.value.defaultPalette.categorical)), Y = k(i.value.reactive.dataBindAes[y.value] ?? J(w.value, i.value.defaultPalette.categorical)), X = r(() => {
88
88
  var n;
89
89
  if (g.value) {
90
90
  const e = C.value.getSourceInfo(g.value) ?? null, o = ((n = O.value[g.value]) == null ? void 0 : n.labels) ?? null;
91
91
  return {
92
92
  selectedSourceInfo: e,
93
- labels: c.value.reduce((u, x) => (u[x] = (o == null ? void 0 : o[x]) ?? String(x), u), {})
93
+ labels: c.value.reduce((u, f) => (u[f] = (o == null ? void 0 : o[f]) ?? String(f), u), {})
94
94
  };
95
95
  }
96
96
  return null;
97
- }), U = r(() => {
97
+ }), P = r(() => {
98
98
  var n;
99
99
  if (y.value) {
100
100
  const e = C.value.getSourceInfo(y.value) ?? null, o = ((n = O.value[y.value]) == null ? void 0 : n.labels) ?? null;
101
101
  return {
102
102
  selectedSourceInfo: e,
103
- labels: w.value.reduce((u, x) => (u[x] = (o == null ? void 0 : o[x]) ?? String(x), u), {})
103
+ labels: w.value.reduce((u, f) => (u[f] = (o == null ? void 0 : o[f]) ?? String(f), u), {})
104
104
  };
105
105
  }
106
106
  return null;
@@ -116,7 +116,7 @@ const fe = { class: "axes-settings-list" }, Ve = { class: "axes-settings-options
116
116
  ], h = r(() => O.value[g.value]), E = r({
117
117
  get() {
118
118
  var n;
119
- return xe(t.axisX.labelsRotation, (n = h.value) == null ? void 0 : n.options);
119
+ return fe(t.axisX.labelsRotation, (n = h.value) == null ? void 0 : n.options);
120
120
  },
121
121
  set(n) {
122
122
  t.axisX.labelsRotation = n;
@@ -127,11 +127,11 @@ const fe = { class: "axes-settings-list" }, Ve = { class: "axes-settings-options
127
127
  onClick: e[30] || (e[30] = (o) => o.stopPropagation())
128
128
  }, [
129
129
  e[44] || (e[44] = a("h3", { class: "axes-title" }, " Axes ", -1)),
130
- a("div", fe, [
131
- s(G, {
130
+ a("div", xe, [
131
+ s(I, {
132
132
  title: "Title",
133
133
  settings: T,
134
- icon: P,
134
+ icon: G,
135
135
  "icon-open": N
136
136
  }, {
137
137
  default: b(() => [
@@ -144,7 +144,7 @@ const fe = { class: "axes-settings-list" }, Ve = { class: "axes-settings-options
144
144
  }, null, 8, ["modelValue"])
145
145
  ]),
146
146
  l(t).title.mode === "custom" ? (d(), p("div", ye, [
147
- s(l(I), {
147
+ s(l(U), {
148
148
  modelValue: l(t).title.value,
149
149
  "onUpdate:modelValue": e[1] || (e[1] = (o) => l(t).title.value = o),
150
150
  label: "Chart title",
@@ -162,10 +162,10 @@ const fe = { class: "axes-settings-list" }, Ve = { class: "axes-settings-options
162
162
  ]),
163
163
  _: 1
164
164
  }),
165
- s(G, {
165
+ s(I, {
166
166
  title: "X-axis",
167
167
  settings: T,
168
- icon: P,
168
+ icon: G,
169
169
  "icon-open": N
170
170
  }, {
171
171
  default: b(() => [
@@ -173,14 +173,14 @@ const fe = { class: "axes-settings-list" }, Ve = { class: "axes-settings-options
173
173
  e[32] || (e[32] = a("span", null, "Primary groups order: ", -1)),
174
174
  s(q, {
175
175
  data: { type: "data", value: null },
176
- onClick: e[3] || (e[3] = (o) => f.value = !0)
176
+ onClick: e[3] || (e[3] = (o) => x.value = !0)
177
177
  }),
178
- f.value && X.value ? (d(), H(z, {
178
+ x.value && X.value ? (d(), H(z, {
179
179
  key: 0,
180
180
  title: "Reorder primary groups",
181
181
  "back-title": "Axes Settings",
182
182
  "onForm:open": e[6] || (e[6] = (o) => l(i).reactive.tabDefaultState.axes.reorderPrimaryOpen = !1),
183
- "onForm:close": e[7] || (e[7] = (o) => f.value = !1)
183
+ "onForm:close": e[7] || (e[7] = (o) => x.value = !1)
184
184
  }, {
185
185
  default: b(() => {
186
186
  var o;
@@ -216,7 +216,7 @@ const fe = { class: "axes-settings-list" }, Ve = { class: "axes-settings-options
216
216
  data: { type: "data", value: null },
217
217
  onClick: e[9] || (e[9] = (o) => V.value = !0)
218
218
  }),
219
- V.value && U.value ? (d(), H(z, {
219
+ V.value && P.value ? (d(), H(z, {
220
220
  key: 0,
221
221
  title: "Reorder secondary groups",
222
222
  "back-title": "Axes Settings",
@@ -232,8 +232,8 @@ const fe = { class: "axes-settings-list" }, Ve = { class: "axes-settings-options
232
232
  e[10] || (e[10] = (u) => Y.value = u),
233
233
  e[11] || (e[11] = (u) => M(u, y.value))
234
234
  ],
235
- "column-value-labels": U.value.labels,
236
- "data-column-label": ((o = U.value.selectedSourceInfo) == null ? void 0 : o.label) ?? "",
235
+ "column-value-labels": P.value.labels,
236
+ "data-column-label": ((o = P.value.selectedSourceInfo) == null ? void 0 : o.label) ?? "",
237
237
  "used-aes-in-mapping": B.value[y.value],
238
238
  "allow-reordering": "",
239
239
  "allow-hiding": "",
@@ -268,7 +268,7 @@ const fe = { class: "axes-settings-list" }, Ve = { class: "axes-settings-options
268
268
  }, null, 8, ["modelValue"])
269
269
  ]),
270
270
  l(t).axisX.titleMode === "custom" ? (d(), p("div", Oe, [
271
- s(l(I), {
271
+ s(l(U), {
272
272
  modelValue: l(t).axisX.customTitle,
273
273
  "onUpdate:modelValue": e[17] || (e[17] = (o) => l(t).axisX.customTitle = o),
274
274
  label: "Text",
@@ -282,14 +282,14 @@ const fe = { class: "axes-settings-list" }, Ve = { class: "axes-settings-options
282
282
  "onUpdate:modelValue": e[18] || (e[18] = (o) => l(t).axisX.gridlines = o)
283
283
  }, null, 8, ["modelValue"])
284
284
  ]),
285
- a("div", Ue, [
285
+ a("div", Pe, [
286
286
  e[38] || (e[38] = a("span", null, "Lines between categories", -1)),
287
287
  s(l(v), {
288
288
  modelValue: l(t).axisX.linesBetweenCategories,
289
289
  "onUpdate:modelValue": e[19] || (e[19] = (o) => l(t).axisX.linesBetweenCategories = o)
290
290
  }, null, 8, ["modelValue"])
291
291
  ]),
292
- a("div", Ie, [
292
+ a("div", Ue, [
293
293
  e[39] || (e[39] = a("span", null, "Ticks", -1)),
294
294
  s(l(v), {
295
295
  modelValue: l(t).axisX.ticks,
@@ -299,14 +299,14 @@ const fe = { class: "axes-settings-list" }, Ve = { class: "axes-settings-options
299
299
  ]),
300
300
  _: 1
301
301
  }),
302
- s(G, {
302
+ s(I, {
303
303
  title: "Y-axis",
304
304
  settings: T,
305
- icon: P,
305
+ icon: G,
306
306
  "icon-open": N
307
307
  }, {
308
308
  default: b(() => [
309
- a("div", Ge, [
309
+ a("div", Ie, [
310
310
  s(l(S), {
311
311
  modelValue: l(t).axisY.titleMode,
312
312
  "onUpdate:modelValue": e[21] || (e[21] = (o) => l(t).axisY.titleMode = o),
@@ -314,8 +314,8 @@ const fe = { class: "axes-settings-list" }, Ve = { class: "axes-settings-options
314
314
  options: A
315
315
  }, null, 8, ["modelValue"])
316
316
  ]),
317
- l(t).axisY.titleMode === "custom" ? (d(), p("div", Pe, [
318
- s(l(I), {
317
+ l(t).axisY.titleMode === "custom" ? (d(), p("div", Ge, [
318
+ s(l(U), {
319
319
  modelValue: l(t).axisY.customTitle,
320
320
  "onUpdate:modelValue": e[22] || (e[22] = (o) => l(t).axisY.customTitle = o),
321
321
  label: "Text",
@@ -1 +1 @@
1
- {"version":3,"file":"DiscreteAxesSettingsForm.vue.js","sources":["../../../src/forms/AxesSettingsForm/DiscreteAxesSettingsForm.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport { Slider, PlToggleSwitch } from '@platforma-sdk/ui-vue';\nimport { useStore } from '../../store';\nimport CollapsableBlock from '../../components/CollapsableBlock.vue';\nimport Right from '../../icons/Right.vue';\nimport Down from '../../icons/Down.vue';\nimport { PlTextField, PlBtnGroup } from '@platforma-sdk/ui-vue';\nimport BtnIconGroup from '../../components/BtnIconGroup.vue';\nimport AlignLeft from '../../icons/AlignLeft.vue';\nimport AlignCenter from '../../icons/AlignCenter.vue';\nimport AlignRight from '../../icons/AlignRight.vue';\nimport FrameFull from '../../icons/FrameFull.vue';\nimport FrameEmpty from '../../icons/FrameEmpty.vue';\nimport Rotation0 from '../../icons/Rotation0.vue';\nimport Rotation45 from '../../icons/Rotation45.vue';\nimport Rotation90 from '../../icons/Rotation90.vue';\nimport FrameLeft from '../../icons/FrameLeft.vue';\nimport FrameBottom from '../../icons/FrameBottom.vue';\nimport FrameLeftBottom from '../../icons/FrameLeftBottom.vue';\nimport AesButton from '../../components/AesButton.vue';\nimport FormWrapper from '../../components/AesSettings/FormWrapper.vue';\nimport { computed, onMounted, ref } from 'vue';\nimport AesDataMapping from '../../components/AesSettings/AesDataMappingDiscrete.vue';\nimport type { AestheticMappingCategorical } from '../../dataBindAes';\nimport { createDefaultMapping } from '../../dataBindAes';\nimport type { LabelsRotation } from '../../types';\nimport { getDiscreteLabelsRotation } from '../../utils';\nimport { watch } from 'vue';\n\nconst store = useStore();\nconst settings = store.value.reactive.axesSettings;\nconst blockSettings = {\n height: 40,\n horizontalPadding: 12,\n defaultState: 'open' as 'open' | 'close',\n};\n\nconst OPTIONS_TITLE_ALIGN = [\n { value: 'left', icon: AlignLeft },\n { value: 'center', icon: AlignCenter },\n { value: 'right', icon: AlignRight },\n];\n// const OPTIONS_FACET_FRAME = [\n// {value: 'empty', icon: FrameEmpty},\n// {value: 'full', icon: FrameFull},\n// ]\nconst OPTIONS_LABELS_ROTATION = [\n { value: 'center', icon: Rotation0 },\n { value: '45deg', icon: Rotation45 },\n { value: '90deg', icon: Rotation90 },\n];\nconst OPTIONS_AXIS_LABEL_MODE = [\n { value: 'auto', text: 'Auto' },\n { value: 'custom', text: 'Custom' },\n { value: 'hidden', text: 'Hidden' },\n];\nconst OPTIONS_SCALE = [\n { value: 'linear', text: 'Linear' },\n { value: 'log', text: 'Log' },\n];\nconst OPTIONS_CHART_FRAME = [\n { value: 'empty', icon: FrameEmpty },\n { value: 'left', icon: FrameLeft },\n { value: 'bottom', icon: FrameBottom },\n { value: 'left-bottom', icon: FrameLeftBottom },\n { value: 'full', icon: FrameFull },\n];\n\nconst inputGuide = computed(() => store.value.inputGuide.value);\nconst labelsInfo = computed(() => store.value.uniqueValuesData.value);\n\nconst reorderPrimaryOpen = ref(false);\nconst reorderSecondaryOpen = ref(false);\n\nconst defaultReorderPrimaryOpen = computed(() => store.value.reactive.tabDefaultState['axes'].reorderPrimaryOpen);\nconst defaultReorderSecondaryOpen = computed(() => store.value.reactive.tabDefaultState['axes'].reorderSecondaryOpen);\nonMounted(() => {\n if (defaultReorderPrimaryOpen.value) {\n reorderPrimaryOpen.value = true;\n }\n if (defaultReorderSecondaryOpen.value) {\n reorderSecondaryOpen.value = true;\n }\n});\nwatch(() => defaultReorderPrimaryOpen.value, (v) => {\n if (v) {\n reorderSecondaryOpen.value = false;\n reorderPrimaryOpen.value = true;\n }\n});\nwatch(() => defaultReorderSecondaryOpen.value, (v) => {\n if (v) {\n reorderPrimaryOpen.value = false;\n reorderSecondaryOpen.value = true;\n }\n});\n\nconst primaryGrouping = computed(() => store.value.reactive.optionsState.components.primaryGrouping?.selectorStates[0]?.selectedSource);\nconst secondaryGrouping = computed(() => store.value.reactive.optionsState.components.secondaryGrouping?.selectorStates[0]?.selectedSource);\n\nconst primaryGroups = computed(() => store.value.commonHelpersData.primaryGroups.value);\nconst secondaryGroups = computed(() => store.value.commonHelpersData.secondaryGroups.value);\n\nconst usedAesInMapping = computed(() => store.value.commonHelpersData.usedAesInMapping.value);\n\nconst mappingPrimary = ref(store.value.reactive.dataBindAes[primaryGrouping.value] as AestheticMappingCategorical ?? createDefaultMapping(primaryGroups.value));\nconst mappingSecondary = ref(store.value.reactive.dataBindAes[secondaryGrouping.value] as AestheticMappingCategorical ?? createDefaultMapping(secondaryGroups.value));\n\nconst primaryInfo = computed(() => {\n if (primaryGrouping.value) {\n const selectedSourceInfo = inputGuide.value.getSourceInfo(primaryGrouping.value) ?? null;\n const valueLabels = labelsInfo.value[primaryGrouping.value]?.labels ?? null;\n return {\n selectedSourceInfo,\n labels: primaryGroups.value.reduce((res: Record<string, string>, v) => {\n res[v] = valueLabels?.[v] ?? String(v);\n return res;\n }, {}),\n };\n }\n return null;\n});\nconst secondaryInfo = computed(() => {\n if (secondaryGrouping.value) {\n const selectedSourceInfo = inputGuide.value.getSourceInfo(secondaryGrouping.value) ?? null;\n const valueLabels = labelsInfo.value[secondaryGrouping.value]?.labels ?? null;\n return {\n selectedSourceInfo,\n labels: secondaryGroups.value.reduce((res: Record<string, string>, v) => {\n res[v] = valueLabels?.[v] ?? String(v);\n return res;\n }, {}),\n };\n }\n return null;\n});\n\nfunction updateOrder(value: AestheticMappingCategorical, sourceId: string) {\n store.value.reactive.dataBindAes[sourceId] = value;\n}\n\nconst OPTIONS_FACET_SHARED = [\n { text: 'X', value: 'x' },\n { text: 'Y', value: 'y' },\n { text: 'XY', value: 'xy' },\n { text: 'None', value: 'none' },\n];\n\nconst primaryOptions = computed(() => labelsInfo.value[primaryGrouping.value]);\nconst xLabelsRotation = computed({\n get() {\n return getDiscreteLabelsRotation(settings.axisX.labelsRotation, primaryOptions.value?.options);\n },\n set(value: LabelsRotation) {\n settings.axisX.labelsRotation = value;\n },\n});\n</script>\n\n<template>\n <div class=\"axes-form\" @click=\"(e) => e.stopPropagation()\">\n <h3 class=\"axes-title\">\n Axes\n </h3>\n <div class=\"axes-settings-list\">\n <!-- Chart title -->\n <CollapsableBlock title=\"Title\" :settings=\"blockSettings\" :icon=\"Right\" :icon-open=\"Down\">\n <div class=\"axes-settings-options-row block\">\n <PlBtnGroup\n v-model=\"settings.title.mode\"\n label=\"Title\"\n :options=\"OPTIONS_AXIS_LABEL_MODE\"\n />\n </div>\n <div v-if=\"settings.title.mode === 'custom'\" class=\"axes-settings-input\">\n <PlTextField\n v-model=\"settings.title.value\"\n label=\"Chart title\"\n placeholder=\"Chart title\"\n />\n </div>\n <div class=\"axes-settings-options-row\">\n <span>Alignment</span>\n <BtnIconGroup v-model=\"settings.title.position\" :options=\"OPTIONS_TITLE_ALIGN\"/>\n </div>\n <!-- <div class=\"axes-settings-options-row\">-->\n <!-- <span>Facet frame style</span>-->\n <!-- <btn-icon-group :options=\"OPTIONS_FACET_FRAME\" v-model=\"settings.title.facetTitleFrame\"/>-->\n <!-- </div>-->\n </CollapsableBlock>\n <!-- X axis settings-->\n <CollapsableBlock title=\"X-axis\" :settings=\"blockSettings\" :icon=\"Right\" :icon-open=\"Down\">\n <div v-if=\"primaryGroups.length > 1\" class=\"axes-settings-options-row\">\n <span>Primary groups order: </span>\n <AesButton :data=\"{type: 'data', value: null}\" @click=\"reorderPrimaryOpen = true\" />\n <template v-if=\"reorderPrimaryOpen && primaryInfo\">\n <FormWrapper\n title=\"Reorder primary groups\"\n back-title=\"Axes Settings\"\n @form:open=\"store.reactive.tabDefaultState['axes'].reorderPrimaryOpen = false\"\n @form:close=\"reorderPrimaryOpen = false\"\n >\n <AesDataMapping\n v-model=\"mappingPrimary\"\n :column-value-labels=\"primaryInfo.labels\"\n :data-column-label=\"primaryInfo.selectedSourceInfo?.label ?? ''\"\n :used-aes-in-mapping=\"usedAesInMapping[primaryGrouping]\"\n allow-reordering\n allow-hiding\n :allow-null-option=\"settings.axisX.allowNullPrimaryGroups\"\n @update:modelValue=\"(value:AestheticMappingCategorical) => updateOrder(value, primaryGrouping)\"\n />\n </FormWrapper>\n </template>\n </div>\n <div v-if=\"primaryGroups.length > 1\" class=\"axes-settings-options-row\">\n <span>Allow null primary group</span>\n <PlToggleSwitch v-model=\"settings.axisX.allowNullPrimaryGroups\" />\n </div>\n <div v-if=\"secondaryGroups.length > 1\" class=\"axes-settings-options-row\">\n <span>Secondary groups order: </span>\n <AesButton :data=\"{type: 'data', value: null}\" @click=\"reorderSecondaryOpen = true\" />\n <template v-if=\"reorderSecondaryOpen && secondaryInfo\">\n <FormWrapper\n title=\"Reorder secondary groups\"\n back-title=\"Axes Settings\"\n @form:open=\"store.reactive.tabDefaultState['axes'].reorderSecondaryOpen = false\"\n @form:close=\"reorderSecondaryOpen = false\"\n >\n <AesDataMapping\n v-model=\"mappingSecondary\"\n :column-value-labels=\"secondaryInfo.labels\"\n :data-column-label=\"secondaryInfo.selectedSourceInfo?.label ?? ''\"\n :used-aes-in-mapping=\"usedAesInMapping[secondaryGrouping]\"\n allow-reordering\n allow-hiding\n :allow-null-option=\"settings.axisX.allowNullSecondaryGroups\"\n @update:modelValue=\"(value:AestheticMappingCategorical) => updateOrder(value, secondaryGrouping)\"\n />\n </FormWrapper>\n </template>\n </div>\n <div v-if=\"secondaryGroups.length > 1\" class=\"axes-settings-options-row\">\n <span>Allow null secondary group</span>\n <PlToggleSwitch v-model=\"settings.axisX.allowNullSecondaryGroups\" />\n </div>\n <div v-if=\"store.reactive.chartType === 'discrete'\" class=\"axes-settings-options-row\">\n <span>Labels rotation</span>\n <BtnIconGroup v-model=\"xLabelsRotation\" :options=\"OPTIONS_LABELS_ROTATION\" />\n </div>\n <div class=\"axes-settings-options-row block\">\n <PlBtnGroup\n v-model=\"settings.axisX.titleMode\"\n label=\"Title\"\n :options=\"OPTIONS_AXIS_LABEL_MODE\"\n />\n </div>\n <div v-if=\"settings.axisX.titleMode === 'custom'\">\n <PlTextField\n v-model=\"settings.axisX.customTitle\"\n label=\"Text\"\n placeholder=\"Type\"\n />\n </div>\n <div class=\"axes-settings-options-row table\">\n <span>Gridlines</span>\n <PlToggleSwitch v-model=\"settings.axisX.gridlines\" />\n </div>\n <div class=\"axes-settings-options-row table\">\n <span>Lines between categories</span>\n <PlToggleSwitch v-model=\"settings.axisX.linesBetweenCategories\" />\n </div>\n <div class=\"axes-settings-options-row table\">\n <span>Ticks</span>\n <PlToggleSwitch v-model=\"settings.axisX.ticks\" />\n </div>\n </CollapsableBlock>\n <!-- Y axis settings-->\n <CollapsableBlock title=\"Y-axis\" :settings=\"blockSettings\" :icon=\"Right\" :icon-open=\"Down\">\n <div class=\"axes-settings-options-row block\">\n <PlBtnGroup\n v-model=\"settings.axisY.titleMode\"\n label=\"Title\"\n :options=\"OPTIONS_AXIS_LABEL_MODE\"\n />\n </div>\n <div v-if=\"settings.axisY.titleMode === 'custom'\">\n <PlTextField\n v-model=\"settings.axisY.customTitle\"\n label=\"Text\"\n placeholder=\"Type\"\n />\n </div>\n <div class=\"axes-settings-options-row block\">\n <PlBtnGroup\n v-model=\"settings.axisY.scale\"\n label=\"Scale\"\n :options=\"OPTIONS_SCALE\"\n />\n </div>\n <div class=\"axes-settings-options-row table\">\n <span>Gridlines</span>\n <PlToggleSwitch v-model=\"settings.axisY.gridlines\" />\n </div>\n <div class=\"axes-settings-options-row table\">\n <span>Ticks</span>\n <PlToggleSwitch v-model=\"settings.axisY.ticks\" />\n </div>\n </CollapsableBlock>\n <!-- Facet settings-->\n <div class=\"other\">\n <div class=\"axes-settings-options-row\">\n <span>Frame</span>\n <BtnIconGroup v-model=\"settings.other.frame\" :options=\"OPTIONS_CHART_FRAME\" />\n </div>\n <div class=\"axes-settings-options-row\">\n <span>Reverse axes</span>\n <PlToggleSwitch v-model=\"settings.other.reverse\" />\n </div>\n <div class=\"axes-settings-options-row\">\n <Slider\n v-model=\"settings.other.facetColumns\"\n :style=\"{width: '100%'}\"\n label=\"Facet column count\"\n :min=\"1\"\n :max=\"6\"\n :step=\"1\"\n :breakpoints=\"true\"\n mode=\"input\"\n />\n </div>\n <div class=\"axes-settings-options-row block\">\n <PlBtnGroup\n v-model=\"settings.other.facetSharedBy\"\n label=\"Facet shared by\"\n :options=\"OPTIONS_FACET_SHARED\"\n />\n </div>\n </div>\n </div>\n </div>\n</template>\n"],"names":["store","useStore","settings","blockSettings","OPTIONS_TITLE_ALIGN","AlignLeft","AlignCenter","AlignRight","OPTIONS_LABELS_ROTATION","Rotation0","Rotation45","Rotation90","OPTIONS_AXIS_LABEL_MODE","OPTIONS_SCALE","OPTIONS_CHART_FRAME","FrameEmpty","FrameLeft","FrameBottom","FrameLeftBottom","FrameFull","inputGuide","computed","labelsInfo","reorderPrimaryOpen","ref","reorderSecondaryOpen","defaultReorderPrimaryOpen","defaultReorderSecondaryOpen","onMounted","watch","v","primaryGrouping","_b","_a","secondaryGrouping","primaryGroups","secondaryGroups","usedAesInMapping","mappingPrimary","createDefaultMapping","mappingSecondary","primaryInfo","selectedSourceInfo","valueLabels","res","secondaryInfo","updateOrder","value","sourceId","OPTIONS_FACET_SHARED","primaryOptions","xLabelsRotation","getDiscreteLabelsRotation","_createElementBlock","_cache","e","_createElementVNode","_hoisted_1","_createVNode","CollapsableBlock","Right","Down","_hoisted_2","_unref","PlBtnGroup","$event","_openBlock","_hoisted_3","PlTextField","_hoisted_4","BtnIconGroup","_hoisted_5","AesButton","_createBlock","FormWrapper","AesDataMapping","_hoisted_6","PlToggleSwitch","_hoisted_7","_hoisted_8","_hoisted_9","_hoisted_10","_hoisted_11","_hoisted_12","_hoisted_13","_hoisted_14","_hoisted_15","_hoisted_16","_hoisted_17","_hoisted_18","_hoisted_19","_hoisted_20","_hoisted_21","_hoisted_22","_hoisted_23","Slider","_hoisted_24"],"mappings":"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"}
1
+ {"version":3,"file":"DiscreteAxesSettingsForm.vue.js","sources":["../../../src/forms/AxesSettingsForm/DiscreteAxesSettingsForm.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport { Slider, PlToggleSwitch } from '@platforma-sdk/ui-vue';\nimport { useStore } from '../../store';\nimport CollapsableBlock from '../../components/CollapsableBlock.vue';\nimport Right from '../../icons/Right.vue';\nimport Down from '../../icons/Down.vue';\nimport { PlTextField, PlBtnGroup } from '@platforma-sdk/ui-vue';\nimport BtnIconGroup from '../../components/BtnIconGroup.vue';\nimport AlignLeft from '../../icons/AlignLeft.vue';\nimport AlignCenter from '../../icons/AlignCenter.vue';\nimport AlignRight from '../../icons/AlignRight.vue';\nimport FrameFull from '../../icons/FrameFull.vue';\nimport FrameEmpty from '../../icons/FrameEmpty.vue';\nimport Rotation0 from '../../icons/Rotation0.vue';\nimport Rotation45 from '../../icons/Rotation45.vue';\nimport Rotation90 from '../../icons/Rotation90.vue';\nimport FrameLeft from '../../icons/FrameLeft.vue';\nimport FrameBottom from '../../icons/FrameBottom.vue';\nimport FrameLeftBottom from '../../icons/FrameLeftBottom.vue';\nimport AesButton from '../../components/AesButton.vue';\nimport FormWrapper from '../../components/AesSettings/FormWrapper.vue';\nimport { computed, onMounted, ref } from 'vue';\nimport AesDataMapping from '../../components/AesSettings/AesDataMappingDiscrete.vue';\nimport type { AestheticMappingCategorical } from '../../dataBindAes';\nimport { createDefaultMapping } from '../../dataBindAes';\nimport type { LabelsRotation } from '../../types';\nimport { getDiscreteLabelsRotation } from '../../utils';\nimport { watch } from 'vue';\n\nconst store = useStore();\nconst settings = store.value.reactive.axesSettings;\nconst blockSettings = {\n height: 40,\n horizontalPadding: 12,\n defaultState: 'open' as 'open' | 'close',\n};\n\nconst OPTIONS_TITLE_ALIGN = [\n { value: 'left', icon: AlignLeft },\n { value: 'center', icon: AlignCenter },\n { value: 'right', icon: AlignRight },\n];\n// const OPTIONS_FACET_FRAME = [\n// {value: 'empty', icon: FrameEmpty},\n// {value: 'full', icon: FrameFull},\n// ]\nconst OPTIONS_LABELS_ROTATION = [\n { value: 'center', icon: Rotation0 },\n { value: '45deg', icon: Rotation45 },\n { value: '90deg', icon: Rotation90 },\n];\nconst OPTIONS_AXIS_LABEL_MODE = [\n { value: 'auto', text: 'Auto' },\n { value: 'custom', text: 'Custom' },\n { value: 'hidden', text: 'Hidden' },\n];\nconst OPTIONS_SCALE = [\n { value: 'linear', text: 'Linear' },\n { value: 'log', text: 'Log' },\n];\nconst OPTIONS_CHART_FRAME = [\n { value: 'empty', icon: FrameEmpty },\n { value: 'left', icon: FrameLeft },\n { value: 'bottom', icon: FrameBottom },\n { value: 'left-bottom', icon: FrameLeftBottom },\n { value: 'full', icon: FrameFull },\n];\n\nconst inputGuide = computed(() => store.value.inputGuide.value);\nconst labelsInfo = computed(() => store.value.uniqueValuesData.value);\n\nconst reorderPrimaryOpen = ref(false);\nconst reorderSecondaryOpen = ref(false);\n\nconst defaultReorderPrimaryOpen = computed(() => store.value.reactive.tabDefaultState['axes'].reorderPrimaryOpen);\nconst defaultReorderSecondaryOpen = computed(() => store.value.reactive.tabDefaultState['axes'].reorderSecondaryOpen);\nonMounted(() => {\n if (defaultReorderPrimaryOpen.value) {\n reorderPrimaryOpen.value = true;\n }\n if (defaultReorderSecondaryOpen.value) {\n reorderSecondaryOpen.value = true;\n }\n});\nwatch(() => defaultReorderPrimaryOpen.value, (v) => {\n if (v) {\n reorderSecondaryOpen.value = false;\n reorderPrimaryOpen.value = true;\n }\n});\nwatch(() => defaultReorderSecondaryOpen.value, (v) => {\n if (v) {\n reorderPrimaryOpen.value = false;\n reorderSecondaryOpen.value = true;\n }\n});\n\nconst primaryGrouping = computed(() => store.value.reactive.optionsState.components.primaryGrouping?.selectorStates[0]?.selectedSource);\nconst secondaryGrouping = computed(() => store.value.reactive.optionsState.components.secondaryGrouping?.selectorStates[0]?.selectedSource);\n\nconst primaryGroups = computed(() => store.value.commonHelpersData.primaryGroups.value);\nconst secondaryGroups = computed(() => store.value.commonHelpersData.secondaryGroups.value);\n\nconst usedAesInMapping = computed(() => store.value.commonHelpersData.usedAesInMapping.value);\n\nconst mappingPrimary = ref(store.value.reactive.dataBindAes[primaryGrouping.value] as AestheticMappingCategorical ?? createDefaultMapping(primaryGroups.value, store.value.defaultPalette.categorical));\nconst mappingSecondary = ref(store.value.reactive.dataBindAes[secondaryGrouping.value] as AestheticMappingCategorical ?? createDefaultMapping(secondaryGroups.value, store.value.defaultPalette.categorical));\n\nconst primaryInfo = computed(() => {\n if (primaryGrouping.value) {\n const selectedSourceInfo = inputGuide.value.getSourceInfo(primaryGrouping.value) ?? null;\n const valueLabels = labelsInfo.value[primaryGrouping.value]?.labels ?? null;\n return {\n selectedSourceInfo,\n labels: primaryGroups.value.reduce((res: Record<string, string>, v) => {\n res[v] = valueLabels?.[v] ?? String(v);\n return res;\n }, {}),\n };\n }\n return null;\n});\nconst secondaryInfo = computed(() => {\n if (secondaryGrouping.value) {\n const selectedSourceInfo = inputGuide.value.getSourceInfo(secondaryGrouping.value) ?? null;\n const valueLabels = labelsInfo.value[secondaryGrouping.value]?.labels ?? null;\n return {\n selectedSourceInfo,\n labels: secondaryGroups.value.reduce((res: Record<string, string>, v) => {\n res[v] = valueLabels?.[v] ?? String(v);\n return res;\n }, {}),\n };\n }\n return null;\n});\n\nfunction updateOrder(value: AestheticMappingCategorical, sourceId: string) {\n store.value.reactive.dataBindAes[sourceId] = value;\n}\n\nconst OPTIONS_FACET_SHARED = [\n { text: 'X', value: 'x' },\n { text: 'Y', value: 'y' },\n { text: 'XY', value: 'xy' },\n { text: 'None', value: 'none' },\n];\n\nconst primaryOptions = computed(() => labelsInfo.value[primaryGrouping.value]);\nconst xLabelsRotation = computed({\n get() {\n return getDiscreteLabelsRotation(settings.axisX.labelsRotation, primaryOptions.value?.options);\n },\n set(value: LabelsRotation) {\n settings.axisX.labelsRotation = value;\n },\n});\n</script>\n\n<template>\n <div class=\"axes-form\" @click=\"(e) => e.stopPropagation()\">\n <h3 class=\"axes-title\">\n Axes\n </h3>\n <div class=\"axes-settings-list\">\n <!-- Chart title -->\n <CollapsableBlock title=\"Title\" :settings=\"blockSettings\" :icon=\"Right\" :icon-open=\"Down\">\n <div class=\"axes-settings-options-row block\">\n <PlBtnGroup\n v-model=\"settings.title.mode\"\n label=\"Title\"\n :options=\"OPTIONS_AXIS_LABEL_MODE\"\n />\n </div>\n <div v-if=\"settings.title.mode === 'custom'\" class=\"axes-settings-input\">\n <PlTextField\n v-model=\"settings.title.value\"\n label=\"Chart title\"\n placeholder=\"Chart title\"\n />\n </div>\n <div class=\"axes-settings-options-row\">\n <span>Alignment</span>\n <BtnIconGroup v-model=\"settings.title.position\" :options=\"OPTIONS_TITLE_ALIGN\"/>\n </div>\n <!-- <div class=\"axes-settings-options-row\">-->\n <!-- <span>Facet frame style</span>-->\n <!-- <btn-icon-group :options=\"OPTIONS_FACET_FRAME\" v-model=\"settings.title.facetTitleFrame\"/>-->\n <!-- </div>-->\n </CollapsableBlock>\n <!-- X axis settings-->\n <CollapsableBlock title=\"X-axis\" :settings=\"blockSettings\" :icon=\"Right\" :icon-open=\"Down\">\n <div v-if=\"primaryGroups.length > 1\" class=\"axes-settings-options-row\">\n <span>Primary groups order: </span>\n <AesButton :data=\"{type: 'data', value: null}\" @click=\"reorderPrimaryOpen = true\" />\n <template v-if=\"reorderPrimaryOpen && primaryInfo\">\n <FormWrapper\n title=\"Reorder primary groups\"\n back-title=\"Axes Settings\"\n @form:open=\"store.reactive.tabDefaultState['axes'].reorderPrimaryOpen = false\"\n @form:close=\"reorderPrimaryOpen = false\"\n >\n <AesDataMapping\n v-model=\"mappingPrimary\"\n :column-value-labels=\"primaryInfo.labels\"\n :data-column-label=\"primaryInfo.selectedSourceInfo?.label ?? ''\"\n :used-aes-in-mapping=\"usedAesInMapping[primaryGrouping]\"\n allow-reordering\n allow-hiding\n :allow-null-option=\"settings.axisX.allowNullPrimaryGroups\"\n @update:modelValue=\"(value:AestheticMappingCategorical) => updateOrder(value, primaryGrouping)\"\n />\n </FormWrapper>\n </template>\n </div>\n <div v-if=\"primaryGroups.length > 1\" class=\"axes-settings-options-row\">\n <span>Allow null primary group</span>\n <PlToggleSwitch v-model=\"settings.axisX.allowNullPrimaryGroups\" />\n </div>\n <div v-if=\"secondaryGroups.length > 1\" class=\"axes-settings-options-row\">\n <span>Secondary groups order: </span>\n <AesButton :data=\"{type: 'data', value: null}\" @click=\"reorderSecondaryOpen = true\" />\n <template v-if=\"reorderSecondaryOpen && secondaryInfo\">\n <FormWrapper\n title=\"Reorder secondary groups\"\n back-title=\"Axes Settings\"\n @form:open=\"store.reactive.tabDefaultState['axes'].reorderSecondaryOpen = false\"\n @form:close=\"reorderSecondaryOpen = false\"\n >\n <AesDataMapping\n v-model=\"mappingSecondary\"\n :column-value-labels=\"secondaryInfo.labels\"\n :data-column-label=\"secondaryInfo.selectedSourceInfo?.label ?? ''\"\n :used-aes-in-mapping=\"usedAesInMapping[secondaryGrouping]\"\n allow-reordering\n allow-hiding\n :allow-null-option=\"settings.axisX.allowNullSecondaryGroups\"\n @update:modelValue=\"(value:AestheticMappingCategorical) => updateOrder(value, secondaryGrouping)\"\n />\n </FormWrapper>\n </template>\n </div>\n <div v-if=\"secondaryGroups.length > 1\" class=\"axes-settings-options-row\">\n <span>Allow null secondary group</span>\n <PlToggleSwitch v-model=\"settings.axisX.allowNullSecondaryGroups\" />\n </div>\n <div v-if=\"store.reactive.chartType === 'discrete'\" class=\"axes-settings-options-row\">\n <span>Labels rotation</span>\n <BtnIconGroup v-model=\"xLabelsRotation\" :options=\"OPTIONS_LABELS_ROTATION\" />\n </div>\n <div class=\"axes-settings-options-row block\">\n <PlBtnGroup\n v-model=\"settings.axisX.titleMode\"\n label=\"Title\"\n :options=\"OPTIONS_AXIS_LABEL_MODE\"\n />\n </div>\n <div v-if=\"settings.axisX.titleMode === 'custom'\">\n <PlTextField\n v-model=\"settings.axisX.customTitle\"\n label=\"Text\"\n placeholder=\"Type\"\n />\n </div>\n <div class=\"axes-settings-options-row table\">\n <span>Gridlines</span>\n <PlToggleSwitch v-model=\"settings.axisX.gridlines\" />\n </div>\n <div class=\"axes-settings-options-row table\">\n <span>Lines between categories</span>\n <PlToggleSwitch v-model=\"settings.axisX.linesBetweenCategories\" />\n </div>\n <div class=\"axes-settings-options-row table\">\n <span>Ticks</span>\n <PlToggleSwitch v-model=\"settings.axisX.ticks\" />\n </div>\n </CollapsableBlock>\n <!-- Y axis settings-->\n <CollapsableBlock title=\"Y-axis\" :settings=\"blockSettings\" :icon=\"Right\" :icon-open=\"Down\">\n <div class=\"axes-settings-options-row block\">\n <PlBtnGroup\n v-model=\"settings.axisY.titleMode\"\n label=\"Title\"\n :options=\"OPTIONS_AXIS_LABEL_MODE\"\n />\n </div>\n <div v-if=\"settings.axisY.titleMode === 'custom'\">\n <PlTextField\n v-model=\"settings.axisY.customTitle\"\n label=\"Text\"\n placeholder=\"Type\"\n />\n </div>\n <div class=\"axes-settings-options-row block\">\n <PlBtnGroup\n v-model=\"settings.axisY.scale\"\n label=\"Scale\"\n :options=\"OPTIONS_SCALE\"\n />\n </div>\n <div class=\"axes-settings-options-row table\">\n <span>Gridlines</span>\n <PlToggleSwitch v-model=\"settings.axisY.gridlines\" />\n </div>\n <div class=\"axes-settings-options-row table\">\n <span>Ticks</span>\n <PlToggleSwitch v-model=\"settings.axisY.ticks\" />\n </div>\n </CollapsableBlock>\n <!-- Facet settings-->\n <div class=\"other\">\n <div class=\"axes-settings-options-row\">\n <span>Frame</span>\n <BtnIconGroup v-model=\"settings.other.frame\" :options=\"OPTIONS_CHART_FRAME\" />\n </div>\n <div class=\"axes-settings-options-row\">\n <span>Reverse axes</span>\n <PlToggleSwitch v-model=\"settings.other.reverse\" />\n </div>\n <div class=\"axes-settings-options-row\">\n <Slider\n v-model=\"settings.other.facetColumns\"\n :style=\"{width: '100%'}\"\n label=\"Facet column count\"\n :min=\"1\"\n :max=\"6\"\n :step=\"1\"\n :breakpoints=\"true\"\n mode=\"input\"\n />\n </div>\n <div class=\"axes-settings-options-row block\">\n <PlBtnGroup\n v-model=\"settings.other.facetSharedBy\"\n label=\"Facet shared by\"\n :options=\"OPTIONS_FACET_SHARED\"\n />\n </div>\n </div>\n </div>\n </div>\n</template>\n"],"names":["store","useStore","settings","blockSettings","OPTIONS_TITLE_ALIGN","AlignLeft","AlignCenter","AlignRight","OPTIONS_LABELS_ROTATION","Rotation0","Rotation45","Rotation90","OPTIONS_AXIS_LABEL_MODE","OPTIONS_SCALE","OPTIONS_CHART_FRAME","FrameEmpty","FrameLeft","FrameBottom","FrameLeftBottom","FrameFull","inputGuide","computed","labelsInfo","reorderPrimaryOpen","ref","reorderSecondaryOpen","defaultReorderPrimaryOpen","defaultReorderSecondaryOpen","onMounted","watch","v","primaryGrouping","_b","_a","secondaryGrouping","primaryGroups","secondaryGroups","usedAesInMapping","mappingPrimary","createDefaultMapping","mappingSecondary","primaryInfo","selectedSourceInfo","valueLabels","res","secondaryInfo","updateOrder","value","sourceId","OPTIONS_FACET_SHARED","primaryOptions","xLabelsRotation","getDiscreteLabelsRotation","_createElementBlock","_cache","e","_createElementVNode","_hoisted_1","_createVNode","CollapsableBlock","Right","Down","_hoisted_2","_unref","PlBtnGroup","$event","_openBlock","_hoisted_3","PlTextField","_hoisted_4","BtnIconGroup","_hoisted_5","AesButton","_createBlock","FormWrapper","AesDataMapping","_hoisted_6","PlToggleSwitch","_hoisted_7","_hoisted_8","_hoisted_9","_hoisted_10","_hoisted_11","_hoisted_12","_hoisted_13","_hoisted_14","_hoisted_15","_hoisted_16","_hoisted_17","_hoisted_18","_hoisted_19","_hoisted_20","_hoisted_21","_hoisted_22","_hoisted_23","Slider","_hoisted_24"],"mappings":"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"}
@@ -1,18 +1,18 @@
1
- import { defineComponent as Z, computed as g, ref as F, watch as q, createElementBlock as _, openBlock as y, Fragment as ee, createElementVNode as O, createBlock as S, createCommentVNode as T, createVNode as R, withModifiers as te, unref as A, withCtx as L, normalizeClass as le } from "vue";
1
+ import { defineComponent as Z, computed as g, ref as F, watch as q, createElementBlock as _, openBlock as y, Fragment as ee, createElementVNode as w, createBlock as S, createCommentVNode as T, createVNode as U, withModifiers as te, unref as O, withCtx as M, normalizeClass as le } from "vue";
2
2
  import { PlDropdown as ae } from "@platforma-sdk/ui-vue";
3
3
  import { createDefaultMapping as oe, createContinuousMappingFromPalette as ue } from "../../dataBindAes.js";
4
- import { FIXED_COLORS as w, DEFAULT_LINE_TYPE as ie, DEFAULT_DOT_SHAPE as ne, FIXED_LINE_TYPES as se, FIXES_DOT_SHAPES as re, DEFAULT_CONTINUOUS_PALETTE as pe } from "../../constantsAesthetic.js";
5
- import de from "../../components/AesButton.vue.js";
6
- import { useStore as ve } from "../../store.js";
7
- import { isMappedAes as M } from "../../constantsCommon.js";
8
- import ce from "../../components/Popup.vue.js";
9
- import fe from "../../components/AesSettings/FixedColorsList.vue.js";
10
- import me from "../../components/AesSettings/FixedDotShapeList.vue.js";
11
- import ge from "../../components/AesSettings/FixedLineTypeList.vue.js";
12
- import ye from "../../components/AesSettings/FormWrapper.vue.js";
13
- import Se from "../../components/AesSettings/AesDataMappingDiscrete.vue.js";
14
- import Te from "../../components/AesSettings/AesDataMappingContinuous.vue.js";
15
- const Ee = { class: "aes-input-row" }, Ne = /* @__PURE__ */ Z({
4
+ import { FIXED_COLORS as A, DEFAULT_LINE_TYPE as ie, DEFAULT_DOT_SHAPE as ne, FIXED_LINE_TYPES as se, FIXES_DOT_SHAPES as re } from "../../constantsAesthetic.js";
5
+ import pe from "../../components/AesButton.vue.js";
6
+ import { useStore as de } from "../../store.js";
7
+ import { isMappedAes as L } from "../../constantsCommon.js";
8
+ import ve from "../../components/Popup.vue.js";
9
+ import ce from "../../components/AesSettings/FixedColorsList.vue.js";
10
+ import fe from "../../components/AesSettings/FixedDotShapeList.vue.js";
11
+ import me from "../../components/AesSettings/FixedLineTypeList.vue.js";
12
+ import ge from "../../components/AesSettings/FormWrapper.vue.js";
13
+ import ye from "../../components/AesSettings/AesDataMappingDiscrete.vue.js";
14
+ import Se from "../../components/AesSettings/AesDataMappingContinuous.vue.js";
15
+ const Te = { class: "aes-input-row" }, He = /* @__PURE__ */ Z({
16
16
  __name: "AesSelector",
17
17
  props: {
18
18
  label: {},
@@ -26,8 +26,8 @@ const Ee = { class: "aes-input-row" }, Ne = /* @__PURE__ */ Z({
26
26
  },
27
27
  emits: ["aes-update", "aes-selector-close"],
28
28
  setup(i, { emit: W }) {
29
- var P, h;
30
- const r = i, p = ve(), o = g(() => p.value.reactive.chartType), $ = W, X = {
29
+ var N, B;
30
+ const r = i, p = de(), o = g(() => p.value.reactive.chartType), C = W, X = {
31
31
  discrete: ["primaryGrouping", "secondaryGrouping"],
32
32
  scatterplot: ["grouping"],
33
33
  "scatterplot-umap": ["grouping"],
@@ -42,10 +42,10 @@ const Ee = { class: "aes-input-row" }, Ne = /* @__PURE__ */ Z({
42
42
  return typeof l == "string" ? l : o.value === "scatterplot" ? `grouping_${l.value}` : o.value === "dendro" ? `${l.type}_${l.value}` : l.type;
43
43
  }
44
44
  const s = F(
45
- M(r.selected) ? V(r.selected) : "fix"
45
+ L(r.selected) ? V(r.selected) : "fix"
46
46
  ), z = {
47
- fill: w[0].color,
48
- stroke: w[0].color,
47
+ fill: A[0].color,
48
+ stroke: A[0].color,
49
49
  dotShape: ne,
50
50
  lineType: ie,
51
51
  size: ""
@@ -57,32 +57,32 @@ const Ee = { class: "aes-input-row" }, Ne = /* @__PURE__ */ Z({
57
57
  ]), d = g(() => {
58
58
  const l = {}, e = p.value.reactive.optionsState.components;
59
59
  function v(a, t) {
60
- const u = K.value.getSourceInfo(t), c = j.value[t], b = (c == null ? void 0 : c.list) ?? [], f = (c == null ? void 0 : c.labels) ?? {}, D = V({ type: a, value: t });
60
+ const u = K.value.getSourceInfo(t), c = j.value[t], E = (c == null ? void 0 : c.list) ?? [], f = (c == null ? void 0 : c.labels) ?? {}, D = V({ type: a, value: t });
61
61
  if (H.has(o.value) && u.type === "String" || !H.has(o.value)) {
62
- const C = p.value.reactive.dataBindAes[t] ?? oe(b);
62
+ const $ = p.value.reactive.dataBindAes[t] ?? oe(E, p.value.defaultPalette.categorical);
63
63
  l[D] = {
64
64
  type: "dataCategorical",
65
65
  value: D,
66
- initialData: C,
66
+ initialData: $,
67
67
  inputName: a,
68
68
  selectedSource: t,
69
69
  selectedSourceInfo: u,
70
- selectedSourceValues: b,
71
- labels: C.order.reduce(
72
- (B, k) => (B[k] = f[k] ?? String(k), B),
70
+ selectedSourceValues: E,
71
+ labels: $.order.reduce(
72
+ (R, k) => (R[k] = f[k] ?? String(k), R),
73
73
  {}
74
74
  )
75
75
  };
76
76
  } else {
77
- const C = p.value.reactive.dataBindAes[t] ?? ue(pe);
77
+ const $ = p.value.reactive.dataBindAes[t] ?? ue(p.value.defaultPalette.continuous);
78
78
  l[D] = {
79
79
  type: "dataContinuous",
80
80
  value: D,
81
- initialData: C,
81
+ initialData: $,
82
82
  inputName: a,
83
83
  selectedSource: t,
84
84
  selectedSourceInfo: u,
85
- selectedSourceValues: b
85
+ selectedSourceValues: E
86
86
  };
87
87
  }
88
88
  }
@@ -94,7 +94,7 @@ const Ee = { class: "aes-input-row" }, Ne = /* @__PURE__ */ Z({
94
94
  }), r.withoutFixed || (l.fix = {
95
95
  type: "fix",
96
96
  value: "fix",
97
- initialData: M(r.selected) ? z[r.type] : r.selected
97
+ initialData: L(r.selected) ? z[r.type] : r.selected
98
98
  }), l;
99
99
  }), n = g(
100
100
  () => d.value[s.value] ?? null
@@ -103,7 +103,7 @@ const Ee = { class: "aes-input-row" }, Ne = /* @__PURE__ */ Z({
103
103
  var v, a, t, u;
104
104
  return l.type === "fix" ? "Fixed" : e === l.value ? `${(v = l.selectedSourceInfo) == null ? void 0 : v.label}` : o.value === "discrete" ? `${l.value === "primaryGrouping" ? "Primary" : "Secondary"} grouping: ${(a = l.selectedSourceInfo) == null ? void 0 : a.label}` : o.value === "scatterplot" || o.value === "dendro" ? `Grouping: ${(t = l.selectedSourceInfo) == null ? void 0 : t.label}` : ((u = l.selectedSourceInfo) == null ? void 0 : u.label) ?? "";
105
105
  }
106
- const N = g(() => {
106
+ const P = g(() => {
107
107
  const l = [], e = p.value.reactive.optionsState.components;
108
108
  function v(a, t) {
109
109
  const u = V({
@@ -125,57 +125,57 @@ const Ee = { class: "aes-input-row" }, Ne = /* @__PURE__ */ Z({
125
125
  o.value === "discrete" && (a = `${s.value === "primaryGrouping" ? "Primary" : "Secondary"} grouping (not selected)`), l.push({ text: a, value: s.value });
126
126
  }
127
127
  return r.withoutFixed || l.push({ text: "Fixed", value: "fix" }), l;
128
- }), E = F(!1), m = F(
128
+ }), b = F(!1), m = F(
129
129
  d.value.fix ? d.value.fix.initialData : null
130
130
  ), x = F(
131
- ((P = n.value) == null ? void 0 : P.type) === "dataCategorical" ? n.value.initialData : null
131
+ ((N = n.value) == null ? void 0 : N.type) === "dataCategorical" ? n.value.initialData : null
132
132
  ), I = F(
133
- ((h = n.value) == null ? void 0 : h.type) === "dataContinuous" ? n.value.initialData : null
133
+ ((B = n.value) == null ? void 0 : B.type) === "dataContinuous" ? n.value.initialData : null
134
134
  );
135
135
  q(
136
136
  () => s.value,
137
137
  (l) => {
138
138
  const e = d.value[l];
139
- e.type === "fix" ? $("aes-update", m.value, e) : e.type === "dataCategorical" ? (x.value = e.initialData, $("aes-update", e.initialData, e)) : e.type === "dataContinuous" && (I.value = e.initialData, $("aes-update", e.initialData, e));
139
+ e.type === "fix" ? C("aes-update", m.value, e) : e.type === "dataCategorical" ? (x.value = e.initialData, C("aes-update", e.initialData, e)) : e.type === "dataContinuous" && (I.value = e.initialData, C("aes-update", e.initialData, e));
140
140
  }
141
141
  );
142
- const U = F(), Q = g(() => r.type === "lineType" ? se.length * 32 + 32 : r.type === "dotShape" ? Math.ceil(re.length / 6) * 36 + 40 : r.type === "fill" || r.type === "stroke" ? Math.ceil(w.length / 6) * 36 + 40 : 0);
142
+ const h = F(), Q = g(() => r.type === "lineType" ? se.length * 32 + 32 : r.type === "dotShape" ? Math.ceil(re.length / 6) * 36 + 40 : r.type === "fill" || r.type === "stroke" ? Math.ceil(A.length / 6) * 36 + 40 : 0);
143
143
  return (l, e) => {
144
144
  var v, a;
145
145
  return y(), _(ee, null, [
146
- O("div", Ee, [
147
- O("div", {
146
+ w("div", Te, [
147
+ w("div", {
148
148
  class: "aes-input-select",
149
149
  onClick: e[1] || (e[1] = te(() => {
150
150
  }, ["stop"]))
151
151
  }, [
152
- R(A(ae), {
152
+ U(O(ae), {
153
153
  modelValue: s.value,
154
154
  "onUpdate:modelValue": e[0] || (e[0] = (t) => s.value = t),
155
- disabled: i.disabled || N.value.length < 2,
155
+ disabled: i.disabled || P.value.length < 2,
156
156
  label: i.label,
157
- options: N.value
157
+ options: P.value
158
158
  }, null, 8, ["modelValue", "disabled", "label", "options"])
159
159
  ]),
160
- R(de, {
160
+ U(pe, {
161
161
  data: {
162
162
  type: s.value === "fix" ? i.type : "data",
163
163
  value: s.value === "fix" ? i.type === "size" ? Number(i.selected) : i.selected : null
164
164
  },
165
- onClick: e[2] || (e[2] = (t) => E.value = !E.value),
166
- onRef: e[3] || (e[3] = (t) => U.value = t)
165
+ onClick: e[2] || (e[2] = (t) => b.value = !b.value),
166
+ onRef: e[3] || (e[3] = (t) => h.value = t)
167
167
  }, null, 8, ["data"]),
168
- s.value === "fix" && E.value && m.value ? (y(), S(ce, {
168
+ s.value === "fix" && b.value && m.value ? (y(), S(ve, {
169
169
  key: 0,
170
170
  height: Q.value,
171
- targetRef: U.value,
172
- "onPopup:close": e[10] || (e[10] = (t) => E.value = !1)
171
+ targetRef: h.value,
172
+ "onPopup:close": e[10] || (e[10] = (t) => b.value = !1)
173
173
  }, {
174
- default: L(() => [
175
- O("div", {
174
+ default: M(() => [
175
+ w("div", {
176
176
  class: le(["fixed-aes-list", { "fixed-aes-list__rows": i.type === "lineType" }])
177
177
  }, [
178
- i.type === "fill" || i.type === "stroke" ? (y(), S(fe, {
178
+ i.type === "fill" || i.type === "stroke" ? (y(), S(ce, {
179
179
  key: 0,
180
180
  modelValue: m.value,
181
181
  "onUpdate:modelValue": [
@@ -184,7 +184,7 @@ const Ee = { class: "aes-input-row" }, Ne = /* @__PURE__ */ Z({
184
184
  ],
185
185
  "color-using": i.type
186
186
  }, null, 8, ["modelValue", "color-using"])) : T("", !0),
187
- i.type === "dotShape" ? (y(), S(me, {
187
+ i.type === "dotShape" ? (y(), S(fe, {
188
188
  key: 1,
189
189
  modelValue: m.value,
190
190
  "onUpdate:modelValue": [
@@ -192,7 +192,7 @@ const Ee = { class: "aes-input-row" }, Ne = /* @__PURE__ */ Z({
192
192
  e[7] || (e[7] = (t) => l.$emit("aes-update", t, d.value.fix))
193
193
  ]
194
194
  }, null, 8, ["modelValue"])) : T("", !0),
195
- i.type === "lineType" ? (y(), S(ge, {
195
+ i.type === "lineType" ? (y(), S(me, {
196
196
  key: 2,
197
197
  modelValue: m.value,
198
198
  "onUpdate:modelValue": [
@@ -205,16 +205,16 @@ const Ee = { class: "aes-input-row" }, Ne = /* @__PURE__ */ Z({
205
205
  _: 1
206
206
  }, 8, ["height", "targetRef"])) : T("", !0)
207
207
  ]),
208
- (((v = n.value) == null ? void 0 : v.type) === "dataCategorical" && x.value || ((a = n.value) == null ? void 0 : a.type) === "dataContinuous" && I.value) && E.value ? (y(), S(ye, {
208
+ (((v = n.value) == null ? void 0 : v.type) === "dataCategorical" && x.value || ((a = n.value) == null ? void 0 : a.type) === "dataContinuous" && I.value) && b.value ? (y(), S(ge, {
209
209
  key: 0,
210
210
  title: i.formTitle,
211
211
  "back-title": i.formBackTitle,
212
- "onForm:close": e[15] || (e[15] = (t) => E.value = !1)
212
+ "onForm:close": e[15] || (e[15] = (t) => b.value = !1)
213
213
  }, {
214
- default: L(() => {
215
- var t, u, c, b;
214
+ default: M(() => {
215
+ var t, u, c, E;
216
216
  return [
217
- ((t = n.value) == null ? void 0 : t.type) === "dataCategorical" && x.value ? (y(), S(Se, {
217
+ ((t = n.value) == null ? void 0 : t.type) === "dataCategorical" && x.value ? (y(), S(ye, {
218
218
  key: 0,
219
219
  modelValue: x.value,
220
220
  "onUpdate:modelValue": [
@@ -226,16 +226,16 @@ const Ee = { class: "aes-input-row" }, Ne = /* @__PURE__ */ Z({
226
226
  "used-aes-in-mapping": Y.value[n.value.selectedSource],
227
227
  "allow-hiding": o.value === "discrete",
228
228
  "allow-reordering": o.value === "discrete" || o.value === "histogram" || o.value === "scatterplot" || o.value === "scatterplot-umap",
229
- "allow-null-option": o.value === "discrete" && (s.value === "primaryGrouping" && A(p).reactive.axesSettings.axisX.allowNullPrimaryGroups || s.value === "secondaryGrouping" && A(p).reactive.axesSettings.axisX.allowNullSecondaryGroups) || o.value === "scatterplot" || o.value === "scatterplot-umap"
229
+ "allow-null-option": o.value === "discrete" && (s.value === "primaryGrouping" && O(p).reactive.axesSettings.axisX.allowNullPrimaryGroups || s.value === "secondaryGrouping" && O(p).reactive.axesSettings.axisX.allowNullSecondaryGroups) || o.value === "scatterplot" || o.value === "scatterplot-umap"
230
230
  }, null, 8, ["modelValue", "column-value-labels", "data-column-label", "used-aes-in-mapping", "allow-hiding", "allow-reordering", "allow-null-option"])) : T("", !0),
231
- ((c = n.value) == null ? void 0 : c.type) === "dataContinuous" && I.value ? (y(), S(Te, {
231
+ ((c = n.value) == null ? void 0 : c.type) === "dataContinuous" && I.value ? (y(), S(Se, {
232
232
  key: 1,
233
233
  modelValue: I.value,
234
234
  "onUpdate:modelValue": [
235
235
  e[13] || (e[13] = (f) => I.value = f),
236
236
  e[14] || (e[14] = (f) => l.$emit("aes-update", f, n.value))
237
237
  ],
238
- "data-column-label": ((b = n.value.selectedSourceInfo) == null ? void 0 : b.label) ?? ""
238
+ "data-column-label": ((E = n.value.selectedSourceInfo) == null ? void 0 : E.label) ?? ""
239
239
  }, null, 8, ["modelValue", "data-column-label"])) : T("", !0)
240
240
  ];
241
241
  }),
@@ -246,6 +246,6 @@ const Ee = { class: "aes-input-row" }, Ne = /* @__PURE__ */ Z({
246
246
  }
247
247
  });
248
248
  export {
249
- Ne as default
249
+ He as default
250
250
  };
251
251
  //# sourceMappingURL=AesSelector.vue.js.map