@milaboratories/graph-maker 1.1.177 → 1.1.178

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 (197) hide show
  1. package/dist/components/AesButton.vue.d.ts +6 -6
  2. package/dist/components/AesButton.vue.js +2 -2
  3. package/dist/components/AesButton.vue.js.map +1 -1
  4. package/dist/components/AesSettings/AesDataMappingContinuous.vue.js +14 -14
  5. package/dist/components/AesSettings/AesDataMappingContinuous.vue.js.map +1 -1
  6. package/dist/components/AesSettings/AesDataMappingDiscrete.vue.js +39 -38
  7. package/dist/components/AesSettings/AesDataMappingDiscrete.vue.js.map +1 -1
  8. package/dist/components/AesSettings/FixedColorsList.vue.d.ts +1 -1
  9. package/dist/components/AesSettings/FixedColorsList.vue.js +13 -12
  10. package/dist/components/AesSettings/FixedColorsList.vue.js.map +1 -1
  11. package/dist/components/AesSettings/FixedDotShapeList.vue.js +10 -9
  12. package/dist/components/AesSettings/FixedDotShapeList.vue.js.map +1 -1
  13. package/dist/components/AesSettings/FixedLineTypeList.vue.js +12 -11
  14. package/dist/components/AesSettings/FixedLineTypeList.vue.js.map +1 -1
  15. package/dist/components/AesSettings/FormWrapper.vue.js +2 -2
  16. package/dist/components/AesSettings/FormWrapper.vue.js.map +1 -1
  17. package/dist/components/AesSettings/PalettesForm.vue.js +54 -50
  18. package/dist/components/AesSettings/PalettesForm.vue.js.map +1 -1
  19. package/dist/components/AesSettings/types.d.ts +9 -9
  20. package/dist/components/BtnIconGroup.vue.js +10 -11
  21. package/dist/components/BtnIconGroup.vue.js.map +1 -1
  22. package/dist/components/Chart.vue.js +6 -8
  23. package/dist/components/Chart.vue.js.map +1 -1
  24. package/dist/components/CollapsableBlock.vue.js +2 -2
  25. package/dist/components/CollapsableBlock.vue.js.map +1 -1
  26. package/dist/components/DendroTable.vue.js +2 -2
  27. package/dist/components/DendroTable.vue.js.map +1 -1
  28. package/dist/components/DendroTooltip.vue.js +15 -14
  29. package/dist/components/DendroTooltip.vue.js.map +1 -1
  30. package/dist/components/DragAndDrop/DnDBasketChip.vue.js +2 -2
  31. package/dist/components/DragAndDrop/DnDBasketChip.vue.js.map +1 -1
  32. package/dist/components/DragAndDrop/DnDRangeChip.vue.d.ts +12 -3
  33. package/dist/components/DragAndDrop/DnDRangeChip.vue.js +4 -4
  34. package/dist/components/DragAndDrop/DnDRangeChip.vue.js.map +1 -1
  35. package/dist/components/DragAndDrop/DndBasket.vue.js +26 -26
  36. package/dist/components/DragAndDrop/DndBasket.vue.js.map +1 -1
  37. package/dist/components/DragAndDrop/DndChip.vue.js.map +1 -1
  38. package/dist/components/DragAndDrop/DndDoubleChip.vue.js +2 -2
  39. package/dist/components/DragAndDrop/DndDoubleChip.vue.js.map +1 -1
  40. package/dist/components/DragAndDrop/types.d.ts +1 -1
  41. package/dist/components/LassoControls/index.vue.js +4 -4
  42. package/dist/components/LassoControls/index.vue.js.map +1 -1
  43. package/dist/components/Loading.vue.js +8 -7
  44. package/dist/components/Loading.vue.js.map +1 -1
  45. package/dist/components/MultiselectButton.vue.js +28 -27
  46. package/dist/components/MultiselectButton.vue.js.map +1 -1
  47. package/dist/components/PanelModal.vue.js.map +1 -1
  48. package/dist/components/PlColorSlider.vue.js +12 -12
  49. package/dist/components/PlColorSlider.vue.js.map +1 -1
  50. package/dist/components/PlColorSliderThumb.vue.js +1 -3
  51. package/dist/components/PlColorSliderThumb.vue.js.map +1 -1
  52. package/dist/components/Popup.vue.d.ts +2 -0
  53. package/dist/components/Popup.vue.js +21 -21
  54. package/dist/components/Popup.vue.js.map +1 -1
  55. package/dist/components/ReorderForm.vue.js +20 -17
  56. package/dist/components/ReorderForm.vue.js.map +1 -1
  57. package/dist/components/SettingsTabs/icons/DeleteChartIcon.vue.js.map +1 -1
  58. package/dist/components/SettingsTabs/icons/LogIcon.vue.js.map +1 -1
  59. package/dist/components/SettingsTabs/icons/SettingsIcon.vue.js.map +1 -1
  60. package/dist/components/SettingsTabs/index.vue.js.map +1 -1
  61. package/dist/components/Zoom/ZoomInput.vue.js +11 -11
  62. package/dist/components/Zoom/ZoomInput.vue.js.map +1 -1
  63. package/dist/components/Zoom/index.vue.js.map +1 -1
  64. package/dist/composition/useComponent.js.map +1 -1
  65. package/dist/constantsAesthetic.js.map +1 -1
  66. package/dist/constantsCommon.d.ts +3 -1
  67. package/dist/constantsCommon.js +5 -5
  68. package/dist/constantsCommon.js.map +1 -1
  69. package/dist/dataBindAes.js +4 -2
  70. package/dist/dataBindAes.js.map +1 -1
  71. package/dist/forms/AxesSettingsForm/BubbleAxesSettingsForm.vue.js +35 -35
  72. package/dist/forms/AxesSettingsForm/BubbleAxesSettingsForm.vue.js.map +1 -1
  73. package/dist/forms/AxesSettingsForm/DiscreteAxesSettingsForm.vue.js +49 -47
  74. package/dist/forms/AxesSettingsForm/DiscreteAxesSettingsForm.vue.js.map +1 -1
  75. package/dist/forms/AxesSettingsForm/HeatmapAxesSettingsForm.vue.js +53 -53
  76. package/dist/forms/AxesSettingsForm/HeatmapAxesSettingsForm.vue.js.map +1 -1
  77. package/dist/forms/AxesSettingsForm/HistogramAxesSettingsForm.vue.js +37 -37
  78. package/dist/forms/AxesSettingsForm/HistogramAxesSettingsForm.vue.js.map +1 -1
  79. package/dist/forms/AxesSettingsForm/ScatterplotAxesSettingsForm.vue.js +38 -38
  80. package/dist/forms/AxesSettingsForm/ScatterplotAxesSettingsForm.vue.js.map +1 -1
  81. package/dist/forms/AxesSettingsForm/index.vue.js.map +1 -1
  82. package/dist/forms/DataMappingForm/BubbleForm.vue.js +4 -4
  83. package/dist/forms/DataMappingForm/BubbleForm.vue.js.map +1 -1
  84. package/dist/forms/DataMappingForm/DendroForm.vue.js +1 -1
  85. package/dist/forms/DataMappingForm/DendroForm.vue.js.map +1 -1
  86. package/dist/forms/DataMappingForm/DiscreteForm.vue.js.map +1 -1
  87. package/dist/forms/DataMappingForm/HeatmapForm.vue.js +2 -2
  88. package/dist/forms/DataMappingForm/HeatmapForm.vue.js.map +1 -1
  89. package/dist/forms/DataMappingForm/HistogramForm.vue.js.map +1 -1
  90. package/dist/forms/DataMappingForm/Layout/FormLayout.vue.js.map +1 -1
  91. package/dist/forms/DataMappingForm/Layout/MandatoryOptions.vue.js.map +1 -1
  92. package/dist/forms/DataMappingForm/Layout/OptionsList.vue.js.map +1 -1
  93. package/dist/forms/DataMappingForm/ScatterplotForm.vue.js +4 -4
  94. package/dist/forms/DataMappingForm/ScatterplotForm.vue.js.map +1 -1
  95. package/dist/forms/DataMappingForm/ScatterplotUmapForm.vue.js +4 -4
  96. package/dist/forms/DataMappingForm/ScatterplotUmapForm.vue.js.map +1 -1
  97. package/dist/forms/DataMappingForm/index.vue.js.map +1 -1
  98. package/dist/forms/DataMappingForm/useBaskets.js.map +1 -1
  99. package/dist/forms/DataMappingForm/utils.d.ts +1 -1
  100. package/dist/forms/DataMappingForm/utils.js +34 -34
  101. package/dist/forms/DataMappingForm/utils.js.map +1 -1
  102. package/dist/forms/LayersForm/AesSelector.vue.js +18 -25
  103. package/dist/forms/LayersForm/AesSelector.vue.js.map +1 -1
  104. package/dist/forms/LayersForm/DotSizeSelector.vue.d.ts +2 -0
  105. package/dist/forms/LayersForm/DotSizeSelector.vue.js +23 -23
  106. package/dist/forms/LayersForm/DotSizeSelector.vue.js.map +1 -1
  107. package/dist/forms/LayersForm/Layer/Bubble.vue.js +32 -34
  108. package/dist/forms/LayersForm/Layer/Bubble.vue.js.map +1 -1
  109. package/dist/forms/LayersForm/Layer/Dendro.vue.js +6 -6
  110. package/dist/forms/LayersForm/Layer/Dendro.vue.js.map +1 -1
  111. package/dist/forms/LayersForm/Layer/discrete/Bar.vue.js +6 -6
  112. package/dist/forms/LayersForm/Layer/discrete/Bar.vue.js.map +1 -1
  113. package/dist/forms/LayersForm/Layer/discrete/BinnedDots.vue.js +3 -3
  114. package/dist/forms/LayersForm/Layer/discrete/BinnedDots.vue.js.map +1 -1
  115. package/dist/forms/LayersForm/Layer/discrete/Boxplot.vue.js +3 -3
  116. package/dist/forms/LayersForm/Layer/discrete/Boxplot.vue.js.map +1 -1
  117. package/dist/forms/LayersForm/Layer/discrete/Errorbar.vue.js +9 -9
  118. package/dist/forms/LayersForm/Layer/discrete/Errorbar.vue.js.map +1 -1
  119. package/dist/forms/LayersForm/Layer/discrete/JitteredDots.vue.js +3 -3
  120. package/dist/forms/LayersForm/Layer/discrete/JitteredDots.vue.js.map +1 -1
  121. package/dist/forms/LayersForm/Layer/discrete/Line.vue.js +8 -8
  122. package/dist/forms/LayersForm/Layer/discrete/Line.vue.js.map +1 -1
  123. package/dist/forms/LayersForm/Layer/discrete/Logo.vue.js +3 -3
  124. package/dist/forms/LayersForm/Layer/discrete/Logo.vue.js.map +1 -1
  125. package/dist/forms/LayersForm/Layer/discrete/Sina.vue.js +3 -3
  126. package/dist/forms/LayersForm/Layer/discrete/Sina.vue.js.map +1 -1
  127. package/dist/forms/LayersForm/Layer/discrete/StackedArea.vue.js +9 -9
  128. package/dist/forms/LayersForm/Layer/discrete/StackedArea.vue.js.map +1 -1
  129. package/dist/forms/LayersForm/Layer/discrete/StackedBar.vue.js +6 -6
  130. package/dist/forms/LayersForm/Layer/discrete/StackedBar.vue.js.map +1 -1
  131. package/dist/forms/LayersForm/Layer/discrete/Violin.vue.js +3 -3
  132. package/dist/forms/LayersForm/Layer/discrete/Violin.vue.js.map +1 -1
  133. package/dist/forms/LayersForm/Layer/discrete/utils.js.map +1 -1
  134. package/dist/forms/LayersForm/Layer/heatmap/Heatmap.vue.js +23 -23
  135. package/dist/forms/LayersForm/Layer/heatmap/Heatmap.vue.js.map +1 -1
  136. package/dist/forms/LayersForm/Layer/heatmap/HeatmapAnnotations.vue.js +6 -6
  137. package/dist/forms/LayersForm/Layer/heatmap/HeatmapAnnotations.vue.js.map +1 -1
  138. package/dist/forms/LayersForm/Layer/heatmap/HeatmapClustered.vue.js +28 -28
  139. package/dist/forms/LayersForm/Layer/heatmap/HeatmapClustered.vue.js.map +1 -1
  140. package/dist/forms/LayersForm/Layer/histogram/Bins.vue.js +3 -3
  141. package/dist/forms/LayersForm/Layer/histogram/Bins.vue.js.map +1 -1
  142. package/dist/forms/LayersForm/Layer/scatterplot/Curve.vue.js.map +1 -1
  143. package/dist/forms/LayersForm/Layer/scatterplot/Scatter.vue.js.map +1 -1
  144. package/dist/forms/LayersForm/Layer/scatterplot-umap/Scatter.vue.js +2 -2
  145. package/dist/forms/LayersForm/Layer/scatterplot-umap/Scatter.vue.js.map +1 -1
  146. package/dist/forms/LayersForm/index.vue.js +56 -52
  147. package/dist/forms/LayersForm/index.vue.js.map +1 -1
  148. package/dist/forms/LogForm.vue.js.map +1 -1
  149. package/dist/forms/SettingsForm.vue.js.map +1 -1
  150. package/dist/forms/StatisticsForm/DiscreteStatisticsForm.vue.js +14 -14
  151. package/dist/forms/StatisticsForm/DiscreteStatisticsForm.vue.js.map +1 -1
  152. package/dist/forms/StatisticsForm/ScatterplotStatisticsForm.vue.js.map +1 -1
  153. package/dist/forms/StatisticsForm/index.vue.js.map +1 -1
  154. package/dist/forms/TemplateForm.vue.js +59 -52
  155. package/dist/forms/TemplateForm.vue.js.map +1 -1
  156. package/dist/forms/index.js.map +1 -1
  157. package/dist/icons/BinnedDotsIcon.vue.js.map +1 -1
  158. package/dist/icons/BoxplotAndBinnedIcon.vue.js.map +1 -1
  159. package/dist/icons/BoxplotAndJitterIcon.vue.js.map +1 -1
  160. package/dist/icons/BoxplotIcon.vue.js.map +1 -1
  161. package/dist/icons/EditIcon.vue.js.map +1 -1
  162. package/dist/icons/FrameLeft.vue.js.map +1 -1
  163. package/dist/icons/HeatmapAnnotation.vue.js.map +1 -1
  164. package/dist/icons/LineAndErrorbarIcon.vue.js.map +1 -1
  165. package/dist/icons/LogoIcon.vue.js.map +1 -1
  166. package/dist/icons/PlusIcon.vue.js.map +1 -1
  167. package/dist/icons/SinaIcon.vue.js.map +1 -1
  168. package/dist/icons/StackedAreaIcon.vue.js.map +1 -1
  169. package/dist/index.vue.js +4 -4
  170. package/dist/index.vue.js.map +1 -1
  171. package/dist/store.d.ts +1 -1
  172. package/dist/store.js +2 -2
  173. package/dist/store.js.map +1 -1
  174. package/dist/types.d.ts +1 -1
  175. package/dist/utils/addFixedOptionsToState.js.map +1 -1
  176. package/dist/utils/calculateDiscreteGroups.js.map +1 -1
  177. package/dist/utils/createChartSettingsForRender/composeBubbleSettings.js.map +1 -1
  178. package/dist/utils/createChartSettingsForRender/composeChartSettings.js.map +1 -1
  179. package/dist/utils/createChartSettingsForRender/composeDendroSettings.js.map +1 -1
  180. package/dist/utils/createChartSettingsForRender/composeDiscreteSettings.js +1 -1
  181. package/dist/utils/createChartSettingsForRender/composeDiscreteSettings.js.map +1 -1
  182. package/dist/utils/createChartSettingsForRender/composeHeatmapSettings.js.map +1 -1
  183. package/dist/utils/createChartSettingsForRender/composeHistogramSettings.js.map +1 -1
  184. package/dist/utils/createChartSettingsForRender/composeScatterplotSettings.js.map +1 -1
  185. package/dist/utils/createChartSettingsForRender/composeScatterplotUmapSettings.js +1 -1
  186. package/dist/utils/createChartSettingsForRender/composeScatterplotUmapSettings.js.map +1 -1
  187. package/dist/utils/createChartSettingsForRender/getAxesDataFromForms.js +24 -24
  188. package/dist/utils/createChartSettingsForRender/getAxesDataFromForms.js.map +1 -1
  189. package/dist/utils/createChartSettingsForRender/getLayersDataFromForms.js.map +1 -1
  190. package/dist/utils/getPopupHeightForFixedAesList.js.map +1 -1
  191. package/dist/utils/getStatisticsOptions.js.map +1 -1
  192. package/dist/utils/getUsedAesInMapping.js +1 -1
  193. package/dist/utils/getUsedAesInMapping.js.map +1 -1
  194. package/dist/utils/loadDefaultSources.js.map +1 -1
  195. package/dist/utils/loadUniqueValuesToSave.js.map +1 -1
  196. package/dist/utils/saveToFile.js.map +1 -1
  197. package/package.json +5 -3
