@milaboratories/graph-maker 1.2.5 → 1.2.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/GraphMakerPlugin.js +5 -0
- package/dist/GraphMakerPlugin.js.map +1 -0
- package/dist/GraphMakerPlugin.vue.d.ts +37 -0
- package/dist/GraphMakerPlugin.vue.d.ts.map +1 -0
- package/dist/GraphMakerPlugin.vue2.js +61 -0
- package/dist/GraphMakerPlugin.vue2.js.map +1 -0
- package/dist/_virtual/_plugin-vue_export-helper.js +5 -9
- package/dist/assets/ui.css +1 -1
- package/dist/components/AesButton.js +5 -0
- package/dist/components/AesButton.js.map +1 -0
- package/dist/components/AesButton.vue2.js +41 -5
- package/dist/components/AesButton.vue2.js.map +1 -1
- package/dist/components/AesSettings/AesDataMappingContinuous.js +5 -0
- package/dist/components/AesSettings/AesDataMappingContinuous.js.map +1 -0
- package/dist/components/AesSettings/AesDataMappingContinuous.vue2.js +142 -5
- package/dist/components/AesSettings/AesDataMappingContinuous.vue2.js.map +1 -1
- package/dist/components/AesSettings/AesDataMappingDiscrete.js +7 -0
- package/dist/components/AesSettings/AesDataMappingDiscrete.js.map +1 -0
- package/dist/components/AesSettings/AesDataMappingDiscrete.style.js +7 -0
- package/dist/components/AesSettings/AesDataMappingDiscrete.style.js.map +1 -0
- package/dist/components/AesSettings/AesDataMappingDiscrete.vue.css +1 -0
- package/dist/components/AesSettings/AesDataMappingDiscrete.vue2.js +208 -230
- package/dist/components/AesSettings/AesDataMappingDiscrete.vue2.js.map +1 -1
- package/dist/components/AesSettings/DiscreteRow.js +7 -0
- package/dist/components/AesSettings/DiscreteRow.js.map +1 -0
- package/dist/components/AesSettings/DiscreteRow.style.js +12 -0
- package/dist/components/AesSettings/DiscreteRow.style.js.map +1 -0
- package/dist/components/AesSettings/DiscreteRow.vue.css +1 -0
- package/dist/components/AesSettings/DiscreteRow.vue2.js +116 -159
- package/dist/components/AesSettings/DiscreteRow.vue2.js.map +1 -1
- package/dist/components/AesSettings/FixedColorsList.js +5 -0
- package/dist/components/AesSettings/FixedColorsList.js.map +1 -0
- package/dist/components/AesSettings/FixedColorsList.vue2.js +28 -5
- package/dist/components/AesSettings/FixedColorsList.vue2.js.map +1 -1
- package/dist/components/AesSettings/FixedDotShapeList.js +5 -0
- package/dist/components/AesSettings/FixedDotShapeList.js.map +1 -0
- package/dist/components/AesSettings/FixedDotShapeList.vue2.js +24 -5
- package/dist/components/AesSettings/FixedDotShapeList.vue2.js.map +1 -1
- package/dist/components/AesSettings/FixedLineTypeList.js +5 -0
- package/dist/components/AesSettings/FixedLineTypeList.js.map +1 -0
- package/dist/components/AesSettings/FixedLineTypeList.vue2.js +29 -5
- package/dist/components/AesSettings/FixedLineTypeList.vue2.js.map +1 -1
- package/dist/components/AesSettings/FormWrapper.js +5 -0
- package/dist/components/AesSettings/FormWrapper.js.map +1 -0
- package/dist/components/AesSettings/FormWrapper.vue2.js +25 -5
- package/dist/components/AesSettings/FormWrapper.vue2.js.map +1 -1
- package/dist/components/AesSettings/PalettesForm.js +5 -0
- package/dist/components/AesSettings/PalettesForm.js.map +1 -0
- package/dist/components/AesSettings/PalettesForm.vue2.js +73 -5
- package/dist/components/AesSettings/PalettesForm.vue2.js.map +1 -1
- package/dist/components/BtnIconGroup.js +5 -0
- package/dist/components/BtnIconGroup.js.map +1 -0
- package/dist/components/BtnIconGroup.vue2.js +27 -5
- package/dist/components/BtnIconGroup.vue2.js.map +1 -1
- package/dist/components/Chart.js +5 -0
- package/dist/components/Chart.js.map +1 -0
- package/dist/components/Chart.vue2.js +233 -5
- package/dist/components/Chart.vue2.js.map +1 -1
- package/dist/components/ChartErrorNotificationAlert.js +7 -0
- package/dist/components/ChartErrorNotificationAlert.js.map +1 -0
- package/dist/components/ChartErrorNotificationAlert.style.js +9 -0
- package/dist/components/ChartErrorNotificationAlert.style.js.map +1 -0
- package/dist/components/ChartErrorNotificationAlert.vue.css +1 -0
- package/dist/components/ChartErrorNotificationAlert.vue2.js +44 -77
- package/dist/components/ChartErrorNotificationAlert.vue2.js.map +1 -1
- package/dist/components/ChartTruncationWarningAlert.js +7 -0
- package/dist/components/ChartTruncationWarningAlert.js.map +1 -0
- package/dist/components/ChartTruncationWarningAlert.style.js +4 -0
- package/dist/components/ChartTruncationWarningAlert.style.js.map +1 -0
- package/dist/components/ChartTruncationWarningAlert.vue.css +1 -0
- package/dist/components/ChartTruncationWarningAlert.vue2.js +37 -53
- package/dist/components/ChartTruncationWarningAlert.vue2.js.map +1 -1
- package/dist/components/CollapsableBlock.js +5 -0
- package/dist/components/CollapsableBlock.js.map +1 -0
- package/dist/components/CollapsableBlock.vue2.js +30 -5
- package/dist/components/CollapsableBlock.vue2.js.map +1 -1
- package/dist/components/DendroTable.js +5 -0
- package/dist/components/DendroTable.js.map +1 -0
- package/dist/components/DendroTable.vue2.js +86 -5
- package/dist/components/DendroTable.vue2.js.map +1 -1
- package/dist/components/DendroTooltip.js +5 -0
- package/dist/components/DendroTooltip.js.map +1 -0
- package/dist/components/DendroTooltip.vue2.js +102 -5
- package/dist/components/DendroTooltip.vue2.js.map +1 -1
- package/dist/components/DoubleContourTemp.js +11 -0
- package/dist/components/DoubleContourTemp.js.map +1 -0
- package/dist/components/DoubleContourTemp.vue2.js +4 -7
- package/dist/components/DoubleContourTemp.vue2.js.map +1 -1
- package/dist/components/DragAndDrop/DnDBasketChip.js +5 -0
- package/dist/components/DragAndDrop/DnDBasketChip.js.map +1 -0
- package/dist/components/DragAndDrop/DnDBasketChip.vue2.js +57 -5
- package/dist/components/DragAndDrop/DnDBasketChip.vue2.js.map +1 -1
- package/dist/components/DragAndDrop/DnDRangeChip.js +5 -0
- package/dist/components/DragAndDrop/DnDRangeChip.js.map +1 -0
- package/dist/components/DragAndDrop/DnDRangeChip.vue2.js +53 -5
- package/dist/components/DragAndDrop/DnDRangeChip.vue2.js.map +1 -1
- package/dist/components/DragAndDrop/DndBasket.js +5 -0
- package/dist/components/DragAndDrop/DndBasket.js.map +1 -0
- package/dist/components/DragAndDrop/DndBasket.vue2.js +161 -5
- package/dist/components/DragAndDrop/DndBasket.vue2.js.map +1 -1
- package/dist/components/DragAndDrop/DndChip.js +5 -0
- package/dist/components/DragAndDrop/DndChip.js.map +1 -0
- package/dist/components/DragAndDrop/DndChip.vue2.js +34 -5
- package/dist/components/DragAndDrop/DndChip.vue2.js.map +1 -1
- package/dist/components/DragAndDrop/DndDoubleChip.js +5 -0
- package/dist/components/DragAndDrop/DndDoubleChip.js.map +1 -0
- package/dist/components/DragAndDrop/DndDoubleChip.vue2.js +75 -5
- package/dist/components/DragAndDrop/DndDoubleChip.vue2.js.map +1 -1
- package/dist/components/GraphStatusScreen.js +7 -0
- package/dist/components/GraphStatusScreen.js.map +1 -0
- package/dist/components/GraphStatusScreen.style.js +7 -0
- package/dist/components/GraphStatusScreen.style.js.map +1 -0
- package/dist/components/GraphStatusScreen.vue.css +1 -0
- package/dist/components/GraphStatusScreen.vue2.js +44 -65
- package/dist/components/GraphStatusScreen.vue2.js.map +1 -1
- package/dist/components/LassoControls/index.js +7 -0
- package/dist/components/LassoControls/index.js.map +1 -0
- package/dist/components/LassoControls/index.style.js +15 -0
- package/dist/components/LassoControls/index.style.js.map +1 -0
- package/dist/components/LassoControls/index.vue.css +1 -0
- package/dist/components/LassoControls/index.vue2.js +101 -133
- package/dist/components/LassoControls/index.vue2.js.map +1 -1
- package/dist/components/MultiselectButton.js +5 -0
- package/dist/components/MultiselectButton.js.map +1 -0
- package/dist/components/MultiselectButton.vue2.js +55 -5
- package/dist/components/MultiselectButton.vue2.js.map +1 -1
- package/dist/components/PanelModal.js +5 -0
- package/dist/components/PanelModal.js.map +1 -0
- package/dist/components/PanelModal.vue2.js +29 -5
- package/dist/components/PanelModal.vue2.js.map +1 -1
- package/dist/components/PlColorSlider.js +5 -0
- package/dist/components/PlColorSlider.js.map +1 -0
- package/dist/components/PlColorSlider.vue2.js +63 -5
- package/dist/components/PlColorSlider.vue2.js.map +1 -1
- package/dist/components/PlColorSliderThumb.js +5 -0
- package/dist/components/PlColorSliderThumb.js.map +1 -0
- package/dist/components/PlColorSliderThumb.vue2.js +70 -5
- package/dist/components/PlColorSliderThumb.vue2.js.map +1 -1
- package/dist/components/Popup.js +5 -0
- package/dist/components/Popup.js.map +1 -0
- package/dist/components/Popup.vue2.js +53 -5
- package/dist/components/Popup.vue2.js.map +1 -1
- package/dist/components/ReorderForm.js +7 -0
- package/dist/components/ReorderForm.js.map +1 -0
- package/dist/components/ReorderForm.style.js +7 -0
- package/dist/components/ReorderForm.style.js.map +1 -0
- package/dist/components/{ReorderForm.css → ReorderForm.vue.css} +1 -1
- package/dist/components/ReorderForm.vue2.js +48 -53
- package/dist/components/ReorderForm.vue2.js.map +1 -1
- package/dist/components/SettingsTabs/icons/AxesIcon.js +26 -0
- package/dist/components/SettingsTabs/icons/AxesIcon.js.map +1 -0
- package/dist/components/SettingsTabs/icons/DeleteChartIcon.js +16 -0
- package/dist/components/SettingsTabs/icons/DeleteChartIcon.js.map +1 -0
- package/dist/components/SettingsTabs/icons/ExportIcon.js +27 -0
- package/dist/components/SettingsTabs/icons/ExportIcon.js.map +1 -0
- package/dist/components/SettingsTabs/icons/LayersIcon.js +29 -0
- package/dist/components/SettingsTabs/icons/LayersIcon.js.map +1 -0
- package/dist/components/SettingsTabs/icons/LinkIcon.js +16 -0
- package/dist/components/SettingsTabs/icons/LinkIcon.js.map +1 -0
- package/dist/components/SettingsTabs/icons/LogIcon.js +5 -0
- package/dist/components/SettingsTabs/icons/LogIcon.js.map +1 -0
- package/dist/components/SettingsTabs/icons/LogIcon.vue2.js +11 -5
- package/dist/components/SettingsTabs/icons/LogIcon.vue2.js.map +1 -1
- package/dist/components/SettingsTabs/icons/SettingsIcon.js +5 -0
- package/dist/components/SettingsTabs/icons/SettingsIcon.js.map +1 -0
- package/dist/components/SettingsTabs/icons/SettingsIcon.vue2.js +11 -5
- package/dist/components/SettingsTabs/icons/SettingsIcon.vue2.js.map +1 -1
- package/dist/components/SettingsTabs/index.js +5 -0
- package/dist/components/SettingsTabs/index.js.map +1 -0
- package/dist/components/SettingsTabs/index.vue2.js +83 -5
- package/dist/components/SettingsTabs/index.vue2.js.map +1 -1
- package/dist/components/TransitionSlidePanel.js +6 -0
- package/dist/components/TransitionSlidePanel.js.map +1 -0
- package/dist/components/{TransitionSlidePanel.css → TransitionSlidePanel.style.css} +1 -1
- package/dist/components/TransitionSlidePanel.vue2.js +23 -0
- package/dist/components/TransitionSlidePanel.vue2.js.map +1 -0
- package/dist/components/Zoom/ZoomInput.js +5 -0
- package/dist/components/Zoom/ZoomInput.js.map +1 -0
- package/dist/components/Zoom/ZoomInput.vue2.js +42 -5
- package/dist/components/Zoom/ZoomInput.vue2.js.map +1 -1
- package/dist/components/Zoom/index.js +5 -0
- package/dist/components/Zoom/index.js.map +1 -0
- package/dist/components/Zoom/index.vue2.js +39 -5
- package/dist/components/Zoom/index.vue2.js.map +1 -1
- package/dist/composition/useComponent.js +11 -15
- package/dist/composition/useComponent.js.map +1 -1
- package/dist/constantsAesthetic.js +357 -170
- package/dist/constantsAesthetic.js.map +1 -1
- package/dist/constantsCommon.js +479 -462
- package/dist/constantsCommon.js.map +1 -1
- package/dist/dataBindAes.js +155 -186
- package/dist/dataBindAes.js.map +1 -1
- package/dist/forms/AnnotationsForm.js +13 -0
- package/dist/forms/AnnotationsForm.js.map +1 -0
- package/dist/forms/AxesSettingsForm/BubbleAxesSettingsForm.js +5 -0
- package/dist/forms/AxesSettingsForm/BubbleAxesSettingsForm.js.map +1 -0
- package/dist/forms/AxesSettingsForm/BubbleAxesSettingsForm.vue2.js +239 -5
- package/dist/forms/AxesSettingsForm/BubbleAxesSettingsForm.vue2.js.map +1 -1
- package/dist/forms/AxesSettingsForm/DiscreteAxesSettingsForm.js +5 -0
- package/dist/forms/AxesSettingsForm/DiscreteAxesSettingsForm.js.map +1 -0
- package/dist/forms/AxesSettingsForm/DiscreteAxesSettingsForm.vue2.js +438 -5
- package/dist/forms/AxesSettingsForm/DiscreteAxesSettingsForm.vue2.js.map +1 -1
- package/dist/forms/AxesSettingsForm/HeatmapAxesSettingsForm.js +5 -0
- package/dist/forms/AxesSettingsForm/HeatmapAxesSettingsForm.js.map +1 -0
- package/dist/forms/AxesSettingsForm/HeatmapAxesSettingsForm.vue2.js +418 -5
- package/dist/forms/AxesSettingsForm/HeatmapAxesSettingsForm.vue2.js.map +1 -1
- package/dist/forms/AxesSettingsForm/HistogramAxesSettingsForm.js +5 -0
- package/dist/forms/AxesSettingsForm/HistogramAxesSettingsForm.js.map +1 -0
- package/dist/forms/AxesSettingsForm/HistogramAxesSettingsForm.vue2.js +295 -5
- package/dist/forms/AxesSettingsForm/HistogramAxesSettingsForm.vue2.js.map +1 -1
- package/dist/forms/AxesSettingsForm/ScatterplotAxesSettingsForm.js +5 -0
- package/dist/forms/AxesSettingsForm/ScatterplotAxesSettingsForm.js.map +1 -0
- package/dist/forms/AxesSettingsForm/ScatterplotAxesSettingsForm.vue2.js +472 -5
- package/dist/forms/AxesSettingsForm/ScatterplotAxesSettingsForm.vue2.js.map +1 -1
- package/dist/forms/AxesSettingsForm/index.js +5 -0
- package/dist/forms/AxesSettingsForm/index.js.map +1 -0
- package/dist/forms/AxesSettingsForm/index.vue2.js +23 -5
- package/dist/forms/AxesSettingsForm/index.vue2.js.map +1 -1
- package/dist/forms/DataMappingForm/BubbleForm.js +5 -0
- package/dist/forms/DataMappingForm/BubbleForm.js.map +1 -0
- package/dist/forms/DataMappingForm/BubbleForm.vue2.js +100 -5
- package/dist/forms/DataMappingForm/BubbleForm.vue2.js.map +1 -1
- package/dist/forms/DataMappingForm/DendroForm.js +5 -0
- package/dist/forms/DataMappingForm/DendroForm.js.map +1 -0
- package/dist/forms/DataMappingForm/DendroForm.vue2.js +196 -5
- package/dist/forms/DataMappingForm/DendroForm.vue2.js.map +1 -1
- package/dist/forms/DataMappingForm/DiscreteForm.js +5 -0
- package/dist/forms/DataMappingForm/DiscreteForm.js.map +1 -0
- package/dist/forms/DataMappingForm/DiscreteForm.vue2.js +74 -5
- package/dist/forms/DataMappingForm/DiscreteForm.vue2.js.map +1 -1
- package/dist/forms/DataMappingForm/HeatmapForm.js +5 -0
- package/dist/forms/DataMappingForm/HeatmapForm.js.map +1 -0
- package/dist/forms/DataMappingForm/HeatmapForm.vue2.js +85 -5
- package/dist/forms/DataMappingForm/HeatmapForm.vue2.js.map +1 -1
- package/dist/forms/DataMappingForm/HistogramForm.js +5 -0
- package/dist/forms/DataMappingForm/HistogramForm.js.map +1 -0
- package/dist/forms/DataMappingForm/HistogramForm.vue2.js +65 -5
- package/dist/forms/DataMappingForm/HistogramForm.vue2.js.map +1 -1
- package/dist/forms/DataMappingForm/Layout/FormLayout.js +5 -0
- package/dist/forms/DataMappingForm/Layout/FormLayout.js.map +1 -0
- package/dist/forms/DataMappingForm/Layout/FormLayout.vue2.js +25 -5
- package/dist/forms/DataMappingForm/Layout/FormLayout.vue2.js.map +1 -1
- package/dist/forms/DataMappingForm/Layout/MandatoryOptions.js +5 -0
- package/dist/forms/DataMappingForm/Layout/MandatoryOptions.js.map +1 -0
- package/dist/forms/DataMappingForm/Layout/MandatoryOptions.vue2.js +27 -5
- package/dist/forms/DataMappingForm/Layout/MandatoryOptions.vue2.js.map +1 -1
- package/dist/forms/DataMappingForm/Layout/OptionsList.js +7 -0
- package/dist/forms/DataMappingForm/Layout/OptionsList.js.map +1 -0
- package/dist/forms/DataMappingForm/Layout/OptionsList.style.js +4 -0
- package/dist/forms/DataMappingForm/Layout/OptionsList.style.js.map +1 -0
- package/dist/forms/DataMappingForm/Layout/OptionsList.vue2.js +45 -60
- package/dist/forms/DataMappingForm/Layout/OptionsList.vue2.js.map +1 -1
- package/dist/forms/DataMappingForm/ScatterplotForm.js +5 -0
- package/dist/forms/DataMappingForm/ScatterplotForm.js.map +1 -0
- package/dist/forms/DataMappingForm/ScatterplotForm.vue2.js +101 -5
- package/dist/forms/DataMappingForm/ScatterplotForm.vue2.js.map +1 -1
- package/dist/forms/DataMappingForm/ScatterplotUmapForm.js +5 -0
- package/dist/forms/DataMappingForm/ScatterplotUmapForm.js.map +1 -0
- package/dist/forms/DataMappingForm/ScatterplotUmapForm.vue2.js +95 -5
- package/dist/forms/DataMappingForm/ScatterplotUmapForm.vue2.js.map +1 -1
- package/dist/forms/DataMappingForm/index.js +5 -0
- package/dist/forms/DataMappingForm/index.js.map +1 -0
- package/dist/forms/DataMappingForm/index.vue2.js +27 -5
- package/dist/forms/DataMappingForm/index.vue2.js.map +1 -1
- package/dist/forms/DataMappingForm/useBaskets.js +106 -139
- package/dist/forms/DataMappingForm/useBaskets.js.map +1 -1
- package/dist/forms/DataMappingForm/utils.js +102 -131
- package/dist/forms/DataMappingForm/utils.js.map +1 -1
- package/dist/forms/LayersForm/AesSelector.js +5 -0
- package/dist/forms/LayersForm/AesSelector.js.map +1 -0
- package/dist/forms/LayersForm/AesSelector.vue2.js +214 -5
- package/dist/forms/LayersForm/AesSelector.vue2.js.map +1 -1
- package/dist/forms/LayersForm/DotSizeSelector.js +6 -0
- package/dist/forms/LayersForm/DotSizeSelector.js.map +1 -0
- package/dist/forms/LayersForm/DotSizeSelector.vue2.js +104 -0
- package/dist/forms/LayersForm/DotSizeSelector.vue2.js.map +1 -0
- package/dist/forms/LayersForm/Layer/Bubble.js +5 -0
- package/dist/forms/LayersForm/Layer/Bubble.js.map +1 -0
- package/dist/forms/LayersForm/Layer/Bubble.vue2.js +142 -5
- package/dist/forms/LayersForm/Layer/Bubble.vue2.js.map +1 -1
- package/dist/forms/LayersForm/Layer/Dendro.js +5 -0
- package/dist/forms/LayersForm/Layer/Dendro.js.map +1 -0
- package/dist/forms/LayersForm/Layer/Dendro.vue2.js +111 -5
- package/dist/forms/LayersForm/Layer/Dendro.vue2.js.map +1 -1
- package/dist/forms/LayersForm/Layer/discrete/Bar.js +5 -0
- package/dist/forms/LayersForm/Layer/discrete/Bar.js.map +1 -0
- package/dist/forms/LayersForm/Layer/discrete/Bar.vue2.js +62 -5
- package/dist/forms/LayersForm/Layer/discrete/Bar.vue2.js.map +1 -1
- package/dist/forms/LayersForm/Layer/discrete/BinnedDots.js +5 -0
- package/dist/forms/LayersForm/Layer/discrete/BinnedDots.js.map +1 -0
- package/dist/forms/LayersForm/Layer/discrete/BinnedDots.vue2.js +56 -5
- package/dist/forms/LayersForm/Layer/discrete/BinnedDots.vue2.js.map +1 -1
- package/dist/forms/LayersForm/Layer/discrete/Boxplot.js +5 -0
- package/dist/forms/LayersForm/Layer/discrete/Boxplot.js.map +1 -0
- package/dist/forms/LayersForm/Layer/discrete/Boxplot.vue2.js +81 -5
- package/dist/forms/LayersForm/Layer/discrete/Boxplot.vue2.js.map +1 -1
- package/dist/forms/LayersForm/Layer/discrete/Errorbar.js +5 -0
- package/dist/forms/LayersForm/Layer/discrete/Errorbar.js.map +1 -0
- package/dist/forms/LayersForm/Layer/discrete/Errorbar.vue2.js +98 -5
- package/dist/forms/LayersForm/Layer/discrete/Errorbar.vue2.js.map +1 -1
- package/dist/forms/LayersForm/Layer/discrete/JitteredDots.js +5 -0
- package/dist/forms/LayersForm/Layer/discrete/JitteredDots.js.map +1 -0
- package/dist/forms/LayersForm/Layer/discrete/JitteredDots.vue2.js +59 -5
- package/dist/forms/LayersForm/Layer/discrete/JitteredDots.vue2.js.map +1 -1
- package/dist/forms/LayersForm/Layer/discrete/Line.js +5 -0
- package/dist/forms/LayersForm/Layer/discrete/Line.js.map +1 -0
- package/dist/forms/LayersForm/Layer/discrete/Line.vue2.js +96 -5
- package/dist/forms/LayersForm/Layer/discrete/Line.vue2.js.map +1 -1
- package/dist/forms/LayersForm/Layer/discrete/Logo.js +5 -0
- package/dist/forms/LayersForm/Layer/discrete/Logo.js.map +1 -0
- package/dist/forms/LayersForm/Layer/discrete/Logo.vue2.js +30 -5
- package/dist/forms/LayersForm/Layer/discrete/Logo.vue2.js.map +1 -1
- package/dist/forms/LayersForm/Layer/discrete/Sina.js +5 -0
- package/dist/forms/LayersForm/Layer/discrete/Sina.js.map +1 -0
- package/dist/forms/LayersForm/Layer/discrete/Sina.vue2.js +55 -5
- package/dist/forms/LayersForm/Layer/discrete/Sina.vue2.js.map +1 -1
- package/dist/forms/LayersForm/Layer/discrete/StackedArea.js +5 -0
- package/dist/forms/LayersForm/Layer/discrete/StackedArea.js.map +1 -0
- package/dist/forms/LayersForm/Layer/discrete/StackedArea.vue2.js +85 -5
- package/dist/forms/LayersForm/Layer/discrete/StackedArea.vue2.js.map +1 -1
- package/dist/forms/LayersForm/Layer/discrete/StackedBar.js +5 -0
- package/dist/forms/LayersForm/Layer/discrete/StackedBar.js.map +1 -0
- package/dist/forms/LayersForm/Layer/discrete/StackedBar.vue2.js +66 -5
- package/dist/forms/LayersForm/Layer/discrete/StackedBar.vue2.js.map +1 -1
- package/dist/forms/LayersForm/Layer/discrete/Violin.js +5 -0
- package/dist/forms/LayersForm/Layer/discrete/Violin.js.map +1 -0
- package/dist/forms/LayersForm/Layer/discrete/Violin.vue2.js +89 -5
- package/dist/forms/LayersForm/Layer/discrete/Violin.vue2.js.map +1 -1
- package/dist/forms/LayersForm/Layer/discrete/utils.js +6 -7
- package/dist/forms/LayersForm/Layer/discrete/utils.js.map +1 -1
- package/dist/forms/LayersForm/Layer/heatmap/Heatmap.js +5 -0
- package/dist/forms/LayersForm/Layer/heatmap/Heatmap.js.map +1 -0
- package/dist/forms/LayersForm/Layer/heatmap/Heatmap.vue2.js +127 -5
- package/dist/forms/LayersForm/Layer/heatmap/Heatmap.vue2.js.map +1 -1
- package/dist/forms/LayersForm/Layer/heatmap/HeatmapAnnotations.js +5 -0
- package/dist/forms/LayersForm/Layer/heatmap/HeatmapAnnotations.js.map +1 -0
- package/dist/forms/LayersForm/Layer/heatmap/HeatmapAnnotations.vue2.js +55 -5
- package/dist/forms/LayersForm/Layer/heatmap/HeatmapAnnotations.vue2.js.map +1 -1
- package/dist/forms/LayersForm/Layer/heatmap/HeatmapClustered.js +5 -0
- package/dist/forms/LayersForm/Layer/heatmap/HeatmapClustered.js.map +1 -0
- package/dist/forms/LayersForm/Layer/heatmap/HeatmapClustered.vue2.js +149 -5
- package/dist/forms/LayersForm/Layer/heatmap/HeatmapClustered.vue2.js.map +1 -1
- package/dist/forms/LayersForm/Layer/histogram/Bins.js +5 -0
- package/dist/forms/LayersForm/Layer/histogram/Bins.js.map +1 -0
- package/dist/forms/LayersForm/Layer/histogram/Bins.vue2.js +49 -5
- package/dist/forms/LayersForm/Layer/histogram/Bins.vue2.js.map +1 -1
- package/dist/forms/LayersForm/Layer/scatterplot/Curve.js +5 -0
- package/dist/forms/LayersForm/Layer/scatterplot/Curve.js.map +1 -0
- package/dist/forms/LayersForm/Layer/scatterplot/Curve.vue2.js +53 -5
- package/dist/forms/LayersForm/Layer/scatterplot/Curve.vue2.js.map +1 -1
- package/dist/forms/LayersForm/Layer/scatterplot/Scatter.js +5 -0
- package/dist/forms/LayersForm/Layer/scatterplot/Scatter.js.map +1 -0
- package/dist/forms/LayersForm/Layer/scatterplot/Scatter.vue2.js +98 -5
- package/dist/forms/LayersForm/Layer/scatterplot/Scatter.vue2.js.map +1 -1
- package/dist/forms/LayersForm/Layer/scatterplot-umap/Scatter.js +5 -0
- package/dist/forms/LayersForm/Layer/scatterplot-umap/Scatter.js.map +1 -0
- package/dist/forms/LayersForm/Layer/scatterplot-umap/Scatter.vue2.js +71 -5
- package/dist/forms/LayersForm/Layer/scatterplot-umap/Scatter.vue2.js.map +1 -1
- package/dist/forms/LayersForm/index.js +5 -0
- package/dist/forms/LayersForm/index.js.map +1 -0
- package/dist/forms/LayersForm/index.vue2.js +144 -5
- package/dist/forms/LayersForm/index.vue2.js.map +1 -1
- package/dist/forms/LogForm.js +13 -0
- package/dist/forms/LogForm.js.map +1 -0
- package/dist/forms/SettingsForm.js +13 -0
- package/dist/forms/SettingsForm.js.map +1 -0
- package/dist/forms/StatisticsForm/DiscreteStatisticsForm.js +5 -0
- package/dist/forms/StatisticsForm/DiscreteStatisticsForm.js.map +1 -0
- package/dist/forms/StatisticsForm/DiscreteStatisticsForm.vue2.js +109 -5
- package/dist/forms/StatisticsForm/DiscreteStatisticsForm.vue2.js.map +1 -1
- package/dist/forms/StatisticsForm/ScatterplotStatisticsForm.js +5 -0
- package/dist/forms/StatisticsForm/ScatterplotStatisticsForm.js.map +1 -0
- package/dist/forms/StatisticsForm/ScatterplotStatisticsForm.vue2.js +22 -5
- package/dist/forms/StatisticsForm/ScatterplotStatisticsForm.vue2.js.map +1 -1
- package/dist/forms/StatisticsForm/index.js +5 -0
- package/dist/forms/StatisticsForm/index.js.map +1 -0
- package/dist/forms/StatisticsForm/index.vue2.js +17 -5
- package/dist/forms/StatisticsForm/index.vue2.js.map +1 -1
- package/dist/forms/TemplateForm.js +5 -0
- package/dist/forms/TemplateForm.js.map +1 -0
- package/dist/forms/TemplateForm.vue2.js +112 -5
- package/dist/forms/TemplateForm.vue2.js.map +1 -1
- package/dist/forms/index.js +92 -90
- package/dist/forms/index.js.map +1 -1
- package/dist/helpers.js +6 -8
- package/dist/helpers.js.map +1 -1
- package/dist/icons/AlignCenter.js +21 -0
- package/dist/icons/AlignCenter.js.map +1 -0
- package/dist/icons/AlignLeft.js +21 -0
- package/dist/icons/AlignLeft.js.map +1 -0
- package/dist/icons/AlignRight.js +21 -0
- package/dist/icons/AlignRight.js.map +1 -0
- package/dist/icons/Annotation.js +5 -0
- package/dist/icons/Annotation.js.map +1 -0
- package/dist/icons/Annotation.vue2.js +11 -5
- package/dist/icons/Annotation.vue2.js.map +1 -1
- package/dist/icons/ArrowLeft.js +22 -0
- package/dist/icons/ArrowLeft.js.map +1 -0
- package/dist/icons/BarAndErrorIcon.js +17 -0
- package/dist/icons/BarAndErrorIcon.js.map +1 -0
- package/dist/icons/BarAndLineIcon.js +17 -0
- package/dist/icons/BarAndLineIcon.js.map +1 -0
- package/dist/icons/BarIcon.js +17 -0
- package/dist/icons/BarIcon.js.map +1 -0
- package/dist/icons/BinnedDotsIcon.js +17 -0
- package/dist/icons/BinnedDotsIcon.js.map +1 -0
- package/dist/icons/BoxplotAndBinnedIcon.js +27 -0
- package/dist/icons/BoxplotAndBinnedIcon.js.map +1 -0
- package/dist/icons/BoxplotAndJitterIcon.js +27 -0
- package/dist/icons/BoxplotAndJitterIcon.js.map +1 -0
- package/dist/icons/BoxplotIcon.js +27 -0
- package/dist/icons/BoxplotIcon.js.map +1 -0
- package/dist/icons/ColorsIcon.js +36 -0
- package/dist/icons/ColorsIcon.js.map +1 -0
- package/dist/icons/DendroIcon.js +27 -0
- package/dist/icons/DendroIcon.js.map +1 -0
- package/dist/icons/Down.js +20 -0
- package/dist/icons/Down.js.map +1 -0
- package/dist/icons/EditIcon.js +24 -0
- package/dist/icons/EditIcon.js.map +1 -0
- package/dist/icons/FrameBottom.js +16 -0
- package/dist/icons/FrameBottom.js.map +1 -0
- package/dist/icons/FrameEmpty.js +16 -0
- package/dist/icons/FrameEmpty.js.map +1 -0
- package/dist/icons/FrameFull.js +21 -0
- package/dist/icons/FrameFull.js.map +1 -0
- package/dist/icons/FrameLeft.js +16 -0
- package/dist/icons/FrameLeft.js.map +1 -0
- package/dist/icons/FrameLeftBottom.js +16 -0
- package/dist/icons/FrameLeftBottom.js.map +1 -0
- package/dist/icons/HeatmapAnnotation.js +16 -0
- package/dist/icons/HeatmapAnnotation.js.map +1 -0
- package/dist/icons/HeatmapIcon.js +17 -0
- package/dist/icons/HeatmapIcon.js.map +1 -0
- package/dist/icons/JitteredDotsIcon.js +17 -0
- package/dist/icons/JitteredDotsIcon.js.map +1 -0
- package/dist/icons/LineAndBinnedIcon.js +27 -0
- package/dist/icons/LineAndBinnedIcon.js.map +1 -0
- package/dist/icons/LineAndErrorbarIcon.js +38 -0
- package/dist/icons/LineAndErrorbarIcon.js.map +1 -0
- package/dist/icons/LineAndJitterIcon.js +17 -0
- package/dist/icons/LineAndJitterIcon.js.map +1 -0
- package/dist/icons/LineIcon.js +17 -0
- package/dist/icons/LineIcon.js.map +1 -0
- package/dist/icons/LogoIcon.js +36 -0
- package/dist/icons/LogoIcon.js.map +1 -0
- package/dist/icons/MinusIcon.js +21 -0
- package/dist/icons/MinusIcon.js.map +1 -0
- package/dist/icons/PlusIcon.js +21 -0
- package/dist/icons/PlusIcon.js.map +1 -0
- package/dist/icons/Right.js +20 -0
- package/dist/icons/Right.js.map +1 -0
- package/dist/icons/Rotation0.js +22 -0
- package/dist/icons/Rotation0.js.map +1 -0
- package/dist/icons/Rotation45.js +29 -0
- package/dist/icons/Rotation45.js.map +1 -0
- package/dist/icons/Rotation90.js +29 -0
- package/dist/icons/Rotation90.js.map +1 -0
- package/dist/icons/ScatterplotIcon.js +17 -0
- package/dist/icons/ScatterplotIcon.js.map +1 -0
- package/dist/icons/SinaIcon.js +17 -0
- package/dist/icons/SinaIcon.js.map +1 -0
- package/dist/icons/StackedAreaIcon.js +17 -0
- package/dist/icons/StackedAreaIcon.js.map +1 -0
- package/dist/icons/StackedBarIcon.js +17 -0
- package/dist/icons/StackedBarIcon.js.map +1 -0
- package/dist/icons/StatisticsIcon.js +26 -0
- package/dist/icons/StatisticsIcon.js.map +1 -0
- package/dist/icons/TemplateIcon.js +26 -0
- package/dist/icons/TemplateIcon.js.map +1 -0
- package/dist/icons/ViolinAndBinnedIcon.js +26 -0
- package/dist/icons/ViolinAndBinnedIcon.js.map +1 -0
- package/dist/icons/ViolinAndJitterIcon.js +34 -0
- package/dist/icons/ViolinAndJitterIcon.js.map +1 -0
- package/dist/icons/ViolinIcon.js +34 -0
- package/dist/icons/ViolinIcon.js.map +1 -0
- package/dist/keys.js +4 -5
- package/dist/keys.js.map +1 -1
- package/dist/plugin.d.ts +57 -0
- package/dist/plugin.d.ts.map +1 -0
- package/dist/plugin.js +33 -0
- package/dist/plugin.js.map +1 -0
- package/dist/store.js +152 -206
- package/dist/store.js.map +1 -1
- package/dist/ui.d.ts +4 -0
- package/dist/ui.d.ts.map +1 -0
- package/dist/ui.js +3 -0
- package/dist/{index.vue.d.ts → ui.vue.d.ts} +1 -1
- package/dist/ui.vue.d.ts.map +1 -0
- package/dist/ui.vue2.js +371 -0
- package/dist/ui.vue2.js.map +1 -0
- package/dist/ui2.js +5 -0
- package/dist/ui2.js.map +1 -0
- package/dist/utils/addFixedOptionsToState.js +10 -13
- package/dist/utils/addFixedOptionsToState.js.map +1 -1
- package/dist/utils/calculateDiscreteGroups.js +5 -12
- package/dist/utils/calculateDiscreteGroups.js.map +1 -1
- package/dist/utils/copyJSON.js +5 -6
- package/dist/utils/copyJSON.js.map +1 -1
- package/dist/utils/createChartSettingsForRender/composeBubbleSettings.js +38 -28
- package/dist/utils/createChartSettingsForRender/composeBubbleSettings.js.map +1 -1
- package/dist/utils/createChartSettingsForRender/composeChartSettings.js +82 -99
- package/dist/utils/createChartSettingsForRender/composeChartSettings.js.map +1 -1
- package/dist/utils/createChartSettingsForRender/composeDendroSettings.js +46 -68
- package/dist/utils/createChartSettingsForRender/composeDendroSettings.js.map +1 -1
- package/dist/utils/createChartSettingsForRender/composeDiscreteSettings.js +45 -77
- package/dist/utils/createChartSettingsForRender/composeDiscreteSettings.js.map +1 -1
- package/dist/utils/createChartSettingsForRender/composeHeatmapSettings.js +61 -47
- package/dist/utils/createChartSettingsForRender/composeHeatmapSettings.js.map +1 -1
- package/dist/utils/createChartSettingsForRender/composeHistogramSettings.js +38 -38
- package/dist/utils/createChartSettingsForRender/composeHistogramSettings.js.map +1 -1
- package/dist/utils/createChartSettingsForRender/composeScatterplotSettings.js +112 -130
- package/dist/utils/createChartSettingsForRender/composeScatterplotSettings.js.map +1 -1
- package/dist/utils/createChartSettingsForRender/composeScatterplotUmapSettings.js +33 -46
- package/dist/utils/createChartSettingsForRender/composeScatterplotUmapSettings.js.map +1 -1
- package/dist/utils/createChartSettingsForRender/getAxesDataFromForms.js +38 -47
- package/dist/utils/createChartSettingsForRender/getAxesDataFromForms.js.map +1 -1
- package/dist/utils/createChartSettingsForRender/getLayersDataFromForms.js +259 -261
- package/dist/utils/createChartSettingsForRender/getLayersDataFromForms.js.map +1 -1
- package/dist/utils/getPopupHeightForFixedAesList.js +6 -9
- package/dist/utils/getPopupHeightForFixedAesList.js.map +1 -1
- package/dist/utils/getStatisticsOptions.js +21 -25
- package/dist/utils/getStatisticsOptions.js.map +1 -1
- package/dist/utils/getUsedAesInMapping.js +71 -82
- package/dist/utils/getUsedAesInMapping.js.map +1 -1
- package/dist/utils/loadDefaultSources.js +135 -136
- package/dist/utils/loadDefaultSources.js.map +1 -1
- package/dist/utils/loadUniqueValuesToSave.js +97 -99
- package/dist/utils/loadUniqueValuesToSave.js.map +1 -1
- package/dist/utils/saveToFile.js +12 -13
- package/dist/utils/saveToFile.js.map +1 -1
- package/package.json +18 -13
- package/dist/_virtual/_plugin-vue_export-helper.js.map +0 -1
- package/dist/components/AesButton.vue.js +0 -47
- package/dist/components/AesButton.vue.js.map +0 -1
- package/dist/components/AesSettings/AesDataMappingContinuous.vue.js +0 -131
- package/dist/components/AesSettings/AesDataMappingContinuous.vue.js.map +0 -1
- package/dist/components/AesSettings/AesDataMappingDiscrete.css +0 -1
- package/dist/components/AesSettings/AesDataMappingDiscrete.vue.js +0 -10
- package/dist/components/AesSettings/AesDataMappingDiscrete.vue.js.map +0 -1
- package/dist/components/AesSettings/AesDataMappingDiscrete.vue3.js +0 -10
- package/dist/components/AesSettings/AesDataMappingDiscrete.vue3.js.map +0 -1
- package/dist/components/AesSettings/DiscreteRow.css +0 -1
- package/dist/components/AesSettings/DiscreteRow.vue.js +0 -10
- package/dist/components/AesSettings/DiscreteRow.vue.js.map +0 -1
- package/dist/components/AesSettings/DiscreteRow.vue3.js +0 -20
- package/dist/components/AesSettings/DiscreteRow.vue3.js.map +0 -1
- package/dist/components/AesSettings/FixedColorsList.vue.js +0 -33
- package/dist/components/AesSettings/FixedColorsList.vue.js.map +0 -1
- package/dist/components/AesSettings/FixedDotShapeList.vue.js +0 -25
- package/dist/components/AesSettings/FixedDotShapeList.vue.js.map +0 -1
- package/dist/components/AesSettings/FixedLineTypeList.vue.js +0 -37
- package/dist/components/AesSettings/FixedLineTypeList.vue.js.map +0 -1
- package/dist/components/AesSettings/FormWrapper.vue.js +0 -37
- package/dist/components/AesSettings/FormWrapper.vue.js.map +0 -1
- package/dist/components/AesSettings/PalettesForm.vue.js +0 -91
- package/dist/components/AesSettings/PalettesForm.vue.js.map +0 -1
- package/dist/components/BtnIconGroup.vue.js +0 -30
- package/dist/components/BtnIconGroup.vue.js.map +0 -1
- package/dist/components/Chart.vue.js +0 -283
- package/dist/components/Chart.vue.js.map +0 -1
- package/dist/components/ChartErrorNotificationAlert.css +0 -1
- package/dist/components/ChartErrorNotificationAlert.vue.js +0 -10
- package/dist/components/ChartErrorNotificationAlert.vue.js.map +0 -1
- package/dist/components/ChartErrorNotificationAlert.vue3.js +0 -14
- package/dist/components/ChartErrorNotificationAlert.vue3.js.map +0 -1
- package/dist/components/ChartTruncationWarningAlert.css +0 -1
- package/dist/components/ChartTruncationWarningAlert.vue.js +0 -10
- package/dist/components/ChartTruncationWarningAlert.vue.js.map +0 -1
- package/dist/components/ChartTruncationWarningAlert.vue3.js +0 -8
- package/dist/components/ChartTruncationWarningAlert.vue3.js.map +0 -1
- package/dist/components/CollapsableBlock.vue.js +0 -40
- package/dist/components/CollapsableBlock.vue.js.map +0 -1
- package/dist/components/DendroTable.vue.js +0 -94
- package/dist/components/DendroTable.vue.js.map +0 -1
- package/dist/components/DendroTooltip.vue.js +0 -119
- package/dist/components/DendroTooltip.vue.js.map +0 -1
- package/dist/components/DoubleContourTemp.vue.js +0 -16
- package/dist/components/DoubleContourTemp.vue.js.map +0 -1
- package/dist/components/DragAndDrop/DnDBasketChip.vue.js +0 -70
- package/dist/components/DragAndDrop/DnDBasketChip.vue.js.map +0 -1
- package/dist/components/DragAndDrop/DnDRangeChip.vue.js +0 -79
- package/dist/components/DragAndDrop/DnDRangeChip.vue.js.map +0 -1
- package/dist/components/DragAndDrop/DndBasket.vue.js +0 -148
- package/dist/components/DragAndDrop/DndBasket.vue.js.map +0 -1
- package/dist/components/DragAndDrop/DndChip.vue.js +0 -50
- package/dist/components/DragAndDrop/DndChip.vue.js.map +0 -1
- package/dist/components/DragAndDrop/DndDoubleChip.vue.js +0 -92
- package/dist/components/DragAndDrop/DndDoubleChip.vue.js.map +0 -1
- package/dist/components/GraphStatusScreen.css +0 -1
- package/dist/components/GraphStatusScreen.vue.js +0 -10
- package/dist/components/GraphStatusScreen.vue.js.map +0 -1
- package/dist/components/GraphStatusScreen.vue3.js +0 -10
- package/dist/components/GraphStatusScreen.vue3.js.map +0 -1
- package/dist/components/LassoControls/index.css +0 -1
- package/dist/components/LassoControls/index.vue.js +0 -10
- package/dist/components/LassoControls/index.vue.js.map +0 -1
- package/dist/components/LassoControls/index.vue3.js +0 -26
- package/dist/components/LassoControls/index.vue3.js.map +0 -1
- package/dist/components/MultiselectButton.vue.js +0 -64
- package/dist/components/MultiselectButton.vue.js.map +0 -1
- package/dist/components/PanelModal.vue.js +0 -38
- package/dist/components/PanelModal.vue.js.map +0 -1
- package/dist/components/PlColorSlider.vue.js +0 -74
- package/dist/components/PlColorSlider.vue.js.map +0 -1
- package/dist/components/PlColorSliderThumb.vue.js +0 -79
- package/dist/components/PlColorSliderThumb.vue.js.map +0 -1
- package/dist/components/Popup.vue.js +0 -70
- package/dist/components/Popup.vue.js.map +0 -1
- package/dist/components/ReorderForm.vue.js +0 -10
- package/dist/components/ReorderForm.vue.js.map +0 -1
- package/dist/components/ReorderForm.vue3.js +0 -10
- package/dist/components/ReorderForm.vue3.js.map +0 -1
- package/dist/components/SettingsTabs/icons/AxesIcon.vue.js +0 -30
- package/dist/components/SettingsTabs/icons/AxesIcon.vue.js.map +0 -1
- package/dist/components/SettingsTabs/icons/DeleteChartIcon.vue.js +0 -19
- package/dist/components/SettingsTabs/icons/DeleteChartIcon.vue.js.map +0 -1
- package/dist/components/SettingsTabs/icons/ExportIcon.vue.js +0 -33
- package/dist/components/SettingsTabs/icons/ExportIcon.vue.js.map +0 -1
- package/dist/components/SettingsTabs/icons/LayersIcon.vue.js +0 -35
- package/dist/components/SettingsTabs/icons/LayersIcon.vue.js.map +0 -1
- package/dist/components/SettingsTabs/icons/LinkIcon.vue.js +0 -19
- package/dist/components/SettingsTabs/icons/LinkIcon.vue.js.map +0 -1
- package/dist/components/SettingsTabs/icons/LogIcon.vue.js +0 -12
- package/dist/components/SettingsTabs/icons/LogIcon.vue.js.map +0 -1
- package/dist/components/SettingsTabs/icons/SettingsIcon.vue.js +0 -12
- package/dist/components/SettingsTabs/icons/SettingsIcon.vue.js.map +0 -1
- package/dist/components/SettingsTabs/index.vue.js +0 -102
- package/dist/components/SettingsTabs/index.vue.js.map +0 -1
- package/dist/components/TransitionSlidePanel.vue.js +0 -26
- package/dist/components/TransitionSlidePanel.vue.js.map +0 -1
- package/dist/components/TransitionSlidePanel.vue3.js +0 -6
- package/dist/components/TransitionSlidePanel.vue3.js.map +0 -1
- package/dist/components/Zoom/ZoomInput.vue.js +0 -55
- package/dist/components/Zoom/ZoomInput.vue.js.map +0 -1
- package/dist/components/Zoom/index.vue.js +0 -47
- package/dist/components/Zoom/index.vue.js.map +0 -1
- package/dist/forms/AnnotationsForm.vue.js +0 -16
- package/dist/forms/AnnotationsForm.vue.js.map +0 -1
- package/dist/forms/AxesSettingsForm/BubbleAxesSettingsForm.vue.js +0 -256
- package/dist/forms/AxesSettingsForm/BubbleAxesSettingsForm.vue.js.map +0 -1
- package/dist/forms/AxesSettingsForm/DiscreteAxesSettingsForm.vue.js +0 -459
- package/dist/forms/AxesSettingsForm/DiscreteAxesSettingsForm.vue.js.map +0 -1
- package/dist/forms/AxesSettingsForm/HeatmapAxesSettingsForm.vue.js +0 -446
- package/dist/forms/AxesSettingsForm/HeatmapAxesSettingsForm.vue.js.map +0 -1
- package/dist/forms/AxesSettingsForm/HistogramAxesSettingsForm.vue.js +0 -295
- package/dist/forms/AxesSettingsForm/HistogramAxesSettingsForm.vue.js.map +0 -1
- package/dist/forms/AxesSettingsForm/ScatterplotAxesSettingsForm.vue.js +0 -489
- package/dist/forms/AxesSettingsForm/ScatterplotAxesSettingsForm.vue.js.map +0 -1
- package/dist/forms/AxesSettingsForm/index.vue.js +0 -24
- package/dist/forms/AxesSettingsForm/index.vue.js.map +0 -1
- package/dist/forms/DataMappingForm/BubbleForm.vue.js +0 -120
- package/dist/forms/DataMappingForm/BubbleForm.vue.js.map +0 -1
- package/dist/forms/DataMappingForm/DendroForm.vue.js +0 -254
- package/dist/forms/DataMappingForm/DendroForm.vue.js.map +0 -1
- package/dist/forms/DataMappingForm/DiscreteForm.vue.js +0 -98
- package/dist/forms/DataMappingForm/DiscreteForm.vue.js.map +0 -1
- package/dist/forms/DataMappingForm/HeatmapForm.vue.js +0 -102
- package/dist/forms/DataMappingForm/HeatmapForm.vue.js.map +0 -1
- package/dist/forms/DataMappingForm/HistogramForm.vue.js +0 -90
- package/dist/forms/DataMappingForm/HistogramForm.vue.js.map +0 -1
- package/dist/forms/DataMappingForm/Layout/FormLayout.vue.js +0 -38
- package/dist/forms/DataMappingForm/Layout/FormLayout.vue.js.map +0 -1
- package/dist/forms/DataMappingForm/Layout/MandatoryOptions.vue.js +0 -33
- package/dist/forms/DataMappingForm/Layout/MandatoryOptions.vue.js.map +0 -1
- package/dist/forms/DataMappingForm/Layout/OptionsList.vue.js +0 -10
- package/dist/forms/DataMappingForm/Layout/OptionsList.vue.js.map +0 -1
- package/dist/forms/DataMappingForm/Layout/OptionsList.vue3.js +0 -8
- package/dist/forms/DataMappingForm/Layout/OptionsList.vue3.js.map +0 -1
- package/dist/forms/DataMappingForm/ScatterplotForm.vue.js +0 -109
- package/dist/forms/DataMappingForm/ScatterplotForm.vue.js.map +0 -1
- package/dist/forms/DataMappingForm/ScatterplotUmapForm.vue.js +0 -107
- package/dist/forms/DataMappingForm/ScatterplotUmapForm.vue.js.map +0 -1
- package/dist/forms/DataMappingForm/index.vue.js +0 -28
- package/dist/forms/DataMappingForm/index.vue.js.map +0 -1
- package/dist/forms/LayersForm/AesSelector.vue.js +0 -260
- package/dist/forms/LayersForm/AesSelector.vue.js.map +0 -1
- package/dist/forms/LayersForm/DotSizeSelector.vue.js +0 -114
- package/dist/forms/LayersForm/DotSizeSelector.vue.js.map +0 -1
- package/dist/forms/LayersForm/DotSizeSelector.vue3.js +0 -6
- package/dist/forms/LayersForm/DotSizeSelector.vue3.js.map +0 -1
- package/dist/forms/LayersForm/Layer/Bubble.vue.js +0 -152
- package/dist/forms/LayersForm/Layer/Bubble.vue.js.map +0 -1
- package/dist/forms/LayersForm/Layer/Dendro.vue.js +0 -122
- package/dist/forms/LayersForm/Layer/Dendro.vue.js.map +0 -1
- package/dist/forms/LayersForm/Layer/discrete/Bar.vue.js +0 -72
- package/dist/forms/LayersForm/Layer/discrete/Bar.vue.js.map +0 -1
- package/dist/forms/LayersForm/Layer/discrete/BinnedDots.vue.js +0 -66
- package/dist/forms/LayersForm/Layer/discrete/BinnedDots.vue.js.map +0 -1
- package/dist/forms/LayersForm/Layer/discrete/Boxplot.vue.js +0 -91
- package/dist/forms/LayersForm/Layer/discrete/Boxplot.vue.js.map +0 -1
- package/dist/forms/LayersForm/Layer/discrete/Errorbar.vue.js +0 -112
- package/dist/forms/LayersForm/Layer/discrete/Errorbar.vue.js.map +0 -1
- package/dist/forms/LayersForm/Layer/discrete/JitteredDots.vue.js +0 -67
- package/dist/forms/LayersForm/Layer/discrete/JitteredDots.vue.js.map +0 -1
- package/dist/forms/LayersForm/Layer/discrete/Line.vue.js +0 -119
- package/dist/forms/LayersForm/Layer/discrete/Line.vue.js.map +0 -1
- package/dist/forms/LayersForm/Layer/discrete/Logo.vue.js +0 -37
- package/dist/forms/LayersForm/Layer/discrete/Logo.vue.js.map +0 -1
- package/dist/forms/LayersForm/Layer/discrete/Sina.vue.js +0 -64
- package/dist/forms/LayersForm/Layer/discrete/Sina.vue.js.map +0 -1
- package/dist/forms/LayersForm/Layer/discrete/StackedArea.vue.js +0 -103
- package/dist/forms/LayersForm/Layer/discrete/StackedArea.vue.js.map +0 -1
- package/dist/forms/LayersForm/Layer/discrete/StackedBar.vue.js +0 -81
- package/dist/forms/LayersForm/Layer/discrete/StackedBar.vue.js.map +0 -1
- package/dist/forms/LayersForm/Layer/discrete/Violin.vue.js +0 -107
- package/dist/forms/LayersForm/Layer/discrete/Violin.vue.js.map +0 -1
- package/dist/forms/LayersForm/Layer/heatmap/Heatmap.vue.js +0 -135
- package/dist/forms/LayersForm/Layer/heatmap/Heatmap.vue.js.map +0 -1
- package/dist/forms/LayersForm/Layer/heatmap/HeatmapAnnotations.vue.js +0 -59
- package/dist/forms/LayersForm/Layer/heatmap/HeatmapAnnotations.vue.js.map +0 -1
- package/dist/forms/LayersForm/Layer/heatmap/HeatmapClustered.vue.js +0 -169
- package/dist/forms/LayersForm/Layer/heatmap/HeatmapClustered.vue.js.map +0 -1
- package/dist/forms/LayersForm/Layer/histogram/Bins.vue.js +0 -54
- package/dist/forms/LayersForm/Layer/histogram/Bins.vue.js.map +0 -1
- package/dist/forms/LayersForm/Layer/scatterplot/Curve.vue.js +0 -47
- package/dist/forms/LayersForm/Layer/scatterplot/Curve.vue.js.map +0 -1
- package/dist/forms/LayersForm/Layer/scatterplot/Scatter.vue.js +0 -84
- package/dist/forms/LayersForm/Layer/scatterplot/Scatter.vue.js.map +0 -1
- package/dist/forms/LayersForm/Layer/scatterplot-umap/Scatter.vue.js +0 -66
- package/dist/forms/LayersForm/Layer/scatterplot-umap/Scatter.vue.js.map +0 -1
- package/dist/forms/LayersForm/index.vue.js +0 -154
- package/dist/forms/LayersForm/index.vue.js.map +0 -1
- package/dist/forms/LogForm.vue.js +0 -22
- package/dist/forms/LogForm.vue.js.map +0 -1
- package/dist/forms/SettingsForm.vue.js +0 -22
- package/dist/forms/SettingsForm.vue.js.map +0 -1
- package/dist/forms/StatisticsForm/DiscreteStatisticsForm.vue.js +0 -133
- package/dist/forms/StatisticsForm/DiscreteStatisticsForm.vue.js.map +0 -1
- package/dist/forms/StatisticsForm/ScatterplotStatisticsForm.vue.js +0 -27
- package/dist/forms/StatisticsForm/ScatterplotStatisticsForm.vue.js.map +0 -1
- package/dist/forms/StatisticsForm/index.vue.js +0 -21
- package/dist/forms/StatisticsForm/index.vue.js.map +0 -1
- package/dist/forms/TemplateForm.vue.js +0 -118
- package/dist/forms/TemplateForm.vue.js.map +0 -1
- package/dist/icons/AlignCenter.vue.js +0 -24
- package/dist/icons/AlignCenter.vue.js.map +0 -1
- package/dist/icons/AlignLeft.vue.js +0 -24
- package/dist/icons/AlignLeft.vue.js.map +0 -1
- package/dist/icons/AlignRight.vue.js +0 -24
- package/dist/icons/AlignRight.vue.js.map +0 -1
- package/dist/icons/Annotation.vue.js +0 -12
- package/dist/icons/Annotation.vue.js.map +0 -1
- package/dist/icons/ArrowLeft.vue.js +0 -25
- package/dist/icons/ArrowLeft.vue.js.map +0 -1
- package/dist/icons/BarAndErrorIcon.vue.js +0 -20
- package/dist/icons/BarAndErrorIcon.vue.js.map +0 -1
- package/dist/icons/BarAndLineIcon.vue.js +0 -20
- package/dist/icons/BarAndLineIcon.vue.js.map +0 -1
- package/dist/icons/BarIcon.vue.js +0 -20
- package/dist/icons/BarIcon.vue.js.map +0 -1
- package/dist/icons/BinnedDotsIcon.vue.js +0 -20
- package/dist/icons/BinnedDotsIcon.vue.js.map +0 -1
- package/dist/icons/BoxplotAndBinnedIcon.vue.js +0 -31
- package/dist/icons/BoxplotAndBinnedIcon.vue.js.map +0 -1
- package/dist/icons/BoxplotAndJitterIcon.vue.js +0 -31
- package/dist/icons/BoxplotAndJitterIcon.vue.js.map +0 -1
- package/dist/icons/BoxplotIcon.vue.js +0 -31
- package/dist/icons/BoxplotIcon.vue.js.map +0 -1
- package/dist/icons/ColorsIcon.vue.js +0 -37
- package/dist/icons/ColorsIcon.vue.js.map +0 -1
- package/dist/icons/DendroIcon.vue.js +0 -31
- package/dist/icons/DendroIcon.vue.js.map +0 -1
- package/dist/icons/Down.vue.js +0 -23
- package/dist/icons/Down.vue.js.map +0 -1
- package/dist/icons/EditIcon.vue.js +0 -28
- package/dist/icons/EditIcon.vue.js.map +0 -1
- package/dist/icons/FrameBottom.vue.js +0 -19
- package/dist/icons/FrameBottom.vue.js.map +0 -1
- package/dist/icons/FrameEmpty.vue.js +0 -19
- package/dist/icons/FrameEmpty.vue.js.map +0 -1
- package/dist/icons/FrameFull.vue.js +0 -24
- package/dist/icons/FrameFull.vue.js.map +0 -1
- package/dist/icons/FrameLeft.vue.js +0 -19
- package/dist/icons/FrameLeft.vue.js.map +0 -1
- package/dist/icons/FrameLeftBottom.vue.js +0 -19
- package/dist/icons/FrameLeftBottom.vue.js.map +0 -1
- package/dist/icons/HeatmapAnnotation.vue.js +0 -19
- package/dist/icons/HeatmapAnnotation.vue.js.map +0 -1
- package/dist/icons/HeatmapIcon.vue.js +0 -20
- package/dist/icons/HeatmapIcon.vue.js.map +0 -1
- package/dist/icons/JitteredDotsIcon.vue.js +0 -20
- package/dist/icons/JitteredDotsIcon.vue.js.map +0 -1
- package/dist/icons/LineAndBinnedIcon.vue.js +0 -31
- package/dist/icons/LineAndBinnedIcon.vue.js.map +0 -1
- package/dist/icons/LineAndErrorbarIcon.vue.js +0 -39
- package/dist/icons/LineAndErrorbarIcon.vue.js.map +0 -1
- package/dist/icons/LineAndJitterIcon.vue.js +0 -20
- package/dist/icons/LineAndJitterIcon.vue.js.map +0 -1
- package/dist/icons/LineIcon.vue.js +0 -20
- package/dist/icons/LineIcon.vue.js.map +0 -1
- package/dist/icons/LogoIcon.vue.js +0 -37
- package/dist/icons/LogoIcon.vue.js.map +0 -1
- package/dist/icons/MinusIcon.vue.js +0 -24
- package/dist/icons/MinusIcon.vue.js.map +0 -1
- package/dist/icons/PlusIcon.vue.js +0 -24
- package/dist/icons/PlusIcon.vue.js.map +0 -1
- package/dist/icons/Right.vue.js +0 -23
- package/dist/icons/Right.vue.js.map +0 -1
- package/dist/icons/Rotation0.vue.js +0 -26
- package/dist/icons/Rotation0.vue.js.map +0 -1
- package/dist/icons/Rotation45.vue.js +0 -30
- package/dist/icons/Rotation45.vue.js.map +0 -1
- package/dist/icons/Rotation90.vue.js +0 -30
- package/dist/icons/Rotation90.vue.js.map +0 -1
- package/dist/icons/ScatterplotIcon.vue.js +0 -20
- package/dist/icons/ScatterplotIcon.vue.js.map +0 -1
- package/dist/icons/SinaIcon.vue.js +0 -20
- package/dist/icons/SinaIcon.vue.js.map +0 -1
- package/dist/icons/StackedAreaIcon.vue.js +0 -20
- package/dist/icons/StackedAreaIcon.vue.js.map +0 -1
- package/dist/icons/StackedBarIcon.vue.js +0 -20
- package/dist/icons/StackedBarIcon.vue.js.map +0 -1
- package/dist/icons/StatisticsIcon.vue.js +0 -30
- package/dist/icons/StatisticsIcon.vue.js.map +0 -1
- package/dist/icons/TemplateIcon.vue.js +0 -30
- package/dist/icons/TemplateIcon.vue.js.map +0 -1
- package/dist/icons/ViolinAndBinnedIcon.vue.js +0 -30
- package/dist/icons/ViolinAndBinnedIcon.vue.js.map +0 -1
- package/dist/icons/ViolinAndJitterIcon.vue.js +0 -35
- package/dist/icons/ViolinAndJitterIcon.vue.js.map +0 -1
- package/dist/icons/ViolinIcon.vue.js +0 -35
- package/dist/icons/ViolinIcon.vue.js.map +0 -1
- package/dist/index.d.ts +0 -4
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js +0 -6
- package/dist/index.js.map +0 -1
- package/dist/index.vue.d.ts.map +0 -1
- package/dist/index.vue.js +0 -392
- package/dist/index.vue.js.map +0 -1
- package/dist/index.vue2.js +0 -5
- package/dist/index.vue2.js.map +0 -1
- /package/dist/forms/DataMappingForm/Layout/{OptionsList.css → OptionsList.vue.css} +0 -0
- /package/dist/forms/LayersForm/{DotSizeSelector.css → DotSizeSelector.style.css} +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DotSizeSelector.js","names":[],"sources":["../../../src/forms/LayersForm/DotSizeSelector.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport { ref, computed, watch } from 'vue';\nimport { PlDropdown, Slider, SliderRange } from '@platforma-sdk/ui-vue';\nimport { DEFAULT_DOT_RANGE, DEFAULT_DOT_SIZE } from '../../dataBindAes';\nimport { useStore } from '../../store';\nimport type { ContinuousDataMappingSize } from '../../constantsCommon';\nimport { isContinuousDataMapping } from '../../constantsCommon';\nimport type { ChartType } from '@milaboratories/pf-plots';\n\nconst props = withDefaults(defineProps<{\n selected?: number | ContinuousDataMappingSize;\n min?: number;\n max?: number;\n possibleAesSourceInputs?: string[];\n}>(), { selected: undefined, min: 3, max: 10, possibleAesSourceInputs: undefined });\n\nconst store = useStore();\nconst chartType = computed(() => store.value.reactive.chartType);\nconst emit = defineEmits(['aes-update', 'aes-selector-close']);\n\nconst DEFAULT_AES_INPUTS: Record<ChartType, string[]> = {\n 'discrete': ['primaryGrouping', 'secondaryGrouping'],\n 'scatterplot': ['size'],\n 'scatterplot-umap': ['size'],\n 'dendro': [],\n 'heatmap': [],\n 'histogram': [],\n 'bubble': [],\n};\nconst possibleAesSourceInputs = props.possibleAesSourceInputs ?? DEFAULT_AES_INPUTS[chartType.value];\n\nconst selectedKey = ref(\n isContinuousDataMapping(props.selected) ? props.selected.column : 'fix',\n);\n\nconst inputGuide = computed(() => store.value.inputGuide.value);\n\nfunction getOptionTitle(selected: string) {\n const selectedSourceInfo = inputGuide.value.getSourceInfo(selected);\n\n if (chartType.value === 'scatterplot' || chartType.value === 'dendro') {\n return `Grouping: ${selectedSourceInfo?.label}`;\n }\n if (!selectedSourceInfo) {\n return 'Not consistent (grouping)';\n }\n return selectedSourceInfo?.label ?? '';\n}\n\nconst options = computed(() => {\n const options: { text: string; value: string }[] = [];\n const inputStateMap = store.value.reactive.optionsState.components;\n\n possibleAesSourceInputs.forEach((name) => {\n if (inputStateMap?.[name]?.selectorStates.length) {\n inputStateMap[name].selectorStates.forEach(({ selectedSource }) => {\n const selectedSourceInfo = inputGuide.value.getSourceInfo(selectedSource);\n if (selectedSourceInfo.type !== 'String') {\n options.push({\n text: getOptionTitle(selectedSource),\n value: selectedSource,\n });\n }\n });\n }\n });\n return options.length ? options : [{ text: 'Fixed', value: 'fix' }];\n});\n\nconst fixedValue = ref(isContinuousDataMapping(props.selected) ? DEFAULT_DOT_SIZE : props.selected ?? DEFAULT_DOT_SIZE);\nconst rangeValue = ref<[number, number]>(isContinuousDataMapping(props.selected) ? [props.selected.range.min, props.selected.range.max] : [DEFAULT_DOT_RANGE.min, DEFAULT_DOT_RANGE.max]);\n\nwatch(\n () => selectedKey.value,\n (value) => {\n if (value === 'fix') {\n emit('aes-update', fixedValue.value);\n } else {\n const mapping = {\n column: value,\n range: { min: rangeValue.value[0], max: rangeValue.value[1] },\n } as ContinuousDataMappingSize;\n emit('aes-update', mapping);\n }\n },\n);\n\nwatch(\n () => fixedValue.value,\n (value) => {\n if (selectedKey.value === 'fix') {\n emit('aes-update', value);\n }\n },\n);\n\nwatch(\n () => rangeValue.value,\n (rangeV) => {\n if (selectedKey.value !== 'fix') {\n const mapping = {\n column: selectedKey.value,\n range: { min: rangeV[0], max: rangeV[1] },\n } as ContinuousDataMappingSize;\n emit('aes-update', mapping);\n }\n },\n);\n\n</script>\n\n<template>\n <div class=\"dot-size-selector\">\n <div class=\"dot-size-selector__row\">\n <div class=\"aes-input-select\" @click.stop>\n <PlDropdown\n v-model=\"selectedKey\"\n :disabled=\"options.length < 2 && options[0].value === selectedKey\"\n label=\"Dot size source\"\n :options=\"options\"\n />\n </div>\n </div>\n <div class=\"dot-size-selector-row\">\n <SliderRange\n v-if=\"selectedKey !== 'fix'\"\n v-model=\"rangeValue\"\n :min=\"min\"\n :max=\"max\"\n :breakpoints=\"true\"\n label=\"Dot size range\"\n />\n <Slider\n v-else\n v-model=\"fixedValue\"\n :min=\"min\"\n :max=\"max\"\n :step=\"1\"\n :breakpoints=\"true\"\n label=\"Dot size\"\n />\n </div>\n </div>\n</template>\n<style>\n .dot-size-selector {\n margin-top: 24px\n }\n .dot-size-selector__row {\n margin: 12px 0;\n }\n</style>\n"],"mappings":""}
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
import { DEFAULT_DOT_RANGE as e } from "../../dataBindAes.js";
|
|
2
|
+
import { isContinuousDataMapping as t } from "../../constantsCommon.js";
|
|
3
|
+
import { useStore as n } from "../../store.js";
|
|
4
|
+
import { computed as r, createBlock as i, createElementBlock as a, createElementVNode as o, createVNode as s, defineComponent as c, openBlock as l, ref as u, unref as d, watch as f, withModifiers as p } from "vue";
|
|
5
|
+
import { PlDropdown as m, Slider as h, SliderRange as g } from "@platforma-sdk/ui-vue";
|
|
6
|
+
var _ = { class: "dot-size-selector" }, v = { class: "dot-size-selector__row" }, y = { class: "dot-size-selector-row" }, b = /* @__PURE__ */ c({
|
|
7
|
+
__name: "DotSizeSelector",
|
|
8
|
+
props: {
|
|
9
|
+
selected: { default: void 0 },
|
|
10
|
+
min: { default: 3 },
|
|
11
|
+
max: { default: 10 },
|
|
12
|
+
possibleAesSourceInputs: { default: void 0 }
|
|
13
|
+
},
|
|
14
|
+
emits: ["aes-update", "aes-selector-close"],
|
|
15
|
+
setup(c, { emit: b }) {
|
|
16
|
+
let x = c, S = n(), C = r(() => S.value.reactive.chartType), w = b, T = x.possibleAesSourceInputs ?? {
|
|
17
|
+
discrete: ["primaryGrouping", "secondaryGrouping"],
|
|
18
|
+
scatterplot: ["size"],
|
|
19
|
+
"scatterplot-umap": ["size"],
|
|
20
|
+
dendro: [],
|
|
21
|
+
heatmap: [],
|
|
22
|
+
histogram: [],
|
|
23
|
+
bubble: []
|
|
24
|
+
}[C.value], E = u(t(x.selected) ? x.selected.column : "fix"), D = r(() => S.value.inputGuide.value);
|
|
25
|
+
function O(e) {
|
|
26
|
+
let t = D.value.getSourceInfo(e);
|
|
27
|
+
return C.value === "scatterplot" || C.value === "dendro" ? `Grouping: ${t?.label}` : t ? t?.label ?? "" : "Not consistent (grouping)";
|
|
28
|
+
}
|
|
29
|
+
let k = r(() => {
|
|
30
|
+
let e = [], t = S.value.reactive.optionsState.components;
|
|
31
|
+
return T.forEach((n) => {
|
|
32
|
+
t?.[n]?.selectorStates.length && t[n].selectorStates.forEach(({ selectedSource: t }) => {
|
|
33
|
+
D.value.getSourceInfo(t).type !== "String" && e.push({
|
|
34
|
+
text: O(t),
|
|
35
|
+
value: t
|
|
36
|
+
});
|
|
37
|
+
});
|
|
38
|
+
}), e.length ? e : [{
|
|
39
|
+
text: "Fixed",
|
|
40
|
+
value: "fix"
|
|
41
|
+
}];
|
|
42
|
+
}), A = u(t(x.selected) ? 3 : x.selected ?? 3), j = u(t(x.selected) ? [x.selected.range.min, x.selected.range.max] : [e.min, e.max]);
|
|
43
|
+
return f(() => E.value, (e) => {
|
|
44
|
+
e === "fix" ? w("aes-update", A.value) : w("aes-update", {
|
|
45
|
+
column: e,
|
|
46
|
+
range: {
|
|
47
|
+
min: j.value[0],
|
|
48
|
+
max: j.value[1]
|
|
49
|
+
}
|
|
50
|
+
});
|
|
51
|
+
}), f(() => A.value, (e) => {
|
|
52
|
+
E.value === "fix" && w("aes-update", e);
|
|
53
|
+
}), f(() => j.value, (e) => {
|
|
54
|
+
E.value !== "fix" && w("aes-update", {
|
|
55
|
+
column: E.value,
|
|
56
|
+
range: {
|
|
57
|
+
min: e[0],
|
|
58
|
+
max: e[1]
|
|
59
|
+
}
|
|
60
|
+
});
|
|
61
|
+
}), (e, t) => (l(), a("div", _, [o("div", v, [o("div", {
|
|
62
|
+
class: "aes-input-select",
|
|
63
|
+
onClick: t[1] ||= p(() => {}, ["stop"])
|
|
64
|
+
}, [s(d(m), {
|
|
65
|
+
modelValue: E.value,
|
|
66
|
+
"onUpdate:modelValue": t[0] ||= (e) => E.value = e,
|
|
67
|
+
disabled: k.value.length < 2 && k.value[0].value === E.value,
|
|
68
|
+
label: "Dot size source",
|
|
69
|
+
options: k.value
|
|
70
|
+
}, null, 8, [
|
|
71
|
+
"modelValue",
|
|
72
|
+
"disabled",
|
|
73
|
+
"options"
|
|
74
|
+
])])]), o("div", y, [E.value === "fix" ? (l(), i(d(h), {
|
|
75
|
+
key: 1,
|
|
76
|
+
modelValue: A.value,
|
|
77
|
+
"onUpdate:modelValue": t[3] ||= (e) => A.value = e,
|
|
78
|
+
min: c.min,
|
|
79
|
+
max: c.max,
|
|
80
|
+
step: 1,
|
|
81
|
+
breakpoints: !0,
|
|
82
|
+
label: "Dot size"
|
|
83
|
+
}, null, 8, [
|
|
84
|
+
"modelValue",
|
|
85
|
+
"min",
|
|
86
|
+
"max"
|
|
87
|
+
])) : (l(), i(d(g), {
|
|
88
|
+
key: 0,
|
|
89
|
+
modelValue: j.value,
|
|
90
|
+
"onUpdate:modelValue": t[2] ||= (e) => j.value = e,
|
|
91
|
+
min: c.min,
|
|
92
|
+
max: c.max,
|
|
93
|
+
breakpoints: !0,
|
|
94
|
+
label: "Dot size range"
|
|
95
|
+
}, null, 8, [
|
|
96
|
+
"modelValue",
|
|
97
|
+
"min",
|
|
98
|
+
"max"
|
|
99
|
+
]))])]));
|
|
100
|
+
}
|
|
101
|
+
});
|
|
102
|
+
export { b as default };
|
|
103
|
+
|
|
104
|
+
//# sourceMappingURL=DotSizeSelector.vue2.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DotSizeSelector.vue_vue_type_script_setup_true_lang.js","names":[],"sources":["../../../src/forms/LayersForm/DotSizeSelector.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport { ref, computed, watch } from 'vue';\nimport { PlDropdown, Slider, SliderRange } from '@platforma-sdk/ui-vue';\nimport { DEFAULT_DOT_RANGE, DEFAULT_DOT_SIZE } from '../../dataBindAes';\nimport { useStore } from '../../store';\nimport type { ContinuousDataMappingSize } from '../../constantsCommon';\nimport { isContinuousDataMapping } from '../../constantsCommon';\nimport type { ChartType } from '@milaboratories/pf-plots';\n\nconst props = withDefaults(defineProps<{\n selected?: number | ContinuousDataMappingSize;\n min?: number;\n max?: number;\n possibleAesSourceInputs?: string[];\n}>(), { selected: undefined, min: 3, max: 10, possibleAesSourceInputs: undefined });\n\nconst store = useStore();\nconst chartType = computed(() => store.value.reactive.chartType);\nconst emit = defineEmits(['aes-update', 'aes-selector-close']);\n\nconst DEFAULT_AES_INPUTS: Record<ChartType, string[]> = {\n 'discrete': ['primaryGrouping', 'secondaryGrouping'],\n 'scatterplot': ['size'],\n 'scatterplot-umap': ['size'],\n 'dendro': [],\n 'heatmap': [],\n 'histogram': [],\n 'bubble': [],\n};\nconst possibleAesSourceInputs = props.possibleAesSourceInputs ?? DEFAULT_AES_INPUTS[chartType.value];\n\nconst selectedKey = ref(\n isContinuousDataMapping(props.selected) ? props.selected.column : 'fix',\n);\n\nconst inputGuide = computed(() => store.value.inputGuide.value);\n\nfunction getOptionTitle(selected: string) {\n const selectedSourceInfo = inputGuide.value.getSourceInfo(selected);\n\n if (chartType.value === 'scatterplot' || chartType.value === 'dendro') {\n return `Grouping: ${selectedSourceInfo?.label}`;\n }\n if (!selectedSourceInfo) {\n return 'Not consistent (grouping)';\n }\n return selectedSourceInfo?.label ?? '';\n}\n\nconst options = computed(() => {\n const options: { text: string; value: string }[] = [];\n const inputStateMap = store.value.reactive.optionsState.components;\n\n possibleAesSourceInputs.forEach((name) => {\n if (inputStateMap?.[name]?.selectorStates.length) {\n inputStateMap[name].selectorStates.forEach(({ selectedSource }) => {\n const selectedSourceInfo = inputGuide.value.getSourceInfo(selectedSource);\n if (selectedSourceInfo.type !== 'String') {\n options.push({\n text: getOptionTitle(selectedSource),\n value: selectedSource,\n });\n }\n });\n }\n });\n return options.length ? options : [{ text: 'Fixed', value: 'fix' }];\n});\n\nconst fixedValue = ref(isContinuousDataMapping(props.selected) ? DEFAULT_DOT_SIZE : props.selected ?? DEFAULT_DOT_SIZE);\nconst rangeValue = ref<[number, number]>(isContinuousDataMapping(props.selected) ? [props.selected.range.min, props.selected.range.max] : [DEFAULT_DOT_RANGE.min, DEFAULT_DOT_RANGE.max]);\n\nwatch(\n () => selectedKey.value,\n (value) => {\n if (value === 'fix') {\n emit('aes-update', fixedValue.value);\n } else {\n const mapping = {\n column: value,\n range: { min: rangeValue.value[0], max: rangeValue.value[1] },\n } as ContinuousDataMappingSize;\n emit('aes-update', mapping);\n }\n },\n);\n\nwatch(\n () => fixedValue.value,\n (value) => {\n if (selectedKey.value === 'fix') {\n emit('aes-update', value);\n }\n },\n);\n\nwatch(\n () => rangeValue.value,\n (rangeV) => {\n if (selectedKey.value !== 'fix') {\n const mapping = {\n column: selectedKey.value,\n range: { min: rangeV[0], max: rangeV[1] },\n } as ContinuousDataMappingSize;\n emit('aes-update', mapping);\n }\n },\n);\n\n</script>\n\n<template>\n <div class=\"dot-size-selector\">\n <div class=\"dot-size-selector__row\">\n <div class=\"aes-input-select\" @click.stop>\n <PlDropdown\n v-model=\"selectedKey\"\n :disabled=\"options.length < 2 && options[0].value === selectedKey\"\n label=\"Dot size source\"\n :options=\"options\"\n />\n </div>\n </div>\n <div class=\"dot-size-selector-row\">\n <SliderRange\n v-if=\"selectedKey !== 'fix'\"\n v-model=\"rangeValue\"\n :min=\"min\"\n :max=\"max\"\n :breakpoints=\"true\"\n label=\"Dot size range\"\n />\n <Slider\n v-else\n v-model=\"fixedValue\"\n :min=\"min\"\n :max=\"max\"\n :step=\"1\"\n :breakpoints=\"true\"\n label=\"Dot size\"\n />\n </div>\n </div>\n</template>\n<style>\n .dot-size-selector {\n margin-top: 24px\n }\n .dot-size-selector__row {\n margin: 12px 0;\n }\n</style>\n"],"mappings":";;;;;;;;;;;;;;;EASA,IAAM,IAAQ,GAOR,IAAQ,GAAU,EAClB,IAAY,QAAe,EAAM,MAAM,SAAS,UAAU,EAC1D,IAAO,GAWP,IAA0B,EAAM,2BATkB;GACtD,UAAY,CAAC,mBAAmB,oBAAoB;GACpD,aAAe,CAAC,OAAO;GACvB,oBAAoB,CAAC,OAAO;GAC5B,QAAU,EAAE;GACZ,SAAW,EAAE;GACb,WAAa,EAAE;GACf,QAAU,EAAE;GACb,CACmF,EAAU,QAExF,IAAc,EAClB,EAAwB,EAAM,SAAS,GAAG,EAAM,SAAS,SAAS,MACnE,EAEK,IAAa,QAAe,EAAM,MAAM,WAAW,MAAM;EAE/D,SAAS,EAAe,GAAkB;GACxC,IAAM,IAAqB,EAAW,MAAM,cAAc,EAAS;AAQnE,UANI,EAAU,UAAU,iBAAiB,EAAU,UAAU,WACpD,aAAa,GAAoB,UAErC,IAGE,GAAoB,SAAS,KAF3B;;EAKX,IAAM,IAAU,QAAe;GAC7B,IAAM,IAA6C,EAAE,EAC/C,IAAgB,EAAM,MAAM,SAAS,aAAa;AAexD,UAbA,EAAwB,SAAS,MAAS;AACxC,IAAI,IAAgB,IAAO,eAAe,UACxC,EAAc,GAAM,eAAe,SAAS,EAAE,wBAAqB;AAEjE,KAD2B,EAAW,MAAM,cAAc,EAAe,CAClD,SAAS,YAC9B,EAAQ,KAAK;MACX,MAAM,EAAe,EAAe;MACpC,OAAO;MACR,CAAC;MAEJ;KAEJ,EACK,EAAQ,SAAS,IAAU,CAAC;IAAE,MAAM;IAAS,OAAO;IAAO,CAAC;IACnE,EAEI,IAAa,EAAI,EAAwB,EAAM,SAAS,GAAA,IAAsB,EAAM,YAAA,EAA6B,EACjH,IAAa,EAAsB,EAAwB,EAAM,SAAS,GAAG,CAAC,EAAM,SAAS,MAAM,KAAK,EAAM,SAAS,MAAM,IAAI,GAAG,CAAC,EAAkB,KAAK,EAAkB,IAAI,CAAC;SAEzL,QACQ,EAAY,QACjB,MAAU;AACT,GAAI,MAAU,QACZ,EAAK,cAAc,EAAW,MAAM,GAMpC,EAAK,cAJW;IACd,QAAQ;IACR,OAAO;KAAE,KAAK,EAAW,MAAM;KAAI,KAAK,EAAW,MAAM;KAAI;IAC9D,CAC0B;IAGhC,EAED,QACQ,EAAW,QAChB,MAAU;AACT,GAAI,EAAY,UAAU,SACxB,EAAK,cAAc,EAAM;IAG9B,EAED,QACQ,EAAW,QAChB,MAAW;AACV,GAAI,EAAY,UAAU,SAKxB,EAAK,cAJW;IACd,QAAQ,EAAY;IACpB,OAAO;KAAE,KAAK,EAAO;KAAI,KAAK,EAAO;KAAI;IAC1C,CAC0B;IAGhC,kBAKC,EA8BM,OA9BN,GA8BM,CA7BJ,EASM,OATN,GASM,CARJ,EAOM,OAAA;GAPD,OAAM;GAAoB,SAAK,AAAA,EAAA,OAAA,QAAN,IAAW,CAAA,OAAA,CAAA;MACvC,EAKE,EAAA,EAAA,EAAA;eAJS,EAAA;4CAAW,QAAA;GACnB,UAAU,EAAA,MAAQ,SAAM,KAAQ,EAAA,MAAO,GAAI,UAAU,EAAA;GACtD,OAAM;GACL,SAAS,EAAA;;;;;UAIhB,EAkBM,OAlBN,GAkBM,CAhBI,EAAA,UAAW,cAOnB,EAQE,EAAA,EAAA,EAAA;;eANS,EAAA;4CAAU,QAAA;GAClB,KAAK,EAAA;GACL,KAAK,EAAA;GACL,MAAM;GACN,aAAa;GACd,OAAM;;;;;SAdW,GAAA,EADnB,EAOE,EAAA,EAAA,EAAA;;eALS,EAAA;4CAAU,QAAA;GAClB,KAAK,EAAA;GACL,KAAK,EAAA;GACL,aAAa;GACd,OAAM"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Bubble.js","names":[],"sources":["../../../../src/forms/LayersForm/Layer/Bubble.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport { useStore } from '../../../store';\nimport type { BubbleLayer } from '../../../types';\nimport { computed, ref } from 'vue';\nimport {\n DEFAULT_BLACK,\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 { BubbleUIState } from '@milaboratories/pf-plots';\nimport type { SimpleOption } from '@platforma-sdk/ui-vue';\nimport { PlBtnGroup, PlCheckbox, PlNumberField } from '@platforma-sdk/ui-vue';\nimport AesSelector from '../AesSelector.vue';\nimport { AGGREGATION_METHOD_OPTIONS } from '../../../constantsCommon';\n\nconst store = useStore();\nconst layer: BubbleLayer = 'bubble';\nconst settings = computed(() => store.value.reactive.layersSettings[layer]);\nconst optionsState = computed(() => store.value.reactive.optionsState as BubbleUIState);\n\nconst valueColor = computed(() => optionsState.value.components.valueColor.selectorStates[0]?.selectedSource);\nconst savedDataValuePalette = computed(() => valueColor.value ? store.value.reactive.dataBindAes[valueColor.value]?.palette : undefined);\n\nconst palettesOpen = ref(false);\nconst palette = ref<ContinuousPalette>(savedDataValuePalette.value as ContinuousPalette ?? store.value.defaultPalette.continuous);\n\nfunction onPaletteSelect(value: ContinuousPalette) {\n palette.value = value;\n palettesOpen.value = false;\n if (valueColor.value) {\n store.value.reactive.dataBindAes[valueColor.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 AGGREGATION_METHOD = AGGREGATION_METHOD_OPTIONS;\n\nconst stroke = computed({\n get: () => {\n return settings.value.strokeColor ?? DEFAULT_BLACK;\n },\n set: (v: string) => {\n settings.value.strokeColor = v;\n },\n});\n\nconst NA_VALUE_OPTIONS: SimpleOption[] = [\n { label: 'empty', value: null },\n { label: 'Special value', value: 'custom' },\n];\n\nconst NAValueOption = ref(settings.value.NAValueAs !== null ? 'custom' : settings.value.NAValueAs);\nconst customNA = ref(settings.value.NAValueAs ?? 0);\n\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 :selected=\"palette\" :categorical=\"false\" @select=\"onPaletteSelect\" />\n </FormWrapper>\n <div class=\"input-item\">\n <AesSelector\n label=\"Stroke color\"\n form-title=\"Stroke Color Settings\"\n form-back-title=\"Layers\"\n type=\"stroke\"\n :possible-aes-source-inputs=\"[]\"\n :selected=\"stroke\"\n @aes-update=\"(v:string) => stroke = v\"\n />\n </div>\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"],"mappings":""}
|
|
@@ -1,5 +1,142 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
1
|
+
import { PALETTE_MAP as e } from "../../../constantsAesthetic.js";
|
|
2
|
+
import { createContinuousMappingFromPalette as t } from "../../../dataBindAes.js";
|
|
3
|
+
import { AGGREGATION_METHOD_OPTIONS as n } from "../../../constantsCommon.js";
|
|
4
|
+
import r from "../../../components/AesSettings/FormWrapper.js";
|
|
5
|
+
import i from "../../../components/AesSettings/PalettesForm.js";
|
|
6
|
+
import a from "../../../components/MultiselectButton.js";
|
|
7
|
+
import o from "../AesSelector.js";
|
|
8
|
+
import { useStore as s } from "../../../store.js";
|
|
9
|
+
import { Fragment as c, computed as l, createBlock as u, createCommentVNode as d, createElementBlock as f, createElementVNode as p, createVNode as m, defineComponent as h, openBlock as g, ref as _, unref as v, withCtx as y } from "vue";
|
|
10
|
+
import { PlBtnGroup as b, PlCheckbox as x, PlNumberField as S } from "@platforma-sdk/ui-vue";
|
|
11
|
+
var C = { class: "input-item" }, w = { class: "button-group-item" }, T = { class: "button-group-item" }, E = { class: "checkbox-item" }, D = { class: "checkbox-item" }, O = { class: "button-group-item" }, k = {
|
|
12
|
+
class: "button-group-item",
|
|
13
|
+
style: {
|
|
14
|
+
display: "flex",
|
|
15
|
+
alignItems: "end"
|
|
16
|
+
}
|
|
17
|
+
}, A = "bubble", j = /* @__PURE__ */ h({
|
|
18
|
+
__name: "Bubble",
|
|
19
|
+
setup(h) {
|
|
20
|
+
let j = s(), M = l(() => j.value.reactive.layersSettings[A]), N = l(() => j.value.reactive.optionsState), P = l(() => N.value.components.valueColor.selectorStates[0]?.selectedSource), F = l(() => P.value ? j.value.reactive.dataBindAes[P.value]?.palette : void 0), I = _(!1), L = _(F.value ?? j.value.defaultPalette.continuous);
|
|
21
|
+
function R(e) {
|
|
22
|
+
L.value = e, I.value = !1, P.value && (j.value.reactive.dataBindAes[P.value] = t(e));
|
|
23
|
+
}
|
|
24
|
+
let z = [
|
|
25
|
+
{
|
|
26
|
+
label: "None",
|
|
27
|
+
value: null
|
|
28
|
+
},
|
|
29
|
+
{
|
|
30
|
+
label: "Columns",
|
|
31
|
+
value: "column"
|
|
32
|
+
},
|
|
33
|
+
{
|
|
34
|
+
label: "Rows",
|
|
35
|
+
value: "row"
|
|
36
|
+
}
|
|
37
|
+
], B = [{
|
|
38
|
+
label: "z-score",
|
|
39
|
+
value: "standardScaling"
|
|
40
|
+
}, {
|
|
41
|
+
label: "Min-max",
|
|
42
|
+
value: "meanNormalization"
|
|
43
|
+
}], V = n, H = l({
|
|
44
|
+
get: () => M.value.strokeColor ?? "#110529",
|
|
45
|
+
set: (e) => {
|
|
46
|
+
M.value.strokeColor = e;
|
|
47
|
+
}
|
|
48
|
+
}), U = [{
|
|
49
|
+
label: "empty",
|
|
50
|
+
value: null
|
|
51
|
+
}, {
|
|
52
|
+
label: "Special value",
|
|
53
|
+
value: "custom"
|
|
54
|
+
}], W = _(M.value.NAValueAs === null ? M.value.NAValueAs : "custom"), G = _(M.value.NAValueAs ?? 0);
|
|
55
|
+
return (t, n) => (g(), f(c, null, [
|
|
56
|
+
m(a, {
|
|
57
|
+
label: "Color Palette ",
|
|
58
|
+
title: v(e)[L.value].title,
|
|
59
|
+
palette: L.value,
|
|
60
|
+
onButtonClick: n[0] ||= (e) => {
|
|
61
|
+
I.value = !0;
|
|
62
|
+
}
|
|
63
|
+
}, null, 8, ["title", "palette"]),
|
|
64
|
+
I.value ? (g(), u(r, {
|
|
65
|
+
key: 0,
|
|
66
|
+
title: "Color Palette",
|
|
67
|
+
"back-title": "Color mapping",
|
|
68
|
+
"onForm:close": n[1] ||= (e) => I.value = !1
|
|
69
|
+
}, {
|
|
70
|
+
default: y(() => [m(i, {
|
|
71
|
+
selected: L.value,
|
|
72
|
+
categorical: !1,
|
|
73
|
+
onSelect: R
|
|
74
|
+
}, null, 8, ["selected"])]),
|
|
75
|
+
_: 1
|
|
76
|
+
})) : d("", !0),
|
|
77
|
+
p("div", C, [m(o, {
|
|
78
|
+
label: "Stroke color",
|
|
79
|
+
"form-title": "Stroke Color Settings",
|
|
80
|
+
"form-back-title": "Layers",
|
|
81
|
+
type: "stroke",
|
|
82
|
+
"possible-aes-source-inputs": [],
|
|
83
|
+
selected: H.value,
|
|
84
|
+
onAesUpdate: n[2] ||= (e) => H.value = e
|
|
85
|
+
}, null, 8, ["selected"])]),
|
|
86
|
+
p("div", w, [m(v(b), {
|
|
87
|
+
modelValue: M.value.normalizationDirection,
|
|
88
|
+
"onUpdate:modelValue": n[3] ||= (e) => M.value.normalizationDirection = e,
|
|
89
|
+
label: "Normalize by",
|
|
90
|
+
options: z,
|
|
91
|
+
compact: !0
|
|
92
|
+
}, null, 8, ["modelValue"])]),
|
|
93
|
+
p("div", T, [m(v(b), {
|
|
94
|
+
modelValue: M.value.normalizationMethod,
|
|
95
|
+
"onUpdate:modelValue": n[4] ||= (e) => M.value.normalizationMethod = e,
|
|
96
|
+
label: "Normalization method",
|
|
97
|
+
options: B,
|
|
98
|
+
compact: !0
|
|
99
|
+
}, null, 8, ["modelValue"])]),
|
|
100
|
+
p("div", E, [m(v(x), {
|
|
101
|
+
modelValue: M.value.aggregateByX,
|
|
102
|
+
"onUpdate:modelValue": n[5] ||= (e) => M.value.aggregateByX = e
|
|
103
|
+
}, null, 8, ["modelValue"]), n[12] ||= p("span", null, "Aggregate X groups", -1)]),
|
|
104
|
+
p("div", D, [m(v(x), {
|
|
105
|
+
modelValue: M.value.aggregateByY,
|
|
106
|
+
"onUpdate:modelValue": n[6] ||= (e) => M.value.aggregateByY = e
|
|
107
|
+
}, null, 8, ["modelValue"]), n[13] ||= p("span", null, "Aggregate Y groups", -1)]),
|
|
108
|
+
p("div", O, [m(v(b), {
|
|
109
|
+
modelValue: M.value.aggregationMethod,
|
|
110
|
+
"onUpdate:modelValue": n[7] ||= (e) => M.value.aggregationMethod = e,
|
|
111
|
+
label: "Aggregation method",
|
|
112
|
+
options: v(V),
|
|
113
|
+
compact: !0
|
|
114
|
+
}, null, 8, ["modelValue", "options"])]),
|
|
115
|
+
p("div", k, [m(v(b), {
|
|
116
|
+
modelValue: W.value,
|
|
117
|
+
"onUpdate:modelValue": [n[8] ||= (e) => W.value = e, n[9] ||= (e) => {
|
|
118
|
+
e === "custom" ? M.value.NAValueAs = G.value : M.value.NAValueAs = e;
|
|
119
|
+
}],
|
|
120
|
+
label: "Treat NA value as:",
|
|
121
|
+
options: U,
|
|
122
|
+
compact: !0
|
|
123
|
+
}, null, 8, ["modelValue"]), m(v(S), {
|
|
124
|
+
modelValue: G.value,
|
|
125
|
+
"onUpdate:modelValue": [n[10] ||= (e) => G.value = e, n[11] ||= (e) => {
|
|
126
|
+
e !== void 0 && (M.value.NAValueAs = e);
|
|
127
|
+
}],
|
|
128
|
+
style: {
|
|
129
|
+
height: "33px",
|
|
130
|
+
marginLeft: "16px",
|
|
131
|
+
width: "75px"
|
|
132
|
+
},
|
|
133
|
+
disabled: W.value !== "custom",
|
|
134
|
+
label: "NA value",
|
|
135
|
+
useIncrementButtons: !1
|
|
136
|
+
}, null, 8, ["modelValue", "disabled"])])
|
|
137
|
+
], 64));
|
|
138
|
+
}
|
|
139
|
+
});
|
|
140
|
+
export { j as default };
|
|
141
|
+
|
|
142
|
+
//# sourceMappingURL=Bubble.vue2.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Bubble.
|
|
1
|
+
{"version":3,"file":"Bubble.vue_vue_type_script_setup_true_lang.js","names":[],"sources":["../../../../src/forms/LayersForm/Layer/Bubble.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport { useStore } from '../../../store';\nimport type { BubbleLayer } from '../../../types';\nimport { computed, ref } from 'vue';\nimport {\n DEFAULT_BLACK,\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 { BubbleUIState } from '@milaboratories/pf-plots';\nimport type { SimpleOption } from '@platforma-sdk/ui-vue';\nimport { PlBtnGroup, PlCheckbox, PlNumberField } from '@platforma-sdk/ui-vue';\nimport AesSelector from '../AesSelector.vue';\nimport { AGGREGATION_METHOD_OPTIONS } from '../../../constantsCommon';\n\nconst store = useStore();\nconst layer: BubbleLayer = 'bubble';\nconst settings = computed(() => store.value.reactive.layersSettings[layer]);\nconst optionsState = computed(() => store.value.reactive.optionsState as BubbleUIState);\n\nconst valueColor = computed(() => optionsState.value.components.valueColor.selectorStates[0]?.selectedSource);\nconst savedDataValuePalette = computed(() => valueColor.value ? store.value.reactive.dataBindAes[valueColor.value]?.palette : undefined);\n\nconst palettesOpen = ref(false);\nconst palette = ref<ContinuousPalette>(savedDataValuePalette.value as ContinuousPalette ?? store.value.defaultPalette.continuous);\n\nfunction onPaletteSelect(value: ContinuousPalette) {\n palette.value = value;\n palettesOpen.value = false;\n if (valueColor.value) {\n store.value.reactive.dataBindAes[valueColor.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 AGGREGATION_METHOD = AGGREGATION_METHOD_OPTIONS;\n\nconst stroke = computed({\n get: () => {\n return settings.value.strokeColor ?? DEFAULT_BLACK;\n },\n set: (v: string) => {\n settings.value.strokeColor = v;\n },\n});\n\nconst NA_VALUE_OPTIONS: SimpleOption[] = [\n { label: 'empty', value: null },\n { label: 'Special value', value: 'custom' },\n];\n\nconst NAValueOption = ref(settings.value.NAValueAs !== null ? 'custom' : settings.value.NAValueAs);\nconst customNA = ref(settings.value.NAValueAs ?? 0);\n\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 :selected=\"palette\" :categorical=\"false\" @select=\"onPaletteSelect\" />\n </FormWrapper>\n <div class=\"input-item\">\n <AesSelector\n label=\"Stroke color\"\n form-title=\"Stroke Color Settings\"\n form-back-title=\"Layers\"\n type=\"stroke\"\n :possible-aes-source-inputs=\"[]\"\n :selected=\"stroke\"\n @aes-update=\"(v:string) => stroke = v\"\n />\n </div>\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"],"mappings":";;;;;;;;;;;;;;;;GAoBM,IAAqB;;;EAD3B,IAAM,IAAQ,GAAU,EAElB,IAAW,QAAe,EAAM,MAAM,SAAS,eAAe,GAAO,EACrE,IAAe,QAAe,EAAM,MAAM,SAAS,aAA8B,EAEjF,IAAa,QAAe,EAAa,MAAM,WAAW,WAAW,eAAe,IAAI,eAAe,EACvG,IAAwB,QAAe,EAAW,QAAQ,EAAM,MAAM,SAAS,YAAY,EAAW,QAAQ,UAAU,KAAA,EAAU,EAElI,IAAe,EAAI,GAAM,EACzB,IAAU,EAAuB,EAAsB,SAA8B,EAAM,MAAM,eAAe,WAAW;EAEjI,SAAS,EAAgB,GAA0B;AAGjD,GAFA,EAAQ,QAAQ,GAChB,EAAa,QAAQ,IACjB,EAAW,UACb,EAAM,MAAM,SAAS,YAAY,EAAW,SAAS,EAAmC,EAAM;;EAIlG,IAAM,IAA0C;GAC9C;IAAE,OAAO;IAAQ,OAAO;IAAM;GAC9B;IAAE,OAAO;IAAW,OAAO;IAAU;GACrC;IAAE,OAAO;IAAQ,OAAO;IAAO;GAChC,EACK,IAAuC,CAC3C;GAAE,OAAO;GAAW,OAAO;GAAmB,EAC9C;GAAE,OAAO;GAAW,OAAO;GAAqB,CACjD,EACK,IAAqB,GAErB,IAAS,EAAS;GACtB,WACS,EAAS,MAAM,eAAA;GAExB,MAAM,MAAc;AAClB,MAAS,MAAM,cAAc;;GAEhC,CAAC,EAEI,IAAmC,CACvC;GAAE,OAAO;GAAS,OAAO;GAAM,EAC/B;GAAE,OAAO;GAAiB,OAAO;GAAU,CAC5C,EAEK,IAAgB,EAAI,EAAS,MAAM,cAAc,OAAkB,EAAS,MAAM,YAA1B,SAAoC,EAC5F,IAAW,EAAI,EAAS,MAAM,aAAa,EAAE;;GAKjD,EAKE,GAAA;IAJA,OAAM;IACL,OAAO,EAAA,EAAW,CAAC,EAAA,OAAS;IAC5B,SAAS,EAAA;IACT,eAAY,AAAA,EAAA,QAAA,MAAA;AAAE,OAAA,QAAY;;;GAGrB,EAAA,SAAA,GAAA,EADR,EAOc,GAAA;;IALZ,OAAM;IACN,cAAW;IACV,gBAAU,AAAA,EAAA,QAAA,MAAE,EAAA,QAAY;;qBAE0D,CAAnF,EAAmF,GAAA;KAApE,UAAU,EAAA;KAAU,aAAa;KAAQ,UAAQ;;;;GAElE,EAUM,OAVN,GAUM,CATJ,EAQE,GAAA;IAPA,OAAM;IACN,cAAW;IACX,mBAAgB;IAChB,MAAK;IACJ,8BAA4B,EAAE;IAC9B,UAAU,EAAA;IACV,aAAU,AAAA,EAAA,QAAG,MAAa,EAAA,QAAS;;GAGxC,EAOM,OAPN,GAOM,CANJ,EAKE,EAAA,EAAA,EAAA;gBAJS,EAAA,MAAS;6CAAT,MAAS,yBAAsB;IACxC,OAAM;IACL,SAAS;IACT,SAAS;;GAGd,EAOM,OAPN,GAOM,CANJ,EAKE,EAAA,EAAA,EAAA;gBAJS,EAAA,MAAS;6CAAT,MAAS,sBAAmB;IACrC,OAAM;IACL,SAAS;IACT,SAAS;;GAGd,EAGM,OAHN,GAGM,CAFJ,EAA6C,EAAA,EAAA,EAAA;gBAAxB,EAAA,MAAS;6CAAT,MAAS,eAAY;0CAC1C,EAA+B,QAAA,MAAzB,sBAAkB,GAAA,CAAA,CAAA;GAE1B,EAGM,OAHN,GAGM,CAFJ,EAA6C,EAAA,EAAA,EAAA;gBAAxB,EAAA,MAAS;6CAAT,MAAS,eAAY;0CAC1C,EAA+B,QAAA,MAAzB,sBAAkB,GAAA,CAAA,CAAA;GAE1B,EAOM,OAPN,GAOM,CANJ,EAKE,EAAA,EAAA,EAAA;gBAJS,EAAA,MAAS;6CAAT,MAAS,oBAAiB;IACnC,OAAM;IACL,SAAS,EAAA,EAAkB;IAC3B,SAAS;;GAGd,EA0BM,OA1BN,GA0BM,CAzBJ,EAYE,EAAA,EAAA,EAAA;gBAXS,EAAA;8CAAa,QAAA,GAAA,AAAA,EAAA,QAID,MAAa;KAAmB,MAAK,WAA2B,EAAA,MAAS,YAAY,EAAA,QAAqC,EAAA,MAAS,YAAY;;IAHpK,OAAM;IACL,SAAS;IACT,SAAS;gCASZ,EAWE,EAAA,EAAA,EAAA;gBAVS,EAAA;+CAAQ,QAAA,GAAA,AAAA,EAAA,SAKI,MAAa;KAAmB,MAAU,KAAA,MAAuB,EAAA,MAAS,YAAY;;IAJ1G,OAAO;KAAA,QAAA;KAAA,YAAA;KAAA,OAAA;KAAmD;IAC1D,UAAU,EAAA,UAAa;IACxB,OAAM;IACL,qBAAqB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Dendro.js","names":[],"sources":["../../../../src/forms/LayersForm/Layer/Dendro.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport { useStore } from '../../../store';\nimport { computed, ref } from 'vue';\nimport AesSelector from '../AesSelector.vue';\nimport type { AestheticMappingCategorical } from '../../../dataBindAes';\nimport type {\n AesMappingOption,\n AesOption,\n DotShape,\n} from '../../../components/AesSettings/types';\nimport type { DendroUIState } from '@milaboratories/pf-plots';\nimport { PlCheckbox, SliderRange, Slider } from '@platforma-sdk/ui-vue';\nimport { isNumberRange } from '../../../constantsCommon';\n\nconst store = useStore();\nconst layer = 'dendro';\nconst settings = computed(() => store.value.reactive.layersSettings[layer]);\nconst optionsState = computed(\n () => store.value.reactive.optionsState as DendroUIState,\n);\n\nconst nodeColor = computed(() => settings.value.dotFill);\nconst nodeShape = computed(() => settings.value.dotShape);\nconst lineColor = computed(() => settings.value.lineColor);\n\nfunction onUpdate(\n value: string | AestheticMappingCategorical,\n colorOption: AesOption,\n field: 'dotFill' | 'lineColor',\n) {\n if (typeof value === 'string') {\n store.value.reactive.layersSettings[layer][field] = value;\n } else if (colorOption.type === 'dataCategorical') {\n store.value.reactive.layersSettings[layer][field] = {\n type: colorOption.inputName,\n value: colorOption.selectedSource,\n };\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: AesMappingOption,\n field: 'dotShape',\n) {\n if (typeof value === 'string') {\n store.value.reactive.layersSettings[layer][field] = value;\n } else if (colorOption.type === 'dataCategorical') {\n store.value.reactive.layersSettings[layer][field] = {\n type: colorOption.inputName,\n value: colorOption.selectedSource,\n };\n }\n if (colorOption.type === 'dataCategorical' && typeof value !== 'string') {\n store.value.reactive.dataBindAes[colorOption.selectedSource] = value;\n }\n}\n\n// Tree mode 'useAllNodesAsLeaves' - align tree special way to be able to set table line opposite every node\n// const treeAlign = ref(settings.value.mode === 'useAllNodesAsLeaves');\nconst leavesAlign = ref(settings.value.leavesMode === 'alignLeavesToLine');\n\nconst showLegend = computed({\n get() { return settings.value.showLegend ?? true; },\n set(v) {\n settings.value.showLegend = v;\n },\n});\nconst nodeSizeRange = computed<[number, number]>({\n get() { return isNumberRange(settings.value.dotSize) ? [settings.value.dotSize.min, settings.value.dotSize.max] : [3, 10]; },\n set([min, max]: [number, number]) {\n settings.value.dotSize = { min, max };\n },\n});\nconst nodeSize = computed<number>({\n get() { return isNumberRange(settings.value.dotSize) ? 3 : settings.value.dotSize; },\n set(v: number) {\n settings.value.dotSize = v;\n },\n});\n\n</script>\n\n<template>\n <AesSelector\n label=\"Node color\"\n form-title=\"Node Color Settings\"\n form-back-title=\"Layers\"\n type=\"fill\"\n :selected=\"nodeColor\"\n :possible-aes-source-inputs=\"['nodeColor']\"\n :without-fixed=\"\n optionsState.components.nodeColor.selectorStates.length > 0\n \"\n @aes-update=\"(v:string|AestheticMappingCategorical, c:AesOption) => onUpdate(v, c, 'dotFill')\"\n />\n <AesSelector\n label=\"Node shape\"\n form-title=\"Node Shape Settings\"\n form-back-title=\"Layers\"\n type=\"dotShape\"\n :selected=\"nodeShape\"\n :possible-aes-source-inputs=\"['nodeShape']\"\n :without-fixed=\"\n optionsState.components.nodeShape.selectorStates.length > 0\n \"\n @aes-update=\"(v:DotShape|AestheticMappingCategorical, c:AesMappingOption) => onUpdateDot(v, c, 'dotShape')\"\n />\n <AesSelector\n label=\"Line color\"\n form-title=\"Line Color Settings\"\n form-back-title=\"Layers\"\n type=\"fill\"\n :selected=\"lineColor\"\n :possible-aes-source-inputs=\"['lineColor']\"\n :without-fixed=\"\n optionsState.components.lineColor.selectorStates.length > 0\n \"\n @aes-update=\"(v:string|AestheticMappingCategorical, c:AesOption) => onUpdate(v, c, 'lineColor')\"\n />\n <!-- <div class=\"checkbox-item\">-->\n <!-- <pl-checkbox v-model=\"treeAlign\" @update:modelValue=\"(v) => {-->\n <!-- settings.mode = v ? 'useAllNodesAsLeaves' : 'normal';-->\n <!-- }\"/>-->\n <!-- <span>Align every node with table</span>-->\n <!-- </div>-->\n <div>\n <SliderRange\n v-if=\"optionsState.components.nodeSize.selectorStates.length > 0\"\n v-model=\"nodeSizeRange\"\n :min=\"3\"\n :max=\"10\"\n :breakpoints=\"true\"\n label=\"Node size range\"\n />\n <Slider\n v-else\n v-model=\"nodeSize\"\n :min=\"3\"\n :max=\"10\"\n :step=\"1\"\n :breakpoints=\"true\"\n label=\"Node size\"\n />\n </div>\n <div class=\"checkbox-item\">\n <PlCheckbox\n v-model=\"leavesAlign\" @update:modelValue=\"(v) => {\n settings.leavesMode = v ? 'alignLeavesToLine' : 'normal';\n }\"\n />\n <span>Move leaves to the right</span>\n </div>\n <div class=\"checkbox-item\">\n <PlCheckbox v-model=\"showLegend\"/>\n <span>Show legend</span>\n </div>\n</template>\n"],"mappings":""}
|
|
@@ -1,5 +1,111 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
};
|
|
5
|
-
|
|
1
|
+
import { isNumberRange as e } from "../../../constantsCommon.js";
|
|
2
|
+
import t from "../AesSelector.js";
|
|
3
|
+
import { useStore as n } from "../../../store.js";
|
|
4
|
+
import { Fragment as r, computed as i, createBlock as a, createElementBlock as o, createElementVNode as s, createVNode as c, defineComponent as l, openBlock as u, ref as d, unref as f } from "vue";
|
|
5
|
+
import { PlCheckbox as p, Slider as m, SliderRange as h } from "@platforma-sdk/ui-vue";
|
|
6
|
+
var g = { class: "checkbox-item" }, _ = { class: "checkbox-item" }, v = "dendro", y = /* @__PURE__ */ l({
|
|
7
|
+
__name: "Dendro",
|
|
8
|
+
setup(l) {
|
|
9
|
+
let y = n(), b = i(() => y.value.reactive.layersSettings[v]), x = i(() => y.value.reactive.optionsState), S = i(() => b.value.dotFill), C = i(() => b.value.dotShape), w = i(() => b.value.lineColor);
|
|
10
|
+
function T(e, t, n) {
|
|
11
|
+
typeof e == "string" ? y.value.reactive.layersSettings[v][n] = e : t.type === "dataCategorical" && (y.value.reactive.layersSettings[v][n] = {
|
|
12
|
+
type: t.inputName,
|
|
13
|
+
value: t.selectedSource
|
|
14
|
+
}), t.type === "dataCategorical" && typeof e != "string" && (y.value.reactive.dataBindAes[t.selectedSource] = e);
|
|
15
|
+
}
|
|
16
|
+
function E(e, t, n) {
|
|
17
|
+
typeof e == "string" ? y.value.reactive.layersSettings[v][n] = e : t.type === "dataCategorical" && (y.value.reactive.layersSettings[v][n] = {
|
|
18
|
+
type: t.inputName,
|
|
19
|
+
value: t.selectedSource
|
|
20
|
+
}), t.type === "dataCategorical" && typeof e != "string" && (y.value.reactive.dataBindAes[t.selectedSource] = e);
|
|
21
|
+
}
|
|
22
|
+
let D = d(b.value.leavesMode === "alignLeavesToLine"), O = i({
|
|
23
|
+
get() {
|
|
24
|
+
return b.value.showLegend ?? !0;
|
|
25
|
+
},
|
|
26
|
+
set(e) {
|
|
27
|
+
b.value.showLegend = e;
|
|
28
|
+
}
|
|
29
|
+
}), k = i({
|
|
30
|
+
get() {
|
|
31
|
+
return e(b.value.dotSize) ? [b.value.dotSize.min, b.value.dotSize.max] : [3, 10];
|
|
32
|
+
},
|
|
33
|
+
set([e, t]) {
|
|
34
|
+
b.value.dotSize = {
|
|
35
|
+
min: e,
|
|
36
|
+
max: t
|
|
37
|
+
};
|
|
38
|
+
}
|
|
39
|
+
}), A = i({
|
|
40
|
+
get() {
|
|
41
|
+
return e(b.value.dotSize) ? 3 : b.value.dotSize;
|
|
42
|
+
},
|
|
43
|
+
set(e) {
|
|
44
|
+
b.value.dotSize = e;
|
|
45
|
+
}
|
|
46
|
+
});
|
|
47
|
+
return (e, n) => (u(), o(r, null, [
|
|
48
|
+
c(t, {
|
|
49
|
+
label: "Node color",
|
|
50
|
+
"form-title": "Node Color Settings",
|
|
51
|
+
"form-back-title": "Layers",
|
|
52
|
+
type: "fill",
|
|
53
|
+
selected: S.value,
|
|
54
|
+
"possible-aes-source-inputs": ["nodeColor"],
|
|
55
|
+
"without-fixed": x.value.components.nodeColor.selectorStates.length > 0,
|
|
56
|
+
onAesUpdate: n[0] ||= (e, t) => T(e, t, "dotFill")
|
|
57
|
+
}, null, 8, ["selected", "without-fixed"]),
|
|
58
|
+
c(t, {
|
|
59
|
+
label: "Node shape",
|
|
60
|
+
"form-title": "Node Shape Settings",
|
|
61
|
+
"form-back-title": "Layers",
|
|
62
|
+
type: "dotShape",
|
|
63
|
+
selected: C.value,
|
|
64
|
+
"possible-aes-source-inputs": ["nodeShape"],
|
|
65
|
+
"without-fixed": x.value.components.nodeShape.selectorStates.length > 0,
|
|
66
|
+
onAesUpdate: n[1] ||= (e, t) => E(e, t, "dotShape")
|
|
67
|
+
}, null, 8, ["selected", "without-fixed"]),
|
|
68
|
+
c(t, {
|
|
69
|
+
label: "Line color",
|
|
70
|
+
"form-title": "Line Color Settings",
|
|
71
|
+
"form-back-title": "Layers",
|
|
72
|
+
type: "fill",
|
|
73
|
+
selected: w.value,
|
|
74
|
+
"possible-aes-source-inputs": ["lineColor"],
|
|
75
|
+
"without-fixed": x.value.components.lineColor.selectorStates.length > 0,
|
|
76
|
+
onAesUpdate: n[2] ||= (e, t) => T(e, t, "lineColor")
|
|
77
|
+
}, null, 8, ["selected", "without-fixed"]),
|
|
78
|
+
s("div", null, [x.value.components.nodeSize.selectorStates.length > 0 ? (u(), a(f(h), {
|
|
79
|
+
key: 0,
|
|
80
|
+
modelValue: k.value,
|
|
81
|
+
"onUpdate:modelValue": n[3] ||= (e) => k.value = e,
|
|
82
|
+
min: 3,
|
|
83
|
+
max: 10,
|
|
84
|
+
breakpoints: !0,
|
|
85
|
+
label: "Node size range"
|
|
86
|
+
}, null, 8, ["modelValue"])) : (u(), a(f(m), {
|
|
87
|
+
key: 1,
|
|
88
|
+
modelValue: A.value,
|
|
89
|
+
"onUpdate:modelValue": n[4] ||= (e) => A.value = e,
|
|
90
|
+
min: 3,
|
|
91
|
+
max: 10,
|
|
92
|
+
step: 1,
|
|
93
|
+
breakpoints: !0,
|
|
94
|
+
label: "Node size"
|
|
95
|
+
}, null, 8, ["modelValue"]))]),
|
|
96
|
+
s("div", g, [c(f(p), {
|
|
97
|
+
modelValue: D.value,
|
|
98
|
+
"onUpdate:modelValue": [n[5] ||= (e) => D.value = e, n[6] ||= (e) => {
|
|
99
|
+
b.value.leavesMode = e ? "alignLeavesToLine" : "normal";
|
|
100
|
+
}]
|
|
101
|
+
}, null, 8, ["modelValue"]), n[8] ||= s("span", null, "Move leaves to the right", -1)]),
|
|
102
|
+
s("div", _, [c(f(p), {
|
|
103
|
+
modelValue: O.value,
|
|
104
|
+
"onUpdate:modelValue": n[7] ||= (e) => O.value = e
|
|
105
|
+
}, null, 8, ["modelValue"]), n[9] ||= s("span", null, "Show legend", -1)])
|
|
106
|
+
], 64));
|
|
107
|
+
}
|
|
108
|
+
});
|
|
109
|
+
export { y as default };
|
|
110
|
+
|
|
111
|
+
//# sourceMappingURL=Dendro.vue2.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Dendro.
|
|
1
|
+
{"version":3,"file":"Dendro.vue_vue_type_script_setup_true_lang.js","names":[],"sources":["../../../../src/forms/LayersForm/Layer/Dendro.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport { useStore } from '../../../store';\nimport { computed, ref } from 'vue';\nimport AesSelector from '../AesSelector.vue';\nimport type { AestheticMappingCategorical } from '../../../dataBindAes';\nimport type {\n AesMappingOption,\n AesOption,\n DotShape,\n} from '../../../components/AesSettings/types';\nimport type { DendroUIState } from '@milaboratories/pf-plots';\nimport { PlCheckbox, SliderRange, Slider } from '@platforma-sdk/ui-vue';\nimport { isNumberRange } from '../../../constantsCommon';\n\nconst store = useStore();\nconst layer = 'dendro';\nconst settings = computed(() => store.value.reactive.layersSettings[layer]);\nconst optionsState = computed(\n () => store.value.reactive.optionsState as DendroUIState,\n);\n\nconst nodeColor = computed(() => settings.value.dotFill);\nconst nodeShape = computed(() => settings.value.dotShape);\nconst lineColor = computed(() => settings.value.lineColor);\n\nfunction onUpdate(\n value: string | AestheticMappingCategorical,\n colorOption: AesOption,\n field: 'dotFill' | 'lineColor',\n) {\n if (typeof value === 'string') {\n store.value.reactive.layersSettings[layer][field] = value;\n } else if (colorOption.type === 'dataCategorical') {\n store.value.reactive.layersSettings[layer][field] = {\n type: colorOption.inputName,\n value: colorOption.selectedSource,\n };\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: AesMappingOption,\n field: 'dotShape',\n) {\n if (typeof value === 'string') {\n store.value.reactive.layersSettings[layer][field] = value;\n } else if (colorOption.type === 'dataCategorical') {\n store.value.reactive.layersSettings[layer][field] = {\n type: colorOption.inputName,\n value: colorOption.selectedSource,\n };\n }\n if (colorOption.type === 'dataCategorical' && typeof value !== 'string') {\n store.value.reactive.dataBindAes[colorOption.selectedSource] = value;\n }\n}\n\n// Tree mode 'useAllNodesAsLeaves' - align tree special way to be able to set table line opposite every node\n// const treeAlign = ref(settings.value.mode === 'useAllNodesAsLeaves');\nconst leavesAlign = ref(settings.value.leavesMode === 'alignLeavesToLine');\n\nconst showLegend = computed({\n get() { return settings.value.showLegend ?? true; },\n set(v) {\n settings.value.showLegend = v;\n },\n});\nconst nodeSizeRange = computed<[number, number]>({\n get() { return isNumberRange(settings.value.dotSize) ? [settings.value.dotSize.min, settings.value.dotSize.max] : [3, 10]; },\n set([min, max]: [number, number]) {\n settings.value.dotSize = { min, max };\n },\n});\nconst nodeSize = computed<number>({\n get() { return isNumberRange(settings.value.dotSize) ? 3 : settings.value.dotSize; },\n set(v: number) {\n settings.value.dotSize = v;\n },\n});\n\n</script>\n\n<template>\n <AesSelector\n label=\"Node color\"\n form-title=\"Node Color Settings\"\n form-back-title=\"Layers\"\n type=\"fill\"\n :selected=\"nodeColor\"\n :possible-aes-source-inputs=\"['nodeColor']\"\n :without-fixed=\"\n optionsState.components.nodeColor.selectorStates.length > 0\n \"\n @aes-update=\"(v:string|AestheticMappingCategorical, c:AesOption) => onUpdate(v, c, 'dotFill')\"\n />\n <AesSelector\n label=\"Node shape\"\n form-title=\"Node Shape Settings\"\n form-back-title=\"Layers\"\n type=\"dotShape\"\n :selected=\"nodeShape\"\n :possible-aes-source-inputs=\"['nodeShape']\"\n :without-fixed=\"\n optionsState.components.nodeShape.selectorStates.length > 0\n \"\n @aes-update=\"(v:DotShape|AestheticMappingCategorical, c:AesMappingOption) => onUpdateDot(v, c, 'dotShape')\"\n />\n <AesSelector\n label=\"Line color\"\n form-title=\"Line Color Settings\"\n form-back-title=\"Layers\"\n type=\"fill\"\n :selected=\"lineColor\"\n :possible-aes-source-inputs=\"['lineColor']\"\n :without-fixed=\"\n optionsState.components.lineColor.selectorStates.length > 0\n \"\n @aes-update=\"(v:string|AestheticMappingCategorical, c:AesOption) => onUpdate(v, c, 'lineColor')\"\n />\n <!-- <div class=\"checkbox-item\">-->\n <!-- <pl-checkbox v-model=\"treeAlign\" @update:modelValue=\"(v) => {-->\n <!-- settings.mode = v ? 'useAllNodesAsLeaves' : 'normal';-->\n <!-- }\"/>-->\n <!-- <span>Align every node with table</span>-->\n <!-- </div>-->\n <div>\n <SliderRange\n v-if=\"optionsState.components.nodeSize.selectorStates.length > 0\"\n v-model=\"nodeSizeRange\"\n :min=\"3\"\n :max=\"10\"\n :breakpoints=\"true\"\n label=\"Node size range\"\n />\n <Slider\n v-else\n v-model=\"nodeSize\"\n :min=\"3\"\n :max=\"10\"\n :step=\"1\"\n :breakpoints=\"true\"\n label=\"Node size\"\n />\n </div>\n <div class=\"checkbox-item\">\n <PlCheckbox\n v-model=\"leavesAlign\" @update:modelValue=\"(v) => {\n settings.leavesMode = v ? 'alignLeavesToLine' : 'normal';\n }\"\n />\n <span>Move leaves to the right</span>\n </div>\n <div class=\"checkbox-item\">\n <PlCheckbox v-model=\"showLegend\"/>\n <span>Show legend</span>\n </div>\n</template>\n"],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Bar.js","names":[],"sources":["../../../../../src/forms/LayersForm/Layer/discrete/Bar.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport { useStore } from '../../../../store';\nimport { PlDropdown, Slider } from '@platforma-sdk/ui-vue';\nimport { computed } from 'vue';\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 { AesOption } from '../../../../components/AesSettings/types';\nimport { AGGREGATION_METHOD_OPTIONS } from '../../../../constantsCommon';\n\nconst store = useStore();\nconst layer = 'bar';\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] = { 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\nconst HEIGHT_OPTIONS = AGGREGATION_METHOD_OPTIONS;\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</template>\n"],"mappings":""}
|
|
@@ -1,5 +1,62 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
1
|
+
import { DEFAULT_BLACK as e, DEFAULT_WHITE as t } from "../../../../constantsAesthetic.js";
|
|
2
|
+
import { AGGREGATION_METHOD_OPTIONS as n } from "../../../../constantsCommon.js";
|
|
3
|
+
import { useDefaultAes as r } from "./utils.js";
|
|
4
|
+
import i from "../../AesSelector.js";
|
|
5
|
+
import { useStore as a } from "../../../../store.js";
|
|
6
|
+
import { Fragment as o, computed as s, createElementBlock as c, createElementVNode as l, createVNode as u, defineComponent as d, openBlock as f, unref as p, withModifiers as m } from "vue";
|
|
7
|
+
import { PlDropdown as h, Slider as g } from "@platforma-sdk/ui-vue";
|
|
8
|
+
var _ = "bar", v = /* @__PURE__ */ d({
|
|
9
|
+
__name: "Bar",
|
|
10
|
+
setup(d) {
|
|
11
|
+
let v = a(), y = s(() => v.value.reactive.layersSettings[_]), b = s(() => v.value.reactive.optionsState), x = s(() => r(y.value.fillColor, b.value, t)), S = s(() => r(y.value.lineColor, b.value, e));
|
|
12
|
+
function C(e, t, n) {
|
|
13
|
+
t.type === "dataCategorical" ? v.value.reactive.layersSettings[_][n] = { type: t.inputName } : v.value.reactive.layersSettings[_][n] = e, t.type === "dataCategorical" && typeof e != "string" && (v.value.reactive.dataBindAes[t.selectedSource] = e);
|
|
14
|
+
}
|
|
15
|
+
let w = n, T = s({
|
|
16
|
+
get: () => y.value.opacity * 100,
|
|
17
|
+
set: (e) => {
|
|
18
|
+
y.value.opacity = e / 100;
|
|
19
|
+
}
|
|
20
|
+
});
|
|
21
|
+
return (e, t) => (f(), c(o, null, [
|
|
22
|
+
u(i, {
|
|
23
|
+
label: "Fill color",
|
|
24
|
+
"form-title": "Fill Color Settings",
|
|
25
|
+
"form-back-title": "Layers",
|
|
26
|
+
type: "fill",
|
|
27
|
+
selected: x.value,
|
|
28
|
+
onAesUpdate: t[0] ||= (e, t) => C(e, t, "fillColor")
|
|
29
|
+
}, null, 8, ["selected"]),
|
|
30
|
+
u(i, {
|
|
31
|
+
label: "Stroke color",
|
|
32
|
+
"form-title": "Stroke Color Settings",
|
|
33
|
+
"form-back-title": "Layers",
|
|
34
|
+
type: "stroke",
|
|
35
|
+
selected: S.value,
|
|
36
|
+
onAesUpdate: t[1] ||= (e, t) => C(e, t, "lineColor")
|
|
37
|
+
}, null, 8, ["selected"]),
|
|
38
|
+
l("div", {
|
|
39
|
+
class: "input-item",
|
|
40
|
+
onClick: t[3] ||= m(() => {}, ["stop"])
|
|
41
|
+
}, [u(p(h), {
|
|
42
|
+
modelValue: y.value.height,
|
|
43
|
+
"onUpdate:modelValue": t[2] ||= (e) => y.value.height = e,
|
|
44
|
+
label: "Height",
|
|
45
|
+
options: p(w)
|
|
46
|
+
}, null, 8, ["modelValue", "options"])]),
|
|
47
|
+
u(p(g), {
|
|
48
|
+
modelValue: T.value,
|
|
49
|
+
"onUpdate:modelValue": t[4] ||= (e) => T.value = e,
|
|
50
|
+
label: "Opacity",
|
|
51
|
+
min: 0,
|
|
52
|
+
max: 100,
|
|
53
|
+
step: 1,
|
|
54
|
+
breakpoints: !1,
|
|
55
|
+
measure: "%"
|
|
56
|
+
}, null, 8, ["modelValue"])
|
|
57
|
+
], 64));
|
|
58
|
+
}
|
|
59
|
+
});
|
|
60
|
+
export { v as default };
|
|
61
|
+
|
|
62
|
+
//# sourceMappingURL=Bar.vue2.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Bar.
|
|
1
|
+
{"version":3,"file":"Bar.vue_vue_type_script_setup_true_lang.js","names":[],"sources":["../../../../../src/forms/LayersForm/Layer/discrete/Bar.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport { useStore } from '../../../../store';\nimport { PlDropdown, Slider } from '@platforma-sdk/ui-vue';\nimport { computed } from 'vue';\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 { AesOption } from '../../../../components/AesSettings/types';\nimport { AGGREGATION_METHOD_OPTIONS } from '../../../../constantsCommon';\n\nconst store = useStore();\nconst layer = 'bar';\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] = { 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\nconst HEIGHT_OPTIONS = AGGREGATION_METHOD_OPTIONS;\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</template>\n"],"mappings":";;;;;;;AAgBA,IAAM,IAAQ;;;EADd,IAAM,IAAQ,GAAU,EAElB,IAAW,QAAe,EAAM,MAAM,SAAS,eAAe,GAAO,EACrE,IAAe,QACb,EAAM,MAAM,SAAS,aAC5B,EAEK,IAAY,QAChB,EAAc,EAAS,MAAM,WAAW,EAAa,OAAO,EAAc,CAC3E,EACK,IAAY,QAChB,EAAc,EAAS,MAAM,WAAW,EAAa,OAAO,EAAc,CAC3E;EAED,SAAS,EACP,GACA,GACA,GACA;AAMA,GALI,EAAY,SAAS,oBACvB,EAAM,MAAM,SAAS,eAAe,GAAO,KAAS,EAAE,MAAM,EAAY,WAAW,GAEnF,EAAM,MAAM,SAAS,eAAe,GAAO,KAAS,GAElD,EAAY,SAAS,qBAAqB,OAAO,KAAU,aAC7D,EAAM,MAAM,SAAS,YAAY,EAAY,kBAAkB;;EAInE,IAAM,IAAiB,GAEjB,IAAU,EAAS;GACvB,WAAW,EAAS,MAAM,UAAU;GACpC,MAAM,MAAqB;AACzB,MAAS,MAAM,UAAU,IAAW;;GAEvC,CAAC;;GAIA,EAOE,GAAA;IANA,OAAM;IACN,cAAW;IACX,mBAAgB;IAChB,MAAK;IACJ,UAAU,EAAA;IACV,aAAU,AAAA,EAAA,QAAG,GAAG,MAAM,EAAS,GAAG,GAAC,YAAA;;GAEtC,EAOE,GAAA;IANA,OAAM;IACN,cAAW;IACX,mBAAgB;IAChB,MAAK;IACJ,UAAU,EAAA;IACV,aAAU,AAAA,EAAA,QAAG,GAAG,MAAM,EAAS,GAAG,GAAC,YAAA;;GAEtC,EAMM,OAAA;IAND,OAAM;IAAc,SAAK,AAAA,EAAA,OAAA,QAAN,IAAW,CAAA,OAAA,CAAA;OACjC,EAIE,EAAA,EAAA,EAAA;gBAHS,EAAA,MAAS;6CAAT,MAAS,SAAM;IACxB,OAAM;IACL,SAAS,EAAA,EAAc;;GAG5B,EAQE,EAAA,EAAA,EAAA;gBAPS,EAAA;6CAAO,QAAA;IAChB,OAAM;IACL,KAAK;IACL,KAAK;IACL,MAAM;IACN,aAAa;IACd,SAAQ"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BinnedDots.js","names":[],"sources":["../../../../../src/forms/LayersForm/Layer/discrete/BinnedDots.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';\n\nconst store = useStore();\nconst layer = 'binnedDots';\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] = { 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\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 <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.showOutliers\" />\n <span>Show outliers</span>\n </div>\n</template>\n"],"mappings":""}
|