@milaboratories/graph-maker 1.1.177 → 1.1.179

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 (210) 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.d.ts +3 -2
  61. package/dist/components/SettingsTabs/index.vue.js +16 -15
  62. package/dist/components/SettingsTabs/index.vue.js.map +1 -1
  63. package/dist/components/Zoom/ZoomInput.vue.js +11 -11
  64. package/dist/components/Zoom/ZoomInput.vue.js.map +1 -1
  65. package/dist/components/Zoom/index.vue.js.map +1 -1
  66. package/dist/composition/useComponent.js.map +1 -1
  67. package/dist/constantsAesthetic.js.map +1 -1
  68. package/dist/constantsCommon.d.ts +3 -1
  69. package/dist/constantsCommon.js +5 -5
  70. package/dist/constantsCommon.js.map +1 -1
  71. package/dist/dataBindAes.js +4 -2
  72. package/dist/dataBindAes.js.map +1 -1
  73. package/dist/forms/AnnotationsForm.vue.d.ts +17 -0
  74. package/dist/forms/AnnotationsForm.vue.js +16 -0
  75. package/dist/forms/AnnotationsForm.vue.js.map +1 -0
  76. package/dist/forms/AxesSettingsForm/BubbleAxesSettingsForm.vue.js +35 -35
  77. package/dist/forms/AxesSettingsForm/BubbleAxesSettingsForm.vue.js.map +1 -1
  78. package/dist/forms/AxesSettingsForm/DiscreteAxesSettingsForm.vue.js +49 -47
  79. package/dist/forms/AxesSettingsForm/DiscreteAxesSettingsForm.vue.js.map +1 -1
  80. package/dist/forms/AxesSettingsForm/HeatmapAxesSettingsForm.vue.js +53 -53
  81. package/dist/forms/AxesSettingsForm/HeatmapAxesSettingsForm.vue.js.map +1 -1
  82. package/dist/forms/AxesSettingsForm/HistogramAxesSettingsForm.vue.js +37 -37
  83. package/dist/forms/AxesSettingsForm/HistogramAxesSettingsForm.vue.js.map +1 -1
  84. package/dist/forms/AxesSettingsForm/ScatterplotAxesSettingsForm.vue.js +38 -38
  85. package/dist/forms/AxesSettingsForm/ScatterplotAxesSettingsForm.vue.js.map +1 -1
  86. package/dist/forms/AxesSettingsForm/index.vue.js.map +1 -1
  87. package/dist/forms/DataMappingForm/BubbleForm.vue.js +4 -4
  88. package/dist/forms/DataMappingForm/BubbleForm.vue.js.map +1 -1
  89. package/dist/forms/DataMappingForm/DendroForm.vue.js +1 -1
  90. package/dist/forms/DataMappingForm/DendroForm.vue.js.map +1 -1
  91. package/dist/forms/DataMappingForm/DiscreteForm.vue.js.map +1 -1
  92. package/dist/forms/DataMappingForm/HeatmapForm.vue.js +2 -2
  93. package/dist/forms/DataMappingForm/HeatmapForm.vue.js.map +1 -1
  94. package/dist/forms/DataMappingForm/HistogramForm.vue.js.map +1 -1
  95. package/dist/forms/DataMappingForm/Layout/FormLayout.vue.js.map +1 -1
  96. package/dist/forms/DataMappingForm/Layout/MandatoryOptions.vue.js.map +1 -1
  97. package/dist/forms/DataMappingForm/Layout/OptionsList.vue.js.map +1 -1
  98. package/dist/forms/DataMappingForm/ScatterplotForm.vue.js +4 -4
  99. package/dist/forms/DataMappingForm/ScatterplotForm.vue.js.map +1 -1
  100. package/dist/forms/DataMappingForm/ScatterplotUmapForm.vue.js +4 -4
  101. package/dist/forms/DataMappingForm/ScatterplotUmapForm.vue.js.map +1 -1
  102. package/dist/forms/DataMappingForm/index.vue.js.map +1 -1
  103. package/dist/forms/DataMappingForm/useBaskets.js.map +1 -1
  104. package/dist/forms/DataMappingForm/utils.d.ts +1 -1
  105. package/dist/forms/DataMappingForm/utils.js +34 -34
  106. package/dist/forms/DataMappingForm/utils.js.map +1 -1
  107. package/dist/forms/LayersForm/AesSelector.vue.js +18 -25
  108. package/dist/forms/LayersForm/AesSelector.vue.js.map +1 -1
  109. package/dist/forms/LayersForm/DotSizeSelector.vue.d.ts +2 -0
  110. package/dist/forms/LayersForm/DotSizeSelector.vue.js +23 -23
  111. package/dist/forms/LayersForm/DotSizeSelector.vue.js.map +1 -1
  112. package/dist/forms/LayersForm/Layer/Bubble.vue.js +32 -34
  113. package/dist/forms/LayersForm/Layer/Bubble.vue.js.map +1 -1
  114. package/dist/forms/LayersForm/Layer/Dendro.vue.js +6 -6
  115. package/dist/forms/LayersForm/Layer/Dendro.vue.js.map +1 -1
  116. package/dist/forms/LayersForm/Layer/discrete/Bar.vue.js +6 -6
  117. package/dist/forms/LayersForm/Layer/discrete/Bar.vue.js.map +1 -1
  118. package/dist/forms/LayersForm/Layer/discrete/BinnedDots.vue.js +3 -3
  119. package/dist/forms/LayersForm/Layer/discrete/BinnedDots.vue.js.map +1 -1
  120. package/dist/forms/LayersForm/Layer/discrete/Boxplot.vue.js +3 -3
  121. package/dist/forms/LayersForm/Layer/discrete/Boxplot.vue.js.map +1 -1
  122. package/dist/forms/LayersForm/Layer/discrete/Errorbar.vue.js +9 -9
  123. package/dist/forms/LayersForm/Layer/discrete/Errorbar.vue.js.map +1 -1
  124. package/dist/forms/LayersForm/Layer/discrete/JitteredDots.vue.js +3 -3
  125. package/dist/forms/LayersForm/Layer/discrete/JitteredDots.vue.js.map +1 -1
  126. package/dist/forms/LayersForm/Layer/discrete/Line.vue.js +8 -8
  127. package/dist/forms/LayersForm/Layer/discrete/Line.vue.js.map +1 -1
  128. package/dist/forms/LayersForm/Layer/discrete/Logo.vue.js +3 -3
  129. package/dist/forms/LayersForm/Layer/discrete/Logo.vue.js.map +1 -1
  130. package/dist/forms/LayersForm/Layer/discrete/Sina.vue.js +3 -3
  131. package/dist/forms/LayersForm/Layer/discrete/Sina.vue.js.map +1 -1
  132. package/dist/forms/LayersForm/Layer/discrete/StackedArea.vue.js +9 -9
  133. package/dist/forms/LayersForm/Layer/discrete/StackedArea.vue.js.map +1 -1
  134. package/dist/forms/LayersForm/Layer/discrete/StackedBar.vue.js +6 -6
  135. package/dist/forms/LayersForm/Layer/discrete/StackedBar.vue.js.map +1 -1
  136. package/dist/forms/LayersForm/Layer/discrete/Violin.vue.js +3 -3
  137. package/dist/forms/LayersForm/Layer/discrete/Violin.vue.js.map +1 -1
  138. package/dist/forms/LayersForm/Layer/discrete/utils.js.map +1 -1
  139. package/dist/forms/LayersForm/Layer/heatmap/Heatmap.vue.js +23 -23
  140. package/dist/forms/LayersForm/Layer/heatmap/Heatmap.vue.js.map +1 -1
  141. package/dist/forms/LayersForm/Layer/heatmap/HeatmapAnnotations.vue.js +6 -6
  142. package/dist/forms/LayersForm/Layer/heatmap/HeatmapAnnotations.vue.js.map +1 -1
  143. package/dist/forms/LayersForm/Layer/heatmap/HeatmapClustered.vue.js +28 -28
  144. package/dist/forms/LayersForm/Layer/heatmap/HeatmapClustered.vue.js.map +1 -1
  145. package/dist/forms/LayersForm/Layer/histogram/Bins.vue.js +3 -3
  146. package/dist/forms/LayersForm/Layer/histogram/Bins.vue.js.map +1 -1
  147. package/dist/forms/LayersForm/Layer/scatterplot/Curve.vue.js.map +1 -1
  148. package/dist/forms/LayersForm/Layer/scatterplot/Scatter.vue.js.map +1 -1
  149. package/dist/forms/LayersForm/Layer/scatterplot-umap/Scatter.vue.js +2 -2
  150. package/dist/forms/LayersForm/Layer/scatterplot-umap/Scatter.vue.js.map +1 -1
  151. package/dist/forms/LayersForm/index.vue.js +56 -52
  152. package/dist/forms/LayersForm/index.vue.js.map +1 -1
  153. package/dist/forms/LogForm.vue.js.map +1 -1
  154. package/dist/forms/SettingsForm.vue.js.map +1 -1
  155. package/dist/forms/StatisticsForm/DiscreteStatisticsForm.vue.js +14 -14
  156. package/dist/forms/StatisticsForm/DiscreteStatisticsForm.vue.js.map +1 -1
  157. package/dist/forms/StatisticsForm/ScatterplotStatisticsForm.vue.js.map +1 -1
  158. package/dist/forms/StatisticsForm/index.vue.js.map +1 -1
  159. package/dist/forms/TemplateForm.vue.js +59 -52
  160. package/dist/forms/TemplateForm.vue.js.map +1 -1
  161. package/dist/forms/index.d.ts +21 -0
  162. package/dist/forms/index.js +53 -46
  163. package/dist/forms/index.js.map +1 -1
  164. package/dist/icons/Annotation.vue.d.ts +2 -0
  165. package/dist/icons/Annotation.vue.js +12 -0
  166. package/dist/icons/Annotation.vue.js.map +1 -0
  167. package/dist/icons/Annotation.vue2.js +5 -0
  168. package/dist/icons/Annotation.vue2.js.map +1 -0
  169. package/dist/icons/BinnedDotsIcon.vue.js.map +1 -1
  170. package/dist/icons/BoxplotAndBinnedIcon.vue.js.map +1 -1
  171. package/dist/icons/BoxplotAndJitterIcon.vue.js.map +1 -1
  172. package/dist/icons/BoxplotIcon.vue.js.map +1 -1
  173. package/dist/icons/EditIcon.vue.js.map +1 -1
  174. package/dist/icons/FrameLeft.vue.js.map +1 -1
  175. package/dist/icons/HeatmapAnnotation.vue.js.map +1 -1
  176. package/dist/icons/LineAndErrorbarIcon.vue.js.map +1 -1
  177. package/dist/icons/LogoIcon.vue.js.map +1 -1
  178. package/dist/icons/PlusIcon.vue.js.map +1 -1
  179. package/dist/icons/SinaIcon.vue.js.map +1 -1
  180. package/dist/icons/StackedAreaIcon.vue.js.map +1 -1
  181. package/dist/index.vue.d.ts +1 -0
  182. package/dist/index.vue.js +148 -146
  183. package/dist/index.vue.js.map +1 -1
  184. package/dist/store.d.ts +1 -1
  185. package/dist/store.js +2 -2
  186. package/dist/store.js.map +1 -1
  187. package/dist/types.d.ts +1 -1
  188. package/dist/utils/addFixedOptionsToState.js.map +1 -1
  189. package/dist/utils/calculateDiscreteGroups.js.map +1 -1
  190. package/dist/utils/createChartSettingsForRender/composeBubbleSettings.js.map +1 -1
  191. package/dist/utils/createChartSettingsForRender/composeChartSettings.js.map +1 -1
  192. package/dist/utils/createChartSettingsForRender/composeDendroSettings.js.map +1 -1
  193. package/dist/utils/createChartSettingsForRender/composeDiscreteSettings.js +1 -1
  194. package/dist/utils/createChartSettingsForRender/composeDiscreteSettings.js.map +1 -1
  195. package/dist/utils/createChartSettingsForRender/composeHeatmapSettings.js.map +1 -1
  196. package/dist/utils/createChartSettingsForRender/composeHistogramSettings.js.map +1 -1
  197. package/dist/utils/createChartSettingsForRender/composeScatterplotSettings.js.map +1 -1
  198. package/dist/utils/createChartSettingsForRender/composeScatterplotUmapSettings.js +1 -1
  199. package/dist/utils/createChartSettingsForRender/composeScatterplotUmapSettings.js.map +1 -1
  200. package/dist/utils/createChartSettingsForRender/getAxesDataFromForms.js +24 -24
  201. package/dist/utils/createChartSettingsForRender/getAxesDataFromForms.js.map +1 -1
  202. package/dist/utils/createChartSettingsForRender/getLayersDataFromForms.js.map +1 -1
  203. package/dist/utils/getPopupHeightForFixedAesList.js.map +1 -1
  204. package/dist/utils/getStatisticsOptions.js.map +1 -1
  205. package/dist/utils/getUsedAesInMapping.js +1 -1
  206. package/dist/utils/getUsedAesInMapping.js.map +1 -1
  207. package/dist/utils/loadDefaultSources.js.map +1 -1
  208. package/dist/utils/loadUniqueValuesToSave.js.map +1 -1
  209. package/dist/utils/saveToFile.js.map +1 -1
  210. package/package.json +5 -3
@@ -85,10 +85,10 @@ const n = "line", K = /* @__PURE__ */ A({
85
85
  }, ["stop"]))
86
86
  }, [
87
87
  i(p(F), {
88
- label: "Point value",
89
- options: U,
90
88
  modelValue: o.value.pointsValues,
91
- "onUpdate:modelValue": e[4] || (e[4] = (t) => o.value.pointsValues = t)
89
+ "onUpdate:modelValue": e[4] || (e[4] = (t) => o.value.pointsValues = t),
90
+ label: "Point value",
91
+ options: U
92
92
  }, null, 8, ["modelValue"])
93
93
  ]),
