{"ast":null,"code":"var __jsx = React.createElement;\nimport { useTranslation } from '~/utils/i18n';\nimport React, { useCallback, useState } from 'react';\nimport Select from '~/components/Select';\nimport AsideDivider from '~/components/AsideDivider';\nimport ChartPage from '~/components/ChartPage';\nimport Checkbox from '~/components/Checkbox';\nimport Content from '~/components/Content';\nimport Field from '~/components/Field';\nimport Preloader from '~/components/Preloader';\nimport RunSelect from '~/components/RunSelect';\nimport RunningToggle from '~/components/RunningToggle';\nimport ScalarChart from '~/components/ScalarsPage/ScalarChart';\nimport SmoothingSlider from '~/components/ScalarsPage/SmoothingSlider';\nimport TagFilter from '~/components/TagFilter';\nimport Title from '~/components/Title';\nimport useSearchValue from '~/hooks/useSearchValue';\nimport useTagFilter from '~/hooks/useTagFilter';\nvar xAxisValues = ['step', 'relative', 'wall'];\nvar toolTipSortingValues = ['default', 'descending', 'ascending', 'nearest'];\n\nvar Scalars = function Scalars() {\n  var _useTranslation = useTranslation(['scalars', 'common']),\n      t = _useTranslation.t;\n\n  var _useState = useState(true),\n      running = _useState[0],\n      setRunning = _useState[1];\n\n  var _useTagFilter = useTagFilter('scalars', running),\n      runs = _useTagFilter.runs,\n      tags = _useTagFilter.tags,\n      selectedRuns = _useTagFilter.selectedRuns,\n      selectedTags = _useTagFilter.selectedTags,\n      onChangeRuns = _useTagFilter.onChangeRuns,\n      onFilterTags = _useTagFilter.onFilterTags,\n      loadingRuns = _useTagFilter.loadingRuns,\n      loadingTags = _useTagFilter.loadingTags;\n\n  var debounceTags = useSearchValue(selectedTags);\n\n  var _useState2 = useState(0.6),\n      smoothing = _useState2[0],\n      setSmoothing = _useState2[1];\n\n  var _useState3 = useState(xAxisValues[0]),\n      xAxis = _useState3[0],\n      setXAxis = _useState3[1];\n\n  var onChangeXAxis = function onChangeXAxis(value) {\n    return setXAxis(value);\n  };\n\n  var _useState4 = useState(toolTipSortingValues[0]),\n      tooltipSorting = _useState4[0],\n      setTooltipSorting = _useState4[1];\n\n  var onChangeTooltipSorting = function onChangeTooltipSorting(value) {\n    return setTooltipSorting(value);\n  };\n\n  var _useState5 = useState(false),\n      ignoreOutliers = _useState5[0],\n      setIgnoreOutliers = _useState5[1];\n\n  var aside = __jsx(\"section\", null, __jsx(RunSelect, {\n    runs: runs,\n    value: selectedRuns,\n    onChange: onChangeRuns\n  }), __jsx(AsideDivider, null), __jsx(SmoothingSlider, {\n    value: smoothing,\n    onChange: setSmoothing\n  }), __jsx(Field, {\n    label: t('x-axis')\n  }, __jsx(Select, {\n    list: xAxisValues.map(function (value) {\n      return {\n        label: t(\"x-axis-value.\".concat(value)),\n        value: value\n      };\n    }),\n    value: xAxis,\n    onChange: onChangeXAxis\n  })), __jsx(Field, {\n    label: t('tooltip-sorting')\n  }, __jsx(Select, {\n    list: toolTipSortingValues.map(function (value) {\n      return {\n        label: t(\"tooltip-sorting-value.\".concat(value)),\n        value: value\n      };\n    }),\n    value: tooltipSorting,\n    onChange: onChangeTooltipSorting\n  })), __jsx(Field, null, __jsx(Checkbox, {\n    value: ignoreOutliers,\n    onChange: setIgnoreOutliers\n  }, t('ignore-outliers'))), __jsx(RunningToggle, {\n    running: running,\n    onToggle: setRunning\n  }));\n\n  var withChart = useCallback(function (item) {\n    return __jsx(ScalarChart, {\n      runs: item.runs,\n      tag: item.label,\n      smoothing: smoothing,\n      xAxis: xAxis,\n      sortingMethod: tooltipSorting,\n      outlier: ignoreOutliers,\n      running: running\n    });\n  }, [smoothing, xAxis, tooltipSorting, ignoreOutliers, running]);\n  return __jsx(React.Fragment, null, __jsx(Preloader, {\n    url: \"/runs\"\n  }), __jsx(Preloader, {\n    url: \"/scalars/tags\"\n  }), __jsx(Title, null, t('common:scalars')), __jsx(Content, {\n    aside: aside,\n    loading: loadingRuns\n  }, __jsx(TagFilter, {\n    tags: tags,\n    onChange: onFilterTags\n  }), __jsx(ChartPage, {\n    items: debounceTags,\n    withChart: withChart,\n    loading: loadingRuns || loadingTags\n  })));\n};\n\nScalars.getInitialProps = function () {\n  return {\n    namespacesRequired: ['scalars', 'common']\n  };\n};\n\nexport default Scalars;","map":null,"metadata":{},"sourceType":"module"}