@@ -144,26 +144,26 @@ const fe = { class: "axes-settings-list" }, xe = { class: "axes-settings-options
144
144
  default: x(() => [
145
145
  s("div", xe, [
146
146
  i(l(g), {
147
- label: "Title",
148
- options: w,
149
147
  modelValue: l(o).title.mode,
150
- "onUpdate:modelValue": e[0] || (e[0] = (t) => l(o).title.mode = t)
148
+ "onUpdate:modelValue": e[0] || (e[0] = (t) => l(o).title.mode = t),
149
+ label: "Title",
150
+ options: w
151
151
  }, null, 8, ["modelValue"])
152
152
  ]),
153
153
  l(o).title.mode === "custom" ? (a(), d("div", ge, [
154
154
  i(l(C), {
155
- label: "Chart title",
156
- placeholder: "Chart title",
157
155
  modelValue: l(o).title.value,
158
- "onUpdate:modelValue": e[1] || (e[1] = (t) => l(o).title.value = t)
156
+ "onUpdate:modelValue": e[1] || (e[1] = (t) => l(o).title.value = t),
157
+ label: "Chart title",
158
+ placeholder: "Chart title"
159
159
  }, null, 8, ["modelValue"])
160
160
  ])) : u("", !0),
161
161
  s("div", Ve, [
162
162
  e[35] || (e[35] = s("span", null, "Alignment", -1)),
163
163
  i(X, {
164
- options: K,
165
164
  modelValue: l(o).title.position,
166
- "onUpdate:modelValue": e[2] || (e[2] = (t) => l(o).title.position = t)
165
+ "onUpdate:modelValue": e[2] || (e[2] = (t) => l(o).title.position = t),
166
+ options: K
167
167
  }, null, 8, ["modelValue"])
168
168
  ])
169
169
  ]),
@@ -178,26 +178,26 @@ const fe = { class: "axes-settings-list" }, xe = { class: "axes-settings-options
178
178
  default: x(() => [
179
179
  s("div", Se, [
180
180
  i(l(g), {
181
- label: "Title",
182
- options: w,
183
181
  modelValue: l(o).axisX.titleMode,
184
- "onUpdate:modelValue": e[3] || (e[3] = (t) => l(o).axisX.titleMode = t)
182
+ "onUpdate:modelValue": e[3] || (e[3] = (t) => l(o).axisX.titleMode = t),
183
+ label: "Title",
184
+ options: w
185
185
  }, null, 8, ["modelValue"])
186
186
  ]),
187
187
  l(o).axisX.titleMode === "custom" ? (a(), d("div", ye, [
188
188
  i(l(C), {
189
- label: "Text",
190
- placeholder: "Type",
191
189
  modelValue: l(o).axisX.customTitle,
192
- "onUpdate:modelValue": e[4] || (e[4] = (t) => l(o).axisX.customTitle = t)
190
+ "onUpdate:modelValue": e[4] || (e[4] = (t) => l(o).axisX.customTitle = t),
191
+ label: "Text",
192
+ placeholder: "Type"
193
193
  }, null, 8, ["modelValue"])
194
194
  ])) : u("", !0),
195
195
  y.value ? u("", !0) : (a(), d("div", ke, [
196
196
  i(l(g), {
197
- label: "Scale",
198
- options: I,
199
197
  modelValue: l(o).axisX.scale,
200
- "onUpdate:modelValue": e[5] || (e[5] = (t) => l(o).axisX.scale = t)
198
+ "onUpdate:modelValue": e[5] || (e[5] = (t) => l(o).axisX.scale = t),
199
+ label: "Scale",
200
+ options: I
201
201
  }, null, 8, ["modelValue"])
202
202
  ])),
203
203
  y.value && F.value ? (a(), d("div", be, [
@@ -224,9 +224,9 @@ const fe = { class: "axes-settings-list" }, xe = { class: "axes-settings-options
224
224
  y.value ? (a(), d("div", Te, [
225
225
  e[37] || (e[37] = s("span", null, "Labels rotation", -1)),
226
226
  i(X, {
227
- options: N,
228
227
  modelValue: G.value,
229
- "onUpdate:modelValue": e[9] || (e[9] = (t) => G.value = t)
228
+ "onUpdate:modelValue": e[9] || (e[9] = (t) => G.value = t),
229
+ options: N
230
230
  }, null, 8, ["modelValue"])
231
231
  ])) : u("", !0),
232
232
  s("div", Xe, [
@@ -282,26 +282,26 @@ const fe = { class: "axes-settings-list" }, xe = { class: "axes-settings-options
282
282
  default: x(() => [
283
283
  s("div", Re, [
284
284
  i(l(g), {
285
- label: "Title",
286
- options: w,
287
285
  modelValue: l(o).axisY.titleMode,
288
- "onUpdate:modelValue": e[17] || (e[17] = (t) => l(o).axisY.titleMode = t)
286
+ "onUpdate:modelValue": e[17] || (e[17] = (t) => l(o).axisY.titleMode = t),
287
+ label: "Title",
288
+ options: w
289
289
  }, null, 8, ["modelValue"])
290
290
  ]),
291
291
  l(o).axisY.titleMode === "custom" ? (a(), d("div", ce, [
292
292
  i(l(C), {
293
- label: "Text",
294
- placeholder: "Type",
295
293
  modelValue: l(o).axisY.customTitle,
296
- "onUpdate:modelValue": e[18] || (e[18] = (t) => l(o).axisY.customTitle = t)
294
+ "onUpdate:modelValue": e[18] || (e[18] = (t) => l(o).axisY.customTitle = t),
295
+ label: "Text",
296
+ placeholder: "Type"
297
297
  }, null, 8, ["modelValue"])
298
298
  ])) : u("", !0),
299
299
  k.value ? u("", !0) : (a(), d("div", Ae, [
300
300
  i(l(g), {
301
- label: "Scale",
302
- options: I,
303
301
  modelValue: l(o).axisY.scale,
304
- "onUpdate:modelValue": e[19] || (e[19] = (t) => l(o).axisY.scale = t)
302
+ "onUpdate:modelValue": e[19] || (e[19] = (t) => l(o).axisY.scale = t),
303
+ label: "Scale",
304
+ options: I
305
305
  }, null, 8, ["modelValue"])
306
306
  ])),
307
307
  k.value && P.value ? (a(), d("div", Ue, [
@@ -328,9 +328,9 @@ const fe = { class: "axes-settings-list" }, xe = { class: "axes-settings-options
328
328
  k.value ? (a(), d("div", Fe, [
329
329
  e[42] || (e[42] = s("span", null, "Labels rotation", -1)),
330
330
  i(X, {
331
- options: N,
332
331
  modelValue: H.value,
333
- "onUpdate:modelValue": e[23] || (e[23] = (t) => H.value = t)
332
+ "onUpdate:modelValue": e[23] || (e[23] = (t) => H.value = t),
333
+ options: N
334
334
  }, null, 8, ["modelValue"])
335
335
  ])) : u("", !0),
336
336
  s("div", Pe, [
@@ -381,30 +381,30 @@ const fe = { class: "axes-settings-list" }, xe = { class: "axes-settings-options
381
381
  s("div", Ie, [
382
382
  e[46] || (e[46] = s("span", null, "Frame", -1)),
383
383
  i(X, {
384
- options: Q,
385
384
  modelValue: l(o).other.frame,
386
- "onUpdate:modelValue": e[31] || (e[31] = (t) => l(o).other.frame = t)
385
+ "onUpdate:modelValue": e[31] || (e[31] = (t) => l(o).other.frame = t),
386
+ options: Q
387
387
  }, null, 8, ["modelValue"])
388
388
  ]),
389
389
  s("div", Ne, [
390
390
  i(l(h), {
391
+ modelValue: l(o).other.facetColumns,
392
+ "onUpdate:modelValue": e[32] || (e[32] = (t) => l(o).other.facetColumns = t),
391
393
  style: { width: "100%" },
392
394
  label: "Facet column count",
393
395
  min: 1,
394
396
  max: 6,
395
397
  step: 1,
396
398
  breakpoints: !0,
397
- mode: "input",
398
- modelValue: l(o).other.facetColumns,
399
- "onUpdate:modelValue": e[32] || (e[32] = (t) => l(o).other.facetColumns = t)
399
+ mode: "input"
400
400
  }, null, 8, ["modelValue"])
401
401
  ]),
402
402
  s("div", Be, [
403
403
  i(l(g), {
404
- label: "Facet shared by",
405
- options: W,
406
404
  modelValue: l(o).other.facetSharedBy,
407
- "onUpdate:modelValue": e[33] || (e[33] = (t) => l(o).other.facetSharedBy = t)
405
+ "onUpdate:modelValue": e[33] || (e[33] = (t) => l(o).other.facetSharedBy = t),
406
+ label: "Facet shared by",
407
+ options: W
408
408
  }, null, 8, ["modelValue"])
409
409
  ])
410
410
  ])) : u("", !0)
@@ -1 +1 @@
1
- {"version":3,"file":"ScatterplotAxesSettingsForm.vue.js","sources":["../../../src/forms/AxesSettingsForm/ScatterplotAxesSettingsForm.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 FrameLeft from '../../icons/FrameLeft.vue';\nimport FrameBottom from '../../icons/FrameBottom.vue';\nimport FrameLeftBottom from '../../icons/FrameLeftBottom.vue';\nimport AesButton, { AesButtonProps } from '../../components/AesButton.vue';\nimport FormWrapper from '../../components/AesSettings/FormWrapper.vue';\nimport { computed, ref } from 'vue';\nimport Popup from '../../components/Popup.vue';\nimport FixedLineTypeList from '../../components/AesSettings/FixedLineTypeList.vue';\nimport { LineType } from '../../components/AesSettings/types';\nimport { getPopupHeightForFixedAesList } from '../../utils/getPopupHeightForFixedAesList';\nimport { FIXED_LINE_TYPES } from '../../constantsAesthetic';\nimport ReorderForm from '../../components/ReorderForm.vue';\nimport Rotation0 from '../../icons/Rotation0.vue';\nimport Rotation45 from '../../icons/Rotation45.vue';\nimport Rotation90 from '../../icons/Rotation90.vue';\nimport { LabelsRotation } from '../../types';\n\nconst store = useStore();\nconst settings = store.value.reactive.axesSettings;\nconst chartType = computed(() => store.value.reactive.chartType)\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_AXIS_LABEL_MODE = [\n { value: 'auto', text: 'Auto' },\n { value: 'custom', text: 'Custom' },\n { value: 'hidden', text: 'Hide' }\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];\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];\nconst OPTIONS_LABELS_ROTATION = [\n { value: 'center', icon: Rotation0 },\n { value: '45deg', icon: Rotation45 },\n { value: '90deg', icon: Rotation90 }\n];\nconst significantLineStyleX = ref(settings.axisX.significantLinesStyle);\nconst significantLineStyleY = ref(settings.axisY.significantLinesStyle);\nconst linesPopupHeight = computed(() => getPopupHeightForFixedAesList(FIXED_LINE_TYPES.length, 'lineType'));\nconst linesAesButtonXRef = ref();\nconst linesAesButtonYRef = ref();\nconst openLinesPopupX = ref(false);\nconst openLinesPopupY = ref(false);\n\nconst xSource = computed(() => {\n const x = store.value.reactive.optionsState.components.x.selectorStates;\n return x.length ? x[0].selectedSource : null;\n});\nconst ySource = computed(() => {\n const y = store.value.reactive.optionsState.components.y.selectorStates;\n return y.length ? y[0].selectedSource : null;\n});\n\nconst discreteX = computed(() => {\n if (!xSource.value) {\n return false;\n }\n const info = store.value.inputGuide.value.getSourceInfo(xSource.value);\n return info.type === 'String';\n});\nconst discreteY = computed(() => {\n if (!ySource.value) {\n return false;\n }\n const info = store.value.inputGuide.value.getSourceInfo(ySource.value);\n return info.type === 'String';\n});\nconst reorderX = ref(false);\nconst reorderY = ref(false);\nconst axisOrderX = computed({\n get: () => {\n if (!discreteX.value || !xSource.value) {\n return null;\n }\n const savedOrder = store.value.reactive.axesSettings.axisX.order;\n return savedOrder?.source === xSource.value ? savedOrder.options : store.value.uniqueValuesData.value[xSource.value]?.options;\n },\n set: (v) => {\n if (xSource.value && v) {\n store.value.reactive.axesSettings.axisX.order = {\n source: xSource.value,\n options: v\n }\n }\n }\n});\nconst axisOrderY = computed({\n get: () => {\n if (!discreteY.value || !ySource.value) {\n return null;\n }\n const savedOrder = store.value.reactive.axesSettings.axisY.order;\n return savedOrder?.source === ySource.value ? savedOrder.options : store.value.uniqueValuesData.value[ySource.value]?.options;\n },\n set: (v) => {\n if (ySource.value && v) {\n store.value.reactive.axesSettings.axisY.order = {\n source: ySource.value,\n options: v\n }\n }\n }\n});\nconst xLabelsRotation = computed({\n get(){\n return settings.axisX.labelsRotation ?? 'center';\n },\n set(value:LabelsRotation) {\n settings.axisX.labelsRotation = value;\n }\n});\nconst yLabelsRotation = computed({\n get(){\n return settings.axisY.labelsRotation ?? 'center';\n },\n set(value:LabelsRotation) {\n settings.axisY.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 <collapsable-block title=\"Title\" :settings=\"blockSettings\" :icon=\"Right\" :icon-open=\"Down\">\n <div class=\"axes-settings-options-row block\">\n <pl-btn-group label=\"Title\" :options=\"OPTIONS_AXIS_LABEL_MODE\" v-model=\"settings.title.mode\" />\n </div>\n <div class=\"axes-settings-input\" v-if=\"settings.title.mode === 'custom'\">\n <pl-text-field label=\"Chart title\" placeholder=\"Chart title\" v-model=\"settings.title.value\" />\n </div>\n <div class=\"axes-settings-options-row\">\n <span>Alignment</span>\n <btn-icon-group :options=\"OPTIONS_TITLE_ALIGN\" v-model=\"settings.title.position\" />\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 </collapsable-block>\n <!-- X axis settings-->\n <collapsable-block title=\"X-axis\" :settings=\"blockSettings\" :icon=\"Right\" :icon-open=\"Down\">\n <div class=\"axes-settings-options-row block\">\n <pl-btn-group label=\"Title\" :options=\"OPTIONS_AXIS_LABEL_MODE\" v-model=\"settings.axisX.titleMode\" />\n </div>\n <div v-if=\"settings.axisX.titleMode === 'custom'\">\n <pl-text-field label=\"Text\" placeholder=\"Type\" v-model=\"settings.axisX.customTitle\" />\n </div>\n <div class=\"axes-settings-options-row block\" v-if=\"!discreteX\">\n <pl-btn-group label=\"Scale\" :options=\"OPTIONS_SCALE\" v-model=\"settings.axisX.scale\" />\n </div>\n <div class=\"axes-settings-options-row\" v-if=\"discreteX && axisOrderX\">\n <span>X axis order: </span>\n <aes-button :data=\"{ type: 'data', value: null }\" @click=\"reorderX = true\" />\n <template v-if=\"reorderX\">\n <form-wrapper title=\"Reorder X axis values\" back-title=\"Axes Settings\" @form:close=\"reorderX = false\">\n <reorder-form v-model=\"axisOrderX\" />\n </form-wrapper>\n </template>\n </div>\n <div class=\"axes-settings-options-row\" v-if=\"discreteX\">\n <span>Labels rotation</span>\n <btn-icon-group :options=\"OPTIONS_LABELS_ROTATION\" v-model=\"xLabelsRotation\" />\n </div>\n <div class=\"axes-settings-options-row table\">\n <span>Gridlines</span>\n <pl-toggle-switch v-model=\"settings.axisX.gridlines\" />\n </div>\n <div class=\"axes-settings-options-row table\">\n <span>Ticks</span>\n <pl-toggle-switch v-model=\"settings.axisX.ticks\" />\n </div>\n <div class=\"axes-settings-options-row\">\n <span>Significant lines style</span>\n <aes-button :data=\"{ type: 'lineType', value: significantLineStyleX } as AesButtonProps['data']\"\n @click=\"openLinesPopupX = !openLinesPopupX\" @ref=\"(el: Element) => (linesAesButtonXRef = el)\" />\n <popup v-if=\"openLinesPopupX\" :height=\"linesPopupHeight\" :targetRef=\"linesAesButtonXRef\"\n @popup:close=\"openLinesPopupX = false\">\n <div class=\"fixed-aes-list fixed-aes-list__rows\">\n <fixed-line-type-list v-model=\"significantLineStyleX\"\n @update:modelValue=\"(value: LineType) => settings.axisX.significantLinesStyle = value\" />\n </div>\n </popup>\n </div>\n </collapsable-block>\n <!-- Y axis settings-->\n <collapsable-block title=\"Y-axis\" :settings=\"blockSettings\" :icon=\"Right\" :icon-open=\"Down\">\n <div class=\"axes-settings-options-row block\">\n <pl-btn-group label=\"Title\" :options=\"OPTIONS_AXIS_LABEL_MODE\" v-model=\"settings.axisY.titleMode\" />\n </div>\n <div v-if=\"settings.axisY.titleMode === 'custom'\">\n <pl-text-field label=\"Text\" placeholder=\"Type\" v-model=\"settings.axisY.customTitle\" />\n </div>\n <div class=\"axes-settings-options-row block\" v-if=\"!discreteY\">\n <pl-btn-group label=\"Scale\" :options=\"OPTIONS_SCALE\" v-model=\"settings.axisY.scale\" />\n </div>\n <div class=\"axes-settings-options-row\" v-if=\"discreteY && axisOrderY\">\n <span>Y axis order: </span>\n <aes-button :data=\"{ type: 'data', value: null }\" @click=\"reorderY = true\" />\n <template v-if=\"reorderY\">\n <form-wrapper title=\"Reorder Y axis values\" back-title=\"Axes Settings\" @form:close=\"reorderY = false\">\n <reorder-form v-model=\"axisOrderY\" />\n </form-wrapper>\n </template>\n </div>\n <div class=\"axes-settings-options-row\" v-if=\"discreteY\">\n <span>Labels rotation</span>\n <btn-icon-group :options=\"OPTIONS_LABELS_ROTATION\" v-model=\"yLabelsRotation\" />\n </div>\n <div class=\"axes-settings-options-row table\">\n <span>Gridlines</span>\n <pl-toggle-switch v-model=\"settings.axisY.gridlines\" />\n </div>\n <div class=\"axes-settings-options-row table\">\n <span>Ticks</span>\n <pl-toggle-switch v-model=\"settings.axisY.ticks\" />\n </div>\n <div class=\"axes-settings-options-row\">\n <span>Significant lines style</span>\n <aes-button :data=\"{ type: 'lineType', value: significantLineStyleY } as AesButtonProps['data']\"\n @click=\"openLinesPopupY = !openLinesPopupY\" @ref=\"(el: Element) => (linesAesButtonYRef = el)\" />\n <popup v-if=\"openLinesPopupY\" :height=\"linesPopupHeight\" :targetRef=\"linesAesButtonYRef\"\n @popup:close=\"openLinesPopupY = false\">\n <div class=\"fixed-aes-list fixed-aes-list__rows\">\n <fixed-line-type-list v-model=\"significantLineStyleY\"\n @update:modelValue=\"(value: LineType) => settings.axisY.significantLinesStyle = value\" />\n </div>\n </popup>\n </div>\n </collapsable-block>\n <!-- Facet settings-->\n <div class=\"other\" v-if=\"chartType === 'scatterplot'\">\n <div class=\"axes-settings-options-row\">\n <span>Frame</span>\n <btn-icon-group :options=\"OPTIONS_CHART_FRAME\" v-model=\"settings.other.frame\" />\n </div>\n <div class=\"axes-settings-options-row\">\n <Slider :style=\"{ width: '100%' }\" label=\"Facet column count\" :min=\"1\" :max=\"6\" :step=\"1\" :breakpoints=\"true\"\n mode=\"input\" v-model=\"settings.other.facetColumns\" />\n </div>\n <div class=\"axes-settings-options-row block\">\n <pl-btn-group label=\"Facet shared by\" :options=\"OPTIONS_FACET_SHARED\"\n v-model=\"settings.other.facetSharedBy\" />\n </div>\n </div>\n </div>\n </div>\n</template>\n"],"names":["store","useStore","settings","chartType","computed","blockSettings","OPTIONS_TITLE_ALIGN","AlignLeft","AlignCenter","AlignRight","OPTIONS_AXIS_LABEL_MODE","OPTIONS_SCALE","OPTIONS_CHART_FRAME","FrameEmpty","FrameLeft","FrameBottom","FrameLeftBottom","FrameFull","OPTIONS_FACET_SHARED","OPTIONS_LABELS_ROTATION","Rotation0","Rotation45","Rotation90","significantLineStyleX","ref","significantLineStyleY","linesPopupHeight","getPopupHeightForFixedAesList","FIXED_LINE_TYPES","linesAesButtonXRef","linesAesButtonYRef","openLinesPopupX","openLinesPopupY","xSource","x","ySource","y","discreteX","discreteY","reorderX","reorderY","axisOrderX","savedOrder","_a","v","axisOrderY","xLabelsRotation","value","yLabelsRotation","_createElementBlock","_cache","e","_createElementVNode","_hoisted_1","_createVNode","CollapsableBlock","Right","Down","_hoisted_2","_unref","PlBtnGroup","$event","_openBlock","_hoisted_3","PlTextField","_hoisted_4","BtnIconGroup","_hoisted_5","_hoisted_6","_hoisted_7","_hoisted_8","AesButton","_createBlock","FormWrapper","ReorderForm","_hoisted_9","_hoisted_10","PlToggleSwitch","_hoisted_11","_hoisted_12","el","Popup","_hoisted_13","FixedLineTypeList","_hoisted_14","_hoisted_15","_hoisted_16","_hoisted_17","_hoisted_18","_hoisted_19","_hoisted_20","_hoisted_21","_hoisted_22","_hoisted_23","_hoisted_24","_hoisted_25","Slider","_hoisted_26"],"mappings":"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"}
1
+ {"version":3,"file":"ScatterplotAxesSettingsForm.vue.js","sources":["../../../src/forms/AxesSettingsForm/ScatterplotAxesSettingsForm.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 FrameLeft from '../../icons/FrameLeft.vue';\nimport FrameBottom from '../../icons/FrameBottom.vue';\nimport FrameLeftBottom from '../../icons/FrameLeftBottom.vue';\nimport type { AesButtonProps } from '../../components/AesButton.vue';\nimport AesButton from '../../components/AesButton.vue';\nimport FormWrapper from '../../components/AesSettings/FormWrapper.vue';\nimport { computed, ref } from 'vue';\nimport Popup from '../../components/Popup.vue';\nimport FixedLineTypeList from '../../components/AesSettings/FixedLineTypeList.vue';\nimport type { LineType } from '../../components/AesSettings/types';\nimport { getPopupHeightForFixedAesList } from '../../utils/getPopupHeightForFixedAesList';\nimport { FIXED_LINE_TYPES } from '../../constantsAesthetic';\nimport ReorderForm from '../../components/ReorderForm.vue';\nimport Rotation0 from '../../icons/Rotation0.vue';\nimport Rotation45 from '../../icons/Rotation45.vue';\nimport Rotation90 from '../../icons/Rotation90.vue';\nimport type { LabelsRotation } from '../../types';\n\nconst store = useStore();\nconst settings = store.value.reactive.axesSettings;\nconst chartType = computed(() => store.value.reactive.chartType);\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_AXIS_LABEL_MODE = [\n { value: 'auto', text: 'Auto' },\n { value: 'custom', text: 'Custom' },\n { value: 'hidden', text: 'Hide' },\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];\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];\nconst OPTIONS_LABELS_ROTATION = [\n { value: 'center', icon: Rotation0 },\n { value: '45deg', icon: Rotation45 },\n { value: '90deg', icon: Rotation90 },\n];\nconst significantLineStyleX = ref(settings.axisX.significantLinesStyle);\nconst significantLineStyleY = ref(settings.axisY.significantLinesStyle);\nconst linesPopupHeight = computed(() => getPopupHeightForFixedAesList(FIXED_LINE_TYPES.length, 'lineType'));\nconst linesAesButtonXRef = ref();\nconst linesAesButtonYRef = ref();\nconst openLinesPopupX = ref(false);\nconst openLinesPopupY = ref(false);\n\nconst xSource = computed(() => {\n const x = store.value.reactive.optionsState.components.x.selectorStates;\n return x.length ? x[0].selectedSource : null;\n});\nconst ySource = computed(() => {\n const y = store.value.reactive.optionsState.components.y.selectorStates;\n return y.length ? y[0].selectedSource : null;\n});\n\nconst discreteX = computed(() => {\n if (!xSource.value) {\n return false;\n }\n const info = store.value.inputGuide.value.getSourceInfo(xSource.value);\n return info.type === 'String';\n});\nconst discreteY = computed(() => {\n if (!ySource.value) {\n return false;\n }\n const info = store.value.inputGuide.value.getSourceInfo(ySource.value);\n return info.type === 'String';\n});\nconst reorderX = ref(false);\nconst reorderY = ref(false);\nconst axisOrderX = computed({\n get: () => {\n if (!discreteX.value || !xSource.value) {\n return null;\n }\n const savedOrder = store.value.reactive.axesSettings.axisX.order;\n return savedOrder?.source === xSource.value ? savedOrder.options : store.value.uniqueValuesData.value[xSource.value]?.options;\n },\n set: (v) => {\n if (xSource.value && v) {\n store.value.reactive.axesSettings.axisX.order = {\n source: xSource.value,\n options: v,\n };\n }\n },\n});\nconst axisOrderY = computed({\n get: () => {\n if (!discreteY.value || !ySource.value) {\n return null;\n }\n const savedOrder = store.value.reactive.axesSettings.axisY.order;\n return savedOrder?.source === ySource.value ? savedOrder.options : store.value.uniqueValuesData.value[ySource.value]?.options;\n },\n set: (v) => {\n if (ySource.value && v) {\n store.value.reactive.axesSettings.axisY.order = {\n source: ySource.value,\n options: v,\n };\n }\n },\n});\nconst xLabelsRotation = computed({\n get() {\n return settings.axisX.labelsRotation ?? 'center';\n },\n set(value: LabelsRotation) {\n settings.axisX.labelsRotation = value;\n },\n});\nconst yLabelsRotation = computed({\n get() {\n return settings.axisY.labelsRotation ?? 'center';\n },\n set(value: LabelsRotation) {\n settings.axisY.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 v-model=\"settings.title.mode\" label=\"Title\" :options=\"OPTIONS_AXIS_LABEL_MODE\" />\n </div>\n <div v-if=\"settings.title.mode === 'custom'\" class=\"axes-settings-input\">\n <PlTextField v-model=\"settings.title.value\" label=\"Chart title\" placeholder=\"Chart title\" />\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 class=\"axes-settings-options-row block\">\n <PlBtnGroup v-model=\"settings.axisX.titleMode\" label=\"Title\" :options=\"OPTIONS_AXIS_LABEL_MODE\" />\n </div>\n <div v-if=\"settings.axisX.titleMode === 'custom'\">\n <PlTextField v-model=\"settings.axisX.customTitle\" label=\"Text\" placeholder=\"Type\" />\n </div>\n <div v-if=\"!discreteX\" class=\"axes-settings-options-row block\">\n <PlBtnGroup v-model=\"settings.axisX.scale\" label=\"Scale\" :options=\"OPTIONS_SCALE\" />\n </div>\n <div v-if=\"discreteX && axisOrderX\" class=\"axes-settings-options-row\">\n <span>X axis order: </span>\n <AesButton :data=\"{ type: 'data', value: null }\" @click=\"reorderX = true\" />\n <template v-if=\"reorderX\">\n <FormWrapper title=\"Reorder X axis values\" back-title=\"Axes Settings\" @form:close=\"reorderX = false\">\n <ReorderForm v-model=\"axisOrderX\" />\n </FormWrapper>\n </template>\n </div>\n <div v-if=\"discreteX\" 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 table\">\n <span>Gridlines</span>\n <PlToggleSwitch v-model=\"settings.axisX.gridlines\" />\n </div>\n <div class=\"axes-settings-options-row table\">\n <span>Ticks</span>\n <PlToggleSwitch v-model=\"settings.axisX.ticks\" />\n </div>\n <div class=\"axes-settings-options-row\">\n <span>Significant lines style</span>\n <AesButton\n :data=\"{ type: 'lineType', value: significantLineStyleX } as AesButtonProps['data']\"\n @click=\"openLinesPopupX = !openLinesPopupX\" @ref=\"(el: Element) => (linesAesButtonXRef = el)\"\n />\n <Popup\n v-if=\"openLinesPopupX\" :height=\"linesPopupHeight\" :targetRef=\"linesAesButtonXRef\"\n @popup:close=\"openLinesPopupX = false\"\n >\n <div class=\"fixed-aes-list fixed-aes-list__rows\">\n <FixedLineTypeList\n v-model=\"significantLineStyleX\"\n @update:modelValue=\"(value: LineType) => settings.axisX.significantLinesStyle = value\"\n />\n </div>\n </Popup>\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 v-model=\"settings.axisY.titleMode\" label=\"Title\" :options=\"OPTIONS_AXIS_LABEL_MODE\" />\n </div>\n <div v-if=\"settings.axisY.titleMode === 'custom'\">\n <PlTextField v-model=\"settings.axisY.customTitle\" label=\"Text\" placeholder=\"Type\" />\n </div>\n <div v-if=\"!discreteY\" class=\"axes-settings-options-row block\">\n <PlBtnGroup v-model=\"settings.axisY.scale\" label=\"Scale\" :options=\"OPTIONS_SCALE\" />\n </div>\n <div v-if=\"discreteY && axisOrderY\" class=\"axes-settings-options-row\">\n <span>Y axis order: </span>\n <AesButton :data=\"{ type: 'data', value: null }\" @click=\"reorderY = true\" />\n <template v-if=\"reorderY\">\n <FormWrapper title=\"Reorder Y axis values\" back-title=\"Axes Settings\" @form:close=\"reorderY = false\">\n <ReorderForm v-model=\"axisOrderY\" />\n </FormWrapper>\n </template>\n </div>\n <div v-if=\"discreteY\" class=\"axes-settings-options-row\">\n <span>Labels rotation</span>\n <BtnIconGroup v-model=\"yLabelsRotation\" :options=\"OPTIONS_LABELS_ROTATION\" />\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 <div class=\"axes-settings-options-row\">\n <span>Significant lines style</span>\n <AesButton\n :data=\"{ type: 'lineType', value: significantLineStyleY } as AesButtonProps['data']\"\n @click=\"openLinesPopupY = !openLinesPopupY\" @ref=\"(el: Element) => (linesAesButtonYRef = el)\"\n />\n <Popup\n v-if=\"openLinesPopupY\" :height=\"linesPopupHeight\" :targetRef=\"linesAesButtonYRef\"\n @popup:close=\"openLinesPopupY = false\"\n >\n <div class=\"fixed-aes-list fixed-aes-list__rows\">\n <FixedLineTypeList\n v-model=\"significantLineStyleY\"\n @update:modelValue=\"(value: LineType) => settings.axisY.significantLinesStyle = value\"\n />\n </div>\n </Popup>\n </div>\n </CollapsableBlock>\n <!-- Facet settings-->\n <div v-if=\"chartType === 'scatterplot'\" 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 <Slider\n v-model=\"settings.other.facetColumns\" :style=\"{ width: '100%' }\" label=\"Facet column count\" :min=\"1\" :max=\"6\" :step=\"1\"\n :breakpoints=\"true\" mode=\"input\"\n />\n </div>\n <div class=\"axes-settings-options-row block\">\n <PlBtnGroup\n v-model=\"settings.other.facetSharedBy\" 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","chartType","computed","blockSettings","OPTIONS_TITLE_ALIGN","AlignLeft","AlignCenter","AlignRight","OPTIONS_AXIS_LABEL_MODE","OPTIONS_SCALE","OPTIONS_CHART_FRAME","FrameEmpty","FrameLeft","FrameBottom","FrameLeftBottom","FrameFull","OPTIONS_FACET_SHARED","OPTIONS_LABELS_ROTATION","Rotation0","Rotation45","Rotation90","significantLineStyleX","ref","significantLineStyleY","linesPopupHeight","getPopupHeightForFixedAesList","FIXED_LINE_TYPES","linesAesButtonXRef","linesAesButtonYRef","openLinesPopupX","openLinesPopupY","xSource","x","ySource","y","discreteX","discreteY","reorderX","reorderY","axisOrderX","savedOrder","_a","v","axisOrderY","xLabelsRotation","value","yLabelsRotation","_createElementBlock","_cache","e","_createElementVNode","_hoisted_1","_createVNode","CollapsableBlock","Right","Down","_hoisted_2","_unref","PlBtnGroup","$event","_openBlock","_hoisted_3","PlTextField","_hoisted_4","BtnIconGroup","_hoisted_5","_hoisted_6","_hoisted_7","_hoisted_8","AesButton","_createBlock","FormWrapper","ReorderForm","_hoisted_9","_hoisted_10","PlToggleSwitch","_hoisted_11","_hoisted_12","el","Popup","_hoisted_13","FixedLineTypeList","_hoisted_14","_hoisted_15","_hoisted_16","_hoisted_17","_hoisted_18","_hoisted_19","_hoisted_20","_hoisted_21","_hoisted_22","_hoisted_23","_hoisted_24","_hoisted_25","Slider","_hoisted_26"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.vue.js","sources":["../../../src/forms/AxesSettingsForm/index.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport {useStore} from '../../store';\nimport DiscreteForm from './DiscreteAxesSettingsForm.vue';\nimport ScatterplotForm from './ScatterplotAxesSettingsForm.vue';\nimport HeatmapForm from './HeatmapAxesSettingsForm.vue';\nimport HistogramForm from './HistogramAxesSettingsForm.vue';\nimport BubbleForm from './BubbleAxesSettingsForm.vue';\n\nconst store = useStore();\n</script>\n\n<template>\n <div class=\"data-form\">\n <discrete-form v-if=\"store.reactive.chartType === 'discrete'\"/>\n <scatterplot-form v-if=\"store.reactive.chartType === 'scatterplot' || store.reactive.chartType === 'scatterplot-umap'\"/>\n <heatmap-form v-if=\"store.reactive.chartType === 'heatmap'\"/>\n <histogram-form v-if=\"store.reactive.chartType === 'histogram'\"/>\n <bubble-form v-if=\"store.reactive.chartType === 'bubble'\"/>\n </div>\n</template>\n"],"names":["store","useStore","_openBlock","_createElementBlock","_hoisted_1","_unref","_createBlock","DiscreteForm","ScatterplotForm","HeatmapForm","HistogramForm","BubbleForm"],"mappings":";;;;;;;;;;AAQA,UAAMA,IAAQC,EAAA;sBAIZC,EAAA,GAAAC,EAMM,OANNC,GAMM;AAAA,MALiBC,EAAAL,CAAA,EAAM,SAAS,cAAS,mBAA7CM,EAA+DC,GAAA,EAAA,KAAA,EAAA,CAAA;MACvCF,EAAAL,CAAA,EAAM,SAAS,+BAA+BK,EAAAL,CAAA,EAAM,SAAS,cAAS,2BAA9FM,EAAwHE,GAAA,EAAA,KAAA,GAAA;MACpGH,EAAAL,CAAA,EAAM,SAAS,cAAS,kBAA5CM,EAA6DG,GAAA,EAAA,KAAA,EAAA,CAAA;MACvCJ,EAAAL,CAAA,EAAM,SAAS,cAAS,oBAA9CM,EAAiEI,GAAA,EAAA,KAAA,EAAA,CAAA;MAC9CL,EAAAL,CAAA,EAAM,SAAS,cAAS,iBAA3CM,EAA2DK,GAAA,EAAA,KAAA,EAAA,CAAA;;;;"}
1
+ {"version":3,"file":"index.vue.js","sources":["../../../src/forms/AxesSettingsForm/index.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport { useStore } from '../../store';\nimport DiscreteForm from './DiscreteAxesSettingsForm.vue';\nimport ScatterplotForm from './ScatterplotAxesSettingsForm.vue';\nimport HeatmapForm from './HeatmapAxesSettingsForm.vue';\nimport HistogramForm from './HistogramAxesSettingsForm.vue';\nimport BubbleForm from './BubbleAxesSettingsForm.vue';\n\nconst store = useStore();\n</script>\n\n<template>\n <div class=\"data-form\">\n <DiscreteForm v-if=\"store.reactive.chartType === 'discrete'\"/>\n <ScatterplotForm v-if=\"store.reactive.chartType === 'scatterplot' || store.reactive.chartType === 'scatterplot-umap'\"/>\n <HeatmapForm v-if=\"store.reactive.chartType === 'heatmap'\"/>\n <HistogramForm v-if=\"store.reactive.chartType === 'histogram'\"/>\n <BubbleForm v-if=\"store.reactive.chartType === 'bubble'\"/>\n </div>\n</template>\n"],"names":["store","useStore","_openBlock","_createElementBlock","_hoisted_1","_unref","_createBlock","DiscreteForm","ScatterplotForm","HeatmapForm","HistogramForm","BubbleForm"],"mappings":";;;;;;;;;;AAQA,UAAMA,IAAQC,EAAA;sBAIZC,EAAA,GAAAC,EAMM,OANNC,GAMM;AAAA,MALgBC,EAAAL,CAAA,EAAM,SAAS,cAAS,mBAA5CM,EAA8DC,GAAA,EAAA,KAAA,EAAA,CAAA;MACvCF,EAAAL,CAAA,EAAM,SAAS,+BAA+BK,EAAAL,CAAA,EAAM,SAAS,cAAS,2BAA7FM,EAAuHE,GAAA,EAAA,KAAA,GAAA;MACpGH,EAAAL,CAAA,EAAM,SAAS,cAAS,kBAA3CM,EAA4DG,GAAA,EAAA,KAAA,EAAA,CAAA;MACvCJ,EAAAL,CAAA,EAAM,SAAS,cAAS,oBAA7CM,EAAgEI,GAAA,EAAA,KAAA,EAAA,CAAA;MAC9CL,EAAAL,CAAA,EAAM,SAAS,cAAS,iBAA1CM,EAA0DK,GAAA,EAAA,KAAA,EAAA,CAAA;;;;"}
@@ -67,10 +67,10 @@ const L = { class: "data-form-input-item" }, h = {
67
67
  dataInputs: i(() => [
68
68
  y("div", L, [
69
69
  r(e(B), {
70
- label: "Data source for color:",
71
- clearable: "",
72
70
  modelValue: f.value,
73
71
  "onUpdate:modelValue": l[0] || (l[0] = (o) => f.value = o),
72
+ label: "Data source for color:",
73
+ clearable: "",
74
74
  disabled: I.value,
75
75
  options: e(m).valueColor,
76
76
  error: e(b)("valueColor", e(a).inputGuide.value)
@@ -78,10 +78,10 @@ const L = { class: "data-form-input-item" }, h = {
78
78
  ]),
79
79
  y("div", h, [
80
80
  r(e(B), {
81
- label: "Data source for size:",
82
- clearable: "",
83
81
  modelValue: v.value,
84
82
  "onUpdate:modelValue": l[1] || (l[1] = (o) => v.value = o),
83
+ label: "Data source for size:",
84
+ clearable: "",
85
85
  disabled: x.value,
86
86
  options: e(m).valueSize,
87
87
  error: e(b)("valueSize", e(a).inputGuide.value)
@@ -1 +1 @@
1
- {"version":3,"file":"BubbleForm.vue.js","sources":["../../../src/forms/DataMappingForm/BubbleForm.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport { useStore } from '../../store';\nimport { PlDropdown } from '@platforma-sdk/ui-vue';\nimport { BubbleUIState } from '@milaboratories/pf-plots';\nimport FormLayout from './Layout/FormLayout.vue';\nimport OptionsList from './Layout/OptionsList.vue';\nimport MandatoryOptionsList from './Layout/MandatoryOptions.vue';\nimport { computed } from 'vue';\nimport { getErrorForPlDropdown } from './utils';\nimport DndBasket from '../../components/DragAndDrop/DndBasket.vue';\nimport { useBaskets } from './useBaskets';\n\ntype BasketIds = Exclude<keyof BubbleUIState['components'], 'valueColor' | 'valueSize'>;\ntype DataIds = keyof BubbleUIState['components'] & ('valueColor' | 'valueSize');\n\nconst store = useStore();\n\nconst BASKETS: BasketIds[] = [\n 'filters',\n 'x',\n 'y',\n 'xGroupBy',\n 'yGroupBy',\n 'tooltipContent',\n 'tabBy',\n 'facetBy',\n];\n\nconst BASKET_LABELS: Record<BasketIds, string> = {\n filters: 'Filter',\n x: 'X',\n y: 'Y',\n xGroupBy: 'X group',\n yGroupBy: 'Y group',\n tooltipContent: 'Tooltip',\n tabBy: 'Tab by',\n facetBy: 'Facet by',\n};\n\nconst {\n draggedId,\n basketsData,\n freeMetaOptions,\n freeMandatoryOptions,\n chipInfo,\n dataStateValues,\n dataOptions\n} = useBaskets<BubbleUIState, BasketIds, DataIds>(\n store,\n ['valueColor', 'valueSize'],\n ['filters', 'tabBy'],\n ['x','y', 'xGroupBy', 'yGroupBy','tooltipContent','facetBy'],\n BASKETS,\n BASKET_LABELS\n);\n\nconst readonlyValueColor = computed(() => store.value.readonlyInputs?.includes('valueColor') ?? false);\nconst readonlyValueSize = computed(() => store.value.readonlyInputs?.includes('valueSize') ?? false);\n\nconst valueColorValue = computed({\n get: () => dataStateValues.value.valueColor.value,\n set: (value: string | undefined) => {\n dataStateValues.value.valueColor.value = value;\n }\n});\n\nconst valueSizeValue = computed({\n get: () => dataStateValues.value.valueSize.value,\n set: (value: string | undefined) => {\n dataStateValues.value.valueSize.value = value;\n }\n});\n\n</script>\n\n<template>\n <form-layout>\n <template v-slot:dataInputs>\n <div class=\"data-form-input-item\">\n <pl-dropdown\n label=\"Data source for color:\"\n clearable\n v-model=\"valueColorValue\"\n :disabled=\"readonlyValueColor\"\n :options=\"dataOptions.valueColor\"\n :error=\"getErrorForPlDropdown('valueColor', store.inputGuide.value)\"\n />\n </div>\n <div class=\"data-form-input-item\" style=\"margin-top: 10px;\">\n <pl-dropdown\n label=\"Data source for size:\"\n clearable\n v-model=\"valueSizeValue\"\n :disabled=\"readonlyValueSize\"\n :options=\"dataOptions.valueSize\"\n :error=\"getErrorForPlDropdown('valueSize', store.inputGuide.value)\"\n />\n </div>\n </template>\n <template v-slot:mandatoryOptions>\n <MandatoryOptionsList\n :options=\"freeMandatoryOptions\"\n :chipInfo=\"chipInfo\"\n @dragged-id-update=\"draggedId = $event\"\n />\n </template>\n <template v-slot:metadataOptions>\n <OptionsList\n :options=\"freeMetaOptions\"\n :chipInfo=\"chipInfo\"\n @dragged-id-update=\"draggedId = $event\"\n />\n </template>\n <template v-slot:chartVar>\n <div\n v-for=\"basketProp in basketsData\"\n :key=\"basketProp.id\"\n class=\"data-form-input-item\"\n >\n <DndBasket v-bind=\"basketProp\" v-on=\"basketProp.listeners\" />\n </div>\n </template>\n </form-layout>\n</template>\n"],"names":["store","useStore","BASKETS","BASKET_LABELS","draggedId","basketsData","freeMetaOptions","freeMandatoryOptions","chipInfo","dataStateValues","dataOptions","useBaskets","readonlyValueColor","computed","_a","readonlyValueSize","valueColorValue","value","valueSizeValue","_createBlock","FormLayout","_createElementVNode","_hoisted_1","_createVNode","_unref","PlDropdown","$event","getErrorForPlDropdown","_hoisted_2","MandatoryOptionsList","_cache","OptionsList","_createElementBlock","_Fragment","_renderList","basketProp","DndBasket","_mergeProps","_toHandlers"],"mappings":"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"}
1
+ {"version":3,"file":"BubbleForm.vue.js","sources":["../../../src/forms/DataMappingForm/BubbleForm.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport { useStore } from '../../store';\nimport { PlDropdown } from '@platforma-sdk/ui-vue';\nimport type { BubbleUIState } from '@milaboratories/pf-plots';\nimport FormLayout from './Layout/FormLayout.vue';\nimport OptionsList from './Layout/OptionsList.vue';\nimport MandatoryOptionsList from './Layout/MandatoryOptions.vue';\nimport { computed } from 'vue';\nimport { getErrorForPlDropdown } from './utils';\nimport DndBasket from '../../components/DragAndDrop/DndBasket.vue';\nimport { useBaskets } from './useBaskets';\n\ntype BasketIds = Exclude<keyof BubbleUIState['components'], 'valueColor' | 'valueSize'>;\ntype DataIds = keyof BubbleUIState['components'] & ('valueColor' | 'valueSize');\n\nconst store = useStore();\n\nconst BASKETS: BasketIds[] = [\n 'filters',\n 'x',\n 'y',\n 'xGroupBy',\n 'yGroupBy',\n 'tooltipContent',\n 'tabBy',\n 'facetBy',\n];\n\nconst BASKET_LABELS: Record<BasketIds, string> = {\n filters: 'Filter',\n x: 'X',\n y: 'Y',\n xGroupBy: 'X group',\n yGroupBy: 'Y group',\n tooltipContent: 'Tooltip',\n tabBy: 'Tab by',\n facetBy: 'Facet by',\n};\n\nconst {\n draggedId,\n basketsData,\n freeMetaOptions,\n freeMandatoryOptions,\n chipInfo,\n dataStateValues,\n dataOptions,\n} = useBaskets<BubbleUIState, BasketIds, DataIds>(\n store,\n ['valueColor', 'valueSize'],\n ['filters', 'tabBy'],\n ['x', 'y', 'xGroupBy', 'yGroupBy', 'tooltipContent', 'facetBy'],\n BASKETS,\n BASKET_LABELS,\n);\n\nconst readonlyValueColor = computed(() => store.value.readonlyInputs?.includes('valueColor') ?? false);\nconst readonlyValueSize = computed(() => store.value.readonlyInputs?.includes('valueSize') ?? false);\n\nconst valueColorValue = computed({\n get: () => dataStateValues.value.valueColor.value,\n set: (value: string | undefined) => {\n dataStateValues.value.valueColor.value = value;\n },\n});\n\nconst valueSizeValue = computed({\n get: () => dataStateValues.value.valueSize.value,\n set: (value: string | undefined) => {\n dataStateValues.value.valueSize.value = value;\n },\n});\n\n</script>\n\n<template>\n <FormLayout>\n <template #dataInputs>\n <div class=\"data-form-input-item\">\n <PlDropdown\n v-model=\"valueColorValue\"\n label=\"Data source for color:\"\n clearable\n :disabled=\"readonlyValueColor\"\n :options=\"dataOptions.valueColor\"\n :error=\"getErrorForPlDropdown('valueColor', store.inputGuide.value)\"\n />\n </div>\n <div class=\"data-form-input-item\" style=\"margin-top: 10px;\">\n <PlDropdown\n v-model=\"valueSizeValue\"\n label=\"Data source for size:\"\n clearable\n :disabled=\"readonlyValueSize\"\n :options=\"dataOptions.valueSize\"\n :error=\"getErrorForPlDropdown('valueSize', store.inputGuide.value)\"\n />\n </div>\n </template>\n <template #mandatoryOptions>\n <MandatoryOptionsList\n :options=\"freeMandatoryOptions\"\n :chipInfo=\"chipInfo\"\n @dragged-id-update=\"draggedId = $event\"\n />\n </template>\n <template #metadataOptions>\n <OptionsList\n :options=\"freeMetaOptions\"\n :chipInfo=\"chipInfo\"\n @dragged-id-update=\"draggedId = $event\"\n />\n </template>\n <template #chartVar>\n <div\n v-for=\"basketProp in basketsData\"\n :key=\"basketProp.id\"\n class=\"data-form-input-item\"\n >\n <DndBasket v-bind=\"basketProp\" v-on=\"basketProp.listeners\" />\n </div>\n </template>\n </FormLayout>\n</template>\n"],"names":["store","useStore","BASKETS","BASKET_LABELS","draggedId","basketsData","freeMetaOptions","freeMandatoryOptions","chipInfo","dataStateValues","dataOptions","useBaskets","readonlyValueColor","computed","_a","readonlyValueSize","valueColorValue","value","valueSizeValue","_createBlock","FormLayout","_createElementVNode","_hoisted_1","_createVNode","_unref","PlDropdown","$event","getErrorForPlDropdown","_hoisted_2","MandatoryOptionsList","_cache","OptionsList","_createElementBlock","_Fragment","_renderList","basketProp","DndBasket","_mergeProps","_toHandlers"],"mappings":"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"}
@@ -204,9 +204,9 @@ const ve = { class: "data-form-input-item" }, pe = {
204
204
  dataInputs: E(() => [
205
205
  v("div", ve, [
206
206
  V(L(Z), {
207
- label: "Data source:",
208
207
  modelValue: l.value.value,
209
208
  "onUpdate:modelValue": o[0] || (o[0] = (a) => l.value.value = a),
209
+ label: "Data source:",
210
210
  options: p.value.value,
211
211
  disabled: $.value,
212
212
  error: L(re)("value", n.value)
@@ -1 +1 @@
1
- {"version":3,"file":"DendroForm.vue.js","sources":["../../../src/forms/DataMappingForm/DendroForm.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport { PlDropdown } from '@platforma-sdk/ui-vue';\nimport {\n DendroUIState,\n InputGuide,\n InputState\n} from '@milaboratories/pf-plots';\nimport FormLayout from './Layout/FormLayout.vue';\nimport { computed, watch, Ref, toRef, ref } from 'vue';\nimport { useStore } from '../../store';\nimport {\n getAllInputsOptions,\n toFiltersMulti,\n getErrorForPlDropdown,\n toSimpleMulti,\n getChipInfo,\n toSimpleSingle,\n getFreeOptions,\n hasInputError,\n} from './utils';\nimport { DEFAULT_DOT_SHAPE } from '../../dataBindAes';\nimport { DEFAULT_BLACK } from '../../constantsAesthetic';\nimport {\n BasketProps,\n ChipInfo,\n DropItemEvent,\n RemoveItemEvent\n} from '../../components/DragAndDrop/types';\nimport DndChip from '../../components/DragAndDrop/DndChip.vue';\nimport DndBasket from '../../components/DragAndDrop/DndBasket.vue';\nimport { MAX_SEARCH_OPTIONS_LIST_LENGTH } from '../../constantsCommon';\n\ntype BasketIds = Exclude<\n keyof (typeof inputStateValues)['value'] & keyof DendroUIState['components'],\n 'value' | 'filters' | 'tabBy'\n>;\n\nconst store = useStore();\nconst state = store.value.reactive.optionsState as DendroUIState;\nconst stateRef = toRef(store.value.reactive, 'optionsState');\n\nconst inputGuide = computed(\n () => store.value.inputGuide.value\n) as unknown as Ref<InputGuide<DendroUIState>>;\nconst labelsInfo = computed(() => store.value.uniqueValuesData.value);\n\n//const nodeSize = toRef(state.data.nodeSize.selectorState, \"selectedSource\");\nfunction getSimpleSingle(inputName: keyof InputState['components']) {\n return toSimpleSingle(\n stateRef,\n inputName,\n store.value.controller,\n store.value.columnsDataStore\n );\n}\nfunction getSimpleMulti(inputName: keyof InputState['components']) {\n return toSimpleMulti(\n stateRef,\n inputName,\n store.value.controller,\n store.value.columnsDataStore,\n inputGuide\n );\n}\nfunction getFiltersMulti(inputName: keyof InputState['components']) {\n return toFiltersMulti(\n stateRef,\n inputName,\n store.value.controller,\n store.value.columnsDataStore,\n inputGuide\n )\n}\n\nconst inputStateValues = ref({\n value: getSimpleSingle('value'),\n tableContent: getSimpleMulti('tableContent'),\n heatmapAnnotation: getSimpleMulti('heatmapAnnotation'),\n heatmapForSequence: getSimpleMulti('heatmapForSequence'),\n filters: getFiltersMulti('filters'),\n tabBy: getFiltersMulti('tabBy'),\n height: getSimpleMulti('height'),\n labels: getSimpleMulti('labels'),\n nodeShape: getSimpleMulti('nodeShape'),\n nodeColor: getSimpleMulti('nodeColor'),\n nodeSize: getSimpleMulti('nodeSize'),\n lineColor: getSimpleMulti('lineColor'),\n heatmapAxis: getSimpleMulti('heatmapAxis'),\n heatmapGroup: getSimpleMulti('heatmapGroup'),\n});\nwatch(\n () => inputStateValues.value.nodeShape,\n (value) => {\n store.value.reactive.layersSettings.dendro.dotShape = value.length\n ? { type: 'nodeShape', value: value[0] }\n : DEFAULT_DOT_SHAPE;\n }\n);\nwatch(\n () => inputStateValues.value.nodeColor,\n (value) => {\n store.value.reactive.layersSettings.dendro.dotFill = value.length\n ? { type: 'nodeColor', value: value[0] }\n : DEFAULT_BLACK;\n }\n);\nwatch(\n () => inputStateValues.value.lineColor,\n (value) => {\n store.value.reactive.layersSettings.dendro.lineColor = value.length\n ? { type: 'lineColor', value: value[0] }\n : DEFAULT_BLACK;\n }\n);\n\nconst options = computed(() => {\n return getAllInputsOptions(\n state,\n inputGuide as Ref<InputGuide<DendroUIState>>\n );\n});\n\nconst freeOptions = computed(() =>\n getFreeOptions(inputGuide as Ref<InputGuide<InputState>>, BASKETS)\n);\nconst freeMandatoryOptions = computed(() =>\n freeOptions.value.filter((item) => item.info.kind === 'axis')\n);\nconst BASKETS: BasketIds[] = [\n 'height',\n 'tableContent',\n 'labels',\n 'heatmapAnnotation',\n 'heatmapAxis',\n 'heatmapGroup',\n 'heatmapForSequence',\n 'nodeShape',\n 'nodeColor',\n 'nodeSize',\n 'lineColor',\n];\n\nconst BASKET_LABELS: Record<BasketIds, string> = {\n height: 'Connections length',\n tableContent: 'Table/tooltip content',\n labels: 'Labels',\n heatmapAnnotation: 'Heatmap annotation',\n heatmapAxis: 'Heatmap axis',\n heatmapGroup: 'Heatmap group',\n heatmapForSequence: 'Alignment data',\n nodeShape: 'Node shape',\n nodeColor: 'Node color',\n nodeSize: 'Node size',\n lineColor: 'Line color',\n};\n\nconst draggedId = ref<string | null>(null);\n\nconst chipInfo = computed<Record<string, ChipInfo>>(() => {\n const freeAndSelectedIds = new Set<string>();\n BASKETS.forEach((name) => {\n options.value[name].forEach((option) => {\n freeAndSelectedIds.add(option.value);\n });\n state.components[name].selectorStates.forEach((selectorState) => {\n freeAndSelectedIds.add(selectorState.selectedSource);\n });\n });\n return getChipInfo(inputGuide.value, state.components, labelsInfo.value, [...freeAndSelectedIds]);\n});\n\nfunction commonDropItemHandler(event: DropItemEvent<BasketIds>) {\n inputStateValues.value[event.id] = [\n ...inputStateValues.value[event.id],\n event.draggedId,\n ];\n draggedId.value = null;\n}\n\nfunction commonReorder(data: ChipInfo['id'][], name: BasketIds) {\n inputStateValues.value[name] = data;\n}\n\nfunction commonRemoveItem(event: RemoveItemEvent<BasketIds>) {\n inputStateValues.value[event.basketId] = inputStateValues.value[\n event.basketId\n ].filter((op) => op !== event.chipId);\n}\n\nfunction getConsistency(basketId: BasketIds) {\n return inputGuide.value.components[basketId].stateConsistency;\n}\n\nfunction getDisabled(basketId: BasketIds) {\n return (\n !inputGuide.value.readyData ||\n options.value[basketId].length === 0 ||\n (draggedId.value !== null &&\n !chipInfo.value[draggedId.value].availableBasketIds.has(basketId))\n );\n}\n\nasync function searchFilterOptions(sourceId:string, searchStr:string):Promise<{value:string, label:string}[]> {\n if (!store.value.columnsDataStore) {\n return Promise.resolve([]);\n }\n return (await store.value.controller.getUniqueSourceValuesWithLabels(store.value.columnsDataStore, inputGuide.value, sourceId, MAX_SEARCH_OPTIONS_LIST_LENGTH, searchStr)).values;\n}\nasync function searchSelectedFilterValueOptions(sourceId:string, selectedValue:string):Promise<{value:string, label:string}[]> {\n if (!store.value.columnsDataStore) {\n return Promise.resolve([]);\n }\n return (await store.value.controller.getUniqueSourceValuesWithLabels(store.value.columnsDataStore, inputGuide.value, sourceId, 1, undefined, selectedValue)).values;\n}\nasync function loadOptions(sourceId:string) {\n if (!store.value.columnsDataStore) {\n return Promise.resolve({values: [], overflow: false});\n }\n return store.value.controller.getUniqueSourceValuesWithLabels(store.value.columnsDataStore, inputGuide.value, sourceId, MAX_SEARCH_OPTIONS_LIST_LENGTH);\n}\n\nconst basketsData = computed<BasketProps[]>(() =>\n BASKETS.map((name) => {\n const guide = inputGuide.value.components[name];\n\n const basketProps: BasketProps = {\n id: name,\n title: BASKET_LABELS[name],\n isFilter: false,\n sortable: name === 'tableContent',\n multiple: guide.multipleSelectors,\n required: guide.required,\n disabled: getDisabled(name),\n readonly: store.value.readonlyInputs?.includes(name) ?? false,\n consistency: getConsistency(name),\n draggedId: draggedId.value,\n droppedIds: inputStateValues.value[name],\n info: chipInfo.value,\n\n searchFn: searchFilterOptions,\n searchSelectedValueFn: searchSelectedFilterValueOptions,\n loadOptionsFn: loadOptions,\n\n listeners: {\n 'drop-item': commonDropItemHandler,\n 'remove-item': commonRemoveItem,\n reorder: (data: ChipInfo['id'][]) => commonReorder(data, name)\n },\n };\n return basketProps;\n })\n);\n\nfunction showBasket(basketId: BasketProps['id']) {\n if (basketId === 'heatmapAxis' || basketId === 'heatmapGroup') {\n return inputStateValues.value.heatmapAnnotation !== null;\n }\n return true;\n}\n\nfunction cleanDraggedId() {\n draggedId.value = null;\n}\n\nconst autoFillInputs: (keyof typeof inputStateValues.value)[] = ['value'];\n\nautoFillInputs.forEach((inputName) => {\n watch(\n [() => inputStateValues.value[inputName], () => options.value],\n ([v, vOptions]) => {\n if (\n (typeof v === 'undefined' ||\n hasInputError('value', inputGuide.value)) &&\n vOptions[inputName] &&\n vOptions[inputName].length\n ) {store.value.controller.changeSelected(\n inputName,\n store.value.columnsDataStore!,\n store.value.reactive.optionsState,\n [{selectedSource: vOptions[inputName][0].value}]\n\n );\n }\n },\n { immediate: true }\n );\n});\n\nconst readonlyValue = computed(() => store.value.readonlyInputs?.includes('value') ?? false);\n\n</script>\n\n<template>\n <form-layout>\n <template v-slot:dataInputs>\n <div class=\"data-form-input-item\">\n <pl-dropdown\n label=\"Data source:\"\n v-model=\"inputStateValues.value\"\n :options=\"options.value\"\n :disabled=\"readonlyValue\"\n :error=\"getErrorForPlDropdown('value', inputGuide)\"\n />\n </div>\n <div class=\"metadata-block\" v-if=\"freeMandatoryOptions.length > 0\">\n <div class=\"title\">Drag to build the chart</div>\n <div class=\"metadata-block__items\">\n <DndChip\n v-for=\"{ id } in freeMandatoryOptions\"\n :key=\"id\"\n :info=\"chipInfo[id]\"\n @dragstart=\"draggedId = $event\"\n @dragend=\"cleanDraggedId\"\n />\n </div>\n </div>\n <div class=\"metadata-block\" v-if=\"freeOptions.length > 0\">\n <div class=\"title\">Metadata</div>\n <div class=\"metadata-block__items\">\n <DndChip\n v-for=\"{ id } in freeOptions\"\n :key=\"id\"\n :info=\"chipInfo[id]\"\n @dragstart=\"draggedId = $event\"\n @dragend=\"cleanDraggedId\"\n />\n </div>\n </div>\n </template>\n\n <template v-slot:chartVar>\n <template v-for=\"basketProp in basketsData\" :key=\"basketProp.id\">\n <div class=\"data-form-input-item\" v-if=\"showBasket(basketProp.id)\">\n <DndBasket v-bind=\"basketProp\" v-on=\"basketProp.listeners\" />\n </div>\n </template>\n </template>\n </form-layout>\n</template>\n"],"names":["store","useStore","state","stateRef","toRef","inputGuide","computed","labelsInfo","getSimpleSingle","inputName","toSimpleSingle","getSimpleMulti","toSimpleMulti","getFiltersMulti","toFiltersMulti","inputStateValues","ref","watch","value","DEFAULT_DOT_SHAPE","DEFAULT_BLACK","options","getAllInputsOptions","freeOptions","getFreeOptions","BASKETS","freeMandatoryOptions","item","BASKET_LABELS","draggedId","chipInfo","freeAndSelectedIds","name","option","selectorState","getChipInfo","commonDropItemHandler","event","commonReorder","data","commonRemoveItem","op","getConsistency","basketId","getDisabled","searchFilterOptions","sourceId","searchStr","MAX_SEARCH_OPTIONS_LIST_LENGTH","searchSelectedFilterValueOptions","selectedValue","loadOptions","basketsData","guide","_a","showBasket","cleanDraggedId","v","vOptions","hasInputError","readonlyValue","_createBlock","FormLayout","_createElementVNode","_hoisted_1","_createVNode","_unref","PlDropdown","_cache","$event","getErrorForPlDropdown","_openBlock","_createElementBlock","_hoisted_2","_hoisted_3","_Fragment","_renderList","id","DndChip","_hoisted_4","_hoisted_5","basketProp","_hoisted_6","DndBasket","_mergeProps","_toHandlers"],"mappings":"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"}
1
+ {"version":3,"file":"DendroForm.vue.js","sources":["../../../src/forms/DataMappingForm/DendroForm.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport { PlDropdown } from '@platforma-sdk/ui-vue';\nimport type {\n DendroUIState,\n InputGuide,\n InputState,\n} from '@milaboratories/pf-plots';\nimport FormLayout from './Layout/FormLayout.vue';\nimport type { Ref } from 'vue';\nimport { computed, watch, toRef, ref } from 'vue';\nimport { useStore } from '../../store';\nimport {\n getAllInputsOptions,\n toFiltersMulti,\n getErrorForPlDropdown,\n toSimpleMulti,\n getChipInfo,\n toSimpleSingle,\n getFreeOptions,\n hasInputError,\n} from './utils';\nimport { DEFAULT_DOT_SHAPE } from '../../dataBindAes';\nimport { DEFAULT_BLACK } from '../../constantsAesthetic';\nimport type {\n BasketProps,\n ChipInfo,\n DropItemEvent,\n RemoveItemEvent,\n} from '../../components/DragAndDrop/types';\nimport DndChip from '../../components/DragAndDrop/DndChip.vue';\nimport DndBasket from '../../components/DragAndDrop/DndBasket.vue';\nimport { MAX_SEARCH_OPTIONS_LIST_LENGTH } from '../../constantsCommon';\n\ntype BasketIds = Exclude<\n keyof (typeof inputStateValues)['value'] & keyof DendroUIState['components'],\n 'value' | 'filters' | 'tabBy'\n>;\n\nconst store = useStore();\nconst state = store.value.reactive.optionsState as DendroUIState;\nconst stateRef = toRef(store.value.reactive, 'optionsState');\n\nconst inputGuide = computed(\n () => store.value.inputGuide.value,\n) as unknown as Ref<InputGuide<DendroUIState>>;\nconst labelsInfo = computed(() => store.value.uniqueValuesData.value);\n\n// const nodeSize = toRef(state.data.nodeSize.selectorState, \"selectedSource\");\nfunction getSimpleSingle(inputName: keyof InputState['components']) {\n return toSimpleSingle(\n stateRef,\n inputName,\n store.value.controller,\n store.value.columnsDataStore,\n );\n}\nfunction getSimpleMulti(inputName: keyof InputState['components']) {\n return toSimpleMulti(\n stateRef,\n inputName,\n store.value.controller,\n store.value.columnsDataStore,\n );\n}\nfunction getFiltersMulti(inputName: keyof InputState['components']) {\n return toFiltersMulti(\n stateRef,\n inputName,\n store.value.controller,\n store.value.columnsDataStore,\n inputGuide,\n );\n}\n\nconst inputStateValues = ref({\n value: getSimpleSingle('value'),\n tableContent: getSimpleMulti('tableContent'),\n heatmapAnnotation: getSimpleMulti('heatmapAnnotation'),\n heatmapForSequence: getSimpleMulti('heatmapForSequence'),\n filters: getFiltersMulti('filters'),\n tabBy: getFiltersMulti('tabBy'),\n height: getSimpleMulti('height'),\n labels: getSimpleMulti('labels'),\n nodeShape: getSimpleMulti('nodeShape'),\n nodeColor: getSimpleMulti('nodeColor'),\n nodeSize: getSimpleMulti('nodeSize'),\n lineColor: getSimpleMulti('lineColor'),\n heatmapAxis: getSimpleMulti('heatmapAxis'),\n heatmapGroup: getSimpleMulti('heatmapGroup'),\n});\nwatch(\n () => inputStateValues.value.nodeShape,\n (value) => {\n store.value.reactive.layersSettings.dendro.dotShape = value.length\n ? { type: 'nodeShape', value: value[0] }\n : DEFAULT_DOT_SHAPE;\n },\n);\nwatch(\n () => inputStateValues.value.nodeColor,\n (value) => {\n store.value.reactive.layersSettings.dendro.dotFill = value.length\n ? { type: 'nodeColor', value: value[0] }\n : DEFAULT_BLACK;\n },\n);\nwatch(\n () => inputStateValues.value.lineColor,\n (value) => {\n store.value.reactive.layersSettings.dendro.lineColor = value.length\n ? { type: 'lineColor', value: value[0] }\n : DEFAULT_BLACK;\n },\n);\n\nconst options = computed(() => {\n return getAllInputsOptions(\n state,\n inputGuide as Ref<InputGuide<DendroUIState>>,\n );\n});\n\nconst freeOptions = computed(() =>\n getFreeOptions(inputGuide as Ref<InputGuide<InputState>>, BASKETS),\n);\nconst freeMandatoryOptions = computed(() =>\n freeOptions.value.filter((item) => item.info.kind === 'axis'),\n);\nconst BASKETS: BasketIds[] = [\n 'height',\n 'tableContent',\n 'labels',\n 'heatmapAnnotation',\n 'heatmapAxis',\n 'heatmapGroup',\n 'heatmapForSequence',\n 'nodeShape',\n 'nodeColor',\n 'nodeSize',\n 'lineColor',\n];\n\nconst BASKET_LABELS: Record<BasketIds, string> = {\n height: 'Connections length',\n tableContent: 'Table/tooltip content',\n labels: 'Labels',\n heatmapAnnotation: 'Heatmap annotation',\n heatmapAxis: 'Heatmap axis',\n heatmapGroup: 'Heatmap group',\n heatmapForSequence: 'Alignment data',\n nodeShape: 'Node shape',\n nodeColor: 'Node color',\n nodeSize: 'Node size',\n lineColor: 'Line color',\n};\n\nconst draggedId = ref<string | null>(null);\n\nconst chipInfo = computed<Record<string, ChipInfo>>(() => {\n const freeAndSelectedIds = new Set<string>();\n BASKETS.forEach((name) => {\n options.value[name].forEach((option) => {\n freeAndSelectedIds.add(option.value);\n });\n state.components[name].selectorStates.forEach((selectorState) => {\n freeAndSelectedIds.add(selectorState.selectedSource);\n });\n });\n return getChipInfo(inputGuide.value, state.components, labelsInfo.value, [...freeAndSelectedIds]);\n});\n\nfunction commonDropItemHandler(event: DropItemEvent<BasketIds>) {\n inputStateValues.value[event.id] = [\n ...inputStateValues.value[event.id],\n event.draggedId,\n ];\n draggedId.value = null;\n}\n\nfunction commonReorder(data: ChipInfo['id'][], name: BasketIds) {\n inputStateValues.value[name] = data;\n}\n\nfunction commonRemoveItem(event: RemoveItemEvent<BasketIds>) {\n inputStateValues.value[event.basketId] = inputStateValues.value[\n event.basketId\n ].filter((op) => op !== event.chipId);\n}\n\nfunction getConsistency(basketId: BasketIds) {\n return inputGuide.value.components[basketId].stateConsistency;\n}\n\nfunction getDisabled(basketId: BasketIds) {\n return (\n !inputGuide.value.readyData\n || options.value[basketId].length === 0\n || (draggedId.value !== null\n && !chipInfo.value[draggedId.value].availableBasketIds.has(basketId))\n );\n}\n\nasync function searchFilterOptions(sourceId: string, searchStr: string): Promise<{ value: string; label: string }[]> {\n if (!store.value.columnsDataStore) {\n return Promise.resolve([]);\n }\n return (await store.value.controller.getUniqueSourceValuesWithLabels(store.value.columnsDataStore, inputGuide.value, sourceId, MAX_SEARCH_OPTIONS_LIST_LENGTH, searchStr)).values;\n}\nasync function searchSelectedFilterValueOptions(sourceId: string, selectedValue: string): Promise<{ value: string; label: string }[]> {\n if (!store.value.columnsDataStore) {\n return Promise.resolve([]);\n }\n return (await store.value.controller.getUniqueSourceValuesWithLabels(store.value.columnsDataStore, inputGuide.value, sourceId, 1, undefined, selectedValue)).values;\n}\nasync function loadOptions(sourceId: string) {\n if (!store.value.columnsDataStore) {\n return Promise.resolve({ values: [], overflow: false });\n }\n return store.value.controller.getUniqueSourceValuesWithLabels(store.value.columnsDataStore, inputGuide.value, sourceId, MAX_SEARCH_OPTIONS_LIST_LENGTH);\n}\n\nconst basketsData = computed<BasketProps[]>(() =>\n BASKETS.map((name) => {\n const guide = inputGuide.value.components[name];\n\n const basketProps: BasketProps = {\n id: name,\n title: BASKET_LABELS[name],\n isFilter: false,\n sortable: name === 'tableContent',\n multiple: guide.multipleSelectors,\n required: guide.required,\n disabled: getDisabled(name),\n readonly: store.value.readonlyInputs?.includes(name) ?? false,\n consistency: getConsistency(name),\n draggedId: draggedId.value,\n droppedIds: inputStateValues.value[name],\n info: chipInfo.value,\n\n searchFn: searchFilterOptions,\n searchSelectedValueFn: searchSelectedFilterValueOptions,\n loadOptionsFn: loadOptions,\n\n listeners: {\n 'drop-item': commonDropItemHandler,\n 'remove-item': commonRemoveItem,\n 'reorder': (data: ChipInfo['id'][]) => commonReorder(data, name),\n },\n };\n return basketProps;\n }),\n);\n\nfunction showBasket(basketId: BasketProps['id']) {\n if (basketId === 'heatmapAxis' || basketId === 'heatmapGroup') {\n return inputStateValues.value.heatmapAnnotation !== null;\n }\n return true;\n}\n\nfunction cleanDraggedId() {\n draggedId.value = null;\n}\n\nconst autoFillInputs: (keyof typeof inputStateValues.value)[] = ['value'];\n\nautoFillInputs.forEach((inputName) => {\n watch(\n [() => inputStateValues.value[inputName], () => options.value],\n ([v, vOptions]) => {\n if (\n (typeof v === 'undefined'\n || hasInputError('value', inputGuide.value))\n && vOptions[inputName]\n && vOptions[inputName].length\n ) {\n store.value.controller.changeSelected(\n inputName,\n store.value.columnsDataStore!,\n store.value.reactive.optionsState,\n [{ selectedSource: vOptions[inputName][0].value }],\n\n );\n }\n },\n { immediate: true },\n );\n});\n\nconst readonlyValue = computed(() => store.value.readonlyInputs?.includes('value') ?? false);\n\n</script>\n\n<template>\n <FormLayout>\n <template #dataInputs>\n <div class=\"data-form-input-item\">\n <PlDropdown\n v-model=\"inputStateValues.value\"\n label=\"Data source:\"\n :options=\"options.value\"\n :disabled=\"readonlyValue\"\n :error=\"getErrorForPlDropdown('value', inputGuide)\"\n />\n </div>\n <div v-if=\"freeMandatoryOptions.length > 0\" class=\"metadata-block\">\n <div class=\"title\">Drag to build the chart</div>\n <div class=\"metadata-block__items\">\n <DndChip\n v-for=\"{ id } in freeMandatoryOptions\"\n :key=\"id\"\n :info=\"chipInfo[id]\"\n @dragstart=\"draggedId = $event\"\n @dragend=\"cleanDraggedId\"\n />\n </div>\n </div>\n <div v-if=\"freeOptions.length > 0\" class=\"metadata-block\">\n <div class=\"title\">Metadata</div>\n <div class=\"metadata-block__items\">\n <DndChip\n v-for=\"{ id } in freeOptions\"\n :key=\"id\"\n :info=\"chipInfo[id]\"\n @dragstart=\"draggedId = $event\"\n @dragend=\"cleanDraggedId\"\n />\n </div>\n </div>\n </template>\n\n <template #chartVar>\n <template v-for=\"basketProp in basketsData\" :key=\"basketProp.id\">\n <div v-if=\"showBasket(basketProp.id)\" class=\"data-form-input-item\">\n <DndBasket v-bind=\"basketProp\" v-on=\"basketProp.listeners\" />\n </div>\n </template>\n </template>\n </FormLayout>\n</template>\n"],"names":["store","useStore","state","stateRef","toRef","inputGuide","computed","labelsInfo","getSimpleSingle","inputName","toSimpleSingle","getSimpleMulti","toSimpleMulti","getFiltersMulti","toFiltersMulti","inputStateValues","ref","watch","value","DEFAULT_DOT_SHAPE","DEFAULT_BLACK","options","getAllInputsOptions","freeOptions","getFreeOptions","BASKETS","freeMandatoryOptions","item","BASKET_LABELS","draggedId","chipInfo","freeAndSelectedIds","name","option","selectorState","getChipInfo","commonDropItemHandler","event","commonReorder","data","commonRemoveItem","op","getConsistency","basketId","getDisabled","searchFilterOptions","sourceId","searchStr","MAX_SEARCH_OPTIONS_LIST_LENGTH","searchSelectedFilterValueOptions","selectedValue","loadOptions","basketsData","guide","_a","showBasket","cleanDraggedId","v","vOptions","hasInputError","readonlyValue","_createBlock","FormLayout","_createElementVNode","_hoisted_1","_createVNode","_unref","PlDropdown","_cache","$event","getErrorForPlDropdown","_openBlock","_createElementBlock","_hoisted_2","_hoisted_3","_Fragment","_renderList","id","DndChip","_hoisted_4","_hoisted_5","basketProp","_hoisted_6","DndBasket","_mergeProps","_toHandlers"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"DiscreteForm.vue.js","sources":["../../../src/forms/DataMappingForm/DiscreteForm.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport { PlDropdown } from '@platforma-sdk/ui-vue';\nimport { DiscreteUIState } from '@milaboratories/pf-plots';\nimport { computed, watch} from 'vue';\nimport { useStore } from '../../store';\nimport { getErrorForPlDropdown } from './utils';\nimport { checkStatisticsInputsValidity } from '../../utils';\nimport DndBasket from '../../components/DragAndDrop/DndBasket.vue';\nimport FormLayout from './Layout/FormLayout.vue';\nimport OptionsList from './Layout/OptionsList.vue';\nimport MandatoryOptionsList from './Layout/MandatoryOptions.vue';\nimport { useBaskets } from './useBaskets';\n\nconst store = useStore();\n\nwatch(\n () => store.value.commonHelpersData.primaryGroups.value,\n checkStatisticsInputsValidity(store)\n);\n\ntype BasketIds = Exclude<keyof DiscreteUIState['components'], 'y'>;\ntype DataIds = keyof DiscreteUIState['components'] & 'y'\n\nconst BASKETS: BasketIds[] = [\n 'filters',\n 'primaryGrouping',\n 'secondaryGrouping',\n 'tabBy',\n 'facetBy'\n];\nconst BASKET_LABELS: Record<BasketIds, string> = {\n filters: 'Filter',\n primaryGrouping: 'Primary grouping',\n secondaryGrouping: 'Secondary grouping',\n tabBy: 'Tab by',\n facetBy: 'Facet by'\n};\n\nconst {\n draggedId,\n basketsData,\n freeMetaOptions,\n freeMandatoryOptions,\n chipInfo,\n dataStateValues,\n dataOptions\n} = useBaskets<DiscreteUIState, BasketIds, DataIds>(\n store,\n ['y'],\n ['filters', 'tabBy'],\n ['primaryGrouping', 'secondaryGrouping', 'facetBy'],\n BASKETS,\n BASKET_LABELS\n);\n\nconst readonlyY = computed(() => store.value.readonlyInputs?.includes('y') ?? false);\n\nconst yValue = computed({\n get: () => dataStateValues.value.y.value,\n set: (value: string | undefined) => {\n dataStateValues.value.y.value = value;\n }\n});\n</script>\n\n<template>\n <form-layout>\n <template v-slot:dataInputs>\n <div class=\"data-form-input-item\">\n <pl-dropdown\n v-model=\"yValue\"\n :options=\"dataOptions.y\"\n :disabled=\"readonlyY\"\n :error=\"getErrorForPlDropdown('y', store.inputGuide.value)\"\n label=\"Y:\"\n :clearable=\"!readonlyY\"\n />\n </div>\n </template>\n <template v-slot:mandatoryOptions>\n <MandatoryOptionsList\n :options=\"freeMandatoryOptions\"\n :chipInfo=\"chipInfo\"\n @dragged-id-update=\"draggedId = $event\"\n />\n </template>\n <template v-slot:metadataOptions>\n <OptionsList\n :options=\"freeMetaOptions\"\n :chipInfo=\"chipInfo\"\n @dragged-id-update=\"draggedId = $event\"\n />\n </template>\n <template v-slot:chartVar>\n <div\n v-for=\"basketProp in basketsData\"\n :key=\"basketProp.id\"\n class=\"data-form-input-item\"\n >\n <DndBasket v-bind=\"basketProp\" v-on=\"basketProp.listeners\" />\n </div>\n </template>\n </form-layout>\n</template>\n"],"names":["store","useStore","watch","checkStatisticsInputsValidity","BASKETS","BASKET_LABELS","draggedId","basketsData","freeMetaOptions","freeMandatoryOptions","chipInfo","dataStateValues","dataOptions","useBaskets","readonlyY","computed","_a","yValue","value","_createBlock","FormLayout","_createElementVNode","_hoisted_1","_createVNode","_unref","PlDropdown","$event","getErrorForPlDropdown","MandatoryOptionsList","_cache","OptionsList","_createElementBlock","_Fragment","_renderList","basketProp","DndBasket","_mergeProps","_toHandlers"],"mappings":";;;;;;;;;;;;;;;;;AAaA,UAAMA,IAAQC,EAAA;AAEd,IAAAC;AAAA,MACE,MAAMF,EAAM,MAAM,kBAAkB,cAAc;AAAA,MAClDG,EAA8BH,CAAK;AAAA,IAAA;AAMrC,UAAMI,IAAuB;AAAA,MAC3B;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IAAA,GAEIC,IAA2C;AAAA,MAC/C,SAAS;AAAA,MACT,iBAAiB;AAAA,MACjB,mBAAmB;AAAA,MACnB,OAAO;AAAA,MACP,SAAS;AAAA,IAAA,GAGL;AAAA,MACJ,WAAAC;AAAA,MACA,aAAAC;AAAA,MACA,iBAAAC;AAAA,MACA,sBAAAC;AAAA,MACA,UAAAC;AAAA,MACA,iBAAAC;AAAA,MACA,aAAAC;AAAA,IAAA,IACEC;AAAA,MACFb;AAAA,MACA,CAAC,GAAG;AAAA,MACJ,CAAC,WAAW,OAAO;AAAA,MACnB,CAAC,mBAAmB,qBAAqB,SAAS;AAAA,MAClDI;AAAA,MACAC;AAAA,IAAA,GAGIS,IAAYC,EAAS,MAAA;;AAAM,eAAAC,IAAAhB,EAAM,MAAM,mBAAZ,gBAAAgB,EAA4B,SAAS,SAAQ;AAAA,KAAK,GAE7EC,IAASF,EAAS;AAAA,MACtB,KAAK,MAAMJ,EAAgB,MAAM,EAAE;AAAA,MACnC,KAAK,CAACO,MAA8B;AAClC,QAAAP,EAAgB,MAAM,EAAE,QAAQO;AAAA,MAClC;AAAA,IAAA,CACD;2BAICC,EAoCcC,GAAA,MAAA;AAAA,MAnCK,cACf,MASM;AAAA,QATNC,EASM,OATNC,GASM;AAAA,UARJC,EAOEC,EAAAC,CAAA,GAAA;AAAA,wBANSR,EAAA;AAAA,0DAAAA,EAAM,QAAAS;AAAA,YACd,SAASF,EAAAZ,CAAA,EAAY;AAAA,YACrB,UAAUE,EAAA;AAAA,YACV,OAAOU,EAAAG,CAAA,EAAqB,KAAMH,KAAM,WAAW,KAAK;AAAA,YACzD,OAAM;AAAA,YACL,YAAYV,EAAA;AAAA,UAAA;;;MAIF,oBACf,MAIE;AAAA,QAJFS,EAIEK,GAAA;AAAA,UAHC,SAASJ,EAAAf,CAAA;AAAA,UACT,UAAUe,EAAAd,CAAA;AAAA,UACV,mBAAiBmB,EAAA,CAAA,MAAAA,EAAA,CAAA,IAAA,CAAAH,MAAEpB,EAAA,QAAYoB;AAAA,QAAA;;MAGnB,mBACf,MAIE;AAAA,QAJFH,EAIEO,GAAA;AAAA,UAHC,SAASN,EAAAhB,CAAA;AAAA,UACT,UAAUgB,EAAAd,CAAA;AAAA,UACV,mBAAiBmB,EAAA,CAAA,MAAAA,EAAA,CAAA,IAAA,CAAAH,MAAEpB,EAAA,QAAYoB;AAAA,QAAA;;MAGnB,YAEb,MAAiC;AAAA,gBADnCK,EAMMC,GAAA,MAAAC,EALiBT,EAAAjB,CAAA,GAAW,CAAzB2B,YADTH,EAMM,OAAA;AAAA,UAJH,KAAKG,EAAW;AAAA,UACjB,OAAM;AAAA,QAAA;UAENX,EAA6DY,GAA7DC,EAA6D,EAAA,SAAA,GAAA,GAA1CF,GAAYG,EAA2BH,EAAV,SAAS,CAAA,GAAA,MAAA,EAAA;AAAA,QAAA;;;;;;"}
1
+ {"version":3,"file":"DiscreteForm.vue.js","sources":["../../../src/forms/DataMappingForm/DiscreteForm.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport { PlDropdown } from '@platforma-sdk/ui-vue';\nimport type { DiscreteUIState } from '@milaboratories/pf-plots';\nimport { computed, watch } from 'vue';\nimport { useStore } from '../../store';\nimport { getErrorForPlDropdown } from './utils';\nimport { checkStatisticsInputsValidity } from '../../utils';\nimport DndBasket from '../../components/DragAndDrop/DndBasket.vue';\nimport FormLayout from './Layout/FormLayout.vue';\nimport OptionsList from './Layout/OptionsList.vue';\nimport MandatoryOptionsList from './Layout/MandatoryOptions.vue';\nimport { useBaskets } from './useBaskets';\n\nconst store = useStore();\n\nwatch(\n () => store.value.commonHelpersData.primaryGroups.value,\n checkStatisticsInputsValidity(store),\n);\n\ntype BasketIds = Exclude<keyof DiscreteUIState['components'], 'y'>;\ntype DataIds = keyof DiscreteUIState['components'] & 'y';\n\nconst BASKETS: BasketIds[] = [\n 'filters',\n 'primaryGrouping',\n 'secondaryGrouping',\n 'tabBy',\n 'facetBy',\n];\nconst BASKET_LABELS: Record<BasketIds, string> = {\n filters: 'Filter',\n primaryGrouping: 'Primary grouping',\n secondaryGrouping: 'Secondary grouping',\n tabBy: 'Tab by',\n facetBy: 'Facet by',\n};\n\nconst {\n draggedId,\n basketsData,\n freeMetaOptions,\n freeMandatoryOptions,\n chipInfo,\n dataStateValues,\n dataOptions,\n} = useBaskets<DiscreteUIState, BasketIds, DataIds>(\n store,\n ['y'],\n ['filters', 'tabBy'],\n ['primaryGrouping', 'secondaryGrouping', 'facetBy'],\n BASKETS,\n BASKET_LABELS,\n);\n\nconst readonlyY = computed(() => store.value.readonlyInputs?.includes('y') ?? false);\n\nconst yValue = computed({\n get: () => dataStateValues.value.y.value,\n set: (value: string | undefined) => {\n dataStateValues.value.y.value = value;\n },\n});\n</script>\n\n<template>\n <FormLayout>\n <template #dataInputs>\n <div class=\"data-form-input-item\">\n <PlDropdown\n v-model=\"yValue\"\n :options=\"dataOptions.y\"\n :disabled=\"readonlyY\"\n :error=\"getErrorForPlDropdown('y', store.inputGuide.value)\"\n label=\"Y:\"\n :clearable=\"!readonlyY\"\n />\n </div>\n </template>\n <template #mandatoryOptions>\n <MandatoryOptionsList\n :options=\"freeMandatoryOptions\"\n :chipInfo=\"chipInfo\"\n @dragged-id-update=\"draggedId = $event\"\n />\n </template>\n <template #metadataOptions>\n <OptionsList\n :options=\"freeMetaOptions\"\n :chipInfo=\"chipInfo\"\n @dragged-id-update=\"draggedId = $event\"\n />\n </template>\n <template #chartVar>\n <div\n v-for=\"basketProp in basketsData\"\n :key=\"basketProp.id\"\n class=\"data-form-input-item\"\n >\n <DndBasket v-bind=\"basketProp\" v-on=\"basketProp.listeners\" />\n </div>\n </template>\n </FormLayout>\n</template>\n"],"names":["store","useStore","watch","checkStatisticsInputsValidity","BASKETS","BASKET_LABELS","draggedId","basketsData","freeMetaOptions","freeMandatoryOptions","chipInfo","dataStateValues","dataOptions","useBaskets","readonlyY","computed","_a","yValue","value","_createBlock","FormLayout","_createElementVNode","_hoisted_1","_createVNode","_unref","PlDropdown","$event","getErrorForPlDropdown","MandatoryOptionsList","_cache","OptionsList","_createElementBlock","_Fragment","_renderList","basketProp","DndBasket","_mergeProps","_toHandlers"],"mappings":";;;;;;;;;;;;;;;;;AAaA,UAAMA,IAAQC,EAAA;AAEd,IAAAC;AAAA,MACE,MAAMF,EAAM,MAAM,kBAAkB,cAAc;AAAA,MAClDG,EAA8BH,CAAK;AAAA,IAAA;AAMrC,UAAMI,IAAuB;AAAA,MAC3B;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IAAA,GAEIC,IAA2C;AAAA,MAC/C,SAAS;AAAA,MACT,iBAAiB;AAAA,MACjB,mBAAmB;AAAA,MACnB,OAAO;AAAA,MACP,SAAS;AAAA,IAAA,GAGL;AAAA,MACJ,WAAAC;AAAA,MACA,aAAAC;AAAA,MACA,iBAAAC;AAAA,MACA,sBAAAC;AAAA,MACA,UAAAC;AAAA,MACA,iBAAAC;AAAA,MACA,aAAAC;AAAA,IAAA,IACEC;AAAA,MACFb;AAAA,MACA,CAAC,GAAG;AAAA,MACJ,CAAC,WAAW,OAAO;AAAA,MACnB,CAAC,mBAAmB,qBAAqB,SAAS;AAAA,MAClDI;AAAA,MACAC;AAAA,IAAA,GAGIS,IAAYC,EAAS,MAAA;;AAAM,eAAAC,IAAAhB,EAAM,MAAM,mBAAZ,gBAAAgB,EAA4B,SAAS,SAAQ;AAAA,KAAK,GAE7EC,IAASF,EAAS;AAAA,MACtB,KAAK,MAAMJ,EAAgB,MAAM,EAAE;AAAA,MACnC,KAAK,CAACO,MAA8B;AAClC,QAAAP,EAAgB,MAAM,EAAE,QAAQO;AAAA,MAClC;AAAA,IAAA,CACD;2BAICC,EAoCaC,GAAA,MAAA;AAAA,MAnCA,cACT,MASM;AAAA,QATNC,EASM,OATNC,GASM;AAAA,UARJC,EAOEC,EAAAC,CAAA,GAAA;AAAA,wBANSR,EAAA;AAAA,0DAAAA,EAAM,QAAAS;AAAA,YACd,SAASF,EAAAZ,CAAA,EAAY;AAAA,YACrB,UAAUE,EAAA;AAAA,YACV,OAAOU,EAAAG,CAAA,EAAqB,KAAMH,KAAM,WAAW,KAAK;AAAA,YACzD,OAAM;AAAA,YACL,YAAYV,EAAA;AAAA,UAAA;;;MAIR,oBACT,MAIE;AAAA,QAJFS,EAIEK,GAAA;AAAA,UAHC,SAASJ,EAAAf,CAAA;AAAA,UACT,UAAUe,EAAAd,CAAA;AAAA,UACV,mBAAiBmB,EAAA,CAAA,MAAAA,EAAA,CAAA,IAAA,CAAAH,MAAEpB,EAAA,QAAYoB;AAAA,QAAA;;MAGzB,mBACT,MAIE;AAAA,QAJFH,EAIEO,GAAA;AAAA,UAHC,SAASN,EAAAhB,CAAA;AAAA,UACT,UAAUgB,EAAAd,CAAA;AAAA,UACV,mBAAiBmB,EAAA,CAAA,MAAAA,EAAA,CAAA,IAAA,CAAAH,MAAEpB,EAAA,QAAYoB;AAAA,QAAA;;MAGzB,YAEP,MAAiC;AAAA,gBADnCK,EAMMC,GAAA,MAAAC,EALiBT,EAAAjB,CAAA,GAAW,CAAzB2B,YADTH,EAMM,OAAA;AAAA,UAJH,KAAKG,EAAW;AAAA,UACjB,OAAM;AAAA,QAAA;UAENX,EAA6DY,GAA7DC,EAA6D,EAAA,SAAA,GAAA,GAA1CF,GAAYG,EAA2BH,EAAV,SAAS,CAAA,GAAA,MAAA,EAAA;AAAA,QAAA;;;;;;"}
@@ -60,10 +60,10 @@ const $ = { class: "data-form-input-item" }, q = /* @__PURE__ */ b({
60
60
  dataInputs: n(() => [
61
61
  S("div", $, [
62
62
  r(o(Y), {
63
- label: "Data source:",
64
- clearable: "",
65
63
  modelValue: d.value,
66
64
  "onUpdate:modelValue": e[0] || (e[0] = (t) => d.value = t),
65
+ label: "Data source:",
66
+ clearable: "",
67
67
  options: o(g).value,
68
68
  disabled: I.value,
69
69
  error: o(O)("value", o(l).inputGuide.value)
@@ -1 +1 @@
1
- {"version":3,"file":"HeatmapForm.vue.js","sources":["../../../src/forms/DataMappingForm/HeatmapForm.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport { useStore } from '../../store';\nimport { PlDropdown } from '@platforma-sdk/ui-vue';\nimport { HeatmapUIState } from '@milaboratories/pf-plots';\nimport FormLayout from './Layout/FormLayout.vue';\nimport OptionsList from './Layout/OptionsList.vue';\nimport MandatoryOptionsList from './Layout/MandatoryOptions.vue';\nimport { computed } from 'vue';\nimport { getErrorForPlDropdown } from './utils';\nimport DndBasket from '../../components/DragAndDrop/DndBasket.vue';\nimport { useBaskets } from './useBaskets';\n\nconst store = useStore();\n\ntype BasketIds = Exclude<keyof HeatmapUIState['components'], 'value'>;\ntype DataIds = keyof HeatmapUIState['components'] & 'value';\n\nconst BASKETS: BasketIds[] = [\n 'filters',\n 'x',\n 'y',\n 'xGroupBy',\n 'yGroupBy',\n 'tooltipContent',\n 'tabBy',\n 'facetBy',\n 'annotationsX',\n 'annotationsY'\n];\n\nconst BASKET_LABELS: Record<BasketIds, string> = {\n filters: 'Filter',\n x: 'X',\n y: 'Y',\n xGroupBy: 'X group',\n yGroupBy: 'Y group',\n tooltipContent: 'Tooltip',\n tabBy: 'Tab by',\n facetBy: 'Facet by',\n annotationsX: 'Annotations X',\n annotationsY: 'Annotations Y'\n};\n\nfunction cleanDraggedId() {\n draggedId.value = null;\n}\n\nconst {\n draggedId,\n basketsData,\n freeMetaOptions,\n freeMandatoryOptions,\n chipInfo,\n dataStateValues,\n dataOptions\n} = useBaskets<HeatmapUIState, BasketIds, DataIds>(\n store,\n ['value'],\n ['filters', 'tabBy'],\n ['x', 'y', 'xGroupBy', 'yGroupBy', 'tooltipContent', 'facetBy', 'annotationsX', 'annotationsY'],\n BASKETS,\n BASKET_LABELS\n);\n\nconst readonlyValue = computed(() => store.value.readonlyInputs?.includes('value') ?? false);\n\nconst valueValue = computed({\n get: () => dataStateValues.value.value.value,\n set: (value: string | undefined) => {\n dataStateValues.value.value.value = value;\n }\n});\n</script>\n\n<template>\n <form-layout>\n <template v-slot:dataInputs>\n <div class=\"data-form-input-item\">\n <pl-dropdown\n label=\"Data source:\"\n clearable\n v-model=\"valueValue\"\n :options=\"dataOptions.value\"\n :disabled=\"readonlyValue\"\n :error=\"getErrorForPlDropdown('value', store.inputGuide.value)\"\n />\n </div>\n </template>\n <template v-slot:mandatoryOptions>\n <MandatoryOptionsList\n :options=\"freeMandatoryOptions\"\n :chipInfo=\"chipInfo\"\n @dragged-id-update=\"draggedId = $event\"\n />\n </template>\n <template v-slot:metadataOptions>\n <OptionsList\n :options=\"freeMetaOptions\"\n :chipInfo=\"chipInfo\"\n @dragged-id-update=\"draggedId = $event\"\n />\n </template>\n <template v-slot:chartVar>\n <div\n v-for=\"basketProp in basketsData\"\n :key=\"basketProp.id\"\n class=\"data-form-input-item\"\n >\n <DndBasket v-bind=\"basketProp\" v-on=\"basketProp.listeners\" />\n </div>\n </template>\n </form-layout>\n</template>\n"],"names":["store","useStore","BASKETS","BASKET_LABELS","draggedId","basketsData","freeMetaOptions","freeMandatoryOptions","chipInfo","dataStateValues","dataOptions","useBaskets","readonlyValue","computed","_a","valueValue","value","_createBlock","FormLayout","_createElementVNode","_hoisted_1","_createVNode","_unref","PlDropdown","$event","getErrorForPlDropdown","MandatoryOptionsList","_cache","OptionsList","_createElementBlock","_Fragment","_renderList","basketProp","DndBasket","_mergeProps","_toHandlers"],"mappings":";;;;;;;;;;;;AAYA,UAAMA,IAAQC,EAAA,GAKRC,IAAuB;AAAA,MAC3B;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IAAA,GAGIC,IAA2C;AAAA,MAC/C,SAAS;AAAA,MACT,GAAG;AAAA,MACH,GAAG;AAAA,MACH,UAAU;AAAA,MACV,UAAU;AAAA,MACV,gBAAgB;AAAA,MAChB,OAAO;AAAA,MACP,SAAS;AAAA,MACT,cAAc;AAAA,MACd,cAAc;AAAA,IAAA,GAOV;AAAA,MACJ,WAAAC;AAAA,MACA,aAAAC;AAAA,MACA,iBAAAC;AAAA,MACA,sBAAAC;AAAA,MACA,UAAAC;AAAA,MACA,iBAAAC;AAAA,MACA,aAAAC;AAAA,IAAA,IACEC;AAAA,MACFX;AAAA,MACA,CAAC,OAAO;AAAA,MACR,CAAC,WAAW,OAAO;AAAA,MACnB,CAAC,KAAK,KAAK,YAAY,YAAY,kBAAkB,WAAW,gBAAgB,cAAc;AAAA,MAC9FE;AAAA,MACAC;AAAA,IAAA,GAGIS,IAAgBC,EAAS,MAAA;;AAAM,eAAAC,IAAAd,EAAM,MAAM,mBAAZ,gBAAAc,EAA4B,SAAS,aAAY;AAAA,KAAK,GAErFC,IAAaF,EAAS;AAAA,MAC1B,KAAK,MAAMJ,EAAgB,MAAM,MAAM;AAAA,MACvC,KAAK,CAACO,MAA8B;AAClC,QAAAP,EAAgB,MAAM,MAAM,QAAQO;AAAA,MACtC;AAAA,IAAA,CACD;2BAICC,EAoCcC,GAAA,MAAA;AAAA,MAnCK,cACf,MASM;AAAA,QATNC,EASM,OATNC,GASM;AAAA,UARJC,EAOEC,EAAAC,CAAA,GAAA;AAAA,YANA,OAAM;AAAA,YACN,WAAA;AAAA,wBACSR,EAAA;AAAA,0DAAAA,EAAU,QAAAS;AAAA,YAClB,SAASF,EAAAZ,CAAA,EAAY;AAAA,YACrB,UAAUE,EAAA;AAAA,YACV,OAAOU,EAAAG,CAAA,EAAqB,SAAUH,KAAM,WAAW,KAAK;AAAA,UAAA;;;MAIlD,oBACf,MAIE;AAAA,QAJFD,EAIEK,GAAA;AAAA,UAHC,SAASJ,EAAAf,CAAA;AAAA,UACT,UAAUe,EAAAd,CAAA;AAAA,UACV,mBAAiBmB,EAAA,CAAA,MAAAA,EAAA,CAAA,IAAA,CAAAH,MAAEpB,EAAA,QAAYoB;AAAA,QAAA;;MAGnB,mBACf,MAIE;AAAA,QAJFH,EAIEO,GAAA;AAAA,UAHC,SAASN,EAAAhB,CAAA;AAAA,UACT,UAAUgB,EAAAd,CAAA;AAAA,UACV,mBAAiBmB,EAAA,CAAA,MAAAA,EAAA,CAAA,IAAA,CAAAH,MAAEpB,EAAA,QAAYoB;AAAA,QAAA;;MAGnB,YAEb,MAAiC;AAAA,gBADnCK,EAMMC,GAAA,MAAAC,EALiBT,EAAAjB,CAAA,GAAW,CAAzB2B,YADTH,EAMM,OAAA;AAAA,UAJH,KAAKG,EAAW;AAAA,UACjB,OAAM;AAAA,QAAA;UAENX,EAA6DY,GAA7DC,EAA6D,EAAA,SAAA,GAAA,GAA1CF,GAAYG,EAA2BH,EAAV,SAAS,CAAA,GAAA,MAAA,EAAA;AAAA,QAAA;;;;;;"}
1
+ {"version":3,"file":"HeatmapForm.vue.js","sources":["../../../src/forms/DataMappingForm/HeatmapForm.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport { useStore } from '../../store';\nimport { PlDropdown } from '@platforma-sdk/ui-vue';\nimport type { HeatmapUIState } from '@milaboratories/pf-plots';\nimport FormLayout from './Layout/FormLayout.vue';\nimport OptionsList from './Layout/OptionsList.vue';\nimport MandatoryOptionsList from './Layout/MandatoryOptions.vue';\nimport { computed } from 'vue';\nimport { getErrorForPlDropdown } from './utils';\nimport DndBasket from '../../components/DragAndDrop/DndBasket.vue';\nimport { useBaskets } from './useBaskets';\n\nconst store = useStore();\n\ntype BasketIds = Exclude<keyof HeatmapUIState['components'], 'value'>;\ntype DataIds = keyof HeatmapUIState['components'] & 'value';\n\nconst BASKETS: BasketIds[] = [\n 'filters',\n 'x',\n 'y',\n 'xGroupBy',\n 'yGroupBy',\n 'tooltipContent',\n 'tabBy',\n 'facetBy',\n 'annotationsX',\n 'annotationsY',\n];\n\nconst BASKET_LABELS: Record<BasketIds, string> = {\n filters: 'Filter',\n x: 'X',\n y: 'Y',\n xGroupBy: 'X group',\n yGroupBy: 'Y group',\n tooltipContent: 'Tooltip',\n tabBy: 'Tab by',\n facetBy: 'Facet by',\n annotationsX: 'Annotations X',\n annotationsY: 'Annotations Y',\n};\n\nconst {\n draggedId,\n basketsData,\n freeMetaOptions,\n freeMandatoryOptions,\n chipInfo,\n dataStateValues,\n dataOptions,\n} = useBaskets<HeatmapUIState, BasketIds, DataIds>(\n store,\n ['value'],\n ['filters', 'tabBy'],\n ['x', 'y', 'xGroupBy', 'yGroupBy', 'tooltipContent', 'facetBy', 'annotationsX', 'annotationsY'],\n BASKETS,\n BASKET_LABELS,\n);\n\nconst readonlyValue = computed(() => store.value.readonlyInputs?.includes('value') ?? false);\n\nconst valueValue = computed({\n get: () => dataStateValues.value.value.value,\n set: (value: string | undefined) => {\n dataStateValues.value.value.value = value;\n },\n});\n</script>\n\n<template>\n <FormLayout>\n <template #dataInputs>\n <div class=\"data-form-input-item\">\n <PlDropdown\n v-model=\"valueValue\"\n label=\"Data source:\"\n clearable\n :options=\"dataOptions.value\"\n :disabled=\"readonlyValue\"\n :error=\"getErrorForPlDropdown('value', store.inputGuide.value)\"\n />\n </div>\n </template>\n <template #mandatoryOptions>\n <MandatoryOptionsList\n :options=\"freeMandatoryOptions\"\n :chipInfo=\"chipInfo\"\n @dragged-id-update=\"draggedId = $event\"\n />\n </template>\n <template #metadataOptions>\n <OptionsList\n :options=\"freeMetaOptions\"\n :chipInfo=\"chipInfo\"\n @dragged-id-update=\"draggedId = $event\"\n />\n </template>\n <template #chartVar>\n <div\n v-for=\"basketProp in basketsData\"\n :key=\"basketProp.id\"\n class=\"data-form-input-item\"\n >\n <DndBasket v-bind=\"basketProp\" v-on=\"basketProp.listeners\" />\n </div>\n </template>\n </FormLayout>\n</template>\n"],"names":["store","useStore","BASKETS","BASKET_LABELS","draggedId","basketsData","freeMetaOptions","freeMandatoryOptions","chipInfo","dataStateValues","dataOptions","useBaskets","readonlyValue","computed","_a","valueValue","value","_createBlock","FormLayout","_createElementVNode","_hoisted_1","_createVNode","_unref","PlDropdown","$event","getErrorForPlDropdown","MandatoryOptionsList","_cache","OptionsList","_createElementBlock","_Fragment","_renderList","basketProp","DndBasket","_mergeProps","_toHandlers"],"mappings":";;;;;;;;;;;;AAYA,UAAMA,IAAQC,EAAA,GAKRC,IAAuB;AAAA,MAC3B;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IAAA,GAGIC,IAA2C;AAAA,MAC/C,SAAS;AAAA,MACT,GAAG;AAAA,MACH,GAAG;AAAA,MACH,UAAU;AAAA,MACV,UAAU;AAAA,MACV,gBAAgB;AAAA,MAChB,OAAO;AAAA,MACP,SAAS;AAAA,MACT,cAAc;AAAA,MACd,cAAc;AAAA,IAAA,GAGV;AAAA,MACJ,WAAAC;AAAA,MACA,aAAAC;AAAA,MACA,iBAAAC;AAAA,MACA,sBAAAC;AAAA,MACA,UAAAC;AAAA,MACA,iBAAAC;AAAA,MACA,aAAAC;AAAA,IAAA,IACEC;AAAA,MACFX;AAAA,MACA,CAAC,OAAO;AAAA,MACR,CAAC,WAAW,OAAO;AAAA,MACnB,CAAC,KAAK,KAAK,YAAY,YAAY,kBAAkB,WAAW,gBAAgB,cAAc;AAAA,MAC9FE;AAAA,MACAC;AAAA,IAAA,GAGIS,IAAgBC,EAAS,MAAA;;AAAM,eAAAC,IAAAd,EAAM,MAAM,mBAAZ,gBAAAc,EAA4B,SAAS,aAAY;AAAA,KAAK,GAErFC,IAAaF,EAAS;AAAA,MAC1B,KAAK,MAAMJ,EAAgB,MAAM,MAAM;AAAA,MACvC,KAAK,CAACO,MAA8B;AAClC,QAAAP,EAAgB,MAAM,MAAM,QAAQO;AAAA,MACtC;AAAA,IAAA,CACD;2BAICC,EAoCaC,GAAA,MAAA;AAAA,MAnCA,cACT,MASM;AAAA,QATNC,EASM,OATNC,GASM;AAAA,UARJC,EAOEC,EAAAC,CAAA,GAAA;AAAA,wBANSR,EAAA;AAAA,0DAAAA,EAAU,QAAAS;AAAA,YACnB,OAAM;AAAA,YACN,WAAA;AAAA,YACC,SAASF,EAAAZ,CAAA,EAAY;AAAA,YACrB,UAAUE,EAAA;AAAA,YACV,OAAOU,EAAAG,CAAA,EAAqB,SAAUH,KAAM,WAAW,KAAK;AAAA,UAAA;;;MAIxD,oBACT,MAIE;AAAA,QAJFD,EAIEK,GAAA;AAAA,UAHC,SAASJ,EAAAf,CAAA;AAAA,UACT,UAAUe,EAAAd,CAAA;AAAA,UACV,mBAAiBmB,EAAA,CAAA,MAAAA,EAAA,CAAA,IAAA,CAAAH,MAAEpB,EAAA,QAAYoB;AAAA,QAAA;;MAGzB,mBACT,MAIE;AAAA,QAJFH,EAIEO,GAAA;AAAA,UAHC,SAASN,EAAAhB,CAAA;AAAA,UACT,UAAUgB,EAAAd,CAAA;AAAA,UACV,mBAAiBmB,EAAA,CAAA,MAAAA,EAAA,CAAA,IAAA,CAAAH,MAAEpB,EAAA,QAAYoB;AAAA,QAAA;;MAGzB,YAEP,MAAiC;AAAA,gBADnCK,EAMMC,GAAA,MAAAC,EALiBT,EAAAjB,CAAA,GAAW,CAAzB2B,YADTH,EAMM,OAAA;AAAA,UAJH,KAAKG,EAAW;AAAA,UACjB,OAAM;AAAA,QAAA;UAENX,EAA6DY,GAA7DC,EAA6D,EAAA,SAAA,GAAA,GAA1CF,GAAYG,EAA2BH,EAAV,SAAS,CAAA,GAAA,MAAA,EAAA;AAAA,QAAA;;;;;;"}