94
94
  v("div", {
@@ -97,20 +97,20 @@ const n = "line", K = /* @__PURE__ */ A({
97
97
  }, ["stop"]))
98
98
  }, [
99
99
  i(p(B), {
100
- label: "Empty group value",
101
100
  modelValue: o.value.emptyGroupValue,
102
- "onUpdate:modelValue": e[6] || (e[6] = (t) => o.value.emptyGroupValue = t)
101
+ "onUpdate:modelValue": e[6] || (e[6] = (t) => o.value.emptyGroupValue = t),
102
+ label: "Empty group value"
103
103
  }, null, 8, ["modelValue"])
104
104
  ]),
105
105
  i(p(G), {
106
+ modelValue: y.value,
107
+ "onUpdate:modelValue": e[8] || (e[8] = (t) => y.value = t),
106
108
  label: "Opacity",
107
109
  min: 0,
108
110
  max: 100,
109
111
  step: 1,
110
112
  breakpoints: !1,
111
- measure: "%",
112
- modelValue: y.value,
113
- "onUpdate:modelValue": e[8] || (e[8] = (t) => y.value = t)
113
+ measure: "%"
114
114
  }, null, 8, ["modelValue"])
115
115
  ], 64));
116
116
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Line.vue.js","sources":["../../../../../src/forms/LayersForm/Layer/discrete/Line.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport { useStore } from '../../../../store';\nimport { PlDropdown, Slider, PlNumberField } from '@platforma-sdk/ui-vue';\nimport { computed } from 'vue';\nimport type {\n AesOption,\n DotShape\n} from '../../../../components/AesSettings/types';\nimport type { AestheticMappingCategorical } from '../../../../dataBindAes';\nimport { useDefaultAes } from './utils';\n\nimport { DiscreteUIState } from '@milaboratories/pf-plots';\nimport { DEFAULT_BLACK } from '../../../../constantsAesthetic';\nimport AesSelector from '../../AesSelector.vue';\nimport { LineType } from '../../../../components/AesSettings/types';\n\nconst store = useStore();\nconst layer = 'line';\nconst settings = computed(() => store.value.reactive.layersSettings[layer]);\nconst optionsState = computed(\n () => store.value.reactive.optionsState as DiscreteUIState\n);\nconst lineColor = computed(() =>\n useDefaultAes(\n settings.value.lineColor,\n optionsState.value,\n DEFAULT_BLACK,\n true\n )\n);\nconst dotFill = computed(() => useDefaultAes(\n settings.value.dotFill,\n optionsState.value,\n DEFAULT_BLACK,\n true\n )\n);\nconst lineType = computed(() => settings.value.lineType);\n\nfunction onUpdate(\n value: string | AestheticMappingCategorical,\n colorOption: AesOption,\n field: 'lineColor' | 'dotFill'\n) {\n if (colorOption.type === 'dataCategorical') {\n store.value.reactive.layersSettings[layer][field] = { type: colorOption.inputName };\n } else {\n store.value.reactive.layersSettings[layer][field] = value;\n }\n if (colorOption.type === 'dataCategorical' && typeof value !== 'string') {\n store.value.reactive.dataBindAes[colorOption.selectedSource] = value;\n }\n}\n\nfunction onUpdateDot(\n value: DotShape | AestheticMappingCategorical,\n colorOption: AesOption,\n field: 'dotShape'\n) {\n if (colorOption.type === 'dataCategorical') {\n store.value.reactive.layersSettings[layer][field] = { type: colorOption.inputName };\n } else {\n store.value.reactive.layersSettings[layer][field] = value;\n }\n if (colorOption.type === 'dataCategorical' && typeof value === 'object') {\n store.value.reactive.dataBindAes[colorOption.selectedSource] = value;\n }\n}\n\nfunction onUpdateLineType(\n value: LineType | AestheticMappingCategorical,\n colorOption: AesOption,\n field: 'lineType'\n) {\n if (colorOption.type === 'dataCategorical') {\n store.value.reactive.layersSettings[layer][field] = { type: colorOption.inputName };\n } else {\n store.value.reactive.layersSettings[layer][field] = value;\n }\n if (colorOption.type === 'dataCategorical' && typeof value === 'object') {\n store.value.reactive.dataBindAes[colorOption.selectedSource] = value;\n }\n}\n\nconst POINT_OPTIONS: { text: string, value: string }[] = [\n { text: 'Mean', value: 'mean' },\n { text: 'Median', value: 'median' }\n];\n\nconst opacity = computed({\n get: () => settings.value.opacity * 100,\n set: (newValue: number) => {\n settings.value.opacity = newValue / 100;\n }\n});\n</script>\n\n<template>\n <aes-selector\n label=\"Stroke color\"\n form-title=\"Stroke Color Settings\"\n form-back-title=\"Layers\"\n type=\"stroke\"\n :selected=\"lineColor\"\n :possible-aes-source-inputs=\"['secondaryGrouping']\"\n @aes-update=\"(v, c) => onUpdate(v, c, 'lineColor')\"\n />\n <aes-selector\n label=\"Line Type\"\n form-title=\"Line Type Settings\"\n form-back-title=\"Layers\"\n type=\"lineType\"\n :possible-aes-source-inputs=\"['secondaryGrouping']\"\n :selected=\"lineType\"\n @aes-update=\"(v, c) => onUpdateLineType(v, c, 'lineType')\"\n />\n <aes-selector\n label=\"Dot fill\"\n form-title=\"Dot Fill Settings\"\n form-back-title=\"Layers\"\n type=\"fill\"\n :selected=\"dotFill\"\n :possible-aes-source-inputs=\"['secondaryGrouping']\"\n @aes-update=\"(v, c) => onUpdate(v, c, 'dotFill')\"\n />\n <aes-selector\n label=\"Dot shape\"\n form-title=\"Dot Shape Settings\"\n form-back-title=\"Layers\"\n type=\"dotShape\"\n :selected=\"settings.dotShape\"\n :possible-aes-source-inputs=\"['secondaryGrouping']\"\n @aes-update=\"(v, c) => onUpdateDot(v, c, 'dotShape')\"\n />\n <div class=\"input-item\" @click.stop>\n <pl-dropdown\n label=\"Point value\"\n :options=\"POINT_OPTIONS\"\n v-model=\"settings.pointsValues\"\n />\n </div>\n <div class=\"input-item\" @click.stop>\n <PlNumberField\n label=\"Empty group value\"\n v-model=\"settings.emptyGroupValue\"\n />\n </div>\n <Slider\n label=\"Opacity\"\n :min=\"0\"\n :max=\"100\"\n :step=\"1\"\n :breakpoints=\"false\"\n measure=\"%\"\n v-model=\"opacity\"\n />\n</template>\n"],"names":["layer","store","useStore","settings","computed","optionsState","lineColor","useDefaultAes","DEFAULT_BLACK","dotFill","lineType","onUpdate","value","colorOption","field","onUpdateDot","onUpdateLineType","POINT_OPTIONS","opacity","newValue","_createVNode","AesSelector","_cache","v","c","_createElementVNode","_unref","PlDropdown","$event","PlNumberField","Slider"],"mappings":"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"}
1
+ {"version":3,"file":"Line.vue.js","sources":["../../../../../src/forms/LayersForm/Layer/discrete/Line.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport { useStore } from '../../../../store';\nimport { PlDropdown, Slider, PlNumberField } from '@platforma-sdk/ui-vue';\nimport { computed } from 'vue';\nimport type {\n AesOption,\n DotShape,\n} from '../../../../components/AesSettings/types';\nimport type { AestheticMappingCategorical } from '../../../../dataBindAes';\nimport { useDefaultAes } from './utils';\n\nimport type { DiscreteUIState } from '@milaboratories/pf-plots';\nimport { DEFAULT_BLACK } from '../../../../constantsAesthetic';\nimport AesSelector from '../../AesSelector.vue';\nimport type { LineType } from '../../../../components/AesSettings/types';\n\nconst store = useStore();\nconst layer = 'line';\nconst settings = computed(() => store.value.reactive.layersSettings[layer]);\nconst optionsState = computed(\n () => store.value.reactive.optionsState as DiscreteUIState,\n);\nconst lineColor = computed(() =>\n useDefaultAes(\n settings.value.lineColor,\n optionsState.value,\n DEFAULT_BLACK,\n true,\n ),\n);\nconst dotFill = computed(() => useDefaultAes(\n settings.value.dotFill,\n optionsState.value,\n DEFAULT_BLACK,\n true,\n),\n);\nconst lineType = computed(() => settings.value.lineType);\n\nfunction onUpdate(\n value: string | AestheticMappingCategorical,\n colorOption: AesOption,\n field: 'lineColor' | 'dotFill',\n) {\n if (colorOption.type === 'dataCategorical') {\n store.value.reactive.layersSettings[layer][field] = { type: colorOption.inputName };\n } else {\n store.value.reactive.layersSettings[layer][field] = value;\n }\n if (colorOption.type === 'dataCategorical' && typeof value !== 'string') {\n store.value.reactive.dataBindAes[colorOption.selectedSource] = value;\n }\n}\n\nfunction onUpdateDot(\n value: DotShape | AestheticMappingCategorical,\n colorOption: AesOption,\n field: 'dotShape',\n) {\n if (colorOption.type === 'dataCategorical') {\n store.value.reactive.layersSettings[layer][field] = { type: colorOption.inputName };\n } else {\n store.value.reactive.layersSettings[layer][field] = value;\n }\n if (colorOption.type === 'dataCategorical' && typeof value === 'object') {\n store.value.reactive.dataBindAes[colorOption.selectedSource] = value;\n }\n}\n\nfunction onUpdateLineType(\n value: LineType | AestheticMappingCategorical,\n colorOption: AesOption,\n field: 'lineType',\n) {\n if (colorOption.type === 'dataCategorical') {\n store.value.reactive.layersSettings[layer][field] = { type: colorOption.inputName };\n } else {\n store.value.reactive.layersSettings[layer][field] = value;\n }\n if (colorOption.type === 'dataCategorical' && typeof value === 'object') {\n store.value.reactive.dataBindAes[colorOption.selectedSource] = value;\n }\n}\n\nconst POINT_OPTIONS: { text: string; value: string }[] = [\n { text: 'Mean', value: 'mean' },\n { text: 'Median', value: 'median' },\n];\n\nconst opacity = computed({\n get: () => settings.value.opacity * 100,\n set: (newValue: number) => {\n settings.value.opacity = newValue / 100;\n },\n});\n</script>\n\n<template>\n <AesSelector\n label=\"Stroke color\"\n form-title=\"Stroke Color Settings\"\n form-back-title=\"Layers\"\n type=\"stroke\"\n :selected=\"lineColor\"\n :possible-aes-source-inputs=\"['secondaryGrouping']\"\n @aes-update=\"(v, c) => onUpdate(v, c, 'lineColor')\"\n />\n <AesSelector\n label=\"Line Type\"\n form-title=\"Line Type Settings\"\n form-back-title=\"Layers\"\n type=\"lineType\"\n :possible-aes-source-inputs=\"['secondaryGrouping']\"\n :selected=\"lineType\"\n @aes-update=\"(v, c) => onUpdateLineType(v, c, 'lineType')\"\n />\n <AesSelector\n label=\"Dot fill\"\n form-title=\"Dot Fill Settings\"\n form-back-title=\"Layers\"\n type=\"fill\"\n :selected=\"dotFill\"\n :possible-aes-source-inputs=\"['secondaryGrouping']\"\n @aes-update=\"(v, c) => onUpdate(v, c, 'dotFill')\"\n />\n <AesSelector\n label=\"Dot shape\"\n form-title=\"Dot Shape Settings\"\n form-back-title=\"Layers\"\n type=\"dotShape\"\n :selected=\"settings.dotShape\"\n :possible-aes-source-inputs=\"['secondaryGrouping']\"\n @aes-update=\"(v, c) => onUpdateDot(v, c, 'dotShape')\"\n />\n <div class=\"input-item\" @click.stop>\n <PlDropdown\n v-model=\"settings.pointsValues\"\n label=\"Point value\"\n :options=\"POINT_OPTIONS\"\n />\n </div>\n <div class=\"input-item\" @click.stop>\n <PlNumberField\n v-model=\"settings.emptyGroupValue\"\n label=\"Empty group value\"\n />\n </div>\n <Slider\n v-model=\"opacity\"\n label=\"Opacity\"\n :min=\"0\"\n :max=\"100\"\n :step=\"1\"\n :breakpoints=\"false\"\n measure=\"%\"\n />\n</template>\n"],"names":["layer","store","useStore","settings","computed","optionsState","lineColor","useDefaultAes","DEFAULT_BLACK","dotFill","lineType","onUpdate","value","colorOption","field","onUpdateDot","onUpdateLineType","POINT_OPTIONS","opacity","newValue","_createVNode","AesSelector","_cache","v","c","_createElementVNode","_unref","PlDropdown","$event","PlNumberField","Slider"],"mappings":"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"}
@@ -12,14 +12,14 @@ const g = { class: "checkbox-item" }, y = "logo", z = /* @__PURE__ */ i({
12
12
  });
13
13
  return (a, e) => (d(), p(c, null, [
14
14
  r(s(f), {
15
+ modelValue: t.value,
16
+ "onUpdate:modelValue": e[0] || (e[0] = (l) => t.value = l),
15
17
  label: "Opacity",
16
18
  min: 0,
17
19
  max: 100,
18
20
  step: 1,
19
21
  breakpoints: !1,
20
- measure: "%",
21
- modelValue: t.value,
22
- "onUpdate:modelValue": e[0] || (e[0] = (l) => t.value = l)
22
+ measure: "%"
23
23
  }, null, 8, ["modelValue"]),
24
24
  m("div", g, [
25
25
  r(s(V), {
@@ -1 +1 @@
1
- {"version":3,"file":"Logo.vue.js","sources":["../../../../../src/forms/LayersForm/Layer/discrete/Logo.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport { useStore } from '../../../../store';\nimport { computed } from \"vue\";\nimport { PlCheckbox, Slider } from '@platforma-sdk/ui-vue';\n\nconst store = useStore();\nconst layer = \"logo\";\nconst settings = computed(() => store.value.reactive.layersSettings[layer]);\n\nconst opacity = computed({\n get: () => settings.value.opacity * 100,\n set: (newValue: number) => {\n settings.value.opacity = newValue / 100;\n }\n})\n</script>\n\n<template>\n <Slider\n label=\"Opacity\"\n :min=\"0\"\n :max=\"100\"\n :step=\"1\"\n :breakpoints=\"false\"\n measure=\"%\"\n v-model=\"opacity\"\n />\n <div class=\"checkbox-item\">\n <pl-checkbox v-model=\"settings.normalize\" />\n <span>Normalize</span>\n </div>\n</template>\n"],"names":["layer","store","useStore","settings","computed","opacity","newValue","_createVNode","_unref","Slider","$event","_createElementVNode","_hoisted_1","PlCheckbox","_cache"],"mappings":";;;sCAMMA,IAAQ;;;AADd,UAAMC,IAAQC,EAAA,GAERC,IAAWC,EAAS,MAAMH,EAAM,MAAM,SAAS,eAAeD,CAAK,CAAC,GAEpEK,IAAUD,EAAS;AAAA,MACvB,KAAK,MAAMD,EAAS,MAAM,UAAU;AAAA,MACpC,KAAK,CAACG,MAAqB;AACzB,QAAAH,EAAS,MAAM,UAAUG,IAAW;AAAA,MACtC;AAAA,IAAA,CACD;;MAICC,EAQEC,EAAAC,CAAA,GAAA;AAAA,QAPE,OAAM;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,MAAM;AAAA,QACN,aAAa;AAAA,QACd,SAAQ;AAAA,oBACCJ,EAAA;AAAA,sDAAAA,EAAO,QAAAK;AAAA,MAAA;MAEpBC,EAGM,OAHNC,GAGM;AAAA,QAFJL,EAA4CC,EAAAK,CAAA,GAAA;AAAA,UAAtB,YAAAV,EAAA,MAAS;AAAA,UAAT,uBAAAW,EAAA,CAAA,MAAAA,EAAA,CAAA,IAAA,CAAAJ,MAAAP,EAAA,MAAS,YAASO;AAAA,QAAA;QACxCI,EAAA,CAAA,MAAAA,EAAA,CAAA,IAAAH,EAAsB,cAAhB,aAAS,EAAA;AAAA,MAAA;;;;"}
1
+ {"version":3,"file":"Logo.vue.js","sources":["../../../../../src/forms/LayersForm/Layer/discrete/Logo.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport { useStore } from '../../../../store';\nimport { computed } from 'vue';\nimport { PlCheckbox, Slider } from '@platforma-sdk/ui-vue';\n\nconst store = useStore();\nconst layer = 'logo';\nconst settings = computed(() => store.value.reactive.layersSettings[layer]);\n\nconst opacity = computed({\n get: () => settings.value.opacity * 100,\n set: (newValue: number) => {\n settings.value.opacity = newValue / 100;\n },\n});\n</script>\n\n<template>\n <Slider\n v-model=\"opacity\"\n label=\"Opacity\"\n :min=\"0\"\n :max=\"100\"\n :step=\"1\"\n :breakpoints=\"false\"\n measure=\"%\"\n />\n <div class=\"checkbox-item\">\n <PlCheckbox v-model=\"settings.normalize\" />\n <span>Normalize</span>\n </div>\n</template>\n"],"names":["layer","store","useStore","settings","computed","opacity","newValue","_createVNode","_unref","Slider","$event","_createElementVNode","_hoisted_1","PlCheckbox","_cache"],"mappings":";;;sCAMMA,IAAQ;;;AADd,UAAMC,IAAQC,EAAA,GAERC,IAAWC,EAAS,MAAMH,EAAM,MAAM,SAAS,eAAeD,CAAK,CAAC,GAEpEK,IAAUD,EAAS;AAAA,MACvB,KAAK,MAAMD,EAAS,MAAM,UAAU;AAAA,MACpC,KAAK,CAACG,MAAqB;AACzB,QAAAH,EAAS,MAAM,UAAUG,IAAW;AAAA,MACtC;AAAA,IAAA,CACD;;MAICC,EAQEC,EAAAC,CAAA,GAAA;AAAA,oBAPSJ,EAAA;AAAA,sDAAAA,EAAO,QAAAK;AAAA,QAChB,OAAM;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,MAAM;AAAA,QACN,aAAa;AAAA,QACd,SAAQ;AAAA,MAAA;MAEVC,EAGM,OAHNC,GAGM;AAAA,QAFJL,EAA2CC,EAAAK,CAAA,GAAA;AAAA,UAAtB,YAAAV,EAAA,MAAS;AAAA,UAAT,uBAAAW,EAAA,CAAA,MAAAA,EAAA,CAAA,IAAA,CAAAJ,MAAAP,EAAA,MAAS,YAASO;AAAA,QAAA;QACvCI,EAAA,CAAA,MAAAA,EAAA,CAAA,IAAAH,EAAsB,cAAhB,aAAS,EAAA;AAAA,MAAA;;;;"}
@@ -46,14 +46,14 @@ const o = "sina", N = /* @__PURE__ */ y({
46
46
  onAesUpdate: e[1] || (e[1] = (t, r) => f(t, r, "dotShape"))
47
47
  }, null, 8, ["selected"]),
48
48
  n(b(U), {
49
+ modelValue: p.value,
50
+ "onUpdate:modelValue": e[2] || (e[2] = (t) => p.value = t),
49
51
  label: "Opacity",
50
52
  min: 0,
51
53
  max: 100,
52
54
  step: 1,
53
55
  breakpoints: !1,
54
- measure: "%",
55
- modelValue: p.value,
56
- "onUpdate:modelValue": e[2] || (e[2] = (t) => p.value = t)
56
+ measure: "%"
57
57
  }, null, 8, ["modelValue"])
58
58
  ], 64));
59
59
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Sina.vue.js","sources":["../../../../../src/forms/LayersForm/Layer/discrete/Sina.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport { useStore } from '../../../../store';\nimport { computed } from \"vue\";\nimport type {\n AesOption,\n DotShape,\n} from '../../../../components/AesSettings/types';\nimport type { AestheticMappingCategorical } from '../../../../dataBindAes';\nimport { useDefaultAes } from './utils';\nimport { DiscreteUIState } from \"@milaboratories/pf-plots\";\nimport { DEFAULT_BLACK } from '../../../../constantsAesthetic';\nimport AesSelector from '../../AesSelector.vue';\nimport {Slider} from \"@platforma-sdk/ui-vue\";\n\nconst store = useStore();\nconst layer = \"sina\";\nconst settings = computed(() => store.value.reactive.layersSettings[layer]);\nconst optionsState = computed(\n () => store.value.reactive.optionsState as DiscreteUIState,\n);\n\nconst dotFill = computed(() =>\n useDefaultAes(settings.value.dotFill, optionsState.value, DEFAULT_BLACK),\n);\n\nfunction onUpdate(\n value: string | AestheticMappingCategorical,\n colorOption: AesOption,\n field: \"dotFill\",\n) {\n if (colorOption.type === \"dataCategorical\") {\n store.value.reactive.layersSettings[layer][field] = {\n type: colorOption.inputName,\n };\n } else {\n store.value.reactive.layersSettings[layer][field] = value;\n }\n if (colorOption.type === \"dataCategorical\" && typeof value !== \"string\") {\n store.value.reactive.dataBindAes[colorOption.selectedSource] = value;\n }\n}\n\nfunction onUpdateDot(\n value: DotShape | AestheticMappingCategorical,\n colorOption: AesOption,\n field: \"dotShape\",\n) {\n if (colorOption.type === \"dataCategorical\") {\n store.value.reactive.layersSettings[layer][field] = {\n type: colorOption.inputName,\n };\n } else {\n store.value.reactive.layersSettings[layer][field] = value;\n }\n if (colorOption.type === \"dataCategorical\" && typeof value === \"object\") {\n store.value.reactive.dataBindAes[colorOption.selectedSource] = value;\n }\n}\n\nconst opacity = computed({\n get: () => settings.value.opacity * 100,\n set: (newValue: number) => {\n settings.value.opacity = newValue / 100;\n }\n})\n</script>\n\n<template>\n <aes-selector\n label=\"Fill color\"\n form-title=\"Fill Color Settings\"\n form-back-title=\"Layers\"\n type=\"fill\"\n :selected=\"dotFill\"\n @aes-update=\"(v, c) => onUpdate(v, c, 'dotFill')\"\n />\n <aes-selector\n label=\"Dot shape\"\n form-title=\"Dot Shape Settings\"\n form-back-title=\"Layers\"\n type=\"dotShape\"\n :selected=\"settings.dotShape\"\n @aes-update=\"(v, c) => onUpdateDot(v, c, 'dotShape')\"\n />\n <Slider\n label=\"Opacity\"\n :min=\"0\"\n :max=\"100\"\n :step=\"1\"\n :breakpoints=\"false\"\n measure=\"%\"\n v-model=\"opacity\"\n />\n</template>\n"],"names":["layer","store","useStore","settings","computed","optionsState","dotFill","useDefaultAes","DEFAULT_BLACK","onUpdate","value","colorOption","field","onUpdateDot","opacity","newValue","_createVNode","AesSelector","_cache","v","c","_unref","Slider","$event"],"mappings":";;;;;;AAeA,MAAMA,IAAQ;;;AADd,UAAMC,IAAQC,EAAA,GAERC,IAAWC,EAAS,MAAMH,EAAM,MAAM,SAAS,eAAeD,CAAK,CAAC,GACpEK,IAAeD;AAAA,MACnB,MAAMH,EAAM,MAAM,SAAS;AAAA,IAAA,GAGvBK,IAAUF;AAAA,MAAS,MACvBG,EAAcJ,EAAS,MAAM,SAASE,EAAa,OAAOG,CAAa;AAAA,IAAA;AAGzE,aAASC,EACPC,GACAC,GACAC,GACA;AACA,MAAID,EAAY,SAAS,oBACvBV,EAAM,MAAM,SAAS,eAAeD,CAAK,EAAEY,CAAK,IAAI;AAAA,QAClD,MAAMD,EAAY;AAAA,MAAA,IAGpBV,EAAM,MAAM,SAAS,eAAeD,CAAK,EAAEY,CAAK,IAAIF,GAElDC,EAAY,SAAS,qBAAqB,OAAOD,KAAU,aAC7DT,EAAM,MAAM,SAAS,YAAYU,EAAY,cAAc,IAAID;AAAA,IAEnE;AAEA,aAASG,EACPH,GACAC,GACAC,GACA;AACA,MAAID,EAAY,SAAS,oBACvBV,EAAM,MAAM,SAAS,eAAeD,CAAK,EAAEY,CAAK,IAAI;AAAA,QAClD,MAAMD,EAAY;AAAA,MAAA,IAGpBV,EAAM,MAAM,SAAS,eAAeD,CAAK,EAAEY,CAAK,IAAIF,GAElDC,EAAY,SAAS,qBAAqB,OAAOD,KAAU,aAC7DT,EAAM,MAAM,SAAS,YAAYU,EAAY,cAAc,IAAID;AAAA,IAEnE;AAEA,UAAMI,IAAUV,EAAS;AAAA,MACvB,KAAK,MAAMD,EAAS,MAAM,UAAU;AAAA,MACpC,KAAK,CAACY,MAAqB;AACzB,QAAAZ,EAAS,MAAM,UAAUY,IAAW;AAAA,MACtC;AAAA,IAAA,CACD;;MAICC,EAOEC,GAAA;AAAA,QANA,OAAM;AAAA,QACN,cAAW;AAAA,QACX,mBAAgB;AAAA,QAChB,MAAK;AAAA,QACJ,UAAUX,EAAA;AAAA,QACV,aAAUY,EAAA,CAAA,MAAAA,EAAA,CAAA,IAAA,CAAGC,GAAGC,MAAMX,EAASU,GAAGC,GAAC,SAAA;AAAA,MAAA;MAEtCJ,EAOEC,GAAA;AAAA,QANA,OAAM;AAAA,QACN,cAAW;AAAA,QACX,mBAAgB;AAAA,QAChB,MAAK;AAAA,QACJ,UAAUd,EAAA,MAAS;AAAA,QACnB,aAAUe,EAAA,CAAA,MAAAA,EAAA,CAAA,IAAA,CAAGC,GAAGC,MAAMP,EAAYM,GAAGC,GAAC,UAAA;AAAA,MAAA;MAEzCJ,EAQEK,EAAAC,CAAA,GAAA;AAAA,QAPE,OAAM;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,MAAM;AAAA,QACN,aAAa;AAAA,QACd,SAAQ;AAAA,oBACCR,EAAA;AAAA,sDAAAA,EAAO,QAAAS;AAAA,MAAA;;;;"}
1
+ {"version":3,"file":"Sina.vue.js","sources":["../../../../../src/forms/LayersForm/Layer/discrete/Sina.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport { useStore } from '../../../../store';\nimport { computed } from 'vue';\nimport type {\n AesOption,\n DotShape,\n} from '../../../../components/AesSettings/types';\nimport type { AestheticMappingCategorical } from '../../../../dataBindAes';\nimport { useDefaultAes } from './utils';\nimport type { DiscreteUIState } from '@milaboratories/pf-plots';\nimport { DEFAULT_BLACK } from '../../../../constantsAesthetic';\nimport AesSelector from '../../AesSelector.vue';\nimport { Slider } from '@platforma-sdk/ui-vue';\n\nconst store = useStore();\nconst layer = 'sina';\nconst settings = computed(() => store.value.reactive.layersSettings[layer]);\nconst optionsState = computed(\n () => store.value.reactive.optionsState as DiscreteUIState,\n);\n\nconst dotFill = computed(() =>\n useDefaultAes(settings.value.dotFill, optionsState.value, DEFAULT_BLACK),\n);\n\nfunction onUpdate(\n value: string | AestheticMappingCategorical,\n colorOption: AesOption,\n field: 'dotFill',\n) {\n if (colorOption.type === 'dataCategorical') {\n store.value.reactive.layersSettings[layer][field] = {\n type: colorOption.inputName,\n };\n } else {\n store.value.reactive.layersSettings[layer][field] = value;\n }\n if (colorOption.type === 'dataCategorical' && typeof value !== 'string') {\n store.value.reactive.dataBindAes[colorOption.selectedSource] = value;\n }\n}\n\nfunction onUpdateDot(\n value: DotShape | AestheticMappingCategorical,\n colorOption: AesOption,\n field: 'dotShape',\n) {\n if (colorOption.type === 'dataCategorical') {\n store.value.reactive.layersSettings[layer][field] = {\n type: colorOption.inputName,\n };\n } else {\n store.value.reactive.layersSettings[layer][field] = value;\n }\n if (colorOption.type === 'dataCategorical' && typeof value === 'object') {\n store.value.reactive.dataBindAes[colorOption.selectedSource] = value;\n }\n}\n\nconst opacity = computed({\n get: () => settings.value.opacity * 100,\n set: (newValue: number) => {\n settings.value.opacity = newValue / 100;\n },\n});\n</script>\n\n<template>\n <AesSelector\n label=\"Fill color\"\n form-title=\"Fill Color Settings\"\n form-back-title=\"Layers\"\n type=\"fill\"\n :selected=\"dotFill\"\n @aes-update=\"(v, c) => onUpdate(v, c, 'dotFill')\"\n />\n <AesSelector\n label=\"Dot shape\"\n form-title=\"Dot Shape Settings\"\n form-back-title=\"Layers\"\n type=\"dotShape\"\n :selected=\"settings.dotShape\"\n @aes-update=\"(v, c) => onUpdateDot(v, c, 'dotShape')\"\n />\n <Slider\n v-model=\"opacity\"\n label=\"Opacity\"\n :min=\"0\"\n :max=\"100\"\n :step=\"1\"\n :breakpoints=\"false\"\n measure=\"%\"\n />\n</template>\n"],"names":["layer","store","useStore","settings","computed","optionsState","dotFill","useDefaultAes","DEFAULT_BLACK","onUpdate","value","colorOption","field","onUpdateDot","opacity","newValue","_createVNode","AesSelector","_cache","v","c","_unref","Slider","$event"],"mappings":";;;;;;AAeA,MAAMA,IAAQ;;;AADd,UAAMC,IAAQC,EAAA,GAERC,IAAWC,EAAS,MAAMH,EAAM,MAAM,SAAS,eAAeD,CAAK,CAAC,GACpEK,IAAeD;AAAA,MACnB,MAAMH,EAAM,MAAM,SAAS;AAAA,IAAA,GAGvBK,IAAUF;AAAA,MAAS,MACvBG,EAAcJ,EAAS,MAAM,SAASE,EAAa,OAAOG,CAAa;AAAA,IAAA;AAGzE,aAASC,EACPC,GACAC,GACAC,GACA;AACA,MAAID,EAAY,SAAS,oBACvBV,EAAM,MAAM,SAAS,eAAeD,CAAK,EAAEY,CAAK,IAAI;AAAA,QAClD,MAAMD,EAAY;AAAA,MAAA,IAGpBV,EAAM,MAAM,SAAS,eAAeD,CAAK,EAAEY,CAAK,IAAIF,GAElDC,EAAY,SAAS,qBAAqB,OAAOD,KAAU,aAC7DT,EAAM,MAAM,SAAS,YAAYU,EAAY,cAAc,IAAID;AAAA,IAEnE;AAEA,aAASG,EACPH,GACAC,GACAC,GACA;AACA,MAAID,EAAY,SAAS,oBACvBV,EAAM,MAAM,SAAS,eAAeD,CAAK,EAAEY,CAAK,IAAI;AAAA,QAClD,MAAMD,EAAY;AAAA,MAAA,IAGpBV,EAAM,MAAM,SAAS,eAAeD,CAAK,EAAEY,CAAK,IAAIF,GAElDC,EAAY,SAAS,qBAAqB,OAAOD,KAAU,aAC7DT,EAAM,MAAM,SAAS,YAAYU,EAAY,cAAc,IAAID;AAAA,IAEnE;AAEA,UAAMI,IAAUV,EAAS;AAAA,MACvB,KAAK,MAAMD,EAAS,MAAM,UAAU;AAAA,MACpC,KAAK,CAACY,MAAqB;AACzB,QAAAZ,EAAS,MAAM,UAAUY,IAAW;AAAA,MACtC;AAAA,IAAA,CACD;;MAICC,EAOEC,GAAA;AAAA,QANA,OAAM;AAAA,QACN,cAAW;AAAA,QACX,mBAAgB;AAAA,QAChB,MAAK;AAAA,QACJ,UAAUX,EAAA;AAAA,QACV,aAAUY,EAAA,CAAA,MAAAA,EAAA,CAAA,IAAA,CAAGC,GAAGC,MAAMX,EAASU,GAAGC,GAAC,SAAA;AAAA,MAAA;MAEtCJ,EAOEC,GAAA;AAAA,QANA,OAAM;AAAA,QACN,cAAW;AAAA,QACX,mBAAgB;AAAA,QAChB,MAAK;AAAA,QACJ,UAAUd,EAAA,MAAS;AAAA,QACnB,aAAUe,EAAA,CAAA,MAAAA,EAAA,CAAA,IAAA,CAAGC,GAAGC,MAAMP,EAAYM,GAAGC,GAAC,UAAA;AAAA,MAAA;MAEzCJ,EAQEK,EAAAC,CAAA,GAAA;AAAA,oBAPSR,EAAA;AAAA,sDAAAA,EAAO,QAAAS;AAAA,QAChB,OAAM;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,MAAM;AAAA,QACN,aAAa;AAAA,QACd,SAAQ;AAAA,MAAA;;;;"}
@@ -59,31 +59,31 @@ const L = { class: "checkbox-item" }, M = { class: "checkbox-item" }, m = "stack
59
59
  }, ["stop"]))
60
60
  }, [
61
61
  o(n(F), {
62
- label: "Height",
63
- options: k,
64
62
  modelValue: t.value.height,
65
- "onUpdate:modelValue": e[2] || (e[2] = (l) => t.value.height = l)
63
+ "onUpdate:modelValue": e[2] || (e[2] = (l) => t.value.height = l),
64
+ label: "Height",
65
+ options: k
66
66
  }, null, 8, ["modelValue"])
67
67
  ]),
68
68
  o(n(c), {
69
+ modelValue: v.value,
70
+ "onUpdate:modelValue": e[4] || (e[4] = (l) => v.value = l),
69
71
  label: "Opacity of bars",
70
72
  min: 0,
71
73
  max: 100,
72
74
  step: 1,
73
75
  breakpoints: !1,
74
- measure: "%",
75
- modelValue: v.value,
76
- "onUpdate:modelValue": e[4] || (e[4] = (l) => v.value = l)
76
+ measure: "%"
77
77
  }, null, 8, ["modelValue"]),
78
78
  o(n(c), {
79
+ modelValue: f.value,
80
+ "onUpdate:modelValue": e[5] || (e[5] = (l) => f.value = l),
79
81
  label: "Opacity of areas",
80
82
  min: 0,
81
83
  max: 100,
82
84
  step: 1,
83
85
  breakpoints: !1,
84
- measure: "%",
85
- modelValue: f.value,
86
- "onUpdate:modelValue": e[5] || (e[5] = (l) => f.value = l)
86
+ measure: "%"
87
87
  }, null, 8, ["modelValue"]),
88
88
  i("div", L, [
89
89
  o(n(V), {
@@ -1 +1 @@
1
- {"version":3,"file":"StackedArea.vue.js","sources":["../../../../../src/forms/LayersForm/Layer/discrete/StackedArea.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport { useStore } from '../../../../store';\nimport { computed } from \"vue\";\nimport type { AesOption } from '../../../../components/AesSettings/types';\nimport type { AestheticMappingCategorical } from '../../../../dataBindAes';\nimport { useDefaultAes } from './utils';\nimport { DiscreteUIState } from \"@milaboratories/pf-plots\";\nimport {\n DEFAULT_BLACK,\n DEFAULT_WHITE,\n} from '../../../../constantsAesthetic';\nimport AesSelector from '../../AesSelector.vue';\nimport { PlCheckbox, Slider, PlDropdown } from '@platforma-sdk/ui-vue';\n\nconst store = useStore();\nconst layer = \"stackedArea\";\nconst settings = computed(() => store.value.reactive.layersSettings[layer]);\nconst optionsState = computed(\n () => store.value.reactive.optionsState as DiscreteUIState,\n);\n\nconst fillColor = computed(() =>\n useDefaultAes(settings.value.fillColor, optionsState.value, DEFAULT_WHITE),\n);\nconst lineColor = computed(() =>\n useDefaultAes(settings.value.lineColor, optionsState.value, DEFAULT_BLACK),\n);\n\nfunction onUpdate(\n value: string | AestheticMappingCategorical,\n colorOption: AesOption,\n field: \"fillColor\" | \"lineColor\",\n) {\n if (colorOption.type === \"dataCategorical\") {\n store.value.reactive.layersSettings[layer][field] = {\n type: colorOption.inputName,\n };\n } else {\n store.value.reactive.layersSettings[layer][field] = value;\n }\n if (colorOption.type === \"dataCategorical\" && typeof value !== \"string\") {\n store.value.reactive.dataBindAes[colorOption.selectedSource] = value;\n }\n}\n\nconst HEIGHT_OPTIONS: { text:string, value:string }[] = [\n { text: \"Sum\", value: \"sum\" },\n { text: \"Min\", value: \"min\" },\n { text: \"Max\", value: \"max\" },\n { text: \"Mean\", value: \"mean\" },\n { text: \"Median\", value: \"median\" },\n];\n\nconst barOpacity = computed({\n get: () => settings.value.barsOpacity * 100,\n set: (newValue: number) => {\n settings.value.barsOpacity = newValue / 100;\n }\n});\nconst areaOpacity = computed({\n get: () => settings.value.areaOpacity * 100,\n set: (newValue: number) => {\n settings.value.areaOpacity = newValue / 100;\n }\n});\n</script>\n\n<template>\n <aes-selector\n label=\"Fill color\"\n form-title=\"Fill Color Settings\"\n form-back-title=\"Layers\"\n type=\"fill\"\n :selected=\"fillColor\"\n @aes-update=\"(v, c) => onUpdate(v, c, 'fillColor')\"\n />\n <aes-selector\n label=\"Stroke color\"\n form-title=\"Stroke Color Settings\"\n form-back-title=\"Layers\"\n type=\"stroke\"\n :selected=\"lineColor\"\n @aes-update=\"(v, c) => onUpdate(v, c, 'lineColor')\"\n />\n <div class=\"input-item\" @click.stop>\n <pl-dropdown\n label=\"Height\"\n :options=\"HEIGHT_OPTIONS\"\n v-model=\"settings.height\"\n />\n </div>\n <Slider\n label=\"Opacity of bars\"\n :min=\"0\"\n :max=\"100\"\n :step=\"1\"\n :breakpoints=\"false\"\n measure=\"%\"\n v-model=\"barOpacity\"\n />\n <Slider\n label=\"Opacity of areas\"\n :min=\"0\"\n :max=\"100\"\n :step=\"1\"\n :breakpoints=\"false\"\n measure=\"%\"\n v-model=\"areaOpacity\"\n />\n <div class=\"checkbox-item\">\n <pl-checkbox v-model=\"settings.normalize\" />\n <span>Normalize</span>\n </div>\n <div class=\"checkbox-item\">\n <pl-checkbox v-model=\"settings.showBars\" />\n <span>Show bars</span>\n </div>\n</template>\n"],"names":["layer","store","useStore","settings","computed","optionsState","fillColor","useDefaultAes","DEFAULT_WHITE","lineColor","DEFAULT_BLACK","onUpdate","value","colorOption","field","HEIGHT_OPTIONS","barOpacity","newValue","areaOpacity","_createVNode","AesSelector","_cache","v","c","_createElementVNode","_unref","PlDropdown","$event","Slider","_hoisted_1","PlCheckbox","_hoisted_2"],"mappings":"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"}
1
+ {"version":3,"file":"StackedArea.vue.js","sources":["../../../../../src/forms/LayersForm/Layer/discrete/StackedArea.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport { useStore } from '../../../../store';\nimport { computed } from 'vue';\nimport type { AesOption } from '../../../../components/AesSettings/types';\nimport type { AestheticMappingCategorical } from '../../../../dataBindAes';\nimport { useDefaultAes } from './utils';\nimport type { DiscreteUIState } from '@milaboratories/pf-plots';\nimport {\n DEFAULT_BLACK,\n DEFAULT_WHITE,\n} from '../../../../constantsAesthetic';\nimport AesSelector from '../../AesSelector.vue';\nimport { PlCheckbox, Slider, PlDropdown } from '@platforma-sdk/ui-vue';\n\nconst store = useStore();\nconst layer = 'stackedArea';\nconst settings = computed(() => store.value.reactive.layersSettings[layer]);\nconst optionsState = computed(\n () => store.value.reactive.optionsState as DiscreteUIState,\n);\n\nconst fillColor = computed(() =>\n useDefaultAes(settings.value.fillColor, optionsState.value, DEFAULT_WHITE),\n);\nconst lineColor = computed(() =>\n useDefaultAes(settings.value.lineColor, optionsState.value, DEFAULT_BLACK),\n);\n\nfunction onUpdate(\n value: string | AestheticMappingCategorical,\n colorOption: AesOption,\n field: 'fillColor' | 'lineColor',\n) {\n if (colorOption.type === 'dataCategorical') {\n store.value.reactive.layersSettings[layer][field] = {\n type: colorOption.inputName,\n };\n } else {\n store.value.reactive.layersSettings[layer][field] = value;\n }\n if (colorOption.type === 'dataCategorical' && typeof value !== 'string') {\n store.value.reactive.dataBindAes[colorOption.selectedSource] = value;\n }\n}\n\nconst HEIGHT_OPTIONS: { text: string; value: string }[] = [\n { text: 'Sum', value: 'sum' },\n { text: 'Min', value: 'min' },\n { text: 'Max', value: 'max' },\n { text: 'Mean', value: 'mean' },\n { text: 'Median', value: 'median' },\n];\n\nconst barOpacity = computed({\n get: () => settings.value.barsOpacity * 100,\n set: (newValue: number) => {\n settings.value.barsOpacity = newValue / 100;\n },\n});\nconst areaOpacity = computed({\n get: () => settings.value.areaOpacity * 100,\n set: (newValue: number) => {\n settings.value.areaOpacity = newValue / 100;\n },\n});\n</script>\n\n<template>\n <AesSelector\n label=\"Fill color\"\n form-title=\"Fill Color Settings\"\n form-back-title=\"Layers\"\n type=\"fill\"\n :selected=\"fillColor\"\n @aes-update=\"(v, c) => onUpdate(v, c, 'fillColor')\"\n />\n <AesSelector\n label=\"Stroke color\"\n form-title=\"Stroke Color Settings\"\n form-back-title=\"Layers\"\n type=\"stroke\"\n :selected=\"lineColor\"\n @aes-update=\"(v, c) => onUpdate(v, c, 'lineColor')\"\n />\n <div class=\"input-item\" @click.stop>\n <PlDropdown\n v-model=\"settings.height\"\n label=\"Height\"\n :options=\"HEIGHT_OPTIONS\"\n />\n </div>\n <Slider\n v-model=\"barOpacity\"\n label=\"Opacity of bars\"\n :min=\"0\"\n :max=\"100\"\n :step=\"1\"\n :breakpoints=\"false\"\n measure=\"%\"\n />\n <Slider\n v-model=\"areaOpacity\"\n label=\"Opacity of areas\"\n :min=\"0\"\n :max=\"100\"\n :step=\"1\"\n :breakpoints=\"false\"\n measure=\"%\"\n />\n <div class=\"checkbox-item\">\n <PlCheckbox v-model=\"settings.normalize\" />\n <span>Normalize</span>\n </div>\n <div class=\"checkbox-item\">\n <PlCheckbox v-model=\"settings.showBars\" />\n <span>Show bars</span>\n </div>\n</template>\n"],"names":["layer","store","useStore","settings","computed","optionsState","fillColor","useDefaultAes","DEFAULT_WHITE","lineColor","DEFAULT_BLACK","onUpdate","value","colorOption","field","HEIGHT_OPTIONS","barOpacity","newValue","areaOpacity","_createVNode","AesSelector","_cache","v","c","_createElementVNode","_unref","PlDropdown","$event","Slider","_hoisted_1","PlCheckbox","_hoisted_2"],"mappings":"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"}
@@ -54,21 +54,21 @@ const M = { class: "checkbox-item" }, m = "stackedBar", w = /* @__PURE__ */ C({
54
54
  }, ["stop"]))
55
55
  }, [
56
56
  n(u(E), {
57
- label: "Height",
58
- options: g,
59
57
  modelValue: l.value.height,
60
- "onUpdate:modelValue": e[2] || (e[2] = (t) => l.value.height = t)
58
+ "onUpdate:modelValue": e[2] || (e[2] = (t) => l.value.height = t),
59
+ label: "Height",
60
+ options: g
61
61
  }, null, 8, ["modelValue"])
62
62
  ]),
63
63
  n(u(F), {
64
+ modelValue: v.value,
65
+ "onUpdate:modelValue": e[4] || (e[4] = (t) => v.value = t),
64
66
  label: "Opacity",
65
67
  min: 0,
66
68
  max: 100,
67
69
  step: 1,
68
70
  breakpoints: !1,
69
- measure: "%",
70
- modelValue: v.value,
71
- "onUpdate:modelValue": e[4] || (e[4] = (t) => v.value = t)
71
+ measure: "%"
72
72
  }, null, 8, ["modelValue"]),
73
73
  s("div", M, [
74
74
  n(u(L), {
@@ -1 +1 @@
1
- {"version":3,"file":"StackedBar.vue.js","sources":["../../../../../src/forms/LayersForm/Layer/discrete/StackedBar.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport { useStore } from '../../../../store';\nimport { computed } from \"vue\";\nimport type { AesOption } from '../../../../components/AesSettings/types';\nimport type { AestheticMappingCategorical } from '../../../../dataBindAes';\nimport { useDefaultAes } from './utils';\nimport { DiscreteUIState } from \"@milaboratories/pf-plots\";\nimport {\n DEFAULT_BLACK,\n DEFAULT_WHITE,\n} from '../../../../constantsAesthetic';\nimport AesSelector from '../../AesSelector.vue';\nimport { PlCheckbox, Slider, PlDropdown } from '@platforma-sdk/ui-vue';\n\nconst store = useStore();\nconst layer = \"stackedBar\";\nconst settings = computed(() => store.value.reactive.layersSettings[layer]);\nconst optionsState = computed(\n () => store.value.reactive.optionsState as DiscreteUIState,\n);\n\nconst fillColor = computed(() =>\n useDefaultAes(settings.value.fillColor, optionsState.value, DEFAULT_WHITE),\n);\nconst lineColor = computed(() =>\n useDefaultAes(settings.value.lineColor, optionsState.value, DEFAULT_BLACK),\n);\n\nfunction onUpdate(\n value: string | AestheticMappingCategorical,\n colorOption: AesOption,\n field: \"fillColor\" | \"lineColor\",\n) {\n if (colorOption.type === \"dataCategorical\") {\n store.value.reactive.layersSettings[layer][field] = {\n type: colorOption.inputName,\n };\n } else {\n store.value.reactive.layersSettings[layer][field] = value;\n }\n if (colorOption.type === \"dataCategorical\" && typeof value !== \"string\") {\n store.value.reactive.dataBindAes[colorOption.selectedSource] = value;\n }\n}\n\nconst HEIGHT_OPTIONS: { text:string, value:string }[] = [\n { text: \"Sum\", value: \"sum\" },\n { text: \"Min\", value: \"min\" },\n { text: \"Max\", value: \"max\" },\n { text: \"Mean\", value: \"mean\" },\n { text: \"Median\", value: \"median\" },\n];\n\nconst opacity = computed({\n get: () => settings.value.opacity * 100,\n set: (newValue: number) => {\n settings.value.opacity = newValue / 100;\n }\n})\n</script>\n\n<template>\n <aes-selector\n label=\"Fill color\"\n form-title=\"Fill Color Settings\"\n form-back-title=\"Layers\"\n type=\"fill\"\n :selected=\"fillColor\"\n @aes-update=\"(v, c) => onUpdate(v, c, 'fillColor')\"\n />\n <aes-selector\n label=\"Stroke color\"\n form-title=\"Stroke Color Settings\"\n form-back-title=\"Layers\"\n type=\"stroke\"\n :selected=\"lineColor\"\n @aes-update=\"(v, c) => onUpdate(v, c, 'lineColor')\"\n />\n <div class=\"input-item\" @click.stop>\n <pl-dropdown\n label=\"Height\"\n :options=\"HEIGHT_OPTIONS\"\n v-model=\"settings.height\"\n />\n </div>\n <Slider\n label=\"Opacity\"\n :min=\"0\"\n :max=\"100\"\n :step=\"1\"\n :breakpoints=\"false\"\n measure=\"%\"\n v-model=\"opacity\"\n />\n <div class=\"checkbox-item\">\n <pl-checkbox v-model=\"settings.normalize\" />\n <span>Normalize</span>\n </div>\n</template>\n"],"names":["layer","store","useStore","settings","computed","optionsState","fillColor","useDefaultAes","DEFAULT_WHITE","lineColor","DEFAULT_BLACK","onUpdate","value","colorOption","field","HEIGHT_OPTIONS","opacity","newValue","_createVNode","AesSelector","_cache","v","c","_createElementVNode","_unref","PlDropdown","$event","Slider","_hoisted_1","PlCheckbox"],"mappings":"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"}
1
+ {"version":3,"file":"StackedBar.vue.js","sources":["../../../../../src/forms/LayersForm/Layer/discrete/StackedBar.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport { useStore } from '../../../../store';\nimport { computed } from 'vue';\nimport type { AesOption } from '../../../../components/AesSettings/types';\nimport type { AestheticMappingCategorical } from '../../../../dataBindAes';\nimport { useDefaultAes } from './utils';\nimport type { DiscreteUIState } from '@milaboratories/pf-plots';\nimport {\n DEFAULT_BLACK,\n DEFAULT_WHITE,\n} from '../../../../constantsAesthetic';\nimport AesSelector from '../../AesSelector.vue';\nimport { PlCheckbox, Slider, PlDropdown } from '@platforma-sdk/ui-vue';\n\nconst store = useStore();\nconst layer = 'stackedBar';\nconst settings = computed(() => store.value.reactive.layersSettings[layer]);\nconst optionsState = computed(\n () => store.value.reactive.optionsState as DiscreteUIState,\n);\n\nconst fillColor = computed(() =>\n useDefaultAes(settings.value.fillColor, optionsState.value, DEFAULT_WHITE),\n);\nconst lineColor = computed(() =>\n useDefaultAes(settings.value.lineColor, optionsState.value, DEFAULT_BLACK),\n);\n\nfunction onUpdate(\n value: string | AestheticMappingCategorical,\n colorOption: AesOption,\n field: 'fillColor' | 'lineColor',\n) {\n if (colorOption.type === 'dataCategorical') {\n store.value.reactive.layersSettings[layer][field] = {\n type: colorOption.inputName,\n };\n } else {\n store.value.reactive.layersSettings[layer][field] = value;\n }\n if (colorOption.type === 'dataCategorical' && typeof value !== 'string') {\n store.value.reactive.dataBindAes[colorOption.selectedSource] = value;\n }\n}\n\nconst HEIGHT_OPTIONS: { text: string; value: string }[] = [\n { text: 'Sum', value: 'sum' },\n { text: 'Min', value: 'min' },\n { text: 'Max', value: 'max' },\n { text: 'Mean', value: 'mean' },\n { text: 'Median', value: 'median' },\n];\n\nconst opacity = computed({\n get: () => settings.value.opacity * 100,\n set: (newValue: number) => {\n settings.value.opacity = newValue / 100;\n },\n});\n</script>\n\n<template>\n <AesSelector\n label=\"Fill color\"\n form-title=\"Fill Color Settings\"\n form-back-title=\"Layers\"\n type=\"fill\"\n :selected=\"fillColor\"\n @aes-update=\"(v, c) => onUpdate(v, c, 'fillColor')\"\n />\n <AesSelector\n label=\"Stroke color\"\n form-title=\"Stroke Color Settings\"\n form-back-title=\"Layers\"\n type=\"stroke\"\n :selected=\"lineColor\"\n @aes-update=\"(v, c) => onUpdate(v, c, 'lineColor')\"\n />\n <div class=\"input-item\" @click.stop>\n <PlDropdown\n v-model=\"settings.height\"\n label=\"Height\"\n :options=\"HEIGHT_OPTIONS\"\n />\n </div>\n <Slider\n v-model=\"opacity\"\n label=\"Opacity\"\n :min=\"0\"\n :max=\"100\"\n :step=\"1\"\n :breakpoints=\"false\"\n measure=\"%\"\n />\n <div class=\"checkbox-item\">\n <PlCheckbox v-model=\"settings.normalize\" />\n <span>Normalize</span>\n </div>\n</template>\n"],"names":["layer","store","useStore","settings","computed","optionsState","fillColor","useDefaultAes","DEFAULT_WHITE","lineColor","DEFAULT_BLACK","onUpdate","value","colorOption","field","HEIGHT_OPTIONS","opacity","newValue","_createVNode","AesSelector","_cache","v","c","_createElementVNode","_unref","PlDropdown","$event","Slider","_hoisted_1","PlCheckbox"],"mappings":"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"}
@@ -89,14 +89,14 @@ const w = { class: "checkbox-item" }, N = { class: "checkbox-item" }, Q = { key:
89
89
  }, null, 8, ["selected"])
90
90
  ])) : x("", !0),
91
91
  s(u(E), {
92
+ modelValue: v.value,
93
+ "onUpdate:modelValue": e[7] || (e[7] = (t) => v.value = t),
92
94
  label: "Opacity",
93
95
  min: 0,
94
96
  max: 100,
95
97
  step: 1,
96
98
  breakpoints: !1,
97
- measure: "%",
98
- modelValue: v.value,
99
- "onUpdate:modelValue": e[7] || (e[7] = (t) => v.value = t)
99
+ measure: "%"
100
100
  }, null, 8, ["modelValue"])
101
101
  ], 64));
102
102
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Violin.vue.js","sources":["../../../../../src/forms/LayersForm/Layer/discrete/Violin.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport { useStore } from '../../../../store';\nimport {Slider, PlCheckbox} from \"@platforma-sdk/ui-vue\";\nimport { computed } from \"vue\";\nimport type { AesOption } from '../../../../components/AesSettings/types';\nimport type { AestheticMappingCategorical } from '../../../../dataBindAes';\nimport { useDefaultAes } from './utils';\nimport { DiscreteUIState } from \"@milaboratories/pf-plots\";\nimport {\n DEFAULT_BLACK,\n DEFAULT_WHITE,\n} from '../../../../constantsAesthetic';\nimport AesSelector from '../../AesSelector.vue';\nimport {LineType} from '../../../../components/AesSettings/types';\n\nconst store = useStore();\nconst layer = \"violin\";\nconst settings = computed(() => store.value.reactive.layersSettings[layer]);\nconst optionsState = computed(\n () => store.value.reactive.optionsState as DiscreteUIState,\n);\n\nconst fillColor = computed(() =>\n useDefaultAes(settings.value.fillColor, optionsState.value, DEFAULT_WHITE),\n);\nconst lineColor = computed(() =>\n useDefaultAes(settings.value.lineColor, optionsState.value, DEFAULT_BLACK),\n);\nconst lineType = computed(() => settings.value.lineType);\nconst medianLineType = computed(() => settings.value.medianLineStyle);\nconst quartilesLineType = computed(() => settings.value.quartilesLineStyle);\n\nfunction onUpdate(\n value: string | AestheticMappingCategorical,\n colorOption: AesOption,\n field: \"fillColor\" | \"lineColor\",\n) {\n if (colorOption.type === \"dataCategorical\") {\n store.value.reactive.layersSettings[layer][field] = {\n type: colorOption.inputName,\n };\n } else {\n store.value.reactive.layersSettings[layer][field] = value;\n }\n if (colorOption.type === \"dataCategorical\" && typeof value !== \"string\") {\n store.value.reactive.dataBindAes[colorOption.selectedSource] = value;\n }\n}\nfunction onUpdateLineType(\n value: LineType | AestheticMappingCategorical,\n colorOption: AesOption,\n field: \"lineType\",\n) {\n store.value.reactive.layersSettings[layer][field] =\n typeof value === \"object\" ? { type: colorOption.value } : value;\n if (colorOption.type === \"dataCategorical\" && typeof value === \"object\") {\n store.value.reactive.dataBindAes[colorOption.selectedSource] = value;\n }\n}\n\nconst opacity = computed({\n get: () => settings.value.opacity * 100,\n set: (newValue: number) => {\n settings.value.opacity = newValue / 100;\n }\n})\n</script>\n\n<template>\n <aes-selector\n label=\"Fill color\"\n form-title=\"Fill Color Settings\"\n form-back-title=\"Layers\"\n type=\"fill\"\n :selected=\"fillColor\"\n @aes-update=\"(v, c) => onUpdate(v, c, 'fillColor')\"\n />\n <aes-selector\n label=\"Stroke color\"\n form-title=\"Stroke Color Settings\"\n form-back-title=\"Layers\"\n type=\"stroke\"\n :selected=\"lineColor\"\n @aes-update=\"(v, c) => onUpdate(v, c, 'lineColor')\"\n />\n <aes-selector\n label=\"Line Type\"\n form-title=\"Line Type Settings\"\n form-back-title=\"Layers\"\n type=\"lineType\"\n :possible-aes-source-inputs=\"[]\"\n :selected=\"lineType\"\n @aes-update=\"(v, c) => onUpdateLineType(v, c, 'lineType')\"\n />\n <div class=\"checkbox-item\">\n <pl-checkbox v-model=\"settings.trim\" />\n <span>Trim</span>\n </div>\n <div class=\"checkbox-item\">\n <pl-checkbox v-model=\"settings.showQuartiles\" />\n <span>Show median and quartiles</span>\n </div>\n <div v-if=\"settings.showQuartiles\">\n <aes-selector\n label=\"Madian Line Type\"\n form-title=\"Line Type Settings\"\n form-back-title=\"Layers\"\n type=\"lineType\"\n :possible-aes-source-inputs=\"[]\"\n :selected=\"medianLineType\"\n @aes-update=\"(v) => store.reactive.layersSettings[layer].medianLineStyle = v\"\n />\n <aes-selector\n label=\"Quartiles Line Type\"\n form-title=\"Line Type Settings\"\n form-back-title=\"Layers\"\n type=\"lineType\"\n :possible-aes-source-inputs=\"[]\"\n :selected=\"quartilesLineType\"\n @aes-update=\"(v) => store.reactive.layersSettings[layer].quartilesLineStyle = v\"\n />\n </div>\n <Slider\n label=\"Opacity\"\n :min=\"0\"\n :max=\"100\"\n :step=\"1\"\n :breakpoints=\"false\"\n measure=\"%\"\n v-model=\"opacity\"\n />\n</template>\n"],"names":["layer","store","useStore","settings","computed","optionsState","fillColor","useDefaultAes","DEFAULT_WHITE","lineColor","DEFAULT_BLACK","lineType","medianLineType","quartilesLineType","onUpdate","value","colorOption","field","onUpdateLineType","opacity","newValue","_createVNode","AesSelector","_cache","v","c","_createElementVNode","_hoisted_1","_unref","PlCheckbox","$event","_hoisted_2","_createElementBlock","_hoisted_3","Slider"],"mappings":"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"}
1
+ {"version":3,"file":"Violin.vue.js","sources":["../../../../../src/forms/LayersForm/Layer/discrete/Violin.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport { useStore } from '../../../../store';\nimport { Slider, PlCheckbox } from '@platforma-sdk/ui-vue';\nimport { computed } from 'vue';\nimport type { AesOption } from '../../../../components/AesSettings/types';\nimport type { AestheticMappingCategorical } from '../../../../dataBindAes';\nimport { useDefaultAes } from './utils';\nimport type { DiscreteUIState } from '@milaboratories/pf-plots';\nimport {\n DEFAULT_BLACK,\n DEFAULT_WHITE,\n} from '../../../../constantsAesthetic';\nimport AesSelector from '../../AesSelector.vue';\nimport type { LineType } from '../../../../components/AesSettings/types';\n\nconst store = useStore();\nconst layer = 'violin';\nconst settings = computed(() => store.value.reactive.layersSettings[layer]);\nconst optionsState = computed(\n () => store.value.reactive.optionsState as DiscreteUIState,\n);\n\nconst fillColor = computed(() =>\n useDefaultAes(settings.value.fillColor, optionsState.value, DEFAULT_WHITE),\n);\nconst lineColor = computed(() =>\n useDefaultAes(settings.value.lineColor, optionsState.value, DEFAULT_BLACK),\n);\nconst lineType = computed(() => settings.value.lineType);\nconst medianLineType = computed(() => settings.value.medianLineStyle);\nconst quartilesLineType = computed(() => settings.value.quartilesLineStyle);\n\nfunction onUpdate(\n value: string | AestheticMappingCategorical,\n colorOption: AesOption,\n field: 'fillColor' | 'lineColor',\n) {\n if (colorOption.type === 'dataCategorical') {\n store.value.reactive.layersSettings[layer][field] = {\n type: colorOption.inputName,\n };\n } else {\n store.value.reactive.layersSettings[layer][field] = value;\n }\n if (colorOption.type === 'dataCategorical' && typeof value !== 'string') {\n store.value.reactive.dataBindAes[colorOption.selectedSource] = value;\n }\n}\nfunction onUpdateLineType(\n value: LineType | AestheticMappingCategorical,\n colorOption: AesOption,\n field: 'lineType',\n) {\n store.value.reactive.layersSettings[layer][field]\n = typeof value === 'object' ? { type: colorOption.value } : value;\n if (colorOption.type === 'dataCategorical' && typeof value === 'object') {\n store.value.reactive.dataBindAes[colorOption.selectedSource] = value;\n }\n}\n\nconst opacity = computed({\n get: () => settings.value.opacity * 100,\n set: (newValue: number) => {\n settings.value.opacity = newValue / 100;\n },\n});\n</script>\n\n<template>\n <AesSelector\n label=\"Fill color\"\n form-title=\"Fill Color Settings\"\n form-back-title=\"Layers\"\n type=\"fill\"\n :selected=\"fillColor\"\n @aes-update=\"(v, c) => onUpdate(v, c, 'fillColor')\"\n />\n <AesSelector\n label=\"Stroke color\"\n form-title=\"Stroke Color Settings\"\n form-back-title=\"Layers\"\n type=\"stroke\"\n :selected=\"lineColor\"\n @aes-update=\"(v, c) => onUpdate(v, c, 'lineColor')\"\n />\n <AesSelector\n label=\"Line Type\"\n form-title=\"Line Type Settings\"\n form-back-title=\"Layers\"\n type=\"lineType\"\n :possible-aes-source-inputs=\"[]\"\n :selected=\"lineType\"\n @aes-update=\"(v, c) => onUpdateLineType(v, c, 'lineType')\"\n />\n <div class=\"checkbox-item\">\n <PlCheckbox v-model=\"settings.trim\" />\n <span>Trim</span>\n </div>\n <div class=\"checkbox-item\">\n <PlCheckbox v-model=\"settings.showQuartiles\" />\n <span>Show median and quartiles</span>\n </div>\n <div v-if=\"settings.showQuartiles\">\n <AesSelector\n label=\"Madian Line Type\"\n form-title=\"Line Type Settings\"\n form-back-title=\"Layers\"\n type=\"lineType\"\n :possible-aes-source-inputs=\"[]\"\n :selected=\"medianLineType\"\n @aes-update=\"(v) => store.reactive.layersSettings[layer].medianLineStyle = v\"\n />\n <AesSelector\n label=\"Quartiles Line Type\"\n form-title=\"Line Type Settings\"\n form-back-title=\"Layers\"\n type=\"lineType\"\n :possible-aes-source-inputs=\"[]\"\n :selected=\"quartilesLineType\"\n @aes-update=\"(v) => store.reactive.layersSettings[layer].quartilesLineStyle = v\"\n />\n </div>\n <Slider\n v-model=\"opacity\"\n label=\"Opacity\"\n :min=\"0\"\n :max=\"100\"\n :step=\"1\"\n :breakpoints=\"false\"\n measure=\"%\"\n />\n</template>\n"],"names":["layer","store","useStore","settings","computed","optionsState","fillColor","useDefaultAes","DEFAULT_WHITE","lineColor","DEFAULT_BLACK","lineType","medianLineType","quartilesLineType","onUpdate","value","colorOption","field","onUpdateLineType","opacity","newValue","_createVNode","AesSelector","_cache","v","c","_createElementVNode","_hoisted_1","_unref","PlCheckbox","$event","_hoisted_2","_createElementBlock","_hoisted_3","Slider"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sources":["../../../../../src/forms/LayersForm/Layer/discrete/utils.ts"],"sourcesContent":["import { DiscreteUIState } from \"@milaboratories/pf-plots\";\nimport {FixedOrMappedAes} from '../../../../constantsCommon';\n\nexport function useDefaultAes<T extends FixedOrMappedAes>(\n value: T | null,\n optionsState: DiscreteUIState,\n defaultValue: T,\n onlySecondaryAvailable = false,\n):T {\n const hasPrimaryGrouping =\n optionsState.components.primaryGrouping.selectorStates.length > 0;\n const hasSecondaryGrouping =\n optionsState.components.secondaryGrouping.selectorStates.length > 0;\n if (value === null) {\n // not selected by user\n if (hasSecondaryGrouping) {\n return { type: \"secondaryGrouping\" } as T;\n }\n if (hasPrimaryGrouping && !onlySecondaryAvailable) {\n return { type: \"primaryGrouping\" } as T;\n }\n return defaultValue;\n }\n return value;\n}\n"],"names":["useDefaultAes","value","optionsState","defaultValue","onlySecondaryAvailable","hasPrimaryGrouping","hasSecondaryGrouping"],"mappings":"AAGO,SAASA,EACdC,GACAC,GACAC,GACAC,IAAyB,IACvB;AACF,QAAMC,IACJH,EAAa,WAAW,gBAAgB,eAAe,SAAS,GAC5DI,IACJJ,EAAa,WAAW,kBAAkB,eAAe,SAAS;AACpE,SAAID,MAAU,OAERK,IACK,EAAE,MAAM,oBAAA,IAEbD,KAAsB,CAACD,IAClB,EAAE,MAAM,kBAAA,IAEVD,IAEFF;AACT;"}
1
+ {"version":3,"file":"utils.js","sources":["../../../../../src/forms/LayersForm/Layer/discrete/utils.ts"],"sourcesContent":["import type { DiscreteUIState } from '@milaboratories/pf-plots';\nimport type { FixedOrMappedAes } from '../../../../constantsCommon';\n\nexport function useDefaultAes<T extends FixedOrMappedAes>(\n value: T | null,\n optionsState: DiscreteUIState,\n defaultValue: T,\n onlySecondaryAvailable = false,\n): T {\n const hasPrimaryGrouping\n = optionsState.components.primaryGrouping.selectorStates.length > 0;\n const hasSecondaryGrouping\n = optionsState.components.secondaryGrouping.selectorStates.length > 0;\n if (value === null) {\n // not selected by user\n if (hasSecondaryGrouping) {\n return { type: 'secondaryGrouping' } as T;\n }\n if (hasPrimaryGrouping && !onlySecondaryAvailable) {\n return { type: 'primaryGrouping' } as T;\n }\n return defaultValue;\n }\n return value;\n}\n"],"names":["useDefaultAes","value","optionsState","defaultValue","onlySecondaryAvailable","hasPrimaryGrouping","hasSecondaryGrouping"],"mappings":"AAGO,SAASA,EACdC,GACAC,GACAC,GACAC,IAAyB,IACtB;AACH,QAAMC,IACFH,EAAa,WAAW,gBAAgB,eAAe,SAAS,GAC9DI,IACFJ,EAAa,WAAW,kBAAkB,eAAe,SAAS;AACtE,SAAID,MAAU,OAERK,IACK,EAAE,MAAM,oBAAA,IAEbD,KAAsB,CAACD,IAClB,EAAE,MAAM,kBAAA,IAEVD,IAEFF;AACT;"}
@@ -9,10 +9,10 @@ import { PlBtnGroup as p, PlCheckbox as A, PlNumberField as F } from "@platforma
9
9
  const R = { class: "button-group-item" }, $ = { class: "button-group-item" }, w = { class: "checkbox-item" }, H = { class: "checkbox-item" }, X = { class: "button-group-item" }, Y = {
10
10
  class: "button-group-item",
11
11
  style: { display: "flex", alignItems: "end" }
12
- }, le = /* @__PURE__ */ y({
12
+ }, Z = "heatmap", te = /* @__PURE__ */ y({
13
13
  __name: "Heatmap",
14
- setup(Z) {
15
- const s = U(), t = m(() => s.value.reactive.layersSettings.heatmap), b = m(() => s.value.reactive.optionsState), f = m(() => s.value.inputGuide.value), i = m(() => {
14
+ setup(j) {
15
+ const s = U(), t = m(() => s.value.reactive.layersSettings[Z]), b = m(() => s.value.reactive.optionsState), f = m(() => s.value.inputGuide.value), i = m(() => {
16
16
  var a;
17
17
  return (a = b.value.components.value.selectorStates[0]) == null ? void 0 : a.selectedSource;
18
18
  }), N = m(() => {
@@ -64,20 +64,20 @@ const R = { class: "button-group-item" }, $ = { class: "button-group-item" }, w
64
64
  })) : I("", !0),
65
65
  u("div", R, [
66
66
  o(n(p), {
67
+ modelValue: t.value.normalizationDirection,
68
+ "onUpdate:modelValue": e[2] || (e[2] = (l) => t.value.normalizationDirection = l),
67
69
  label: "Normalize by",
68
70
  options: S,
69
- compact: !0,
70
- modelValue: t.value.normalizationDirection,
71
- "onUpdate:modelValue": e[2] || (e[2] = (l) => t.value.normalizationDirection = l)
71
+ compact: !0
72
72
  }, null, 8, ["modelValue"])
73
73
  ]),
74
74
  u("div", $, [
75
75
  o(n(p), {
76
+ modelValue: t.value.normalizationMethod,
77
+ "onUpdate:modelValue": e[3] || (e[3] = (l) => t.value.normalizationMethod = l),
76
78
  label: "Normalization method",
77
79
  options: O,
78
- compact: !0,
79
- modelValue: t.value.normalizationMethod,
80
- "onUpdate:modelValue": e[3] || (e[3] = (l) => t.value.normalizationMethod = l)
80
+ compact: !0
81
81
  }, null, 8, ["modelValue"])
82
82
  ]),
83
83
  u("div", w, [
@@ -96,44 +96,44 @@ const R = { class: "button-group-item" }, $ = { class: "button-group-item" }, w
96
96
  ]),
97
97
  u("div", X, [
98
98
  o(n(p), {
99
+ modelValue: t.value.aggregationMethod,
100
+ "onUpdate:modelValue": e[6] || (e[6] = (l) => t.value.aggregationMethod = l),
99
101
  label: "Aggregation method",
100
102
  options: x,
101
- compact: !0,
102
- modelValue: t.value.aggregationMethod,
103
- "onUpdate:modelValue": e[6] || (e[6] = (l) => t.value.aggregationMethod = l)
103
+ compact: !0
104
104
  }, null, 8, ["modelValue"])
105
105
  ]),
106
106
  u("div", Y, [
107
107
  o(n(p), {
108
- label: "Treat NA value as:",
109
- options: T,
110
- compact: !0,
111
108
  modelValue: g.value,
112
109
  "onUpdate:modelValue": [
113
110
  e[7] || (e[7] = (l) => g.value = l),
114
111
  e[8] || (e[8] = (l) => {
115
112
  l === "custom" ? t.value.NAValueAs = c.value : t.value.NAValueAs = l;
116
113
  })
117
- ]
114
+ ],
115
+ label: "Treat NA value as:",
116
+ options: T,
117
+ compact: !0
118
118
  }, null, 8, ["modelValue"]),
119
119
  o(n(F), {
120
- style: { height: "33px", marginLeft: "16px", width: "75px" },
121
- disabled: g.value !== "custom",
122
- label: "NA value",
123
- useIncrementButtons: !1,
124
120
  modelValue: c.value,
125
121
  "onUpdate:modelValue": [
126
122
  e[9] || (e[9] = (l) => c.value = l),
127
123
  e[10] || (e[10] = (l) => {
128
124
  l !== void 0 && (t.value.NAValueAs = l);
129
125
  })
130
- ]
131
- }, null, 8, ["disabled", "modelValue"])
126
+ ],
127
+ style: { height: "33px", marginLeft: "16px", width: "75px" },
128
+ disabled: g.value !== "custom",
129
+ label: "NA value",
130
+ useIncrementButtons: !1
131
+ }, null, 8, ["modelValue", "disabled"])
132
132
  ])
133
133
  ], 64));
134
134
  }
135
135
  });
136
136
  export {
137
- le as default
137
+ te as default
138
138
  };
139
139
  //# sourceMappingURL=Heatmap.vue.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Heatmap.vue.js","sources":["../../../../../src/forms/LayersForm/Layer/heatmap/Heatmap.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport { useStore } from '../../../../store';\nimport { HeatmapLayer } from '../../../../types';\nimport { computed, ref } from 'vue';\nimport {\n DEFAULT_CONTINUOUS_PALETTE,\n PALETTE_MAP\n} from '../../../../constantsAesthetic';\nimport { ContinuousPalette } from '../../../../components/AesSettings/types';\nimport { createContinuousMappingFromPalette } from '../../../../dataBindAes';\nimport MultiselectButton from '../../../../components/MultiselectButton.vue';\nimport PalettesForm from '../../../../components/AesSettings/PalettesForm.vue';\nimport FormWrapper from '../../../../components/AesSettings/FormWrapper.vue';\nimport { HeatmapUIState, InputGuide } from '@milaboratories/pf-plots';\nimport { PlBtnGroup, PlCheckbox, PlNumberField, SimpleOption } from '@platforma-sdk/ui-vue';\n\nconst store = useStore();\nconst layer: HeatmapLayer = 'heatmap';\nconst settings = computed(() => store.value.reactive.layersSettings.heatmap);\nconst optionsState = computed(() => store.value.reactive.optionsState as HeatmapUIState);\nconst inputGuide = computed(() => store.value.inputGuide.value as InputGuide<HeatmapUIState>);\n\nconst dataSource = computed(() => optionsState.value.components.value.selectorStates[0]?.selectedSource);\nconst savedDataValuePalette = computed(() => dataSource.value ? store.value.reactive.dataBindAes[dataSource.value]?.palette : undefined);\n\nconst palettesOpen = ref(false);\nconst palette = ref<ContinuousPalette>(savedDataValuePalette.value as ContinuousPalette ?? DEFAULT_CONTINUOUS_PALETTE);\n\nfunction onPaletteSelect(value: ContinuousPalette) {\n palette.value = value;\n palettesOpen.value = false;\n if (dataSource.value) {\n store.value.reactive.dataBindAes[dataSource.value] = createContinuousMappingFromPalette(value);\n }\n}\n\nconst NORMALIZATION_DIRECTION: SimpleOption[] = [\n { label: 'None', value: null },\n { label: 'Columns', value: 'column' },\n { label: 'Rows', value: 'row' }\n];\nconst NORMALIZATION_METHOD: SimpleOption[] = [\n { label: 'z-score', value: 'standardScaling' },\n { label: 'Min-max', value: 'meanNormalization' }\n];\nconst NA_VALUE_OPTIONS: SimpleOption[] = [\n { label: 'empty', value: null },\n { label: 'Special value', value: 'custom' }\n];\nconst AGGREGATION_METHOD: SimpleOption[] = [\n {label: 'Mean', value: 'mean'},\n {label: 'Min', value: 'min'},\n {label: 'Max', value: 'max'},\n {label: 'Median', value: 'median'},\n];\n\nconst NAValueOption = ref(settings.value.NAValueAs === null ? null : 'custom');\nconst customNA = ref(settings.value.NAValueAs ?? 0);\n</script>\n\n<template>\n <multiselect-button\n label=\"Color Palette \"\n :title=\"PALETTE_MAP[palette].title\"\n :palette=\"palette\"\n @button-click=\"palettesOpen = true;\"\n />\n <form-wrapper\n v-if=\"palettesOpen\"\n title=\"Color Palette\"\n back-title=\"Color mapping\"\n @form:close=\"palettesOpen = false\"\n >\n <palettes-form :selected=\"palette\"\n :categorical=\"dataSource ? inputGuide.getSourceInfo(dataSource).type === 'String' : false\"\n @select=\"onPaletteSelect\" />\n </form-wrapper>\n <div class=\"button-group-item\">\n <pl-btn-group\n label=\"Normalize by\"\n :options=\"NORMALIZATION_DIRECTION\"\n :compact=\"true\"\n v-model=\"settings.normalizationDirection\"\n />\n </div>\n <div class=\"button-group-item\">\n <pl-btn-group\n label=\"Normalization method\"\n :options=\"NORMALIZATION_METHOD\"\n :compact=\"true\"\n v-model=\"settings.normalizationMethod\"\n />\n </div>\n <div class=\"checkbox-item\">\n <pl-checkbox v-model=\"settings.aggregateByX\"/>\n <span>Aggregate X groups</span>\n </div>\n <div class=\"checkbox-item\">\n <pl-checkbox v-model=\"settings.aggregateByY\"/>\n <span>Aggregate Y groups</span>\n </div>\n <div class=\"button-group-item\">\n <pl-btn-group\n label=\"Aggregation method\"\n :options=\"AGGREGATION_METHOD\"\n :compact=\"true\"\n v-model=\"settings.aggregationMethod\"\n />\n </div>\n <div class=\"button-group-item\" :style=\"{display: 'flex', alignItems: 'end'}\">\n <pl-btn-group\n label=\"Treat NA value as:\"\n :options=\"NA_VALUE_OPTIONS\"\n :compact=\"true\"\n v-model=\"NAValueOption\"\n @update:modelValue=\"(value:unknown) => {\n if (value === 'custom') {\n settings.NAValueAs = customNA;\n } else {\n settings.NAValueAs = value as number|null;\n }\n }\"\n />\n <pl-number-field\n :style=\"{height: '33px', marginLeft: '16px', width: '75px'}\"\n :disabled=\"NAValueOption !== 'custom'\"\n label=\"NA value\"\n :useIncrementButtons=\"false\"\n v-model=\"customNA\"\n @update:modelValue=\"(value:unknown) => {\n if (value !== undefined) {\n settings.NAValueAs = value as number;\n }\n }\"\n />\n </div>\n</template>\n"],"names":["store","useStore","settings","computed","optionsState","inputGuide","dataSource","_a","savedDataValuePalette","palettesOpen","ref","palette","DEFAULT_CONTINUOUS_PALETTE","onPaletteSelect","value","createContinuousMappingFromPalette","NORMALIZATION_DIRECTION","NORMALIZATION_METHOD","NA_VALUE_OPTIONS","AGGREGATION_METHOD","NAValueOption","customNA","_createVNode","MultiselectButton","_unref","PALETTE_MAP","_createBlock","FormWrapper","PalettesForm","_createElementVNode","_hoisted_1","PlBtnGroup","_cache","$event","_hoisted_2","_hoisted_3","PlCheckbox","_hoisted_4","_hoisted_5","_hoisted_6","PlNumberField"],"mappings":"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"}
1
+ {"version":3,"file":"Heatmap.vue.js","sources":["../../../../../src/forms/LayersForm/Layer/heatmap/Heatmap.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport { useStore } from '../../../../store';\nimport type { HeatmapLayer } from '../../../../types';\nimport { computed, ref } from 'vue';\nimport {\n DEFAULT_CONTINUOUS_PALETTE,\n PALETTE_MAP,\n} from '../../../../constantsAesthetic';\nimport type { ContinuousPalette } from '../../../../components/AesSettings/types';\nimport { createContinuousMappingFromPalette } from '../../../../dataBindAes';\nimport MultiselectButton from '../../../../components/MultiselectButton.vue';\nimport PalettesForm from '../../../../components/AesSettings/PalettesForm.vue';\nimport FormWrapper from '../../../../components/AesSettings/FormWrapper.vue';\nimport type { HeatmapUIState, InputGuide } from '@milaboratories/pf-plots';\nimport type { SimpleOption } from '@platforma-sdk/ui-vue';\nimport { PlBtnGroup, PlCheckbox, PlNumberField } from '@platforma-sdk/ui-vue';\n\nconst store = useStore();\nconst layer: HeatmapLayer = 'heatmap';\nconst settings = computed(() => store.value.reactive.layersSettings[layer]);\nconst optionsState = computed(() => store.value.reactive.optionsState as HeatmapUIState);\nconst inputGuide = computed(() => store.value.inputGuide.value as InputGuide<HeatmapUIState>);\n\nconst dataSource = computed(() => optionsState.value.components.value.selectorStates[0]?.selectedSource);\nconst savedDataValuePalette = computed(() => dataSource.value ? store.value.reactive.dataBindAes[dataSource.value]?.palette : undefined);\n\nconst palettesOpen = ref(false);\nconst palette = ref<ContinuousPalette>(savedDataValuePalette.value as ContinuousPalette ?? DEFAULT_CONTINUOUS_PALETTE);\n\nfunction onPaletteSelect(value: ContinuousPalette) {\n palette.value = value;\n palettesOpen.value = false;\n if (dataSource.value) {\n store.value.reactive.dataBindAes[dataSource.value] = createContinuousMappingFromPalette(value);\n }\n}\n\nconst NORMALIZATION_DIRECTION: SimpleOption[] = [\n { label: 'None', value: null },\n { label: 'Columns', value: 'column' },\n { label: 'Rows', value: 'row' },\n];\nconst NORMALIZATION_METHOD: SimpleOption[] = [\n { label: 'z-score', value: 'standardScaling' },\n { label: 'Min-max', value: 'meanNormalization' },\n];\nconst NA_VALUE_OPTIONS: SimpleOption[] = [\n { label: 'empty', value: null },\n { label: 'Special value', value: 'custom' },\n];\nconst AGGREGATION_METHOD: SimpleOption[] = [\n { label: 'Mean', value: 'mean' },\n { label: 'Min', value: 'min' },\n { label: 'Max', value: 'max' },\n { label: 'Median', value: 'median' },\n];\n\nconst NAValueOption = ref(settings.value.NAValueAs === null ? null : 'custom');\nconst customNA = ref(settings.value.NAValueAs ?? 0);\n</script>\n\n<template>\n <MultiselectButton\n label=\"Color Palette \"\n :title=\"PALETTE_MAP[palette].title\"\n :palette=\"palette\"\n @button-click=\"palettesOpen = true;\"\n />\n <FormWrapper\n v-if=\"palettesOpen\"\n title=\"Color Palette\"\n back-title=\"Color mapping\"\n @form:close=\"palettesOpen = false\"\n >\n <PalettesForm\n :selected=\"palette\"\n :categorical=\"dataSource ? inputGuide.getSourceInfo(dataSource).type === 'String' : false\"\n @select=\"onPaletteSelect\"\n />\n </FormWrapper>\n <div class=\"button-group-item\">\n <PlBtnGroup\n v-model=\"settings.normalizationDirection\"\n label=\"Normalize by\"\n :options=\"NORMALIZATION_DIRECTION\"\n :compact=\"true\"\n />\n </div>\n <div class=\"button-group-item\">\n <PlBtnGroup\n v-model=\"settings.normalizationMethod\"\n label=\"Normalization method\"\n :options=\"NORMALIZATION_METHOD\"\n :compact=\"true\"\n />\n </div>\n <div class=\"checkbox-item\">\n <PlCheckbox v-model=\"settings.aggregateByX\"/>\n <span>Aggregate X groups</span>\n </div>\n <div class=\"checkbox-item\">\n <PlCheckbox v-model=\"settings.aggregateByY\"/>\n <span>Aggregate Y groups</span>\n </div>\n <div class=\"button-group-item\">\n <PlBtnGroup\n v-model=\"settings.aggregationMethod\"\n label=\"Aggregation method\"\n :options=\"AGGREGATION_METHOD\"\n :compact=\"true\"\n />\n </div>\n <div class=\"button-group-item\" :style=\"{display: 'flex', alignItems: 'end'}\">\n <PlBtnGroup\n v-model=\"NAValueOption\"\n label=\"Treat NA value as:\"\n :options=\"NA_VALUE_OPTIONS\"\n :compact=\"true\"\n @update:modelValue=\"(value:unknown) => {\n if (value === 'custom') {\n settings.NAValueAs = customNA;\n } else {\n settings.NAValueAs = value as number|null;\n }\n }\"\n />\n <PlNumberField\n v-model=\"customNA\"\n :style=\"{height: '33px', marginLeft: '16px', width: '75px'}\"\n :disabled=\"NAValueOption !== 'custom'\"\n label=\"NA value\"\n :useIncrementButtons=\"false\"\n @update:modelValue=\"(value:unknown) => {\n if (value !== undefined) {\n settings.NAValueAs = value as number;\n }\n }\"\n />\n </div>\n</template>\n"],"names":["layer","store","useStore","settings","computed","optionsState","inputGuide","dataSource","_a","savedDataValuePalette","palettesOpen","ref","palette","DEFAULT_CONTINUOUS_PALETTE","onPaletteSelect","value","createContinuousMappingFromPalette","NORMALIZATION_DIRECTION","NORMALIZATION_METHOD","NA_VALUE_OPTIONS","AGGREGATION_METHOD","NAValueOption","customNA","_createVNode","MultiselectButton","_unref","PALETTE_MAP","_createBlock","FormWrapper","PalettesForm","_createElementVNode","_hoisted_1","PlBtnGroup","_cache","$event","_hoisted_2","_hoisted_3","PlCheckbox","_hoisted_4","_hoisted_5","_hoisted_6","PlNumberField"],"mappings":";;;;;;;;;;;GAkBMA,IAAsB;;;AAD5B,UAAMC,IAAQC,EAAA,GAERC,IAAWC,EAAS,MAAMH,EAAM,MAAM,SAAS,eAAeD,CAAK,CAAC,GACpEK,IAAeD,EAAS,MAAMH,EAAM,MAAM,SAAS,YAA8B,GACjFK,IAAaF,EAAS,MAAMH,EAAM,MAAM,WAAW,KAAmC,GAEtFM,IAAaH,EAAS,MAAA;;AAAM,cAAAI,IAAAH,EAAa,MAAM,WAAW,MAAM,eAAe,CAAC,MAApD,gBAAAG,EAAuD;AAAA,KAAc,GACjGC,IAAwBL,EAAS,MAAA;;AAAM,aAAAG,EAAW,SAAQC,IAAAP,EAAM,MAAM,SAAS,YAAYM,EAAW,KAAK,MAAjD,gBAAAC,EAAoD,UAAU;AAAA,KAAS,GAEjIE,IAAeC,EAAI,EAAK,GACxBC,IAAUD,EAAuBF,EAAsB,SAA8BI,CAA0B;AAErH,aAASC,EAAgBC,GAA0B;AACjD,MAAAH,EAAQ,QAAQG,GAChBL,EAAa,QAAQ,IACjBH,EAAW,UACbN,EAAM,MAAM,SAAS,YAAYM,EAAW,KAAK,IAAIS,EAAmCD,CAAK;AAAA,IAEjG;AAEA,UAAME,IAA0C;AAAA,MAC9C,EAAE,OAAO,QAAQ,OAAO,KAAA;AAAA,MACxB,EAAE,OAAO,WAAW,OAAO,SAAA;AAAA,MAC3B,EAAE,OAAO,QAAQ,OAAO,MAAA;AAAA,IAAM,GAE1BC,IAAuC;AAAA,MAC3C,EAAE,OAAO,WAAW,OAAO,kBAAA;AAAA,MAC3B,EAAE,OAAO,WAAW,OAAO,oBAAA;AAAA,IAAoB,GAE3CC,IAAmC;AAAA,MACvC,EAAE,OAAO,SAAS,OAAO,KAAA;AAAA,MACzB,EAAE,OAAO,iBAAiB,OAAO,SAAA;AAAA,IAAS,GAEtCC,IAAqC;AAAA,MACzC,EAAE,OAAO,QAAQ,OAAO,OAAA;AAAA,MACxB,EAAE,OAAO,OAAO,OAAO,MAAA;AAAA,MACvB,EAAE,OAAO,OAAO,OAAO,MAAA;AAAA,MACvB,EAAE,OAAO,UAAU,OAAO,SAAA;AAAA,IAAS,GAG/BC,IAAgBV,EAAIR,EAAS,MAAM,cAAc,OAAO,OAAO,QAAQ,GACvEmB,IAAWX,EAAIR,EAAS,MAAM,aAAa,CAAC;;MAIhDoB,EAKEC,GAAA;AAAA,QAJA,OAAM;AAAA,QACL,OAAOC,EAAAC,CAAA,EAAYd,EAAA,KAAO,EAAE;AAAA,QAC5B,SAASA,EAAA;AAAA,QACT;AAAc,UAAAF,EAAA,QAAY;AAAA,QAAA;AAAA,MAAA;MAGrBA,EAAA,cADRiB,EAWcC,GAAA;AAAA;QATZ,OAAM;AAAA,QACN,cAAW;AAAA,QACV,uCAAYlB,EAAA,QAAY;AAAA,MAAA;mBAEzB,MAIE;AAAA,UAJFa,EAIEM,GAAA;AAAA,YAHC,UAAUjB,EAAA;AAAA,YACV,aAAaL,UAAaD,EAAA,MAAW,cAAcC,EAAA,KAAU,EAAE,SAAI,WAAA;AAAA,YACnE,UAAQO;AAAA,UAAA;;;;MAGbgB,EAOM,OAPNC,GAOM;AAAA,QANJR,EAKEE,EAAAO,CAAA,GAAA;AAAA,UAJS,YAAA7B,EAAA,MAAS;AAAA,UAAT,uBAAA8B,EAAA,CAAA,MAAAA,EAAA,CAAA,IAAA,CAAAC,MAAA/B,EAAA,MAAS,yBAAsB+B;AAAA,UACxC,OAAM;AAAA,UACL,SAASjB;AAAA,UACT,SAAS;AAAA,QAAA;;MAGda,EAOM,OAPNK,GAOM;AAAA,QANJZ,EAKEE,EAAAO,CAAA,GAAA;AAAA,UAJS,YAAA7B,EAAA,MAAS;AAAA,UAAT,uBAAA8B,EAAA,CAAA,MAAAA,EAAA,CAAA,IAAA,CAAAC,MAAA/B,EAAA,MAAS,sBAAmB+B;AAAA,UACrC,OAAM;AAAA,UACL,SAAShB;AAAA,UACT,SAAS;AAAA,QAAA;;MAGdY,EAGM,OAHNM,GAGM;AAAA,QAFJb,EAA6CE,EAAAY,CAAA,GAAA;AAAA,UAAxB,YAAAlC,EAAA,MAAS;AAAA,UAAT,uBAAA8B,EAAA,CAAA,MAAAA,EAAA,CAAA,IAAA,CAAAC,MAAA/B,EAAA,MAAS,eAAY+B;AAAA,QAAA;QAC1CD,EAAA,EAAA,MAAAA,EAAA,EAAA,IAAAH,EAA+B,cAAzB,sBAAkB,EAAA;AAAA,MAAA;MAE1BA,EAGM,OAHNQ,GAGM;AAAA,QAFJf,EAA6CE,EAAAY,CAAA,GAAA;AAAA,UAAxB,YAAAlC,EAAA,MAAS;AAAA,UAAT,uBAAA8B,EAAA,CAAA,MAAAA,EAAA,CAAA,IAAA,CAAAC,MAAA/B,EAAA,MAAS,eAAY+B;AAAA,QAAA;QAC1CD,EAAA,EAAA,MAAAA,EAAA,EAAA,IAAAH,EAA+B,cAAzB,sBAAkB,EAAA;AAAA,MAAA;MAE1BA,EAOM,OAPNS,GAOM;AAAA,QANJhB,EAKEE,EAAAO,CAAA,GAAA;AAAA,UAJS,YAAA7B,EAAA,MAAS;AAAA,UAAT,uBAAA8B,EAAA,CAAA,MAAAA,EAAA,CAAA,IAAA,CAAAC,MAAA/B,EAAA,MAAS,oBAAiB+B;AAAA,UACnC,OAAM;AAAA,UACL,SAASd;AAAA,UACT,SAAS;AAAA,QAAA;;MAGdU,EA0BM,OA1BNU,GA0BM;AAAA,QAzBJjB,EAYEE,EAAAO,CAAA,GAAA;AAAA,sBAXSX,EAAA;AAAA;mCAAAA,EAAa,QAAAa;AAAA,6BAIDnB,MAAa;cAAmBA,MAAK,WAA2BZ,EAAA,MAAS,YAAYmB,EAAA,QAAqCnB,EAAA,MAAS,YAAYY;AAAA;;UAHpK,OAAM;AAAA,UACL,SAASI;AAAA,UACT,SAAS;AAAA,QAAA;QASZI,EAWEE,EAAAgB,CAAA,GAAA;AAAA,sBAVSnB,EAAA;AAAA;mCAAAA,EAAQ,QAAAY;AAAA,+BAKInB,MAAa;AAAmB,cAAAA,MAAU,WAAuBZ,EAAA,MAAS,YAAYY;AAAA;;UAJ1G,OAAO,EAAA,QAAA,QAAA,YAAA,QAAA,OAAA,OAAA;AAAA,UACP,UAAUM,EAAA,UAAa;AAAA,UACxB,OAAM;AAAA,UACL,qBAAqB;AAAA,QAAA;;;;;"}
@@ -1,4 +1,4 @@
1
- import { defineComponent as g, computed as r, reactive as P, ref as f, createElementBlock as _, openBlock as s, Fragment as S, renderList as y, createElementVNode as C, createVNode as T, createBlock as B, createCommentVNode as k, toDisplayString as L, unref as x, withCtx as F } from "vue";
1
+ import { defineComponent as g, computed as r, reactive as y, ref as f, createElementBlock as _, openBlock as s, Fragment as S, renderList as P, createElementVNode as C, createVNode as T, createBlock as k, createCommentVNode as B, toDisplayString as L, unref as x, withCtx as F } from "vue";
2
2
  import { useStore as N } from "../../../../store.js";
3
3
  import { DEFAULT_CATEGORICAL_PALETTE as $, DEFAULT_CONTINUOUS_PALETTE as I, PALETTE_MAP as O } from "../../../../constantsAesthetic.js";
4
4
  import { createContinuousMappingFromPalette as U } from "../../../../dataBindAes.js";
@@ -13,7 +13,7 @@ const V = { class: "section-title" }, q = /* @__PURE__ */ g({
13
13
  ), i = r(() => {
14
14
  const n = p.value.components.annotationsX.selectorStates.map((t) => t.selectedSource), e = p.value.components.annotationsY.selectorStates.map((t) => t.selectedSource);
15
15
  return [...n, ...e];
16
- }), c = r(() => i.value.reduce((n, e) => (n[e] = A.value.getSourceInfo(e), n), {})), a = P(i.value.reduce((n, e) => {
16
+ }), c = r(() => i.value.reduce((n, e) => (n[e] = A.value.getSourceInfo(e), n), {})), a = y(i.value.reduce((n, e) => {
17
17
  var v, d;
18
18
  const u = ((v = c.value[e]) == null ? void 0 : v.type) === "String" ? $ : I;
19
19
  return n[e] = ((d = o.value.reactive.dataBindAes[e]) == null ? void 0 : d.palette) ?? u, n;
@@ -22,7 +22,7 @@ const V = { class: "section-title" }, q = /* @__PURE__ */ g({
22
22
  const e = m.value;
23
23
  e && (a[e] = n, o.value.reactive.dataBindAes[e] = U(n)), l.value = e;
24
24
  }
25
- return (n, e) => (s(!0), _(S, null, y(i.value, (t) => (s(), _(S, null, [
25
+ return (n, e) => (s(!0), _(S, null, P(i.value, (t) => (s(), _(S, { key: t }, [
26
26
  C("div", V, [
27
27
  C("span", null, L(c.value[t].label), 1)
28
28
  ]),
@@ -35,7 +35,7 @@ const V = { class: "section-title" }, q = /* @__PURE__ */ g({
35
35
  l.value = t, m.value = t;
36
36
  }
37
37
  }, null, 8, ["title", "palette", "onButtonClick"]),
38
- l.value === t ? (s(), B(G, {
38
+ l.value === t ? (s(), k(G, {
39
39
  key: 0,
40
40
  title: "Color Palette",
41
41
  "back-title": "Color mapping",
@@ -49,8 +49,8 @@ const V = { class: "section-title" }, q = /* @__PURE__ */ g({
49
49
  }, null, 8, ["selected", "categorical"])
50
50
  ]),
51
51
  _: 2
52
- }, 1024)) : k("", !0)
53
- ], 64))), 256));
52
+ }, 1024)) : B("", !0)
53
+ ], 64))), 128));
54
54
  }
55
55
  });
56
56
  export {